aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/textformatter
diff options
context:
space:
mode:
authorTristan Darricau <tristan.darricau@sensiolabs.com>2015-05-29 16:53:54 +0200
committerTristan Darricau <tristan.darricau@sensiolabs.com>2015-05-29 16:53:54 +0200
commitd129ee6c947c6bf494166c47b2d04c7d66e41ab4 (patch)
tree734f4b210cc204753cd94fd6c7d6ff5ccc4fb9e2 /phpBB/phpbb/textformatter
parent80375c98f0f39a957b3348c9384fdc52ba27ea36 (diff)
downloadforums-d129ee6c947c6bf494166c47b2d04c7d66e41ab4.tar
forums-d129ee6c947c6bf494166c47b2d04c7d66e41ab4.tar.gz
forums-d129ee6c947c6bf494166c47b2d04c7d66e41ab4.tar.bz2
forums-d129ee6c947c6bf494166c47b2d04c7d66e41ab4.tar.xz
forums-d129ee6c947c6bf494166c47b2d04c7d66e41ab4.zip
[ticket/13388] Fix deprecations
PHPBB3-13388
Diffstat (limited to 'phpBB/phpbb/textformatter')
0 files changed, 0 insertions, 0 deletions
tware/drakx/diff/.gitignore?id2=38e9284911ae5cbccf5f839534f32e4d0c8906f8'>.gitignore4
-rw-r--r--Makefile3
-rw-r--r--Makefile.common64
-rw-r--r--Makefile.config5
-rw-r--r--advertising/01_IM_mageia.pl1
-rw-r--r--advertising/01_IM_mageia.pngbin0 -> 69206 bytes-rw-r--r--advertising/02_IM_mageia.pl1
-rw-r--r--advertising/02_IM_mageia.pngbin0 -> 81615 bytes-rw-r--r--advertising/03_IM_mageia.pl1
-rw-r--r--advertising/03_IM_mageia.pngbin0 -> 81868 bytes-rw-r--r--advertising/04_IM_mageia.pl1
-rw-r--r--advertising/04_IM_mageia.pngbin0 -> 65295 bytes-rw-r--r--advertising/05_IM_mageia.pl1
-rw-r--r--advertising/05_IM_mageia.pngbin0 -> 79652 bytes-rw-r--r--advertising/06_IM_mageia.pl1
-rw-r--r--advertising/06_IM_mageia.pngbin0 -> 84628 bytes-rw-r--r--advertising/07_IM_mageia.pl1
-rw-r--r--advertising/07_IM_mageia.pngbin0 -> 68380 bytes-rw-r--r--advertising/08_IM_mageia.pl1
-rw-r--r--advertising/08_IM_mageia.pngbin0 -> 88717 bytes-rw-r--r--advertising/09_IM_mageia.pl1
-rw-r--r--advertising/09_IM_mageia.pngbin0 -> 87501 bytes-rw-r--r--advertising/10_IM_mageia.pl1
-rw-r--r--advertising/10_IM_mageia.pngbin0 -> 69206 bytes-rw-r--r--advertising/IM_flash.pl1
-rw-r--r--advertising/IM_flash.pngbin127151 -> 0 bytes-rw-r--r--advertising/IM_free09.pl1
-rw-r--r--advertising/IM_free09.pngbin137009 -> 0 bytes-rw-r--r--advertising/IM_one09.pl1
-rw-r--r--advertising/IM_one09.pngbin72541 -> 0 bytes-rw-r--r--advertising/IM_pwp09.pl1
-rw-r--r--advertising/IM_pwp09.pngbin80676 -> 0 bytes-rw-r--r--advertising/IM_range09.pl1
-rw-r--r--advertising/IM_range09.pngbin95592 -> 0 bytes-rw-r--r--advertising/Makefile7
-rw-r--r--advertising/NEWS58
-rw-r--r--advertising/list-dis14
-rw-r--r--advertising/list-dwd14
-rw-r--r--advertising/list-ppp13
-rw-r--r--advertising/list-pwp15
-rw-r--r--docs/Partition-ends-after-end-of-disk.txt2
-rw-r--r--docs/README10
-rw-r--r--docs/README.devel34
-rw-r--r--docs/README.pxe2
-rw-r--r--docs/drakfont/drakfont.tex2
-rw-r--r--docs/ka_method/Makefile4
-rw-r--r--docs/ka_method/doc-duplication.xml1253
-rw-r--r--docs/ka_method/duplication.pdfbin199740 -> 0 bytes-rw-r--r--docs/ka_method/duplication.xml14
-rw-r--r--docs/ka_method/html/duplication.html661
-rw-r--r--docs/ka_method/html/styleguibo.css296
-rw-r--r--docs/mastering-tool-for-restore-cd10
-rw-r--r--globetrotter/.perl_checker8
-rw-r--r--globetrotter/ChangeLog276
-rw-r--r--globetrotter/Makefile97
-rw-r--r--globetrotter/README64
-rw-r--r--globetrotter/doc/BUGS6
-rw-r--r--globetrotter/doc/BUILD28
-rw-r--r--globetrotter/doc/NOTES17
-rw-r--r--globetrotter/fix-broken-hd.diff127
-rwxr-xr-xglobetrotter/make_live547
-rw-r--r--globetrotter/mandrake-globetrotter.spec45
-rw-r--r--globetrotter/move.pm175
-rwxr-xr-xglobetrotter/runstage230
-rw-r--r--images/.perl_checker1
-rw-r--r--images/Makefile50
-rw-r--r--images/NEWS679
-rw-r--r--images/dracut.conf4
-rw-r--r--images/grub2.config33
-rw-r--r--images/grub2.theme34
-rw-r--r--images/help.msg.xml2
-rwxr-xr-ximages/make_boot_img659
-rwxr-xr-ximages/update_kernel39
-rw-r--r--kernel/Makefile4
-rw-r--r--kernel/list_modules.pm329
-rw-r--r--kernel/modules.pl55
-rw-r--r--mdk-stage1/.gitignore13
-rw-r--r--mdk-stage1/Makefile159
-rw-r--r--mdk-stage1/Makefile.common33
-rw-r--r--mdk-stage1/NEWS419
-rw-r--r--mdk-stage1/adsl.c6
-rw-r--r--mdk-stage1/adsl.h2
-rw-r--r--mdk-stage1/automatic.c13
-rw-r--r--mdk-stage1/automatic.h2
-rw-r--r--mdk-stage1/bootsplash.c70
-rw-r--r--mdk-stage1/bootsplash.h25
-rw-r--r--mdk-stage1/cdrom.c12
-rw-r--r--mdk-stage1/cdrom.h2
-rw-r--r--mdk-stage1/config-stage1.h12
-rw-r--r--mdk-stage1/dhcp.c6
-rw-r--r--mdk-stage1/dhcp.h2
-rw-r--r--mdk-stage1/directory.c4
-rw-r--r--mdk-stage1/directory.h4
-rw-r--r--mdk-stage1/disk.c39
-rw-r--r--mdk-stage1/disk.h2
-rw-r--r--mdk-stage1/dns.c200
-rw-r--r--mdk-stage1/dns.h2
-rw-r--r--mdk-stage1/doc/README2
-rw-r--r--mdk-stage1/doc/TECH-INFOS6
-rw-r--r--mdk-stage1/doc/WHY-DIETLIBC50
-rw-r--r--mdk-stage1/doc/documented..frontend.h2
-rw-r--r--mdk-stage1/frontend-common.c2
-rw-r--r--mdk-stage1/frontend.h2
-rw-r--r--mdk-stage1/init.c257
-rw-r--r--mdk-stage1/ka.c11
-rw-r--r--mdk-stage1/log.c2
-rw-r--r--mdk-stage1/log.h2
-rw-r--r--mdk-stage1/lomount.c8
-rw-r--r--mdk-stage1/lomount.h2
-rw-r--r--mdk-stage1/modules.c221
-rw-r--r--mdk-stage1/modules.h10
-rw-r--r--mdk-stage1/mount.c165
-rw-r--r--mdk-stage1/mount.h6
-rw-r--r--mdk-stage1/mount_rpcgen.h208
-rw-r--r--mdk-stage1/network.c72
-rw-r--r--mdk-stage1/network.h2
-rw-r--r--mdk-stage1/newt-frontend.c8
-rw-r--r--mdk-stage1/newt/Makefile42
-rw-r--r--mdk-stage1/newt/button.c192
-rw-r--r--mdk-stage1/newt/buttonbar.c46
-rw-r--r--mdk-stage1/newt/checkbox.c292
-rw-r--r--mdk-stage1/newt/checkboxtree.c714
-rw-r--r--mdk-stage1/newt/entry.c378
-rw-r--r--mdk-stage1/newt/form.c713
-rw-r--r--mdk-stage1/newt/grid.c389
-rw-r--r--mdk-stage1/newt/label.c81
-rw-r--r--mdk-stage1/newt/listbox.c752
-rw-r--r--mdk-stage1/newt/newt.c672
-rw-r--r--mdk-stage1/newt/newt.h362
-rw-r--r--mdk-stage1/newt/newt_pr.h82
-rw-r--r--mdk-stage1/newt/scale.c72
-rw-r--r--mdk-stage1/newt/scrollbar.c124
-rw-r--r--mdk-stage1/newt/textbox.c409
-rw-r--r--mdk-stage1/newt/windows.c275
-rw-r--r--mdk-stage1/nfs_mount4.h54
-rw-r--r--mdk-stage1/nfsmount.c740
-rw-r--r--mdk-stage1/nfsmount.h331
-rw-r--r--mdk-stage1/params.c10
-rw-r--r--mdk-stage1/params.h2
-rw-r--r--mdk-stage1/partition.c4
-rw-r--r--mdk-stage1/partition.h2
-rw-r--r--mdk-stage1/pci-resource/Makefile25
-rw-r--r--mdk-stage1/pcmcia-resource/Makefile24
-rw-r--r--mdk-stage1/pcmcia/Makefile8
-rwxr-xr-xmdk-stage1/pcmcia/merge_from_pcitable34
-rw-r--r--mdk-stage1/pcmcia/pcmcia.h2
-rw-r--r--mdk-stage1/pcmcia/probe.c188
-rw-r--r--mdk-stage1/pcmcia/yacc_config.y4
-rw-r--r--mdk-stage1/ppp/Changes-2.3441
-rw-r--r--mdk-stage1/ppp/FAQ634
-rw-r--r--mdk-stage1/ppp/PLUGINS131
-rw-r--r--mdk-stage1/ppp/README168
-rw-r--r--mdk-stage1/ppp/README.MSCHAP80284
-rw-r--r--mdk-stage1/ppp/README.cbcp97
-rw-r--r--mdk-stage1/ppp/README.linux297
-rw-r--r--mdk-stage1/ppp/README.sol2220
-rw-r--r--mdk-stage1/ppp/README.sunos462
-rw-r--r--mdk-stage1/ppp/SETUP111
-rw-r--r--mdk-stage1/ppp/chat/Makefile.linux27
-rw-r--r--mdk-stage1/ppp/chat/Makefile.linux.makeopt27
-rw-r--r--mdk-stage1/ppp/chat/Makefile.sol219
-rw-r--r--mdk-stage1/ppp/chat/Makefile.sunos419
-rw-r--r--mdk-stage1/ppp/chat/chat.8515
-rw-r--r--mdk-stage1/ppp/chat/chat.c1756
-rw-r--r--mdk-stage1/ppp/common/zlib.c5376
-rw-r--r--mdk-stage1/ppp/common/zlib.h1010
-rwxr-xr-xmdk-stage1/ppp/configure141
-rw-r--r--mdk-stage1/ppp/contrib/pppgetpass/Makefile.linux16
-rw-r--r--mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.818
-rw-r--r--mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.gtk.c92
-rw-r--r--mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.sh7
-rw-r--r--mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.vt.c218
-rw-r--r--mdk-stage1/ppp/etc.ppp/chap-secrets2
-rw-r--r--mdk-stage1/ppp/etc.ppp/options5
-rw-r--r--mdk-stage1/ppp/etc.ppp/options.options1
-rw-r--r--mdk-stage1/ppp/etc.ppp/pap-secrets2
-rw-r--r--mdk-stage1/ppp/include/linux/if_ppp.h155
-rw-r--r--mdk-stage1/ppp/include/linux/if_pppvar.h138
-rw-r--r--mdk-stage1/ppp/include/linux/ppp-comp.h203
-rw-r--r--mdk-stage1/ppp/include/linux/ppp_defs.h185
-rw-r--r--mdk-stage1/ppp/include/net/if_ppp.h133
-rw-r--r--mdk-stage1/ppp/include/net/ppp-comp.h165
-rw-r--r--mdk-stage1/ppp/include/net/ppp_defs.h184
-rw-r--r--mdk-stage1/ppp/include/net/pppio.h99
-rw-r--r--mdk-stage1/ppp/include/net/slcompress.h148
-rw-r--r--mdk-stage1/ppp/include/net/vjcompress.h144
-rw-r--r--mdk-stage1/ppp/include/pcap-int.h117
-rw-r--r--mdk-stage1/ppp/linux/Makefile.top55
-rw-r--r--mdk-stage1/ppp/modules/bsd-comp.c1116
-rw-r--r--mdk-stage1/ppp/modules/deflate.c760
-rw-r--r--mdk-stage1/ppp/modules/if_ppp.c865
-rw-r--r--mdk-stage1/ppp/modules/ppp.c2486
-rw-r--r--mdk-stage1/ppp/modules/ppp_ahdlc.c878
-rw-r--r--mdk-stage1/ppp/modules/ppp_comp.c1126
-rw-r--r--mdk-stage1/ppp/modules/ppp_mod.h190
-rw-r--r--mdk-stage1/ppp/modules/vjcompress.c587
-rw-r--r--mdk-stage1/ppp/pppd/Makefile51
-rw-r--r--mdk-stage1/ppp/pppd/Makefile.linux129
-rw-r--r--mdk-stage1/ppp/pppd/Makefile.linux.make131
-rw-r--r--mdk-stage1/ppp/pppd/Makefile.linux.makeopt129
-rw-r--r--mdk-stage1/ppp/pppd/Makefile.sol248
-rw-r--r--mdk-stage1/ppp/pppd/Makefile.sunos426
-rw-r--r--mdk-stage1/ppp/pppd/auth.c1939
-rw-r--r--mdk-stage1/ppp/pppd/cbcp.c456
-rw-r--r--mdk-stage1/ppp/pppd/cbcp.h26
-rw-r--r--mdk-stage1/ppp/pppd/ccp.c1257
-rw-r--r--mdk-stage1/ppp/pppd/ccp.h48
-rw-r--r--mdk-stage1/ppp/pppd/chap.c860
-rw-r--r--mdk-stage1/ppp/pppd/chap.h124
-rw-r--r--mdk-stage1/ppp/pppd/chap_ms.c338
-rw-r--r--mdk-stage1/ppp/pppd/chap_ms.h33
-rw-r--r--mdk-stage1/ppp/pppd/demand.c351
-rw-r--r--mdk-stage1/ppp/pppd/eui64.c40
-rw-r--r--mdk-stage1/ppp/pppd/eui64.h97
-rw-r--r--mdk-stage1/ppp/pppd/fsm.c762
-rw-r--r--mdk-stage1/ppp/pppd/fsm.h144
-rw-r--r--mdk-stage1/ppp/pppd/ipcp.c2054
-rw-r--r--mdk-stage1/ppp/pppd/ipcp.h73
-rw-r--r--mdk-stage1/ppp/pppd/ipv6cp.c1512
-rw-r--r--mdk-stage1/ppp/pppd/ipv6cp.h126
-rw-r--r--mdk-stage1/ppp/pppd/ipxcp.c1570
-rw-r--r--mdk-stage1/ppp/pppd/ipxcp.h71
-rw-r--r--mdk-stage1/ppp/pppd/lcp.c2224
-rw-r--r--mdk-stage1/ppp/pppd/lcp.h95
-rw-r--r--mdk-stage1/ppp/pppd/magic.c88
-rw-r--r--mdk-stage1/ppp/pppd/magic.h23
-rw-r--r--mdk-stage1/ppp/pppd/main.c1846
-rw-r--r--mdk-stage1/ppp/pppd/md4.c298
-rw-r--r--mdk-stage1/ppp/pppd/md4.h64
-rw-r--r--mdk-stage1/ppp/pppd/md5.c309
-rw-r--r--mdk-stage1/ppp/pppd/md5.h58
-rw-r--r--mdk-stage1/ppp/pppd/multilink.c397
-rw-r--r--mdk-stage1/ppp/pppd/options.c1513
-rw-r--r--mdk-stage1/ppp/pppd/patchlevel.h4
-rw-r--r--mdk-stage1/ppp/pppd/pathnames.h25
-rw-r--r--mdk-stage1/ppp/pppd/plugins/Makefile.linux19
-rw-r--r--mdk-stage1/ppp/pppd/plugins/Makefile.sol227
-rw-r--r--mdk-stage1/ppp/pppd/plugins/minconn.c46
-rw-r--r--mdk-stage1/ppp/pppd/plugins/passprompt.c108
-rw-r--r--mdk-stage1/ppp/pppd/ppp.pam6
-rw-r--r--mdk-stage1/ppp/pppd/pppd.81591
-rw-r--r--mdk-stage1/ppp/pppd/pppd.h787
-rw-r--r--mdk-stage1/ppp/pppd/pppd.h.wtmp789
-rw-r--r--mdk-stage1/ppp/pppd/sys-linux.c2672
-rw-r--r--mdk-stage1/ppp/pppd/sys-linux.c.wtmp2750
-rw-r--r--mdk-stage1/ppp/pppd/sys-solaris.c2737
-rw-r--r--mdk-stage1/ppp/pppd/sys-sunos4.c1559
-rw-r--r--mdk-stage1/ppp/pppd/tdb.c1282
-rw-r--r--mdk-stage1/ppp/pppd/tdb.h77
-rw-r--r--mdk-stage1/ppp/pppd/tty.c1164
-rw-r--r--mdk-stage1/ppp/pppd/upap.c640
-rw-r--r--mdk-stage1/ppp/pppd/upap.h87
-rw-r--r--mdk-stage1/ppp/pppd/utils.c949
-rw-r--r--mdk-stage1/ppp/pppdump/Makefile.linux17
-rw-r--r--mdk-stage1/ppp/pppdump/Makefile.linux.makeopt17
-rw-r--r--mdk-stage1/ppp/pppdump/Makefile.linux.pppdump-Makefile17
-rw-r--r--mdk-stage1/ppp/pppdump/Makefile.sol221
-rw-r--r--mdk-stage1/ppp/pppdump/Makefile.sunos421
-rw-r--r--mdk-stage1/ppp/pppdump/bsd-comp.c750
-rw-r--r--mdk-stage1/ppp/pppdump/deflate.c344
-rw-r--r--mdk-stage1/ppp/pppdump/ppp-comp.h150
-rw-r--r--mdk-stage1/ppp/pppdump/pppdump.862
-rw-r--r--mdk-stage1/ppp/pppdump/pppdump.c502
-rw-r--r--mdk-stage1/ppp/pppdump/zlib.c4614
-rw-r--r--mdk-stage1/ppp/pppdump/zlib.h631
-rw-r--r--mdk-stage1/ppp/pppstats/Makefile.linux32
-rw-r--r--mdk-stage1/ppp/pppstats/Makefile.sol220
-rw-r--r--mdk-stage1/ppp/pppstats/Makefile.sunos430
-rw-r--r--mdk-stage1/ppp/pppstats/pppstats.8217
-rw-r--r--mdk-stage1/ppp/pppstats/pppstats.c557
-rw-r--r--mdk-stage1/ppp/sample/auth-down17
-rw-r--r--mdk-stage1/ppp/sample/auth-up17
-rw-r--r--mdk-stage1/ppp/sample/ip-down22
-rw-r--r--mdk-stage1/ppp/sample/ip-up23
-rw-r--r--mdk-stage1/ppp/sample/options153
-rw-r--r--mdk-stage1/ppp/sample/options.ttyXX14
-rw-r--r--mdk-stage1/ppp/sample/pap-secrets28
-rw-r--r--mdk-stage1/ppp/scripts/README143
-rwxr-xr-xmdk-stage1/ppp/scripts/callback77
-rw-r--r--mdk-stage1/ppp/scripts/chat-callback98
-rw-r--r--mdk-stage1/ppp/scripts/chatchat/README134
-rw-r--r--mdk-stage1/ppp/scripts/chatchat/chatchat.c409
-rw-r--r--mdk-stage1/ppp/scripts/ip-down.local.add20
-rw-r--r--mdk-stage1/ppp/scripts/ip-up.local.add24
-rw-r--r--mdk-stage1/ppp/scripts/options-rsh-loc1
-rw-r--r--mdk-stage1/ppp/scripts/options-rsh-rem1
-rw-r--r--mdk-stage1/ppp/scripts/options-ssh-loc1
-rw-r--r--mdk-stage1/ppp/scripts/options-ssh-rem1
-rwxr-xr-xmdk-stage1/ppp/scripts/ppp-off34
-rwxr-xr-xmdk-stage1/ppp/scripts/ppp-on36
-rwxr-xr-xmdk-stage1/ppp/scripts/ppp-on-dialer17
-rwxr-xr-xmdk-stage1/ppp/scripts/ppp-on-rsh72
-rwxr-xr-xmdk-stage1/ppp/scripts/ppp-on-ssh76
-rwxr-xr-xmdk-stage1/ppp/scripts/redialer96
-rw-r--r--mdk-stage1/ppp/scripts/secure-card111
-rw-r--r--mdk-stage1/ppp/solaris/Makedefs16
-rw-r--r--mdk-stage1/ppp/solaris/Makedefs.sol259
-rw-r--r--mdk-stage1/ppp/solaris/Makefile.sol266
-rw-r--r--mdk-stage1/ppp/solaris/Makefile.sol2-6485
-rw-r--r--mdk-stage1/ppp/solaris/Makefile.top50
-rw-r--r--mdk-stage1/ppp/solaris/ppp.c2486
-rw-r--r--mdk-stage1/ppp/solaris/ppp.conf1
-rw-r--r--mdk-stage1/ppp/solaris/ppp_ahdlc.c878
-rw-r--r--mdk-stage1/ppp/solaris/ppp_ahdlc_mod.c49
-rw-r--r--mdk-stage1/ppp/solaris/ppp_comp.c1126
-rw-r--r--mdk-stage1/ppp/solaris/ppp_comp_mod.c81
-rw-r--r--mdk-stage1/ppp/solaris/ppp_mod.c174
-rw-r--r--mdk-stage1/ppp/solaris/ppp_mod.h190
-rw-r--r--mdk-stage1/ppp/sunos4/Makedefs13
-rw-r--r--mdk-stage1/ppp/sunos4/Makefile57
-rw-r--r--mdk-stage1/ppp/sunos4/Makefile.top46
-rw-r--r--mdk-stage1/ppp/sunos4/if_ppp_vdcmd.c57
-rwxr-xr-xmdk-stage1/ppp/sunos4/ppp.INSTALL104
-rw-r--r--mdk-stage1/ppp/sunos4/ppp_ahdlc_vdcmd.c57
-rw-r--r--mdk-stage1/ppp/sunos4/ppp_comp_vdcmd.c57
-rw-r--r--mdk-stage1/ppp/sunos4/ppp_vdcmd.c81
-rw-r--r--mdk-stage1/ppp/svr4/Makedefs16
-rw-r--r--mdk-stage1/ppp/svr4/Makedefs.sol259
-rw-r--r--mdk-stage1/ppp/svr4/Makefile.sol266
-rw-r--r--mdk-stage1/ppp/svr4/Makefile.sol2-6485
-rw-r--r--mdk-stage1/ppp/svr4/Makefile.svr460
-rw-r--r--mdk-stage1/ppp/svr4/Makefile.top50
-rw-r--r--mdk-stage1/ppp/svr4/ppp.Master1
-rw-r--r--mdk-stage1/ppp/svr4/ppp.Node1
-rw-r--r--mdk-stage1/ppp/svr4/ppp.System1
-rw-r--r--mdk-stage1/ppp/svr4/ppp.conf1
-rw-r--r--mdk-stage1/ppp/svr4/ppp_ahdl.Master1
-rw-r--r--mdk-stage1/ppp/svr4/ppp_ahdl.System1
-rw-r--r--mdk-stage1/ppp/svr4/ppp_ahdlc_mod.c49
-rw-r--r--mdk-stage1/ppp/svr4/ppp_comp.Master1
-rw-r--r--mdk-stage1/ppp/svr4/ppp_comp.System1
-rw-r--r--mdk-stage1/ppp/svr4/ppp_comp_mod.c81
-rw-r--r--mdk-stage1/ppp/svr4/ppp_mod.c174
-rw-r--r--mdk-stage1/probe-modules.c5
-rw-r--r--mdk-stage1/probing.c486
-rw-r--r--mdk-stage1/probing.h11
-rw-r--r--mdk-stage1/rescue-gui.c20
-rw-r--r--mdk-stage1/rp-pppoe/README87
-rw-r--r--mdk-stage1/rp-pppoe/configs/firewall-masq35
-rw-r--r--mdk-stage1/rp-pppoe/configs/firewall-standalone32
-rw-r--r--mdk-stage1/rp-pppoe/configs/pap-secrets9
-rw-r--r--mdk-stage1/rp-pppoe/configs/pppoe-server-options5
-rw-r--r--mdk-stage1/rp-pppoe/configs/pppoe.conf126
-rw-r--r--mdk-stage1/rp-pppoe/doc/CHANGES177
-rw-r--r--mdk-stage1/rp-pppoe/doc/HOW-TO-CONNECT295
-rw-r--r--mdk-stage1/rp-pppoe/doc/KERNEL-MODE-PPPOE39
-rw-r--r--mdk-stage1/rp-pppoe/doc/LICENSE339
-rw-r--r--mdk-stage1/rp-pppoe/doc/PROBLEMS3
-rwxr-xr-xmdk-stage1/rp-pppoe/go43
-rwxr-xr-xmdk-stage1/rp-pppoe/go-gui92
-rw-r--r--mdk-stage1/rp-pppoe/gui/Makefile.in64
-rw-r--r--mdk-stage1/rp-pppoe/gui/html/tkpppoe.html181
-rw-r--r--mdk-stage1/rp-pppoe/gui/pppoe-wrapper.145
-rw-r--r--mdk-stage1/rp-pppoe/gui/tkpppoe.136
-rwxr-xr-xmdk-stage1/rp-pppoe/gui/tkpppoe.in2891
-rw-r--r--mdk-stage1/rp-pppoe/gui/wrapper.c234
-rw-r--r--mdk-stage1/rp-pppoe/man/adsl-connect.866
-rw-r--r--mdk-stage1/rp-pppoe/man/adsl-setup.823
-rw-r--r--mdk-stage1/rp-pppoe/man/adsl-start.827
-rw-r--r--mdk-stage1/rp-pppoe/man/adsl-status.825
-rw-r--r--mdk-stage1/rp-pppoe/man/adsl-stop.821
-rw-r--r--mdk-stage1/rp-pppoe/man/pppoe-relay.8124
-rw-r--r--mdk-stage1/rp-pppoe/man/pppoe-server.8123
-rw-r--r--mdk-stage1/rp-pppoe/man/pppoe-sniff.877
-rw-r--r--mdk-stage1/rp-pppoe/man/pppoe.8236
-rw-r--r--mdk-stage1/rp-pppoe/man/pppoe.conf.5168
-rw-r--r--mdk-stage1/rp-pppoe/rp-pppoe-gui.spec98
-rw-r--r--mdk-stage1/rp-pppoe/rp-pppoe.spec71
-rwxr-xr-xmdk-stage1/rp-pppoe/scripts/adsl-connect.in278
-rwxr-xr-xmdk-stage1/rp-pppoe/scripts/adsl-init-suse.in62
-rwxr-xr-xmdk-stage1/rp-pppoe/scripts/adsl-init-turbolinux.in62
-rwxr-xr-xmdk-stage1/rp-pppoe/scripts/adsl-init.in64
-rwxr-xr-xmdk-stage1/rp-pppoe/scripts/adsl-setup.in346
-rwxr-xr-xmdk-stage1/rp-pppoe/scripts/adsl-start.in186
-rwxr-xr-xmdk-stage1/rp-pppoe/scripts/adsl-status82
-rwxr-xr-xmdk-stage1/rp-pppoe/scripts/adsl-stop.in84
-rw-r--r--mdk-stage1/rp-pppoe/src/Makefile45
-rw-r--r--mdk-stage1/rp-pppoe/src/Makefile.in257
-rw-r--r--mdk-stage1/rp-pppoe/src/common.c485
-rw-r--r--mdk-stage1/rp-pppoe/src/config.h135
-rw-r--r--mdk-stage1/rp-pppoe/src/config.h.in134
-rwxr-xr-xmdk-stage1/rp-pppoe/src/configure2356
-rw-r--r--mdk-stage1/rp-pppoe/src/configure.in231
-rw-r--r--mdk-stage1/rp-pppoe/src/debug.c143
-rw-r--r--mdk-stage1/rp-pppoe/src/discovery.c629
-rw-r--r--mdk-stage1/rp-pppoe/src/if.c1092
-rwxr-xr-xmdk-stage1/rp-pppoe/src/install-sh238
-rw-r--r--mdk-stage1/rp-pppoe/src/md5.c246
-rw-r--r--mdk-stage1/rp-pppoe/src/md5.h27
-rw-r--r--mdk-stage1/rp-pppoe/src/plugin.c397
-rw-r--r--mdk-stage1/rp-pppoe/src/ppp.c258
-rw-r--r--mdk-stage1/rp-pppoe/src/pppoe-server.c1247
-rw-r--r--mdk-stage1/rp-pppoe/src/pppoe-sniff.c258
-rw-r--r--mdk-stage1/rp-pppoe/src/pppoe.c834
-rw-r--r--mdk-stage1/rp-pppoe/src/pppoe.h331
-rw-r--r--mdk-stage1/rp-pppoe/src/relay.c1541
-rw-r--r--mdk-stage1/rp-pppoe/src/relay.h97
-rw-r--r--mdk-stage1/slang/Makefile42
-rw-r--r--mdk-stage1/slang/_slang.h743
-rw-r--r--mdk-stage1/slang/config.h163
-rw-r--r--mdk-stage1/slang/jdmacros.h53
-rw-r--r--mdk-stage1/slang/keywhash.c190
-rw-r--r--mdk-stage1/slang/sl-feat.h60
-rw-r--r--mdk-stage1/slang/slang.c5547
-rw-r--r--mdk-stage1/slang/slang.h1930
-rw-r--r--mdk-stage1/slang/slarith.c1656
-rw-r--r--mdk-stage1/slang/slarith.inc783
-rw-r--r--mdk-stage1/slang/slarray.c3139
-rw-r--r--mdk-stage1/slang/slarrfun.c464
-rw-r--r--mdk-stage1/slang/slarrfun.inc257
-rw-r--r--mdk-stage1/slang/slarrmis.c38
-rw-r--r--mdk-stage1/slang/slassoc.c713
-rw-r--r--mdk-stage1/slang/slbstr.c615
-rw-r--r--mdk-stage1/slang/slclass.c1391
-rw-r--r--mdk-stage1/slang/slcmd.c351
-rw-r--r--mdk-stage1/slang/slcmplex.c1142
-rw-r--r--mdk-stage1/slang/slcompat.c34
-rw-r--r--mdk-stage1/slang/slcurses.c972
-rw-r--r--mdk-stage1/slang/slcurses.h353
-rw-r--r--mdk-stage1/slang/sldisply.c2596
-rw-r--r--mdk-stage1/slang/slerr.c181
-rw-r--r--mdk-stage1/slang/slerrno.c219
-rw-r--r--mdk-stage1/slang/slgetkey.c306
-rw-r--r--mdk-stage1/slang/slimport.c281
-rw-r--r--mdk-stage1/slang/slinclud.h26
-rw-r--r--mdk-stage1/slang/slintall.c27
-rw-r--r--mdk-stage1/slang/slistruc.c218
-rw-r--r--mdk-stage1/slang/slkeymap.c596
-rw-r--r--mdk-stage1/slang/slkeypad.c163
-rw-r--r--mdk-stage1/slang/sllimits.h64
-rw-r--r--mdk-stage1/slang/slmalloc.c165
-rw-r--r--mdk-stage1/slang/slmath.c565
-rw-r--r--mdk-stage1/slang/slmemchr.c47
-rw-r--r--mdk-stage1/slang/slmemcmp.c76
-rw-r--r--mdk-stage1/slang/slmemcpy.c49
-rw-r--r--mdk-stage1/slang/slmemset.c39
-rw-r--r--mdk-stage1/slang/slmisc.c330
-rw-r--r--mdk-stage1/slang/slnspace.c242
-rw-r--r--mdk-stage1/slang/slospath.c73
-rw-r--r--mdk-stage1/slang/slpack.c785
-rw-r--r--mdk-stage1/slang/slparse.c1970
-rw-r--r--mdk-stage1/slang/slpath.c344
-rw-r--r--mdk-stage1/slang/slposdir.c1057
-rw-r--r--mdk-stage1/slang/slposio.c568
-rw-r--r--mdk-stage1/slang/slprepr.c427
-rw-r--r--mdk-stage1/slang/slproc.c155
-rw-r--r--mdk-stage1/slang/slregexp.c935
-rw-r--r--mdk-stage1/slang/slrline.c836
-rw-r--r--mdk-stage1/slang/slscanf.c718
-rw-r--r--mdk-stage1/slang/slscroll.c450
-rw-r--r--mdk-stage1/slang/slsearch.c239
-rw-r--r--mdk-stage1/slang/slsignal.c336
-rw-r--r--mdk-stage1/slang/slsmg.c1584
-rw-r--r--mdk-stage1/slang/slstd.c724
-rw-r--r--mdk-stage1/slang/slstdio.c1050
-rw-r--r--mdk-stage1/slang/slstring.c546
-rw-r--r--mdk-stage1/slang/slstrops.c1686
-rw-r--r--mdk-stage1/slang/slstruct.c932
-rw-r--r--mdk-stage1/slang/sltermin.c1155
-rw-r--r--mdk-stage1/slang/sltime.c310
-rw-r--r--mdk-stage1/slang/sltoken.c1702
-rw-r--r--mdk-stage1/slang/sltypes.c966
-rw-r--r--mdk-stage1/slang/slutty.c596
-rw-r--r--mdk-stage1/slang/slxstrng.c43
-rw-r--r--mdk-stage1/stage1.c55
-rw-r--r--mdk-stage1/stage1.h2
-rw-r--r--mdk-stage1/stdio-frontend.c17
-rw-r--r--mdk-stage1/sysfs/Makefile39
-rw-r--r--mdk-stage1/sysfs/libsysfs.h90
-rw-r--r--mdk-stage1/sysfs/sysfs.h64
-rw-r--r--mdk-stage1/sysfs/sysfs_attr.c241
-rw-r--r--mdk-stage1/sysfs/sysfs_utils.c59
-rw-r--r--mdk-stage1/thirdparty.c12
-rw-r--r--mdk-stage1/thirdparty.h4
-rw-r--r--mdk-stage1/tools.c84
-rw-r--r--mdk-stage1/tools.h5
-rwxr-xr-xmdk-stage1/update-pci-ids.pl (renamed from mdk-stage1/pci-resource/update-pci-ids.pl)6
-rwxr-xr-xmdk-stage1/update-pcmcia-ids.pl (renamed from mdk-stage1/pcmcia-resource/update-pcmcia-ids.pl)2
-rwxr-xr-xmdk-stage1/update-usb-ids.pl (renamed from mdk-stage1/usb-resource/update-usb-ids.pl)4
-rw-r--r--mdk-stage1/url.c19
-rw-r--r--mdk-stage1/url.h2
-rw-r--r--mdk-stage1/usb-resource/Makefile25
-rw-r--r--mdk-stage1/utils.c48
-rw-r--r--mdk-stage1/utils.h8
-rw-r--r--mdk-stage1/wireless.c164
-rw-r--r--mdk-stage1/wireless.h2
-rw-r--r--mdk-stage1/zlibsupport.c219
-rw-r--r--perl-install/.gitattributes1
-rw-r--r--perl-install/.perl_checker67
-rw-r--r--perl-install/Makefile27
-rw-r--r--perl-install/Makefile.config11
-rw-r--r--perl-install/Makefile.drakxtools50
-rw-r--r--perl-install/NEWS2477
-rw-r--r--perl-install/PORTING4
-rw-r--r--perl-install/any.pm975
-rw-r--r--perl-install/authentication.pm148
-rw-r--r--perl-install/bootloader.pm1428
-rw-r--r--perl-install/bootsplash.pm261
-rw-r--r--perl-install/c.pm37
-rwxr-xr-x[-rw-r--r--]perl-install/c/Makefile.PL2
-rw-r--r--perl-install/c/README1
-rw-r--r--perl-install/c/stuff.pm2
-rwxr-xr-x[-rw-r--r--]perl-install/c/stuff.xs.pl377
-rw-r--r--perl-install/common.pm403
-rw-r--r--perl-install/cpufreq.pm31
-rw-r--r--perl-install/dbus_object.pm10
-rw-r--r--perl-install/detect_devices.pm715
-rw-r--r--perl-install/devices.pm95
-rw-r--r--perl-install/diskdrake/dav.pm8
-rw-r--r--perl-install/diskdrake/diskdrake.html139
-rw-r--r--perl-install/diskdrake/hd_gtk.pm231
-rw-r--r--perl-install/diskdrake/interactive.pm435
-rw-r--r--perl-install/diskdrake/removable.pm2
-rw-r--r--perl-install/diskdrake/resize_ext2.pm2
-rw-r--r--perl-install/diskdrake/resize_ntfs.pm10
-rw-r--r--perl-install/diskdrake/smbnfs_gtk.pm36
-rw-r--r--perl-install/do_pkgs.pm140
-rw-r--r--perl-install/drakbug.pm45
-rw-r--r--perl-install/fs.pm39
-rw-r--r--perl-install/fs/any.pm88
-rw-r--r--perl-install/fs/dmcrypt.pm93
-rw-r--r--perl-install/fs/dmraid.pm97
-rw-r--r--perl-install/fs/format.pm221
-rw-r--r--perl-install/fs/get.pm40
-rw-r--r--perl-install/fs/loopback.pm4
-rw-r--r--perl-install/fs/mount.pm18
-rw-r--r--perl-install/fs/mount_options.pm36
-rw-r--r--perl-install/fs/mount_point.pm39
-rw-r--r--perl-install/fs/partitioning.pm10
-rw-r--r--perl-install/fs/partitioning_wizard.pm631
-rw-r--r--perl-install/fs/proc_partitions.pm18
-rw-r--r--perl-install/fs/remote.pm2
-rw-r--r--perl-install/fs/remote/davfs.pm16
-rw-r--r--perl-install/fs/remote/nfs.pm45
-rw-r--r--perl-install/fs/remote/smb.pm2
-rw-r--r--perl-install/fs/type.pm171
-rw-r--r--perl-install/fs/wild_device.pm14
-rw-r--r--perl-install/fsedit.pm173
-rw-r--r--perl-install/handle_configs.pm1
-rw-r--r--perl-install/harddrake/TODO169
-rw-r--r--perl-install/harddrake/autoconf.pm52
-rwxr-xr-xperl-install/harddrake/check_snd.pl2
-rw-r--r--perl-install/harddrake/data.pm34
-rw-r--r--perl-install/harddrake/sound.pm913
-rw-r--r--perl-install/harddrake/v4l.pm4
-rw-r--r--perl-install/install/Makefile41
-rw-r--r--perl-install/install/NEWS3179
-rw-r--r--perl-install/install/any.pm583
-rw-r--r--perl-install/install/commands.pm45
-rw-r--r--perl-install/install/ftp.pm2
-rw-r--r--perl-install/install/gtk.pm119
-rw-r--r--perl-install/install/help/Makefile2
-rw-r--r--perl-install/install/help/help.pm166
-rwxr-xr-xperl-install/install/help/help_xml2pm.pl2
-rw-r--r--perl-install/install/help/po/.gitignore1
-rw-r--r--perl-install/install/help/po/.tx/config8
-rw-r--r--perl-install/install/help/po/DrakX-help.pot156
-rw-r--r--perl-install/install/help/po/af.po238
-rw-r--r--perl-install/install/help/po/am.po186
-rw-r--r--perl-install/install/help/po/ar.po223
-rw-r--r--perl-install/install/help/po/ast.po1138
-rw-r--r--perl-install/install/help/po/az.po241
-rw-r--r--perl-install/install/help/po/be.po186
-rw-r--r--perl-install/install/help/po/bg.po225
-rw-r--r--perl-install/install/help/po/bn.po265
-rw-r--r--perl-install/install/help/po/br.po165
-rw-r--r--perl-install/install/help/po/bs.po276
-rw-r--r--perl-install/install/help/po/ca.po1184
-rw-r--r--perl-install/install/help/po/cs.po262
-rw-r--r--perl-install/install/help/po/cy.po266
-rw-r--r--perl-install/install/help/po/da.po325
-rw-r--r--perl-install/install/help/po/de.po908
-rw-r--r--perl-install/install/help/po/el.po1945
-rw-r--r--perl-install/install/help/po/eo.po244
-rw-r--r--perl-install/install/help/po/es.po277
-rw-r--r--perl-install/install/help/po/et.po301
-rw-r--r--perl-install/install/help/po/eu.po417
-rw-r--r--perl-install/install/help/po/fa.po230
-rw-r--r--perl-install/install/help/po/fi.po844
-rw-r--r--perl-install/install/help/po/fr.po458
-rw-r--r--perl-install/install/help/po/fur.po186
-rw-r--r--perl-install/install/help/po/ga.po186
-rw-r--r--perl-install/install/help/po/gl.po273
-rw-r--r--perl-install/install/help/po/he.po224
-rw-r--r--perl-install/install/help/po/hi.po200
-rw-r--r--perl-install/install/help/po/hr.po229
-rw-r--r--perl-install/install/help/po/hu.po264
-rw-r--r--perl-install/install/help/po/id.po314
-rw-r--r--perl-install/install/help/po/is.po267
-rw-r--r--perl-install/install/help/po/it.po274
-rw-r--r--perl-install/install/help/po/ja.po270
-rw-r--r--perl-install/install/help/po/ko.po193
-rw-r--r--perl-install/install/help/po/ky.po250
-rw-r--r--perl-install/install/help/po/lt.po206
-rw-r--r--perl-install/install/help/po/ltg.po183
-rw-r--r--perl-install/install/help/po/lv.po209
-rw-r--r--perl-install/install/help/po/mk.po305
-rw-r--r--perl-install/install/help/po/mn.po186
-rw-r--r--perl-install/install/help/po/ms.po186
-rw-r--r--perl-install/install/help/po/mt.po240
-rw-r--r--perl-install/install/help/po/nb.po1296
-rw-r--r--perl-install/install/help/po/nl.po431
-rw-r--r--perl-install/install/help/po/nn.po220
-rw-r--r--perl-install/install/help/po/pa_IN.po167
-rw-r--r--perl-install/install/help/po/pl.po276
-rw-r--r--perl-install/install/help/po/pt.po1318
-rw-r--r--perl-install/install/help/po/pt_BR.po1794
-rw-r--r--perl-install/install/help/po/ro.po188
-rw-r--r--perl-install/install/help/po/ru.po532
-rw-r--r--perl-install/install/help/po/sc.po161
-rw-r--r--perl-install/install/help/po/sk.po274
-rw-r--r--perl-install/install/help/po/sl.po255
-rw-r--r--perl-install/install/help/po/sq.po231
-rw-r--r--perl-install/install/help/po/sr.po236
-rw-r--r--perl-install/install/help/po/sr@Latn.po204
-rw-r--r--perl-install/install/help/po/sv.po429
-rw-r--r--perl-install/install/help/po/ta.po289
-rw-r--r--perl-install/install/help/po/tg.po265
-rw-r--r--perl-install/install/help/po/th.po188
-rw-r--r--perl-install/install/help/po/tl.po389
-rw-r--r--perl-install/install/help/po/tr.po464
-rw-r--r--perl-install/install/help/po/uk.po853
-rw-r--r--perl-install/install/help/po/uz.po195
-rw-r--r--perl-install/install/help/po/uz@cyrillic.po169
-rw-r--r--perl-install/install/help/po/vi.po268
-rw-r--r--perl-install/install/help/po/wa.po291
-rw-r--r--perl-install/install/help/po/zh_CN.po308
-rw-r--r--perl-install/install/help/po/zh_TW.po267
-rw-r--r--perl-install/install/http.pm11
-rwxr-xr-xperl-install/install/install27
-rw-r--r--perl-install/install/install2.pm695
-rw-r--r--perl-install/install/interactive.pm2
-rw-r--r--perl-install/install/media.pm84
-rw-r--r--perl-install/install/pixmaps/cadre-blanc_600.pngbin217753 -> 3696 bytes-rw-r--r--perl-install/install/pixmaps/cadre-blanc_768.pngbin404143 -> 5529 bytes-rw-r--r--perl-install/install/pixmaps/desktop-Custom-big.pngbin183145 -> 119501 bytes-rw-r--r--perl-install/install/pixmaps/desktop-Custom.pngbin9637 -> 10669 bytes-rw-r--r--perl-install/install/pixmaps/desktop-GNOME-big.pngbin246467 -> 93324 bytes-rw-r--r--perl-install/install/pixmaps/desktop-GNOME.pngbin8064 -> 9085 bytes-rw-r--r--perl-install/install/pixmaps/desktop-KDE-big.pngbin147090 -> 0 bytes-rw-r--r--perl-install/install/pixmaps/desktop-KDE.pngbin6686 -> 0 bytes-rw-r--r--perl-install/install/pixmaps/desktop-PLASMA5-big.pngbin0 -> 89754 bytes-rw-r--r--perl-install/install/pixmaps/desktop-PLASMA5.pngbin0 -> 8669 bytes-rw-r--r--perl-install/install/pixmaps/empty-banner.pngbin1162 -> 1162 bytes-rw-r--r--perl-install/install/pixmaps/langs/lang-ast.pngbin0 -> 609 bytes-rw-r--r--perl-install/install/pixmaps/langs/lang-qu.pngbin851 -> 851 bytes-rw-r--r--perl-install/install/pixmaps/left-background.pngbin78895 -> 30449 bytes-rw-r--r--perl-install/install/pixmaps/left-border.pngbin222 -> 164 bytes-rw-r--r--perl-install/install/pixmaps/left-bottom-corner.pngbin450 -> 174 bytes-rw-r--r--perl-install/install/pixmaps/left-top-corner.pngbin380 -> 174 bytes-rw-r--r--perl-install/install/pixmaps/reload.pngbin157 -> 1145 bytes-rw-r--r--perl-install/install/pixmaps/right-white-background_left_part_600.pngbin3519 -> 436 bytes-rw-r--r--perl-install/install/pixmaps/right-white-background_left_part_768.pngbin7287 -> 457 bytes-rw-r--r--perl-install/install/pixmaps/right-white-background_right_part_600.pngbin190379 -> 2063 bytes-rw-r--r--perl-install/install/pixmaps/semiselected.pngbin354 -> 305 bytes-rw-r--r--perl-install/install/pixmaps/unselected.pngbin157 -> 155 bytes-rw-r--r--perl-install/install/pkgs.pm306
-rw-r--r--perl-install/install/share/aliases2
-rw-r--r--perl-install/install/share/fonts.tar.bz2bin774796 -> 0 bytes-rw-r--r--perl-install/install/share/gdb-inst24
-rwxr-xr-xperl-install/install/share/generate-xlocales2
-rw-r--r--perl-install/install/share/gtk.css7
-rw-r--r--perl-install/install/share/gtkrc2
-rwxr-xr-xperl-install/install/share/kmap2bkmap13
-rw-r--r--perl-install/install/share/list.xml696
-rw-r--r--perl-install/install/share/po/.gitignore1
-rw-r--r--perl-install/install/share/po/.tx/config8
-rw-r--r--perl-install/install/share/po/DrakX.pot818
-rw-r--r--perl-install/install/share/po/Makefile17
-rw-r--r--perl-install/install/share/po/af.po1472
-rw-r--r--perl-install/install/share/po/am.po1115
-rw-r--r--perl-install/install/share/po/ar.po1193
-rw-r--r--perl-install/install/share/po/ast.po1673
-rw-r--r--perl-install/install/share/po/az.po1215
-rw-r--r--perl-install/install/share/po/be.po1280
-rw-r--r--perl-install/install/share/po/bg.po1231
-rw-r--r--perl-install/install/share/po/bn.po1170
-rw-r--r--perl-install/install/share/po/br.po1157
-rw-r--r--perl-install/install/share/po/bs.po1181
-rw-r--r--perl-install/install/share/po/ca.po1347
-rw-r--r--perl-install/install/share/po/cs.po1080
-rw-r--r--perl-install/install/share/po/cy.po1379
-rw-r--r--perl-install/install/share/po/da.po1134
-rw-r--r--perl-install/install/share/po/de.po1123
-rw-r--r--perl-install/install/share/po/de_AT.po1706
-rw-r--r--perl-install/install/share/po/el.po1447
-rw-r--r--perl-install/install/share/po/eo.po1055
-rw-r--r--perl-install/install/share/po/es.po1460
-rw-r--r--perl-install/install/share/po/et.po1127
-rw-r--r--perl-install/install/share/po/eu.po1038
-rw-r--r--perl-install/install/share/po/fa.po1110
-rw-r--r--perl-install/install/share/po/fi.po1072
-rw-r--r--perl-install/install/share/po/fr.po1195
-rw-r--r--perl-install/install/share/po/fur.po1014
-rw-r--r--perl-install/install/share/po/ga.po1156
-rw-r--r--perl-install/install/share/po/gl.po1164
-rw-r--r--perl-install/install/share/po/he.po1292
-rw-r--r--perl-install/install/share/po/hi.po1217
-rw-r--r--perl-install/install/share/po/hr.po1349
-rw-r--r--perl-install/install/share/po/hu.po1190
-rw-r--r--perl-install/install/share/po/hy.po1608
-rw-r--r--perl-install/install/share/po/id.po1501
-rw-r--r--perl-install/install/share/po/is.po984
-rw-r--r--perl-install/install/share/po/it.po1057
-rw-r--r--perl-install/install/share/po/ja.po1149
-rw-r--r--perl-install/install/share/po/ka.po1608
-rw-r--r--perl-install/install/share/po/ko.po1162
-rw-r--r--perl-install/install/share/po/ku.po1608
-rw-r--r--perl-install/install/share/po/ky.po1049
-rw-r--r--perl-install/install/share/po/lo.po1607
-rw-r--r--perl-install/install/share/po/lt.po1311
-rw-r--r--perl-install/install/share/po/ltg.po1177
-rw-r--r--perl-install/install/share/po/lv.po1253
-rw-r--r--perl-install/install/share/po/mk.po1182
-rw-r--r--perl-install/install/share/po/mn.po1298
-rw-r--r--perl-install/install/share/po/mr.po1608
-rw-r--r--perl-install/install/share/po/ms.po1350
-rw-r--r--perl-install/install/share/po/mt.po1218
-rw-r--r--perl-install/install/share/po/nb.po1084
-rw-r--r--perl-install/install/share/po/nl.po1116
-rw-r--r--perl-install/install/share/po/nn.po1041
-rw-r--r--perl-install/install/share/po/pa_IN.po1129
-rw-r--r--perl-install/install/share/po/pl.po1019
-rw-r--r--perl-install/install/share/po/pt.po1197
-rw-r--r--perl-install/install/share/po/pt_BR.po1352
-rw-r--r--perl-install/install/share/po/ro.po1179
-rw-r--r--perl-install/install/share/po/ru.po1061
-rw-r--r--perl-install/install/share/po/sc.po1041
-rw-r--r--perl-install/install/share/po/sk.po1249
-rw-r--r--perl-install/install/share/po/sl.po1156
-rw-r--r--perl-install/install/share/po/sq.po1368
-rw-r--r--perl-install/install/share/po/sr.po1250
-rw-r--r--perl-install/install/share/po/sr@Latn.po1045
-rw-r--r--perl-install/install/share/po/sv.po1232
-rw-r--r--perl-install/install/share/po/ta.po1241
-rw-r--r--perl-install/install/share/po/tg.po1618
-rw-r--r--perl-install/install/share/po/th.po1259
-rw-r--r--perl-install/install/share/po/tl.po1226
-rw-r--r--perl-install/install/share/po/tr.po1022
-rw-r--r--perl-install/install/share/po/uk.po1173
-rw-r--r--perl-install/install/share/po/uz.po1027
-rw-r--r--perl-install/install/share/po/uz@cyrillic.po1086
-rw-r--r--perl-install/install/share/po/vi.po1101
-rw-r--r--perl-install/install/share/po/wa.po1176
-rw-r--r--perl-install/install/share/po/xh.po1608
-rw-r--r--perl-install/install/share/po/zh_CN.po1016
-rw-r--r--perl-install/install/share/po/zh_TW.po1065
-rw-r--r--perl-install/install/share/po/zu.po1608
-rw-r--r--perl-install/install/share/runinstall2.sh11
-rw-r--r--perl-install/install/share/symlinks10
-rw-r--r--perl-install/install/share/upgrade/.gitignore1
-rw-r--r--perl-install/install/share/upgrade/conectiva.10/map3355
-rwxr-xr-xperl-install/install/share/upgrade/conectiva.10/pre.keep-kde-profile6
-rwxr-xr-xperl-install/install/share/upgrade/conectiva.10/pre.merge-groups.sh87
-rwxr-xr-xperl-install/install/share/upgrade/conectiva.10/pre.remove-conflicting-files.sh3
-rw-r--r--perl-install/install/steps.pm152
-rw-r--r--perl-install/install/steps_auto_install.pm2
-rw-r--r--perl-install/install/steps_curses.pm4
-rw-r--r--perl-install/install/steps_gtk.pm385
-rw-r--r--perl-install/install/steps_interactive.pm342
-rw-r--r--perl-install/install/steps_list.pm2
-rw-r--r--perl-install/install/steps_stdio.pm2
-rw-r--r--perl-install/interactive.pm281
-rw-r--r--perl-install/interactive/curses.pm40
-rw-r--r--perl-install/interactive/gtk.pm238
-rw-r--r--perl-install/interactive/http.pm4
-rw-r--r--perl-install/interactive/stdio.pm6
-rw-r--r--perl-install/lang.pm718
-rw-r--r--perl-install/list_firmwares.pm26
-rw-r--r--perl-install/log.pm2
-rw-r--r--perl-install/lvm.pm90
-rw-r--r--perl-install/messages.pm157
-rw-r--r--perl-install/mirror.pm204
-rw-r--r--perl-install/modules.pm122
-rw-r--r--perl-install/modules/any_conf.pm12
-rw-r--r--perl-install/modules/interactive.pm10
-rw-r--r--perl-install/modules/modprobe_conf.pm3
-rw-r--r--perl-install/modules/modules_conf.pm3
-rw-r--r--perl-install/modules/parameters.pm6
-rw-r--r--perl-install/mygtk2.pm130
-rw-r--r--perl-install/mygtk3.pm1679
-rw-r--r--perl-install/partition_table.pm338
-rw-r--r--perl-install/partition_table/bsd.pm5
-rw-r--r--perl-install/partition_table/dmcrypt.pm2
-rw-r--r--perl-install/partition_table/dos.pm111
-rw-r--r--perl-install/partition_table/empty.pm2
-rw-r--r--perl-install/partition_table/gpt.pm161
-rw-r--r--perl-install/partition_table/lvm.pm2
-rw-r--r--perl-install/partition_table/mac.pm4
-rw-r--r--perl-install/partition_table/raw.pm83
-rw-r--r--perl-install/partition_table/readonly.pm2
-rw-r--r--perl-install/partition_table/sun.pm4
-rw-r--r--perl-install/pixmaps/X.pngbin2517 -> 2130 bytes-rw-r--r--perl-install/pixmaps/advanced_expander.pngbin181 -> 222 bytes-rw-r--r--perl-install/pixmaps/banner-background.pngbin235 -> 151 bytes-rw-r--r--perl-install/pixmaps/banner-blue-part.pngbin5296 -> 233 bytes-rw-r--r--perl-install/pixmaps/cups_config.pngbin2290 -> 1997 bytes-rw-r--r--perl-install/pixmaps/default.pngbin1701 -> 1196 bytes-rw-r--r--perl-install/pixmaps/eth_card_mini.pngbin2712 -> 2625 bytes-rw-r--r--perl-install/pixmaps/help.pngbin1699 -> 1581 bytes-rw-r--r--perl-install/pixmaps/nosplash_thumb.pngbin5115 -> 1937 bytes-rw-r--r--perl-install/pixmaps/pause-16.pngbin775 -> 887 bytes-rw-r--r--perl-install/pixmaps/pause-24.pngbin1146 -> 1443 bytes-rw-r--r--perl-install/pixmaps/play-16.pngbin795 -> 904 bytes-rw-r--r--perl-install/pixmaps/play-24.pngbin1355 -> 1455 bytes-rw-r--r--perl-install/pixmaps/quit.pngbin2117 -> 2880 bytes-rw-r--r--perl-install/pixmaps/redhat-config-users.pngbin2770 -> 3947 bytes-rw-r--r--perl-install/pixmaps/refresh.pngbin1775 -> 2041 bytes-rw-r--r--perl-install/pixmaps/right-white-background_left_part-1.pngbin260 -> 171 bytes-rw-r--r--perl-install/pixmaps/right-white-background_left_part-2.pngbin3091 -> 403 bytes-rw-r--r--perl-install/pixmaps/right-white-background_left_part-3.pngbin327 -> 171 bytes-rw-r--r--perl-install/pixmaps/right-white-background_right_part_768.pngbin300101 -> 3150 bytes-rw-r--r--perl-install/pixmaps/rollover.pngbin2335 -> 336 bytes-rw-r--r--perl-install/pixmaps/security-low.pngbin1005 -> 1096 bytes-rw-r--r--perl-install/pixmaps/security-medium.pngbin814 -> 1054 bytes-rw-r--r--perl-install/pixmaps/security-strong.pngbin1147 -> 1069 bytes-rw-r--r--perl-install/pixmaps/selected.pngbin360 -> 310 bytes-rw-r--r--perl-install/pixmaps/small-logo.pngbin0 -> 646 bytes-rw-r--r--perl-install/pixmaps/steps_done.pngbin388 -> 364 bytes-rw-r--r--perl-install/pixmaps/steps_off.pngbin262 -> 349 bytes-rw-r--r--perl-install/pixmaps/steps_on.pngbin4229 -> 811 bytes-rw-r--r--perl-install/pixmaps/stop-16.pngbin717 -> 889 bytes-rw-r--r--perl-install/pixmaps/stop-24.pngbin1237 -> 1415 bytes-rw-r--r--perl-install/pixmaps/unselected.pngbin172 -> 155 bytes-rw-r--r--perl-install/pixmaps/warning.pngbin3169 -> 2396 bytes-rw-r--r--perl-install/pkgs.pm59
-rw-r--r--perl-install/raid.pm138
-rwxr-xr-x[-rw-r--r--]perl-install/resize_fat/Makefile.PL0
-rw-r--r--perl-install/resize_fat/README2
-rw-r--r--perl-install/resize_fat/any.pm12
-rw-r--r--perl-install/resize_fat/boot_sector.pm4
-rw-r--r--perl-install/resize_fat/c_rewritten.pm2
-rw-r--r--perl-install/resize_fat/dir_entry.pm2
-rw-r--r--perl-install/resize_fat/directory.pm2
-rw-r--r--perl-install/resize_fat/fat.pm2
-rw-r--r--perl-install/resize_fat/info_sector.pm2
-rw-r--r--perl-install/resize_fat/io.pm2
-rw-r--r--perl-install/resize_fat/main.pm4
-rw-r--r--perl-install/run_program.pm283
-rw-r--r--perl-install/scanner.pm48
-rw-r--r--perl-install/security/help.pm2
-rw-r--r--perl-install/security/level.pm28
-rw-r--r--perl-install/security/various.pm2
-rw-r--r--perl-install/services.pm328
-rw-r--r--perl-install/share/base.pngbin392 -> 234 bytes-rw-r--r--perl-install/share/diskdrake.css92
-rw-r--r--perl-install/share/diskdrake.rc55
-rw-r--r--perl-install/share/floppy.pngbin317 -> 306 bytes-rw-r--r--perl-install/share/ftin.pngbin190 -> 212 bytes-rw-r--r--perl-install/share/ftout.pngbin190 -> 217 bytes-rw-r--r--perl-install/share/help.pngbin3769 -> 1353 bytes-rw-r--r--perl-install/share/installed.pngbin352 -> 477 bytes-rw-r--r--perl-install/share/left-background-filler.pngbin885 -> 763 bytes-rw-r--r--perl-install/share/po/.gitignore1
-rw-r--r--perl-install/share/po/.tx/config8
-rw-r--r--perl-install/share/po/Makefile3
-rw-r--r--perl-install/share/po/af.po4049
-rw-r--r--perl-install/share/po/am.po3597
-rw-r--r--perl-install/share/po/ar.po4003
-rw-r--r--perl-install/share/po/ast.po6507
-rw-r--r--perl-install/share/po/az.po4160
-rw-r--r--perl-install/share/po/be.po4002
-rw-r--r--perl-install/share/po/bg.po3742
-rw-r--r--perl-install/share/po/bn.po3960
-rw-r--r--perl-install/share/po/br.po3753
-rw-r--r--perl-install/share/po/bs.po4045
-rw-r--r--perl-install/share/po/ca.po4875
-rw-r--r--perl-install/share/po/cs.po4022
-rw-r--r--perl-install/share/po/cy.po3969
-rw-r--r--perl-install/share/po/da.po3900
-rw-r--r--perl-install/share/po/de.po4414
-rw-r--r--perl-install/share/po/de_AT.po7236
-rw-r--r--perl-install/share/po/el.po4993
-rw-r--r--perl-install/share/po/eo.po3885
-rw-r--r--perl-install/share/po/es.po4032
-rw-r--r--perl-install/share/po/et.po4017
-rw-r--r--perl-install/share/po/eu.po3683
-rw-r--r--perl-install/share/po/fa.po4037
-rw-r--r--perl-install/share/po/fi.po4189
-rw-r--r--perl-install/share/po/fr.po4238
-rw-r--r--perl-install/share/po/fur.po3381
-rw-r--r--perl-install/share/po/ga.po3655
-rw-r--r--perl-install/share/po/gl.po4100
-rw-r--r--perl-install/share/po/he.po4415
-rw-r--r--perl-install/share/po/hi.po3999
-rw-r--r--perl-install/share/po/hr.po4348
-rw-r--r--perl-install/share/po/hu.po4637
-rw-r--r--perl-install/share/po/hy.po6477
-rw-r--r--perl-install/share/po/id.po5503
-rw-r--r--perl-install/share/po/is.po3442
-rw-r--r--perl-install/share/po/it.po3911
-rw-r--r--perl-install/share/po/ja.po4293
-rw-r--r--perl-install/share/po/ka.po6477
-rw-r--r--perl-install/share/po/ko.po3931
-rw-r--r--perl-install/share/po/ku.po6477
-rw-r--r--perl-install/share/po/ky.po3608
-rw-r--r--perl-install/share/po/libDrakX.pot2758
-rw-r--r--perl-install/share/po/lo.po6477
-rw-r--r--perl-install/share/po/lt.po4290
-rw-r--r--perl-install/share/po/ltg.po3332
-rw-r--r--perl-install/share/po/lv.po4005
-rw-r--r--perl-install/share/po/mk.po4214
-rw-r--r--perl-install/share/po/mn.po4615
-rw-r--r--perl-install/share/po/mr.po6477
-rw-r--r--perl-install/share/po/ms.po5145
-rw-r--r--perl-install/share/po/mt.po3531
-rw-r--r--perl-install/share/po/nb.po5158
-rw-r--r--perl-install/share/po/nl.po3747
-rw-r--r--perl-install/share/po/nn.po4051
-rw-r--r--perl-install/share/po/pa_IN.po3472
-rw-r--r--perl-install/share/po/pl.po3525
-rw-r--r--perl-install/share/po/pt.po4394
-rw-r--r--perl-install/share/po/pt_BR.po5232
-rw-r--r--perl-install/share/po/ro.po4311
-rw-r--r--perl-install/share/po/ru.po3884
-rw-r--r--perl-install/share/po/sc.po3202
-rw-r--r--perl-install/share/po/sk.po4377
-rw-r--r--perl-install/share/po/sl.po4397
-rw-r--r--perl-install/share/po/sq.po4753
-rw-r--r--perl-install/share/po/sr.po4968
-rw-r--r--perl-install/share/po/sr@Latn.po3686
-rw-r--r--perl-install/share/po/sv.po3890
-rw-r--r--perl-install/share/po/ta.po3993
-rw-r--r--perl-install/share/po/tg.po4246
-rw-r--r--perl-install/share/po/th.po4330
-rw-r--r--perl-install/share/po/tl.po4226
-rw-r--r--perl-install/share/po/tr.po3911
-rwxr-xr-xperl-install/share/po/translation_size.pl14
-rw-r--r--perl-install/share/po/uk.po3948
-rw-r--r--perl-install/share/po/uz.po3909
-rw-r--r--perl-install/share/po/uz@cyrillic.po4196
-rw-r--r--perl-install/share/po/vi.po4053
-rw-r--r--perl-install/share/po/wa.po3839
-rw-r--r--perl-install/share/po/xh.po6477
-rw-r--r--perl-install/share/po/zh_CN.po3391
-rw-r--r--perl-install/share/po/zh_TW.po3650
-rw-r--r--perl-install/share/po/zu.po6477
-rw-r--r--perl-install/share/themes-galaxy.css31
-rw-r--r--perl-install/share/themes-galaxy.rc2
-rw-r--r--perl-install/standalone.pm55
-rwxr-xr-xperl-install/standalone/bootloader-config46
-rwxr-xr-xperl-install/standalone/diskdrake4
-rwxr-xr-xperl-install/standalone/display_help38
-rwxr-xr-x[-rw-r--r--]perl-install/standalone/display_installer_help (renamed from globetrotter/hwprofile)48
-rwxr-xr-xperl-install/standalone/display_release_notes.pl (renamed from perl-install/install/share/display_release_notes.pl)16
-rwxr-xr-xperl-install/standalone/drakautoinst80
-rwxr-xr-xperl-install/standalone/drakautologin138
-rwxr-xr-xperl-install/standalone/drakboot269
-rwxr-xr-xperl-install/standalone/drakbug107
-rwxr-xr-xperl-install/standalone/drakbug_report2
-rwxr-xr-xperl-install/standalone/drakclock410
-rwxr-xr-xperl-install/standalone/drakdisk10
-rwxr-xr-xperl-install/standalone/drakdoc2
-rwxr-xr-xperl-install/standalone/drakdvb26
-rwxr-xr-xperl-install/standalone/drakedm27
-rwxr-xr-xperl-install/standalone/drakfloppy53
-rwxr-xr-xperl-install/standalone/drakfont169
-rwxr-xr-xperl-install/standalone/drakhelp17
-rwxr-xr-xperl-install/standalone/drakperm43
-rwxr-xr-xperl-install/standalone/draksec131
-rwxr-xr-xperl-install/standalone/draksound14
-rwxr-xr-xperl-install/standalone/draksplash371
-rwxr-xr-xperl-install/standalone/drakupdate_fstab4
-rwxr-xr-xperl-install/standalone/drakups58
-rwxr-xr-xperl-install/standalone/drakxservices2
-rwxr-xr-xperl-install/standalone/drakxtv14
-rwxr-xr-xperl-install/standalone/fileshareset25
-rwxr-xr-xperl-install/standalone/finish-install61
-rwxr-xr-xperl-install/standalone/finish-install.xsetup31
-rwxr-xr-xperl-install/standalone/harddrake2319
-rw-r--r--perl-install/standalone/icons/IC-Dssh-48.pngbin3720 -> 644 bytes-rw-r--r--perl-install/standalone/icons/categ.pngbin5173 -> 4111 bytes-rw-r--r--perl-install/standalone/icons/drakbug-16.pngbin582 -> 753 bytes-rw-r--r--perl-install/standalone/icons/drakfont.pngbin2965 -> 830 bytes-rw-r--r--perl-install/standalone/icons/drakmenustyle-16.pngbin886 -> 1089 bytes-rw-r--r--perl-install/standalone/icons/drakmenustyle-24.pngbin1768 -> 1710 bytes-rw-r--r--perl-install/standalone/icons/drakmenustyle-32.pngbin2423 -> 2386 bytes-rw-r--r--perl-install/standalone/icons/drakmenustyle-52.pngbin3656 -> 4271 bytes-rw-r--r--perl-install/standalone/icons/drakmenustyle-64.pngbin6564 -> 5542 bytes-rw-r--r--perl-install/standalone/icons/drakmenustyle.pngbin4361 -> 3907 bytes-rw-r--r--perl-install/standalone/icons/drakmenustyle_128.pngbin14540 -> 9680 bytes-rw-r--r--perl-install/standalone/icons/draksound-16.pngbin559 -> 745 bytes-rw-r--r--perl-install/standalone/icons/draksplash-16.pngbin763 -> 0 bytes-rw-r--r--perl-install/standalone/icons/drakups.pngbin3214 -> 2035 bytes-rw-r--r--perl-install/standalone/icons/drakwizard-16.pngbin740 -> 787 bytes-rw-r--r--perl-install/standalone/icons/eth_card_mini2.pngbin1538 -> 800 bytes-rw-r--r--perl-install/standalone/icons/gmon.pngbin17411 -> 608 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/cd.pngbin834 -> 777 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/cpu.pngbin566 -> 611 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/floppy.pngbin730 -> 607 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/harddisk.pngbin725 -> 796 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/harddrake.pngbin970 -> 3343 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/hw-keyboard.pngbin827 -> 710 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/hw-memory.pngbin937 -> 475 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/hw-pcmcia.pngbin831 -> 619 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/hw-smbus.pngbin915 -> 738 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/hw-usb.pngbin868 -> 477 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/hw_mouse.pngbin751 -> 636 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/hw_network.pngbin922 -> 975 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/hw_printer.pngbin603 -> 786 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/ide_hd.pngbin725 -> 738 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/isdn.pngbin710 -> 736 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/joystick.pngbin730 -> 693 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/keyboard.pngbin533 -> 710 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/memory.pngbin675 -> 475 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/menu/harddrake-menu.svg511
-rw-r--r--perl-install/standalone/icons/harddrake2/menu/harddrake-menu16.pngbin970 -> 733 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/menu/harddrake-menu32.pngbin2447 -> 1747 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/menu/harddrake-menu48.pngbin4214 -> 3343 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/modem.pngbin847 -> 429 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/multimedia.pngbin1010 -> 842 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/scanner.pngbin809 -> 695 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/scsi.pngbin275 -> 738 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/scsi_hd.pngbin725 -> 738 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/sound.pngbin1042 -> 762 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/svg/cd.svg198
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/controller.svg246
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/cpu.svg219
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/floppy.svg194
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/harddisk.svg549
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/hw-keyboard.svg197
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/hw-memory.svg303
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/hw-pcmcia.svg517
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/hw_mouse.svg346
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/hw_network.svg233
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/hw_printer.svg1450
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/joystick.svg352
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/modem.svg218
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/multimedia.svg253
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/scanner.svg341
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/sound.svg307
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/tape.svg245
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/tv.svg290
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/unknown.svg247
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/ups.svg216
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/usb.svg239
-rw-r--r--perl-install/standalone/icons/harddrake2/svg/webcam.svg443
-rw-r--r--perl-install/standalone/icons/harddrake2/tape.pngbin920 -> 721 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/tv.pngbin647 -> 771 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/unknown.pngbin858 -> 845 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/ups.pngbin699 -> 788 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/usb.pngbin316 -> 477 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/video.pngbin806 -> 738 bytes-rw-r--r--perl-install/standalone/icons/harddrake2/webcam.pngbin842 -> 960 bytes-rw-r--r--perl-install/standalone/icons/hori.pngbin7232 -> 534 bytes-rw-r--r--perl-install/standalone/icons/hwapplet-16.pngbin503 -> 619 bytes-rw-r--r--perl-install/standalone/icons/hwapplet-24.pngbin774 -> 843 bytes-rw-r--r--perl-install/standalone/icons/hwapplet-32.pngbin1235 -> 1082 bytes-rw-r--r--perl-install/standalone/icons/hwapplet-52.pngbin2070 -> 1701 bytes-rw-r--r--perl-install/standalone/icons/hwapplet-64.pngbin2823 -> 2113 bytes-rw-r--r--perl-install/standalone/icons/hwapplet.pngbin1953 -> 1584 bytes-rw-r--r--perl-install/standalone/icons/hwapplet_128.pngbin7002 -> 4083 bytes-rw-r--r--perl-install/standalone/icons/ic-drakfont-48.pngbin3290 -> 627 bytes-rw-r--r--perl-install/standalone/icons/ic82-back-up-16.pngbin1027 -> 438 bytes-rw-r--r--perl-install/standalone/icons/ic82-back-up-32.pngbin2977 -> 534 bytes-rw-r--r--perl-install/standalone/icons/ic82-network-40.pngbin2145 -> 505 bytes-rw-r--r--perl-install/standalone/icons/ic82-users-16.pngbin726 -> 334 bytes-rw-r--r--perl-install/standalone/icons/localedrake-16.pngbin1327 -> 722 bytes-rw-r--r--perl-install/standalone/icons/localedrake-32.pngbin1991 -> 1536 bytes-rw-r--r--perl-install/standalone/icons/localedrake-48.pngbin3087 -> 1362 bytes-rw-r--r--perl-install/standalone/icons/logdrake.pngbin1760 -> 2576 bytes-rw-r--r--perl-install/standalone/icons/net_c.pngbin3198 -> 1645 bytes-rw-r--r--perl-install/standalone/icons/net_d.pngbin3192 -> 1906 bytes-rw-r--r--perl-install/standalone/icons/net_u.pngbin2866 -> 2186 bytes-rw-r--r--perl-install/standalone/icons/non-editable.pngbin872 -> 466 bytes-rw-r--r--perl-install/standalone/icons/scannerdrake.pngbin2669 -> 2521 bytes-rw-r--r--perl-install/standalone/icons/smbnfs_default.pngbin260 -> 252 bytes-rw-r--r--perl-install/standalone/icons/smbnfs_has_mntpoint.pngbin287 -> 269 bytes-rw-r--r--perl-install/standalone/icons/smbnfs_mounted.pngbin282 -> 253 bytes-rw-r--r--perl-install/standalone/icons/smbnfs_server.pngbin314 -> 195 bytes-rw-r--r--perl-install/standalone/icons/tradi.pngbin32579 -> 33212 bytes-rw-r--r--perl-install/standalone/icons/verti.pngbin21123 -> 534 bytes-rw-r--r--perl-install/standalone/icons/wiz_default_up.pngbin2686 -> 4472 bytes-rw-r--r--perl-install/standalone/interactive_http/.perl_checker1
-rwxr-xr-x[-rw-r--r--]perl-install/standalone/interactive_http/index.html.pl0
-rwxr-xr-xperl-install/standalone/interactive_http/interactive_http.cgi23
-rw-r--r--perl-install/standalone/interactive_http/miniserv.init10
-rwxr-xr-x[-rw-r--r--]perl-install/standalone/interactive_http/miniserv.pl0
-rwxr-xr-xperl-install/standalone/localedrake10
-rwxr-xr-xperl-install/standalone/logdrake116
-rwxr-xr-xperl-install/standalone/lsnetdrake4
-rwxr-xr-xperl-install/standalone/notify-x11-free-driver-switch11
-rwxr-xr-xperl-install/standalone/notify-x11-free-driver-switch.xsetup2
-rw-r--r--perl-install/standalone/po/.tx/config8
-rw-r--r--perl-install/standalone/po/Makefile11
-rw-r--r--perl-install/standalone/po/POTFILES.in3
-rw-r--r--perl-install/standalone/po/af.po2581
-rw-r--r--perl-install/standalone/po/am.po2540
-rw-r--r--perl-install/standalone/po/ar.po2392
-rw-r--r--perl-install/standalone/po/ast.po3246
-rw-r--r--perl-install/standalone/po/az.po2562
-rw-r--r--perl-install/standalone/po/be.po2668
-rw-r--r--perl-install/standalone/po/bg.po2378
-rw-r--r--perl-install/standalone/po/bn.po2302
-rw-r--r--perl-install/standalone/po/br.po2222
-rw-r--r--perl-install/standalone/po/bs.po2287
-rw-r--r--perl-install/standalone/po/ca.po2738
-rw-r--r--perl-install/standalone/po/cs.po2196
-rw-r--r--perl-install/standalone/po/cy.po2230
-rw-r--r--perl-install/standalone/po/da.po2069
-rw-r--r--perl-install/standalone/po/de.po2417
-rw-r--r--perl-install/standalone/po/de_AT.po3438
-rw-r--r--perl-install/standalone/po/el.po2792
-rw-r--r--perl-install/standalone/po/eo.po2607
-rw-r--r--perl-install/standalone/po/es.po2228
-rw-r--r--perl-install/standalone/po/et.po2234
-rw-r--r--perl-install/standalone/po/eu.po2187
-rw-r--r--perl-install/standalone/po/fa.po2334
-rw-r--r--perl-install/standalone/po/fi.po2347
-rw-r--r--perl-install/standalone/po/fr.po2263
-rw-r--r--perl-install/standalone/po/fur.po2030
-rw-r--r--perl-install/standalone/po/ga.po2507
-rw-r--r--perl-install/standalone/po/gl.po2170
-rw-r--r--perl-install/standalone/po/he.po2443
-rw-r--r--perl-install/standalone/po/hi.po2289
-rw-r--r--perl-install/standalone/po/hr.po2743
-rw-r--r--perl-install/standalone/po/hu.po2164
-rw-r--r--perl-install/standalone/po/hy.po3238
-rw-r--r--perl-install/standalone/po/id.po2873
-rw-r--r--perl-install/standalone/po/is.po2002
-rw-r--r--perl-install/standalone/po/it.po2076
-rw-r--r--perl-install/standalone/po/ja.po2431
-rw-r--r--perl-install/standalone/po/ka.po3238
-rw-r--r--perl-install/standalone/po/ko.po2538
-rw-r--r--perl-install/standalone/po/ku.po3238
-rw-r--r--perl-install/standalone/po/ky.po2057
-rw-r--r--perl-install/standalone/po/libDrakX-standalone.pot1760
-rw-r--r--perl-install/standalone/po/lo.po3237
-rw-r--r--perl-install/standalone/po/lt.po2647
-rw-r--r--perl-install/standalone/po/ltg.po2015
-rw-r--r--perl-install/standalone/po/lv.po2605
-rw-r--r--perl-install/standalone/po/mk.po2648
-rw-r--r--perl-install/standalone/po/mn.po2768
-rw-r--r--perl-install/standalone/po/mr.po3238
-rw-r--r--perl-install/standalone/po/ms.po3202
-rw-r--r--perl-install/standalone/po/mt.po2178
-rw-r--r--perl-install/standalone/po/nb.po2078
-rw-r--r--perl-install/standalone/po/nl.po2169
-rw-r--r--perl-install/standalone/po/nn.po2286
-rw-r--r--perl-install/standalone/po/pa_IN.po2181
-rw-r--r--perl-install/standalone/po/pl.po1991
-rw-r--r--perl-install/standalone/po/pt.po2346
-rw-r--r--perl-install/standalone/po/pt_BR.po2860
-rw-r--r--perl-install/standalone/po/ro.po2373
-rw-r--r--perl-install/standalone/po/ru.po2140
-rw-r--r--perl-install/standalone/po/sc.po1904
-rw-r--r--perl-install/standalone/po/sk.po2563
-rw-r--r--perl-install/standalone/po/sl.po2505
-rw-r--r--perl-install/standalone/po/sq.po3328
-rw-r--r--perl-install/standalone/po/sr.po2963
-rw-r--r--perl-install/standalone/po/sr@Latn.po2165
-rw-r--r--perl-install/standalone/po/sv.po2198
-rw-r--r--perl-install/standalone/po/ta.po2762
-rw-r--r--perl-install/standalone/po/tg.po2540
-rw-r--r--perl-install/standalone/po/th.po2615
-rw-r--r--perl-install/standalone/po/tl.po2487
-rw-r--r--perl-install/standalone/po/tr.po2124
-rw-r--r--perl-install/standalone/po/uk.po2285
-rw-r--r--perl-install/standalone/po/uz.po1952
-rw-r--r--perl-install/standalone/po/uz@cyrillic.po2101
-rw-r--r--perl-install/standalone/po/vi.po2349
-rw-r--r--perl-install/standalone/po/wa.po2274
-rw-r--r--perl-install/standalone/po/xh.po3238
-rw-r--r--perl-install/standalone/po/zh_CN.po2070
-rw-r--r--perl-install/standalone/po/zh_TW.po1979
-rw-r--r--perl-install/standalone/po/zu.po3238
-rw-r--r--perl-install/standalone/polkit/Makefile27
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakauth.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakautologin.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakboot.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakclock.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakdisk.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakdm.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakfont.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakhardware.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.draklog.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakperm.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakscanner.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.draksec.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.draksec.rules11
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakups.policy.in22
-rw-r--r--perl-install/standalone/polkit/org.mageia.drakxservices.policy.in22
-rwxr-xr-xperl-install/standalone/remove-unused-packages2
-rwxr-xr-xperl-install/standalone/scannerdrake102
-rwxr-xr-xperl-install/standalone/service_harddrake279
-rwxr-xr-xperl-install/standalone/service_harddrake_confirm12
-rw-r--r--perl-install/timezone.pm47
-rw-r--r--perl-install/ugtk2.pm37
-rw-r--r--perl-install/ugtk3.pm1640
-rw-r--r--perl-install/unused/cdrom.pm2
-rwxr-xr-x[-rw-r--r--]perl-install/unused/migrate-ugtk2-to-mygtk2.pl6
-rw-r--r--perl-install/wizards.pm6
-rw-r--r--rescue/.gitignore1
-rw-r--r--rescue/.perl_checker39
-rwxr-xr-xrescue/Flash/scripts/backup_systemloop106
-rwxr-xr-xrescue/Flash/scripts/clear_systemloop89
-rw-r--r--rescue/Flash/scripts/rescue_common205
-rwxr-xr-xrescue/Flash/scripts/reset_rootpass99
-rwxr-xr-xrescue/Flash/scripts/reset_userpass110
-rwxr-xr-xrescue/Flash/scripts/restore_systemloop167
-rwxr-xr-xrescue/Flash/scripts/test_badblocks69
-rwxr-xr-xrescue/Flash/scripts/upgrade307
-rwxr-xr-xrescue/Flash/scripts/upgrade.merge-users52
-rw-r--r--rescue/Makefile15
-rw-r--r--rescue/NEWS282
-rw-r--r--rescue/aliases11
-rwxr-xr-xrescue/bin/drvinst (renamed from rescue/drvinst)17
-rwxr-xr-xrescue/bin/guessmounts168
-rwxr-xr-xrescue/bin/install_bootloader (renamed from rescue/install_bootloader)9
-rwxr-xr-xrescue/bin/lsparts (renamed from rescue/lsparts)5
-rwxr-xr-xrescue/bin/rescue-doc (renamed from rescue/rescue-doc)17
-rwxr-xr-xrescue/bin/restore_ms_boot (renamed from rescue/restore_ms_boot)0
-rw-r--r--rescue/devices.pl55
-rw-r--r--rescue/dirs11
-rwxr-xr-xrescue/guessmounts97
-rw-r--r--rescue/list.xml345
-rwxr-xr-xrescue/make_flash_rescuebin2528 -> 2504 bytes-rwxr-xr-xrescue/make_partimage_save_rest_all2
-rwxr-xr-xrescue/make_rescue_img40
-rwxr-xr-xrescue/sbin/partimage_whole_disk (renamed from rescue/partimage_whole_disk)0
-rwxr-xr-xrescue/tree/bin/insmod2
-rw-r--r--rescue/tree/etc/hostname1
-rw-r--r--rescue/tree/etc/hosts2
-rw-r--r--rescue/tree/etc/inittab14
-rw-r--r--rescue/tree/etc/issue4
-rw-r--r--rescue/tree/etc/passwd5
-rw-r--r--rescue/tree/etc/profile4
-rwxr-xr-xrescue/tree/etc/rc.reboot8
-rwxr-xr-xrescue/tree/etc/rc.sysinit83
-rwxr-xr-xrescue/tree/sbin/fakeshutdown39
-rwxr-xr-xrescue/tree/sbin/modprobe16
-rwxr-xr-xrescue/tree/usr/bin/login (renamed from rescue/tree/bin/login)0
-rwxr-xr-xrescue/tree/usr/bin/mageia-rescue42
-rw-r--r--rescue/tree/usr/lib/CVS.0
-rw-r--r--rescue/tree/usr/lib/modules-load.d/mageia-rescue.conf8
-rwxr-xr-xrescue/tree/usr/lib/restore-image-lib.sh (renamed from rescue/restore-image-lib.sh)4
-rw-r--r--rescue/tree/usr/lib/systemd/system/rescue.service20
-rw-r--r--rescue/tree/usr/lib/systemd/system/systemd-udevd.service.d/dracut-rules.conf1
-rwxr-xr-xrescue/tree/usr/sbin/diskdrake-resize (renamed from rescue/diskdrake-resize)1
-rwxr-xr-xrescue/tree/usr/sbin/genpasswd13
-rwxr-xr-xrescue/tree/usr/sbin/grabjournallogs51
-rwxr-xr-xrescue/tree/usr/sbin/restore-image.sh (renamed from rescue/restore-image.sh)30
-rwxr-xr-xrescue/tree/usr/sbin/startssh27
-rw-r--r--rescue/tree/usr/share/symlinks10
-rw-r--r--tools/.perl_checker10
-rw-r--r--tools/Makefile7
-rwxr-xr-xtools/drakx-in-chroot102
-rwxr-xr-xtools/find-drivers-needing-nonfree-firmware94
-rwxr-xr-xtools/gencryptofiles115
-rwxr-xr-xtools/hd_grub.cgi6
-rwxr-xr-xtools/i386/busyboxbin55508 -> 0 bytes-rwxr-xr-xtools/ia64/elilo.efibin315800 -> 0 bytes-rwxr-xr-xtools/install-xml-file-list32
-rwxr-xr-xtools/mdkinst_stage2_tool5
-rw-r--r--tools/ppc/README52
-rwxr-xr-xtools/ppc/convert5
-rwxr-xr-xtools/ppc/magic89
-rwxr-xr-xtools/ppc/mapping36
-rw-r--r--tools/serial_probe/serial.c13
-rwxr-xr-xtools/x86_64/busyboxbin74064 -> 0 bytes
1260 files changed, 410332 insertions, 461342 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000..9e5ecb61c
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+.perl_checker.cache
+.directory
+*.tar.xz
+*~
diff --git a/Makefile b/Makefile
index 79744281d..ac686b8aa 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,3 @@
-include Makefile.config
ROOTDEST = /export
STAGE2_DEST = $(ROOTDEST)/install/stage2
@@ -19,8 +18,6 @@ install_only:
make -C rescue install STAGE2_DEST=$(STAGE2_DEST)
make -C advertising install ROOTDEST=$(ROOTDEST)
- LC_ALL=C svn info ChangeLog | egrep '^Revision|^Last Changed Date' > $(STAGE2_DEST)/VERSION
-
clean:
# force taking new rpms from repository
rm -rf images/RPMS
diff --git a/Makefile.common b/Makefile.common
deleted file mode 100644
index ec7066a06..000000000
--- a/Makefile.common
+++ /dev/null
@@ -1,64 +0,0 @@
- # -*- makefile -*-
- #******************************************************************************
- #
- # Guillaume Cottenceau (gc@mandrakesoft.com)
- #
- # Copyright 2000 Mandrakesoft
- #
- # This software may be freely redistributed under the terms of the GNU
- # public license.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- #*****************************************************************************
-
-ARCH := $(patsubst i%86,i386,$(shell uname -m))
-ARCH := $(patsubst sparc%,sparc,$(ARCH))
-
- #- default lib is dietlibc (honoured by main Makefile whenever possible)
-L = DIETLIBC
-#L = GLIBC
-
- #- default frontend is newt (honoured by main Makefile whenever possible)
-F = NEWT
-# F = STDIO
-
- #- override in some situations
-ifeq (ia64, $(ARCH))
-L = GLIBC
-endif
-ifeq (ppc, $(ARCH))
-L = GLIBC
-endif
-ifeq (x86_64, $(ARCH))
-#L = GLIBC
-endif
-
-ifeq (DIETLIBC, $(L))
-DIET = $(top_dir)/dietlibc/bin-$(ARCH)/diet
-endif
-
-
- #- flags used by all stuff
-ifeq (ppc, $(ARCH))
-CFLAGS = -Os -pipe -Wall -fomit-frame-pointer -fno-strict-aliasing
-else
-CFLAGS = -Os -pipe -Wall -Werror -fomit-frame-pointer -fno-strict-aliasing
-endif
-
-DIETLIBC_INCLUDES = -I$(top_dir)/dietlibc/include -I. -I$(top_dir)/bzlib
-GLIBC_INCLUDES = -I. -I$(top_dir)/bzlib
-INCLUDES = $($(L)_INCLUDES)
-
-GLIBC_LDFLAGS_STAGE1 = -static
-DIETLIBC_LDFLAGS_STAGE1 = -nostdlib
-LDFLAGS_STAGE1 = $($(L)_LDFLAGS_STAGE1)
-
-GLIBC_LIBC =
-DIETLIBC_LIBC =
-STAGE1_LIBC = $($(L)_LIBC)
-
-STRIPCMD = strip -R .note -R .comment
-
diff --git a/Makefile.config b/Makefile.config
index b661fff10..dabf65a5b 100644
--- a/Makefile.config
+++ b/Makefile.config
@@ -8,9 +8,10 @@ DISTRIB_DESCR = "$(_DISTRIB_NAME) release $(DISTRIB_VERSION)"
# not config, but useful everywhere :)
ARCH := $(patsubst i%86,i386,$(shell uname -m))
-ARCH := $(patsubst sparc%,sparc,$(ARCH))
+ARCH := $(ARCH:sparc%=sparc)
+ARCH := $(ARCH:arm%=arm)
-PKG_ARCH := $(patsubst i386,i586,$(ARCH))
+PKG_ARCH := $(ARCH:i386=i586)
ifeq (x86_64, $(ARCH))
LIB = lib64
diff --git a/advertising/01_IM_mageia.pl b/advertising/01_IM_mageia.pl
new file mode 100644
index 000000000..e8b554b51
--- /dev/null
+++ b/advertising/01_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("Join Us!");
diff --git a/advertising/01_IM_mageia.png b/advertising/01_IM_mageia.png
new file mode 100644
index 000000000..0ad6cb769
--- /dev/null
+++ b/advertising/01_IM_mageia.png
Binary files differ
diff --git a/advertising/02_IM_mageia.pl b/advertising/02_IM_mageia.pl
new file mode 100644
index 000000000..ddeeb73d5
--- /dev/null
+++ b/advertising/02_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("Make it yours!");
diff --git a/advertising/02_IM_mageia.png b/advertising/02_IM_mageia.png
new file mode 100644
index 000000000..c19f00867
--- /dev/null
+++ b/advertising/02_IM_mageia.png
Binary files differ
diff --git a/advertising/03_IM_mageia.pl b/advertising/03_IM_mageia.pl
new file mode 100644
index 000000000..85dfe0561
--- /dev/null
+++ b/advertising/03_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("Your choice!");
diff --git a/advertising/03_IM_mageia.png b/advertising/03_IM_mageia.png
new file mode 100644
index 000000000..3bf05ef0f
--- /dev/null
+++ b/advertising/03_IM_mageia.png
Binary files differ
diff --git a/advertising/04_IM_mageia.pl b/advertising/04_IM_mageia.pl
new file mode 100644
index 000000000..d79d45a3a
--- /dev/null
+++ b/advertising/04_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("Office tools");
diff --git a/advertising/04_IM_mageia.png b/advertising/04_IM_mageia.png
new file mode 100644
index 000000000..a759ae383
--- /dev/null
+++ b/advertising/04_IM_mageia.png
Binary files differ
diff --git a/advertising/05_IM_mageia.pl b/advertising/05_IM_mageia.pl
new file mode 100644
index 000000000..0be976b2f
--- /dev/null
+++ b/advertising/05_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("Home entertainment");
diff --git a/advertising/05_IM_mageia.png b/advertising/05_IM_mageia.png
new file mode 100644
index 000000000..01b0ef866
--- /dev/null
+++ b/advertising/05_IM_mageia.png
Binary files differ
diff --git a/advertising/06_IM_mageia.pl b/advertising/06_IM_mageia.pl
new file mode 100644
index 000000000..96c259df7
--- /dev/null
+++ b/advertising/06_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("For kids");
diff --git a/advertising/06_IM_mageia.png b/advertising/06_IM_mageia.png
new file mode 100644
index 000000000..7f2a5e76b
--- /dev/null
+++ b/advertising/06_IM_mageia.png
Binary files differ
diff --git a/advertising/07_IM_mageia.pl b/advertising/07_IM_mageia.pl
new file mode 100644
index 000000000..d205668a6
--- /dev/null
+++ b/advertising/07_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("For family!");
diff --git a/advertising/07_IM_mageia.png b/advertising/07_IM_mageia.png
new file mode 100644
index 000000000..5aa4ec481
--- /dev/null
+++ b/advertising/07_IM_mageia.png
Binary files differ
diff --git a/advertising/08_IM_mageia.pl b/advertising/08_IM_mageia.pl
new file mode 100644
index 000000000..d6767f491
--- /dev/null
+++ b/advertising/08_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("For developers!");
diff --git a/advertising/08_IM_mageia.png b/advertising/08_IM_mageia.png
new file mode 100644
index 000000000..3a2dc4624
--- /dev/null
+++ b/advertising/08_IM_mageia.png
Binary files differ
diff --git a/advertising/09_IM_mageia.pl b/advertising/09_IM_mageia.pl
new file mode 100644
index 000000000..55e63f502
--- /dev/null
+++ b/advertising/09_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("Thank you!");
diff --git a/advertising/09_IM_mageia.png b/advertising/09_IM_mageia.png
new file mode 100644
index 000000000..e80d49a11
--- /dev/null
+++ b/advertising/09_IM_mageia.png
Binary files differ
diff --git a/advertising/10_IM_mageia.pl b/advertising/10_IM_mageia.pl
new file mode 100644
index 000000000..a75b16b5f
--- /dev/null
+++ b/advertising/10_IM_mageia.pl
@@ -0,0 +1 @@
+$title = N("Be Free!");
diff --git a/advertising/10_IM_mageia.png b/advertising/10_IM_mageia.png
new file mode 100644
index 000000000..ef1261f43
--- /dev/null
+++ b/advertising/10_IM_mageia.png
Binary files differ
diff --git a/advertising/IM_flash.pl b/advertising/IM_flash.pl
deleted file mode 100644
index 57f146bb6..000000000
--- a/advertising/IM_flash.pl
+++ /dev/null
@@ -1 +0,0 @@
-$title = N("Your desktop on a USB key");
diff --git a/advertising/IM_flash.png b/advertising/IM_flash.png
deleted file mode 100644
index 6db20ebbe..000000000
--- a/advertising/IM_flash.png
+++ /dev/null
Binary files differ
diff --git a/advertising/IM_free09.pl b/advertising/IM_free09.pl
deleted file mode 100644
index da447e629..000000000
--- a/advertising/IM_free09.pl
+++ /dev/null
@@ -1 +0,0 @@
-$title = N("The 100%% open source Mandriva Linux distribution");
diff --git a/advertising/IM_free09.png b/advertising/IM_free09.png
deleted file mode 100644
index ff3c1c90b..000000000
--- a/advertising/IM_free09.png
+++ /dev/null
Binary files differ
diff --git a/advertising/IM_one09.pl b/advertising/IM_one09.pl
deleted file mode 100644
index d2cc11ed0..000000000
--- a/advertising/IM_one09.pl
+++ /dev/null
@@ -1 +0,0 @@
-$title = N("Explore Linux easily with Mandriva One");
diff --git a/advertising/IM_one09.png b/advertising/IM_one09.png
deleted file mode 100644
index c359c83b6..000000000
--- a/advertising/IM_one09.png
+++ /dev/null
Binary files differ
diff --git a/advertising/IM_pwp09.pl b/advertising/IM_pwp09.pl
deleted file mode 100644
index 21c698e9f..000000000
--- a/advertising/IM_pwp09.pl
+++ /dev/null
@@ -1 +0,0 @@
-$title = N("A full Mandriva Linux desktop, with support");
diff --git a/advertising/IM_pwp09.png b/advertising/IM_pwp09.png
deleted file mode 100644
index 1d2ae295d..000000000
--- a/advertising/IM_pwp09.png
+++ /dev/null
Binary files differ
diff --git a/advertising/IM_range09.pl b/advertising/IM_range09.pl
deleted file mode 100644
index fde1186af..000000000
--- a/advertising/IM_range09.pl
+++ /dev/null
@@ -1 +0,0 @@
-$title = N("Mandriva: distributions for everybody's needs");
diff --git a/advertising/IM_range09.png b/advertising/IM_range09.png
deleted file mode 100644
index 9c3d52eaf..000000000
--- a/advertising/IM_range09.png
+++ /dev/null
Binary files differ
diff --git a/advertising/Makefile b/advertising/Makefile
index 9666a9636..d897938b8 100644
--- a/advertising/Makefile
+++ b/advertising/Makefile
@@ -1,4 +1,4 @@
-VERSION = 2009.1
+VERSION = 9.1
PRODUCT = drakx-installer-advertising
THEME = pwp
@@ -12,10 +12,7 @@ install:
install -m644 list-$(THEME) $(DESTDIR)/list
tar:
- rm -rf $(PRODUCT)*.tar* $(PRODUCT)-$(VERSION)
- svn export -q . $(PRODUCT)-$(VERSION)
- tar cfj $(PRODUCT)-$(VERSION).tar.bz2 $(PRODUCT)-$(VERSION)
- rm -rf $(PRODUCT)-$(VERSION)
+ git archive --prefix $(PRODUCT)-$(VERSION)/ HEAD | xz -9 > $(PRODUCT)-$(VERSION).tar.xz
clean:
find . -name "*~" -o -name ".#*" | xargs rm -f
diff --git a/advertising/NEWS b/advertising/NEWS
index e11109ecb..415fbe9ee 100644
--- a/advertising/NEWS
+++ b/advertising/NEWS
@@ -1,7 +1,65 @@
+Version 9.1 - 24 June 2023
+
+- Fix typos in slideshow (developer and Languages) (mga#31872)
+
+Version 9 - 17 April 2023
+
+- Mageia 9 artwork
+
+Version 8 - 11 January 2021
+
+- Mageia 8 artwork
+
+Version 7 - 4 May 2019
+
+- Mageia 7
+
+Version 6 - 8 May 2017
+
+- Mageia 6
+
+Version 5.1 - 18 December 2014
+
+- Fix badly exported 03_IM_mageia.png
+
+Version 5 - 17 December 2014
+
+- Mageia 5
+
+Version 4 - 8 January 2014
+
+- Mageia 4
+
+Version 3 - 6 april 2013
+
+- Mageia 3
+
+Version 2 - 25 april 2011
+
+- make it more generic for Mageia 2
+
+Version 1 - 12 March 2011
+
+- new advertising for Mageia 1
+
+Version 2011.0 - 13 Oct 2010
+
+- bump version
+
+Version 2010.1 - 02 May 2010
+
+- 2010.1 images
+
+Version 2010.0 - 28 October 2009
+
+- 2010.0 images
+
Version 2009.1 - 7 March 2009
+
- 2009.1 images
Version 2009.0 - 11 September 2008
+
- 2009.0 images
Version 2008.1.1 - 21 March 2008
diff --git a/advertising/list-dis b/advertising/list-dis
deleted file mode 100644
index 3ca560e8d..000000000
--- a/advertising/list-dis
+++ /dev/null
@@ -1,14 +0,0 @@
-LinDVD.png
-TRANSGAMING-CEDEGA.png
-FLATOUT.png
-Kaspersky.png
-Skype.png
-IM_ONE.png
-IM_3D.png
-IM_THEME.png
-IM-GWENVIEW.png
-IM_RPMDRAKE.png
-IM_web2.png
-IM_SERVICES.png
-IM_GAMME.png
-IM_REGISTER.png
diff --git a/advertising/list-dwd b/advertising/list-dwd
deleted file mode 100644
index d6d6cbc9d..000000000
--- a/advertising/list-dwd
+++ /dev/null
@@ -1,14 +0,0 @@
-LinDVD.png
-TRANSGAMING-CEDEGA.png
-FLATOUT.png
-Kaspersky.png
-Skype.png
-ARKEIA_EN.png
-IM_3D.png
-IM_THEME.png
-VPN.png
-IM_RPMDRAKE.png
-IM_web2.png
-IM_SERVICES.png
-IM_GAMME.png
-IM_REGISTER.png
diff --git a/advertising/list-ppp b/advertising/list-ppp
deleted file mode 100644
index 862cd4833..000000000
--- a/advertising/list-ppp
+++ /dev/null
@@ -1,13 +0,0 @@
-bitdefender.png
-ARKEIA_EN.png
-VPN.png
-IM_INVICTUS.png
-IM_RPMDRAKE.png
-IM_CRM.png
-IM_CMSJOOMLA.png
-IM_web2.png
-IM_THEME.png
-IM_3D.png
-IM_SERVICES.png
-IM_GAMME.png
-IM_REGISTER.png
diff --git a/advertising/list-pwp b/advertising/list-pwp
index b7c37918d..65540338b 100644
--- a/advertising/list-pwp
+++ b/advertising/list-pwp
@@ -1,5 +1,10 @@
-IM_flash.png
-IM_free09.png
-IM_one09.png
-IM_pwp09.png
-IM_range09.png
+01_IM_mageia.png
+02_IM_mageia.png
+03_IM_mageia.png
+04_IM_mageia.png
+05_IM_mageia.png
+06_IM_mageia.png
+07_IM_mageia.png
+08_IM_mageia.png
+09_IM_mageia.png
+10_IM_mageia.png
diff --git a/docs/Partition-ends-after-end-of-disk.txt b/docs/Partition-ends-after-end-of-disk.txt
index 3da57d561..037fe9106 100644
--- a/docs/Partition-ends-after-end-of-disk.txt
+++ b/docs/Partition-ends-after-end-of-disk.txt
@@ -1,6 +1,6 @@
Cylinder/Head/Size Hell Is Not Over
- pixel@mandrakesoft.com
+ pixel
$Date$
diff --git a/docs/README b/docs/README
index 54320919f..02bc5d351 100644
--- a/docs/README
+++ b/docs/README
@@ -5,14 +5,14 @@ Well here is a little description of what DrakX needs to work
********************************************************************************
Like all good free software, DrakX is in SVN :)
-You can access it at http://svn.mandriva.com/cgi-bin/viewvc.cgi/soft/drakx/trunk/
+You can access it at http://svnweb.mageia.org/soft/drakx/trunk/
or via
-svn co http://svn.mandriva.com/svn/soft/drakx/trunk drakx
+svn co svn+ssh://svn.mageia.org/svn/soft/drakx/trunk
-This is only read-only access. If you want more, tell me (pixel@mandriva.com)
+This is only read-only access. If you want more, tell me (pixel)
********************************************************************************
* Making your custom install ***************************************************
@@ -68,11 +68,11 @@ media/media_info/rpmsrate
packages in other level (3, 2, 1) can only be selected using
individual package selection.
-install/stage2/mdkinst.clp
+install/stage2/mdkinst.sqfs
for the compressed loopback of install.
generated from install/stage2/live tree using misc/mdkinst_stage2_tool
-install/stage2/rescue.clp
+install/stage2/rescue.sqfs
rescue ramdisk. create_compressed_fs iso file
this is the ramdisk loaded when typing rescue on boot prompt.
diff --git a/docs/README.devel b/docs/README.devel
index 989946de9..70d2b6285 100644
--- a/docs/README.devel
+++ b/docs/README.devel
@@ -12,12 +12,12 @@ entry point for stage2 is /usr/bin/runinstall2 which is typically a link to
install2::main with @ARGV.
install2::main parse command line arguments, prepare installation, find the right
-install_interactive class (take a look at gi/docs/object_class.fig) according to
+install/interactive class (take a look at gi/docs/object_class.fig) according to
command line, memory available and if the interactive chosen is initializing
correctly, else it will try a less-demanding interactive object.
Once done, $::o is set to this install & interactive object and main runs the
various step of install2 defined in $o->{steps}, starting with $o->{steps}{first}
-and iterating with method install_any::getNextStep().
+and iterating with method install::any::getNextStep().
while running step, it trap any errors that may arise and use perl exception to
change step.
@@ -28,35 +28,35 @@ Here is a brief description of what each modules of DrakX is doing.
install2: main module of DrakX as described above, main loop execution of DrakX.
-install_steps: generic installation module containing steps definition, all steps
+install/steps: generic installation module containing steps definition, all steps
should always be defined here as some methods may be used on automatic mode.
there is no interactivity available. typically are defined base operation for
configuring each step according to $o.
-install_steps_interactive: generic installation module with generic interative
+install/steps_interactive: generic installation module with generic interative
methods. typically are found all interactive code of DrakX for each steps.
-install_steps_auto_install: implementation installation module without interactive
+install/steps_auto_install: implementation installation module without interactive
methods to match auto_install mode. this is the simplest as almost no method are
- redefined (inherit module install_steps only, compared to other implementation
+ redefined (inherit module install/steps only, compared to other implementation
modules described below).
-install_steps_stdio: implementation installation module with interactive stdio
- methods to match stdio mode. inherit modules install_steps_interactive and
+install/steps_stdio: implementation installation module with interactive stdio
+ methods to match stdio mode. inherit modules install/steps_interactive and
interactive_stdio.
-install_steps_newt: implementation installation module with interactive newt
- methods to match newt mode. inherit modules install_steps_interactive and
+install/steps_newt: implementation installation module with interactive newt
+ methods to match newt mode. inherit modules install/steps_interactive and
interactive_newt.
-install_steps_gtk: implementation installation module with interactive gtk
- methods to match gtk mode. inherit modules install_steps_interactive and
+install/steps_gtk: implementation installation module with interactive gtk
+ methods to match gtk mode. inherit modules install/steps_interactive and
interactive_gtk.
-install_any: contains various methods using generic interactive interface but
+install/any: contains various methods using generic interactive interface but
not used by standalone tools.
-install_gtk: contains various methods using gtk interface but not used by
+install/gtk: contains various methods using gtk interface but not used by
standalone tools.
interactive_stdio: implementation methods for interactivity in stdio mode.
@@ -71,7 +71,7 @@ interactive_gtk: implementation methods for interactivity in gtk mode.
my_gtk: basic gtk access methods.
any: contains various methods using generic interactive interface. to compare
- against install_any module as this one is available for standalone tools.
+ against install/any module as this one is available for standalone tools.
class_discard: simple module that implement every methods undefined to return
nothing. this trick is used to ensure no undefined method can arise when using
@@ -237,14 +237,14 @@ the 0, 1, '' means not "redoable", "skip on error", "don't hide"
sub selectAlawindows { $o->selectAlawindows }
-3. add your function selectAlawindows in install_steps_interactive.pm
+3. add your function selectAlawindows in install/steps_interactive.pm
sub selectAlawindows {
my ($o) = @_;
$o->{alawindows} = $o->ask_yesorno('', _("Throw everything away as windobe does?"), 1);
}
-4. add your function selectAlawindows in install_steps.pm (not needed in that
+4. add your function selectAlawindows in install/steps.pm (not needed in that
case, except for auto_install)
sub selectAlawindows {}
diff --git a/docs/README.pxe b/docs/README.pxe
index 2ddd205fe..e60aa9ecf 100644
--- a/docs/README.pxe
+++ b/docs/README.pxe
@@ -13,7 +13,7 @@ You can install tftp-server and dhcp-server package from the Mandrake
distribution for example.
On the server machine at 192.168.2.1, you will find a "/etc/dhcpd.conf" sample
-file written by Florin Grad <florin@mandrakesoft.com>, where "mydomain.com" is
+file written by Florin Grad <florin>, where "mydomain.com" is
assumed to be your domain name, and 192.168.1.1 a name server. All install are
done on subnet 192.168.2.0.
diff --git a/docs/drakfont/drakfont.tex b/docs/drakfont/drakfont.tex
index bbc936e5b..035adf3a9 100644
--- a/docs/drakfont/drakfont.tex
+++ b/docs/drakfont/drakfont.tex
@@ -48,7 +48,7 @@
%\end{center}
%\end{figure}
-\author{Dupont Sebastien \\ sdupont@mandrakesoft.com}
+\author{Dupont Sebastien \\ sdupont}
\date{05/10/2001}
\pagestyle{myheadings}
\markright{\scriptsize \trtitle}
diff --git a/docs/ka_method/Makefile b/docs/ka_method/Makefile
index 354c83aa6..346475433 100644
--- a/docs/ka_method/Makefile
+++ b/docs/ka_method/Makefile
@@ -33,6 +33,10 @@ clean:
pdf_doc:
db2pdf -c ${CATALOG} -d ${DSL} ${XML_FILE} 2>&1
+pdf_noprint:
+ make clean
+ DSSSL_JADETEX=docbook-jadetex.dsssl make duplication.pdf DSSSL_JADETEX=docbook-jadetex.dsssl
+
html_doc:
xsltproc ${XSL_FILE} ${XML_FILE}
mv -f index.html ${WWW_PATH}/duplication.html
diff --git a/docs/ka_method/doc-duplication.xml b/docs/ka_method/doc-duplication.xml
index 43bf5c207..8196835fb 100644
--- a/docs/ka_method/doc-duplication.xml
+++ b/docs/ka_method/doc-duplication.xml
@@ -1,12 +1,14 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<article lang="en">
- <title>Clone a node using KA method</title>
+ <title>Clone a node/computer using KA method</title>
+ <sect1><title>CLONING WILL ERASE ALL CLIENT NODES DATA !</title><para>!! USE WITH CARE !! </para></sect1>
<sect1>
<title>Clone a computer over the network</title>
<para>
- Goal of duplication is to easily deploy a computer over network without taking care of numbers of computer. In this documentation, we call golden node the node we want to clone.
- We can duplicate SCSI or IDE hard drive, and duplication support multiple filesystem (reiserfs, ext2, ext3, xfs, jfs).
+ Goal of duplication is to easily deploy a computer over network without taking care of numbers of computer. In this documentation, we call golden node the node we want to clone. We can duplicate SCSI or IDE hard drive, and duplication support multiple filesystem (reiserfs, ext2, ext3, ext4, xfs, jfs).
+ This method came from a very old project called CLIC, and was used under IGGI project, all Mandrake Clustering products, and now it is used under XtreemOS project. Now it should be available in 2010 spring, and all futur product.
</para>
+ <para>WARNING: all data on client nodes will be ERASED ! We duplicate partitions of HDD's golden node, and the process will do an fdisk command on the client node, so ALL YOUR DATA will be erased on client nodes.</para>
<sect2>
<title>KA method</title>
<para>
@@ -19,9 +21,18 @@
</para>
<para>
<itemizedlist>
- <listitem><para>KA method doesn't support RAID software</para></listitem>
- <listitem><para>you can only clone Linux filesystems (if you want to duplicate another kinf of FS, it's up to you to modify the scripts)</para></listitem>
- <listitem><para>you can only duplicate same kind of HDD (IDE or SCSI)</para></listitem>
+ <listitem><para>KA method doesn't support RAID software (use dolly to do that)</para></listitem>
+ <listitem><para>all data on client nodes are erased</para></listitem>
+ <listitem><para>you need a PXE, DHDCP and TFTP server</para></listitem>
+ <listitem><para>you must re-create same partition table as the golden node (even if size can differ)</para></listitem>
+ <listitem><para>even if it has been tested, it's still an experimental method</para></listitem>
+ <listitem><para>cloning script are old, and need a full rewrite</para></listitem>
+ <listitem><para>now it's only works with the Mageia installer (need to patch it to support a KA method)</para></listitem>
+ <listitem><para>if a node crash while doing a duplication, the duplication process stop (or became very unstable)</para></listitem>
+ <listitem><para>using fdisk to erase and re-format the HDD is not a good way to proceed</para></listitem>
+ <listitem><para>UUID support is not really done (fstab use old /dec/sdX)</para></listitem>
+ <listitem><para>you can only clone Linux filesystems (if you want to duplicate another kinf of FS, it's up to you to modify the scripts)</para></listitem>
+ <listitem><para>of course various other things !</para></listitem>
</itemizedlist>
</para>
</sect2>
@@ -33,21 +44,21 @@
The clone process works in three steps
</para>
<itemizedlist>
- <listitem><para><emphasis role="bold">PXE boot to retrieve stage1</emphasis>: the computer boot on PXE mode, retrieve <emphasis role="bold">vmlinuz</emphasis> and an <emphasis role="bold">initrd</emphasis>. The computer is in <emphasis role="bold">stage1</emphasis> mode, and is able to get the stage2 throug KA. Network is up.</para></listitem>
- <listitem><para><emphasis role="bold">get stage2</emphasis>: the computer gets the stage2 with KA method. The <emphasis role="bold">stage2</emphasis> contains all necessary tools to recognize your hardware (the most important things is to detect your HDD), and all necessary tools to finalize the cloning process.</para></listitem>
- <listitem><para><emphasis role="bold">Duplication process</emphasis>: the computer auto-probes needed modules to be able to access to HDD. A basic log server is launched on the client node to be able to run command and get status of the KA duplication process.</para></listitem>
+ <listitem><para><emphasis role="bold">PXE boot to retrieve stage1</emphasis>: the computer boot on PXE mode, retrieve <emphasis role="bold">vmlinuz</emphasis> and an <emphasis role="bold">initrd</emphasis> image. The computer is in <emphasis role="bold">stage1</emphasis> mode, and is able to get the stage2 throug KA. Network is up.</para></listitem>
+ <listitem><para><emphasis role="bold">get stage2</emphasis>: the computer gets the stage2 with the KA method. The <emphasis role="bold">stage2</emphasis> contains all necessary tools to recognize your hardware (the most important things is to detect your HDD and your network card), and all necessary tools/scripts to finalize the cloning process.</para></listitem>
+ <listitem><para><emphasis role="bold">Duplication process</emphasis>: the computer auto-probes needed modules to be able to access the HDD. A basic log server is launched on the client node to be able to run command and get status of the KA duplication process. The computer reconfigure the modprobe.conf and restore the booloader (grub or lilo)</para></listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Needed files</title>
<para>
- All needed files are available on Mandriva Linux cooker.
+ All needed files are available in Mageia cooker.
</para>
<para>
<itemizedlist>
- <listitem><para><emphasis role="bold">install/stage2/rescue.sqhfs</emphasis>: this is the stage2 file with all needed files to detect and probe modules, and launch the third step of the duplication process. This file will be used on the golden node.</para></listitem>
+ <listitem><para><emphasis role="bold">install/stage2/rescue.sqfs</emphasis>: this is the stage2 file with all needed files to detect and probe modules, and launch the third step of the duplication process. This file will be used on the golden node.</para></listitem>
<listitem><para><emphasis role="bold">isolinux/alt0/vmlinuz</emphasis>: linux kernel, needed in the <emphasis role="bold">/var/lib/tftpboot/X86PC/linux/images/</emphasis> directory of the PXE server</para></listitem>
- <listitem><para><emphasis role="bold">isolinux/alt0/all.rdz</emphasis>: stage1 and all needed modules.</para></listitem>
+ <listitem><para><emphasis role="bold">isolinux/alt0/all.rdz</emphasis>: stage1 and all needed modules and tools.</para></listitem>
</itemizedlist>
</para>
</sect3>
@@ -60,7 +71,7 @@
<sect3>
<title>PXE parameters on server</title>
<para>
- Mandriva Linux installer supports various methods to install a computer. With PXE configuration file you can specify wich method you want to use to install your node, or add a specific option at boot prompt. Edit your default PXE configuration file to add your custom entry (<emphasis role="bold">/var/lib/tftpboot/X86PC/linux/pxelinux.cfg/default</emphasis>).
+ Mageia installer supports various methods to install a computer. With PXE configuration file you can specify wich method you want to use to install your node, or add a specific option at boot prompt. Edit your default PXE configuration file to add your custom entry (<emphasis role="bold">/var/lib/tftpboot/X86PC/linux/pxelinux.cfg/default</emphasis>).
</para>
<para>
<screen>
@@ -76,7 +87,7 @@ label local
label kamethod
KERNEL images/vmlinuz
APPEND initrd=images/all.rdz ramdisk_size=64000 vga=788 \
- automatic=method:ka,interface:eth0,network:dhcp root=/dev/ram3 rw rescue kamethod</screen>
+ automatic=method:ka,interface:eth0,network:dhcp root=/dev/ram3 rw kamethod</screen>
</para>
<para>
At boot prompt no you can boot:
@@ -143,8 +154,8 @@ prompt_timeout=2
# what services to provide, priority in ordering
# CSA = Client System Architecture
# service=<CSA>,<min layer>,<max layer>,<basename>,<menu entry>
-service=X86PC,0,2,linux,Mandrake Linux x86
-service=IA64PC,0,2,linux,Mandrake Linux IA64
+service=X86PC,0,2,linux,Mageia x86
+service=IA64PC,0,2,linux,Mageia IA64
service=X86PC,0,0,local,Local boot
# tftpd base dir
@@ -255,42 +266,45 @@ subnet NET.0 netmask 255.255.255.0 {
<title>The rescue.sqfs file</title>
<para>
You need the rescue disk (wich contains the <emphasis role="bold">/ka</emphasis> directory),
- and mount it loop in <emphasis role="bold">/mnt/ka</emphasis>.
+ Just extract this file, and copy all directory in <emphasis role="bold">/mnt/ka</emphasis>.
</para>
<para>
<screen>
-mkdir /mnt/ka
-mount -o loop -t squashfs rescue.sqfs /mnt/ka</screen>
+[root@guibpiv ~]# mkdir /mnt/ka
+[root@guibpiv ~]# cd /mnt/ka/
+[root@guibpiv ka]# unsquashfs rescue.sqfs
+[root@guibpiv ka]# mv squashfs-root/* .
+[root@guibpiv ka]# ls
+bin/ dev/ etc/ ka/ lib/ modules/ proc/ sbin/ squashfs-root/ tmp/ usr/ var/
+</screen>
</para>
<para>
- Go in the <emphasis role="bold">/mnt/ka/ka</emphasis> directory, and see all new files available. All those files are needed
- to do a <emphasis role="bold">KA</emphasis> duplication process. We will explain now the rule of each of them. If you want
- to modify the content of this rescue disk (add scripts...), mount it in a tempory directory, and copy the content
- into the <emphasis role="bold">/mnt/ka</emphasis> directory.
+ Go in the <emphasis role="bold">/mnt/ka/ka</emphasis> directory, and see all new files available. All those files are needed to do a <emphasis role="bold">KA</emphasis> duplication process. We will explain now the rule of each of them. You can modify all them, those files will be copied in the directory <emphasis role="bold">/tmp/stage2</emphasis> of the client node of the duplication process (second step).
</para>
<sect3>
<title>ka-d.sh</title>
<para>
- This is the master script to declare a node as a golden node. This script takes a lot of arguments.
+ This is the master script to declare a node as a golden node. This script takes a lot of arguments. This script should be run
+ on the host wich have the <emphasis role="bold">/mnt/ka</emphasis> directory.
<screen>
-h, --help : display this message
-n num : specify the number of (destination) nodes
-x dir : exclude directory
- -X sdb : exclude sdb for the replication
- -m drive : copy the master boot record (for windows) of this drive
+ -X sdb|sdc : exclude sdb for the replication
+ -m drive : copy the master boot record (for windows) of this drive (not really tested yet)
-M drive file : use 'file' as master boot record (must be 446 bytes long) for the specified drive
-D partition : also copy partition 'partition'
-p drive pdesc : use 'pdesc' file as partition scheme (see doc) for the specified drive
-d delay : delay beteween the release of 2 clients (1/10 second)
-r 'grub|lilo' : choose the bootloader (you can add mkinitrd options)
- ie: ka-d.sh -n 3 -p sda /tmp/desc -X sdb -r 'grub --with=ata_piix --with=piix'</screen>
+ ie: ka-d.sh -n 3 -p sda /tmp/desc -X 'sdb|sdc' -r 'grub --with=ata_piix --with=piix'</screen>
</para>
</sect3>
<sect3>
<title>replication.conf</title>
<para>
- This file contain all variables needed by other scripts. It also tries to get information like IP address.
+ This file contains all variables needed by other scripts. It also tries to get information like IP address.
</para>
</sect3>
<sect3>
@@ -300,45 +314,39 @@ mount -o loop -t squashfs rescue.sqfs /mnt/ka</screen>
This file must follow some rules: one line per partition, with two fields : type of partition and size in megabytes.
The type can be linux, swap, extended. Other types can be obtained by appending their hexadecimal number to 'type'.
For example linux is the same as type83. The size is either a number of megabytes, or the keyword fill (to take all
- available space). The logical partitions must have the logical keyword.
+ available space). The logical partitions must have the logical keyword. Do a <emphasis role="bold">man ka-d</emphasis> for more help.
</para>
</sect3>
<sect3>
<title>gen_modprobe_conf.pl</title>
<para>
- This script create a basic output like the content of the<emphasis role="bold">/etc/modprobe.conf</emphasis> file. Drawbacks
+ This script creates a basic output like the content of the<emphasis role="bold">/etc/modprobe.conf</emphasis> file. Drawbacks
this file must be updated for each new modules available in the kernel (based on the <emphasis role="bold">kernel/list_modules.pm</emphasis> file).
</para>
</sect3>
<sect3>
<title>ka-d-client</title>
<para>
- The <emphasis role="bold">ka-d-client</emphasis> binary file is used to get stage2 with the <emphasis role="bold">KA</emphasis> method, and after
- get the whole system. The important argument is the <emphasis role="bold">-s</emphasis> session name. A <emphasis role="bold">KA</emphasis>
- can only connect to a specific session (getstage2, kainstall ...). The code source is available in the ka-deploy-0.92 SRPM.
+ The <emphasis role="bold">ka-d-client</emphasis> binary file is used to get stage2 with the <emphasis role="bold">KA</emphasis> method, and after get the whole system. The important argument is the <emphasis role="bold">-s</emphasis> session name. A <emphasis role="bold">KA</emphasis> can only connect to a specific session (getstage2, kainstall ...). The code source is available in the ka-deploy SRPM.
</para>
</sect3>
<sect3>
<title>ka-d-server</title>
<para>
- The <emphasis role="bold">ka-d-server</emphasis> binary file is used to be a <emphasis role="bold">KA</emphasis> golden node server.
- Like the <emphasis role="bold">ka-d-client</emphasis> the session arguments is an important parameter (<emphasis role="bold">-s session_name</emphasis>).
- The code source is available in the ka-deploy-0.92 SRPM.
+ The <emphasis role="bold">ka-d-server</emphasis> binary file is used to be a <emphasis role="bold">KA</emphasis> golden node server. Like the <emphasis role="bold">ka-d-client</emphasis> the session arguments is an important parameter (<emphasis role="bold">-s session_name</emphasis>). The session name will be <emphasis role="bold">getstage2</emphasis> to retrieve the stage2 (after the PXE boot) and will be <emphasis role="bold">kainstall1</emphasis> at duplication process step. If you want to do more than one duplication process of nodes at the same time, you should synchronize the ka_sesion name between the server and the client. The code source is available in the ka-deploy SRPM.
</para>
</sect3>
<sect3>
<title>ka_replication.sh</title>
<para>
- Script launched on the <emphasis role="bold">KA</emphasis> client (after getting stage2 and probing modules), to do the full process of the
- <emphasis role="bold">Ka</emphasis> duplication.
+ Script launched on the <emphasis role="bold">KA</emphasis> client (after getting stage2 and probing modules), to do the full process of the <emphasis role="bold">Ka</emphasis> duplication.
This script call other scripts to prepare the node (prepare_node.sh), configure the bootloader (make_initrd_grub or make_initrd_lilo).
</para>
</sect3>
<sect3>
<title>store_log.sh</title>
<para>
- Basic script to store the log of the <emphasis role="bold">KA</emphasis> duplication process on an FTP server. Adjust to feet your need, and uncomment
- the line <emphasis role="bold">#store_log.sh</emphasis> in the <emphasis role="bold">/mnt/ka/ka/ka_replication.sh</emphasis> file.
+ Basic script to store the log of the <emphasis role="bold">KA</emphasis> duplication process on an FTP server. Adjust to feet your need, and uncomment the line <emphasis role="bold">#store_log.sh</emphasis> in the <emphasis role="bold">/mnt/ka/ka/ka_replication.sh</emphasis> file.
</para>
</sect3>
<sect3>
@@ -350,30 +358,24 @@ mount -o loop -t squashfs rescue.sqfs /mnt/ka</screen>
<sect3>
<title>make_initrd_grub</title>
<para>
- Restore and reload the Grub bootloader in the <emphasis role="bold">/mnt/disk</emphasis> directory. It's a very basic script, and perhaps
- use the <emphasis role="bold">restore_bootloader</emphasis> of the Mandriva Linux Rescue should be a better idea.
- </para>
+ Restore and reload the Grub bootloader in the <emphasis role="bold">/mnt/disk</emphasis> directory. It's a very basic script, and perhaps use the <emphasis role="bold">restore_bootloader</emphasis> of the Mageia Rescue should be a better idea.</para>
</sect3>
<sect3>
<title>make_initrd_lilo</title>
<para>
- Restore and reload the lilo bootloader in the <emphasis role="bold">/mnt/disk</emphasis> directory. Again it's a very basic script, perhaps we should use the
- <emphasis role="bold">restore_bootloader</emphasis> of the Mandriva Linux Rescue.
+ Restore and reload the lilo bootloader in the <emphasis role="bold">/mnt/disk</emphasis> directory. Again it's a very basic script, perhaps we should use the <emphasis role="bold">restore_bootloader</emphasis> of the Mageia Rescue.
</para>
</sect3>
<sect3>
<title>prepare_node.sh</title>
<para>
- This script remove in the futur system the old network's udev rules, old dhcp cache files, launch the script <emphasis role="bold">gen_modprobe_conf.pl</emphasis> to
- regenerate an uptodate <emphasis role="bold">/etc/modprobe.conf</emphasis> in the new system, and launch the script to restore the bootloader.
- If you want to do more action on the installed, system, you can modify this script.
+ This script remove in the futur system the old network's udev rules, old dhcp cache files, launch the script <emphasis role="bold">gen_modprobe_conf.pl</emphasis> to regenerate an up to date <emphasis role="bold">/etc/modprobe.conf</emphasis> in the new system, and launch the script to restore the bootloader. If you want to do more action on the installed, system, you can modify this script.
</para>
</sect3>
<sect3>
<title>send_status.pl</title>
<para>
- Very basic perl script to open the port 12345, and paste the content of the <emphasis role="bold">/tmp/ka*</emphasis> file. It also
- permit the execution of commands on node, if user send a message from the golden node with the <emphasis role="bold">exec</emphasis> prefix.
+ Very basic perl script to open the port 12345, and paste the content of the <emphasis role="bold">/tmp/ka*</emphasis> file. It also permit the execution of commands on node, if user send a message from the golden node with the <emphasis role="bold">exec</emphasis> prefix.
</para>
</sect3>
<sect3>
@@ -387,8 +389,7 @@ mount -o loop -t squashfs rescue.sqfs /mnt/ka</screen>
<sect1>
<title>The golden node, KA server</title>
<para>
- Now, it is time to build a description of the node partitions. You can use the script
- <emphasis role="bold">/mnt/ka/ka/fdisk_to_desc</emphasis> as root user, or your favorite text editor,
+ Now, it is time to build a description of the node partitions. You can use the script <emphasis role="bold">/mnt/ka/ka/fdisk_to_desc</emphasis> as root user, or your favorite text editor,
you can write a file like this one:
</para>
<para>
@@ -405,11 +406,10 @@ logical linux fill</screen>
sizes accoding to your system.
</para>
<para>
- Type the following to start the ka replication server as root user:
+ Type the following to start the ka replication server as root user on the golden node:
</para>
<para>
<programlisting><![CDATA[
- <screen>
[root@node40 ka]# ./ka-d.sh -n 1 -p sda /root/desc -X sdb -r "grub --with=jfs --with=ata_piix"
takembr =
desc = sda /root/desc
@@ -437,13 +437,13 @@ Socket 5 on port 30764 on node40.guibland.com ready.
<itemizedlist>
<listitem><para><emphasis role="bold">-r "grub --with=jfs --with=ata_piix"</emphasis>: use grub bootloader and <emphasis role="bold">--with=jfs --with=piix</emphasis> mkinitrd option in the chrooted system after the <emphasis role="bold">KA</emphasis> deploiement</para></listitem>
<listitem><para><emphasis role="bold">-n nb_nodes</emphasis>: specify how many nodes are clients</para></listitem>
- <listitem><para><emphasis role="bold">-p sda/hda desc</emphasis>: specify if you want to duplicate SCSI or IDE storage, and the name of the hdd</para></listitem>
+ <listitem><para><emphasis role="bold">-p sda desc</emphasis>: specify the name of the hdd</para></listitem>
<listitem><para><emphasis role="bold">-x /tmp</emphasis>: exclude <emphasis role="bold">/tmp</emphasis> directory</para></listitem>
<listitem><para><emphasis role="bold">-X sdb</emphasis>: exclude <emphasis role="bold">sdb</emphasis> hdd for the duplication</para></listitem>
</itemizedlist>
</para>
<para>
- Now the node is waiting for the rest of the nodes to start replication.
+ Now the golden node is waiting for clients nodes to start replication.
</para>
</sect1>
<sect1>
@@ -457,8 +457,7 @@ Socket 5 on port 30764 on node40.guibland.com ready.
</para>
<screen>DEFAULT kamethod</screen>
<para>
- So, next time a node boots, the PXE server will force the
- node to boot using the kamethod.
+ So, next time a node boots, the PXE server will force the node to boot using the kamethod entry.
</para>
</sect2>
<sect2>
@@ -480,16 +479,14 @@ Socket 5 on port 30764 on node40.guibland.com ready.
<para>
Once all the nodes have found the <emphasis role="bold">KA</emphasis> server, the first
duplication process will start. This step duplicates the
- <emphasis role="bold">rescue_stage2</emphasis> from the <emphasis role="bold">/mnt/ka</emphasis> directory
- of the golden node, in the client's nodes memory (<emphasis role="bold">/dev/ram3</emphasis>). Then, nodes chroot their
- memories (the <emphasis role="bold">/tmp/stage2</emphasis> directory), and launch the <emphasis role="bold">drvinst</emphasis> command from the rescue disk, to probe all needed their modules (drivers).
- Then, the second step of the duplication starts.
+ <emphasis role="bold">stage2</emphasis> from the <emphasis role="bold">/mnt/ka</emphasis> directory
+ of the golden node, in the client's nodes memory (<emphasis role="bold">/dev/ram3</emphasis> formated as ext2). Then, nodes chroot their memories (the <emphasis role="bold">/tmp/stage2</emphasis> directory), and launch the <emphasis role="bold">drvinst</emphasis> command from the stage2, to probe all needed their modules (drivers). Then, the second step of the duplication starts.
</para>
<para>
The duplication process will clone your drives following
the description you have made (<emphasis role="bold">/tmp/desc</emphasis> of the golden node).
Nodes will rewrite their partition table, then format their filesystems (ReiserFs, XFS,
- ext2/3, JFS). All new partitions will be mounted in the <emphasis role="bold">/mnt/disk</emphasis> directory.
+ ext2/3/4, JFS). All new partitions will be mounted in the <emphasis role="bold">/mnt/disk</emphasis> directory.
Then, the drive duplication process will begin. On a fast Ethernet switch you can reach speeds of 10MBytes/sec.
</para>
</sect2>
@@ -513,335 +510,973 @@ Socket 5 on port 30764 on node40.guibland.com ready.
</sect2>
</sect1>
<sect1>
- <title>full log of a KA duplication</title>
+ <title>Step by step from scratch KA duplication</title>
+ <para>We will use a PIV 3gz box as golden node, with a SATA hard drive, and an Intel 82540EM Gigabit Ethernet Controller card. This golden box will be the: PXE, DHCPD, TFTP server. Client nodes are</para>
+ <para>
+ <itemizedlist>
+ <listitem><para>basic PIV 2.8gz, with a Realtek Semiconductor 8139 network card, and a IDE hard drive disk</para></listitem>
+ <listitem><para>PE2650 dual XEON 2.4gz, SCSI Hard Drive disk, and NetXtreme BCM5701 Gigabit Ethernet cards</para></listitem>
+ </itemizedlist>
+ </para>
+ <para>Both nodes are configured to boot on their network card.</para>
<sect2>
<title>Golden node side</title>
+ <para>
+ Prepapre the golden node, install all needed tools.
+ </para>
<para>
<programlisting><![CDATA[
-[root@node40 ka]# ./ka-d.sh -n 1 -p sda /root/desc -X sdb -r "grub --with=jfs --with=ata_piix"
+[root@localhost ~]# urpmi ka-deploy-source-node
+ http://192.168.1.253/cooker/i586/media/main/release/ka-deploy-source-node-0.94.1-1mdv2010.1.i586.rpm
+installing ka-deploy-source-node-0.94.1-1mdv2010.1.i586.rpm from /var/cache/urpmi/rpms
+Preparing... ###############################################################################
+ 1/1: ka-deploy-source-node ###############################################################################
+
+[root@localhost ~]# rpm -ql ka-deploy-source-node
+/etc/ka
+/etc/ka/replication.conf
+/usr/bin/bootable_flag.sh
+/usr/bin/fdisk_to_desc
+/usr/bin/gen_modprobe_conf.pl
+/usr/bin/ka-d-client
+/usr/bin/ka-d-server
+/usr/bin/ka-d.sh
+/usr/bin/ka_replication.sh
+/usr/bin/make_initrd_grub
+/usr/bin/make_initrd_lilo
+/usr/bin/prepare_node.sh
+/usr/bin/send_status.pl
+/usr/bin/status_node.pl
+/usr/bin/store_log.sh
+/usr/bin/udev_creation.sh
+/usr/share/ka-deploy-0.94.1
+/usr/share/man/man1/ka-d-client.1.lzma
+/usr/share/man/man1/ka-d-server.1.lzma
+/usr/share/man/man1/ka-d.1.lzma
+/usr/share/man/man1/ka-d.sh.1.lzma
+/usr/share/man/man1/ka-deploy.1.lzma
+]]></programlisting>
+ </para>
+ <para>Create the /mnt/ka directory, and put all stuff in it (this directory will be sent to all client nodes and use to finish
+ the duplication process)</para>
+ <para>
+<programlisting><![CDATA[
+[root@localhost ~]# mkdir /mnt/ka
+lftp distrib-coffee.ipsl.jussieu.fr:~> cd pub/linux/Mageia/distrib/cauldron/i586/install/stage2/
+lftp distrib-coffee.ipsl.jussieu.fr:/pub/linux/Mageia/distrib/cauldron/i586/install/stage2> pget rescue.sqfs
+19132416 bytes transferred in 78 seconds (241.1K/s)
+
+[root@localhost ~]# urpmi squashfs-tools
+ http://192.168.1.253/cooker/i586/media/main/release/squashfs-tools-4.0-3.20091221.1mdv2010.1.i586.rpm
+installing squashfs-tools-4.0-3.20091221.1mdv2010.1.i586.rpm from /var/cache/urpmi/rpms
+Preparing... ############################################################################
+ 1/1: squashfs-tools ############################################################################
+
+[root@localhost ~]# unsquashfs rescue.sqfs
+Parallel unsquashfs: Using 2 processors
+988 inodes (1222 blocks) to write
+[============================================================================================-] 1222/1222 100%
+created 550 files
+created 93 directories
+created 60 symlinks
+created 371 devices
+created 1 fifos
+
+[root@localhost ~]# cd squashfs-root/
+[root@localhost squashfs-root]# ls
+bin/ dev/ etc/ ka/ lib/ modules/ proc/ sbin/ tmp/ usr/ var/
+[root@localhost squashfs-root]# mv * /mnt/ka/
+]]></programlisting>
+ </para>
+ <para>Install all needed packages to be able to be a PXE, DHCPD and TFTP server</para>
+ <para>
+<programlisting><![CDATA[
+[root@localhost ka]# ka-d.sh -h
+/usr/bin/ka-d.sh : clone this machine
+Usage:
+ -h, --help : display this message
+ -n num : specify the number of (destination) nodes
+ -x 'dir|dir2' : exclude directory
+ -X 'sdb|sdc' : exclude sdb for the replication
+ -m drive : copy the master boot record (for windows) of this drive
+ -M drive file : use 'file' as master boot record (must be 446 bytes long) for the specified drive
+ -D partition : also copy partition 'partition'
+ -p drive pdesc : use 'pdesc' file as partition scheme (see doc) for the specified drive
+ -d delay : delay beteween the release of 2 clients (1/10 second)
+ -r 'grub|lilo' : choose the bootloader (you can add mkinitrd options)
+
+ ie: ka-d.sh -n 3 -p sda /tmp/desc -X sdb -r 'grub --with=ata_piix --with=piix'
+
+[root@localhost ka]# urpmi ka-deploy-server
+To satisfy dependencies, the following packages are going to be installed:
+ Package Version Release Arch
+(medium "Main")
+ bind-utils 9.7.0 4mdv2010.1 i586
+ clusterscripts-common 3.5 1mdv2010.1 noarch
+ clusterscripts-server-conf 3.5 1mdv2010.1 noarch
+ clusterscripts-server-pxe 3.5 1mdv2010.1 noarch
+ dhcp-server 4.1.1 5mdv2010.1 i586
+ ka-deploy-server 0.94.1 1mdv2010.1 i586
+ perl-Crypt-PasswdMD5 1.300.0 1mdv2010.1 noarch
+ pxe 1.4.2 19mdv2010.1 i586
+ pxelinux 3.83 1mdv2010.1 i586
+ syslinux 3.83 1mdv2010.1 i586
+ tftp-server 5.0 4mdv2010.1 i586
+ xinetd 2.3.14 11mdv2010.1 i586
+12MB of additional disk space will be used.
+2.5MB of packages will be retrieved.
+Proceed with the installation of the 12 packages? (Y/n)
+]]></programlisting>
+ </para>
+ <para>Configure all services</para>
+ <para>
+<programlisting><![CDATA[
+[root@localhost ~]# hostname
+node42.guibland.com
+[root@localhost ~]# domainname
+guibland.com
+
+[root@localhost ~]# ip addr show eth0
+2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 100
+ link/ether 00:17:31:19:a0:78 brd ff:ff:ff:ff:ff:ff
+ inet 10.0.1.42/24 brd 10.0.1.255 scope global eth0
+ inet6 fe80::217:31ff:fe19:a078/64 scope link
+ valid_lft forever preferred_lft forever
+
+[root@localhost ~]# vi /etc/pxe.conf
+# which interface to use
+interface=eth0
+default_address=10.0.1.42
+
+# the multicast ip address to listen on
+multicast_address=224.0.1.2
+
+# mtftp info
+mtftp_address=10.0.1.42
+mtftp_client_port=1758
+mtftp_server_port=1759
+
+# the port to listen on
+listen_port=4011
+
+# enable multicast?
+use_multicast=1
+
+# enable broadcast?
+use_broadcast=0
+
+# user prompt
+prompt=Press F8 to view menu ...
+prompt_timeout=2
+
+# what services to provide, priority in ordering
+# CSA = Client System Architecture
+# service=<CSA>,<min layer>,<max layer>,<basename>,<menu entry>
+service=X86PC,0,2,linux,Mageia x86
+service=IA64PC,0,2,linux,Mageia IA64
+service=X86PC,0,0,local,Local boot
+
+# tftpd base dir
+tftpdbase=/
+
+# domain name
+domain=guibland.com
+
+[root@localhost ~]# vi /etc/xinetd.d/tftp
+service tftp
+{
+ disable = no
+ socket_type = dgram
+ protocol = udp
+ wait = yes
+ user = root
+ server = /usr/sbin/in.tftpd
+ server_args = -s /var/lib/tftpboot
+ per_source = 11
+ cps = 100 2
+ flags = IPv4
+}
+
+
+[root@localhost ~]# cp /etc/dhcpd.conf.pxe.single /etc/dhcpd.conf
+cp: overwrite `/etc/dhcpd.conf'? y
+
+[root@localhost ~]# cat /etc/resolv.conf
+nameserver 10.0.1.253
+search guibland.com
+
+[root@localhost ~]# cat /etc/dhcpd.conf
+# for explanation in french go to : http://www.delafond.org/traducmanfr/man/man5/dhcpd.conf.5.html
+ddns-update-style none;
+allow booting;
+allow bootp;
+
+# Your dhcp server is not master on your network !
+#not authoritative;
+# Your dhcpd server is master on your network !
+#authoritative;
+authoritative;
+
+#Interface where dhcpd is active
+#DHCPD_INTERFACE = "eth0";
+
+# Definition of PXE-specific options
+# Code 1: Multicast IP address of bootfile
+# Code 2: UDP port that client should monitor for MTFTP responses
+# Code 3: UDP port that MTFTP servers are using to listen for MTFTP requests
+# Code 4: Number of secondes a client must listen for activity before trying
+# to start a new MTFTP transfer
+# Code 5: Number of secondes a client must listen before trying to restart
+# a MTFTP transfer
+
+# define Option for the PXE class
+option space PXE;
+option PXE.mtftp-ip code 1 = ip-address;
+option PXE.mtftp-cport code 2 = unsigned integer 16;
+option PXE.mtftp-sport code 3 = unsigned integer 16;
+option PXE.mtftp-tmout code 4 = unsigned integer 8;
+option PXE.mtftp-delay code 5 = unsigned integer 8;
+option PXE.discovery-control code 6 = unsigned integer 8;
+option PXE.discovery-mcast-addr code 7 = ip-address;
+
+#Define options for pxelinux
+option space pxelinux;
+option pxelinux.magic code 208 = string;
+option pxelinux.configfile code 209 = text;
+option pxelinux.pathprefix code 210 = text;
+option pxelinux.reboottime code 211 = unsigned integer 32;
+site-option-space "pxelinux";
+# These lines should be customized to your setup
+#option pxelinux.configfile "configs/common";
+#option pxelinux.pathprefix "/pxelinux/files/";
+#filename "/pxelinux/pxelinux.bin";
+
+option pxelinux.magic f1:00:74:7e;
+option pxelinux.reboottime 30;
+#if exists dhcp-parameter-request-list {
+# Always send the PXELINUX options
+# append dhcp-parameter-request-list 208, 209, 210, 211;
+# append dhcp-parameter-request-list 208,211;
+# }
+
+#Class that determine the options for Etherboot 5.x requests
+class "Etherboot" {
+
+#if The vendor-class-identifier equal Etherboot-5.0
+match if substring (option vendor-class-identifier, 0, 13) = "Etherboot-5.0";
+
+# filename define the file retrieve by the client, there nbgrub
+# our tftp is chrooted so is just the path to the file
+filename "/etherboot/nbgrub";
+
+#Used by etherboot to detect a valid pxe dhcp server
+option vendor-encapsulated-options 3c:09:45:74:68:65:72:62:6f:6f:74:ff;
+
+# Set the "vendor-class-identifier" field to "PXEClient" in dhcp answer
+# if this field is not set the pxe client will ignore the answer !
+option vendor-class-identifier "Etherboot-5.0";
+
+vendor-option-space PXE;
+option PXE.mtftp-ip 0.0.0.0;
+
+# IP of you TFTP server
+next-server 10.0.1.42;
+}
+
+
+# create the Class PXE
+class "PXE" {
+# if the "vendor-class-identifier" is set to "PXEClient" in the client dhcp request
+match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
+
+# filename define the file retrieve by the client, there pxelinux.0
+# our tftp is chrooted so is just the path to the file
+# If you prefer use grub, use pxegrub compiled for your ethernet card.
+#filename "/PXEClient/pxegrub";
+filename "/X86PC/linux/linux.0";
+
+# Set the "vendor-class-identifier" field to "PXEClient" in dhcp answer
+# if this field is not set the pxe client will ignore the answer !
+option vendor-class-identifier "PXEClient";
+
+
+vendor-option-space PXE;
+option PXE.mtftp-ip 0.0.0.0;
+
+# IP of you TFTP server
+next-server 10.0.1.42;
+}
+
+# Tags uses by dhcpnode and setup_add_nodes_to_dhcp
+# TAG: NODE_LIST_ADMIN_BEGIN
+
+# TAG: NODE_LIST_ADMIN_END
+
+# TAG: MY_ADMIN_BEGIN
+subnet 10.0.1.0 netmask 255.255.255.0 {
+ option subnet-mask 255.255.255.0;
+ option routers 10.0.1.253;
+ default-lease-time 288000;
+ max-lease-time 864000;
+ option domain-name "guibland.com";
+ option domain-name-servers 10.0.1.253;
+ next-server 10.0.1.42;
+
+ pool {
+ range 10.0.1.110 10.0.1.120;
+ }
+}
+
+# TAG: MY_ADMIN_END
+
+
+[root@localhost ~]# service xinetd restart
+Stopping xinetd [FAILED]
+Starting xinetd [ OK ]
+[root@localhost ~]# service pxe restart
+Stopping PXE server [FAILED]
+Dhcp server is not running on this machine !
+Be sure that a valid PXE Dhcp server is running on your network
+Starting PXE server [ OK ]
+[root@localhost ~]# service dhcpd restart
+Shutting down dhcpd: [ OK ]
+Starting dhcpd: [ OK ]
+]]></programlisting>
+ </para>
+ <para>KA listen only listen on eth0, and need a FQDN. So if it is not the case, ka-d-server will try to open
+ a port on 0.0.0.0 IP address, wich cause an error. You can fix it easely setting an valid hostname in /etc/hosts file.
+ Don't forget to kill ka-d-server with crtl+C key, after testing it will open a port on a valid IP address.</para>
+ <para>
+<programlisting><![CDATA[
+[root@node42 ~]# ka-d-server
+Compiled : May 4 2010 20:33:07
+ARGS=+ka-d-server+
+Server IP = 0.0.0.0
+command = (cd /; tar --create --one-file-system --sparse /)
+I want 1 clients
+ka-d-server: server.c:1987: main: Assertion `socket_server >=0' failed.
+Aborted
+
+
+[root@node42 ~]# cat /etc/hosts
+127.0.0.1 localhost.localdomain localhost
+10.0.1.42 node42.guibland.com
+
+[root@node42 ~]# ka-d-server
+Compiled : May 4 2010 20:33:07
+ARGS=+ka-d-server+
+Server IP = 10.0.1.42
+command = (cd /; tar --create --one-file-system --sparse /)
+I want 1 clients
+Socket 3 on port 30765 on node42.guibland.com ready.
+Socket 4 on port 30764 on node42.guibland.com ready.
+[root@node42 ~]# ^C
+]]></programlisting>
+ </para>
+ <para>We need to describe the partition table of our golden node, to send it to client nodes.</para>
+ <para>
+<programlisting><![CDATA[
+[root@node42 ~]# fdisk -l
+
+Disk /dev/sda: 80.0 GB, 80026361856 bytes
+255 heads, 63 sectors/track, 9729 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0xd9b576f2
+
+ Device Boot Start End Blocks Id System
+/dev/sda1 * 1 1019 8185086 82 Linux swap / Solaris
+/dev/sda2 1020 4843 30716280 83 Linux
+/dev/sda3 4844 9729 39246795 5 Extended
+/dev/sda5 4844 9729 39246763+ 83 Linux
+
+
+[root@node42 ~]# fdisk_to_desc
+ -devices: sda1 -size en Mo: 7993 -filesystem: Linux
+Use of uninitialized value $e in concatenation (.) or string at /usr/bin/fdisk_to_desc line 50.
+ -devices: sda2 -size en Mo: 29996 -filesystem: Linux
+Use of uninitialized value $e in concatenation (.) or string at /usr/bin/fdisk_to_desc line 55.
+ -devices: sda3 -size en Mo: 38326 -filesystem: Extended
+ -devices: sda5 -size en Mo: 38326 -filesystem: Linux
+Desc file is /tmp/desc
+[root@node42 ~]# cat /tmp/d
+ddebug.log desc
+[root@node42 ~]# cat /tmp/desc
+swap 7993
+linux 29996
+extended 38326
+logical linux 38326
+
+[root@node42 ~]# cat /tmp/desc
+swap 7993
+linux 29996
+extended fill
+logical linux fill
+]]></programlisting>
+ </para>
+ <para>Set default PXE boot to kamethod</para>
+ <para>
+<programlisting><![CDATA[
+[root@node42 ~]# cat /var/lib/tftpboot/X86PC/linux/pxelinux.cfg/default
+PROMPT 1
+DEFAULT kamethod
+DISPLAY messages
+TIMEOUT 50
+
+label local
+ LOCALBOOT 0
+
+label kamethod
+ KERNEL images/vmlinuz
+ APPEND initrd=images/all.rdz ramdisk_size=64000 vga=788 automatic=method:ka,interface:eth0,network:dhcp root=/dev/ram3 rw kamethod
+
+
+[root@node42 ~]# cd /var/lib/tftpboot/X86PC/linux/
+[root@node42 linux]# ls
+help.txt linux.0 memdisk messages pxelinux.cfg/
+[root@node42 linux]# mkdir images
+
+lftp distrib-coffee.ipsl.jussieu.fr:/pub/linux/Mageia/distrib/cauldron/i586/isolinux/alt0> ls
+-rw-r--r-- 1 ftp ftp 15613654 Apr 23 17:26 all.rdz
+-rw-r--r-- 1 ftp ftp 2279584 Apr 23 17:26 vmlinuz
+lftp distrib-coffee.ipsl.jussieu.fr:/pub/linux/Mageia/distrib/cauldron/i586/isolinux/alt0> mget *
+17893238 bytes transferred in 77 seconds (227.9K/s)
+Total 2 files transferred
+lftp distrib-coffee.ipsl.jussieu.fr:/pub/linux/Mageia/distrib/cauldron/i586/isolinux/alt0>
+
+[root@node42 images]# pwd
+/var/lib/tftpboot/X86PC/linux/images
+[root@node42 images]# ls
+all.rdz vmlinuz
+]]></programlisting>
+ </para>
+ <para>Now it's time to launch the duplication process</para>
+ <para>
+<programlisting><![CDATA[
+[root@node42 ka]# ka-d.sh -n 2 -p sda /tmp/desc -r grub
takembr =
-desc = sda /root/desc
+desc = sda /tmp/desc
+`/etc/fstab' -> `/tmp/ka-d3156/pfstab.tmp'
+ Mount points :
- /dev/sda5 / ext3
- /dev/sda1 swap swap
+ /dev/sda2 / ext3 relatime 1 1
+ /dev/sda5 /home ext4 relatime 1 2
+ /dev/sda1 swap swap defaults 0 0
+ Hard drives :
sda
+ Reading partition table description for sda
Added partition 1 : type 82
+ Added partition 2 : type 83
Added partition 5 : type 83
-+ Included mount points : /
-+ Bootloader is: grub --with=jfs --with=ata_piix
++ Included mount points : / /home
++ Bootloader is: grub
+++ Sending Stage2 +++
-Compiled : Aug 23 2007 12:58:29
-ARGS=+ka-d-server+-s+getstage2+-n+1+-e+(cd /mnt/ka; tar --create --one-file-system --sparse . )+
-Server IP = 10.0.1.40
+Compiled : May 4 2010 20:33:07
+ARGS=+ka-d-server+-s+getstage2+-n+2+-e+(cd /mnt/ka; tar --create --one-file-system --sparse . )+
+Server IP = 10.0.1.42
command = (cd /mnt/ka; tar --create --one-file-system --sparse . )
-I want 1 clients
-Socket 4 on port 30765 on node40.guibland.com ready.
-Socket 5 on port 30764 on node40.guibland.com ready.
-got UDP packet from 10.0.1.35
+I want 2 clients
+Socket 4 on port 30765 on node42.guibland.com ready.
+Socket 5 on port 30764 on node42.guibland.com ready.
+got UDP packet from 10.0.1.111
Session name matches
-Sending UDP reply to 10.0.1.35
-Accepting connection from 10.0.1.35
+Sending UDP reply to 10.0.1.111
+Accepting connection from 10.0.1.111
Clients : want_data 0 / connected 0
client says hello !
Client sends options
Client accepts data
-Added client 10.0.1.35, daddy = 10.0.1.40
-Accepting connection from 10.0.1.35
-checking connection auth10.0.1.40 reports 10.0.1.35 has opened data connection
-Client 10.0.1.35 reports data position : 0
-10.0.1.40 reports 10.0.1.35 has been accepted
+got UDP packet from 10.0.1.110
+Session name matches
+Sending UDP reply to 10.0.1.110
+Accepting connection from 10.0.1.110
+Clients : want_data 1 / connected 0
+client says hello !
+Client sends options
+Client accepts data
+Added client 10.0.1.110, daddy = 10.0.1.42
+Added client 10.0.1.111, daddy = 10.0.1.110
+Accepting connection from 10.0.1.110
+checking connection auth10.0.1.42 reports 10.0.1.110 has opened data connection
+Client 10.0.1.110 reports data position : 0
+10.0.1.42 reports 10.0.1.110 has been accepted
Welcome son, you are number 1 (MAX 4)
+Client got client
+10.0.1.110 reports 10.0.1.111 has opened data connection
+Client 10.0.1.111 reports data position : 0
+sending auth for 10.0.1.111 to 10.0.1.110
+Client got client
+10.0.1.110 reports 10.0.1.111 has been accepted
Let's go!
-Total data read = 45 Megs, BUF: 0M FREE = 34M startpos = 10M
+Total data read = 43 Megs, BUF: 34M FREE = 0M startpos = 8MM
End of data flow
Dropping children
-Dropping child 10.0.1.35
+Dropping child 10.0.1.110
All children dropped
Client says dad disconnected
Client says he has finished
Client has finished transfer
+Busy clients: 1 -- connected : 2
+Client says dad disconnected
+Client says he has finished
+Client has finished transfer
+Busy clients: 0 -- connected : 2
+Peer closed connection on socket 7
+close_connection(7)
Busy clients: 0 -- connected : 1
Peer closed connection on socket 6
close_connection(6)
Busy clients: 0 -- connected : 0
All clients left, I quit
-Total data sent = 48 Megs, in 2172 packets
-Transfer time = 6.125 seconds, throughput = 7.881 Mbytes/second
-The pipeline was emptied in 0.026 seconds
+Total data sent = 44 Megs, in 1543 packets
+Transfer time = 0.858 seconds, throughput = 51.307 Mbytes/second
+The pipeline was emptied in 3.250 seconds
- Sending partition/filesystem/mount points informations...
+++ Running ka-deploy +++
-Compiled : Aug 23 2007 12:58:29
-ARGS=+ka-d-server+-s+kainstall1+-n+1+-e+(cd /tmp/ka-d6083 && tar c *)+
-Server IP = 10.0.1.40
-command = (cd /tmp/ka-d6083 && tar c *)
-I want 1 clients
-Socket 4 on port 30765 on node40.guibland.com ready.
-Socket 5 on port 30764 on node40.guibland.com ready.
-got UDP packet from 10.0.1.35
+Compiled : May 4 2010 20:33:07
+ARGS=+ka-d-server+-s+kainstall1+-n+2+-e+(cd /tmp/ka-d3156 && tar c *)+
+Server IP = 10.0.1.42
+command = (cd /tmp/ka-d3156 && tar c *)
+I want 2 clients
+Socket 4 on port 30765 on node42.guibland.com ready.
+Socket 5 on port 30764 on node42.guibland.com ready.
+got UDP packet from 10.0.1.110
Session name matches
-Sending UDP reply to 10.0.1.35
-Accepting connection from 10.0.1.35
+Sending UDP reply to 10.0.1.110
+Accepting connection from 10.0.1.110
Clients : want_data 0 / connected 0
client says hello !
Client sends options
Client accepts data
-Added client 10.0.1.35, daddy = 10.0.1.40
-Accepting connection from 10.0.1.35
-checking connection auth10.0.1.40 reports 10.0.1.35 has opened data connection
-Client 10.0.1.35 reports data position : 0
-10.0.1.40 reports 10.0.1.35 has been accepted
+got UDP packet from 10.0.1.111
+Session name matches
+Sending UDP reply to 10.0.1.111
+Accepting connection from 10.0.1.111
+Clients : want_data 1 / connected 0
+client says hello !
+Client sends options
+Client accepts data
+Added client 10.0.1.110, daddy = 10.0.1.42
+Added client 10.0.1.111, daddy = 10.0.1.110
+Accepting connection from 10.0.1.110
+checking connection auth10.0.1.42 reports 10.0.1.110 has opened data connection
+Client 10.0.1.110 reports data position : 0
+10.0.1.42 reports 10.0.1.110 has been accepted
Welcome son, you are number 1 (MAX 4)
+Client got client
+10.0.1.110 reports 10.0.1.111 has opened data connection
+Client 10.0.1.111 reports data position : 0
+sending auth for 10.0.1.111 to 10.0.1.110
+Client got client
+10.0.1.110 reports 10.0.1.111 has been accepted
Let's go!
Total data read = 0 Megs, BUF: 0M FREE = 34M startpos = 0M
End of data flow
Dropping children
-Dropping child 10.0.1.35
+Dropping child 10.0.1.110
All children dropped
Client says dad disconnected
Client says he has finished
Client has finished transfer
-Busy clients: 0 -- connected : 1
+Busy clients: 1 -- connected : 2
+Client says dad disconnected
+Client says he has finished
+Client has finished transfer
+Busy clients: 0 -- connected : 2
Peer closed connection on socket 6
close_connection(6)
+Busy clients: 0 -- connected : 1
+Peer closed connection on socket 7
+close_connection(7)
Busy clients: 0 -- connected : 0
All clients left, I quit
Total data sent = 0 Megs, in 1 packets
-Transfer time = 0.016 seconds, throughput = 0.628 Mbytes/second
-The pipeline was emptied in 0.027 seconds
+Transfer time = 0.006 seconds, throughput = 1.698 Mbytes/second
+The pipeline was emptied in 0.038 seconds
WAITING node (partition/format)
- Sending Linux filesystem...
+++ Running ka-deploy +++
-Compiled : Aug 23 2007 12:58:29
-ARGS=+ka-d-server+-s+kainstall2+-n+1+-e+(cd /; tar --create --one-file-system --sparse /)+
-Server IP = 10.0.1.40
-command = (cd /; tar --create --one-file-system --sparse /)
-I want 1 clients
-Socket 4 on port 30765 on node40.guibland.com ready.
-Socket 5 on port 30764 on node40.guibland.com ready.
-got UDP packet from 10.0.1.35
+Compiled : May 4 2010 20:33:07
+ARGS=+ka-d-server+-s+kainstall2+-n+2+-e+(cd /; tar --create --one-file-system --sparse / /home)+
+Server IP = 10.0.1.42
+command = (cd /; tar --create --one-file-system --sparse / /home)
+I want 2 clients
+Socket 4 on port 30765 on node42.guibland.com ready.
+Socket 5 on port 30764 on node42.guibland.com ready.
+got UDP packet from 10.0.1.110
Session name matches
-Sending UDP reply to 10.0.1.35
-Accepting connection from 10.0.1.35
+Sending UDP reply to 10.0.1.110
+Accepting connection from 10.0.1.110
Clients : want_data 0 / connected 0
client says hello !
Client sends options
Client accepts data
-Added client 10.0.1.35, daddy = 10.0.1.40
-Accepting connection from 10.0.1.35
-checking connection auth10.0.1.40 reports 10.0.1.35 has opened data connection
-Client 10.0.1.35 reports data position : 0
-10.0.1.40 reports 10.0.1.35 has been accepted
+got UDP packet from 10.0.1.111
+Session name matches
+Sending UDP reply to 10.0.1.111
+Accepting connection from 10.0.1.111
+Clients : want_data 1 / connected 0
+client says hello !
+Client sends options
+Client accepts data
+Added client 10.0.1.110, daddy = 10.0.1.42
+Added client 10.0.1.111, daddy = 10.0.1.110
+Accepting connection from 10.0.1.110
+checking connection auth10.0.1.42 reports 10.0.1.110 has opened data connection
+Client got client
+10.0.1.110 reports 10.0.1.111 has opened data connection
+Client 10.0.1.110 reports data position : 0
+10.0.1.42 reports 10.0.1.110 has been accepted
Welcome son, you are number 1 (MAX 4)
+Client 10.0.1.111 reports data position : 0
+sending auth for 10.0.1.111 to 10.0.1.110
+Client got client
+10.0.1.110 reports 10.0.1.111 has been accepted
Let's go!
-Total data read = 621 Megs, BUF: 24M FREE = 10M startpos = 586M
+Total data read = 789 Megs, BUF: 34M FREE = 0M startpos = 754M
End of data flow
Dropping children
-Dropping child 10.0.1.35
+Dropping child 10.0.1.110
All children dropped
Client says dad disconnected
Client says he has finished
Client has finished transfer
+Busy clients: 1 -- connected : 2
+Client says dad disconnected
+Client says he has finished
+Client has finished transfer
+Busy clients: 0 -- connected : 2
+Peer closed connection on socket 7
+close_connection(7)
Busy clients: 0 -- connected : 1
Peer closed connection on socket 6
close_connection(6)
Busy clients: 0 -- connected : 0
All clients left, I quit
-Total data sent = 627 Megs, in 34011 packets
-Transfer time = 127.140 seconds, throughput = 4.937 Mbytes/second
-The pipeline was emptied in 1.549 seconds
+Total data sent = 792 Megs, in 25445 packets
+Transfer time = 69.904 seconds, throughput = 11.343 Mbytes/second
+The pipeline was emptied in 4.002 seconds
]]></programlisting>
</para>
</sect2>
<sect2>
<title>KA client side</title>
<para>
- Just launch <emphasis role="bold">/mnt/ka/ka/status_node.pl IPADD</emphasis> to get log of the KA client.
+ To get the log of the client node, launch <emphasis role="bold">/mnt/ka/ka/status_node.pl IPADD</emphasis> on the golden node.
</para>
<programlisting><![CDATA[
-10.0.1.35> ------| Ka |---- Install starting...
-10.0.1.35> Current session is -s kainstall1
-10.0.1.35> Receiving partitions information...OK
-10.0.1.35> Cleaning hard drive...
-10.0.1.35> ==> /tmp/kacmd <==
-10.0.1.35> Starting log server..
-10.0.1.35>
-10.0.1.35> ==> /tmp/ka_log-10.0.1.35-20071024-10h32 <==
-10.0.1.35> OK
-10.0.1.35> Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
-10.0.1.35> Building a new DOS disklabel with disk identifier 0x59be1427.
-10.0.1.35> Changes will remain in memory only, until you decide to write them.
-10.0.1.35> After that, of course, the previous content won't be recoverable.
-10.0.1.35>
-10.0.1.35>
-10.0.1.35> The number of cylinders for this disk is set to 1116.
-10.0.1.35> There is nothing wrong with that, but this is larger than 1024,
-10.0.1.35> and could in certain setups cause problems with:
-10.0.1.35> 1) software that runs at boot time (e.g., old versions of LILO)
-10.0.1.35> 2) booting and partitioning software from other OSs
-10.0.1.35> (e.g., DOS FDISK, OS/2 FDISK)
-10.0.1.35> Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
-10.0.1.35>
-10.0.1.35> Command (m for help): The partition table has been altered!
-10.0.1.35>
-10.0.1.35> Calling ioctl() to re-read partition table.
-10.0.1.35> Syncing disks.
-10.0.1.35> Writing partition table for sda using fdisk...OK
-10.0.1.35> Formatting /dev/sda5 as ext3...OK
-10.0.1.35> Formatting /dev/sda1 as swap...OK
-10.0.1.35> - Mounting /dev/sda5 as /mnt/disk/ ......OK
-10.0.1.35> ++++++++++++++++++++++++++
-10.0.1.35> rootfs on / type rootfs (rw)
-10.0.1.35> /proc on /proc type proc (rw)
-10.0.1.35> none on /sys type sysfs (rw)
-10.0.1.35> none on /proc/bus/usb type usbfs (rw)
-10.0.1.35> /dev/ram3 on /tmp/stage2 type ext2 (rw)
-10.0.1.35> /dev/sda5 on /mnt/disk type ext3 (rw,data=ordered)
-10.0.1.35> ++++++++++++++++++++++++++
-10.0.1.35> Linux copy is about to start
-10.0.1.35> Server IP is 10.0.1.40
-10.0.1.35> Buffers names :pipe
-Total data received = 620 Megs (11.222 Mbytes/sec); BUF :0M End of data flow
-10.0.1.35> Flushing buffers
-10.0.1.35> Total data received = 627 Megs, in 434960 packets
-10.0.1.35> Elapsed time = 128.482 seconds, throughput = 4.886 Mbytes/second
-10.0.1.35> Syncing disks...OK
-10.0.1.35> Linux copy done.
-10.0.1.35> Creating excluded directories
-10.0.1.35> - bootloader is grub --with=jfs --with=ata_piix (user choice and options)
-10.0.1.35> - Removing duplicated dhcp cache
-10.0.1.35> - Writing modprobe.conf
-10.0.1.35> ********************
-10.0.1.35> install scsi_hostadapter /sbin/modprobe aic7xxx; /sbin/modprobe ata_piix; /bin/true
-10.0.1.35> alias eth0 eepro100
-10.0.1.35> alias eth1 eepro100
-10.0.1.35> ********************
-10.0.1.35> - Remove ude network rules
-10.0.1.35> removed `/mnt/disk/etc/udev/rules.d/61-net_config.rules'
-10.0.1.35> - Running mkinitrd
-10.0.1.35> Looking for default grub menu
-10.0.1.35> - erase old initrd.img link
-10.0.1.35> removed `/mnt/disk/boot/initrd.img'
-10.0.1.35> initrd will be : /boot/initrd-2.6.22.9-desktop-1mdv.img
-10.0.1.35> running: chroot /mnt/disk /sbin/mkinitrd -v -f --with=jfs /boot/initrd-2.6.22.9-desktop-1mdv.img 2.6.22.9-desktop-1mdv
-10.0.1.35> Looking for deps of module aic7xxx
- 10.0.1.35> scsi_transport_spi scsi_mod
-10.0.1.35> Looking for deps of module scsi_transport_spi
- 10.0.1.35> scsi_mod
-10.0.1.35> Looking for deps of module scsi_mod
-10.0.1.35> skip dups
-10.0.1.35> Looking for deps of module sd_mod
- 10.0.1.35> scsi_mod
-10.0.1.35> Looking for deps of module scsi_wait_scan
- 10.0.1.35> scsi_mod
-10.0.1.35> Looking for deps of module ext3
- 10.0.1.35> jbd
-10.0.1.35> Looking for deps of module jbd
-10.0.1.35> Looking for deps of module jfs
-10.0.1.35> Using modules: /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_mod.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_transport_spi.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/aic7xxx/aic7xxx.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/sd_mod.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_wait_scan.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/jbd/jbd.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/ext3/ext3.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/jfs/jfs.ko
-10.0.1.35> Using /tmp as temporary directory.
-10.0.1.35> /sbin/nash -> /tmp/initrd.tG1408/bin/nash
- 10.0.1.35> /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_mod.ko.gz: 60.6%
- 10.0.1.35> /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_transport_spi.ko.gz: 63.1%
- 10.0.1.35> /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/aic7xxx/aic7xxx.ko.gz: 61.4%
- 10.0.1.35> /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/sd_mod.ko.gz: 60.2%
- 10.0.1.35> /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_wait_scan.ko.gz: 77.3%
- 10.0.1.35> /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/jbd/jbd.ko.gz: 60.5%
- 10.0.1.35> /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/ext3/ext3.ko.gz: 53.9%
- 10.0.1.35> /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/jfs/jfs.ko.gz: 51.4%
-10.0.1.35> Loading module scsi_mod.ko
-10.0.1.35> Loading module scsi_transport_spi.ko
-10.0.1.35> Loading module aic7xxx.ko
-10.0.1.35> Loading module sd_mod.ko
-10.0.1.35> Loading module scsi_wait_scan.ko
-10.0.1.35> Loading module jbd.ko
-10.0.1.35> Loading module ext3.ko
-10.0.1.35> Loading module jfs.ko
-10.0.1.35> /usr/sbin/resume -> /tmp/initrd.tG1408/bin
-10.0.1.35> Contents of RCFILE:
-10.0.1.35> #!/bin/nash
-10.0.1.35>
-10.0.1.35> echo "Loading scsi_mod.ko module"
-10.0.1.35> insmod /lib/scsi_mod.ko
-10.0.1.35> echo "Loading scsi_transport_spi.ko module"
-10.0.1.35> insmod /lib/scsi_transport_spi.ko
-10.0.1.35> echo "Loading aic7xxx.ko module"
-10.0.1.35> insmod /lib/aic7xxx.ko
-10.0.1.35> echo "Loading sd_mod.ko module"
-10.0.1.35> insmod /lib/sd_mod.ko
-10.0.1.35> echo "Loading scsi_wait_scan.ko module"
-10.0.1.35> insmod /lib/scsi_wait_scan.ko
-10.0.1.35> echo "Loading jbd.ko module"
-10.0.1.35> insmod /lib/jbd.ko
-10.0.1.35> echo "Loading ext3.ko module"
-10.0.1.35> insmod /lib/ext3.ko
-10.0.1.35> echo "Loading jfs.ko module"
-10.0.1.35> insmod /lib/jfs.ko
-10.0.1.35> echo Mounting /proc filesystem
-10.0.1.35> mount -t proc /proc /proc
-10.0.1.35> echo Mounting sysfs
-10.0.1.35> mount -t sysfs none /sys
-10.0.1.35> echo Creating device files
-10.0.1.35> mountdev size=32M,mode=0755
-10.0.1.35> mkdevices /dev
-10.0.1.35> echo Creating root device
-10.0.1.35> mkrootdev /dev/root
-10.0.1.35> resume
-10.0.1.35> echo 1 > /sys/power/suspend2/do_resume
-10.0.1.35> echo 1 > /sys/power/tuxonice/do_resume
-10.0.1.35> echo Mounting root filesystem /dev/root with flags relatime
-10.0.1.35> mount -o relatime --ro -t ext3 /dev/root /sysroot
-10.0.1.35> echo Switching to new root
-10.0.1.35> switchroot --movedev /sysroot
-10.0.1.35> echo Initrd finished
-10.0.1.35> First drive will be: /dev/sda
-10.0.1.35> Installation finished. No error reported.
-10.0.1.35> This is the contents of the device map /boot/grub/device.map.
-10.0.1.35> Check if this is correct or not. If any of the lines is incorrect,
-10.0.1.35> fix it and re-run the script `grub-install'.
-10.0.1.35>
-10.0.1.35> (hd0) /dev/sda
-10.0.1.35> (hd1) /dev/sdb
-10.0.1.35> umount: /mnt/disk/dev: not mounted
-10.0.1.35> Umounting /dev/sda5...OK
-10.0.1.35> AUTH not understood
-10.0.1.35> Local directory now /tmp
-exec lsmod
-10.0.1.35> <console>
-10.0.1.35> <console>
-10.0.1.35> <console> exec lsmod
-10.0.1.35> Module Size Used by
-10.0.1.35> aic7xxx 167992 0
-10.0.1.35> scsi_transport_spi 22432 1 aic7xxx
-10.0.1.35> ata_piix 12228 0
-10.0.1.35> libata 109424 1 ata_piix
-10.0.1.35> sr_mod 15044 0
-10.0.1.35> sd_mod 25888 0
-10.0.1.35> scsi_mod 124908 5 aic7xxx,scsi_transport_spi,libata,sr_mod,sd_mod
-10.0.1.35> loop 14212 0
-10.0.1.35> jfs 176708 0
-10.0.1.35> xfs 528088 0
-10.0.1.35> reiserfs 247908 0
-10.0.1.35> ext3 118824 0
-10.0.1.35> jbd 50184 1 ext3
-10.0.1.35> vfat 10816 0
-10.0.1.35> nls_iso8859_1 4672 0
-10.0.1.35> nls_cp437 6304 0
-10.0.1.35> fat 45980 1 vfat
-10.0.1.35> isofs 31452 0
-10.0.1.35> piix 9060 0 [permanent]
-10.0.1.35> ide_cd 35488 0
-10.0.1.35> ide_disk 14496 0
-10.0.1.35> ide_core 99396 3 piix,ide_cd,ide_disk
-10.0.1.35> af_packet 17960 0
-10.0.1.35> eepro100 28432 0
-10.0.1.35> mii 5376 1 eepro100
-10.0.1.35> usbkbd 6304 0
-10.0.1.35> uhci_hcd 22736 0
-10.0.1.35> usbcore 113928 3 usbkbd,uhci_hcd
+[root@node42 ka]# status_node.pl 10.0.1.111
+
+ Get the status of the Ka duplication process
+ If you want to execute a command on node, just use the 'exec' prefix
+10.0.1.111> ------| Ka |---- Install starting...
+10.0.1.111> Current session is -s kainstall1
+10.0.1.111> Receiving partitions information...OK
+10.0.1.111> Cleaning hard drive...
+10.0.1.111> ==> /tmp/kacmd <==
+10.0.1.111> Starting log server..
+10.0.1.111>
+10.0.1.111> ==> /tmp/ka_log-10.0.1.111-20100507-10h32 <==
+10.0.1.111> OK
+10.0.1.111> Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
+10.0.1.111> Building a new DOS disklabel with disk identifier 0x59be1427.
+10.0.1.111> Changes will remain in memory only, until you decide to write them.
+10.0.1.111> After that, of course, the previous content won't be recoverable.
+10.0.1.111>
+10.0.1.111>
+10.0.1.111> The number of cylinders for this disk is set to 1116.
+10.0.1.111> There is nothing wrong with that, but this is larger than 1024,
+10.0.1.111> and could in certain setups cause problems with:
+10.0.1.111> 1) software that runs at boot time (e.g., old versions of LILO)
+10.0.1.111> 2) booting and partitioning software from other OSs
+10.0.1.111> (e.g., DOS FDISK, OS/2 FDISK)
+10.0.1.111> Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
+10.0.1.111>
+10.0.1.111> Command (m for help): The partition table has been altered!
+10.0.1.111>
+10.0.1.111> Calling ioctl() to re-read partition table.
+10.0.1.111> Syncing disks.
+10.0.1.111> Writing partition table for sda using fdisk...OK
+10.0.1.111> Formatting /dev/sda2 as ext3...OK
+10.0.1.111> Formatting /dev/sda5 as ext4...OK
+10.0.1.111> Formatting /dev/sda1 as swap...OK
+10.0.1.111> - Mounting /dev/sda2 as /mnt/disk/ ......OK
+10.0.1.111> - Mounting /dev/sda5 as /mnt/disk/home ......OK
+10.0.1.111> ++++++++++++++++++++++++++
+10.0.1.111> none on /sys type sysfs (rw,relatime)
+10.0.1.111> none on /proc/bus/usb type usbfs (rw,relatime)
+10.0.1.111> /dev/ram3 on /tmp/stage2 type ext2 (rw,relatime,errors=continue)
+10.0.1.111> /dev/sda2 on /mnt/disk type ext3 (rw,relatime,errors=continue,data=ordered)
+10.0.1.111> /dev/sda5 on /mnt/disk/home type ext4 (rw,relatime,barrier=1,data=ordered)
+10.0.1.111> ++++++++++++++++++++++++++
+10.0.1.111> Linux copy is about to start
+10.0.1.111> Server IP is 10.0.1.42
+10.0.1.111> Buffers names :pipe
+Total data received = 21 Megs (10.830 Mbytes/sec); BUF :0M
+10.0.1.111> ==> /tmp/kacmd <==
+10.0.1.111> Starting log server..
+10.0.1.111>
+10.0.1.111> ==> /tmp/ka_log-localhost-20100507-11h17 <==
+Total data received = 788 Megs (10.796 Mbytes/sec); BUF :0M End of data flow
+10.0.1.111> Flushing buffers
+10.0.1.111> Total data received = 792 Megs, in 574479 packets
+10.0.1.111> Elapsed time = 73.413 seconds, throughput = 10.801 Mbytes/second
+10.0.1.111> Syncing disks...OK
+10.0.1.111> Linux copy done.
+10.0.1.111> Creating excluded directories
+10.0.1.111> - bootloader is grub (user choice)
+10.0.1.111> `/tmp/partfiles/pfstab' -> `/mnt/disk/etc/fstab'
+10.0.1.111> - Removing duplicated dhcp cache
+10.0.1.111> - Writing modprobe.conf
+10.0.1.111> ********************
+10.0.1.111> install scsi_hostadapter /sbin/modprobe aic7xxx; /bin/true
+10.0.1.111> install scsi_hostadapter /sbin/modprobe pata_serverworks; /bin/true
+10.0.1.111> alias eth0 tg3
+10.0.1.111> alias eth1 tg3
+10.0.1.111> ********************
+10.0.1.111> - Remove persistent udev rules
+10.0.1.111> removed `/mnt/disk/etc/udev/rules.d/70-persistent-net.rules'
+10.0.1.111> - Fix /dev in /mnt/disk
+10.0.1.111> `/ka2/udev_creation.sh' -> `/mnt/disk/sbin/udev_creation.sh'
+10.0.1.111> Starting udev: [ OK ]
+10.0.1.111> umount: /mnt/disk/dev: device is busy.
+10.0.1.111> (In some cases useful info about processes that use
+10.0.1.111> the device is found by lsof(8) or fuser(1))
+10.0.1.111> - Running mkinitrd
+10.0.1.111> - Looking for default grub menu
+10.0.1.111> - erase old initrd.img link
+10.0.1.111> removed `/mnt/disk/boot/initrd.img'
+10.0.1.111> initrd will be : /boot/initrd-2.6.33.3-desktop-1mnb.img
+10.0.1.111> running: chroot /mnt/disk /sbin/mkinitrd -v -f /boot/initrd-2.6.33.3-desktop-1mnb.img 2.6.33.3-desktop-1mnb
+10.0.1.111> Creating initramfs
+10.0.1.111> Looking for driver for /dev/sda2 in /sys/block/sda/sda2
+10.0.1.111> Looking for deps of module scsi:t-0x00: crc-t10dif scsi_mod sd_mod
+10.0.1.111> Looking for deps of module pci:v00009005d000000CFsv00001028sd00000121bc01sc00i00: scsi_mod scsi_transport_spi aic7xxx
+10.0.1.111> Looking for deps of module pci:v00008086d00000309sv00000000sd00000000bc06sc04i00: pci_hotplug shpchp
+10.0.1.111> Looking for driver for /dev/sda1 in /sys/block/sda/sda1
+10.0.1.111> Using modules: usbhid ehci-hcd ohci-hcd uhci-hcd ext3 crc-t10dif scsi_mod sd_mod scsi_transport_spi aic7xxx pci_hotplug shpchp pata_serverworks
+10.0.1.111> Building initrd in /tmp/initrd.uuIIkZ
+10.0.1.111> /sbin/nash -> /tmp/initrd.uuIIkZ/bin/nash
+10.0.1.111> /usr/lib/libnash.so.6.0.93 -> /tmp/initrd.uuIIkZ/usr/lib/libnash.so.6.0.93
+10.0.1.111> /lib/libdevmapper.so.1.02 -> /tmp/initrd.uuIIkZ/lib/libdevmapper.so.1.02
+10.0.1.111> /lib/libreadline.so.6 -> /tmp/initrd.uuIIkZ/lib/libreadline.so.6
+10.0.1.111> /lib/libreadline.so.6.1 -> /tmp/initrd.uuIIkZ/lib/libreadline.so.6.1
+10.0.1.111> /lib/libncurses.so.5 -> /tmp/initrd.uuIIkZ/lib/libncurses.so.5
+10.0.1.111> /lib/libncurses.so.5.7 -> /tmp/initrd.uuIIkZ/lib/libncurses.so.5.7
+10.0.1.111> /lib/libc.so.6 -> /tmp/initrd.uuIIkZ/lib/libc.so.6
+10.0.1.111> /lib/libc-2.11.1.so -> /tmp/initrd.uuIIkZ/lib/libc-2.11.1.so
+10.0.1.111> /lib/ld-linux.so.2 -> /tmp/initrd.uuIIkZ/lib/ld-linux.so.2
+10.0.1.111> /lib/ld-2.11.1.so -> /tmp/initrd.uuIIkZ/lib/ld-2.11.1.so
+10.0.1.111> /lib/libdl.so.2 -> /tmp/initrd.uuIIkZ/lib/libdl.so.2
+10.0.1.111> /lib/libdl-2.11.1.so -> /tmp/initrd.uuIIkZ/lib/libdl-2.11.1.so
+10.0.1.111> /lib/libudev.so.0 -> /tmp/initrd.uuIIkZ/lib/libudev.so.0
+10.0.1.111> /lib/libudev.so.0.7.0 -> /tmp/initrd.uuIIkZ/lib/libudev.so.0.7.0
+10.0.1.111> /usr/lib/libparted.so.0 -> /tmp/initrd.uuIIkZ/usr/lib/libparted.so.0
+10.0.1.111> /usr/lib/libparted.so.0.0.1 -> /tmp/initrd.uuIIkZ/usr/lib/libparted.so.0.0.1
+10.0.1.111> /lib/libuuid.so.1 -> /tmp/initrd.uuIIkZ/lib/libuuid.so.1
+10.0.1.111> /lib/libuuid.so.1.3.0 -> /tmp/initrd.uuIIkZ/lib/libuuid.so.1.3.0
+10.0.1.111> /lib/libblkid.so.1 -> /tmp/initrd.uuIIkZ/lib/libblkid.so.1
+10.0.1.111> /lib/libblkid.so.1.1.0 -> /tmp/initrd.uuIIkZ/lib/libblkid.so.1.1.0
+10.0.1.111> /lib/libpopt.so.0 -> /tmp/initrd.uuIIkZ/lib/libpopt.so.0
+10.0.1.111> /lib/libpopt.so.0.0.0 -> /tmp/initrd.uuIIkZ/lib/libpopt.so.0.0.0
+10.0.1.111> /lib/libresolv.so.2 -> /tmp/initrd.uuIIkZ/lib/libresolv.so.2
+10.0.1.111> /lib/libresolv-2.11.1.so -> /tmp/initrd.uuIIkZ/lib/libresolv-2.11.1.so
+10.0.1.111> /usr/lib/libelf.so.1 -> /tmp/initrd.uuIIkZ/usr/lib/libelf.so.1
+10.0.1.111> /usr/lib/libelf-0.146.so -> /tmp/initrd.uuIIkZ/usr/lib/libelf-0.146.so
+10.0.1.111> /lib/libm.so.6 -> /tmp/initrd.uuIIkZ/lib/libm.so.6
+10.0.1.111> /lib/libm-2.11.1.so -> /tmp/initrd.uuIIkZ/lib/libm-2.11.1.so
+10.0.1.111> /lib/libgcc_s.so.1 -> /tmp/initrd.uuIIkZ/lib/libgcc_s.so.1
+10.0.1.111> /lib/libgcc_s-4.4.3.so.1 -> /tmp/initrd.uuIIkZ/lib/libgcc_s-4.4.3.so.1
+10.0.1.111> /usr/lib/libbdevid.so.6.0.93 -> /tmp/initrd.uuIIkZ/usr/lib/libbdevid.so.6.0.93
+10.0.1.111> /sbin/modprobe -> /tmp/initrd.uuIIkZ/bin/modprobe
+10.0.1.111> /lib/libmodprobe.so.0 -> /tmp/initrd.uuIIkZ/lib/libmodprobe.so.0
+10.0.1.111> /lib/libmodprobe.so.0.0.0 -> /tmp/initrd.uuIIkZ/lib/libmodprobe.so.0.0.0
+10.0.1.111> /lib/libz.so.1 -> /tmp/initrd.uuIIkZ/lib/libz.so.1
+10.0.1.111> /lib/libz.so.1.2.3 -> /tmp/initrd.uuIIkZ/lib/libz.so.1.2.3
+10.0.1.111> /sbin/rmmod -> /tmp/initrd.uuIIkZ/bin/rmmod
+10.0.1.111> /bin/ln -> /tmp/initrd.uuIIkZ/bin/ln
+10.0.1.111> resolving for MODULES
+10.0.1.111> and that has items of usbhid ehci-hcd ohci-hcd uhci-hcd ext3 crc-t10dif scsi_mod sd_mod scsi_transport_spi aic7xxx pci_hotplug shpchp pata_serverworks
+10.0.1.111> Looking for deps of module usbhid: usbcore hid
+10.0.1.111> Looking for deps of module ehci-hcd: usbcore
+10.0.1.111> Looking for deps of module ohci-hcd: usbcore
+10.0.1.111> Looking for deps of module uhci-hcd: usbcore
+10.0.1.111> Looking for deps of module ext3: jbd
+10.0.1.111> Looking for deps of module crc-t10dif
+10.0.1.111> Looking for deps of module scsi_mod
+10.0.1.111> Looking for deps of module sd_mod: crc-t10dif scsi_mod
+10.0.1.111> Looking for deps of module scsi_transport_spi: scsi_mod
+10.0.1.111> Looking for deps of module aic7xxx: scsi_mod scsi_transport_spi
+10.0.1.111> Looking for deps of module pci_hotplug
+10.0.1.111> Looking for deps of module shpchp: pci_hotplug
+10.0.1.111> Looking for deps of module pata_serverworks: scsi_mod libata
+10.0.1.111> Looking for deps of module aic7xxx: scsi_mod scsi_transport_spi
+10.0.1.111> Looking for deps of module crc-t10dif
+10.0.1.111> Looking for deps of module ehci-hcd: usbcore
+10.0.1.111> Looking for deps of module ext3: jbd
+10.0.1.111> Looking for deps of module hid
+10.0.1.111> Looking for deps of module jbd
+10.0.1.111> Looking for deps of module libata: scsi_mod
+10.0.1.111> Looking for deps of module ohci-hcd: usbcore
+10.0.1.111> Looking for deps of module pata_serverworks: scsi_mod libata
+10.0.1.111> Looking for deps of module pci_hotplug
+10.0.1.111> Looking for deps of module scsi_mod
+10.0.1.111> Looking for deps of module scsi_transport_spi: scsi_mod
+10.0.1.111> Looking for deps of module sd_mod: crc-t10dif scsi_mod
+10.0.1.111> Looking for deps of module shpchp: pci_hotplug
+10.0.1.111> Looking for deps of module uhci-hcd: usbcore
+10.0.1.111> Looking for deps of module usbcore
+10.0.1.111> Looking for deps of module usbhid: usbcore hid
+10.0.1.111> resolving for availmodules
+10.0.1.111> and that has items of
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/scsi/aic7xxx/aic7xxx.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/aic7xxx.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/lib/crc-t10dif.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/crc-t10dif.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/usb/host/ehci-hcd.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/ehci-hcd.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/fs/ext3/ext3.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/ext3.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/hid/hid.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/hid.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/fs/jbd/jbd.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/jbd.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/ata/libata.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/libata.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/usb/host/ohci-hcd.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/ohci-hcd.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/ata/pata_serverworks.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/pata_serverworks.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/pci/hotplug/pci_hotplug.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/pci_hotplug.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/scsi/scsi_mod.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/scsi_mod.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/scsi/scsi_transport_spi.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/scsi_transport_spi.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/scsi/sd_mod.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/sd_mod.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/pci/hotplug/shpchp.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/shpchp.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/usb/host/uhci-hcd.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/uhci-hcd.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/usb/core/usbcore.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/usbcore.ko.gz
+10.0.1.111> /lib/modules/2.6.33.3-desktop-1mnb/kernel/drivers/hid/usbhid/usbhid.ko.gz -> /tmp/initrd.uuIIkZ/lib/modules/2.6.33.3-desktop-1mnb/usbhid.ko.gz
+10.0.1.111> /etc/sysconfig/keyboard -> /tmp/initrd.uuIIkZ/etc/sysconfig/keyboard
+10.0.1.111> /bin/loadkeys -> /tmp/initrd.uuIIkZ/bin/loadkeys
+10.0.1.111> /etc/sysconfig/console/default.kmap -> /tmp/initrd.uuIIkZ/etc/sysconfig/console/default.kmap
+10.0.1.111> /etc/sysconfig/i18n -> /tmp/initrd.uuIIkZ/etc/sysconfig/i18n
+10.0.1.111> /bin/setfont -> /tmp/initrd.uuIIkZ/bin/setfont
+10.0.1.111> /usr/lib/kbd/consolefonts/lat0-16.psfu.gz -> /tmp/initrd.uuIIkZ/usr/lib/kbd/consolefonts/lat0-16.psfu.gz
+10.0.1.111> /lib/udev/console_init -> /tmp/initrd.uuIIkZ/lib/udev/console_init
+10.0.1.111> probing for drm modules for pci device /sys/bus/pci/devices/0000:00:0e.0
+10.0.1.111> Adding graphics device /sys/bus/pci/devices/0000:00:0e.0
+10.0.1.111> Looking for deps of module pci:v00001002d00004752sv00001028sd00000121bc03sc00i00
+10.0.1.111> resolving for GRAPHICSMODS
+10.0.1.111> and that has items of
+10.0.1.111> Adding module usbhid
+10.0.1.111> Adding module ehci-hcd
+10.0.1.111> Adding module ohci-hcd
+10.0.1.111> Adding module uhci-hcd
+10.0.1.111> Adding module ext3
+10.0.1.111> Adding module crc-t10dif
+10.0.1.111> Adding module scsi_mod
+10.0.1.111> Adding module sd_mod
+10.0.1.111> Adding module scsi_transport_spi
+10.0.1.111> Adding module aic7xxx
+10.0.1.111> Adding module pci_hotplug
+10.0.1.111> Adding module shpchp
+10.0.1.111> Adding module pata_serverworks
+10.0.1.111> /usr/sbin/resume -> /tmp/initrd.uuIIkZ/bin/resume
+10.0.1.111> /usr/lib/suspend/resume -> /tmp/initrd.uuIIkZ/usr/lib/suspend/resume
+10.0.1.111> /usr/lib/liblzo2.so.2 -> /tmp/initrd.uuIIkZ/usr/lib/liblzo2.so.2
+10.0.1.111> /usr/lib/liblzo2.so.2.0.0 -> /tmp/initrd.uuIIkZ/usr/lib/liblzo2.so.2.0.0
+10.0.1.111> /lib/libpthread.so.0 -> /tmp/initrd.uuIIkZ/lib/libpthread.so.0
+10.0.1.111> /lib/libpthread-2.11.1.so -> /tmp/initrd.uuIIkZ/lib/libpthread-2.11.1.so
+10.0.1.111> /lib/libply.so.2 -> /tmp/initrd.uuIIkZ/lib/libply.so.2
+10.0.1.111> /lib/libply.so.2.0.0 -> /tmp/initrd.uuIIkZ/lib/libply.so.2.0.0
+10.0.1.111> /lib/librt.so.1 -> /tmp/initrd.uuIIkZ/lib/librt.so.1
+10.0.1.111> /lib/librt-2.11.1.so -> /tmp/initrd.uuIIkZ/lib/librt-2.11.1.so
+10.0.1.111> /lib/libply-splash-core.so.2 -> /tmp/initrd.uuIIkZ/lib/libply-splash-core.so.2
+10.0.1.111> /lib/libply-splash-core.so.2.0.0 -> /tmp/initrd.uuIIkZ/lib/libply-splash-core.so.2.0.0
+10.0.1.111> /etc/suspend.conf -> /tmp/initrd.uuIIkZ/etc/suspend.conf
+10.0.1.111> This initrd uses dynamic shared objects.
+10.0.1.111> Adding dynamic linker configuration files.
+10.0.1.111> /etc/ld.so.conf -> /tmp/initrd.uuIIkZ/etc/ld.so.conf
+10.0.1.111> Running ldconfig
+10.0.1.111> Installation finished. No error reported.
+10.0.1.111> This is the contents of the device map /boot/grub/device.map.
+10.0.1.111> Check if this is correct or not. If any of the lines is incorrect,
+10.0.1.111> fix it and re-run the script `grub-install'.
+10.0.1.111>
+10.0.1.111> (hd0) /dev/sda
+10.0.1.111> Umounting /dev/sda5...OK
+10.0.1.111> Umounting /dev/sda2...OK
+10.0.1.111> ftp: connect: Connection refused
+10.0.1.111> Local directory now /tmp
+10.0.1.111> Not connected.
]]></programlisting>
</sect2>
+ <sect2>
+ <title>Post duplication process</title>
+ <para>Now client nodes reboots, so we have to switch PXE to a local boot.</para>
+ <para>
+<programlisting><![CDATA[
+[root@node42 ka]# vi /var/lib/tftpboot/X86PC/linux/pxelinux.cfg/default
+DEFAULT local
+]]></programlisting>
+ </para>
+ <para>Nodes hsould be up, we can to see their hardware.</para>
+ <para>
+ <programlisting><![CDATA[
+[root@node42 ka]# ssh render@10.0.1.110
+[render@linux ~]$ lspcidrake
+8139too : Realtek Semiconductor Co., Ltd.|RTL-8139/8139C/8139C+ [NETWORK_ETHERNET] (rev: 10)
+snd_intel8x0 : Intel Corporation|82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller [MULTIMEDIA_AUDIO] (rev: 02)
+i2c_i801 : Intel Corporation|82801EB/ER (ICH5/ICH5R) SMBus Controller [SERIAL_SMBUS] (rev: 02)
+ata_piix : Intel Corporation|82801EB/ER (ICH5/ICH5R) IDE Controller [STORAGE_IDE] (rev: 02)
+iTCO_wdt : Intel Corporation|82801EB/ER (ICH5/ICH5R) LPC Interface Bridge [BRIDGE_ISA] (rev: 02)
+shpchp : Intel Corporation|82801 PCI Bridge [BRIDGE_PCI] (rev: c2)
+ehci_hcd : Intel Corporation|82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller [SERIAL_USB] (rev: 02)
+uhci_hcd : Intel Corporation|82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 [SERIAL_USB] (rev: 02)
+uhci_hcd : Intel Corporation|82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 [SERIAL_USB] (rev: 02)
+uhci_hcd : Intel Corporation|82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 [SERIAL_USB] (rev: 02)
+uhci_hcd : Intel Corporation|82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 [SERIAL_USB] (rev: 02)
+unknown : Intel Corporation|82865G/PE/P Processor to I/O Memory Interface [SYSTEM_OTHER] (rev: 02)
+Card:Intel 810 and later: Intel Corporation|82865G Integrated Graphics Controller [DISPLAY_VGA] (rev: 02)
+unknown : Intel Corporation|82865G/PE/P DRAM Controller/Host-Hub Interface [BRIDGE_HOST] (rev: 02)
+hub : Linux 2.6.33.3-desktop-1mnb uhci_hcd|UHCI Host Controller [Hub|Unused|Full speed (or root) hub]
+hub : Linux 2.6.33.3-desktop-1mnb uhci_hcd|UHCI Host Controller [Hub|Unused|Full speed (or root) hub]
+hub : Linux 2.6.33.3-desktop-1mnb uhci_hcd|UHCI Host Controller [Hub|Unused|Full speed (or root) hub]
+usbhid : |SCISSORS Keyboard [Human Interface Device|Boot Interface Subclass|Keyboard]
+hub : Linux 2.6.33.3-desktop-1mnb uhci_hcd|UHCI Host Controller [Hub|Unused|Full speed (or root) hub]
+hub : Linux 2.6.33.3-desktop-1mnb ehci_hcd|EHCI Host Controller [Hub|Unused|Full speed (or root) hub]
+[render@linux ~]$ cat /etc/modprobe.conf
+install scsi_hostadapter /sbin/modprobe ata_piix; /sbin/modprobe ahci; /bin/true
+alias eth0 8139too
+install usb-interface /sbin/modprobe ehci_hcd; /sbin/modprobe uhci_hcd; /bin/true
+alias sound-slot-0 snd_intel8x0
+
+[root@node42 ka]# ssh render@10.0.1.111
+[render@localhost ~]$ lspcidrake
+ath5k : Atheros Communications Inc.|AR2413 802.11bg NIC [NETWORK_ETHERNET] (rev: 01)
+tg3 : Broadcom Corporation|NetXtreme BCM5701 Gigabit Ethernet [NETWORK_ETHERNET] (rev: 15)
+tg3 : Broadcom Corporation|NetXtreme BCM5701 Gigabit Ethernet [NETWORK_ETHERNET] (rev: 15)
+aic7xxx : Adaptec|AIC-7899P U160/m [STORAGE_SCSI] (rev: 01)
+aic7xxx : Adaptec|AIC-7899P U160/m [STORAGE_SCSI] (rev: 01)
+shpchp : Intel Corporation|80303 I/O Processor PCI-to-PCI Bridge [BRIDGE_PCI] (rev: 01)
+unknown : Broadcom|CIOB-X2 PCI-X I/O Bridge [BRIDGE_HOST] (rev: 03)
+unknown : Broadcom|CIOB-X2 PCI-X I/O Bridge [BRIDGE_HOST] (rev: 03)
+unknown : Broadcom|CIOB-X2 PCI-X I/O Bridge [BRIDGE_HOST] (rev: 03)
+unknown : Broadcom|CIOB-X2 PCI-X I/O Bridge [BRIDGE_HOST] (rev: 03)
+unknown : Broadcom|CSB5 LPC bridge [BRIDGE_ISA]
+ohci_hcd : Broadcom|OSB4/CSB5 OHCI USB Controller [SERIAL_USB] (rev: 05)
+pata_serverworks: Broadcom|CSB5 IDE Controller [STORAGE_IDE] (rev: 93)
+i2c_piix4 : Broadcom|CSB5 South Bridge [BRIDGE_HOST] (rev: 93)
+Card:ATI Mach 64-based cards (no 3D acceleration): ATI Technologies Inc|Rage XL [DISPLAY_VGA] (rev: 27)
+unknown : Dell|Embedded Remote Access: BMC/SMIC device
+unknown : Dell|Remote Access Card III
+unknown : Dell|Embedded Remote Access or ERA/O
+unknown : Broadcom|CMIC-LE [BRIDGE_HOST]
+unknown : Broadcom|CMIC-WS Host Bridge (GC-LE chipset) [BRIDGE_HOST]
+unknown : Broadcom|CMIC-WS Host Bridge (GC-LE chipset) [BRIDGE_HOST] (rev: 13)
+hub : Linux 2.6.33.3-desktop-1mnb ohci_hcd|OHCI Host Controller [Hub|Unused|Full speed (or root) hub]
+
+
+[render@localhost ~]$ cat /etc/modprobe.conf
+install scsi_hostadapter /sbin/modprobe pata_serverworks; /sbin/modprobe aic7xxx; /bin/true
+alias eth0 tg3
+alias eth1 tg3
+install ide-controller /sbin/modprobe ide_generic; /bin/true
+install usb-interface /sbin/modprobe ohci_hcd; /bin/true
+alias wlan0 ath5k
+]]></programlisting>
+ </para>
+ </sect2>
</sect1>
</article>
<!-- Keep this comment at the end of the file
diff --git a/docs/ka_method/duplication.pdf b/docs/ka_method/duplication.pdf
deleted file mode 100644
index 008fa17d7..000000000
--- a/docs/ka_method/duplication.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/ka_method/duplication.xml b/docs/ka_method/duplication.xml
index 90d9efd84..410c37d40 100644
--- a/docs/ka_method/duplication.xml
+++ b/docs/ka_method/duplication.xml
@@ -5,7 +5,7 @@
]>
<!-- juste un commentaire -->
<book lang="en">
- <title>Mandriva Linux: HOWTO Clone a system using KA method</title>
+ <title>Mageia: HOWTO Clone a system using KA method</title>
<bookinfo>
<authorgroup>
<author>
@@ -15,6 +15,18 @@
</authorgroup>
<revhistory>
<revision>
+ <revnumber>0.3</revnumber>
+ <date>May 2010</date>
+ <authorinitials>ag</authorinitials>
+ <revremark>update/fix</revremark>
+ </revision>
+ <revision>
+ <revnumber>0.2</revnumber>
+ <date>Fev 2010</date>
+ <authorinitials>ag</authorinitials>
+ <revremark>update</revremark>
+ </revision>
+ <revision>
<revnumber>0.1</revnumber>
<date>OCT 2007</date>
<authorinitials>ag</authorinitials>
diff --git a/docs/ka_method/html/duplication.html b/docs/ka_method/html/duplication.html
deleted file mode 100644
index b4ecc2203..000000000
--- a/docs/ka_method/html/duplication.html
+++ /dev/null
@@ -1,661 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><title>Duplicate a node</title><link rel="stylesheet" href="styleguibo.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /><link rel="start" href="#id2447712" title="Duplicate a node" /><link rel="next" href="#id2446541" title="1.Duplicate a computer over the network" /></head><body><div class="article" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="id2447712"></a>Duplicate a node</h2></div></div><hr /></div><div class="toc"><dl><dt><span class="sect1"><a href="#id2446541">1. Duplicate a computer over the network</a></span></dt><dd><dl><dt><span class="sect2"><a href="#id2243707">1.1. KA method</a></span></dt><dt><span class="sect2"><a href="#id2521938">1.2. HOW it works</a></span></dt><dd><dl><dt><span class="sect3"><a href="#id2521943">1.2.1. Steps</a></span></dt><dt><span class="sect3"><a href="#id2522328">1.2.2. Needed files</a></span></dt></dl></dd><dt><span class="sect2"><a href="#id2522381">1.3. Step 1: PXE, TFTP, DHCPD services</a></span></dt><dd><dl><dt><span class="sect3"><a href="#id2522416">1.3.1. PXE parameters on server</a></span></dt><dt><span class="sect3"><a href="#id2522497">1.3.2. TFTP server</a></span></dt><dt><span class="sect3"><a href="#id2522528">1.3.3. PXE configuration</a></span></dt><dt><span class="sect3"><a href="#id2522540">1.3.4. DHCPD configuration</a></span></dt></dl></dd></dl></dd><dt><span class="sect1"><a href="#id2522692">2. Setup a node as a golden node</a></span></dt><dd><dl><dt><span class="sect2"><a href="#id2522697">2.1. The rescue.sqfs file</a></span></dt><dd><dl><dt><span class="sect3"><a href="#id2522749">2.1.1. ka-d.sh</a></span></dt><dt><span class="sect3"><a href="#id2522775">2.1.2. replication.conf</a></span></dt><dt><span class="sect3"><a href="#id2522788">2.1.3. fdisk_to_desc</a></span></dt><dt><span class="sect3"><a href="#id2522812">2.1.4. gen_modprobe_conf.pl</a></span></dt><dt><span class="sect3"><a href="#id2522837">2.1.5. ka-d-client</a></span></dt><dt><span class="sect3"><a href="#id2522872">2.1.6. ka-d-server</a></span></dt><dt><span class="sect3"><a href="#id2522906">2.1.7. ka_replication.sh</a></span></dt><dt><span class="sect3"><a href="#id2522931">2.1.8. store_log.sh</a></span></dt><dt><span class="sect3"><a href="#id2522960">2.1.9. bootable_flag.sh</a></span></dt><dt><span class="sect3"><a href="#id2522972">2.1.10. make_initrd_grub</a></span></dt><dt><span class="sect3"><a href="#id2522996">2.1.11. make_initrd_lilo</a></span></dt><dt><span class="sect3"><a href="#id2523020">2.1.12. prepare_node.sh</a></span></dt><dt><span class="sect3"><a href="#id2523046">2.1.13. send_status.pl</a></span></dt><dt><span class="sect3"><a href="#id2523070">2.1.14. status_node.pl</a></span></dt></dl></dd></dl></dd><dt><span class="sect1"><a href="#id2523090">3. The golden node, KA server</a></span></dt><dt><span class="sect1"><a href="#id2523240">4. KA client node</a></span></dt><dd><dl><dt><span class="sect2"><a href="#id2523246">4.1. PXE server (kamethod)</a></span></dt><dt><span class="sect2"><a href="#id2523284">4.2. Stage1 KA method, node waiting stage2 </a></span></dt><dt><span class="sect2"><a href="#id2523331">4.3. Stage2, the duplication process</a></span></dt><dt><span class="sect2"><a href="#id2523401">4.4. Prepare the node</a></span></dt><dt><span class="sect2"><a href="#id2523428">4.5. PXE server to local boot</a></span></dt></dl></dd><dt><span class="sect1"><a href="#id2523445">5. full log of a KA duplication</a></span></dt><dd><dl><dt><span class="sect2"><a href="#id2523451">5.1. Golden node side</a></span></dt><dt><span class="sect2"><a href="#id2523463">5.2. KA client side</a></span></dt></dl></dd></dl></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id2446541"></a>1.Duplicate a computer over the network</h2></div></div></div><p>
- Goal of duplication is to easily deploy a computer over network without taking care of numbers of computer. In this documentation, we call golden node the node we want to clone.
- We can duplicate SCSI or IDE hard drive, and duplication support multiple filesystem (reiserfs, ext2, ext3, xfs, jfs).
- </p><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2243707"></a>1.1.KA method</h3></div></div></div><p>
- With KA method you can quickly duplicate a node using a <span class="bold"><strong>desc</strong></span>
- file describing partitions. KA method only duplicate data on partitions, so if you have 80go HDD disk, and
- only 10go on it, KA only duplicates 10go, and not the whole disk. KA method doesn't not support RAID software.
- </p><p>
- Drawbacks:
- </p><p>
- </p><div class="itemizedlist"><ul type="disc"><li><p>KA method doesn't support RAID software</p></li><li><p>you can only clone Linux filesystems (if you want to duplicate another kinf of FS, it's up to you to modify the scripts)</p></li><li><p>you can only duplicate same kind of HDD (IDE or SCSI)</p></li></ul></div><p>
- </p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2521938"></a>1.2.HOW it works</h3></div></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2521943"></a>1.2.1.Steps</h4></div></div></div><p>
- The clone process works in three steps
- </p><div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>PXE boot to retrieve stage1</strong></span>: the computer boot on PXE mode, retrieve <span class="bold"><strong>vmlinuz</strong></span> and an <span class="bold"><strong>initrd</strong></span>. The computer is in <span class="bold"><strong>stage1</strong></span> mode, and is able to get the stage2 throug KA. Network is up.</p></li><li><p><span class="bold"><strong>get stage2</strong></span>: the computer gets the stage2 with KA method. The <span class="bold"><strong>stage2</strong></span> contains all necessary tools to recognize your hardware (the most important things is to detect your HDD), and all necessary tools to finalize the cloning process.</p></li><li><p><span class="bold"><strong>Duplication process</strong></span>: the computer auto-probes needed modules to be able to access to HDD. A basic log server is launched on the client node to be able to run command and get status of the KA duplication process.</p></li></ul></div></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522328"></a>1.2.2.Needed files</h4></div></div></div><p>
- All needed files are available on Mandriva Linux cooker.
- </p><p>
- </p><div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>install/stage2/rescue.sqhfs</strong></span>: this is the stage2 file with all needed files to detect and probe modules, and launch the third step of the duplication process. This file will be used on the golden node.</p></li><li><p><span class="bold"><strong>isolinux/alt0/vmlinuz</strong></span>: linux kernel, needed in the <span class="bold"><strong>/var/lib/tftpboot/X86PC/linux/images/</strong></span> directory of the PXE server</p></li><li><p><span class="bold"><strong>isolinux/alt0/all.rdz</strong></span>: stage1 and all needed modules.</p></li></ul></div><p>
- </p></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2522381"></a>1.3.Step 1: PXE, TFTP, DHCPD services</h3></div></div></div><p>
- To easily clone a computer node, we use PXE technology to boot a <span class="bold"><strong>kernel</strong></span>, and an <span class="bold"><strong>initrd</strong></span> image wich contains all needed modules for network and media storage. Documentation about PXE can be found here: <a class="ulink" href="http://people.mandriva.com/~aginies/doc/pxe/" target="_top">PXE doc</a>. Please, keep in mind setting such services can <span class="bold"><strong>DISTURB</strong></span> your current network architecture.
- </p><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522416"></a>1.3.1.PXE parameters on server</h4></div></div></div><p>
- Mandriva Linux installer supports various methods to install a computer. With PXE configuration file you can specify wich method you want to use to install your node, or add a specific option at boot prompt. Edit your default PXE configuration file to add your custom entry (<span class="bold"><strong>/var/lib/tftpboot/X86PC/linux/pxelinux.cfg/default</strong></span>).
- </p><p>
- </p><pre class="screen">
-PROMPT 1
-DEFAULT local
-DISPLAY messages
-TIMEOUT 50
-F1 help.txt
-
-label local
- LOCALBOOT 0
-
-label kamethod
- KERNEL images/vmlinuz
- APPEND initrd=images/all.rdz ramdisk_size=64000 vga=788 \
- automatic=method:ka,interface:eth0,network:dhcp root=/dev/ram3 rw rescue kamethod</pre><p>
- </p><p>
- At boot prompt no you can boot:
- </p><p>
- </p><div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>DEFAULT local</strong></span>: default boot will be local one, change it with the name of a <span class="bold"><strong>LABEL</strong></span></p></li><li><p><span class="bold"><strong>local</strong></span>: boot local</p></li><li><p><span class="bold"><strong>kamethod</strong></span>: automatic mode, get stage2 through <span class="bold"><strong>KA</strong></span>. Network interface is set to eth0. Auto setup the network with DHCP, and use the KA technology to launch the replication method.</p></li></ul></div><p>
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522497"></a>1.3.2.TFTP server</h4></div></div></div><p>
- TFTP server should be activated in <span class="bold"><strong>/etc/xinetd.d/tftp</strong></span> file, and the <span class="bold"><strong>xinetd</strong></span> service started.
- </p><p>
- </p><pre class="screen">
-service tftp
-{
- disable= no
- socket_type= dgram
- protocol= udp
- wait= yes
- user= root
- server= /usr/sbin/in.tftpd
- server_args = -s /var/lib/tftpboot
- per_source= 11
- cps= 100 2
- flags= IPv4
-}</pre><p>
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522528"></a>1.3.3.PXE configuration</h4></div></div></div><p>
-</p><pre class="programlisting">
-# which interface to use
-interface=eth0
-default_address=IPADDR_PXE
-
-# the multicast ip address to listen on
-multicast_address=224.0.1.2
-
-# mtftp info
-mtftp_address=IPADDR_TFTP
-mtftp_client_port=1758
-mtftp_server_port=1759
-
-# the port to listen on
-listen_port=4011
-
-# enable multicast?
-use_multicast=1
-
-# enable broadcast?
-use_broadcast=0
-
-# user prompt
-prompt=Press F8 to view menu ...
-prompt_timeout=2
-
-# what services to provide, priority in ordering
-# CSA = Client System Architecture
-# service=&lt;CSA&gt;,&lt;min layer&gt;,&lt;max layer&gt;,&lt;basename&gt;,&lt;menu entry&gt;
-service=X86PC,0,2,linux,Mandrake Linux x86
-service=IA64PC,0,2,linux,Mandrake Linux IA64
-service=X86PC,0,0,local,Local boot
-
-# tftpd base dir
-tftpdbase=/
-
-# domain=guibland.com
-domain=
-</pre><p>
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522540"></a>1.3.4.DHCPD configuration</h4></div></div></div><p>
- IE of an <span class="bold"><strong>/etc/dhcpd.conf</strong></span> configuration file. Change <span class="bold"><strong>IPADDR_TFTP</strong></span> with the IP address of the TFTP serrver, and the <span class="bold"><strong>NET</strong></span> value. Don't forget to adjust the <span class="bold"><strong>domain-name</strong></span> and the <span class="bold"><strong>domain-name-servers</strong></span>.
- </p><p>
- </p><pre class="screen">
-ddns-update-style none;
-allow booting;
-allow bootp;
-
-authoritative;
-
-# Definition of PXE-specific options
-# Code 1: Multicast IP address of bootfile
-# Code 2: UDP port that client should monitor for MTFTP responses
-# Code 3: UDP port that MTFTP servers are using to listen for MTFTP requests
-# Code 4: Number of secondes a client must listen for activity before trying
-# to start a new MTFTP transfer
-# Code 5: Number of secondes a client must listen before trying to restart
-# a MTFTP transfer
-
-# define Option for the PXE class
-option space PXE;
-option PXE.mtftp-ip code 1 = ip-address;
-option PXE.mtftp-cport code 2 = unsigned integer 16;
-option PXE.mtftp-sport code 3 = unsigned integer 16;
-option PXE.mtftp-tmout code 4 = unsigned integer 8;
-option PXE.mtftp-delay code 5 = unsigned integer 8;
-option PXE.discovery-control code 6 = unsigned integer 8;
-option PXE.discovery-mcast-addr code 7 = ip-address;
-
-#Define options for pxelinux
-option space pxelinux;
-option pxelinux.magic code 208 = string;
-option pxelinux.configfile code 209 = text;
-option pxelinux.pathprefix code 210 = text;
-option pxelinux.reboottime code 211 = unsigned integer 32;
-site-option-space "pxelinux";
-
-option pxelinux.magic f1:00:74:7e;
-option pxelinux.reboottime 30;
-
-#Class that determine the options for Etherboot 5.x requests
-class "Etherboot" {
-#if The vendor-class-identifier equal Etherboot-5.0
-match if substring (option vendor-class-identifier, 0, 13) = "Etherboot-5.0";
-# filename define the file retrieve by the client, there nbgrub
-# our tftp is chrooted so is just the path to the file
-filename "/etherboot/nbgrub";
-#Used by etherboot to detect a valid pxe dhcp server
-option vendor-encapsulated-options 3c:09:45:74:68:65:72:62:6f:6f:74:ff;
-# Set the "vendor-class-identifier" field to "PXEClient" in dhcp answer
-# if this field is not set the pxe client will ignore the answer !
-option vendor-class-identifier "Etherboot-5.0";
-vendor-option-space PXE;
-option PXE.mtftp-ip 0.0.0.0;
-# IP of you TFTP server
-next-server IPADDR_TFTP;
-}
-
-# create the Class PXE
-class "PXE" {
-# if the "vendor-class-identifier" is set to "PXEClient" in the client dhcp request
-match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
-filename "/X86PC/linux/linux.0";
-option vendor-class-identifier "PXEClient";
-vendor-option-space PXE;
-option PXE.mtftp-ip 0.0.0.0;
-next-server IPADDR_TFTP;
-}
-
-#host node20 {
-# hardware ethernet 00:40:CA:8C:B6:E9;
-# fixed-address node20;
-#}
-
-subnet NET.0 netmask 255.255.255.0 {
- option subnet-mask 255.255.255.0;
- option routers IPADDR_GW;
- default-lease-time 288000;
- max-lease-time 864000;
- option domain-name "guibland.com";
- option domain-name-servers IPADDR_DNS;
- next-server IPADDR_TFTP;
- pool {
- range NET.30 NET.40;
- }
-}</pre><p>
- </p></div></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id2522692"></a>2.Setup a node as a golden node</h2></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2522697"></a>2.1.The rescue.sqfs file</h3></div></div></div><p>
- You need the rescue disk (wich contains the <span class="bold"><strong>/ka</strong></span> directory),
- and mount it loop in <span class="bold"><strong>/mnt/ka</strong></span>.
- </p><p>
- </p><pre class="screen">
-mkdir /mnt/ka
-mount -o loop -t squashfs rescue.sqfs /mnt/ka</pre><p>
- </p><p>
- Go in the <span class="bold"><strong>/mnt/ka/ka</strong></span> directory, and see all new files available. All those files are needed
- to do a <span class="bold"><strong>KA</strong></span> duplication process. We will explain now the rule of each of them. If you want
- to modify the content of this rescue disk (add scripts...), mount it in a tempory directory, and copy the content
- into the <span class="bold"><strong>/mnt/ka</strong></span> directory.
- </p><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522749"></a>2.1.1.ka-d.sh</h4></div></div></div><p>
- This is the master script to declare a node as a golden node. This script takes a lot of arguments.
-</p><pre class="screen">
- -h, --help : display this message
- -n num : specify the number of (destination) nodes
- -x dir : exclude directory
- -X sdb : exclude sdb for the replication
- -m drive : copy the master boot record (for windows) of this drive
- -M drive file : use 'file' as master boot record (must be 446 bytes long) for the specified drive
- -D partition : also copy partition 'partition'
- -p drive pdesc : use 'pdesc' file as partition scheme (see doc) for the specified drive
- -d delay : delay beteween the release of 2 clients (1/10 second)
- -r 'grub|lilo' : choose the bootloader (you can add mkinitrd options)
-
- ie: ka-d.sh -n 3 -p sda /tmp/desc -X sdb -r 'grub --with=ata_piix --with=piix'</pre><p>
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522775"></a>2.1.2.replication.conf</h4></div></div></div><p>
- This file contain all variables needed by other scripts. It also tries to get information like IP address.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522788"></a>2.1.3.fdisk_to_desc</h4></div></div></div><p>
- This script generate the description table of the hard drive disk in the <span class="bold"><strong>/tmp/desc</strong></span> file.
- This file must follow some rules: one line per partition, with two fields : type of partition and size in megabytes.
- The type can be linux, swap, extended. Other types can be obtained by appending their hexadecimal number to 'type'.
- For example linux is the same as type83. The size is either a number of megabytes, or the keyword fill (to take all
- available space). The logical partitions must have the logical keyword.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522812"></a>2.1.4.gen_modprobe_conf.pl</h4></div></div></div><p>
- This script create a basic output like the content of the<span class="bold"><strong>/etc/modprobe.conf</strong></span> file. Drawbacks
- this file must be updated for each new modules available in the kernel (based on the <span class="bold"><strong>kernel/list_modules.pm</strong></span> file).
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522837"></a>2.1.5.ka-d-client</h4></div></div></div><p>
- The <span class="bold"><strong>ka-d-client</strong></span> binary file is used to get stage2 with the <span class="bold"><strong>KA</strong></span> method, and after
- get the whole system. The important argument is the <span class="bold"><strong>-s</strong></span> session name. A <span class="bold"><strong>KA</strong></span>
- can only connect to a specific session (getstage2, kainstall ...). The code source is available in the ka-deploy-0.92 SRPM.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522872"></a>2.1.6.ka-d-server</h4></div></div></div><p>
- The <span class="bold"><strong>ka-d-server</strong></span> binary file is used to be a <span class="bold"><strong>KA</strong></span> golden node server.
- Like the <span class="bold"><strong>ka-d-client</strong></span> the session arguments is an important parameter (<span class="bold"><strong>-s session_name</strong></span>).
- The code source is available in the ka-deploy-0.92 SRPM.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522906"></a>2.1.7.ka_replication.sh</h4></div></div></div><p>
- Script launched on the <span class="bold"><strong>KA</strong></span> client (after getting stage2 and probing modules), to do the full process of the
- <span class="bold"><strong>Ka</strong></span> duplication.
- This script call other scripts to prepare the node (prepare_node.sh), configure the bootloader (make_initrd_grub or make_initrd_lilo).
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522931"></a>2.1.8.store_log.sh</h4></div></div></div><p>
- Basic script to store the log of the <span class="bold"><strong>KA</strong></span> duplication process on an FTP server. Adjust to feet your need, and uncomment
- the line <span class="bold"><strong>#store_log.sh</strong></span> in the <span class="bold"><strong>/mnt/ka/ka/ka_replication.sh</strong></span> file.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522960"></a>2.1.9.bootable_flag.sh</h4></div></div></div><p>
- Script to set bootable an HDD using fdisk. First arg must be the HDD device.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522972"></a>2.1.10.make_initrd_grub</h4></div></div></div><p>
- Restore and reload the Grub bootloader in the <span class="bold"><strong>/mnt/disk</strong></span> directory. It's a very basic script, and perhaps
- use the <span class="bold"><strong>restore_bootloader</strong></span> of the Mandriva Linux Rescue should be a better idea.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2522996"></a>2.1.11.make_initrd_lilo</h4></div></div></div><p>
- Restore and reload the lilo bootloader in the <span class="bold"><strong>/mnt/disk</strong></span> directory. Again it's a very basic script, perhaps we should use the
- <span class="bold"><strong>restore_bootloader</strong></span> of the Mandriva Linux Rescue.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2523020"></a>2.1.12.prepare_node.sh</h4></div></div></div><p>
- This script remove in the futur system the old network's udev rules, old dhcp cache files, launch the script <span class="bold"><strong>gen_modprobe_conf.pl</strong></span> to
- regenerate an uptodate <span class="bold"><strong>/etc/modprobe.conf</strong></span> in the new system, and launch the script to restore the bootloader.
- If you want to do more action on the installed, system, you can modify this script.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2523046"></a>2.1.13.send_status.pl</h4></div></div></div><p>
- Very basic perl script to open the port 12345, and paste the content of the <span class="bold"><strong>/tmp/ka*</strong></span> file. It also
- permit the execution of commands on node, if user send a message from the golden node with the <span class="bold"><strong>exec</strong></span> prefix.
- </p></div><div class="sect3" lang="en" xml:lang="en"><div class="titlepage"><div><div><h4 class="title"><a id="id2523070"></a>2.1.14.status_node.pl</h4></div></div></div><p>
- Script to connect to a client node, first arg must be the IP address of the node. You can run command on the node with the <span class="bold"><strong>exec</strong></span> prefix.
- </p></div></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id2523090"></a>3.The golden node, KA server</h2></div></div></div><p>
- Now, it is time to build a description of the node partitions. You can use the script
- <span class="bold"><strong>/mnt/ka/ka/fdisk_to_desc</strong></span> as root user, or your favorite text editor,
- you can write a file like this one:
- </p><p>
- </p><pre class="screen">
-linux 3500
-extended fill
-logical swap 500
-logical linux fill</pre><p>
- </p><p>
- This file describes your partition table and the sample above can be considered as a default one for a recommended
- installation. There is a 3.5GB <span class="bold"><strong>/</strong></span> partition, a 500 MB swap
- partition, and <span class="bold"><strong>/var</strong></span> fills the rest, of course you can adjust
- sizes accoding to your system.
- </p><p>
- Type the following to start the ka replication server as root user:
- </p><p>
-</p><pre class="programlisting">
- &lt;screen&gt;
-[root@node40 ka]# ./ka-d.sh -n 1 -p sda /root/desc -X sdb -r "grub --with=jfs --with=ata_piix"
-takembr =
-desc = sda /root/desc
-+ Mount points :
- /dev/sda5 / ext3
- /dev/sda1 swap swap
-+ Hard drives :
- sda
-+ Reading partition table description for sda
- Added partition 1 : type 82
- Added partition 5 : type 83
-+ Included mount points : /
-+ Bootloader is: grub --with=jfs --with=ata_piix
-+++ Sending Stage2 +++
-Compiled : Aug 23 2007 12:58:29
-ARGS=+ka-d-server+-s+getstage2+-n+1+-e+(cd /mnt/ka; tar --create --one-file-system --sparse . )+
-Server IP = 10.0.1.40
-command = (cd /mnt/ka; tar --create --one-file-system --sparse . )
-I want 1 clients
-Socket 4 on port 30765 on node40.guibland.com ready.
-Socket 5 on port 30764 on node40.guibland.com ready.
-</pre><p>
- </p><p>
- </p><div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>-r "grub --with=jfs --with=ata_piix"</strong></span>: use grub bootloader and <span class="bold"><strong>--with=jfs --with=piix</strong></span> mkinitrd option in the chrooted system after the <span class="bold"><strong>KA</strong></span> deploiement</p></li><li><p><span class="bold"><strong>-n nb_nodes</strong></span>: specify how many nodes are clients</p></li><li><p><span class="bold"><strong>-p sda/hda desc</strong></span>: specify if you want to duplicate SCSI or IDE storage, and the name of the hdd</p></li><li><p><span class="bold"><strong>-x /tmp</strong></span>: exclude <span class="bold"><strong>/tmp</strong></span> directory</p></li><li><p><span class="bold"><strong>-X sdb</strong></span>: exclude <span class="bold"><strong>sdb</strong></span> hdd for the duplication</p></li></ul></div><p>
- </p><p>
- Now the node is waiting for the rest of the nodes to start replication.
- </p></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id2523240"></a>4.KA client node</h2></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2523246"></a>4.1.PXE server (kamethod)</h3></div></div></div><p>
- We have to configure the PXE to boot by default on <span class="bold"><strong>kamethod</strong></span>.
- To do this just edit <span class="bold"><strong>/var/lib/tftpboot/X86PC/linux/pxelinux.cfg/default</strong></span> and set
- <span class="bold"><strong>DEFAULT</strong></span> to kamethod:
- </p><pre class="screen">DEFAULT kamethod</pre><p>
- So, next time a node boots, the PXE server will force the
- node to boot using the kamethod.
- </p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2523284"></a>4.2.Stage1 KA method, node waiting stage2 </h3></div></div></div><p>
- Now, you boot all remaining nodes. The replication process
- will start once all nodes are up and waiting on the <span class="bold"><strong>KA</strong></span>
- screen.
- </p><p>
- If the nodes can't reach the golden node, running the <span class="bold"><strong>KA</strong></span>
- server the message <span class="bold"><strong>Can't reach a valid KA server</strong></span> will appear.
- Each node will try five times to reach the <span class="bold"><strong>KA</strong></span> server, after that the node will reboot.
- As the node boots on <span class="bold"><strong>kamethod</strong></span>, it will retry until it finds it.
- </p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2523331"></a>4.3.Stage2, the duplication process</h3></div></div></div><p>
- Once all the nodes have found the <span class="bold"><strong>KA</strong></span> server, the first
- duplication process will start. This step duplicates the
- <span class="bold"><strong>rescue_stage2</strong></span> from the <span class="bold"><strong>/mnt/ka</strong></span> directory
- of the golden node, in the client's nodes memory (<span class="bold"><strong>/dev/ram3</strong></span>). Then, nodes chroot their
- memories (the <span class="bold"><strong>/tmp/stage2</strong></span> directory), and launch the <span class="bold"><strong>drvinst</strong></span> command from the rescue disk, to probe all needed their modules (drivers).
- Then, the second step of the duplication starts.
- </p><p>
- The duplication process will clone your drives following
- the description you have made (<span class="bold"><strong>/tmp/desc</strong></span> of the golden node).
- Nodes will rewrite their partition table, then format their filesystems (ReiserFs, XFS,
- ext2/3, JFS). All new partitions will be mounted in the <span class="bold"><strong>/mnt/disk</strong></span> directory.
- Then, the drive duplication process will begin. On a fast Ethernet switch you can reach speeds of 10MBytes/sec.
- </p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2523401"></a>4.4.Prepare the node</h3></div></div></div><p>
- At the end of the duplication process, each node will
- chroot its partitions and rebuild its <span class="bold"><strong>/boot/initrd.img</strong></span>,
- and <span class="bold"><strong>/etc/modprobe.conf</strong></span> files.
- This step ensures that your node will reboot using its potential
- SCSI drives and adjusting its network card driver. Before
- rebooting, each node reinstalls lilo/grub. All your node are
- now ready, and are clone of master node.
- </p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2523428"></a>4.5.PXE server to local boot</h3></div></div></div><p>
- Don't forget to change the default PXE boot to <span class="bold"><strong>local</strong></span>
- so node after replication will boot localy.
- </p></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id2523445"></a>5.full log of a KA duplication</h2></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2523451"></a>5.1.Golden node side</h3></div></div></div><p>
-</p><pre class="programlisting">
-[root@node40 ka]# ./ka-d.sh -n 1 -p sda /root/desc -X sdb -r "grub --with=jfs --with=ata_piix"
-takembr =
-desc = sda /root/desc
-+ Mount points :
- /dev/sda5 / ext3
- /dev/sda1 swap swap
-+ Hard drives :
- sda
-+ Reading partition table description for sda
- Added partition 1 : type 82
- Added partition 5 : type 83
-+ Included mount points : /
-+ Bootloader is: grub --with=jfs --with=ata_piix
-+++ Sending Stage2 +++
-Compiled : Aug 23 2007 12:58:29
-ARGS=+ka-d-server+-s+getstage2+-n+1+-e+(cd /mnt/ka; tar --create --one-file-system --sparse . )+
-Server IP = 10.0.1.40
-command = (cd /mnt/ka; tar --create --one-file-system --sparse . )
-I want 1 clients
-Socket 4 on port 30765 on node40.guibland.com ready.
-Socket 5 on port 30764 on node40.guibland.com ready.
-got UDP packet from 10.0.1.35
-Session name matches
-Sending UDP reply to 10.0.1.35
-Accepting connection from 10.0.1.35
-Clients : want_data 0 / connected 0
-client says hello !
-Client sends options
-Client accepts data
-Added client 10.0.1.35, daddy = 10.0.1.40
-Accepting connection from 10.0.1.35
-checking connection auth10.0.1.40 reports 10.0.1.35 has opened data connection
-Client 10.0.1.35 reports data position : 0
-10.0.1.40 reports 10.0.1.35 has been accepted
-Welcome son, you are number 1 (MAX 4)
-Let's go!
-Total data read = 45 Megs, BUF: 0M FREE = 34M startpos = 10M
-End of data flow
-Dropping children
-Dropping child 10.0.1.35
-All children dropped
-Client says dad disconnected
-Client says he has finished
-Client has finished transfer
-Busy clients: 0 -- connected : 1
-Peer closed connection on socket 6
-close_connection(6)
-Busy clients: 0 -- connected : 0
-All clients left, I quit
-Total data sent = 48 Megs, in 2172 packets
-Transfer time = 6.125 seconds, throughput = 7.881 Mbytes/second
-The pipeline was emptied in 0.026 seconds
- - Sending partition/filesystem/mount points informations...
- +++ Running ka-deploy +++
-Compiled : Aug 23 2007 12:58:29
-ARGS=+ka-d-server+-s+kainstall1+-n+1+-e+(cd /tmp/ka-d6083 &amp;&amp; tar c *)+
-Server IP = 10.0.1.40
-command = (cd /tmp/ka-d6083 &amp;&amp; tar c *)
-I want 1 clients
-Socket 4 on port 30765 on node40.guibland.com ready.
-Socket 5 on port 30764 on node40.guibland.com ready.
-got UDP packet from 10.0.1.35
-Session name matches
-Sending UDP reply to 10.0.1.35
-Accepting connection from 10.0.1.35
-Clients : want_data 0 / connected 0
-client says hello !
-Client sends options
-Client accepts data
-Added client 10.0.1.35, daddy = 10.0.1.40
-Accepting connection from 10.0.1.35
-checking connection auth10.0.1.40 reports 10.0.1.35 has opened data connection
-Client 10.0.1.35 reports data position : 0
-10.0.1.40 reports 10.0.1.35 has been accepted
-Welcome son, you are number 1 (MAX 4)
-Let's go!
-Total data read = 0 Megs, BUF: 0M FREE = 34M startpos = 0M
-End of data flow
-Dropping children
-Dropping child 10.0.1.35
-All children dropped
-Client says dad disconnected
-Client says he has finished
-Client has finished transfer
-Busy clients: 0 -- connected : 1
-Peer closed connection on socket 6
-close_connection(6)
-Busy clients: 0 -- connected : 0
-All clients left, I quit
-Total data sent = 0 Megs, in 1 packets
-Transfer time = 0.016 seconds, throughput = 0.628 Mbytes/second
-The pipeline was emptied in 0.027 seconds
- WAITING node (partition/format)
- - Sending Linux filesystem...
- +++ Running ka-deploy +++
-Compiled : Aug 23 2007 12:58:29
-ARGS=+ka-d-server+-s+kainstall2+-n+1+-e+(cd /; tar --create --one-file-system --sparse /)+
-Server IP = 10.0.1.40
-command = (cd /; tar --create --one-file-system --sparse /)
-I want 1 clients
-Socket 4 on port 30765 on node40.guibland.com ready.
-Socket 5 on port 30764 on node40.guibland.com ready.
-got UDP packet from 10.0.1.35
-Session name matches
-Sending UDP reply to 10.0.1.35
-Accepting connection from 10.0.1.35
-Clients : want_data 0 / connected 0
-client says hello !
-Client sends options
-Client accepts data
-Added client 10.0.1.35, daddy = 10.0.1.40
-Accepting connection from 10.0.1.35
-checking connection auth10.0.1.40 reports 10.0.1.35 has opened data connection
-Client 10.0.1.35 reports data position : 0
-10.0.1.40 reports 10.0.1.35 has been accepted
-Welcome son, you are number 1 (MAX 4)
-Let's go!
-Total data read = 621 Megs, BUF: 24M FREE = 10M startpos = 586M
-End of data flow
-Dropping children
-Dropping child 10.0.1.35
-All children dropped
-Client says dad disconnected
-Client says he has finished
-Client has finished transfer
-Busy clients: 0 -- connected : 1
-Peer closed connection on socket 6
-close_connection(6)
-Busy clients: 0 -- connected : 0
-All clients left, I quit
-Total data sent = 627 Megs, in 34011 packets
-Transfer time = 127.140 seconds, throughput = 4.937 Mbytes/second
-The pipeline was emptied in 1.549 seconds
-</pre><p>
- </p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2523463"></a>5.2.KA client side</h3></div></div></div><p>
- Just launch <span class="bold"><strong>/mnt/ka/ka/status_node.pl IPADD</strong></span> to get log of the KA client.
- </p><pre class="programlisting">
-10.0.1.35&gt; ------| Ka |---- Install starting...
-10.0.1.35&gt; Current session is -s kainstall1
-10.0.1.35&gt; Receiving partitions information...OK
-10.0.1.35&gt; Cleaning hard drive...
-10.0.1.35&gt; ==&gt; /tmp/kacmd &lt;==
-10.0.1.35&gt; Starting log server..
-10.0.1.35&gt;
-10.0.1.35&gt; ==&gt; /tmp/ka_log-10.0.1.35-20071024-10h32 &lt;==
-10.0.1.35&gt; OK
-10.0.1.35&gt; Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
-10.0.1.35&gt; Building a new DOS disklabel with disk identifier 0x59be1427.
-10.0.1.35&gt; Changes will remain in memory only, until you decide to write them.
-10.0.1.35&gt; After that, of course, the previous content won't be recoverable.
-10.0.1.35&gt;
-10.0.1.35&gt;
-10.0.1.35&gt; The number of cylinders for this disk is set to 1116.
-10.0.1.35&gt; There is nothing wrong with that, but this is larger than 1024,
-10.0.1.35&gt; and could in certain setups cause problems with:
-10.0.1.35&gt; 1) software that runs at boot time (e.g., old versions of LILO)
-10.0.1.35&gt; 2) booting and partitioning software from other OSs
-10.0.1.35&gt; (e.g., DOS FDISK, OS/2 FDISK)
-10.0.1.35&gt; Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
-10.0.1.35&gt;
-10.0.1.35&gt; Command (m for help): The partition table has been altered!
-10.0.1.35&gt;
-10.0.1.35&gt; Calling ioctl() to re-read partition table.
-10.0.1.35&gt; Syncing disks.
-10.0.1.35&gt; Writing partition table for sda using fdisk...OK
-10.0.1.35&gt; Formatting /dev/sda5 as ext3...OK
-10.0.1.35&gt; Formatting /dev/sda1 as swap...OK
-10.0.1.35&gt; - Mounting /dev/sda5 as /mnt/disk/ ......OK
-10.0.1.35&gt; ++++++++++++++++++++++++++
-10.0.1.35&gt; rootfs on / type rootfs (rw)
-10.0.1.35&gt; /proc on /proc type proc (rw)
-10.0.1.35&gt; none on /sys type sysfs (rw)
-10.0.1.35&gt; none on /proc/bus/usb type usbfs (rw)
-10.0.1.35&gt; /dev/ram3 on /tmp/stage2 type ext2 (rw)
-10.0.1.35&gt; /dev/sda5 on /mnt/disk type ext3 (rw,data=ordered)
-10.0.1.35&gt; ++++++++++++++++++++++++++
-10.0.1.35&gt; Linux copy is about to start
-10.0.1.35&gt; Server IP is 10.0.1.40
-10.0.1.35&gt; Buffers names :pipe
-Total data received = 620 Megs (11.222 Mbytes/sec); BUF :0M End of data flow
-10.0.1.35&gt; Flushing buffers
-10.0.1.35&gt; Total data received = 627 Megs, in 434960 packets
-10.0.1.35&gt; Elapsed time = 128.482 seconds, throughput = 4.886 Mbytes/second
-10.0.1.35&gt; Syncing disks...OK
-10.0.1.35&gt; Linux copy done.
-10.0.1.35&gt; Creating excluded directories
-10.0.1.35&gt; - bootloader is grub --with=jfs --with=ata_piix (user choice and options)
-10.0.1.35&gt; - Removing duplicated dhcp cache
-10.0.1.35&gt; - Writing modprobe.conf
-10.0.1.35&gt; ********************
-10.0.1.35&gt; install scsi_hostadapter /sbin/modprobe aic7xxx; /sbin/modprobe ata_piix; /bin/true
-10.0.1.35&gt; alias eth0 eepro100
-10.0.1.35&gt; alias eth1 eepro100
-10.0.1.35&gt; ********************
-10.0.1.35&gt; - Remove ude network rules
-10.0.1.35&gt; removed `/mnt/disk/etc/udev/rules.d/61-net_config.rules'
-10.0.1.35&gt; - Running mkinitrd
-10.0.1.35&gt; Looking for default grub menu
-10.0.1.35&gt; - erase old initrd.img link
-10.0.1.35&gt; removed `/mnt/disk/boot/initrd.img'
-10.0.1.35&gt; initrd will be : /boot/initrd-2.6.22.9-desktop-1mdv.img
-10.0.1.35&gt; running: chroot /mnt/disk /sbin/mkinitrd -v -f --with=jfs /boot/initrd-2.6.22.9-desktop-1mdv.img 2.6.22.9-desktop-1mdv
-10.0.1.35&gt; Looking for deps of module aic7xxx
- 10.0.1.35&gt; scsi_transport_spi scsi_mod
-10.0.1.35&gt; Looking for deps of module scsi_transport_spi
- 10.0.1.35&gt; scsi_mod
-10.0.1.35&gt; Looking for deps of module scsi_mod
-10.0.1.35&gt; skip dups
-10.0.1.35&gt; Looking for deps of module sd_mod
- 10.0.1.35&gt; scsi_mod
-10.0.1.35&gt; Looking for deps of module scsi_wait_scan
- 10.0.1.35&gt; scsi_mod
-10.0.1.35&gt; Looking for deps of module ext3
- 10.0.1.35&gt; jbd
-10.0.1.35&gt; Looking for deps of module jbd
-10.0.1.35&gt; Looking for deps of module jfs
-10.0.1.35&gt; Using modules: /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_mod.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_transport_spi.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/aic7xxx/aic7xxx.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/sd_mod.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_wait_scan.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/jbd/jbd.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/ext3/ext3.ko /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/jfs/jfs.ko
-10.0.1.35&gt; Using /tmp as temporary directory.
-10.0.1.35&gt; /sbin/nash -&gt; /tmp/initrd.tG1408/bin/nash
- 10.0.1.35&gt; /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_mod.ko.gz: 60.6%
- 10.0.1.35&gt; /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_transport_spi.ko.gz: 63.1%
- 10.0.1.35&gt; /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/aic7xxx/aic7xxx.ko.gz: 61.4%
- 10.0.1.35&gt; /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/sd_mod.ko.gz: 60.2%
- 10.0.1.35&gt; /lib/modules/2.6.22.9-desktop-1mdv/kernel/drivers/scsi/scsi_wait_scan.ko.gz: 77.3%
- 10.0.1.35&gt; /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/jbd/jbd.ko.gz: 60.5%
- 10.0.1.35&gt; /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/ext3/ext3.ko.gz: 53.9%
- 10.0.1.35&gt; /lib/modules/2.6.22.9-desktop-1mdv/kernel/fs/jfs/jfs.ko.gz: 51.4%
-10.0.1.35&gt; Loading module scsi_mod.ko
-10.0.1.35&gt; Loading module scsi_transport_spi.ko
-10.0.1.35&gt; Loading module aic7xxx.ko
-10.0.1.35&gt; Loading module sd_mod.ko
-10.0.1.35&gt; Loading module scsi_wait_scan.ko
-10.0.1.35&gt; Loading module jbd.ko
-10.0.1.35&gt; Loading module ext3.ko
-10.0.1.35&gt; Loading module jfs.ko
-10.0.1.35&gt; /usr/sbin/resume -&gt; /tmp/initrd.tG1408/bin
-10.0.1.35&gt; Contents of RCFILE:
-10.0.1.35&gt; #!/bin/nash
-10.0.1.35&gt;
-10.0.1.35&gt; echo "Loading scsi_mod.ko module"
-10.0.1.35&gt; insmod /lib/scsi_mod.ko
-10.0.1.35&gt; echo "Loading scsi_transport_spi.ko module"
-10.0.1.35&gt; insmod /lib/scsi_transport_spi.ko
-10.0.1.35&gt; echo "Loading aic7xxx.ko module"
-10.0.1.35&gt; insmod /lib/aic7xxx.ko
-10.0.1.35&gt; echo "Loading sd_mod.ko module"
-10.0.1.35&gt; insmod /lib/sd_mod.ko
-10.0.1.35&gt; echo "Loading scsi_wait_scan.ko module"
-10.0.1.35&gt; insmod /lib/scsi_wait_scan.ko
-10.0.1.35&gt; echo "Loading jbd.ko module"
-10.0.1.35&gt; insmod /lib/jbd.ko
-10.0.1.35&gt; echo "Loading ext3.ko module"
-10.0.1.35&gt; insmod /lib/ext3.ko
-10.0.1.35&gt; echo "Loading jfs.ko module"
-10.0.1.35&gt; insmod /lib/jfs.ko
-10.0.1.35&gt; echo Mounting /proc filesystem
-10.0.1.35&gt; mount -t proc /proc /proc
-10.0.1.35&gt; echo Mounting sysfs
-10.0.1.35&gt; mount -t sysfs none /sys
-10.0.1.35&gt; echo Creating device files
-10.0.1.35&gt; mountdev size=32M,mode=0755
-10.0.1.35&gt; mkdevices /dev
-10.0.1.35&gt; echo Creating root device
-10.0.1.35&gt; mkrootdev /dev/root
-10.0.1.35&gt; resume
-10.0.1.35&gt; echo 1 &gt; /sys/power/suspend2/do_resume
-10.0.1.35&gt; echo 1 &gt; /sys/power/tuxonice/do_resume
-10.0.1.35&gt; echo Mounting root filesystem /dev/root with flags relatime
-10.0.1.35&gt; mount -o relatime --ro -t ext3 /dev/root /sysroot
-10.0.1.35&gt; echo Switching to new root
-10.0.1.35&gt; switchroot --movedev /sysroot
-10.0.1.35&gt; echo Initrd finished
-10.0.1.35&gt; First drive will be: /dev/sda
-10.0.1.35&gt; Installation finished. No error reported.
-10.0.1.35&gt; This is the contents of the device map /boot/grub/device.map.
-10.0.1.35&gt; Check if this is correct or not. If any of the lines is incorrect,
-10.0.1.35&gt; fix it and re-run the script `grub-install'.
-10.0.1.35&gt;
-10.0.1.35&gt; (hd0) /dev/sda
-10.0.1.35&gt; (hd1) /dev/sdb
-10.0.1.35&gt; umount: /mnt/disk/dev: not mounted
-10.0.1.35&gt; Umounting /dev/sda5...OK
-10.0.1.35&gt; AUTH not understood
-10.0.1.35&gt; Local directory now /tmp
-exec lsmod
-10.0.1.35&gt; &lt;console&gt;
-10.0.1.35&gt; &lt;console&gt;
-10.0.1.35&gt; &lt;console&gt; exec lsmod
-10.0.1.35&gt; Module Size Used by
-10.0.1.35&gt; aic7xxx 167992 0
-10.0.1.35&gt; scsi_transport_spi 22432 1 aic7xxx
-10.0.1.35&gt; ata_piix 12228 0
-10.0.1.35&gt; libata 109424 1 ata_piix
-10.0.1.35&gt; sr_mod 15044 0
-10.0.1.35&gt; sd_mod 25888 0
-10.0.1.35&gt; scsi_mod 124908 5 aic7xxx,scsi_transport_spi,libata,sr_mod,sd_mod
-10.0.1.35&gt; loop 14212 0
-10.0.1.35&gt; jfs 176708 0
-10.0.1.35&gt; xfs 528088 0
-10.0.1.35&gt; reiserfs 247908 0
-10.0.1.35&gt; ext3 118824 0
-10.0.1.35&gt; jbd 50184 1 ext3
-10.0.1.35&gt; vfat 10816 0
-10.0.1.35&gt; nls_iso8859_1 4672 0
-10.0.1.35&gt; nls_cp437 6304 0
-10.0.1.35&gt; fat 45980 1 vfat
-10.0.1.35&gt; isofs 31452 0
-10.0.1.35&gt; piix 9060 0 [permanent]
-10.0.1.35&gt; ide_cd 35488 0
-10.0.1.35&gt; ide_disk 14496 0
-10.0.1.35&gt; ide_core 99396 3 piix,ide_cd,ide_disk
-10.0.1.35&gt; af_packet 17960 0
-10.0.1.35&gt; eepro100 28432 0
-10.0.1.35&gt; mii 5376 1 eepro100
-10.0.1.35&gt; usbkbd 6304 0
-10.0.1.35&gt; uhci_hcd 22736 0
-10.0.1.35&gt; usbcore 113928 3 usbkbd,uhci_hcd
-</pre></div></div></div></body></html>
diff --git a/docs/ka_method/html/styleguibo.css b/docs/ka_method/html/styleguibo.css
deleted file mode 100644
index 9d088cc93..000000000
--- a/docs/ka_method/html/styleguibo.css
+++ /dev/null
@@ -1,296 +0,0 @@
-/* Documentation specific changes */
-
-span.guilabel {
- padding: 0px, 1px, 0px, 1px;
- margin: 1px;
- background: #e6e6e6;
- border-style: none;
-}
-
-span.guimenu, span.guimenuitem, .guibutton {
- padding: 0px, 1px, 0px, 1px;
- margin: 1px;
- border-top: 1px solid #eeeeee;
- border-right: 2px solid #cccccc;
- border-bottom: 2px solid #cccccc;
- border-left: 1px solid #eeeeee;
- background: #f5f5f5;
-}
-
-span.accel {
- text-decoration: underline;
-}
-
-pre.screen { background-color: #E0E0E0; }
-pre.programlisting { background-color: #E0E0E0; }
-
-/* Colours borrowed from Firefox's keyboard shortcuts table */
-.keycap, .keysym {
- padding: 0px, 1px, 0px, 1px;
- margin: 1px;
- border-top: 1px solid #eedddd;
- border-right: 2px solid #bbaaaa;
- border-bottom: 2px solid #bbaaaa;
- border-left: 1px solid #eeeedd;
- background: #faf6f6;
- font-family: Courier, monospaced, mono;
-}
-
-
-/* Mandrakesoft.com website default */
-
-BODY {
- background-color: #ffffff;
- font-family: Arial, sans-serif;
- font-size: 14px;
- color: #333333;
-}
-
-.plinks {
- background-color: #ffffff;
- font-family: Arial, sans-serif;
- font-size: 13px;
- color: #333333;
-}
-
-TD {
- font-family: Arial, sans-serif;
- font-size: 15px;
- color: #333333;
-}
-
-FORM {
- display: inline;
-}
-
-A:link {
- text-decoration: none;
- color: #21449c;
-}
-
-A:visited {
- text-decoration: none;
- color: #21449c;
-}
-
-A:hover {
- text-decoration: underline;
- color: #21449c;
-}
-
-A:active {
- text-decoration: underline;
- color: #21449c;
-}
-
-INPUT, SELECT {
- font-size: 15px;
-}
-
-A.News {
- font-size: 13px;
- color: #333333;
-}
-
-h1 {
- font-family: Arial, sans-serif;
- font-size: 23px;
- font-weight: bold;
- color: #000000;
-}
-
-h2 {
- font-family: Arial, sans-serif;
- font-size: 18px;
- font-weight: bold;
- color: #21449c;
- display: inline;
-}
-
-h3 {
- font-family: Arial, sans-serif;
- font-size: 15px;
- font-weight: italic;
- color: #11649b;
- padding: 25px;
- display: inline;
-}
-
-h4 {
- font-family: Arial, sans-serif;
- font-size: 14px;
- padding: 45px;
- display: inline;
-}
-
-h3.div {
- font-family: Arial, sans-serif;
- font-size: 11px;
- padding: 45px;
- display: inline;
-}
-
-
-#MainTable {
- width: 900px;
-}
-
-
-#ContentTable {
- width: 719px;
-}
-
-.SelectedLinks {
- color: #333333;
- font-size: 15px;
- font-weight: bold;
- padding: 3px;
- background-color: #eeeeee;
-}
-
-
-.Footer {
- font-size: 14px;
- padding: 3px;
- background-color: #eeeeee;
-}
-
-
-.BoxTitle {
- font-size: 15px;
- color: #333333;
- padding-top: 2px;
- padding-bottom: 2px;
- font-weight: bold;
-}
-
-.BoxContent {
- font-size: 13px;
- color: #333333;
- padding-top: 2px;
- padding-bottom: 2px;
-}
-
-.SelectList {
- background-color: #ffffff;
- color: #333333;
- border-style: none;
-}
-
-.InputText {
- font-size: 15px;
- border-style: solid;
- background-color: #ffffff;
- border-color: #cccccc;
-}
-
-A.FocusTitle {
- color: #999999;
- font-weight: bold;
- font-size: 15px;
- font-decoration: none;
-}
-
-.HomeLink, A.HomeLink {
- color: #21449c;
- font-size: 15px;
-}
-
-.HomeNewsDate {
- color: #21449c;
- font-size: 13px;
-}
-
-.text {
- font-family: Arial, sans-serif;
- font-size: 15px;
- color : #333333;
-}
-
-.texte {
- font-family: Arial, sans-serif;
- font-size: 15px;
- color : #333333;
-}
-
-.text4form {
- font-family: Arial, sans-serif;
- font-size: 15px;
- color: #333333;
-}
-
-
-.titre1 {
- font-family: Arial, sans-serif;
- font-size: 15px;
- font-weight: bold;
- color: #21449c;
-}
-
-.titre2 {
- font-family: Arial, sans-serif;
- font-size: 15px;
- font-weight: bold;
- color: #21449c;
- display: inline;
-}
-
-.titre3 {
- font-family: Arial, sans-serif;
- font-size: 15px;
- font-weight: bold;
- color: #333333;
-}
-
-.textbox {
- font-family: Arial, sans-serif;
- text-align: left;
- font-size: 15px;
- color: #000000;
-}
-
-.newsdate {
- font-family: Arial, sans-serif;
- font-size: 15px;
- color: #000000;
-}
-
-.date {
- font-family: Arial, sans-serif;
- font-size: 13px;
- font-weight: normal;
- color: #333333;
-}
-
-.note {
- font-family: Arial, sans-serif;
- font-size: 13px;
- color: #333366;
-}
-
-.inzedark {
- font-family: Arial, sans-serif;
- font-size: 13px;
- color: #ffffff;
-}
-
-.titrinzedark {
- font-family: Arial, sans-serif;
- font-size: 13px;
- font-weight: bold;
- color: #ffffff;
-}
-
-.TitreHome1 {
- font-family: Arial, sans-serif;
- font-size: 21px;
- font-weight: bold;
- color: #acacac;
- }
-
-.TitreHome2 {
- font-family: Arial, sans-serif;
- font-size: 18px;
- font-weight: bold;
- color: #21449c;
- }
diff --git a/docs/mastering-tool-for-restore-cd b/docs/mastering-tool-for-restore-cd
index f915b5059..f40db4d77 100644
--- a/docs/mastering-tool-for-restore-cd
+++ b/docs/mastering-tool-for-restore-cd
@@ -9,7 +9,7 @@ it typically contains:
isolinux/isolinux.bin
isolinux/isolinux.cfg
isolinux/vmlinuz
- install/stage2/rescue.clp
+ install/stage2/rescue.sqfs
data/box.XXX #######################################################
@@ -27,11 +27,11 @@ it typically contains:
- isolinux.cfg customized to call directly save_all or rest_all
(with option keepmounted for rest_all)
- install/stage2/rescue.clp ##########################################
+ install/stage2/rescue.sqfs ##########################################
- compressed loopback containing a iso9660 filesystem.
- it is mostly the same as the mdv rescue.clp, *plus* partimage_whole_disk
- (nb : use extract_compressed_fs/create_compressed_fs to expand/create rescue.clp)
+ it is mostly the same as the mdv rescue.sqfs, *plus* partimage_whole_disk
+ (nb : use extract_compressed_fs/create_compressed_fs to expand/create rescue.sqfs)
Mastering process ##############################################################
@@ -80,5 +80,5 @@ Build process ##################################################################
- in gi/rescue, call
./make_partimage_save_rest_all partimage-0.6.4-7mdk.i586.rpm /var/lib/partimage /data/box.XXX
- => it calls ./make_rescue_img with special options to create a special rescue.clp
+ => it calls ./make_rescue_img with special options to create a special rescue.sqfs
=> generates part_save_all.iso and part_rest_all.iso
diff --git a/globetrotter/.perl_checker b/globetrotter/.perl_checker
deleted file mode 100644
index 444722de3..000000000
--- a/globetrotter/.perl_checker
+++ /dev/null
@@ -1,8 +0,0 @@
-Carp::Heavy
-Digest::base
-Gtk2::Gdk::Keysyms
-Net::Ping
-packdrake
-urpm
-warnings
-Packdrakeng
diff --git a/globetrotter/ChangeLog b/globetrotter/ChangeLog
deleted file mode 100644
index 9dad9b73a..000000000
--- a/globetrotter/ChangeLog
+++ /dev/null
@@ -1,276 +0,0 @@
-2005-06-09 13:43 Thierry Vignaud <tvignaud at mandriva.com>
-
- * Makefile: (changelog) only track HEAD changes
-
-2005-06-09 13:07 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: - sync with DrakX's API - add a few comments - we only
- need 4.6Gb for packages now (the DVD image) - update package
- list: o for 10.0 -> LE2005 changes (eg: switch to dkms and the
- like) o install all languages (marketing request) o install
- multimedia plugins & Java runtime environment o do not unselect
- anymore input methods
-
-2005-06-09 12:58 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: (installPackages) help packages' post-install scripts
-
-2005-06-09 12:58 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: (installPackages) help DrakX more
-
-2005-06-09 12:55 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: detect both old and new LaCie models
-
-2005-06-09 12:52 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: prevent building a disk w/o translation catalogs
-
-2005-06-09 12:50 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: prevent warning message about /proc to appear at boot
-
-2005-06-09 12:49 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: - urpmi syntax had changed - install all new media
-
-2005-06-09 12:48 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: devfs is dead
-
-2005-06-09 12:46 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: save X.org conf too on profile switch
-
-2005-06-09 12:31 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: set $::build_globetrotter
-
-2005-06-09 12:13 Thierry Vignaud <tvignaud at mandriva.com>
-
- * move.pm: (install2::configMove) prevent dm service to fail to
- startup because of /tmp/.font-unix's permissions
-
-2005-06-09 12:11 Thierry Vignaud <tvignaud at mandriva.com>
-
- * move.pm: (install2::configMove) workaround init reading inittab
- before any.pm alters it
-
-2005-06-09 12:09 Thierry Vignaud <tvignaud at mandriva.com>
-
- * move.pm: sync with drakx's API
-
-2005-06-09 12:08 Thierry Vignaud <tvignaud at mandriva.com>
-
- * move.pm: (automatic_xconf) class_discard is needed way earlier
-
-2005-06-09 12:07 Thierry Vignaud <tvignaud at mandriva.com>
-
- * move.pm: (install2::configMove) fix killing X11 due to XFree86 ->
- X.org switch
-
-2005-06-09 12:06 Thierry Vignaud <tvignaud at mandriva.com>
-
- * move.pm: (install2::configMove) if formatError() returns nothing,
- better display the raw error
-
-2005-06-09 11:59 Thierry Vignaud <tvignaud at mandriva.com>
-
- * Makefile: fix build
-
-2005-06-09 11:59 Thierry Vignaud <tvignaud at mandriva.com>
-
- * .perl_checker: blacklist more pakcages
-
-2005-06-09 11:58 Thierry Vignaud <tvignaud at mandriva.com>
-
- * runstage2: fix comment
-
-2005-06-02 05:20 Olivier Blin <oblin at mandriva.com>
-
- * hwprofile: fix netprofile stuff
-
-2005-05-25 10:56 Thierry Vignaud <tvignaud at mandriva.com>
-
- * fix-broken-hd.diff: fix broken hd
-
-2005-05-25 10:45 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: unmount partitions even when failled
-
-2005-05-25 10:41 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: display message earlier
-
-2005-05-25 10:40 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: on restoration, tell which one is the packages
- partition when found
-
-2005-05-25 10:39 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: nicely tell that the restoration is completed
-
-2005-05-25 10:39 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: use newly introduced my_exit() in order to display
- better messages
-
-2005-05-25 10:37 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: (my_exit) introduce it for smoother messages
-
-2005-05-25 10:36 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: handle smoothly packages partition with multiple
- kernel packages
-
-2005-05-25 10:35 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: fix fs checking prior to restoration, thus handling
- restoration on fscked hard disks
-
-2005-05-25 10:34 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: when we format the root fs prior to restoring the hd,
- set back the label on the fs so that we can handle an aborted
- restoration (power outrage, ...)
-
-2005-05-25 10:33 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: factorize some code through find_partition()
-
-2004-10-26 17:18 Thierry Vignaud <tvignaud at mandriva.com>
-
- * make_live: do not try to run killall until it has been installed
-
-2004-10-07 02:44 Pixel <pixel at mandriva.com>
-
- * move.pm: - XFdrake can detect a auxmouse which was not detected
- by mousedrake so we need to call various_xfree_conf() - this
- implies adding parameter $do_pkgs to a few functions
-
-2004-08-27 08:11 Thierry Vignaud <tvignaud at mandriva.com>
-
- * ChangeLog: initial commit
-
-2004-08-27 08:10 Thierry Vignaud <tvignaud at mandriva.com>
-
- * Makefile: add changelog target
-
-2004-07-20 04:42 Pixel <pixel@mandrakesoft.com>
-
- * hwprofile, move.pm, runstage2: MandrakeSoft -> Mandrakesoft
-
-2004-07-09 04:47 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: sometimes grub return non zero exit status w/o error
-
-2004-07-09 04:46 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: kill debug message
-
-2004-07-09 04:16 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: do not complain about unmounted usb fs in recue mode
-
-2004-07-09 03:45 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: fix restore mode (initrd's mount failled to mount ext2
- as ext3)
-
-2004-06-30 10:14 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * doc/BUILD: fix build explanation (else make_live will horribly
- die due to missing functions :-()
-
-2004-06-30 09:25 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * doc/BUILD: update how to build instructions
-
-2004-06-30 08:13 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * doc/BUILD: do not forget to update hdlists
-
-2004-06-30 08:12 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * README: fix required packages list
-
-2004-06-30 07:24 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: display a nicer error message when disk is not found
-
-2004-06-29 08:25 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: fix umounting
-
-2004-06-29 05:28 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: unselect uim since mdk10 package of uim IM break first
- time wizard when selecting english
-
-2004-06-29 04:09 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: perl_checker cleanups
-
-2004-06-29 03:36 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: add rescue support
-
-2004-06-24 11:41 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: (installPackages) kill debugging statements
-
-2004-06-24 10:17 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * hwprofile: create hw profile after having run first time wizard
- so that if one refuse the icense, he has to run it again
-
-2004-06-24 07:39 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: make share partition be writeable by unpriviliegied
- users
-
-2004-06-24 07:33 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: add fb2png in order to be able to take screenshots
-
-2004-06-24 07:31 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: per machine firewall configuration
-
-2004-06-18 05:44 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: force installation of both 2.4.x and 2.6.x centrino
- drivers
-
-2004-06-18 05:44 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: - use labels for home and packages partitions too -
- mount packages partition in read-only mode
-
-2004-06-18 04:08 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * make_live: install autologin as requested by QA
-
-2004-06-15 18:56 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * README: update package versions to reflect current globetrotter
-
-2004-06-15 18:54 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * README: update what's required in new initscripts
-
-2004-06-15 18:50 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * .perl_checker, Makefile, README, hwprofile, make_live,
- mandrake-globetrotter.spec, move.pm, runstage2, doc/BUGS,
- doc/BUILD, doc/NOTES: Imported Globetrotter
-
-2004-06-15 18:50 Thierry Vignaud <tvignaud@mandrakesoft.com>
-
- * .perl_checker, Makefile, README, hwprofile, make_live,
- mandrake-globetrotter.spec, move.pm, runstage2, doc/BUGS,
- doc/BUILD, doc/NOTES: Initial revision
-
diff --git a/globetrotter/Makefile b/globetrotter/Makefile
deleted file mode 100644
index d6a0756cd..000000000
--- a/globetrotter/Makefile
+++ /dev/null
@@ -1,97 +0,0 @@
-PACKAGE=mandrake-globetrotter
-PKGVERSION:=$(shell rpm -q --qf '%{VERSION}\n' --specfile $(PACKAGE).spec|head -n 1)
-RELEASE:=$(shell rpm -q --qf '%{RELEASE}\n' --specfile $(PACKAGE).spec|head -n 1)
-TAG := $(shell echo "V$(PKGVERSION)_$(RELEASE)" | tr -- '-.' '__')
-
-DIRS=share/po
-PREFIX =
-
-SBINDIR = $(PREFIX)/usr/sbin
-LIBDIR = $(PREFIX)/usr/lib
-LIBDEST = $(LIBDIR)/libDrakX
-DATADIR = $(PREFIX)/usr/share
-
-LANG_FILES = pixmaps/langs
-DISTFILES = hwprofile *.spec share/po/*.po share/po/Makefile Makefile Makefile.config *.pm runstage2 $(LANG_FILES)
-
-.PHONY: all install clean
-
-all:
- rm -f share/po/DrakX.pot # force rebuild of po's
- make -C share/po mofiles
-
-
-localcopy: clean
- cd .. ; rm -rf $(PACKAGE)-$(PKGVERSION) ; cp -af globetrotter $(PACKAGE)-$(PKGVERSION)
- # include pixmaps for language selector:
- mkdir ../$(PACKAGE)-$(PKGVERSION)/{pixmaps,share}
- cp -af ../perl-install/pixmaps/langs ../$(PACKAGE)-$(PKGVERSION)/pixmaps/langs
- # include drakx modules for first time wizard :
- # cp -af ../perl-install/share/po ../$(PACKAGE)-$(PKGVERSION)/share/
- mkdir ../$(PACKAGE)-$(PKGVERSION)/share/po
- # cp -af ../perl-install/share/po/{fr.po,Makefile,i18n_compssUsers} ../$(PACKAGE)-$(PKGVERSION)/share/po
- cp -af ../perl-install/share/po/{*.po,Makefile} ../$(PACKAGE)-$(PKGVERSION)/share/po
- # enable fast build:
- perl -pi -e 's!^.*msgmerge.*\n!!' ../$(PACKAGE)-$(PKGVERSION)/share/po/Makefile
- cp -af ../perl-install/{help,pkgs,install*}.pm ../$(PACKAGE)-$(PKGVERSION)/
- echo 'ALLPMS = *.pm' > ../$(PACKAGE)-$(PKGVERSION)/Makefile.config
- @make nuke_perl
-
-
-install:
- install -d $(LIBDEST) $(DATADIR)/libDrakX/pixmaps/langs $(SBINDIR)
- install -m 644 *.pm $(LIBDEST)
- install -m 755 runstage2 $(SBINDIR)/mdkmove
- cp -f pixmaps/langs/lang-*.png $(DATADIR)/libDrakX/pixmaps/langs
- $(MAKE) -C share/po install PREFIX=$(PREFIX) SUDO= DATADIR=$(DATADIR) NAME=libDrakX2
-# %make -C po install SUDO= NAME=libDrakX2 LOCALEDIR=$(DEST)/usr/share/locale_special
-
-
-rpm: localrpm
-localrpm: localdist buildrpm
-
-srpm: localsrpm
-localsrpm: spec_test localdist buildsrpm
-
-localdist: cleandist localcopy tar
-
-cleandist:
- rm -rf ../$(PACKAGE)-$(PKGVERSION) ../$(PACKAGE)-$(PKGVERSION).tar.bz2
-
-spec_test:
- @if [[ -z "$(PKGVERSION)" ]]; then echo "unable to get spec version"; exit 3;fi
- @if [[ -z "$(RELEASE)" ]]; then echo "unable to get spec release"; exit 2;fi
-
-tar:
- cd ../$(PACKAGE)-$(PKGVERSION) && rm -rf debug.log `find -name CVS`
- cd ..; tar cfj $(PACKAGE)-$(PKGVERSION).tar.bz2 $(patsubst %,$(PACKAGE)-$(PKGVERSION)/%,$(DISTFILES))
- #cd ..; rm -rf $(PACKAGE)-$(PKGVERSION)
-
-buildrpm:
- rpm -ta ../$(PACKAGE)-$(PKGVERSION).tar.bz2
-
-buildsrpm:
- rpm -ts --nodeps ../$(PACKAGE)-$(PKGVERSION).tar.bz2
-
-# rules to build a distributable rpm
-
-dist: cleandist export tar
-
-export:
- cd ..; cvs export -d $(PACKAGE)-$(PKGVERSION) -r $(TAG) $(PACKAGE)
- cd ../$(PACKAGE)-$(PKGVERSION)
- cd ..;
- @make nuke_perl
-
-nuke_perl:
- find ../$(PACKAGE)-$(PKGVERSION) -name '*.pm' | xargs perl -pi -e 's/\s*use\s+(diagnostics|strict|vars|warnings).*//g'
-
-img:
- /usr/bin/lilo-bmp2mdk mode:0x103 progress:397,190,14,6,64+8 clear:600,800,64+8 pos:0,0 < BOOTGTROTTER-install-lilo-8bis.bmp > isolinux_boot.msg
-
-.PHONY: log changelog
-
-log: changelog
-
-changelog:
- cvs2cl --accum -W 400 -U ../../soft/common/username -F TRUNK
diff --git a/globetrotter/README b/globetrotter/README
deleted file mode 100644
index 7052212b3..000000000
--- a/globetrotter/README
+++ /dev/null
@@ -1,64 +0,0 @@
- Mandrakelinux GlobeTrotter, powered by LaCie Mobile Hard Drive project
- ======================================================================
-
-
-
-Requirements:
-=============
-
-1) packages:
-------------
-
-you need to have the distro repositery mounted in /export.
-
-on top of the mdk10.0 base + its updates, the following packages were
-updated from cooker:
-
-- misc bug fixes:
- o drakconf-10-13mdk
- o {drakxtools,harddrake}*-10-34.2mdk
- o mdkonline-1.1-2.1.100mdk
- o menudrake-0.7.4-8mdk
- o perl-Libconf*-0.33-2mdk
- o rpmdrake-2.1.3-5mdk
- o initscripts-7.06-49.1mdk:
- * usb starting when usb host drivers were loaded by initrd
- * fix larsen on laptops
-- root=LABEL=foobar and boot from USB support:
- o mkinitrd-3.5.18-10mdk
- o bootloader-utils-1.7-1mdk
-- coexistance:
- o glibc with /etc/ld.so.conf.d/ support
- o ATI driver
- o NIVIDIA driver
-- new packages:
- o kdetv, libkdevideo
-- should we also take new kernel?
-
-Note: once you've updated some packages, you need to run "gendistrib
- /export".
-
-
-2) local checkout of drakx:
----------------------------
-
-you need a copy of gi/perl-install in ../perl-install as well as
-gi/mdk-stage1.
-
-you need to install the following packages: gcc, e2fsprogs,
-ldetect-devel, libext2fs2-devel, libxfree86-devel, perl-devel,
-perl-URPM, rpm-devel, rpmtools, and urpmi.
-
-then you need to type "make c" in ../perl-install.
-
-last but not least, you need to copy list_modules from gi/kernel into
-perl-install and gi/mdk-stage1/pcmcia_/probe.c into perl-install/c.
-
-
-
-Building the hd image:
-======================
-
-just type ./make_live
-
-it'll reformat the hard disk, mount it and install packages \ No newline at end of file
diff --git a/globetrotter/doc/BUGS b/globetrotter/doc/BUGS
deleted file mode 100644
index 97ff5d8b0..000000000
--- a/globetrotter/doc/BUGS
+++ /dev/null
@@ -1,6 +0,0 @@
--*- outline -*-
-
-* drakboot and diskdrake are not yet fully capable of managing LABEL= in
-/tc/fstab
-
-* lilo failed to boot from USB
diff --git a/globetrotter/doc/BUILD b/globetrotter/doc/BUILD
deleted file mode 100644
index 108c44650..000000000
--- a/globetrotter/doc/BUILD
+++ /dev/null
@@ -1,28 +0,0 @@
- How to build Mandrakelinux Globetrotter:
- ========================================
-
-- you need first to install all the drakxtools' build dependancies
- (thus running "urpmi /SRPMS/drakxtools-*" may be quite helpful)
-
-- copy the mdk10.0 DVD in /export
-- leave main as Mandrake/RPMS
-- copy h[cs]f*, FlashPlayer*, RealPlayer* into Mandrake/RPMS from Mandrake/RPMS[23]
-- move contribs as Mandrake/RPMS2
-- move other RPMS? somewhere else
-- add packages from ~tv/rpm/lacie on cluster
-- add updates from /mnt/BIG/dis/updates/10.0
-- add updated proprietary packages for kernel update from kameha
- (nplanel's work machine):
- echo "mget *2.4.25.5mdk* *2.6.3.13mdk*" | \
-lftp -u a,a ftp://kameha:/~/../nplanel/rpm/prop/RPMS/i586/
-- run the following in order to remove duplicated packages:
- doble [A-Z] | xargs rm -f
- doble [a-g] | xargs rm -f
- doble [h-z] | xargs rm -f
-- run "gendistrib --noclean /export"
-- plug the LaCie disk
-- check out the whole gi cvs module
-- run "C_DRAKX=1 make c" in gi/perl-install
-- go into gi/globetrotter
-- run make_live --partition --format --install --post in order to
- prepare the disk
diff --git a/globetrotter/doc/NOTES b/globetrotter/doc/NOTES
deleted file mode 100644
index 5a43af0e2..000000000
--- a/globetrotter/doc/NOTES
+++ /dev/null
@@ -1,17 +0,0 @@
- Mandrakelinux GlobeTrotter release notes
-
-
-
-* Arabic support
-
-
-you may want to enable the acon service from the acon package.
-Just type: "chkconfig --add jserver" as root or use the "Services"
-icon from the Mandrakelinux Control Center
-
-
-* Japanese support
-
-you may want to enable the jserver service from the FreeWnn package.
-Just type: "chkconfig --add jserver" as root or use the "Services"
-icon from the Mandrakelinux Control Center \ No newline at end of file
diff --git a/globetrotter/fix-broken-hd.diff b/globetrotter/fix-broken-hd.diff
deleted file mode 100644
index 6ae7fa491..000000000
--- a/globetrotter/fix-broken-hd.diff
+++ /dev/null
@@ -1,127 +0,0 @@
---- make_live 2005-05-25 17:42:35.000000000 +0200
-+++ make_live 2005-05-25 17:46:41.000000000 +0200
-@@ -8,6 +8,7 @@
- use standalone;
- use interactive;
- use common;
-+use detect_devices;
- use partition_table;
- use fsedit;
- use fs;
-@@ -321,8 +322,116 @@
-
- $::prefix = $ARGV[0] || '/tmp/live_tree';
-
-+#===========================================================================
-+# Fix disk if it's a bogus one:
-+
-+my @packages2delete = qw(
-+ Mandrake/RPMS/uqm-data-0.3-1mdk.noarch.rpm
-+
-+ Mandrake/RPMS2/kernel24-tmb-2.4.25-6.tmb.1mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel24-tmb-2.4.25-7.tmb.1mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel24-tmb-2.4.25-7.tmb.2mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel24-tmb-enterprise-2.4.25-6.tmb.1mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel24-tmb-enterprise-2.4.25-7.tmb.1mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel24-tmb-enterprise-2.4.25-7.tmb.2mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel24-tmb-i686-up-4GB-2.4.25-6.tmb.1mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel24-tmb-i686-up-4GB-2.4.25-7.tmb.1mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel24-tmb-i686-up-4GB-2.4.25-7.tmb.2mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel24-tmb-source-2.4.25-7.tmb.2mdk.i586.rpm
-+
-+ Mandrake/RPMS2/kernel-tmb-2.6.4-1.tmb.8mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-tmb-enterprise-2.6.4-1.tmb.8mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-tmb-i686-up-4GB-2.6.4-1.tmb.8mdk-1-1mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-tmb-source-2.6.4-1.tmb.8mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-2.4.25.5mdk-3-7mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-2.6.3.15mdk-3-8mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-enterprise-2.4.25.5mdk-3-7mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-enterprise-2.6.3.15mdk-3-8mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-i686-up-4GB-2.4.25.5mdk-3-7mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-i686-up-4GB-2.6.3.15mdk-3-8mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-p3-smp-64GB-2.4.25.5mdk-3-7mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-p3-smp-64GB-2.6.3.15mdk-3-8mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-smp-2.4.25.5mdk-3-7mdk.i586.rpm
-+ Mandrake/RPMS2/kernel-win4lin-smp-2.6.3.15mdk-3-8mdk.i586.rpm
-+ );
-+
-+# misc paths;
-+my $pkgs_mount_path = "/mnt/mdk_pkgs";
-+my $rescue_path = "/rescue-glob";
-+my $cd_mount_path = "/mnt/cdrom-glob";
-+
-+# enable to retry fixing partitions if fixing failed:
-+my $__need2befixed_mark = "Mandrake/RPMS/NEED_TO_BE_FIXED";
-+my $need2befixed_mark = "$pkgs_mount_path/__need2befixed_mark";
-+
-+{
-+ mkdir_p($pkgs_mount_path);
-+
-+ my $cleaner = before_leaving {
-+ if (my $err = $@) {
-+ print "\n>> an error happened: $err\n";
-+ }
-+ print "Cleaning on end of fixing\n";
-+ eval { fs::umount($_) } foreach $pkgs_mount_path, $cd_mount_path;
-+ undef $@; # do not propagate fs::umount exceptions
-+ };
-+
-+ print "Checking if the packages partition needs to be fixed\n";
-+ # system("mount /dev/$pkg_dev->{device} $pkgs_mount_path");
-+ fs::mount($pkg_dev->{device}, $pkgs_mount_path, 'ext3');
-+ # my $pkgs_mount_path = "/home/qa/broken"; # FIXME: TESTING
-+
-+ if (any { -e "$pkgs_mount_path/$_" } @packages2delete, $__need2befixed_mark) {
-+ print "Preparing to fixing the partition packages...\n";
-+ touch($need2befixed_mark);
-+
-+ # Cleaning the packages so that we get back some free space:
-+ unlink("$pkgs_mount_path/$_") foreach @packages2delete;
-+
-+
-+ # Lookup rescue CD:
-+
-+ my $cdrom_path;
-+
-+ my @cdroms = map { $_->{device} } detect_devices::cdroms();
-+
-+ mkdir_p($cd_mount_path);
-+
-+ my ($found, $cdrom_dev);
-+
-+ foreach my $cdrom (@cdroms) {
-+ eval { fs::mount($cdrom, $cd_mount_path, 'iso9660', 1) } or next; # nicely handle empty drives
-+ if (-d "$cd_mount_path/$rescue_path") {
-+ $cdrom_dev = $cdrom;
-+ $found = 1;
-+ last;
-+ }
-+ fs:umount($cd_mount_path);
-+ }
-+ undef $@; # do not propagate fs::mount exceptions
-+
-+ if ($found) {
-+ warn "Found rescue CDROM on $cdrom_dev\n";
-+ } else {
-+ warn "I failed to found the rescue CDROM\nPress enter to return to the menu";
-+ <STDIN>;
-+ # TODO : replace by sg else if merged within make_live
-+ exit(0);
-+ }
-+
-+
-+ print "Fixing the partition packages... in progress\n";
-+ # Copy Mandrake/base with the newly generated hdlists from the old repositery;
-+ cp_af($_, "$pkgs_mount_path/Mandrake/base") foreach glob_("$cd_mount_path/$rescue_path/Mandrake/base/*");
-+ cp_af($_, "$pkgs_mount_path/Mandrake/RPMS") foreach glob_("$cd_mount_path/$rescue_path/Mandrake/pkgs/*");
-+ unlink($need2befixed_mark);
-+ print "Fixing the partition packages... done\n";
-+ }
-+}
-+
-+
- #===========================================================================
- # Building the disk:
- -d $::prefix or mkdir $::prefix;
- print "Making live in $::prefix directory.\n";
-
diff --git a/globetrotter/make_live b/globetrotter/make_live
deleted file mode 100755
index bbdb46a3b..000000000
--- a/globetrotter/make_live
+++ /dev/null
@@ -1,547 +0,0 @@
-#!/usr/bin/perl
-
-$::isInstall = 1; # for /root/drakx/ddebug.log
-
-use strict;
-#use lib qw(/usr/lib/libDrakX);
-use lib "../perl-install";
-use standalone;
-use interactive;
-use common;
-use detect_devices;
-use partition_table;
-use fsedit;
-use fs;
-use any;
-use pkgs;
-use class_discard;
-use run_program;
-use modules;
-use modules::modules_conf;
-use modules::any_conf;
-use log;
-
-# my $in = interactive->vnew;
-
-$::isStandalone = undef; # for /tmp/ddebug.log
-$::build_globetrotter = 1;
-$::no_ugtk_init = 1;
-
-my (%options, @new_ARGV);
-
-foreach (@ARGV) {
- if (/^--(.*)/) {
- $options{$1} = 1;
- } else {
- push @new_ARGV, $_;
- }
-}
-
-my $rescue;
-
-if ($0 =~ /restore_globetrotter/) {
- %options = (install => 1, post => 1);
- $rescue = 1;
-}
-
-@ARGV = @new_ARGV;
-
-if (!$rescue) {
- die qq(\%_install_langs is not set to "all" in /etc/rpm/macros) if cat_('/etc/rpm/macros') !~ /\%_install_langs\s*all/;
-}
-
-my @suggestions = (
- { mntpoint => "/", size => 4500 << 11, type => 0x483, ratio => 1, maxsize => 6000 << 11, fs_type => 'ext3' },
- # splited / and /usr:
- # { mntpoint => "/", size => 250 << 11, type => 0x483, ratio => 1, maxsize => 2000 << 11 },
- # { mntpoint => "/usr", size => 300 << 11, type => 0x483, ratio => 4, maxsize => 4000 << 11 },
- { mntpoint => "/home", size => 2000 << 11, type => 0x483, ratio => 3, fs_type => 'ext3' },
-
- # share partition with windows:
- { mntpoint => "/mnt/share", size => 2000 << 11, type => 0xb, ratio => 3, fs_type => 'vfat' },
- { mntpoint => "/mnt/packages", size => 5000 << 11, type => 0x483, ratio => 3, maxsize => 5000 << 11, fs_type => 'ext3' },
- # allocated last b/c end of disk is usually faster:
- { mntpoint => "swap", size => 64 << 11, type => 0x82, ratio => 1, maxsize => 500 << 11, fs_type => 'swap' },
- );
-
-
-sub get_hds() {
- my $all_hds = fsedit::get_hds();
- my $other;
- ($all_hds->{hds}, $other) = partition { $_->{usb_description} =~ /^LaCie|LaCie Hard( |)Drive USB/ } @{$all_hds->{hds}};
- my_exit("Your disk cannot be restored because it cannot be found!") if !$all_hds->{hds}[0];
- $all_hds, $all_hds->{hds}[0]; # $other
-}
-
-
-sub prepare_disk() {
- # repartion the hard disk:
- print "PARTITIONNING\n";
- my ($all_hds, $hd, $other) = get_hds();
- # partition_table::remove($hd, $_) while partition_table::get_normal_parts($hd);
- run_program::run("swapoff", "/dev/$all_hds->{hds}[0]{device}8") if any { /$all_hds->{hds}[0]{device}/ } cat_("/proc/partitions");
-
- partition_table::raw::zero_MBR_and_dirty($hd);
- fsedit::allocatePartitions($all_hds, \@suggestions);
- require diskdrake::interactive;
- require class_discard;
- # diskdrake::interactive::write_partitions(class_discard->new, $_, 'skip_check_rebootNeeded') foreach (@{$all_hds->{hds}});
- foreach (@{$all_hds->{hds}}) {
- local $::isStandalone = undef;
- print "WRITE PARTITION ON $_->{file}\n";
- diskdrake::interactive::write_partitions(class_discard->new, $_, 'skip_check_rebootNeeded')
- }
- # partition_table::write(@{$all_hds->{hds}});
- ($all_hds, $hd, $other);
-}
-
-
-sub formatdisk {
- my ($hd) = @_;
- print "FORMATTING\n";
- foreach (partition_table::get_normal_parts($hd)) {
- print qq(Formatting "$_->{device}" ($_->{mntpoint})\n);
- require fs::format;
- fs::format::part(undef, $_, $::prefix, undef) if !$::testing;
- }
-}
-
-
-#@ARGV <= 1 or die "usage: make_live [live_location=/tmp/live_tree]\n";
-
- if (!find { m!/proc/bus/usb! } run_program::get_stdout('mount')) {
- warn "USB service is *NOT* started" if !$rescue;
- run_program::get_stdout('service', 'usb', 'start');
- }
-
-sub my_exit {
- my ($msg) = @_;
- print "\n\n==============================================================\n\n";
- print $msg;
- print "\n\nPress <RETURN> to return back to menu\n\n";
- print "==============================================================\n\n";
- <STDIN>;
- c::_exit(0);
-}
-
-sub find_partition {
- my ($label, @parts) = @_;
- find { member(fs::type2fs($_), qw(ext2 ext3)) && chomp_(`e2label /dev/$_->{device} 2>/dev/root`) eq $label } @parts;
-}
-
-my $pkg_dev;
-if ($rescue) {
- system("mount -t tmpfs none /tmp");
- # let be able to see USB devices:
- system("mount -t usbfs none /proc/bus/usb");
- system("modprobe usb-storage; modprobe sd_mod");
- # let be able to detect SCSI hds:
- mkdir("/sys");
- system("mount -t sysfs none /sys");
-
- my ($all_hds, $hd, $other) = get_hds();
- print "Looking for the package partition\n";
- my @parts = partition_table::get_normal_parts($hd);
- $pkg_dev = find_partition("MDK-PKGS", @parts);
- #die "I cannot find the package partition which is needed in order to restore the system!"
- my_exit("Your disk cannot be restored because there is no more a restore partition!") if is_empty_hash_ref($pkg_dev) || !$pkg_dev->{device};
- print "Packages partition was found on $pkg_dev->{device}\n";
- my $root = find_partition("MDK-ROOT", @parts);
- $root = find { $_->{device} eq "sda1" } @parts if is_empty_hash_ref($root);
- #my_exit("I cannot find any hard disk to restore!") if is_empty_hash_ref($root) || !$root->{device};
- my_exit("Your disk cannot be restored because there is no more a root partition!") if is_empty_hash_ref($root) || !$root->{device};
- print "\nPlease wait, disk is being checked, this can take quite some time\n\n";
- run_program::run("e2fsck -C0 -y $_") foreach map {
- my $p = find_partition($_, @parts);
- if_($p, $p->{device}); # handle lost labels
- } "MDK-PKGS", "MDK-HOME"; # MDK-ROOT"
- print "Please wait, disk reinstallation is in progress, this can take quite some time\n";
- print "Formating $root->{device}\n";
- system("mkfs.ext2 -j /dev/$root->{device} > /dev/null\n");
- run_program::run('tune2fs', '-L', "MDK-ROOT", "/dev/$root->{device}"); # prevent lost label if restore aborts before the end
-}
-
-sub installPackages() {
- local $::testing = undef;
-
- # for a gconftool-2 cleaner:
- my $pid = fork();
- !defined $pid and die("cannot fork: $!");
- !$pid and do {
- while (1) {
- sleep(10);
- run_program::run('/usr/bin/killall', 'gconftool-2') if -x '/usr/bin/killall';
- }
- };
- my $_b = before_leaving { kill 'TERM', $pid if $pid };
-
- # ensure no %_install_langs:
- output_p("$::prefix/etc/rpm/macros", "%_install_langs all\n");
- # ensure boot from USB will work:
- output_p("$::prefix/etc/sysconfig/mkinitrd", "forceusb=yes\n");
-
- # help DrakX:
- mkdir_p("$::prefix/$_") foreach qw(tmp/headers var/lib/rpm root/drakx);
-
- # help packages' post scripts:
- mkdir_p("$::prefix/proc");
- run_program::run('mount', '-t', 'proc', 'none', "$::prefix/proc");
- run_program::run('makedev', "$::prefix/dev");
-
- undef *install_any::setDefaultPackages;
- *install_any::setDefaultPackages = sub {};
-
- undef *install_any::getFile;
- *install_any::getFile = sub {
- my ($f, $o_method) = @_;
- log::l("getFile $f:$o_method");
- open(my $F, '/export/' . install_any::relGetFile($f)) or return;
- $F;
- };
-
- undef *c::kernel_version;
- *c::kernel_version = sub {
- #my @l = glob_('/export/Mandrake/RPMS/kernel-enterprise-2.6*');
- my @l = glob_('/export/media/main/kernel-2.6.*');
- @l >= 1 or die "can't find kernel";
- @l <= 1 or warn "too many kernels";
- first(`rpm -qp --qf '%{name}' $l[-1]` =~ /kernel-(.*)/);
- };
-
- my $kernel_version = c::kernel_version();
- # for third party drivers:
- my $dkms_kernel_version = $kernel_version;
- $dkms_kernel_version =~ s/\.(\d*mdk)$/-$1/;
-
- print "INSTALLING\n";
- install_any::setPackages(my $o = $::o =
- bless {
- prefix => $::prefix,
- meta_class => 'desktop',
- modules_conf => modules::modules_conf::read(modules::any_conf::vnew(), '/tmp/modules.conf'),
- default_packages => [
- #- for screenshots:
- qw(fb2png),
- qw(xorg-x11-server xorg-x11-xfs xorg-x11-FBDev),
- qw(openssh-server), #- fred wants it
- qw(alsa-utils cdialog newt),
- qw(k3b-dvd),
- qw(davfs2 nfs-utils samba-server sane-backends xsane xsane-gimp ntp),
- qw(acpi acpid), #- so that removing acpi=ht will work
- qw(mountloop), #- crypted folders
- #- doc:
- (map { "mandrake-doc-$_" } map { ("Drakxtools-Guide-$_", "Command-Line-$_", "Quick-Startup-Plus-$_", "Starter-$_") } qw(de en es fr it)),
- qw(autologin),
- qw(synaptics),
- #- network conf:
- qw(wireless-tools pcmcia-cs),
- #- zeroconf:
- qw(zcip dhcpcd tmdns),
- #- cnx stuff:
- qw(dhcp-client ppp kdenetwork-kppp ppp-pppoatm ppp-pppoe pptp-linux pptp-adsl rp-pppoe),
- "kernel-$kernel_version",
- #- for older machines:
- "kernel-i586-up-1GB-$kernel_version",
- #- ISDN stuff:
- # qw(isdn4net ibod isdn4k-utils), # not installed since it provides an interface (will be automatically installed by drakconnect)
- #- network file sharing:
- qw(nfs-utils-clients samba-client),
- #- network drivers and firmwares:
- qw(eagle-usb ipw2100-firmware ipw2200-firmware ndiswrapper speedtouch speedtouch_mgmt unicorn),
- #- configuration:
- qw(drakconf drakcronat drakfirsttime drakxtools harddrake-ui mdkonline rpmdrake userdrake),
- qw(cups cups-drivers foomatic-db gimpprint hpoj libnet-snmp mtools mtoolsfm nmap printer-filters printer-testpages printer-utils scli xojpanel xpp), #- printer stuff
- #qw(gcc),
- "ati-kernel-$dkms_kernel_version", "nvidia-kernel-$dkms_kernel_version", qw(ati nvidia dkms patch dkms-ati dkms-nvidia libMesaGLU1),
- # qw(hcfpcimodem hsflinmodem ltmodem), #- 2.4.x only
- qw(xinput), #- for some mice
- qw(bash-completion binutils emacs-X11 ntsysv perl-doc perl-Term-Readline-Gnu vim-enhanced openssh-clients lftp diffstat), #- allow debugging
- qw(openssh-askpass-gnome), #- openssh-askpass for mountloop doesn't allow to click on ok/cancel buttons
- qw(clanbomber freeciv-client freeciv-server crack-attack kdegames), #- more games
- qw(numlock), # shorewall # not installed since its default config breaks network (will be automatically installed by drakfirewall)
- qw(xawtv zapping kdetv), #- tv apps
- #- locales:
- qw(scim-hangul scim-m17n scim-tables scim-uim), #- Input Methods
- (map { "locales-$_" } qw(af am ar as az be bg bn br bs ca cs cy da de el en eo es et eu fa fi fo fr fur fy ga gd gl gu gv he hi hr hu hy id ik is it iu ja ka kl km kn ko ku kw ky li lo lt lv mi mk ml mn mr ms mt nds ne nl no oc pa ph pl pt ro ru sc se sk sl sq sr st sv sw ta te tg th tk tr tt uk ur uz vi wa xh yi zh zu)),
- (map { "kde-i18n-$_" } qw(af ar az be bg bn br bs ca cs cy da de el en_GB eo es et eu fa fi fo fr ga gl he hi hr hsb hu id is it ja ko ku lo lt lv mi mk mn ms mt nb nds nl nn nso oc pa pl pt pt_BR ro ru se sk sl sr ss sv ta tg th tr uk uz ven vi wa wen xh zh_CN.GB2312 zh_TW.Big5 zu)),
- (map { "koffice-i18n-$_" } qw(af az bg br ca cs cy da de el en_GB eo es et fa fi fr he hsb hu it ja lo lt mt nb nl nn pl pt pt_BR ru se sk sl sr sv ta tg th tr uk ven xh zh_CN zh_TW zu)),
- (map { "OpenOffice.org-l10n-$_" } qw(af ar ca cs cy da de el en es et eu fi fr he hu it ja ko nb nl nn ns pl pt pt_BR ru sk sl sv tr zh_CN zh_TW zu)),
- #- for GNOME:
- qw(gnome2),
- qw(mozilla-firefox gnome-terminal), # QA request
- (map { "mozilla-firefox-$_" } qw(af br ca cs da de devel el es fi fr ga he hu it ja ko nb nl pl pt pt_BR register ro ru sk sl sv tr zh_CN zh_TW)),
- qw(dosfstools mtools),
- qw(koffice konsole),
- qw(udev dynamic harddrake hotplug mandrake-globetrotter netprofile),
- qw(alsa-utils),
- qw(mozilla-firefox),
- #- plugins:
- qw(acroread acroread-nppdf acroread-plugins FlashPlayer j2re RealPlayer RealPlayer-Codecs RealPlayer-rpnp),
- qw(kdebase-nsplugins kdebase-kcontrol-nsplugins),
- #- fonts:
- qw(xorg-x11-100dpi-fonts xorg-x11-75dpi-fonts),
- qw(fonts-bitmap-tscii fonts-hebrew-elmar),
- (map { "fonts-ttf-$_" } qw(arabic armenian bengali big5 decoratives dejavu ethiopic gb2312 japanese kannada korean latex tamil thai tscii vera west_european)),
- (map { "fonts-type1-$_" } qw(cyrillic greek hebrew)),
- ],
- }, 'install_any');
-
- my %rpmsrate_flags_chosen = map { $_ => 1 } map { @{$_->{flags}} } @{$o->{compssUsers}};
- $rpmsrate_flags_chosen{$_} = 0 foreach qw(CAT_NETWORKING_MAIL_SERVER);
- $rpmsrate_flags_chosen{$_} = 1 foreach qw(CAT_AUDIO CAT_KDE CAT_GNOME CAT_NETWORKING CAT_OFFICE CAT_SYSTEM CAT_MINIMAL_DOCS DVD USB SOUND BURNER UTF8 TV 3D INSTALL);
- $rpmsrate_flags_chosen{qq(LOCALES"$_")} = 1 foreach lang::langsLANGUAGE({ all => 1 });
- pkgs::setSelectedFromCompssList($o->{packages}, \%rpmsrate_flags_chosen, 4, 0);
-
- my $unselect = sub {
- my ($pkg) = @_;
- my $p = pkgs::packageByName($o->{packages}, $pkg);
- pkgs::unselectPackage($o->{packages}, $p) if $p;
- };
-
- $unselect->("kernel-smp-$kernel_version");
-
- # unselect some packages whose services fsck up the box and whose services are not enabled by appropriate tools:
- # (shorewall must be deselected before iptables is)
- $unselect->($_) foreach qw(at hpoj shorewall iptables ntp tmdns zcip );
-
- # unselect uim since uim IM break first time wizard when selecting english:
- #$unselect->($_) foreach qw(uim-applet uim libuim0);
-
- my @toInstall = pkgs::packagesToInstall($o->{packages});
- local $ENV{DURING_INSTALL} = 1;
- $ENV{LD_LIBRARY_PATH} = "/lib:/usr/lib:/usr/X11R6/lib:/usr/lib/qt3/lib";
- pkgs::install(0, \@toInstall, $o->{packages});
-
- eval { fs::mount::umount("$::prefix/proc") };
-}
-
-sub config_X_proprietary_drivers() {
- unlink "$::prefix/usr/lib/libGL.so";
-
- my %name_to_Driver = (NVIDIA_GLX => 'nvidia', ATI_GLX => 'fglrx');
-
- my $lib = 'libGL.so.1';
- symlinkf("/etc/X11/$lib", "$::prefix/usr/lib/$lib");
- foreach (keys %name_to_Driver) {
- my ($full_name) = run_program::rooted_get_stdout($::prefix, 'rpm', '-ql', $_) =~ m!/usr/lib/(\Q$lib\E\..*)! or die '';
- symlinkf($full_name, "$::prefix/usr/lib/$lib.$name_to_Driver{$_}");
- }
- #- remove the dirty hack done by NVIDIA_kernel-xxx proprietary package
- #- we do it by hand when needed
- substInFile { $_ = '' if $_ eq 'nvidia' } "$::prefix/etc/modules";
-}
-
-my $fstab;
-
-my $cleaner = before_leaving {
- if (my $err = $@) {
- print "\n>> an error happened: $err\n";
- }
- print "Cleaning on exiting\n";
- print "- Umounting partitions:\n";
- print "\tumounting /proc\n";
- eval { fs::mount::umount("$::prefix/proc") };
- # fs::umount("$::prefix/$_") foreach 'mnt/packages', 'mnt/share', 'home', '';
- if ($fstab) {
- print "\tumounting everything else\n";
- eval { fs::mount::umount_all($fstab) } or system("umount $::prefix");
- }
- print "\tumounting /tmp\n";
- eval { fs::mount::umount("/tmp") } if $rescue;
- print "Cleaning done\n";
-};
-
-
-$::prefix = $ARGV[0] || '/tmp/live_tree';
-
-
-#===========================================================================
-# Building the disk:
--d $::prefix or mkdir $::prefix;
-print "Making live in $::prefix directory.\n";
-
-
-my ($all_hds, $hd, $other) = do {
- # here we want testing so that diskdrake still set mount points in data structure:
- local $::testing = !$options{partition};
- prepare_disk();
-};
-
-formatdisk($hd) if $options{format};
-
-add2hash($hd, $other);
-
-undef $::testing;
-
-my @parts = partition_table::get_normal_parts($hd);
-
-my ($root) = grep { $_->{mntpoint} eq "/" } @parts;
-print "Root is $root->{device}\n";
-run_program::run('tune2fs', '-L', "MDK-ROOT", "/dev/$root->{device}");
-# fs::mount_part($root, $::prefix);
-$fstab = [ fs::get::fstab($all_hds) ];
-
-# we need to mount every fs we want to see into /etc/fstab !!!
-fs::mount::part($_) foreach sort { $a->{mntpoint} cmp $b->{mntpoint} } @$fstab;
-
-symlink("$::prefix/mnt/packages", "/export") if $rescue;
-
-eval {
- print "Installing packages\n";
- installPackages();
-} if $options{install};
-print "ERROR WHILE INSTALLING PACKAGES: $@\n" if $@;
-log::closeLog;
-
-sub doRootSubst {
- my ($file) = @_;
- substInFile {
- s!/dev/$root->{device}!LABEL=MDK-ROOT!g;
- } $file;
-}
-
-#fs::merge_info_from_mtab($fstab);
-fs::write_fstab($all_hds, $::prefix);
-append_to_file("$::prefix/etc/fstab",
- "none /dev/pts devpts mode=0620 0 0\n",
- "none /proc proc defaults 0 0\n");
-doRootSubst("$::prefix/etc/fstab");
-
-my ($home) = grep { $_->{mntpoint} eq "/home" } @parts;
-my ($mnt_pkgs) = grep { $_->{mntpoint} eq "/mnt/packages" } @parts;
-run_program::run('tune2fs', '-L', "MDK-HOME", "/dev/$home->{device}") if $home;
-run_program::run('tune2fs', '-L', "MDK-PKGS", "/dev/$mnt_pkgs->{device}") if $mnt_pkgs;
-
-substInFile {
- s!defaults\s!defaults,ro ! if m!/mnt/packages!;
- s!defaults\s!defaults,umask=0000 ! if m!/mnt/share!;
- s!/dev/$home->{device}!LABEL=MDK-HOME!g;
- s!/dev/$mnt_pkgs->{device}!LABEL=MDK-PKGS!g;
-} "$::prefix/etc/fstab";
-
-
-#-------------------------------------------------------------------
-#- Bootloader
-print "Configuring bootloader\n";
-system("modprobe loop");
-require keyboard;
-require bootloader;
-
-my $bootloader = {
- keytable => keyboard::keyboard2kmap(keyboard::lang2keyboard('fr')),
- bios => { '/dev/sda' => '0x80' },
- };
-
-bootloader::suggest($bootloader, $all_hds,
- vga_fb => 788,
- quiet => 1);
-
-$bootloader->{method} = 'lilo-graphic';
-
-eval { bootloader::install($bootloader, $all_hds) };
-
-doRootSubst("$::prefix/etc/lilo.conf");
-
-# fix LILO configuration:
-substInFile {
- s!root=(LABEL=MDK-ROOT)!root="\1"!g;
-} "$::prefix/etc/lilo.conf";
-
-run_program::rooted($::prefix, 'lilo');
-
-## disable ISDN by default (bogus isdn4net came with an enabled interface :-():
-#substInFile {
-# s/#ONBOOT.*/ONBOOT="no"/
-#} "$::prefix/etc/sysconfig/network-scripts/ifcfg-ippp0";
-#
-
-print "Post install misc configuration\n";
-
-
-# clean services:
-# cups-lpd ibod isdn4linux isdnlog)) {
-run_program::rooted($::prefix, '/sbin/chkconfig', '--del', $_) foreach qw(acon jserver oki4daemon);
-#foreach my $service (qw(acon atd cups-lpd hpoj ibod iptables isdn4linux isdnlog jserver ntpd oki4daemon shorewall tmdns)) {
-# run_program::rooted($::prefix, '/sbin/chkconfig', '--level', $_, $service, 'off') foreach qw(3 5);
-#}
-
-# probably useless:
-foreach my $service (qw(alsa dm harddrake hotplug sound)) {
- run_program::rooted($::prefix, '/sbin/chkconfig', '--level', $_, $service, 'on') foreach qw(3 5);
-}
-
-if ($options{post}) {
- #-------------------------------------------------------------------
- # save a few more files in profiles
- my $prof_cfg = "$::prefix/etc/netprofile/list";
- my @files = map { chomp_($_) } cat_($prof_cfg);
- # do not save the whole /etc/sysconfig;
- push @files, (map { "/etc/X11/$_" } qw(XF86Config XF86Config-4 xorg.conf)),
- (map { "/etc/sysconfig/$_" } qw(keyboard harddrake2/previous_hw harddisks)),
- (map { "/etc/$_" } qw(modprobe.conf modprobe.preload modules modules.conf)),
- qw(/etc/asound.state /etc/fstab /etc/ld.so.conf/GL.conf /etc/shorewall/);
-
- output($prof_cfg, join("\n", sort @files));
-
-
- #-------------------------------------------------------------------
- #- regenerate library loader and fonts cache
- run_program::rooted($::prefix, 'ldconfig');
- any::fix_broken_alternatives();
- run_program::rooted($::prefix, 'fc-cache'); #- generate cache in all directories mentioned in config file
-
- #- XFree
-
- touch("$::prefix/etc/menu/enable_simplified");
-
- {
- local $ENV{LC_ALL} = 'en_US'; #- update-menus doesn't work when there is no locale (aka locale "C")
- #local $ENV{HOME} = '/'; #- savekdemimetypes.pl needs this otherwise it's tmp file fails
- run_program::rooted($::prefix, 'update-menus', '-n');
- }
-
- run_program::rooted($::prefix, 'nspluginscan'); #- must be run before kbuildsycoca for the ksycoca to be flash plugin aware
-
- $ENV{HELP_BROWSER} = "kfmclient openProfile webbrowsing";
- $ENV{BROWSER} = "kfmclient openProfile webbrowsing";
- $ENV{DESKTOP} = "kde";
- #- faster boot:
- foreach my $lang (lang::list_langs()) {
- local $ENV{LC_ALL} = lang::getLANGUAGE($lang);
- unlink "$::prefix/usr/share/services/ksycoca";
- run_program::rooted($::prefix, 'kbuildsycoca', '--global');
- rename("$::prefix/usr/share/services/ksycoca", "$::prefix/usr/share/services/ksycoca-$lang");
- }
- symlinkf('/etc/X11/ksycoca', "$::prefix/usr/share/services/ksycoca");
-}
-
-# clean gconftool-2 mess:
-unlink $_ foreach glob("$::prefix/core.*");
-
-
-##- Mandrake
-#substInFile {
-# s!Mandrake(l| L)inux release (\S+) \(.*\)!Mandrakelinux Nomad, powered by LaCie Mobile Hard Drive)!;
-#} "$::prefix/etc/mandrake-release";
-#
-
-
-system("rsync -rvltp /export/ $::prefix/mnt/packages/") if !$rescue;
-if ($rescue) {
- foreach (glob("$::prefix/home/*/")) {
- next if /lost\+found/;
- my (undef, undef, undef, undef, $uid) = stat($_);
- my $name = $_;
- $name =~ s!/$!!;
- $name =~ s!.*/!!;
- run_program::rooted($::prefix, "adduser", "-u", $uid, "$name");
- }
-}
-
-unlink $_ foreach glob("$::prefix/var/lib/urpmi/*");
-run_program::rooted($::prefix, 'urpmi.addmedia', '--probe-hdlist', $_, "/mnt/packages/media/$_/") foreach qw(main contrib firmwares dkms modules plugins);
-
-# for fast test replaying:
-run_program::rooted($::prefix, 'tar', 'cfj', '/root/etc.tar.bz2', '/etc');
-
-my_exit($rescue ? "Your disk was succesfully restored!\nYou can now reboot your machine." : "Installation completed.");
diff --git a/globetrotter/mandrake-globetrotter.spec b/globetrotter/mandrake-globetrotter.spec
deleted file mode 100644
index 4bb3a8ac9..000000000
--- a/globetrotter/mandrake-globetrotter.spec
+++ /dev/null
@@ -1,45 +0,0 @@
-Summary: Mandrakelinux Globetrotter tools
-Name: mandrake-globetrotter
-Version: 10
-Release: 1mdk
-Url: http://www.mandrakelinux.com/en/drakx.php3
-Source0: %name-%version.tar.bz2
-License: GPL
-Group: System/Configuration/Other
-Requires: drakxtools netprofile
-BuildRoot: %_tmppath/%name-buildroot
-
-
-%description
-Contains many Mandrakelinux tools needed for Mandrakelinux Globetrotter.
-
-%prep
-%setup -q
-
-%build
-%make
-
-%install
-rm -rf $RPM_BUILD_ROOT
-
-mkdir -p $RPM_BUILD_ROOT/{%_initrddir,%_datadir/harddrake}
-%makeinstall_std PREFIX=$RPM_BUILD_ROOT
-install -m 755 hwprofile $RPM_BUILD_ROOT/%_datadir/harddrake/hwprofile
-
-%find_lang libDrakX2
-
-
-%clean
-rm -rf $RPM_BUILD_ROOT
-
-
-%files -f libDrakX2.lang
-%defattr(-,root,root)
-%_datadir/harddrake/*
-%_sbindir/*
-/usr/lib/libDrakX/*pm
-/usr/share/libDrakX/pixmaps/lang*
-
-%changelog
-* Wed Apr 28 2004 Thierry Vignaud <tvignaud@mandrakesoft.com> 10-1mdk
-- initial release
diff --git a/globetrotter/move.pm b/globetrotter/move.pm
deleted file mode 100644
index 9c3ae7226..000000000
--- a/globetrotter/move.pm
+++ /dev/null
@@ -1,175 +0,0 @@
-package move; # $Id$
-
-#- Copyright (c) 2004-2005 Mandriva
-#-
-#- This program is free software; you can redistribute it and/or modify
-#- it under the terms of the GNU General Public License as published by
-#- the Free Software Foundation; either version 2, or (at your option)
-#- any later version.
-#-
-#- This program is distributed in the hope that it will be useful,
-#- but WITHOUT ANY WARRANTY; without even the implied warranty of
-#- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-#- GNU General Public License for more details.
-#-
-#- You should have received a copy of the GNU General Public License
-#- along with this program; if not, write to the Free Software
-#- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-use diagnostics;
-use strict;
-
-use c;
-use common;
-use modules;
-use fs;
-use fsedit;
-use run_program;
-use partition_table qw(:types);
-use log;
-use lang;
-use detect_devices;
-
-sub symlinkf_short {
- my ($dest, $file) = @_;
- if (my $l = readlink $dest) {
- $dest = $l if $l =~ m!^/!;
- }
- -d $file and log::l("$file already exists and is a directory! writing in directory may be needed, not overwriting"), return;
- symlinkf($dest, $file);
-}
-
-#- run very soon at stage2 start, setup things on tmpfs rw / that
-#- were not necessary to start stage2 itself (there were setup
-#- by stage1 of course)
-sub init {
- my ($o) = @_;
-
- check_for_xserver() and c::bind_textdomain_codeset('libDrakX2', 'UTF8');
-
-
- -d '/lib/modules/' . c::kernel_version() or warn("ERROR: kernel package " . c::kernel_version() . " not installed\n"), c::_exit(1);
-
- modules::load_category('bus/usb');
- *c::pcmcia_probe = \&detect_devices::pcmcia_probe;
- $o->{pcmcia} ||= !$::noauto && c::pcmcia_probe();
- install_steps::setupSCSI($o);
-
-drakx_stuff:
- $o->{steps}{$_} = { reachable => 1, text => $_ }
- foreach qw(autoSelectLanguage configMove selectMouse setRootPassword addUser configureNetwork miscellaneous selectMouse);
- $o->{orderedSteps_orig} = $o->{orderedSteps};
- $o->{orderedSteps} = [ qw(selectLanguage acceptLicense selectMouse setupSCSI miscellaneous selectKeyboard setRootPassword addUser configureNetwork configMove ) ];
- $o->{steps}{first} = $o->{orderedSteps}[0];
-}
-
-
-
-
-sub enable_service {
- run_program::run('/sbin/chkconfig', '--level', 5, $_[0], 'on');
-}
-
-sub disable_service {
- run_program::run('/sbin/chkconfig', '--del', $_[0], 'on');
-}
-
-sub install2::configMove {
- my $o = $::o;
-
- security::level::set($o->{security});
-
- require install_steps;
- install_steps::addUser($o); # for test, when replaying wizard on an already configured machine
- while ($#{$o->{users}} eq -1) {
- install_steps::addUser($o);
- }
-
- $::noauto and goto after_autoconf;
-
- my $_wait = $o->wait_message(N("Auto configuration"), N("Please wait, detecting and configuring devices..."));
-
- #- automatic printer, timezone, network configs
- require install_steps_interactive;
- if (cat_('/proc/mounts') !~ /nfs/) {
- install_steps_interactive::configureNetwork($o);
- enable_service('network');
- }
- enable_service('netfs');
- install_steps_interactive::summaryBefore($o);
-
- modules::load_category('multimedia/sound');
- enable_service('sound');
-
- detect_devices::isLaptop() or enable_service('numlock');
-
-after_autoconf:
- require timezone;
- timezone::write($o->{timezone});
-
- $o->{useSupermount} = 1;
- fs::set_removable_mntpoints($o->{all_hds});
- require fs::mount_options;
- fs::mount_options::set_all_default($o->{all_hds}, %$o, lang::fs_options($o->{locale}));
-
- $o->{modules_conf}->write;
- require mouse;
- mouse::write_conf($o, $o->{mouse}, 1); #- write xfree mouse conf
- detect_devices::install_addons('');
-
- foreach my $step (@{$o->{orderedSteps_orig}}) {
- next if member($step, @{$o->{orderedSteps}});
- while (my $f = shift @{$o->{steps}{$step}{toBeDone} || []}) {
- log::l("doing remaining toBeDone for undone step $step");
- eval { &$f() };
- $o->ask_warn(N("Error"), [
-N("An error occurred, but I don't know how to handle it nicely.
-Continue at your own risk."). formatError($@) || $@ ]) if $@;
- }
- }
- run_program::run('killall', 'Xorg');
- output_p("$::prefix/etc/rpm/macros", "%_install_langs all\n");
- # workaround init reading inittab before any.pm alters it:
- if ($::o->{autologin}) {
- run_program::run('chkconfig', 'dm', 'on');
- run_program::run('telinit', 'Q');
- }
- # prevent dm service to fail to startup because of /tmp/.font-unix's permissions:
- run_program::run('service', 'xfs', 'stop');
- c::_exit(0);
-}
-
-
-
-sub automatic_xconf {
- my ($o) = @_;
-
- log::l('automatic XFree configuration');
-
- any::devfssymlinkf($o->{mouse}, 'mouse');
- local $o->{mouse}{device} = 'mouse';
-
- require Xconfig::default;
- require class_discard;
- $o->{raw_X} = Xconfig::default::configure(class_discard->new, { KEYBOARD => 'uk' }, $o->{mouse}); #- using uk instead of us for now to have less warnings
-
- require Xconfig::main;
- Xconfig::main::configure_everything_auto_install($o->{raw_X}, class_discard->new, {},
- { allowNVIDIA_rpms => sub { [] }, allowATI_rpms => sub { [] }, allowFB => $o->{allowFB} });
-
- modules::load_category('various/agpgart');
-
- my $file = '/etc/X11/XF86Config';
- $file = "$file-4" if -e "$file-4";
- my ($Driver) = cat_($file) =~ /Section "Device".*Driver\s*"(.*?)"/s;
- if ($Driver eq 'nvidia') {
- modules::load('nvidia');
- }
- my $lib = 'libGL.so.1';
- symlinkf_short(-e "/usr/lib/$lib.$Driver" ? "/usr/lib/$lib.$Driver" : "/usr/X11R6/lib/$lib", "/etc/X11/$lib");
-}
-
-sub handleI18NClp {}
-
-
-1;
diff --git a/globetrotter/runstage2 b/globetrotter/runstage2
deleted file mode 100755
index 26d10d4fa..000000000
--- a/globetrotter/runstage2
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/usr/bin/perl
-
-#- Copyright (c) 2004 Mandrakesoft
-#-
-#- This program is free software; you can redistribute it and/or modify
-#- it under the terms of the GNU General Public License as published by
-#- the Free Software Foundation; either version 2, or (at your option)
-#- any later version.
-#-
-#- This program is distributed in the hope that it will be useful,
-#- but WITHOUT ANY WARRANTY; without even the implied warranty of
-#- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-#- GNU General Public License for more details.
-#-
-#- You should have received a copy of the GNU General Public License
-#- along with this program; if not, write to the Free Software
-#- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-# i18n: IMPORTANT: to get correct namespace (libDrakX2 instead of libDrakX)
-BEGIN { unshift @::textdomains, 'libDrakX2' }
-c::bind_textdomain_codeset($_, 'UTF8') foreach 'libDrakX', @::textdomains;
-
-use lib qw(../perl-install /usr/lib/libDrakX);
-use standalone;
-use install2;
-
-#$::isStandalone = 0;
-install2::main(@ARGV, '--globetrotter');
-
-c::_exit(0);
diff --git a/images/.perl_checker b/images/.perl_checker
deleted file mode 100644
index 6d167b870..000000000
--- a/images/.perl_checker
+++ /dev/null
@@ -1 +0,0 @@
-XML::Parser
diff --git a/images/Makefile b/images/Makefile
index 987005132..5ac5cf59c 100644
--- a/images/Makefile
+++ b/images/Makefile
@@ -1,50 +1,42 @@
include ../Makefile.config
-VERSION=1.42
+VERSION=2.92
PRODUCT=drakx-installer-images
-KERNELS=$(shell rpm -qf /lib/modules/2.*)
+KERNELS=$(shell rpm -qf /lib/modules/6.*)
IMAGES_DEST = $(ROOTDEST)/install/images
all: images
-images: all.kernels
- DISTRIB_DESCR=$(DISTRIB_DESCR) ./make_boot_img
+boot.iso: images/boot.iso
+
+images/boot.iso: all.kernels/.list make_boot_img
+ DISTRIB_DESCR=$(DISTRIB_DESCR) DISTRIB_VERSION=$(DISTRIB_VERSION) ./make_boot_img images/boot.iso
+
+all.img: images/all.img
+
+images/all.img: all.kernels/.list make_boot_img
+ DISTRIB_DESCR=$(DISTRIB_DESCR) DISTRIB_VERSION=$(DISTRIB_VERSION) ./make_boot_img images/all.img
+
+images: all.kernels/.list
+ DISTRIB_DESCR=$(DISTRIB_DESCR) DISTRIB_VERSION=$(DISTRIB_VERSION) ./make_boot_img
rm -rf images/alternatives
if [ `ls images/*.img-* 2>/dev/null | wc -l` -gt 0 ]; then \
- mkdir images/alternatives; cd images/alternatives; mv ../*.img-* .; md5sum *.img-* > MD5SUM; \
+ mkdir images/alternatives; cd images/alternatives; mv ../*.img-* .; md5sum *.img-* > MD5SUM; sha512sum *.img-* > SHA512SUM; \
fi
- cd images ; md5sum *.{img,iso}* > MD5SUM
+ cd images; md5sum *.{img,iso}* > MD5SUM; sha512sum *.{img,iso}* > SHA512SUM
-all.kernels: update_kernel ../kernel/list_modules.pm
+all.kernels/.list: update_kernel
./update_kernel $(KERNELS)
dist: tar
tar:
@rm -rf $(PRODUCT)*.tar* $(PRODUCT)-$(VERSION)
- @if [ -e ".svn" ]; then \
- $(MAKE) dist-svn; \
- elif [ -e "../.git" ]; then \
- $(MAKE) dist-git; \
- else \
- echo "Unknown SCM (not SVN nor GIT)";\
- exit 1; \
- fi;
- $(info $(PRODUCT)-$(VERSION).tar.bz2 is ready)
-
-dist-svn:
- mkdir -p $(PRODUCT)-$(VERSION)
- svn export -q -rBASE . $(PRODUCT)-$(VERSION)/images
- svn export -q -rBASE ../kernel $(PRODUCT)-$(VERSION)/kernel
- cp ../Makefile.config $(PRODUCT)-$(VERSION)/
- tar cfj $(PRODUCT)-$(VERSION).tar.bz2 $(PRODUCT)-$(VERSION)
- rm -rf $(PRODUCT)-$(VERSION)
-
-dist-git:
- @cd ..; git archive --prefix=$(PRODUCT)-$(VERSION)/ HEAD images kernel Makefile.config | bzip2 >images/$(PRODUCT)-$(VERSION).tar.bz2;
+ @cd ..; git archive --prefix=$(PRODUCT)-$(VERSION)/ $(PRODUCT)-$(VERSION) images kernel Makefile.config | xz >images/$(PRODUCT)-$(VERSION).tar.xz;
+ $(info $(PRODUCT)-$(VERSION).tar.xz is ready)
clean:
- rm -rf images isolinux all.kernels modules.description
+ rm -rf images isolinux all.kernels modules.description build
find . -name "*~" -o -name ".#*" | xargs rm -f
install:
@@ -55,3 +47,5 @@ install:
rm -rf $(ROOTDEST)/isolinux
cp -af isolinux $(ROOTDEST)
endif
+
+.PHONY: boot.iso all.img install clean dist tar images
diff --git a/images/NEWS b/images/NEWS
index d1e4c9786..d08d5d491 100644
--- a/images/NEWS
+++ b/images/NEWS
@@ -1,5 +1,684 @@
+Version 2.92 - 18 October 2025 by Jani Välimaa
+- remove 'Memory Test' from boot images as we don't have linux32 module anymore in grub2
+
+Version 2.91 - 29 August 2023 by Thomas Backlund
+
+- switch to Mageia 10 (Cauldron)
+
+Version 2.90 - 11 August 2023 by Thomas Backlund
+
+- update for Mageia 9 release
+
+Version 2.89 - 11 July 2023 by Thomas Backlund
+
+- Sync list_modules with kernel 6.4
+- Sync with kernel 6.0
+
+Version 2.88 - 9 February 2023 by Thomas Backlund
+
+- Sync with kernel 5.19
+- Sync with kernel 6.0
+- Sync with kernel 6.1
+
+Version 2.87 - 31 October 2022 by Martin Whitaker
+
+- update grub.config search label for Mageia 9 (mga#30932)
+
+Version 2.86 - 17 September 2022 by Martin Whitaker
+
+- revert to using Memtest86+, now it is based on PCMemTest
+- Sync with kernel 5.17
+- Sync with kernel 5.18
+
+Version 2.85 - 2 February 2022 by Thierry Vignaud
+
+- Sync with kernel 5.16
+
+Version 2.84 - 6 January 2022 by Thierry Vignaud
+
+- Add missing 'genet' driver
+- Fix installing unicode.pf2
+- Fix warning & use the intended compression level
+- Include 'network-legacy' when using 'nfs' dracut module
+- sync with kernel 5.15
+
+Version 2.83 - 27 February 2021 by Thomas Backlund
+
+- re-enable Cauldron
+
+Version 2.82 - 14 February 2021 by Thomas Backlund
+
+- drop cauldron references
+
+Version 2.81 - 4 January 2021 by Thomas Backlund
+
+- recognize rtw89_pci driver
+
+Version 2.80 - 15 December 2020 by Thierry Vignaud
+
+- identify and include missing firmware for iwlwifi (mga#9541)
+- include amd_sfh HID driver
+
+Version 2.79 - 4 December 2020 by Thierry Vignaud
+
+- sync with kernel 5.10
+
+Version 2.78 - 2 December 2020 by Martin Whitaker
+
+- include michael_mic, needed for TKIP on older wireless devices
+- include more rtw88_*
+
+Version 2.77 - 30 November 2020 by Martin Whitaker
+
+- include lib80211_crypt_*, needed by some wireless devices (mga#9541)
+
+Version 2.76 - 28 November 2020 by Martin Whitaker
+
+- include ccm for WPA2
+
+Version 2.75 - 5 November 2020 by Martin Whitaker
+
+- use pcmemtest instead of memtest86+ (mga#25232)
+- add memory test to UEFI boot menu
+
+Version 2.74 - 14 September 2020 by Thierry Vignaud
+
+- sync with kernel 5.9
+
+Version 2.73 - 19 August 2020 by Thierry Vignaud
+
+- sync with kernel 5.8
+
+Version 2.72 - 28 June 2020 by Thierry Vignaud
+
+- sync with kernel 5.6/5.7
+
+Version 2.71 - 20 March 2020 by Thierry Vignaud
+
+- include amd-rng intel-rng
+
+Version 2.70 - 18 March 2020 by Thierry Vignaud
+
+- include crc32_generic for f2fs
+- include more platform/x86 drivers
+- switch from xz to zstd compression (faster decompression)
+- sync with kernel 5.5
+
+Version 2.69 - 22 December 2019 by Thomas Backlund
+
+- sync with kernel 5.4
+
+Version 2.68 - 9 October 2019 by Thierry Vignaud
+
+- sync with kernel 5.3
+
+Version 2.67 - 30 June 2019 by Thomas Backlund
+
+- Switch to Mageia 8 (Cauldron)
+
+Version 2.66 - 17 June 2019 by Thomas Backlund
+
+- include 8821ce (mga#24605)
+
+Version 2.65 - 7 June 2019 by Thomas Backlund
+
+- drop '(Cauldron)' references
+
+Version 2.64 - 5 June 2019 by Martin Whitaker
+
+- add chromeos_laptop (mga#24891)
+
+Version 2.63 - 1 June 2019 by Martin Whitaker
+
+- add cyapatp (mga#24891)
+
+Version 2.62 - 27 May 2019 by Martin Whitaker
+
+- add intel-lpss* (mga#20327)
+
+Version 2.61 - 26 May 2019 by Martin Whitaker
+
+- add elan_i2c (mga#20327)
+
+Version 2.60 - 11 May 2019 by Thierry Vignaud
+
+- add AMD PCIe MP2 I2C detection
+
+Version 2.59 - 3 May 2019 by Thierry Vignaud
+
+- sync with kernel 5.1
+
+Version 2.58 - 8 April 2019 by Martin Whitaker
+
+- include modules needed by cryptsetup (mga#24638)
+
+Version 2.57 - 18 March 2019 by Thierry Vignaud
+
+- include i2c_algo_bit (mga#20327)
+
+Version 2.56 - 8 March 2019 by Thierry Vignaud
+
+- do not include hyperv_fb (mga#17711)
+- sync with kernel 5.0
+
+Version 2.55 - 30 November 2018 by Thierry Vignaud
+
+- include NFS tools (support NFSv4, ...)
+
+Version 2.54 - 17 November 2018 by Martin Whitaker
+
+- list_modules: don't include vboxvideo (mga#23467)
+
+Version 2.53 - 15 November 2018 by Thierry Vignaud
+
+- sync with kernel 4.1[89]
+
+Version 2.52 - 25 July 2018 by Thomas Backlund
+
+- add missing smartpqi driver (mga#23305)
+
+Version 2.51 - 2 July 2018 by Thomas Backlund
+
+- add missing Mellanox drivers (mga#23263)
+
+Version 2.50 - 22 June 2018 by Thierry Vignaud
+
+- list_modules: add dm-cache + deps (mga#22946)
+- sync with kernel 4.1[5-7]
+
+Version 2.49 - 10 February 2018 by Thierry Vignaud
+
+- further sync with kernel 4.14
+
+Version 2.48 - 19 January 2018 by Thomas Backlund
+
+- sync with kernel 4.14
+
+Version 2.47 - 22 July 2017 by Thomas Backlund
+
+- switch UEFI menu to Mageia 7 (Cauldron)
+
+Version 2.46 - 23 June 2017 by Martin Whitaker
+
+- change default screen resolution to 1024x768 (mga#20624)
+
+Version 2.45 - 22 June 2017 by Thierry Vignaud
+
+- include 8812au (mga#21043)
+
+Version 2.44 - 26 April 2017 by Thomas Backlund
+
+- add missing unicode.pf2 in /EFI/BOOT/fonts/ (mga#19468)
+
+Version 2.43 - 25 February 2017 by Thierry Vignaud
+
+- sync with kernel-4.8
+
+Version 2.42 - 4 February 2017 by Thomas Backlund
+
+- dosfstools 4.1 does not require 63 sector layout anymore
+ on filesystems less than 512MB
+
+Version 2.41 - 6 January 2017 by Thomas Backlund
+
+- disable audit logging as it floods the logs
+- sync with kernel-4.9
+
+Version 2.40 - 22 December 2016 by Thomas Backlund
+
+- fix background theme image name (mga#19468)
+- try to dereference symbolic links in order to fix image size
+ for FAT32 efiboot.img (mga#19323)
+- copy efiboot.img from boot.iso to toplevel isolinux/ so it can be
+ re-used with CI and live isos
+
+Version 2.39 - 8 September 2016 by Thierry Vignaud
+
+- fix colors in boot.iso's first screen (mga#18316)
+
+Version 2.38 - 8 July 2016 by Thierry Vignaud
+
+- include virtio-console
+
+Version 2.37 - 5 July 2016 by Thierry Vignaud
+
+- sync with kernel-4.7
+
+Version 2.36 - 30 June 2016 by Thierry Vignaud
+
+- include some missing wireless drivers (mga#16768)
+
+Version 2.35 - 20 May 2016 by Thomas Backlund
+
+- add sha512 sums for images
+- typo fix (mga#18492)
+
+Version 2.34 - 10 May 2016 by Thomas Backlund
+
+- adjust image creation for new dosfstools 4 using 63 cylinders everywhere
+- let mkdosfs create the image file, and drop usage of dd
+- revert "back to arch dependant isolinux.bin (mga#17771)"
+
+Version 2.33 - 26 Apr 2016 by Thierry Vignaud
+
+- sync with kernel-4.6
+
+Version 2.32 - 21 Feb 2016 by Anne Nicolas
+
+- back to arch dependant isolinux.bin (mga#17771)
+
+Version 2.31 - 10 Jan 2016 by Thomas Backlund
+
+- psmouse is now modular, so add it to list_modules.pm (mga#17470)
+
+Version 2.30 - 22 Dec 2015 by Thierry Vignaud
+
+- sync with kernel-4.4
+
+Version 2.29 - 4 Dec 2015 by Thierry Vignaud
+
+- sync with kernel-4.3
+
+Version 2.28 - 27 Aug 2015 by Thierry Vignaud
+
+- sync with kernel-4.1
+
+Version 2.27 - 13 Jul 2015 by Thomas Backlund
+
+- update efi menus for mga6 (cauldron)
+
+Version 2.26 - 22 May 2015 by Thomas Backlund
+
+- use xorriso for proper efi metadata
+- generate proper efi isohybrid
+
+Version 2.25 - 9 May 2015 by Thomas Backlund
+
+- update UEFI menu
+
+Version 2.24 - 8 May 2015 by Thierry Vignaud
+
+- include r8723bs (mga#15874)
+
+Version 2.23 - 4 May 2015 by Anne Nicolas
+
+- add noiswmd to all entries of isolinux.cfg
+
+Version 2.22 - 13 April 2015 by Thierry Vignaud
+
+- honor BOOT_AUTOMATIC_METHOD env var for UEFI too
+- reduce timeout when using BOOT_AUTOMATIC_METHOD env var
+
+Version 2.21 - 7 April 2015 by Thomas Backlund
+
+- fix finding grub legacy files for hd_grub generation
+- syslinux needs more space on all.img
+
+Version 2.20 - 7 April 2015 by Thomas Backlund
+
+- drop nonexistant linuxefi grub2-efi module
+
+Version 2.19 - 7 April 2015 by Thomas Backlund
+
+- create efi loader at build time
+
+Version 2.18 - 6 April 2015 by Anne Nicolas
+
+- use noiswmd as default boot option (mga#11105)
+
+Version 2.17 - 17 March 2015 by Thierry Vignaud
+
+- include virtio_rng
+
+Version 2.16 - 28 January 2015 by Thierry Vignaud
+
+- sync with kernel-3.19
+
+Version 2.15 - 20 December 2014 by Thierry Vignaud
+
+- sync with kernel-3.18 (mga#14799)
+
+Version 2.14 - 20 December 2014 by Thierry Vignaud
+
+- include new 3.18 USB host drivers (mga#14799)
+
+Version 2.13 - 16 December 2014 by Erwan Velu
+
+- make_boot_img: Avoid gfxboot install string for chain.c32
+- make_boot_img: Using chain.c32 instead of localboot
+
+Version 2.12 - 12 December 2014 by Thierry Vignaud
+
+- include hv_balloon & hyperv_fb
+- include virtio_balloon & vmw_balloon as well
+
+Version 2.11 - 31 August 2014 by Thierry Vignaud
+
+- sync with kernel-3.17
+
+Version 2.10 - 22 August 2014 by Thierry Vignaud
+
+- include paravirtual network driver for hyper-v
+
+Version 2.9 - 6 August 2014 by Thierry Vignaud
+
+- sync with kernel-3.16
+
+Version 2.8 - 15 June 2014 by Thierry Vignaud
+
+- include acpi-cpufreq
+- sync with kernel-3.15
+
+Version 2.7 - 28 April 2014 by Thierry Vignaud
+
+- sync with kernel-3.14
+
+Version 2.6 - 16 February 2014 by Thierry Vignaud
+
+- sync with kernel-3.13
+
+Version 2.5 - 24 January 2014 by Colin Guthrie
+
+- Double syslinux overhead to 256. mga#11795
+
+Version 2.4 - 15 December 2013 by Anne Nicolas
+
+- remove buggy control caracters (#11602)
+- use audit=0 in rescue isolinux config to allow systemd-nspawn to work smoothly
+
+Version 2.3 - 2 December 2013 by Thierry Vignaud
+
+- include "sdhci-acpi" for eMMC (mga#11812)
+
+Version 2.2 - 13 November 2013 by Colin Guthrie
+
+- pass the modules we want in modules.alias, but not in the initrd through to
+ dracut via an environment variable
+- add BOOT_AUTOMATIC_METHOD to inject command line params into boot.iso syslinux
+
+Version 2.1 - 5 November 2013 by Colin Guthrie
+
+- revert back to static per-arch isolinux.cfg files
+
+Version 2.00 - 2 November 2013 by Thomas Backlund
+
+- ensure initrd is created with 644 perms (normally 600 for security reasons)
+- fix 32-bit isolinux wrapper (s/i586/i386)
+
+Version 1.95 - 2 November 2013 by Colin Guthrie
+
+- omit the dracut network module now that we include our own networking kernel modules
+- add a dracut.conf rather than adding lots of command line options
+- ensure initrd is xz compressed
+- include network modules as specified by kernel/list_modules.pm
+
+Version 1.94 - 29 October 2013 by Colin Guthrie
+
+- adapt to a dracut based stage1
+
+Version 1.93 - 14 October 2013 by Thierry Vignaud
+
+- sync with kernel-3.12
+
+Version 1.92 - 10 October 2013 by Thierry Vignaud
+
+- sync with kernel-3.11 (might fix mga#11377)
+
+Version 1.91 - 10 October 2013 by Thierry Vignaud
+
+- partial sync with kernel-3.11 regarding USB: include
+ ehci-tegra, ohci-pci ohci-platform fusbh200-hcd & usb_common
+ (might fix mga#11377)
+
+Version 1.90 - 16 July 2013 by Thierry Vignaud
+
+- sync with kernel-3.10
+
+Version 1.89 - 2 June 2013 by Thomas Backlund
+
+- fix URL in help message (mga#9772)
+- sync with kernel-3.9
+
+Version 1.88.1 - 2 March 2013 by Thomas Backlund
+
+- update list_modules for xen dom0 and virtio support (#9242)
+
+Version 1.88 - 21 January 2013 by Thomas Backlund
+
+- update usb host list for kernel 3.8
+
+Version 1.87 - 16 January 2013 by Thomas Backlund
+
+- include new kernel 3.8 drivers:
+ o phy: at91_ether, macb, mvmdio
+ o usb: cdc_mbim
+ o wifi: ar5523, rtl8723ae
+ o scsi: mpt3sas
+ o raid; csiostor
+ o hid: hid-icade, hid-roccat-lua
+ o sound: snd-scs1x
+- do not include firmware loader anywhere
+
+Version 1.86 - 10 December 2012 by Thierry Vignaud
+
+- include new drivers:
+ o input: hid-sensor-hub
+ o PHY: at803x
+
+Version 1.85 - 21 October 2012 by Thomas Backlund
+
+- add alx ethernet module (#7853)
+
+Version 1.84 - 18 October 2012 by Thierry Vignaud
+
+- include new drivers:
+ o HID: hid-roccat-savu, hid-holtek-kbd, hid-lenovo-tpkbd
+ o NFS: nfsv[2-4]
+ o PHY: bcm87xx
+ o WIFI: iwldvm
+- no more need to fix modules.order
+
+Version 1.83 - 17 September 2012 by Thierry Vignaud
+
+- fix modules.order so that cciss got detected (mga#5833)
+- use new hotplug (mga#6323)
+
+Version 1.82 - 12 September 2012 by Thierry Vignaud
+
+- include overlayfs module instead of unionfs
+
+Version 1.81 - 4 September 2012 by Thierry Vignaud
+
+- include new drivers:
+ o crypto: aesni_intel
+ o input: hid-aureal synaptics_usb
+ o wifi: qmi_wwan, mwifiex_usb
+- remove tokenring drivers
+
+Version 1.80 - 3 September 2012 by Thierry Vignaud
+
+- fix creating some directories when not in debug mode
+
+Version 1.79 - 3 September 2012 by Thierry Vignaud
+
+- do not include ka stuff unlesse BUILD_KA is set
+- precreate /sys
+
+Version 1.78 - 31 August 2012 by Thierry Vignaud
+
+- include new 'hid-generic' driver (mga#7130, #7248)
+
+Version 1.77 - 5 June 2012 by Thierry Vignaud
+
+- do not include "screen" terminfo anymore
+
+Version 1.76 - 1 June 2012 by Thierry Vignaud
+
+- enable to do a debug build in the BS
+- include new drivers:
+ o HID: hid-saitek, hid-tivo
+ o PHY: amd
+ o virt: hv_storvsc, virtio_scsi & xen-netfront
+ o WIFI: ath6kl_usb
+
+Version 1.75 - 17 May 2012 by Thomas Backlund
+
+- add modules.order and modules.builtin in initrd
+
+Version 1.74 - 13 May 2012 by Thierry Vignaud
+
+- include "fuse" module (mga#5685)
+
+Version 1.73 - 10 May 2012 by Thomas Backlund
+
+- add all network phys
+
+Version 1.72 - 10 May 2012 by Thomas Backlund
+
+- add broadcom and libphy to get tg3 to work (#5567)
+
+Version 1.71 - 8 April 2012 by Thomas Backlund
+
+- make isohybrid start first partition on sector 1 (mga #5036)
+
+Version 1.70 - 5 April 2012 by Thierry Vignaud
+
+- include "screen" terminfo (mga#4894)
+
+Version 1.69 - 13 March 2012 by Thierry Vignaud
+
+- include more HID drivers (mga#4905)
+
+Version 1.68 - 12 March 2012 by Thierry Vignaud
+
+- include more USB host controller modules (mga#4905)
+
+Version 1.67 - 24 February 2012 by Thierry Vignaud
+
+- include 'cryptd' & 'xts' modules for new crypted fs (mga#3749)
+
+Version 1.66 - 23 February 2012 by Thierry Vignaud
+
+- include more HID drivers (mga#4129)
+
+Version 1.65 - 15 February 2012 by Thierry Vignaud
+
+- do not recompress modules as XZ since kernel now compress
+ them with XZ
+
+Version 1.64 - 9 February 2012 by Anne Nicolas
+
+- fix isolinux.bin copy due to syslinux 4
+
+Version 1.63 - 27 January 2012 by Thierry Vignaud
+
+- include dkms-modules.alias too (mga#1405)
+
+Version 1.62 - 20 January 2012 by Thierry Vignaud
+
+- smaller stage1:
+ o compress initrd with XZ instead of gzip
+ o recompress gz modules as XZ
+
+Version 1.61 - 19 January 2012 by Thierry Vignaud
+
+- smaller stage1: remove busybox if not in debug mode
+
+Version 1.60 - 5 January 2012 by Thierry Vignaud
+
+- use upstream pppd & pppoe instead of a 10 years old snapshot
+
+Version 1.59 - 29 December 2011 by Thomas Backlund
+
+- sync with kernel-3.2.0-0.rc7.1.mga2
+ * add wireless drivers:
+ at76c50x_usb, ath9k_htc, brcmfmac, i2400m_usb, orinoco_usb,
+ rtl8187, usb8xxx
+ * add usb network adapters:
+ dm9601, smsc75xx, smsc95xx
+ * add network drivers:
+ cxgb4, myri10ge
+
+Version 1.58 - 24 October 2011 by Thierry Vignaud
+
+- include nilfs2 module (#3807)
+
+Version 1.57 - 24 October 2011 by Thomas Backlund
+
+- sync with kernel-3.1.0-1.mga2
+ * add hid devices:
+ hid-keytouch, hid-uclogic
+ * add sas/raid driver:
+ isci
+ * add sound devices:
+ snd-lola, snd-firewire-speakers snd-isight, snd-usb-6fire
+ * add usb/storage:
+ ums-eneub6250, ums-realtek
+ * add wireless drivers:
+ brcmsmac, rtl8187se, rtusb, rtl8192se, rtl8192cu, rtl8192de
+
+Version 1.56 - 06 October 2011 by Thierry Vignaud
+
+- fix isolinux.bin path with new syslinux
+- use gfxboot.c32 as graphical boot loader
+
+Version 1.55 - 22 August 2011 by Thierry Vignaud
+
+- include microcode
+
+Version 1.54 - 20 May 2011 by Olivier Blin
+
+- add ums-* (USB mass storage) modules in disk/usb category
+- merge mkdosfs patch from packages SVN
+ (to replace mkdosfs-with-dir which requires obsolete perl-suid)
+
+Version 1.53 - 5 May 2011 by Anne Nicolas
+
+- make boot.iso isohybrid
+
+Version 1.52 - 25 Apr 2011, by Thomas Backlund
+
+- add sdhci-pci to card-reader list
+- add xhci-hcd (usb3 support)
+
+Version 1.51 - 2 Apr 2011, by Thomas Backlund
+
+- update modules list needed for md raid456 and dm-raid 4/5/6 target
+- compress tarball with xz
+
+Version 1.50 - 13 Oct 2010, by Thierry Vignaud
+
+- 2011.0 build
+
+Version 1.49 - 27 May 2010, by Olivier Blin
+
+- disable restore option
+
+Version 1.48 - 28 February 2010, by Thierry Vignaud
+
+- handle new SCSI driver: mpt2sas (#57833)
+
+Version 1.47 - 4 January 2010, by Pascal Terjan
+
+- use /bin/busybox.static
+
+Version 1.46 - 12 October 2009, by Olivier Blin
+
+- properly fix FileHandle issue
+
+Version 1.45 - 12 October 2009, by Thierry Vignaud
+
+- fix firmware again (#53220)
+
+Version 1.44 - 6 October 2009, by Thierry Vignaud
+
+- do not do anything anymore with bootsplash.cfg
+
+Version 1.43 - 22 September 2009, by Olivier Blin
+
- fix firmware loading (#49195)
- revert squashfs-lzma and sqlzma inclusion (this breaks install)
+- list asix module in network/usb group
Version 1.42 - 9 September 2009, by Pascal Terjan
diff --git a/images/dracut.conf b/images/dracut.conf
new file mode 100644
index 000000000..88efd9a14
--- /dev/null
+++ b/images/dracut.conf
@@ -0,0 +1,4 @@
+hostonly=no
+nofscks=yes
+omit_dracutmodules+=" dash modsign systemd plymouth btrfs crypt lvm cifs resume rootfs-block biosdevname usrmount shutdown "
+compress="zstd -14"
diff --git a/images/grub2.config b/images/grub2.config
new file mode 100644
index 000000000..545722e00
--- /dev/null
+++ b/images/grub2.config
@@ -0,0 +1,33 @@
+
+insmod efi_gop
+insmod efi_uga
+insmod video_bochs
+insmod video_cirrus
+insmod video_fb
+
+insmod font
+if loadfont ${prefix}/fonts/unicode.pf2
+then
+ insmod gfxterm
+ set gfxmode=1024x768,800x600,640x480
+ set gfxpayload=keep
+ terminal_output gfxterm
+fi
+
+insmod png
+set theme=($root)/EFI/BOOT/themes/maggy/theme.txt
+export theme
+
+set timeout=10
+
+search --no-floppy --set=root -l 'Mageia-10-x86_64-netinstall'
+
+menuentry 'Start Mageia 10 (Cauldron) Install' {
+ linux /isolinux/x86_64/vmlinuz audit=0 quiet noiswmd
+ initrd /isolinux/x86_64/all.rdz
+}
+
+menuentry 'Start Mageia 10 (Cauldron) Rescue' {
+ linux /isolinux/x86_64/vmlinuz audit=0 noiswmd rescue
+ initrd /isolinux/x86_64/all.rdz
+}
diff --git a/images/grub2.theme b/images/grub2.theme
new file mode 100644
index 000000000..ff6c463bb
--- /dev/null
+++ b/images/grub2.theme
@@ -0,0 +1,34 @@
+# GRUB gfxmenu theme "maggy".
+
+title-text: "Mageia 10 (Cauldron) UEFI"
+title-font: "MageiaLogo Bold 28"
+title-color: "white"
+
+desktop-image: "grub2-mageia-default.png"
+terminal-font: "Unknown Regular 16"
+
++ boot_menu {
+ left = 20%
+ top = 15%
+ width = 60%
+ height = 55%
+ item_font = "MageiaLogo Regular 20"
+ selected_item_font = "MageiaLogo Bold 20"
+ color_normal="black/black"
+ item_color = "#2397d4"
+ selected_item_color = "white"
+ item_height = 24
+ item_spacing = 10
+}
+
++ progress_bar
+{
+ id = "__timeout__"
+ left = 20%
+ top = 65%
+ width = 60%
+ height = 1%
+ fg_color = "lightskyblue"
+ bg_color = "dodgerblue"
+ border_color = "midnightblue"
+}
diff --git a/images/help.msg.xml b/images/help.msg.xml
index e6d715830..358dcf248 100644
--- a/images/help.msg.xml
+++ b/images/help.msg.xml
@@ -1,5 +1,5 @@
<document>
- <green>Welcome to <blue>Mandriva Linux</blue> install help</green>
+ <green>Welcome to <blue>Mageia</blue> install help</green>
In most cases, the best way to get started is to simply press the <yellow>&lt;Enter&gt;</yellow> key.
If you experience problems with standard install, try one of the following
diff --git a/images/make_boot_img b/images/make_boot_img
index 60906f4c5..31af50744 100755
--- a/images/make_boot_img
+++ b/images/make_boot_img
@@ -1,28 +1,30 @@
#!/usr/bin/perl
use Config;
+use FileHandle;
use MDK::Common;
+use POSIX;
+use Carp;
+
Config->import;
my ($arch) = $Config{archname} =~ /(.*?)-/;
-my $default_append = '';
+my $default_append = 'audit=0';
my $default_acpi = '';
-my $default_vga = "vga=788 splash=silent";
-my $timeout = 150;
-my $isolinux_bin = $arch eq 'x86_64' ? '/usr/lib/syslinux/isolinux-x86_64.bin' : '/usr/lib/syslinux/isolinux-i586.bin';
-my $lib = $arch eq 'x86_64' ? 'lib64' : 'lib';
+my $default_vga = "vga=791 splash quiet";
+my $default_iswmd = "noiswmd";
+my $timeout = $ENV{BOOT_AUTOMATIC_METHOD} ? 5 : 150;
+my $isolinux_bin = '/usr/lib/syslinux/isolinux.bin';
my $tmp_mnt = '/tmp/drakx_mnt';
-my $tmp_initrd = '/tmp/drakx_initrd';
-my $sudo;
if ($>) {
- $sudo = "sudo";
$ENV{PATH} = "/sbin:/usr/sbin:$ENV{PATH}";
}
sub __ { print @_, "\n"; system(@_) }
-sub _ { __ @_; $? and die }
+sub _ { __ @_; $? and croak "'" . join(' ', @_) . "failed ($?)\n" }
+
sub mke2fs {
my ($f) = @_;
_ "/sbin/mke2fs -q -m 0 -F -s 1 $f";
@@ -35,16 +37,13 @@ mkdir "images";
my @kernels = chomp_(cat_('all.kernels/.list'));
my @all_images = (
- if_($arch =~ /i.86/, 'isolinux', 'boot.iso', 'all.img', 'hd_grub.img'),
- if_($arch =~ /x86_64/, 'isolinux', 'boot.iso', 'all.img', 'hd_grub.img'),
- if_($arch =~ /ia64/, 'all.img'),
- if_($arch =~ /ppc/, 'all.img'),
+ if_($arch =~ /i.86|x86_64/, 'isolinux', 'boot.iso', 'all.img', 'hd_grub.img'),
);
my @images = @ARGV ? @ARGV : map { "images/$_" } @all_images;
foreach my $img (@images) {
- my ($type, $I, $extension) = $img =~ m!([^/]*)(64)?\.([^.]*)$!;
+ my ($type, undef, $extension) = $img =~ m!([^/]*)(64)?\.([^.]*)$!;
if ($img =~ /hd_grub/) {
hd_grub($img);
@@ -57,18 +56,19 @@ foreach my $img (@images) {
} elsif ($img =~ /boot.iso/) {
boot_iso($img, \@kernels);
} elsif ($extension eq 'rdz') {
- initrd($type, $I, "$img-$_") foreach @kernels;
+ initrd("$img-$_", $_) foreach @kernels;
} elsif ($extension eq 'img') {
print STDERR "calling boot_img_$arch for $img\n";
- $::{"boot_img_$arch"}->($type, $I, "$img-$_", "all.kernels/$_/vmlinuz") foreach @kernels;
+ $::{"boot_img_$arch"}->($type, "$img-$_", $_, "all.kernels/$_/vmlinuz") foreach @kernels;
rename("$img-$kernels[0]", $img);
} else {
die "unknown image $img";
}
}
+# The ascii 15 / Shift In / ^O character before the 0 should not be removed
sub syslinux_color {
- "0" . {
+ chr(15) . "0" . {
default => '7',
blue => '9',
green => 'a',
@@ -101,7 +101,7 @@ sub syslinux_msg {
$tree->[0] eq 'document' or die "bad file $msg_xml_file\n";
my $text = xml_tree2syslinux('default', $tree->[1]);
- pack("C*", 0x0E, 0x80, 0x03, 0x00) . " "
+ " "
. $text . join('', @more_text)
. "\n" . syslinux_color('red') . "[F1-Help] [F2-Advanced Help]" . syslinux_color('default') . "\n";
}
@@ -118,9 +118,9 @@ display help.msg
implicit 1
EOF
my $header_gfxboot = <<EOF;
-ui gfxboot.com bootlogo
+ui gfxboot.c32 bootlogo
label harddisk
- localboot 0x80
+ com32 chain.c32 hd0 exit
EOF
my $header_non_gfxboot = <<EOF;
F1 help.msg
@@ -138,88 +138,34 @@ EOF
$header . ($b_gfxboot ? $header_gfxboot : $header_non_gfxboot) . join('', @l);
}
-sub initrd {
- my ($type, $I, $img, $o_bootsplash_cfg) = @_;
- my $stage1_root = $ENV{DEBUGSTAGE1} ? "../mdk-stage1" : "/usr/$lib/drakx-installer-binaries";
- my ($ext) = $img =~ /rdz-(.*)/ or die "bad initrd name ($img)";
-
- _ "rm -rf $tmp_initrd";
- mkdir_p("$tmp_initrd$_") foreach qw(/etc /firmware /lib /modules /sbin /tmp /var);
- symlink "../modules", "$tmp_initrd/lib/modules";
- symlink "../firmware", "$tmp_initrd/lib/firmware";
-
- symlink "/proc/mounts", "$tmp_initrd/etc/mtab";
- symlink "../tmp", "$tmp_initrd/var/run";
- _ "install -D /usr/share/terminfo/l/linux $tmp_initrd/usr/share/terminfo/l/linux";
- foreach ('pcitable', 'usbtable') {
- _ "install -D /usr/share/ldetect-lst/$_.gz $tmp_initrd/usr/share/ldetect-lst/$_.gz";
- }
- _ "install -D /usr/share/pci.ids $tmp_initrd/usr/share/pci.ids";
- foreach ("/usr/share/ldetect-lst/fallback-modules.alias", "/lib/module-init-tools/ldetect-lst-modules.alias") {
- _ "install -D $_ $tmp_initrd$_";
- }
- foreach my $firm (glob_("all.kernels$I/$ext/firmware/*")) {
- my $dest=$firm;
- $dest =~ s|all.kernels$I/$ext/firmware/||;
- _ "cp -a $firm $tmp_initrd/$dest";
- };
-
- output("$tmp_initrd/hotplug", q{#!/bin/sh -e
-if [ "$SUBSYSTEM" = firmware ] && [ "$ACTION" = add ] && [ -n "$FIRMWARE" ] ; then
- if [ ! -e /sys$DEVPATH/loading ]; then
- exit 1
- fi
- if [ -e "/lib/firmware/$FIRMWARE" ]; then
- echo 1 > /sys$DEVPATH/loading
- cat "/lib/firmware/$FIRMWARE" > /sys$DEVPATH/data
- echo 0 > /sys$DEVPATH/loading
- exit 0
- fi
- echo -1 > /sys$DEVPATH/loading
- exit 1
-fi
-});
- _ "chmod 755 $tmp_initrd/hotplug";
- symlink "../hotplug", "$tmp_initrd/sbin/hotplug";
- _ "install $stage1_root/init $tmp_initrd/";
- foreach ('stage1', 'pppd', 'pppoe') {
- _ "install $stage1_root/$_ $tmp_initrd/sbin/";
- }
-
- if ($arch !~ /ppc|ia64/) {
- mkdir_p("$tmp_initrd/etc/pcmcia");
- _ "cp -a /etc/pcmcia/config.opts $tmp_initrd/etc/pcmcia";
- }
- {
- my $modz = "all.kernels$I/$ext";
- mkdir_p("$tmp_initrd/modules/$ext");
- __ "tar xC $tmp_initrd/modules/$ext -f $modz/${type}_modules.tar";
- _ "depmod -b $tmp_initrd $ext";
- # depmod keeps only available modules in modules.alias, but we want them all
- _ "cp -f $modz/modules.alias $modz/modules.description $tmp_initrd/modules/$ext";
- }
- # ka deploy need some files in all.rdz
- {
- mkdir_p("$tmp_initrd/$_") foreach qw(dev ka proc var/tmp);
- symlink("/sbin", "$tmp_initrd/bin");
- cp_af("/usr/bin/ka-d-client", "$tmp_initrd/ka/ka-d-client");
- cp_af("/usr/bin/mke2fs_diet", "$tmp_initrd/sbin/mke2fs");
- cp_af("/usr/bin/busybox", "$tmp_initrd/sbin/busybox");
- my @funct = map { /functions:/ .. /^$/ ? do { s/\s//g; split /,/ } : () } `busybox`;
- shift @funct;
- symlink('busybox', $tmp_initrd . "/sbin/$_") foreach @funct;
- }
+sub trim {
+ return $_[0] =~ s/^\s+|\s+$//rg;
+}
- if ($o_bootsplash_cfg) {
- _ "splash -s -f $o_bootsplash_cfg > $tmp_initrd/bootsplash";
+sub initrd {
+ my ($img, $kernel) = @_;
+ my $stage1_binary = $ENV{USE_LOCAL_STAGE1} ? trim(`realpath ../mdk-stage1/stage1`) : "";
+ my $init_binary = $ENV{USE_LOCAL_STAGE1} ? trim(`realpath ../mdk-stage1/init`) : "";
+ my $modules = " mgainstaller network-legacy nfs ";
+ my $drivers = `perl ../kernel/modules.pl list_needed_modules $kernel | xargs`;
+ my $fakedrivers = `perl ../kernel/modules.pl list_fake_modules $kernel | xargs`;
+
+ if ($ENV{DEBUGSTAGE1} || $ENV{BUILD_KA}) {
+ $modules="$modules busybox ";
}
+ $modules="$modules mgakadeploy " if $ENV{BUILD_KA};
- my $devs = sprintf "ls /dev/{%s}", join(',', qw(console fb0 fd0 loop3 mem null ppp ptmx ptyp0 ram3 random tty[0-7] ttyp0 ttyS0 urandom));
+ my $extras = `perl ../kernel/modules.pl list_additional_firmware $kernel | xargs`;
+ chomp $extras;
+ my $install_extras = $extras ? "--install '$extras'" : "";
- _ "(cd $tmp_initrd; (find . ; $devs) | cpio -o -c --quiet) | gzip -9 > $img";
- _ "rm -rf $tmp_initrd";
+ mkdir_p("build/dracut.conf.d");
+ # TODO if --nofscks and --no-hostonly are switched, dracut gives an error - fix or report upstream
+ __ "DRAKX_STAGE1_BINARY=$stage1_binary DRAKX_INIT_BINARY=$init_binary DRAKX_FAKE_MODULES='$fakedrivers' dracut --conf dracut.conf --confdir ./build/dracut.conf.d --add ' $modules ' --add-drivers ' $drivers ' $install_extras '$img' '$kernel'";
+ chmod(0644, $img);
}
+
sub entries_append {
my ($type) = @_;
@@ -232,12 +178,12 @@ sub entries_append {
vgahi => "vga=791",
text => "text",
# patch => "patch $default_vga",
- rescue => "rescue",
+ rescue => "audit=0 rescue",
);
my @entries = (
- (map { $_->[0] => "$automatic$default_acpi $_->[1]" } group_by2(@simple_entries)),
- noacpi => "$automatic$default_vga acpi=off",
- restore => "$automatic$default_vga restore",
+ (map { $_->[0] => "$automatic$default_acpi $default_iswmd audit=0 $_->[1]" } group_by2(@simple_entries)),
+ noacpi => "$automatic$default_vga $default_iswmd audit=0 acpi=off",
+# restore => "$automatic$default_vga restore",
);
map { { label => $_->[0], append => join(' ', grep { $_ } $default_append, $_->[1]) } }
@@ -249,13 +195,12 @@ sub syslinux_cfg_all {
syslinux_cfg([
(map {
- { kernel => 'alt0/vmlinuz', initrd => 'alt0/all.rdz', %$_ };
+ { kernel => "$arch/vmlinuz", initrd => "$arch/all.rdz", %$_ };
} entries_append($type)),
(map_index {
- { label => "alt$::i", kernel => "alt$::i/vmlinuz", initrd => "alt$::i/all.rdz",
- append => join(' ', grep { $_ } $default_append, $default_acpi, $default_vga) };
+ { label => $arch, kernel => "$arch/vmlinuz", initrd => "$arch/all.rdz",
+ append => join(' ', grep { $_ } $default_append, $default_acpi, $default_vga, $default_iswmd) };
} @kernels),
- { label => 'memtest', kernel => 'memtest' },
], $b_gfxboot);
}
sub remove_ending_zero {
@@ -264,17 +209,16 @@ sub remove_ending_zero {
}
sub boot_img_i386 {
- my ($type, $I, $img, $kernel) = @_;
+ my ($type, $img, $kernel, $vmlinuz) = @_;
_ "rm -rf $tmp_mnt"; mkdir $tmp_mnt;
- _ "cat $kernel > $tmp_mnt/vmlinuz";
+ _ "cat $vmlinuz > $tmp_mnt/vmlinuz";
output("$tmp_mnt/help.msg", syslinux_msg('help.msg.xml'));
output("$tmp_mnt/advanced.msg", syslinux_msg('advanced.msg.xml'));
(my $rdz = $img) =~ s/\.img/.rdz/;
- (my $initrd_type = $type) =~ s/-changedisk//;
- initrd($initrd_type, $I, $rdz);
+ initrd($rdz, $kernel);
my $short_type = substr($type, 0, 8);
output("$tmp_mnt/syslinux.cfg",
@@ -285,10 +229,12 @@ sub boot_img_i386 {
_ "cp -f $rdz $tmp_mnt/$short_type.rdz";
unlink $rdz;
- my $size = max(chomp_(`du -s -k $tmp_mnt`) + 50, 1440);
- _ "dd if=/dev/zero of=$img bs=1k count=$size";
+ # mtools wants the image to be a power of 32.
+ my $syslinux_overhead = 32 * 16;
+ my $size = max(ceil(chomp_(`du -s -k $tmp_mnt`) / 32) * 32 + $syslinux_overhead, 1440);
- _ "mkdosfs-with-dir $tmp_mnt $img";
+ _ "/sbin/mkdosfs -C $img $size";
+ _ "mcopy -i $img $tmp_mnt/* ::";
_ "syslinux $img";
_ "rm -rf $tmp_mnt";
}
@@ -296,397 +242,6 @@ sub boot_img_i386 {
# alias to x86 variant, slightly bigger with images though
sub boot_img_x86_64 { &boot_img_i386 }
-sub boot_img_alpha {
- my ($type, $I, $img) = @_;
-
- __ "$sudo umount $tmp_mnt 2>/dev/null";
- _ "dd if=/dev/zero of=$img bs=1k count=1440";
- mke2fs($img);
- _ "/sbin/e2writeboot $img /boot/bootlx";
- _ "$sudo mount -t ext2 $img $tmp_mnt -o loop";
- _ "cp -f vmlinux.gz $tmp_mnt";
- -f "$type.rdz" ? _ "cp -f $type.rdz $tmp_mnt" : initrd($type, $I, "$tmp_mnt/$type.rdz");
-
- mkdir "$tmp_mnt/etc", 0777;
- output("$tmp_mnt/etc/aboot.conf",
-"0:vmlinux.gz initrd=$type.rdz rw $default_append $type
-1:vmlinux.gz initrd=$type.rdz rw $default_append text $type
-");
- _ "sync";
- _ "df $tmp_mnt";
-}
-
-sub boot_img_ia64 {
- my ($type, $_I, $img, $kernel) = @_;
- my $rdz = $img; $rdz =~ s/\.img/.rdz/;
-
- __ "$sudo umount $tmp_mnt 2>/dev/null";
- _ "dd if=/dev/zero of=$img bs=1k count=16384";
- _ "mkdosfs $img";
- _ "$sudo mount -t vfat $img $tmp_mnt -o loop,umask=000";
- _ "$sudo cp -f $kernel $tmp_mnt/vmlinux";
- _ "cp -f $rdz $tmp_mnt/$type.rdz";
- _ "$sudo cp -f tools/ia64/elilo.efi $tmp_mnt";
- output("$tmp_mnt/elilo.conf", qq(
-prompt
-timeout=50
-
-image=vmlinux
- label=linux
- initrd=$type.rdz
- append=" ramdisk_size=120000"
- read-only
-
-image=vmlinux
- label=rescue
- initrd=$type.rdz
- append=" rescue ramdisk_size=120000"
-"));
- _ "sync";
- _ "df $tmp_mnt";
-
-}
-
-sub boot_img_sparc {
- my ($type, $I, $_img) = @_;
- if ($type =~ /^live(.*)/) {
- #- hack to produce directly into /export the needed file for cdrom boot.
- my $dir = "/export";
- my $boot = "boot"; #- non-absolute pathname only!
-
- _ "mkdir -p $dir/$boot";
- _ "cp -f /boot/cd.b /boot/second.b $dir/$boot";
- _ "cp -f vmlinux$1 $dir/$boot/vmlinux$1";
- -f "live$1.rdz" ? _ "cp -f live$1.rdz $dir/$boot" : initrd($type, $I, "$dir/$boot/live$1.rdz");
-
- output("$dir/$boot/silo.conf", qq(
-partition=1
-default=linux
-timeout=100
-read-write
-message=/$boot/boot.msg
-image="cat /$boot/boot.msg"
- label=1
- single-key
-image="cat /$boot/general.msg"
- label=2
- single-key
-image="cat /$boot/expert.msg"
- label=3
- single-key
-image="cat /$boot/rescue.msg"
- label=4
- single-key
-image="cat /$boot/kickit.msg"
- label=5
- single-key
-image="cat /$boot/param.msg"
- label=6
- single-key
-image[sun4c,sun4d,sun4m]=/$boot/vmlinux
- label=linux
- alias=install
- initrd=/$boot/live.rdz
- append="ramdisk_size=128000"
-image[sun4c,sun4d,sun4m]=/$boot/vmlinux
- label=text
- initrd=/$boot/live.rdz
- append="ramdisk_size=128000 text"
-image[sun4c,sun4d,sun4m]=/$boot/vmlinux
- label=expert
- initrd=/$boot/live.rdz
- append="ramdisk_size=128000 expert"
-image[sun4c,sun4d,sun4m]=/$boot/vmlinux
- label=ks
- initrd=/$boot/live.rdz
- append="ramdisk_size=128000 ks"
-image[sun4c,sun4d,sun4m]=/$boot/vmlinux
- label=rescue
- initrd=/$boot/live.rdz
- append="ramdisk_size=128000 rescue"
-image[sun4u]=/$boot/vmlinux64
- label=linux
- alias=install
- initrd=/$boot/live64.rdz
- append="ramdisk_size=128000"
-image[sun4u]=/$boot/vmlinux64
- label=text
- initrd=/$boot/live64.rdz
- append="ramdisk_size=128000 text"
-image[sun4u]=/$boot/vmlinux64
- label=expert
- initrd=/$boot/live64.rdz
- append="ramdisk_size=128000 expert"
-image[sun4u]=/$boot/vmlinux64
- label=ks
- initrd=/$boot/live64.rdz
- append="ramdisk_size=128000 ks"
-image[sun4u]=/$boot/vmlinux64
- label=rescue
- initrd=/$boot/live64.rdz
- append="ramdisk_size=128000 rescue"
-"));
-
- output("$dir/$boot/README", "
-To Build a Bootable CD-ROM, try:
- genisoimage -R -o t.iso -s /$boot/silo.conf /export
-");
- } elsif ($type =~ /^tftprd(.*)/) {
- my $dir = "/export";
- my $boot = "images";
- my $setarch = $1 ? "sparc64" : "sparc32";
-
- _ "mkdir -p $dir/$boot";
- -f "$type.rdz" or initrd($type, $I, "$type.rdz");
- _ "cp -f vmlinux$1.aout $dir/$boot/$type.img";
- _ "$setarch kernel$1/src/arch/sparc$1/boot/piggyback $dir/$boot/$type.img kernel$1/boot/System.map $type.rdz";
- } elsif ($type =~ /^tftp(.*)/) {
- my $dir = "/export";
- my $boot = "images";
-
- _ "mkdir -p $dir/$boot";
- _ "cp -f vmlinux$1.aout $dir/$boot/$type.img";
- } else {
- my $dir = "floppy";
- __ "$sudo umount $tmp_mnt 2>/dev/null";
- _ "rm -rf $dir";
- _ "mkdir -p $dir";
- _ "cp -f /boot/fd.b /boot/second.b $dir";
- _ "cp -f vmlinuz$I $dir/vmlinux$I.gz";
- -f "$type.rdz" ? _ "cp -f $type.rdz $dir" : initrd($type, $I, "$dir/$type.rdz");
-
- output("$dir/boot.msg", "
-Welcome to Mandriva Linux 7.1
-
-Press <Enter> to install or upgrade a system 7mMandriva Linux7m
-");
-
- output("$dir/silo.conf", qq(
-partition=1
-default=linux
-timeout=100
-read-write
-message=/boot.msg
-image=/vmlinux$I.gz
- label=linux
- initrd=/$type.rdz
- append="ramdisk_size=128000 $type"
-"));
- _ "genromfs -d $dir -f /dev/ram -A 2048,/.. -a 512 -V 'DrakX boot disk'";
- _ "$sudo mount -t romfs /dev/ram $tmp_mnt";
- _ "silo -r $tmp_mnt -F -i /fd.b -b /second.b -C /silo.conf";
- _ "$sudo umount $tmp_mnt";
- _ "dd if=/dev/ram of=$type.img bs=1440k count=1";
- _ "sync";
- _ "$sudo mount -t romfs /dev/ram $tmp_mnt";
- _ "df $tmp_mnt";
- }
-}
-
-sub boot_img_ppc {
- my ($_type, $I, $_img, $_kernel) = @_;
- foreach (glob("all.kernels/*")) {
- my $ext = basename($_);
- if ($ext =~ /legacy/) {
- initrd("all", $I, "images/all.rdz-$ext");
- _ "mv images/all.rdz-$ext images/all.rdz-legacy";
- _ "cp $_/vmlinuz images/vmlinux-legacy";
- }
- elsif ($ext =~ /2.6/) {
- initrd("all", $I, "images/all.rdz-$ext");
- _ "mv images/all.rdz-$ext images/all.rdz";
- _ "cp $_/vmlinuz images/vmlinux";
- }
- }
- _ "cp -f /usr/lib/yaboot/yaboot images/yaboot";
-
- output("images/ofboot.b", '<CHRP-BOOT>
-<COMPATIBLE>
-MacRISC
-</COMPATIBLE>
-<DESCRIPTION>
-Mandriva Linux PPC bootloader
-</DESCRIPTION>
-<BOOT-SCRIPT>
-" screen" output
-load-base release-load-area
-dev screen
-" "(0000000000aa00aa0000aaaaaa0000aa00aaaa5500aaaaaa)" drop 0 8 set-colors
-" "(5555555555ff55ff5555ffffff5555ff55ffffff55ffffff)" drop 8 8 set-colors
-device-end
-3 to foreground-color
-0 to background-color
-" "(0C)" fb8-write drop
-" Booting Mandriva Linux PPC..." fb8-write drop 100 ms
-boot cd:,\boot\yaboot
-</BOOT-SCRIPT>
-<OS-BADGE-ICONS>
-1010
-000000000000F8FEACF6000000000000
-0000000000F5FFFFFEFEF50000000000
-00000000002BFAFEFAFCF70000000000
-0000000000F65D5857812B0000000000
-0000000000F5350B2F88560000000000
-0000000000F6335708F8FE0000000000
-00000000005600F600F5FD8100000000
-00000000F9F8000000F5FAFFF8000000
-000000008100F5F50000F6FEFE000000
-000000F8F700F500F50000FCFFF70000
-00000088F70000F50000F5FCFF2B0000
-0000002F582A00F5000008ADE02C0000
-00090B0A35A62B0000002D3B350A0000
-000A0A0B0B3BF60000505E0B0A0B0A00
-002E350B0B2F87FAFCF45F0B2E090000
-00000007335FF82BF72B575907000000
-000000000000ACFFFF81000000000000
-000000000081FFFFFFFF810000000000
-0000000000FBFFFFFFFFAC0000000000
-000000000081DFDFDFFFFB0000000000
-000000000081DD5F83FFFD0000000000
-000000000081DDDF5EACFF0000000000
-0000000000FDF981F981FFFF00000000
-00000000FFACF9F9F981FFFFAC000000
-00000000FFF98181F9F981FFFF000000
-000000ACACF981F981F9F9FFFFAC0000
-000000FFACF9F981F9F981FFFFFB0000
-00000083DFFBF981F9F95EFFFFFC0000
-005F5F5FDDFFFBF9F9F983DDDD5F0000
-005F5F5F5FDD81F9F9E7DF5F5F5F5F00
-0083DD5F5F83FFFFFFFFDF5F835F0000
-000000FBDDDFACFBACFBDFDFFB000000
-000000000000FFFFFFFF000000000000
-0000000000FFFFFFFFFFFF0000000000
-0000000000FFFFFFFFFFFF0000000000
-0000000000FFFFFFFFFFFF0000000000
-0000000000FFFFFFFFFFFF0000000000
-0000000000FFFFFFFFFFFF0000000000
-0000000000FFFFFFFFFFFFFF00000000
-00000000FFFFFFFFFFFFFFFFFF000000
-00000000FFFFFFFFFFFFFFFFFF000000
-000000FFFFFFFFFFFFFFFFFFFFFF0000
-000000FFFFFFFFFFFFFFFFFFFFFF0000
-000000FFFFFFFFFFFFFFFFFFFFFF0000
-00FFFFFFFFFFFFFFFFFFFFFFFFFF0000
-00FFFFFFFFFFFFFFFFFFFFFFFFFFFF00
-00FFFFFFFFFFFFFFFFFFFFFFFFFF0000
-000000FFFFFFFFFFFFFFFFFFFF000000
-</OS-BADGE-ICONS>
-</CHRP-BOOT>
-');
-
- output("images/yaboot.conf", '
-init-message = "\nWelcome to Mandriva Linux PPC!\nHit <TAB> for boot options.\n\n"
-timeout = 150
-device=cd:
-default = install-gui
-message=/boot/yaboot.msg
-
-image = /boot/vmlinux
- label = install-gui
- initrd = /boot/all.gz
- initrd-size = 34000
- append = " ramdisk_size=128000"
-
-image = /boot/vmlinux-power4
- label = install-gui-power4
- initrd = /boot/all-power4.gz
- initrd-size = 34000
- append = " ramdisk_size=128000"
-
-image = /boot/vmlinux
- label = install-text
- initrd = /boot/all.gz
- initrd-size = 34000
- append = " text ramdisk_size=128000"
-
-image = /boot/vmlinux-power4
- label = install-text-power4
- initrd = /boot/all-power4.gz
- initrd-size = 34000
- append = " text ramdisk_size=128000"
-
-image = /boot/vmlinux
- label = install-gui-old
- initrd = /boot/all.gz
- initrd-size = 34000
- append = " gui-old ramdisk_size=128000"
-
-image = /boot/vmlinux-power4
- label = install-gui-old-power4
- initrd = /boot/all-power4.gz
- initrd-size = 34000
- append = " gui-old ramdisk_size=128000"
-
-image = enet:0,vmlinux
- label = install-net
- initrd = enet:0,all.gz
- initrd-size = 34000
- append = " ramdisk_size=128000"
-
-image = enet:0,vmlinux-power4
- label = install-net-power4
- initrd = enet:0,all-power4.gz
- initrd-size = 34000
- append = " ramdisk_size=128000"
-
-image = enet:0,vmlinux
- label = install-net-text
- initrd = enet:0,all.gz
- initrd-size = 34000
- append = " text ramdisk_size=128000"
-
-image = enet:0,vmlinux-power4
- label = install-net-text-power4
- initrd = enet:0,all-power4.gz
- initrd-size = 34000
- append = " text ramdisk_size=128000"
-
-image = /boot/vmlinux
- label = rescue
- initrd = /boot/all.gz
- initrd-size = 34000
- append = " rescue ramdisk_size=128000"
-
-image = /boot/vmlinux-power4
- label = rescue-power4
- initrd = /boot/all-power4.gz
- initrd-size = 34000
- append = " rescue ramdisk_size=128000"
-
-image = enet:0,vmlinux
- label = rescue-net
- initrd = enet:0,all.gz
- initrd-size = 34000
- append = " rescue ramdisk_size=128000"
-
-image = enet:0,vmlinux-power4
- label = rescue-net-power4
- initrd = enet:0,all-power4.gz
- initrd-size = 34000
- append = " rescue ramdisk_size=128000"
-');
-
- output("images/yaboot.msg", '
-Thanks for choosing Mandriva Linux PPC. The following is a short
-explanation of the various options for booting the install CD.
-
-All options ending with "-power4" use the BOOT kernel for ppc 9xx and POWER4.
-The default syntax with no suffix uses the BOOT kernel for ppc 6xx 7xx and 7xxx.
-The default if you just hit enter is "install-gui".
-
-install-gui: uses Xorg fbdev mode
-install-text: text based install
-install-net: allows you to use a minimal boot CD,
- pulling the rest of the install from
- a network server
-install-net-text: text mode network install
-rescue: boots the rescue image
-rescue-net: boots the rescue image from a network server
-
-');
-
-}
-
sub VERSION {
my ($kernels) = @_;
@@ -703,20 +258,13 @@ sub syslinux_all_files {
@$kernels or die "syslinux_all_files: no kernel\n";
- $default_vga =~ /788/ or die 'we rely on vga=788 for bootsplash';
- my $theme = $ENV{THEME} || 'Mandriva-Free';
- my $bootsplash_cfg = "/etc/bootsplash/themes/$theme/config/bootsplash-800x600.cfg";
- -e $bootsplash_cfg or die "can't find $bootsplash_cfg";
-
each_index {
- mkdir "$dir/alt$::i", 0777;
- _ "cp all.kernels/$_/vmlinuz $dir/alt$::i";
- initrd('all', '', "images/all.rdz-$_", $bootsplash_cfg);
- rename("images/all.rdz-$_", "$dir/alt$::i/all.rdz");
+ mkdir "$dir/$arch", 0777;
+ _ "cp all.kernels/$_/vmlinuz $dir/$arch";
+ initrd("images/all.rdz-$_", $_);
+ rename("images/all.rdz-$_", "$dir/$arch/all.rdz");
} @$kernels;
- _ "install -m 644 -D /boot/memtest* $dir/memtest";
-
output("$dir/help.msg", syslinux_msg('help.msg.xml'));
output("$dir/advanced.msg", syslinux_msg('advanced.msg.xml',
"\nYou can choose the following kernels :\n",
@@ -729,7 +277,14 @@ sub isolinux {
syslinux_all_files('isolinux', $kernels);
_ "cp $isolinux_bin isolinux/isolinux.bin";
- _ "cp /usr/lib/syslinux/gfxboot.com isolinux/gfxboot.com";
+ _ "cp /usr/lib/syslinux/ifcpu.c32 isolinux/ifcpu.c32";
+ _ "cp /usr/lib/syslinux/ldlinux.c32 isolinux/ldlinux.c32";
+ _ "cp /usr/lib/syslinux/libcom32.c32 isolinux/libcom32.c32";
+ _ "cp /usr/lib/syslinux/libgpl.c32 isolinux/libgpl.c32";
+ _ "cp /usr/lib/syslinux/libmenu.c32 isolinux/libmenu.c32";
+ _ "cp /usr/lib/syslinux/libutil.c32 isolinux/libutil.c32";
+ _ "cp /usr/lib/syslinux/gfxboot.c32 isolinux/gfxboot.c32";
+ _ "cp /usr/lib/syslinux/chain.c32 isolinux/chain.c32";
output("isolinux/isolinux.cfg", syslinux_cfg_all('cdrom', 1));
xbox_stage1() if arch() =~ /i.86/;
@@ -742,7 +297,7 @@ sub xbox_stage1() {
eval { rm_rf($dir) }; mkdir_p($dir);
_ "cp all.kernels/$xbox_kernel/vmlinuz $dir";
- initrd('all', '', "images/all.rdz-$xbox_kernel");
+ initrd("images/all.rdz-$xbox_kernel", $xbox_kernel);
rename("images/all.rdz-$xbox_kernel", "$dir/initrd");
_ "cp /usr/share/cromwell/xromwell-installer.xbe $dir/default.xbe";
@@ -761,17 +316,60 @@ sub boot_iso {
output('.boot_iso/VERSION', VERSION($kernels));
# for the boot iso, use standard isolinux
- _ "cp /usr/lib/syslinux/isolinux.bin .boot_iso/isolinux/isolinux.bin";
+ _ "cp $isolinux_bin .boot_iso/isolinux/isolinux.bin";
+ _ "cp /usr/lib/syslinux/ifcpu.c32 .boot_iso/isolinux/ifcpu.c32";
+ _ "cp /usr/lib/syslinux/ldlinux.c32 .boot_iso/isolinux/ldlinux.c32";
+ _ "cp /usr/lib/syslinux/libcom32.c32 .boot_iso/isolinux/libcom32.c32";
+ _ "cp /usr/lib/syslinux/libgpl.c32 .boot_iso/isolinux/libgpl.c32";
+ _ "cp /usr/lib/syslinux/libmenu.c32 .boot_iso/isolinux/libmenu.c32";
+ _ "cp /usr/lib/syslinux/libutil.c32 .boot_iso/isolinux/libutil.c32";
+ _ "cp /usr/lib/syslinux/chain.c32 .boot_iso/isolinux/chain.c32";
my $with_gfxboot = 0;
- _ "cp /usr/share/gfxboot/themes/Mandriva/install/* .boot_iso/isolinux" if $with_gfxboot;
+ _ "cp /usr/share/gfxboot/themes/Mageia/install/* .boot_iso/isolinux" if $with_gfxboot;
# _ "cp /home/pixel/cooker/soft/theme/mandriva-gfxboot-theme/inst/* .boot_iso/isolinux" if $with_gfxboot;
#_ "cp /home/teuf/mdv/src/mandriva-gfxboot-theme/inst/* .boot_iso/isolinux" if $with_gfxboot;
- _ "cp /usr/lib/syslinux/gfxboot.com .boot_iso/isolinux/gfxboot.com" if $with_gfxboot;
+ _ "cp /usr/lib/syslinux/gfxboot.c32 .boot_iso/isolinux/gfxboot.c32" if $with_gfxboot;
output('.boot_iso/isolinux/isolinux.cfg', syslinux_cfg_all('', $with_gfxboot));
- _ "genisoimage -r -f -J -cache-inodes -V 'Mdv Boot ISO' -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o $iso .boot_iso";
+ if ($ENV{BOOT_AUTOMATIC_METHOD}) {
+ _ "sed -i 's#\\(append .*\\)\\(splash quiet\\|rescue\\)\$#\\1\\2 automatic=$ENV{BOOT_AUTOMATIC_METHOD}#' .boot_iso/isolinux/isolinux.cfg";
+ }
+
+ my $arch = arch();
+ my $options = "-J -joliet-long -r -v -T -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table";
+ my $cmd = "xorriso -as mkisofs -U -A 'Mageia-$ENV{DISTRIB_VERSION}-$arch-netinstall' -V 'Mageia-$ENV{DISTRIB_VERSION}-$arch-netinstall' -volset 'Mageia-$ENV{DISTRIB_VERSION}-$arch' $options";
+ # create efi stuff on the fly
+ if ($arch =~ /x86_64/) {
+ _ "mkdir -p .boot_iso/EFI/BOOT/";
+ # create efi loader
+ my $efi_core = "configfile normal boot linux loadenv ls reboot search search_label";
+ my $efi_part_fs = "part_msdos part_gpt part_apple fat iso9660 udf";
+ my $efi_gfx = "gfxmenu gfxterm efi_gop efi_uga video video_bochs video_cirrus video_fb font png";
+ _ "/usr/bin/grub2-mkimage --prefix='/EFI/BOOT' -O x86_64-efi -o .boot_iso/EFI/BOOT/bootx64.efi $efi_core $efi_part_fs $efi_gfx";
+ _ "cp -f grub2.config .boot_iso/EFI/BOOT/grub.cfg";
+ if ($ENV{BOOT_AUTOMATIC_METHOD}) {
+ _ "sed -i 's#\\(linux .*\\)#\\1 automatic=$ENV{BOOT_AUTOMATIC_METHOD}#' .boot_iso/EFI/BOOT/grub.cfg";
+ _ "sed -i 's#timeout=[0-9]*#timeout=1#' .boot_iso/EFI/BOOT/grub.cfg";
+ }
+ # add theme
+ _ "cp -r -L /boot/grub2/themes .boot_iso/EFI/BOOT/";
+ _ "cp -f grub2.theme .boot_iso/EFI/BOOT/themes/maggy/theme.txt";
+ _ "mkdir -p .boot_iso/EFI/BOOT/fonts";
+ _ "cp -f /usr/share/grub/unicode.pf2 .boot_iso/EFI/BOOT/fonts/";
+ # create efiboot.img, mtools wants the image to be a power of 32.
+ my $efisize = ceil(ceil(chomp_(`du -s -k .boot_iso/EFI`) / 1024) * 1024 / 32) * 32;
+ my $efi_img = ".boot_iso/isolinux/efiboot.img";
+ _ "/sbin/mkdosfs -F12 -C $efi_img $efisize";
+ _ "mcopy -s -i $efi_img .boot_iso/EFI ::";
+ # create iso
+ _ "$cmd -eltorito-alt-boot -e isolinux/efiboot.img -no-emul-boot -o $iso .boot_iso";
+ _ "isohybrid -u $iso";
+ } else {
+ _ "$cmd -o $iso .boot_iso";
+ _ "isohybrid -o 1 $iso";
+ }
rm_rf('.boot_iso');
}
@@ -779,11 +377,11 @@ sub hd_grub {
my ($img) = @_;
my $mapfile = '/tmp/device.map.tmp';
- my ($grub_dir) = glob("/lib/grub/*-*");
+ my ($grub_dir) = glob("/lib/grub/*-mageia");
my @grub_files = map { "$grub_dir/$_" } qw(stage1 stage2);
- my $size = 40_000 + sum(map { -s $_ } @grub_files);
- _ "dd if=/dev/zero of=$img bs=1 count=$size";
+ # mtools wants the image to be a power of 32.
+ my $size = ceil((40_000 + sum(map { -s $_ } @grub_files)) / 32 / 1024) * 32;
_ "rm -rf $tmp_mnt"; mkdir $tmp_mnt;
_ "cp @grub_files $tmp_mnt";
@@ -793,30 +391,31 @@ timeout 10
default 0
fallback 1
-title Mandriva Linux Install
+title Mageia Install
root (hd0,0)
-kernel /cooker/isolinux/alt0/vmlinuz $default_append $default_acpi $default_vga automatic=method:disk
-initrd /cooker/isolinux/alt0/all.rdz
+kernel /cauldron/isolinux/alt0/vmlinuz $default_append $default_acpi $default_vga $default_iswmd automatic=method:disk
+initrd /cauldron/isolinux/alt0/all.rdz
title Help
pause To display the help, press <space> until you reach "HELP END"
pause .
-pause Please see http://qa.mandriva.com/hd_grub.cgi for a friendlier solution
+pause Please see https://doc.mageia.org/ for a friendlier solution
pause .
-pause To specify the location where Mandriva Linux is copied,
-pause choose "Mandriva Linux Install", and press "e".
+pause To specify the location where Mageia is copied,
+pause choose "Mageia Install", and press "e".
pause Then change "root (hd0,0)". FYI:
pause - (hd0,0) is the first partition on first bios hard drive (usually hda1)
pause - (hd0,4) is the first extended partition (usually hda5)
pause - (hd1,0) is the first partition on second bios hard drive
-pause Replace /cooker to suits the directory containing Mandriva Linux
+pause Replace /cauldron to suit the directory containing Mageia
pause .
pause HELP END
EOF
- _ "mkdosfs-with-dir $tmp_mnt $img";
+ _ "/sbin/mkdosfs -C $img $size";
+ _ "mcopy -i $img $tmp_mnt/* ::";
_ "rm -rf $tmp_mnt";
output($mapfile, "(fd0) $img\n");
diff --git a/images/update_kernel b/images/update_kernel
index 37084b39f..e003f457b 100755
--- a/images/update_kernel
+++ b/images/update_kernel
@@ -11,22 +11,17 @@ use lib '../kernel';
use MDK::Common;
use list_modules;
-(my $karch = arch()) =~ s/^i.86$/i586/;
my $rpm = 'rpm --nosignature';
-@ARGV or die "usage: ./update_kernel [--move] (<kernel rpm> ... | <installed kernel name> ...)\n";
+@ARGV or die "usage: ./update_kernel <installed kernel name> ...\n";
eval { rm_rf('all.kernels') }; #- remove old things
mkdir 'all.kernels';
my @kernels = map {
my $kern_ver = rpm2version($_);
- if (/\.rpm$/) {
- extract_kernel($_, $kern_ver);
- } else {
extract_installed_rpm('', $kern_ver);
- }
$kern_ver;
} @ARGV;
@@ -41,40 +36,10 @@ sub rpm2version {
`$rpm $opt $kernel_rpm` =~ m!/boot/vmlinuz-(.*)! && $1 or die "can't find vmlinuz in $kernel_rpm (is it installed?)\n";
}
-sub extract_kernel {
- my ($kernel_rpm, $kern_ver) = @_;
-
- my $dir = "all.kernels/$kern_ver";
-
- warn "Extracting kernel $kern_ver\n";
-
- eval { rm_rf($dir) };
- mkdir_p("$dir/modules");
- sys("rpm2cpio $kernel_rpm | (cd $dir ; cpio -id)");
-
- extract_installed_rpm($dir, $kern_ver);
-
- eval { rm_rf("$dir$_") } foreach qw(/boot /lib /usr);
-}
-
sub extract_installed_rpm {
my ($installed_dir, $kern_ver) = @_;
my $local_dir = "all.kernels/$kern_ver";
- mkdir_p("$local_dir/modules");
+ mkdir_p($local_dir);
sys('cp', "$installed_dir/boot/vmlinuz-$kern_ver", "$local_dir/vmlinuz");
- sys("cp $installed_dir/lib/modules/$kern_ver/modules.* $local_dir");
-
- open(my $F, "find $installed_dir/lib/modules/$kern_ver -name '*.ko.gz' |");
- my $file; while ($file = <$F>) {
- chomp($file);
- system('cp', $file, "$local_dir/modules/" . basename($file)) == 0
- or warn "conflict for $file\n";
- }
-
- sys('perl', '../kernel/modules.pl', 'remove_unneeded_modules', $kern_ver);
- sys('perl', '../kernel/modules.pl', 'get_firmwares', $kern_ver);
- sys('perl', '../kernel/modules.pl', 'make_modules_per_image', $kern_ver);
-
- rm_rf("$local_dir/modules");
}
diff --git a/kernel/Makefile b/kernel/Makefile
index ea4cc1a54..819173f76 100644
--- a/kernel/Makefile
+++ b/kernel/Makefile
@@ -2,7 +2,7 @@ clean:
rm -rf *~
check:
- perl modules.pl check > /dev/null
+ perl -I. modules.pl check > /dev/null
@echo "unlisted drivers: "
- @for i in $$(zcat /usr/share/ldetect-lst/pcitable.gz|cut -f 2 -d \" |egrep -v '^#|ADSL:|Bad:|Card:|H[cs]f:|ISDN:|LT:'|sort|uniq|less);do fgrep -q $$i list_modules.pm|| echo -n "$$i ";done
+ @for i in $$(zcat /usr/share/ldetect-lst/pcitable.gz|cut -f 2 -d \" | grep -E -v '^#|ADSL:|Bad:|Card:|H[cs]f:|ISDN:|LT:'|sort|uniq|less);do grep -F -q $$i list_modules.pm|| echo -n "$$i ";done
@echo
diff --git a/kernel/list_modules.pm b/kernel/list_modules.pm
index 295a884a2..ee0d1f77b 100644
--- a/kernel/list_modules.pm
+++ b/kernel/list_modules.pm
@@ -1,4 +1,4 @@
-package list_modules; # $Id$
+package list_modules;
use MDK::Common;
@@ -15,38 +15,41 @@ our %l = (
{
atm => [ qw(ambassador eni firestream fore_200e he horizon idt77252 iphase lanai nicstar solos-pci zatm) ],
main => [
- if_(arch() =~ /ppc/, qw(bmac fec_mpc52xx ibm_emac mace oaknet sungem)),
- if_(arch() =~ /^sparc/, qw(sunbmac sunhme sunqe)),
- if_(arch() !~ /alpha|sparc/,
qw(3c501 3c503 3c505 3c507 3c509 3c515 3c990 3c990fx),
- qw(82596 ac3200 acenic aironet4500_card amd8111e at1700 atl2 atp),
- qw(bcm4400 cassini cs89x0 de600 de620),
- qw(depca dmfe e2100 eepro eexpress enic eth16i),
- qw(ewrk3 hp hp-plus hp100),
+ qw(82596 ac3200 acenic aironet4500_card altera_tse amd8111e at1700 atl2 atp ax88796c),
+ qw(bcm4400 cassini cs89x0 cx82310_eth de600 de620),
+ qw(depca dmfe dwc-xlgmac e2100 ec_bhf eepro eexpress enic eth16i),
+ qw(ewrk3 fm10k funeth genet hp hp-plus hp100 i40e i40evf iavf ice ionic),
qw(iph5526), #- fibre channel
- qw(jme lance ne ni5010 ni52 ni65 nvnet),
- qw(prism2_plx qlge r6040 rcpci rhineget),
- qw(sb1000 sc92031 smc-ultra smc9194 smsc9420 smsc95xx),
- qw(tc35815 tlan uli526x),
- ),
- if_(arch() !~ /alpha/,
+ qw(i40evf jme lance ne nfp ni5010 ni52 ni65 mv88e6060 nvnet),
+ qw(prism2_plx qlge r6040 rcpci realtek-smi rhineget),
+ qw(sb1000 sc92031 sfc-siena sh_eth smc-ultra smsc911x smc9194 smsc9420 smsc95xx),
+ qw(tc35815 tlan uli526x ),
qw(b44 com20020-pci de2104x),
qw(defxx), # most unused
- qw(dgrs e100 eepro100 epic100 fealnx hamachi natsemi),
- qw(ne2k-pci pcnet32 plip sis900 skfp starfire tulip),
- qw(typhoon via-rhine winbond-840 forcedeth),
+ qw(dgrs e100 eepro100 epic100 fealnx hamachi mana mlx5_core mlxsw_pci natsemi),
+ qw(ne2k-pci pcnet32 plip qede sis900 skfp starfire stmmac-platform tulip),
+ qw(txgbe typhoon via-rhine winbond-840 xgene-enet xilinx_emac forcedeth),
qw(sungem sunhme), # drivers for ultrasparc, but compiled in ix86 kernels...
- ),
qw(3c59x 8139too 8139cp cpmac niu sundance), #rtl8139
+ # add all phys
+ qw(adin adin1100 amd aquantia at803x ax88796b bcm7xxx bcm84881 bcm87xx broadcom cicada cortina davicom dp83848 dp83867 dp83869 dp83td510 et1011c fixed_phy icplus intel-xway),
+ qw(lxt marwell macb macb_pci marwell10g marvell-88x2222 mdio-bcm-unimac mdio-bitbang mdio-cavium mdio_devres mdio-gpio mdio-i2c),
+ qw(mdio-mscc-mii mdio-thunder mdio-xpcs mediatek-ge micrel microchip microchip_t1 microchip_t1s motorcomm mscc national ncn26000 nxp-tja11xx phylink),
+ qw(phy-bcm-kona-usb2 phy-cpcap-usb phy-exynos-usb2 phy-intel-emmc phy-intel-lgm-emmc phy-can-transceiver phy-lgm-usb phy-pxa-28nm-hsic),
+ qw(phy-pxa-28nm-usb2 phy-qcom-usb-hs phy-qcom-usb-hsic phy-tusb1210),
+ qw(qsemi r8152 r8153_ecm r815x realtek rockchip sfp smsc spi_ks8995 ste10Xp teranetics vitesse xilinx_gmii2rgmii),
],
firewire => [ qw(eth1394 pcilynx) ],
gigabit => [
- qw(atl1 atl1c atl1e be2net bnx2 bnx2x cxgb cxgb3 dl2k e1000 e1000e et131x igb ipg ixgb ixgbe myri_sbus netxen_nic ns83820 qla3xxx r8169 s2io sfc sxg sis190 sk98lin skge sky2 slicoss spidernet tehuti tg3 via-velocity virtio_net yellowfin),
+ qw(amd-xgbe alx aqc111 atl1 atl1c atl1e atlantic at91_ether ax88179_178a bcmsysport be2net bna bnx2 bnx2x bnxt_en cxgb cxgb3 cxgb4 dl2k dwc-xlgmac e1000 e1000e et131x),
+ qw(gve hinic hfi1 igb igc ionic ipg ixgb ixgbe lan78xx liquidio liquidio_vf macb mlx4_core mlx4_en mlx5_core mvmdio myri_sbus myri10ge netxen_nic nixge ns83820 pch_gbe),
+ qw(qla3xxx r8169 s2io samsung-sxgbe sfc sfc-falcon sfc-siena sxg_nic sis190 sk98lin skge sky2 slicoss spidernet stmmac tehuti tg3 txgbe via-velocity vxge yellowfin),
qw(bcm5820 bcm5700), #- encrypted
],
raw => [
- qw(ppp_generic ppp_async ppp_deflate bsd_comp),
+ qw(ppp_generic ppp_async ppp_deflate bsd_comp mhi_pci_generic thunderbolt-net),
],
pcmcia => [
qw(3c574_cs 3c589_cs axnet_cs fmvj18x_cs),
@@ -57,36 +60,41 @@ our %l = (
#- protocol reported are not accurate) so we match network adapters against
#- known drivers :-(
usb => [
- qw(catc cdc_ether kaweth pegasus rtl8150 usbnet),
+ qw(aqc111 asix catc cdc_ether ch9200 dm9601 huawei_cdc_ncm kaweth mcs7830 pegasus rtl8150 smsc75xx smsc95xx usbnet),
],
wireless => [
- qw(acx-pci acx-usb adm8211 agnx airo airo_cs aironet4500_cs aironet_cs ar9170usb arlan arusb_lnx),
- qw(at76_usb ath_pci ath5k ath9k atmel_cs atmel_pci b43 b43legacy bcm43xx com20020_cs dyc_ar5),
- qw(hostap_cs hostap_pci hostap_plx i2400m-usb ipw2100 ipw2200 ipw3945 iwl3945 iwl4965 iwlagn iwlwifi),
- qw(madwifi_pci mwl8k netwave_cs ndiswrapper orinoco orinoco_cs orinoco_nortel orinoco_pci orinoco_plx orinoco_tmd),
- qw(p54pci p54usb prism2_cs prism2_pci prism2_usb prism54 r8180 r8192s_usb ray_cs rndis_wlan),
- qw(rt2400 rt2500 rt2570 rt2860 rt2860sta rt2800usb rt2870 rt2870sta rt3070sta rt61 rt73 rtusb),
- qw(rt2400pci rt2500pci rt2500usb rt61pci rt73usb rtl8180 rtl8187se),
- qw(spectrum_cs usbvnet_rfmd vt_ar5k w35und wavelan_cs wl wl3501_cs wvlan_cs zd1201 zd1211rw),
- if_(arch() =~ /ppc/, qw(airport)),
+ qw(8812au 8821ce acx-pci acx-usb adm8211 agnx airo airo_cs aironet4500_cs),
+ qw(aironet_cs ar5523 ar9170usb arlan arusb_lnx at76c50x_usb ath10k_pci ath10k_sdio ath10k_usb ath11k_pci ath5k ath6kl ath6kl_sdio ath6kl_usb ath9k ath9k_htc ath9k_pci_owl_loader),
+ qw(ath_pci atmel_cs atmel_pci b43 b43legacy bcm43xx bcm_wimax bcma brcm80211 brcmsmac brcmfmac carl9170 com20020_cs),
+ qw(dyc_ar5 hostap_cs hostap_pci hostap_plx i2400m_usb ipw2100),
+ qw(ipw2200 ipw3945 iwl3945 iwl4965 iwlagn iwldvm iwlmei iwlmvm iwlwifi libertas_spi madwifi_pci),
+ qw(mt76x2e mt76x2u mt7601u mt76x02 mt76x0e mt76x0u mt7603e mt7615e mt7663u mt7915e mt7921e mt7921s mt7921u mwifiex_pcie mwifiex_sdio mwifiex_usb mwl8k ndiswrapper netwave_cs orinoco orinoco_cs),
+ qw(orinoco_nortel orinoco_pci orinoco_plx orinoco_tmd orinoco_usb p54pci p54spi),
+ qw(p54usb plfxlc prism2_cs prism2_pci prism2_usb prism54 qmi_wwan qtnfmac qtnfmac_pcie r8180),
+ qw(r8187se rtl8188ee rtl8192ce r8192_pci r8192s_usb r8192u_usb r8712u r8723bs r8822be ray_cs rndis_wlan rsi_sdio rsi_usb rt2400 rt2400pci rt2500),
+ qw(rt2500pci rt2500usb rt2570 rt2800pci rt2800usb rt2860 rt2860sta rt2870),
+ qw(rt3070sta rt61 rt61pci rt73 rt73usb rtl8180 rtl8187 rtl8187se rtl818x_pci r8188eu r8192ee r8723au rtl_pci rtl_usb rtusb rtwpci rtw88_8723d rtw88_8723de rtw88_8723du rtw88_8821ce rtw88_8821cu rtw88_8822be rtw88_8822bu rtw88_8822ce rtw88_8822cu),
+ qw(rtw88_8723ds rtw88_8821cs rtw88_8822bs rtw88_8822cs rtw89_8852ae rtw89_8852be rtw89_8852ce),
+ qw(rtl8192se rtl8192cu rtl8192de rtl8192ee rtl8723ae rtl8723be rtl8821ae rtl8xxxu spectrum_cs sr9700 sr9800 ssb usb8xxx usbvnet_rfmd vt6655_stage vt6656_stage vt_ar5k w35und),
+ qw(wavelan_cs wcn36xx wfx wil6210 wilc1000-sdio wl wl1251_sdio wl1251_spi wl12xx wl18xx wl3501_cs wlcore_sdio wvlan_cs zd1201 zd1211rw),
],
isdn => [
qw(avmfritz c4 cdc-acm b1pci divas hfc4s8s_l1 hfc_usb hfc4s8s_l1 hisax hisax_st5481 hisax_fcpcipnp hysdn sedlfax t1pci tpam w6692pci),
- qw(hfcpci hfcmulti hfcsusb), # mISDN
+ qw(avmfritz hfcpci hfcmulti hfcsusb mISDNinfineon netjet), # mISDN
qw(fcpci fcdsl fcdsl fcdsl2 fcdslsl fcdslslusb fcdslusb fcdslusba fcusb fcusb2 fxusb fxusb_CZ)
],
cellular => [
- qw(hso nozomi option sierra),
+ qw(cdc_mbim hso nozomi option sierra),
],
modem => [
- qw(ltmodem mwave sm56),
+ qw(ltmodem mwave sm56 ft1000),
],
slmodem => [
qw(slamr slusb snd-ali5451 snd-atiixp-modem snd-intel8x0m snd-via82xx-modem),
],
- tokenring => [ qw(3c359 abyss ibmtr lanstreamer olympic proteon skisa smctr tms380tr tmspci) ],
wan => [ qw(c101 cosa cyclomx cycx_drv dlci dscc4 farsync hdlc hostess_sv11 lapbether lmc n2 pc300 pci200syn sbni sdla sdladrv sealevel syncppp wanxl z85230) ],
usb_dsl => [ qw(cxacru speedtch ueagle-atm usbatm xusbatm) ],
+ virtual => [ qw(ena hv_netvsc i2c-virtio vboxdrv virtio-iommu virtio_net virtio_pci_modern_dev vmxnet3 xen-netfront) ],
},
################################################################################
@@ -94,75 +102,91 @@ our %l = (
{
# ide drivers compiled as modules:
ide => [
- qw(aec62xx ali14xx alim15x3 amd74xx atiixp cmd64x cy82c693 cs5520 cs5530 cs5535 cs5536),
+ qw(aec62xx alim15x3 amd74xx atiixp cmd64x),
qw(delkin_cb dtc2278 hpt34x hpt366 ns87415 ht6560b it8172 it8213 it821x jmicron),
qw(opti621 pdc202xx_new pdc202xx_old piix qd65xx rz1000 sc1200 serverworks siimage sis5513 slc90e66),
qw(tc86c001 triflex trm290 tx4938ide tx4939ide umc8672 via82cxxx ide-pci-generic ide-generic),
],
scsi => [
- if_(arch() =~ /ppc/, qw(mesh mac53c94)),
- if_(arch() =~ /^sparc/, qw(qlogicpti)),
- if_(arch() !~ /alpha/ && arch() !~ /sparc/,
'53c7,8xx',
- qw(AM53C974 BusLogic NCR53c406a a100u2w advansys aha152x aha1542 aha1740),
- qw(atp870u dc395x dc395x_trm dmx3191d dtc g_NCR5380 in2000 initio mvsas pas16 pci2220i psi240i fdomain),
- qw(qla1280 qla2x00 qla2xxx qlogicfas qlogicfc ),
- qw(seagate wd7000 shasta sim710 stex sym53c416 t128 tmscsim u14-34f ultrastor),
- qw(eata eata_pio eata_dma nsp32),
- ),
- qw(aic7xxx aic7xxx_old aic79xx pci2000 qlogicfas408 sym53c8xx lpfc lpfcdd), # ncr53c8xx
+ qw(a100u2w advansys aha152x aha1542 aha1740 am53c974 atp870u),
+ qw(be2iscsi bfa BusLogic dc395x dc395x_trm dmx3191d dtc eata eata_dma),
+ qw(eata_pio efct fdomain fdomain_cs fdomain_pci g_NCR5380 in2000 initio mpi3m mpt2sas mpt3sas mvsas myrb myrs NCR53c406a),
+ qw(nsp32 pas16 pci2220i pm80xx pm8001 psi240i qla1280 qla2x00 qla2xxx),
+ qw(qlogicfas qlogicfc rsxx seagate shasta skd sim710 snic stex sym53c416),
+ qw(t128 tmscsim u14-34f ultrastor wd7000 xen-scsiback xen-scsifront),
+ qw(aic7xxx aic7xxx_old aic79xx pci2000 qlogicfas408 sym53c8xx wd719x lpfc lpfcdd), # ncr53c8xx
],
sata => [
# note that ata_piix manage RAID devices on ICH6R
- qw(ahci aic94xx ata_adma ata_piix pata_pdc2027x pdc_adma sata_fsl sata_inic162x sata_mv sata_nv sata_promise sata_qstor sata_sil sata_sil24 sata_sis sata_svw sata_sx4 sata_uli sata_via sata_vsc sx8),
+ qw(ahci ahci_dwc aic94xx ata_adma ata_piix pata_pdc2027x pdc_adma),
+ qw(sata_dwc_460ex sata_fsl sata_inic162x sata_mv sata_nv sata_promise),
+ qw(sata_qstor sata_rcar sata_sil sata_sil24 sata_sis sata_svw sata_sx4 sata_uli sata_via sata_vsc sx8),
# new drivers: old ide drivers ported over libata:
- qw(mv-ahci pata_ali pata_amd pata_artop pata_atiixp pata_bf54x pata_cmd64x pata_cmd640 pata_cs5520 pata_cs5530 pata_cs5535 pata_cs5536 pata_cypress),
- qw(pata_efar pata_hpt366 pata_hpt37x pata_hpt3x2n pata_hpt3x3 pata_isapnp pata_it821x pata_it8172 pata_it8213 pata_jmicron),
- qw(pata_legacy pata_marvell pata_mpiix pata_netcell pata_ninja32 pata_ns87410 pata_ns87415 pata_oldpiix pata_opti pata_optidma),
- qw(pata_pdc2027x pata_pdc202xx_old pata_platform pata_qdi pata_radisys pata_rz1000),
- qw(pata_sc1200 pata_sch pata_serverworks pata_sil680 pata_sis pata_sl82c105 pata_triflex pata_via pata_winbond ata_generic),
- if_(arch() =~ /ppc/, 'sata_fsl'),
+ qw(ata_generic mv-ahci pata_ali pata_amd pata_artop pata_atiixp pata_atp867x),
+ qw(pata_bf54x pata_cmd640 pata_cmd64x pata_cs5520 pata_cs5530),
+ qw(pata_cs5535 pata_cs5536 pata_cypress pata_efar pata_hpt366),
+ qw(pata_hpt37x pata_hpt3x2n pata_hpt3x3 pata_isapnp pata_it8172),
+ qw(pata_it8213 pata_it821x pata_jmicron pata_legacy pata_marvell),
+ qw(pata_mpiix pata_netcell pata_ninja32 pata_ns87410),
+ qw(pata_ns87415 pata_oldpiix pata_opti pata_optidma),
+ qw(pata_pdc2027x pata_pdc202xx_old pata_piccolo pata_platform pata_qdi),
+ qw(pata_radisys pata_rdc pata_rz1000 pata_sc1200 pata_sch),
+ qw(pata_serverworks pata_sil680 pata_sis pata_sl82c105),
+ qw(pata_triflex pata_via pata_winbond),
qw(pata_acpi),
],
hardware_raid => [
- if_(arch() =~ /^sparc/, qw(pluto)),
- if_(arch() !~ /alpha/ && arch() !~ /sparc/,
# 3w-xxxx drives ATA-RAID, 3w-9xxx and arcmsr drive SATA-RAID
- qw(a320raid megaide),
- qw(3w-9xxx 3w-xxxx aacraid arcmsr cciss cpqfc cpqarray DAC960 dpt_i2o gdth hptiop i2o_block ipr it821x it8212),
- qw(iteraid megaraid megaraid_mbox megaraid_sas mptfc mptsas mptspi mptscsih qla2100 qla2200 qla2300 qla2322 qla4xxx qla6312 qla6322 pdc-ultra),
- qw(ips ppa imm),
- ),
+ qw(3w-9xxx 3w-sas 3w-xxxx a320raid aacraid arcmsr cciss cpqarray),
+ qw(cpqfc csiostor DAC960 dpt_i2o esas2r gdth hpsa hptiop i2o_block imm ipr ips isci),
+ qw(it8212 it821x iteraid megaide megaraid megaraid_mbox),
+ qw(megaraid_sas mptfc mptsas mptscsih mptspi pdc-ultra pmcraid ppa),
+ qw(qla2100 qla2200 qla2300 qla2322 qla4xxx qla6312 qla6322 smartpqi),
],
- virtual => [ qw(xenblk virtio_blk) ],
+ virtual => [ qw(hv_storvsc virtio_blk virtio_scsi vmw_pvscsi xenblk xen-blkfront) ],
pcmcia => [ qw(aha152x_cs fdomain_cs nsp_cs qlogic_cs ide-cs pata_pcmcia sym53c500_cs) ],
raw => [ qw(ide-gd_mod sd_mod) ],
- usb => [ qw(usb-storage) ],
+ usb => [ qw(keucr uas ums-alauda ums-cypress ums-datafab ums-eneub6250 ums-freecom ums-isd200),
+ qw(ums-jumpshot ums-karma ums-onetouch ums-realtek ums-sddr09 ums-sddr55 ums-usbat usb-storage) ],
firewire => [ qw(sbp2) ],
cdrom => [ qw(ide-cd_mod sr_mod) ],
- card_reader => [ qw(sdhci tifm_sd tifm_7xx1) ],
+ card_reader => [ qw(rts5208 rtsx_pci rtsx_usb sdhci sdhci-pci tifm_sd tifm_7xx1 toshsd ushc via-sdmmc) ],
},
################################################################################
bus =>
{
- usb => [ qw(ehci-hcd hwa-hc isp116x-hcd isp1760 ohci-hcd r8a66597-hcd sl811_cs sl811-hcd uhci-hcd u132-hcd usb-uhci usb-ohci whci-hcd) ],
- bluetooth => [ qw(bcm203x bfusb bpa10x btusb) ],
+ usb => [ qw(bcma-hcd c67x00 dwc3-haps dwc3 dwc3-pci ehci-hcd ehci-pci ehci-platform ehci-tegra fhci fusbh200-hcd hwa-hc
+ imx21-hcd isp116x-hcd isp1362-hcd isp1760 ohci-hcd ohci-pci ohci-platform oxu210hp-hcd
+ r8a66597-hcd renesas-usbhs sl811_cs sl811-hcd ssb-hcd u132-hcd
+ uhci-hcd usb-ohci usb-uhci vhci-hcd whci-hcd xen-hcd xhci-hcd xhci-pci xhci-pci-renesas xhci-plat-hcd) ],
+ bluetooth => [ qw(ath3k bcm203x bfusb bluecard_cs bpa10x bt3c_cs btusb dtl1_cs) ],
firewire => [ qw(ohci1394) ],
i2c => [
- qw(i2c-ali1535 i2c-ali1563 i2c-ali15x3 i2c-amd756 i2c-amd8111 i2c-i801 i2c-i810 i2c-nforce2),
- qw(i2c-piix4 i2c-prosavage i2c-savage4 i2c-sis5595 i2c-sis630 i2c-sis96x i2c-via i2c-viapro i2c-voodoo3),
- if_(arch() !~ /^ppc/, qw(i2c-hydra i2c-ibm_iic i2c-mpc)),
+ qw(i2c_algo_bit i2c-ali1535 i2c-ali1563 i2c-ali15x3 i2c-amd756 i2c-amd8111 i2c-amd-mp2-pci i2c-amd-mp2-plat i2c-i801 i2c-i810 i2c_designware_platform i2c-nforce2),
+ qw(i2c-piix4 i2c-prosavage i2c-savage4 i2c-sis5595 i2c-sis630 i2c-sis96x i2c_smbus i2c-via i2c-viapro i2c-voodoo3),
+ qw(i2c-hydra i2c-ibm_iic i2c-mpc i2c-amd-mp2-pci i2c-amd-mp2-plat),
],
pcmcia => [
- if_(arch() !~ /^sparc/, qw(au1x00_ss i82365 i82092 pd6729 tcic vrc4171_card vrc4173_cardu yenta_socket)), # cb_enabler
+ qw(au1x00_ss i82365 i82092 pd6729 tcic vrc4171_card vrc4173_cardu yenta_socket), # cb_enabler
],
- hid => [ qw(hid-a4tech hid-apple hid-belkin hid-cherry hid-chicony
- hid-cypress hid-ezkey hid-gaff hid-gyration hid-logitech
- hid-microsoft hid-monterey hid-multilaser hid-ntrig
- hid-petalynx hid-pl hid-samsung hid-sony hid-sunplus
- hid-tmff hid-topseed hid-zpff ff-memless)],
+ hid => [ qw(amd-mp2-pcie amd_sfh amd-sfhtp-hid ff-memless hid hid-a4tech hid-alps hid-apple hid-appleir hid-asus hid-aureal hid-axff hid-belkin hid-betopff hid_bigbenff
+ hid-cherry hid-chicony hid-cmedia hid-corsair hid-cougar hid-cp2112 hid-creative-sb0540 hid-cypress hid-dr hid-drff hid-elan hid-elecom hid-elo hid-emsff hid-evision
+ hid-ezkey hid-gaff hid-gembird hid-generic hid-gfrm hid-google-hammer hid-gt683r hid-gyration hid-holtek-kbd hid-holtekff hid-holtek-mouse
+ hid-hyperv hid-icade hid-ite hid-jabra hid-kensington hid-keytouch hid-kye hid-lcpower hid-led hid-lenovo hid-lenovo-tpkbd hid-lg-g15
+ hid-logitech hid-logitech-dj hid-logitech-hidpp hid-macally hid-magicmouse hid-megaworld hid-mf hid-microsoft hid-monterey
+ hid-multilaser hid-multitouch hid-nintendo hid-ntrig hid-ortek hid-penmount hid-petalynx hid-picolcd
+ hid-pl hid-plantronics hid-playstation hid-primax hid-prodikeys hid_razer hid_redragon hid-retrode hid-roccat hid-roccat-arvo hid-roccat-common hid-rmi
+ hid-roccat-isku hid-roccat-kone hid-roccat-koneplus hid-roccat-konepure hid-roccat-kovaplus hid-roccat-lua
+ hid-roccat-pyra hid-roccat-ryos hid-roccat-savu hid-saitek hid-samsung hid-semitek hid-sensor-hub hid_sensor_accel_3d hid_sensor_gyro_3d hid_sensor_trigger hid-sjoy hid-sony
+ hid-speedlink hid_steam hid-steelseries hid-sunplus hid-thrustmaster hid-tivo hid-tmff hid-topseed hid-twinhan
+ hid-uclogic hid_vivaldi hid-waltop hid-wiimote hid-xiaomi hid-xinmo hid-zpff hid-zydacron wacom
+ i2c-hid-acpi
+ intel-ish-ipc intel-ishtp-hid intel-ishtp intel-ishtp-loader ipts ithc
+ surface_hid surface_kbd) ],
+
#serial_cs
#ftl_cs 3c575_cb apa1480_cb epic_cb serial_cb tulip_cb iflash2+_mtd iflash2_mtd
#cb_enabler
@@ -170,14 +194,13 @@ our %l = (
fs =>
{
- network => [ qw(af_packet nfs smbfs) ],
+ network => [ qw(af_packet nfs nfsv2 nfsv3 nfsv4 smbfs) ],
cdrom => [ qw(isofs) ],
loopback => [ qw(isofs loop squashfs) ],
local => [
- if_(arch() =~ /^ppc/, qw(hfs)),
- qw(reiserfs reiser4 jfs xfs ntfs vfat ext3 ext4),
+ qw(btrfs exfat ext3 ext4 f2fs jfs nilfs2 ntfs ntfs3 reiserfs vfat xfs),
],
- various => [ qw(romfs ufs unionfs) ],
+ various => [ qw(efivarfs efibc capsule-loader overlay romfs ufs fuse) ],
},
@@ -185,83 +208,112 @@ our %l = (
multimedia =>
{
sound => [
- if_(arch() =~ /ppc/, qw(dmasound_pmac snd-aoa snd-powermac)),
- if_(arch() =~ /sparc/, qw(snd-sun-amd7930 snd-sun-cs4231 snd-sun-dbri)),
- if_(arch() !~ /^sparc/,
qw(ad1816 ad1848 ad1889 ali5455 audigy audio awe_wave cmpci cs4232 cs4281 cs46xx cx88-alsa),
qw(emu10k1 es1370 es1371 esssolo1 forte gus i810_audio ice1712 kahlua mad16 maestro),
qw(maestro3 mpu401 msnd_pinnacle nm256_audio nvaudio opl3 opl3sa opl3sa2 pas2 pss),
- qw(rme96xx sam9407 sb sgalaxy snd-ad1816a snd-ad1848 snd-ad1889 snd-ali5451 snd-als100 snd-als300),
+ qw(rme96xx sam9407 sb sgalaxy snd-pci-acp3x snd-ad1816a snd-ad1848 snd-ad1889 snd-ali5451 snd-als100 snd-als300),
qw(snd-als4000 snd-atiixp snd-au8810 snd-au8820 snd-au8830 snd-audigyls snd-aw2 snd-azt2316 snd-azt2320 snd-azt3328 snd-azx),
- qw(snd-asihpi snd-at73c213 snd-bt87x snd-ca0106 snd-cmi8330 snd-cmi8788 snd-cmipci),
+ qw(snd-asihpi snd-at73c213 snd-bcd2000 snd-bebob snd-bt87x snd-ca0106 snd-cmi8330 snd-cmi8788 snd-cmipci),
qw(snd-cs4231 snd-cs4232 snd-cs4236 snd-cs4281 snd-cs46xx snd-cs5530 snd-cs5535audio),
qw(snd_ctxfi),
qw(snd-darla20 snd-darla24 snd-dt019x snd-echo3g snd-emu10k1 snd-emu10k1x),
qw(snd-ens1370 snd-ens1371 snd-es1688 snd-es18xx snd-es1938 snd-es1968 snd-es968),
- qw(snd-fm801 snd-gina20 snd-gina24 snd-gina3g),
+ qw(snd-fireworks snd-fm801 snd-gina20 snd-gina24 snd-gina3g),
qw(snd-gusclassic snd-gusextreme snd-gusmax),
qw(snd-hda-intel snd-hdsp snd-hdspm snd-ice1712 snd-ice1724),
qw(snd-indi snd-indigo snd-indigodj snd-indigodjx snd-indigoio snd-indigoiox snd-intel8x0 snd-interwave),
- qw(snd-interwave-stb snd-korg1212 snd-layla20 snd-layla24 snd-layla3g snd-lx6464es),
+ qw(snd-interwave-stb snd-korg1212 snd-layla20 snd-layla24 snd-layla3g snd-lola snd-lx6464es),
qw(snd-maestro3 snd-mia snd-mixart snd-mona snd-mpu401 snd-nm256),
- qw(snd-opl3sa2 snd-opti92x-ad1848 snd-opti92x-cs4231 snd-opti93x snd-oxygen snd-pcsp snd-pcxhr snd-riptide snd-rme32),
- qw(snd-rme96 snd-rme9652 snd-sb16 snd-sb8 snd-sbawe snd-sc6000 snd-sgalaxy snd-sis7019 snd-sonicvibes),
- qw(snd-sscape snd-trident snd-via82xx snd-virtuoso snd-vx222 snd-vxp440 snd-vxpocket snd-wavefront),
- qw(snd-ymfpci sonicvibes sscape trident via82cxxx_audio wavefront ymfpci),
- ),
- ],
- tv => [ qw(bt878 bttv cx23885 cx8800 cx8802 cx88-blackbird dpc7146 ivtv mxb pvrusb2 saa7134 zr36067) ],
+ qw(snd-opl3sa2 snd-opti92x-ad1848 snd-opti92x-cs4231 snd-opti93x snd-oxygen snd_pci_acp5x snd-pcsp snd-pcxhr snd-riptide snd-rme32),
+ qw(snd-rme96 snd-rme9652 snd-sb16 snd-sb8 snd-sbawe snd-sc6000 snd-sgalaxy snd-sis7019),
+ qw(snd-soc-cs35l56-i2c snd-soc-cs35l56 snd-soc-cs35l56-sdw snd-soc-cs35l56-shared snd-soc-cs35l56-spi snd-soc-cs42l42-sdw snd-soc-idt821034),
+ qw(snd-soc-max98363 snd-soc-rt1318-sdw snd-soc-rt712-sdca-dmic snd-soc-rt712-sdca snd-soc-sma1303 snd-soc-avs-max98927 snd-soc-avs-probe),
+ qw(snd-sof-amd-renoir snd-sof-acpi-intel-bdw snd-sof-intel-hda-mlink snd-sof-acpi-intel-byt snd-sof-pci snd-sonicvibes),
+ qw(snd-sscape snd-trident snd-usb-variax snd-via82xx snd-virtuoso snd-vx222 snd-vxp440 snd-vxpocket snd-wavefront),
+ qw(snd_xen_front snd-ymfpci sonicvibes soundwire-amd sscape trident via82cxxx_audio virtio_snd wavefront ymfpci),
+ ],
+ tv => [ qw(bt878 bttv cx23885 cx25821 cx8800 cx8802 cx88-blackbird dpc7146),
+ qw(em28xx ivtv mxb pvrusb2 saa7134 saa7164 zr36067) ],
dvb => [
- qw(b2c2-flexcop-pci b2c2-flexcop-usb budget budget-av budget-ci cinergyT2 dm1105),
- qw(dvb-dibusb dvb-ttpci dvb-ttusb-budget dvb-usb-a800 dvb-usb-af9015),
- qw(dvb-usb-ce6230 dvb-usb-cinergyT2 dvb-usb-cxusb),
- qw(dvb-usb-dib0700 dvb-usb-dibusb-mb dvb-usb-dibusb-mc dvb-usb-digitv dvb-usb-dtt200u dvb-usb-dtv5100),
- qw(dvb-usb-gp8ps dvb-usb-nova-t-usb2 dvb-usb-ttusb2 dvb-usb-umt-010 dvb-usb-vp702x dvb-usb-vp7045),
- qw(firedtv hexium_gemini hexium_orion pluto2 skystar2 ttusb_dec),
+ qw(b2c2-flexcop-pci b2c2-flexcop-usb budget budget-av),
+ qw(budget-ci cinergyT2 dm1105 dvb-dibusb dvb-ttpci),
+ qw(dvb-ttusb-budget dvb-usb-a800 dvb-usb-af9015 dvb-usb-ce6230),
+ qw(dvb-usb-cinergyT2 dvb-usb-cxusb dvb-usb-dib0700),
+ qw(dvb-usb-dibusb-mb dvb-usb-dibusb-mc dvb-usb-digitv),
+ qw(dvb-usb-dtt200u dvb-usb-dtv5100 dvb-usb-ec168 dvb-usb-friio dvb-usb-gp8ps),
+ qw(dvb-usb-nova-t-usb2 dvb-usb-ttusb2 dvb-usb-umt-010),
+ qw(dvb-usb-vp702x dvb-usb-vp7045 earth-pt1 firedtv hexium_gemini),
+ qw(hexium_orion netup-unidvb pluto2 skystar2 smsusb ttusb_dec),
],
photo => [ qw(dc2xx mdc800) ],
- radio => [ qw(radio-gemtek-pci radio-maestro radio-maxiradio) ],
+ radio => [ qw(radio-gemtek-pci radio-keene radio-maestro radio-ma901
+ radio-maxiradio radio-miropcm20 radio-mr800 radio-raremono radio-shark
+ radio-usb-si470x shark2) ],
scanner => [ qw(scanner microtek) ],
+ firewire => [ qw(snd-dice snd-firewire-digi00x snd-firewire-speakers snd-isight snd-oxfw snd-scs1x snd-firewire-tascam) ],
gameport => [ qw(cs461x ns558 emu10k1-gp fm801-gp lightning ns558 vortex) ],
- usb_sound => [ qw(audio dabusb dsbr100 snd-usb-audio snd-usb-caiaq snd-usb-usx2y usb-midi) ],
- webcam => [ qw(cafe_ccic cpia_usb cpia2 cyber2000fb em28xx et61x251 gspca ibmcam konicawc mod_quickcam ov511 ov511-alt ov518_decomp ov51x-jpeg ovfx2 pwc qc-usb-messenger quickcam quickcam_messenger se401 stv680 sn9c102 tcm825x ultracam usbvideo usbvision vicam w9968cf zc0301) ],
+ usb_sound => [ qw(audio dabusb dsbr100 snd-usb-audio snd-usb-6fire snd-usb-caiaq snd-usb-hiface snd-usb-usx2y usb-midi) ],
+ webcam => [
+ qw(cafe_ccic cpia2 cpia_usb cyber2000fb et61x251 gspca),
+ qw(gspca_benq gspca_conex gspca_cpia1 gspca_dtcs033 gspca_etoms
+ gspca_finepix gspca_gl860 gspca_jeilinj gspca_jl2005bcd
+ gspca_kinect gspca_konica gspca_m5602 gspca_mars
+ gspca_mr97310a gspca_nw80x gspca_ov519 gspca_ov534
+ gspca_ov534_9 gspca_pac207 gspca_pac7302 gspca_pac7311
+ gspca_se401 gspca_sn9c2028 gspca_sn9c20x gspca_sonixb
+ gspca_sonixj gspca_spca1528 gspca_spca500 gspca_spca501
+ gspca_spca505 gspca_spca506 gspca_spca508 gspca_spca561
+ gspca_sq905 gspca_sq905c gspca_sq930x gspca_stk014 gspca_stk1135
+ gspca_stv0680 gspca_stv06xx gspca_sunplus gspca_t613
+ gspca_topro gspca_touptek gspca_tv8532 gspca_vc032x gspca_vicam
+ gspca_xirlink_cit gspca_zc3xx),
+ qw(ibmcam konicawc mod_quickcam ov511 ov511-alt ov518_decomp),
+ qw(ov51x-jpeg ovfx2 pwc qc-usb-messenger quickcam quickcam_messenger),
+ # both STV06xx & stv06xx b/c drivers/media/video/gspca/stv06xx/stv06xx.h
+ # wrongly use upcase letters:
+ qw(se401 sn9c102 STV06xx stv06xx stv680 tcm825x ultracam),
+ qw(usbvideo usbvision uvcvideo vicam w9968cf zc0301 zc3xx),
+ ],
},
# USB input stuff get automagically loaded by hotplug and thus
# magically work through /dev/input/mice multiplexing:
input => {
joystick => [
- qw(iforce xpad),
+ qw(iforce iforce-serio iforce-usb xpad),
# there're more drivers in drivers/input/joystick but they support non USB or PCI devices
# and thus cannot be detected but by slow (and maybe dangerous?) load_category:
qw(a3d adi analog cobra db9 gamecon gf2k grip grip_mp guillemot interact),
- qw(joydump magellan sidewinder spaceball spaceorb stinger tmdc turbografx warrior)
+ qw(joydump magellan pxrc qwiic-joystick sidewinder spaceball spaceorb stinger tmdc turbografx warrior)
],
remote => [ qw(ati_remote) ],
# USB tablets and touchscreens:
- tablet => [ qw(acecad aiptek wacom kbtab) ],
- touchscreen => [ qw(ads7846_ts gunze hp680_ts_input itmtouch mk712 mtouch mtouchusb touchkitusb) ],
+ tablet => [ qw(acecad aiptek wacom wacom_serial4 kbtab) ],
+ touchscreen => [ qw(ads7846_ts bu21013_ts bu21029_ts gunze hp680_ts_input itmtouch mk712 mtouch sur40 usbtouchscreen) ],
},
various =>
# just here for classification, unused categories (nor auto-detect, nor load_thiskind)
{
raid => [
- qw(dm-crypt dm-mirror dm-mod dm-zero linear lvm-mod multipath raid0 raid1 raid10 raid456 raid5 raid6),
- qw(dm-delay dm-log dm-mem-cache dm-message dm-raid4-5 dm-region_hash faulty md-mod),
+ qw(dm-bio-prison dm-bufio dm-cache dm-clone dm-crypt dm-log dm-log-userspace dm-mirror dm-mod dm-multipath dm-persistent-data dm-queue-length dm-raid),
+ qw(dm-region-hash dm-round-robindm-service-time dm-snapshot dm-zero faulty linear lvm-mod md-mod multipath md-mod raid0 raid10 raid1 raid456),
+ # needed by raid456 and dm-raid 456 target
+ qw(async_memcpy async_pq async_raid6_recov async_tx async_xor raid6_pq xor),
],
mouse => [
- qw(atixlmouse busmouse generic_serial inport ioc3_serial logibm logibusmouse msbusmouse pcips2 qpmouse synclinkmp),
- if_(arch() =~ /ppc/, 'macserial'),
- qw(mousedev usbhid usbmouse),
+ qw(atixlmouse busmouse cyapatp elan_i2c generic_serial inport ioc3_serial logibm logibusmouse msbusmouse psmouse pcips2 qpmouse synclinkmp),
+ qw(mousedev usbhid usbmouse synaptics_usb),
],
char => [
- if_(arch() =~ /ia64/, qw(efivars)),
qw(applicom n_r3964 nvram pc110pad ppdev),
qw(wdt_pci i810-tco sx), #- what are these???
],
crypto => [
- qw(sha256_generic cbc amd768_rng amd7xx_tco i810_rng hw_random leedslite padlock),
+ qw(aes_generic aesni_intel cbc ccm cryptd n5pf padlock-aes padlock-sha sha256_generic virtio_crypto virtio_rng xts),
+ qw(aria-aesni-avx2-x86_64 aria-gfni-avx512-x86_64 amd-rng intel-rng),
+ qw(af_alg algif_aead algif_hash algif_rng algif_skcipher),
+ qw(lib80211_crypt_ccmp lib80211_crypt_tkip lib80211_crypt_wep michael_mic),
],
laptop => [
qw(i8k sonypi toshiba),
@@ -270,25 +322,52 @@ our %l = (
qw(8250_pci 8250 epca esp isicom istallion jsm moxa mxser mxser_new stallion sx synclink synclinkmp),
],
other => [
- qw(defxx ide-floppy ide-scsi ide-tape loop lp nbd sg st),
+ qw(defxx ide-floppy ide-tape loop lp nbd sg st),
qw(parport_pc parport_serial),
- qw(btaudio mmc_block),
-
- 'cryptoloop', 'aes-i586', 'aes-x86_64', 'aes_generic',
- if_(arch() =~ /sparc/, 'openprom'),
-
- qw(evdev), qw(usblp printer), 'floppy',
+ qw(btaudio),
+ qw(mmc_block sdhci-acpi), # eMMC
+ 'cryptoloop',
+ 'ulpi',
+
+ # Virtualization:
+ qw(hv_balloon pci-hyperv pci-hyperv-intf),
+ qw(mlx5-vfio-pci),
+ # Don't include vboxvideo, it doesn't work properly in stage1 or stage2 (mga#23467)
+ qw(vboxsf vboxguest vmw_balloon),
+ qw(nd_virtio virtio virtiofs virtio_balloon virtio-console virtio_input virtio_pci virtio_pmem virtio_ring vhost_iotlb vhost_scsi vhost_vsock hyperv-keyboard),
+ qw(xen-front-pgdir-shbuf),
+
+ # xfs and btrfs needs crc32c(-intel), f2fs needs crc32(_generic)
+ qw(crc32c crc32_generic),
+ 'nvme',
+
+ qw(evdev), qw(usblp printer), 'floppy', 'microcode', 'usb_common',
+ qw(acpi_cpufreq processor),
+ qw(bcm_sf2),
+ qw(intel-lpss intel-lpss-acpi intel-lpss-pci),
+ qw(usbip-host),
+ qw(vgem),
+
+ # drivers/platform/x86:
+ qw(acerhdf acer-wireless acer-wmi alienware-wmi amilo-rfkill apple-gmux asus-laptop asus-nb-wmi asus-wireless asus-wmi classmate-laptop compal-laptop),
+ qw(dcdbas dell-laptop dell-rbtn dell-smbios dell-smo8800 dell-wmi-aio dell-wmi-descriptor dell-wmi dell-wmi-ddv dell-wmi-led eeepc-laptop eeepc-wmi fujitsu-laptop),
+ qw(fujitsu-tablet gpd-pocket-fan hdaps hp_accel hp-wireless hp-wmi huawei-wmi i2c-multi-instantiate ibm_rtl ideapad-laptop intel_atomisp2_pm),
+ qw(intel_bxtwc_tmu intel_chtdc_ti_pwrbtn intel-hid intel_int0002_vgpio intel_ips intel_menlow intel_oaktrail intel_pmc_ipc intel_punit_ipc intel-rst),
+ qw(intel-smartconnect intel_telemetry_core intel_telemetry_debugfs intel_telemetry_pltdrv intel-vbtn intel-wmi-thunderbolt lenovo-ymc lg-laptop mlx-platform),
+ qw(msi-ec msi-laptop msi-wmi mxm-wmi panasonic-laptop peaq-wmi samsung-laptop samsung-q10 shuttle-wmi sony-laptop surface3_button surface3-wmi),
+ qw(surfacepro3_button system76_acpi thinkpad_acpi topstar-laptop toshiba_acpi toshiba_bluetooth toshiba_haps toshiba-wmi wmi-bmof wmi xiaomi-wmi),
+ # no more a platform driver:
+ qw(pvpanic),
+
+ # drivers/platform/chrome:
+ qw(chromeos_laptop),
#- these need checking
qw(rrunner meye),
- qw(virtio_pci virtio_balloon),
+ qw(mei pch_phub),
],
agpgart => [
- if_(arch() =~ /alpha/, qw(alpha-agp)),
- if_(arch() =~ /ia64/, qw(hp-agp i460-agp)),
- if_(arch() =~ /ppc/, qw(uninorth-agp)),
-
qw(ali-agp amd64-agp amd-k7-agp ati-agp efficeon-agp intel-agp),
qw(k7-agp mch-agp nvidia-agp sis-agp sworks-agp via-agp),
],
@@ -307,7 +386,7 @@ sub load_dependencies {
my ($filename, @fdeps) = map {
s![^ ]*/!!g;
s!\.ko!!g;
- s!\.gz!!g;
+ s!\.[gx]z!!g;
$_;
} $m, split(' ', $d);
@@ -377,7 +456,7 @@ sub module2category {
}
sub ethernet_categories() {
- 'network/main|gigabit|pcmcia|tokenring|usb|wireless|firewire';
+ 'network/main|gigabit|pcmcia|usb|wireless|firewire';
}
sub sub_categories {
diff --git a/kernel/modules.pl b/kernel/modules.pl
index a47b272f9..9ec6f5356 100644
--- a/kernel/modules.pl
+++ b/kernel/modules.pl
@@ -41,36 +41,33 @@ sub modules() {
@nls_modules, map { category2modules($_) } split(' ', $images_cat);
}
-sub get_firmwares() {
+sub list_needed_modules {
my ($kern_ver) = @_;
- foreach (all("all.kernels/$kern_ver/modules")) {
- foreach(`/sbin/modinfo -Ffirmware "all.kernels/$kern_ver/modules/$_"`) {
- mkdir_p(dirname("all.kernels/$kern_ver/firmware/$_"));
- eval { cp_af("/lib/firmware/$_", "all.kernels/$kern_ver/firmware/$_"); };
- }
- }
-}
-
-sub remove_unneeded_modules {
- my ($kern_ver) = @_;
-
- load_dependencies("all.kernels/$kern_ver/modules.dep");
+ load_dependencies("/lib/modules/$kern_ver/modules.dep");
my @all = modules();
my @all_with_deps = map { dependencies_closure($_) } @all;
- my %wanted_modules = map { (list_modules::modname2filename($_) . ".ko.gz" => 1) } @all_with_deps;
- foreach (all("all.kernels/$kern_ver/modules")) {
- $wanted_modules{$_} or unlink "all.kernels/$kern_ver/modules/$_";
+ my %wanted_modules = map { (list_modules::modname2filename($_) => 1) } @all_with_deps;
+ foreach (`find /lib/modules/$kern_ver -name '*.ko.?z'`) {
+ my $modfile = basename($_);
+ $modfile =~ s/\.ko\.xz//;
+ $wanted_modules{$modfile} and print "$modfile\n";
}
}
-sub make_modules_per_image {
+sub list_fake_modules {
my ($kern_ver) = @_;
- my $dir = "all.kernels/$kern_ver/modules";
+ load_dependencies("/lib/modules/$kern_ver/modules.dep");
- system("cd $dir ; tar cf ../all_modules.tar *.ko.gz") == 0 or die "tar failed\n";
+ my @all = map { category2modules($_) } split(' ', 'multimedia/*');
+ my %wanted_modules = map { (list_modules::modname2filename($_) => 1) } @all;
+ foreach (`find /lib/modules/$kern_ver -name '*.ko.?z'`) {
+ my $modfile = basename($_);
+ $modfile =~ s/\.ko\.xz//;
+ $wanted_modules{$modfile} and print "$modfile\n";
+ }
}
sub get_main_modules() {
@@ -153,3 +150,23 @@ sub check() {
exit $error;
}
+
+sub list_additional_firmware {
+ my ($kern_ver) = @_;
+
+ # The firmware reported by 'modinfo iwlwifi' is the latest supported version of each firmware
+ # type. Sometimes the latest supported version is not available, and the driver falls back to
+ # an older version. This means dracut doesn't automatically identify and include the necessary
+ # firmware files, so we need to list them here (mga#9541).
+ foreach (map { /^firmware:\s+(.*)/ ? $1 : () } split("\n", `modinfo -k $kern_ver iwlwifi`)) {
+ next if -f "/lib/firmware/$_";
+ my ($basename, $version) = /(.*)-([0-9]+).ucode/;
+ while ($version-- > 0) {
+ my $filepath = "/lib/firmware/$basename-$version.ucode";
+ if (-f $filepath) {
+ print "$filepath\n";
+ last;
+ }
+ }
+ }
+}
diff --git a/mdk-stage1/.gitignore b/mdk-stage1/.gitignore
new file mode 100644
index 000000000..fe2469cea
--- /dev/null
+++ b/mdk-stage1/.gitignore
@@ -0,0 +1,13 @@
+*.o
+dhcp-client
+init
+probe-modules
+rescue-gui
+stage1
+pci-resource/pci-ids.h
+usb-resource/usb-ids.h
+pcmcia-resource/pcmcia-ids.h
+pcmcia/lex_config.c
+pcmcia/libpcmcia.a
+pcmcia/yacc_config.c
+pcmcia/yacc_config.h
diff --git a/mdk-stage1/Makefile b/mdk-stage1/Makefile
index 067670198..1d66d22fe 100644
--- a/mdk-stage1/Makefile
+++ b/mdk-stage1/Makefile
@@ -2,9 +2,7 @@
#
# mdk-stage1 - the program that will load second-stage install
#
- # $Id$
- #
- # Pixel (pixel@mandriva.com) (mostly done by Guillaume Cottenceau)
+ # Pixel (pixel) (mostly done by Guillaume Cottenceau)
#
# Copyright 2000-2004 Mandriva
#
@@ -15,33 +13,12 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-VERSION=1.41
+VERSION=2.62
PRODUCT=drakx-installer-binaries
#
# Portions from Erik Troan (ewt@redhat.com) Copyright 1996 Red Hat Software
#
- #*****************************************************************************
- #
- # Currently:
- #
- # ix86
- # init with dietlibc
- # stage1 with dietlibc
- #
- # ppc
- # init with dietlibc
- # stage1 with glibc
- #
- # ia64
- # init with glibc
- # stage1 with glibc
- #
- # x86-64
- # init with dietlibc
- # stage1 with dietlibc
- #
- #*****************************************************************************
top_dir = .
@@ -50,57 +27,40 @@ include $(top_dir)/Makefile.common
include $(top_dir)/../Makefile.config
ARCHDIR=$(ARCH)
ifeq (i386, $(ARCH))
-ARCHDIR=i586
+ARCHDIR=i686
endif
DEFS = -DDISTRIB_NAME=\"$(DISTRIB_NAME)\" -DDISTRIB_VERSION=\"$(DISTRIB_VERSION)\" -DDISTRIB_TYPE=\"$(DISTRIB_TYPE)\" -DDISTRIB_DESCR=\"$(DISTRIB_DESCR)\" $(ADDITIONAL_DEFS) -D_FILE_OFFSET_BITS=64 -DARCH=\"$(ARCHDIR)\" -DCONFIG_USE_ZLIB
-COMPILE = $(CC) $(DEFS) $(CFLAGS)
+COMPILE = $(CC) $(DEFS) $(CFLAGS) -Wno-error=format-truncation
-INIT_DEFS =
INITSRC = init.c
-ifneq (DIETLIBC, $(L))
-INIT_DEFS += $(GLIBC_INCLUDES)
-endif
-INITOBJS = $(subst .c,.o,$(INITSRC))
+STAGE1_DEFS=-DDISABLE_KA
+
+INITOBJS = $(INITSRC:.c=.o)
#- frontends
NEWT_FRONTEND_SRC = newt-frontend.c
-NEWT_FRONTEND_LIBS = newt/libnewt.a slang/libslang.a
+NEWT_FRONTEND_LIBS = -lnewt -lslang
STDIO_FRONTEND_SRC = stdio-frontend.c
STDIO_FRONTEND_LIBS =
-STDIO_FRONTEND_LIBS =
-
-FRONTEND_OBJS = $(subst .c,.o,$($(F)_FRONTEND_SRC))
+FRONTEND_OBJS = $($(F)_FRONTEND_SRC:.c=.o)
FRONTEND_LINK = $(FRONTEND_OBJS) $($(F)_FRONTEND_LIBS)
-STAGE1_STATIC_LIBS = libmodprobe.a
-STAGE1_STATIC_USR_LIBS = libz.a libldetect.a libpci.a
-STAGE1_OWN_LIBS =
-ifeq (DIETLIBC, $(L))
-STAGE1_OWN_LIBS = $(patsubst %,/usr/lib/dietlibc/lib-$(ARCH)/%,$(STAGE1_STATIC_USR_LIBS) $(STAGE1_STATIC_LIBS))
-else
-STAGE1_OWN_LIBS = $(patsubst %,/usr/$(LIB)/%,$(STAGE1_STATIC_USR_LIBS)) $(patsubst %,/$(LIB)/%,$(STAGE1_STATIC_LIBS))
-endif
-
+STAGE1_OWN_LIBS = -lz -lldetect -lkmod -lpci -llzma -lsysfs
-ifeq (DIETLIBC, $(L))
-STAGE1_NETWORK_LIBS = /usr/lib/dietlibc/lib-$(ARCH)/librpc.a
-else
-STAGE1_NETWORK_LIBS = /usr/$(LIB)/libresolv.a
-endif
#- stage1 itself
STAGE1SRC = stage1.c log.c utils.c params.c tools.c modules.c probing.c mount.c automatic.c frontend-common.c lomount.c thirdparty.c zlibsupport.c
CDROMSRC = cdrom.c
DISKSRC = disk.c directory.c partition.c
-NETWORKSRC = network.c nfsmount.c dhcp.c url.c dns.c adsl.c directory.c wireless.c
-KASRC = ka.c
+NETWORKSRC = network.c dhcp.c url.c dns.c adsl.c directory.c wireless.c
+#KASRC = ka.c
# use sort to remove duplicates
STAGE1_ALLSRC = $(sort $(STAGE1SRC) $(CDROMSRC) $(DISKSRC) $(NETWORKSRC) $(KASRC))
@@ -121,66 +81,63 @@ STAGE1OBJS-NETWORK-STANDALONE = $(subst .c,-NETWORK-STANDALONE.o,$(STAGE1SRC) $(
NETWORK_STANDALONE_DEFS = -DDISABLE_CDROM -DDISABLE_DISK -DENABLE_NETWORK_STANDALONE -DDISABLE_KA
-STAGE1OBJS-FULL = $(subst .c,-FULL.o,$(STAGE1_ALLSRC))
+STAGE1OBJS-FULL = $(STAGE1_ALLSRC:.c=-FULL.o)
BINS = init stage1 dhcp-client rescue-gui probe-modules
-DIRS += pci-resource usb-resource slang newt ppp/pppd rp-pppoe/src
-ifeq (i386, $(ARCH))
-DIRS += pcmcia pcmcia-resource sysfs
-endif
-ifeq (x86_64, $(ARCH))
-DIRS += pcmcia pcmcia-resource sysfs
-endif
-
-
-ifeq (i386,$(ARCH))
-PCMCIA_LIB = pcmcia/libpcmcia.a sysfs/libsysfs.a
-PCMCIA_DEFS = -DENABLE_PCMCIA
-endif
-ifeq (x86_64,$(ARCH))
-PCMCIA_LIB = pcmcia/libpcmcia.a sysfs/libsysfs.a
+OTHERS = pci-ids.h usb-ids.h
+ifneq (,$(filter $(ARCH),i386 x86_64))
+OTHERS += pcmcia-ids.h pcmcia
+PCMCIA_LIB = pcmcia/libpcmcia.a
PCMCIA_DEFS = -DENABLE_PCMCIA
endif
-
USB_DEFS_GEN = -DENABLE_USB
USB_DEFS = -DENABLE_USB -DDISABLE_PCIADAPTERS
-all: dirs $(BINS)
+all: $(OTHERS) $(BINS)
-dirs:
- @for n in . $(DIRS); do \
- [ "$$n" = "." ] || make -C $$n || exit 1 ;\
- done
+pci-ids.h: /usr/share/ldetect-lst/pcitable.gz update-pci-ids.pl
+ perl update-pci-ids.pl > $@ || { rm -f $@; exit 1; }
+
+usb-ids.h: /usr/share/ldetect-lst/usbtable.gz update-usb-ids.pl
+ perl update-usb-ids.pl > $@ || rm -f $@
+
+pcmcia-ids.h: update-pcmcia-ids.pl
+ perl update-pcmcia-ids.pl > $@ || { rm -f $@; exit 1; }
+
+pcmcia/libpcmcia.a:
+ make -j -C pcmcia
+
+probing.c: pci-ids.h
-init: $(INITOBJS) $(STAGE1_LIBC)
- $(DIET) $(CC) $(LDFLAGS) -o $@ $^
+init: $(INITOBJS)
+ $(CC) $(LDFLAGS) -o $@ $^
$(STRIPCMD) $@
-stage1: $(STAGE1OBJS-FULL) $(STAGE1_OWN_LIBS) $(STAGE1_NETWORK_LIBS) $(FRONTEND_LINK) bootsplash.o $(PCMCIA_LIB) $(STAGE1_LIBC)
- $(DIET) $(CC) $(LDFLAGS) -o $@ $^
+stage1: $(STAGE1OBJS-FULL) $(STAGE1_OWN_LIBS) $(FRONTEND_LINK) $(PCMCIA_LIB)
+ $(CC) $(LDFLAGS) -o $@ $^
$(STRIPCMD) $@
-dhcp-client: $(STAGE1OBJS-NETWORK-STANDALONE) $(STAGE1_OWN_LIBS) $(STAGE1_NETWORK_LIBS) $(FRONTEND_LINK) $(STAGE1_LIBC)
- $(DIET) $(CC) $(LDFLAGS) -o $@ $^
+dhcp-client: $(STAGE1OBJS-NETWORK-STANDALONE) $(STAGE1_OWN_LIBS) $(FRONTEND_LINK)
+ $(CC) $(LDFLAGS) -o $@ $^
$(STRIPCMD) $@
$(INITOBJS): %.o: %.c
- $(COMPILE) $(INIT_DEFS) -c $<
+ $(COMPILE) -c $<
$(STAGE1OBJS-NETWORK): %-NETWORK.o: %.c
- $(DIET) $(COMPILE) $(INCLUDES) $(NETWORK_DEFS) $(PCMCIA_DEFS) $(USB_DEFS_GEN) -DENABLE_ADDITIONAL_MODULES -c $< -o $@
+ $(COMPILE) $(INCLUDES) $(NETWORK_DEFS) $(PCMCIA_DEFS) $(USB_DEFS_GEN) -DENABLE_ADDITIONAL_MODULES -c $< -o $@
$(STAGE1OBJS-NETWORK-STANDALONE): %-NETWORK-STANDALONE.o: %.c
- $(DIET) $(COMPILE) $(INCLUDES) $(NETWORK_STANDALONE_DEFS) $(USB_DEFS_GEN) -c $< -o $@
+ $(COMPILE) $(INCLUDES) $(NETWORK_STANDALONE_DEFS) $(USB_DEFS_GEN) -c $< -o $@
$(STAGE1OBJS-FULL): %-FULL.o: %.c
- $(DIET) $(COMPILE) $(INCLUDES) -DSPAWN_SHELL $(USB_DEFS_GEN) $(PCMCIA_DEFS) -DENABLE_BOOTSPLASH -c $< -o $@
+ $(COMPILE) $(INCLUDES) -DSPAWN_SHELL $(USB_DEFS_GEN) $(PCMCIA_DEFS) $(STAGE1_DEFS) -c $< -o $@
.c.o:
- $(DIET) $(COMPILE) $(INCLUDES) -DENABLE_BOOTSPLASH -c $<
+ $(COMPILE) $(INCLUDES) -c $<
clean: localclean
@@ -189,40 +146,22 @@ clean: localclean
done
localclean:
- rm -f *.o .depend *.rdz *.img $(BINS)
+ rm -f *.o .depend *.rdz *.img pci-ids.h pcmcia-ids.h usb-ids.h $(BINS)
-rescue-gui: rescue-gui.o frontend-common.o params.o utils.o log.o automatic.o $(FRONTEND_LINK) $(STAGE1_LIBC)
- $(DIET) $(CC) $(LDFLAGS) -o $@ $^
+rescue-gui: rescue-gui.o frontend-common.o params.o utils.o log.o automatic.o $(FRONTEND_LINK)
+ $(CC) $(LDFLAGS) -o $@ $^
$(STRIPCMD) $@
-probe-modules: probe-modules.o probing-FULL.o modules-FULL.o params-FULL.o utils-FULL.o log-FULL.o automatic-FULL.o frontend-common-FULL.o stdio-frontend.o zlibsupport-FULL.o $(STAGE1_OWN_LIBS) $(PCMCIA_LIB) $(STAGE1_LIBC)
- $(DIET) $(CC) $(LDFLAGS) -o $@ $^
+probe-modules: probe-modules.o probing-FULL.o modules-FULL.o params-FULL.o utils-FULL.o log-FULL.o automatic-FULL.o frontend-common-FULL.o stdio-frontend.o zlibsupport-FULL.o $(STAGE1_OWN_LIBS) $(PCMCIA_LIB)
+ $(CC) $(LDFLAGS) -o $@ $^
$(STRIPCMD) $@
dist: tar
tar:
rm -rf $(PRODUCT)*.tar* $(PRODUCT)-$(VERSION)
- @if [ -e ".svn" ]; then \
- $(MAKE) dist-svn; \
- elif [ -e "../.git" ]; then \
- $(MAKE) dist-git; \
- else \
- echo "Unknown SCM (not SVN nor GIT)";\
- exit 1; \
- fi;
- $(info $(NAME)-$(VERSION).tar.bz2 is ready)
-
-dist-svn:
- mkdir -p $(PRODUCT)-$(VERSION)
- svn export -q -rBASE . $(PRODUCT)-$(VERSION)/mdk-stage1
- svn export -q -rBASE ../kernel $(PRODUCT)-$(VERSION)/kernel
- cp ../Makefile.config $(PRODUCT)-$(VERSION)/
- tar cfj $(PRODUCT)-$(VERSION).tar.bz2 $(PRODUCT)-$(VERSION)
- rm -rf $(PRODUCT)-$(VERSION)
-
-dist-git:
- @cd ..; git archive --prefix=$(PRODUCT)-$(VERSION)/ HEAD mdk-stage1 kernel Makefile.config | bzip2 >mdk-stage1/$(PRODUCT)-$(VERSION).tar.bz2;
+ @cd ..; git archive --prefix=$(PRODUCT)-$(VERSION)/ HEAD mdk-stage1 kernel Makefile.config | xz >mdk-stage1/$(PRODUCT)-$(VERSION).tar.xz;
+ $(info $(PRODUCT)-$(VERSION).tar.xz is ready)
.depend:
$(CPP) $(CFLAGS) -M $(ALLSRC) > .depend
diff --git a/mdk-stage1/Makefile.common b/mdk-stage1/Makefile.common
index fc4372851..f2c70273a 100644
--- a/mdk-stage1/Makefile.common
+++ b/mdk-stage1/Makefile.common
@@ -1,7 +1,7 @@
# -*- makefile -*-
#******************************************************************************
#
- # Guillaume Cottenceau (gc@mandriva.com)
+ # Guillaume Cottenceau (gc)
#
# Copyright 2000 Mandriva
#
@@ -15,7 +15,7 @@
#*****************************************************************************
ARCH := $(patsubst i%86,i386,$(shell uname -m))
-ARCH := $(patsubst sparc%,sparc,$(ARCH))
+ARCH := $(ARCH:arm%=arm)
# DEBUG = 1
@@ -26,39 +26,18 @@ else
F = NEWT
endif
-DIET = $(shell test -x /usr/bin/diet && echo diet)
-
-ifeq ($(DIET), diet)
- #- default lib is dietlibc (honoured by main Makefile whenever possible)
-L = DIETLIBC
-else
-L = GLIBC
-endif
-
ifdef DEBUG
-OPTFLAGS = -g
+OPTFLAGS = -g -DDEBUG
else
OPTFLAGS = -Os
endif
#- flags used by all stuff
-CFLAGS = $(OPTFLAGS) -pipe -Wall -fomit-frame-pointer -fno-strict-aliasing
-
-ifneq (ppc, $(ARCH))
-ifneq (sparc, $(ARCH))
-CFLAGS += -Werror
-endif
-endif
-
-DIETLIBC_INCLUDES = -I/usr/lib/dietlibc/include -I.
-DIETLIBC_LIBC = /usr/lib/dietlibc/lib-$(ARCH)/libcompat.a
-GLIBC_INCLUDES = -I.
-INCLUDES = $($(L)_INCLUDES)
+CFLAGS = $(OPTFLAGS) -pipe -Wall -fomit-frame-pointer -fno-strict-aliasing -Werror
-GLIBC_LDFLAGS = -static
-LDFLAGS = $($(L)_LDFLAGS)
+INCLUDES = -I.
-STAGE1_LIBC = $($(L)_LIBC)
+LDFLAGS =
ifdef DEBUG
STRIPCMD = echo not stripping
diff --git a/mdk-stage1/NEWS b/mdk-stage1/NEWS
index 55c4fa5c9..714ea3129 100644
--- a/mdk-stage1/NEWS
+++ b/mdk-stage1/NEWS
@@ -1,3 +1,422 @@
+- Replace i586 with i686 in files
+
+2.62
+
+- Sync list_modules with kernel 6.4
+
+2.61
+
+- Sync with kernel 6.0
+- Increase MEM_LIMIT_* to match current stage2 size
+- Fix the detection of available memory
+- Fix a build failure with -Werror=address
+
+2.60
+
+- Sync with kernel 5.17
+- Sync with kernel 5.18
+- Sync with kernel 5.19
+- Sync with kernel 6.0
+- Sync with kernel 6.1
+
+2.59
+
+- use 'nolock' option for NFS
+
+2.58
+
+- fix 'disk' method after kernel-5.15 breakage
+
+2.57
+
+- http server: allow to specify a port different than default "80" (mga#28367)
+
+2.56
+
+- load exfat module to mount exfat (mga#28371)
+
+2.55
+
+- recognize rtw89_pci HID driver
+
+2.53
+
+- recognize amd_sfh HID driver
+
+2.52
+
+- recognize more rtw88_*
+- sync with kernel 5.10
+
+2.51
+
+- configure wpa_supplicant to try both nl80211 and wext interfaces
+ o some old wireless driver modules may only support wext
+- improve help for entering wireless keys/passphrases
+ o note that ASCII strings can now be used for WEP keys (mga#21042)
+
+2.50
+
+- add support for WPA/WPA2 (mga#9541)
+
+2.49
+
+- sync with kernel 5.9
+
+2.48
+
+- sync with kernel 5.8
+
+2.47
+
+- sync with kernel 5.6/5.7
+
+2.46
+
+- make NVME code really generic and reuse if for most other disks
+
+2.45
+
+- fix NVME code to work for disks with no vendor
+
+2.44
+
+- add support for NVME disks
+
+2.43
+
+- sync with kernel 5.5
+
+2.42
+
+- sync with kernel 5.4
+
+2.41
+
+- sync with kernel 5.3
+
+2.40
+
+- recognize 8821ce (mga#24605)
+
+2.39
+
+- add AMD PCIe MP2 I2C detection
+
+2.38
+
+- sync with kernel 5.1
+
+2.37
+
+- sync with kernel 5.0
+
+2.36
+
+- suppress mount error messages when probing for media (mga#24142)
+- better gcc8 workarounds
+
+2.35
+
+- fix compiling with gcc8
+- compile with -Wno-error=format-truncation for now
+
+2.34
+
+- mounting:
+ o let libblk guess the right fs type rather than manually trying a long list
+ of potential fses
+ o use regular mount tool rather than manual system calls
+ o use regular mount tool for NFS too (support NFSv4, ...)
+
+2.33
+
+- advertize "ext4" rather than "ext2"
+- check for builtin modules in /sys/fs too (eg: ext4)
+- support auto-install with "method:disk,disk:xxx,part:xxxY,dir:zzz"
+
+2.32
+
+- list_modules: don't include vboxvideo (mga#23467)
+
+2.31
+
+- sync with kernel 4.1[89]
+
+2.30
+
+- add missing smartpqi driver (mga#23305)
+
+2.29
+- add missing Mellanox drivers (mga#23263)
+
+2.28
+- sync with kernel 4.1[5-7]
+
+2.27
+- further sync with kernel 4.14
+
+2.26
+- sync with kernel 4.14
+
+2.25
+- fix build with gcc7
+
+2.24
+- recognize 8812au (mga#21043)
+
+2.23
+- recognize new kernel-4.8 drivers
+
+2.22
+- recognize new kernel-4.9 drivers
+
+2.21
+- recognize new kernel-4.7 drivers
+
+2.20
+- fix description of network interfaces (mga#15638)
+
+2.19
+- recognize some missing wireless drivers (mga#16768)
+
+2.18
+- recognize new kernel-4.6 drivers
+
+2.17
+- recognize new kernel-4.4 drivers
+
+2.16
+- recognize new kernel-4.3 drivers
+
+2.15
+- recognize new kernel-4.1 drivers
+
+2.14
+- network.c: fix -Werror=logical-not-parentheses
+
+2.13
+- mount again debugfs for ldetect (mga#14435)
+ (regression in 1.83)
+
+2.12
+- recognize new kernel-3.19 drivers
+
+2.11
+- recognize new kernel-3.18 drivers (mga#14799)
+
+2.10
+- include new 3.18 USB host drivers (mga#14799)
+
+2.9
+- glibc 2.20 wants _DEFAULT_SOURCE instead of _BSD_SOURCE
+
+2.8
+- recognize new kernel-3.17 drivers
+
+2.7
+- recognize hyper-v network card
+
+2.6
+- recognize new kernel-3.16 drivers
+
+2.5
+- stop creating /dev entries now that we use udev
+
+2.4
+- fix building with "make -j24"
+
+2.3
+- recognize new kernel-3.15 drivers
+
+2.2
+- drop support for supermount (dead since 2007)
+- recognize new kernel-3.14 drivers
+
+2.1
+- drop support for SPARC
+- support dynamic linking only
+- use getaddrinfo() with glibc too now that use the dynamic library
+
+2.0
+- kernel modules and firmware is needed during stage2, so move and symlink
+ (symlinks are only for if you umount state2 /usr and want a still working initrd)
+ mga#11600 mga#11601
+
+1.83
+- do initrd symlinking in 'init' rather than 'stage1' (stage1 is now run earlier)
+- build init and stage1 as a shared library (due to bugs in directory handling
+ in dietlibc as exposed in libkmod but also because glibc is already include in
+ dracut)
+
+1.82
+- detect new kernel-3.12 modules
+
+1.81
+- sync with kernel-3.11 (might fix mga#11377)
+
+1.80
+- include latest list_modules.pl
+ (might fix mga#11377)
+
+1.79
+- fix compiling with gcc-4.8
+
+1.78
+- probe virtual drivers too (mga#9546)
+ (install from Xen hd not supported yet)
+
+1.77
+- use kmod for module loading (mga#9242, based on Pok works @mdv)
+
+1.76
+- revert patch introduced in r7542
+
+1.75
+- fix loading modules with "-" in their names (mga#9242)
+
+1.74.1
+- update list_modules for xen dom0 and virtio support (#9242)
+
+1.74
+- fix unitialized memory screwing up dialog input (pok, mdv, mga#8729)
+- kill bootsplash support (we drop bootsplash in kernel in 2008)
+- kill firmware loader now that firmware are loaded by the kernel
+
+1.73
+- add firmware loader written in C (based on hotplug2) (mga#6323)
+
+1.72
+- fix URL passed to stage2 when user didn't provide the arch in the
+ install path (mga#6823)
+- retry with FTP instead of HTTP when there's no proxy and user didn't
+ provided the architecture in the URL
+
+1.71
+- silent hid_generic loading
+
+1.70
+- mount /dev as devtmpfs (pok, mdv)
+- rely on /sys being created in images
+
+1.69
+- do not try to mount /proc/bus/usb
+- load hid-generic
+
+1.68
+- mount /sys/kernel/debug (needed for new ldetect)
+
+1.67
+- make sure nurses get initialized in UTF-8 (mga#4894)
+- revert to "linux" terminfo
+
+1.66
+- do not advice long dead pcmcia.img & network.img images (mga#5466)
+- first attempt at supporting XenBlk discs
+- hide "KA server" option (mga#5944)
+- switch from gethostbyname() to getaddrinfo() (mga#4056)
+- switch from gethostbyaddr() to getnameinfo()
+- use system libraries for newtw, slang & sysfs (mdv)
+
+1.65
+- load btrfs module to mount btrfs
+- try mounting as btrfs
+
+1.64
+- default to "screen" instead of "linux" terminfo (mga#4894)
+
+1.63
+- do not try to load obsolete sqlzma & squashfs_lzma kernel modules
+- recognize c67x00, imx21-hcd, fhci, isp1362-hcd, oxu210hp-hcd & renesas-usbhs
+ USB host drivers (mga#4905)
+
+1.62
+- fix segfaulting when ISO directory is not valid (mga#4592)
+
+1.61
+- fix building with newer dietlibc/zlib
+
+1.60
+- add support for virtio discs
+
+1.59
+- try to use arch-prefixed location for FTP & HTTP installs (mga#2578)
+
+1.58
+- add support for kernel compressed as XZ
+
+1.57
+- fix linking with new kmod
+
+1.56
+- kill 10 years old snapshot of pppd & pppoe
+ (now using upstream pppd & pppoe)
+- link with libkmod instead of libmodprobe
+
+1.55:
+- pcmcia: kill obsolete test for 2.2 kernel
+- sync with kernel-3.2.0-0.rc7.1.mga2 for updated list_modules.pm
+
+1.54:
+- fix retrieving mirrorlist, broken in 1.53
+- fix build with Werror
+
+1.53:
+- display distro name in mirror list too (#191)
+
+1.52:
+- fix build with gcc-4.6.2
+ * fixes -Werror=unused-but-set-variable
+
+1.51:
+- sync with kernel-3.1.0-1.mga2
+ * add hid devices:
+ hid-keytouch, hid-uclogic
+ * add sas/raid driver:
+ isci
+ * add sound devices:
+ snd-lola, snd-firewire-speakers snd-isight, snd-usb-6fire
+ * add usb/storage:
+ ums-eneub6250, ums-realtek
+ * add wireless drivers:
+ brcmsmac, rtl8187se, rtusb, rtl8192se, rtl8192cu, rtl8192de
+
+1.50:
+- do not attempt to perform ISA probe for PCMCIA controller on x86_64
+ as it fails with kvm_amd (#1156)
+- add ums-* (USB mass storage) modules in disk/usb category
+
+1.49:
+- use new libldetect API for finding out unknown devices
+- handle more PCMCIA controllers
+- "i82365" driver was renamed "pd6729"
+
+1.48:
+- arm/mips support
+- try to handle built-in modules
+- fix build with Werror
+- use mirrors.mageia.org/api for mirror list
+
+1.47:
+- 2011.0 build
+
+1.46:
+- create device listed in /proc/partitions with correct major/minor (#57032)
+
+1.45:
+- do not list /dev/fd0 when no floppy is found (#58390)
+
+1.44:
+- rebuild with latest list_modules.pm (might fix #57833)
+
+1.43:
+- bump version (#57466)
+
+1.42:
+- list asix module in network/usb group
+- virtio: fix device probing: use PCI subdevices
+- fix format string bug from 1.41
+
1.41:
- load needed modules for known virtio devices, fixes #51804
diff --git a/mdk-stage1/adsl.c b/mdk-stage1/adsl.c
index 831d83993..70968f50b 100644
--- a/mdk-stage1/adsl.c
+++ b/mdk-stage1/adsl.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -156,8 +156,8 @@ enum return_type perform_adsl(struct interface_info * intf)
intf->boot_proto = BOOTPROTO_ADSL_PPPOE;
wait_message("Waiting for ADSL connection to show up...");
- my_insmod("ppp_generic", ANY_DRIVER_TYPE, NULL, 1);
- my_insmod("ppp_async", ANY_DRIVER_TYPE, NULL, 1);
+ my_modprobe("ppp_generic", ANY_DRIVER_TYPE, NULL);
+ my_modprobe("ppp_async", ANY_DRIVER_TYPE, NULL);
results = adsl_connect(intf, answers[0], answers[1], answers[2]);
remove_wait_message();
diff --git a/mdk-stage1/adsl.h b/mdk-stage1/adsl.h
index be84ee568..aa4461108 100644
--- a/mdk-stage1/adsl.h
+++ b/mdk-stage1/adsl.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/automatic.c b/mdk-stage1/automatic.c
index 561aa62d9..5e9ed56a2 100644
--- a/mdk-stage1/automatic.c
+++ b/mdk-stage1/automatic.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -46,14 +46,14 @@ void grab_automatic_params(char * line)
int j = i;
while (line[i] != ':' && line[i] != '\0')
i++;
- name = memdup(&line[j], i-j + 1);
+ name = _memdup(&line[j], i-j + 1);
name[i-j] = 0;
k = i+1;
i++;
while (line[i] != ',' && line[i] != '\0')
i++;
- value = memdup(&line[k], i-k + 1);
+ value = _memdup(&line[k], i-k + 1);
value[i-k] = 0;
tmp_params[p].name = name;
@@ -65,7 +65,7 @@ void grab_automatic_params(char * line)
}
tmp_params[p++].name = NULL;
- automatic_params = memdup(tmp_params, sizeof(struct param_elem) * p);
+ automatic_params = _memdup(tmp_params, sizeof(struct param_elem) * p);
log_message("AUTOMATIC MODE: got %d params", p-1);
}
@@ -102,7 +102,6 @@ char * get_auto_value(char * auto_param)
enum return_type ask_from_list_auto(char *msg, char ** elems, char ** choice, char * auto_param, char ** elems_auto)
{
if (!IS_AUTOMATIC) {
- exit_bootsplash();
return ask_from_list(msg, elems, choice);
} else {
char ** sav_elems = elems;
@@ -124,7 +123,6 @@ enum return_type ask_from_list_auto(char *msg, char ** elems, char ** choice, ch
enum return_type ask_from_list_comments_auto(char *msg, char ** elems, char ** elems_comments, char ** choice, char * auto_param, char ** elems_auto)
{
if (!IS_AUTOMATIC) {
- exit_bootsplash();
return ask_from_list_comments(msg, elems, elems_comments, choice);
} else {
char ** sav_elems = elems;
@@ -147,7 +145,6 @@ enum return_type ask_from_list_comments_auto(char *msg, char ** elems, char ** e
enum return_type ask_from_entries_auto(char *msg, char ** questions, char *** answers, int entry_size, char ** questions_auto, void (*callback_func)(char ** strings))
{
if (!IS_AUTOMATIC) {
- exit_bootsplash();
return ask_from_entries(msg, questions, answers, entry_size, callback_func);
} else {
char * tmp_answers[50];
@@ -160,7 +157,7 @@ enum return_type ask_from_entries_auto(char *msg, char ** questions, char *** an
questions_auto++;
}
- *answers = memdup(tmp_answers, sizeof(char *) * i);
+ *answers = _memdup(tmp_answers, sizeof(char *) * i);
return RETURN_OK;
}
}
diff --git a/mdk-stage1/automatic.h b/mdk-stage1/automatic.h
index 8eeb586cc..5fb890d61 100644
--- a/mdk-stage1/automatic.h
+++ b/mdk-stage1/automatic.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/bootsplash.c b/mdk-stage1/bootsplash.c
deleted file mode 100644
index 194df1cec..000000000
--- a/mdk-stage1/bootsplash.c
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Pixel (pixel@mandriva.com)
- *
- * Copyright 2004 Mandriva
- *
- * This software may be freely redistributed under the terms of the GNU
- * public license.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- */
-
-#include <stdio.h>
-#include "bootsplash.h"
-#include "frontend.h"
-#include "log.h"
-
-static int total_size;
-static float previous;
-static FILE* splash = NULL;
-
-static void update_progression_only(int current_size)
-{
- if (splash && total_size) {
- float ratio = (float) (current_size + 1) / total_size;
- if (ratio > previous + 0.01) {
- fprintf(splash, "show %d\n", (int) (ratio * 65534));
- fflush(splash);
- previous = ratio;
- }
- }
-}
-
-static void open_bootsplash(void)
-{
- if (!splash) splash = fopen("/proc/splash", "w");
- if (!splash) log_message("opening /proc/splash failed");
-}
-
-void exit_bootsplash(void)
-{
- log_message("exiting bootsplash");
- open_bootsplash();
- if (splash) {
- fprintf(splash, "verbose\n");
- fflush(splash);
- }
-}
-
-
-void init_progression(char *msg, int size)
-{
- previous = 0; total_size = size;
- open_bootsplash();
- update_progression_only(0);
- init_progression_raw(msg, size);
-}
-
-void update_progression(int current_size)
-{
- update_progression_only(current_size);
- update_progression_raw(current_size);
-}
-
-void end_progression(void)
-{
- end_progression_raw();
-}
diff --git a/mdk-stage1/bootsplash.h b/mdk-stage1/bootsplash.h
deleted file mode 100644
index 4696ce09a..000000000
--- a/mdk-stage1/bootsplash.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Pixel (pixel@mandriva.com)
- *
- * Copyright 2004 Mandriva
- *
- * This software may be freely redistributed under the terms of the GNU
- * public license.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- */
-
-#ifndef _BOOTSPLASH_H_
-#define _BOOTSPLASH_H_
-
-#ifdef ENABLE_BOOTSPLASH
-void exit_bootsplash(void);
-void tell_bootsplash(char *cmd);
-#else
-#define exit_bootsplash()
-#endif
-
-#endif
diff --git a/mdk-stage1/cdrom.c b/mdk-stage1/cdrom.c
index 3dac3ecf7..71db1da16 100644
--- a/mdk-stage1/cdrom.c
+++ b/mdk-stage1/cdrom.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -138,7 +138,7 @@ enum return_type cdrom_prepare(void)
enum return_type results;
static int already_probed_ide_generic = 0;
- my_insmod("ide_cd_mod", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("ide_cd_mod", ANY_DRIVER_TYPE, NULL);
if (IS_AUTOMATIC) {
get_medias(CDROM, &medias, &medias_models, BUS_IDE);
@@ -149,7 +149,7 @@ enum return_type cdrom_prepare(void)
if ((i = try_automatic(medias, medias_models)) != -1)
return do_with_device(medias[i], medias_models[i]);
- my_insmod("sr_mod", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("sr_mod", ANY_DRIVER_TYPE, NULL);
get_medias(CDROM, &medias, &medias_models, BUS_SCSI);
if ((i = try_automatic(medias, medias_models)) != -1)
return do_with_device(medias[i], medias_models[i]);
@@ -159,7 +159,7 @@ enum return_type cdrom_prepare(void)
return do_with_device(medias[i], medias_models[i]);
/* detect hybrid isos (isos dumped to an USB stick) */
- my_insmod("sd_mod", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("sd_mod", ANY_DRIVER_TYPE, NULL);
get_medias(DISK, &medias, &medias_models, BUS_USB);
if ((i = try_automatic(medias, medias_models)) != -1) {
return do_with_device(medias[i], medias_models[i]);
@@ -167,7 +167,7 @@ enum return_type cdrom_prepare(void)
unset_automatic();
} else
- my_insmod("sr_mod", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("sr_mod", ANY_DRIVER_TYPE, NULL);
get_medias(CDROM, &medias, &medias_models, BUS_ANY);
@@ -180,7 +180,7 @@ enum return_type cdrom_prepare(void)
if (count == 0) {
if (!already_probed_ide_generic) {
already_probed_ide_generic = 1;
- my_insmod("ide_generic", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("ide_generic", ANY_DRIVER_TYPE, NULL);
return cdrom_prepare();
}
stg1_error_message("No CDROM device found.");
diff --git a/mdk-stage1/cdrom.h b/mdk-stage1/cdrom.h
index cbfe92bea..7d182b257 100644
--- a/mdk-stage1/cdrom.h
+++ b/mdk-stage1/cdrom.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/config-stage1.h b/mdk-stage1/config-stage1.h
index 8e2a8be8b..e3409df98 100644
--- a/mdk-stage1/config-stage1.h
+++ b/mdk-stage1/config-stage1.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -22,9 +22,9 @@
/* If we have more than that amount of memory (in Mbytes), we assume we can load the second stage as a ramdisk */
-#define MEM_LIMIT_DRAKX 68
+#define MEM_LIMIT_DRAKX 192
/* If we have more than that amount of memory (in Mbytes), we preload the second stage as a ramdisk */
-#define MEM_LIMIT_DRAKX_PRELOAD 100
+#define MEM_LIMIT_DRAKX_PRELOAD 256
/* If we have more than that amount of memory (in Mbytes), we assume we can load the rescue as a ramdisk */
#define MEM_LIMIT_RESCUE 40
@@ -42,7 +42,7 @@
/* the remote media is mounted in MEDIA_LOCATION, and
- IMAGE_LOCATION is a symlink image -> image/mdk/mirror/dir
- - IMAGE_LOCATION is a symlink image -> loop/i586 and iso file is loopback mounted in LOOP_LOCATION
+ - IMAGE_LOCATION is a symlink image -> loop/i686 and iso file is loopback mounted in LOOP_LOCATION
*/
#define MEDIA_LOCATION_REL "media"
#define MEDIA_LOCATION IMAGE_LOCATION_DIR MEDIA_LOCATION_REL
@@ -75,8 +75,8 @@
/* path to mirror list for net install */
#ifndef DISABLE_NETWORK
-#define MIRRORLIST_HOST "api.mandriva.com"
-#define MIRRORLIST_PATH "/mirrors"
+#define MIRRORLIST_HOST "mirrors.mageia.org"
+#define MIRRORLIST_PATH "/api"
#endif
#endif
diff --git a/mdk-stage1/dhcp.c b/mdk-stage1/dhcp.c
index 7daedcea5..678031e85 100644
--- a/mdk-stage1/dhcp.c
+++ b/mdk-stage1/dhcp.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -213,7 +213,7 @@ static void parse_reply(struct bootp_request * breq, struct interface_info * int
unsigned char * chptr;
unsigned char option, length;
- if (breq->bootfile && strlen(breq->bootfile) > 0) {
+ if (strlen(breq->bootfile) > 0) {
if (IS_NETAUTO)
add_to_env("KICKSTART", breq->bootfile);
else
@@ -587,7 +587,7 @@ enum return_type perform_dhcp(struct interface_info * intf)
log_message("DHCP: telling server to use name = %s", dhcp_hostname);
}
- memset(&client_addr.sin_addr, 0, sizeof(&client_addr.sin_addr));
+ memset(&client_addr.sin_addr, 0, sizeof(client_addr.sin_addr));
client_addr.sin_family = AF_INET;
client_addr.sin_port = htons(BOOTP_CLIENT_PORT); /* bootp client */
diff --git a/mdk-stage1/dhcp.h b/mdk-stage1/dhcp.h
index 62d8c109c..e17094adc 100644
--- a/mdk-stage1/dhcp.h
+++ b/mdk-stage1/dhcp.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/directory.c b/mdk-stage1/directory.c
index d98360b61..0538b55b6 100644
--- a/mdk-stage1/directory.c
+++ b/mdk-stage1/directory.c
@@ -1,6 +1,6 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
- * Olivier Blin (oblin@mandriva.com)
+ * Guillaume Cottenceau (gc)
+ * Olivier Blin (oblin)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/directory.h b/mdk-stage1/directory.h
index 47becc111..2fdc81edb 100644
--- a/mdk-stage1/directory.h
+++ b/mdk-stage1/directory.h
@@ -1,6 +1,6 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
- * Olivier Blin (oblin@mandriva.com)
+ * Guillaume Cottenceau (gc)
+ * Olivier Blin (oblin)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/disk.c b/mdk-stage1/disk.c
index b1de270d4..51a033639 100644
--- a/mdk-stage1/disk.c
+++ b/mdk-stage1/disk.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -19,14 +19,14 @@
*
*/
+#define _GNU_SOURCE /* We want the non segfaulting my_dirname() -- See dirname(3) */
+#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
-#include <string.h>
#include <sys/mount.h>
#include <sys/stat.h>
#include <fcntl.h>
-#include <string.h>
#include <libgen.h>
#include "stage1.h"
#include "frontend.h"
@@ -45,6 +45,13 @@
static enum return_type try_automatic_with_partition(char *dev) {
enum return_type results;
int mounted;
+ char *dir= get_auto_value("directory");
+ char location_full[500];
+ strcpy(location_full, MEDIA_LOCATION);
+ if (dir) {
+ strcat(location_full, "/");
+ strcat(location_full, dir);
+ }
wait_message("Trying to access " DISTRIB_NAME " disk (partition %s)", dev);
mounted = !try_mount(dev, MEDIA_LOCATION);
remove_wait_message();
@@ -52,11 +59,13 @@ static enum return_type try_automatic_with_partition(char *dev) {
create_IMAGE_LOCATION(MEDIA_LOCATION);
if (image_has_stage2()) {
results = try_with_directory(MEDIA_LOCATION, "disk", "disk-iso");
- if (results == RETURN_OK) {
- if (!KEEP_MOUNTED)
- umount(MEDIA_LOCATION);
- return RETURN_OK;
- }
+ } else {
+ results = try_with_directory(location_full, "disk", "disk-iso");
+ }
+ if (results == RETURN_OK) {
+ if (!KEEP_MOUNTED)
+ umount(MEDIA_LOCATION);
+ return RETURN_OK;
}
}
if (mounted)
@@ -69,6 +78,7 @@ static enum return_type try_automatic_with_disk(char *disk, char *model) {
char * parts_comments[50];
enum return_type results;
char **dev;
+ char *part = get_auto_value("partition");
wait_message("Trying to access " DISTRIB_NAME " disk (drive %s)", model);
if (list_partitions(disk, parts, parts_comments)) {
stg1_error_message("Could not read partitions information.");
@@ -77,10 +87,13 @@ static enum return_type try_automatic_with_disk(char *disk, char *model) {
remove_wait_message();
dev = parts;
while (dev && *dev) {
+ if (part && strcmp(part, *dev) != 0)
+ goto next;
results = try_automatic_with_partition(*dev);
if (results == RETURN_OK) {
return RETURN_OK;
}
+ next:
dev++;
}
return RETURN_ERROR;
@@ -90,11 +103,15 @@ static enum return_type try_automatic(char ** medias, char ** medias_models)
{
char ** model = medias_models;
char ** ptr = medias;
+ char *disk = get_auto_value("disk");
while (ptr && *ptr) {
enum return_type results;
+ if (disk && strcmp(disk, *ptr) != 0)
+ goto next;
results = try_automatic_with_disk(*ptr, *model);
if (results == RETURN_OK)
return RETURN_OK;
+ next:
ptr++;
model++;
}
@@ -134,7 +151,7 @@ static enum return_type try_with_device(char *dev_name)
/* in testing mode, assume the partition is already mounted on MEDIA_LOCATION */
if (!IS_TESTING && try_mount(choice, MEDIA_LOCATION)) {
- stg1_error_message("I can't find a valid filesystem (tried: ext2, vfat, ntfs, reiserfs). "
+ stg1_error_message("I can't find a valid filesystem (tried: ext4, vfat, ntfs, reiserfs). "
"Make sure the partition has been cleanly unmounted.");
return try_with_device(dev_name);
}
@@ -155,7 +172,7 @@ static enum return_type try_with_device(char *dev_name)
char * path = strdup(answers_location[0]);
stg1_error_message("Directory or ISO image file could not be found on partition.\n"
"Here's a short extract of the files in the directory %s:\n"
- "%s", dirname(path), extract_list_directory(dirname(location_full)));
+ "%s", my_dirname(path), extract_list_directory(my_dirname(location_full)));
free(path);
goto ask_dir;
}
@@ -191,7 +208,7 @@ enum return_type disk_prepare(void)
if (count == 0) {
if (!already_probed_ide_generic) {
already_probed_ide_generic = 1;
- my_insmod("ide_generic", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("ide_generic", ANY_DRIVER_TYPE, NULL);
return disk_prepare();
}
stg1_error_message("No DISK drive found.");
diff --git a/mdk-stage1/disk.h b/mdk-stage1/disk.h
index 6e856c4c5..8a6d1021f 100644
--- a/mdk-stage1/disk.h
+++ b/mdk-stage1/disk.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/dns.c b/mdk-stage1/dns.c
index 32de36a25..f711758aa 100644
--- a/mdk-stage1/dns.c
+++ b/mdk-stage1/dns.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -21,10 +21,6 @@
#include <stdlib.h>
-// dietlibc can do hostname lookup, whereas glibc can't when linked statically :-(
-
-#if defined(__dietlibc__)
-
#include <unistd.h>
#include <string.h>
#include <stdio.h>
@@ -39,186 +35,56 @@
int mygethostbyname(char * name, struct in_addr * addr)
{
- struct hostent * h;
+ struct addrinfo hints, *res, *p;
+ int status;
+ char ipstr[INET6_ADDRSTRLEN];
+
+ memset(&hints, 0, sizeof hints);
+ hints.ai_family = AF_INET; //AF_UNSPEC for both IPv4 & IPv6
+ hints.ai_socktype = SOCK_STREAM;
/* prevent from timeouts */
if (_res.nscount == 0)
return -1;
- h = gethostbyname(name);
-
- if (!h && domain) {
- // gethostbyname from dietlibc doesn't support domain handling
- char fully_qualified[500];
- sprintf(fully_qualified, "%s.%s", name, domain);
- h = gethostbyname(fully_qualified);
+ if ((status = getaddrinfo(name, NULL, &hints, &res)) != 0) {
+ log_message("getaddrinfo: %s\n", gai_strerror(status));
+ return -1;
}
- if (h && h->h_addr_list && (h->h_addr_list)[0]) {
- memcpy(addr, (h->h_addr_list)[0], sizeof(*addr));
- log_message("is-at: %s", inet_ntoa(*addr));
- return 0;
+ for (p = res;p != NULL; p = p->ai_next) {
+ void *tmp_addr;
+
+ struct sockaddr_in *ipv = (struct sockaddr_in *)p->ai_addr;
+ tmp_addr = &(ipv->sin_addr);
+
+ /* convert the IP to a string: */
+ inet_ntop(p->ai_family, addr, ipstr, sizeof ipstr);
+
+ memcpy(addr, tmp_addr, sizeof(*addr));
+ log_message("is-at: %s\n", inet_ntoa(*addr));
}
- log_message("unknown host %s", name);
- return -1;
+ freeaddrinfo(res); // free the linked list
+ return 0;
}
char * mygethostbyaddr(char * ipnum)
{
- struct in_addr in;
- struct hostent * host;
+ struct sockaddr_in sa;
+ char hbuf[NI_MAXHOST];
/* prevent from timeouts */
if (_res.nscount == 0)
return NULL;
-
- if (!inet_aton(ipnum, &in))
- return NULL;
- host = gethostbyaddr(&(in.s_addr), sizeof(in.s_addr) /* INADDRSZ */, AF_INET);
- if (host && host->h_name)
- return host->h_name;
- return NULL;
-}
-
-#elif defined(__GLIBC__)
-#include <alloca.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <resolv.h>
-#include <arpa/nameser.h>
-#include <arpa/inet.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "log.h"
+ memset(&sa, 0, sizeof sa);
+ sa.sin_family = AF_INET;
-#include "dns.h"
+ if (inet_pton(AF_INET, ipnum, &sa.sin_addr) != 1)
+ return NULL;
-/* This is dumb, but glibc doesn't like to do hostname lookups w/o libc.so */
-
-union dns_response {
- HEADER hdr;
- u_char buf[PACKETSZ];
-} ;
-
-static int do_query(char * query, int queryType, char ** domainName, struct in_addr * ipNum)
-{
- int len, ancount, type;
- u_char * data, * end;
- char name[MAXDNAME];
- union dns_response response;
-
-#ifdef __sparc__
- /* from jj: */
- /* We have to wait till ethernet negotiation is done */
- _res.retry = 3;
-#else
- _res.retry = 2;
-#endif
-
-
- len = res_search(query, C_IN, queryType, (void *) &response, sizeof(response));
- if (len <= 0)
- return -1;
-
- if (ntohs(response.hdr.rcode) != NOERROR)
- return -1;
-
- ancount = ntohs(response.hdr.ancount);
- if (ancount < 1)
- return -1;
-
- data = response.buf + sizeof(HEADER);
- end = response.buf + len;
-
- /* skip the question */
- data += dn_skipname(data, end) + QFIXEDSZ;
-
- /* parse the answer(s) */
- while (--ancount >= 0 && data < end) {
-
- /* skip the domain name portion of the RR record */
- data += dn_skipname(data, end);
-
- /* get RR information */
- GETSHORT(type, data);
- data += INT16SZ; /* skipp class */
- data += INT32SZ; /* skipp TTL */
- GETSHORT(len, data);
-
- if (type == T_PTR) {
- /* we got a pointer */
- len = dn_expand(response.buf, end, data, name, sizeof(name));
- if (len <= 0) return -1;
- if (queryType == T_PTR && domainName) {
- /* we wanted a pointer */
- *domainName = malloc(strlen(name) + 1);
- strcpy(*domainName, name);
- return 0;
- }
- } else if (type == T_A) {
- /* we got an address */
- if (queryType == T_A && ipNum) {
- /* we wanted an address */
- memcpy(ipNum, data, sizeof(*ipNum));
- return 0;
- }
- }
-
- /* move ahead to next RR */
- data += len;
- }
-
- return -1;
+ if (getnameinfo((struct sockaddr*)&sa, sizeof(sa), hbuf, sizeof(hbuf), NULL, 0, 0 |NI_NAMEREQD) == 0) //NI_NUMERICHOST NI_NAMEREQD
+ return strdup(hbuf);
+ else return NULL;
}
-
-char * mygethostbyaddr(char * ipnum) {
- int rc;
- char * result;
- char * strbuf;
- char * chptr;
- char * splits[4];
- int i;
-
- _res.retry = 1;
-
- strbuf = alloca(strlen(ipnum) + 1);
- strcpy(strbuf, ipnum);
-
- ipnum = alloca(strlen(strbuf) + 20);
-
- for (i = 0; i < 4; i++) {
- chptr = strbuf;
- while (*chptr && *chptr != '.')
- chptr++;
- *chptr = '\0';
-
- if (chptr - strbuf > 3) return NULL;
- splits[i] = strbuf;
- strbuf = chptr + 1;
- }
-
- sprintf(ipnum, "%s.%s.%s.%s.in-addr.arpa", splits[3], splits[2], splits[1], splits[0]);
-
- rc = do_query(ipnum, T_PTR, &result, NULL);
-
- if (rc)
- return NULL;
- else
- return result;
-}
-
-int mygethostbyname(char * name, struct in_addr * addr) {
- int rc = do_query(name, T_A, NULL, addr);
- if (!rc)
- log_message("is-at %s", inet_ntoa(*addr));
- return rc;
-}
-
-#else
-
-#error "Unsupported C library"
-
-#endif
diff --git a/mdk-stage1/dns.h b/mdk-stage1/dns.h
index d1d551b5e..107ad1bce 100644
--- a/mdk-stage1/dns.h
+++ b/mdk-stage1/dns.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/doc/README b/mdk-stage1/doc/README
index 65e0174b4..28b81b39e 100644
--- a/mdk-stage1/doc/README
+++ b/mdk-stage1/doc/README
@@ -106,7 +106,7 @@ of the easiest way is to grab a local copy of the Distribution on one of
your local hard drives, and to install from that location.
At present time, you can install from IDE or SCSI drives, from Linux
-(ext2), Windows (vfat) or Reiserfs partition.
+(ext4), Windows (vfat) or Reiserfs partition.
In that case, you'll need to use the "hd.img" image file. The dialogs will
ask you to choose the DISK drive to use to install from, then the
diff --git a/mdk-stage1/doc/TECH-INFOS b/mdk-stage1/doc/TECH-INFOS
index 49c9c59b8..81d559a7f 100644
--- a/mdk-stage1/doc/TECH-INFOS
+++ b/mdk-stage1/doc/TECH-INFOS
@@ -6,7 +6,7 @@ This feature is used to replace redhat kickstart. It uses the kernel
parameter "automatic" with keywords separated with commas and colons, on
the following genres:
- automatic=method:nfs,network:static,ip:192.168.1.24,server:192.168.1.7,directory:/stable/i586
+ automatic=method:nfs,network:static,ip:192.168.1.24,server:192.168.1.7,directory:/stable/i686
automatic=method:ftp,network:dhcp,server:ftp.ciril.fr,directory:/pub/linux/mandriva-devel/cooker
@@ -89,9 +89,9 @@ commandline), please find each keyword short-alias counterpart in file
This gives for example for:
- automatic=method:nfs,network:static,ip:192.168.1.24,server:192.168.1.7,directory:/stable/i586
+ automatic=method:nfs,network:static,ip:192.168.1.24,server:192.168.1.7,directory:/stable/i686
==>
- automatic=met:nfs,net:static,ip:192.168.1.24,ser:192.168.1.7,dir:/stable/i586
+ automatic=met:nfs,net:static,ip:192.168.1.24,ser:192.168.1.7,dir:/stable/i686
diff --git a/mdk-stage1/doc/WHY-DIETLIBC b/mdk-stage1/doc/WHY-DIETLIBC
deleted file mode 100644
index e7c526b49..000000000
--- a/mdk-stage1/doc/WHY-DIETLIBC
+++ /dev/null
@@ -1,50 +0,0 @@
-(the dietlibc is a replacement for the glibc, which aim is to produce
-smaller statically linked binaries)
-
-
-The use for dietlibc in the stage1 was clear because currently used
-install process on x86 is from a 1.44 Mbytes floppy. On this floppy we
-need to fit the kernel, modules (scsi and network access), and the code to
-do the basic things to load the stage2. The only part on which we could
-progress was the code.
-
-As always, figures demonstrate evidences. Here are the size of the
-binaries used for the cdrom, disk, network and full floppy installs, using
-newt as the UI library:
-
- - with glibc
-
--rwxr-xr-x 1 gc gc 569448 May 15 15:29 stage1-cdrom
--rwxr-xr-x 1 gc gc 572264 May 15 15:29 stage1-disk
--rwxr-xr-x 1 gc gc 624712 May 15 15:30 stage1-network
--rwxr-xr-x 1 gc gc 720360 May 15 15:29 stage1-full
-
- - with dietlibc
-
--rwxr-xr-x 1 gc gc 169332 May 15 14:26 stage1-cdrom
--rwxr-xr-x 1 gc gc 172180 May 15 14:26 stage1-disk
--rwxr-xr-x 1 gc gc 198612 May 15 14:26 stage1-network
--rwxr-xr-x 1 gc gc 251764 May 15 14:26 stage1-full
-
-
-The `stage1-full' binary has code for many things, most notably: data
-decrunching (bzlib), archive extraction (in-house format), module loading
-(insmod from busybox), PCI detection, ide and scsi handling,
-cdrom/disk/loopback mounting, DHCP client negociation (redhat+grub), NFS
-mounting (util-linux), FTP and HTTP transmission (redhat), pcmcia
-initializing (pcmcia-cs), UI interaction (slang/newt); with use of the
-dietlibc, the binary is only 250 kbytes!
-
-
-Due to the modular coding, it is also possible to choose to not use
-slang/newt as the UI, but a stdio-only UI. In that case, the binaries get
-even smaller:
-
--rwxr-xr-x 1 gc gc 104500 May 15 15:46 stage1-cdrom*
--rwxr-xr-x 1 gc gc 107348 May 15 15:46 stage1-disk*
--rwxr-xr-x 1 gc gc 133972 May 15 15:47 stage1-network*
--rwxr-xr-x 1 gc gc 187348 May 15 15:46 stage1-full*
-
-
-
-gc [Tue May 15 15:58:34 2001] \ No newline at end of file
diff --git a/mdk-stage1/doc/documented..frontend.h b/mdk-stage1/doc/documented..frontend.h
index a1cf88a77..96e4dc8d8 100644
--- a/mdk-stage1/doc/documented..frontend.h
+++ b/mdk-stage1/doc/documented..frontend.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/frontend-common.c b/mdk-stage1/frontend-common.c
index 63ca082bf..cdc972740 100644
--- a/mdk-stage1/frontend-common.c
+++ b/mdk-stage1/frontend-common.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/frontend.h b/mdk-stage1/frontend.h
index 2d0869720..367d46735 100644
--- a/mdk-stage1/frontend.h
+++ b/mdk-stage1/frontend.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/init.c b/mdk-stage1/init.c
index a74a703d2..7c48f64ec 100644
--- a/mdk-stage1/init.c
+++ b/mdk-stage1/init.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -22,6 +22,7 @@
#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
+#include <dirent.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
@@ -36,33 +37,36 @@
#include <linux/unistd.h>
#include <sys/select.h>
#include <sys/ioctl.h>
+#include <linux/reboot.h>
#include <sys/syscall.h>
#define syslog(...) syscall(__NR_syslog, __VA_ARGS__)
-#define reboot(...) syscall(__NR_reboot, __VA_ARGS__)
+
+static unsigned int reboot_magic = LINUX_REBOOT_CMD_RESTART;
+
+static inline long reboot(unsigned int command)
+{
+ return (long) syscall(__NR_reboot, LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, command, 0);
+}
#include "config-stage1.h"
#include <linux/cdrom.h>
-#if defined(__powerpc__)
-#define TIOCSCTTY 0x540E
-#endif
-
-#define BINARY "/sbin/stage1"
#define BINARY_STAGE2 "/usr/bin/runinstall2"
char * env[] = {
"PATH=/usr/bin:/bin:/sbin:/usr/sbin:/mnt/sbin:/mnt/usr/sbin:/mnt/bin:/mnt/usr/bin",
- "LD_LIBRARY_PATH=/lib:/usr/lib:/mnt/lib:/mnt/usr/lib:/usr/X11R6/lib:/mnt/usr/X11R6/lib"
-#if defined(__x86_64__) || defined(__ppc64__)
- ":/lib64:/usr/lib64:/usr/X11R6/lib64:/mnt/lib64:/mnt/usr/lib64:/mnt/usr/X11R6/lib64"
+ "LD_LIBRARY_PATH=/lib:/usr/lib:/mnt/lib:/mnt/usr/lib"
+#if defined(__x86_64__)
+ ":/lib64:/usr/lib64:/mnt/lib64:/mnt/usr/lib64"
#endif
,
"HOME=/",
"TERM=linux",
"TERMINFO=/etc/terminfo",
+ "LC_CTYPE=UTF-8",
NULL
};
@@ -102,20 +106,20 @@ void print_int_init(int fd, int i)
char buf[10];
char * chptr = buf + 9;
int j = 0;
-
+
if (i < 0)
{
write(1, "-", 1);
i = -1 * i;
}
-
+
while (i)
{
*chptr-- = '0' + (i % 10);
j++;
i = i / 10;
}
-
+
write(fd, chptr + 1, j);
}
@@ -146,7 +150,6 @@ void doklog()
return;
}
- mkdir("/tmp", 0755);
if ((log = open("/tmp/syslog", O_WRONLY | O_CREAT | O_APPEND, 0644)) < 0) {
print_error("error opening /tmp/syslog");
sleep(5);
@@ -162,7 +165,7 @@ void doklog()
close(1);
close(2);
}
-
+
out = open("/dev/tty4", O_WRONLY, 0);
if (out < 0)
print_warning("couldn't open tty for syslog -- still using /tmp/syslog\n");
@@ -204,7 +207,7 @@ void doklog()
if (sock >= 0)
FD_SET(sock, &readset);
FD_SET(in, &readset);
-
+
i = select(20, &readset, NULL, NULL, NULL);
if (i <= 0)
continue;
@@ -219,25 +222,6 @@ void doklog()
}
}
- /* examine some fd's in the hope to find some syslog outputs from programs */
- for (readfd = 0; readfd < 20; ++readfd) {
- if (FD_ISSET(readfd, &readset) && FD_ISSET(readfd, &unixs)) {
- i = read(readfd, buf, sizeof(buf));
- if (i > 0) {
- /* grep out the output of RPM telling that it installed/removed some packages */
- if (!strstr(buf, "mdk installed") && !strstr(buf, "mdk removed")) {
- if (out >= 0)
- write(out, buf, i);
- write(log, buf, i);
- }
- } else if (i == 0) {
- /* socket closed */
- close(readfd);
- FD_CLR(readfd, &unixs);
- }
- }
- }
-
/* the socket has moved, new stuff to do */
if (sock >= 0 && FD_ISSET(sock, &readset)) {
s = sizeof(sockaddr);
@@ -296,7 +280,9 @@ char* strcat(register char* s,register const char* t)
char *dest=s;
s+=strlen(s);
for (;;) {
- if (!(*s = *t)) break; ++s; ++t;
+ if (!(*s = *t))
+ break;
+ ++s; ++t;
}
return dest;
}
@@ -310,10 +296,9 @@ void unmount_filesystems(void)
struct filesystem fs[500];
int numfs = 0;
int i, nb;
- int disallow_eject = 0;
printf("unmounting filesystems...\n");
-
+
fd = open("/proc/mounts", O_RDONLY, 0);
if (fd < 1) {
print_error("failed to open /proc/mounts");
@@ -340,8 +325,6 @@ void unmount_filesystems(void)
*p++ = '\0';
while (*p != '\n') p++;
p++;
- if (!strcmp(fs[numfs].fs, "nfs"))
- disallow_eject = 1;
if (strcmp(fs[numfs].name, "/")
&& !strstr(fs[numfs].dev, "ram")
&& strcmp(fs[numfs].name, "/dev")
@@ -365,27 +348,20 @@ void unmount_filesystems(void)
}
}
} while (nb);
-
+
for (i = nb = 0; i < numfs; i++)
if (fs[i].mounted) {
printf("\tumount failed: %s\n", fs[i].name);
if (strcmp(fs[i].fs, "ext3") == 0) nb++; /* don't count not-ext3 umount failed */
}
-
+
if (nb) {
printf("failed to umount some filesystems\n");
select(0, NULL, NULL, NULL, NULL);
}
}
-#define BMAGIC_HARD 0x89ABCDEF
-#define BMAGIC_SOFT 0
-#define BMAGIC_REBOOT 0x01234567
-#define BMAGIC_HALT 0xCDEF0123
-#define BMAGIC_POWEROFF 0x4321FEDC
-int reboot_magic = BMAGIC_REBOOT;
-
int in_reboot(void)
{
int fd;
@@ -394,13 +370,92 @@ int in_reboot(void)
int i = read(fd, buf, sizeof(buf));
close(fd);
if (strstr(buf, "halt"))
- reboot_magic = BMAGIC_POWEROFF;
+ reboot_magic = LINUX_REBOOT_CMD_POWER_OFF;
return i > 0;
}
return 0;
}
-int exit_value_proceed = 66;
+int recursive_remove(char *file);
+int recursive_remove(char *file)
+{
+ struct stat sb;
+
+ if (lstat(file, &sb) != 0) {
+ printf("failed to stat %s: %d\n", file, errno);
+ return -1;
+ }
+
+ /* only descend into subdirectories if device is same as dir */
+ if (S_ISDIR(sb.st_mode)) {
+ char * strBuf = alloca(strlen(file) + 1024);
+ DIR * dir;
+ struct dirent * d;
+
+ if (!(dir = opendir(file))) {
+ printf("error opening %s: %d\n", file, errno);
+ return -1;
+ }
+ while ((d = readdir(dir))) {
+ if (!strcmp(d->d_name, ".") || !strcmp(d->d_name, ".."))
+ continue;
+
+ strcpy(strBuf, file);
+ strcat(strBuf, "/");
+ strcat(strBuf, d->d_name);
+
+ if (recursive_remove(strBuf) != 0) {
+ closedir(dir);
+ return -1;
+ }
+ }
+ closedir(dir);
+
+ if (rmdir(file)) {
+ printf("failed to rmdir %s: %d\n", file, errno);
+ return -1;
+ }
+ } else {
+ if (unlink(file) != 0) {
+ printf("failed to remove %s: %d\n", file, errno);
+ return -1;
+ }
+ }
+ return 0;
+}
+
+
+int create_initial_fs_symlinks(char* symlinks)
+{
+ FILE *f;
+ char buf[5000];
+
+ if (!(f = fopen(symlinks, "rb"))) {
+ printf("Error opening symlink definitions file '%s'\n", symlinks);
+ return -1;
+ }
+ while (fgets(buf, sizeof(buf), f)) {
+ char oldpath[500], newpath[500];
+ struct stat sb;
+
+ buf[strlen(buf)-1] = '\0'; // trim \n
+ if (sscanf(buf, "%s %s", oldpath, newpath) != 2) {
+ snprintf(oldpath, sizeof(oldpath), "%s%s", STAGE2_LOCATION, buf);
+ snprintf(newpath, sizeof(newpath), "%s", buf);
+ }
+ if (lstat(newpath, &sb) == 0)
+ recursive_remove(newpath);
+ printf("Creating symlink %s -> %s\n", oldpath, newpath);
+ if (symlink(oldpath, newpath)) {
+ printf("Error creating symlink\n");
+ return -1;
+ }
+ }
+ fclose(f);
+ return 0;
+}
+
+
int exit_value_restart = 0x35;
int main(int argc, char **argv)
@@ -408,7 +463,6 @@ int main(int argc, char **argv)
pid_t installpid, childpid;
int wait_status;
int fd;
- int counter = 0;
int abnormal_termination = 0;
if (argc > 1 && argv[1][0] >= '0' && argv[1][0] <= '9') {
@@ -426,15 +480,11 @@ int main(int argc, char **argv)
printf("*** TESTING MODE *** (pid is %d)\n", getpid());
- if (!testing) {
- mkdir("/proc", 0755);
- if (mount("/proc", "/proc", "proc", 0, NULL))
- fatal_error("Unable to mount proc filesystem");
- mkdir("/sys", 0755);
- if (mount("none", "/sys", "sysfs", 0, NULL))
- fatal_error("Unable to mount sysfs filesystem");
- }
-
+ // needed for ldetect:
+ if (!testing)
+ if (mount("none", "/sys/kernel/debug", "debugfs", MS_NOSUID, "mode=0755"))
+ fatal_error("Unable to mount debugfs filesystem");
+
/* ignore Control-C and keyboard stop signals */
signal(SIGINT, SIG_IGN);
@@ -444,13 +494,13 @@ int main(int argc, char **argv)
fd = open("/dev/console", O_RDWR, 0);
if (fd < 0)
fatal_error("failed to open /dev/console");
-
+
dup2(fd, 0);
dup2(fd, 1);
dup2(fd, 2);
close(fd);
}
-
+
/* I set me up as session leader (probably not necessary?) */
setsid();
@@ -468,57 +518,66 @@ int main(int argc, char **argv)
if (!testing)
doklog();
- /* Go into normal init mode - keep going, and then do a orderly shutdown
- when:
-
- 1) install exits
- 2) we receive a SIGHUP
- */
+ if (create_initial_fs_symlinks(STAGE2_LOCATION "/usr/share/symlinks") != 0)
+ fatal_error("Fatal error finishing initialization (could not create symlinks).");
- do {
- if (counter == 1) {
- printf("proceeding, please wait...\n");
- }
+ /* kernel modules and firmware is needed by stage2, so move them to the root */
+ if (rename("/usr/lib/modules", "/modules"))
+ fatal_error("Cannot rename modules folder");
- if (!(installpid = fork())) {
- /* child */
- char * child_argv[2];
- child_argv[0] = counter == 0 ? BINARY : BINARY_STAGE2;
- child_argv[1] = NULL;
+ if (rename("/usr/lib/firmware", "/firmware"))
+ fatal_error("Cannot rename firmware folder");
- execve(child_argv[0], child_argv, env);
- printf("error in exec of %s :-( [%d]\n", child_argv[0], errno);
- return 0;
- }
+ /* Add some symlinks so stage1 is still valid on it's own - not strictly needed */
+ if (symlink("/modules", "/usr/lib/modules"))
+ fatal_error("Cannot symlink modules folder");
- do {
- childpid = wait4(-1, &wait_status, 0, NULL);
- } while (childpid != installpid);
+ if (symlink("/firmware", "/usr/lib/firmware"))
+ fatal_error("Cannot symlink firmware folder");
- counter++;
- } while (WIFEXITED(wait_status) && WEXITSTATUS(wait_status) == exit_value_restart);
+ if (mount(STAGE2_LOCATION "/usr", "/usr", "none", MS_BIND|MS_RDONLY, NULL))
+ fatal_error("Unable to bind mount /usr filesystem from rescue or installer stage2");
- /* allow Ctrl Alt Del to reboot */
- reboot(0xfee1dead, 672274793, BMAGIC_HARD);
- if (in_reboot()) {
- // any exitcode is valid if we're in_reboot
- } else if (WIFEXITED(wait_status) && WEXITSTATUS(wait_status) == exit_value_proceed) {
+ if (access("/run/drakx/run-init", R_OK) == 0) {
+ /* This is typically used in rescue mode */
+ char * child_argv[2] = { "/sbin/init", NULL };
+
kill(klog_pid, 9);
printf("proceeding, please wait...\n");
+ execve(child_argv[0], child_argv, env);
+ fatal_error("failed to exec /sbin/init");
+ }
+
+ /* This is installer mode */
+ do {
+ printf("proceeding, please wait...\n");
- {
- char * child_argv[2] = { "/sbin/init", NULL };
+ if (!(installpid = fork())) {
+ /* child */
+ char * child_argv[2] = { BINARY_STAGE2, NULL };
execve(child_argv[0], child_argv, env);
+ printf("error in exec of %s :-( [%d]\n", child_argv[0], errno);
+ return 0;
}
- fatal_error("failed to exec /sbin/init");
- } else if (!WIFEXITED(wait_status) || WEXITSTATUS(wait_status) != 0) {
+
+ do {
+ childpid = wait4(-1, &wait_status, 0, NULL);
+ } while (childpid != installpid);
+ } while (WIFEXITED(wait_status) && WEXITSTATUS(wait_status) == exit_value_restart);
+
+ /* allow Ctrl Alt Del to reboot */
+ reboot(LINUX_REBOOT_CMD_CAD_ON);
+
+ if (in_reboot()) {
+ // any exitcode is valid if we're in_reboot
+ } else if (!WIFEXITED(wait_status) || WEXITSTATUS(wait_status) != 0) {
printf("exited abnormally :-( ");
if (WIFSIGNALED(wait_status))
printf("-- received signal %d", WTERMSIG(wait_status));
printf("\n");
abnormal_termination = 1;
- }
+ }
if (!abnormal_termination) {
int i;
@@ -547,12 +606,12 @@ int main(int argc, char **argv)
sync(); sync();
if (!abnormal_termination) {
- if (reboot_magic == BMAGIC_REBOOT) {
+ if (reboot_magic == LINUX_REBOOT_CMD_RESTART) {
#ifdef DEBUG
printf("automatic reboot in 10 seconds\n");
sleep(10);
#endif
- reboot(0xfee1dead, 672274793, reboot_magic);
+ reboot(reboot_magic);
} else {
printf("you may safely poweroff your computer now\n");
}
diff --git a/mdk-stage1/ka.c b/mdk-stage1/ka.c
index 59fc93e24..7b9d98fbe 100644
--- a/mdk-stage1/ka.c
+++ b/mdk-stage1/ka.c
@@ -44,14 +44,16 @@ static void my_pause(void) {
static enum return_type ka_wait_for_stage2(int count)
{
char * ramdisk = "/dev/ram3"; /* warning, verify that this file exists in the initrd*/
- char * ka_launch[] = { "/ka/ka-d-client", "-w","-s","getstage2","-e","(cd /tmp/stage2; tar --extract --read-full-records --same-permissions --numeric-owner --sparse --file - )", NULL }; /* The command line for ka_launch */
- char * mkfs_launch[] = { "/sbin/mke2fs", ramdisk, NULL}; /* The mkfs command for formating the ramdisk */
+ char * ka_launch[] = { "/ka/ka-d-client", "-w","-s","getstage2","-e","(cd " STAGE2_LOCATION "; tar -x -f - )", NULL }; /* The command line for ka_launch */
+ char * mkfs_launch[] = { "/sbin/mke2fs", "-m", "0", ramdisk, NULL}; /* The mkfs command for formating the ramdisk */
log_message("KA: Preparing to receive stage 2....");
+ wait_message("Preparing to receive stage 2");
+
int pida, wait_status;
if (!(pida = fork())) { /* Forking current process for running mkfs */
- close(1);
+ //close(1);
close(2);
execv(mkfs_launch[0], mkfs_launch); /* Formating the ramdisk */
printf("KA: Can't execute %s\n<press Enter>\n", mkfs_launch[0]);
@@ -59,10 +61,13 @@ static enum return_type ka_wait_for_stage2(int count)
return KAERR_CANTFORK;
}
while (wait4(-1, &wait_status, 0, NULL) != pida) {}; /* Waiting the end of mkfs */
+ remove_wait_message();
+ wait_message("Mounting /dev/ram3 at %s", STAGE2_LOCATION);
if (my_mount(ramdisk, STAGE2_LOCATION, "ext2", 1)) {/* Trying to mount the ramdisk */
return RETURN_ERROR;
}
+ remove_wait_message();
log_message("KA: Waiting for stage 2....");
wait_message("Waiting for rescue from KA server (Try %d/%d)", count, KA_MAX_RETRY);
diff --git a/mdk-stage1/log.c b/mdk-stage1/log.c
index 8e4ae76f8..cb3f741dc 100644
--- a/mdk-stage1/log.c
+++ b/mdk-stage1/log.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/log.h b/mdk-stage1/log.h
index 1ecb519ac..d726a6b21 100644
--- a/mdk-stage1/log.h
+++ b/mdk-stage1/log.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/lomount.c b/mdk-stage1/lomount.c
index c70730379..caca48ea1 100644
--- a/mdk-stage1/lomount.c
+++ b/mdk-stage1/lomount.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -165,11 +165,9 @@ lomount(char *loopfile, char *where, char **dev, int compressed)
flag = MS_MGC_VAL;
flag |= MS_RDONLY;
- my_insmod("loop", ANY_DRIVER_TYPE, "max_loop=256", 1);
+ my_modprobe("loop", ANY_DRIVER_TYPE, "max_loop=256");
if (compressed) {
- my_insmod("sqlzma", ANY_DRIVER_TYPE, NULL, 1);
- my_insmod("squashfs_lzma", ANY_DRIVER_TYPE, NULL, 1);
- my_insmod("squashfs", ANY_DRIVER_TYPE, NULL, 1);
+ my_modprobe("squashfs", ANY_DRIVER_TYPE, NULL);
}
if (!(loopdev = find_free_loop())) {
diff --git a/mdk-stage1/lomount.h b/mdk-stage1/lomount.h
index 84287108f..7f3af2460 100644
--- a/mdk-stage1/lomount.h
+++ b/mdk-stage1/lomount.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/modules.c b/mdk-stage1/modules.c
index 5f02d2a6d..76177302e 100644
--- a/mdk-stage1/modules.c
+++ b/mdk-stage1/modules.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -30,7 +30,9 @@
#include <string.h>
#include <stdio.h>
#include <errno.h>
+#include <time.h>
#include <sys/utsname.h>
+#include <libkmod.h>
#include "log.h"
#include "utils.h"
#include "frontend.h"
@@ -39,16 +41,11 @@
#include "modules.h"
-#define UEVENT_HELPER_FILE "/sys/kernel/uevent_helper"
-#define UEVENT_HELPER_VALUE "/sbin/hotplug"
-
static char modules_directory[100];
-static struct module_deps_elem * modules_deps = NULL;
static struct module_descr_elem * modules_descr = NULL;
extern long init_module(void *, unsigned long, const char *);
-
static const char *moderror(int err)
{
switch (err) {
@@ -89,7 +86,7 @@ int insmod_local_file(char * path, char * options)
static char *kernel_module_extension(void)
{
- return ".ko.gz";
+ return ".ko.xz";
}
@@ -123,76 +120,6 @@ static void find_modules_directory(void)
sprintf(modules_directory , "%s/%s", prefix, release);
}
-static int load_modules_dependencies(void)
-{
- char * deps_file = asprintf_("%s/%s", modules_directory, "modules.dep");
- char * buf, * ptr, * start, * end;
- struct stat s;
- int line, i;
-
- log_message("loading modules dependencies");
- buf = cat_file(deps_file, &s);
- if (!buf)
- return -1;
- line = line_counts(buf);
- modules_deps = malloc(sizeof(*modules_deps) * (line+1));
-
- start = buf;
- line = 0;
- while (start < (buf+s.st_size) && *start) {
- char * tmp_deps[50];
-
- end = strchr(start, '\n');
- *end = '\0';
-
- ptr = strchr(start, ':');
- if (!ptr) {
- start = end + 1;
- continue;
- }
- *ptr = '\0';
- ptr++;
-
- while (*ptr && (*ptr == ' ')) ptr++;
-
- /* sort of a good line */
- modules_deps[line].filename = start[0] == '/' ? strdup(start) : asprintf_("%s/%s", modules_directory, start);
- modules_deps[line].modname = filename2modname(start);
-
- start = ptr;
- i = 0;
- while (start && *start && i < sizeof(tmp_deps)/sizeof(char *)) {
- ptr = strchr(start, ' ');
- if (ptr) *ptr = '\0';
- tmp_deps[i++] = filename2modname(start);
- if (ptr)
- start = ptr + 1;
- else
- start = NULL;
- while (start && *start && *start == ' ')
- start++;
- }
- if(i >= sizeof(tmp_deps)/sizeof(char *)-1) {
- log_message("warning, more than %zu dependencies for module %s",
- sizeof(tmp_deps)/sizeof(char *)-1,
- modules_deps[line].modname);
- i = sizeof(tmp_deps)/sizeof(char *)-1;
- }
- tmp_deps[i++] = NULL;
-
- modules_deps[line].deps = memdup(tmp_deps, sizeof(char *) * i);
-
- line++;
- start = end + 1;
- }
- modules_deps[line].modname = NULL;
-
- free(buf);
-
- return 0;
-}
-
-
static int load_modules_descriptions(void)
{
char * descr_file = asprintf_("%s/%s", modules_directory, "modules.description");
@@ -235,23 +162,9 @@ static int load_modules_descriptions(void)
return 0;
}
-void init_firmware_loader(void)
-{
- int fd = open(UEVENT_HELPER_FILE, O_WRONLY|O_TRUNC, 0666);
- if (!fd) {
- log_message("warning, unable to set firmware loader");
- return;
- }
- write(fd, UEVENT_HELPER_VALUE, strlen(UEVENT_HELPER_VALUE));
- close(fd);
-}
-
void init_modules_insmoding(void)
{
find_modules_directory();
- if (load_modules_dependencies()) {
- fatal_error("warning, error initing modules stuff, modules loading disabled");
- }
if (load_modules_descriptions()) {
log_message("warning, error initing modules stuff");
}
@@ -287,6 +200,8 @@ static void add_modules_conf(char * str)
int module_already_present(const char * name)
{
FILE * f;
+ struct stat sb;
+ char *path;
int answ = 0;
if ((f = fopen("/proc/modules", "rb"))) {
@@ -298,52 +213,109 @@ int module_already_present(const char * name)
}
fclose(f);
}
+
+ /* built-in module case. try to find them through sysfs */
+ if (!answ) {
+ asprintf(&path, "/sys/module/%s", name);
+ if (!stat(path, &sb))
+ answ = 1;
+ free(path);
+ }
+ if (!answ) {
+ asprintf(&path, "/sys/fs/%s", name);
+ if (!stat(path, &sb))
+ answ = 1;
+ free(path);
+ }
return answ;
}
#ifndef ENABLE_NETWORK_STANDALONE
-static enum insmod_return insmod_with_deps(const char * mod_name, char * options, int allow_modules_floppy)
-{
- struct module_deps_elem * dep;
- const char * filename;
-
- dep = modules_deps;
- while (dep && dep->modname && strcmp(dep->modname, mod_name)) dep++;
-
- if (dep && dep->modname && dep->deps) {
- char ** one_dep;
- one_dep = dep->deps;
- while (*one_dep) {
- /* here, we can fail but we don't care, if the error is
- * important, the desired module will fail also */
- insmod_with_deps(*one_dep, NULL, allow_modules_floppy);
- one_dep++;
- }
+static enum insmod_return insmod_with_deps(const char * alias, char * options) {
+ struct kmod_ctx *ctx;
+ struct kmod_list *l, *list = NULL;
+ int err = 0, flags = 0;
+
+ if (!*modules_directory)
+ find_modules_directory();
+
+ ctx = kmod_new(modules_directory, NULL);
+ if (!ctx) {
+ fputs("Error: kmod_new() failed!\n", stderr);
+ goto exit;
}
-
- if (dep && dep->filename) {
- filename = dep->filename;
- } else {
- log_message("warning: unable to get module filename for %s", mod_name);
- filename = mod_name;
+ kmod_load_resources(ctx);
+
+ err = kmod_module_new_from_lookup(ctx, alias, &list);
+ if (err < 0)
+ goto exit;
+
+ // No module found...
+ if (list == NULL)
+ goto exit;
+
+ // filter through blacklist
+ struct kmod_list *filtered = NULL;
+ err = kmod_module_apply_filter(ctx, KMOD_FILTER_BLACKLIST, list, &filtered);
+ kmod_module_unref_list(list);
+ if (err < 0)
+ goto exit;
+ list = filtered;
+
+ kmod_list_foreach(l, list) {
+ struct kmod_module *mod = kmod_module_get_module(l);
+ err = kmod_module_probe_insert_module(mod, flags,
+ options, NULL, NULL, NULL);
+
+ if (err >= 0)
+ /* ignore flag return values such as a mod being blacklisted */
+ err = 0;
+ else {
+ switch (err) {
+ case -EEXIST:
+ fprintf(stderr, "could not insert '%s': Module already in kernel\n",
+ kmod_module_get_name(mod));
+ break;
+ case -ENOENT:
+ fprintf(stderr, "could not insert '%s': Unknown symbol in module, "
+ "or unknown parameter (see dmesg)\n",
+ kmod_module_get_name(mod));
+ break;
+ default:
+ fprintf(stderr, "could not insert '%s': %s\n",
+ kmod_module_get_name(mod),
+ strerror(-err));
+ break;
+ }
+ }
+
+ kmod_module_unref(mod);
+ if (err < 0)
+ break;
}
- if (module_already_present(mod_name))
- return INSMOD_OK;
+ kmod_module_unref_list(list);
- log_message("needs %s", filename);
- {
- return insmod_local_file((char *) filename, options);
+exit:
+ kmod_unref(ctx);
+
+ switch (err){
+ case 0:
+ return INSMOD_OK;
+ case -ENOENT:
+ return INSMOD_FAILED_FILE_NOT_FOUND;
+ default:
+ return INSMOD_FAILED;
}
}
#endif
#ifndef DISABLE_NETWORK
-enum insmod_return my_insmod(const char * mod_name, enum driver_type type, char * options, int allow_modules_floppy)
+enum insmod_return my_modprobe(const char * mod_name, enum driver_type type, char * options)
#else
-enum insmod_return my_insmod(const char * mod_name, enum driver_type type __attribute__ ((unused)), char * options, int allow_modules_floppy)
+enum insmod_return my_modprobe(const char * mod_name, enum driver_type type __attribute__ ((unused)), char * options)
#endif
{
int i;
@@ -369,7 +341,7 @@ enum insmod_return my_insmod(const char * mod_name, enum driver_type type __attr
i = system(cmd);
}
#else
- i = insmod_with_deps(mod_name, options, allow_modules_floppy);
+ i = insmod_with_deps(mod_name, options);
#endif
if (i == 0) {
log_message("\tsucceeded %s", mod_name);
@@ -387,7 +359,6 @@ enum insmod_return my_insmod(const char * mod_name, enum driver_type type __attr
sprintf(alias, "alias %s %s", *new_net_devices, mod_name);
add_modules_conf(alias);
log_message("NET: %s", alias);
- net_discovered_interface(*new_net_devices);
already_present:
new_net_devices++;
@@ -414,9 +385,9 @@ static enum return_type insmod_with_options(char * mod, enum driver_type type)
strcat(options, mod);
strcat(options, " ");
- strcat(options, answers[0]); // because my_insmod will eventually modify the string
+ strcat(options, answers[0]); // because my_modprobe will eventually modify the string
- if (my_insmod(mod, type, answers[0], 1) != INSMOD_OK) {
+ if (my_modprobe(mod, type, answers[0]) != INSMOD_OK) {
stg1_error_message("Insmod failed.");
return RETURN_ERROR;
}
diff --git a/mdk-stage1/modules.h b/mdk-stage1/modules.h
index 4bddb2452..1a6d8753f 100644
--- a/mdk-stage1/modules.h
+++ b/mdk-stage1/modules.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -23,16 +23,10 @@ enum insmod_return { INSMOD_OK, INSMOD_FAILED, INSMOD_FAILED_FILE_NOT_FOUND };
void init_modules_insmoding(void);
void init_firmware_loader(void);
int insmod_local_file(char * path, char * options);
-enum insmod_return my_insmod(const char * mod_name, enum driver_type type, char * options, int allow_modules_floppy);
+enum insmod_return my_modprobe(const char * mod_name, enum driver_type type, char * options);
enum return_type ask_insmod(enum driver_type);
int module_already_present(const char * name);
-struct module_deps_elem {
- char * modname;
- char * filename;
- char ** deps;
-};
-
struct module_descr_elem {
char * modname;
char * description;
diff --git a/mdk-stage1/mount.c b/mdk-stage1/mount.c
index 2b3e0f89d..14b2b2fc2 100644
--- a/mdk-stage1/mount.c
+++ b/mdk-stage1/mount.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -19,10 +19,12 @@
*
*/
+// for asprintf:
+#define _GNU_SOURCE
+#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
-#include <stdio.h>
#include <sys/mount.h>
#include <sys/stat.h>
#include <sys/types.h>
@@ -37,110 +39,16 @@
/* WARNING: this won't work if the argument is not /dev/ based */
int ensure_dev_exists(const char * dev)
{
- int major, minor;
- int type = S_IFBLK; /* my default type is block. don't forget to change for chars */
- const char * name;
struct stat buf;
- char * ptr;
- name = &dev[5]; /* we really need that dev be passed as /dev/something.. */
-
if (!stat(dev, &buf))
return 0; /* if the file already exists, we assume it's correct */
- if (ptr_begins_static_str(name, "sd")) {
- /* SCSI disks */
- major = 8;
- minor = (name[2] - 'a') << 4;
- if (name[3] && name[4])
- minor += 10 + (name[4] - '0');
- else if (name[3])
- minor += (name[3] - '0');
- } else if (ptr_begins_static_str(name, "hd")) {
- /* IDE disks/cd's */
- if (name[2] == 'a')
- major = 3, minor = 0;
- else if (name[2] == 'b')
- major = 3, minor = 64;
- else if (name[2] == 'c')
- major = 22, minor = 0;
- else if (name[2] == 'd')
- major = 22, minor = 64;
- else if (name[2] == 'e')
- major = 33, minor = 0;
- else if (name[2] == 'f')
- major = 33, minor = 64;
- else if (name[2] == 'g')
- major = 34, minor = 0;
- else if (name[2] == 'h')
- major = 34, minor = 64;
- else if (name[2] == 'i')
- major = 56, minor = 0;
- else if (name[2] == 'j')
- major = 56, minor = 64;
- else if (name[2] == 'k')
- major = 57, minor = 0;
- else if (name[2] == 'l')
- major = 57, minor = 64;
- else if (name[2] == 'm')
- major = 88, minor = 0;
- else if (name[2] == 'n')
- major = 88, minor = 64;
- else if (name[2] == 'o')
- major = 89, minor = 0;
- else if (name[2] == 'p')
- major = 89, minor = 64;
- else if (name[2] == 'q')
- major = 90, minor = 0;
- else if (name[2] == 'r')
- major = 90, minor = 64;
- else if (name[2] == 's')
- major = 91, minor = 0;
- else if (name[2] == 't')
- major = 91, minor = 64;
- else
- return -1;
-
- if (name[3] && name[4])
- minor += 10 + (name[4] - '0');
- else if (name[3])
- minor += (name[3] - '0');
- } else if (ptr_begins_static_str(name , "sr")) {
- /* SCSI cd's */
- major = 11;
- minor = name[2] - '0';
- } else if (ptr_begins_static_str(name, "ida/") ||
- ptr_begins_static_str(name, "cciss/")) {
- /* Compaq Smart Array "ida/c0d0{p1}" */
- ptr = strchr(name, '/');
- mkdir("/dev/ida", 0755);
- mkdir("/dev/cciss", 0755);
- major = ptr_begins_static_str(name, "ida/") ? 72 : 104 + charstar_to_int(ptr+2);
- ptr = strchr(ptr, 'd');
- minor = 16 * charstar_to_int(ptr+1);
- ptr = strchr(ptr, 'p');
- minor += charstar_to_int(ptr+1);
- } else if (ptr_begins_static_str(name, "rd/")) {
- /* DAC960 "rd/cXdXXpX" */
- mkdir("/dev/rd", 0755);
- major = 48 + charstar_to_int(name+4);
- ptr = strchr(name+4, 'd');
- minor = 8 * charstar_to_int(ptr+1);
- ptr = strchr(ptr, 'p');
- minor += charstar_to_int(ptr+1);
- } else if (ptr_begins_static_str(name, "loop")) {
- major = 7;
- minor = name[4] - '0';
- } else if (ptr_begins_static_str(name, "chloop")) {
- major = 100;
- minor = name[6] - '0';
- } else {
- log_message("I don't know how to create device %s, please post bugreport to me!", dev);
- return -1;
- }
+ // give udev some time to create nodes if module was just insmoded:
+ system("udevadm settle");
- if (mknod(dev, type | 0600, makedev(major, minor))) {
- log_perror(dev);
+ if (!stat(dev, &buf)) {
+ log_message("I don't know how to create device %s, please post bugreport to me!", dev);
return -1;
}
@@ -151,7 +59,6 @@ int ensure_dev_exists(const char * dev)
/* mounts, creating the device if needed+possible */
int my_mount(char *dev, char *location, char *fs, int force_rw)
{
- unsigned long flags = MS_MGC_VAL | (force_rw ? 0 : MS_RDONLY);
char * opts = NULL;
struct stat buf;
int rc;
@@ -183,56 +90,20 @@ int my_mount(char *dev, char *location, char *fs, int force_rw)
}
}
- if (!strcmp(fs, "supermount")) {
- my_insmod("supermount", ANY_DRIVER_TYPE, NULL, 1);
- my_insmod("isofs", ANY_DRIVER_TYPE, NULL, 1);
- opts = alloca(500);
- sprintf(opts, "dev=%s,fs=iso9660,tray_lock=always", dev);
- dev = "none";
- }
-
#ifndef DISABLE_MEDIAS
- if (!strcmp(fs, "vfat")) {
- my_insmod("nls_cp437", ANY_DRIVER_TYPE, NULL, 1);
- my_insmod("nls_iso8859_1", ANY_DRIVER_TYPE, NULL, 1);
- my_insmod("vfat", ANY_DRIVER_TYPE, NULL, 1);
+ if (!strcmp(fs, "nfs"))
+ opts = "nolock";
+ if (!strcmp(fs, "vfat"))
opts = "check=relaxed";
- }
-
- if (!strcmp(fs, "ntfs")) {
- my_insmod("ntfs", ANY_DRIVER_TYPE, NULL, 1);
- }
-
- if (!strcmp(fs, "reiserfs"))
- my_insmod("reiserfs", ANY_DRIVER_TYPE, NULL, 1);
-
- if (!strcmp(fs, "reiser4"))
- my_insmod("reiser4", ANY_DRIVER_TYPE, NULL, 1);
-
- if (!strcmp(fs, "jfs"))
- my_insmod("jfs", ANY_DRIVER_TYPE, NULL, 1);
-
- if (!strcmp(fs, "xfs"))
- my_insmod("xfs", ANY_DRIVER_TYPE, NULL, 1);
-
- if (!strcmp(fs, "ext4"))
- my_insmod("ext4", ANY_DRIVER_TYPE, NULL, 1);
-
#endif
- if (!strcmp(fs, "iso9660"))
- my_insmod("isofs", ANY_DRIVER_TYPE, NULL, 1);
-
-#ifndef DISABLE_NETWORK
- if (!strcmp(fs, "nfs")) {
- my_insmod("nfs", ANY_DRIVER_TYPE, NULL, 1);
- log_message("preparing nfsmount for %s", dev);
- rc = nfsmount_prepare(dev, &opts);
- if (rc != 0)
- return rc;
+ char *cmd;
+ rc = asprintf(&cmd, "mount %s %s -t %s -o %s%s > /dev/null 2>&1", dev, location, fs, (force_rw ? "" : "ro,"), (opts ? opts : ""));
+ if (rc == -1) {
+ log_perror("asprint allocation failure");
+ rmdir(location);
+ return rc;
}
-#endif
-
- rc = mount(dev, location, fs, flags, opts);
+ rc = system(cmd);
if (rc != 0) {
log_perror("mount failed");
rmdir(location);
diff --git a/mdk-stage1/mount.h b/mdk-stage1/mount.h
index 5b41949bb..dc8d674c3 100644
--- a/mdk-stage1/mount.h
+++ b/mdk-stage1/mount.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -22,10 +22,6 @@
#ifndef _MOUNT_H_
#define _MOUNT_H_
-#ifndef DISABLE_NETWORK
-#include "nfsmount.h"
-#endif
-
int my_mount(char *dev, char *location, char *fs, int force_rw);
int ensure_dev_exists(const char * dev);
diff --git a/mdk-stage1/mount_rpcgen.h b/mdk-stage1/mount_rpcgen.h
deleted file mode 100644
index d70ccaf9d..000000000
--- a/mdk-stage1/mount_rpcgen.h
+++ /dev/null
@@ -1,208 +0,0 @@
-/*
- * Please do not edit this file.
- * It was generated using rpcgen.
- */
-
-#ifndef _MOUNT_H_RPCGEN
-#define _MOUNT_H_RPCGEN
-
-#include <rpc/rpc.h>
-
-#define MNTPATHLEN 1024
-#define MNTNAMLEN 255
-#define FHSIZE 32
-
-typedef char fhandle[FHSIZE];
-#ifdef __cplusplus
-extern "C" bool_t xdr_fhandle(XDR *, fhandle);
-#elif __STDC__
-extern bool_t xdr_fhandle(XDR *, fhandle);
-#else /* Old Style C */
-bool_t xdr_fhandle();
-#endif /* Old Style C */
-
-
-struct fhstatus {
- u_int fhs_status;
- union {
- fhandle fhs_fhandle;
- } fhstatus_u;
-};
-typedef struct fhstatus fhstatus;
-#ifdef __cplusplus
-extern "C" bool_t xdr_fhstatus(XDR *, fhstatus*);
-#elif __STDC__
-extern bool_t xdr_fhstatus(XDR *, fhstatus*);
-#else /* Old Style C */
-bool_t xdr_fhstatus();
-#endif /* Old Style C */
-
-
-typedef char *dirpath;
-#ifdef __cplusplus
-extern "C" bool_t xdr_dirpath(XDR *, dirpath*);
-#elif __STDC__
-extern bool_t xdr_dirpath(XDR *, dirpath*);
-#else /* Old Style C */
-bool_t xdr_dirpath();
-#endif /* Old Style C */
-
-
-typedef char *name;
-#ifdef __cplusplus
-extern "C" bool_t xdr_name(XDR *, name*);
-#elif __STDC__
-extern bool_t xdr_name(XDR *, name*);
-#else /* Old Style C */
-bool_t xdr_name();
-#endif /* Old Style C */
-
-
-typedef struct mountbody *mountlist;
-#ifdef __cplusplus
-extern "C" bool_t xdr_mountlist(XDR *, mountlist*);
-#elif __STDC__
-extern bool_t xdr_mountlist(XDR *, mountlist*);
-#else /* Old Style C */
-bool_t xdr_mountlist();
-#endif /* Old Style C */
-
-
-struct mountbody {
- name ml_hostname;
- dirpath ml_directory;
- mountlist ml_next;
-};
-typedef struct mountbody mountbody;
-#ifdef __cplusplus
-extern "C" bool_t xdr_mountbody(XDR *, mountbody*);
-#elif __STDC__
-extern bool_t xdr_mountbody(XDR *, mountbody*);
-#else /* Old Style C */
-bool_t xdr_mountbody();
-#endif /* Old Style C */
-
-
-typedef struct groupnode *groups;
-#ifdef __cplusplus
-extern "C" bool_t xdr_groups(XDR *, groups*);
-#elif __STDC__
-extern bool_t xdr_groups(XDR *, groups*);
-#else /* Old Style C */
-bool_t xdr_groups();
-#endif /* Old Style C */
-
-
-struct groupnode {
- name gr_name;
- groups gr_next;
-};
-typedef struct groupnode groupnode;
-#ifdef __cplusplus
-extern "C" bool_t xdr_groupnode(XDR *, groupnode*);
-#elif __STDC__
-extern bool_t xdr_groupnode(XDR *, groupnode*);
-#else /* Old Style C */
-bool_t xdr_groupnode();
-#endif /* Old Style C */
-
-
-typedef struct exportnode *exports;
-#ifdef __cplusplus
-extern "C" bool_t xdr_exports(XDR *, exports*);
-#elif __STDC__
-extern bool_t xdr_exports(XDR *, exports*);
-#else /* Old Style C */
-bool_t xdr_exports();
-#endif /* Old Style C */
-
-
-struct exportnode {
- dirpath ex_dir;
- groups ex_groups;
- exports ex_next;
-};
-typedef struct exportnode exportnode;
-#ifdef __cplusplus
-extern "C" bool_t xdr_exportnode(XDR *, exportnode*);
-#elif __STDC__
-extern bool_t xdr_exportnode(XDR *, exportnode*);
-#else /* Old Style C */
-bool_t xdr_exportnode();
-#endif /* Old Style C */
-
-
-#define MOUNTPROG ((u_long)100005)
-#define MOUNTVERS ((u_long)1)
-
-#ifdef __cplusplus
-#define MOUNTPROC_NULL ((u_long)0)
-extern "C" void * mountproc_null_1(void *, CLIENT *);
-extern "C" void * mountproc_null_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_MNT ((u_long)1)
-extern "C" fhstatus * mountproc_mnt_1(dirpath *, CLIENT *);
-extern "C" fhstatus * mountproc_mnt_1_svc(dirpath *, struct svc_req *);
-#define MOUNTPROC_DUMP ((u_long)2)
-extern "C" mountlist * mountproc_dump_1(void *, CLIENT *);
-extern "C" mountlist * mountproc_dump_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_UMNT ((u_long)3)
-extern "C" void * mountproc_umnt_1(dirpath *, CLIENT *);
-extern "C" void * mountproc_umnt_1_svc(dirpath *, struct svc_req *);
-#define MOUNTPROC_UMNTALL ((u_long)4)
-extern "C" void * mountproc_umntall_1(void *, CLIENT *);
-extern "C" void * mountproc_umntall_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_EXPORT ((u_long)5)
-extern "C" exports * mountproc_export_1(void *, CLIENT *);
-extern "C" exports * mountproc_export_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_EXPORTALL ((u_long)6)
-extern "C" exports * mountproc_exportall_1(void *, CLIENT *);
-extern "C" exports * mountproc_exportall_1_svc(void *, struct svc_req *);
-
-#elif __STDC__
-#define MOUNTPROC_NULL ((u_long)0)
-extern void * mountproc_null_1(void *, CLIENT *);
-extern void * mountproc_null_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_MNT ((u_long)1)
-extern fhstatus * mountproc_mnt_1(dirpath *, CLIENT *);
-extern fhstatus * mountproc_mnt_1_svc(dirpath *, struct svc_req *);
-#define MOUNTPROC_DUMP ((u_long)2)
-extern mountlist * mountproc_dump_1(void *, CLIENT *);
-extern mountlist * mountproc_dump_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_UMNT ((u_long)3)
-extern void * mountproc_umnt_1(dirpath *, CLIENT *);
-extern void * mountproc_umnt_1_svc(dirpath *, struct svc_req *);
-#define MOUNTPROC_UMNTALL ((u_long)4)
-extern void * mountproc_umntall_1(void *, CLIENT *);
-extern void * mountproc_umntall_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_EXPORT ((u_long)5)
-extern exports * mountproc_export_1(void *, CLIENT *);
-extern exports * mountproc_export_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_EXPORTALL ((u_long)6)
-extern exports * mountproc_exportall_1(void *, CLIENT *);
-extern exports * mountproc_exportall_1_svc(void *, struct svc_req *);
-
-#else /* Old Style C */
-#define MOUNTPROC_NULL ((u_long)0)
-extern void * mountproc_null_1();
-extern void * mountproc_null_1_svc();
-#define MOUNTPROC_MNT ((u_long)1)
-extern fhstatus * mountproc_mnt_1();
-extern fhstatus * mountproc_mnt_1_svc();
-#define MOUNTPROC_DUMP ((u_long)2)
-extern mountlist * mountproc_dump_1();
-extern mountlist * mountproc_dump_1_svc();
-#define MOUNTPROC_UMNT ((u_long)3)
-extern void * mountproc_umnt_1();
-extern void * mountproc_umnt_1_svc();
-#define MOUNTPROC_UMNTALL ((u_long)4)
-extern void * mountproc_umntall_1();
-extern void * mountproc_umntall_1_svc();
-#define MOUNTPROC_EXPORT ((u_long)5)
-extern exports * mountproc_export_1();
-extern exports * mountproc_export_1_svc();
-#define MOUNTPROC_EXPORTALL ((u_long)6)
-extern exports * mountproc_exportall_1();
-extern exports * mountproc_exportall_1_svc();
-#endif /* Old Style C */
-
-#endif /* !_MOUNT_H_RPCGEN */
diff --git a/mdk-stage1/network.c b/mdk-stage1/network.c
index 85704b805..ab512399a 100644
--- a/mdk-stage1/network.c
+++ b/mdk-stage1/network.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -31,6 +31,7 @@
#include <sys/ioctl.h>
#include <sys/mount.h>
#include <stdio.h>
+#include <fcntl.h>
#include <netdb.h>
#include <resolv.h>
#include <sys/utsname.h>
@@ -290,7 +291,7 @@ static int save_netinfo(struct interface_info * intf)
fprintf(f, "NETWORKING=yes\n");
fprintf(f, "FORWARD_IPV4=false\n");
- if (hostname && !intf->boot_proto == BOOTPROTO_DHCP)
+ if (hostname && !(intf->boot_proto == BOOTPROTO_DHCP))
fprintf(f, "HOSTNAME=%s\n", hostname);
if (gateway.s_addr != 0)
fprintf(f, "GATEWAY=%s\n", inet_ntoa(gateway));
@@ -537,7 +538,7 @@ static enum return_type configure_network(struct interface_info * intf)
char * boulet;
if (dhcp_hostname || dhcp_domain) {
- answers = (char **) malloc(sizeof(questions));
+ answers = (char **) calloc(1, sizeof(questions));
answers[0] = strdup(dhcp_hostname);
answers[1] = strdup(dhcp_domain);
}
@@ -568,8 +569,15 @@ static enum return_type bringup_networking(struct interface_info * intf)
{
static struct interface_info loopback;
enum return_type results;
-
- my_insmod("af_packet", ANY_DRIVER_TYPE, NULL, 1);
+ int fd;
+
+ /* try to find if module already loaded or built-in to avoid failing */
+ /* badly */
+ fd = open("/proc/net/packet", O_RDONLY);
+ if (fd < 0)
+ my_modprobe("af_packet", ANY_DRIVER_TYPE, NULL);
+ else
+ close(fd);
do {
results = configure_wireless(intf->device);
@@ -683,8 +691,7 @@ static char * interface_select(void)
}
if (count == 0) {
- stg1_error_message("No NET device found.\n"
- "Hint: if you're using a Laptop, note that PCMCIA Network adapters are now supported either with `pcmcia.img' or `network.img', please try both these bootdisks.");
+ stg1_error_message("No NET device found.");
i = ask_insmod(NETWORK_DEVICES);
if (i == RETURN_BACK)
return NULL;
@@ -853,8 +860,8 @@ static int choose_mirror_from_host_list(mirrorlist_t mirrorlist, char **selected
static int choose_mirror_from_list(char *http_proxy_host, char *http_proxy_port, const char *protocol, char **selected_host, char **filepath)
{
enum return_type results;
- char *versions[] = { "Specify the mirror manually", DISTRIB_VERSION, NULL };
- char *version = DISTRIB_VERSION;
+ char *versions[] = { "Specify the mirror manually", DISTRIB_NAME " " DISTRIB_VERSION, NULL };
+ char *version = DISTRIB_NAME " " DISTRIB_VERSION;
do {
results = ask_from_list("Please select a medium from the list below.", versions, &version);
@@ -871,7 +878,7 @@ static int choose_mirror_from_list(char *http_proxy_host, char *http_proxy_port,
mirrorlist[0][0] = "Specify the mirror manually";
mirrorlist[1][0] = NULL;
- results = get_mirrorlist(mirrorlist, 1, version, protocol, http_proxy_host, http_proxy_port);
+ results = get_mirrorlist(mirrorlist, 1, DISTRIB_VERSION, protocol, http_proxy_host, http_proxy_port);
if (results == RETURN_ERROR)
return RETURN_ERROR;
@@ -994,11 +1001,12 @@ enum return_type ftp_prepare(void)
char location_full[500];
int ftp_serv_response = -1;
int fd, size;
+ int need_arch = 0;
char ftp_hostname[500];
if (!IS_AUTOMATIC) {
if (answers == NULL)
- answers = (char **) malloc(sizeof(questions));
+ answers = (char **) calloc(1, sizeof(questions));
results = choose_mirror_from_list(http_proxy_host, http_proxy_port, "ftp", &answers[0], &answers[1]);
@@ -1064,6 +1072,21 @@ enum return_type ftp_prepare(void)
fd = ftp_start_download(ftp_serv_response, location_full, &size);
}
+ /* Try arched directory */
+ if (fd < 0) {
+ log_message("%s failed.", location_full);
+ char *with_arch = asprintf_("%s%s/%s/%s", answers[1][0] == '/' ? "" : "/", answers[1], ARCH, COMPRESSED_FILE_REL("/"));
+ log_message("trying %s...", with_arch);
+ if (use_http_proxy)
+ fd = http_download_file(answers[0], with_arch, &size, use_http_proxy ? "http" : NULL, http_proxy_host, http_proxy_port);
+ else
+ fd = ftp_start_download(ftp_serv_response, with_arch, &size);
+ if (0 < fd) {
+ strcpy(location_full, with_arch);
+ need_arch = 1;
+ }
+ }
+
if (fd < 0) {
char *msg = str_ftp_error(fd);
log_message("FTP: error get %d for remote file %s", fd, location_full);
@@ -1085,13 +1108,17 @@ enum return_type ftp_prepare(void)
if (use_http_proxy) {
add_to_env("METHOD", "http");
- sprintf(location_full, "ftp://%s%s", ftp_hostname, answers[1]);
+ snprintf(location_full, sizeof(location_full), "ftp://%s%s", ftp_hostname, answers[1]);
+ if (need_arch)
+ strcat(location_full, "/" ARCH);
add_to_env("URLPREFIX", location_full);
add_to_env("PROXY", http_proxy_host);
add_to_env("PROXYPORT", http_proxy_port);
} else {
add_to_env("METHOD", "ftp");
add_to_env("HOST", answers[0]);
+ if (need_arch)
+ strcat(answers[1], "/" ARCH);
add_to_env("PREFIX", answers[1]);
if (!streq(answers[2], "")) {
add_to_env("LOGIN", answers[2]);
@@ -1127,17 +1154,17 @@ enum return_type http_prepare(void)
do {
char location_full[500];
- int fd, size;
+ int fd, size, need_arch = 0;
int use_http_proxy;
if (!IS_AUTOMATIC) {
if (answers == NULL)
- answers = (char **) malloc(sizeof(questions));
+ answers = (char **) calloc(1, sizeof(questions));
results = choose_mirror_from_list(http_proxy_host, http_proxy_port, "http", &answers[0], &answers[1]);
if (results == RETURN_BACK)
- return ftp_prepare();
+ return http_prepare();
}
results = ask_from_entries_auto("Please enter the name or IP address of the HTTP server, "
@@ -1157,6 +1184,19 @@ enum return_type http_prepare(void)
use_http_proxy = http_proxy_host && http_proxy_port && !streq(http_proxy_host, "") && !streq(http_proxy_port, "");
fd = http_download_file(answers[0], location_full, &size, use_http_proxy ? "http" : NULL, http_proxy_host, http_proxy_port);
+
+ /* Try arched directory */
+ if (fd < 0) {
+ log_message("%s failed.", location_full);
+ char *with_arch = asprintf_("%s%s/%s/%s", answers[1][0] == '/' ? "" : "/", answers[1], ARCH, COMPRESSED_FILE_REL("/"));
+ log_message("trying %s...", with_arch);
+ fd = http_download_file(answers[0], with_arch, &size, use_http_proxy ? "http" : NULL, http_proxy_host, http_proxy_port);
+ if (0 < fd) {
+ strcpy(location_full, with_arch);
+ need_arch = 1;
+ }
+ }
+
if (fd < 0) {
log_message("HTTP: error %d", fd);
if (fd == FTPERR_FAILED_CONNECT)
@@ -1176,6 +1216,8 @@ enum return_type http_prepare(void)
add_to_env("METHOD", "http");
sprintf(location_full, "http://%s%s%s", answers[0], answers[1][0] == '/' ? "" : "/", answers[1]);
+ if (need_arch)
+ strcat(location_full, "/" ARCH);
add_to_env("URLPREFIX", location_full);
if (!streq(http_proxy_host, ""))
add_to_env("PROXY", http_proxy_host);
diff --git a/mdk-stage1/network.h b/mdk-stage1/network.h
index ad42f33d0..914bc2ca5 100644
--- a/mdk-stage1/network.h
+++ b/mdk-stage1/network.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/newt-frontend.c b/mdk-stage1/newt-frontend.c
index 3fbf7fe09..c0489b58d 100644
--- a/mdk-stage1/newt-frontend.c
+++ b/mdk-stage1/newt-frontend.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -32,7 +32,7 @@
#include <stdio.h>
#include <stdarg.h>
#include <sys/time.h>
-#include "newt/newt.h"
+#include <newt.h>
#include <probing.h>
@@ -299,7 +299,7 @@ static int mynewtWinEntries(char * title, char * text, int suggestedWidth, int f
for (i = 0; i < numItems; i++) {
newtComponent entr = newtEntry(-1, -1, items[i].value ?
*items[i].value : NULL, dataWidth,
- items[i].value, items[i].flags);
+ (const char**)items[i].value, items[i].flags);
newtGridSetField(subgrid, 0, i, NEWT_GRID_COMPONENT,
newtLabel(-1, -1, items[i].text),
@@ -361,7 +361,7 @@ enum return_type ask_from_entries(char *msg, char ** questions, char *** answers
entries[i].value = NULL;
if (*answers == NULL)
- *answers = (char **) malloc(sizeof(char *) * i);
+ *answers = (char **) calloc(1, sizeof(char *) * i);
else
already_answers = *answers;
diff --git a/mdk-stage1/newt/Makefile b/mdk-stage1/newt/Makefile
deleted file mode 100644
index 6750b70ec..000000000
--- a/mdk-stage1/newt/Makefile
+++ /dev/null
@@ -1,42 +0,0 @@
- #******************************************************************************
- #
- # Guillaume Cottenceau (gc@mandriva.com)
- #
- # Copyright 2000 Mandriva
- #
- # This software may be freely redistributed under the terms of the GNU
- # public license.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- #*****************************************************************************
-
-top_dir = ..
-
-include $(top_dir)/Makefile.common
-
-
-LIBNAME = libnewt
-
-OBJS = newt.o button.o form.o checkbox.o entry.o label.o listbox.o scrollbar.o textbox.o scale.o grid.o windows.o buttonbar.o checkboxtree.o
-
-DEFS = -DVERSION=\"0.50.19\"
-
-INCS = -I../slang
-
-
-TARGETS = $(LIBNAME).a
-
-all: $(TARGETS)
-
-clean:
- rm -f *.o *.a
-
-$(LIBNAME).a: $(OBJS)
- ar -cru $@ $^
- ranlib $@
-
-$(OBJS): %.o: %.c
- $(DIET) gcc $(CFLAGS) $(DEFS) $(INCS) $(INCLUDES) -c $< -o $@
diff --git a/mdk-stage1/newt/button.c b/mdk-stage1/newt/button.c
deleted file mode 100644
index d7da58175..000000000
--- a/mdk-stage1/newt/button.c
+++ /dev/null
@@ -1,192 +0,0 @@
-#include <slang.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-struct button {
- char * text;
- int compact;
-};
-
-static void buttonDrawIt(newtComponent co, int active, int pushed);
-static void buttonDrawText(newtComponent co, int active, int pushed);
-
-static void buttonDraw(newtComponent c);
-static void buttonDestroy(newtComponent co);
-static struct eventResult buttonEvent(newtComponent c,
- struct event ev);
-static void buttonPlace(newtComponent co, int newLeft, int newTop);
-
-static struct componentOps buttonOps = {
- buttonDraw,
- buttonEvent,
- buttonDestroy,
- buttonPlace,
- newtDefaultMappedHandler,
-} ;
-
-static newtComponent createButton(int left, int row, const char * text, int compact) {
- newtComponent co;
- struct button * bu;
-
- co = malloc(sizeof(*co));
- bu = malloc(sizeof(struct button));
- co->data = bu;
-
- bu->text = strdup(text);
- bu->compact = compact;
- co->ops = &buttonOps;
-
- if (bu->compact) {
- co->height = 1;
- co->width = strlen(text) + 3;
- } else {
- co->height = 4;
- co->width = strlen(text) + 5;
- }
-
- co->top = row;
- co->left = left;
- co->takesFocus = 1;
- co->isMapped = 0;
-
- newtGotorc(co->top, co->left);
-
- return co;
-}
-
-newtComponent newtCompactButton(int left, int row, const char * text) {
- return createButton(left, row, text, 1);
-}
-
-newtComponent newtButton(int left, int row, const char * text) {
- return createButton(left, row, text, 0);
-}
-
-static void buttonDestroy(newtComponent co) {
- struct button * bu = co->data;
-
- free(bu->text);
- free(bu);
- free(co);
-}
-
-static void buttonPlace(newtComponent co, int newLeft, int newTop) {
- co->top = newTop;
- co->left = newLeft;
-
- newtGotorc(co->top, co->left);
-}
-
-static void buttonDraw(newtComponent co) {
- buttonDrawIt(co, 0, 0);
-}
-
-static void buttonDrawIt(newtComponent co, int active, int pushed) {
- struct button * bu = co->data;
-
- if (!co->isMapped) return;
-
- SLsmg_set_color(NEWT_COLORSET_BUTTON);
-
- if (bu->compact) {
- if (active)
- SLsmg_set_color(NEWT_COLORSET_COMPACTBUTTON);
- else
- SLsmg_set_color(NEWT_COLORSET_BUTTON);
- newtGotorc(co->top+ pushed, co->left + 1 + pushed);
- SLsmg_write_char('<');
- SLsmg_write_string(bu->text);
- SLsmg_write_char('>');
- } else {
- if (pushed) {
- SLsmg_set_color(NEWT_COLORSET_BUTTON);
- newtDrawBox(co->left + 1, co->top + 1, co->width - 1, 3, 0);
-
- SLsmg_set_color(NEWT_COLORSET_WINDOW);
- newtClearBox(co->left, co->top, co->width, 1);
- newtClearBox(co->left, co->top, 1, co->height);
- } else {
- newtDrawBox(co->left, co->top, co->width - 1, 3, 1);
- }
-
- buttonDrawText(co, active, pushed);
- }
-}
-
-static void buttonDrawText(newtComponent co, int active, int pushed) {
- struct button * bu = co->data;
-
- if (pushed) pushed = 1;
-
- if (active)
- SLsmg_set_color(NEWT_COLORSET_ACTBUTTON);
- else
- SLsmg_set_color(NEWT_COLORSET_BUTTON);
-
- newtGotorc(co->top + 1 + pushed, co->left + 1 + pushed);
- SLsmg_write_char(' ');
- SLsmg_write_string(bu->text);
- SLsmg_write_char(' ');
-}
-
-static struct eventResult buttonEvent(newtComponent co,
- struct event ev) {
- struct eventResult er;
- struct button * bu = co->data;
- er.result = ER_IGNORED;
- er.u.focus = NULL;
-
- if (ev.when == EV_NORMAL) {
- switch (ev.event) {
- case EV_FOCUS:
- buttonDrawIt(co, 1, 0);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_UNFOCUS:
- buttonDrawIt(co, 0, 0);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_KEYPRESS:
- if (ev.u.key == ' ' || ev.u.key == '\r') {
- if (!bu->compact) {
- /* look pushed */
- buttonDrawIt(co, 1, 1);
- newtRefresh();
- newtDelay(150000);
- buttonDrawIt(co, 1, 0);
- newtRefresh();
- newtDelay(150000);
- }
-
- er.result = ER_EXITFORM;
- } else
- er.result = ER_IGNORED;
- break;
- case EV_MOUSE:
- if (ev.u.mouse.type == MOUSE_BUTTON_DOWN &&
- co->top <= ev.u.mouse.y &&
- co->top + co->height - !bu->compact > ev.u.mouse.y &&
- co->left <= ev.u.mouse.x &&
- co->left + co->width - !bu->compact > ev.u.mouse.x) {
- if (!bu->compact) {
- buttonDrawIt(co, 1, 1);
- newtRefresh();
- newtDelay(150000);
- buttonDrawIt(co, 1, 0);
- newtRefresh();
- newtDelay(150000);
- }
- er.result = ER_EXITFORM;
- }
- break;
- }
- } else
- er.result = ER_IGNORED;
-
- return er;
-}
diff --git a/mdk-stage1/newt/buttonbar.c b/mdk-stage1/newt/buttonbar.c
deleted file mode 100644
index 45473c9d2..000000000
--- a/mdk-stage1/newt/buttonbar.c
+++ /dev/null
@@ -1,46 +0,0 @@
-#include <stdarg.h>
-
-#include "newt.h"
-
-/* if they try and pack more then 50 buttons, screw 'em */
-newtGrid newtButtonBarv(char * button1, newtComponent * b1comp, va_list args) {
- newtGrid grid;
- struct buttonInfo {
- char * name;
- newtComponent * compPtr;
- } buttons[50];
- int num;
- int i;
-
- buttons[0].name = button1, buttons[0].compPtr = b1comp, num = 1;
- while (1) {
- buttons[num].name = va_arg(args, char *);
- if (!buttons[num].name) break;
- buttons[num].compPtr = va_arg(args, newtComponent *);
- num++;
- }
-
- grid = newtCreateGrid(num, 1);
-
- for (i = 0; i < num; i++) {
- *buttons[i].compPtr = newtButton(-1, -1, buttons[i].name);
- newtGridSetField(grid, i, 0, NEWT_GRID_COMPONENT,
- *buttons[i].compPtr,
- num ? 1 : 0, 0, 0, 0, 0, 0);
- }
-
- return grid;
-}
-
-newtGrid newtButtonBar(char * button1, newtComponent * b1comp, ...) {
- va_list args;
- newtGrid grid;
-
- va_start(args, b1comp);
-
- grid = newtButtonBarv(button1, b1comp, args);
-
- va_end(args);
-
- return grid;
-}
diff --git a/mdk-stage1/newt/checkbox.c b/mdk-stage1/newt/checkbox.c
deleted file mode 100644
index 643609d34..000000000
--- a/mdk-stage1/newt/checkbox.c
+++ /dev/null
@@ -1,292 +0,0 @@
-#include <slang.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-enum type { CHECK, RADIO };
-
-struct checkbox {
- char * text;
- char * seq;
- char * result;
- newtComponent prevButton, lastButton;
- enum type type;
- char value;
- int active, inactive;
- const void * data;
- int flags;
- int hasFocus;
-};
-
-static void makeActive(newtComponent co);
-
-static void cbDraw(newtComponent c);
-static void cbDestroy(newtComponent co);
-struct eventResult cbEvent(newtComponent co, struct event ev);
-
-static struct componentOps cbOps = {
- cbDraw,
- cbEvent,
- cbDestroy,
- newtDefaultPlaceHandler,
- newtDefaultMappedHandler,
-} ;
-
-newtComponent newtRadiobutton(int left, int top, const char * text, int isDefault,
- newtComponent prevButton) {
- newtComponent co;
- newtComponent curr;
- struct checkbox * rb;
- char initialValue;
-
- if (isDefault)
- initialValue = '*';
- else
- initialValue = ' ';
-
- co = newtCheckbox(left, top, text, initialValue, " *", NULL);
- rb = co->data;
- rb->type = RADIO;
-
- rb->prevButton = prevButton;
-
- for (curr = co; curr; curr = rb->prevButton) {
- rb = curr->data;
- rb->lastButton = co;
- }
-
- return co;
-}
-
-newtComponent newtRadioGetCurrent(newtComponent setMember) {
- struct checkbox * rb = setMember->data;
-
- setMember = rb->lastButton;
- rb = setMember->data;
-
- while (rb && rb->value != '*') {
- setMember = rb->prevButton;
- if (!setMember)
- return NULL;
- rb = setMember->data;
- }
-
- return setMember;
-}
-
-char newtCheckboxGetValue(newtComponent co) {
- struct checkbox * cb = co->data;
-
- return cb->value;
-}
-
-void newtCheckboxSetValue(newtComponent co, char value) {
- struct checkbox * cb = co->data;
-
- *cb->result = value;
- cbDraw(co);
-}
-
-newtComponent newtCheckbox(int left, int top, const char * text, char defValue,
- const char * seq, char * result) {
- newtComponent co;
- struct checkbox * cb;
-
- if (!seq) seq = " *";
-
- co = malloc(sizeof(*co));
- cb = malloc(sizeof(struct checkbox));
- co->data = cb;
- cb->flags = 0;
- if (result)
- cb->result = result;
- else
- cb->result = &cb->value;
-
- cb->text = strdup(text);
- cb->seq = strdup(seq);
- cb->type = CHECK;
- cb->hasFocus = 0;
- cb->inactive = COLORSET_CHECKBOX;
- cb->active = COLORSET_ACTCHECKBOX;
- defValue ? (*cb->result = defValue) : (*cb->result = cb->seq[0]);
-
- co->ops = &cbOps;
-
- co->callback = NULL;
- co->height = 1;
- co->width = strlen(text) + 4;
- co->top = top;
- co->left = left;
- co->takesFocus = 1;
-
- return co;
-}
-
-void newtCheckboxSetFlags(newtComponent co, int flags, enum newtFlagsSense sense) {
- struct checkbox * cb = co->data;
- int row, col;
-
- cb->flags = newtSetFlags(cb->flags, flags, sense);
-
- if (!(cb->flags & NEWT_FLAG_DISABLED))
- co->takesFocus = 1;
- else
- co->takesFocus = 0;
-
- newtGetrc(&row, &col);
- cbDraw(co);
- newtGotorc(row, col);
-}
-
-static void cbDraw(newtComponent c) {
- struct checkbox * cb = c->data;
-
- if (c->top == -1 || !c->isMapped) return;
-
- if (cb->flags & NEWT_FLAG_DISABLED) {
- cb->inactive = NEWT_COLORSET_DISENTRY;
- cb->active = NEWT_COLORSET_DISENTRY;
- } else {
- cb->inactive = COLORSET_CHECKBOX;
- cb->active = COLORSET_ACTCHECKBOX;
- }
-
- SLsmg_set_color(cb->inactive);
-
- newtGotorc(c->top, c->left);
-
- switch (cb->type) {
- case RADIO:
- SLsmg_write_string("( ) ");
- break;
-
- case CHECK:
- SLsmg_write_string("[ ] ");
- break;
-
- default:
- break;
- }
-
- SLsmg_write_string(cb->text);
-
- if (cb->hasFocus)
- SLsmg_set_color(cb->active);
-
- newtGotorc(c->top, c->left + 1);
- SLsmg_write_char(*cb->result);
-}
-
-static void cbDestroy(newtComponent co) {
- struct checkbox * cb = co->data;
-
- free(cb->text);
- free(cb->seq);
- free(cb);
- free(co);
-}
-
-struct eventResult cbEvent(newtComponent co, struct event ev) {
- struct checkbox * cb = co->data;
- struct eventResult er;
- const char * cur;
- er.result = ER_IGNORED;
- er.u.focus = NULL;
-
- if (ev.when == EV_NORMAL) {
- switch (ev.event) {
- case EV_FOCUS:
- cb->hasFocus = 1;
- cbDraw(co);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_UNFOCUS:
- cb->hasFocus = 0;
- cbDraw(co);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_KEYPRESS:
- if (ev.u.key == ' ') {
- if (cb->type == RADIO) {
- makeActive(co);
- } else if (cb->type == CHECK) {
- cur = strchr(cb->seq, *cb->result);
- if (!cur)
- *cb->result = *cb->seq;
- else {
- cur++;
- if (! *cur)
- *cb->result = *cb->seq;
- else
- *cb->result = *cur;
- }
- cbDraw(co);
- er.result = ER_SWALLOWED;
-
- if (co->callback)
- co->callback(co, co->callbackData);
- } else {
- er.result = ER_IGNORED;
- }
- } else if(ev.u.key == NEWT_KEY_ENTER) {
- er.result = ER_IGNORED;
- } else {
- er.result = ER_IGNORED;
- }
- break;
- case EV_MOUSE:
- if (ev.u.mouse.type == MOUSE_BUTTON_DOWN) {
- if (cb->type == RADIO) {
- makeActive(co);
- } else if (cb->type == CHECK) {
- cur = strchr(cb->seq, *cb->result);
- if (!cur)
- *cb->result = *cb->seq;
- else {
- cur++;
- if (! *cur)
- *cb->result = *cb->seq;
- else
- *cb->result = *cur;
- }
- cbDraw(co);
- er.result = ER_SWALLOWED;
-
- if (co->callback)
- co->callback(co, co->callbackData);
- }
- }
- }
- } else
- er.result = ER_IGNORED;
-
- return er;
-}
-
-static void makeActive(newtComponent co) {
- struct checkbox * cb = co->data;
- struct checkbox * rb;
- newtComponent curr;
-
- /* find the one that's turned off */
- curr = cb->lastButton;
- rb = curr->data;
- while (curr && rb->value == rb->seq[0]) {
- curr = rb->prevButton;
- if (curr) rb = curr->data;
- }
- if (curr) {
- rb->value = rb->seq[0];
- cbDraw(curr);
- }
- cb->value = cb->seq[1];
- cbDraw(co);
-
- if (co->callback)
- co->callback(co, co->callbackData);
-}
diff --git a/mdk-stage1/newt/checkboxtree.c b/mdk-stage1/newt/checkboxtree.c
deleted file mode 100644
index 00113f23e..000000000
--- a/mdk-stage1/newt/checkboxtree.c
+++ /dev/null
@@ -1,714 +0,0 @@
-#include <slang.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-struct items {
- char * text;
- const void *data;
- unsigned char selected;
- struct items *next;
- struct items *prev;
- struct items *branch;
- int flags;
- int depth;
-};
-
-struct CheckboxTree {
- newtComponent sb;
- int curWidth; /* size of text w/o scrollbar or border*/
- int curHeight; /* size of text w/o border */
- struct items * itemlist;
- struct items ** flatList, ** currItem, ** firstItem;
- int flatCount;
- int flags;
- int pad;
- char * seq;
- char * result;
-};
-
-static void ctDraw(newtComponent c);
-static void ctDestroy(newtComponent co);
-static void ctPlace(newtComponent co, int newLeft, int newTop);
-struct eventResult ctEvent(newtComponent co, struct event ev);
-static void ctMapped(newtComponent co, int isMapped);
-static struct items * findItem(struct items * items, const void * data);
-static void buildFlatList(newtComponent co);
-static void doBuildFlatList(struct CheckboxTree * ct, struct items * item);
-enum countWhat { COUNT_EXPOSED=0, COUNT_SELECTED=1 };
-static int countItems(struct items * item, enum countWhat justExposed);
-
-static struct componentOps ctOps = {
- ctDraw,
- ctEvent,
- ctDestroy,
- ctPlace,
- ctMapped,
-} ;
-
-static int countItems(struct items * item, enum countWhat what) {
- int count = 0;
-
- while (item) {
- if ((!item->branch && item->selected == what) || (what == COUNT_EXPOSED))
- count++;
- if (item->branch || (what == COUNT_EXPOSED && item->selected))
- count += countItems(item->branch, what);
- item = item->next;
- }
-
- return count;
-}
-
-static void doBuildFlatList(struct CheckboxTree * ct, struct items * item) {
- while (item) {
- ct->flatList[ct->flatCount++] = item;
- if (item->branch && item->selected) doBuildFlatList(ct, item->branch);
- item = item->next;
- }
-}
-
-static void buildFlatList(newtComponent co) {
- struct CheckboxTree * ct = co->data;
-
- if (ct->flatList) free(ct->flatList);
- ct->flatCount = countItems(ct->itemlist, COUNT_EXPOSED);
-
- ct->flatList = malloc(sizeof(*ct->flatList) * (ct->flatCount+1));
- ct->flatCount = 0;
- doBuildFlatList(ct, ct->itemlist);
- ct->flatList[ct->flatCount] = NULL;
-}
-
-int newtCheckboxTreeAddItem(newtComponent co,
- const char * text, const void * data,
- int flags, int index, ...) {
- va_list argList;
- int numIndexes;
- int * indexes;
- int i;
-
- va_start(argList, index);
- numIndexes = 0;
- i = index;
- while (i != NEWT_ARG_LAST) {
- numIndexes++;
- i = va_arg(argList, int);
- }
-
- va_end(argList);
-
- indexes = alloca(sizeof(*indexes) * (numIndexes + 1));
- va_start(argList, index);
- numIndexes = 0;
- i = index;
- va_start(argList, index);
- while (i != NEWT_ARG_LAST) {
- indexes[numIndexes++] = i;
- i = va_arg(argList, int);
- }
- va_end(argList);
-
- indexes[numIndexes++] = NEWT_ARG_LAST;
-
- return newtCheckboxTreeAddArray(co, text, data, flags, indexes);
-}
-
-static int doFindItemPath(struct items * items, void * data, int * path,
- int * len) {
- int where = 0;
-
- while (items) {
- if (items->data == data) {
- if (path) path[items->depth] = where;
- if (len) *len = items->depth + 1;
- return 1;
- }
-
- if (items->branch && doFindItemPath(items->branch, data, path, len)) {
- if (path) path[items->depth] = where;
- return 1;
- }
-
- items = items->next;
- where++;
- }
-
- return 0;
-}
-
-int * newtCheckboxTreeFindItem(newtComponent co, void * data) {
- int len;
- int * path;
- struct CheckboxTree * ct = co->data;
-
- if (!doFindItemPath(ct->itemlist, data, NULL, &len)) return NULL;
-
- path = malloc(sizeof(*path) * (len + 1));
- doFindItemPath(ct->itemlist, data, path, NULL);
- path[len] = NEWT_ARG_LAST;
-
- return path;
-}
-
-int newtCheckboxTreeAddArray(newtComponent co,
- const char * text, const void * data,
- int flags, int * indexes) {
- struct items * curList, * newNode, * item = NULL;
- struct items ** listPtr = NULL;
- int i, index, numIndexes;
- struct CheckboxTree * ct = co->data;
-
- numIndexes = 0;
- while (indexes[numIndexes] != NEWT_ARG_LAST) numIndexes++;
-
- if (!ct->itemlist) {
- if (numIndexes > 1) return -1;
-
- ct->itemlist = malloc(sizeof(*ct->itemlist));
- item = ct->itemlist;
- item->prev = NULL;
- item->next = NULL;
- } else {
- curList = ct->itemlist;
- listPtr = &ct->itemlist;
-
- i = 0;
- index = indexes[i];
- while (i < numIndexes) {
- item = curList;
-
- if (index == NEWT_ARG_APPEND) {
- item = NULL;
- } else {
- while (index && item)
- item = item->next, index--;
- }
-
- i++;
- if (i < numIndexes) {
- curList = item->branch;
- listPtr = &item->branch;
- if (!curList && (i + 1 != numIndexes)) return -1;
-
- index = indexes[i];
- }
- }
-
- if (!curList) { /* create a new branch */
- item = malloc(sizeof(*curList->prev));
- item->next = item->prev = NULL;
- *listPtr = item;
- } else if (!item) { /* append to end */
- item = curList;
- while (item->next) item = item->next;
- item->next = malloc(sizeof(*curList->prev));
- item->next->prev = item;
- item = item->next;
- item->next = NULL;
- } else {
- newNode = malloc(sizeof(*newNode));
- newNode->prev = item->prev;
- newNode->next = item;
-
- if (item->prev) item->prev->next = newNode;
- item->prev = newNode;
- item = newNode;
- if (!item->prev) *listPtr = item;
- }
- }
-
- item->text = strdup(text);
- item->data = data;
- if (flags & NEWT_FLAG_SELECTED) {
- item->selected = 1;
- } else {
- item->selected = 0;
- }
- item->flags = flags;
- item->branch = NULL;
- item->depth = numIndexes - 1;
-
- i = 4 + (3 * item->depth);
-
- if ((strlen(text) + i + ct->pad) > (size_t)co->width) {
- co->width = strlen(text) + i + ct->pad;
- }
-
- return 0;
-}
-
-static struct items * findItem(struct items * items, const void * data) {
- struct items * i;
-
- while (items) {
- if (items->data == data) return items;
- if (items->branch) {
- i = findItem(items->branch, data);
- if (i) return i;
- }
-
- items = items->next;
- }
-
- return NULL;
-}
-
-static void listSelected(struct items * items, int * num, const void ** list, int seqindex) {
- while (items) {
- if ((seqindex ? items->selected==seqindex : items->selected) && !items->branch)
- list[(*num)++] = (void *) items->data;
- if (items->branch)
- listSelected(items->branch, num, list, seqindex);
- items = items->next;
- }
-}
-
-const void ** newtCheckboxTreeGetSelection(newtComponent co, int *numitems)
-{
- return newtCheckboxTreeGetMultiSelection(co, numitems, 0);
-}
-
-const void ** newtCheckboxTreeGetMultiSelection(newtComponent co, int *numitems, char seqnum)
-{
- struct CheckboxTree * ct;
- const void **retval;
- int seqindex=0;
-
- if(!co || !numitems) return NULL;
-
- ct = co->data;
-
- if (seqnum) {
- while( ct->seq[seqindex] && ( ct->seq[seqindex] != seqnum )) seqindex++;
- } else {
- seqindex = 0;
- }
-
- *numitems = countItems(ct->itemlist, (seqindex ? seqindex : COUNT_SELECTED));
- if (!*numitems) return NULL;
-
- retval = malloc(*numitems * sizeof(void *));
- *numitems = 0;
- listSelected(ct->itemlist, numitems, retval, seqindex);
-
- return retval;
-}
-
-newtComponent newtCheckboxTree(int left, int top, int height, int flags) {
- return newtCheckboxTreeMulti(left, top, height, NULL, flags);
-}
-
-newtComponent newtCheckboxTreeMulti(int left, int top, int height, char *seq, int flags) {
- newtComponent co;
- struct CheckboxTree * ct;
-
- co = malloc(sizeof(*co));
- ct = malloc(sizeof(struct CheckboxTree));
- co->callback = NULL;
- co->data = ct;
- co->ops = &ctOps;
- co->takesFocus = 1;
- co->height = height;
- co->width = 0;
- co->isMapped = 0;
- ct->itemlist = NULL;
- ct->firstItem = NULL;
- ct->currItem = NULL;
- ct->flatList = NULL;
- if (seq)
- ct->seq = strdup(seq);
- else
- ct->seq = strdup(" *");
- if (flags & NEWT_FLAG_SCROLL) {
- ct->sb = newtVerticalScrollbar(left, top, height,
- COLORSET_LISTBOX, COLORSET_ACTLISTBOX);
- ct->pad = 2;
- } else {
- ct->sb = NULL;
- ct->pad = 0;
- }
-
- return co;
-}
-
-static void ctMapped(newtComponent co, int isMapped) {
- struct CheckboxTree * ct = co->data;
-
- co->isMapped = isMapped;
- if (ct->sb)
- ct->sb->ops->mapped(ct->sb, isMapped);
-}
-
-static void ctPlace(newtComponent co, int newLeft, int newTop) {
- struct CheckboxTree * ct = co->data;
-
- co->top = newTop;
- co->left = newLeft;
-
- if (ct->sb)
- ct->sb->ops->place(ct->sb, co->left + co->width - 1, co->top);
-}
-
-int ctSetItem(newtComponent co, struct items *item, enum newtFlagsSense sense)
-{
- struct CheckboxTree * ct = co->data;
- struct items * currItem;
- struct items * firstItem;
-
- if (!item)
- return 1;
-
- switch(sense) {
- case NEWT_FLAGS_RESET:
- item->selected = 0;
- break;
- case NEWT_FLAGS_SET:
- item->selected = 1;
- break;
- case NEWT_FLAGS_TOGGLE:
- if (item->branch)
- item->selected = !item->selected;
- else {
- item->selected++;
- if (item->selected==strlen(ct->seq))
- item->selected = 0;
- }
- break;
- }
-
- if (item->branch) {
- currItem = *ct->currItem;
- firstItem = *ct->firstItem;
-
- buildFlatList(co);
-
- ct->currItem = ct->flatList;
- while (*ct->currItem != currItem) ct->currItem++;
-
- ct->firstItem = ct->flatList;
- if (ct->flatCount > co->height) {
- struct items ** last = ct->flatList + ct->flatCount - co->height;
- while (*ct->firstItem != firstItem && ct->firstItem != last)
- ct->firstItem++;
- }
- }
-
- return 0;
-}
-
-static void ctSetItems(struct items *item, int selected)
-{
- for (; item; item = item->next) {
- if (!item->branch)
- item->selected = selected;
- else
- ctSetItems(item->branch, selected);
- }
-}
-
-static void ctDraw(newtComponent co) {
- struct CheckboxTree * ct = co->data;
- struct items ** item;
- int i, j;
- char * spaces = NULL;
- int currRow = -1;
-
- if (!co->isMapped) return ;
-
- if (!ct->firstItem) {
- buildFlatList(co);
- ct->firstItem = ct->currItem = ct->flatList;
- }
-
- item = ct->firstItem;
-
- i = 0;
- while (*item && i < co->height) {
- newtGotorc(co->top + i, co->left);
- if (*item == *ct->currItem) {
- SLsmg_set_color(NEWT_COLORSET_ACTLISTBOX);
- currRow = co->top + i;
- } else
- SLsmg_set_color(NEWT_COLORSET_LISTBOX);
-
- for (j = 0; j < (*item)->depth; j++)
- SLsmg_write_string(" ");
-
- if ((*item)->branch) {
- if ((*item)->selected)
- SLsmg_write_string("<-> ");
- else
- SLsmg_write_string("<+> ");
- } else {
- char tmp[5];
- snprintf(tmp,5,"[%c] ",ct->seq[(*item)->selected]);
- SLsmg_write_string(tmp);
- }
-
- SLsmg_write_nstring((*item)->text, co->width - 4 -
- (3 * (*item)->depth));
- item++;
- i++;
- }
-
- /* There could be empty lines left (i.e. if the user closes an expanded
- list which is the last thing in the tree, and whose elements are
- displayed at the bottom of the screen */
- if (i < co->height) {
- spaces = alloca(co->width);
- memset(spaces, ' ', co->width);
- SLsmg_set_color(NEWT_COLORSET_LISTBOX);
- }
- while (i < co->height) {
- newtGotorc(co->top + i, co->left);
- SLsmg_write_nstring(spaces, co->width);
- i++;
- }
-
- if(ct->sb) {
- newtScrollbarSet(ct->sb, ct->currItem - ct->flatList,
- ct->flatCount - 1);
- ct->sb->ops->draw(ct->sb);
- }
-
- newtGotorc(currRow, co->left + 1);
-}
-
-static void ctDestroy(newtComponent co) {
- struct CheckboxTree * ct = co->data;
- struct items * item, * nextitem;
-
- nextitem = item = ct->itemlist;
-
- while (item != NULL) {
- nextitem = item->next;
- free(item->text);
- free(item);
- item = nextitem;
- }
-
- free(ct->seq);
- free(ct);
- free(co);
-}
-
-struct eventResult ctEvent(newtComponent co, struct event ev) {
- struct CheckboxTree * ct = co->data;
- struct eventResult er;
- struct items ** listEnd, ** lastItem;
- int key, selnum = 1;
-
- er.result = ER_IGNORED;
-
- if(ev.when == EV_EARLY || ev.when == EV_LATE) {
- return er;
- }
-
- switch(ev.event) {
- case EV_KEYPRESS:
- key = ev.u.key;
- if (key == (char) key && key != ' ') {
- for (selnum = 0; ct->seq[selnum]; selnum++)
- if (key == ct->seq[selnum])
- break;
- if (!ct->seq[selnum])
- switch (key) {
- case '-': selnum = 0; break;
- case '+':
- case '*': selnum = 1; break;
- }
- if (ct->seq[selnum])
- key = '*';
- }
- switch(key) {
- case ' ':
- case NEWT_KEY_ENTER:
- ctSetItem(co, *ct->currItem, NEWT_FLAGS_TOGGLE);
- er.result = ER_SWALLOWED;
- if (!(*ct->currItem)->branch || (*ct->currItem)->selected)
- key = NEWT_KEY_DOWN;
- else
- key = '*';
- break;
- case '*':
- if ((*ct->currItem)->branch) {
- ctSetItems((*ct->currItem)->branch, selnum);
- if (!(*ct->currItem)->selected)
- key = NEWT_KEY_DOWN;
- } else {
- (*ct->currItem)->selected = selnum;
- key = NEWT_KEY_DOWN;
- }
- er.result = ER_SWALLOWED;
- break;
- }
- switch (key) {
- case '*':
- ctDraw(co);
- if(co->callback) co->callback(co, co->callbackData);
- return er;
- case NEWT_KEY_HOME:
- ct->currItem = ct->flatList;
- ct->firstItem = ct->flatList;
- ctDraw(co);
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- return er;
- case NEWT_KEY_END:
- ct->currItem = ct->flatList + ct->flatCount - 1;
- if (ct->flatCount <= co->height)
- ct->firstItem = ct->flatList;
- else
- ct->firstItem = ct->flatList + ct->flatCount - co->height;
- ctDraw(co);
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- return er;
- case NEWT_KEY_DOWN:
- if (ev.u.key != NEWT_KEY_DOWN) {
- if(co->callback) co->callback(co, co->callbackData);
- if (strlen(ct->seq) != 2) {
- ctDraw(co);
- return er;
- }
- }
- if ((ct->currItem - ct->flatList + 1) < ct->flatCount) {
- ct->currItem++;
-
- if (ct->currItem - ct->firstItem >= co->height)
- ct->firstItem++;
-
- ctDraw(co);
- } else if (ev.u.key != NEWT_KEY_DOWN)
- ctDraw(co);
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- return er;
- case NEWT_KEY_UP:
- if (ct->currItem != ct->flatList) {
- ct->currItem--;
-
- if (ct->currItem < ct->firstItem)
- ct->firstItem = ct->currItem;
-
- ctDraw(co);
- }
- er.result = ER_SWALLOWED;
- if(co->callback) co->callback(co, co->callbackData);
- return er;
- case NEWT_KEY_PGUP:
- if (ct->firstItem - co->height < ct->flatList) {
- ct->firstItem = ct->currItem = ct->flatList;
- } else {
- ct->currItem -= co->height;
- ct->firstItem -= co->height;
- }
-
- ctDraw(co);
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- return er;
- case NEWT_KEY_PGDN:
- listEnd = ct->flatList + ct->flatCount - 1;
- lastItem = ct->firstItem + co->height - 1;
-
- if (lastItem + co->height > listEnd) {
- ct->firstItem = listEnd - co->height + 1;
- ct->currItem = listEnd;
- } else {
- ct->currItem += co->height;
- ct->firstItem += co->height;
- }
-
- ctDraw(co);
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- return er;
- }
- break;
-
- case EV_FOCUS:
- ctDraw(co);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_UNFOCUS:
- ctDraw(co);
- er.result = ER_SWALLOWED;
- break;
- default:
- break;
- }
-
- return er;
-}
-
-const void * newtCheckboxTreeGetCurrent(newtComponent co) {
- struct CheckboxTree * ct = co->data;
-
- if (!ct->currItem) return NULL;
- return (*ct->currItem)->data;
-}
-
-void newtCheckboxTreeSetEntry(newtComponent co, const void * data, const char * text)
-{
- struct CheckboxTree * ct;
- struct items * item;
- int i;
-
- if (!co) return;
- ct = co->data;
- item = findItem(ct->itemlist, data);
- if (!item) return;
-
- free(item->text);
- item->text = strdup(text);
-
- i = 4 + (3 * item->depth);
-
- if ((strlen(text) + i + ct->pad) > (size_t)co->width) {
- co->width = strlen(text) + i + ct->pad;
- }
-
- ctDraw(co);
-}
-
-char newtCheckboxTreeGetEntryValue(newtComponent co, const void * data)
-{
- struct CheckboxTree * ct;
- struct items * item;
-
- if (!co) return -1;
- ct = co->data;
- item = findItem(ct->itemlist, data);
- if (!item) return -1;
- if (item->branch)
- return item->selected ? NEWT_CHECKBOXTREE_EXPANDED : NEWT_CHECKBOXTREE_COLLAPSED;
- else
- return ct->seq[item->selected];
-}
-
-void newtCheckboxTreeSetEntryValue(newtComponent co, const void * data, char value)
-{
- struct CheckboxTree * ct;
- struct items * item;
- int i;
-
- if (!co) return;
- ct = co->data;
- item = findItem(ct->itemlist, data);
- if (!item || item->branch) return;
-
- for(i = 0; ct->seq[i]; i++)
- if (value == ct->seq[i])
- break;
-
- if (!ct->seq[i]) return;
- item->selected = i;
-
- ctDraw(co);
-}
-
diff --git a/mdk-stage1/newt/entry.c b/mdk-stage1/newt/entry.c
deleted file mode 100644
index 0ee449cf9..000000000
--- a/mdk-stage1/newt/entry.c
+++ /dev/null
@@ -1,378 +0,0 @@
-#include <ctype.h>
-#include <slang.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-struct entry {
- int flags;
- char * buf;
- char ** resultPtr;
- int bufAlloced;
- int bufUsed; /* amount of the buffer that's been used */
- int cursorPosition; /* cursor *in the string* on on screen */
- int firstChar; /* first character position being shown */
- newtEntryFilter filter;
- void * filterData;
-};
-
-static void entryDraw(newtComponent co);
-static void entryDestroy(newtComponent co);
-static struct eventResult entryEvent(newtComponent co,
- struct event ev);
-
-static struct eventResult entryHandleKey(newtComponent co, int key);
-
-static struct componentOps entryOps = {
- entryDraw,
- entryEvent,
- entryDestroy,
- newtDefaultPlaceHandler,
- newtDefaultMappedHandler,
-} ;
-
-void newtEntrySet(newtComponent co, const char * value, int cursorAtEnd) {
- struct entry * en = co->data;
-
- if ((strlen(value) + 1) > (unsigned int)en->bufAlloced) {
- free(en->buf);
- en->bufAlloced = strlen(value) + 1;
- en->buf = malloc(en->bufAlloced);
- if (en->resultPtr) *en->resultPtr = en->buf;
- }
- memset(en->buf, 0, en->bufAlloced); /* clear the buffer */
- strcpy(en->buf, value);
- en->bufUsed = strlen(value);
- en->firstChar = 0;
- if (cursorAtEnd)
- en->cursorPosition = en->bufUsed;
- else
- en->cursorPosition = 0;
-
- entryDraw(co);
-} ;
-
-newtComponent newtEntry(int left, int top, const char * initialValue, int width,
- char ** resultPtr, int flags) {
- newtComponent co;
- struct entry * en;
-
- co = malloc(sizeof(*co));
- en = malloc(sizeof(struct entry));
- co->data = en;
-
- co->top = top;
- co->left = left;
- co->height = 1;
- co->width = width;
- co->isMapped = 0;
- co->callback = NULL;
-
- co->ops = &entryOps;
-
- en->flags = flags;
- en->cursorPosition = 0;
- en->firstChar = 0;
- en->bufUsed = 0;
- en->bufAlloced = width + 1;
- en->filter = NULL;
-
- if (!(en->flags & NEWT_FLAG_DISABLED))
- co->takesFocus = 1;
- else
- co->takesFocus = 0;
-
- if (initialValue && strlen(initialValue) > (unsigned int)width) {
- en->bufAlloced = strlen(initialValue) + 1;
- }
- en->buf = malloc(en->bufAlloced);
- en->resultPtr = resultPtr;
- if (en->resultPtr) *en->resultPtr = en->buf;
-
- memset(en->buf, 0, en->bufAlloced);
- if (initialValue) {
- strcpy(en->buf, initialValue);
- en->bufUsed = strlen(initialValue);
- en->cursorPosition = en->bufUsed;
- } else {
- *en->buf = '\0';
- en->bufUsed = 0;
- en->cursorPosition = 0;
- }
-
- return co;
-}
-
-static void entryDraw(newtComponent co) {
- struct entry * en = co->data;
- int i;
- char * chptr;
- int len;
-
- if (!co->isMapped) return;
-
- if (en->flags & NEWT_FLAG_DISABLED)
- SLsmg_set_color(NEWT_COLORSET_DISENTRY);
- else
- SLsmg_set_color(NEWT_COLORSET_ENTRY);
-
- if (en->flags & NEWT_FLAG_HIDDEN) {
- newtGotorc(co->top, co->left);
- for (i = 0; i < co->width; i++)
- SLsmg_write_char('_');
- newtGotorc(co->top, co->left);
-
- return;
- }
-
- newtGotorc(co->top, co->left);
-
- if (en->cursorPosition < en->firstChar) {
- /* scroll to the left */
- en->firstChar = en->cursorPosition;
- } else if ((en->firstChar + co->width) <= en->cursorPosition) {
- /* scroll to the right */
- en->firstChar = en->cursorPosition - co->width + 1;
- }
-
- chptr = en->buf + en->firstChar;
-
- if (en->flags & NEWT_FLAG_PASSWORD) {
- char *tmpptr, *p;
-
- tmpptr = alloca(strlen(chptr+2));
- strcpy(tmpptr, chptr);
- for (p = tmpptr; *p; p++)
- *p = '*';
- chptr = tmpptr;
- }
-
- len = strlen(chptr);
-
- if (len <= co->width) {
- i = len;
- SLsmg_write_string(chptr);
- while (i < co->width) {
- SLsmg_write_char('_');
- i++;
- }
- } else {
- SLsmg_write_nstring(chptr, co->width);
- }
-
- if (en->flags & NEWT_FLAG_HIDDEN)
- newtGotorc(co->top, co->left);
- else
- newtGotorc(co->top, co->left + (en->cursorPosition - en->firstChar));
-}
-
-void newtEntrySetFlags(newtComponent co, int flags, enum newtFlagsSense sense) {
- struct entry * en = co->data;
- int row, col;
-
- en->flags = newtSetFlags(en->flags, flags, sense);
-
- if (!(en->flags & NEWT_FLAG_DISABLED))
- co->takesFocus = 1;
- else
- co->takesFocus = 0;
-
- newtGetrc(&row, &col);
- entryDraw(co);
- newtGotorc(row, col);
-}
-
-static void entryDestroy(newtComponent co) {
- struct entry * en = co->data;
-
- free(en->buf);
- free(en);
- free(co);
-}
-
-static struct eventResult entryEvent(newtComponent co,
- struct event ev) {
- struct entry * en = co->data;
- struct eventResult er;
- int ch;
- er.result = ER_IGNORED;
- er.u.focus = NULL;
-
- if (ev.when == EV_NORMAL) {
- switch (ev.event) {
- case EV_FOCUS:
- newtCursorOn();
- if (en->flags & NEWT_FLAG_HIDDEN)
- newtGotorc(co->top, co->left);
- else
- newtGotorc(co->top, co->left +
- (en->cursorPosition - en->firstChar));
- er.result = ER_SWALLOWED;
- break;
-
- case EV_UNFOCUS:
- newtCursorOff();
- newtGotorc(0, 0);
- er.result = ER_SWALLOWED;
- if (co->callback)
- co->callback(co, co->callbackData);
- break;
-
- case EV_KEYPRESS:
- ch = ev.u.key;
- if (en->filter)
- ch = en->filter(co, en->filterData, ch, en->cursorPosition);
- if (ch) er = entryHandleKey(co, ch);
- break;
-
- case EV_MOUSE:
- if ((ev.u.mouse.type == MOUSE_BUTTON_DOWN) &&
- (en->flags ^ NEWT_FLAG_HIDDEN)) {
- if (strlen(en->buf) >= (size_t) (ev.u.mouse.x - co->left)) {
- en->cursorPosition = ev.u.mouse.x - co->left;
- newtGotorc(co->top,
- co->left +(en->cursorPosition - en->firstChar));
- } else {
- en->cursorPosition = strlen(en->buf);
- newtGotorc(co->top,
- co->left +(en->cursorPosition - en->firstChar));
- }
- }
- break;
- }
- } else
- er.result = ER_IGNORED;
-
- return er;
-}
-
-static struct eventResult entryHandleKey(newtComponent co, int key) {
- struct entry * en = co->data;
- struct eventResult er;
- char * chptr, * insPoint;
-
- er.result = ER_SWALLOWED;
- switch (key) {
- case '\r': /* Return */
- if (en->flags & NEWT_FLAG_RETURNEXIT) {
- er.result = ER_EXITFORM;
- } else {
- er.result = ER_NEXTCOMP;
- }
- break;
-
- case '\001': /* ^A */
- case NEWT_KEY_HOME:
- en->cursorPosition = 0;
- break;
-
- case '\005': /* ^E */
- case NEWT_KEY_END:
- en->cursorPosition = en->bufUsed;
- break;
-
- case '\013': /* ^K */
- en->bufUsed = en->cursorPosition;
- memset(en->buf + en->bufUsed, 0, en->bufAlloced - en->bufUsed);
- break;
-
- case '\002': /* ^B */
- case NEWT_KEY_LEFT:
- if (en->cursorPosition)
- en->cursorPosition--;
- break;
-
- case '\004':
- case NEWT_KEY_DELETE:
- chptr = en->buf + en->cursorPosition;
- if (*chptr) {
- chptr++;
- while (*chptr) {
- *(chptr - 1) = *chptr;
- chptr++;
- }
- *(chptr - 1) = '\0';
- en->bufUsed--;
- }
- break;
-
- case NEWT_KEY_BKSPC:
- if (en->cursorPosition) {
- /* if this isn't true, there's nothing to erase */
- chptr = en->buf + en->cursorPosition;
- en->bufUsed--;
- en->cursorPosition--;
- while (*chptr) {
- *(chptr - 1) = *chptr;
- chptr++;
- }
- *(chptr - 1) = '\0';
- }
- break;
-
- case '\006': /* ^B */
- case NEWT_KEY_RIGHT:
- if (en->cursorPosition < en->bufUsed)
- en->cursorPosition++;
- break;
-
- default:
- if ((key >= 0x20 && key <= 0x7e) || (key >= 0xa0 && key <= 0xff)) {
- if (!(en->flags & NEWT_FLAG_SCROLL) && en->bufUsed >= co->width) {
- SLtt_beep();
- break;
- }
-
- if ((en->bufUsed + 1) == en->bufAlloced) {
- en->bufAlloced += 20;
- en->buf = realloc(en->buf, en->bufAlloced);
- if (en->resultPtr) *en->resultPtr = en->buf;
- memset(en->buf + en->bufUsed + 1, 0, 20);
- }
-
- if (en->cursorPosition == en->bufUsed) {
- en->bufUsed++;
- } else {
- /* insert the new character */
-
- /* chptr is the last character in the string */
- chptr = (en->buf + en->bufUsed) - 1;
- if ((en->bufUsed + 1) == en->bufAlloced) {
- /* this string fills the buffer, so clip it */
- chptr--;
- } else
- en->bufUsed++;
-
- insPoint = en->buf + en->cursorPosition;
-
- while (chptr >= insPoint) {
- *(chptr + 1) = *chptr;
- chptr--;
- }
-
- }
-
- en->buf[en->cursorPosition++] = key;
- } else {
- er.result = ER_IGNORED;
- }
- }
-
- entryDraw(co);
-
- return er;
-}
-
-char * newtEntryGetValue(newtComponent co) {
- struct entry * en = co->data;
-
- return en->buf;
-}
-
-void newtEntrySetFilter(newtComponent co, newtEntryFilter filter, void * data) {
- struct entry * en = co->data;
- en->filter = filter;
- en->filterData = data;
-}
diff --git a/mdk-stage1/newt/form.c b/mdk-stage1/newt/form.c
deleted file mode 100644
index ad7520e95..000000000
--- a/mdk-stage1/newt/form.c
+++ /dev/null
@@ -1,713 +0,0 @@
-#include <unistd.h>
-#include <slang.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <string.h>
-#include <sys/time.h>
-#include <sys/types.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-
-/****************************************************************************
- These forms handle vertical scrolling of components with a height of 1
-
- Horizontal scrolling won't work, and scrolling large widgets will fail
- miserably. It shouldn't be too hard to fix either of those if anyone
- cares to. I only use scrolling for listboxes and text boxes though so
- I didn't bother.
-*****************************************************************************/
-
-struct element {
- int top, left; /* Actual, not virtual. These are translated */
- newtComponent co; /* into actual through vertOffset */
-};
-
-struct fdInfo {
- int fd;
- int flags;
-};
-
-struct form {
- int numCompsAlloced;
- struct element * elements;
- int numComps;
- int currComp;
- int fixedHeight;
- int flags;
- int vertOffset;
- newtComponent vertBar, exitComp;
- const char * help;
- int numRows;
- int * hotKeys;
- int numHotKeys;
- int background;
- int beenSet;
- int numFds;
- struct fdInfo * fds;
- int maxFd;
- int timer; /* in milliseconds */
- struct timeval lastTimeout;
- void * helpTag;
- newtCallback helpCb;
-};
-
-static void gotoComponent(struct form * form, int newComp);
-static struct eventResult formEvent(newtComponent co, struct event ev);
-static struct eventResult sendEvent(newtComponent comp, struct event ev);
-static void formPlace(newtComponent co, int left, int top);
-
-/* Global, ick */
-static newtCallback helpCallback;
-
-/* this isn't static as grid.c tests against it to find forms */
-struct componentOps formOps = {
- newtDrawForm,
- formEvent,
- newtFormDestroy,
- formPlace,
- newtDefaultMappedHandler,
-} ;
-
-static inline int componentFits(newtComponent co, int compNum) {
- struct form * form = co->data;
- struct element * el = form->elements + compNum;
-
- if ((co->top + form->vertOffset) > el->top) return 0;
- if ((co->top + form->vertOffset + co->height) <
- (el->top + el->co->height)) return 0;
-
- return 1;
-}
-
-newtComponent newtForm(newtComponent vertBar, void * help, int flags) {
- newtComponent co;
- struct form * form;
-
- co = malloc(sizeof(*co));
- form = malloc(sizeof(*form));
- co->data = form;
- co->width = 0;
- co->height = 0;
- co->top = -1;
- co->left = -1;
- co->isMapped = 0;
-
- co->takesFocus = 0; /* we may have 0 components */
- co->ops = &formOps;
-
- form->help = help;
- form->flags = flags;
- form->numCompsAlloced = 5;
- form->numComps = 0;
- form->currComp = -1;
- form->vertOffset = 0;
- form->fixedHeight = 0;
- form->numRows = 0;
- form->numFds = 0;
- form->maxFd = 0;
- form->fds = NULL;
- form->beenSet = 0;
- form->elements = malloc(sizeof(*(form->elements)) * form->numCompsAlloced);
-
- form->background = COLORSET_WINDOW;
- form->hotKeys = malloc(sizeof(int));
- form->numHotKeys = 0;
- form->timer = 0;
- form->lastTimeout.tv_sec = form->lastTimeout.tv_usec = 0;
- if (!(form->flags & NEWT_FLAG_NOF12)) {
- newtFormAddHotKey(co, NEWT_KEY_F12);
- }
-
- if (vertBar)
- form->vertBar = vertBar;
- else
- form->vertBar = NULL;
-
- form->helpTag = help;
- form->helpCb = helpCallback;
-
- return co;
-}
-
-newtComponent newtFormGetCurrent(newtComponent co) {
- struct form * form = co->data;
-
- return form->elements[form->currComp].co;
-}
-
-void newtFormSetCurrent(newtComponent co, newtComponent subco) {
- struct form * form = co->data;
- int i, new;
-
- for (i = 0; i < form->numComps; i++) {
- if (form->elements[i].co == subco) break;
- }
-
- if (form->elements[i].co != subco) return;
- new = i;
-
- if (co->isMapped && !componentFits(co, new)) {
- gotoComponent(form, -1);
- form->vertOffset = form->elements[new].top - co->top - 1;
- if (form->vertOffset > (form->numRows - co->height))
- form->vertOffset = form->numRows - co->height;
- }
-
- gotoComponent(form, new);
-}
-
-void newtFormSetTimer(newtComponent co, int millisecs) {
- struct form * form = co->data;
-
- form->timer = millisecs;
- form->lastTimeout.tv_usec = 0;
- form->lastTimeout.tv_sec = 0;
-}
-
-void newtFormSetHeight(newtComponent co, int height) {
- struct form * form = co->data;
-
- form->fixedHeight = 1;
- co->height = height;
-}
-
-void newtFormSetWidth(newtComponent co, int width) {
- co->width = width;
-}
-
-void newtFormAddComponent(newtComponent co, newtComponent newco) {
- struct form * form = co->data;
-
- co->takesFocus = 1;
-
- if (form->numCompsAlloced == form->numComps) {
- form->numCompsAlloced += 5;
- form->elements = realloc(form->elements,
- sizeof(*(form->elements)) * form->numCompsAlloced);
- }
-
- /* we grab real values for these a bit later */
- form->elements[form->numComps].left = -2;
- form->elements[form->numComps].top = -2;
- form->elements[form->numComps].co = newco;
-
- if (newco->takesFocus && form->currComp == -1)
- form->currComp = form->numComps;
-
- form->numComps++;
-}
-
-void newtFormAddComponents(newtComponent co, ...) {
- va_list ap;
- newtComponent subco;
-
- va_start(ap, co);
-
- while ((subco = va_arg(ap, newtComponent)))
- newtFormAddComponent(co, subco);
-
- va_end(ap);
-}
-
-static void formPlace(newtComponent co, int left, int top) {
- struct form * form = co->data;
- int vertDelta, horizDelta;
- struct element * el;
- int i;
-
- newtFormSetSize(co);
-
- vertDelta = top - co->top;
- horizDelta = left - co->left;
- co->top = top;
- co->left = left;
-
- for (i = 0, el = form->elements; i < form->numComps; i++, el++) {
- el->co->top += vertDelta;
- el->top += vertDelta;
- el->co->left += horizDelta;
- el->left += horizDelta;
- }
-}
-
-void newtDrawForm(newtComponent co) {
- struct form * form = co->data;
- struct element * el;
- int i;
-
- newtFormSetSize(co);
-
- SLsmg_set_color(form->background);
- newtClearBox(co->left, co->top, co->width, co->height);
- for (i = 0, el = form->elements; i < form->numComps; i++, el++) {
- /* the scrollbar *always* fits somewhere */
- if (el->co == form->vertBar) {
- el->co->ops->mapped(el->co, 1);
- el->co->ops->draw(el->co);
- } else {
- /* only draw it if it'll fit on the screen vertically */
- if (componentFits(co, i)) {
- el->co->top = el->top - form->vertOffset;
- el->co->ops->mapped(el->co, 1);
- el->co->ops->draw(el->co);
- } else {
- el->co->ops->mapped(el->co, 0);
- }
- }
- }
-
- if (form->vertBar)
- newtScrollbarSet(form->vertBar, form->vertOffset,
- form->numRows - co->height);
-}
-
-static struct eventResult formEvent(newtComponent co, struct event ev) {
- struct form * form = co->data;
- newtComponent subco = form->elements[form->currComp].co;
- int new, wrap = 0;
- struct eventResult er;
- int dir = 0, page = 0;
- int i, num, found;
- struct element * el;
-
- er.result = ER_IGNORED;
- if (!form->numComps) return er;
-
- subco = form->elements[form->currComp].co;
-
- switch (ev.when) {
- case EV_EARLY:
- if (ev.event == EV_KEYPRESS) {
- if (ev.u.key == NEWT_KEY_TAB) {
- er.result = ER_SWALLOWED;
- dir = 1;
- wrap = 1;
- } else if (ev.u.key == NEWT_KEY_UNTAB) {
- er.result = ER_SWALLOWED;
- dir = -1;
- wrap = 1;
- }
- }
-
- if (form->numComps) {
- i = form->currComp;
- num = 0;
- while (er.result == ER_IGNORED && num != form->numComps ) {
- er = form->elements[i].co->ops->event(form->elements[i].co, ev);
-
- num++;
- i++;
- if (i == form->numComps) i = 0;
- }
- }
-
- break;
-
- case EV_NORMAL:
- if (ev.event == EV_MOUSE) {
- found = 0;
- for (i = 0, el = form->elements; i < form->numComps; i++, el++) {
- if ((el->co->top <= ev.u.mouse.y) &&
- (el->co->top + el->co->height > ev.u.mouse.y) &&
- (el->co->left <= ev.u.mouse.x) &&
- (el->co->left + el->co->width > ev.u.mouse.x)) {
- found = 1;
- if (el->co->takesFocus) {
- gotoComponent(form, i);
- subco = form->elements[form->currComp].co;
- }
- }
- /* If we did not find a co to send this event to, we
- should just swallow the event here. */
- }
- if (!found) {
- er.result = ER_SWALLOWED;
-
- return er;
- }
- }
- er = subco->ops->event(subco, ev);
- switch (er.result) {
- case ER_NEXTCOMP:
- er.result = ER_SWALLOWED;
- dir = 1;
- break;
-
- case ER_EXITFORM:
- form->exitComp = subco;
- break;
-
- default:
- break;
- }
- break;
-
- case EV_LATE:
- er = subco->ops->event(subco, ev);
-
- if (er.result == ER_IGNORED) {
- switch (ev.u.key) {
- case NEWT_KEY_UP:
- case NEWT_KEY_LEFT:
- case NEWT_KEY_BKSPC:
- er.result = ER_SWALLOWED;
- dir = -1;
- break;
-
- case NEWT_KEY_DOWN:
- case NEWT_KEY_RIGHT:
- er.result = ER_SWALLOWED;
- dir = 1;
- break;
-
- case NEWT_KEY_PGUP:
- er.result = ER_SWALLOWED;
- dir = -1;
- page = 1;
- break;
-
- case NEWT_KEY_PGDN:
- er.result = ER_SWALLOWED;
- dir = 1;
- page = 1;
- break;
- }
- }
- }
-
- if (dir) {
- new = form->currComp;
-
- if (page) {
- new += dir * co->height;
- if (new < 0)
- new = 0;
- else if (new >= form->numComps)
- new = (form->numComps - 1);
-
- while (!form->elements[new].co->takesFocus)
- new = new - dir;
- } else {
- do {
- new += dir;
-
- if (wrap) {
- if (new < 0)
- new = form->numComps - 1;
- else if (new >= form->numComps)
- new = 0;
- } else if (new < 0 || new >= form->numComps)
- return er;
- } while (!form->elements[new].co->takesFocus);
- }
-
- /* make sure this component is visible */
- if (!componentFits(co, new)) {
- gotoComponent(form, -1);
-
- if (dir < 0) {
- /* make the new component the first one */
- form->vertOffset = form->elements[new].top - co->top;
- } else {
- /* make the new component the last one */
- form->vertOffset = (form->elements[new].top +
- form->elements[new].co->height) -
- (co->top + co->height);
- }
-
- if (form->vertOffset < 0) form->vertOffset = 0;
- if (form->vertOffset > (form->numRows - co->height))
- form->vertOffset = form->numRows - co->height;
-
- newtDrawForm(co);
- }
-
- gotoComponent(form, new);
- er.result = ER_SWALLOWED;
- }
-
- return er;
-}
-
-/* this also destroys all of the components on the form */
-void newtFormDestroy(newtComponent co) {
- newtComponent subco;
- struct form * form = co->data;
- int i;
-
- /* first, destroy all of the components */
- for (i = 0; i < form->numComps; i++) {
- subco = form->elements[i].co;
- if (subco->ops->destroy) {
- subco->ops->destroy(subco);
- } else {
- if (subco->data) free(subco->data);
- free(subco);
- }
- }
-
- if (form->hotKeys) free(form->hotKeys);
-
- free(form->elements);
- free(form);
- free(co);
-}
-
-newtComponent newtRunForm(newtComponent co) {
- struct newtExitStruct es;
-
- newtFormRun(co, &es);
- if (es.reason == NEWT_EXIT_HOTKEY) {
- if (es.u.key == NEWT_KEY_F12) {
- es.reason = NEWT_EXIT_COMPONENT;
- es.u.co = co;
- } else {
- return NULL;
- }
- }
-
- return es.u.co;
-}
-
-void newtFormAddHotKey(newtComponent co, int key) {
- struct form * form = co->data;
-
- form->numHotKeys++;
- form->hotKeys = realloc(form->hotKeys, sizeof(int) * form->numHotKeys);
- form->hotKeys[form->numHotKeys - 1] = key;
-}
-
-void newtFormSetSize(newtComponent co) {
- struct form * form = co->data;
- int delta, i;
- struct element * el;
-
- if (form->beenSet) return;
-
- form->beenSet = 1;
-
- if (!form->numComps) return;
-
- co->width = 0;
- if (!form->fixedHeight) co->height = 0;
-
- co->top = form->elements[0].co->top;
- co->left = form->elements[0].co->left;
- for (i = 0, el = form->elements; i < form->numComps; i++, el++) {
- if (el->co->ops == &formOps)
- newtFormSetSize(el->co);
-
- el->left = el->co->left;
- el->top = el->co->top;
-
- if (co->left > el->co->left) {
- delta = co->left - el->co->left;
- co->left -= delta;
- co->width += delta;
- }
-
- if (co->top > el->co->top) {
- delta = co->top - el->co->top;
- co->top -= delta;
- if (!form->fixedHeight)
- co->height += delta;
- }
-
- if ((co->left + co->width) < (el->co->left + el->co->width))
- co->width = (el->co->left + el->co->width) - co->left;
-
- if (!form->fixedHeight) {
- if ((co->top + co->height) < (el->co->top + el->co->height))
- co->height = (el->co->top + el->co->height) - co->top;
- }
-
- if ((el->co->top + el->co->height - co->top) > form->numRows) {
- form->numRows = el->co->top + el->co->height - co->top;
- }
- }
-}
-
-void newtFormRun(newtComponent co, struct newtExitStruct * es) {
- struct form * form = co->data;
- struct event ev;
- struct eventResult er;
- int key, i, max;
- int done = 0;
- fd_set readSet, writeSet;
- struct timeval nextTimeout, now, timeout;
-
- newtFormSetSize(co);
- /* draw all of the components */
- newtDrawForm(co);
-
- if (form->currComp == -1) {
- gotoComponent(form, 0);
- } else
- gotoComponent(form, form->currComp);
-
- while (!done) {
- newtRefresh();
-
- FD_ZERO(&readSet);
- FD_ZERO(&writeSet);
- FD_SET(0, &readSet);
- max = form->maxFd;
-
- for (i = 0; i < form->numFds; i++) {
- if (form->fds[i].flags & NEWT_FD_READ)
- FD_SET(form->fds[i].fd, &readSet);
- if (form->fds[i].flags & NEWT_FD_WRITE)
- FD_SET(form->fds[i].fd, &writeSet);
- }
-
- if (form->timer) {
- /* Calculate when we next need to return with a timeout. Do
- this inside the loop in case a callback resets the timer. */
- if (!form->lastTimeout.tv_sec && !form->lastTimeout.tv_usec)
- gettimeofday(&form->lastTimeout, NULL);
-
- nextTimeout.tv_sec = form->lastTimeout.tv_sec +
- (form->timer / 1000);
- nextTimeout.tv_usec = form->lastTimeout.tv_usec +
- (form->timer % 1000) * 1000;
-
- gettimeofday(&now, 0);
-
- if (now.tv_sec > nextTimeout.tv_sec) {
- timeout.tv_sec = timeout.tv_usec = 0;
- } else if (now.tv_sec == nextTimeout.tv_sec) {
- timeout.tv_sec = 0;
- if (now.tv_usec > nextTimeout.tv_usec)
- timeout.tv_usec = 0;
- else
- timeout.tv_usec = nextTimeout.tv_usec - now.tv_usec;
- } else if (now.tv_sec < nextTimeout.tv_sec) {
- timeout.tv_sec = nextTimeout.tv_sec - now.tv_sec;
- if (now.tv_usec > nextTimeout.tv_usec)
- timeout.tv_sec--,
- timeout.tv_usec = nextTimeout.tv_usec + 1000000 -
- now.tv_usec;
- else
- timeout.tv_usec = nextTimeout.tv_usec - now.tv_usec;
- }
- } else {
- timeout.tv_sec = timeout.tv_usec = 0;
- }
-
- i = select(max + 1, &readSet, &writeSet, NULL,
- form->timer ? &timeout : NULL);
- if (i < 0) continue; /* ?? What should we do here? */
-
- if (i == 0) {
- done = 1;
- es->reason = NEWT_EXIT_TIMER;
- gettimeofday(&form->lastTimeout, NULL);
- } else
- {
- if (FD_ISSET(0, &readSet)) {
-
- key = newtGetKey();
-
- if (key == NEWT_KEY_RESIZE) {
- /* newtResizeScreen(1); */
- continue;
- }
-
- for (i = 0; i < form->numHotKeys; i++) {
- if (form->hotKeys[i] == key) {
- es->reason = NEWT_EXIT_HOTKEY;
- es->u.key = key;
- done = 1;
- break;
- }
- }
-
- if (key == NEWT_KEY_F1 && form->helpTag && form->helpCb)
- form->helpCb(co, form->helpTag);
-
- if (!done) {
- ev.event = EV_KEYPRESS;
- ev.u.key = key;
-
- er = sendEvent(co, ev);
-
- if (er.result == ER_EXITFORM) {
- done = 1;
- es->reason = NEWT_EXIT_COMPONENT;
- es->u.co = form->exitComp;
- }
- }
- } else {
- es->reason = NEWT_EXIT_FDREADY;
- done = 1;
- }
- }
- }
- newtRefresh();
-}
-
-static struct eventResult sendEvent(newtComponent co, struct event ev) {
- struct eventResult er;
-
- ev.when = EV_EARLY;
- er = co->ops->event(co, ev);
-
- if (er.result == ER_IGNORED) {
- ev.when = EV_NORMAL;
- er = co->ops->event(co, ev);
- }
-
- if (er.result == ER_IGNORED) {
- ev.when = EV_LATE;
- er = co->ops->event(co, ev);
- }
-
- return er;
-}
-
-static void gotoComponent(struct form * form, int newComp) {
- struct event ev;
-
- if (form->currComp != -1) {
- ev.event = EV_UNFOCUS;
- sendEvent(form->elements[form->currComp].co, ev);
- }
-
- form->currComp = newComp;
-
- if (form->currComp != -1) {
- ev.event = EV_FOCUS;
- ev.when = EV_NORMAL;
- sendEvent(form->elements[form->currComp].co, ev);
- }
-}
-
-void newtComponentAddCallback(newtComponent co, newtCallback f, void * data) {
- co->callback = f;
- co->callbackData = data;
-}
-
-void newtComponentTakesFocus(newtComponent co, int val) {
- co->takesFocus = val;
-}
-
-void newtFormSetBackground(newtComponent co, int color) {
- struct form * form = co->data;
-
- form->background = color;
-}
-
-void newtFormWatchFd(newtComponent co, int fd, int fdFlags) {
- struct form * form = co->data;
-
- form->fds = realloc(form->fds, (form->numFds + 1) * sizeof(*form->fds));
- form->fds[form->numFds].fd = fd;
- form->fds[form->numFds++].flags = fdFlags;
- if (form->maxFd < fd) form->maxFd = fd;
-}
-
-void newtSetHelpCallback(newtCallback cb) {
- helpCallback = cb;
-}
diff --git a/mdk-stage1/newt/grid.c b/mdk-stage1/newt/grid.c
deleted file mode 100644
index 37d2b2e74..000000000
--- a/mdk-stage1/newt/grid.c
+++ /dev/null
@@ -1,389 +0,0 @@
-#include <alloca.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-struct gridField {
- enum newtGridElement type;
- union {
- newtGrid grid;
- newtComponent co;
- } u;
- int padLeft, padTop, padRight, padBottom;
- int anchor;
- int flags;
-};
-
-struct grid_s {
- int rows, cols;
- int width, height; /* totals, -1 means unknown */
- struct gridField ** fields;
-};
-
-/* this is a bit of a hack */
-extern struct componentOps formOps[];
-
-newtGrid newtCreateGrid(int cols, int rows) {
- newtGrid grid;
-
- grid = malloc(sizeof(*grid));
- grid->rows = rows;
- grid->cols = cols;
-
- grid->fields = malloc(sizeof(*grid->fields) * cols);
- while (cols--) {
- grid->fields[cols] = malloc(sizeof(**(grid->fields)) * rows);
- memset(grid->fields[cols], 0, sizeof(**(grid->fields)) * rows);
- }
-
- grid->width = grid->height = -1;
-
- return grid;
-}
-
-void newtGridSetField(newtGrid grid, int col, int row,
- enum newtGridElement type, void * val, int padLeft,
- int padTop, int padRight, int padBottom, int anchor,
- int flags) {
- struct gridField * field = &grid->fields[col][row];
-
- if (field->type == NEWT_GRID_SUBGRID)
- newtGridFree(field->u.grid, 1);
-
- field->type = type;
- field->u.co = (void *) val;
-
- field->padLeft = padLeft;
- field->padRight = padRight;
- field->padTop = padTop;
- field->padBottom = padBottom;
- field->anchor = anchor;
- field->flags = flags;
-
- grid->width = grid->height = -1;
-}
-
-static void distSpace(int extra, int items, int * list) {
- int all, some, i;
-
- all = extra / items;
- some = extra % items;
- for (i = 0; i < items; i++) {
- list[i] += all;
- if (some) {
- list[i]++;
- some--;
- }
- }
-}
-
-static void shuffleGrid(newtGrid grid, int left, int top, int set) {
- struct gridField * field;
- int row, col;
- int i, j;
- int minWidth, minHeight;
- int * widths, * heights;
- int thisLeft, thisTop;
- int x, y, remx, remy;
-
- widths = alloca(sizeof(*widths) * grid->cols);
- memset(widths, 0, sizeof(*widths) * grid->cols);
- heights = alloca(sizeof(*heights) * grid->rows);
- memset(heights, 0, sizeof(*heights) * grid->rows);
-
- minWidth = 0;
- for (row = 0; row < grid->rows; row++) {
- i = 0;
- for (col = 0; col < grid->cols; col++) {
- field = &grid->fields[col][row];
- if (field->type == NEWT_GRID_SUBGRID) {
- /* we'll have to redo this later */
- if (field->u.grid->width == -1)
- shuffleGrid(field->u.grid, left, top, 0);
- j = field->u.grid->width;
- } else if (field->type == NEWT_GRID_COMPONENT) {
- if (field->u.co->ops == formOps)
- newtFormSetSize(field->u.co);
- j = field->u.co->width;
- } else
- j = 0;
-
- j += field->padLeft + field->padRight;
-
- if (j > widths[col]) widths[col] = j;
- i += widths[col];
- }
-
- if (i > minWidth) minWidth = i;
- }
-
- minHeight = 0;
- for (col = 0; col < grid->cols; col++) {
- i = 0;
- for (row = 0; row < grid->rows; row++) {
- field = &grid->fields[col][row];
- if (field->type == NEWT_GRID_SUBGRID) {
- /* we'll have to redo this later */
- if (field->u.grid->height == -1)
- shuffleGrid(field->u.grid, 0, 0, 0);
- j = field->u.grid->height;
- } else if (field->type == NEWT_GRID_COMPONENT){
- j = field->u.co->height;
- } else
- j = 0;
-
- j += field->padTop + field->padBottom;
-
- if (j > heights[row]) heights[row] = j;
- i += heights[row];
- }
-
- if (i > minHeight) minHeight = i;
- }
-
- /* this catches the -1 case */
- if (grid->width < minWidth) grid->width = minWidth; /* ack! */
- if (grid->height < minHeight) grid->height = minHeight; /* ditto! */
-
- if (!set) return;
-
- distSpace(grid->width - minWidth, grid->cols, widths);
- distSpace(grid->height - minHeight, grid->rows, heights);
-
- thisTop = top;
- for (row = 0; row < grid->rows; row++) {
- i = 0;
- thisLeft = left;
- for (col = 0; col < grid->cols; col++) {
- field = &grid->fields[col][row];
-
- if (field->type == NEWT_GRID_EMPTY) continue;
-
- x = thisLeft + field->padLeft;
- remx = widths[col] - field->padLeft - field->padRight;
- y = thisTop + field->padTop;
- remy = heights[row] - field->padTop - field->padBottom;
-
- if (field->type == NEWT_GRID_SUBGRID) {
- remx -= field->u.grid->width;
- remy -= field->u.grid->height;
- } else if (field->type == NEWT_GRID_COMPONENT) {
- remx -= field->u.co->width;
- remy -= field->u.co->height;
- }
-
- if (!(field->flags & NEWT_GRID_FLAG_GROWX)) {
- if (field->anchor & NEWT_ANCHOR_RIGHT)
- x += remx;
- else if (!(field->anchor & NEWT_ANCHOR_LEFT))
- x += (remx / 2);
- }
-
- if (!(field->flags & NEWT_GRID_FLAG_GROWY)) {
- if (field->anchor & NEWT_ANCHOR_BOTTOM)
- y += remx;
- else if (!(field->anchor & NEWT_ANCHOR_TOP))
- y += (remy / 2);
- }
-
- if (field->type == NEWT_GRID_SUBGRID) {
- if (field->flags & NEWT_GRID_FLAG_GROWX)
- field->u.grid->width = widths[col] - field->padLeft
- - field->padRight;
- if (field->flags & NEWT_GRID_FLAG_GROWY)
- field->u.grid->height = heights[col] - field->padTop
- - field->padBottom;
-
- shuffleGrid(field->u.grid, x, y, 1);
- } else if (field->type == NEWT_GRID_COMPONENT) {
- field->u.co->ops->place(field->u.co, x, y);
- }
-
- thisLeft += widths[col];
- }
-
- thisTop += heights[row];
- }
-}
-
-void newtGridPlace(newtGrid grid, int left, int top) {
- shuffleGrid(grid, left, top, 1);
-}
-
-void newtGridFree(newtGrid grid, int recurse) {
- int row, col;
-
- for (col = 0; col < grid->cols; col++) {
- if (recurse) {
- for (row = 0; row < grid->rows; row++) {
- if (grid->fields[col][row].type == NEWT_GRID_SUBGRID)
- newtGridFree(grid->fields[col][row].u.grid, 1);
- }
- }
-
- free(grid->fields[col]);
- }
-
- free(grid->fields);
- free(grid);
-}
-
-void newtGridGetSize(newtGrid grid, int * width, int * height) {
- if (grid->width == -1 || grid->height == -1) {
- grid->width = grid->height = -1;
- shuffleGrid(grid, 0, 0, 1);
- }
-
- *width = grid->width;
- *height = grid->height;
-}
-
-void newtGridWrappedWindow(newtGrid grid, char * title) {
- int width, height, offset = 0;
-
- newtGridGetSize(grid, &width, &height);
- if ((size_t)width < strlen(title) + 2) {
- offset = ((strlen(title) + 2) - width) / 2;
- width = strlen(title) + 2;
- }
- newtCenteredWindow(width + 2, height + 2, title);
- newtGridPlace(grid, 1 + offset, 1);
-}
-
-void newtGridWrappedWindowAt(newtGrid grid, char * title, int left, int top) {
- int width, height;
-
- newtGridGetSize(grid, &width, &height);
- newtOpenWindow(left, top, width + 2, height + 2, title);
- newtGridPlace(grid, 1, 1);
-}
-
-void newtGridAddComponentsToForm(newtGrid grid, newtComponent form,
- int recurse) {
- int row, col;
-
- for (col = 0; col < grid->cols; col++) {
- for (row = 0; row < grid->rows; row++) {
- if (grid->fields[col][row].type == NEWT_GRID_SUBGRID && recurse)
- newtGridAddComponentsToForm(grid->fields[col][row].u.grid,
- form, 1);
- else if (grid->fields[col][row].type == NEWT_GRID_COMPONENT)
- newtFormAddComponent(form, grid->fields[col][row].u.co);
- }
- }
-}
-
-/* this handles up to 50 items */
-static newtGrid stackem(int isVert, enum newtGridElement type1, void * what1,
- va_list args, int close) {
- struct item {
- enum newtGridElement type;
- void * what;
- } items[50];
- int i, num;
- newtGrid grid;
-
- items[0].type = type1, items[0].what = what1, num = 1;
- while (1) {
- items[num].type = va_arg(args, enum newtGridElement);
- if (items[num].type == NEWT_GRID_EMPTY) break;
-
- items[num].what = va_arg(args, void *);
- num++;
- }
-
- grid = newtCreateGrid(isVert ? 1 : num, isVert ? num : 1);
-
- for (i = 0; i < num; i++) {
- newtGridSetField(grid, isVert ? 0 : i, isVert ? i : 0,
- items[i].type, items[i].what,
- close ? 0 : (i ? (isVert ? 0 : 1) : 0),
- close ? 0 : (i ? (isVert ? 1 : 0) : 0), 0, 0, 0, 0);
- }
-
- return grid;
-}
-
-newtGrid newtGridHCloseStacked(enum newtGridElement type1, void * what1, ...) {
- va_list args;
- newtGrid grid;
-
- va_start(args, what1);
-
- grid = stackem(0, type1, what1, args, 1);
-
- va_start(args, what1);
-
- return grid;
-}
-
-newtGrid newtGridVCloseStacked(enum newtGridElement type1, void * what1, ...) {
- va_list args;
- newtGrid grid;
-
- va_start(args, what1);
-
- grid = stackem(1, type1, what1, args, 1);
-
- va_start(args, what1);
-
- return grid;
-}
-
-newtGrid newtGridVStacked(enum newtGridElement type1, void * what1, ...) {
- va_list args;
- newtGrid grid;
-
- va_start(args, what1);
-
- grid = stackem(1, type1, what1, args, 0);
-
- va_start(args, what1);
-
- return grid;
-}
-
-newtGrid newtGridHStacked(enum newtGridElement type1, void * what1, ...) {
- va_list args;
- newtGrid grid;
-
- va_start(args, what1);
-
- grid = stackem(0, type1, what1, args, 0);
-
- va_start(args, what1);
-
- return grid;
-}
-
-newtGrid newtGridBasicWindow(newtComponent text, newtGrid middle,
- newtGrid buttons) {
- newtGrid grid;
-
- grid = newtCreateGrid(1, 3);
- newtGridSetField(grid, 0, 0, NEWT_GRID_COMPONENT, text,
- 0, 0, 0, 0, NEWT_ANCHOR_LEFT, 0);
- newtGridSetField(grid, 0, 1, NEWT_GRID_SUBGRID, middle,
- 0, 1, 0, 0, 0, 0);
- newtGridSetField(grid, 0, 2, NEWT_GRID_SUBGRID, buttons,
- 0, 1, 0, 0, 0, NEWT_GRID_FLAG_GROWX);
-
- return grid;
-}
-
-newtGrid newtGridSimpleWindow(newtComponent text, newtComponent middle,
- newtGrid buttons) {
- newtGrid grid;
-
- grid = newtCreateGrid(1, 3);
- newtGridSetField(grid, 0, 0, NEWT_GRID_COMPONENT, text,
- 0, 0, 0, 0, NEWT_ANCHOR_LEFT, 0);
- newtGridSetField(grid, 0, 1, NEWT_GRID_COMPONENT, middle,
- 0, 1, 0, 0, 0, 0);
- newtGridSetField(grid, 0, 2, NEWT_GRID_SUBGRID, buttons,
- 0, 1, 0, 0, 0, NEWT_GRID_FLAG_GROWX);
-
- return grid;
-}
diff --git a/mdk-stage1/newt/label.c b/mdk-stage1/newt/label.c
deleted file mode 100644
index f1a9cebbf..000000000
--- a/mdk-stage1/newt/label.c
+++ /dev/null
@@ -1,81 +0,0 @@
-#include <slang.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-struct label {
- char * text;
- int length;
-};
-
-static void labelDraw(newtComponent co);
-static void labelDestroy(newtComponent co);
-
-static struct componentOps labelOps = {
- labelDraw,
- newtDefaultEventHandler,
- labelDestroy,
- newtDefaultPlaceHandler,
- newtDefaultMappedHandler,
-} ;
-
-newtComponent newtLabel(int left, int top, const char * text) {
- newtComponent co;
- struct label * la;
-
- co = malloc(sizeof(*co));
- la = malloc(sizeof(struct label));
- co->data = la;
-
- co->ops = &labelOps;
-
- co->height = 1;
- co->width = strlen(text);
- co->top = top;
- co->left = left;
- co->takesFocus = 0;
-
- la->length = strlen(text);
- la->text = strdup(text);
-
- return co;
-}
-
-void newtLabelSetText(newtComponent co, const char * text) {
- int newLength;
- struct label * la = co->data;
-
- newLength = strlen(text);
- if (newLength <= la->length) {
- memset(la->text, ' ', la->length);
- memcpy(la->text, text, newLength);
- } else {
- free(la->text);
- la->text = strdup(text);
- la->length = newLength;
- co->width = newLength;
- }
-
- labelDraw(co);
-}
-
-static void labelDraw(newtComponent co) {
- struct label * la = co->data;
-
- if (co->isMapped == -1) return;
-
- SLsmg_set_color(COLORSET_LABEL);
-
- newtGotorc(co->top, co->left);
- SLsmg_write_string(la->text);
-}
-
-static void labelDestroy(newtComponent co) {
- struct label * la = co->data;
-
- free(la->text);
- free(la);
- free(co);
-}
diff --git a/mdk-stage1/newt/listbox.c b/mdk-stage1/newt/listbox.c
deleted file mode 100644
index cdbf792ca..000000000
--- a/mdk-stage1/newt/listbox.c
+++ /dev/null
@@ -1,752 +0,0 @@
-/* This goofed-up box whacked into shape by Elliot Lee <sopwith@cuc.edu>
- (from the original listbox by Erik Troan <ewt@redhat.com>)
- and contributed to newt for use under the LGPL license.
- Copyright (C) 1996, 1997 Elliot Lee */
-
-#include <slang.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-
-/* Linked list of items in the listbox */
-struct items {
- char * text;
- const void *data;
- unsigned char isSelected;
- struct items *next;
-};
-
-/* Holds all the relevant information for this listbox */
-struct listbox {
- newtComponent sb; /* Scrollbar on right side of listbox */
- int curWidth; /* size of text w/o scrollbar or border*/
- int curHeight; /* size of text w/o border */
- int sbAdjust;
- int bdxAdjust, bdyAdjust;
- int numItems, numSelected;
- int userHasSetWidth;
- int currItem, startShowItem; /* startShowItem is the first item displayed
- on the screen */
- int isActive; /* If we handle key events all the time, it seems
- to do things even when they are supposed to be for
- another button/whatever */
- struct items *boxItems;
- int grow;
- int flags; /* flags for this listbox, right now just
- NEWT_FLAG_RETURNEXIT */
-};
-
-static void listboxDraw(newtComponent co);
-static void listboxDestroy(newtComponent co);
-static struct eventResult listboxEvent(newtComponent co, struct event ev);
-static void newtListboxRealSetCurrent(newtComponent co);
-static void listboxPlace(newtComponent co, int newLeft, int newTop);
-static inline void updateWidth(newtComponent co, struct listbox * li,
- int maxField);
-static void listboxMapped(newtComponent co, int isMapped);
-
-static struct componentOps listboxOps = {
- listboxDraw,
- listboxEvent,
- listboxDestroy,
- listboxPlace,
- listboxMapped,
-};
-
-static void listboxMapped(newtComponent co, int isMapped) {
- struct listbox * li = co->data;
-
- co->isMapped = isMapped;
- if (li->sb)
- li->sb->ops->mapped(li->sb, isMapped);
-}
-
-static void listboxPlace(newtComponent co, int newLeft, int newTop) {
- struct listbox * li = co->data;
-
- co->top = newTop;
- co->left = newLeft;
-
- if (li->sb)
- li->sb->ops->place(li->sb, co->left + co->width - li->bdxAdjust - 1,
- co->top);
-}
-
-newtComponent newtListbox(int left, int top, int height, int flags) {
- newtComponent co, sb;
- struct listbox * li;
-
- if (!(co = malloc(sizeof(*co))))
- return NULL;
-
- if (!(li = malloc(sizeof(struct listbox)))) {
- free(co);
- return NULL;
- }
-
- li->boxItems = NULL;
- li->numItems = 0;
- li->currItem = 0;
- li->numSelected = 0;
- li->isActive = 0;
- li->userHasSetWidth = 0;
- li->startShowItem = 0;
- li->sbAdjust = 0;
- li->bdxAdjust = 0;
- li->bdyAdjust = 0;
- li->flags = flags & (NEWT_FLAG_RETURNEXIT | NEWT_FLAG_BORDER |
- NEWT_FLAG_MULTIPLE);
-
- if (li->flags & NEWT_FLAG_BORDER) {
- li->bdxAdjust = 2;
- li->bdyAdjust = 1;
- }
-
- co->height = height;
- li->curHeight = co->height - (2 * li->bdyAdjust);
-
- if (height) {
- li->grow = 0;
- if (flags & NEWT_FLAG_SCROLL) {
- sb = newtVerticalScrollbar(left, top + li->bdyAdjust,
- li->curHeight,
- COLORSET_LISTBOX, COLORSET_ACTLISTBOX);
- li->sbAdjust = 3;
- } else {
- sb = NULL;
- }
- } else {
- li->grow = 1;
- sb = NULL;
- }
-
- li->sb = sb;
- co->data = li;
- co->isMapped = 0;
- co->left = left;
- co->top = top;
- co->ops = &listboxOps;
- co->takesFocus = 1;
- co->callback = NULL;
-
- updateWidth(co, li, 5);
-
- return co;
-}
-
-static inline void updateWidth(newtComponent co, struct listbox * li,
- int maxField) {
- li->curWidth = maxField;
- co->width = li->curWidth + li->sbAdjust + 2 * li->bdxAdjust;
-
- if (li->sb)
- li->sb->left = co->left + co->width - li->bdxAdjust - 1;
-}
-
-void newtListboxSetCurrentByKey(newtComponent co, void * key) {
- struct listbox * li = co->data;
- struct items * item;
- int i;
-
- item = li->boxItems, i = 0;
- while (item && item->data != key)
- item = item->next, i++;
-
- if (item)
- newtListboxSetCurrent(co, i);
-}
-
-void newtListboxSetCurrent(newtComponent co, int num)
-{
- struct listbox * li = co->data;
-
- if (num >= li->numItems)
- li->currItem = li->numItems - 1;
- else if (num < 0)
- li->currItem = 0;
- else
- li->currItem = num;
-
- if (li->currItem < li->startShowItem)
- li->startShowItem = li->currItem;
- else if (li->currItem - li->startShowItem > li->curHeight - 1)
- li->startShowItem = li->currItem - li->curHeight + 1;
- if (li->startShowItem + li->curHeight > li->numItems)
- li->startShowItem = li->numItems - li->curHeight;
- if(li->startShowItem < 0)
- li->startShowItem = 0;
-
- newtListboxRealSetCurrent(co);
-}
-
-static void newtListboxRealSetCurrent(newtComponent co)
-{
- struct listbox * li = co->data;
-
- if(li->sb)
- newtScrollbarSet(li->sb, li->currItem + 1, li->numItems);
- listboxDraw(co);
- if(co->callback) co->callback(co, co->callbackData);
-}
-
-void newtListboxSetWidth(newtComponent co, int width) {
- struct listbox * li = co->data;
-
- co->width = width;
- li->curWidth = co->width - li->sbAdjust - 2 * li->bdxAdjust;
- li->userHasSetWidth = 1;
- if (li->sb) li->sb->left = co->width + co->left - 1;
- listboxDraw(co);
-}
-
-void * newtListboxGetCurrent(newtComponent co) {
- struct listbox * li = co->data;
- int i;
- struct items *item;
-
- for(i = 0, item = li->boxItems; item != NULL && i < li->currItem;
- i++, item = item->next);
-
- if (item)
- return (void *)item->data;
- else
- return NULL;
-}
-
-void newtListboxSelectItem(newtComponent co, const void * key,
- enum newtFlagsSense sense)
-{
- struct listbox * li = co->data;
- int i;
- struct items * item;
-
- item = li->boxItems, i = 0;
- while (item && item->data != key)
- item = item->next, i++;
-
- if (!item) return;
-
- if (item->isSelected)
- li->numSelected--;
-
- switch(sense) {
- case NEWT_FLAGS_RESET:
- item->isSelected = 0; break;
- case NEWT_FLAGS_SET:
- item->isSelected = 1; break;
- case NEWT_FLAGS_TOGGLE:
- item->isSelected = !item->isSelected;
- }
-
- if (item->isSelected)
- li->numSelected++;
-
- listboxDraw(co);
-}
-
-void newtListboxClearSelection(newtComponent co)
-{
- struct items *item;
- struct listbox * li = co->data;
-
- for(item = li->boxItems; item != NULL;
- item = item->next)
- item->isSelected = 0;
- li->numSelected = 0;
- listboxDraw(co);
-}
-
-/* Free the returned array after use, but NOT the values in the array */
-void ** newtListboxGetSelection(newtComponent co, int *numitems)
-{
- struct listbox * li;
- int i;
- void **retval;
- struct items *item;
-
- if(!co || !numitems) return NULL;
-
- li = co->data;
- if(!li || !li->numSelected) return NULL;
-
- retval = malloc(li->numSelected * sizeof(void *));
- for(i = 0, item = li->boxItems; item != NULL;
- item = item->next)
- if(item->isSelected)
- retval[i++] = (void *)item->data;
- *numitems = li->numSelected;
- return retval;
-}
-
-void newtListboxSetEntry(newtComponent co, int num, const char * text) {
- struct listbox * li = co->data;
- int i;
- struct items *item;
-
- for(i = 0, item = li->boxItems; item != NULL && i < num;
- i++, item = item->next);
-
- if(!item)
- return;
- else {
- free(item->text);
- item->text = strdup(text);
- }
- if (li->userHasSetWidth == 0 && strlen(text) > (size_t)li->curWidth) {
- updateWidth(co, li, strlen(text));
- }
-
- if (num >= li->startShowItem && num <= li->startShowItem + co->height)
- listboxDraw(co);
-}
-
-void newtListboxSetData(newtComponent co, int num, void * data) {
- struct listbox * li = co->data;
- int i;
- struct items *item;
-
- for(i = 0, item = li->boxItems; item != NULL && i < num;
- i++, item = item->next);
-
- item->data = data;
-}
-
-int newtListboxAppendEntry(newtComponent co, const char * text,
- const void * data) {
- struct listbox * li = co->data;
- struct items *item;
-
- if(li->boxItems) {
- for (item = li->boxItems; item->next != NULL; item = item->next);
-
- item = item->next = malloc(sizeof(struct items));
- } else {
- item = li->boxItems = malloc(sizeof(struct items));
- }
-
- if (!li->userHasSetWidth && text && (strlen(text) > (size_t)li->curWidth))
- updateWidth(co, li, strlen(text));
-
- item->text = strdup(text); item->data = data; item->next = NULL;
- item->isSelected = 0;
-
- if (li->grow)
- co->height++, li->curHeight++;
- li->numItems++;
-
- return 0;
-}
-
-int newtListboxInsertEntry(newtComponent co, const char * text,
- const void * data, void * key) {
- struct listbox * li = co->data;
- struct items *item, *t;
-
- if (li->boxItems) {
- if (key) {
- item = li->boxItems;
- while (item && item->data != key) item = item->next;
-
- if (!item) return 1;
-
- t = item->next;
- item = item->next = malloc(sizeof(struct items));
- item->next = t;
- } else {
- t = li->boxItems;
- item = li->boxItems = malloc(sizeof(struct items));
- item->next = t;
- }
- } else if (key) {
- return 1;
- } else {
- item = li->boxItems = malloc(sizeof(struct items));
- item->next = NULL;
- }
-
- if (!li->userHasSetWidth && text && (strlen(text) > (size_t)li->curWidth))
- updateWidth(co, li, strlen(text));
-
- item->text = strdup(text?text:"(null)"); item->data = data;
- item->isSelected = 0;
-
- if (li->sb)
- li->sb->left = co->left + co->width - li->bdxAdjust - 1;
- li->numItems++;
-
- listboxDraw(co);
-
- return 0;
-}
-
-int newtListboxDeleteEntry(newtComponent co, void * key) {
- struct listbox * li = co->data;
- int widest = 0, t;
- struct items *item, *item2 = NULL;
- int num;
-
- if (li->boxItems == NULL || li->numItems <= 0)
- return 0;
-
- num = 0;
-
- item2 = NULL, item = li->boxItems;
- while (item && item->data != key) {
- item2 = item;
- item = item->next;
- num++;
- }
-
- if (!item)
- return -1;
-
- if (item2)
- item2->next = item->next;
- else
- li->boxItems = item->next;
-
- free(item->text);
- free(item);
- li->numItems--;
-
- if (!li->userHasSetWidth) {
- widest = 0;
- for (item = li->boxItems; item != NULL; item = item->next)
- if ((t = strlen(item->text)) > widest) widest = t;
- }
-
- if (li->currItem >= num)
- li->currItem--;
-
- if (!li->userHasSetWidth) {
- updateWidth(co, li, widest);
- }
-
- listboxDraw(co);
-
- return 0;
-}
-
-void newtListboxClear(newtComponent co)
-{
- struct listbox * li;
- struct items *anitem, *nextitem;
- if(co == NULL || (li = co->data) == NULL)
- return;
- for(anitem = li->boxItems; anitem != NULL; anitem = nextitem) {
- nextitem = anitem->next;
- free(anitem->text);
- free(anitem);
- }
- li->numItems = li->numSelected = li->currItem = li->startShowItem = 0;
- li->boxItems = NULL;
- if (!li->userHasSetWidth)
- updateWidth(co, li, 5);
-}
-
-/* If you don't want to get back the text, pass in NULL for the ptr-ptr. Same
- goes for the data. */
-void newtListboxGetEntry(newtComponent co, int num, char **text, void **data) {
- struct listbox * li = co->data;
- int i;
- struct items *item;
-
- if (!li->boxItems || num >= li->numItems) {
- if(text)
- *text = NULL;
- if(data)
- *data = NULL;
- return;
- }
-
- i = 0;
- item = li->boxItems;
- while (item && i < num) {
- i++, item = item->next;
- }
-
- if (item) {
- if (text)
- *text = item->text;
- if (data)
- *data = (void *)item->data;
- }
-}
-
-static void listboxDraw(newtComponent co)
-{
- struct listbox * li = co->data;
- struct items *item;
- int i, j;
-
- if (!co->isMapped) return ;
-
- if(li->flags & NEWT_FLAG_BORDER) {
- if(li->isActive)
- SLsmg_set_color(NEWT_COLORSET_ACTLISTBOX);
- else
- SLsmg_set_color(NEWT_COLORSET_LISTBOX);
-
- newtDrawBox(co->left, co->top, co->width, co->height, 0);
- }
-
- if(li->sb)
- li->sb->ops->draw(li->sb);
-
- SLsmg_set_color(NEWT_COLORSET_LISTBOX);
-
- for(i = 0, item = li->boxItems; item != NULL && i < li->startShowItem;
- i++, item = item->next);
-
- j = i;
-
- for (i = 0; item != NULL && i < li->curHeight; i++, item = item->next) {
- if (!item->text) continue;
-
- newtGotorc(co->top + i + li->bdyAdjust, co->left + li->bdxAdjust);
- if(j + i == li->currItem) {
- if(item->isSelected)
- SLsmg_set_color(NEWT_COLORSET_ACTSELLISTBOX);
- else
- SLsmg_set_color(NEWT_COLORSET_ACTLISTBOX);
- } else if(item->isSelected)
- SLsmg_set_color(NEWT_COLORSET_SELLISTBOX);
- else
- SLsmg_set_color(NEWT_COLORSET_LISTBOX);
-
- SLsmg_write_nstring(item->text, li->curWidth);
-
- }
- newtGotorc(co->top + (li->currItem - li->startShowItem), co->left);
-}
-
-static struct eventResult listboxEvent(newtComponent co, struct event ev) {
- struct eventResult er;
- struct listbox * li = co->data;
- struct items *item;
- int i;
-
- er.result = ER_IGNORED;
-
- if(ev.when == EV_EARLY || ev.when == EV_LATE) {
- return er;
- }
-
- switch(ev.event) {
- case EV_KEYPRESS:
- if (!li->isActive) break;
-
- switch(ev.u.key) {
- case ' ':
- if(!(li->flags & NEWT_FLAG_MULTIPLE)) break;
- newtListboxSelectItem(co, li->boxItems[li->currItem].data,
- NEWT_FLAGS_TOGGLE);
- er.result = ER_SWALLOWED;
- /* We don't break here, because it is cool to be able to
- hold space to select a bunch of items in a list at once */
-
- case NEWT_KEY_DOWN:
- if(li->numItems <= 0) break;
- if(li->currItem < li->numItems - 1) {
- li->currItem++;
- if(li->currItem > (li->startShowItem + li->curHeight - 1)) {
- li->startShowItem = li->currItem - li->curHeight + 1;
- if(li->startShowItem + li->curHeight > li->numItems)
- li->startShowItem = li->numItems - li->curHeight;
- }
- if(li->sb)
- newtScrollbarSet(li->sb, li->currItem + 1, li->numItems);
- listboxDraw(co);
- }
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- break;
-
- case NEWT_KEY_ENTER:
- if(li->numItems <= 0) break;
- if(li->flags & NEWT_FLAG_RETURNEXIT)
- er.result = ER_EXITFORM;
- break;
-
- case NEWT_KEY_UP:
- if(li->numItems <= 0) break;
- if(li->currItem > 0) {
- li->currItem--;
- if(li->currItem < li->startShowItem)
- li->startShowItem = li->currItem;
- if(li->sb)
- newtScrollbarSet(li->sb, li->currItem + 1, li->numItems);
- listboxDraw(co);
- }
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- break;
-
- case NEWT_KEY_PGUP:
- if(li->numItems <= 0) break;
- li->startShowItem -= li->curHeight - 1;
- if(li->startShowItem < 0)
- li->startShowItem = 0;
- li->currItem -= li->curHeight - 1;
- if(li->currItem < 0)
- li->currItem = 0;
- newtListboxRealSetCurrent(co);
- er.result = ER_SWALLOWED;
- break;
-
- case NEWT_KEY_PGDN:
- if(li->numItems <= 0) break;
- li->startShowItem += li->curHeight;
- if(li->startShowItem > (li->numItems - li->curHeight)) {
- li->startShowItem = li->numItems - li->curHeight;
- }
- li->currItem += li->curHeight;
- if(li->currItem >= li->numItems) {
- li->currItem = li->numItems - 1;
- }
- newtListboxRealSetCurrent(co);
- er.result = ER_SWALLOWED;
- break;
-
- case NEWT_KEY_HOME:
- if(li->numItems <= 0) break;
- newtListboxSetCurrent(co, 0);
- er.result = ER_SWALLOWED;
- break;
-
- case NEWT_KEY_END:
- if(li->numItems <= 0) break;
- li->startShowItem = li->numItems - li->curHeight;
- if(li->startShowItem < 0)
- li->startShowItem = 0;
- li->currItem = li->numItems - 1;
- newtListboxRealSetCurrent(co);
- er.result = ER_SWALLOWED;
- break;
- default:
- if (li->numItems <= 0) break;
- if (ev.u.key < NEWT_KEY_EXTRA_BASE && isalpha(ev.u.key)) {
- for(i = 0, item = li->boxItems; item != NULL &&
- i < li->currItem; i++, item = item->next);
-
- if (item && item->text && (toupper(*item->text) == toupper(ev.u.key))) {
- item = item->next;
- i++;
- } else {
- item = li->boxItems;
- i = 0;
- }
- while (item && item->text &&
- toupper(*item->text) != toupper(ev.u.key)) {
- item = item->next;
- i++;
- }
- if (item) {
- li->currItem = i;
- if(li->currItem < li->startShowItem ||
- li->currItem > li->startShowItem)
- li->startShowItem =
- li->currItem > li->numItems - li->curHeight ?
- li->startShowItem = li->numItems - li->curHeight :
- li->currItem;
- if(li->sb)
- newtScrollbarSet(li->sb, li->currItem + 1, li->numItems);
- newtListboxRealSetCurrent(co);
- er.result = ER_SWALLOWED;
- }
- }
- }
- break;
-
- case EV_FOCUS:
- li->isActive = 1;
- listboxDraw(co);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_UNFOCUS:
- li->isActive = 0;
- listboxDraw(co);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_MOUSE:
- /* if this mouse click was within the listbox, make the current
- item the item clicked on. */
- /* Up scroll arrow */
- if (li->sb &&
- ev.u.mouse.x == co->left + co->width - li->bdxAdjust - 1 &&
- ev.u.mouse.y == co->top + li->bdyAdjust) {
- if(li->numItems <= 0) break;
- if(li->currItem > 0) {
- li->currItem--;
- if(li->currItem < li->startShowItem)
- li->startShowItem = li->currItem;
- if(li->sb)
- newtScrollbarSet(li->sb, li->currItem + 1, li->numItems);
- listboxDraw(co);
- }
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- break;
- }
- /* Down scroll arrow */
- if (li->sb &&
- ev.u.mouse.x == co->left + co->width - li->bdxAdjust - 1 &&
- ev.u.mouse.y == co->top + co->height - li->bdyAdjust - 1) {
- if(li->numItems <= 0) break;
- if(li->currItem < li->numItems - 1) {
- li->currItem++;
- if(li->currItem > (li->startShowItem + li->curHeight - 1)) {
- li->startShowItem = li->currItem - li->curHeight + 1;
- if(li->startShowItem + li->curHeight > li->numItems)
- li->startShowItem = li->numItems - li->curHeight;
- }
- if(li->sb)
- newtScrollbarSet(li->sb, li->currItem + 1, li->numItems);
- listboxDraw(co);
- }
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- break;
- }
- if ((ev.u.mouse.y >= co->top + li->bdyAdjust) &&
- (ev.u.mouse.y <= co->top + co->height - (li->bdyAdjust * 2)) &&
- (ev.u.mouse.x >= co->left + li->bdxAdjust) &&
- (ev.u.mouse.x <= co->left + co->width + (li->bdxAdjust * 2))) {
- li->currItem = li->startShowItem +
- (ev.u.mouse.y - li->bdyAdjust - co->top);
- newtListboxRealSetCurrent(co);
- listboxDraw(co);
- if(co->callback) co->callback(co, co->callbackData);
- er.result = ER_SWALLOWED;
- break;
- }
- }
-
- return er;
-}
-
-static void listboxDestroy(newtComponent co) {
- struct listbox * li = co->data;
- struct items * item, * nextitem;
-
- nextitem = item = li->boxItems;
-
- while (item != NULL) {
- nextitem = item->next;
- free(item->text);
- free(item);
- item = nextitem;
- }
-
- if (li->sb) li->sb->ops->destroy(li->sb);
-
- free(li);
- free(co);
-}
diff --git a/mdk-stage1/newt/newt.c b/mdk-stage1/newt/newt.c
deleted file mode 100644
index 8ff5e39a5..000000000
--- a/mdk-stage1/newt/newt.c
+++ /dev/null
@@ -1,672 +0,0 @@
-#include <slang.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <sys/signal.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#include <termios.h>
-#include <unistd.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-struct Window {
- int height, width, top, left;
- short * buffer;
- char * title;
-};
-
-struct keymap {
- char * str;
- int code;
- char * tc;
-};
-
-static struct Window windowStack[20];
-static struct Window * currentWindow = NULL;
-
-static char * helplineStack[20];
-static char ** currentHelpline = NULL;
-
-static int cursorRow, cursorCol;
-static int needResize;
-static int cursorOn = 1;
-
-static const char * defaultHelpLine =
-" <Tab>/<Alt-Tab> between elements | <Space> selects | <F12> next screen"
-;
-
-const struct newtColors newtDefaultColorPalette = {
- "cyan", "black", /* root fg, bg */
- "black", "blue", /* border fg, bg */
- "white", "blue", /* window fg, bg */
- "white", "black", /* shadow fg, bg */
- "white", "blue", /* title fg, bg */
- "black", "cyan", /* button fg, bg */
- "yellow", "cyan", /* active button fg, bg */
- "yellow", "blue", /* checkbox fg, bg */
- "blue", "brown", /* active checkbox fg, bg */
- "yellow", "blue", /* entry box fg, bg */
- "white", "blue", /* label fg, bg */
- "black", "cyan", /* listbox fg, bg */
- "yellow", "cyan", /* active listbox fg, bg */
- "white", "blue", /* textbox fg, bg */
- "cyan", "black", /* active textbox fg, bg */
- "white", "blue", /* help line */
- "yellow", "blue", /* root text */
- "blue", /* scale full */
- "red", /* scale empty */
- "blue", "cyan", /* disabled entry fg, bg */
- "white", "blue", /* compact button fg, bg */
- "yellow", "red", /* active & sel listbox */
- "black", "brown" /* selected listbox */
-};
-
-static const struct keymap keymap[] = {
- { "\033OA", NEWT_KEY_UP, "kh" },
- { "\033[A", NEWT_KEY_UP, "ku" },
- { "\033OB", NEWT_KEY_DOWN, "kd" },
- { "\033[B", NEWT_KEY_DOWN, "kd" },
- { "\033[C", NEWT_KEY_RIGHT, "kr" },
- { "\033OC", NEWT_KEY_RIGHT, "kr" },
- { "\033[D", NEWT_KEY_LEFT, "kl" },
- { "\033OD", NEWT_KEY_LEFT, "kl" },
- { "\033[H", NEWT_KEY_HOME, "kh" },
- { "\033[1~", NEWT_KEY_HOME, "kh" },
- { "\033Ow", NEWT_KEY_END, "kH" },
- { "\033[4~", NEWT_KEY_END, "kH" },
-
- { "\033[3~", NEWT_KEY_DELETE, "kl" },
- { "\033[2~", NEWT_KEY_INSERT, NULL },
-
- { "\033\t", NEWT_KEY_UNTAB, NULL },
-
- { "\033[5~", NEWT_KEY_PGUP, NULL },
- { "\033[6~", NEWT_KEY_PGDN, NULL },
- { "\033V", NEWT_KEY_PGUP, "kH" },
- { "\033v", NEWT_KEY_PGUP, "kH" },
-
- { "\033[[A", NEWT_KEY_F1, NULL },
- { "\033[[B", NEWT_KEY_F2, NULL },
- { "\033[[C", NEWT_KEY_F3, NULL },
- { "\033[[D", NEWT_KEY_F4, NULL },
- { "\033[[E", NEWT_KEY_F5, NULL },
-
- { "\033OP", NEWT_KEY_F1, NULL },
- { "\033OQ", NEWT_KEY_F2, NULL },
- { "\033OR", NEWT_KEY_F3, NULL },
- { "\033OS", NEWT_KEY_F4, NULL },
-
- { "\033[11~", NEWT_KEY_F1, NULL },
- { "\033[12~", NEWT_KEY_F2, NULL },
- { "\033[13~", NEWT_KEY_F3, NULL },
- { "\033[14~", NEWT_KEY_F4, NULL },
- { "\033[15~", NEWT_KEY_F5, NULL },
- { "\033[17~", NEWT_KEY_F6, NULL },
- { "\033[18~", NEWT_KEY_F7, NULL },
- { "\033[19~", NEWT_KEY_F8, NULL },
- { "\033[20~", NEWT_KEY_F9, NULL },
- { "\033[21~", NEWT_KEY_F10, NULL },
- { "\033[23~", NEWT_KEY_F11, NULL },
- { "\033[24~", NEWT_KEY_F12, NULL },
-
- { NULL, 0, NULL }, /* LEAVE this one */
-};
-static char keyPrefix = '\033';
-
-static const char * version = "Newt windowing library version " VERSION
- " - (C) 1996-2000 Red Hat Software. "
- "Redistributable under the term of the Library "
- "GNU Public License. "
- "Written by Erik Troan\n";
-
-static newtSuspendCallback suspendCallback = NULL;
-static void * suspendCallbackData = NULL;
-
-void newtSetSuspendCallback(newtSuspendCallback cb, void * data) {
- suspendCallback = cb;
- suspendCallbackData = data;
-}
-
-static void handleSigwinch(int signum __attribute__ ((unused))) {
- needResize = 1;
-}
-
-static int getkeyInterruptHook(void) {
- return -1;
-}
-
-void newtFlushInput(void) {
- while (SLang_input_pending(0)) {
- SLang_getkey();
- }
-}
-
-void newtRefresh(void) {
- SLsmg_refresh();
-}
-
-void newtSuspend(void) {
- SLtt_set_cursor_visibility (1);
- SLsmg_suspend_smg();
- SLang_reset_tty();
- SLtt_set_cursor_visibility (cursorOn);
-}
-
-void newtResume(void) {
- SLsmg_resume_smg ();
- SLsmg_refresh();
- SLang_init_tty(0, 0, 0);
-}
-
-void newtCls(void) {
- SLsmg_set_color(NEWT_COLORSET_ROOT);
- SLsmg_gotorc(0, 0);
- SLsmg_erase_eos();
-
- newtRefresh();
-}
-
-#if defined(THIS_DOESNT_WORK)
-void newtResizeScreen(int redraw) {
- newtPushHelpLine("");
-
- SLtt_get_screen_size();
- SLang_init_tty(0, 0, 0);
-
- SLsmg_touch_lines (0, SLtt_Screen_Rows - 1);
-
- /* I don't know why I need this */
- SLsmg_refresh();
-
- newtPopHelpLine();
-
- if (redraw)
- SLsmg_refresh();
-}
-#endif
-
-int newtInit(void) {
- char * MonoValue, * MonoEnv = "NEWT_MONO";
-
- /* use the version variable just to be sure it gets included */
- (void) strlen(version);
-
- SLtt_get_terminfo();
- SLtt_get_screen_size();
-
- MonoValue = getenv(MonoEnv);
- if ( MonoValue == NULL ) {
- SLtt_Use_Ansi_Colors = 1;
- } else {
- SLtt_Use_Ansi_Colors = 0;
- }
-
- SLsmg_init_smg();
- SLang_init_tty(0, 0, 0);
-
- newtSetColors(newtDefaultColorPalette);
- newtCursorOff();
- /*initKeymap();*/
-
- /*memset(&sa, 0, sizeof(sa));
- sa.sa_handler = handleSigwinch;
- sigaction(SIGWINCH, &sa, NULL);*/
-
- SLsignal_intr(SIGWINCH, handleSigwinch);
- SLang_getkey_intr_hook = getkeyInterruptHook;
-
-
-
- return 0;
-}
-
-int newtFinished(void) {
- SLsmg_gotorc(SLtt_Screen_Rows - 1, 0);
- newtCursorOn();
- SLsmg_refresh();
- SLsmg_reset_smg();
- SLang_reset_tty();
-
- return 0;
-}
-
-void newtSetColors(struct newtColors colors) {
- SLtt_set_color(NEWT_COLORSET_ROOT, "", colors.rootFg, colors.rootBg);
- SLtt_set_color(NEWT_COLORSET_BORDER, "", colors.borderFg, colors.borderBg);
- SLtt_set_color(NEWT_COLORSET_WINDOW, "", colors.windowFg, colors.windowBg);
- SLtt_set_color(NEWT_COLORSET_SHADOW, "", colors.shadowFg, colors.shadowBg);
- SLtt_set_color(NEWT_COLORSET_TITLE, "", colors.titleFg, colors.titleBg);
- SLtt_set_color(NEWT_COLORSET_BUTTON, "", colors.buttonFg, colors.buttonBg);
- SLtt_set_color(NEWT_COLORSET_ACTBUTTON, "", colors.actButtonFg,
- colors.actButtonBg);
- SLtt_set_color(NEWT_COLORSET_CHECKBOX, "", colors.checkboxFg,
- colors.checkboxBg);
- SLtt_set_color(NEWT_COLORSET_ACTCHECKBOX, "", colors.actCheckboxFg,
- colors.actCheckboxBg);
- SLtt_set_color(NEWT_COLORSET_ENTRY, "", colors.entryFg, colors.entryBg);
- SLtt_set_color(NEWT_COLORSET_LABEL, "", colors.labelFg, colors.labelBg);
- SLtt_set_color(NEWT_COLORSET_LISTBOX, "", colors.listboxFg,
- colors.listboxBg);
- SLtt_set_color(NEWT_COLORSET_ACTLISTBOX, "", colors.actListboxFg,
- colors.actListboxBg);
- SLtt_set_color(NEWT_COLORSET_TEXTBOX, "", colors.textboxFg,
- colors.textboxBg);
- SLtt_set_color(NEWT_COLORSET_ACTTEXTBOX, "", colors.actTextboxFg,
- colors.actTextboxBg);
- SLtt_set_color(NEWT_COLORSET_HELPLINE, "", colors.helpLineFg,
- colors.helpLineBg);
- SLtt_set_color(NEWT_COLORSET_ROOTTEXT, "", colors.rootTextFg,
- colors.rootTextBg);
-
- SLtt_set_color(NEWT_COLORSET_EMPTYSCALE, "", "black",
- colors.emptyScale);
- SLtt_set_color(NEWT_COLORSET_FULLSCALE, "", "black",
- colors.fullScale);
- SLtt_set_color(NEWT_COLORSET_DISENTRY, "", colors.disabledEntryFg,
- colors.disabledEntryBg);
-
- SLtt_set_color(NEWT_COLORSET_COMPACTBUTTON, "", colors.compactButtonFg,
- colors.compactButtonBg);
-
- SLtt_set_color(NEWT_COLORSET_ACTSELLISTBOX, "", colors.actSelListboxFg,
- colors.actSelListboxBg);
- SLtt_set_color(NEWT_COLORSET_SELLISTBOX, "", colors.selListboxFg,
- colors.selListboxBg);
-}
-
-int newtGetKey(void) {
- int key;
- char buf[10], * chptr = buf;
- const struct keymap * curr;
-
- do {
- key = SLang_getkey();
- if (key == 0xFFFF) {
- if (needResize)
- return NEWT_KEY_RESIZE;
-
- /* ignore other signals */
- continue;
- }
-
- if (key == NEWT_KEY_SUSPEND && suspendCallback)
- suspendCallback(suspendCallbackData);
- } while (key == NEWT_KEY_SUSPEND);
-
- switch (key) {
- case 'v' | 0x80:
- case 'V' | 0x80:
- return NEWT_KEY_PGUP;
-
- case 22:
- return NEWT_KEY_PGDN;
-
- return NEWT_KEY_BKSPC;
- case 0x7f:
- return NEWT_KEY_BKSPC;
-
- case 0x08:
- return NEWT_KEY_BKSPC;
-
- default:
- if (key != keyPrefix) return key;
- }
-
- memset(buf, 0, sizeof(buf));
-
- *chptr++ = key;
- while (SLang_input_pending(5)) {
- key = SLang_getkey();
- if (key == keyPrefix) {
- /* he hit unknown keys too many times -- start over */
- memset(buf, 0, sizeof(buf));
- chptr = buf;
- }
-
- *chptr++ = key;
-
- /* this search should use bsearch(), but when we only look through
- a list of 20 (or so) keymappings, it's probably faster just to
- do a inline linear search */
-
- for (curr = keymap; curr->code; curr++) {
- if (curr->str) {
- if (!strcmp(curr->str, buf))
- return curr->code;
- }
- }
- }
-
- for (curr = keymap; curr->code; curr++) {
- if (curr->str) {
- if (!strcmp(curr->str, buf))
- return curr->code;
- }
- }
-
- /* Looks like we were a bit overzealous in reading characters. Return
- just the first character, and put everything else back in the buffer
- for later */
-
- chptr--;
- while (chptr > buf)
- SLang_ungetkey(*chptr--);
-
- return *chptr;
-}
-
-void newtWaitForKey(void) {
- newtRefresh();
-
- SLang_getkey();
- newtClearKeyBuffer();
-}
-
-void newtClearKeyBuffer(void) {
- while (SLang_input_pending(1)) {
- SLang_getkey();
- }
-}
-
-int newtOpenWindow(int left, int top, int width, int height,
- const char * title) {
- int j, row, col;
- int n;
- int i;
-
- newtFlushInput();
-
- if (!currentWindow) {
- currentWindow = windowStack;
- } else {
- currentWindow++;
- }
-
- currentWindow->left = left;
- currentWindow->top = top;
- currentWindow->width = width;
- currentWindow->height = height;
- currentWindow->title = title ? strdup(title) : NULL;
-
- currentWindow->buffer = malloc(sizeof(short) * (width + 3) * (height + 3));
-
- row = top - 1;
- col = left - 1;
- n = 0;
- for (j = 0; j < height + 3; j++, row++) {
- SLsmg_gotorc(row, col);
- SLsmg_read_raw((SLsmg_Char_Type *)currentWindow->buffer + n,
- currentWindow->width + 3);
- n += currentWindow->width + 3;
- }
-
- SLsmg_set_color(NEWT_COLORSET_BORDER);
- SLsmg_draw_box(top - 1, left - 1, height + 2, width + 2);
-
- if (currentWindow->title) {
- i = strlen(currentWindow->title) + 4;
- i = ((width - i) / 2) + left;
- SLsmg_gotorc(top - 1, i);
- SLsmg_set_char_set(1);
- SLsmg_write_char(SLSMG_RTEE_CHAR);
- SLsmg_set_char_set(0);
- SLsmg_write_char(' ');
- SLsmg_set_color(NEWT_COLORSET_TITLE);
- SLsmg_write_string((char *)currentWindow->title);
- SLsmg_set_color(NEWT_COLORSET_BORDER);
- SLsmg_write_char(' ');
- SLsmg_set_char_set(1);
- SLsmg_write_char(SLSMG_LTEE_CHAR);
- SLsmg_set_char_set(0);
- }
-
- SLsmg_set_color(NEWT_COLORSET_WINDOW);
- SLsmg_fill_region(top, left, height, width, ' ');
-
- SLsmg_set_color(NEWT_COLORSET_SHADOW);
- SLsmg_fill_region(top + height + 1, left, 1, width + 2, ' ');
- SLsmg_fill_region(top, left + width + 1, height + 1, 1, ' ');
-
- for (i = top; i < (top + height + 1); i++) {
- SLsmg_gotorc(i, left + width + 1);
- SLsmg_write_string(" ");
- }
-
- return 0;
-}
-
-int newtCenteredWindow(int width, int height, const char * title) {
- int top, left;
-
- top = (SLtt_Screen_Rows - height) / 2;
-
- /* I don't know why, but this seems to look better */
- if ((SLtt_Screen_Rows % 2) && (top % 2)) top--;
-
- left = (SLtt_Screen_Cols - width) / 2;
-
- newtOpenWindow(left, top, width, height, title);
-
- return 0;
-}
-
-void newtPopWindow(void) {
- int j, row, col;
- int n = 0;
-
- row = col = 0;
-
- row = currentWindow->top - 1;
- col = currentWindow->left - 1;
- for (j = 0; j < currentWindow->height + 3; j++, row++) {
- SLsmg_gotorc(row, col);
- SLsmg_write_raw((SLsmg_Char_Type *)currentWindow->buffer + n,
- currentWindow->width + 3);
- n += currentWindow->width + 3;
- }
-
- free(currentWindow->buffer);
- free(currentWindow->title);
-
- if (currentWindow == windowStack)
- currentWindow = NULL;
- else
- currentWindow--;
-
- SLsmg_set_char_set(0);
-
- newtRefresh();
-}
-
-void newtGetWindowPos(int * x, int * y) {
- if (currentWindow) {
- *x = currentWindow->left;
- *y = currentWindow->top;
- } else
- *x = *y = 0;
-}
-
-void newtGetrc(int * row, int * col) {
- *row = cursorRow;
- *col = cursorCol;
-}
-
-void newtGotorc(int newRow, int newCol) {
- if (currentWindow) {
- newRow += currentWindow->top;
- newCol += currentWindow->left;
- }
-
- cursorRow = newRow;
- cursorCol = newCol;
- SLsmg_gotorc(cursorRow, cursorCol);
-}
-
-void newtDrawBox(int left, int top, int width, int height, int shadow) {
- if (currentWindow) {
- top += currentWindow->top;
- left += currentWindow->left;
- }
-
- SLsmg_draw_box(top, left, height, width);
-
- if (shadow) {
- SLsmg_set_color(NEWT_COLORSET_SHADOW);
- SLsmg_fill_region(top + height, left + 1, 1, width - 1, ' ');
- SLsmg_fill_region(top + 1, left + width, height, 1, ' ');
- }
-}
-
-void newtClearBox(int left, int top, int width, int height) {
- if (currentWindow) {
- top += currentWindow->top;
- left += currentWindow->left;
- }
-
- SLsmg_fill_region(top, left, height, width, ' ');
-}
-
-#if 0
-/* This doesn't seem to work quite right. I don't know why not, but when
- I rsh from an rxvt into a box and run this code, the machine returns
- console key's (\033[B) rather then xterm ones (\033OB). */
-static void initKeymap(void) {
- struct keymap * curr;
-
- for (curr = keymap; curr->code; curr++) {
- if (!curr->str)
- curr->str = SLtt_tgetstr(curr->tc);
- }
-
- /* Newt's keymap handling is a bit broken. It assumes that any extended
- keystrokes begin with ESC. If you're using a homebrek terminal you
- will probably need to fix this, or just yell at me and I'll be so
- ashamed of myself for doing it this way I'll fix it */
-
- keyPrefix = 0x1b; /* ESC */
-}
-#endif
-
-void newtDelay(int usecs) {
- fd_set set;
- struct timeval tv;
-
- FD_ZERO(&set);
-
- tv.tv_sec = usecs / 1000000;
- tv.tv_usec = usecs % 1000000;
-
- select(0, &set, &set, &set, &tv);
-}
-
-struct eventResult newtDefaultEventHandler(newtComponent c __attribute__ ((unused)),
- struct event ev __attribute__ ((unused))) {
- struct eventResult er;
-
- er.result = ER_IGNORED;
- return er;
-}
-
-void newtRedrawHelpLine(void) {
- char * buf;
-
- SLsmg_set_color(NEWT_COLORSET_HELPLINE);
-
- buf = alloca(SLtt_Screen_Cols + 1);
- memset(buf, ' ', SLtt_Screen_Cols);
- buf[SLtt_Screen_Cols] = '\0';
-
- if (currentHelpline)
- memcpy(buf, *currentHelpline, strlen(*currentHelpline));
-
- SLsmg_gotorc(SLtt_Screen_Rows - 1, 0);
- SLsmg_write_string(buf);
-}
-
-void newtPushHelpLine(const char * text) {
- if (!text)
- text = defaultHelpLine;
-
- if (currentHelpline)
- (*(++currentHelpline)) = strdup(text);
- else {
- currentHelpline = helplineStack;
- *currentHelpline = strdup(text);
- }
-
- newtRedrawHelpLine();
-}
-
-void newtPopHelpLine(void) {
- if (!currentHelpline) return;
-
- free(*currentHelpline);
- if (currentHelpline == helplineStack)
- currentHelpline = NULL;
- else
- currentHelpline--;
-
- newtRedrawHelpLine();
-}
-
-void newtDrawRootText(int col, int row, const char * text) {
- SLsmg_set_color(NEWT_COLORSET_ROOTTEXT);
-
- if (col < 0) {
- col = SLtt_Screen_Cols + col;
- }
-
- if (row < 0) {
- row = SLtt_Screen_Rows + row;
- }
-
- SLsmg_gotorc(row, col);
- SLsmg_write_string((char *)text);
-}
-
-int newtSetFlags(int oldFlags, int newFlags, enum newtFlagsSense sense) {
- switch (sense) {
- case NEWT_FLAGS_SET:
- return oldFlags | newFlags;
-
- case NEWT_FLAGS_RESET:
- return oldFlags & (~newFlags);
-
- case NEWT_FLAGS_TOGGLE:
- return oldFlags ^ newFlags;
-
- default:
- return oldFlags;
- }
-}
-
-void newtBell(void)
-{
- SLtt_beep();
-}
-
-void newtGetScreenSize(int * cols, int * rows) {
- if (rows) *rows = SLtt_Screen_Rows;
- if (cols) *cols = SLtt_Screen_Cols;
-}
-
-void newtDefaultPlaceHandler(newtComponent c, int newLeft, int newTop) {
- c->left = newLeft;
- c->top = newTop;
-}
-
-void newtDefaultMappedHandler(newtComponent c, int isMapped) {
- c->isMapped = isMapped;
-}
-
-void newtCursorOff(void) {
- cursorOn = 0;
- SLtt_set_cursor_visibility (cursorOn);
-}
-
-void newtCursorOn(void) {
- cursorOn = 1;
- SLtt_set_cursor_visibility (cursorOn);
-}
diff --git a/mdk-stage1/newt/newt.h b/mdk-stage1/newt/newt.h
deleted file mode 100644
index d3fd8bedc..000000000
--- a/mdk-stage1/newt/newt.h
+++ /dev/null
@@ -1,362 +0,0 @@
-#ifndef H_NEWT
-#define H_NEWT
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <stdarg.h>
-
-#define NEWT_COLORSET_ROOT 2
-#define NEWT_COLORSET_BORDER 3
-#define NEWT_COLORSET_WINDOW 4
-#define NEWT_COLORSET_SHADOW 5
-#define NEWT_COLORSET_TITLE 6
-#define NEWT_COLORSET_BUTTON 7
-#define NEWT_COLORSET_ACTBUTTON 8
-#define NEWT_COLORSET_CHECKBOX 9
-#define NEWT_COLORSET_ACTCHECKBOX 10
-#define NEWT_COLORSET_ENTRY 11
-#define NEWT_COLORSET_LABEL 12
-#define NEWT_COLORSET_LISTBOX 13
-#define NEWT_COLORSET_ACTLISTBOX 14
-#define NEWT_COLORSET_TEXTBOX 15
-#define NEWT_COLORSET_ACTTEXTBOX 16
-#define NEWT_COLORSET_HELPLINE 17
-#define NEWT_COLORSET_ROOTTEXT 18
-#define NEWT_COLORSET_EMPTYSCALE 19
-#define NEWT_COLORSET_FULLSCALE 20
-#define NEWT_COLORSET_DISENTRY 21
-#define NEWT_COLORSET_COMPACTBUTTON 22
-#define NEWT_COLORSET_ACTSELLISTBOX 23
-#define NEWT_COLORSET_SELLISTBOX 24
-
-#define NEWT_ARG_LAST -100000
-#define NEWT_ARG_APPEND -1
-
-struct newtColors {
- char * rootFg, * rootBg;
- char * borderFg, * borderBg;
- char * windowFg, * windowBg;
- char * shadowFg, * shadowBg;
- char * titleFg, * titleBg;
- char * buttonFg, * buttonBg;
- char * actButtonFg, * actButtonBg;
- char * checkboxFg, * checkboxBg;
- char * actCheckboxFg, * actCheckboxBg;
- char * entryFg, * entryBg;
- char * labelFg, * labelBg;
- char * listboxFg, * listboxBg;
- char * actListboxFg, * actListboxBg;
- char * textboxFg, * textboxBg;
- char * actTextboxFg, * actTextboxBg;
- char * helpLineFg, * helpLineBg;
- char * rootTextFg, * rootTextBg;
- char * emptyScale, * fullScale;
- char * disabledEntryFg, * disabledEntryBg;
- char * compactButtonFg, * compactButtonBg;
- char * actSelListboxFg, * actSelListboxBg;
- char * selListboxFg, * selListboxBg;
-};
-
-enum newtFlagsSense { NEWT_FLAGS_SET, NEWT_FLAGS_RESET, NEWT_FLAGS_TOGGLE };
-
-#define NEWT_FLAG_RETURNEXIT (1 << 0)
-#define NEWT_FLAG_HIDDEN (1 << 1)
-#define NEWT_FLAG_SCROLL (1 << 2)
-#define NEWT_FLAG_DISABLED (1 << 3)
-/* OBSOLETE #define NEWT_FLAG_NOSCROLL (1 << 4) for listboxes */
-#define NEWT_FLAG_BORDER (1 << 5)
-#define NEWT_FLAG_WRAP (1 << 6)
-#define NEWT_FLAG_NOF12 (1 << 7)
-#define NEWT_FLAG_MULTIPLE (1 << 8)
-#define NEWT_FLAG_SELECTED (1 << 9)
-#define NEWT_FLAG_CHECKBOX (1 << 10)
-#define NEWT_FLAG_PASSWORD (1 << 11) /* draw '*' of chars in entrybox */
-#define NEWT_FD_READ (1 << 0)
-#define NEWT_FD_WRITE (1 << 1)
-
-#define NEWT_CHECKBOXTREE_COLLAPSED '\0'
-#define NEWT_CHECKBOXTREE_EXPANDED '\1'
-#define NEWT_CHECKBOXTREE_UNSELECTED ' '
-#define NEWT_CHECKBOXTREE_SELECTED '*'
-
-/* Backwards compatibility */
-#define NEWT_LISTBOX_RETURNEXIT NEWT_FLAG_RETURNEXIT
-#define NEWT_ENTRY_SCROLL NEWT_FLAG_SCROLL
-#define NEWT_ENTRY_HIDDEN NEWT_FLAG_HIDDEN
-#define NEWT_ENTRY_RETURNEXIT NEWT_FLAG_RETURNEXIT
-#define NEWT_ENTRY_DISABLED NEWT_FLAG_DISABLED
-
-#define NEWT_TEXTBOX_WRAP NEWT_FLAG_WRAP
-#define NEWT_TEXTBOX_SCROLL NEWT_FLAG_SCROLL
-#define NEWT_FORM_NOF12 NEWT_FLAG_NOF12
-
-#define newtListboxAddEntry newtListboxAppendEntry
-
-
-typedef struct newtComponent_struct * newtComponent;
-
-extern const struct newtColors newtDefaultColorPalette;
-
-typedef void (*newtCallback)(newtComponent, void *);
-typedef void (*newtSuspendCallback)(void * data);
-
-int newtInit(void);
-int newtFinished(void);
-void newtCls(void);
-void newtResizeScreen(int redraw);
-void newtWaitForKey(void);
-void newtClearKeyBuffer(void);
-void newtDelay(int usecs);
-/* top, left are *not* counting the border */
-int newtOpenWindow(int left, int top, int width, int height,
- const char * title);
-int newtCenteredWindow(int width, int height, const char * title);
-void newtPopWindow(void);
-void newtSetColors(struct newtColors colors);
-void newtRefresh(void);
-void newtSuspend(void);
-void newtSetSuspendCallback(newtSuspendCallback cb, void * data);
-void newtSetHelpCallback(newtCallback cb);
-void newtResume(void);
-void newtPushHelpLine(const char * text);
-void newtRedrawHelpLine(void);
-void newtPopHelpLine(void);
-void newtDrawRootText(int col, int row, const char * text);
-void newtBell(void);
-void newtCursorOff(void);
-void newtCursorOn(void);
-
-/* Components */
-
-newtComponent newtCompactButton(int left, int top, const char * text);
-newtComponent newtButton(int left, int top, const char * text);
-newtComponent newtCheckbox(int left, int top, const char * text, char defValue,
- const char * seq, char * result);
-char newtCheckboxGetValue(newtComponent co);
-void newtCheckboxSetValue(newtComponent co, char value);
-void newtCheckboxSetFlags(newtComponent co, int flags, enum newtFlagsSense sense);
-
-
-newtComponent newtRadiobutton(int left, int top, const char * text, int isDefault,
- newtComponent prevButton);
-newtComponent newtRadioGetCurrent(newtComponent setMember);
-newtComponent newtListitem(int left, int top, const char * text, int isDefault,
- newtComponent prevItem, const void * data, int flags);
-void newtListitemSet(newtComponent co, const char * text);
-void * newtListitemGetData(newtComponent co);
-void newtGetScreenSize(int * cols, int * rows);
-
-newtComponent newtLabel(int left, int top, const char * text);
-void newtLabelSetText(newtComponent co, const char * text);
-newtComponent newtVerticalScrollbar(int left, int top, int height,
- int normalColorset, int thumbColorset);
-void newtScrollbarSet(newtComponent co, int where, int total);
-
-newtComponent newtListbox(int left, int top, int height, int flags);
-void * newtListboxGetCurrent(newtComponent co);
-void newtListboxSetCurrent(newtComponent co, int num);
-void newtListboxSetCurrentByKey(newtComponent co, void * key);
-void newtListboxSetEntry(newtComponent co, int num, const char * text);
-void newtListboxSetWidth(newtComponent co, int width);
-void newtListboxSetData(newtComponent co, int num, void * data);
-int newtListboxAppendEntry(newtComponent co, const char * text,
- const void * data);
-/* Send the key to insert after, or NULL to insert at the top */
-int newtListboxInsertEntry(newtComponent co, const char * text, const void * data, void * key);
-int newtListboxDeleteEntry(newtComponent co, void * data);
-void newtListboxClear(newtComponent co); /* removes all entries from listbox */
-void newtListboxGetEntry(newtComponent co, int num, char **text, void **data);
-/* Returns an array of data pointers from items, last element is NULL */
-void **newtListboxGetSelection(newtComponent co, int *numitems);
-void newtListboxClearSelection(newtComponent co);
-void newtListboxSelectItem(newtComponent co, const void * key,
- enum newtFlagsSense sense);
-
-newtComponent newtCheckboxTree(int left, int top, int height, int flags);
-newtComponent newtCheckboxTreeMulti(int left, int top, int height, char *seq, int flags);
-const void ** newtCheckboxTreeGetSelection(newtComponent co, int *numitems);
-const void * newtCheckboxTreeGetCurrent(newtComponent co);
-const void ** newtCheckboxTreeGetMultiSelection(newtComponent co, int *numitems, char seqnum);
-/* last item is NEWT_ARG_LAST for all of these */
-int newtCheckboxTreeAddItem(newtComponent co,
- const char * text, const void * data,
- int flags, int index, ...);
-int newtCheckboxTreeAddArray(newtComponent co,
- const char * text, const void * data,
- int flags, int * indexes);
-int * newtCheckboxTreeFindItem(newtComponent co, void * data);
-void newtCheckboxTreeSetEntry(newtComponent co, const void * data,
- const char * text);
-char newtCheckboxTreeGetEntryValue(newtComponent co, const void * data);
-void newtCheckboxTreeSetEntryValue(newtComponent co, const void * data,
- char value);
-
-newtComponent newtTextboxReflowed(int left, int top, char * text, int width,
- int flexDown, int flexUp, int flags);
-newtComponent newtTextbox(int left, int top, int width, int height, int flags);
-void newtTextboxSetText(newtComponent co, const char * text);
-void newtTextboxSetHeight(newtComponent co, int height);
-int newtTextboxGetNumLines(newtComponent co);
-char * newtReflowText(char * text, int width, int flexDown, int flexUp,
- int * actualWidth, int * actualHeight);
-
-struct newtExitStruct {
- enum { NEWT_EXIT_HOTKEY, NEWT_EXIT_COMPONENT, NEWT_EXIT_FDREADY,
- NEWT_EXIT_TIMER } reason;
- union {
- int key;
- newtComponent co;
- } u;
-} ;
-
-newtComponent newtForm(newtComponent vertBar, void * helpTag, int flags);
-void newtFormSetTimer(newtComponent form, int millisecs);
-void newtFormWatchFd(newtComponent form, int fd, int fdFlags);
-void newtFormSetSize(newtComponent co);
-newtComponent newtFormGetCurrent(newtComponent co);
-void newtFormSetBackground(newtComponent co, int color);
-void newtFormSetCurrent(newtComponent co, newtComponent subco);
-void newtFormAddComponent(newtComponent form, newtComponent co);
-void newtFormAddComponents(newtComponent form, ...);
-void newtFormSetHeight(newtComponent co, int height);
-void newtFormSetWidth(newtComponent co, int width);
-newtComponent newtRunForm(newtComponent form); /* obsolete */
-void newtFormRun(newtComponent co, struct newtExitStruct * es);
-void newtDrawForm(newtComponent form);
-void newtFormAddHotKey(newtComponent co, int key);
-
-typedef int (*newtEntryFilter)(newtComponent entry, void * data, int ch,
- int cursor);
-newtComponent newtEntry(int left, int top, const char * initialValue, int width,
- char ** resultPtr, int flags);
-void newtEntrySet(newtComponent co, const char * value, int cursorAtEnd);
-void newtEntrySetFilter(newtComponent co, newtEntryFilter filter, void * data);
-char * newtEntryGetValue(newtComponent co);
-void newtEntrySetFlags(newtComponent co, int flags, enum newtFlagsSense sense);
-
-newtComponent newtScale(int left, int top, int width, int fullValue);
-void newtScaleSet(newtComponent co, unsigned int amount);
-
-void newtComponentAddCallback(newtComponent co, newtCallback f, void * data);
-void newtComponentTakesFocus(newtComponent co, int val);
-
-/* this also destroys all of the components (including other forms) on the
- form */
-void newtFormDestroy(newtComponent form);
-
-/* Key codes */
-
-#define NEWT_KEY_TAB '\t'
-#define NEWT_KEY_ENTER '\r'
-#define NEWT_KEY_SUSPEND '\032' /* ctrl - z*/
-#define NEWT_KEY_RETURN NEWT_KEY_ENTER
-
-#define NEWT_KEY_EXTRA_BASE 0x8000
-#define NEWT_KEY_UP NEWT_KEY_EXTRA_BASE + 1
-#define NEWT_KEY_DOWN NEWT_KEY_EXTRA_BASE + 2
-#define NEWT_KEY_LEFT NEWT_KEY_EXTRA_BASE + 4
-#define NEWT_KEY_RIGHT NEWT_KEY_EXTRA_BASE + 5
-#define NEWT_KEY_BKSPC NEWT_KEY_EXTRA_BASE + 6
-#define NEWT_KEY_DELETE NEWT_KEY_EXTRA_BASE + 7
-#define NEWT_KEY_HOME NEWT_KEY_EXTRA_BASE + 8
-#define NEWT_KEY_END NEWT_KEY_EXTRA_BASE + 9
-#define NEWT_KEY_UNTAB NEWT_KEY_EXTRA_BASE + 10
-#define NEWT_KEY_PGUP NEWT_KEY_EXTRA_BASE + 11
-#define NEWT_KEY_PGDN NEWT_KEY_EXTRA_BASE + 12
-#define NEWT_KEY_INSERT NEWT_KEY_EXTRA_BASE + 13
-
-#define NEWT_KEY_F1 NEWT_KEY_EXTRA_BASE + 101
-#define NEWT_KEY_F2 NEWT_KEY_EXTRA_BASE + 102
-#define NEWT_KEY_F3 NEWT_KEY_EXTRA_BASE + 103
-#define NEWT_KEY_F4 NEWT_KEY_EXTRA_BASE + 104
-#define NEWT_KEY_F5 NEWT_KEY_EXTRA_BASE + 105
-#define NEWT_KEY_F6 NEWT_KEY_EXTRA_BASE + 106
-#define NEWT_KEY_F7 NEWT_KEY_EXTRA_BASE + 107
-#define NEWT_KEY_F8 NEWT_KEY_EXTRA_BASE + 108
-#define NEWT_KEY_F9 NEWT_KEY_EXTRA_BASE + 109
-#define NEWT_KEY_F10 NEWT_KEY_EXTRA_BASE + 110
-#define NEWT_KEY_F11 NEWT_KEY_EXTRA_BASE + 111
-#define NEWT_KEY_F12 NEWT_KEY_EXTRA_BASE + 112
-
-/* not really a key, but newtGetKey returns it */
-#define NEWT_KEY_RESIZE NEWT_KEY_EXTRA_BASE + 113
-
-#define NEWT_ANCHOR_LEFT (1 << 0)
-#define NEWT_ANCHOR_RIGHT (1 << 1)
-#define NEWT_ANCHOR_TOP (1 << 2)
-#define NEWT_ANCHOR_BOTTOM (1 << 3)
-
-#define NEWT_GRID_FLAG_GROWX (1 << 0)
-#define NEWT_GRID_FLAG_GROWY (1 << 1)
-
-typedef struct grid_s * newtGrid;
-enum newtGridElement { NEWT_GRID_EMPTY = 0,
- NEWT_GRID_COMPONENT, NEWT_GRID_SUBGRID };
-
-newtGrid newtCreateGrid(int cols, int rows);
-/* TYPE, what, TYPE, what, ..., NULL */
-newtGrid newtGridVStacked(enum newtGridElement type, void * what, ...);
-newtGrid newtGridVCloseStacked(enum newtGridElement type, void * what, ...);
-newtGrid newtGridHStacked(enum newtGridElement type1, void * what1, ...);
-newtGrid newtGridHCloseStacked(enum newtGridElement type1, void * what1, ...);
-newtGrid newtGridBasicWindow(newtComponent text, newtGrid middle,
- newtGrid buttons);
-newtGrid newtGridSimpleWindow(newtComponent text, newtComponent middle,
- newtGrid buttons);
-void newtGridSetField(newtGrid grid, int col, int row,
- enum newtGridElement type, void * val, int padLeft,
- int padTop, int padRight, int padBottom, int anchor,
- int flags);
-void newtGridPlace(newtGrid grid, int left, int top);
-#define newtGridDestroy newtGridFree
-void newtGridFree(newtGrid grid, int recurse);
-void newtGridGetSize(newtGrid grid, int * width, int * height);
-void newtGridWrappedWindow(newtGrid grid, char * title);
-void newtGridWrappedWindowAt(newtGrid grid, char * title, int left, int top);
-void newtGridAddComponentsToForm(newtGrid grid, newtComponent form,
- int recurse);
-
-/* convienve */
-newtGrid newtButtonBarv(char * button1, newtComponent * b1comp, va_list args);
-newtGrid newtButtonBar(char * button1, newtComponent * b1comp, ...);
-
-/* automatically centered and shrink wrapped */
-void newtWinMessage(char * title, char * buttonText, char * text, ...);
-void newtWinMessagev(char * title, char * buttonText, char * text,
- va_list argv);
-
-/* having separate calls for these two seems silly, but having two separate
- variable length-arg lists seems like a bad idea as well */
-
-/* Returns 0 if F12 was pressed, 1 for button1, 2 for button2 */
-int newtWinChoice(char * title, char * button1, char * button2,
- char * text, ...);
-/* Returns 0 if F12 was pressed, 1 for button1, 2 for button2,
- 3 for button3 */
-int newtWinTernary(char * title, char * button1, char * button2,
- char * button3, char * message, ...);
-
-/* Returns the button number pressed, 0 on F12 */
-int newtWinMenu(char * title, char * text, int suggestedWidth, int flexDown,
- int flexUp, int maxListHeight, char ** items, int * listItem,
- char * button1, ...);
-
-struct newtWinEntry {
- char * text;
- char ** value; /* may be initialized to set default */
- int flags;
-};
-
-/* Returns the button number pressed, 0 on F12. The final values are
- dynamically allocated, and need to be freed. */
-int newtWinEntries(char * title, char * text, int suggestedWidth, int flexDown,
- int flexUp, int dataWidth,
- struct newtWinEntry * items, char * button1, ...);
-
-#ifdef __cplusplus
-} /* End of extern "C" { */
-#endif
-
-#endif /* H_NEWT */
diff --git a/mdk-stage1/newt/newt_pr.h b/mdk-stage1/newt/newt_pr.h
deleted file mode 100644
index 76f5e2f6f..000000000
--- a/mdk-stage1/newt/newt_pr.h
+++ /dev/null
@@ -1,82 +0,0 @@
-#ifndef H_NEWT_PR
-#define H_NEWT_PR
-
-#define COLORSET_ROOT NEWT_COLORSET_ROOT
-#define COLORSET_BORDER NEWT_COLORSET_BORDER
-#define COLORSET_WINDOW NEWT_COLORSET_WINDOW
-#define COLORSET_SHADOW NEWT_COLORSET_SHADOW
-#define COLORSET_TITLE NEWT_COLORSET_TITLE
-#define COLORSET_BUTTON NEWT_COLORSET_BUTTON
-#define COLORSET_ACTBUTTON NEWT_COLORSET_ACTBUTTON
-#define COLORSET_CHECKBOX NEWT_COLORSET_CHECKBOX
-#define COLORSET_ACTCHECKBOX NEWT_COLORSET_ACTCHECKBOX
-#define COLORSET_ENTRY NEWT_COLORSET_ENTRY
-#define COLORSET_LABEL NEWT_COLORSET_LABEL
-#define COLORSET_LISTBOX NEWT_COLORSET_LISTBOX
-#define COLORSET_ACTLISTBOX NEWT_COLORSET_ACTLISTBOX
-#define COLORSET_TEXTBOX NEWT_COLORSET_TEXTBOX
-#define COLORSET_ACTTEXTBOX NEWT_COLORSET_ACTTEXTBOX
-
-int newtSetFlags(int oldFlags, int newFlags, enum newtFlagsSense sense);
-
-void newtGotorc(int row, int col);
-void newtGetrc(int * row, int * col);
-void newtGetWindowPos(int * x, int * y);
-void newtDrawBox(int left, int top, int width, int height, int shadow);
-void newtClearBox(int left, int top, int width, int height);
-
-int newtGetKey(void);
-
-struct newtComponent_struct {
- /* common data */
- int height, width;
- int top, left;
- int takesFocus;
- int isMapped;
-
- struct componentOps * ops;
-
- newtCallback callback;
- void * callbackData;
-
- void * data;
-} ;
-
-enum eventResultTypes { ER_IGNORED, ER_SWALLOWED, ER_EXITFORM, ER_SETFOCUS,
- ER_NEXTCOMP };
-struct eventResult {
- enum eventResultTypes result;
- union {
- newtComponent focus;
- } u;
-};
-
-enum eventTypes { EV_FOCUS, EV_UNFOCUS, EV_KEYPRESS, EV_MOUSE };
-enum eventSequence { EV_EARLY, EV_NORMAL, EV_LATE };
-
-struct event {
- enum eventTypes event;
- enum eventSequence when;
- union {
- int key;
- struct {
- enum { MOUSE_MOTION, MOUSE_BUTTON_DOWN, MOUSE_BUTTON_UP } type;
- int x, y;
- } mouse;
- } u;
-} ;
-
-struct componentOps {
- void (* draw)(newtComponent c);
- struct eventResult (* event)(newtComponent c, struct event ev);
- void (* destroy)(newtComponent c);
- void (* place)(newtComponent c, int newLeft, int newTop);
- void (* mapped)(newtComponent c, int isMapped);
-} ;
-
-void newtDefaultPlaceHandler(newtComponent c, int newLeft, int newTop);
-void newtDefaultMappedHandler(newtComponent c, int isMapped);
-struct eventResult newtDefaultEventHandler(newtComponent c,
- struct event ev);
-
-#endif /* H_NEWT_PR */
diff --git a/mdk-stage1/newt/scale.c b/mdk-stage1/newt/scale.c
deleted file mode 100644
index 800958580..000000000
--- a/mdk-stage1/newt/scale.c
+++ /dev/null
@@ -1,72 +0,0 @@
-#include <slang.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-struct scale {
- int fullValue;
- int charsSet;
-};
-
-static void scaleDraw(newtComponent co);
-
-static struct componentOps scaleOps = {
- scaleDraw,
- newtDefaultEventHandler,
- NULL,
- newtDefaultPlaceHandler,
- newtDefaultMappedHandler,
-} ;
-
-newtComponent newtScale(int left, int top, int width, int fullValue) {
- newtComponent co;
- struct scale * sc;
-
- co = malloc(sizeof(*co));
- sc = malloc(sizeof(struct scale));
- co->data = sc;
-
- co->ops = &scaleOps;
-
- co->height = 1;
- co->width = width;
- co->top = top;
- co->left = left;
- co->takesFocus = 0;
-
- sc->fullValue = fullValue;
- sc->charsSet = 0;
-
- return co;
-}
-
-void newtScaleSet(newtComponent co, unsigned int amount) {
- struct scale * sc = co->data;
- int newCharsSet;
-
- newCharsSet = (amount * co->width) / sc->fullValue;
-
- if (newCharsSet != sc->charsSet) {
- sc->charsSet = newCharsSet;
- scaleDraw(co);
- }
-}
-
-static void scaleDraw(newtComponent co) {
- struct scale * sc = co->data;
- int i;
-
- if (co->top == -1) return;
-
- newtGotorc(co->top, co->left);
-
- SLsmg_set_color(NEWT_COLORSET_FULLSCALE);
- for (i = 0; i < sc->charsSet; i++)
- SLsmg_write_string(" ");
-
- SLsmg_set_color(NEWT_COLORSET_EMPTYSCALE);
- for (i = 0; i < (co->width - sc->charsSet); i++)
- SLsmg_write_string(" ");
-}
diff --git a/mdk-stage1/newt/scrollbar.c b/mdk-stage1/newt/scrollbar.c
deleted file mode 100644
index cb4bc2757..000000000
--- a/mdk-stage1/newt/scrollbar.c
+++ /dev/null
@@ -1,124 +0,0 @@
-#include <slang.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-struct scrollbar {
- int curr;
- int cs, csThumb;
- int arrows;
-} ;
-
-static void sbDraw(newtComponent co);
-static void sbDestroy(newtComponent co);
-static void sbDrawThumb(newtComponent co, int isOn);
-
-static struct componentOps sbOps = {
- sbDraw,
- newtDefaultEventHandler,
- sbDestroy,
- newtDefaultPlaceHandler,
- newtDefaultMappedHandler,
-} ;
-
-void newtScrollbarSet(newtComponent co, int where, int total) {
- struct scrollbar * sb = co->data;
- int new;
-
- if (sb->arrows)
- new = (where * (co->height - 3)) / (total ? total : 1) + 1;
- else
- new = (where * (co->height - 1)) / (total ? total : 1);
- if (new != sb->curr) {
- sbDrawThumb(co, 0);
- sb->curr = new;
- sbDrawThumb(co, 1);
- }
-}
-
-newtComponent newtVerticalScrollbar(int left, int top, int height,
- int normalColorset, int thumbColorset) {
- newtComponent co;
- struct scrollbar * sb;
-
- co = malloc(sizeof(*co));
- sb = malloc(sizeof(*sb));
- co->data = sb;
-
- if (!strcmp(getenv("TERM"), "linux") && height >= 2) {
- sb->arrows = 1;
- sb->curr = 1;
- } else {
- sb->arrows = 0;
- sb->curr = 0;
- }
- sb->cs = normalColorset;
- sb->csThumb = thumbColorset;
-
- co->ops = &sbOps;
- co->isMapped = 0;
- co->left = left;
- co->top = top;
- co->height = height;
- co->width = 1;
- co->takesFocus = 0;
-
- return co;
-}
-
-static void sbDraw(newtComponent co) {
- struct scrollbar * sb = co->data;
- int i;
-
- if (!co->isMapped) return;
-
- SLsmg_set_color(sb->cs);
-
- SLsmg_set_char_set(1);
- if (sb->arrows) {
- newtGotorc(co->top, co->left);
- SLsmg_write_char('\x2d');
- for (i = 1; i < co->height - 1; i++) {
- newtGotorc(i + co->top, co->left);
- SLsmg_write_char('\x61');
- }
- newtGotorc(co->top + co->height - 1, co->left);
- SLsmg_write_char('\x2e');
- } else {
- for (i = 0; i < co->height; i++) {
- newtGotorc(i + co->top, co->left);
- SLsmg_write_char('\x61');
- }
- }
-
- SLsmg_set_char_set(0);
-
- sbDrawThumb(co, 1);
-}
-
-static void sbDrawThumb(newtComponent co, int isOn) {
- struct scrollbar * sb = co->data;
- char ch = isOn ? '#' : '\x61';
-
- if (!co->isMapped) return;
-
- newtGotorc(sb->curr + co->top, co->left);
- SLsmg_set_char_set(1);
-
- /*if (isOn)
- SLsmg_set_color(sb->csThumb);
- else*/
- SLsmg_set_color(sb->cs);
-
- SLsmg_write_char(ch);
- SLsmg_set_char_set(0);
-}
-
-static void sbDestroy(newtComponent co) {
- struct scrollbar * sb = co->data;
-
- free(sb);
- free(co);
-}
diff --git a/mdk-stage1/newt/textbox.c b/mdk-stage1/newt/textbox.c
deleted file mode 100644
index 8eb4ae4db..000000000
--- a/mdk-stage1/newt/textbox.c
+++ /dev/null
@@ -1,409 +0,0 @@
-#include <ctype.h>
-#include <slang.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "newt.h"
-#include "newt_pr.h"
-
-struct textbox {
- char ** lines;
- int numLines;
- int linesAlloced;
- int doWrap;
- newtComponent sb;
- int topLine;
- int textWidth;
-};
-
-static char * expandTabs(const char * text);
-static void textboxDraw(newtComponent co);
-static void addLine(newtComponent co, const char * s, int len);
-static void doReflow(const char * text, char ** resultPtr, int width,
- int * badness, int * heightPtr);
-static struct eventResult textboxEvent(newtComponent c,
- struct event ev);
-static void textboxDestroy(newtComponent co);
-static void textboxPlace(newtComponent co, int newLeft, int newTop);
-static void textboxMapped(newtComponent co, int isMapped);
-
-static struct componentOps textboxOps = {
- textboxDraw,
- textboxEvent,
- textboxDestroy,
- textboxPlace,
- textboxMapped,
-} ;
-
-static void textboxMapped(newtComponent co, int isMapped) {
- struct textbox * tb = co->data;
-
- co->isMapped = isMapped;
- if (tb->sb)
- tb->sb->ops->mapped(tb->sb, isMapped);
-}
-
-static void textboxPlace(newtComponent co, int newLeft, int newTop) {
- struct textbox * tb = co->data;
-
- co->top = newTop;
- co->left = newLeft;
-
- if (tb->sb)
- tb->sb->ops->place(tb->sb, co->left + co->width - 1, co->top);
-}
-
-void newtTextboxSetHeight(newtComponent co, int height) {
- co->height = height;
-}
-
-int newtTextboxGetNumLines(newtComponent co) {
- struct textbox * tb = co->data;
-
- return (tb->numLines);
-}
-
-newtComponent newtTextboxReflowed(int left, int top, char * text, int width,
- int flexDown, int flexUp, int flags __attribute__ ((unused))) {
- newtComponent co;
- char * reflowedText;
- int actWidth, actHeight;
-
- reflowedText = newtReflowText(text, width, flexDown, flexUp,
- &actWidth, &actHeight);
-
- co = newtTextbox(left, top, actWidth, actHeight, NEWT_FLAG_WRAP);
- newtTextboxSetText(co, reflowedText);
- free(reflowedText);
-
- return co;
-}
-
-newtComponent newtTextbox(int left, int top, int width, int height, int flags) {
- newtComponent co;
- struct textbox * tb;
-
- co = malloc(sizeof(*co));
- tb = malloc(sizeof(*tb));
- co->data = tb;
-
- co->ops = &textboxOps;
-
- co->height = height;
- co->top = top;
- co->left = left;
- co->takesFocus = 0;
- co->width = width;
-
- tb->doWrap = flags & NEWT_FLAG_WRAP;
- tb->numLines = 0;
- tb->linesAlloced = 0;
- tb->lines = NULL;
- tb->topLine = 0;
- tb->textWidth = width;
-
- if (flags & NEWT_FLAG_SCROLL) {
- co->width += 2;
- tb->sb = newtVerticalScrollbar(co->left + co->width - 1, co->top,
- co->height, COLORSET_TEXTBOX, COLORSET_TEXTBOX);
- } else {
- tb->sb = NULL;
- }
-
- return co;
-}
-
-static char * expandTabs(const char * text) {
- int bufAlloced = strlen(text) + 40;
- char * buf, * dest;
- const char * src;
- int bufUsed = 0;
- int linePos = 0;
- int i;
-
- buf = malloc(bufAlloced + 1);
- for (src = text, dest = buf; *src; src++) {
- if ((bufUsed + 10) > bufAlloced) {
- bufAlloced += strlen(text) / 2;
- buf = realloc(buf, bufAlloced + 1);
- dest = buf + bufUsed;
- }
- if (*src == '\t') {
- i = 8 - (linePos & 8);
- memset(dest, ' ', i);
- dest += i, bufUsed += i, linePos += i;
- } else {
- if (*src == '\n')
- linePos = 0;
- else
- linePos++;
-
- *dest++ = *src;
- bufUsed++;
- }
- }
-
- *dest = '\0';
- return buf;
-}
-
-#define iseuckanji(c) (0xa1 <= (unsigned char)(c&0xff) && (unsigned char)(c&0xff) <= 0xfe)
-
-static void doReflow(const char * text, char ** resultPtr, int width,
- int * badness, int * heightPtr) {
- char * result = NULL;
- const char * chptr, * end;
- int i;
- int howbad = 0;
- int height = 0;
- int kanji = 0;
-
- if (resultPtr) {
- /* XXX I think this will work */
- result = malloc(strlen(text) + (strlen(text) / width) + 50);
- *result = '\0';
- }
-
- while (*text) {
- kanji = 0;
- end = strchr(text, '\n');
- if (!end)
- end = text + strlen(text);
-
- while (*text && text < end) {
- if (end - text < width) {
- if (result) {
- strncat(result, text, end - text);
- strcat(result, "\n");
- height++;
- }
-
- if (end - text < (width / 2))
- howbad += ((width / 2) - (end - text)) / 2;
- text = end;
- if (*text) text++;
- } else {
- chptr = text;
- kanji = 0;
- for ( i = 0; i < width - 1; i++ ) {
- if ( !iseuckanji(*chptr)) {
- kanji = 0;
- } else if ( kanji == 1 ) {
- kanji = 2;
- } else {
- kanji = 1;
- }
- chptr++;
- }
- if (kanji == 0) {
- while (chptr > text && !isspace(*chptr)) chptr--;
- while (chptr > text && isspace(*chptr)) chptr--;
- chptr++;
- }
-
- if (chptr-text == 1 && !isspace(*chptr))
- chptr = text + width - 1;
-
- if (chptr > text)
- howbad += width - (chptr - text) + 1;
- if (result) {
- if (kanji == 1) {
- strncat(result, text, chptr - text + 1);
- chptr++;
- kanji = 0;
- } else {
- strncat(result, text, chptr - text);
- }
- strcat(result, "\n");
- height++;
- }
-
- if (isspace(*chptr))
- text = chptr + 1;
- else
- text = chptr;
- while (isspace(*text)) text++;
- }
- }
- }
-
-// if (result) printf("result: %s\n", result);
-
- if (badness) *badness = howbad;
- if (resultPtr) *resultPtr = result;
- if (heightPtr) *heightPtr = height;
-}
-
-char * newtReflowText(char * text, int width, int flexDown, int flexUp,
- int * actualWidth, int * actualHeight) {
- int min, max;
- int i;
- char * result;
- int minbad, minbadwidth, howbad;
- char * expandedText;
-
- expandedText = expandTabs(text);
-
- if (flexDown || flexUp) {
- min = width - flexDown;
- max = width + flexUp;
-
- minbad = -1;
- minbadwidth = width;
-
- for (i = min; i <= max; i++) {
- doReflow(expandedText, NULL, i, &howbad, NULL);
-
- if (minbad == -1 || howbad < minbad) {
- minbad = howbad;
- minbadwidth = i;
- }
- }
-
- width = minbadwidth;
- }
-
- doReflow(expandedText, &result, width, NULL, actualHeight);
- free(expandedText);
- if (actualWidth) *actualWidth = width;
- return result;
-}
-
-void newtTextboxSetText(newtComponent co, const char * text) {
- const char * start, * end;
- struct textbox * tb = co->data;
- char * reflowed, * expanded;
- int badness, height;
-
- if (tb->lines) {
- free(tb->lines);
- tb->linesAlloced = tb->numLines = 0;
- }
-
- expanded = expandTabs(text);
-
- if (tb->doWrap) {
- doReflow(expanded, &reflowed, tb->textWidth, &badness, &height);
- free(expanded);
- expanded = reflowed;
- }
-
- for (start = expanded; *start; start++)
- if (*start == '\n') tb->linesAlloced++;
-
- /* This ++ leaves room for an ending line w/o a \n */
- tb->linesAlloced++;
- tb->lines = malloc(sizeof(char *) * tb->linesAlloced);
-
- start = expanded;
- while ((end = strchr(start, '\n'))) {
- addLine(co, start, end - start);
- start = end + 1;
- }
-
- if (*start)
- addLine(co, start, strlen(start));
-
- free(expanded);
-}
-
-/* This assumes the buffer is allocated properly! */
-static void addLine(newtComponent co, const char * s, int len) {
- struct textbox * tb = co->data;
-
- if (len > tb->textWidth) len = tb->textWidth;
-
- tb->lines[tb->numLines] = malloc(tb->textWidth + 1);
- memset(tb->lines[tb->numLines], ' ', tb->textWidth);
- memcpy(tb->lines[tb->numLines], s, len);
- tb->lines[tb->numLines++][tb->textWidth] = '\0';
-}
-
-static void textboxDraw(newtComponent c) {
- int i;
- struct textbox * tb = c->data;
- int size;
-
- if (tb->sb) {
- size = tb->numLines - c->height;
- newtScrollbarSet(tb->sb, tb->topLine, size ? size : 0);
- tb->sb->ops->draw(tb->sb);
- }
-
- SLsmg_set_color(NEWT_COLORSET_TEXTBOX);
-
- for (i = 0; (i + tb->topLine) < tb->numLines && i < c->height; i++) {
- newtGotorc(c->top + i, c->left);
- SLsmg_write_string(tb->lines[i + tb->topLine]);
- }
-}
-
-static struct eventResult textboxEvent(newtComponent co,
- struct event ev) {
- struct textbox * tb = co->data;
- struct eventResult er;
-
- er.result = ER_IGNORED;
-
- if (ev.when == EV_EARLY && ev.event == EV_KEYPRESS && tb->sb) {
- switch (ev.u.key) {
- case NEWT_KEY_UP:
- if (tb->topLine) tb->topLine--;
- textboxDraw(co);
- er.result = ER_SWALLOWED;
- break;
-
- case NEWT_KEY_DOWN:
- if (tb->topLine < (tb->numLines - co->height)) tb->topLine++;
- textboxDraw(co);
- er.result = ER_SWALLOWED;
- break;
-
- case NEWT_KEY_PGDN:
- tb->topLine += co->height;
- if (tb->topLine > (tb->numLines - co->height)) {
- tb->topLine = tb->numLines - co->height;
- if (tb->topLine < 0) tb->topLine = 0;
- }
- textboxDraw(co);
- er.result = ER_SWALLOWED;
- break;
-
- case NEWT_KEY_PGUP:
- tb->topLine -= co->height;
- if (tb->topLine < 0) tb->topLine = 0;
- textboxDraw(co);
- er.result = ER_SWALLOWED;
- break;
- }
- }
- if (ev.when == EV_EARLY && ev.event == EV_MOUSE && tb->sb) {
- /* Top scroll arrow */
- if (ev.u.mouse.x == co->width && ev.u.mouse.y == co->top) {
- if (tb->topLine) tb->topLine--;
- textboxDraw(co);
-
- er.result = ER_SWALLOWED;
- }
- /* Bottom scroll arrow */
- if (ev.u.mouse.x == co->width &&
- ev.u.mouse.y == co->top + co->height - 1) {
- if (tb->topLine < (tb->numLines - co->height)) tb->topLine++;
- textboxDraw(co);
-
- er.result = ER_SWALLOWED;
- }
- }
- return er;
-}
-
-static void textboxDestroy(newtComponent co) {
- int i;
- struct textbox * tb = co->data;
-
- for (i = 0; i < tb->numLines; i++)
- free(tb->lines[i]);
- free(tb->lines);
- free(tb);
- free(co);
-}
diff --git a/mdk-stage1/newt/windows.c b/mdk-stage1/newt/windows.c
deleted file mode 100644
index 30a8d526c..000000000
--- a/mdk-stage1/newt/windows.c
+++ /dev/null
@@ -1,275 +0,0 @@
-#include <errno.h>
-#include <stdarg.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "errno.h"
-#include "newt.h"
-
-static void * newtvwindow(char * title, char * button1, char * button2,
- char * button3, char * message, va_list args) {
- newtComponent b1, b2 = NULL, b3 = NULL, t, f, answer;
- char * buf = NULL;
- int size = 0;
- int i = 0;
- int scroll = 0;
- int width, height;
- char * flowedText;
- newtGrid grid, buttonGrid;
-
- do {
- size += 1000;
- if (buf) free(buf);
- buf = malloc(size);
- i = vsnprintf(buf, size, message, args);
- } while (i >= size || i == -1);
-
- flowedText = newtReflowText(buf, 50, 5, 5, &width, &height);
- if (height > 6) {
- free(flowedText);
- flowedText = newtReflowText(buf, 60, 5, 5, &width, &height);
- }
- free(buf);
-
- if (height > 12) {
- height = 12;
- scroll = NEWT_FLAG_SCROLL;
- }
- t = newtTextbox(-1, -1, width, height, NEWT_TEXTBOX_WRAP | scroll);
- newtTextboxSetText(t, flowedText);
- free(flowedText);
-
- if (button3) {
- buttonGrid = newtButtonBar(button1, &b1, button2, &b2,
- button3, &b3, NULL);
- } else if (button2) {
- buttonGrid = newtButtonBar(button1, &b1, button2, &b2, NULL);
- } else {
- buttonGrid = newtButtonBar(button1, &b1, NULL);
- }
-
- newtGridSetField(buttonGrid, 0, 0, NEWT_GRID_COMPONENT, b1,
- 0, 0, button2 ? 1 : 0, 0, 0, 0);
-
- grid = newtCreateGrid(1, 2);
- newtGridSetField(grid, 0, 0, NEWT_GRID_COMPONENT, t, 0, 0, 0, 0, 0, 0);
- newtGridSetField(grid, 0, 1, NEWT_GRID_SUBGRID, buttonGrid,
- 0, 1, 0, 0, 0, NEWT_GRID_FLAG_GROWX);
- newtGridWrappedWindow(grid, title);
-
- f = newtForm(NULL, NULL, 0);
- newtFormAddComponents(f, t, b1, NULL);
-
- if (button2)
- newtFormAddComponent(f, b2);
- if (button3)
- newtFormAddComponent(f, b3);
-
- answer = newtRunForm(f);
- newtGridFree(grid, 1);
-
- newtFormDestroy(f);
- newtPopWindow();
-
- if (answer == f)
- return NULL;
- else if (answer == b1)
- return button1;
- else if (answer == b2)
- return button2;
-
- return button3;
-}
-
-int newtWinChoice(char * title, char * button1, char * button2,
- char * message, ...) {
- va_list args;
- void * rc;
-
- va_start(args, message);
- rc = newtvwindow(title, button1, button2, NULL, message, args);
- va_end(args);
-
- if (rc == button1)
- return 1;
- else if (rc == button2)
- return 2;
-
- return 0;
-}
-
-void newtWinMessage(char * title, char * buttonText, char * text, ...) {
- va_list args;
-
- va_start(args, text);
- newtvwindow(title, buttonText, NULL, NULL, text, args);
- va_end(args);
-}
-
-void newtWinMessagev(char * title, char * buttonText, char * text,
- va_list argv) {
- newtvwindow(title, buttonText, NULL, NULL, text, argv);
-}
-
-int newtWinTernary(char * title, char * button1, char * button2,
- char * button3, char * message, ...) {
- va_list args;
- void * rc;
-
- va_start(args, message);
- rc = newtvwindow(title, button1, button2, button3, message, args);
- va_end(args);
-
- if (rc == button1)
- return 1;
- else if (rc == button2)
- return 2;
- else if (rc == button3)
- return 3;
-
- return 0;
-}
-
-/* only supports up to 50 buttons -- shucks! */
-int newtWinMenu(char * title, char * text, int suggestedWidth, int flexDown,
- int flexUp, int maxListHeight, char ** items, int * listItem,
- char * button1, ...) {
- newtComponent textbox, listbox, result, form;
- va_list args;
- newtComponent buttons[50];
- newtGrid grid, buttonBar;
- int numButtons;
- int i, rc;
- int needScroll;
- char * buttonName;
-
- textbox = newtTextboxReflowed(-1, -1, text, suggestedWidth, flexDown,
- flexUp, 0);
-
- for (i = 0; items[i]; i++) ;
- if (i < maxListHeight) maxListHeight = i;
- needScroll = i > maxListHeight;
-
- listbox = newtListbox(-1, -1, maxListHeight,
- (needScroll ? NEWT_FLAG_SCROLL : 0) | NEWT_FLAG_RETURNEXIT);
- for (i = 0; items[i]; i++) {
- newtListboxAddEntry(listbox, items[i], (void *) (long)i);
- }
-
- newtListboxSetCurrent(listbox, *listItem);
-
- buttonName = button1, numButtons = 0;
- va_start(args, button1);
- while (buttonName) {
- buttons[numButtons] = newtButton(-1, -1, buttonName);
- numButtons++;
- buttonName = va_arg(args, char *);
- }
-
- va_end(args);
-
- buttonBar = newtCreateGrid(numButtons, 1);
- for (i = 0; i < numButtons; i++) {
- newtGridSetField(buttonBar, i, 0, NEWT_GRID_COMPONENT,
- buttons[i],
- i ? 1 : 0, 0, 0, 0, 0, 0);
- }
-
- grid = newtGridSimpleWindow(textbox, listbox, buttonBar);
- newtGridWrappedWindow(grid, title);
-
- form = newtForm(NULL, 0, 0);
- newtGridAddComponentsToForm(grid, form, 1);
- newtGridFree(grid, 1);
-
- result = newtRunForm(form);
-
- *listItem = ((long) newtListboxGetCurrent(listbox));
-
- for (rc = 0; result != buttons[rc] && rc < numButtons; rc++);
- if (rc == numButtons)
- rc = 0; /* F12 or return-on-exit (which are the same for us) */
- else
- rc++;
-
- newtFormDestroy(form);
- newtPopWindow();
-
- return rc;
-}
-
-/* only supports up to 50 buttons and entries -- shucks! */
-int newtWinEntries(char * title, char * text, int suggestedWidth, int flexDown,
- int flexUp, int dataWidth,
- struct newtWinEntry * items, char * button1, ...) {
- newtComponent buttons[50], result, form, textw;
- newtGrid grid, buttonBar, subgrid;
- int numItems;
- int rc, i;
- int numButtons;
- char * buttonName;
- va_list args;
-
- textw = newtTextboxReflowed(-1, -1, text, suggestedWidth, flexDown,
- flexUp, 0);
-
- for (numItems = 0; items[numItems].text; numItems++);
-
- buttonName = button1, numButtons = 0;
- va_start(args, button1);
- while (buttonName) {
- buttons[numButtons] = newtButton(-1, -1, buttonName);
- numButtons++;
- buttonName = va_arg(args, char *);
- }
-
- va_end(args);
-
- buttonBar = newtCreateGrid(numButtons, 1);
- for (i = 0; i < numButtons; i++) {
- newtGridSetField(buttonBar, i, 0, NEWT_GRID_COMPONENT,
- buttons[i],
- i ? 1 : 0, 0, 0, 0, 0, 0);
- }
-
- subgrid = newtCreateGrid(2, numItems);
- for (i = 0; i < numItems; i++) {
- newtGridSetField(subgrid, 0, i, NEWT_GRID_COMPONENT,
- newtLabel(-1, -1, items[i].text),
- 0, 0, 0, 0, NEWT_ANCHOR_LEFT, 0);
- newtGridSetField(subgrid, 1, i, NEWT_GRID_COMPONENT,
- newtEntry(-1, -1, items[i].value ?
- *items[i].value : NULL, dataWidth,
- items[i].value, items[i].flags),
- 1, 0, 0, 0, 0, 0);
- }
-
- grid = newtCreateGrid(1, 3);
- form = newtForm(NULL, 0, 0);
- newtGridSetField(grid, 0, 0, NEWT_GRID_COMPONENT, textw,
- 0, 0, 0, 0, NEWT_ANCHOR_LEFT, 0);
- newtGridSetField(grid, 0, 1, NEWT_GRID_SUBGRID, subgrid,
- 0, 1, 0, 0, 0, 0);
- newtGridSetField(grid, 0, 2, NEWT_GRID_SUBGRID, buttonBar,
- 0, 1, 0, 0, 0, NEWT_GRID_FLAG_GROWX);
- newtGridAddComponentsToForm(grid, form, 1);
- newtGridWrappedWindow(grid, title);
- newtGridFree(grid, 1);
-
- result = newtRunForm(form);
-
- for (rc = 0; rc < numItems; rc++)
- *items[rc].value = strdup(*items[rc].value);
-
- for (rc = 0; result != buttons[rc] && rc < numButtons; rc++);
- if (rc == numButtons)
- rc = 0; /* F12 */
- else
- rc++;
-
- newtFormDestroy(form);
- newtPopWindow();
-
- return rc;
-}
diff --git a/mdk-stage1/nfs_mount4.h b/mdk-stage1/nfs_mount4.h
deleted file mode 100644
index 85650773a..000000000
--- a/mdk-stage1/nfs_mount4.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * We want to be able to compile mount on old kernels in such a way
- * that the binary will work well on more recent kernels.
- * Thus, if necessary we teach nfsmount.c the structure of new fields
- * that will come later.
- *
- * Moreover, the new kernel includes conflict with glibc includes
- * so it is easiest to ignore the kernel altogether (at compile time).
- */
-
-#define NFS_MOUNT_VERSION 4
-
-struct nfs2_fh {
- char data[32];
-};
-struct nfs3_fh {
- unsigned short size;
- unsigned char data[64];
-};
-
-struct nfs_mount_data {
- int version; /* 1 */
- int fd; /* 1 */
- struct nfs2_fh old_root; /* 1 */
- int flags; /* 1 */
- int rsize; /* 1 */
- int wsize; /* 1 */
- int timeo; /* 1 */
- int retrans; /* 1 */
- int acregmin; /* 1 */
- int acregmax; /* 1 */
- int acdirmin; /* 1 */
- int acdirmax; /* 1 */
- struct sockaddr_in addr; /* 1 */
- char hostname[256]; /* 1 */
- int namlen; /* 2 */
- unsigned int bsize; /* 3 */
- struct nfs3_fh root; /* 4 */
-};
-
-/* bits in the flags field */
-
-#define NFS_MOUNT_SOFT 0x0001 /* 1 */
-#define NFS_MOUNT_INTR 0x0002 /* 1 */
-#define NFS_MOUNT_SECURE 0x0004 /* 1 */
-#define NFS_MOUNT_POSIX 0x0008 /* 1 */
-#define NFS_MOUNT_NOCTO 0x0010 /* 1 */
-#define NFS_MOUNT_NOAC 0x0020 /* 1 */
-#define NFS_MOUNT_TCP 0x0040 /* 2 */
-#define NFS_MOUNT_VER3 0x0080 /* 3 */
-#define NFS_MOUNT_KERBEROS 0x0100 /* 3 */
-#define NFS_MOUNT_NONLM 0x0200 /* 3 */
-#define NFS_MOUNT_BROKEN_SUID 0x0400 /* 4 */
-
diff --git a/mdk-stage1/nfsmount.c b/mdk-stage1/nfsmount.c
deleted file mode 100644
index 85ffb25c1..000000000
--- a/mdk-stage1/nfsmount.c
+++ /dev/null
@@ -1,740 +0,0 @@
- /*
- * Guillaume Cottenceau (gc@mandriva.com)
- *
- * Copyright 2003 Mandriva
- *
- * This software may be freely redistributed under the terms of the GNU
- * public license.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- * basing on nfsmount.c from util-linux-2.11z:
- * - use our logging facilities
- * - use our host resolving stuff
- * - remove unneeded code
- */
-
-/*
- * nfsmount.c -- Linux NFS mount
- * Copyright (C) 1993 Rick Sladkey <jrs@world.std.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * Wed Feb 8 12:51:48 1995, biro@yggdrasil.com (Ross Biro): allow all port
- * numbers to be specified on the command line.
- *
- * Fri, 8 Mar 1996 18:01:39, Swen Thuemmler <swen@uni-paderborn.de>:
- * Omit the call to connect() for Linux version 1.3.11 or later.
- *
- * Wed Oct 1 23:55:28 1997: Dick Streefland <dick_streefland@tasking.com>
- * Implemented the "bg", "fg" and "retry" mount options for NFS.
- *
- * 1999-02-22 Arkadiusz Miśkiewicz <misiek@pld.ORG.PL>
- * - added Native Language Support
- *
- * Modified by Olaf Kirch and Trond Myklebust for new NFS code,
- * plus NFSv3 stuff.
- *
- * 2003-04-14 David Black <david.black@xilinx.com>
- * - added support for multiple hostname NFS mounts
- */
-
-/*
- * nfsmount.c,v 1.1.1.1 1993/11/18 08:40:51 jrs Exp
- */
-
-#define HAVE_rpcsvc_nfs_prot_h
-#define HAVE_inet_aton
-
-#include <unistd.h>
-#include <stdio.h>
-#include <string.h>
-#include <errno.h>
-#include <netdb.h>
-#include <time.h>
-#include <rpc/rpc.h>
-#include <rpc/pmap_prot.h>
-#include <rpc/pmap_clnt.h>
-#include <sys/socket.h>
-#include <sys/time.h>
-#include <sys/utsname.h>
-#include <sys/stat.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-#include <values.h>
-
-#include "nfsmount.h"
-
-#ifdef HAVE_rpcsvc_nfs_prot_h
-#include <rpcsvc/nfs_prot.h>
-#else
-#include <linux/nfs.h>
-#define nfsstat nfs_stat
-#endif
-
-#include "nfs_mount4.h"
-
-#include "log.h"
-#include "dns.h"
-
-#ifndef NFS_PORT
-#define NFS_PORT 2049
-#endif
-#ifndef NFS_FHSIZE
-#define NFS_FHSIZE 32
-#endif
-
-static char *nfs_strerror(int stat);
-
-#define MAKE_VERSION(p,q,r) (65536*(p) + 256*(q) + (r))
-
-#define MAX_NFSPROT ((nfs_mount_version >= 4) ? 3 : 2)
-
-bool_t
-xdr_fhandle3 (XDR *xdrs, fhandle3 *objp)
-{
- if (!xdr_bytes (xdrs, (char **)&objp->fhandle3_val, (u_int *) &objp->fhandle3_len, FHSIZE3))
- return FALSE;
- return TRUE;
-}
-
-bool_t
-xdr_mountstat3 (XDR *xdrs, mountstat3 *objp)
-{
- if (!xdr_enum (xdrs, (enum_t *) objp))
- return FALSE;
- return TRUE;
-}
-
-bool_t
-xdr_mountres3_ok (XDR *xdrs, mountres3_ok *objp)
-{
- if (!xdr_fhandle3 (xdrs, &objp->fhandle))
- return FALSE;
- if (!xdr_array (xdrs, (char **)&objp->auth_flavours.auth_flavours_val, (u_int *) &objp->auth_flavours.auth_flavours_len, ~0,
- sizeof (int), (xdrproc_t) xdr_int))
- return FALSE;
- return TRUE;
-}
-
-bool_t
-xdr_mountres3 (XDR *xdrs, mountres3 *objp)
-{
- if (!xdr_mountstat3 (xdrs, &objp->fhs_status))
- return FALSE;
- switch (objp->fhs_status) {
- case MNT_OK:
- if (!xdr_mountres3_ok (xdrs, &objp->mountres3_u.mountinfo))
- return FALSE;
- break;
- default:
- break;
- }
- return TRUE;
-}
-
-bool_t
-xdr_dirpath (XDR *xdrs, dirpath *objp)
-{
- if (!xdr_string (xdrs, objp, MNTPATHLEN))
- return FALSE;
- return TRUE;
-}
-
-bool_t
-xdr_fhandle (XDR *xdrs, fhandle objp)
-{
- if (!xdr_opaque (xdrs, objp, FHSIZE))
- return FALSE;
- return TRUE;
-}
-
-bool_t
-xdr_fhstatus (XDR *xdrs, fhstatus *objp)
-{
- if (!xdr_u_int (xdrs, &objp->fhs_status))
- return FALSE;
- switch (objp->fhs_status) {
- case 0:
- if (!xdr_fhandle (xdrs, objp->fhstatus_u.fhs_fhandle))
- return FALSE;
- break;
- default:
- break;
- }
- return TRUE;
-}
-
-
-static int
-linux_version_code(void) {
- struct utsname my_utsname;
- int p, q, r;
-
- if (uname(&my_utsname) == 0) {
- p = atoi(strtok(my_utsname.release, "."));
- q = atoi(strtok(NULL, "."));
- r = atoi(strtok(NULL, "."));
- return MAKE_VERSION(p,q,r);
- }
- return 0;
-}
-
-/*
- * Unfortunately, the kernel prints annoying console messages
- * in case of an unexpected nfs mount version (instead of
- * just returning some error). Therefore we'll have to try
- * and figure out what version the kernel expects.
- *
- * Variables:
- * NFS_MOUNT_VERSION: these nfsmount sources at compile time
- * nfs_mount_version: version this source and running kernel can handle
- */
-static int
-find_kernel_nfs_mount_version(void) {
- static int kernel_version = -1;
- int nfs_mount_version = NFS_MOUNT_VERSION;
-
- if (kernel_version == -1)
- kernel_version = linux_version_code();
-
- if (kernel_version) {
- if (kernel_version < MAKE_VERSION(2,1,32))
- nfs_mount_version = 1;
- else if (kernel_version < MAKE_VERSION(2,2,18))
- nfs_mount_version = 3;
- else if (kernel_version < MAKE_VERSION(2,3,0))
- nfs_mount_version = 4; /* since 2.2.18pre9 */
- else if (kernel_version < MAKE_VERSION(2,3,99))
- nfs_mount_version = 3;
- else
- nfs_mount_version = 4; /* since 2.3.99pre4 */
- }
- if (nfs_mount_version > NFS_MOUNT_VERSION)
- nfs_mount_version = NFS_MOUNT_VERSION;
- log_message("nfsmount: kernel_nfs_mount_version: %d", nfs_mount_version);
- return nfs_mount_version;
-}
-
-static struct pmap *
-get_mountport(struct sockaddr_in *server_addr,
- long unsigned prog,
- long unsigned version,
- long unsigned proto,
- long unsigned port,
- int nfs_mount_version)
-{
- struct pmaplist *pmap;
- static struct pmap p = {0, 0, 0, 0};
-
- if (version > MAX_NFSPROT)
- version = MAX_NFSPROT;
- if (!prog)
- prog = MOUNTPROG;
- p.pm_prog = prog;
- p.pm_vers = version;
- p.pm_prot = proto;
- p.pm_port = port;
-
- server_addr->sin_port = PMAPPORT;
- pmap = pmap_getmaps(server_addr);
-
- while (pmap) {
- if (pmap->pml_map.pm_prog != prog)
- goto next;
- if (!version && p.pm_vers > pmap->pml_map.pm_vers)
- goto next;
- if (version > 2 && pmap->pml_map.pm_vers != version)
- goto next;
- if (version && version <= 2 && pmap->pml_map.pm_vers > 2)
- goto next;
- if (pmap->pml_map.pm_vers > MAX_NFSPROT ||
- (proto && p.pm_prot && pmap->pml_map.pm_prot != proto) ||
- (port && pmap->pml_map.pm_port != port))
- goto next;
- memcpy(&p, &pmap->pml_map, sizeof(p));
- next:
- pmap = pmap->pml_next;
- }
- if (!p.pm_vers)
- p.pm_vers = MOUNTVERS;
- if (!p.pm_prot)
- p.pm_prot = IPPROTO_TCP;
- return &p;
-}
-
-
-
-int nfsmount_prepare(const char *spec, char **mount_opts)
-{
- char hostdir[1024];
- CLIENT *mclient;
- char *hostname, *dirname, *mounthost = NULL;
- struct timeval total_timeout;
- enum clnt_stat clnt_stat;
- static struct nfs_mount_data data;
- int nfs_mount_version;
- int val;
- struct sockaddr_in server_addr;
- struct sockaddr_in mount_server_addr;
- struct pmap *pm_mnt;
- int msock, fsock;
- struct timeval retry_timeout;
- union {
- struct fhstatus nfsv2;
- struct mountres3 nfsv3;
- } status;
- char *s;
- int port, mountport, proto, soft, intr;
- int posix, nocto, noac, broken_suid, nolock;
- int retry, tcp;
- int mountprog, mountvers, nfsprog, nfsvers;
- int retval;
- time_t t;
- time_t prevt;
- time_t timeout;
-
- nfs_mount_version = find_kernel_nfs_mount_version();
-
- retval = -1;
- msock = fsock = -1;
- mclient = NULL;
- if (strlen(spec) >= sizeof(hostdir)) {
- log_message("nfsmount: excessively long host:dir argument");
- goto fail;
- }
- strcpy(hostdir, spec);
- if ((s = strchr(hostdir, ':'))) {
- hostname = hostdir;
- dirname = s + 1;
- *s = '\0';
- } else {
- log_message("nfsmount: directory to mount not in host:dir format");
- goto fail;
- }
-
- server_addr.sin_family = AF_INET;
-#ifdef HAVE_inet_aton
- if (!inet_aton(hostname, &server_addr.sin_addr))
-#endif
- {
- if (mygethostbyname(hostname, &server_addr.sin_addr)) {
- log_message("nfsmount: can't get address for %s", hostname);
- goto fail;
- }
- }
-
- memcpy (&mount_server_addr, &server_addr, sizeof (mount_server_addr));
-
-
-
- /* Set default options.
- * rsize/wsize are set to 8192 to enable nfs install on
- * old i586 machines
- * timeo is filled in after we know whether it'll be TCP or UDP. */
- memset(&data, 0, sizeof(data));
- data.rsize = 8192;
- data.wsize = 8192;
- data.retrans = 30;
- data.acregmin = 3;
- data.acregmax = 60;
- data.acdirmin = 30;
- data.acdirmax = 60;
-#if NFS_MOUNT_VERSION >= 2
- data.namlen = NAME_MAX;
-#endif
-
- soft = 1;
- intr = 0;
- posix = 0;
- nocto = 0;
- nolock = 1;
- broken_suid = 0;
- noac = 0;
- retry = 10000; /* 10000 minutes ~ 1 week */
- tcp = 0;
-
- mountprog = MOUNTPROG;
- mountvers = 0;
- port = 0;
- mountport = 0;
- nfsprog = NFS_PROGRAM;
- nfsvers = 0;
-
-
-
-retry_mount:
- proto = (tcp) ? IPPROTO_TCP : IPPROTO_UDP;
-
- data.flags = (soft ? NFS_MOUNT_SOFT : 0)
- | (intr ? NFS_MOUNT_INTR : 0)
- | (posix ? NFS_MOUNT_POSIX : 0)
- | (nocto ? NFS_MOUNT_NOCTO : 0)
- | (noac ? NFS_MOUNT_NOAC : 0);
-#if NFS_MOUNT_VERSION >= 2
- if (nfs_mount_version >= 2)
- data.flags |= (tcp ? NFS_MOUNT_TCP : 0);
-#endif
-#if NFS_MOUNT_VERSION >= 3
- if (nfs_mount_version >= 3)
- data.flags |= (nolock ? NFS_MOUNT_NONLM : 0);
-#endif
-#if NFS_MOUNT_VERSION >= 4
- if (nfs_mount_version >= 4)
- data.flags |= (broken_suid ? NFS_MOUNT_BROKEN_SUID : 0);
-#endif
- if (nfsvers > MAX_NFSPROT) {
- log_message("NFSv%d not supported!", nfsvers);
- return 0;
- }
- if (mountvers > MAX_NFSPROT) {
- log_message("NFSv%d not supported!", nfsvers);
- return 0;
- }
- if (nfsvers && !mountvers)
- mountvers = (nfsvers < 3) ? 1 : nfsvers;
- if (nfsvers && nfsvers < mountvers)
- mountvers = nfsvers;
-
- /* Adjust options if none specified */
- if (!data.timeo)
- data.timeo = tcp ? 70 : 7;
-
-#ifdef NFS_MOUNT_DEBUG
- log_message("rsize = %d, wsize = %d, timeo = %d, retrans = %d",
- data.rsize, data.wsize, data.timeo, data.retrans);
- log_message("acreg (min, max) = (%d, %d), acdir (min, max) = (%d, %d)",
- data.acregmin, data.acregmax, data.acdirmin, data.acdirmax);
- log_message("port = %d, retry = %d, flags = %.8x",
- port, retry, data.flags);
- log_message("mountprog = %d, mountvers = %d, nfsprog = %d, nfsvers = %d",
- mountprog, mountvers, nfsprog, nfsvers);
- log_message("soft = %d, intr = %d, posix = %d, nocto = %d, noac = %d",
- (data.flags & NFS_MOUNT_SOFT) != 0,
- (data.flags & NFS_MOUNT_INTR) != 0,
- (data.flags & NFS_MOUNT_POSIX) != 0,
- (data.flags & NFS_MOUNT_NOCTO) != 0,
- (data.flags & NFS_MOUNT_NOAC) != 0);
-#if NFS_MOUNT_VERSION >= 2
- log_message("tcp = %d",
- (data.flags & NFS_MOUNT_TCP) != 0);
-#endif
-#endif
-
- data.version = nfs_mount_version;
- *mount_opts = (char *) &data;
-
-
- /* create mount deamon client */
- /* See if the nfs host = mount host. */
- if (mounthost) {
- if (mounthost[0] >= '0' && mounthost[0] <= '9') {
- mount_server_addr.sin_family = AF_INET;
- mount_server_addr.sin_addr.s_addr = inet_addr(hostname);
- } else {
- if (mygethostbyname(mounthost, &mount_server_addr.sin_addr)) {
- log_message("nfsmount: can't get address for %s", mounthost);
- goto fail;
- }
- }
- }
-
- /*
- * The following loop implements the mount retries. On the first
- * call, "running_bg" is 0. When the mount times out, and the
- * "bg" option is set, the exit status EX_BG will be returned.
- * For a backgrounded mount, there will be a second call by the
- * child process with "running_bg" set to 1.
- *
- * The case where the mount point is not present and the "bg"
- * option is set, is treated as a timeout. This is done to
- * support nested mounts.
- *
- * The "retry" count specified by the user is the number of
- * minutes to retry before giving up.
- *
- * Only the first error message will be displayed.
- */
- retry_timeout.tv_sec = 3;
- retry_timeout.tv_usec = 0;
- total_timeout.tv_sec = 20;
- total_timeout.tv_usec = 0;
- timeout = time(NULL) + 60 * retry;
- prevt = 0;
- t = 30;
- val = 1;
-
-
- /* be careful not to use too many CPU cycles */
- if (t - prevt < 30)
- sleep(30);
-
- pm_mnt = get_mountport(&mount_server_addr,
- mountprog,
- mountvers,
- proto,
- mountport,
- nfs_mount_version);
-
- /* contact the mount daemon via TCP */
- mount_server_addr.sin_port = htons(pm_mnt->pm_port);
- msock = RPC_ANYSOCK;
-
- switch (pm_mnt->pm_prot) {
- case IPPROTO_UDP:
- mclient = clntudp_create(&mount_server_addr,
- pm_mnt->pm_prog,
- pm_mnt->pm_vers,
- retry_timeout,
- &msock);
- if (mclient)
- break;
- mount_server_addr.sin_port =
- htons(pm_mnt->pm_port);
- msock = RPC_ANYSOCK;
- case IPPROTO_TCP:
- mclient = clnttcp_create(&mount_server_addr,
- pm_mnt->pm_prog,
- pm_mnt->pm_vers,
- &msock, 0, 0);
- break;
- default:
- mclient = 0;
- }
-
- if (mclient) {
- /* try to mount hostname:dirname */
- mclient->cl_auth = authunix_create_default();
-
- /* make pointers in xdr_mountres3 NULL so
- * that xdr_array allocates memory for us
- */
- memset(&status, 0, sizeof(status));
-
- log_message("nfsmount: doing client call in nfs version: %ld", pm_mnt->pm_vers);
- if (pm_mnt->pm_vers == 3)
- clnt_stat = clnt_call(mclient,
- MOUNTPROC3_MNT,
- (xdrproc_t) xdr_dirpath,
- (caddr_t) &dirname,
- (xdrproc_t) xdr_mountres3,
- (caddr_t) &status,
- total_timeout);
- else
- clnt_stat = clnt_call(mclient,
- MOUNTPROC_MNT,
- (xdrproc_t) xdr_dirpath,
- (caddr_t) &dirname,
- (xdrproc_t) xdr_fhstatus,
- (caddr_t) &status,
- total_timeout);
-
- if (clnt_stat == RPC_SUCCESS)
- goto succeeded;
-
- if (prevt == 0)
- log_message("could not call server: probably protocol or version error");
- auth_destroy(mclient->cl_auth);
- clnt_destroy(mclient);
- mclient = 0;
- close(msock);
- } else {
- log_message("could not create rpc client: host probably not found or NFS server is down");
- }
- prevt = t;
-
- goto fail;
-
- succeeded:
- nfsvers = (pm_mnt->pm_vers < 2) ? 2 : pm_mnt->pm_vers;
-
- if (nfsvers == 2) {
- if (status.nfsv2.fhs_status != 0) {
- log_message("nfsmount: %s:%s failed, reason given by server: %s",
- hostname, dirname, nfs_strerror(status.nfsv2.fhs_status));
- goto fail;
- }
- memcpy(data.root.data,
- (char *) status.nfsv2.fhstatus_u.fhs_fhandle,
- NFS_FHSIZE);
-#if NFS_MOUNT_VERSION >= 4
- data.root.size = NFS_FHSIZE;
- memcpy(data.old_root.data,
- (char *) status.nfsv2.fhstatus_u.fhs_fhandle,
- NFS_FHSIZE);
-#endif
- } else {
-#if NFS_MOUNT_VERSION >= 4
- fhandle3 *fhandle;
- if (status.nfsv3.fhs_status != 0) {
- log_message("nfsmount: %s:%s failed, reason given by server: %s",
- hostname, dirname, nfs_strerror(status.nfsv3.fhs_status));
- goto fail;
- }
- fhandle = &status.nfsv3.mountres3_u.mountinfo.fhandle;
- memset(data.old_root.data, 0, NFS_FHSIZE);
- memset(&data.root, 0, sizeof(data.root));
- data.root.size = fhandle->fhandle3_len;
- memcpy(data.root.data,
- (char *) fhandle->fhandle3_val,
- fhandle->fhandle3_len);
-
- data.flags |= NFS_MOUNT_VER3;
-#endif
- }
-
- /* create nfs socket for kernel */
-
- if (tcp) {
- if (nfs_mount_version < 3) {
- log_message("NFS over TCP is not supported.");
- goto fail;
- }
- fsock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
- } else
- fsock = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
- if (fsock < 0) {
- log_perror("nfs socket");
- goto fail;
- }
- if (bindresvport(fsock, 0) < 0) {
- log_perror("nfs bindresvport");
- goto fail;
- }
- if (port == 0) {
- server_addr.sin_port = PMAPPORT;
- port = pmap_getport(&server_addr, nfsprog, nfsvers,
- tcp ? IPPROTO_TCP : IPPROTO_UDP);
-#if 1
- /* Here we check to see if user is mounting with the
- * tcp option. If so, and if the portmap returns a
- * '0' for port (service unavailable), we then notify
- * the user, and retry with udp.
- */
- if (port == 0 && tcp == 1) {
- log_message("NFS server reported TCP not available, retrying with UDP...");
- tcp = 0;
- goto retry_mount;
- }
-#endif
-
- if (port == 0)
- port = NFS_PORT;
-#ifdef NFS_MOUNT_DEBUG
- else
- log_message("used portmapper to find NFS port");
-#endif
- }
-#ifdef NFS_MOUNT_DEBUG
- log_message("using port %d for nfs deamon", port);
-#endif
- server_addr.sin_port = htons(port);
- /*
- * connect() the socket for kernels 1.3.10 and below only,
- * to avoid problems with multihomed hosts.
- * --Swen
- */
- if (linux_version_code() <= 66314
- && connect(fsock, (struct sockaddr *) &server_addr,
- sizeof (server_addr)) < 0) {
- log_perror("nfs connect");
- goto fail;
- }
-
- /* prepare data structure for kernel */
-
- data.fd = fsock;
- memcpy((char *) &data.addr, (char *) &server_addr, sizeof(data.addr));
- strncpy(data.hostname, hostname, sizeof(data.hostname));
-
- /* clean up */
-
- auth_destroy(mclient->cl_auth);
- clnt_destroy(mclient);
- close(msock);
- return 0;
-
- /* abort */
-
- fail:
- if (msock != -1) {
- if (mclient) {
- auth_destroy(mclient->cl_auth);
- clnt_destroy(mclient);
- }
- close(msock);
- }
- if (fsock != -1)
- close(fsock);
- return retval;
-}
-
-/*
- * We need to translate between nfs status return values and
- * the local errno values which may not be the same.
- *
- * Andreas Schwab <schwab@LS5.informatik.uni-dortmund.de>: change errno:
- * "after #include <errno.h> the symbol errno is reserved for any use,
- * it cannot even be used as a struct tag or field name".
- */
-
-#ifndef EDQUOT
-#define EDQUOT ENOSPC
-#endif
-
-static struct {
- enum nfsstat stat;
- int errnum;
-} nfs_errtbl[] = {
- { NFS_OK, 0 },
- { NFSERR_PERM, EPERM },
- { NFSERR_NOENT, ENOENT },
- { NFSERR_IO, EIO },
- { NFSERR_NXIO, ENXIO },
- { NFSERR_ACCES, EACCES },
- { NFSERR_EXIST, EEXIST },
- { NFSERR_NODEV, ENODEV },
- { NFSERR_NOTDIR, ENOTDIR },
- { NFSERR_ISDIR, EISDIR },
-#ifdef NFSERR_INVAL
- { NFSERR_INVAL, EINVAL }, /* that Sun forgot */
-#endif
- { NFSERR_FBIG, EFBIG },
- { NFSERR_NOSPC, ENOSPC },
- { NFSERR_ROFS, EROFS },
- { NFSERR_NAMETOOLONG, ENAMETOOLONG },
- { NFSERR_NOTEMPTY, ENOTEMPTY },
- { NFSERR_DQUOT, EDQUOT },
- { NFSERR_STALE, ESTALE },
-#ifdef EWFLUSH
- { NFSERR_WFLUSH, EWFLUSH },
-#endif
- /* Throw in some NFSv3 values for even more fun (HP returns these) */
- { 71, EREMOTE },
-
- { -1, EIO }
-};
-
-static char *nfs_strerror(int stat)
-{
- int i;
- static char buf[256];
-
- for (i = 0; nfs_errtbl[i].stat != (unsigned)-1; i++) {
- if (nfs_errtbl[i].stat == (unsigned)stat)
- return strerror(nfs_errtbl[i].errnum);
- }
- sprintf(buf, "unknown nfs status return value: %d", stat);
- return buf;
-}
-
diff --git a/mdk-stage1/nfsmount.h b/mdk-stage1/nfsmount.h
deleted file mode 100644
index a27e8a8d7..000000000
--- a/mdk-stage1/nfsmount.h
+++ /dev/null
@@ -1,331 +0,0 @@
-/*
- * Please do not edit this file.
- * It was generated using rpcgen.
- */
-
-#ifndef _NFSMOUNT_H_RPCGEN
-#define _NFSMOUNT_H_RPCGEN
-
-#include <rpc/rpc.h>
-
-int nfsmount_prepare(const char *spec, char **mount_opts);
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
- * unrestricted use provided that this legend is included on all tape
- * media and as a part of the software program in whole or part. Users
- * may copy or modify Sun RPC without charge, but are not authorized
- * to license or distribute it to anyone else except as part of a product or
- * program developed by the user or with the express written consent of
- * Sun Microsystems, Inc.
- *
- * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
- * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
- *
- * Sun RPC is provided with no support and without any obligation on the
- * part of Sun Microsystems, Inc. to assist in its use, correction,
- * modification or enhancement.
- *
- * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
- * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
- * OR ANY PART THEREOF.
- *
- * In no event will Sun Microsystems, Inc. be liable for any lost revenue
- * or profits or other special, indirect and consequential damages, even if
- * Sun has been advised of the possibility of such damages.
- *
- * Sun Microsystems, Inc.
- * 2550 Garcia Avenue
- * Mountain View, California 94043
- */
-/*
- * Copyright (c) 1985, 1990 by Sun Microsystems, Inc.
- */
-
-/* from @(#)mount.x 1.3 91/03/11 TIRPC 1.0 */
-#ifndef _rpcsvc_mount_h
-#define _rpcsvc_mount_h
-#include <asm/types.h>
-#define MNTPATHLEN 1024
-#define MNTNAMLEN 255
-#define FHSIZE 32
-#define FHSIZE3 64
-
-typedef char fhandle[FHSIZE];
-
-typedef struct {
- u_int fhandle3_len;
- char *fhandle3_val;
-} fhandle3;
-
-enum mountstat3 {
- MNT_OK = 0,
- MNT3ERR_PERM = 1,
- MNT3ERR_NOENT = 2,
- MNT3ERR_IO = 5,
- MNT3ERR_ACCES = 13,
- MNT3ERR_NOTDIR = 20,
- MNT3ERR_INVAL = 22,
- MNT3ERR_NAMETOOLONG = 63,
- MNT3ERR_NOTSUPP = 10004,
- MNT3ERR_SERVERFAULT = 10006,
-};
-typedef enum mountstat3 mountstat3;
-
-struct fhstatus {
- u_int fhs_status;
- union {
- fhandle fhs_fhandle;
- } fhstatus_u;
-};
-typedef struct fhstatus fhstatus;
-
-struct mountres3_ok {
- fhandle3 fhandle;
- struct {
- u_int auth_flavours_len;
- int *auth_flavours_val;
- } auth_flavours;
-};
-typedef struct mountres3_ok mountres3_ok;
-
-struct mountres3 {
- mountstat3 fhs_status;
- union {
- mountres3_ok mountinfo;
- } mountres3_u;
-};
-typedef struct mountres3 mountres3;
-
-typedef char *dirpath;
-
-typedef char *name;
-
-typedef struct mountbody *mountlist;
-
-struct mountbody {
- name ml_hostname;
- dirpath ml_directory;
- mountlist ml_next;
-};
-typedef struct mountbody mountbody;
-
-typedef struct groupnode *groups;
-
-struct groupnode {
- name gr_name;
- groups gr_next;
-};
-typedef struct groupnode groupnode;
-
-typedef struct exportnode *exports;
-
-struct exportnode {
- dirpath ex_dir;
- groups ex_groups;
- exports ex_next;
-};
-typedef struct exportnode exportnode;
-
-struct ppathcnf {
- int pc_link_max;
- short pc_max_canon;
- short pc_max_input;
- short pc_name_max;
- short pc_path_max;
- short pc_pipe_buf;
- u_char pc_vdisable;
- char pc_xxx;
- short pc_mask[2];
-};
-typedef struct ppathcnf ppathcnf;
-#endif /*!_rpcsvc_mount_h*/
-
-#define MOUNTPROG 100005
-#define MOUNTVERS 1
-
-#if defined(__STDC__) || defined(__cplusplus)
-#define MOUNTPROC_NULL 0
-extern void * mountproc_null_1(void *, CLIENT *);
-extern void * mountproc_null_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_MNT 1
-extern fhstatus * mountproc_mnt_1(dirpath *, CLIENT *);
-extern fhstatus * mountproc_mnt_1_svc(dirpath *, struct svc_req *);
-#define MOUNTPROC_DUMP 2
-extern mountlist * mountproc_dump_1(void *, CLIENT *);
-extern mountlist * mountproc_dump_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_UMNT 3
-extern void * mountproc_umnt_1(dirpath *, CLIENT *);
-extern void * mountproc_umnt_1_svc(dirpath *, struct svc_req *);
-#define MOUNTPROC_UMNTALL 4
-extern void * mountproc_umntall_1(void *, CLIENT *);
-extern void * mountproc_umntall_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_EXPORT 5
-extern exports * mountproc_export_1(void *, CLIENT *);
-extern exports * mountproc_export_1_svc(void *, struct svc_req *);
-#define MOUNTPROC_EXPORTALL 6
-extern exports * mountproc_exportall_1(void *, CLIENT *);
-extern exports * mountproc_exportall_1_svc(void *, struct svc_req *);
-extern int mountprog_1_freeresult (SVCXPRT *, xdrproc_t, caddr_t);
-
-#else /* K&R C */
-#define MOUNTPROC_NULL 0
-extern void * mountproc_null_1();
-extern void * mountproc_null_1_svc();
-#define MOUNTPROC_MNT 1
-extern fhstatus * mountproc_mnt_1();
-extern fhstatus * mountproc_mnt_1_svc();
-#define MOUNTPROC_DUMP 2
-extern mountlist * mountproc_dump_1();
-extern mountlist * mountproc_dump_1_svc();
-#define MOUNTPROC_UMNT 3
-extern void * mountproc_umnt_1();
-extern void * mountproc_umnt_1_svc();
-#define MOUNTPROC_UMNTALL 4
-extern void * mountproc_umntall_1();
-extern void * mountproc_umntall_1_svc();
-#define MOUNTPROC_EXPORT 5
-extern exports * mountproc_export_1();
-extern exports * mountproc_export_1_svc();
-#define MOUNTPROC_EXPORTALL 6
-extern exports * mountproc_exportall_1();
-extern exports * mountproc_exportall_1_svc();
-extern int mountprog_1_freeresult ();
-#endif /* K&R C */
-#define MOUNTVERS_POSIX 2
-
-#if defined(__STDC__) || defined(__cplusplus)
-extern void * mountproc_null_2(void *, CLIENT *);
-extern void * mountproc_null_2_svc(void *, struct svc_req *);
-extern fhstatus * mountproc_mnt_2(dirpath *, CLIENT *);
-extern fhstatus * mountproc_mnt_2_svc(dirpath *, struct svc_req *);
-extern mountlist * mountproc_dump_2(void *, CLIENT *);
-extern mountlist * mountproc_dump_2_svc(void *, struct svc_req *);
-extern void * mountproc_umnt_2(dirpath *, CLIENT *);
-extern void * mountproc_umnt_2_svc(dirpath *, struct svc_req *);
-extern void * mountproc_umntall_2(void *, CLIENT *);
-extern void * mountproc_umntall_2_svc(void *, struct svc_req *);
-extern exports * mountproc_export_2(void *, CLIENT *);
-extern exports * mountproc_export_2_svc(void *, struct svc_req *);
-extern exports * mountproc_exportall_2(void *, CLIENT *);
-extern exports * mountproc_exportall_2_svc(void *, struct svc_req *);
-#define MOUNTPROC_PATHCONF 7
-extern ppathcnf * mountproc_pathconf_2(dirpath *, CLIENT *);
-extern ppathcnf * mountproc_pathconf_2_svc(dirpath *, struct svc_req *);
-extern int mountprog_2_freeresult (SVCXPRT *, xdrproc_t, caddr_t);
-
-#else /* K&R C */
-extern void * mountproc_null_2();
-extern void * mountproc_null_2_svc();
-extern fhstatus * mountproc_mnt_2();
-extern fhstatus * mountproc_mnt_2_svc();
-extern mountlist * mountproc_dump_2();
-extern mountlist * mountproc_dump_2_svc();
-extern void * mountproc_umnt_2();
-extern void * mountproc_umnt_2_svc();
-extern void * mountproc_umntall_2();
-extern void * mountproc_umntall_2_svc();
-extern exports * mountproc_export_2();
-extern exports * mountproc_export_2_svc();
-extern exports * mountproc_exportall_2();
-extern exports * mountproc_exportall_2_svc();
-#define MOUNTPROC_PATHCONF 7
-extern ppathcnf * mountproc_pathconf_2();
-extern ppathcnf * mountproc_pathconf_2_svc();
-extern int mountprog_2_freeresult ();
-#endif /* K&R C */
-#define MOUNT_V3 3
-
-#if defined(__STDC__) || defined(__cplusplus)
-#define MOUNTPROC3_NULL 0
-extern void * mountproc3_null_3(void *, CLIENT *);
-extern void * mountproc3_null_3_svc(void *, struct svc_req *);
-#define MOUNTPROC3_MNT 1
-extern mountres3 * mountproc3_mnt_3(dirpath *, CLIENT *);
-extern mountres3 * mountproc3_mnt_3_svc(dirpath *, struct svc_req *);
-#define MOUNTPROC3_DUMP 2
-extern mountlist * mountproc3_dump_3(void *, CLIENT *);
-extern mountlist * mountproc3_dump_3_svc(void *, struct svc_req *);
-#define MOUNTPROC3_UMNT 3
-extern void * mountproc3_umnt_3(dirpath *, CLIENT *);
-extern void * mountproc3_umnt_3_svc(dirpath *, struct svc_req *);
-#define MOUNTPROC3_UMNTALL 4
-extern void * mountproc3_umntall_3(void *, CLIENT *);
-extern void * mountproc3_umntall_3_svc(void *, struct svc_req *);
-#define MOUNTPROC3_EXPORT 5
-extern exports * mountproc3_export_3(void *, CLIENT *);
-extern exports * mountproc3_export_3_svc(void *, struct svc_req *);
-extern int mountprog_3_freeresult (SVCXPRT *, xdrproc_t, caddr_t);
-
-#else /* K&R C */
-#define MOUNTPROC3_NULL 0
-extern void * mountproc3_null_3();
-extern void * mountproc3_null_3_svc();
-#define MOUNTPROC3_MNT 1
-extern mountres3 * mountproc3_mnt_3();
-extern mountres3 * mountproc3_mnt_3_svc();
-#define MOUNTPROC3_DUMP 2
-extern mountlist * mountproc3_dump_3();
-extern mountlist * mountproc3_dump_3_svc();
-#define MOUNTPROC3_UMNT 3
-extern void * mountproc3_umnt_3();
-extern void * mountproc3_umnt_3_svc();
-#define MOUNTPROC3_UMNTALL 4
-extern void * mountproc3_umntall_3();
-extern void * mountproc3_umntall_3_svc();
-#define MOUNTPROC3_EXPORT 5
-extern exports * mountproc3_export_3();
-extern exports * mountproc3_export_3_svc();
-extern int mountprog_3_freeresult ();
-#endif /* K&R C */
-
-/* the xdr functions */
-
-#if defined(__STDC__) || defined(__cplusplus)
-extern bool_t xdr_fhandle (XDR *, fhandle);
-extern bool_t xdr_fhandle3 (XDR *, fhandle3*);
-extern bool_t xdr_mountstat3 (XDR *, mountstat3*);
-extern bool_t xdr_fhstatus (XDR *, fhstatus*);
-extern bool_t xdr_mountres3_ok (XDR *, mountres3_ok*);
-extern bool_t xdr_mountres3 (XDR *, mountres3*);
-extern bool_t xdr_dirpath (XDR *, dirpath*);
-extern bool_t xdr_name (XDR *, name*);
-extern bool_t xdr_mountlist (XDR *, mountlist*);
-extern bool_t xdr_mountbody (XDR *, mountbody*);
-extern bool_t xdr_groups (XDR *, groups*);
-extern bool_t xdr_groupnode (XDR *, groupnode*);
-extern bool_t xdr_exports (XDR *, exports*);
-extern bool_t xdr_exportnode (XDR *, exportnode*);
-extern bool_t xdr_ppathcnf (XDR *, ppathcnf*);
-
-#else /* K&R C */
-extern bool_t xdr_fhandle ();
-extern bool_t xdr_fhandle3 ();
-extern bool_t xdr_mountstat3 ();
-extern bool_t xdr_fhstatus ();
-extern bool_t xdr_mountres3_ok ();
-extern bool_t xdr_mountres3 ();
-extern bool_t xdr_dirpath ();
-extern bool_t xdr_name ();
-extern bool_t xdr_mountlist ();
-extern bool_t xdr_mountbody ();
-extern bool_t xdr_groups ();
-extern bool_t xdr_groupnode ();
-extern bool_t xdr_exports ();
-extern bool_t xdr_exportnode ();
-extern bool_t xdr_ppathcnf ();
-
-#endif /* K&R C */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* !_NFSMOUNT_H_RPCGEN */
-
diff --git a/mdk-stage1/params.c b/mdk-stage1/params.c
index cac53346d..9398759ab 100644
--- a/mdk-stage1/params.c
+++ b/mdk-stage1/params.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -22,7 +22,6 @@
#include "utils.h"
#include "automatic.h"
#include "log.h"
-#include "bootsplash.h"
static struct param_elem params[50];
static int param_number = 0;
@@ -63,7 +62,7 @@ void process_cmdline(void)
i++;
continue;
}
- name = memdup(&buf[j], i-j + 1);
+ name = _memdup(&buf[j], i-j + 1);
name[i-j] = '\0';
if (buf[i] == '=') {
@@ -71,7 +70,7 @@ void process_cmdline(void)
i++;
while (buf[i] != ' ' && buf[i] != '\0')
i++;
- value = memdup(&buf[k], i-k + 1);
+ value = _memdup(&buf[k], i-k + 1);
value[i-k] = '\0';
}
@@ -81,6 +80,8 @@ void process_cmdline(void)
if (!strcmp(name, "changedisk")) set_param(MODE_CHANGEDISK);
if (!strcmp(name, "updatemodules") ||
!strcmp(name, "thirdparty")) set_param(MODE_THIRDPARTY);
+ if (!strcmp(name, "rescue") ||
+ !strcmp(name, "kamethod")) set_param(MODE_RESCUE);
if (!strcmp(name, "rescue")) set_param(MODE_RESCUE);
if (!strcmp(name, "keepmounted")) set_param(MODE_KEEP_MOUNTED);
if (!strcmp(name, "noauto")) set_param(MODE_NOAUTO);
@@ -171,5 +172,4 @@ void unset_automatic(void)
{
log_message("unsetting automatic");
unset_param(MODE_AUTOMATIC);
- exit_bootsplash();
}
diff --git a/mdk-stage1/params.h b/mdk-stage1/params.h
index eb4fd49cd..06b64bd52 100644
--- a/mdk-stage1/params.h
+++ b/mdk-stage1/params.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/partition.c b/mdk-stage1/partition.c
index 8d6655dad..cb59f0514 100644
--- a/mdk-stage1/partition.c
+++ b/mdk-stage1/partition.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -74,7 +74,7 @@ static const char * detect_partition_type(char * dev)
struct partition_detection_info partitions_signatures[] = {
{ "Linux Swap", { 4086, "SWAP-SPACE" }, { 0, NULL }, { 0, NULL } },
{ "Linux Swap", { 4086, "SWAPSPACE2" }, { 0, NULL }, { 0, NULL } },
- { "Ext2", { 0x438, "\x53\xEF" }, { 0, NULL }, { 0, NULL } },
+ { "Ext4", { 0x438, "\x53\xEF" }, { 0, NULL }, { 0, NULL } },
{ "ReiserFS", { 0x10034, "ReIsErFs" }, { 0, NULL }, { 0, NULL } },
{ "ReiserFS", { 0x10034, "ReIsEr2Fs" }, { 0, NULL }, { 0, NULL } },
{ "XFS", { 0, "XFSB" }, { 0x200, "XAGF" }, { 0x400, "XAGI" } },
diff --git a/mdk-stage1/partition.h b/mdk-stage1/partition.h
index 3accd7600..47639a3d0 100644
--- a/mdk-stage1/partition.h
+++ b/mdk-stage1/partition.h
@@ -1,5 +1,5 @@
/*
- * Olivier Blin (oblin@mandriva.com)
+ * Olivier Blin (oblin)
*
* Copyright 2005 Mandriva
*
diff --git a/mdk-stage1/pci-resource/Makefile b/mdk-stage1/pci-resource/Makefile
deleted file mode 100644
index 24cfc7dd0..000000000
--- a/mdk-stage1/pci-resource/Makefile
+++ /dev/null
@@ -1,25 +0,0 @@
- #******************************************************************************
- #
- # $Id$
- #
- # Guillaume Cottenceau (gc@mandriva.com)
- #
- # Copyright 2000 Mandriva
- #
- # This software may be freely redistributed under the terms of the GNU
- # public license.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- #*****************************************************************************
-
-
-all: pci-ids.h
-
-pci-ids.h: /usr/share/ldetect-lst/pcitable.gz update-pci-ids.pl
- perl update-pci-ids.pl > $@ || { rm -f $@; exit 1; }
-
-clean:
- rm -f pci-ids.h
diff --git a/mdk-stage1/pcmcia-resource/Makefile b/mdk-stage1/pcmcia-resource/Makefile
deleted file mode 100644
index 46dda9be1..000000000
--- a/mdk-stage1/pcmcia-resource/Makefile
+++ /dev/null
@@ -1,24 +0,0 @@
- #******************************************************************************
- #
- # Olivier Blin (blino@mandriva.com)
- #
- # Copyright 2006 Mandriva
- #
- # This software may be freely redistributed under the terms of the GNU
- # public license.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- #*****************************************************************************
-
-TARGET=pcmcia-ids.h
-
-all: $(TARGET)
-
-$(TARGET):
- perl update-pcmcia-ids.pl > $@ || { rm -f $@; exit 1; }
-
-clean:
- rm -f $(TARGET)
diff --git a/mdk-stage1/pcmcia/Makefile b/mdk-stage1/pcmcia/Makefile
index a9529260a..6b8bf0cb8 100644
--- a/mdk-stage1/pcmcia/Makefile
+++ b/mdk-stage1/pcmcia/Makefile
@@ -1,6 +1,6 @@
#******************************************************************************
#
- # Guillaume Cottenceau (gc@mandriva.com)
+ # Guillaume Cottenceau (gc)
#
# Copyright 2001 Mandriva
#
@@ -27,7 +27,7 @@ all: $(TARGET) pcmcia_probe.o
clean:
rm -f *.o $(TARGET) lex_config.c yacc_config.c yacc_config.h
-FLAGS = -D__linux__ -Wall -Werror -Wno-deprecated-declarations -Os -fomit-frame-pointer -pipe -c -I.. -D_BSD_SOURCE
+FLAGS = -D__linux__ -Wall -Werror -Wno-deprecated-declarations -Os -fomit-frame-pointer -pipe -c -I.. -D_DEFAULT_SOURCE
# (blino) make sure yynewerror and yyerrlab are uselessly used
FLAGS += -Dlint
LFLAGS += --nounput
@@ -46,7 +46,7 @@ $(TARGET): $(OBJS) yacc_config.h
ranlib $@
$(OBJS): %.o: %.c
- $(DIET) gcc $(FLAGS) $(INCLUDES) -c $< -o $@
+ gcc $(FLAGS) $(INCLUDES) -c $< -o $@
pcmcia_probe.o: probe.c
- $(DIET) gcc -fPIC $(FLAGS) $(INCLUDES) -c $< -o $@
+ gcc -fPIC $(FLAGS) $(INCLUDES) -c $< -o $@
diff --git a/mdk-stage1/pcmcia/merge_from_pcitable b/mdk-stage1/pcmcia/merge_from_pcitable
index 3b88a1cd8..bb127640c 100755
--- a/mdk-stage1/pcmcia/merge_from_pcitable
+++ b/mdk-stage1/pcmcia/merge_from_pcitable
@@ -4,6 +4,9 @@
# which is not in probe.c
use MDK::Common;
+use lib qw(/usr/lib/libDrakX);
+use run_program;
+use c;
my %probes;
foreach (cat_('probe.c')) {
@@ -14,34 +17,21 @@ foreach (cat_('probe.c')) {
}
require '/usr/bin/merge2pcitable.pl';
-my $drivers = read_pcitable("/usr/share/ldetect-lst/pcitable");
-my %pcitable = map_each {
- $::a =~ /^(....)(....)/ or die;
- "$1$2" => { vendor => $1, device => $2, driver => $::b->[0], name => $::b->[1] };
-} %$drivers;
+my %pcitable;
+my @yenta_socket_ids = grep { $_ } map {
+ /.*pci:v0000(....).*d0000(....).*/;
+ my $key = lc("$1$2");
+ $pcitable{$key} = { vendor => $1, device => $2 };
+ $key;
+ } grep { /^alias/ } run_program::get_stdout('/sbin/modinfo', 'yenta_socket');
-my @yenta_socket_ids = grep { $pcitable{$_}{driver} eq 'yenta_socket' } keys %pcitable;
if (my @missing_in_probe_c = difference2(\@yenta_socket_ids, [ keys %probes ])) {
print "Missing in `probe.c':\n",
map {
my $p = $pcitable{$_};
- qq( { 0x$p->{vendor}, 0x$p->{device}, "yenta_socket", "$p->{name}" },\n);
+ my $name = c::get_pci_description(hex($p->{vendor}), hex($p->{device}));
+ qq( { 0x$p->{vendor}, 0x$p->{device}, "yenta_socket", "$name" },\n);
} sort @missing_in_probe_c;
}
-
-my @res;
-foreach my $id (keys %probes) {
- my $p = $probes{$id};
- my $r = $pcitable{$id};
- if (!$r || $r->{driver} ne 'yenta_socket') {
- push @res, qq(0x$p->{vendor}\t0x$p->{device}\t"yenta_socket"\t") . ($r ? $r->{name} : '(COMPLETELY MISSING)') . qq("\n);
- }
- if ($r && $r->{driver} ne 'unknown' && $r->{driver} ne $p->{driver}) {
- warn "WARNING: $id: pcitable:$r->{driver} vs probe.c:$p->{driver}\n";
- }
-}
-if (@res) {
- print "\n", "Missing in pcitable:\n", sort @res;
-}
diff --git a/mdk-stage1/pcmcia/pcmcia.h b/mdk-stage1/pcmcia/pcmcia.h
index 0b06792d7..ae7db247b 100644
--- a/mdk-stage1/pcmcia/pcmcia.h
+++ b/mdk-stage1/pcmcia/pcmcia.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/pcmcia/probe.c b/mdk-stage1/pcmcia/probe.c
index a32faf002..240fe3a17 100644
--- a/mdk-stage1/pcmcia/probe.c
+++ b/mdk-stage1/pcmcia/probe.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000-2001 Mandriva
*
@@ -12,6 +12,9 @@
*
*
* Code comes from /anonymous@projects.sourceforge.net:/pub/pcmcia-cs/pcmcia-cs-3.1.29.tar.bz2
+ *
+ * FIXME: resync with latest pcmcia-cs-3.2.8 or with pcmciautils-0.18 (which uses sysfs)
+ *
*/
/*======================================================================
@@ -55,14 +58,11 @@
#include <errno.h>
#include <fcntl.h>
-//mdk-stage1// #include <pcmcia/config.h>
#include "log.h"
#include "pcmcia.h"
/*====================================================================*/
-//mdk-stage1// #ifdef CONFIG_PCI
-
typedef struct {
u_short vendor, device;
char *modname;
@@ -70,63 +70,63 @@ typedef struct {
} pci_id_t;
pci_id_t pci_id[] = {
- { 0x1013, 0x1100, "i82365", "Cirrus Logic CL 6729" },
+ { 0x1013, 0x1100, "pd6729", "Cirrus Logic CL 6729" },
{ 0x1013, 0x1110, "yenta_socket", "Cirrus Logic PD 6832" },
- { 0x10b3, 0xb106, "yenta_socket", "SMC 34C90" },
- { 0x1180, 0x0465, "yenta_socket", "Ricoh RL5C465" },
- { 0x1180, 0x0466, "yenta_socket", "Ricoh RL5C466" },
- { 0x1180, 0x0475, "yenta_socket", "Ricoh RL5C475" },
- { 0x1180, 0x0476, "yenta_socket", "Ricoh RL5C476" },
- { 0x1180, 0x0477, "yenta_socket", "Ricoh RL5C477" },
- { 0x1180, 0x0478, "yenta_socket", "Ricoh RL5C478" },
+ { 0x104c, 0x8011, "yenta_socket", "" },
+ { 0x104c, 0x8031, "yenta_socket", "Texas Instruments|PCIxx21/x515 Cardbus Controller" },
+ { 0x104c, 0x8036, "yenta_socket", "Texas Instruments|PCI6515 Cardbus Controller" },
+ { 0x104c, 0x8039, "yenta_socket", "Texas Instruments|PCIxx12 Cardbus Controller " },
{ 0x104c, 0xac12, "yenta_socket", "Texas Instruments PCI1130" },
{ 0x104c, 0xac13, "yenta_socket", "Texas Instruments PCI1031" },
{ 0x104c, 0xac15, "yenta_socket", "Texas Instruments PCI1131" },
- { 0x104c, 0xac1a, "yenta_socket", "Texas Instruments PCI1210" },
- { 0x104c, 0xac1e, "yenta_socket", "Texas Instruments PCI1211" },
+ { 0x104c, 0xac16, "yenta_socket", "Texas Instruments PCI1250" },
{ 0x104c, 0xac17, "yenta_socket", "Texas Instruments PCI1220" },
{ 0x104c, 0xac19, "yenta_socket", "Texas Instruments PCI1221" },
+ { 0x104c, 0xac1a, "yenta_socket", "Texas Instruments PCI1210" },
+ { 0x104c, 0xac1b, "yenta_socket", "Texas Instruments PCI1450" },
{ 0x104c, 0xac1c, "yenta_socket", "Texas Instruments PCI1225" },
- { 0x104c, 0xac16, "yenta_socket", "Texas Instruments PCI1250" },
{ 0x104c, 0xac1d, "yenta_socket", "Texas Instruments PCI1251A" },
+ { 0x104c, 0xac1e, "yenta_socket", "Texas Instruments PCI1211" },
{ 0x104c, 0xac1f, "yenta_socket", "Texas Instruments PCI1251B" },
- { 0x104c, 0xac50, "yenta_socket", "Texas Instruments PCI1410" },
- { 0x104c, 0xac51, "yenta_socket", "Texas Instruments PCI1420" },
- { 0x104c, 0xac1b, "yenta_socket", "Texas Instruments PCI1450" },
- { 0x104c, 0xac52, "yenta_socket", "Texas Instruments PCI1451" },
- { 0x104c, 0xac56, "yenta_socket", "Texas Instruments PCI1510" },
- { 0x104c, 0xac55, "yenta_socket", "Texas Instruments PCI1520" },
- { 0x104c, 0xac54, "yenta_socket", "Texas Instruments PCI1620" },
- { 0x104c, 0xac41, "yenta_socket", "Texas Instruments PCI4410" },
{ 0x104c, 0xac40, "yenta_socket", "Texas Instruments PCI4450" },
+ { 0x104c, 0xac41, "yenta_socket", "Texas Instruments PCI4410" },
{ 0x104c, 0xac42, "yenta_socket", "Texas Instruments PCI4451" },
{ 0x104c, 0xac44, "yenta_socket", "Texas Instruments PCI4510" },
{ 0x104c, 0xac46, "yenta_socket", "Texas Instruments PCI4520" },
- { 0x104c, 0xac49, "yenta_socket", "Texas Instruments PCI7410" },
{ 0x104c, 0xac47, "yenta_socket", "Texas Instruments PCI7510" },
{ 0x104c, 0xac48, "yenta_socket", "Texas Instruments PCI7610" },
+ { 0x104c, 0xac49, "yenta_socket", "Texas Instruments PCI7410" },
+ { 0x104c, 0xac50, "yenta_socket", "Texas Instruments PCI1410" },
+ { 0x104c, 0xac51, "yenta_socket", "Texas Instruments PCI1420" },
+ { 0x104c, 0xac52, "yenta_socket", "Texas Instruments PCI1451" },
+ { 0x104c, 0xac54, "yenta_socket", "Texas Instruments PCI1620" },
+ { 0x104c, 0xac55, "yenta_socket", "Texas Instruments PCI1520" },
+ { 0x104c, 0xac56, "yenta_socket", "Texas Instruments PCI1510" },
+ { 0x104c, 0xac8d, "yenta_socket", "Texas Instruments|PCI7620" },
+ { 0x104c, 0xac8e, "yenta_socket", "Texas Instruments|PCI7420 CardBus Controller" },
{ 0x104c, 0xac8e, "yenta_socket", "Texas Instruments PCI7420" },
- { 0x1217, 0x6729, "i82365", "O2 Micro 6729" },
- { 0x1217, 0x673a, "i82365", "O2 Micro 6730" },
- { 0x1217, 0x6832, "yenta_socket", "O2 Micro 6832/6833" },
- { 0x1217, 0x6836, "yenta_socket", "O2 Micro 6836/6860" },
- { 0x1217, 0x6872, "yenta_socket", "O2 Micro 6812" },
- { 0x1217, 0x6925, "yenta_socket", "O2 Micro 6922" },
- { 0x1217, 0x6933, "yenta_socket", "O2 Micro 6933" },
- { 0x1217, 0x6972, "yenta_socket", "O2 Micro 6912" },
- { 0x1217, 0x7114, "yenta_socket", "O2 Micro 711M1" },
- { 0x1179, 0x0603, "i82365", "Toshiba ToPIC95-A" },
+ { 0x10b3, 0xb106, "yenta_socket", "SMC 34C90" },
+ { 0x1179, 0x0603, "pd6729", "Toshiba ToPIC95-A" },
{ 0x1179, 0x060a, "yenta_socket", "Toshiba ToPIC95-B" },
{ 0x1179, 0x060f, "yenta_socket", "Toshiba ToPIC97" },
{ 0x1179, 0x0617, "yenta_socket", "Toshiba ToPIC100" },
- { 0x119b, 0x1221, "i82365", "Omega Micro 82C092G" },
- { 0x8086, 0x1221, "i82092", "Intel 82092AA_0" },
- { 0x8086, 0x1222, "i82092", "Intel 82092AA_1" },
+ { 0x1180, 0x0465, "yenta_socket", "Ricoh RL5C465" },
+ { 0x1180, 0x0466, "yenta_socket", "Ricoh RL5C466" },
+ { 0x1180, 0x0475, "yenta_socket", "Ricoh RL5C475" },
+ { 0x1180, 0x0476, "yenta_socket", "Ricoh RL5C476" },
+ { 0x1180, 0x0477, "yenta_socket", "Ricoh RL5C477" },
+ { 0x1180, 0x0478, "yenta_socket", "Ricoh RL5C478" },
+ { 0x119b, 0x1221, "pd6729", "Omega Micro 82C092G" },
{ 0x1524, 0x1211, "yenta_socket", "ENE 1211" },
{ 0x1524, 0x1225, "yenta_socket", "ENE 1225" },
{ 0x1524, 0x1410, "yenta_socket", "ENE 1410" },
{ 0x1524, 0x1411, "yenta_socket", "ENE Technology CB1411" },
+ { 0x1524, 0x1412, "yenta_socket", "ENE Technology Inc|CB-712/4 Cardbus Controller " },
{ 0x1524, 0x1420, "yenta_socket", "ENE 1420" },
+ { 0x1524, 0x1421, "yenta_socket", "ENE Technology Inc|CB-720/2/4 Cardbus Controller" },
+ { 0x1524, 0x1422, "yenta_socket", "ENE Technology Inc|CB-722/4 Cardbus Controller" },
+ { 0x8086, 0x1221, "i82092", "Intel 82092AA_0" },
+ { 0x8086, 0x1222, "i82092", "Intel 82092AA_1" },
};
#define PCI_COUNT (sizeof(pci_id)/sizeof(pci_id_t))
@@ -138,13 +138,17 @@ static int pci_probe(void)
u_int device, vendor, i;
FILE *f;
-//mdk-stage1// if (!module)
log_message("PCMCIA: probing PCI bus..");
if ((f = fopen("/proc/bus/pci/devices", "r")) != NULL) {
while (fgets(s, 256, f) != NULL) {
u_int n = strtoul(s+5, NULL, 16);
vendor = (n >> 16); device = (n & 0xffff);
+ if (vendor == 0x1217) {
+ driver = "yenta_socket";
+ name = "O2 Micro|PCMCIA Controller";
+ break;
+ }
for (i = 0; i < PCI_COUNT; i++)
if ((vendor == pci_id[i].vendor) &&
(device == pci_id[i].device)) break;
@@ -154,58 +158,20 @@ static int pci_probe(void)
}
}
}
-//mdk-stage1// else if ((f = fopen("/proc/pci", "r")) != NULL) {
-//mdk-stage1// while (fgets(s, 256, f) != NULL) {
-//mdk-stage1// t = strstr(s, "Device id=");
-//mdk-stage1// if (t) {
-//mdk-stage1// device = strtoul(t+10, NULL, 16);
-//mdk-stage1// t = strstr(s, "Vendor id=");
-//mdk-stage1// vendor = strtoul(t+10, NULL, 16);
-//mdk-stage1// for (i = 0; i < PCI_COUNT; i++)
-//mdk-stage1// if ((vendor == pci_id[i].vendor) &&
-//mdk-stage1// (device == pci_id[i].device)) break;
-//mdk-stage1// } else
-//mdk-stage1// for (i = 0; i < PCI_COUNT; i++)
-//mdk-stage1// if (strstr(s, pci_id[i].tag) != NULL) break;
-//mdk-stage1// if (i != PCI_COUNT) {
-//mdk-stage1// name = pci_id[i].name;
-//mdk-stage1// break;
-//mdk-stage1// } else {
-//mdk-stage1// t = strstr(s, "CardBus bridge");
-//mdk-stage1// if (t != NULL) {
-//mdk-stage1// name = t + 16;
-//mdk-stage1// t = strchr(s, '(');
-//mdk-stage1// t[-1] = '\0';
-//mdk-stage1// break;
-//mdk-stage1// }
-//mdk-stage1// }
-//mdk-stage1// }
-//mdk-stage1// }
fclose(f);
if (name) {
-//mdk-stage1// if (module)
-//mdk-stage1// printf("i82365\n");
-//mdk-stage1// else
log_message("\t%s found, 2 sockets (driver %s).", name, driver);
return 0;
} else {
-//mdk-stage1// if (!module)
log_message("\tnot found.");
return -ENODEV;
}
}
-//mdk-stage1// #endif
/*====================================================================*/
-//mdk-stage1// #ifdef CONFIG_ISA
-//mdk-stage1//
-//mdk-stage1// #ifdef __GLIBC__
#include <sys/io.h>
-//mdk-stage1// #else
-//mdk-stage1// #include <asm/io.h>
-//mdk-stage1// #endif
typedef u_short ioaddr_t;
#include "i82365.h"
@@ -246,9 +212,7 @@ int i365_probe(void)
int val, sock, done;
char *name = "i82365sl";
-//mdk-stage1// if (!module)
log_message("PCMCIA: probing for Intel PCIC (ISA)..");
-//mdk-stage1// if (verbose) printf("\n");
sock = done = 0;
if (ioperm(i365_base, 4, 1)) {
@@ -258,8 +222,6 @@ int i365_probe(void)
ioperm(0x80, 1, 1);
for (; sock < 2; sock++) {
val = i365_get(sock, I365_IDENT);
-//mdk-stage1// if (verbose)
-//mdk-stage1// printf(" ident(%d)=%#2.2x", sock, val);
switch (val) {
case 0x82:
name = "i82365sl A step";
@@ -281,9 +243,7 @@ int i365_probe(void)
if (done) break;
}
-//mdk-stage1// if (verbose) printf("\n ");
if (sock == 0) {
-//mdk-stage1// if (!module)
log_message("\tnot found.");
return -ENODEV;
}
@@ -322,24 +282,15 @@ int i365_probe(void)
}
}
-//mdk-stage1// if (module)
-//mdk-stage1// printf("i82365\n");
-//mdk-stage1// else
printf("\t%s found, %d sockets.\n", name, sock);
return 0;
} /* i365_probe */
-//mdk-stage1//#endif /* CONFIG_ISA */
-
/*====================================================================*/
-//mdk-stage1//#ifdef CONFIG_ISA
-
#include "tcic.h"
-//mdk-stage1//static ioaddr_t tcic_base = TCIC_BASE;
-
static u_char tcic_getb(ioaddr_t base, u_char reg)
{
u_char val = inb(base+reg);
@@ -396,7 +347,6 @@ int tcic_probe_at(ioaddr_t base)
if (tcic_getw(base, i) == 0xffff)
return -1;
-//mdk-stage1// if (!module)
log_message("\tat %#3.3x: ", base); fflush(stdout);
/* Try to reset the chip */
@@ -422,7 +372,6 @@ int tcic_probe(void)
{
int sock, id;
-//mdk-stage1// if (!module)
log_message("PCMCIA: probing for Databook TCIC-2 (ISA).."); fflush(stdout);
if (ioperm(TCIC_BASE, 16, 1)) {
@@ -433,14 +382,10 @@ int tcic_probe(void)
sock = tcic_probe_at(TCIC_BASE);
if (sock <= 0) {
-//mdk-stage1// if (!module)
log_message("\tnot found.");
return -ENODEV;
}
-//mdk-stage1// if (module)
-//mdk-stage1// printf("tcic\n");
-//mdk-stage1// else {
id = get_tcic_id(TCIC_BASE);
switch (id) {
case TCIC_ID_DB86082:
@@ -461,64 +406,21 @@ int tcic_probe(void)
log_message("Unknown TCIC-2 ID 0x%02x", id);
}
log_message(" found at %#6x, %d sockets.", TCIC_BASE, sock);
-//mdk-stage1// }
return 0;
} /* tcic_probe */
-//mdk-stage1// #endif /* CONFIG_ISA */
-
-//mdk-stage1// /*====================================================================*/
-//mdk-stage1//
-//mdk-stage1// int main(int argc, char *argv[])
-//mdk-stage1// {
-//mdk-stage1// int optch, errflg;
-//mdk-stage1// extern char *optarg;
-//mdk-stage1// int verbose = 0, module = 0;
-//mdk-stage1//
-//mdk-stage1// errflg = 0;
-//mdk-stage1// while ((optch = getopt(argc, argv, "t:vxm")) != -1) {
-//mdk-stage1// switch (optch) {
-//mdk-stage1// #ifdef CONFIG_ISA
-//mdk-stage1// case 't':
-//mdk-stage1// tcic_base = strtoul(optarg, NULL, 0); break;
-//mdk-stage1// #endif
-//mdk-stage1// case 'v':
-//mdk-stage1// verbose = 1; break;
-//mdk-stage1// case 'm':
-//mdk-stage1// module = 1; break;
-//mdk-stage1// default:
-//mdk-stage1// errflg = 1; break;
-//mdk-stage1// }
-//mdk-stage1// }
-//mdk-stage1// if (errflg || (optind < argc)) {
-//mdk-stage1// fprintf(stderr, "usage: %s [-t tcic_base] [-v] [-m]\n", argv[0]);
-//mdk-stage1// exit(EXIT_FAILURE);
-//mdk-stage1// }
-//mdk-stage1//
-//mdk-stage1// #ifdef CONFIG_PCI
-//mdk-stage1// if (pci_probe(verbose, module) == 0)
-//mdk-stage1// exit(EXIT_SUCCESS);
-//mdk-stage1// #endif
-//mdk-stage1// #ifdef CONFIG_ISA
-//mdk-stage1// if (i365_probe(verbose, module) == 0)
-//mdk-stage1// exit(EXIT_SUCCESS);
-//mdk-stage1// else if (tcic_probe(verbose, module, tcic_base) == 0)
-//mdk-stage1// exit(EXIT_SUCCESS);
-//mdk-stage1// #endif
-//mdk-stage1// exit(EXIT_FAILURE);
-//mdk-stage1// return 0;
-//mdk-stage1// }
-
char * pcmcia_probe(void)
{
if (!pci_probe())
return driver;
+#if !defined(__x86_64__)
else if (!i365_probe())
- return "i82365";
+ return "pd6729";
else if (!tcic_probe())
return "tcic";
+#endif
else
return NULL;
}
diff --git a/mdk-stage1/pcmcia/yacc_config.y b/mdk-stage1/pcmcia/yacc_config.y
index be5ef98fe..c33f397d6 100644
--- a/mdk-stage1/pcmcia/yacc_config.y
+++ b/mdk-stage1/pcmcia/yacc_config.y
@@ -29,7 +29,7 @@ extern int current_lineno;
extern int yylex(void); /* mdk-stage1 */
-void yyerror(char *msg, ...);
+void yyerror(const char *msg, ...);
%}
@@ -114,7 +114,7 @@ resource: IRQ_NO NUMBER
;
%%
-void yyerror(char *msg, ...)
+void yyerror(const char *msg, ...)
{
va_list ap;
char str[256];
diff --git a/mdk-stage1/ppp/Changes-2.3 b/mdk-stage1/ppp/Changes-2.3
deleted file mode 100644
index f5c954b4b..000000000
--- a/mdk-stage1/ppp/Changes-2.3
+++ /dev/null
@@ -1,441 +0,0 @@
-What was new in ppp-2.3.11.
-***************************
-
-* Support for Solaris 8 has been added, including support for
- replumbing and IPV6.
-
-* The Solaris `snoop' utility should now work on ppp interfaces.
-
-* New hooks have been added - pap_logout_hook, ip_up_hook, and
- ip_down_hook.
-
-* A new `passprompt' plugin is included, thanks to Alan Curry, which
- makes it possible for pppd to call an external program to get the
- PAP password to send to the peer.
-
-* The error messages for the situation where authentication is
- required because the system has a default route have been improved.
-
-* There is a new connect_delay option which specifies how long pppd
- should pause after the connect script finishes. Previously this
- delay was fixed at 1 second. (This delay terminates as soon as pppd
- sees a valid PPP frame from the peer.)
-
-* The `hide-password' option is now the default, and there is a new
- `show-password' option to enable the printing of password strings in
- the debug output.
-
-* A fairly complete list of the names of PPP protocols has been added
- so that when pppd rejects a frame because its protocol is not
- supported, it can print the name of the unsupported protocol.
-
-* Synchronous serial lines are supported under Linux 2.3.x.
-
-* The bug where pppd would not recognize a modem hangup under Linux
- 2.3.x kernels has been fixed.
-
-
-What was new in ppp-2.3.10.
-***************************
-
-* Pppd now supports `plugins', which are pieces of code (packaged as
- shared libraries) which can be loaded into pppd at runtime and which
- can affect its behaviour. The intention is that plugins provide a
- way for people to customize the behaviour of pppd for their own
- needs without needing to change the base pppd source. I have added
- some hooks into pppd (places where pppd will call a function
- pointer, if non-zero, to replace some of pppd's code) and I will be
- receptive to suggestions about places to add more hooks. Plugins
- are supported under Linux and Solaris at present.
-
-* We have a new maintainer for the Solaris port, Adi Masputra of Sun
- Microsystems, and he has updated the Solaris port so that it should
- work on 64-bit machines under Solaris 7 and later.
-
-* Pppd now has an `allow-ip' option, which takes an argument which is
- an IP address (or subnet) which peers are permitted to use without
- authenticating themselves. The argument takes the same form as each
- element of the allowed IP address list in the secrets files. The
- allow-ip option is privileged and may be specified multiple times.
- Using the allow-ip option should be cleaner than putting a line like
- `"" * "" address' in /etc/ppp/pap-secrets.
-
-* Chat can now substitute environment variables into the script. This
- is enabled by the -E flag. (Thanks to Andreas Arens for the patch.)
-
-* If the PAP username and password from the peer contains unprintable
- characters, they will be translated to a printable form before
- looking in the pap-secrets file. Characters >= 0x80 are translated
- to a M- form, and characters from 0 to 0x1f (and 0x7f as well) are
- translated to a ^X form. If this change causes you grief, let me
- know what would be a better translation. It appears that some peers
- send nulls or other control characters in their usernames and
- passwords.
-
-* Pppd has new `ktune' and `noktune' options, which enable/disable
- it to change kernel settings as appropriate. This is only
- implemented under Linux, and requires the /proc filesystem to be
- mounted. Under Linux, with the ktune option, pppd will enable IP
- forwarding in the kernel if the proxyarp option is used, and will
- enable the dynamic IP address kernel option in demand mode if the
- local IP address changes.
-
-* Pppd no longer requires a remote address to be specified for demand
- dialling. If none is specified, it will use a default value of
- 10.112.112.112+unit_number. (It will not propose this default to
- the peer.)
-
-* The default holdoff is now 0 if no connect script is given.
-
-* The IPV6 code from Tommi Komulainen, which I unfortunately only
- partially merged in to ppp-2.3.9, has been fixed and updated.
-
-* The linux compilation glitches should be fixed now.
-
-
-What was new in ppp-2.3.9.
-**************************
-
-* Support for the new generic PPP layer under development for the
- Linux kernel.
-
-* You can now place extra options to apply to specific users at the
- end of the line with their password in the pap-secrets or
- chap-secrets file, separated from the IP address(es) with a "--"
- separator. These options are parsed after the peer is authenticated
- but before network protocol (IPCP, IPXCP) or CCP negotiation
- commences.
-
-* Pppd will apply the holdoff period if the link was terminated by the
- peer. It doesn't apply it if the link was terminated because the
- local pppd thought it was idle.
-
-* Synchronous support for Solaris has been added, thanks to John
- Morrison, and for FreeBSD, thanks to Paul Fulghum.
-
-* IPV6 support has been merged in, from Tommi Komulainen. At the
- moment it only supports Linux and it is not tested by me.
-
-* The `nodefaultip' option can be used in demand mode to say that pppd
- should not suggest its local IP address to the peer.
-
-* The `init' option has been added; this causes pppd to run a script
- to initialize the serial device (e.g. by sending an init string to
- the modem). Unlike the connect option, this can be used in a
- dial-in situation. (Thanks to Tobias Ringstrom.)
-
-* There is a new `logfile' option to send log messages to a file as
- well as syslog.
-
-* There is a new, privileged `linkname' option which sets a logical
- name for the link. Pppd will create a /var/run/ppp-<linkname>.pid
- file containing its process ID.
-
-* There is a new `maxfail' option which specifies how many consecutive
- failed connection attempts are permitted before pppd will exit. The
- default value is 10, and 0 means infinity. :-)
-
-* Sundry bugs fixed.
-
-
-What was new in ppp-2.3.8.
-**************************
-
-* The exit status of pppd will now indicate whether the link was
- successfully established, or if not, what error was encountered.
-
-* Pppd has two new options: fdlog <n> will send log messages to file
- descriptor <n> instead of standard output, and nofdlog will stop log
- messages from being sent to any file descriptor (they will still be
- sent to syslog). Pppd now will not send log messages to a file
- descriptor if the serial port is open on that file descriptor.
-
-* Pppd sets an environment variable called PPPLOGNAME for scripts that
- it runs, indicating the login name of the user who invoked pppd.
-
-* Pppd sets environment variables CONNECT_TIME, BYTES_SENT and
- BYTES_RCVD for the ip-down and auth-down scripts indicating the
- statistics for the connection just terminated. (CONNECT_TIME is in
- seconds.)
-
-* If the user has the serial device open on standard input and
- specifies a symbolic link to the serial device on the command line,
- pppd will detect this and behave correctly (i.e. not detach from its
- controlling terminal). Furthermore, if the serial port is open for
- reading and writing on standard input, pppd will assume that it is
- locked by its invoker and not lock it itself.
-
-* Chat now has a feature where if a string to be sent begins with an
- at sign (@), the rest of the string is taken as the name of a file
- (regular file or named pipe), and the actual string to send is taken
- from that file.
-
-* Support for FreeBSD-2.2.8 and 3.0 has been added, thanks to Paul
- Fulghum.
-
-* The Tru64 (aka Digital Unix aka OSF/1) port has been updated.
-
-* The system panics on Solaris SMP systems related to PPP connections
- being established and terminated should no longer occur.
-
-* Fixed quite a few bugs.
-
-
-What was new in ppp-2.3.7.
-**************************
-
-* Pppd can now automatically allocate itself a pseudo-tty to use as
- the serial device. This has made three new options possible:
-
- - `pty script' will run `script' with its standard input and output
- connected to the master side of the pty. For example:
- pppd pty 'ssh -t server.my.net pppd'
- is a basic command for setting up a PPP link (tunnel) over ssh.
- (In practice you may need to specify other options such as IP
- addresses, etc.)
-
- - `notty' tells pppd to communicate over its standard input and
- output, which do not have to be a terminal device.
-
- - `record filename' tells pppd to record all of the characters sent
- and received over the serial device to a file called `filename'.
- The data is recorded in a tagged format with timestamps, which can
- be printed in a readable form with the pppdump program, which is
- included in this distribution.
-
-* Pppd now logs the connect time and number of bytes sent and received
- (at the level of the serial device) when the connection is
- terminated.
-
-* If you use the updetach or nodetach option, pppd will print its
- messages to standard output as well as logging them with syslog
- (provided of course pppd isn't using its standard input or output as
- its serial device).
-
-* There is a new `privgroup groupname' option (a privileged option).
- If the user running pppd is in group `groupname', s/he can use
- privileged options without restriction.
-
-* There is a new `receive-all' option, which causes pppd to accept all
- control characters, even the ones that the peer should be escaping
- (i.e. the receive asyncmap is 0). This is useful with some buggy
- peers.
-
-* The default asyncmap is now 0.
-
-* There is a new `sync' option, currently only implemented under
- Linux, which allows pppd to run on synchronous HDLC devices.
-
-* If a value for the device name or for the connect, disconnect,
- welcome or pty option is given in a privileged option file
- (i.e. /etc/ppp/options or a file loaded with the `call' option), it
- cannot be overridden by a non-privileged user.
-
-* Many bugs have been fixed, notably:
- - signals are not blocked unnecessarily, as they were in 2.3.6.
- - the usepeerdns option should work now.
- - the SPEED environment variable for scripts is set correctly.
- - the /etc/ppp/auth-down script is not run until auth-up completes.
- - the device is opened as root if it is the device on standard
- input.
- - pppd doesn't die with the ioctl(PPPIOCSASYNCMAP) error under linux
- if a hangup occurs at the wrong time.
-
-* Some error messages have been changed to be clearer (I hope :-)
-
-
-What was new in ppp-2.3.6.
-**************************
-
-* Pppd now opens the tty device as the user (rather than as root) if
- the device name was given by the user, i.e. on the command line or
- in the ~/.ppprc file. If the device name was given in
- /etc/ppp/options or in a file loaded with the `call' option, the
- device is opened as root.
-
-* The default behaviour of pppd is now to let a peer which has not
- authenticated itself (e.g. your ISP) use any IP address to which the
- system does not already have a route. (This is currently only
- supported under Linux, Solaris and Digital Unix; on the other
- systems, the peer must now authenticate itself unless the noauth
- option is used.)
-
-* Added new option `usepeerdns', thanks to Nick Walker
- <nickwalker@email.com>. If the peer supplies DNS addresses, these
- will be written to /etc/ppp/resolv.conf. The ip-up script can then
- be used to add these addresses to /etc/resolv.conf if desired (see
- the ip-up.local.add and ip-down.local.add files in the scripts
- directory).
-
-* The Solaris ppp driver should now work correctly on SMP systems.
-
-* Minor corrections so that the code can compile under Solaris 7,
- and under Linux with glibc-2.1.
-
-* The Linux kernel driver has been restructured for improved
- performance.
-
-* Pppd now won't start the ip-down script until the ip-up script has
- finished.
-
-
-What was new in ppp-2.3.5.
-**************************
-
-* Minor corrections to the Digital UNIX and NetBSD ports.
-
-* A workaround to avoid tickling a bug in the `se' serial port driver
-on Sun PCI Ultra machines running Solaris.
-
-* Fixed a bug in the negotiation of the Microsoft WINS server address
-option.
-
-* Fixed a bug in the Linux port where it would fail for kernel
-versions above 2.1.99.
-
-
-What was new in ppp-2.3.4.
-**************************
-
-* The NeXT port has been updated, thanks to Steve Perkins.
-
-* ppp-2.3.4 compiles and works under Solaris 2.6, using either gcc or
-cc.
-
-* With the Solaris, SVR4 and SunOS ports, you can control the choice
-of C compiler, C compiler options, and installation directories by
-editing the svr4/Makedefs or sunos4/Makedefs file.
-
-* Until now, we have been using the number 24 to identify Deflate
-compression in the CCP negotiations, which was the number in the draft
-RFC describing Deflate. The number actually assigned to Deflate is
-26. The code has been changed to use 26, but to allow the use of 24
-for now for backwards compatibility. (This can be disabled with the
-`nodeflatedraft' option to pppd.)
-
-* Fixed some bugs in the linux driver and deflate compressor which
-were causing compression problems, including corrupting long
-incompressible packets sometimes.
-
-* Fixes to the PAM and shadow password support in pppd, from Al
-Longyear and others.
-
-* Pppd now sets some environment variables for scripts it invokes
-(ip-up/down, auth-ip/down), giving information about the connection.
-The variables it sets are PEERNAME, IPLOCAL, IPREMOTE, UID, DEVICE,
-SPEED, and IFNAME.
-
-* Pppd now has an `updetach' option, which will cause it to detach
-from its controlling terminal once the link has come up (i.e. once it
-is available for IP traffic).
-
-
-What was new in ppp-2.3.3.
-**************************
-
-* Fixed compilation problems under SunOS.
-
-* Fixed a bug introduced into chat in 2.3.2, and compilation problems
-introduced into the MS-CHAP implementation in 2.3.2.
-
-* The linux kernel driver has been updated for recent 2.1-series
-kernel changes, and it now will ask kerneld to load compression
-modules when required, if the kernel is configured to support kerneld.
-
-* Pppd should now compile correctly under linux on systems with glibc.
-
-
-What was new in ppp-2.3.2.
-**************************
-
-* In 2.3.1, I made a change which was intended to make pppd able to
-detect loss of CD during or immediately after the connection script
-runs. Unfortunately, this had the side-effect that the connection
-script wouldn't work at all on some systems. This change has been
-reversed.
-
-* Fix compilation problems in the Linux kernel driver.
-
-
-What was new in ppp-2.3.1.
-**************************
-
-* Enhancements to chat, thanks to Francis Demierre. Chat can now
-accept comments in the chat script file, and has new SAY, HANGUP,
-CLR_ABORT and CLR_REPORT keywords.
-
-* Fixed a bug which causes 2.3.0 to crash Solaris systems.
-
-* Bug-fixes and restructuring of the Linux kernel driver.
-
-* The holdoff behaviour of pppd has been changed slightly: now, if
-the link comes up for IP (or other network protocol) traffic, we
-consider that the link has been successfully established, and don't
-enforce the holdoff period after the link goes down.
-
-* Pppd should now correctly wait for CD (carrier detect) from the
-modem, even when the serial port initially had CLOCAL set, and it
-should also detect loss of CD during or immediately after the
-connection script runs.
-
-* Under linux, pppd will work with older 2.2.0* version kernel
-drivers, although demand-dialling is not supported with them.
-
-* Minor bugfixes for pppd.
-
-
-What was new in ppp-2.3.
-************************
-
-* Demand-dialling. Pppd now has a mode where it will establish the
-network interface immediately when it starts, but not actually bring
-the link up until it sees some data to be sent. Look for the demand
-option description in the pppd man page. Demand-dialling is not
-supported under Ultrix or NeXTStep.
-
-* Idle timeout. Pppd will optionally terminate the link if no data
-packets are sent or received within a certain time interval.
-
-* Pppd now runs the /etc/ppp/auth-up script, if it exists, when the
-peer successfully authenticates itself, and /etc/ppp/auth-down when
-the connection is subsequently terminated. This can be useful for
-accounting purposes.
-
-* A new packet compression scheme, Deflate, has been implemented.
-This uses the same compression method as `gzip'. This method is free
-of patent or copyright restrictions, and it achieves better
-compression than BSD-Compress. It does consume more CPU cycles for
-compression than BSD-Compress, but this shouldn't be a problem for
-links running at 100kbit/s or less.
-
-* There is no code in this distribution which is covered by Brad
-Clements' restrictive copyright notice. The STREAMS modules for SunOS
-and OSF/1 have been rewritten, based on the Solaris 2 modules, which
-were written from scratch without any Clements code.
-
-* Pppstats has been reworked to clean up the output format somewhat.
-It also has a new -d option which displays data rate in kbyte/s for
-those columns which would normally display bytes.
-
-* Pppd options beginning with - or + have been renamed, e.g. -ip
-became noip, +chap became require-chap, etc. The old options are
-still accepted for compatibility but may be removed in future.
-
-* Pppd now has some options (such as the new `noauth' option) which
-can only be specified if it is being run by root, or in an
-"privileged" options file: /etc/ppp/options or an options file in the
-/etc/ppp/peers directory. There is a new "call" option to read
-options from a file in /etc/ppp/peers, making it possible for non-root
-users to make unauthenticated connections, but only to certain trusted
-peers. My intention is to make the `auth' option the default in a
-future release.
-
-* Several minor new features have been added to pppd, including the
-maxconnect and welcome options. Pppd will now terminate the
-connection when there are no network control protocols running. The
-allowed IP address(es) field in the secrets files can now specify
-subnets (with a notation like 123.45.67.89/24) and addresses which are
-not acceptable (put a ! on the front).
-
-* Numerous bugs have been fixed (no doubt some have been introduced :-)
-Thanks to those who reported bugs in ppp-2.2.
diff --git a/mdk-stage1/ppp/FAQ b/mdk-stage1/ppp/FAQ
deleted file mode 100644
index 96bc5c708..000000000
--- a/mdk-stage1/ppp/FAQ
+++ /dev/null
@@ -1,634 +0,0 @@
-This is a list of Frequently Asked Questions about using ppp-2.x and
-their answers.
-
-
-------------------------------------------------------------------------
-
-Q: Can you give me an example of how I might set up my machine to dial
-out to an ISP?
-
-A: Here's an example for dialling out to an ISP via a modem on
-/dev/tty02. The modem uses hardware (CTS/RTS) flow control, and the
-serial port is run at 38400 baud. The ISP assigns our IP address.
-
-To configure pppd for this connection, create a file under
-/etc/ppp/peers called (say) my-isp containing the following:
-
-tty02 crtscts 38400
-connect 'chat -v -f /etc/ppp/chat/my-isp'
-defaultroute
-
-The ppp connection is then initiated using the following command:
-
-pppd call my-isp
-
-Of course, if the directory containing pppd is not in your path, you
-will need to give the full pathname for pppd, for example,
-/usr/sbin/pppd.
-
-When you run this, pppd will use the chat program to dial the ISP and
-invoke its ppp service. Chat will read the file specified with -f,
-namely /etc/ppp/chat/my-isp, to find a list of strings to expect to
-receive, and strings to send. This file would contain something like
-this:
-
-ABORT "NO CARRIER"
-ABORT "NO DIALTONE"
-ABORT "ERROR"
-ABORT "NO ANSWER"
-ABORT "BUSY"
-ABORT "Username/Password Incorrect"
-"" "at"
-OK "at&d2&c1"
-OK "atdt2479381"
-"name:" "^Uusername"
-"word:" "\qpassword"
-"annex" "\q^Uppp"
-"Switching to PPP-ppp-Switching to PPP"
-
-You will need to change the details here. The first string on each
-line is a string to expect to receive; the second is the string to
-send. You can add or delete lines according to the dialog required to
-access your ISP's system. This example is for a modem with a standard
-AT command set, dialling out to an Annex terminal server. The \q
-toggles "quiet" mode; when quiet mode is on, the strings to be sent
-are replaced by ?????? in the log. You may need to go through the
-dialog manually using kermit or tip first to determine what should go
-in the script.
-
-To terminate the link, run the following script, called (say)
-kill-ppp:
-
-#!/bin/sh
-unit=ppp${1-0}
-piddir=/var/run
-if [ -f $piddir/$unit.pid ]; then
- kill -1 `cat $piddir/$unit.pid`
-fi
-
-On some systems (SunOS, Solaris, Ultrix), you will need to change
-/var/run to /etc/ppp.
-
-
-------------------------------------------------------------------------
-
-Q: Can you give me an example of how I could set up my office machine
-so I can dial in to it from home?
-
-A: Let's assume that the office machine is called "office" and is on a
-local ethernet subnet. Call the home machine "home" and give it an IP
-address on the same subnet as "office". We'll require both machines
-to authenticate themselves to each other.
-
-Set up the files on "office" as follows:
-
-/etc/ppp/options contains:
-
-auth # require the peer to authenticate itself
-lock
-# other options can go here if desired
-
-/etc/ppp/chap-secrets contains:
-
-home office "beware the frub-jub" home
-office home "bird, my son!%&*" -
-
-Set up a modem on a serial port so that users can dial in to the
-modem and get a login prompt.
-
-On "home", set up the files as follows:
-
-/etc/ppp/options contains the same as on "office".
-
-/etc/ppp/chap-secrets contains:
-
-home office "beware the frub-jub" -
-office home "bird, my son!%&*" office
-
-Create a file called /etc/ppp/peers/office containing the following:
-
-tty02 crtscts 38400
-connect 'chat -v -f /etc/ppp/chat/office'
-defaultroute
-
-(You may need to change some of the details here.)
-
-Create the /etc/ppp/chat/office file containing the following:
-
-ABORT "NO CARRIER"
-ABORT "NO DIALTONE"
-ABORT "ERROR"
-ABORT "NO ANSWER"
-ABORT "BUSY"
-ABORT "ogin incorrect"
-"" "at"
-OK "at&d2&c1"
-OK "atdt2479381"
-"name:" "^Uusername"
-"word:" "\qpassword"
-"$" "\q^U/usr/sbin/pppd proxyarp"
-"~"
-
-You will need to change the details. Note that the "$" in the
-second-last line is expecting the shell prompt after a successful
-login - you may need to change it to "%" or something else.
-
-You then initiate the connection (from home) with the command:
-
-pppd call office
-
-------------------------------------------------------------------------
-
-Q: When I try to establish a connection, the modem successfully dials
-the remote system, but then hangs up a few seconds later. How do I
-find out what's going wrong?
-
-A: There are a number of possible problems here. The first thing to
-do is to ensure that pppd's messages are visible. Pppd uses the
-syslog facility to log messages which help to identify specific
-problems. Messages from pppd have facility "daemon" and levels
-ranging from "debug" to "error".
-
-Usually it is useful to see messages of level "notice" or higher on
-the console. To see these, find the line in /etc/syslog.conf which
-has /dev/console on the right-hand side, and add "daemon.notice" in
-the list on the left. The line will end up looking something like
-this:
-
-*.err;kern.debug;auth.notice;mail.crit;daemon.notice /dev/console
-
-Note that the whitespace is tabs, *not* spaces.
-
-If you are having problems, it may be useful to see messages of level
-"info" as well, in which case you would change "daemon.notice" to
-"daemon.info".
-
-In addition, it is useful to collect pppd's debugging output in a
-file - the debug option to pppd causes it to log the contents of all
-control packets sent and received in human-readable form. To do this,
-add a line like this to /etc/syslog.conf:
-
-daemon,local2.debug /etc/ppp/log
-
-and create an empty /etc/ppp/log file.
-
-When you change syslog.conf, you will need to send a HUP signal to
-syslogd to causes it to re-read syslog.conf. You can do this with a
-command like this (as root):
-
- kill -HUP `cat /etc/syslogd.pid`
-
-(On some systems, you need to use /var/run/syslog.pid instead of
-/etc/syslogd.pid.)
-
-After setting up syslog like this, you can use the -v flag to chat and
-the `debug' option to pppd to get more information. Try initiating
-the connection again; when it fails, inspect /etc/ppp/log to see what
-happened and where the connection failed.
-
-
-------------------------------------------------------------------------
-
-Q: When I try to establish a connection, I get an error message saying
-"Serial link is not 8-bit clean". Why?
-
-A: The most common cause is that your connection script hasn't
-successfully dialled out to the remote system and invoked ppp service
-there. Instead, pppd is talking to something (a shell or login
-process on the remote machine, or maybe just the modem) which is only
-outputting 7-bit characters.
-
-This can also arise with a modem which uses an AT command set if the
-dial command is issued before pppd is invoked, rather than within a
-connect script started by pppd. If the serial port is set to 7
-bits/character plus parity when the last AT command is issued, the
-modem serial port will be set to the same setting.
-
-Note that pppd *always* sets the local serial port to 8 bits per
-character, with no parity and 1 stop bit. So you shouldn't need to
-issue an stty command before invoking pppd.
-
-
-------------------------------------------------------------------------
-
-Q: When I try to establish a connection, I get an error message saying
-"Serial line is looped back". Why?
-
-A: Probably your connection script hasn't successfully dialled out to
-the remote system and invoked ppp service there. Instead, pppd is
-talking to something which is just echoing back the characters it
-receives. The -v option to chat can help you find out what's going
-on. It can be useful to include "~" as the last expect string to
-chat, so chat won't return until it's seen the start of the first PPP
-frame from the remote system.
-
-Another possibility is that your phone connection has dropped for some
-obscure reason and the modem is echoing the characters it receives
-from your system.
-
-
-------------------------------------------------------------------------
-
-Q: I installed pppd successfully, but when I try to run it, I get a
-message saying something like "peer authentication required but no
-authentication files accessible".
-
-A: When pppd is used on a machine which already has a connection to
-the Internet (or to be more precise, one which has a default route in
-its routing table), it will require all peers to authenticate
-themselves. The reason for this is that if you don't require
-authentication, you have a security hole, because the peer can
-basically choose any IP address it wants, even the IP address of some
-trusted host (for example, a host mentioned in some .rhosts file).
-
-On machines which don't have a default route, pppd does not require
-the peer to authenticate itself. The reason is that such machines
-would mostly be using pppd to dial out to an ISP which will refuse to
-authenticate itself. In that case the peer can use any IP address as
-long as the system does not already have a route to that address.
-For example, if you have a local ethernet network, the peer can't use
-an address on that network. (In fact it could if it authenticated
-itself and it was permitted to use that address by the pap-secrets or
-chap-secrets file.)
-
-There are 3 ways around the problem:
-
-1. If possible, arrange for the peer to authenticate itself, and
-create the necessary secrets files (/etc/ppp/pap-secrets and/or
-/etc/ppp/chap-secrets).
-
-2. If the peer refuses to authenticate itself, and will always be
-using the same IP address, or one of a small set of IP addresses, you
-can create an entry in the /etc/ppp/pap-secrets file like this:
-
- "" * "" his-ip.his-domain his-other-ip.other-domain
-
-(that is, using the empty string for the client name and password
-fields). Of couse, you replace the 4th and following fields in the
-example above with the IP address(es) that the peer may use. You can
-use either hostnames or numeric IP addresses.
-
-3. You can add the `noauth' option to the /etc/ppp/options file.
-Pppd will then not ask the peer to authenticate itself. If you do
-this, I *strongly* recommend that you remove the set-uid bit from the
-permissions on the pppd executable, with a command like this:
-
- chmod u-s /usr/sbin/pppd
-
-Then, an intruder could only use pppd maliciously if they had already
-become root, in which case they couldn't do any more damage using pppd
-than they could anyway.
-
-
-------------------------------------------------------------------------
-
-Q: What do I need to put in the secrets files?
-
-A: Three things:
- - secrets (i.e. passwords) to use for authenticating this host to
- other hosts (i.e., for proving our identity to others);
- - secrets which other hosts can use for authenticating themselves
- to us (i.e., so that they can prove their identity to us); and
- - information about which IP addresses other hosts may use, once
- they have authenticated themselves.
-
-There are two authentication files: /etc/ppp/pap-secrets, which
-contains secrets for use with PAP (the Password Authentication
-Protocol), and /etc/ppp/chap-secrets, which contains secrets for use
-with CHAP (the Challenge Handshake Authentication Protocol). Both
-files have the same simple format, which is as follows:
-
-- The file contains a series of entries, each of which contains a
-secret for authenticating one machine to another.
-
-- Each entry is contained on a single logical line. A logical line
-may be continued across several lines by placing a backslash (\) at
-the end of each line except the last.
-
-- Each entry has 3 or more fields, separated by whitespace (spaces
-and/or tabs). These fields are, in order:
- * The name of the machine that is authenticating itself
- (the "client").
- * The name of the machine that is authenticating the client
- (the "server").
- * The secret to be used for authenticating that client to that
- server. If this field begins with the at-sign `@', the rest
- of the field is taken as the name of a file containing the
- actual secret.
- * The 4th and any following fields list the IP address(es)
- that the client may use.
-
-- The file may contain comments, which begin with a `#' and continue
-to the end of the line.
-
-- Double quotes `"' should be used around a field if it contains
-characters with special significance, such as space, tab, `#', etc.
-
-- The backslash `\' may be used before characters with special
-significance (space, tab, `#', `\', etc.) to remove that significance.
-
-Some important points to note:
-
-* A machine can be *both* a "client" and a "server" for the purposes
-of authentication - this happens when both peers require the other to
-authenticate itself. So A would authenticate itself to B, and B would
-also authenticate itself to A (possibly using a different
-authentication protocol).
-
-* If both the "client" and the "server" are running ppp-2.x, they need
-to have a similar entry in the appropriate secrets file; the first two
-fields are *not* swapped on the client, compared to the server. So
-the client might have an entry like this:
-
- ay bee "our little secret" -
-
-and the corresponding entry on the server could look like this:
-
- ay bee "our little secret" 123.45.67.89
-
-
-------------------------------------------------------------------------
-
-Q: Explain about PAP and CHAP?
-
-PAP stands for the Password Authentication Protocol. With this
-protocol, the "client" (the machine that needs to authenticate itself)
-sends its name and a password, in clear text, to the "server". The
-server returns a message indicating whether the name and password are
-valid.
-
-CHAP stands for the Challenge Handshake Authentication Protocol. It
-is designed to address some of the deficiencies and vulnerabilities of
-PAP. Like PAP, it is based on the client and server having a shared
-secret, but the secret is never passed in clear text over the link.
-Instead, the server sends a "challenge" - an arbitrary string of
-bytes, and the client must prove it knows the shared secret by
-generating a hash value from the challenge combined with the shared
-secret, and sending the hash value back to the server. The server
-also generates the hash value and compares it with the value received
-from the client.
-
-At a practical level, CHAP can be slightly easier to configure than
-PAP because the server sends its name with the challenge. Thus, when
-finding the appropriate secret in the secrets file, the client knows
-the server's name. In contrast, with PAP, the client has to find its
-password (i.e. the shared secret) before it has received anything from
-the server. Thus, it may be necessary to use the `remotename' option
-to pppd when using PAP authentication so that it can select the
-appropriate secret from /etc/ppp/pap-secrets.
-
-Microsoft also has a variant of CHAP which uses a different hashing
-arrangement from normal CHAP. There is a client-side implementation
-of Microsoft's CHAP in ppp-2.3; see README.MSCHAP80.
-
-
-------------------------------------------------------------------------
-
-Q: When the modem hangs up, without the remote system having
-terminated the connection properly, pppd does not notice the hangup,
-but just keeps running. How do I get pppd to notice the hangup and
-exit?
-
-A: Pppd detects modem hangup by looking for an end-of-file indication
-from the serial driver, which should be generated when the CD (carrier
-detect) signal on the serial port is deasserted. For this to work:
-
-- The modem has to be set to assert CD when the connection is made and
-deassert it when the phone line hangs up. Usually the AT&C1 modem
-command sets this mode.
-
-- The cable from the modem to the serial port must connect the CD
-signal (on pin 8).
-
-- Some serial drivers have a "software carrier detect" mode, which
-must be *disabled*. The method of doing this varies between systems.
-Under SunOS, use the ttysoftcar command. Under NetBSD, edit /etc/ttys
-to remove the "softcar" flag from the line for the serial port, and
-run ttyflags.
-
-
-------------------------------------------------------------------------
-
-Q: Why should I use PPP compression (BSD-Compress or Deflate) when my
-modem already does V.42 compression? Won't it slow the CPU down a
-lot?
-
-A: Using PPP compression is preferable, especially when using modems
-over phone lines, for the following reasons:
-
-- The V.42 compression in the modem isn't very strong - it's an LZW
-technique (same as BSD-Compress) with a 10, 11 or 12 bit code size.
-With BSD-Compress you can use a code size of up to 15 bits and get
-much better compression, or you can use Deflate and get even better
-compression ratios.
-
-- I have found that enabling V.42 compression in my 14.4k modem
-increases the round-trip time for a character to be sent, echoed and
-returned by around 40ms, from 160ms to 200ms (with error correction
-enabled). This is enough to make it feel less responsive on rlogin or
-telnet sessions. Using PPP compression adds less than 5ms (small
-enough that I couldn't measure it reliably). I admit my modem is a
-cheapie and other modems may well perform better.
-
-- While compression and decompression do require some CPU time, they
-reduce the amount of time spent in the serial driver to transmit a
-given amount of data. Many machines require an interrupt for each
-character sent or received, and the interrupt handler can take a
-significant amount of CPU time. So the increase in CPU load isn't as
-great as you might think. My measurements indicate that a system with
-a 33MHz 486 CPU should be able to do Deflate compression for serial
-link speeds of up to 100kb/s or more. It depends somewhat on the type
-of data, of course; for example, when compressing a string of nulls
-with Deflate, it's hard to get a high output data rate from the
-compressor, simply because it compresses strings of nulls so well that
-it has to eat a very large amount of input data to get each byte of
-output.
-
-
-------------------------------------------------------------------------
-
-Q: I get messages saying "Unsupported protocol (...) received". What do
-these mean?
-
-A: If you only get one or two when pppd starts negotiating with the
-peer, they mean that the peer wanted to negotiate some PPP protocol
-that pppd doesn't understand. This doesn't represent a problem, it
-simply means that there is some functionality that the peer supports
-that pppd doesn't, so that functionality can't be used.
-
-If you get them sporadically while the link is operating, or if the
-protocol numbers (in parentheses) don't correspond to any valid PPP
-protocol that the peer might be using, then the problem is probably
-that characters are getting corrupted on the receive side, or that
-extra characters are being inserted into the receive stream somehow.
-If this is happening, most packets that get corrupted should get
-discarded by the FCS (Frame Check Sequence, a 16-bit CRC) check, but a
-small number may get through.
-
-One possibility may be that you are receiving broadcast messages on
-the remote system which are being sent over your serial link. Another
-possibility is that your modem is set for XON/XOFF (software) flow
-control and is inserting ^Q and ^S characters into the receive data
-stream.
-
-
-------------------------------------------------------------------------
-
-Q: I get messages saying "Protocol-Reject for unsupported protocol ...".
-What do these mean?
-
-A: This is the other side of the previous question. If characters are
-getting corrupted on the way to the peer, or if your system is
-inserting extra bogus characters into the transmit data stream, the
-peer may send protocol-reject messages to you, resulting in the above
-message (since your pppd doesn't recognize the protocol number
-either.)
-
-
-------------------------------------------------------------------------
-
-Q: I get a message saying something like "ioctl(TIOCSETD): Operation
-not permitted". How do I fix this?
-
-A: This is because pppd is not running as root. If you have not
-installed pppd setuid-root, you will have to be root to run it. If
-you have installed pppd setuid-root and you still get this message, it
-is probably because your shell is using some other copy of pppd than
-the installed one - for example, if you are in the pppd directory
-where you've just built pppd and your $PATH has . before /usr/sbin (or
-wherever pppd gets installed).
-
-
-------------------------------------------------------------------------
-
-Q: Has your package been ported to HP/UX or IRIX or AIX?
-
-A: No. I don't have access to systems running HP/UX or AIX. No-one
-has volunteered to port it to HP/UX. I had someone who did a port for
-AIX 4.x, but who is no longer able to maintain it. And apparently AIX
-3.x is quite different, so it would need a separate port.
-
-IRIX includes a good PPP implementation in the standard distribution,
-as far as I know.
-
-
-------------------------------------------------------------------------
-
-Q: Under SunOS 4, when I try to modload the ppp modules, I get the
-message "can't open /dev/vd: No such device".
-
-A: First check in /dev that there is an entry like this:
-
-crw-r--r-- 1 root 57, 0 Oct 2 1991 vd
-
-If not, make one (mknod /dev/vd c 57 0). If the problem still exists,
-probably your kernel has been configured without the vd driver
-included. The vd driver is needed for loadable module support.
-
-First, identify the config file that was used. When you boot your
-machine, or if you run /etc/dmesg, you'll see a line that looks
-something like this:
-
-SunOS Release 4.1.3_U1 (CAP_XBOX) #7: Thu Mar 21 15:31:56 EST 1996
- ^^^^^^^^
- this is the config file name
-
-The config file will be in the /sys/`arch -k`/conf directory (arch -k
-should return sun4m for a SparcStation 10, sun3x for a Sun 3/80,
-etc.). Look in there for a line saying "options VDDRV". If that line
-isn't present (or is commented out), add it (or uncomment it).
-
-You then need to rebuild the kernel as described in the SunOS
-manuals. Basically you need to run config and make like this:
-
- /usr/etc/config CAP_XBOX
- cd ../CAP_XBOX
- make
-
-(replacing the string CAP_XBOX by the name of the config file for your
-kernel, of course).
-
-Then copy the new kernel to /:
-
- mv /vmunix /vmunix.working
- cp vmunix /
-
-and reboot. Modload should then work.
-
-
-------------------------------------------------------------------------
-
-Q: I'm running Linux (or NetBSD or FreeBSD), and my system comes with
-PPP already. Should I consider installing this package? Why?
-
-A: The PPP that is already installed in your system is (or is derived
-from) some version of this PPP package. You can find out what version
-of this package is already installed with the command "pppd --help".
-If this is older than the latest version, you may wish to install the
-latest version so that you can take advantage of the new features or
-bug fixes.
-
-
-------------------------------------------------------------------------
-
-Q: I'm running pppd in demand mode, and I find that pppd often dials
-out unnecessarily when I try to make a connection within my local
-machine or with a machine on my local LAN. What can I do about this?
-
-A: Very often the cause of this is that a program is trying to contact
-a nameserver to resolve a hostname, and the nameserver (specified in
-/etc/resolv.conf, usually) is on the far side of the ppp link. You
-can try executing a command such as `ping myhost' (where myhost is the
-name of the local machine, or some other machine on a local LAN), to
-see whether that starts the ppp link. If it does, check the setup of
-your /etc/hosts file to make sure you have the local machine and any
-hosts on your local LAN listed, and /etc/resolv.conf and/or
-/etc/nsswitch.conf files to make sure you resolve hostnames from
-/etc/hosts if possible before trying to contact a nameserver.
-
-
-------------------------------------------------------------------------
-
-Q: Since I installed ppp-2.3.6, dialin users to my server have been
-getting this message when they run pppd:
-
-peer authentication required but no suitable secret(s) found for
-authenticating any peer to us (ispserver)
-
-A: In 2.3.6, the default is to let an unauthenticated peer only use IP
-addresses to which the machine doesn't already have a route. So on a
-machine with a default route, everyone has to authenticate. If you
-really don't want that, you can put `noauth' in the /etc/ppp/options
-file. Note that there is then no check on who is using which IP
-address. IMHO, this is undesirably insecure, but I guess it may be
-tolerable as long as you don't use any .rhosts files or anything like
-that. I recommend that you require dialin users to authenticate, even
-if just with PAP using their login password (using the `login' option
-to pppd). If you do use `noauth', you should at least have a pppusers
-group and set the permissions on pppd to allow only user and group to
-execute it.
-
-------------------------------------------------------------------------
-
-Q: When running pppd as a dial-in server, I often get the message
-"LCP: timeout sending Config-Requests" from pppd. It seems to be
-random, but dial-out always works fine. What is wrong?
-
-A: Most modern modems auto-detects the speed of the serial line
-between the modem and the computer. This auto-detection occurs when
-the computer sends characters to the modem, when the modem is in
-command mode. It does not occur when the modem is in data mode.
-Thus, if you send commands to the modem at 2400 bps, and then change
-the serial port speed to 115200 bps, the modem will not detect this
-change until something is transmitted from the computer to the modem.
-When running pppd in dial-in mode (i.e. without a connect script),
-pppd sets the speed of the serial port, but does not transmit
-anything. If the modem was already running at the specified speed,
-everything is fine, but if not, you will just receive garbage from the
-modem. To cure this, use an init script such as the following:
-
- pppd ttyS0 115200 modem crtscts init "chat '' AT OK"
-
-To reset the modem and enable auto-answer, use:
-
- pppd ttyS0 115200 modem crtscts init "chat '' ATZ OK ATS0=1 OK"
diff --git a/mdk-stage1/ppp/PLUGINS b/mdk-stage1/ppp/PLUGINS
deleted file mode 100644
index 0eeabe249..000000000
--- a/mdk-stage1/ppp/PLUGINS
+++ /dev/null
@@ -1,131 +0,0 @@
-Starting with version 2.3.10, pppd includes support for `plugins' -
-pieces of code which can be loaded into pppd at runtime and which can
-affect its behaviour in various ways. The idea of plugins is to
-provide a way for people to customize the behaviour of pppd without
-having to either apply local patches to each version or get their
-patches accepted into the standard distribution. My aim is that
-plugins will be able to be used with successive versions of pppd
-without needing to recompile the plugins.
-
-A plugin is a standard shared library object, typically with a name
-ending in .so. They are loaded using the standard dlopen() library
-call, so plugins are only supported on systems which support shared
-libraries and the dlopen call. At present pppd is compiled with
-plugin support only under Linux and Solaris.
-
-Plugins are loaded into pppd using the `plugin' option, which takes
-one argument, the name of a shared object file. The plugin option is
-a privileged option. I suggest that you give the full path name of
-the shared object file; if you don't, it may be possible for
-unscrupulous users to substitute another shared object file for the
-one you mean to load, e.g. by setting the LD_LIBRARY_PATH variable.
-
-Plugins are usually written in C and compiled and linked to a shared
-object file in the appropriate manner for your platform. Using gcc
-under Linux, a plugin called `xyz' could be compiled and linked with
-the following commands:
-
- gcc -c -O xyz.c
- gcc -shared -o xyz.so xyz.o
-
-There are some example plugins in the pppd/plugins directory in the
-ppp distribution. Currently there is one example, minconn.c, which
-implements a `minconnect' option, which specifies a minimum connect
-time before the idle timeout applies.
-
-Plugins can access global variables within pppd, so it is useful for
-them to #include "pppd.h" from the pppd source directory.
-
-Every plugin must contain a global procedure called `plugin_init'.
-This procedure will get called (with no arguments) immediately after
-the plugin is loaded.
-
-Plugins can affect the behaviour of pppd in at least three ways:
-
-1. They can add extra options which pppd will then recognize. This is
- done by calling the add_options() procedure with a pointer to an
- array of option_t structures. The last entry in the array must
- have its name field set to NULL.
-
-2. Pppd contains `hook' variables which are procedure pointers. If a
- given hook is not NULL, pppd will call the procedure it points to
- at the appropriate point in its processing. The plugin can set any
- of these hooks to point to its own procedures. See below for a
- description of the hooks which are currently implemented.
-
-3. Plugin code can call any global procedures and access any global
- variables in pppd.
-
-Here is a list of the currently implemented hooks in pppd.
-
-
-int (*idle_time_hook)(struct ppp_idle *idlep);
-
-The idle_time_hook is called when the link first comes up (i.e. when
-the first network protocol comes up) and at intervals thereafter. On
-the first call, the idlep parameter is NULL, and the return value is
-the number of seconds before pppd should check the link activity, or 0
-if there is to be no idle timeout.
-
-On subsequent calls, idlep points to a structure giving the number of
-seconds since the last packets were sent and received. If the return
-value is > 0, pppd will wait that many seconds before checking again.
-If it is <= 0, that indicates that the link should be terminated due
-to lack of activity.
-
-
-int (*holdoff_hook)(void);
-
-The holdoff_hook is called when an attempt to bring up the link fails,
-or the link is terminated, and the persist or demand option was used.
-It returns the number of seconds that pppd should wait before trying
-to reestablish the link (0 means immediately).
-
-
-int (*pap_check_hook)(void);
-int (*pap_passwd_hook)(char *user, char *passwd);
-int (*pap_auth_hook)(char *user, int userlen,
- char *passwd, int passlen,
- char **msgp, int *msglenp,
- struct wordlist **paddrs,
- struct wordlist **popts);
-
-These hooks are designed to allow a plugin to replace the normal PAP
-password processing in pppd with something different (e.g. contacting
-an external server).
-
-The pap_check_hook is called to check whether there is any possibility
-that the peer could authenticate itself to us. If it returns 1, pppd
-will ask the peer to authenticate itself. If it returns 0, pppd will
-not ask the peer to authenticate itself (but if authentication is
-required, pppd may exit, or terminate the link before network protocol
-negotiation). If it returns -1, pppd will look in the pap-secrets
-file as it would normally.
-
-The pap_passwd_hook is called to determine what username and password
-pppd should use in authenticating itself to the peer with PAP. The
-user string will already be initialized, by the `user' option, the
-`name' option, or from the hostname, but can be changed if necessary.
-MAXNAMELEN bytes of space are available at *user, and MAXSECRETLEN
-bytes of space at *passwd. If this hook returns 0, pppd will use the
-values at *user and *passwd; if it returns -1, pppd will look in the
-pap-secrets file, or use the value from the +ua or password option, as
-it would normally.
-
-The pap_auth_hook is called to determine whether the username and
-password supplied by the peer are valid. user and passwd point to
-null-terminated strings containing the username and password supplied
-by the peer, with non-printable characters converted to a printable
-form. The pap_auth_hook function should set msg to a string to be
-returned to the peer and return 1 if the username/password was valid
-and 0 if not. If the hook returns -1, pppd will look in the
-pap-secrets file as usual.
-
-If the username/password was valid, the hook can set *paddrs to point
-to a wordlist containing the IP address(es) which the peer is
-permitted to use, formatted as in the pap-secrets file. It can also
-set *popts to a wordlist containing any extra options for this user
-which pppd should apply at this point.
-
-
-## $Id$ ##
diff --git a/mdk-stage1/ppp/README b/mdk-stage1/ppp/README
deleted file mode 100644
index aa1e5f9c2..000000000
--- a/mdk-stage1/ppp/README
+++ /dev/null
@@ -1,168 +0,0 @@
-This is the README file for ppp-2.4, a package which implements the
-Point-to-Point Protocol (PPP) to provide Internet connections over
-serial lines.
-
-
-Introduction.
-*************
-
-The Point-to-Point Protocol (PPP) provides a standard way to establish
-a network connection over a serial link. At present, this package
-supports IP and the protocols layered above IP, such as TCP and UDP.
-The Linux and Solaris ports of this package have optional support for
-IPV6; the Linux port of this package also has support for IPX.
-
-This software consists of two parts:
-
-- Kernel code, which establishes a network interface and passes
-packets between the serial port, the kernel networking code and the
-PPP daemon (pppd). This code is implemented using STREAMS modules on
-SunOS 4.x and Solaris, and as a line discipline under Linux and FreeBSD.
-
-- The PPP daemon (pppd), which negotiates with the peer to establish
-the link and sets up the ppp network interface. Pppd includes support
-for authentication, so you can control which other systems may make a
-PPP connection and what IP addresses they may use.
-
-The primary platforms supported by this package are Linux and Solaris.
-Code for SunOS 4.x is included here but is largely untested. I have
-code for NeXTStep, FreeBSD, SVR4, Tru64 (Digital Unix), AIX and Ultrix
-but no active maintainers for these platforms. Code for all of these
-except AIX is included in the ppp-2.3.11 release.
-
-
-Installation.
-*************
-
-The file SETUP contains general information about setting up your
-system for using PPP. There is also a README file for each supported
-system, which contains more specific details for installing PPP on
-that system. The supported systems, and the corresponding README
-files, are:
-
- Linux README.linux
- Solaris 2 README.sol2
- SunOS 4.x README.sunos4
-
-In each case you start by running the ./configure script. This works
-out which operating system you are using and creates symbolic links to
-the appropriate makefiles. You then run `make' to compile the
-user-level code, and (as root) `make install' to install the
-user-level programs pppd, chat and pppstats.
-
-N.B. Since 2.3.0, leaving the permitted IP addresses column of the
-pap-secrets or chap-secrets file empty means that no addresses are
-permitted. You need to put a "*" in that column to allow the peer to
-use any IP address. (This only applies where the peer is
-authenticating itself to you, of course.)
-
-
-What's new in ppp-2.4.1.
-************************
-
-* Pppd can now print out the set of options that are in effect. The
- new `dump' option causes pppd to print out the option values after
- option parsing is complete. The `dryrun' option causes pppd to
- print the options and then exit.
-
-* The option parsing code has been fixed so that options in the
- per-tty options file are parsed correctly, and don't override values
- from the command line in most cases.
-
-* The plugin option now looks in /usr/lib/pppd/<pppd-version> (for
- example, /usr/lib/pppd/2.4.1b1) for shared objects for plugins if
- there is no slash in the plugin name.
-
-* When loading a plugin, pppd will now check the version of pppd for
- which the plugin was compiled, and refuse to load it if it is
- different to pppd's version string. To enable this, the plugin
- source needs to #include "pppd.h" and have a line saying:
- char pppd_version[] = VERSION;
-
-* There is a bug in zlib, discovered by James Carlson, which can cause
- kernel memory corruption if Deflate is used with the lowest setting,
- 8. As a workaround pppd will now insist on using at least 9.
-
-* Pppd should compile on Solaris and SunOS again.
-
-* Pppd should now set the MTU correctly on demand-dialled interfaces.
-
-
-What was new in ppp-2.4.0.
-**************************
-
-* Multilink: this package now allows you to combine multiple serial
- links into one logical link or `bundle', for increased bandwidth and
- reduced latency. This is currently only supported under the
- Linux-2.3.99pre5 or later kernels.
-
-* All the pppd processes running on a system now write information
- into a common database. I used the `tdb' code from samba for this.
-
-* New hooks have been added.
-
-For a list of the changes made during the 2.3 series releases of this
-package, see the Changes-2.3 file.
-
-
-Compression methods.
-********************
-
-This package supports two packet compression methods: Deflate and
-BSD-Compress. Other compression methods which are in common use
-include Predictor, LZS, and MPPC. These methods are not supported for
-two reasons - they are patent-encumbered, and they cause some packets
-to expand slightly, which pppd doesn't currently allow for.
-BSD-Compress is also patent-encumbered (its inclusion in this package
-can be considered a historical anomaly :-) but it doesn't ever expand
-packets. Neither does Deflate, which uses the same algorithm as gzip.
-
-
-Patents.
-********
-
-The BSD-Compress algorithm used for packet compression is the same as
-that used in the Unix "compress" command. It is apparently covered by
-U.S. patents 4,814,746 (owned by IBM) and 4,558,302 (owned by Unisys),
-and corresponding patents in various other countries (but not
-Australia). If this is of concern, you can build the package without
-including BSD-Compress. To do this, edit net/ppp-comp.h to change the
-definition of DO_BSD_COMPRESS to 0. The bsd-comp.c files are then no
-longer needed, so the references to bsd-comp.o may optionally be
-removed from the Makefiles.
-
-
-Contacts.
-*********
-
-The comp.protocols.ppp newsgroup is a useful place to get help if you
-have trouble getting your ppp connections to work. Please do not send
-me questions of the form "please help me get connected to my ISP" -
-I'm sorry, but I simply do not have the time to answer all the
-questions like this that I get.
-
-If you find bugs in this package, please report them to the maintainer
-for the port for the operating system you are using:
-
-Linux Paul Mackerras <paulus@linuxcare.com>
-Solaris 2 James Carlson <james.d.carlson@east.sun.com>
-SunOS 4.x Adi Masputra <adi.masputra@sun.com>
-
-
-Copyrights:
-***********
-
-All of the code can be freely used and redistributed. The individual
-source files each have their own copyright and permission notice; some
-have a BSD-style notice and some are under the GPL.
-
-
-Distribution:
-*************
-
-The primary site for releases of this software is:
-
- ftp://linuxcare.com.au/pub/ppp/
-
-
-($Id$)
diff --git a/mdk-stage1/ppp/README.MSCHAP80 b/mdk-stage1/ppp/README.MSCHAP80
deleted file mode 100644
index d3ed291b7..000000000
--- a/mdk-stage1/ppp/README.MSCHAP80
+++ /dev/null
@@ -1,284 +0,0 @@
-PPP Client Support for Microsoft's CHAP-80
-==========================================
-
-Eric Rosenquist rosenqui@strataware.com
-(updated by Paul Mackerras)
-(updated by Al Longyear)
-(updated by Farrell Woods)
-
-INTRODUCTION
-
-Microsoft has introduced an extension to the Challenge/Handshake
-Authentication Protocol (CHAP) which avoids storing cleartext
-passwords on a server. (Unfortunately, this is not as secure as it
-sounds, because the encrypted password stored on a server can be used
-by a bogus client to gain access to the server just as easily as if
-the password were stored in cleartext.) The details of the Microsoft
-extensions can be found in the document:
-
- <ftp://ftp.microsoft.com/developr/rfc/chapexts.txt>
-
-In short, MS-CHAP is identified as <auth chap 80> since the hex value
-of 80 is used to designate Microsoft's scheme. Standard PPP CHAP uses
-a value of 5. If you enable PPP debugging with the "debug" option and
-see something like the following in your logs, the remote server is
-requesting MS-CHAP:
-
- rcvd [LCP ConfReq id=0x2 <asyncmap 0x0> <auth chap 80> <magic 0x46a3>]
- ^^^^^^^^^^^^
-
-The standard pppd implementation will indicate its lack of support for
-MS-CHAP by NAKing it:
-
- sent [LCP ConfNak id=0x2 <auth chap 05>]
-
-Windows NT Server systems are often configured to "Accept only
-Microsoft Authentication" (this is intended to enhance security). Up
-until now, that meant that you couldn't use this version of PPPD to
-connect to such a system. I've managed to get a client-only
-implementation of MS-CHAP working; it will authenticate itself to
-another system using MS-CHAP, but if you're using PPPD as a dial-in
-server, you won't be able to use MS-CHAP to authenticate the clients.
-This would not be a lot of extra work given that the framework is in
-place, but I didn't need it myself so I didn't implement it.
-
-
-BUILDING THE PPPD
-
-MS-CHAP uses a combination of MD4 hashing and DES encryption for
-authentication. You may need to get Eric Young's libdes library in
-order to use my MS-CHAP extensions. A lot of UNIX systems already
-have DES encryption available via the crypt(3), encrypt(3) and
-setkey(3) interfaces. Some may (such as that on Digital UNIX)
-provide only the encryption mechanism and will not perform
-decryption. This is okay. We only need to encrypt to perform
-MS-CHAP authentication.
-
-If you have encrypt/setkey available, then hopefully you need only
-define these two things in your Makefile: -DUSE_CRYPT and -DCHAPMS.
-Skip the paragraphs below about obtaining and building libdes. Do
-the "make clean" and "make" as described below. Linux users
-should not need to modify their Makefiles. Instead,
-just do "make CHAPMS=1 USE_CRYPT=1".
-
-If you don't have encrypt and setkey, you will need Eric Young's
-libdes library. You can find it in:
-
-ftp://ftp.funet.fi/pub/crypt/mirrors/ftp.psy.uq.oz.au/DES/libdes-3.06.tar.gz
-
-Australian residents can get libdes from Eric Young's site:
-
-ftp://ftp.psy.uq.oz.au/pub/Crypto/DES/libdes-3.06.tar.gz
-
-It is also available on many other sites (ask Archie).
-
-I used libdes-3.06, but hopefully anything newer than that will work
-also. Get the library, build and test it on your system, and install
-it somewhere (typically /usr/local/lib and /usr/local/include).
-
-
-
-You should now be ready to (re)compile the PPPD. Go to the pppd
-subdirectory and make sure the Makefile contains "-DCHAPMS" in the
-CFLAGS or COMPILE_FLAGS macro, and that the LIBS macro (or LDADD for
-BSD systems) contains "-ldes". Depending on your system and where the
-DES library was installed, you may also need to alter the include and
-library paths used by your compiler.
-
-Do a "make clean" and then a "make" to rebuild pppd. Assuming all
-goes well, install the new pppd and move on to the CONFIGURATION
-section.
-
-
-CONFIGURATION
-
-If you've never used PPPD with CHAP before, read the man page (type
-"man pppd") and read the description in there. Basically, you need to
-edit the "chap-secrets" file typically named /etc/ppp/chap-secrets.
-This should contain the following two lines for each system with which
-you use CHAP (with no leading blanks):
-
- RemoteHost Account Secret
- Account RemoteHost Secret
-
-Note that you need both lines and that item 1 and 2 are swapped in the
-second line. I'm not sure why you need it twice, but it works and I didn't
-have time to look into it further. The "RemoteHost" is a somewhat
-arbitrary name for the remote Windows NT system you're dialing. It doesn't
-have to match the NT system's name, but it *does* have to match what you
-use with the "remotename" parameter. The "Account" is the Windows NT
-account name you have been told to use when dialing, and the "Secret" is
-the password for that account. For example, if your service provider calls
-their machine "DialupNT" and tells you your account and password are
-"customer47" and "foobar", add the following to your chap-secrets file:
-
- DialupNT customer47 foobar
- customer47 DialupNT foobar
-
-The only other thing you need to do for MS-CHAP (compared to normal CHAP)
-is to always use the "remotename" option, either on the command line or in
-your "options" file (see the pppd man page for details). In the case of
-the above example, you would need to use the following command line:
-
- pppd name customer47 remotename DialupNT <other options>
-
-or add:
-
- name customer47
- remotename DialupNT
-
-to your PPPD "options" file.
-
-The "remotename" option is required for MS-CHAP since Microsoft PPP servers
-don't send their system name in the CHAP challenge packet.
-
-
-E=691 (AUTHENTICATION_FAILURE) ERRORS WHEN YOU HAVE THE VALID SECRET (PASSWORD)
-
-If your RAS server is not the domain controller and is not a 'stand-alone'
-server then it must make a query to the domain controller for your domain.
-
-You need to specify the domain name with the user name when you attempt to
-use this type of a configuration. The domain name is specified with the
-local name in the chap-secrets file and with the option for the 'name'
-parameter.
-
-For example, the previous example would become:
-
- DialupNT domain\\customer47 foobar
- domain\\customer47 DialupNT foobar
-
-and
-
- pppd name 'domain\\customer47' remotename DialupNT <other options>
-
-or add:
-
- name domain\\customer47
- remotename DialupNT
-
-when the Windows NT domain name is simply called 'domain'.
-
-
-TROUBLESHOOTING
-
-Assuming that everything else has been configured correctly for PPP and
-CHAP, the MS-CHAP-specific problems you're likely to encounter are mostly
-related to your Windows NT account and its settings. A Microsoft server
-returns error codes in its CHAP response. The following are extracted from
-Microsoft's "chapexts.txt" file referenced above:
-
- 646 ERROR_RESTRICTED_LOGON_HOURS
- 647 ERROR_ACCT_DISABLED
- 648 ERROR_PASSWD_EXPIRED
- 649 ERROR_NO_DIALIN_PERMISSION
- 691 ERROR_AUTHENTICATION_FAILURE
- 709 ERROR_CHANGING_PASSWORD
-
-You'll see these in your pppd log as a line similar to:
-
- Remote message: E=649 R=0
-
-The "E=" is the error number from the table above, and the "R=" flag
-indicates whether the error is transient and the client should retry. If
-you consistently get error 691, then either you're using the wrong account
-name/password, or the DES library or MD4 hashing (in md4.c) aren't working
-properly. Verify your account name and password (use a Windows NT or
-Windows 95 system to dial-in if you have one available). If that checks
-out, test the DES library with the "destest" program included with the DES
-library. If DES checks out, the md4.c routines are probably failing
-(system byte ordering may be a problem) or my code is screwing up. I've
-only got access to a Linux system, so you're on your own for anything else.
-
-Another thing that might cause problems is that some RAS servers won't
-respond at all to LCP config requests without seeing the word "CLIENT"
-from the other end. If you see pppd sending out LCP config requests
-without getting any reply, try putting something in your chat script
-to send the word CLIENT after the modem has connected.
-
-If everything compiles cleanly, but fails at authentication time, then
-it might be a case of the MD4 or DES code screwing up. The following
-small program can be used to test the MS-CHAP code to see if it
-produces a known response:
-
------------------
-#include <stdio.h>
-
-#include "pppd.h"
-#include "chap.h"
-#include "chap_ms.h"
-
-int main(argc, argv)
- int argc;
- char *argv[];
-{
- u_char challenge[8];
- int challengeInt[sizeof(challenge)];
- chap_state cstate;
- int i;
-
- if (argc != 3) {
- fprintf(stderr, "Usage: %s <16-hexchar challenge> <password>\n",
- argv[0]); exit(1);
- }
-
- sscanf(argv[1], "%2x%2x%2x%2x%2x%2x%2x%2x",
- challengeInt + 0, challengeInt + 1, challengeInt + 2,
- challengeInt + 3, challengeInt + 4, challengeInt + 5,
- challengeInt + 6, challengeInt + 7);
-
- for (i = 0; i < sizeof(challenge); i++)
- challenge[i] = (u_char)challengeInt[i];
-
- ChapMS(&cstate, challenge, sizeof(challenge), argv[2], strlen(argv[2]));
- printf("Response length is %d, response is:", cstate.resp_length);
-
- for (i = 0; i < cstate.resp_length; i++) {
- if (i % 8 == 0)
- putchar('\n');
- printf("%02X ", (unsigned int)cstate.response[i]);
- }
-
- putchar('\n');
-
- exit(0);
-}
--------------
-
-This needs to link against chap_ms.o, md4.o, and the DES library. When
-you run it with the command line:
-
- $ testchap 00000000000000000000000000000000 hello
-
-it should output the following:
-
- Response length is 49, response is:
- 00 00 00 00 00 00 00 00
- 00 00 00 00 00 00 00 00
- 00 00 00 00 00 00 00 00
- F4 D9 9D AF 82 64 DC 3C
- 53 F9 BC 92 14 B5 5D 9E
- 78 C4 21 48 9D B7 A8 B4
- 01
-
-if not, then either the DES library is not working, the MD4 code isn't
-working, or there are some problems with the port of the code in
-chap_ms.c.
-
-
-STILL TO DO
-
-A site using only MS-CHAP to authenticate has no need to store cleartext
-passwords in the "chap-secrets" file. A utility that spits out the ASCII
-hex MD4 hash of a given password would be nice, and would allow that hash
-to be used in chap-secrets in place of the password. The code to do this
-could quite easily be lifted from chap_ms.c (you have to convert the
-password to Unicode before hashing it). The chap_ms.c file would also have
-to be changed to recognize a password hash (16 binary bytes == 32 ASCII hex
-characters) and skip the hashing stage.
-
-A server implementation would allow MS-CHAP to be used with Windows NT and
-Windows 95 clients for enhanced security. Some new command-line options
-would be required, as would code to generate the Challenge packet and
-verify the response. Most of the helper functions are in place, so this
-shouldn't be too hard for someone to add.
diff --git a/mdk-stage1/ppp/README.cbcp b/mdk-stage1/ppp/README.cbcp
deleted file mode 100644
index 6f7b7685e..000000000
--- a/mdk-stage1/ppp/README.cbcp
+++ /dev/null
@@ -1,97 +0,0 @@
- Microsoft Call Back Configuration Protocol.
- by Pedro Roque Marques
- (updated by Paul Mackerras)
-
-The CBCP is a method by which the Microsoft Windows NT Server may
-implement additional security. It is possible to configure the server
-in such a manner so as to require that the client systems which
-connect with it are required that following a valid authentication to
-leave a method by which the number may be returned call.
-
-It is a requirement of servers so configured that the protocol be
-exchanged.
-
-So, this set of patches may be applied to the pppd process to enable
-the cbcp client *only* portion of the specification. It is primarily
-meant to permit connection with Windows NT Servers.
-
-The ietf-working specification may be obtained from ftp.microsoft.com
-in the developr/rfc directory.
-
-The ietf task group has decided to recommend that the LCP sequence be
-extended to permit the callback operation. For this reason, these
-patches are not 'part' of pppd but are an adjunct to the code.
-
-To enable CBCP support, all that is required is to change the
-appropriate Makefile in the pppd subdirectory to add "-DCBCP_SUPPORT"
-to the CFLAGS definition and add cbcp.o to the list of object files,
-and then recompile pppd. The patch below does this for Makefile.bsd
-and Makefile.linux.
-
-
---------------------------------cut here-------------------------------
-diff -r -c ppp-2.3.orig/pppd/Makefile.bsd ppp-2.3/pppd/Makefile.bsd
-*** ppp-2.3.orig/pppd/Makefile.bsd Tue Oct 8 13:33:33 1996
---- ppp-2.3/pppd/Makefile.bsd Fri Apr 11 23:59:15 1997
-***************
-*** 4,14 ****
- # -D_BITYPES is for FreeBSD, which doesn't define anything to
- # tell us that u_int32_t gets defined if <sys/types.h> is included.
- # Remove for older *BSD systems for which this isn't true.
-! CFLAGS+= -g -I.. -DHAVE_PATHS_H -D_BITYPES
-
- PROG= pppd
- SRCS= main.c magic.c fsm.c lcp.c ipcp.c upap.c chap.c md5.c ccp.c \
-! demand.c auth.c options.c sys-bsd.c
- MAN= pppd.cat8
- MAN8= pppd.8
- BINMODE=4555
---- 4,14 ----
- # -D_BITYPES is for FreeBSD, which doesn't define anything to
- # tell us that u_int32_t gets defined if <sys/types.h> is included.
- # Remove for older *BSD systems for which this isn't true.
-! CFLAGS+= -I.. -DHAVE_PATHS_H -D_BITYPES -DCBCP_SUPPORT
-
- PROG= pppd
- SRCS= main.c magic.c fsm.c lcp.c ipcp.c upap.c chap.c md5.c ccp.c \
-! demand.c auth.c options.c sys-bsd.c cbcp.c
- MAN= pppd.cat8
- MAN8= pppd.8
- BINMODE=4555
-diff -r -c ppp-2.3.orig/pppd/Makefile.linux ppp-2.3/pppd/Makefile.linux
-*** ppp-2.3.orig/pppd/Makefile.linux Tue Oct 8 15:42:41 1996
---- ppp-2.3/pppd/Makefile.linux Sat Apr 12 00:02:28 1997
-***************
-*** 14,20 ****
- ipxcp.h cbcp.h
- MANPAGES = pppd.8
- PPPDOBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o ccp.o \
-! auth.o options.o demand.o sys-linux.o ipxcp.o
-
- all: pppd
-
---- 14,20 ----
- ipxcp.h cbcp.h
- MANPAGES = pppd.8
- PPPDOBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o ccp.o \
-! auth.o options.o demand.o sys-linux.o ipxcp.o cbcp.o
-
- all: pppd
-
-***************
-*** 36,42 ****
- #INCLUDE_DIRS= -I/usr/include -I..
- INCLUDE_DIRS=
-
-! COMPILE_FLAGS= -D_linux_=1 -DHAVE_PATHS_H -DIPX_CHANGE
-
- CFLAGS= $(COPTS) $(COMPILE_FLAGS) $(INCLUDE_DIRS)
-
---- 36,42 ----
- #INCLUDE_DIRS= -I/usr/include -I..
- INCLUDE_DIRS=
-
-! COMPILE_FLAGS= -D_linux_=1 -DHAVE_PATHS_H -DIPX_CHANGE -DCBCP_SUPPORT
-
- CFLAGS= $(COPTS) $(COMPILE_FLAGS) $(INCLUDE_DIRS)
-
diff --git a/mdk-stage1/ppp/README.linux b/mdk-stage1/ppp/README.linux
deleted file mode 100644
index 62ed9ca7f..000000000
--- a/mdk-stage1/ppp/README.linux
+++ /dev/null
@@ -1,297 +0,0 @@
- PPP for Linux
- -------------
-
- Paul Mackerras
- 8 March 2001
-
- for ppp-2.4.1
-
-1. Introduction
----------------
-
-The Linux PPP implementation includes both kernel and user-level
-parts. This package contains the user-level part, which consists of
-the PPP daemon (pppd) and associated utilities. In the past this
-package has contained updated kernel drivers. This is no longer
-necessary, as the current 2.2 and 2.4 kernel sources contain
-up-to-date drivers.
-
-The Linux PPP implementation is capable of being used both for
-initiating PPP connections (as a `client') or for handling incoming
-PPP connections (as a `server'). Note that this is an operational
-distinction, based on how the connection is created, rather than a
-distinction that is made in the PPP protocols themselves.
-
-Mostly this package is used for PPP connections over modems connected
-via asynchronous serial ports, so this guide concentrates on this
-situation.
-
-The PPP protocol consists of two parts. One is a scheme for framing
-and encoding packets, the other is a series of protocols called LCP,
-IPCP, PAP and CHAP, for negotiating link options and for
-authentication. This package similarly consists of two parts: a
-kernel module which handles PPP's low-level framing protocol, and a
-user-level program called pppd which implements PPP's negotiation
-protocols.
-
-The kernel module assembles/disassembles PPP frames, handles error
-detection, and forwards packets between the serial port and either the
-kernel network code or the user-level program pppd. IP packets go
-directly to the kernel network code. So once pppd has negotiated the
-link, it in practice lies completely dormant until you want to take
-the link down, when it negotiates a graceful disconnect.
-
-
-2. Installation
----------------
-
-2.1 Kernel driver
-
-Assuming you are running a recent 2.2 or 2.4 (or later) series kernel,
-the kernel source code will contain an up-to-date kernel PPP driver.
-If the PPP driver was included in your kernel configuration when your
-kernel was built, then you only need to install the user-level
-programs. Otherwise you will need to get the source tree for your
-kernel version, configure it with PPP included, and recompile. Most
-Linux distribution vendors ship kernels with PPP included in the
-configuration.
-
-The PPP driver can be either compiled into the kernel or compiled as a
-kernel module. If it is compiled into the kernel, the PPP driver is
-included in the kernel image which is loaded at boot time. If it is
-compiled as a module, the PPP driver is present in one or more files
-under /lib/modules and is loaded into the kernel when needed.
-
-The 2.2 series kernels contain an older version of the kernel PPP
-driver, one which doesn't support multilink. If you want multilink,
-you need to run the latest 2.4 series kernel. The kernel PPP driver
-was completely rewritten for the 2.4 series kernels to support
-multilink and to allow it to operate over diverse kinds of
-communication medium (the 2.2 driver only operates over serial ports
-and devices which look like serial ports, such as pseudo-ttys).
-
-Under the 2.2 kernels, if PPP is compiled as a module, the PPP driver
-modules should be present in the /lib/modules/`uname -r`/net directory
-(where `uname -r` represents the kernel version number). The PPP
-driver module itself is called ppp.o, and there will usually be
-compression modules there, ppp_deflate.o and bsd_comp.o, as well as
-slhc.o, which handles TCP/IP header compression. If the PPP driver is
-compiled into the kernel, the compression code will still be compiled
-as modules, for kernels before 2.2.17pre12. For 2.2.17pre12 and later,
-if the PPP driver is compiled in, the compression code will also.
-
-Under the 2.4 kernels, there are two PPP modules, ppp_generic.o and
-ppp_async.o, plus the compression modules (ppp_deflate.o, bsd_comp.o
-and slhc.o). If the PPP generic driver is compiled into the kernel,
-the other four can then be present either as modules or compiled into
-the kernel. There is a sixth module, ppp_synctty.o, which is used for
-synchronous tty devices such as high-speed WAN adaptors.
-
-
-2.2 User-level programs
-
-If you obtained this package in .rpm or .deb format, you simply follow
-the usual procedure for installing the package.
-
-If you are using the .tar.gz form of this package, then cd into the
-ppp-2.4.1b1 directory you obtained by unpacking the archive and issue
-the following commands:
-
-$ ./configure
-$ make
-# make install
-
-The `make install' has to be done as root. This makes and installs
-four programs and their man pages: pppd, chat, pppstats and pppdump.
-If the /etc/ppp configuration directory doesn't exist, the `make
-install' step will create it and install some default configuration
-files.
-
-
-2.3 System setup for 2.4 kernels
-
-Under the 2.4 series kernels, pppd needs to be able to open /dev/ppp,
-character device (108,0). If you are using devfs (the device
-filesystem), the /dev/ppp node will automagically appear when the
-ppp_generic module is loaded, or at startup if ppp_generic is compiled
-in.
-
-If you have ppp_generic as a module, and you are using devfsd (the
-devfs daemon), you will need to add a line like this to your
-/etc/devfsd.conf:
-
-LOOKUP ppp MODLOAD
-
-Otherwise you will need to create a /dev/ppp device node with the
-commands:
-
-# mknod /dev/ppp c 108 0
-# chmod 600 /dev/ppp
-
-If you use module autoloading and have PPP as a module, you will need
-to add the following to your /etc/modules.conf or /etc/conf.modules:
-
-alias /dev/ppp ppp_generic
-alias char-major-108 ppp_generic
-alias tty-ldisc-3 ppp_async
-alias tty-ldisc-14 ppp_synctty
-alias ppp-compress-21 bsd_comp
-alias ppp-compress-24 ppp_deflate
-alias ppp-compress-26 ppp_deflate
-
-
-2.4 System setup under 2.2 series kernels
-
-Under the 2.2 series kernels, you should add the following to your
-/etc/modules.conf or /etc/conf.modules:
-
-alias tty-ldisc-3 ppp
-alias ppp-compress-21 bsd_comp
-alias ppp-compress-24 ppp_deflate
-alias ppp-compress-26 ppp_deflate
-
-
-3. Getting help with problems
------------------------------
-
-If you have problems with your PPP setup, or you just want to ask some
-questions, or better yet if you can help others with their PPP
-questions, then you should join the linux-ppp mailing list. Send an
-email to majordomo@vger.kernel.org with a line in the body saying
-
-subscribe linux-ppp
-
-To leave the mailing list, send an email to majordomo@vger.kernel.org
-with a line in the body saying
-
-unsubscribe linux-ppp
-
-To send a message to the list, email it to linux-ppp@vger.kernel.org.
-You don't have to be subscribed to send messages to the list.
-
-You can also email me (paulus@linuxcare.com.au) but I am overloaded
-with email and I can't respond to most messages I get in a timely
-fashion.
-
-There are also several relevant news groups, such as comp.protocols.ppp,
-comp.os.linux.networking, or comp.os.linux.setup.
-
-
-4. Configuring your dial-out PPP connections
---------------------------------------------
-
-Some Linux distribution makers include tools in their distributions
-for setting up PPP connections. For example, for Red Hat Linux and
-derivatives, you should probably use linuxconf or netcfg to set up
-your PPP connections.
-
-The two main windowing environments for Linux, KDE and Gnome, both
-come with GUI utilities for configuring and controlling PPP dial-out
-connections. They are convenient and relatively easy to configure.
-
-A third alternative is to use a PPP front-end package such as wvdial
-or ezppp. These also will handle most of the details of talking to
-the modem and setting up the PPP connection for you.
-
-Assuming that you don't want to use any of these tools, you want to
-set up the configuration manually yourself, then read on. This
-document gives a brief description and example. More details can be
-found by reading the pppd and chat man pages and the PPP-HOWTO.
-
-We assume that you have a modem that uses the Hayes-compatible AT
-command set connected to an async serial port (e.g. /dev/ttyS0) and
-that you are dialling out to an ISP.
-
-The trickiest and most variable part of setting up a dial-out PPP
-connection is the part which involves getting the modem to dial and
-then invoking PPP service at the far end. Generally, once both ends
-are talking PPP the rest is relatively straightforward.
-
-Now in fact pppd doesn't know anything about how to get modems to dial
-or what you have to say to the system at the far end to get it to talk
-PPP. That's handled by an external program such as chat, specified
-with the connect option to pppd. Chat takes a series of strings to
-expect from the modem interleaved with a series of strings to send to
-the modem. See the chat man page for more information. Here is a
-simple example for connecting to an ISP, assuming that the ISP's
-system starts talking PPP as soon as it answers the phone:
-
-pppd connect 'chat -v "" AT OK ATDT5551212 ~' \
- /dev/ttyS0 57600 crtscts debug defaultroute
-
-Going through pppd's options in order:
- connect 'chat ...' This gives a command to run to contact the
- PPP server. Here the supplied 'chat' program is used to dial a
- remote computer. The whole command is enclosed in single quotes
- because pppd expects a one-word argument for the 'connect' option.
- The options to 'chat' itself are:
-
- -v verbose mode; log what we do to syslog
- "" don't wait for any prompt, but instead...
- AT send the string "AT"
- OK expect the response "OK", then
- ATDT5551212 dial the modem, then
- ~ wait for a ~ character, indicating the start
- of a PPP frame from the server
-
- /dev/ttyS0 specifies which serial port the modem is connected to
- 57600 specifies the baud rate to use
- crtscts use hardware flow control using the RTS & CTS signals
- debug log the PPP negotiation with syslog
- defaultroute add default network route via the PPP link
-
-Pppd will write error messages and debugging logs to the syslogd
-daemon using the facility name "daemon". These messages may already
-be logged to the console or to a file like /var/log/messages; consult
-your /etc/syslog.conf file to see. If you want to make all pppd
-messages go to a file such as /var/log/ppp-debug, add the line
-
-daemon.* /var/log/ppp-debug
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- This is one or more tabs. Do not use spaces.
-
-to syslog.conf; make sure to put one or more TAB characters (not
-spaces!) between the two fields. Then you need to create an empty
-/var/log/ppp-debug file with a command such as
-
- touch /var/log/ppp-debug
-
-and then restart syslogd, usually by sending it a SIGHUP signal with a
-command like this:
-
- killall -HUP syslogd
-
-
-4.1 Is the link up?
-
-The main way to tell if your PPP link is up and operational is the
-ifconfig ("interface configuration") command. Type
-
- /sbin/ifconfig
-
-at a shell prompt. It should print a list of interfaces including one
-like this example:
-
-ppp0 Link encap Point-to-Point Protocol
- inet addr 192.76.32.3 P-t-P 129.67.1.165 Mask 255.255.255.0
- UP POINTOPOINT RUNNING MTU 1500 Metric 1
- RX packets 33 errors 0 dropped 0 overrun 0
- TX packets 42 errors 0 dropped 0 overrun 0
-
-Assuming that ifconfig shows the ppp network interface, you can test
-the link using the ping command like this:
-
- /sbin/ping -c 3 129.67.1.165
-
-where the address you give is the address shown as the P-t-P address
-in the ifconfig output. If the link is operating correctly, you
-should see output like this:
-
- PING 129.67.1.165 (129.67.1.165): 56 data bytes
- 64 bytes from 129.67.1.165: icmp_seq=0 ttl=255 time=268 ms
- 64 bytes from 129.67.1.165: icmp_seq=1 ttl=255 time=247 ms
- 64 bytes from 129.67.1.165: icmp_seq=2 ttl=255 time=266 ms
- --- 129.67.1.165 ping statistics ---
- 3 packets transmitted, 3 packets received, 0% packet loss
- round-trip min/avg/max = 247/260/268 ms
-
diff --git a/mdk-stage1/ppp/README.sol2 b/mdk-stage1/ppp/README.sol2
deleted file mode 100644
index 4c862208f..000000000
--- a/mdk-stage1/ppp/README.sol2
+++ /dev/null
@@ -1,220 +0,0 @@
-This file describes the installation process for ppp-2.3 on systems
-running Solaris 2. The Solaris 2 and SVR4 ports share a lot of code
-but are not identical. The STREAMS kernel modules and driver for
-Solaris 2 are in the svr4 directory (and use some code from the
-modules directory).
-
-NOTE: Although the kernel driver and modules have been designed to
-operate correctly on SMP systems, they have not been extensively
-tested on SMP machines. Some users of SMP Solaris x86 systems have
-reported system problems apparently linked to the use of previous
-versions of this software. I believe these problems have been fixed.
-
-
-Installation.
-*************
-
-1. Run the configure script and make the user-level programs and the
-kernel modules.
-
- ./configure
- make
-
-If you wish to use gcc (or another compiler) instead of Sun's cc, edit
-the svr4/Makedefs file and uncomment the definition of CC. You can
-also change the options passed to the C compiler by editing the COPTS
-definition.
-
-2. Install the programs and kernel modules: as root, do
-
- make install
-
-This installs pppd, chat and pppstats in /usr/local/bin and the kernel
-modules in /kernel/drv and /kernel/strmod, and creates the /etc/ppp
-directory and populates it with default configuration files. You can
-change the installation directories by editing svr4/Makedefs.
-
-If your system normally has only one network interface, the default
-Solaris 2 system startup scripts will disable IP forwarding in the IP
-kernel module. This will prevent the remote machine from using the
-local machine as a gateway to access other hosts. The solution is to
-create an /etc/ppp/ip-up script containing something like this:
-
- #!/bin/sh
- /usr/sbin/ndd -set /dev/ip ip_forwarding 1
-
-See the man page for ip(7p) for details.
-
-Dynamic STREAMS Re-Plumbing Support.
-************************************
-
-Solaris 8 includes dynamic re-plumbing support. With this, modules
-below ip can be inserted, or removed, without having the ip stream be
-unplumbed, and re-plumbed again. All states in ip for an interface
-will therefore now be preserved. Users can install (or upgrade)
-modules like firewall, bandwidth manager, cache manager, tunneling,
-etc., without shutting the machine down.
-
-To support this, ppp driver now uses /dev/udp instead of /dev/ip for
-the ip stream. The interface stream (where ip module pushed on top of
-ppp) is then I_PLINK'ed below the ip stream. /dev/udp is used because
-STREAMS will not let a driver be PLINK'ed under itself, and /dev/ip is
-typically the driver at the bottom of the tunneling interfaces
-stream. The mux ids of the ip streams are then added using
-SIOCSxIFMUXID ioctl.
-
-Users will be able to see the modules on the interface stream by, for
-example:
-
- pikapon% ifconfig ppp modlist
- 0 ip
- 1 ppp
-
-Or arbitrarily if bandwidth manager and firewall modules are installed:
-
- pikapon% ifconfig hme0 modlist
- 0 arp
- 1 ip
- 2 ipqos
- 3 firewall
- 4 hme
-
-Snoop Support.
-**************
-
-This version includes support for /usr/sbin/snoop. Tests has been done
-on both Solaris 7 and 8. Only IPv4 and IPv6 packets will be sent up to
-stream(s) marked as promiscuous, e.g, snoop et al.
-
-Users will be able to see the packets on the ppp interface by, for example:
-
- snoop -d ppp0
-
-See the man page for snoop(1M) for details.
-
-IPv6 Support.
-*************
-
-This is for Solaris 8 and later.
-
-This version has been tested under Solaris 8 running IPv6. As of now,
-interoperability testing has only been done between Solaris machines
-in terms of the IPV6 NCP. An additional command line option for the
-pppd daemon has been added: ipv6cp-use-persistent.
-
-By default, compilation for IPv6 support is not enabled. Uncomment
-the necessary lines in pppd/Makefile.sol2 to enable it. Once done, the
-quickest way to get IPv6 running is to add the following somewhere in
-the command line option:
-
- +ipv6 ipv6cp-use-persistent
-
-The persistent id for the link-local address was added to conform to
-RFC 2472; such that if there's an EUI-48 available, use that to make
-up the EUI-64. As of now, the Solaris implementation extracts the
-EUI-48 id from the Ethernet's MAC address (the ethernet interface
-needs to be up). Future works might support other ways of obtaining a
-unique yet persistent id, such as EEPROM serial numbers, etc.
-
-There need not be any up/down scripts for ipv6, e.g. /etc/ppp/ipv6-up
-or /etc/ppp/ipv6-down, to trigger IPv6 neighbor discovery for auto
-configuration and routing. The in.ndpd daemon will perform all of the
-necessary jobs in the background. /etc/inet/ndpd.conf can be further
-customized to enable the machine as an IPv6 router. See the man page
-for in.ndpd(1M) and ndpd.conf(4) for details.
-
-Below is a sample output of "ifconfig -a" with persistent link-local
-address. Note the UNNUMBERED flag is set because hme0 and ppp0 both
-have identical link-local IPv6 addresses:
-
-lo0: flags=1000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
- inet 127.0.0.1 netmask ff000000
-hme0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
- inet 129.146.86.248 netmask ffffff00 broadcast 129.146.86.255
- ether 8:0:20:8d:38:c1
-lo0: flags=2000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv6> mtu 8252 index 1
- inet6 ::1/128
-hme0: flags=2000841<UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 2
- ether 8:0:20:8d:38:c1
- inet6 fe80::a00:20ff:fe8d:38c1/10
-hme0:1: flags=2080841<UP,RUNNING,MULTICAST,ADDRCONF,IPv6> mtu 1500 index 2
- inet6 fec0::56:a00:20ff:fe8d:38c1/64
-hme0:2: flags=2080841<UP,RUNNING,MULTICAST,ADDRCONF,IPv6> mtu 1500 index 2
- inet6 2000::56:a00:20ff:fe8d:38c1/64
-hme0:3: flags=2080841<UP,RUNNING,MULTICAST,ADDRCONF,IPv6> mtu 1500 index 2
- inet6 2::56:a00:20ff:fe8d:38c1/64
-ppp0: flags=10008d1<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST,IPv4> mtu 1500 index 12
- inet 172.16.1.1 --> 172.16.1.2 netmask ffffff00
-ppp0: flags=2202851<UP,POINTOPOINT,RUNNING,MULTICAST,UNNUMBERED,NONUD,IPv6> mtu 1500 index 12
- inet6 fe80::a00:20ff:fe8d:38c1/10 --> fe80::a00:20ff:fe7a:24fb
-
-Note also that a plumbed ipv6 interface stream will exist throughout
-the entire PPP session in the case where the peer rejects IPV6CP,
-which further causes the interface state to stay down. Unplumbing will
-happen when the daemon exits. This is done by design and is not a bug.
-
-64-bit Support.
-***************
-
-This version has been tested under Solaris 7 (and Solaris 8 ) in both
-32- and 64-bits environments (Ultra class machines). Installing the
-package by executing "make install" will result in additional files
-residing in /kernel/drv/sparcv9 and /kernel/strmod/sparcv9
-subdirectories.
-
-64-bit modules and driver have been compiled and tested using Sun's cc.
-
-Synchronous Serial Support.
-***************************
-
-This version has working but limited support for the on-board
-synchronous HDLC interfaces. It has been tested with the /dev/se_hdlc
-and /dev/zsh drivers. Synchronous mode was tested with a Cisco
-router.
-
-There ppp daemon does not directly support controlling the serial
-interface. It relies on the /usr/sbin/syncinit command to initialize
-HDLC mode and clocking.
-
-Some bugs remain: large sized frames are not sent/received properly,
-and may be related to the IP mtu. This may be due to bugs in pppd
-itself, bugs in Solaris or the serial drivers. The /dev/zsh driver
-seems more larger and can send/receive larger frames than the
-/dev/se_hdlc driver. There is a confirmed bug with NRZ/NRZI mode in
-the /dev/se_hdlc driver, and Solaris patch 104596-11 is needed to
-correct it. (However this patch seems to introduce other serial
-problems. If you don't apply the patch, the workaround is to change
-the nrzi mode to yes or no, whichever works)
-
-How to start pppd with synchronous support:
-
-#!/bin/sh
-
-local=1.1.1.1 # your ip address here
-baud=38400 # needed, but ignored by serial driver
-
-# Change to the correct serial driver/port
-#dev=/dev/zsh0
-dev=/dev/se_hdlc0
-
-# Change the driver, nrzi mode, speed and clocking to match your setup
-# This configuration is for external clocking from the DCE
-connect="syncinit se_hdlc0 nrzi=no speed=64000 txc=rxc rxc=rxc"
-
-/usr/sbin/pppd $dev sync $baud novj noauth $local: connect "$connect"
-
-
-Sample Cisco router config excerpt:
-
-!
-! Cisco router setup as DCE with RS-232 DCE cable
-!
-!
-interface Serial0
- ip address 1.1.1.2 255.255.255.0
- encapsulation ppp
- clockrate 64000
- no nrzi-encoding
- no shutdown
-!
-
diff --git a/mdk-stage1/ppp/README.sunos4 b/mdk-stage1/ppp/README.sunos4
deleted file mode 100644
index b48aec377..000000000
--- a/mdk-stage1/ppp/README.sunos4
+++ /dev/null
@@ -1,62 +0,0 @@
-This file describes the installation process for ppp-2.3 on systems
-running SunOS 4.1.x (or the equivalent).
-
-The STREAMS modules in the sunos4 directory provide kernel support for
-PPP on SunOS 4.1.x systems. They have been tested under SunOS 4.1.3
-on a SparcStation 1+. They should work under earlier SunOS 4.1.x
-systems, but no guarantees are given.
-
-These modules are designed to be loaded into the running kernel using
-the `modload' command.
-
-
-Installation.
-*************
-
-1. Run the configure script and make the user-level programs and the
-kernel modules.
-
- ./configure
- make
-
-If you wish to compile using gcc instead of cc, edit the
-sunos4/Makedefs file and uncomment the line saying "CC = gcc". You
-can also change the C compiler options by editing the COPTS
-definition.
-
-2. Install the pppd, pppstats and chat programs and the loadable
-module object files (you need to be root to do this):
-
- make install
-
-By default, the programs and the loadable module object files go into
-/usr/local/etc. Doing `make install' also copies a script called
-ppp.INSTALL into /dev, and makes ppp.LOAD, ppp.UNLOAD, ppp.MKDEV and
-ppp.RMDEV links to it. You can change the installation directories by
-editing sunos4/Makedefs.
-
-3. Load the ppp modules (you need to be root for this too):
-
- /dev/ppp.LOAD
-
-You will want to do this in your /etc/rc.local file once you have
-everything installed. I suggest you put something like the following
-in /etc/rc.local (or /etc/loadable, if you have one):
-
- if [ -f /dev/ppp.AUTOLOAD ]; then
- /dev/ppp.LOAD
- fi
-
-and then create a /dev/ppp.AUTOLOAD file with the command
-
- touch /dev/ppp.AUTOLOAD
-
-It is not advisable to unload the "if_ppp" module, because it creates
-network interface units, and SunOS does not provide any way to destroy
-network interfaces once created. If you do unload it, the system will
-probably crash at some later stage.
-
-If you have previously had ppp-2.2 installed, you may have statements
-in your /etc/rc.local to load the ppp module. You will need to remove
-those. Having done this, you will need to reboot to remove the old
-ppp module and load the new modules.
diff --git a/mdk-stage1/ppp/SETUP b/mdk-stage1/ppp/SETUP
deleted file mode 100644
index fb28a2138..000000000
--- a/mdk-stage1/ppp/SETUP
+++ /dev/null
@@ -1,111 +0,0 @@
- Configuring a PPP link.
-
-After you have compiled and installed this package, there are some
-configuration files which will generally need to be set up. The
-pppd(8) man page is the best reference for the full details; this file
-outlines the configuration process for the most common case, where
-this package is being used to enable a machine to dial an ISP and
-connect to the internet. The FAQ and README.linux files also provide
-useful information about setting up PPP.
-
-Dialling an ISP.
-****************
-
-Usually, an ISP will assign an IP address to your machine, and will
-refuse to authenticate itself to you. Some ISPs require a username
-and password to be entered before PPP service commences, while others
-use PPP authentication (using either the PAP or CHAP protocols).
-
-The recommended way to set up to dial an ISP is for the system
-administrator to create a file under /etc/ppp/peers, named for the ISP
-that you will be dialling. For example, suppose the file is called
-/etc/ppp/peers/isp. This file would contain something like this:
-
-cua0 # modem is connected to /dev/cua0
-38400 # run the serial port at 38400 baud
-crtscts # use hardware flow control
-noauth # don't require the ISP to authenticate itself
-defaultroute # use the ISP as our default route
-connect '/usr/sbin/chat -v -f /etc/ppp/chat-isp'
-
-If there are any other pppd options that should apply when calling
-this ISP, they can also be placed in this file.
-
-The /etc/ppp/chat-isp file named in the last line contains the script
-for chat(8) to use to dial the ISP and go through any username/
-password authentication required before PPP service starts. Here is
-an example (for dialling an Annex terminal server):
-
-ABORT "NO CARRIER"
-ABORT "NO DIALTONE"
-ABORT "ERROR"
-ABORT "NO ANSWER"
-ABORT "BUSY"
-ABORT "Username/Password Incorrect"
-"" "at"
-OK "at&d2&c1"
-OK "atdt2479381"
-"name:" "^Uusername"
-"word:" "\qpassword"
-"annex" "ppp"
-"Switching to PPP-ppp-Switching to PPP"
-
-See the chat(8) man page for details of the script. If you are not
-sure how the initial dialog with your ISP will go, you could use
-a terminal emulator such as kermit or minicom to go through the
-process manually.
-
-If your ISP requires PAP or CHAP authentication, you will have to
-create a line in /etc/ppp/pap-secrets or /etc/ppp/chap-secrets like
-this:
-
-myhostname * "password"
-
-(Replace myhostname with the hostname of your machine.)
-
-At this point, you can initiate the link with the command:
-
-/usr/sbin/pppd call isp
-
-(N.B.: pppd might be installed in a different directory on some
-systems).
-
-This will return to the shell prompt immediately, as pppd will detach
-itself from its controlling terminal. (If you don't want it to do
-this, use the "nodetach" option.)
-
-Pppd will log messages describing the progress of the connection and
-any errors using the syslog facility (see the syslogd(8) and
-syslog.conf(5) man pages). Pppd issues messages using syslog facility
-daemon (or local2 if it has been compiled with debugging enabled);
-chat uses facility local2. It is often useful to see messages of
-priority notice or higher on the console. To see these, find the line
-in /etc/syslog.conf which has /dev/console on the right-hand side, and
-add `daemon.notice' on the left. This line should end up something
-like this:
-
-*.err;kern.debug;daemon,local2,auth.notice;mail.crit /dev/console
-
-If you want to see more messages from pppd, request messages of
-priority info or higher for facility daemon, like this:
-
-*.err;kern.debug;daemon.info;local2,auth.notice;mail.crit /dev/console
-
-It is also useful to add a line like this:
-
-daemon,local2.debug /etc/ppp/ppp-log
-
-If you do this, you will need to create an empty /etc/ppp/ppp-log
-file.
-
-After modifying syslog.conf, you will then need to send a HUP signal
-to syslogd (or reboot).
-
-When you wish terminate the PPP link, you should send a TERM or INTR
-signal to pppd. Pppd writes its process ID to a file called
-ppp<n>.pid in /var/run (or /etc/ppp on older systems such as SunOS or
-Ultrix). Here <n> is the PPP interface unit number, which will be 0
-unless you have more than one PPP link running simultaneously. Thus
-you can terminate the link with a command like
-
- kill `cat /var/run/ppp0.pid`
diff --git a/mdk-stage1/ppp/chat/Makefile.linux b/mdk-stage1/ppp/chat/Makefile.linux
deleted file mode 100644
index 586cbd876..000000000
--- a/mdk-stage1/ppp/chat/Makefile.linux
+++ /dev/null
@@ -1,27 +0,0 @@
-# $Id$
-
-CDEF1= -DTERMIOS # Use the termios structure
-CDEF2= -DSIGTYPE=void # Standard definition
-CDEF3= -UNO_SLEEP # Use the usleep function
-CDEF4= -DFNDELAY=O_NDELAY # Old name value
-CDEFS= $(CDEF1) $(CDEF2) $(CDEF3) $(CDEF4)
-
-CFLAGS= $(RPM_OPT_FLAGS) $(CDEFS)
-
-INSTALL= install
-
-all: chat
-
-chat: chat.o
- $(CC) -o chat chat.o
-
-chat.o: chat.c
- $(CC) -c $(CFLAGS) -o chat.o chat.c
-
-install: chat
- mkdir -p $(BINDIR)
- $(INSTALL) -s -c chat $(BINDIR)
- $(INSTALL) -c -m 644 chat.8 $(MANDIR)/man8
-
-clean:
- rm -f chat.o chat *~
diff --git a/mdk-stage1/ppp/chat/Makefile.linux.makeopt b/mdk-stage1/ppp/chat/Makefile.linux.makeopt
deleted file mode 100644
index 974680a93..000000000
--- a/mdk-stage1/ppp/chat/Makefile.linux.makeopt
+++ /dev/null
@@ -1,27 +0,0 @@
-# $Id$
-
-CDEF1= -DTERMIOS # Use the termios structure
-CDEF2= -DSIGTYPE=void # Standard definition
-CDEF3= -UNO_SLEEP # Use the usleep function
-CDEF4= -DFNDELAY=O_NDELAY # Old name value
-CDEFS= $(CDEF1) $(CDEF2) $(CDEF3) $(CDEF4)
-
-CFLAGS= -O2 -g -pipe $(CDEFS)
-
-INSTALL= install
-
-all: chat
-
-chat: chat.o
- $(CC) -o chat chat.o
-
-chat.o: chat.c
- $(CC) -c $(CFLAGS) -o chat.o chat.c
-
-install: chat
- mkdir -p $(BINDIR)
- $(INSTALL) -s -c chat $(BINDIR)
- $(INSTALL) -c -m 644 chat.8 $(MANDIR)/man8
-
-clean:
- rm -f chat.o chat *~
diff --git a/mdk-stage1/ppp/chat/Makefile.sol2 b/mdk-stage1/ppp/chat/Makefile.sol2
deleted file mode 100644
index f566cc68b..000000000
--- a/mdk-stage1/ppp/chat/Makefile.sol2
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Makefile for chat on Solaris 2
-#
-
-include ../solaris/Makedefs
-
-CFLAGS = $(COPTS) -DNO_USLEEP -DSOL2
-
-all: chat
-
-chat: chat.o
- $(CC) -o chat chat.o
-
-install: chat
- $(INSTALL) -f $(BINDIR) chat
- $(INSTALL) -m 444 -f $(MANDIR)/man8 chat.8
-
-clean:
- rm -f *~ *.o chat
diff --git a/mdk-stage1/ppp/chat/Makefile.sunos4 b/mdk-stage1/ppp/chat/Makefile.sunos4
deleted file mode 100644
index b3507360e..000000000
--- a/mdk-stage1/ppp/chat/Makefile.sunos4
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Makefile for chat on suns
-#
-
-include ../sunos4/Makedefs
-
-CFLAGS = -DSUNOS $(COPTS)
-
-all: chat
-
-chat: chat.o
- $(CC) -o chat chat.o
-
-install: chat
- $(INSTALL) -c chat $(BINDIR)/chat
- $(INSTALL) -c -m 444 chat.8 $(MANDIR)/man8/chat.8
-
-clean:
- rm -f *~ *.o chat
diff --git a/mdk-stage1/ppp/chat/chat.8 b/mdk-stage1/ppp/chat/chat.8
deleted file mode 100644
index 8d2029609..000000000
--- a/mdk-stage1/ppp/chat/chat.8
+++ /dev/null
@@ -1,515 +0,0 @@
-.\" -*- nroff -*-
-.\" manual page [] for chat 1.8
-.\" $Id$
-.\" SH section heading
-.\" SS subsection heading
-.\" LP paragraph
-.\" IP indented paragraph
-.\" TP hanging label
-.TH CHAT 8 "22 May 1999" "Chat Version 1.22"
-.SH NAME
-chat \- Automated conversational script with a modem
-.SH SYNOPSIS
-.B chat
-[
-.I options
-]
-.I script
-.SH DESCRIPTION
-.LP
-The \fIchat\fR program defines a conversational exchange between the
-computer and the modem. Its primary purpose is to establish the
-connection between the Point-to-Point Protocol Daemon (\fIpppd\fR) and
-the remote's \fIpppd\fR process.
-.SH OPTIONS
-.TP
-.B -f \fI<chat file>
-Read the chat script from the chat \fIfile\fR. The use of this option
-is mutually exclusive with the chat script parameters. The user must
-have read access to the file. Multiple lines are permitted in the
-file. Space or horizontal tab characters should be used to separate
-the strings.
-.TP
-.B -t \fI<timeout>
-Set the timeout for the expected string to be received. If the string
-is not received within the time limit then the reply string is not
-sent. An alternate reply may be sent or the script will fail if there
-is no alternate reply string. A failed script will cause the
-\fIchat\fR program to terminate with a non-zero error code.
-.TP
-.B -r \fI<report file>
-Set the file for output of the report strings. If you use the keyword
-\fIREPORT\fR, the resulting strings are written to this file. If this
-option is not used and you still use \fIREPORT\fR keywords, the
-\fIstderr\fR file is used for the report strings.
-.TP
-.B -e
-Start with the echo option turned on. Echoing may also be turned on
-or off at specific points in the chat script by using the \fIECHO\fR
-keyword. When echoing is enabled, all output from the modem is echoed
-to \fIstderr\fR.
-.TP
-.B -E
-Enables environment variable substituion within chat scripts using the
-standard \fI$xxx\fR syntax.
-.TP
-.B -v
-Request that the \fIchat\fR script be executed in a verbose mode. The
-\fIchat\fR program will then log the execution state of the chat
-script as well as all text received from the modem and the output
-strings sent to the modem. The default is to log through the SYSLOG;
-the logging method may be altered with the -S and -s flags.
-.TP
-.B -V
-Request that the \fIchat\fR script be executed in a stderr verbose
-mode. The \fIchat\fR program will then log all text received from the
-modem and the output strings sent to the modem to the stderr device. This
-device is usually the local console at the station running the chat or
-pppd program.
-.TP
-.B -s
-Use stderr. All log messages from '-v' and all error messages will be
-sent to stderr.
-.TP
-.B -S
-Do not use the SYSLOG. By default, error messages are sent to the
-SYSLOG. The use of -S will prevent both log messages from '-v' and
-error messages from being sent to the SYSLOG.
-.TP
-.B -T \fI<phone number>
-Pass in an arbitary string, usually a phone number, that will be
-substituted for the \\T substitution metacharacter in a send string.
-.TP
-.B -U \fI<phone number 2>
-Pass in a second string, usually a phone number, that will be
-substituted for the \\U substitution metacharacter in a send string.
-This is useful when dialing an ISDN terminal adapter that requires two
-numbers.
-.TP
-.B script
-If the script is not specified in a file with the \fI-f\fR option then
-the script is included as parameters to the \fIchat\fR program.
-.SH CHAT SCRIPT
-.LP
-The \fIchat\fR script defines the communications.
-.LP
-A script consists of one or more "expect-send" pairs of strings,
-separated by spaces, with an optional "subexpect-subsend" string pair,
-separated by a dash as in the following example:
-.IP
-ogin:-BREAK-ogin: ppp ssword: hello2u2
-.LP
-This line indicates that the \fIchat\fR program should expect the string
-"ogin:". If it fails to receive a login prompt within the time interval
-allotted, it is to send a break sequence to the remote and then expect the
-string "ogin:". If the first "ogin:" is received then the break sequence is
-not generated.
-.LP
-Once it received the login prompt the \fIchat\fR program will send the
-string ppp and then expect the prompt "ssword:". When it receives the
-prompt for the password, it will send the password hello2u2.
-.LP
-A carriage return is normally sent following the reply string. It is not
-expected in the "expect" string unless it is specifically requested by using
-the \\r character sequence.
-.LP
-The expect sequence should contain only what is needed to identify the
-string. Since it is normally stored on a disk file, it should not contain
-variable information. It is generally not acceptable to look for time
-strings, network identification strings, or other variable pieces of data as
-an expect string.
-.LP
-To help correct for characters which may be corrupted during the initial
-sequence, look for the string "ogin:" rather than "login:". It is possible
-that the leading "l" character may be received in error and you may never
-find the string even though it was sent by the system. For this reason,
-scripts look for "ogin:" rather than "login:" and "ssword:" rather than
-"password:".
-.LP
-A very simple script might look like this:
-.IP
-ogin: ppp ssword: hello2u2
-.LP
-In other words, expect ....ogin:, send ppp, expect ...ssword:, send hello2u2.
-.LP
-In actual practice, simple scripts are rare. At the vary least, you
-should include sub-expect sequences should the original string not be
-received. For example, consider the following script:
-.IP
-ogin:--ogin: ppp ssword: hello2u2
-.LP
-This would be a better script than the simple one used earlier. This would look
-for the same login: prompt, however, if one was not received, a single
-return sequence is sent and then it will look for login: again. Should line
-noise obscure the first login prompt then sending the empty line will
-usually generate a login prompt again.
-.SH COMMENTS
-Comments can be embedded in the chat script. A comment is a line which
-starts with the \fB#\fR (hash) character in column 1. Such comment
-lines are just ignored by the chat program. If a '#' character is to
-be expected as the first character of the expect sequence, you should
-quote the expect string.
-If you want to wait for a prompt that starts with a # (hash)
-character, you would have to write something like this:
-.IP
-# Now wait for the prompt and send logout string
-.br
-\'# ' logout
-.LP
-
-.SH SENDING DATA FROM A FILE
-If the string to send starts with an at sign (@), the rest of the
-string is taken to be the name of a file to read to get the string to
-send. If the last character of the data read is a newline, it is
-removed. The file can be a named pipe (or fifo) instead of a regular
-file. This provides a way for \fBchat\fR to communicate with another
-program, for example, a program to prompt the user and receive a
-password typed in.
-.LP
-
-.SH ABORT STRINGS
-Many modems will report the status of the call as a string. These
-strings may be \fBCONNECTED\fR or \fBNO CARRIER\fR or \fBBUSY\fR. It
-is often desirable to terminate the script should the modem fail to
-connect to the remote. The difficulty is that a script would not know
-exactly which modem string it may receive. On one attempt, it may
-receive \fBBUSY\fR while the next time it may receive \fBNO CARRIER\fR.
-.LP
-These "abort" strings may be specified in the script using the \fIABORT\fR
-sequence. It is written in the script as in the following example:
-.IP
-ABORT BUSY ABORT 'NO CARRIER' '' ATZ OK ATDT5551212 CONNECT
-.LP
-This sequence will expect nothing; and then send the string ATZ. The
-expected response to this is the string \fIOK\fR. When it receives \fIOK\fR,
-the string ATDT5551212 to dial the telephone. The expected string is
-\fICONNECT\fR. If the string \fICONNECT\fR is received the remainder of the
-script is executed. However, should the modem find a busy telephone, it will
-send the string \fIBUSY\fR. This will cause the string to match the abort
-character sequence. The script will then fail because it found a match to
-the abort string. If it received the string \fINO CARRIER\fR, it will abort
-for the same reason. Either string may be received. Either string will
-terminate the \fIchat\fR script.
-.SH CLR_ABORT STRINGS
-This sequence allows for clearing previously set \fBABORT\fR strings.
-\fBABORT\fR strings are kept in an array of a pre-determined size (at
-compilation time); \fBCLR_ABORT\fR will reclaim the space for cleared
-entries so that new strings can use that space.
-.SH SAY STRINGS
-The \fBSAY\fR directive allows the script to send strings to the user
-at the terminal via standard error. If \fBchat\fR is being run by
-pppd, and pppd is running as a daemon (detached from its controlling
-terminal), standard error will normally be redirected to the file
-/etc/ppp/connect-errors.
-.LP
-\fBSAY\fR strings must be enclosed in single or double quotes. If
-carriage return and line feed are needed in the string to be output,
-you must explicitely add them to your string.
-.LP
-The SAY strings could be used to give progress messages in sections of
-the script where you want to have 'ECHO OFF' but still let the user
-know what is happening. An example is:
-.IP
-ABORT BUSY
-.br
-ECHO OFF
-.br
-SAY "Dialling your ISP...\\n"
-.br
-\'' ATDT5551212
-.br
-TIMEOUT 120
-.br
-SAY "Waiting up to 2 minutes for connection ... "
-.br
-CONNECT ''
-.br
-SAY "Connected, now logging in ...\n"
-.br
-ogin: account
-.br
-ssword: pass
-.br
-$ \c
-SAY "Logged in OK ...\n"
-\fIetc ...\fR
-.LP
-This sequence will only present the SAY strings to the user and all
-the details of the script will remain hidden. For example, if the
-above script works, the user will see:
-.IP
-Dialling your ISP...
-.br
-Waiting up to 2 minutes for connection ... Connected, now logging in ...
-.br
-Logged in OK ...
-.LP
-
-.SH REPORT STRINGS
-A \fBreport\fR string is similar to the ABORT string. The difference
-is that the strings, and all characters to the next control character
-such as a carriage return, are written to the report file.
-.LP
-The report strings may be used to isolate the transmission rate of the
-modem's connect string and return the value to the chat user. The
-analysis of the report string logic occurs in conjunction with the
-other string processing such as looking for the expect string. The use
-of the same string for a report and abort sequence is probably not
-very useful, however, it is possible.
-.LP
-The report strings to no change the completion code of the program.
-.LP
-These "report" strings may be specified in the script using the \fIREPORT\fR
-sequence. It is written in the script as in the following example:
-.IP
-REPORT CONNECT ABORT BUSY '' ATDT5551212 CONNECT '' ogin: account
-.LP
-This sequence will expect nothing; and then send the string
-ATDT5551212 to dial the telephone. The expected string is
-\fICONNECT\fR. If the string \fICONNECT\fR is received the remainder
-of the script is executed. In addition the program will write to the
-expect-file the string "CONNECT" plus any characters which follow it
-such as the connection rate.
-.SH CLR_REPORT STRINGS
-This sequence allows for clearing previously set \fBREPORT\fR strings.
-\fBREPORT\fR strings are kept in an array of a pre-determined size (at
-compilation time); \fBCLR_REPORT\fR will reclaim the space for cleared
-entries so that new strings can use that space.
-.SH ECHO
-The echo options controls whether the output from the modem is echoed
-to \fIstderr\fR. This option may be set with the \fI-e\fR option, but
-it can also be controlled by the \fIECHO\fR keyword. The "expect-send"
-pair \fIECHO\fR \fION\fR enables echoing, and \fIECHO\fR \fIOFF\fR
-disables it. With this keyword you can select which parts of the
-conversation should be visible. For instance, with the following
-script:
-.IP
-ABORT 'BUSY'
-.br
-ABORT 'NO CARRIER'
-.br
-'' ATZ
-.br
-OK\\r\\n ATD1234567
-.br
-\\r\\n \\c
-.br
-ECHO ON
-.br
-CONNECT \\c
-.br
-ogin: account
-.LP
-all output resulting from modem configuration and dialing is not visible,
-but starting with the \fICONNECT\fR (or \fIBUSY\fR) message, everything
-will be echoed.
-.SH HANGUP
-The HANGUP options control whether a modem hangup should be considered
-as an error or not. This option is useful in scripts for dialling
-systems which will hang up and call your system back. The HANGUP
-options can be \fBON\fR or \fBOFF\fR.
-.br
-When HANGUP is set OFF and the modem hangs up (e.g., after the first
-stage of logging in to a callback system), \fBchat\fR will continue
-running the script (e.g., waiting for the incoming call and second
-stage login prompt). As soon as the incoming call is connected, you
-should use the \fBHANGUP ON\fR directive to reinstall normal hang up
-signal behavior. Here is an (simple) example script:
-.IP
-ABORT 'BUSY'
-.br
-'' ATZ
-.br
-OK\\r\\n ATD1234567
-.br
-\\r\\n \\c
-.br
-CONNECT \\c
-.br
-\'Callback login:' call_back_ID
-.br
-HANGUP OFF
-.br
-ABORT "Bad Login"
-.br
-\'Callback Password:' Call_back_password
-.br
-TIMEOUT 120
-.br
-CONNECT \\c
-.br
-HANGUP ON
-.br
-ABORT "NO CARRIER"
-.br
-ogin:--BREAK--ogin: real_account
-.br
-\fIetc ...\fR
-.LP
-.SH TIMEOUT
-The initial timeout value is 45 seconds. This may be changed using the \fB-t\fR
-parameter.
-.LP
-To change the timeout value for the next expect string, the following
-example may be used:
-.IP
-ATZ OK ATDT5551212 CONNECT TIMEOUT 10 ogin:--ogin: TIMEOUT 5 assword: hello2u2
-.LP
-This will change the timeout to 10 seconds when it expects the login:
-prompt. The timeout is then changed to 5 seconds when it looks for the
-password prompt.
-.LP
-The timeout, once changed, remains in effect until it is changed again.
-.SH SENDING EOT
-The special reply string of \fIEOT\fR indicates that the chat program
-should send an EOT character to the remote. This is normally the
-End-of-file character sequence. A return character is not sent
-following the EOT.
-.PR
-The EOT sequence may be embedded into the send string using the
-sequence \fI^D\fR.
-.SH GENERATING BREAK
-The special reply string of \fIBREAK\fR will cause a break condition
-to be sent. The break is a special signal on the transmitter. The
-normal processing on the receiver is to change the transmission rate.
-It may be used to cycle through the available transmission rates on
-the remote until you are able to receive a valid login prompt.
-.PR
-The break sequence may be embedded into the send string using the
-\fI\\K\fR sequence.
-.SH ESCAPE SEQUENCES
-The expect and reply strings may contain escape sequences. All of the
-sequences are legal in the reply string. Many are legal in the expect.
-Those which are not valid in the expect sequence are so indicated.
-.TP
-.B ''
-Expects or sends a null string. If you send a null string then it will still
-send the return character. This sequence may either be a pair of apostrophe
-or quote characters.
-.TP
-.B \\\\b
-represents a backspace character.
-.TP
-.B \\\\c
-Suppresses the newline at the end of the reply string. This is the only
-method to send a string without a trailing return character. It must
-be at the end of the send string. For example,
-the sequence hello\\c will simply send the characters h, e, l, l, o.
-.I (not valid in expect.)
-.TP
-.B \\\\d
-Delay for one second. The program uses sleep(1) which will delay to a
-maximum of one second.
-.I (not valid in expect.)
-.TP
-.B \\\\K
-Insert a BREAK
-.I (not valid in expect.)
-.TP
-.B \\\\n
-Send a newline or linefeed character.
-.TP
-.B \\\\N
-Send a null character. The same sequence may be represented by \\0.
-.I (not valid in expect.)
-.TP
-.B \\\\p
-Pause for a fraction of a second. The delay is 1/10th of a second.
-.I (not valid in expect.)
-.TP
-.B \\\\q
-Suppress writing the string to the SYSLOG file. The string ?????? is
-written to the log in its place.
-.I (not valid in expect.)
-.TP
-.B \\\\r
-Send or expect a carriage return.
-.TP
-.B \\\\s
-Represents a space character in the string. This may be used when it
-is not desirable to quote the strings which contains spaces. The
-sequence 'HI TIM' and HI\\sTIM are the same.
-.TP
-.B \\\\t
-Send or expect a tab character.
-.TP
-.B \\\\T
-Send the phone number string as specified with the \fI-T\fR option
-.I (not valid in expect.)
-.TP
-.B \\\\U
-Send the phone number 2 string as specified with the \fI-U\fR option
-.I (not valid in expect.)
-.TP
-.B \\\\\\\\
-Send or expect a backslash character.
-.TP
-.B \\\\ddd
-Collapse the octal digits (ddd) into a single ASCII character and send that
-character.
-.I (some characters are not valid in expect.)
-.TP
-.B \^^C
-Substitute the sequence with the control character represented by C.
-For example, the character DC1 (17) is shown as \^^Q.
-.I (some characters are not valid in expect.)
-.SH ENVIRONMENT VARIABLES
-Environment variables are available within chat scripts, if the \fI-E\fR
-option was specified in the command line. The metacharacter \fI$\fR is used
-to introduce the name of the environment variable to substitute. If the
-substition fails, because the requested environment variable is not set,
-\fInothing\fR is replaced for the variable.
-.SH TERMINATION CODES
-The \fIchat\fR program will terminate with the following completion
-codes.
-.TP
-.B 0
-The normal termination of the program. This indicates that the script
-was executed without error to the normal conclusion.
-.TP
-.B 1
-One or more of the parameters are invalid or an expect string was too
-large for the internal buffers. This indicates that the program as not
-properly executed.
-.TP
-.B 2
-An error occurred during the execution of the program. This may be due
-to a read or write operation failing for some reason or chat receiving
-a signal such as SIGINT.
-.TP
-.B 3
-A timeout event occurred when there was an \fIexpect\fR string without
-having a "-subsend" string. This may mean that you did not program the
-script correctly for the condition or that some unexpected event has
-occurred and the expected string could not be found.
-.TP
-.B 4
-The first string marked as an \fIABORT\fR condition occurred.
-.TP
-.B 5
-The second string marked as an \fIABORT\fR condition occurred.
-.TP
-.B 6
-The third string marked as an \fIABORT\fR condition occurred.
-.TP
-.B 7
-The fourth string marked as an \fIABORT\fR condition occurred.
-.TP
-.B ...
-The other termination codes are also strings marked as an \fIABORT\fR
-condition.
-.LP
-Using the termination code, it is possible to determine which event
-terminated the script. It is possible to decide if the string "BUSY"
-was received from the modem as opposed to "NO DIAL TONE". While the
-first event may be retried, the second will probably have little
-chance of succeeding during a retry.
-.SH SEE ALSO
-Additional information about \fIchat\fR scripts may be found with UUCP
-documentation. The \fIchat\fR script was taken from the ideas proposed
-by the scripts used by the \fIuucico\fR program.
-.LP
-uucico(1), uucp(1)
-.SH COPYRIGHT
-The \fIchat\fR program is in public domain. This is not the GNU public
-license. If it breaks then you get to keep both pieces.
diff --git a/mdk-stage1/ppp/chat/chat.c b/mdk-stage1/ppp/chat/chat.c
deleted file mode 100644
index 1b22907a8..000000000
--- a/mdk-stage1/ppp/chat/chat.c
+++ /dev/null
@@ -1,1756 +0,0 @@
-/*
- * Chat -- a program for automatic session establishment (i.e. dial
- * the phone and log in).
- *
- * Standard termination codes:
- * 0 - successful completion of the script
- * 1 - invalid argument, expect string too large, etc.
- * 2 - error on an I/O operation or fatal error condition.
- * 3 - timeout waiting for a simple string.
- * 4 - the first string declared as "ABORT"
- * 5 - the second string declared as "ABORT"
- * 6 - ... and so on for successive ABORT strings.
- *
- * This software is in the public domain.
- *
- * -----------------
- * 22-May-99 added environment substitutuion, enabled with -E switch.
- * Andreas Arens <andras@cityweb.de>.
- *
- * 12-May-99 added a feature to read data to be sent from a file,
- * if the send string starts with @. Idea from gpk <gpk@onramp.net>.
- *
- * added -T and -U option and \T and \U substitution to pass a phone
- * number into chat script. Two are needed for some ISDN TA applications.
- * Keith Dart <kdart@cisco.com>
- *
- *
- * Added SAY keyword to send output to stderr.
- * This allows to turn ECHO OFF and to output specific, user selected,
- * text to give progress messages. This best works when stderr
- * exists (i.e.: pppd in nodetach mode).
- *
- * Added HANGUP directives to allow for us to be called
- * back. When HANGUP is set to NO, chat will not hangup at HUP signal.
- * We rely on timeouts in that case.
- *
- * Added CLR_ABORT to clear previously set ABORT string. This has been
- * dictated by the HANGUP above as "NO CARRIER" (for example) must be
- * an ABORT condition until we know the other host is going to close
- * the connection for call back. As soon as we have completed the
- * first stage of the call back sequence, "NO CARRIER" is a valid, non
- * fatal string. As soon as we got called back (probably get "CONNECT"),
- * we should re-arm the ABORT "NO CARRIER". Hence the CLR_ABORT command.
- * Note that CLR_ABORT packs the abort_strings[] array so that we do not
- * have unused entries not being reclaimed.
- *
- * In the same vein as above, added CLR_REPORT keyword.
- *
- * Allow for comments. Line starting with '#' are comments and are
- * ignored. If a '#' is to be expected as the first character, the
- * expect string must be quoted.
- *
- *
- * Francis Demierre <Francis@SwissMail.Com>
- * Thu May 15 17:15:40 MET DST 1997
- *
- *
- * Added -r "report file" switch & REPORT keyword.
- * Robert Geer <bgeer@xmission.com>
- *
- * Added -s "use stderr" and -S "don't use syslog" switches.
- * June 18, 1997
- * Karl O. Pinc <kop@meme.com>
- *
- *
- * Added -e "echo" switch & ECHO keyword
- * Dick Streefland <dicks@tasking.nl>
- *
- *
- * Considerable updates and modifications by
- * Al Longyear <longyear@pobox.com>
- * Paul Mackerras <paulus@cs.anu.edu.au>
- *
- *
- * The original author is:
- *
- * Karl Fox <karl@MorningStar.Com>
- * Morning Star Technologies, Inc.
- * 1760 Zollinger Road
- * Columbus, OH 43221
- * (614)451-1883
- *
- */
-
-#ifndef __STDC__
-#define const
-#endif
-
-#ifndef lint
-static const char rcsid[] = "$Id$";
-#endif
-
-#include <stdio.h>
-#include <ctype.h>
-#include <time.h>
-#include <fcntl.h>
-#include <signal.h>
-#include <errno.h>
-#include <string.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <syslog.h>
-
-#ifndef TERMIO
-#undef TERMIOS
-#define TERMIOS
-#endif
-
-#ifdef TERMIO
-#include <termio.h>
-#endif
-#ifdef TERMIOS
-#include <termios.h>
-#endif
-
-#define STR_LEN 1024
-
-#ifndef SIGTYPE
-#define SIGTYPE void
-#endif
-
-#undef __P
-#undef __V
-
-#ifdef __STDC__
-#include <stdarg.h>
-#define __V(x) x
-#define __P(x) x
-#else
-#include <varargs.h>
-#define __V(x) (va_alist) va_dcl
-#define __P(x) ()
-#define const
-#endif
-
-#ifndef O_NONBLOCK
-#define O_NONBLOCK O_NDELAY
-#endif
-
-#ifdef SUNOS
-extern int sys_nerr;
-extern char *sys_errlist[];
-#define memmove(to, from, n) bcopy(from, to, n)
-#define strerror(n) ((unsigned)(n) < sys_nerr? sys_errlist[(n)] :\
- "unknown error")
-#endif
-
-/*************** Micro getopt() *********************************************/
-#define OPTION(c,v) (_O&2&&**v?*(*v)++:!c||_O&4?0:(!(_O&1)&& \
- (--c,++v),_O=4,c&&**v=='-'&&v[0][1]?*++*v=='-'\
- &&!v[0][1]?(--c,++v,0):(_O=2,*(*v)++):0))
-#define OPTARG(c,v) (_O&2?**v||(++v,--c)?(_O=1,--c,*v++): \
- (_O=4,(char*)0):(char*)0)
-#define OPTONLYARG(c,v) (_O&2&&**v?(_O=1,--c,*v++):(char*)0)
-#define ARG(c,v) (c?(--c,*v++):(char*)0)
-
-static int _O = 0; /* Internal state */
-/*************** Micro getopt() *********************************************/
-
-char *program_name;
-
-#define MAX_ABORTS 50
-#define MAX_REPORTS 50
-#define DEFAULT_CHAT_TIMEOUT 45
-
-int echo = 0;
-int verbose = 0;
-int to_log = 1;
-int to_stderr = 0;
-int Verbose = 0;
-int quiet = 0;
-int report = 0;
-int use_env = 0;
-int exit_code = 0;
-FILE* report_fp = (FILE *) 0;
-char *report_file = (char *) 0;
-char *chat_file = (char *) 0;
-char *phone_num = (char *) 0;
-char *phone_num2 = (char *) 0;
-int timeout = DEFAULT_CHAT_TIMEOUT;
-
-int have_tty_parameters = 0;
-
-#ifdef TERMIO
-#define term_parms struct termio
-#define get_term_param(param) ioctl(0, TCGETA, param)
-#define set_term_param(param) ioctl(0, TCSETA, param)
-struct termio saved_tty_parameters;
-#endif
-
-#ifdef TERMIOS
-#define term_parms struct termios
-#define get_term_param(param) tcgetattr(0, param)
-#define set_term_param(param) tcsetattr(0, TCSANOW, param)
-struct termios saved_tty_parameters;
-#endif
-
-char *abort_string[MAX_ABORTS], *fail_reason = (char *)0,
- fail_buffer[50];
-int n_aborts = 0, abort_next = 0, timeout_next = 0, echo_next = 0;
-int clear_abort_next = 0;
-
-char *report_string[MAX_REPORTS] ;
-char report_buffer[50] ;
-int n_reports = 0, report_next = 0, report_gathering = 0 ;
-int clear_report_next = 0;
-
-int say_next = 0, hup_next = 0;
-
-void *dup_mem __P((void *b, size_t c));
-void *copy_of __P((char *s));
-void usage __P((void));
-void logf __P((const char *fmt, ...));
-void fatal __P((int code, const char *fmt, ...));
-SIGTYPE sigalrm __P((int signo));
-SIGTYPE sigint __P((int signo));
-SIGTYPE sigterm __P((int signo));
-SIGTYPE sighup __P((int signo));
-void unalarm __P((void));
-void init __P((void));
-void set_tty_parameters __P((void));
-void echo_stderr __P((int));
-void break_sequence __P((void));
-void terminate __P((int status));
-void do_file __P((char *chat_file));
-int get_string __P((register char *string));
-int put_string __P((register char *s));
-int write_char __P((int c));
-int put_char __P((int c));
-int get_char __P((void));
-void chat_send __P((register char *s));
-char *character __P((int c));
-void chat_expect __P((register char *s));
-char *clean __P((register char *s, int sending));
-void break_sequence __P((void));
-void terminate __P((int status));
-void pack_array __P((char **array, int end));
-char *expect_strtok __P((char *, char *));
-int vfmtmsg __P((char *, int, const char *, va_list)); /* vsprintf++ */
-
-int main __P((int, char *[]));
-
-void *dup_mem(b, c)
-void *b;
-size_t c;
-{
- void *ans = malloc (c);
- if (!ans)
- fatal(2, "memory error!");
-
- memcpy (ans, b, c);
- return ans;
-}
-
-void *copy_of (s)
-char *s;
-{
- return dup_mem (s, strlen (s) + 1);
-}
-
-/*
- * chat [ -v ] [ -E ] [ -T number ] [ -U number ] [ -t timeout ] [ -f chat-file ] \
- * [ -r report-file ] \
- * [...[[expect[-say[-expect...]] say expect[-say[-expect]] ...]]]
- *
- * Perform a UUCP-dialer-like chat script on stdin and stdout.
- */
-int
-main(argc, argv)
- int argc;
- char **argv;
-{
- int option;
- char *arg;
-
- program_name = *argv;
- tzset();
-
- while ((option = OPTION(argc, argv)) != 0) {
- switch (option) {
- case 'e':
- ++echo;
- break;
-
- case 'E':
- ++use_env;
- break;
-
- case 'v':
- ++verbose;
- break;
-
- case 'V':
- ++Verbose;
- break;
-
- case 's':
- ++to_stderr;
- break;
-
- case 'S':
- to_log = 0;
- break;
-
- case 'f':
- if ((arg = OPTARG(argc, argv)) != NULL)
- chat_file = copy_of(arg);
- else
- usage();
- break;
-
- case 't':
- if ((arg = OPTARG(argc, argv)) != NULL)
- timeout = atoi(arg);
- else
- usage();
- break;
-
- case 'r':
- arg = OPTARG (argc, argv);
- if (arg) {
- if (report_fp != NULL)
- fclose (report_fp);
- report_file = copy_of (arg);
- report_fp = fopen (report_file, "a");
- if (report_fp != NULL) {
- if (verbose)
- fprintf (report_fp, "Opening \"%s\"...\n",
- report_file);
- report = 1;
- }
- }
- break;
-
- case 'T':
- if ((arg = OPTARG(argc, argv)) != NULL)
- phone_num = copy_of(arg);
- else
- usage();
- break;
-
- case 'U':
- if ((arg = OPTARG(argc, argv)) != NULL)
- phone_num2 = copy_of(arg);
- else
- usage();
- break;
-
- default:
- usage();
- break;
- }
- }
-/*
- * Default the report file to the stderr location
- */
- if (report_fp == NULL)
- report_fp = stderr;
-
- if (to_log) {
-#ifdef ultrix
- openlog("chat", LOG_PID);
-#else
- openlog("chat", LOG_PID | LOG_NDELAY, LOG_LOCAL2);
-
- if (verbose)
- setlogmask(LOG_UPTO(LOG_INFO));
- else
- setlogmask(LOG_UPTO(LOG_WARNING));
-#endif
- }
-
- init();
-
- if (chat_file != NULL) {
- arg = ARG(argc, argv);
- if (arg != NULL)
- usage();
- else
- do_file (chat_file);
- } else {
- while ((arg = ARG(argc, argv)) != NULL) {
- chat_expect(arg);
-
- if ((arg = ARG(argc, argv)) != NULL)
- chat_send(arg);
- }
- }
-
- terminate(0);
- return 0;
-}
-
-/*
- * Process a chat script when read from a file.
- */
-
-void do_file (chat_file)
-char *chat_file;
-{
- int linect, sendflg;
- char *sp, *arg, quote;
- char buf [STR_LEN];
- FILE *cfp;
-
- cfp = fopen (chat_file, "r");
- if (cfp == NULL)
- fatal(1, "%s -- open failed: %m", chat_file);
-
- linect = 0;
- sendflg = 0;
-
- while (fgets(buf, STR_LEN, cfp) != NULL) {
- sp = strchr (buf, '\n');
- if (sp)
- *sp = '\0';
-
- linect++;
- sp = buf;
-
- /* lines starting with '#' are comments. If a real '#'
- is to be expected, it should be quoted .... */
- if ( *sp == '#' )
- continue;
-
- while (*sp != '\0') {
- if (*sp == ' ' || *sp == '\t') {
- ++sp;
- continue;
- }
-
- if (*sp == '"' || *sp == '\'') {
- quote = *sp++;
- arg = sp;
- while (*sp != quote) {
- if (*sp == '\0')
- fatal(1, "unterminated quote (line %d)", linect);
-
- if (*sp++ == '\\') {
- if (*sp != '\0')
- ++sp;
- }
- }
- }
- else {
- arg = sp;
- while (*sp != '\0' && *sp != ' ' && *sp != '\t')
- ++sp;
- }
-
- if (*sp != '\0')
- *sp++ = '\0';
-
- if (sendflg)
- chat_send (arg);
- else
- chat_expect (arg);
- sendflg = !sendflg;
- }
- }
- fclose (cfp);
-}
-
-/*
- * We got an error parsing the command line.
- */
-void usage()
-{
- fprintf(stderr, "\
-Usage: %s [-e] [-E] [-v] [-V] [-t timeout] [-r report-file]\n\
- [-T phone-number] [-U phone-number2] {-f chat-file | chat-script}\n", program_name);
- exit(1);
-}
-
-char line[1024];
-
-/*
- * Send a message to syslog and/or stderr.
- */
-void logf __V((const char *fmt, ...))
-{
- va_list args;
-
-#ifdef __STDC__
- va_start(args, fmt);
-#else
- char *fmt;
- va_start(args);
- fmt = va_arg(args, char *);
-#endif
-
- vfmtmsg(line, sizeof(line), fmt, args);
- if (to_log)
- syslog(LOG_INFO, "%s", line);
- if (to_stderr)
- fprintf(stderr, "%s\n", line);
-}
-
-/*
- * Print an error message and terminate.
- */
-
-void fatal __V((int code, const char *fmt, ...))
-{
- va_list args;
-
-#ifdef __STDC__
- va_start(args, fmt);
-#else
- int code;
- char *fmt;
- va_start(args);
- code = va_arg(args, int);
- fmt = va_arg(args, char *);
-#endif
-
- vfmtmsg(line, sizeof(line), fmt, args);
- if (to_log)
- syslog(LOG_ERR, "%s", line);
- if (to_stderr)
- fprintf(stderr, "%s\n", line);
- terminate(code);
-}
-
-int alarmed = 0;
-
-SIGTYPE sigalrm(signo)
-int signo;
-{
- int flags;
-
- alarm(1);
- alarmed = 1; /* Reset alarm to avoid race window */
- signal(SIGALRM, sigalrm); /* that can cause hanging in read() */
-
- if ((flags = fcntl(0, F_GETFL, 0)) == -1)
- fatal(2, "Can't get file mode flags on stdin: %m");
-
- if (fcntl(0, F_SETFL, flags | O_NONBLOCK) == -1)
- fatal(2, "Can't set file mode flags on stdin: %m");
-
- if (verbose)
- logf("alarm");
-}
-
-void unalarm()
-{
- int flags;
-
- if ((flags = fcntl(0, F_GETFL, 0)) == -1)
- fatal(2, "Can't get file mode flags on stdin: %m");
-
- if (fcntl(0, F_SETFL, flags & ~O_NONBLOCK) == -1)
- fatal(2, "Can't set file mode flags on stdin: %m");
-}
-
-SIGTYPE sigint(signo)
-int signo;
-{
- fatal(2, "SIGINT");
-}
-
-SIGTYPE sigterm(signo)
-int signo;
-{
- fatal(2, "SIGTERM");
-}
-
-SIGTYPE sighup(signo)
-int signo;
-{
- fatal(2, "SIGHUP");
-}
-
-void init()
-{
- signal(SIGINT, sigint);
- signal(SIGTERM, sigterm);
- signal(SIGHUP, sighup);
-
- set_tty_parameters();
- signal(SIGALRM, sigalrm);
- alarm(0);
- alarmed = 0;
-}
-
-void set_tty_parameters()
-{
-#if defined(get_term_param)
- term_parms t;
-
- if (get_term_param (&t) < 0)
- fatal(2, "Can't get terminal parameters: %m");
-
- saved_tty_parameters = t;
- have_tty_parameters = 1;
-
- t.c_iflag |= IGNBRK | ISTRIP | IGNPAR;
- t.c_oflag = 0;
- t.c_lflag = 0;
- t.c_cc[VERASE] =
- t.c_cc[VKILL] = 0;
- t.c_cc[VMIN] = 1;
- t.c_cc[VTIME] = 0;
-
- if (set_term_param (&t) < 0)
- fatal(2, "Can't set terminal parameters: %m");
-#endif
-}
-
-void break_sequence()
-{
-#ifdef TERMIOS
- tcsendbreak (0, 0);
-#endif
-}
-
-void terminate(status)
-int status;
-{
- static int terminating = 0;
-
- if (terminating)
- exit(status);
- terminating = 1;
- echo_stderr(-1);
-/*
- * Allow the last of the report string to be gathered before we terminate.
- */
- if (report_gathering) {
- int c, rep_len;
-
- rep_len = strlen(report_buffer);
- while (rep_len + 1 <= sizeof(report_buffer)) {
- alarm(1);
- c = get_char();
- alarm(0);
- if (c < 0 || iscntrl(c))
- break;
- report_buffer[rep_len] = c;
- ++rep_len;
- }
- report_buffer[rep_len] = 0;
- fprintf (report_fp, "chat: %s\n", report_buffer);
- }
- if (report_file != (char *) 0 && report_fp != (FILE *) NULL) {
- if (verbose)
- fprintf (report_fp, "Closing \"%s\".\n", report_file);
- fclose (report_fp);
- report_fp = (FILE *) NULL;
- }
-
-#if defined(get_term_param)
- if (have_tty_parameters) {
- if (set_term_param (&saved_tty_parameters) < 0)
- fatal(2, "Can't restore terminal parameters: %m");
- }
-#endif
-
- exit(status);
-}
-
-/*
- * 'Clean up' this string.
- */
-char *clean(s, sending)
-register char *s;
-int sending; /* set to 1 when sending (putting) this string. */
-{
- char temp[STR_LEN], env_str[STR_LEN], cur_chr;
- register char *s1, *phchar;
- int add_return = sending;
-#define isoctal(chr) (((chr) >= '0') && ((chr) <= '7'))
-#define isalnumx(chr) ((((chr) >= '0') && ((chr) <= '9')) \
- || (((chr) >= 'a') && ((chr) <= 'z')) \
- || (((chr) >= 'A') && ((chr) <= 'Z')) \
- || (chr) == '_')
-
- s1 = temp;
- while (*s) {
- cur_chr = *s++;
- if (cur_chr == '^') {
- cur_chr = *s++;
- if (cur_chr == '\0') {
- *s1++ = '^';
- break;
- }
- cur_chr &= 0x1F;
- if (cur_chr != 0) {
- *s1++ = cur_chr;
- }
- continue;
- }
-
- if (use_env && cur_chr == '$') { /* ARI */
- phchar = env_str;
- while (isalnumx(*s))
- *phchar++ = *s++;
- *phchar = '\0';
- phchar = getenv(env_str);
- if (phchar)
- while (*phchar)
- *s1++ = *phchar++;
- continue;
- }
-
- if (cur_chr != '\\') {
- *s1++ = cur_chr;
- continue;
- }
-
- cur_chr = *s++;
- if (cur_chr == '\0') {
- if (sending) {
- *s1++ = '\\';
- *s1++ = '\\';
- }
- break;
- }
-
- switch (cur_chr) {
- case 'b':
- *s1++ = '\b';
- break;
-
- case 'c':
- if (sending && *s == '\0')
- add_return = 0;
- else
- *s1++ = cur_chr;
- break;
-
- case '\\':
- case 'K':
- case 'p':
- case 'd':
- if (sending)
- *s1++ = '\\';
- *s1++ = cur_chr;
- break;
-
- case 'T':
- if (sending && phone_num) {
- for (phchar = phone_num; *phchar != '\0'; phchar++)
- *s1++ = *phchar;
- }
- else {
- *s1++ = '\\';
- *s1++ = 'T';
- }
- break;
-
- case 'U':
- if (sending && phone_num2) {
- for (phchar = phone_num2; *phchar != '\0'; phchar++)
- *s1++ = *phchar;
- }
- else {
- *s1++ = '\\';
- *s1++ = 'U';
- }
- break;
-
- case 'q':
- quiet = 1;
- break;
-
- case 'r':
- *s1++ = '\r';
- break;
-
- case 'n':
- *s1++ = '\n';
- break;
-
- case 's':
- *s1++ = ' ';
- break;
-
- case 't':
- *s1++ = '\t';
- break;
-
- case 'N':
- if (sending) {
- *s1++ = '\\';
- *s1++ = '\0';
- }
- else
- *s1++ = 'N';
- break;
-
- case '$': /* ARI */
- if (use_env) {
- *s1++ = cur_chr;
- break;
- }
- /* FALL THROUGH */
-
- default:
- if (isoctal (cur_chr)) {
- cur_chr &= 0x07;
- if (isoctal (*s)) {
- cur_chr <<= 3;
- cur_chr |= *s++ - '0';
- if (isoctal (*s)) {
- cur_chr <<= 3;
- cur_chr |= *s++ - '0';
- }
- }
-
- if (cur_chr != 0 || sending) {
- if (sending && (cur_chr == '\\' || cur_chr == 0))
- *s1++ = '\\';
- *s1++ = cur_chr;
- }
- break;
- }
-
- if (sending)
- *s1++ = '\\';
- *s1++ = cur_chr;
- break;
- }
- }
-
- if (add_return)
- *s1++ = '\r';
-
- *s1++ = '\0'; /* guarantee closure */
- *s1++ = '\0'; /* terminate the string */
- return dup_mem (temp, (size_t) (s1 - temp)); /* may have embedded nuls */
-}
-
-/*
- * A modified version of 'strtok'. This version skips \ sequences.
- */
-
-char *expect_strtok (s, term)
- char *s, *term;
-{
- static char *str = "";
- int escape_flag = 0;
- char *result;
-
-/*
- * If a string was specified then do initial processing.
- */
- if (s)
- str = s;
-
-/*
- * If this is the escape flag then reset it and ignore the character.
- */
- if (*str)
- result = str;
- else
- result = (char *) 0;
-
- while (*str) {
- if (escape_flag) {
- escape_flag = 0;
- ++str;
- continue;
- }
-
- if (*str == '\\') {
- ++str;
- escape_flag = 1;
- continue;
- }
-
-/*
- * If this is not in the termination string, continue.
- */
- if (strchr (term, *str) == (char *) 0) {
- ++str;
- continue;
- }
-
-/*
- * This is the terminator. Mark the end of the string and stop.
- */
- *str++ = '\0';
- break;
- }
- return (result);
-}
-
-/*
- * Process the expect string
- */
-
-void chat_expect (s)
-char *s;
-{
- char *expect;
- char *reply;
-
- if (strcmp(s, "HANGUP") == 0) {
- ++hup_next;
- return;
- }
-
- if (strcmp(s, "ABORT") == 0) {
- ++abort_next;
- return;
- }
-
- if (strcmp(s, "CLR_ABORT") == 0) {
- ++clear_abort_next;
- return;
- }
-
- if (strcmp(s, "REPORT") == 0) {
- ++report_next;
- return;
- }
-
- if (strcmp(s, "CLR_REPORT") == 0) {
- ++clear_report_next;
- return;
- }
-
- if (strcmp(s, "TIMEOUT") == 0) {
- ++timeout_next;
- return;
- }
-
- if (strcmp(s, "ECHO") == 0) {
- ++echo_next;
- return;
- }
-
- if (strcmp(s, "SAY") == 0) {
- ++say_next;
- return;
- }
-
-/*
- * Fetch the expect and reply string.
- */
- for (;;) {
- expect = expect_strtok (s, "-");
- s = (char *) 0;
-
- if (expect == (char *) 0)
- return;
-
- reply = expect_strtok (s, "-");
-
-/*
- * Handle the expect string. If successful then exit.
- */
- if (get_string (expect))
- return;
-
-/*
- * If there is a sub-reply string then send it. Otherwise any condition
- * is terminal.
- */
- if (reply == (char *) 0 || exit_code != 3)
- break;
-
- chat_send (reply);
- }
-
-/*
- * The expectation did not occur. This is terminal.
- */
- if (fail_reason)
- logf("Failed (%s)", fail_reason);
- else
- logf("Failed");
- terminate(exit_code);
-}
-
-/*
- * Translate the input character to the appropriate string for printing
- * the data.
- */
-
-char *character(c)
-int c;
-{
- static char string[10];
- char *meta;
-
- meta = (c & 0x80) ? "M-" : "";
- c &= 0x7F;
-
- if (c < 32)
- sprintf(string, "%s^%c", meta, (int)c + '@');
- else if (c == 127)
- sprintf(string, "%s^?", meta);
- else
- sprintf(string, "%s%c", meta, c);
-
- return (string);
-}
-
-/*
- * process the reply string
- */
-void chat_send (s)
-register char *s;
-{
- char file_data[STR_LEN];
-
- if (say_next) {
- say_next = 0;
- s = clean(s, 1);
- write(2, s, strlen(s));
- free(s);
- return;
- }
-
- if (hup_next) {
- hup_next = 0;
- if (strcmp(s, "OFF") == 0)
- signal(SIGHUP, SIG_IGN);
- else
- signal(SIGHUP, sighup);
- return;
- }
-
- if (echo_next) {
- echo_next = 0;
- echo = (strcmp(s, "ON") == 0);
- return;
- }
-
- if (abort_next) {
- char *s1;
-
- abort_next = 0;
-
- if (n_aborts >= MAX_ABORTS)
- fatal(2, "Too many ABORT strings");
-
- s1 = clean(s, 0);
-
- if (strlen(s1) > strlen(s)
- || strlen(s1) + 1 > sizeof(fail_buffer))
- fatal(1, "Illegal or too-long ABORT string ('%v')", s);
-
- abort_string[n_aborts++] = s1;
-
- if (verbose)
- logf("abort on (%v)", s);
- return;
- }
-
- if (clear_abort_next) {
- char *s1;
- int i;
- int old_max;
- int pack = 0;
-
- clear_abort_next = 0;
-
- s1 = clean(s, 0);
-
- if (strlen(s1) > strlen(s)
- || strlen(s1) + 1 > sizeof(fail_buffer))
- fatal(1, "Illegal or too-long CLR_ABORT string ('%v')", s);
-
- old_max = n_aborts;
- for (i=0; i < n_aborts; i++) {
- if ( strcmp(s1,abort_string[i]) == 0 ) {
- free(abort_string[i]);
- abort_string[i] = NULL;
- pack++;
- n_aborts--;
- if (verbose)
- logf("clear abort on (%v)", s);
- }
- }
- free(s1);
- if (pack)
- pack_array(abort_string,old_max);
- return;
- }
-
- if (report_next) {
- char *s1;
-
- report_next = 0;
- if (n_reports >= MAX_REPORTS)
- fatal(2, "Too many REPORT strings");
-
- s1 = clean(s, 0);
-
- if (strlen(s1) > strlen(s) || strlen(s1) > sizeof fail_buffer - 1)
- fatal(1, "Illegal or too-long REPORT string ('%v')", s);
-
- report_string[n_reports++] = s1;
-
- if (verbose)
- logf("report (%v)", s);
- return;
- }
-
- if (clear_report_next) {
- char *s1;
- int i;
- int old_max;
- int pack = 0;
-
- clear_report_next = 0;
-
- s1 = clean(s, 0);
-
- if (strlen(s1) > strlen(s) || strlen(s1) > sizeof fail_buffer - 1)
- fatal(1, "Illegal or too-long REPORT string ('%v')", s);
-
- old_max = n_reports;
- for (i=0; i < n_reports; i++) {
- if ( strcmp(s1,report_string[i]) == 0 ) {
- free(report_string[i]);
- report_string[i] = NULL;
- pack++;
- n_reports--;
- if (verbose)
- logf("clear report (%v)", s);
- }
- }
- free(s1);
- if (pack)
- pack_array(report_string,old_max);
-
- return;
- }
-
- if (timeout_next) {
- timeout_next = 0;
- timeout = atoi(s);
-
- if (timeout <= 0)
- timeout = DEFAULT_CHAT_TIMEOUT;
-
- if (verbose)
- logf("timeout set to %d seconds", timeout);
-
- return;
- }
-
- /*
- * The syntax @filename means read the string to send from the
- * file `filename'.
- */
- if (s[0] == '@') {
- /* skip the @ and any following white-space */
- char *fn = s;
- while (*++fn == ' ' || *fn == '\t')
- ;
-
- if (*fn != 0) {
- FILE *f;
- int n = 0;
-
- /* open the file and read until STR_LEN-1 bytes or end-of-file */
- f = fopen(fn, "r");
- if (f == NULL)
- fatal(1, "%s -- open failed: %m", fn);
- while (n < STR_LEN - 1) {
- int nr = fread(&file_data[n], 1, STR_LEN - 1 - n, f);
- if (nr < 0)
- fatal(1, "%s -- read error", fn);
- if (nr == 0)
- break;
- n += nr;
- }
- fclose(f);
-
- /* use the string we got as the string to send,
- but trim off the final newline if any. */
- if (n > 0 && file_data[n-1] == '\n')
- --n;
- file_data[n] = 0;
- s = file_data;
- }
- }
-
- if (strcmp(s, "EOT") == 0)
- s = "^D\\c";
- else if (strcmp(s, "BREAK") == 0)
- s = "\\K\\c";
-
- if (!put_string(s))
- fatal(1, "Failed");
-}
-
-int get_char()
-{
- int status;
- char c;
-
- status = read(0, &c, 1);
-
- switch (status) {
- case 1:
- return ((int)c & 0x7F);
-
- default:
- logf("warning: read() on stdin returned %d", status);
-
- case -1:
- if ((status = fcntl(0, F_GETFL, 0)) == -1)
- fatal(2, "Can't get file mode flags on stdin: %m");
-
- if (fcntl(0, F_SETFL, status & ~O_NONBLOCK) == -1)
- fatal(2, "Can't set file mode flags on stdin: %m");
-
- return (-1);
- }
-}
-
-int put_char(c)
-int c;
-{
- int status;
- char ch = c;
-
- usleep(10000); /* inter-character typing delay (?) */
-
- status = write(1, &ch, 1);
-
- switch (status) {
- case 1:
- return (0);
-
- default:
- logf("warning: write() on stdout returned %d", status);
-
- case -1:
- if ((status = fcntl(0, F_GETFL, 0)) == -1)
- fatal(2, "Can't get file mode flags on stdin, %m");
-
- if (fcntl(0, F_SETFL, status & ~O_NONBLOCK) == -1)
- fatal(2, "Can't set file mode flags on stdin: %m");
-
- return (-1);
- }
-}
-
-int write_char (c)
-int c;
-{
- if (alarmed || put_char(c) < 0) {
- alarm(0);
- alarmed = 0;
-
- if (verbose) {
- if (errno == EINTR || errno == EWOULDBLOCK)
- logf(" -- write timed out");
- else
- logf(" -- write failed: %m");
- }
- return (0);
- }
- return (1);
-}
-
-int put_string (s)
-register char *s;
-{
- quiet = 0;
- s = clean(s, 1);
-
- if (verbose) {
- if (quiet)
- logf("send (??????)");
- else
- logf("send (%v)", s);
- }
-
- alarm(timeout); alarmed = 0;
-
- while (*s) {
- register char c = *s++;
-
- if (c != '\\') {
- if (!write_char (c))
- return 0;
- continue;
- }
-
- c = *s++;
- switch (c) {
- case 'd':
- sleep(1);
- break;
-
- case 'K':
- break_sequence();
- break;
-
- case 'p':
- usleep(10000); /* 1/100th of a second (arg is microseconds) */
- break;
-
- default:
- if (!write_char (c))
- return 0;
- break;
- }
- }
-
- alarm(0);
- alarmed = 0;
- return (1);
-}
-
-/*
- * Echo a character to stderr.
- * When called with -1, a '\n' character is generated when
- * the cursor is not at the beginning of a line.
- */
-void echo_stderr(n)
-int n;
-{
- static int need_lf;
- char *s;
-
- switch (n) {
- case '\r': /* ignore '\r' */
- break;
- case -1:
- if (need_lf == 0)
- break;
- /* fall through */
- case '\n':
- write(2, "\n", 1);
- need_lf = 0;
- break;
- default:
- s = character(n);
- write(2, s, strlen(s));
- need_lf = 1;
- break;
- }
-}
-
-/*
- * 'Wait for' this string to appear on this file descriptor.
- */
-int get_string(string)
-register char *string;
-{
- char temp[STR_LEN];
- int c, printed = 0, len, minlen;
- register char *s = temp, *end = s + STR_LEN;
- char *logged = temp;
-
- fail_reason = (char *)0;
- string = clean(string, 0);
- len = strlen(string);
- minlen = (len > sizeof(fail_buffer)? len: sizeof(fail_buffer)) - 1;
-
- if (verbose)
- logf("expect (%v)", string);
-
- if (len > STR_LEN) {
- logf("expect string is too long");
- exit_code = 1;
- return 0;
- }
-
- if (len == 0) {
- if (verbose)
- logf("got it");
- return (1);
- }
-
- alarm(timeout);
- alarmed = 0;
-
- while ( ! alarmed && (c = get_char()) >= 0) {
- int n, abort_len, report_len;
-
- if (echo)
- echo_stderr(c);
- if (verbose && c == '\n') {
- if (s == logged)
- logf(""); /* blank line */
- else
- logf("%0.*v", s - logged, logged);
- logged = s + 1;
- }
-
- *s++ = c;
-
- if (verbose && s >= logged + 80) {
- logf("%0.*v", s - logged, logged);
- logged = s;
- }
-
- if (Verbose) {
- if (c == '\n')
- fputc( '\n', stderr );
- else if (c != '\r')
- fprintf( stderr, "%s", character(c) );
- }
-
- if (!report_gathering) {
- for (n = 0; n < n_reports; ++n) {
- if ((report_string[n] != (char*) NULL) &&
- s - temp >= (report_len = strlen(report_string[n])) &&
- strncmp(s - report_len, report_string[n], report_len) == 0) {
- time_t time_now = time ((time_t*) NULL);
- struct tm* tm_now = localtime (&time_now);
-
- strftime (report_buffer, 20, "%b %d %H:%M:%S ", tm_now);
- strcat (report_buffer, report_string[n]);
-
- report_string[n] = (char *) NULL;
- report_gathering = 1;
- break;
- }
- }
- }
- else {
- if (!iscntrl (c)) {
- int rep_len = strlen (report_buffer);
- report_buffer[rep_len] = c;
- report_buffer[rep_len + 1] = '\0';
- }
- else {
- report_gathering = 0;
- fprintf (report_fp, "chat: %s\n", report_buffer);
- }
- }
-
- if (s - temp >= len &&
- c == string[len - 1] &&
- strncmp(s - len, string, len) == 0) {
- if (verbose) {
- if (s > logged)
- logf("%0.*v", s - logged, logged);
- logf(" -- got it\n");
- }
-
- alarm(0);
- alarmed = 0;
- return (1);
- }
-
- for (n = 0; n < n_aborts; ++n) {
- if (s - temp >= (abort_len = strlen(abort_string[n])) &&
- strncmp(s - abort_len, abort_string[n], abort_len) == 0) {
- if (verbose) {
- if (s > logged)
- logf("%0.*v", s - logged, logged);
- logf(" -- failed");
- }
-
- alarm(0);
- alarmed = 0;
- exit_code = n + 4;
- strcpy(fail_reason = fail_buffer, abort_string[n]);
- return (0);
- }
- }
-
- if (s >= end) {
- if (logged < s - minlen) {
- if (verbose)
- logf("%0.*v", s - logged, logged);
- logged = s;
- }
- s -= minlen;
- memmove(temp, s, minlen);
- logged = temp + (logged - s);
- s = temp + minlen;
- }
-
- if (alarmed && verbose)
- logf("warning: alarm synchronization problem");
- }
-
- alarm(0);
-
- if (verbose && printed) {
- if (alarmed)
- logf(" -- read timed out");
- else
- logf(" -- read failed: %m");
- }
-
- exit_code = 3;
- alarmed = 0;
- return (0);
-}
-
-/*
- * Gross kludge to handle Solaris versions >= 2.6 having usleep.
- */
-#ifdef SOL2
-#include <sys/param.h>
-#if MAXUID > 65536 /* then this is Solaris 2.6 or later */
-#undef NO_USLEEP
-#endif
-#endif /* SOL2 */
-
-#ifdef NO_USLEEP
-#include <sys/types.h>
-#include <sys/time.h>
-
-/*
- usleep -- support routine for 4.2BSD system call emulations
- last edit: 29-Oct-1984 D A Gwyn
- */
-
-extern int select();
-
-int
-usleep( usec ) /* returns 0 if ok, else -1 */
- long usec; /* delay in microseconds */
-{
- static struct { /* `timeval' */
- long tv_sec; /* seconds */
- long tv_usec; /* microsecs */
- } delay; /* _select() timeout */
-
- delay.tv_sec = usec / 1000000L;
- delay.tv_usec = usec % 1000000L;
-
- return select(0, (long *)0, (long *)0, (long *)0, &delay);
-}
-#endif
-
-void
-pack_array (array, end)
- char **array; /* The address of the array of string pointers */
- int end; /* The index of the next free entry before CLR_ */
-{
- int i, j;
-
- for (i = 0; i < end; i++) {
- if (array[i] == NULL) {
- for (j = i+1; j < end; ++j)
- if (array[j] != NULL)
- array[i++] = array[j];
- for (; i < end; ++i)
- array[i] = NULL;
- break;
- }
- }
-}
-
-/*
- * vfmtmsg - format a message into a buffer. Like vsprintf except we
- * also specify the length of the output buffer, and we handle the
- * %m (error message) format.
- * Doesn't do floating-point formats.
- * Returns the number of chars put into buf.
- */
-#define OUTCHAR(c) (buflen > 0? (--buflen, *buf++ = (c)): 0)
-
-int
-vfmtmsg(buf, buflen, fmt, args)
- char *buf;
- int buflen;
- const char *fmt;
- va_list args;
-{
- int c, i, n;
- int width, prec, fillch;
- int base, len, neg, quoted;
- unsigned long val = 0;
- char *str, *buf0;
- const char *f;
- unsigned char *p;
- char num[32];
- static char hexchars[] = "0123456789abcdef";
-
- buf0 = buf;
- --buflen;
- while (buflen > 0) {
- for (f = fmt; *f != '%' && *f != 0; ++f)
- ;
- if (f > fmt) {
- len = f - fmt;
- if (len > buflen)
- len = buflen;
- memcpy(buf, fmt, len);
- buf += len;
- buflen -= len;
- fmt = f;
- }
- if (*fmt == 0)
- break;
- c = *++fmt;
- width = prec = 0;
- fillch = ' ';
- if (c == '0') {
- fillch = '0';
- c = *++fmt;
- }
- if (c == '*') {
- width = va_arg(args, int);
- c = *++fmt;
- } else {
- while (isdigit(c)) {
- width = width * 10 + c - '0';
- c = *++fmt;
- }
- }
- if (c == '.') {
- c = *++fmt;
- if (c == '*') {
- prec = va_arg(args, int);
- c = *++fmt;
- } else {
- while (isdigit(c)) {
- prec = prec * 10 + c - '0';
- c = *++fmt;
- }
- }
- }
- str = 0;
- base = 0;
- neg = 0;
- ++fmt;
- switch (c) {
- case 'd':
- i = va_arg(args, int);
- if (i < 0) {
- neg = 1;
- val = -i;
- } else
- val = i;
- base = 10;
- break;
- case 'o':
- val = va_arg(args, unsigned int);
- base = 8;
- break;
- case 'x':
- val = va_arg(args, unsigned int);
- base = 16;
- break;
- case 'p':
- val = (unsigned long) va_arg(args, void *);
- base = 16;
- neg = 2;
- break;
- case 's':
- str = va_arg(args, char *);
- break;
- case 'c':
- num[0] = va_arg(args, int);
- num[1] = 0;
- str = num;
- break;
- case 'm':
- str = strerror(errno);
- break;
- case 'v': /* "visible" string */
- case 'q': /* quoted string */
- quoted = c == 'q';
- p = va_arg(args, unsigned char *);
- if (fillch == '0' && prec > 0) {
- n = prec;
- } else {
- n = strlen((char *)p);
- if (prec > 0 && prec < n)
- n = prec;
- }
- while (n > 0 && buflen > 0) {
- c = *p++;
- --n;
- if (!quoted && c >= 0x80) {
- OUTCHAR('M');
- OUTCHAR('-');
- c -= 0x80;
- }
- if (quoted && (c == '"' || c == '\\'))
- OUTCHAR('\\');
- if (c < 0x20 || (0x7f <= c && c < 0xa0)) {
- if (quoted) {
- OUTCHAR('\\');
- switch (c) {
- case '\t': OUTCHAR('t'); break;
- case '\n': OUTCHAR('n'); break;
- case '\b': OUTCHAR('b'); break;
- case '\f': OUTCHAR('f'); break;
- default:
- OUTCHAR('x');
- OUTCHAR(hexchars[c >> 4]);
- OUTCHAR(hexchars[c & 0xf]);
- }
- } else {
- if (c == '\t')
- OUTCHAR(c);
- else {
- OUTCHAR('^');
- OUTCHAR(c ^ 0x40);
- }
- }
- } else
- OUTCHAR(c);
- }
- continue;
- default:
- *buf++ = '%';
- if (c != '%')
- --fmt; /* so %z outputs %z etc. */
- --buflen;
- continue;
- }
- if (base != 0) {
- str = num + sizeof(num);
- *--str = 0;
- while (str > num + neg) {
- *--str = hexchars[val % base];
- val = val / base;
- if (--prec <= 0 && val == 0)
- break;
- }
- switch (neg) {
- case 1:
- *--str = '-';
- break;
- case 2:
- *--str = 'x';
- *--str = '0';
- break;
- }
- len = num + sizeof(num) - 1 - str;
- } else {
- len = strlen(str);
- if (prec > 0 && len > prec)
- len = prec;
- }
- if (width > 0) {
- if (width > buflen)
- width = buflen;
- if ((n = width - len) > 0) {
- buflen -= n;
- for (; n > 0; --n)
- *buf++ = fillch;
- }
- }
- if (len > buflen)
- len = buflen;
- memcpy(buf, str, len);
- buf += len;
- buflen -= len;
- }
- *buf = 0;
- return buf - buf0;
-}
diff --git a/mdk-stage1/ppp/common/zlib.c b/mdk-stage1/ppp/common/zlib.c
deleted file mode 100644
index 503076886..000000000
--- a/mdk-stage1/ppp/common/zlib.c
+++ /dev/null
@@ -1,5376 +0,0 @@
-/*
- * This file is derived from various .h and .c files from the zlib-1.0.4
- * distribution by Jean-loup Gailly and Mark Adler, with some additions
- * by Paul Mackerras to aid in implementing Deflate compression and
- * decompression for PPP packets. See zlib.h for conditions of
- * distribution and use.
- *
- * Changes that have been made include:
- * - added Z_PACKET_FLUSH (see zlib.h for details)
- * - added inflateIncomp and deflateOutputPending
- * - allow strm->next_out to be NULL, meaning discard the output
- *
- * $Id$
- */
-
-/*
- * ==FILEVERSION 971210==
- *
- * This marker is used by the Linux installation script to determine
- * whether an up-to-date version of this file is already installed.
- */
-
-#define NO_DUMMY_DECL
-#define NO_ZCFUNCS
-#define MY_ZCALLOC
-
-#if defined(__FreeBSD__) && (defined(KERNEL) || defined(_KERNEL))
-#define inflate inflate_ppp /* FreeBSD already has an inflate :-( */
-#endif
-
-
-/* +++ zutil.h */
-/* zutil.h -- internal interface and configuration of the compression library
- * Copyright (C) 1995-1996 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-/* From: zutil.h,v 1.16 1996/07/24 13:41:13 me Exp $ */
-
-#ifndef _Z_UTIL_H
-#define _Z_UTIL_H
-
-#include "zlib.h"
-
-#if defined(KERNEL) || defined(_KERNEL)
-/* Assume this is a *BSD or SVR4 kernel */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/systm.h>
-#undef u
-# define HAVE_MEMCPY
-# define memcpy(d, s, n) bcopy((s), (d), (n))
-# define memset(d, v, n) bzero((d), (n))
-# define memcmp bcmp
-
-#else
-#if defined(__KERNEL__)
-/* Assume this is a Linux kernel */
-#include <linux/string.h>
-#define HAVE_MEMCPY
-
-#else /* not kernel */
-
-#if defined(MSDOS)||defined(VMS)||defined(CRAY)||defined(WIN32)||defined(RISCOS)
-# include <stddef.h>
-# include <errno.h>
-#else
- extern int errno;
-#endif
-#ifdef STDC
-# include <string.h>
-# include <stdlib.h>
-#endif
-#endif /* __KERNEL__ */
-#endif /* _KERNEL || KERNEL */
-
-#ifndef local
-# define local static
-#endif
-/* compile with -Dlocal if your debugger can't find static symbols */
-
-typedef unsigned char uch;
-typedef uch FAR uchf;
-typedef unsigned short ush;
-typedef ush FAR ushf;
-typedef unsigned long ulg;
-
-extern const char *z_errmsg[10]; /* indexed by 2-zlib_error */
-/* (size given to avoid silly warnings with Visual C++) */
-
-#define ERR_MSG(err) z_errmsg[Z_NEED_DICT-(err)]
-
-#define ERR_RETURN(strm,err) \
- return (strm->msg = (char*)ERR_MSG(err), (err))
-/* To be used only when the state is known to be valid */
-
- /* common constants */
-
-#ifndef DEF_WBITS
-# define DEF_WBITS MAX_WBITS
-#endif
-/* default windowBits for decompression. MAX_WBITS is for compression only */
-
-#if MAX_MEM_LEVEL >= 8
-# define DEF_MEM_LEVEL 8
-#else
-# define DEF_MEM_LEVEL MAX_MEM_LEVEL
-#endif
-/* default memLevel */
-
-#define STORED_BLOCK 0
-#define STATIC_TREES 1
-#define DYN_TREES 2
-/* The three kinds of block type */
-
-#define MIN_MATCH 3
-#define MAX_MATCH 258
-/* The minimum and maximum match lengths */
-
-#define PRESET_DICT 0x20 /* preset dictionary flag in zlib header */
-
- /* target dependencies */
-
-#ifdef MSDOS
-# define OS_CODE 0x00
-# ifdef __TURBOC__
-# include <alloc.h>
-# else /* MSC or DJGPP */
-# include <malloc.h>
-# endif
-#endif
-
-#ifdef OS2
-# define OS_CODE 0x06
-#endif
-
-#ifdef WIN32 /* Window 95 & Windows NT */
-# define OS_CODE 0x0b
-#endif
-
-#if defined(VAXC) || defined(VMS)
-# define OS_CODE 0x02
-# define FOPEN(name, mode) \
- fopen((name), (mode), "mbc=60", "ctx=stm", "rfm=fix", "mrs=512")
-#endif
-
-#ifdef AMIGA
-# define OS_CODE 0x01
-#endif
-
-#if defined(ATARI) || defined(atarist)
-# define OS_CODE 0x05
-#endif
-
-#ifdef MACOS
-# define OS_CODE 0x07
-#endif
-
-#ifdef __50SERIES /* Prime/PRIMOS */
-# define OS_CODE 0x0F
-#endif
-
-#ifdef TOPS20
-# define OS_CODE 0x0a
-#endif
-
-#if defined(_BEOS_) || defined(RISCOS)
-# define fdopen(fd,mode) NULL /* No fdopen() */
-#endif
-
- /* Common defaults */
-
-#ifndef OS_CODE
-# define OS_CODE 0x03 /* assume Unix */
-#endif
-
-#ifndef FOPEN
-# define FOPEN(name, mode) fopen((name), (mode))
-#endif
-
- /* functions */
-
-#ifdef HAVE_STRERROR
- extern char *strerror OF((int));
-# define zstrerror(errnum) strerror(errnum)
-#else
-# define zstrerror(errnum) ""
-#endif
-
-#if defined(pyr)
-# define NO_MEMCPY
-#endif
-#if (defined(M_I86SM) || defined(M_I86MM)) && !defined(_MSC_VER)
- /* Use our own functions for small and medium model with MSC <= 5.0.
- * You may have to use the same strategy for Borland C (untested).
- */
-# define NO_MEMCPY
-#endif
-#if defined(STDC) && !defined(HAVE_MEMCPY) && !defined(NO_MEMCPY)
-# define HAVE_MEMCPY
-#endif
-#ifdef HAVE_MEMCPY
-# ifdef SMALL_MEDIUM /* MSDOS small or medium model */
-# define zmemcpy _fmemcpy
-# define zmemcmp _fmemcmp
-# define zmemzero(dest, len) _fmemset(dest, 0, len)
-# else
-# define zmemcpy memcpy
-# define zmemcmp memcmp
-# define zmemzero(dest, len) memset(dest, 0, len)
-# endif
-#else
- extern void zmemcpy OF((Bytef* dest, Bytef* source, uInt len));
- extern int zmemcmp OF((Bytef* s1, Bytef* s2, uInt len));
- extern void zmemzero OF((Bytef* dest, uInt len));
-#endif
-
-/* Diagnostic functions */
-#ifdef DEBUG_ZLIB
-# include <stdio.h>
-# ifndef verbose
-# define verbose 0
-# endif
- extern void z_error OF((char *m));
-# define Assert(cond,msg) {if(!(cond)) z_error(msg);}
-# define Trace(x) fprintf x
-# define Tracev(x) {if (verbose) fprintf x ;}
-# define Tracevv(x) {if (verbose>1) fprintf x ;}
-# define Tracec(c,x) {if (verbose && (c)) fprintf x ;}
-# define Tracecv(c,x) {if (verbose>1 && (c)) fprintf x ;}
-#else
-# define Assert(cond,msg)
-# define Trace(x)
-# define Tracev(x)
-# define Tracevv(x)
-# define Tracec(c,x)
-# define Tracecv(c,x)
-#endif
-
-
-typedef uLong (*check_func) OF((uLong check, const Bytef *buf, uInt len));
-
-voidpf zcalloc OF((voidpf opaque, unsigned items, unsigned size));
-void zcfree OF((voidpf opaque, voidpf ptr));
-
-#define ZALLOC(strm, items, size) \
- (*((strm)->zalloc))((strm)->opaque, (items), (size))
-#define ZFREE(strm, addr) (*((strm)->zfree))((strm)->opaque, (voidpf)(addr))
-#define TRY_FREE(s, p) {if (p) ZFREE(s, p);}
-
-#endif /* _Z_UTIL_H */
-/* --- zutil.h */
-
-/* +++ deflate.h */
-/* deflate.h -- internal compression state
- * Copyright (C) 1995-1996 Jean-loup Gailly
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-/* From: deflate.h,v 1.10 1996/07/02 12:41:00 me Exp $ */
-
-#ifndef _DEFLATE_H
-#define _DEFLATE_H
-
-/* #include "zutil.h" */
-
-/* ===========================================================================
- * Internal compression state.
- */
-
-#define LENGTH_CODES 29
-/* number of length codes, not counting the special END_BLOCK code */
-
-#define LITERALS 256
-/* number of literal bytes 0..255 */
-
-#define L_CODES (LITERALS+1+LENGTH_CODES)
-/* number of Literal or Length codes, including the END_BLOCK code */
-
-#define D_CODES 30
-/* number of distance codes */
-
-#define BL_CODES 19
-/* number of codes used to transfer the bit lengths */
-
-#define HEAP_SIZE (2*L_CODES+1)
-/* maximum heap size */
-
-#define MAX_BITS 15
-/* All codes must not exceed MAX_BITS bits */
-
-#define INIT_STATE 42
-#define BUSY_STATE 113
-#define FINISH_STATE 666
-/* Stream status */
-
-
-/* Data structure describing a single value and its code string. */
-typedef struct ct_data_s {
- union {
- ush freq; /* frequency count */
- ush code; /* bit string */
- } fc;
- union {
- ush dad; /* father node in Huffman tree */
- ush len; /* length of bit string */
- } dl;
-} FAR ct_data;
-
-#define Freq fc.freq
-#define Code fc.code
-#define Dad dl.dad
-#define Len dl.len
-
-typedef struct static_tree_desc_s static_tree_desc;
-
-typedef struct tree_desc_s {
- ct_data *dyn_tree; /* the dynamic tree */
- int max_code; /* largest code with non zero frequency */
- static_tree_desc *stat_desc; /* the corresponding static tree */
-} FAR tree_desc;
-
-typedef ush Pos;
-typedef Pos FAR Posf;
-typedef unsigned IPos;
-
-/* A Pos is an index in the character window. We use short instead of int to
- * save space in the various tables. IPos is used only for parameter passing.
- */
-
-typedef struct deflate_state {
- z_streamp strm; /* pointer back to this zlib stream */
- int status; /* as the name implies */
- Bytef *pending_buf; /* output still pending */
- ulg pending_buf_size; /* size of pending_buf */
- Bytef *pending_out; /* next pending byte to output to the stream */
- int pending; /* nb of bytes in the pending buffer */
- int noheader; /* suppress zlib header and adler32 */
- Byte data_type; /* UNKNOWN, BINARY or ASCII */
- Byte method; /* STORED (for zip only) or DEFLATED */
- int last_flush; /* value of flush param for previous deflate call */
-
- /* used by deflate.c: */
-
- uInt w_size; /* LZ77 window size (32K by default) */
- uInt w_bits; /* log2(w_size) (8..16) */
- uInt w_mask; /* w_size - 1 */
-
- Bytef *window;
- /* Sliding window. Input bytes are read into the second half of the window,
- * and move to the first half later to keep a dictionary of at least wSize
- * bytes. With this organization, matches are limited to a distance of
- * wSize-MAX_MATCH bytes, but this ensures that IO is always
- * performed with a length multiple of the block size. Also, it limits
- * the window size to 64K, which is quite useful on MSDOS.
- * To do: use the user input buffer as sliding window.
- */
-
- ulg window_size;
- /* Actual size of window: 2*wSize, except when the user input buffer
- * is directly used as sliding window.
- */
-
- Posf *prev;
- /* Link to older string with same hash index. To limit the size of this
- * array to 64K, this link is maintained only for the last 32K strings.
- * An index in this array is thus a window index modulo 32K.
- */
-
- Posf *head; /* Heads of the hash chains or NIL. */
-
- uInt ins_h; /* hash index of string to be inserted */
- uInt hash_size; /* number of elements in hash table */
- uInt hash_bits; /* log2(hash_size) */
- uInt hash_mask; /* hash_size-1 */
-
- uInt hash_shift;
- /* Number of bits by which ins_h must be shifted at each input
- * step. It must be such that after MIN_MATCH steps, the oldest
- * byte no longer takes part in the hash key, that is:
- * hash_shift * MIN_MATCH >= hash_bits
- */
-
- long block_start;
- /* Window position at the beginning of the current output block. Gets
- * negative when the window is moved backwards.
- */
-
- uInt match_length; /* length of best match */
- IPos prev_match; /* previous match */
- int match_available; /* set if previous match exists */
- uInt strstart; /* start of string to insert */
- uInt match_start; /* start of matching string */
- uInt lookahead; /* number of valid bytes ahead in window */
-
- uInt prev_length;
- /* Length of the best match at previous step. Matches not greater than this
- * are discarded. This is used in the lazy match evaluation.
- */
-
- uInt max_chain_length;
- /* To speed up deflation, hash chains are never searched beyond this
- * length. A higher limit improves compression ratio but degrades the
- * speed.
- */
-
- uInt max_lazy_match;
- /* Attempt to find a better match only when the current match is strictly
- * smaller than this value. This mechanism is used only for compression
- * levels >= 4.
- */
-# define max_insert_length max_lazy_match
- /* Insert new strings in the hash table only if the match length is not
- * greater than this length. This saves time but degrades compression.
- * max_insert_length is used only for compression levels <= 3.
- */
-
- int level; /* compression level (1..9) */
- int strategy; /* favor or force Huffman coding*/
-
- uInt good_match;
- /* Use a faster search when the previous match is longer than this */
-
- int nice_match; /* Stop searching when current match exceeds this */
-
- /* used by trees.c: */
- /* Didn't use ct_data typedef below to supress compiler warning */
- struct ct_data_s dyn_ltree[HEAP_SIZE]; /* literal and length tree */
- struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */
- struct ct_data_s bl_tree[2*BL_CODES+1]; /* Huffman tree for bit lengths */
-
- struct tree_desc_s l_desc; /* desc. for literal tree */
- struct tree_desc_s d_desc; /* desc. for distance tree */
- struct tree_desc_s bl_desc; /* desc. for bit length tree */
-
- ush bl_count[MAX_BITS+1];
- /* number of codes at each bit length for an optimal tree */
-
- int heap[2*L_CODES+1]; /* heap used to build the Huffman trees */
- int heap_len; /* number of elements in the heap */
- int heap_max; /* element of largest frequency */
- /* The sons of heap[n] are heap[2*n] and heap[2*n+1]. heap[0] is not used.
- * The same heap array is used to build all trees.
- */
-
- uch depth[2*L_CODES+1];
- /* Depth of each subtree used as tie breaker for trees of equal frequency
- */
-
- uchf *l_buf; /* buffer for literals or lengths */
-
- uInt lit_bufsize;
- /* Size of match buffer for literals/lengths. There are 4 reasons for
- * limiting lit_bufsize to 64K:
- * - frequencies can be kept in 16 bit counters
- * - if compression is not successful for the first block, all input
- * data is still in the window so we can still emit a stored block even
- * when input comes from standard input. (This can also be done for
- * all blocks if lit_bufsize is not greater than 32K.)
- * - if compression is not successful for a file smaller than 64K, we can
- * even emit a stored file instead of a stored block (saving 5 bytes).
- * This is applicable only for zip (not gzip or zlib).
- * - creating new Huffman trees less frequently may not provide fast
- * adaptation to changes in the input data statistics. (Take for
- * example a binary file with poorly compressible code followed by
- * a highly compressible string table.) Smaller buffer sizes give
- * fast adaptation but have of course the overhead of transmitting
- * trees more frequently.
- * - I can't count above 4
- */
-
- uInt last_lit; /* running index in l_buf */
-
- ushf *d_buf;
- /* Buffer for distances. To simplify the code, d_buf and l_buf have
- * the same number of elements. To use different lengths, an extra flag
- * array would be necessary.
- */
-
- ulg opt_len; /* bit length of current block with optimal trees */
- ulg static_len; /* bit length of current block with static trees */
- ulg compressed_len; /* total bit length of compressed file */
- uInt matches; /* number of string matches in current block */
- int last_eob_len; /* bit length of EOB code for last block */
-
-#ifdef DEBUG_ZLIB
- ulg bits_sent; /* bit length of the compressed data */
-#endif
-
- ush bi_buf;
- /* Output buffer. bits are inserted starting at the bottom (least
- * significant bits).
- */
- int bi_valid;
- /* Number of valid bits in bi_buf. All bits above the last valid bit
- * are always zero.
- */
-
-} FAR deflate_state;
-
-/* Output a byte on the stream.
- * IN assertion: there is enough room in pending_buf.
- */
-#define put_byte(s, c) {s->pending_buf[s->pending++] = (c);}
-
-
-#define MIN_LOOKAHEAD (MAX_MATCH+MIN_MATCH+1)
-/* Minimum amount of lookahead, except at the end of the input file.
- * See deflate.c for comments about the MIN_MATCH+1.
- */
-
-#define MAX_DIST(s) ((s)->w_size-MIN_LOOKAHEAD)
-/* In order to simplify the code, particularly on 16 bit machines, match
- * distances are limited to MAX_DIST instead of WSIZE.
- */
-
- /* in trees.c */
-void _tr_init OF((deflate_state *s));
-int _tr_tally OF((deflate_state *s, unsigned dist, unsigned lc));
-ulg _tr_flush_block OF((deflate_state *s, charf *buf, ulg stored_len,
- int eof));
-void _tr_align OF((deflate_state *s));
-void _tr_stored_block OF((deflate_state *s, charf *buf, ulg stored_len,
- int eof));
-void _tr_stored_type_only OF((deflate_state *));
-
-#endif
-/* --- deflate.h */
-
-/* +++ deflate.c */
-/* deflate.c -- compress data using the deflation algorithm
- * Copyright (C) 1995-1996 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/*
- * ALGORITHM
- *
- * The "deflation" process depends on being able to identify portions
- * of the input text which are identical to earlier input (within a
- * sliding window trailing behind the input currently being processed).
- *
- * The most straightforward technique turns out to be the fastest for
- * most input files: try all possible matches and select the longest.
- * The key feature of this algorithm is that insertions into the string
- * dictionary are very simple and thus fast, and deletions are avoided
- * completely. Insertions are performed at each input character, whereas
- * string matches are performed only when the previous match ends. So it
- * is preferable to spend more time in matches to allow very fast string
- * insertions and avoid deletions. The matching algorithm for small
- * strings is inspired from that of Rabin & Karp. A brute force approach
- * is used to find longer strings when a small match has been found.
- * A similar algorithm is used in comic (by Jan-Mark Wams) and freeze
- * (by Leonid Broukhis).
- * A previous version of this file used a more sophisticated algorithm
- * (by Fiala and Greene) which is guaranteed to run in linear amortized
- * time, but has a larger average cost, uses more memory and is patented.
- * However the F&G algorithm may be faster for some highly redundant
- * files if the parameter max_chain_length (described below) is too large.
- *
- * ACKNOWLEDGEMENTS
- *
- * The idea of lazy evaluation of matches is due to Jan-Mark Wams, and
- * I found it in 'freeze' written by Leonid Broukhis.
- * Thanks to many people for bug reports and testing.
- *
- * REFERENCES
- *
- * Deutsch, L.P.,"DEFLATE Compressed Data Format Specification".
- * Available in ftp://ds.internic.net/rfc/rfc1951.txt
- *
- * A description of the Rabin and Karp algorithm is given in the book
- * "Algorithms" by R. Sedgewick, Addison-Wesley, p252.
- *
- * Fiala,E.R., and Greene,D.H.
- * Data Compression with Finite Windows, Comm.ACM, 32,4 (1989) 490-595
- *
- */
-
-/* From: deflate.c,v 1.15 1996/07/24 13:40:58 me Exp $ */
-
-/* #include "deflate.h" */
-
-char deflate_copyright[] = " deflate 1.0.4 Copyright 1995-1996 Jean-loup Gailly ";
-/*
- If you use the zlib library in a product, an acknowledgment is welcome
- in the documentation of your product. If for some reason you cannot
- include such an acknowledgment, I would appreciate that you keep this
- copyright string in the executable of your product.
- */
-
-/* ===========================================================================
- * Function prototypes.
- */
-typedef enum {
- need_more, /* block not completed, need more input or more output */
- block_done, /* block flush performed */
- finish_started, /* finish started, need only more output at next deflate */
- finish_done /* finish done, accept no more input or output */
-} block_state;
-
-typedef block_state (*compress_func) OF((deflate_state *s, int flush));
-/* Compression function. Returns the block state after the call. */
-
-local void fill_window OF((deflate_state *s));
-local block_state deflate_stored OF((deflate_state *s, int flush));
-local block_state deflate_fast OF((deflate_state *s, int flush));
-local block_state deflate_slow OF((deflate_state *s, int flush));
-local void lm_init OF((deflate_state *s));
-local void putShortMSB OF((deflate_state *s, uInt b));
-local void flush_pending OF((z_streamp strm));
-local int read_buf OF((z_streamp strm, charf *buf, unsigned size));
-#ifdef ASMV
- void match_init OF((void)); /* asm code initialization */
- uInt longest_match OF((deflate_state *s, IPos cur_match));
-#else
-local uInt longest_match OF((deflate_state *s, IPos cur_match));
-#endif
-
-#ifdef DEBUG_ZLIB
-local void check_match OF((deflate_state *s, IPos start, IPos match,
- int length));
-#endif
-
-/* ===========================================================================
- * Local data
- */
-
-#define NIL 0
-/* Tail of hash chains */
-
-#ifndef TOO_FAR
-# define TOO_FAR 4096
-#endif
-/* Matches of length 3 are discarded if their distance exceeds TOO_FAR */
-
-#define MIN_LOOKAHEAD (MAX_MATCH+MIN_MATCH+1)
-/* Minimum amount of lookahead, except at the end of the input file.
- * See deflate.c for comments about the MIN_MATCH+1.
- */
-
-/* Values for max_lazy_match, good_match and max_chain_length, depending on
- * the desired pack level (0..9). The values given below have been tuned to
- * exclude worst case performance for pathological files. Better values may be
- * found for specific files.
- */
-typedef struct config_s {
- ush good_length; /* reduce lazy search above this match length */
- ush max_lazy; /* do not perform lazy search above this match length */
- ush nice_length; /* quit search above this match length */
- ush max_chain;
- compress_func func;
-} config;
-
-local config configuration_table[10] = {
-/* good lazy nice chain */
-/* 0 */ {0, 0, 0, 0, deflate_stored}, /* store only */
-/* 1 */ {4, 4, 8, 4, deflate_fast}, /* maximum speed, no lazy matches */
-/* 2 */ {4, 5, 16, 8, deflate_fast},
-/* 3 */ {4, 6, 32, 32, deflate_fast},
-
-/* 4 */ {4, 4, 16, 16, deflate_slow}, /* lazy matches */
-/* 5 */ {8, 16, 32, 32, deflate_slow},
-/* 6 */ {8, 16, 128, 128, deflate_slow},
-/* 7 */ {8, 32, 128, 256, deflate_slow},
-/* 8 */ {32, 128, 258, 1024, deflate_slow},
-/* 9 */ {32, 258, 258, 4096, deflate_slow}}; /* maximum compression */
-
-/* Note: the deflate() code requires max_lazy >= MIN_MATCH and max_chain >= 4
- * For deflate_fast() (levels <= 3) good is ignored and lazy has a different
- * meaning.
- */
-
-#define EQUAL 0
-/* result of memcmp for equal strings */
-
-#ifndef NO_DUMMY_DECL
-struct static_tree_desc_s {int dummy;}; /* for buggy compilers */
-#endif
-
-/* ===========================================================================
- * Update a hash value with the given input byte
- * IN assertion: all calls to to UPDATE_HASH are made with consecutive
- * input characters, so that a running hash key can be computed from the
- * previous key instead of complete recalculation each time.
- */
-#define UPDATE_HASH(s,h,c) (h = (((h)<<s->hash_shift) ^ (c)) & s->hash_mask)
-
-
-/* ===========================================================================
- * Insert string str in the dictionary and set match_head to the previous head
- * of the hash chain (the most recent string with same hash key). Return
- * the previous length of the hash chain.
- * IN assertion: all calls to to INSERT_STRING are made with consecutive
- * input characters and the first MIN_MATCH bytes of str are valid
- * (except for the last MIN_MATCH-1 bytes of the input file).
- */
-#define INSERT_STRING(s, str, match_head) \
- (UPDATE_HASH(s, s->ins_h, s->window[(str) + (MIN_MATCH-1)]), \
- s->prev[(str) & s->w_mask] = match_head = s->head[s->ins_h], \
- s->head[s->ins_h] = (Pos)(str))
-
-/* ===========================================================================
- * Initialize the hash table (avoiding 64K overflow for 16 bit systems).
- * prev[] will be initialized on the fly.
- */
-#define CLEAR_HASH(s) \
- s->head[s->hash_size-1] = NIL; \
- zmemzero((charf *)s->head, (unsigned)(s->hash_size-1)*sizeof(*s->head));
-
-/* ========================================================================= */
-int deflateInit_(strm, level, version, stream_size)
- z_streamp strm;
- int level;
- const char *version;
- int stream_size;
-{
- return deflateInit2_(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL,
- Z_DEFAULT_STRATEGY, version, stream_size);
- /* To do: ignore strm->next_in if we use it as window */
-}
-
-/* ========================================================================= */
-int deflateInit2_(strm, level, method, windowBits, memLevel, strategy,
- version, stream_size)
- z_streamp strm;
- int level;
- int method;
- int windowBits;
- int memLevel;
- int strategy;
- const char *version;
- int stream_size;
-{
- deflate_state *s;
- int noheader = 0;
- static char* my_version = ZLIB_VERSION;
-
- ushf *overlay;
- /* We overlay pending_buf and d_buf+l_buf. This works since the average
- * output size for (length,distance) codes is <= 24 bits.
- */
-
- if (version == Z_NULL || version[0] != my_version[0] ||
- stream_size != sizeof(z_stream)) {
- return Z_VERSION_ERROR;
- }
- if (strm == Z_NULL) return Z_STREAM_ERROR;
-
- strm->msg = Z_NULL;
-#ifndef NO_ZCFUNCS
- if (strm->zalloc == Z_NULL) {
- strm->zalloc = zcalloc;
- strm->opaque = (voidpf)0;
- }
- if (strm->zfree == Z_NULL) strm->zfree = zcfree;
-#endif
-
- if (level == Z_DEFAULT_COMPRESSION) level = 6;
-
- if (windowBits < 0) { /* undocumented feature: suppress zlib header */
- noheader = 1;
- windowBits = -windowBits;
- }
- if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method != Z_DEFLATED ||
- windowBits < 8 || windowBits > 15 || level < 0 || level > 9 ||
- strategy < 0 || strategy > Z_HUFFMAN_ONLY) {
- return Z_STREAM_ERROR;
- }
- s = (deflate_state *) ZALLOC(strm, 1, sizeof(deflate_state));
- if (s == Z_NULL) return Z_MEM_ERROR;
- strm->state = (struct internal_state FAR *)s;
- s->strm = strm;
-
- s->noheader = noheader;
- s->w_bits = windowBits;
- s->w_size = 1 << s->w_bits;
- s->w_mask = s->w_size - 1;
-
- s->hash_bits = memLevel + 7;
- s->hash_size = 1 << s->hash_bits;
- s->hash_mask = s->hash_size - 1;
- s->hash_shift = ((s->hash_bits+MIN_MATCH-1)/MIN_MATCH);
-
- s->window = (Bytef *) ZALLOC(strm, s->w_size, 2*sizeof(Byte));
- s->prev = (Posf *) ZALLOC(strm, s->w_size, sizeof(Pos));
- s->head = (Posf *) ZALLOC(strm, s->hash_size, sizeof(Pos));
-
- s->lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */
-
- overlay = (ushf *) ZALLOC(strm, s->lit_bufsize, sizeof(ush)+2);
- s->pending_buf = (uchf *) overlay;
- s->pending_buf_size = (ulg)s->lit_bufsize * (sizeof(ush)+2L);
-
- if (s->window == Z_NULL || s->prev == Z_NULL || s->head == Z_NULL ||
- s->pending_buf == Z_NULL) {
- strm->msg = (char*)ERR_MSG(Z_MEM_ERROR);
- deflateEnd (strm);
- return Z_MEM_ERROR;
- }
- s->d_buf = overlay + s->lit_bufsize/sizeof(ush);
- s->l_buf = s->pending_buf + (1+sizeof(ush))*s->lit_bufsize;
-
- s->level = level;
- s->strategy = strategy;
- s->method = (Byte)method;
-
- return deflateReset(strm);
-}
-
-/* ========================================================================= */
-int deflateSetDictionary (strm, dictionary, dictLength)
- z_streamp strm;
- const Bytef *dictionary;
- uInt dictLength;
-{
- deflate_state *s;
- uInt length = dictLength;
- uInt n;
- IPos hash_head = 0;
-
- if (strm == Z_NULL || strm->state == Z_NULL || dictionary == Z_NULL)
- return Z_STREAM_ERROR;
-
- s = (deflate_state *) strm->state;
- if (s->status != INIT_STATE) return Z_STREAM_ERROR;
-
- strm->adler = adler32(strm->adler, dictionary, dictLength);
-
- if (length < MIN_MATCH) return Z_OK;
- if (length > MAX_DIST(s)) {
- length = MAX_DIST(s);
-#ifndef USE_DICT_HEAD
- dictionary += dictLength - length; /* use the tail of the dictionary */
-#endif
- }
- zmemcpy((charf *)s->window, dictionary, length);
- s->strstart = length;
- s->block_start = (long)length;
-
- /* Insert all strings in the hash table (except for the last two bytes).
- * s->lookahead stays null, so s->ins_h will be recomputed at the next
- * call of fill_window.
- */
- s->ins_h = s->window[0];
- UPDATE_HASH(s, s->ins_h, s->window[1]);
- for (n = 0; n <= length - MIN_MATCH; n++) {
- INSERT_STRING(s, n, hash_head);
- }
- if (hash_head) hash_head = 0; /* to make compiler happy */
- return Z_OK;
-}
-
-/* ========================================================================= */
-int deflateReset (strm)
- z_streamp strm;
-{
- deflate_state *s;
-
- if (strm == Z_NULL || strm->state == Z_NULL ||
- strm->zalloc == Z_NULL || strm->zfree == Z_NULL) return Z_STREAM_ERROR;
-
- strm->total_in = strm->total_out = 0;
- strm->msg = Z_NULL; /* use zfree if we ever allocate msg dynamically */
- strm->data_type = Z_UNKNOWN;
-
- s = (deflate_state *)strm->state;
- s->pending = 0;
- s->pending_out = s->pending_buf;
-
- if (s->noheader < 0) {
- s->noheader = 0; /* was set to -1 by deflate(..., Z_FINISH); */
- }
- s->status = s->noheader ? BUSY_STATE : INIT_STATE;
- strm->adler = 1;
- s->last_flush = Z_NO_FLUSH;
-
- _tr_init(s);
- lm_init(s);
-
- return Z_OK;
-}
-
-/* ========================================================================= */
-int deflateParams(strm, level, strategy)
- z_streamp strm;
- int level;
- int strategy;
-{
- deflate_state *s;
- compress_func func;
- int err = Z_OK;
-
- if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
- s = (deflate_state *) strm->state;
-
- if (level == Z_DEFAULT_COMPRESSION) {
- level = 6;
- }
- if (level < 0 || level > 9 || strategy < 0 || strategy > Z_HUFFMAN_ONLY) {
- return Z_STREAM_ERROR;
- }
- func = configuration_table[s->level].func;
-
- if (func != configuration_table[level].func && strm->total_in != 0) {
- /* Flush the last buffer: */
- err = deflate(strm, Z_PARTIAL_FLUSH);
- }
- if (s->level != level) {
- s->level = level;
- s->max_lazy_match = configuration_table[level].max_lazy;
- s->good_match = configuration_table[level].good_length;
- s->nice_match = configuration_table[level].nice_length;
- s->max_chain_length = configuration_table[level].max_chain;
- }
- s->strategy = strategy;
- return err;
-}
-
-/* =========================================================================
- * Put a short in the pending buffer. The 16-bit value is put in MSB order.
- * IN assertion: the stream state is correct and there is enough room in
- * pending_buf.
- */
-local void putShortMSB (s, b)
- deflate_state *s;
- uInt b;
-{
- put_byte(s, (Byte)(b >> 8));
- put_byte(s, (Byte)(b & 0xff));
-}
-
-/* =========================================================================
- * Flush as much pending output as possible. All deflate() output goes
- * through this function so some applications may wish to modify it
- * to avoid allocating a large strm->next_out buffer and copying into it.
- * (See also read_buf()).
- */
-local void flush_pending(strm)
- z_streamp strm;
-{
- deflate_state *s = (deflate_state *) strm->state;
- unsigned len = s->pending;
-
- if (len > strm->avail_out) len = strm->avail_out;
- if (len == 0) return;
-
- if (strm->next_out != Z_NULL) {
- zmemcpy(strm->next_out, s->pending_out, len);
- strm->next_out += len;
- }
- s->pending_out += len;
- strm->total_out += len;
- strm->avail_out -= len;
- s->pending -= len;
- if (s->pending == 0) {
- s->pending_out = s->pending_buf;
- }
-}
-
-/* ========================================================================= */
-int deflate (strm, flush)
- z_streamp strm;
- int flush;
-{
- int old_flush; /* value of flush param for previous deflate call */
- deflate_state *s;
-
- if (strm == Z_NULL || strm->state == Z_NULL ||
- flush > Z_FINISH || flush < 0) {
- return Z_STREAM_ERROR;
- }
- s = (deflate_state *) strm->state;
-
- if ((strm->next_in == Z_NULL && strm->avail_in != 0) ||
- (s->status == FINISH_STATE && flush != Z_FINISH)) {
- ERR_RETURN(strm, Z_STREAM_ERROR);
- }
- if (strm->avail_out == 0) ERR_RETURN(strm, Z_BUF_ERROR);
-
- s->strm = strm; /* just in case */
- old_flush = s->last_flush;
- s->last_flush = flush;
-
- /* Write the zlib header */
- if (s->status == INIT_STATE) {
-
- uInt header = (Z_DEFLATED + ((s->w_bits-8)<<4)) << 8;
- uInt level_flags = (s->level-1) >> 1;
-
- if (level_flags > 3) level_flags = 3;
- header |= (level_flags << 6);
- if (s->strstart != 0) header |= PRESET_DICT;
- header += 31 - (header % 31);
-
- s->status = BUSY_STATE;
- putShortMSB(s, header);
-
- /* Save the adler32 of the preset dictionary: */
- if (s->strstart != 0) {
- putShortMSB(s, (uInt)(strm->adler >> 16));
- putShortMSB(s, (uInt)(strm->adler & 0xffff));
- }
- strm->adler = 1L;
- }
-
- /* Flush as much pending output as possible */
- if (s->pending != 0) {
- flush_pending(strm);
- if (strm->avail_out == 0) {
- /* Since avail_out is 0, deflate will be called again with
- * more output space, but possibly with both pending and
- * avail_in equal to zero. There won't be anything to do,
- * but this is not an error situation so make sure we
- * return OK instead of BUF_ERROR at next call of deflate:
- */
- s->last_flush = -1;
- return Z_OK;
- }
-
- /* Make sure there is something to do and avoid duplicate consecutive
- * flushes. For repeated and useless calls with Z_FINISH, we keep
- * returning Z_STREAM_END instead of Z_BUFF_ERROR.
- */
- } else if (strm->avail_in == 0 && flush <= old_flush &&
- flush != Z_FINISH) {
- ERR_RETURN(strm, Z_BUF_ERROR);
- }
-
- /* User must not provide more input after the first FINISH: */
- if (s->status == FINISH_STATE && strm->avail_in != 0) {
- ERR_RETURN(strm, Z_BUF_ERROR);
- }
-
- /* Start a new block or continue the current one.
- */
- if (strm->avail_in != 0 || s->lookahead != 0 ||
- (flush != Z_NO_FLUSH && s->status != FINISH_STATE)) {
- block_state bstate;
-
- bstate = (*(configuration_table[s->level].func))(s, flush);
-
- if (bstate == finish_started || bstate == finish_done) {
- s->status = FINISH_STATE;
- }
- if (bstate == need_more || bstate == finish_started) {
- if (strm->avail_out == 0) {
- s->last_flush = -1; /* avoid BUF_ERROR next call, see above */
- }
- return Z_OK;
- /* If flush != Z_NO_FLUSH && avail_out == 0, the next call
- * of deflate should use the same flush parameter to make sure
- * that the flush is complete. So we don't have to output an
- * empty block here, this will be done at next call. This also
- * ensures that for a very small output buffer, we emit at most
- * one empty block.
- */
- }
- if (bstate == block_done) {
- if (flush == Z_PARTIAL_FLUSH) {
- _tr_align(s);
- } else if (flush == Z_PACKET_FLUSH) {
- /* Output just the 3-bit `stored' block type value,
- but not a zero length. */
- _tr_stored_type_only(s);
- } else { /* FULL_FLUSH or SYNC_FLUSH */
- _tr_stored_block(s, (char*)0, 0L, 0);
- /* For a full flush, this empty block will be recognized
- * as a special marker by inflate_sync().
- */
- if (flush == Z_FULL_FLUSH) {
- CLEAR_HASH(s); /* forget history */
- }
- }
- flush_pending(strm);
- if (strm->avail_out == 0) {
- s->last_flush = -1; /* avoid BUF_ERROR at next call, see above */
- return Z_OK;
- }
- }
- }
- Assert(strm->avail_out > 0, "bug2");
-
- if (flush != Z_FINISH) return Z_OK;
- if (s->noheader) return Z_STREAM_END;
-
- /* Write the zlib trailer (adler32) */
- putShortMSB(s, (uInt)(strm->adler >> 16));
- putShortMSB(s, (uInt)(strm->adler & 0xffff));
- flush_pending(strm);
- /* If avail_out is zero, the application will call deflate again
- * to flush the rest.
- */
- s->noheader = -1; /* write the trailer only once! */
- return s->pending != 0 ? Z_OK : Z_STREAM_END;
-}
-
-/* ========================================================================= */
-int deflateEnd (strm)
- z_streamp strm;
-{
- int status;
- deflate_state *s;
-
- if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
- s = (deflate_state *) strm->state;
-
- status = s->status;
- if (status != INIT_STATE && status != BUSY_STATE &&
- status != FINISH_STATE) {
- return Z_STREAM_ERROR;
- }
-
- /* Deallocate in reverse order of allocations: */
- TRY_FREE(strm, s->pending_buf);
- TRY_FREE(strm, s->head);
- TRY_FREE(strm, s->prev);
- TRY_FREE(strm, s->window);
-
- ZFREE(strm, s);
- strm->state = Z_NULL;
-
- return status == BUSY_STATE ? Z_DATA_ERROR : Z_OK;
-}
-
-/* =========================================================================
- * Copy the source state to the destination state.
- */
-int deflateCopy (dest, source)
- z_streamp dest;
- z_streamp source;
-{
- deflate_state *ds;
- deflate_state *ss;
- ushf *overlay;
-
- if (source == Z_NULL || dest == Z_NULL || source->state == Z_NULL)
- return Z_STREAM_ERROR;
- ss = (deflate_state *) source->state;
-
- zmemcpy(dest, source, sizeof(*dest));
-
- ds = (deflate_state *) ZALLOC(dest, 1, sizeof(deflate_state));
- if (ds == Z_NULL) return Z_MEM_ERROR;
- dest->state = (struct internal_state FAR *) ds;
- zmemcpy(ds, ss, sizeof(*ds));
- ds->strm = dest;
-
- ds->window = (Bytef *) ZALLOC(dest, ds->w_size, 2*sizeof(Byte));
- ds->prev = (Posf *) ZALLOC(dest, ds->w_size, sizeof(Pos));
- ds->head = (Posf *) ZALLOC(dest, ds->hash_size, sizeof(Pos));
- overlay = (ushf *) ZALLOC(dest, ds->lit_bufsize, sizeof(ush)+2);
- ds->pending_buf = (uchf *) overlay;
-
- if (ds->window == Z_NULL || ds->prev == Z_NULL || ds->head == Z_NULL ||
- ds->pending_buf == Z_NULL) {
- deflateEnd (dest);
- return Z_MEM_ERROR;
- }
- /* ??? following zmemcpy doesn't work for 16-bit MSDOS */
- zmemcpy(ds->window, ss->window, ds->w_size * 2 * sizeof(Byte));
- zmemcpy(ds->prev, ss->prev, ds->w_size * sizeof(Pos));
- zmemcpy(ds->head, ss->head, ds->hash_size * sizeof(Pos));
- zmemcpy(ds->pending_buf, ss->pending_buf, (uInt)ds->pending_buf_size);
-
- ds->pending_out = ds->pending_buf + (ss->pending_out - ss->pending_buf);
- ds->d_buf = overlay + ds->lit_bufsize/sizeof(ush);
- ds->l_buf = ds->pending_buf + (1+sizeof(ush))*ds->lit_bufsize;
-
- ds->l_desc.dyn_tree = ds->dyn_ltree;
- ds->d_desc.dyn_tree = ds->dyn_dtree;
- ds->bl_desc.dyn_tree = ds->bl_tree;
-
- return Z_OK;
-}
-
-/* ===========================================================================
- * Return the number of bytes of output which are immediately available
- * for output from the decompressor.
- */
-int deflateOutputPending (strm)
- z_streamp strm;
-{
- if (strm == Z_NULL || strm->state == Z_NULL) return 0;
-
- return ((deflate_state *)(strm->state))->pending;
-}
-
-/* ===========================================================================
- * Read a new buffer from the current input stream, update the adler32
- * and total number of bytes read. All deflate() input goes through
- * this function so some applications may wish to modify it to avoid
- * allocating a large strm->next_in buffer and copying from it.
- * (See also flush_pending()).
- */
-local int read_buf(strm, buf, size)
- z_streamp strm;
- charf *buf;
- unsigned size;
-{
- unsigned len = strm->avail_in;
-
- if (len > size) len = size;
- if (len == 0) return 0;
-
- strm->avail_in -= len;
-
- if (!((deflate_state *)(strm->state))->noheader) {
- strm->adler = adler32(strm->adler, strm->next_in, len);
- }
- zmemcpy(buf, strm->next_in, len);
- strm->next_in += len;
- strm->total_in += len;
-
- return (int)len;
-}
-
-/* ===========================================================================
- * Initialize the "longest match" routines for a new zlib stream
- */
-local void lm_init (s)
- deflate_state *s;
-{
- s->window_size = (ulg)2L*s->w_size;
-
- CLEAR_HASH(s);
-
- /* Set the default configuration parameters:
- */
- s->max_lazy_match = configuration_table[s->level].max_lazy;
- s->good_match = configuration_table[s->level].good_length;
- s->nice_match = configuration_table[s->level].nice_length;
- s->max_chain_length = configuration_table[s->level].max_chain;
-
- s->strstart = 0;
- s->block_start = 0L;
- s->lookahead = 0;
- s->match_length = s->prev_length = MIN_MATCH-1;
- s->match_available = 0;
- s->ins_h = 0;
-#ifdef ASMV
- match_init(); /* initialize the asm code */
-#endif
-}
-
-/* ===========================================================================
- * Set match_start to the longest match starting at the given string and
- * return its length. Matches shorter or equal to prev_length are discarded,
- * in which case the result is equal to prev_length and match_start is
- * garbage.
- * IN assertions: cur_match is the head of the hash chain for the current
- * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1
- * OUT assertion: the match length is not greater than s->lookahead.
- */
-#ifndef ASMV
-/* For 80x86 and 680x0, an optimized version will be provided in match.asm or
- * match.S. The code will be functionally equivalent.
- */
-local uInt longest_match(s, cur_match)
- deflate_state *s;
- IPos cur_match; /* current match */
-{
- unsigned chain_length = s->max_chain_length;/* max hash chain length */
- register Bytef *scan = s->window + s->strstart; /* current string */
- register Bytef *match; /* matched string */
- register int len; /* length of current match */
- int best_len = s->prev_length; /* best match length so far */
- int nice_match = s->nice_match; /* stop if match long enough */
- IPos limit = s->strstart > (IPos)MAX_DIST(s) ?
- s->strstart - (IPos)MAX_DIST(s) : NIL;
- /* Stop when cur_match becomes <= limit. To simplify the code,
- * we prevent matches with the string of window index 0.
- */
- Posf *prev = s->prev;
- uInt wmask = s->w_mask;
-
-#ifdef UNALIGNED_OK
- /* Compare two bytes at a time. Note: this is not always beneficial.
- * Try with and without -DUNALIGNED_OK to check.
- */
- register Bytef *strend = s->window + s->strstart + MAX_MATCH - 1;
- register ush scan_start = *(ushf*)scan;
- register ush scan_end = *(ushf*)(scan+best_len-1);
-#else
- register Bytef *strend = s->window + s->strstart + MAX_MATCH;
- register Byte scan_end1 = scan[best_len-1];
- register Byte scan_end = scan[best_len];
-#endif
-
- /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16.
- * It is easy to get rid of this optimization if necessary.
- */
- Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever");
-
- /* Do not waste too much time if we already have a good match: */
- if (s->prev_length >= s->good_match) {
- chain_length >>= 2;
- }
- /* Do not look for matches beyond the end of the input. This is necessary
- * to make deflate deterministic.
- */
- if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead;
-
- Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead");
-
- do {
- Assert(cur_match < s->strstart, "no future");
- match = s->window + cur_match;
-
- /* Skip to next match if the match length cannot increase
- * or if the match length is less than 2:
- */
-#if (defined(UNALIGNED_OK) && MAX_MATCH == 258)
- /* This code assumes sizeof(unsigned short) == 2. Do not use
- * UNALIGNED_OK if your compiler uses a different size.
- */
- if (*(ushf*)(match+best_len-1) != scan_end ||
- *(ushf*)match != scan_start) continue;
-
- /* It is not necessary to compare scan[2] and match[2] since they are
- * always equal when the other bytes match, given that the hash keys
- * are equal and that HASH_BITS >= 8. Compare 2 bytes at a time at
- * strstart+3, +5, ... up to strstart+257. We check for insufficient
- * lookahead only every 4th comparison; the 128th check will be made
- * at strstart+257. If MAX_MATCH-2 is not a multiple of 8, it is
- * necessary to put more guard bytes at the end of the window, or
- * to check more often for insufficient lookahead.
- */
- Assert(scan[2] == match[2], "scan[2]?");
- scan++, match++;
- do {
- } while (*(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
- *(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
- *(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
- *(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
- scan < strend);
- /* The funny "do {}" generates better code on most compilers */
-
- /* Here, scan <= window+strstart+257 */
- Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");
- if (*scan == *match) scan++;
-
- len = (MAX_MATCH - 1) - (int)(strend-scan);
- scan = strend - (MAX_MATCH-1);
-
-#else /* UNALIGNED_OK */
-
- if (match[best_len] != scan_end ||
- match[best_len-1] != scan_end1 ||
- *match != *scan ||
- *++match != scan[1]) continue;
-
- /* The check at best_len-1 can be removed because it will be made
- * again later. (This heuristic is not always a win.)
- * It is not necessary to compare scan[2] and match[2] since they
- * are always equal when the other bytes match, given that
- * the hash keys are equal and that HASH_BITS >= 8.
- */
- scan += 2, match++;
- Assert(*scan == *match, "match[2]?");
-
- /* We check for insufficient lookahead only every 8th comparison;
- * the 256th check will be made at strstart+258.
- */
- do {
- } while (*++scan == *++match && *++scan == *++match &&
- *++scan == *++match && *++scan == *++match &&
- *++scan == *++match && *++scan == *++match &&
- *++scan == *++match && *++scan == *++match &&
- scan < strend);
-
- Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");
-
- len = MAX_MATCH - (int)(strend - scan);
- scan = strend - MAX_MATCH;
-
-#endif /* UNALIGNED_OK */
-
- if (len > best_len) {
- s->match_start = cur_match;
- best_len = len;
- if (len >= nice_match) break;
-#ifdef UNALIGNED_OK
- scan_end = *(ushf*)(scan+best_len-1);
-#else
- scan_end1 = scan[best_len-1];
- scan_end = scan[best_len];
-#endif
- }
- } while ((cur_match = prev[cur_match & wmask]) > limit
- && --chain_length != 0);
-
- if ((uInt)best_len <= s->lookahead) return best_len;
- return s->lookahead;
-}
-#endif /* ASMV */
-
-#ifdef DEBUG_ZLIB
-/* ===========================================================================
- * Check that the match at match_start is indeed a match.
- */
-local void check_match(s, start, match, length)
- deflate_state *s;
- IPos start, match;
- int length;
-{
- /* check that the match is indeed a match */
- if (zmemcmp((charf *)s->window + match,
- (charf *)s->window + start, length) != EQUAL) {
- fprintf(stderr, " start %u, match %u, length %d\n",
- start, match, length);
- do {
- fprintf(stderr, "%c%c", s->window[match++], s->window[start++]);
- } while (--length != 0);
- z_error("invalid match");
- }
- if (z_verbose > 1) {
- fprintf(stderr,"\\[%d,%d]", start-match, length);
- do { putc(s->window[start++], stderr); } while (--length != 0);
- }
-}
-#else
-# define check_match(s, start, match, length)
-#endif
-
-/* ===========================================================================
- * Fill the window when the lookahead becomes insufficient.
- * Updates strstart and lookahead.
- *
- * IN assertion: lookahead < MIN_LOOKAHEAD
- * OUT assertions: strstart <= window_size-MIN_LOOKAHEAD
- * At least one byte has been read, or avail_in == 0; reads are
- * performed for at least two bytes (required for the zip translate_eol
- * option -- not supported here).
- */
-local void fill_window(s)
- deflate_state *s;
-{
- register unsigned n, m;
- register Posf *p;
- unsigned more; /* Amount of free space at the end of the window. */
- uInt wsize = s->w_size;
-
- do {
- more = (unsigned)(s->window_size -(ulg)s->lookahead -(ulg)s->strstart);
-
- /* Deal with !@#$% 64K limit: */
- if (more == 0 && s->strstart == 0 && s->lookahead == 0) {
- more = wsize;
-
- } else if (more == (unsigned)(-1)) {
- /* Very unlikely, but possible on 16 bit machine if strstart == 0
- * and lookahead == 1 (input done one byte at time)
- */
- more--;
-
- /* If the window is almost full and there is insufficient lookahead,
- * move the upper half to the lower one to make room in the upper half.
- */
- } else if (s->strstart >= wsize+MAX_DIST(s)) {
-
- zmemcpy((charf *)s->window, (charf *)s->window+wsize,
- (unsigned)wsize);
- s->match_start -= wsize;
- s->strstart -= wsize; /* we now have strstart >= MAX_DIST */
- s->block_start -= (long) wsize;
-
- /* Slide the hash table (could be avoided with 32 bit values
- at the expense of memory usage). We slide even when level == 0
- to keep the hash table consistent if we switch back to level > 0
- later. (Using level 0 permanently is not an optimal usage of
- zlib, so we don't care about this pathological case.)
- */
- n = s->hash_size;
- p = &s->head[n];
- do {
- m = *--p;
- *p = (Pos)(m >= wsize ? m-wsize : NIL);
- } while (--n);
-
- n = wsize;
- p = &s->prev[n];
- do {
- m = *--p;
- *p = (Pos)(m >= wsize ? m-wsize : NIL);
- /* If n is not on any hash chain, prev[n] is garbage but
- * its value will never be used.
- */
- } while (--n);
- more += wsize;
- }
- if (s->strm->avail_in == 0) return;
-
- /* If there was no sliding:
- * strstart <= WSIZE+MAX_DIST-1 && lookahead <= MIN_LOOKAHEAD - 1 &&
- * more == window_size - lookahead - strstart
- * => more >= window_size - (MIN_LOOKAHEAD-1 + WSIZE + MAX_DIST-1)
- * => more >= window_size - 2*WSIZE + 2
- * In the BIG_MEM or MMAP case (not yet supported),
- * window_size == input_size + MIN_LOOKAHEAD &&
- * strstart + s->lookahead <= input_size => more >= MIN_LOOKAHEAD.
- * Otherwise, window_size == 2*WSIZE so more >= 2.
- * If there was sliding, more >= WSIZE. So in all cases, more >= 2.
- */
- Assert(more >= 2, "more < 2");
-
- n = read_buf(s->strm, (charf *)s->window + s->strstart + s->lookahead,
- more);
- s->lookahead += n;
-
- /* Initialize the hash value now that we have some input: */
- if (s->lookahead >= MIN_MATCH) {
- s->ins_h = s->window[s->strstart];
- UPDATE_HASH(s, s->ins_h, s->window[s->strstart+1]);
-#if MIN_MATCH != 3
- Call UPDATE_HASH() MIN_MATCH-3 more times
-#endif
- }
- /* If the whole input has less than MIN_MATCH bytes, ins_h is garbage,
- * but this is not important since only literal bytes will be emitted.
- */
-
- } while (s->lookahead < MIN_LOOKAHEAD && s->strm->avail_in != 0);
-}
-
-/* ===========================================================================
- * Flush the current block, with given end-of-file flag.
- * IN assertion: strstart is set to the end of the current match.
- */
-#define FLUSH_BLOCK_ONLY(s, eof) { \
- _tr_flush_block(s, (s->block_start >= 0L ? \
- (charf *)&s->window[(unsigned)s->block_start] : \
- (charf *)Z_NULL), \
- (ulg)((long)s->strstart - s->block_start), \
- (eof)); \
- s->block_start = s->strstart; \
- flush_pending(s->strm); \
- Tracev((stderr,"[FLUSH]")); \
-}
-
-/* Same but force premature exit if necessary. */
-#define FLUSH_BLOCK(s, eof) { \
- FLUSH_BLOCK_ONLY(s, eof); \
- if (s->strm->avail_out == 0) return (eof) ? finish_started : need_more; \
-}
-
-/* ===========================================================================
- * Copy without compression as much as possible from the input stream, return
- * the current block state.
- * This function does not insert new strings in the dictionary since
- * uncompressible data is probably not useful. This function is used
- * only for the level=0 compression option.
- * NOTE: this function should be optimized to avoid extra copying from
- * window to pending_buf.
- */
-local block_state deflate_stored(s, flush)
- deflate_state *s;
- int flush;
-{
- /* Stored blocks are limited to 0xffff bytes, pending_buf is limited
- * to pending_buf_size, and each stored block has a 5 byte header:
- */
- ulg max_block_size = 0xffff;
- ulg max_start;
-
- if (max_block_size > s->pending_buf_size - 5) {
- max_block_size = s->pending_buf_size - 5;
- }
-
- /* Copy as much as possible from input to output: */
- for (;;) {
- /* Fill the window as much as possible: */
- if (s->lookahead <= 1) {
-
- Assert(s->strstart < s->w_size+MAX_DIST(s) ||
- s->block_start >= (long)s->w_size, "slide too late");
-
- fill_window(s);
- if (s->lookahead == 0 && flush == Z_NO_FLUSH) return need_more;
-
- if (s->lookahead == 0) break; /* flush the current block */
- }
- Assert(s->block_start >= 0L, "block gone");
-
- s->strstart += s->lookahead;
- s->lookahead = 0;
-
- /* Emit a stored block if pending_buf will be full: */
- max_start = s->block_start + max_block_size;
- if (s->strstart == 0 || (ulg)s->strstart >= max_start) {
- /* strstart == 0 is possible when wraparound on 16-bit machine */
- s->lookahead = (uInt)(s->strstart - max_start);
- s->strstart = (uInt)max_start;
- FLUSH_BLOCK(s, 0);
- }
- /* Flush if we may have to slide, otherwise block_start may become
- * negative and the data will be gone:
- */
- if (s->strstart - (uInt)s->block_start >= MAX_DIST(s)) {
- FLUSH_BLOCK(s, 0);
- }
- }
- FLUSH_BLOCK(s, flush == Z_FINISH);
- return flush == Z_FINISH ? finish_done : block_done;
-}
-
-/* ===========================================================================
- * Compress as much as possible from the input stream, return the current
- * block state.
- * This function does not perform lazy evaluation of matches and inserts
- * new strings in the dictionary only for unmatched strings or for short
- * matches. It is used only for the fast compression options.
- */
-local block_state deflate_fast(s, flush)
- deflate_state *s;
- int flush;
-{
- IPos hash_head = NIL; /* head of the hash chain */
- int bflush; /* set if current block must be flushed */
-
- for (;;) {
- /* Make sure that we always have enough lookahead, except
- * at the end of the input file. We need MAX_MATCH bytes
- * for the next match, plus MIN_MATCH bytes to insert the
- * string following the next match.
- */
- if (s->lookahead < MIN_LOOKAHEAD) {
- fill_window(s);
- if (s->lookahead < MIN_LOOKAHEAD && flush == Z_NO_FLUSH) {
- return need_more;
- }
- if (s->lookahead == 0) break; /* flush the current block */
- }
-
- /* Insert the string window[strstart .. strstart+2] in the
- * dictionary, and set hash_head to the head of the hash chain:
- */
- if (s->lookahead >= MIN_MATCH) {
- INSERT_STRING(s, s->strstart, hash_head);
- }
-
- /* Find the longest match, discarding those <= prev_length.
- * At this point we have always match_length < MIN_MATCH
- */
- if (hash_head != NIL && s->strstart - hash_head <= MAX_DIST(s)) {
- /* To simplify the code, we prevent matches with the string
- * of window index 0 (in particular we have to avoid a match
- * of the string with itself at the start of the input file).
- */
- if (s->strategy != Z_HUFFMAN_ONLY) {
- s->match_length = longest_match (s, hash_head);
- }
- /* longest_match() sets match_start */
- }
- if (s->match_length >= MIN_MATCH) {
- check_match(s, s->strstart, s->match_start, s->match_length);
-
- bflush = _tr_tally(s, s->strstart - s->match_start,
- s->match_length - MIN_MATCH);
-
- s->lookahead -= s->match_length;
-
- /* Insert new strings in the hash table only if the match length
- * is not too large. This saves time but degrades compression.
- */
- if (s->match_length <= s->max_insert_length &&
- s->lookahead >= MIN_MATCH) {
- s->match_length--; /* string at strstart already in hash table */
- do {
- s->strstart++;
- INSERT_STRING(s, s->strstart, hash_head);
- /* strstart never exceeds WSIZE-MAX_MATCH, so there are
- * always MIN_MATCH bytes ahead.
- */
- } while (--s->match_length != 0);
- s->strstart++;
- } else {
- s->strstart += s->match_length;
- s->match_length = 0;
- s->ins_h = s->window[s->strstart];
- UPDATE_HASH(s, s->ins_h, s->window[s->strstart+1]);
-#if MIN_MATCH != 3
- Call UPDATE_HASH() MIN_MATCH-3 more times
-#endif
- /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not
- * matter since it will be recomputed at next deflate call.
- */
- }
- } else {
- /* No match, output a literal byte */
- Tracevv((stderr,"%c", s->window[s->strstart]));
- bflush = _tr_tally (s, 0, s->window[s->strstart]);
- s->lookahead--;
- s->strstart++;
- }
- if (bflush) FLUSH_BLOCK(s, 0);
- }
- FLUSH_BLOCK(s, flush == Z_FINISH);
- return flush == Z_FINISH ? finish_done : block_done;
-}
-
-/* ===========================================================================
- * Same as above, but achieves better compression. We use a lazy
- * evaluation for matches: a match is finally adopted only if there is
- * no better match at the next window position.
- */
-local block_state deflate_slow(s, flush)
- deflate_state *s;
- int flush;
-{
- IPos hash_head = NIL; /* head of hash chain */
- int bflush; /* set if current block must be flushed */
-
- /* Process the input block. */
- for (;;) {
- /* Make sure that we always have enough lookahead, except
- * at the end of the input file. We need MAX_MATCH bytes
- * for the next match, plus MIN_MATCH bytes to insert the
- * string following the next match.
- */
- if (s->lookahead < MIN_LOOKAHEAD) {
- fill_window(s);
- if (s->lookahead < MIN_LOOKAHEAD && flush == Z_NO_FLUSH) {
- return need_more;
- }
- if (s->lookahead == 0) break; /* flush the current block */
- }
-
- /* Insert the string window[strstart .. strstart+2] in the
- * dictionary, and set hash_head to the head of the hash chain:
- */
- if (s->lookahead >= MIN_MATCH) {
- INSERT_STRING(s, s->strstart, hash_head);
- }
-
- /* Find the longest match, discarding those <= prev_length.
- */
- s->prev_length = s->match_length, s->prev_match = s->match_start;
- s->match_length = MIN_MATCH-1;
-
- if (hash_head != NIL && s->prev_length < s->max_lazy_match &&
- s->strstart - hash_head <= MAX_DIST(s)) {
- /* To simplify the code, we prevent matches with the string
- * of window index 0 (in particular we have to avoid a match
- * of the string with itself at the start of the input file).
- */
- if (s->strategy != Z_HUFFMAN_ONLY) {
- s->match_length = longest_match (s, hash_head);
- }
- /* longest_match() sets match_start */
-
- if (s->match_length <= 5 && (s->strategy == Z_FILTERED ||
- (s->match_length == MIN_MATCH &&
- s->strstart - s->match_start > TOO_FAR))) {
-
- /* If prev_match is also MIN_MATCH, match_start is garbage
- * but we will ignore the current match anyway.
- */
- s->match_length = MIN_MATCH-1;
- }
- }
- /* If there was a match at the previous step and the current
- * match is not better, output the previous match:
- */
- if (s->prev_length >= MIN_MATCH && s->match_length <= s->prev_length) {
- uInt max_insert = s->strstart + s->lookahead - MIN_MATCH;
- /* Do not insert strings in hash table beyond this. */
-
- check_match(s, s->strstart-1, s->prev_match, s->prev_length);
-
- bflush = _tr_tally(s, s->strstart -1 - s->prev_match,
- s->prev_length - MIN_MATCH);
-
- /* Insert in hash table all strings up to the end of the match.
- * strstart-1 and strstart are already inserted. If there is not
- * enough lookahead, the last two strings are not inserted in
- * the hash table.
- */
- s->lookahead -= s->prev_length-1;
- s->prev_length -= 2;
- do {
- if (++s->strstart <= max_insert) {
- INSERT_STRING(s, s->strstart, hash_head);
- }
- } while (--s->prev_length != 0);
- s->match_available = 0;
- s->match_length = MIN_MATCH-1;
- s->strstart++;
-
- if (bflush) FLUSH_BLOCK(s, 0);
-
- } else if (s->match_available) {
- /* If there was no match at the previous position, output a
- * single literal. If there was a match but the current match
- * is longer, truncate the previous match to a single literal.
- */
- Tracevv((stderr,"%c", s->window[s->strstart-1]));
- if (_tr_tally (s, 0, s->window[s->strstart-1])) {
- FLUSH_BLOCK_ONLY(s, 0);
- }
- s->strstart++;
- s->lookahead--;
- if (s->strm->avail_out == 0) return need_more;
- } else {
- /* There is no previous match to compare with, wait for
- * the next step to decide.
- */
- s->match_available = 1;
- s->strstart++;
- s->lookahead--;
- }
- }
- Assert (flush != Z_NO_FLUSH, "no flush?");
- if (s->match_available) {
- Tracevv((stderr,"%c", s->window[s->strstart-1]));
- _tr_tally (s, 0, s->window[s->strstart-1]);
- s->match_available = 0;
- }
- FLUSH_BLOCK(s, flush == Z_FINISH);
- return flush == Z_FINISH ? finish_done : block_done;
-}
-/* --- deflate.c */
-
-/* +++ trees.c */
-/* trees.c -- output deflated data using Huffman coding
- * Copyright (C) 1995-1996 Jean-loup Gailly
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/*
- * ALGORITHM
- *
- * The "deflation" process uses several Huffman trees. The more
- * common source values are represented by shorter bit sequences.
- *
- * Each code tree is stored in a compressed form which is itself
- * a Huffman encoding of the lengths of all the code strings (in
- * ascending order by source values). The actual code strings are
- * reconstructed from the lengths in the inflate process, as described
- * in the deflate specification.
- *
- * REFERENCES
- *
- * Deutsch, L.P.,"'Deflate' Compressed Data Format Specification".
- * Available in ftp.uu.net:/pub/archiving/zip/doc/deflate-1.1.doc
- *
- * Storer, James A.
- * Data Compression: Methods and Theory, pp. 49-50.
- * Computer Science Press, 1988. ISBN 0-7167-8156-5.
- *
- * Sedgewick, R.
- * Algorithms, p290.
- * Addison-Wesley, 1983. ISBN 0-201-06672-6.
- */
-
-/* From: trees.c,v 1.11 1996/07/24 13:41:06 me Exp $ */
-
-/* #include "deflate.h" */
-
-#ifdef DEBUG_ZLIB
-# include <ctype.h>
-#endif
-
-/* ===========================================================================
- * Constants
- */
-
-#define MAX_BL_BITS 7
-/* Bit length codes must not exceed MAX_BL_BITS bits */
-
-#define END_BLOCK 256
-/* end of block literal code */
-
-#define REP_3_6 16
-/* repeat previous bit length 3-6 times (2 bits of repeat count) */
-
-#define REPZ_3_10 17
-/* repeat a zero length 3-10 times (3 bits of repeat count) */
-
-#define REPZ_11_138 18
-/* repeat a zero length 11-138 times (7 bits of repeat count) */
-
-local int extra_lbits[LENGTH_CODES] /* extra bits for each length code */
- = {0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0};
-
-local int extra_dbits[D_CODES] /* extra bits for each distance code */
- = {0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13};
-
-local int extra_blbits[BL_CODES]/* extra bits for each bit length code */
- = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7};
-
-local uch bl_order[BL_CODES]
- = {16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15};
-/* The lengths of the bit length codes are sent in order of decreasing
- * probability, to avoid transmitting the lengths for unused bit length codes.
- */
-
-#define Buf_size (8 * 2*sizeof(char))
-/* Number of bits used within bi_buf. (bi_buf might be implemented on
- * more than 16 bits on some systems.)
- */
-
-/* ===========================================================================
- * Local data. These are initialized only once.
- */
-
-local ct_data static_ltree[L_CODES+2];
-/* The static literal tree. Since the bit lengths are imposed, there is no
- * need for the L_CODES extra codes used during heap construction. However
- * The codes 286 and 287 are needed to build a canonical tree (see _tr_init
- * below).
- */
-
-local ct_data static_dtree[D_CODES];
-/* The static distance tree. (Actually a trivial tree since all codes use
- * 5 bits.)
- */
-
-local uch dist_code[512];
-/* distance codes. The first 256 values correspond to the distances
- * 3 .. 258, the last 256 values correspond to the top 8 bits of
- * the 15 bit distances.
- */
-
-local uch length_code[MAX_MATCH-MIN_MATCH+1];
-/* length code for each normalized match length (0 == MIN_MATCH) */
-
-local int base_length[LENGTH_CODES];
-/* First normalized length for each code (0 = MIN_MATCH) */
-
-local int base_dist[D_CODES];
-/* First normalized distance for each code (0 = distance of 1) */
-
-struct static_tree_desc_s {
- ct_data *static_tree; /* static tree or NULL */
- intf *extra_bits; /* extra bits for each code or NULL */
- int extra_base; /* base index for extra_bits */
- int elems; /* max number of elements in the tree */
- int max_length; /* max bit length for the codes */
-};
-
-local static_tree_desc static_l_desc =
-{static_ltree, extra_lbits, LITERALS+1, L_CODES, MAX_BITS};
-
-local static_tree_desc static_d_desc =
-{static_dtree, extra_dbits, 0, D_CODES, MAX_BITS};
-
-local static_tree_desc static_bl_desc =
-{(ct_data *)0, extra_blbits, 0, BL_CODES, MAX_BL_BITS};
-
-/* ===========================================================================
- * Local (static) routines in this file.
- */
-
-local void tr_static_init OF((void));
-local void init_block OF((deflate_state *s));
-local void pqdownheap OF((deflate_state *s, ct_data *tree, int k));
-local void gen_bitlen OF((deflate_state *s, tree_desc *desc));
-local void gen_codes OF((ct_data *tree, int max_code, ushf *bl_count));
-local void build_tree OF((deflate_state *s, tree_desc *desc));
-local void scan_tree OF((deflate_state *s, ct_data *tree, int max_code));
-local void send_tree OF((deflate_state *s, ct_data *tree, int max_code));
-local int build_bl_tree OF((deflate_state *s));
-local void send_all_trees OF((deflate_state *s, int lcodes, int dcodes,
- int blcodes));
-local void compress_block OF((deflate_state *s, ct_data *ltree,
- ct_data *dtree));
-local void set_data_type OF((deflate_state *s));
-local unsigned bi_reverse OF((unsigned value, int length));
-local void bi_windup OF((deflate_state *s));
-local void bi_flush OF((deflate_state *s));
-local void copy_block OF((deflate_state *s, charf *buf, unsigned len,
- int header));
-
-#ifndef DEBUG_ZLIB
-# define send_code(s, c, tree) send_bits(s, tree[c].Code, tree[c].Len)
- /* Send a code of the given tree. c and tree must not have side effects */
-
-#else /* DEBUG_ZLIB */
-# define send_code(s, c, tree) \
- { if (verbose>2) fprintf(stderr,"\ncd %3d ",(c)); \
- send_bits(s, tree[c].Code, tree[c].Len); }
-#endif
-
-#define d_code(dist) \
- ((dist) < 256 ? dist_code[dist] : dist_code[256+((dist)>>7)])
-/* Mapping from a distance to a distance code. dist is the distance - 1 and
- * must not have side effects. dist_code[256] and dist_code[257] are never
- * used.
- */
-
-/* ===========================================================================
- * Output a short LSB first on the stream.
- * IN assertion: there is enough room in pendingBuf.
- */
-#define put_short(s, w) { \
- put_byte(s, (uch)((w) & 0xff)); \
- put_byte(s, (uch)((ush)(w) >> 8)); \
-}
-
-/* ===========================================================================
- * Send a value on a given number of bits.
- * IN assertion: length <= 16 and value fits in length bits.
- */
-#ifdef DEBUG_ZLIB
-local void send_bits OF((deflate_state *s, int value, int length));
-
-local void send_bits(s, value, length)
- deflate_state *s;
- int value; /* value to send */
- int length; /* number of bits */
-{
- Tracevv((stderr," l %2d v %4x ", length, value));
- Assert(length > 0 && length <= 15, "invalid length");
- s->bits_sent += (ulg)length;
-
- /* If not enough room in bi_buf, use (valid) bits from bi_buf and
- * (16 - bi_valid) bits from value, leaving (width - (16-bi_valid))
- * unused bits in value.
- */
- if (s->bi_valid > (int)Buf_size - length) {
- s->bi_buf |= (value << s->bi_valid);
- put_short(s, s->bi_buf);
- s->bi_buf = (ush)value >> (Buf_size - s->bi_valid);
- s->bi_valid += length - Buf_size;
- } else {
- s->bi_buf |= value << s->bi_valid;
- s->bi_valid += length;
- }
-}
-#else /* !DEBUG_ZLIB */
-
-#define send_bits(s, value, length) \
-{ int len = length;\
- if (s->bi_valid > (int)Buf_size - len) {\
- int val = value;\
- s->bi_buf |= (val << s->bi_valid);\
- put_short(s, s->bi_buf);\
- s->bi_buf = (ush)val >> (Buf_size - s->bi_valid);\
- s->bi_valid += len - Buf_size;\
- } else {\
- s->bi_buf |= (value) << s->bi_valid;\
- s->bi_valid += len;\
- }\
-}
-#endif /* DEBUG_ZLIB */
-
-
-#define MAX(a,b) (a >= b ? a : b)
-/* the arguments must not have side effects */
-
-/* ===========================================================================
- * Initialize the various 'constant' tables. In a multi-threaded environment,
- * this function may be called by two threads concurrently, but this is
- * harmless since both invocations do exactly the same thing.
- */
-local void tr_static_init()
-{
- static int static_init_done = 0;
- int n; /* iterates over tree elements */
- int bits; /* bit counter */
- int length; /* length value */
- int code; /* code value */
- int dist; /* distance index */
- ush bl_count[MAX_BITS+1];
- /* number of codes at each bit length for an optimal tree */
-
- if (static_init_done) return;
-
- /* Initialize the mapping length (0..255) -> length code (0..28) */
- length = 0;
- for (code = 0; code < LENGTH_CODES-1; code++) {
- base_length[code] = length;
- for (n = 0; n < (1<<extra_lbits[code]); n++) {
- length_code[length++] = (uch)code;
- }
- }
- Assert (length == 256, "tr_static_init: length != 256");
- /* Note that the length 255 (match length 258) can be represented
- * in two different ways: code 284 + 5 bits or code 285, so we
- * overwrite length_code[255] to use the best encoding:
- */
- length_code[length-1] = (uch)code;
-
- /* Initialize the mapping dist (0..32K) -> dist code (0..29) */
- dist = 0;
- for (code = 0 ; code < 16; code++) {
- base_dist[code] = dist;
- for (n = 0; n < (1<<extra_dbits[code]); n++) {
- dist_code[dist++] = (uch)code;
- }
- }
- Assert (dist == 256, "tr_static_init: dist != 256");
- dist >>= 7; /* from now on, all distances are divided by 128 */
- for ( ; code < D_CODES; code++) {
- base_dist[code] = dist << 7;
- for (n = 0; n < (1<<(extra_dbits[code]-7)); n++) {
- dist_code[256 + dist++] = (uch)code;
- }
- }
- Assert (dist == 256, "tr_static_init: 256+dist != 512");
-
- /* Construct the codes of the static literal tree */
- for (bits = 0; bits <= MAX_BITS; bits++) bl_count[bits] = 0;
- n = 0;
- while (n <= 143) static_ltree[n++].Len = 8, bl_count[8]++;
- while (n <= 255) static_ltree[n++].Len = 9, bl_count[9]++;
- while (n <= 279) static_ltree[n++].Len = 7, bl_count[7]++;
- while (n <= 287) static_ltree[n++].Len = 8, bl_count[8]++;
- /* Codes 286 and 287 do not exist, but we must include them in the
- * tree construction to get a canonical Huffman tree (longest code
- * all ones)
- */
- gen_codes((ct_data *)static_ltree, L_CODES+1, bl_count);
-
- /* The static distance tree is trivial: */
- for (n = 0; n < D_CODES; n++) {
- static_dtree[n].Len = 5;
- static_dtree[n].Code = bi_reverse((unsigned)n, 5);
- }
- static_init_done = 1;
-}
-
-/* ===========================================================================
- * Initialize the tree data structures for a new zlib stream.
- */
-void _tr_init(s)
- deflate_state *s;
-{
- tr_static_init();
-
- s->compressed_len = 0L;
-
- s->l_desc.dyn_tree = s->dyn_ltree;
- s->l_desc.stat_desc = &static_l_desc;
-
- s->d_desc.dyn_tree = s->dyn_dtree;
- s->d_desc.stat_desc = &static_d_desc;
-
- s->bl_desc.dyn_tree = s->bl_tree;
- s->bl_desc.stat_desc = &static_bl_desc;
-
- s->bi_buf = 0;
- s->bi_valid = 0;
- s->last_eob_len = 8; /* enough lookahead for inflate */
-#ifdef DEBUG_ZLIB
- s->bits_sent = 0L;
-#endif
-
- /* Initialize the first block of the first file: */
- init_block(s);
-}
-
-/* ===========================================================================
- * Initialize a new block.
- */
-local void init_block(s)
- deflate_state *s;
-{
- int n; /* iterates over tree elements */
-
- /* Initialize the trees. */
- for (n = 0; n < L_CODES; n++) s->dyn_ltree[n].Freq = 0;
- for (n = 0; n < D_CODES; n++) s->dyn_dtree[n].Freq = 0;
- for (n = 0; n < BL_CODES; n++) s->bl_tree[n].Freq = 0;
-
- s->dyn_ltree[END_BLOCK].Freq = 1;
- s->opt_len = s->static_len = 0L;
- s->last_lit = s->matches = 0;
-}
-
-#define SMALLEST 1
-/* Index within the heap array of least frequent node in the Huffman tree */
-
-
-/* ===========================================================================
- * Remove the smallest element from the heap and recreate the heap with
- * one less element. Updates heap and heap_len.
- */
-#define pqremove(s, tree, top) \
-{\
- top = s->heap[SMALLEST]; \
- s->heap[SMALLEST] = s->heap[s->heap_len--]; \
- pqdownheap(s, tree, SMALLEST); \
-}
-
-/* ===========================================================================
- * Compares to subtrees, using the tree depth as tie breaker when
- * the subtrees have equal frequency. This minimizes the worst case length.
- */
-#define smaller(tree, n, m, depth) \
- (tree[n].Freq < tree[m].Freq || \
- (tree[n].Freq == tree[m].Freq && depth[n] <= depth[m]))
-
-/* ===========================================================================
- * Restore the heap property by moving down the tree starting at node k,
- * exchanging a node with the smallest of its two sons if necessary, stopping
- * when the heap property is re-established (each father smaller than its
- * two sons).
- */
-local void pqdownheap(s, tree, k)
- deflate_state *s;
- ct_data *tree; /* the tree to restore */
- int k; /* node to move down */
-{
- int v = s->heap[k];
- int j = k << 1; /* left son of k */
- while (j <= s->heap_len) {
- /* Set j to the smallest of the two sons: */
- if (j < s->heap_len &&
- smaller(tree, s->heap[j+1], s->heap[j], s->depth)) {
- j++;
- }
- /* Exit if v is smaller than both sons */
- if (smaller(tree, v, s->heap[j], s->depth)) break;
-
- /* Exchange v with the smallest son */
- s->heap[k] = s->heap[j]; k = j;
-
- /* And continue down the tree, setting j to the left son of k */
- j <<= 1;
- }
- s->heap[k] = v;
-}
-
-/* ===========================================================================
- * Compute the optimal bit lengths for a tree and update the total bit length
- * for the current block.
- * IN assertion: the fields freq and dad are set, heap[heap_max] and
- * above are the tree nodes sorted by increasing frequency.
- * OUT assertions: the field len is set to the optimal bit length, the
- * array bl_count contains the frequencies for each bit length.
- * The length opt_len is updated; static_len is also updated if stree is
- * not null.
- */
-local void gen_bitlen(s, desc)
- deflate_state *s;
- tree_desc *desc; /* the tree descriptor */
-{
- ct_data *tree = desc->dyn_tree;
- int max_code = desc->max_code;
- ct_data *stree = desc->stat_desc->static_tree;
- intf *extra = desc->stat_desc->extra_bits;
- int base = desc->stat_desc->extra_base;
- int max_length = desc->stat_desc->max_length;
- int h; /* heap index */
- int n, m; /* iterate over the tree elements */
- int bits; /* bit length */
- int xbits; /* extra bits */
- ush f; /* frequency */
- int overflow = 0; /* number of elements with bit length too large */
-
- for (bits = 0; bits <= MAX_BITS; bits++) s->bl_count[bits] = 0;
-
- /* In a first pass, compute the optimal bit lengths (which may
- * overflow in the case of the bit length tree).
- */
- tree[s->heap[s->heap_max]].Len = 0; /* root of the heap */
-
- for (h = s->heap_max+1; h < HEAP_SIZE; h++) {
- n = s->heap[h];
- bits = tree[tree[n].Dad].Len + 1;
- if (bits > max_length) bits = max_length, overflow++;
- tree[n].Len = (ush)bits;
- /* We overwrite tree[n].Dad which is no longer needed */
-
- if (n > max_code) continue; /* not a leaf node */
-
- s->bl_count[bits]++;
- xbits = 0;
- if (n >= base) xbits = extra[n-base];
- f = tree[n].Freq;
- s->opt_len += (ulg)f * (bits + xbits);
- if (stree) s->static_len += (ulg)f * (stree[n].Len + xbits);
- }
- if (overflow == 0) return;
-
- Trace((stderr,"\nbit length overflow\n"));
- /* This happens for example on obj2 and pic of the Calgary corpus */
-
- /* Find the first bit length which could increase: */
- do {
- bits = max_length-1;
- while (s->bl_count[bits] == 0) bits--;
- s->bl_count[bits]--; /* move one leaf down the tree */
- s->bl_count[bits+1] += 2; /* move one overflow item as its brother */
- s->bl_count[max_length]--;
- /* The brother of the overflow item also moves one step up,
- * but this does not affect bl_count[max_length]
- */
- overflow -= 2;
- } while (overflow > 0);
-
- /* Now recompute all bit lengths, scanning in increasing frequency.
- * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all
- * lengths instead of fixing only the wrong ones. This idea is taken
- * from 'ar' written by Haruhiko Okumura.)
- */
- for (bits = max_length; bits != 0; bits--) {
- n = s->bl_count[bits];
- while (n != 0) {
- m = s->heap[--h];
- if (m > max_code) continue;
- if (tree[m].Len != (unsigned) bits) {
- Trace((stderr,"code %d bits %d->%d\n", m, tree[m].Len, bits));
- s->opt_len += ((long)bits - (long)tree[m].Len)
- *(long)tree[m].Freq;
- tree[m].Len = (ush)bits;
- }
- n--;
- }
- }
-}
-
-/* ===========================================================================
- * Generate the codes for a given tree and bit counts (which need not be
- * optimal).
- * IN assertion: the array bl_count contains the bit length statistics for
- * the given tree and the field len is set for all tree elements.
- * OUT assertion: the field code is set for all tree elements of non
- * zero code length.
- */
-local void gen_codes (tree, max_code, bl_count)
- ct_data *tree; /* the tree to decorate */
- int max_code; /* largest code with non zero frequency */
- ushf *bl_count; /* number of codes at each bit length */
-{
- ush next_code[MAX_BITS+1]; /* next code value for each bit length */
- ush code = 0; /* running code value */
- int bits; /* bit index */
- int n; /* code index */
-
- /* The distribution counts are first used to generate the code values
- * without bit reversal.
- */
- for (bits = 1; bits <= MAX_BITS; bits++) {
- next_code[bits] = code = (code + bl_count[bits-1]) << 1;
- }
- /* Check that the bit counts in bl_count are consistent. The last code
- * must be all ones.
- */
- Assert (code + bl_count[MAX_BITS]-1 == (1<<MAX_BITS)-1,
- "inconsistent bit counts");
- Tracev((stderr,"\ngen_codes: max_code %d ", max_code));
-
- for (n = 0; n <= max_code; n++) {
- int len = tree[n].Len;
- if (len == 0) continue;
- /* Now reverse the bits */
- tree[n].Code = bi_reverse(next_code[len]++, len);
-
- Tracecv(tree != static_ltree, (stderr,"\nn %3d %c l %2d c %4x (%x) ",
- n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len]-1));
- }
-}
-
-/* ===========================================================================
- * Construct one Huffman tree and assigns the code bit strings and lengths.
- * Update the total bit length for the current block.
- * IN assertion: the field freq is set for all tree elements.
- * OUT assertions: the fields len and code are set to the optimal bit length
- * and corresponding code. The length opt_len is updated; static_len is
- * also updated if stree is not null. The field max_code is set.
- */
-local void build_tree(s, desc)
- deflate_state *s;
- tree_desc *desc; /* the tree descriptor */
-{
- ct_data *tree = desc->dyn_tree;
- ct_data *stree = desc->stat_desc->static_tree;
- int elems = desc->stat_desc->elems;
- int n, m; /* iterate over heap elements */
- int max_code = -1; /* largest code with non zero frequency */
- int node; /* new node being created */
-
- /* Construct the initial heap, with least frequent element in
- * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1].
- * heap[0] is not used.
- */
- s->heap_len = 0, s->heap_max = HEAP_SIZE;
-
- for (n = 0; n < elems; n++) {
- if (tree[n].Freq != 0) {
- s->heap[++(s->heap_len)] = max_code = n;
- s->depth[n] = 0;
- } else {
- tree[n].Len = 0;
- }
- }
-
- /* The pkzip format requires that at least one distance code exists,
- * and that at least one bit should be sent even if there is only one
- * possible code. So to avoid special checks later on we force at least
- * two codes of non zero frequency.
- */
- while (s->heap_len < 2) {
- node = s->heap[++(s->heap_len)] = (max_code < 2 ? ++max_code : 0);
- tree[node].Freq = 1;
- s->depth[node] = 0;
- s->opt_len--; if (stree) s->static_len -= stree[node].Len;
- /* node is 0 or 1 so it does not have extra bits */
- }
- desc->max_code = max_code;
-
- /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree,
- * establish sub-heaps of increasing lengths:
- */
- for (n = s->heap_len/2; n >= 1; n--) pqdownheap(s, tree, n);
-
- /* Construct the Huffman tree by repeatedly combining the least two
- * frequent nodes.
- */
- node = elems; /* next internal node of the tree */
- do {
- pqremove(s, tree, n); /* n = node of least frequency */
- m = s->heap[SMALLEST]; /* m = node of next least frequency */
-
- s->heap[--(s->heap_max)] = n; /* keep the nodes sorted by frequency */
- s->heap[--(s->heap_max)] = m;
-
- /* Create a new node father of n and m */
- tree[node].Freq = tree[n].Freq + tree[m].Freq;
- s->depth[node] = (uch) (MAX(s->depth[n], s->depth[m]) + 1);
- tree[n].Dad = tree[m].Dad = (ush)node;
-#ifdef DUMP_BL_TREE
- if (tree == s->bl_tree) {
- fprintf(stderr,"\nnode %d(%d), sons %d(%d) %d(%d)",
- node, tree[node].Freq, n, tree[n].Freq, m, tree[m].Freq);
- }
-#endif
- /* and insert the new node in the heap */
- s->heap[SMALLEST] = node++;
- pqdownheap(s, tree, SMALLEST);
-
- } while (s->heap_len >= 2);
-
- s->heap[--(s->heap_max)] = s->heap[SMALLEST];
-
- /* At this point, the fields freq and dad are set. We can now
- * generate the bit lengths.
- */
- gen_bitlen(s, (tree_desc *)desc);
-
- /* The field len is now set, we can generate the bit codes */
- gen_codes ((ct_data *)tree, max_code, s->bl_count);
-}
-
-/* ===========================================================================
- * Scan a literal or distance tree to determine the frequencies of the codes
- * in the bit length tree.
- */
-local void scan_tree (s, tree, max_code)
- deflate_state *s;
- ct_data *tree; /* the tree to be scanned */
- int max_code; /* and its largest code of non zero frequency */
-{
- int n; /* iterates over all tree elements */
- int prevlen = -1; /* last emitted length */
- int curlen; /* length of current code */
- int nextlen = tree[0].Len; /* length of next code */
- int count = 0; /* repeat count of the current code */
- int max_count = 7; /* max repeat count */
- int min_count = 4; /* min repeat count */
-
- if (nextlen == 0) max_count = 138, min_count = 3;
- tree[max_code+1].Len = (ush)0xffff; /* guard */
-
- for (n = 0; n <= max_code; n++) {
- curlen = nextlen; nextlen = tree[n+1].Len;
- if (++count < max_count && curlen == nextlen) {
- continue;
- } else if (count < min_count) {
- s->bl_tree[curlen].Freq += count;
- } else if (curlen != 0) {
- if (curlen != prevlen) s->bl_tree[curlen].Freq++;
- s->bl_tree[REP_3_6].Freq++;
- } else if (count <= 10) {
- s->bl_tree[REPZ_3_10].Freq++;
- } else {
- s->bl_tree[REPZ_11_138].Freq++;
- }
- count = 0; prevlen = curlen;
- if (nextlen == 0) {
- max_count = 138, min_count = 3;
- } else if (curlen == nextlen) {
- max_count = 6, min_count = 3;
- } else {
- max_count = 7, min_count = 4;
- }
- }
-}
-
-/* ===========================================================================
- * Send a literal or distance tree in compressed form, using the codes in
- * bl_tree.
- */
-local void send_tree (s, tree, max_code)
- deflate_state *s;
- ct_data *tree; /* the tree to be scanned */
- int max_code; /* and its largest code of non zero frequency */
-{
- int n; /* iterates over all tree elements */
- int prevlen = -1; /* last emitted length */
- int curlen; /* length of current code */
- int nextlen = tree[0].Len; /* length of next code */
- int count = 0; /* repeat count of the current code */
- int max_count = 7; /* max repeat count */
- int min_count = 4; /* min repeat count */
-
- /* tree[max_code+1].Len = -1; */ /* guard already set */
- if (nextlen == 0) max_count = 138, min_count = 3;
-
- for (n = 0; n <= max_code; n++) {
- curlen = nextlen; nextlen = tree[n+1].Len;
- if (++count < max_count && curlen == nextlen) {
- continue;
- } else if (count < min_count) {
- do { send_code(s, curlen, s->bl_tree); } while (--count != 0);
-
- } else if (curlen != 0) {
- if (curlen != prevlen) {
- send_code(s, curlen, s->bl_tree); count--;
- }
- Assert(count >= 3 && count <= 6, " 3_6?");
- send_code(s, REP_3_6, s->bl_tree); send_bits(s, count-3, 2);
-
- } else if (count <= 10) {
- send_code(s, REPZ_3_10, s->bl_tree); send_bits(s, count-3, 3);
-
- } else {
- send_code(s, REPZ_11_138, s->bl_tree); send_bits(s, count-11, 7);
- }
- count = 0; prevlen = curlen;
- if (nextlen == 0) {
- max_count = 138, min_count = 3;
- } else if (curlen == nextlen) {
- max_count = 6, min_count = 3;
- } else {
- max_count = 7, min_count = 4;
- }
- }
-}
-
-/* ===========================================================================
- * Construct the Huffman tree for the bit lengths and return the index in
- * bl_order of the last bit length code to send.
- */
-local int build_bl_tree(s)
- deflate_state *s;
-{
- int max_blindex; /* index of last bit length code of non zero freq */
-
- /* Determine the bit length frequencies for literal and distance trees */
- scan_tree(s, (ct_data *)s->dyn_ltree, s->l_desc.max_code);
- scan_tree(s, (ct_data *)s->dyn_dtree, s->d_desc.max_code);
-
- /* Build the bit length tree: */
- build_tree(s, (tree_desc *)(&(s->bl_desc)));
- /* opt_len now includes the length of the tree representations, except
- * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.
- */
-
- /* Determine the number of bit length codes to send. The pkzip format
- * requires that at least 4 bit length codes be sent. (appnote.txt says
- * 3 but the actual value used is 4.)
- */
- for (max_blindex = BL_CODES-1; max_blindex >= 3; max_blindex--) {
- if (s->bl_tree[bl_order[max_blindex]].Len != 0) break;
- }
- /* Update opt_len to include the bit length tree and counts */
- s->opt_len += 3*(max_blindex+1) + 5+5+4;
- Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld",
- s->opt_len, s->static_len));
-
- return max_blindex;
-}
-
-/* ===========================================================================
- * Send the header for a block using dynamic Huffman trees: the counts, the
- * lengths of the bit length codes, the literal tree and the distance tree.
- * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.
- */
-local void send_all_trees(s, lcodes, dcodes, blcodes)
- deflate_state *s;
- int lcodes, dcodes, blcodes; /* number of codes for each tree */
-{
- int rank; /* index in bl_order */
-
- Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes");
- Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,
- "too many codes");
- Tracev((stderr, "\nbl counts: "));
- send_bits(s, lcodes-257, 5); /* not +255 as stated in appnote.txt */
- send_bits(s, dcodes-1, 5);
- send_bits(s, blcodes-4, 4); /* not -3 as stated in appnote.txt */
- for (rank = 0; rank < blcodes; rank++) {
- Tracev((stderr, "\nbl code %2d ", bl_order[rank]));
- send_bits(s, s->bl_tree[bl_order[rank]].Len, 3);
- }
- Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent));
-
- send_tree(s, (ct_data *)s->dyn_ltree, lcodes-1); /* literal tree */
- Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent));
-
- send_tree(s, (ct_data *)s->dyn_dtree, dcodes-1); /* distance tree */
- Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent));
-}
-
-/* ===========================================================================
- * Send a stored block
- */
-void _tr_stored_block(s, buf, stored_len, eof)
- deflate_state *s;
- charf *buf; /* input block */
- ulg stored_len; /* length of input block */
- int eof; /* true if this is the last block for a file */
-{
- send_bits(s, (STORED_BLOCK<<1)+eof, 3); /* send block type */
- s->compressed_len = (s->compressed_len + 3 + 7) & (ulg)~7L;
- s->compressed_len += (stored_len + 4) << 3;
-
- copy_block(s, buf, (unsigned)stored_len, 1); /* with header */
-}
-
-/* Send just the `stored block' type code without any length bytes or data.
- */
-void _tr_stored_type_only(s)
- deflate_state *s;
-{
- send_bits(s, (STORED_BLOCK << 1), 3);
- bi_windup(s);
- s->compressed_len = (s->compressed_len + 3) & ~7L;
-}
-
-
-/* ===========================================================================
- * Send one empty static block to give enough lookahead for inflate.
- * This takes 10 bits, of which 7 may remain in the bit buffer.
- * The current inflate code requires 9 bits of lookahead. If the
- * last two codes for the previous block (real code plus EOB) were coded
- * on 5 bits or less, inflate may have only 5+3 bits of lookahead to decode
- * the last real code. In this case we send two empty static blocks instead
- * of one. (There are no problems if the previous block is stored or fixed.)
- * To simplify the code, we assume the worst case of last real code encoded
- * on one bit only.
- */
-void _tr_align(s)
- deflate_state *s;
-{
- send_bits(s, STATIC_TREES<<1, 3);
- send_code(s, END_BLOCK, static_ltree);
- s->compressed_len += 10L; /* 3 for block type, 7 for EOB */
- bi_flush(s);
- /* Of the 10 bits for the empty block, we have already sent
- * (10 - bi_valid) bits. The lookahead for the last real code (before
- * the EOB of the previous block) was thus at least one plus the length
- * of the EOB plus what we have just sent of the empty static block.
- */
- if (1 + s->last_eob_len + 10 - s->bi_valid < 9) {
- send_bits(s, STATIC_TREES<<1, 3);
- send_code(s, END_BLOCK, static_ltree);
- s->compressed_len += 10L;
- bi_flush(s);
- }
- s->last_eob_len = 7;
-}
-
-/* ===========================================================================
- * Determine the best encoding for the current block: dynamic trees, static
- * trees or store, and output the encoded block to the zip file. This function
- * returns the total compressed length for the file so far.
- */
-ulg _tr_flush_block(s, buf, stored_len, eof)
- deflate_state *s;
- charf *buf; /* input block, or NULL if too old */
- ulg stored_len; /* length of input block */
- int eof; /* true if this is the last block for a file */
-{
- ulg opt_lenb, static_lenb; /* opt_len and static_len in bytes */
- int max_blindex = 0; /* index of last bit length code of non zero freq */
-
- /* Build the Huffman trees unless a stored block is forced */
- if (s->level > 0) {
-
- /* Check if the file is ascii or binary */
- if (s->data_type == Z_UNKNOWN) set_data_type(s);
-
- /* Construct the literal and distance trees */
- build_tree(s, (tree_desc *)(&(s->l_desc)));
- Tracev((stderr, "\nlit data: dyn %ld, stat %ld", s->opt_len,
- s->static_len));
-
- build_tree(s, (tree_desc *)(&(s->d_desc)));
- Tracev((stderr, "\ndist data: dyn %ld, stat %ld", s->opt_len,
- s->static_len));
- /* At this point, opt_len and static_len are the total bit lengths of
- * the compressed block data, excluding the tree representations.
- */
-
- /* Build the bit length tree for the above two trees, and get the index
- * in bl_order of the last bit length code to send.
- */
- max_blindex = build_bl_tree(s);
-
- /* Determine the best encoding. Compute first the block length in bytes*/
- opt_lenb = (s->opt_len+3+7)>>3;
- static_lenb = (s->static_len+3+7)>>3;
-
- Tracev((stderr, "\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u ",
- opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len,
- s->last_lit));
-
- if (static_lenb <= opt_lenb) opt_lenb = static_lenb;
-
- } else {
- Assert(buf != (char*)0, "lost buf");
- opt_lenb = static_lenb = stored_len + 5; /* force a stored block */
- }
-
- /* If compression failed and this is the first and last block,
- * and if the .zip file can be seeked (to rewrite the local header),
- * the whole file is transformed into a stored file:
- */
-#ifdef STORED_FILE_OK
-# ifdef FORCE_STORED_FILE
- if (eof && s->compressed_len == 0L) { /* force stored file */
-# else
- if (stored_len <= opt_lenb && eof && s->compressed_len==0L && seekable()) {
-# endif
- /* Since LIT_BUFSIZE <= 2*WSIZE, the input data must be there: */
- if (buf == (charf*)0) error ("block vanished");
-
- copy_block(s, buf, (unsigned)stored_len, 0); /* without header */
- s->compressed_len = stored_len << 3;
- s->method = STORED;
- } else
-#endif /* STORED_FILE_OK */
-
-#ifdef FORCE_STORED
- if (buf != (char*)0) { /* force stored block */
-#else
- if (stored_len+4 <= opt_lenb && buf != (char*)0) {
- /* 4: two words for the lengths */
-#endif
- /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.
- * Otherwise we can't have processed more than WSIZE input bytes since
- * the last block flush, because compression would have been
- * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to
- * transform a block into a stored block.
- */
- _tr_stored_block(s, buf, stored_len, eof);
-
-#ifdef FORCE_STATIC
- } else if (static_lenb >= 0) { /* force static trees */
-#else
- } else if (static_lenb == opt_lenb) {
-#endif
- send_bits(s, (STATIC_TREES<<1)+eof, 3);
- compress_block(s, (ct_data *)static_ltree, (ct_data *)static_dtree);
- s->compressed_len += 3 + s->static_len;
- } else {
- send_bits(s, (DYN_TREES<<1)+eof, 3);
- send_all_trees(s, s->l_desc.max_code+1, s->d_desc.max_code+1,
- max_blindex+1);
- compress_block(s, (ct_data *)s->dyn_ltree, (ct_data *)s->dyn_dtree);
- s->compressed_len += 3 + s->opt_len;
- }
- Assert (s->compressed_len == s->bits_sent, "bad compressed size");
- init_block(s);
-
- if (eof) {
- bi_windup(s);
- s->compressed_len += 7; /* align on byte boundary */
- }
- Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len>>3,
- s->compressed_len-7*eof));
-
- return s->compressed_len >> 3;
-}
-
-/* ===========================================================================
- * Save the match info and tally the frequency counts. Return true if
- * the current block must be flushed.
- */
-int _tr_tally (s, dist, lc)
- deflate_state *s;
- unsigned dist; /* distance of matched string */
- unsigned lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */
-{
- s->d_buf[s->last_lit] = (ush)dist;
- s->l_buf[s->last_lit++] = (uch)lc;
- if (dist == 0) {
- /* lc is the unmatched char */
- s->dyn_ltree[lc].Freq++;
- } else {
- s->matches++;
- /* Here, lc is the match length - MIN_MATCH */
- dist--; /* dist = match distance - 1 */
- Assert((ush)dist < (ush)MAX_DIST(s) &&
- (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&
- (ush)d_code(dist) < (ush)D_CODES, "_tr_tally: bad match");
-
- s->dyn_ltree[length_code[lc]+LITERALS+1].Freq++;
- s->dyn_dtree[d_code(dist)].Freq++;
- }
-
- /* Try to guess if it is profitable to stop the current block here */
- if (s->level > 2 && (s->last_lit & 0xfff) == 0) {
- /* Compute an upper bound for the compressed length */
- ulg out_length = (ulg)s->last_lit*8L;
- ulg in_length = (ulg)((long)s->strstart - s->block_start);
- int dcode;
- for (dcode = 0; dcode < D_CODES; dcode++) {
- out_length += (ulg)s->dyn_dtree[dcode].Freq *
- (5L+extra_dbits[dcode]);
- }
- out_length >>= 3;
- Tracev((stderr,"\nlast_lit %u, in %ld, out ~%ld(%ld%%) ",
- s->last_lit, in_length, out_length,
- 100L - out_length*100L/in_length));
- if (s->matches < s->last_lit/2 && out_length < in_length/2) return 1;
- }
- return (s->last_lit == s->lit_bufsize-1);
- /* We avoid equality with lit_bufsize because of wraparound at 64K
- * on 16 bit machines and because stored blocks are restricted to
- * 64K-1 bytes.
- */
-}
-
-/* ===========================================================================
- * Send the block data compressed using the given Huffman trees
- */
-local void compress_block(s, ltree, dtree)
- deflate_state *s;
- ct_data *ltree; /* literal tree */
- ct_data *dtree; /* distance tree */
-{
- unsigned dist; /* distance of matched string */
- int lc; /* match length or unmatched char (if dist == 0) */
- unsigned lx = 0; /* running index in l_buf */
- unsigned code; /* the code to send */
- int extra; /* number of extra bits to send */
-
- if (s->last_lit != 0) do {
- dist = s->d_buf[lx];
- lc = s->l_buf[lx++];
- if (dist == 0) {
- send_code(s, lc, ltree); /* send a literal byte */
- Tracecv(isgraph(lc), (stderr," '%c' ", lc));
- } else {
- /* Here, lc is the match length - MIN_MATCH */
- code = length_code[lc];
- send_code(s, code+LITERALS+1, ltree); /* send the length code */
- extra = extra_lbits[code];
- if (extra != 0) {
- lc -= base_length[code];
- send_bits(s, lc, extra); /* send the extra length bits */
- }
- dist--; /* dist is now the match distance - 1 */
- code = d_code(dist);
- Assert (code < D_CODES, "bad d_code");
-
- send_code(s, code, dtree); /* send the distance code */
- extra = extra_dbits[code];
- if (extra != 0) {
- dist -= base_dist[code];
- send_bits(s, dist, extra); /* send the extra distance bits */
- }
- } /* literal or match pair ? */
-
- /* Check that the overlay between pending_buf and d_buf+l_buf is ok: */
- Assert(s->pending < s->lit_bufsize + 2*lx, "pendingBuf overflow");
-
- } while (lx < s->last_lit);
-
- send_code(s, END_BLOCK, ltree);
- s->last_eob_len = ltree[END_BLOCK].Len;
-}
-
-/* ===========================================================================
- * Set the data type to ASCII or BINARY, using a crude approximation:
- * binary if more than 20% of the bytes are <= 6 or >= 128, ascii otherwise.
- * IN assertion: the fields freq of dyn_ltree are set and the total of all
- * frequencies does not exceed 64K (to fit in an int on 16 bit machines).
- */
-local void set_data_type(s)
- deflate_state *s;
-{
- int n = 0;
- unsigned ascii_freq = 0;
- unsigned bin_freq = 0;
- while (n < 7) bin_freq += s->dyn_ltree[n++].Freq;
- while (n < 128) ascii_freq += s->dyn_ltree[n++].Freq;
- while (n < LITERALS) bin_freq += s->dyn_ltree[n++].Freq;
- s->data_type = (Byte)(bin_freq > (ascii_freq >> 2) ? Z_BINARY : Z_ASCII);
-}
-
-/* ===========================================================================
- * Reverse the first len bits of a code, using straightforward code (a faster
- * method would use a table)
- * IN assertion: 1 <= len <= 15
- */
-local unsigned bi_reverse(code, len)
- unsigned code; /* the value to invert */
- int len; /* its bit length */
-{
- register unsigned res = 0;
- do {
- res |= code & 1;
- code >>= 1, res <<= 1;
- } while (--len > 0);
- return res >> 1;
-}
-
-/* ===========================================================================
- * Flush the bit buffer, keeping at most 7 bits in it.
- */
-local void bi_flush(s)
- deflate_state *s;
-{
- if (s->bi_valid == 16) {
- put_short(s, s->bi_buf);
- s->bi_buf = 0;
- s->bi_valid = 0;
- } else if (s->bi_valid >= 8) {
- put_byte(s, (Byte)s->bi_buf);
- s->bi_buf >>= 8;
- s->bi_valid -= 8;
- }
-}
-
-/* ===========================================================================
- * Flush the bit buffer and align the output on a byte boundary
- */
-local void bi_windup(s)
- deflate_state *s;
-{
- if (s->bi_valid > 8) {
- put_short(s, s->bi_buf);
- } else if (s->bi_valid > 0) {
- put_byte(s, (Byte)s->bi_buf);
- }
- s->bi_buf = 0;
- s->bi_valid = 0;
-#ifdef DEBUG_ZLIB
- s->bits_sent = (s->bits_sent+7) & ~7;
-#endif
-}
-
-/* ===========================================================================
- * Copy a stored block, storing first the length and its
- * one's complement if requested.
- */
-local void copy_block(s, buf, len, header)
- deflate_state *s;
- charf *buf; /* the input data */
- unsigned len; /* its length */
- int header; /* true if block header must be written */
-{
- bi_windup(s); /* align on byte boundary */
- s->last_eob_len = 8; /* enough lookahead for inflate */
-
- if (header) {
- put_short(s, (ush)len);
- put_short(s, (ush)~len);
-#ifdef DEBUG_ZLIB
- s->bits_sent += 2*16;
-#endif
- }
-#ifdef DEBUG_ZLIB
- s->bits_sent += (ulg)len<<3;
-#endif
- /* bundle up the put_byte(s, *buf++) calls */
- zmemcpy(&s->pending_buf[s->pending], buf, len);
- s->pending += len;
-}
-/* --- trees.c */
-
-/* +++ inflate.c */
-/* inflate.c -- zlib interface to inflate modules
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* #include "zutil.h" */
-
-/* +++ infblock.h */
-/* infblock.h -- header to use infblock.c
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-struct inflate_blocks_state;
-typedef struct inflate_blocks_state FAR inflate_blocks_statef;
-
-extern inflate_blocks_statef * inflate_blocks_new OF((
- z_streamp z,
- check_func c, /* check function */
- uInt w)); /* window size */
-
-extern int inflate_blocks OF((
- inflate_blocks_statef *,
- z_streamp ,
- int)); /* initial return code */
-
-extern void inflate_blocks_reset OF((
- inflate_blocks_statef *,
- z_streamp ,
- uLongf *)); /* check value on output */
-
-extern int inflate_blocks_free OF((
- inflate_blocks_statef *,
- z_streamp ,
- uLongf *)); /* check value on output */
-
-extern void inflate_set_dictionary OF((
- inflate_blocks_statef *s,
- const Bytef *d, /* dictionary */
- uInt n)); /* dictionary length */
-
-extern int inflate_addhistory OF((
- inflate_blocks_statef *,
- z_streamp));
-
-extern int inflate_packet_flush OF((
- inflate_blocks_statef *));
-/* --- infblock.h */
-
-#ifndef NO_DUMMY_DECL
-struct inflate_blocks_state {int dummy;}; /* for buggy compilers */
-#endif
-
-/* inflate private state */
-struct internal_state {
-
- /* mode */
- enum {
- METHOD, /* waiting for method byte */
- FLAG, /* waiting for flag byte */
- DICT4, /* four dictionary check bytes to go */
- DICT3, /* three dictionary check bytes to go */
- DICT2, /* two dictionary check bytes to go */
- DICT1, /* one dictionary check byte to go */
- DICT0, /* waiting for inflateSetDictionary */
- BLOCKS, /* decompressing blocks */
- CHECK4, /* four check bytes to go */
- CHECK3, /* three check bytes to go */
- CHECK2, /* two check bytes to go */
- CHECK1, /* one check byte to go */
- DONE, /* finished check, done */
- BAD} /* got an error--stay here */
- mode; /* current inflate mode */
-
- /* mode dependent information */
- union {
- uInt method; /* if FLAGS, method byte */
- struct {
- uLong was; /* computed check value */
- uLong need; /* stream check value */
- } check; /* if CHECK, check values to compare */
- uInt marker; /* if BAD, inflateSync's marker bytes count */
- } sub; /* submode */
-
- /* mode independent information */
- int nowrap; /* flag for no wrapper */
- uInt wbits; /* log2(window size) (8..15, defaults to 15) */
- inflate_blocks_statef
- *blocks; /* current inflate_blocks state */
-
-};
-
-
-int inflateReset(z)
-z_streamp z;
-{
- uLong c;
-
- if (z == Z_NULL || z->state == Z_NULL)
- return Z_STREAM_ERROR;
- z->total_in = z->total_out = 0;
- z->msg = Z_NULL;
- z->state->mode = z->state->nowrap ? BLOCKS : METHOD;
- inflate_blocks_reset(z->state->blocks, z, &c);
- Trace((stderr, "inflate: reset\n"));
- return Z_OK;
-}
-
-
-int inflateEnd(z)
-z_streamp z;
-{
- uLong c;
-
- if (z == Z_NULL || z->state == Z_NULL || z->zfree == Z_NULL)
- return Z_STREAM_ERROR;
- if (z->state->blocks != Z_NULL)
- inflate_blocks_free(z->state->blocks, z, &c);
- ZFREE(z, z->state);
- z->state = Z_NULL;
- Trace((stderr, "inflate: end\n"));
- return Z_OK;
-}
-
-
-int inflateInit2_(z, w, version, stream_size)
-z_streamp z;
-int w;
-const char *version;
-int stream_size;
-{
- if (version == Z_NULL || version[0] != ZLIB_VERSION[0] ||
- stream_size != sizeof(z_stream))
- return Z_VERSION_ERROR;
-
- /* initialize state */
- if (z == Z_NULL)
- return Z_STREAM_ERROR;
- z->msg = Z_NULL;
-#ifndef NO_ZCFUNCS
- if (z->zalloc == Z_NULL)
- {
- z->zalloc = zcalloc;
- z->opaque = (voidpf)0;
- }
- if (z->zfree == Z_NULL) z->zfree = zcfree;
-#endif
- if ((z->state = (struct internal_state FAR *)
- ZALLOC(z,1,sizeof(struct internal_state))) == Z_NULL)
- return Z_MEM_ERROR;
- z->state->blocks = Z_NULL;
-
- /* handle undocumented nowrap option (no zlib header or check) */
- z->state->nowrap = 0;
- if (w < 0)
- {
- w = - w;
- z->state->nowrap = 1;
- }
-
- /* set window size */
- if (w < 8 || w > 15)
- {
- inflateEnd(z);
- return Z_STREAM_ERROR;
- }
- z->state->wbits = (uInt)w;
-
- /* create inflate_blocks state */
- if ((z->state->blocks =
- inflate_blocks_new(z, z->state->nowrap ? Z_NULL : adler32, (uInt)1 << w))
- == Z_NULL)
- {
- inflateEnd(z);
- return Z_MEM_ERROR;
- }
- Trace((stderr, "inflate: allocated\n"));
-
- /* reset state */
- inflateReset(z);
- return Z_OK;
-}
-
-
-int inflateInit_(z, version, stream_size)
-z_streamp z;
-const char *version;
-int stream_size;
-{
- return inflateInit2_(z, DEF_WBITS, version, stream_size);
-}
-
-
-#define NEEDBYTE {if(z->avail_in==0)goto empty;r=Z_OK;}
-#define NEXTBYTE (z->avail_in--,z->total_in++,*z->next_in++)
-
-int inflate(z, f)
-z_streamp z;
-int f;
-{
- int r;
- uInt b;
-
- if (z == Z_NULL || z->state == Z_NULL || z->next_in == Z_NULL || f < 0)
- return Z_STREAM_ERROR;
- r = Z_BUF_ERROR;
- while (1) switch (z->state->mode)
- {
- case METHOD:
- NEEDBYTE
- if (((z->state->sub.method = NEXTBYTE) & 0xf) != Z_DEFLATED)
- {
- z->state->mode = BAD;
- z->msg = (char*)"unknown compression method";
- z->state->sub.marker = 5; /* can't try inflateSync */
- break;
- }
- if ((z->state->sub.method >> 4) + 8 > z->state->wbits)
- {
- z->state->mode = BAD;
- z->msg = (char*)"invalid window size";
- z->state->sub.marker = 5; /* can't try inflateSync */
- break;
- }
- z->state->mode = FLAG;
- case FLAG:
- NEEDBYTE
- b = NEXTBYTE;
- if (((z->state->sub.method << 8) + b) % 31)
- {
- z->state->mode = BAD;
- z->msg = (char*)"incorrect header check";
- z->state->sub.marker = 5; /* can't try inflateSync */
- break;
- }
- Trace((stderr, "inflate: zlib header ok\n"));
- if (!(b & PRESET_DICT))
- {
- z->state->mode = BLOCKS;
- break;
- }
- z->state->mode = DICT4;
- case DICT4:
- NEEDBYTE
- z->state->sub.check.need = (uLong)NEXTBYTE << 24;
- z->state->mode = DICT3;
- case DICT3:
- NEEDBYTE
- z->state->sub.check.need += (uLong)NEXTBYTE << 16;
- z->state->mode = DICT2;
- case DICT2:
- NEEDBYTE
- z->state->sub.check.need += (uLong)NEXTBYTE << 8;
- z->state->mode = DICT1;
- case DICT1:
- NEEDBYTE
- z->state->sub.check.need += (uLong)NEXTBYTE;
- z->adler = z->state->sub.check.need;
- z->state->mode = DICT0;
- return Z_NEED_DICT;
- case DICT0:
- z->state->mode = BAD;
- z->msg = (char*)"need dictionary";
- z->state->sub.marker = 0; /* can try inflateSync */
- return Z_STREAM_ERROR;
- case BLOCKS:
- r = inflate_blocks(z->state->blocks, z, r);
- if (f == Z_PACKET_FLUSH && z->avail_in == 0 && z->avail_out != 0)
- r = inflate_packet_flush(z->state->blocks);
- if (r == Z_DATA_ERROR)
- {
- z->state->mode = BAD;
- z->state->sub.marker = 0; /* can try inflateSync */
- break;
- }
- if (r != Z_STREAM_END)
- return r;
- r = Z_OK;
- inflate_blocks_reset(z->state->blocks, z, &z->state->sub.check.was);
- if (z->state->nowrap)
- {
- z->state->mode = DONE;
- break;
- }
- z->state->mode = CHECK4;
- case CHECK4:
- NEEDBYTE
- z->state->sub.check.need = (uLong)NEXTBYTE << 24;
- z->state->mode = CHECK3;
- case CHECK3:
- NEEDBYTE
- z->state->sub.check.need += (uLong)NEXTBYTE << 16;
- z->state->mode = CHECK2;
- case CHECK2:
- NEEDBYTE
- z->state->sub.check.need += (uLong)NEXTBYTE << 8;
- z->state->mode = CHECK1;
- case CHECK1:
- NEEDBYTE
- z->state->sub.check.need += (uLong)NEXTBYTE;
-
- if (z->state->sub.check.was != z->state->sub.check.need)
- {
- z->state->mode = BAD;
- z->msg = (char*)"incorrect data check";
- z->state->sub.marker = 5; /* can't try inflateSync */
- break;
- }
- Trace((stderr, "inflate: zlib check ok\n"));
- z->state->mode = DONE;
- case DONE:
- return Z_STREAM_END;
- case BAD:
- return Z_DATA_ERROR;
- default:
- return Z_STREAM_ERROR;
- }
-
- empty:
- if (f != Z_PACKET_FLUSH)
- return r;
- z->state->mode = BAD;
- z->msg = (char *)"need more for packet flush";
- z->state->sub.marker = 0; /* can try inflateSync */
- return Z_DATA_ERROR;
-}
-
-
-int inflateSetDictionary(z, dictionary, dictLength)
-z_streamp z;
-const Bytef *dictionary;
-uInt dictLength;
-{
- uInt length = dictLength;
-
- if (z == Z_NULL || z->state == Z_NULL || z->state->mode != DICT0)
- return Z_STREAM_ERROR;
-
- if (adler32(1L, dictionary, dictLength) != z->adler) return Z_DATA_ERROR;
- z->adler = 1L;
-
- if (length >= ((uInt)1<<z->state->wbits))
- {
- length = (1<<z->state->wbits)-1;
- dictionary += dictLength - length;
- }
- inflate_set_dictionary(z->state->blocks, dictionary, length);
- z->state->mode = BLOCKS;
- return Z_OK;
-}
-
-/*
- * This subroutine adds the data at next_in/avail_in to the output history
- * without performing any output. The output buffer must be "caught up";
- * i.e. no pending output (hence s->read equals s->write), and the state must
- * be BLOCKS (i.e. we should be willing to see the start of a series of
- * BLOCKS). On exit, the output will also be caught up, and the checksum
- * will have been updated if need be.
- */
-
-int inflateIncomp(z)
-z_stream *z;
-{
- if (z->state->mode != BLOCKS)
- return Z_DATA_ERROR;
- return inflate_addhistory(z->state->blocks, z);
-}
-
-
-int inflateSync(z)
-z_streamp z;
-{
- uInt n; /* number of bytes to look at */
- Bytef *p; /* pointer to bytes */
- uInt m; /* number of marker bytes found in a row */
- uLong r, w; /* temporaries to save total_in and total_out */
-
- /* set up */
- if (z == Z_NULL || z->state == Z_NULL)
- return Z_STREAM_ERROR;
- if (z->state->mode != BAD)
- {
- z->state->mode = BAD;
- z->state->sub.marker = 0;
- }
- if ((n = z->avail_in) == 0)
- return Z_BUF_ERROR;
- p = z->next_in;
- m = z->state->sub.marker;
-
- /* search */
- while (n && m < 4)
- {
- if (*p == (Byte)(m < 2 ? 0 : 0xff))
- m++;
- else if (*p)
- m = 0;
- else
- m = 4 - m;
- p++, n--;
- }
-
- /* restore */
- z->total_in += p - z->next_in;
- z->next_in = p;
- z->avail_in = n;
- z->state->sub.marker = m;
-
- /* return no joy or set up to restart on a new block */
- if (m != 4)
- return Z_DATA_ERROR;
- r = z->total_in; w = z->total_out;
- inflateReset(z);
- z->total_in = r; z->total_out = w;
- z->state->mode = BLOCKS;
- return Z_OK;
-}
-
-#undef NEEDBYTE
-#undef NEXTBYTE
-/* --- inflate.c */
-
-/* +++ infblock.c */
-/* infblock.c -- interpret and process block types to last block
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* #include "zutil.h" */
-/* #include "infblock.h" */
-
-/* +++ inftrees.h */
-/* inftrees.h -- header to use inftrees.c
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-/* Huffman code lookup table entry--this entry is four bytes for machines
- that have 16-bit pointers (e.g. PC's in the small or medium model). */
-
-typedef struct inflate_huft_s FAR inflate_huft;
-
-struct inflate_huft_s {
- union {
- struct {
- Byte Exop; /* number of extra bits or operation */
- Byte Bits; /* number of bits in this code or subcode */
- } what;
- Bytef *pad; /* pad structure to a power of 2 (4 bytes for */
- } word; /* 16-bit, 8 bytes for 32-bit machines) */
- union {
- uInt Base; /* literal, length base, or distance base */
- inflate_huft *Next; /* pointer to next level of table */
- } more;
-};
-
-#ifdef DEBUG_ZLIB
- extern uInt inflate_hufts;
-#endif
-
-extern int inflate_trees_bits OF((
- uIntf *, /* 19 code lengths */
- uIntf *, /* bits tree desired/actual depth */
- inflate_huft * FAR *, /* bits tree result */
- z_streamp )); /* for zalloc, zfree functions */
-
-extern int inflate_trees_dynamic OF((
- uInt, /* number of literal/length codes */
- uInt, /* number of distance codes */
- uIntf *, /* that many (total) code lengths */
- uIntf *, /* literal desired/actual bit depth */
- uIntf *, /* distance desired/actual bit depth */
- inflate_huft * FAR *, /* literal/length tree result */
- inflate_huft * FAR *, /* distance tree result */
- z_streamp )); /* for zalloc, zfree functions */
-
-extern int inflate_trees_fixed OF((
- uIntf *, /* literal desired/actual bit depth */
- uIntf *, /* distance desired/actual bit depth */
- inflate_huft * FAR *, /* literal/length tree result */
- inflate_huft * FAR *)); /* distance tree result */
-
-extern int inflate_trees_free OF((
- inflate_huft *, /* tables to free */
- z_streamp )); /* for zfree function */
-
-/* --- inftrees.h */
-
-/* +++ infcodes.h */
-/* infcodes.h -- header to use infcodes.c
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-struct inflate_codes_state;
-typedef struct inflate_codes_state FAR inflate_codes_statef;
-
-extern inflate_codes_statef *inflate_codes_new OF((
- uInt, uInt,
- inflate_huft *, inflate_huft *,
- z_streamp ));
-
-extern int inflate_codes OF((
- inflate_blocks_statef *,
- z_streamp ,
- int));
-
-extern void inflate_codes_free OF((
- inflate_codes_statef *,
- z_streamp ));
-
-/* --- infcodes.h */
-
-/* +++ infutil.h */
-/* infutil.h -- types and macros common to blocks and codes
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-#ifndef _INFUTIL_H
-#define _INFUTIL_H
-
-typedef enum {
- TYPE, /* get type bits (3, including end bit) */
- LENS, /* get lengths for stored */
- STORED, /* processing stored block */
- TABLE, /* get table lengths */
- BTREE, /* get bit lengths tree for a dynamic block */
- DTREE, /* get length, distance trees for a dynamic block */
- CODES, /* processing fixed or dynamic block */
- DRY, /* output remaining window bytes */
- DONEB, /* finished last block, done */
- BADB} /* got a data error--stuck here */
-inflate_block_mode;
-
-/* inflate blocks semi-private state */
-struct inflate_blocks_state {
-
- /* mode */
- inflate_block_mode mode; /* current inflate_block mode */
-
- /* mode dependent information */
- union {
- uInt left; /* if STORED, bytes left to copy */
- struct {
- uInt table; /* table lengths (14 bits) */
- uInt index; /* index into blens (or border) */
- uIntf *blens; /* bit lengths of codes */
- uInt bb; /* bit length tree depth */
- inflate_huft *tb; /* bit length decoding tree */
- } trees; /* if DTREE, decoding info for trees */
- struct {
- inflate_huft *tl;
- inflate_huft *td; /* trees to free */
- inflate_codes_statef
- *codes;
- } decode; /* if CODES, current state */
- } sub; /* submode */
- uInt last; /* true if this block is the last block */
-
- /* mode independent information */
- uInt bitk; /* bits in bit buffer */
- uLong bitb; /* bit buffer */
- Bytef *window; /* sliding window */
- Bytef *end; /* one byte after sliding window */
- Bytef *read; /* window read pointer */
- Bytef *write; /* window write pointer */
- check_func checkfn; /* check function */
- uLong check; /* check on output */
-
-};
-
-
-/* defines for inflate input/output */
-/* update pointers and return */
-#define UPDBITS {s->bitb=b;s->bitk=k;}
-#define UPDIN {z->avail_in=n;z->total_in+=p-z->next_in;z->next_in=p;}
-#define UPDOUT {s->write=q;}
-#define UPDATE {UPDBITS UPDIN UPDOUT}
-#define LEAVE {UPDATE return inflate_flush(s,z,r);}
-/* get bytes and bits */
-#define LOADIN {p=z->next_in;n=z->avail_in;b=s->bitb;k=s->bitk;}
-#define NEEDBYTE {if(n)r=Z_OK;else LEAVE}
-#define NEXTBYTE (n--,*p++)
-#define NEEDBITS(j) {while(k<(j)){NEEDBYTE;b|=((uLong)NEXTBYTE)<<k;k+=8;}}
-#define DUMPBITS(j) {b>>=(j);k-=(j);}
-/* output bytes */
-#define WAVAIL (uInt)(q<s->read?s->read-q-1:s->end-q)
-#define LOADOUT {q=s->write;m=(uInt)WAVAIL;}
-#define WWRAP {if(q==s->end&&s->read!=s->window){q=s->window;m=(uInt)WAVAIL;}}
-#define FLUSH {UPDOUT r=inflate_flush(s,z,r); LOADOUT}
-#define NEEDOUT {if(m==0){WWRAP if(m==0){FLUSH WWRAP if(m==0) LEAVE}}r=Z_OK;}
-#define OUTBYTE(a) {*q++=(Byte)(a);m--;}
-/* load local pointers */
-#define LOAD {LOADIN LOADOUT}
-
-/* masks for lower bits (size given to avoid silly warnings with Visual C++) */
-extern uInt inflate_mask[17];
-
-/* copy as much as possible from the sliding window to the output area */
-extern int inflate_flush OF((
- inflate_blocks_statef *,
- z_streamp ,
- int));
-
-#ifndef NO_DUMMY_DECL
-struct internal_state {int dummy;}; /* for buggy compilers */
-#endif
-
-#endif
-/* --- infutil.h */
-
-#ifndef NO_DUMMY_DECL
-struct inflate_codes_state {int dummy;}; /* for buggy compilers */
-#endif
-
-/* Table for deflate from PKZIP's appnote.txt. */
-local const uInt border[] = { /* Order of the bit length code lengths */
- 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15};
-
-/*
- Notes beyond the 1.93a appnote.txt:
-
- 1. Distance pointers never point before the beginning of the output
- stream.
- 2. Distance pointers can point back across blocks, up to 32k away.
- 3. There is an implied maximum of 7 bits for the bit length table and
- 15 bits for the actual data.
- 4. If only one code exists, then it is encoded using one bit. (Zero
- would be more efficient, but perhaps a little confusing.) If two
- codes exist, they are coded using one bit each (0 and 1).
- 5. There is no way of sending zero distance codes--a dummy must be
- sent if there are none. (History: a pre 2.0 version of PKZIP would
- store blocks with no distance codes, but this was discovered to be
- too harsh a criterion.) Valid only for 1.93a. 2.04c does allow
- zero distance codes, which is sent as one code of zero bits in
- length.
- 6. There are up to 286 literal/length codes. Code 256 represents the
- end-of-block. Note however that the static length tree defines
- 288 codes just to fill out the Huffman codes. Codes 286 and 287
- cannot be used though, since there is no length base or extra bits
- defined for them. Similarily, there are up to 30 distance codes.
- However, static trees define 32 codes (all 5 bits) to fill out the
- Huffman codes, but the last two had better not show up in the data.
- 7. Unzip can check dynamic Huffman blocks for complete code sets.
- The exception is that a single code would not be complete (see #4).
- 8. The five bits following the block type is really the number of
- literal codes sent minus 257.
- 9. Length codes 8,16,16 are interpreted as 13 length codes of 8 bits
- (1+6+6). Therefore, to output three times the length, you output
- three codes (1+1+1), whereas to output four times the same length,
- you only need two codes (1+3). Hmm.
- 10. In the tree reconstruction algorithm, Code = Code + Increment
- only if BitLength(i) is not zero. (Pretty obvious.)
- 11. Correction: 4 Bits: # of Bit Length codes - 4 (4 - 19)
- 12. Note: length code 284 can represent 227-258, but length code 285
- really is 258. The last length deserves its own, short code
- since it gets used a lot in very redundant files. The length
- 258 is special since 258 - 3 (the min match length) is 255.
- 13. The literal/length and distance code bit lengths are read as a
- single stream of lengths. It is possible (and advantageous) for
- a repeat code (16, 17, or 18) to go across the boundary between
- the two sets of lengths.
- */
-
-
-void inflate_blocks_reset(s, z, c)
-inflate_blocks_statef *s;
-z_streamp z;
-uLongf *c;
-{
- if (s->checkfn != Z_NULL)
- *c = s->check;
- if (s->mode == BTREE || s->mode == DTREE)
- ZFREE(z, s->sub.trees.blens);
- if (s->mode == CODES)
- {
- inflate_codes_free(s->sub.decode.codes, z);
- inflate_trees_free(s->sub.decode.td, z);
- inflate_trees_free(s->sub.decode.tl, z);
- }
- s->mode = TYPE;
- s->bitk = 0;
- s->bitb = 0;
- s->read = s->write = s->window;
- if (s->checkfn != Z_NULL)
- z->adler = s->check = (*s->checkfn)(0L, Z_NULL, 0);
- Trace((stderr, "inflate: blocks reset\n"));
-}
-
-
-inflate_blocks_statef *inflate_blocks_new(z, c, w)
-z_streamp z;
-check_func c;
-uInt w;
-{
- inflate_blocks_statef *s;
-
- if ((s = (inflate_blocks_statef *)ZALLOC
- (z,1,sizeof(struct inflate_blocks_state))) == Z_NULL)
- return s;
- if ((s->window = (Bytef *)ZALLOC(z, 1, w)) == Z_NULL)
- {
- ZFREE(z, s);
- return Z_NULL;
- }
- s->end = s->window + w;
- s->checkfn = c;
- s->mode = TYPE;
- Trace((stderr, "inflate: blocks allocated\n"));
- inflate_blocks_reset(s, z, &s->check);
- return s;
-}
-
-
-#ifdef DEBUG_ZLIB
- extern uInt inflate_hufts;
-#endif
-int inflate_blocks(s, z, r)
-inflate_blocks_statef *s;
-z_streamp z;
-int r;
-{
- uInt t; /* temporary storage */
- uLong b; /* bit buffer */
- uInt k; /* bits in bit buffer */
- Bytef *p; /* input data pointer */
- uInt n; /* bytes available there */
- Bytef *q; /* output window write pointer */
- uInt m; /* bytes to end of window or read pointer */
-
- /* copy input/output information to locals (UPDATE macro restores) */
- LOAD
-
- /* process input based on current state */
- while (1) switch (s->mode)
- {
- case TYPE:
- NEEDBITS(3)
- t = (uInt)b & 7;
- s->last = t & 1;
- switch (t >> 1)
- {
- case 0: /* stored */
- Trace((stderr, "inflate: stored block%s\n",
- s->last ? " (last)" : ""));
- DUMPBITS(3)
- t = k & 7; /* go to byte boundary */
- DUMPBITS(t)
- s->mode = LENS; /* get length of stored block */
- break;
- case 1: /* fixed */
- Trace((stderr, "inflate: fixed codes block%s\n",
- s->last ? " (last)" : ""));
- {
- uInt bl, bd;
- inflate_huft *tl, *td;
-
- inflate_trees_fixed(&bl, &bd, &tl, &td);
- s->sub.decode.codes = inflate_codes_new(bl, bd, tl, td, z);
- if (s->sub.decode.codes == Z_NULL)
- {
- r = Z_MEM_ERROR;
- LEAVE
- }
- s->sub.decode.tl = Z_NULL; /* don't try to free these */
- s->sub.decode.td = Z_NULL;
- }
- DUMPBITS(3)
- s->mode = CODES;
- break;
- case 2: /* dynamic */
- Trace((stderr, "inflate: dynamic codes block%s\n",
- s->last ? " (last)" : ""));
- DUMPBITS(3)
- s->mode = TABLE;
- break;
- case 3: /* illegal */
- DUMPBITS(3)
- s->mode = BADB;
- z->msg = (char*)"invalid block type";
- r = Z_DATA_ERROR;
- LEAVE
- }
- break;
- case LENS:
- NEEDBITS(32)
- if ((((~b) >> 16) & 0xffff) != (b & 0xffff))
- {
- s->mode = BADB;
- z->msg = (char*)"invalid stored block lengths";
- r = Z_DATA_ERROR;
- LEAVE
- }
- s->sub.left = (uInt)b & 0xffff;
- b = k = 0; /* dump bits */
- Tracev((stderr, "inflate: stored length %u\n", s->sub.left));
- s->mode = s->sub.left ? STORED : (s->last ? DRY : TYPE);
- break;
- case STORED:
- if (n == 0)
- LEAVE
- NEEDOUT
- t = s->sub.left;
- if (t > n) t = n;
- if (t > m) t = m;
- zmemcpy(q, p, t);
- p += t; n -= t;
- q += t; m -= t;
- if ((s->sub.left -= t) != 0)
- break;
- Tracev((stderr, "inflate: stored end, %lu total out\n",
- z->total_out + (q >= s->read ? q - s->read :
- (s->end - s->read) + (q - s->window))));
- s->mode = s->last ? DRY : TYPE;
- break;
- case TABLE:
- NEEDBITS(14)
- s->sub.trees.table = t = (uInt)b & 0x3fff;
-#ifndef PKZIP_BUG_WORKAROUND
- if ((t & 0x1f) > 29 || ((t >> 5) & 0x1f) > 29)
- {
- s->mode = BADB;
- z->msg = (char*)"too many length or distance symbols";
- r = Z_DATA_ERROR;
- LEAVE
- }
-#endif
- t = 258 + (t & 0x1f) + ((t >> 5) & 0x1f);
- if (t < 19)
- t = 19;
- if ((s->sub.trees.blens = (uIntf*)ZALLOC(z, t, sizeof(uInt))) == Z_NULL)
- {
- r = Z_MEM_ERROR;
- LEAVE
- }
- DUMPBITS(14)
- s->sub.trees.index = 0;
- Tracev((stderr, "inflate: table sizes ok\n"));
- s->mode = BTREE;
- case BTREE:
- while (s->sub.trees.index < 4 + (s->sub.trees.table >> 10))
- {
- NEEDBITS(3)
- s->sub.trees.blens[border[s->sub.trees.index++]] = (uInt)b & 7;
- DUMPBITS(3)
- }
- while (s->sub.trees.index < 19)
- s->sub.trees.blens[border[s->sub.trees.index++]] = 0;
- s->sub.trees.bb = 7;
- t = inflate_trees_bits(s->sub.trees.blens, &s->sub.trees.bb,
- &s->sub.trees.tb, z);
- if (t != Z_OK)
- {
- ZFREE(z, s->sub.trees.blens);
- r = t;
- if (r == Z_DATA_ERROR)
- s->mode = BADB;
- LEAVE
- }
- s->sub.trees.index = 0;
- Tracev((stderr, "inflate: bits tree ok\n"));
- s->mode = DTREE;
- case DTREE:
- while (t = s->sub.trees.table,
- s->sub.trees.index < 258 + (t & 0x1f) + ((t >> 5) & 0x1f))
- {
- inflate_huft *h;
- uInt i, j, c;
-
- t = s->sub.trees.bb;
- NEEDBITS(t)
- h = s->sub.trees.tb + ((uInt)b & inflate_mask[t]);
- t = h->word.what.Bits;
- c = h->more.Base;
- if (c < 16)
- {
- DUMPBITS(t)
- s->sub.trees.blens[s->sub.trees.index++] = c;
- }
- else /* c == 16..18 */
- {
- i = c == 18 ? 7 : c - 14;
- j = c == 18 ? 11 : 3;
- NEEDBITS(t + i)
- DUMPBITS(t)
- j += (uInt)b & inflate_mask[i];
- DUMPBITS(i)
- i = s->sub.trees.index;
- t = s->sub.trees.table;
- if (i + j > 258 + (t & 0x1f) + ((t >> 5) & 0x1f) ||
- (c == 16 && i < 1))
- {
- inflate_trees_free(s->sub.trees.tb, z);
- ZFREE(z, s->sub.trees.blens);
- s->mode = BADB;
- z->msg = (char*)"invalid bit length repeat";
- r = Z_DATA_ERROR;
- LEAVE
- }
- c = c == 16 ? s->sub.trees.blens[i - 1] : 0;
- do {
- s->sub.trees.blens[i++] = c;
- } while (--j);
- s->sub.trees.index = i;
- }
- }
- inflate_trees_free(s->sub.trees.tb, z);
- s->sub.trees.tb = Z_NULL;
- {
- uInt bl, bd;
- inflate_huft *tl, *td;
- inflate_codes_statef *c;
-
- bl = 9; /* must be <= 9 for lookahead assumptions */
- bd = 6; /* must be <= 9 for lookahead assumptions */
- t = s->sub.trees.table;
-#ifdef DEBUG_ZLIB
- inflate_hufts = 0;
-#endif
- t = inflate_trees_dynamic(257 + (t & 0x1f), 1 + ((t >> 5) & 0x1f),
- s->sub.trees.blens, &bl, &bd, &tl, &td, z);
- ZFREE(z, s->sub.trees.blens);
- if (t != Z_OK)
- {
- if (t == (uInt)Z_DATA_ERROR)
- s->mode = BADB;
- r = t;
- LEAVE
- }
- Tracev((stderr, "inflate: trees ok, %d * %d bytes used\n",
- inflate_hufts, sizeof(inflate_huft)));
- if ((c = inflate_codes_new(bl, bd, tl, td, z)) == Z_NULL)
- {
- inflate_trees_free(td, z);
- inflate_trees_free(tl, z);
- r = Z_MEM_ERROR;
- LEAVE
- }
- s->sub.decode.codes = c;
- s->sub.decode.tl = tl;
- s->sub.decode.td = td;
- }
- s->mode = CODES;
- case CODES:
- UPDATE
- if ((r = inflate_codes(s, z, r)) != Z_STREAM_END)
- return inflate_flush(s, z, r);
- r = Z_OK;
- inflate_codes_free(s->sub.decode.codes, z);
- inflate_trees_free(s->sub.decode.td, z);
- inflate_trees_free(s->sub.decode.tl, z);
- LOAD
- Tracev((stderr, "inflate: codes end, %lu total out\n",
- z->total_out + (q >= s->read ? q - s->read :
- (s->end - s->read) + (q - s->window))));
- if (!s->last)
- {
- s->mode = TYPE;
- break;
- }
- if (k > 7) /* return unused byte, if any */
- {
- Assert(k < 16, "inflate_codes grabbed too many bytes")
- k -= 8;
- n++;
- p--; /* can always return one */
- }
- s->mode = DRY;
- case DRY:
- FLUSH
- if (s->read != s->write)
- LEAVE
- s->mode = DONEB;
- case DONEB:
- r = Z_STREAM_END;
- LEAVE
- case BADB:
- r = Z_DATA_ERROR;
- LEAVE
- default:
- r = Z_STREAM_ERROR;
- LEAVE
- }
-}
-
-
-int inflate_blocks_free(s, z, c)
-inflate_blocks_statef *s;
-z_streamp z;
-uLongf *c;
-{
- inflate_blocks_reset(s, z, c);
- ZFREE(z, s->window);
- ZFREE(z, s);
- Trace((stderr, "inflate: blocks freed\n"));
- return Z_OK;
-}
-
-
-void inflate_set_dictionary(s, d, n)
-inflate_blocks_statef *s;
-const Bytef *d;
-uInt n;
-{
- zmemcpy((charf *)s->window, d, n);
- s->read = s->write = s->window + n;
-}
-
-/*
- * This subroutine adds the data at next_in/avail_in to the output history
- * without performing any output. The output buffer must be "caught up";
- * i.e. no pending output (hence s->read equals s->write), and the state must
- * be BLOCKS (i.e. we should be willing to see the start of a series of
- * BLOCKS). On exit, the output will also be caught up, and the checksum
- * will have been updated if need be.
- */
-int inflate_addhistory(s, z)
-inflate_blocks_statef *s;
-z_stream *z;
-{
- uLong b; /* bit buffer */ /* NOT USED HERE */
- uInt k; /* bits in bit buffer */ /* NOT USED HERE */
- uInt t; /* temporary storage */
- Bytef *p; /* input data pointer */
- uInt n; /* bytes available there */
- Bytef *q; /* output window write pointer */
- uInt m; /* bytes to end of window or read pointer */
-
- if (s->read != s->write)
- return Z_STREAM_ERROR;
- if (s->mode != TYPE)
- return Z_DATA_ERROR;
-
- /* we're ready to rock */
- LOAD
- /* while there is input ready, copy to output buffer, moving
- * pointers as needed.
- */
- while (n) {
- t = n; /* how many to do */
- /* is there room until end of buffer? */
- if (t > m) t = m;
- /* update check information */
- if (s->checkfn != Z_NULL)
- s->check = (*s->checkfn)(s->check, q, t);
- zmemcpy(q, p, t);
- q += t;
- p += t;
- n -= t;
- z->total_out += t;
- s->read = q; /* drag read pointer forward */
-/* WWRAP */ /* expand WWRAP macro by hand to handle s->read */
- if (q == s->end) {
- s->read = q = s->window;
- m = WAVAIL;
- }
- }
- UPDATE
- return Z_OK;
-}
-
-
-/*
- * At the end of a Deflate-compressed PPP packet, we expect to have seen
- * a `stored' block type value but not the (zero) length bytes.
- */
-int inflate_packet_flush(s)
- inflate_blocks_statef *s;
-{
- if (s->mode != LENS)
- return Z_DATA_ERROR;
- s->mode = TYPE;
- return Z_OK;
-}
-/* --- infblock.c */
-
-/* +++ inftrees.c */
-/* inftrees.c -- generate Huffman trees for efficient decoding
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* #include "zutil.h" */
-/* #include "inftrees.h" */
-
-char inflate_copyright[] = " inflate 1.0.4 Copyright 1995-1996 Mark Adler ";
-/*
- If you use the zlib library in a product, an acknowledgment is welcome
- in the documentation of your product. If for some reason you cannot
- include such an acknowledgment, I would appreciate that you keep this
- copyright string in the executable of your product.
- */
-
-#ifndef NO_DUMMY_DECL
-struct internal_state {int dummy;}; /* for buggy compilers */
-#endif
-
-/* simplify the use of the inflate_huft type with some defines */
-#define base more.Base
-#define next more.Next
-#define exop word.what.Exop
-#define bits word.what.Bits
-
-
-local int huft_build OF((
- uIntf *, /* code lengths in bits */
- uInt, /* number of codes */
- uInt, /* number of "simple" codes */
- const uIntf *, /* list of base values for non-simple codes */
- const uIntf *, /* list of extra bits for non-simple codes */
- inflate_huft * FAR*,/* result: starting table */
- uIntf *, /* maximum lookup bits (returns actual) */
- z_streamp )); /* for zalloc function */
-
-local voidpf falloc OF((
- voidpf, /* opaque pointer (not used) */
- uInt, /* number of items */
- uInt)); /* size of item */
-
-/* Tables for deflate from PKZIP's appnote.txt. */
-local const uInt cplens[31] = { /* Copy lengths for literal codes 257..285 */
- 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,
- 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0};
- /* see note #13 above about 258 */
-local const uInt cplext[31] = { /* Extra bits for literal codes 257..285 */
- 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2,
- 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 112, 112}; /* 112==invalid */
-local const uInt cpdist[30] = { /* Copy offsets for distance codes 0..29 */
- 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
- 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
- 8193, 12289, 16385, 24577};
-local const uInt cpdext[30] = { /* Extra bits for distance codes */
- 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6,
- 7, 7, 8, 8, 9, 9, 10, 10, 11, 11,
- 12, 12, 13, 13};
-
-/*
- Huffman code decoding is performed using a multi-level table lookup.
- The fastest way to decode is to simply build a lookup table whose
- size is determined by the longest code. However, the time it takes
- to build this table can also be a factor if the data being decoded
- is not very long. The most common codes are necessarily the
- shortest codes, so those codes dominate the decoding time, and hence
- the speed. The idea is you can have a shorter table that decodes the
- shorter, more probable codes, and then point to subsidiary tables for
- the longer codes. The time it costs to decode the longer codes is
- then traded against the time it takes to make longer tables.
-
- This results of this trade are in the variables lbits and dbits
- below. lbits is the number of bits the first level table for literal/
- length codes can decode in one step, and dbits is the same thing for
- the distance codes. Subsequent tables are also less than or equal to
- those sizes. These values may be adjusted either when all of the
- codes are shorter than that, in which case the longest code length in
- bits is used, or when the shortest code is *longer* than the requested
- table size, in which case the length of the shortest code in bits is
- used.
-
- There are two different values for the two tables, since they code a
- different number of possibilities each. The literal/length table
- codes 286 possible values, or in a flat code, a little over eight
- bits. The distance table codes 30 possible values, or a little less
- than five bits, flat. The optimum values for speed end up being
- about one bit more than those, so lbits is 8+1 and dbits is 5+1.
- The optimum values may differ though from machine to machine, and
- possibly even between compilers. Your mileage may vary.
- */
-
-
-/* If BMAX needs to be larger than 16, then h and x[] should be uLong. */
-#define BMAX 15 /* maximum bit length of any code */
-#define N_MAX 288 /* maximum number of codes in any set */
-
-#ifdef DEBUG_ZLIB
- uInt inflate_hufts;
-#endif
-
-local int huft_build(b, n, s, d, e, t, m, zs)
-uIntf *b; /* code lengths in bits (all assumed <= BMAX) */
-uInt n; /* number of codes (assumed <= N_MAX) */
-uInt s; /* number of simple-valued codes (0..s-1) */
-const uIntf *d; /* list of base values for non-simple codes */
-const uIntf *e; /* list of extra bits for non-simple codes */
-inflate_huft * FAR *t; /* result: starting table */
-uIntf *m; /* maximum lookup bits, returns actual */
-z_streamp zs; /* for zalloc function */
-/* Given a list of code lengths and a maximum table size, make a set of
- tables to decode that set of codes. Return Z_OK on success, Z_BUF_ERROR
- if the given code set is incomplete (the tables are still built in this
- case), Z_DATA_ERROR if the input is invalid (an over-subscribed set of
- lengths), or Z_MEM_ERROR if not enough memory. */
-{
-
- uInt a; /* counter for codes of length k */
- uInt c[BMAX+1]; /* bit length count table */
- uInt f; /* i repeats in table every f entries */
- int g; /* maximum code length */
- int h; /* table level */
- register uInt i; /* counter, current code */
- register uInt j; /* counter */
- register int k; /* number of bits in current code */
- int l; /* bits per table (returned in m) */
- register uIntf *p; /* pointer into c[], b[], or v[] */
- inflate_huft *q; /* points to current table */
- struct inflate_huft_s r; /* table entry for structure assignment */
- inflate_huft *u[BMAX]; /* table stack */
- uInt v[N_MAX]; /* values in order of bit length */
- register int w; /* bits before this table == (l * h) */
- uInt x[BMAX+1]; /* bit offsets, then code stack */
- uIntf *xp; /* pointer into x */
- int y; /* number of dummy codes added */
- uInt z; /* number of entries in current table */
-
-
- /* Generate counts for each bit length */
- p = c;
-#define C0 *p++ = 0;
-#define C2 C0 C0 C0 C0
-#define C4 C2 C2 C2 C2
- C4 /* clear c[]--assume BMAX+1 is 16 */
- p = b; i = n;
- do {
- c[*p++]++; /* assume all entries <= BMAX */
- } while (--i);
- if (c[0] == n) /* null input--all zero length codes */
- {
- *t = (inflate_huft *)Z_NULL;
- *m = 0;
- return Z_OK;
- }
-
-
- /* Find minimum and maximum length, bound *m by those */
- l = *m;
- for (j = 1; j <= BMAX; j++)
- if (c[j])
- break;
- k = j; /* minimum code length */
- if ((uInt)l < j)
- l = j;
- for (i = BMAX; i; i--)
- if (c[i])
- break;
- g = i; /* maximum code length */
- if ((uInt)l > i)
- l = i;
- *m = l;
-
-
- /* Adjust last length count to fill out codes, if needed */
- for (y = 1 << j; j < i; j++, y <<= 1)
- if ((y -= c[j]) < 0)
- return Z_DATA_ERROR;
- if ((y -= c[i]) < 0)
- return Z_DATA_ERROR;
- c[i] += y;
-
-
- /* Generate starting offsets into the value table for each length */
- x[1] = j = 0;
- p = c + 1; xp = x + 2;
- while (--i) { /* note that i == g from above */
- *xp++ = (j += *p++);
- }
-
-
- /* Make a table of values in order of bit lengths */
- p = b; i = 0;
- do {
- if ((j = *p++) != 0)
- v[x[j]++] = i;
- } while (++i < n);
- n = x[g]; /* set n to length of v */
-
-
- /* Generate the Huffman codes and for each, make the table entries */
- x[0] = i = 0; /* first Huffman code is zero */
- p = v; /* grab values in bit order */
- h = -1; /* no tables yet--level -1 */
- w = -l; /* bits decoded == (l * h) */
- u[0] = (inflate_huft *)Z_NULL; /* just to keep compilers happy */
- q = (inflate_huft *)Z_NULL; /* ditto */
- z = 0; /* ditto */
-
- /* go through the bit lengths (k already is bits in shortest code) */
- for (; k <= g; k++)
- {
- a = c[k];
- while (a--)
- {
- /* here i is the Huffman code of length k bits for value *p */
- /* make tables up to required level */
- while (k > w + l)
- {
- h++;
- w += l; /* previous table always l bits */
-
- /* compute minimum size table less than or equal to l bits */
- z = g - w;
- z = z > (uInt)l ? l : z; /* table size upper limit */
- if ((f = 1 << (j = k - w)) > a + 1) /* try a k-w bit table */
- { /* too few codes for k-w bit table */
- f -= a + 1; /* deduct codes from patterns left */
- xp = c + k;
- if (j < z)
- while (++j < z) /* try smaller tables up to z bits */
- {
- if ((f <<= 1) <= *++xp)
- break; /* enough codes to use up j bits */
- f -= *xp; /* else deduct codes from patterns */
- }
- }
- z = 1 << j; /* table entries for j-bit table */
-
- /* allocate and link in new table */
- if ((q = (inflate_huft *)ZALLOC
- (zs,z + 1,sizeof(inflate_huft))) == Z_NULL)
- {
- if (h)
- inflate_trees_free(u[0], zs);
- return Z_MEM_ERROR; /* not enough memory */
- }
-#ifdef DEBUG_ZLIB
- inflate_hufts += z + 1;
-#endif
- *t = q + 1; /* link to list for huft_free() */
- *(t = &(q->next)) = Z_NULL;
- u[h] = ++q; /* table starts after link */
-
- /* connect to last table, if there is one */
- if (h)
- {
- x[h] = i; /* save pattern for backing up */
- r.bits = (Byte)l; /* bits to dump before this table */
- r.exop = (Byte)j; /* bits in this table */
- r.next = q; /* pointer to this table */
- j = i >> (w - l); /* (get around Turbo C bug) */
- u[h-1][j] = r; /* connect to last table */
- }
- }
-
- /* set up table entry in r */
- r.bits = (Byte)(k - w);
- if (p >= v + n)
- r.exop = 128 + 64; /* out of values--invalid code */
- else if (*p < s)
- {
- r.exop = (Byte)(*p < 256 ? 0 : 32 + 64); /* 256 is end-of-block */
- r.base = *p++; /* simple code is just the value */
- }
- else
- {
- r.exop = (Byte)(e[*p - s] + 16 + 64);/* non-simple--look up in lists */
- r.base = d[*p++ - s];
- }
-
- /* fill code-like entries with r */
- f = 1 << (k - w);
- for (j = i >> w; j < z; j += f)
- q[j] = r;
-
- /* backwards increment the k-bit code i */
- for (j = 1 << (k - 1); i & j; j >>= 1)
- i ^= j;
- i ^= j;
-
- /* backup over finished tables */
- while ((i & ((1 << w) - 1)) != x[h])
- {
- h--; /* don't need to update q */
- w -= l;
- }
- }
- }
-
-
- /* Return Z_BUF_ERROR if we were given an incomplete table */
- return y != 0 && g != 1 ? Z_BUF_ERROR : Z_OK;
-}
-
-
-int inflate_trees_bits(c, bb, tb, z)
-uIntf *c; /* 19 code lengths */
-uIntf *bb; /* bits tree desired/actual depth */
-inflate_huft * FAR *tb; /* bits tree result */
-z_streamp z; /* for zfree function */
-{
- int r;
-
- r = huft_build(c, 19, 19, (uIntf*)Z_NULL, (uIntf*)Z_NULL, tb, bb, z);
- if (r == Z_DATA_ERROR)
- z->msg = (char*)"oversubscribed dynamic bit lengths tree";
- else if (r == Z_BUF_ERROR || *bb == 0)
- {
- inflate_trees_free(*tb, z);
- z->msg = (char*)"incomplete dynamic bit lengths tree";
- r = Z_DATA_ERROR;
- }
- return r;
-}
-
-
-int inflate_trees_dynamic(nl, nd, c, bl, bd, tl, td, z)
-uInt nl; /* number of literal/length codes */
-uInt nd; /* number of distance codes */
-uIntf *c; /* that many (total) code lengths */
-uIntf *bl; /* literal desired/actual bit depth */
-uIntf *bd; /* distance desired/actual bit depth */
-inflate_huft * FAR *tl; /* literal/length tree result */
-inflate_huft * FAR *td; /* distance tree result */
-z_streamp z; /* for zfree function */
-{
- int r;
-
- /* build literal/length tree */
- r = huft_build(c, nl, 257, cplens, cplext, tl, bl, z);
- if (r != Z_OK || *bl == 0)
- {
- if (r == Z_DATA_ERROR)
- z->msg = (char*)"oversubscribed literal/length tree";
- else if (r != Z_MEM_ERROR)
- {
- inflate_trees_free(*tl, z);
- z->msg = (char*)"incomplete literal/length tree";
- r = Z_DATA_ERROR;
- }
- return r;
- }
-
- /* build distance tree */
- r = huft_build(c + nl, nd, 0, cpdist, cpdext, td, bd, z);
- if (r != Z_OK || (*bd == 0 && nl > 257))
- {
- if (r == Z_DATA_ERROR)
- z->msg = (char*)"oversubscribed distance tree";
- else if (r == Z_BUF_ERROR) {
-#ifdef PKZIP_BUG_WORKAROUND
- r = Z_OK;
- }
-#else
- inflate_trees_free(*td, z);
- z->msg = (char*)"incomplete distance tree";
- r = Z_DATA_ERROR;
- }
- else if (r != Z_MEM_ERROR)
- {
- z->msg = (char*)"empty distance tree with lengths";
- r = Z_DATA_ERROR;
- }
- inflate_trees_free(*tl, z);
- return r;
-#endif
- }
-
- /* done */
- return Z_OK;
-}
-
-
-/* build fixed tables only once--keep them here */
-local int fixed_built = 0;
-#define FIXEDH 530 /* number of hufts used by fixed tables */
-local inflate_huft fixed_mem[FIXEDH];
-local uInt fixed_bl;
-local uInt fixed_bd;
-local inflate_huft *fixed_tl;
-local inflate_huft *fixed_td;
-
-
-local voidpf falloc(q, n, s)
-voidpf q; /* opaque pointer */
-uInt n; /* number of items */
-uInt s; /* size of item */
-{
- Assert(s == sizeof(inflate_huft) && n <= *(intf *)q,
- "inflate_trees falloc overflow");
- *(intf *)q -= n+s-s; /* s-s to avoid warning */
- return (voidpf)(fixed_mem + *(intf *)q);
-}
-
-
-int inflate_trees_fixed(bl, bd, tl, td)
-uIntf *bl; /* literal desired/actual bit depth */
-uIntf *bd; /* distance desired/actual bit depth */
-inflate_huft * FAR *tl; /* literal/length tree result */
-inflate_huft * FAR *td; /* distance tree result */
-{
- /* build fixed tables if not already (multiple overlapped executions ok) */
- if (!fixed_built)
- {
- int k; /* temporary variable */
- unsigned c[288]; /* length list for huft_build */
- z_stream z; /* for falloc function */
- int f = FIXEDH; /* number of hufts left in fixed_mem */
-
- /* set up fake z_stream for memory routines */
- z.zalloc = falloc;
- z.zfree = Z_NULL;
- z.opaque = (voidpf)&f;
-
- /* literal table */
- for (k = 0; k < 144; k++)
- c[k] = 8;
- for (; k < 256; k++)
- c[k] = 9;
- for (; k < 280; k++)
- c[k] = 7;
- for (; k < 288; k++)
- c[k] = 8;
- fixed_bl = 7;
- huft_build(c, 288, 257, cplens, cplext, &fixed_tl, &fixed_bl, &z);
-
- /* distance table */
- for (k = 0; k < 30; k++)
- c[k] = 5;
- fixed_bd = 5;
- huft_build(c, 30, 0, cpdist, cpdext, &fixed_td, &fixed_bd, &z);
-
- /* done */
- Assert(f == 0, "invalid build of fixed tables");
- fixed_built = 1;
- }
- *bl = fixed_bl;
- *bd = fixed_bd;
- *tl = fixed_tl;
- *td = fixed_td;
- return Z_OK;
-}
-
-
-int inflate_trees_free(t, z)
-inflate_huft *t; /* table to free */
-z_streamp z; /* for zfree function */
-/* Free the malloc'ed tables built by huft_build(), which makes a linked
- list of the tables it made, with the links in a dummy first entry of
- each table. */
-{
- register inflate_huft *p, *q, *r;
-
- /* Reverse linked list */
- p = Z_NULL;
- q = t;
- while (q != Z_NULL)
- {
- r = (q - 1)->next;
- (q - 1)->next = p;
- p = q;
- q = r;
- }
- /* Go through linked list, freeing from the malloced (t[-1]) address. */
- while (p != Z_NULL)
- {
- q = (--p)->next;
- ZFREE(z,p);
- p = q;
- }
- return Z_OK;
-}
-/* --- inftrees.c */
-
-/* +++ infcodes.c */
-/* infcodes.c -- process literals and length/distance pairs
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* #include "zutil.h" */
-/* #include "inftrees.h" */
-/* #include "infblock.h" */
-/* #include "infcodes.h" */
-/* #include "infutil.h" */
-
-/* +++ inffast.h */
-/* inffast.h -- header to use inffast.c
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-extern int inflate_fast OF((
- uInt,
- uInt,
- inflate_huft *,
- inflate_huft *,
- inflate_blocks_statef *,
- z_streamp ));
-/* --- inffast.h */
-
-/* simplify the use of the inflate_huft type with some defines */
-#define base more.Base
-#define next more.Next
-#define exop word.what.Exop
-#define bits word.what.Bits
-
-/* inflate codes private state */
-struct inflate_codes_state {
-
- /* mode */
- enum { /* waiting for "i:"=input, "o:"=output, "x:"=nothing */
- START, /* x: set up for LEN */
- LEN, /* i: get length/literal/eob next */
- LENEXT, /* i: getting length extra (have base) */
- DIST, /* i: get distance next */
- DISTEXT, /* i: getting distance extra */
- COPY, /* o: copying bytes in window, waiting for space */
- LIT, /* o: got literal, waiting for output space */
- WASH, /* o: got eob, possibly still output waiting */
- END, /* x: got eob and all data flushed */
- BADCODE} /* x: got error */
- mode; /* current inflate_codes mode */
-
- /* mode dependent information */
- uInt len;
- union {
- struct {
- inflate_huft *tree; /* pointer into tree */
- uInt need; /* bits needed */
- } code; /* if LEN or DIST, where in tree */
- uInt lit; /* if LIT, literal */
- struct {
- uInt get; /* bits to get for extra */
- uInt dist; /* distance back to copy from */
- } copy; /* if EXT or COPY, where and how much */
- } sub; /* submode */
-
- /* mode independent information */
- Byte lbits; /* ltree bits decoded per branch */
- Byte dbits; /* dtree bits decoder per branch */
- inflate_huft *ltree; /* literal/length/eob tree */
- inflate_huft *dtree; /* distance tree */
-
-};
-
-
-inflate_codes_statef *inflate_codes_new(bl, bd, tl, td, z)
-uInt bl, bd;
-inflate_huft *tl;
-inflate_huft *td; /* need separate declaration for Borland C++ */
-z_streamp z;
-{
- inflate_codes_statef *c;
-
- if ((c = (inflate_codes_statef *)
- ZALLOC(z,1,sizeof(struct inflate_codes_state))) != Z_NULL)
- {
- c->mode = START;
- c->lbits = (Byte)bl;
- c->dbits = (Byte)bd;
- c->ltree = tl;
- c->dtree = td;
- Tracev((stderr, "inflate: codes new\n"));
- }
- return c;
-}
-
-
-int inflate_codes(s, z, r)
-inflate_blocks_statef *s;
-z_streamp z;
-int r;
-{
- uInt j; /* temporary storage */
- inflate_huft *t; /* temporary pointer */
- uInt e; /* extra bits or operation */
- uLong b; /* bit buffer */
- uInt k; /* bits in bit buffer */
- Bytef *p; /* input data pointer */
- uInt n; /* bytes available there */
- Bytef *q; /* output window write pointer */
- uInt m; /* bytes to end of window or read pointer */
- Bytef *f; /* pointer to copy strings from */
- inflate_codes_statef *c = s->sub.decode.codes; /* codes state */
-
- /* copy input/output information to locals (UPDATE macro restores) */
- LOAD
-
- /* process input and output based on current state */
- while (1) switch (c->mode)
- { /* waiting for "i:"=input, "o:"=output, "x:"=nothing */
- case START: /* x: set up for LEN */
-#ifndef SLOW
- if (m >= 258 && n >= 10)
- {
- UPDATE
- r = inflate_fast(c->lbits, c->dbits, c->ltree, c->dtree, s, z);
- LOAD
- if (r != Z_OK)
- {
- c->mode = r == Z_STREAM_END ? WASH : BADCODE;
- break;
- }
- }
-#endif /* !SLOW */
- c->sub.code.need = c->lbits;
- c->sub.code.tree = c->ltree;
- c->mode = LEN;
- case LEN: /* i: get length/literal/eob next */
- j = c->sub.code.need;
- NEEDBITS(j)
- t = c->sub.code.tree + ((uInt)b & inflate_mask[j]);
- DUMPBITS(t->bits)
- e = (uInt)(t->exop);
- if (e == 0) /* literal */
- {
- c->sub.lit = t->base;
- Tracevv((stderr, t->base >= 0x20 && t->base < 0x7f ?
- "inflate: literal '%c'\n" :
- "inflate: literal 0x%02x\n", t->base));
- c->mode = LIT;
- break;
- }
- if (e & 16) /* length */
- {
- c->sub.copy.get = e & 15;
- c->len = t->base;
- c->mode = LENEXT;
- break;
- }
- if ((e & 64) == 0) /* next table */
- {
- c->sub.code.need = e;
- c->sub.code.tree = t->next;
- break;
- }
- if (e & 32) /* end of block */
- {
- Tracevv((stderr, "inflate: end of block\n"));
- c->mode = WASH;
- break;
- }
- c->mode = BADCODE; /* invalid code */
- z->msg = (char*)"invalid literal/length code";
- r = Z_DATA_ERROR;
- LEAVE
- case LENEXT: /* i: getting length extra (have base) */
- j = c->sub.copy.get;
- NEEDBITS(j)
- c->len += (uInt)b & inflate_mask[j];
- DUMPBITS(j)
- c->sub.code.need = c->dbits;
- c->sub.code.tree = c->dtree;
- Tracevv((stderr, "inflate: length %u\n", c->len));
- c->mode = DIST;
- case DIST: /* i: get distance next */
- j = c->sub.code.need;
- NEEDBITS(j)
- t = c->sub.code.tree + ((uInt)b & inflate_mask[j]);
- DUMPBITS(t->bits)
- e = (uInt)(t->exop);
- if (e & 16) /* distance */
- {
- c->sub.copy.get = e & 15;
- c->sub.copy.dist = t->base;
- c->mode = DISTEXT;
- break;
- }
- if ((e & 64) == 0) /* next table */
- {
- c->sub.code.need = e;
- c->sub.code.tree = t->next;
- break;
- }
- c->mode = BADCODE; /* invalid code */
- z->msg = (char*)"invalid distance code";
- r = Z_DATA_ERROR;
- LEAVE
- case DISTEXT: /* i: getting distance extra */
- j = c->sub.copy.get;
- NEEDBITS(j)
- c->sub.copy.dist += (uInt)b & inflate_mask[j];
- DUMPBITS(j)
- Tracevv((stderr, "inflate: distance %u\n", c->sub.copy.dist));
- c->mode = COPY;
- case COPY: /* o: copying bytes in window, waiting for space */
-#ifndef __TURBOC__ /* Turbo C bug for following expression */
- f = (uInt)(q - s->window) < c->sub.copy.dist ?
- s->end - (c->sub.copy.dist - (q - s->window)) :
- q - c->sub.copy.dist;
-#else
- f = q - c->sub.copy.dist;
- if ((uInt)(q - s->window) < c->sub.copy.dist)
- f = s->end - (c->sub.copy.dist - (uInt)(q - s->window));
-#endif
- while (c->len)
- {
- NEEDOUT
- OUTBYTE(*f++)
- if (f == s->end)
- f = s->window;
- c->len--;
- }
- c->mode = START;
- break;
- case LIT: /* o: got literal, waiting for output space */
- NEEDOUT
- OUTBYTE(c->sub.lit)
- c->mode = START;
- break;
- case WASH: /* o: got eob, possibly more output */
- FLUSH
- if (s->read != s->write)
- LEAVE
- c->mode = END;
- case END:
- r = Z_STREAM_END;
- LEAVE
- case BADCODE: /* x: got error */
- r = Z_DATA_ERROR;
- LEAVE
- default:
- r = Z_STREAM_ERROR;
- LEAVE
- }
-}
-
-
-void inflate_codes_free(c, z)
-inflate_codes_statef *c;
-z_streamp z;
-{
- ZFREE(z, c);
- Tracev((stderr, "inflate: codes free\n"));
-}
-/* --- infcodes.c */
-
-/* +++ infutil.c */
-/* inflate_util.c -- data and routines common to blocks and codes
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* #include "zutil.h" */
-/* #include "infblock.h" */
-/* #include "inftrees.h" */
-/* #include "infcodes.h" */
-/* #include "infutil.h" */
-
-#ifndef NO_DUMMY_DECL
-struct inflate_codes_state {int dummy;}; /* for buggy compilers */
-#endif
-
-/* And'ing with mask[n] masks the lower n bits */
-uInt inflate_mask[17] = {
- 0x0000,
- 0x0001, 0x0003, 0x0007, 0x000f, 0x001f, 0x003f, 0x007f, 0x00ff,
- 0x01ff, 0x03ff, 0x07ff, 0x0fff, 0x1fff, 0x3fff, 0x7fff, 0xffff
-};
-
-
-/* copy as much as possible from the sliding window to the output area */
-int inflate_flush(s, z, r)
-inflate_blocks_statef *s;
-z_streamp z;
-int r;
-{
- uInt n;
- Bytef *p;
- Bytef *q;
-
- /* local copies of source and destination pointers */
- p = z->next_out;
- q = s->read;
-
- /* compute number of bytes to copy as far as end of window */
- n = (uInt)((q <= s->write ? s->write : s->end) - q);
- if (n > z->avail_out) n = z->avail_out;
- if (n && r == Z_BUF_ERROR) r = Z_OK;
-
- /* update counters */
- z->avail_out -= n;
- z->total_out += n;
-
- /* update check information */
- if (s->checkfn != Z_NULL)
- z->adler = s->check = (*s->checkfn)(s->check, q, n);
-
- /* copy as far as end of window */
- if (p != Z_NULL) {
- zmemcpy(p, q, n);
- p += n;
- }
- q += n;
-
- /* see if more to copy at beginning of window */
- if (q == s->end)
- {
- /* wrap pointers */
- q = s->window;
- if (s->write == s->end)
- s->write = s->window;
-
- /* compute bytes to copy */
- n = (uInt)(s->write - q);
- if (n > z->avail_out) n = z->avail_out;
- if (n && r == Z_BUF_ERROR) r = Z_OK;
-
- /* update counters */
- z->avail_out -= n;
- z->total_out += n;
-
- /* update check information */
- if (s->checkfn != Z_NULL)
- z->adler = s->check = (*s->checkfn)(s->check, q, n);
-
- /* copy */
- if (p != Z_NULL) {
- zmemcpy(p, q, n);
- p += n;
- }
- q += n;
- }
-
- /* update pointers */
- z->next_out = p;
- s->read = q;
-
- /* done */
- return r;
-}
-/* --- infutil.c */
-
-/* +++ inffast.c */
-/* inffast.c -- process literals and length/distance pairs fast
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* #include "zutil.h" */
-/* #include "inftrees.h" */
-/* #include "infblock.h" */
-/* #include "infcodes.h" */
-/* #include "infutil.h" */
-/* #include "inffast.h" */
-
-#ifndef NO_DUMMY_DECL
-struct inflate_codes_state {int dummy;}; /* for buggy compilers */
-#endif
-
-/* simplify the use of the inflate_huft type with some defines */
-#define base more.Base
-#define next more.Next
-#define exop word.what.Exop
-#define bits word.what.Bits
-
-/* macros for bit input with no checking and for returning unused bytes */
-#define GRABBITS(j) {while(k<(j)){b|=((uLong)NEXTBYTE)<<k;k+=8;}}
-#define UNGRAB {n+=(c=k>>3);p-=c;k&=7;}
-
-/* Called with number of bytes left to write in window at least 258
- (the maximum string length) and number of input bytes available
- at least ten. The ten bytes are six bytes for the longest length/
- distance pair plus four bytes for overloading the bit buffer. */
-
-int inflate_fast(bl, bd, tl, td, s, z)
-uInt bl, bd;
-inflate_huft *tl;
-inflate_huft *td; /* need separate declaration for Borland C++ */
-inflate_blocks_statef *s;
-z_streamp z;
-{
- inflate_huft *t; /* temporary pointer */
- uInt e; /* extra bits or operation */
- uLong b; /* bit buffer */
- uInt k; /* bits in bit buffer */
- Bytef *p; /* input data pointer */
- uInt n; /* bytes available there */
- Bytef *q; /* output window write pointer */
- uInt m; /* bytes to end of window or read pointer */
- uInt ml; /* mask for literal/length tree */
- uInt md; /* mask for distance tree */
- uInt c; /* bytes to copy */
- uInt d; /* distance back to copy from */
- Bytef *r; /* copy source pointer */
-
- /* load input, output, bit values */
- LOAD
-
- /* initialize masks */
- ml = inflate_mask[bl];
- md = inflate_mask[bd];
-
- /* do until not enough input or output space for fast loop */
- do { /* assume called with m >= 258 && n >= 10 */
- /* get literal/length code */
- GRABBITS(20) /* max bits for literal/length code */
- if ((e = (t = tl + ((uInt)b & ml))->exop) == 0)
- {
- DUMPBITS(t->bits)
- Tracevv((stderr, t->base >= 0x20 && t->base < 0x7f ?
- "inflate: * literal '%c'\n" :
- "inflate: * literal 0x%02x\n", t->base));
- *q++ = (Byte)t->base;
- m--;
- continue;
- }
- do {
- DUMPBITS(t->bits)
- if (e & 16)
- {
- /* get extra bits for length */
- e &= 15;
- c = t->base + ((uInt)b & inflate_mask[e]);
- DUMPBITS(e)
- Tracevv((stderr, "inflate: * length %u\n", c));
-
- /* decode distance base of block to copy */
- GRABBITS(15); /* max bits for distance code */
- e = (t = td + ((uInt)b & md))->exop;
- do {
- DUMPBITS(t->bits)
- if (e & 16)
- {
- /* get extra bits to add to distance base */
- e &= 15;
- GRABBITS(e) /* get extra bits (up to 13) */
- d = t->base + ((uInt)b & inflate_mask[e]);
- DUMPBITS(e)
- Tracevv((stderr, "inflate: * distance %u\n", d));
-
- /* do the copy */
- m -= c;
- if ((uInt)(q - s->window) >= d) /* offset before dest */
- { /* just copy */
- r = q - d;
- *q++ = *r++; c--; /* minimum count is three, */
- *q++ = *r++; c--; /* so unroll loop a little */
- }
- else /* else offset after destination */
- {
- e = d - (uInt)(q - s->window); /* bytes from offset to end */
- r = s->end - e; /* pointer to offset */
- if (c > e) /* if source crosses, */
- {
- c -= e; /* copy to end of window */
- do {
- *q++ = *r++;
- } while (--e);
- r = s->window; /* copy rest from start of window */
- }
- }
- do { /* copy all or what's left */
- *q++ = *r++;
- } while (--c);
- break;
- }
- else if ((e & 64) == 0)
- e = (t = t->next + ((uInt)b & inflate_mask[e]))->exop;
- else
- {
- z->msg = (char*)"invalid distance code";
- UNGRAB
- UPDATE
- return Z_DATA_ERROR;
- }
- } while (1);
- break;
- }
- if ((e & 64) == 0)
- {
- if ((e = (t = t->next + ((uInt)b & inflate_mask[e]))->exop) == 0)
- {
- DUMPBITS(t->bits)
- Tracevv((stderr, t->base >= 0x20 && t->base < 0x7f ?
- "inflate: * literal '%c'\n" :
- "inflate: * literal 0x%02x\n", t->base));
- *q++ = (Byte)t->base;
- m--;
- break;
- }
- }
- else if (e & 32)
- {
- Tracevv((stderr, "inflate: * end of block\n"));
- UNGRAB
- UPDATE
- return Z_STREAM_END;
- }
- else
- {
- z->msg = (char*)"invalid literal/length code";
- UNGRAB
- UPDATE
- return Z_DATA_ERROR;
- }
- } while (1);
- } while (m >= 258 && n >= 10);
-
- /* not enough input or output--restore pointers and return */
- UNGRAB
- UPDATE
- return Z_OK;
-}
-/* --- inffast.c */
-
-/* +++ zutil.c */
-/* zutil.c -- target dependent utility functions for the compression library
- * Copyright (C) 1995-1996 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* From: zutil.c,v 1.17 1996/07/24 13:41:12 me Exp $ */
-
-#ifdef DEBUG_ZLIB
-#include <stdio.h>
-#endif
-
-/* #include "zutil.h" */
-
-#ifndef NO_DUMMY_DECL
-struct internal_state {int dummy;}; /* for buggy compilers */
-#endif
-
-#ifndef STDC
-extern void exit OF((int));
-#endif
-
-const char *z_errmsg[10] = {
-"need dictionary", /* Z_NEED_DICT 2 */
-"stream end", /* Z_STREAM_END 1 */
-"", /* Z_OK 0 */
-"file error", /* Z_ERRNO (-1) */
-"stream error", /* Z_STREAM_ERROR (-2) */
-"data error", /* Z_DATA_ERROR (-3) */
-"insufficient memory", /* Z_MEM_ERROR (-4) */
-"buffer error", /* Z_BUF_ERROR (-5) */
-"incompatible version",/* Z_VERSION_ERROR (-6) */
-""};
-
-
-const char *zlibVersion()
-{
- return ZLIB_VERSION;
-}
-
-#ifdef DEBUG_ZLIB
-void z_error (m)
- char *m;
-{
- fprintf(stderr, "%s\n", m);
- exit(1);
-}
-#endif
-
-#ifndef HAVE_MEMCPY
-
-void zmemcpy(dest, source, len)
- Bytef* dest;
- Bytef* source;
- uInt len;
-{
- if (len == 0) return;
- do {
- *dest++ = *source++; /* ??? to be unrolled */
- } while (--len != 0);
-}
-
-int zmemcmp(s1, s2, len)
- Bytef* s1;
- Bytef* s2;
- uInt len;
-{
- uInt j;
-
- for (j = 0; j < len; j++) {
- if (s1[j] != s2[j]) return 2*(s1[j] > s2[j])-1;
- }
- return 0;
-}
-
-void zmemzero(dest, len)
- Bytef* dest;
- uInt len;
-{
- if (len == 0) return;
- do {
- *dest++ = 0; /* ??? to be unrolled */
- } while (--len != 0);
-}
-#endif
-
-#ifdef __TURBOC__
-#if (defined( __BORLANDC__) || !defined(SMALL_MEDIUM)) && !defined(__32BIT__)
-/* Small and medium model in Turbo C are for now limited to near allocation
- * with reduced MAX_WBITS and MAX_MEM_LEVEL
- */
-# define MY_ZCALLOC
-
-/* Turbo C malloc() does not allow dynamic allocation of 64K bytes
- * and farmalloc(64K) returns a pointer with an offset of 8, so we
- * must fix the pointer. Warning: the pointer must be put back to its
- * original form in order to free it, use zcfree().
- */
-
-#define MAX_PTR 10
-/* 10*64K = 640K */
-
-local int next_ptr = 0;
-
-typedef struct ptr_table_s {
- voidpf org_ptr;
- voidpf new_ptr;
-} ptr_table;
-
-local ptr_table table[MAX_PTR];
-/* This table is used to remember the original form of pointers
- * to large buffers (64K). Such pointers are normalized with a zero offset.
- * Since MSDOS is not a preemptive multitasking OS, this table is not
- * protected from concurrent access. This hack doesn't work anyway on
- * a protected system like OS/2. Use Microsoft C instead.
- */
-
-voidpf zcalloc (voidpf opaque, unsigned items, unsigned size)
-{
- voidpf buf = opaque; /* just to make some compilers happy */
- ulg bsize = (ulg)items*size;
-
- /* If we allocate less than 65520 bytes, we assume that farmalloc
- * will return a usable pointer which doesn't have to be normalized.
- */
- if (bsize < 65520L) {
- buf = farmalloc(bsize);
- if (*(ush*)&buf != 0) return buf;
- } else {
- buf = farmalloc(bsize + 16L);
- }
- if (buf == NULL || next_ptr >= MAX_PTR) return NULL;
- table[next_ptr].org_ptr = buf;
-
- /* Normalize the pointer to seg:0 */
- *((ush*)&buf+1) += ((ush)((uch*)buf-0) + 15) >> 4;
- *(ush*)&buf = 0;
- table[next_ptr++].new_ptr = buf;
- return buf;
-}
-
-void zcfree (voidpf opaque, voidpf ptr)
-{
- int n;
- if (*(ush*)&ptr != 0) { /* object < 64K */
- farfree(ptr);
- return;
- }
- /* Find the original pointer */
- for (n = 0; n < next_ptr; n++) {
- if (ptr != table[n].new_ptr) continue;
-
- farfree(table[n].org_ptr);
- while (++n < next_ptr) {
- table[n-1] = table[n];
- }
- next_ptr--;
- return;
- }
- ptr = opaque; /* just to make some compilers happy */
- Assert(0, "zcfree: ptr not found");
-}
-#endif
-#endif /* __TURBOC__ */
-
-
-#if defined(M_I86) && !defined(__32BIT__)
-/* Microsoft C in 16-bit mode */
-
-# define MY_ZCALLOC
-
-#if (!defined(_MSC_VER) || (_MSC_VER < 600))
-# define _halloc halloc
-# define _hfree hfree
-#endif
-
-voidpf zcalloc (voidpf opaque, unsigned items, unsigned size)
-{
- if (opaque) opaque = 0; /* to make compiler happy */
- return _halloc((long)items, size);
-}
-
-void zcfree (voidpf opaque, voidpf ptr)
-{
- if (opaque) opaque = 0; /* to make compiler happy */
- _hfree(ptr);
-}
-
-#endif /* MSC */
-
-
-#ifndef MY_ZCALLOC /* Any system without a special alloc function */
-
-#ifndef STDC
-extern voidp calloc OF((uInt items, uInt size));
-extern void free OF((voidpf ptr));
-#endif
-
-voidpf zcalloc (opaque, items, size)
- voidpf opaque;
- unsigned items;
- unsigned size;
-{
- if (opaque) items += size - size; /* make compiler happy */
- return (voidpf)calloc(items, size);
-}
-
-void zcfree (opaque, ptr)
- voidpf opaque;
- voidpf ptr;
-{
- free(ptr);
- if (opaque) return; /* make compiler happy */
-}
-
-#endif /* MY_ZCALLOC */
-/* --- zutil.c */
-
-/* +++ adler32.c */
-/* adler32.c -- compute the Adler-32 checksum of a data stream
- * Copyright (C) 1995-1996 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* From: adler32.c,v 1.10 1996/05/22 11:52:18 me Exp $ */
-
-/* #include "zlib.h" */
-
-#define BASE 65521L /* largest prime smaller than 65536 */
-#define NMAX 5552
-/* NMAX is the largest n such that 255n(n+1)/2 + (n+1)(BASE-1) <= 2^32-1 */
-
-#define DO1(buf,i) {s1 += buf[i]; s2 += s1;}
-#define DO2(buf,i) DO1(buf,i); DO1(buf,i+1);
-#define DO4(buf,i) DO2(buf,i); DO2(buf,i+2);
-#define DO8(buf,i) DO4(buf,i); DO4(buf,i+4);
-#define DO16(buf) DO8(buf,0); DO8(buf,8);
-
-/* ========================================================================= */
-uLong adler32(adler, buf, len)
- uLong adler;
- const Bytef *buf;
- uInt len;
-{
- unsigned long s1 = adler & 0xffff;
- unsigned long s2 = (adler >> 16) & 0xffff;
- int k;
-
- if (buf == Z_NULL) return 1L;
-
- while (len > 0) {
- k = len < NMAX ? len : NMAX;
- len -= k;
- while (k >= 16) {
- DO16(buf);
- buf += 16;
- k -= 16;
- }
- if (k != 0) do {
- s1 += *buf++;
- s2 += s1;
- } while (--k);
- s1 %= BASE;
- s2 %= BASE;
- }
- return (s2 << 16) | s1;
-}
-/* --- adler32.c */
diff --git a/mdk-stage1/ppp/common/zlib.h b/mdk-stage1/ppp/common/zlib.h
deleted file mode 100644
index 188ddaff9..000000000
--- a/mdk-stage1/ppp/common/zlib.h
+++ /dev/null
@@ -1,1010 +0,0 @@
-/* $Id$ */
-
-/*
- * This file is derived from zlib.h and zconf.h from the zlib-1.0.4
- * distribution by Jean-loup Gailly and Mark Adler, with some additions
- * by Paul Mackerras to aid in implementing Deflate compression and
- * decompression for PPP packets.
- */
-
-/*
- * ==FILEVERSION 971127==
- *
- * This marker is used by the Linux installation script to determine
- * whether an up-to-date version of this file is already installed.
- */
-
-
-/* +++ zlib.h */
-/* zlib.h -- interface of the 'zlib' general purpose compression library
- version 1.0.4, Jul 24th, 1996.
-
- Copyright (C) 1995-1996 Jean-loup Gailly and Mark Adler
-
- This software is provided 'as-is', without any express or implied
- warranty. In no event will the authors be held liable for any damages
- arising from the use of this software.
-
- Permission is granted to anyone to use this software for any purpose,
- including commercial applications, and to alter it and redistribute it
- freely, subject to the following restrictions:
-
- 1. The origin of this software must not be misrepresented; you must not
- claim that you wrote the original software. If you use this software
- in a product, an acknowledgment in the product documentation would be
- appreciated but is not required.
- 2. Altered source versions must be plainly marked as such, and must not be
- misrepresented as being the original software.
- 3. This notice may not be removed or altered from any source distribution.
-
- Jean-loup Gailly Mark Adler
- gzip@prep.ai.mit.edu madler@alumni.caltech.edu
-
-
- The data format used by the zlib library is described by RFCs (Request for
- Comments) 1950 to 1952 in the files ftp://ds.internic.net/rfc/rfc1950.txt
- (zlib format), rfc1951.txt (deflate format) and rfc1952.txt (gzip format).
-*/
-
-#ifndef _ZLIB_H
-#define _ZLIB_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-/* +++ zconf.h */
-/* zconf.h -- configuration of the zlib compression library
- * Copyright (C) 1995-1996 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* From: zconf.h,v 1.20 1996/07/02 15:09:28 me Exp $ */
-
-#ifndef _ZCONF_H
-#define _ZCONF_H
-
-/*
- * If you *really* need a unique prefix for all types and library functions,
- * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
- */
-#ifdef Z_PREFIX
-# define deflateInit_ z_deflateInit_
-# define deflate z_deflate
-# define deflateEnd z_deflateEnd
-# define inflateInit_ z_inflateInit_
-# define inflate z_inflate
-# define inflateEnd z_inflateEnd
-# define deflateInit2_ z_deflateInit2_
-# define deflateSetDictionary z_deflateSetDictionary
-# define deflateCopy z_deflateCopy
-# define deflateReset z_deflateReset
-# define deflateParams z_deflateParams
-# define inflateInit2_ z_inflateInit2_
-# define inflateSetDictionary z_inflateSetDictionary
-# define inflateSync z_inflateSync
-# define inflateReset z_inflateReset
-# define compress z_compress
-# define uncompress z_uncompress
-# define adler32 z_adler32
-# define crc32 z_crc32
-# define get_crc_table z_get_crc_table
-
-# define Byte z_Byte
-# define uInt z_uInt
-# define uLong z_uLong
-# define Bytef z_Bytef
-# define charf z_charf
-# define intf z_intf
-# define uIntf z_uIntf
-# define uLongf z_uLongf
-# define voidpf z_voidpf
-# define voidp z_voidp
-#endif
-
-#if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32)
-# define WIN32
-#endif
-#if defined(__GNUC__) || defined(WIN32) || defined(__386__) || defined(i386)
-# ifndef __32BIT__
-# define __32BIT__
-# endif
-#endif
-#if defined(__MSDOS__) && !defined(MSDOS)
-# define MSDOS
-#endif
-
-/*
- * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
- * than 64k bytes at a time (needed on systems with 16-bit int).
- */
-#if defined(MSDOS) && !defined(__32BIT__)
-# define MAXSEG_64K
-#endif
-#ifdef MSDOS
-# define UNALIGNED_OK
-#endif
-
-#if (defined(MSDOS) || defined(_WINDOWS) || defined(WIN32)) && !defined(STDC)
-# define STDC
-#endif
-#if (defined(__STDC__) || defined(__cplusplus)) && !defined(STDC)
-# define STDC
-#endif
-
-#ifndef STDC
-# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
-# define const
-# endif
-#endif
-
-/* Some Mac compilers merge all .h files incorrectly: */
-#if defined(__MWERKS__) || defined(applec) ||defined(THINK_C) ||defined(__SC__)
-# define NO_DUMMY_DECL
-#endif
-
-/* Maximum value for memLevel in deflateInit2 */
-#ifndef MAX_MEM_LEVEL
-# ifdef MAXSEG_64K
-# define MAX_MEM_LEVEL 8
-# else
-# define MAX_MEM_LEVEL 9
-# endif
-#endif
-
-/* Maximum value for windowBits in deflateInit2 and inflateInit2 */
-#ifndef MAX_WBITS
-# define MAX_WBITS 15 /* 32K LZ77 window */
-#endif
-
-/* The memory requirements for deflate are (in bytes):
- 1 << (windowBits+2) + 1 << (memLevel+9)
- that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values)
- plus a few kilobytes for small objects. For example, if you want to reduce
- the default memory requirements from 256K to 128K, compile with
- make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
- Of course this will generally degrade compression (there's no free lunch).
-
- The memory requirements for inflate are (in bytes) 1 << windowBits
- that is, 32K for windowBits=15 (default value) plus a few kilobytes
- for small objects.
-*/
-
- /* Type declarations */
-
-#ifndef OF /* function prototypes */
-# ifdef STDC
-# define OF(args) args
-# else
-# define OF(args) ()
-# endif
-#endif
-
-/* The following definitions for FAR are needed only for MSDOS mixed
- * model programming (small or medium model with some far allocations).
- * This was tested only with MSC; for other MSDOS compilers you may have
- * to define NO_MEMCPY in zutil.h. If you don't need the mixed model,
- * just define FAR to be empty.
- */
-#if (defined(M_I86SM) || defined(M_I86MM)) && !defined(__32BIT__)
- /* MSC small or medium model */
-# define SMALL_MEDIUM
-# ifdef _MSC_VER
-# define FAR __far
-# else
-# define FAR far
-# endif
-#endif
-#if defined(__BORLANDC__) && (defined(__SMALL__) || defined(__MEDIUM__))
-# ifndef __32BIT__
-# define SMALL_MEDIUM
-# define FAR __far
-# endif
-#endif
-#ifndef FAR
-# define FAR
-#endif
-
-typedef unsigned char Byte; /* 8 bits */
-typedef unsigned int uInt; /* 16 bits or more */
-typedef unsigned long uLong; /* 32 bits or more */
-
-#if defined(__BORLANDC__) && defined(SMALL_MEDIUM)
- /* Borland C/C++ ignores FAR inside typedef */
-# define Bytef Byte FAR
-#else
- typedef Byte FAR Bytef;
-#endif
-typedef char FAR charf;
-typedef int FAR intf;
-typedef uInt FAR uIntf;
-typedef uLong FAR uLongf;
-
-#ifdef STDC
- typedef void FAR *voidpf;
- typedef void *voidp;
-#else
- typedef Byte FAR *voidpf;
- typedef Byte *voidp;
-#endif
-
-
-/* Compile with -DZLIB_DLL for Windows DLL support */
-#if (defined(_WINDOWS) || defined(WINDOWS)) && defined(ZLIB_DLL)
-# include <windows.h>
-# define EXPORT WINAPI
-#else
-# define EXPORT
-#endif
-
-#endif /* _ZCONF_H */
-/* --- zconf.h */
-
-#define ZLIB_VERSION "1.0.4P"
-
-/*
- The 'zlib' compression library provides in-memory compression and
- decompression functions, including integrity checks of the uncompressed
- data. This version of the library supports only one compression method
- (deflation) but other algorithms may be added later and will have the same
- stream interface.
-
- For compression the application must provide the output buffer and
- may optionally provide the input buffer for optimization. For decompression,
- the application must provide the input buffer and may optionally provide
- the output buffer for optimization.
-
- Compression can be done in a single step if the buffers are large
- enough (for example if an input file is mmap'ed), or can be done by
- repeated calls of the compression function. In the latter case, the
- application must provide more input and/or consume the output
- (providing more output space) before each call.
-
- The library does not install any signal handler. It is recommended to
- add at least a handler for SIGSEGV when decompressing; the library checks
- the consistency of the input data whenever possible but may go nuts
- for some forms of corrupted input.
-*/
-
-typedef voidpf (*alloc_func) OF((voidpf opaque, uInt items, uInt size));
-typedef void (*free_func) OF((voidpf opaque, voidpf address));
-
-struct internal_state;
-
-typedef struct z_stream_s {
- Bytef *next_in; /* next input byte */
- uInt avail_in; /* number of bytes available at next_in */
- uLong total_in; /* total nb of input bytes read so far */
-
- Bytef *next_out; /* next output byte should be put there */
- uInt avail_out; /* remaining free space at next_out */
- uLong total_out; /* total nb of bytes output so far */
-
- char *msg; /* last error message, NULL if no error */
- struct internal_state FAR *state; /* not visible by applications */
-
- alloc_func zalloc; /* used to allocate the internal state */
- free_func zfree; /* used to free the internal state */
- voidpf opaque; /* private data object passed to zalloc and zfree */
-
- int data_type; /* best guess about the data type: ascii or binary */
- uLong adler; /* adler32 value of the uncompressed data */
- uLong reserved; /* reserved for future use */
-} z_stream;
-
-typedef z_stream FAR *z_streamp;
-
-/*
- The application must update next_in and avail_in when avail_in has
- dropped to zero. It must update next_out and avail_out when avail_out
- has dropped to zero. The application must initialize zalloc, zfree and
- opaque before calling the init function. All other fields are set by the
- compression library and must not be updated by the application.
-
- The opaque value provided by the application will be passed as the first
- parameter for calls of zalloc and zfree. This can be useful for custom
- memory management. The compression library attaches no meaning to the
- opaque value.
-
- zalloc must return Z_NULL if there is not enough memory for the object.
- On 16-bit systems, the functions zalloc and zfree must be able to allocate
- exactly 65536 bytes, but will not be required to allocate more than this
- if the symbol MAXSEG_64K is defined (see zconf.h). WARNING: On MSDOS,
- pointers returned by zalloc for objects of exactly 65536 bytes *must*
- have their offset normalized to zero. The default allocation function
- provided by this library ensures this (see zutil.c). To reduce memory
- requirements and avoid any allocation of 64K objects, at the expense of
- compression ratio, compile the library with -DMAX_WBITS=14 (see zconf.h).
-
- The fields total_in and total_out can be used for statistics or
- progress reports. After compression, total_in holds the total size of
- the uncompressed data and may be saved for use in the decompressor
- (particularly if the decompressor wants to decompress everything in
- a single step).
-*/
-
- /* constants */
-
-#define Z_NO_FLUSH 0
-#define Z_PARTIAL_FLUSH 1
-#define Z_PACKET_FLUSH 2
-#define Z_SYNC_FLUSH 3
-#define Z_FULL_FLUSH 4
-#define Z_FINISH 5
-/* Allowed flush values; see deflate() below for details */
-
-#define Z_OK 0
-#define Z_STREAM_END 1
-#define Z_NEED_DICT 2
-#define Z_ERRNO (-1)
-#define Z_STREAM_ERROR (-2)
-#define Z_DATA_ERROR (-3)
-#define Z_MEM_ERROR (-4)
-#define Z_BUF_ERROR (-5)
-#define Z_VERSION_ERROR (-6)
-/* Return codes for the compression/decompression functions. Negative
- * values are errors, positive values are used for special but normal events.
- */
-
-#define Z_NO_COMPRESSION 0
-#define Z_BEST_SPEED 1
-#define Z_BEST_COMPRESSION 9
-#define Z_DEFAULT_COMPRESSION (-1)
-/* compression levels */
-
-#define Z_FILTERED 1
-#define Z_HUFFMAN_ONLY 2
-#define Z_DEFAULT_STRATEGY 0
-/* compression strategy; see deflateInit2() below for details */
-
-#define Z_BINARY 0
-#define Z_ASCII 1
-#define Z_UNKNOWN 2
-/* Possible values of the data_type field */
-
-#define Z_DEFLATED 8
-/* The deflate compression method (the only one supported in this version) */
-
-#define Z_NULL 0 /* for initializing zalloc, zfree, opaque */
-
-#define zlib_version zlibVersion()
-/* for compatibility with versions < 1.0.2 */
-
- /* basic functions */
-
-extern const char * EXPORT zlibVersion OF((void));
-/* The application can compare zlibVersion and ZLIB_VERSION for consistency.
- If the first character differs, the library code actually used is
- not compatible with the zlib.h header file used by the application.
- This check is automatically made by deflateInit and inflateInit.
- */
-
-/*
-extern int EXPORT deflateInit OF((z_streamp strm, int level));
-
- Initializes the internal stream state for compression. The fields
- zalloc, zfree and opaque must be initialized before by the caller.
- If zalloc and zfree are set to Z_NULL, deflateInit updates them to
- use default allocation functions.
-
- The compression level must be Z_DEFAULT_COMPRESSION, or between 0 and 9:
- 1 gives best speed, 9 gives best compression, 0 gives no compression at
- all (the input data is simply copied a block at a time).
- Z_DEFAULT_COMPRESSION requests a default compromise between speed and
- compression (currently equivalent to level 6).
-
- deflateInit returns Z_OK if success, Z_MEM_ERROR if there was not
- enough memory, Z_STREAM_ERROR if level is not a valid compression level,
- Z_VERSION_ERROR if the zlib library version (zlib_version) is incompatible
- with the version assumed by the caller (ZLIB_VERSION).
- msg is set to null if there is no error message. deflateInit does not
- perform any compression: this will be done by deflate().
-*/
-
-
-extern int EXPORT deflate OF((z_streamp strm, int flush));
-/*
- Performs one or both of the following actions:
-
- - Compress more input starting at next_in and update next_in and avail_in
- accordingly. If not all input can be processed (because there is not
- enough room in the output buffer), next_in and avail_in are updated and
- processing will resume at this point for the next call of deflate().
-
- - Provide more output starting at next_out and update next_out and avail_out
- accordingly. This action is forced if the parameter flush is non zero.
- Forcing flush frequently degrades the compression ratio, so this parameter
- should be set only when necessary (in interactive applications).
- Some output may be provided even if flush is not set.
-
- Before the call of deflate(), the application should ensure that at least
- one of the actions is possible, by providing more input and/or consuming
- more output, and updating avail_in or avail_out accordingly; avail_out
- should never be zero before the call. The application can consume the
- compressed output when it wants, for example when the output buffer is full
- (avail_out == 0), or after each call of deflate(). If deflate returns Z_OK
- and with zero avail_out, it must be called again after making room in the
- output buffer because there might be more output pending.
-
- If the parameter flush is set to Z_PARTIAL_FLUSH, the current compression
- block is terminated and flushed to the output buffer so that the
- decompressor can get all input data available so far. For method 9, a future
- variant on method 8, the current block will be flushed but not terminated.
- Z_SYNC_FLUSH has the same effect as partial flush except that the compressed
- output is byte aligned (the compressor can clear its internal bit buffer)
- and the current block is always terminated; this can be useful if the
- compressor has to be restarted from scratch after an interruption (in which
- case the internal state of the compressor may be lost).
- If flush is set to Z_FULL_FLUSH, the compression block is terminated, a
- special marker is output and the compression dictionary is discarded; this
- is useful to allow the decompressor to synchronize if one compressed block
- has been damaged (see inflateSync below). Flushing degrades compression and
- so should be used only when necessary. Using Z_FULL_FLUSH too often can
- seriously degrade the compression. If deflate returns with avail_out == 0,
- this function must be called again with the same value of the flush
- parameter and more output space (updated avail_out), until the flush is
- complete (deflate returns with non-zero avail_out).
-
- If the parameter flush is set to Z_PACKET_FLUSH, the compression
- block is terminated, and a zero-length stored block is output,
- omitting the length bytes (the effect of this is that the 3-bit type
- code 000 for a stored block is output, and the output is then
- byte-aligned). This is designed for use at the end of a PPP packet.
-
- If the parameter flush is set to Z_FINISH, pending input is processed,
- pending output is flushed and deflate returns with Z_STREAM_END if there
- was enough output space; if deflate returns with Z_OK, this function must be
- called again with Z_FINISH and more output space (updated avail_out) but no
- more input data, until it returns with Z_STREAM_END or an error. After
- deflate has returned Z_STREAM_END, the only possible operations on the
- stream are deflateReset or deflateEnd.
-
- Z_FINISH can be used immediately after deflateInit if all the compression
- is to be done in a single step. In this case, avail_out must be at least
- 0.1% larger than avail_in plus 12 bytes. If deflate does not return
- Z_STREAM_END, then it must be called again as described above.
-
- deflate() may update data_type if it can make a good guess about
- the input data type (Z_ASCII or Z_BINARY). In doubt, the data is considered
- binary. This field is only for information purposes and does not affect
- the compression algorithm in any manner.
-
- deflate() returns Z_OK if some progress has been made (more input
- processed or more output produced), Z_STREAM_END if all input has been
- consumed and all output has been produced (only when flush is set to
- Z_FINISH), Z_STREAM_ERROR if the stream state was inconsistent (for example
- if next_in or next_out was NULL), Z_BUF_ERROR if no progress is possible.
-*/
-
-
-extern int EXPORT deflateEnd OF((z_streamp strm));
-/*
- All dynamically allocated data structures for this stream are freed.
- This function discards any unprocessed input and does not flush any
- pending output.
-
- deflateEnd returns Z_OK if success, Z_STREAM_ERROR if the
- stream state was inconsistent, Z_DATA_ERROR if the stream was freed
- prematurely (some input or output was discarded). In the error case,
- msg may be set but then points to a static string (which must not be
- deallocated).
-*/
-
-
-/*
-extern int EXPORT inflateInit OF((z_streamp strm));
-
- Initializes the internal stream state for decompression. The fields
- zalloc, zfree and opaque must be initialized before by the caller. If
- zalloc and zfree are set to Z_NULL, inflateInit updates them to use default
- allocation functions.
-
- inflateInit returns Z_OK if success, Z_MEM_ERROR if there was not
- enough memory, Z_VERSION_ERROR if the zlib library version is incompatible
- with the version assumed by the caller. msg is set to null if there is no
- error message. inflateInit does not perform any decompression: this will be
- done by inflate().
-*/
-
-
-extern int EXPORT inflate OF((z_streamp strm, int flush));
-/*
- Performs one or both of the following actions:
-
- - Decompress more input starting at next_in and update next_in and avail_in
- accordingly. If not all input can be processed (because there is not
- enough room in the output buffer), next_in is updated and processing
- will resume at this point for the next call of inflate().
-
- - Provide more output starting at next_out and update next_out and avail_out
- accordingly. inflate() provides as much output as possible, until there
- is no more input data or no more space in the output buffer (see below
- about the flush parameter).
-
- Before the call of inflate(), the application should ensure that at least
- one of the actions is possible, by providing more input and/or consuming
- more output, and updating the next_* and avail_* values accordingly.
- The application can consume the uncompressed output when it wants, for
- example when the output buffer is full (avail_out == 0), or after each
- call of inflate(). If inflate returns Z_OK and with zero avail_out, it
- must be called again after making room in the output buffer because there
- might be more output pending.
-
- If the parameter flush is set to Z_PARTIAL_FLUSH or Z_PACKET_FLUSH,
- inflate flushes as much output as possible to the output buffer. The
- flushing behavior of inflate is not specified for values of the flush
- parameter other than Z_PARTIAL_FLUSH, Z_PACKET_FLUSH or Z_FINISH, but the
- current implementation actually flushes as much output as possible
- anyway. For Z_PACKET_FLUSH, inflate checks that once all the input data
- has been consumed, it is expecting to see the length field of a stored
- block; if not, it returns Z_DATA_ERROR.
-
- inflate() should normally be called until it returns Z_STREAM_END or an
- error. However if all decompression is to be performed in a single step
- (a single call of inflate), the parameter flush should be set to
- Z_FINISH. In this case all pending input is processed and all pending
- output is flushed; avail_out must be large enough to hold all the
- uncompressed data. (The size of the uncompressed data may have been saved
- by the compressor for this purpose.) The next operation on this stream must
- be inflateEnd to deallocate the decompression state. The use of Z_FINISH
- is never required, but can be used to inform inflate that a faster routine
- may be used for the single inflate() call.
-
- inflate() returns Z_OK if some progress has been made (more input
- processed or more output produced), Z_STREAM_END if the end of the
- compressed data has been reached and all uncompressed output has been
- produced, Z_NEED_DICT if a preset dictionary is needed at this point (see
- inflateSetDictionary below), Z_DATA_ERROR if the input data was corrupted,
- Z_STREAM_ERROR if the stream structure was inconsistent (for example if
- next_in or next_out was NULL), Z_MEM_ERROR if there was not enough memory,
- Z_BUF_ERROR if no progress is possible or if there was not enough room in
- the output buffer when Z_FINISH is used. In the Z_DATA_ERROR case, the
- application may then call inflateSync to look for a good compression block.
- In the Z_NEED_DICT case, strm->adler is set to the Adler32 value of the
- dictionary chosen by the compressor.
-*/
-
-
-extern int EXPORT inflateEnd OF((z_streamp strm));
-/*
- All dynamically allocated data structures for this stream are freed.
- This function discards any unprocessed input and does not flush any
- pending output.
-
- inflateEnd returns Z_OK if success, Z_STREAM_ERROR if the stream state
- was inconsistent. In the error case, msg may be set but then points to a
- static string (which must not be deallocated).
-*/
-
- /* Advanced functions */
-
-/*
- The following functions are needed only in some special applications.
-*/
-
-/*
-extern int EXPORT deflateInit2 OF((z_streamp strm,
- int level,
- int method,
- int windowBits,
- int memLevel,
- int strategy));
-
- This is another version of deflateInit with more compression options. The
- fields next_in, zalloc, zfree and opaque must be initialized before by
- the caller.
-
- The method parameter is the compression method. It must be Z_DEFLATED in
- this version of the library. (Method 9 will allow a 64K history buffer and
- partial block flushes.)
-
- The windowBits parameter is the base two logarithm of the window size
- (the size of the history buffer). It should be in the range 8..15 for this
- version of the library (the value 16 will be allowed for method 9). Larger
- values of this parameter result in better compression at the expense of
- memory usage. The default value is 15 if deflateInit is used instead.
-
- The memLevel parameter specifies how much memory should be allocated
- for the internal compression state. memLevel=1 uses minimum memory but
- is slow and reduces compression ratio; memLevel=9 uses maximum memory
- for optimal speed. The default value is 8. See zconf.h for total memory
- usage as a function of windowBits and memLevel.
-
- The strategy parameter is used to tune the compression algorithm. Use the
- value Z_DEFAULT_STRATEGY for normal data, Z_FILTERED for data produced by a
- filter (or predictor), or Z_HUFFMAN_ONLY to force Huffman encoding only (no
- string match). Filtered data consists mostly of small values with a
- somewhat random distribution. In this case, the compression algorithm is
- tuned to compress them better. The effect of Z_FILTERED is to force more
- Huffman coding and less string matching; it is somewhat intermediate
- between Z_DEFAULT and Z_HUFFMAN_ONLY. The strategy parameter only affects
- the compression ratio but not the correctness of the compressed output even
- if it is not set appropriately.
-
- If next_in is not null, the library will use this buffer to hold also
- some history information; the buffer must either hold the entire input
- data, or have at least 1<<(windowBits+1) bytes and be writable. If next_in
- is null, the library will allocate its own history buffer (and leave next_in
- null). next_out need not be provided here but must be provided by the
- application for the next call of deflate().
-
- If the history buffer is provided by the application, next_in must
- must never be changed by the application since the compressor maintains
- information inside this buffer from call to call; the application
- must provide more input only by increasing avail_in. next_in is always
- reset by the library in this case.
-
- deflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was
- not enough memory, Z_STREAM_ERROR if a parameter is invalid (such as
- an invalid method). msg is set to null if there is no error message.
- deflateInit2 does not perform any compression: this will be done by
- deflate().
-*/
-
-extern int EXPORT deflateSetDictionary OF((z_streamp strm,
- const Bytef *dictionary,
- uInt dictLength));
-/*
- Initializes the compression dictionary (history buffer) from the given
- byte sequence without producing any compressed output. This function must
- be called immediately after deflateInit or deflateInit2, before any call
- of deflate. The compressor and decompressor must use exactly the same
- dictionary (see inflateSetDictionary).
- The dictionary should consist of strings (byte sequences) that are likely
- to be encountered later in the data to be compressed, with the most commonly
- used strings preferably put towards the end of the dictionary. Using a
- dictionary is most useful when the data to be compressed is short and
- can be predicted with good accuracy; the data can then be compressed better
- than with the default empty dictionary. In this version of the library,
- only the last 32K bytes of the dictionary are used.
- Upon return of this function, strm->adler is set to the Adler32 value
- of the dictionary; the decompressor may later use this value to determine
- which dictionary has been used by the compressor. (The Adler32 value
- applies to the whole dictionary even if only a subset of the dictionary is
- actually used by the compressor.)
-
- deflateSetDictionary returns Z_OK if success, or Z_STREAM_ERROR if a
- parameter is invalid (such as NULL dictionary) or the stream state
- is inconsistent (for example if deflate has already been called for this
- stream). deflateSetDictionary does not perform any compression: this will
- be done by deflate().
-*/
-
-extern int EXPORT deflateCopy OF((z_streamp dest,
- z_streamp source));
-/*
- Sets the destination stream as a complete copy of the source stream. If
- the source stream is using an application-supplied history buffer, a new
- buffer is allocated for the destination stream. The compressed output
- buffer is always application-supplied. It's the responsibility of the
- application to provide the correct values of next_out and avail_out for the
- next call of deflate.
-
- This function can be useful when several compression strategies will be
- tried, for example when there are several ways of pre-processing the input
- data with a filter. The streams that will be discarded should then be freed
- by calling deflateEnd. Note that deflateCopy duplicates the internal
- compression state which can be quite large, so this strategy is slow and
- can consume lots of memory.
-
- deflateCopy returns Z_OK if success, Z_MEM_ERROR if there was not
- enough memory, Z_STREAM_ERROR if the source stream state was inconsistent
- (such as zalloc being NULL). msg is left unchanged in both source and
- destination.
-*/
-
-extern int EXPORT deflateReset OF((z_streamp strm));
-/*
- This function is equivalent to deflateEnd followed by deflateInit,
- but does not free and reallocate all the internal compression state.
- The stream will keep the same compression level and any other attributes
- that may have been set by deflateInit2.
-
- deflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source
- stream state was inconsistent (such as zalloc or state being NULL).
-*/
-
-extern int EXPORT deflateParams OF((z_streamp strm, int level, int strategy));
-/*
- Dynamically update the compression level and compression strategy.
- This can be used to switch between compression and straight copy of
- the input data, or to switch to a different kind of input data requiring
- a different strategy. If the compression level is changed, the input
- available so far is compressed with the old level (and may be flushed);
- the new level will take effect only at the next call of deflate().
-
- Before the call of deflateParams, the stream state must be set as for
- a call of deflate(), since the currently available input may have to
- be compressed and flushed. In particular, strm->avail_out must be non-zero.
-
- deflateParams returns Z_OK if success, Z_STREAM_ERROR if the source
- stream state was inconsistent or if a parameter was invalid, Z_BUF_ERROR
- if strm->avail_out was zero.
-*/
-
-extern int EXPORT deflateOutputPending OF((z_streamp strm));
-/*
- Returns the number of bytes of output which are immediately
- available from the compressor (i.e. without any further input
- or flush).
-*/
-
-/*
-extern int EXPORT inflateInit2 OF((z_streamp strm,
- int windowBits));
-
- This is another version of inflateInit with more compression options. The
- fields next_out, zalloc, zfree and opaque must be initialized before by
- the caller.
-
- The windowBits parameter is the base two logarithm of the maximum window
- size (the size of the history buffer). It should be in the range 8..15 for
- this version of the library (the value 16 will be allowed soon). The
- default value is 15 if inflateInit is used instead. If a compressed stream
- with a larger window size is given as input, inflate() will return with
- the error code Z_DATA_ERROR instead of trying to allocate a larger window.
-
- If next_out is not null, the library will use this buffer for the history
- buffer; the buffer must either be large enough to hold the entire output
- data, or have at least 1<<windowBits bytes. If next_out is null, the
- library will allocate its own buffer (and leave next_out null). next_in
- need not be provided here but must be provided by the application for the
- next call of inflate().
-
- If the history buffer is provided by the application, next_out must
- never be changed by the application since the decompressor maintains
- history information inside this buffer from call to call; the application
- can only reset next_out to the beginning of the history buffer when
- avail_out is zero and all output has been consumed.
-
- inflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was
- not enough memory, Z_STREAM_ERROR if a parameter is invalid (such as
- windowBits < 8). msg is set to null if there is no error message.
- inflateInit2 does not perform any decompression: this will be done by
- inflate().
-*/
-
-extern int EXPORT inflateSetDictionary OF((z_streamp strm,
- const Bytef *dictionary,
- uInt dictLength));
-/*
- Initializes the decompression dictionary (history buffer) from the given
- uncompressed byte sequence. This function must be called immediately after
- a call of inflate if this call returned Z_NEED_DICT. The dictionary chosen
- by the compressor can be determined from the Adler32 value returned by this
- call of inflate. The compressor and decompressor must use exactly the same
- dictionary (see deflateSetDictionary).
-
- inflateSetDictionary returns Z_OK if success, Z_STREAM_ERROR if a
- parameter is invalid (such as NULL dictionary) or the stream state is
- inconsistent, Z_DATA_ERROR if the given dictionary doesn't match the
- expected one (incorrect Adler32 value). inflateSetDictionary does not
- perform any decompression: this will be done by subsequent calls of
- inflate().
-*/
-
-extern int EXPORT inflateSync OF((z_streamp strm));
-/*
- Skips invalid compressed data until the special marker (see deflate()
- above) can be found, or until all available input is skipped. No output
- is provided.
-
- inflateSync returns Z_OK if the special marker has been found, Z_BUF_ERROR
- if no more input was provided, Z_DATA_ERROR if no marker has been found,
- or Z_STREAM_ERROR if the stream structure was inconsistent. In the success
- case, the application may save the current current value of total_in which
- indicates where valid compressed data was found. In the error case, the
- application may repeatedly call inflateSync, providing more input each time,
- until success or end of the input data.
-*/
-
-extern int EXPORT inflateReset OF((z_streamp strm));
-/*
- This function is equivalent to inflateEnd followed by inflateInit,
- but does not free and reallocate all the internal decompression state.
- The stream will keep attributes that may have been set by inflateInit2.
-
- inflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source
- stream state was inconsistent (such as zalloc or state being NULL).
-*/
-
-extern int inflateIncomp OF((z_stream *strm));
-/*
- This function adds the data at next_in (avail_in bytes) to the output
- history without performing any output. There must be no pending output,
- and the decompressor must be expecting to see the start of a block.
- Calling this function is equivalent to decompressing a stored block
- containing the data at next_in (except that the data is not output).
-*/
-
- /* utility functions */
-
-/*
- The following utility functions are implemented on top of the
- basic stream-oriented functions. To simplify the interface, some
- default options are assumed (compression level, window size,
- standard memory allocation functions). The source code of these
- utility functions can easily be modified if you need special options.
-*/
-
-extern int EXPORT compress OF((Bytef *dest, uLongf *destLen,
- const Bytef *source, uLong sourceLen));
-/*
- Compresses the source buffer into the destination buffer. sourceLen is
- the byte length of the source buffer. Upon entry, destLen is the total
- size of the destination buffer, which must be at least 0.1% larger than
- sourceLen plus 12 bytes. Upon exit, destLen is the actual size of the
- compressed buffer.
- This function can be used to compress a whole file at once if the
- input file is mmap'ed.
- compress returns Z_OK if success, Z_MEM_ERROR if there was not
- enough memory, Z_BUF_ERROR if there was not enough room in the output
- buffer.
-*/
-
-extern int EXPORT uncompress OF((Bytef *dest, uLongf *destLen,
- const Bytef *source, uLong sourceLen));
-/*
- Decompresses the source buffer into the destination buffer. sourceLen is
- the byte length of the source buffer. Upon entry, destLen is the total
- size of the destination buffer, which must be large enough to hold the
- entire uncompressed data. (The size of the uncompressed data must have
- been saved previously by the compressor and transmitted to the decompressor
- by some mechanism outside the scope of this compression library.)
- Upon exit, destLen is the actual size of the compressed buffer.
- This function can be used to decompress a whole file at once if the
- input file is mmap'ed.
-
- uncompress returns Z_OK if success, Z_MEM_ERROR if there was not
- enough memory, Z_BUF_ERROR if there was not enough room in the output
- buffer, or Z_DATA_ERROR if the input data was corrupted.
-*/
-
-
-typedef voidp gzFile;
-
-extern gzFile EXPORT gzopen OF((const char *path, const char *mode));
-/*
- Opens a gzip (.gz) file for reading or writing. The mode parameter
- is as in fopen ("rb" or "wb") but can also include a compression level
- ("wb9"). gzopen can be used to read a file which is not in gzip format;
- in this case gzread will directly read from the file without decompression.
- gzopen returns NULL if the file could not be opened or if there was
- insufficient memory to allocate the (de)compression state; errno
- can be checked to distinguish the two cases (if errno is zero, the
- zlib error is Z_MEM_ERROR).
-*/
-
-extern gzFile EXPORT gzdopen OF((int fd, const char *mode));
-/*
- gzdopen() associates a gzFile with the file descriptor fd. File
- descriptors are obtained from calls like open, dup, creat, pipe or
- fileno (in the file has been previously opened with fopen).
- The mode parameter is as in gzopen.
- The next call of gzclose on the returned gzFile will also close the
- file descriptor fd, just like fclose(fdopen(fd), mode) closes the file
- descriptor fd. If you want to keep fd open, use gzdopen(dup(fd), mode).
- gzdopen returns NULL if there was insufficient memory to allocate
- the (de)compression state.
-*/
-
-extern int EXPORT gzread OF((gzFile file, voidp buf, unsigned len));
-/*
- Reads the given number of uncompressed bytes from the compressed file.
- If the input file was not in gzip format, gzread copies the given number
- of bytes into the buffer.
- gzread returns the number of uncompressed bytes actually read (0 for
- end of file, -1 for error). */
-
-extern int EXPORT gzwrite OF((gzFile file, const voidp buf, unsigned len));
-/*
- Writes the given number of uncompressed bytes into the compressed file.
- gzwrite returns the number of uncompressed bytes actually written
- (0 in case of error).
-*/
-
-extern int EXPORT gzflush OF((gzFile file, int flush));
-/*
- Flushes all pending output into the compressed file. The parameter
- flush is as in the deflate() function. The return value is the zlib
- error number (see function gzerror below). gzflush returns Z_OK if
- the flush parameter is Z_FINISH and all output could be flushed.
- gzflush should be called only when strictly necessary because it can
- degrade compression.
-*/
-
-extern int EXPORT gzclose OF((gzFile file));
-/*
- Flushes all pending output if necessary, closes the compressed file
- and deallocates all the (de)compression state. The return value is the zlib
- error number (see function gzerror below).
-*/
-
-extern const char * EXPORT gzerror OF((gzFile file, int *errnum));
-/*
- Returns the error message for the last error which occurred on the
- given compressed file. errnum is set to zlib error number. If an
- error occurred in the file system and not in the compression library,
- errnum is set to Z_ERRNO and the application may consult errno
- to get the exact error code.
-*/
-
- /* checksum functions */
-
-/*
- These functions are not related to compression but are exported
- anyway because they might be useful in applications using the
- compression library.
-*/
-
-extern uLong EXPORT adler32 OF((uLong adler, const Bytef *buf, uInt len));
-
-/*
- Update a running Adler-32 checksum with the bytes buf[0..len-1] and
- return the updated checksum. If buf is NULL, this function returns
- the required initial value for the checksum.
- An Adler-32 checksum is almost as reliable as a CRC32 but can be computed
- much faster. Usage example:
-
- uLong adler = adler32(0L, Z_NULL, 0);
-
- while (read_buffer(buffer, length) != EOF) {
- adler = adler32(adler, buffer, length);
- }
- if (adler != original_adler) error();
-*/
-
-extern uLong EXPORT crc32 OF((uLong crc, const Bytef *buf, uInt len));
-/*
- Update a running crc with the bytes buf[0..len-1] and return the updated
- crc. If buf is NULL, this function returns the required initial value
- for the crc. Pre- and post-conditioning (one's complement) is performed
- within this function so it shouldn't be done by the application.
- Usage example:
-
- uLong crc = crc32(0L, Z_NULL, 0);
-
- while (read_buffer(buffer, length) != EOF) {
- crc = crc32(crc, buffer, length);
- }
- if (crc != original_crc) error();
-*/
-
-
- /* various hacks, don't look :) */
-
-/* deflateInit and inflateInit are macros to allow checking the zlib version
- * and the compiler's view of z_stream:
- */
-extern int EXPORT deflateInit_ OF((z_streamp strm, int level,
- const char *version, int stream_size));
-extern int EXPORT inflateInit_ OF((z_streamp strm,
- const char *version, int stream_size));
-extern int EXPORT deflateInit2_ OF((z_streamp strm, int level, int method,
- int windowBits, int memLevel, int strategy,
- const char *version, int stream_size));
-extern int EXPORT inflateInit2_ OF((z_streamp strm, int windowBits,
- const char *version, int stream_size));
-#define deflateInit(strm, level) \
- deflateInit_((strm), (level), ZLIB_VERSION, sizeof(z_stream))
-#define inflateInit(strm) \
- inflateInit_((strm), ZLIB_VERSION, sizeof(z_stream))
-#define deflateInit2(strm, level, method, windowBits, memLevel, strategy) \
- deflateInit2_((strm),(level),(method),(windowBits),(memLevel),\
- (strategy), ZLIB_VERSION, sizeof(z_stream))
-#define inflateInit2(strm, windowBits) \
- inflateInit2_((strm), (windowBits), ZLIB_VERSION, sizeof(z_stream))
-
-#if !defined(_Z_UTIL_H) && !defined(NO_DUMMY_DECL)
- struct internal_state {int dummy;}; /* hack for buggy compilers */
-#endif
-
-uLongf *get_crc_table OF((void)); /* can be used by asm versions of crc32() */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _ZLIB_H */
-/* --- zlib.h */
diff --git a/mdk-stage1/ppp/configure b/mdk-stage1/ppp/configure
deleted file mode 100755
index 544fb0d71..000000000
--- a/mdk-stage1/ppp/configure
+++ /dev/null
@@ -1,141 +0,0 @@
-#!/bin/sh
-# $Id$
-
-# if [ -d /NextApps ]; then
-# system="NeXTStep"
-# else
- system=`uname -s`
- release=`uname -r`
- machine=`uname -p`
- arch=`uname -m`
-# fi
-state="unknown"
-
-case $system in
- Linux)
- makext="linux";
- ksrc="linux";
- state="known";;
- SunOS)
- case $release in
-# [0-3]*) state="ancient";;
-# 4*) state="known"; ksrc="sunos4"; makext="sunos4";;
- 5.[1-6]*) state="known"; ksrc="solaris"; makext="sol2";;
- 5.[7-9]*) state="known"; ksrc="solaris"; makext="sol2";
- case $arch in
- sun4u) lp64='y';;
- *) ;;
- esac;;
- esac;;
- NetBSD|FreeBSD|ULTRIX|OSF1|NeXTStep|SINIX-?|UNIX_SV|UNIX_System_V)
- state="notincluded";;
-# NetBSD)
-# makext="bsd";
-# case $release in
-# 0.*) state="ancient";;
-# 1.0*) state="ancient";;
-# 1.1*) state="known"; ksrc="netbsd-1.1";;
-# 1.2*) state="known"; ksrc="netbsd-1.2"; makext="netbsd-1.2";;
-# 1.[3-9]*|[2-9]*)
-# state="late"; ksrc="netbsd-1.2";;
-# esac;;
-# ULTRIX)
-# makext="ultrix";
-# case $release in
-# [0-3]*) state="ancient";;
-# 4.[01]*) state="early"; ksrc="ultrix";;
-# 4.[234]) state="known"; ksrc="ultrix";;
-# esac;;
-# OSF1)
-# makext="osf";
-# case $release in
-# V1.*) state="neolithic"; ksrc="osf1";;
-# V[23].*) state="neolithic"; ksrc="osf1";;
-# V4.*) state="known"; ksrc="osf1";;
-# V[5-9]*) state="late"; ksrc="osf1";;
-# esac;;
-# FreeBSD)
-# makext="bsd";
-# case $release in
-# 1.*) state="known"; ksrc="freebsd-old";;
-# 2.[01]*) state="known"; ksrc="freebsd-2.0";;
-# 2.2.[2-7]*) state="late"; ksrc="freebsd-2.0";;
-# 2.2.8*) state="known"; ksrc="freebsd-2.2.8";;
-# 3.[0-1]*) state="known"; ksrc="freebsd-3.0";;
-# esac;;
-# NeXTStep)
-# makext="NeXT";
-# ksrc="NeXT";
-# state="known";;
-# SINIX-?)
-# case $release in
-# 5.4[01]) state=known; ksrc=svr4; makext=svr4;;
-# 5.4[2-9]) state=late; ksrc=svr4; makext=svr4;;
-# esac;;
-# # Intel SVR4 systems come with a bug in the uname program. Unless
-# # your provider fixed the bug, or you get a fix for it, uname -S will
-# # overwrite the system name with the node name!
-# UNIX_SV|UNIX_System_V|`uname -n`)
-# case $release in
-# 4.0) state=known; ksrc=svr4; makext=svr4;;
-# 4.2) state=late; ksrc=svr4; makext=svr4;;
-# esac;;
-esac
-
-if [ -d "$ksrc" ]; then :; else
- state="notincluded"
- unset ksrc
-fi
-
-case $state in
- neolithic)
- echo "This is a newer release on an outdated OS ($system)."
- echo " This software may or may not work on this OS."
- echo " You may want to download an older version of PPP for this OS.";;
- ancient)
- echo "This is an old release of a supported OS ($system)."
- echo "This software cannot be used as-is on this system,"
- echo "but you may be able to port it. Good luck!"
- exit;;
- early)
- echo "This is an old release of a supported OS ($system)."
- echo "This software should install and run on this system,"
- echo "but it hasn't been tested.";;
- late)
- echo "This is a newer release of $system than is supported by"
- echo "this software. It may or may not work.";;
- unknown)
- echo "This software has not been ported to this system. Sorry.";;
- notincluded)
- echo "Support for this system has not been included"
- echo "in this distribution. Sorry.";;
-esac
-
-orig_makext=$makext
-
-if [ -d "$ksrc" ]; then
- echo "Creating links to Makefiles."
- rm -f Makefile
- ln -s $ksrc/Makefile.top Makefile
- echo " Makefile -> $ksrc/Makefile.top"
- if [ "$ksrc" = solaris ]; then
- # Point to 64-bit Makefile extension
- if [ "$lp64" = y ]; then
- makext=$makext-64
- fi
- rm -f $ksrc/Makefile
- ln -s Makefile.$makext $ksrc/Makefile
- echo " $ksrc/Makefile -> Makefile.$makext"
- # Restore extension
- if [ "$lp64" = y ]; then
- makext=$orig_makext
- fi
- fi
- for dir in pppd pppstats chat pppdump; do
- rm -f $dir/Makefile
- if [ -f $dir/Makefile.$makext ]; then
- ln -s Makefile.$makext $dir/Makefile
- echo " $dir/Makefile -> Makefile.$makext"
- fi
- done
-fi
diff --git a/mdk-stage1/ppp/contrib/pppgetpass/Makefile.linux b/mdk-stage1/ppp/contrib/pppgetpass/Makefile.linux
deleted file mode 100644
index 7eb217dac..000000000
--- a/mdk-stage1/ppp/contrib/pppgetpass/Makefile.linux
+++ /dev/null
@@ -1,16 +0,0 @@
-all: pppgetpass.vt pppgetpass.gtk
-
-pppgetpass.vt: pppgetpass.vt.o
-
-pppgetpass.gtk: pppgetpass.gtk.o
- $(CC) $(LDFLAGS) pppgetpass.gtk.o `gtk-config --libs` -o pppgetpass.gtk
-pppgetpass.gtk.o: pppgetpass.gtk.c
- $(CC) $(CFLAGS) -c pppgetpass.gtk.c `gtk-config --cflags`
-
-install: all
- install -m 755 pppgetpass.sh /usr/bin/pppgetpass
- install -m 4755 -o root -g root pppgetpass.vt /usr/bin/
- install -m 755 -o root -g root pppgetpass.gtk /usr/X11/bin/
-
-clean:
- rm -f *.o pppgetpass.gtk pppgetpass.vt core
diff --git a/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.8 b/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.8
deleted file mode 100644
index ade576970..000000000
--- a/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.8
+++ /dev/null
@@ -1,18 +0,0 @@
-.TH PPPGETPASS 8 "26 Sep 1999"
-.SH NAME
-pppgetpass \- prompt for PAP password
-.SH SYNOPSIS
-.B pppgetpass
-.I client server fd
-.SH DESCRIPTION
-.B pppgetpass
-the outer half of a plugin for PAP password prompting in pppd.
-If the peer requires PAP, and the
-.B passprompt.so
-plugin is loaded into pppd, it will run
-.B /usr/sbin/pppgetpass
-(or another program specified by the
-.B promptprog
-option) to prompt the user for the password.
-.SH SEE ALSO
-pppd(8)
diff --git a/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.gtk.c b/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.gtk.c
deleted file mode 100644
index 48ca04202..000000000
--- a/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.gtk.c
+++ /dev/null
@@ -1,92 +0,0 @@
-#include <glib.h>
-#include <gdk/gdk.h>
-#include <gtk/gtkwindow.h>
-#include <gtk/gtkmain.h>
-#include <gtk/gtkbutton.h>
-#include <gtk/gtkvbox.h>
-#include <gtk/gtklabel.h>
-#include <gtk/gtkentry.h>
-#include <gtk/gtksignal.h>
-
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <syslog.h>
-
-int outfd;
-int err;
-
-static void okpressed(void *widget, void *clientdata)
-{
- GtkWidget *answer=clientdata;
- gchar *pass;
- int passlen;
- ssize_t wrote;
- (void)widget;
-
- pass=gtk_entry_get_text(GTK_ENTRY(answer));
-
- passlen=strlen(pass);
- if(!passlen)
- return;
-
- if((wrote=write(outfd, pass, passlen))!=passlen) {
- if(wrote<0)
- syslog(LOG_ERR, "write error on outpipe: %m");
- else
- syslog(LOG_ERR, "short write on outpipe");
- err=1;
- }
- gtk_main_quit();
-}
-
-int main(int argc, char **argv)
-{
- GtkWidget *mainwindow, *vbox, *question, *answer, *ok;
- char buf[1024];
- gtk_init(&argc, &argv);
-
- openlog(argv[0], LOG_PID, LOG_DAEMON);
- if(argc!=4) {
- syslog(LOG_WARNING, "Usage error");
- return 1;
- }
- outfd=atoi(argv[3]);
- mainwindow=gtk_window_new(GTK_WINDOW_TOPLEVEL);
- gtk_window_set_title(GTK_WINDOW(mainwindow), "pppgetpass");
- gtk_signal_connect(GTK_OBJECT(mainwindow), "destroy",
- GTK_SIGNAL_FUNC(gtk_main_quit), 0);
-
- vbox=gtk_vbox_new(FALSE, 5);
- gtk_container_add(GTK_CONTAINER(mainwindow), vbox);
- gtk_widget_show(vbox);
-
- if(argv[1][0] && argv[2][0])
- snprintf(buf, sizeof buf, "Password for PPP client %s on server %s: ", argv[1], argv[2]);
- else if(argv[1][0] && !argv[2][0])
- snprintf(buf, sizeof buf, "Password for PPP client %s: ", argv[1]);
- else if(!argv[1][0] && argv[2][0])
- snprintf(buf, sizeof buf, "Password for PPP on server %s: ", argv[2]);
- else
- snprintf(buf, sizeof buf, "Enter PPP password: ");
- question=gtk_label_new(buf);
- gtk_box_pack_start(GTK_BOX(vbox), question, FALSE, TRUE, 0);
- gtk_widget_show(question);
-
- answer=gtk_entry_new();
- gtk_entry_set_visibility(GTK_ENTRY(answer), 0);
- gtk_box_pack_start(GTK_BOX(vbox), answer, FALSE, TRUE, 0);
- gtk_widget_show(answer);
-
- ok=gtk_button_new_with_label("OK");
- gtk_box_pack_start(GTK_BOX(vbox), ok, FALSE, TRUE, 0);
- gtk_signal_connect(GTK_OBJECT(ok), "clicked",
- GTK_SIGNAL_FUNC(okpressed), answer);
- gtk_widget_show(ok);
-
- gtk_widget_show(mainwindow);
- gtk_main();
-
- return err;
-}
diff --git a/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.sh b/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.sh
deleted file mode 100644
index 09c480519..000000000
--- a/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-if [ -z "$DISPLAY" ]; then
- exec pppgetpass.vt "$@"
-else
- exec pppgetpass.gtk "$@"
-fi
diff --git a/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.vt.c b/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.vt.c
deleted file mode 100644
index a1520883c..000000000
--- a/mdk-stage1/ppp/contrib/pppgetpass/pppgetpass.vt.c
+++ /dev/null
@@ -1,218 +0,0 @@
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-#include <sys/ioctl.h>
-#include <syslog.h>
-#include <termios.h>
-#include <sys/vt.h>
-
-static int console_owner(uid_t, int);
-
-int main(int argc, char **argv)
-{
- int console;
- uid_t uid;
- struct vt_stat origstate;
- int openvtnum;
- char openvtname[256];
- int openvt;
- gid_t gid;
- int chowned;
- FILE *fp;
- struct termios t;
- char pass[256], *nl;
- int outfd, passlen;
- ssize_t wrote;
- console=open("/dev/console", O_RDWR);
-
- uid=getuid();
- gid=getgid();
- seteuid(uid);
-
- openlog(argv[0], LOG_PID, LOG_DAEMON);
-
- if(argc!=4) {
- syslog(LOG_WARNING, "Usage error");
- return 1;
- }
-
- if(console<0) {
- syslog(LOG_ERR, "open(/dev/console): %m");
- return 1;
- }
-
- if(ioctl(console, VT_GETSTATE, &origstate)<0) {
- syslog(LOG_ERR, "VT_GETSTATE: %m");
- return 1;
- }
-
- if(uid) {
- if(!console_owner(uid, origstate.v_active)) {
- int i;
- for(i=0;i<64;++i) {
- if(i!=origstate.v_active && console_owner(uid, i))
- break;
- }
- if(i==64) {
- syslog(LOG_WARNING, "run by uid %lu not at console", (unsigned long)uid);
- return 1;
- }
- }
- }
-
- if(ioctl(console, VT_OPENQRY, &openvtnum)<0) {
- syslog(LOG_ERR, "VT_OPENQRY: %m");
- return 1;
- }
- if(openvtnum==-1) {
- syslog(LOG_ERR, "No free VTs");
- return 1;
- }
-
- snprintf(openvtname, sizeof openvtname, "/dev/tty%d", openvtnum);
- seteuid(0);
- openvt=open(openvtname, O_RDWR);
- if(openvt<0) {
- seteuid(uid);
- syslog(LOG_ERR, "open(%s): %m", openvtname);
- return 1;
- }
-
- chowned=fchown(openvt, uid, gid);
- if(chowned<0) {
- seteuid(uid);
- syslog(LOG_ERR, "fchown(%s): %m", openvtname);
- return 1;
- }
-
- close(console);
-
- if(ioctl(openvt, VT_ACTIVATE, openvtnum)<0) {
- seteuid(uid);
- syslog(LOG_ERR, "VT_ACTIVATE(%d): %m", openvtnum);
- return 1;
- }
-
- while(ioctl(openvt, VT_WAITACTIVE, openvtnum)<0) {
- if(errno!=EINTR) {
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- syslog(LOG_ERR, "VT_WAITACTIVE(%d): %m", openvtnum);
- return 1;
- }
- }
-
- seteuid(uid);
- fp=fdopen(openvt, "r+");
- if(!fp) {
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- syslog(LOG_ERR, "fdopen(%s): %m", openvtname);
- return 1;
- }
-
- if(tcgetattr(openvt, &t)<0) {
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- syslog(LOG_ERR, "tcgetattr(%s): %m", openvtname);
- return 1;
- }
- t.c_lflag &= ~ECHO;
- if(tcsetattr(openvt, TCSANOW, &t)<0) {
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- syslog(LOG_ERR, "tcsetattr(%s): %m", openvtname);
- return 1;
- }
-
- if(fprintf(fp, "\033[2J\033[H")<0) {
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- syslog(LOG_ERR, "write error on %s: %m", openvtname);
- return 1;
- }
- if(argv[1][0] && argv[2][0]) {
- if(fprintf(fp, "Password for PPP client %s on server %s: ", argv[1], argv[2])<0) {
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- syslog(LOG_ERR, "write error on %s: %m", openvtname);
- return 1;
- }
- } else if(argv[1][0] && !argv[2][0]) {
- if(fprintf(fp, "Password for PPP client %s: ", argv[1])<0) {
- syslog(LOG_ERR, "write error on %s: %m", openvtname);
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- return 1;
- }
- } else if(!argv[1][0] && argv[2][0]) {
- if(fprintf(fp, "Password for PPP on server %s: ", argv[2])<0) {
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- syslog(LOG_ERR, "write error on %s: %m", openvtname);
- return 1;
- }
- } else {
- if(fprintf(fp, "Enter PPP password: ")<0) {
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- syslog(LOG_ERR, "write error on %s: %m", openvtname);
- return 1;
- }
- }
-
- if(!fgets(pass, sizeof pass, fp)) {
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- if(ferror(fp)) {
- syslog(LOG_ERR, "read error on %s: %m", openvtname);
- }
- return 1;
- }
- if((nl=strchr(pass, '\n')))
- *nl=0;
- passlen=strlen(pass);
-
- outfd=atoi(argv[3]);
- if((wrote=write(outfd, pass, passlen))!=passlen) {
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- if(wrote<0)
- syslog(LOG_ERR, "write error on outpipe: %m");
- else
- syslog(LOG_ERR, "short write on outpipe");
- return 1;
- }
-
- seteuid(0);
- ioctl(openvt, VT_ACTIVATE, origstate.v_active);
- seteuid(uid);
- return 0;
-}
-
-static int console_owner(uid_t uid, int cons)
-{
- char name[256];
- struct stat st;
- snprintf(name, sizeof name, "/dev/tty%d", cons);
- if(stat(name, &st)<0) {
- if(errno!=ENOENT)
- syslog(LOG_ERR, "stat(%s): %m", name);
- return 0;
- }
- return uid==st.st_uid;
-}
diff --git a/mdk-stage1/ppp/etc.ppp/chap-secrets b/mdk-stage1/ppp/etc.ppp/chap-secrets
deleted file mode 100644
index 7d1c3cd7c..000000000
--- a/mdk-stage1/ppp/etc.ppp/chap-secrets
+++ /dev/null
@@ -1,2 +0,0 @@
-# Secrets for authentication using CHAP
-# client server secret IP addresses
diff --git a/mdk-stage1/ppp/etc.ppp/options b/mdk-stage1/ppp/etc.ppp/options
deleted file mode 100644
index 0f77a9aa0..000000000
--- a/mdk-stage1/ppp/etc.ppp/options
+++ /dev/null
@@ -1,5 +0,0 @@
-lock
-noauth
-noipdefault
-usepeerdns
-
diff --git a/mdk-stage1/ppp/etc.ppp/options.options b/mdk-stage1/ppp/etc.ppp/options.options
deleted file mode 100644
index 4b67b6a0d..000000000
--- a/mdk-stage1/ppp/etc.ppp/options.options
+++ /dev/null
@@ -1 +0,0 @@
-lock
diff --git a/mdk-stage1/ppp/etc.ppp/pap-secrets b/mdk-stage1/ppp/etc.ppp/pap-secrets
deleted file mode 100644
index f8b7dce3c..000000000
--- a/mdk-stage1/ppp/etc.ppp/pap-secrets
+++ /dev/null
@@ -1,2 +0,0 @@
-# Secrets for authentication using PAP
-# client server secret IP addresses
diff --git a/mdk-stage1/ppp/include/linux/if_ppp.h b/mdk-stage1/ppp/include/linux/if_ppp.h
deleted file mode 100644
index 1febf0931..000000000
--- a/mdk-stage1/ppp/include/linux/if_ppp.h
+++ /dev/null
@@ -1,155 +0,0 @@
-/* $Id$ */
-
-/*
- * if_ppp.h - Point-to-Point Protocol definitions.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- */
-
-/*
- * ==FILEVERSION 20000724==
- *
- * NOTE TO MAINTAINERS:
- * If you modify this file at all, please set the above date.
- * if_ppp.h is shipped with a PPP distribution as well as with the kernel;
- * if everyone increases the FILEVERSION number above, then scripts
- * can do the right thing when deciding whether to install a new if_ppp.h
- * file. Don't change the format of that line otherwise, so the
- * installation script can recognize it.
- */
-
-#ifndef _IF_PPP_H_
-#define _IF_PPP_H_
-
-/*
- * Packet sizes
- */
-
-#define PPP_MTU 1500 /* Default MTU (size of Info field) */
-#define PPP_MAXMRU 65000 /* Largest MRU we allow */
-#define PROTO_IPX 0x002b /* protocol numbers */
-#define PROTO_DNA_RT 0x0027 /* DNA Routing */
-
-
-/*
- * Bit definitions for flags.
- */
-
-#define SC_COMP_PROT 0x00000001 /* protocol compression (output) */
-#define SC_COMP_AC 0x00000002 /* header compression (output) */
-#define SC_COMP_TCP 0x00000004 /* TCP (VJ) compression (output) */
-#define SC_NO_TCP_CCID 0x00000008 /* disable VJ connection-id comp. */
-#define SC_REJ_COMP_AC 0x00000010 /* reject adrs/ctrl comp. on input */
-#define SC_REJ_COMP_TCP 0x00000020 /* reject TCP (VJ) comp. on input */
-#define SC_CCP_OPEN 0x00000040 /* Look at CCP packets */
-#define SC_CCP_UP 0x00000080 /* May send/recv compressed packets */
-#define SC_ENABLE_IP 0x00000100 /* IP packets may be exchanged */
-#define SC_LOOP_TRAFFIC 0x00000200 /* send traffic to pppd */
-#define SC_MULTILINK 0x00000400 /* do multilink encapsulation */
-#define SC_MP_SHORTSEQ 0x00000800 /* use short MP sequence numbers */
-#define SC_COMP_RUN 0x00001000 /* compressor has been inited */
-#define SC_DECOMP_RUN 0x00002000 /* decompressor has been inited */
-#define SC_MP_XSHORTSEQ 0x00004000 /* transmit short MP seq numbers */
-#define SC_DEBUG 0x00010000 /* enable debug messages */
-#define SC_LOG_INPKT 0x00020000 /* log contents of good pkts recvd */
-#define SC_LOG_OUTPKT 0x00040000 /* log contents of pkts sent */
-#define SC_LOG_RAWIN 0x00080000 /* log all chars received */
-#define SC_LOG_FLUSH 0x00100000 /* log all chars flushed */
-#define SC_SYNC 0x00200000 /* synchronous serial mode */
-#define SC_MASK 0x0f200fff /* bits that user can change */
-
-/* state bits */
-#define SC_XMIT_BUSY 0x10000000 /* (used by isdn_ppp?) */
-#define SC_RCV_ODDP 0x08000000 /* have rcvd char with odd parity */
-#define SC_RCV_EVNP 0x04000000 /* have rcvd char with even parity */
-#define SC_RCV_B7_1 0x02000000 /* have rcvd char with bit 7 = 1 */
-#define SC_RCV_B7_0 0x01000000 /* have rcvd char with bit 7 = 0 */
-#define SC_DC_FERROR 0x00800000 /* fatal decomp error detected */
-#define SC_DC_ERROR 0x00400000 /* non-fatal decomp error detected */
-
-/*
- * Ioctl definitions.
- */
-
-struct npioctl {
- int protocol; /* PPP protocol, e.g. PPP_IP */
- enum NPmode mode;
-};
-
-/* Structure describing a CCP configuration option, for PPPIOCSCOMPRESS */
-struct ppp_option_data {
- __u8 *ptr;
- __u32 length;
- int transmit;
-};
-
-struct ifpppstatsreq {
- struct ifreq b;
- struct ppp_stats stats; /* statistic information */
-};
-
-struct ifpppcstatsreq {
- struct ifreq b;
- struct ppp_comp_stats stats;
-};
-
-#define ifr__name b.ifr_ifrn.ifrn_name
-#define stats_ptr b.ifr_ifru.ifru_data
-
-/*
- * Ioctl definitions.
- */
-
-#define PPPIOCGFLAGS _IOR('t', 90, int) /* get configuration flags */
-#define PPPIOCSFLAGS _IOW('t', 89, int) /* set configuration flags */
-#define PPPIOCGASYNCMAP _IOR('t', 88, int) /* get async map */
-#define PPPIOCSASYNCMAP _IOW('t', 87, int) /* set async map */
-#define PPPIOCGUNIT _IOR('t', 86, int) /* get ppp unit number */
-#define PPPIOCGRASYNCMAP _IOR('t', 85, int) /* get receive async map */
-#define PPPIOCSRASYNCMAP _IOW('t', 84, int) /* set receive async map */
-#define PPPIOCGMRU _IOR('t', 83, int) /* get max receive unit */
-#define PPPIOCSMRU _IOW('t', 82, int) /* set max receive unit */
-#define PPPIOCSMAXCID _IOW('t', 81, int) /* set VJ max slot ID */
-#define PPPIOCGXASYNCMAP _IOR('t', 80, ext_accm) /* get extended ACCM */
-#define PPPIOCSXASYNCMAP _IOW('t', 79, ext_accm) /* set extended ACCM */
-#define PPPIOCXFERUNIT _IO('t', 78) /* transfer PPP unit */
-#define PPPIOCSCOMPRESS _IOW('t', 77, struct ppp_option_data)
-#define PPPIOCGNPMODE _IOWR('t', 76, struct npioctl) /* get NP mode */
-#define PPPIOCSNPMODE _IOW('t', 75, struct npioctl) /* set NP mode */
-#define PPPIOCSPASS _IOW('t', 71, struct sock_fprog) /* set pass filter */
-#define PPPIOCSACTIVE _IOW('t', 70, struct sock_fprog) /* set active filt */
-#define PPPIOCGDEBUG _IOR('t', 65, int) /* Read debug level */
-#define PPPIOCSDEBUG _IOW('t', 64, int) /* Set debug level */
-#define PPPIOCGIDLE _IOR('t', 63, struct ppp_idle) /* get idle time */
-#define PPPIOCNEWUNIT _IOWR('t', 62, int) /* create new ppp unit */
-#define PPPIOCATTACH _IOW('t', 61, int) /* attach to ppp unit */
-#define PPPIOCDETACH _IOW('t', 60, int) /* detach from ppp unit/chan */
-#define PPPIOCSMRRU _IOW('t', 59, int) /* set multilink MRU */
-#define PPPIOCCONNECT _IOW('t', 58, int) /* connect channel to unit */
-#define PPPIOCDISCONN _IO('t', 57) /* disconnect channel */
-#define PPPIOCATTCHAN _IOW('t', 56, int) /* attach to ppp channel */
-#define PPPIOCGCHAN _IOR('t', 55, int) /* get ppp channel number */
-
-#define SIOCGPPPSTATS (SIOCDEVPRIVATE + 0)
-#define SIOCGPPPVER (SIOCDEVPRIVATE + 1) /* NEVER change this!! */
-#define SIOCGPPPCSTATS (SIOCDEVPRIVATE + 2)
-
-#if !defined(ifr_mtu)
-#define ifr_mtu ifr_ifru.ifru_metric
-#endif
-
-#endif /* _IF_PPP_H_ */
diff --git a/mdk-stage1/ppp/include/linux/if_pppvar.h b/mdk-stage1/ppp/include/linux/if_pppvar.h
deleted file mode 100644
index b2485cd9d..000000000
--- a/mdk-stage1/ppp/include/linux/if_pppvar.h
+++ /dev/null
@@ -1,138 +0,0 @@
-/* From: if_pppvar.h,v 1.2 1995/06/12 11:36:51 paulus Exp */
-/*
- * if_pppvar.h - private structures and declarations for PPP.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/*
- * ==FILEVERSION 990911==
- *
- * NOTE TO MAINTAINERS:
- * If you modify this file at all, please set the above date.
- * if_pppvar.h is shipped with a PPP distribution as well as with the kernel;
- * if everyone increases the FILEVERSION number above, then scripts
- * can do the right thing when deciding whether to install a new if_pppvar.h
- * file. Don't change the format of that line otherwise, so the
- * installation script can recognize it.
- */
-
-/*
- * Supported network protocols. These values are used for
- * indexing sc_npmode.
- */
-
-#define NP_IP 0 /* Internet Protocol */
-#define NP_IPX 1 /* IPX protocol */
-#define NP_AT 2 /* Appletalk protocol */
-#define NP_IPV6 3 /* Internet Protocol */
-#define NUM_NP 4 /* Number of NPs. */
-
-#define OBUFSIZE 256 /* # chars of output buffering */
-
-/*
- * Structure describing each ppp unit.
- */
-
-struct ppp {
- int magic; /* magic value for structure */
- struct ppp *next; /* unit with next index */
- unsigned long inuse; /* are we allocated? */
- int line; /* network interface unit # */
- __u32 flags; /* miscellaneous control flags */
- int mtu; /* maximum xmit frame size */
- int mru; /* maximum receive frame size */
- struct slcompress *slcomp; /* for TCP header compression */
- struct sk_buff_head xmt_q; /* frames to send from pppd */
- struct sk_buff_head rcv_q; /* frames for pppd to read */
- unsigned long xmit_busy; /* bit 0 set when xmitter busy */
-
- /* Information specific to using ppp on async serial lines. */
- struct tty_struct *tty; /* ptr to TTY structure */
- struct tty_struct *backup_tty; /* TTY to use if tty gets closed */
- __u8 escape; /* 0x20 if prev char was PPP_ESC */
- __u8 toss; /* toss this frame */
- volatile __u8 tty_pushing; /* internal state flag */
- volatile __u8 woke_up; /* internal state flag */
- __u32 xmit_async_map[8]; /* 1 bit means that given control
- character is quoted on output*/
- __u32 recv_async_map; /* 1 bit means that given control
- character is ignored on input*/
- __u32 bytes_sent; /* Bytes sent on frame */
- __u32 bytes_rcvd; /* Bytes recvd on frame */
-
- /* Async transmission information */
- struct sk_buff *tpkt; /* frame currently being sent */
- int tpkt_pos; /* how much of it we've done */
- __u16 tfcs; /* FCS so far for it */
- unsigned char *optr; /* where we're up to in sending */
- unsigned char *olim; /* points past last valid char */
-
- /* Async reception information */
- struct sk_buff *rpkt; /* frame currently being rcvd */
- __u16 rfcs; /* FCS so far of rpkt */
-
- /* Queues for select() functionality */
- struct wait_queue *read_wait; /* queue for reading processes */
-
- /* info for detecting idle channels */
- unsigned long last_xmit; /* time of last transmission */
- unsigned long last_recv; /* time last packet received */
-
- /* Statistic information */
- struct pppstat stats; /* statistic information */
-
- /* PPP compression protocol information */
- struct compressor *sc_xcomp; /* transmit compressor */
- void *sc_xc_state; /* transmit compressor state */
- struct compressor *sc_rcomp; /* receive decompressor */
- void *sc_rc_state; /* receive decompressor state */
-
- enum NPmode sc_npmode[NUM_NP]; /* what to do with each NP */
- int sc_xfer; /* PID of reserved PPP table */
- char name[8]; /* space for unit name */
- struct device dev; /* net device structure */
- struct enet_statistics estats; /* more detailed stats */
-
- /* tty output buffer */
- unsigned char obuf[OBUFSIZE]; /* buffer for characters to send */
-};
-
-#define PPP_MAGIC 0x5002
-#define PPP_VERSION "2.3.11"
diff --git a/mdk-stage1/ppp/include/linux/ppp-comp.h b/mdk-stage1/ppp/include/linux/ppp-comp.h
deleted file mode 100644
index 3184d0731..000000000
--- a/mdk-stage1/ppp/include/linux/ppp-comp.h
+++ /dev/null
@@ -1,203 +0,0 @@
-/*
- * ppp-comp.h - Definitions for doing PPP packet compression.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * ==FILEVERSION 980319==
- *
- * NOTE TO MAINTAINERS:
- * If you modify this file at all, please set the above date.
- * ppp-comp.h is shipped with a PPP distribution as well as with the kernel;
- * if everyone increases the FILEVERSION number above, then scripts
- * can do the right thing when deciding whether to install a new ppp-comp.h
- * file. Don't change the format of that line otherwise, so the
- * installation script can recognize it.
- */
-
-#ifndef _NET_PPP_COMP_H
-#define _NET_PPP_COMP_H
-
-/*
- * The following symbols control whether we include code for
- * various compression methods.
- */
-
-#ifndef DO_BSD_COMPRESS
-#define DO_BSD_COMPRESS 1 /* by default, include BSD-Compress */
-#endif
-#ifndef DO_DEFLATE
-#define DO_DEFLATE 1 /* by default, include Deflate */
-#endif
-#define DO_PREDICTOR_1 0
-#define DO_PREDICTOR_2 0
-
-/*
- * Structure giving methods for compression/decompression.
- */
-
-struct compressor {
- int compress_proto; /* CCP compression protocol number */
-
- /* Allocate space for a compressor (transmit side) */
- void *(*comp_alloc) (unsigned char *options, int opt_len);
-
- /* Free space used by a compressor */
- void (*comp_free) (void *state);
-
- /* Initialize a compressor */
- int (*comp_init) (void *state, unsigned char *options,
- int opt_len, int unit, int opthdr, int debug);
-
- /* Reset a compressor */
- void (*comp_reset) (void *state);
-
- /* Compress a packet */
- int (*compress) (void *state, unsigned char *rptr,
- unsigned char *obuf, int isize, int osize);
-
- /* Return compression statistics */
- void (*comp_stat) (void *state, struct compstat *stats);
-
- /* Allocate space for a decompressor (receive side) */
- void *(*decomp_alloc) (unsigned char *options, int opt_len);
-
- /* Free space used by a decompressor */
- void (*decomp_free) (void *state);
-
- /* Initialize a decompressor */
- int (*decomp_init) (void *state, unsigned char *options,
- int opt_len, int unit, int opthdr, int mru,
- int debug);
-
- /* Reset a decompressor */
- void (*decomp_reset) (void *state);
-
- /* Decompress a packet. */
- int (*decompress) (void *state, unsigned char *ibuf, int isize,
- unsigned char *obuf, int osize);
-
- /* Update state for an incompressible packet received */
- void (*incomp) (void *state, unsigned char *ibuf, int icnt);
-
- /* Return decompression statistics */
- void (*decomp_stat) (void *state, struct compstat *stats);
-};
-
-/*
- * The return value from decompress routine is the length of the
- * decompressed packet if successful, otherwise DECOMP_ERROR
- * or DECOMP_FATALERROR if an error occurred.
- *
- * We need to make this distinction so that we can disable certain
- * useful functionality, namely sending a CCP reset-request as a result
- * of an error detected after decompression. This is to avoid infringing
- * a patent held by Motorola.
- * Don't you just lurve software patents.
- */
-
-#define DECOMP_ERROR -1 /* error detected before decomp. */
-#define DECOMP_FATALERROR -2 /* error detected after decomp. */
-
-/*
- * CCP codes.
- */
-
-#define CCP_CONFREQ 1
-#define CCP_CONFACK 2
-#define CCP_TERMREQ 5
-#define CCP_TERMACK 6
-#define CCP_RESETREQ 14
-#define CCP_RESETACK 15
-
-/*
- * Max # bytes for a CCP option
- */
-
-#define CCP_MAX_OPTION_LENGTH 32
-
-/*
- * Parts of a CCP packet.
- */
-
-#define CCP_CODE(dp) ((dp)[0])
-#define CCP_ID(dp) ((dp)[1])
-#define CCP_LENGTH(dp) (((dp)[2] << 8) + (dp)[3])
-#define CCP_HDRLEN 4
-
-#define CCP_OPT_CODE(dp) ((dp)[0])
-#define CCP_OPT_LENGTH(dp) ((dp)[1])
-#define CCP_OPT_MINLEN 2
-
-/*
- * Definitions for BSD-Compress.
- */
-
-#define CI_BSD_COMPRESS 21 /* config. option for BSD-Compress */
-#define CILEN_BSD_COMPRESS 3 /* length of config. option */
-
-/* Macros for handling the 3rd byte of the BSD-Compress config option. */
-#define BSD_NBITS(x) ((x) & 0x1F) /* number of bits requested */
-#define BSD_VERSION(x) ((x) >> 5) /* version of option format */
-#define BSD_CURRENT_VERSION 1 /* current version number */
-#define BSD_MAKE_OPT(v, n) (((v) << 5) | (n))
-
-#define BSD_MIN_BITS 9 /* smallest code size supported */
-#define BSD_MAX_BITS 15 /* largest code size supported */
-
-/*
- * Definitions for Deflate.
- */
-
-#define CI_DEFLATE 26 /* config option for Deflate */
-#define CI_DEFLATE_DRAFT 24 /* value used in original draft RFC */
-#define CILEN_DEFLATE 4 /* length of its config option */
-
-#define DEFLATE_MIN_SIZE 8
-#define DEFLATE_MAX_SIZE 15
-#define DEFLATE_METHOD_VAL 8
-#define DEFLATE_SIZE(x) (((x) >> 4) + DEFLATE_MIN_SIZE)
-#define DEFLATE_METHOD(x) ((x) & 0x0F)
-#define DEFLATE_MAKE_OPT(w) ((((w) - DEFLATE_MIN_SIZE) << 4) \
- + DEFLATE_METHOD_VAL)
-#define DEFLATE_CHK_SEQUENCE 0
-
-/*
- * Definitions for other, as yet unsupported, compression methods.
- */
-
-#define CI_PREDICTOR_1 1 /* config option for Predictor-1 */
-#define CILEN_PREDICTOR_1 2 /* length of its config option */
-#define CI_PREDICTOR_2 2 /* config option for Predictor-2 */
-#define CILEN_PREDICTOR_2 2 /* length of its config option */
-
-#ifdef __KERNEL__
-extern int ppp_register_compressor(struct compressor *);
-extern void ppp_unregister_compressor(struct compressor *);
-#endif /* __KERNEL__ */
-
-#endif /* _NET_PPP_COMP_H */
diff --git a/mdk-stage1/ppp/include/linux/ppp_defs.h b/mdk-stage1/ppp/include/linux/ppp_defs.h
deleted file mode 100644
index 46946fbdc..000000000
--- a/mdk-stage1/ppp/include/linux/ppp_defs.h
+++ /dev/null
@@ -1,185 +0,0 @@
-/* $Id$ */
-
-/*
- * ppp_defs.h - PPP definitions.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- */
-
-/*
- * ==FILEVERSION 20000114==
- *
- * NOTE TO MAINTAINERS:
- * If you modify this file at all, please set the above date.
- * ppp_defs.h is shipped with a PPP distribution as well as with the kernel;
- * if everyone increases the FILEVERSION number above, then scripts
- * can do the right thing when deciding whether to install a new ppp_defs.h
- * file. Don't change the format of that line otherwise, so the
- * installation script can recognize it.
- */
-
-#ifndef _PPP_DEFS_H_
-#define _PPP_DEFS_H_
-
-/*
- * The basic PPP frame.
- */
-#define PPP_HDRLEN 4 /* octets for standard ppp header */
-#define PPP_FCSLEN 2 /* octets for FCS */
-#define PPP_MRU 1500 /* default MRU = max length of info field */
-
-#define PPP_ADDRESS(p) (((__u8 *)(p))[0])
-#define PPP_CONTROL(p) (((__u8 *)(p))[1])
-#define PPP_PROTOCOL(p) ((((__u8 *)(p))[2] << 8) + ((__u8 *)(p))[3])
-
-/*
- * Significant octet values.
- */
-#define PPP_ALLSTATIONS 0xff /* All-Stations broadcast address */
-#define PPP_UI 0x03 /* Unnumbered Information */
-#define PPP_FLAG 0x7e /* Flag Sequence */
-#define PPP_ESCAPE 0x7d /* Asynchronous Control Escape */
-#define PPP_TRANS 0x20 /* Asynchronous transparency modifier */
-
-/*
- * Protocol field values.
- */
-#define PPP_IP 0x21 /* Internet Protocol */
-#define PPP_AT 0x29 /* AppleTalk Protocol */
-#define PPP_IPX 0x2b /* IPX protocol */
-#define PPP_VJC_COMP 0x2d /* VJ compressed TCP */
-#define PPP_VJC_UNCOMP 0x2f /* VJ uncompressed TCP */
-#define PPP_MP 0x3d /* Multilink protocol */
-#define PPP_IPV6 0x57 /* Internet Protocol Version 6 */
-#define PPP_COMPFRAG 0xfb /* fragment compressed below bundle */
-#define PPP_COMP 0xfd /* compressed packet */
-#define PPP_IPCP 0x8021 /* IP Control Protocol */
-#define PPP_ATCP 0x8029 /* AppleTalk Control Protocol */
-#define PPP_IPXCP 0x802b /* IPX Control Protocol */
-#define PPP_IPV6CP 0x8057 /* IPv6 Control Protocol */
-#define PPP_CCPFRAG 0x80fb /* CCP at link level (below MP bundle) */
-#define PPP_CCP 0x80fd /* Compression Control Protocol */
-#define PPP_LCP 0xc021 /* Link Control Protocol */
-#define PPP_PAP 0xc023 /* Password Authentication Protocol */
-#define PPP_LQR 0xc025 /* Link Quality Report protocol */
-#define PPP_CHAP 0xc223 /* Cryptographic Handshake Auth. Protocol */
-#define PPP_CBCP 0xc029 /* Callback Control Protocol */
-
-/*
- * Values for FCS calculations.
- */
-
-#define PPP_INITFCS 0xffff /* Initial FCS value */
-#define PPP_GOODFCS 0xf0b8 /* Good final FCS value */
-#define PPP_FCS(fcs, c) (((fcs) >> 8) ^ fcstab[((fcs) ^ (c)) & 0xff])
-
-/*
- * Extended asyncmap - allows any character to be escaped.
- */
-
-typedef __u32 ext_accm[8];
-
-/*
- * What to do with network protocol (NP) packets.
- */
-enum NPmode {
- NPMODE_PASS, /* pass the packet through */
- NPMODE_DROP, /* silently drop the packet */
- NPMODE_ERROR, /* return an error */
- NPMODE_QUEUE /* save it up for later. */
-};
-
-/*
- * Statistics for LQRP and pppstats
- */
-struct pppstat {
- __u32 ppp_discards; /* # frames discarded */
-
- __u32 ppp_ibytes; /* bytes received */
- __u32 ppp_ioctects; /* bytes received not in error */
- __u32 ppp_ipackets; /* packets received */
- __u32 ppp_ierrors; /* receive errors */
- __u32 ppp_ilqrs; /* # LQR frames received */
-
- __u32 ppp_obytes; /* raw bytes sent */
- __u32 ppp_ooctects; /* frame bytes sent */
- __u32 ppp_opackets; /* packets sent */
- __u32 ppp_oerrors; /* transmit errors */
- __u32 ppp_olqrs; /* # LQR frames sent */
-};
-
-struct vjstat {
- __u32 vjs_packets; /* outbound packets */
- __u32 vjs_compressed; /* outbound compressed packets */
- __u32 vjs_searches; /* searches for connection state */
- __u32 vjs_misses; /* times couldn't find conn. state */
- __u32 vjs_uncompressedin; /* inbound uncompressed packets */
- __u32 vjs_compressedin; /* inbound compressed packets */
- __u32 vjs_errorin; /* inbound unknown type packets */
- __u32 vjs_tossed; /* inbound packets tossed because of error */
-};
-
-struct compstat {
- __u32 unc_bytes; /* total uncompressed bytes */
- __u32 unc_packets; /* total uncompressed packets */
- __u32 comp_bytes; /* compressed bytes */
- __u32 comp_packets; /* compressed packets */
- __u32 inc_bytes; /* incompressible bytes */
- __u32 inc_packets; /* incompressible packets */
-
- /* the compression ratio is defined as in_count / bytes_out */
- __u32 in_count; /* Bytes received */
- __u32 bytes_out; /* Bytes transmitted */
-
- double ratio; /* not computed in kernel. */
-};
-
-struct ppp_stats {
- struct pppstat p; /* basic PPP statistics */
- struct vjstat vj; /* VJ header compression statistics */
-};
-
-struct ppp_comp_stats {
- struct compstat c; /* packet compression statistics */
- struct compstat d; /* packet decompression statistics */
-};
-
-/*
- * The following structure records the time in seconds since
- * the last NP packet was sent or received.
- */
-struct ppp_idle {
- time_t xmit_idle; /* time since last NP packet sent */
- time_t recv_idle; /* time since last NP packet received */
-};
-
-#ifndef __P
-#ifdef __STDC__
-#define __P(x) x
-#else
-#define __P(x) ()
-#endif
-#endif
-
-#endif /* _PPP_DEFS_H_ */
diff --git a/mdk-stage1/ppp/include/net/if_ppp.h b/mdk-stage1/ppp/include/net/if_ppp.h
deleted file mode 100644
index 1527ecf3f..000000000
--- a/mdk-stage1/ppp/include/net/if_ppp.h
+++ /dev/null
@@ -1,133 +0,0 @@
-/* $Id$ */
-
-/*
- * if_ppp.h - Point-to-Point Protocol definitions.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#ifndef _IF_PPP_H_
-#define _IF_PPP_H_
-
-/*
- * Bit definitions for flags.
- */
-#define SC_COMP_PROT 0x00000001 /* protocol compression (output) */
-#define SC_COMP_AC 0x00000002 /* header compression (output) */
-#define SC_COMP_TCP 0x00000004 /* TCP (VJ) compression (output) */
-#define SC_NO_TCP_CCID 0x00000008 /* disable VJ connection-id comp. */
-#define SC_REJ_COMP_AC 0x00000010 /* reject adrs/ctrl comp. on input */
-#define SC_REJ_COMP_TCP 0x00000020 /* reject TCP (VJ) comp. on input */
-#define SC_CCP_OPEN 0x00000040 /* Look at CCP packets */
-#define SC_CCP_UP 0x00000080 /* May send/recv compressed packets */
-#define SC_DEBUG 0x00010000 /* enable debug messages */
-#define SC_LOG_INPKT 0x00020000 /* log contents of good pkts recvd */
-#define SC_LOG_OUTPKT 0x00040000 /* log contents of pkts sent */
-#define SC_LOG_RAWIN 0x00080000 /* log all chars received */
-#define SC_LOG_FLUSH 0x00100000 /* log all chars flushed */
-#define SC_RCV_B7_0 0x01000000 /* have rcvd char with bit 7 = 0 */
-#define SC_RCV_B7_1 0x02000000 /* have rcvd char with bit 7 = 1 */
-#define SC_RCV_EVNP 0x04000000 /* have rcvd char with even parity */
-#define SC_RCV_ODDP 0x08000000 /* have rcvd char with odd parity */
-#define SC_SYNC 0x00200000 /* use synchronous HDLC framing */
-#define SC_MASK 0x0fff00ff /* bits that user can change */
-
-/*
- * State bits in sc_flags, not changeable by user.
- */
-#define SC_TIMEOUT 0x00000400 /* timeout is currently pending */
-#define SC_VJ_RESET 0x00000800 /* need to reset VJ decomp */
-#define SC_COMP_RUN 0x00001000 /* compressor has been inited */
-#define SC_DECOMP_RUN 0x00002000 /* decompressor has been inited */
-#define SC_DC_ERROR 0x00004000 /* non-fatal decomp error detected */
-#define SC_DC_FERROR 0x00008000 /* fatal decomp error detected */
-#define SC_TBUSY 0x10000000 /* xmitter doesn't need a packet yet */
-#define SC_PKTLOST 0x20000000 /* have lost or dropped a packet */
-#define SC_FLUSH 0x40000000 /* flush input until next PPP_FLAG */
-#define SC_ESCAPED 0x80000000 /* saw a PPP_ESCAPE */
-
-/*
- * Ioctl definitions.
- */
-
-struct npioctl {
- int protocol; /* PPP procotol, e.g. PPP_IP */
- enum NPmode mode;
-};
-
-/* Structure describing a CCP configuration option, for PPPIOCSCOMPRESS */
-struct ppp_option_data {
- u_char *ptr;
- u_int length;
- int transmit;
-};
-
-struct ifpppstatsreq {
- char ifr_name[IFNAMSIZ];
- struct ppp_stats stats;
-};
-
-struct ifpppcstatsreq {
- char ifr_name[IFNAMSIZ];
- struct ppp_comp_stats stats;
-};
-
-/*
- * Ioctl definitions.
- */
-
-#define PPPIOCGFLAGS _IOR('t', 90, int) /* get configuration flags */
-#define PPPIOCSFLAGS _IOW('t', 89, int) /* set configuration flags */
-#define PPPIOCGASYNCMAP _IOR('t', 88, int) /* get async map */
-#define PPPIOCSASYNCMAP _IOW('t', 87, int) /* set async map */
-#define PPPIOCGUNIT _IOR('t', 86, int) /* get ppp unit number */
-#define PPPIOCGRASYNCMAP _IOR('t', 85, int) /* get receive async map */
-#define PPPIOCSRASYNCMAP _IOW('t', 84, int) /* set receive async map */
-#define PPPIOCGMRU _IOR('t', 83, int) /* get max receive unit */
-#define PPPIOCSMRU _IOW('t', 82, int) /* set max receive unit */
-#define PPPIOCSMAXCID _IOW('t', 81, int) /* set VJ max slot ID */
-#define PPPIOCGXASYNCMAP _IOR('t', 80, ext_accm) /* get extended ACCM */
-#define PPPIOCSXASYNCMAP _IOW('t', 79, ext_accm) /* set extended ACCM */
-#define PPPIOCXFERUNIT _IO('t', 78) /* transfer PPP unit */
-#define PPPIOCSCOMPRESS _IOW('t', 77, struct ppp_option_data)
-#define PPPIOCGNPMODE _IOWR('t', 76, struct npioctl) /* get NP mode */
-#define PPPIOCSNPMODE _IOW('t', 75, struct npioctl) /* set NP mode */
-#define PPPIOCGIDLE _IOR('t', 74, struct ppp_idle) /* get idle time */
-#ifdef PPP_FILTER
-#define PPPIOCSPASS _IOW('t', 71, struct bpf_program) /* set pass filter */
-#define PPPIOCSACTIVE _IOW('t', 70, struct bpf_program) /* set active filt */
-#endif /* PPP_FILTER */
-
-/* PPPIOC[GS]MTU are alternatives to SIOC[GS]IFMTU, used under Ultrix */
-#define PPPIOCGMTU _IOR('t', 73, int) /* get interface MTU */
-#define PPPIOCSMTU _IOW('t', 72, int) /* set interface MTU */
-
-/*
- * These two are interface ioctls so that pppstats can do them on
- * a socket without having to open the serial device.
- */
-#define SIOCGPPPSTATS _IOWR('i', 123, struct ifpppstatsreq)
-#define SIOCGPPPCSTATS _IOWR('i', 122, struct ifpppcstatsreq)
-
-#if !defined(ifr_mtu)
-#define ifr_mtu ifr_ifru.ifru_metric
-#endif
-
-#if (defined(_KERNEL) || defined(KERNEL)) && !defined(NeXT)
-void pppattach __P((void));
-void pppintr __P((void));
-#endif
-#endif /* _IF_PPP_H_ */
diff --git a/mdk-stage1/ppp/include/net/ppp-comp.h b/mdk-stage1/ppp/include/net/ppp-comp.h
deleted file mode 100644
index 0e6a9c672..000000000
--- a/mdk-stage1/ppp/include/net/ppp-comp.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
- * ppp-comp.h - Definitions for doing PPP packet compression.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-#ifndef _NET_PPP_COMP_H
-#define _NET_PPP_COMP_H
-
-/*
- * The following symbols control whether we include code for
- * various compression methods.
- */
-#ifndef DO_BSD_COMPRESS
-#define DO_BSD_COMPRESS 1 /* by default, include BSD-Compress */
-#endif
-#ifndef DO_DEFLATE
-#define DO_DEFLATE 1 /* by default, include Deflate */
-#endif
-#define DO_PREDICTOR_1 0
-#define DO_PREDICTOR_2 0
-
-/*
- * Structure giving methods for compression/decompression.
- */
-#ifdef PACKETPTR
-struct compressor {
- int compress_proto; /* CCP compression protocol number */
-
- /* Allocate space for a compressor (transmit side) */
- void *(*comp_alloc) __P((u_char *options, int opt_len));
- /* Free space used by a compressor */
- void (*comp_free) __P((void *state));
- /* Initialize a compressor */
- int (*comp_init) __P((void *state, u_char *options, int opt_len,
- int unit, int hdrlen, int debug));
- /* Reset a compressor */
- void (*comp_reset) __P((void *state));
- /* Compress a packet */
- int (*compress) __P((void *state, PACKETPTR *mret,
- PACKETPTR mp, int orig_len, int max_len));
- /* Return compression statistics */
- void (*comp_stat) __P((void *state, struct compstat *stats));
-
- /* Allocate space for a decompressor (receive side) */
- void *(*decomp_alloc) __P((u_char *options, int opt_len));
- /* Free space used by a decompressor */
- void (*decomp_free) __P((void *state));
- /* Initialize a decompressor */
- int (*decomp_init) __P((void *state, u_char *options, int opt_len,
- int unit, int hdrlen, int mru, int debug));
- /* Reset a decompressor */
- void (*decomp_reset) __P((void *state));
- /* Decompress a packet. */
- int (*decompress) __P((void *state, PACKETPTR mp,
- PACKETPTR *dmpp));
- /* Update state for an incompressible packet received */
- void (*incomp) __P((void *state, PACKETPTR mp));
- /* Return decompression statistics */
- void (*decomp_stat) __P((void *state, struct compstat *stats));
-};
-#endif /* PACKETPTR */
-
-/*
- * Return values for decompress routine.
- * We need to make these distinctions so that we can disable certain
- * useful functionality, namely sending a CCP reset-request as a result
- * of an error detected after decompression. This is to avoid infringing
- * a patent held by Motorola.
- * Don't you just lurve software patents.
- */
-#define DECOMP_OK 0 /* everything went OK */
-#define DECOMP_ERROR 1 /* error detected before decomp. */
-#define DECOMP_FATALERROR 2 /* error detected after decomp. */
-
-/*
- * CCP codes.
- */
-#define CCP_CONFREQ 1
-#define CCP_CONFACK 2
-#define CCP_TERMREQ 5
-#define CCP_TERMACK 6
-#define CCP_RESETREQ 14
-#define CCP_RESETACK 15
-
-/*
- * Max # bytes for a CCP option
- */
-#define CCP_MAX_OPTION_LENGTH 32
-
-/*
- * Parts of a CCP packet.
- */
-#define CCP_CODE(dp) ((dp)[0])
-#define CCP_ID(dp) ((dp)[1])
-#define CCP_LENGTH(dp) (((dp)[2] << 8) + (dp)[3])
-#define CCP_HDRLEN 4
-
-#define CCP_OPT_CODE(dp) ((dp)[0])
-#define CCP_OPT_LENGTH(dp) ((dp)[1])
-#define CCP_OPT_MINLEN 2
-
-/*
- * Definitions for BSD-Compress.
- */
-#define CI_BSD_COMPRESS 21 /* config. option for BSD-Compress */
-#define CILEN_BSD_COMPRESS 3 /* length of config. option */
-
-/* Macros for handling the 3rd byte of the BSD-Compress config option. */
-#define BSD_NBITS(x) ((x) & 0x1F) /* number of bits requested */
-#define BSD_VERSION(x) ((x) >> 5) /* version of option format */
-#define BSD_CURRENT_VERSION 1 /* current version number */
-#define BSD_MAKE_OPT(v, n) (((v) << 5) | (n))
-
-#define BSD_MIN_BITS 9 /* smallest code size supported */
-#define BSD_MAX_BITS 15 /* largest code size supported */
-
-/*
- * Definitions for Deflate.
- */
-#define CI_DEFLATE 26 /* config option for Deflate */
-#define CI_DEFLATE_DRAFT 24 /* value used in original draft RFC */
-#define CILEN_DEFLATE 4 /* length of its config option */
-
-#define DEFLATE_MIN_SIZE 8
-#define DEFLATE_MAX_SIZE 15
-#define DEFLATE_METHOD_VAL 8
-#define DEFLATE_SIZE(x) (((x) >> 4) + DEFLATE_MIN_SIZE)
-#define DEFLATE_METHOD(x) ((x) & 0x0F)
-#define DEFLATE_MAKE_OPT(w) ((((w) - DEFLATE_MIN_SIZE) << 4) \
- + DEFLATE_METHOD_VAL)
-#define DEFLATE_CHK_SEQUENCE 0
-
-/*
- * Definitions for other, as yet unsupported, compression methods.
- */
-#define CI_PREDICTOR_1 1 /* config option for Predictor-1 */
-#define CILEN_PREDICTOR_1 2 /* length of its config option */
-#define CI_PREDICTOR_2 2 /* config option for Predictor-2 */
-#define CILEN_PREDICTOR_2 2 /* length of its config option */
-
-#endif /* _NET_PPP_COMP_H */
diff --git a/mdk-stage1/ppp/include/net/ppp_defs.h b/mdk-stage1/ppp/include/net/ppp_defs.h
deleted file mode 100644
index 46bef52bb..000000000
--- a/mdk-stage1/ppp/include/net/ppp_defs.h
+++ /dev/null
@@ -1,184 +0,0 @@
-/* $Id$ */
-
-/*
- * ppp_defs.h - PPP definitions.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- */
-
-#ifndef _PPP_DEFS_H_
-#define _PPP_DEFS_H_
-
-/*
- * The basic PPP frame.
- */
-#define PPP_HDRLEN 4 /* octets for standard ppp header */
-#define PPP_FCSLEN 2 /* octets for FCS */
-
-/*
- * Packet sizes
- *
- * Note - lcp shouldn't be allowed to negotiate stuff outside these
- * limits. See lcp.h in the pppd directory.
- * (XXX - these constants should simply be shared by lcp.c instead
- * of living in lcp.h)
- */
-#define PPP_MTU 1500 /* Default MTU (size of Info field) */
-#define PPP_MAXMTU 65535 - (PPP_HDRLEN + PPP_FCSLEN)
-#define PPP_MINMTU 64
-#define PPP_MRU 1500 /* default MRU = max length of info field */
-#define PPP_MAXMRU 65000 /* Largest MRU we allow */
-#define PPP_MINMRU 128
-
-#define PPP_ADDRESS(p) (((u_char *)(p))[0])
-#define PPP_CONTROL(p) (((u_char *)(p))[1])
-#define PPP_PROTOCOL(p) ((((u_char *)(p))[2] << 8) + ((u_char *)(p))[3])
-
-/*
- * Significant octet values.
- */
-#define PPP_ALLSTATIONS 0xff /* All-Stations broadcast address */
-#define PPP_UI 0x03 /* Unnumbered Information */
-#define PPP_FLAG 0x7e /* Flag Sequence */
-#define PPP_ESCAPE 0x7d /* Asynchronous Control Escape */
-#define PPP_TRANS 0x20 /* Asynchronous transparency modifier */
-
-/*
- * Protocol field values.
- */
-#define PPP_IP 0x21 /* Internet Protocol */
-#define PPP_AT 0x29 /* AppleTalk Protocol */
-#define PPP_IPX 0x2b /* IPX protocol */
-#define PPP_VJC_COMP 0x2d /* VJ compressed TCP */
-#define PPP_VJC_UNCOMP 0x2f /* VJ uncompressed TCP */
-#define PPP_IPV6 0x57 /* Internet Protocol Version 6 */
-#define PPP_COMP 0xfd /* compressed packet */
-#define PPP_IPCP 0x8021 /* IP Control Protocol */
-#define PPP_ATCP 0x8029 /* AppleTalk Control Protocol */
-#define PPP_IPXCP 0x802b /* IPX Control Protocol */
-#define PPP_IPV6CP 0x8057 /* IPv6 Control Protocol */
-#define PPP_CCP 0x80fd /* Compression Control Protocol */
-#define PPP_LCP 0xc021 /* Link Control Protocol */
-#define PPP_PAP 0xc023 /* Password Authentication Protocol */
-#define PPP_LQR 0xc025 /* Link Quality Report protocol */
-#define PPP_CHAP 0xc223 /* Cryptographic Handshake Auth. Protocol */
-#define PPP_CBCP 0xc029 /* Callback Control Protocol */
-
-/*
- * Values for FCS calculations.
- */
-#define PPP_INITFCS 0xffff /* Initial FCS value */
-#define PPP_GOODFCS 0xf0b8 /* Good final FCS value */
-#define PPP_FCS(fcs, c) (((fcs) >> 8) ^ fcstab[((fcs) ^ (c)) & 0xff])
-
-/*
- * A 32-bit unsigned integral type.
- */
-
-#if !defined(__BIT_TYPES_DEFINED__) && !defined(_BITYPES) \
- && !defined(__FreeBSD__) && (NS_TARGET < 40) && !defined(__dietlibc__)
-#ifdef UINT32_T
-typedef UINT32_T u_int32_t;
-#else
-typedef unsigned int u_int32_t;
-typedef unsigned short u_int16_t;
-#endif
-#endif
-
-/*
- * Extended asyncmap - allows any character to be escaped.
- */
-typedef u_int32_t ext_accm[8];
-
-/*
- * What to do with network protocol (NP) packets.
- */
-enum NPmode {
- NPMODE_PASS, /* pass the packet through */
- NPMODE_DROP, /* silently drop the packet */
- NPMODE_ERROR, /* return an error */
- NPMODE_QUEUE /* save it up for later. */
-};
-
-/*
- * Statistics.
- */
-struct pppstat {
- unsigned int ppp_ibytes; /* bytes received */
- unsigned int ppp_ipackets; /* packets received */
- unsigned int ppp_ierrors; /* receive errors */
- unsigned int ppp_obytes; /* bytes sent */
- unsigned int ppp_opackets; /* packets sent */
- unsigned int ppp_oerrors; /* transmit errors */
-};
-
-struct vjstat {
- unsigned int vjs_packets; /* outbound packets */
- unsigned int vjs_compressed; /* outbound compressed packets */
- unsigned int vjs_searches; /* searches for connection state */
- unsigned int vjs_misses; /* times couldn't find conn. state */
- unsigned int vjs_uncompressedin; /* inbound uncompressed packets */
- unsigned int vjs_compressedin; /* inbound compressed packets */
- unsigned int vjs_errorin; /* inbound unknown type packets */
- unsigned int vjs_tossed; /* inbound packets tossed because of error */
-};
-
-struct ppp_stats {
- struct pppstat p; /* basic PPP statistics */
- struct vjstat vj; /* VJ header compression statistics */
-};
-
-struct compstat {
- unsigned int unc_bytes; /* total uncompressed bytes */
- unsigned int unc_packets; /* total uncompressed packets */
- unsigned int comp_bytes; /* compressed bytes */
- unsigned int comp_packets; /* compressed packets */
- unsigned int inc_bytes; /* incompressible bytes */
- unsigned int inc_packets; /* incompressible packets */
- unsigned int ratio; /* recent compression ratio << 8 */
-};
-
-struct ppp_comp_stats {
- struct compstat c; /* packet compression statistics */
- struct compstat d; /* packet decompression statistics */
-};
-
-/*
- * The following structure records the time in seconds since
- * the last NP packet was sent or received.
- */
-struct ppp_idle {
- time_t xmit_idle; /* time since last NP packet sent */
- time_t recv_idle; /* time since last NP packet received */
-};
-
-#ifndef __P
-#ifdef __STDC__
-#define __P(x) x
-#else
-#define __P(x) ()
-#endif
-#endif
-
-#endif /* _PPP_DEFS_H_ */
diff --git a/mdk-stage1/ppp/include/net/pppio.h b/mdk-stage1/ppp/include/net/pppio.h
deleted file mode 100644
index 9db1ca9ab..000000000
--- a/mdk-stage1/ppp/include/net/pppio.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * pppio.h - ioctl and other misc. definitions for STREAMS modules.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-#define _PPPIO(n) (('p' << 8) + (n))
-
-#define PPPIO_NEWPPA _PPPIO(130) /* allocate a new PPP unit */
-#define PPPIO_GETSTAT _PPPIO(131) /* get PPP statistics */
-#define PPPIO_GETCSTAT _PPPIO(132) /* get PPP compression stats */
-#define PPPIO_MTU _PPPIO(133) /* set max transmission unit */
-#define PPPIO_MRU _PPPIO(134) /* set max receive unit */
-#define PPPIO_CFLAGS _PPPIO(135) /* set/clear/get compression flags */
-#define PPPIO_XCOMP _PPPIO(136) /* alloc transmit compressor */
-#define PPPIO_RCOMP _PPPIO(137) /* alloc receive decompressor */
-#define PPPIO_XACCM _PPPIO(138) /* set transmit asyncmap */
-#define PPPIO_RACCM _PPPIO(139) /* set receive asyncmap */
-#define PPPIO_VJINIT _PPPIO(140) /* initialize VJ comp/decomp */
-#define PPPIO_ATTACH _PPPIO(141) /* attach to a ppa (without putmsg) */
-#define PPPIO_LASTMOD _PPPIO(142) /* mark last ppp module */
-#define PPPIO_GCLEAN _PPPIO(143) /* get 8-bit-clean flags */
-#define PPPIO_DEBUG _PPPIO(144) /* request debug information */
-#define PPPIO_BIND _PPPIO(145) /* bind to SAP */
-#define PPPIO_NPMODE _PPPIO(146) /* set mode for handling data pkts */
-#define PPPIO_GIDLE _PPPIO(147) /* get time since last data pkt */
-#define PPPIO_PASSFILT _PPPIO(148) /* set filter for packets to pass */
-#define PPPIO_ACTIVEFILT _PPPIO(149) /* set filter for "link active" pkts */
-
-/*
- * Values for PPPIO_CFLAGS
- */
-#define COMP_AC 0x1 /* compress address/control */
-#define DECOMP_AC 0x2 /* decompress address/control */
-#define COMP_PROT 0x4 /* compress PPP protocol */
-#define DECOMP_PROT 0x8 /* decompress PPP protocol */
-
-#define COMP_VJC 0x10 /* compress TCP/IP headers */
-#define COMP_VJCCID 0x20 /* compress connection ID as well */
-#define DECOMP_VJC 0x40 /* decompress TCP/IP headers */
-#define DECOMP_VJCCID 0x80 /* accept compressed connection ID */
-
-#define CCP_ISOPEN 0x100 /* look at CCP packets */
-#define CCP_ISUP 0x200 /* do packet comp/decomp */
-#define CCP_ERROR 0x400 /* (status) error in packet decomp */
-#define CCP_FATALERROR 0x800 /* (status) fatal error ditto */
-#define CCP_COMP_RUN 0x1000 /* (status) seen CCP ack sent */
-#define CCP_DECOMP_RUN 0x2000 /* (status) seen CCP ack rcvd */
-
-/*
- * Values for 8-bit-clean flags.
- */
-#define RCV_B7_0 1 /* have rcvd char with bit 7 = 0 */
-#define RCV_B7_1 2 /* have rcvd char with bit 7 = 1 */
-#define RCV_EVNP 4 /* have rcvd char with even parity */
-#define RCV_ODDP 8 /* have rcvd char with odd parity */
-
-/*
- * Values for the first byte of M_CTL messages passed between
- * PPP modules.
- */
-#define PPPCTL_OERROR 0xe0 /* output error [up] */
-#define PPPCTL_IERROR 0xe1 /* input error (e.g. FCS) [up] */
-#define PPPCTL_MTU 0xe2 /* set MTU [down] */
-#define PPPCTL_MRU 0xe3 /* set MRU [down] */
-#define PPPCTL_UNIT 0xe4 /* note PPP unit number [down] */
-
-/*
- * Values for the integer argument to PPPIO_DEBUG.
- */
-#define PPPDBG_DUMP 0x10000 /* print out debug info now */
-#define PPPDBG_LOG 0x100 /* log various things */
-#define PPPDBG_DRIVER 0 /* identifies ppp driver as target */
-#define PPPDBG_IF 1 /* identifies ppp network i/f target */
-#define PPPDBG_COMP 2 /* identifies ppp compression target */
-#define PPPDBG_AHDLC 3 /* identifies ppp async hdlc target */
diff --git a/mdk-stage1/ppp/include/net/slcompress.h b/mdk-stage1/ppp/include/net/slcompress.h
deleted file mode 100644
index 9e19bc0ed..000000000
--- a/mdk-stage1/ppp/include/net/slcompress.h
+++ /dev/null
@@ -1,148 +0,0 @@
-/*
- * Definitions for tcp compression routines.
- *
- * $Id$
- *
- * Copyright (c) 1989 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Van Jacobson (van@helios.ee.lbl.gov), Dec 31, 1989:
- * - Initial distribution.
- */
-
-#ifndef _SLCOMPRESS_H_
-#define _SLCOMPRESS_H_
-
-#define MAX_STATES 16 /* must be > 2 and < 256 */
-#define MAX_HDR MLEN /* XXX 4bsd-ism: should really be 128 */
-
-/*
- * Compressed packet format:
- *
- * The first octet contains the packet type (top 3 bits), TCP
- * 'push' bit, and flags that indicate which of the 4 TCP sequence
- * numbers have changed (bottom 5 bits). The next octet is a
- * conversation number that associates a saved IP/TCP header with
- * the compressed packet. The next two octets are the TCP checksum
- * from the original datagram. The next 0 to 15 octets are
- * sequence number changes, one change per bit set in the header
- * (there may be no changes and there are two special cases where
- * the receiver implicitly knows what changed -- see below).
- *
- * There are 5 numbers which can change (they are always inserted
- * in the following order): TCP urgent pointer, window,
- * acknowlegement, sequence number and IP ID. (The urgent pointer
- * is different from the others in that its value is sent, not the
- * change in value.) Since typical use of SLIP links is biased
- * toward small packets (see comments on MTU/MSS below), changes
- * use a variable length coding with one octet for numbers in the
- * range 1 - 255 and 3 octets (0, MSB, LSB) for numbers in the
- * range 256 - 65535 or 0. (If the change in sequence number or
- * ack is more than 65535, an uncompressed packet is sent.)
- */
-
-/*
- * Packet types (must not conflict with IP protocol version)
- *
- * The top nibble of the first octet is the packet type. There are
- * three possible types: IP (not proto TCP or tcp with one of the
- * control flags set); uncompressed TCP (a normal IP/TCP packet but
- * with the 8-bit protocol field replaced by an 8-bit connection id --
- * this type of packet syncs the sender & receiver); and compressed
- * TCP (described above).
- *
- * LSB of 4-bit field is TCP "PUSH" bit (a worthless anachronism) and
- * is logically part of the 4-bit "changes" field that follows. Top
- * three bits are actual packet type. For backward compatibility
- * and in the interest of conserving bits, numbers are chosen so the
- * IP protocol version number (4) which normally appears in this nibble
- * means "IP packet".
- */
-
-/* packet types */
-#define TYPE_IP 0x40
-#define TYPE_UNCOMPRESSED_TCP 0x70
-#define TYPE_COMPRESSED_TCP 0x80
-#define TYPE_ERROR 0x00
-
-/* Bits in first octet of compressed packet */
-#define NEW_C 0x40 /* flag bits for what changed in a packet */
-#define NEW_I 0x20
-#define NEW_S 0x08
-#define NEW_A 0x04
-#define NEW_W 0x02
-#define NEW_U 0x01
-
-/* reserved, special-case values of above */
-#define SPECIAL_I (NEW_S|NEW_W|NEW_U) /* echoed interactive traffic */
-#define SPECIAL_D (NEW_S|NEW_A|NEW_W|NEW_U) /* unidirectional data */
-#define SPECIALS_MASK (NEW_S|NEW_A|NEW_W|NEW_U)
-
-#define TCP_PUSH_BIT 0x10
-
-
-/*
- * "state" data for each active tcp conversation on the wire. This is
- * basically a copy of the entire IP/TCP header from the last packet
- * we saw from the conversation together with a small identifier
- * the transmit & receive ends of the line use to locate saved header.
- */
-struct cstate {
- struct cstate *cs_next; /* next most recently used cstate (xmit only) */
- u_short cs_hlen; /* size of hdr (receive only) */
- u_char cs_id; /* connection # associated with this state */
- u_char cs_filler;
- union {
- char csu_hdr[MAX_HDR];
- struct ip csu_ip; /* ip/tcp hdr from most recent packet */
- } slcs_u;
-};
-#define cs_ip slcs_u.csu_ip
-#define cs_hdr slcs_u.csu_hdr
-
-/*
- * all the state data for one serial line (we need one of these
- * per line).
- */
-struct slcompress {
- struct cstate *last_cs; /* most recently used tstate */
- u_char last_recv; /* last rcvd conn. id */
- u_char last_xmit; /* last sent conn. id */
- u_short flags;
-#ifndef SL_NO_STATS
- int sls_packets; /* outbound packets */
- int sls_compressed; /* outbound compressed packets */
- int sls_searches; /* searches for connection state */
- int sls_misses; /* times couldn't find conn. state */
- int sls_uncompressedin; /* inbound uncompressed packets */
- int sls_compressedin; /* inbound compressed packets */
- int sls_errorin; /* inbound unknown type packets */
- int sls_tossed; /* inbound packets tossed because of error */
-#endif
- struct cstate tstate[MAX_STATES]; /* xmit connection states */
- struct cstate rstate[MAX_STATES]; /* receive connection states */
-};
-/* flag values */
-#define SLF_TOSS 1 /* tossing rcvd frames because of input err */
-
-void sl_compress_init __P((struct slcompress *));
-void sl_compress_setup __P((struct slcompress *, int));
-u_int sl_compress_tcp __P((struct mbuf *,
- struct ip *, struct slcompress *, int));
-int sl_uncompress_tcp __P((u_char **, int, u_int, struct slcompress *));
-int sl_uncompress_tcp_core __P((u_char *, int, int, u_int,
- struct slcompress *, u_char **, u_int *));
-
-#endif /* _SLCOMPRESS_H_ */
diff --git a/mdk-stage1/ppp/include/net/vjcompress.h b/mdk-stage1/ppp/include/net/vjcompress.h
deleted file mode 100644
index c64596926..000000000
--- a/mdk-stage1/ppp/include/net/vjcompress.h
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Definitions for tcp compression routines.
- *
- * $Id$
- *
- * Copyright (c) 1989 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Van Jacobson (van@helios.ee.lbl.gov), Dec 31, 1989:
- * - Initial distribution.
- */
-
-#ifndef _VJCOMPRESS_H_
-#define _VJCOMPRESS_H_
-
-#define MAX_STATES 16 /* must be > 2 and < 256 */
-#define MAX_HDR 128
-
-/*
- * Compressed packet format:
- *
- * The first octet contains the packet type (top 3 bits), TCP
- * 'push' bit, and flags that indicate which of the 4 TCP sequence
- * numbers have changed (bottom 5 bits). The next octet is a
- * conversation number that associates a saved IP/TCP header with
- * the compressed packet. The next two octets are the TCP checksum
- * from the original datagram. The next 0 to 15 octets are
- * sequence number changes, one change per bit set in the header
- * (there may be no changes and there are two special cases where
- * the receiver implicitly knows what changed -- see below).
- *
- * There are 5 numbers which can change (they are always inserted
- * in the following order): TCP urgent pointer, window,
- * acknowlegement, sequence number and IP ID. (The urgent pointer
- * is different from the others in that its value is sent, not the
- * change in value.) Since typical use of SLIP links is biased
- * toward small packets (see comments on MTU/MSS below), changes
- * use a variable length coding with one octet for numbers in the
- * range 1 - 255 and 3 octets (0, MSB, LSB) for numbers in the
- * range 256 - 65535 or 0. (If the change in sequence number or
- * ack is more than 65535, an uncompressed packet is sent.)
- */
-
-/*
- * Packet types (must not conflict with IP protocol version)
- *
- * The top nibble of the first octet is the packet type. There are
- * three possible types: IP (not proto TCP or tcp with one of the
- * control flags set); uncompressed TCP (a normal IP/TCP packet but
- * with the 8-bit protocol field replaced by an 8-bit connection id --
- * this type of packet syncs the sender & receiver); and compressed
- * TCP (described above).
- *
- * LSB of 4-bit field is TCP "PUSH" bit (a worthless anachronism) and
- * is logically part of the 4-bit "changes" field that follows. Top
- * three bits are actual packet type. For backward compatibility
- * and in the interest of conserving bits, numbers are chosen so the
- * IP protocol version number (4) which normally appears in this nibble
- * means "IP packet".
- */
-
-/* packet types */
-#define TYPE_IP 0x40
-#define TYPE_UNCOMPRESSED_TCP 0x70
-#define TYPE_COMPRESSED_TCP 0x80
-#define TYPE_ERROR 0x00
-
-/* Bits in first octet of compressed packet */
-#define NEW_C 0x40 /* flag bits for what changed in a packet */
-#define NEW_I 0x20
-#define NEW_S 0x08
-#define NEW_A 0x04
-#define NEW_W 0x02
-#define NEW_U 0x01
-
-/* reserved, special-case values of above */
-#define SPECIAL_I (NEW_S|NEW_W|NEW_U) /* echoed interactive traffic */
-#define SPECIAL_D (NEW_S|NEW_A|NEW_W|NEW_U) /* unidirectional data */
-#define SPECIALS_MASK (NEW_S|NEW_A|NEW_W|NEW_U)
-
-#define TCP_PUSH_BIT 0x10
-
-
-/*
- * "state" data for each active tcp conversation on the wire. This is
- * basically a copy of the entire IP/TCP header from the last packet
- * we saw from the conversation together with a small identifier
- * the transmit & receive ends of the line use to locate saved header.
- */
-struct cstate {
- struct cstate *cs_next; /* next most recently used state (xmit only) */
- u_short cs_hlen; /* size of hdr (receive only) */
- u_char cs_id; /* connection # associated with this state */
- u_char cs_filler;
- union {
- char csu_hdr[MAX_HDR];
- struct ip csu_ip; /* ip/tcp hdr from most recent packet */
- } vjcs_u;
-};
-#define cs_ip vjcs_u.csu_ip
-#define cs_hdr vjcs_u.csu_hdr
-
-/*
- * all the state data for one serial line (we need one of these per line).
- */
-struct vjcompress {
- struct cstate *last_cs; /* most recently used tstate */
- u_char last_recv; /* last rcvd conn. id */
- u_char last_xmit; /* last sent conn. id */
- u_short flags;
-#ifndef VJ_NO_STATS
- struct vjstat stats;
-#endif
- struct cstate tstate[MAX_STATES]; /* xmit connection states */
- struct cstate rstate[MAX_STATES]; /* receive connection states */
-};
-
-/* flag values */
-#define VJF_TOSS 1 /* tossing rcvd frames because of input err */
-
-extern void vj_compress_init __P((struct vjcompress *comp, int max_state));
-extern u_int vj_compress_tcp __P((struct ip *ip, u_int mlen,
- struct vjcompress *comp, int compress_cid_flag,
- u_char **vjhdrp));
-extern void vj_uncompress_err __P((struct vjcompress *comp));
-extern int vj_uncompress_uncomp __P((u_char *buf, int buflen,
- struct vjcompress *comp));
-extern int vj_uncompress_tcp __P((u_char *buf, int buflen, int total_len,
- struct vjcompress *comp, u_char **hdrp,
- u_int *hlenp));
-
-#endif /* _VJCOMPRESS_H_ */
diff --git a/mdk-stage1/ppp/include/pcap-int.h b/mdk-stage1/ppp/include/pcap-int.h
deleted file mode 100644
index 323994929..000000000
--- a/mdk-stage1/ppp/include/pcap-int.h
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright (c) 1994, 1995, 1996
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the Computer Systems
- * Engineering Group at Lawrence Berkeley Laboratory.
- * 4. Neither the name of the University nor of the Laboratory may be used
- * to endorse or promote products derived from this software without
- * specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#) $Header$ (LBL)
- */
-
-#ifndef pcap_int_h
-#define pcap_int_h
-
-#include <pcap.h>
-
-/*
- * Savefile
- */
-struct pcap_sf {
- FILE *rfile;
- int swapped;
- int version_major;
- int version_minor;
- u_char *base;
-};
-
-struct pcap_md {
- struct pcap_stat stat;
- /*XXX*/
- int use_bpf;
- u_long TotPkts; /* can't oflow for 79 hrs on ether */
- u_long TotAccepted; /* count accepted by filter */
- u_long TotDrops; /* count of dropped packets */
- long TotMissed; /* missed by i/f during this run */
- long OrigMissed; /* missed by i/f before this run */
-#ifdef linux
- int pad;
- int skip;
- char *device;
-#endif
-};
-
-struct pcap {
- int fd;
- int snapshot;
- int linktype;
- int tzoff; /* timezone offset */
- int offset; /* offset for proper alignment */
-
- struct pcap_sf sf;
- struct pcap_md md;
-
- /*
- * Read buffer.
- */
- int bufsize;
- u_char *buffer;
- u_char *bp;
- int cc;
-
- /*
- * Place holder for pcap_next().
- */
- u_char *pkt;
-
-
- /*
- * Placeholder for filter code if bpf not in kernel.
- */
- struct bpf_program fcode;
-
- char errbuf[PCAP_ERRBUF_SIZE];
-};
-
-int yylex(void);
-
-#ifndef min
-#define min(a, b) ((a) > (b) ? (b) : (a))
-#endif
-
-/* XXX should these be in pcap.h? */
-int pcap_offline_read(pcap_t *, int, pcap_handler, u_char *);
-int pcap_read(pcap_t *, int cnt, pcap_handler, u_char *);
-
-/* Ultrix pads to make everything line up on a nice boundary */
-#if defined(ultrix) || defined(__alpha)
-#define PCAP_FDDIPAD 3
-#endif
-
-/* XXX */
-extern int pcap_fddipad;
-#endif
diff --git a/mdk-stage1/ppp/linux/Makefile.top b/mdk-stage1/ppp/linux/Makefile.top
deleted file mode 100644
index fa34ce59f..000000000
--- a/mdk-stage1/ppp/linux/Makefile.top
+++ /dev/null
@@ -1,55 +0,0 @@
-# PPP top-level Makefile for Linux.
-
-
-BINDIR = $(DESTDIR)/usr/sbin
-MANDIR = $(DESTDIR)/usr/man
-ETCDIR = $(DESTDIR)/etc/ppp
-
-# uid 0 = root
-INSTALL= install
-
-all:
- cd chat; $(MAKE) $(MFLAGS) all
- cd pppd; $(MAKE) $(MFLAGS) all
- cd pppstats; $(MAKE) $(MFLAGS) all
- cd pppdump; $(MAKE) $(MFLAGS) all
-
-install: $(BINDIR) $(MANDIR)/man8 install-progs install-etcppp
-
-install-progs:
- cd chat; $(MAKE) BINDIR=$(BINDIR) MANDIR=$(MANDIR) $(MFLAGS) install
- cd pppd; $(MAKE) BINDIR=$(BINDIR) MANDIR=$(MANDIR) $(MFLAGS) install
- cd pppstats; $(MAKE) BINDIR=$(BINDIR) MANDIR=$(MANDIR) $(MFLAGS) install
- cd pppdump; $(MAKE) BINDIR=$(BINDIR) MANDIR=$(MANDIR) $(MFLAGS) install
-
-install-etcppp: $(ETCDIR) $(ETCDIR)/options $(ETCDIR)/pap-secrets \
- $(ETCDIR)/chap-secrets
-
-$(ETCDIR)/options:
- $(INSTALL) -c -m 644 etc.ppp/options $@
-$(ETCDIR)/pap-secrets:
- $(INSTALL) -c -m 600 etc.ppp/pap-secrets $@
-$(ETCDIR)/chap-secrets:
- $(INSTALL) -c -m 600 etc.ppp/chap-secrets $@
-
-$(BINDIR):
- $(INSTALL) -d -m 755 $@
-$(MANDIR)/man8:
- $(INSTALL) -d -m 755 $@
-$(ETCDIR):
- $(INSTALL) -d -m 755 $@
-
-clean:
- rm -f `find . -name '*.[oas]' -print`
- rm -f `find . -name 'core' -print`
- rm -f `find . -name '*~' -print`
- cd chat; $(MAKE) clean
- cd pppd; $(MAKE) clean
- cd pppstats; $(MAKE) clean
- cd pppdump; $(MAKE) clean
-
-dist-clean: clean
- rm -f Makefile `find . -name Makefile -print`
-
-#kernel:
-# cd linux; ./kinstall.sh
diff --git a/mdk-stage1/ppp/modules/bsd-comp.c b/mdk-stage1/ppp/modules/bsd-comp.c
deleted file mode 100644
index b1b9325c7..000000000
--- a/mdk-stage1/ppp/modules/bsd-comp.c
+++ /dev/null
@@ -1,1116 +0,0 @@
-/* Because this code is derived from the 4.3BSD compress source:
- *
- *
- * Copyright (c) 1985, 1986 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * James A. Woods, derived from original work by Spencer Thomas
- * and Joseph Orost.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-/*
- * This version is for use with STREAMS under SunOS 4.x,
- * Digital UNIX, AIX 4.x, and SVR4 systems including Solaris 2.
- *
- * $Id$
- */
-
-#ifdef AIX4
-#include <net/net_globals.h>
-#endif
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/stream.h>
-#include <net/ppp_defs.h>
-#include "ppp_mod.h"
-
-#ifdef SVR4
-#include <sys/byteorder.h>
-#ifndef _BIG_ENDIAN
-#define BSD_LITTLE_ENDIAN
-#endif
-#endif
-
-#ifdef __osf__
-#undef FIRST
-#undef LAST
-#define BSD_LITTLE_ENDIAN
-#endif
-
-#define PACKETPTR mblk_t *
-#include <net/ppp-comp.h>
-
-#if DO_BSD_COMPRESS
-
-/*
- * PPP "BSD compress" compression
- * The differences between this compression and the classic BSD LZW
- * source are obvious from the requirement that the classic code worked
- * with files while this handles arbitrarily long streams that
- * are broken into packets. They are:
- *
- * When the code size expands, a block of junk is not emitted by
- * the compressor and not expected by the decompressor.
- *
- * New codes are not necessarily assigned every time an old
- * code is output by the compressor. This is because a packet
- * end forces a code to be emitted, but does not imply that a
- * new sequence has been seen.
- *
- * The compression ratio is checked at the first end of a packet
- * after the appropriate gap. Besides simplifying and speeding
- * things up, this makes it more likely that the transmitter
- * and receiver will agree when the dictionary is cleared when
- * compression is not going well.
- */
-
-/*
- * A dictionary for doing BSD compress.
- */
-struct bsd_db {
- int totlen; /* length of this structure */
- u_int hsize; /* size of the hash table */
- u_char hshift; /* used in hash function */
- u_char n_bits; /* current bits/code */
- u_char maxbits;
- u_char debug;
- u_char unit;
- u_short seqno; /* sequence number of next packet */
- u_int hdrlen; /* header length to preallocate */
- u_int mru;
- u_int maxmaxcode; /* largest valid code */
- u_int max_ent; /* largest code in use */
- u_int in_count; /* uncompressed bytes, aged */
- u_int bytes_out; /* compressed bytes, aged */
- u_int ratio; /* recent compression ratio */
- u_int checkpoint; /* when to next check the ratio */
- u_int clear_count; /* times dictionary cleared */
- u_int incomp_count; /* incompressible packets */
- u_int incomp_bytes; /* incompressible bytes */
- u_int uncomp_count; /* uncompressed packets */
- u_int uncomp_bytes; /* uncompressed bytes */
- u_int comp_count; /* compressed packets */
- u_int comp_bytes; /* compressed bytes */
- u_short *lens; /* array of lengths of codes */
- struct bsd_dict {
- union { /* hash value */
- u_int32_t fcode;
- struct {
-#ifdef BSD_LITTLE_ENDIAN
- u_short prefix; /* preceding code */
- u_char suffix; /* last character of new code */
- u_char pad;
-#else
- u_char pad;
- u_char suffix; /* last character of new code */
- u_short prefix; /* preceding code */
-#endif
- } hs;
- } f;
- u_short codem1; /* output of hash table -1 */
- u_short cptr; /* map code to hash table entry */
- } dict[1];
-};
-
-#define BSD_OVHD 2 /* BSD compress overhead/packet */
-#define BSD_INIT_BITS BSD_MIN_BITS
-
-static void *bsd_comp_alloc __P((u_char *options, int opt_len));
-static void *bsd_decomp_alloc __P((u_char *options, int opt_len));
-static void bsd_free __P((void *state));
-static int bsd_comp_init __P((void *state, u_char *options, int opt_len,
- int unit, int hdrlen, int debug));
-static int bsd_decomp_init __P((void *state, u_char *options, int opt_len,
- int unit, int hdrlen, int mru, int debug));
-static int bsd_compress __P((void *state, mblk_t **mret,
- mblk_t *mp, int slen, int maxolen));
-static void bsd_incomp __P((void *state, mblk_t *dmsg));
-static int bsd_decompress __P((void *state, mblk_t *cmp, mblk_t **dmpp));
-static void bsd_reset __P((void *state));
-static void bsd_comp_stats __P((void *state, struct compstat *stats));
-
-/*
- * Procedures exported to ppp_comp.c.
- */
-struct compressor ppp_bsd_compress = {
- CI_BSD_COMPRESS, /* compress_proto */
- bsd_comp_alloc, /* comp_alloc */
- bsd_free, /* comp_free */
- bsd_comp_init, /* comp_init */
- bsd_reset, /* comp_reset */
- bsd_compress, /* compress */
- bsd_comp_stats, /* comp_stat */
- bsd_decomp_alloc, /* decomp_alloc */
- bsd_free, /* decomp_free */
- bsd_decomp_init, /* decomp_init */
- bsd_reset, /* decomp_reset */
- bsd_decompress, /* decompress */
- bsd_incomp, /* incomp */
- bsd_comp_stats, /* decomp_stat */
-};
-
-/*
- * the next two codes should not be changed lightly, as they must not
- * lie within the contiguous general code space.
- */
-#define CLEAR 256 /* table clear output code */
-#define FIRST 257 /* first free entry */
-#define LAST 255
-
-#define MAXCODE(b) ((1 << (b)) - 1)
-#define BADCODEM1 MAXCODE(BSD_MAX_BITS)
-
-#define BSD_HASH(prefix,suffix,hshift) ((((u_int32_t)(suffix)) << (hshift)) \
- ^ (u_int32_t)(prefix))
-#define BSD_KEY(prefix,suffix) ((((u_int32_t)(suffix)) << 16) \
- + (u_int32_t)(prefix))
-
-#define CHECK_GAP 10000 /* Ratio check interval */
-
-#define RATIO_SCALE_LOG 8
-#define RATIO_SCALE (1<<RATIO_SCALE_LOG)
-#define RATIO_MAX (0x7fffffff>>RATIO_SCALE_LOG)
-
-#define DECOMP_CHUNK 256
-
-/*
- * clear the dictionary
- */
-static void
-bsd_clear(db)
- struct bsd_db *db;
-{
- db->clear_count++;
- db->max_ent = FIRST-1;
- db->n_bits = BSD_INIT_BITS;
- db->ratio = 0;
- db->bytes_out = 0;
- db->in_count = 0;
- db->checkpoint = CHECK_GAP;
-}
-
-/*
- * If the dictionary is full, then see if it is time to reset it.
- *
- * Compute the compression ratio using fixed-point arithmetic
- * with 8 fractional bits.
- *
- * Since we have an infinite stream instead of a single file,
- * watch only the local compression ratio.
- *
- * Since both peers must reset the dictionary at the same time even in
- * the absence of CLEAR codes (while packets are incompressible), they
- * must compute the same ratio.
- */
-static int /* 1=output CLEAR */
-bsd_check(db)
- struct bsd_db *db;
-{
- u_int new_ratio;
-
- if (db->in_count >= db->checkpoint) {
- /* age the ratio by limiting the size of the counts */
- if (db->in_count >= RATIO_MAX
- || db->bytes_out >= RATIO_MAX) {
- db->in_count -= db->in_count/4;
- db->bytes_out -= db->bytes_out/4;
- }
-
- db->checkpoint = db->in_count + CHECK_GAP;
-
- if (db->max_ent >= db->maxmaxcode) {
- /* Reset the dictionary only if the ratio is worse,
- * or if it looks as if it has been poisoned
- * by incompressible data.
- *
- * This does not overflow, because
- * db->in_count <= RATIO_MAX.
- */
- new_ratio = db->in_count << RATIO_SCALE_LOG;
- if (db->bytes_out != 0)
- new_ratio /= db->bytes_out;
-
- if (new_ratio < db->ratio || new_ratio < 1 * RATIO_SCALE) {
- bsd_clear(db);
- return 1;
- }
- db->ratio = new_ratio;
- }
- }
- return 0;
-}
-
-/*
- * Return statistics.
- */
-static void
-bsd_comp_stats(state, stats)
- void *state;
- struct compstat *stats;
-{
- struct bsd_db *db = (struct bsd_db *) state;
- u_int out;
-
- stats->unc_bytes = db->uncomp_bytes;
- stats->unc_packets = db->uncomp_count;
- stats->comp_bytes = db->comp_bytes;
- stats->comp_packets = db->comp_count;
- stats->inc_bytes = db->incomp_bytes;
- stats->inc_packets = db->incomp_count;
- stats->ratio = db->in_count;
- out = db->bytes_out;
- if (stats->ratio <= 0x7fffff)
- stats->ratio <<= 8;
- else
- out >>= 8;
- if (out != 0)
- stats->ratio /= out;
-}
-
-/*
- * Reset state, as on a CCP ResetReq.
- */
-static void
-bsd_reset(state)
- void *state;
-{
- struct bsd_db *db = (struct bsd_db *) state;
-
- db->seqno = 0;
- bsd_clear(db);
- db->clear_count = 0;
-}
-
-/*
- * Allocate space for a (de) compressor.
- */
-static void *
-bsd_alloc(options, opt_len, decomp)
- u_char *options;
- int opt_len, decomp;
-{
- int bits;
- u_int newlen, hsize, hshift, maxmaxcode;
- struct bsd_db *db;
-
- if (opt_len != 3 || options[0] != CI_BSD_COMPRESS || options[1] != 3
- || BSD_VERSION(options[2]) != BSD_CURRENT_VERSION)
- return NULL;
-
- bits = BSD_NBITS(options[2]);
- switch (bits) {
- case 9: /* needs 82152 for both directions */
- case 10: /* needs 84144 */
- case 11: /* needs 88240 */
- case 12: /* needs 96432 */
- hsize = 5003;
- hshift = 4;
- break;
- case 13: /* needs 176784 */
- hsize = 9001;
- hshift = 5;
- break;
- case 14: /* needs 353744 */
- hsize = 18013;
- hshift = 6;
- break;
- case 15: /* needs 691440 */
- hsize = 35023;
- hshift = 7;
- break;
- case 16: /* needs 1366160--far too much, */
- /* hsize = 69001; */ /* and 69001 is too big for cptr */
- /* hshift = 8; */ /* in struct bsd_db */
- /* break; */
- default:
- return NULL;
- }
-
- maxmaxcode = MAXCODE(bits);
- newlen = sizeof(*db) + (hsize-1) * (sizeof(db->dict[0]));
-#ifdef __osf__
- db = (struct bsd_db *) ALLOC_SLEEP(newlen);
-#else
- db = (struct bsd_db *) ALLOC_NOSLEEP(newlen);
-#endif
- if (!db)
- return NULL;
- bzero(db, sizeof(*db) - sizeof(db->dict));
-
- if (!decomp) {
- db->lens = NULL;
- } else {
-#ifdef __osf__
- db->lens = (u_short *) ALLOC_SLEEP((maxmaxcode+1) * sizeof(db->lens[0]));
-#else
- db->lens = (u_short *) ALLOC_NOSLEEP((maxmaxcode+1) * sizeof(db->lens[0]));
-#endif
- if (!db->lens) {
- FREE(db, newlen);
- return NULL;
- }
- }
-
- db->totlen = newlen;
- db->hsize = hsize;
- db->hshift = hshift;
- db->maxmaxcode = maxmaxcode;
- db->maxbits = bits;
-
- return (void *) db;
-}
-
-static void
-bsd_free(state)
- void *state;
-{
- struct bsd_db *db = (struct bsd_db *) state;
-
- if (db->lens)
- FREE(db->lens, (db->maxmaxcode+1) * sizeof(db->lens[0]));
- FREE(db, db->totlen);
-}
-
-static void *
-bsd_comp_alloc(options, opt_len)
- u_char *options;
- int opt_len;
-{
- return bsd_alloc(options, opt_len, 0);
-}
-
-static void *
-bsd_decomp_alloc(options, opt_len)
- u_char *options;
- int opt_len;
-{
- return bsd_alloc(options, opt_len, 1);
-}
-
-/*
- * Initialize the database.
- */
-static int
-bsd_init(db, options, opt_len, unit, hdrlen, mru, debug, decomp)
- struct bsd_db *db;
- u_char *options;
- int opt_len, unit, hdrlen, mru, debug, decomp;
-{
- int i;
-
- if (opt_len < CILEN_BSD_COMPRESS
- || options[0] != CI_BSD_COMPRESS || options[1] != CILEN_BSD_COMPRESS
- || BSD_VERSION(options[2]) != BSD_CURRENT_VERSION
- || BSD_NBITS(options[2]) != db->maxbits
- || decomp && db->lens == NULL)
- return 0;
-
- if (decomp) {
- i = LAST+1;
- while (i != 0)
- db->lens[--i] = 1;
- }
- i = db->hsize;
- while (i != 0) {
- db->dict[--i].codem1 = BADCODEM1;
- db->dict[i].cptr = 0;
- }
-
- db->unit = unit;
- db->hdrlen = hdrlen;
- db->mru = mru;
- if (debug)
- db->debug = 1;
-
- bsd_reset(db);
-
- return 1;
-}
-
-static int
-bsd_comp_init(state, options, opt_len, unit, hdrlen, debug)
- void *state;
- u_char *options;
- int opt_len, unit, hdrlen, debug;
-{
- return bsd_init((struct bsd_db *) state, options, opt_len,
- unit, hdrlen, 0, debug, 0);
-}
-
-static int
-bsd_decomp_init(state, options, opt_len, unit, hdrlen, mru, debug)
- void *state;
- u_char *options;
- int opt_len, unit, hdrlen, mru, debug;
-{
- return bsd_init((struct bsd_db *) state, options, opt_len,
- unit, hdrlen, mru, debug, 1);
-}
-
-
-/*
- * compress a packet
- * One change from the BSD compress command is that when the
- * code size expands, we do not output a bunch of padding.
- *
- * N.B. at present, we ignore the hdrlen specified in the comp_init call.
- */
-static int /* new slen */
-bsd_compress(state, mretp, mp, slen, maxolen)
- void *state;
- mblk_t **mretp; /* return compressed mbuf chain here */
- mblk_t *mp; /* from here */
- int slen; /* uncompressed length */
- int maxolen; /* max compressed length */
-{
- struct bsd_db *db = (struct bsd_db *) state;
- int hshift = db->hshift;
- u_int max_ent = db->max_ent;
- u_int n_bits = db->n_bits;
- u_int bitno = 32;
- u_int32_t accm = 0, fcode;
- struct bsd_dict *dictp;
- u_char c;
- int hval, disp, ent, ilen;
- mblk_t *np, *mret;
- u_char *rptr, *wptr;
- u_char *cp_end;
- int olen;
- mblk_t *m, **mnp;
-
-#define PUTBYTE(v) { \
- if (wptr) { \
- *wptr++ = (v); \
- if (wptr >= cp_end) { \
- m->b_wptr = wptr; \
- m = m->b_cont; \
- if (m) { \
- wptr = m->b_wptr; \
- cp_end = m->b_datap->db_lim; \
- } else \
- wptr = NULL; \
- } \
- } \
- ++olen; \
-}
-
-#define OUTPUT(ent) { \
- bitno -= n_bits; \
- accm |= ((ent) << bitno); \
- do { \
- PUTBYTE(accm >> 24); \
- accm <<= 8; \
- bitno += 8; \
- } while (bitno <= 24); \
-}
-
- /*
- * First get the protocol and check that we're
- * interested in this packet.
- */
- *mretp = NULL;
- rptr = mp->b_rptr;
- if (rptr + PPP_HDRLEN > mp->b_wptr) {
- if (!pullupmsg(mp, PPP_HDRLEN))
- return 0;
- rptr = mp->b_rptr;
- }
- ent = PPP_PROTOCOL(rptr); /* get the protocol */
- if (ent < 0x21 || ent > 0xf9)
- return 0;
-
- /* Don't generate compressed packets which are larger than
- the uncompressed packet. */
- if (maxolen > slen)
- maxolen = slen;
-
- /* Allocate enough message blocks to give maxolen total space. */
- mnp = &mret;
- for (olen = maxolen; olen > 0; ) {
- m = allocb((olen < 4096? olen: 4096), BPRI_MED);
- *mnp = m;
- if (m == NULL) {
- if (mret != NULL) {
- freemsg(mret);
- mnp = &mret;
- }
- break;
- }
- mnp = &m->b_cont;
- olen -= m->b_datap->db_lim - m->b_wptr;
- }
- *mnp = NULL;
-
- if ((m = mret) != NULL) {
- wptr = m->b_wptr;
- cp_end = m->b_datap->db_lim;
- } else
- wptr = cp_end = NULL;
- olen = 0;
-
- /*
- * Copy the PPP header over, changing the protocol,
- * and install the 2-byte sequence number.
- */
- if (wptr) {
- wptr[0] = PPP_ADDRESS(rptr);
- wptr[1] = PPP_CONTROL(rptr);
- wptr[2] = 0; /* change the protocol */
- wptr[3] = PPP_COMP;
- wptr[4] = db->seqno >> 8;
- wptr[5] = db->seqno;
- wptr += PPP_HDRLEN + BSD_OVHD;
- }
- ++db->seqno;
- rptr += PPP_HDRLEN;
-
- slen = mp->b_wptr - rptr;
- ilen = slen + 1;
- np = mp->b_cont;
- for (;;) {
- if (slen <= 0) {
- if (!np)
- break;
- rptr = np->b_rptr;
- slen = np->b_wptr - rptr;
- np = np->b_cont;
- if (!slen)
- continue; /* handle 0-length buffers */
- ilen += slen;
- }
-
- slen--;
- c = *rptr++;
- fcode = BSD_KEY(ent, c);
- hval = BSD_HASH(ent, c, hshift);
- dictp = &db->dict[hval];
-
- /* Validate and then check the entry. */
- if (dictp->codem1 >= max_ent)
- goto nomatch;
- if (dictp->f.fcode == fcode) {
- ent = dictp->codem1+1;
- continue; /* found (prefix,suffix) */
- }
-
- /* continue probing until a match or invalid entry */
- disp = (hval == 0) ? 1 : hval;
- do {
- hval += disp;
- if (hval >= db->hsize)
- hval -= db->hsize;
- dictp = &db->dict[hval];
- if (dictp->codem1 >= max_ent)
- goto nomatch;
- } while (dictp->f.fcode != fcode);
- ent = dictp->codem1 + 1; /* finally found (prefix,suffix) */
- continue;
-
- nomatch:
- OUTPUT(ent); /* output the prefix */
-
- /* code -> hashtable */
- if (max_ent < db->maxmaxcode) {
- struct bsd_dict *dictp2;
- /* expand code size if needed */
- if (max_ent >= MAXCODE(n_bits))
- db->n_bits = ++n_bits;
-
- /* Invalidate old hash table entry using
- * this code, and then take it over.
- */
- dictp2 = &db->dict[max_ent+1];
- if (db->dict[dictp2->cptr].codem1 == max_ent)
- db->dict[dictp2->cptr].codem1 = BADCODEM1;
- dictp2->cptr = hval;
- dictp->codem1 = max_ent;
- dictp->f.fcode = fcode;
-
- db->max_ent = ++max_ent;
- }
- ent = c;
- }
-
- OUTPUT(ent); /* output the last code */
- db->bytes_out += olen;
- db->in_count += ilen;
- if (bitno < 32)
- ++db->bytes_out; /* count complete bytes */
-
- if (bsd_check(db))
- OUTPUT(CLEAR); /* do not count the CLEAR */
-
- /*
- * Pad dribble bits of last code with ones.
- * Do not emit a completely useless byte of ones.
- */
- if (bitno != 32)
- PUTBYTE((accm | (0xff << (bitno-8))) >> 24);
-
- /*
- * Increase code size if we would have without the packet
- * boundary and as the decompressor will.
- */
- if (max_ent >= MAXCODE(n_bits) && max_ent < db->maxmaxcode)
- db->n_bits++;
-
- db->uncomp_bytes += ilen;
- ++db->uncomp_count;
- if (olen + PPP_HDRLEN + BSD_OVHD > maxolen && mret != NULL) {
- /* throw away the compressed stuff if it is longer than uncompressed */
- freemsg(mret);
- mret = NULL;
- ++db->incomp_count;
- db->incomp_bytes += ilen;
- } else if (wptr != NULL) {
- m->b_wptr = wptr;
- if (m->b_cont) {
- freemsg(m->b_cont);
- m->b_cont = NULL;
- }
- ++db->comp_count;
- db->comp_bytes += olen + BSD_OVHD;
- }
-
- *mretp = mret;
- return olen + PPP_HDRLEN + BSD_OVHD;
-#undef OUTPUT
-#undef PUTBYTE
-}
-
-
-/*
- * Update the "BSD Compress" dictionary on the receiver for
- * incompressible data by pretending to compress the incoming data.
- */
-static void
-bsd_incomp(state, dmsg)
- void *state;
- mblk_t *dmsg;
-{
- struct bsd_db *db = (struct bsd_db *) state;
- u_int hshift = db->hshift;
- u_int max_ent = db->max_ent;
- u_int n_bits = db->n_bits;
- struct bsd_dict *dictp;
- u_int32_t fcode;
- u_char c;
- long hval, disp;
- int slen, ilen;
- u_int bitno = 7;
- u_char *rptr;
- u_int ent;
-
- rptr = dmsg->b_rptr;
- if (rptr + PPP_HDRLEN > dmsg->b_wptr) {
- if (!pullupmsg(dmsg, PPP_HDRLEN))
- return;
- rptr = dmsg->b_rptr;
- }
- ent = PPP_PROTOCOL(rptr); /* get the protocol */
- if (ent < 0x21 || ent > 0xf9)
- return;
-
- db->seqno++;
- ilen = 1; /* count the protocol as 1 byte */
- rptr += PPP_HDRLEN;
- for (;;) {
- slen = dmsg->b_wptr - rptr;
- if (slen <= 0) {
- dmsg = dmsg->b_cont;
- if (!dmsg)
- break;
- rptr = dmsg->b_rptr;
- continue; /* skip zero-length buffers */
- }
- ilen += slen;
-
- do {
- c = *rptr++;
- fcode = BSD_KEY(ent, c);
- hval = BSD_HASH(ent, c, hshift);
- dictp = &db->dict[hval];
-
- /* validate and then check the entry */
- if (dictp->codem1 >= max_ent)
- goto nomatch;
- if (dictp->f.fcode == fcode) {
- ent = dictp->codem1+1;
- continue; /* found (prefix,suffix) */
- }
-
- /* continue probing until a match or invalid entry */
- disp = (hval == 0) ? 1 : hval;
- do {
- hval += disp;
- if (hval >= db->hsize)
- hval -= db->hsize;
- dictp = &db->dict[hval];
- if (dictp->codem1 >= max_ent)
- goto nomatch;
- } while (dictp->f.fcode != fcode);
- ent = dictp->codem1+1;
- continue; /* finally found (prefix,suffix) */
-
- nomatch: /* output (count) the prefix */
- bitno += n_bits;
-
- /* code -> hashtable */
- if (max_ent < db->maxmaxcode) {
- struct bsd_dict *dictp2;
- /* expand code size if needed */
- if (max_ent >= MAXCODE(n_bits))
- db->n_bits = ++n_bits;
-
- /* Invalidate previous hash table entry
- * assigned this code, and then take it over.
- */
- dictp2 = &db->dict[max_ent+1];
- if (db->dict[dictp2->cptr].codem1 == max_ent)
- db->dict[dictp2->cptr].codem1 = BADCODEM1;
- dictp2->cptr = hval;
- dictp->codem1 = max_ent;
- dictp->f.fcode = fcode;
-
- db->max_ent = ++max_ent;
- db->lens[max_ent] = db->lens[ent]+1;
- }
- ent = c;
- } while (--slen != 0);
- }
- bitno += n_bits; /* output (count) the last code */
- db->bytes_out += bitno/8;
- db->in_count += ilen;
- (void)bsd_check(db);
-
- ++db->incomp_count;
- db->incomp_bytes += ilen;
- ++db->uncomp_count;
- db->uncomp_bytes += ilen;
-
- /* Increase code size if we would have without the packet
- * boundary and as the decompressor will.
- */
- if (max_ent >= MAXCODE(n_bits) && max_ent < db->maxmaxcode)
- db->n_bits++;
-}
-
-
-/*
- * Decompress "BSD Compress"
- *
- * Because of patent problems, we return DECOMP_ERROR for errors
- * found by inspecting the input data and for system problems, but
- * DECOMP_FATALERROR for any errors which could possibly be said to
- * be being detected "after" decompression. For DECOMP_ERROR,
- * we can issue a CCP reset-request; for DECOMP_FATALERROR, we may be
- * infringing a patent of Motorola's if we do, so we take CCP down
- * instead.
- *
- * Given that the frame has the correct sequence number and a good FCS,
- * errors such as invalid codes in the input most likely indicate a
- * bug, so we return DECOMP_FATALERROR for them in order to turn off
- * compression, even though they are detected by inspecting the input.
- */
-static int
-bsd_decompress(state, cmsg, dmpp)
- void *state;
- mblk_t *cmsg, **dmpp;
-{
- struct bsd_db *db = (struct bsd_db *) state;
- u_int max_ent = db->max_ent;
- u_int32_t accm = 0;
- u_int bitno = 32; /* 1st valid bit in accm */
- u_int n_bits = db->n_bits;
- u_int tgtbitno = 32-n_bits; /* bitno when we have a code */
- struct bsd_dict *dictp;
- int explen, i, seq, len;
- u_int incode, oldcode, finchar;
- u_char *p, *rptr, *wptr;
- mblk_t *dmsg, *mret;
- int adrs, ctrl, ilen;
- int dlen, space, codelen, extra;
-
- /*
- * Get at least the BSD Compress header in the first buffer
- */
- rptr = cmsg->b_rptr;
- if (rptr + PPP_HDRLEN + BSD_OVHD >= cmsg->b_wptr) {
- if (!pullupmsg(cmsg, PPP_HDRLEN + BSD_OVHD + 1)) {
- if (db->debug)
- printf("bsd_decomp%d: failed to pullup\n", db->unit);
- return DECOMP_ERROR;
- }
- rptr = cmsg->b_rptr;
- }
-
- /*
- * Save the address/control from the PPP header
- * and then get the sequence number.
- */
- adrs = PPP_ADDRESS(rptr);
- ctrl = PPP_CONTROL(rptr);
- rptr += PPP_HDRLEN;
- seq = (rptr[0] << 8) + rptr[1];
- rptr += BSD_OVHD;
- ilen = len = cmsg->b_wptr - rptr;
-
- /*
- * Check the sequence number and give up if it is not what we expect.
- */
- if (seq != db->seqno++) {
- if (db->debug)
- printf("bsd_decomp%d: bad sequence # %d, expected %d\n",
- db->unit, seq, db->seqno - 1);
- return DECOMP_ERROR;
- }
-
- /*
- * Allocate one message block to start with.
- */
- if ((dmsg = allocb(DECOMP_CHUNK + db->hdrlen, BPRI_MED)) == NULL)
- return DECOMP_ERROR;
- mret = dmsg;
- dmsg->b_wptr += db->hdrlen;
- dmsg->b_rptr = wptr = dmsg->b_wptr;
-
- /* Fill in the ppp header, but not the last byte of the protocol
- (that comes from the decompressed data). */
- wptr[0] = adrs;
- wptr[1] = ctrl;
- wptr[2] = 0;
- wptr += PPP_HDRLEN - 1;
- space = dmsg->b_datap->db_lim - wptr;
-
- oldcode = CLEAR;
- explen = 0;
- for (;;) {
- if (len == 0) {
- cmsg = cmsg->b_cont;
- if (!cmsg) /* quit at end of message */
- break;
- rptr = cmsg->b_rptr;
- len = cmsg->b_wptr - rptr;
- ilen += len;
- continue; /* handle 0-length buffers */
- }
-
- /*
- * Accumulate bytes until we have a complete code.
- * Then get the next code, relying on the 32-bit,
- * unsigned accm to mask the result.
- */
- bitno -= 8;
- accm |= *rptr++ << bitno;
- --len;
- if (tgtbitno < bitno)
- continue;
- incode = accm >> tgtbitno;
- accm <<= n_bits;
- bitno += n_bits;
-
- if (incode == CLEAR) {
- /*
- * The dictionary must only be cleared at
- * the end of a packet. But there could be an
- * empty message block at the end.
- */
- if (len > 0 || cmsg->b_cont != 0) {
- if (cmsg->b_cont)
- len += msgdsize(cmsg->b_cont);
- if (len > 0) {
- freemsg(dmsg);
- if (db->debug)
- printf("bsd_decomp%d: bad CLEAR\n", db->unit);
- return DECOMP_FATALERROR;
- }
- }
- bsd_clear(db);
- explen = ilen = 0;
- break;
- }
-
- if (incode > max_ent + 2 || incode > db->maxmaxcode
- || incode > max_ent && oldcode == CLEAR) {
- freemsg(dmsg);
- if (db->debug) {
- printf("bsd_decomp%d: bad code 0x%x oldcode=0x%x ",
- db->unit, incode, oldcode);
- printf("max_ent=0x%x dlen=%d seqno=%d\n",
- max_ent, dlen, db->seqno);
- }
- return DECOMP_FATALERROR; /* probably a bug */
- }
-
- /* Special case for KwKwK string. */
- if (incode > max_ent) {
- finchar = oldcode;
- extra = 1;
- } else {
- finchar = incode;
- extra = 0;
- }
-
- codelen = db->lens[finchar];
- explen += codelen + extra;
- if (explen > db->mru + 1) {
- freemsg(dmsg);
- if (db->debug)
- printf("bsd_decomp%d: ran out of mru\n", db->unit);
- return DECOMP_FATALERROR;
- }
-
- /*
- * Decode this code and install it in the decompressed buffer.
- */
- space -= codelen + extra;
- if (space < 0) {
- /* Allocate another message block. */
- dmsg->b_wptr = wptr;
- dlen = codelen + extra;
- if (dlen < DECOMP_CHUNK)
- dlen = DECOMP_CHUNK;
- if ((dmsg->b_cont = allocb(dlen, BPRI_MED)) == NULL) {
- freemsg(dmsg);
- return DECOMP_ERROR;
- }
- dmsg = dmsg->b_cont;
- wptr = dmsg->b_wptr;
- space = dmsg->b_datap->db_lim - wptr - codelen - extra;
- }
- p = (wptr += codelen);
- while (finchar > LAST) {
- dictp = &db->dict[db->dict[finchar].cptr];
-#ifdef DEBUG
- --codelen;
- if (codelen <= 0) {
- freemsg(dmsg);
- printf("bsd_decomp%d: fell off end of chain ", db->unit);
- printf("0x%x at 0x%x by 0x%x, max_ent=0x%x\n",
- incode, finchar, db->dict[finchar].cptr, max_ent);
- return DECOMP_FATALERROR;
- }
- if (dictp->codem1 != finchar-1) {
- freemsg(dmsg);
- printf("bsd_decomp%d: bad code chain 0x%x finchar=0x%x ",
- db->unit, incode, finchar);
- printf("oldcode=0x%x cptr=0x%x codem1=0x%x\n", oldcode,
- db->dict[finchar].cptr, dictp->codem1);
- return DECOMP_FATALERROR;
- }
-#endif
- *--p = dictp->f.hs.suffix;
- finchar = dictp->f.hs.prefix;
- }
- *--p = finchar;
-
-#ifdef DEBUG
- if (--codelen != 0)
- printf("bsd_decomp%d: short by %d after code 0x%x, max_ent=0x%x\n",
- db->unit, codelen, incode, max_ent);
-#endif
-
- if (extra) /* the KwKwK case again */
- *wptr++ = finchar;
-
- /*
- * If not first code in a packet, and
- * if not out of code space, then allocate a new code.
- *
- * Keep the hash table correct so it can be used
- * with uncompressed packets.
- */
- if (oldcode != CLEAR && max_ent < db->maxmaxcode) {
- struct bsd_dict *dictp2;
- u_int32_t fcode;
- int hval, disp;
-
- fcode = BSD_KEY(oldcode,finchar);
- hval = BSD_HASH(oldcode,finchar,db->hshift);
- dictp = &db->dict[hval];
-
- /* look for a free hash table entry */
- if (dictp->codem1 < max_ent) {
- disp = (hval == 0) ? 1 : hval;
- do {
- hval += disp;
- if (hval >= db->hsize)
- hval -= db->hsize;
- dictp = &db->dict[hval];
- } while (dictp->codem1 < max_ent);
- }
-
- /*
- * Invalidate previous hash table entry
- * assigned this code, and then take it over
- */
- dictp2 = &db->dict[max_ent+1];
- if (db->dict[dictp2->cptr].codem1 == max_ent) {
- db->dict[dictp2->cptr].codem1 = BADCODEM1;
- }
- dictp2->cptr = hval;
- dictp->codem1 = max_ent;
- dictp->f.fcode = fcode;
-
- db->max_ent = ++max_ent;
- db->lens[max_ent] = db->lens[oldcode]+1;
-
- /* Expand code size if needed. */
- if (max_ent >= MAXCODE(n_bits) && max_ent < db->maxmaxcode) {
- db->n_bits = ++n_bits;
- tgtbitno = 32-n_bits;
- }
- }
- oldcode = incode;
- }
- dmsg->b_wptr = wptr;
-
- /*
- * Keep the checkpoint right so that incompressible packets
- * clear the dictionary at the right times.
- */
- db->bytes_out += ilen;
- db->in_count += explen;
- if (bsd_check(db) && db->debug) {
- printf("bsd_decomp%d: peer should have cleared dictionary\n",
- db->unit);
- }
-
- ++db->comp_count;
- db->comp_bytes += ilen + BSD_OVHD;
- ++db->uncomp_count;
- db->uncomp_bytes += explen;
-
- *dmpp = mret;
- return DECOMP_OK;
-}
-#endif /* DO_BSD_COMPRESS */
diff --git a/mdk-stage1/ppp/modules/deflate.c b/mdk-stage1/ppp/modules/deflate.c
deleted file mode 100644
index 1b9054412..000000000
--- a/mdk-stage1/ppp/modules/deflate.c
+++ /dev/null
@@ -1,760 +0,0 @@
-/*
- * ppp_deflate.c - interface the zlib procedures for Deflate compression
- * and decompression (as used by gzip) to the PPP code.
- * This version is for use with STREAMS under SunOS 4.x, Solaris 2,
- * SVR4, OSF/1 and AIX 4.x.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-#ifdef AIX4
-#include <net/net_globals.h>
-#endif
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/stream.h>
-#include <net/ppp_defs.h>
-#include "ppp_mod.h"
-
-#define PACKETPTR mblk_t *
-#include <net/ppp-comp.h>
-
-#ifdef __osf__
-#include "zlib.h"
-#else
-#include "../common/zlib.h"
-#endif
-
-#if DO_DEFLATE
-
-#define DEFLATE_DEBUG 1
-
-/*
- * State for a Deflate (de)compressor.
- */
-struct deflate_state {
- int seqno;
- int w_size;
- int unit;
- int hdrlen;
- int mru;
- int debug;
- z_stream strm;
- struct compstat stats;
-};
-
-#define DEFLATE_OVHD 2 /* Deflate overhead/packet */
-
-static void *z_alloc __P((void *, u_int items, u_int size));
-static void *z_alloc_init __P((void *, u_int items, u_int size));
-static void z_free __P((void *, void *ptr));
-static void *z_comp_alloc __P((u_char *options, int opt_len));
-static void *z_decomp_alloc __P((u_char *options, int opt_len));
-static void z_comp_free __P((void *state));
-static void z_decomp_free __P((void *state));
-static int z_comp_init __P((void *state, u_char *options, int opt_len,
- int unit, int hdrlen, int debug));
-static int z_decomp_init __P((void *state, u_char *options, int opt_len,
- int unit, int hdrlen, int mru, int debug));
-static int z_compress __P((void *state, mblk_t **mret,
- mblk_t *mp, int slen, int maxolen));
-static void z_incomp __P((void *state, mblk_t *dmsg));
-static int z_decompress __P((void *state, mblk_t *cmp,
- mblk_t **dmpp));
-static void z_comp_reset __P((void *state));
-static void z_decomp_reset __P((void *state));
-static void z_comp_stats __P((void *state, struct compstat *stats));
-
-/*
- * Procedures exported to ppp_comp.c.
- */
-struct compressor ppp_deflate = {
- CI_DEFLATE, /* compress_proto */
- z_comp_alloc, /* comp_alloc */
- z_comp_free, /* comp_free */
- z_comp_init, /* comp_init */
- z_comp_reset, /* comp_reset */
- z_compress, /* compress */
- z_comp_stats, /* comp_stat */
- z_decomp_alloc, /* decomp_alloc */
- z_decomp_free, /* decomp_free */
- z_decomp_init, /* decomp_init */
- z_decomp_reset, /* decomp_reset */
- z_decompress, /* decompress */
- z_incomp, /* incomp */
- z_comp_stats, /* decomp_stat */
-};
-
-struct compressor ppp_deflate_draft = {
- CI_DEFLATE_DRAFT, /* compress_proto */
- z_comp_alloc, /* comp_alloc */
- z_comp_free, /* comp_free */
- z_comp_init, /* comp_init */
- z_comp_reset, /* comp_reset */
- z_compress, /* compress */
- z_comp_stats, /* comp_stat */
- z_decomp_alloc, /* decomp_alloc */
- z_decomp_free, /* decomp_free */
- z_decomp_init, /* decomp_init */
- z_decomp_reset, /* decomp_reset */
- z_decompress, /* decompress */
- z_incomp, /* incomp */
- z_comp_stats, /* decomp_stat */
-};
-
-#define DECOMP_CHUNK 512
-
-/*
- * Space allocation and freeing routines for use by zlib routines.
- */
-struct zchunk {
- u_int size;
- u_int guard;
-};
-
-#define GUARD_MAGIC 0x77a6011a
-
-static void *
-z_alloc_init(notused, items, size)
- void *notused;
- u_int items, size;
-{
- struct zchunk *z;
-
- size = items * size + sizeof(struct zchunk);
-#ifdef __osf__
- z = (struct zchunk *) ALLOC_SLEEP(size);
-#else
- z = (struct zchunk *) ALLOC_NOSLEEP(size);
-#endif
- z->size = size;
- z->guard = GUARD_MAGIC;
- return (void *) (z + 1);
-}
-
-static void *
-z_alloc(notused, items, size)
- void *notused;
- u_int items, size;
-{
- struct zchunk *z;
-
- size = items * size + sizeof(struct zchunk);
- z = (struct zchunk *) ALLOC_NOSLEEP(size);
- z->size = size;
- z->guard = GUARD_MAGIC;
- return (void *) (z + 1);
-}
-
-static void
-z_free(notused, ptr)
- void *notused;
- void *ptr;
-{
- struct zchunk *z = ((struct zchunk *) ptr) - 1;
-
- if (z->guard != GUARD_MAGIC) {
- printf("ppp: z_free of corrupted chunk at %x (%x, %x)\n",
- z, z->size, z->guard);
- return;
- }
- FREE(z, z->size);
-}
-
-/*
- * Allocate space for a compressor.
- */
-static void *
-z_comp_alloc(options, opt_len)
- u_char *options;
- int opt_len;
-{
- struct deflate_state *state;
- int w_size;
-
- if (opt_len != CILEN_DEFLATE
- || (options[0] != CI_DEFLATE && options[0] != CI_DEFLATE_DRAFT)
- || options[1] != CILEN_DEFLATE
- || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL
- || options[3] != DEFLATE_CHK_SEQUENCE)
- return NULL;
- w_size = DEFLATE_SIZE(options[2]);
- /*
- * N.B. the 9 below should be DEFLATE_MIN_SIZE (8), but using
- * 8 will cause kernel crashes because of a bug in zlib.
- */
- if (w_size < 9 || w_size > DEFLATE_MAX_SIZE)
- return NULL;
-
-
-#ifdef __osf__
- state = (struct deflate_state *) ALLOC_SLEEP(sizeof(*state));
-#else
- state = (struct deflate_state *) ALLOC_NOSLEEP(sizeof(*state));
-#endif
-
- if (state == NULL)
- return NULL;
-
- state->strm.next_in = NULL;
- state->strm.zalloc = (alloc_func) z_alloc_init;
- state->strm.zfree = (free_func) z_free;
- if (deflateInit2(&state->strm, Z_DEFAULT_COMPRESSION, DEFLATE_METHOD_VAL,
- -w_size, 8, Z_DEFAULT_STRATEGY) != Z_OK) {
- FREE(state, sizeof(*state));
- return NULL;
- }
-
- state->strm.zalloc = (alloc_func) z_alloc;
- state->w_size = w_size;
- bzero(&state->stats, sizeof(state->stats));
- return (void *) state;
-}
-
-static void
-z_comp_free(arg)
- void *arg;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
-
- deflateEnd(&state->strm);
- FREE(state, sizeof(*state));
-}
-
-static int
-z_comp_init(arg, options, opt_len, unit, hdrlen, debug)
- void *arg;
- u_char *options;
- int opt_len, unit, hdrlen, debug;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
-
- if (opt_len < CILEN_DEFLATE
- || (options[0] != CI_DEFLATE && options[0] != CI_DEFLATE_DRAFT)
- || options[1] != CILEN_DEFLATE
- || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL
- || DEFLATE_SIZE(options[2]) != state->w_size
- || options[3] != DEFLATE_CHK_SEQUENCE)
- return 0;
-
- state->seqno = 0;
- state->unit = unit;
- state->hdrlen = hdrlen;
- state->debug = debug;
-
- deflateReset(&state->strm);
-
- return 1;
-}
-
-static void
-z_comp_reset(arg)
- void *arg;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
-
- state->seqno = 0;
- deflateReset(&state->strm);
-}
-
-static int
-z_compress(arg, mret, mp, orig_len, maxolen)
- void *arg;
- mblk_t **mret; /* compressed packet (out) */
- mblk_t *mp; /* uncompressed packet (in) */
- int orig_len, maxolen;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
- u_char *rptr, *wptr;
- int proto, olen, wspace, r, flush;
- mblk_t *m;
-
- /*
- * Check that the protocol is in the range we handle.
- */
- *mret = NULL;
- rptr = mp->b_rptr;
- if (rptr + PPP_HDRLEN > mp->b_wptr) {
- if (!pullupmsg(mp, PPP_HDRLEN))
- return 0;
- rptr = mp->b_rptr;
- }
- proto = PPP_PROTOCOL(rptr);
- if (proto > 0x3fff || proto == 0xfd || proto == 0xfb)
- return orig_len;
-
- /* Allocate one mblk initially. */
- if (maxolen > orig_len)
- maxolen = orig_len;
- if (maxolen <= PPP_HDRLEN + 2) {
- wspace = 0;
- m = NULL;
- } else {
- wspace = maxolen + state->hdrlen;
- if (wspace > 4096)
- wspace = 4096;
- m = allocb(wspace, BPRI_MED);
- }
- if (m != NULL) {
- *mret = m;
- if (state->hdrlen + PPP_HDRLEN + 2 < wspace) {
- m->b_rptr += state->hdrlen;
- m->b_wptr = m->b_rptr;
- wspace -= state->hdrlen;
- }
- wptr = m->b_wptr;
-
- /*
- * Copy over the PPP header and store the 2-byte sequence number.
- */
- wptr[0] = PPP_ADDRESS(rptr);
- wptr[1] = PPP_CONTROL(rptr);
- wptr[2] = PPP_COMP >> 8;
- wptr[3] = PPP_COMP;
- wptr += PPP_HDRLEN;
- wptr[0] = state->seqno >> 8;
- wptr[1] = state->seqno;
- wptr += 2;
- state->strm.next_out = wptr;
- state->strm.avail_out = wspace - (PPP_HDRLEN + 2);
- } else {
- state->strm.next_out = NULL;
- state->strm.avail_out = 1000000;
- }
- ++state->seqno;
-
- rptr += (proto > 0xff)? 2: 3; /* skip 1st proto byte if 0 */
- state->strm.next_in = rptr;
- state->strm.avail_in = mp->b_wptr - rptr;
- mp = mp->b_cont;
- flush = (mp == NULL)? Z_PACKET_FLUSH: Z_NO_FLUSH;
- olen = 0;
- for (;;) {
- r = deflate(&state->strm, flush);
- if (r != Z_OK) {
- printf("z_compress: deflate returned %d (%s)\n",
- r, (state->strm.msg? state->strm.msg: ""));
- break;
- }
- if (flush != Z_NO_FLUSH && state->strm.avail_out != 0)
- break; /* all done */
- if (state->strm.avail_in == 0 && mp != NULL) {
- state->strm.next_in = mp->b_rptr;
- state->strm.avail_in = mp->b_wptr - mp->b_rptr;
- mp = mp->b_cont;
- if (mp == NULL)
- flush = Z_PACKET_FLUSH;
- }
- if (state->strm.avail_out == 0) {
- if (m != NULL) {
- m->b_wptr += wspace;
- olen += wspace;
- wspace = maxolen - olen;
- if (wspace <= 0) {
- wspace = 0;
- m->b_cont = NULL;
- } else {
- if (wspace < 32)
- wspace = 32;
- else if (wspace > 4096)
- wspace = 4096;
- m->b_cont = allocb(wspace, BPRI_MED);
- }
- m = m->b_cont;
- if (m != NULL) {
- state->strm.next_out = m->b_wptr;
- state->strm.avail_out = wspace;
- }
- }
- if (m == NULL) {
- state->strm.next_out = NULL;
- state->strm.avail_out = 1000000;
- }
- }
- }
- if (m != NULL) {
- m->b_wptr += wspace - state->strm.avail_out;
- olen += wspace - state->strm.avail_out;
- }
-
- /*
- * See if we managed to reduce the size of the packet.
- */
- if (olen < orig_len && m != NULL) {
- state->stats.comp_bytes += olen;
- state->stats.comp_packets++;
- } else {
- if (*mret != NULL) {
- freemsg(*mret);
- *mret = NULL;
- }
- state->stats.inc_bytes += orig_len;
- state->stats.inc_packets++;
- olen = orig_len;
- }
- state->stats.unc_bytes += orig_len;
- state->stats.unc_packets++;
-
- return olen;
-}
-
-static void
-z_comp_stats(arg, stats)
- void *arg;
- struct compstat *stats;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
- u_int out;
-
- *stats = state->stats;
- stats->ratio = stats->unc_bytes;
- out = stats->comp_bytes + stats->unc_bytes;
- if (stats->ratio <= 0x7ffffff)
- stats->ratio <<= 8;
- else
- out >>= 8;
- if (out != 0)
- stats->ratio /= out;
-}
-
-/*
- * Allocate space for a decompressor.
- */
-static void *
-z_decomp_alloc(options, opt_len)
- u_char *options;
- int opt_len;
-{
- struct deflate_state *state;
- int w_size;
-
- if (opt_len != CILEN_DEFLATE
- || (options[0] != CI_DEFLATE && options[0] != CI_DEFLATE_DRAFT)
- || options[1] != CILEN_DEFLATE
- || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL
- || options[3] != DEFLATE_CHK_SEQUENCE)
- return NULL;
- w_size = DEFLATE_SIZE(options[2]);
- /*
- * N.B. the 9 below should be DEFLATE_MIN_SIZE (8), but using
- * 8 will cause kernel crashes because of a bug in zlib.
- */
- if (w_size < 9 || w_size > DEFLATE_MAX_SIZE)
- return NULL;
-
-#ifdef __osf__
- state = (struct deflate_state *) ALLOC_SLEEP(sizeof(*state));
-#else
- state = (struct deflate_state *) ALLOC_NOSLEEP(sizeof(*state));
-#endif
- if (state == NULL)
- return NULL;
-
- state->strm.next_out = NULL;
- state->strm.zalloc = (alloc_func) z_alloc_init;
- state->strm.zfree = (free_func) z_free;
- if (inflateInit2(&state->strm, -w_size) != Z_OK) {
- FREE(state, sizeof(*state));
- return NULL;
- }
-
- state->strm.zalloc = (alloc_func) z_alloc;
- state->w_size = w_size;
- bzero(&state->stats, sizeof(state->stats));
- return (void *) state;
-}
-
-static void
-z_decomp_free(arg)
- void *arg;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
-
- inflateEnd(&state->strm);
- FREE(state, sizeof(*state));
-}
-
-static int
-z_decomp_init(arg, options, opt_len, unit, hdrlen, mru, debug)
- void *arg;
- u_char *options;
- int opt_len, unit, hdrlen, mru, debug;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
-
- if (opt_len < CILEN_DEFLATE
- || (options[0] != CI_DEFLATE && options[0] != CI_DEFLATE_DRAFT)
- || options[1] != CILEN_DEFLATE
- || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL
- || DEFLATE_SIZE(options[2]) != state->w_size
- || options[3] != DEFLATE_CHK_SEQUENCE)
- return 0;
-
- state->seqno = 0;
- state->unit = unit;
- state->hdrlen = hdrlen;
- state->debug = debug;
- state->mru = mru;
-
- inflateReset(&state->strm);
-
- return 1;
-}
-
-static void
-z_decomp_reset(arg)
- void *arg;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
-
- state->seqno = 0;
- inflateReset(&state->strm);
-}
-
-/*
- * Decompress a Deflate-compressed packet.
- *
- * Because of patent problems, we return DECOMP_ERROR for errors
- * found by inspecting the input data and for system problems, but
- * DECOMP_FATALERROR for any errors which could possibly be said to
- * be being detected "after" decompression. For DECOMP_ERROR,
- * we can issue a CCP reset-request; for DECOMP_FATALERROR, we may be
- * infringing a patent of Motorola's if we do, so we take CCP down
- * instead.
- *
- * Given that the frame has the correct sequence number and a good FCS,
- * errors such as invalid codes in the input most likely indicate a
- * bug, so we return DECOMP_FATALERROR for them in order to turn off
- * compression, even though they are detected by inspecting the input.
- */
-static int
-z_decompress(arg, mi, mop)
- void *arg;
- mblk_t *mi, **mop;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
- mblk_t *mo, *mo_head;
- u_char *rptr, *wptr;
- int rlen, olen, ospace;
- int seq, i, flush, r, decode_proto;
- u_char hdr[PPP_HDRLEN + DEFLATE_OVHD];
-
- *mop = NULL;
- rptr = mi->b_rptr;
- for (i = 0; i < PPP_HDRLEN + DEFLATE_OVHD; ++i) {
- while (rptr >= mi->b_wptr) {
- mi = mi->b_cont;
- if (mi == NULL)
- return DECOMP_ERROR;
- rptr = mi->b_rptr;
- }
- hdr[i] = *rptr++;
- }
-
- /* Check the sequence number. */
- seq = (hdr[PPP_HDRLEN] << 8) + hdr[PPP_HDRLEN+1];
- if (seq != state->seqno) {
-#if !DEFLATE_DEBUG
- if (state->debug)
-#endif
- printf("z_decompress%d: bad seq # %d, expected %d\n",
- state->unit, seq, state->seqno);
- return DECOMP_ERROR;
- }
- ++state->seqno;
-
- /* Allocate an output message block. */
- mo = allocb(DECOMP_CHUNK + state->hdrlen, BPRI_MED);
- if (mo == NULL)
- return DECOMP_ERROR;
- mo_head = mo;
- mo->b_cont = NULL;
- mo->b_rptr += state->hdrlen;
- mo->b_wptr = wptr = mo->b_rptr;
- ospace = DECOMP_CHUNK;
- olen = 0;
-
- /*
- * Fill in the first part of the PPP header. The protocol field
- * comes from the decompressed data.
- */
- wptr[0] = PPP_ADDRESS(hdr);
- wptr[1] = PPP_CONTROL(hdr);
- wptr[2] = 0;
-
- /*
- * Set up to call inflate. We set avail_out to 1 initially so we can
- * look at the first byte of the output and decide whether we have
- * a 1-byte or 2-byte protocol field.
- */
- state->strm.next_in = rptr;
- state->strm.avail_in = mi->b_wptr - rptr;
- mi = mi->b_cont;
- flush = (mi == NULL)? Z_PACKET_FLUSH: Z_NO_FLUSH;
- rlen = state->strm.avail_in + PPP_HDRLEN + DEFLATE_OVHD;
- state->strm.next_out = wptr + 3;
- state->strm.avail_out = 1;
- decode_proto = 1;
-
- /*
- * Call inflate, supplying more input or output as needed.
- */
- for (;;) {
- r = inflate(&state->strm, flush);
- if (r != Z_OK) {
-#if !DEFLATE_DEBUG
- if (state->debug)
-#endif
- printf("z_decompress%d: inflate returned %d (%s)\n",
- state->unit, r, (state->strm.msg? state->strm.msg: ""));
- freemsg(mo_head);
- return DECOMP_FATALERROR;
- }
- if (flush != Z_NO_FLUSH && state->strm.avail_out != 0)
- break; /* all done */
- if (state->strm.avail_in == 0 && mi != NULL) {
- state->strm.next_in = mi->b_rptr;
- state->strm.avail_in = mi->b_wptr - mi->b_rptr;
- rlen += state->strm.avail_in;
- mi = mi->b_cont;
- if (mi == NULL)
- flush = Z_PACKET_FLUSH;
- }
- if (state->strm.avail_out == 0) {
- if (decode_proto) {
- state->strm.avail_out = ospace - PPP_HDRLEN;
- if ((wptr[3] & 1) == 0) {
- /* 2-byte protocol field */
- wptr[2] = wptr[3];
- --state->strm.next_out;
- ++state->strm.avail_out;
- }
- decode_proto = 0;
- } else {
- mo->b_wptr += ospace;
- olen += ospace;
- mo->b_cont = allocb(DECOMP_CHUNK, BPRI_MED);
- mo = mo->b_cont;
- if (mo == NULL) {
- freemsg(mo_head);
- return DECOMP_ERROR;
- }
- state->strm.next_out = mo->b_rptr;
- state->strm.avail_out = ospace = DECOMP_CHUNK;
- }
- }
- }
- if (decode_proto) {
- freemsg(mo_head);
- return DECOMP_ERROR;
- }
- mo->b_wptr += ospace - state->strm.avail_out;
- olen += ospace - state->strm.avail_out;
-
-#if DEFLATE_DEBUG
- if (olen > state->mru + PPP_HDRLEN)
- printf("ppp_deflate%d: exceeded mru (%d > %d)\n",
- state->unit, olen, state->mru + PPP_HDRLEN);
-#endif
-
- state->stats.unc_bytes += olen;
- state->stats.unc_packets++;
- state->stats.comp_bytes += rlen;
- state->stats.comp_packets++;
-
- *mop = mo_head;
- return DECOMP_OK;
-}
-
-/*
- * Incompressible data has arrived - add it to the history.
- */
-static void
-z_incomp(arg, mi)
- void *arg;
- mblk_t *mi;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
- u_char *rptr;
- int rlen, proto, r;
-
- /*
- * Check that the protocol is one we handle.
- */
- rptr = mi->b_rptr;
- if (rptr + PPP_HDRLEN > mi->b_wptr) {
- if (!pullupmsg(mi, PPP_HDRLEN))
- return;
- rptr = mi->b_rptr;
- }
- proto = PPP_PROTOCOL(rptr);
- if (proto > 0x3fff || proto == 0xfd || proto == 0xfb)
- return;
-
- ++state->seqno;
-
- /*
- * Iterate through the message blocks, adding the characters in them
- * to the decompressor's history. For the first block, we start
- * at the either the 1st or 2nd byte of the protocol field,
- * depending on whether the protocol value is compressible.
- */
- rlen = mi->b_wptr - mi->b_rptr;
- state->strm.next_in = rptr + 3;
- state->strm.avail_in = rlen - 3;
- if (proto > 0xff) {
- --state->strm.next_in;
- ++state->strm.avail_in;
- }
- for (;;) {
- r = inflateIncomp(&state->strm);
- if (r != Z_OK) {
- /* gak! */
-#if !DEFLATE_DEBUG
- if (state->debug)
-#endif
- printf("z_incomp%d: inflateIncomp returned %d (%s)\n",
- state->unit, r, (state->strm.msg? state->strm.msg: ""));
- return;
- }
- mi = mi->b_cont;
- if (mi == NULL)
- break;
- state->strm.next_in = mi->b_rptr;
- state->strm.avail_in = mi->b_wptr - mi->b_rptr;
- rlen += state->strm.avail_in;
- }
-
- /*
- * Update stats.
- */
- state->stats.inc_bytes += rlen;
- state->stats.inc_packets++;
- state->stats.unc_bytes += rlen;
- state->stats.unc_packets++;
-}
-
-#endif /* DO_DEFLATE */
diff --git a/mdk-stage1/ppp/modules/if_ppp.c b/mdk-stage1/ppp/modules/if_ppp.c
deleted file mode 100644
index 14e89eb4a..000000000
--- a/mdk-stage1/ppp/modules/if_ppp.c
+++ /dev/null
@@ -1,865 +0,0 @@
-/*
- * if_ppp.c - a network interface connected to a STREAMS module.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under SunOS 4 and Digital UNIX.
- *
- * This file provides the glue between PPP and IP.
- */
-
-#define INET 1
-
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/errno.h>
-#include <sys/mbuf.h>
-#include <sys/socket.h>
-#include <net/if.h>
-#include <net/netisr.h>
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-#include <netinet/in.h>
-#include <netinet/in_var.h>
-#ifdef __osf__
-#include <sys/ioctl.h>
-#include <net/if_types.h>
-#else
-#include <sys/sockio.h>
-#endif
-#include "ppp_mod.h"
-
-#include <sys/stream.h>
-
-#ifdef SNIT_SUPPORT
-#include <sys/time.h>
-#include <net/nit_if.h>
-#include <netinet/if_ether.h>
-#endif
-
-#ifdef __osf__
-#define SIOCSIFMTU SIOCSIPMTU
-#define SIOCGIFMTU SIOCRIPMTU
-#define IFA_ADDR(ifa) (*(ifa)->ifa_addr)
-#else
-#define IFA_ADDR(ifa) ((ifa)->ifa_addr)
-#endif
-
-#define ifr_mtu ifr_metric
-
-static int if_ppp_open __P((queue_t *, int, int, int));
-static int if_ppp_close __P((queue_t *, int));
-static int if_ppp_wput __P((queue_t *, mblk_t *));
-static int if_ppp_rput __P((queue_t *, mblk_t *));
-
-#define PPP_IF_ID 0x8021
-static struct module_info minfo = {
- PPP_IF_ID, "if_ppp", 0, INFPSZ, 4096, 128
-};
-
-static struct qinit rinit = {
- if_ppp_rput, NULL, if_ppp_open, if_ppp_close, NULL, &minfo, NULL
-};
-
-static struct qinit winit = {
- if_ppp_wput, NULL, NULL, NULL, NULL, &minfo, NULL
-};
-
-struct streamtab if_pppinfo = {
- &rinit, &winit, NULL, NULL
-};
-
-typedef struct if_ppp_state {
- int unit;
- queue_t *q;
- int flags;
-} if_ppp_t;
-
-/* Values for flags */
-#define DBGLOG 1
-
-static int if_ppp_count; /* Number of currently-active streams */
-
-static int ppp_nalloc; /* Number of elements of ifs and states */
-static struct ifnet **ifs; /* Array of pointers to interface structs */
-static if_ppp_t **states; /* Array of pointers to state structs */
-
-static int if_ppp_output __P((struct ifnet *, struct mbuf *,
- struct sockaddr *));
-static int if_ppp_ioctl __P((struct ifnet *, u_int, caddr_t));
-static struct mbuf *make_mbufs __P((mblk_t *, int));
-static mblk_t *make_message __P((struct mbuf *, int));
-
-#ifdef SNIT_SUPPORT
-/* Fake ether header for SNIT */
-static struct ether_header snit_ehdr = {{0}, {0}, ETHERTYPE_IP};
-#endif
-
-#ifndef __osf__
-static void ppp_if_detach __P((struct ifnet *));
-
-/*
- * Detach all the interfaces before unloading.
- * Not sure this works.
- */
-int
-if_ppp_unload()
-{
- int i;
-
- if (if_ppp_count > 0)
- return EBUSY;
- for (i = 0; i < ppp_nalloc; ++i)
- if (ifs[i] != 0)
- ppp_if_detach(ifs[i]);
- if (ifs) {
- FREE(ifs, ppp_nalloc * sizeof (struct ifnet *));
- FREE(states, ppp_nalloc * sizeof (struct if_ppp_t *));
- }
- ppp_nalloc = 0;
- return 0;
-}
-#endif /* __osf__ */
-
-/*
- * STREAMS module entry points.
- */
-static int
-if_ppp_open(q, dev, flag, sflag)
- queue_t *q;
- int dev;
- int flag, sflag;
-{
- if_ppp_t *sp;
-
- if (q->q_ptr == 0) {
- sp = (if_ppp_t *) ALLOC_SLEEP(sizeof (if_ppp_t));
- if (sp == 0)
- return OPENFAIL;
- bzero(sp, sizeof (if_ppp_t));
- q->q_ptr = (caddr_t) sp;
- WR(q)->q_ptr = (caddr_t) sp;
- sp->unit = -1; /* no interface unit attached at present */
- sp->q = WR(q);
- sp->flags = 0;
- ++if_ppp_count;
- }
- return 0;
-}
-
-static int
-if_ppp_close(q, flag)
- queue_t *q;
- int flag;
-{
- if_ppp_t *sp;
- struct ifnet *ifp;
-
- sp = (if_ppp_t *) q->q_ptr;
- if (sp != 0) {
- if (sp->flags & DBGLOG)
- printf("if_ppp closed, q=%x sp=%x\n", q, sp);
- if (sp->unit >= 0) {
- if (sp->unit < ppp_nalloc) {
- states[sp->unit] = 0;
- ifp = ifs[sp->unit];
- if (ifp != 0)
- ifp->if_flags &= ~(IFF_UP | IFF_RUNNING);
-#ifdef DEBUG
- } else {
- printf("if_ppp: unit %d nonexistent!\n", sp->unit);
-#endif
- }
- }
- FREE(sp, sizeof (if_ppp_t));
- --if_ppp_count;
- }
- return 0;
-}
-
-static int
-if_ppp_wput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- if_ppp_t *sp;
- struct iocblk *iop;
- int error, unit;
- struct ifnet *ifp;
-
- sp = (if_ppp_t *) q->q_ptr;
- switch (mp->b_datap->db_type) {
- case M_DATA:
- /*
- * Now why would we be getting data coming in here??
- */
- if (sp->flags & DBGLOG)
- printf("if_ppp: got M_DATA len=%d\n", msgdsize(mp));
- freemsg(mp);
- break;
-
- case M_IOCTL:
- iop = (struct iocblk *) mp->b_rptr;
- error = EINVAL;
-
- if (sp->flags & DBGLOG)
- printf("if_ppp: got ioctl cmd=%x count=%d\n",
- iop->ioc_cmd, iop->ioc_count);
-
- switch (iop->ioc_cmd) {
- case PPPIO_NEWPPA: /* well almost */
- if (iop->ioc_count != sizeof(int) || sp->unit >= 0)
- break;
- if ((error = NOTSUSER()) != 0)
- break;
- unit = *(int *)mp->b_cont->b_rptr;
-
- /* Check that this unit isn't already in use */
- if (unit < ppp_nalloc && states[unit] != 0) {
- error = EADDRINUSE;
- break;
- }
-
- /* Extend ifs and states arrays if necessary. */
- error = ENOSR;
- if (unit >= ppp_nalloc) {
- int newn;
- struct ifnet **newifs;
- if_ppp_t **newstates;
-
- newn = unit + 4;
- if (sp->flags & DBGLOG)
- printf("if_ppp: extending ifs to %d\n", newn);
- newifs = (struct ifnet **)
- ALLOC_NOSLEEP(newn * sizeof (struct ifnet *));
- if (newifs == 0)
- break;
- bzero(newifs, newn * sizeof (struct ifnet *));
- newstates = (if_ppp_t **)
- ALLOC_NOSLEEP(newn * sizeof (struct if_ppp_t *));
- if (newstates == 0) {
- FREE(newifs, newn * sizeof (struct ifnet *));
- break;
- }
- bzero(newstates, newn * sizeof (struct if_ppp_t *));
- bcopy(ifs, newifs, ppp_nalloc * sizeof(struct ifnet *));
- bcopy(states, newstates, ppp_nalloc * sizeof(if_ppp_t *));
- if (ifs) {
- FREE(ifs, ppp_nalloc * sizeof(struct ifnet *));
- FREE(states, ppp_nalloc * sizeof(if_ppp_t *));
- }
- ifs = newifs;
- states = newstates;
- ppp_nalloc = newn;
- }
-
- /* Allocate a new ifnet struct if necessary. */
- ifp = ifs[unit];
- if (ifp == 0) {
- ifp = (struct ifnet *) ALLOC_NOSLEEP(sizeof (struct ifnet));
- if (ifp == 0)
- break;
- bzero(ifp, sizeof (struct ifnet));
- ifs[unit] = ifp;
- ifp->if_name = "ppp";
- ifp->if_unit = unit;
- ifp->if_mtu = PPP_MTU;
- ifp->if_flags = IFF_POINTOPOINT | IFF_RUNNING;
-#ifndef __osf__
-#ifdef IFF_MULTICAST
- ifp->if_flags |= IFF_MULTICAST;
-#endif
-#endif /* __osf__ */
- ifp->if_output = if_ppp_output;
-#ifdef __osf__
- ifp->if_version = "Point-to-Point Protocol, version 2.3.11";
- ifp->if_mediamtu = PPP_MTU;
- ifp->if_type = IFT_PPP;
- ifp->if_hdrlen = PPP_HDRLEN;
- ifp->if_addrlen = 0;
- ifp->if_flags |= IFF_NOARP | IFF_SIMPLEX | IFF_NOTRAILERS;
-#ifdef IFF_VAR_MTU
- ifp->if_flags |= IFF_VAR_MTU;
-#endif
-#ifdef NETMASTERCPU
- ifp->if_affinity = NETMASTERCPU;
-#endif
-#endif
- ifp->if_ioctl = if_ppp_ioctl;
- ifp->if_snd.ifq_maxlen = IFQ_MAXLEN;
- if_attach(ifp);
- if (sp->flags & DBGLOG)
- printf("if_ppp: created unit %d\n", unit);
- } else {
- ifp->if_mtu = PPP_MTU;
- ifp->if_flags |= IFF_RUNNING;
- }
-
- states[unit] = sp;
- sp->unit = unit;
-
- error = 0;
- iop->ioc_count = 0;
- if (sp->flags & DBGLOG)
- printf("if_ppp: attached unit %d, sp=%x q=%x\n", unit,
- sp, sp->q);
- break;
-
- case PPPIO_DEBUG:
- error = -1;
- if (iop->ioc_count == sizeof(int)) {
- if (*(int *)mp->b_cont->b_rptr == PPPDBG_LOG + PPPDBG_IF) {
- printf("if_ppp: debug log enabled, q=%x sp=%x\n", q, sp);
- sp->flags |= DBGLOG;
- error = 0;
- iop->ioc_count = 0;
- }
- }
- break;
-
- default:
- error = -1;
- break;
- }
-
- if (sp->flags & DBGLOG)
- printf("if_ppp: ioctl result %d\n", error);
- if (error < 0)
- putnext(q, mp);
- else if (error == 0) {
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
- } else {
- mp->b_datap->db_type = M_IOCNAK;
- iop->ioc_count = 0;
- iop->ioc_error = error;
- qreply(q, mp);
- }
- break;
-
- default:
- putnext(q, mp);
- }
- return 0;
-}
-
-static int
-if_ppp_rput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- if_ppp_t *sp;
- int proto, s;
- struct mbuf *mb;
- struct ifqueue *inq;
- struct ifnet *ifp;
- int len;
-
- sp = (if_ppp_t *) q->q_ptr;
- switch (mp->b_datap->db_type) {
- case M_DATA:
- /*
- * Convert the message into an mbuf chain
- * and inject it into the network code.
- */
- if (sp->flags & DBGLOG)
- printf("if_ppp: rput pkt len %d data %x %x %x %x %x %x %x %x\n",
- msgdsize(mp), mp->b_rptr[0], mp->b_rptr[1], mp->b_rptr[2],
- mp->b_rptr[3], mp->b_rptr[4], mp->b_rptr[5], mp->b_rptr[6],
- mp->b_rptr[7]);
-
- if (sp->unit < 0) {
- freemsg(mp);
- break;
- }
- if (sp->unit >= ppp_nalloc || (ifp = ifs[sp->unit]) == 0) {
-#ifdef DEBUG
- printf("if_ppp: no unit %d!\n", sp->unit);
-#endif
- freemsg(mp);
- break;
- }
-
- if ((ifp->if_flags & IFF_UP) == 0) {
- freemsg(mp);
- break;
- }
- ++ifp->if_ipackets;
-
- proto = PPP_PROTOCOL(mp->b_rptr);
- adjmsg(mp, PPP_HDRLEN);
- len = msgdsize(mp);
- mb = make_mbufs(mp, sizeof(struct ifnet *));
- freemsg(mp);
- if (mb == NULL) {
- if (sp->flags & DBGLOG)
- printf("if_ppp%d: make_mbufs failed\n", ifp->if_unit);
- ++ifp->if_ierrors;
- break;
- }
-
-#ifdef SNIT_SUPPORT
- if (proto == PPP_IP && (ifp->if_flags & IFF_PROMISC)) {
- struct nit_if nif;
-
- nif.nif_header = (caddr_t) &snit_ehdr;
- nif.nif_hdrlen = sizeof(snit_ehdr);
- nif.nif_bodylen = len;
- nif.nif_promisc = 0;
- snit_intr(ifp, mb, &nif);
- }
-#endif
-
-/*
- * For Digital UNIX, there's space set aside in the header mbuf
- * for the interface info.
- *
- * For Sun it's smuggled around via a pointer at the front of the mbuf.
- */
-#ifdef __osf__
- mb->m_pkthdr.rcvif = ifp;
- mb->m_pkthdr.len = len;
-#else
- mb->m_off -= sizeof(struct ifnet *);
- mb->m_len += sizeof(struct ifnet *);
- *mtod(mb, struct ifnet **) = ifp;
-#endif
-
- inq = 0;
- switch (proto) {
- case PPP_IP:
- inq = &ipintrq;
- schednetisr(NETISR_IP);
- }
-
- if (inq != 0) {
- s = splhigh();
- if (IF_QFULL(inq)) {
- IF_DROP(inq);
- ++ifp->if_ierrors;
- if (sp->flags & DBGLOG)
- printf("if_ppp: inq full, proto=%x\n", proto);
- m_freem(mb);
- } else {
- IF_ENQUEUE(inq, mb);
- }
- splx(s);
- } else {
- if (sp->flags & DBGLOG)
- printf("if_ppp%d: proto=%x?\n", ifp->if_unit, proto);
- ++ifp->if_ierrors;
- m_freem(mb);
- }
- break;
-
- default:
- putnext(q, mp);
- }
- return 0;
-}
-
-/*
- * Network code wants to output a packet.
- * Turn it into a STREAMS message and send it down.
- */
-static int
-if_ppp_output(ifp, m0, dst)
- struct ifnet *ifp;
- struct mbuf *m0;
- struct sockaddr *dst;
-{
- mblk_t *mp;
- int proto, s;
- if_ppp_t *sp;
- u_char *p;
-
- if ((ifp->if_flags & IFF_UP) == 0) {
- m_freem(m0);
- return ENETDOWN;
- }
-
- if ((unsigned)ifp->if_unit >= ppp_nalloc) {
-#ifdef DEBUG
- printf("if_ppp_output: unit %d?\n", ifp->if_unit);
-#endif
- m_freem(m0);
- return EINVAL;
- }
- sp = states[ifp->if_unit];
- if (sp == 0) {
-#ifdef DEBUG
- printf("if_ppp_output: no queue?\n");
-#endif
- m_freem(m0);
- return ENETDOWN;
- }
-
- if (sp->flags & DBGLOG) {
- p = mtod(m0, u_char *);
- printf("if_ppp_output%d: af=%d data=%x %x %x %x %x %x %x %x q=%x\n",
- ifp->if_unit, dst->sa_family, p[0], p[1], p[2], p[3], p[4],
- p[5], p[6], p[7], sp->q);
- }
-
- switch (dst->sa_family) {
- case AF_INET:
- proto = PPP_IP;
-#ifdef SNIT_SUPPORT
- if (ifp->if_flags & IFF_PROMISC) {
- struct nit_if nif;
- struct mbuf *m;
- int len;
-
- for (len = 0, m = m0; m != NULL; m = m->m_next)
- len += m->m_len;
- nif.nif_header = (caddr_t) &snit_ehdr;
- nif.nif_hdrlen = sizeof(snit_ehdr);
- nif.nif_bodylen = len;
- nif.nif_promisc = 0;
- snit_intr(ifp, m0, &nif);
- }
-#endif
- break;
-
- default:
- m_freem(m0);
- return EAFNOSUPPORT;
- }
-
- ++ifp->if_opackets;
- mp = make_message(m0, PPP_HDRLEN);
- m_freem(m0);
- if (mp == 0) {
- ++ifp->if_oerrors;
- return ENOBUFS;
- }
- mp->b_rptr -= PPP_HDRLEN;
- mp->b_rptr[0] = PPP_ALLSTATIONS;
- mp->b_rptr[1] = PPP_UI;
- mp->b_rptr[2] = proto >> 8;
- mp->b_rptr[3] = proto;
-
- s = splstr();
- if (sp->flags & DBGLOG)
- printf("if_ppp: putnext(%x, %x), r=%x w=%x p=%x\n",
- sp->q, mp, mp->b_rptr, mp->b_wptr, proto);
- putnext(sp->q, mp);
- splx(s);
-
- return 0;
-}
-
-/*
- * Socket ioctl routine for ppp interfaces.
- */
-static int
-if_ppp_ioctl(ifp, cmd, data)
- struct ifnet *ifp;
- u_int cmd;
- caddr_t data;
-{
- int s, error;
- struct ifreq *ifr = (struct ifreq *) data;
- struct ifaddr *ifa = (struct ifaddr *) data;
- u_short mtu;
-
- error = 0;
- s = splimp();
- switch (cmd) {
- case SIOCSIFFLAGS:
- if ((ifp->if_flags & IFF_RUNNING) == 0)
- ifp->if_flags &= ~IFF_UP;
- break;
-
- case SIOCSIFADDR:
- if (IFA_ADDR(ifa).sa_family != AF_INET)
- error = EAFNOSUPPORT;
- break;
-
- case SIOCSIFDSTADDR:
- if (IFA_ADDR(ifa).sa_family != AF_INET)
- error = EAFNOSUPPORT;
- break;
-
- case SIOCSIFMTU:
- if ((error = NOTSUSER()) != 0)
- break;
-#ifdef __osf__
- /* this hack is necessary because ifioctl checks ifr_data
- * in 4.0 and 5.0, but ifr_data and ifr_metric overlay each
- * other in the definition of struct ifreq so pppd can't set both.
- */
- bcopy(ifr->ifr_data, &mtu, sizeof (u_short));
- ifr->ifr_mtu = mtu;
-#endif
-
- if (ifr->ifr_mtu < PPP_MINMTU || ifr->ifr_mtu > PPP_MAXMTU) {
- error = EINVAL;
- break;
- }
- ifp->if_mtu = ifr->ifr_mtu;
- break;
-
- case SIOCGIFMTU:
- ifr->ifr_mtu = ifp->if_mtu;
- break;
-
- case SIOCADDMULTI:
- case SIOCDELMULTI:
- switch(ifr->ifr_addr.sa_family) {
- case AF_INET:
- break;
- default:
- error = EAFNOSUPPORT;
- break;
- }
- break;
-
- default:
- error = EINVAL;
- }
- splx(s);
- return (error);
-}
-
-/*
- * Turn a STREAMS message into an mbuf chain.
- */
-static struct mbuf *
-make_mbufs(mp, off)
- mblk_t *mp;
- int off;
-{
- struct mbuf *head, **prevp, *m;
- int len, space, n;
- unsigned char *cp, *dp;
-
- len = msgdsize(mp);
- if (len == 0)
- return 0;
- prevp = &head;
- space = 0;
- cp = mp->b_rptr;
-#ifdef __osf__
- MGETHDR(m, M_DONTWAIT, MT_DATA);
- m->m_len = 0;
- space = MHLEN;
- *prevp = m;
- prevp = &m->m_next;
- dp = mtod(m, unsigned char *);
- len -= space;
- off = 0;
-#endif
- for (;;) {
- while (cp >= mp->b_wptr) {
- mp = mp->b_cont;
- if (mp == 0) {
- *prevp = 0;
- return head;
- }
- cp = mp->b_rptr;
- }
- n = mp->b_wptr - cp;
- if (space == 0) {
- MGET(m, M_DONTWAIT, MT_DATA);
- *prevp = m;
- if (m == 0) {
- if (head != 0)
- m_freem(head);
- return 0;
- }
- if (len + off > 2 * MLEN) {
-#ifdef __osf__
- MCLGET(m, M_DONTWAIT);
-#else
- MCLGET(m);
-#endif
- }
-#ifdef __osf__
- space = ((m->m_flags & M_EXT) ? MCLBYTES : MLEN);
-#else
- space = (m->m_off > MMAXOFF? MCLBYTES: MLEN) - off;
- m->m_off += off;
-#endif
- m->m_len = 0;
- len -= space;
- dp = mtod(m, unsigned char *);
- off = 0;
- prevp = &m->m_next;
- }
- if (n > space)
- n = space;
- bcopy(cp, dp, n);
- cp += n;
- dp += n;
- space -= n;
- m->m_len += n;
- }
-}
-
-/*
- * Turn an mbuf chain into a STREAMS message.
- */
-#define ALLOCB_MAX 4096
-
-static mblk_t *
-make_message(m, off)
- struct mbuf *m;
- int off;
-{
- mblk_t *head, **prevp, *mp;
- int len, space, n, nb;
- unsigned char *cp, *dp;
- struct mbuf *nm;
-
- len = 0;
- for (nm = m; nm != 0; nm = nm->m_next)
- len += nm->m_len;
- prevp = &head;
- space = 0;
- cp = mtod(m, unsigned char *);
- nb = m->m_len;
- for (;;) {
- while (nb <= 0) {
- m = m->m_next;
- if (m == 0) {
- *prevp = 0;
- return head;
- }
- cp = mtod(m, unsigned char *);
- nb = m->m_len;
- }
- if (space == 0) {
- space = len + off;
- if (space > ALLOCB_MAX)
- space = ALLOCB_MAX;
- mp = allocb(space, BPRI_LO);
- *prevp = mp;
- if (mp == 0) {
- if (head != 0)
- freemsg(head);
- return 0;
- }
- dp = mp->b_rptr += off;
- space -= off;
- len -= space;
- off = 0;
- prevp = &mp->b_cont;
- }
- n = nb < space? nb: space;
- bcopy(cp, dp, n);
- cp += n;
- dp += n;
- nb -= n;
- space -= n;
- mp->b_wptr = dp;
- }
-}
-
-/*
- * Digital UNIX doesn't allow for removing ifnet structures
- * from the list. But then we're not using this as a loadable
- * module anyway, so that's OK.
- *
- * Under SunOS, this should allow the module to be unloaded.
- * Unfortunately, it doesn't seem to detach all the references,
- * so your system may well crash after you unload this module :-(
- */
-#ifndef __osf__
-
-/*
- * Remove an interface from the system.
- * This routine contains magic.
- */
-#include <net/route.h>
-#include <netinet/in_pcb.h>
-#include <netinet/ip_var.h>
-#include <netinet/tcp.h>
-#include <netinet/tcp_timer.h>
-#include <netinet/tcp_var.h>
-#include <netinet/udp.h>
-#include <netinet/udp_var.h>
-
-static void
-ppp_if_detach(ifp)
- struct ifnet *ifp;
-{
- int s;
- struct inpcb *pcb;
- struct ifaddr *ifa;
- struct in_ifaddr **inap;
- struct ifnet **ifpp;
-
- s = splhigh();
-
- /*
- * Clear the interface from any routes currently cached in
- * TCP or UDP protocol control blocks.
- */
- for (pcb = tcb.inp_next; pcb != &tcb; pcb = pcb->inp_next)
- if (pcb->inp_route.ro_rt && pcb->inp_route.ro_rt->rt_ifp == ifp)
- in_losing(pcb);
- for (pcb = udb.inp_next; pcb != &udb; pcb = pcb->inp_next)
- if (pcb->inp_route.ro_rt && pcb->inp_route.ro_rt->rt_ifp == ifp)
- in_losing(pcb);
-
- /*
- * Delete routes through all addresses of the interface.
- */
- for (ifa = ifp->if_addrlist; ifa != 0; ifa = ifa->ifa_next) {
- rtinit(ifa, ifa, SIOCDELRT, RTF_HOST);
- rtinit(ifa, ifa, SIOCDELRT, 0);
- }
-
- /*
- * Unlink the interface's address(es) from the in_ifaddr list.
- */
- for (inap = &in_ifaddr; *inap != 0; ) {
- if ((*inap)->ia_ifa.ifa_ifp == ifp)
- *inap = (*inap)->ia_next;
- else
- inap = &(*inap)->ia_next;
- }
-
- /*
- * Delete the interface from the ifnet list.
- */
- for (ifpp = &ifnet; (*ifpp) != 0; ) {
- if (*ifpp == ifp)
- break;
- ifpp = &(*ifpp)->if_next;
- }
- if (*ifpp == 0)
- printf("couldn't find interface ppp%d in ifnet list\n", ifp->if_unit);
- else
- *ifpp = ifp->if_next;
-
- splx(s);
-}
-
-#endif /* __osf__ */
diff --git a/mdk-stage1/ppp/modules/ppp.c b/mdk-stage1/ppp/modules/ppp.c
deleted file mode 100644
index 44bf08dff..000000000
--- a/mdk-stage1/ppp/modules/ppp.c
+++ /dev/null
@@ -1,2486 +0,0 @@
-/*
- * ppp.c - STREAMS multiplexing pseudo-device driver for PPP.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under Solaris 2, SVR4, SunOS 4, and Digital UNIX.
- */
-
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/stat.h>
-#include <sys/stream.h>
-#include <sys/stropts.h>
-#include <sys/errno.h>
-#ifdef __osf__
-#include <sys/ioctl.h>
-#include <sys/cmn_err.h>
-#define queclass(mp) ((mp)->b_band & QPCTL)
-#else
-#include <sys/ioccom.h>
-#endif
-#include <sys/time.h>
-#ifdef SVR4
-#include <sys/cmn_err.h>
-#include <sys/conf.h>
-#include <sys/dlpi.h>
-#include <sys/ddi.h>
-#ifdef SOL2
-#include <sys/ksynch.h>
-#include <sys/kstat.h>
-#include <sys/sunddi.h>
-#include <sys/ethernet.h>
-#else
-#include <sys/socket.h>
-#include <sys/sockio.h>
-#include <net/if.h>
-#include <netinet/in.h>
-#endif /* SOL2 */
-#else /* not SVR4 */
-#include <sys/user.h>
-#endif /* SVR4 */
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-#include "ppp_mod.h"
-
-/*
- * Modifications marked with #ifdef PRIOQ are for priority queueing of
- * interactive traffic, and are due to Marko Zec <zec@japa.tel.fer.hr>.
- */
-#ifdef PRIOQ
-#endif /* PRIOQ */
-
-#include <netinet/in.h> /* leave this outside of PRIOQ for htons */
-
-#ifdef __STDC__
-#define __P(x) x
-#else
-#define __P(x) ()
-#endif
-
-/*
- * The IP module may use this SAP value for IP packets.
- */
-#ifndef ETHERTYPE_IP
-#define ETHERTYPE_IP 0x800
-#endif
-
-#if !defined(ETHERTYPE_IPV6)
-#define ETHERTYPE_IPV6 0x86dd
-#endif /* !defined(ETHERTYPE_IPV6) */
-
-#if !defined(ETHERTYPE_ALLSAP) && defined(SOL2)
-#define ETHERTYPE_ALLSAP 0
-#endif /* !defined(ETHERTYPE_ALLSAP) && defined(SOL2) */
-
-#if !defined(PPP_ALLSAP) && defined(SOL2)
-#define PPP_ALLSAP PPP_ALLSTATIONS
-#endif /* !defined(PPP_ALLSAP) && defined(SOL2) */
-
-extern time_t time;
-
-#ifdef SOL2
-/*
- * We use this reader-writer lock to ensure that the lower streams
- * stay connected to the upper streams while the lower-side put and
- * service procedures are running. Essentially it is an existence
- * lock for the upper stream associated with each lower stream.
- */
-krwlock_t ppp_lower_lock;
-#define LOCK_LOWER_W rw_enter(&ppp_lower_lock, RW_WRITER)
-#define LOCK_LOWER_R rw_enter(&ppp_lower_lock, RW_READER)
-#define TRYLOCK_LOWER_R rw_tryenter(&ppp_lower_lock, RW_READER)
-#define UNLOCK_LOWER rw_exit(&ppp_lower_lock)
-
-#define MT_ENTER(x) mutex_enter(x)
-#define MT_EXIT(x) mutex_exit(x)
-
-/*
- * Notes on multithreaded implementation for Solaris 2:
- *
- * We use an inner perimeter around each queue pair and an outer
- * perimeter around the whole driver. The inner perimeter is
- * entered exclusively for all entry points (open, close, put,
- * service). The outer perimeter is entered exclusively for open
- * and close and shared for put and service. This is all done for
- * us by the streams framework.
- *
- * I used to think that the perimeters were entered for the lower
- * streams' put and service routines as well as for the upper streams'.
- * Because of problems experienced by people, and after reading the
- * documentation more closely, I now don't think that is true. So we
- * now use ppp_lower_lock to give us an existence guarantee on the
- * upper stream controlling each lower stream.
- *
- * Shared entry to the outer perimeter protects the existence of all
- * the upper streams and their upperstr_t structures, and guarantees
- * that the following fields of any upperstr_t won't change:
- * nextmn, next, nextppa. It guarantees that the lowerq field of an
- * upperstr_t won't go from non-zero to zero, that the global `ppas'
- * won't change and that the no lower stream will get unlinked.
- *
- * Shared (reader) access to ppa_lower_lock guarantees that no lower
- * stream will be unlinked and that the lowerq field of all upperstr_t
- * structures won't change.
- */
-
-#else /* SOL2 */
-#define LOCK_LOWER_W 0
-#define LOCK_LOWER_R 0
-#define TRYLOCK_LOWER_R 1
-#define UNLOCK_LOWER 0
-#define MT_ENTER(x) 0
-#define MT_EXIT(x) 0
-
-#endif /* SOL2 */
-
-/*
- * Private information; one per upper stream.
- */
-typedef struct upperstr {
- minor_t mn; /* minor device number */
- struct upperstr *nextmn; /* next minor device */
- queue_t *q; /* read q associated with this upper stream */
- int flags; /* flag bits, see below */
- int state; /* current DLPI state */
- int sap; /* service access point */
- int req_sap; /* which SAP the DLPI client requested */
- struct upperstr *ppa; /* control stream for our ppa */
- struct upperstr *next; /* next stream for this ppa */
- uint ioc_id; /* last ioctl ID for this stream */
- enum NPmode npmode; /* what to do with packets on this SAP */
- unsigned char rblocked; /* flow control has blocked upper read strm */
- /* N.B. rblocked is only changed by control stream's put/srv procs */
- /*
- * There is exactly one control stream for each PPA.
- * The following fields are only used for control streams.
- */
- int ppa_id;
- queue_t *lowerq; /* write queue attached below this PPA */
- struct upperstr *nextppa; /* next control stream */
- int mru;
- int mtu;
- struct pppstat stats; /* statistics */
- time_t last_sent; /* time last NP packet sent */
- time_t last_recv; /* time last NP packet rcvd */
-#ifdef SOL2
- kmutex_t stats_lock; /* lock for stats updates */
- kstat_t *kstats; /* stats for netstat */
-#endif /* SOL2 */
-#ifdef LACHTCP
- int ifflags;
- char ifname[IFNAMSIZ];
- struct ifstats ifstats;
-#endif /* LACHTCP */
-} upperstr_t;
-
-/* Values for flags */
-#define US_PRIV 1 /* stream was opened by superuser */
-#define US_CONTROL 2 /* stream is a control stream */
-#define US_BLOCKED 4 /* flow ctrl has blocked lower write stream */
-#define US_LASTMOD 8 /* no PPP modules below us */
-#define US_DBGLOG 0x10 /* log various occurrences */
-#define US_RBLOCKED 0x20 /* flow ctrl has blocked upper read stream */
-
-#if defined(SOL2)
-#if DL_CURRENT_VERSION >= 2
-#define US_PROMISC 0x40 /* stream is promiscuous */
-#endif /* DL_CURRENT_VERSION >= 2 */
-#define US_RAWDATA 0x80 /* raw M_DATA, no DLPI header */
-#endif /* defined(SOL2) */
-
-#ifdef PRIOQ
-static u_char max_band=0;
-static u_char def_band=0;
-
-#define IPPORT_DEFAULT 65535
-
-/*
- * Port priority table
- * Highest priority ports are listed first, lowest are listed last.
- * ICMP & packets using unlisted ports will be treated as "default".
- * If IPPORT_DEFAULT is not listed here, "default" packets will be
- * assigned lowest priority.
- * Each line should be terminated with "0".
- * Line containing only "0" marks the end of the list.
- */
-
-static u_short prioq_table[]= {
- 113, 53, 0,
- 22, 23, 513, 517, 518, 0,
- 514, 21, 79, 111, 0,
- 25, 109, 110, 0,
- IPPORT_DEFAULT, 0,
- 20, 70, 80, 8001, 8008, 8080, 0, /* 8001,8008,8080 - common proxy ports */
-0 };
-
-#endif /* PRIOQ */
-
-
-static upperstr_t *minor_devs = NULL;
-static upperstr_t *ppas = NULL;
-
-#ifdef SVR4
-static int pppopen __P((queue_t *, dev_t *, int, int, cred_t *));
-static int pppclose __P((queue_t *, int, cred_t *));
-#else
-static int pppopen __P((queue_t *, int, int, int));
-static int pppclose __P((queue_t *, int));
-#endif /* SVR4 */
-static int pppurput __P((queue_t *, mblk_t *));
-static int pppuwput __P((queue_t *, mblk_t *));
-static int pppursrv __P((queue_t *));
-static int pppuwsrv __P((queue_t *));
-static int ppplrput __P((queue_t *, mblk_t *));
-static int ppplwput __P((queue_t *, mblk_t *));
-static int ppplrsrv __P((queue_t *));
-static int ppplwsrv __P((queue_t *));
-#ifndef NO_DLPI
-static void dlpi_request __P((queue_t *, mblk_t *, upperstr_t *));
-static void dlpi_error __P((queue_t *, upperstr_t *, int, int, int));
-static void dlpi_ok __P((queue_t *, int));
-#endif
-static int send_data __P((mblk_t *, upperstr_t *));
-static void new_ppa __P((queue_t *, mblk_t *));
-static void attach_ppa __P((queue_t *, mblk_t *));
-static void detach_ppa __P((queue_t *, mblk_t *));
-static void detach_lower __P((queue_t *, mblk_t *));
-static void debug_dump __P((queue_t *, mblk_t *));
-static upperstr_t *find_dest __P((upperstr_t *, int));
-#if defined(SOL2)
-static upperstr_t *find_promisc __P((upperstr_t *, int));
-static mblk_t *prepend_ether __P((upperstr_t *, mblk_t *, int));
-static mblk_t *prepend_udind __P((upperstr_t *, mblk_t *, int));
-static void promisc_sendup __P((upperstr_t *, mblk_t *, int, int));
-#endif /* defined(SOL2) */
-static int putctl2 __P((queue_t *, int, int, int));
-static int putctl4 __P((queue_t *, int, int, int));
-static int pass_packet __P((upperstr_t *ppa, mblk_t *mp, int outbound));
-#ifdef FILTER_PACKETS
-static int ip_hard_filter __P((upperstr_t *ppa, mblk_t *mp, int outbound));
-#endif /* FILTER_PACKETS */
-
-#define PPP_ID 0xb1a6
-static struct module_info ppp_info = {
-#ifdef PRIOQ
- PPP_ID, "ppp", 0, 512, 512, 384
-#else
- PPP_ID, "ppp", 0, 512, 512, 128
-#endif /* PRIOQ */
-};
-
-static struct qinit pppurint = {
- pppurput, pppursrv, pppopen, pppclose, NULL, &ppp_info, NULL
-};
-
-static struct qinit pppuwint = {
- pppuwput, pppuwsrv, NULL, NULL, NULL, &ppp_info, NULL
-};
-
-static struct qinit ppplrint = {
- ppplrput, ppplrsrv, NULL, NULL, NULL, &ppp_info, NULL
-};
-
-static struct qinit ppplwint = {
- ppplwput, ppplwsrv, NULL, NULL, NULL, &ppp_info, NULL
-};
-
-#ifdef LACHTCP
-extern struct ifstats *ifstats;
-int pppdevflag = 0;
-#endif
-
-struct streamtab pppinfo = {
- &pppurint, &pppuwint,
- &ppplrint, &ppplwint
-};
-
-int ppp_count;
-
-/*
- * How we maintain statistics.
- */
-#ifdef SOL2
-#define INCR_IPACKETS(ppa) \
- if (ppa->kstats != 0) { \
- KSTAT_NAMED_PTR(ppa->kstats)[0].value.ul++; \
- }
-#define INCR_IERRORS(ppa) \
- if (ppa->kstats != 0) { \
- KSTAT_NAMED_PTR(ppa->kstats)[1].value.ul++; \
- }
-#define INCR_OPACKETS(ppa) \
- if (ppa->kstats != 0) { \
- KSTAT_NAMED_PTR(ppa->kstats)[2].value.ul++; \
- }
-#define INCR_OERRORS(ppa) \
- if (ppa->kstats != 0) { \
- KSTAT_NAMED_PTR(ppa->kstats)[3].value.ul++; \
- }
-#endif
-
-#ifdef LACHTCP
-#define INCR_IPACKETS(ppa) ppa->ifstats.ifs_ipackets++;
-#define INCR_IERRORS(ppa) ppa->ifstats.ifs_ierrors++;
-#define INCR_OPACKETS(ppa) ppa->ifstats.ifs_opackets++;
-#define INCR_OERRORS(ppa) ppa->ifstats.ifs_oerrors++;
-#endif
-
-/*
- * STREAMS driver entry points.
- */
-static int
-#ifdef SVR4
-pppopen(q, devp, oflag, sflag, credp)
- queue_t *q;
- dev_t *devp;
- int oflag, sflag;
- cred_t *credp;
-#else
-pppopen(q, dev, oflag, sflag)
- queue_t *q;
- int dev; /* really dev_t */
- int oflag, sflag;
-#endif
-{
- upperstr_t *up;
- upperstr_t **prevp;
- minor_t mn;
-#ifdef PRIOQ
- u_short *ptr;
- u_char new_band;
-#endif /* PRIOQ */
-
- if (q->q_ptr)
- DRV_OPEN_OK(dev); /* device is already open */
-
-#ifdef PRIOQ
- /* Calculate max_bband & def_band from definitions in prioq.h
- This colud be done at some more approtiate time (less often)
- but this way it works well so I'll just leave it here */
-
- max_band = 1;
- def_band = 0;
- ptr = prioq_table;
- while (*ptr) {
- new_band = 1;
- while (*ptr)
- if (*ptr++ == IPPORT_DEFAULT) {
- new_band = 0;
- def_band = max_band;
- }
- max_band += new_band;
- ptr++;
- }
- if (def_band)
- def_band = max_band - def_band;
- --max_band;
-#endif /* PRIOQ */
-
- if (sflag == CLONEOPEN) {
- mn = 0;
- for (prevp = &minor_devs; (up = *prevp) != 0; prevp = &up->nextmn) {
- if (up->mn != mn)
- break;
- ++mn;
- }
- } else {
-#ifdef SVR4
- mn = getminor(*devp);
-#else
- mn = minor(dev);
-#endif
- for (prevp = &minor_devs; (up = *prevp) != 0; prevp = &up->nextmn) {
- if (up->mn >= mn)
- break;
- }
- if (up->mn == mn) {
- /* this can't happen */
- q->q_ptr = WR(q)->q_ptr = (caddr_t) up;
- DRV_OPEN_OK(dev);
- }
- }
-
- /*
- * Construct a new minor node.
- */
- up = (upperstr_t *) ALLOC_SLEEP(sizeof(upperstr_t));
- bzero((caddr_t) up, sizeof(upperstr_t));
- if (up == 0) {
- DPRINT("pppopen: out of kernel memory\n");
- OPEN_ERROR(ENXIO);
- }
- up->nextmn = *prevp;
- *prevp = up;
- up->mn = mn;
-#ifdef SVR4
- *devp = makedevice(getmajor(*devp), mn);
-#endif
- up->q = q;
- if (NOTSUSER() == 0)
- up->flags |= US_PRIV;
-#ifndef NO_DLPI
- up->state = DL_UNATTACHED;
-#endif
-#ifdef LACHTCP
- up->ifflags = IFF_UP | IFF_POINTOPOINT;
-#endif
- up->sap = -1;
- up->last_sent = up->last_recv = time;
- up->npmode = NPMODE_DROP;
- q->q_ptr = (caddr_t) up;
- WR(q)->q_ptr = (caddr_t) up;
- noenable(WR(q));
-#ifdef SOL2
- mutex_init(&up->stats_lock, NULL, MUTEX_DRIVER, NULL);
-#endif
- ++ppp_count;
-
- qprocson(q);
- DRV_OPEN_OK(makedev(major(dev), mn));
-}
-
-static int
-#ifdef SVR4
-pppclose(q, flag, credp)
- queue_t *q;
- int flag;
- cred_t *credp;
-#else
-pppclose(q, flag)
- queue_t *q;
- int flag;
-#endif
-{
- upperstr_t *up, **upp;
- upperstr_t *as, *asnext;
- upperstr_t **prevp;
-
- qprocsoff(q);
-
- up = (upperstr_t *) q->q_ptr;
- if (up == 0) {
- DPRINT("pppclose: q_ptr = 0\n");
- return 0;
- }
- if (up->flags & US_DBGLOG)
- DPRINT2("ppp/%d: close, flags=%x\n", up->mn, up->flags);
- if (up->flags & US_CONTROL) {
-#ifdef LACHTCP
- struct ifstats *ifp, *pifp;
-#endif
- if (up->lowerq != 0) {
- /* Gack! the lower stream should have be unlinked earlier! */
- DPRINT1("ppp%d: lower stream still connected on close?\n",
- up->mn);
- LOCK_LOWER_W;
- up->lowerq->q_ptr = 0;
- RD(up->lowerq)->q_ptr = 0;
- up->lowerq = 0;
- UNLOCK_LOWER;
- }
-
- /*
- * This stream represents a PPA:
- * For all streams attached to the PPA, clear their
- * references to this PPA.
- * Then remove this PPA from the list of PPAs.
- */
- for (as = up->next; as != 0; as = asnext) {
- asnext = as->next;
- as->next = 0;
- as->ppa = 0;
- if (as->flags & US_BLOCKED) {
- as->flags &= ~US_BLOCKED;
- flushq(WR(as->q), FLUSHDATA);
- }
- }
- for (upp = &ppas; *upp != 0; upp = &(*upp)->nextppa)
- if (*upp == up) {
- *upp = up->nextppa;
- break;
- }
-#ifdef LACHTCP
- /* Remove the statistics from the active list. */
- for (ifp = ifstats, pifp = 0; ifp; ifp = ifp->ifs_next) {
- if (ifp == &up->ifstats) {
- if (pifp)
- pifp->ifs_next = ifp->ifs_next;
- else
- ifstats = ifp->ifs_next;
- break;
- }
- pifp = ifp;
- }
-#endif
- } else {
- /*
- * If this stream is attached to a PPA,
- * remove it from the PPA's list.
- */
- if ((as = up->ppa) != 0) {
- for (; as->next != 0; as = as->next)
- if (as->next == up) {
- as->next = up->next;
- break;
- }
- }
- }
-
-#ifdef SOL2
- if (up->kstats)
- kstat_delete(up->kstats);
- mutex_destroy(&up->stats_lock);
-#endif
-
- q->q_ptr = NULL;
- WR(q)->q_ptr = NULL;
-
- for (prevp = &minor_devs; *prevp != 0; prevp = &(*prevp)->nextmn) {
- if (*prevp == up) {
- *prevp = up->nextmn;
- break;
- }
- }
- FREE(up, sizeof(upperstr_t));
- --ppp_count;
-
- return 0;
-}
-
-/*
- * A message from on high. We do one of three things:
- * - qreply()
- * - put the message on the lower write stream
- * - queue it for our service routine
- */
-static int
-pppuwput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us, *ppa, *nps;
- struct iocblk *iop;
- struct linkblk *lb;
-#ifdef LACHTCP
- struct ifreq *ifr;
- int i;
-#endif
- queue_t *lq;
- int error, n, sap;
- mblk_t *mq;
- struct ppp_idle *pip;
-#ifdef PRIOQ
- queue_t *tlq;
-#endif /* PRIOQ */
-#ifdef NO_DLPI
- upperstr_t *os;
-#endif
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("pppuwput: q_ptr = 0!\n");
- return 0;
- }
- if (mp == 0) {
- DPRINT1("pppuwput/%d: mp = 0!\n", us->mn);
- return 0;
- }
- if (mp->b_datap == 0) {
- DPRINT1("pppuwput/%d: mp->b_datap = 0!\n", us->mn);
- return 0;
- }
- switch (mp->b_datap->db_type) {
-#ifndef NO_DLPI
- case M_PCPROTO:
- case M_PROTO:
- dlpi_request(q, mp, us);
- break;
-#endif /* NO_DLPI */
-
- case M_DATA:
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: uwput M_DATA len=%d flags=%x\n",
- us->mn, msgdsize(mp), us->flags);
- if (us->ppa == 0 || msgdsize(mp) > us->ppa->mtu + PPP_HDRLEN
-#ifndef NO_DLPI
- || (us->flags & US_CONTROL) == 0
-#endif /* NO_DLPI */
- ) {
- DPRINT1("pppuwput: junk data len=%d\n", msgdsize(mp));
- freemsg(mp);
- break;
- }
-#ifdef NO_DLPI
- if ((us->flags & US_CONTROL) == 0 && !pass_packet(us, mp, 1))
- break;
-#endif
- if (!send_data(mp, us))
- putq(q, mp);
- break;
-
- case M_IOCTL:
- iop = (struct iocblk *) mp->b_rptr;
- error = EINVAL;
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: ioctl %x count=%d\n",
- us->mn, iop->ioc_cmd, iop->ioc_count);
- switch (iop->ioc_cmd) {
-#if defined(SOL2)
- case DLIOCRAW: /* raw M_DATA mode */
- us->flags |= US_RAWDATA;
- error = 0;
- break;
-#endif /* defined(SOL2) */
- case I_LINK:
- if ((us->flags & US_CONTROL) == 0 || us->lowerq != 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl I_LINK b_cont = 0!\n", us->mn);
- break;
- }
- lb = (struct linkblk *) mp->b_cont->b_rptr;
- lq = lb->l_qbot;
- if (lq == 0) {
- DPRINT1("pppuwput/%d: ioctl I_LINK l_qbot = 0!\n", us->mn);
- break;
- }
- LOCK_LOWER_W;
- us->lowerq = lq;
- lq->q_ptr = (caddr_t) q;
- RD(lq)->q_ptr = (caddr_t) us->q;
- UNLOCK_LOWER;
- iop->ioc_count = 0;
- error = 0;
- us->flags &= ~US_LASTMOD;
- /* Unblock upper streams which now feed this lower stream. */
- qenable(q);
- /* Send useful information down to the modules which
- are now linked below us. */
- putctl2(lq, M_CTL, PPPCTL_UNIT, us->ppa_id);
- putctl4(lq, M_CTL, PPPCTL_MRU, us->mru);
- putctl4(lq, M_CTL, PPPCTL_MTU, us->mtu);
-#ifdef PRIOQ
- /* Lower tty driver's queue hiwat/lowat from default 4096/128
- to 256/128 since we don't want queueing of data on
- output to physical device */
-
- freezestr(lq);
- for (tlq = lq; tlq->q_next != NULL; tlq = tlq->q_next)
- ;
- strqset(tlq, QHIWAT, 0, 256);
- strqset(tlq, QLOWAT, 0, 128);
- unfreezestr(lq);
-#endif /* PRIOQ */
- break;
-
- case I_UNLINK:
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl I_UNLINK b_cont = 0!\n", us->mn);
- break;
- }
- lb = (struct linkblk *) mp->b_cont->b_rptr;
-#if DEBUG
- if (us->lowerq != lb->l_qbot) {
- DPRINT2("ppp unlink: lowerq=%x qbot=%x\n",
- us->lowerq, lb->l_qbot);
- break;
- }
-#endif
- iop->ioc_count = 0;
- qwriter(q, mp, detach_lower, PERIM_OUTER);
- error = -1;
- break;
-
- case PPPIO_NEWPPA:
- if (us->flags & US_CONTROL)
- break;
- if ((us->flags & US_PRIV) == 0) {
- error = EPERM;
- break;
- }
- /* Arrange to return an int */
- if ((mq = mp->b_cont) == 0
- || mq->b_datap->db_lim - mq->b_rptr < sizeof(int)) {
- mq = allocb(sizeof(int), BPRI_HI);
- if (mq == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = mq;
- mq->b_cont = 0;
- }
- iop->ioc_count = sizeof(int);
- mq->b_wptr = mq->b_rptr + sizeof(int);
- qwriter(q, mp, new_ppa, PERIM_OUTER);
- error = -1;
- break;
-
- case PPPIO_ATTACH:
- /* like dlpi_attach, for programs which can't write to
- the stream (like pppstats) */
- if (iop->ioc_count != sizeof(int) || us->ppa != 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_ATTACH b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- for (ppa = ppas; ppa != 0; ppa = ppa->nextppa)
- if (ppa->ppa_id == n)
- break;
- if (ppa == 0)
- break;
- us->ppa = ppa;
- iop->ioc_count = 0;
- qwriter(q, mp, attach_ppa, PERIM_OUTER);
- error = -1;
- break;
-
-#ifdef NO_DLPI
- case PPPIO_BIND:
- /* Attach to a given SAP. */
- if (iop->ioc_count != sizeof(int) || us->ppa == 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_BIND b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- /* n must be a valid PPP network protocol number. */
- if (n < 0x21 || n > 0x3fff || (n & 0x101) != 1)
- break;
- /* check that no other stream is bound to this sap already. */
- for (os = us->ppa; os != 0; os = os->next)
- if (os->sap == n)
- break;
- if (os != 0)
- break;
- us->sap = n;
- iop->ioc_count = 0;
- error = 0;
- break;
-#endif /* NO_DLPI */
-
- case PPPIO_MRU:
- if (iop->ioc_count != sizeof(int) || (us->flags & US_CONTROL) == 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_MRU b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- if (n <= 0 || n > PPP_MAXMRU)
- break;
- if (n < PPP_MRU)
- n = PPP_MRU;
- us->mru = n;
- if (us->lowerq)
- putctl4(us->lowerq, M_CTL, PPPCTL_MRU, n);
- error = 0;
- iop->ioc_count = 0;
- break;
-
- case PPPIO_MTU:
- if (iop->ioc_count != sizeof(int) || (us->flags & US_CONTROL) == 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_MTU b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- if (n <= 0 || n > PPP_MAXMTU)
- break;
- us->mtu = n;
-#ifdef LACHTCP
- /* The MTU reported in netstat, not used as IP max packet size! */
- us->ifstats.ifs_mtu = n;
-#endif
- if (us->lowerq)
- putctl4(us->lowerq, M_CTL, PPPCTL_MTU, n);
- error = 0;
- iop->ioc_count = 0;
- break;
-
- case PPPIO_LASTMOD:
- us->flags |= US_LASTMOD;
- error = 0;
- break;
-
- case PPPIO_DEBUG:
- if (iop->ioc_count != sizeof(int))
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_DEBUG b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- if (n == PPPDBG_DUMP + PPPDBG_DRIVER) {
- qwriter(q, NULL, debug_dump, PERIM_OUTER);
- iop->ioc_count = 0;
- error = -1;
- } else if (n == PPPDBG_LOG + PPPDBG_DRIVER) {
- DPRINT1("ppp/%d: debug log enabled\n", us->mn);
- us->flags |= US_DBGLOG;
- iop->ioc_count = 0;
- error = 0;
- } else {
- if (us->ppa == 0 || us->ppa->lowerq == 0)
- break;
- putnext(us->ppa->lowerq, mp);
- error = -1;
- }
- break;
-
- case PPPIO_NPMODE:
- if (iop->ioc_count != 2 * sizeof(int))
- break;
- if ((us->flags & US_CONTROL) == 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_NPMODE b_cont = 0!\n", us->mn);
- break;
- }
- sap = ((int *)mp->b_cont->b_rptr)[0];
- for (nps = us->next; nps != 0; nps = nps->next) {
- if (us->flags & US_DBGLOG)
- DPRINT2("us = 0x%x, us->next->sap = 0x%x\n", nps, nps->sap);
- if (nps->sap == sap)
- break;
- }
- if (nps == 0) {
- if (us->flags & US_DBGLOG)
- DPRINT2("ppp/%d: no stream for sap %x\n", us->mn, sap);
- break;
- }
- /* XXX possibly should use qwriter here */
- nps->npmode = (enum NPmode) ((int *)mp->b_cont->b_rptr)[1];
- if (nps->npmode != NPMODE_QUEUE && (nps->flags & US_BLOCKED) != 0)
- qenable(WR(nps->q));
- iop->ioc_count = 0;
- error = 0;
- break;
-
- case PPPIO_GIDLE:
- if ((ppa = us->ppa) == 0)
- break;
- mq = allocb(sizeof(struct ppp_idle), BPRI_HI);
- if (mq == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = mq;
- mq->b_cont = 0;
- pip = (struct ppp_idle *) mq->b_wptr;
- pip->xmit_idle = time - ppa->last_sent;
- pip->recv_idle = time - ppa->last_recv;
- mq->b_wptr += sizeof(struct ppp_idle);
- iop->ioc_count = sizeof(struct ppp_idle);
- error = 0;
- break;
-
-#ifdef LACHTCP
- case SIOCSIFNAME:
- /* Sent from IP down to us. Attach the ifstats structure. */
- if (iop->ioc_count != sizeof(struct ifreq) || us->ppa == 0)
- break;
- ifr = (struct ifreq *)mp->b_cont->b_rptr;
- /* Find the unit number in the interface name. */
- for (i = 0; i < IFNAMSIZ; i++) {
- if (ifr->ifr_name[i] == 0 ||
- (ifr->ifr_name[i] >= '0' &&
- ifr->ifr_name[i] <= '9'))
- break;
- else
- us->ifname[i] = ifr->ifr_name[i];
- }
- us->ifname[i] = 0;
-
- /* Convert the unit number to binary. */
- for (n = 0; i < IFNAMSIZ; i++) {
- if (ifr->ifr_name[i] == 0) {
- break;
- }
- else {
- n = n * 10 + ifr->ifr_name[i] - '0';
- }
- }
-
- /* Verify the ppa. */
- if (us->ppa->ppa_id != n)
- break;
- ppa = us->ppa;
-
- /* Set up the netstat block. */
- strncpy (ppa->ifname, us->ifname, IFNAMSIZ);
-
- ppa->ifstats.ifs_name = ppa->ifname;
- ppa->ifstats.ifs_unit = n;
- ppa->ifstats.ifs_active = us->state != DL_UNBOUND;
- ppa->ifstats.ifs_mtu = ppa->mtu;
-
- /* Link in statistics used by netstat. */
- ppa->ifstats.ifs_next = ifstats;
- ifstats = &ppa->ifstats;
-
- iop->ioc_count = 0;
- error = 0;
- break;
-
- case SIOCGIFFLAGS:
- if (!(us->flags & US_CONTROL)) {
- if (us->ppa)
- us = us->ppa;
- else
- break;
- }
- ((struct iocblk_in *)iop)->ioc_ifflags = us->ifflags;
- error = 0;
- break;
-
- case SIOCSIFFLAGS:
- if (!(us->flags & US_CONTROL)) {
- if (us->ppa)
- us = us->ppa;
- else
- break;
- }
- us->ifflags = ((struct iocblk_in *)iop)->ioc_ifflags;
- error = 0;
- break;
-
- case SIOCSIFADDR:
- if (!(us->flags & US_CONTROL)) {
- if (us->ppa)
- us = us->ppa;
- else
- break;
- }
- us->ifflags |= IFF_RUNNING;
- ((struct iocblk_in *)iop)->ioc_ifflags |= IFF_RUNNING;
- error = 0;
- break;
-
- case SIOCSIFMTU:
- /*
- * Vanilla SVR4 systems don't handle SIOCSIFMTU, rather
- * they take the MTU from the DL_INFO_ACK we sent in response
- * to their DL_INFO_REQ. Fortunately, they will update the
- * MTU if we send an unsolicited DL_INFO_ACK up.
- */
- if ((mq = allocb(sizeof(dl_info_req_t), BPRI_HI)) == 0)
- break; /* should do bufcall */
- ((union DL_primitives *)mq->b_rptr)->dl_primitive = DL_INFO_REQ;
- mq->b_wptr = mq->b_rptr + sizeof(dl_info_req_t);
- dlpi_request(q, mq, us);
- error = 0;
- break;
-
- case SIOCGIFNETMASK:
- case SIOCSIFNETMASK:
- case SIOCGIFADDR:
- case SIOCGIFDSTADDR:
- case SIOCSIFDSTADDR:
- case SIOCGIFMETRIC:
- error = 0;
- break;
-#endif /* LACHTCP */
-
- default:
- if (us->ppa == 0 || us->ppa->lowerq == 0)
- break;
- us->ioc_id = iop->ioc_id;
- error = -1;
- switch (iop->ioc_cmd) {
- case PPPIO_GETSTAT:
- case PPPIO_GETCSTAT:
- if (us->flags & US_LASTMOD) {
- error = EINVAL;
- break;
- }
- putnext(us->ppa->lowerq, mp);
- break;
- default:
- if (us->flags & US_PRIV)
- putnext(us->ppa->lowerq, mp);
- else {
- DPRINT1("ppp ioctl %x rejected\n", iop->ioc_cmd);
- error = EPERM;
- }
- break;
- }
- break;
- }
-
- if (error > 0) {
- iop->ioc_error = error;
- mp->b_datap->db_type = M_IOCNAK;
- qreply(q, mp);
- } else if (error == 0) {
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
- }
- break;
-
- case M_FLUSH:
- if (us->flags & US_DBGLOG)
- DPRINT2("ppp/%d: flush %x\n", us->mn, *mp->b_rptr);
- if (*mp->b_rptr & FLUSHW)
- flushq(q, FLUSHDATA);
- if (*mp->b_rptr & FLUSHR) {
- *mp->b_rptr &= ~FLUSHW;
- qreply(q, mp);
- } else
- freemsg(mp);
- break;
-
- default:
- freemsg(mp);
- break;
- }
- return 0;
-}
-
-#ifndef NO_DLPI
-static void
-dlpi_request(q, mp, us)
- queue_t *q;
- mblk_t *mp;
- upperstr_t *us;
-{
- union DL_primitives *d = (union DL_primitives *) mp->b_rptr;
- int size = mp->b_wptr - mp->b_rptr;
- mblk_t *reply, *np;
- upperstr_t *ppa, *os;
- int sap, len;
- dl_info_ack_t *info;
- dl_bind_ack_t *ackp;
-#if DL_CURRENT_VERSION >= 2
- dl_phys_addr_ack_t *paddrack;
- static struct ether_addr eaddr = {0};
-#endif
-
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: dlpi prim %x len=%d\n", us->mn,
- d->dl_primitive, size);
- switch (d->dl_primitive) {
- case DL_INFO_REQ:
- if (size < sizeof(dl_info_req_t))
- goto badprim;
- if ((reply = allocb(sizeof(dl_info_ack_t), BPRI_HI)) == 0)
- break; /* should do bufcall */
- reply->b_datap->db_type = M_PCPROTO;
- info = (dl_info_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_info_ack_t);
- bzero((caddr_t) info, sizeof(dl_info_ack_t));
- info->dl_primitive = DL_INFO_ACK;
- info->dl_max_sdu = us->ppa? us->ppa->mtu: PPP_MAXMTU;
- info->dl_min_sdu = 1;
- info->dl_addr_length = sizeof(uint);
- info->dl_mac_type = DL_ETHER; /* a bigger lie */
- info->dl_current_state = us->state;
- info->dl_service_mode = DL_CLDLS;
- info->dl_provider_style = DL_STYLE2;
-#if DL_CURRENT_VERSION >= 2
- info->dl_sap_length = sizeof(uint);
- info->dl_version = DL_CURRENT_VERSION;
-#endif
- qreply(q, reply);
- break;
-
- case DL_ATTACH_REQ:
- if (size < sizeof(dl_attach_req_t))
- goto badprim;
- if (us->state != DL_UNATTACHED || us->ppa != 0) {
- dlpi_error(q, us, DL_ATTACH_REQ, DL_OUTSTATE, 0);
- break;
- }
- for (ppa = ppas; ppa != 0; ppa = ppa->nextppa)
- if (ppa->ppa_id == d->attach_req.dl_ppa)
- break;
- if (ppa == 0) {
- dlpi_error(q, us, DL_ATTACH_REQ, DL_BADPPA, 0);
- break;
- }
- us->ppa = ppa;
- qwriter(q, mp, attach_ppa, PERIM_OUTER);
- return;
-
- case DL_DETACH_REQ:
- if (size < sizeof(dl_detach_req_t))
- goto badprim;
- if (us->state != DL_UNBOUND || us->ppa == 0) {
- dlpi_error(q, us, DL_DETACH_REQ, DL_OUTSTATE, 0);
- break;
- }
- qwriter(q, mp, detach_ppa, PERIM_OUTER);
- return;
-
- case DL_BIND_REQ:
- if (size < sizeof(dl_bind_req_t))
- goto badprim;
- if (us->state != DL_UNBOUND || us->ppa == 0) {
- dlpi_error(q, us, DL_BIND_REQ, DL_OUTSTATE, 0);
- break;
- }
-#if 0
- /* apparently this test fails (unnecessarily?) on some systems */
- if (d->bind_req.dl_service_mode != DL_CLDLS) {
- dlpi_error(q, us, DL_BIND_REQ, DL_UNSUPPORTED, 0);
- break;
- }
-#endif
-
- /* saps must be valid PPP network protocol numbers,
- except that we accept ETHERTYPE_IP in place of PPP_IP. */
- sap = d->bind_req.dl_sap;
- us->req_sap = sap;
-
-#if defined(SOL2)
- if (us->flags & US_DBGLOG)
- DPRINT2("DL_BIND_REQ: ip gives sap = 0x%x, us = 0x%x", sap, us);
-
- if (sap == ETHERTYPE_IP) /* normal IFF_IPV4 */
- sap = PPP_IP;
- else if (sap == ETHERTYPE_IPV6) /* when IFF_IPV6 is set */
- sap = PPP_IPV6;
- else if (sap == ETHERTYPE_ALLSAP) /* snoop gives sap of 0 */
- sap = PPP_ALLSAP;
- else {
- DPRINT2("DL_BIND_REQ: unrecognized sap = 0x%x, us = 0x%x", sap, us);
- dlpi_error(q, us, DL_BIND_REQ, DL_BADADDR, 0);
- break;
- }
-#else
- if (sap == ETHERTYPE_IP)
- sap = PPP_IP;
- if (sap < 0x21 || sap > 0x3fff || (sap & 0x101) != 1) {
- dlpi_error(q, us, DL_BIND_REQ, DL_BADADDR, 0);
- break;
- }
-#endif /* defined(SOL2) */
-
- /* check that no other stream is bound to this sap already. */
- for (os = us->ppa; os != 0; os = os->next)
- if (os->sap == sap)
- break;
- if (os != 0) {
- dlpi_error(q, us, DL_BIND_REQ, DL_NOADDR, 0);
- break;
- }
-
- us->sap = sap;
- us->state = DL_IDLE;
-
- if ((reply = allocb(sizeof(dl_bind_ack_t) + sizeof(uint),
- BPRI_HI)) == 0)
- break; /* should do bufcall */
- ackp = (dl_bind_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_bind_ack_t) + sizeof(uint);
- reply->b_datap->db_type = M_PCPROTO;
- bzero((caddr_t) ackp, sizeof(dl_bind_ack_t));
- ackp->dl_primitive = DL_BIND_ACK;
- ackp->dl_sap = sap;
- ackp->dl_addr_length = sizeof(uint);
- ackp->dl_addr_offset = sizeof(dl_bind_ack_t);
- *(uint *)(ackp+1) = sap;
- qreply(q, reply);
- break;
-
- case DL_UNBIND_REQ:
- if (size < sizeof(dl_unbind_req_t))
- goto badprim;
- if (us->state != DL_IDLE) {
- dlpi_error(q, us, DL_UNBIND_REQ, DL_OUTSTATE, 0);
- break;
- }
- us->sap = -1;
- us->state = DL_UNBOUND;
-#ifdef LACHTCP
- us->ppa->ifstats.ifs_active = 0;
-#endif
- dlpi_ok(q, DL_UNBIND_REQ);
- break;
-
- case DL_UNITDATA_REQ:
- if (size < sizeof(dl_unitdata_req_t))
- goto badprim;
- if (us->state != DL_IDLE) {
- dlpi_error(q, us, DL_UNITDATA_REQ, DL_OUTSTATE, 0);
- break;
- }
- if ((ppa = us->ppa) == 0) {
- cmn_err(CE_CONT, "ppp: in state dl_idle but ppa == 0?\n");
- break;
- }
- len = mp->b_cont == 0? 0: msgdsize(mp->b_cont);
- if (len > ppa->mtu) {
- DPRINT2("dlpi data too large (%d > %d)\n", len, ppa->mtu);
- break;
- }
-
-#if defined(SOL2)
- /*
- * Should there be any promiscuous stream(s), send the data
- * up for each promiscuous stream that we recognize.
- */
- if (mp->b_cont)
- promisc_sendup(ppa, mp->b_cont, us->sap, 0);
-#endif /* defined(SOL2) */
-
- mp->b_band = 0;
-#ifdef PRIOQ
- /* Extract s_port & d_port from IP-packet, the code is a bit
- dirty here, but so am I, too... */
- if (mp->b_datap->db_type == M_PROTO && us->sap == PPP_IP
- && mp->b_cont != 0) {
- u_char *bb, *tlh;
- int iphlen, len;
- u_short *ptr;
- u_char band_unset, cur_band, syn;
- u_short s_port, d_port;
-
- bb = mp->b_cont->b_rptr; /* bb points to IP-header*/
- len = mp->b_cont->b_wptr - mp->b_cont->b_rptr;
- syn = 0;
- s_port = IPPORT_DEFAULT;
- d_port = IPPORT_DEFAULT;
- if (len >= 20) { /* 20 = minimum length of IP header */
- iphlen = (bb[0] & 0x0f) * 4;
- tlh = bb + iphlen;
- len -= iphlen;
- switch (bb[9]) {
- case IPPROTO_TCP:
- if (len >= 20) { /* min length of TCP header */
- s_port = (tlh[0] << 8) + tlh[1];
- d_port = (tlh[2] << 8) + tlh[3];
- syn = tlh[13] & 0x02;
- }
- break;
- case IPPROTO_UDP:
- if (len >= 8) { /* min length of UDP header */
- s_port = (tlh[0] << 8) + tlh[1];
- d_port = (tlh[2] << 8) + tlh[3];
- }
- break;
- }
- }
-
- /*
- * Now calculate b_band for this packet from the
- * port-priority table.
- */
- ptr = prioq_table;
- cur_band = max_band;
- band_unset = 1;
- while (*ptr) {
- while (*ptr && band_unset)
- if (s_port == *ptr || d_port == *ptr++) {
- mp->b_band = cur_band;
- band_unset = 0;
- break;
- }
- ptr++;
- cur_band--;
- }
- if (band_unset)
- mp->b_band = def_band;
- /* It may be usable to urge SYN packets a bit */
- if (syn)
- mp->b_band++;
- }
-#endif /* PRIOQ */
- /* this assumes PPP_HDRLEN <= sizeof(dl_unitdata_req_t) */
- if (mp->b_datap->db_ref > 1) {
- np = allocb(PPP_HDRLEN, BPRI_HI);
- if (np == 0)
- break; /* gak! */
- np->b_cont = mp->b_cont;
- mp->b_cont = 0;
- freeb(mp);
- mp = np;
- } else
- mp->b_datap->db_type = M_DATA;
- /* XXX should use dl_dest_addr_offset/length here,
- but we would have to translate ETHERTYPE_IP -> PPP_IP */
- mp->b_wptr = mp->b_rptr + PPP_HDRLEN;
- mp->b_rptr[0] = PPP_ALLSTATIONS;
- mp->b_rptr[1] = PPP_UI;
- mp->b_rptr[2] = us->sap >> 8;
- mp->b_rptr[3] = us->sap;
- if (pass_packet(us, mp, 1)) {
- if (!send_data(mp, us))
- putq(q, mp);
- }
- return;
-
-#if DL_CURRENT_VERSION >= 2
- case DL_PHYS_ADDR_REQ:
- if (size < sizeof(dl_phys_addr_req_t))
- goto badprim;
-
- /*
- * Don't check state because ifconfig sends this one down too
- */
-
- if ((reply = allocb(sizeof(dl_phys_addr_ack_t)+ETHERADDRL,
- BPRI_HI)) == 0)
- break; /* should do bufcall */
- reply->b_datap->db_type = M_PCPROTO;
- paddrack = (dl_phys_addr_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_phys_addr_ack_t);
- bzero((caddr_t) paddrack, sizeof(dl_phys_addr_ack_t)+ETHERADDRL);
- paddrack->dl_primitive = DL_PHYS_ADDR_ACK;
- paddrack->dl_addr_length = ETHERADDRL;
- paddrack->dl_addr_offset = sizeof(dl_phys_addr_ack_t);
- bcopy(&eaddr, reply->b_wptr, ETHERADDRL);
- reply->b_wptr += ETHERADDRL;
- qreply(q, reply);
- break;
-
-#if defined(SOL2)
- case DL_PROMISCON_REQ:
- if (size < sizeof(dl_promiscon_req_t))
- goto badprim;
- us->flags |= US_PROMISC;
- dlpi_ok(q, DL_PROMISCON_REQ);
- break;
-
- case DL_PROMISCOFF_REQ:
- if (size < sizeof(dl_promiscoff_req_t))
- goto badprim;
- us->flags &= ~US_PROMISC;
- dlpi_ok(q, DL_PROMISCOFF_REQ);
- break;
-#else
- case DL_PROMISCON_REQ: /* fall thru */
- case DL_PROMISCOFF_REQ: /* fall thru */
-#endif /* defined(SOL2) */
-#endif /* DL_CURRENT_VERSION >= 2 */
-
-#if DL_CURRENT_VERSION >= 2
- case DL_SET_PHYS_ADDR_REQ:
- case DL_SUBS_BIND_REQ:
- case DL_SUBS_UNBIND_REQ:
- case DL_ENABMULTI_REQ:
- case DL_DISABMULTI_REQ:
- case DL_XID_REQ:
- case DL_TEST_REQ:
- case DL_REPLY_UPDATE_REQ:
- case DL_REPLY_REQ:
- case DL_DATA_ACK_REQ:
-#endif
- case DL_CONNECT_REQ:
- case DL_TOKEN_REQ:
- dlpi_error(q, us, d->dl_primitive, DL_NOTSUPPORTED, 0);
- break;
-
- case DL_CONNECT_RES:
- case DL_DISCONNECT_REQ:
- case DL_RESET_REQ:
- case DL_RESET_RES:
- dlpi_error(q, us, d->dl_primitive, DL_OUTSTATE, 0);
- break;
-
- case DL_UDQOS_REQ:
- dlpi_error(q, us, d->dl_primitive, DL_BADQOSTYPE, 0);
- break;
-
-#if DL_CURRENT_VERSION >= 2
- case DL_TEST_RES:
- case DL_XID_RES:
- break;
-#endif
-
- default:
- cmn_err(CE_CONT, "ppp: unknown dlpi prim 0x%x\n", d->dl_primitive);
- /* fall through */
- badprim:
- dlpi_error(q, us, d->dl_primitive, DL_BADPRIM, 0);
- break;
- }
- freemsg(mp);
-}
-
-static void
-dlpi_error(q, us, prim, err, uerr)
- queue_t *q;
- upperstr_t *us;
- int prim, err, uerr;
-{
- mblk_t *reply;
- dl_error_ack_t *errp;
-
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: dlpi error, prim=%x, err=%x\n", us->mn, prim, err);
- reply = allocb(sizeof(dl_error_ack_t), BPRI_HI);
- if (reply == 0)
- return; /* XXX should do bufcall */
- reply->b_datap->db_type = M_PCPROTO;
- errp = (dl_error_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_error_ack_t);
- errp->dl_primitive = DL_ERROR_ACK;
- errp->dl_error_primitive = prim;
- errp->dl_errno = err;
- errp->dl_unix_errno = uerr;
- qreply(q, reply);
-}
-
-static void
-dlpi_ok(q, prim)
- queue_t *q;
- int prim;
-{
- mblk_t *reply;
- dl_ok_ack_t *okp;
-
- reply = allocb(sizeof(dl_ok_ack_t), BPRI_HI);
- if (reply == 0)
- return; /* XXX should do bufcall */
- reply->b_datap->db_type = M_PCPROTO;
- okp = (dl_ok_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_ok_ack_t);
- okp->dl_primitive = DL_OK_ACK;
- okp->dl_correct_primitive = prim;
- qreply(q, reply);
-}
-#endif /* NO_DLPI */
-
-static int
-pass_packet(us, mp, outbound)
- upperstr_t *us;
- mblk_t *mp;
- int outbound;
-{
- int pass;
- upperstr_t *ppa;
-
- if ((ppa = us->ppa) == 0) {
- freemsg(mp);
- return 0;
- }
-
-#ifdef FILTER_PACKETS
- pass = ip_hard_filter(us, mp, outbound);
-#else
- /*
- * Here is where we might, in future, decide whether to pass
- * or drop the packet, and whether it counts as link activity.
- */
- pass = 1;
-#endif /* FILTER_PACKETS */
-
- if (pass < 0) {
- /* pass only if link already up, and don't update time */
- if (ppa->lowerq == 0) {
- freemsg(mp);
- return 0;
- }
- pass = 1;
- } else if (pass) {
- if (outbound)
- ppa->last_sent = time;
- else
- ppa->last_recv = time;
- }
-
- return pass;
-}
-
-/*
- * We have some data to send down to the lower stream (or up the
- * control stream, if we don't have a lower stream attached).
- * Returns 1 if the message was dealt with, 0 if it wasn't able
- * to be sent on and should therefore be queued up.
- */
-static int
-send_data(mp, us)
- mblk_t *mp;
- upperstr_t *us;
-{
- upperstr_t *ppa;
-
- if ((us->flags & US_BLOCKED) || us->npmode == NPMODE_QUEUE)
- return 0;
- ppa = us->ppa;
- if (ppa == 0 || us->npmode == NPMODE_DROP || us->npmode == NPMODE_ERROR) {
- if (us->flags & US_DBGLOG)
- DPRINT2("ppp/%d: dropping pkt (npmode=%d)\n", us->mn, us->npmode);
- freemsg(mp);
- return 1;
- }
- if (ppa->lowerq == 0) {
- /* try to send it up the control stream */
- if (bcanputnext(ppa->q, mp->b_band)) {
- /*
- * The message seems to get corrupted for some reason if
- * we just send the message up as it is, so we send a copy.
- */
- mblk_t *np = copymsg(mp);
- freemsg(mp);
- if (np != 0)
- putnext(ppa->q, np);
- return 1;
- }
- } else {
- if (bcanputnext(ppa->lowerq, mp->b_band)) {
- MT_ENTER(&ppa->stats_lock);
- ppa->stats.ppp_opackets++;
- ppa->stats.ppp_obytes += msgdsize(mp);
-#ifdef INCR_OPACKETS
- INCR_OPACKETS(ppa);
-#endif
- MT_EXIT(&ppa->stats_lock);
- /*
- * The lower queue is only ever detached while holding an
- * exclusive lock on the whole driver. So we can be confident
- * that the lower queue is still there.
- */
- putnext(ppa->lowerq, mp);
- return 1;
- }
- }
- us->flags |= US_BLOCKED;
- return 0;
-}
-
-/*
- * Allocate a new PPA id and link this stream into the list of PPAs.
- * This procedure is called with an exclusive lock on all queues in
- * this driver.
- */
-static void
-new_ppa(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us, *up, **usp;
- int ppa_id;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("new_ppa: q_ptr = 0!\n");
- return;
- }
-
- usp = &ppas;
- ppa_id = 0;
- while ((up = *usp) != 0 && ppa_id == up->ppa_id) {
- ++ppa_id;
- usp = &up->nextppa;
- }
- us->ppa_id = ppa_id;
- us->ppa = us;
- us->next = 0;
- us->nextppa = *usp;
- *usp = us;
- us->flags |= US_CONTROL;
- us->npmode = NPMODE_PASS;
-
- us->mtu = PPP_MTU;
- us->mru = PPP_MRU;
-
-#ifdef SOL2
- /*
- * Create a kstats record for our statistics, so netstat -i works.
- */
- if (us->kstats == 0) {
- char unit[32];
-
- sprintf(unit, "ppp%d", us->ppa->ppa_id);
- us->kstats = kstat_create("ppp", us->ppa->ppa_id, unit,
- "net", KSTAT_TYPE_NAMED, 4, 0);
- if (us->kstats != 0) {
- kstat_named_t *kn = KSTAT_NAMED_PTR(us->kstats);
-
- strcpy(kn[0].name, "ipackets");
- kn[0].data_type = KSTAT_DATA_ULONG;
- strcpy(kn[1].name, "ierrors");
- kn[1].data_type = KSTAT_DATA_ULONG;
- strcpy(kn[2].name, "opackets");
- kn[2].data_type = KSTAT_DATA_ULONG;
- strcpy(kn[3].name, "oerrors");
- kn[3].data_type = KSTAT_DATA_ULONG;
- kstat_install(us->kstats);
- }
- }
-#endif /* SOL2 */
-
- *(int *)mp->b_cont->b_rptr = ppa_id;
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
-}
-
-static void
-attach_ppa(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us, *t;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("attach_ppa: q_ptr = 0!\n");
- return;
- }
-
-#ifndef NO_DLPI
- us->state = DL_UNBOUND;
-#endif
- for (t = us->ppa; t->next != 0; t = t->next)
- ;
- t->next = us;
- us->next = 0;
- if (mp->b_datap->db_type == M_IOCTL) {
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
- } else {
-#ifndef NO_DLPI
- dlpi_ok(q, DL_ATTACH_REQ);
-#endif
- }
-}
-
-static void
-detach_ppa(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us, *t;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("detach_ppa: q_ptr = 0!\n");
- return;
- }
-
- for (t = us->ppa; t->next != 0; t = t->next)
- if (t->next == us) {
- t->next = us->next;
- break;
- }
- us->next = 0;
- us->ppa = 0;
-#ifndef NO_DLPI
- us->state = DL_UNATTACHED;
- dlpi_ok(q, DL_DETACH_REQ);
-#endif
-}
-
-/*
- * We call this with qwriter in order to give the upper queue procedures
- * the guarantee that the lower queue is not going to go away while
- * they are executing.
- */
-static void
-detach_lower(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("detach_lower: q_ptr = 0!\n");
- return;
- }
-
- LOCK_LOWER_W;
- us->lowerq->q_ptr = 0;
- RD(us->lowerq)->q_ptr = 0;
- us->lowerq = 0;
- UNLOCK_LOWER;
-
- /* Unblock streams which now feed back up the control stream. */
- qenable(us->q);
-
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
-}
-
-static int
-pppuwsrv(q)
- queue_t *q;
-{
- upperstr_t *us, *as;
- mblk_t *mp;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("pppuwsrv: q_ptr = 0!\n");
- return 0;
- }
-
- /*
- * If this is a control stream, then this service procedure
- * probably got enabled because of flow control in the lower
- * stream being enabled (or because of the lower stream going
- * away). Therefore we enable the service procedure of all
- * attached upper streams.
- */
- if (us->flags & US_CONTROL) {
- for (as = us->next; as != 0; as = as->next)
- qenable(WR(as->q));
- }
-
- /* Try to send on any data queued here. */
- us->flags &= ~US_BLOCKED;
- while ((mp = getq(q)) != 0) {
- if (!send_data(mp, us)) {
- putbq(q, mp);
- break;
- }
- }
-
- return 0;
-}
-
-/* should never get called... */
-static int
-ppplwput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- putnext(q, mp);
- return 0;
-}
-
-static int
-ppplwsrv(q)
- queue_t *q;
-{
- queue_t *uq;
-
- /*
- * Flow control has back-enabled this stream:
- * enable the upper write service procedure for
- * the upper control stream for this lower stream.
- */
- LOCK_LOWER_R;
- uq = (queue_t *) q->q_ptr;
- if (uq != 0)
- qenable(uq);
- UNLOCK_LOWER;
- return 0;
-}
-
-/*
- * This should only get called for control streams.
- */
-static int
-pppurput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *ppa, *us;
- int proto, len;
- struct iocblk *iop;
-
- ppa = (upperstr_t *) q->q_ptr;
- if (ppa == 0) {
- DPRINT("pppurput: q_ptr = 0!\n");
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
- case M_CTL:
- MT_ENTER(&ppa->stats_lock);
- switch (*mp->b_rptr) {
- case PPPCTL_IERROR:
-#ifdef INCR_IERRORS
- INCR_IERRORS(ppa);
-#endif
- ppa->stats.ppp_ierrors++;
- break;
- case PPPCTL_OERROR:
-#ifdef INCR_OERRORS
- INCR_OERRORS(ppa);
-#endif
- ppa->stats.ppp_oerrors++;
- break;
- }
- MT_EXIT(&ppa->stats_lock);
- freemsg(mp);
- break;
-
- case M_IOCACK:
- case M_IOCNAK:
- /*
- * Attempt to match up the response with the stream
- * that the request came from.
- */
- iop = (struct iocblk *) mp->b_rptr;
- for (us = ppa; us != 0; us = us->next)
- if (us->ioc_id == iop->ioc_id)
- break;
- if (us == 0)
- freemsg(mp);
- else
- putnext(us->q, mp);
- break;
-
- case M_HANGUP:
- /*
- * The serial device has hung up. We don't want to send
- * the M_HANGUP message up to pppd because that will stop
- * us from using the control stream any more. Instead we
- * send a zero-length message as an end-of-file indication.
- */
- freemsg(mp);
- mp = allocb(1, BPRI_HI);
- if (mp == 0) {
- DPRINT1("ppp/%d: couldn't allocate eof message!\n", ppa->mn);
- break;
- }
- putnext(ppa->q, mp);
- break;
-
- default:
- if (mp->b_datap->db_type == M_DATA) {
- len = msgdsize(mp);
- if (mp->b_wptr - mp->b_rptr < PPP_HDRLEN) {
- PULLUP(mp, PPP_HDRLEN);
- if (mp == 0) {
- DPRINT1("ppp_urput: msgpullup failed (len=%d)\n", len);
- break;
- }
- }
- MT_ENTER(&ppa->stats_lock);
- ppa->stats.ppp_ipackets++;
- ppa->stats.ppp_ibytes += len;
-#ifdef INCR_IPACKETS
- INCR_IPACKETS(ppa);
-#endif
- MT_EXIT(&ppa->stats_lock);
-
- proto = PPP_PROTOCOL(mp->b_rptr);
-
-#if defined(SOL2)
- /*
- * Should there be any promiscuous stream(s), send the data
- * up for each promiscuous stream that we recognize.
- */
- promisc_sendup(ppa, mp, proto, 1);
-#endif /* defined(SOL2) */
-
- if (proto < 0x8000 && (us = find_dest(ppa, proto)) != 0) {
- /*
- * A data packet for some network protocol.
- * Queue it on the upper stream for that protocol.
- * XXX could we just putnext it? (would require thought)
- * The rblocked flag is there to ensure that we keep
- * messages in order for each network protocol.
- */
- if (!pass_packet(us, mp, 0))
- break;
- if (!us->rblocked && !canput(us->q))
- us->rblocked = 1;
- if (!us->rblocked)
- putq(us->q, mp);
- else
- putq(q, mp);
- break;
- }
- }
- /*
- * A control frame, a frame for an unknown protocol,
- * or some other message type.
- * Send it up to pppd via the control stream.
- */
- if (queclass(mp) == QPCTL || canputnext(ppa->q))
- putnext(ppa->q, mp);
- else
- putq(q, mp);
- break;
- }
-
- return 0;
-}
-
-static int
-pppursrv(q)
- queue_t *q;
-{
- upperstr_t *us, *as;
- mblk_t *mp, *hdr;
-#ifndef NO_DLPI
- dl_unitdata_ind_t *ud;
-#endif
- int proto;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("pppursrv: q_ptr = 0!\n");
- return 0;
- }
-
- if (us->flags & US_CONTROL) {
- /*
- * A control stream.
- * If there is no lower queue attached, run the write service
- * routines of other upper streams attached to this PPA.
- */
- if (us->lowerq == 0) {
- as = us;
- do {
- if (as->flags & US_BLOCKED)
- qenable(WR(as->q));
- as = as->next;
- } while (as != 0);
- }
-
- /*
- * Messages get queued on this stream's read queue if they
- * can't be queued on the read queue of the attached stream
- * that they are destined for. This is for flow control -
- * when this queue fills up, the lower read put procedure will
- * queue messages there and the flow control will propagate
- * down from there.
- */
- while ((mp = getq(q)) != 0) {
- proto = PPP_PROTOCOL(mp->b_rptr);
- if (proto < 0x8000 && (as = find_dest(us, proto)) != 0) {
- if (!canput(as->q))
- break;
- putq(as->q, mp);
- } else {
- if (!canputnext(q))
- break;
- putnext(q, mp);
- }
- }
- if (mp) {
- putbq(q, mp);
- } else {
- /* can now put stuff directly on network protocol streams again */
- for (as = us->next; as != 0; as = as->next)
- as->rblocked = 0;
- }
-
- /*
- * If this stream has a lower stream attached,
- * enable the read queue's service routine.
- * XXX we should really only do this if the queue length
- * has dropped below the low-water mark.
- */
- if (us->lowerq != 0)
- qenable(RD(us->lowerq));
-
- } else {
- /*
- * A network protocol stream. Put a DLPI header on each
- * packet and send it on.
- * (Actually, it seems that the IP module will happily
- * accept M_DATA messages without the DL_UNITDATA_IND header.)
- */
- while ((mp = getq(q)) != 0) {
- if (!canputnext(q)) {
- putbq(q, mp);
- break;
- }
-#ifndef NO_DLPI
- proto = PPP_PROTOCOL(mp->b_rptr);
- mp->b_rptr += PPP_HDRLEN;
- hdr = allocb(sizeof(dl_unitdata_ind_t) + 2 * sizeof(uint),
- BPRI_MED);
- if (hdr == 0) {
- /* XXX should put it back and use bufcall */
- freemsg(mp);
- continue;
- }
- hdr->b_datap->db_type = M_PROTO;
- ud = (dl_unitdata_ind_t *) hdr->b_wptr;
- hdr->b_wptr += sizeof(dl_unitdata_ind_t) + 2 * sizeof(uint);
- hdr->b_cont = mp;
- ud->dl_primitive = DL_UNITDATA_IND;
- ud->dl_dest_addr_length = sizeof(uint);
- ud->dl_dest_addr_offset = sizeof(dl_unitdata_ind_t);
- ud->dl_src_addr_length = sizeof(uint);
- ud->dl_src_addr_offset = ud->dl_dest_addr_offset + sizeof(uint);
-#if DL_CURRENT_VERSION >= 2
- ud->dl_group_address = 0;
-#endif
- /* Send the DLPI client the data with the SAP they requested,
- (e.g. ETHERTYPE_IP) rather than the PPP protocol number
- (e.g. PPP_IP) */
- ((uint *)(ud + 1))[0] = us->req_sap; /* dest SAP */
- ((uint *)(ud + 1))[1] = us->req_sap; /* src SAP */
- putnext(q, hdr);
-#else /* NO_DLPI */
- putnext(q, mp);
-#endif /* NO_DLPI */
- }
- /*
- * Now that we have consumed some packets from this queue,
- * enable the control stream's read service routine so that we
- * can process any packets for us that might have got queued
- * there for flow control reasons.
- */
- if (us->ppa)
- qenable(us->ppa->q);
- }
-
- return 0;
-}
-
-static upperstr_t *
-find_dest(ppa, proto)
- upperstr_t *ppa;
- int proto;
-{
- upperstr_t *us;
-
- for (us = ppa->next; us != 0; us = us->next)
- if (proto == us->sap)
- break;
- return us;
-}
-
-#if defined (SOL2)
-/*
- * Test upstream promiscuous conditions. As of now, only pass IPv4 and
- * Ipv6 packets upstream (let PPP packets be decoded elsewhere).
- */
-static upperstr_t *
-find_promisc(us, proto)
- upperstr_t *us;
- int proto;
-{
-
- if ((proto != PPP_IP) && (proto != PPP_IPV6))
- return (upperstr_t *)0;
-
- for ( ; us; us = us->next) {
- if ((us->flags & US_PROMISC) && (us->state == DL_IDLE))
- return us;
- }
-
- return (upperstr_t *)0;
-}
-
-/*
- * Prepend an empty Ethernet header to msg for snoop, et al.
- */
-static mblk_t *
-prepend_ether(us, mp, proto)
- upperstr_t *us;
- mblk_t *mp;
- int proto;
-{
- mblk_t *eh;
- int type;
-
- if ((eh = allocb(sizeof(struct ether_header), BPRI_HI)) == 0) {
- freemsg(mp);
- return (mblk_t *)0;
- }
-
- if (proto == PPP_IP)
- type = ETHERTYPE_IP;
- else if (proto == PPP_IPV6)
- type = ETHERTYPE_IPV6;
- else
- type = proto; /* What else? Let decoder decide */
-
- eh->b_wptr += sizeof(struct ether_header);
- bzero((caddr_t)eh->b_rptr, sizeof(struct ether_header));
- ((struct ether_header *)eh->b_rptr)->ether_type = htons((short)type);
- eh->b_cont = mp;
- return (eh);
-}
-
-/*
- * Prepend DL_UNITDATA_IND mblk to msg
- */
-static mblk_t *
-prepend_udind(us, mp, proto)
- upperstr_t *us;
- mblk_t *mp;
- int proto;
-{
- dl_unitdata_ind_t *dlu;
- mblk_t *dh;
- size_t size;
-
- size = sizeof(dl_unitdata_ind_t);
- if ((dh = allocb(size, BPRI_MED)) == 0) {
- freemsg(mp);
- return (mblk_t *)0;
- }
-
- dh->b_datap->db_type = M_PROTO;
- dh->b_wptr = dh->b_datap->db_lim;
- dh->b_rptr = dh->b_wptr - size;
-
- dlu = (dl_unitdata_ind_t *)dh->b_rptr;
- dlu->dl_primitive = DL_UNITDATA_IND;
- dlu->dl_dest_addr_length = 0;
- dlu->dl_dest_addr_offset = sizeof(dl_unitdata_ind_t);
- dlu->dl_src_addr_length = 0;
- dlu->dl_src_addr_offset = sizeof(dl_unitdata_ind_t);
- dlu->dl_group_address = 0;
-
- dh->b_cont = mp;
- return (dh);
-}
-
-/*
- * For any recognized promiscuous streams, send data upstream
- */
-static void
-promisc_sendup(ppa, mp, proto, skip)
- upperstr_t *ppa;
- mblk_t *mp;
- int proto, skip;
-{
- mblk_t *dup_mp, *dup_dup_mp;
- upperstr_t *prus, *nprus;
-
- if ((prus = find_promisc(ppa, proto)) != 0) {
- if (dup_mp = dupmsg(mp)) {
-
- if (skip)
- dup_mp->b_rptr += PPP_HDRLEN;
-
- for ( ; nprus = find_promisc(prus->next, proto);
- prus = nprus) {
-
- if (dup_dup_mp = dupmsg(dup_mp)) {
- if (canputnext(prus->q)) {
- if (prus->flags & US_RAWDATA) {
- dup_dup_mp = prepend_ether(prus, dup_dup_mp, proto);
- putnext(prus->q, dup_dup_mp);
- } else {
- dup_dup_mp = prepend_udind(prus, dup_dup_mp, proto);
- putnext(prus->q, dup_dup_mp);
- }
- } else {
- DPRINT("ppp_urput: data to promisc q dropped\n");
- freemsg(dup_dup_mp);
- }
- }
- }
-
- if (canputnext(prus->q)) {
- if (prus->flags & US_RAWDATA) {
- dup_mp = prepend_ether(prus, dup_mp, proto);
- putnext(prus->q, dup_mp);
- } else {
- dup_mp = prepend_udind(prus, dup_mp, proto);
- putnext(prus->q, dup_mp);
- }
- } else {
- DPRINT("ppp_urput: data to promisc q dropped\n");
- freemsg(dup_mp);
- }
- }
- }
-}
-#endif /* defined(SOL2) */
-
-/*
- * We simply put the message on to the associated upper control stream
- * (either here or in ppplrsrv). That way we enter the perimeters
- * before looking through the list of attached streams to decide which
- * stream it should go up.
- */
-static int
-ppplrput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- queue_t *uq;
- struct iocblk *iop;
-
- switch (mp->b_datap->db_type) {
- case M_IOCTL:
- iop = (struct iocblk *) mp->b_rptr;
- iop->ioc_error = EINVAL;
- mp->b_datap->db_type = M_IOCNAK;
- qreply(q, mp);
- return 0;
- case M_FLUSH:
- if (*mp->b_rptr & FLUSHR)
- flushq(q, FLUSHDATA);
- if (*mp->b_rptr & FLUSHW) {
- *mp->b_rptr &= ~FLUSHR;
- qreply(q, mp);
- } else
- freemsg(mp);
- return 0;
- }
-
- /*
- * If we can't get the lower lock straight away, queue this one
- * rather than blocking, to avoid the possibility of deadlock.
- */
- if (!TRYLOCK_LOWER_R) {
- putq(q, mp);
- return 0;
- }
-
- /*
- * Check that we're still connected to the driver.
- */
- uq = (queue_t *) q->q_ptr;
- if (uq == 0) {
- UNLOCK_LOWER;
- DPRINT1("ppplrput: q = %x, uq = 0??\n", q);
- freemsg(mp);
- return 0;
- }
-
- /*
- * Try to forward the message to the put routine for the upper
- * control stream for this lower stream.
- * If there are already messages queued here, queue this one so
- * they don't get out of order.
- */
- if (queclass(mp) == QPCTL || (qsize(q) == 0 && canput(uq)))
- put(uq, mp);
- else
- putq(q, mp);
-
- UNLOCK_LOWER;
- return 0;
-}
-
-static int
-ppplrsrv(q)
- queue_t *q;
-{
- mblk_t *mp;
- queue_t *uq;
-
- /*
- * Packets get queued here for flow control reasons
- * or if the lrput routine couldn't get the lower lock
- * without blocking.
- */
- LOCK_LOWER_R;
- uq = (queue_t *) q->q_ptr;
- if (uq == 0) {
- UNLOCK_LOWER;
- flushq(q, FLUSHALL);
- DPRINT1("ppplrsrv: q = %x, uq = 0??\n", q);
- return 0;
- }
- while ((mp = getq(q)) != 0) {
- if (queclass(mp) == QPCTL || canput(uq))
- put(uq, mp);
- else {
- putbq(q, mp);
- break;
- }
- }
- UNLOCK_LOWER;
- return 0;
-}
-
-static int
-putctl2(q, type, code, val)
- queue_t *q;
- int type, code, val;
-{
- mblk_t *mp;
-
- mp = allocb(2, BPRI_HI);
- if (mp == 0)
- return 0;
- mp->b_datap->db_type = type;
- mp->b_wptr[0] = code;
- mp->b_wptr[1] = val;
- mp->b_wptr += 2;
- putnext(q, mp);
- return 1;
-}
-
-static int
-putctl4(q, type, code, val)
- queue_t *q;
- int type, code, val;
-{
- mblk_t *mp;
-
- mp = allocb(4, BPRI_HI);
- if (mp == 0)
- return 0;
- mp->b_datap->db_type = type;
- mp->b_wptr[0] = code;
- ((short *)mp->b_wptr)[1] = val;
- mp->b_wptr += 4;
- putnext(q, mp);
- return 1;
-}
-
-static void
-debug_dump(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us;
- queue_t *uq, *lq;
-
- DPRINT("ppp upper streams:\n");
- for (us = minor_devs; us != 0; us = us->nextmn) {
- uq = us->q;
- DPRINT3(" %d: q=%x rlev=%d",
- us->mn, uq, (uq? qsize(uq): 0));
- DPRINT3(" wlev=%d flags=0x%b", (uq? qsize(WR(uq)): 0),
- us->flags, "\020\1priv\2control\3blocked\4last");
- DPRINT3(" state=%x sap=%x req_sap=%x", us->state, us->sap,
- us->req_sap);
- if (us->ppa == 0)
- DPRINT(" ppa=?\n");
- else
- DPRINT1(" ppa=%d\n", us->ppa->ppa_id);
- if (us->flags & US_CONTROL) {
- lq = us->lowerq;
- DPRINT3(" control for %d lq=%x rlev=%d",
- us->ppa_id, lq, (lq? qsize(RD(lq)): 0));
- DPRINT3(" wlev=%d mru=%d mtu=%d\n",
- (lq? qsize(lq): 0), us->mru, us->mtu);
- }
- }
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
-}
-
-#ifdef FILTER_PACKETS
-#include <netinet/in_systm.h>
-#include <netinet/ip.h>
-#include <netinet/udp.h>
-#include <netinet/tcp.h>
-
-#define MAX_IPHDR 128 /* max TCP/IP header size */
-
-
-/* The following table contains a hard-coded list of protocol/port pairs.
- * Any matching packets are either discarded unconditionally, or,
- * if ok_if_link_up is non-zero when a connection does not currently exist
- * (i.e., they go through if the connection is present, but never initiate
- * a dial-out).
- * This idea came from a post by dm@garage.uun.org (David Mazieres)
- */
-static struct pktfilt_tab {
- int proto;
- u_short port;
- u_short ok_if_link_up;
-} pktfilt_tab[] = {
- { IPPROTO_UDP, 520, 1 }, /* RIP, ok to pass if link is up */
- { IPPROTO_UDP, 123, 1 }, /* NTP, don't keep up the link for it */
- { -1, 0, 0 } /* terminator entry has port == -1 */
-};
-
-
-static int
-ip_hard_filter(us, mp, outbound)
- upperstr_t *us;
- mblk_t *mp;
- int outbound;
-{
- struct ip *ip;
- struct pktfilt_tab *pft;
- mblk_t *temp_mp;
- int proto;
- int len, hlen;
-
-
- /* Note, the PPP header has already been pulled up in all cases */
- proto = PPP_PROTOCOL(mp->b_rptr);
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: filter, proto=0x%x, out=%d\n", us->mn, proto, outbound);
-
- switch (proto)
- {
- case PPP_IP:
- if ((mp->b_wptr - mp->b_rptr) == PPP_HDRLEN && mp->b_cont != 0) {
- temp_mp = mp->b_cont;
- len = msgdsize(temp_mp);
- hlen = (len < MAX_IPHDR) ? len : MAX_IPHDR;
- PULLUP(temp_mp, hlen);
- if (temp_mp == 0) {
- DPRINT2("ppp/%d: filter, pullup next failed, len=%d\n",
- us->mn, hlen);
- mp->b_cont = 0; /* PULLUP() freed the rest */
- freemsg(mp);
- return 0;
- }
- ip = (struct ip *)mp->b_cont->b_rptr;
- }
- else {
- len = msgdsize(mp);
- hlen = (len < (PPP_HDRLEN+MAX_IPHDR)) ? len : (PPP_HDRLEN+MAX_IPHDR);
- PULLUP(mp, hlen);
- if (mp == 0) {
- DPRINT2("ppp/%d: filter, pullup failed, len=%d\n",
- us->mn, hlen);
- return 0;
- }
- ip = (struct ip *)(mp->b_rptr + PPP_HDRLEN);
- }
-
- /* For IP traffic, certain packets (e.g., RIP) may be either
- * 1. ignored - dropped completely
- * 2. will not initiate a connection, but
- * will be passed if a connection is currently up.
- */
- for (pft=pktfilt_tab; pft->proto != -1; pft++) {
- if (ip->ip_p == pft->proto) {
- switch(pft->proto) {
- case IPPROTO_UDP:
- if (((struct udphdr *) &((int *)ip)[ip->ip_hl])->uh_dport
- == htons(pft->port)) goto endfor;
- break;
- case IPPROTO_TCP:
- if (((struct tcphdr *) &((int *)ip)[ip->ip_hl])->th_dport
- == htons(pft->port)) goto endfor;
- break;
- }
- }
- }
- endfor:
- if (pft->proto != -1) {
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: found IP pkt, proto=0x%x (%d)\n",
- us->mn, pft->proto, pft->port);
- /* Discard if not connected, or if not pass_with_link_up */
- /* else, if link is up let go by, but don't update time */
- return pft->ok_if_link_up? -1: 0;
- }
- break;
- } /* end switch (proto) */
-
- return 1;
-}
-#endif /* FILTER_PACKETS */
-
diff --git a/mdk-stage1/ppp/modules/ppp_ahdlc.c b/mdk-stage1/ppp/modules/ppp_ahdlc.c
deleted file mode 100644
index d0b961258..000000000
--- a/mdk-stage1/ppp/modules/ppp_ahdlc.c
+++ /dev/null
@@ -1,878 +0,0 @@
-/*
- * ppp_ahdlc.c - STREAMS module for doing PPP asynchronous HDLC.
- *
- * Re-written by Adi Masputra <adi.masputra@sun.com>, based on
- * the original ppp_ahdlc.c
- *
- * Copyright (c) 2000 by Sun Microsystems, Inc.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies.
- *
- * SUN MAKES NO REPRESENTATION OR WARRANTIES ABOUT THE SUITABILITY OF
- * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
- * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
- * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
- * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
- * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under Solaris 2, SVR4, SunOS 4, and Digital UNIX.
- */
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/stream.h>
-#include <sys/errno.h>
-
-#ifdef SVR4
-#include <sys/conf.h>
-#include <sys/kmem.h>
-#include <sys/cmn_err.h>
-#include <sys/ddi.h>
-#else
-#include <sys/user.h>
-#ifdef __osf__
-#include <sys/cmn_err.h>
-#endif
-#endif /* SVR4 */
-
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-#include "ppp_mod.h"
-
-/*
- * Right now, mutex is only enabled for Solaris 2.x
- */
-#if defined(SOL2)
-#define USE_MUTEX
-#endif /* SOL2 */
-
-/*
- * intpointer_t and uintpointer_t are signed and unsigned integer types
- * large enough to hold any data pointer; that is, data pointers can be
- * assigned into or from these integer types without losing precision.
- * On recent Solaris releases, these types are defined in sys/int_types.h,
- * but not on SunOS 4.x or the earlier Solaris versions.
- */
-#if defined(_LP64) || defined(_I32LPx)
-typedef long intpointer_t;
-typedef unsigned long uintpointer_t;
-#else
-typedef int intpointer_t;
-typedef unsigned int uintpointer_t;
-#endif
-
-MOD_OPEN_DECL(ahdlc_open);
-MOD_CLOSE_DECL(ahdlc_close);
-static int ahdlc_wput __P((queue_t *, mblk_t *));
-static int ahdlc_rput __P((queue_t *, mblk_t *));
-static void ahdlc_encode __P((queue_t *, mblk_t *));
-static void ahdlc_decode __P((queue_t *, mblk_t *));
-static int msg_byte __P((mblk_t *, unsigned int));
-
-#if defined(SOL2)
-/*
- * Don't send HDLC start flag is last transmit is within 1.5 seconds -
- * FLAG_TIME is defined is microseconds
- */
-#define FLAG_TIME 1500
-#define ABS(x) (x >= 0 ? x : (-x))
-#endif /* SOL2 */
-
-/*
- * Extract byte i of message mp
- */
-#define MSG_BYTE(mp, i) ((i) < (mp)->b_wptr - (mp)->b_rptr? (mp)->b_rptr[i]: \
- msg_byte((mp), (i)))
-
-/*
- * Is this LCP packet one we have to transmit using LCP defaults?
- */
-#define LCP_USE_DFLT(mp) (1 <= (code = MSG_BYTE((mp), 4)) && code <= 7)
-
-/*
- * Standard STREAMS declarations
- */
-static struct module_info minfo = {
- 0x7d23, "ppp_ahdl", 0, INFPSZ, 32768, 512
-};
-
-static struct qinit rinit = {
- ahdlc_rput, NULL, ahdlc_open, ahdlc_close, NULL, &minfo, NULL
-};
-
-static struct qinit winit = {
- ahdlc_wput, NULL, NULL, NULL, NULL, &minfo, NULL
-};
-
-#if defined(SVR4) && !defined(SOL2)
-int phdldevflag = 0;
-#define ppp_ahdlcinfo phdlinfo
-#endif /* defined(SVR4) && !defined(SOL2) */
-
-struct streamtab ppp_ahdlcinfo = {
- &rinit, /* ptr to st_rdinit */
- &winit, /* ptr to st_wrinit */
- NULL, /* ptr to st_muxrinit */
- NULL, /* ptr to st_muxwinit */
-#if defined(SUNOS4)
- NULL /* ptr to ptr to st_modlist */
-#endif /* SUNOS4 */
-};
-
-#if defined(SUNOS4)
-int ppp_ahdlc_count = 0; /* open counter */
-#endif /* SUNOS4 */
-
-/*
- * Per-stream state structure
- */
-typedef struct ahdlc_state {
-#if defined(USE_MUTEX)
- kmutex_t lock; /* lock for this structure */
-#endif /* USE_MUTEX */
- int flags; /* link flags */
- mblk_t *rx_buf; /* ptr to receive buffer */
- int rx_buf_size; /* receive buffer size */
- ushort_t infcs; /* calculated rx HDLC FCS */
- u_int32_t xaccm[8]; /* 256-bit xmit ACCM */
- u_int32_t raccm; /* 32-bit rcv ACCM */
- int mtu; /* interface MTU */
- int mru; /* link MRU */
- int unit; /* current PPP unit number */
- struct pppstat stats; /* statistic structure */
-#if defined(SOL2)
- clock_t flag_time; /* time in usec between flags */
- clock_t lbolt; /* last updated lbolt */
-#endif /* SOL2 */
-} ahdlc_state_t;
-
-/*
- * Values for flags
- */
-#define ESCAPED 0x100 /* last saw escape char on input */
-#define IFLUSH 0x200 /* flushing input due to error */
-
-/*
- * RCV_B7_1, etc., defined in net/pppio.h, are stored in flags also.
- */
-#define RCV_FLAGS (RCV_B7_1|RCV_B7_0|RCV_ODDP|RCV_EVNP)
-
-/*
- * FCS lookup table as calculated by genfcstab.
- */
-static u_short fcstab[256] = {
- 0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf,
- 0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5, 0xe97e, 0xf8f7,
- 0x1081, 0x0108, 0x3393, 0x221a, 0x56a5, 0x472c, 0x75b7, 0x643e,
- 0x9cc9, 0x8d40, 0xbfdb, 0xae52, 0xdaed, 0xcb64, 0xf9ff, 0xe876,
- 0x2102, 0x308b, 0x0210, 0x1399, 0x6726, 0x76af, 0x4434, 0x55bd,
- 0xad4a, 0xbcc3, 0x8e58, 0x9fd1, 0xeb6e, 0xfae7, 0xc87c, 0xd9f5,
- 0x3183, 0x200a, 0x1291, 0x0318, 0x77a7, 0x662e, 0x54b5, 0x453c,
- 0xbdcb, 0xac42, 0x9ed9, 0x8f50, 0xfbef, 0xea66, 0xd8fd, 0xc974,
- 0x4204, 0x538d, 0x6116, 0x709f, 0x0420, 0x15a9, 0x2732, 0x36bb,
- 0xce4c, 0xdfc5, 0xed5e, 0xfcd7, 0x8868, 0x99e1, 0xab7a, 0xbaf3,
- 0x5285, 0x430c, 0x7197, 0x601e, 0x14a1, 0x0528, 0x37b3, 0x263a,
- 0xdecd, 0xcf44, 0xfddf, 0xec56, 0x98e9, 0x8960, 0xbbfb, 0xaa72,
- 0x6306, 0x728f, 0x4014, 0x519d, 0x2522, 0x34ab, 0x0630, 0x17b9,
- 0xef4e, 0xfec7, 0xcc5c, 0xddd5, 0xa96a, 0xb8e3, 0x8a78, 0x9bf1,
- 0x7387, 0x620e, 0x5095, 0x411c, 0x35a3, 0x242a, 0x16b1, 0x0738,
- 0xffcf, 0xee46, 0xdcdd, 0xcd54, 0xb9eb, 0xa862, 0x9af9, 0x8b70,
- 0x8408, 0x9581, 0xa71a, 0xb693, 0xc22c, 0xd3a5, 0xe13e, 0xf0b7,
- 0x0840, 0x19c9, 0x2b52, 0x3adb, 0x4e64, 0x5fed, 0x6d76, 0x7cff,
- 0x9489, 0x8500, 0xb79b, 0xa612, 0xd2ad, 0xc324, 0xf1bf, 0xe036,
- 0x18c1, 0x0948, 0x3bd3, 0x2a5a, 0x5ee5, 0x4f6c, 0x7df7, 0x6c7e,
- 0xa50a, 0xb483, 0x8618, 0x9791, 0xe32e, 0xf2a7, 0xc03c, 0xd1b5,
- 0x2942, 0x38cb, 0x0a50, 0x1bd9, 0x6f66, 0x7eef, 0x4c74, 0x5dfd,
- 0xb58b, 0xa402, 0x9699, 0x8710, 0xf3af, 0xe226, 0xd0bd, 0xc134,
- 0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c,
- 0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028, 0x91a1, 0xa33a, 0xb2b3,
- 0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb,
- 0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9, 0x8120, 0xb3bb, 0xa232,
- 0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a,
- 0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1,
- 0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb, 0x0e70, 0x1ff9,
- 0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab, 0xa022, 0x92b9, 0x8330,
- 0x7bc7, 0x6a4e, 0x58d5, 0x495c, 0x3de3, 0x2c6a, 0x1ef1, 0x0f78
-};
-
-static u_int32_t paritytab[8] =
-{
- 0x96696996, 0x69969669, 0x69969669, 0x96696996,
- 0x69969669, 0x96696996, 0x96696996, 0x69969669
-};
-
-/*
- * STREAMS module open (entry) point
- */
-MOD_OPEN(ahdlc_open)
-{
- ahdlc_state_t *state;
-
- /*
- * Return if it's already opened
- */
- if (q->q_ptr) {
- return 0;
- }
-
- /*
- * This can only be opened as a module
- */
- if (sflag != MODOPEN) {
- return 0;
- }
-
- state = (ahdlc_state_t *) ALLOC_NOSLEEP(sizeof(ahdlc_state_t));
- if (state == 0)
- OPEN_ERROR(ENOSR);
- bzero((caddr_t) state, sizeof(ahdlc_state_t));
-
- q->q_ptr = (caddr_t) state;
- WR(q)->q_ptr = (caddr_t) state;
-
-#if defined(USE_MUTEX)
- mutex_init(&state->lock, NULL, MUTEX_DEFAULT, NULL);
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
-
- state->xaccm[0] = ~0; /* escape 0x00 through 0x1f */
- state->xaccm[3] = 0x60000000; /* escape 0x7d and 0x7e */
- state->mru = PPP_MRU; /* default of 1500 bytes */
-#if defined(SOL2)
- state->flag_time = drv_usectohz(FLAG_TIME);
-#endif /* SOL2 */
-
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
-
-#if defined(SUNOS4)
- ppp_ahdlc_count++;
-#endif /* SUNOS4 */
-
- qprocson(q);
-
- return 0;
-}
-
-/*
- * STREAMS module close (exit) point
- */
-MOD_CLOSE(ahdlc_close)
-{
- ahdlc_state_t *state;
-
- qprocsoff(q);
-
- state = (ahdlc_state_t *) q->q_ptr;
-
- if (state == 0) {
- DPRINT("state == 0 in ahdlc_close\n");
- return 0;
- }
-
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
-
- if (state->rx_buf != 0) {
- freemsg(state->rx_buf);
- state->rx_buf = 0;
- }
-
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
- mutex_destroy(&state->lock);
-#endif /* USE_MUTEX */
-
- FREE(q->q_ptr, sizeof(ahdlc_state_t));
- q->q_ptr = NULL;
- OTHERQ(q)->q_ptr = NULL;
-
-#if defined(SUNOS4)
- if (ppp_ahdlc_count)
- ppp_ahdlc_count--;
-#endif /* SUNOS4 */
-
- return 0;
-}
-
-/*
- * Write side put routine
- */
-static int
-ahdlc_wput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- ahdlc_state_t *state;
- struct iocblk *iop;
- int error;
- mblk_t *np;
- struct ppp_stats *psp;
-
- state = (ahdlc_state_t *) q->q_ptr;
- if (state == 0) {
- DPRINT("state == 0 in ahdlc_wput\n");
- freemsg(mp);
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
- case M_DATA:
- /*
- * A data packet - do character-stuffing and FCS, and
- * send it onwards.
- */
- ahdlc_encode(q, mp);
- freemsg(mp);
- break;
-
- case M_IOCTL:
- iop = (struct iocblk *) mp->b_rptr;
- error = EINVAL;
- switch (iop->ioc_cmd) {
- case PPPIO_XACCM:
- if ((iop->ioc_count < sizeof(u_int32_t)) ||
- (iop->ioc_count > sizeof(ext_accm))) {
- break;
- }
- if (mp->b_cont == 0) {
- DPRINT1("ahdlc_wput/%d: PPPIO_XACCM b_cont = 0!\n", state->unit);
- break;
- }
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- bcopy((caddr_t)mp->b_cont->b_rptr, (caddr_t)state->xaccm,
- iop->ioc_count);
- state->xaccm[2] &= ~0x40000000; /* don't escape 0x5e */
- state->xaccm[3] |= 0x60000000; /* do escape 0x7d, 0x7e */
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- iop->ioc_count = 0;
- error = 0;
- break;
-
- case PPPIO_RACCM:
- if (iop->ioc_count != sizeof(u_int32_t))
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ahdlc_wput/%d: PPPIO_RACCM b_cont = 0!\n", state->unit);
- break;
- }
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- bcopy((caddr_t)mp->b_cont->b_rptr, (caddr_t)&state->raccm,
- sizeof(u_int32_t));
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- iop->ioc_count = 0;
- error = 0;
- break;
-
- case PPPIO_GCLEAN:
- np = allocb(sizeof(int), BPRI_HI);
- if (np == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = np;
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- *(int *)np->b_wptr = state->flags & RCV_FLAGS;
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- np->b_wptr += sizeof(int);
- iop->ioc_count = sizeof(int);
- error = 0;
- break;
-
- case PPPIO_GETSTAT:
- np = allocb(sizeof(struct ppp_stats), BPRI_HI);
- if (np == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = np;
- psp = (struct ppp_stats *) np->b_wptr;
- np->b_wptr += sizeof(struct ppp_stats);
- bzero((caddr_t)psp, sizeof(struct ppp_stats));
- psp->p = state->stats;
- iop->ioc_count = sizeof(struct ppp_stats);
- error = 0;
- break;
-
- case PPPIO_LASTMOD:
- /* we knew this anyway */
- error = 0;
- break;
-
- default:
- error = -1;
- break;
- }
-
- if (error < 0)
- putnext(q, mp);
- else if (error == 0) {
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
- } else {
- mp->b_datap->db_type = M_IOCNAK;
- iop->ioc_count = 0;
- iop->ioc_error = error;
- qreply(q, mp);
- }
- break;
-
- case M_CTL:
- switch (*mp->b_rptr) {
- case PPPCTL_MTU:
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- state->mtu = ((unsigned short *)mp->b_rptr)[1];
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- freemsg(mp);
- break;
- case PPPCTL_MRU:
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- state->mru = ((unsigned short *)mp->b_rptr)[1];
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- freemsg(mp);
- break;
- case PPPCTL_UNIT:
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- state->unit = mp->b_rptr[1];
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- break;
- default:
- putnext(q, mp);
- }
- break;
-
- default:
- putnext(q, mp);
- }
-
- return 0;
-}
-
-/*
- * Read side put routine
- */
-static int
-ahdlc_rput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- ahdlc_state_t *state;
-
- state = (ahdlc_state_t *) q->q_ptr;
- if (state == 0) {
- DPRINT("state == 0 in ahdlc_rput\n");
- freemsg(mp);
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
- case M_DATA:
- ahdlc_decode(q, mp);
- freemsg(mp);
- break;
-
- case M_HANGUP:
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- if (state->rx_buf != 0) {
- /* XXX would like to send this up for debugging */
- freemsg(state->rx_buf);
- state->rx_buf = 0;
- }
- state->flags = IFLUSH;
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- putnext(q, mp);
- break;
-
- default:
- putnext(q, mp);
- }
- return 0;
-}
-
-/*
- * Extract bit c from map m, to determine if c needs to be escaped
- */
-#define IN_TX_MAP(c, m) ((m)[(c) >> 5] & (1 << ((c) & 0x1f)))
-
-static void
-ahdlc_encode(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- ahdlc_state_t *state;
- u_int32_t *xaccm, loc_xaccm[8];
- ushort_t fcs;
- size_t outmp_len;
- mblk_t *outmp, *tmp;
- uchar_t *dp, fcs_val;
- int is_lcp, code;
-#if defined(SOL2)
- clock_t lbolt;
-#endif /* SOL2 */
-
- if (msgdsize(mp) < 4) {
- return;
- }
-
- state = (ahdlc_state_t *)q->q_ptr;
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
-
- /*
- * Allocate an output buffer large enough to handle a case where all
- * characters need to be escaped
- */
- outmp_len = (msgdsize(mp) << 1) + /* input block x 2 */
- (sizeof(fcs) << 2) + /* HDLC FCS x 4 */
- (sizeof(uchar_t) << 1); /* HDLC flags x 2 */
-
- outmp = allocb(outmp_len, BPRI_MED);
- if (outmp == NULL) {
- state->stats.ppp_oerrors++;
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- putctl1(RD(q)->q_next, M_CTL, PPPCTL_OERROR);
- return;
- }
-
-#if defined(SOL2)
- /*
- * Check if our last transmit happenned within flag_time, using
- * the system's LBOLT value in clock ticks
- */
- if (drv_getparm(LBOLT, &lbolt) != -1) {
- if (ABS((clock_t)lbolt - state->lbolt) > state->flag_time) {
- *outmp->b_wptr++ = PPP_FLAG;
- }
- state->lbolt = lbolt;
- } else {
- *outmp->b_wptr++ = PPP_FLAG;
- }
-#else
- /*
- * If the driver below still has a message to process, skip the
- * HDLC flag, otherwise, put one in the beginning
- */
- if (qsize(q->q_next) == 0) {
- *outmp->b_wptr++ = PPP_FLAG;
- }
-#endif
-
- /*
- * All control characters must be escaped for LCP packets with code
- * values between 1 (Conf-Req) and 7 (Code-Rej).
- */
- is_lcp = ((MSG_BYTE(mp, 0) == PPP_ALLSTATIONS) &&
- (MSG_BYTE(mp, 1) == PPP_UI) &&
- (MSG_BYTE(mp, 2) == (PPP_LCP >> 8)) &&
- (MSG_BYTE(mp, 3) == (PPP_LCP & 0xff)) &&
- LCP_USE_DFLT(mp));
-
- xaccm = state->xaccm;
- if (is_lcp) {
- bcopy((caddr_t)state->xaccm, (caddr_t)loc_xaccm, sizeof(loc_xaccm));
- loc_xaccm[0] = ~0; /* force escape on 0x00 through 0x1f */
- xaccm = loc_xaccm;
- }
-
- fcs = PPP_INITFCS; /* Initial FCS is 0xffff */
-
- /*
- * Process this block and the rest (if any) attached to the this one
- */
- for (tmp = mp; tmp; tmp = tmp->b_cont) {
- if (tmp->b_datap->db_type == M_DATA) {
- for (dp = tmp->b_rptr; dp < tmp->b_wptr; dp++) {
- fcs = PPP_FCS(fcs, *dp);
- if (IN_TX_MAP(*dp, xaccm)) {
- *outmp->b_wptr++ = PPP_ESCAPE;
- *outmp->b_wptr++ = *dp ^ PPP_TRANS;
- } else {
- *outmp->b_wptr++ = *dp;
- }
- }
- } else {
- continue; /* skip if db_type is something other than M_DATA */
- }
- }
-
- /*
- * Append the HDLC FCS, making sure that escaping is done on any
- * necessary bytes
- */
- fcs_val = (fcs ^ 0xffff) & 0xff;
- if (IN_TX_MAP(fcs_val, xaccm)) {
- *outmp->b_wptr++ = PPP_ESCAPE;
- *outmp->b_wptr++ = fcs_val ^ PPP_TRANS;
- } else {
- *outmp->b_wptr++ = fcs_val;
- }
-
- fcs_val = ((fcs ^ 0xffff) >> 8) & 0xff;
- if (IN_TX_MAP(fcs_val, xaccm)) {
- *outmp->b_wptr++ = PPP_ESCAPE;
- *outmp->b_wptr++ = fcs_val ^ PPP_TRANS;
- } else {
- *outmp->b_wptr++ = fcs_val;
- }
-
- /*
- * And finally, append the HDLC flag, and send it away
- */
- *outmp->b_wptr++ = PPP_FLAG;
-
- state->stats.ppp_obytes += msgdsize(outmp);
- state->stats.ppp_opackets++;
-
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
-
- putnext(q, outmp);
- return;
-}
-
-/*
- * Checks the 32-bit receive ACCM to see if the byte needs un-escaping
- */
-#define IN_RX_MAP(c, m) ((((unsigned int) (uchar_t) (c)) < 0x20) && \
- (m) & (1 << (c)))
-
-
-/*
- * Process received characters.
- */
-static void
-ahdlc_decode(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- ahdlc_state_t *state;
- mblk_t *om;
- uchar_t *dp;
- ushort_t fcs;
-#if defined(SOL2)
- mblk_t *zmp;
-#endif /* SOL2 */
-
-#if defined(SOL2)
- /*
- * In case the driver (or something below) doesn't send
- * data upstream in one message block, concatenate everything
- */
- if (!((mp->b_wptr - mp->b_rptr == msgdsize(mp)) &&
- ((intpointer_t)mp->b_rptr % sizeof(intpointer_t) == 0))) {
-
- zmp = msgpullup(mp, -1);
- freemsg(mp);
- mp = zmp;
- if (mp == 0)
- return;
- }
-#endif /* SOL2 */
-
- state = (ahdlc_state_t *) q->q_ptr;
-
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
-
- state->stats.ppp_ibytes += msgdsize(mp);
-
- for (dp = mp->b_rptr; dp < mp->b_wptr; dp++) {
-
- /*
- * This should detect the lack of 8-bit communication channel
- * which is necessary for PPP to work. In addition, it also
- * checks on the parity.
- */
- if (*dp & 0x80)
- state->flags |= RCV_B7_1;
- else
- state->flags |= RCV_B7_0;
-
- if (paritytab[*dp >> 5] & (1 << (*dp & 0x1f)))
- state->flags |= RCV_ODDP;
- else
- state->flags |= RCV_EVNP;
-
- /*
- * So we have a HDLC flag ...
- */
- if (*dp == PPP_FLAG) {
-
- /*
- * If we think that it marks the beginning of the frame,
- * then continue to process the next octects
- */
- if ((state->flags & IFLUSH) ||
- (state->rx_buf == 0) ||
- (msgdsize(state->rx_buf) == 0)) {
-
- state->flags &= ~IFLUSH;
- continue;
- }
-
- /*
- * We get here because the above condition isn't true,
- * in which case the HDLC flag was there to mark the end
- * of the frame (or so we think)
- */
- om = state->rx_buf;
-
- if (state->infcs == PPP_GOODFCS) {
- state->stats.ppp_ipackets++;
- adjmsg(om, -PPP_FCSLEN);
- putnext(q, om);
- } else {
- DPRINT2("ppp%d: bad fcs (len=%d)\n",
- state->unit, msgdsize(state->rx_buf));
- freemsg(state->rx_buf);
- state->flags &= ~(IFLUSH | ESCAPED);
- state->stats.ppp_ierrors++;
- putctl1(q->q_next, M_CTL, PPPCTL_IERROR);
- }
-
- state->rx_buf = 0;
- continue;
- }
-
- if (state->flags & IFLUSH) {
- continue;
- }
-
- /*
- * Allocate a receive buffer, large enough to store a frame (after
- * un-escaping) of at least 1500 octets. If MRU is negotiated to
- * be more than the default, then allocate that much. In addition,
- * we add an extra 32-bytes for a fudge factor
- */
- if (state->rx_buf == 0) {
- state->rx_buf_size = (state->mru < PPP_MRU ? PPP_MRU : state->mru);
- state->rx_buf_size += (sizeof(u_int32_t) << 3);
- state->rx_buf = allocb(state->rx_buf_size, BPRI_MED);
-
- /*
- * If allocation fails, try again on the next frame
- */
- if (state->rx_buf == 0) {
- state->flags |= IFLUSH;
- continue;
- }
- state->flags &= ~(IFLUSH | ESCAPED);
- state->infcs = PPP_INITFCS;
- }
-
- if (*dp == PPP_ESCAPE) {
- state->flags |= ESCAPED;
- continue;
- }
-
- /*
- * Make sure we un-escape the necessary characters, as well as the
- * ones in our receive async control character map
- */
- if (state->flags & ESCAPED) {
- *dp ^= PPP_TRANS;
- state->flags &= ~ESCAPED;
- } else if (IN_RX_MAP(*dp, state->raccm))
- continue;
-
- /*
- * Unless the peer lied to us about the negotiated MRU, we should
- * never get a frame which is too long. If it happens, toss it away
- * and grab the next incoming one
- */
- if (msgdsize(state->rx_buf) < state->rx_buf_size) {
- state->infcs = PPP_FCS(state->infcs, *dp);
- *state->rx_buf->b_wptr++ = *dp;
- } else {
- DPRINT2("ppp%d: frame too long (%d)\n",
- state->unit, msgdsize(state->rx_buf));
- freemsg(state->rx_buf);
- state->rx_buf = 0;
- state->flags |= IFLUSH;
- }
- }
-
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
-}
-
-static int
-msg_byte(mp, i)
- mblk_t *mp;
- unsigned int i;
-{
- while (mp != 0 && i >= mp->b_wptr - mp->b_rptr)
- mp = mp->b_cont;
- if (mp == 0)
- return -1;
- return mp->b_rptr[i];
-}
diff --git a/mdk-stage1/ppp/modules/ppp_comp.c b/mdk-stage1/ppp/modules/ppp_comp.c
deleted file mode 100644
index f6eef5ab1..000000000
--- a/mdk-stage1/ppp/modules/ppp_comp.c
+++ /dev/null
@@ -1,1126 +0,0 @@
-/*
- * ppp_comp.c - STREAMS module for kernel-level compression and CCP support.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under SVR4, Solaris 2, SunOS 4, and Digital UNIX.
- */
-
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/errno.h>
-#include <sys/stream.h>
-
-#ifdef SVR4
-#include <sys/conf.h>
-#include <sys/cmn_err.h>
-#include <sys/ddi.h>
-#else
-#include <sys/user.h>
-#ifdef __osf__
-#include <sys/cmn_err.h>
-#endif
-#endif /* SVR4 */
-
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-#include "ppp_mod.h"
-
-#ifdef __osf__
-#include <sys/mbuf.h>
-#include <sys/protosw.h>
-#endif
-
-#include <netinet/in.h>
-#include <netinet/in_systm.h>
-#include <netinet/ip.h>
-#include <net/vjcompress.h>
-
-#define PACKETPTR mblk_t *
-#include <net/ppp-comp.h>
-
-MOD_OPEN_DECL(ppp_comp_open);
-MOD_CLOSE_DECL(ppp_comp_close);
-static int ppp_comp_rput __P((queue_t *, mblk_t *));
-static int ppp_comp_rsrv __P((queue_t *));
-static int ppp_comp_wput __P((queue_t *, mblk_t *));
-static int ppp_comp_wsrv __P((queue_t *));
-static void ppp_comp_ccp __P((queue_t *, mblk_t *, int));
-static int msg_byte __P((mblk_t *, unsigned int));
-
-/* Extract byte i of message mp. */
-#define MSG_BYTE(mp, i) ((i) < (mp)->b_wptr - (mp)->b_rptr? (mp)->b_rptr[i]: \
- msg_byte((mp), (i)))
-
-/* Is this LCP packet one we have to transmit using LCP defaults? */
-#define LCP_USE_DFLT(mp) (1 <= (code = MSG_BYTE((mp), 4)) && code <= 7)
-
-#define PPP_COMP_ID 0xbadf
-static struct module_info minfo = {
-#ifdef PRIOQ
- PPP_COMP_ID, "ppp_comp", 0, INFPSZ, 16512, 16384,
-#else
- PPP_COMP_ID, "ppp_comp", 0, INFPSZ, 16384, 4096,
-#endif
-};
-
-static struct qinit r_init = {
- ppp_comp_rput, ppp_comp_rsrv, ppp_comp_open, ppp_comp_close,
- NULL, &minfo, NULL
-};
-
-static struct qinit w_init = {
- ppp_comp_wput, ppp_comp_wsrv, NULL, NULL, NULL, &minfo, NULL
-};
-
-#if defined(SVR4) && !defined(SOL2)
-int pcmpdevflag = 0;
-#define ppp_compinfo pcmpinfo
-#endif
-struct streamtab ppp_compinfo = {
- &r_init, &w_init, NULL, NULL
-};
-
-int ppp_comp_count; /* number of module instances in use */
-
-#ifdef __osf__
-
-static void ppp_comp_alloc __P((comp_state_t *));
-typedef struct memreq {
- unsigned char comp_opts[20];
- int cmd;
- int thread_status;
- char *returned_mem;
-} memreq_t;
-
-#endif
-
-typedef struct comp_state {
- int flags;
- int mru;
- int mtu;
- int unit;
- struct compressor *xcomp;
- void *xstate;
- struct compressor *rcomp;
- void *rstate;
- struct vjcompress vj_comp;
- int vj_last_ierrors;
- struct pppstat stats;
-#ifdef __osf__
- memreq_t memreq;
- thread_t thread;
-#endif
-} comp_state_t;
-
-
-#ifdef __osf__
-extern task_t first_task;
-#endif
-
-/* Bits in flags are as defined in pppio.h. */
-#define CCP_ERR (CCP_ERROR | CCP_FATALERROR)
-#define LAST_MOD 0x1000000 /* no ppp modules below us */
-#define DBGLOG 0x2000000 /* log debugging stuff */
-
-#define MAX_IPHDR 128 /* max TCP/IP header size */
-#define MAX_VJHDR 20 /* max VJ compressed header size (?) */
-
-#undef MIN /* just in case */
-#define MIN(a, b) ((a) < (b)? (a): (b))
-
-/*
- * List of compressors we know about.
- */
-
-#if DO_BSD_COMPRESS
-extern struct compressor ppp_bsd_compress;
-#endif
-#if DO_DEFLATE
-extern struct compressor ppp_deflate, ppp_deflate_draft;
-#endif
-
-struct compressor *ppp_compressors[] = {
-#if DO_BSD_COMPRESS
- &ppp_bsd_compress,
-#endif
-#if DO_DEFLATE
- &ppp_deflate,
- &ppp_deflate_draft,
-#endif
- NULL
-};
-
-/*
- * STREAMS module entry points.
- */
-MOD_OPEN(ppp_comp_open)
-{
- comp_state_t *cp;
-#ifdef __osf__
- thread_t thread;
-#endif
-
- if (q->q_ptr == NULL) {
- cp = (comp_state_t *) ALLOC_SLEEP(sizeof(comp_state_t));
- if (cp == NULL)
- OPEN_ERROR(ENOSR);
- bzero((caddr_t)cp, sizeof(comp_state_t));
- WR(q)->q_ptr = q->q_ptr = (caddr_t) cp;
- cp->mru = PPP_MRU;
- cp->mtu = PPP_MTU;
- cp->xstate = NULL;
- cp->rstate = NULL;
- vj_compress_init(&cp->vj_comp, -1);
-#ifdef __osf__
- if (!(thread = kernel_thread_w_arg(first_task, ppp_comp_alloc, (void *)cp)))
- OPEN_ERROR(ENOSR);
- cp->thread = thread;
-#endif
- ++ppp_comp_count;
- qprocson(q);
- }
- return 0;
-}
-
-MOD_CLOSE(ppp_comp_close)
-{
- comp_state_t *cp;
-
- qprocsoff(q);
- cp = (comp_state_t *) q->q_ptr;
- if (cp != NULL) {
- if (cp->xstate != NULL)
- (*cp->xcomp->comp_free)(cp->xstate);
- if (cp->rstate != NULL)
- (*cp->rcomp->decomp_free)(cp->rstate);
-#ifdef __osf__
- if (!cp->thread)
- printf("ppp_comp_close: NULL thread!\n");
- else
- thread_terminate(cp->thread);
-#endif
- FREE(cp, sizeof(comp_state_t));
- q->q_ptr = NULL;
- OTHERQ(q)->q_ptr = NULL;
- --ppp_comp_count;
- }
- return 0;
-}
-
-#ifdef __osf__
-
-/* thread for calling back to a compressor's memory allocator
- * Needed for Digital UNIX since it's VM can't handle requests
- * for large amounts of memory without blocking. The thread
- * provides a context in which we can call a memory allocator
- * that may block.
- */
-static void
-ppp_comp_alloc(comp_state_t *cp)
-{
- int len, cmd;
- unsigned char *compressor_options;
- thread_t thread;
- void *(*comp_allocator)();
-
-
-#if defined(MAJOR_VERSION) && (MAJOR_VERSION <= 2)
-
- /* In 2.x and earlier the argument gets passed
- * in the thread structure itself. Yuck.
- */
- thread = current_thread();
- cp = thread->reply_port;
- thread->reply_port = PORT_NULL;
-
-#endif
-
- for (;;) {
- assert_wait((vm_offset_t)&cp->memreq.thread_status, TRUE);
- thread_block();
-
- if (thread_should_halt(current_thread()))
- thread_halt_self();
- cmd = cp->memreq.cmd;
- compressor_options = &cp->memreq.comp_opts[0];
- len = compressor_options[1];
- if (cmd == PPPIO_XCOMP) {
- cp->memreq.returned_mem = cp->xcomp->comp_alloc(compressor_options, len);
- if (!cp->memreq.returned_mem) {
- cp->memreq.thread_status = ENOSR;
- } else {
- cp->memreq.thread_status = 0;
- }
- } else {
- cp->memreq.returned_mem = cp->rcomp->decomp_alloc(compressor_options, len);
- if (!cp->memreq.returned_mem) {
- cp->memreq.thread_status = ENOSR;
- } else {
- cp->memreq.thread_status = 0;
- }
- }
- }
-}
-
-#endif /* __osf__ */
-
-/* here's the deal with memory allocation under Digital UNIX.
- * Some other may also benefit from this...
- * We can't ask for huge chunks of memory in a context where
- * the caller can't be put to sleep (like, here.) The alloc
- * is likely to fail. Instead we do this: the first time we
- * get called, kick off a thread to do the allocation. Return
- * immediately to the caller with EAGAIN, as an indication that
- * they should send down the ioctl again. By the time the
- * second call comes in it's likely that the memory allocation
- * thread will have returned with the requested memory. We will
- * continue to return EAGAIN however until the thread has completed.
- * When it has, we return zero (and the memory) if the allocator
- * was successful and ENOSR otherwise.
- *
- * Callers of the RCOMP and XCOMP ioctls are encouraged (but not
- * required) to loop for some number of iterations with a small
- * delay in the loop body (for instance a 1/10-th second "sleep"
- * via select.)
- */
-static int
-ppp_comp_wput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- struct iocblk *iop;
- comp_state_t *cp;
- int error, len, n;
- int flags, mask;
- mblk_t *np;
- struct compressor **comp;
- struct ppp_stats *psp;
- struct ppp_comp_stats *csp;
- unsigned char *opt_data;
- int nxslots, nrslots;
-
- cp = (comp_state_t *) q->q_ptr;
- if (cp == 0) {
- DPRINT("cp == 0 in ppp_comp_wput\n");
- freemsg(mp);
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
-
- case M_DATA:
- putq(q, mp);
- break;
-
- case M_IOCTL:
- iop = (struct iocblk *) mp->b_rptr;
- error = EINVAL;
- switch (iop->ioc_cmd) {
-
- case PPPIO_CFLAGS:
- /* set/get CCP state */
- if (iop->ioc_count != 2 * sizeof(int))
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ppp_comp_wput/%d: PPPIO_CFLAGS b_cont = 0!\n", cp->unit);
- break;
- }
- flags = ((int *) mp->b_cont->b_rptr)[0];
- mask = ((int *) mp->b_cont->b_rptr)[1];
- cp->flags = (cp->flags & ~mask) | (flags & mask);
- if ((mask & CCP_ISOPEN) && (flags & CCP_ISOPEN) == 0) {
- if (cp->xstate != NULL) {
- (*cp->xcomp->comp_free)(cp->xstate);
- cp->xstate = NULL;
- }
- if (cp->rstate != NULL) {
- (*cp->rcomp->decomp_free)(cp->rstate);
- cp->rstate = NULL;
- }
- cp->flags &= ~CCP_ISUP;
- }
- error = 0;
- iop->ioc_count = sizeof(int);
- ((int *) mp->b_cont->b_rptr)[0] = cp->flags;
- mp->b_cont->b_wptr = mp->b_cont->b_rptr + sizeof(int);
- break;
-
- case PPPIO_VJINIT:
- /*
- * Initialize VJ compressor/decompressor
- */
- if (iop->ioc_count != 2)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ppp_comp_wput/%d: PPPIO_VJINIT b_cont = 0!\n", cp->unit);
- break;
- }
- nxslots = mp->b_cont->b_rptr[0] + 1;
- nrslots = mp->b_cont->b_rptr[1] + 1;
- if (nxslots > MAX_STATES || nrslots > MAX_STATES)
- break;
- vj_compress_init(&cp->vj_comp, nxslots);
- cp->vj_last_ierrors = cp->stats.ppp_ierrors;
- error = 0;
- iop->ioc_count = 0;
- break;
-
- case PPPIO_XCOMP:
- case PPPIO_RCOMP:
- if (iop->ioc_count <= 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ppp_comp_wput/%d: PPPIO_[XR]COMP b_cont = 0!\n", cp->unit);
- break;
- }
- opt_data = mp->b_cont->b_rptr;
- len = mp->b_cont->b_wptr - opt_data;
- if (len > iop->ioc_count)
- len = iop->ioc_count;
- if (opt_data[1] < 2 || opt_data[1] > len)
- break;
- for (comp = ppp_compressors; *comp != NULL; ++comp)
- if ((*comp)->compress_proto == opt_data[0]) {
- /* here's the handler! */
- error = 0;
-#ifndef __osf__
- if (iop->ioc_cmd == PPPIO_XCOMP) {
- /* A previous call may have fetched memory for a compressor
- * that's now being retired or reset. Free it using it's
- * mechanism for freeing stuff.
- */
- if (cp->xstate != NULL) {
- (*cp->xcomp->comp_free)(cp->xstate);
- cp->xstate = NULL;
- }
- cp->xcomp = *comp;
- cp->xstate = (*comp)->comp_alloc(opt_data, len);
- if (cp->xstate == NULL)
- error = ENOSR;
- } else {
- if (cp->rstate != NULL) {
- (*cp->rcomp->decomp_free)(cp->rstate);
- cp->rstate = NULL;
- }
- cp->rcomp = *comp;
- cp->rstate = (*comp)->decomp_alloc(opt_data, len);
- if (cp->rstate == NULL)
- error = ENOSR;
- }
-#else
- if ((error = cp->memreq.thread_status) != EAGAIN)
- if (iop->ioc_cmd == PPPIO_XCOMP) {
- if (cp->xstate) {
- (*cp->xcomp->comp_free)(cp->xstate);
- cp->xstate = 0;
- }
- /* sanity check for compressor options
- */
- if (sizeof (cp->memreq.comp_opts) < len) {
- printf("can't handle options for compressor %d (%d)\n", opt_data[0],
- opt_data[1]);
- cp->memreq.thread_status = ENOSR;
- cp->memreq.returned_mem = 0;
- }
- /* fill in request for the thread and kick it off
- */
- if (cp->memreq.thread_status == 0 && !cp->memreq.returned_mem) {
- bcopy(opt_data, cp->memreq.comp_opts, len);
- cp->memreq.cmd = PPPIO_XCOMP;
- cp->xcomp = *comp;
- error = cp->memreq.thread_status = EAGAIN;
- thread_wakeup((vm_offset_t)&cp->memreq.thread_status);
- } else {
- cp->xstate = cp->memreq.returned_mem;
- cp->memreq.returned_mem = 0;
- cp->memreq.thread_status = 0;
- }
- } else {
- if (cp->rstate) {
- (*cp->rcomp->decomp_free)(cp->rstate);
- cp->rstate = NULL;
- }
- if (sizeof (cp->memreq.comp_opts) < len) {
- printf("can't handle options for compressor %d (%d)\n", opt_data[0],
- opt_data[1]);
- cp->memreq.thread_status = ENOSR;
- cp->memreq.returned_mem = 0;
- }
- if (cp->memreq.thread_status == 0 && !cp->memreq.returned_mem) {
- bcopy(opt_data, cp->memreq.comp_opts, len);
- cp->memreq.cmd = PPPIO_RCOMP;
- cp->rcomp = *comp;
- error = cp->memreq.thread_status = EAGAIN;
- thread_wakeup((vm_offset_t)&cp->memreq.thread_status);
- } else {
- cp->rstate = cp->memreq.returned_mem;
- cp->memreq.returned_mem = 0;
- cp->memreq.thread_status = 0;
- }
- }
-#endif
- break;
- }
- iop->ioc_count = 0;
- break;
-
- case PPPIO_GETSTAT:
- if ((cp->flags & LAST_MOD) == 0) {
- error = -1; /* let the ppp_ahdl module handle it */
- break;
- }
- np = allocb(sizeof(struct ppp_stats), BPRI_HI);
- if (np == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = np;
- psp = (struct ppp_stats *) np->b_wptr;
- np->b_wptr += sizeof(struct ppp_stats);
- iop->ioc_count = sizeof(struct ppp_stats);
- psp->p = cp->stats;
- psp->vj = cp->vj_comp.stats;
- error = 0;
- break;
-
- case PPPIO_GETCSTAT:
- np = allocb(sizeof(struct ppp_comp_stats), BPRI_HI);
- if (np == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = np;
- csp = (struct ppp_comp_stats *) np->b_wptr;
- np->b_wptr += sizeof(struct ppp_comp_stats);
- iop->ioc_count = sizeof(struct ppp_comp_stats);
- bzero((caddr_t)csp, sizeof(struct ppp_comp_stats));
- if (cp->xstate != 0)
- (*cp->xcomp->comp_stat)(cp->xstate, &csp->c);
- if (cp->rstate != 0)
- (*cp->rcomp->decomp_stat)(cp->rstate, &csp->d);
- error = 0;
- break;
-
- case PPPIO_DEBUG:
- if (iop->ioc_count != sizeof(int))
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ppp_comp_wput/%d: PPPIO_DEBUG b_cont = 0!\n", cp->unit);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- if (n == PPPDBG_LOG + PPPDBG_COMP) {
- DPRINT1("ppp_comp%d: debug log enabled\n", cp->unit);
- cp->flags |= DBGLOG;
- error = 0;
- iop->ioc_count = 0;
- } else {
- error = -1;
- }
- break;
-
- case PPPIO_LASTMOD:
- cp->flags |= LAST_MOD;
- error = 0;
- break;
-
- default:
- error = -1;
- break;
- }
-
- if (error < 0)
- putnext(q, mp);
- else if (error == 0) {
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
- } else {
- mp->b_datap->db_type = M_IOCNAK;
- iop->ioc_error = error;
- iop->ioc_count = 0;
- qreply(q, mp);
- }
- break;
-
- case M_CTL:
- switch (*mp->b_rptr) {
- case PPPCTL_MTU:
- cp->mtu = ((unsigned short *)mp->b_rptr)[1];
- break;
- case PPPCTL_MRU:
- cp->mru = ((unsigned short *)mp->b_rptr)[1];
- break;
- case PPPCTL_UNIT:
- cp->unit = mp->b_rptr[1];
- break;
- }
- putnext(q, mp);
- break;
-
- default:
- putnext(q, mp);
- }
-
- return 0;
-}
-
-static int
-ppp_comp_wsrv(q)
- queue_t *q;
-{
- mblk_t *mp, *cmp = NULL;
- comp_state_t *cp;
- int len, proto, type, hlen, code;
- struct ip *ip;
- unsigned char *vjhdr, *dp;
-
- cp = (comp_state_t *) q->q_ptr;
- if (cp == 0) {
- DPRINT("cp == 0 in ppp_comp_wsrv\n");
- return 0;
- }
-
- while ((mp = getq(q)) != 0) {
- /* assert(mp->b_datap->db_type == M_DATA) */
-#ifdef PRIOQ
- if (!bcanputnext(q,mp->b_band))
-#else
- if (!canputnext(q))
-#endif PRIOQ
- {
- putbq(q, mp);
- break;
- }
-
- /*
- * First check the packet length and work out what the protocol is.
- */
- len = msgdsize(mp);
- if (len < PPP_HDRLEN) {
- DPRINT1("ppp_comp_wsrv: bogus short packet (%d)\n", len);
- freemsg(mp);
- cp->stats.ppp_oerrors++;
- putctl1(RD(q)->q_next, M_CTL, PPPCTL_OERROR);
- continue;
- }
- proto = (MSG_BYTE(mp, 2) << 8) + MSG_BYTE(mp, 3);
-
- /*
- * Make sure we've got enough data in the first mblk
- * and that we are its only user.
- */
- if (proto == PPP_CCP)
- hlen = len;
- else if (proto == PPP_IP)
- hlen = PPP_HDRLEN + MAX_IPHDR;
- else
- hlen = PPP_HDRLEN;
- if (hlen > len)
- hlen = len;
- if (mp->b_wptr < mp->b_rptr + hlen || mp->b_datap->db_ref > 1) {
- PULLUP(mp, hlen);
- if (mp == 0) {
- DPRINT1("ppp_comp_wsrv: pullup failed (%d)\n", hlen);
- cp->stats.ppp_oerrors++;
- putctl1(RD(q)->q_next, M_CTL, PPPCTL_OERROR);
- continue;
- }
- }
-
- /*
- * Do VJ compression if requested.
- */
- if (proto == PPP_IP && (cp->flags & COMP_VJC)) {
- ip = (struct ip *) (mp->b_rptr + PPP_HDRLEN);
- if (ip->ip_p == IPPROTO_TCP) {
- type = vj_compress_tcp(ip, len - PPP_HDRLEN, &cp->vj_comp,
- (cp->flags & COMP_VJCCID), &vjhdr);
- switch (type) {
- case TYPE_UNCOMPRESSED_TCP:
- mp->b_rptr[3] = proto = PPP_VJC_UNCOMP;
- break;
- case TYPE_COMPRESSED_TCP:
- dp = vjhdr - PPP_HDRLEN;
- dp[1] = mp->b_rptr[1]; /* copy control field */
- dp[0] = mp->b_rptr[0]; /* copy address field */
- dp[2] = 0; /* set protocol field */
- dp[3] = proto = PPP_VJC_COMP;
- mp->b_rptr = dp;
- break;
- }
- }
- }
-
- /*
- * Do packet compression if enabled.
- */
- if (proto == PPP_CCP)
- ppp_comp_ccp(q, mp, 0);
- else if (proto != PPP_LCP && (cp->flags & CCP_COMP_RUN)
- && cp->xstate != NULL) {
- len = msgdsize(mp);
- (*cp->xcomp->compress)(cp->xstate, &cmp, mp, len,
- (cp->flags & CCP_ISUP? cp->mtu + PPP_HDRLEN: 0));
- if (cmp != NULL) {
-#ifdef PRIOQ
- cmp->b_band=mp->b_band;
-#endif PRIOQ
- freemsg(mp);
- mp = cmp;
- }
- }
-
- /*
- * Do address/control and protocol compression if enabled.
- */
- if ((cp->flags & COMP_AC)
- && !(proto == PPP_LCP && LCP_USE_DFLT(mp))) {
- mp->b_rptr += 2; /* drop the address & ctrl fields */
- if (proto < 0x100 && (cp->flags & COMP_PROT))
- ++mp->b_rptr; /* drop the high protocol byte */
- } else if (proto < 0x100 && (cp->flags & COMP_PROT)) {
- /* shuffle up the address & ctrl fields */
- mp->b_rptr[2] = mp->b_rptr[1];
- mp->b_rptr[1] = mp->b_rptr[0];
- ++mp->b_rptr;
- }
-
- cp->stats.ppp_opackets++;
- cp->stats.ppp_obytes += msgdsize(mp);
- putnext(q, mp);
- }
-
- return 0;
-}
-
-static int
-ppp_comp_rput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- comp_state_t *cp;
- struct iocblk *iop;
- struct ppp_stats *psp;
-
- cp = (comp_state_t *) q->q_ptr;
- if (cp == 0) {
- DPRINT("cp == 0 in ppp_comp_rput\n");
- freemsg(mp);
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
-
- case M_DATA:
- putq(q, mp);
- break;
-
- case M_IOCACK:
- iop = (struct iocblk *) mp->b_rptr;
- switch (iop->ioc_cmd) {
- case PPPIO_GETSTAT:
- /*
- * Catch this on the way back from the ppp_ahdl module
- * so we can fill in the VJ stats.
- */
- if (mp->b_cont == 0 || iop->ioc_count != sizeof(struct ppp_stats))
- break;
- psp = (struct ppp_stats *) mp->b_cont->b_rptr;
- psp->vj = cp->vj_comp.stats;
- break;
- }
- putnext(q, mp);
- break;
-
- case M_CTL:
- switch (mp->b_rptr[0]) {
- case PPPCTL_IERROR:
- ++cp->stats.ppp_ierrors;
- break;
- case PPPCTL_OERROR:
- ++cp->stats.ppp_oerrors;
- break;
- }
- putnext(q, mp);
- break;
-
- default:
- putnext(q, mp);
- }
-
- return 0;
-}
-
-static int
-ppp_comp_rsrv(q)
- queue_t *q;
-{
- int proto, rv, i;
- mblk_t *mp, *dmp = NULL, *np;
- uchar_t *dp, *iphdr;
- comp_state_t *cp;
- int len, hlen, vjlen;
- u_int iphlen;
-
- cp = (comp_state_t *) q->q_ptr;
- if (cp == 0) {
- DPRINT("cp == 0 in ppp_comp_rsrv\n");
- return 0;
- }
-
- while ((mp = getq(q)) != 0) {
- /* assert(mp->b_datap->db_type == M_DATA) */
- if (!canputnext(q)) {
- putbq(q, mp);
- break;
- }
-
- len = msgdsize(mp);
- cp->stats.ppp_ibytes += len;
- cp->stats.ppp_ipackets++;
-
- /*
- * First work out the protocol and where the PPP header ends.
- */
- i = 0;
- proto = MSG_BYTE(mp, 0);
- if (proto == PPP_ALLSTATIONS) {
- i = 2;
- proto = MSG_BYTE(mp, 2);
- }
- if ((proto & 1) == 0) {
- ++i;
- proto = (proto << 8) + MSG_BYTE(mp, i);
- }
- hlen = i + 1;
-
- /*
- * Now reconstruct a complete, contiguous PPP header at the
- * start of the packet.
- */
- if (hlen < ((cp->flags & DECOMP_AC)? 0: 2)
- + ((cp->flags & DECOMP_PROT)? 1: 2)) {
- /* count these? */
- goto bad;
- }
- if (mp->b_rptr + hlen > mp->b_wptr) {
- adjmsg(mp, hlen); /* XXX check this call */
- hlen = 0;
- }
- if (hlen != PPP_HDRLEN) {
- /*
- * We need to put some bytes on the front of the packet
- * to make a full-length PPP header.
- * If we can put them in *mp, we do, otherwise we
- * tack another mblk on the front.
- * XXX we really shouldn't need to carry around
- * the address and control at this stage.
- */
- dp = mp->b_rptr + hlen - PPP_HDRLEN;
- if (dp < mp->b_datap->db_base || mp->b_datap->db_ref > 1) {
- np = allocb(PPP_HDRLEN, BPRI_MED);
- if (np == 0)
- goto bad;
- np->b_cont = mp;
- mp->b_rptr += hlen;
- mp = np;
- dp = mp->b_wptr;
- mp->b_wptr += PPP_HDRLEN;
- } else
- mp->b_rptr = dp;
-
- dp[0] = PPP_ALLSTATIONS;
- dp[1] = PPP_UI;
- dp[2] = proto >> 8;
- dp[3] = proto;
- }
-
- /*
- * Now see if we have a compressed packet to decompress,
- * or a CCP packet to take notice of.
- */
- proto = PPP_PROTOCOL(mp->b_rptr);
- if (proto == PPP_CCP) {
- len = msgdsize(mp);
- if (mp->b_wptr < mp->b_rptr + len) {
- PULLUP(mp, len);
- if (mp == 0)
- goto bad;
- }
- ppp_comp_ccp(q, mp, 1);
- } else if (proto == PPP_COMP) {
- if ((cp->flags & CCP_ISUP)
- && (cp->flags & CCP_DECOMP_RUN) && cp->rstate
- && (cp->flags & CCP_ERR) == 0) {
- rv = (*cp->rcomp->decompress)(cp->rstate, mp, &dmp);
- switch (rv) {
- case DECOMP_OK:
- freemsg(mp);
- mp = dmp;
- if (mp == NULL) {
- /* no error, but no packet returned either. */
- continue;
- }
- break;
- case DECOMP_ERROR:
- cp->flags |= CCP_ERROR;
- ++cp->stats.ppp_ierrors;
- putctl1(q->q_next, M_CTL, PPPCTL_IERROR);
- break;
- case DECOMP_FATALERROR:
- cp->flags |= CCP_FATALERROR;
- ++cp->stats.ppp_ierrors;
- putctl1(q->q_next, M_CTL, PPPCTL_IERROR);
- break;
- }
- }
- } else if (cp->rstate && (cp->flags & CCP_DECOMP_RUN)) {
- (*cp->rcomp->incomp)(cp->rstate, mp);
- }
-
- /*
- * Now do VJ decompression.
- */
- proto = PPP_PROTOCOL(mp->b_rptr);
- if (proto == PPP_VJC_COMP || proto == PPP_VJC_UNCOMP) {
- len = msgdsize(mp) - PPP_HDRLEN;
- if ((cp->flags & DECOMP_VJC) == 0 || len <= 0)
- goto bad;
-
- /*
- * Advance past the ppp header.
- * Here we assume that the whole PPP header is in the first mblk.
- */
- np = mp;
- dp = np->b_rptr + PPP_HDRLEN;
- if (dp >= mp->b_wptr) {
- np = np->b_cont;
- dp = np->b_rptr;
- }
-
- /*
- * Make sure we have sufficient contiguous data at this point.
- */
- hlen = (proto == PPP_VJC_COMP)? MAX_VJHDR: MAX_IPHDR;
- if (hlen > len)
- hlen = len;
- if (np->b_wptr < dp + hlen || np->b_datap->db_ref > 1) {
- PULLUP(mp, hlen + PPP_HDRLEN);
- if (mp == 0)
- goto bad;
- np = mp;
- dp = np->b_rptr + PPP_HDRLEN;
- }
-
- if (proto == PPP_VJC_COMP) {
- /*
- * Decompress VJ-compressed packet.
- * First reset compressor if an input error has occurred.
- */
- if (cp->stats.ppp_ierrors != cp->vj_last_ierrors) {
- if (cp->flags & DBGLOG)
- DPRINT1("ppp%d: resetting VJ\n", cp->unit);
- vj_uncompress_err(&cp->vj_comp);
- cp->vj_last_ierrors = cp->stats.ppp_ierrors;
- }
-
- vjlen = vj_uncompress_tcp(dp, np->b_wptr - dp, len,
- &cp->vj_comp, &iphdr, &iphlen);
- if (vjlen < 0) {
- if (cp->flags & DBGLOG)
- DPRINT2("ppp%d: vj_uncomp_tcp failed, pkt len %d\n",
- cp->unit, len);
- ++cp->vj_last_ierrors; /* so we don't reset next time */
- goto bad;
- }
-
- /* drop ppp and vj headers off */
- if (mp != np) {
- freeb(mp);
- mp = np;
- }
- mp->b_rptr = dp + vjlen;
-
- /* allocate a new mblk for the ppp and ip headers */
- if ((np = allocb(iphlen + PPP_HDRLEN + 4, BPRI_MED)) == 0)
- goto bad;
- dp = np->b_rptr; /* prepend mblk with TCP/IP hdr */
- dp[0] = PPP_ALLSTATIONS; /* reconstruct PPP header */
- dp[1] = PPP_UI;
- dp[2] = PPP_IP >> 8;
- dp[3] = PPP_IP;
- bcopy((caddr_t)iphdr, (caddr_t)dp + PPP_HDRLEN, iphlen);
- np->b_wptr = dp + iphlen + PPP_HDRLEN;
- np->b_cont = mp;
-
- /* XXX there seems to be a bug which causes panics in strread
- if we make an mbuf with only the IP header in it :-( */
- if (mp->b_wptr - mp->b_rptr > 4) {
- bcopy((caddr_t)mp->b_rptr, (caddr_t)np->b_wptr, 4);
- mp->b_rptr += 4;
- np->b_wptr += 4;
- } else {
- bcopy((caddr_t)mp->b_rptr, (caddr_t)np->b_wptr,
- mp->b_wptr - mp->b_rptr);
- np->b_wptr += mp->b_wptr - mp->b_rptr;
- np->b_cont = mp->b_cont;
- freeb(mp);
- }
-
- mp = np;
-
- } else {
- /*
- * "Decompress" a VJ-uncompressed packet.
- */
- cp->vj_last_ierrors = cp->stats.ppp_ierrors;
- if (!vj_uncompress_uncomp(dp, hlen, &cp->vj_comp)) {
- if (cp->flags & DBGLOG)
- DPRINT2("ppp%d: vj_uncomp_uncomp failed, pkt len %d\n",
- cp->unit, len);
- ++cp->vj_last_ierrors; /* don't need to reset next time */
- goto bad;
- }
- mp->b_rptr[3] = PPP_IP; /* fix up the PPP protocol field */
- }
- }
-
- putnext(q, mp);
- continue;
-
- bad:
- if (mp != 0)
- freemsg(mp);
- cp->stats.ppp_ierrors++;
- putctl1(q->q_next, M_CTL, PPPCTL_IERROR);
- }
-
- return 0;
-}
-
-/*
- * Handle a CCP packet being sent or received.
- * Here all the data in the packet is in a single mbuf.
- */
-static void
-ppp_comp_ccp(q, mp, rcvd)
- queue_t *q;
- mblk_t *mp;
- int rcvd;
-{
- int len, clen;
- comp_state_t *cp;
- unsigned char *dp;
-
- len = msgdsize(mp);
- if (len < PPP_HDRLEN + CCP_HDRLEN)
- return;
-
- cp = (comp_state_t *) q->q_ptr;
- dp = mp->b_rptr + PPP_HDRLEN;
- len -= PPP_HDRLEN;
- clen = CCP_LENGTH(dp);
- if (clen > len)
- return;
-
- switch (CCP_CODE(dp)) {
- case CCP_CONFREQ:
- case CCP_TERMREQ:
- case CCP_TERMACK:
- cp->flags &= ~CCP_ISUP;
- break;
-
- case CCP_CONFACK:
- if ((cp->flags & (CCP_ISOPEN | CCP_ISUP)) == CCP_ISOPEN
- && clen >= CCP_HDRLEN + CCP_OPT_MINLEN
- && clen >= CCP_HDRLEN + CCP_OPT_LENGTH(dp + CCP_HDRLEN)) {
- if (!rcvd) {
- if (cp->xstate != NULL
- && (*cp->xcomp->comp_init)
- (cp->xstate, dp + CCP_HDRLEN, clen - CCP_HDRLEN,
- cp->unit, 0, ((cp->flags & DBGLOG) != 0)))
- cp->flags |= CCP_COMP_RUN;
- } else {
- if (cp->rstate != NULL
- && (*cp->rcomp->decomp_init)
- (cp->rstate, dp + CCP_HDRLEN, clen - CCP_HDRLEN,
- cp->unit, 0, cp->mru, ((cp->flags & DBGLOG) != 0)))
- cp->flags = (cp->flags & ~CCP_ERR) | CCP_DECOMP_RUN;
- }
- }
- break;
-
- case CCP_RESETACK:
- if (cp->flags & CCP_ISUP) {
- if (!rcvd) {
- if (cp->xstate && (cp->flags & CCP_COMP_RUN))
- (*cp->xcomp->comp_reset)(cp->xstate);
- } else {
- if (cp->rstate && (cp->flags & CCP_DECOMP_RUN)) {
- (*cp->rcomp->decomp_reset)(cp->rstate);
- cp->flags &= ~CCP_ERROR;
- }
- }
- }
- break;
- }
-}
-
-#if 0
-dump_msg(mp)
- mblk_t *mp;
-{
- dblk_t *db;
-
- while (mp != 0) {
- db = mp->b_datap;
- DPRINT2("mp=%x cont=%x ", mp, mp->b_cont);
- DPRINT3("rptr=%x wptr=%x datap=%x\n", mp->b_rptr, mp->b_wptr, db);
- DPRINT2(" base=%x lim=%x", db->db_base, db->db_lim);
- DPRINT2(" ref=%d type=%d\n", db->db_ref, db->db_type);
- mp = mp->b_cont;
- }
-}
-#endif
-
-static int
-msg_byte(mp, i)
- mblk_t *mp;
- unsigned int i;
-{
- while (mp != 0 && i >= mp->b_wptr - mp->b_rptr)
- mp = mp->b_cont;
- if (mp == 0)
- return -1;
- return mp->b_rptr[i];
-}
diff --git a/mdk-stage1/ppp/modules/ppp_mod.h b/mdk-stage1/ppp/modules/ppp_mod.h
deleted file mode 100644
index f0af00886..000000000
--- a/mdk-stage1/ppp/modules/ppp_mod.h
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Miscellaneous definitions for PPP STREAMS modules.
- */
-
-/*
- * Macros for allocating and freeing kernel memory.
- */
-#ifdef SVR4 /* SVR4, including Solaris 2 */
-#include <sys/kmem.h>
-#define ALLOC_SLEEP(n) kmem_alloc((n), KM_SLEEP)
-#define ALLOC_NOSLEEP(n) kmem_alloc((n), KM_NOSLEEP)
-#define FREE(p, n) kmem_free((p), (n))
-#endif
-
-#ifdef SUNOS4
-#include <sys/kmem_alloc.h> /* SunOS 4.x */
-#define ALLOC_SLEEP(n) kmem_alloc((n), KMEM_SLEEP)
-#define ALLOC_NOSLEEP(n) kmem_alloc((n), KMEM_NOSLEEP)
-#define FREE(p, n) kmem_free((p), (n))
-#define NOTSUSER() (suser()? 0: EPERM)
-#define bcanputnext(q, band) canputnext((q))
-#endif /* SunOS 4 */
-
-#ifdef __osf__
-#include <sys/malloc.h>
-
-/* caution: this mirrors macros in sys/malloc.h, and uses interfaces
- * which are subject to change.
- * The problems are that:
- * - the official MALLOC macro wants the lhs of the assignment as an argument,
- * and it takes care of the assignment itself (yuck.)
- * - PPP insists on using "FREE" which conflicts with a macro of the same name.
- *
- */
-#ifdef BUCKETINDX /* V2.0 */
-#define ALLOC_SLEEP(n) (void *)malloc((u_long)(n), BUCKETP(n), M_DEVBUF, M_WAITOK)
-#define ALLOC_NOSLEEP(n) (void *)malloc((u_long)(n), BUCKETP(n), M_DEVBUF, M_NOWAIT)
-#else
-#define ALLOC_SLEEP(n) (void *)malloc((u_long)(n), BUCKETINDEX(n), M_DEVBUF, M_WAITOK)
-#define ALLOC_NOSLEEP(n) (void *)malloc((u_long)(n), BUCKETINDEX(n), M_DEVBUF, M_NOWAIT)
-#endif
-
-#define bcanputnext(q, band) canputnext((q))
-
-#ifdef FREE
-#undef FREE
-#endif
-#define FREE(p, n) free((void *)(p), M_DEVBUF)
-
-#define NO_DLPI 1
-
-#ifndef IFT_PPP
-#define IFT_PPP 0x17
-#endif
-
-#include <sys/proc.h>
-#define NOTSUSER() (suser(u.u_procp->p_rcred, &u.u_acflag) ? EPERM : 0)
-
-/* #include "ppp_osf.h" */
-
-#endif /* __osf__ */
-
-#ifdef AIX4
-#define ALLOC_SLEEP(n) xmalloc((n), 0, pinned_heap) /* AIX V4.x */
-#define ALLOC_NOSLEEP(n) xmalloc((n), 0, pinned_heap) /* AIX V4.x */
-#define FREE(p, n) xmfree((p), pinned_heap)
-#define NOTSUSER() (suser()? 0: EPERM)
-#endif /* AIX */
-
-/*
- * Macros for printing debugging stuff.
- */
-#ifdef DEBUG
-#if defined(SVR4) || defined(__osf__)
-#if defined(SNI)
-#include <sys/strlog.h>
-#define STRLOG_ID 4712
-#define DPRINT(f) strlog(STRLOG_ID, 0, 0, SL_TRACE, f)
-#define DPRINT1(f, a1) strlog(STRLOG_ID, 0, 0, SL_TRACE, f, a1)
-#define DPRINT2(f, a1, a2) strlog(STRLOG_ID, 0, 0, SL_TRACE, f, a1, a2)
-#define DPRINT3(f, a1, a2, a3) strlog(STRLOG_ID, 0, 0, SL_TRACE, f, a1, a2, a3)
-#else
-#define DPRINT(f) cmn_err(CE_CONT, f)
-#define DPRINT1(f, a1) cmn_err(CE_CONT, f, a1)
-#define DPRINT2(f, a1, a2) cmn_err(CE_CONT, f, a1, a2)
-#define DPRINT3(f, a1, a2, a3) cmn_err(CE_CONT, f, a1, a2, a3)
-#endif /* SNI */
-#else
-#define DPRINT(f) printf(f)
-#define DPRINT1(f, a1) printf(f, a1)
-#define DPRINT2(f, a1, a2) printf(f, a1, a2)
-#define DPRINT3(f, a1, a2, a3) printf(f, a1, a2, a3)
-#endif /* SVR4 or OSF */
-
-#else
-#define DPRINT(f) 0
-#define DPRINT1(f, a1) 0
-#define DPRINT2(f, a1, a2) 0
-#define DPRINT3(f, a1, a2, a3) 0
-#endif /* DEBUG */
-
-#ifndef SVR4
-typedef unsigned char uchar_t;
-typedef unsigned short ushort_t;
-#ifndef __osf__
-typedef int minor_t;
-#endif
-#endif
-
-/*
- * If we don't have multithreading support, define substitutes.
- */
-#ifndef D_MP
-# define qprocson(q)
-# define qprocsoff(q)
-# define put(q, mp) ((*(q)->q_qinfo->qi_putp)((q), (mp)))
-# define canputnext(q) canput((q)->q_next)
-# define qwriter(q, mp, func, scope) (func)((q), (mp))
-#endif
-
-#ifdef D_MP
-/* Use msgpullup if we have other multithreading support. */
-#define PULLUP(mp, len) \
- do { \
- mblk_t *np = msgpullup((mp), (len)); \
- freemsg((mp)); \
- mp = np; \
- } while (0)
-
-#else
-/* Use pullupmsg if we don't have any multithreading support. */
-#define PULLUP(mp, len) \
- do { \
- if (!pullupmsg((mp), (len))) { \
- freemsg((mp)); \
- mp = 0; \
- } \
- } while (0)
-#endif
-
-/*
- * How to declare the open and close procedures for a module.
- */
-#ifdef SVR4
-#define MOD_OPEN_DECL(name) \
-static int name __P((queue_t *, dev_t *, int, int, cred_t *))
-
-#define MOD_CLOSE_DECL(name) \
-static int name __P((queue_t *, int, cred_t *))
-
-#define MOD_OPEN(name) \
-static int name(q, devp, flag, sflag, credp) \
- queue_t *q; \
- dev_t *devp; \
- int flag, sflag; \
- cred_t *credp;
-
-#define MOD_CLOSE(name) \
-static int name(q, flag, credp) \
- queue_t *q; \
- int flag; \
- cred_t *credp;
-
-#define OPEN_ERROR(x) return (x)
-#define DRV_OPEN_OK(dev) return 0
-
-#define NOTSUSER() (drv_priv(credp))
-
-#else /* not SVR4 */
-#define MOD_OPEN_DECL(name) \
-static int name __P((queue_t *, int, int, int))
-
-#define MOD_CLOSE_DECL(name) \
-static int name __P((queue_t *, int))
-
-#define MOD_OPEN(name) \
-static int name(q, dev, flag, sflag) \
- queue_t *q; \
- int dev; \
- int flag, sflag;
-
-#define MOD_CLOSE(name) \
-static int name(q, flag) \
- queue_t *q; \
- int flag;
-
-#define OPEN_ERROR(x) { u.u_error = (x); return OPENFAIL; }
-#define DRV_OPEN_OK(dev) return (dev)
-
-#endif /* SVR4 */
diff --git a/mdk-stage1/ppp/modules/vjcompress.c b/mdk-stage1/ppp/modules/vjcompress.c
deleted file mode 100644
index 809b87231..000000000
--- a/mdk-stage1/ppp/modules/vjcompress.c
+++ /dev/null
@@ -1,587 +0,0 @@
-/*
- * Routines to compress and uncompess tcp packets (for transmission
- * over low speed serial lines.
- *
- * Copyright (c) 1989 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Van Jacobson (van@helios.ee.lbl.gov), Dec 31, 1989:
- * - Initial distribution.
- *
- * Modified June 1993 by Paul Mackerras, paulus@cs.anu.edu.au,
- * so that the entire packet being decompressed doesn't have
- * to be in contiguous memory (just the compressed header).
- */
-
-/*
- * This version is used under SunOS 4.x, Digital UNIX, AIX 4.x,
- * and SVR4 systems including Solaris 2.
- *
- * $Id$
- */
-
-#include <sys/types.h>
-#include <sys/param.h>
-
-#ifdef SVR4
-#ifndef __GNUC__
-#include <sys/byteorder.h> /* for ntohl, etc. */
-#else
-/* make sure we don't get the gnu "fixed" one! */
-#include "/usr/include/sys/byteorder.h"
-#endif
-#endif
-
-#ifdef __osf__
-#include <net/net_globals.h>
-#endif
-#include <netinet/in.h>
-
-#ifdef AIX4
-#define _NETINET_IN_SYSTM_H_
-typedef u_long n_long;
-#else
-#include <netinet/in_systm.h>
-#endif
-
-#include <netinet/ip.h>
-#include <netinet/tcp.h>
-
-#include <net/ppp_defs.h>
-#include <net/vjcompress.h>
-
-#ifndef VJ_NO_STATS
-#define INCR(counter) ++comp->stats.counter
-#else
-#define INCR(counter)
-#endif
-
-#define BCMP(p1, p2, n) bcmp((char *)(p1), (char *)(p2), (int)(n))
-#undef BCOPY
-#define BCOPY(p1, p2, n) bcopy((char *)(p1), (char *)(p2), (int)(n))
-#ifndef KERNEL
-#define ovbcopy bcopy
-#endif
-
-#ifdef __osf__
-#define getip_hl(base) (((base).ip_vhl)&0xf)
-#define getth_off(base) ((((base).th_xoff)&0xf0)>>4)
-
-#else
-#define getip_hl(base) ((base).ip_hl)
-#define getth_off(base) ((base).th_off)
-#endif
-
-void
-vj_compress_init(comp, max_state)
- struct vjcompress *comp;
- int max_state;
-{
- register u_int i;
- register struct cstate *tstate = comp->tstate;
-
- if (max_state == -1)
- max_state = MAX_STATES - 1;
- bzero((char *)comp, sizeof(*comp));
- for (i = max_state; i > 0; --i) {
- tstate[i].cs_id = i;
- tstate[i].cs_next = &tstate[i - 1];
- }
- tstate[0].cs_next = &tstate[max_state];
- tstate[0].cs_id = 0;
- comp->last_cs = &tstate[0];
- comp->last_recv = 255;
- comp->last_xmit = 255;
- comp->flags = VJF_TOSS;
-}
-
-
-/* ENCODE encodes a number that is known to be non-zero. ENCODEZ
- * checks for zero (since zero has to be encoded in the long, 3 byte
- * form).
- */
-#define ENCODE(n) { \
- if ((u_short)(n) >= 256) { \
- *cp++ = 0; \
- cp[1] = (n); \
- cp[0] = (n) >> 8; \
- cp += 2; \
- } else { \
- *cp++ = (n); \
- } \
-}
-#define ENCODEZ(n) { \
- if ((u_short)(n) >= 256 || (u_short)(n) == 0) { \
- *cp++ = 0; \
- cp[1] = (n); \
- cp[0] = (n) >> 8; \
- cp += 2; \
- } else { \
- *cp++ = (n); \
- } \
-}
-
-#define DECODEL(f) { \
- if (*cp == 0) {\
- u_int32_t tmp = ntohl(f) + ((cp[1] << 8) | cp[2]); \
- (f) = htonl(tmp); \
- cp += 3; \
- } else { \
- u_int32_t tmp = ntohl(f) + (u_int32_t)*cp++; \
- (f) = htonl(tmp); \
- } \
-}
-
-#define DECODES(f) { \
- if (*cp == 0) {\
- u_short tmp = ntohs(f) + ((cp[1] << 8) | cp[2]); \
- (f) = htons(tmp); \
- cp += 3; \
- } else { \
- u_short tmp = ntohs(f) + (u_int32_t)*cp++; \
- (f) = htons(tmp); \
- } \
-}
-
-#define DECODEU(f) { \
- if (*cp == 0) {\
- (f) = htons((cp[1] << 8) | cp[2]); \
- cp += 3; \
- } else { \
- (f) = htons((u_int32_t)*cp++); \
- } \
-}
-
-u_int
-vj_compress_tcp(ip, mlen, comp, compress_cid, vjhdrp)
- register struct ip *ip;
- u_int mlen;
- struct vjcompress *comp;
- int compress_cid;
- u_char **vjhdrp;
-{
- register struct cstate *cs = comp->last_cs->cs_next;
- register u_int hlen = getip_hl(*ip);
- register struct tcphdr *oth;
- register struct tcphdr *th;
- register u_int deltaS, deltaA;
- register u_int changes = 0;
- u_char new_seq[16];
- register u_char *cp = new_seq;
-
- /*
- * Bail if this is an IP fragment or if the TCP packet isn't
- * `compressible' (i.e., ACK isn't set or some other control bit is
- * set). (We assume that the caller has already made sure the
- * packet is IP proto TCP).
- */
- if ((ip->ip_off & htons(0x3fff)) || mlen < 40)
- return (TYPE_IP);
-
- th = (struct tcphdr *)&((int *)ip)[hlen];
- if ((th->th_flags & (TH_SYN|TH_FIN|TH_RST|TH_ACK)) != TH_ACK)
- return (TYPE_IP);
- /*
- * Packet is compressible -- we're going to send either a
- * COMPRESSED_TCP or UNCOMPRESSED_TCP packet. Either way we need
- * to locate (or create) the connection state. Special case the
- * most recently used connection since it's most likely to be used
- * again & we don't have to do any reordering if it's used.
- */
- INCR(vjs_packets);
- if (ip->ip_src.s_addr != cs->cs_ip.ip_src.s_addr ||
- ip->ip_dst.s_addr != cs->cs_ip.ip_dst.s_addr ||
- *(int *)th != ((int *)&cs->cs_ip)[getip_hl(cs->cs_ip)]) {
- /*
- * Wasn't the first -- search for it.
- *
- * States are kept in a circularly linked list with
- * last_cs pointing to the end of the list. The
- * list is kept in lru order by moving a state to the
- * head of the list whenever it is referenced. Since
- * the list is short and, empirically, the connection
- * we want is almost always near the front, we locate
- * states via linear search. If we don't find a state
- * for the datagram, the oldest state is (re-)used.
- */
- register struct cstate *lcs;
- register struct cstate *lastcs = comp->last_cs;
-
- do {
- lcs = cs; cs = cs->cs_next;
- INCR(vjs_searches);
- if (ip->ip_src.s_addr == cs->cs_ip.ip_src.s_addr
- && ip->ip_dst.s_addr == cs->cs_ip.ip_dst.s_addr
- && *(int *)th == ((int *)&cs->cs_ip)[getip_hl(cs->cs_ip)])
- goto found;
- } while (cs != lastcs);
-
- /*
- * Didn't find it -- re-use oldest cstate. Send an
- * uncompressed packet that tells the other side what
- * connection number we're using for this conversation.
- * Note that since the state list is circular, the oldest
- * state points to the newest and we only need to set
- * last_cs to update the lru linkage.
- */
- INCR(vjs_misses);
- comp->last_cs = lcs;
- hlen += getth_off(*th);
- hlen <<= 2;
- if (hlen > mlen)
- return (TYPE_IP);
- goto uncompressed;
-
- found:
- /*
- * Found it -- move to the front on the connection list.
- */
- if (cs == lastcs)
- comp->last_cs = lcs;
- else {
- lcs->cs_next = cs->cs_next;
- cs->cs_next = lastcs->cs_next;
- lastcs->cs_next = cs;
- }
- }
-
- /*
- * Make sure that only what we expect to change changed. The first
- * line of the `if' checks the IP protocol version, header length &
- * type of service. The 2nd line checks the "Don't fragment" bit.
- * The 3rd line checks the time-to-live and protocol (the protocol
- * check is unnecessary but costless). The 4th line checks the TCP
- * header length. The 5th line checks IP options, if any. The 6th
- * line checks TCP options, if any. If any of these things are
- * different between the previous & current datagram, we send the
- * current datagram `uncompressed'.
- */
- oth = (struct tcphdr *)&((int *)&cs->cs_ip)[hlen];
- deltaS = hlen;
- hlen += getth_off(*th);
- hlen <<= 2;
- if (hlen > mlen)
- return (TYPE_IP);
-
- if (((u_short *)ip)[0] != ((u_short *)&cs->cs_ip)[0] ||
- ((u_short *)ip)[3] != ((u_short *)&cs->cs_ip)[3] ||
- ((u_short *)ip)[4] != ((u_short *)&cs->cs_ip)[4] ||
- getth_off(*th) != getth_off(*oth) ||
- (deltaS > 5 && BCMP(ip + 1, &cs->cs_ip + 1, (deltaS - 5) << 2)) ||
- (getth_off(*th) > 5 && BCMP(th + 1, oth + 1, (getth_off(*th) - 5) << 2)))
- goto uncompressed;
-
- /*
- * Figure out which of the changing fields changed. The
- * receiver expects changes in the order: urgent, window,
- * ack, seq (the order minimizes the number of temporaries
- * needed in this section of code).
- */
- if (th->th_flags & TH_URG) {
- deltaS = ntohs(th->th_urp);
- ENCODEZ(deltaS);
- changes |= NEW_U;
- } else if (th->th_urp != oth->th_urp)
- /* argh! URG not set but urp changed -- a sensible
- * implementation should never do this but RFC793
- * doesn't prohibit the change so we have to deal
- * with it. */
- goto uncompressed;
-
- if ((deltaS = (u_short)(ntohs(th->th_win) - ntohs(oth->th_win))) > 0) {
- ENCODE(deltaS);
- changes |= NEW_W;
- }
-
- if ((deltaA = ntohl(th->th_ack) - ntohl(oth->th_ack)) > 0) {
- if (deltaA > 0xffff)
- goto uncompressed;
- ENCODE(deltaA);
- changes |= NEW_A;
- }
-
- if ((deltaS = ntohl(th->th_seq) - ntohl(oth->th_seq)) > 0) {
- if (deltaS > 0xffff)
- goto uncompressed;
- ENCODE(deltaS);
- changes |= NEW_S;
- }
-
- switch(changes) {
-
- case 0:
- /*
- * Nothing changed. If this packet contains data and the
- * last one didn't, this is probably a data packet following
- * an ack (normal on an interactive connection) and we send
- * it compressed. Otherwise it's probably a retransmit,
- * retransmitted ack or window probe. Send it uncompressed
- * in case the other side missed the compressed version.
- */
- if (ip->ip_len != cs->cs_ip.ip_len &&
- ntohs(cs->cs_ip.ip_len) == hlen)
- break;
-
- /* (fall through) */
-
- case SPECIAL_I:
- case SPECIAL_D:
- /*
- * actual changes match one of our special case encodings --
- * send packet uncompressed.
- */
- goto uncompressed;
-
- case NEW_S|NEW_A:
- if (deltaS == deltaA && deltaS == ntohs(cs->cs_ip.ip_len) - hlen) {
- /* special case for echoed terminal traffic */
- changes = SPECIAL_I;
- cp = new_seq;
- }
- break;
-
- case NEW_S:
- if (deltaS == ntohs(cs->cs_ip.ip_len) - hlen) {
- /* special case for data xfer */
- changes = SPECIAL_D;
- cp = new_seq;
- }
- break;
- }
-
- deltaS = ntohs(ip->ip_id) - ntohs(cs->cs_ip.ip_id);
- if (deltaS != 1) {
- ENCODEZ(deltaS);
- changes |= NEW_I;
- }
- if (th->th_flags & TH_PUSH)
- changes |= TCP_PUSH_BIT;
- /*
- * Grab the cksum before we overwrite it below. Then update our
- * state with this packet's header.
- */
- deltaA = ntohs(th->th_sum);
- BCOPY(ip, &cs->cs_ip, hlen);
-
- /*
- * We want to use the original packet as our compressed packet.
- * (cp - new_seq) is the number of bytes we need for compressed
- * sequence numbers. In addition we need one byte for the change
- * mask, one for the connection id and two for the tcp checksum.
- * So, (cp - new_seq) + 4 bytes of header are needed. hlen is how
- * many bytes of the original packet to toss so subtract the two to
- * get the new packet size.
- */
- deltaS = cp - new_seq;
- cp = (u_char *)ip;
- if (compress_cid == 0 || comp->last_xmit != cs->cs_id) {
- comp->last_xmit = cs->cs_id;
- hlen -= deltaS + 4;
- *vjhdrp = (cp += hlen);
- *cp++ = changes | NEW_C;
- *cp++ = cs->cs_id;
- } else {
- hlen -= deltaS + 3;
- *vjhdrp = (cp += hlen);
- *cp++ = changes;
- }
- *cp++ = deltaA >> 8;
- *cp++ = deltaA;
- BCOPY(new_seq, cp, deltaS);
- INCR(vjs_compressed);
- return (TYPE_COMPRESSED_TCP);
-
- /*
- * Update connection state cs & send uncompressed packet (that is,
- * a regular ip/tcp packet but with the 'conversation id' we hope
- * to use on future compressed packets in the protocol field).
- */
- uncompressed:
- BCOPY(ip, &cs->cs_ip, hlen);
- ip->ip_p = cs->cs_id;
- comp->last_xmit = cs->cs_id;
- return (TYPE_UNCOMPRESSED_TCP);
-}
-
-/*
- * Called when we may have missed a packet.
- */
-void
-vj_uncompress_err(comp)
- struct vjcompress *comp;
-{
- comp->flags |= VJF_TOSS;
- INCR(vjs_errorin);
-}
-
-/*
- * "Uncompress" a packet of type TYPE_UNCOMPRESSED_TCP.
- */
-int
-vj_uncompress_uncomp(buf, buflen, comp)
- u_char *buf;
- int buflen;
- struct vjcompress *comp;
-{
- register u_int hlen;
- register struct cstate *cs;
- register struct ip *ip;
-
- ip = (struct ip *) buf;
- hlen = getip_hl(*ip) << 2;
- if (ip->ip_p >= MAX_STATES
- || hlen + sizeof(struct tcphdr) > buflen
- || (hlen += getth_off(*((struct tcphdr *)&((char *)ip)[hlen])) << 2)
- > buflen
- || hlen > MAX_HDR) {
- comp->flags |= VJF_TOSS;
- INCR(vjs_errorin);
- return (0);
- }
- cs = &comp->rstate[comp->last_recv = ip->ip_p];
- comp->flags &=~ VJF_TOSS;
- ip->ip_p = IPPROTO_TCP;
- BCOPY(ip, &cs->cs_ip, hlen);
- cs->cs_hlen = hlen;
- INCR(vjs_uncompressedin);
- return (1);
-}
-
-/*
- * Uncompress a packet of type TYPE_COMPRESSED_TCP.
- * The packet starts at buf and is of total length total_len.
- * The first buflen bytes are at buf; this must include the entire
- * compressed TCP/IP header. This procedure returns the length
- * of the VJ header, with a pointer to the uncompressed IP header
- * in *hdrp and its length in *hlenp.
- */
-int
-vj_uncompress_tcp(buf, buflen, total_len, comp, hdrp, hlenp)
- u_char *buf;
- int buflen, total_len;
- struct vjcompress *comp;
- u_char **hdrp;
- u_int *hlenp;
-{
- register u_char *cp;
- register u_int hlen, changes;
- register struct tcphdr *th;
- register struct cstate *cs;
- register u_short *bp;
- register u_int vjlen;
- register u_int32_t tmp;
-
- INCR(vjs_compressedin);
- cp = buf;
- changes = *cp++;
- if (changes & NEW_C) {
- /* Make sure the state index is in range, then grab the state.
- * If we have a good state index, clear the 'discard' flag. */
- if (*cp >= MAX_STATES)
- goto bad;
-
- comp->flags &=~ VJF_TOSS;
- comp->last_recv = *cp++;
- } else {
- /* this packet has an implicit state index. If we've
- * had a line error since the last time we got an
- * explicit state index, we have to toss the packet. */
- if (comp->flags & VJF_TOSS) {
- INCR(vjs_tossed);
- return (-1);
- }
- }
- cs = &comp->rstate[comp->last_recv];
- hlen = getip_hl(cs->cs_ip) << 2;
- th = (struct tcphdr *)&((u_char *)&cs->cs_ip)[hlen];
- th->th_sum = htons((*cp << 8) | cp[1]);
- cp += 2;
- if (changes & TCP_PUSH_BIT)
- th->th_flags |= TH_PUSH;
- else
- th->th_flags &=~ TH_PUSH;
-
- switch (changes & SPECIALS_MASK) {
- case SPECIAL_I:
- {
- register u_int32_t i = ntohs(cs->cs_ip.ip_len) - cs->cs_hlen;
- /* some compilers can't nest inline assembler.. */
- tmp = ntohl(th->th_ack) + i;
- th->th_ack = htonl(tmp);
- tmp = ntohl(th->th_seq) + i;
- th->th_seq = htonl(tmp);
- }
- break;
-
- case SPECIAL_D:
- /* some compilers can't nest inline assembler.. */
- tmp = ntohl(th->th_seq) + ntohs(cs->cs_ip.ip_len) - cs->cs_hlen;
- th->th_seq = htonl(tmp);
- break;
-
- default:
- if (changes & NEW_U) {
- th->th_flags |= TH_URG;
- DECODEU(th->th_urp);
- } else
- th->th_flags &=~ TH_URG;
- if (changes & NEW_W)
- DECODES(th->th_win);
- if (changes & NEW_A)
- DECODEL(th->th_ack);
- if (changes & NEW_S)
- DECODEL(th->th_seq);
- break;
- }
- if (changes & NEW_I) {
- DECODES(cs->cs_ip.ip_id);
- } else {
- cs->cs_ip.ip_id = ntohs(cs->cs_ip.ip_id) + 1;
- cs->cs_ip.ip_id = htons(cs->cs_ip.ip_id);
- }
-
- /*
- * At this point, cp points to the first byte of data in the
- * packet. Fill in the IP total length and update the IP
- * header checksum.
- */
- vjlen = cp - buf;
- buflen -= vjlen;
- if (buflen < 0)
- /* we must have dropped some characters (crc should detect
- * this but the old slip framing won't) */
- goto bad;
-
- total_len += cs->cs_hlen - vjlen;
- cs->cs_ip.ip_len = htons(total_len);
-
- /* recompute the ip header checksum */
- bp = (u_short *) &cs->cs_ip;
- cs->cs_ip.ip_sum = 0;
- for (changes = 0; hlen > 0; hlen -= 2)
- changes += *bp++;
- changes = (changes & 0xffff) + (changes >> 16);
- changes = (changes & 0xffff) + (changes >> 16);
- cs->cs_ip.ip_sum = ~ changes;
-
- *hdrp = (u_char *) &cs->cs_ip;
- *hlenp = cs->cs_hlen;
- return vjlen;
-
- bad:
- comp->flags |= VJF_TOSS;
- INCR(vjs_errorin);
- return (-1);
-}
diff --git a/mdk-stage1/ppp/pppd/Makefile b/mdk-stage1/ppp/pppd/Makefile
deleted file mode 100644
index e5fcc1411..000000000
--- a/mdk-stage1/ppp/pppd/Makefile
+++ /dev/null
@@ -1,51 +0,0 @@
- #******************************************************************************
- #
- # Guillaume Cottenceau (gc@mandriva.com)
- #
- # Copyright 2000 Mandriva
- #
- # This software may be freely redistributed under the terms of the GNU
- # public license.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- #*****************************************************************************
-
-top_dir = ../..
-
-include $(top_dir)/Makefile.common
-
-
-TARGETS = pppd
-
-BINTARGET = ../../pppd
-
-
-all: $(TARGETS)
-
-clean:
- rm -f *.o *.a $(BINTARGET) pppd
-
-FLAGS = -Wall -Wno-deprecated-declarations -Werror -Os -fomit-frame-pointer -DDO_BSD_COMPRESS=0 -D_linux_=1 -DHAVE_MMAP -DNO_DRAND48 -D_BSD_SOURCE -D_GNU_SOURCE
-# (blino) for gcc-4.1.1, dereferencing type-punned pointer will break strict-aliasing rules, in options.c:711
-FLAGS += -fno-strict-aliasing
-
-INCS = -I../include -I.
-
-ifeq (GLIBC, $(L))
-LIBS = -static -lcrypt
-endif
-
-
-OBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o ccp.o auth.o options.o demand.o utils.o sys-linux.o ipxcp.o multilink.o tdb.o tty.o
-
-
-pppd: $(OBJS)
- $(DIET) gcc -o $@ $^ $(LIBS)
- $(STRIPCMD) $@
- cp -f $@ $(BINTARGET)
-
-$(OBJS): %.o: %.c
- $(DIET) gcc $(FLAGS) $(INCS) $(INCLUDES) -c $< -o $@
diff --git a/mdk-stage1/ppp/pppd/Makefile.linux b/mdk-stage1/ppp/pppd/Makefile.linux
deleted file mode 100644
index 47d6ba01e..000000000
--- a/mdk-stage1/ppp/pppd/Makefile.linux
+++ /dev/null
@@ -1,129 +0,0 @@
-#
-# pppd makefile for Linux
-# $Id$
-#
-
-# Default installation locations
-BINDIR = $(DESTDIR)/usr/sbin
-MANDIR = $(DESTDIR)/usr/man
-
-PPPDSRCS = main.c magic.c fsm.c lcp.c ipcp.c upap.c chap.c md5.c ccp.c \
- ipxcp.c auth.c options.c sys-linux.c md4.c chap_ms.c cbcp.c \
- demand.c utils.c multilink.c tdb.c tty.c
-HEADERS = callout.h pathnames.h patchlevel.h chap.h md5.h chap_ms.h md4.h \
- ipxcp.h cbcp.h tdb.h
-MANPAGES = pppd.8
-PPPDOBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o ccp.o \
- auth.o options.o demand.o utils.o sys-linux.o ipxcp.o multilink.o \
- tdb.o tty.o
-
-all: pppd
-
-#
-# include dependancies if present and backup if as a header file
-ifeq (.depend,$(wildcard .depend))
-include .depend
-endif
-
-CC = gcc
-#
-COPTS = -Wall $(RPM_OPT_FLAGS)
-LIBS = -lutil
-
-ifneq ($(wildcard /usr/lib/libcrypt.*),)
-LIBS += -lcrypt
-endif
-
-# Uncomment the next 2 lines to include support for Microsoft's
-# MS-CHAP authentication protocol.
-CHAPMS=y
-USE_CRYPT=y
-ifneq ($(wildcard /usr/lib/libcrypt.*),)
-HAVE_CRYPT_H=y
-endif
-
-# Uncomment the next line to include support for PPP packet filtering.
-# This requires that the libpcap library and headers be installed
-# and that the kernel driver support PPP packet filtering, which it
-# doesn't yet.
-#FILTER=y
-
-HAS_SHADOW=y
-USE_PAM=y
-#HAVE_INET6=y
-
-PLUGIN=y
-
-INCLUDE_DIRS= -I../include
-
-COMPILE_FLAGS= -D_linux_=1 -DHAVE_PATHS_H -DIPX_CHANGE -DHAVE_MULTILINK -DHAVE_MMAP
-
-CFLAGS= $(COPTS) $(COMPILE_FLAGS) $(INCLUDE_DIRS)
-
-ifdef CHAPMS
-CFLAGS += -DCHAPMS=1
-ifndef USE_CRYPT
-LIBS := -ldes $(LIBS)
-else
-CFLAGS += -DUSE_CRYPT=1
-ifneq ($(wildcard /usr/include/crypt.h),)
-CFLAGS += -DHAVE_CRYPT_H=1
-endif
-endif
-PPPDOBJS += md4.o chap_ms.o
-ifdef MSLANMAN
-CFLAGS += -DMSLANMAN=1
-endif
-endif
-
-ifdef HAS_SHADOW
-CFLAGS += -DHAS_SHADOW
-#LIBS := -lshadow $(LIBS)
-endif
-
-# For "Pluggable Authentication Modules", see ftp.redhat.com:/pub/pam/.
-ifdef USE_PAM
-CFLAGS += -DUSE_PAM
-LIBS := -lpam -ldl $(LIBS)
-endif
-
-# Lock library binary for Linux is included in 'linux' subdirectory.
-ifdef LOCKLIB
-LIBS := -llock $(LIBS)
-CFLAGS += -DLOCKLIB=1
-endif
-
-ifdef PLUGIN
-CFLAGS += -DPLUGIN
-LDFLAGS += -Wl,-E
-LIBS += -ldl
-endif
-
-ifdef FILTER
-LIBS += -lpcap
-CFLAGS += -DPPP_FILTER -I/usr/include/pcap
-endif
-
-ifdef HAVE_INET6
- PPPDSRCS += ipv6cp.c eui64.c
- HEADERS += ipv6cp.h eui64.h
- PPPDOBJS += ipv6cp.o eui64.o
- CFLAGS += -DINET6=1
-endif
-
-
-INSTALL= install
-
-install: pppd
- mkdir -p $(BINDIR) $(MANDIR)
- $(INSTALL) -m 555 pppd $(BINDIR)/pppd
- $(INSTALL) -c -m 444 pppd.8 $(MANDIR)/man8
-
-pppd: $(PPPDOBJS)
- $(CC) $(CFLAGS) $(LDFLAGS) -o pppd $(PPPDOBJS) $(LIBS)
-
-clean:
- rm -f $(PPPDOBJS) pppd *~ #* core
-
-depend:
- $(CPP) -M $(CFLAGS) $(PPPDSRCS) >.depend
diff --git a/mdk-stage1/ppp/pppd/Makefile.linux.make b/mdk-stage1/ppp/pppd/Makefile.linux.make
deleted file mode 100644
index d98a32562..000000000
--- a/mdk-stage1/ppp/pppd/Makefile.linux.make
+++ /dev/null
@@ -1,131 +0,0 @@
-#
-# pppd makefile for Linux
-# $Id$
-#
-
-# Default installation locations
-BINDIR = /usr/sbin
-MANDIR = /usr/man
-
-PPPDSRCS = main.c magic.c fsm.c lcp.c ipcp.c upap.c chap.c md5.c ccp.c \
- ipxcp.c auth.c options.c sys-linux.c md4.c chap_ms.c cbcp.c \
- demand.c utils.c multilink.c tdb.c tty.c
-HEADERS = callout.h pathnames.h patchlevel.h chap.h md5.h chap_ms.h md4.h \
- ipxcp.h cbcp.h tdb.h
-MANPAGES = pppd.8
-PPPDOBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o ccp.o \
- auth.o options.o demand.o utils.o sys-linux.o ipxcp.o multilink.o \
- tdb.o tty.o
-
-all: pppd
-
-#
-# include dependancies if present and backup if as a header file
-ifeq (.depend,$(wildcard .depend))
-include .depend
-endif
-
-# CC = gcc
-#
-COPTS = -O2 -pipe -Wall -g
-LIBS =
-
-ifneq ($(wildcard /usr/lib/libcrypt.*),)
-LIBS += -lcrypt
-endif
-
-# Uncomment the next 2 lines to include support for Microsoft's
-# MS-CHAP authentication protocol.
-CHAPMS=y
-USE_CRYPT=y
-ifneq ($(wildcard /usr/lib/libcrypt.*),)
-HAVE_CRYPT_H=y
-endif
-
-# Uncomment the next line to include support for PPP packet filtering.
-# This requires that the libpcap library and headers be installed
-# and that the kernel driver support PPP packet filtering, which it
-# doesn't yet.
-#FILTER=y
-
-HAS_SHADOW=y
-#USE_PAM=y
-#HAVE_INET6=y
-
-PLUGIN=y
-
-INCLUDE_DIRS= -I../include
-
-COMPILE_FLAGS= -D_linux_=1 -DHAVE_PATHS_H -DIPX_CHANGE -DHAVE_MULTILINK -DHAVE_MMAP
-
-CFLAGS= $(COPTS) $(COMPILE_FLAGS) $(INCLUDE_DIRS)
-
-ifdef CHAPMS
-CFLAGS += -DCHAPMS=1
-ifndef USE_CRYPT
-LIBS := -ldes $(LIBS)
-else
-CFLAGS += -DUSE_CRYPT=1
-ifneq ($(wildcard /usr/include/crypt.h),)
-CFLAGS += -DHAVE_CRYPT_H=1
-endif
-endif
-PPPDOBJS += md4.o chap_ms.o
-ifdef MSLANMAN
-CFLAGS += -DMSLANMAN=1
-endif
-endif
-
-ifdef HAS_SHADOW
-CFLAGS += -DHAS_SHADOW
-#LIBS := -lshadow $(LIBS)
-endif
-
-# For "Pluggable Authentication Modules", see ftp.redhat.com:/pub/pam/.
-ifdef USE_PAM
-CFLAGS += -DUSE_PAM
-LIBS := -lpam -ldl $(LIBS)
-endif
-
-# Lock library binary for Linux is included in 'linux' subdirectory.
-ifdef LOCKLIB
-LIBS := -llock $(LIBS)
-CFLAGS += -DLOCKLIB=1
-endif
-
-ifdef PLUGIN
-CFLAGS += -DPLUGIN
-LDFLAGS += -Wl,-E
-LIBS += -ldl
-endif
-
-ifdef FILTER
-LIBS += -lpcap
-CFLAGS += -DPPP_FILTER -I/usr/include/pcap
-endif
-
-ifdef HAVE_INET6
- PPPDSRCS += ipv6cp.c eui64.c
- HEADERS += ipv6cp.h eui64.h
- PPPDOBJS += ipv6cp.o eui64.o
- CFLAGS += -DINET6=1
-endif
-
-
-INSTALL= install -o root
-
-install: pppd
- mkdir -p $(BINDIR) $(MANDIR)
- $(INSTALL) -s -c -m 555 pppd $(BINDIR)/pppd
- if chgrp pppusers $(BINDIR)/pppd 2>/dev/null; then \
- chmod o-rx,u+s $(BINDIR)/pppd; fi
- $(INSTALL) -c -m 444 pppd.8 $(MANDIR)/man8
-
-pppd: $(PPPDOBJS)
- $(CC) $(CFLAGS) $(LDFLAGS) -o pppd $(PPPDOBJS) $(LIBS)
-
-clean:
- rm -f $(PPPDOBJS) pppd *~ #* core
-
-depend:
- $(CPP) -M $(CFLAGS) $(PPPDSRCS) >.depend
diff --git a/mdk-stage1/ppp/pppd/Makefile.linux.makeopt b/mdk-stage1/ppp/pppd/Makefile.linux.makeopt
deleted file mode 100644
index 3094c941c..000000000
--- a/mdk-stage1/ppp/pppd/Makefile.linux.makeopt
+++ /dev/null
@@ -1,129 +0,0 @@
-#
-# pppd makefile for Linux
-# $Id$
-#
-
-# Default installation locations
-BINDIR = $(DESTDIR)/usr/sbin
-MANDIR = $(DESTDIR)/usr/man
-
-PPPDSRCS = main.c magic.c fsm.c lcp.c ipcp.c upap.c chap.c md5.c ccp.c \
- ipxcp.c auth.c options.c sys-linux.c md4.c chap_ms.c cbcp.c \
- demand.c utils.c multilink.c tdb.c tty.c
-HEADERS = callout.h pathnames.h patchlevel.h chap.h md5.h chap_ms.h md4.h \
- ipxcp.h cbcp.h tdb.h
-MANPAGES = pppd.8
-PPPDOBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o ccp.o \
- auth.o options.o demand.o utils.o sys-linux.o ipxcp.o multilink.o \
- tdb.o tty.o
-
-all: pppd
-
-#
-# include dependancies if present and backup if as a header file
-ifeq (.depend,$(wildcard .depend))
-include .depend
-endif
-
-CC = gcc
-#
-COPTS = -O2 -pipe -Wall -g
-LIBS = -lutil
-
-ifneq ($(wildcard /usr/lib/libcrypt.*),)
-LIBS += -lcrypt
-endif
-
-# Uncomment the next 2 lines to include support for Microsoft's
-# MS-CHAP authentication protocol.
-CHAPMS=y
-USE_CRYPT=y
-ifneq ($(wildcard /usr/lib/libcrypt.*),)
-HAVE_CRYPT_H=y
-endif
-
-# Uncomment the next line to include support for PPP packet filtering.
-# This requires that the libpcap library and headers be installed
-# and that the kernel driver support PPP packet filtering, which it
-# doesn't yet.
-#FILTER=y
-
-HAS_SHADOW=y
-USE_PAM=y
-#HAVE_INET6=y
-
-PLUGIN=y
-
-INCLUDE_DIRS= -I../include
-
-COMPILE_FLAGS= -D_linux_=1 -DHAVE_PATHS_H -DIPX_CHANGE -DHAVE_MULTILINK -DHAVE_MMAP
-
-CFLAGS= $(COPTS) $(COMPILE_FLAGS) $(INCLUDE_DIRS)
-
-ifdef CHAPMS
-CFLAGS += -DCHAPMS=1
-ifndef USE_CRYPT
-LIBS := -ldes $(LIBS)
-else
-CFLAGS += -DUSE_CRYPT=1
-ifneq ($(wildcard /usr/include/crypt.h),)
-CFLAGS += -DHAVE_CRYPT_H=1
-endif
-endif
-PPPDOBJS += md4.o chap_ms.o
-ifdef MSLANMAN
-CFLAGS += -DMSLANMAN=1
-endif
-endif
-
-ifdef HAS_SHADOW
-CFLAGS += -DHAS_SHADOW
-#LIBS := -lshadow $(LIBS)
-endif
-
-# For "Pluggable Authentication Modules", see ftp.redhat.com:/pub/pam/.
-ifdef USE_PAM
-CFLAGS += -DUSE_PAM
-LIBS := -lpam -ldl $(LIBS)
-endif
-
-# Lock library binary for Linux is included in 'linux' subdirectory.
-ifdef LOCKLIB
-LIBS := -llock $(LIBS)
-CFLAGS += -DLOCKLIB=1
-endif
-
-ifdef PLUGIN
-CFLAGS += -DPLUGIN
-LDFLAGS += -Wl,-E
-LIBS += -ldl
-endif
-
-ifdef FILTER
-LIBS += -lpcap
-CFLAGS += -DPPP_FILTER -I/usr/include/pcap
-endif
-
-ifdef HAVE_INET6
- PPPDSRCS += ipv6cp.c eui64.c
- HEADERS += ipv6cp.h eui64.h
- PPPDOBJS += ipv6cp.o eui64.o
- CFLAGS += -DINET6=1
-endif
-
-
-INSTALL= install
-
-install: pppd
- mkdir -p $(BINDIR) $(MANDIR)
- $(INSTALL) -m 555 pppd $(BINDIR)/pppd
- $(INSTALL) -c -m 444 pppd.8 $(MANDIR)/man8
-
-pppd: $(PPPDOBJS)
- $(CC) $(CFLAGS) $(LDFLAGS) -o pppd $(PPPDOBJS) $(LIBS)
-
-clean:
- rm -f $(PPPDOBJS) pppd *~ #* core
-
-depend:
- $(CPP) -M $(CFLAGS) $(PPPDSRCS) >.depend
diff --git a/mdk-stage1/ppp/pppd/Makefile.sol2 b/mdk-stage1/ppp/pppd/Makefile.sol2
deleted file mode 100644
index dfdcddd97..000000000
--- a/mdk-stage1/ppp/pppd/Makefile.sol2
+++ /dev/null
@@ -1,48 +0,0 @@
-#
-# Makefile for pppd under Solaris 2.
-# $Id$
-#
-
-include ../solaris/Makedefs
-
-COPTS += -xO2 -xspace -W0,-Lt
-CFLAGS = -I../include -DSVR4 -DSOL2 $(COPTS)
-LIBS = -lsocket -lnsl
-
-OBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o tty.o \
- ccp.o auth.o options.o demand.o utils.o sys-solaris.o tdb.o
-
-#
-# uncomment the following to enable plugins
-#
-CFLAGS += -DPLUGIN
-LIBS += -ldl
-
-#
-# Solaris 8 and above accomodates /var/run, so uncomment the
-# following to place pppd process IDs on that location
-#
-#CFLAGS += -D_PATH_VARRUN='"/var/run/"'
-
-#
-# uncomment the following to enable IPv6
-#
-# Solaris 8 and on includes support for IPv6
-#
-#CFLAGS += -DINET6
-#OBJS += ipv6cp.o eui64.o
-
-#
-# Make targets
-#
-all: pppd
-
-pppd: $(OBJS)
- $(CC) -o pppd $(OBJS) $(LIBS)
-
-install:
- $(INSTALL) -f $(BINDIR) -m 4755 -u root pppd
- $(INSTALL) -f $(MANDIR)/man8 -m 444 pppd.8
-
-clean:
- rm -f $(OBJS) pppd *~ core y.tab.c y.tab.h
diff --git a/mdk-stage1/ppp/pppd/Makefile.sunos4 b/mdk-stage1/ppp/pppd/Makefile.sunos4
deleted file mode 100644
index 694ac341f..000000000
--- a/mdk-stage1/ppp/pppd/Makefile.sunos4
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-# Makefile for pppd under SunOS 4.
-# $Id$
-#
-
-include ../sunos4/Makedefs
-
-LIBS =
-
-CFLAGS = $(COPTS) -I../include -DSUNOS4 -DGIDSET_TYPE=int \
- -DLOCK_DIR=\"/usr/spool/locks\"
-
-all: pppd
-
-OBJS = main.o magic.o fsm.o lcp.o ipcp.o upap.o chap.o md5.o ccp.o \
- auth.o options.o demand.o utils.o sys-sunos4.o tty.o
-
-pppd: $(OBJS)
- $(CC) -o pppd $(OBJS) $(LIBS)
-
-install:
- $(INSTALL) -c -m 4555 pppd $(BINDIR)/pppd
- $(INSTALL) -c -m 444 pppd.8 $(MANDIR)/man8/pppd.8
-
-clean:
- rm -f $(OBJS) pppd *~ core
diff --git a/mdk-stage1/ppp/pppd/auth.c b/mdk-stage1/ppp/pppd/auth.c
deleted file mode 100644
index 5f95a2982..000000000
--- a/mdk-stage1/ppp/pppd/auth.c
+++ /dev/null
@@ -1,1939 +0,0 @@
-/*
- * auth.c - PPP authentication and phase control.
- *
- * Copyright (c) 1993 The Australian National University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the Australian National University. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-#include <stdio.h>
-#include <stddef.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <pwd.h>
-#include <grp.h>
-#include <string.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/socket.h>
-#include <utmp.h>
-#include <fcntl.h>
-#if defined(_PATH_LASTLOG) && defined(_linux_)
-#include <lastlog.h>
-#endif
-
-#include <netdb.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#ifdef USE_PAM
-#include <security/pam_appl.h>
-#endif
-
-#ifdef HAS_SHADOW
-#include <shadow.h>
-#ifndef PW_PPP
-#define PW_PPP PW_LOGIN
-#endif
-#endif
-
-#include "pppd.h"
-#include "fsm.h"
-#include "lcp.h"
-#include "ipcp.h"
-#include "upap.h"
-#include "chap.h"
-#ifdef CBCP_SUPPORT
-#include "cbcp.h"
-#endif
-#include "pathnames.h"
-
-#include <time.h>
-
-static const char rcsid[] = RCSID;
-
-/* Bits in scan_authfile return value */
-#define NONWILD_SERVER 1
-#define NONWILD_CLIENT 2
-
-#define ISWILD(word) (word[0] == '*' && word[1] == 0)
-
-/* The name by which the peer authenticated itself to us. */
-char peer_authname[MAXNAMELEN];
-
-/* Records which authentication operations haven't completed yet. */
-static int auth_pending[NUM_PPP];
-
-/* Set if we have successfully called plogin() */
-static int logged_in;
-
-/* List of addresses which the peer may use. */
-static struct permitted_ip *addresses[NUM_PPP];
-
-/* Wordlist giving addresses which the peer may use
- without authenticating itself. */
-static struct wordlist *noauth_addrs;
-
-/* Extra options to apply, from the secrets file entry for the peer. */
-static struct wordlist *extra_options;
-
-/* Number of network protocols which we have opened. */
-static int num_np_open;
-
-/* Number of network protocols which have come up. */
-static int num_np_up;
-
-/* Set if we got the contents of passwd[] from the pap-secrets file. */
-static int passwd_from_file;
-
-/* Set if we require authentication only because we have a default route. */
-static bool default_auth;
-
-/* Hook to enable a plugin to control the idle time limit */
-int (*idle_time_hook) __P((struct ppp_idle *)) = NULL;
-
-/* Hook for a plugin to say whether we can possibly authenticate any peer */
-int (*pap_check_hook) __P((void)) = NULL;
-
-/* Hook for a plugin to check the PAP user and password */
-int (*pap_auth_hook) __P((char *user, char *passwd, char **msgp,
- struct wordlist **paddrs,
- struct wordlist **popts)) = NULL;
-
-/* Hook for a plugin to know about the PAP user logout */
-void (*pap_logout_hook) __P((void)) = NULL;
-
-/* Hook for a plugin to get the PAP password for authenticating us */
-int (*pap_passwd_hook) __P((char *user, char *passwd)) = NULL;
-
-/*
- * This is used to ensure that we don't start an auth-up/down
- * script while one is already running.
- */
-enum script_state {
- s_down,
- s_up
-};
-
-static enum script_state auth_state = s_down;
-static enum script_state auth_script_state = s_down;
-static pid_t auth_script_pid = 0;
-
-static int used_login; /* peer authenticated against login database */
-
-/*
- * Option variables.
- */
-bool uselogin = 0; /* Use /etc/passwd for checking PAP */
-bool cryptpap = 0; /* Passwords in pap-secrets are encrypted */
-bool refuse_pap = 0; /* Don't wanna auth. ourselves with PAP */
-bool refuse_chap = 0; /* Don't wanna auth. ourselves with CHAP */
-bool usehostname = 0; /* Use hostname for our_name */
-bool auth_required = 0; /* Always require authentication from peer */
-bool allow_any_ip = 0; /* Allow peer to use any IP address */
-bool explicit_remote = 0; /* User specified explicit remote name */
-char remote_name[MAXNAMELEN]; /* Peer's name for authentication */
-
-static char *uafname; /* name of most recent +ua file */
-
-/* Bits in auth_pending[] */
-#define PAP_WITHPEER 1
-#define PAP_PEER 2
-#define CHAP_WITHPEER 4
-#define CHAP_PEER 8
-
-extern char *crypt __P((const char *, const char *));
-
-/* Prototypes for procedures local to this file. */
-
-static void network_phase __P((int));
-static void check_idle __P((void *));
-static void connect_time_expired __P((void *));
-static int plogin __P((char *, char *, char **));
-static void plogout __P((void));
-static int null_login __P((int));
-static int get_pap_passwd __P((char *));
-static int have_pap_secret __P((int *));
-static int have_chap_secret __P((char *, char *, int, int *));
-static int ip_addr_check __P((u_int32_t, struct permitted_ip *));
-static int scan_authfile __P((FILE *, char *, char *, char *,
- struct wordlist **, struct wordlist **,
- char *));
-static void free_wordlist __P((struct wordlist *));
-static void auth_script __P((char *));
-static void auth_script_done __P((void *));
-static void set_allowed_addrs __P((int, struct wordlist *, struct wordlist *));
-static int some_ip_ok __P((struct wordlist *));
-static int setupapfile __P((char **));
-static int privgroup __P((char **));
-static int set_noauth_addr __P((char **));
-static void check_access __P((FILE *, char *));
-static int wordlist_count __P((struct wordlist *));
-
-/*
- * Authentication-related options.
- */
-option_t auth_options[] = {
- { "auth", o_bool, &auth_required,
- "Require authentication from peer", OPT_PRIO | 1 },
- { "noauth", o_bool, &auth_required,
- "Don't require peer to authenticate", OPT_PRIOSUB | OPT_PRIV,
- &allow_any_ip },
- { "require-pap", o_bool, &lcp_wantoptions[0].neg_upap,
- "Require PAP authentication from peer",
- OPT_PRIOSUB | 1, &auth_required },
- { "+pap", o_bool, &lcp_wantoptions[0].neg_upap,
- "Require PAP authentication from peer",
- OPT_ALIAS | OPT_PRIOSUB | 1, &auth_required },
- { "require-chap", o_bool, &lcp_wantoptions[0].neg_chap,
- "Require CHAP authentication from peer",
- OPT_PRIOSUB | 1, &auth_required },
- { "+chap", o_bool, &lcp_wantoptions[0].neg_chap,
- "Require CHAP authentication from peer",
- OPT_ALIAS | OPT_PRIOSUB | 1, &auth_required },
-
- { "refuse-pap", o_bool, &refuse_pap,
- "Don't agree to auth to peer with PAP", 1 },
- { "-pap", o_bool, &refuse_pap,
- "Don't allow PAP authentication with peer", OPT_ALIAS | 1 },
-
- { "refuse-chap", o_bool, &refuse_chap,
- "Don't agree to auth to peer with CHAP", 1 },
- { "-chap", o_bool, &refuse_chap,
- "Don't allow CHAP authentication with peer", OPT_ALIAS | 1 },
-
- { "name", o_string, our_name,
- "Set local name for authentication",
- OPT_PRIO | OPT_PRIV | OPT_STATIC, NULL, MAXNAMELEN },
-
- { "+ua", o_special, (void *)setupapfile,
- "Get PAP user and password from file",
- OPT_PRIO | OPT_A2STRVAL, &uafname },
-
- { "user", o_string, user,
- "Set name for auth with peer", OPT_PRIO | OPT_STATIC, NULL, MAXNAMELEN },
-
- { "password", o_string, passwd,
- "Password for authenticating us to the peer",
- OPT_PRIO | OPT_STATIC | OPT_HIDE, NULL, MAXSECRETLEN },
-
- { "usehostname", o_bool, &usehostname,
- "Must use hostname for authentication", 1 },
-
- { "remotename", o_string, remote_name,
- "Set remote name for authentication", OPT_PRIO | OPT_STATIC,
- &explicit_remote, MAXNAMELEN },
-
- { "login", o_bool, &uselogin,
- "Use system password database for PAP", 1 },
-
- { "papcrypt", o_bool, &cryptpap,
- "PAP passwords are encrypted", 1 },
-
- { "privgroup", o_special, (void *)privgroup,
- "Allow group members to use privileged options", OPT_PRIV | OPT_A2LIST },
-
- { "allow-ip", o_special, (void *)set_noauth_addr,
- "Set IP address(es) which can be used without authentication",
- OPT_PRIV | OPT_A2LIST },
-
- { NULL }
-};
-
-/*
- * setupapfile - specifies UPAP info for authenticating with peer.
- */
-static int
-setupapfile(argv)
- char **argv;
-{
- FILE *ufile;
- int l;
- char u[MAXNAMELEN], p[MAXSECRETLEN];
- char *fname;
-
- lcp_allowoptions[0].neg_upap = 1;
-
- /* open user info file */
- fname = strdup(*argv);
- if (fname == NULL)
- novm("+ua file name");
- seteuid(getuid());
- ufile = fopen(fname, "r");
- seteuid(0);
- if (ufile == NULL) {
- option_error("unable to open user login data file %s", fname);
- return 0;
- }
- check_access(ufile, fname);
- uafname = fname;
-
- /* get username */
- if (fgets(u, MAXNAMELEN - 1, ufile) == NULL
- || fgets(p, MAXSECRETLEN - 1, ufile) == NULL){
- option_error("unable to read user login data file %s", fname);
- return 0;
- }
- fclose(ufile);
-
- /* get rid of newlines */
- l = strlen(u);
- if (l > 0 && u[l-1] == '\n')
- u[l-1] = 0;
- l = strlen(p);
- if (l > 0 && p[l-1] == '\n')
- p[l-1] = 0;
-
- if (override_value("user", option_priority, fname))
- strlcpy(user, u, sizeof(user));
- if (override_value("passwd", option_priority, fname))
- strlcpy(passwd, p, sizeof(passwd));
-
- return (1);
-}
-
-
-/*
- * privgroup - allow members of the group to have privileged access.
- */
-static int
-privgroup(argv)
- char **argv;
-{
- struct group *g;
- int i;
-
- g = getgrnam(*argv);
- if (g == 0) {
- option_error("group %s is unknown", *argv);
- return 0;
- }
- for (i = 0; i < ngroups; ++i) {
- if (groups[i] == g->gr_gid) {
- privileged = 1;
- break;
- }
- }
- return 1;
-}
-
-
-/*
- * set_noauth_addr - set address(es) that can be used without authentication.
- * Equivalent to specifying an entry like `"" * "" addr' in pap-secrets.
- */
-static int
-set_noauth_addr(argv)
- char **argv;
-{
- char *addr = *argv;
- int l = strlen(addr) + 1;
- struct wordlist *wp;
-
- wp = (struct wordlist *) malloc(sizeof(struct wordlist) + l);
- if (wp == NULL)
- novm("allow-ip argument");
- wp->word = (char *) (wp + 1);
- wp->next = noauth_addrs;
- BCOPY(addr, wp->word, l);
- noauth_addrs = wp;
- return 1;
-}
-
-
-/*
- * An Open on LCP has requested a change from Dead to Establish phase.
- * Do what's necessary to bring the physical layer up.
- */
-void
-link_required(unit)
- int unit;
-{
-}
-
-/*
- * LCP has terminated the link; go to the Dead phase and take the
- * physical layer down.
- */
-void
-link_terminated(unit)
- int unit;
-{
- if (phase == PHASE_DEAD)
- return;
- if (pap_logout_hook) {
- pap_logout_hook();
- } else {
- if (logged_in)
- plogout();
- }
- new_phase(PHASE_DEAD);
- notice("Connection terminated.");
-}
-
-/*
- * LCP has gone down; it will either die or try to re-establish.
- */
-void
-link_down(unit)
- int unit;
-{
- int i;
- struct protent *protp;
-
- auth_state = s_down;
- if (auth_script_state == s_up && auth_script_pid == 0) {
- update_link_stats(unit);
- auth_script_state = s_down;
- auth_script(_PATH_AUTHDOWN);
- }
- for (i = 0; (protp = protocols[i]) != NULL; ++i) {
- if (!protp->enabled_flag)
- continue;
- if (protp->protocol != PPP_LCP && protp->lowerdown != NULL)
- (*protp->lowerdown)(unit);
- if (protp->protocol < 0xC000 && protp->close != NULL)
- (*protp->close)(unit, "LCP down");
- }
- num_np_open = 0;
- num_np_up = 0;
- if (phase != PHASE_DEAD)
- new_phase(PHASE_TERMINATE);
-}
-
-/*
- * The link is established.
- * Proceed to the Dead, Authenticate or Network phase as appropriate.
- */
-void
-link_established(unit)
- int unit;
-{
- int auth;
- lcp_options *wo = &lcp_wantoptions[unit];
- lcp_options *go = &lcp_gotoptions[unit];
- lcp_options *ho = &lcp_hisoptions[unit];
- int i;
- struct protent *protp;
-
- /*
- * Tell higher-level protocols that LCP is up.
- */
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (protp->protocol != PPP_LCP && protp->enabled_flag
- && protp->lowerup != NULL)
- (*protp->lowerup)(unit);
-
- if (auth_required && !(go->neg_chap || go->neg_upap)) {
- /*
- * We wanted the peer to authenticate itself, and it refused:
- * if we have some address(es) it can use without auth, fine,
- * otherwise treat it as though it authenticated with PAP using
- * a username * of "" and a password of "". If that's not OK,
- * boot it out.
- */
- if (noauth_addrs != NULL) {
- set_allowed_addrs(unit, NULL, NULL);
- } else if (!wo->neg_upap || uselogin || !null_login(unit)) {
- warn("peer refused to authenticate: terminating link");
- lcp_close(unit, "peer refused to authenticate");
- status = EXIT_PEER_AUTH_FAILED;
- return;
- }
- }
-
- new_phase(PHASE_AUTHENTICATE);
- used_login = 0;
- auth = 0;
- if (go->neg_chap) {
- ChapAuthPeer(unit, our_name, go->chap_mdtype);
- auth |= CHAP_PEER;
- } else if (go->neg_upap) {
- upap_authpeer(unit);
- auth |= PAP_PEER;
- }
- if (ho->neg_chap) {
- ChapAuthWithPeer(unit, user, ho->chap_mdtype);
- auth |= CHAP_WITHPEER;
- } else if (ho->neg_upap) {
- if (passwd[0] == 0) {
- passwd_from_file = 1;
- if (!get_pap_passwd(passwd))
- error("No secret found for PAP login");
- }
- upap_authwithpeer(unit, user, passwd);
- auth |= PAP_WITHPEER;
- }
- auth_pending[unit] = auth;
-
- if (!auth)
- network_phase(unit);
-}
-
-/*
- * Proceed to the network phase.
- */
-static void
-network_phase(unit)
- int unit;
-{
- lcp_options *go = &lcp_gotoptions[unit];
-
- /*
- * If the peer had to authenticate, run the auth-up script now.
- */
- if (go->neg_chap || go->neg_upap) {
- auth_state = s_up;
- if (auth_script_state == s_down && auth_script_pid == 0) {
- auth_script_state = s_up;
- auth_script(_PATH_AUTHUP);
- }
- }
-
-#ifdef CBCP_SUPPORT
- /*
- * If we negotiated callback, do it now.
- */
- if (go->neg_cbcp) {
- new_phase(PHASE_CALLBACK);
- (*cbcp_protent.open)(unit);
- return;
- }
-#endif
-
- /*
- * Process extra options from the secrets file
- */
- if (extra_options) {
- options_from_list(extra_options, 1);
- free_wordlist(extra_options);
- extra_options = 0;
- }
- start_networks();
-}
-
-void
-start_networks()
-{
- int i;
- struct protent *protp;
-
- new_phase(PHASE_NETWORK);
-
-#ifdef HAVE_MULTILINK
- if (multilink) {
- if (mp_join_bundle()) {
- if (updetach && !nodetach)
- detach();
- return;
- }
- }
-#endif /* HAVE_MULTILINK */
-
-#ifdef PPP_FILTER
- if (!demand)
- set_filters(&pass_filter, &active_filter);
-#endif
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (protp->protocol < 0xC000 && protp->enabled_flag
- && protp->open != NULL) {
- (*protp->open)(0);
- if (protp->protocol != PPP_CCP)
- ++num_np_open;
- }
-
- if (num_np_open == 0)
- /* nothing to do */
- lcp_close(0, "No network protocols running");
-}
-
-/*
- * The peer has failed to authenticate himself using `protocol'.
- */
-void
-auth_peer_fail(unit, protocol)
- int unit, protocol;
-{
- /*
- * Authentication failure: take the link down
- */
- lcp_close(unit, "Authentication failed");
- status = EXIT_PEER_AUTH_FAILED;
-}
-
-/*
- * The peer has been successfully authenticated using `protocol'.
- */
-void
-auth_peer_success(unit, protocol, name, namelen)
- int unit, protocol;
- char *name;
- int namelen;
-{
- int bit;
-
- switch (protocol) {
- case PPP_CHAP:
- bit = CHAP_PEER;
- break;
- case PPP_PAP:
- bit = PAP_PEER;
- break;
- default:
- warn("auth_peer_success: unknown protocol %x", protocol);
- return;
- }
-
- /*
- * Save the authenticated name of the peer for later.
- */
- if (namelen > sizeof(peer_authname) - 1)
- namelen = sizeof(peer_authname) - 1;
- BCOPY(name, peer_authname, namelen);
- peer_authname[namelen] = 0;
- script_setenv("PEERNAME", peer_authname, 0);
-
- /*
- * If there is no more authentication still to be done,
- * proceed to the network (or callback) phase.
- */
- if ((auth_pending[unit] &= ~bit) == 0)
- network_phase(unit);
-}
-
-/*
- * We have failed to authenticate ourselves to the peer using `protocol'.
- */
-void
-auth_withpeer_fail(unit, protocol)
- int unit, protocol;
-{
- if (passwd_from_file)
- BZERO(passwd, MAXSECRETLEN);
- /*
- * We've failed to authenticate ourselves to our peer.
- * Some servers keep sending CHAP challenges, but there
- * is no point in persisting without any way to get updated
- * authentication secrets.
- */
- lcp_close(unit, "Failed to authenticate ourselves to peer");
- status = EXIT_AUTH_TOPEER_FAILED;
-}
-
-/*
- * We have successfully authenticated ourselves with the peer using `protocol'.
- */
-void
-auth_withpeer_success(unit, protocol)
- int unit, protocol;
-{
- int bit;
-
- switch (protocol) {
- case PPP_CHAP:
- bit = CHAP_WITHPEER;
- break;
- case PPP_PAP:
- if (passwd_from_file)
- BZERO(passwd, MAXSECRETLEN);
- bit = PAP_WITHPEER;
- break;
- default:
- warn("auth_withpeer_success: unknown protocol %x", protocol);
- bit = 0;
- }
-
- /*
- * If there is no more authentication still being done,
- * proceed to the network (or callback) phase.
- */
- if ((auth_pending[unit] &= ~bit) == 0)
- network_phase(unit);
-}
-
-
-/*
- * np_up - a network protocol has come up.
- */
-void
-np_up(unit, proto)
- int unit, proto;
-{
- int tlim;
-
- if (num_np_up == 0) {
- /*
- * At this point we consider that the link has come up successfully.
- */
- status = EXIT_OK;
- unsuccess = 0;
- new_phase(PHASE_RUNNING);
-
- if (idle_time_hook != 0)
- tlim = (*idle_time_hook)(NULL);
- else
- tlim = idle_time_limit;
- if (tlim > 0)
- TIMEOUT(check_idle, NULL, tlim);
-
- /*
- * Set a timeout to close the connection once the maximum
- * connect time has expired.
- */
- if (maxconnect > 0)
- TIMEOUT(connect_time_expired, 0, maxconnect);
-
- /*
- * Detach now, if the updetach option was given.
- */
- if (updetach && !nodetach)
- detach();
- }
- ++num_np_up;
-}
-
-/*
- * np_down - a network protocol has gone down.
- */
-void
-np_down(unit, proto)
- int unit, proto;
-{
- if (--num_np_up == 0) {
- UNTIMEOUT(check_idle, NULL);
- new_phase(PHASE_NETWORK);
- }
-}
-
-/*
- * np_finished - a network protocol has finished using the link.
- */
-void
-np_finished(unit, proto)
- int unit, proto;
-{
- if (--num_np_open <= 0) {
- /* no further use for the link: shut up shop. */
- lcp_close(0, "No network protocols running");
- }
-}
-
-/*
- * check_idle - check whether the link has been idle for long
- * enough that we can shut it down.
- */
-static void
-check_idle(arg)
- void *arg;
-{
- struct ppp_idle idle;
- time_t itime;
- int tlim;
-
- if (!get_idle_time(0, &idle))
- return;
- if (idle_time_hook != 0) {
- tlim = idle_time_hook(&idle);
- } else {
- itime = MIN(idle.xmit_idle, idle.recv_idle);
- tlim = idle_time_limit - itime;
- }
- if (tlim <= 0) {
- /* link is idle: shut it down. */
- notice("Terminating connection due to lack of activity.");
- lcp_close(0, "Link inactive");
- need_holdoff = 0;
- status = EXIT_IDLE_TIMEOUT;
- } else {
- TIMEOUT(check_idle, NULL, tlim);
- }
-}
-
-/*
- * connect_time_expired - log a message and close the connection.
- */
-static void
-connect_time_expired(arg)
- void *arg;
-{
- info("Connect time expired");
- lcp_close(0, "Connect time expired"); /* Close connection */
- status = EXIT_CONNECT_TIME;
-}
-
-/*
- * auth_check_options - called to check authentication options.
- */
-void
-auth_check_options()
-{
- lcp_options *wo = &lcp_wantoptions[0];
- int can_auth;
- int lacks_ip;
-
- /* Default our_name to hostname, and user to our_name */
- if (our_name[0] == 0 || usehostname)
- strlcpy(our_name, hostname, sizeof(our_name));
- if (user[0] == 0)
- strlcpy(user, our_name, sizeof(user));
-
- /*
- * If we have a default route, require the peer to authenticate
- * unless the noauth option was given or the real user is root.
- */
- if (!auth_required && !allow_any_ip && have_route_to(0) && !privileged) {
- auth_required = 1;
- default_auth = 1;
- }
-
- /* If authentication is required, ask peer for CHAP or PAP. */
- if (auth_required) {
- allow_any_ip = 0;
- if (!wo->neg_chap && !wo->neg_upap) {
- wo->neg_chap = 1;
- wo->neg_upap = 1;
- }
- } else {
- wo->neg_chap = 0;
- wo->neg_upap = 0;
- }
-
- /*
- * Check whether we have appropriate secrets to use
- * to authenticate the peer.
- */
- lacks_ip = 0;
- can_auth = wo->neg_upap && (uselogin || have_pap_secret(&lacks_ip));
- if (!can_auth && wo->neg_chap) {
- can_auth = have_chap_secret((explicit_remote? remote_name: NULL),
- our_name, 1, &lacks_ip);
- }
-
- if (auth_required && !can_auth && noauth_addrs == NULL) {
- if (default_auth) {
- option_error(
-"By default the remote system is required to authenticate itself");
- option_error(
-"(because this system has a default route to the internet)");
- } else if (explicit_remote)
- option_error(
-"The remote system (%s) is required to authenticate itself",
- remote_name);
- else
- option_error(
-"The remote system is required to authenticate itself");
- option_error(
-"but I couldn't find any suitable secret (password) for it to use to do so.");
- if (lacks_ip)
- option_error(
-"(None of the available passwords would let it use an IP address.)");
-
- exit(1);
- }
-}
-
-/*
- * auth_reset - called when LCP is starting negotiations to recheck
- * authentication options, i.e. whether we have appropriate secrets
- * to use for authenticating ourselves and/or the peer.
- */
-void
-auth_reset(unit)
- int unit;
-{
- lcp_options *go = &lcp_gotoptions[unit];
- lcp_options *ao = &lcp_allowoptions[0];
-
- ao->neg_upap = !refuse_pap && (passwd[0] != 0 || get_pap_passwd(NULL));
- ao->neg_chap = !refuse_chap
- && (passwd[0] != 0
- || have_chap_secret(user, (explicit_remote? remote_name: NULL),
- 0, NULL));
-
- if (go->neg_upap && !uselogin && !have_pap_secret(NULL))
- go->neg_upap = 0;
- if (go->neg_chap) {
- if (!have_chap_secret((explicit_remote? remote_name: NULL),
- our_name, 1, NULL))
- go->neg_chap = 0;
- }
-}
-
-
-/*
- * check_passwd - Check the user name and passwd against the PAP secrets
- * file. If requested, also check against the system password database,
- * and login the user if OK.
- *
- * returns:
- * UPAP_AUTHNAK: Authentication failed.
- * UPAP_AUTHACK: Authentication succeeded.
- * In either case, msg points to an appropriate message.
- */
-int
-check_passwd(unit, auser, userlen, apasswd, passwdlen, msg)
- int unit;
- char *auser;
- int userlen;
- char *apasswd;
- int passwdlen;
- char **msg;
-{
- int ret;
- char *filename;
- FILE *f;
- struct wordlist *addrs = NULL, *opts = NULL;
- char passwd[256], user[256];
- char secret[MAXWORDLEN];
- static int attempts = 0;
-
- /*
- * Make copies of apasswd and auser, then null-terminate them.
- * If there are unprintable characters in the password, make
- * them visible.
- */
- slprintf(passwd, sizeof(passwd), "%.*v", passwdlen, apasswd);
- slprintf(user, sizeof(user), "%.*v", userlen, auser);
- *msg = "";
-
- /*
- * Check if a plugin wants to handle this.
- */
- if (pap_auth_hook) {
- ret = (*pap_auth_hook)(user, passwd, msg, &addrs, &opts);
- if (ret >= 0) {
- if (ret)
- set_allowed_addrs(unit, addrs, opts);
- BZERO(passwd, sizeof(passwd));
- if (addrs != 0)
- free_wordlist(addrs);
- return ret? UPAP_AUTHACK: UPAP_AUTHNAK;
- }
- }
-
- /*
- * Open the file of pap secrets and scan for a suitable secret
- * for authenticating this user.
- */
- filename = _PATH_UPAPFILE;
- addrs = opts = NULL;
- ret = UPAP_AUTHNAK;
- f = fopen(filename, "r");
- if (f == NULL) {
- error("Can't open PAP password file %s: %m", filename);
-
- } else {
- check_access(f, filename);
- if (scan_authfile(f, user, our_name, secret, &addrs, &opts, filename) < 0) {
- warn("no PAP secret found for %s", user);
- } else {
- /*
- * If the secret is "@login", it means to check
- * the password against the login database.
- */
- int login_secret = strcmp(secret, "@login") == 0;
- ret = UPAP_AUTHACK;
- if (uselogin || login_secret) {
- /* login option or secret is @login */
- ret = plogin(user, passwd, msg);
- if (ret == UPAP_AUTHNAK)
- warn("PAP login failure for %s", user);
- else
- used_login = 1;
- }
- if (secret[0] != 0 && !login_secret) {
- /* password given in pap-secrets - must match */
- if ((cryptpap || strcmp(passwd, secret) != 0)
- && strcmp(crypt(passwd, secret), secret) != 0) {
- ret = UPAP_AUTHNAK;
- warn("PAP authentication failure for %s", user);
- }
- }
- }
- fclose(f);
- }
-
- if (ret == UPAP_AUTHNAK) {
- if (**msg == 0)
- *msg = "Login incorrect";
- /*
- * XXX can we ever get here more than once??
- * Frustrate passwd stealer programs.
- * Allow 10 tries, but start backing off after 3 (stolen from login).
- * On 10'th, drop the connection.
- */
- if (attempts++ >= 10) {
- warn("%d LOGIN FAILURES ON %s, %s", attempts, devnam, user);
- lcp_close(unit, "login failed");
- }
- if (attempts > 3)
- sleep((u_int) (attempts - 3) * 5);
- if (opts != NULL)
- free_wordlist(opts);
-
- } else {
- attempts = 0; /* Reset count */
- if (**msg == 0)
- *msg = "Login ok";
- set_allowed_addrs(unit, addrs, opts);
- }
-
- if (addrs != NULL)
- free_wordlist(addrs);
- BZERO(passwd, sizeof(passwd));
- BZERO(secret, sizeof(secret));
-
- return ret;
-}
-
-/*
- * This function is needed for PAM.
- */
-
-#ifdef USE_PAM
-/* Static variables used to communicate between the conversation function
- * and the server_login function
- */
-static char *PAM_username;
-static char *PAM_password;
-static int PAM_error = 0;
-static pam_handle_t *pamh = NULL;
-
-/* PAM conversation function
- * Here we assume (for now, at least) that echo on means login name, and
- * echo off means password.
- */
-
-static int PAM_conv (int num_msg, const struct pam_message **msg,
- struct pam_response **resp, void *appdata_ptr)
-{
- int replies = 0;
- struct pam_response *reply = NULL;
-
-#define COPY_STRING(s) (s) ? strdup(s) : NULL
-
- reply = malloc(sizeof(struct pam_response) * num_msg);
- if (!reply) return PAM_CONV_ERR;
-
- for (replies = 0; replies < num_msg; replies++) {
- switch (msg[replies]->msg_style) {
- case PAM_PROMPT_ECHO_ON:
- reply[replies].resp_retcode = PAM_SUCCESS;
- reply[replies].resp = COPY_STRING(PAM_username);
- /* PAM frees resp */
- break;
- case PAM_PROMPT_ECHO_OFF:
- reply[replies].resp_retcode = PAM_SUCCESS;
- reply[replies].resp = COPY_STRING(PAM_password);
- /* PAM frees resp */
- break;
- case PAM_TEXT_INFO:
- /* fall through */
- case PAM_ERROR_MSG:
- /* ignore it, but pam still wants a NULL response... */
- reply[replies].resp_retcode = PAM_SUCCESS;
- reply[replies].resp = NULL;
- break;
- default:
- /* Must be an error of some sort... */
- free (reply);
- PAM_error = 1;
- return PAM_CONV_ERR;
- }
- }
- *resp = reply;
- return PAM_SUCCESS;
-}
-
-static struct pam_conv PAM_conversation = {
- &PAM_conv,
- NULL
-};
-#endif /* USE_PAM */
-
-/*
- * plogin - Check the user name and password against the system
- * password database, and login the user if OK.
- *
- * returns:
- * UPAP_AUTHNAK: Login failed.
- * UPAP_AUTHACK: Login succeeded.
- * In either case, msg points to an appropriate message.
- */
-
-static int
-plogin(user, passwd, msg)
- char *user;
- char *passwd;
- char **msg;
-{
- char *tty;
-
-#ifdef USE_PAM
- int pam_error;
-
- pam_error = pam_start ("ppp", user, &PAM_conversation, &pamh);
- if (pam_error != PAM_SUCCESS) {
- *msg = (char *) pam_strerror (pamh, pam_error);
- reopen_log();
- return UPAP_AUTHNAK;
- }
- /*
- * Define the fields for the credential validation
- */
-
- PAM_username = user;
- PAM_password = passwd;
- PAM_error = 0;
- pam_set_item (pamh, PAM_TTY, devnam); /* this might be useful to some modules */
-
- /*
- * Validate the user
- */
- pam_error = pam_authenticate (pamh, PAM_SILENT);
- if (pam_error == PAM_SUCCESS && !PAM_error) {
- pam_error = pam_acct_mgmt (pamh, PAM_SILENT);
- if (pam_error == PAM_SUCCESS)
- pam_error = pam_open_session (pamh, PAM_SILENT);
- }
-
- *msg = (char *) pam_strerror (pamh, pam_error);
-
- /*
- * Clean up the mess
- */
- reopen_log(); /* apparently the PAM stuff does closelog() */
- PAM_username = NULL;
- PAM_password = NULL;
- if (pam_error != PAM_SUCCESS)
- return UPAP_AUTHNAK;
-#else /* #ifdef USE_PAM */
-
-/*
- * Use the non-PAM methods directly
- */
-
-#ifdef HAS_SHADOW
- struct spwd *spwd;
- struct spwd *getspnam();
-#endif
- struct passwd *pw = getpwnam(user);
-
- endpwent();
- if (pw == NULL)
- return (UPAP_AUTHNAK);
-
-#ifdef HAS_SHADOW
- spwd = getspnam(user);
- endspent();
- if (spwd) {
- /* check the age of the password entry */
- long now = time(NULL) / 86400L;
-
- if ((spwd->sp_expire > 0 && now >= spwd->sp_expire)
- || ((spwd->sp_max >= 0 && spwd->sp_max < 10000)
- && spwd->sp_lstchg >= 0
- && now >= spwd->sp_lstchg + spwd->sp_max)) {
- warn("Password for %s has expired", user);
- return (UPAP_AUTHNAK);
- }
- pw->pw_passwd = spwd->sp_pwdp;
- }
-#endif
-
- /*
- * If no passwd, don't let them login.
- */
- if (pw->pw_passwd == NULL || strlen(pw->pw_passwd) < 2
- || strcmp(crypt(passwd, pw->pw_passwd), pw->pw_passwd) != 0)
- return (UPAP_AUTHNAK);
-
-#endif /* #ifdef USE_PAM */
-
- /*
- * Write a wtmp entry for this user.
- */
-
- tty = devnam;
- if (strncmp(tty, "/dev/", 5) == 0)
- tty += 5;
-// logwtmp(tty, user, remote_name); /* Add wtmp login entry */
-
-#if defined(_PATH_LASTLOG) && !defined(USE_PAM)
- if (pw != (struct passwd *)NULL) {
- struct lastlog ll;
- int fd;
-
- if ((fd = open(_PATH_LASTLOG, O_RDWR, 0)) >= 0) {
- (void)lseek(fd, (off_t)(pw->pw_uid * sizeof(ll)), SEEK_SET);
- memset((void *)&ll, 0, sizeof(ll));
- (void)time(&ll.ll_time);
- (void)strncpy(ll.ll_line, tty, sizeof(ll.ll_line));
- (void)write(fd, (char *)&ll, sizeof(ll));
- (void)close(fd);
- }
- }
-#endif /* _PATH_LASTLOG and not USE_PAM */
-
- info("user %s logged in", user);
- logged_in = 1;
-
- return (UPAP_AUTHACK);
-}
-
-/*
- * plogout - Logout the user.
- */
-static void
-plogout()
-{
-#ifdef USE_PAM
- int pam_error;
-
- if (pamh != NULL) {
- pam_error = pam_close_session (pamh, PAM_SILENT);
- pam_end (pamh, pam_error);
- pamh = NULL;
- }
- /* Apparently the pam stuff does closelog(). */
- reopen_log();
-#else /* ! USE_PAM */
- char *tty;
-
- tty = devnam;
- if (strncmp(tty, "/dev/", 5) == 0)
- tty += 5;
-// logwtmp(tty, "", ""); /* Wipe out utmp logout entry */
-#endif /* ! USE_PAM */
- logged_in = 0;
-}
-
-
-/*
- * null_login - Check if a username of "" and a password of "" are
- * acceptable, and iff so, set the list of acceptable IP addresses
- * and return 1.
- */
-static int
-null_login(unit)
- int unit;
-{
- char *filename;
- FILE *f;
- int i, ret;
- struct wordlist *addrs, *opts;
- char secret[MAXWORDLEN];
-
- /*
- * Open the file of pap secrets and scan for a suitable secret.
- */
- filename = _PATH_UPAPFILE;
- addrs = NULL;
- f = fopen(filename, "r");
- if (f == NULL)
- return 0;
- check_access(f, filename);
-
- i = scan_authfile(f, "", our_name, secret, &addrs, &opts, filename);
- ret = i >= 0 && secret[0] == 0;
- BZERO(secret, sizeof(secret));
-
- if (ret)
- set_allowed_addrs(unit, addrs, opts);
- else if (opts != 0)
- free_wordlist(opts);
- if (addrs != 0)
- free_wordlist(addrs);
-
- fclose(f);
- return ret;
-}
-
-
-/*
- * get_pap_passwd - get a password for authenticating ourselves with
- * our peer using PAP. Returns 1 on success, 0 if no suitable password
- * could be found.
- * Assumes passwd points to MAXSECRETLEN bytes of space (if non-null).
- */
-static int
-get_pap_passwd(passwd)
- char *passwd;
-{
- char *filename;
- FILE *f;
- int ret;
- char secret[MAXWORDLEN];
-
- /*
- * Check whether a plugin wants to supply this.
- */
- if (pap_passwd_hook) {
- ret = (*pap_passwd_hook)(user, passwd);
- if (ret >= 0)
- return ret;
- }
-
- filename = _PATH_UPAPFILE;
- f = fopen(filename, "r");
- if (f == NULL)
- return 0;
- check_access(f, filename);
- ret = scan_authfile(f, user,
- (remote_name[0]? remote_name: NULL),
- secret, NULL, NULL, filename);
- fclose(f);
- if (ret < 0)
- return 0;
- if (passwd != NULL)
- strlcpy(passwd, secret, MAXSECRETLEN);
- BZERO(secret, sizeof(secret));
- return 1;
-}
-
-
-/*
- * have_pap_secret - check whether we have a PAP file with any
- * secrets that we could possibly use for authenticating the peer.
- */
-static int
-have_pap_secret(lacks_ipp)
- int *lacks_ipp;
-{
- FILE *f;
- int ret;
- char *filename;
- struct wordlist *addrs;
-
- /* let the plugin decide, if there is one */
- if (pap_check_hook) {
- ret = (*pap_check_hook)();
- if (ret >= 0)
- return ret;
- }
-
- filename = _PATH_UPAPFILE;
- f = fopen(filename, "r");
- if (f == NULL)
- return 0;
-
- ret = scan_authfile(f, (explicit_remote? remote_name: NULL), our_name,
- NULL, &addrs, NULL, filename);
- fclose(f);
- if (ret >= 0 && !some_ip_ok(addrs)) {
- if (lacks_ipp != 0)
- *lacks_ipp = 1;
- ret = -1;
- }
- if (addrs != 0)
- free_wordlist(addrs);
-
- return ret >= 0;
-}
-
-
-/*
- * have_chap_secret - check whether we have a CHAP file with a
- * secret that we could possibly use for authenticating `client'
- * on `server'. Either can be the null string, meaning we don't
- * know the identity yet.
- */
-static int
-have_chap_secret(client, server, need_ip, lacks_ipp)
- char *client;
- char *server;
- int need_ip;
- int *lacks_ipp;
-{
- FILE *f;
- int ret;
- char *filename;
- struct wordlist *addrs;
-
- filename = _PATH_CHAPFILE;
- f = fopen(filename, "r");
- if (f == NULL)
- return 0;
-
- if (client != NULL && client[0] == 0)
- client = NULL;
- else if (server != NULL && server[0] == 0)
- server = NULL;
-
- ret = scan_authfile(f, client, server, NULL, &addrs, NULL, filename);
- fclose(f);
- if (ret >= 0 && need_ip && !some_ip_ok(addrs)) {
- if (lacks_ipp != 0)
- *lacks_ipp = 1;
- ret = -1;
- }
- if (addrs != 0)
- free_wordlist(addrs);
-
- return ret >= 0;
-}
-
-
-/*
- * get_secret - open the CHAP secret file and return the secret
- * for authenticating the given client on the given server.
- * (We could be either client or server).
- */
-int
-get_secret(unit, client, server, secret, secret_len, am_server)
- int unit;
- char *client;
- char *server;
- char *secret;
- int *secret_len;
- int am_server;
-{
- FILE *f;
- int ret, len;
- char *filename;
- struct wordlist *addrs, *opts;
- char secbuf[MAXWORDLEN];
-
- if (!am_server && passwd[0] != 0) {
- strlcpy(secbuf, passwd, sizeof(secbuf));
- } else {
- filename = _PATH_CHAPFILE;
- addrs = NULL;
- secbuf[0] = 0;
-
- f = fopen(filename, "r");
- if (f == NULL) {
- error("Can't open chap secret file %s: %m", filename);
- return 0;
- }
- check_access(f, filename);
-
- ret = scan_authfile(f, client, server, secbuf, &addrs, &opts, filename);
- fclose(f);
- if (ret < 0)
- return 0;
-
- if (am_server)
- set_allowed_addrs(unit, addrs, opts);
- else if (opts != 0)
- free_wordlist(opts);
- if (addrs != 0)
- free_wordlist(addrs);
- }
-
- len = strlen(secbuf);
- if (len > MAXSECRETLEN) {
- error("Secret for %s on %s is too long", client, server);
- len = MAXSECRETLEN;
- }
- BCOPY(secbuf, secret, len);
- BZERO(secbuf, sizeof(secbuf));
- *secret_len = len;
-
- return 1;
-}
-
-/*
- * set_allowed_addrs() - set the list of allowed addresses.
- * Also looks for `--' indicating options to apply for this peer
- * and leaves the following words in extra_options.
- */
-static void
-set_allowed_addrs(unit, addrs, opts)
- int unit;
- struct wordlist *addrs;
- struct wordlist *opts;
-{
- int n;
- struct wordlist *ap, **plink;
- struct permitted_ip *ip;
- char *ptr_word, *ptr_mask;
- struct hostent *hp;
- u_int32_t a, mask, offset;
- struct ipcp_options *wo = &ipcp_wantoptions[unit];
- u_int32_t suggested_ip = 0;
-
- if (addresses[unit] != NULL)
- free(addresses[unit]);
- addresses[unit] = NULL;
- if (extra_options != NULL)
- free_wordlist(extra_options);
- extra_options = opts;
-
- /*
- * Count the number of IP addresses given.
- */
- n = wordlist_count(addrs) + wordlist_count(noauth_addrs);
- if (n == 0)
- return;
- ip = (struct permitted_ip *) malloc((n + 1) * sizeof(struct permitted_ip));
- if (ip == 0)
- return;
-
- /* temporarily append the noauth_addrs list to addrs */
- for (plink = &addrs; *plink != NULL; plink = &(*plink)->next)
- ;
- *plink = noauth_addrs;
-
- n = 0;
- for (ap = addrs; ap != NULL; ap = ap->next) {
- /* "-" means no addresses authorized, "*" means any address allowed */
- ptr_word = ap->word;
- if (strcmp(ptr_word, "-") == 0)
- break;
- if (strcmp(ptr_word, "*") == 0) {
- ip[n].permit = 1;
- ip[n].base = ip[n].mask = 0;
- ++n;
- break;
- }
-
- ip[n].permit = 1;
- if (*ptr_word == '!') {
- ip[n].permit = 0;
- ++ptr_word;
- }
-
- mask = ~ (u_int32_t) 0;
- offset = 0;
- ptr_mask = strchr (ptr_word, '/');
- if (ptr_mask != NULL) {
- int bit_count;
- char *endp;
-
- bit_count = (int) strtol (ptr_mask+1, &endp, 10);
- if (bit_count <= 0 || bit_count > 32) {
- warn("invalid address length %v in auth. address list",
- ptr_mask+1);
- continue;
- }
- bit_count = 32 - bit_count; /* # bits in host part */
- if (*endp == '+') {
- offset = ifunit + 1;
- ++endp;
- }
- if (*endp != 0) {
- warn("invalid address length syntax: %v", ptr_mask+1);
- continue;
- }
- *ptr_mask = '\0';
- mask <<= bit_count;
- }
-
- hp = gethostbyname(ptr_word);
- if (hp != NULL && hp->h_addrtype == AF_INET) {
- a = *(u_int32_t *)hp->h_addr;
- } else {
- printf("*** getnetbyname is unsupported, please report bug! ***\n");
- return;
- }
-
- if (ptr_mask != NULL)
- *ptr_mask = '/';
-
- if (a == (u_int32_t)-1L) {
- warn("unknown host %s in auth. address list", ap->word);
- continue;
- }
- if (offset != 0) {
- if (offset >= ~mask) {
- warn("interface unit %d too large for subnet %v",
- ifunit, ptr_word);
- continue;
- }
- a = htonl((ntohl(a) & mask) + offset);
- mask = ~(u_int32_t)0;
- }
- ip[n].mask = htonl(mask);
- ip[n].base = a & ip[n].mask;
- ++n;
- if (~mask == 0 && suggested_ip == 0)
- suggested_ip = a;
- }
- *plink = NULL;
-
- ip[n].permit = 0; /* make the last entry forbid all addresses */
- ip[n].base = 0; /* to terminate the list */
- ip[n].mask = 0;
-
- addresses[unit] = ip;
-
- /*
- * If the address given for the peer isn't authorized, or if
- * the user hasn't given one, AND there is an authorized address
- * which is a single host, then use that if we find one.
- */
- if (suggested_ip != 0
- && (wo->hisaddr == 0 || !auth_ip_addr(unit, wo->hisaddr))) {
- wo->hisaddr = suggested_ip;
- /*
- * Do we insist on this address? No, if there are other
- * addresses authorized than the suggested one.
- */
- if (n > 1)
- wo->accept_remote = 1;
- }
-}
-
-/*
- * auth_ip_addr - check whether the peer is authorized to use
- * a given IP address. Returns 1 if authorized, 0 otherwise.
- */
-int
-auth_ip_addr(unit, addr)
- int unit;
- u_int32_t addr;
-{
- int ok;
-
- /* don't allow loopback or multicast address */
- if (bad_ip_adrs(addr))
- return 0;
-
- if (addresses[unit] != NULL) {
- ok = ip_addr_check(addr, addresses[unit]);
- if (ok >= 0)
- return ok;
- }
- if (auth_required)
- return 0; /* no addresses authorized */
- return allow_any_ip || privileged || !have_route_to(addr);
-}
-
-static int
-ip_addr_check(addr, addrs)
- u_int32_t addr;
- struct permitted_ip *addrs;
-{
- for (; ; ++addrs)
- if ((addr & addrs->mask) == addrs->base)
- return addrs->permit;
-}
-
-/*
- * bad_ip_adrs - return 1 if the IP address is one we don't want
- * to use, such as an address in the loopback net or a multicast address.
- * addr is in network byte order.
- */
-int
-bad_ip_adrs(addr)
- u_int32_t addr;
-{
- addr = ntohl(addr);
- return (addr >> IN_CLASSA_NSHIFT) == IN_LOOPBACKNET
- || IN_MULTICAST(addr) || IN_BADCLASS(addr);
-}
-
-/*
- * some_ip_ok - check a wordlist to see if it authorizes any
- * IP address(es).
- */
-static int
-some_ip_ok(addrs)
- struct wordlist *addrs;
-{
- for (; addrs != 0; addrs = addrs->next) {
- if (addrs->word[0] == '-')
- break;
- if (addrs->word[0] != '!')
- return 1; /* some IP address is allowed */
- }
- return 0;
-}
-
-/*
- * check_access - complain if a secret file has too-liberal permissions.
- */
-static void
-check_access(f, filename)
- FILE *f;
- char *filename;
-{
- struct stat sbuf;
-
- if (fstat(fileno(f), &sbuf) < 0) {
- warn("cannot stat secret file %s: %m", filename);
- } else if ((sbuf.st_mode & (S_IRWXG | S_IRWXO)) != 0) {
- warn("Warning - secret file %s has world and/or group access",
- filename);
- }
-}
-
-
-/*
- * scan_authfile - Scan an authorization file for a secret suitable
- * for authenticating `client' on `server'. The return value is -1
- * if no secret is found, otherwise >= 0. The return value has
- * NONWILD_CLIENT set if the secret didn't have "*" for the client, and
- * NONWILD_SERVER set if the secret didn't have "*" for the server.
- * Any following words on the line up to a "--" (i.e. address authorization
- * info) are placed in a wordlist and returned in *addrs. Any
- * following words (extra options) are placed in a wordlist and
- * returned in *opts.
- * We assume secret is NULL or points to MAXWORDLEN bytes of space.
- */
-static int
-scan_authfile(f, client, server, secret, addrs, opts, filename)
- FILE *f;
- char *client;
- char *server;
- char *secret;
- struct wordlist **addrs;
- struct wordlist **opts;
- char *filename;
-{
- int newline, xxx;
- int got_flag, best_flag;
- FILE *sf;
- struct wordlist *ap, *addr_list, *alist, **app;
- char word[MAXWORDLEN];
- char atfile[MAXWORDLEN];
- char lsecret[MAXWORDLEN];
-
- if (addrs != NULL)
- *addrs = NULL;
- if (opts != NULL)
- *opts = NULL;
- addr_list = NULL;
- if (!getword(f, word, &newline, filename))
- return -1; /* file is empty??? */
- newline = 1;
- best_flag = -1;
- for (;;) {
- /*
- * Skip until we find a word at the start of a line.
- */
- while (!newline && getword(f, word, &newline, filename))
- ;
- if (!newline)
- break; /* got to end of file */
-
- /*
- * Got a client - check if it's a match or a wildcard.
- */
- got_flag = 0;
- if (client != NULL && strcmp(word, client) != 0 && !ISWILD(word)) {
- newline = 0;
- continue;
- }
- if (!ISWILD(word))
- got_flag = NONWILD_CLIENT;
-
- /*
- * Now get a server and check if it matches.
- */
- if (!getword(f, word, &newline, filename))
- break;
- if (newline)
- continue;
- if (!ISWILD(word)) {
- if (server != NULL && strcmp(word, server) != 0)
- continue;
- got_flag |= NONWILD_SERVER;
- }
-
- /*
- * Got some sort of a match - see if it's better than what
- * we have already.
- */
- if (got_flag <= best_flag)
- continue;
-
- /*
- * Get the secret.
- */
- if (!getword(f, word, &newline, filename))
- break;
- if (newline)
- continue;
-
- if (secret != NULL) {
- /*
- * Special syntax: @/pathname means read secret from file.
- */
- if (word[0] == '@' && word[1] == '/') {
- strlcpy(atfile, word+1, sizeof(atfile));
- if ((sf = fopen(atfile, "r")) == NULL) {
- warn("can't open indirect secret file %s", atfile);
- continue;
- }
- check_access(sf, atfile);
- if (!getword(sf, word, &xxx, atfile)) {
- warn("no secret in indirect secret file %s", atfile);
- fclose(sf);
- continue;
- }
- fclose(sf);
- }
- strlcpy(lsecret, word, sizeof(lsecret));
- }
-
- /*
- * Now read address authorization info and make a wordlist.
- */
- app = &alist;
- for (;;) {
- if (!getword(f, word, &newline, filename) || newline)
- break;
- ap = (struct wordlist *)
- malloc(sizeof(struct wordlist) + strlen(word) + 1);
- if (ap == NULL)
- novm("authorized addresses");
- ap->word = (char *) (ap + 1);
- strcpy(ap->word, word);
- *app = ap;
- app = &ap->next;
- }
- *app = NULL;
-
- /*
- * This is the best so far; remember it.
- */
- best_flag = got_flag;
- if (addr_list)
- free_wordlist(addr_list);
- addr_list = alist;
- if (secret != NULL)
- strlcpy(secret, lsecret, MAXWORDLEN);
-
- if (!newline)
- break;
- }
-
- /* scan for a -- word indicating the start of options */
- for (app = &addr_list; (ap = *app) != NULL; app = &ap->next)
- if (strcmp(ap->word, "--") == 0)
- break;
- /* ap = start of options */
- if (ap != NULL) {
- ap = ap->next; /* first option */
- free(*app); /* free the "--" word */
- *app = NULL; /* terminate addr list */
- }
- if (opts != NULL)
- *opts = ap;
- else if (ap != NULL)
- free_wordlist(ap);
- if (addrs != NULL)
- *addrs = addr_list;
- else if (addr_list != NULL)
- free_wordlist(addr_list);
-
- return best_flag;
-}
-
-/*
- * wordlist_count - return the number of items in a wordlist
- */
-static int
-wordlist_count(wp)
- struct wordlist *wp;
-{
- int n;
-
- for (n = 0; wp != NULL; wp = wp->next)
- ++n;
- return n;
-}
-
-/*
- * free_wordlist - release memory allocated for a wordlist.
- */
-static void
-free_wordlist(wp)
- struct wordlist *wp;
-{
- struct wordlist *next;
-
- while (wp != NULL) {
- next = wp->next;
- free(wp);
- wp = next;
- }
-}
-
-/*
- * auth_script_done - called when the auth-up or auth-down script
- * has finished.
- */
-static void
-auth_script_done(arg)
- void *arg;
-{
- auth_script_pid = 0;
- switch (auth_script_state) {
- case s_up:
- if (auth_state == s_down) {
- auth_script_state = s_down;
- auth_script(_PATH_AUTHDOWN);
- }
- break;
- case s_down:
- if (auth_state == s_up) {
- auth_script_state = s_up;
- auth_script(_PATH_AUTHUP);
- }
- break;
- }
-}
-
-/*
- * auth_script - execute a script with arguments
- * interface-name peer-name real-user tty speed
- */
-static void
-auth_script(script)
- char *script;
-{
- char strspeed[32];
- struct passwd *pw;
- char struid[32];
- char *user_name;
- char *argv[8];
-
- if ((pw = getpwuid(getuid())) != NULL && pw->pw_name != NULL)
- user_name = pw->pw_name;
- else {
- slprintf(struid, sizeof(struid), "%d", getuid());
- user_name = struid;
- }
- slprintf(strspeed, sizeof(strspeed), "%d", baud_rate);
-
- argv[0] = script;
- argv[1] = ifname;
- argv[2] = peer_authname;
- argv[3] = user_name;
- argv[4] = devnam;
- argv[5] = strspeed;
- argv[6] = NULL;
-
- auth_script_pid = run_program(script, argv, 0, auth_script_done, NULL);
-}
diff --git a/mdk-stage1/ppp/pppd/cbcp.c b/mdk-stage1/ppp/pppd/cbcp.c
deleted file mode 100644
index 8c57b3cde..000000000
--- a/mdk-stage1/ppp/pppd/cbcp.c
+++ /dev/null
@@ -1,456 +0,0 @@
-/*
- * cbcp - Call Back Configuration Protocol.
- *
- * Copyright (c) 1995 Pedro Roque Marques
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Pedro Roque Marques. The name of the author may not be used to
- * endorse or promote products derived from this software without
- * specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <sys/time.h>
-
-#include "pppd.h"
-#include "cbcp.h"
-#include "fsm.h"
-#include "lcp.h"
-
-static const char rcsid[] = RCSID;
-
-/*
- * Options.
- */
-static int setcbcp __P((char **));
-
-static option_t cbcp_option_list[] = {
- { "callback", o_special, setcbcp,
- "Ask for callback", OPT_PRIO | OPT_A2STRVAL, &cbcp[0].us_number },
- { NULL }
-};
-
-/*
- * Protocol entry points.
- */
-static void cbcp_init __P((int unit));
-static void cbcp_open __P((int unit));
-static void cbcp_lowerup __P((int unit));
-static void cbcp_input __P((int unit, u_char *pkt, int len));
-static void cbcp_protrej __P((int unit));
-static int cbcp_printpkt __P((u_char *pkt, int len,
- void (*printer) __P((void *, char *, ...)),
- void *arg));
-
-struct protent cbcp_protent = {
- PPP_CBCP,
- cbcp_init,
- cbcp_input,
- cbcp_protrej,
- cbcp_lowerup,
- NULL,
- cbcp_open,
- NULL,
- cbcp_printpkt,
- NULL,
- 0,
- "CBCP",
- NULL,
- cbcp_option_list,
- NULL,
- NULL,
- NULL
-};
-
-cbcp_state cbcp[NUM_PPP];
-
-/* internal prototypes */
-
-static void cbcp_recvreq __P((cbcp_state *us, char *pckt, int len));
-static void cbcp_resp __P((cbcp_state *us));
-static void cbcp_up __P((cbcp_state *us));
-static void cbcp_recvack __P((cbcp_state *us, char *pckt, int len));
-static void cbcp_send __P((cbcp_state *us, u_char code, u_char *buf, int len));
-
-/* option processing */
-static int
-setcbcp(argv)
- char **argv;
-{
- lcp_wantoptions[0].neg_cbcp = 1;
- cbcp_protent.enabled_flag = 1;
- cbcp[0].us_number = strdup(*argv);
- if (cbcp[0].us_number == 0)
- novm("callback number");
- cbcp[0].us_type |= (1 << CB_CONF_USER);
- cbcp[0].us_type |= (1 << CB_CONF_ADMIN);
- return (1);
-}
-
-/* init state */
-static void
-cbcp_init(iface)
- int iface;
-{
- cbcp_state *us;
-
- us = &cbcp[iface];
- memset(us, 0, sizeof(cbcp_state));
- us->us_unit = iface;
- us->us_type |= (1 << CB_CONF_NO);
-}
-
-/* lower layer is up */
-static void
-cbcp_lowerup(iface)
- int iface;
-{
- cbcp_state *us = &cbcp[iface];
-
- dbglog("cbcp_lowerup");
- dbglog("want: %d", us->us_type);
-
- if (us->us_type == CB_CONF_USER)
- dbglog("phone no: %s", us->us_number);
-}
-
-static void
-cbcp_open(unit)
- int unit;
-{
- dbglog("cbcp_open");
-}
-
-/* process an incomming packet */
-static void
-cbcp_input(unit, inpacket, pktlen)
- int unit;
- u_char *inpacket;
- int pktlen;
-{
- u_char *inp;
- u_char code, id;
- u_short len;
-
- cbcp_state *us = &cbcp[unit];
-
- inp = inpacket;
-
- if (pktlen < CBCP_MINLEN) {
- error("CBCP packet is too small");
- return;
- }
-
- GETCHAR(code, inp);
- GETCHAR(id, inp);
- GETSHORT(len, inp);
-
-#if 0
- if (len > pktlen) {
- error("CBCP packet: invalid length");
- return;
- }
-#endif
-
- len -= CBCP_MINLEN;
-
- switch(code) {
- case CBCP_REQ:
- us->us_id = id;
- cbcp_recvreq(us, inp, len);
- break;
-
- case CBCP_RESP:
- dbglog("CBCP_RESP received");
- break;
-
- case CBCP_ACK:
- if (id != us->us_id)
- dbglog("id doesn't match: expected %d recv %d",
- us->us_id, id);
-
- cbcp_recvack(us, inp, len);
- break;
-
- default:
- break;
- }
-}
-
-/* protocol was rejected by foe */
-void cbcp_protrej(int iface)
-{
-}
-
-char *cbcp_codenames[] = {
- "Request", "Response", "Ack"
-};
-
-char *cbcp_optionnames[] = {
- "NoCallback",
- "UserDefined",
- "AdminDefined",
- "List"
-};
-
-/* pretty print a packet */
-static int
-cbcp_printpkt(p, plen, printer, arg)
- u_char *p;
- int plen;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int code, opt, id, len, olen, delay;
- u_char *pstart;
-
- if (plen < HEADERLEN)
- return 0;
- pstart = p;
- GETCHAR(code, p);
- GETCHAR(id, p);
- GETSHORT(len, p);
- if (len < HEADERLEN || len > plen)
- return 0;
-
- if (code >= 1 && code <= sizeof(cbcp_codenames) / sizeof(char *))
- printer(arg, " %s", cbcp_codenames[code-1]);
- else
- printer(arg, " code=0x%x", code);
-
- printer(arg, " id=0x%x", id);
- len -= HEADERLEN;
-
- switch (code) {
- case CBCP_REQ:
- case CBCP_RESP:
- case CBCP_ACK:
- while(len >= 2) {
- GETCHAR(opt, p);
- GETCHAR(olen, p);
-
- if (olen < 2 || olen > len) {
- break;
- }
-
- printer(arg, " <");
- len -= olen;
-
- if (opt >= 1 && opt <= sizeof(cbcp_optionnames) / sizeof(char *))
- printer(arg, " %s", cbcp_optionnames[opt-1]);
- else
- printer(arg, " option=0x%x", opt);
-
- if (olen > 2) {
- GETCHAR(delay, p);
- printer(arg, " delay = %d", delay);
- }
-
- if (olen > 3) {
- int addrt;
- char str[256];
-
- GETCHAR(addrt, p);
- memcpy(str, p, olen - 4);
- str[olen - 4] = 0;
- printer(arg, " number = %s", str);
- }
- printer(arg, ">");
- break;
- }
-
- default:
- break;
- }
-
- for (; len > 0; --len) {
- GETCHAR(code, p);
- printer(arg, " %.2x", code);
- }
-
- return p - pstart;
-}
-
-/* received CBCP request */
-static void
-cbcp_recvreq(us, pckt, pcktlen)
- cbcp_state *us;
- char *pckt;
- int pcktlen;
-{
- u_char type, opt_len, delay, addr_type;
- char address[256];
- int len = pcktlen;
-
- address[0] = 0;
-
- while (len) {
- dbglog("length: %d", len);
-
- GETCHAR(type, pckt);
- GETCHAR(opt_len, pckt);
-
- if (opt_len > 2)
- GETCHAR(delay, pckt);
-
- us->us_allowed |= (1 << type);
-
- switch(type) {
- case CB_CONF_NO:
- dbglog("no callback allowed");
- break;
-
- case CB_CONF_USER:
- dbglog("user callback allowed");
- if (opt_len > 4) {
- GETCHAR(addr_type, pckt);
- memcpy(address, pckt, opt_len - 4);
- address[opt_len - 4] = 0;
- if (address[0])
- dbglog("address: %s", address);
- }
- break;
-
- case CB_CONF_ADMIN:
- dbglog("user admin defined allowed");
- break;
-
- case CB_CONF_LIST:
- break;
- }
- len -= opt_len;
- }
-
- cbcp_resp(us);
-}
-
-static void
-cbcp_resp(us)
- cbcp_state *us;
-{
- u_char cb_type;
- u_char buf[256];
- u_char *bufp = buf;
- int len = 0;
-
- cb_type = us->us_allowed & us->us_type;
- dbglog("cbcp_resp cb_type=%d", cb_type);
-
-#if 0
- if (!cb_type)
- lcp_down(us->us_unit);
-#endif
-
- if (cb_type & ( 1 << CB_CONF_USER ) ) {
- dbglog("cbcp_resp CONF_USER");
- PUTCHAR(CB_CONF_USER, bufp);
- len = 3 + 1 + strlen(us->us_number) + 1;
- PUTCHAR(len , bufp);
- PUTCHAR(5, bufp); /* delay */
- PUTCHAR(1, bufp);
- BCOPY(us->us_number, bufp, strlen(us->us_number) + 1);
- cbcp_send(us, CBCP_RESP, buf, len);
- return;
- }
-
- if (cb_type & ( 1 << CB_CONF_ADMIN ) ) {
- dbglog("cbcp_resp CONF_ADMIN");
- PUTCHAR(CB_CONF_ADMIN, bufp);
- len = 3;
- PUTCHAR(len, bufp);
- PUTCHAR(5, bufp); /* delay */
- cbcp_send(us, CBCP_RESP, buf, len);
- return;
- }
-
- if (cb_type & ( 1 << CB_CONF_NO ) ) {
- dbglog("cbcp_resp CONF_NO");
- PUTCHAR(CB_CONF_NO, bufp);
- len = 3;
- PUTCHAR(len , bufp);
- PUTCHAR(0, bufp);
- cbcp_send(us, CBCP_RESP, buf, len);
- start_networks();
- return;
- }
-}
-
-static void
-cbcp_send(us, code, buf, len)
- cbcp_state *us;
- u_char code;
- u_char *buf;
- int len;
-{
- u_char *outp;
- int outlen;
-
- outp = outpacket_buf;
-
- outlen = 4 + len;
-
- MAKEHEADER(outp, PPP_CBCP);
-
- PUTCHAR(code, outp);
- PUTCHAR(us->us_id, outp);
- PUTSHORT(outlen, outp);
-
- if (len)
- BCOPY(buf, outp, len);
-
- output(us->us_unit, outpacket_buf, outlen + PPP_HDRLEN);
-}
-
-static void
-cbcp_recvack(us, pckt, len)
- cbcp_state *us;
- char *pckt;
- int len;
-{
- u_char type, delay, addr_type;
- int opt_len;
- char address[256];
-
- if (len) {
- GETCHAR(type, pckt);
- GETCHAR(opt_len, pckt);
-
- if (opt_len > 2)
- GETCHAR(delay, pckt);
-
- if (opt_len > 4) {
- GETCHAR(addr_type, pckt);
- memcpy(address, pckt, opt_len - 4);
- address[opt_len - 4] = 0;
- if (address[0])
- dbglog("peer will call: %s", address);
- }
- if (type == CB_CONF_NO)
- return;
- }
-
- cbcp_up(us);
-}
-
-/* ok peer will do callback */
-static void
-cbcp_up(us)
- cbcp_state *us;
-{
- persist = 0;
- lcp_close(0, "Call me back, please");
- status = EXIT_CALLBACK;
-}
diff --git a/mdk-stage1/ppp/pppd/cbcp.h b/mdk-stage1/ppp/pppd/cbcp.h
deleted file mode 100644
index c2ab3f689..000000000
--- a/mdk-stage1/ppp/pppd/cbcp.h
+++ /dev/null
@@ -1,26 +0,0 @@
-#ifndef CBCP_H
-#define CBCP_H
-
-typedef struct cbcp_state {
- int us_unit; /* Interface unit number */
- u_char us_id; /* Current id */
- u_char us_allowed;
- int us_type;
- char *us_number; /* Telefone Number */
-} cbcp_state;
-
-extern cbcp_state cbcp[];
-
-extern struct protent cbcp_protent;
-
-#define CBCP_MINLEN 4
-
-#define CBCP_REQ 1
-#define CBCP_RESP 2
-#define CBCP_ACK 3
-
-#define CB_CONF_NO 1
-#define CB_CONF_USER 2
-#define CB_CONF_ADMIN 3
-#define CB_CONF_LIST 4
-#endif
diff --git a/mdk-stage1/ppp/pppd/ccp.c b/mdk-stage1/ppp/pppd/ccp.c
deleted file mode 100644
index 7e36e384e..000000000
--- a/mdk-stage1/ppp/pppd/ccp.c
+++ /dev/null
@@ -1,1257 +0,0 @@
-/*
- * ccp.c - PPP Compression Control Protocol.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- */
-
-#define RCSID "$Id$"
-
-#include <stdlib.h>
-#include <string.h>
-
-#include "pppd.h"
-#include "fsm.h"
-#include "ccp.h"
-#include <net/ppp-comp.h>
-
-static const char rcsid[] = RCSID;
-
-/*
- * Unfortunately there is a bug in zlib which means that using a
- * size of 8 (window size = 256) for Deflate compression will cause
- * buffer overruns and kernel crashes in the deflate module.
- * Until this is fixed we only accept sizes in the range 9 .. 15.
- * Thanks to James Carlson for pointing this out.
- */
-#define DEFLATE_MIN_WORKS 9
-
-/*
- * Command-line options.
- */
-static int setbsdcomp __P((char **));
-static int setdeflate __P((char **));
-static char bsd_value[8];
-static char deflate_value[8];
-
-static option_t ccp_option_list[] = {
- { "noccp", o_bool, &ccp_protent.enabled_flag,
- "Disable CCP negotiation" },
- { "-ccp", o_bool, &ccp_protent.enabled_flag,
- "Disable CCP negotiation", OPT_ALIAS },
-
- { "bsdcomp", o_special, (void *)setbsdcomp,
- "Request BSD-Compress packet compression",
- OPT_PRIO | OPT_A2STRVAL | OPT_STATIC, bsd_value },
- { "nobsdcomp", o_bool, &ccp_wantoptions[0].bsd_compress,
- "don't allow BSD-Compress", OPT_PRIOSUB | OPT_A2CLR,
- &ccp_allowoptions[0].bsd_compress },
- { "-bsdcomp", o_bool, &ccp_wantoptions[0].bsd_compress,
- "don't allow BSD-Compress", OPT_ALIAS | OPT_PRIOSUB | OPT_A2CLR,
- &ccp_allowoptions[0].bsd_compress },
-
- { "deflate", o_special, (void *)setdeflate,
- "request Deflate compression",
- OPT_PRIO | OPT_A2STRVAL | OPT_STATIC, deflate_value },
- { "nodeflate", o_bool, &ccp_wantoptions[0].deflate,
- "don't allow Deflate compression", OPT_PRIOSUB | OPT_A2CLR,
- &ccp_allowoptions[0].deflate },
- { "-deflate", o_bool, &ccp_wantoptions[0].deflate,
- "don't allow Deflate compression", OPT_ALIAS | OPT_PRIOSUB | OPT_A2CLR,
- &ccp_allowoptions[0].deflate },
-
- { "nodeflatedraft", o_bool, &ccp_wantoptions[0].deflate_draft,
- "don't use draft deflate #", OPT_A2COPY,
- &ccp_allowoptions[0].deflate_draft },
-
- { "predictor1", o_bool, &ccp_wantoptions[0].predictor_1,
- "request Predictor-1", 1, &ccp_allowoptions[0].predictor_1, OPT_PRIO },
- { "nopredictor1", o_bool, &ccp_wantoptions[0].predictor_1,
- "don't allow Predictor-1", OPT_PRIOSUB | OPT_A2CLR,
- &ccp_allowoptions[0].predictor_1 },
- { "-predictor1", o_bool, &ccp_wantoptions[0].predictor_1,
- "don't allow Predictor-1", OPT_ALIAS | OPT_PRIOSUB | OPT_A2CLR,
- &ccp_allowoptions[0].predictor_1 },
-
- { NULL }
-};
-
-/*
- * Protocol entry points from main code.
- */
-static void ccp_init __P((int unit));
-static void ccp_open __P((int unit));
-static void ccp_close __P((int unit, char *));
-static void ccp_lowerup __P((int unit));
-static void ccp_lowerdown __P((int));
-static void ccp_input __P((int unit, u_char *pkt, int len));
-static void ccp_protrej __P((int unit));
-static int ccp_printpkt __P((u_char *pkt, int len,
- void (*printer) __P((void *, char *, ...)),
- void *arg));
-static void ccp_datainput __P((int unit, u_char *pkt, int len));
-
-struct protent ccp_protent = {
- PPP_CCP,
- ccp_init,
- ccp_input,
- ccp_protrej,
- ccp_lowerup,
- ccp_lowerdown,
- ccp_open,
- ccp_close,
- ccp_printpkt,
- ccp_datainput,
- 1,
- "CCP",
- "Compressed",
- ccp_option_list,
- NULL,
- NULL,
- NULL
-};
-
-fsm ccp_fsm[NUM_PPP];
-ccp_options ccp_wantoptions[NUM_PPP]; /* what to request the peer to use */
-ccp_options ccp_gotoptions[NUM_PPP]; /* what the peer agreed to do */
-ccp_options ccp_allowoptions[NUM_PPP]; /* what we'll agree to do */
-ccp_options ccp_hisoptions[NUM_PPP]; /* what we agreed to do */
-
-/*
- * Callbacks for fsm code.
- */
-static void ccp_resetci __P((fsm *));
-static int ccp_cilen __P((fsm *));
-static void ccp_addci __P((fsm *, u_char *, int *));
-static int ccp_ackci __P((fsm *, u_char *, int));
-static int ccp_nakci __P((fsm *, u_char *, int));
-static int ccp_rejci __P((fsm *, u_char *, int));
-static int ccp_reqci __P((fsm *, u_char *, int *, int));
-static void ccp_up __P((fsm *));
-static void ccp_down __P((fsm *));
-static int ccp_extcode __P((fsm *, int, int, u_char *, int));
-static void ccp_rack_timeout __P((void *));
-static char *method_name __P((ccp_options *, ccp_options *));
-
-static fsm_callbacks ccp_callbacks = {
- ccp_resetci,
- ccp_cilen,
- ccp_addci,
- ccp_ackci,
- ccp_nakci,
- ccp_rejci,
- ccp_reqci,
- ccp_up,
- ccp_down,
- NULL,
- NULL,
- NULL,
- NULL,
- ccp_extcode,
- "CCP"
-};
-
-/*
- * Do we want / did we get any compression?
- */
-#define ANY_COMPRESS(opt) ((opt).deflate || (opt).bsd_compress \
- || (opt).predictor_1 || (opt).predictor_2)
-
-/*
- * Local state (mainly for handling reset-reqs and reset-acks).
- */
-static int ccp_localstate[NUM_PPP];
-#define RACK_PENDING 1 /* waiting for reset-ack */
-#define RREQ_REPEAT 2 /* send another reset-req if no reset-ack */
-
-#define RACKTIMEOUT 1 /* second */
-
-static int all_rejected[NUM_PPP]; /* we rejected all peer's options */
-
-/*
- * Option parsing.
- */
-static int
-setbsdcomp(argv)
- char **argv;
-{
- int rbits, abits;
- char *str, *endp;
-
- str = *argv;
- abits = rbits = strtol(str, &endp, 0);
- if (endp != str && *endp == ',') {
- str = endp + 1;
- abits = strtol(str, &endp, 0);
- }
- if (*endp != 0 || endp == str) {
- option_error("invalid parameter '%s' for bsdcomp option", *argv);
- return 0;
- }
- if ((rbits != 0 && (rbits < BSD_MIN_BITS || rbits > BSD_MAX_BITS))
- || (abits != 0 && (abits < BSD_MIN_BITS || abits > BSD_MAX_BITS))) {
- option_error("bsdcomp option values must be 0 or %d .. %d",
- BSD_MIN_BITS, BSD_MAX_BITS);
- return 0;
- }
- if (rbits > 0) {
- ccp_wantoptions[0].bsd_compress = 1;
- ccp_wantoptions[0].bsd_bits = rbits;
- } else
- ccp_wantoptions[0].bsd_compress = 0;
- if (abits > 0) {
- ccp_allowoptions[0].bsd_compress = 1;
- ccp_allowoptions[0].bsd_bits = abits;
- } else
- ccp_allowoptions[0].bsd_compress = 0;
- slprintf(bsd_value, sizeof(bsd_value),
- rbits == abits? "%d": "%d,%d", rbits, abits);
-
- return 1;
-}
-
-static int
-setdeflate(argv)
- char **argv;
-{
- int rbits, abits;
- char *str, *endp;
-
- str = *argv;
- abits = rbits = strtol(str, &endp, 0);
- if (endp != str && *endp == ',') {
- str = endp + 1;
- abits = strtol(str, &endp, 0);
- }
- if (*endp != 0 || endp == str) {
- option_error("invalid parameter '%s' for deflate option", *argv);
- return 0;
- }
- if ((rbits != 0 && (rbits < DEFLATE_MIN_SIZE || rbits > DEFLATE_MAX_SIZE))
- || (abits != 0 && (abits < DEFLATE_MIN_SIZE
- || abits > DEFLATE_MAX_SIZE))) {
- option_error("deflate option values must be 0 or %d .. %d",
- DEFLATE_MIN_SIZE, DEFLATE_MAX_SIZE);
- return 0;
- }
- if (rbits == DEFLATE_MIN_SIZE || abits == DEFLATE_MIN_SIZE) {
- if (rbits == DEFLATE_MIN_SIZE)
- rbits = DEFLATE_MIN_WORKS;
- if (abits == DEFLATE_MIN_SIZE)
- abits = DEFLATE_MIN_WORKS;
- warn("deflate option value of %d changed to %d to avoid zlib bug",
- DEFLATE_MIN_SIZE, DEFLATE_MIN_WORKS);
- }
- if (rbits > 0) {
- ccp_wantoptions[0].deflate = 1;
- ccp_wantoptions[0].deflate_size = rbits;
- } else
- ccp_wantoptions[0].deflate = 0;
- if (abits > 0) {
- ccp_allowoptions[0].deflate = 1;
- ccp_allowoptions[0].deflate_size = abits;
- } else
- ccp_allowoptions[0].deflate = 0;
- slprintf(deflate_value, sizeof(deflate_value),
- rbits == abits? "%d": "%d,%d", rbits, abits);
-
- return 1;
-}
-
-/*
- * ccp_init - initialize CCP.
- */
-static void
-ccp_init(unit)
- int unit;
-{
- fsm *f = &ccp_fsm[unit];
-
- f->unit = unit;
- f->protocol = PPP_CCP;
- f->callbacks = &ccp_callbacks;
- fsm_init(f);
-
- memset(&ccp_wantoptions[unit], 0, sizeof(ccp_options));
- memset(&ccp_gotoptions[unit], 0, sizeof(ccp_options));
- memset(&ccp_allowoptions[unit], 0, sizeof(ccp_options));
- memset(&ccp_hisoptions[unit], 0, sizeof(ccp_options));
-
- ccp_wantoptions[0].deflate = 1;
- ccp_wantoptions[0].deflate_size = DEFLATE_MAX_SIZE;
- ccp_wantoptions[0].deflate_correct = 1;
- ccp_wantoptions[0].deflate_draft = 1;
- ccp_allowoptions[0].deflate = 1;
- ccp_allowoptions[0].deflate_size = DEFLATE_MAX_SIZE;
- ccp_allowoptions[0].deflate_correct = 1;
- ccp_allowoptions[0].deflate_draft = 1;
-
- ccp_wantoptions[0].bsd_compress = 1;
- ccp_wantoptions[0].bsd_bits = BSD_MAX_BITS;
- ccp_allowoptions[0].bsd_compress = 1;
- ccp_allowoptions[0].bsd_bits = BSD_MAX_BITS;
-
- ccp_allowoptions[0].predictor_1 = 1;
-}
-
-/*
- * ccp_open - CCP is allowed to come up.
- */
-static void
-ccp_open(unit)
- int unit;
-{
- fsm *f = &ccp_fsm[unit];
-
- if (f->state != OPENED)
- ccp_flags_set(unit, 1, 0);
-
- /*
- * Find out which compressors the kernel supports before
- * deciding whether to open in silent mode.
- */
- ccp_resetci(f);
- if (!ANY_COMPRESS(ccp_gotoptions[unit]))
- f->flags |= OPT_SILENT;
-
- fsm_open(f);
-}
-
-/*
- * ccp_close - Terminate CCP.
- */
-static void
-ccp_close(unit, reason)
- int unit;
- char *reason;
-{
- ccp_flags_set(unit, 0, 0);
- fsm_close(&ccp_fsm[unit], reason);
-}
-
-/*
- * ccp_lowerup - we may now transmit CCP packets.
- */
-static void
-ccp_lowerup(unit)
- int unit;
-{
- fsm_lowerup(&ccp_fsm[unit]);
-}
-
-/*
- * ccp_lowerdown - we may not transmit CCP packets.
- */
-static void
-ccp_lowerdown(unit)
- int unit;
-{
- fsm_lowerdown(&ccp_fsm[unit]);
-}
-
-/*
- * ccp_input - process a received CCP packet.
- */
-static void
-ccp_input(unit, p, len)
- int unit;
- u_char *p;
- int len;
-{
- fsm *f = &ccp_fsm[unit];
- int oldstate;
-
- /*
- * Check for a terminate-request so we can print a message.
- */
- oldstate = f->state;
- fsm_input(f, p, len);
- if (oldstate == OPENED && p[0] == TERMREQ && f->state != OPENED)
- notice("Compression disabled by peer.");
-
- /*
- * If we get a terminate-ack and we're not asking for compression,
- * close CCP.
- */
- if (oldstate == REQSENT && p[0] == TERMACK
- && !ANY_COMPRESS(ccp_gotoptions[unit]))
- ccp_close(unit, "No compression negotiated");
-}
-
-/*
- * Handle a CCP-specific code.
- */
-static int
-ccp_extcode(f, code, id, p, len)
- fsm *f;
- int code, id;
- u_char *p;
- int len;
-{
- switch (code) {
- case CCP_RESETREQ:
- if (f->state != OPENED)
- break;
- /* send a reset-ack, which the transmitter will see and
- reset its compression state. */
- fsm_sdata(f, CCP_RESETACK, id, NULL, 0);
- break;
-
- case CCP_RESETACK:
- if (ccp_localstate[f->unit] & RACK_PENDING && id == f->reqid) {
- ccp_localstate[f->unit] &= ~(RACK_PENDING | RREQ_REPEAT);
- UNTIMEOUT(ccp_rack_timeout, f);
- }
- break;
-
- default:
- return 0;
- }
-
- return 1;
-}
-
-/*
- * ccp_protrej - peer doesn't talk CCP.
- */
-static void
-ccp_protrej(unit)
- int unit;
-{
- ccp_flags_set(unit, 0, 0);
- fsm_lowerdown(&ccp_fsm[unit]);
-}
-
-/*
- * ccp_resetci - initialize at start of negotiation.
- */
-static void
-ccp_resetci(f)
- fsm *f;
-{
- ccp_options *go = &ccp_gotoptions[f->unit];
- u_char opt_buf[16];
-
- *go = ccp_wantoptions[f->unit];
- all_rejected[f->unit] = 0;
-
- /*
- * Check whether the kernel knows about the various
- * compression methods we might request.
- */
- if (go->bsd_compress) {
- opt_buf[0] = CI_BSD_COMPRESS;
- opt_buf[1] = CILEN_BSD_COMPRESS;
- opt_buf[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION, BSD_MIN_BITS);
- if (ccp_test(f->unit, opt_buf, CILEN_BSD_COMPRESS, 0) <= 0)
- go->bsd_compress = 0;
- }
- if (go->deflate) {
- if (go->deflate_correct) {
- opt_buf[0] = CI_DEFLATE;
- opt_buf[1] = CILEN_DEFLATE;
- opt_buf[2] = DEFLATE_MAKE_OPT(DEFLATE_MIN_WORKS);
- opt_buf[3] = DEFLATE_CHK_SEQUENCE;
- if (ccp_test(f->unit, opt_buf, CILEN_DEFLATE, 0) <= 0)
- go->deflate_correct = 0;
- }
- if (go->deflate_draft) {
- opt_buf[0] = CI_DEFLATE_DRAFT;
- opt_buf[1] = CILEN_DEFLATE;
- opt_buf[2] = DEFLATE_MAKE_OPT(DEFLATE_MIN_WORKS);
- opt_buf[3] = DEFLATE_CHK_SEQUENCE;
- if (ccp_test(f->unit, opt_buf, CILEN_DEFLATE, 0) <= 0)
- go->deflate_draft = 0;
- }
- if (!go->deflate_correct && !go->deflate_draft)
- go->deflate = 0;
- }
- if (go->predictor_1) {
- opt_buf[0] = CI_PREDICTOR_1;
- opt_buf[1] = CILEN_PREDICTOR_1;
- if (ccp_test(f->unit, opt_buf, CILEN_PREDICTOR_1, 0) <= 0)
- go->predictor_1 = 0;
- }
- if (go->predictor_2) {
- opt_buf[0] = CI_PREDICTOR_2;
- opt_buf[1] = CILEN_PREDICTOR_2;
- if (ccp_test(f->unit, opt_buf, CILEN_PREDICTOR_2, 0) <= 0)
- go->predictor_2 = 0;
- }
-}
-
-/*
- * ccp_cilen - Return total length of our configuration info.
- */
-static int
-ccp_cilen(f)
- fsm *f;
-{
- ccp_options *go = &ccp_gotoptions[f->unit];
-
- return (go->bsd_compress? CILEN_BSD_COMPRESS: 0)
- + (go->deflate? CILEN_DEFLATE: 0)
- + (go->predictor_1? CILEN_PREDICTOR_1: 0)
- + (go->predictor_2? CILEN_PREDICTOR_2: 0);
-}
-
-/*
- * ccp_addci - put our requests in a packet.
- */
-static void
-ccp_addci(f, p, lenp)
- fsm *f;
- u_char *p;
- int *lenp;
-{
- int res;
- ccp_options *go = &ccp_gotoptions[f->unit];
- u_char *p0 = p;
-
- /*
- * Add the compression types that we can receive, in decreasing
- * preference order. Get the kernel to allocate the first one
- * in case it gets Acked.
- */
- if (go->deflate) {
- p[0] = go->deflate_correct? CI_DEFLATE: CI_DEFLATE_DRAFT;
- p[1] = CILEN_DEFLATE;
- p[2] = DEFLATE_MAKE_OPT(go->deflate_size);
- p[3] = DEFLATE_CHK_SEQUENCE;
- for (;;) {
- res = ccp_test(f->unit, p, CILEN_DEFLATE, 0);
- if (res > 0) {
- p += CILEN_DEFLATE;
- break;
- }
- if (res < 0 || go->deflate_size <= DEFLATE_MIN_WORKS) {
- go->deflate = 0;
- break;
- }
- --go->deflate_size;
- p[2] = DEFLATE_MAKE_OPT(go->deflate_size);
- }
- if (p != p0 && go->deflate_correct && go->deflate_draft) {
- p[0] = CI_DEFLATE_DRAFT;
- p[1] = CILEN_DEFLATE;
- p[2] = p[2 - CILEN_DEFLATE];
- p[3] = DEFLATE_CHK_SEQUENCE;
- p += CILEN_DEFLATE;
- }
- }
- if (go->bsd_compress) {
- p[0] = CI_BSD_COMPRESS;
- p[1] = CILEN_BSD_COMPRESS;
- p[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION, go->bsd_bits);
- if (p != p0) {
- p += CILEN_BSD_COMPRESS; /* not the first option */
- } else {
- for (;;) {
- res = ccp_test(f->unit, p, CILEN_BSD_COMPRESS, 0);
- if (res > 0) {
- p += CILEN_BSD_COMPRESS;
- break;
- }
- if (res < 0 || go->bsd_bits <= BSD_MIN_BITS) {
- go->bsd_compress = 0;
- break;
- }
- --go->bsd_bits;
- p[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION, go->bsd_bits);
- }
- }
- }
- /* XXX Should Predictor 2 be preferable to Predictor 1? */
- if (go->predictor_1) {
- p[0] = CI_PREDICTOR_1;
- p[1] = CILEN_PREDICTOR_1;
- if (p == p0 && ccp_test(f->unit, p, CILEN_PREDICTOR_1, 0) <= 0) {
- go->predictor_1 = 0;
- } else {
- p += CILEN_PREDICTOR_1;
- }
- }
- if (go->predictor_2) {
- p[0] = CI_PREDICTOR_2;
- p[1] = CILEN_PREDICTOR_2;
- if (p == p0 && ccp_test(f->unit, p, CILEN_PREDICTOR_2, 0) <= 0) {
- go->predictor_2 = 0;
- } else {
- p += CILEN_PREDICTOR_2;
- }
- }
-
- go->method = (p > p0)? p0[0]: -1;
-
- *lenp = p - p0;
-}
-
-/*
- * ccp_ackci - process a received configure-ack, and return
- * 1 iff the packet was OK.
- */
-static int
-ccp_ackci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- ccp_options *go = &ccp_gotoptions[f->unit];
- u_char *p0 = p;
-
- if (go->deflate) {
- if (len < CILEN_DEFLATE
- || p[0] != (go->deflate_correct? CI_DEFLATE: CI_DEFLATE_DRAFT)
- || p[1] != CILEN_DEFLATE
- || p[2] != DEFLATE_MAKE_OPT(go->deflate_size)
- || p[3] != DEFLATE_CHK_SEQUENCE)
- return 0;
- p += CILEN_DEFLATE;
- len -= CILEN_DEFLATE;
- /* XXX Cope with first/fast ack */
- if (len == 0)
- return 1;
- if (go->deflate_correct && go->deflate_draft) {
- if (len < CILEN_DEFLATE
- || p[0] != CI_DEFLATE_DRAFT
- || p[1] != CILEN_DEFLATE
- || p[2] != DEFLATE_MAKE_OPT(go->deflate_size)
- || p[3] != DEFLATE_CHK_SEQUENCE)
- return 0;
- p += CILEN_DEFLATE;
- len -= CILEN_DEFLATE;
- }
- }
- if (go->bsd_compress) {
- if (len < CILEN_BSD_COMPRESS
- || p[0] != CI_BSD_COMPRESS || p[1] != CILEN_BSD_COMPRESS
- || p[2] != BSD_MAKE_OPT(BSD_CURRENT_VERSION, go->bsd_bits))
- return 0;
- p += CILEN_BSD_COMPRESS;
- len -= CILEN_BSD_COMPRESS;
- /* XXX Cope with first/fast ack */
- if (p == p0 && len == 0)
- return 1;
- }
- if (go->predictor_1) {
- if (len < CILEN_PREDICTOR_1
- || p[0] != CI_PREDICTOR_1 || p[1] != CILEN_PREDICTOR_1)
- return 0;
- p += CILEN_PREDICTOR_1;
- len -= CILEN_PREDICTOR_1;
- /* XXX Cope with first/fast ack */
- if (p == p0 && len == 0)
- return 1;
- }
- if (go->predictor_2) {
- if (len < CILEN_PREDICTOR_2
- || p[0] != CI_PREDICTOR_2 || p[1] != CILEN_PREDICTOR_2)
- return 0;
- p += CILEN_PREDICTOR_2;
- len -= CILEN_PREDICTOR_2;
- /* XXX Cope with first/fast ack */
- if (p == p0 && len == 0)
- return 1;
- }
-
- if (len != 0)
- return 0;
- return 1;
-}
-
-/*
- * ccp_nakci - process received configure-nak.
- * Returns 1 iff the nak was OK.
- */
-static int
-ccp_nakci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- ccp_options *go = &ccp_gotoptions[f->unit];
- ccp_options no; /* options we've seen already */
- ccp_options try; /* options to ask for next time */
-
- memset(&no, 0, sizeof(no));
- try = *go;
-
- if (go->deflate && len >= CILEN_DEFLATE
- && p[0] == (go->deflate_correct? CI_DEFLATE: CI_DEFLATE_DRAFT)
- && p[1] == CILEN_DEFLATE) {
- no.deflate = 1;
- /*
- * Peer wants us to use a different code size or something.
- * Stop asking for Deflate if we don't understand his suggestion.
- */
- if (DEFLATE_METHOD(p[2]) != DEFLATE_METHOD_VAL
- || DEFLATE_SIZE(p[2]) < DEFLATE_MIN_WORKS
- || p[3] != DEFLATE_CHK_SEQUENCE)
- try.deflate = 0;
- else if (DEFLATE_SIZE(p[2]) < go->deflate_size)
- try.deflate_size = DEFLATE_SIZE(p[2]);
- p += CILEN_DEFLATE;
- len -= CILEN_DEFLATE;
- if (go->deflate_correct && go->deflate_draft
- && len >= CILEN_DEFLATE && p[0] == CI_DEFLATE_DRAFT
- && p[1] == CILEN_DEFLATE) {
- p += CILEN_DEFLATE;
- len -= CILEN_DEFLATE;
- }
- }
-
- if (go->bsd_compress && len >= CILEN_BSD_COMPRESS
- && p[0] == CI_BSD_COMPRESS && p[1] == CILEN_BSD_COMPRESS) {
- no.bsd_compress = 1;
- /*
- * Peer wants us to use a different number of bits
- * or a different version.
- */
- if (BSD_VERSION(p[2]) != BSD_CURRENT_VERSION)
- try.bsd_compress = 0;
- else if (BSD_NBITS(p[2]) < go->bsd_bits)
- try.bsd_bits = BSD_NBITS(p[2]);
- p += CILEN_BSD_COMPRESS;
- len -= CILEN_BSD_COMPRESS;
- }
-
- /*
- * Predictor-1 and 2 have no options, so they can't be Naked.
- *
- * There may be remaining options but we ignore them.
- */
-
- if (f->state != OPENED)
- *go = try;
- return 1;
-}
-
-/*
- * ccp_rejci - reject some of our suggested compression methods.
- */
-static int
-ccp_rejci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- ccp_options *go = &ccp_gotoptions[f->unit];
- ccp_options try; /* options to request next time */
-
- try = *go;
-
- /*
- * Cope with empty configure-rejects by ceasing to send
- * configure-requests.
- */
- if (len == 0 && all_rejected[f->unit])
- return -1;
-
- if (go->deflate && len >= CILEN_DEFLATE
- && p[0] == (go->deflate_correct? CI_DEFLATE: CI_DEFLATE_DRAFT)
- && p[1] == CILEN_DEFLATE) {
- if (p[2] != DEFLATE_MAKE_OPT(go->deflate_size)
- || p[3] != DEFLATE_CHK_SEQUENCE)
- return 0; /* Rej is bad */
- if (go->deflate_correct)
- try.deflate_correct = 0;
- else
- try.deflate_draft = 0;
- p += CILEN_DEFLATE;
- len -= CILEN_DEFLATE;
- if (go->deflate_correct && go->deflate_draft
- && len >= CILEN_DEFLATE && p[0] == CI_DEFLATE_DRAFT
- && p[1] == CILEN_DEFLATE) {
- if (p[2] != DEFLATE_MAKE_OPT(go->deflate_size)
- || p[3] != DEFLATE_CHK_SEQUENCE)
- return 0; /* Rej is bad */
- try.deflate_draft = 0;
- p += CILEN_DEFLATE;
- len -= CILEN_DEFLATE;
- }
- if (!try.deflate_correct && !try.deflate_draft)
- try.deflate = 0;
- }
- if (go->bsd_compress && len >= CILEN_BSD_COMPRESS
- && p[0] == CI_BSD_COMPRESS && p[1] == CILEN_BSD_COMPRESS) {
- if (p[2] != BSD_MAKE_OPT(BSD_CURRENT_VERSION, go->bsd_bits))
- return 0;
- try.bsd_compress = 0;
- p += CILEN_BSD_COMPRESS;
- len -= CILEN_BSD_COMPRESS;
- }
- if (go->predictor_1 && len >= CILEN_PREDICTOR_1
- && p[0] == CI_PREDICTOR_1 && p[1] == CILEN_PREDICTOR_1) {
- try.predictor_1 = 0;
- p += CILEN_PREDICTOR_1;
- len -= CILEN_PREDICTOR_1;
- }
- if (go->predictor_2 && len >= CILEN_PREDICTOR_2
- && p[0] == CI_PREDICTOR_2 && p[1] == CILEN_PREDICTOR_2) {
- try.predictor_2 = 0;
- p += CILEN_PREDICTOR_2;
- len -= CILEN_PREDICTOR_2;
- }
-
- if (len != 0)
- return 0;
-
- if (f->state != OPENED)
- *go = try;
-
- return 1;
-}
-
-/*
- * ccp_reqci - processed a received configure-request.
- * Returns CONFACK, CONFNAK or CONFREJ and the packet modified
- * appropriately.
- */
-static int
-ccp_reqci(f, p, lenp, dont_nak)
- fsm *f;
- u_char *p;
- int *lenp;
- int dont_nak;
-{
- int ret, newret, res;
- u_char *p0, *retp;
- int len, clen, type, nb;
- ccp_options *ho = &ccp_hisoptions[f->unit];
- ccp_options *ao = &ccp_allowoptions[f->unit];
-
- ret = CONFACK;
- retp = p0 = p;
- len = *lenp;
-
- memset(ho, 0, sizeof(ccp_options));
- ho->method = (len > 0)? p[0]: -1;
-
- while (len > 0) {
- newret = CONFACK;
- if (len < 2 || p[1] < 2 || p[1] > len) {
- /* length is bad */
- clen = len;
- newret = CONFREJ;
-
- } else {
- type = p[0];
- clen = p[1];
-
- switch (type) {
- case CI_DEFLATE:
- case CI_DEFLATE_DRAFT:
- if (!ao->deflate || clen != CILEN_DEFLATE
- || (!ao->deflate_correct && type == CI_DEFLATE)
- || (!ao->deflate_draft && type == CI_DEFLATE_DRAFT)) {
- newret = CONFREJ;
- break;
- }
-
- ho->deflate = 1;
- ho->deflate_size = nb = DEFLATE_SIZE(p[2]);
- if (DEFLATE_METHOD(p[2]) != DEFLATE_METHOD_VAL
- || p[3] != DEFLATE_CHK_SEQUENCE
- || nb > ao->deflate_size || nb < DEFLATE_MIN_WORKS) {
- newret = CONFNAK;
- if (!dont_nak) {
- p[2] = DEFLATE_MAKE_OPT(ao->deflate_size);
- p[3] = DEFLATE_CHK_SEQUENCE;
- /* fall through to test this #bits below */
- } else
- break;
- }
-
- /*
- * Check whether we can do Deflate with the window
- * size they want. If the window is too big, reduce
- * it until the kernel can cope and nak with that.
- * We only check this for the first option.
- */
- if (p == p0) {
- for (;;) {
- res = ccp_test(f->unit, p, CILEN_DEFLATE, 1);
- if (res > 0)
- break; /* it's OK now */
- if (res < 0 || nb == DEFLATE_MIN_WORKS || dont_nak) {
- newret = CONFREJ;
- p[2] = DEFLATE_MAKE_OPT(ho->deflate_size);
- break;
- }
- newret = CONFNAK;
- --nb;
- p[2] = DEFLATE_MAKE_OPT(nb);
- }
- }
- break;
-
- case CI_BSD_COMPRESS:
- if (!ao->bsd_compress || clen != CILEN_BSD_COMPRESS) {
- newret = CONFREJ;
- break;
- }
-
- ho->bsd_compress = 1;
- ho->bsd_bits = nb = BSD_NBITS(p[2]);
- if (BSD_VERSION(p[2]) != BSD_CURRENT_VERSION
- || nb > ao->bsd_bits || nb < BSD_MIN_BITS) {
- newret = CONFNAK;
- if (!dont_nak) {
- p[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION, ao->bsd_bits);
- /* fall through to test this #bits below */
- } else
- break;
- }
-
- /*
- * Check whether we can do BSD-Compress with the code
- * size they want. If the code size is too big, reduce
- * it until the kernel can cope and nak with that.
- * We only check this for the first option.
- */
- if (p == p0) {
- for (;;) {
- res = ccp_test(f->unit, p, CILEN_BSD_COMPRESS, 1);
- if (res > 0)
- break;
- if (res < 0 || nb == BSD_MIN_BITS || dont_nak) {
- newret = CONFREJ;
- p[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION,
- ho->bsd_bits);
- break;
- }
- newret = CONFNAK;
- --nb;
- p[2] = BSD_MAKE_OPT(BSD_CURRENT_VERSION, nb);
- }
- }
- break;
-
- case CI_PREDICTOR_1:
- if (!ao->predictor_1 || clen != CILEN_PREDICTOR_1) {
- newret = CONFREJ;
- break;
- }
-
- ho->predictor_1 = 1;
- if (p == p0
- && ccp_test(f->unit, p, CILEN_PREDICTOR_1, 1) <= 0) {
- newret = CONFREJ;
- }
- break;
-
- case CI_PREDICTOR_2:
- if (!ao->predictor_2 || clen != CILEN_PREDICTOR_2) {
- newret = CONFREJ;
- break;
- }
-
- ho->predictor_2 = 1;
- if (p == p0
- && ccp_test(f->unit, p, CILEN_PREDICTOR_2, 1) <= 0) {
- newret = CONFREJ;
- }
- break;
-
- default:
- newret = CONFREJ;
- }
- }
-
- if (newret == CONFNAK && dont_nak)
- newret = CONFREJ;
- if (!(newret == CONFACK || (newret == CONFNAK && ret == CONFREJ))) {
- /* we're returning this option */
- if (newret == CONFREJ && ret == CONFNAK)
- retp = p0;
- ret = newret;
- if (p != retp)
- BCOPY(p, retp, clen);
- retp += clen;
- }
-
- p += clen;
- len -= clen;
- }
-
- if (ret != CONFACK) {
- if (ret == CONFREJ && *lenp == retp - p0)
- all_rejected[f->unit] = 1;
- else
- *lenp = retp - p0;
- }
- return ret;
-}
-
-/*
- * Make a string name for a compression method (or 2).
- */
-static char *
-method_name(opt, opt2)
- ccp_options *opt, *opt2;
-{
- static char result[64];
-
- if (!ANY_COMPRESS(*opt))
- return "(none)";
- switch (opt->method) {
- case CI_DEFLATE:
- case CI_DEFLATE_DRAFT:
- if (opt2 != NULL && opt2->deflate_size != opt->deflate_size)
- slprintf(result, sizeof(result), "Deflate%s (%d/%d)",
- (opt->method == CI_DEFLATE_DRAFT? "(old#)": ""),
- opt->deflate_size, opt2->deflate_size);
- else
- slprintf(result, sizeof(result), "Deflate%s (%d)",
- (opt->method == CI_DEFLATE_DRAFT? "(old#)": ""),
- opt->deflate_size);
- break;
- case CI_BSD_COMPRESS:
- if (opt2 != NULL && opt2->bsd_bits != opt->bsd_bits)
- slprintf(result, sizeof(result), "BSD-Compress (%d/%d)",
- opt->bsd_bits, opt2->bsd_bits);
- else
- slprintf(result, sizeof(result), "BSD-Compress (%d)",
- opt->bsd_bits);
- break;
- case CI_PREDICTOR_1:
- return "Predictor 1";
- case CI_PREDICTOR_2:
- return "Predictor 2";
- default:
- slprintf(result, sizeof(result), "Method %d", opt->method);
- }
- return result;
-}
-
-/*
- * CCP has come up - inform the kernel driver and log a message.
- */
-static void
-ccp_up(f)
- fsm *f;
-{
- ccp_options *go = &ccp_gotoptions[f->unit];
- ccp_options *ho = &ccp_hisoptions[f->unit];
- char method1[64];
-
- ccp_flags_set(f->unit, 1, 1);
- if (ANY_COMPRESS(*go)) {
- if (ANY_COMPRESS(*ho)) {
- if (go->method == ho->method) {
- notice("%s compression enabled", method_name(go, ho));
- } else {
- strlcpy(method1, method_name(go, NULL), sizeof(method1));
- notice("%s / %s compression enabled",
- method1, method_name(ho, NULL));
- }
- } else
- notice("%s receive compression enabled", method_name(go, NULL));
- } else if (ANY_COMPRESS(*ho))
- notice("%s transmit compression enabled", method_name(ho, NULL));
-}
-
-/*
- * CCP has gone down - inform the kernel driver.
- */
-static void
-ccp_down(f)
- fsm *f;
-{
- if (ccp_localstate[f->unit] & RACK_PENDING)
- UNTIMEOUT(ccp_rack_timeout, f);
- ccp_localstate[f->unit] = 0;
- ccp_flags_set(f->unit, 1, 0);
-}
-
-/*
- * Print the contents of a CCP packet.
- */
-static char *ccp_codenames[] = {
- "ConfReq", "ConfAck", "ConfNak", "ConfRej",
- "TermReq", "TermAck", "CodeRej",
- NULL, NULL, NULL, NULL, NULL, NULL,
- "ResetReq", "ResetAck",
-};
-
-static int
-ccp_printpkt(p, plen, printer, arg)
- u_char *p;
- int plen;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- u_char *p0, *optend;
- int code, id, len;
- int optlen;
-
- p0 = p;
- if (plen < HEADERLEN)
- return 0;
- code = p[0];
- id = p[1];
- len = (p[2] << 8) + p[3];
- if (len < HEADERLEN || len > plen)
- return 0;
-
- if (code >= 1 && code <= sizeof(ccp_codenames) / sizeof(char *)
- && ccp_codenames[code-1] != NULL)
- printer(arg, " %s", ccp_codenames[code-1]);
- else
- printer(arg, " code=0x%x", code);
- printer(arg, " id=0x%x", id);
- len -= HEADERLEN;
- p += HEADERLEN;
-
- switch (code) {
- case CONFREQ:
- case CONFACK:
- case CONFNAK:
- case CONFREJ:
- /* print list of possible compression methods */
- while (len >= 2) {
- code = p[0];
- optlen = p[1];
- if (optlen < 2 || optlen > len)
- break;
- printer(arg, " <");
- len -= optlen;
- optend = p + optlen;
- switch (code) {
- case CI_DEFLATE:
- case CI_DEFLATE_DRAFT:
- if (optlen >= CILEN_DEFLATE) {
- printer(arg, "deflate%s %d",
- (code == CI_DEFLATE_DRAFT? "(old#)": ""),
- DEFLATE_SIZE(p[2]));
- if (DEFLATE_METHOD(p[2]) != DEFLATE_METHOD_VAL)
- printer(arg, " method %d", DEFLATE_METHOD(p[2]));
- if (p[3] != DEFLATE_CHK_SEQUENCE)
- printer(arg, " check %d", p[3]);
- p += CILEN_DEFLATE;
- }
- break;
- case CI_BSD_COMPRESS:
- if (optlen >= CILEN_BSD_COMPRESS) {
- printer(arg, "bsd v%d %d", BSD_VERSION(p[2]),
- BSD_NBITS(p[2]));
- p += CILEN_BSD_COMPRESS;
- }
- break;
- case CI_PREDICTOR_1:
- if (optlen >= CILEN_PREDICTOR_1) {
- printer(arg, "predictor 1");
- p += CILEN_PREDICTOR_1;
- }
- break;
- case CI_PREDICTOR_2:
- if (optlen >= CILEN_PREDICTOR_2) {
- printer(arg, "predictor 2");
- p += CILEN_PREDICTOR_2;
- }
- break;
- }
- while (p < optend)
- printer(arg, " %.2x", *p++);
- printer(arg, ">");
- }
- break;
-
- case TERMACK:
- case TERMREQ:
- if (len > 0 && *p >= ' ' && *p < 0x7f) {
- print_string((char *)p, len, printer, arg);
- p += len;
- len = 0;
- }
- break;
- }
-
- /* dump out the rest of the packet in hex */
- while (--len >= 0)
- printer(arg, " %.2x", *p++);
-
- return p - p0;
-}
-
-/*
- * We have received a packet that the decompressor failed to
- * decompress. Here we would expect to issue a reset-request, but
- * Motorola has a patent on resetting the compressor as a result of
- * detecting an error in the decompressed data after decompression.
- * (See US patent 5,130,993; international patent publication number
- * WO 91/10289; Australian patent 73296/91.)
- *
- * So we ask the kernel whether the error was detected after
- * decompression; if it was, we take CCP down, thus disabling
- * compression :-(, otherwise we issue the reset-request.
- */
-static void
-ccp_datainput(unit, pkt, len)
- int unit;
- u_char *pkt;
- int len;
-{
- fsm *f;
-
- f = &ccp_fsm[unit];
- if (f->state == OPENED) {
- if (ccp_fatal_error(unit)) {
- /*
- * Disable compression by taking CCP down.
- */
- error("Lost compression sync: disabling compression");
- ccp_close(unit, "Lost compression sync");
- } else {
- /*
- * Send a reset-request to reset the peer's compressor.
- * We don't do that if we are still waiting for an
- * acknowledgement to a previous reset-request.
- */
- if (!(ccp_localstate[f->unit] & RACK_PENDING)) {
- fsm_sdata(f, CCP_RESETREQ, f->reqid = ++f->id, NULL, 0);
- TIMEOUT(ccp_rack_timeout, f, RACKTIMEOUT);
- ccp_localstate[f->unit] |= RACK_PENDING;
- } else
- ccp_localstate[f->unit] |= RREQ_REPEAT;
- }
- }
-}
-
-/*
- * Timeout waiting for reset-ack.
- */
-static void
-ccp_rack_timeout(arg)
- void *arg;
-{
- fsm *f = arg;
-
- if (f->state == OPENED && ccp_localstate[f->unit] & RREQ_REPEAT) {
- fsm_sdata(f, CCP_RESETREQ, f->reqid, NULL, 0);
- TIMEOUT(ccp_rack_timeout, f, RACKTIMEOUT);
- ccp_localstate[f->unit] &= ~RREQ_REPEAT;
- } else
- ccp_localstate[f->unit] &= ~RACK_PENDING;
-}
-
diff --git a/mdk-stage1/ppp/pppd/ccp.h b/mdk-stage1/ppp/pppd/ccp.h
deleted file mode 100644
index 609d858c5..000000000
--- a/mdk-stage1/ppp/pppd/ccp.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * ccp.h - Definitions for PPP Compression Control Protocol.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-typedef struct ccp_options {
- bool bsd_compress; /* do BSD Compress? */
- bool deflate; /* do Deflate? */
- bool predictor_1; /* do Predictor-1? */
- bool predictor_2; /* do Predictor-2? */
- bool deflate_correct; /* use correct code for deflate? */
- bool deflate_draft; /* use draft RFC code for deflate? */
- u_short bsd_bits; /* # bits/code for BSD Compress */
- u_short deflate_size; /* lg(window size) for Deflate */
- short method; /* code for chosen compression method */
-} ccp_options;
-
-extern fsm ccp_fsm[];
-extern ccp_options ccp_wantoptions[];
-extern ccp_options ccp_gotoptions[];
-extern ccp_options ccp_allowoptions[];
-extern ccp_options ccp_hisoptions[];
-
-extern struct protent ccp_protent;
diff --git a/mdk-stage1/ppp/pppd/chap.c b/mdk-stage1/ppp/pppd/chap.c
deleted file mode 100644
index 54c0e0095..000000000
--- a/mdk-stage1/ppp/pppd/chap.c
+++ /dev/null
@@ -1,860 +0,0 @@
-/*
- * chap.c - Challenge Handshake Authentication Protocol.
- *
- * Copyright (c) 1993 The Australian National University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the Australian National University. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Copyright (c) 1991 Gregory M. Christy.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Gregory M. Christy. The name of the author may not be used to
- * endorse or promote products derived from this software without
- * specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-/*
- * TODO:
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <sys/time.h>
-
-#include "pppd.h"
-#include "chap.h"
-#include "md5.h"
-#ifdef CHAPMS
-#include "chap_ms.h"
-#endif
-
-static const char rcsid[] = RCSID;
-
-/*
- * Command-line options.
- */
-static option_t chap_option_list[] = {
- { "chap-restart", o_int, &chap[0].timeouttime,
- "Set timeout for CHAP", OPT_PRIO },
- { "chap-max-challenge", o_int, &chap[0].max_transmits,
- "Set max #xmits for challenge", OPT_PRIO },
- { "chap-interval", o_int, &chap[0].chal_interval,
- "Set interval for rechallenge", OPT_PRIO },
-#ifdef MSLANMAN
- { "ms-lanman", o_bool, &ms_lanman,
- "Use LanMan passwd when using MS-CHAP", 1 },
-#endif
- { NULL }
-};
-
-/*
- * Protocol entry points.
- */
-static void ChapInit __P((int));
-static void ChapLowerUp __P((int));
-static void ChapLowerDown __P((int));
-static void ChapInput __P((int, u_char *, int));
-static void ChapProtocolReject __P((int));
-static int ChapPrintPkt __P((u_char *, int,
- void (*) __P((void *, char *, ...)), void *));
-
-struct protent chap_protent = {
- PPP_CHAP,
- ChapInit,
- ChapInput,
- ChapProtocolReject,
- ChapLowerUp,
- ChapLowerDown,
- NULL,
- NULL,
- ChapPrintPkt,
- NULL,
- 1,
- "CHAP",
- NULL,
- chap_option_list,
- NULL,
- NULL,
- NULL
-};
-
-chap_state chap[NUM_PPP]; /* CHAP state; one for each unit */
-
-static void ChapChallengeTimeout __P((void *));
-static void ChapResponseTimeout __P((void *));
-static void ChapReceiveChallenge __P((chap_state *, u_char *, int, int));
-static void ChapRechallenge __P((void *));
-static void ChapReceiveResponse __P((chap_state *, u_char *, int, int));
-static void ChapReceiveSuccess __P((chap_state *, u_char *, int, int));
-static void ChapReceiveFailure __P((chap_state *, u_char *, int, int));
-static void ChapSendStatus __P((chap_state *, int));
-static void ChapSendChallenge __P((chap_state *));
-static void ChapSendResponse __P((chap_state *));
-static void ChapGenChallenge __P((chap_state *));
-
-extern double drand48 __P((void));
-extern void srand48 __P((long));
-
-/*
- * ChapInit - Initialize a CHAP unit.
- */
-static void
-ChapInit(unit)
- int unit;
-{
- chap_state *cstate = &chap[unit];
-
- BZERO(cstate, sizeof(*cstate));
- cstate->unit = unit;
- cstate->clientstate = CHAPCS_INITIAL;
- cstate->serverstate = CHAPSS_INITIAL;
- cstate->timeouttime = CHAP_DEFTIMEOUT;
- cstate->max_transmits = CHAP_DEFTRANSMITS;
- /* random number generator is initialized in magic_init */
-}
-
-
-/*
- * ChapAuthWithPeer - Authenticate us with our peer (start client).
- *
- */
-void
-ChapAuthWithPeer(unit, our_name, digest)
- int unit;
- char *our_name;
- int digest;
-{
- chap_state *cstate = &chap[unit];
-
- cstate->resp_name = our_name;
- cstate->resp_type = digest;
-
- if (cstate->clientstate == CHAPCS_INITIAL ||
- cstate->clientstate == CHAPCS_PENDING) {
- /* lower layer isn't up - wait until later */
- cstate->clientstate = CHAPCS_PENDING;
- return;
- }
-
- /*
- * We get here as a result of LCP coming up.
- * So even if CHAP was open before, we will
- * have to re-authenticate ourselves.
- */
- cstate->clientstate = CHAPCS_LISTEN;
-}
-
-
-/*
- * ChapAuthPeer - Authenticate our peer (start server).
- */
-void
-ChapAuthPeer(unit, our_name, digest)
- int unit;
- char *our_name;
- int digest;
-{
- chap_state *cstate = &chap[unit];
-
- cstate->chal_name = our_name;
- cstate->chal_type = digest;
-
- if (cstate->serverstate == CHAPSS_INITIAL ||
- cstate->serverstate == CHAPSS_PENDING) {
- /* lower layer isn't up - wait until later */
- cstate->serverstate = CHAPSS_PENDING;
- return;
- }
-
- ChapGenChallenge(cstate);
- ChapSendChallenge(cstate); /* crank it up dude! */
- cstate->serverstate = CHAPSS_INITIAL_CHAL;
-}
-
-
-/*
- * ChapChallengeTimeout - Timeout expired on sending challenge.
- */
-static void
-ChapChallengeTimeout(arg)
- void *arg;
-{
- chap_state *cstate = (chap_state *) arg;
-
- /* if we aren't sending challenges, don't worry. then again we */
- /* probably shouldn't be here either */
- if (cstate->serverstate != CHAPSS_INITIAL_CHAL &&
- cstate->serverstate != CHAPSS_RECHALLENGE)
- return;
-
- if (cstate->chal_transmits >= cstate->max_transmits) {
- /* give up on peer */
- error("Peer failed to respond to CHAP challenge");
- cstate->serverstate = CHAPSS_BADAUTH;
- auth_peer_fail(cstate->unit, PPP_CHAP);
- return;
- }
-
- ChapSendChallenge(cstate); /* Re-send challenge */
-}
-
-
-/*
- * ChapResponseTimeout - Timeout expired on sending response.
- */
-static void
-ChapResponseTimeout(arg)
- void *arg;
-{
- chap_state *cstate = (chap_state *) arg;
-
- /* if we aren't sending a response, don't worry. */
- if (cstate->clientstate != CHAPCS_RESPONSE)
- return;
-
- ChapSendResponse(cstate); /* re-send response */
-}
-
-
-/*
- * ChapRechallenge - Time to challenge the peer again.
- */
-static void
-ChapRechallenge(arg)
- void *arg;
-{
- chap_state *cstate = (chap_state *) arg;
-
- /* if we aren't sending a response, don't worry. */
- if (cstate->serverstate != CHAPSS_OPEN)
- return;
-
- ChapGenChallenge(cstate);
- ChapSendChallenge(cstate);
- cstate->serverstate = CHAPSS_RECHALLENGE;
-}
-
-
-/*
- * ChapLowerUp - The lower layer is up.
- *
- * Start up if we have pending requests.
- */
-static void
-ChapLowerUp(unit)
- int unit;
-{
- chap_state *cstate = &chap[unit];
-
- if (cstate->clientstate == CHAPCS_INITIAL)
- cstate->clientstate = CHAPCS_CLOSED;
- else if (cstate->clientstate == CHAPCS_PENDING)
- cstate->clientstate = CHAPCS_LISTEN;
-
- if (cstate->serverstate == CHAPSS_INITIAL)
- cstate->serverstate = CHAPSS_CLOSED;
- else if (cstate->serverstate == CHAPSS_PENDING) {
- ChapGenChallenge(cstate);
- ChapSendChallenge(cstate);
- cstate->serverstate = CHAPSS_INITIAL_CHAL;
- }
-}
-
-
-/*
- * ChapLowerDown - The lower layer is down.
- *
- * Cancel all timeouts.
- */
-static void
-ChapLowerDown(unit)
- int unit;
-{
- chap_state *cstate = &chap[unit];
-
- /* Timeout(s) pending? Cancel if so. */
- if (cstate->serverstate == CHAPSS_INITIAL_CHAL ||
- cstate->serverstate == CHAPSS_RECHALLENGE)
- UNTIMEOUT(ChapChallengeTimeout, cstate);
- else if (cstate->serverstate == CHAPSS_OPEN
- && cstate->chal_interval != 0)
- UNTIMEOUT(ChapRechallenge, cstate);
- if (cstate->clientstate == CHAPCS_RESPONSE)
- UNTIMEOUT(ChapResponseTimeout, cstate);
-
- cstate->clientstate = CHAPCS_INITIAL;
- cstate->serverstate = CHAPSS_INITIAL;
-}
-
-
-/*
- * ChapProtocolReject - Peer doesn't grok CHAP.
- */
-static void
-ChapProtocolReject(unit)
- int unit;
-{
- chap_state *cstate = &chap[unit];
-
- if (cstate->serverstate != CHAPSS_INITIAL &&
- cstate->serverstate != CHAPSS_CLOSED)
- auth_peer_fail(unit, PPP_CHAP);
- if (cstate->clientstate != CHAPCS_INITIAL &&
- cstate->clientstate != CHAPCS_CLOSED)
- auth_withpeer_fail(unit, PPP_CHAP);
- ChapLowerDown(unit); /* shutdown chap */
-}
-
-
-/*
- * ChapInput - Input CHAP packet.
- */
-static void
-ChapInput(unit, inpacket, packet_len)
- int unit;
- u_char *inpacket;
- int packet_len;
-{
- chap_state *cstate = &chap[unit];
- u_char *inp;
- u_char code, id;
- int len;
-
- /*
- * Parse header (code, id and length).
- * If packet too short, drop it.
- */
- inp = inpacket;
- if (packet_len < CHAP_HEADERLEN) {
- CHAPDEBUG(("ChapInput: rcvd short header."));
- return;
- }
- GETCHAR(code, inp);
- GETCHAR(id, inp);
- GETSHORT(len, inp);
- if (len < CHAP_HEADERLEN) {
- CHAPDEBUG(("ChapInput: rcvd illegal length."));
- return;
- }
- if (len > packet_len) {
- CHAPDEBUG(("ChapInput: rcvd short packet."));
- return;
- }
- len -= CHAP_HEADERLEN;
-
- /*
- * Action depends on code (as in fact it usually does :-).
- */
- switch (code) {
- case CHAP_CHALLENGE:
- ChapReceiveChallenge(cstate, inp, id, len);
- break;
-
- case CHAP_RESPONSE:
- ChapReceiveResponse(cstate, inp, id, len);
- break;
-
- case CHAP_FAILURE:
- ChapReceiveFailure(cstate, inp, id, len);
- break;
-
- case CHAP_SUCCESS:
- ChapReceiveSuccess(cstate, inp, id, len);
- break;
-
- default: /* Need code reject? */
- warn("Unknown CHAP code (%d) received.", code);
- break;
- }
-}
-
-
-/*
- * ChapReceiveChallenge - Receive Challenge and send Response.
- */
-static void
-ChapReceiveChallenge(cstate, inp, id, len)
- chap_state *cstate;
- u_char *inp;
- int id;
- int len;
-{
- int rchallenge_len;
- u_char *rchallenge;
- int secret_len;
- char secret[MAXSECRETLEN];
- char rhostname[256];
- MD5_CTX mdContext;
- u_char hash[MD5_SIGNATURE_SIZE];
-
- if (cstate->clientstate == CHAPCS_CLOSED ||
- cstate->clientstate == CHAPCS_PENDING) {
- CHAPDEBUG(("ChapReceiveChallenge: in state %d", cstate->clientstate));
- return;
- }
-
- if (len < 2) {
- CHAPDEBUG(("ChapReceiveChallenge: rcvd short packet."));
- return;
- }
-
- GETCHAR(rchallenge_len, inp);
- len -= sizeof (u_char) + rchallenge_len; /* now name field length */
- if (len < 0) {
- CHAPDEBUG(("ChapReceiveChallenge: rcvd short packet."));
- return;
- }
- rchallenge = inp;
- INCPTR(rchallenge_len, inp);
-
- if (len >= sizeof(rhostname))
- len = sizeof(rhostname) - 1;
- BCOPY(inp, rhostname, len);
- rhostname[len] = '\000';
-
- /* Microsoft doesn't send their name back in the PPP packet */
- if (explicit_remote || (remote_name[0] != 0 && rhostname[0] == 0)) {
- strlcpy(rhostname, remote_name, sizeof(rhostname));
- CHAPDEBUG(("ChapReceiveChallenge: using '%q' as remote name",
- rhostname));
- }
-
- /* get secret for authenticating ourselves with the specified host */
- if (!get_secret(cstate->unit, cstate->resp_name, rhostname,
- secret, &secret_len, 0)) {
- secret_len = 0; /* assume null secret if can't find one */
- warn("No CHAP secret found for authenticating us to %q", rhostname);
- }
-
- /* cancel response send timeout if necessary */
- if (cstate->clientstate == CHAPCS_RESPONSE)
- UNTIMEOUT(ChapResponseTimeout, cstate);
-
- cstate->resp_id = id;
- cstate->resp_transmits = 0;
-
- /* generate MD based on negotiated type */
- switch (cstate->resp_type) {
-
- case CHAP_DIGEST_MD5:
- MD5Init(&mdContext);
- MD5Update(&mdContext, &cstate->resp_id, 1);
- MD5Update(&mdContext, secret, secret_len);
- MD5Update(&mdContext, rchallenge, rchallenge_len);
- MD5Final(hash, &mdContext);
- BCOPY(hash, cstate->response, MD5_SIGNATURE_SIZE);
- cstate->resp_length = MD5_SIGNATURE_SIZE;
- break;
-
-#ifdef CHAPMS
- case CHAP_MICROSOFT:
- ChapMS(cstate, rchallenge, rchallenge_len, secret, secret_len);
- break;
-#endif
-
- default:
- CHAPDEBUG(("unknown digest type %d", cstate->resp_type));
- return;
- }
-
- BZERO(secret, sizeof(secret));
- ChapSendResponse(cstate);
-}
-
-
-/*
- * ChapReceiveResponse - Receive and process response.
- */
-static void
-ChapReceiveResponse(cstate, inp, id, len)
- chap_state *cstate;
- u_char *inp;
- int id;
- int len;
-{
- u_char *remmd, remmd_len;
- int secret_len, old_state;
- int code;
- char rhostname[256];
- MD5_CTX mdContext;
- char secret[MAXSECRETLEN];
- u_char hash[MD5_SIGNATURE_SIZE];
-
- if (cstate->serverstate == CHAPSS_CLOSED ||
- cstate->serverstate == CHAPSS_PENDING) {
- CHAPDEBUG(("ChapReceiveResponse: in state %d", cstate->serverstate));
- return;
- }
-
- if (id != cstate->chal_id)
- return; /* doesn't match ID of last challenge */
-
- /*
- * If we have received a duplicate or bogus Response,
- * we have to send the same answer (Success/Failure)
- * as we did for the first Response we saw.
- */
- if (cstate->serverstate == CHAPSS_OPEN) {
- ChapSendStatus(cstate, CHAP_SUCCESS);
- return;
- }
- if (cstate->serverstate == CHAPSS_BADAUTH) {
- ChapSendStatus(cstate, CHAP_FAILURE);
- return;
- }
-
- if (len < 2) {
- CHAPDEBUG(("ChapReceiveResponse: rcvd short packet."));
- return;
- }
- GETCHAR(remmd_len, inp); /* get length of MD */
- remmd = inp; /* get pointer to MD */
- INCPTR(remmd_len, inp);
-
- len -= sizeof (u_char) + remmd_len;
- if (len < 0) {
- CHAPDEBUG(("ChapReceiveResponse: rcvd short packet."));
- return;
- }
-
- UNTIMEOUT(ChapChallengeTimeout, cstate);
-
- if (len >= sizeof(rhostname))
- len = sizeof(rhostname) - 1;
- BCOPY(inp, rhostname, len);
- rhostname[len] = '\000';
-
- /*
- * Get secret for authenticating them with us,
- * do the hash ourselves, and compare the result.
- */
- code = CHAP_FAILURE;
- if (!get_secret(cstate->unit, (explicit_remote? remote_name: rhostname),
- cstate->chal_name, secret, &secret_len, 1)) {
- warn("No CHAP secret found for authenticating %q", rhostname);
- } else {
-
- /* generate MD based on negotiated type */
- switch (cstate->chal_type) {
-
- case CHAP_DIGEST_MD5: /* only MD5 is defined for now */
- if (remmd_len != MD5_SIGNATURE_SIZE)
- break; /* it's not even the right length */
- MD5Init(&mdContext);
- MD5Update(&mdContext, &cstate->chal_id, 1);
- MD5Update(&mdContext, secret, secret_len);
- MD5Update(&mdContext, cstate->challenge, cstate->chal_len);
- MD5Final(hash, &mdContext);
-
- /* compare local and remote MDs and send the appropriate status */
- if (memcmp (hash, remmd, MD5_SIGNATURE_SIZE) == 0)
- code = CHAP_SUCCESS; /* they are the same! */
- break;
-
- default:
- CHAPDEBUG(("unknown digest type %d", cstate->chal_type));
- }
- }
-
- BZERO(secret, sizeof(secret));
- ChapSendStatus(cstate, code);
-
- if (code == CHAP_SUCCESS) {
- old_state = cstate->serverstate;
- cstate->serverstate = CHAPSS_OPEN;
- if (old_state == CHAPSS_INITIAL_CHAL) {
- auth_peer_success(cstate->unit, PPP_CHAP, rhostname, len);
- }
- if (cstate->chal_interval != 0)
- TIMEOUT(ChapRechallenge, cstate, cstate->chal_interval);
- notice("CHAP peer authentication succeeded for %q", rhostname);
-
- } else {
- error("CHAP peer authentication failed for remote host %q", rhostname);
- cstate->serverstate = CHAPSS_BADAUTH;
- auth_peer_fail(cstate->unit, PPP_CHAP);
- }
-}
-
-/*
- * ChapReceiveSuccess - Receive Success
- */
-static void
-ChapReceiveSuccess(cstate, inp, id, len)
- chap_state *cstate;
- u_char *inp;
- u_char id;
- int len;
-{
-
- if (cstate->clientstate == CHAPCS_OPEN)
- /* presumably an answer to a duplicate response */
- return;
-
- if (cstate->clientstate != CHAPCS_RESPONSE) {
- /* don't know what this is */
- CHAPDEBUG(("ChapReceiveSuccess: in state %d\n", cstate->clientstate));
- return;
- }
-
- UNTIMEOUT(ChapResponseTimeout, cstate);
-
- /*
- * Print message.
- */
- if (len > 0)
- PRINTMSG(inp, len);
-
- cstate->clientstate = CHAPCS_OPEN;
-
- auth_withpeer_success(cstate->unit, PPP_CHAP);
-}
-
-
-/*
- * ChapReceiveFailure - Receive failure.
- */
-static void
-ChapReceiveFailure(cstate, inp, id, len)
- chap_state *cstate;
- u_char *inp;
- u_char id;
- int len;
-{
- if (cstate->clientstate != CHAPCS_RESPONSE) {
- /* don't know what this is */
- CHAPDEBUG(("ChapReceiveFailure: in state %d\n", cstate->clientstate));
- return;
- }
-
- UNTIMEOUT(ChapResponseTimeout, cstate);
-
- /*
- * Print message.
- */
- if (len > 0)
- PRINTMSG(inp, len);
-
- error("CHAP authentication failed");
- auth_withpeer_fail(cstate->unit, PPP_CHAP);
-}
-
-
-/*
- * ChapSendChallenge - Send an Authenticate challenge.
- */
-static void
-ChapSendChallenge(cstate)
- chap_state *cstate;
-{
- u_char *outp;
- int chal_len, name_len;
- int outlen;
-
- chal_len = cstate->chal_len;
- name_len = strlen(cstate->chal_name);
- outlen = CHAP_HEADERLEN + sizeof (u_char) + chal_len + name_len;
- outp = outpacket_buf;
-
- MAKEHEADER(outp, PPP_CHAP); /* paste in a CHAP header */
-
- PUTCHAR(CHAP_CHALLENGE, outp);
- PUTCHAR(cstate->chal_id, outp);
- PUTSHORT(outlen, outp);
-
- PUTCHAR(chal_len, outp); /* put length of challenge */
- BCOPY(cstate->challenge, outp, chal_len);
- INCPTR(chal_len, outp);
-
- BCOPY(cstate->chal_name, outp, name_len); /* append hostname */
-
- output(cstate->unit, outpacket_buf, outlen + PPP_HDRLEN);
-
- TIMEOUT(ChapChallengeTimeout, cstate, cstate->timeouttime);
- ++cstate->chal_transmits;
-}
-
-
-/*
- * ChapSendStatus - Send a status response (ack or nak).
- */
-static void
-ChapSendStatus(cstate, code)
- chap_state *cstate;
- int code;
-{
- u_char *outp;
- int outlen, msglen;
- char msg[256];
-
- if (code == CHAP_SUCCESS)
- slprintf(msg, sizeof(msg), "Welcome to %s.", hostname);
- else
- slprintf(msg, sizeof(msg), "I don't like you. Go 'way.");
- msglen = strlen(msg);
-
- outlen = CHAP_HEADERLEN + msglen;
- outp = outpacket_buf;
-
- MAKEHEADER(outp, PPP_CHAP); /* paste in a header */
-
- PUTCHAR(code, outp);
- PUTCHAR(cstate->chal_id, outp);
- PUTSHORT(outlen, outp);
- BCOPY(msg, outp, msglen);
- output(cstate->unit, outpacket_buf, outlen + PPP_HDRLEN);
-}
-
-/*
- * ChapGenChallenge is used to generate a pseudo-random challenge string of
- * a pseudo-random length between min_len and max_len. The challenge
- * string and its length are stored in *cstate, and various other fields of
- * *cstate are initialized.
- */
-
-static void
-ChapGenChallenge(cstate)
- chap_state *cstate;
-{
- int chal_len;
- u_char *ptr = cstate->challenge;
- int i;
-
- /* pick a random challenge length between MIN_CHALLENGE_LENGTH and
- MAX_CHALLENGE_LENGTH */
- chal_len = (unsigned) ((drand48() *
- (MAX_CHALLENGE_LENGTH - MIN_CHALLENGE_LENGTH)) +
- MIN_CHALLENGE_LENGTH);
- cstate->chal_len = chal_len;
- cstate->chal_id = ++cstate->id;
- cstate->chal_transmits = 0;
-
- /* generate a random string */
- for (i = 0; i < chal_len; i++)
- *ptr++ = (char) (drand48() * 0xff);
-}
-
-/*
- * ChapSendResponse - send a response packet with values as specified
- * in *cstate.
- */
-/* ARGSUSED */
-static void
-ChapSendResponse(cstate)
- chap_state *cstate;
-{
- u_char *outp;
- int outlen, md_len, name_len;
-
- md_len = cstate->resp_length;
- name_len = strlen(cstate->resp_name);
- outlen = CHAP_HEADERLEN + sizeof (u_char) + md_len + name_len;
- outp = outpacket_buf;
-
- MAKEHEADER(outp, PPP_CHAP);
-
- PUTCHAR(CHAP_RESPONSE, outp); /* we are a response */
- PUTCHAR(cstate->resp_id, outp); /* copy id from challenge packet */
- PUTSHORT(outlen, outp); /* packet length */
-
- PUTCHAR(md_len, outp); /* length of MD */
- BCOPY(cstate->response, outp, md_len); /* copy MD to buffer */
- INCPTR(md_len, outp);
-
- BCOPY(cstate->resp_name, outp, name_len); /* append our name */
-
- /* send the packet */
- output(cstate->unit, outpacket_buf, outlen + PPP_HDRLEN);
-
- cstate->clientstate = CHAPCS_RESPONSE;
- TIMEOUT(ChapResponseTimeout, cstate, cstate->timeouttime);
- ++cstate->resp_transmits;
-}
-
-/*
- * ChapPrintPkt - print the contents of a CHAP packet.
- */
-static char *ChapCodenames[] = {
- "Challenge", "Response", "Success", "Failure"
-};
-
-static int
-ChapPrintPkt(p, plen, printer, arg)
- u_char *p;
- int plen;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int code, id, len;
- int clen, nlen;
- u_char x;
-
- if (plen < CHAP_HEADERLEN)
- return 0;
- GETCHAR(code, p);
- GETCHAR(id, p);
- GETSHORT(len, p);
- if (len < CHAP_HEADERLEN || len > plen)
- return 0;
-
- if (code >= 1 && code <= sizeof(ChapCodenames) / sizeof(char *))
- printer(arg, " %s", ChapCodenames[code-1]);
- else
- printer(arg, " code=0x%x", code);
- printer(arg, " id=0x%x", id);
- len -= CHAP_HEADERLEN;
- switch (code) {
- case CHAP_CHALLENGE:
- case CHAP_RESPONSE:
- if (len < 1)
- break;
- clen = p[0];
- if (len < clen + 1)
- break;
- ++p;
- nlen = len - clen - 1;
- printer(arg, " <");
- for (; clen > 0; --clen) {
- GETCHAR(x, p);
- printer(arg, "%.2x", x);
- }
- printer(arg, ">, name = ");
- print_string((char *)p, nlen, printer, arg);
- break;
- case CHAP_FAILURE:
- case CHAP_SUCCESS:
- printer(arg, " ");
- print_string((char *)p, len, printer, arg);
- break;
- default:
- for (clen = len; clen > 0; --clen) {
- GETCHAR(x, p);
- printer(arg, " %.2x", x);
- }
- }
-
- return len + CHAP_HEADERLEN;
-}
diff --git a/mdk-stage1/ppp/pppd/chap.h b/mdk-stage1/ppp/pppd/chap.h
deleted file mode 100644
index 945d051d0..000000000
--- a/mdk-stage1/ppp/pppd/chap.h
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * chap.h - Challenge Handshake Authentication Protocol definitions.
- *
- * Copyright (c) 1993 The Australian National University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the Australian National University. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Copyright (c) 1991 Gregory M. Christy
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the author.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-#ifndef __CHAP_INCLUDE__
-
-/* Code + ID + length */
-#define CHAP_HEADERLEN 4
-
-/*
- * CHAP codes.
- */
-
-#define CHAP_DIGEST_MD5 5 /* use MD5 algorithm */
-#define MD5_SIGNATURE_SIZE 16 /* 16 bytes in a MD5 message digest */
-#define CHAP_MICROSOFT 0x80 /* use Microsoft-compatible alg. */
-#define MS_CHAP_RESPONSE_LEN 49 /* Response length for MS-CHAP */
-
-#define CHAP_CHALLENGE 1
-#define CHAP_RESPONSE 2
-#define CHAP_SUCCESS 3
-#define CHAP_FAILURE 4
-
-/*
- * Challenge lengths (for challenges we send) and other limits.
- */
-#define MIN_CHALLENGE_LENGTH 16
-#define MAX_CHALLENGE_LENGTH 24
-#define MAX_RESPONSE_LENGTH 64 /* sufficient for MD5 or MS-CHAP */
-
-/*
- * Each interface is described by a chap structure.
- */
-
-typedef struct chap_state {
- int unit; /* Interface unit number */
- int clientstate; /* Client state */
- int serverstate; /* Server state */
- u_char challenge[MAX_CHALLENGE_LENGTH]; /* last challenge string sent */
- u_char chal_len; /* challenge length */
- u_char chal_id; /* ID of last challenge */
- u_char chal_type; /* hash algorithm for challenges */
- u_char id; /* Current id */
- char *chal_name; /* Our name to use with challenge */
- int chal_interval; /* Time until we challenge peer again */
- int timeouttime; /* Timeout time in seconds */
- int max_transmits; /* Maximum # of challenge transmissions */
- int chal_transmits; /* Number of transmissions of challenge */
- int resp_transmits; /* Number of transmissions of response */
- u_char response[MAX_RESPONSE_LENGTH]; /* Response to send */
- u_char resp_length; /* length of response */
- u_char resp_id; /* ID for response messages */
- u_char resp_type; /* hash algorithm for responses */
- char *resp_name; /* Our name to send with response */
-} chap_state;
-
-
-/*
- * Client (peer) states.
- */
-#define CHAPCS_INITIAL 0 /* Lower layer down, not opened */
-#define CHAPCS_CLOSED 1 /* Lower layer up, not opened */
-#define CHAPCS_PENDING 2 /* Auth us to peer when lower up */
-#define CHAPCS_LISTEN 3 /* Listening for a challenge */
-#define CHAPCS_RESPONSE 4 /* Sent response, waiting for status */
-#define CHAPCS_OPEN 5 /* We've received Success */
-
-/*
- * Server (authenticator) states.
- */
-#define CHAPSS_INITIAL 0 /* Lower layer down, not opened */
-#define CHAPSS_CLOSED 1 /* Lower layer up, not opened */
-#define CHAPSS_PENDING 2 /* Auth peer when lower up */
-#define CHAPSS_INITIAL_CHAL 3 /* We've sent the first challenge */
-#define CHAPSS_OPEN 4 /* We've sent a Success msg */
-#define CHAPSS_RECHALLENGE 5 /* We've sent another challenge */
-#define CHAPSS_BADAUTH 6 /* We've sent a Failure msg */
-
-/*
- * Timeouts.
- */
-#define CHAP_DEFTIMEOUT 3 /* Timeout time in seconds */
-#define CHAP_DEFTRANSMITS 10 /* max # times to send challenge */
-
-extern chap_state chap[];
-
-void ChapAuthWithPeer __P((int, char *, int));
-void ChapAuthPeer __P((int, char *, int));
-
-extern struct protent chap_protent;
-
-#define __CHAP_INCLUDE__
-#endif /* __CHAP_INCLUDE__ */
diff --git a/mdk-stage1/ppp/pppd/chap_ms.c b/mdk-stage1/ppp/pppd/chap_ms.c
deleted file mode 100644
index 81a57bb5a..000000000
--- a/mdk-stage1/ppp/pppd/chap_ms.c
+++ /dev/null
@@ -1,338 +0,0 @@
-/*
- * chap_ms.c - Microsoft MS-CHAP compatible implementation.
- *
- * Copyright (c) 1995 Eric Rosenquist, Strata Software Limited.
- * http://www.strataware.com/
- *
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Eric Rosenquist. The name of the author may not be used to
- * endorse or promote products derived from this software without
- * specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/*
- * Modifications by Lauri Pesonen / lpesonen@clinet.fi, april 1997
- *
- * Implemented LANManager type password response to MS-CHAP challenges.
- * Now pppd provides both NT style and LANMan style blocks, and the
- * prefered is set by option "ms-lanman". Default is to use NT.
- * The hash text (StdText) was taken from Win95 RASAPI32.DLL.
- *
- * You should also use DOMAIN\\USERNAME as described in README.MSCHAP80
- */
-
-#define RCSID "$Id$"
-
-#ifdef CHAPMS
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <sys/types.h>
-#include <sys/time.h>
-#include <unistd.h>
-#ifdef HAVE_CRYPT_H
-#include <crypt.h>
-#endif
-
-#include "pppd.h"
-#include "chap.h"
-#include "chap_ms.h"
-#include "md4.h"
-
-#ifndef USE_CRYPT
-#include <des.h>
-#endif
-
-static const char rcsid[] = RCSID;
-
-typedef struct {
- u_char LANManResp[24];
- u_char NTResp[24];
- u_char UseNT; /* If 1, ignore the LANMan response field */
-} MS_ChapResponse;
-/* We use MS_CHAP_RESPONSE_LEN, rather than sizeof(MS_ChapResponse),
- in case this struct gets padded. */
-
-
-static void ChallengeResponse __P((u_char *, u_char *, u_char *));
-static void DesEncrypt __P((u_char *, u_char *, u_char *));
-static void MakeKey __P((u_char *, u_char *));
-static u_char Get7Bits __P((u_char *, int));
-static void ChapMS_NT __P((char *, int, char *, int, MS_ChapResponse *));
-#ifdef MSLANMAN
-static void ChapMS_LANMan __P((char *, int, char *, int, MS_ChapResponse *));
-#endif
-
-#ifdef USE_CRYPT
-static void Expand __P((u_char *, u_char *));
-static void Collapse __P((u_char *, u_char *));
-#endif
-
-#ifdef MSLANMAN
-bool ms_lanman = 0; /* Use LanMan password instead of NT */
- /* Has meaning only with MS-CHAP challenges */
-#endif
-
-static void
-ChallengeResponse(challenge, pwHash, response)
- u_char *challenge; /* IN 8 octets */
- u_char *pwHash; /* IN 16 octets */
- u_char *response; /* OUT 24 octets */
-{
- char ZPasswordHash[21];
-
- BZERO(ZPasswordHash, sizeof(ZPasswordHash));
- BCOPY(pwHash, ZPasswordHash, MD4_SIGNATURE_SIZE);
-
-#if 0
- dbglog("ChallengeResponse - ZPasswordHash %.*B",
- sizeof(ZPasswordHash), ZPasswordHash);
-#endif
-
- DesEncrypt(challenge, ZPasswordHash + 0, response + 0);
- DesEncrypt(challenge, ZPasswordHash + 7, response + 8);
- DesEncrypt(challenge, ZPasswordHash + 14, response + 16);
-
-#if 0
- dbglog("ChallengeResponse - response %.24B", response);
-#endif
-}
-
-
-#ifdef USE_CRYPT
-static void
-DesEncrypt(clear, key, cipher)
- u_char *clear; /* IN 8 octets */
- u_char *key; /* IN 7 octets */
- u_char *cipher; /* OUT 8 octets */
-{
- u_char des_key[8];
- u_char crypt_key[66];
- u_char des_input[66];
-
- MakeKey(key, des_key);
-
- Expand(des_key, crypt_key);
- setkey(crypt_key);
-
-#if 0
- CHAPDEBUG((LOG_INFO, "DesEncrypt: 8 octet input : %.8B", clear));
-#endif
-
- Expand(clear, des_input);
- encrypt(des_input, 0);
- Collapse(des_input, cipher);
-
-#if 0
- CHAPDEBUG((LOG_INFO, "DesEncrypt: 8 octet output: %.8B", cipher));
-#endif
-}
-
-#else /* USE_CRYPT */
-
-static void
-DesEncrypt(clear, key, cipher)
- u_char *clear; /* IN 8 octets */
- u_char *key; /* IN 7 octets */
- u_char *cipher; /* OUT 8 octets */
-{
- des_cblock des_key;
- des_key_schedule key_schedule;
-
- MakeKey(key, des_key);
-
- des_set_key(&des_key, key_schedule);
-
-#if 0
- CHAPDEBUG((LOG_INFO, "DesEncrypt: 8 octet input : %.8B", clear));
-#endif
-
- des_ecb_encrypt((des_cblock *)clear, (des_cblock *)cipher, key_schedule, 1);
-
-#if 0
- CHAPDEBUG((LOG_INFO, "DesEncrypt: 8 octet output: %.8B", cipher));
-#endif
-}
-
-#endif /* USE_CRYPT */
-
-
-static u_char Get7Bits(input, startBit)
- u_char *input;
- int startBit;
-{
- register unsigned int word;
-
- word = (unsigned)input[startBit / 8] << 8;
- word |= (unsigned)input[startBit / 8 + 1];
-
- word >>= 15 - (startBit % 8 + 7);
-
- return word & 0xFE;
-}
-
-#ifdef USE_CRYPT
-
-/* in == 8-byte string (expanded version of the 56-bit key)
- * out == 64-byte string where each byte is either 1 or 0
- * Note that the low-order "bit" is always ignored by by setkey()
- */
-static void Expand(in, out)
- u_char *in;
- u_char *out;
-{
- int j, c;
- int i;
-
- for(i = 0; i < 64; in++){
- c = *in;
- for(j = 7; j >= 0; j--)
- *out++ = (c >> j) & 01;
- i += 8;
- }
-}
-
-/* The inverse of Expand
- */
-static void Collapse(in, out)
- u_char *in;
- u_char *out;
-{
- int j;
- int i;
- unsigned int c;
-
- for (i = 0; i < 64; i += 8, out++) {
- c = 0;
- for (j = 7; j >= 0; j--, in++)
- c |= *in << j;
- *out = c & 0xff;
- }
-}
-#endif
-
-static void MakeKey(key, des_key)
- u_char *key; /* IN 56 bit DES key missing parity bits */
- u_char *des_key; /* OUT 64 bit DES key with parity bits added */
-{
- des_key[0] = Get7Bits(key, 0);
- des_key[1] = Get7Bits(key, 7);
- des_key[2] = Get7Bits(key, 14);
- des_key[3] = Get7Bits(key, 21);
- des_key[4] = Get7Bits(key, 28);
- des_key[5] = Get7Bits(key, 35);
- des_key[6] = Get7Bits(key, 42);
- des_key[7] = Get7Bits(key, 49);
-
-#ifndef USE_CRYPT
- des_set_odd_parity((des_cblock *)des_key);
-#endif
-
-#if 0
- CHAPDEBUG((LOG_INFO, "MakeKey: 56-bit input : %.7B", key));
- CHAPDEBUG((LOG_INFO, "MakeKey: 64-bit output: %.8B", des_key));
-#endif
-}
-
-static void
-ChapMS_NT(rchallenge, rchallenge_len, secret, secret_len, response)
- char *rchallenge;
- int rchallenge_len;
- char *secret;
- int secret_len;
- MS_ChapResponse *response;
-{
- int i;
-#ifdef __NetBSD__
- /* NetBSD uses the libc md4 routines which take bytes instead of bits */
- int mdlen = secret_len * 2;
-#else
- int mdlen = secret_len * 2 * 8;
-#endif
- MD4_CTX md4Context;
- u_char hash[MD4_SIGNATURE_SIZE];
- u_char unicodePassword[MAX_NT_PASSWORD * 2];
-
- /* Initialize the Unicode version of the secret (== password). */
- /* This implicitly supports 8-bit ISO8859/1 characters. */
- BZERO(unicodePassword, sizeof(unicodePassword));
- for (i = 0; i < secret_len; i++)
- unicodePassword[i * 2] = (u_char)secret[i];
-
- MD4Init(&md4Context);
- MD4Update(&md4Context, unicodePassword, mdlen);
-
- MD4Final(hash, &md4Context); /* Tell MD4 we're done */
-
- ChallengeResponse(rchallenge, hash, response->NTResp);
-}
-
-#ifdef MSLANMAN
-static u_char *StdText = (u_char *)"KGS!@#$%"; /* key from rasapi32.dll */
-
-static void
-ChapMS_LANMan(rchallenge, rchallenge_len, secret, secret_len, response)
- char *rchallenge;
- int rchallenge_len;
- char *secret;
- int secret_len;
- MS_ChapResponse *response;
-{
- int i;
- u_char UcasePassword[MAX_NT_PASSWORD]; /* max is actually 14 */
- u_char PasswordHash[MD4_SIGNATURE_SIZE];
-
- /* LANMan password is case insensitive */
- BZERO(UcasePassword, sizeof(UcasePassword));
- for (i = 0; i < secret_len; i++)
- UcasePassword[i] = (u_char)toupper(secret[i]);
- DesEncrypt( StdText, UcasePassword + 0, PasswordHash + 0 );
- DesEncrypt( StdText, UcasePassword + 7, PasswordHash + 8 );
- ChallengeResponse(rchallenge, PasswordHash, response->LANManResp);
-}
-#endif
-
-void
-ChapMS(cstate, rchallenge, rchallenge_len, secret, secret_len)
- chap_state *cstate;
- char *rchallenge;
- int rchallenge_len;
- char *secret;
- int secret_len;
-{
- MS_ChapResponse response;
-
-#if 0
- CHAPDEBUG((LOG_INFO, "ChapMS: secret is '%.*s'", secret_len, secret));
-#endif
- BZERO(&response, sizeof(response));
-
- /* Calculate both always */
- ChapMS_NT(rchallenge, rchallenge_len, secret, secret_len, &response);
-
-#ifdef MSLANMAN
- ChapMS_LANMan(rchallenge, rchallenge_len, secret, secret_len, &response);
-
- /* prefered method is set by option */
- response.UseNT = !ms_lanman;
-#else
- response.UseNT = 1;
-#endif
-
- BCOPY(&response, cstate->response, MS_CHAP_RESPONSE_LEN);
- cstate->resp_length = MS_CHAP_RESPONSE_LEN;
-}
-
-#endif /* CHAPMS */
diff --git a/mdk-stage1/ppp/pppd/chap_ms.h b/mdk-stage1/ppp/pppd/chap_ms.h
deleted file mode 100644
index fad2755c8..000000000
--- a/mdk-stage1/ppp/pppd/chap_ms.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * chap.h - Challenge Handshake Authentication Protocol definitions.
- *
- * Copyright (c) 1995 Eric Rosenquist, Strata Software Limited.
- * http://www.strataware.com/
- *
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Eric Rosenquist. The name of the author may not be used to
- * endorse or promote products derived from this software without
- * specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-#ifndef __CHAPMS_INCLUDE__
-
-#define MD4_SIGNATURE_SIZE 16 /* 16 bytes in a MD4 message digest */
-#define MAX_NT_PASSWORD 256 /* Maximum number of (Unicode) chars in an NT password */
-
-void ChapMS __P((chap_state *, char *, int, char *, int));
-
-#define __CHAPMS_INCLUDE__
-#endif /* __CHAPMS_INCLUDE__ */
diff --git a/mdk-stage1/ppp/pppd/demand.c b/mdk-stage1/ppp/pppd/demand.c
deleted file mode 100644
index 9a740be8d..000000000
--- a/mdk-stage1/ppp/pppd/demand.c
+++ /dev/null
@@ -1,351 +0,0 @@
-/*
- * demand.c - Support routines for demand-dialling.
- *
- * Copyright (c) 1993 The Australian National University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the Australian National University. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <netdb.h>
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <sys/time.h>
-#include <sys/resource.h>
-#include <sys/stat.h>
-#include <sys/socket.h>
-#ifdef PPP_FILTER
-#include <net/if.h>
-#include <net/bpf.h>
-#include <pcap.h>
-#endif
-
-#include "pppd.h"
-#include "fsm.h"
-#include "ipcp.h"
-#include "lcp.h"
-
-static const char rcsid[] = RCSID;
-
-char *frame;
-int framelen;
-int framemax;
-int escape_flag;
-int flush_flag;
-int fcs;
-
-struct packet {
- int length;
- struct packet *next;
- unsigned char data[1];
-};
-
-struct packet *pend_q;
-struct packet *pend_qtail;
-
-static int active_packet __P((unsigned char *, int));
-
-/*
- * demand_conf - configure the interface for doing dial-on-demand.
- */
-void
-demand_conf()
-{
- int i;
- struct protent *protp;
-
-/* framemax = lcp_allowoptions[0].mru;
- if (framemax < PPP_MRU) */
- framemax = PPP_MRU;
- framemax += PPP_HDRLEN + PPP_FCSLEN;
- frame = malloc(framemax);
- if (frame == NULL)
- novm("demand frame");
- framelen = 0;
- pend_q = NULL;
- escape_flag = 0;
- flush_flag = 0;
- fcs = PPP_INITFCS;
-
- netif_set_mtu(0, MIN(lcp_allowoptions[0].mru, PPP_MRU));
- ppp_send_config(0, PPP_MRU, (u_int32_t) 0, 0, 0);
- ppp_recv_config(0, PPP_MRU, (u_int32_t) 0, 0, 0);
-
-#ifdef PPP_FILTER
- set_filters(&pass_filter, &active_filter);
-#endif
-
- /*
- * Call the demand_conf procedure for each protocol that's got one.
- */
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (protp->enabled_flag && protp->demand_conf != NULL)
- if (!((*protp->demand_conf)(0)))
- die(1);
-}
-
-
-/*
- * demand_block - set each network protocol to block further packets.
- */
-void
-demand_block()
-{
- int i;
- struct protent *protp;
-
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (protp->enabled_flag && protp->demand_conf != NULL)
- sifnpmode(0, protp->protocol & ~0x8000, NPMODE_QUEUE);
- get_loop_output();
-}
-
-/*
- * demand_discard - set each network protocol to discard packets
- * with an error.
- */
-void
-demand_discard()
-{
- struct packet *pkt, *nextpkt;
- int i;
- struct protent *protp;
-
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (protp->enabled_flag && protp->demand_conf != NULL)
- sifnpmode(0, protp->protocol & ~0x8000, NPMODE_ERROR);
- get_loop_output();
-
- /* discard all saved packets */
- for (pkt = pend_q; pkt != NULL; pkt = nextpkt) {
- nextpkt = pkt->next;
- free(pkt);
- }
- pend_q = NULL;
- framelen = 0;
- flush_flag = 0;
- escape_flag = 0;
- fcs = PPP_INITFCS;
-}
-
-/*
- * demand_unblock - set each enabled network protocol to pass packets.
- */
-void
-demand_unblock()
-{
- int i;
- struct protent *protp;
-
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (protp->enabled_flag && protp->demand_conf != NULL)
- sifnpmode(0, protp->protocol & ~0x8000, NPMODE_PASS);
-}
-
-/*
- * FCS lookup table as calculated by genfcstab.
- */
-static u_short fcstab[256] = {
- 0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf,
- 0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5, 0xe97e, 0xf8f7,
- 0x1081, 0x0108, 0x3393, 0x221a, 0x56a5, 0x472c, 0x75b7, 0x643e,
- 0x9cc9, 0x8d40, 0xbfdb, 0xae52, 0xdaed, 0xcb64, 0xf9ff, 0xe876,
- 0x2102, 0x308b, 0x0210, 0x1399, 0x6726, 0x76af, 0x4434, 0x55bd,
- 0xad4a, 0xbcc3, 0x8e58, 0x9fd1, 0xeb6e, 0xfae7, 0xc87c, 0xd9f5,
- 0x3183, 0x200a, 0x1291, 0x0318, 0x77a7, 0x662e, 0x54b5, 0x453c,
- 0xbdcb, 0xac42, 0x9ed9, 0x8f50, 0xfbef, 0xea66, 0xd8fd, 0xc974,
- 0x4204, 0x538d, 0x6116, 0x709f, 0x0420, 0x15a9, 0x2732, 0x36bb,
- 0xce4c, 0xdfc5, 0xed5e, 0xfcd7, 0x8868, 0x99e1, 0xab7a, 0xbaf3,
- 0x5285, 0x430c, 0x7197, 0x601e, 0x14a1, 0x0528, 0x37b3, 0x263a,
- 0xdecd, 0xcf44, 0xfddf, 0xec56, 0x98e9, 0x8960, 0xbbfb, 0xaa72,
- 0x6306, 0x728f, 0x4014, 0x519d, 0x2522, 0x34ab, 0x0630, 0x17b9,
- 0xef4e, 0xfec7, 0xcc5c, 0xddd5, 0xa96a, 0xb8e3, 0x8a78, 0x9bf1,
- 0x7387, 0x620e, 0x5095, 0x411c, 0x35a3, 0x242a, 0x16b1, 0x0738,
- 0xffcf, 0xee46, 0xdcdd, 0xcd54, 0xb9eb, 0xa862, 0x9af9, 0x8b70,
- 0x8408, 0x9581, 0xa71a, 0xb693, 0xc22c, 0xd3a5, 0xe13e, 0xf0b7,
- 0x0840, 0x19c9, 0x2b52, 0x3adb, 0x4e64, 0x5fed, 0x6d76, 0x7cff,
- 0x9489, 0x8500, 0xb79b, 0xa612, 0xd2ad, 0xc324, 0xf1bf, 0xe036,
- 0x18c1, 0x0948, 0x3bd3, 0x2a5a, 0x5ee5, 0x4f6c, 0x7df7, 0x6c7e,
- 0xa50a, 0xb483, 0x8618, 0x9791, 0xe32e, 0xf2a7, 0xc03c, 0xd1b5,
- 0x2942, 0x38cb, 0x0a50, 0x1bd9, 0x6f66, 0x7eef, 0x4c74, 0x5dfd,
- 0xb58b, 0xa402, 0x9699, 0x8710, 0xf3af, 0xe226, 0xd0bd, 0xc134,
- 0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c,
- 0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028, 0x91a1, 0xa33a, 0xb2b3,
- 0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb,
- 0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9, 0x8120, 0xb3bb, 0xa232,
- 0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a,
- 0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1,
- 0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb, 0x0e70, 0x1ff9,
- 0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab, 0xa022, 0x92b9, 0x8330,
- 0x7bc7, 0x6a4e, 0x58d5, 0x495c, 0x3de3, 0x2c6a, 0x1ef1, 0x0f78
-};
-
-/*
- * loop_chars - process characters received from the loopback.
- * Calls loop_frame when a complete frame has been accumulated.
- * Return value is 1 if we need to bring up the link, 0 otherwise.
- */
-int
-loop_chars(p, n)
- unsigned char *p;
- int n;
-{
- int c, rv;
-
- rv = 0;
- for (; n > 0; --n) {
- c = *p++;
- if (c == PPP_FLAG) {
- if (!escape_flag && !flush_flag
- && framelen > 2 && fcs == PPP_GOODFCS) {
- framelen -= 2;
- if (loop_frame((unsigned char *)frame, framelen))
- rv = 1;
- }
- framelen = 0;
- flush_flag = 0;
- escape_flag = 0;
- fcs = PPP_INITFCS;
- continue;
- }
- if (flush_flag)
- continue;
- if (escape_flag) {
- c ^= PPP_TRANS;
- escape_flag = 0;
- } else if (c == PPP_ESCAPE) {
- escape_flag = 1;
- continue;
- }
- if (framelen >= framemax) {
- flush_flag = 1;
- continue;
- }
- frame[framelen++] = c;
- fcs = PPP_FCS(fcs, c);
- }
- return rv;
-}
-
-/*
- * loop_frame - given a frame obtained from the loopback,
- * decide whether to bring up the link or not, and, if we want
- * to transmit this frame later, put it on the pending queue.
- * Return value is 1 if we need to bring up the link, 0 otherwise.
- * We assume that the kernel driver has already applied the
- * pass_filter, so we won't get packets it rejected.
- * We apply the active_filter to see if we want this packet to
- * bring up the link.
- */
-int
-loop_frame(frame, len)
- unsigned char *frame;
- int len;
-{
- struct packet *pkt;
-
- /* dbglog("from loop: %P", frame, len); */
- if (len < PPP_HDRLEN)
- return 0;
- if ((PPP_PROTOCOL(frame) & 0x8000) != 0)
- return 0; /* shouldn't get any of these anyway */
- if (!active_packet(frame, len))
- return 0;
-
- pkt = (struct packet *) malloc(sizeof(struct packet) + len);
- if (pkt != NULL) {
- pkt->length = len;
- pkt->next = NULL;
- memcpy(pkt->data, frame, len);
- if (pend_q == NULL)
- pend_q = pkt;
- else
- pend_qtail->next = pkt;
- pend_qtail = pkt;
- }
- return 1;
-}
-
-/*
- * demand_rexmit - Resend all those frames which we got via the
- * loopback, now that the real serial link is up.
- */
-void
-demand_rexmit(proto)
- int proto;
-{
- struct packet *pkt, *prev, *nextpkt;
-
- prev = NULL;
- pkt = pend_q;
- pend_q = NULL;
- for (; pkt != NULL; pkt = nextpkt) {
- nextpkt = pkt->next;
- if (PPP_PROTOCOL(pkt->data) == proto) {
- output(0, pkt->data, pkt->length);
- free(pkt);
- } else {
- if (prev == NULL)
- pend_q = pkt;
- else
- prev->next = pkt;
- prev = pkt;
- }
- }
- pend_qtail = prev;
- if (prev != NULL)
- prev->next = NULL;
-}
-
-/*
- * Scan a packet to decide whether it is an "active" packet,
- * that is, whether it is worth bringing up the link for.
- */
-static int
-active_packet(p, len)
- unsigned char *p;
- int len;
-{
- int proto, i;
- struct protent *protp;
-
- if (len < PPP_HDRLEN)
- return 0;
- proto = PPP_PROTOCOL(p);
-#ifdef PPP_FILTER
- if (pass_filter.bf_len != 0
- && bpf_filter(pass_filter.bf_insns, p, len, len) == 0)
- return 0;
- if (active_filter.bf_len != 0
- && bpf_filter(active_filter.bf_insns, p, len, len) == 0)
- return 0;
-#endif
- for (i = 0; (protp = protocols[i]) != NULL; ++i) {
- if (protp->protocol < 0xC000 && (protp->protocol & ~0x8000) == proto) {
- if (!protp->enabled_flag)
- return 0;
- if (protp->active_pkt == NULL)
- return 1;
- return (*protp->active_pkt)(p, len);
- }
- }
- return 0; /* not a supported protocol !!?? */
-}
diff --git a/mdk-stage1/ppp/pppd/eui64.c b/mdk-stage1/ppp/pppd/eui64.c
deleted file mode 100644
index 7f3176035..000000000
--- a/mdk-stage1/ppp/pppd/eui64.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- eui64.c - EUI64 routines for IPv6CP.
- Copyright (C) 1999 Tommi Komulainen <Tommi.Komulainen@iki.fi>
-
- Redistribution and use in source and binary forms are permitted
- provided that the above copyright notice and this paragraph are
- duplicated in all such forms and that any documentation,
- advertising materials, and other materials related to such
- distribution and use acknowledge that the software was developed
- by Tommi Komulainen. The name of the author may not be used
- to endorse or promote products derived from this software without
- specific prior written permission.
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
-
- $Id$
-*/
-
-#define RCSID "$Id$"
-
-#include "pppd.h"
-
-static const char rcsid[] = RCSID;
-
-/*
- * eui64_ntoa - Make an ascii representation of an interface identifier
- */
-char *
-eui64_ntoa(e)
- eui64_t e;
-{
- static char buf[32];
-
- snprintf(buf, 32, "%02x%02x:%02x%02x:%02x%02x:%02x%02x",
- e.e8[0], e.e8[1], e.e8[2], e.e8[3],
- e.e8[4], e.e8[5], e.e8[6], e.e8[7]);
- return buf;
-}
diff --git a/mdk-stage1/ppp/pppd/eui64.h b/mdk-stage1/ppp/pppd/eui64.h
deleted file mode 100644
index ca4445345..000000000
--- a/mdk-stage1/ppp/pppd/eui64.h
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- eui64.h - EUI64 routines for IPv6CP.
- Copyright (C) 1999 Tommi Komulainen <Tommi.Komulainen@iki.fi>
-
- Redistribution and use in source and binary forms are permitted
- provided that the above copyright notice and this paragraph are
- duplicated in all such forms and that any documentation,
- advertising materials, and other materials related to such
- distribution and use acknowledge that the software was developed
- by Tommi Komulainen. The name of the author may not be used
- to endorse or promote products derived from this software without
- specific prior written permission.
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
-
- $Id$
-*/
-
-#ifndef __EUI64_H__
-#define __EUI64_H__
-
-#if !defined(INET6)
-#error "this file should only be included when INET6 is defined"
-#endif /* not defined(INET6) */
-
-#if defined(SOL2)
-#include <netinet/in.h>
-
-typedef union {
- uint8_t e8[8]; /* lower 64-bit IPv6 address */
- uint32_t e32[2]; /* lower 64-bit IPv6 address */
-} eui64_t;
-
-/*
- * Declare the two below, since in.h only defines them when _KERNEL
- * is declared - which shouldn't be true when dealing with user-land programs
- */
-#define s6_addr8 _S6_un._S6_u8
-#define s6_addr32 _S6_un._S6_u32
-
-#else /* else if not defined(SOL2) */
-
-/*
- * TODO:
- *
- * Maybe this should be done by processing struct in6_addr directly...
- */
-typedef union
-{
- u_int8_t e8[8];
- u_int16_t e16[4];
- u_int32_t e32[2];
-} eui64_t;
-
-#endif /* defined(SOL2) */
-
-#define eui64_iszero(e) (((e).e32[0] | (e).e32[1]) == 0)
-#define eui64_equals(e, o) (((e).e32[0] == (o).e32[0]) && \
- ((e).e32[1] == (o).e32[1]))
-#define eui64_zero(e) (e).e32[0] = (e).e32[1] = 0;
-
-#define eui64_copy(s, d) memcpy(&(d), &(s), sizeof(eui64_t))
-
-#define eui64_magic(e) do { \
- (e).e32[0] = magic(); \
- (e).e32[1] = magic(); \
- (e).e8[0] &= ~2; \
- } while (0)
-#define eui64_magic_nz(x) do { \
- eui64_magic(x); \
- } while (eui64_iszero(x))
-#define eui64_magic_ne(x, y) do { \
- eui64_magic(x); \
- } while (eui64_equals(x, y))
-
-#define eui64_get(ll, cp) do { \
- eui64_copy((*cp), (ll)); \
- (cp) += sizeof(eui64_t); \
- } while (0)
-
-#define eui64_put(ll, cp) do { \
- eui64_copy((ll), (*cp)); \
- (cp) += sizeof(eui64_t); \
- } while (0)
-
-#define eui64_set32(e, l) do { \
- (e).e32[0] = 0; \
- (e).e32[1] = htonl(l); \
- } while (0)
-#define eui64_setlo32(e, l) eui64_set32(e, l)
-
-char *eui64_ntoa __P((eui64_t)); /* Returns ascii representation of id */
-
-#endif /* __EUI64_H__ */
-
diff --git a/mdk-stage1/ppp/pppd/fsm.c b/mdk-stage1/ppp/pppd/fsm.c
deleted file mode 100644
index 07a8c11f1..000000000
--- a/mdk-stage1/ppp/pppd/fsm.c
+++ /dev/null
@@ -1,762 +0,0 @@
-/*
- * fsm.c - {Link, IP} Control Protocol Finite State Machine.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-/*
- * TODO:
- * Randomize fsm id on link/init.
- * Deal with variable outgoing MTU.
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-
-#include "pppd.h"
-#include "fsm.h"
-
-static const char rcsid[] = RCSID;
-
-static void fsm_timeout __P((void *));
-static void fsm_rconfreq __P((fsm *, int, u_char *, int));
-static void fsm_rconfack __P((fsm *, int, u_char *, int));
-static void fsm_rconfnakrej __P((fsm *, int, int, u_char *, int));
-static void fsm_rtermreq __P((fsm *, int, u_char *, int));
-static void fsm_rtermack __P((fsm *));
-static void fsm_rcoderej __P((fsm *, u_char *, int));
-static void fsm_sconfreq __P((fsm *, int));
-
-#define PROTO_NAME(f) ((f)->callbacks->proto_name)
-
-int peer_mru[NUM_PPP];
-
-
-/*
- * fsm_init - Initialize fsm.
- *
- * Initialize fsm state.
- */
-void
-fsm_init(f)
- fsm *f;
-{
- f->state = INITIAL;
- f->flags = 0;
- f->id = 0; /* XXX Start with random id? */
- f->timeouttime = DEFTIMEOUT;
- f->maxconfreqtransmits = DEFMAXCONFREQS;
- f->maxtermtransmits = DEFMAXTERMREQS;
- f->maxnakloops = DEFMAXNAKLOOPS;
- f->term_reason_len = 0;
-}
-
-
-/*
- * fsm_lowerup - The lower layer is up.
- */
-void
-fsm_lowerup(f)
- fsm *f;
-{
- switch( f->state ){
- case INITIAL:
- f->state = CLOSED;
- break;
-
- case STARTING:
- if( f->flags & OPT_SILENT )
- f->state = STOPPED;
- else {
- /* Send an initial configure-request */
- fsm_sconfreq(f, 0);
- f->state = REQSENT;
- }
- break;
-
- default:
- FSMDEBUG(("%s: Up event in state %d!", PROTO_NAME(f), f->state));
- }
-}
-
-
-/*
- * fsm_lowerdown - The lower layer is down.
- *
- * Cancel all timeouts and inform upper layers.
- */
-void
-fsm_lowerdown(f)
- fsm *f;
-{
- switch( f->state ){
- case CLOSED:
- f->state = INITIAL;
- break;
-
- case STOPPED:
- f->state = STARTING;
- if( f->callbacks->starting )
- (*f->callbacks->starting)(f);
- break;
-
- case CLOSING:
- f->state = INITIAL;
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- break;
-
- case STOPPING:
- case REQSENT:
- case ACKRCVD:
- case ACKSENT:
- f->state = STARTING;
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- break;
-
- case OPENED:
- if( f->callbacks->down )
- (*f->callbacks->down)(f);
- f->state = STARTING;
- break;
-
- default:
- FSMDEBUG(("%s: Down event in state %d!", PROTO_NAME(f), f->state));
- }
-}
-
-
-/*
- * fsm_open - Link is allowed to come up.
- */
-void
-fsm_open(f)
- fsm *f;
-{
- switch( f->state ){
- case INITIAL:
- f->state = STARTING;
- if( f->callbacks->starting )
- (*f->callbacks->starting)(f);
- break;
-
- case CLOSED:
- if( f->flags & OPT_SILENT )
- f->state = STOPPED;
- else {
- /* Send an initial configure-request */
- fsm_sconfreq(f, 0);
- f->state = REQSENT;
- }
- break;
-
- case CLOSING:
- f->state = STOPPING;
- /* fall through */
- case STOPPED:
- case OPENED:
- if( f->flags & OPT_RESTART ){
- fsm_lowerdown(f);
- fsm_lowerup(f);
- }
- break;
- }
-}
-
-
-/*
- * fsm_close - Start closing connection.
- *
- * Cancel timeouts and either initiate close or possibly go directly to
- * the CLOSED state.
- */
-void
-fsm_close(f, reason)
- fsm *f;
- char *reason;
-{
- f->term_reason = reason;
- f->term_reason_len = (reason == NULL? 0: strlen(reason));
- switch( f->state ){
- case STARTING:
- f->state = INITIAL;
- break;
- case STOPPED:
- f->state = CLOSED;
- break;
- case STOPPING:
- f->state = CLOSING;
- break;
-
- case REQSENT:
- case ACKRCVD:
- case ACKSENT:
- case OPENED:
- if( f->state != OPENED )
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- else if( f->callbacks->down )
- (*f->callbacks->down)(f); /* Inform upper layers we're down */
-
- /* Init restart counter, send Terminate-Request */
- f->retransmits = f->maxtermtransmits;
- fsm_sdata(f, TERMREQ, f->reqid = ++f->id,
- (u_char *) f->term_reason, f->term_reason_len);
- TIMEOUT(fsm_timeout, f, f->timeouttime);
- --f->retransmits;
-
- f->state = CLOSING;
- break;
- }
-}
-
-
-/*
- * fsm_timeout - Timeout expired.
- */
-static void
-fsm_timeout(arg)
- void *arg;
-{
- fsm *f = (fsm *) arg;
-
- switch (f->state) {
- case CLOSING:
- case STOPPING:
- if( f->retransmits <= 0 ){
- /*
- * We've waited for an ack long enough. Peer probably heard us.
- */
- f->state = (f->state == CLOSING)? CLOSED: STOPPED;
- if( f->callbacks->finished )
- (*f->callbacks->finished)(f);
- } else {
- /* Send Terminate-Request */
- fsm_sdata(f, TERMREQ, f->reqid = ++f->id,
- (u_char *) f->term_reason, f->term_reason_len);
- TIMEOUT(fsm_timeout, f, f->timeouttime);
- --f->retransmits;
- }
- break;
-
- case REQSENT:
- case ACKRCVD:
- case ACKSENT:
- if (f->retransmits <= 0) {
- warn("%s: timeout sending Config-Requests\n", PROTO_NAME(f));
- f->state = STOPPED;
- if( (f->flags & OPT_PASSIVE) == 0 && f->callbacks->finished )
- (*f->callbacks->finished)(f);
-
- } else {
- /* Retransmit the configure-request */
- if (f->callbacks->retransmit)
- (*f->callbacks->retransmit)(f);
- fsm_sconfreq(f, 1); /* Re-send Configure-Request */
- if( f->state == ACKRCVD )
- f->state = REQSENT;
- }
- break;
-
- default:
- FSMDEBUG(("%s: Timeout event in state %d!", PROTO_NAME(f), f->state));
- }
-}
-
-
-/*
- * fsm_input - Input packet.
- */
-void
-fsm_input(f, inpacket, l)
- fsm *f;
- u_char *inpacket;
- int l;
-{
- u_char *inp;
- u_char code, id;
- int len;
-
- /*
- * Parse header (code, id and length).
- * If packet too short, drop it.
- */
- inp = inpacket;
- if (l < HEADERLEN) {
- FSMDEBUG(("fsm_input(%x): Rcvd short header.", f->protocol));
- return;
- }
- GETCHAR(code, inp);
- GETCHAR(id, inp);
- GETSHORT(len, inp);
- if (len < HEADERLEN) {
- FSMDEBUG(("fsm_input(%x): Rcvd illegal length.", f->protocol));
- return;
- }
- if (len > l) {
- FSMDEBUG(("fsm_input(%x): Rcvd short packet.", f->protocol));
- return;
- }
- len -= HEADERLEN; /* subtract header length */
-
- if( f->state == INITIAL || f->state == STARTING ){
- FSMDEBUG(("fsm_input(%x): Rcvd packet in state %d.",
- f->protocol, f->state));
- return;
- }
-
- /*
- * Action depends on code.
- */
- switch (code) {
- case CONFREQ:
- fsm_rconfreq(f, id, inp, len);
- break;
-
- case CONFACK:
- fsm_rconfack(f, id, inp, len);
- break;
-
- case CONFNAK:
- case CONFREJ:
- fsm_rconfnakrej(f, code, id, inp, len);
- break;
-
- case TERMREQ:
- fsm_rtermreq(f, id, inp, len);
- break;
-
- case TERMACK:
- fsm_rtermack(f);
- break;
-
- case CODEREJ:
- fsm_rcoderej(f, inp, len);
- break;
-
- default:
- if( !f->callbacks->extcode
- || !(*f->callbacks->extcode)(f, code, id, inp, len) )
- fsm_sdata(f, CODEREJ, ++f->id, inpacket, len + HEADERLEN);
- break;
- }
-}
-
-
-/*
- * fsm_rconfreq - Receive Configure-Request.
- */
-static void
-fsm_rconfreq(f, id, inp, len)
- fsm *f;
- u_char id;
- u_char *inp;
- int len;
-{
- int code, reject_if_disagree;
-
- switch( f->state ){
- case CLOSED:
- /* Go away, we're closed */
- fsm_sdata(f, TERMACK, id, NULL, 0);
- return;
- case CLOSING:
- case STOPPING:
- return;
-
- case OPENED:
- /* Go down and restart negotiation */
- if( f->callbacks->down )
- (*f->callbacks->down)(f); /* Inform upper layers */
- fsm_sconfreq(f, 0); /* Send initial Configure-Request */
- break;
-
- case STOPPED:
- /* Negotiation started by our peer */
- fsm_sconfreq(f, 0); /* Send initial Configure-Request */
- f->state = REQSENT;
- break;
- }
-
- /*
- * Pass the requested configuration options
- * to protocol-specific code for checking.
- */
- if (f->callbacks->reqci){ /* Check CI */
- reject_if_disagree = (f->nakloops >= f->maxnakloops);
- code = (*f->callbacks->reqci)(f, inp, &len, reject_if_disagree);
- } else if (len)
- code = CONFREJ; /* Reject all CI */
- else
- code = CONFACK;
-
- /* send the Ack, Nak or Rej to the peer */
- fsm_sdata(f, code, id, inp, len);
-
- if (code == CONFACK) {
- if (f->state == ACKRCVD) {
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- f->state = OPENED;
- if (f->callbacks->up)
- (*f->callbacks->up)(f); /* Inform upper layers */
- } else
- f->state = ACKSENT;
- f->nakloops = 0;
-
- } else {
- /* we sent CONFACK or CONFREJ */
- if (f->state != ACKRCVD)
- f->state = REQSENT;
- if( code == CONFNAK )
- ++f->nakloops;
- }
-}
-
-
-/*
- * fsm_rconfack - Receive Configure-Ack.
- */
-static void
-fsm_rconfack(f, id, inp, len)
- fsm *f;
- int id;
- u_char *inp;
- int len;
-{
- if (id != f->reqid || f->seen_ack) /* Expected id? */
- return; /* Nope, toss... */
- if( !(f->callbacks->ackci? (*f->callbacks->ackci)(f, inp, len):
- (len == 0)) ){
- /* Ack is bad - ignore it */
- error("Received bad configure-ack: %P", inp, len);
- return;
- }
- f->seen_ack = 1;
-
- switch (f->state) {
- case CLOSED:
- case STOPPED:
- fsm_sdata(f, TERMACK, id, NULL, 0);
- break;
-
- case REQSENT:
- f->state = ACKRCVD;
- f->retransmits = f->maxconfreqtransmits;
- break;
-
- case ACKRCVD:
- /* Huh? an extra valid Ack? oh well... */
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- fsm_sconfreq(f, 0);
- f->state = REQSENT;
- break;
-
- case ACKSENT:
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- f->state = OPENED;
- f->retransmits = f->maxconfreqtransmits;
- if (f->callbacks->up)
- (*f->callbacks->up)(f); /* Inform upper layers */
- break;
-
- case OPENED:
- /* Go down and restart negotiation */
- if (f->callbacks->down)
- (*f->callbacks->down)(f); /* Inform upper layers */
- fsm_sconfreq(f, 0); /* Send initial Configure-Request */
- f->state = REQSENT;
- break;
- }
-}
-
-
-/*
- * fsm_rconfnakrej - Receive Configure-Nak or Configure-Reject.
- */
-static void
-fsm_rconfnakrej(f, code, id, inp, len)
- fsm *f;
- int code, id;
- u_char *inp;
- int len;
-{
- int (*proc) __P((fsm *, u_char *, int));
- int ret;
-
- if (id != f->reqid || f->seen_ack) /* Expected id? */
- return; /* Nope, toss... */
- proc = (code == CONFNAK)? f->callbacks->nakci: f->callbacks->rejci;
- if (!proc || !(ret = proc(f, inp, len))) {
- /* Nak/reject is bad - ignore it */
- error("Received bad configure-nak/rej: %P", inp, len);
- return;
- }
- f->seen_ack = 1;
-
- switch (f->state) {
- case CLOSED:
- case STOPPED:
- fsm_sdata(f, TERMACK, id, NULL, 0);
- break;
-
- case REQSENT:
- case ACKSENT:
- /* They didn't agree to what we wanted - try another request */
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- if (ret < 0)
- f->state = STOPPED; /* kludge for stopping CCP */
- else
- fsm_sconfreq(f, 0); /* Send Configure-Request */
- break;
-
- case ACKRCVD:
- /* Got a Nak/reject when we had already had an Ack?? oh well... */
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- fsm_sconfreq(f, 0);
- f->state = REQSENT;
- break;
-
- case OPENED:
- /* Go down and restart negotiation */
- if (f->callbacks->down)
- (*f->callbacks->down)(f); /* Inform upper layers */
- fsm_sconfreq(f, 0); /* Send initial Configure-Request */
- f->state = REQSENT;
- break;
- }
-}
-
-
-/*
- * fsm_rtermreq - Receive Terminate-Req.
- */
-static void
-fsm_rtermreq(f, id, p, len)
- fsm *f;
- int id;
- u_char *p;
- int len;
-{
- switch (f->state) {
- case ACKRCVD:
- case ACKSENT:
- f->state = REQSENT; /* Start over but keep trying */
- break;
-
- case OPENED:
- if (len > 0) {
- info("%s terminated by peer (%0.*v)", PROTO_NAME(f), len, p);
- } else
- info("%s terminated by peer", PROTO_NAME(f));
- if (f->callbacks->down)
- (*f->callbacks->down)(f); /* Inform upper layers */
- f->retransmits = 0;
- f->state = STOPPING;
- TIMEOUT(fsm_timeout, f, f->timeouttime);
- break;
- }
-
- fsm_sdata(f, TERMACK, id, NULL, 0);
-}
-
-
-/*
- * fsm_rtermack - Receive Terminate-Ack.
- */
-static void
-fsm_rtermack(f)
- fsm *f;
-{
- switch (f->state) {
- case CLOSING:
- UNTIMEOUT(fsm_timeout, f);
- f->state = CLOSED;
- if( f->callbacks->finished )
- (*f->callbacks->finished)(f);
- break;
- case STOPPING:
- UNTIMEOUT(fsm_timeout, f);
- f->state = STOPPED;
- if( f->callbacks->finished )
- (*f->callbacks->finished)(f);
- break;
-
- case ACKRCVD:
- f->state = REQSENT;
- break;
-
- case OPENED:
- if (f->callbacks->down)
- (*f->callbacks->down)(f); /* Inform upper layers */
- fsm_sconfreq(f, 0);
- break;
- }
-}
-
-
-/*
- * fsm_rcoderej - Receive an Code-Reject.
- */
-static void
-fsm_rcoderej(f, inp, len)
- fsm *f;
- u_char *inp;
- int len;
-{
- u_char code, id;
-
- if (len < HEADERLEN) {
- FSMDEBUG(("fsm_rcoderej: Rcvd short Code-Reject packet!"));
- return;
- }
- GETCHAR(code, inp);
- GETCHAR(id, inp);
- warn("%s: Rcvd Code-Reject for code %d, id %d", PROTO_NAME(f), code, id);
-
- if( f->state == ACKRCVD )
- f->state = REQSENT;
-}
-
-
-/*
- * fsm_protreject - Peer doesn't speak this protocol.
- *
- * Treat this as a catastrophic error (RXJ-).
- */
-void
-fsm_protreject(f)
- fsm *f;
-{
- switch( f->state ){
- case CLOSING:
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- /* fall through */
- case CLOSED:
- f->state = CLOSED;
- if( f->callbacks->finished )
- (*f->callbacks->finished)(f);
- break;
-
- case STOPPING:
- case REQSENT:
- case ACKRCVD:
- case ACKSENT:
- UNTIMEOUT(fsm_timeout, f); /* Cancel timeout */
- /* fall through */
- case STOPPED:
- f->state = STOPPED;
- if( f->callbacks->finished )
- (*f->callbacks->finished)(f);
- break;
-
- case OPENED:
- if( f->callbacks->down )
- (*f->callbacks->down)(f);
-
- /* Init restart counter, send Terminate-Request */
- f->retransmits = f->maxtermtransmits;
- fsm_sdata(f, TERMREQ, f->reqid = ++f->id,
- (u_char *) f->term_reason, f->term_reason_len);
- TIMEOUT(fsm_timeout, f, f->timeouttime);
- --f->retransmits;
-
- f->state = STOPPING;
- break;
-
- default:
- FSMDEBUG(("%s: Protocol-reject event in state %d!",
- PROTO_NAME(f), f->state));
- }
-}
-
-
-/*
- * fsm_sconfreq - Send a Configure-Request.
- */
-static void
-fsm_sconfreq(f, retransmit)
- fsm *f;
- int retransmit;
-{
- u_char *outp;
- int cilen;
-
- if( f->state != REQSENT && f->state != ACKRCVD && f->state != ACKSENT ){
- /* Not currently negotiating - reset options */
- if( f->callbacks->resetci )
- (*f->callbacks->resetci)(f);
- f->nakloops = 0;
- }
-
- if( !retransmit ){
- /* New request - reset retransmission counter, use new ID */
- f->retransmits = f->maxconfreqtransmits;
- f->reqid = ++f->id;
- }
-
- f->seen_ack = 0;
-
- /*
- * Make up the request packet
- */
- outp = outpacket_buf + PPP_HDRLEN + HEADERLEN;
- if( f->callbacks->cilen && f->callbacks->addci ){
- cilen = (*f->callbacks->cilen)(f);
- if( cilen > peer_mru[f->unit] - HEADERLEN )
- cilen = peer_mru[f->unit] - HEADERLEN;
- if (f->callbacks->addci)
- (*f->callbacks->addci)(f, outp, &cilen);
- } else
- cilen = 0;
-
- /* send the request to our peer */
- fsm_sdata(f, CONFREQ, f->reqid, outp, cilen);
-
- /* start the retransmit timer */
- --f->retransmits;
- TIMEOUT(fsm_timeout, f, f->timeouttime);
-}
-
-
-/*
- * fsm_sdata - Send some data.
- *
- * Used for all packets sent to our peer by this module.
- */
-void
-fsm_sdata(f, code, id, data, datalen)
- fsm *f;
- u_char code, id;
- u_char *data;
- int datalen;
-{
- u_char *outp;
- int outlen;
-
- /* Adjust length to be smaller than MTU */
- outp = outpacket_buf;
- if (datalen > peer_mru[f->unit] - HEADERLEN)
- datalen = peer_mru[f->unit] - HEADERLEN;
- if (datalen && data != outp + PPP_HDRLEN + HEADERLEN)
- BCOPY(data, outp + PPP_HDRLEN + HEADERLEN, datalen);
- outlen = datalen + HEADERLEN;
- MAKEHEADER(outp, f->protocol);
- PUTCHAR(code, outp);
- PUTCHAR(id, outp);
- PUTSHORT(outlen, outp);
- output(f->unit, outpacket_buf, outlen + PPP_HDRLEN);
-}
diff --git a/mdk-stage1/ppp/pppd/fsm.h b/mdk-stage1/ppp/pppd/fsm.h
deleted file mode 100644
index c94a68e6c..000000000
--- a/mdk-stage1/ppp/pppd/fsm.h
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * fsm.h - {Link, IP} Control Protocol Finite State Machine definitions.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-/*
- * Packet header = Code, id, length.
- */
-#define HEADERLEN 4
-
-
-/*
- * CP (LCP, IPCP, etc.) codes.
- */
-#define CONFREQ 1 /* Configuration Request */
-#define CONFACK 2 /* Configuration Ack */
-#define CONFNAK 3 /* Configuration Nak */
-#define CONFREJ 4 /* Configuration Reject */
-#define TERMREQ 5 /* Termination Request */
-#define TERMACK 6 /* Termination Ack */
-#define CODEREJ 7 /* Code Reject */
-
-
-/*
- * Each FSM is described by an fsm structure and fsm callbacks.
- */
-typedef struct fsm {
- int unit; /* Interface unit number */
- int protocol; /* Data Link Layer Protocol field value */
- int state; /* State */
- int flags; /* Contains option bits */
- u_char id; /* Current id */
- u_char reqid; /* Current request id */
- u_char seen_ack; /* Have received valid Ack/Nak/Rej to Req */
- int timeouttime; /* Timeout time in milliseconds */
- int maxconfreqtransmits; /* Maximum Configure-Request transmissions */
- int retransmits; /* Number of retransmissions left */
- int maxtermtransmits; /* Maximum Terminate-Request transmissions */
- int nakloops; /* Number of nak loops since last ack */
- int maxnakloops; /* Maximum number of nak loops tolerated */
- struct fsm_callbacks *callbacks; /* Callback routines */
- char *term_reason; /* Reason for closing protocol */
- int term_reason_len; /* Length of term_reason */
-} fsm;
-
-
-typedef struct fsm_callbacks {
- void (*resetci) /* Reset our Configuration Information */
- __P((fsm *));
- int (*cilen) /* Length of our Configuration Information */
- __P((fsm *));
- void (*addci) /* Add our Configuration Information */
- __P((fsm *, u_char *, int *));
- int (*ackci) /* ACK our Configuration Information */
- __P((fsm *, u_char *, int));
- int (*nakci) /* NAK our Configuration Information */
- __P((fsm *, u_char *, int));
- int (*rejci) /* Reject our Configuration Information */
- __P((fsm *, u_char *, int));
- int (*reqci) /* Request peer's Configuration Information */
- __P((fsm *, u_char *, int *, int));
- void (*up) /* Called when fsm reaches OPENED state */
- __P((fsm *));
- void (*down) /* Called when fsm leaves OPENED state */
- __P((fsm *));
- void (*starting) /* Called when we want the lower layer */
- __P((fsm *));
- void (*finished) /* Called when we don't want the lower layer */
- __P((fsm *));
- void (*protreject) /* Called when Protocol-Reject received */
- __P((int));
- void (*retransmit) /* Retransmission is necessary */
- __P((fsm *));
- int (*extcode) /* Called when unknown code received */
- __P((fsm *, int, int, u_char *, int));
- char *proto_name; /* String name for protocol (for messages) */
-} fsm_callbacks;
-
-
-/*
- * Link states.
- */
-#define INITIAL 0 /* Down, hasn't been opened */
-#define STARTING 1 /* Down, been opened */
-#define CLOSED 2 /* Up, hasn't been opened */
-#define STOPPED 3 /* Open, waiting for down event */
-#define CLOSING 4 /* Terminating the connection, not open */
-#define STOPPING 5 /* Terminating, but open */
-#define REQSENT 6 /* We've sent a Config Request */
-#define ACKRCVD 7 /* We've received a Config Ack */
-#define ACKSENT 8 /* We've sent a Config Ack */
-#define OPENED 9 /* Connection available */
-
-
-/*
- * Flags - indicate options controlling FSM operation
- */
-#define OPT_PASSIVE 1 /* Don't die if we don't get a response */
-#define OPT_RESTART 2 /* Treat 2nd OPEN as DOWN, UP */
-#define OPT_SILENT 4 /* Wait for peer to speak first */
-
-
-/*
- * Timeouts.
- */
-#define DEFTIMEOUT 3 /* Timeout time in seconds */
-#define DEFMAXTERMREQS 2 /* Maximum Terminate-Request transmissions */
-#define DEFMAXCONFREQS 10 /* Maximum Configure-Request transmissions */
-#define DEFMAXNAKLOOPS 5 /* Maximum number of nak loops */
-
-
-/*
- * Prototypes
- */
-void fsm_init __P((fsm *));
-void fsm_lowerup __P((fsm *));
-void fsm_lowerdown __P((fsm *));
-void fsm_open __P((fsm *));
-void fsm_close __P((fsm *, char *));
-void fsm_input __P((fsm *, u_char *, int));
-void fsm_protreject __P((fsm *));
-void fsm_sdata __P((fsm *, int, int, u_char *, int));
-
-
-/*
- * Variables
- */
-extern int peer_mru[]; /* currently negotiated peer MRU (per unit) */
diff --git a/mdk-stage1/ppp/pppd/ipcp.c b/mdk-stage1/ppp/pppd/ipcp.c
deleted file mode 100644
index 3f64357ed..000000000
--- a/mdk-stage1/ppp/pppd/ipcp.c
+++ /dev/null
@@ -1,2054 +0,0 @@
-/*
- * ipcp.c - PPP IP Control Protocol.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-/*
- * TODO:
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <netdb.h>
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include "pppd.h"
-#include "fsm.h"
-#include "ipcp.h"
-#include "pathnames.h"
-
-static const char rcsid[] = RCSID;
-
-/* global vars */
-ipcp_options ipcp_wantoptions[NUM_PPP]; /* Options that we want to request */
-ipcp_options ipcp_gotoptions[NUM_PPP]; /* Options that peer ack'd */
-ipcp_options ipcp_allowoptions[NUM_PPP]; /* Options we allow peer to request */
-ipcp_options ipcp_hisoptions[NUM_PPP]; /* Options that we ack'd */
-
-u_int32_t netmask = 0; /* IP netmask to set on interface */
-
-bool disable_defaultip = 0; /* Don't use hostname for default IP adrs */
-
-/* Hook for a plugin to know when IP protocol has come up */
-void (*ip_up_hook) __P((void)) = NULL;
-
-/* Hook for a plugin to know when IP protocol has come down */
-void (*ip_down_hook) __P((void)) = NULL;
-
-/* Hook for a plugin to choose the remote IP address */
-void (*ip_choose_hook) __P((u_int32_t *)) = NULL;
-
-/* local vars */
-static int default_route_set[NUM_PPP]; /* Have set up a default route */
-static int proxy_arp_set[NUM_PPP]; /* Have created proxy arp entry */
-static bool usepeerdns; /* Ask peer for DNS addrs */
-static int ipcp_is_up; /* have called np_up() */
-static bool ask_for_local; /* request our address from peer */
-static char vj_value[8]; /* string form of vj option value */
-static char netmask_str[20]; /* string form of netmask value */
-
-/*
- * Callbacks for fsm code. (CI = Configuration Information)
- */
-static void ipcp_resetci __P((fsm *)); /* Reset our CI */
-static int ipcp_cilen __P((fsm *)); /* Return length of our CI */
-static void ipcp_addci __P((fsm *, u_char *, int *)); /* Add our CI */
-static int ipcp_ackci __P((fsm *, u_char *, int)); /* Peer ack'd our CI */
-static int ipcp_nakci __P((fsm *, u_char *, int)); /* Peer nak'd our CI */
-static int ipcp_rejci __P((fsm *, u_char *, int)); /* Peer rej'd our CI */
-static int ipcp_reqci __P((fsm *, u_char *, int *, int)); /* Rcv CI */
-static void ipcp_up __P((fsm *)); /* We're UP */
-static void ipcp_down __P((fsm *)); /* We're DOWN */
-static void ipcp_finished __P((fsm *)); /* Don't need lower layer */
-
-fsm ipcp_fsm[NUM_PPP]; /* IPCP fsm structure */
-
-static fsm_callbacks ipcp_callbacks = { /* IPCP callback routines */
- ipcp_resetci, /* Reset our Configuration Information */
- ipcp_cilen, /* Length of our Configuration Information */
- ipcp_addci, /* Add our Configuration Information */
- ipcp_ackci, /* ACK our Configuration Information */
- ipcp_nakci, /* NAK our Configuration Information */
- ipcp_rejci, /* Reject our Configuration Information */
- ipcp_reqci, /* Request peer's Configuration Information */
- ipcp_up, /* Called when fsm reaches OPENED state */
- ipcp_down, /* Called when fsm leaves OPENED state */
- NULL, /* Called when we want the lower layer up */
- ipcp_finished, /* Called when we want the lower layer down */
- NULL, /* Called when Protocol-Reject received */
- NULL, /* Retransmission is necessary */
- NULL, /* Called to handle protocol-specific codes */
- "IPCP" /* String name of protocol */
-};
-
-/*
- * Command-line options.
- */
-static int setvjslots __P((char **));
-static int setdnsaddr __P((char **));
-static int setwinsaddr __P((char **));
-static int setnetmask __P((char **));
-static int setipaddr __P((char *, char **, int));
-static void printipaddr __P((option_t *, void (*)(void *, char *,...),void *));
-
-static option_t ipcp_option_list[] = {
- { "noip", o_bool, &ipcp_protent.enabled_flag,
- "Disable IP and IPCP" },
- { "-ip", o_bool, &ipcp_protent.enabled_flag,
- "Disable IP and IPCP", OPT_ALIAS },
-
- { "novj", o_bool, &ipcp_wantoptions[0].neg_vj,
- "Disable VJ compression", OPT_A2CLR, &ipcp_allowoptions[0].neg_vj },
- { "-vj", o_bool, &ipcp_wantoptions[0].neg_vj,
- "Disable VJ compression", OPT_ALIAS | OPT_A2CLR,
- &ipcp_allowoptions[0].neg_vj },
-
- { "novjccomp", o_bool, &ipcp_wantoptions[0].cflag,
- "Disable VJ connection-ID compression", OPT_A2CLR,
- &ipcp_allowoptions[0].cflag },
- { "-vjccomp", o_bool, &ipcp_wantoptions[0].cflag,
- "Disable VJ connection-ID compression", OPT_ALIAS | OPT_A2CLR,
- &ipcp_allowoptions[0].cflag },
-
- { "vj-max-slots", o_special, (void *)setvjslots,
- "Set maximum VJ header slots",
- OPT_PRIO | OPT_A2STRVAL | OPT_STATIC, vj_value },
-
- { "ipcp-accept-local", o_bool, &ipcp_wantoptions[0].accept_local,
- "Accept peer's address for us", 1 },
- { "ipcp-accept-remote", o_bool, &ipcp_wantoptions[0].accept_remote,
- "Accept peer's address for it", 1 },
-
- { "ipparam", o_string, &ipparam,
- "Set ip script parameter", OPT_PRIO },
-
- { "noipdefault", o_bool, &disable_defaultip,
- "Don't use name for default IP adrs", 1 },
-
- { "ms-dns", 1, (void *)setdnsaddr,
- "DNS address for the peer's use" },
- { "ms-wins", 1, (void *)setwinsaddr,
- "Nameserver for SMB over TCP/IP for peer" },
-
- { "ipcp-restart", o_int, &ipcp_fsm[0].timeouttime,
- "Set timeout for IPCP", OPT_PRIO },
- { "ipcp-max-terminate", o_int, &ipcp_fsm[0].maxtermtransmits,
- "Set max #xmits for term-reqs", OPT_PRIO },
- { "ipcp-max-configure", o_int, &ipcp_fsm[0].maxconfreqtransmits,
- "Set max #xmits for conf-reqs", OPT_PRIO },
- { "ipcp-max-failure", o_int, &ipcp_fsm[0].maxnakloops,
- "Set max #conf-naks for IPCP", OPT_PRIO },
-
- { "defaultroute", o_bool, &ipcp_wantoptions[0].default_route,
- "Add default route", OPT_ENABLE|1, &ipcp_allowoptions[0].default_route },
- { "nodefaultroute", o_bool, &ipcp_allowoptions[0].default_route,
- "disable defaultroute option", OPT_A2CLR,
- &ipcp_wantoptions[0].default_route },
- { "-defaultroute", o_bool, &ipcp_allowoptions[0].default_route,
- "disable defaultroute option", OPT_ALIAS | OPT_A2CLR,
- &ipcp_wantoptions[0].default_route },
-
- { "proxyarp", o_bool, &ipcp_wantoptions[0].proxy_arp,
- "Add proxy ARP entry", OPT_ENABLE|1, &ipcp_allowoptions[0].proxy_arp },
- { "noproxyarp", o_bool, &ipcp_allowoptions[0].proxy_arp,
- "disable proxyarp option", OPT_A2CLR,
- &ipcp_wantoptions[0].proxy_arp },
- { "-proxyarp", o_bool, &ipcp_allowoptions[0].proxy_arp,
- "disable proxyarp option", OPT_ALIAS | OPT_A2CLR,
- &ipcp_wantoptions[0].proxy_arp },
-
- { "usepeerdns", o_bool, &usepeerdns,
- "Ask peer for DNS address(es)", 1 },
-
- { "netmask", o_special, (void *)setnetmask,
- "set netmask", OPT_PRIO | OPT_A2STRVAL | OPT_STATIC, netmask_str },
-
- { "IP addresses", o_wild, (void *) &setipaddr,
- "set local and remote IP addresses",
- OPT_NOARG | OPT_A2PRINTER, (void *) &printipaddr },
-
- { NULL }
-};
-
-/*
- * Protocol entry points from main code.
- */
-static void ipcp_init __P((int));
-static void ipcp_open __P((int));
-static void ipcp_close __P((int, char *));
-static void ipcp_lowerup __P((int));
-static void ipcp_lowerdown __P((int));
-static void ipcp_input __P((int, u_char *, int));
-static void ipcp_protrej __P((int));
-static int ipcp_printpkt __P((u_char *, int,
- void (*) __P((void *, char *, ...)), void *));
-static void ip_check_options __P((void));
-static int ip_demand_conf __P((int));
-static int ip_active_pkt __P((u_char *, int));
-static void create_resolv __P((u_int32_t, u_int32_t));
-
-struct protent ipcp_protent = {
- PPP_IPCP,
- ipcp_init,
- ipcp_input,
- ipcp_protrej,
- ipcp_lowerup,
- ipcp_lowerdown,
- ipcp_open,
- ipcp_close,
- ipcp_printpkt,
- NULL,
- 1,
- "IPCP",
- "IP",
- ipcp_option_list,
- ip_check_options,
- ip_demand_conf,
- ip_active_pkt
-};
-
-static void ipcp_clear_addrs __P((int, u_int32_t, u_int32_t));
-static void ipcp_script __P((char *)); /* Run an up/down script */
-static void ipcp_script_done __P((void *));
-
-/*
- * Lengths of configuration options.
- */
-#define CILEN_VOID 2
-#define CILEN_COMPRESS 4 /* min length for compression protocol opt. */
-#define CILEN_VJ 6 /* length for RFC1332 Van-Jacobson opt. */
-#define CILEN_ADDR 6 /* new-style single address option */
-#define CILEN_ADDRS 10 /* old-style dual address option */
-
-
-#define CODENAME(x) ((x) == CONFACK ? "ACK" : \
- (x) == CONFNAK ? "NAK" : "REJ")
-
-/*
- * This state variable is used to ensure that we don't
- * run an ipcp-up/down script while one is already running.
- */
-static enum script_state {
- s_down,
- s_up,
-} ipcp_script_state;
-static pid_t ipcp_script_pid;
-
-/*
- * Make a string representation of a network IP address.
- */
-char *
-ip_ntoa(ipaddr)
-u_int32_t ipaddr;
-{
- static char b[64];
-
- slprintf(b, sizeof(b), "%I", ipaddr);
- return b;
-}
-
-/*
- * Option parsing.
- */
-
-/*
- * setvjslots - set maximum number of connection slots for VJ compression
- */
-static int
-setvjslots(argv)
- char **argv;
-{
- int value;
-
- if (!int_option(*argv, &value))
- return 0;
- if (value < 2 || value > 16) {
- option_error("vj-max-slots value must be between 2 and 16");
- return 0;
- }
- ipcp_wantoptions [0].maxslotindex =
- ipcp_allowoptions[0].maxslotindex = value - 1;
- slprintf(vj_value, sizeof(vj_value), "%d", value);
- return 1;
-}
-
-/*
- * setdnsaddr - set the dns address(es)
- */
-static int
-setdnsaddr(argv)
- char **argv;
-{
- u_int32_t dns;
- struct hostent *hp;
-
- dns = inet_addr(*argv);
- if (dns == (u_int32_t) -1) {
- if ((hp = gethostbyname(*argv)) == NULL) {
- option_error("invalid address parameter '%s' for ms-dns option",
- *argv);
- return 0;
- }
- dns = *(u_int32_t *)hp->h_addr;
- }
-
- /* We take the last 2 values given, the 2nd-last as the primary
- and the last as the secondary. If only one is given it
- becomes both primary and secondary. */
- if (ipcp_allowoptions[0].dnsaddr[1] == 0)
- ipcp_allowoptions[0].dnsaddr[0] = dns;
- else
- ipcp_allowoptions[0].dnsaddr[0] = ipcp_allowoptions[0].dnsaddr[1];
-
- /* always set the secondary address value. */
- ipcp_allowoptions[0].dnsaddr[1] = dns;
-
- return (1);
-}
-
-/*
- * setwinsaddr - set the wins address(es)
- * This is primrarly used with the Samba package under UNIX or for pointing
- * the caller to the existing WINS server on a Windows NT platform.
- */
-static int
-setwinsaddr(argv)
- char **argv;
-{
- u_int32_t wins;
- struct hostent *hp;
-
- wins = inet_addr(*argv);
- if (wins == (u_int32_t) -1) {
- if ((hp = gethostbyname(*argv)) == NULL) {
- option_error("invalid address parameter '%s' for ms-wins option",
- *argv);
- return 0;
- }
- wins = *(u_int32_t *)hp->h_addr;
- }
-
- /* We take the last 2 values given, the 2nd-last as the primary
- and the last as the secondary. If only one is given it
- becomes both primary and secondary. */
- if (ipcp_allowoptions[0].winsaddr[1] == 0)
- ipcp_allowoptions[0].winsaddr[0] = wins;
- else
- ipcp_allowoptions[0].winsaddr[0] = ipcp_allowoptions[0].winsaddr[1];
-
- /* always set the secondary address value. */
- ipcp_allowoptions[0].winsaddr[1] = wins;
-
- return (1);
-}
-
-/*
- * setipaddr - Set the IP address
- * If doit is 0, the call is to check whether this option is
- * potentially an IP address specification.
- */
-static int
-setipaddr(arg, argv, doit)
- char *arg;
- char **argv;
- int doit;
-{
- struct hostent *hp;
- char *colon;
- u_int32_t local, remote;
- ipcp_options *wo = &ipcp_wantoptions[0];
- static int prio_local = 0, prio_remote = 0;
-
- /*
- * IP address pair separated by ":".
- */
- if ((colon = strchr(arg, ':')) == NULL)
- return 0;
- if (!doit)
- return 1;
-
- /*
- * If colon first character, then no local addr.
- */
- if (colon != arg && option_priority >= prio_local) {
- *colon = '\0';
- if ((local = inet_addr(arg)) == (u_int32_t) -1) {
- if ((hp = gethostbyname(arg)) == NULL) {
- option_error("unknown host: %s", arg);
- return 0;
- }
- local = *(u_int32_t *)hp->h_addr;
- }
- if (bad_ip_adrs(local)) {
- option_error("bad local IP address %s", ip_ntoa(local));
- return 0;
- }
- if (local != 0)
- wo->ouraddr = local;
- *colon = ':';
- prio_local = option_priority;
- }
-
- /*
- * If colon last character, then no remote addr.
- */
- if (*++colon != '\0' && option_priority >= prio_remote) {
- if ((remote = inet_addr(colon)) == (u_int32_t) -1) {
- if ((hp = gethostbyname(colon)) == NULL) {
- option_error("unknown host: %s", colon);
- return 0;
- }
- remote = *(u_int32_t *)hp->h_addr;
- if (remote_name[0] == 0)
- strlcpy(remote_name, colon, sizeof(remote_name));
- }
- if (bad_ip_adrs(remote)) {
- option_error("bad remote IP address %s", ip_ntoa(remote));
- return 0;
- }
- if (remote != 0)
- wo->hisaddr = remote;
- prio_remote = option_priority;
- }
-
- return 1;
-}
-
-static void
-printipaddr(opt, printer, arg)
- option_t *opt;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- ipcp_options *wo = &ipcp_wantoptions[0];
-
- if (wo->ouraddr != 0)
- printer(arg, "%I", wo->ouraddr);
- printer(arg, ":");
- if (wo->hisaddr != 0)
- printer(arg, "%I", wo->hisaddr);
-}
-
-/*
- * setnetmask - set the netmask to be used on the interface.
- */
-static int
-setnetmask(argv)
- char **argv;
-{
- u_int32_t mask;
- int n;
- char *p;
-
- /*
- * Unfortunately, if we use inet_addr, we can't tell whether
- * a result of all 1s is an error or a valid 255.255.255.255.
- */
- p = *argv;
- n = parse_dotted_ip(p, &mask);
-
- mask = htonl(mask);
-
- if (n == 0 || p[n] != 0 || (netmask & ~mask) != 0) {
- option_error("invalid netmask value '%s'", *argv);
- return 0;
- }
-
- netmask = mask;
- slprintf(netmask_str, sizeof(netmask_str), "%I", mask);
-
- return (1);
-}
-
-int
-parse_dotted_ip(p, vp)
- char *p;
- u_int32_t *vp;
-{
- int n;
- u_int32_t v, b;
- char *endp, *p0 = p;
-
- v = 0;
- for (n = 3;; --n) {
- b = strtoul(p, &endp, 0);
- if (endp == p)
- return 0;
- if (b > 255) {
- if (n < 3)
- return 0;
- /* accept e.g. 0xffffff00 */
- *vp = b;
- return endp - p0;
- }
- v |= b << (n * 8);
- p = endp;
- if (n == 0)
- break;
- if (*p != '.')
- return 0;
- ++p;
- }
- *vp = v;
- return p - p0;
-}
-
-
-/*
- * ipcp_init - Initialize IPCP.
- */
-static void
-ipcp_init(unit)
- int unit;
-{
- fsm *f = &ipcp_fsm[unit];
- ipcp_options *wo = &ipcp_wantoptions[unit];
- ipcp_options *ao = &ipcp_allowoptions[unit];
-
- f->unit = unit;
- f->protocol = PPP_IPCP;
- f->callbacks = &ipcp_callbacks;
- fsm_init(&ipcp_fsm[unit]);
-
- memset(wo, 0, sizeof(*wo));
- memset(ao, 0, sizeof(*ao));
-
- wo->neg_addr = 1;
- wo->neg_vj = 1;
- wo->vj_protocol = IPCP_VJ_COMP;
- wo->maxslotindex = MAX_STATES - 1; /* really max index */
- wo->cflag = 1;
-
-
- /* max slots and slot-id compression are currently hardwired in */
- /* ppp_if.c to 16 and 1, this needs to be changed (among other */
- /* things) gmc */
-
- ao->neg_addr = 1;
- ao->neg_vj = 1;
- ao->maxslotindex = MAX_STATES - 1;
- ao->cflag = 1;
-
- /*
- * XXX These control whether the user may use the proxyarp
- * and defaultroute options.
- */
- ao->proxy_arp = 1;
- ao->default_route = 1;
-}
-
-
-/*
- * ipcp_open - IPCP is allowed to come up.
- */
-static void
-ipcp_open(unit)
- int unit;
-{
- fsm_open(&ipcp_fsm[unit]);
-}
-
-
-/*
- * ipcp_close - Take IPCP down.
- */
-static void
-ipcp_close(unit, reason)
- int unit;
- char *reason;
-{
- fsm_close(&ipcp_fsm[unit], reason);
-}
-
-
-/*
- * ipcp_lowerup - The lower layer is up.
- */
-static void
-ipcp_lowerup(unit)
- int unit;
-{
- fsm_lowerup(&ipcp_fsm[unit]);
-}
-
-
-/*
- * ipcp_lowerdown - The lower layer is down.
- */
-static void
-ipcp_lowerdown(unit)
- int unit;
-{
- fsm_lowerdown(&ipcp_fsm[unit]);
-}
-
-
-/*
- * ipcp_input - Input IPCP packet.
- */
-static void
-ipcp_input(unit, p, len)
- int unit;
- u_char *p;
- int len;
-{
- fsm_input(&ipcp_fsm[unit], p, len);
-}
-
-
-/*
- * ipcp_protrej - A Protocol-Reject was received for IPCP.
- *
- * Pretend the lower layer went down, so we shut up.
- */
-static void
-ipcp_protrej(unit)
- int unit;
-{
- fsm_lowerdown(&ipcp_fsm[unit]);
-}
-
-
-/*
- * ipcp_resetci - Reset our CI.
- * Called by fsm_sconfreq, Send Configure Request.
- */
-static void
-ipcp_resetci(f)
- fsm *f;
-{
- ipcp_options *wo = &ipcp_wantoptions[f->unit];
- ipcp_options *go = &ipcp_gotoptions[f->unit];
-
- wo->req_addr = wo->neg_addr && ipcp_allowoptions[f->unit].neg_addr;
- if (wo->ouraddr == 0)
- wo->accept_local = 1;
- if (wo->hisaddr == 0)
- wo->accept_remote = 1;
- wo->req_dns1 = usepeerdns; /* Request DNS addresses from the peer */
- wo->req_dns2 = usepeerdns;
- *go = *wo;
- if (!ask_for_local)
- go->ouraddr = 0;
- if (ip_choose_hook)
- ip_choose_hook(&wo->hisaddr);
-}
-
-
-/*
- * ipcp_cilen - Return length of our CI.
- * Called by fsm_sconfreq, Send Configure Request.
- */
-static int
-ipcp_cilen(f)
- fsm *f;
-{
- ipcp_options *go = &ipcp_gotoptions[f->unit];
- ipcp_options *wo = &ipcp_wantoptions[f->unit];
- ipcp_options *ho = &ipcp_hisoptions[f->unit];
-
-#define LENCIVJ(neg, old) (neg ? (old? CILEN_COMPRESS : CILEN_VJ) : 0)
-#define LENCIADDR(neg, old) (neg ? (old? CILEN_ADDRS : CILEN_ADDR) : 0)
-#define LENCIDNS(neg) (neg ? (CILEN_ADDR) : 0)
-
- /*
- * First see if we want to change our options to the old
- * forms because we have received old forms from the peer.
- */
- if (wo->neg_addr && !go->neg_addr && !go->old_addrs) {
- /* use the old style of address negotiation */
- go->neg_addr = 1;
- go->old_addrs = 1;
- }
- if (wo->neg_vj && !go->neg_vj && !go->old_vj) {
- /* try an older style of VJ negotiation */
- /* use the old style only if the peer did */
- if (ho->neg_vj && ho->old_vj) {
- go->neg_vj = 1;
- go->old_vj = 1;
- go->vj_protocol = ho->vj_protocol;
- }
- }
-
- return (LENCIADDR(go->neg_addr, go->old_addrs) +
- LENCIVJ(go->neg_vj, go->old_vj) +
- LENCIDNS(go->req_dns1) +
- LENCIDNS(go->req_dns2)) ;
-}
-
-
-/*
- * ipcp_addci - Add our desired CIs to a packet.
- * Called by fsm_sconfreq, Send Configure Request.
- */
-static void
-ipcp_addci(f, ucp, lenp)
- fsm *f;
- u_char *ucp;
- int *lenp;
-{
- ipcp_options *go = &ipcp_gotoptions[f->unit];
- int len = *lenp;
-
-#define ADDCIVJ(opt, neg, val, old, maxslotindex, cflag) \
- if (neg) { \
- int vjlen = old? CILEN_COMPRESS : CILEN_VJ; \
- if (len >= vjlen) { \
- PUTCHAR(opt, ucp); \
- PUTCHAR(vjlen, ucp); \
- PUTSHORT(val, ucp); \
- if (!old) { \
- PUTCHAR(maxslotindex, ucp); \
- PUTCHAR(cflag, ucp); \
- } \
- len -= vjlen; \
- } else \
- neg = 0; \
- }
-
-#define ADDCIADDR(opt, neg, old, val1, val2) \
- if (neg) { \
- int addrlen = (old? CILEN_ADDRS: CILEN_ADDR); \
- if (len >= addrlen) { \
- u_int32_t l; \
- PUTCHAR(opt, ucp); \
- PUTCHAR(addrlen, ucp); \
- l = ntohl(val1); \
- PUTLONG(l, ucp); \
- if (old) { \
- l = ntohl(val2); \
- PUTLONG(l, ucp); \
- } \
- len -= addrlen; \
- } else \
- neg = 0; \
- }
-
-#define ADDCIDNS(opt, neg, addr) \
- if (neg) { \
- if (len >= CILEN_ADDR) { \
- u_int32_t l; \
- PUTCHAR(opt, ucp); \
- PUTCHAR(CILEN_ADDR, ucp); \
- l = ntohl(addr); \
- PUTLONG(l, ucp); \
- len -= CILEN_ADDR; \
- } else \
- neg = 0; \
- }
-
- ADDCIADDR((go->old_addrs? CI_ADDRS: CI_ADDR), go->neg_addr,
- go->old_addrs, go->ouraddr, go->hisaddr);
-
- ADDCIVJ(CI_COMPRESSTYPE, go->neg_vj, go->vj_protocol, go->old_vj,
- go->maxslotindex, go->cflag);
-
- ADDCIDNS(CI_MS_DNS1, go->req_dns1, go->dnsaddr[0]);
-
- ADDCIDNS(CI_MS_DNS2, go->req_dns2, go->dnsaddr[1]);
-
- *lenp -= len;
-}
-
-
-/*
- * ipcp_ackci - Ack our CIs.
- * Called by fsm_rconfack, Receive Configure ACK.
- *
- * Returns:
- * 0 - Ack was bad.
- * 1 - Ack was good.
- */
-static int
-ipcp_ackci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- ipcp_options *go = &ipcp_gotoptions[f->unit];
- u_short cilen, citype, cishort;
- u_int32_t cilong;
- u_char cimaxslotindex, cicflag;
-
- /*
- * CIs must be in exactly the same order that we sent...
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
-
-#define ACKCIVJ(opt, neg, val, old, maxslotindex, cflag) \
- if (neg) { \
- int vjlen = old? CILEN_COMPRESS : CILEN_VJ; \
- if ((len -= vjlen) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != vjlen || \
- citype != opt) \
- goto bad; \
- GETSHORT(cishort, p); \
- if (cishort != val) \
- goto bad; \
- if (!old) { \
- GETCHAR(cimaxslotindex, p); \
- if (cimaxslotindex != maxslotindex) \
- goto bad; \
- GETCHAR(cicflag, p); \
- if (cicflag != cflag) \
- goto bad; \
- } \
- }
-
-#define ACKCIADDR(opt, neg, old, val1, val2) \
- if (neg) { \
- int addrlen = (old? CILEN_ADDRS: CILEN_ADDR); \
- u_int32_t l; \
- if ((len -= addrlen) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != addrlen || \
- citype != opt) \
- goto bad; \
- GETLONG(l, p); \
- cilong = htonl(l); \
- if (val1 != cilong) \
- goto bad; \
- if (old) { \
- GETLONG(l, p); \
- cilong = htonl(l); \
- if (val2 != cilong) \
- goto bad; \
- } \
- }
-
-#define ACKCIDNS(opt, neg, addr) \
- if (neg) { \
- u_int32_t l; \
- if ((len -= CILEN_ADDR) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_ADDR || citype != opt) \
- goto bad; \
- GETLONG(l, p); \
- cilong = htonl(l); \
- if (addr != cilong) \
- goto bad; \
- }
-
- ACKCIADDR((go->old_addrs? CI_ADDRS: CI_ADDR), go->neg_addr,
- go->old_addrs, go->ouraddr, go->hisaddr);
-
- ACKCIVJ(CI_COMPRESSTYPE, go->neg_vj, go->vj_protocol, go->old_vj,
- go->maxslotindex, go->cflag);
-
- ACKCIDNS(CI_MS_DNS1, go->req_dns1, go->dnsaddr[0]);
-
- ACKCIDNS(CI_MS_DNS2, go->req_dns2, go->dnsaddr[1]);
-
- /*
- * If there are any remaining CIs, then this packet is bad.
- */
- if (len != 0)
- goto bad;
- return (1);
-
-bad:
- IPCPDEBUG(("ipcp_ackci: received bad Ack!"));
- return (0);
-}
-
-/*
- * ipcp_nakci - Peer has sent a NAK for some of our CIs.
- * This should not modify any state if the Nak is bad
- * or if IPCP is in the OPENED state.
- * Calback from fsm_rconfnakrej - Receive Configure-Nak or Configure-Reject.
- *
- * Returns:
- * 0 - Nak was bad.
- * 1 - Nak was good.
- */
-static int
-ipcp_nakci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- ipcp_options *go = &ipcp_gotoptions[f->unit];
- u_char cimaxslotindex, cicflag;
- u_char citype, cilen, *next;
- u_short cishort;
- u_int32_t ciaddr1, ciaddr2, l, cidnsaddr;
- ipcp_options no; /* options we've seen Naks for */
- ipcp_options try; /* options to request next time */
-
- BZERO(&no, sizeof(no));
- try = *go;
-
- /*
- * Any Nak'd CIs must be in exactly the same order that we sent.
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
-#define NAKCIADDR(opt, neg, old, code) \
- if (go->neg && \
- len >= (cilen = (old? CILEN_ADDRS: CILEN_ADDR)) && \
- p[1] == cilen && \
- p[0] == opt) { \
- len -= cilen; \
- INCPTR(2, p); \
- GETLONG(l, p); \
- ciaddr1 = htonl(l); \
- if (old) { \
- GETLONG(l, p); \
- ciaddr2 = htonl(l); \
- no.old_addrs = 1; \
- } else \
- ciaddr2 = 0; \
- no.neg = 1; \
- code \
- }
-
-#define NAKCIVJ(opt, neg, code) \
- if (go->neg && \
- ((cilen = p[1]) == CILEN_COMPRESS || cilen == CILEN_VJ) && \
- len >= cilen && \
- p[0] == opt) { \
- len -= cilen; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- no.neg = 1; \
- code \
- }
-
-#define NAKCIDNS(opt, neg, code) \
- if (go->neg && \
- ((cilen = p[1]) == CILEN_ADDR) && \
- len >= cilen && \
- p[0] == opt) { \
- len -= cilen; \
- INCPTR(2, p); \
- GETLONG(l, p); \
- cidnsaddr = htonl(l); \
- no.neg = 1; \
- code \
- }
-
- /*
- * Accept the peer's idea of {our,his} address, if different
- * from our idea, only if the accept_{local,remote} flag is set.
- */
- NAKCIADDR((go->old_addrs? CI_ADDRS: CI_ADDR), neg_addr, go->old_addrs,
- if (go->accept_local && ciaddr1) { /* Do we know our address? */
- try.ouraddr = ciaddr1;
- }
- if (go->accept_remote && ciaddr2) { /* Does he know his? */
- try.hisaddr = ciaddr2;
- }
- );
-
- /*
- * Accept the peer's value of maxslotindex provided that it
- * is less than what we asked for. Turn off slot-ID compression
- * if the peer wants. Send old-style compress-type option if
- * the peer wants.
- */
- NAKCIVJ(CI_COMPRESSTYPE, neg_vj,
- if (cilen == CILEN_VJ) {
- GETCHAR(cimaxslotindex, p);
- GETCHAR(cicflag, p);
- if (cishort == IPCP_VJ_COMP) {
- try.old_vj = 0;
- if (cimaxslotindex < go->maxslotindex)
- try.maxslotindex = cimaxslotindex;
- if (!cicflag)
- try.cflag = 0;
- } else {
- try.neg_vj = 0;
- }
- } else {
- if (cishort == IPCP_VJ_COMP || cishort == IPCP_VJ_COMP_OLD) {
- try.old_vj = 1;
- try.vj_protocol = cishort;
- } else {
- try.neg_vj = 0;
- }
- }
- );
-
- NAKCIDNS(CI_MS_DNS1, req_dns1,
- try.dnsaddr[0] = cidnsaddr;
- );
-
- NAKCIDNS(CI_MS_DNS2, req_dns2,
- try.dnsaddr[1] = cidnsaddr;
- );
-
- /*
- * There may be remaining CIs, if the peer is requesting negotiation
- * on an option that we didn't include in our request packet.
- * If they want to negotiate about IP addresses, we comply.
- * If they want us to ask for compression, we refuse.
- */
- while (len > CILEN_VOID) {
- GETCHAR(citype, p);
- GETCHAR(cilen, p);
- if( (len -= cilen) < 0 )
- goto bad;
- next = p + cilen - 2;
-
- switch (citype) {
- case CI_COMPRESSTYPE:
- if (go->neg_vj || no.neg_vj ||
- (cilen != CILEN_VJ && cilen != CILEN_COMPRESS))
- goto bad;
- no.neg_vj = 1;
- break;
- case CI_ADDRS:
- if ((go->neg_addr && go->old_addrs) || no.old_addrs
- || cilen != CILEN_ADDRS)
- goto bad;
- try.neg_addr = 1;
- try.old_addrs = 1;
- GETLONG(l, p);
- ciaddr1 = htonl(l);
- if (ciaddr1 && go->accept_local)
- try.ouraddr = ciaddr1;
- GETLONG(l, p);
- ciaddr2 = htonl(l);
- if (ciaddr2 && go->accept_remote)
- try.hisaddr = ciaddr2;
- no.old_addrs = 1;
- break;
- case CI_ADDR:
- if (go->neg_addr || no.neg_addr || cilen != CILEN_ADDR)
- goto bad;
- try.old_addrs = 0;
- GETLONG(l, p);
- ciaddr1 = htonl(l);
- if (ciaddr1 && go->accept_local)
- try.ouraddr = ciaddr1;
- if (try.ouraddr != 0)
- try.neg_addr = 1;
- no.neg_addr = 1;
- break;
- }
- p = next;
- }
-
- /*
- * OK, the Nak is good. Now we can update state.
- * If there are any remaining options, we ignore them.
- */
- if (f->state != OPENED)
- *go = try;
-
- return 1;
-
-bad:
- IPCPDEBUG(("ipcp_nakci: received bad Nak!"));
- return 0;
-}
-
-
-/*
- * ipcp_rejci - Reject some of our CIs.
- * Callback from fsm_rconfnakrej.
- */
-static int
-ipcp_rejci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- ipcp_options *go = &ipcp_gotoptions[f->unit];
- u_char cimaxslotindex, ciflag, cilen;
- u_short cishort;
- u_int32_t cilong;
- ipcp_options try; /* options to request next time */
-
- try = *go;
- /*
- * Any Rejected CIs must be in exactly the same order that we sent.
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
-#define REJCIADDR(opt, neg, old, val1, val2) \
- if (go->neg && \
- len >= (cilen = old? CILEN_ADDRS: CILEN_ADDR) && \
- p[1] == cilen && \
- p[0] == opt) { \
- u_int32_t l; \
- len -= cilen; \
- INCPTR(2, p); \
- GETLONG(l, p); \
- cilong = htonl(l); \
- /* Check rejected value. */ \
- if (cilong != val1) \
- goto bad; \
- if (old) { \
- GETLONG(l, p); \
- cilong = htonl(l); \
- /* Check rejected value. */ \
- if (cilong != val2) \
- goto bad; \
- } \
- try.neg = 0; \
- }
-
-#define REJCIVJ(opt, neg, val, old, maxslot, cflag) \
- if (go->neg && \
- p[1] == (old? CILEN_COMPRESS : CILEN_VJ) && \
- len >= p[1] && \
- p[0] == opt) { \
- len -= p[1]; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- /* Check rejected value. */ \
- if (cishort != val) \
- goto bad; \
- if (!old) { \
- GETCHAR(cimaxslotindex, p); \
- if (cimaxslotindex != maxslot) \
- goto bad; \
- GETCHAR(ciflag, p); \
- if (ciflag != cflag) \
- goto bad; \
- } \
- try.neg = 0; \
- }
-
-#define REJCIDNS(opt, neg, dnsaddr) \
- if (go->neg && \
- ((cilen = p[1]) == CILEN_ADDR) && \
- len >= cilen && \
- p[0] == opt) { \
- u_int32_t l; \
- len -= cilen; \
- INCPTR(2, p); \
- GETLONG(l, p); \
- cilong = htonl(l); \
- /* Check rejected value. */ \
- if (cilong != dnsaddr) \
- goto bad; \
- try.neg = 0; \
- }
-
-
- REJCIADDR((go->old_addrs? CI_ADDRS: CI_ADDR), neg_addr,
- go->old_addrs, go->ouraddr, go->hisaddr);
-
- REJCIVJ(CI_COMPRESSTYPE, neg_vj, go->vj_protocol, go->old_vj,
- go->maxslotindex, go->cflag);
-
- REJCIDNS(CI_MS_DNS1, req_dns1, go->dnsaddr[0]);
-
- REJCIDNS(CI_MS_DNS2, req_dns2, go->dnsaddr[1]);
-
- /*
- * If there are any remaining CIs, then this packet is bad.
- */
- if (len != 0)
- goto bad;
- /*
- * Now we can update state.
- */
- if (f->state != OPENED)
- *go = try;
- return 1;
-
-bad:
- IPCPDEBUG(("ipcp_rejci: received bad Reject!"));
- return 0;
-}
-
-
-/*
- * ipcp_reqci - Check the peer's requested CIs and send appropriate response.
- * Callback from fsm_rconfreq, Receive Configure Request
- *
- * Returns: CONFACK, CONFNAK or CONFREJ and input packet modified
- * appropriately. If reject_if_disagree is non-zero, doesn't return
- * CONFNAK; returns CONFREJ if it can't return CONFACK.
- */
-static int
-ipcp_reqci(f, inp, len, reject_if_disagree)
- fsm *f;
- u_char *inp; /* Requested CIs */
- int *len; /* Length of requested CIs */
- int reject_if_disagree;
-{
- ipcp_options *wo = &ipcp_wantoptions[f->unit];
- ipcp_options *ho = &ipcp_hisoptions[f->unit];
- ipcp_options *ao = &ipcp_allowoptions[f->unit];
- ipcp_options *go = &ipcp_gotoptions[f->unit];
- u_char *cip, *next; /* Pointer to current and next CIs */
- u_short cilen, citype; /* Parsed len, type */
- u_short cishort; /* Parsed short value */
- u_int32_t tl, ciaddr1, ciaddr2;/* Parsed address values */
- int rc = CONFACK; /* Final packet return code */
- int orc; /* Individual option return code */
- u_char *p; /* Pointer to next char to parse */
- u_char *ucp = inp; /* Pointer to current output char */
- int l = *len; /* Length left */
- u_char maxslotindex, cflag;
- int d;
-
- /*
- * Reset all his options.
- */
- BZERO(ho, sizeof(*ho));
-
- /*
- * Process all his options.
- */
- next = inp;
- while (l) {
- orc = CONFACK; /* Assume success */
- cip = p = next; /* Remember begining of CI */
- if (l < 2 || /* Not enough data for CI header or */
- p[1] < 2 || /* CI length too small or */
- p[1] > l) { /* CI length too big? */
- IPCPDEBUG(("ipcp_reqci: bad CI length!"));
- orc = CONFREJ; /* Reject bad CI */
- cilen = l; /* Reject till end of packet */
- l = 0; /* Don't loop again */
- goto endswitch;
- }
- GETCHAR(citype, p); /* Parse CI type */
- GETCHAR(cilen, p); /* Parse CI length */
- l -= cilen; /* Adjust remaining length */
- next += cilen; /* Step to next CI */
-
- switch (citype) { /* Check CI type */
- case CI_ADDRS:
- if (!ao->neg_addr ||
- cilen != CILEN_ADDRS) { /* Check CI length */
- orc = CONFREJ; /* Reject CI */
- break;
- }
-
- /*
- * If he has no address, or if we both have his address but
- * disagree about it, then NAK it with our idea.
- * In particular, if we don't know his address, but he does,
- * then accept it.
- */
- GETLONG(tl, p); /* Parse source address (his) */
- ciaddr1 = htonl(tl);
- if (ciaddr1 != wo->hisaddr
- && (ciaddr1 == 0 || !wo->accept_remote)) {
- orc = CONFNAK;
- if (!reject_if_disagree) {
- DECPTR(sizeof(u_int32_t), p);
- tl = ntohl(wo->hisaddr);
- PUTLONG(tl, p);
- }
- } else if (ciaddr1 == 0 && wo->hisaddr == 0) {
- /*
- * If neither we nor he knows his address, reject the option.
- */
- orc = CONFREJ;
- wo->req_addr = 0; /* don't NAK with 0.0.0.0 later */
- break;
- }
-
- /*
- * If he doesn't know our address, or if we both have our address
- * but disagree about it, then NAK it with our idea.
- */
- GETLONG(tl, p); /* Parse desination address (ours) */
- ciaddr2 = htonl(tl);
- if (ciaddr2 != wo->ouraddr) {
- if (ciaddr2 == 0 || !wo->accept_local) {
- orc = CONFNAK;
- if (!reject_if_disagree) {
- DECPTR(sizeof(u_int32_t), p);
- tl = ntohl(wo->ouraddr);
- PUTLONG(tl, p);
- }
- } else {
- go->ouraddr = ciaddr2; /* accept peer's idea */
- }
- }
-
- ho->neg_addr = 1;
- ho->old_addrs = 1;
- ho->hisaddr = ciaddr1;
- ho->ouraddr = ciaddr2;
- break;
-
- case CI_ADDR:
- if (!ao->neg_addr ||
- cilen != CILEN_ADDR) { /* Check CI length */
- orc = CONFREJ; /* Reject CI */
- break;
- }
-
- /*
- * If he has no address, or if we both have his address but
- * disagree about it, then NAK it with our idea.
- * In particular, if we don't know his address, but he does,
- * then accept it.
- */
- GETLONG(tl, p); /* Parse source address (his) */
- ciaddr1 = htonl(tl);
- if (ciaddr1 != wo->hisaddr
- && (ciaddr1 == 0 || !wo->accept_remote)) {
- orc = CONFNAK;
- if (!reject_if_disagree) {
- DECPTR(sizeof(u_int32_t), p);
- tl = ntohl(wo->hisaddr);
- PUTLONG(tl, p);
- }
- } else if (ciaddr1 == 0 && wo->hisaddr == 0) {
- /*
- * Don't ACK an address of 0.0.0.0 - reject it instead.
- */
- orc = CONFREJ;
- wo->req_addr = 0; /* don't NAK with 0.0.0.0 later */
- break;
- }
-
- ho->neg_addr = 1;
- ho->hisaddr = ciaddr1;
- break;
-
- case CI_MS_DNS1:
- case CI_MS_DNS2:
- /* Microsoft primary or secondary DNS request */
- d = citype == CI_MS_DNS2;
-
- /* If we do not have a DNS address then we cannot send it */
- if (ao->dnsaddr[d] == 0 ||
- cilen != CILEN_ADDR) { /* Check CI length */
- orc = CONFREJ; /* Reject CI */
- break;
- }
- GETLONG(tl, p);
- if (htonl(tl) != ao->dnsaddr[d]) {
- DECPTR(sizeof(u_int32_t), p);
- tl = ntohl(ao->dnsaddr[d]);
- PUTLONG(tl, p);
- orc = CONFNAK;
- }
- break;
-
- case CI_MS_WINS1:
- case CI_MS_WINS2:
- /* Microsoft primary or secondary WINS request */
- d = citype == CI_MS_WINS2;
-
- /* If we do not have a DNS address then we cannot send it */
- if (ao->winsaddr[d] == 0 ||
- cilen != CILEN_ADDR) { /* Check CI length */
- orc = CONFREJ; /* Reject CI */
- break;
- }
- GETLONG(tl, p);
- if (htonl(tl) != ao->winsaddr[d]) {
- DECPTR(sizeof(u_int32_t), p);
- tl = ntohl(ao->winsaddr[d]);
- PUTLONG(tl, p);
- orc = CONFNAK;
- }
- break;
-
- case CI_COMPRESSTYPE:
- if (!ao->neg_vj ||
- (cilen != CILEN_VJ && cilen != CILEN_COMPRESS)) {
- orc = CONFREJ;
- break;
- }
- GETSHORT(cishort, p);
-
- if (!(cishort == IPCP_VJ_COMP ||
- (cishort == IPCP_VJ_COMP_OLD && cilen == CILEN_COMPRESS))) {
- orc = CONFREJ;
- break;
- }
-
- ho->neg_vj = 1;
- ho->vj_protocol = cishort;
- if (cilen == CILEN_VJ) {
- GETCHAR(maxslotindex, p);
- if (maxslotindex > ao->maxslotindex) {
- orc = CONFNAK;
- if (!reject_if_disagree){
- DECPTR(1, p);
- PUTCHAR(ao->maxslotindex, p);
- }
- }
- GETCHAR(cflag, p);
- if (cflag && !ao->cflag) {
- orc = CONFNAK;
- if (!reject_if_disagree){
- DECPTR(1, p);
- PUTCHAR(wo->cflag, p);
- }
- }
- ho->maxslotindex = maxslotindex;
- ho->cflag = cflag;
- } else {
- ho->old_vj = 1;
- ho->maxslotindex = MAX_STATES - 1;
- ho->cflag = 1;
- }
- break;
-
- default:
- orc = CONFREJ;
- break;
- }
-endswitch:
- if (orc == CONFACK && /* Good CI */
- rc != CONFACK) /* but prior CI wasnt? */
- continue; /* Don't send this one */
-
- if (orc == CONFNAK) { /* Nak this CI? */
- if (reject_if_disagree) /* Getting fed up with sending NAKs? */
- orc = CONFREJ; /* Get tough if so */
- else {
- if (rc == CONFREJ) /* Rejecting prior CI? */
- continue; /* Don't send this one */
- if (rc == CONFACK) { /* Ack'd all prior CIs? */
- rc = CONFNAK; /* Not anymore... */
- ucp = inp; /* Backup */
- }
- }
- }
-
- if (orc == CONFREJ && /* Reject this CI */
- rc != CONFREJ) { /* but no prior ones? */
- rc = CONFREJ;
- ucp = inp; /* Backup */
- }
-
- /* Need to move CI? */
- if (ucp != cip)
- BCOPY(cip, ucp, cilen); /* Move it */
-
- /* Update output pointer */
- INCPTR(cilen, ucp);
- }
-
- /*
- * If we aren't rejecting this packet, and we want to negotiate
- * their address, and they didn't send their address, then we
- * send a NAK with a CI_ADDR option appended. We assume the
- * input buffer is long enough that we can append the extra
- * option safely.
- */
- if (rc != CONFREJ && !ho->neg_addr &&
- wo->req_addr && !reject_if_disagree) {
- if (rc == CONFACK) {
- rc = CONFNAK;
- ucp = inp; /* reset pointer */
- wo->req_addr = 0; /* don't ask again */
- }
- PUTCHAR(CI_ADDR, ucp);
- PUTCHAR(CILEN_ADDR, ucp);
- tl = ntohl(wo->hisaddr);
- PUTLONG(tl, ucp);
- }
-
- *len = ucp - inp; /* Compute output length */
- IPCPDEBUG(("ipcp: returning Configure-%s", CODENAME(rc)));
- return (rc); /* Return final code */
-}
-
-
-/*
- * ip_check_options - check that any IP-related options are OK,
- * and assign appropriate defaults.
- */
-static void
-ip_check_options()
-{
- struct hostent *hp;
- u_int32_t local;
- ipcp_options *wo = &ipcp_wantoptions[0];
-
- /*
- * Default our local IP address based on our hostname.
- * If local IP address already given, don't bother.
- */
- if (wo->ouraddr == 0 && !disable_defaultip) {
- /*
- * Look up our hostname (possibly with domain name appended)
- * and take the first IP address as our local IP address.
- * If there isn't an IP address for our hostname, too bad.
- */
- wo->accept_local = 1; /* don't insist on this default value */
- if ((hp = gethostbyname(hostname)) != NULL) {
- local = *(u_int32_t *)hp->h_addr;
- if (local != 0 && !bad_ip_adrs(local))
- wo->ouraddr = local;
- }
- }
- ask_for_local = wo->ouraddr != 0 || !disable_defaultip;
-}
-
-
-/*
- * ip_demand_conf - configure the interface as though
- * IPCP were up, for use with dial-on-demand.
- */
-static int
-ip_demand_conf(u)
- int u;
-{
- ipcp_options *wo = &ipcp_wantoptions[u];
-
- if (wo->hisaddr == 0) {
- /* make up an arbitrary address for the peer */
- wo->hisaddr = htonl(0x0a707070 + ifunit);
- wo->accept_remote = 1;
- }
- if (wo->ouraddr == 0) {
- /* make up an arbitrary address for us */
- wo->ouraddr = htonl(0x0a404040 + ifunit);
- wo->accept_local = 1;
- ask_for_local = 0; /* don't tell the peer this address */
- }
- if (!sifaddr(u, wo->ouraddr, wo->hisaddr, GetMask(wo->ouraddr)))
- return 0;
- if (!sifup(u))
- return 0;
- if (!sifnpmode(u, PPP_IP, NPMODE_QUEUE))
- return 0;
- if (wo->default_route)
- if (sifdefaultroute(u, wo->ouraddr, wo->hisaddr))
- default_route_set[u] = 1;
- if (wo->proxy_arp)
- if (sifproxyarp(u, wo->hisaddr))
- proxy_arp_set[u] = 1;
-
- notice("local IP address %I", wo->ouraddr);
- notice("remote IP address %I", wo->hisaddr);
-
- return 1;
-}
-
-
-/*
- * ipcp_up - IPCP has come UP.
- *
- * Configure the IP network interface appropriately and bring it up.
- */
-static void
-ipcp_up(f)
- fsm *f;
-{
- u_int32_t mask;
- ipcp_options *ho = &ipcp_hisoptions[f->unit];
- ipcp_options *go = &ipcp_gotoptions[f->unit];
- ipcp_options *wo = &ipcp_wantoptions[f->unit];
-
- IPCPDEBUG(("ipcp: up"));
-
- /*
- * We must have a non-zero IP address for both ends of the link.
- */
- if (!ho->neg_addr)
- ho->hisaddr = wo->hisaddr;
-
- if (go->ouraddr == 0) {
- error("Could not determine local IP address");
- ipcp_close(f->unit, "Could not determine local IP address");
- return;
- }
- if (ho->hisaddr == 0) {
- ho->hisaddr = htonl(0x0a404040 + ifunit);
- warn("Could not determine remote IP address: defaulting to %I",
- ho->hisaddr);
- }
- script_setenv("IPLOCAL", ip_ntoa(go->ouraddr), 0);
- script_setenv("IPREMOTE", ip_ntoa(ho->hisaddr), 1);
-
- if (usepeerdns && (go->dnsaddr[0] || go->dnsaddr[1])) {
- script_setenv("USEPEERDNS", "1", 0);
- if (go->dnsaddr[0])
- script_setenv("DNS1", ip_ntoa(go->dnsaddr[0]), 0);
- if (go->dnsaddr[1])
- script_setenv("DNS2", ip_ntoa(go->dnsaddr[1]), 0);
- create_resolv(go->dnsaddr[0], go->dnsaddr[1]);
- }
-
- /*
- * Check that the peer is allowed to use the IP address it wants.
- */
- if (!auth_ip_addr(f->unit, ho->hisaddr)) {
- error("Peer is not authorized to use remote address %I", ho->hisaddr);
- ipcp_close(f->unit, "Unauthorized remote IP address");
- return;
- }
-
- /* set tcp compression */
- sifvjcomp(f->unit, ho->neg_vj, ho->cflag, ho->maxslotindex);
-
- /*
- * If we are doing dial-on-demand, the interface is already
- * configured, so we put out any saved-up packets, then set the
- * interface to pass IP packets.
- */
- if (demand) {
- if (go->ouraddr != wo->ouraddr || ho->hisaddr != wo->hisaddr) {
- ipcp_clear_addrs(f->unit, wo->ouraddr, wo->hisaddr);
- if (go->ouraddr != wo->ouraddr) {
- warn("Local IP address changed to %I", go->ouraddr);
- script_setenv("OLDIPLOCAL", ip_ntoa(wo->ouraddr), 0);
- wo->ouraddr = go->ouraddr;
- } else
- script_unsetenv("OLDIPLOCAL");
- if (ho->hisaddr != wo->hisaddr) {
- warn("Remote IP address changed to %I", ho->hisaddr);
- script_setenv("OLDIPREMOTE", ip_ntoa(wo->hisaddr), 0);
- wo->hisaddr = ho->hisaddr;
- } else
- script_unsetenv("OLDIPREMOTE");
-
- /* Set the interface to the new addresses */
- mask = GetMask(go->ouraddr);
- if (!sifaddr(f->unit, go->ouraddr, ho->hisaddr, mask)) {
- if (debug)
- warn("Interface configuration failed");
- ipcp_close(f->unit, "Interface configuration failed");
- return;
- }
-
- /* assign a default route through the interface if required */
- if (ipcp_wantoptions[f->unit].default_route)
- if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr))
- default_route_set[f->unit] = 1;
-
- /* Make a proxy ARP entry if requested. */
- if (ipcp_wantoptions[f->unit].proxy_arp)
- if (sifproxyarp(f->unit, ho->hisaddr))
- proxy_arp_set[f->unit] = 1;
-
- }
- demand_rexmit(PPP_IP);
- sifnpmode(f->unit, PPP_IP, NPMODE_PASS);
-
- } else {
- /*
- * Set IP addresses and (if specified) netmask.
- */
- mask = GetMask(go->ouraddr);
-
-#if !(defined(SVR4) && (defined(SNI) || defined(__USLC__)))
- if (!sifaddr(f->unit, go->ouraddr, ho->hisaddr, mask)) {
- if (debug)
- warn("Interface configuration failed");
- ipcp_close(f->unit, "Interface configuration failed");
- return;
- }
-#endif
-
- /* bring the interface up for IP */
- if (!sifup(f->unit)) {
- if (debug)
- warn("Interface failed to come up");
- ipcp_close(f->unit, "Interface configuration failed");
- return;
- }
-
-#if (defined(SVR4) && (defined(SNI) || defined(__USLC__)))
- if (!sifaddr(f->unit, go->ouraddr, ho->hisaddr, mask)) {
- if (debug)
- warn("Interface configuration failed");
- ipcp_close(f->unit, "Interface configuration failed");
- return;
- }
-#endif
- sifnpmode(f->unit, PPP_IP, NPMODE_PASS);
-
- /* assign a default route through the interface if required */
- if (ipcp_wantoptions[f->unit].default_route)
- if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr))
- default_route_set[f->unit] = 1;
-
- /* Make a proxy ARP entry if requested. */
- if (ipcp_wantoptions[f->unit].proxy_arp)
- if (sifproxyarp(f->unit, ho->hisaddr))
- proxy_arp_set[f->unit] = 1;
-
- ipcp_wantoptions[0].ouraddr = go->ouraddr;
-
- notice("local IP address %I", go->ouraddr);
- notice("remote IP address %I", ho->hisaddr);
- if (go->dnsaddr[0])
- notice("primary DNS address %I", go->dnsaddr[0]);
- if (go->dnsaddr[1])
- notice("secondary DNS address %I", go->dnsaddr[1]);
- }
-
- np_up(f->unit, PPP_IP);
- ipcp_is_up = 1;
-
- if (ip_up_hook)
- ip_up_hook();
-
- /*
- * Execute the ip-up script, like this:
- * /etc/ppp/ip-up interface tty speed local-IP remote-IP
- */
- if (ipcp_script_state == s_down && ipcp_script_pid == 0) {
- ipcp_script_state = s_up;
- ipcp_script(_PATH_IPUP);
- }
-}
-
-
-/*
- * ipcp_down - IPCP has gone DOWN.
- *
- * Take the IP network interface down, clear its addresses
- * and delete routes through it.
- */
-static void
-ipcp_down(f)
- fsm *f;
-{
- IPCPDEBUG(("ipcp: down"));
- /* XXX a bit IPv4-centric here, we only need to get the stats
- * before the interface is marked down. */
- update_link_stats(f->unit);
- if (ip_down_hook)
- ip_down_hook();
- if (ipcp_is_up) {
- ipcp_is_up = 0;
- np_down(f->unit, PPP_IP);
- }
- sifvjcomp(f->unit, 0, 0, 0);
-
- /*
- * If we are doing dial-on-demand, set the interface
- * to queue up outgoing packets (for now).
- */
- if (demand) {
- sifnpmode(f->unit, PPP_IP, NPMODE_QUEUE);
- } else {
- sifnpmode(f->unit, PPP_IP, NPMODE_DROP);
- sifdown(f->unit);
- ipcp_clear_addrs(f->unit, ipcp_gotoptions[f->unit].ouraddr,
- ipcp_hisoptions[f->unit].hisaddr);
- }
-
- /* Execute the ip-down script */
- if (ipcp_script_state == s_up && ipcp_script_pid == 0) {
- ipcp_script_state = s_down;
- ipcp_script(_PATH_IPDOWN);
- }
-}
-
-
-/*
- * ipcp_clear_addrs() - clear the interface addresses, routes,
- * proxy arp entries, etc.
- */
-static void
-ipcp_clear_addrs(unit, ouraddr, hisaddr)
- int unit;
- u_int32_t ouraddr; /* local address */
- u_int32_t hisaddr; /* remote address */
-{
- if (proxy_arp_set[unit]) {
- cifproxyarp(unit, hisaddr);
- proxy_arp_set[unit] = 0;
- }
- if (default_route_set[unit]) {
- cifdefaultroute(unit, ouraddr, hisaddr);
- default_route_set[unit] = 0;
- }
- cifaddr(unit, ouraddr, hisaddr);
-}
-
-
-/*
- * ipcp_finished - possibly shut down the lower layers.
- */
-static void
-ipcp_finished(f)
- fsm *f;
-{
- np_finished(f->unit, PPP_IP);
-}
-
-
-/*
- * ipcp_script_done - called when the ip-up or ip-down script
- * has finished.
- */
-static void
-ipcp_script_done(arg)
- void *arg;
-{
- ipcp_script_pid = 0;
- switch (ipcp_script_state) {
- case s_up:
- if (ipcp_fsm[0].state != OPENED) {
- ipcp_script_state = s_down;
- ipcp_script(_PATH_IPDOWN);
- }
- break;
- case s_down:
- if (ipcp_fsm[0].state == OPENED) {
- ipcp_script_state = s_up;
- ipcp_script(_PATH_IPUP);
- }
- break;
- }
-}
-
-
-/*
- * ipcp_script - Execute a script with arguments
- * interface-name tty-name speed local-IP remote-IP.
- */
-static void
-ipcp_script(script)
- char *script;
-{
- char strspeed[32], strlocal[32], strremote[32];
- char *argv[8];
-
- slprintf(strspeed, sizeof(strspeed), "%d", baud_rate);
- slprintf(strlocal, sizeof(strlocal), "%I", ipcp_gotoptions[0].ouraddr);
- slprintf(strremote, sizeof(strremote), "%I", ipcp_hisoptions[0].hisaddr);
-
- argv[0] = script;
- argv[1] = ifname;
- argv[2] = devnam;
- argv[3] = strspeed;
- argv[4] = strlocal;
- argv[5] = strremote;
- argv[6] = ipparam;
- argv[7] = NULL;
- ipcp_script_pid = run_program(script, argv, 0, ipcp_script_done, NULL);
-}
-
-/*
- * create_resolv - create the replacement resolv.conf file
- */
-static void
-create_resolv(peerdns1, peerdns2)
- u_int32_t peerdns1, peerdns2;
-{
- FILE *f;
-
- f = fopen(_PATH_RESOLV, "w");
- if (f == NULL) {
- error("Failed to create %s: %m", _PATH_RESOLV);
- return;
- }
-
- if (peerdns1)
- fprintf(f, "nameserver %s\n", ip_ntoa(peerdns1));
-
- if (peerdns2)
- fprintf(f, "nameserver %s\n", ip_ntoa(peerdns2));
-
- if (ferror(f))
- error("Write failed to %s: %m", _PATH_RESOLV);
-
- fclose(f);
-}
-
-/*
- * ipcp_printpkt - print the contents of an IPCP packet.
- */
-static char *ipcp_codenames[] = {
- "ConfReq", "ConfAck", "ConfNak", "ConfRej",
- "TermReq", "TermAck", "CodeRej"
-};
-
-static int
-ipcp_printpkt(p, plen, printer, arg)
- u_char *p;
- int plen;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int code, id, len, olen;
- u_char *pstart, *optend;
- u_short cishort;
- u_int32_t cilong;
-
- if (plen < HEADERLEN)
- return 0;
- pstart = p;
- GETCHAR(code, p);
- GETCHAR(id, p);
- GETSHORT(len, p);
- if (len < HEADERLEN || len > plen)
- return 0;
-
- if (code >= 1 && code <= sizeof(ipcp_codenames) / sizeof(char *))
- printer(arg, " %s", ipcp_codenames[code-1]);
- else
- printer(arg, " code=0x%x", code);
- printer(arg, " id=0x%x", id);
- len -= HEADERLEN;
- switch (code) {
- case CONFREQ:
- case CONFACK:
- case CONFNAK:
- case CONFREJ:
- /* print option list */
- while (len >= 2) {
- GETCHAR(code, p);
- GETCHAR(olen, p);
- p -= 2;
- if (olen < 2 || olen > len) {
- break;
- }
- printer(arg, " <");
- len -= olen;
- optend = p + olen;
- switch (code) {
- case CI_ADDRS:
- if (olen == CILEN_ADDRS) {
- p += 2;
- GETLONG(cilong, p);
- printer(arg, "addrs %I", htonl(cilong));
- GETLONG(cilong, p);
- printer(arg, " %I", htonl(cilong));
- }
- break;
- case CI_COMPRESSTYPE:
- if (olen >= CILEN_COMPRESS) {
- p += 2;
- GETSHORT(cishort, p);
- printer(arg, "compress ");
- switch (cishort) {
- case IPCP_VJ_COMP:
- printer(arg, "VJ");
- break;
- case IPCP_VJ_COMP_OLD:
- printer(arg, "old-VJ");
- break;
- default:
- printer(arg, "0x%x", cishort);
- }
- }
- break;
- case CI_ADDR:
- if (olen == CILEN_ADDR) {
- p += 2;
- GETLONG(cilong, p);
- printer(arg, "addr %I", htonl(cilong));
- }
- break;
- case CI_MS_DNS1:
- case CI_MS_DNS2:
- p += 2;
- GETLONG(cilong, p);
- printer(arg, "ms-dns%d %I", code - CI_MS_DNS1 + 1,
- htonl(cilong));
- break;
- case CI_MS_WINS1:
- case CI_MS_WINS2:
- p += 2;
- GETLONG(cilong, p);
- printer(arg, "ms-wins %I", htonl(cilong));
- break;
- }
- while (p < optend) {
- GETCHAR(code, p);
- printer(arg, " %.2x", code);
- }
- printer(arg, ">");
- }
- break;
-
- case TERMACK:
- case TERMREQ:
- if (len > 0 && *p >= ' ' && *p < 0x7f) {
- printer(arg, " ");
- print_string((char *)p, len, printer, arg);
- p += len;
- len = 0;
- }
- break;
- }
-
- /* print the rest of the bytes in the packet */
- for (; len > 0; --len) {
- GETCHAR(code, p);
- printer(arg, " %.2x", code);
- }
-
- return p - pstart;
-}
-
-/*
- * ip_active_pkt - see if this IP packet is worth bringing the link up for.
- * We don't bring the link up for IP fragments or for TCP FIN packets
- * with no data.
- */
-#define IP_HDRLEN 20 /* bytes */
-#define IP_OFFMASK 0x1fff
-// #define IPPROTO_TCP 6
-#define TCP_HDRLEN 20
-#define TH_FIN 0x01
-
-/*
- * We use these macros because the IP header may be at an odd address,
- * and some compilers might use word loads to get th_off or ip_hl.
- */
-
-#define net_short(x) (((x)[0] << 8) + (x)[1])
-#define get_iphl(x) (((unsigned char *)(x))[0] & 0xF)
-#define get_ipoff(x) net_short((unsigned char *)(x) + 6)
-#define get_ipproto(x) (((unsigned char *)(x))[9])
-#define get_tcpoff(x) (((unsigned char *)(x))[12] >> 4)
-#define get_tcpflags(x) (((unsigned char *)(x))[13])
-
-static int
-ip_active_pkt(pkt, len)
- u_char *pkt;
- int len;
-{
- u_char *tcp;
- int hlen;
-
- len -= PPP_HDRLEN;
- pkt += PPP_HDRLEN;
- if (len < IP_HDRLEN)
- return 0;
- if ((get_ipoff(pkt) & IP_OFFMASK) != 0)
- return 0;
- if (get_ipproto(pkt) != IPPROTO_TCP)
- return 1;
- hlen = get_iphl(pkt) * 4;
- if (len < hlen + TCP_HDRLEN)
- return 0;
- tcp = pkt + hlen;
- if ((get_tcpflags(tcp) & TH_FIN) != 0 && len == hlen + get_tcpoff(tcp) * 4)
- return 0;
- return 1;
-}
diff --git a/mdk-stage1/ppp/pppd/ipcp.h b/mdk-stage1/ppp/pppd/ipcp.h
deleted file mode 100644
index 8c5aca861..000000000
--- a/mdk-stage1/ppp/pppd/ipcp.h
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * ipcp.h - IP Control Protocol definitions.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-/*
- * Options.
- */
-#define CI_ADDRS 1 /* IP Addresses */
-#define CI_COMPRESSTYPE 2 /* Compression Type */
-#define CI_ADDR 3
-
-#define CI_MS_DNS1 129 /* Primary DNS value */
-#define CI_MS_WINS1 130 /* Primary WINS value */
-#define CI_MS_DNS2 131 /* Secondary DNS value */
-#define CI_MS_WINS2 132 /* Secondary WINS value */
-
-#define MAX_STATES 16 /* from slcompress.h */
-
-#define IPCP_VJMODE_OLD 1 /* "old" mode (option # = 0x0037) */
-#define IPCP_VJMODE_RFC1172 2 /* "old-rfc"mode (option # = 0x002d) */
-#define IPCP_VJMODE_RFC1332 3 /* "new-rfc"mode (option # = 0x002d, */
- /* maxslot and slot number compression) */
-
-#define IPCP_VJ_COMP 0x002d /* current value for VJ compression option*/
-#define IPCP_VJ_COMP_OLD 0x0037 /* "old" (i.e, broken) value for VJ */
- /* compression option*/
-
-typedef struct ipcp_options {
- bool neg_addr; /* Negotiate IP Address? */
- bool old_addrs; /* Use old (IP-Addresses) option? */
- bool req_addr; /* Ask peer to send IP address? */
- bool default_route; /* Assign default route through interface? */
- bool proxy_arp; /* Make proxy ARP entry for peer? */
- bool neg_vj; /* Van Jacobson Compression? */
- bool old_vj; /* use old (short) form of VJ option? */
- bool accept_local; /* accept peer's value for ouraddr */
- bool accept_remote; /* accept peer's value for hisaddr */
- bool req_dns1; /* Ask peer to send primary DNS address? */
- bool req_dns2; /* Ask peer to send secondary DNS address? */
- int vj_protocol; /* protocol value to use in VJ option */
- int maxslotindex; /* values for RFC1332 VJ compression neg. */
- bool cflag;
- u_int32_t ouraddr, hisaddr; /* Addresses in NETWORK BYTE ORDER */
- u_int32_t dnsaddr[2]; /* Primary and secondary MS DNS entries */
- u_int32_t winsaddr[2]; /* Primary and secondary MS WINS entries */
-} ipcp_options;
-
-extern fsm ipcp_fsm[];
-extern ipcp_options ipcp_wantoptions[];
-extern ipcp_options ipcp_gotoptions[];
-extern ipcp_options ipcp_allowoptions[];
-extern ipcp_options ipcp_hisoptions[];
-
-char *ip_ntoa __P((u_int32_t));
-
-extern struct protent ipcp_protent;
diff --git a/mdk-stage1/ppp/pppd/ipv6cp.c b/mdk-stage1/ppp/pppd/ipv6cp.c
deleted file mode 100644
index 35fa2b53a..000000000
--- a/mdk-stage1/ppp/pppd/ipv6cp.c
+++ /dev/null
@@ -1,1512 +0,0 @@
-/*
- ipv6cp.c - PPP IPV6 Control Protocol.
- Copyright (C) 1999 Tommi Komulainen <Tommi.Komulainen@iki.fi>
-
- Redistribution and use in source and binary forms are permitted
- provided that the above copyright notice and this paragraph are
- duplicated in all such forms. The name of the author may not be
- used to endorse or promote products derived from this software
- without specific prior written permission.
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-*/
-
-/* Original version, based on RFC2023 :
-
- Copyright (c) 1995, 1996, 1997 Francis.Dupont@inria.fr, INRIA Rocquencourt,
- Alain.Durand@imag.fr, IMAG,
- Jean-Luc.Richier@imag.fr, IMAG-LSR.
-
- Copyright (c) 1998, 1999 Francis.Dupont@inria.fr, GIE DYADE,
- Alain.Durand@imag.fr, IMAG,
- Jean-Luc.Richier@imag.fr, IMAG-LSR.
-
- Ce travail a été fait au sein du GIE DYADE (Groupement d'Intérêt
- Économique ayant pour membres BULL S.A. et l'INRIA).
-
- Ce logiciel informatique est disponible aux conditions
- usuelles dans la recherche, c'est-à-dire qu'il peut
- être utilisé, copié, modifié, distribué à l'unique
- condition que ce texte soit conservé afin que
- l'origine de ce logiciel soit reconnue.
-
- Le nom de l'Institut National de Recherche en Informatique
- et en Automatique (INRIA), de l'IMAG, ou d'une personne morale
- ou physique ayant participé à l'élaboration de ce logiciel ne peut
- être utilisé sans son accord préalable explicite.
-
- Ce logiciel est fourni tel quel sans aucune garantie,
- support ou responsabilité d'aucune sorte.
- Ce logiciel est dérivé de sources d'origine
- "University of California at Berkeley" et
- "Digital Equipment Corporation" couvertes par des copyrights.
-
- L'Institut d'Informatique et de Mathématiques Appliquées de Grenoble (IMAG)
- est une fédération d'unités mixtes de recherche du CNRS, de l'Institut National
- Polytechnique de Grenoble et de l'Université Joseph Fourier regroupant
- sept laboratoires dont le laboratoire Logiciels, Systèmes, Réseaux (LSR).
-
- This work has been done in the context of GIE DYADE (joint R & D venture
- between BULL S.A. and INRIA).
-
- This software is available with usual "research" terms
- with the aim of retain credits of the software.
- Permission to use, copy, modify and distribute this software for any
- purpose and without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies,
- and the name of INRIA, IMAG, or any contributor not be used in advertising
- or publicity pertaining to this material without the prior explicit
- permission. The software is provided "as is" without any
- warranties, support or liabilities of any kind.
- This software is derived from source code from
- "University of California at Berkeley" and
- "Digital Equipment Corporation" protected by copyrights.
-
- Grenoble's Institute of Computer Science and Applied Mathematics (IMAG)
- is a federation of seven research units funded by the CNRS, National
- Polytechnic Institute of Grenoble and University Joseph Fourier.
- The research unit in Software, Systems, Networks (LSR) is member of IMAG.
-*/
-
-/*
- * Derived from :
- *
- *
- * ipcp.c - PPP IP Control Protocol.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-#define RCSID "$Id$"
-
-/*
- * TODO:
- *
- * Proxy Neighbour Discovery.
- *
- * Better defines for selecting the ordering of
- * interface up / set address. (currently checks for __linux__,
- * since SVR4 && (SNI || __USLC__) didn't work properly)
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-#include <netdb.h>
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include "pppd.h"
-#include "fsm.h"
-#include "ipcp.h"
-#include "ipv6cp.h"
-#include "magic.h"
-#include "pathnames.h"
-
-static const char rcsid[] = RCSID;
-
-/* global vars */
-ipv6cp_options ipv6cp_wantoptions[NUM_PPP]; /* Options that we want to request */
-ipv6cp_options ipv6cp_gotoptions[NUM_PPP]; /* Options that peer ack'd */
-ipv6cp_options ipv6cp_allowoptions[NUM_PPP]; /* Options we allow peer to request */
-ipv6cp_options ipv6cp_hisoptions[NUM_PPP]; /* Options that we ack'd */
-int no_ifaceid_neg = 0;
-
-/* local vars */
-static int ipv6cp_is_up;
-
-/*
- * Callbacks for fsm code. (CI = Configuration Information)
- */
-static void ipv6cp_resetci __P((fsm *)); /* Reset our CI */
-static int ipv6cp_cilen __P((fsm *)); /* Return length of our CI */
-static void ipv6cp_addci __P((fsm *, u_char *, int *)); /* Add our CI */
-static int ipv6cp_ackci __P((fsm *, u_char *, int)); /* Peer ack'd our CI */
-static int ipv6cp_nakci __P((fsm *, u_char *, int)); /* Peer nak'd our CI */
-static int ipv6cp_rejci __P((fsm *, u_char *, int)); /* Peer rej'd our CI */
-static int ipv6cp_reqci __P((fsm *, u_char *, int *, int)); /* Rcv CI */
-static void ipv6cp_up __P((fsm *)); /* We're UP */
-static void ipv6cp_down __P((fsm *)); /* We're DOWN */
-static void ipv6cp_finished __P((fsm *)); /* Don't need lower layer */
-
-fsm ipv6cp_fsm[NUM_PPP]; /* IPV6CP fsm structure */
-
-static fsm_callbacks ipv6cp_callbacks = { /* IPV6CP callback routines */
- ipv6cp_resetci, /* Reset our Configuration Information */
- ipv6cp_cilen, /* Length of our Configuration Information */
- ipv6cp_addci, /* Add our Configuration Information */
- ipv6cp_ackci, /* ACK our Configuration Information */
- ipv6cp_nakci, /* NAK our Configuration Information */
- ipv6cp_rejci, /* Reject our Configuration Information */
- ipv6cp_reqci, /* Request peer's Configuration Information */
- ipv6cp_up, /* Called when fsm reaches OPENED state */
- ipv6cp_down, /* Called when fsm leaves OPENED state */
- NULL, /* Called when we want the lower layer up */
- ipv6cp_finished, /* Called when we want the lower layer down */
- NULL, /* Called when Protocol-Reject received */
- NULL, /* Retransmission is necessary */
- NULL, /* Called to handle protocol-specific codes */
- "IPV6CP" /* String name of protocol */
-};
-
-/*
- * Command-line options.
- */
-static int setifaceid __P((char **arg));
-static void printifaceid __P((option_t *,
- void (*)(void *, char *, ...), void *));
-
-static option_t ipv6cp_option_list[] = {
- { "ipv6", o_special, (void *)setifaceid,
- "Set interface identifiers for IPV6",
- OPT_A2PRINTER, (void *)printifaceid },
-
- { "+ipv6", o_bool, &ipv6cp_protent.enabled_flag,
- "Enable IPv6 and IPv6CP", OPT_PRIO | 1 },
- { "noipv6", o_bool, &ipv6cp_protent.enabled_flag,
- "Disable IPv6 and IPv6CP", OPT_PRIOSUB },
- { "-ipv6", o_bool, &ipv6cp_protent.enabled_flag,
- "Disable IPv6 and IPv6CP", OPT_PRIOSUB | OPT_ALIAS },
-
- { "ipv6cp-accept-local", o_bool, &ipv6cp_allowoptions[0].accept_local,
- "Accept peer's interface identifier for us", 1 },
-
- { "ipv6cp-use-ipaddr", o_bool, &ipv6cp_allowoptions[0].use_ip,
- "Use (default) IPv4 address as interface identifier", 1 },
-
-#if defined(SOL2)
- { "ipv6cp-use-persistent", o_bool, &ipv6cp_wantoptions[0].use_persistent,
- "Use uniquely-available persistent value for link local address", 1 },
-#endif /* defined(SOL2) */
-
- { "ipv6cp-restart", o_int, &ipv6cp_fsm[0].timeouttime,
- "Set timeout for IPv6CP", OPT_PRIO },
- { "ipv6cp-max-terminate", o_int, &ipv6cp_fsm[0].maxtermtransmits,
- "Set max #xmits for term-reqs", OPT_PRIO },
- { "ipv6cp-max-configure", o_int, &ipv6cp_fsm[0].maxconfreqtransmits,
- "Set max #xmits for conf-reqs", OPT_PRIO },
- { "ipv6cp-max-failure", o_int, &ipv6cp_fsm[0].maxnakloops,
- "Set max #conf-naks for IPv6CP", OPT_PRIO },
-
- { NULL }
-};
-
-
-/*
- * Protocol entry points from main code.
- */
-static void ipv6cp_init __P((int));
-static void ipv6cp_open __P((int));
-static void ipv6cp_close __P((int, char *));
-static void ipv6cp_lowerup __P((int));
-static void ipv6cp_lowerdown __P((int));
-static void ipv6cp_input __P((int, u_char *, int));
-static void ipv6cp_protrej __P((int));
-static int ipv6cp_printpkt __P((u_char *, int,
- void (*) __P((void *, char *, ...)), void *));
-static void ipv6_check_options __P((void));
-static int ipv6_demand_conf __P((int));
-static int ipv6_active_pkt __P((u_char *, int));
-
-struct protent ipv6cp_protent = {
- PPP_IPV6CP,
- ipv6cp_init,
- ipv6cp_input,
- ipv6cp_protrej,
- ipv6cp_lowerup,
- ipv6cp_lowerdown,
- ipv6cp_open,
- ipv6cp_close,
- ipv6cp_printpkt,
- NULL,
- 0,
- "IPV6CP",
- "IPV6",
- ipv6cp_option_list,
- ipv6_check_options,
- ipv6_demand_conf,
- ipv6_active_pkt
-};
-
-static void ipv6cp_clear_addrs __P((int, eui64_t, eui64_t));
-static void ipv6cp_script __P((char *));
-static void ipv6cp_script_done __P((void *));
-
-/*
- * Lengths of configuration options.
- */
-#define CILEN_VOID 2
-#define CILEN_COMPRESS 4 /* length for RFC2023 compress opt. */
-#define CILEN_IFACEID 10 /* RFC2472, interface identifier */
-
-#define CODENAME(x) ((x) == CONFACK ? "ACK" : \
- (x) == CONFNAK ? "NAK" : "REJ")
-
-/*
- * This state variable is used to ensure that we don't
- * run an ipcp-up/down script while one is already running.
- */
-static enum script_state {
- s_down,
- s_up,
-} ipv6cp_script_state;
-static pid_t ipv6cp_script_pid;
-
-/*
- * setifaceid - set the interface identifiers manually
- */
-static int
-setifaceid(argv)
- char **argv;
-{
- char *comma, *arg, c;
- ipv6cp_options *wo = &ipv6cp_wantoptions[0];
- struct in6_addr addr;
- static int prio_local, prio_remote;
-
-#define VALIDID(a) ( (((a).s6_addr32[0] == 0) && ((a).s6_addr32[1] == 0)) && \
- (((a).s6_addr32[2] != 0) || ((a).s6_addr32[3] != 0)) )
-
- arg = *argv;
- if ((comma = strchr(arg, ',')) == NULL)
- comma = arg + strlen(arg);
-
- /*
- * If comma first character, then no local identifier
- */
- if (comma != arg) {
- c = *comma;
- *comma = '\0';
-
- if (inet_pton(AF_INET6, arg, &addr) == 0 || !VALIDID(addr)) {
- option_error("Illegal interface identifier (local): %s", arg);
- return 0;
- }
-
- if (option_priority >= prio_local) {
- eui64_copy(addr.s6_addr32[2], wo->ourid);
- wo->opt_local = 1;
- prio_local = option_priority;
- }
- *comma = c;
- }
-
- /*
- * If comma last character, the no remote identifier
- */
- if (*comma != 0 && *++comma != '\0') {
- if (inet_pton(AF_INET6, comma, &addr) == 0 || !VALIDID(addr)) {
- option_error("Illegal interface identifier (remote): %s", comma);
- return 0;
- }
- if (option_priority >= prio_remote) {
- eui64_copy(addr.s6_addr32[2], wo->hisid);
- wo->opt_remote = 1;
- prio_remote = option_priority;
- }
- }
-
- if (override_value("+ipv6", option_priority, option_source))
- ipv6cp_protent.enabled_flag = 1;
- return 1;
-}
-
-static void
-printifaceid(opt, printer, arg)
- option_t *opt;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- ipv6cp_options *wo = &ipv6cp_wantoptions[0];
-
- if (wo->opt_local)
- printer(arg, "%s", llv6_ntoa(wo->ourid));
- printer(arg, ",");
- if (wo->opt_remote)
- printer(arg, "%s", llv6_ntoa(wo->hisid));
-}
-
-/*
- * Make a string representation of a network address.
- */
-char *
-llv6_ntoa(ifaceid)
- eui64_t ifaceid;
-{
- static char b[64];
-
- sprintf(b, "fe80::%s", eui64_ntoa(ifaceid));
- return b;
-}
-
-
-/*
- * ipv6cp_init - Initialize IPV6CP.
- */
-static void
-ipv6cp_init(unit)
- int unit;
-{
- fsm *f = &ipv6cp_fsm[unit];
- ipv6cp_options *wo = &ipv6cp_wantoptions[unit];
- ipv6cp_options *ao = &ipv6cp_allowoptions[unit];
-
- f->unit = unit;
- f->protocol = PPP_IPV6CP;
- f->callbacks = &ipv6cp_callbacks;
- fsm_init(&ipv6cp_fsm[unit]);
-
- memset(wo, 0, sizeof(*wo));
- memset(ao, 0, sizeof(*ao));
-
- wo->accept_local = 1;
- wo->neg_ifaceid = 1;
- ao->neg_ifaceid = 1;
-
-#ifdef IPV6CP_COMP
- wo->neg_vj = 1;
- ao->neg_vj = 1;
- wo->vj_protocol = IPV6CP_COMP;
-#endif
-
-}
-
-
-/*
- * ipv6cp_open - IPV6CP is allowed to come up.
- */
-static void
-ipv6cp_open(unit)
- int unit;
-{
- fsm_open(&ipv6cp_fsm[unit]);
-}
-
-
-/*
- * ipv6cp_close - Take IPV6CP down.
- */
-static void
-ipv6cp_close(unit, reason)
- int unit;
- char *reason;
-{
- fsm_close(&ipv6cp_fsm[unit], reason);
-}
-
-
-/*
- * ipv6cp_lowerup - The lower layer is up.
- */
-static void
-ipv6cp_lowerup(unit)
- int unit;
-{
- fsm_lowerup(&ipv6cp_fsm[unit]);
-}
-
-
-/*
- * ipv6cp_lowerdown - The lower layer is down.
- */
-static void
-ipv6cp_lowerdown(unit)
- int unit;
-{
- fsm_lowerdown(&ipv6cp_fsm[unit]);
-}
-
-
-/*
- * ipv6cp_input - Input IPV6CP packet.
- */
-static void
-ipv6cp_input(unit, p, len)
- int unit;
- u_char *p;
- int len;
-{
- fsm_input(&ipv6cp_fsm[unit], p, len);
-}
-
-
-/*
- * ipv6cp_protrej - A Protocol-Reject was received for IPV6CP.
- *
- * Pretend the lower layer went down, so we shut up.
- */
-static void
-ipv6cp_protrej(unit)
- int unit;
-{
- fsm_lowerdown(&ipv6cp_fsm[unit]);
-}
-
-
-/*
- * ipv6cp_resetci - Reset our CI.
- */
-static void
-ipv6cp_resetci(f)
- fsm *f;
-{
- ipv6cp_options *wo = &ipv6cp_wantoptions[f->unit];
- ipv6cp_options *go = &ipv6cp_gotoptions[f->unit];
-
- wo->req_ifaceid = wo->neg_ifaceid && ipv6cp_allowoptions[f->unit].neg_ifaceid;
-
- if (!wo->opt_local) {
- eui64_magic_nz(wo->ourid);
- }
-
- *go = *wo;
- eui64_zero(go->hisid); /* last proposed interface identifier */
-}
-
-
-/*
- * ipv6cp_cilen - Return length of our CI.
- */
-static int
-ipv6cp_cilen(f)
- fsm *f;
-{
- ipv6cp_options *go = &ipv6cp_gotoptions[f->unit];
-
-#define LENCIVJ(neg) (neg ? CILEN_COMPRESS : 0)
-#define LENCIIFACEID(neg) (neg ? CILEN_IFACEID : 0)
-
- return (LENCIIFACEID(go->neg_ifaceid) +
- LENCIVJ(go->neg_vj));
-}
-
-
-/*
- * ipv6cp_addci - Add our desired CIs to a packet.
- */
-static void
-ipv6cp_addci(f, ucp, lenp)
- fsm *f;
- u_char *ucp;
- int *lenp;
-{
- ipv6cp_options *go = &ipv6cp_gotoptions[f->unit];
- int len = *lenp;
-
-#define ADDCIVJ(opt, neg, val) \
- if (neg) { \
- int vjlen = CILEN_COMPRESS; \
- if (len >= vjlen) { \
- PUTCHAR(opt, ucp); \
- PUTCHAR(vjlen, ucp); \
- PUTSHORT(val, ucp); \
- len -= vjlen; \
- } else \
- neg = 0; \
- }
-
-#define ADDCIIFACEID(opt, neg, val1) \
- if (neg) { \
- int idlen = CILEN_IFACEID; \
- if (len >= idlen) { \
- PUTCHAR(opt, ucp); \
- PUTCHAR(idlen, ucp); \
- eui64_put(val1, ucp); \
- len -= idlen; \
- } else \
- neg = 0; \
- }
-
- ADDCIIFACEID(CI_IFACEID, go->neg_ifaceid, go->ourid);
-
- ADDCIVJ(CI_COMPRESSTYPE, go->neg_vj, go->vj_protocol);
-
- *lenp -= len;
-}
-
-
-/*
- * ipv6cp_ackci - Ack our CIs.
- *
- * Returns:
- * 0 - Ack was bad.
- * 1 - Ack was good.
- */
-static int
-ipv6cp_ackci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- ipv6cp_options *go = &ipv6cp_gotoptions[f->unit];
- u_short cilen, citype, cishort;
- eui64_t ifaceid;
-
- /*
- * CIs must be in exactly the same order that we sent...
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
-
-#define ACKCIVJ(opt, neg, val) \
- if (neg) { \
- int vjlen = CILEN_COMPRESS; \
- if ((len -= vjlen) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != vjlen || \
- citype != opt) \
- goto bad; \
- GETSHORT(cishort, p); \
- if (cishort != val) \
- goto bad; \
- }
-
-#define ACKCIIFACEID(opt, neg, val1) \
- if (neg) { \
- int idlen = CILEN_IFACEID; \
- if ((len -= idlen) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != idlen || \
- citype != opt) \
- goto bad; \
- eui64_get(ifaceid, p); \
- if (! eui64_equals(val1, ifaceid)) \
- goto bad; \
- }
-
- ACKCIIFACEID(CI_IFACEID, go->neg_ifaceid, go->ourid);
-
- ACKCIVJ(CI_COMPRESSTYPE, go->neg_vj, go->vj_protocol);
-
- /*
- * If there are any remaining CIs, then this packet is bad.
- */
- if (len != 0)
- goto bad;
- return (1);
-
-bad:
- IPV6CPDEBUG(("ipv6cp_ackci: received bad Ack!"));
- return (0);
-}
-
-/*
- * ipv6cp_nakci - Peer has sent a NAK for some of our CIs.
- * This should not modify any state if the Nak is bad
- * or if IPV6CP is in the OPENED state.
- *
- * Returns:
- * 0 - Nak was bad.
- * 1 - Nak was good.
- */
-static int
-ipv6cp_nakci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- ipv6cp_options *go = &ipv6cp_gotoptions[f->unit];
- u_char citype, cilen, *next;
- u_short cishort;
- eui64_t ifaceid;
- ipv6cp_options no; /* options we've seen Naks for */
- ipv6cp_options try; /* options to request next time */
-
- BZERO(&no, sizeof(no));
- try = *go;
-
- /*
- * Any Nak'd CIs must be in exactly the same order that we sent.
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
-#define NAKCIIFACEID(opt, neg, code) \
- if (go->neg && \
- len >= (cilen = CILEN_IFACEID) && \
- p[1] == cilen && \
- p[0] == opt) { \
- len -= cilen; \
- INCPTR(2, p); \
- eui64_get(ifaceid, p); \
- no.neg = 1; \
- code \
- }
-
-#define NAKCIVJ(opt, neg, code) \
- if (go->neg && \
- ((cilen = p[1]) == CILEN_COMPRESS) && \
- len >= cilen && \
- p[0] == opt) { \
- len -= cilen; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- no.neg = 1; \
- code \
- }
-
- /*
- * Accept the peer's idea of {our,his} interface identifier, if different
- * from our idea, only if the accept_{local,remote} flag is set.
- */
- NAKCIIFACEID(CI_IFACEID, neg_ifaceid,
- if (go->accept_local) {
- while (eui64_iszero(ifaceid) ||
- eui64_equals(ifaceid, go->hisid)) /* bad luck */
- eui64_magic(ifaceid);
- try.ourid = ifaceid;
- IPV6CPDEBUG(("local LL address %s", llv6_ntoa(ifaceid)));
- }
- );
-
-#ifdef IPV6CP_COMP
- NAKCIVJ(CI_COMPRESSTYPE, neg_vj,
- {
- if (cishort == IPV6CP_COMP) {
- try.vj_protocol = cishort;
- } else {
- try.neg_vj = 0;
- }
- }
- );
-#else
- NAKCIVJ(CI_COMPRESSTYPE, neg_vj,
- {
- try.neg_vj = 0;
- }
- );
-#endif
-
- /*
- * There may be remaining CIs, if the peer is requesting negotiation
- * on an option that we didn't include in our request packet.
- * If they want to negotiate about interface identifier, we comply.
- * If they want us to ask for compression, we refuse.
- */
- while (len > CILEN_VOID) {
- GETCHAR(citype, p);
- GETCHAR(cilen, p);
- if( (len -= cilen) < 0 )
- goto bad;
- next = p + cilen - 2;
-
- switch (citype) {
- case CI_COMPRESSTYPE:
- if (go->neg_vj || no.neg_vj ||
- (cilen != CILEN_COMPRESS))
- goto bad;
- no.neg_vj = 1;
- break;
- case CI_IFACEID:
- if (go->neg_ifaceid || no.neg_ifaceid || cilen != CILEN_IFACEID)
- goto bad;
- try.neg_ifaceid = 1;
- eui64_get(ifaceid, p);
- if (go->accept_local) {
- while (eui64_iszero(ifaceid) ||
- eui64_equals(ifaceid, go->hisid)) /* bad luck */
- eui64_magic(ifaceid);
- try.ourid = ifaceid;
- }
- no.neg_ifaceid = 1;
- break;
- }
- p = next;
- }
-
- /* If there is still anything left, this packet is bad. */
- if (len != 0)
- goto bad;
-
- /*
- * OK, the Nak is good. Now we can update state.
- */
- if (f->state != OPENED)
- *go = try;
-
- return 1;
-
-bad:
- IPV6CPDEBUG(("ipv6cp_nakci: received bad Nak!"));
- return 0;
-}
-
-
-/*
- * ipv6cp_rejci - Reject some of our CIs.
- */
-static int
-ipv6cp_rejci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- ipv6cp_options *go = &ipv6cp_gotoptions[f->unit];
- u_char cilen;
- u_short cishort;
- eui64_t ifaceid;
- ipv6cp_options try; /* options to request next time */
-
- try = *go;
- /*
- * Any Rejected CIs must be in exactly the same order that we sent.
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
-#define REJCIIFACEID(opt, neg, val1) \
- if (go->neg && \
- len >= (cilen = CILEN_IFACEID) && \
- p[1] == cilen && \
- p[0] == opt) { \
- len -= cilen; \
- INCPTR(2, p); \
- eui64_get(ifaceid, p); \
- /* Check rejected value. */ \
- if (! eui64_equals(ifaceid, val1)) \
- goto bad; \
- try.neg = 0; \
- }
-
-#define REJCIVJ(opt, neg, val) \
- if (go->neg && \
- p[1] == CILEN_COMPRESS && \
- len >= p[1] && \
- p[0] == opt) { \
- len -= p[1]; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- /* Check rejected value. */ \
- if (cishort != val) \
- goto bad; \
- try.neg = 0; \
- }
-
- REJCIIFACEID(CI_IFACEID, neg_ifaceid, go->ourid);
-
- REJCIVJ(CI_COMPRESSTYPE, neg_vj, go->vj_protocol);
-
- /*
- * If there are any remaining CIs, then this packet is bad.
- */
- if (len != 0)
- goto bad;
- /*
- * Now we can update state.
- */
- if (f->state != OPENED)
- *go = try;
- return 1;
-
-bad:
- IPV6CPDEBUG(("ipv6cp_rejci: received bad Reject!"));
- return 0;
-}
-
-
-/*
- * ipv6cp_reqci - Check the peer's requested CIs and send appropriate response.
- *
- * Returns: CONFACK, CONFNAK or CONFREJ and input packet modified
- * appropriately. If reject_if_disagree is non-zero, doesn't return
- * CONFNAK; returns CONFREJ if it can't return CONFACK.
- */
-static int
-ipv6cp_reqci(f, inp, len, reject_if_disagree)
- fsm *f;
- u_char *inp; /* Requested CIs */
- int *len; /* Length of requested CIs */
- int reject_if_disagree;
-{
- ipv6cp_options *wo = &ipv6cp_wantoptions[f->unit];
- ipv6cp_options *ho = &ipv6cp_hisoptions[f->unit];
- ipv6cp_options *ao = &ipv6cp_allowoptions[f->unit];
- ipv6cp_options *go = &ipv6cp_gotoptions[f->unit];
- u_char *cip, *next; /* Pointer to current and next CIs */
- u_short cilen, citype; /* Parsed len, type */
- u_short cishort; /* Parsed short value */
- eui64_t ifaceid; /* Parsed interface identifier */
- int rc = CONFACK; /* Final packet return code */
- int orc; /* Individual option return code */
- u_char *p; /* Pointer to next char to parse */
- u_char *ucp = inp; /* Pointer to current output char */
- int l = *len; /* Length left */
-
- /*
- * Reset all his options.
- */
- BZERO(ho, sizeof(*ho));
-
- /*
- * Process all his options.
- */
- next = inp;
- while (l) {
- orc = CONFACK; /* Assume success */
- cip = p = next; /* Remember begining of CI */
- if (l < 2 || /* Not enough data for CI header or */
- p[1] < 2 || /* CI length too small or */
- p[1] > l) { /* CI length too big? */
- IPV6CPDEBUG(("ipv6cp_reqci: bad CI length!"));
- orc = CONFREJ; /* Reject bad CI */
- cilen = l; /* Reject till end of packet */
- l = 0; /* Don't loop again */
- goto endswitch;
- }
- GETCHAR(citype, p); /* Parse CI type */
- GETCHAR(cilen, p); /* Parse CI length */
- l -= cilen; /* Adjust remaining length */
- next += cilen; /* Step to next CI */
-
- switch (citype) { /* Check CI type */
- case CI_IFACEID:
- IPV6CPDEBUG(("ipv6cp: received interface identifier "));
-
- if (!ao->neg_ifaceid ||
- cilen != CILEN_IFACEID) { /* Check CI length */
- orc = CONFREJ; /* Reject CI */
- break;
- }
-
- /*
- * If he has no interface identifier, or if we both have same
- * identifier then NAK it with new idea.
- * In particular, if we don't know his identifier, but he does,
- * then accept it.
- */
- eui64_get(ifaceid, p);
- IPV6CPDEBUG(("(%s)", llv6_ntoa(ifaceid)));
- if (eui64_iszero(ifaceid) && eui64_iszero(go->ourid)) {
- orc = CONFREJ; /* Reject CI */
- break;
- }
- if (!eui64_iszero(wo->hisid) &&
- !eui64_equals(ifaceid, wo->hisid) &&
- eui64_iszero(go->hisid)) {
-
- orc = CONFNAK;
- ifaceid = wo->hisid;
- go->hisid = ifaceid;
- DECPTR(sizeof(ifaceid), p);
- eui64_put(ifaceid, p);
- } else
- if (eui64_iszero(ifaceid) || eui64_equals(ifaceid, go->ourid)) {
- orc = CONFNAK;
- if (eui64_iszero(go->hisid)) /* first time, try option */
- ifaceid = wo->hisid;
- while (eui64_iszero(ifaceid) ||
- eui64_equals(ifaceid, go->ourid)) /* bad luck */
- eui64_magic(ifaceid);
- go->hisid = ifaceid;
- DECPTR(sizeof(ifaceid), p);
- eui64_put(ifaceid, p);
- }
-
- ho->neg_ifaceid = 1;
- ho->hisid = ifaceid;
- break;
-
- case CI_COMPRESSTYPE:
- IPV6CPDEBUG(("ipv6cp: received COMPRESSTYPE "));
- if (!ao->neg_vj ||
- (cilen != CILEN_COMPRESS)) {
- orc = CONFREJ;
- break;
- }
- GETSHORT(cishort, p);
- IPV6CPDEBUG(("(%d)", cishort));
-
-#ifdef IPV6CP_COMP
- if (!(cishort == IPV6CP_COMP)) {
- orc = CONFREJ;
- break;
- }
-
- ho->neg_vj = 1;
- ho->vj_protocol = cishort;
- break;
-#else
- orc = CONFREJ;
- break;
-#endif
-
- default:
- orc = CONFREJ;
- break;
- }
-
-endswitch:
- IPV6CPDEBUG((" (%s)\n", CODENAME(orc)));
-
- if (orc == CONFACK && /* Good CI */
- rc != CONFACK) /* but prior CI wasnt? */
- continue; /* Don't send this one */
-
- if (orc == CONFNAK) { /* Nak this CI? */
- if (reject_if_disagree) /* Getting fed up with sending NAKs? */
- orc = CONFREJ; /* Get tough if so */
- else {
- if (rc == CONFREJ) /* Rejecting prior CI? */
- continue; /* Don't send this one */
- if (rc == CONFACK) { /* Ack'd all prior CIs? */
- rc = CONFNAK; /* Not anymore... */
- ucp = inp; /* Backup */
- }
- }
- }
-
- if (orc == CONFREJ && /* Reject this CI */
- rc != CONFREJ) { /* but no prior ones? */
- rc = CONFREJ;
- ucp = inp; /* Backup */
- }
-
- /* Need to move CI? */
- if (ucp != cip)
- BCOPY(cip, ucp, cilen); /* Move it */
-
- /* Update output pointer */
- INCPTR(cilen, ucp);
- }
-
- /*
- * If we aren't rejecting this packet, and we want to negotiate
- * their identifier and they didn't send their identifier, then we
- * send a NAK with a CI_IFACEID option appended. We assume the
- * input buffer is long enough that we can append the extra
- * option safely.
- */
- if (rc != CONFREJ && !ho->neg_ifaceid &&
- wo->req_ifaceid && !reject_if_disagree) {
- if (rc == CONFACK) {
- rc = CONFNAK;
- ucp = inp; /* reset pointer */
- wo->req_ifaceid = 0; /* don't ask again */
- }
- PUTCHAR(CI_IFACEID, ucp);
- PUTCHAR(CILEN_IFACEID, ucp);
- eui64_put(wo->hisid, ucp);
- }
-
- *len = ucp - inp; /* Compute output length */
- IPV6CPDEBUG(("ipv6cp: returning Configure-%s", CODENAME(rc)));
- return (rc); /* Return final code */
-}
-
-
-/*
- * ipv6_check_options - check that any IP-related options are OK,
- * and assign appropriate defaults.
- */
-static void
-ipv6_check_options()
-{
- ipv6cp_options *wo = &ipv6cp_wantoptions[0];
-
- if (!ipv6cp_protent.enabled_flag)
- return;
-
-#if defined(SOL2)
- /*
- * Persistent link-local id is only used when user has not explicitly
- * configure/hard-code the id
- */
- if ((wo->use_persistent) && (!wo->opt_local) && (!wo->opt_remote)) {
-
- /*
- * On systems where there are no Ethernet interfaces used, there
- * may be other ways to obtain a persistent id. Right now, it
- * will fall back to using magic [see eui64_magic] below when
- * an EUI-48 from MAC address can't be obtained. Other possibilities
- * include obtaining EEPROM serial numbers, or some other unique
- * yet persistent number. On Sparc platforms, this is possible,
- * but too bad there's no standards yet for x86 machines.
- */
- if (ether_to_eui64(&wo->ourid)) {
- wo->opt_local = 1;
- }
- }
-#endif
-
- if (!wo->opt_local) { /* init interface identifier */
- if (wo->use_ip && eui64_iszero(wo->ourid)) {
- eui64_setlo32(wo->ourid, ntohl(ipcp_wantoptions[0].ouraddr));
- if (!eui64_iszero(wo->ourid))
- wo->opt_local = 1;
- }
-
- while (eui64_iszero(wo->ourid))
- eui64_magic(wo->ourid);
- }
-
- if (!wo->opt_remote) {
- if (wo->use_ip && eui64_iszero(wo->hisid)) {
- eui64_setlo32(wo->hisid, ntohl(ipcp_wantoptions[0].hisaddr));
- if (!eui64_iszero(wo->hisid))
- wo->opt_remote = 1;
- }
- }
-
- if (demand && (eui64_iszero(wo->ourid) || eui64_iszero(wo->hisid))) {
- option_error("local/remote LL address required for demand-dialling\n");
- exit(1);
- }
-}
-
-
-/*
- * ipv6_demand_conf - configure the interface as though
- * IPV6CP were up, for use with dial-on-demand.
- */
-static int
-ipv6_demand_conf(u)
- int u;
-{
- ipv6cp_options *wo = &ipv6cp_wantoptions[u];
-
-#if defined(__linux__) || defined(SOL2) || (defined(SVR4) && (defined(SNI) || defined(__USLC__)))
-#if defined(SOL2)
- if (!sif6up(u))
- return 0;
-#else
- if (!sifup(u))
- return 0;
-#endif /* defined(SOL2) */
-#endif
- if (!sif6addr(u, wo->ourid, wo->hisid))
- return 0;
-#if !defined(__linux__) && !(defined(SVR4) && (defined(SNI) || defined(__USLC__)))
- if (!sifup(u))
- return 0;
-#endif
- if (!sifnpmode(u, PPP_IPV6, NPMODE_QUEUE))
- return 0;
-
- notice("ipv6_demand_conf");
- notice("local LL address %s", llv6_ntoa(wo->ourid));
- notice("remote LL address %s", llv6_ntoa(wo->hisid));
-
- return 1;
-}
-
-
-/*
- * ipv6cp_up - IPV6CP has come UP.
- *
- * Configure the IPv6 network interface appropriately and bring it up.
- */
-static void
-ipv6cp_up(f)
- fsm *f;
-{
- ipv6cp_options *ho = &ipv6cp_hisoptions[f->unit];
- ipv6cp_options *go = &ipv6cp_gotoptions[f->unit];
- ipv6cp_options *wo = &ipv6cp_wantoptions[f->unit];
-
- IPV6CPDEBUG(("ipv6cp: up"));
-
- /*
- * We must have a non-zero LL address for both ends of the link.
- */
- if (!ho->neg_ifaceid)
- ho->hisid = wo->hisid;
-
- if(!no_ifaceid_neg) {
- if (eui64_iszero(ho->hisid)) {
- error("Could not determine remote LL address");
- ipv6cp_close(f->unit, "Could not determine remote LL address");
- return;
- }
- if (eui64_iszero(go->ourid)) {
- error("Could not determine local LL address");
- ipv6cp_close(f->unit, "Could not determine local LL address");
- return;
- }
- if (eui64_equals(go->ourid, ho->hisid)) {
- error("local and remote LL addresses are equal");
- ipv6cp_close(f->unit, "local and remote LL addresses are equal");
- return;
- }
- }
- script_setenv("LLLOCAL", llv6_ntoa(go->ourid), 0);
- script_setenv("LLREMOTE", llv6_ntoa(ho->hisid), 0);
-
-#ifdef IPV6CP_COMP
- /* set tcp compression */
- sif6comp(f->unit, ho->neg_vj);
-#endif
-
- /*
- * If we are doing dial-on-demand, the interface is already
- * configured, so we put out any saved-up packets, then set the
- * interface to pass IPv6 packets.
- */
- if (demand) {
- if (! eui64_equals(go->ourid, wo->ourid) ||
- ! eui64_equals(ho->hisid, wo->hisid)) {
- if (! eui64_equals(go->ourid, wo->ourid))
- warn("Local LL address changed to %s",
- llv6_ntoa(go->ourid));
- if (! eui64_equals(ho->hisid, wo->hisid))
- warn("Remote LL address changed to %s",
- llv6_ntoa(ho->hisid));
- ipv6cp_clear_addrs(f->unit, go->ourid, ho->hisid);
-
- /* Set the interface to the new addresses */
- if (!sif6addr(f->unit, go->ourid, ho->hisid)) {
- if (debug)
- warn("sif6addr failed");
- ipv6cp_close(f->unit, "Interface configuration failed");
- return;
- }
-
- }
- demand_rexmit(PPP_IPV6);
- sifnpmode(f->unit, PPP_IPV6, NPMODE_PASS);
-
- } else {
- /*
- * Set LL addresses
- */
-#if !defined(__linux__) && !defined(SOL2) && !(defined(SVR4) && (defined(SNI) || defined(__USLC__)))
- if (!sif6addr(f->unit, go->ourid, ho->hisid)) {
- if (debug)
- warn("sif6addr failed");
- ipv6cp_close(f->unit, "Interface configuration failed");
- return;
- }
-#endif
-
- /* bring the interface up for IPv6 */
-#if defined(SOL2)
- if (!sif6up(f->unit)) {
- if (debug)
- warn("sifup failed (IPV6)");
- ipv6cp_close(f->unit, "Interface configuration failed");
- return;
- }
-#else
- if (!sifup(f->unit)) {
- if (debug)
- warn("sifup failed (IPV6)");
- ipv6cp_close(f->unit, "Interface configuration failed");
- return;
- }
-#endif /* defined(SOL2) */
-
-#if defined(__linux__) || defined(SOL2) || (defined(SVR4) && (defined(SNI) || defined(__USLC__)))
- if (!sif6addr(f->unit, go->ourid, ho->hisid)) {
- if (debug)
- warn("sif6addr failed");
- ipv6cp_close(f->unit, "Interface configuration failed");
- return;
- }
-#endif
- sifnpmode(f->unit, PPP_IPV6, NPMODE_PASS);
-
- notice("local LL address %s", llv6_ntoa(go->ourid));
- notice("remote LL address %s", llv6_ntoa(ho->hisid));
- }
-
- np_up(f->unit, PPP_IPV6);
- ipv6cp_is_up = 1;
-
- /*
- * Execute the ipv6-up script, like this:
- * /etc/ppp/ipv6-up interface tty speed local-LL remote-LL
- */
- if (ipv6cp_script_state == s_down && ipv6cp_script_pid == 0) {
- ipv6cp_script_state = s_up;
- ipv6cp_script(_PATH_IPV6UP);
- }
-}
-
-
-/*
- * ipv6cp_down - IPV6CP has gone DOWN.
- *
- * Take the IPv6 network interface down, clear its addresses
- * and delete routes through it.
- */
-static void
-ipv6cp_down(f)
- fsm *f;
-{
- IPV6CPDEBUG(("ipv6cp: down"));
- update_link_stats(f->unit);
- if (ipv6cp_is_up) {
- ipv6cp_is_up = 0;
- np_down(f->unit, PPP_IPV6);
- }
-#ifdef IPV6CP_COMP
- sif6comp(f->unit, 0);
-#endif
-
- /*
- * If we are doing dial-on-demand, set the interface
- * to queue up outgoing packets (for now).
- */
- if (demand) {
- sifnpmode(f->unit, PPP_IPV6, NPMODE_QUEUE);
- } else {
- sifnpmode(f->unit, PPP_IPV6, NPMODE_DROP);
-#if !defined(__linux__) && !(defined(SVR4) && (defined(SNI) || defined(__USLC)))
-#if defined(SOL2)
- sif6down(f->unit);
-#else
- sifdown(f->unit);
-#endif /* defined(SOL2) */
-#endif
- ipv6cp_clear_addrs(f->unit,
- ipv6cp_gotoptions[f->unit].ourid,
- ipv6cp_hisoptions[f->unit].hisid);
-#if defined(__linux__) || (defined(SVR4) && (defined(SNI) || defined(__USLC)))
- sifdown(f->unit);
-#endif
- }
-
- /* Execute the ipv6-down script */
- if (ipv6cp_script_state == s_up && ipv6cp_script_pid == 0) {
- ipv6cp_script_state = s_down;
- ipv6cp_script(_PATH_IPV6DOWN);
- }
-}
-
-
-/*
- * ipv6cp_clear_addrs() - clear the interface addresses, routes,
- * proxy neighbour discovery entries, etc.
- */
-static void
-ipv6cp_clear_addrs(unit, ourid, hisid)
- int unit;
- eui64_t ourid;
- eui64_t hisid;
-{
- cif6addr(unit, ourid, hisid);
-}
-
-
-/*
- * ipv6cp_finished - possibly shut down the lower layers.
- */
-static void
-ipv6cp_finished(f)
- fsm *f;
-{
- np_finished(f->unit, PPP_IPV6);
-}
-
-
-/*
- * ipv6cp_script_done - called when the ipv6-up or ipv6-down script
- * has finished.
- */
-static void
-ipv6cp_script_done(arg)
- void *arg;
-{
- ipv6cp_script_pid = 0;
- switch (ipv6cp_script_state) {
- case s_up:
- if (ipv6cp_fsm[0].state != OPENED) {
- ipv6cp_script_state = s_down;
- ipv6cp_script(_PATH_IPV6DOWN);
- }
- break;
- case s_down:
- if (ipv6cp_fsm[0].state == OPENED) {
- ipv6cp_script_state = s_up;
- ipv6cp_script(_PATH_IPV6UP);
- }
- break;
- }
-}
-
-
-/*
- * ipv6cp_script - Execute a script with arguments
- * interface-name tty-name speed local-LL remote-LL.
- */
-static void
-ipv6cp_script(script)
- char *script;
-{
- char strspeed[32], strlocal[32], strremote[32];
- char *argv[8];
-
- sprintf(strspeed, "%d", baud_rate);
- strcpy(strlocal, llv6_ntoa(ipv6cp_gotoptions[0].ourid));
- strcpy(strremote, llv6_ntoa(ipv6cp_hisoptions[0].hisid));
-
- argv[0] = script;
- argv[1] = ifname;
- argv[2] = devnam;
- argv[3] = strspeed;
- argv[4] = strlocal;
- argv[5] = strremote;
- argv[6] = ipparam;
- argv[7] = NULL;
-
- ipv6cp_script_pid = run_program(script, argv, 0, ipv6cp_script_done, NULL);
-}
-
-/*
- * ipv6cp_printpkt - print the contents of an IPV6CP packet.
- */
-static char *ipv6cp_codenames[] = {
- "ConfReq", "ConfAck", "ConfNak", "ConfRej",
- "TermReq", "TermAck", "CodeRej"
-};
-
-static int
-ipv6cp_printpkt(p, plen, printer, arg)
- u_char *p;
- int plen;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int code, id, len, olen;
- u_char *pstart, *optend;
- u_short cishort;
- eui64_t ifaceid;
-
- if (plen < HEADERLEN)
- return 0;
- pstart = p;
- GETCHAR(code, p);
- GETCHAR(id, p);
- GETSHORT(len, p);
- if (len < HEADERLEN || len > plen)
- return 0;
-
- if (code >= 1 && code <= sizeof(ipv6cp_codenames) / sizeof(char *))
- printer(arg, " %s", ipv6cp_codenames[code-1]);
- else
- printer(arg, " code=0x%x", code);
- printer(arg, " id=0x%x", id);
- len -= HEADERLEN;
- switch (code) {
- case CONFREQ:
- case CONFACK:
- case CONFNAK:
- case CONFREJ:
- /* print option list */
- while (len >= 2) {
- GETCHAR(code, p);
- GETCHAR(olen, p);
- p -= 2;
- if (olen < 2 || olen > len) {
- break;
- }
- printer(arg, " <");
- len -= olen;
- optend = p + olen;
- switch (code) {
- case CI_COMPRESSTYPE:
- if (olen >= CILEN_COMPRESS) {
- p += 2;
- GETSHORT(cishort, p);
- printer(arg, "compress ");
- printer(arg, "0x%x", cishort);
- }
- break;
- case CI_IFACEID:
- if (olen == CILEN_IFACEID) {
- p += 2;
- eui64_get(ifaceid, p);
- printer(arg, "addr %s", llv6_ntoa(ifaceid));
- }
- break;
- }
- while (p < optend) {
- GETCHAR(code, p);
- printer(arg, " %.2x", code);
- }
- printer(arg, ">");
- }
- break;
-
- case TERMACK:
- case TERMREQ:
- if (len > 0 && *p >= ' ' && *p < 0x7f) {
- printer(arg, " ");
- print_string((char *)p, len, printer, arg);
- p += len;
- len = 0;
- }
- break;
- }
-
- /* print the rest of the bytes in the packet */
- for (; len > 0; --len) {
- GETCHAR(code, p);
- printer(arg, " %.2x", code);
- }
-
- return p - pstart;
-}
-
-/*
- * ipv6_active_pkt - see if this IP packet is worth bringing the link up for.
- * We don't bring the link up for IP fragments or for TCP FIN packets
- * with no data.
- */
-#define IP6_HDRLEN 40 /* bytes */
-#define IP6_NHDR_FRAG 44 /* fragment IPv6 header */
-#define IPPROTO_TCP 6
-#define TCP_HDRLEN 20
-#define TH_FIN 0x01
-
-/*
- * We use these macros because the IP header may be at an odd address,
- * and some compilers might use word loads to get th_off or ip_hl.
- */
-
-#define get_ip6nh(x) (((unsigned char *)(x))[6])
-#define get_tcpoff(x) (((unsigned char *)(x))[12] >> 4)
-#define get_tcpflags(x) (((unsigned char *)(x))[13])
-
-static int
-ipv6_active_pkt(pkt, len)
- u_char *pkt;
- int len;
-{
- u_char *tcp;
-
- len -= PPP_HDRLEN;
- pkt += PPP_HDRLEN;
- if (len < IP6_HDRLEN)
- return 0;
- if (get_ip6nh(pkt) == IP6_NHDR_FRAG)
- return 0;
- if (get_ip6nh(pkt) != IPPROTO_TCP)
- return 1;
- if (len < IP6_HDRLEN + TCP_HDRLEN)
- return 0;
- tcp = pkt + IP6_HDRLEN;
- if ((get_tcpflags(tcp) & TH_FIN) != 0 && len == IP6_HDRLEN + get_tcpoff(tcp) * 4)
- return 0;
- return 1;
-}
diff --git a/mdk-stage1/ppp/pppd/ipv6cp.h b/mdk-stage1/ppp/pppd/ipv6cp.h
deleted file mode 100644
index c98d80209..000000000
--- a/mdk-stage1/ppp/pppd/ipv6cp.h
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- ipv6cp.h - PPP IPV6 Control Protocol.
- Copyright (C) 1999 Tommi Komulainen <Tommi.Komulainen@iki.fi>
-
- Redistribution and use in source and binary forms are permitted
- provided that the above copyright notice and this paragraph are
- duplicated in all such forms. The name of the author may not be
- used to endorse or promote products derived from this software
- without specific prior written permission.
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-*/
-
-/* Original version, based on RFC2023 :
-
- Copyright (c) 1995, 1996, 1997 Francis.Dupont@inria.fr, INRIA Rocquencourt,
- Alain.Durand@imag.fr, IMAG,
- Jean-Luc.Richier@imag.fr, IMAG-LSR.
-
- Copyright (c) 1998, 1999 Francis.Dupont@inria.fr, GIE DYADE,
- Alain.Durand@imag.fr, IMAG,
- Jean-Luc.Richier@imag.fr, IMAG-LSR.
-
- Ce travail a été fait au sein du GIE DYADE (Groupement d'Intérêt
- Économique ayant pour membres BULL S.A. et l'INRIA).
-
- Ce logiciel informatique est disponible aux conditions
- usuelles dans la recherche, c'est-à-dire qu'il peut
- être utilisé, copié, modifié, distribué à l'unique
- condition que ce texte soit conservé afin que
- l'origine de ce logiciel soit reconnue.
-
- Le nom de l'Institut National de Recherche en Informatique
- et en Automatique (INRIA), de l'IMAG, ou d'une personne morale
- ou physique ayant participé à l'élaboration de ce logiciel ne peut
- être utilisé sans son accord préalable explicite.
-
- Ce logiciel est fourni tel quel sans aucune garantie,
- support ou responsabilité d'aucune sorte.
- Ce logiciel est dérivé de sources d'origine
- "University of California at Berkeley" et
- "Digital Equipment Corporation" couvertes par des copyrights.
-
- L'Institut d'Informatique et de Mathématiques Appliquées de Grenoble (IMAG)
- est une fédération d'unités mixtes de recherche du CNRS, de l'Institut National
- Polytechnique de Grenoble et de l'Université Joseph Fourier regroupant
- sept laboratoires dont le laboratoire Logiciels, Systèmes, Réseaux (LSR).
-
- This work has been done in the context of GIE DYADE (joint R & D venture
- between BULL S.A. and INRIA).
-
- This software is available with usual "research" terms
- with the aim of retain credits of the software.
- Permission to use, copy, modify and distribute this software for any
- purpose and without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies,
- and the name of INRIA, IMAG, or any contributor not be used in advertising
- or publicity pertaining to this material without the prior explicit
- permission. The software is provided "as is" without any
- warranties, support or liabilities of any kind.
- This software is derived from source code from
- "University of California at Berkeley" and
- "Digital Equipment Corporation" protected by copyrights.
-
- Grenoble's Institute of Computer Science and Applied Mathematics (IMAG)
- is a federation of seven research units funded by the CNRS, National
- Polytechnic Institute of Grenoble and University Joseph Fourier.
- The research unit in Software, Systems, Networks (LSR) is member of IMAG.
-*/
-
-/*
- * Derived from :
- *
- *
- * ipcp.h - IP Control Protocol definitions.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-/*
- * Options.
- */
-#define CI_IFACEID 1 /* Interface Identifier */
-#define CI_COMPRESSTYPE 2 /* Compression Type */
-
-/* No compression types yet defined.
- *#define IPV6CP_COMP 0x004f
- */
-typedef struct ipv6cp_options {
- int neg_ifaceid; /* Negotiate interface identifier? */
- int req_ifaceid; /* Ask peer to send interface identifier? */
- int accept_local; /* accept peer's value for iface id? */
- int opt_local; /* ourtoken set by option */
- int opt_remote; /* histoken set by option */
- int use_ip; /* use IP as interface identifier */
-#if defined(SOL2)
- int use_persistent; /* use uniquely persistent value for address */
-#endif /* defined(SOL2) */
- int neg_vj; /* Van Jacobson Compression? */
- u_short vj_protocol; /* protocol value to use in VJ option */
- eui64_t ourid, hisid; /* Interface identifiers */
-} ipv6cp_options;
-
-extern fsm ipv6cp_fsm[];
-extern ipv6cp_options ipv6cp_wantoptions[];
-extern ipv6cp_options ipv6cp_gotoptions[];
-extern ipv6cp_options ipv6cp_allowoptions[];
-extern ipv6cp_options ipv6cp_hisoptions[];
-
-extern struct protent ipv6cp_protent;
diff --git a/mdk-stage1/ppp/pppd/ipxcp.c b/mdk-stage1/ppp/pppd/ipxcp.c
deleted file mode 100644
index f9a12b934..000000000
--- a/mdk-stage1/ppp/pppd/ipxcp.c
+++ /dev/null
@@ -1,1570 +0,0 @@
-/*
- * ipxcp.c - PPP IPX Control Protocol.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#ifdef IPX_CHANGE
-
-#define RCSID "$Id$"
-
-/*
- * TODO:
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-#include <ctype.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-
-#include "pppd.h"
-#include "fsm.h"
-#include "ipxcp.h"
-#include "pathnames.h"
-#include "magic.h"
-
-static const char rcsid[] = RCSID;
-
-/* global vars */
-ipxcp_options ipxcp_wantoptions[NUM_PPP]; /* Options that we want to request */
-ipxcp_options ipxcp_gotoptions[NUM_PPP]; /* Options that peer ack'd */
-ipxcp_options ipxcp_allowoptions[NUM_PPP]; /* Options we allow peer to request */
-ipxcp_options ipxcp_hisoptions[NUM_PPP]; /* Options that we ack'd */
-
-#define wo (&ipxcp_wantoptions[0])
-#define ao (&ipxcp_allowoptions[0])
-#define go (&ipxcp_gotoptions[0])
-#define ho (&ipxcp_hisoptions[0])
-
-/*
- * Callbacks for fsm code. (CI = Configuration Information)
- */
-static void ipxcp_resetci __P((fsm *)); /* Reset our CI */
-static int ipxcp_cilen __P((fsm *)); /* Return length of our CI */
-static void ipxcp_addci __P((fsm *, u_char *, int *)); /* Add our CI */
-static int ipxcp_ackci __P((fsm *, u_char *, int)); /* Peer ack'd our CI */
-static int ipxcp_nakci __P((fsm *, u_char *, int)); /* Peer nak'd our CI */
-static int ipxcp_rejci __P((fsm *, u_char *, int)); /* Peer rej'd our CI */
-static int ipxcp_reqci __P((fsm *, u_char *, int *, int)); /* Rcv CI */
-static void ipxcp_up __P((fsm *)); /* We're UP */
-static void ipxcp_down __P((fsm *)); /* We're DOWN */
-static void ipxcp_finished __P((fsm *)); /* Don't need lower layer */
-static void ipxcp_script __P((fsm *, char *)); /* Run an up/down script */
-
-fsm ipxcp_fsm[NUM_PPP]; /* IPXCP fsm structure */
-
-static fsm_callbacks ipxcp_callbacks = { /* IPXCP callback routines */
- ipxcp_resetci, /* Reset our Configuration Information */
- ipxcp_cilen, /* Length of our Configuration Information */
- ipxcp_addci, /* Add our Configuration Information */
- ipxcp_ackci, /* ACK our Configuration Information */
- ipxcp_nakci, /* NAK our Configuration Information */
- ipxcp_rejci, /* Reject our Configuration Information */
- ipxcp_reqci, /* Request peer's Configuration Information */
- ipxcp_up, /* Called when fsm reaches OPENED state */
- ipxcp_down, /* Called when fsm leaves OPENED state */
- NULL, /* Called when we want the lower layer up */
- ipxcp_finished, /* Called when we want the lower layer down */
- NULL, /* Called when Protocol-Reject received */
- NULL, /* Retransmission is necessary */
- NULL, /* Called to handle protocol-specific codes */
- "IPXCP" /* String name of protocol */
-};
-
-/*
- * Command-line options.
- */
-static int setipxnode __P((char **));
-static void printipxnode __P((option_t *,
- void (*)(void *, char *, ...), void *));
-static int setipxname __P((char **));
-
-static option_t ipxcp_option_list[] = {
- { "ipx", o_bool, &ipxcp_protent.enabled_flag,
- "Enable IPXCP (and IPX)", OPT_PRIO | 1 },
- { "+ipx", o_bool, &ipxcp_protent.enabled_flag,
- "Enable IPXCP (and IPX)", OPT_PRIOSUB | OPT_ALIAS | 1 },
- { "noipx", o_bool, &ipxcp_protent.enabled_flag,
- "Disable IPXCP (and IPX)", OPT_PRIOSUB },
- { "-ipx", o_bool, &ipxcp_protent.enabled_flag,
- "Disable IPXCP (and IPX)", OPT_PRIOSUB | OPT_ALIAS },
-
- { "ipx-network", o_uint32, &ipxcp_wantoptions[0].our_network,
- "Set our IPX network number", OPT_PRIO, &ipxcp_wantoptions[0].neg_nn },
-
- { "ipxcp-accept-network", o_bool, &ipxcp_wantoptions[0].accept_network,
- "Accept peer IPX network number", 1,
- &ipxcp_allowoptions[0].accept_network },
-
- { "ipx-node", o_special, (void *)setipxnode,
- "Set IPX node number", OPT_A2PRINTER, (void *)printipxnode },
-
- { "ipxcp-accept-local", o_bool, &ipxcp_wantoptions[0].accept_local,
- "Accept our IPX address", 1,
- &ipxcp_allowoptions[0].accept_local },
-
- { "ipxcp-accept-remote", o_bool, &ipxcp_wantoptions[0].accept_remote,
- "Accept peer's IPX address", 1,
- &ipxcp_allowoptions[0].accept_remote },
-
- { "ipx-routing", o_int, &ipxcp_wantoptions[0].router,
- "Set IPX routing proto number", OPT_PRIO,
- &ipxcp_wantoptions[0].neg_router },
-
- { "ipx-router-name", o_special, setipxname,
- "Set IPX router name", OPT_PRIO | OPT_A2STRVAL | OPT_STATIC,
- &ipxcp_wantoptions[0].name },
-
- { "ipxcp-restart", o_int, &ipxcp_fsm[0].timeouttime,
- "Set timeout for IPXCP", OPT_PRIO },
- { "ipxcp-max-terminate", o_int, &ipxcp_fsm[0].maxtermtransmits,
- "Set max #xmits for IPXCP term-reqs", OPT_PRIO },
- { "ipxcp-max-configure", o_int, &ipxcp_fsm[0].maxconfreqtransmits,
- "Set max #xmits for IPXCP conf-reqs", OPT_PRIO },
- { "ipxcp-max-failure", o_int, &ipxcp_fsm[0].maxnakloops,
- "Set max #conf-naks for IPXCP", OPT_PRIO },
-
- { NULL }
-};
-
-/*
- * Protocol entry points.
- */
-
-static void ipxcp_init __P((int));
-static void ipxcp_open __P((int));
-static void ipxcp_close __P((int, char *));
-static void ipxcp_lowerup __P((int));
-static void ipxcp_lowerdown __P((int));
-static void ipxcp_input __P((int, u_char *, int));
-static void ipxcp_protrej __P((int));
-static int ipxcp_printpkt __P((u_char *, int,
- void (*) __P((void *, char *, ...)), void *));
-
-struct protent ipxcp_protent = {
- PPP_IPXCP,
- ipxcp_init,
- ipxcp_input,
- ipxcp_protrej,
- ipxcp_lowerup,
- ipxcp_lowerdown,
- ipxcp_open,
- ipxcp_close,
- ipxcp_printpkt,
- NULL,
- 0,
- "IPXCP",
- "IPX",
- ipxcp_option_list,
- NULL,
- NULL,
- NULL
-};
-
-/*
- * Lengths of configuration options.
- */
-
-#define CILEN_VOID 2
-#define CILEN_COMPLETE 2 /* length of complete option */
-#define CILEN_NETN 6 /* network number length option */
-#define CILEN_NODEN 8 /* node number length option */
-#define CILEN_PROTOCOL 4 /* Minimum length of routing protocol */
-#define CILEN_NAME 3 /* Minimum length of router name */
-#define CILEN_COMPRESS 4 /* Minimum length of compression protocol */
-
-#define CODENAME(x) ((x) == CONFACK ? "ACK" : \
- (x) == CONFNAK ? "NAK" : "REJ")
-
-static int ipxcp_is_up;
-
-static char *ipx_ntoa __P((u_int32_t));
-
-/* Used in printing the node number */
-#define NODE(base) base[0], base[1], base[2], base[3], base[4], base[5]
-
-/* Used to generate the proper bit mask */
-#define BIT(num) (1 << (num))
-
-/*
- * Convert from internal to external notation
- */
-
-static short int
-to_external(internal)
-short int internal;
-{
- short int external;
-
- if (internal & BIT(IPX_NONE) )
- external = IPX_NONE;
- else
- external = RIP_SAP;
-
- return external;
-}
-
-/*
- * Make a string representation of a network IP address.
- */
-
-static char *
-ipx_ntoa(ipxaddr)
-u_int32_t ipxaddr;
-{
- static char b[64];
- slprintf(b, sizeof(b), "%x", ipxaddr);
- return b;
-}
-
-
-static u_char *
-setipxnodevalue(src,dst)
-u_char *src, *dst;
-{
- int indx;
- int item;
-
- for (;;) {
- if (!isxdigit (*src))
- break;
-
- for (indx = 0; indx < 5; ++indx) {
- dst[indx] <<= 4;
- dst[indx] |= (dst[indx + 1] >> 4) & 0x0F;
- }
-
- item = toupper (*src) - '0';
- if (item > 9)
- item -= 7;
-
- dst[5] = (dst[5] << 4) | item;
- ++src;
- }
- return src;
-}
-
-static int ipx_prio_our, ipx_prio_his;
-
-static int
-setipxnode(argv)
- char **argv;
-{
- char *end;
- int have_his = 0;
- u_char our_node[6];
- u_char his_node[6];
-
- memset (our_node, 0, 6);
- memset (his_node, 0, 6);
-
- end = setipxnodevalue (*argv, our_node);
- if (*end == ':') {
- have_his = 1;
- end = setipxnodevalue (++end, his_node);
- }
-
- if (*end == '\0') {
- ipxcp_wantoptions[0].neg_node = 1;
- if (option_priority >= ipx_prio_our) {
- memcpy(&ipxcp_wantoptions[0].our_node[0], our_node, 6);
- ipx_prio_our = option_priority;
- }
- if (have_his && option_priority >= ipx_prio_his) {
- memcpy(&ipxcp_wantoptions[0].his_node[0], his_node, 6);
- ipx_prio_his = option_priority;
- }
- return 1;
- }
-
- option_error("invalid parameter '%s' for ipx-node option", *argv);
- return 0;
-}
-
-static void
-printipxnode(opt, printer, arg)
- option_t *opt;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- unsigned char *p;
-
- p = ipxcp_wantoptions[0].our_node;
- if (ipx_prio_our)
- printer(arg, "%.2x%.2x%.2x%.2x%.2x%.2x",
- p[0], p[1], p[2], p[3], p[4], p[5]);
- printer(arg, ":");
- p = ipxcp_wantoptions[0].his_node;
- if (ipx_prio_his)
- printer(arg, "%.2x%.2x%.2x%.2x%.2x%.2x",
- p[0], p[1], p[2], p[3], p[4], p[5]);
-}
-
-static int
-setipxname (argv)
- char **argv;
-{
- char *dest = ipxcp_wantoptions[0].name;
- char *src = *argv;
- int count;
- char ch;
-
- ipxcp_wantoptions[0].neg_name = 1;
- ipxcp_allowoptions[0].neg_name = 1;
- memset (dest, '\0', sizeof (ipxcp_wantoptions[0].name));
-
- count = 0;
- while (*src) {
- ch = *src++;
- if (! isalnum (ch) && ch != '_') {
- option_error("IPX router name must be alphanumeric or _");
- return 0;
- }
-
- if (count >= sizeof (ipxcp_wantoptions[0].name) - 1) {
- option_error("IPX router name is limited to %d characters",
- sizeof (ipxcp_wantoptions[0].name) - 1);
- return 0;
- }
-
- dest[count++] = toupper (ch);
- }
- dest[count] = 0;
-
- return 1;
-}
-
-/*
- * ipxcp_init - Initialize IPXCP.
- */
-static void
-ipxcp_init(unit)
- int unit;
-{
- fsm *f = &ipxcp_fsm[unit];
-
- f->unit = unit;
- f->protocol = PPP_IPXCP;
- f->callbacks = &ipxcp_callbacks;
- fsm_init(&ipxcp_fsm[unit]);
-
- memset (wo->name, 0, sizeof (wo->name));
- memset (wo->our_node, 0, sizeof (wo->our_node));
- memset (wo->his_node, 0, sizeof (wo->his_node));
-
- wo->neg_nn = 1;
- wo->neg_complete = 1;
- wo->network = 0;
-
- ao->neg_node = 1;
- ao->neg_nn = 1;
- ao->neg_name = 1;
- ao->neg_complete = 1;
- ao->neg_router = 1;
-
- ao->accept_local = 0;
- ao->accept_remote = 0;
- ao->accept_network = 0;
-
- wo->tried_rip = 0;
- wo->tried_nlsp = 0;
-}
-
-/*
- * Copy the node number
- */
-
-static void
-copy_node (src, dst)
-u_char *src, *dst;
-{
- memcpy (dst, src, sizeof (ipxcp_wantoptions[0].our_node));
-}
-
-/*
- * Compare node numbers
- */
-
-static int
-compare_node (src, dst)
-u_char *src, *dst;
-{
- return memcmp (dst, src, sizeof (ipxcp_wantoptions[0].our_node)) == 0;
-}
-
-/*
- * Is the node number zero?
- */
-
-static int
-zero_node (node)
-u_char *node;
-{
- int indx;
- for (indx = 0; indx < sizeof (ipxcp_wantoptions[0].our_node); ++indx)
- if (node [indx] != 0)
- return 0;
- return 1;
-}
-
-/*
- * Increment the node number
- */
-
-static void
-inc_node (node)
-u_char *node;
-{
- u_char *outp;
- u_int32_t magic_num;
-
- outp = node;
- magic_num = magic();
- *outp++ = '\0';
- *outp++ = '\0';
- PUTLONG (magic_num, outp);
-}
-
-/*
- * ipxcp_open - IPXCP is allowed to come up.
- */
-static void
-ipxcp_open(unit)
- int unit;
-{
- fsm_open(&ipxcp_fsm[unit]);
-}
-
-/*
- * ipxcp_close - Take IPXCP down.
- */
-static void
-ipxcp_close(unit, reason)
- int unit;
- char *reason;
-{
- fsm_close(&ipxcp_fsm[unit], reason);
-}
-
-
-/*
- * ipxcp_lowerup - The lower layer is up.
- */
-static void
-ipxcp_lowerup(unit)
- int unit;
-{
- fsm_lowerup(&ipxcp_fsm[unit]);
-}
-
-
-/*
- * ipxcp_lowerdown - The lower layer is down.
- */
-static void
-ipxcp_lowerdown(unit)
- int unit;
-{
- fsm_lowerdown(&ipxcp_fsm[unit]);
-}
-
-
-/*
- * ipxcp_input - Input IPXCP packet.
- */
-static void
-ipxcp_input(unit, p, len)
- int unit;
- u_char *p;
- int len;
-{
- fsm_input(&ipxcp_fsm[unit], p, len);
-}
-
-
-/*
- * ipxcp_protrej - A Protocol-Reject was received for IPXCP.
- *
- * Pretend the lower layer went down, so we shut up.
- */
-static void
-ipxcp_protrej(unit)
- int unit;
-{
- fsm_lowerdown(&ipxcp_fsm[unit]);
-}
-
-
-/*
- * ipxcp_resetci - Reset our CI.
- */
-static void
-ipxcp_resetci(f)
- fsm *f;
-{
- wo->req_node = wo->neg_node && ao->neg_node;
- wo->req_nn = wo->neg_nn && ao->neg_nn;
-
- if (wo->our_network == 0) {
- wo->neg_node = 1;
- ao->accept_network = 1;
- }
-/*
- * If our node number is zero then change it.
- */
- if (zero_node (wo->our_node)) {
- inc_node (wo->our_node);
- ao->accept_local = 1;
- wo->neg_node = 1;
- }
-/*
- * If his node number is zero then change it.
- */
- if (zero_node (wo->his_node)) {
- inc_node (wo->his_node);
- ao->accept_remote = 1;
- }
-/*
- * If no routing agent was specified then we do RIP/SAP according to the
- * RFC documents. If you have specified something then OK. Otherwise, we
- * do RIP/SAP.
- */
- if (ao->router == 0) {
- ao->router |= BIT(RIP_SAP);
- wo->router |= BIT(RIP_SAP);
- }
-
- /* Always specify a routing protocol unless it was REJected. */
- wo->neg_router = 1;
-/*
- * Start with these default values
- */
- *go = *wo;
-}
-
-/*
- * ipxcp_cilen - Return length of our CI.
- */
-
-static int
-ipxcp_cilen(f)
- fsm *f;
-{
- int len;
-
- len = go->neg_nn ? CILEN_NETN : 0;
- len += go->neg_node ? CILEN_NODEN : 0;
- len += go->neg_name ? CILEN_NAME + strlen (go->name) - 1 : 0;
-
- /* RFC says that defaults should not be included. */
- if (go->neg_router && to_external(go->router) != RIP_SAP)
- len += CILEN_PROTOCOL;
-
- return (len);
-}
-
-
-/*
- * ipxcp_addci - Add our desired CIs to a packet.
- */
-static void
-ipxcp_addci(f, ucp, lenp)
- fsm *f;
- u_char *ucp;
- int *lenp;
-{
-/*
- * Add the options to the record.
- */
- if (go->neg_nn) {
- PUTCHAR (IPX_NETWORK_NUMBER, ucp);
- PUTCHAR (CILEN_NETN, ucp);
- PUTLONG (go->our_network, ucp);
- }
-
- if (go->neg_node) {
- int indx;
- PUTCHAR (IPX_NODE_NUMBER, ucp);
- PUTCHAR (CILEN_NODEN, ucp);
- for (indx = 0; indx < sizeof (go->our_node); ++indx)
- PUTCHAR (go->our_node[indx], ucp);
- }
-
- if (go->neg_name) {
- int cilen = strlen (go->name);
- int indx;
- PUTCHAR (IPX_ROUTER_NAME, ucp);
- PUTCHAR (CILEN_NAME + cilen - 1, ucp);
- for (indx = 0; indx < cilen; ++indx)
- PUTCHAR (go->name [indx], ucp);
- }
-
- if (go->neg_router) {
- short external = to_external (go->router);
- if (external != RIP_SAP) {
- PUTCHAR (IPX_ROUTER_PROTOCOL, ucp);
- PUTCHAR (CILEN_PROTOCOL, ucp);
- PUTSHORT (external, ucp);
- }
- }
-}
-
-/*
- * ipxcp_ackci - Ack our CIs.
- *
- * Returns:
- * 0 - Ack was bad.
- * 1 - Ack was good.
- */
-static int
-ipxcp_ackci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- u_short cilen, citype, cishort;
- u_char cichar;
- u_int32_t cilong;
-
-#define ACKCIVOID(opt, neg) \
- if (neg) { \
- if ((len -= CILEN_VOID) < 0) \
- break; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_VOID || \
- citype != opt) \
- break; \
- }
-
-#define ACKCICOMPLETE(opt,neg) ACKCIVOID(opt, neg)
-
-#define ACKCICHARS(opt, neg, val, cnt) \
- if (neg) { \
- int indx, count = cnt; \
- len -= (count + 2); \
- if (len < 0) \
- break; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != (count + 2) || \
- citype != opt) \
- break; \
- for (indx = 0; indx < count; ++indx) {\
- GETCHAR(cichar, p); \
- if (cichar != ((u_char *) &val)[indx]) \
- break; \
- }\
- if (indx != count) \
- break; \
- }
-
-#define ACKCINODE(opt,neg,val) ACKCICHARS(opt,neg,val,sizeof(val))
-#define ACKCINAME(opt,neg,val) ACKCICHARS(opt,neg,val,strlen(val))
-
-#define ACKCINETWORK(opt, neg, val) \
- if (neg) { \
- if ((len -= CILEN_NETN) < 0) \
- break; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_NETN || \
- citype != opt) \
- break; \
- GETLONG(cilong, p); \
- if (cilong != val) \
- break; \
- }
-
-#define ACKCIPROTO(opt, neg, val) \
- if (neg) { \
- if (len < 2) \
- break; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_PROTOCOL || citype != opt) \
- break; \
- len -= cilen; \
- if (len < 0) \
- break; \
- GETSHORT(cishort, p); \
- if (cishort != to_external (val) || cishort == RIP_SAP) \
- break; \
- }
-/*
- * Process the ACK frame in the order in which the frame was assembled
- */
- do {
- ACKCINETWORK (IPX_NETWORK_NUMBER, go->neg_nn, go->our_network);
- ACKCINODE (IPX_NODE_NUMBER, go->neg_node, go->our_node);
- ACKCINAME (IPX_ROUTER_NAME, go->neg_name, go->name);
- if (len > 0)
- ACKCIPROTO (IPX_ROUTER_PROTOCOL, go->neg_router, go->router);
-/*
- * This is the end of the record.
- */
- if (len == 0)
- return (1);
- } while (0);
-/*
- * The frame is invalid
- */
- IPXCPDEBUG(("ipxcp_ackci: received bad Ack!"));
- return (0);
-}
-
-/*
- * ipxcp_nakci - Peer has sent a NAK for some of our CIs.
- * This should not modify any state if the Nak is bad
- * or if IPXCP is in the OPENED state.
- *
- * Returns:
- * 0 - Nak was bad.
- * 1 - Nak was good.
- */
-
-static int
-ipxcp_nakci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- u_char citype, cilen, *next;
- u_short s;
- u_int32_t l;
- ipxcp_options no; /* options we've seen Naks for */
- ipxcp_options try; /* options to request next time */
-
- BZERO(&no, sizeof(no));
- try = *go;
-
- while (len > CILEN_VOID) {
- GETCHAR (citype, p);
- GETCHAR (cilen, p);
- len -= cilen;
- if (len < 0)
- goto bad;
- next = &p [cilen - CILEN_VOID];
-
- switch (citype) {
- case IPX_NETWORK_NUMBER:
- if (!go->neg_nn || no.neg_nn || (cilen != CILEN_NETN))
- goto bad;
- no.neg_nn = 1;
-
- GETLONG(l, p);
- if (l && ao->accept_network)
- try.our_network = l;
- break;
-
- case IPX_NODE_NUMBER:
- if (!go->neg_node || no.neg_node || (cilen != CILEN_NODEN))
- goto bad;
- no.neg_node = 1;
-
- if (!zero_node (p) && ao->accept_local &&
- ! compare_node (p, ho->his_node))
- copy_node (p, try.our_node);
- break;
-
- /* This has never been sent. Ignore the NAK frame */
- case IPX_COMPRESSION_PROTOCOL:
- goto bad;
-
- case IPX_ROUTER_PROTOCOL:
- if (!go->neg_router || (cilen < CILEN_PROTOCOL))
- goto bad;
-
- GETSHORT (s, p);
- if (s > 15) /* This is just bad, but ignore for now. */
- break;
-
- s = BIT(s);
- if (no.router & s) /* duplicate NAKs are always bad */
- goto bad;
-
- if (no.router == 0) /* Reset on first NAK only */
- try.router = 0;
-
- no.router |= s;
- try.router |= s;
- try.neg_router = 1;
- break;
-
- /* These, according to the RFC, must never be NAKed. */
- case IPX_ROUTER_NAME:
- case IPX_COMPLETE:
- goto bad;
-
- /* These are for options which we have not seen. */
- default:
- break;
- }
- p = next;
- }
-
- /*
- * Do not permit the peer to force a router protocol which we do not
- * support. However, default to the condition that will accept "NONE".
- */
- try.router &= (ao->router | BIT(IPX_NONE));
- if (try.router == 0 && ao->router != 0)
- try.router = BIT(IPX_NONE);
-
- if (try.router != 0)
- try.neg_router = 1;
-
- /*
- * OK, the Nak is good. Now we can update state.
- * If there are any options left, we ignore them.
- */
- if (f->state != OPENED)
- *go = try;
-
- return 1;
-
-bad:
- IPXCPDEBUG(("ipxcp_nakci: received bad Nak!"));
- return 0;
-}
-
-/*
- * ipxcp_rejci - Reject some of our CIs.
- */
-static int
-ipxcp_rejci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- u_short cilen, citype, cishort;
- u_char cichar;
- u_int32_t cilong;
- ipxcp_options try; /* options to request next time */
-
-#define REJCINETWORK(opt, neg, val) \
- if (neg && p[0] == opt) { \
- if ((len -= CILEN_NETN) < 0) \
- break; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_NETN || \
- citype != opt) \
- break; \
- GETLONG(cilong, p); \
- if (cilong != val) \
- break; \
- neg = 0; \
- }
-
-#define REJCICHARS(opt, neg, val, cnt) \
- if (neg && p[0] == opt) { \
- int indx, count = cnt; \
- len -= (count + 2); \
- if (len < 0) \
- break; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != (count + 2) || \
- citype != opt) \
- break; \
- for (indx = 0; indx < count; ++indx) {\
- GETCHAR(cichar, p); \
- if (cichar != ((u_char *) &val)[indx]) \
- break; \
- }\
- if (indx != count) \
- break; \
- neg = 0; \
- }
-
-#define REJCINODE(opt,neg,val) REJCICHARS(opt,neg,val,sizeof(val))
-#define REJCINAME(opt,neg,val) REJCICHARS(opt,neg,val,strlen(val))
-
-#define REJCIVOID(opt, neg) \
- if (neg && p[0] == opt) { \
- if ((len -= CILEN_VOID) < 0) \
- break; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_VOID || citype != opt) \
- break; \
- neg = 0; \
- }
-
-/* a reject for RIP/SAP is invalid since we don't send it and you can't
- reject something which is not sent. (You can NAK, but you can't REJ.) */
-#define REJCIPROTO(opt, neg, val, bit) \
- if (neg && p[0] == opt) { \
- if ((len -= CILEN_PROTOCOL) < 0) \
- break; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_PROTOCOL) \
- break; \
- GETSHORT(cishort, p); \
- if (cishort != to_external (val) || cishort == RIP_SAP) \
- break; \
- neg = 0; \
- }
-/*
- * Any Rejected CIs must be in exactly the same order that we sent.
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
- try = *go;
-
- do {
- REJCINETWORK (IPX_NETWORK_NUMBER, try.neg_nn, try.our_network);
- REJCINODE (IPX_NODE_NUMBER, try.neg_node, try.our_node);
- REJCINAME (IPX_ROUTER_NAME, try.neg_name, try.name);
- REJCIPROTO (IPX_ROUTER_PROTOCOL, try.neg_router, try.router, 0);
-/*
- * This is the end of the record.
- */
- if (len == 0) {
- if (f->state != OPENED)
- *go = try;
- return (1);
- }
- } while (0);
-/*
- * The frame is invalid at this point.
- */
- IPXCPDEBUG(("ipxcp_rejci: received bad Reject!"));
- return 0;
-}
-
-/*
- * ipxcp_reqci - Check the peer's requested CIs and send appropriate response.
- *
- * Returns: CONFACK, CONFNAK or CONFREJ and input packet modified
- * appropriately. If reject_if_disagree is non-zero, doesn't return
- * CONFNAK; returns CONFREJ if it can't return CONFACK.
- */
-static int
-ipxcp_reqci(f, inp, len, reject_if_disagree)
- fsm *f;
- u_char *inp; /* Requested CIs */
- int *len; /* Length of requested CIs */
- int reject_if_disagree;
-{
- u_char *cip, *next; /* Pointer to current and next CIs */
- u_short cilen, citype; /* Parsed len, type */
- u_short cishort; /* Parsed short value */
- u_int32_t cinetwork; /* Parsed address values */
- int rc = CONFACK; /* Final packet return code */
- int orc; /* Individual option return code */
- u_char *p; /* Pointer to next char to parse */
- u_char *ucp = inp; /* Pointer to current output char */
- int l = *len; /* Length left */
-
- /*
- * Reset all his options.
- */
- BZERO(ho, sizeof(*ho));
-
- /*
- * Process all his options.
- */
- next = inp;
- while (l) {
- orc = CONFACK; /* Assume success */
- cip = p = next; /* Remember begining of CI */
- if (l < 2 || /* Not enough data for CI header or */
- p[1] < 2 || /* CI length too small or */
- p[1] > l) { /* CI length too big? */
- IPXCPDEBUG(("ipxcp_reqci: bad CI length!"));
- orc = CONFREJ; /* Reject bad CI */
- cilen = l; /* Reject till end of packet */
- l = 0; /* Don't loop again */
- goto endswitch;
- }
- GETCHAR(citype, p); /* Parse CI type */
- GETCHAR(cilen, p); /* Parse CI length */
- l -= cilen; /* Adjust remaining length */
- next += cilen; /* Step to next CI */
-
- switch (citype) { /* Check CI type */
-/*
- * The network number must match. Choose the larger of the two.
- */
- case IPX_NETWORK_NUMBER:
- /* if we wont negotiate the network number or the length is wrong
- then reject the option */
- if ( !ao->neg_nn || cilen != CILEN_NETN ) {
- orc = CONFREJ;
- break;
- }
- GETLONG(cinetwork, p);
-
- /* If the network numbers match then acknowledge them. */
- if (cinetwork != 0) {
- ho->his_network = cinetwork;
- ho->neg_nn = 1;
- if (wo->our_network == cinetwork)
- break;
-/*
- * If the network number is not given or we don't accept their change or
- * the network number is too small then NAK it.
- */
- if (! ao->accept_network || cinetwork < wo->our_network) {
- DECPTR (sizeof (u_int32_t), p);
- PUTLONG (wo->our_network, p);
- orc = CONFNAK;
- }
- break;
- }
-/*
- * The peer sent '0' for the network. Give it ours if we have one.
- */
- if (go->our_network != 0) {
- DECPTR (sizeof (u_int32_t), p);
- PUTLONG (wo->our_network, p);
- orc = CONFNAK;
-/*
- * We don't have one. Reject the value.
- */
- } else
- orc = CONFREJ;
-
- break;
-/*
- * The node number is required
- */
- case IPX_NODE_NUMBER:
- /* if we wont negotiate the node number or the length is wrong
- then reject the option */
- if ( cilen != CILEN_NODEN ) {
- orc = CONFREJ;
- break;
- }
-
- copy_node (p, ho->his_node);
- ho->neg_node = 1;
-/*
- * If the remote does not have a number and we do then NAK it with the value
- * which we have for it. (We never have a default value of zero.)
- */
- if (zero_node (ho->his_node)) {
- orc = CONFNAK;
- copy_node (wo->his_node, p);
- INCPTR (sizeof (wo->his_node), p);
- break;
- }
-/*
- * If you have given me the expected network node number then I'll accept
- * it now.
- */
- if (compare_node (wo->his_node, ho->his_node)) {
- orc = CONFACK;
- ho->neg_node = 1;
- INCPTR (sizeof (wo->his_node), p);
- break;
- }
-/*
- * If his node number is the same as ours then ask him to try the next
- * value.
- */
- if (compare_node (ho->his_node, go->our_node)) {
- inc_node (ho->his_node);
- orc = CONFNAK;
- copy_node (ho->his_node, p);
- INCPTR (sizeof (wo->his_node), p);
- break;
- }
-/*
- * If we don't accept a new value then NAK it.
- */
- if (! ao->accept_remote) {
- copy_node (wo->his_node, p);
- INCPTR (sizeof (wo->his_node), p);
- orc = CONFNAK;
- break;
- }
- orc = CONFACK;
- ho->neg_node = 1;
- INCPTR (sizeof (wo->his_node), p);
- break;
-/*
- * Compression is not desired at this time. It is always rejected.
- */
- case IPX_COMPRESSION_PROTOCOL:
- orc = CONFREJ;
- break;
-/*
- * The routing protocol is a bitmask of various types. Any combination
- * of the values RIP_SAP and NLSP are permissible. 'IPX_NONE' for no
- * routing protocol must be specified only once.
- */
- case IPX_ROUTER_PROTOCOL:
- if ( !ao->neg_router || cilen < CILEN_PROTOCOL ) {
- orc = CONFREJ;
- break;
- }
-
- GETSHORT (cishort, p);
-
- if (wo->neg_router == 0) {
- wo->neg_router = 1;
- wo->router = BIT(IPX_NONE);
- }
-
- if ((cishort == IPX_NONE && ho->router != 0) ||
- (ho->router & BIT(IPX_NONE))) {
- orc = CONFREJ;
- break;
- }
-
- cishort = BIT(cishort);
- if (ho->router & cishort) {
- orc = CONFREJ;
- break;
- }
-
- ho->router |= cishort;
- ho->neg_router = 1;
-
- /* Finally do not allow a router protocol which we do not
- support. */
-
- if ((cishort & (ao->router | BIT(IPX_NONE))) == 0) {
- int protocol;
-
- if (cishort == BIT(NLSP) &&
- (ao->router & BIT(RIP_SAP)) &&
- !wo->tried_rip) {
- protocol = RIP_SAP;
- wo->tried_rip = 1;
- } else
- protocol = IPX_NONE;
-
- DECPTR (sizeof (u_int16_t), p);
- PUTSHORT (protocol, p);
- orc = CONFNAK;
- }
- break;
-/*
- * The router name is advisorary. Just accept it if it is not too large.
- */
- case IPX_ROUTER_NAME:
- if (cilen >= CILEN_NAME) {
- int name_size = cilen - CILEN_NAME;
- if (name_size > sizeof (ho->name))
- name_size = sizeof (ho->name) - 1;
- memset (ho->name, 0, sizeof (ho->name));
- memcpy (ho->name, p, name_size);
- ho->name [name_size] = '\0';
- ho->neg_name = 1;
- orc = CONFACK;
- break;
- }
- orc = CONFREJ;
- break;
-/*
- * This is advisorary.
- */
- case IPX_COMPLETE:
- if (cilen != CILEN_COMPLETE)
- orc = CONFREJ;
- else {
- ho->neg_complete = 1;
- orc = CONFACK;
- }
- break;
-/*
- * All other entries are not known at this time.
- */
- default:
- orc = CONFREJ;
- break;
- }
-endswitch:
- if (orc == CONFACK && /* Good CI */
- rc != CONFACK) /* but prior CI wasnt? */
- continue; /* Don't send this one */
-
- if (orc == CONFNAK) { /* Nak this CI? */
- if (reject_if_disagree) /* Getting fed up with sending NAKs? */
- orc = CONFREJ; /* Get tough if so */
- if (rc == CONFREJ) /* Rejecting prior CI? */
- continue; /* Don't send this one */
- if (rc == CONFACK) { /* Ack'd all prior CIs? */
- rc = CONFNAK; /* Not anymore... */
- ucp = inp; /* Backup */
- }
- }
-
- if (orc == CONFREJ && /* Reject this CI */
- rc != CONFREJ) { /* but no prior ones? */
- rc = CONFREJ;
- ucp = inp; /* Backup */
- }
-
- /* Need to move CI? */
- if (ucp != cip)
- BCOPY(cip, ucp, cilen); /* Move it */
-
- /* Update output pointer */
- INCPTR(cilen, ucp);
- }
-
- /*
- * If we aren't rejecting this packet, and we want to negotiate
- * their address, and they didn't send their address, then we
- * send a NAK with a IPX_NODE_NUMBER option appended. We assume the
- * input buffer is long enough that we can append the extra
- * option safely.
- */
-
- if (rc != CONFREJ && !ho->neg_node &&
- wo->req_nn && !reject_if_disagree) {
- if (rc == CONFACK) {
- rc = CONFNAK;
- wo->req_nn = 0; /* don't ask again */
- ucp = inp; /* reset pointer */
- }
-
- if (zero_node (wo->his_node))
- inc_node (wo->his_node);
-
- PUTCHAR (IPX_NODE_NUMBER, ucp);
- PUTCHAR (CILEN_NODEN, ucp);
- copy_node (wo->his_node, ucp);
- INCPTR (sizeof (wo->his_node), ucp);
- }
-
- *len = ucp - inp; /* Compute output length */
- IPXCPDEBUG(("ipxcp: returning Configure-%s", CODENAME(rc)));
- return (rc); /* Return final code */
-}
-
-/*
- * ipxcp_up - IPXCP has come UP.
- *
- * Configure the IP network interface appropriately and bring it up.
- */
-
-static void
-ipxcp_up(f)
- fsm *f;
-{
- int unit = f->unit;
-
- IPXCPDEBUG(("ipxcp: up"));
-
- /* The default router protocol is RIP/SAP. */
- if (ho->router == 0)
- ho->router = BIT(RIP_SAP);
-
- if (go->router == 0)
- go->router = BIT(RIP_SAP);
-
- /* Fetch the network number */
- if (!ho->neg_nn)
- ho->his_network = wo->his_network;
-
- if (!ho->neg_node)
- copy_node (wo->his_node, ho->his_node);
-
- if (!wo->neg_node && !go->neg_node)
- copy_node (wo->our_node, go->our_node);
-
- if (zero_node (go->our_node)) {
- static char errmsg[] = "Could not determine local IPX node address";
- if (debug)
- error(errmsg);
- ipxcp_close(f->unit, errmsg);
- return;
- }
-
- go->network = go->our_network;
- if (ho->his_network != 0 && ho->his_network > go->network)
- go->network = ho->his_network;
-
- if (go->network == 0) {
- static char errmsg[] = "Can not determine network number";
- if (debug)
- error(errmsg);
- ipxcp_close (unit, errmsg);
- return;
- }
-
- /* bring the interface up */
- if (!sifup(unit)) {
- if (debug)
- warn("sifup failed (IPX)");
- ipxcp_close(unit, "Interface configuration failed");
- return;
- }
- ipxcp_is_up = 1;
-
- /* set the network number for IPX */
- if (!sipxfaddr(unit, go->network, go->our_node)) {
- if (debug)
- warn("sipxfaddr failed");
- ipxcp_close(unit, "Interface configuration failed");
- return;
- }
-
- np_up(f->unit, PPP_IPX);
-
- /*
- * Execute the ipx-up script, like this:
- * /etc/ppp/ipx-up interface tty speed local-IPX remote-IPX
- */
-
- ipxcp_script (f, _PATH_IPXUP);
-}
-
-/*
- * ipxcp_down - IPXCP has gone DOWN.
- *
- * Take the IP network interface down, clear its addresses
- * and delete routes through it.
- */
-
-static void
-ipxcp_down(f)
- fsm *f;
-{
- IPXCPDEBUG(("ipxcp: down"));
-
- if (!ipxcp_is_up)
- return;
- ipxcp_is_up = 0;
- np_down(f->unit, PPP_IPX);
- cipxfaddr(f->unit);
- sifnpmode(f->unit, PPP_IPX, NPMODE_DROP);
- sifdown(f->unit);
- ipxcp_script (f, _PATH_IPXDOWN);
-}
-
-
-/*
- * ipxcp_finished - possibly shut down the lower layers.
- */
-static void
-ipxcp_finished(f)
- fsm *f;
-{
- np_finished(f->unit, PPP_IPX);
-}
-
-
-/*
- * ipxcp_script - Execute a script with arguments
- * interface-name tty-name speed local-IPX remote-IPX networks.
- */
-static void
-ipxcp_script(f, script)
- fsm *f;
- char *script;
-{
- char strspeed[32], strlocal[32], strremote[32];
- char strnetwork[32], strpid[32];
- char *argv[14], strproto_lcl[32], strproto_rmt[32];
-
- slprintf(strpid, sizeof(strpid), "%d", getpid());
- slprintf(strspeed, sizeof(strspeed),"%d", baud_rate);
-
- strproto_lcl[0] = '\0';
- if (go->neg_router && ((go->router & BIT(IPX_NONE)) == 0)) {
- if (go->router & BIT(RIP_SAP))
- strlcpy (strproto_lcl, "RIP ", sizeof(strproto_lcl));
- if (go->router & BIT(NLSP))
- strlcat (strproto_lcl, "NLSP ", sizeof(strproto_lcl));
- }
-
- if (strproto_lcl[0] == '\0')
- strlcpy (strproto_lcl, "NONE ", sizeof(strproto_lcl));
-
- strproto_lcl[strlen (strproto_lcl)-1] = '\0';
-
- strproto_rmt[0] = '\0';
- if (ho->neg_router && ((ho->router & BIT(IPX_NONE)) == 0)) {
- if (ho->router & BIT(RIP_SAP))
- strlcpy (strproto_rmt, "RIP ", sizeof(strproto_rmt));
- if (ho->router & BIT(NLSP))
- strlcat (strproto_rmt, "NLSP ", sizeof(strproto_rmt));
- }
-
- if (strproto_rmt[0] == '\0')
- strlcpy (strproto_rmt, "NONE ", sizeof(strproto_rmt));
-
- strproto_rmt[strlen (strproto_rmt)-1] = '\0';
-
- strlcpy (strnetwork, ipx_ntoa (go->network), sizeof(strnetwork));
-
- slprintf (strlocal, sizeof(strlocal), "%0.6B", go->our_node);
-
- slprintf (strremote, sizeof(strremote), "%0.6B", ho->his_node);
-
- argv[0] = script;
- argv[1] = ifname;
- argv[2] = devnam;
- argv[3] = strspeed;
- argv[4] = strnetwork;
- argv[5] = strlocal;
- argv[6] = strremote;
- argv[7] = strproto_lcl;
- argv[8] = strproto_rmt;
- argv[9] = go->name;
- argv[10] = ho->name;
- argv[11] = ipparam;
- argv[12] = strpid;
- argv[13] = NULL;
- run_program(script, argv, 0, NULL, NULL);
-}
-
-/*
- * ipxcp_printpkt - print the contents of an IPXCP packet.
- */
-static char *ipxcp_codenames[] = {
- "ConfReq", "ConfAck", "ConfNak", "ConfRej",
- "TermReq", "TermAck", "CodeRej"
-};
-
-static int
-ipxcp_printpkt(p, plen, printer, arg)
- u_char *p;
- int plen;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int code, id, len, olen;
- u_char *pstart, *optend;
- u_short cishort;
- u_int32_t cilong;
-
- if (plen < HEADERLEN)
- return 0;
- pstart = p;
- GETCHAR(code, p);
- GETCHAR(id, p);
- GETSHORT(len, p);
- if (len < HEADERLEN || len > plen)
- return 0;
-
- if (code >= 1 && code <= sizeof(ipxcp_codenames) / sizeof(char *))
- printer(arg, " %s", ipxcp_codenames[code-1]);
- else
- printer(arg, " code=0x%x", code);
- printer(arg, " id=0x%x", id);
- len -= HEADERLEN;
- switch (code) {
- case CONFREQ:
- case CONFACK:
- case CONFNAK:
- case CONFREJ:
- /* print option list */
- while (len >= 2) {
- GETCHAR(code, p);
- GETCHAR(olen, p);
- p -= 2;
- if (olen < CILEN_VOID || olen > len) {
- break;
- }
- printer(arg, " <");
- len -= olen;
- optend = p + olen;
- switch (code) {
- case IPX_NETWORK_NUMBER:
- if (olen == CILEN_NETN) {
- p += 2;
- GETLONG(cilong, p);
- printer (arg, "network %s", ipx_ntoa (cilong));
- }
- break;
- case IPX_NODE_NUMBER:
- if (olen == CILEN_NODEN) {
- p += 2;
- printer (arg, "node ");
- while (p < optend) {
- GETCHAR(code, p);
- printer(arg, "%.2x", (int) (unsigned int) (unsigned char) code);
- }
- }
- break;
- case IPX_COMPRESSION_PROTOCOL:
- if (olen == CILEN_COMPRESS) {
- p += 2;
- GETSHORT (cishort, p);
- printer (arg, "compression %d", (int) cishort);
- }
- break;
- case IPX_ROUTER_PROTOCOL:
- if (olen == CILEN_PROTOCOL) {
- p += 2;
- GETSHORT (cishort, p);
- printer (arg, "router proto %d", (int) cishort);
- }
- break;
- case IPX_ROUTER_NAME:
- if (olen >= CILEN_NAME) {
- p += 2;
- printer (arg, "router name \"");
- while (p < optend) {
- GETCHAR(code, p);
- if (code >= 0x20 && code <= 0x7E)
- printer (arg, "%c", (int) (unsigned int) (unsigned char) code);
- else
- printer (arg, " \\%.2x", (int) (unsigned int) (unsigned char) code);
- }
- printer (arg, "\"");
- }
- break;
- case IPX_COMPLETE:
- if (olen == CILEN_COMPLETE) {
- p += 2;
- printer (arg, "complete");
- }
- break;
- default:
- break;
- }
-
- while (p < optend) {
- GETCHAR(code, p);
- printer(arg, " %.2x", (int) (unsigned int) (unsigned char) code);
- }
- printer(arg, ">");
- }
- break;
-
- case TERMACK:
- case TERMREQ:
- if (len > 0 && *p >= ' ' && *p < 0x7f) {
- printer(arg, " ");
- print_string(p, len, printer, arg);
- p += len;
- len = 0;
- }
- break;
- }
-
- /* print the rest of the bytes in the packet */
- for (; len > 0; --len) {
- GETCHAR(code, p);
- printer(arg, " %.2x", (int) (unsigned int) (unsigned char) code);
- }
-
- return p - pstart;
-}
-#endif /* ifdef IPX_CHANGE */
diff --git a/mdk-stage1/ppp/pppd/ipxcp.h b/mdk-stage1/ppp/pppd/ipxcp.h
deleted file mode 100644
index 47f680d70..000000000
--- a/mdk-stage1/ppp/pppd/ipxcp.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * ipxcp.h - IPX Control Protocol definitions.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-/*
- * Options.
- */
-#define IPX_NETWORK_NUMBER 1 /* IPX Network Number */
-#define IPX_NODE_NUMBER 2
-#define IPX_COMPRESSION_PROTOCOL 3
-#define IPX_ROUTER_PROTOCOL 4
-#define IPX_ROUTER_NAME 5
-#define IPX_COMPLETE 6
-
-/* Values for the router protocol */
-#define IPX_NONE 0
-#define RIP_SAP 2
-#define NLSP 4
-
-typedef struct ipxcp_options {
- bool neg_node; /* Negotiate IPX node number? */
- bool req_node; /* Ask peer to send IPX node number? */
-
- bool neg_nn; /* Negotiate IPX network number? */
- bool req_nn; /* Ask peer to send IPX network number */
-
- bool neg_name; /* Negotiate IPX router name */
- bool neg_complete; /* Negotiate completion */
- bool neg_router; /* Negotiate IPX router number */
-
- bool accept_local; /* accept peer's value for ournode */
- bool accept_remote; /* accept peer's value for hisnode */
- bool accept_network; /* accept network number */
-
- bool tried_nlsp; /* I have suggested NLSP already */
- bool tried_rip; /* I have suggested RIP/SAP already */
-
- u_int32_t his_network; /* base network number */
- u_int32_t our_network; /* our value for network number */
- u_int32_t network; /* the final network number */
-
- u_char his_node[6]; /* peer's node number */
- u_char our_node[6]; /* our node number */
- u_char name [48]; /* name of the router */
- int router; /* routing protocol */
-} ipxcp_options;
-
-extern fsm ipxcp_fsm[];
-extern ipxcp_options ipxcp_wantoptions[];
-extern ipxcp_options ipxcp_gotoptions[];
-extern ipxcp_options ipxcp_allowoptions[];
-extern ipxcp_options ipxcp_hisoptions[];
-
-extern struct protent ipxcp_protent;
diff --git a/mdk-stage1/ppp/pppd/lcp.c b/mdk-stage1/ppp/pppd/lcp.c
deleted file mode 100644
index 41c58cad5..000000000
--- a/mdk-stage1/ppp/pppd/lcp.c
+++ /dev/null
@@ -1,2224 +0,0 @@
-/*
- * lcp.c - PPP Link Control Protocol.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-/*
- * TODO:
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-
-#include "pppd.h"
-#include "fsm.h"
-#include "lcp.h"
-#include "chap.h"
-#include "magic.h"
-
-static const char rcsid[] = RCSID;
-
-/*
- * When the link comes up we want to be able to wait for a short while,
- * or until seeing some input from the peer, before starting to send
- * configure-requests. We do this by delaying the fsm_lowerup call.
- */
-/* steal a bit in fsm flags word */
-#define DELAYED_UP 0x100
-
-static void lcp_delayed_up __P((void *));
-
-/*
- * LCP-related command-line options.
- */
-int lcp_echo_interval = 0; /* Interval between LCP echo-requests */
-int lcp_echo_fails = 0; /* Tolerance to unanswered echo-requests */
-bool lax_recv = 0; /* accept control chars in asyncmap */
-bool noendpoint = 0; /* don't send/accept endpoint discriminator */
-
-static int noopt __P((char **));
-
-#ifdef HAVE_MULTILINK
-static int setendpoint __P((char **));
-static void printendpoint __P((option_t *, void (*)(void *, char *, ...),
- void *));
-#endif /* HAVE_MULTILINK */
-
-static option_t lcp_option_list[] = {
- /* LCP options */
- { "-all", o_special_noarg, (void *)noopt,
- "Don't request/allow any LCP options" },
-
- { "noaccomp", o_bool, &lcp_wantoptions[0].neg_accompression,
- "Disable address/control compression",
- OPT_A2CLR, &lcp_allowoptions[0].neg_accompression },
- { "-ac", o_bool, &lcp_wantoptions[0].neg_accompression,
- "Disable address/control compression",
- OPT_ALIAS | OPT_A2CLR, &lcp_allowoptions[0].neg_accompression },
-
- { "asyncmap", o_uint32, &lcp_wantoptions[0].asyncmap,
- "Set asyncmap (for received packets)",
- OPT_OR, &lcp_wantoptions[0].neg_asyncmap },
- { "-as", o_uint32, &lcp_wantoptions[0].asyncmap,
- "Set asyncmap (for received packets)",
- OPT_ALIAS | OPT_OR, &lcp_wantoptions[0].neg_asyncmap },
- { "default-asyncmap", o_uint32, &lcp_wantoptions[0].asyncmap,
- "Disable asyncmap negotiation",
- OPT_OR | OPT_NOARG | OPT_VAL(~0U) | OPT_A2CLR,
- &lcp_allowoptions[0].neg_asyncmap },
- { "-am", o_uint32, &lcp_wantoptions[0].asyncmap,
- "Disable asyncmap negotiation",
- OPT_ALIAS | OPT_OR | OPT_NOARG | OPT_VAL(~0U) | OPT_A2CLR,
- &lcp_allowoptions[0].neg_asyncmap },
-
- { "nomagic", o_bool, &lcp_wantoptions[0].neg_magicnumber,
- "Disable magic number negotiation (looped-back line detection)",
- OPT_A2CLR, &lcp_allowoptions[0].neg_magicnumber },
- { "-mn", o_bool, &lcp_wantoptions[0].neg_magicnumber,
- "Disable magic number negotiation (looped-back line detection)",
- OPT_ALIAS | OPT_A2CLR, &lcp_allowoptions[0].neg_magicnumber },
-
- { "mru", o_int, &lcp_wantoptions[0].mru,
- "Set MRU (maximum received packet size) for negotiation",
- OPT_PRIO, &lcp_wantoptions[0].neg_mru },
- { "default-mru", o_bool, &lcp_wantoptions[0].neg_mru,
- "Disable MRU negotiation (use default 1500)",
- OPT_PRIOSUB | OPT_A2CLR, &lcp_allowoptions[0].neg_mru },
- { "-mru", o_bool, &lcp_wantoptions[0].neg_mru,
- "Disable MRU negotiation (use default 1500)",
- OPT_ALIAS | OPT_PRIOSUB | OPT_A2CLR, &lcp_allowoptions[0].neg_mru },
-
- { "mtu", o_int, &lcp_allowoptions[0].mru,
- "Set our MTU", OPT_LIMITS, NULL, MAXMRU, MINMRU },
-
- { "nopcomp", o_bool, &lcp_wantoptions[0].neg_pcompression,
- "Disable protocol field compression",
- OPT_A2CLR, &lcp_allowoptions[0].neg_pcompression },
- { "-pc", o_bool, &lcp_wantoptions[0].neg_pcompression,
- "Disable protocol field compression",
- OPT_ALIAS | OPT_A2CLR, &lcp_allowoptions[0].neg_pcompression },
-
- { "passive", o_bool, &lcp_wantoptions[0].passive,
- "Set passive mode", 1 },
- { "-p", o_bool, &lcp_wantoptions[0].passive,
- "Set passive mode", OPT_ALIAS | 1 },
-
- { "silent", o_bool, &lcp_wantoptions[0].silent,
- "Set silent mode", 1 },
-
- { "lcp-echo-failure", o_int, &lcp_echo_fails,
- "Set number of consecutive echo failures to indicate link failure",
- OPT_PRIO },
- { "lcp-echo-interval", o_int, &lcp_echo_interval,
- "Set time in seconds between LCP echo requests", OPT_PRIO },
- { "lcp-restart", o_int, &lcp_fsm[0].timeouttime,
- "Set time in seconds between LCP retransmissions", OPT_PRIO },
- { "lcp-max-terminate", o_int, &lcp_fsm[0].maxtermtransmits,
- "Set maximum number of LCP terminate-request transmissions", OPT_PRIO },
- { "lcp-max-configure", o_int, &lcp_fsm[0].maxconfreqtransmits,
- "Set maximum number of LCP configure-request transmissions", OPT_PRIO },
- { "lcp-max-failure", o_int, &lcp_fsm[0].maxnakloops,
- "Set limit on number of LCP configure-naks", OPT_PRIO },
-
- { "receive-all", o_bool, &lax_recv,
- "Accept all received control characters", 1 },
-
-#ifdef HAVE_MULTILINK
- { "mrru", o_int, &lcp_wantoptions[0].mrru,
- "Maximum received packet size for multilink bundle",
- OPT_PRIO, &lcp_wantoptions[0].neg_mrru },
-
- { "mpshortseq", o_bool, &lcp_wantoptions[0].neg_ssnhf,
- "Use short sequence numbers in multilink headers",
- OPT_PRIO | 1, &lcp_allowoptions[0].neg_ssnhf },
- { "nompshortseq", o_bool, &lcp_wantoptions[0].neg_ssnhf,
- "Don't use short sequence numbers in multilink headers",
- OPT_PRIOSUB | OPT_A2CLR, &lcp_allowoptions[0].neg_ssnhf },
-
- { "endpoint", o_special, (void *) setendpoint,
- "Endpoint discriminator for multilink",
- OPT_PRIO | OPT_A2PRINTER, (void *) printendpoint },
-#endif /* HAVE_MULTILINK */
-
- { "noendpoint", o_bool, &noendpoint,
- "Don't send or accept multilink endpoint discriminator", 1 },
-
- {NULL}
-};
-
-/* global vars */
-fsm lcp_fsm[NUM_PPP]; /* LCP fsm structure (global)*/
-lcp_options lcp_wantoptions[NUM_PPP]; /* Options that we want to request */
-lcp_options lcp_gotoptions[NUM_PPP]; /* Options that peer ack'd */
-lcp_options lcp_allowoptions[NUM_PPP]; /* Options we allow peer to request */
-lcp_options lcp_hisoptions[NUM_PPP]; /* Options that we ack'd */
-
-static int lcp_echos_pending = 0; /* Number of outstanding echo msgs */
-static int lcp_echo_number = 0; /* ID number of next echo frame */
-static int lcp_echo_timer_running = 0; /* set if a timer is running */
-
-static u_char nak_buffer[PPP_MRU]; /* where we construct a nak packet */
-
-/*
- * Callbacks for fsm code. (CI = Configuration Information)
- */
-static void lcp_resetci __P((fsm *)); /* Reset our CI */
-static int lcp_cilen __P((fsm *)); /* Return length of our CI */
-static void lcp_addci __P((fsm *, u_char *, int *)); /* Add our CI to pkt */
-static int lcp_ackci __P((fsm *, u_char *, int)); /* Peer ack'd our CI */
-static int lcp_nakci __P((fsm *, u_char *, int)); /* Peer nak'd our CI */
-static int lcp_rejci __P((fsm *, u_char *, int)); /* Peer rej'd our CI */
-static int lcp_reqci __P((fsm *, u_char *, int *, int)); /* Rcv peer CI */
-static void lcp_up __P((fsm *)); /* We're UP */
-static void lcp_down __P((fsm *)); /* We're DOWN */
-static void lcp_starting __P((fsm *)); /* We need lower layer up */
-static void lcp_finished __P((fsm *)); /* We need lower layer down */
-static int lcp_extcode __P((fsm *, int, int, u_char *, int));
-static void lcp_rprotrej __P((fsm *, u_char *, int));
-
-/*
- * routines to send LCP echos to peer
- */
-
-static void lcp_echo_lowerup __P((int));
-static void lcp_echo_lowerdown __P((int));
-static void LcpEchoTimeout __P((void *));
-static void lcp_received_echo_reply __P((fsm *, int, u_char *, int));
-static void LcpSendEchoRequest __P((fsm *));
-static void LcpLinkFailure __P((fsm *));
-static void LcpEchoCheck __P((fsm *));
-
-static fsm_callbacks lcp_callbacks = { /* LCP callback routines */
- lcp_resetci, /* Reset our Configuration Information */
- lcp_cilen, /* Length of our Configuration Information */
- lcp_addci, /* Add our Configuration Information */
- lcp_ackci, /* ACK our Configuration Information */
- lcp_nakci, /* NAK our Configuration Information */
- lcp_rejci, /* Reject our Configuration Information */
- lcp_reqci, /* Request peer's Configuration Information */
- lcp_up, /* Called when fsm reaches OPENED state */
- lcp_down, /* Called when fsm leaves OPENED state */
- lcp_starting, /* Called when we want the lower layer up */
- lcp_finished, /* Called when we want the lower layer down */
- NULL, /* Called when Protocol-Reject received */
- NULL, /* Retransmission is necessary */
- lcp_extcode, /* Called to handle LCP-specific codes */
- "LCP" /* String name of protocol */
-};
-
-/*
- * Protocol entry points.
- * Some of these are called directly.
- */
-
-static void lcp_init __P((int));
-static void lcp_input __P((int, u_char *, int));
-static void lcp_protrej __P((int));
-static int lcp_printpkt __P((u_char *, int,
- void (*) __P((void *, char *, ...)), void *));
-
-struct protent lcp_protent = {
- PPP_LCP,
- lcp_init,
- lcp_input,
- lcp_protrej,
- lcp_lowerup,
- lcp_lowerdown,
- lcp_open,
- lcp_close,
- lcp_printpkt,
- NULL,
- 1,
- "LCP",
- NULL,
- lcp_option_list,
- NULL,
- NULL,
- NULL
-};
-
-int lcp_loopbackfail = DEFLOOPBACKFAIL;
-
-/*
- * Length of each type of configuration option (in octets)
- */
-#define CILEN_VOID 2
-#define CILEN_CHAR 3
-#define CILEN_SHORT 4 /* CILEN_VOID + 2 */
-#define CILEN_CHAP 5 /* CILEN_VOID + 2 + 1 */
-#define CILEN_LONG 6 /* CILEN_VOID + 4 */
-#define CILEN_LQR 8 /* CILEN_VOID + 2 + 4 */
-#define CILEN_CBCP 3
-
-#define CODENAME(x) ((x) == CONFACK ? "ACK" : \
- (x) == CONFNAK ? "NAK" : "REJ")
-
-/*
- * noopt - Disable all options (why?).
- */
-static int
-noopt(argv)
- char **argv;
-{
- BZERO((char *) &lcp_wantoptions[0], sizeof (struct lcp_options));
- BZERO((char *) &lcp_allowoptions[0], sizeof (struct lcp_options));
-
- return (1);
-}
-
-#ifdef HAVE_MULTILINK
-static int
-setendpoint(argv)
- char **argv;
-{
- if (str_to_epdisc(&lcp_wantoptions[0].endpoint, *argv)) {
- lcp_wantoptions[0].neg_endpoint = 1;
- return 1;
- }
- option_error("Can't parse '%s' as an endpoint discriminator", *argv);
- return 0;
-}
-
-static void
-printendpoint(opt, printer, arg)
- option_t *opt;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- printer(arg, "%s", epdisc_to_str(&lcp_wantoptions[0].endpoint));
-}
-#endif /* HAVE_MULTILINK */
-
-/*
- * lcp_init - Initialize LCP.
- */
-static void
-lcp_init(unit)
- int unit;
-{
- fsm *f = &lcp_fsm[unit];
- lcp_options *wo = &lcp_wantoptions[unit];
- lcp_options *ao = &lcp_allowoptions[unit];
-
- f->unit = unit;
- f->protocol = PPP_LCP;
- f->callbacks = &lcp_callbacks;
-
- fsm_init(f);
-
- BZERO(wo, sizeof(*wo));
- wo->neg_mru = 1;
- wo->mru = DEFMRU;
- wo->neg_asyncmap = 1;
- wo->chap_mdtype = CHAP_DIGEST_MD5;
- wo->neg_magicnumber = 1;
- wo->neg_pcompression = 1;
- wo->neg_accompression = 1;
-
- BZERO(ao, sizeof(*ao));
- ao->neg_mru = 1;
- ao->mru = MAXMRU;
- ao->neg_asyncmap = 1;
- ao->neg_chap = 1;
- ao->chap_mdtype = CHAP_DIGEST_MD5;
- ao->neg_upap = 1;
- ao->neg_magicnumber = 1;
- ao->neg_pcompression = 1;
- ao->neg_accompression = 1;
-#ifdef CBCP_SUPPORT
- ao->neg_cbcp = 1;
-#endif
- ao->neg_endpoint = 1;
-}
-
-
-/*
- * lcp_open - LCP is allowed to come up.
- */
-void
-lcp_open(unit)
- int unit;
-{
- fsm *f = &lcp_fsm[unit];
- lcp_options *wo = &lcp_wantoptions[unit];
-
- f->flags &= ~(OPT_PASSIVE | OPT_SILENT);
- if (wo->passive)
- f->flags |= OPT_PASSIVE;
- if (wo->silent)
- f->flags |= OPT_SILENT;
- fsm_open(f);
-}
-
-
-/*
- * lcp_close - Take LCP down.
- */
-void
-lcp_close(unit, reason)
- int unit;
- char *reason;
-{
- fsm *f = &lcp_fsm[unit];
-
- if (phase != PHASE_DEAD)
- new_phase(PHASE_TERMINATE);
- if (f->state == STOPPED && f->flags & (OPT_PASSIVE|OPT_SILENT)) {
- /*
- * This action is not strictly according to the FSM in RFC1548,
- * but it does mean that the program terminates if you do a
- * lcp_close() in passive/silent mode when a connection hasn't
- * been established.
- */
- f->state = CLOSED;
- lcp_finished(f);
-
- } else
- fsm_close(&lcp_fsm[unit], reason);
-}
-
-
-/*
- * lcp_lowerup - The lower layer is up.
- */
-void
-lcp_lowerup(unit)
- int unit;
-{
- lcp_options *wo = &lcp_wantoptions[unit];
- fsm *f = &lcp_fsm[unit];
-
- /*
- * Don't use A/C or protocol compression on transmission,
- * but accept A/C and protocol compressed packets
- * if we are going to ask for A/C and protocol compression.
- */
- ppp_send_config(unit, PPP_MRU, 0xffffffff, 0, 0);
- ppp_recv_config(unit, PPP_MRU, (lax_recv? 0: 0xffffffff),
- wo->neg_pcompression, wo->neg_accompression);
- peer_mru[unit] = PPP_MRU;
-
- if (listen_time != 0) {
- f->flags |= DELAYED_UP;
- timeout(lcp_delayed_up, f, 0, listen_time * 1000);
- } else
- fsm_lowerup(f);
-}
-
-
-/*
- * lcp_lowerdown - The lower layer is down.
- */
-void
-lcp_lowerdown(unit)
- int unit;
-{
- fsm *f = &lcp_fsm[unit];
-
- if (f->flags & DELAYED_UP)
- f->flags &= ~DELAYED_UP;
- else
- fsm_lowerdown(&lcp_fsm[unit]);
-}
-
-
-/*
- * lcp_delayed_up - Bring the lower layer up now.
- */
-static void
-lcp_delayed_up(arg)
- void *arg;
-{
- fsm *f = arg;
-
- if (f->flags & DELAYED_UP) {
- f->flags &= ~DELAYED_UP;
- fsm_lowerup(f);
- }
-}
-
-
-/*
- * lcp_input - Input LCP packet.
- */
-static void
-lcp_input(unit, p, len)
- int unit;
- u_char *p;
- int len;
-{
- fsm *f = &lcp_fsm[unit];
-
- if (f->flags & DELAYED_UP) {
- f->flags &= ~DELAYED_UP;
- fsm_lowerup(f);
- }
- fsm_input(f, p, len);
-}
-
-
-/*
- * lcp_extcode - Handle a LCP-specific code.
- */
-static int
-lcp_extcode(f, code, id, inp, len)
- fsm *f;
- int code, id;
- u_char *inp;
- int len;
-{
- u_char *magp;
-
- switch( code ){
- case PROTREJ:
- lcp_rprotrej(f, inp, len);
- break;
-
- case ECHOREQ:
- if (f->state != OPENED)
- break;
- magp = inp;
- PUTLONG(lcp_gotoptions[f->unit].magicnumber, magp);
- fsm_sdata(f, ECHOREP, id, inp, len);
- break;
-
- case ECHOREP:
- lcp_received_echo_reply(f, id, inp, len);
- break;
-
- case DISCREQ:
- break;
-
- default:
- return 0;
- }
- return 1;
-}
-
-
-/*
- * lcp_rprotrej - Receive an Protocol-Reject.
- *
- * Figure out which protocol is rejected and inform it.
- */
-static void
-lcp_rprotrej(f, inp, len)
- fsm *f;
- u_char *inp;
- int len;
-{
- int i;
- struct protent *protp;
- u_short prot;
-
- if (len < 2) {
- LCPDEBUG(("lcp_rprotrej: Rcvd short Protocol-Reject packet!"));
- return;
- }
-
- GETSHORT(prot, inp);
-
- /*
- * Protocol-Reject packets received in any state other than the LCP
- * OPENED state SHOULD be silently discarded.
- */
- if( f->state != OPENED ){
- LCPDEBUG(("Protocol-Reject discarded: LCP in state %d", f->state));
- return;
- }
-
- /*
- * Upcall the proper Protocol-Reject routine.
- */
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (protp->protocol == prot && protp->enabled_flag) {
- (*protp->protrej)(f->unit);
- return;
- }
-
- warn("Protocol-Reject for unsupported protocol 0x%x", prot);
-}
-
-
-/*
- * lcp_protrej - A Protocol-Reject was received.
- */
-/*ARGSUSED*/
-static void
-lcp_protrej(unit)
- int unit;
-{
- /*
- * Can't reject LCP!
- */
- error("Received Protocol-Reject for LCP!");
- fsm_protreject(&lcp_fsm[unit]);
-}
-
-
-/*
- * lcp_sprotrej - Send a Protocol-Reject for some protocol.
- */
-void
-lcp_sprotrej(unit, p, len)
- int unit;
- u_char *p;
- int len;
-{
- /*
- * Send back the protocol and the information field of the
- * rejected packet. We only get here if LCP is in the OPENED state.
- */
- p += 2;
- len -= 2;
-
- fsm_sdata(&lcp_fsm[unit], PROTREJ, ++lcp_fsm[unit].id,
- p, len);
-}
-
-
-/*
- * lcp_resetci - Reset our CI.
- */
-static void
-lcp_resetci(f)
- fsm *f;
-{
- lcp_options *wo = &lcp_wantoptions[f->unit];
- lcp_options *go = &lcp_gotoptions[f->unit];
- lcp_options *ao = &lcp_allowoptions[f->unit];
-
- wo->magicnumber = magic();
- wo->numloops = 0;
- *go = *wo;
- if (!multilink) {
- go->neg_mrru = 0;
- go->neg_ssnhf = 0;
- go->neg_endpoint = 0;
- }
- if (noendpoint)
- ao->neg_endpoint = 0;
- peer_mru[f->unit] = PPP_MRU;
- auth_reset(f->unit);
-}
-
-
-/*
- * lcp_cilen - Return length of our CI.
- */
-static int
-lcp_cilen(f)
- fsm *f;
-{
- lcp_options *go = &lcp_gotoptions[f->unit];
-
-#define LENCIVOID(neg) ((neg) ? CILEN_VOID : 0)
-#define LENCICHAP(neg) ((neg) ? CILEN_CHAP : 0)
-#define LENCISHORT(neg) ((neg) ? CILEN_SHORT : 0)
-#define LENCILONG(neg) ((neg) ? CILEN_LONG : 0)
-#define LENCILQR(neg) ((neg) ? CILEN_LQR: 0)
-#define LENCICBCP(neg) ((neg) ? CILEN_CBCP: 0)
- /*
- * NB: we only ask for one of CHAP and UPAP, even if we will
- * accept either.
- */
- return (LENCISHORT(go->neg_mru && go->mru != DEFMRU) +
- LENCILONG(go->neg_asyncmap && go->asyncmap != 0xFFFFFFFF) +
- LENCICHAP(go->neg_chap) +
- LENCISHORT(!go->neg_chap && go->neg_upap) +
- LENCILQR(go->neg_lqr) +
- LENCICBCP(go->neg_cbcp) +
- LENCILONG(go->neg_magicnumber) +
- LENCIVOID(go->neg_pcompression) +
- LENCIVOID(go->neg_accompression) +
- LENCISHORT(go->neg_mrru) +
- LENCIVOID(go->neg_ssnhf) +
- (go->neg_endpoint? CILEN_CHAR + go->endpoint.length: 0));
-}
-
-
-/*
- * lcp_addci - Add our desired CIs to a packet.
- */
-static void
-lcp_addci(f, ucp, lenp)
- fsm *f;
- u_char *ucp;
- int *lenp;
-{
- lcp_options *go = &lcp_gotoptions[f->unit];
- u_char *start_ucp = ucp;
-
-#define ADDCIVOID(opt, neg) \
- if (neg) { \
- PUTCHAR(opt, ucp); \
- PUTCHAR(CILEN_VOID, ucp); \
- }
-#define ADDCISHORT(opt, neg, val) \
- if (neg) { \
- PUTCHAR(opt, ucp); \
- PUTCHAR(CILEN_SHORT, ucp); \
- PUTSHORT(val, ucp); \
- }
-#define ADDCICHAP(opt, neg, val, digest) \
- if (neg) { \
- PUTCHAR(opt, ucp); \
- PUTCHAR(CILEN_CHAP, ucp); \
- PUTSHORT(val, ucp); \
- PUTCHAR(digest, ucp); \
- }
-#define ADDCILONG(opt, neg, val) \
- if (neg) { \
- PUTCHAR(opt, ucp); \
- PUTCHAR(CILEN_LONG, ucp); \
- PUTLONG(val, ucp); \
- }
-#define ADDCILQR(opt, neg, val) \
- if (neg) { \
- PUTCHAR(opt, ucp); \
- PUTCHAR(CILEN_LQR, ucp); \
- PUTSHORT(PPP_LQR, ucp); \
- PUTLONG(val, ucp); \
- }
-#define ADDCICHAR(opt, neg, val) \
- if (neg) { \
- PUTCHAR(opt, ucp); \
- PUTCHAR(CILEN_CHAR, ucp); \
- PUTCHAR(val, ucp); \
- }
-#define ADDCIENDP(opt, neg, class, val, len) \
- if (neg) { \
- int i; \
- PUTCHAR(opt, ucp); \
- PUTCHAR(CILEN_CHAR + len, ucp); \
- PUTCHAR(class, ucp); \
- for (i = 0; i < len; ++i) \
- PUTCHAR(val[i], ucp); \
- }
-
- ADDCISHORT(CI_MRU, go->neg_mru && go->mru != DEFMRU, go->mru);
- ADDCILONG(CI_ASYNCMAP, go->neg_asyncmap && go->asyncmap != 0xFFFFFFFF,
- go->asyncmap);
- ADDCICHAP(CI_AUTHTYPE, go->neg_chap, PPP_CHAP, go->chap_mdtype);
- ADDCISHORT(CI_AUTHTYPE, !go->neg_chap && go->neg_upap, PPP_PAP);
- ADDCILQR(CI_QUALITY, go->neg_lqr, go->lqr_period);
- ADDCICHAR(CI_CALLBACK, go->neg_cbcp, CBCP_OPT);
- ADDCILONG(CI_MAGICNUMBER, go->neg_magicnumber, go->magicnumber);
- ADDCIVOID(CI_PCOMPRESSION, go->neg_pcompression);
- ADDCIVOID(CI_ACCOMPRESSION, go->neg_accompression);
- ADDCISHORT(CI_MRRU, go->neg_mrru, go->mrru);
- ADDCIVOID(CI_SSNHF, go->neg_ssnhf);
- ADDCIENDP(CI_EPDISC, go->neg_endpoint, go->endpoint.class,
- go->endpoint.value, go->endpoint.length);
-
- if (ucp - start_ucp != *lenp) {
- /* this should never happen, because peer_mtu should be 1500 */
- error("Bug in lcp_addci: wrong length");
- }
-}
-
-
-/*
- * lcp_ackci - Ack our CIs.
- * This should not modify any state if the Ack is bad.
- *
- * Returns:
- * 0 - Ack was bad.
- * 1 - Ack was good.
- */
-static int
-lcp_ackci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- lcp_options *go = &lcp_gotoptions[f->unit];
- u_char cilen, citype, cichar;
- u_short cishort;
- u_int32_t cilong;
-
- /*
- * CIs must be in exactly the same order that we sent.
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
-#define ACKCIVOID(opt, neg) \
- if (neg) { \
- if ((len -= CILEN_VOID) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_VOID || \
- citype != opt) \
- goto bad; \
- }
-#define ACKCISHORT(opt, neg, val) \
- if (neg) { \
- if ((len -= CILEN_SHORT) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_SHORT || \
- citype != opt) \
- goto bad; \
- GETSHORT(cishort, p); \
- if (cishort != val) \
- goto bad; \
- }
-#define ACKCICHAR(opt, neg, val) \
- if (neg) { \
- if ((len -= CILEN_CHAR) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_CHAR || \
- citype != opt) \
- goto bad; \
- GETCHAR(cichar, p); \
- if (cichar != val) \
- goto bad; \
- }
-#define ACKCICHAP(opt, neg, val, digest) \
- if (neg) { \
- if ((len -= CILEN_CHAP) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_CHAP || \
- citype != opt) \
- goto bad; \
- GETSHORT(cishort, p); \
- if (cishort != val) \
- goto bad; \
- GETCHAR(cichar, p); \
- if (cichar != digest) \
- goto bad; \
- }
-#define ACKCILONG(opt, neg, val) \
- if (neg) { \
- if ((len -= CILEN_LONG) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_LONG || \
- citype != opt) \
- goto bad; \
- GETLONG(cilong, p); \
- if (cilong != val) \
- goto bad; \
- }
-#define ACKCILQR(opt, neg, val) \
- if (neg) { \
- if ((len -= CILEN_LQR) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_LQR || \
- citype != opt) \
- goto bad; \
- GETSHORT(cishort, p); \
- if (cishort != PPP_LQR) \
- goto bad; \
- GETLONG(cilong, p); \
- if (cilong != val) \
- goto bad; \
- }
-#define ACKCIENDP(opt, neg, class, val, vlen) \
- if (neg) { \
- int i; \
- if ((len -= CILEN_CHAR + vlen) < 0) \
- goto bad; \
- GETCHAR(citype, p); \
- GETCHAR(cilen, p); \
- if (cilen != CILEN_CHAR + vlen || \
- citype != opt) \
- goto bad; \
- GETCHAR(cichar, p); \
- if (cichar != class) \
- goto bad; \
- for (i = 0; i < vlen; ++i) { \
- GETCHAR(cichar, p); \
- if (cichar != val[i]) \
- goto bad; \
- } \
- }
-
- ACKCISHORT(CI_MRU, go->neg_mru && go->mru != DEFMRU, go->mru);
- ACKCILONG(CI_ASYNCMAP, go->neg_asyncmap && go->asyncmap != 0xFFFFFFFF,
- go->asyncmap);
- ACKCICHAP(CI_AUTHTYPE, go->neg_chap, PPP_CHAP, go->chap_mdtype);
- ACKCISHORT(CI_AUTHTYPE, !go->neg_chap && go->neg_upap, PPP_PAP);
- ACKCILQR(CI_QUALITY, go->neg_lqr, go->lqr_period);
- ACKCICHAR(CI_CALLBACK, go->neg_cbcp, CBCP_OPT);
- ACKCILONG(CI_MAGICNUMBER, go->neg_magicnumber, go->magicnumber);
- ACKCIVOID(CI_PCOMPRESSION, go->neg_pcompression);
- ACKCIVOID(CI_ACCOMPRESSION, go->neg_accompression);
- ACKCISHORT(CI_MRRU, go->neg_mrru, go->mrru);
- ACKCIVOID(CI_SSNHF, go->neg_ssnhf);
- ACKCIENDP(CI_EPDISC, go->neg_endpoint, go->endpoint.class,
- go->endpoint.value, go->endpoint.length);
-
- /*
- * If there are any remaining CIs, then this packet is bad.
- */
- if (len != 0)
- goto bad;
- return (1);
-bad:
- LCPDEBUG(("lcp_acki: received bad Ack!"));
- return (0);
-}
-
-
-/*
- * lcp_nakci - Peer has sent a NAK for some of our CIs.
- * This should not modify any state if the Nak is bad
- * or if LCP is in the OPENED state.
- *
- * Returns:
- * 0 - Nak was bad.
- * 1 - Nak was good.
- */
-static int
-lcp_nakci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- lcp_options *go = &lcp_gotoptions[f->unit];
- lcp_options *wo = &lcp_wantoptions[f->unit];
- u_char citype, cichar, *next;
- u_short cishort;
- u_int32_t cilong;
- lcp_options no; /* options we've seen Naks for */
- lcp_options try; /* options to request next time */
- int looped_back = 0;
- int cilen;
-
- BZERO(&no, sizeof(no));
- try = *go;
-
- /*
- * Any Nak'd CIs must be in exactly the same order that we sent.
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
-#define NAKCIVOID(opt, neg) \
- if (go->neg && \
- len >= CILEN_VOID && \
- p[1] == CILEN_VOID && \
- p[0] == opt) { \
- len -= CILEN_VOID; \
- INCPTR(CILEN_VOID, p); \
- no.neg = 1; \
- try.neg = 0; \
- }
-#define NAKCICHAP(opt, neg, code) \
- if (go->neg && \
- len >= CILEN_CHAP && \
- p[1] == CILEN_CHAP && \
- p[0] == opt) { \
- len -= CILEN_CHAP; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- GETCHAR(cichar, p); \
- no.neg = 1; \
- code \
- }
-#define NAKCICHAR(opt, neg, code) \
- if (go->neg && \
- len >= CILEN_CHAR && \
- p[1] == CILEN_CHAR && \
- p[0] == opt) { \
- len -= CILEN_CHAR; \
- INCPTR(2, p); \
- GETCHAR(cichar, p); \
- no.neg = 1; \
- code \
- }
-#define NAKCISHORT(opt, neg, code) \
- if (go->neg && \
- len >= CILEN_SHORT && \
- p[1] == CILEN_SHORT && \
- p[0] == opt) { \
- len -= CILEN_SHORT; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- no.neg = 1; \
- code \
- }
-#define NAKCILONG(opt, neg, code) \
- if (go->neg && \
- len >= CILEN_LONG && \
- p[1] == CILEN_LONG && \
- p[0] == opt) { \
- len -= CILEN_LONG; \
- INCPTR(2, p); \
- GETLONG(cilong, p); \
- no.neg = 1; \
- code \
- }
-#define NAKCILQR(opt, neg, code) \
- if (go->neg && \
- len >= CILEN_LQR && \
- p[1] == CILEN_LQR && \
- p[0] == opt) { \
- len -= CILEN_LQR; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- GETLONG(cilong, p); \
- no.neg = 1; \
- code \
- }
-#define NAKCIENDP(opt, neg) \
- if (go->neg && \
- len >= CILEN_CHAR && \
- p[0] == opt && \
- p[1] >= CILEN_CHAR && \
- p[1] <= len) { \
- len -= p[1]; \
- INCPTR(p[1], p); \
- no.neg = 1; \
- try.neg = 0; \
- }
-
- /*
- * We don't care if they want to send us smaller packets than
- * we want. Therefore, accept any MRU less than what we asked for,
- * but then ignore the new value when setting the MRU in the kernel.
- * If they send us a bigger MRU than what we asked, accept it, up to
- * the limit of the default MRU we'd get if we didn't negotiate.
- */
- if (go->neg_mru && go->mru != DEFMRU) {
- NAKCISHORT(CI_MRU, neg_mru,
- if (cishort <= wo->mru || cishort <= DEFMRU)
- try.mru = cishort;
- );
- }
-
- /*
- * Add any characters they want to our (receive-side) asyncmap.
- */
- if (go->neg_asyncmap && go->asyncmap != 0xFFFFFFFF) {
- NAKCILONG(CI_ASYNCMAP, neg_asyncmap,
- try.asyncmap = go->asyncmap | cilong;
- );
- }
-
- /*
- * If they've nak'd our authentication-protocol, check whether
- * they are proposing a different protocol, or a different
- * hash algorithm for CHAP.
- */
- if ((go->neg_chap || go->neg_upap)
- && len >= CILEN_SHORT
- && p[0] == CI_AUTHTYPE && p[1] >= CILEN_SHORT && p[1] <= len) {
- cilen = p[1];
- len -= cilen;
- no.neg_chap = go->neg_chap;
- no.neg_upap = go->neg_upap;
- INCPTR(2, p);
- GETSHORT(cishort, p);
- if (cishort == PPP_PAP && cilen == CILEN_SHORT) {
- /*
- * If we were asking for CHAP, they obviously don't want to do it.
- * If we weren't asking for CHAP, then we were asking for PAP,
- * in which case this Nak is bad.
- */
- if (!go->neg_chap)
- goto bad;
- try.neg_chap = 0;
-
- } else if (cishort == PPP_CHAP && cilen == CILEN_CHAP) {
- GETCHAR(cichar, p);
- if (go->neg_chap) {
- /*
- * We were asking for CHAP/MD5; they must want a different
- * algorithm. If they can't do MD5, we can ask for M$-CHAP
- * if we support it, otherwise we'll have to stop
- * asking for CHAP.
- */
- if (cichar != go->chap_mdtype) {
-#ifdef CHAPMS
- if (cichar == CHAP_MICROSOFT)
- go->chap_mdtype = CHAP_MICROSOFT;
- else
-#endif /* CHAPMS */
- try.neg_chap = 0;
- }
- } else {
- /*
- * Stop asking for PAP if we were asking for it.
- */
- try.neg_upap = 0;
- }
-
- } else {
- /*
- * We don't recognize what they're suggesting.
- * Stop asking for what we were asking for.
- */
- if (go->neg_chap)
- try.neg_chap = 0;
- else
- try.neg_upap = 0;
- p += cilen - CILEN_SHORT;
- }
- }
-
- /*
- * If they can't cope with our link quality protocol, we'll have
- * to stop asking for LQR. We haven't got any other protocol.
- * If they Nak the reporting period, take their value XXX ?
- */
- NAKCILQR(CI_QUALITY, neg_lqr,
- if (cishort != PPP_LQR)
- try.neg_lqr = 0;
- else
- try.lqr_period = cilong;
- );
-
- /*
- * Only implementing CBCP...not the rest of the callback options
- */
- NAKCICHAR(CI_CALLBACK, neg_cbcp,
- try.neg_cbcp = 0;
- );
-
- /*
- * Check for a looped-back line.
- */
- NAKCILONG(CI_MAGICNUMBER, neg_magicnumber,
- try.magicnumber = magic();
- looped_back = 1;
- );
-
- /*
- * Peer shouldn't send Nak for protocol compression or
- * address/control compression requests; they should send
- * a Reject instead. If they send a Nak, treat it as a Reject.
- */
- NAKCIVOID(CI_PCOMPRESSION, neg_pcompression);
- NAKCIVOID(CI_ACCOMPRESSION, neg_accompression);
-
- /*
- * Nak for MRRU option - accept their value if it is smaller
- * than the one we want.
- */
- if (go->neg_mrru) {
- NAKCISHORT(CI_MRRU, neg_mrru,
- if (cishort <= wo->mrru)
- try.mrru = cishort;
- );
- }
-
- /*
- * Nak for short sequence numbers shouldn't be sent, treat it
- * like a reject.
- */
- NAKCIVOID(CI_SSNHF, neg_ssnhf);
-
- /*
- * Nak of the endpoint discriminator option is not permitted,
- * treat it like a reject.
- */
- NAKCIENDP(CI_EPDISC, neg_endpoint);
-
- /*
- * There may be remaining CIs, if the peer is requesting negotiation
- * on an option that we didn't include in our request packet.
- * If we see an option that we requested, or one we've already seen
- * in this packet, then this packet is bad.
- * If we wanted to respond by starting to negotiate on the requested
- * option(s), we could, but we don't, because except for the
- * authentication type and quality protocol, if we are not negotiating
- * an option, it is because we were told not to.
- * For the authentication type, the Nak from the peer means
- * `let me authenticate myself with you' which is a bit pointless.
- * For the quality protocol, the Nak means `ask me to send you quality
- * reports', but if we didn't ask for them, we don't want them.
- * An option we don't recognize represents the peer asking to
- * negotiate some option we don't support, so ignore it.
- */
- while (len > CILEN_VOID) {
- GETCHAR(citype, p);
- GETCHAR(cilen, p);
- if (cilen < CILEN_VOID || (len -= cilen) < 0)
- goto bad;
- next = p + cilen - 2;
-
- switch (citype) {
- case CI_MRU:
- if ((go->neg_mru && go->mru != DEFMRU)
- || no.neg_mru || cilen != CILEN_SHORT)
- goto bad;
- GETSHORT(cishort, p);
- if (cishort < DEFMRU) {
- try.neg_mru = 1;
- try.mru = cishort;
- }
- break;
- case CI_ASYNCMAP:
- if ((go->neg_asyncmap && go->asyncmap != 0xFFFFFFFF)
- || no.neg_asyncmap || cilen != CILEN_LONG)
- goto bad;
- break;
- case CI_AUTHTYPE:
- if (go->neg_chap || no.neg_chap || go->neg_upap || no.neg_upap)
- goto bad;
- break;
- case CI_MAGICNUMBER:
- if (go->neg_magicnumber || no.neg_magicnumber ||
- cilen != CILEN_LONG)
- goto bad;
- break;
- case CI_PCOMPRESSION:
- if (go->neg_pcompression || no.neg_pcompression
- || cilen != CILEN_VOID)
- goto bad;
- break;
- case CI_ACCOMPRESSION:
- if (go->neg_accompression || no.neg_accompression
- || cilen != CILEN_VOID)
- goto bad;
- break;
- case CI_QUALITY:
- if (go->neg_lqr || no.neg_lqr || cilen != CILEN_LQR)
- goto bad;
- break;
- case CI_MRRU:
- if (go->neg_mrru || no.neg_mrru || cilen != CILEN_SHORT)
- goto bad;
- break;
- case CI_SSNHF:
- if (go->neg_ssnhf || no.neg_ssnhf || cilen != CILEN_VOID)
- goto bad;
- try.neg_ssnhf = 1;
- break;
- case CI_EPDISC:
- if (go->neg_endpoint || no.neg_endpoint || cilen < CILEN_CHAR)
- goto bad;
- break;
- }
- p = next;
- }
-
- /*
- * OK, the Nak is good. Now we can update state.
- * If there are any options left we ignore them.
- */
- if (f->state != OPENED) {
- if (looped_back) {
- if (++try.numloops >= lcp_loopbackfail) {
- notice("Serial line is looped back.");
- lcp_close(f->unit, "Loopback detected");
- status = EXIT_LOOPBACK;
- }
- } else
- try.numloops = 0;
- *go = try;
- }
-
- return 1;
-
-bad:
- LCPDEBUG(("lcp_nakci: received bad Nak!"));
- return 0;
-}
-
-
-/*
- * lcp_rejci - Peer has Rejected some of our CIs.
- * This should not modify any state if the Reject is bad
- * or if LCP is in the OPENED state.
- *
- * Returns:
- * 0 - Reject was bad.
- * 1 - Reject was good.
- */
-static int
-lcp_rejci(f, p, len)
- fsm *f;
- u_char *p;
- int len;
-{
- lcp_options *go = &lcp_gotoptions[f->unit];
- u_char cichar;
- u_short cishort;
- u_int32_t cilong;
- lcp_options try; /* options to request next time */
-
- try = *go;
-
- /*
- * Any Rejected CIs must be in exactly the same order that we sent.
- * Check packet length and CI length at each step.
- * If we find any deviations, then this packet is bad.
- */
-#define REJCIVOID(opt, neg) \
- if (go->neg && \
- len >= CILEN_VOID && \
- p[1] == CILEN_VOID && \
- p[0] == opt) { \
- len -= CILEN_VOID; \
- INCPTR(CILEN_VOID, p); \
- try.neg = 0; \
- }
-#define REJCISHORT(opt, neg, val) \
- if (go->neg && \
- len >= CILEN_SHORT && \
- p[1] == CILEN_SHORT && \
- p[0] == opt) { \
- len -= CILEN_SHORT; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- /* Check rejected value. */ \
- if (cishort != val) \
- goto bad; \
- try.neg = 0; \
- }
-#define REJCICHAP(opt, neg, val, digest) \
- if (go->neg && \
- len >= CILEN_CHAP && \
- p[1] == CILEN_CHAP && \
- p[0] == opt) { \
- len -= CILEN_CHAP; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- GETCHAR(cichar, p); \
- /* Check rejected value. */ \
- if (cishort != val || cichar != digest) \
- goto bad; \
- try.neg = 0; \
- try.neg_upap = 0; \
- }
-#define REJCILONG(opt, neg, val) \
- if (go->neg && \
- len >= CILEN_LONG && \
- p[1] == CILEN_LONG && \
- p[0] == opt) { \
- len -= CILEN_LONG; \
- INCPTR(2, p); \
- GETLONG(cilong, p); \
- /* Check rejected value. */ \
- if (cilong != val) \
- goto bad; \
- try.neg = 0; \
- }
-#define REJCILQR(opt, neg, val) \
- if (go->neg && \
- len >= CILEN_LQR && \
- p[1] == CILEN_LQR && \
- p[0] == opt) { \
- len -= CILEN_LQR; \
- INCPTR(2, p); \
- GETSHORT(cishort, p); \
- GETLONG(cilong, p); \
- /* Check rejected value. */ \
- if (cishort != PPP_LQR || cilong != val) \
- goto bad; \
- try.neg = 0; \
- }
-#define REJCICBCP(opt, neg, val) \
- if (go->neg && \
- len >= CILEN_CBCP && \
- p[1] == CILEN_CBCP && \
- p[0] == opt) { \
- len -= CILEN_CBCP; \
- INCPTR(2, p); \
- GETCHAR(cichar, p); \
- /* Check rejected value. */ \
- if (cichar != val) \
- goto bad; \
- try.neg = 0; \
- }
-#define REJCIENDP(opt, neg, class, val, vlen) \
- if (go->neg && \
- len >= CILEN_CHAR + vlen && \
- p[0] == opt && \
- p[1] == CILEN_CHAR + vlen) { \
- int i; \
- len -= CILEN_CHAR + vlen; \
- INCPTR(2, p); \
- GETCHAR(cichar, p); \
- if (cichar != class) \
- goto bad; \
- for (i = 0; i < vlen; ++i) { \
- GETCHAR(cichar, p); \
- if (cichar != val[i]) \
- goto bad; \
- } \
- try.neg = 0; \
- }
-
- REJCISHORT(CI_MRU, neg_mru, go->mru);
- REJCILONG(CI_ASYNCMAP, neg_asyncmap, go->asyncmap);
- REJCICHAP(CI_AUTHTYPE, neg_chap, PPP_CHAP, go->chap_mdtype);
- if (!go->neg_chap) {
- REJCISHORT(CI_AUTHTYPE, neg_upap, PPP_PAP);
- }
- REJCILQR(CI_QUALITY, neg_lqr, go->lqr_period);
- REJCICBCP(CI_CALLBACK, neg_cbcp, CBCP_OPT);
- REJCILONG(CI_MAGICNUMBER, neg_magicnumber, go->magicnumber);
- REJCIVOID(CI_PCOMPRESSION, neg_pcompression);
- REJCIVOID(CI_ACCOMPRESSION, neg_accompression);
- REJCISHORT(CI_MRRU, neg_mrru, go->mrru);
- REJCIVOID(CI_SSNHF, neg_ssnhf);
- REJCIENDP(CI_EPDISC, neg_endpoint, go->endpoint.class,
- go->endpoint.value, go->endpoint.length);
-
- /*
- * If there are any remaining CIs, then this packet is bad.
- */
- if (len != 0)
- goto bad;
- /*
- * Now we can update state.
- */
- if (f->state != OPENED)
- *go = try;
- return 1;
-
-bad:
- LCPDEBUG(("lcp_rejci: received bad Reject!"));
- return 0;
-}
-
-
-/*
- * lcp_reqci - Check the peer's requested CIs and send appropriate response.
- *
- * Returns: CONFACK, CONFNAK or CONFREJ and input packet modified
- * appropriately. If reject_if_disagree is non-zero, doesn't return
- * CONFNAK; returns CONFREJ if it can't return CONFACK.
- */
-static int
-lcp_reqci(f, inp, lenp, reject_if_disagree)
- fsm *f;
- u_char *inp; /* Requested CIs */
- int *lenp; /* Length of requested CIs */
- int reject_if_disagree;
-{
- lcp_options *go = &lcp_gotoptions[f->unit];
- lcp_options *ho = &lcp_hisoptions[f->unit];
- lcp_options *ao = &lcp_allowoptions[f->unit];
- u_char *cip, *next; /* Pointer to current and next CIs */
- int cilen, citype, cichar; /* Parsed len, type, char value */
- u_short cishort; /* Parsed short value */
- u_int32_t cilong; /* Parse long value */
- int rc = CONFACK; /* Final packet return code */
- int orc; /* Individual option return code */
- u_char *p; /* Pointer to next char to parse */
- u_char *rejp; /* Pointer to next char in reject frame */
- u_char *nakp; /* Pointer to next char in Nak frame */
- int l = *lenp; /* Length left */
-
- /*
- * Reset all his options.
- */
- BZERO(ho, sizeof(*ho));
-
- /*
- * Process all his options.
- */
- next = inp;
- nakp = nak_buffer;
- rejp = inp;
- while (l) {
- orc = CONFACK; /* Assume success */
- cip = p = next; /* Remember begining of CI */
- if (l < 2 || /* Not enough data for CI header or */
- p[1] < 2 || /* CI length too small or */
- p[1] > l) { /* CI length too big? */
- LCPDEBUG(("lcp_reqci: bad CI length!"));
- orc = CONFREJ; /* Reject bad CI */
- cilen = l; /* Reject till end of packet */
- l = 0; /* Don't loop again */
- citype = 0;
- goto endswitch;
- }
- GETCHAR(citype, p); /* Parse CI type */
- GETCHAR(cilen, p); /* Parse CI length */
- l -= cilen; /* Adjust remaining length */
- next += cilen; /* Step to next CI */
-
- switch (citype) { /* Check CI type */
- case CI_MRU:
- if (!ao->neg_mru || /* Allow option? */
- cilen != CILEN_SHORT) { /* Check CI length */
- orc = CONFREJ; /* Reject CI */
- break;
- }
- GETSHORT(cishort, p); /* Parse MRU */
-
- /*
- * He must be able to receive at least our minimum.
- * No need to check a maximum. If he sends a large number,
- * we'll just ignore it.
- */
- if (cishort < MINMRU) {
- orc = CONFNAK; /* Nak CI */
- PUTCHAR(CI_MRU, nakp);
- PUTCHAR(CILEN_SHORT, nakp);
- PUTSHORT(MINMRU, nakp); /* Give him a hint */
- break;
- }
- ho->neg_mru = 1; /* Remember he sent MRU */
- ho->mru = cishort; /* And remember value */
- break;
-
- case CI_ASYNCMAP:
- if (!ao->neg_asyncmap ||
- cilen != CILEN_LONG) {
- orc = CONFREJ;
- break;
- }
- GETLONG(cilong, p);
-
- /*
- * Asyncmap must have set at least the bits
- * which are set in lcp_allowoptions[unit].asyncmap.
- */
- if ((ao->asyncmap & ~cilong) != 0) {
- orc = CONFNAK;
- PUTCHAR(CI_ASYNCMAP, nakp);
- PUTCHAR(CILEN_LONG, nakp);
- PUTLONG(ao->asyncmap | cilong, nakp);
- break;
- }
- ho->neg_asyncmap = 1;
- ho->asyncmap = cilong;
- break;
-
- case CI_AUTHTYPE:
- if (cilen < CILEN_SHORT ||
- !(ao->neg_upap || ao->neg_chap)) {
- /*
- * Reject the option if we're not willing to authenticate.
- */
- orc = CONFREJ;
- break;
- }
- GETSHORT(cishort, p);
-
- /*
- * Authtype must be PAP or CHAP.
- *
- * Note: if both ao->neg_upap and ao->neg_chap are set,
- * and the peer sends a Configure-Request with two
- * authenticate-protocol requests, one for CHAP and one
- * for UPAP, then we will reject the second request.
- * Whether we end up doing CHAP or UPAP depends then on
- * the ordering of the CIs in the peer's Configure-Request.
- */
-
- if (cishort == PPP_PAP) {
- if (ho->neg_chap || /* we've already accepted CHAP */
- cilen != CILEN_SHORT) {
- LCPDEBUG(("lcp_reqci: rcvd AUTHTYPE PAP, rejecting..."));
- orc = CONFREJ;
- break;
- }
- if (!ao->neg_upap) { /* we don't want to do PAP */
- orc = CONFNAK; /* NAK it and suggest CHAP */
- PUTCHAR(CI_AUTHTYPE, nakp);
- PUTCHAR(CILEN_CHAP, nakp);
- PUTSHORT(PPP_CHAP, nakp);
- PUTCHAR(ao->chap_mdtype, nakp);
- /* XXX if we can do CHAP_MICROSOFT as well, we should
- probably put in another option saying so */
- break;
- }
- ho->neg_upap = 1;
- break;
- }
- if (cishort == PPP_CHAP) {
- if (ho->neg_upap || /* we've already accepted PAP */
- cilen != CILEN_CHAP) {
- LCPDEBUG(("lcp_reqci: rcvd AUTHTYPE CHAP, rejecting..."));
- orc = CONFREJ;
- break;
- }
- if (!ao->neg_chap) { /* we don't want to do CHAP */
- orc = CONFNAK; /* NAK it and suggest PAP */
- PUTCHAR(CI_AUTHTYPE, nakp);
- PUTCHAR(CILEN_SHORT, nakp);
- PUTSHORT(PPP_PAP, nakp);
- break;
- }
- GETCHAR(cichar, p); /* get digest type*/
- if (cichar != CHAP_DIGEST_MD5
-#ifdef CHAPMS
- && cichar != CHAP_MICROSOFT
-#endif
- ) {
- orc = CONFNAK;
- PUTCHAR(CI_AUTHTYPE, nakp);
- PUTCHAR(CILEN_CHAP, nakp);
- PUTSHORT(PPP_CHAP, nakp);
- PUTCHAR(ao->chap_mdtype, nakp);
- break;
- }
- ho->chap_mdtype = cichar; /* save md type */
- ho->neg_chap = 1;
- break;
- }
-
- /*
- * We don't recognize the protocol they're asking for.
- * Nak it with something we're willing to do.
- * (At this point we know ao->neg_upap || ao->neg_chap.)
- */
- orc = CONFNAK;
- PUTCHAR(CI_AUTHTYPE, nakp);
- if (ao->neg_chap) {
- PUTCHAR(CILEN_CHAP, nakp);
- PUTSHORT(PPP_CHAP, nakp);
- PUTCHAR(ao->chap_mdtype, nakp);
- } else {
- PUTCHAR(CILEN_SHORT, nakp);
- PUTSHORT(PPP_PAP, nakp);
- }
- break;
-
- case CI_QUALITY:
- if (!ao->neg_lqr ||
- cilen != CILEN_LQR) {
- orc = CONFREJ;
- break;
- }
-
- GETSHORT(cishort, p);
- GETLONG(cilong, p);
-
- /*
- * Check the protocol and the reporting period.
- * XXX When should we Nak this, and what with?
- */
- if (cishort != PPP_LQR) {
- orc = CONFNAK;
- PUTCHAR(CI_QUALITY, nakp);
- PUTCHAR(CILEN_LQR, nakp);
- PUTSHORT(PPP_LQR, nakp);
- PUTLONG(ao->lqr_period, nakp);
- break;
- }
- break;
-
- case CI_MAGICNUMBER:
- if (!(ao->neg_magicnumber || go->neg_magicnumber) ||
- cilen != CILEN_LONG) {
- orc = CONFREJ;
- break;
- }
- GETLONG(cilong, p);
-
- /*
- * He must have a different magic number.
- */
- if (go->neg_magicnumber &&
- cilong == go->magicnumber) {
- cilong = magic(); /* Don't put magic() inside macro! */
- orc = CONFNAK;
- PUTCHAR(CI_MAGICNUMBER, nakp);
- PUTCHAR(CILEN_LONG, nakp);
- PUTLONG(cilong, nakp);
- break;
- }
- ho->neg_magicnumber = 1;
- ho->magicnumber = cilong;
- break;
-
-
- case CI_PCOMPRESSION:
- if (!ao->neg_pcompression ||
- cilen != CILEN_VOID) {
- orc = CONFREJ;
- break;
- }
- ho->neg_pcompression = 1;
- break;
-
- case CI_ACCOMPRESSION:
- if (!ao->neg_accompression ||
- cilen != CILEN_VOID) {
- orc = CONFREJ;
- break;
- }
- ho->neg_accompression = 1;
- break;
-
- case CI_MRRU:
- if (!ao->neg_mrru || !multilink ||
- cilen != CILEN_SHORT) {
- orc = CONFREJ;
- break;
- }
-
- GETSHORT(cishort, p);
- /* possibly should insist on a minimum/maximum MRRU here */
- ho->neg_mrru = 1;
- ho->mrru = cishort;
- break;
-
- case CI_SSNHF:
- if (!ao->neg_ssnhf || !multilink ||
- cilen != CILEN_VOID) {
- orc = CONFREJ;
- break;
- }
- ho->neg_ssnhf = 1;
- break;
-
- case CI_EPDISC:
- if (!ao->neg_endpoint ||
- cilen < CILEN_CHAR ||
- cilen > CILEN_CHAR + MAX_ENDP_LEN) {
- orc = CONFREJ;
- break;
- }
- GETCHAR(cichar, p);
- cilen -= CILEN_CHAR;
- ho->neg_endpoint = 1;
- ho->endpoint.class = cichar;
- ho->endpoint.length = cilen;
- BCOPY(p, ho->endpoint.value, cilen);
- INCPTR(cilen, p);
- break;
-
- default:
- LCPDEBUG(("lcp_reqci: rcvd unknown option %d", citype));
- orc = CONFREJ;
- break;
- }
-
-endswitch:
- if (orc == CONFACK && /* Good CI */
- rc != CONFACK) /* but prior CI wasnt? */
- continue; /* Don't send this one */
-
- if (orc == CONFNAK) { /* Nak this CI? */
- if (reject_if_disagree /* Getting fed up with sending NAKs? */
- && citype != CI_MAGICNUMBER) {
- orc = CONFREJ; /* Get tough if so */
- } else {
- if (rc == CONFREJ) /* Rejecting prior CI? */
- continue; /* Don't send this one */
- rc = CONFNAK;
- }
- }
- if (orc == CONFREJ) { /* Reject this CI */
- rc = CONFREJ;
- if (cip != rejp) /* Need to move rejected CI? */
- BCOPY(cip, rejp, cilen); /* Move it */
- INCPTR(cilen, rejp); /* Update output pointer */
- }
- }
-
- /*
- * If we wanted to send additional NAKs (for unsent CIs), the
- * code would go here. The extra NAKs would go at *nakp.
- * At present there are no cases where we want to ask the
- * peer to negotiate an option.
- */
-
- switch (rc) {
- case CONFACK:
- *lenp = next - inp;
- break;
- case CONFNAK:
- /*
- * Copy the Nak'd options from the nak_buffer to the caller's buffer.
- */
- *lenp = nakp - nak_buffer;
- BCOPY(nak_buffer, inp, *lenp);
- break;
- case CONFREJ:
- *lenp = rejp - inp;
- break;
- }
-
- LCPDEBUG(("lcp_reqci: returning CONF%s.", CODENAME(rc)));
- return (rc); /* Return final code */
-}
-
-
-/*
- * lcp_up - LCP has come UP.
- */
-static void
-lcp_up(f)
- fsm *f;
-{
- lcp_options *wo = &lcp_wantoptions[f->unit];
- lcp_options *ho = &lcp_hisoptions[f->unit];
- lcp_options *go = &lcp_gotoptions[f->unit];
- lcp_options *ao = &lcp_allowoptions[f->unit];
- int mtu;
-
- if (!go->neg_magicnumber)
- go->magicnumber = 0;
- if (!ho->neg_magicnumber)
- ho->magicnumber = 0;
-
- /*
- * Set our MTU to the smaller of the MTU we wanted and
- * the MRU our peer wanted. If we negotiated an MRU,
- * set our MRU to the larger of value we wanted and
- * the value we got in the negotiation.
- * Note on the MTU: the link MTU can be the MRU the peer wanted,
- * the interface MTU is set to the lower of that and the
- * MTU we want to use.
- */
- mtu = ho->neg_mru? ho->mru: PPP_MRU;
-#ifdef HAVE_MULTILINK
- if (!(multilink && go->neg_mrru && ho->neg_mrru))
-#endif /* HAVE_MULTILINK */
- netif_set_mtu(f->unit, MIN(mtu, ao->mru));
- ppp_send_config(f->unit, mtu,
- (ho->neg_asyncmap? ho->asyncmap: 0xffffffff),
- ho->neg_pcompression, ho->neg_accompression);
- ppp_recv_config(f->unit, (go->neg_mru? MAX(wo->mru, go->mru): PPP_MRU),
- (lax_recv? 0: go->neg_asyncmap? go->asyncmap: 0xffffffff),
- go->neg_pcompression, go->neg_accompression);
-
- if (ho->neg_mru)
- peer_mru[f->unit] = ho->mru;
-
- lcp_echo_lowerup(f->unit); /* Enable echo messages */
-
- link_established(f->unit);
-}
-
-
-/*
- * lcp_down - LCP has gone DOWN.
- *
- * Alert other protocols.
- */
-static void
-lcp_down(f)
- fsm *f;
-{
- lcp_options *go = &lcp_gotoptions[f->unit];
-
- lcp_echo_lowerdown(f->unit);
-
- link_down(f->unit);
-
- ppp_send_config(f->unit, PPP_MRU, 0xffffffff, 0, 0);
- ppp_recv_config(f->unit, PPP_MRU,
- (go->neg_asyncmap? go->asyncmap: 0xffffffff),
- go->neg_pcompression, go->neg_accompression);
- peer_mru[f->unit] = PPP_MRU;
-}
-
-
-/*
- * lcp_starting - LCP needs the lower layer up.
- */
-static void
-lcp_starting(f)
- fsm *f;
-{
- link_required(f->unit);
-}
-
-
-/*
- * lcp_finished - LCP has finished with the lower layer.
- */
-static void
-lcp_finished(f)
- fsm *f;
-{
- link_terminated(f->unit);
-}
-
-
-/*
- * lcp_printpkt - print the contents of an LCP packet.
- */
-static char *lcp_codenames[] = {
- "ConfReq", "ConfAck", "ConfNak", "ConfRej",
- "TermReq", "TermAck", "CodeRej", "ProtRej",
- "EchoReq", "EchoRep", "DiscReq"
-};
-
-static int
-lcp_printpkt(p, plen, printer, arg)
- u_char *p;
- int plen;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int code, id, len, olen, i;
- u_char *pstart, *optend;
- u_short cishort;
- u_int32_t cilong;
-
- if (plen < HEADERLEN)
- return 0;
- pstart = p;
- GETCHAR(code, p);
- GETCHAR(id, p);
- GETSHORT(len, p);
- if (len < HEADERLEN || len > plen)
- return 0;
-
- if (code >= 1 && code <= sizeof(lcp_codenames) / sizeof(char *))
- printer(arg, " %s", lcp_codenames[code-1]);
- else
- printer(arg, " code=0x%x", code);
- printer(arg, " id=0x%x", id);
- len -= HEADERLEN;
- switch (code) {
- case CONFREQ:
- case CONFACK:
- case CONFNAK:
- case CONFREJ:
- /* print option list */
- while (len >= 2) {
- GETCHAR(code, p);
- GETCHAR(olen, p);
- p -= 2;
- if (olen < 2 || olen > len) {
- break;
- }
- printer(arg, " <");
- len -= olen;
- optend = p + olen;
- switch (code) {
- case CI_MRU:
- if (olen == CILEN_SHORT) {
- p += 2;
- GETSHORT(cishort, p);
- printer(arg, "mru %d", cishort);
- }
- break;
- case CI_ASYNCMAP:
- if (olen == CILEN_LONG) {
- p += 2;
- GETLONG(cilong, p);
- printer(arg, "asyncmap 0x%x", cilong);
- }
- break;
- case CI_AUTHTYPE:
- if (olen >= CILEN_SHORT) {
- p += 2;
- printer(arg, "auth ");
- GETSHORT(cishort, p);
- switch (cishort) {
- case PPP_PAP:
- printer(arg, "pap");
- break;
- case PPP_CHAP:
- printer(arg, "chap");
- if (p < optend) {
- switch (*p) {
- case CHAP_DIGEST_MD5:
- printer(arg, " MD5");
- ++p;
- break;
-#ifdef CHAPMS
- case CHAP_MICROSOFT:
- printer(arg, " m$oft");
- ++p;
- break;
-#endif
- }
- }
- break;
- default:
- printer(arg, "0x%x", cishort);
- }
- }
- break;
- case CI_QUALITY:
- if (olen >= CILEN_SHORT) {
- p += 2;
- printer(arg, "quality ");
- GETSHORT(cishort, p);
- switch (cishort) {
- case PPP_LQR:
- printer(arg, "lqr");
- break;
- default:
- printer(arg, "0x%x", cishort);
- }
- }
- break;
- case CI_CALLBACK:
- if (olen >= CILEN_CHAR) {
- p += 2;
- printer(arg, "callback ");
- GETCHAR(cishort, p);
- switch (cishort) {
- case CBCP_OPT:
- printer(arg, "CBCP");
- break;
- default:
- printer(arg, "0x%x", cishort);
- }
- }
- break;
- case CI_MAGICNUMBER:
- if (olen == CILEN_LONG) {
- p += 2;
- GETLONG(cilong, p);
- printer(arg, "magic 0x%x", cilong);
- }
- break;
- case CI_PCOMPRESSION:
- if (olen == CILEN_VOID) {
- p += 2;
- printer(arg, "pcomp");
- }
- break;
- case CI_ACCOMPRESSION:
- if (olen == CILEN_VOID) {
- p += 2;
- printer(arg, "accomp");
- }
- break;
- case CI_MRRU:
- if (olen == CILEN_SHORT) {
- p += 2;
- GETSHORT(cishort, p);
- printer(arg, "mrru %d", cishort);
- }
- break;
- case CI_SSNHF:
- if (olen == CILEN_VOID) {
- p += 2;
- printer(arg, "ssnhf");
- }
- break;
- case CI_EPDISC:
-#ifdef HAVE_MULTILINK
- if (olen >= CILEN_CHAR) {
- struct epdisc epd;
- p += 2;
- GETCHAR(epd.class, p);
- epd.length = olen - CILEN_CHAR;
- if (epd.length > MAX_ENDP_LEN)
- epd.length = MAX_ENDP_LEN;
- if (epd.length > 0) {
- BCOPY(p, epd.value, epd.length);
- p += epd.length;
- }
- printer(arg, "endpoint [%s]", epdisc_to_str(&epd));
- }
-#else
- printer(arg, "endpoint");
-#endif
- break;
- }
- while (p < optend) {
- GETCHAR(code, p);
- printer(arg, " %.2x", code);
- }
- printer(arg, ">");
- }
- break;
-
- case TERMACK:
- case TERMREQ:
- if (len > 0 && *p >= ' ' && *p < 0x7f) {
- printer(arg, " ");
- print_string((char *)p, len, printer, arg);
- p += len;
- len = 0;
- }
- break;
-
- case ECHOREQ:
- case ECHOREP:
- case DISCREQ:
- if (len >= 4) {
- GETLONG(cilong, p);
- printer(arg, " magic=0x%x", cilong);
- p += 4;
- len -= 4;
- }
- break;
- }
-
- /* print the rest of the bytes in the packet */
- for (i = 0; i < len && i < 32; ++i) {
- GETCHAR(code, p);
- printer(arg, " %.2x", code);
- }
- if (i < len) {
- printer(arg, " ...");
- p += len - i;
- }
-
- return p - pstart;
-}
-
-/*
- * Time to shut down the link because there is nothing out there.
- */
-
-static
-void LcpLinkFailure (f)
- fsm *f;
-{
- if (f->state == OPENED) {
- info("No response to %d echo-requests", lcp_echos_pending);
- notice("Serial link appears to be disconnected.");
- lcp_close(f->unit, "Peer not responding");
- status = EXIT_PEER_DEAD;
- }
-}
-
-/*
- * Timer expired for the LCP echo requests from this process.
- */
-
-static void
-LcpEchoCheck (f)
- fsm *f;
-{
- LcpSendEchoRequest (f);
- if (f->state != OPENED)
- return;
-
- /*
- * Start the timer for the next interval.
- */
- if (lcp_echo_timer_running)
- warn("assertion lcp_echo_timer_running==0 failed");
- TIMEOUT (LcpEchoTimeout, f, lcp_echo_interval);
- lcp_echo_timer_running = 1;
-}
-
-/*
- * LcpEchoTimeout - Timer expired on the LCP echo
- */
-
-static void
-LcpEchoTimeout (arg)
- void *arg;
-{
- if (lcp_echo_timer_running != 0) {
- lcp_echo_timer_running = 0;
- LcpEchoCheck ((fsm *) arg);
- }
-}
-
-/*
- * LcpEchoReply - LCP has received a reply to the echo
- */
-
-static void
-lcp_received_echo_reply (f, id, inp, len)
- fsm *f;
- int id;
- u_char *inp;
- int len;
-{
- u_int32_t magic;
-
- /* Check the magic number - don't count replies from ourselves. */
- if (len < 4) {
- dbglog("lcp: received short Echo-Reply, length %d", len);
- return;
- }
- GETLONG(magic, inp);
- if (lcp_gotoptions[f->unit].neg_magicnumber
- && magic == lcp_gotoptions[f->unit].magicnumber) {
- warn("appear to have received our own echo-reply!");
- return;
- }
-
- /* Reset the number of outstanding echo frames */
- lcp_echos_pending = 0;
-}
-
-/*
- * LcpSendEchoRequest - Send an echo request frame to the peer
- */
-
-static void
-LcpSendEchoRequest (f)
- fsm *f;
-{
- u_int32_t lcp_magic;
- u_char pkt[4], *pktp;
-
- /*
- * Detect the failure of the peer at this point.
- */
- if (lcp_echo_fails != 0) {
- if (lcp_echos_pending >= lcp_echo_fails) {
- LcpLinkFailure(f);
- lcp_echos_pending = 0;
- }
- }
-
- /*
- * Make and send the echo request frame.
- */
- if (f->state == OPENED) {
- lcp_magic = lcp_gotoptions[f->unit].magicnumber;
- pktp = pkt;
- PUTLONG(lcp_magic, pktp);
- fsm_sdata(f, ECHOREQ, lcp_echo_number++ & 0xFF, pkt, pktp - pkt);
- ++lcp_echos_pending;
- }
-}
-
-/*
- * lcp_echo_lowerup - Start the timer for the LCP frame
- */
-
-static void
-lcp_echo_lowerup (unit)
- int unit;
-{
- fsm *f = &lcp_fsm[unit];
-
- /* Clear the parameters for generating echo frames */
- lcp_echos_pending = 0;
- lcp_echo_number = 0;
- lcp_echo_timer_running = 0;
-
- /* If a timeout interval is specified then start the timer */
- if (lcp_echo_interval != 0)
- LcpEchoCheck (f);
-}
-
-/*
- * lcp_echo_lowerdown - Stop the timer for the LCP frame
- */
-
-static void
-lcp_echo_lowerdown (unit)
- int unit;
-{
- fsm *f = &lcp_fsm[unit];
-
- if (lcp_echo_timer_running != 0) {
- UNTIMEOUT (LcpEchoTimeout, f);
- lcp_echo_timer_running = 0;
- }
-}
diff --git a/mdk-stage1/ppp/pppd/lcp.h b/mdk-stage1/ppp/pppd/lcp.h
deleted file mode 100644
index b87a9295e..000000000
--- a/mdk-stage1/ppp/pppd/lcp.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * lcp.h - Link Control Protocol definitions.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-/*
- * Options.
- */
-#define CI_MRU 1 /* Maximum Receive Unit */
-#define CI_ASYNCMAP 2 /* Async Control Character Map */
-#define CI_AUTHTYPE 3 /* Authentication Type */
-#define CI_QUALITY 4 /* Quality Protocol */
-#define CI_MAGICNUMBER 5 /* Magic Number */
-#define CI_PCOMPRESSION 7 /* Protocol Field Compression */
-#define CI_ACCOMPRESSION 8 /* Address/Control Field Compression */
-#define CI_CALLBACK 13 /* callback */
-#define CI_MRRU 17 /* max reconstructed receive unit; multilink */
-#define CI_SSNHF 18 /* short sequence numbers for multilink */
-#define CI_EPDISC 19 /* endpoint discriminator */
-
-/*
- * LCP-specific packet types.
- */
-#define PROTREJ 8 /* Protocol Reject */
-#define ECHOREQ 9 /* Echo Request */
-#define ECHOREP 10 /* Echo Reply */
-#define DISCREQ 11 /* Discard Request */
-#define CBCP_OPT 6 /* Use callback control protocol */
-
-/*
- * The state of options is described by an lcp_options structure.
- */
-typedef struct lcp_options {
- bool passive; /* Don't die if we don't get a response */
- bool silent; /* Wait for the other end to start first */
- bool restart; /* Restart vs. exit after close */
- bool neg_mru; /* Negotiate the MRU? */
- bool neg_asyncmap; /* Negotiate the async map? */
- bool neg_upap; /* Ask for UPAP authentication? */
- bool neg_chap; /* Ask for CHAP authentication? */
- bool neg_magicnumber; /* Ask for magic number? */
- bool neg_pcompression; /* HDLC Protocol Field Compression? */
- bool neg_accompression; /* HDLC Address/Control Field Compression? */
- bool neg_lqr; /* Negotiate use of Link Quality Reports */
- bool neg_cbcp; /* Negotiate use of CBCP */
- bool neg_mrru; /* negotiate multilink MRRU */
- bool neg_ssnhf; /* negotiate short sequence numbers */
- bool neg_endpoint; /* negotiate endpoint discriminator */
- int mru; /* Value of MRU */
- int mrru; /* Value of MRRU, and multilink enable */
- u_char chap_mdtype; /* which MD type (hashing algorithm) */
- u_int32_t asyncmap; /* Value of async map */
- u_int32_t magicnumber;
- int numloops; /* Number of loops during magic number neg. */
- u_int32_t lqr_period; /* Reporting period for LQR 1/100ths second */
- struct epdisc endpoint; /* endpoint discriminator */
-} lcp_options;
-
-extern fsm lcp_fsm[];
-extern lcp_options lcp_wantoptions[];
-extern lcp_options lcp_gotoptions[];
-extern lcp_options lcp_allowoptions[];
-extern lcp_options lcp_hisoptions[];
-
-#define DEFMRU 1500 /* Try for this */
-#define MINMRU 128 /* No MRUs below this */
-#define MAXMRU 16384 /* Normally limit MRU to this */
-
-void lcp_open __P((int));
-void lcp_close __P((int, char *));
-void lcp_lowerup __P((int));
-void lcp_lowerdown __P((int));
-void lcp_sprotrej __P((int, u_char *, int)); /* send protocol reject */
-
-extern struct protent lcp_protent;
-
-/* Default number of times we receive our magic number from the peer
- before deciding the link is looped-back. */
-#define DEFLOOPBACKFAIL 10
diff --git a/mdk-stage1/ppp/pppd/magic.c b/mdk-stage1/ppp/pppd/magic.c
deleted file mode 100644
index 1682dee03..000000000
--- a/mdk-stage1/ppp/pppd/magic.c
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * magic.c - PPP Magic Number routines.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/time.h>
-
-#include "pppd.h"
-#include "magic.h"
-
-static const char rcsid[] = RCSID;
-
-extern long mrand48 __P((void));
-extern void srand48 __P((long));
-
-/*
- * magic_init - Initialize the magic number generator.
- *
- * Attempts to compute a random number seed which will not repeat.
- * The current method uses the current hostid, current process ID
- * and current time, currently.
- */
-void
-magic_init()
-{
- long seed;
- struct timeval t;
-
- gettimeofday(&t, NULL);
- seed = get_host_seed() ^ t.tv_sec ^ t.tv_usec ^ getpid();
- srand48(seed);
-}
-
-/*
- * magic - Returns the next magic number.
- */
-u_int32_t
-magic()
-{
- return (u_int32_t) mrand48();
-}
-
-#ifdef NO_DRAND48
-/*
- * Substitute procedures for those systems which don't have
- * drand48 et al.
- */
-
-double
-drand48()
-{
- return (double)random() / (double)0x7fffffffL; /* 2**31-1 */
-}
-
-long
-mrand48()
-{
- return random();
-}
-
-void
-srand48(seedval)
-long seedval;
-{
- srandom((int)seedval);
-}
-
-#endif
diff --git a/mdk-stage1/ppp/pppd/magic.h b/mdk-stage1/ppp/pppd/magic.h
deleted file mode 100644
index 1344626a3..000000000
--- a/mdk-stage1/ppp/pppd/magic.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * magic.h - PPP Magic Number definitions.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-void magic_init __P((void)); /* Initialize the magic number generator */
-u_int32_t magic __P((void)); /* Returns the next magic number */
diff --git a/mdk-stage1/ppp/pppd/main.c b/mdk-stage1/ppp/pppd/main.c
deleted file mode 100644
index c074938cd..000000000
--- a/mdk-stage1/ppp/pppd/main.c
+++ /dev/null
@@ -1,1846 +0,0 @@
-/*
- * main.c - Point-to-Point Protocol main module
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-#include <stdio.h>
-#include <ctype.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <signal.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <syslog.h>
-#include <netdb.h>
-#include <utmp.h>
-#include <pwd.h>
-#include <setjmp.h>
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <sys/time.h>
-#include <sys/resource.h>
-#include <sys/stat.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include "pppd.h"
-#include "magic.h"
-#include "fsm.h"
-#include "lcp.h"
-#include "ipcp.h"
-#ifdef INET6
-#include "ipv6cp.h"
-#endif
-#include "upap.h"
-#include "chap.h"
-#include "ccp.h"
-#include "pathnames.h"
-#include "tdb.h"
-
-#ifdef CBCP_SUPPORT
-#include "cbcp.h"
-#endif
-
-#ifdef IPX_CHANGE
-#include "ipxcp.h"
-#endif /* IPX_CHANGE */
-#ifdef AT_CHANGE
-#include "atcp.h"
-#endif
-
-static const char rcsid[] = RCSID;
-
-/* interface vars */
-char ifname[32]; /* Interface name */
-int ifunit; /* Interface unit number */
-
-struct channel *the_channel;
-
-char *progname; /* Name of this program */
-char hostname[MAXNAMELEN]; /* Our hostname */
-static char pidfilename[MAXPATHLEN]; /* name of pid file */
-static char linkpidfile[MAXPATHLEN]; /* name of linkname pid file */
-char ppp_devnam[MAXPATHLEN]; /* name of PPP tty (maybe ttypx) */
-uid_t uid; /* Our real user-id */
-struct notifier *pidchange = NULL;
-struct notifier *phasechange = NULL;
-struct notifier *exitnotify = NULL;
-struct notifier *sigreceived = NULL;
-
-int hungup; /* terminal has been hung up */
-int privileged; /* we're running as real uid root */
-int need_holdoff; /* need holdoff period before restarting */
-int detached; /* have detached from terminal */
-volatile int status; /* exit status for pppd */
-int unsuccess; /* # unsuccessful connection attempts */
-int do_callback; /* != 0 if we should do callback next */
-int doing_callback; /* != 0 if we are doing callback */
-TDB_CONTEXT *pppdb; /* database for storing status etc. */
-char db_key[32];
-
-int (*holdoff_hook) __P((void)) = NULL;
-int (*new_phase_hook) __P((int)) = NULL;
-
-static int conn_running; /* we have a [dis]connector running */
-static int devfd; /* fd of underlying device */
-static int fd_ppp = -1; /* fd for talking PPP */
-static int fd_loop; /* fd for getting demand-dial packets */
-
-int phase; /* where the link is at */
-int kill_link;
-int open_ccp_flag;
-int listen_time;
-int got_sigusr2;
-int got_sigterm;
-int got_sighup;
-
-static int waiting;
-static sigjmp_buf sigjmp;
-
-char **script_env; /* Env. variable values for scripts */
-int s_env_nalloc; /* # words avail at script_env */
-
-u_char outpacket_buf[PPP_MRU+PPP_HDRLEN]; /* buffer for outgoing packet */
-u_char inpacket_buf[PPP_MRU+PPP_HDRLEN]; /* buffer for incoming packet */
-
-static int n_children; /* # child processes still running */
-static int got_sigchld; /* set if we have received a SIGCHLD */
-
-int privopen; /* don't lock, open device as root */
-
-char *no_ppp_msg = "Sorry - this system lacks PPP kernel support\n";
-
-GIDSET_TYPE groups[NGROUPS_MAX];/* groups the user is in */
-int ngroups; /* How many groups valid in groups */
-
-static struct timeval start_time; /* Time when link was started. */
-
-struct pppd_stats link_stats;
-int link_connect_time;
-int link_stats_valid;
-
-/*
- * We maintain a list of child process pids and
- * functions to call when they exit.
- */
-struct subprocess {
- pid_t pid;
- char *prog;
- void (*done) __P((void *));
- void *arg;
- struct subprocess *next;
-};
-
-static struct subprocess *children;
-
-/* Prototypes for procedures local to this file. */
-
-static void setup_signals __P((void));
-static void create_pidfile __P((void));
-static void create_linkpidfile __P((void));
-static void cleanup __P((void));
-static void get_input __P((void));
-static void calltimeout __P((void));
-static struct timeval *timeleft __P((struct timeval *));
-static void kill_my_pg __P((int));
-static void hup __P((int));
-static void term __P((int));
-static void chld __P((int));
-static void toggle_debug __P((int));
-static void open_ccp __P((int));
-static void bad_signal __P((int));
-static void holdoff_end __P((void *));
-static int reap_kids __P((int waitfor));
-static void update_db_entry __P((void));
-static void add_db_key __P((const char *));
-static void delete_db_key __P((const char *));
-static void cleanup_db __P((void));
-static void handle_events __P((void));
-
-extern char *ttyname __P((int));
-extern char *getlogin __P((void));
-int main __P((int, char *[]));
-
-#ifdef ultrix
-#undef O_NONBLOCK
-#define O_NONBLOCK O_NDELAY
-#endif
-
-#ifdef ULTRIX
-#define setlogmask(x)
-#endif
-
-/*
- * PPP Data Link Layer "protocol" table.
- * One entry per supported protocol.
- * The last entry must be NULL.
- */
-struct protent *protocols[] = {
- &lcp_protent,
- &pap_protent,
- &chap_protent,
-#ifdef CBCP_SUPPORT
- &cbcp_protent,
-#endif
- &ipcp_protent,
-#ifdef INET6
- &ipv6cp_protent,
-#endif
- &ccp_protent,
-#ifdef IPX_CHANGE
- &ipxcp_protent,
-#endif
-#ifdef AT_CHANGE
- &atcp_protent,
-#endif
- NULL
-};
-
-/*
- * If PPP_DRV_NAME is not defined, use the default "ppp" as the device name.
- */
-#if !defined(PPP_DRV_NAME)
-#define PPP_DRV_NAME "ppp"
-#endif /* !defined(PPP_DRV_NAME) */
-
-int
-main(argc, argv)
- int argc;
- char *argv[];
-{
- int i, t;
- char *p;
- struct passwd *pw;
- struct protent *protp;
- char numbuf[16];
-
- new_phase(PHASE_INITIALIZE);
-
- /*
- * Ensure that fds 0, 1, 2 are open, to /dev/null if nowhere else.
- * This way we can close 0, 1, 2 in detach() without clobbering
- * a fd that we are using.
- */
- if ((i = open("/dev/null", O_RDWR)) >= 0) {
- while (0 <= i && i <= 2)
- i = dup(i);
- if (i >= 0)
- close(i);
- }
-
- script_env = NULL;
-
- /* Initialize syslog facilities */
- reopen_log();
-
- if (gethostname(hostname, MAXNAMELEN) < 0 ) {
- option_error("Couldn't get hostname: %m");
- exit(1);
- }
- hostname[MAXNAMELEN-1] = 0;
-
- /* make sure we don't create world or group writable files. */
- umask(umask(0777) | 022);
-
- uid = getuid();
- privileged = uid == 0;
- slprintf(numbuf, sizeof(numbuf), "%d", uid);
- script_setenv("ORIG_UID", numbuf, 0);
-
- ngroups = getgroups(NGROUPS_MAX, groups);
-
- /*
- * Initialize magic number generator now so that protocols may
- * use magic numbers in initialization.
- */
- magic_init();
-
- /*
- * Initialize each protocol.
- */
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- (*protp->init)(0);
-
- /*
- * Initialize the default channel.
- */
- tty_init();
-
- progname = *argv;
-
- /*
- * Parse, in order, the system options file, the user's options file,
- * and the command line arguments.
- */
- if (!options_from_file(_PATH_SYSOPTIONS, !privileged, 0, 1)
- || !options_from_user()
- || !parse_args(argc-1, argv+1))
- exit(EXIT_OPTION_ERROR);
- devnam_fixed = 1; /* can no longer change device name */
-
- /*
- * Work out the device name, if it hasn't already been specified,
- * and parse the tty's options file.
- */
- if (the_channel->process_extra_options)
- (*the_channel->process_extra_options)();
-
- if (debug)
- setlogmask(LOG_UPTO(LOG_DEBUG));
-
- /*
- * Check that we are running as root.
- */
- if (geteuid() != 0) {
- option_error("must be root to run %s, since it is not setuid-root",
- argv[0]);
- exit(EXIT_NOT_ROOT);
- }
-
- if (!ppp_available()) {
- option_error("%s", no_ppp_msg);
- exit(EXIT_NO_KERNEL_SUPPORT);
- }
-
- /*
- * Check that the options given are valid and consistent.
- */
- check_options();
- if (!sys_check_options())
- exit(EXIT_OPTION_ERROR);
- auth_check_options();
-#ifdef HAVE_MULTILINK
- mp_check_options();
-#endif
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (protp->check_options != NULL)
- (*protp->check_options)();
- if (the_channel->check_options)
- (*the_channel->check_options)();
-
-
- if (dump_options || dryrun) {
- init_pr_log(NULL, LOG_INFO);
- print_options(pr_log, NULL);
- end_pr_log();
- if (dryrun)
- die(0);
- }
-
- /*
- * Initialize system-dependent stuff.
- */
- sys_init();
-
- pppdb = tdb_open(_PATH_PPPDB, 0, 0, O_RDWR|O_CREAT, 0644);
- if (pppdb != NULL) {
- slprintf(db_key, sizeof(db_key), "pppd%d", getpid());
- update_db_entry();
- } else {
- warn("Warning: couldn't open ppp database %s", _PATH_PPPDB);
- if (multilink) {
- warn("Warning: disabling multilink");
- multilink = 0;
- }
- }
-
- /*
- * Detach ourselves from the terminal, if required,
- * and identify who is running us.
- */
- if (!nodetach && !updetach)
- detach();
- p = getlogin();
- if (p == NULL) {
- pw = getpwuid(uid);
- if (pw != NULL && pw->pw_name != NULL)
- p = pw->pw_name;
- else
- p = "(unknown)";
- }
- syslog(LOG_NOTICE, "pppd %s started by %s, uid %d", VERSION, p, uid);
- script_setenv("PPPLOGNAME", p, 0);
-
- if (devnam[0])
- script_setenv("DEVICE", devnam, 1);
- slprintf(numbuf, sizeof(numbuf), "%d", getpid());
- script_setenv("PPPD_PID", numbuf, 1);
-
- setup_signals();
-
- waiting = 0;
-
- create_linkpidfile();
-
- /*
- * If we're doing dial-on-demand, set up the interface now.
- */
- if (demand) {
- /*
- * Open the loopback channel and set it up to be the ppp interface.
- */
- tdb_writelock(pppdb);
- fd_loop = open_ppp_loopback();
- set_ifunit(1);
- tdb_writeunlock(pppdb);
-
- /*
- * Configure the interface and mark it up, etc.
- */
- demand_conf();
- }
-
- do_callback = 0;
- for (;;) {
-
- listen_time = 0;
- need_holdoff = 1;
- devfd = -1;
- status = EXIT_OK;
- ++unsuccess;
- doing_callback = do_callback;
- do_callback = 0;
-
- if (demand && !doing_callback) {
- /*
- * Don't do anything until we see some activity.
- */
- new_phase(PHASE_DORMANT);
- demand_unblock();
- add_fd(fd_loop);
- for (;;) {
- handle_events();
- if (kill_link && !persist)
- break;
- if (get_loop_output())
- break;
- }
- remove_fd(fd_loop);
- if (kill_link && !persist)
- break;
-
- /*
- * Now we want to bring up the link.
- */
- demand_block();
- info("Starting link");
- }
-
- new_phase(PHASE_SERIALCONN);
-
- devfd = the_channel->connect();
- if (devfd < 0)
- goto fail;
-
- /* set up the serial device as a ppp interface */
- tdb_writelock(pppdb);
- fd_ppp = the_channel->establish_ppp(devfd);
- if (fd_ppp < 0) {
- tdb_writeunlock(pppdb);
- status = EXIT_FATAL_ERROR;
- goto disconnect;
- }
-
- if (!demand && ifunit >= 0)
- set_ifunit(1);
- tdb_writeunlock(pppdb);
-
- /*
- * Start opening the connection and wait for
- * incoming events (reply, timeout, etc.).
- */
- notice("Connect: %s <--> %s", ifname, ppp_devnam);
- gettimeofday(&start_time, NULL);
- link_stats_valid = 0;
- script_unsetenv("CONNECT_TIME");
- script_unsetenv("BYTES_SENT");
- script_unsetenv("BYTES_RCVD");
- lcp_lowerup(0);
-
- add_fd(fd_ppp);
- lcp_open(0); /* Start protocol */
- status = EXIT_NEGOTIATION_FAILED;
- new_phase(PHASE_ESTABLISH);
- while (phase != PHASE_DEAD) {
- handle_events();
- get_input();
- if (kill_link)
- lcp_close(0, "User request");
- if (open_ccp_flag) {
- if (phase == PHASE_NETWORK || phase == PHASE_RUNNING) {
- ccp_fsm[0].flags = OPT_RESTART; /* clears OPT_SILENT */
- (*ccp_protent.open)(0);
- }
- }
- }
-
- /*
- * Print connect time and statistics.
- */
- if (link_stats_valid) {
- int t = (link_connect_time + 5) / 6; /* 1/10ths of minutes */
- info("Connect time %d.%d minutes.", t/10, t%10);
- info("Sent %u bytes, received %u bytes.",
- link_stats.bytes_out, link_stats.bytes_in);
- }
-
- /*
- * Delete pid file before disestablishing ppp. Otherwise it
- * can happen that another pppd gets the same unit and then
- * we delete its pid file.
- */
- if (!demand) {
- if (pidfilename[0] != 0
- && unlink(pidfilename) < 0 && errno != ENOENT)
- warn("unable to delete pid file %s: %m", pidfilename);
- pidfilename[0] = 0;
- }
-
- /*
- * If we may want to bring the link up again, transfer
- * the ppp unit back to the loopback. Set the
- * real serial device back to its normal mode of operation.
- */
- remove_fd(fd_ppp);
- clean_check();
- the_channel->disestablish_ppp(devfd);
- fd_ppp = -1;
- if (!hungup)
- lcp_lowerdown(0);
- if (!demand)
- script_unsetenv("IFNAME");
-
- /*
- * Run disconnector script, if requested.
- * XXX we may not be able to do this if the line has hung up!
- */
- disconnect:
- new_phase(PHASE_DISCONNECT);
- the_channel->disconnect();
-
- fail:
- if (the_channel->cleanup)
- (*the_channel->cleanup)();
-
- if (!demand) {
- if (pidfilename[0] != 0
- && unlink(pidfilename) < 0 && errno != ENOENT)
- warn("unable to delete pid file %s: %m", pidfilename);
- pidfilename[0] = 0;
- }
-
- if (!persist || (maxfail > 0 && unsuccess >= maxfail))
- break;
-
- if (demand)
- demand_discard();
- t = need_holdoff? holdoff: 0;
- if (holdoff_hook)
- t = (*holdoff_hook)();
- if (t > 0) {
- new_phase(PHASE_HOLDOFF);
- TIMEOUT(holdoff_end, NULL, t);
- do {
- handle_events();
- if (kill_link)
- new_phase(PHASE_DORMANT); /* allow signal to end holdoff */
- } while (phase == PHASE_HOLDOFF);
- if (!persist)
- break;
- }
- }
-
- /* Wait for scripts to finish */
- /* XXX should have a timeout here */
- while (n_children > 0) {
- if (debug) {
- struct subprocess *chp;
- dbglog("Waiting for %d child processes...", n_children);
- for (chp = children; chp != NULL; chp = chp->next)
- dbglog(" script %s, pid %d", chp->prog, chp->pid);
- }
- if (reap_kids(1) < 0)
- break;
- }
-
- die(status);
- return 0;
-}
-
-/*
- * handle_events - wait for something to happen and respond to it.
- */
-static void
-handle_events()
-{
- struct timeval timo;
- sigset_t mask;
-
- kill_link = open_ccp_flag = 0;
- if (sigsetjmp(sigjmp, 1) == 0) {
- sigprocmask(SIG_BLOCK, &mask, NULL);
- if (got_sighup || got_sigterm || got_sigusr2 || got_sigchld) {
- sigprocmask(SIG_UNBLOCK, &mask, NULL);
- } else {
- waiting = 1;
- sigprocmask(SIG_UNBLOCK, &mask, NULL);
- wait_input(timeleft(&timo));
- }
- }
- waiting = 0;
- calltimeout();
- if (got_sighup) {
- kill_link = 1;
- got_sighup = 0;
- if (status != EXIT_HANGUP)
- status = EXIT_USER_REQUEST;
- }
- if (got_sigterm) {
- kill_link = 1;
- persist = 0;
- status = EXIT_USER_REQUEST;
- got_sigterm = 0;
- }
- if (got_sigchld) {
- reap_kids(0); /* Don't leave dead kids lying around */
- got_sigchld = 0;
- }
- if (got_sigusr2) {
- open_ccp_flag = 1;
- got_sigusr2 = 0;
- }
-}
-
-/*
- * setup_signals - initialize signal handling.
- */
-static void
-setup_signals()
-{
- struct sigaction sa;
- sigset_t mask;
-
- /*
- * Compute mask of all interesting signals and install signal handlers
- * for each. Only one signal handler may be active at a time. Therefore,
- * all other signals should be masked when any handler is executing.
- */
- sigemptyset(&mask);
- sigaddset(&mask, SIGHUP);
- sigaddset(&mask, SIGINT);
- sigaddset(&mask, SIGTERM);
- sigaddset(&mask, SIGCHLD);
- sigaddset(&mask, SIGUSR2);
-
-#define SIGNAL(s, handler) do { \
- sa.sa_handler = handler; \
- if (sigaction(s, &sa, NULL) < 0) \
- fatal("Couldn't establish signal handler (%d): %m", s); \
- } while (0)
-
- sa.sa_mask = mask;
- sa.sa_flags = 0;
- SIGNAL(SIGHUP, hup); /* Hangup */
- SIGNAL(SIGINT, term); /* Interrupt */
- SIGNAL(SIGTERM, term); /* Terminate */
- SIGNAL(SIGCHLD, chld);
-
- SIGNAL(SIGUSR1, toggle_debug); /* Toggle debug flag */
- SIGNAL(SIGUSR2, open_ccp); /* Reopen CCP */
-
- /*
- * Install a handler for other signals which would otherwise
- * cause pppd to exit without cleaning up.
- */
- SIGNAL(SIGABRT, bad_signal);
- SIGNAL(SIGALRM, bad_signal);
- SIGNAL(SIGFPE, bad_signal);
- SIGNAL(SIGILL, bad_signal);
- SIGNAL(SIGPIPE, bad_signal);
- SIGNAL(SIGQUIT, bad_signal);
- SIGNAL(SIGSEGV, bad_signal);
-#ifdef SIGBUS
- SIGNAL(SIGBUS, bad_signal);
-#endif
-#ifdef SIGEMT
- SIGNAL(SIGEMT, bad_signal);
-#endif
-#ifdef SIGPOLL
- SIGNAL(SIGPOLL, bad_signal);
-#endif
-#ifdef SIGPROF
- SIGNAL(SIGPROF, bad_signal);
-#endif
-#ifdef SIGSYS
- SIGNAL(SIGSYS, bad_signal);
-#endif
-#ifdef SIGTRAP
- SIGNAL(SIGTRAP, bad_signal);
-#endif
-#ifdef SIGVTALRM
- SIGNAL(SIGVTALRM, bad_signal);
-#endif
-#ifdef SIGXCPU
- SIGNAL(SIGXCPU, bad_signal);
-#endif
-#ifdef SIGXFSZ
- SIGNAL(SIGXFSZ, bad_signal);
-#endif
-
- /*
- * Apparently we can get a SIGPIPE when we call syslog, if
- * syslogd has died and been restarted. Ignoring it seems
- * be sufficient.
- */
- signal(SIGPIPE, SIG_IGN);
-}
-
-/*
- * set_ifunit - do things we need to do once we know which ppp
- * unit we are using.
- */
-void
-set_ifunit(iskey)
- int iskey;
-{
- info("Using interface %s%d", PPP_DRV_NAME, ifunit);
- slprintf(ifname, sizeof(ifname), "%s%d", PPP_DRV_NAME, ifunit);
- script_setenv("IFNAME", ifname, iskey);
- if (iskey) {
- create_pidfile(); /* write pid to file */
- create_linkpidfile();
- }
-}
-
-/*
- * detach - detach us from the controlling terminal.
- */
-void
-detach()
-{
- int pid;
- char numbuf[16];
-
- if (detached)
- return;
- if ((pid = fork()) < 0) {
- error("Couldn't detach (fork failed: %m)");
- die(1); /* or just return? */
- }
- if (pid != 0) {
- /* parent */
- notify(pidchange, pid);
- exit(0); /* parent dies */
- }
- setsid();
- chdir("/");
- close(0);
- close(1);
- close(2);
- detached = 1;
- if (log_default)
- log_to_fd = -1;
- /* update pid files if they have been written already */
- if (pidfilename[0])
- create_pidfile();
- if (linkpidfile[0])
- create_linkpidfile();
- slprintf(numbuf, sizeof(numbuf), "%d", getpid());
- script_setenv("PPPD_PID", numbuf, 1);
-}
-
-/*
- * reopen_log - (re)open our connection to syslog.
- */
-void
-reopen_log()
-{
-#ifdef ULTRIX
- openlog("pppd", LOG_PID);
-#else
- openlog("pppd", LOG_PID | LOG_NDELAY, LOG_PPP);
- setlogmask(LOG_UPTO(LOG_INFO));
-#endif
-}
-
-/*
- * Create a file containing our process ID.
- */
-static void
-create_pidfile()
-{
- FILE *pidfile;
-
- slprintf(pidfilename, sizeof(pidfilename), "%s%s.pid",
- _PATH_VARRUN, ifname);
- if ((pidfile = fopen(pidfilename, "w")) != NULL) {
- fprintf(pidfile, "%d\n", getpid());
- (void) fclose(pidfile);
- } else {
- error("Failed to create pid file %s: %m", pidfilename);
- pidfilename[0] = 0;
- }
-}
-
-static void
-create_linkpidfile()
-{
- FILE *pidfile;
-
- if (linkname[0] == 0)
- return;
- script_setenv("LINKNAME", linkname, 1);
- slprintf(linkpidfile, sizeof(linkpidfile), "%sppp-%s.pid",
- _PATH_VARRUN, linkname);
- if ((pidfile = fopen(linkpidfile, "w")) != NULL) {
- fprintf(pidfile, "%d\n", getpid());
- if (ifname[0])
- fprintf(pidfile, "%s\n", ifname);
- (void) fclose(pidfile);
- } else {
- error("Failed to create pid file %s: %m", linkpidfile);
- linkpidfile[0] = 0;
- }
-}
-
-/*
- * holdoff_end - called via a timeout when the holdoff period ends.
- */
-static void
-holdoff_end(arg)
- void *arg;
-{
- new_phase(PHASE_DORMANT);
-}
-
-/* List of protocol names, to make our messages a little more informative. */
-struct protocol_list {
- u_short proto;
- const char *name;
-} protocol_list[] = {
- { 0x21, "IP" },
- { 0x23, "OSI Network Layer" },
- { 0x25, "Xerox NS IDP" },
- { 0x27, "DECnet Phase IV" },
- { 0x29, "Appletalk" },
- { 0x2b, "Novell IPX" },
- { 0x2d, "VJ compressed TCP/IP" },
- { 0x2f, "VJ uncompressed TCP/IP" },
- { 0x31, "Bridging PDU" },
- { 0x33, "Stream Protocol ST-II" },
- { 0x35, "Banyan Vines" },
- { 0x39, "AppleTalk EDDP" },
- { 0x3b, "AppleTalk SmartBuffered" },
- { 0x3d, "Multi-Link" },
- { 0x3f, "NETBIOS Framing" },
- { 0x41, "Cisco Systems" },
- { 0x43, "Ascom Timeplex" },
- { 0x45, "Fujitsu Link Backup and Load Balancing (LBLB)" },
- { 0x47, "DCA Remote Lan" },
- { 0x49, "Serial Data Transport Protocol (PPP-SDTP)" },
- { 0x4b, "SNA over 802.2" },
- { 0x4d, "SNA" },
- { 0x4f, "IP6 Header Compression" },
- { 0x6f, "Stampede Bridging" },
- { 0xfb, "single-link compression" },
- { 0xfd, "1st choice compression" },
- { 0x0201, "802.1d Hello Packets" },
- { 0x0203, "IBM Source Routing BPDU" },
- { 0x0205, "DEC LANBridge100 Spanning Tree" },
- { 0x0231, "Luxcom" },
- { 0x0233, "Sigma Network Systems" },
- { 0x8021, "Internet Protocol Control Protocol" },
- { 0x8023, "OSI Network Layer Control Protocol" },
- { 0x8025, "Xerox NS IDP Control Protocol" },
- { 0x8027, "DECnet Phase IV Control Protocol" },
- { 0x8029, "Appletalk Control Protocol" },
- { 0x802b, "Novell IPX Control Protocol" },
- { 0x8031, "Bridging NCP" },
- { 0x8033, "Stream Protocol Control Protocol" },
- { 0x8035, "Banyan Vines Control Protocol" },
- { 0x803d, "Multi-Link Control Protocol" },
- { 0x803f, "NETBIOS Framing Control Protocol" },
- { 0x8041, "Cisco Systems Control Protocol" },
- { 0x8043, "Ascom Timeplex" },
- { 0x8045, "Fujitsu LBLB Control Protocol" },
- { 0x8047, "DCA Remote Lan Network Control Protocol (RLNCP)" },
- { 0x8049, "Serial Data Control Protocol (PPP-SDCP)" },
- { 0x804b, "SNA over 802.2 Control Protocol" },
- { 0x804d, "SNA Control Protocol" },
- { 0x804f, "IP6 Header Compression Control Protocol" },
- { 0x006f, "Stampede Bridging Control Protocol" },
- { 0x80fb, "Single Link Compression Control Protocol" },
- { 0x80fd, "Compression Control Protocol" },
- { 0xc021, "Link Control Protocol" },
- { 0xc023, "Password Authentication Protocol" },
- { 0xc025, "Link Quality Report" },
- { 0xc027, "Shiva Password Authentication Protocol" },
- { 0xc029, "CallBack Control Protocol (CBCP)" },
- { 0xc081, "Container Control Protocol" },
- { 0xc223, "Challenge Handshake Authentication Protocol" },
- { 0xc281, "Proprietary Authentication Protocol" },
- { 0, NULL },
-};
-
-/*
- * protocol_name - find a name for a PPP protocol.
- */
-const char *
-protocol_name(proto)
- int proto;
-{
- struct protocol_list *lp;
-
- for (lp = protocol_list; lp->proto != 0; ++lp)
- if (proto == lp->proto)
- return lp->name;
- return NULL;
-}
-
-/*
- * get_input - called when incoming data is available.
- */
-static void
-get_input()
-{
- int len, i;
- u_char *p;
- u_short protocol;
- struct protent *protp;
-
- p = inpacket_buf; /* point to beginning of packet buffer */
-
- len = read_packet(inpacket_buf);
- if (len < 0)
- return;
-
- if (len == 0) {
- notice("Modem hangup");
- hungup = 1;
- status = EXIT_HANGUP;
- lcp_lowerdown(0); /* serial link is no longer available */
- link_terminated(0);
- return;
- }
-
- if (debug /*&& (debugflags & DBG_INPACKET)*/)
- dbglog("rcvd %P", p, len);
-
- if (len < PPP_HDRLEN) {
- MAINDEBUG(("io(): Received short packet."));
- return;
- }
-
- p += 2; /* Skip address and control */
- GETSHORT(protocol, p);
- len -= PPP_HDRLEN;
-
- /*
- * Toss all non-LCP packets unless LCP is OPEN.
- */
- if (protocol != PPP_LCP && lcp_fsm[0].state != OPENED) {
- MAINDEBUG(("get_input: Received non-LCP packet when LCP not open."));
- return;
- }
-
- /*
- * Until we get past the authentication phase, toss all packets
- * except LCP, LQR and authentication packets.
- */
- if (phase <= PHASE_AUTHENTICATE
- && !(protocol == PPP_LCP || protocol == PPP_LQR
- || protocol == PPP_PAP || protocol == PPP_CHAP)) {
- MAINDEBUG(("get_input: discarding proto 0x%x in phase %d",
- protocol, phase));
- return;
- }
-
- /*
- * Upcall the proper protocol input routine.
- */
- for (i = 0; (protp = protocols[i]) != NULL; ++i) {
- if (protp->protocol == protocol && protp->enabled_flag) {
- (*protp->input)(0, p, len);
- return;
- }
- if (protocol == (protp->protocol & ~0x8000) && protp->enabled_flag
- && protp->datainput != NULL) {
- (*protp->datainput)(0, p, len);
- return;
- }
- }
-
- if (debug) {
- const char *pname = protocol_name(protocol);
- if (pname != NULL)
- warn("Unsupported protocol '%s' (0x%x) received", pname, protocol);
- else
- warn("Unsupported protocol 0x%x received", protocol);
- }
- lcp_sprotrej(0, p - PPP_HDRLEN, len + PPP_HDRLEN);
-}
-
-/*
- * new_phase - signal the start of a new phase of pppd's operation.
- */
-void
-new_phase(p)
- int p;
-{
- phase = p;
- if (new_phase_hook)
- (*new_phase_hook)(p);
- notify(phasechange, p);
-}
-
-/*
- * die - clean up state and exit with the specified status.
- */
-void
-die(status)
- int status;
-{
- cleanup();
- notify(exitnotify, status);
- syslog(LOG_INFO, "Exit.");
- exit(status);
-}
-
-/*
- * cleanup - restore anything which needs to be restored before we exit
- */
-/* ARGSUSED */
-static void
-cleanup()
-{
- sys_cleanup();
-
- if (fd_ppp >= 0)
- the_channel->disestablish_ppp(devfd);
- if (the_channel->cleanup)
- (*the_channel->cleanup)();
-
- if (pidfilename[0] != 0 && unlink(pidfilename) < 0 && errno != ENOENT)
- warn("unable to delete pid file %s: %m", pidfilename);
- pidfilename[0] = 0;
- if (linkpidfile[0] != 0 && unlink(linkpidfile) < 0 && errno != ENOENT)
- warn("unable to delete pid file %s: %m", linkpidfile);
- linkpidfile[0] = 0;
-
- if (pppdb != NULL)
- cleanup_db();
-}
-
-/*
- * update_link_stats - get stats at link termination.
- */
-void
-update_link_stats(u)
- int u;
-{
- struct timeval now;
- char numbuf[32];
-
- if (!get_ppp_stats(u, &link_stats)
- || gettimeofday(&now, NULL) < 0)
- return;
- link_connect_time = now.tv_sec - start_time.tv_sec;
- link_stats_valid = 1;
-
- slprintf(numbuf, sizeof(numbuf), "%d", link_connect_time);
- script_setenv("CONNECT_TIME", numbuf, 0);
- slprintf(numbuf, sizeof(numbuf), "%d", link_stats.bytes_out);
- script_setenv("BYTES_SENT", numbuf, 0);
- slprintf(numbuf, sizeof(numbuf), "%d", link_stats.bytes_in);
- script_setenv("BYTES_RCVD", numbuf, 0);
-}
-
-
-struct callout {
- struct timeval c_time; /* time at which to call routine */
- void *c_arg; /* argument to routine */
- void (*c_func) __P((void *)); /* routine */
- struct callout *c_next;
-};
-
-static struct callout *callout = NULL; /* Callout list */
-static struct timeval timenow; /* Current time */
-
-/*
- * timeout - Schedule a timeout.
- *
- * Note that this timeout takes the number of milliseconds, NOT hz (as in
- * the kernel).
- */
-void
-timeout(func, arg, secs, usecs)
- void (*func) __P((void *));
- void *arg;
- int secs, usecs;
-{
- struct callout *newp, *p, **pp;
-
- MAINDEBUG(("Timeout %p:%p in %d.%03d seconds.", func, arg,
- time / 1000, time % 1000));
-
- /*
- * Allocate timeout.
- */
- if ((newp = (struct callout *) malloc(sizeof(struct callout))) == NULL)
- fatal("Out of memory in timeout()!");
- newp->c_arg = arg;
- newp->c_func = func;
- gettimeofday(&timenow, NULL);
- newp->c_time.tv_sec = timenow.tv_sec + secs;
- newp->c_time.tv_usec = timenow.tv_usec + usecs;
- if (newp->c_time.tv_usec >= 1000000) {
- newp->c_time.tv_sec += newp->c_time.tv_usec / 1000000;
- newp->c_time.tv_usec %= 1000000;
- }
-
- /*
- * Find correct place and link it in.
- */
- for (pp = &callout; (p = *pp); pp = &p->c_next)
- if (newp->c_time.tv_sec < p->c_time.tv_sec
- || (newp->c_time.tv_sec == p->c_time.tv_sec
- && newp->c_time.tv_usec < p->c_time.tv_usec))
- break;
- newp->c_next = p;
- *pp = newp;
-}
-
-
-/*
- * untimeout - Unschedule a timeout.
- */
-void
-untimeout(func, arg)
- void (*func) __P((void *));
- void *arg;
-{
- struct callout **copp, *freep;
-
- MAINDEBUG(("Untimeout %p:%p.", func, arg));
-
- /*
- * Find first matching timeout and remove it from the list.
- */
- for (copp = &callout; (freep = *copp); copp = &freep->c_next)
- if (freep->c_func == func && freep->c_arg == arg) {
- *copp = freep->c_next;
- free((char *) freep);
- break;
- }
-}
-
-
-/*
- * calltimeout - Call any timeout routines which are now due.
- */
-static void
-calltimeout()
-{
- struct callout *p;
-
- while (callout != NULL) {
- p = callout;
-
- if (gettimeofday(&timenow, NULL) < 0)
- fatal("Failed to get time of day: %m");
- if (!(p->c_time.tv_sec < timenow.tv_sec
- || (p->c_time.tv_sec == timenow.tv_sec
- && p->c_time.tv_usec <= timenow.tv_usec)))
- break; /* no, it's not time yet */
-
- callout = p->c_next;
- (*p->c_func)(p->c_arg);
-
- free((char *) p);
- }
-}
-
-
-/*
- * timeleft - return the length of time until the next timeout is due.
- */
-static struct timeval *
-timeleft(tvp)
- struct timeval *tvp;
-{
- if (callout == NULL)
- return NULL;
-
- gettimeofday(&timenow, NULL);
- tvp->tv_sec = callout->c_time.tv_sec - timenow.tv_sec;
- tvp->tv_usec = callout->c_time.tv_usec - timenow.tv_usec;
- if (tvp->tv_usec < 0) {
- tvp->tv_usec += 1000000;
- tvp->tv_sec -= 1;
- }
- if (tvp->tv_sec < 0)
- tvp->tv_sec = tvp->tv_usec = 0;
-
- return tvp;
-}
-
-
-/*
- * kill_my_pg - send a signal to our process group, and ignore it ourselves.
- */
-static void
-kill_my_pg(sig)
- int sig;
-{
- struct sigaction act, oldact;
-
- act.sa_handler = SIG_IGN;
- act.sa_flags = 0;
- kill(0, sig);
- sigaction(sig, &act, &oldact);
- sigaction(sig, &oldact, NULL);
-}
-
-
-/*
- * hup - Catch SIGHUP signal.
- *
- * Indicates that the physical layer has been disconnected.
- * We don't rely on this indication; if the user has sent this
- * signal, we just take the link down.
- */
-static void
-hup(sig)
- int sig;
-{
- info("Hangup (SIGHUP)");
- got_sighup = 1;
- if (conn_running)
- /* Send the signal to the [dis]connector process(es) also */
- kill_my_pg(sig);
- notify(sigreceived, sig);
- if (waiting)
- siglongjmp(sigjmp, 1);
-}
-
-
-/*
- * term - Catch SIGTERM signal and SIGINT signal (^C/del).
- *
- * Indicates that we should initiate a graceful disconnect and exit.
- */
-/*ARGSUSED*/
-static void
-term(sig)
- int sig;
-{
- info("Terminating on signal %d.", sig);
- got_sigterm = 1;
- if (conn_running)
- /* Send the signal to the [dis]connector process(es) also */
- kill_my_pg(sig);
- notify(sigreceived, sig);
- if (waiting)
- siglongjmp(sigjmp, 1);
-}
-
-
-/*
- * chld - Catch SIGCHLD signal.
- * Sets a flag so we will call reap_kids in the mainline.
- */
-static void
-chld(sig)
- int sig;
-{
- got_sigchld = 1;
- if (waiting)
- siglongjmp(sigjmp, 1);
-}
-
-
-/*
- * toggle_debug - Catch SIGUSR1 signal.
- *
- * Toggle debug flag.
- */
-/*ARGSUSED*/
-static void
-toggle_debug(sig)
- int sig;
-{
- debug = !debug;
- if (debug) {
- setlogmask(LOG_UPTO(LOG_DEBUG));
- } else {
- setlogmask(LOG_UPTO(LOG_WARNING));
- }
-}
-
-
-/*
- * open_ccp - Catch SIGUSR2 signal.
- *
- * Try to (re)negotiate compression.
- */
-/*ARGSUSED*/
-static void
-open_ccp(sig)
- int sig;
-{
- got_sigusr2 = 1;
- if (waiting)
- siglongjmp(sigjmp, 1);
-}
-
-
-/*
- * bad_signal - We've caught a fatal signal. Clean up state and exit.
- */
-static void
-bad_signal(sig)
- int sig;
-{
- static int crashed = 0;
-
- if (crashed)
- _exit(127);
- crashed = 1;
- error("Fatal signal %d", sig);
- if (conn_running)
- kill_my_pg(SIGTERM);
- notify(sigreceived, sig);
- die(127);
-}
-
-
-/*
- * device_script - run a program to talk to the specified fds
- * (e.g. to run the connector or disconnector script).
- * stderr gets connected to the log fd or to the _PATH_CONNERRS file.
- */
-int
-device_script(program, in, out, dont_wait)
- char *program;
- int in, out;
- int dont_wait;
-{
- int pid, fd;
- int status = -1;
- int errfd;
-
- ++conn_running;
- pid = fork();
-
- if (pid < 0) {
- --conn_running;
- error("Failed to create child process: %m");
- return -1;
- }
-
- if (pid != 0) {
- if (dont_wait) {
- record_child(pid, program, NULL, NULL);
- status = 0;
- } else {
- while (waitpid(pid, &status, 0) < 0) {
- if (errno == EINTR)
- continue;
- fatal("error waiting for (dis)connection process: %m");
- }
- --conn_running;
- }
- return (status == 0 ? 0 : -1);
- }
-
- /* here we are executing in the child */
- /* make sure fds 0, 1, 2 are occupied */
- while ((fd = dup(in)) >= 0) {
- if (fd > 2) {
- close(fd);
- break;
- }
- }
-
- /* dup in and out to fds > 2 */
- in = dup(in);
- out = dup(out);
- if (log_to_fd >= 0) {
- errfd = dup(log_to_fd);
- } else {
- errfd = open(_PATH_CONNERRS, O_WRONLY | O_APPEND | O_CREAT, 0600);
- }
-
- /* close fds 0 - 2 and any others we can think of */
- close(0);
- close(1);
- close(2);
- sys_close();
- if (the_channel->close)
- (*the_channel->close)();
- closelog();
-
- /* dup the in, out, err fds to 0, 1, 2 */
- dup2(in, 0);
- close(in);
- dup2(out, 1);
- close(out);
- if (errfd >= 0) {
- dup2(errfd, 2);
- close(errfd);
- }
-
- setuid(uid);
- if (getuid() != uid) {
- error("setuid failed");
- exit(1);
- }
- setgid(getgid());
- {
- int argc = 0;
- char * argv[500];
- char * ptr = program;
- while (ptr != NULL) {
- argv[argc] = ptr;
- argc++;
- ptr = strchr(ptr, ' ');
- if (ptr) {
- ptr[0] = '\0';
- ptr++;
- }
- }
- argv[argc] = NULL;
- execv(argv[0], argv);
- error("could not exec %s: %m", program);
- exit(99);
- }
- /* NOTREACHED */
-}
-
-
-/*
- * run-program - execute a program with given arguments,
- * but don't wait for it.
- * If the program can't be executed, logs an error unless
- * must_exist is 0 and the program file doesn't exist.
- * Returns -1 if it couldn't fork, 0 if the file doesn't exist
- * or isn't an executable plain file, or the process ID of the child.
- * If done != NULL, (*done)(arg) will be called later (within
- * reap_kids) iff the return value is > 0.
- */
-pid_t
-run_program(prog, args, must_exist, done, arg)
- char *prog;
- char **args;
- int must_exist;
- void (*done) __P((void *));
- void *arg;
-{
- int pid;
- struct stat sbuf;
-
- /*
- * First check if the file exists and is executable.
- * We don't use access() because that would use the
- * real user-id, which might not be root, and the script
- * might be accessible only to root.
- */
- errno = EINVAL;
- if (stat(prog, &sbuf) < 0 || !S_ISREG(sbuf.st_mode)
- || (sbuf.st_mode & (S_IXUSR|S_IXGRP|S_IXOTH)) == 0) {
- if (must_exist || errno != ENOENT)
- warn("Can't execute %s: %m", prog);
- return 0;
- }
-
- pid = fork();
- if (pid == -1) {
- error("Failed to create child process for %s: %m", prog);
- return -1;
- }
- if (pid == 0) {
- int new_fd;
-
- /* Leave the current location */
- (void) setsid(); /* No controlling tty. */
- (void) umask (S_IRWXG|S_IRWXO);
- (void) chdir ("/"); /* no current directory. */
- setuid(0); /* set real UID = root */
- setgid(getegid());
-
- /* Ensure that nothing of our device environment is inherited. */
- sys_close();
- closelog();
- close (0);
- close (1);
- close (2);
- if (the_channel->close)
- (*the_channel->close)();
-
- /* Don't pass handles to the PPP device, even by accident. */
- new_fd = open (_PATH_DEVNULL, O_RDWR);
- if (new_fd >= 0) {
- if (new_fd != 0) {
- dup2 (new_fd, 0); /* stdin <- /dev/null */
- close (new_fd);
- }
- dup2 (0, 1); /* stdout -> /dev/null */
- dup2 (0, 2); /* stderr -> /dev/null */
- }
-
-#ifdef BSD
- /* Force the priority back to zero if pppd is running higher. */
- if (setpriority (PRIO_PROCESS, 0, 0) < 0)
- warn("can't reset priority to 0: %m");
-#endif
-
- /* SysV recommends a second fork at this point. */
-
- /* run the program */
- execve(prog, args, script_env);
- if (must_exist || errno != ENOENT) {
- /* have to reopen the log, there's nowhere else
- for the message to go. */
- reopen_log();
- syslog(LOG_ERR, "Can't execute %s: %m", prog);
- closelog();
- }
- _exit(-1);
- }
-
- if (debug)
- dbglog("Script %s started (pid %d)", prog, pid);
- record_child(pid, prog, done, arg);
-
- return pid;
-}
-
-
-/*
- * record_child - add a child process to the list for reap_kids
- * to use.
- */
-void
-record_child(pid, prog, done, arg)
- int pid;
- char *prog;
- void (*done) __P((void *));
- void *arg;
-{
- struct subprocess *chp;
-
- ++n_children;
-
- chp = (struct subprocess *) malloc(sizeof(struct subprocess));
- if (chp == NULL) {
- warn("losing track of %s process", prog);
- } else {
- chp->pid = pid;
- chp->prog = prog;
- chp->done = done;
- chp->arg = arg;
- chp->next = children;
- children = chp;
- }
-}
-
-
-/*
- * reap_kids - get status from any dead child processes,
- * and log a message for abnormal terminations.
- */
-static int
-reap_kids(waitfor)
- int waitfor;
-{
- int pid, status;
- struct subprocess *chp, **prevp;
-
- if (n_children == 0)
- return 0;
- while ((pid = waitpid(-1, &status, (waitfor? 0: WNOHANG))) != -1
- && pid != 0) {
- for (prevp = &children; (chp = *prevp) != NULL; prevp = &chp->next) {
- if (chp->pid == pid) {
- --n_children;
- *prevp = chp->next;
- break;
- }
- }
- if (WIFSIGNALED(status)) {
- warn("Child process %s (pid %d) terminated with signal %d",
- (chp? chp->prog: "??"), pid, WTERMSIG(status));
- } else if (debug)
- dbglog("Script %s finished (pid %d), status = 0x%x",
- (chp? chp->prog: "??"), pid, status);
- if (chp && chp->done)
- (*chp->done)(chp->arg);
- if (chp)
- free(chp);
- }
- if (pid == -1) {
- if (errno == ECHILD)
- return -1;
- if (errno != EINTR)
- error("Error waiting for child process: %m");
- }
- return 0;
-}
-
-/*
- * add_notifier - add a new function to be called when something happens.
- */
-void
-add_notifier(notif, func, arg)
- struct notifier **notif;
- notify_func func;
- void *arg;
-{
- struct notifier *np;
-
- np = malloc(sizeof(struct notifier));
- if (np == 0)
- novm("notifier struct");
- np->next = *notif;
- np->func = func;
- np->arg = arg;
- *notif = np;
-}
-
-/*
- * remove_notifier - remove a function from the list of things to
- * be called when something happens.
- */
-void
-remove_notifier(notif, func, arg)
- struct notifier **notif;
- notify_func func;
- void *arg;
-{
- struct notifier *np;
-
- for (; (np = *notif) != 0; notif = &np->next) {
- if (np->func == func && np->arg == arg) {
- *notif = np->next;
- free(np);
- break;
- }
- }
-}
-
-/*
- * notify - call a set of functions registered with add_notify.
- */
-void
-notify(notif, val)
- struct notifier *notif;
- int val;
-{
- struct notifier *np;
-
- while ((np = notif) != 0) {
- notif = np->next;
- (*np->func)(np->arg, val);
- }
-}
-
-/*
- * novm - log an error message saying we ran out of memory, and die.
- */
-void
-novm(msg)
- char *msg;
-{
- fatal("Virtual memory exhausted allocating %s\n", msg);
-}
-
-/*
- * script_setenv - set an environment variable value to be used
- * for scripts that we run (e.g. ip-up, auth-up, etc.)
- */
-void
-script_setenv(var, value, iskey)
- char *var, *value;
- int iskey;
-{
- size_t varl = strlen(var);
- size_t vl = varl + strlen(value) + 2;
- int i;
- char *p, *newstring;
-
- newstring = (char *) malloc(vl+1);
- if (newstring == 0)
- return;
- *newstring++ = iskey;
- slprintf(newstring, vl, "%s=%s", var, value);
-
- /* check if this variable is already set */
- if (script_env != 0) {
- for (i = 0; (p = script_env[i]) != 0; ++i) {
- if (strncmp(p, var, varl) == 0 && p[varl] == '=') {
- if (p[-1] && pppdb != NULL)
- delete_db_key(p);
- free(p-1);
- script_env[i] = newstring;
- if (iskey && pppdb != NULL)
- add_db_key(newstring);
- update_db_entry();
- return;
- }
- }
- } else {
- /* no space allocated for script env. ptrs. yet */
- i = 0;
- script_env = (char **) malloc(16 * sizeof(char *));
- if (script_env == 0)
- return;
- s_env_nalloc = 16;
- }
-
- /* reallocate script_env with more space if needed */
- if (i + 1 >= s_env_nalloc) {
- int new_n = i + 17;
- char **newenv = (char **) realloc((void *)script_env,
- new_n * sizeof(char *));
- if (newenv == 0)
- return;
- script_env = newenv;
- s_env_nalloc = new_n;
- }
-
- script_env[i] = newstring;
- script_env[i+1] = 0;
-
- if (pppdb != NULL) {
- if (iskey)
- add_db_key(newstring);
- update_db_entry();
- }
-}
-
-/*
- * script_unsetenv - remove a variable from the environment
- * for scripts.
- */
-void
-script_unsetenv(var)
- char *var;
-{
- int vl = strlen(var);
- int i;
- char *p;
-
- if (script_env == 0)
- return;
- for (i = 0; (p = script_env[i]) != 0; ++i) {
- if (strncmp(p, var, vl) == 0 && p[vl] == '=') {
- if (p[-1] && pppdb != NULL)
- delete_db_key(p);
- free(p-1);
- while ((script_env[i] = script_env[i+1]) != 0)
- ++i;
- break;
- }
- }
- if (pppdb != NULL)
- update_db_entry();
-}
-
-/*
- * update_db_entry - update our entry in the database.
- */
-static void
-update_db_entry()
-{
- TDB_DATA key, dbuf;
- int vlen, i;
- char *p, *q, *vbuf;
-
- if (script_env == NULL)
- return;
- vlen = 0;
- for (i = 0; (p = script_env[i]) != 0; ++i)
- vlen += strlen(p) + 1;
- vbuf = malloc(vlen);
- if (vbuf == 0)
- novm("database entry");
- q = vbuf;
- for (i = 0; (p = script_env[i]) != 0; ++i)
- q += slprintf(q, vbuf + vlen - q, "%s;", p);
-
- key.dptr = db_key;
- key.dsize = strlen(db_key);
- dbuf.dptr = vbuf;
- dbuf.dsize = vlen;
- if (tdb_store(pppdb, key, dbuf, TDB_REPLACE))
- error("tdb_store failed: %s", tdb_error(pppdb));
-
-}
-
-/*
- * add_db_key - add a key that we can use to look up our database entry.
- */
-static void
-add_db_key(str)
- const char *str;
-{
- TDB_DATA key, dbuf;
-
- key.dptr = (char *) str;
- key.dsize = strlen(str);
- dbuf.dptr = db_key;
- dbuf.dsize = strlen(db_key);
- if (tdb_store(pppdb, key, dbuf, TDB_REPLACE))
- error("tdb_store key failed: %s", tdb_error(pppdb));
-}
-
-/*
- * delete_db_key - delete a key for looking up our database entry.
- */
-static void
-delete_db_key(str)
- const char *str;
-{
- TDB_DATA key;
-
- key.dptr = (char *) str;
- key.dsize = strlen(str);
- tdb_delete(pppdb, key);
-}
-
-/*
- * cleanup_db - delete all the entries we put in the database.
- */
-static void
-cleanup_db()
-{
- TDB_DATA key;
- int i;
- char *p;
-
- key.dptr = db_key;
- key.dsize = strlen(db_key);
- tdb_delete(pppdb, key);
- for (i = 0; (p = script_env[i]) != 0; ++i)
- if (p[-1])
- delete_db_key(p);
-}
diff --git a/mdk-stage1/ppp/pppd/md4.c b/mdk-stage1/ppp/pppd/md4.c
deleted file mode 100644
index cda9f943d..000000000
--- a/mdk-stage1/ppp/pppd/md4.c
+++ /dev/null
@@ -1,298 +0,0 @@
-/*
-** ********************************************************************
-** md4.c -- Implementation of MD4 Message Digest Algorithm **
-** Updated: 2/16/90 by Ronald L. Rivest **
-** (C) 1990 RSA Data Security, Inc. **
-** ********************************************************************
-*/
-
-/*
-** To use MD4:
-** -- Include md4.h in your program
-** -- Declare an MDstruct MD to hold the state of the digest
-** computation.
-** -- Initialize MD using MDbegin(&MD)
-** -- For each full block (64 bytes) X you wish to process, call
-** MD4Update(&MD,X,512)
-** (512 is the number of bits in a full block.)
-** -- For the last block (less than 64 bytes) you wish to process,
-** MD4Update(&MD,X,n)
-** where n is the number of bits in the partial block. A partial
-** block terminates the computation, so every MD computation
-** should terminate by processing a partial block, even if it
-** has n = 0.
-** -- The message digest is available in MD.buffer[0] ...
-** MD.buffer[3]. (Least-significant byte of each word
-** should be output first.)
-** -- You can print out the digest using MDprint(&MD)
-*/
-
-/* Implementation notes:
-** This implementation assumes that ints are 32-bit quantities.
-*/
-
-#define TRUE 1
-#define FALSE 0
-
-/* Compile-time includes
-*/
-#include <stdio.h>
-#include "md4.h"
-#include "pppd.h"
-
-/* Compile-time declarations of MD4 "magic constants".
-*/
-#define I0 0x67452301 /* Initial values for MD buffer */
-#define I1 0xefcdab89
-#define I2 0x98badcfe
-#define I3 0x10325476
-#define C2 013240474631 /* round 2 constant = sqrt(2) in octal */
-#define C3 015666365641 /* round 3 constant = sqrt(3) in octal */
-/* C2 and C3 are from Knuth, The Art of Programming, Volume 2
-** (Seminumerical Algorithms), Second Edition (1981), Addison-Wesley.
-** Table 2, page 660.
-*/
-
-#define fs1 3 /* round 1 shift amounts */
-#define fs2 7
-#define fs3 11
-#define fs4 19
-#define gs1 3 /* round 2 shift amounts */
-#define gs2 5
-#define gs3 9
-#define gs4 13
-#define hs1 3 /* round 3 shift amounts */
-#define hs2 9
-#define hs3 11
-#define hs4 15
-
-/* Compile-time macro declarations for MD4.
-** Note: The "rot" operator uses the variable "tmp".
-** It assumes tmp is declared as unsigned int, so that the >>
-** operator will shift in zeros rather than extending the sign bit.
-*/
-#define f(X,Y,Z) ((X&Y) | ((~X)&Z))
-#define g(X,Y,Z) ((X&Y) | (X&Z) | (Y&Z))
-#define h(X,Y,Z) (X^Y^Z)
-#define rot(X,S) (tmp=X,(tmp<<S) | (tmp>>(32-S)))
-#define ff(A,B,C,D,i,s) A = rot((A + f(B,C,D) + X[i]),s)
-#define gg(A,B,C,D,i,s) A = rot((A + g(B,C,D) + X[i] + C2),s)
-#define hh(A,B,C,D,i,s) A = rot((A + h(B,C,D) + X[i] + C3),s)
-
-/* MD4print(MDp)
-** Print message digest buffer MDp as 32 hexadecimal digits.
-** Order is from low-order byte of buffer[0] to high-order byte of
-** buffer[3].
-** Each byte is printed with high-order hexadecimal digit first.
-** This is a user-callable routine.
-*/
-void
-MD4Print(MDp)
-MD4_CTX *MDp;
-{
- int i,j;
- for (i=0;i<4;i++)
- for (j=0;j<32;j=j+8)
- printf("%02x",(MDp->buffer[i]>>j) & 0xFF);
-}
-
-/* MD4Init(MDp)
-** Initialize message digest buffer MDp.
-** This is a user-callable routine.
-*/
-void
-MD4Init(MDp)
-MD4_CTX *MDp;
-{
- int i;
- MDp->buffer[0] = I0;
- MDp->buffer[1] = I1;
- MDp->buffer[2] = I2;
- MDp->buffer[3] = I3;
- for (i=0;i<8;i++) MDp->count[i] = 0;
- MDp->done = 0;
-}
-
-/* MDblock(MDp,X)
-** Update message digest buffer MDp->buffer using 16-word data block X.
-** Assumes all 16 words of X are full of data.
-** Does not update MDp->count.
-** This routine is not user-callable.
-*/
-static void
-MDblock(MDp,Xb)
-MD4_CTX *MDp;
-unsigned char *Xb;
-{
- register unsigned int tmp, A, B, C, D;
- unsigned int X[16];
- int i;
-
- for (i = 0; i < 16; ++i) {
- X[i] = Xb[0] + (Xb[1] << 8) + (Xb[2] << 16) + (Xb[3] << 24);
- Xb += 4;
- }
-
- A = MDp->buffer[0];
- B = MDp->buffer[1];
- C = MDp->buffer[2];
- D = MDp->buffer[3];
- /* Update the message digest buffer */
- ff(A , B , C , D , 0 , fs1); /* Round 1 */
- ff(D , A , B , C , 1 , fs2);
- ff(C , D , A , B , 2 , fs3);
- ff(B , C , D , A , 3 , fs4);
- ff(A , B , C , D , 4 , fs1);
- ff(D , A , B , C , 5 , fs2);
- ff(C , D , A , B , 6 , fs3);
- ff(B , C , D , A , 7 , fs4);
- ff(A , B , C , D , 8 , fs1);
- ff(D , A , B , C , 9 , fs2);
- ff(C , D , A , B , 10 , fs3);
- ff(B , C , D , A , 11 , fs4);
- ff(A , B , C , D , 12 , fs1);
- ff(D , A , B , C , 13 , fs2);
- ff(C , D , A , B , 14 , fs3);
- ff(B , C , D , A , 15 , fs4);
- gg(A , B , C , D , 0 , gs1); /* Round 2 */
- gg(D , A , B , C , 4 , gs2);
- gg(C , D , A , B , 8 , gs3);
- gg(B , C , D , A , 12 , gs4);
- gg(A , B , C , D , 1 , gs1);
- gg(D , A , B , C , 5 , gs2);
- gg(C , D , A , B , 9 , gs3);
- gg(B , C , D , A , 13 , gs4);
- gg(A , B , C , D , 2 , gs1);
- gg(D , A , B , C , 6 , gs2);
- gg(C , D , A , B , 10 , gs3);
- gg(B , C , D , A , 14 , gs4);
- gg(A , B , C , D , 3 , gs1);
- gg(D , A , B , C , 7 , gs2);
- gg(C , D , A , B , 11 , gs3);
- gg(B , C , D , A , 15 , gs4);
- hh(A , B , C , D , 0 , hs1); /* Round 3 */
- hh(D , A , B , C , 8 , hs2);
- hh(C , D , A , B , 4 , hs3);
- hh(B , C , D , A , 12 , hs4);
- hh(A , B , C , D , 2 , hs1);
- hh(D , A , B , C , 10 , hs2);
- hh(C , D , A , B , 6 , hs3);
- hh(B , C , D , A , 14 , hs4);
- hh(A , B , C , D , 1 , hs1);
- hh(D , A , B , C , 9 , hs2);
- hh(C , D , A , B , 5 , hs3);
- hh(B , C , D , A , 13 , hs4);
- hh(A , B , C , D , 3 , hs1);
- hh(D , A , B , C , 11 , hs2);
- hh(C , D , A , B , 7 , hs3);
- hh(B , C , D , A , 15 , hs4);
- MDp->buffer[0] += A;
- MDp->buffer[1] += B;
- MDp->buffer[2] += C;
- MDp->buffer[3] += D;
-}
-
-/* MD4Update(MDp,X,count)
-** Input: X -- a pointer to an array of unsigned characters.
-** count -- the number of bits of X to use.
-** (if not a multiple of 8, uses high bits of last byte.)
-** Update MDp using the number of bits of X given by count.
-** This is the basic input routine for an MD4 user.
-** The routine completes the MD computation when count < 512, so
-** every MD computation should end with one call to MD4Update with a
-** count less than 512. A call with count 0 will be ignored if the
-** MD has already been terminated (done != 0), so an extra call with
-** count 0 can be given as a "courtesy close" to force termination
-** if desired.
-*/
-void
-MD4Update(MDp,X,count)
-MD4_CTX *MDp;
-unsigned char *X;
-unsigned int count;
-{
- unsigned int i, tmp, bit, byte, mask;
- unsigned char XX[64];
- unsigned char *p;
-
- /* return with no error if this is a courtesy close with count
- ** zero and MDp->done is true.
- */
- if (count == 0 && MDp->done) return;
- /* check to see if MD is already done and report error */
- if (MDp->done)
- { printf("\nError: MD4Update MD already done."); return; }
-
- /* Add count to MDp->count */
- tmp = count;
- p = MDp->count;
- while (tmp)
- { tmp += *p;
- *p++ = tmp;
- tmp = tmp >> 8;
- }
-
- /* Process data */
- if (count == 512)
- { /* Full block of data to handle */
- MDblock(MDp,X);
- }
- else if (count > 512) /* Check for count too large */
- {
- printf("\nError: MD4Update called with illegal count value %d.",
- count);
- return;
- }
- else /* partial block -- must be last block so finish up */
- {
- /* Find out how many bytes and residual bits there are */
- byte = count >> 3;
- bit = count & 7;
- /* Copy X into XX since we need to modify it */
- for (i=0;i<=byte;i++) XX[i] = X[i];
- for (i=byte+1;i<64;i++) XX[i] = 0;
- /* Add padding '1' bit and low-order zeros in last byte */
- mask = 1 << (7 - bit);
- XX[byte] = (XX[byte] | mask) & ~( mask - 1);
- /* If room for bit count, finish up with this block */
- if (byte <= 55)
- {
- for (i=0;i<8;i++) XX[56+i] = MDp->count[i];
- MDblock(MDp,XX);
- }
- else /* need to do two blocks to finish up */
- {
- MDblock(MDp,XX);
- for (i=0;i<56;i++) XX[i] = 0;
- for (i=0;i<8;i++) XX[56+i] = MDp->count[i];
- MDblock(MDp,XX);
- }
- /* Set flag saying we're done with MD computation */
- MDp->done = 1;
- }
-}
-
-/*
-** Finish up MD4 computation and return message digest.
-*/
-void
-MD4Final(buf, MD)
-unsigned char *buf;
-MD4_CTX *MD;
-{
- int i, j;
- unsigned int w;
-
- MD4Update(MD, NULL, 0);
- for (i = 0; i < 4; ++i) {
- w = MD->buffer[i];
- for (j = 0; j < 4; ++j) {
- *buf++ = w;
- w >>= 8;
- }
- }
-}
-
-/*
-** End of md4.c
-****************************(cut)***********************************/
diff --git a/mdk-stage1/ppp/pppd/md4.h b/mdk-stage1/ppp/pppd/md4.h
deleted file mode 100644
index 80e8f9a2a..000000000
--- a/mdk-stage1/ppp/pppd/md4.h
+++ /dev/null
@@ -1,64 +0,0 @@
-
-/*
-** ********************************************************************
-** md4.h -- Header file for implementation of **
-** MD4 Message Digest Algorithm **
-** Updated: 2/13/90 by Ronald L. Rivest **
-** (C) 1990 RSA Data Security, Inc. **
-** ********************************************************************
-*/
-
-#ifndef __P
-# if defined(__STDC__) || defined(__GNUC__)
-# define __P(x) x
-# else
-# define __P(x) ()
-# endif
-#endif
-
-
-/* MDstruct is the data structure for a message digest computation.
-*/
-typedef struct {
- unsigned int buffer[4]; /* Holds 4-word result of MD computation */
- unsigned char count[8]; /* Number of bits processed so far */
- unsigned int done; /* Nonzero means MD computation finished */
-} MD4_CTX;
-
-/* MD4Init(MD4_CTX *)
-** Initialize the MD4_CTX prepatory to doing a message digest
-** computation.
-*/
-extern void MD4Init __P((MD4_CTX *MD));
-
-/* MD4Update(MD,X,count)
-** Input: X -- a pointer to an array of unsigned characters.
-** count -- the number of bits of X to use (an unsigned int).
-** Updates MD using the first "count" bits of X.
-** The array pointed to by X is not modified.
-** If count is not a multiple of 8, MD4Update uses high bits of
-** last byte.
-** This is the basic input routine for a user.
-** The routine terminates the MD computation when count < 512, so
-** every MD computation should end with one call to MD4Update with a
-** count less than 512. Zero is OK for a count.
-*/
-extern void MD4Update __P((MD4_CTX *MD, unsigned char *X, unsigned int count));
-
-/* MD4Print(MD)
-** Prints message digest buffer MD as 32 hexadecimal digits.
-** Order is from low-order byte of buffer[0] to high-order byte
-** of buffer[3].
-** Each byte is printed with high-order hexadecimal digit first.
-*/
-extern void MD4Print __P((MD4_CTX *));
-
-/* MD4Final(buf, MD)
-** Returns message digest from MD and terminates the message
-** digest computation.
-*/
-extern void MD4Final __P((unsigned char *, MD4_CTX *));
-
-/*
-** End of md4.h
-****************************(cut)***********************************/
diff --git a/mdk-stage1/ppp/pppd/md5.c b/mdk-stage1/ppp/pppd/md5.c
deleted file mode 100644
index 0b8de3aae..000000000
--- a/mdk-stage1/ppp/pppd/md5.c
+++ /dev/null
@@ -1,309 +0,0 @@
-
-
-/*
- ***********************************************************************
- ** md5.c -- the source code for MD5 routines **
- ** RSA Data Security, Inc. MD5 Message-Digest Algorithm **
- ** Created: 2/17/90 RLR **
- ** Revised: 1/91 SRD,AJ,BSK,JT Reference C ver., 7/10 constant corr. **
- ***********************************************************************
- */
-
-/*
- ***********************************************************************
- ** Copyright (C) 1990, RSA Data Security, Inc. All rights reserved. **
- ** **
- ** License to copy and use this software is granted provided that **
- ** it is identified as the "RSA Data Security, Inc. MD5 Message- **
- ** Digest Algorithm" in all material mentioning or referencing this **
- ** software or this function. **
- ** **
- ** License is also granted to make and use derivative works **
- ** provided that such works are identified as "derived from the RSA **
- ** Data Security, Inc. MD5 Message-Digest Algorithm" in all **
- ** material mentioning or referencing the derived work. **
- ** **
- ** RSA Data Security, Inc. makes no representations concerning **
- ** either the merchantability of this software or the suitability **
- ** of this software for any particular purpose. It is provided "as **
- ** is" without express or implied warranty of any kind. **
- ** **
- ** These notices must be retained in any copies of any part of this **
- ** documentation and/or software. **
- ***********************************************************************
- */
-
-#include <stdlib.h>
-#include <string.h>
-
-#include "md5.h"
-
-/*
- ***********************************************************************
- ** Message-digest routines: **
- ** To form the message digest for a message M **
- ** (1) Initialize a context buffer mdContext using MD5Init **
- ** (2) Call MD5Update on mdContext and M **
- ** (3) Call MD5Final on mdContext **
- ** The message digest is now in mdContext->digest[0...15] **
- ***********************************************************************
- */
-
-/* forward declaration */
-static void Transform ();
-
-static unsigned char PADDING[64] = {
- 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
-
-/* F, G, H and I are basic MD5 functions */
-#define F(x, y, z) (((x) & (y)) | ((~x) & (z)))
-#define G(x, y, z) (((x) & (z)) | ((y) & (~z)))
-#define H(x, y, z) ((x) ^ (y) ^ (z))
-#define I(x, y, z) ((y) ^ ((x) | (~z)))
-
-/* ROTATE_LEFT rotates x left n bits */
-#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n))))
-
-/* FF, GG, HH, and II transformations for rounds 1, 2, 3, and 4 */
-/* Rotation is separate from addition to prevent recomputation */
-#define FF(a, b, c, d, x, s, ac) \
- {(a) += F ((b), (c), (d)) + (x) + (UINT4)(ac); \
- (a) = ROTATE_LEFT ((a), (s)); \
- (a) += (b); \
- }
-#define GG(a, b, c, d, x, s, ac) \
- {(a) += G ((b), (c), (d)) + (x) + (UINT4)(ac); \
- (a) = ROTATE_LEFT ((a), (s)); \
- (a) += (b); \
- }
-#define HH(a, b, c, d, x, s, ac) \
- {(a) += H ((b), (c), (d)) + (x) + (UINT4)(ac); \
- (a) = ROTATE_LEFT ((a), (s)); \
- (a) += (b); \
- }
-#define II(a, b, c, d, x, s, ac) \
- {(a) += I ((b), (c), (d)) + (x) + (UINT4)(ac); \
- (a) = ROTATE_LEFT ((a), (s)); \
- (a) += (b); \
- }
-
-#ifdef __STDC__
-#define UL(x) x##U
-#else
-#define UL(x) x
-#endif
-
-/* The routine MD5Init initializes the message-digest context
- mdContext. All fields are set to zero.
- */
-void MD5Init (mdContext)
-MD5_CTX *mdContext;
-{
- mdContext->i[0] = mdContext->i[1] = (UINT4)0;
-
- /* Load magic initialization constants.
- */
- mdContext->buf[0] = (UINT4)0x67452301;
- mdContext->buf[1] = (UINT4)0xefcdab89;
- mdContext->buf[2] = (UINT4)0x98badcfe;
- mdContext->buf[3] = (UINT4)0x10325476;
-}
-
-/* The routine MD5Update updates the message-digest context to
- account for the presence of each of the characters inBuf[0..inLen-1]
- in the message whose digest is being computed.
- */
-void MD5Update (mdContext, inBuf, inLen)
-MD5_CTX *mdContext;
-unsigned char *inBuf;
-unsigned int inLen;
-{
- UINT4 in[16];
- int mdi;
- unsigned int i, ii;
-
- /* compute number of bytes mod 64 */
- mdi = (int)((mdContext->i[0] >> 3) & 0x3F);
-
- /* update number of bits */
- if ((mdContext->i[0] + ((UINT4)inLen << 3)) < mdContext->i[0])
- mdContext->i[1]++;
- mdContext->i[0] += ((UINT4)inLen << 3);
- mdContext->i[1] += ((UINT4)inLen >> 29);
-
- while (inLen--) {
- /* add new character to buffer, increment mdi */
- mdContext->in[mdi++] = *inBuf++;
-
- /* transform if necessary */
- if (mdi == 0x40) {
- for (i = 0, ii = 0; i < 16; i++, ii += 4)
- in[i] = (((UINT4)mdContext->in[ii+3]) << 24) |
- (((UINT4)mdContext->in[ii+2]) << 16) |
- (((UINT4)mdContext->in[ii+1]) << 8) |
- ((UINT4)mdContext->in[ii]);
- Transform (mdContext->buf, in);
- mdi = 0;
- }
- }
-}
-
-/* The routine MD5Final terminates the message-digest computation and
- ends with the desired message digest in mdContext->digest[0...15].
- */
-void MD5Final (hash, mdContext)
-unsigned char hash[];
-MD5_CTX *mdContext;
-{
- UINT4 in[16];
- int mdi;
- unsigned int i, ii;
- unsigned int padLen;
-
- /* save number of bits */
- in[14] = mdContext->i[0];
- in[15] = mdContext->i[1];
-
- /* compute number of bytes mod 64 */
- mdi = (int)((mdContext->i[0] >> 3) & 0x3F);
-
- /* pad out to 56 mod 64 */
- padLen = (mdi < 56) ? (56 - mdi) : (120 - mdi);
- MD5Update (mdContext, PADDING, padLen);
-
- /* append length in bits and transform */
- for (i = 0, ii = 0; i < 14; i++, ii += 4)
- in[i] = (((UINT4)mdContext->in[ii+3]) << 24) |
- (((UINT4)mdContext->in[ii+2]) << 16) |
- (((UINT4)mdContext->in[ii+1]) << 8) |
- ((UINT4)mdContext->in[ii]);
- Transform (mdContext->buf, in);
-
- /* store buffer in digest */
- for (i = 0, ii = 0; i < 4; i++, ii += 4) {
- mdContext->digest[ii] = (unsigned char)(mdContext->buf[i] & 0xFF);
- mdContext->digest[ii+1] =
- (unsigned char)((mdContext->buf[i] >> 8) & 0xFF);
- mdContext->digest[ii+2] =
- (unsigned char)((mdContext->buf[i] >> 16) & 0xFF);
- mdContext->digest[ii+3] =
- (unsigned char)((mdContext->buf[i] >> 24) & 0xFF);
- }
- memcpy(hash, mdContext->digest, 16);
-}
-
-/* Basic MD5 step. Transforms buf based on in.
- */
-static void Transform (buf, in)
-UINT4 *buf;
-UINT4 *in;
-{
- UINT4 a = buf[0], b = buf[1], c = buf[2], d = buf[3];
-
- /* Round 1 */
-#define S11 7
-#define S12 12
-#define S13 17
-#define S14 22
- FF ( a, b, c, d, in[ 0], S11, UL(3614090360)); /* 1 */
- FF ( d, a, b, c, in[ 1], S12, UL(3905402710)); /* 2 */
- FF ( c, d, a, b, in[ 2], S13, UL( 606105819)); /* 3 */
- FF ( b, c, d, a, in[ 3], S14, UL(3250441966)); /* 4 */
- FF ( a, b, c, d, in[ 4], S11, UL(4118548399)); /* 5 */
- FF ( d, a, b, c, in[ 5], S12, UL(1200080426)); /* 6 */
- FF ( c, d, a, b, in[ 6], S13, UL(2821735955)); /* 7 */
- FF ( b, c, d, a, in[ 7], S14, UL(4249261313)); /* 8 */
- FF ( a, b, c, d, in[ 8], S11, UL(1770035416)); /* 9 */
- FF ( d, a, b, c, in[ 9], S12, UL(2336552879)); /* 10 */
- FF ( c, d, a, b, in[10], S13, UL(4294925233)); /* 11 */
- FF ( b, c, d, a, in[11], S14, UL(2304563134)); /* 12 */
- FF ( a, b, c, d, in[12], S11, UL(1804603682)); /* 13 */
- FF ( d, a, b, c, in[13], S12, UL(4254626195)); /* 14 */
- FF ( c, d, a, b, in[14], S13, UL(2792965006)); /* 15 */
- FF ( b, c, d, a, in[15], S14, UL(1236535329)); /* 16 */
-
- /* Round 2 */
-#define S21 5
-#define S22 9
-#define S23 14
-#define S24 20
- GG ( a, b, c, d, in[ 1], S21, UL(4129170786)); /* 17 */
- GG ( d, a, b, c, in[ 6], S22, UL(3225465664)); /* 18 */
- GG ( c, d, a, b, in[11], S23, UL( 643717713)); /* 19 */
- GG ( b, c, d, a, in[ 0], S24, UL(3921069994)); /* 20 */
- GG ( a, b, c, d, in[ 5], S21, UL(3593408605)); /* 21 */
- GG ( d, a, b, c, in[10], S22, UL( 38016083)); /* 22 */
- GG ( c, d, a, b, in[15], S23, UL(3634488961)); /* 23 */
- GG ( b, c, d, a, in[ 4], S24, UL(3889429448)); /* 24 */
- GG ( a, b, c, d, in[ 9], S21, UL( 568446438)); /* 25 */
- GG ( d, a, b, c, in[14], S22, UL(3275163606)); /* 26 */
- GG ( c, d, a, b, in[ 3], S23, UL(4107603335)); /* 27 */
- GG ( b, c, d, a, in[ 8], S24, UL(1163531501)); /* 28 */
- GG ( a, b, c, d, in[13], S21, UL(2850285829)); /* 29 */
- GG ( d, a, b, c, in[ 2], S22, UL(4243563512)); /* 30 */
- GG ( c, d, a, b, in[ 7], S23, UL(1735328473)); /* 31 */
- GG ( b, c, d, a, in[12], S24, UL(2368359562)); /* 32 */
-
- /* Round 3 */
-#define S31 4
-#define S32 11
-#define S33 16
-#define S34 23
- HH ( a, b, c, d, in[ 5], S31, UL(4294588738)); /* 33 */
- HH ( d, a, b, c, in[ 8], S32, UL(2272392833)); /* 34 */
- HH ( c, d, a, b, in[11], S33, UL(1839030562)); /* 35 */
- HH ( b, c, d, a, in[14], S34, UL(4259657740)); /* 36 */
- HH ( a, b, c, d, in[ 1], S31, UL(2763975236)); /* 37 */
- HH ( d, a, b, c, in[ 4], S32, UL(1272893353)); /* 38 */
- HH ( c, d, a, b, in[ 7], S33, UL(4139469664)); /* 39 */
- HH ( b, c, d, a, in[10], S34, UL(3200236656)); /* 40 */
- HH ( a, b, c, d, in[13], S31, UL( 681279174)); /* 41 */
- HH ( d, a, b, c, in[ 0], S32, UL(3936430074)); /* 42 */
- HH ( c, d, a, b, in[ 3], S33, UL(3572445317)); /* 43 */
- HH ( b, c, d, a, in[ 6], S34, UL( 76029189)); /* 44 */
- HH ( a, b, c, d, in[ 9], S31, UL(3654602809)); /* 45 */
- HH ( d, a, b, c, in[12], S32, UL(3873151461)); /* 46 */
- HH ( c, d, a, b, in[15], S33, UL( 530742520)); /* 47 */
- HH ( b, c, d, a, in[ 2], S34, UL(3299628645)); /* 48 */
-
- /* Round 4 */
-#define S41 6
-#define S42 10
-#define S43 15
-#define S44 21
- II ( a, b, c, d, in[ 0], S41, UL(4096336452)); /* 49 */
- II ( d, a, b, c, in[ 7], S42, UL(1126891415)); /* 50 */
- II ( c, d, a, b, in[14], S43, UL(2878612391)); /* 51 */
- II ( b, c, d, a, in[ 5], S44, UL(4237533241)); /* 52 */
- II ( a, b, c, d, in[12], S41, UL(1700485571)); /* 53 */
- II ( d, a, b, c, in[ 3], S42, UL(2399980690)); /* 54 */
- II ( c, d, a, b, in[10], S43, UL(4293915773)); /* 55 */
- II ( b, c, d, a, in[ 1], S44, UL(2240044497)); /* 56 */
- II ( a, b, c, d, in[ 8], S41, UL(1873313359)); /* 57 */
- II ( d, a, b, c, in[15], S42, UL(4264355552)); /* 58 */
- II ( c, d, a, b, in[ 6], S43, UL(2734768916)); /* 59 */
- II ( b, c, d, a, in[13], S44, UL(1309151649)); /* 60 */
- II ( a, b, c, d, in[ 4], S41, UL(4149444226)); /* 61 */
- II ( d, a, b, c, in[11], S42, UL(3174756917)); /* 62 */
- II ( c, d, a, b, in[ 2], S43, UL( 718787259)); /* 63 */
- II ( b, c, d, a, in[ 9], S44, UL(3951481745)); /* 64 */
-
- buf[0] += a;
- buf[1] += b;
- buf[2] += c;
- buf[3] += d;
-}
-
-/*
- ***********************************************************************
- ** End of md5.c **
- ******************************** (cut) ********************************
- */
diff --git a/mdk-stage1/ppp/pppd/md5.h b/mdk-stage1/ppp/pppd/md5.h
deleted file mode 100644
index 7492b2228..000000000
--- a/mdk-stage1/ppp/pppd/md5.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- ***********************************************************************
- ** md5.h -- header file for implementation of MD5 **
- ** RSA Data Security, Inc. MD5 Message-Digest Algorithm **
- ** Created: 2/17/90 RLR **
- ** Revised: 12/27/90 SRD,AJ,BSK,JT Reference C version **
- ** Revised (for MD5): RLR 4/27/91 **
- ** -- G modified to have y&~z instead of y&z **
- ** -- FF, GG, HH modified to add in last register done **
- ** -- Access pattern: round 2 works mod 5, round 3 works mod 3 **
- ** -- distinct additive constant for each step **
- ** -- round 4 added, working mod 7 **
- ***********************************************************************
- */
-
-/*
- ***********************************************************************
- ** Copyright (C) 1990, RSA Data Security, Inc. All rights reserved. **
- ** **
- ** License to copy and use this software is granted provided that **
- ** it is identified as the "RSA Data Security, Inc. MD5 Message- **
- ** Digest Algorithm" in all material mentioning or referencing this **
- ** software or this function. **
- ** **
- ** License is also granted to make and use derivative works **
- ** provided that such works are identified as "derived from the RSA **
- ** Data Security, Inc. MD5 Message-Digest Algorithm" in all **
- ** material mentioning or referencing the derived work. **
- ** **
- ** RSA Data Security, Inc. makes no representations concerning **
- ** either the merchantability of this software or the suitability **
- ** of this software for any particular purpose. It is provided "as **
- ** is" without express or implied warranty of any kind. **
- ** **
- ** These notices must be retained in any copies of any part of this **
- ** documentation and/or software. **
- ***********************************************************************
- */
-
-#ifndef __MD5_INCLUDE__
-
-/* typedef a 32-bit type */
-typedef unsigned int UINT4;
-
-/* Data structure for MD5 (Message-Digest) computation */
-typedef struct {
- UINT4 i[2]; /* number of _bits_ handled mod 2^64 */
- UINT4 buf[4]; /* scratch buffer */
- unsigned char in[64]; /* input buffer */
- unsigned char digest[16]; /* actual digest after MD5Final call */
-} MD5_CTX;
-
-void MD5Init ();
-void MD5Update ();
-void MD5Final ();
-
-#define __MD5_INCLUDE__
-#endif /* __MD5_INCLUDE__ */
diff --git a/mdk-stage1/ppp/pppd/multilink.c b/mdk-stage1/ppp/pppd/multilink.c
deleted file mode 100644
index c30b07e0a..000000000
--- a/mdk-stage1/ppp/pppd/multilink.c
+++ /dev/null
@@ -1,397 +0,0 @@
-/*
- * multilink.c - support routines for multilink.
- *
- * Copyright (c) 2000 Paul Mackerras.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms. The name of the author may not be
- * used to endorse or promote products derived from this software
- * without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-#include <stdlib.h>
-#include <unistd.h>
-#include <string.h>
-#include <ctype.h>
-#include <netdb.h>
-#include <errno.h>
-#include <signal.h>
-#include <netinet/in.h>
-
-#include "pppd.h"
-#include "fsm.h"
-#include "lcp.h"
-#include "tdb.h"
-
-bool endpoint_specified; /* user gave explicit endpoint discriminator */
-char *bundle_id; /* identifier for our bundle */
-
-extern TDB_CONTEXT *pppdb;
-extern char db_key[];
-
-static int get_default_epdisc __P((struct epdisc *));
-static int parse_num __P((char *str, const char *key, int *valp));
-static int owns_unit __P((TDB_DATA pid, int unit));
-
-#define set_ip_epdisc(ep, addr) do { \
- ep->length = 4; \
- ep->value[0] = addr >> 24; \
- ep->value[1] = addr >> 16; \
- ep->value[2] = addr >> 8; \
- ep->value[3] = addr; \
-} while (0)
-
-#define LOCAL_IP_ADDR(addr) \
- (((addr) & 0xff000000) == 0x0a000000 /* 10.x.x.x */ \
- || ((addr) & 0xfff00000) == 0xac100000 /* 172.16.x.x */ \
- || ((addr) & 0xffff0000) == 0xc0a80000) /* 192.168.x.x */
-
-#define process_exists(n) (kill((n), 0) == 0 || errno != ESRCH)
-
-void
-mp_check_options()
-{
- lcp_options *wo = &lcp_wantoptions[0];
- lcp_options *ao = &lcp_allowoptions[0];
-
- if (!multilink)
- return;
- /* if we're doing multilink, we have to negotiate MRRU */
- if (!wo->neg_mrru) {
- /* mrru not specified, default to mru */
- wo->mrru = wo->mru;
- wo->neg_mrru = 1;
- }
- ao->mrru = ao->mru;
- ao->neg_mrru = 1;
-
- if (!wo->neg_endpoint && !noendpoint) {
- /* get a default endpoint value */
- wo->neg_endpoint = get_default_epdisc(&wo->endpoint);
- }
-}
-
-/*
- * Make a new bundle or join us to an existing bundle
- * if we are doing multilink.
- */
-int
-mp_join_bundle()
-{
- lcp_options *go = &lcp_gotoptions[0];
- lcp_options *ho = &lcp_hisoptions[0];
- lcp_options *ao = &lcp_allowoptions[0];
- int unit, pppd_pid;
- int l, mtu;
- char *p;
- TDB_DATA key, pid, rec;
-
- if (!go->neg_mrru || !ho->neg_mrru) {
- /* not doing multilink */
- if (go->neg_mrru)
- notice("oops, multilink negotiated only for receive");
- mtu = ho->neg_mru? ho->mru: PPP_MRU;
- if (mtu > ao->mru)
- mtu = ao->mru;
- if (demand) {
- /* already have a bundle */
- cfg_bundle(0, 0, 0, 0);
- netif_set_mtu(0, mtu);
- return 0;
- }
- make_new_bundle(0, 0, 0, 0);
- set_ifunit(1);
- netif_set_mtu(0, mtu);
- return 0;
- }
-
- /*
- * Find the appropriate bundle or join a new one.
- * First we make up a name for the bundle.
- * The length estimate is worst-case assuming every
- * character has to be quoted.
- */
- l = 4 * strlen(peer_authname) + 10;
- if (ho->neg_endpoint)
- l += 3 * ho->endpoint.length + 8;
- if (bundle_name)
- l += 3 * strlen(bundle_name) + 2;
- bundle_id = malloc(l);
- if (bundle_id == 0)
- novm("bundle identifier");
-
- p = bundle_id;
- p += slprintf(p, l-1, "BUNDLE=\"%q\"", peer_authname);
- if (ho->neg_endpoint || bundle_name)
- *p++ = '/';
- if (ho->neg_endpoint)
- p += slprintf(p, bundle_id+l-p, "%s",
- epdisc_to_str(&ho->endpoint));
- if (bundle_name)
- p += slprintf(p, bundle_id+l-p, "/%v", bundle_name);
-
- /*
- * For demand mode, we only need to configure the bundle
- * and attach the link.
- */
- mtu = MIN(ho->mrru, ao->mru);
- if (demand) {
- cfg_bundle(go->mrru, ho->mrru, go->neg_ssnhf, ho->neg_ssnhf);
- netif_set_mtu(0, mtu);
- script_setenv("BUNDLE", bundle_id + 7, 1);
- return 0;
- }
-
- /*
- * Check if the bundle ID is already in the database.
- */
- unit = -1;
- tdb_writelock(pppdb);
- key.dptr = bundle_id;
- key.dsize = p - bundle_id;
- pid = tdb_fetch(pppdb, key);
- if (pid.dptr != NULL) {
- /* bundle ID exists, see if the pppd record exists */
- rec = tdb_fetch(pppdb, pid);
- if (rec.dptr != NULL) {
- /* it is, parse the interface number */
- parse_num(rec.dptr, "IFNAME=ppp", &unit);
- /* check the pid value */
- if (!parse_num(rec.dptr, "PPPD_PID=", &pppd_pid)
- || !process_exists(pppd_pid)
- || !owns_unit(pid, unit))
- unit = -1;
- free(rec.dptr);
- }
- free(pid.dptr);
- }
-
- if (unit >= 0) {
- /* attach to existing unit */
- if (bundle_attach(unit)) {
- set_ifunit(0);
- script_setenv("BUNDLE", bundle_id + 7, 0);
- tdb_writeunlock(pppdb);
- info("Link attached to %s", ifname);
- return 1;
- }
- /* attach failed because bundle doesn't exist */
- }
-
- /* we have to make a new bundle */
- make_new_bundle(go->mrru, ho->mrru, go->neg_ssnhf, ho->neg_ssnhf);
- set_ifunit(1);
- netif_set_mtu(0, mtu);
- script_setenv("BUNDLE", bundle_id + 7, 1);
- tdb_writeunlock(pppdb);
- info("New bundle %s created", ifname);
- return 0;
-}
-
-static int
-parse_num(str, key, valp)
- char *str;
- const char *key;
- int *valp;
-{
- char *p, *endp;
- int i;
-
- p = strstr(str, key);
- if (p != 0) {
- p += strlen(key);
- i = strtol(p, &endp, 10);
- if (endp != p && (*endp == 0 || *endp == ';')) {
- *valp = i;
- return 1;
- }
- }
- return 0;
-}
-
-/*
- * Check whether the pppd identified by `key' still owns ppp unit `unit'.
- */
-static int
-owns_unit(key, unit)
- TDB_DATA key;
- int unit;
-{
- char ifkey[32];
- TDB_DATA kd, vd;
- int ret = 0;
-
- slprintf(ifkey, sizeof(ifkey), "IFNAME=ppp%d", unit);
- kd.dptr = ifkey;
- kd.dsize = strlen(ifkey);
- vd = tdb_fetch(pppdb, kd);
- if (vd.dptr != NULL) {
- ret = vd.dsize == key.dsize
- && memcmp(vd.dptr, key.dptr, vd.dsize) == 0;
- free(vd.dptr);
- }
- return ret;
-}
-
-static int
-get_default_epdisc(ep)
- struct epdisc *ep;
-{
- char *p;
- struct hostent *hp;
- u_int32_t addr;
-
- /* First try for an ethernet MAC address */
- p = get_first_ethernet();
- if (p != 0 && get_if_hwaddr(ep->value, p) >= 0) {
- ep->class = EPD_MAC;
- ep->length = 6;
- return 1;
- }
-
- /* see if our hostname corresponds to a reasonable IP address */
- hp = gethostbyname(hostname);
- if (hp != NULL) {
- addr = *(u_int32_t *)hp->h_addr;
- if (!bad_ip_adrs(addr)) {
- addr = ntohl(addr);
- if (!LOCAL_IP_ADDR(addr)) {
- ep->class = EPD_IP;
- set_ip_epdisc(ep, addr);
- return 1;
- }
- }
- }
-
- return 0;
-}
-
-/*
- * epdisc_to_str - make a printable string from an endpoint discriminator.
- */
-
-static char *endp_class_names[] = {
- "null", "local", "IP", "MAC", "magic", "phone"
-};
-
-char *
-epdisc_to_str(ep)
- struct epdisc *ep;
-{
- static char str[MAX_ENDP_LEN*3+8];
- u_char *p = ep->value;
- int i, mask = 0;
- char *q, c, c2;
-
- if (ep->class == EPD_NULL && ep->length == 0)
- return "null";
- if (ep->class == EPD_IP && ep->length == 4) {
- u_int32_t addr;
-
- GETLONG(addr, p);
- slprintf(str, sizeof(str), "IP:%I", htonl(addr));
- return str;
- }
-
- c = ':';
- c2 = '.';
- if (ep->class == EPD_MAC && ep->length == 6)
- c2 = ':';
- else if (ep->class == EPD_MAGIC && (ep->length % 4) == 0)
- mask = 3;
- q = str;
- if (ep->class <= EPD_PHONENUM)
- q += slprintf(q, sizeof(str)-1, "%s",
- endp_class_names[ep->class]);
- else
- q += slprintf(q, sizeof(str)-1, "%d", ep->class);
- c = ':';
- for (i = 0; i < ep->length && i < MAX_ENDP_LEN; ++i) {
- if ((i & mask) == 0) {
- *q++ = c;
- c = c2;
- }
- q += slprintf(q, str + sizeof(str) - q, "%.2x", ep->value[i]);
- }
- return str;
-}
-
-static int hexc_val(int c)
-{
- if (c >= 'a')
- return c - 'a' + 10;
- if (c >= 'A')
- return c - 'A' + 10;
- return c - '0';
-}
-
-int
-str_to_epdisc(ep, str)
- struct epdisc *ep;
- char *str;
-{
- int i, l;
- char *p, *endp;
-
- for (i = EPD_NULL; i <= EPD_PHONENUM; ++i) {
- int sl = strlen(endp_class_names[i]);
- if (strncasecmp(str, endp_class_names[i], sl) == 0) {
- str += sl;
- break;
- }
- }
- if (i > EPD_PHONENUM) {
- /* not a class name, try a decimal class number */
- i = strtol(str, &endp, 10);
- if (endp == str)
- return 0; /* can't parse class number */
- str = endp;
- }
- ep->class = i;
- if (*str == 0) {
- ep->length = 0;
- return 1;
- }
- if (*str != ':' && *str != '.')
- return 0;
- ++str;
-
- if (i == EPD_IP) {
- u_int32_t addr;
- i = parse_dotted_ip(str, &addr);
- if (i == 0 || str[i] != 0)
- return 0;
- set_ip_epdisc(ep, addr);
- return 1;
- }
- if (i == EPD_MAC && get_if_hwaddr(ep->value, str) >= 0) {
- ep->length = 6;
- return 1;
- }
-
- p = str;
- for (l = 0; l < MAX_ENDP_LEN; ++l) {
- if (*str == 0)
- break;
- if (p <= str)
- for (p = str; isxdigit(*p); ++p)
- ;
- i = p - str;
- if (i == 0)
- return 0;
- ep->value[l] = hexc_val(*str++);
- if ((i & 1) == 0)
- ep->value[l] = (ep->value[l] << 4) + hexc_val(*str++);
- if (*str == ':' || *str == '.')
- ++str;
- }
- if (*str != 0 || (ep->class == EPD_MAC && l != 6))
- return 0;
- ep->length = l;
- return 1;
-}
-
diff --git a/mdk-stage1/ppp/pppd/options.c b/mdk-stage1/ppp/pppd/options.c
deleted file mode 100644
index 1921d9ec5..000000000
--- a/mdk-stage1/ppp/pppd/options.c
+++ /dev/null
@@ -1,1513 +0,0 @@
-/*
- * options.c - handles option processing for PPP.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-#include <ctype.h>
-#include <stdio.h>
-#include <errno.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <stdlib.h>
-#include <syslog.h>
-#include <string.h>
-#include <pwd.h>
-#ifdef PLUGIN
-#include <dlfcn.h>
-#endif
-#ifdef PPP_FILTER
-#include <pcap.h>
-#include <pcap-int.h> /* XXX: To get struct pcap */
-#endif
-
-#include "pppd.h"
-#include "pathnames.h"
-
-#if defined(ultrix) || defined(NeXT)
-char *strdup __P((char *));
-#endif
-
-static const char rcsid[] = RCSID;
-
-struct option_value {
- struct option_value *next;
- const char *source;
- char value[1];
-};
-
-/*
- * Option variables and default values.
- */
-#ifdef PPP_FILTER
-int dflag = 0; /* Tell libpcap we want debugging */
-#endif
-int debug = 0; /* Debug flag */
-int kdebugflag = 0; /* Tell kernel to print debug messages */
-int default_device = 1; /* Using /dev/tty or equivalent */
-char devnam[MAXPATHLEN]; /* Device name */
-bool nodetach = 0; /* Don't detach from controlling tty */
-bool updetach = 0; /* Detach once link is up */
-int maxconnect = 0; /* Maximum connect time */
-char user[MAXNAMELEN]; /* Username for PAP */
-char passwd[MAXSECRETLEN]; /* Password for PAP */
-bool persist = 0; /* Reopen link after it goes down */
-char our_name[MAXNAMELEN]; /* Our name for authentication purposes */
-bool demand = 0; /* do dial-on-demand */
-char *ipparam = NULL; /* Extra parameter for ip up/down scripts */
-int idle_time_limit = 0; /* Disconnect if idle for this many seconds */
-int holdoff = 30; /* # seconds to pause before reconnecting */
-bool holdoff_specified; /* true if a holdoff value has been given */
-int log_to_fd = 1; /* send log messages to this fd too */
-bool log_default = 1; /* log_to_fd is default (stdout) */
-int maxfail = 10; /* max # of unsuccessful connection attempts */
-char linkname[MAXPATHLEN]; /* logical name for link */
-bool tune_kernel; /* may alter kernel settings */
-int connect_delay = 1000; /* wait this many ms after connect script */
-int req_unit = -1; /* requested interface unit */
-bool multilink = 0; /* Enable multilink operation */
-char *bundle_name = NULL; /* bundle name for multilink */
-bool dump_options; /* print out option values */
-bool dryrun; /* print out option values and exit */
-char *domain; /* domain name set by domain option */
-
-extern option_t auth_options[];
-extern struct stat devstat;
-
-#ifdef PPP_FILTER
-struct bpf_program pass_filter;/* Filter program for packets to pass */
-struct bpf_program active_filter; /* Filter program for link-active pkts */
-pcap_t pc; /* Fake struct pcap so we can compile expr */
-#endif
-
-char *current_option; /* the name of the option being parsed */
-int privileged_option; /* set iff the current option came from root */
-char *option_source; /* string saying where the option came from */
-int option_priority = OPRIO_CFGFILE; /* priority of the current options */
-bool devnam_fixed; /* can no longer change device name */
-
-static int logfile_fd = -1; /* fd opened for log file */
-static char logfile_name[MAXPATHLEN]; /* name of log file */
-
-/*
- * Prototypes
- */
-static int setdomain __P((char **));
-static int readfile __P((char **));
-static int callfile __P((char **));
-static int showversion __P((char **));
-static int showhelp __P((char **));
-static void usage __P((void));
-static int setlogfile __P((char **));
-#ifdef PLUGIN
-static int loadplugin __P((char **));
-#endif
-
-#ifdef PPP_FILTER
-static int setpassfilter __P((char **));
-static int setactivefilter __P((char **));
-#endif
-
-static option_t *find_option __P((const char *name));
-static int process_option __P((option_t *, char *, char **));
-static int n_arguments __P((option_t *));
-static int number_option __P((char *, u_int32_t *, int));
-
-/*
- * Structure to store extra lists of options.
- */
-struct option_list {
- option_t *options;
- struct option_list *next;
-};
-
-static struct option_list *extra_options = NULL;
-
-/*
- * Valid arguments.
- */
-option_t general_options[] = {
- { "debug", o_int, &debug,
- "Increase debugging level", OPT_INC | OPT_NOARG | 1 },
- { "-d", o_int, &debug,
- "Increase debugging level",
- OPT_ALIAS | OPT_INC | OPT_NOARG | 1 },
-
- { "kdebug", o_int, &kdebugflag,
- "Set kernel driver debug level", OPT_PRIO },
-
- { "nodetach", o_bool, &nodetach,
- "Don't detach from controlling tty", OPT_PRIO | 1 },
- { "-detach", o_bool, &nodetach,
- "Don't detach from controlling tty", OPT_ALIAS | OPT_PRIOSUB | 1 },
- { "updetach", o_bool, &updetach,
- "Detach from controlling tty once link is up",
- OPT_PRIOSUB | OPT_A2CLR | 1, &nodetach },
-
- { "holdoff", o_int, &holdoff,
- "Set time in seconds before retrying connection", OPT_PRIO },
-
- { "idle", o_int, &idle_time_limit,
- "Set time in seconds before disconnecting idle link", OPT_PRIO },
-
- { "maxconnect", o_int, &maxconnect,
- "Set connection time limit",
- OPT_PRIO | OPT_LLIMIT | OPT_NOINCR | OPT_ZEROINF },
-
- { "domain", o_special, (void *)setdomain,
- "Add given domain name to hostname",
- OPT_PRIO | OPT_PRIV | OPT_A2STRVAL, &domain },
-
- { "file", o_special, (void *)readfile,
- "Take options from a file", OPT_NOPRINT },
- { "call", o_special, (void *)callfile,
- "Take options from a privileged file", OPT_NOPRINT },
-
- { "persist", o_bool, &persist,
- "Keep on reopening connection after close", OPT_PRIO | 1 },
- { "nopersist", o_bool, &persist,
- "Turn off persist option", OPT_PRIOSUB },
-
- { "demand", o_bool, &demand,
- "Dial on demand", OPT_INITONLY | 1, &persist },
-
- { "--version", o_special_noarg, (void *)showversion,
- "Show version number" },
- { "--help", o_special_noarg, (void *)showhelp,
- "Show brief listing of options" },
- { "-h", o_special_noarg, (void *)showhelp,
- "Show brief listing of options", OPT_ALIAS },
-
- { "logfile", o_special, (void *)setlogfile,
- "Append log messages to this file",
- OPT_PRIO | OPT_A2STRVAL | OPT_STATIC, &logfile_name },
- { "logfd", o_int, &log_to_fd,
- "Send log messages to this file descriptor",
- OPT_PRIOSUB | OPT_A2CLR, &log_default },
- { "nolog", o_int, &log_to_fd,
- "Don't send log messages to any file",
- OPT_PRIOSUB | OPT_NOARG | OPT_VAL(-1) },
- { "nologfd", o_int, &log_to_fd,
- "Don't send log messages to any file descriptor",
- OPT_PRIOSUB | OPT_ALIAS | OPT_NOARG | OPT_VAL(-1) },
-
- { "linkname", o_string, linkname,
- "Set logical name for link",
- OPT_PRIO | OPT_PRIV | OPT_STATIC, NULL, MAXPATHLEN },
-
- { "maxfail", o_int, &maxfail,
- "Maximum number of unsuccessful connection attempts to allow",
- OPT_PRIO },
-
- { "ktune", o_bool, &tune_kernel,
- "Alter kernel settings as necessary", OPT_PRIO | 1 },
- { "noktune", o_bool, &tune_kernel,
- "Don't alter kernel settings", OPT_PRIOSUB },
-
- { "connect-delay", o_int, &connect_delay,
- "Maximum time (in ms) to wait after connect script finishes",
- OPT_PRIO },
-
- { "unit", o_int, &req_unit,
- "PPP interface unit number to use if possible",
- OPT_PRIO | OPT_LLIMIT, 0, 0 },
-
- { "dump", o_bool, &dump_options,
- "Print out option values after parsing all options", 1 },
- { "dryrun", o_bool, &dryrun,
- "Stop after parsing, printing, and checking options", 1 },
-
-#ifdef HAVE_MULTILINK
- { "multilink", o_bool, &multilink,
- "Enable multilink operation", OPT_PRIO | 1 },
- { "mp", o_bool, &multilink,
- "Enable multilink operation", OPT_PRIOSUB | OPT_ALIAS | 1 },
- { "nomultilink", o_bool, &multilink,
- "Disable multilink operation", OPT_PRIOSUB | 0 },
- { "nomp", o_bool, &multilink,
- "Disable multilink operation", OPT_PRIOSUB | OPT_ALIAS | 0 },
-
- { "bundle", o_string, &bundle_name,
- "Bundle name for multilink", OPT_PRIO },
-#endif /* HAVE_MULTILINK */
-
-#ifdef PLUGIN
- { "plugin", o_special, (void *)loadplugin,
- "Load a plug-in module into pppd", OPT_PRIV | OPT_A2LIST },
-#endif
-
-#ifdef PPP_FILTER
- { "pdebug", o_int, &dflag,
- "libpcap debugging", OPT_PRIO },
-
- { "pass-filter", 1, setpassfilter,
- "set filter for packets to pass", OPT_PRIO },
-
- { "active-filter", 1, setactivefilter,
- "set filter for active pkts", OPT_PRIO },
-#endif
-
- { NULL }
-};
-
-#ifndef IMPLEMENTATION
-#define IMPLEMENTATION ""
-#endif
-
-static char *usage_string = "\
-pppd version %s\n\
-Usage: %s [ options ], where options are:\n\
- <device> Communicate over the named device\n\
- <speed> Set the baud rate to <speed>\n\
- <loc>:<rem> Set the local and/or remote interface IP\n\
- addresses. Either one may be omitted.\n\
- asyncmap <n> Set the desired async map to hex <n>\n\
- auth Require authentication from peer\n\
- connect <p> Invoke shell command <p> to set up the serial line\n\
- crtscts Use hardware RTS/CTS flow control\n\
- defaultroute Add default route through interface\n\
- file <f> Take options from file <f>\n\
- modem Use modem control lines\n\
- mru <n> Set MRU value to <n> for negotiation\n\
-See pppd(8) for more options.\n\
-";
-
-/*
- * parse_args - parse a string of arguments from the command line.
- */
-int
-parse_args(argc, argv)
- int argc;
- char **argv;
-{
- char *arg;
- option_t *opt;
- int n;
-
- privileged_option = privileged;
- option_source = "command line";
- option_priority = OPRIO_CMDLINE;
- while (argc > 0) {
- arg = *argv++;
- --argc;
- opt = find_option(arg);
- if (opt == NULL) {
- option_error("unrecognized option '%s'", arg);
- usage();
- return 0;
- }
- n = n_arguments(opt);
- if (argc < n) {
- option_error("too few parameters for option %s", arg);
- return 0;
- }
- if (!process_option(opt, arg, argv))
- return 0;
- argc -= n;
- argv += n;
- }
- return 1;
-}
-
-/*
- * options_from_file - Read a string of options from a file,
- * and interpret them.
- */
-int
-options_from_file(filename, must_exist, check_prot, priv)
- char *filename;
- int must_exist;
- int check_prot;
- int priv;
-{
- FILE *f;
- int i, newline, ret, err;
- option_t *opt;
- int oldpriv, n;
- char *oldsource;
- char *argv[MAXARGS];
- char args[MAXARGS][MAXWORDLEN];
- char cmd[MAXWORDLEN];
-
- if (check_prot)
- seteuid(getuid());
- f = fopen(filename, "r");
- err = errno;
- if (check_prot)
- seteuid(0);
- if (f == NULL) {
- errno = err;
- if (!must_exist) {
- if (err != ENOENT && err != ENOTDIR)
- warn("Warning: can't open options file %s: %m", filename);
- return 1;
- }
- option_error("Can't open options file %s: %m", filename);
- return 0;
- }
-
- oldpriv = privileged_option;
- privileged_option = priv;
- oldsource = option_source;
- option_source = strdup(filename);
- if (option_source == NULL)
- option_source = "file";
- ret = 0;
- while (getword(f, cmd, &newline, filename)) {
- opt = find_option(cmd);
- if (opt == NULL) {
- option_error("In file %s: unrecognized option '%s'",
- filename, cmd);
- goto err;
- }
- n = n_arguments(opt);
- for (i = 0; i < n; ++i) {
- if (!getword(f, args[i], &newline, filename)) {
- option_error(
- "In file %s: too few parameters for option '%s'",
- filename, cmd);
- goto err;
- }
- argv[i] = args[i];
- }
- if (!process_option(opt, cmd, argv))
- goto err;
- }
- ret = 1;
-
-err:
- fclose(f);
- privileged_option = oldpriv;
- option_source = oldsource;
- return ret;
-}
-
-/*
- * options_from_user - See if the use has a ~/.ppprc file,
- * and if so, interpret options from it.
- */
-int
-options_from_user()
-{
- char *user, *path, *file;
- int ret;
- struct passwd *pw;
- size_t pl;
-
- pw = getpwuid(getuid());
- if (pw == NULL || (user = pw->pw_dir) == NULL || user[0] == 0)
- return 1;
- file = _PATH_USEROPT;
- pl = strlen(user) + strlen(file) + 2;
- path = malloc(pl);
- if (path == NULL)
- novm("init file name");
- slprintf(path, pl, "%s/%s", user, file);
- option_priority = OPRIO_CFGFILE;
- ret = options_from_file(path, 0, 1, privileged);
- free(path);
- return ret;
-}
-
-/*
- * options_for_tty - See if an options file exists for the serial
- * device, and if so, interpret options from it.
- * We only allow the per-tty options file to override anything from
- * the command line if it is something that the user can't override
- * once it has been set by root; this is done by giving configuration
- * files a lower priority than the command line.
- */
-int
-options_for_tty()
-{
- char *dev, *path, *p;
- int ret;
- size_t pl;
-
- dev = devnam;
- if (strncmp(dev, "/dev/", 5) == 0)
- dev += 5;
- if (dev[0] == 0 || strcmp(dev, "tty") == 0)
- return 1; /* don't look for /etc/ppp/options.tty */
- pl = strlen(_PATH_TTYOPT) + strlen(dev) + 1;
- path = malloc(pl);
- if (path == NULL)
- novm("tty init file name");
- slprintf(path, pl, "%s%s", _PATH_TTYOPT, dev);
- /* Turn slashes into dots, for Solaris case (e.g. /dev/term/a) */
- for (p = path + strlen(_PATH_TTYOPT); *p != 0; ++p)
- if (*p == '/')
- *p = '.';
- option_priority = OPRIO_CFGFILE;
- ret = options_from_file(path, 0, 0, 1);
- free(path);
- return ret;
-}
-
-/*
- * options_from_list - process a string of options in a wordlist.
- */
-int
-options_from_list(w, priv)
- struct wordlist *w;
- int priv;
-{
- char *argv[MAXARGS];
- option_t *opt;
- int i, n, ret = 0;
- struct wordlist *w0;
-
- privileged_option = priv;
- option_source = "secrets file";
- option_priority = OPRIO_SECFILE;
-
- while (w != NULL) {
- opt = find_option(w->word);
- if (opt == NULL) {
- option_error("In secrets file: unrecognized option '%s'",
- w->word);
- goto err;
- }
- n = n_arguments(opt);
- w0 = w;
- for (i = 0; i < n; ++i) {
- w = w->next;
- if (w == NULL) {
- option_error(
- "In secrets file: too few parameters for option '%s'",
- w0->word);
- goto err;
- }
- argv[i] = w->word;
- }
- if (!process_option(opt, w0->word, argv))
- goto err;
- w = w->next;
- }
- ret = 1;
-
-err:
- return ret;
-}
-
-/*
- * match_option - see if this option matches an option_t structure.
- */
-static int
-match_option(name, opt, dowild)
- char *name;
- option_t *opt;
- int dowild;
-{
- int (*match) __P((char *, char **, int));
-
- if (dowild != (opt->type == o_wild))
- return 0;
- if (!dowild)
- return strcmp(name, opt->name) == 0;
- match = (int (*) __P((char *, char **, int))) opt->addr;
- return (*match)(name, NULL, 0);
-}
-
-/*
- * find_option - scan the option lists for the various protocols
- * looking for an entry with the given name.
- * This could be optimized by using a hash table.
- */
-static option_t *
-find_option(name)
- const char *name;
-{
- option_t *opt;
- struct option_list *list;
- int i, dowild;
-
- for (dowild = 0; dowild <= 1; ++dowild) {
- for (opt = general_options; opt->name != NULL; ++opt)
- if (match_option(name, opt, dowild))
- return opt;
- for (opt = auth_options; opt->name != NULL; ++opt)
- if (match_option(name, opt, dowild))
- return opt;
- for (list = extra_options; list != NULL; list = list->next)
- for (opt = list->options; opt->name != NULL; ++opt)
- if (match_option(name, opt, dowild))
- return opt;
- for (opt = the_channel->options; opt->name != NULL; ++opt)
- if (match_option(name, opt, dowild))
- return opt;
- for (i = 0; protocols[i] != NULL; ++i)
- if ((opt = protocols[i]->options) != NULL)
- for (; opt->name != NULL; ++opt)
- if (match_option(name, opt, dowild))
- return opt;
- }
- return NULL;
-}
-
-/*
- * process_option - process one new-style option.
- */
-static int
-process_option(opt, cmd, argv)
- option_t *opt;
- char *cmd;
- char **argv;
-{
- u_int32_t v;
- int iv, a;
- char *sv;
- int (*parser) __P((char **));
- int (*wildp) __P((char *, char **, int));
- char *optopt = (opt->type == o_wild)? "": " option";
- int prio = option_priority;
- option_t *mainopt = opt;
-
- if ((opt->flags & OPT_PRIVFIX) && privileged_option)
- prio += OPRIO_ROOT;
- while (mainopt->flags & OPT_PRIOSUB)
- --mainopt;
- if (mainopt->flags & OPT_PRIO) {
- if (prio < mainopt->priority) {
- /* new value doesn't override old */
- if (prio == OPRIO_CMDLINE && mainopt->priority > OPRIO_ROOT) {
- option_error("%s%s set in %s cannot be overridden\n",
- opt->name, optopt, mainopt->source);
- return 0;
- }
- return 1;
- }
- if (prio > OPRIO_ROOT && mainopt->priority == OPRIO_CMDLINE)
- warn("%s%s from %s overrides command line",
- opt->name, optopt, option_source);
- }
-
- if ((opt->flags & OPT_INITONLY) && phase != PHASE_INITIALIZE) {
- option_error("%s%s cannot be changed after initialization",
- opt->name, optopt);
- return 0;
- }
- if ((opt->flags & OPT_PRIV) && !privileged_option) {
- option_error("using the %s%s requires root privilege",
- opt->name, optopt);
- return 0;
- }
- if ((opt->flags & OPT_ENABLE) && *(bool *)(opt->addr2) == 0) {
- option_error("%s%s is disabled", opt->name, optopt);
- return 0;
- }
- if ((opt->flags & OPT_DEVEQUIV) && devnam_fixed) {
- option_error("the %s%s may not be changed in %s",
- opt->name, optopt, option_source);
- return 0;
- }
-
- switch (opt->type) {
- case o_bool:
- v = opt->flags & OPT_VALUE;
- *(bool *)(opt->addr) = v;
- if (opt->addr2 && (opt->flags & OPT_A2COPY))
- *(bool *)(opt->addr2) = v;
- break;
-
- case o_int:
- iv = 0;
- if ((opt->flags & OPT_NOARG) == 0) {
- if (!int_option(*argv, &iv))
- return 0;
- if ((((opt->flags & OPT_LLIMIT) && iv < opt->lower_limit)
- || ((opt->flags & OPT_ULIMIT) && iv > opt->upper_limit))
- && !((opt->flags & OPT_ZEROOK && iv == 0))) {
- char *zok = (opt->flags & OPT_ZEROOK)? " zero or": "";
- switch (opt->flags & OPT_LIMITS) {
- case OPT_LLIMIT:
- option_error("%s value must be%s >= %d",
- opt->name, zok, opt->lower_limit);
- break;
- case OPT_ULIMIT:
- option_error("%s value must be%s <= %d",
- opt->name, zok, opt->upper_limit);
- break;
- case OPT_LIMITS:
- option_error("%s value must be%s between %d and %d",
- opt->name, opt->lower_limit, opt->upper_limit);
- break;
- }
- return 0;
- }
- }
- a = opt->flags & OPT_VALUE;
- if (a >= 128)
- a -= 256; /* sign extend */
- iv += a;
- if (opt->flags & OPT_INC)
- iv += *(int *)(opt->addr);
- if ((opt->flags & OPT_NOINCR) && !privileged_option) {
- int oldv = *(int *)(opt->addr);
- if ((opt->flags & OPT_ZEROINF) ?
- (oldv != 0 && (iv == 0 || iv > oldv)) : (iv > oldv)) {
- option_error("%s value cannot be increased", opt->name);
- return 0;
- }
- }
- *(int *)(opt->addr) = iv;
- if (opt->addr2 && (opt->flags & OPT_A2COPY))
- *(int *)(opt->addr2) = iv;
- break;
-
- case o_uint32:
- if (opt->flags & OPT_NOARG) {
- v = opt->flags & OPT_VALUE;
- if (v & 0x80)
- v |= 0xffffff00U;
- } else if (!number_option(*argv, &v, 16))
- return 0;
- if (opt->flags & OPT_OR)
- v |= *(u_int32_t *)(opt->addr);
- *(u_int32_t *)(opt->addr) = v;
- if (opt->addr2 && (opt->flags & OPT_A2COPY))
- *(u_int32_t *)(opt->addr2) = v;
- break;
-
- case o_string:
- if (opt->flags & OPT_STATIC) {
- strlcpy((char *)(opt->addr), *argv, opt->upper_limit);
- } else {
- sv = strdup(*argv);
- if (sv == NULL)
- novm("option argument");
- *(char **)(opt->addr) = sv;
- }
- break;
-
- case o_special_noarg:
- case o_special:
- parser = (int (*) __P((char **))) opt->addr;
- if (!(*parser)(argv))
- return 0;
- if (opt->flags & OPT_A2LIST) {
- struct option_value *ovp, **pp;
-
- ovp = malloc(sizeof(*ovp) + strlen(*argv));
- if (ovp != 0) {
- strcpy(ovp->value, *argv);
- ovp->source = option_source;
- ovp->next = NULL;
- pp = (struct option_value **) &opt->addr2;
- while (*pp != 0)
- pp = &(*pp)->next;
- *pp = ovp;
- }
- }
- break;
-
- case o_wild:
- wildp = (int (*) __P((char *, char **, int))) opt->addr;
- if (!(*wildp)(cmd, argv, 1))
- return 0;
- break;
- }
-
- if (opt->addr2 && (opt->flags & (OPT_A2COPY|OPT_ENABLE
- |OPT_A2PRINTER|OPT_A2STRVAL|OPT_A2LIST)) == 0)
- *(bool *)(opt->addr2) = !(opt->flags & OPT_A2CLR);
-
- mainopt->source = option_source;
- mainopt->priority = prio;
- mainopt->winner = opt - mainopt;
-
- return 1;
-}
-
-/*
- * override_value - if the option priorities would permit us to
- * override the value of option, return 1 and update the priority
- * and source of the option value. Otherwise returns 0.
- */
-int
-override_value(option, priority, source)
- const char *option;
- int priority;
- const char *source;
-{
- option_t *opt;
-
- opt = find_option(option);
- if (opt == NULL)
- return 0;
- while (opt->flags & OPT_PRIOSUB)
- --opt;
- if ((opt->flags & OPT_PRIO) && priority < opt->priority)
- return 0;
- opt->priority = priority;
- opt->source = source;
- opt->winner = -1;
- return 1;
-}
-
-/*
- * n_arguments - tell how many arguments an option takes
- */
-static int
-n_arguments(opt)
- option_t *opt;
-{
- return (opt->type == o_bool || opt->type == o_special_noarg
- || (opt->flags & OPT_NOARG))? 0: 1;
-}
-
-/*
- * add_options - add a list of options to the set we grok.
- */
-void
-add_options(opt)
- option_t *opt;
-{
- struct option_list *list;
-
- list = malloc(sizeof(*list));
- if (list == 0)
- novm("option list entry");
- list->options = opt;
- list->next = extra_options;
- extra_options = list;
-}
-
-/*
- * check_options - check that options are valid and consistent.
- */
-void
-check_options()
-{
- if (logfile_fd >= 0 && logfile_fd != log_to_fd)
- close(logfile_fd);
-}
-
-/*
- * print_option - print out an option and its value
- */
-static void
-print_option(opt, mainopt, printer, arg)
- option_t *opt, *mainopt;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int i, v;
- char *p;
-
- if (opt->flags & OPT_NOPRINT)
- return;
- switch (opt->type) {
- case o_bool:
- v = opt->flags & OPT_VALUE;
- if (*(bool *)opt->addr != v)
- /* this can happen legitimately, e.g. lock
- option turned off for default device */
- break;
- printer(arg, "%s", opt->name);
- break;
- case o_int:
- v = opt->flags & OPT_VALUE;
- if (v >= 128)
- v -= 256;
- i = *(int *)opt->addr;
- if (opt->flags & OPT_NOARG) {
- printer(arg, "%s", opt->name);
- if (i != v) {
- if (opt->flags & OPT_INC) {
- for (; i > v; i -= v)
- printer(arg, " %s", opt->name);
- } else
- printer(arg, " # oops: %d not %d\n",
- i, v);
- }
- } else {
- printer(arg, "%s %d", opt->name, i);
- }
- break;
- case o_uint32:
- printer(arg, "%s", opt->name);
- if ((opt->flags & OPT_NOARG) == 0)
- printer(arg, " %x", *(u_int32_t *)opt->addr);
- break;
-
- case o_string:
- if (opt->flags & OPT_HIDE) {
- p = "??????";
- } else {
- p = (char *) opt->addr;
- if ((opt->flags & OPT_STATIC) == 0)
- p = *(char **)p;
- }
- printer(arg, "%s %q", opt->name, p);
- break;
-
- case o_special:
- case o_special_noarg:
- case o_wild:
- if (opt->type != o_wild) {
- printer(arg, "%s", opt->name);
- if (n_arguments(opt) == 0)
- break;
- printer(arg, " ");
- }
- if (opt->flags & OPT_A2PRINTER) {
- void (*oprt) __P((option_t *,
- void ((*)__P((void *, char *, ...))),
- void *));
- oprt = opt->addr2;
- (*oprt)(opt, printer, arg);
- } else if (opt->flags & OPT_A2STRVAL) {
- p = (char *) opt->addr2;
- if ((opt->flags & OPT_STATIC) == 0)
- p = *(char **)p;
- printer("%q", p);
- } else if (opt->flags & OPT_A2LIST) {
- struct option_value *ovp;
-
- ovp = (struct option_value *) opt->addr2;
- for (;;) {
- printer(arg, "%q", ovp->value);
- if ((ovp = ovp->next) == NULL)
- break;
- printer(arg, "\t\t# (from %s)\n%s ",
- ovp->source, opt->name);
- }
- } else {
- printer(arg, "xxx # [don't know how to print value]");
- }
- break;
-
- default:
- printer(arg, "# %s value (type %d)", opt->name, opt->type);
- break;
- }
- printer(arg, "\t\t# (from %s)\n", mainopt->source);
-}
-
-/*
- * print_option_list - print out options in effect from an
- * array of options.
- */
-static void
-print_option_list(opt, printer, arg)
- option_t *opt;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- while (opt->name != NULL) {
- if (opt->priority != OPRIO_DEFAULT
- && opt->winner != (short int) -1)
- print_option(opt + opt->winner, opt, printer, arg);
- do {
- ++opt;
- } while (opt->flags & OPT_PRIOSUB);
- }
-}
-
-/*
- * print_options - print out what options are in effect.
- */
-void
-print_options(printer, arg)
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- struct option_list *list;
- int i;
-
- printer(arg, "pppd options in effect:\n");
- print_option_list(general_options, printer, arg);
- print_option_list(auth_options, printer, arg);
- for (list = extra_options; list != NULL; list = list->next)
- print_option_list(list->options, printer, arg);
- print_option_list(the_channel->options, printer, arg);
- for (i = 0; protocols[i] != NULL; ++i)
- print_option_list(protocols[i]->options, printer, arg);
-}
-
-/*
- * usage - print out a message telling how to use the program.
- */
-static void
-usage()
-{
- if (phase == PHASE_INITIALIZE)
- fprintf(stderr, usage_string, VERSION, progname);
-}
-
-/*
- * showhelp - print out usage message and exit.
- */
-static int
-showhelp(argv)
- char **argv;
-{
- if (phase == PHASE_INITIALIZE) {
- usage();
- exit(0);
- }
- return 0;
-}
-
-/*
- * showversion - print out the version number and exit.
- */
-static int
-showversion(argv)
- char **argv;
-{
- if (phase == PHASE_INITIALIZE) {
- fprintf(stderr, "pppd version %s\n", VERSION);
- exit(0);
- }
- return 0;
-}
-
-/*
- * option_error - print a message about an error in an option.
- * The message is logged, and also sent to
- * stderr if phase == PHASE_INITIALIZE.
- */
-void
-option_error __V((char *fmt, ...))
-{
- va_list args;
- char buf[1024];
-
-#if defined(__STDC__)
- va_start(args, fmt);
-#else
- char *fmt;
- va_start(args);
- fmt = va_arg(args, char *);
-#endif
- vslprintf(buf, sizeof(buf), fmt, args);
- va_end(args);
- if (phase == PHASE_INITIALIZE)
- fprintf(stderr, "%s: %s\n", progname, buf);
- syslog(LOG_ERR, "%s", buf);
-}
-
-#if 0
-/*
- * readable - check if a file is readable by the real user.
- */
-int
-readable(fd)
- int fd;
-{
- uid_t uid;
- int i;
- struct stat sbuf;
-
- uid = getuid();
- if (uid == 0)
- return 1;
- if (fstat(fd, &sbuf) != 0)
- return 0;
- if (sbuf.st_uid == uid)
- return sbuf.st_mode & S_IRUSR;
- if (sbuf.st_gid == getgid())
- return sbuf.st_mode & S_IRGRP;
- for (i = 0; i < ngroups; ++i)
- if (sbuf.st_gid == groups[i])
- return sbuf.st_mode & S_IRGRP;
- return sbuf.st_mode & S_IROTH;
-}
-#endif
-
-/*
- * Read a word from a file.
- * Words are delimited by white-space or by quotes (" or ').
- * Quotes, white-space and \ may be escaped with \.
- * \<newline> is ignored.
- */
-int
-getword(f, word, newlinep, filename)
- FILE *f;
- char *word;
- int *newlinep;
- char *filename;
-{
- int c, len, escape;
- int quoted, comment;
- int value, digit, got, n;
-
-#define isoctal(c) ((c) >= '0' && (c) < '8')
-
- *newlinep = 0;
- len = 0;
- escape = 0;
- comment = 0;
-
- /*
- * First skip white-space and comments.
- */
- for (;;) {
- c = getc(f);
- if (c == EOF)
- break;
-
- /*
- * A newline means the end of a comment; backslash-newline
- * is ignored. Note that we cannot have escape && comment.
- */
- if (c == '\n') {
- if (!escape) {
- *newlinep = 1;
- comment = 0;
- } else
- escape = 0;
- continue;
- }
-
- /*
- * Ignore characters other than newline in a comment.
- */
- if (comment)
- continue;
-
- /*
- * If this character is escaped, we have a word start.
- */
- if (escape)
- break;
-
- /*
- * If this is the escape character, look at the next character.
- */
- if (c == '\\') {
- escape = 1;
- continue;
- }
-
- /*
- * If this is the start of a comment, ignore the rest of the line.
- */
- if (c == '#') {
- comment = 1;
- continue;
- }
-
- /*
- * A non-whitespace character is the start of a word.
- */
- if (!isspace(c))
- break;
- }
-
- /*
- * Save the delimiter for quoted strings.
- */
- if (!escape && (c == '"' || c == '\'')) {
- quoted = c;
- c = getc(f);
- } else
- quoted = 0;
-
- /*
- * Process characters until the end of the word.
- */
- while (c != EOF) {
- if (escape) {
- /*
- * This character is escaped: backslash-newline is ignored,
- * various other characters indicate particular values
- * as for C backslash-escapes.
- */
- escape = 0;
- if (c == '\n') {
- c = getc(f);
- continue;
- }
-
- got = 0;
- switch (c) {
- case 'a':
- value = '\a';
- break;
- case 'b':
- value = '\b';
- break;
- case 'f':
- value = '\f';
- break;
- case 'n':
- value = '\n';
- break;
- case 'r':
- value = '\r';
- break;
- case 's':
- value = ' ';
- break;
- case 't':
- value = '\t';
- break;
-
- default:
- if (isoctal(c)) {
- /*
- * \ddd octal sequence
- */
- value = 0;
- for (n = 0; n < 3 && isoctal(c); ++n) {
- value = (value << 3) + (c & 07);
- c = getc(f);
- }
- got = 1;
- break;
- }
-
- if (c == 'x') {
- /*
- * \x<hex_string> sequence
- */
- value = 0;
- c = getc(f);
- for (n = 0; n < 2 && isxdigit(c); ++n) {
- digit = toupper(c) - '0';
- if (digit > 10)
- digit += '0' + 10 - 'A';
- value = (value << 4) + digit;
- c = getc (f);
- }
- got = 1;
- break;
- }
-
- /*
- * Otherwise the character stands for itself.
- */
- value = c;
- break;
- }
-
- /*
- * Store the resulting character for the escape sequence.
- */
- if (len < MAXWORDLEN-1)
- word[len] = value;
- ++len;
-
- if (!got)
- c = getc(f);
- continue;
-
- }
-
- /*
- * Not escaped: see if we've reached the end of the word.
- */
- if (quoted) {
- if (c == quoted)
- break;
- } else {
- if (isspace(c) || c == '#') {
- ungetc (c, f);
- break;
- }
- }
-
- /*
- * Backslash starts an escape sequence.
- */
- if (c == '\\') {
- escape = 1;
- c = getc(f);
- continue;
- }
-
- /*
- * An ordinary character: store it in the word and get another.
- */
- if (len < MAXWORDLEN-1)
- word[len] = c;
- ++len;
-
- c = getc(f);
- }
-
- /*
- * End of the word: check for errors.
- */
- if (c == EOF) {
- if (ferror(f)) {
- if (errno == 0)
- errno = EIO;
- option_error("Error reading %s: %m", filename);
- die(1);
- }
- /*
- * If len is zero, then we didn't find a word before the
- * end of the file.
- */
- if (len == 0)
- return 0;
- }
-
- /*
- * Warn if the word was too long, and append a terminating null.
- */
- if (len >= MAXWORDLEN) {
- option_error("warning: word in file %s too long (%.20s...)",
- filename, word);
- len = MAXWORDLEN - 1;
- }
- word[len] = 0;
-
- return 1;
-
-#undef isoctal
-
-}
-
-/*
- * number_option - parse an unsigned numeric parameter for an option.
- */
-static int
-number_option(str, valp, base)
- char *str;
- u_int32_t *valp;
- int base;
-{
- char *ptr;
-
- *valp = strtoul(str, &ptr, base);
- if (ptr == str) {
- option_error("invalid numeric parameter '%s' for %s option",
- str, current_option);
- return 0;
- }
- return 1;
-}
-
-
-/*
- * int_option - like number_option, but valp is int *,
- * the base is assumed to be 0, and *valp is not changed
- * if there is an error.
- */
-int
-int_option(str, valp)
- char *str;
- int *valp;
-{
- u_int32_t v;
-
- if (!number_option(str, &v, 0))
- return 0;
- *valp = (int) v;
- return 1;
-}
-
-
-/*
- * The following procedures parse options.
- */
-
-/*
- * readfile - take commands from a file.
- */
-static int
-readfile(argv)
- char **argv;
-{
- return options_from_file(*argv, 1, 1, privileged_option);
-}
-
-/*
- * callfile - take commands from /etc/ppp/peers/<name>.
- * Name may not contain /../, start with / or ../, or end in /..
- */
-static int
-callfile(argv)
- char **argv;
-{
- char *fname, *arg, *p;
- int l, ok;
-
- arg = *argv;
- ok = 1;
- if (arg[0] == '/' || arg[0] == 0)
- ok = 0;
- else {
- for (p = arg; *p != 0; ) {
- if (p[0] == '.' && p[1] == '.' && (p[2] == '/' || p[2] == 0)) {
- ok = 0;
- break;
- }
- while (*p != '/' && *p != 0)
- ++p;
- if (*p == '/')
- ++p;
- }
- }
- if (!ok) {
- option_error("call option value may not contain .. or start with /");
- return 0;
- }
-
- l = strlen(arg) + strlen(_PATH_PEERFILES) + 1;
- if ((fname = (char *) malloc(l)) == NULL)
- novm("call file name");
- slprintf(fname, l, "%s%s", _PATH_PEERFILES, arg);
-
- ok = options_from_file(fname, 1, 1, 1);
-
- free(fname);
- return ok;
-}
-
-#ifdef PPP_FILTER
-/*
- * setpassfilter - Set the pass filter for packets
- */
-static int
-setpassfilter(argv)
- char **argv;
-{
- pc.linktype = DLT_PPP;
- pc.snapshot = PPP_HDRLEN;
-
- if (pcap_compile(&pc, &pass_filter, *argv, 1, netmask) == 0)
- return 1;
- option_error("error in pass-filter expression: %s\n", pcap_geterr(&pc));
- return 0;
-}
-
-/*
- * setactivefilter - Set the active filter for packets
- */
-static int
-setactivefilter(argv)
- char **argv;
-{
- pc.linktype = DLT_PPP;
- pc.snapshot = PPP_HDRLEN;
-
- if (pcap_compile(&pc, &active_filter, *argv, 1, netmask) == 0)
- return 1;
- option_error("error in active-filter expression: %s\n", pcap_geterr(&pc));
- return 0;
-}
-#endif
-
-/*
- * setdomain - Set domain name to append to hostname
- */
-static int
-setdomain(argv)
- char **argv;
-{
- gethostname(hostname, MAXNAMELEN);
- if (**argv != 0) {
- if (**argv != '.')
- strncat(hostname, ".", MAXNAMELEN - strlen(hostname));
- domain = hostname + strlen(hostname);
- strncat(hostname, *argv, MAXNAMELEN - strlen(hostname));
- }
- hostname[MAXNAMELEN-1] = 0;
- return (1);
-}
-
-
-static int
-setlogfile(argv)
- char **argv;
-{
- int fd, err;
-
- if (!privileged_option)
- seteuid(getuid());
- fd = open(*argv, O_WRONLY | O_APPEND | O_CREAT | O_EXCL, 0644);
- if (fd < 0 && errno == EEXIST)
- fd = open(*argv, O_WRONLY | O_APPEND);
- err = errno;
- if (!privileged_option)
- seteuid(0);
- if (fd < 0) {
- errno = err;
- option_error("Can't open log file %s: %m", *argv);
- return 0;
- }
- strlcpy(logfile_name, *argv, sizeof(logfile_name));
- if (logfile_fd >= 0)
- close(logfile_fd);
- logfile_fd = fd;
- log_to_fd = fd;
- log_default = 0;
- return 1;
-}
-
-#ifdef PLUGIN
-static int
-loadplugin(argv)
- char **argv;
-{
- char *arg = *argv;
- void *handle;
- const char *err;
- void (*init) __P((void));
- char *path = arg;
- const char *vers;
-
- if (strchr(arg, '/') == 0) {
- const char *base = _PATH_PLUGIN;
- int l = strlen(base) + strlen(arg) + 2;
- path = malloc(l);
- if (path == 0)
- novm("plugin file path");
- strlcpy(path, base, l);
- strlcat(path, "/", l);
- strlcat(path, arg, l);
- }
- handle = dlopen(path, RTLD_GLOBAL | RTLD_NOW);
- if (handle == 0) {
- err = dlerror();
- if (err != 0)
- option_error("%s", err);
- option_error("Couldn't load plugin %s", arg);
- goto err;
- }
- init = (void (*)(void))dlsym(handle, "plugin_init");
- if (init == 0) {
- option_error("%s has no initialization entry point", arg);
- goto errclose;
- }
- vers = (const char *) dlsym(handle, "pppd_version");
- if (vers == 0) {
- warn("Warning: plugin %s has no version information", arg);
- } else if (strcmp(vers, VERSION) != 0) {
- option_error("Plugin %s is for pppd version %s, this is %s",
- vers, VERSION);
- goto errclose;
- }
- info("Plugin %s loaded.", arg);
- (*init)();
- return 1;
-
- errclose:
- dlclose(handle);
- err:
- if (path != arg)
- free(path);
- return 0;
-}
-#endif /* PLUGIN */
diff --git a/mdk-stage1/ppp/pppd/patchlevel.h b/mdk-stage1/ppp/pppd/patchlevel.h
deleted file mode 100644
index 2a2d816f1..000000000
--- a/mdk-stage1/ppp/pppd/patchlevel.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* $Id$ */
-
-#define VERSION "2.4.1"
-#define DATE "25 March 2001"
diff --git a/mdk-stage1/ppp/pppd/pathnames.h b/mdk-stage1/ppp/pppd/pathnames.h
deleted file mode 100644
index e80784567..000000000
--- a/mdk-stage1/ppp/pppd/pathnames.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * define path names
- *
- * $Id$
- */
-
-#define _PATH_VARRUN "/var/run/"
-#define _PATH_DEVNULL "/dev/null"
-#define _ROOT_PATH
-
-#define _PATH_UPAPFILE _ROOT_PATH "/etc/ppp/pap-secrets"
-#define _PATH_CHAPFILE _ROOT_PATH "/etc/ppp/chap-secrets"
-#define _PATH_SYSOPTIONS _ROOT_PATH "/etc/ppp/options"
-#define _PATH_IPUP _ROOT_PATH "/etc/ppp/ip-up"
-#define _PATH_IPDOWN _ROOT_PATH "/etc/ppp/ip-down"
-#define _PATH_AUTHUP _ROOT_PATH "/etc/ppp/auth-up"
-#define _PATH_AUTHDOWN _ROOT_PATH "/etc/ppp/auth-down"
-#define _PATH_TTYOPT _ROOT_PATH "/etc/ppp/options."
-#define _PATH_CONNERRS _ROOT_PATH "/etc/ppp/connect-errors"
-#define _PATH_PEERFILES _ROOT_PATH "/etc/ppp/peers/"
-#define _PATH_RESOLV _ROOT_PATH "/etc/resolv.conf"
-
-#define _PATH_USEROPT ".ppprc"
-
-#define _PATH_PPPDB _ROOT_PATH _PATH_VARRUN "pppd.tdb"
diff --git a/mdk-stage1/ppp/pppd/plugins/Makefile.linux b/mdk-stage1/ppp/pppd/plugins/Makefile.linux
deleted file mode 100644
index a64256461..000000000
--- a/mdk-stage1/ppp/pppd/plugins/Makefile.linux
+++ /dev/null
@@ -1,19 +0,0 @@
-CC = gcc
-CFLAGS = -g -O2 -I.. -I../../include -fPIC
-LDFLAGS = -shared
-INSTALL = install
-
-all: minconn.so passprompt.so
-
-minconn.so: minconn.c
- $(CC) -o $@ $(LDFLAGS) $(CFLAGS) minconn.c
-
-passprompt.so: passprompt.c
- $(CC) -o $@ $(LDFLAGS) $(CFLAGS) passprompt.c
-
-LIBDIR = /usr/lib/pppd
-
-install: minconn.so passprompt.so
- version=`awk -F '"' '/VERSION/ { print $$2; }' ../patchlevel.h`; \
- $(INSTALL) -d $(LIBDIR)/$$version; \
- $(INSTALL) $? $(LIBDIR)/$$version \ No newline at end of file
diff --git a/mdk-stage1/ppp/pppd/plugins/Makefile.sol2 b/mdk-stage1/ppp/pppd/plugins/Makefile.sol2
deleted file mode 100644
index 8f4398258..000000000
--- a/mdk-stage1/ppp/pppd/plugins/Makefile.sol2
+++ /dev/null
@@ -1,27 +0,0 @@
-#
-# Makefile for plugins on Solaris 2
-#
-# $Id$
-#
-
-include ../../svr4/Makedefs
-
-CFLAGS = -c -O -I.. -I../../include $(COPTS)
-LDFLAGS = -G
-
-all: minconn.so
-
-minconn.so: minconn.o
- ld -o $@ $(LDFLAGS) -h $@ minconn.o
-
-minconn.o: minconn.c
- $(CC) $(CFLAGS) -c $?
-
-passprompt.so: passprompt.o
- ld -o $@ $(LDFLAGS) -h $@ passprompt.o
-
-passprompt.o: passprompt.c
- $(CC) $(CFLAGS) -c $?
-
-clean:
- rm -f *.o *.so
diff --git a/mdk-stage1/ppp/pppd/plugins/minconn.c b/mdk-stage1/ppp/pppd/plugins/minconn.c
deleted file mode 100644
index 02ea34bf6..000000000
--- a/mdk-stage1/ppp/pppd/plugins/minconn.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * minconn.c - pppd plugin to implement a `minconnect' option.
- *
- * Copyright 1999 Paul Mackerras.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms. The name of the author
- * may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-#include <stddef.h>
-#include <time.h>
-#include "pppd.h"
-
-char pppd_version[] = VERSION;
-
-static int minconnect = 0;
-
-static option_t my_options[] = {
- { "minconnect", o_int, &minconnect,
- "Set minimum connect time before idle timeout applies" },
- { NULL }
-};
-
-static int my_get_idle(struct ppp_idle *idle)
-{
- time_t t;
-
- if (idle == NULL)
- return minconnect? minconnect: idle_time_limit;
- t = idle->xmit_idle;
- if (idle->recv_idle < t)
- t = idle->recv_idle;
- return idle_time_limit - t;
-}
-
-void plugin_init(void)
-{
- info("plugin_init");
- add_options(my_options);
- idle_time_hook = my_get_idle;
-}
diff --git a/mdk-stage1/ppp/pppd/plugins/passprompt.c b/mdk-stage1/ppp/pppd/plugins/passprompt.c
deleted file mode 100644
index 5e6a7f90b..000000000
--- a/mdk-stage1/ppp/pppd/plugins/passprompt.c
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * passprompt.c - pppd plugin to invoke an external PAP password prompter
- *
- * Copyright 1999 Paul Mackerras, Alan Curry.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version
- * 2 of the License, or (at your option) any later version.
- */
-#include <errno.h>
-#include <unistd.h>
-#include <sys/wait.h>
-#include <syslog.h>
-#include "pppd.h"
-
-char pppd_version[] = VERSION;
-
-static char promptprog[PATH_MAX+1];
-
-static option_t options[] = {
- { "promptprog", o_string, promptprog,
- "External PAP password prompting program",
- OPT_STATIC, NULL, PATH_MAX },
- { NULL }
-};
-
-static int promptpass(char *user, char *passwd)
-{
- int p[2];
- pid_t kid;
- int readgood, wstat;
- size_t red;
-
- if (promptprog[0] == 0 || access(promptprog, X_OK) < 0)
- return -1; /* sorry, can't help */
-
- if (!passwd)
- return 1;
-
- if (pipe(p)) {
- warn("Can't make a pipe for %s", promptprog);
- return 0;
- }
- if ((kid = fork()) == (pid_t) -1) {
- warn("Can't fork to run %s", promptprog);
- close(p[0]);
- close(p[1]);
- return 0;
- }
- if (!kid) {
- /* we are the child, exec the program */
- char *argv[4], fdstr[32];
- sys_close();
- closelog();
- close(p[0]);
- seteuid(getuid());
- setegid(getgid());
- argv[0] = promptprog;
- argv[1] = user;
- argv[2] = remote_name;
- sprintf(fdstr, "%d", p[1]);
- argv[3] = fdstr;
- argv[4] = 0;
- execv(*argv, argv);
- _exit(127);
- }
-
- /* we are the parent, read the password from the pipe */
- close(p[1]);
- readgood = 0;
- do {
- red = read(p[0], passwd + readgood, MAXSECRETLEN-1 - readgood);
- if (red == 0)
- break;
- if (red < 0) {
- error("Can't read secret from %s: %m", promptprog);
- readgood = -1;
- break;
- }
- readgood += red;
- } while (readgood < MAXSECRETLEN - 1);
- passwd[readgood] = 0;
- close(p[0]);
-
- /* now wait for child to exit */
- while (waitpid(kid, &wstat, 0) < 0) {
- if (errno != EINTR) {
- warn("error waiting for %s: %m", promptprog);
- break;
- }
- }
-
- if (readgood < 0)
- return 0;
- if (!WIFEXITED(wstat))
- warn("%s terminated abnormally", promptprog);
- if (WEXITSTATUS(wstat))
- warn("%s exited with code %d", promptprog, WEXITSTATUS(status));
-
- return 1;
-}
-
-void plugin_init(void)
-{
- add_options(options);
- pap_passwd_hook = promptpass;
-}
diff --git a/mdk-stage1/ppp/pppd/ppp.pam b/mdk-stage1/ppp/pppd/ppp.pam
deleted file mode 100644
index 475a4bc88..000000000
--- a/mdk-stage1/ppp/pppd/ppp.pam
+++ /dev/null
@@ -1,6 +0,0 @@
-#%PAM-1.0
-# Information for the PPPD process with the 'login' option.
-auth required pam_nologin.so
-auth required pam_unix.so
-account required pam_unix.so
-session required pam_unix.so \ No newline at end of file
diff --git a/mdk-stage1/ppp/pppd/pppd.8 b/mdk-stage1/ppp/pppd/pppd.8
deleted file mode 100644
index ab091cd83..000000000
--- a/mdk-stage1/ppp/pppd/pppd.8
+++ /dev/null
@@ -1,1591 +0,0 @@
-.\" manual page [] for pppd 2.4
-.\" $Id$
-.\" SH section heading
-.\" SS subsection heading
-.\" LP paragraph
-.\" IP indented paragraph
-.\" TP hanging label
-.TH PPPD 8
-.SH NAME
-pppd \- Point to Point Protocol daemon
-.SH SYNOPSIS
-.B pppd
-[
-.I tty_name
-] [
-.I speed
-] [
-.I options
-]
-.SH DESCRIPTION
-.LP
-The Point-to-Point Protocol (PPP) provides a method for transmitting
-datagrams over serial point-to-point links. PPP
-is composed of three parts: a method for encapsulating datagrams over
-serial links, an extensible Link Control Protocol (LCP), and
-a family of Network Control Protocols (NCP) for establishing
-and configuring different network-layer protocols.
-.LP
-The encapsulation scheme is provided by driver code in the kernel.
-Pppd provides the basic LCP, authentication support, and an NCP for
-establishing and configuring the Internet Protocol (IP) (called the IP
-Control Protocol, IPCP).
-.SH FREQUENTLY USED OPTIONS
-.TP
-.I <tty_name>
-Communicate over the named device. The string "/dev/" is prepended if
-necessary. If no device name is given, or if the name of the terminal
-connected to the standard input is given, pppd will use that terminal,
-and will not fork to put itself in the background. A value for this
-option from a privileged source cannot be overridden by a
-non-privileged user.
-.TP
-.I <speed>
-Set the baud rate to <speed> (a decimal number). On systems such as
-4.4BSD and NetBSD, any speed can be specified. Other systems
-(e.g. SunOS) allow only a limited set of speeds.
-.TP
-.B asyncmap \fI<map>
-Set the async character map to <map>. This map describes which
-control characters cannot be successfully received over the serial
-line. Pppd will ask the peer to send these characters as a 2-byte
-escape sequence. The argument is a 32 bit hex number with each bit
-representing a character to escape. Bit 0 (00000001) represents the
-character 0x00; bit 31 (80000000) represents the character 0x1f or ^_.
-If multiple \fIasyncmap\fR options are given, the values are ORed
-together. If no \fIasyncmap\fR option is given, no async character
-map will be negotiated for the receive direction; the peer should then
-escape \fIall\fR control characters. To escape transmitted
-characters, use the \fIescape\fR option.
-.TP
-.B auth
-Require the peer to authenticate itself before allowing network
-packets to be sent or received. This option is the default if the
-system has a default route. If neither this option nor the
-\fInoauth\fR option is specified, pppd will only allow the peer to use
-IP addresses to which the system does not already have a route.
-.TP
-.B call \fIname
-Read options from the file /etc/ppp/peers/\fIname\fR. This file may
-contain privileged options, such as \fInoauth\fR, even if pppd
-is not being run by root. The \fIname\fR string may not begin with /
-or include .. as a pathname component. The format of the options file
-is described below.
-.TP
-.B connect \fIscript
-Use the executable or shell command specified by \fIscript\fR to set
-up the serial line. This script would typically use the chat(8)
-program to dial the modem and start the remote ppp session. A value
-for this option from a privileged source cannot be overridden by a
-non-privileged user.
-.TP
-.B crtscts
-Use hardware flow control (i.e. RTS/CTS) to control the flow of
-data on the serial port. If neither the \fIcrtscts\fR, the
-\fInocrtscts\fR, the \fIcdtrcts\fR nor the \fInocdtrcts\fR option
-is given, the hardware flow control setting for the serial port is
-left unchanged.
-Some serial ports (such as Macintosh serial ports) lack a true
-RTS output. Such serial ports use this mode to implement
-unidirectional flow control. The serial port will
-suspend transmission when requested by the modem (via CTS)
-but will be unable to request the modem stop sending to the
-computer. This mode retains the ability to use DTR as
-a modem control line.
-.TP
-.B defaultroute
-Add a default route to the system routing tables, using the peer as
-the gateway, when IPCP negotiation is successfully completed.
-This entry is removed when the PPP connection is broken. This option
-is privileged if the \fInodefaultroute\fR option has been specified.
-.TP
-.B disconnect \fIscript
-Run the executable or shell command specified by \fIscript\fR after
-pppd has terminated the link. This script could, for example, issue
-commands to the modem to cause it to hang up if hardware modem control
-signals were not available. The disconnect script is not run if the
-modem has already hung up. A value for this option from a privileged
-source cannot be overridden by a non-privileged user.
-.TP
-.B escape \fIxx,yy,...
-Specifies that certain characters should be escaped on transmission
-(regardless of whether the peer requests them to be escaped with its
-async control character map). The characters to be escaped are
-specified as a list of hex numbers separated by commas. Note that
-almost any character can be specified for the \fIescape\fR option,
-unlike the \fIasyncmap\fR option which only allows control characters
-to be specified. The characters which may not be escaped are those
-with hex values 0x20 - 0x3f or 0x5e.
-.TP
-.B file \fIname
-Read options from file \fIname\fR (the format is described below).
-The file must be readable by the user who has invoked pppd.
-.TP
-.B init \fIscript
-Run the executable or shell command specified by \fIscript\fR to
-initialize the serial line. This script would typically use the
-chat(8) program to configure the modem to enable auto answer. A value
-for this option from a privileged source cannot be overridden by a
-non-privileged user.
-.TP
-.B lock
-Specifies that pppd should create a UUCP-style lock file for the
-serial device to ensure exclusive access to the device.
-.TP
-.B mru \fIn
-Set the MRU [Maximum Receive Unit] value to \fIn\fR. Pppd
-will ask the peer to send packets of no more than \fIn\fR bytes. The
-minimum MRU value is 128. The default MRU value is 1500. A value of
-296 is recommended for slow links (40 bytes for TCP/IP header + 256
-bytes of data). (Note that for IPv6 MRU must be at least 1280)
-.TP
-.B mtu \fIn
-Set the MTU [Maximum Transmit Unit] value to \fIn\fR. Unless the
-peer requests a smaller value via MRU negotiation, pppd will
-request that the kernel networking code send data packets of no more
-than \fIn\fR bytes through the PPP network interface. (Note that for
-IPv6 MTU must be at least 1280)
-.TP
-.B passive
-Enables the "passive" option in the LCP. With this option, pppd will
-attempt to initiate a connection; if no reply is received from the
-peer, pppd will then just wait passively for a valid LCP packet from
-the peer, instead of exiting, as it would without this option.
-.SH OPTIONS
-.TP
-.I <local_IP_address>\fB:\fI<remote_IP_address>
-Set the local and/or remote interface IP addresses. Either one may be
-omitted. The IP addresses can be specified with a host name or in
-decimal dot notation (e.g. 150.234.56.78). The default local
-address is the (first) IP address of the system (unless the
-\fInoipdefault\fR
-option is given). The remote address will be obtained from the peer
-if not specified in any option. Thus, in simple cases, this option is
-not required. If a local and/or remote IP address is specified with
-this option, pppd
-will not accept a different value from the peer in the IPCP
-negotiation, unless the \fIipcp-accept-local\fR and/or
-\fIipcp-accept-remote\fR options are given, respectively.
-.TP
-.B ipv6 \fI<local_interface_identifier>\fR,\fI<remote_interface_identifier>
-Set the local and/or remote 64-bit interface identifier. Either one may be
-omitted. The identifier must be specified in standard ascii notation of
-IPv6 addresses (e.g. ::dead:beef). If the
-\fIipv6cp-use-ipaddr\fR
-option is given, the local identifier is the local IPv4 address (see above).
-On systems which supports a unique persistent id, such as EUI-48 derived
-from the Ethernet MAC address, \fIipv6cp-use-persistent\fR option can be
-used to replace the \fIipv6 <local>,<remote>\fR option. Otherwise the
-identifier is randomized.
-.TP
-.B active-filter \fIfilter-expression
-Specifies a packet filter to be applied to data packets to determine
-which packets are to be regarded as link activity, and therefore reset
-the idle timer, or cause the link to be brought up in demand-dialling
-mode. This option is useful in conjunction with the
-\fBidle\fR option if there are packets being sent or received
-regularly over the link (for example, routing information packets)
-which would otherwise prevent the link from ever appearing to be idle.
-The \fIfilter-expression\fR syntax is as described for tcpdump(1),
-except that qualifiers which are inappropriate for a PPP link, such as
-\fBether\fR and \fBarp\fR, are not permitted. Generally the filter
-expression should be enclosed in single-quotes to prevent whitespace
-in the expression from being interpreted by the shell. This option
-is currently only available under NetBSD, and then only
-if both the kernel and pppd were compiled with PPP_FILTER defined.
-.TP
-.B allow-ip \fIaddress(es)
-Allow peers to use the given IP address or subnet without
-authenticating themselves. The parameter is parsed as for each
-element of the list of allowed IP addresses in the secrets files (see
-the AUTHENTICATION section below).
-.TP
-.B bsdcomp \fInr,nt
-Request that the peer compress packets that it sends, using the
-BSD-Compress scheme, with a maximum code size of \fInr\fR bits, and
-agree to compress packets sent to the peer with a maximum code size of
-\fInt\fR bits. If \fInt\fR is not specified, it defaults to the value
-given for \fInr\fR. Values in the range 9 to 15 may be used for
-\fInr\fR and \fInt\fR; larger values give better compression but
-consume more kernel memory for compression dictionaries.
-Alternatively, a value of 0 for \fInr\fR or \fInt\fR disables
-compression in the corresponding direction. Use \fInobsdcomp\fR or
-\fIbsdcomp 0\fR to disable BSD-Compress compression entirely.
-.TP
-.B cdtrcts
-Use a non-standard hardware flow control (i.e. DTR/CTS) to control
-the flow of data on the serial port. If neither the \fIcrtscts\fR,
-the \fInocrtscts\fR, the \fIcdtrcts\fR nor the \fInocdtrcts\fR
-option is given, the hardware flow control setting for the serial
-port is left unchanged.
-Some serial ports (such as Macintosh serial ports) lack a true
-RTS output. Such serial ports use this mode to implement true
-bi-directional flow control. The sacrifice is that this flow
-control mode does not permit using DTR as a modem control line.
-.TP
-.B chap-interval \fIn
-If this option is given, pppd will rechallenge the peer every \fIn\fR
-seconds.
-.TP
-.B chap-max-challenge \fIn
-Set the maximum number of CHAP challenge transmissions to \fIn\fR
-(default 10).
-.TP
-.B chap-restart \fIn
-Set the CHAP restart interval (retransmission timeout for challenges)
-to \fIn\fR seconds (default 3).
-.TP
-.B connect-delay \fIn
-Wait for up \fIn\fR milliseconds after the connect script finishes for
-a valid PPP packet from the peer. At the end of this time, or when a
-valid PPP packet is received from the peer, pppd will commence
-negotiation by sending its first LCP packet. The default value is
-1000 (1 second). This wait period only applies if the \fBconnect\fR
-or \fBpty\fR option is used.
-.TP
-.B debug
-Enables connection debugging facilities.
-If this option is given, pppd will log the contents of all
-control packets sent or received in a readable form. The packets are
-logged through syslog with facility \fIdaemon\fR and level
-\fIdebug\fR. This information can be directed to a file by setting up
-/etc/syslog.conf appropriately (see syslog.conf(5)).
-.TP
-.B default-asyncmap
-Disable asyncmap negotiation, forcing all control characters to be
-escaped for both the transmit and the receive direction.
-.TP
-.B default-mru
-Disable MRU [Maximum Receive Unit] negotiation. With this option,
-pppd will use the default MRU value of 1500 bytes for both the
-transmit and receive direction.
-.TP
-.B deflate \fInr,nt
-Request that the peer compress packets that it sends, using the
-Deflate scheme, with a maximum window size of \fI2**nr\fR bytes, and
-agree to compress packets sent to the peer with a maximum window size
-of \fI2**nt\fR bytes. If \fInt\fR is not specified, it defaults to
-the value given for \fInr\fR. Values in the range 9 to 15 may be used
-for \fInr\fR and \fInt\fR; larger values give better compression but
-consume more kernel memory for compression dictionaries.
-Alternatively, a value of 0 for \fInr\fR or \fInt\fR disables
-compression in the corresponding direction. Use \fInodeflate\fR or
-\fIdeflate 0\fR to disable Deflate compression entirely. (Note: pppd
-requests Deflate compression in preference to BSD-Compress if the peer
-can do either.)
-.TP
-.B demand
-Initiate the link only on demand, i.e. when data traffic is present.
-With this option, the remote IP address must be specified by the user
-on the command line or in an options file. Pppd will initially
-configure the interface and enable it for IP traffic without
-connecting to the peer. When traffic is available, pppd will
-connect to the peer and perform negotiation, authentication, etc.
-When this is completed, pppd will commence passing data packets
-(i.e., IP packets) across the link.
-
-The \fIdemand\fR option implies the \fIpersist\fR option. If this
-behaviour is not desired, use the \fInopersist\fR option after the
-\fIdemand\fR option. The \fIidle\fR and \fIholdoff\fR
-options are also useful in conjuction with the \fIdemand\fR option.
-.TP
-.B domain \fId
-Append the domain name \fId\fR to the local host name for authentication
-purposes. For example, if gethostname() returns the name porsche, but
-the fully qualified domain name is porsche.Quotron.COM, you could
-specify \fIdomain Quotron.COM\fR. Pppd would then use the name
-\fIporsche.Quotron.COM\fR for looking up secrets in the secrets file,
-and as the default name to send to the peer when authenticating itself
-to the peer. This option is privileged.
-.TP
-.B dryrun
-With the \fBdryrun\fR option, pppd will print out all the option
-values which have been set and then exit, after parsing the command
-line and options files and checking the option values, but before
-initiating the link. The option values are logged at level info, and
-also printed to standard output unless the device on standard output
-is the device that pppd would be using to communicate with the peer.
-.TP
-.B dump
-With the \fBdump\fR option, pppd will print out all the option values
-which have been set. This option is like the \fBdryrun\fR option
-except that pppd proceeds as normal rather than exiting.
-.TP
-.B endpoint \fI<epdisc>
-Sets the endpoint discriminator sent by the local machine to the peer
-during multilink negotiation to \fI<epdisc>\fR. The default is to use
-the MAC address of the first ethernet interface on the system, if any,
-otherwise the IPv4 address corresponding to the hostname, if any,
-provided it is not in the multicast or locally-assigned IP address
-ranges, or the localhost address. The endpoint discriminator can be
-the string \fBnull\fR or of the form \fItype\fR:\fIvalue\fR, where
-type is a decimal number or one of the strings \fBlocal\fR, \fBIP\fR,
-\fBMAC\fR, \fBmagic\fR, or \fBphone\fR. The value is an IP address in
-dotted-decimal notation for the \fBIP\fR type, or a string of bytes in
-hexadecimal, separated by periods or colons for the other types. For
-the MAC type, the value may also be the name of an ethernet or similar
-network interface. This option is currently only available under
-Linux.
-.TP
-.B hide-password
-When logging the contents of PAP packets, this option causes pppd to
-exclude the password string from the log. This is the default.
-.TP
-.B holdoff \fIn
-Specifies how many seconds to wait before re-initiating the link after
-it terminates. This option only has any effect if the \fIpersist\fR
-or \fIdemand\fR option is used. The holdoff period is not applied if
-the link was terminated because it was idle.
-.TP
-.B idle \fIn
-Specifies that pppd should disconnect if the link is idle for \fIn\fR
-seconds. The link is idle when no data packets (i.e. IP packets) are
-being sent or received. Note: it is not advisable to use this option
-with the \fIpersist\fR option without the \fIdemand\fR option.
-If the \fBactive-filter\fR
-option is given, data packets which are rejected by the specified
-activity filter also count as the link being idle.
-.TP
-.B ipcp-accept-local
-With this option, pppd will accept the peer's idea of our local IP
-address, even if the local IP address was specified in an option.
-.TP
-.B ipcp-accept-remote
-With this option, pppd will accept the peer's idea of its (remote) IP
-address, even if the remote IP address was specified in an option.
-.TP
-.B ipcp-max-configure \fIn
-Set the maximum number of IPCP configure-request transmissions to
-\fIn\fR (default 10).
-.TP
-.B ipcp-max-failure \fIn
-Set the maximum number of IPCP configure-NAKs returned before starting
-to send configure-Rejects instead to \fIn\fR (default 10).
-.TP
-.B ipcp-max-terminate \fIn
-Set the maximum number of IPCP terminate-request transmissions to
-\fIn\fR (default 3).
-.TP
-.B ipcp-restart \fIn
-Set the IPCP restart interval (retransmission timeout) to \fIn\fR
-seconds (default 3).
-.TP
-.B ipparam \fIstring
-Provides an extra parameter to the ip-up and ip-down scripts. If this
-option is given, the \fIstring\fR supplied is given as the 6th
-parameter to those scripts.
-.TP
-.B ipv6cp-max-configure \fIn
-Set the maximum number of IPv6CP configure-request transmissions to
-\fIn\fR (default 10).
-.TP
-.B ipv6cp-max-failure \fIn
-Set the maximum number of IPv6CP configure-NAKs returned before starting
-to send configure-Rejects instead to \fIn\fR (default 10).
-.TP
-.B ipv6cp-max-terminate \fIn
-Set the maximum number of IPv6CP terminate-request transmissions to
-\fIn\fR (default 3).
-.TP
-.B ipv6cp-restart \fIn
-Set the IPv6CP restart interval (retransmission timeout) to \fIn\fR
-seconds (default 3).
-.TP
-.B ipx
-Enable the IPXCP and IPX protocols. This option is presently only
-supported under Linux, and only if your kernel has been configured to
-include IPX support.
-.TP
-.B ipx-network \fIn
-Set the IPX network number in the IPXCP configure request frame to
-\fIn\fR, a hexadecimal number (without a leading 0x). There is no
-valid default. If this option is not specified, the network number is
-obtained from the peer. If the peer does not have the network number,
-the IPX protocol will not be started.
-.TP
-.B ipx-node \fIn\fB:\fIm
-Set the IPX node numbers. The two node numbers are separated from each
-other with a colon character. The first number \fIn\fR is the local
-node number. The second number \fIm\fR is the peer's node number. Each
-node number is a hexadecimal number, at most 10 digits long. The node
-numbers on the ipx-network must be unique. There is no valid
-default. If this option is not specified then the node numbers are
-obtained from the peer.
-.TP
-.B ipx-router-name \fI<string>
-Set the name of the router. This is a string and is sent to the peer
-as information data.
-.TP
-.B ipx-routing \fIn
-Set the routing protocol to be received by this option. More than one
-instance of \fIipx-routing\fR may be specified. The '\fInone\fR'
-option (0) may be specified as the only instance of ipx-routing. The
-values may be \fI0\fR for \fINONE\fR, \fI2\fR for \fIRIP/SAP\fR, and
-\fI4\fR for \fINLSP\fR.
-.TP
-.B ipxcp-accept-local
-Accept the peer's NAK for the node number specified in the ipx-node
-option. If a node number was specified, and non-zero, the default is
-to insist that the value be used. If you include this option then you
-will permit the peer to override the entry of the node number.
-.TP
-.B ipxcp-accept-network
-Accept the peer's NAK for the network number specified in the
-ipx-network option. If a network number was specified, and non-zero, the
-default is to insist that the value be used. If you include this
-option then you will permit the peer to override the entry of the node
-number.
-.TP
-.B ipxcp-accept-remote
-Use the peer's network number specified in the configure request
-frame. If a node number was specified for the peer and this option was
-not specified, the peer will be forced to use the value which you have
-specified.
-.TP
-.B ipxcp-max-configure \fIn
-Set the maximum number of IPXCP configure request frames which the
-system will send to \fIn\fR. The default is 10.
-.TP
-.B ipxcp-max-failure \fIn
-Set the maximum number of IPXCP NAK frames which the local system will
-send before it rejects the options. The default value is 3.
-.TP
-.B ipxcp-max-terminate \fIn
-Set the maximum nuber of IPXCP terminate request frames before the
-local system considers that the peer is not listening to them. The
-default value is 3.
-.TP
-.B kdebug \fIn
-Enable debugging code in the kernel-level PPP driver. The argument
-values depend on the specific kernel driver, but in general a value of
-1 will enable general kernel debug messages. (Note that these
-messages are usually only useful for debugging the kernel driver
-itself.) For the Linux 2.2.x kernel driver, the value is a sum of
-bits: 1 to
-enable general debug messages, 2 to request that the contents of
-received packets be printed, and 4 to request that the contents of
-transmitted packets be printed. On most systems, messages printed by
-the kernel are logged by syslog(1) to a file as directed in the
-/etc/syslog.conf configuration file.
-.TP
-.B ktune
-Enables pppd to alter kernel settings as appropriate. Under Linux,
-pppd will enable IP forwarding (i.e. set /proc/sys/net/ipv4/ip_forward
-to 1) if the \fIproxyarp\fR option is used, and will enable the
-dynamic IP address option (i.e. set /proc/sys/net/ipv4/ip_dynaddr to
-1) in demand mode if the local address changes.
-.TP
-.B lcp-echo-failure \fIn
-If this option is given, pppd will presume the peer to be dead
-if \fIn\fR LCP echo-requests are sent without receiving a valid LCP
-echo-reply. If this happens, pppd will terminate the
-connection. Use of this option requires a non-zero value for the
-\fIlcp-echo-interval\fR parameter. This option can be used to enable
-pppd to terminate after the physical connection has been broken
-(e.g., the modem has hung up) in situations where no hardware modem
-control lines are available.
-.TP
-.B lcp-echo-interval \fIn
-If this option is given, pppd will send an LCP echo-request frame to
-the peer every \fIn\fR seconds. Normally the peer should respond to
-the echo-request by sending an echo-reply. This option can be used
-with the \fIlcp-echo-failure\fR option to detect that the peer is no
-longer connected.
-.TP
-.B lcp-max-configure \fIn
-Set the maximum number of LCP configure-request transmissions to
-\fIn\fR (default 10).
-.TP
-.B lcp-max-failure \fIn
-Set the maximum number of LCP configure-NAKs returned before starting
-to send configure-Rejects instead to \fIn\fR (default 10).
-.TP
-.B lcp-max-terminate \fIn
-Set the maximum number of LCP terminate-request transmissions to
-\fIn\fR (default 3).
-.TP
-.B lcp-restart \fIn
-Set the LCP restart interval (retransmission timeout) to \fIn\fR
-seconds (default 3).
-.TP
-.B linkname \fIname\fR
-Sets the logical name of the link to \fIname\fR. Pppd will create a
-file named \fBppp-\fIname\fB.pid\fR in /var/run (or /etc/ppp on some
-systems) containing its process ID. This can be useful in determining
-which instance of pppd is responsible for the link to a given peer
-system. This is a privileged option.
-.TP
-.B local
-Don't use the modem control lines. With this option, pppd will ignore
-the state of the CD (Carrier Detect) signal from the modem and will
-not change the state of the DTR (Data Terminal Ready) signal.
-.TP
-.B logfd \fIn
-Send log messages to file descriptor \fIn\fR. Pppd will send log
-messages to at most one file or file descriptor (as well as sending
-the log messages to syslog), so this option and the \fBlogfile\fR
-option are mutually exclusive. The default is for pppd to send log
-messages to stdout (file descriptor 1), unless the serial port is
-already open on stdout.
-.TP
-.B logfile \fIfilename
-Append log messages to the file \fIfilename\fR (as well as sending the
-log messages to syslog). The file is opened with the privileges of
-the user who invoked pppd, in append mode.
-.TP
-.B login
-Use the system password database for authenticating the peer using
-PAP, and record the user in the system wtmp file. Note that the peer
-must have an entry in the /etc/ppp/pap-secrets file as well as the
-system password database to be allowed access.
-.TP
-.B maxconnect \fIn
-Terminate the connection when it has been available for network
-traffic for \fIn\fR seconds (i.e. \fIn\fR seconds after the first
-network control protocol comes up).
-.TP
-.B maxfail \fIn
-Terminate after \fIn\fR consecutive failed connection attempts. A
-value of 0 means no limit. The default value is 10.
-.TP
-.B modem
-Use the modem control lines. This option is the default. With this
-option, pppd will wait for the CD (Carrier Detect) signal from the
-modem to be asserted when opening the serial device (unless a connect
-script is specified), and it will drop the DTR (Data Terminal Ready)
-signal briefly when the connection is terminated and before executing
-the connect script. On Ultrix, this option implies hardware flow
-control, as for the \fIcrtscts\fR option.
-.TP
-.B mp
-Enables the use of PPP multilink; this is an alias for the `multilink'
-option. This option is currently only available under Linux.
-.TP
-.B mpshortseq
-Enables the use of short (12-bit) sequence numbers in multilink
-headers, as opposed to 24-bit sequence numbers. This option is only
-available under Linux, and only has any effect if multilink is
-enabled (see the multilink option).
-.TP
-.B mrru \fIn
-Sets the Maximum Reconstructed Receive Unit to \fIn\fR. The MRRU is
-the maximum size for a received packet on a multilink bundle, and is
-analogous to the MRU for the individual links. This option is
-currently only available under Linux, and only has any effect if
-multilink is enabled (see the multilink option).
-.TP
-.B ms-dns \fI<addr>
-If pppd is acting as a server for Microsoft Windows clients, this
-option allows pppd to supply one or two DNS (Domain Name Server)
-addresses to the clients. The first instance of this option specifies
-the primary DNS address; the second instance (if given) specifies the
-secondary DNS address. (This option was present in some older
-versions of pppd under the name \fBdns-addr\fR.)
-.TP
-.B ms-wins \fI<addr>
-If pppd is acting as a server for Microsoft Windows or "Samba"
-clients, this option allows pppd to supply one or two WINS (Windows
-Internet Name Services) server addresses to the clients. The first
-instance of this option specifies the primary WINS address; the second
-instance (if given) specifies the secondary WINS address.
-.TP
-.B multilink
-Enables the use of the PPP multilink protocol. If the peer also
-supports multilink, then this link can become part of a bundle between
-the local system and the peer. If there is an existing bundle to the
-peer, pppd will join this link to that bundle, otherwise pppd will
-create a new bundle. See the MULTILINK section below. This option is
-currently only available under Linux.
-.TP
-.B name \fIname
-Set the name of the local system for authentication purposes to
-\fIname\fR. This is a privileged option. With this option, pppd will
-use lines in the secrets files which have \fIname\fR as the second
-field when looking for a secret to use in authenticating the peer. In
-addition, unless overridden with the \fIuser\fR option, \fIname\fR
-will be used as the name to send to the peer when authenticating the
-local system to the peer. (Note that pppd does not append the domain
-name to \fIname\fR.)
-.TP
-.B netmask \fIn
-Set the interface netmask to \fIn\fR, a 32 bit netmask in "decimal dot"
-notation (e.g. 255.255.255.0). If this option is given, the value
-specified is ORed with the default netmask. The default netmask is
-chosen based on the negotiated remote IP address; it is the
-appropriate network mask for the class of the remote IP address, ORed
-with the netmasks for any non point-to-point network interfaces in the
-system which are on the same network. (Note: on some platforms, pppd
-will always use 255.255.255.255 for the netmask, if that is the only
-appropriate value for a point-to-point interface.)
-.TP
-.B noaccomp
-Disable Address/Control compression in both directions (send and
-receive).
-.TP
-.B noauth
-Do not require the peer to authenticate itself. This option is
-privileged.
-.TP
-.B nobsdcomp
-Disables BSD-Compress compression; \fBpppd\fR will not request or
-agree to compress packets using the BSD-Compress scheme.
-.TP
-.B noccp
-Disable CCP (Compression Control Protocol) negotiation. This option
-should only be required if the peer is buggy and gets confused by
-requests from pppd for CCP negotiation.
-.TP
-.B nocrtscts
-Disable hardware flow control (i.e. RTS/CTS) on the serial port.
-If neither the \fIcrtscts\fR nor the \fInocrtscts\fR nor the
-\fIcdtrcts\fR nor the \fInocdtrcts\fR option is given, the hardware
-flow control setting for the serial port is left unchanged.
-.TP
-.B nocdtrcts
-This option is a synonym for \fInocrtscts\fR. Either of these options will
-disable both forms of hardware flow control.
-.TP
-.B nodefaultroute
-Disable the \fIdefaultroute\fR option. The system administrator who
-wishes to prevent users from creating default routes with pppd
-can do so by placing this option in the /etc/ppp/options file.
-.TP
-.B nodeflate
-Disables Deflate compression; pppd will not request or agree to
-compress packets using the Deflate scheme.
-.TP
-.B nodetach
-Don't detach from the controlling terminal. Without this option, if a
-serial device other than the terminal on the standard input is
-specified, pppd will fork to become a background process.
-.TP
-.B noendpoint
-Disables pppd from sending an endpoint discriminator to the peer or
-accepting one from the peer (see the MULTILINK section below). This
-option should only be required if the peer is buggy.
-.TP
-.B noip
-Disable IPCP negotiation and IP communication. This option should
-only be required if the peer is buggy and gets confused by requests
-from pppd for IPCP negotiation.
-.TP
-.B noipv6
-Disable IPv6CP negotiation and IPv6 communication. This option should
-only be required if the peer is buggy and gets confused by requests
-from pppd for IPv6CP negotiation.
-.TP
-.B noipdefault
-Disables the default behaviour when no local IP address is specified,
-which is to determine (if possible) the local IP address from the
-hostname. With this option, the peer will have to supply the local IP
-address during IPCP negotiation (unless it specified explicitly on the
-command line or in an options file).
-.TP
-.B noipx
-Disable the IPXCP and IPX protocols. This option should only be
-required if the peer is buggy and gets confused by requests from pppd
-for IPXCP negotiation.
-.TP
-.B noktune
-Opposite of the \fIktune\fR option; disables pppd from changing system
-settings.
-.TP
-.B nolog
-Do not send log messages to a file or file descriptor. This option
-cancels the \fBlogfd\fR and \fBlogfile\fR options.
-.TP
-.B nomagic
-Disable magic number negotiation. With this option, pppd cannot
-detect a looped-back line. This option should only be needed if the
-peer is buggy.
-.TP
-.B nomp
-Disables the use of PPP multilink. This option is currently only
-available under Linux.
-.TP
-.B nompshortseq
-Disables the use of short (12-bit) sequence numbers in the PPP
-multilink protocol, forcing the use of 24-bit sequence numbers. This
-option is currently only available under Linux, and only has any
-effect if multilink is enabled.
-.TP
-.B nomultilink
-Disables the use of PPP multilink. This option is currently only
-available under Linux.
-.TP
-.B nopcomp
-Disable protocol field compression negotiation in both the receive and
-the transmit direction.
-.TP
-.B nopersist
-Exit once a connection has been made and terminated. This is the
-default unless the \fIpersist\fR or \fIdemand\fR option has been
-specified.
-.TP
-.B nopredictor1
-Do not accept or agree to Predictor-1 compression.
-.TP
-.B noproxyarp
-Disable the \fIproxyarp\fR option. The system administrator who
-wishes to prevent users from creating proxy ARP entries with pppd can
-do so by placing this option in the /etc/ppp/options file.
-.TP
-.B notty
-Normally, pppd requires a terminal device. With this option, pppd
-will allocate itself a pseudo-tty master/slave pair and use the slave
-as its terminal device. Pppd will create a child process to act as a
-`character shunt' to transfer characters between the pseudo-tty master
-and its standard input and output. Thus pppd will transmit characters
-on its standard output and receive characters on its standard input
-even if they are not terminal devices. This option increases the
-latency and CPU overhead of transferring data over the ppp interface
-as all of the characters sent and received must flow through the
-character shunt process. An explicit device name may not be given if
-this option is used.
-.TP
-.B novj
-Disable Van Jacobson style TCP/IP header compression in both the
-transmit and the receive direction.
-.TP
-.B novjccomp
-Disable the connection-ID compression option in Van Jacobson style
-TCP/IP header compression. With this option, pppd will not omit the
-connection-ID byte from Van Jacobson compressed TCP/IP headers, nor
-ask the peer to do so.
-.TP
-.B papcrypt
-Indicates that all secrets in the /etc/ppp/pap-secrets file which are
-used for checking the identity of the peer are encrypted, and thus
-pppd should not accept a password which, before encryption, is
-identical to the secret from the /etc/ppp/pap-secrets file.
-.TP
-.B pap-max-authreq \fIn
-Set the maximum number of PAP authenticate-request transmissions to
-\fIn\fR (default 10).
-.TP
-.B pap-restart \fIn
-Set the PAP restart interval (retransmission timeout) to \fIn\fR
-seconds (default 3).
-.TP
-.B pap-timeout \fIn
-Set the maximum time that pppd will wait for the peer to authenticate
-itself with PAP to \fIn\fR seconds (0 means no limit).
-.TP
-.B pass-filter \fIfilter-expression
-Specifies a packet filter to applied to data packets being sent or
-received to determine which packets should be allowed to pass.
-Packets which are rejected by the filter are silently discarded. This
-option can be used to prevent specific network daemons (such as
-routed) using up link bandwidth, or to provide a basic firewall
-capability.
-The \fIfilter-expression\fR syntax is as described for tcpdump(1),
-except that qualifiers which are inappropriate for a PPP link, such as
-\fBether\fR and \fBarp\fR, are not permitted. Generally the filter
-expression should be enclosed in single-quotes to prevent whitespace
-in the expression from being interpreted by the shell. Note that it
-is possible to apply different constraints to incoming and outgoing
-packets using the \fBinbound\fR and \fBoutbound\fR qualifiers. This
-option is currently only available under NetBSD, and then only if both
-the kernel and pppd were compiled with PPP_FILTER defined.
-.TP
-.B persist
-Do not exit after a connection is terminated; instead try to reopen
-the connection.
-.TP
-.B plugin \fIfilename
-Load the shared library object file \fIfilename\fR as a plugin. This
-is a privileged option.
-.TP
-.B predictor1
-Request that the peer compress frames that it sends using Predictor-1
-compression, and agree to compress transmitted frames with Predictor-1
-if requested. This option has no effect unless the kernel driver
-supports Predictor-1 compression.
-.TP
-.B privgroup \fIgroup-name
-Allows members of group \fIgroup-name\fR to use privileged options.
-This is a privileged option. Use of this option requires care as
-there is no guarantee that members of \fIgroup-name\fR cannot use pppd
-to become root themselves. Consider it equivalent to putting the
-members of \fIgroup-name\fR in the kmem or disk group.
-.TP
-.B proxyarp
-Add an entry to this system's ARP [Address Resolution Protocol] table
-with the IP address of the peer and the Ethernet address of this
-system. This will have the effect of making the peer appear to other
-systems to be on the local ethernet.
-.TP
-.B pty \fIscript
-Specifies that the command \fIscript\fR is to be used to communicate
-rather than a specific terminal device. Pppd will allocate itself a
-pseudo-tty master/slave pair and use the slave as its terminal
-device. The \fIscript\fR will be run in a child process with the
-pseudo-tty master as its standard input and output. An explicit
-device name may not be given if this option is used. (Note: if the
-\fIrecord\fR option is used in conjuction with the \fIpty\fR option,
-the child process will have pipes on its standard input and output.)
-.TP
-.B receive-all
-With this option, pppd will accept all control characters from the
-peer, including those marked in the receive asyncmap. Without this
-option, pppd will discard those characters as specified in RFC1662.
-This option should only be needed if the peer is buggy.
-.TP
-.B record \fIfilename
-Specifies that pppd should record all characters sent and received to
-a file named \fIfilename\fR. This file is opened in append mode,
-using the user's user-ID and permissions. This option is implemented
-using a pseudo-tty and a process to transfer characters between the
-pseudo-tty and the real serial device, so it will increase the latency
-and CPU overhead of transferring data over the ppp interface. The
-characters are stored in a tagged format with timestamps, which can be
-displayed in readable form using the pppdump(8) program.
-.TP
-.B remotename \fIname
-Set the assumed name of the remote system for authentication purposes
-to \fIname\fR.
-.TP
-.B refuse-chap
-With this option, pppd will not agree to authenticate itself to the
-peer using CHAP.
-.TP
-.B refuse-pap
-With this option, pppd will not agree to authenticate itself to the
-peer using PAP.
-.TP
-.B require-chap
-Require the peer to authenticate itself using CHAP [Challenge
-Handshake Authentication Protocol] authentication.
-.TP
-.B require-pap
-Require the peer to authenticate itself using PAP [Password
-Authentication Protocol] authentication.
-.TP
-.B show-password
-When logging the contents of PAP packets, this option causes pppd to
-show the password string in the log message.
-.TP
-.B silent
-With this option, pppd will not transmit LCP packets to initiate a
-connection until a valid LCP packet is received from the peer (as for
-the `passive' option with ancient versions of pppd).
-.TP
-.B sync
-Use synchronous HDLC serial encoding instead of asynchronous.
-The device used by pppd with this option must have sync support.
-Currently supports Microgate SyncLink adapters
-under Linux and FreeBSD 2.2.8 and later.
-.TP
-.B updetach
-With this option, pppd will detach from its controlling terminal once
-it has successfully established the ppp connection (to the point where
-the first network control protocol, usually the IP control protocol,
-has come up).
-.TP
-.B usehostname
-Enforce the use of the hostname (with domain name appended, if given)
-as the name of the local system for authentication purposes (overrides
-the \fIname\fR option). This option is not normally needed since the
-\fIname\fR option is privileged.
-.TP
-.B usepeerdns
-Ask the peer for up to 2 DNS server addresses. The addresses supplied
-by the peer (if any) are passed to the /etc/ppp/ip-up script in the
-environment variables DNS1 and DNS2. In addition, pppd will create an
-/etc/ppp/resolv.conf file containing one or two nameserver lines with
-the address(es) supplied by the peer.
-.TP
-.B user \fIname
-Sets the name used for authenticating the local system to the peer to
-\fIname\fR.
-.TP
-.B vj-max-slots \fIn
-Sets the number of connection slots to be used by the Van Jacobson
-TCP/IP header compression and decompression code to \fIn\fR, which
-must be between 2 and 16 (inclusive).
-.TP
-.B welcome \fIscript
-Run the executable or shell command specified by \fIscript\fR before
-initiating PPP negotiation, after the connect script (if any) has
-completed. A value for this option from a privileged source cannot be
-overridden by a non-privileged user.
-.TP
-.B xonxoff
-Use software flow control (i.e. XON/XOFF) to control the flow of data on
-the serial port.
-.SH OPTIONS FILES
-Options can be taken from files as well as the command line. Pppd
-reads options from the files /etc/ppp/options, ~/.ppprc and
-/etc/ppp/options.\fIttyname\fR (in that order) before processing the
-options on the command line. (In fact, the command-line options are
-scanned to find the terminal name before the options.\fIttyname\fR
-file is read.) In forming the name of the options.\fIttyname\fR file,
-the initial /dev/ is removed from the terminal name, and any remaining
-/ characters are replaced with dots.
-.PP
-An options file is parsed into a series of words, delimited by
-whitespace. Whitespace can be included in a word by enclosing the
-word in double-quotes ("). A backslash (\\) quotes the following character.
-A hash (#) starts a comment, which continues until the end of the
-line. There is no restriction on using the \fIfile\fR or \fIcall\fR
-options within an options file.
-.SH SECURITY
-.I pppd
-provides system administrators with sufficient access control that PPP
-access to a server machine can be provided to legitimate users without
-fear of compromising the security of the server or the network it's
-on. This control is provided through restrictions on which IP
-addresses the peer may use, based on its authenticated identity (if
-any), and through restrictions on which options a non-privileged user
-may use. Several of pppd's options are privileged, in particular
-those which permit potentially insecure configurations; these options
-are only accepted in files which are under the control of the system
-administrator, or if pppd is being run by root.
-.PP
-The default behaviour of pppd is to allow an unauthenticated peer to
-use a given IP address only if the system does not already have a
-route to that IP address. For example, a system with a
-permanent connection to the wider internet will normally have a
-default route, and thus all peers will have to authenticate themselves
-in order to set up a connection. On such a system, the \fIauth\fR
-option is the default. On the other hand, a system where the
-PPP link is the only connection to the internet will not normally have
-a default route, so the peer will be able to use almost any IP address
-without authenticating itself.
-.PP
-As indicated above, some security-sensitive options are privileged,
-which means that they may not be used by an ordinary non-privileged
-user running a setuid-root pppd, either on the command line, in the
-user's ~/.ppprc file, or in an options file read using the \fIfile\fR
-option. Privileged options may be used in /etc/ppp/options file or in
-an options file read using the \fIcall\fR option. If pppd is being
-run by the root user, privileged options can be used without
-restriction.
-.PP
-When opening the device, pppd uses either the invoking user's user ID
-or the root UID (that is, 0), depending on whether the device name was
-specified by the user or the system administrator. If the device name
-comes from a privileged source, that is, /etc/ppp/options or an
-options file read using the \fIcall\fR option, pppd uses full root
-privileges when opening the device. Thus, by creating an appropriate
-file under /etc/ppp/peers, the system administrator can allow users to
-establish a ppp connection via a device which they would not normally
-have permission to access. Otherwise pppd uses the invoking user's
-real UID when opening the device.
-.SH AUTHENTICATION
-Authentication is the process whereby one peer convinces the other of
-its identity. This involves the first peer sending its name to the
-other, together with some kind of secret information which could only
-come from the genuine authorized user of that name. In such an
-exchange, we will call the first peer the "client" and the other the
-"server". The client has a name by which it identifies itself to the
-server, and the server also has a name by which it identifies itself
-to the client. Generally the genuine client shares some secret (or
-password) with the server, and authenticates itself by proving that it
-knows that secret. Very often, the names used for authentication
-correspond to the internet hostnames of the peers, but this is not
-essential.
-.LP
-At present, pppd supports two authentication protocols: the Password
-Authentication Protocol (PAP) and the Challenge Handshake
-Authentication Protocol (CHAP). PAP involves the client sending its
-name and a cleartext password to the server to authenticate itself.
-In contrast, the server initiates the CHAP authentication exchange by
-sending a challenge to the client (the challenge packet includes the
-server's name). The client must respond with a response which
-includes its name plus a hash value derived from the shared secret and
-the challenge, in order to prove that it knows the secret.
-.LP
-The PPP protocol, being symmetrical, allows both peers to require the
-other to authenticate itself. In that case, two separate and
-independent authentication exchanges will occur. The two exchanges
-could use different authentication protocols, and in principle,
-different names could be used in the two exchanges.
-.LP
-The default behaviour of pppd is to agree to authenticate if
-requested, and to not require authentication from the peer. However,
-pppd will not agree to authenticate itself with a particular protocol
-if it has no secrets which could be used to do so.
-.LP
-Pppd stores secrets for use in authentication in secrets
-files (/etc/ppp/pap-secrets for PAP, /etc/ppp/chap-secrets for CHAP).
-Both secrets files have the same format. The secrets files can
-contain secrets for pppd to use in authenticating itself to other
-systems, as well as secrets for pppd to use when authenticating other
-systems to itself.
-.LP
-Each line in a secrets file contains one secret. A given secret is
-specific to a particular combination of client and server - it can
-only be used by that client to authenticate itself to that server.
-Thus each line in a secrets file has at least 3 fields: the name of
-the client, the name of the server, and the secret. These fields may
-be followed by a list of the IP addresses that the specified client
-may use when connecting to the specified server.
-.LP
-A secrets file is parsed into words as for a options file, so the
-client name, server name and secrets fields must each be one word,
-with any embedded spaces or other special characters quoted or
-escaped. Note that case is significant in the client and server names
-and in the secret.
-.LP
-If the secret starts with an `@', what follows is assumed to be the
-name of a file from which to read the secret. A "*" as the client or
-server name matches any name. When selecting a secret, pppd takes the
-best match, i.e. the match with the fewest wildcards.
-.LP
-Any following words on the same line are taken to be a list of
-acceptable IP addresses for that client. If there are only 3 words on
-the line, or if the first word is "-", then all IP addresses are
-disallowed. To allow any address, use "*". A word starting with "!"
-indicates that the specified address is \fInot\fR acceptable. An
-address may be followed by "/" and a number \fIn\fR, to indicate a
-whole subnet, i.e. all addresses which have the same value in the most
-significant \fIn\fR bits. In this form, the address may be followed
-by a plus sign ("+") to indicate that one address from the subnet is
-authorized, based on the ppp network interface unit number in use.
-In this case, the host part of the address will be set to the unit
-number plus one.
-.LP
-Thus a secrets file contains both secrets for use in authenticating
-other hosts, plus secrets which we use for authenticating ourselves to
-others. When pppd is authenticating the peer (checking the peer's
-identity), it chooses a secret with the peer's name in the first
-field and the name of the local system in the second field. The
-name of the local system defaults to the hostname, with the domain
-name appended if the \fIdomain\fR option is used. This default can be
-overridden with the \fIname\fR option, except when the
-\fIusehostname\fR option is used.
-.LP
-When pppd is choosing a secret to use in authenticating itself to the
-peer, it first determines what name it is going to use to identify
-itself to the peer. This name can be specified by the user with the
-\fIuser\fR option. If this option is not used, the name defaults to
-the name of the local system, determined as described in the previous
-paragraph. Then pppd looks for a secret with this name in the first
-field and the peer's name in the second field. Pppd will know the
-name of the peer if CHAP authentication is being used, because the
-peer will have sent it in the challenge packet. However, if PAP is being
-used, pppd will have to determine the peer's name from the options
-specified by the user. The user can specify the peer's name directly
-with the \fIremotename\fR option. Otherwise, if the remote IP address
-was specified by a name (rather than in numeric form), that name will
-be used as the peer's name. Failing that, pppd will use the null
-string as the peer's name.
-.LP
-When authenticating the peer with PAP, the supplied password is first
-compared with the secret from the secrets file. If the password
-doesn't match the secret, the password is encrypted using crypt() and
-checked against the secret again. Thus secrets for authenticating the
-peer can be stored in encrypted form if desired. If the
-\fIpapcrypt\fR option is given, the first (unencrypted) comparison is
-omitted, for better security.
-.LP
-Furthermore, if the \fIlogin\fR option was specified, the username and
-password are also checked against the system password database. Thus,
-the system administrator can set up the pap-secrets file to allow PPP
-access only to certain users, and to restrict the set of IP addresses
-that each user can use. Typically, when using the \fIlogin\fR option,
-the secret in /etc/ppp/pap-secrets would be "", which will match any
-password supplied by the peer. This avoids the need to have the same
-secret in two places.
-.LP
-Authentication must be satisfactorily completed before IPCP (or any
-other Network Control Protocol) can be started. If the peer is
-required to authenticate itself, and fails to do so, pppd will
-terminated the link (by closing LCP). If IPCP negotiates an
-unacceptable IP address for the remote host, IPCP will be closed. IP
-packets can only be sent or received when IPCP is open.
-.LP
-In some cases it is desirable to allow some hosts which can't
-authenticate themselves to connect and use one of a restricted set of
-IP addresses, even when the local host generally requires
-authentication. If the peer refuses to authenticate itself when
-requested, pppd takes that as equivalent to authenticating with PAP
-using the empty string for the username and password. Thus, by adding
-a line to the pap-secrets file which specifies the empty string for
-the client and password, it is possible to allow restricted access to
-hosts which refuse to authenticate themselves.
-.SH ROUTING
-.LP
-When IPCP negotiation is completed successfully, pppd will inform the
-kernel of the local and remote IP addresses for the ppp interface.
-This is sufficient to create a host route to the remote end of the
-link, which will enable the peers to exchange IP packets.
-Communication with other machines generally requires further
-modification to routing tables and/or ARP (Address Resolution
-Protocol) tables. In most cases the \fIdefaultroute\fR and/or
-\fIproxyarp\fR options are sufficient for this, but in some cases
-further intervention is required. The /etc/ppp/ip-up script can be
-used for this.
-.LP
-Sometimes it is desirable to add a default route through the remote
-host, as in the case of a machine whose only connection to the
-Internet is through the ppp interface. The \fIdefaultroute\fR option
-causes pppd to create such a default route when IPCP comes up, and
-delete it when the link is terminated.
-.LP
-In some cases it is desirable to use proxy ARP, for example on a
-server machine connected to a LAN, in order to allow other hosts to
-communicate with the remote host. The \fIproxyarp\fR option causes
-pppd to look for a network interface on the same subnet as the remote
-host (an interface supporting broadcast and ARP, which is up and not a
-point-to-point or loopback interface). If found, pppd creates a
-permanent, published ARP entry with the IP address of the remote host
-and the hardware address of the network interface found.
-.LP
-When the \fIdemand\fR option is used, the interface IP addresses have
-already been set at the point when IPCP comes up. If pppd has not
-been able to negotiate the same addresses that it used to configure
-the interface (for example when the peer is an ISP that uses dynamic
-IP address assignment), pppd has to change the interface IP addresses
-to the negotiated addresses. This may disrupt existing connections,
-and the use of demand dialling with peers that do dynamic IP address
-assignment is not recommended.
-.SH MULTILINK
-Multilink PPP provides the capability to combine two or more PPP links
-between a pair of machines into a single `bundle', which appears as a
-single virtual PPP link which has the combined bandwidth of the
-individual links. Currently, multilink PPP is only supported under
-Linux.
-.LP
-Pppd detects that the link it is controlling is connected to the same
-peer as another link using the peer's endpoint discriminator and the
-authenticated identity of the peer (if it authenticates itself). The
-endpoint discriminator is a block of data which is hopefully unique
-for each peer. Several types of data can be used, including
-locally-assigned strings of bytes, IP addresses, MAC addresses,
-randomly strings of bytes, or E-164 phone numbers. The endpoint
-discriminator sent to the peer by pppd can be set using the endpoint
-option.
-.LP
-In circumstances the peer may send no endpoint discriminator or a
-non-unique value. The optional bundle option adds an extra string
-which is added to the peer's endpoint discriminator and authenticated
-identity when matching up links to be joined together in a bundle.
-The bundle option can also be used to allow the establishment of
-multiple bundles between the local system and the peer. Pppd uses a
-TDB database in /var/run/pppd.tdb to match up links.
-.LP
-Assuming that multilink is enabled and the peer is willing to
-negotiate multilink, then when pppd is invoked to bring up the first
-link to the peer, it will detect that no other link is connected to
-the peer and create a new bundle, that is, another ppp network
-interface unit. When another pppd is invoked to bring up another link
-to the peer, it will detect the existing bundle and join its link to
-it. Currently, if the first pppd terminates (for example, because of
-a hangup or a received signal) the bundle is destroyed.
-.SH EXAMPLES
-.LP
-The following examples assume that the /etc/ppp/options file contains
-the \fIauth\fR option (as in the default /etc/ppp/options file in the
-ppp distribution).
-.LP
-Probably the most common use of pppd is to dial out to an ISP. This
-can be done with a command such as
-.IP
-pppd call isp
-.LP
-where the /etc/ppp/peers/isp file is set up by the system
-administrator to contain something like this:
-.IP
-ttyS0 19200 crtscts
-.br
-connect '/usr/sbin/chat -v -f /etc/ppp/chat-isp'
-.br
-noauth
-.LP
-In this example, we are using chat to dial the ISP's modem and go
-through any logon sequence required. The /etc/ppp/chat-isp file
-contains the script used by chat; it could for example contain
-something like this:
-.IP
-ABORT "NO CARRIER"
-.br
-ABORT "NO DIALTONE"
-.br
-ABORT "ERROR"
-.br
-ABORT "NO ANSWER"
-.br
-ABORT "BUSY"
-.br
-ABORT "Username/Password Incorrect"
-.br
-"" "at"
-.br
-OK "at&d0&c1"
-.br
-OK "atdt2468135"
-.br
-"name:" "^Umyuserid"
-.br
-"word:" "\\qmypassword"
-.br
-"ispts" "\\q^Uppp"
-.br
-"~-^Uppp-~"
-.LP
-See the chat(8) man page for details of chat scripts.
-.LP
-Pppd can also be used to provide a dial-in ppp service for users. If
-the users already have login accounts, the simplest way to set up the
-ppp service is to let the users log in to their accounts and run pppd
-(installed setuid-root) with a command such as
-.IP
-pppd proxyarp
-.LP
-To allow a user to use the PPP facilities, you need to allocate an IP
-address for that user's machine and create an entry in
-/etc/ppp/pap-secrets or /etc/ppp/chap-secrets (depending on which
-authentication method the PPP implementation on the user's machine
-supports), so that the user's
-machine can authenticate itself. For example, if Joe has a machine
-called "joespc" which is to be allowed to dial in to the machine
-called "server" and use the IP address joespc.my.net, you would add an
-entry like this to /etc/ppp/pap-secrets or /etc/ppp/chap-secrets:
-.IP
-joespc server "joe's secret" joespc.my.net
-.LP
-Alternatively, you can create a username called (for example) "ppp",
-whose login shell is pppd and whose home directory is /etc/ppp.
-Options to be used when pppd is run this way can be put in
-/etc/ppp/.ppprc.
-.LP
-If your serial connection is any more complicated than a piece of
-wire, you may need to arrange for some control characters to be
-escaped. In particular, it is often useful to escape XON (^Q) and
-XOFF (^S), using \fIasyncmap a0000\fR. If the path includes a telnet,
-you probably should escape ^] as well (\fIasyncmap 200a0000\fR). If
-the path includes an rlogin, you will need to use the \fIescape ff\fR
-option on the end which is running the rlogin client, since many
-rlogin implementations are not transparent; they will remove the
-sequence [0xff, 0xff, 0x73, 0x73, followed by any 8 bytes] from the
-stream.
-.SH DIAGNOSTICS
-.LP
-Messages are sent to the syslog daemon using facility LOG_DAEMON.
-(This can be overriden by recompiling pppd with the macro
-LOG_PPP defined as the desired facility.) In order to see the error
-and debug messages, you will need to edit your /etc/syslog.conf file
-to direct the messages to the desired output device or file.
-.LP
-The \fIdebug\fR option causes the contents of all control packets sent
-or received to be logged, that is, all LCP, PAP, CHAP or IPCP packets.
-This can be useful if the PPP negotiation does not succeed or if
-authentication fails.
-If debugging is enabled at compile time, the \fIdebug\fR option also
-causes other debugging messages to be logged.
-.LP
-Debugging can also be enabled or disabled by sending a SIGUSR1 signal
-to the pppd process. This signal acts as a toggle.
-.SH EXIT STATUS
-The exit status of pppd is set to indicate whether any error was
-detected, or the reason for the link being terminated. The values
-used are:
-.TP
-.B 0
-Pppd has detached, or otherwise the connection was successfully
-established and terminated at the peer's request.
-.TP
-.B 1
-An immediately fatal error of some kind occurred, such as an essential
-system call failing, or running out of virtual memory.
-.TP
-.B 2
-An error was detected in processing the options given, such as two
-mutually exclusive options being used.
-.TP
-.B 3
-Pppd is not setuid-root and the invoking user is not root.
-.TP
-.B 4
-The kernel does not support PPP, for example, the PPP kernel driver is
-not included or cannot be loaded.
-.TP
-.B 5
-Pppd terminated because it was sent a SIGINT, SIGTERM or SIGHUP
-signal.
-.TP
-.B 6
-The serial port could not be locked.
-.TP
-.B 7
-The serial port could not be opened.
-.TP
-.B 8
-The connect script failed (returned a non-zero exit status).
-.TP
-.B 9
-The command specified as the argument to the \fIpty\fR option could
-not be run.
-.TP
-.B 10
-The PPP negotiation failed, that is, it didn't reach the point where
-at least one network protocol (e.g. IP) was running.
-.TP
-.B 11
-The peer system failed (or refused) to authenticate itself.
-.TP
-.B 12
-The link was established successfully and terminated because it was
-idle.
-.TP
-.B 13
-The link was established successfully and terminated because the
-connect time limit was reached.
-.TP
-.B 14
-Callback was negotiated and an incoming call should arrive shortly.
-.TP
-.B 15
-The link was terminated because the peer is not responding to echo
-requests.
-.TP
-.B 16
-The link was terminated by the modem hanging up.
-.TP
-.B 17
-The PPP negotiation failed because serial loopback was detected.
-.TP
-.B 18
-The init script failed (returned a non-zero exit status).
-.TP
-.B 19
-We failed to authenticate ourselves to the peer.
-.SH SCRIPTS
-Pppd invokes scripts at various stages in its processing which can be
-used to perform site-specific ancillary processing. These scripts are
-usually shell scripts, but could be executable code files instead.
-Pppd does not wait for the scripts to finish. The scripts are
-executed as root (with the real and effective user-id set to 0), so
-that they can do things such as update routing tables or run
-privileged daemons. Be careful that the contents of these scripts do
-not compromise your system's security. Pppd runs the scripts with
-standard input, output and error redirected to /dev/null, and with an
-environment that is empty except for some environment variables that
-give information about the link. The environment variables that pppd
-sets are:
-.TP
-.B DEVICE
-The name of the serial tty device being used.
-.TP
-.B IFNAME
-The name of the network interface being used.
-.TP
-.B IPLOCAL
-The IP address for the local end of the link. This is only set when
-IPCP has come up.
-.TP
-.B IPREMOTE
-The IP address for the remote end of the link. This is only set when
-IPCP has come up.
-.TP
-.B PEERNAME
-The authenticated name of the peer. This is only set if the peer
-authenticates itself.
-.TP
-.B SPEED
-The baud rate of the tty device.
-.TP
-.B ORIG_UID
-The real user-id of the user who invoked pppd.
-.TP
-.B PPPLOGNAME
-The username of the real user-id that invoked pppd. This is always set.
-.P
-For the ip-down and auth-down scripts, pppd also sets the following
-variables giving statistics for the connection:
-.TP
-.B CONNECT_TIME
-The number of seconds from when the PPP negotiation started until the
-connection was terminated.
-.TP
-.B BYTES_SENT
-The number of bytes sent (at the level of the serial port) during the
-connection.
-.TP
-.B BYTES_RCVD
-The number of bytes received (at the level of the serial port) during
-the connection.
-.TP
-.B LINKNAME
-The logical name of the link, set with the \fIlinkname\fR option.
-.P
-Pppd invokes the following scripts, if they exist. It is not an error
-if they don't exist.
-.TP
-.B /etc/ppp/auth-up
-A program or script which is executed after the remote system
-successfully authenticates itself. It is executed with the parameters
-.IP
-\fIinterface-name peer-name user-name tty-device speed\fR
-.IP
-Note that this script is not executed if the peer doesn't authenticate
-itself, for example when the \fInoauth\fR option is used.
-.TP
-.B /etc/ppp/auth-down
-A program or script which is executed when the link goes down, if
-/etc/ppp/auth-up was previously executed. It is executed in the same
-manner with the same parameters as /etc/ppp/auth-up.
-.TP
-.B /etc/ppp/ip-up
-A program or script which is executed when the link is available for
-sending and receiving IP packets (that is, IPCP has come up). It is
-executed with the parameters
-.IP
-\fIinterface-name tty-device speed local-IP-address
-remote-IP-address ipparam\fR
-.TP
-.B /etc/ppp/ip-down
-A program or script which is executed when the link is no longer
-available for sending and receiving IP packets. This script can be
-used for undoing the effects of the /etc/ppp/ip-up script. It is
-invoked in the same manner and with the same parameters as the ip-up
-script.
-.TP
-.B /etc/ppp/ipv6-up
-Like /etc/ppp/ip-up, except that it is executed when the link is available
-for sending and receiving IPv6 packets. It is executed with the parameters
-.IP
-\fIinterface-name tty-device speed local-link-local-address
-remote-link-local-address ipparam\fR
-.TP
-.B /etc/ppp/ipv6-down
-Similar to /etc/ppp/ip-down, but it is executed when IPv6 packets can no
-longer be transmitted on the link. It is executed with the same parameters
-as the ipv6-up script.
-.TP
-.B /etc/ppp/ipx-up
-A program or script which is executed when the link is available for
-sending and receiving IPX packets (that is, IPXCP has come up). It is
-executed with the parameters
-.IP
-\fIinterface-name tty-device speed network-number local-IPX-node-address
-remote-IPX-node-address local-IPX-routing-protocol remote-IPX-routing-protocol
-local-IPX-router-name remote-IPX-router-name ipparam pppd-pid\fR
-.IP
-The local-IPX-routing-protocol and remote-IPX-routing-protocol field
-may be one of the following:
-.IP
-NONE to indicate that there is no routing protocol
-.br
-RIP to indicate that RIP/SAP should be used
-.br
-NLSP to indicate that Novell NLSP should be used
-.br
-RIP NLSP to indicate that both RIP/SAP and NLSP should be used
-.TP
-.B /etc/ppp/ipx-down
-A program or script which is executed when the link is no longer
-available for sending and receiving IPX packets. This script can be
-used for undoing the effects of the /etc/ppp/ipx-up script. It is
-invoked in the same manner and with the same parameters as the ipx-up
-script.
-.SH FILES
-.TP
-.B /var/run/ppp\fIn\fB.pid \fR(BSD or Linux), \fB/etc/ppp/ppp\fIn\fB.pid \fR(others)
-Process-ID for pppd process on ppp interface unit \fIn\fR.
-.TP
-.B /var/run/ppp-\fIname\fB.pid \fR(BSD or Linux), \fB/etc/ppp/ppp-\fIname\fB.pid \fR(others)
-Process-ID for pppd process for logical link \fIname\fR (see the
-\fIlinkname\fR option).
-.TP
-.B /etc/ppp/pap-secrets
-Usernames, passwords and IP addresses for PAP authentication. This
-file should be owned by root and not readable or writable by any other
-user. Pppd will log a warning if this is not the case.
-.TP
-.B /etc/ppp/chap-secrets
-Names, secrets and IP addresses for CHAP authentication. As for
-/etc/ppp/pap-secrets, this file should be owned by root and not
-readable or writable by any other user. Pppd will log a warning if
-this is not the case.
-.TP
-.B /etc/ppp/options
-System default options for pppd, read before user default options or
-command-line options.
-.TP
-.B ~/.ppprc
-User default options, read before /etc/ppp/options.\fIttyname\fR.
-.TP
-.B /etc/ppp/options.\fIttyname
-System default options for the serial port being used, read after
-~/.ppprc. In forming the \fIttyname\fR part of this
-filename, an initial /dev/ is stripped from the port name (if
-present), and any slashes in the remaining part are converted to
-dots.
-.TP
-.B /etc/ppp/peers
-A directory containing options files which may contain privileged
-options, even if pppd was invoked by a user other than root. The
-system administrator can create options files in this directory to
-permit non-privileged users to dial out without requiring the peer to
-authenticate, but only to certain trusted peers.
-.SH SEE ALSO
-.TP
-.B RFC1144
-Jacobson, V.
-\fICompressing TCP/IP headers for low-speed serial links.\fR
-February 1990.
-.TP
-.B RFC1321
-Rivest, R.
-.I The MD5 Message-Digest Algorithm.
-April 1992.
-.TP
-.B RFC1332
-McGregor, G.
-.I PPP Internet Protocol Control Protocol (IPCP).
-May 1992.
-.TP
-.B RFC1334
-Lloyd, B.; Simpson, W.A.
-.I PPP authentication protocols.
-October 1992.
-.TP
-.B RFC1661
-Simpson, W.A.
-.I The Point\-to\-Point Protocol (PPP).
-July 1994.
-.TP
-.B RFC1662
-Simpson, W.A.
-.I PPP in HDLC-like Framing.
-July 1994.
-.TP
-.B RFC2472
-Haskin, D.
-.I IP Version 6 over PPP
-December 1998.
-.SH NOTES
-The following signals have the specified effect when sent to pppd.
-.TP
-.B SIGINT, SIGTERM
-These signals cause pppd to terminate the link (by closing LCP),
-restore the serial device settings, and exit.
-.TP
-.B SIGHUP
-This signal causes pppd to terminate the link, restore the serial
-device settings, and close the serial device. If the \fIpersist\fR or
-\fIdemand\fR option has been specified, pppd will try to reopen the
-serial device and start another connection (after the holdoff period).
-Otherwise pppd will exit. If this signal is received during the
-holdoff period, it causes pppd to end the holdoff period immediately.
-.TP
-.B SIGUSR1
-This signal toggles the state of the \fIdebug\fR option.
-.TP
-.B SIGUSR2
-This signal causes pppd to renegotiate compression. This can be
-useful to re-enable compression after it has been disabled as a result
-of a fatal decompression error. (Fatal decompression errors generally
-indicate a bug in one or other implementation.)
-
-.SH AUTHORS
-Paul Mackerras (Paul.Mackerras@cs.anu.edu.au), based on earlier work by
-Drew Perkins,
-Brad Clements,
-Karl Fox,
-Greg Christy,
-and
-Brad Parker.
diff --git a/mdk-stage1/ppp/pppd/pppd.h b/mdk-stage1/ppp/pppd/pppd.h
deleted file mode 100644
index 02f6dfcef..000000000
--- a/mdk-stage1/ppp/pppd/pppd.h
+++ /dev/null
@@ -1,787 +0,0 @@
-/*
- * pppd.h - PPP daemon global declarations.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-/*
- * TODO:
- */
-
-#ifndef __PPPD_H__
-#define __PPPD_H__
-
-#include <stdio.h> /* for FILE */
-#include <limits.h> /* for NGROUPS_MAX */
-#include <sys/param.h> /* for MAXPATHLEN and BSD4_4, if defined */
-#include <sys/types.h> /* for u_int32_t, if defined */
-#include <sys/time.h> /* for struct timeval */
-#include <net/ppp_defs.h>
-#include "patchlevel.h"
-
-#if defined(__STDC__)
-#include <stdarg.h>
-#define __V(x) x
-#else
-#include <varargs.h>
-#define __V(x) (va_alist) va_dcl
-#define const
-#define volatile
-#endif
-
-#ifdef INET6
-#include "eui64.h"
-#endif
-
-/*
- * Limits.
- */
-
-#define NUM_PPP 1 /* One PPP interface supported (per process) */
-#define MAXWORDLEN 1024 /* max length of word in file (incl null) */
-#define MAXARGS 1 /* max # args to a command */
-#define MAXNAMELEN 256 /* max length of hostname or name for auth */
-#define MAXSECRETLEN 256 /* max length of password or secret */
-
-/*
- * Option descriptor structure.
- */
-
-typedef unsigned char bool;
-
-enum opt_type {
- o_special_noarg = 0,
- o_special = 1,
- o_bool,
- o_int,
- o_uint32,
- o_string,
- o_wild,
-};
-
-typedef struct {
- char *name; /* name of the option */
- enum opt_type type;
- void *addr;
- char *description;
- int flags;
- void *addr2;
- int upper_limit;
- int lower_limit;
- const char *source;
- short int priority;
- short int winner;
-} option_t;
-
-/* Values for flags */
-#define OPT_VALUE 0xff /* mask for presupplied value */
-#define OPT_HEX 0x100 /* int option is in hex */
-#define OPT_NOARG 0x200 /* option doesn't take argument */
-#define OPT_OR 0x400 /* OR in argument to value */
-#define OPT_INC 0x800 /* increment value */
-#define OPT_PRIV 0x1000 /* privileged option */
-#define OPT_STATIC 0x2000 /* string option goes into static array */
-#define OPT_LLIMIT 0x4000 /* check value against lower limit */
-#define OPT_ULIMIT 0x8000 /* check value against upper limit */
-#define OPT_LIMITS (OPT_LLIMIT|OPT_ULIMIT)
-#define OPT_ZEROOK 0x10000 /* 0 value is OK even if not within limits */
-#define OPT_HIDE 0x10000 /* for o_string, print value as ?????? */
-#define OPT_A2LIST 0x10000 /* for o_special, keep list of values */
-#define OPT_NOINCR 0x20000 /* value mustn't be increased */
-#define OPT_ZEROINF 0x40000 /* with OPT_NOINCR, 0 == infinity */
-#define OPT_PRIO 0x80000 /* process option priorities for this option */
-#define OPT_PRIOSUB 0x100000 /* subsidiary member of priority group */
-#define OPT_ALIAS 0x200000 /* option is alias for previous option */
-#define OPT_A2COPY 0x400000 /* addr2 -> second location to rcv value */
-#define OPT_ENABLE 0x800000 /* use *addr2 as enable for option */
-#define OPT_A2CLR 0x1000000 /* clear *(bool *)addr2 */
-#define OPT_PRIVFIX 0x2000000 /* user can't override if set by root */
-#define OPT_INITONLY 0x4000000 /* option can only be set in init phase */
-#define OPT_DEVEQUIV 0x8000000 /* equiv to device name */
-#define OPT_DEVNAM (OPT_INITONLY | OPT_DEVEQUIV)
-#define OPT_A2PRINTER 0x10000000 /* *addr2 is a fn for printing option */
-#define OPT_A2STRVAL 0x20000000 /* *addr2 points to current string value */
-#define OPT_NOPRINT 0x40000000 /* don't print this option at all */
-
-#define OPT_VAL(x) ((x) & OPT_VALUE)
-
-/* Values for priority */
-#define OPRIO_DEFAULT 0 /* a default value */
-#define OPRIO_CFGFILE 1 /* value from a configuration file */
-#define OPRIO_CMDLINE 2 /* value from the command line */
-#define OPRIO_SECFILE 3 /* value from options in a secrets file */
-#define OPRIO_ROOT 100 /* added to priority if OPT_PRIVFIX && root */
-
-#ifndef GIDSET_TYPE
-#define GIDSET_TYPE gid_t
-#endif
-
-/* Structure representing a list of permitted IP addresses. */
-struct permitted_ip {
- int permit; /* 1 = permit, 0 = forbid */
- u_int32_t base; /* match if (addr & mask) == base */
- u_int32_t mask; /* base and mask are in network byte order */
-};
-
-/*
- * Unfortunately, the linux kernel driver uses a different structure
- * for statistics from the rest of the ports.
- * This structure serves as a common representation for the bits
- * pppd needs.
- */
-struct pppd_stats {
- unsigned int bytes_in;
- unsigned int bytes_out;
-};
-
-/* Used for storing a sequence of words. Usually malloced. */
-struct wordlist {
- struct wordlist *next;
- char *word;
-};
-
-/* An endpoint discriminator, used with multilink. */
-#define MAX_ENDP_LEN 20 /* maximum length of discriminator value */
-struct epdisc {
- unsigned char class;
- unsigned char length;
- unsigned char value[MAX_ENDP_LEN];
-};
-
-/* values for epdisc.class */
-#define EPD_NULL 0 /* null discriminator, no data */
-#define EPD_LOCAL 1
-#define EPD_IP 2
-#define EPD_MAC 3
-#define EPD_MAGIC 4
-#define EPD_PHONENUM 5
-
-typedef void (*notify_func) __P((void *, int));
-
-struct notifier {
- struct notifier *next;
- notify_func func;
- void *arg;
-};
-
-/*
- * Global variables.
- */
-
-extern int hungup; /* Physical layer has disconnected */
-extern int ifunit; /* Interface unit number */
-extern char ifname[]; /* Interface name */
-extern char hostname[]; /* Our hostname */
-extern u_char outpacket_buf[]; /* Buffer for outgoing packets */
-extern int phase; /* Current state of link - see values below */
-extern int baud_rate; /* Current link speed in bits/sec */
-extern char *progname; /* Name of this program */
-extern int redirect_stderr;/* Connector's stderr should go to file */
-extern char peer_authname[];/* Authenticated name of peer */
-extern int privileged; /* We were run by real-uid root */
-extern int need_holdoff; /* Need holdoff period after link terminates */
-extern char **script_env; /* Environment variables for scripts */
-extern int detached; /* Have detached from controlling tty */
-extern GIDSET_TYPE groups[NGROUPS_MAX]; /* groups the user is in */
-extern int ngroups; /* How many groups valid in groups */
-extern struct pppd_stats link_stats; /* byte/packet counts etc. for link */
-extern int link_stats_valid; /* set if link_stats is valid */
-extern int link_connect_time; /* time the link was up for */
-extern int using_pty; /* using pty as device (notty or pty opt.) */
-extern int log_to_fd; /* logging to this fd as well as syslog */
-extern bool log_default; /* log_to_fd is default (stdout) */
-extern char *no_ppp_msg; /* message to print if ppp not in kernel */
-extern volatile int status; /* exit status for pppd */
-extern bool devnam_fixed; /* can no longer change devnam */
-extern int unsuccess; /* # unsuccessful connection attempts */
-extern int do_callback; /* set if we want to do callback next */
-extern int doing_callback; /* set if this is a callback */
-extern char ppp_devnam[MAXPATHLEN];
-extern struct notifier *pidchange; /* for notifications of pid changing */
-extern struct notifier *phasechange; /* for notifications of phase changes */
-extern struct notifier *exitnotify; /* for notification that we're exiting */
-extern struct notifier *sigreceived; /* notification of received signal */
-extern int listen_time; /* time to listen first (ms) */
-
-/* Values for do_callback and doing_callback */
-#define CALLBACK_DIALIN 1 /* we are expecting the call back */
-#define CALLBACK_DIALOUT 2 /* we are dialling out to call back */
-
-/*
- * Variables set by command-line options.
- */
-
-extern int debug; /* Debug flag */
-extern int kdebugflag; /* Tell kernel to print debug messages */
-extern int default_device; /* Using /dev/tty or equivalent */
-extern char devnam[MAXPATHLEN]; /* Device name */
-extern int crtscts; /* Use hardware flow control */
-extern bool modem; /* Use modem control lines */
-extern int inspeed; /* Input/Output speed requested */
-extern u_int32_t netmask; /* IP netmask to set on interface */
-extern bool lockflag; /* Create lock file to lock the serial dev */
-extern bool nodetach; /* Don't detach from controlling tty */
-extern bool updetach; /* Detach from controlling tty when link up */
-extern char *initializer; /* Script to initialize physical link */
-extern char *connect_script; /* Script to establish physical link */
-extern char *disconnect_script; /* Script to disestablish physical link */
-extern char *welcomer; /* Script to welcome client after connection */
-extern char *ptycommand; /* Command to run on other side of pty */
-extern int maxconnect; /* Maximum connect time (seconds) */
-extern char user[MAXNAMELEN];/* Our name for authenticating ourselves */
-extern char passwd[MAXSECRETLEN]; /* Password for PAP or CHAP */
-extern bool auth_required; /* Peer is required to authenticate */
-extern bool persist; /* Reopen link after it goes down */
-extern bool uselogin; /* Use /etc/passwd for checking PAP */
-extern char our_name[MAXNAMELEN];/* Our name for authentication purposes */
-extern char remote_name[MAXNAMELEN]; /* Peer's name for authentication */
-extern bool explicit_remote;/* remote_name specified with remotename opt */
-extern bool demand; /* Do dial-on-demand */
-extern char *ipparam; /* Extra parameter for ip up/down scripts */
-extern bool cryptpap; /* Others' PAP passwords are encrypted */
-extern int idle_time_limit;/* Shut down link if idle for this long */
-extern int holdoff; /* Dead time before restarting */
-extern bool holdoff_specified; /* true if user gave a holdoff value */
-extern bool notty; /* Stdin/out is not a tty */
-extern char *pty_socket; /* Socket to connect to pty */
-extern char *record_file; /* File to record chars sent/received */
-extern bool sync_serial; /* Device is synchronous serial device */
-extern int maxfail; /* Max # of unsuccessful connection attempts */
-extern char linkname[MAXPATHLEN]; /* logical name for link */
-extern bool tune_kernel; /* May alter kernel settings as necessary */
-extern int connect_delay; /* Time to delay after connect script */
-extern int max_data_rate; /* max bytes/sec through charshunt */
-extern int req_unit; /* interface unit number to use */
-extern bool multilink; /* enable multilink operation */
-extern bool noendpoint; /* don't send or accept endpt. discrim. */
-extern char *bundle_name; /* bundle name for multilink */
-extern bool dump_options; /* print out option values */
-extern bool dryrun; /* check everything, print options, exit */
-
-#ifdef PPP_FILTER
-extern struct bpf_program pass_filter; /* Filter for pkts to pass */
-extern struct bpf_program active_filter; /* Filter for link-active pkts */
-#endif
-
-#ifdef MSLANMAN
-extern bool ms_lanman; /* Use LanMan password instead of NT */
- /* Has meaning only with MS-CHAP challenges */
-#endif
-
-extern char *current_option; /* the name of the option being parsed */
-extern int privileged_option; /* set iff the current option came from root */
-extern char *option_source; /* string saying where the option came from */
-extern int option_priority; /* priority of current options */
-
-/*
- * Values for phase.
- */
-#define PHASE_DEAD 0
-#define PHASE_INITIALIZE 1
-#define PHASE_SERIALCONN 2
-#define PHASE_DORMANT 3
-#define PHASE_ESTABLISH 4
-#define PHASE_AUTHENTICATE 5
-#define PHASE_CALLBACK 6
-#define PHASE_NETWORK 7
-#define PHASE_RUNNING 8
-#define PHASE_TERMINATE 9
-#define PHASE_DISCONNECT 10
-#define PHASE_HOLDOFF 11
-
-/*
- * The following struct gives the addresses of procedures to call
- * for a particular protocol.
- */
-struct protent {
- u_short protocol; /* PPP protocol number */
- /* Initialization procedure */
- void (*init) __P((int unit));
- /* Process a received packet */
- void (*input) __P((int unit, u_char *pkt, int len));
- /* Process a received protocol-reject */
- void (*protrej) __P((int unit));
- /* Lower layer has come up */
- void (*lowerup) __P((int unit));
- /* Lower layer has gone down */
- void (*lowerdown) __P((int unit));
- /* Open the protocol */
- void (*open) __P((int unit));
- /* Close the protocol */
- void (*close) __P((int unit, char *reason));
- /* Print a packet in readable form */
- int (*printpkt) __P((u_char *pkt, int len,
- void (*printer) __P((void *, char *, ...)),
- void *arg));
- /* Process a received data packet */
- void (*datainput) __P((int unit, u_char *pkt, int len));
- bool enabled_flag; /* 0 iff protocol is disabled */
- char *name; /* Text name of protocol */
- char *data_name; /* Text name of corresponding data protocol */
- option_t *options; /* List of command-line options */
- /* Check requested options, assign defaults */
- void (*check_options) __P((void));
- /* Configure interface for demand-dial */
- int (*demand_conf) __P((int unit));
- /* Say whether to bring up link for this pkt */
- int (*active_pkt) __P((u_char *pkt, int len));
-};
-
-/* Table of pointers to supported protocols */
-extern struct protent *protocols[];
-
-/*
- * This struct contains pointers to a set of procedures for
- * doing operations on a "channel". A channel provides a way
- * to send and receive PPP packets - the canonical example is
- * a serial port device in PPP line discipline (or equivalently
- * with PPP STREAMS modules pushed onto it).
- */
-struct channel {
- /* set of options for this channel */
- option_t *options;
- /* find and process a per-channel options file */
- void (*process_extra_options) __P((void));
- /* check all the options that have been given */
- void (*check_options) __P((void));
- /* get the channel ready to do PPP, return a file descriptor */
- int (*connect) __P((void));
- /* we're finished with the channel */
- void (*disconnect) __P((void));
- /* put the channel into PPP `mode' */
- int (*establish_ppp) __P((int));
- /* take the channel out of PPP `mode', restore loopback if demand */
- void (*disestablish_ppp) __P((int));
- /* set the transmit-side PPP parameters of the channel */
- void (*send_config) __P((int, u_int32_t, int, int));
- /* set the receive-side PPP parameters of the channel */
- void (*recv_config) __P((int, u_int32_t, int, int));
- /* cleanup on error or normal exit */
- void (*cleanup) __P((void));
- /* close the device, called in children after fork */
- void (*close) __P((void));
-};
-
-extern struct channel *the_channel;
-
-#define ppp_send_config(unit, mtu, accm, pc, acc) \
-do { \
- if (the_channel->send_config) \
- (*the_channel->send_config)((mtu), (accm), (pc), (acc)); \
-} while (0)
-
-#define ppp_recv_config(unit, mtu, accm, pc, acc) \
-do { \
- if (the_channel->send_config) \
- (*the_channel->recv_config)((mtu), (accm), (pc), (acc)); \
-} while (0)
-
-/*
- * Prototypes.
- */
-
-/* Procedures exported from main.c. */
-void set_ifunit __P((int)); /* set stuff that depends on ifunit */
-void detach __P((void)); /* Detach from controlling tty */
-void die __P((int)); /* Cleanup and exit */
-void quit __P((void)); /* like die(1) */
-void novm __P((char *)); /* Say we ran out of memory, and die */
-void timeout __P((void (*func)(void *), void *arg, int s, int us));
- /* Call func(arg) after s.us seconds */
-void untimeout __P((void (*func)(void *), void *arg));
- /* Cancel call to func(arg) */
-void record_child __P((int, char *, void (*) (void *), void *));
-int device_script __P((char *cmd, int in, int out, int dont_wait));
- /* Run `cmd' with given stdin and stdout */
-pid_t run_program __P((char *prog, char **args, int must_exist,
- void (*done)(void *), void *arg));
- /* Run program prog with args in child */
-void reopen_log __P((void)); /* (re)open the connection to syslog */
-void update_link_stats __P((int)); /* Get stats at link termination */
-void script_setenv __P((char *, char *, int)); /* set script env var */
-void script_unsetenv __P((char *)); /* unset script env var */
-void new_phase __P((int)); /* signal start of new phase */
-void add_notifier __P((struct notifier **, notify_func, void *));
-void remove_notifier __P((struct notifier **, notify_func, void *));
-void notify __P((struct notifier *, int));
-
-/* Procedures exported from tty.c. */
-void tty_init __P((void));
-
-/* Procedures exported from utils.c. */
-void log_packet __P((u_char *, int, char *, int));
- /* Format a packet and log it with syslog */
-void print_string __P((char *, int, void (*) (void *, char *, ...),
- void *)); /* Format a string for output */
-int slprintf __P((char *, int, char *, ...)); /* sprintf++ */
-int vslprintf __P((char *, int, char *, va_list)); /* vsprintf++ */
-size_t strlcpy __P((char *, const char *, size_t)); /* safe strcpy */
-size_t strlcat __P((char *, const char *, size_t)); /* safe strncpy */
-void dbglog __P((char *, ...)); /* log a debug message */
-void info __P((char *, ...)); /* log an informational message */
-void notice __P((char *, ...)); /* log a notice-level message */
-void warn __P((char *, ...)); /* log a warning message */
-void error __P((char *, ...)); /* log an error message */
-void fatal __P((char *, ...)); /* log an error message and die(1) */
-void init_pr_log __P((char *, int)); /* initialize for using pr_log */
-void pr_log __P((void *, char *, ...)); /* printer fn, output to syslog */
-void end_pr_log __P((void)); /* finish up after using pr_log */
-
-/* Procedures exported from auth.c */
-void link_required __P((int)); /* we are starting to use the link */
-void link_terminated __P((int)); /* we are finished with the link */
-void link_down __P((int)); /* the LCP layer has left the Opened state */
-void link_established __P((int)); /* the link is up; authenticate now */
-void start_networks __P((void)); /* start all the network control protos */
-void np_up __P((int, int)); /* a network protocol has come up */
-void np_down __P((int, int)); /* a network protocol has gone down */
-void np_finished __P((int, int)); /* a network protocol no longer needs link */
-void auth_peer_fail __P((int, int));
- /* peer failed to authenticate itself */
-void auth_peer_success __P((int, int, char *, int));
- /* peer successfully authenticated itself */
-void auth_withpeer_fail __P((int, int));
- /* we failed to authenticate ourselves */
-void auth_withpeer_success __P((int, int));
- /* we successfully authenticated ourselves */
-void auth_check_options __P((void));
- /* check authentication options supplied */
-void auth_reset __P((int)); /* check what secrets we have */
-int check_passwd __P((int, char *, int, char *, int, char **));
- /* Check peer-supplied username/password */
-int get_secret __P((int, char *, char *, char *, int *, int));
- /* get "secret" for chap */
-int auth_ip_addr __P((int, u_int32_t));
- /* check if IP address is authorized */
-int bad_ip_adrs __P((u_int32_t));
- /* check if IP address is unreasonable */
-
-/* Procedures exported from demand.c */
-void demand_conf __P((void)); /* config interface(s) for demand-dial */
-void demand_block __P((void)); /* set all NPs to queue up packets */
-void demand_unblock __P((void)); /* set all NPs to pass packets */
-void demand_discard __P((void)); /* set all NPs to discard packets */
-void demand_rexmit __P((int)); /* retransmit saved frames for an NP */
-int loop_chars __P((unsigned char *, int)); /* process chars from loopback */
-int loop_frame __P((unsigned char *, int)); /* should we bring link up? */
-
-/* Procedures exported from multilink.c */
-void mp_check_options __P((void)); /* Check multilink-related options */
-int mp_join_bundle __P((void)); /* join our link to an appropriate bundle */
-char *epdisc_to_str __P((struct epdisc *)); /* string from endpoint discrim. */
-int str_to_epdisc __P((struct epdisc *, char *)); /* endpt disc. from str */
-
-/* Procedures exported from sys-*.c */
-void sys_init __P((void)); /* Do system-dependent initialization */
-void sys_cleanup __P((void)); /* Restore system state before exiting */
-int sys_check_options __P((void)); /* Check options specified */
-void sys_close __P((void)); /* Clean up in a child before execing */
-int ppp_available __P((void)); /* Test whether ppp kernel support exists */
-int get_pty __P((int *, int *, char *, int)); /* Get pty master/slave */
-int open_ppp_loopback __P((void)); /* Open loopback for demand-dialling */
-int tty_establish_ppp __P((int)); /* Turn serial port into a ppp interface */
-void tty_disestablish_ppp __P((int)); /* Restore port to normal operation */
-void make_new_bundle __P((int, int, int, int)); /* Create new bundle */
-int bundle_attach __P((int)); /* Attach link to existing bundle */
-void cfg_bundle __P((int, int, int, int)); /* Configure existing bundle */
-void clean_check __P((void)); /* Check if line was 8-bit clean */
-void set_up_tty __P((int, int)); /* Set up port's speed, parameters, etc. */
-void restore_tty __P((int)); /* Restore port's original parameters */
-void setdtr __P((int, int)); /* Raise or lower port's DTR line */
-void output __P((int, u_char *, int)); /* Output a PPP packet */
-void wait_input __P((struct timeval *));
- /* Wait for input, with timeout */
-void add_fd __P((int)); /* Add fd to set to wait for */
-void remove_fd __P((int)); /* Remove fd from set to wait for */
-int read_packet __P((u_char *)); /* Read PPP packet */
-int get_loop_output __P((void)); /* Read pkts from loopback */
-void tty_send_config __P((int, u_int32_t, int, int));
- /* Configure i/f transmit parameters */
-void tty_set_xaccm __P((ext_accm));
- /* Set extended transmit ACCM */
-void tty_recv_config __P((int, u_int32_t, int, int));
- /* Configure i/f receive parameters */
-int ccp_test __P((int, u_char *, int, int));
- /* Test support for compression scheme */
-void ccp_flags_set __P((int, int, int));
- /* Set kernel CCP state */
-int ccp_fatal_error __P((int)); /* Test for fatal decomp error in kernel */
-int get_idle_time __P((int, struct ppp_idle *));
- /* Find out how long link has been idle */
-int get_ppp_stats __P((int, struct pppd_stats *));
- /* Return link statistics */
-void netif_set_mtu __P((int, int)); /* Set PPP interface MTU */
-int sifvjcomp __P((int, int, int, int));
- /* Configure VJ TCP header compression */
-int sifup __P((int)); /* Configure i/f up for one protocol */
-int sifnpmode __P((int u, int proto, enum NPmode mode));
- /* Set mode for handling packets for proto */
-int sifdown __P((int)); /* Configure i/f down for one protocol */
-int sifaddr __P((int, u_int32_t, u_int32_t, u_int32_t));
- /* Configure IPv4 addresses for i/f */
-int cifaddr __P((int, u_int32_t, u_int32_t));
- /* Reset i/f IP addresses */
-#ifdef INET6
-int sif6addr __P((int, eui64_t, eui64_t));
- /* Configure IPv6 addresses for i/f */
-int cif6addr __P((int, eui64_t, eui64_t));
- /* Remove an IPv6 address from i/f */
-#endif
-int sifdefaultroute __P((int, u_int32_t, u_int32_t));
- /* Create default route through i/f */
-int cifdefaultroute __P((int, u_int32_t, u_int32_t));
- /* Delete default route through i/f */
-int sifproxyarp __P((int, u_int32_t));
- /* Add proxy ARP entry for peer */
-int cifproxyarp __P((int, u_int32_t));
- /* Delete proxy ARP entry for peer */
-u_int32_t GetMask __P((u_int32_t)); /* Get appropriate netmask for address */
-int lock __P((char *)); /* Create lock file for device */
-int relock __P((int)); /* Rewrite lock file with new pid */
-void unlock __P((void)); /* Delete previously-created lock file */
-int get_host_seed __P((void)); /* Get host-dependent random number seed */
-int have_route_to __P((u_int32_t)); /* Check if route to addr exists */
-#ifdef PPP_FILTER
-int set_filters __P((struct bpf_program *pass, struct bpf_program *active));
- /* Set filter programs in kernel */
-#endif
-#ifdef IPX_CHANGE
-int sipxfaddr __P((int, unsigned long, unsigned char *));
-int cipxfaddr __P((int));
-#endif
-int get_if_hwaddr __P((u_char *addr, char *name));
-char *get_first_ethernet __P((void));
-
-/* Procedures exported from options.c */
-int parse_args __P((int argc, char **argv));
- /* Parse options from arguments given */
-int options_from_file __P((char *filename, int must_exist, int check_prot,
- int privileged));
- /* Parse options from an options file */
-int options_from_user __P((void)); /* Parse options from user's .ppprc */
-int options_for_tty __P((void)); /* Parse options from /etc/ppp/options.tty */
-int options_from_list __P((struct wordlist *, int privileged));
- /* Parse options from a wordlist */
-int getword __P((FILE *f, char *word, int *newlinep, char *filename));
- /* Read a word from a file */
-void option_error __P((char *fmt, ...));
- /* Print an error message about an option */
-int int_option __P((char *, int *));
- /* Simplified number_option for decimal ints */
-void add_options __P((option_t *)); /* Add extra options */
-void check_options __P((void)); /* check values after all options parsed */
-int override_value __P((const char *, int, const char *));
- /* override value if permitted by priority */
-void print_options __P((void (*) __P((void *, char *, ...)), void *));
- /* print out values of all options */
-
-int parse_dotted_ip __P((char *, u_int32_t *));
-
-/*
- * Hooks to enable plugins to change various things.
- */
-extern int (*new_phase_hook) __P((int));
-extern int (*idle_time_hook) __P((struct ppp_idle *));
-extern int (*holdoff_hook) __P((void));
-extern int (*pap_check_hook) __P((void));
-extern int (*pap_auth_hook) __P((char *user, char *passwd, char **msgp,
- struct wordlist **paddrs,
- struct wordlist **popts));
-extern void (*pap_logout_hook) __P((void));
-extern int (*pap_passwd_hook) __P((char *user, char *passwd));
-extern void (*ip_up_hook) __P((void));
-extern void (*ip_down_hook) __P((void));
-extern void (*ip_choose_hook) __P((u_int32_t *));
-
-/*
- * Inline versions of get/put char/short/long.
- * Pointer is advanced; we assume that both arguments
- * are lvalues and will already be in registers.
- * cp MUST be u_char *.
- */
-#define GETCHAR(c, cp) { \
- (c) = *(cp)++; \
-}
-#define PUTCHAR(c, cp) { \
- *(cp)++ = (u_char) (c); \
-}
-
-
-#define GETSHORT(s, cp) { \
- (s) = *(cp)++ << 8; \
- (s) |= *(cp)++; \
-}
-#define PUTSHORT(s, cp) { \
- *(cp)++ = (u_char) ((s) >> 8); \
- *(cp)++ = (u_char) (s); \
-}
-
-#define GETLONG(l, cp) { \
- (l) = *(cp)++ << 8; \
- (l) |= *(cp)++; (l) <<= 8; \
- (l) |= *(cp)++; (l) <<= 8; \
- (l) |= *(cp)++; \
-}
-#define PUTLONG(l, cp) { \
- *(cp)++ = (u_char) ((l) >> 24); \
- *(cp)++ = (u_char) ((l) >> 16); \
- *(cp)++ = (u_char) ((l) >> 8); \
- *(cp)++ = (u_char) (l); \
-}
-
-#define INCPTR(n, cp) ((cp) += (n))
-#define DECPTR(n, cp) ((cp) -= (n))
-
-/*
- * System dependent definitions for user-level 4.3BSD UNIX implementation.
- */
-
-#define TIMEOUT(r, f, t) timeout((r), (f), (t), 0)
-#define UNTIMEOUT(r, f) untimeout((r), (f))
-
-#define BCOPY(s, d, l) memcpy(d, s, l)
-#define BZERO(s, n) memset(s, 0, n)
-
-#define PRINTMSG(m, l) { info("Remote message: %0.*v", l, m); }
-
-/*
- * MAKEHEADER - Add Header fields to a packet.
- */
-#define MAKEHEADER(p, t) { \
- PUTCHAR(PPP_ALLSTATIONS, p); \
- PUTCHAR(PPP_UI, p); \
- PUTSHORT(t, p); }
-
-/*
- * Exit status values.
- */
-#define EXIT_OK 0
-#define EXIT_FATAL_ERROR 1
-#define EXIT_OPTION_ERROR 2
-#define EXIT_NOT_ROOT 3
-#define EXIT_NO_KERNEL_SUPPORT 4
-#define EXIT_USER_REQUEST 5
-#define EXIT_LOCK_FAILED 6
-#define EXIT_OPEN_FAILED 7
-#define EXIT_CONNECT_FAILED 8
-#define EXIT_PTYCMD_FAILED 9
-#define EXIT_NEGOTIATION_FAILED 10
-#define EXIT_PEER_AUTH_FAILED 11
-#define EXIT_IDLE_TIMEOUT 12
-#define EXIT_CONNECT_TIME 13
-#define EXIT_CALLBACK 14
-#define EXIT_PEER_DEAD 15
-#define EXIT_HANGUP 16
-#define EXIT_LOOPBACK 17
-#define EXIT_INIT_FAILED 18
-#define EXIT_AUTH_TOPEER_FAILED 19
-
-/*
- * Debug macros. Slightly useful for finding bugs in pppd, not particularly
- * useful for finding out why your connection isn't being established.
- */
-#ifdef DEBUGALL
-#define DEBUGMAIN 1
-#define DEBUGFSM 1
-#define DEBUGLCP 1
-#define DEBUGIPCP 1
-#define DEBUGIPV6CP 1
-#define DEBUGUPAP 1
-#define DEBUGCHAP 1
-#endif
-
-#ifndef LOG_PPP /* we use LOG_LOCAL2 for syslog by default */
-#if defined(DEBUGMAIN) || defined(DEBUGFSM) || defined(DEBUGSYS) \
- || defined(DEBUGLCP) || defined(DEBUGIPCP) || defined(DEBUGUPAP) \
- || defined(DEBUGCHAP) || defined(DEBUG) || defined(DEBUGIPV6CP)
-#define LOG_PPP LOG_LOCAL2
-#else
-#define LOG_PPP LOG_DAEMON
-#endif
-#endif /* LOG_PPP */
-
-#ifdef DEBUGMAIN
-#define MAINDEBUG(x) if (debug) dbglog x
-#else
-#define MAINDEBUG(x)
-#endif
-
-#ifdef DEBUGSYS
-#define SYSDEBUG(x) if (debug) dbglog x
-#else
-#define SYSDEBUG(x)
-#endif
-
-#ifdef DEBUGFSM
-#define FSMDEBUG(x) if (debug) dbglog x
-#else
-#define FSMDEBUG(x)
-#endif
-
-#ifdef DEBUGLCP
-#define LCPDEBUG(x) if (debug) dbglog x
-#else
-#define LCPDEBUG(x)
-#endif
-
-#ifdef DEBUGIPCP
-#define IPCPDEBUG(x) if (debug) dbglog x
-#else
-#define IPCPDEBUG(x)
-#endif
-
-#ifdef DEBUGIPV6CP
-#define IPV6CPDEBUG(x) if (debug) dbglog x
-#else
-#define IPV6CPDEBUG(x)
-#endif
-
-#ifdef DEBUGUPAP
-#define UPAPDEBUG(x) if (debug) dbglog x
-#else
-#define UPAPDEBUG(x)
-#endif
-
-#ifdef DEBUGCHAP
-#define CHAPDEBUG(x) if (debug) dbglog x
-#else
-#define CHAPDEBUG(x)
-#endif
-
-#ifdef DEBUGIPXCP
-#define IPXCPDEBUG(x) if (debug) dbglog x
-#else
-#define IPXCPDEBUG(x)
-#endif
-
-#ifndef SIGTYPE
-#if defined(sun) || defined(SYSV) || defined(POSIX_SOURCE)
-#define SIGTYPE void
-#else
-#define SIGTYPE int
-#endif /* defined(sun) || defined(SYSV) || defined(POSIX_SOURCE) */
-#endif /* SIGTYPE */
-
-#ifndef MIN
-#define MIN(a, b) ((a) < (b)? (a): (b))
-#endif
-#ifndef MAX
-#define MAX(a, b) ((a) > (b)? (a): (b))
-#endif
-
-#endif /* __PPP_H__ */
diff --git a/mdk-stage1/ppp/pppd/pppd.h.wtmp b/mdk-stage1/ppp/pppd/pppd.h.wtmp
deleted file mode 100644
index 4d440be06..000000000
--- a/mdk-stage1/ppp/pppd/pppd.h.wtmp
+++ /dev/null
@@ -1,789 +0,0 @@
-/*
- * pppd.h - PPP daemon global declarations.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-/*
- * TODO:
- */
-
-#ifndef __PPPD_H__
-#define __PPPD_H__
-
-#include <stdio.h> /* for FILE */
-#include <limits.h> /* for NGROUPS_MAX */
-#include <sys/param.h> /* for MAXPATHLEN and BSD4_4, if defined */
-#include <sys/types.h> /* for u_int32_t, if defined */
-#include <sys/time.h> /* for struct timeval */
-#include <net/ppp_defs.h>
-#include "patchlevel.h"
-
-#if defined(__STDC__)
-#include <stdarg.h>
-#define __V(x) x
-#else
-#include <varargs.h>
-#define __V(x) (va_alist) va_dcl
-#define const
-#define volatile
-#endif
-
-#ifdef INET6
-#include "eui64.h"
-#endif
-
-/*
- * Limits.
- */
-
-#define NUM_PPP 1 /* One PPP interface supported (per process) */
-#define MAXWORDLEN 1024 /* max length of word in file (incl null) */
-#define MAXARGS 1 /* max # args to a command */
-#define MAXNAMELEN 256 /* max length of hostname or name for auth */
-#define MAXSECRETLEN 256 /* max length of password or secret */
-
-/*
- * Option descriptor structure.
- */
-
-typedef unsigned char bool;
-
-enum opt_type {
- o_special_noarg = 0,
- o_special = 1,
- o_bool,
- o_int,
- o_uint32,
- o_string,
- o_wild,
-};
-
-typedef struct {
- char *name; /* name of the option */
- enum opt_type type;
- void *addr;
- char *description;
- int flags;
- void *addr2;
- int upper_limit;
- int lower_limit;
- const char *source;
- short int priority;
- short int winner;
-} option_t;
-
-/* Values for flags */
-#define OPT_VALUE 0xff /* mask for presupplied value */
-#define OPT_HEX 0x100 /* int option is in hex */
-#define OPT_NOARG 0x200 /* option doesn't take argument */
-#define OPT_OR 0x400 /* OR in argument to value */
-#define OPT_INC 0x800 /* increment value */
-#define OPT_PRIV 0x1000 /* privileged option */
-#define OPT_STATIC 0x2000 /* string option goes into static array */
-#define OPT_LLIMIT 0x4000 /* check value against lower limit */
-#define OPT_ULIMIT 0x8000 /* check value against upper limit */
-#define OPT_LIMITS (OPT_LLIMIT|OPT_ULIMIT)
-#define OPT_ZEROOK 0x10000 /* 0 value is OK even if not within limits */
-#define OPT_HIDE 0x10000 /* for o_string, print value as ?????? */
-#define OPT_A2LIST 0x10000 /* for o_special, keep list of values */
-#define OPT_NOINCR 0x20000 /* value mustn't be increased */
-#define OPT_ZEROINF 0x40000 /* with OPT_NOINCR, 0 == infinity */
-#define OPT_PRIO 0x80000 /* process option priorities for this option */
-#define OPT_PRIOSUB 0x100000 /* subsidiary member of priority group */
-#define OPT_ALIAS 0x200000 /* option is alias for previous option */
-#define OPT_A2COPY 0x400000 /* addr2 -> second location to rcv value */
-#define OPT_ENABLE 0x800000 /* use *addr2 as enable for option */
-#define OPT_A2CLR 0x1000000 /* clear *(bool *)addr2 */
-#define OPT_PRIVFIX 0x2000000 /* user can't override if set by root */
-#define OPT_INITONLY 0x4000000 /* option can only be set in init phase */
-#define OPT_DEVEQUIV 0x8000000 /* equiv to device name */
-#define OPT_DEVNAM (OPT_INITONLY | OPT_DEVEQUIV)
-#define OPT_A2PRINTER 0x10000000 /* *addr2 is a fn for printing option */
-#define OPT_A2STRVAL 0x20000000 /* *addr2 points to current string value */
-#define OPT_NOPRINT 0x40000000 /* don't print this option at all */
-
-#define OPT_VAL(x) ((x) & OPT_VALUE)
-
-/* Values for priority */
-#define OPRIO_DEFAULT 0 /* a default value */
-#define OPRIO_CFGFILE 1 /* value from a configuration file */
-#define OPRIO_CMDLINE 2 /* value from the command line */
-#define OPRIO_SECFILE 3 /* value from options in a secrets file */
-#define OPRIO_ROOT 100 /* added to priority if OPT_PRIVFIX && root */
-
-#ifndef GIDSET_TYPE
-#define GIDSET_TYPE gid_t
-#endif
-
-/* Structure representing a list of permitted IP addresses. */
-struct permitted_ip {
- int permit; /* 1 = permit, 0 = forbid */
- u_int32_t base; /* match if (addr & mask) == base */
- u_int32_t mask; /* base and mask are in network byte order */
-};
-
-/*
- * Unfortunately, the linux kernel driver uses a different structure
- * for statistics from the rest of the ports.
- * This structure serves as a common representation for the bits
- * pppd needs.
- */
-struct pppd_stats {
- unsigned int bytes_in;
- unsigned int bytes_out;
-};
-
-/* Used for storing a sequence of words. Usually malloced. */
-struct wordlist {
- struct wordlist *next;
- char *word;
-};
-
-/* An endpoint discriminator, used with multilink. */
-#define MAX_ENDP_LEN 20 /* maximum length of discriminator value */
-struct epdisc {
- unsigned char class;
- unsigned char length;
- unsigned char value[MAX_ENDP_LEN];
-};
-
-/* values for epdisc.class */
-#define EPD_NULL 0 /* null discriminator, no data */
-#define EPD_LOCAL 1
-#define EPD_IP 2
-#define EPD_MAC 3
-#define EPD_MAGIC 4
-#define EPD_PHONENUM 5
-
-typedef void (*notify_func) __P((void *, int));
-
-struct notifier {
- struct notifier *next;
- notify_func func;
- void *arg;
-};
-
-/*
- * Global variables.
- */
-
-extern int hungup; /* Physical layer has disconnected */
-extern int ifunit; /* Interface unit number */
-extern char ifname[]; /* Interface name */
-extern char hostname[]; /* Our hostname */
-extern u_char outpacket_buf[]; /* Buffer for outgoing packets */
-extern int phase; /* Current state of link - see values below */
-extern int baud_rate; /* Current link speed in bits/sec */
-extern char *progname; /* Name of this program */
-extern int redirect_stderr;/* Connector's stderr should go to file */
-extern char peer_authname[];/* Authenticated name of peer */
-extern int privileged; /* We were run by real-uid root */
-extern int need_holdoff; /* Need holdoff period after link terminates */
-extern char **script_env; /* Environment variables for scripts */
-extern int detached; /* Have detached from controlling tty */
-extern GIDSET_TYPE groups[NGROUPS_MAX]; /* groups the user is in */
-extern int ngroups; /* How many groups valid in groups */
-extern struct pppd_stats link_stats; /* byte/packet counts etc. for link */
-extern int link_stats_valid; /* set if link_stats is valid */
-extern int link_connect_time; /* time the link was up for */
-extern int using_pty; /* using pty as device (notty or pty opt.) */
-extern int log_to_fd; /* logging to this fd as well as syslog */
-extern bool log_default; /* log_to_fd is default (stdout) */
-extern char *no_ppp_msg; /* message to print if ppp not in kernel */
-extern volatile int status; /* exit status for pppd */
-extern bool devnam_fixed; /* can no longer change devnam */
-extern int unsuccess; /* # unsuccessful connection attempts */
-extern int do_callback; /* set if we want to do callback next */
-extern int doing_callback; /* set if this is a callback */
-extern char ppp_devnam[MAXPATHLEN];
-extern struct notifier *pidchange; /* for notifications of pid changing */
-extern struct notifier *phasechange; /* for notifications of phase changes */
-extern struct notifier *exitnotify; /* for notification that we're exiting */
-extern struct notifier *sigreceived; /* notification of received signal */
-extern int listen_time; /* time to listen first (ms) */
-
-/* Values for do_callback and doing_callback */
-#define CALLBACK_DIALIN 1 /* we are expecting the call back */
-#define CALLBACK_DIALOUT 2 /* we are dialling out to call back */
-
-/*
- * Variables set by command-line options.
- */
-
-extern int debug; /* Debug flag */
-extern int kdebugflag; /* Tell kernel to print debug messages */
-extern int default_device; /* Using /dev/tty or equivalent */
-extern char devnam[MAXPATHLEN]; /* Device name */
-extern int crtscts; /* Use hardware flow control */
-extern bool modem; /* Use modem control lines */
-extern int inspeed; /* Input/Output speed requested */
-extern u_int32_t netmask; /* IP netmask to set on interface */
-extern bool lockflag; /* Create lock file to lock the serial dev */
-extern bool nodetach; /* Don't detach from controlling tty */
-extern bool updetach; /* Detach from controlling tty when link up */
-extern char *initializer; /* Script to initialize physical link */
-extern char *connect_script; /* Script to establish physical link */
-extern char *disconnect_script; /* Script to disestablish physical link */
-extern char *welcomer; /* Script to welcome client after connection */
-extern char *ptycommand; /* Command to run on other side of pty */
-extern int maxconnect; /* Maximum connect time (seconds) */
-extern char user[MAXNAMELEN];/* Our name for authenticating ourselves */
-extern char passwd[MAXSECRETLEN]; /* Password for PAP or CHAP */
-extern bool auth_required; /* Peer is required to authenticate */
-extern bool persist; /* Reopen link after it goes down */
-extern bool uselogin; /* Use /etc/passwd for checking PAP */
-extern char our_name[MAXNAMELEN];/* Our name for authentication purposes */
-extern char remote_name[MAXNAMELEN]; /* Peer's name for authentication */
-extern bool explicit_remote;/* remote_name specified with remotename opt */
-extern bool demand; /* Do dial-on-demand */
-extern char *ipparam; /* Extra parameter for ip up/down scripts */
-extern bool cryptpap; /* Others' PAP passwords are encrypted */
-extern int idle_time_limit;/* Shut down link if idle for this long */
-extern int holdoff; /* Dead time before restarting */
-extern bool holdoff_specified; /* true if user gave a holdoff value */
-extern bool notty; /* Stdin/out is not a tty */
-extern char *pty_socket; /* Socket to connect to pty */
-extern char *record_file; /* File to record chars sent/received */
-extern bool sync_serial; /* Device is synchronous serial device */
-extern int maxfail; /* Max # of unsuccessful connection attempts */
-extern char linkname[MAXPATHLEN]; /* logical name for link */
-extern bool tune_kernel; /* May alter kernel settings as necessary */
-extern int connect_delay; /* Time to delay after connect script */
-extern int max_data_rate; /* max bytes/sec through charshunt */
-extern int req_unit; /* interface unit number to use */
-extern bool multilink; /* enable multilink operation */
-extern bool noendpoint; /* don't send or accept endpt. discrim. */
-extern char *bundle_name; /* bundle name for multilink */
-extern bool dump_options; /* print out option values */
-extern bool dryrun; /* check everything, print options, exit */
-
-#ifdef PPP_FILTER
-extern struct bpf_program pass_filter; /* Filter for pkts to pass */
-extern struct bpf_program active_filter; /* Filter for link-active pkts */
-#endif
-
-#ifdef MSLANMAN
-extern bool ms_lanman; /* Use LanMan password instead of NT */
- /* Has meaning only with MS-CHAP challenges */
-#endif
-
-extern char *current_option; /* the name of the option being parsed */
-extern int privileged_option; /* set iff the current option came from root */
-extern char *option_source; /* string saying where the option came from */
-extern int option_priority; /* priority of current options */
-
-/*
- * Values for phase.
- */
-#define PHASE_DEAD 0
-#define PHASE_INITIALIZE 1
-#define PHASE_SERIALCONN 2
-#define PHASE_DORMANT 3
-#define PHASE_ESTABLISH 4
-#define PHASE_AUTHENTICATE 5
-#define PHASE_CALLBACK 6
-#define PHASE_NETWORK 7
-#define PHASE_RUNNING 8
-#define PHASE_TERMINATE 9
-#define PHASE_DISCONNECT 10
-#define PHASE_HOLDOFF 11
-
-/*
- * The following struct gives the addresses of procedures to call
- * for a particular protocol.
- */
-struct protent {
- u_short protocol; /* PPP protocol number */
- /* Initialization procedure */
- void (*init) __P((int unit));
- /* Process a received packet */
- void (*input) __P((int unit, u_char *pkt, int len));
- /* Process a received protocol-reject */
- void (*protrej) __P((int unit));
- /* Lower layer has come up */
- void (*lowerup) __P((int unit));
- /* Lower layer has gone down */
- void (*lowerdown) __P((int unit));
- /* Open the protocol */
- void (*open) __P((int unit));
- /* Close the protocol */
- void (*close) __P((int unit, char *reason));
- /* Print a packet in readable form */
- int (*printpkt) __P((u_char *pkt, int len,
- void (*printer) __P((void *, char *, ...)),
- void *arg));
- /* Process a received data packet */
- void (*datainput) __P((int unit, u_char *pkt, int len));
- bool enabled_flag; /* 0 iff protocol is disabled */
- char *name; /* Text name of protocol */
- char *data_name; /* Text name of corresponding data protocol */
- option_t *options; /* List of command-line options */
- /* Check requested options, assign defaults */
- void (*check_options) __P((void));
- /* Configure interface for demand-dial */
- int (*demand_conf) __P((int unit));
- /* Say whether to bring up link for this pkt */
- int (*active_pkt) __P((u_char *pkt, int len));
-};
-
-/* Table of pointers to supported protocols */
-extern struct protent *protocols[];
-
-/*
- * This struct contains pointers to a set of procedures for
- * doing operations on a "channel". A channel provides a way
- * to send and receive PPP packets - the canonical example is
- * a serial port device in PPP line discipline (or equivalently
- * with PPP STREAMS modules pushed onto it).
- */
-struct channel {
- /* set of options for this channel */
- option_t *options;
- /* find and process a per-channel options file */
- void (*process_extra_options) __P((void));
- /* check all the options that have been given */
- void (*check_options) __P((void));
- /* get the channel ready to do PPP, return a file descriptor */
- int (*connect) __P((void));
- /* we're finished with the channel */
- void (*disconnect) __P((void));
- /* put the channel into PPP `mode' */
- int (*establish_ppp) __P((int));
- /* take the channel out of PPP `mode', restore loopback if demand */
- void (*disestablish_ppp) __P((int));
- /* set the transmit-side PPP parameters of the channel */
- void (*send_config) __P((int, u_int32_t, int, int));
- /* set the receive-side PPP parameters of the channel */
- void (*recv_config) __P((int, u_int32_t, int, int));
- /* cleanup on error or normal exit */
- void (*cleanup) __P((void));
- /* close the device, called in children after fork */
- void (*close) __P((void));
-};
-
-extern struct channel *the_channel;
-
-#define ppp_send_config(unit, mtu, accm, pc, acc) \
-do { \
- if (the_channel->send_config) \
- (*the_channel->send_config)((mtu), (accm), (pc), (acc)); \
-} while (0)
-
-#define ppp_recv_config(unit, mtu, accm, pc, acc) \
-do { \
- if (the_channel->send_config) \
- (*the_channel->recv_config)((mtu), (accm), (pc), (acc)); \
-} while (0)
-
-/*
- * Prototypes.
- */
-
-/* Procedures exported from main.c. */
-void set_ifunit __P((int)); /* set stuff that depends on ifunit */
-void detach __P((void)); /* Detach from controlling tty */
-void die __P((int)); /* Cleanup and exit */
-void quit __P((void)); /* like die(1) */
-void novm __P((char *)); /* Say we ran out of memory, and die */
-void timeout __P((void (*func)(void *), void *arg, int s, int us));
- /* Call func(arg) after s.us seconds */
-void untimeout __P((void (*func)(void *), void *arg));
- /* Cancel call to func(arg) */
-void record_child __P((int, char *, void (*) (void *), void *));
-int device_script __P((char *cmd, int in, int out, int dont_wait));
- /* Run `cmd' with given stdin and stdout */
-pid_t run_program __P((char *prog, char **args, int must_exist,
- void (*done)(void *), void *arg));
- /* Run program prog with args in child */
-void reopen_log __P((void)); /* (re)open the connection to syslog */
-void update_link_stats __P((int)); /* Get stats at link termination */
-void script_setenv __P((char *, char *, int)); /* set script env var */
-void script_unsetenv __P((char *)); /* unset script env var */
-void new_phase __P((int)); /* signal start of new phase */
-void add_notifier __P((struct notifier **, notify_func, void *));
-void remove_notifier __P((struct notifier **, notify_func, void *));
-void notify __P((struct notifier *, int));
-
-/* Procedures exported from tty.c. */
-void tty_init __P((void));
-
-/* Procedures exported from utils.c. */
-void log_packet __P((u_char *, int, char *, int));
- /* Format a packet and log it with syslog */
-void print_string __P((char *, int, void (*) (void *, char *, ...),
- void *)); /* Format a string for output */
-int slprintf __P((char *, int, char *, ...)); /* sprintf++ */
-int vslprintf __P((char *, int, char *, va_list)); /* vsprintf++ */
-size_t strlcpy __P((char *, const char *, size_t)); /* safe strcpy */
-size_t strlcat __P((char *, const char *, size_t)); /* safe strncpy */
-void dbglog __P((char *, ...)); /* log a debug message */
-void info __P((char *, ...)); /* log an informational message */
-void notice __P((char *, ...)); /* log a notice-level message */
-void warn __P((char *, ...)); /* log a warning message */
-void error __P((char *, ...)); /* log an error message */
-void fatal __P((char *, ...)); /* log an error message and die(1) */
-void init_pr_log __P((char *, int)); /* initialize for using pr_log */
-void pr_log __P((void *, char *, ...)); /* printer fn, output to syslog */
-void end_pr_log __P((void)); /* finish up after using pr_log */
-
-/* Procedures exported from auth.c */
-void link_required __P((int)); /* we are starting to use the link */
-void link_terminated __P((int)); /* we are finished with the link */
-void link_down __P((int)); /* the LCP layer has left the Opened state */
-void link_established __P((int)); /* the link is up; authenticate now */
-void start_networks __P((void)); /* start all the network control protos */
-void np_up __P((int, int)); /* a network protocol has come up */
-void np_down __P((int, int)); /* a network protocol has gone down */
-void np_finished __P((int, int)); /* a network protocol no longer needs link */
-void auth_peer_fail __P((int, int));
- /* peer failed to authenticate itself */
-void auth_peer_success __P((int, int, char *, int));
- /* peer successfully authenticated itself */
-void auth_withpeer_fail __P((int, int));
- /* we failed to authenticate ourselves */
-void auth_withpeer_success __P((int, int));
- /* we successfully authenticated ourselves */
-void auth_check_options __P((void));
- /* check authentication options supplied */
-void auth_reset __P((int)); /* check what secrets we have */
-int check_passwd __P((int, char *, int, char *, int, char **));
- /* Check peer-supplied username/password */
-int get_secret __P((int, char *, char *, char *, int *, int));
- /* get "secret" for chap */
-int auth_ip_addr __P((int, u_int32_t));
- /* check if IP address is authorized */
-int bad_ip_adrs __P((u_int32_t));
- /* check if IP address is unreasonable */
-
-/* Procedures exported from demand.c */
-void demand_conf __P((void)); /* config interface(s) for demand-dial */
-void demand_block __P((void)); /* set all NPs to queue up packets */
-void demand_unblock __P((void)); /* set all NPs to pass packets */
-void demand_discard __P((void)); /* set all NPs to discard packets */
-void demand_rexmit __P((int)); /* retransmit saved frames for an NP */
-int loop_chars __P((unsigned char *, int)); /* process chars from loopback */
-int loop_frame __P((unsigned char *, int)); /* should we bring link up? */
-
-/* Procedures exported from multilink.c */
-void mp_check_options __P((void)); /* Check multilink-related options */
-int mp_join_bundle __P((void)); /* join our link to an appropriate bundle */
-char *epdisc_to_str __P((struct epdisc *)); /* string from endpoint discrim. */
-int str_to_epdisc __P((struct epdisc *, char *)); /* endpt disc. from str */
-
-/* Procedures exported from sys-*.c */
-void sys_init __P((void)); /* Do system-dependent initialization */
-void sys_cleanup __P((void)); /* Restore system state before exiting */
-int sys_check_options __P((void)); /* Check options specified */
-void sys_close __P((void)); /* Clean up in a child before execing */
-int ppp_available __P((void)); /* Test whether ppp kernel support exists */
-int get_pty __P((int *, int *, char *, int)); /* Get pty master/slave */
-int open_ppp_loopback __P((void)); /* Open loopback for demand-dialling */
-int tty_establish_ppp __P((int)); /* Turn serial port into a ppp interface */
-void tty_disestablish_ppp __P((int)); /* Restore port to normal operation */
-void make_new_bundle __P((int, int, int, int)); /* Create new bundle */
-int bundle_attach __P((int)); /* Attach link to existing bundle */
-void cfg_bundle __P((int, int, int, int)); /* Configure existing bundle */
-void clean_check __P((void)); /* Check if line was 8-bit clean */
-void set_up_tty __P((int, int)); /* Set up port's speed, parameters, etc. */
-void restore_tty __P((int)); /* Restore port's original parameters */
-void setdtr __P((int, int)); /* Raise or lower port's DTR line */
-void output __P((int, u_char *, int)); /* Output a PPP packet */
-void wait_input __P((struct timeval *));
- /* Wait for input, with timeout */
-void add_fd __P((int)); /* Add fd to set to wait for */
-void remove_fd __P((int)); /* Remove fd from set to wait for */
-int read_packet __P((u_char *)); /* Read PPP packet */
-int get_loop_output __P((void)); /* Read pkts from loopback */
-void tty_send_config __P((int, u_int32_t, int, int));
- /* Configure i/f transmit parameters */
-void tty_set_xaccm __P((ext_accm));
- /* Set extended transmit ACCM */
-void tty_recv_config __P((int, u_int32_t, int, int));
- /* Configure i/f receive parameters */
-int ccp_test __P((int, u_char *, int, int));
- /* Test support for compression scheme */
-void ccp_flags_set __P((int, int, int));
- /* Set kernel CCP state */
-int ccp_fatal_error __P((int)); /* Test for fatal decomp error in kernel */
-int get_idle_time __P((int, struct ppp_idle *));
- /* Find out how long link has been idle */
-int get_ppp_stats __P((int, struct pppd_stats *));
- /* Return link statistics */
-void netif_set_mtu __P((int, int)); /* Set PPP interface MTU */
-int sifvjcomp __P((int, int, int, int));
- /* Configure VJ TCP header compression */
-int sifup __P((int)); /* Configure i/f up for one protocol */
-int sifnpmode __P((int u, int proto, enum NPmode mode));
- /* Set mode for handling packets for proto */
-int sifdown __P((int)); /* Configure i/f down for one protocol */
-int sifaddr __P((int, u_int32_t, u_int32_t, u_int32_t));
- /* Configure IPv4 addresses for i/f */
-int cifaddr __P((int, u_int32_t, u_int32_t));
- /* Reset i/f IP addresses */
-#ifdef INET6
-int sif6addr __P((int, eui64_t, eui64_t));
- /* Configure IPv6 addresses for i/f */
-int cif6addr __P((int, eui64_t, eui64_t));
- /* Remove an IPv6 address from i/f */
-#endif
-int sifdefaultroute __P((int, u_int32_t, u_int32_t));
- /* Create default route through i/f */
-int cifdefaultroute __P((int, u_int32_t, u_int32_t));
- /* Delete default route through i/f */
-int sifproxyarp __P((int, u_int32_t));
- /* Add proxy ARP entry for peer */
-int cifproxyarp __P((int, u_int32_t));
- /* Delete proxy ARP entry for peer */
-u_int32_t GetMask __P((u_int32_t)); /* Get appropriate netmask for address */
-int lock __P((char *)); /* Create lock file for device */
-int relock __P((int)); /* Rewrite lock file with new pid */
-void unlock __P((void)); /* Delete previously-created lock file */
-void logwtmp __P((const char *, const char *, const char *));
- /* Write entry to wtmp file */
-int get_host_seed __P((void)); /* Get host-dependent random number seed */
-int have_route_to __P((u_int32_t)); /* Check if route to addr exists */
-#ifdef PPP_FILTER
-int set_filters __P((struct bpf_program *pass, struct bpf_program *active));
- /* Set filter programs in kernel */
-#endif
-#ifdef IPX_CHANGE
-int sipxfaddr __P((int, unsigned long, unsigned char *));
-int cipxfaddr __P((int));
-#endif
-int get_if_hwaddr __P((u_char *addr, char *name));
-char *get_first_ethernet __P((void));
-
-/* Procedures exported from options.c */
-int parse_args __P((int argc, char **argv));
- /* Parse options from arguments given */
-int options_from_file __P((char *filename, int must_exist, int check_prot,
- int privileged));
- /* Parse options from an options file */
-int options_from_user __P((void)); /* Parse options from user's .ppprc */
-int options_for_tty __P((void)); /* Parse options from /etc/ppp/options.tty */
-int options_from_list __P((struct wordlist *, int privileged));
- /* Parse options from a wordlist */
-int getword __P((FILE *f, char *word, int *newlinep, char *filename));
- /* Read a word from a file */
-void option_error __P((char *fmt, ...));
- /* Print an error message about an option */
-int int_option __P((char *, int *));
- /* Simplified number_option for decimal ints */
-void add_options __P((option_t *)); /* Add extra options */
-void check_options __P((void)); /* check values after all options parsed */
-int override_value __P((const char *, int, const char *));
- /* override value if permitted by priority */
-void print_options __P((void (*) __P((void *, char *, ...)), void *));
- /* print out values of all options */
-
-int parse_dotted_ip __P((char *, u_int32_t *));
-
-/*
- * Hooks to enable plugins to change various things.
- */
-extern int (*new_phase_hook) __P((int));
-extern int (*idle_time_hook) __P((struct ppp_idle *));
-extern int (*holdoff_hook) __P((void));
-extern int (*pap_check_hook) __P((void));
-extern int (*pap_auth_hook) __P((char *user, char *passwd, char **msgp,
- struct wordlist **paddrs,
- struct wordlist **popts));
-extern void (*pap_logout_hook) __P((void));
-extern int (*pap_passwd_hook) __P((char *user, char *passwd));
-extern void (*ip_up_hook) __P((void));
-extern void (*ip_down_hook) __P((void));
-extern void (*ip_choose_hook) __P((u_int32_t *));
-
-/*
- * Inline versions of get/put char/short/long.
- * Pointer is advanced; we assume that both arguments
- * are lvalues and will already be in registers.
- * cp MUST be u_char *.
- */
-#define GETCHAR(c, cp) { \
- (c) = *(cp)++; \
-}
-#define PUTCHAR(c, cp) { \
- *(cp)++ = (u_char) (c); \
-}
-
-
-#define GETSHORT(s, cp) { \
- (s) = *(cp)++ << 8; \
- (s) |= *(cp)++; \
-}
-#define PUTSHORT(s, cp) { \
- *(cp)++ = (u_char) ((s) >> 8); \
- *(cp)++ = (u_char) (s); \
-}
-
-#define GETLONG(l, cp) { \
- (l) = *(cp)++ << 8; \
- (l) |= *(cp)++; (l) <<= 8; \
- (l) |= *(cp)++; (l) <<= 8; \
- (l) |= *(cp)++; \
-}
-#define PUTLONG(l, cp) { \
- *(cp)++ = (u_char) ((l) >> 24); \
- *(cp)++ = (u_char) ((l) >> 16); \
- *(cp)++ = (u_char) ((l) >> 8); \
- *(cp)++ = (u_char) (l); \
-}
-
-#define INCPTR(n, cp) ((cp) += (n))
-#define DECPTR(n, cp) ((cp) -= (n))
-
-/*
- * System dependent definitions for user-level 4.3BSD UNIX implementation.
- */
-
-#define TIMEOUT(r, f, t) timeout((r), (f), (t), 0)
-#define UNTIMEOUT(r, f) untimeout((r), (f))
-
-#define BCOPY(s, d, l) memcpy(d, s, l)
-#define BZERO(s, n) memset(s, 0, n)
-
-#define PRINTMSG(m, l) { info("Remote message: %0.*v", l, m); }
-
-/*
- * MAKEHEADER - Add Header fields to a packet.
- */
-#define MAKEHEADER(p, t) { \
- PUTCHAR(PPP_ALLSTATIONS, p); \
- PUTCHAR(PPP_UI, p); \
- PUTSHORT(t, p); }
-
-/*
- * Exit status values.
- */
-#define EXIT_OK 0
-#define EXIT_FATAL_ERROR 1
-#define EXIT_OPTION_ERROR 2
-#define EXIT_NOT_ROOT 3
-#define EXIT_NO_KERNEL_SUPPORT 4
-#define EXIT_USER_REQUEST 5
-#define EXIT_LOCK_FAILED 6
-#define EXIT_OPEN_FAILED 7
-#define EXIT_CONNECT_FAILED 8
-#define EXIT_PTYCMD_FAILED 9
-#define EXIT_NEGOTIATION_FAILED 10
-#define EXIT_PEER_AUTH_FAILED 11
-#define EXIT_IDLE_TIMEOUT 12
-#define EXIT_CONNECT_TIME 13
-#define EXIT_CALLBACK 14
-#define EXIT_PEER_DEAD 15
-#define EXIT_HANGUP 16
-#define EXIT_LOOPBACK 17
-#define EXIT_INIT_FAILED 18
-#define EXIT_AUTH_TOPEER_FAILED 19
-
-/*
- * Debug macros. Slightly useful for finding bugs in pppd, not particularly
- * useful for finding out why your connection isn't being established.
- */
-#ifdef DEBUGALL
-#define DEBUGMAIN 1
-#define DEBUGFSM 1
-#define DEBUGLCP 1
-#define DEBUGIPCP 1
-#define DEBUGIPV6CP 1
-#define DEBUGUPAP 1
-#define DEBUGCHAP 1
-#endif
-
-#ifndef LOG_PPP /* we use LOG_LOCAL2 for syslog by default */
-#if defined(DEBUGMAIN) || defined(DEBUGFSM) || defined(DEBUGSYS) \
- || defined(DEBUGLCP) || defined(DEBUGIPCP) || defined(DEBUGUPAP) \
- || defined(DEBUGCHAP) || defined(DEBUG) || defined(DEBUGIPV6CP)
-#define LOG_PPP LOG_LOCAL2
-#else
-#define LOG_PPP LOG_DAEMON
-#endif
-#endif /* LOG_PPP */
-
-#ifdef DEBUGMAIN
-#define MAINDEBUG(x) if (debug) dbglog x
-#else
-#define MAINDEBUG(x)
-#endif
-
-#ifdef DEBUGSYS
-#define SYSDEBUG(x) if (debug) dbglog x
-#else
-#define SYSDEBUG(x)
-#endif
-
-#ifdef DEBUGFSM
-#define FSMDEBUG(x) if (debug) dbglog x
-#else
-#define FSMDEBUG(x)
-#endif
-
-#ifdef DEBUGLCP
-#define LCPDEBUG(x) if (debug) dbglog x
-#else
-#define LCPDEBUG(x)
-#endif
-
-#ifdef DEBUGIPCP
-#define IPCPDEBUG(x) if (debug) dbglog x
-#else
-#define IPCPDEBUG(x)
-#endif
-
-#ifdef DEBUGIPV6CP
-#define IPV6CPDEBUG(x) if (debug) dbglog x
-#else
-#define IPV6CPDEBUG(x)
-#endif
-
-#ifdef DEBUGUPAP
-#define UPAPDEBUG(x) if (debug) dbglog x
-#else
-#define UPAPDEBUG(x)
-#endif
-
-#ifdef DEBUGCHAP
-#define CHAPDEBUG(x) if (debug) dbglog x
-#else
-#define CHAPDEBUG(x)
-#endif
-
-#ifdef DEBUGIPXCP
-#define IPXCPDEBUG(x) if (debug) dbglog x
-#else
-#define IPXCPDEBUG(x)
-#endif
-
-#ifndef SIGTYPE
-#if defined(sun) || defined(SYSV) || defined(POSIX_SOURCE)
-#define SIGTYPE void
-#else
-#define SIGTYPE int
-#endif /* defined(sun) || defined(SYSV) || defined(POSIX_SOURCE) */
-#endif /* SIGTYPE */
-
-#ifndef MIN
-#define MIN(a, b) ((a) < (b)? (a): (b))
-#endif
-#ifndef MAX
-#define MAX(a, b) ((a) > (b)? (a): (b))
-#endif
-
-#endif /* __PPP_H__ */
diff --git a/mdk-stage1/ppp/pppd/sys-linux.c b/mdk-stage1/ppp/pppd/sys-linux.c
deleted file mode 100644
index 3ab92dfba..000000000
--- a/mdk-stage1/ppp/pppd/sys-linux.c
+++ /dev/null
@@ -1,2672 +0,0 @@
-/*
- * sys-linux.c - System-dependent procedures for setting up
- * PPP interfaces on Linux systems
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#include <sys/ioctl.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <sys/time.h>
-#include <sys/errno.h>
-#include <sys/file.h>
-#include <sys/stat.h>
-#include <sys/utsname.h>
-#include <sys/sysmacros.h>
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <syslog.h>
-#include <string.h>
-#include <time.h>
-#include <memory.h>
-#include <utmp.h>
-#include <mntent.h>
-#include <signal.h>
-#include <fcntl.h>
-#include <ctype.h>
-#include <termios.h>
-#include <unistd.h>
-
-/* This is in netdevice.h. However, this compile will fail miserably if
- you attempt to include netdevice.h because it has so many references
- to __memcpy functions which it should not attempt to do. So, since I
- really don't use it, but it must be defined, define it now. */
-
-#ifndef MAX_ADDR_LEN
-#define MAX_ADDR_LEN 7
-#endif
-
-#if (defined(__GLIBC__) && __GLIBC__ >= 2) || defined(__dietlibc__)
-#include <asm/types.h> /* glibc 2 conflicts with linux/types.h */
-#include <net/if.h>
-#include <net/if_arp.h>
-#include <net/route.h>
-#include <netinet/if_ether.h>
-#else
-#include <linux/types.h>
-#include <linux/if.h>
-#include <linux/if_arp.h>
-#include <linux/route.h>
-#include <linux/if_ether.h>
-#endif
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include <linux/ppp_defs.h>
-#include <linux/if_ppp.h>
-
-#include "pppd.h"
-#include "fsm.h"
-#include "ipcp.h"
-
-#ifdef IPX_CHANGE
-#include "ipxcp.h"
-#if __GLIBC__ >= 2 && \
- !(defined(__powerpc__) && __GLIBC__ == 2 && __GLIBC_MINOR__ == 0)
-#include <netipx/ipx.h>
-#else
-#include <linux/ipx.h>
-#endif
-#endif /* IPX_CHANGE */
-
-#ifdef PPP_FILTER
-#include <net/bpf.h>
-#include <linux/filter.h>
-#endif /* PPP_FILTER */
-
-#ifdef LOCKLIB
-#include <sys/locks.h>
-#endif
-
-#ifdef INET6
-#ifndef _LINUX_IN6_H
-/*
- * This is in linux/include/net/ipv6.h.
- */
-
-struct in6_ifreq {
- struct in6_addr ifr6_addr;
- __u32 ifr6_prefixlen;
- unsigned int ifr6_ifindex;
-};
-#endif
-
-#define IN6_LLADDR_FROM_EUI64(sin6, eui64) do { \
- memset(&sin6.s6_addr, 0, sizeof(struct in6_addr)); \
- sin6.s6_addr16[0] = htons(0xfe80); \
- eui64_copy(eui64, sin6.s6_addr32[2]); \
- } while (0)
-
-#endif /* INET6 */
-
-/* We can get an EIO error on an ioctl if the modem has hung up */
-#define ok_error(num) ((num)==EIO)
-
-static int tty_disc = N_TTY; /* The TTY discipline */
-static int ppp_disc = N_PPP; /* The PPP discpline */
-static int initfdflags = -1; /* Initial file descriptor flags for fd */
-static int ppp_fd = -1; /* fd which is set to PPP discipline */
-static int sock_fd = -1; /* socket for doing interface ioctls */
-static int slave_fd = -1;
-static int master_fd = -1;
-#ifdef INET6
-static int sock6_fd = -1;
-#endif /* INET6 */
-static int ppp_dev_fd = -1; /* fd for /dev/ppp (new style driver) */
-static int chindex; /* channel index (new style driver) */
-
-static fd_set in_fds; /* set of fds that wait_input waits for */
-static int max_in_fd; /* highest fd set in in_fds */
-
-static int has_proxy_arp = 0;
-static int driver_version = 0;
-static int driver_modification = 0;
-static int driver_patch = 0;
-static int driver_is_old = 0;
-static int restore_term = 0; /* 1 => we've munged the terminal */
-static struct termios inittermios; /* Initial TTY termios */
-
-static int new_style_driver = 0;
-
-static char loop_name[20];
-static unsigned char inbuf[512]; /* buffer for chars read from loopback */
-
-static int if_is_up; /* Interface has been marked up */
-static u_int32_t default_route_gateway; /* Gateway for default route added */
-static u_int32_t proxy_arp_addr; /* Addr for proxy arp entry added */
-static char proxy_arp_dev[16]; /* Device for proxy arp entry */
-static u_int32_t our_old_addr; /* for detecting address changes */
-static int dynaddr_set; /* 1 if ip_dynaddr set */
-static int looped; /* 1 if using loop */
-static int link_mtu; /* mtu for the link (not bundle) */
-
-static struct utsname utsname; /* for the kernel version */
-static int kernel_version;
-#define KVERSION(j,n,p) ((j)*1000000 + (n)*1000 + (p))
-
-#define MAX_IFS 100
-
-#define FLAGS_GOOD (IFF_UP | IFF_BROADCAST)
-#define FLAGS_MASK (IFF_UP | IFF_BROADCAST | \
- IFF_POINTOPOINT | IFF_LOOPBACK | IFF_NOARP)
-
-#define SIN_ADDR(x) (((struct sockaddr_in *) (&(x)))->sin_addr.s_addr)
-
-/* Prototypes for procedures local to this file. */
-static int get_flags (int fd);
-static void set_flags (int fd, int flags);
-static int translate_speed (int bps);
-static int baud_rate_of (int speed);
-static void close_route_table (void);
-static int open_route_table (void);
-static int read_route_table (struct rtentry *rt);
-static int defaultroute_exists (struct rtentry *rt);
-static int get_ether_addr (u_int32_t ipaddr, struct sockaddr *hwaddr,
- char *name, int namelen);
-static void decode_version (char *buf, int *version, int *mod, int *patch);
-static int set_kdebugflag(int level);
-static int ppp_registered(void);
-static int make_ppp_unit(void);
-static void restore_loop(void); /* Transfer ppp unit back to loopback */
-
-extern u_char inpacket_buf[]; /* borrowed from main.c */
-
-/*
- * SET_SA_FAMILY - set the sa_family field of a struct sockaddr,
- * if it exists.
- */
-
-#define SET_SA_FAMILY(addr, family) \
- memset ((char *) &(addr), '\0', sizeof(addr)); \
- addr.sa_family = (family);
-
-/*
- * Determine if the PPP connection should still be present.
- */
-
-extern int hungup;
-
-/* new_fd is the fd of a tty */
-static void set_ppp_fd (int new_fd)
-{
- SYSDEBUG ((LOG_DEBUG, "setting ppp_fd to %d\n", new_fd));
- ppp_fd = new_fd;
- if (!new_style_driver)
- ppp_dev_fd = new_fd;
-}
-
-static int still_ppp(void)
-{
- if (new_style_driver)
- return !hungup && ppp_fd >= 0;
- if (!hungup || ppp_fd == slave_fd)
- return 1;
- if (slave_fd >= 0) {
- set_ppp_fd(slave_fd);
- return 1;
- }
- return 0;
-}
-
-/********************************************************************
- *
- * Functions to read and set the flags value in the device driver
- */
-
-static int get_flags (int fd)
-{
- int flags;
-
- if (ioctl(fd, PPPIOCGFLAGS, (caddr_t) &flags) < 0) {
- if ( ok_error (errno) )
- flags = 0;
- else
- fatal("ioctl(PPPIOCGFLAGS): %m");
- }
-
- SYSDEBUG ((LOG_DEBUG, "get flags = %x\n", flags));
- return flags;
-}
-
-/********************************************************************/
-
-static void set_flags (int fd, int flags)
-{
- SYSDEBUG ((LOG_DEBUG, "set flags = %x\n", flags));
-
- if (ioctl(fd, PPPIOCSFLAGS, (caddr_t) &flags) < 0) {
- if (! ok_error (errno) )
- fatal("ioctl(PPPIOCSFLAGS, %x): %m", flags, errno);
- }
-}
-
-/********************************************************************
- *
- * sys_init - System-dependent initialization.
- */
-
-void sys_init(void)
-{
- int flags;
-
- if (new_style_driver) {
- ppp_dev_fd = open("/dev/ppp", O_RDWR);
- if (ppp_dev_fd < 0)
- fatal("Couldn't open /dev/ppp: %m");
- flags = fcntl(ppp_dev_fd, F_GETFL);
- if (flags == -1
- || fcntl(ppp_dev_fd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("Couldn't set /dev/ppp to nonblock: %m");
- }
-
- /* Get an internet socket for doing socket ioctls. */
- sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if (sock_fd < 0)
- fatal("Couldn't create IP socket: %m(%d)", errno);
-
-#ifdef INET6
- sock6_fd = socket(AF_INET6, SOCK_DGRAM, 0);
- if (sock6_fd < 0)
- sock6_fd = -errno; /* save errno for later */
-#endif
-
- FD_ZERO(&in_fds);
- max_in_fd = 0;
-}
-
-/********************************************************************
- *
- * sys_cleanup - restore any system state we modified before exiting:
- * mark the interface down, delete default route and/or proxy arp entry.
- * This shouldn't call die() because it's called from die().
- */
-
-void sys_cleanup(void)
-{
-/*
- * Take down the device
- */
- if (if_is_up) {
- if_is_up = 0;
- sifdown(0);
- }
-/*
- * Delete any routes through the device.
- */
- if (default_route_gateway != 0)
- cifdefaultroute(0, 0, default_route_gateway);
-
- if (has_proxy_arp)
- cifproxyarp(0, proxy_arp_addr);
-}
-
-/********************************************************************
- *
- * sys_close - Clean up in a child process before execing.
- */
-void
-sys_close(void)
-{
- if (new_style_driver)
- close(ppp_dev_fd);
- if (sock_fd >= 0)
- close(sock_fd);
- if (slave_fd >= 0)
- close(slave_fd);
- if (master_fd >= 0)
- close(master_fd);
- closelog();
-}
-
-/********************************************************************
- *
- * set_kdebugflag - Define the debugging level for the kernel
- */
-
-static int set_kdebugflag (int requested_level)
-{
- if (new_style_driver && ifunit < 0)
- return 1;
- if (ioctl(ppp_dev_fd, PPPIOCSDEBUG, &requested_level) < 0) {
- if ( ! ok_error (errno) )
- error("ioctl(PPPIOCSDEBUG): %m");
- return (0);
- }
- SYSDEBUG ((LOG_INFO, "set kernel debugging level to %d",
- requested_level));
- return (1);
-}
-
-/********************************************************************
- *
- * tty_establish_ppp - Turn the serial port into a ppp interface.
- */
-
-int tty_establish_ppp (int tty_fd)
-{
- int x;
- int fd = -1;
-
-/*
- * Ensure that the tty device is in exclusive mode.
- */
- if (ioctl(tty_fd, TIOCEXCL, 0) < 0) {
- if ( ! ok_error ( errno ))
- warn("Couldn't make tty exclusive: %m");
- }
-/*
- * Demand mode - prime the old ppp device to relinquish the unit.
- */
- if (!new_style_driver && looped
- && ioctl(slave_fd, PPPIOCXFERUNIT, 0) < 0) {
- error("ioctl(transfer ppp unit): %m");
- return -1;
- }
-/*
- * Set the current tty to the PPP discpline
- */
-
-#ifndef N_SYNC_PPP
-#define N_SYNC_PPP 14
-#endif
- ppp_disc = (new_style_driver && sync_serial)? N_SYNC_PPP: N_PPP;
- if (ioctl(tty_fd, TIOCSETD, &ppp_disc) < 0) {
- if ( ! ok_error (errno) ) {
- error("Couldn't set tty to PPP discipline: %m");
- return -1;
- }
- }
-
- if (new_style_driver) {
- /* Open another instance of /dev/ppp and connect the channel to it */
- int flags;
-
- if (ioctl(tty_fd, PPPIOCGCHAN, &chindex) == -1) {
- error("Couldn't get channel number: %m");
- goto err;
- }
- dbglog("using channel %d", chindex);
- fd = open("/dev/ppp", O_RDWR);
- if (fd < 0) {
- error("Couldn't reopen /dev/ppp: %m");
- goto err;
- }
- if (ioctl(fd, PPPIOCATTCHAN, &chindex) < 0) {
- error("Couldn't attach to channel %d: %m", chindex);
- goto err_close;
- }
- flags = fcntl(fd, F_GETFL);
- if (flags == -1 || fcntl(fd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("Couldn't set /dev/ppp (channel) to nonblock: %m");
- set_ppp_fd(fd);
-
- if (!looped)
- ifunit = -1;
- if (!looped && !multilink) {
- /*
- * Create a new PPP unit.
- */
- if (make_ppp_unit() < 0)
- goto err_close;
- }
-
- if (looped)
- set_flags(ppp_dev_fd, get_flags(ppp_dev_fd) & ~SC_LOOP_TRAFFIC);
-
- if (!multilink) {
- add_fd(ppp_dev_fd);
- if (ioctl(fd, PPPIOCCONNECT, &ifunit) < 0) {
- error("Couldn't attach to PPP unit %d: %m", ifunit);
- goto err_close;
- }
- }
-
- } else {
- /*
- * Old-style driver: find out which interface we were given.
- */
- set_ppp_fd (tty_fd);
- if (ioctl(tty_fd, PPPIOCGUNIT, &x) < 0) {
- if (ok_error (errno))
- goto err;
- fatal("ioctl(PPPIOCGUNIT): %m(%d)", errno);
- }
- /* Check that we got the same unit again. */
- if (looped && x != ifunit)
- fatal("transfer_ppp failed: wanted unit %d, got %d", ifunit, x);
- ifunit = x;
-
- /*
- * Fetch the initial file flags and reset blocking mode on the file.
- */
- initfdflags = fcntl(tty_fd, F_GETFL);
- if (initfdflags == -1 ||
- fcntl(tty_fd, F_SETFL, initfdflags | O_NONBLOCK) == -1) {
- if ( ! ok_error (errno))
- warn("Couldn't set device to non-blocking mode: %m");
- }
- }
-
- looped = 0;
-
- /*
- * Enable debug in the driver if requested.
- */
- if (!looped)
- set_kdebugflag (kdebugflag);
-
-#define SC_RCVB (SC_RCV_B7_0 | SC_RCV_B7_1 | SC_RCV_EVNP | SC_RCV_ODDP)
-#define SC_LOGB (SC_DEBUG | SC_LOG_INPKT | SC_LOG_OUTPKT | SC_LOG_RAWIN \
- | SC_LOG_FLUSH)
-
- set_flags(ppp_fd, ((get_flags(ppp_fd) & ~(SC_RCVB | SC_LOGB))
- | ((kdebugflag * SC_DEBUG) & SC_LOGB)));
-
- SYSDEBUG ((LOG_NOTICE, "Using version %d.%d.%d of PPP driver",
- driver_version, driver_modification, driver_patch));
-
- return ppp_fd;
-
- err_close:
- close(fd);
- err:
- if (ioctl(tty_fd, TIOCSETD, &tty_disc) < 0 && !ok_error(errno))
- warn("Couldn't reset tty to normal line discipline: %m");
- return -1;
-}
-
-/********************************************************************
- *
- * tty_disestablish_ppp - Restore the serial port to normal operation,
- * and reconnect the ppp unit to the loopback if in demand mode.
- * This shouldn't call die() because it's called from die().
- */
-
-void tty_disestablish_ppp(int tty_fd)
-{
- if (demand)
- restore_loop();
- if (!hungup) {
-/*
- * Flush the tty output buffer so that the TIOCSETD doesn't hang.
- */
- if (tcflush(tty_fd, TCIOFLUSH) < 0)
- warn("tcflush failed: %m");
-/*
- * Restore the previous line discipline
- */
- if (ioctl(tty_fd, TIOCSETD, &tty_disc) < 0) {
- if ( ! ok_error (errno))
- error("ioctl(TIOCSETD, N_TTY): %m");
- }
-
- if (ioctl(tty_fd, TIOCNXCL, 0) < 0) {
- if ( ! ok_error (errno))
- warn("ioctl(TIOCNXCL): %m(%d)", errno);
- }
-
- /* Reset non-blocking mode on fd. */
- if (initfdflags != -1 && fcntl(tty_fd, F_SETFL, initfdflags) < 0) {
- if ( ! ok_error (errno))
- warn("Couldn't restore device fd flags: %m");
- }
- }
- initfdflags = -1;
-
- if (new_style_driver) {
- close(ppp_fd);
- ppp_fd = -1;
- if (!looped && ifunit >= 0 && ioctl(ppp_dev_fd, PPPIOCDETACH) < 0)
- error("Couldn't release PPP unit: %m");
- if (!multilink)
- remove_fd(ppp_dev_fd);
- }
-}
-
-/*
- * make_ppp_unit - make a new ppp unit for ppp_dev_fd.
- * Assumes new_style_driver.
- */
-static int make_ppp_unit()
-{
- int x;
-
- ifunit = req_unit;
- x = ioctl(ppp_dev_fd, PPPIOCNEWUNIT, &ifunit);
- if (x < 0 && req_unit >= 0 && errno == EEXIST) {
- warn("Couldn't allocate PPP unit %d as it is already in use");
- ifunit = -1;
- x = ioctl(ppp_dev_fd, PPPIOCNEWUNIT, &ifunit);
- }
- if (x < 0)
- error("Couldn't create new ppp unit: %m");
- return x;
-}
-
-/*
- * cfg_bundle - configure the existing bundle.
- * Used in demand mode.
- */
-void cfg_bundle(int mrru, int mtru, int rssn, int tssn)
-{
- int flags;
-
- if (!new_style_driver)
- return;
-
- /* set the mrru, mtu and flags */
- if (ioctl(ppp_dev_fd, PPPIOCSMRRU, &mrru) < 0)
- error("Couldn't set MRRU: %m");
- flags = get_flags(ppp_dev_fd);
- flags &= ~(SC_MP_SHORTSEQ | SC_MP_XSHORTSEQ);
- flags |= (rssn? SC_MP_SHORTSEQ: 0) | (tssn? SC_MP_XSHORTSEQ: 0)
- | (mrru? SC_MULTILINK: 0);
-
- set_flags(ppp_dev_fd, flags);
-
- /* connect up the channel */
- if (ioctl(ppp_fd, PPPIOCCONNECT, &ifunit) < 0)
- fatal("Couldn't attach to PPP unit %d: %m", ifunit);
- add_fd(ppp_dev_fd);
-}
-
-/*
- * make_new_bundle - create a new PPP unit (i.e. a bundle)
- * and connect our channel to it. This should only get called
- * if `multilink' was set at the time establish_ppp was called.
- * In demand mode this uses our existing bundle instead of making
- * a new one.
- */
-void make_new_bundle(int mrru, int mtru, int rssn, int tssn)
-{
- if (!new_style_driver)
- return;
-
- /* make us a ppp unit */
- if (make_ppp_unit() < 0)
- die(1);
-
- /* set the mrru and flags */
- cfg_bundle(mrru, mtru, rssn, tssn);
-}
-
-/*
- * bundle_attach - attach our link to a given PPP unit.
- * We assume the unit is controlled by another pppd.
- */
-int bundle_attach(int ifnum)
-{
- if (!new_style_driver)
- return -1;
-
- if (ioctl(ppp_dev_fd, PPPIOCATTACH, &ifnum) < 0) {
- if (errno == ENXIO)
- return 0; /* doesn't still exist */
- fatal("Couldn't attach to interface unit %d: %m\n", ifnum);
- }
- if (ioctl(ppp_fd, PPPIOCCONNECT, &ifnum) < 0)
- fatal("Couldn't connect to interface unit %d: %m", ifnum);
- set_flags(ppp_dev_fd, get_flags(ppp_dev_fd) | SC_MULTILINK);
-
- ifunit = ifnum;
- return 1;
-}
-
-/********************************************************************
- *
- * clean_check - Fetch the flags for the device and generate
- * appropriate error messages.
- */
-void clean_check(void)
-{
- int x;
- char *s;
-
- if (still_ppp()) {
- if (ioctl(ppp_fd, PPPIOCGFLAGS, (caddr_t) &x) == 0) {
- s = NULL;
- switch (~x & (SC_RCV_B7_0|SC_RCV_B7_1|SC_RCV_EVNP|SC_RCV_ODDP)) {
- case SC_RCV_B7_0:
- s = "all had bit 7 set to 1";
- break;
-
- case SC_RCV_B7_1:
- s = "all had bit 7 set to 0";
- break;
-
- case SC_RCV_EVNP:
- s = "all had odd parity";
- break;
-
- case SC_RCV_ODDP:
- s = "all had even parity";
- break;
- }
-
- if (s != NULL) {
- warn("Receive serial link is not 8-bit clean:");
- warn("Problem: %s", s);
- }
- }
- }
-}
-
-
-/*
- * List of valid speeds.
- */
-
-struct speed {
- int speed_int, speed_val;
-} speeds[] = {
-#ifdef B50
- { 50, B50 },
-#endif
-#ifdef B75
- { 75, B75 },
-#endif
-#ifdef B110
- { 110, B110 },
-#endif
-#ifdef B134
- { 134, B134 },
-#endif
-#ifdef B150
- { 150, B150 },
-#endif
-#ifdef B200
- { 200, B200 },
-#endif
-#ifdef B300
- { 300, B300 },
-#endif
-#ifdef B600
- { 600, B600 },
-#endif
-#ifdef B1200
- { 1200, B1200 },
-#endif
-#ifdef B1800
- { 1800, B1800 },
-#endif
-#ifdef B2000
- { 2000, B2000 },
-#endif
-#ifdef B2400
- { 2400, B2400 },
-#endif
-#ifdef B3600
- { 3600, B3600 },
-#endif
-#ifdef B4800
- { 4800, B4800 },
-#endif
-#ifdef B7200
- { 7200, B7200 },
-#endif
-#ifdef B9600
- { 9600, B9600 },
-#endif
-#ifdef B19200
- { 19200, B19200 },
-#endif
-#ifdef B38400
- { 38400, B38400 },
-#endif
-#ifdef B57600
- { 57600, B57600 },
-#endif
-#ifdef B76800
- { 76800, B76800 },
-#endif
-#ifdef B115200
- { 115200, B115200 },
-#endif
-#ifdef EXTA
- { 19200, EXTA },
-#endif
-#ifdef EXTB
- { 38400, EXTB },
-#endif
-#ifdef B230400
- { 230400, B230400 },
-#endif
-#ifdef B460800
- { 460800, B460800 },
-#endif
-#ifdef B921600
- { 921600, B921600 },
-#endif
- { 0, 0 }
-};
-
-/********************************************************************
- *
- * Translate from bits/second to a speed_t.
- */
-
-static int translate_speed (int bps)
-{
- struct speed *speedp;
-
- if (bps != 0) {
- for (speedp = speeds; speedp->speed_int; speedp++) {
- if (bps == speedp->speed_int)
- return speedp->speed_val;
- }
- warn("speed %d not supported", bps);
- }
- return 0;
-}
-
-/********************************************************************
- *
- * Translate from a speed_t to bits/second.
- */
-
-static int baud_rate_of (int speed)
-{
- struct speed *speedp;
-
- if (speed != 0) {
- for (speedp = speeds; speedp->speed_int; speedp++) {
- if (speed == speedp->speed_val)
- return speedp->speed_int;
- }
- }
- return 0;
-}
-
-/********************************************************************
- *
- * set_up_tty: Set up the serial port on `fd' for 8 bits, no parity,
- * at the requested speed, etc. If `local' is true, set CLOCAL
- * regardless of whether the modem option was specified.
- */
-
-void set_up_tty(int tty_fd, int local)
-{
- int speed;
- struct termios tios;
-
- setdtr(tty_fd, 1);
- if (tcgetattr(tty_fd, &tios) < 0) {
- if (!ok_error(errno))
- fatal("tcgetattr: %m(%d)", errno);
- return;
- }
-
- if (!restore_term)
- inittermios = tios;
-
- tios.c_cflag &= ~(CSIZE | CSTOPB | PARENB | CLOCAL);
- tios.c_cflag |= CS8 | CREAD | HUPCL;
-
- tios.c_iflag = IGNBRK | IGNPAR;
- tios.c_oflag = 0;
- tios.c_lflag = 0;
- tios.c_cc[VMIN] = 1;
- tios.c_cc[VTIME] = 0;
-
- if (local || !modem)
- tios.c_cflag ^= (CLOCAL | HUPCL);
-
- switch (crtscts) {
- case 1:
- tios.c_cflag |= CRTSCTS;
- break;
-
- case -2:
- tios.c_iflag |= IXON | IXOFF;
- tios.c_cc[VSTOP] = 0x13; /* DC3 = XOFF = ^S */
- tios.c_cc[VSTART] = 0x11; /* DC1 = XON = ^Q */
- break;
-
- case -1:
- tios.c_cflag &= ~CRTSCTS;
- break;
-
- default:
- break;
- }
-
- speed = translate_speed(inspeed);
- if (speed) {
- cfsetospeed (&tios, speed);
- cfsetispeed (&tios, speed);
- }
-/*
- * We can't proceed if the serial port speed is B0,
- * since that implies that the serial port is disabled.
- */
- else {
- speed = cfgetospeed(&tios);
- if (speed == B0)
- fatal("Baud rate for %s is 0; need explicit baud rate", devnam);
- }
-
- if (tcsetattr(tty_fd, TCSAFLUSH, &tios) < 0)
- if (!ok_error(errno))
- fatal("tcsetattr: %m");
-
- baud_rate = baud_rate_of(speed);
- restore_term = 1;
-}
-
-/********************************************************************
- *
- * setdtr - control the DTR line on the serial port.
- * This is called from die(), so it shouldn't call die().
- */
-
-void setdtr (int tty_fd, int on)
-{
- int modembits = TIOCM_DTR;
-
- ioctl(tty_fd, (on ? TIOCMBIS : TIOCMBIC), &modembits);
-}
-
-/********************************************************************
- *
- * restore_tty - restore the terminal to the saved settings.
- */
-
-void restore_tty (int tty_fd)
-{
- if (restore_term) {
- restore_term = 0;
-/*
- * Turn off echoing, because otherwise we can get into
- * a loop with the tty and the modem echoing to each other.
- * We presume we are the sole user of this tty device, so
- * when we close it, it will revert to its defaults anyway.
- */
- if (!default_device)
- inittermios.c_lflag &= ~(ECHO | ECHONL);
-
- if (tcsetattr(tty_fd, TCSAFLUSH, &inittermios) < 0) {
- if (! ok_error (errno))
- warn("tcsetattr: %m");
- }
- }
-}
-
-/********************************************************************
- *
- * output - Output PPP packet.
- */
-
-void output (int unit, unsigned char *p, int len)
-{
- int fd = ppp_fd;
- int proto;
-
- if (debug)
- dbglog("sent %P", p, len);
-
- if (len < PPP_HDRLEN)
- return;
- if (new_style_driver) {
- p += 2;
- len -= 2;
- proto = (p[0] << 8) + p[1];
- if (ifunit >= 0 && !(proto >= 0xc000 || proto == PPP_CCPFRAG))
- fd = ppp_dev_fd;
- }
- if (write(fd, p, len) < 0) {
- if (errno == EWOULDBLOCK || errno == ENOBUFS
- || errno == ENXIO || errno == EIO || errno == EINTR)
- warn("write: warning: %m (%d)", errno);
- else
- error("write: %m (%d)", errno);
- }
-}
-
-/********************************************************************
- *
- * wait_input - wait until there is data available,
- * for the length of time specified by *timo (indefinite
- * if timo is NULL).
- */
-
-void wait_input(struct timeval *timo)
-{
- fd_set ready, exc;
- int n;
-
- ready = in_fds;
- exc = in_fds;
- n = select(max_in_fd + 1, &ready, NULL, &exc, timo);
- if (n < 0 && errno != EINTR)
- fatal("select: %m(%d)", errno);
-}
-
-/*
- * add_fd - add an fd to the set that wait_input waits for.
- */
-void add_fd(int fd)
-{
- FD_SET(fd, &in_fds);
- if (fd > max_in_fd)
- max_in_fd = fd;
-}
-
-/*
- * remove_fd - remove an fd from the set that wait_input waits for.
- */
-void remove_fd(int fd)
-{
- FD_CLR(fd, &in_fds);
-}
-
-
-/********************************************************************
- *
- * read_packet - get a PPP packet from the serial device.
- */
-
-int read_packet (unsigned char *buf)
-{
- int len, nr;
-
- len = PPP_MRU + PPP_HDRLEN;
- if (new_style_driver) {
- *buf++ = PPP_ALLSTATIONS;
- *buf++ = PPP_UI;
- len -= 2;
- }
- nr = -1;
- if (ppp_fd >= 0) {
- nr = read(ppp_fd, buf, len);
- if (nr < 0 && errno != EWOULDBLOCK && errno != EIO && errno != EINTR)
- error("read: %m");
- if (nr < 0 && errno == ENXIO)
- return 0;
- }
- if (nr < 0 && new_style_driver && ifunit >= 0) {
- /* N.B. we read ppp_fd first since LCP packets come in there. */
- nr = read(ppp_dev_fd, buf, len);
- if (nr < 0 && errno != EWOULDBLOCK && errno != EIO && errno != EINTR)
- error("read /dev/ppp: %m");
- if (nr < 0 && errno == ENXIO)
- return 0;
- }
- return (new_style_driver && nr > 0)? nr+2: nr;
-}
-
-/********************************************************************
- *
- * get_loop_output - get outgoing packets from the ppp device,
- * and detect when we want to bring the real link up.
- * Return value is 1 if we need to bring up the link, 0 otherwise.
- */
-int
-get_loop_output(void)
-{
- int rv = 0;
- int n;
-
- if (new_style_driver) {
- while ((n = read_packet(inpacket_buf)) > 0)
- if (loop_frame(inpacket_buf, n))
- rv = 1;
- return rv;
- }
-
- while ((n = read(master_fd, inbuf, sizeof(inbuf))) > 0)
- if (loop_chars(inbuf, n))
- rv = 1;
-
- if (n == 0)
- fatal("eof on loopback");
-
- if (errno != EWOULDBLOCK)
- fatal("read from loopback: %m(%d)", errno);
-
- return rv;
-}
-
-/*
- * netif_set_mtu - set the MTU on the PPP network interface.
- */
-void
-netif_set_mtu(int unit, int mtu)
-{
- struct ifreq ifr;
-
- SYSDEBUG ((LOG_DEBUG, "netif_set_mtu: mtu = %d\n", mtu));
-
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
- ifr.ifr_mtu = mtu;
-
- if (ifunit >= 0 && ioctl(sock_fd, SIOCSIFMTU, (caddr_t) &ifr) < 0)
- fatal("ioctl(SIOCSIFMTU): %m");
-}
-
-/********************************************************************
- *
- * tty_send_config - configure the transmit characteristics of
- * the ppp interface.
- */
-
-void tty_send_config (int mtu,u_int32_t asyncmap,int pcomp,int accomp)
-{
- u_int x;
-
-/*
- * Set the asyncmap and other parameters for the ppp device
- */
- if (!still_ppp())
- return;
- link_mtu = mtu;
- SYSDEBUG ((LOG_DEBUG, "send_config: asyncmap = %lx\n", asyncmap));
- if (ioctl(ppp_fd, PPPIOCSASYNCMAP, (caddr_t) &asyncmap) < 0) {
- if (!ok_error(errno))
- fatal("ioctl(PPPIOCSASYNCMAP): %m(%d)", errno);
- return;
- }
-
- x = get_flags(ppp_fd);
- x = pcomp ? x | SC_COMP_PROT : x & ~SC_COMP_PROT;
- x = accomp ? x | SC_COMP_AC : x & ~SC_COMP_AC;
- x = sync_serial ? x | SC_SYNC : x & ~SC_SYNC;
- set_flags(ppp_fd, x);
-}
-
-/********************************************************************
- *
- * tty_set_xaccm - set the extended transmit ACCM for the interface.
- */
-
-void tty_set_xaccm (ext_accm accm)
-{
- SYSDEBUG ((LOG_DEBUG, "set_xaccm: %08lx %08lx %08lx %08lx\n",
- accm[0], accm[1], accm[2], accm[3]));
-
- if (!still_ppp())
- return;
- if (ioctl(ppp_fd, PPPIOCSXASYNCMAP, accm) < 0 && errno != ENOTTY) {
- if ( ! ok_error (errno))
- warn("ioctl(set extended ACCM): %m(%d)", errno);
- }
-}
-
-/********************************************************************
- *
- * tty_recv_config - configure the receive-side characteristics of
- * the ppp interface.
- */
-
-void tty_recv_config (int mru,u_int32_t asyncmap,int pcomp,int accomp)
-{
- SYSDEBUG ((LOG_DEBUG, "recv_config: mru = %d\n", mru));
-/*
- * If we were called because the link has gone down then there is nothing
- * which may be done. Just return without incident.
- */
- if (!still_ppp())
- return;
-/*
- * Set the receiver parameters
- */
- if (ioctl(ppp_fd, PPPIOCSMRU, (caddr_t) &mru) < 0) {
- if ( ! ok_error (errno))
- error("ioctl(PPPIOCSMRU): %m(%d)", errno);
- }
- if (new_style_driver && ifunit >= 0
- && ioctl(ppp_dev_fd, PPPIOCSMRU, (caddr_t) &mru) < 0)
- error("Couldn't set MRU in generic PPP layer: %m");
-
- SYSDEBUG ((LOG_DEBUG, "recv_config: asyncmap = %lx\n", asyncmap));
- if (ioctl(ppp_fd, PPPIOCSRASYNCMAP, (caddr_t) &asyncmap) < 0) {
- if (!ok_error(errno))
- error("ioctl(PPPIOCSRASYNCMAP): %m(%d)", errno);
- }
-}
-
-/********************************************************************
- *
- * ccp_test - ask kernel whether a given compression method
- * is acceptable for use.
- */
-
-int ccp_test (int unit, u_char *opt_ptr, int opt_len, int for_transmit)
-{
- struct ppp_option_data data;
-
- memset (&data, '\0', sizeof (data));
- data.ptr = opt_ptr;
- data.length = opt_len;
- data.transmit = for_transmit;
-
- if (ioctl(ppp_dev_fd, PPPIOCSCOMPRESS, (caddr_t) &data) >= 0)
- return 1;
-
- return (errno == ENOBUFS)? 0: -1;
-}
-
-/********************************************************************
- *
- * ccp_flags_set - inform kernel about the current state of CCP.
- */
-
-void ccp_flags_set (int unit, int isopen, int isup)
-{
- if (still_ppp()) {
- int x = get_flags(ppp_dev_fd);
- x = isopen? x | SC_CCP_OPEN : x &~ SC_CCP_OPEN;
- x = isup? x | SC_CCP_UP : x &~ SC_CCP_UP;
- set_flags (ppp_dev_fd, x);
- }
-}
-
-#ifdef PPP_FILTER
-/*
- * set_filters - set the active and pass filters in the kernel driver.
- */
-int set_filters(struct bpf_program *pass, struct bpf_program *active)
-{
- struct sock_fprog fp;
-
- fp.len = pass->bf_len;
- fp.filter = (struct sock_filter *) pass->bf_insns;
- if (ioctl(ppp_dev_fd, PPPIOCSPASS, &fp) < 0) {
- if (errno == ENOTTY)
- warn("kernel does not support PPP filtering");
- else
- error("Couldn't set pass-filter in kernel: %m");
- return 0;
- }
- fp.len = active->bf_len;
- fp.filter = (struct sock_filter *) active->bf_insns;
- if (ioctl(ppp_dev_fd, PPPIOCSACTIVE, &fp) < 0) {
- error("Couldn't set active-filter in kernel: %m");
- return 0;
- }
- return 1;
-}
-#endif /* PPP_FILTER */
-
-/********************************************************************
- *
- * get_idle_time - return how long the link has been idle.
- */
-int
-get_idle_time(u, ip)
- int u;
- struct ppp_idle *ip;
-{
- return ioctl(ppp_dev_fd, PPPIOCGIDLE, ip) >= 0;
-}
-
-/********************************************************************
- *
- * get_ppp_stats - return statistics for the link.
- */
-int
-get_ppp_stats(u, stats)
- int u;
- struct pppd_stats *stats;
-{
- struct ifpppstatsreq req;
-
- memset (&req, 0, sizeof (req));
-
- req.stats_ptr = (caddr_t) &req.stats;
- strlcpy(req.ifr__name, ifname, sizeof(req.ifr__name));
- if (ioctl(sock_fd, SIOCGPPPSTATS, &req) < 0) {
- error("Couldn't get PPP statistics: %m");
- return 0;
- }
- stats->bytes_in = req.stats.p.ppp_ibytes;
- stats->bytes_out = req.stats.p.ppp_obytes;
- return 1;
-}
-
-/********************************************************************
- *
- * ccp_fatal_error - returns 1 if decompression was disabled as a
- * result of an error detected after decompression of a packet,
- * 0 otherwise. This is necessary because of patent nonsense.
- */
-
-int ccp_fatal_error (int unit)
-{
- int x = get_flags(ppp_dev_fd);
-
- return x & SC_DC_FERROR;
-}
-
-/********************************************************************
- *
- * path_to_procfs - find the path to the proc file system mount point
- */
-static char proc_path[MAXPATHLEN];
-static int proc_path_len;
-
-static char *path_to_procfs(const char *tail)
-{
- struct mntent *mntent;
- FILE *fp;
-
- if (proc_path_len == 0) {
- /* Default the mount location of /proc */
- strlcpy (proc_path, "/proc", sizeof(proc_path));
- proc_path_len = 5;
- fp = fopen(MOUNTED, "r");
- if (fp != NULL) {
- while ((mntent = getmntent(fp)) != NULL) {
- if (strcmp(mntent->mnt_type, MNTTYPE_IGNORE) == 0)
- continue;
- if (strcmp(mntent->mnt_type, "proc") == 0) {
- strlcpy(proc_path, mntent->mnt_dir, sizeof(proc_path));
- proc_path_len = strlen(proc_path);
- break;
- }
- }
- fclose (fp);
- }
- }
-
- strlcpy(proc_path + proc_path_len, tail,
- sizeof(proc_path) - proc_path_len);
- return proc_path;
-}
-
-/*
- * /proc/net/route parsing stuff.
- */
-#define ROUTE_MAX_COLS 12
-FILE *route_fd = (FILE *) 0;
-static char route_buffer[512];
-static int route_dev_col, route_dest_col, route_gw_col;
-static int route_flags_col, route_mask_col;
-static int route_num_cols;
-
-static int open_route_table (void);
-static void close_route_table (void);
-static int read_route_table (struct rtentry *rt);
-
-/********************************************************************
- *
- * close_route_table - close the interface to the route table
- */
-
-static void close_route_table (void)
-{
- if (route_fd != (FILE *) 0) {
- fclose (route_fd);
- route_fd = (FILE *) 0;
- }
-}
-
-/********************************************************************
- *
- * open_route_table - open the interface to the route table
- */
-static char route_delims[] = " \t\n";
-
-static int open_route_table (void)
-{
- char *path;
-
- close_route_table();
-
- path = path_to_procfs("/net/route");
- route_fd = fopen (path, "r");
- if (route_fd == NULL) {
- error("can't open routing table %s: %m", path);
- return 0;
- }
-
- route_dev_col = 0; /* default to usual columns */
- route_dest_col = 1;
- route_gw_col = 2;
- route_flags_col = 3;
- route_mask_col = 7;
- route_num_cols = 8;
-
- /* parse header line */
- if (fgets(route_buffer, sizeof(route_buffer), route_fd) != 0) {
- char *p = route_buffer, *q;
- int col;
- for (col = 0; col < ROUTE_MAX_COLS; ++col) {
- int used = 1;
- if ((q = strtok(p, route_delims)) == 0)
- break;
- if (strcasecmp(q, "iface") == 0)
- route_dev_col = col;
- else if (strcasecmp(q, "destination") == 0)
- route_dest_col = col;
- else if (strcasecmp(q, "gateway") == 0)
- route_gw_col = col;
- else if (strcasecmp(q, "flags") == 0)
- route_flags_col = col;
- else if (strcasecmp(q, "mask") == 0)
- route_mask_col = col;
- else
- used = 0;
- if (used && col >= route_num_cols)
- route_num_cols = col + 1;
- p = NULL;
- }
- }
-
- return 1;
-}
-
-/********************************************************************
- *
- * read_route_table - read the next entry from the route table
- */
-
-static int read_route_table(struct rtentry *rt)
-{
- char *cols[ROUTE_MAX_COLS], *p;
- int col;
-
- memset (rt, '\0', sizeof (struct rtentry));
-
- if (fgets (route_buffer, sizeof (route_buffer), route_fd) == (char *) 0)
- return 0;
-
- p = route_buffer;
- for (col = 0; col < route_num_cols; ++col) {
- cols[col] = strtok(p, route_delims);
- if (cols[col] == NULL)
- return 0; /* didn't get enough columns */
- p = NULL;
- }
-
- SIN_ADDR(rt->rt_dst) = strtoul(cols[route_dest_col], NULL, 16);
- SIN_ADDR(rt->rt_gateway) = strtoul(cols[route_gw_col], NULL, 16);
- SIN_ADDR(rt->rt_genmask) = strtoul(cols[route_mask_col], NULL, 16);
-
- rt->rt_flags = (short) strtoul(cols[route_flags_col], NULL, 16);
- rt->rt_dev = cols[route_dev_col];
-
- return 1;
-}
-
-/********************************************************************
- *
- * defaultroute_exists - determine if there is a default route
- */
-
-static int defaultroute_exists (struct rtentry *rt)
-{
- int result = 0;
-
- if (!open_route_table())
- return 0;
-
- while (read_route_table(rt) != 0) {
- if ((rt->rt_flags & RTF_UP) == 0)
- continue;
-
- if (kernel_version > KVERSION(2,1,0) && SIN_ADDR(rt->rt_genmask) != 0)
- continue;
- if (SIN_ADDR(rt->rt_dst) == 0L) {
- result = 1;
- break;
- }
- }
-
- close_route_table();
- return result;
-}
-
-/*
- * have_route_to - determine if the system has any route to
- * a given IP address. `addr' is in network byte order.
- * Return value is 1 if yes, 0 if no, -1 if don't know.
- * For demand mode to work properly, we have to ignore routes
- * through our own interface.
- */
-int have_route_to(u_int32_t addr)
-{
- struct rtentry rt;
- int result = 0;
-
- if (!open_route_table())
- return -1; /* don't know */
-
- while (read_route_table(&rt)) {
- if ((rt.rt_flags & RTF_UP) == 0 || strcmp(rt.rt_dev, ifname) == 0)
- continue;
- if ((addr & SIN_ADDR(rt.rt_genmask)) == SIN_ADDR(rt.rt_dst)) {
- result = 1;
- break;
- }
- }
-
- close_route_table();
- return result;
-}
-
-/********************************************************************
- *
- * sifdefaultroute - assign a default route through the address given.
- */
-
-int sifdefaultroute (int unit, u_int32_t ouraddr, u_int32_t gateway)
-{
- struct rtentry rt;
-
- if (defaultroute_exists(&rt) && strcmp(rt.rt_dev, ifname) != 0) {
- u_int32_t old_gateway = SIN_ADDR(rt.rt_gateway);
-
- if (old_gateway != gateway)
- error("not replacing existing default route to %s [%I]",
- rt.rt_dev, old_gateway);
- return 0;
- }
-
- memset (&rt, '\0', sizeof (rt));
- SET_SA_FAMILY (rt.rt_dst, AF_INET);
- SET_SA_FAMILY (rt.rt_gateway, AF_INET);
-
- if (kernel_version > KVERSION(2,1,0)) {
- SET_SA_FAMILY (rt.rt_genmask, AF_INET);
- SIN_ADDR(rt.rt_genmask) = 0L;
- }
-
- SIN_ADDR(rt.rt_gateway) = gateway;
-
- rt.rt_flags = RTF_UP | RTF_GATEWAY;
- if (ioctl(sock_fd, SIOCADDRT, &rt) < 0) {
- if ( ! ok_error ( errno ))
- error("default route ioctl(SIOCADDRT): %m(%d)", errno);
- return 0;
- }
-
- default_route_gateway = gateway;
- return 1;
-}
-
-/********************************************************************
- *
- * cifdefaultroute - delete a default route through the address given.
- */
-
-int cifdefaultroute (int unit, u_int32_t ouraddr, u_int32_t gateway)
-{
- struct rtentry rt;
-
- default_route_gateway = 0;
-
- memset (&rt, '\0', sizeof (rt));
- SET_SA_FAMILY (rt.rt_dst, AF_INET);
- SET_SA_FAMILY (rt.rt_gateway, AF_INET);
-
- if (kernel_version > KVERSION(2,1,0)) {
- SET_SA_FAMILY (rt.rt_genmask, AF_INET);
- SIN_ADDR(rt.rt_genmask) = 0L;
- }
-
- SIN_ADDR(rt.rt_gateway) = gateway;
-
- rt.rt_flags = RTF_UP | RTF_GATEWAY;
- if (ioctl(sock_fd, SIOCDELRT, &rt) < 0 && errno != ESRCH) {
- if (still_ppp()) {
- if ( ! ok_error ( errno ))
- error("default route ioctl(SIOCDELRT): %m (%d)", errno);
- return 0;
- }
- }
-
- return 1;
-}
-
-/********************************************************************
- *
- * sifproxyarp - Make a proxy ARP entry for the peer.
- */
-
-int sifproxyarp (int unit, u_int32_t his_adr)
-{
- struct arpreq arpreq;
- char *forw_path;
-
- if (has_proxy_arp == 0) {
- memset (&arpreq, '\0', sizeof(arpreq));
-
- SET_SA_FAMILY(arpreq.arp_pa, AF_INET);
- SIN_ADDR(arpreq.arp_pa) = his_adr;
- arpreq.arp_flags = ATF_PERM | ATF_PUBL;
-/*
- * Get the hardware address of an interface on the same subnet
- * as our local address.
- */
- if (!get_ether_addr(his_adr, &arpreq.arp_ha, proxy_arp_dev,
- sizeof(proxy_arp_dev))) {
- error("Cannot determine ethernet address for proxy ARP");
- return 0;
- }
- strlcpy(arpreq.arp_dev, proxy_arp_dev, sizeof(arpreq.arp_dev));
-
- if (ioctl(sock_fd, SIOCSARP, (caddr_t)&arpreq) < 0) {
- if ( ! ok_error ( errno ))
- error("ioctl(SIOCSARP): %m(%d)", errno);
- return 0;
- }
- proxy_arp_addr = his_adr;
- has_proxy_arp = 1;
-
- if (tune_kernel) {
- forw_path = path_to_procfs("/sys/net/ipv4/ip_forward");
- if (forw_path != 0) {
- int fd = open(forw_path, O_WRONLY);
- if (fd >= 0) {
- if (write(fd, "1", 1) != 1)
- error("Couldn't enable IP forwarding: %m");
- close(fd);
- }
- }
- }
- }
-
- return 1;
-}
-
-/********************************************************************
- *
- * cifproxyarp - Delete the proxy ARP entry for the peer.
- */
-
-int cifproxyarp (int unit, u_int32_t his_adr)
-{
- struct arpreq arpreq;
-
- if (has_proxy_arp) {
- has_proxy_arp = 0;
- memset (&arpreq, '\0', sizeof(arpreq));
- SET_SA_FAMILY(arpreq.arp_pa, AF_INET);
- SIN_ADDR(arpreq.arp_pa) = his_adr;
- arpreq.arp_flags = ATF_PERM | ATF_PUBL;
- strlcpy(arpreq.arp_dev, proxy_arp_dev, sizeof(arpreq.arp_dev));
-
- if (ioctl(sock_fd, SIOCDARP, (caddr_t)&arpreq) < 0) {
- if ( ! ok_error ( errno ))
- warn("ioctl(SIOCDARP): %m(%d)", errno);
- return 0;
- }
- }
- return 1;
-}
-
-/********************************************************************
- *
- * get_ether_addr - get the hardware address of an interface on the
- * the same subnet as ipaddr.
- */
-
-static int get_ether_addr (u_int32_t ipaddr,
- struct sockaddr *hwaddr,
- char *name, int namelen)
-{
- struct ifreq *ifr, *ifend;
- u_int32_t ina, mask;
- char *aliasp;
- struct ifreq ifreq;
- struct ifconf ifc;
- struct ifreq ifs[MAX_IFS];
-
- ifc.ifc_len = sizeof(ifs);
- ifc.ifc_req = ifs;
- if (ioctl(sock_fd, SIOCGIFCONF, &ifc) < 0) {
- if ( ! ok_error ( errno ))
- error("ioctl(SIOCGIFCONF): %m(%d)", errno);
- return 0;
- }
-
- SYSDEBUG ((LOG_DEBUG, "proxy arp: scanning %d interfaces for IP %s",
- ifc.ifc_len / sizeof(struct ifreq), ip_ntoa(ipaddr)));
-/*
- * Scan through looking for an interface with an Internet
- * address on the same subnet as `ipaddr'.
- */
- ifend = ifs + (ifc.ifc_len / sizeof(struct ifreq));
- for (ifr = ifc.ifc_req; ifr < ifend; ifr++) {
- if (ifr->ifr_addr.sa_family == AF_INET) {
- ina = SIN_ADDR(ifr->ifr_addr);
- strlcpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
- SYSDEBUG ((LOG_DEBUG, "proxy arp: examining interface %s",
- ifreq.ifr_name));
-/*
- * Check that the interface is up, and not point-to-point
- * nor loopback.
- */
- if (ioctl(sock_fd, SIOCGIFFLAGS, &ifreq) < 0)
- continue;
-
- if (((ifreq.ifr_flags ^ FLAGS_GOOD) & FLAGS_MASK) != 0)
- continue;
-/*
- * Get its netmask and check that it's on the right subnet.
- */
- if (ioctl(sock_fd, SIOCGIFNETMASK, &ifreq) < 0)
- continue;
-
- mask = SIN_ADDR(ifreq.ifr_addr);
- SYSDEBUG ((LOG_DEBUG, "proxy arp: interface addr %s mask %lx",
- ip_ntoa(ina), ntohl(mask)));
-
- if (((ipaddr ^ ina) & mask) != 0)
- continue;
- break;
- }
- }
-
- if (ifr >= ifend)
- return 0;
-
- strlcpy(name, ifreq.ifr_name, namelen);
-
- /* trim off the :1 in eth0:1 */
- aliasp = strchr(name, ':');
- if (aliasp != 0)
- *aliasp = 0;
-
- info("found interface %s for proxy arp", name);
-/*
- * Now get the hardware address.
- */
- memset (&ifreq.ifr_hwaddr, 0, sizeof (struct sockaddr));
- if (ioctl (sock_fd, SIOCGIFHWADDR, &ifreq) < 0) {
- error("SIOCGIFHWADDR(%s): %m(%d)", ifreq.ifr_name, errno);
- return 0;
- }
-
- memcpy (hwaddr,
- &ifreq.ifr_hwaddr,
- sizeof (struct sockaddr));
-
- SYSDEBUG ((LOG_DEBUG,
- "proxy arp: found hwaddr %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
- (int) ((unsigned char *) &hwaddr->sa_data)[0],
- (int) ((unsigned char *) &hwaddr->sa_data)[1],
- (int) ((unsigned char *) &hwaddr->sa_data)[2],
- (int) ((unsigned char *) &hwaddr->sa_data)[3],
- (int) ((unsigned char *) &hwaddr->sa_data)[4],
- (int) ((unsigned char *) &hwaddr->sa_data)[5],
- (int) ((unsigned char *) &hwaddr->sa_data)[6],
- (int) ((unsigned char *) &hwaddr->sa_data)[7]));
- return 1;
-}
-
-/*
- * get_if_hwaddr - get the hardware address for the specified
- * network interface device.
- */
-int
-get_if_hwaddr(u_char *addr, char *name)
-{
- struct ifreq ifreq;
- int ret, sock_fd;
-
- sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if (sock_fd < 0)
- return 0;
- memset(&ifreq.ifr_hwaddr, 0, sizeof(struct sockaddr));
- strlcpy(ifreq.ifr_name, name, sizeof(ifreq.ifr_name));
- ret = ioctl(sock_fd, SIOCGIFHWADDR, &ifreq);
- close(sock_fd);
- if (ret >= 0)
- memcpy(addr, ifreq.ifr_hwaddr.sa_data, 6);
- return ret;
-}
-
-/*
- * get_first_ethernet - return the name of the first ethernet-style
- * interface on this system.
- */
-char *
-get_first_ethernet()
-{
- return "eth0";
-}
-
-/********************************************************************
- *
- * Return user specified netmask, modified by any mask we might determine
- * for address `addr' (in network byte order).
- * Here we scan through the system's list of interfaces, looking for
- * any non-point-to-point interfaces which might appear to be on the same
- * network as `addr'. If we find any, we OR in their netmask to the
- * user-specified netmask.
- */
-
-u_int32_t GetMask (u_int32_t addr)
-{
- u_int32_t mask, nmask, ina;
- struct ifreq *ifr, *ifend, ifreq;
- struct ifconf ifc;
- struct ifreq ifs[MAX_IFS];
-
- addr = ntohl(addr);
-
- if (IN_CLASSA(addr)) /* determine network mask for address class */
- nmask = IN_CLASSA_NET;
- else if (IN_CLASSB(addr))
- nmask = IN_CLASSB_NET;
- else
- nmask = IN_CLASSC_NET;
-
- /* class D nets are disallowed by bad_ip_adrs */
- mask = netmask | htonl(nmask);
-/*
- * Scan through the system's network interfaces.
- */
- ifc.ifc_len = sizeof(ifs);
- ifc.ifc_req = ifs;
- if (ioctl(sock_fd, SIOCGIFCONF, &ifc) < 0) {
- if ( ! ok_error ( errno ))
- warn("ioctl(SIOCGIFCONF): %m(%d)", errno);
- return mask;
- }
-
- ifend = (struct ifreq *) (ifc.ifc_buf + ifc.ifc_len);
- for (ifr = ifc.ifc_req; ifr < ifend; ifr++) {
-/*
- * Check the interface's internet address.
- */
- if (ifr->ifr_addr.sa_family != AF_INET)
- continue;
- ina = SIN_ADDR(ifr->ifr_addr);
- if (((ntohl(ina) ^ addr) & nmask) != 0)
- continue;
-/*
- * Check that the interface is up, and not point-to-point nor loopback.
- */
- strlcpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
- if (ioctl(sock_fd, SIOCGIFFLAGS, &ifreq) < 0)
- continue;
-
- if (((ifreq.ifr_flags ^ FLAGS_GOOD) & FLAGS_MASK) != 0)
- continue;
-/*
- * Get its netmask and OR it into our mask.
- */
- if (ioctl(sock_fd, SIOCGIFNETMASK, &ifreq) < 0)
- continue;
- mask |= SIN_ADDR(ifreq.ifr_addr);
- break;
- }
- return mask;
-}
-
-/********************************************************************
- *
- * Internal routine to decode the version.modification.patch level
- */
-
-static void decode_version (char *buf, int *version,
- int *modification, int *patch)
-{
- char *endp;
-
- *version = (int) strtoul (buf, &endp, 10);
- *modification = 0;
- *patch = 0;
-
- if (endp != buf && *endp == '.') {
- buf = endp + 1;
- *modification = (int) strtoul (buf, &endp, 10);
- if (endp != buf && *endp == '.') {
- buf = endp + 1;
- *patch = (int) strtoul (buf, &buf, 10);
- }
- }
-}
-
-/********************************************************************
- *
- * Procedure to determine if the PPP line discipline is registered.
- */
-
-static int
-ppp_registered(void)
-{
- int local_fd;
- int mfd = -1;
- int ret = 0;
- char slave[16];
-
- /*
- * We used to open the serial device and set it to the ppp line
- * discipline here, in order to create a ppp unit. But that is
- * not a good idea - the user might have specified a device that
- * they can't open (permission, or maybe it doesn't really exist).
- * So we grab a pty master/slave pair and use that.
- */
- if (!get_pty(&mfd, &local_fd, slave, 0)) {
- no_ppp_msg = "Couldn't determine if PPP is supported (no free ptys)";
- return 0;
- }
-
- /*
- * Try to put the device into the PPP discipline.
- */
- if (ioctl(local_fd, TIOCSETD, &ppp_disc) < 0) {
- error("ioctl(TIOCSETD(PPP)): %m(%d)", errno);
- } else
- ret = 1;
-
- close(local_fd);
- close(mfd);
- return ret;
-}
-
-/********************************************************************
- *
- * ppp_available - check whether the system has any ppp interfaces
- * (in fact we check whether we can do an ioctl on ppp0).
- */
-
-int ppp_available(void)
-{
- int s, ok, fd;
- struct ifreq ifr;
- int size;
- int my_version, my_modification, my_patch;
- int osmaj, osmin, ospatch;
-
- no_ppp_msg =
- "This system lacks kernel support for PPP. This could be because\n"
- "the PPP kernel module could not be loaded, or because PPP was not\n"
- "included in the kernel configuration. If PPP was included as a\n"
- "module, try `/sbin/modprobe -v ppp'. If that fails, check that\n"
- "ppp.o exists in /lib/modules/`uname -r`/net.\n"
- "See README.linux file in the ppp distribution for more details.\n";
-
- /* get the kernel version now, since we are called before sys_init */
- uname(&utsname);
- osmaj = osmin = ospatch = 0;
- sscanf(utsname.release, "%d.%d.%d", &osmaj, &osmin, &ospatch);
- kernel_version = KVERSION(osmaj, osmin, ospatch);
-
- fd = open("/dev/ppp", O_RDWR);
-#if 0
- if (fd < 0 && errno == ENOENT) {
- /* try making it and see if that helps. */
- if (mknod("/dev/ppp", S_IFCHR | S_IRUSR | S_IWUSR,
- makedev(108, 0)) >= 0) {
- fd = open("/dev/ppp", O_RDWR);
- if (fd >= 0)
- info("Created /dev/ppp device node");
- else
- unlink("/dev/ppp"); /* didn't work, undo the mknod */
- } else if (errno == EEXIST) {
- fd = open("/dev/ppp", O_RDWR);
- }
- }
-#endif /* 0 */
- if (fd >= 0) {
- new_style_driver = 1;
-
- /* XXX should get from driver */
- driver_version = 2;
- driver_modification = 4;
- driver_patch = 0;
- close(fd);
- return 1;
- }
- if (kernel_version >= KVERSION(2,3,13)) {
- if (errno == ENOENT)
- no_ppp_msg =
- "pppd is unable to open the /dev/ppp device.\n"
- "You need to create the /dev/ppp device node by\n"
- "executing the following command as root:\n"
- " mknod /dev/ppp c 108 0\n";
- return 0;
- }
-
-/*
- * Open a socket for doing the ioctl operations.
- */
- s = socket(AF_INET, SOCK_DGRAM, 0);
- if (s < 0)
- return 0;
-
- strlcpy (ifr.ifr_name, "ppp0", sizeof (ifr.ifr_name));
- ok = ioctl(s, SIOCGIFFLAGS, (caddr_t) &ifr) >= 0;
-/*
- * If the device did not exist then attempt to create one by putting the
- * current tty into the PPP discipline. If this works then obtain the
- * flags for the device again.
- */
- if (!ok) {
- if (ppp_registered()) {
- strlcpy (ifr.ifr_name, "ppp0", sizeof (ifr.ifr_name));
- ok = ioctl(s, SIOCGIFFLAGS, (caddr_t) &ifr) >= 0;
- }
- }
-/*
- * Ensure that the hardware address is for PPP and not something else
- */
- if (ok)
- ok = ioctl (s, SIOCGIFHWADDR, (caddr_t) &ifr) >= 0;
-
- if (ok && ((ifr.ifr_hwaddr.sa_family & ~0xFF) != ARPHRD_PPP))
- ok = 0;
-
-/*
- * This is the PPP device. Validate the version of the driver at this
- * point to ensure that this program will work with the driver.
- */
- if (ok) {
- char abBuffer [1024];
-
- ifr.ifr_data = abBuffer;
- size = ioctl (s, SIOCGPPPVER, (caddr_t) &ifr);
- if (size < 0) {
- error("Couldn't read driver version: %m");
- ok = 0;
- no_ppp_msg = "Sorry, couldn't verify kernel driver version\n";
-
- } else {
- decode_version(abBuffer,
- &driver_version,
- &driver_modification,
- &driver_patch);
-/*
- * Validate the version of the driver against the version that we used.
- */
- decode_version(VERSION,
- &my_version,
- &my_modification,
- &my_patch);
-
- /* The version numbers must match */
- if (driver_version != my_version)
- ok = 0;
-
- /* The modification levels must be legal */
- if (driver_modification < 3) {
- if (driver_modification >= 2) {
- /* we can cope with 2.2.0 and above */
- driver_is_old = 1;
- } else {
- ok = 0;
- }
- }
-
- close (s);
- if (!ok) {
- slprintf(route_buffer, sizeof(route_buffer),
- "Sorry - PPP driver version %d.%d.%d is out of date\n",
- driver_version, driver_modification, driver_patch);
-
- no_ppp_msg = route_buffer;
- }
- }
- }
- return ok;
-}
-
-/********************************************************************
- *
- * sifvjcomp - config tcp header compression
- */
-
-int sifvjcomp (int u, int vjcomp, int cidcomp, int maxcid)
-{
- u_int x = get_flags(ppp_dev_fd);
-
- if (vjcomp) {
- if (ioctl (ppp_dev_fd, PPPIOCSMAXCID, (caddr_t) &maxcid) < 0) {
- if (! ok_error (errno))
- error("ioctl(PPPIOCSMAXCID): %m(%d)", errno);
- vjcomp = 0;
- }
- }
-
- x = vjcomp ? x | SC_COMP_TCP : x &~ SC_COMP_TCP;
- x = cidcomp ? x & ~SC_NO_TCP_CCID : x | SC_NO_TCP_CCID;
- set_flags (ppp_dev_fd, x);
-
- return 1;
-}
-
-/********************************************************************
- *
- * sifup - Config the interface up and enable IP packets to pass.
- */
-
-int sifup(int u)
-{
- struct ifreq ifr;
-
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
- if (ioctl(sock_fd, SIOCGIFFLAGS, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl (SIOCGIFFLAGS): %m(%d)", errno);
- return 0;
- }
-
- ifr.ifr_flags |= (IFF_UP | IFF_POINTOPOINT);
- if (ioctl(sock_fd, SIOCSIFFLAGS, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFFLAGS): %m(%d)", errno);
- return 0;
- }
- if_is_up++;
-
- return 1;
-}
-
-/********************************************************************
- *
- * sifdown - Disable the indicated protocol and config the interface
- * down if there are no remaining protocols.
- */
-
-int sifdown (int u)
-{
- struct ifreq ifr;
-
- if (if_is_up && --if_is_up > 0)
- return 1;
-
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
- if (ioctl(sock_fd, SIOCGIFFLAGS, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl (SIOCGIFFLAGS): %m(%d)", errno);
- return 0;
- }
-
- ifr.ifr_flags &= ~IFF_UP;
- ifr.ifr_flags |= IFF_POINTOPOINT;
- if (ioctl(sock_fd, SIOCSIFFLAGS, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFFLAGS): %m(%d)", errno);
- return 0;
- }
- return 1;
-}
-
-/********************************************************************
- *
- * sifaddr - Config the interface IP addresses and netmask.
- */
-
-int sifaddr (int unit, u_int32_t our_adr, u_int32_t his_adr,
- u_int32_t net_mask)
-{
- struct ifreq ifr;
- struct rtentry rt;
-
- memset (&ifr, '\0', sizeof (ifr));
- memset (&rt, '\0', sizeof (rt));
-
- SET_SA_FAMILY (ifr.ifr_addr, AF_INET);
- SET_SA_FAMILY (ifr.ifr_dstaddr, AF_INET);
- SET_SA_FAMILY (ifr.ifr_netmask, AF_INET);
-
- strlcpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
-/*
- * Set our IP address
- */
- SIN_ADDR(ifr.ifr_addr) = our_adr;
- if (ioctl(sock_fd, SIOCSIFADDR, (caddr_t) &ifr) < 0) {
- if (errno != EEXIST) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFADDR): %m(%d)", errno);
- }
- else {
- warn("ioctl(SIOCSIFADDR): Address already exists");
- }
- return (0);
- }
-/*
- * Set the gateway address
- */
- SIN_ADDR(ifr.ifr_dstaddr) = his_adr;
- if (ioctl(sock_fd, SIOCSIFDSTADDR, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFDSTADDR): %m(%d)", errno);
- return (0);
- }
-/*
- * Set the netmask.
- * For recent kernels, force the netmask to 255.255.255.255.
- */
- if (kernel_version >= KVERSION(2,1,16))
- net_mask = ~0L;
- if (net_mask != 0) {
- SIN_ADDR(ifr.ifr_netmask) = net_mask;
- if (ioctl(sock_fd, SIOCSIFNETMASK, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFNETMASK): %m(%d)", errno);
- return (0);
- }
- }
-/*
- * Add the device route
- */
- if (kernel_version < KVERSION(2,1,16)) {
- SET_SA_FAMILY (rt.rt_dst, AF_INET);
- SET_SA_FAMILY (rt.rt_gateway, AF_INET);
- rt.rt_dev = ifname;
-
- SIN_ADDR(rt.rt_gateway) = 0L;
- SIN_ADDR(rt.rt_dst) = his_adr;
- rt.rt_flags = RTF_UP | RTF_HOST;
-
- if (kernel_version > KVERSION(2,1,0)) {
- SET_SA_FAMILY (rt.rt_genmask, AF_INET);
- SIN_ADDR(rt.rt_genmask) = -1L;
- }
-
- if (ioctl(sock_fd, SIOCADDRT, &rt) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCADDRT) device route: %m(%d)", errno);
- return (0);
- }
- }
-
- /* set ip_dynaddr in demand mode if address changes */
- if (demand && tune_kernel && !dynaddr_set
- && our_old_addr && our_old_addr != our_adr) {
- /* set ip_dynaddr if possible */
- char *path;
- int fd;
-
- path = path_to_procfs("/sys/net/ipv4/ip_dynaddr");
- if (path != 0 && (fd = open(path, O_WRONLY)) >= 0) {
- if (write(fd, "1", 1) != 1)
- error("Couldn't enable dynamic IP addressing: %m");
- close(fd);
- }
- dynaddr_set = 1; /* only 1 attempt */
- }
- our_old_addr = 0;
-
- return 1;
-}
-
-/********************************************************************
- *
- * cifaddr - Clear the interface IP addresses, and delete routes
- * through the interface if possible.
- */
-
-int cifaddr (int unit, u_int32_t our_adr, u_int32_t his_adr)
-{
- struct ifreq ifr;
-
- if (kernel_version < KVERSION(2,1,16)) {
-/*
- * Delete the route through the device
- */
- struct rtentry rt;
- memset (&rt, '\0', sizeof (rt));
-
- SET_SA_FAMILY (rt.rt_dst, AF_INET);
- SET_SA_FAMILY (rt.rt_gateway, AF_INET);
- rt.rt_dev = ifname;
-
- SIN_ADDR(rt.rt_gateway) = 0;
- SIN_ADDR(rt.rt_dst) = his_adr;
- rt.rt_flags = RTF_UP | RTF_HOST;
-
- if (kernel_version > KVERSION(2,1,0)) {
- SET_SA_FAMILY (rt.rt_genmask, AF_INET);
- SIN_ADDR(rt.rt_genmask) = -1L;
- }
-
- if (ioctl(sock_fd, SIOCDELRT, &rt) < 0 && errno != ESRCH) {
- if (still_ppp() && ! ok_error (errno))
- error("ioctl(SIOCDELRT) device route: %m(%d)", errno);
- return (0);
- }
- }
-
- /* This way it is possible to have an IPX-only or IPv6-only interface */
- memset(&ifr, 0, sizeof(ifr));
- SET_SA_FAMILY(ifr.ifr_addr, AF_INET);
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
-
- if (ioctl(sock_fd, SIOCSIFADDR, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno)) {
- error("ioctl(SIOCSIFADDR): %m(%d)", errno);
- return 0;
- }
- }
-
- our_old_addr = our_adr;
-
- return 1;
-}
-
-#ifdef INET6
-/********************************************************************
- *
- * sif6addr - Config the interface with an IPv6 link-local address
- */
-int sif6addr (int unit, eui64_t our_eui64, eui64_t his_eui64)
-{
- struct in6_ifreq ifr6;
- struct ifreq ifr;
- struct in6_rtmsg rt6;
-
- if (sock6_fd < 0) {
- errno = -sock6_fd;
- error("IPv6 socket creation failed: %m");
- return 0;
- }
- memset(&ifr, 0, sizeof (ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(sock6_fd, SIOCGIFINDEX, (caddr_t) &ifr) < 0) {
- error("sif6addr: ioctl(SIOCGIFINDEX): %m (%d)", errno);
- return 0;
- }
-
- /* Local interface */
- memset(&ifr6, 0, sizeof(ifr6));
- IN6_LLADDR_FROM_EUI64(ifr6.ifr6_addr, our_eui64);
- ifr6.ifr6_ifindex = ifr.ifr_ifindex;
- ifr6.ifr6_prefixlen = 10;
-
- if (ioctl(sock6_fd, SIOCSIFADDR, &ifr6) < 0) {
- error("sif6addr: ioctl(SIOCSIFADDR): %m (%d)", errno);
- return 0;
- }
-
- /* Route to remote host */
- memset(&rt6, 0, sizeof(rt6));
- IN6_LLADDR_FROM_EUI64(rt6.rtmsg_dst, his_eui64);
- rt6.rtmsg_flags = RTF_UP;
- rt6.rtmsg_dst_len = 10;
- rt6.rtmsg_ifindex = ifr.ifr_ifindex;
- rt6.rtmsg_metric = 1;
-
- if (ioctl(sock6_fd, SIOCADDRT, &rt6) < 0) {
- error("sif6addr: ioctl(SIOCADDRT): %m (%d)", errno);
- return 0;
- }
-
- return 1;
-}
-
-
-/********************************************************************
- *
- * cif6addr - Remove IPv6 address from interface
- */
-int cif6addr (int unit, eui64_t our_eui64, eui64_t his_eui64)
-{
- struct ifreq ifr;
- struct in6_ifreq ifr6;
-
- if (sock6_fd < 0) {
- errno = -sock6_fd;
- error("IPv6 socket creation failed: %m");
- return 0;
- }
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(sock6_fd, SIOCGIFINDEX, (caddr_t) &ifr) < 0) {
- error("cif6addr: ioctl(SIOCGIFINDEX): %m (%d)", errno);
- return 0;
- }
-
- memset(&ifr6, 0, sizeof(ifr6));
- IN6_LLADDR_FROM_EUI64(ifr6.ifr6_addr, our_eui64);
- ifr6.ifr6_ifindex = ifr.ifr_ifindex;
- ifr6.ifr6_prefixlen = 10;
-
- if (ioctl(sock6_fd, SIOCDIFADDR, &ifr6) < 0) {
- if (errno != EADDRNOTAVAIL) {
- if (! ok_error (errno))
- error("cif6addr: ioctl(SIOCDIFADDR): %m (%d)", errno);
- }
- else {
- warn("cif6addr: ioctl(SIOCDIFADDR): No such address");
- }
- return (0);
- }
- return 1;
-}
-#endif /* INET6 */
-
-/*
- * get_pty - get a pty master/slave pair and chown the slave side
- * to the uid given. Assumes slave_name points to >= 16 bytes of space.
- */
-int
-get_pty(master_fdp, slave_fdp, slave_name, uid)
- int *master_fdp;
- int *slave_fdp;
- char *slave_name;
- int uid;
-{
- int i, mfd, sfd = -1;
- char pty_name[16];
- struct termios tios;
-
-#ifdef TIOCGPTN
- /*
- * Try the unix98 way first.
- */
- mfd = open("/dev/ptmx", O_RDWR);
- if (mfd >= 0) {
- int ptn;
- if (ioctl(mfd, TIOCGPTN, &ptn) >= 0) {
- slprintf(pty_name, sizeof(pty_name), "/dev/pts/%d", ptn);
- chmod(pty_name, S_IRUSR | S_IWUSR);
-#ifdef TIOCSPTLCK
- ptn = 0;
- if (ioctl(mfd, TIOCSPTLCK, &ptn) < 0)
- warn("Couldn't unlock pty slave %s: %m", pty_name);
-#endif
- if ((sfd = open(pty_name, O_RDWR | O_NOCTTY)) < 0)
- warn("Couldn't open pty slave %s: %m", pty_name);
- }
- }
-#endif /* TIOCGPTN */
-
- if (sfd < 0) {
- /* the old way - scan through the pty name space */
- for (i = 0; i < 64; ++i) {
- slprintf(pty_name, sizeof(pty_name), "/dev/pty%c%x",
- 'p' + i / 16, i % 16);
- mfd = open(pty_name, O_RDWR, 0);
- if (mfd >= 0) {
- pty_name[5] = 't';
- sfd = open(pty_name, O_RDWR | O_NOCTTY, 0);
- if (sfd >= 0) {
- fchown(sfd, uid, -1);
- fchmod(sfd, S_IRUSR | S_IWUSR);
- break;
- }
- close(mfd);
- }
- }
- }
-
- if (sfd < 0)
- return 0;
-
- strlcpy(slave_name, pty_name, 16);
- *master_fdp = mfd;
- *slave_fdp = sfd;
- if (tcgetattr(sfd, &tios) == 0) {
- tios.c_cflag &= ~(CSIZE | CSTOPB | PARENB);
- tios.c_cflag |= CS8 | CREAD | CLOCAL;
- tios.c_iflag = IGNPAR;
- tios.c_oflag = 0;
- tios.c_lflag = 0;
- if (tcsetattr(sfd, TCSAFLUSH, &tios) < 0)
- warn("couldn't set attributes on pty: %m");
- } else
- warn("couldn't get attributes on pty: %m");
-
- return 1;
-}
-
-/********************************************************************
- *
- * open_loopback - open the device we use for getting packets
- * in demand mode. Under Linux, we use a pty master/slave pair.
- */
-int
-open_ppp_loopback(void)
-{
- int flags;
-
- looped = 1;
- if (new_style_driver) {
- /* allocate ourselves a ppp unit */
- if (make_ppp_unit() < 0)
- die(1);
- set_flags(ppp_dev_fd, SC_LOOP_TRAFFIC);
- set_kdebugflag(kdebugflag);
- ppp_fd = -1;
- return ppp_dev_fd;
- }
-
- if (!get_pty(&master_fd, &slave_fd, loop_name, 0))
- fatal("No free pty for loopback");
- SYSDEBUG(("using %s for loopback", loop_name));
-
- set_ppp_fd(slave_fd);
-
- flags = fcntl(master_fd, F_GETFL);
- if (flags == -1 ||
- fcntl(master_fd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("couldn't set master loopback to nonblock: %m(%d)", errno);
-
- flags = fcntl(ppp_fd, F_GETFL);
- if (flags == -1 ||
- fcntl(ppp_fd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("couldn't set slave loopback to nonblock: %m(%d)", errno);
-
- if (ioctl(ppp_fd, TIOCSETD, &ppp_disc) < 0)
- fatal("ioctl(TIOCSETD): %m(%d)", errno);
-/*
- * Find out which interface we were given.
- */
- if (ioctl(ppp_fd, PPPIOCGUNIT, &ifunit) < 0)
- fatal("ioctl(PPPIOCGUNIT): %m(%d)", errno);
-/*
- * Enable debug in the driver if requested.
- */
- set_kdebugflag (kdebugflag);
-
- return master_fd;
-}
-
-/********************************************************************
- *
- * restore_loop - reattach the ppp unit to the loopback.
- *
- * The kernel ppp driver automatically reattaches the ppp unit to
- * the loopback if the serial port is set to a line discipline other
- * than ppp, or if it detects a modem hangup. The former will happen
- * in disestablish_ppp if the latter hasn't already happened, so we
- * shouldn't need to do anything.
- *
- * Just to be sure, set the real serial port to the normal discipline.
- */
-
-static void
-restore_loop(void)
-{
- looped = 1;
- if (new_style_driver) {
- set_flags(ppp_dev_fd, get_flags(ppp_dev_fd) | SC_LOOP_TRAFFIC);
- return;
- }
- if (ppp_fd != slave_fd) {
- (void) ioctl(ppp_fd, TIOCSETD, &tty_disc);
- set_ppp_fd(slave_fd);
- }
-}
-
-/********************************************************************
- *
- * sifnpmode - Set the mode for handling packets for a given NP.
- */
-
-int
-sifnpmode(u, proto, mode)
- int u;
- int proto;
- enum NPmode mode;
-{
- struct npioctl npi;
-
- npi.protocol = proto;
- npi.mode = mode;
- if (ioctl(ppp_dev_fd, PPPIOCSNPMODE, (caddr_t) &npi) < 0) {
- if (! ok_error (errno))
- error("ioctl(PPPIOCSNPMODE, %d, %d): %m (%d)",
- proto, mode, errno);
- return 0;
- }
- return 1;
-}
-
-
-/********************************************************************
- *
- * sipxfaddr - Config the interface IPX networknumber
- */
-
-int sipxfaddr (int unit, unsigned long int network, unsigned char * node )
-{
- int result = 1;
-
-#ifdef IPX_CHANGE
- int skfd;
- struct ifreq ifr;
- struct sockaddr_ipx *sipx = (struct sockaddr_ipx *) &ifr.ifr_addr;
-
- skfd = socket (AF_IPX, SOCK_DGRAM, 0);
- if (skfd < 0) {
- if (! ok_error (errno))
- dbglog("socket(AF_IPX): %m (%d)", errno);
- result = 0;
- }
- else {
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy (ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
-
- memcpy (sipx->sipx_node, node, IPX_NODE_LEN);
- sipx->sipx_family = AF_IPX;
- sipx->sipx_port = 0;
- sipx->sipx_network = htonl (network);
- sipx->sipx_type = IPX_FRAME_ETHERII;
- sipx->sipx_action = IPX_CRTITF;
-/*
- * Set the IPX device
- */
- if (ioctl(skfd, SIOCSIFADDR, (caddr_t) &ifr) < 0) {
- result = 0;
- if (errno != EEXIST) {
- if (! ok_error (errno))
- dbglog("ioctl(SIOCSIFADDR, CRTITF): %m (%d)", errno);
- }
- else {
- warn("ioctl(SIOCSIFADDR, CRTITF): Address already exists");
- }
- }
- close (skfd);
- }
-#endif
- return result;
-}
-
-/********************************************************************
- *
- * cipxfaddr - Clear the information for the IPX network. The IPX routes
- * are removed and the device is no longer able to pass IPX
- * frames.
- */
-
-int cipxfaddr (int unit)
-{
- int result = 1;
-
-#ifdef IPX_CHANGE
- int skfd;
- struct ifreq ifr;
- struct sockaddr_ipx *sipx = (struct sockaddr_ipx *) &ifr.ifr_addr;
-
- skfd = socket (AF_IPX, SOCK_DGRAM, 0);
- if (skfd < 0) {
- if (! ok_error (errno))
- dbglog("socket(AF_IPX): %m (%d)", errno);
- result = 0;
- }
- else {
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy (ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
-
- sipx->sipx_type = IPX_FRAME_ETHERII;
- sipx->sipx_action = IPX_DLTITF;
- sipx->sipx_family = AF_IPX;
-/*
- * Set the IPX device
- */
- if (ioctl(skfd, SIOCSIFADDR, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- info("ioctl(SIOCSIFADDR, IPX_DLTITF): %m (%d)", errno);
- result = 0;
- }
- close (skfd);
- }
-#endif
- return result;
-}
-
-/*
- * Use the hostname as part of the random number seed.
- */
-int
-get_host_seed()
-{
- int h;
- char *p = hostname;
-
- h = 407;
- for (p = hostname; *p != 0; ++p)
- h = h * 37 + *p;
- return h;
-}
-
-/********************************************************************
- *
- * sys_check_options - check the options that the user specified
- */
-
-int
-sys_check_options(void)
-{
-#ifdef IPX_CHANGE
-/*
- * Disable the IPX protocol if the support is not present in the kernel.
- */
- char *path;
-
- if (ipxcp_protent.enabled_flag) {
- struct stat stat_buf;
- if ((path = path_to_procfs("/net/ipx_interface")) == 0
- || lstat(path, &stat_buf) < 0) {
- error("IPX support is not present in the kernel\n");
- ipxcp_protent.enabled_flag = 0;
- }
- }
-#endif
- if (demand && driver_is_old) {
- option_error("demand dialling is not supported by kernel driver "
- "version %d.%d.%d", driver_version, driver_modification,
- driver_patch);
- return 0;
- }
- if (multilink && !new_style_driver) {
- warn("Warning: multilink is not supported by the kernel driver");
- multilink = 0;
- }
- return 1;
-}
diff --git a/mdk-stage1/ppp/pppd/sys-linux.c.wtmp b/mdk-stage1/ppp/pppd/sys-linux.c.wtmp
deleted file mode 100644
index f1b48423e..000000000
--- a/mdk-stage1/ppp/pppd/sys-linux.c.wtmp
+++ /dev/null
@@ -1,2750 +0,0 @@
-/*
- * sys-linux.c - System-dependent procedures for setting up
- * PPP interfaces on Linux systems
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#include <sys/ioctl.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <sys/time.h>
-#include <sys/errno.h>
-#include <sys/file.h>
-#include <sys/stat.h>
-#include <sys/utsname.h>
-#include <sys/sysmacros.h>
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <syslog.h>
-#include <string.h>
-#include <time.h>
-#include <memory.h>
-#include <utmp.h>
-#include <mntent.h>
-#include <signal.h>
-#include <fcntl.h>
-#include <ctype.h>
-#include <termios.h>
-#include <unistd.h>
-
-/* This is in netdevice.h. However, this compile will fail miserably if
- you attempt to include netdevice.h because it has so many references
- to __memcpy functions which it should not attempt to do. So, since I
- really don't use it, but it must be defined, define it now. */
-
-#ifndef MAX_ADDR_LEN
-#define MAX_ADDR_LEN 7
-#endif
-
-#if __GLIBC__ >= 2
-#include <asm/types.h> /* glibc 2 conflicts with linux/types.h */
-#include <net/if.h>
-#include <net/if_arp.h>
-#include <net/route.h>
-#include <netinet/if_ether.h>
-#else
-#include <linux/types.h>
-#include <linux/if.h>
-#include <linux/if_arp.h>
-#include <linux/route.h>
-#include <linux/if_ether.h>
-#endif
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include <linux/ppp_defs.h>
-#include <linux/if_ppp.h>
-
-#include "pppd.h"
-#include "fsm.h"
-#include "ipcp.h"
-
-#ifdef IPX_CHANGE
-#include "ipxcp.h"
-#if __GLIBC__ >= 2 && \
- !(defined(__powerpc__) && __GLIBC__ == 2 && __GLIBC_MINOR__ == 0)
-#include <netipx/ipx.h>
-#else
-#include <linux/ipx.h>
-#endif
-#endif /* IPX_CHANGE */
-
-#ifdef PPP_FILTER
-#include <net/bpf.h>
-#include <linux/filter.h>
-#endif /* PPP_FILTER */
-
-#ifdef LOCKLIB
-#include <sys/locks.h>
-#endif
-
-#ifdef INET6
-#ifndef _LINUX_IN6_H
-/*
- * This is in linux/include/net/ipv6.h.
- */
-
-struct in6_ifreq {
- struct in6_addr ifr6_addr;
- __u32 ifr6_prefixlen;
- unsigned int ifr6_ifindex;
-};
-#endif
-
-#define IN6_LLADDR_FROM_EUI64(sin6, eui64) do { \
- memset(&sin6.s6_addr, 0, sizeof(struct in6_addr)); \
- sin6.s6_addr16[0] = htons(0xfe80); \
- eui64_copy(eui64, sin6.s6_addr32[2]); \
- } while (0)
-
-#endif /* INET6 */
-
-/* We can get an EIO error on an ioctl if the modem has hung up */
-#define ok_error(num) ((num)==EIO)
-
-static int tty_disc = N_TTY; /* The TTY discipline */
-static int ppp_disc = N_PPP; /* The PPP discpline */
-static int initfdflags = -1; /* Initial file descriptor flags for fd */
-static int ppp_fd = -1; /* fd which is set to PPP discipline */
-static int sock_fd = -1; /* socket for doing interface ioctls */
-static int slave_fd = -1;
-static int master_fd = -1;
-#ifdef INET6
-static int sock6_fd = -1;
-#endif /* INET6 */
-static int ppp_dev_fd = -1; /* fd for /dev/ppp (new style driver) */
-static int chindex; /* channel index (new style driver) */
-
-static fd_set in_fds; /* set of fds that wait_input waits for */
-static int max_in_fd; /* highest fd set in in_fds */
-
-static int has_proxy_arp = 0;
-static int driver_version = 0;
-static int driver_modification = 0;
-static int driver_patch = 0;
-static int driver_is_old = 0;
-static int restore_term = 0; /* 1 => we've munged the terminal */
-static struct termios inittermios; /* Initial TTY termios */
-
-static int new_style_driver = 0;
-
-static char loop_name[20];
-static unsigned char inbuf[512]; /* buffer for chars read from loopback */
-
-static int if_is_up; /* Interface has been marked up */
-static u_int32_t default_route_gateway; /* Gateway for default route added */
-static u_int32_t proxy_arp_addr; /* Addr for proxy arp entry added */
-static char proxy_arp_dev[16]; /* Device for proxy arp entry */
-static u_int32_t our_old_addr; /* for detecting address changes */
-static int dynaddr_set; /* 1 if ip_dynaddr set */
-static int looped; /* 1 if using loop */
-static int link_mtu; /* mtu for the link (not bundle) */
-
-static struct utsname utsname; /* for the kernel version */
-static int kernel_version;
-#define KVERSION(j,n,p) ((j)*1000000 + (n)*1000 + (p))
-
-#define MAX_IFS 100
-
-#define FLAGS_GOOD (IFF_UP | IFF_BROADCAST)
-#define FLAGS_MASK (IFF_UP | IFF_BROADCAST | \
- IFF_POINTOPOINT | IFF_LOOPBACK | IFF_NOARP)
-
-#define SIN_ADDR(x) (((struct sockaddr_in *) (&(x)))->sin_addr.s_addr)
-
-/* Prototypes for procedures local to this file. */
-static int get_flags (int fd);
-static void set_flags (int fd, int flags);
-static int translate_speed (int bps);
-static int baud_rate_of (int speed);
-static void close_route_table (void);
-static int open_route_table (void);
-static int read_route_table (struct rtentry *rt);
-static int defaultroute_exists (struct rtentry *rt);
-static int get_ether_addr (u_int32_t ipaddr, struct sockaddr *hwaddr,
- char *name, int namelen);
-static void decode_version (char *buf, int *version, int *mod, int *patch);
-static int set_kdebugflag(int level);
-static int ppp_registered(void);
-static int make_ppp_unit(void);
-static void restore_loop(void); /* Transfer ppp unit back to loopback */
-
-extern u_char inpacket_buf[]; /* borrowed from main.c */
-
-/*
- * SET_SA_FAMILY - set the sa_family field of a struct sockaddr,
- * if it exists.
- */
-
-#define SET_SA_FAMILY(addr, family) \
- memset ((char *) &(addr), '\0', sizeof(addr)); \
- addr.sa_family = (family);
-
-/*
- * Determine if the PPP connection should still be present.
- */
-
-extern int hungup;
-
-/* new_fd is the fd of a tty */
-static void set_ppp_fd (int new_fd)
-{
- SYSDEBUG ((LOG_DEBUG, "setting ppp_fd to %d\n", new_fd));
- ppp_fd = new_fd;
- if (!new_style_driver)
- ppp_dev_fd = new_fd;
-}
-
-static int still_ppp(void)
-{
- if (new_style_driver)
- return !hungup && ppp_fd >= 0;
- if (!hungup || ppp_fd == slave_fd)
- return 1;
- if (slave_fd >= 0) {
- set_ppp_fd(slave_fd);
- return 1;
- }
- return 0;
-}
-
-/********************************************************************
- *
- * Functions to read and set the flags value in the device driver
- */
-
-static int get_flags (int fd)
-{
- int flags;
-
- if (ioctl(fd, PPPIOCGFLAGS, (caddr_t) &flags) < 0) {
- if ( ok_error (errno) )
- flags = 0;
- else
- fatal("ioctl(PPPIOCGFLAGS): %m");
- }
-
- SYSDEBUG ((LOG_DEBUG, "get flags = %x\n", flags));
- return flags;
-}
-
-/********************************************************************/
-
-static void set_flags (int fd, int flags)
-{
- SYSDEBUG ((LOG_DEBUG, "set flags = %x\n", flags));
-
- if (ioctl(fd, PPPIOCSFLAGS, (caddr_t) &flags) < 0) {
- if (! ok_error (errno) )
- fatal("ioctl(PPPIOCSFLAGS, %x): %m", flags, errno);
- }
-}
-
-/********************************************************************
- *
- * sys_init - System-dependent initialization.
- */
-
-void sys_init(void)
-{
- int flags;
-
- if (new_style_driver) {
- ppp_dev_fd = open("/dev/ppp", O_RDWR);
- if (ppp_dev_fd < 0)
- fatal("Couldn't open /dev/ppp: %m");
- flags = fcntl(ppp_dev_fd, F_GETFL);
- if (flags == -1
- || fcntl(ppp_dev_fd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("Couldn't set /dev/ppp to nonblock: %m");
- }
-
- /* Get an internet socket for doing socket ioctls. */
- sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if (sock_fd < 0)
- fatal("Couldn't create IP socket: %m(%d)", errno);
-
-#ifdef INET6
- sock6_fd = socket(AF_INET6, SOCK_DGRAM, 0);
- if (sock6_fd < 0)
- sock6_fd = -errno; /* save errno for later */
-#endif
-
- FD_ZERO(&in_fds);
- max_in_fd = 0;
-}
-
-/********************************************************************
- *
- * sys_cleanup - restore any system state we modified before exiting:
- * mark the interface down, delete default route and/or proxy arp entry.
- * This shouldn't call die() because it's called from die().
- */
-
-void sys_cleanup(void)
-{
-/*
- * Take down the device
- */
- if (if_is_up) {
- if_is_up = 0;
- sifdown(0);
- }
-/*
- * Delete any routes through the device.
- */
- if (default_route_gateway != 0)
- cifdefaultroute(0, 0, default_route_gateway);
-
- if (has_proxy_arp)
- cifproxyarp(0, proxy_arp_addr);
-}
-
-/********************************************************************
- *
- * sys_close - Clean up in a child process before execing.
- */
-void
-sys_close(void)
-{
- if (new_style_driver)
- close(ppp_dev_fd);
- if (sock_fd >= 0)
- close(sock_fd);
- if (slave_fd >= 0)
- close(slave_fd);
- if (master_fd >= 0)
- close(master_fd);
- closelog();
-}
-
-/********************************************************************
- *
- * set_kdebugflag - Define the debugging level for the kernel
- */
-
-static int set_kdebugflag (int requested_level)
-{
- if (new_style_driver && ifunit < 0)
- return 1;
- if (ioctl(ppp_dev_fd, PPPIOCSDEBUG, &requested_level) < 0) {
- if ( ! ok_error (errno) )
- error("ioctl(PPPIOCSDEBUG): %m");
- return (0);
- }
- SYSDEBUG ((LOG_INFO, "set kernel debugging level to %d",
- requested_level));
- return (1);
-}
-
-/********************************************************************
- *
- * tty_establish_ppp - Turn the serial port into a ppp interface.
- */
-
-int tty_establish_ppp (int tty_fd)
-{
- int x;
- int fd = -1;
-
-/*
- * Ensure that the tty device is in exclusive mode.
- */
- if (ioctl(tty_fd, TIOCEXCL, 0) < 0) {
- if ( ! ok_error ( errno ))
- warn("Couldn't make tty exclusive: %m");
- }
-/*
- * Demand mode - prime the old ppp device to relinquish the unit.
- */
- if (!new_style_driver && looped
- && ioctl(slave_fd, PPPIOCXFERUNIT, 0) < 0) {
- error("ioctl(transfer ppp unit): %m");
- return -1;
- }
-/*
- * Set the current tty to the PPP discpline
- */
-
-#ifndef N_SYNC_PPP
-#define N_SYNC_PPP 14
-#endif
- ppp_disc = (new_style_driver && sync_serial)? N_SYNC_PPP: N_PPP;
- if (ioctl(tty_fd, TIOCSETD, &ppp_disc) < 0) {
- if ( ! ok_error (errno) ) {
- error("Couldn't set tty to PPP discipline: %m");
- return -1;
- }
- }
-
- if (new_style_driver) {
- /* Open another instance of /dev/ppp and connect the channel to it */
- int flags;
-
- if (ioctl(tty_fd, PPPIOCGCHAN, &chindex) == -1) {
- error("Couldn't get channel number: %m");
- goto err;
- }
- dbglog("using channel %d", chindex);
- fd = open("/dev/ppp", O_RDWR);
- if (fd < 0) {
- error("Couldn't reopen /dev/ppp: %m");
- goto err;
- }
- if (ioctl(fd, PPPIOCATTCHAN, &chindex) < 0) {
- error("Couldn't attach to channel %d: %m", chindex);
- goto err_close;
- }
- flags = fcntl(fd, F_GETFL);
- if (flags == -1 || fcntl(fd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("Couldn't set /dev/ppp (channel) to nonblock: %m");
- set_ppp_fd(fd);
-
- if (!looped)
- ifunit = -1;
- if (!looped && !multilink) {
- /*
- * Create a new PPP unit.
- */
- if (make_ppp_unit() < 0)
- goto err_close;
- }
-
- if (looped)
- set_flags(ppp_dev_fd, get_flags(ppp_dev_fd) & ~SC_LOOP_TRAFFIC);
-
- if (!multilink) {
- add_fd(ppp_dev_fd);
- if (ioctl(fd, PPPIOCCONNECT, &ifunit) < 0) {
- error("Couldn't attach to PPP unit %d: %m", ifunit);
- goto err_close;
- }
- }
-
- } else {
- /*
- * Old-style driver: find out which interface we were given.
- */
- set_ppp_fd (tty_fd);
- if (ioctl(tty_fd, PPPIOCGUNIT, &x) < 0) {
- if (ok_error (errno))
- goto err;
- fatal("ioctl(PPPIOCGUNIT): %m(%d)", errno);
- }
- /* Check that we got the same unit again. */
- if (looped && x != ifunit)
- fatal("transfer_ppp failed: wanted unit %d, got %d", ifunit, x);
- ifunit = x;
-
- /*
- * Fetch the initial file flags and reset blocking mode on the file.
- */
- initfdflags = fcntl(tty_fd, F_GETFL);
- if (initfdflags == -1 ||
- fcntl(tty_fd, F_SETFL, initfdflags | O_NONBLOCK) == -1) {
- if ( ! ok_error (errno))
- warn("Couldn't set device to non-blocking mode: %m");
- }
- }
-
- looped = 0;
-
- /*
- * Enable debug in the driver if requested.
- */
- if (!looped)
- set_kdebugflag (kdebugflag);
-
-#define SC_RCVB (SC_RCV_B7_0 | SC_RCV_B7_1 | SC_RCV_EVNP | SC_RCV_ODDP)
-#define SC_LOGB (SC_DEBUG | SC_LOG_INPKT | SC_LOG_OUTPKT | SC_LOG_RAWIN \
- | SC_LOG_FLUSH)
-
- set_flags(ppp_fd, ((get_flags(ppp_fd) & ~(SC_RCVB | SC_LOGB))
- | ((kdebugflag * SC_DEBUG) & SC_LOGB)));
-
- SYSDEBUG ((LOG_NOTICE, "Using version %d.%d.%d of PPP driver",
- driver_version, driver_modification, driver_patch));
-
- return ppp_fd;
-
- err_close:
- close(fd);
- err:
- if (ioctl(tty_fd, TIOCSETD, &tty_disc) < 0 && !ok_error(errno))
- warn("Couldn't reset tty to normal line discipline: %m");
- return -1;
-}
-
-/********************************************************************
- *
- * tty_disestablish_ppp - Restore the serial port to normal operation,
- * and reconnect the ppp unit to the loopback if in demand mode.
- * This shouldn't call die() because it's called from die().
- */
-
-void tty_disestablish_ppp(int tty_fd)
-{
- if (demand)
- restore_loop();
- if (!hungup) {
-/*
- * Flush the tty output buffer so that the TIOCSETD doesn't hang.
- */
- if (tcflush(tty_fd, TCIOFLUSH) < 0)
- warn("tcflush failed: %m");
-/*
- * Restore the previous line discipline
- */
- if (ioctl(tty_fd, TIOCSETD, &tty_disc) < 0) {
- if ( ! ok_error (errno))
- error("ioctl(TIOCSETD, N_TTY): %m");
- }
-
- if (ioctl(tty_fd, TIOCNXCL, 0) < 0) {
- if ( ! ok_error (errno))
- warn("ioctl(TIOCNXCL): %m(%d)", errno);
- }
-
- /* Reset non-blocking mode on fd. */
- if (initfdflags != -1 && fcntl(tty_fd, F_SETFL, initfdflags) < 0) {
- if ( ! ok_error (errno))
- warn("Couldn't restore device fd flags: %m");
- }
- }
- initfdflags = -1;
-
- if (new_style_driver) {
- close(ppp_fd);
- ppp_fd = -1;
- if (!looped && ifunit >= 0 && ioctl(ppp_dev_fd, PPPIOCDETACH) < 0)
- error("Couldn't release PPP unit: %m");
- if (!multilink)
- remove_fd(ppp_dev_fd);
- }
-}
-
-/*
- * make_ppp_unit - make a new ppp unit for ppp_dev_fd.
- * Assumes new_style_driver.
- */
-static int make_ppp_unit()
-{
- int x;
-
- ifunit = req_unit;
- x = ioctl(ppp_dev_fd, PPPIOCNEWUNIT, &ifunit);
- if (x < 0 && req_unit >= 0 && errno == EEXIST) {
- warn("Couldn't allocate PPP unit %d as it is already in use");
- ifunit = -1;
- x = ioctl(ppp_dev_fd, PPPIOCNEWUNIT, &ifunit);
- }
- if (x < 0)
- error("Couldn't create new ppp unit: %m");
- return x;
-}
-
-/*
- * cfg_bundle - configure the existing bundle.
- * Used in demand mode.
- */
-void cfg_bundle(int mrru, int mtru, int rssn, int tssn)
-{
- int flags;
-
- if (!new_style_driver)
- return;
-
- /* set the mrru, mtu and flags */
- if (ioctl(ppp_dev_fd, PPPIOCSMRRU, &mrru) < 0)
- error("Couldn't set MRRU: %m");
- flags = get_flags(ppp_dev_fd);
- flags &= ~(SC_MP_SHORTSEQ | SC_MP_XSHORTSEQ);
- flags |= (rssn? SC_MP_SHORTSEQ: 0) | (tssn? SC_MP_XSHORTSEQ: 0)
- | (mrru? SC_MULTILINK: 0);
-
- set_flags(ppp_dev_fd, flags);
-
- /* connect up the channel */
- if (ioctl(ppp_fd, PPPIOCCONNECT, &ifunit) < 0)
- fatal("Couldn't attach to PPP unit %d: %m", ifunit);
- add_fd(ppp_dev_fd);
-}
-
-/*
- * make_new_bundle - create a new PPP unit (i.e. a bundle)
- * and connect our channel to it. This should only get called
- * if `multilink' was set at the time establish_ppp was called.
- * In demand mode this uses our existing bundle instead of making
- * a new one.
- */
-void make_new_bundle(int mrru, int mtru, int rssn, int tssn)
-{
- if (!new_style_driver)
- return;
-
- /* make us a ppp unit */
- if (make_ppp_unit() < 0)
- die(1);
-
- /* set the mrru and flags */
- cfg_bundle(mrru, mtru, rssn, tssn);
-}
-
-/*
- * bundle_attach - attach our link to a given PPP unit.
- * We assume the unit is controlled by another pppd.
- */
-int bundle_attach(int ifnum)
-{
- if (!new_style_driver)
- return -1;
-
- if (ioctl(ppp_dev_fd, PPPIOCATTACH, &ifnum) < 0) {
- if (errno == ENXIO)
- return 0; /* doesn't still exist */
- fatal("Couldn't attach to interface unit %d: %m\n", ifnum);
- }
- if (ioctl(ppp_fd, PPPIOCCONNECT, &ifnum) < 0)
- fatal("Couldn't connect to interface unit %d: %m", ifnum);
- set_flags(ppp_dev_fd, get_flags(ppp_dev_fd) | SC_MULTILINK);
-
- ifunit = ifnum;
- return 1;
-}
-
-/********************************************************************
- *
- * clean_check - Fetch the flags for the device and generate
- * appropriate error messages.
- */
-void clean_check(void)
-{
- int x;
- char *s;
-
- if (still_ppp()) {
- if (ioctl(ppp_fd, PPPIOCGFLAGS, (caddr_t) &x) == 0) {
- s = NULL;
- switch (~x & (SC_RCV_B7_0|SC_RCV_B7_1|SC_RCV_EVNP|SC_RCV_ODDP)) {
- case SC_RCV_B7_0:
- s = "all had bit 7 set to 1";
- break;
-
- case SC_RCV_B7_1:
- s = "all had bit 7 set to 0";
- break;
-
- case SC_RCV_EVNP:
- s = "all had odd parity";
- break;
-
- case SC_RCV_ODDP:
- s = "all had even parity";
- break;
- }
-
- if (s != NULL) {
- warn("Receive serial link is not 8-bit clean:");
- warn("Problem: %s", s);
- }
- }
- }
-}
-
-
-/*
- * List of valid speeds.
- */
-
-struct speed {
- int speed_int, speed_val;
-} speeds[] = {
-#ifdef B50
- { 50, B50 },
-#endif
-#ifdef B75
- { 75, B75 },
-#endif
-#ifdef B110
- { 110, B110 },
-#endif
-#ifdef B134
- { 134, B134 },
-#endif
-#ifdef B150
- { 150, B150 },
-#endif
-#ifdef B200
- { 200, B200 },
-#endif
-#ifdef B300
- { 300, B300 },
-#endif
-#ifdef B600
- { 600, B600 },
-#endif
-#ifdef B1200
- { 1200, B1200 },
-#endif
-#ifdef B1800
- { 1800, B1800 },
-#endif
-#ifdef B2000
- { 2000, B2000 },
-#endif
-#ifdef B2400
- { 2400, B2400 },
-#endif
-#ifdef B3600
- { 3600, B3600 },
-#endif
-#ifdef B4800
- { 4800, B4800 },
-#endif
-#ifdef B7200
- { 7200, B7200 },
-#endif
-#ifdef B9600
- { 9600, B9600 },
-#endif
-#ifdef B19200
- { 19200, B19200 },
-#endif
-#ifdef B38400
- { 38400, B38400 },
-#endif
-#ifdef B57600
- { 57600, B57600 },
-#endif
-#ifdef B76800
- { 76800, B76800 },
-#endif
-#ifdef B115200
- { 115200, B115200 },
-#endif
-#ifdef EXTA
- { 19200, EXTA },
-#endif
-#ifdef EXTB
- { 38400, EXTB },
-#endif
-#ifdef B230400
- { 230400, B230400 },
-#endif
-#ifdef B460800
- { 460800, B460800 },
-#endif
-#ifdef B921600
- { 921600, B921600 },
-#endif
- { 0, 0 }
-};
-
-/********************************************************************
- *
- * Translate from bits/second to a speed_t.
- */
-
-static int translate_speed (int bps)
-{
- struct speed *speedp;
-
- if (bps != 0) {
- for (speedp = speeds; speedp->speed_int; speedp++) {
- if (bps == speedp->speed_int)
- return speedp->speed_val;
- }
- warn("speed %d not supported", bps);
- }
- return 0;
-}
-
-/********************************************************************
- *
- * Translate from a speed_t to bits/second.
- */
-
-static int baud_rate_of (int speed)
-{
- struct speed *speedp;
-
- if (speed != 0) {
- for (speedp = speeds; speedp->speed_int; speedp++) {
- if (speed == speedp->speed_val)
- return speedp->speed_int;
- }
- }
- return 0;
-}
-
-/********************************************************************
- *
- * set_up_tty: Set up the serial port on `fd' for 8 bits, no parity,
- * at the requested speed, etc. If `local' is true, set CLOCAL
- * regardless of whether the modem option was specified.
- */
-
-void set_up_tty(int tty_fd, int local)
-{
- int speed;
- struct termios tios;
-
- setdtr(tty_fd, 1);
- if (tcgetattr(tty_fd, &tios) < 0) {
- if (!ok_error(errno))
- fatal("tcgetattr: %m(%d)", errno);
- return;
- }
-
- if (!restore_term)
- inittermios = tios;
-
- tios.c_cflag &= ~(CSIZE | CSTOPB | PARENB | CLOCAL);
- tios.c_cflag |= CS8 | CREAD | HUPCL;
-
- tios.c_iflag = IGNBRK | IGNPAR;
- tios.c_oflag = 0;
- tios.c_lflag = 0;
- tios.c_cc[VMIN] = 1;
- tios.c_cc[VTIME] = 0;
-
- if (local || !modem)
- tios.c_cflag ^= (CLOCAL | HUPCL);
-
- switch (crtscts) {
- case 1:
- tios.c_cflag |= CRTSCTS;
- break;
-
- case -2:
- tios.c_iflag |= IXON | IXOFF;
- tios.c_cc[VSTOP] = 0x13; /* DC3 = XOFF = ^S */
- tios.c_cc[VSTART] = 0x11; /* DC1 = XON = ^Q */
- break;
-
- case -1:
- tios.c_cflag &= ~CRTSCTS;
- break;
-
- default:
- break;
- }
-
- speed = translate_speed(inspeed);
- if (speed) {
- cfsetospeed (&tios, speed);
- cfsetispeed (&tios, speed);
- }
-/*
- * We can't proceed if the serial port speed is B0,
- * since that implies that the serial port is disabled.
- */
- else {
- speed = cfgetospeed(&tios);
- if (speed == B0)
- fatal("Baud rate for %s is 0; need explicit baud rate", devnam);
- }
-
- if (tcsetattr(tty_fd, TCSAFLUSH, &tios) < 0)
- if (!ok_error(errno))
- fatal("tcsetattr: %m");
-
- baud_rate = baud_rate_of(speed);
- restore_term = 1;
-}
-
-/********************************************************************
- *
- * setdtr - control the DTR line on the serial port.
- * This is called from die(), so it shouldn't call die().
- */
-
-void setdtr (int tty_fd, int on)
-{
- int modembits = TIOCM_DTR;
-
- ioctl(tty_fd, (on ? TIOCMBIS : TIOCMBIC), &modembits);
-}
-
-/********************************************************************
- *
- * restore_tty - restore the terminal to the saved settings.
- */
-
-void restore_tty (int tty_fd)
-{
- if (restore_term) {
- restore_term = 0;
-/*
- * Turn off echoing, because otherwise we can get into
- * a loop with the tty and the modem echoing to each other.
- * We presume we are the sole user of this tty device, so
- * when we close it, it will revert to its defaults anyway.
- */
- if (!default_device)
- inittermios.c_lflag &= ~(ECHO | ECHONL);
-
- if (tcsetattr(tty_fd, TCSAFLUSH, &inittermios) < 0) {
- if (! ok_error (errno))
- warn("tcsetattr: %m");
- }
- }
-}
-
-/********************************************************************
- *
- * output - Output PPP packet.
- */
-
-void output (int unit, unsigned char *p, int len)
-{
- int fd = ppp_fd;
- int proto;
-
- if (debug)
- dbglog("sent %P", p, len);
-
- if (len < PPP_HDRLEN)
- return;
- if (new_style_driver) {
- p += 2;
- len -= 2;
- proto = (p[0] << 8) + p[1];
- if (ifunit >= 0 && !(proto >= 0xc000 || proto == PPP_CCPFRAG))
- fd = ppp_dev_fd;
- }
- if (write(fd, p, len) < 0) {
- if (errno == EWOULDBLOCK || errno == ENOBUFS
- || errno == ENXIO || errno == EIO || errno == EINTR)
- warn("write: warning: %m (%d)", errno);
- else
- error("write: %m (%d)", errno);
- }
-}
-
-/********************************************************************
- *
- * wait_input - wait until there is data available,
- * for the length of time specified by *timo (indefinite
- * if timo is NULL).
- */
-
-void wait_input(struct timeval *timo)
-{
- fd_set ready, exc;
- int n;
-
- ready = in_fds;
- exc = in_fds;
- n = select(max_in_fd + 1, &ready, NULL, &exc, timo);
- if (n < 0 && errno != EINTR)
- fatal("select: %m(%d)", errno);
-}
-
-/*
- * add_fd - add an fd to the set that wait_input waits for.
- */
-void add_fd(int fd)
-{
- FD_SET(fd, &in_fds);
- if (fd > max_in_fd)
- max_in_fd = fd;
-}
-
-/*
- * remove_fd - remove an fd from the set that wait_input waits for.
- */
-void remove_fd(int fd)
-{
- FD_CLR(fd, &in_fds);
-}
-
-
-/********************************************************************
- *
- * read_packet - get a PPP packet from the serial device.
- */
-
-int read_packet (unsigned char *buf)
-{
- int len, nr;
-
- len = PPP_MRU + PPP_HDRLEN;
- if (new_style_driver) {
- *buf++ = PPP_ALLSTATIONS;
- *buf++ = PPP_UI;
- len -= 2;
- }
- nr = -1;
- if (ppp_fd >= 0) {
- nr = read(ppp_fd, buf, len);
- if (nr < 0 && errno != EWOULDBLOCK && errno != EIO && errno != EINTR)
- error("read: %m");
- if (nr < 0 && errno == ENXIO)
- return 0;
- }
- if (nr < 0 && new_style_driver && ifunit >= 0) {
- /* N.B. we read ppp_fd first since LCP packets come in there. */
- nr = read(ppp_dev_fd, buf, len);
- if (nr < 0 && errno != EWOULDBLOCK && errno != EIO && errno != EINTR)
- error("read /dev/ppp: %m");
- if (nr < 0 && errno == ENXIO)
- return 0;
- }
- return (new_style_driver && nr > 0)? nr+2: nr;
-}
-
-/********************************************************************
- *
- * get_loop_output - get outgoing packets from the ppp device,
- * and detect when we want to bring the real link up.
- * Return value is 1 if we need to bring up the link, 0 otherwise.
- */
-int
-get_loop_output(void)
-{
- int rv = 0;
- int n;
-
- if (new_style_driver) {
- while ((n = read_packet(inpacket_buf)) > 0)
- if (loop_frame(inpacket_buf, n))
- rv = 1;
- return rv;
- }
-
- while ((n = read(master_fd, inbuf, sizeof(inbuf))) > 0)
- if (loop_chars(inbuf, n))
- rv = 1;
-
- if (n == 0)
- fatal("eof on loopback");
-
- if (errno != EWOULDBLOCK)
- fatal("read from loopback: %m(%d)", errno);
-
- return rv;
-}
-
-/*
- * netif_set_mtu - set the MTU on the PPP network interface.
- */
-void
-netif_set_mtu(int unit, int mtu)
-{
- struct ifreq ifr;
-
- SYSDEBUG ((LOG_DEBUG, "netif_set_mtu: mtu = %d\n", mtu));
-
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
- ifr.ifr_mtu = mtu;
-
- if (ifunit >= 0 && ioctl(sock_fd, SIOCSIFMTU, (caddr_t) &ifr) < 0)
- fatal("ioctl(SIOCSIFMTU): %m");
-}
-
-/********************************************************************
- *
- * tty_send_config - configure the transmit characteristics of
- * the ppp interface.
- */
-
-void tty_send_config (int mtu,u_int32_t asyncmap,int pcomp,int accomp)
-{
- u_int x;
-
-/*
- * Set the asyncmap and other parameters for the ppp device
- */
- if (!still_ppp())
- return;
- link_mtu = mtu;
- SYSDEBUG ((LOG_DEBUG, "send_config: asyncmap = %lx\n", asyncmap));
- if (ioctl(ppp_fd, PPPIOCSASYNCMAP, (caddr_t) &asyncmap) < 0) {
- if (!ok_error(errno))
- fatal("ioctl(PPPIOCSASYNCMAP): %m(%d)", errno);
- return;
- }
-
- x = get_flags(ppp_fd);
- x = pcomp ? x | SC_COMP_PROT : x & ~SC_COMP_PROT;
- x = accomp ? x | SC_COMP_AC : x & ~SC_COMP_AC;
- x = sync_serial ? x | SC_SYNC : x & ~SC_SYNC;
- set_flags(ppp_fd, x);
-}
-
-/********************************************************************
- *
- * tty_set_xaccm - set the extended transmit ACCM for the interface.
- */
-
-void tty_set_xaccm (ext_accm accm)
-{
- SYSDEBUG ((LOG_DEBUG, "set_xaccm: %08lx %08lx %08lx %08lx\n",
- accm[0], accm[1], accm[2], accm[3]));
-
- if (!still_ppp())
- return;
- if (ioctl(ppp_fd, PPPIOCSXASYNCMAP, accm) < 0 && errno != ENOTTY) {
- if ( ! ok_error (errno))
- warn("ioctl(set extended ACCM): %m(%d)", errno);
- }
-}
-
-/********************************************************************
- *
- * tty_recv_config - configure the receive-side characteristics of
- * the ppp interface.
- */
-
-void tty_recv_config (int mru,u_int32_t asyncmap,int pcomp,int accomp)
-{
- SYSDEBUG ((LOG_DEBUG, "recv_config: mru = %d\n", mru));
-/*
- * If we were called because the link has gone down then there is nothing
- * which may be done. Just return without incident.
- */
- if (!still_ppp())
- return;
-/*
- * Set the receiver parameters
- */
- if (ioctl(ppp_fd, PPPIOCSMRU, (caddr_t) &mru) < 0) {
- if ( ! ok_error (errno))
- error("ioctl(PPPIOCSMRU): %m(%d)", errno);
- }
- if (new_style_driver && ifunit >= 0
- && ioctl(ppp_dev_fd, PPPIOCSMRU, (caddr_t) &mru) < 0)
- error("Couldn't set MRU in generic PPP layer: %m");
-
- SYSDEBUG ((LOG_DEBUG, "recv_config: asyncmap = %lx\n", asyncmap));
- if (ioctl(ppp_fd, PPPIOCSRASYNCMAP, (caddr_t) &asyncmap) < 0) {
- if (!ok_error(errno))
- error("ioctl(PPPIOCSRASYNCMAP): %m(%d)", errno);
- }
-}
-
-/********************************************************************
- *
- * ccp_test - ask kernel whether a given compression method
- * is acceptable for use.
- */
-
-int ccp_test (int unit, u_char *opt_ptr, int opt_len, int for_transmit)
-{
- struct ppp_option_data data;
-
- memset (&data, '\0', sizeof (data));
- data.ptr = opt_ptr;
- data.length = opt_len;
- data.transmit = for_transmit;
-
- if (ioctl(ppp_dev_fd, PPPIOCSCOMPRESS, (caddr_t) &data) >= 0)
- return 1;
-
- return (errno == ENOBUFS)? 0: -1;
-}
-
-/********************************************************************
- *
- * ccp_flags_set - inform kernel about the current state of CCP.
- */
-
-void ccp_flags_set (int unit, int isopen, int isup)
-{
- if (still_ppp()) {
- int x = get_flags(ppp_dev_fd);
- x = isopen? x | SC_CCP_OPEN : x &~ SC_CCP_OPEN;
- x = isup? x | SC_CCP_UP : x &~ SC_CCP_UP;
- set_flags (ppp_dev_fd, x);
- }
-}
-
-#ifdef PPP_FILTER
-/*
- * set_filters - set the active and pass filters in the kernel driver.
- */
-int set_filters(struct bpf_program *pass, struct bpf_program *active)
-{
- struct sock_fprog fp;
-
- fp.len = pass->bf_len;
- fp.filter = (struct sock_filter *) pass->bf_insns;
- if (ioctl(ppp_dev_fd, PPPIOCSPASS, &fp) < 0) {
- if (errno == ENOTTY)
- warn("kernel does not support PPP filtering");
- else
- error("Couldn't set pass-filter in kernel: %m");
- return 0;
- }
- fp.len = active->bf_len;
- fp.filter = (struct sock_filter *) active->bf_insns;
- if (ioctl(ppp_dev_fd, PPPIOCSACTIVE, &fp) < 0) {
- error("Couldn't set active-filter in kernel: %m");
- return 0;
- }
- return 1;
-}
-#endif /* PPP_FILTER */
-
-/********************************************************************
- *
- * get_idle_time - return how long the link has been idle.
- */
-int
-get_idle_time(u, ip)
- int u;
- struct ppp_idle *ip;
-{
- return ioctl(ppp_dev_fd, PPPIOCGIDLE, ip) >= 0;
-}
-
-/********************************************************************
- *
- * get_ppp_stats - return statistics for the link.
- */
-int
-get_ppp_stats(u, stats)
- int u;
- struct pppd_stats *stats;
-{
- struct ifpppstatsreq req;
-
- memset (&req, 0, sizeof (req));
-
- req.stats_ptr = (caddr_t) &req.stats;
- strlcpy(req.ifr__name, ifname, sizeof(req.ifr__name));
- if (ioctl(sock_fd, SIOCGPPPSTATS, &req) < 0) {
- error("Couldn't get PPP statistics: %m");
- return 0;
- }
- stats->bytes_in = req.stats.p.ppp_ibytes;
- stats->bytes_out = req.stats.p.ppp_obytes;
- return 1;
-}
-
-/********************************************************************
- *
- * ccp_fatal_error - returns 1 if decompression was disabled as a
- * result of an error detected after decompression of a packet,
- * 0 otherwise. This is necessary because of patent nonsense.
- */
-
-int ccp_fatal_error (int unit)
-{
- int x = get_flags(ppp_dev_fd);
-
- return x & SC_DC_FERROR;
-}
-
-/********************************************************************
- *
- * path_to_procfs - find the path to the proc file system mount point
- */
-static char proc_path[MAXPATHLEN];
-static int proc_path_len;
-
-static char *path_to_procfs(const char *tail)
-{
- struct mntent *mntent;
- FILE *fp;
-
- if (proc_path_len == 0) {
- /* Default the mount location of /proc */
- strlcpy (proc_path, "/proc", sizeof(proc_path));
- proc_path_len = 5;
- fp = fopen(MOUNTED, "r");
- if (fp != NULL) {
- while ((mntent = getmntent(fp)) != NULL) {
- if (strcmp(mntent->mnt_type, MNTTYPE_IGNORE) == 0)
- continue;
- if (strcmp(mntent->mnt_type, "proc") == 0) {
- strlcpy(proc_path, mntent->mnt_dir, sizeof(proc_path));
- proc_path_len = strlen(proc_path);
- break;
- }
- }
- fclose (fp);
- }
- }
-
- strlcpy(proc_path + proc_path_len, tail,
- sizeof(proc_path) - proc_path_len);
- return proc_path;
-}
-
-/*
- * /proc/net/route parsing stuff.
- */
-#define ROUTE_MAX_COLS 12
-FILE *route_fd = (FILE *) 0;
-static char route_buffer[512];
-static int route_dev_col, route_dest_col, route_gw_col;
-static int route_flags_col, route_mask_col;
-static int route_num_cols;
-
-static int open_route_table (void);
-static void close_route_table (void);
-static int read_route_table (struct rtentry *rt);
-
-/********************************************************************
- *
- * close_route_table - close the interface to the route table
- */
-
-static void close_route_table (void)
-{
- if (route_fd != (FILE *) 0) {
- fclose (route_fd);
- route_fd = (FILE *) 0;
- }
-}
-
-/********************************************************************
- *
- * open_route_table - open the interface to the route table
- */
-static char route_delims[] = " \t\n";
-
-static int open_route_table (void)
-{
- char *path;
-
- close_route_table();
-
- path = path_to_procfs("/net/route");
- route_fd = fopen (path, "r");
- if (route_fd == NULL) {
- error("can't open routing table %s: %m", path);
- return 0;
- }
-
- route_dev_col = 0; /* default to usual columns */
- route_dest_col = 1;
- route_gw_col = 2;
- route_flags_col = 3;
- route_mask_col = 7;
- route_num_cols = 8;
-
- /* parse header line */
- if (fgets(route_buffer, sizeof(route_buffer), route_fd) != 0) {
- char *p = route_buffer, *q;
- int col;
- for (col = 0; col < ROUTE_MAX_COLS; ++col) {
- int used = 1;
- if ((q = strtok(p, route_delims)) == 0)
- break;
- if (strcasecmp(q, "iface") == 0)
- route_dev_col = col;
- else if (strcasecmp(q, "destination") == 0)
- route_dest_col = col;
- else if (strcasecmp(q, "gateway") == 0)
- route_gw_col = col;
- else if (strcasecmp(q, "flags") == 0)
- route_flags_col = col;
- else if (strcasecmp(q, "mask") == 0)
- route_mask_col = col;
- else
- used = 0;
- if (used && col >= route_num_cols)
- route_num_cols = col + 1;
- p = NULL;
- }
- }
-
- return 1;
-}
-
-/********************************************************************
- *
- * read_route_table - read the next entry from the route table
- */
-
-static int read_route_table(struct rtentry *rt)
-{
- char *cols[ROUTE_MAX_COLS], *p;
- int col;
-
- memset (rt, '\0', sizeof (struct rtentry));
-
- if (fgets (route_buffer, sizeof (route_buffer), route_fd) == (char *) 0)
- return 0;
-
- p = route_buffer;
- for (col = 0; col < route_num_cols; ++col) {
- cols[col] = strtok(p, route_delims);
- if (cols[col] == NULL)
- return 0; /* didn't get enough columns */
- p = NULL;
- }
-
- SIN_ADDR(rt->rt_dst) = strtoul(cols[route_dest_col], NULL, 16);
- SIN_ADDR(rt->rt_gateway) = strtoul(cols[route_gw_col], NULL, 16);
- SIN_ADDR(rt->rt_genmask) = strtoul(cols[route_mask_col], NULL, 16);
-
- rt->rt_flags = (short) strtoul(cols[route_flags_col], NULL, 16);
- rt->rt_dev = cols[route_dev_col];
-
- return 1;
-}
-
-/********************************************************************
- *
- * defaultroute_exists - determine if there is a default route
- */
-
-static int defaultroute_exists (struct rtentry *rt)
-{
- int result = 0;
-
- if (!open_route_table())
- return 0;
-
- while (read_route_table(rt) != 0) {
- if ((rt->rt_flags & RTF_UP) == 0)
- continue;
-
- if (kernel_version > KVERSION(2,1,0) && SIN_ADDR(rt->rt_genmask) != 0)
- continue;
- if (SIN_ADDR(rt->rt_dst) == 0L) {
- result = 1;
- break;
- }
- }
-
- close_route_table();
- return result;
-}
-
-/*
- * have_route_to - determine if the system has any route to
- * a given IP address. `addr' is in network byte order.
- * Return value is 1 if yes, 0 if no, -1 if don't know.
- * For demand mode to work properly, we have to ignore routes
- * through our own interface.
- */
-int have_route_to(u_int32_t addr)
-{
- struct rtentry rt;
- int result = 0;
-
- if (!open_route_table())
- return -1; /* don't know */
-
- while (read_route_table(&rt)) {
- if ((rt.rt_flags & RTF_UP) == 0 || strcmp(rt.rt_dev, ifname) == 0)
- continue;
- if ((addr & SIN_ADDR(rt.rt_genmask)) == SIN_ADDR(rt.rt_dst)) {
- result = 1;
- break;
- }
- }
-
- close_route_table();
- return result;
-}
-
-/********************************************************************
- *
- * sifdefaultroute - assign a default route through the address given.
- */
-
-int sifdefaultroute (int unit, u_int32_t ouraddr, u_int32_t gateway)
-{
- struct rtentry rt;
-
- if (defaultroute_exists(&rt) && strcmp(rt.rt_dev, ifname) != 0) {
- u_int32_t old_gateway = SIN_ADDR(rt.rt_gateway);
-
- if (old_gateway != gateway)
- error("not replacing existing default route to %s [%I]",
- rt.rt_dev, old_gateway);
- return 0;
- }
-
- memset (&rt, '\0', sizeof (rt));
- SET_SA_FAMILY (rt.rt_dst, AF_INET);
- SET_SA_FAMILY (rt.rt_gateway, AF_INET);
-
- if (kernel_version > KVERSION(2,1,0)) {
- SET_SA_FAMILY (rt.rt_genmask, AF_INET);
- SIN_ADDR(rt.rt_genmask) = 0L;
- }
-
- SIN_ADDR(rt.rt_gateway) = gateway;
-
- rt.rt_flags = RTF_UP | RTF_GATEWAY;
- if (ioctl(sock_fd, SIOCADDRT, &rt) < 0) {
- if ( ! ok_error ( errno ))
- error("default route ioctl(SIOCADDRT): %m(%d)", errno);
- return 0;
- }
-
- default_route_gateway = gateway;
- return 1;
-}
-
-/********************************************************************
- *
- * cifdefaultroute - delete a default route through the address given.
- */
-
-int cifdefaultroute (int unit, u_int32_t ouraddr, u_int32_t gateway)
-{
- struct rtentry rt;
-
- default_route_gateway = 0;
-
- memset (&rt, '\0', sizeof (rt));
- SET_SA_FAMILY (rt.rt_dst, AF_INET);
- SET_SA_FAMILY (rt.rt_gateway, AF_INET);
-
- if (kernel_version > KVERSION(2,1,0)) {
- SET_SA_FAMILY (rt.rt_genmask, AF_INET);
- SIN_ADDR(rt.rt_genmask) = 0L;
- }
-
- SIN_ADDR(rt.rt_gateway) = gateway;
-
- rt.rt_flags = RTF_UP | RTF_GATEWAY;
- if (ioctl(sock_fd, SIOCDELRT, &rt) < 0 && errno != ESRCH) {
- if (still_ppp()) {
- if ( ! ok_error ( errno ))
- error("default route ioctl(SIOCDELRT): %m (%d)", errno);
- return 0;
- }
- }
-
- return 1;
-}
-
-/********************************************************************
- *
- * sifproxyarp - Make a proxy ARP entry for the peer.
- */
-
-int sifproxyarp (int unit, u_int32_t his_adr)
-{
- struct arpreq arpreq;
- char *forw_path;
-
- if (has_proxy_arp == 0) {
- memset (&arpreq, '\0', sizeof(arpreq));
-
- SET_SA_FAMILY(arpreq.arp_pa, AF_INET);
- SIN_ADDR(arpreq.arp_pa) = his_adr;
- arpreq.arp_flags = ATF_PERM | ATF_PUBL;
-/*
- * Get the hardware address of an interface on the same subnet
- * as our local address.
- */
- if (!get_ether_addr(his_adr, &arpreq.arp_ha, proxy_arp_dev,
- sizeof(proxy_arp_dev))) {
- error("Cannot determine ethernet address for proxy ARP");
- return 0;
- }
- strlcpy(arpreq.arp_dev, proxy_arp_dev, sizeof(arpreq.arp_dev));
-
- if (ioctl(sock_fd, SIOCSARP, (caddr_t)&arpreq) < 0) {
- if ( ! ok_error ( errno ))
- error("ioctl(SIOCSARP): %m(%d)", errno);
- return 0;
- }
- proxy_arp_addr = his_adr;
- has_proxy_arp = 1;
-
- if (tune_kernel) {
- forw_path = path_to_procfs("/sys/net/ipv4/ip_forward");
- if (forw_path != 0) {
- int fd = open(forw_path, O_WRONLY);
- if (fd >= 0) {
- if (write(fd, "1", 1) != 1)
- error("Couldn't enable IP forwarding: %m");
- close(fd);
- }
- }
- }
- }
-
- return 1;
-}
-
-/********************************************************************
- *
- * cifproxyarp - Delete the proxy ARP entry for the peer.
- */
-
-int cifproxyarp (int unit, u_int32_t his_adr)
-{
- struct arpreq arpreq;
-
- if (has_proxy_arp) {
- has_proxy_arp = 0;
- memset (&arpreq, '\0', sizeof(arpreq));
- SET_SA_FAMILY(arpreq.arp_pa, AF_INET);
- SIN_ADDR(arpreq.arp_pa) = his_adr;
- arpreq.arp_flags = ATF_PERM | ATF_PUBL;
- strlcpy(arpreq.arp_dev, proxy_arp_dev, sizeof(arpreq.arp_dev));
-
- if (ioctl(sock_fd, SIOCDARP, (caddr_t)&arpreq) < 0) {
- if ( ! ok_error ( errno ))
- warn("ioctl(SIOCDARP): %m(%d)", errno);
- return 0;
- }
- }
- return 1;
-}
-
-/********************************************************************
- *
- * get_ether_addr - get the hardware address of an interface on the
- * the same subnet as ipaddr.
- */
-
-static int get_ether_addr (u_int32_t ipaddr,
- struct sockaddr *hwaddr,
- char *name, int namelen)
-{
- struct ifreq *ifr, *ifend;
- u_int32_t ina, mask;
- char *aliasp;
- struct ifreq ifreq;
- struct ifconf ifc;
- struct ifreq ifs[MAX_IFS];
-
- ifc.ifc_len = sizeof(ifs);
- ifc.ifc_req = ifs;
- if (ioctl(sock_fd, SIOCGIFCONF, &ifc) < 0) {
- if ( ! ok_error ( errno ))
- error("ioctl(SIOCGIFCONF): %m(%d)", errno);
- return 0;
- }
-
- SYSDEBUG ((LOG_DEBUG, "proxy arp: scanning %d interfaces for IP %s",
- ifc.ifc_len / sizeof(struct ifreq), ip_ntoa(ipaddr)));
-/*
- * Scan through looking for an interface with an Internet
- * address on the same subnet as `ipaddr'.
- */
- ifend = ifs + (ifc.ifc_len / sizeof(struct ifreq));
- for (ifr = ifc.ifc_req; ifr < ifend; ifr++) {
- if (ifr->ifr_addr.sa_family == AF_INET) {
- ina = SIN_ADDR(ifr->ifr_addr);
- strlcpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
- SYSDEBUG ((LOG_DEBUG, "proxy arp: examining interface %s",
- ifreq.ifr_name));
-/*
- * Check that the interface is up, and not point-to-point
- * nor loopback.
- */
- if (ioctl(sock_fd, SIOCGIFFLAGS, &ifreq) < 0)
- continue;
-
- if (((ifreq.ifr_flags ^ FLAGS_GOOD) & FLAGS_MASK) != 0)
- continue;
-/*
- * Get its netmask and check that it's on the right subnet.
- */
- if (ioctl(sock_fd, SIOCGIFNETMASK, &ifreq) < 0)
- continue;
-
- mask = SIN_ADDR(ifreq.ifr_addr);
- SYSDEBUG ((LOG_DEBUG, "proxy arp: interface addr %s mask %lx",
- ip_ntoa(ina), ntohl(mask)));
-
- if (((ipaddr ^ ina) & mask) != 0)
- continue;
- break;
- }
- }
-
- if (ifr >= ifend)
- return 0;
-
- strlcpy(name, ifreq.ifr_name, namelen);
-
- /* trim off the :1 in eth0:1 */
- aliasp = strchr(name, ':');
- if (aliasp != 0)
- *aliasp = 0;
-
- info("found interface %s for proxy arp", name);
-/*
- * Now get the hardware address.
- */
- memset (&ifreq.ifr_hwaddr, 0, sizeof (struct sockaddr));
- if (ioctl (sock_fd, SIOCGIFHWADDR, &ifreq) < 0) {
- error("SIOCGIFHWADDR(%s): %m(%d)", ifreq.ifr_name, errno);
- return 0;
- }
-
- memcpy (hwaddr,
- &ifreq.ifr_hwaddr,
- sizeof (struct sockaddr));
-
- SYSDEBUG ((LOG_DEBUG,
- "proxy arp: found hwaddr %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
- (int) ((unsigned char *) &hwaddr->sa_data)[0],
- (int) ((unsigned char *) &hwaddr->sa_data)[1],
- (int) ((unsigned char *) &hwaddr->sa_data)[2],
- (int) ((unsigned char *) &hwaddr->sa_data)[3],
- (int) ((unsigned char *) &hwaddr->sa_data)[4],
- (int) ((unsigned char *) &hwaddr->sa_data)[5],
- (int) ((unsigned char *) &hwaddr->sa_data)[6],
- (int) ((unsigned char *) &hwaddr->sa_data)[7]));
- return 1;
-}
-
-/*
- * get_if_hwaddr - get the hardware address for the specified
- * network interface device.
- */
-int
-get_if_hwaddr(u_char *addr, char *name)
-{
- struct ifreq ifreq;
- int ret, sock_fd;
-
- sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if (sock_fd < 0)
- return 0;
- memset(&ifreq.ifr_hwaddr, 0, sizeof(struct sockaddr));
- strlcpy(ifreq.ifr_name, name, sizeof(ifreq.ifr_name));
- ret = ioctl(sock_fd, SIOCGIFHWADDR, &ifreq);
- close(sock_fd);
- if (ret >= 0)
- memcpy(addr, ifreq.ifr_hwaddr.sa_data, 6);
- return ret;
-}
-
-/*
- * get_first_ethernet - return the name of the first ethernet-style
- * interface on this system.
- */
-char *
-get_first_ethernet()
-{
- return "eth0";
-}
-
-/********************************************************************
- *
- * Return user specified netmask, modified by any mask we might determine
- * for address `addr' (in network byte order).
- * Here we scan through the system's list of interfaces, looking for
- * any non-point-to-point interfaces which might appear to be on the same
- * network as `addr'. If we find any, we OR in their netmask to the
- * user-specified netmask.
- */
-
-u_int32_t GetMask (u_int32_t addr)
-{
- u_int32_t mask, nmask, ina;
- struct ifreq *ifr, *ifend, ifreq;
- struct ifconf ifc;
- struct ifreq ifs[MAX_IFS];
-
- addr = ntohl(addr);
-
- if (IN_CLASSA(addr)) /* determine network mask for address class */
- nmask = IN_CLASSA_NET;
- else if (IN_CLASSB(addr))
- nmask = IN_CLASSB_NET;
- else
- nmask = IN_CLASSC_NET;
-
- /* class D nets are disallowed by bad_ip_adrs */
- mask = netmask | htonl(nmask);
-/*
- * Scan through the system's network interfaces.
- */
- ifc.ifc_len = sizeof(ifs);
- ifc.ifc_req = ifs;
- if (ioctl(sock_fd, SIOCGIFCONF, &ifc) < 0) {
- if ( ! ok_error ( errno ))
- warn("ioctl(SIOCGIFCONF): %m(%d)", errno);
- return mask;
- }
-
- ifend = (struct ifreq *) (ifc.ifc_buf + ifc.ifc_len);
- for (ifr = ifc.ifc_req; ifr < ifend; ifr++) {
-/*
- * Check the interface's internet address.
- */
- if (ifr->ifr_addr.sa_family != AF_INET)
- continue;
- ina = SIN_ADDR(ifr->ifr_addr);
- if (((ntohl(ina) ^ addr) & nmask) != 0)
- continue;
-/*
- * Check that the interface is up, and not point-to-point nor loopback.
- */
- strlcpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
- if (ioctl(sock_fd, SIOCGIFFLAGS, &ifreq) < 0)
- continue;
-
- if (((ifreq.ifr_flags ^ FLAGS_GOOD) & FLAGS_MASK) != 0)
- continue;
-/*
- * Get its netmask and OR it into our mask.
- */
- if (ioctl(sock_fd, SIOCGIFNETMASK, &ifreq) < 0)
- continue;
- mask |= SIN_ADDR(ifreq.ifr_addr);
- break;
- }
- return mask;
-}
-
-/********************************************************************
- *
- * Internal routine to decode the version.modification.patch level
- */
-
-static void decode_version (char *buf, int *version,
- int *modification, int *patch)
-{
- char *endp;
-
- *version = (int) strtoul (buf, &endp, 10);
- *modification = 0;
- *patch = 0;
-
- if (endp != buf && *endp == '.') {
- buf = endp + 1;
- *modification = (int) strtoul (buf, &endp, 10);
- if (endp != buf && *endp == '.') {
- buf = endp + 1;
- *patch = (int) strtoul (buf, &buf, 10);
- }
- }
-}
-
-/********************************************************************
- *
- * Procedure to determine if the PPP line discipline is registered.
- */
-
-static int
-ppp_registered(void)
-{
- int local_fd;
- int mfd = -1;
- int ret = 0;
- char slave[16];
-
- /*
- * We used to open the serial device and set it to the ppp line
- * discipline here, in order to create a ppp unit. But that is
- * not a good idea - the user might have specified a device that
- * they can't open (permission, or maybe it doesn't really exist).
- * So we grab a pty master/slave pair and use that.
- */
- if (!get_pty(&mfd, &local_fd, slave, 0)) {
- no_ppp_msg = "Couldn't determine if PPP is supported (no free ptys)";
- return 0;
- }
-
- /*
- * Try to put the device into the PPP discipline.
- */
- if (ioctl(local_fd, TIOCSETD, &ppp_disc) < 0) {
- error("ioctl(TIOCSETD(PPP)): %m(%d)", errno);
- } else
- ret = 1;
-
- close(local_fd);
- close(mfd);
- return ret;
-}
-
-/********************************************************************
- *
- * ppp_available - check whether the system has any ppp interfaces
- * (in fact we check whether we can do an ioctl on ppp0).
- */
-
-int ppp_available(void)
-{
- int s, ok, fd;
- struct ifreq ifr;
- int size;
- int my_version, my_modification, my_patch;
- int osmaj, osmin, ospatch;
-
- no_ppp_msg =
- "This system lacks kernel support for PPP. This could be because\n"
- "the PPP kernel module could not be loaded, or because PPP was not\n"
- "included in the kernel configuration. If PPP was included as a\n"
- "module, try `/sbin/modprobe -v ppp'. If that fails, check that\n"
- "ppp.o exists in /lib/modules/`uname -r`/net.\n"
- "See README.linux file in the ppp distribution for more details.\n";
-
- /* get the kernel version now, since we are called before sys_init */
- uname(&utsname);
- osmaj = osmin = ospatch = 0;
- sscanf(utsname.release, "%d.%d.%d", &osmaj, &osmin, &ospatch);
- kernel_version = KVERSION(osmaj, osmin, ospatch);
-
- fd = open("/dev/ppp", O_RDWR);
-#if 0
- if (fd < 0 && errno == ENOENT) {
- /* try making it and see if that helps. */
- if (mknod("/dev/ppp", S_IFCHR | S_IRUSR | S_IWUSR,
- makedev(108, 0)) >= 0) {
- fd = open("/dev/ppp", O_RDWR);
- if (fd >= 0)
- info("Created /dev/ppp device node");
- else
- unlink("/dev/ppp"); /* didn't work, undo the mknod */
- } else if (errno == EEXIST) {
- fd = open("/dev/ppp", O_RDWR);
- }
- }
-#endif /* 0 */
- if (fd >= 0) {
- new_style_driver = 1;
-
- /* XXX should get from driver */
- driver_version = 2;
- driver_modification = 4;
- driver_patch = 0;
- close(fd);
- return 1;
- }
- if (kernel_version >= KVERSION(2,3,13)) {
- if (errno == ENOENT)
- no_ppp_msg =
- "pppd is unable to open the /dev/ppp device.\n"
- "You need to create the /dev/ppp device node by\n"
- "executing the following command as root:\n"
- " mknod /dev/ppp c 108 0\n";
- return 0;
- }
-
-/*
- * Open a socket for doing the ioctl operations.
- */
- s = socket(AF_INET, SOCK_DGRAM, 0);
- if (s < 0)
- return 0;
-
- strlcpy (ifr.ifr_name, "ppp0", sizeof (ifr.ifr_name));
- ok = ioctl(s, SIOCGIFFLAGS, (caddr_t) &ifr) >= 0;
-/*
- * If the device did not exist then attempt to create one by putting the
- * current tty into the PPP discipline. If this works then obtain the
- * flags for the device again.
- */
- if (!ok) {
- if (ppp_registered()) {
- strlcpy (ifr.ifr_name, "ppp0", sizeof (ifr.ifr_name));
- ok = ioctl(s, SIOCGIFFLAGS, (caddr_t) &ifr) >= 0;
- }
- }
-/*
- * Ensure that the hardware address is for PPP and not something else
- */
- if (ok)
- ok = ioctl (s, SIOCGIFHWADDR, (caddr_t) &ifr) >= 0;
-
- if (ok && ((ifr.ifr_hwaddr.sa_family & ~0xFF) != ARPHRD_PPP))
- ok = 0;
-
-/*
- * This is the PPP device. Validate the version of the driver at this
- * point to ensure that this program will work with the driver.
- */
- if (ok) {
- char abBuffer [1024];
-
- ifr.ifr_data = abBuffer;
- size = ioctl (s, SIOCGPPPVER, (caddr_t) &ifr);
- if (size < 0) {
- error("Couldn't read driver version: %m");
- ok = 0;
- no_ppp_msg = "Sorry, couldn't verify kernel driver version\n";
-
- } else {
- decode_version(abBuffer,
- &driver_version,
- &driver_modification,
- &driver_patch);
-/*
- * Validate the version of the driver against the version that we used.
- */
- decode_version(VERSION,
- &my_version,
- &my_modification,
- &my_patch);
-
- /* The version numbers must match */
- if (driver_version != my_version)
- ok = 0;
-
- /* The modification levels must be legal */
- if (driver_modification < 3) {
- if (driver_modification >= 2) {
- /* we can cope with 2.2.0 and above */
- driver_is_old = 1;
- } else {
- ok = 0;
- }
- }
-
- close (s);
- if (!ok) {
- slprintf(route_buffer, sizeof(route_buffer),
- "Sorry - PPP driver version %d.%d.%d is out of date\n",
- driver_version, driver_modification, driver_patch);
-
- no_ppp_msg = route_buffer;
- }
- }
- }
- return ok;
-}
-
-/********************************************************************
- *
- * Update the wtmp file with the appropriate user name and tty device.
- */
-
-void logwtmp (const char *line, const char *name, const char *host)
-{
- struct utmp ut, *utp;
- pid_t mypid = getpid();
-#if __GLIBC__ < 2
- int wtmp;
-#endif
-
-/*
- * Update the signon database for users.
- * Christoph Lameter: Copied from poeigl-1.36 Jan 3, 1996
- */
- utmpname(_PATH_UTMP);
- setutent();
- while ((utp = getutent()) && (utp->ut_pid != mypid))
- /* nothing */;
-
- /* Is this call really necessary? There is another one after the 'put' */
- endutent();
-
- if (utp)
- memcpy(&ut, utp, sizeof(ut));
- else
- /* some gettys/telnetds don't initialize utmp... */
- memset(&ut, 0, sizeof(ut));
-
- if (ut.ut_id[0] == 0)
- strncpy(ut.ut_id, line + 3, sizeof(ut.ut_id));
-
- strncpy(ut.ut_user, name, sizeof(ut.ut_user));
- strncpy(ut.ut_line, line, sizeof(ut.ut_line));
-
- time(&ut.ut_time);
-
- ut.ut_type = USER_PROCESS;
- ut.ut_pid = mypid;
-
- /* Insert the host name if one is supplied */
- if (*host)
- strncpy (ut.ut_host, host, sizeof(ut.ut_host));
-
- /* Insert the IP address of the remote system if IP is enabled */
- if (ipcp_protent.enabled_flag && ipcp_hisoptions[0].neg_addr)
- memcpy(&ut.ut_addr, (char *) &ipcp_hisoptions[0].hisaddr,
- sizeof(ut.ut_addr));
-
- /* CL: Makes sure that the logout works */
- if (*host == 0 && *name==0)
- ut.ut_host[0]=0;
-
- pututline(&ut);
- endutent();
-/*
- * Update the wtmp file.
- */
-#if __GLIBC__ >= 2
- updwtmp(_PATH_WTMP, &ut);
-#else
- wtmp = open(_PATH_WTMP, O_APPEND|O_WRONLY);
- if (wtmp >= 0) {
- flock(wtmp, LOCK_EX);
-
- if (write (wtmp, (char *)&ut, sizeof(ut)) != sizeof(ut))
- warn("error writing %s: %m", _PATH_WTMP);
-
- flock(wtmp, LOCK_UN);
-
- close (wtmp);
- }
-#endif
-}
-
-
-/********************************************************************
- *
- * sifvjcomp - config tcp header compression
- */
-
-int sifvjcomp (int u, int vjcomp, int cidcomp, int maxcid)
-{
- u_int x = get_flags(ppp_dev_fd);
-
- if (vjcomp) {
- if (ioctl (ppp_dev_fd, PPPIOCSMAXCID, (caddr_t) &maxcid) < 0) {
- if (! ok_error (errno))
- error("ioctl(PPPIOCSMAXCID): %m(%d)", errno);
- vjcomp = 0;
- }
- }
-
- x = vjcomp ? x | SC_COMP_TCP : x &~ SC_COMP_TCP;
- x = cidcomp ? x & ~SC_NO_TCP_CCID : x | SC_NO_TCP_CCID;
- set_flags (ppp_dev_fd, x);
-
- return 1;
-}
-
-/********************************************************************
- *
- * sifup - Config the interface up and enable IP packets to pass.
- */
-
-int sifup(int u)
-{
- struct ifreq ifr;
-
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
- if (ioctl(sock_fd, SIOCGIFFLAGS, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl (SIOCGIFFLAGS): %m(%d)", errno);
- return 0;
- }
-
- ifr.ifr_flags |= (IFF_UP | IFF_POINTOPOINT);
- if (ioctl(sock_fd, SIOCSIFFLAGS, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFFLAGS): %m(%d)", errno);
- return 0;
- }
- if_is_up++;
-
- return 1;
-}
-
-/********************************************************************
- *
- * sifdown - Disable the indicated protocol and config the interface
- * down if there are no remaining protocols.
- */
-
-int sifdown (int u)
-{
- struct ifreq ifr;
-
- if (if_is_up && --if_is_up > 0)
- return 1;
-
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
- if (ioctl(sock_fd, SIOCGIFFLAGS, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl (SIOCGIFFLAGS): %m(%d)", errno);
- return 0;
- }
-
- ifr.ifr_flags &= ~IFF_UP;
- ifr.ifr_flags |= IFF_POINTOPOINT;
- if (ioctl(sock_fd, SIOCSIFFLAGS, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFFLAGS): %m(%d)", errno);
- return 0;
- }
- return 1;
-}
-
-/********************************************************************
- *
- * sifaddr - Config the interface IP addresses and netmask.
- */
-
-int sifaddr (int unit, u_int32_t our_adr, u_int32_t his_adr,
- u_int32_t net_mask)
-{
- struct ifreq ifr;
- struct rtentry rt;
-
- memset (&ifr, '\0', sizeof (ifr));
- memset (&rt, '\0', sizeof (rt));
-
- SET_SA_FAMILY (ifr.ifr_addr, AF_INET);
- SET_SA_FAMILY (ifr.ifr_dstaddr, AF_INET);
- SET_SA_FAMILY (ifr.ifr_netmask, AF_INET);
-
- strlcpy (ifr.ifr_name, ifname, sizeof (ifr.ifr_name));
-/*
- * Set our IP address
- */
- SIN_ADDR(ifr.ifr_addr) = our_adr;
- if (ioctl(sock_fd, SIOCSIFADDR, (caddr_t) &ifr) < 0) {
- if (errno != EEXIST) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFADDR): %m(%d)", errno);
- }
- else {
- warn("ioctl(SIOCSIFADDR): Address already exists");
- }
- return (0);
- }
-/*
- * Set the gateway address
- */
- SIN_ADDR(ifr.ifr_dstaddr) = his_adr;
- if (ioctl(sock_fd, SIOCSIFDSTADDR, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFDSTADDR): %m(%d)", errno);
- return (0);
- }
-/*
- * Set the netmask.
- * For recent kernels, force the netmask to 255.255.255.255.
- */
- if (kernel_version >= KVERSION(2,1,16))
- net_mask = ~0L;
- if (net_mask != 0) {
- SIN_ADDR(ifr.ifr_netmask) = net_mask;
- if (ioctl(sock_fd, SIOCSIFNETMASK, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCSIFNETMASK): %m(%d)", errno);
- return (0);
- }
- }
-/*
- * Add the device route
- */
- if (kernel_version < KVERSION(2,1,16)) {
- SET_SA_FAMILY (rt.rt_dst, AF_INET);
- SET_SA_FAMILY (rt.rt_gateway, AF_INET);
- rt.rt_dev = ifname;
-
- SIN_ADDR(rt.rt_gateway) = 0L;
- SIN_ADDR(rt.rt_dst) = his_adr;
- rt.rt_flags = RTF_UP | RTF_HOST;
-
- if (kernel_version > KVERSION(2,1,0)) {
- SET_SA_FAMILY (rt.rt_genmask, AF_INET);
- SIN_ADDR(rt.rt_genmask) = -1L;
- }
-
- if (ioctl(sock_fd, SIOCADDRT, &rt) < 0) {
- if (! ok_error (errno))
- error("ioctl(SIOCADDRT) device route: %m(%d)", errno);
- return (0);
- }
- }
-
- /* set ip_dynaddr in demand mode if address changes */
- if (demand && tune_kernel && !dynaddr_set
- && our_old_addr && our_old_addr != our_adr) {
- /* set ip_dynaddr if possible */
- char *path;
- int fd;
-
- path = path_to_procfs("/sys/net/ipv4/ip_dynaddr");
- if (path != 0 && (fd = open(path, O_WRONLY)) >= 0) {
- if (write(fd, "1", 1) != 1)
- error("Couldn't enable dynamic IP addressing: %m");
- close(fd);
- }
- dynaddr_set = 1; /* only 1 attempt */
- }
- our_old_addr = 0;
-
- return 1;
-}
-
-/********************************************************************
- *
- * cifaddr - Clear the interface IP addresses, and delete routes
- * through the interface if possible.
- */
-
-int cifaddr (int unit, u_int32_t our_adr, u_int32_t his_adr)
-{
- struct ifreq ifr;
-
- if (kernel_version < KVERSION(2,1,16)) {
-/*
- * Delete the route through the device
- */
- struct rtentry rt;
- memset (&rt, '\0', sizeof (rt));
-
- SET_SA_FAMILY (rt.rt_dst, AF_INET);
- SET_SA_FAMILY (rt.rt_gateway, AF_INET);
- rt.rt_dev = ifname;
-
- SIN_ADDR(rt.rt_gateway) = 0;
- SIN_ADDR(rt.rt_dst) = his_adr;
- rt.rt_flags = RTF_UP | RTF_HOST;
-
- if (kernel_version > KVERSION(2,1,0)) {
- SET_SA_FAMILY (rt.rt_genmask, AF_INET);
- SIN_ADDR(rt.rt_genmask) = -1L;
- }
-
- if (ioctl(sock_fd, SIOCDELRT, &rt) < 0 && errno != ESRCH) {
- if (still_ppp() && ! ok_error (errno))
- error("ioctl(SIOCDELRT) device route: %m(%d)", errno);
- return (0);
- }
- }
-
- /* This way it is possible to have an IPX-only or IPv6-only interface */
- memset(&ifr, 0, sizeof(ifr));
- SET_SA_FAMILY(ifr.ifr_addr, AF_INET);
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
-
- if (ioctl(sock_fd, SIOCSIFADDR, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno)) {
- error("ioctl(SIOCSIFADDR): %m(%d)", errno);
- return 0;
- }
- }
-
- our_old_addr = our_adr;
-
- return 1;
-}
-
-#ifdef INET6
-/********************************************************************
- *
- * sif6addr - Config the interface with an IPv6 link-local address
- */
-int sif6addr (int unit, eui64_t our_eui64, eui64_t his_eui64)
-{
- struct in6_ifreq ifr6;
- struct ifreq ifr;
- struct in6_rtmsg rt6;
-
- if (sock6_fd < 0) {
- errno = -sock6_fd;
- error("IPv6 socket creation failed: %m");
- return 0;
- }
- memset(&ifr, 0, sizeof (ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(sock6_fd, SIOCGIFINDEX, (caddr_t) &ifr) < 0) {
- error("sif6addr: ioctl(SIOCGIFINDEX): %m (%d)", errno);
- return 0;
- }
-
- /* Local interface */
- memset(&ifr6, 0, sizeof(ifr6));
- IN6_LLADDR_FROM_EUI64(ifr6.ifr6_addr, our_eui64);
- ifr6.ifr6_ifindex = ifr.ifr_ifindex;
- ifr6.ifr6_prefixlen = 10;
-
- if (ioctl(sock6_fd, SIOCSIFADDR, &ifr6) < 0) {
- error("sif6addr: ioctl(SIOCSIFADDR): %m (%d)", errno);
- return 0;
- }
-
- /* Route to remote host */
- memset(&rt6, 0, sizeof(rt6));
- IN6_LLADDR_FROM_EUI64(rt6.rtmsg_dst, his_eui64);
- rt6.rtmsg_flags = RTF_UP;
- rt6.rtmsg_dst_len = 10;
- rt6.rtmsg_ifindex = ifr.ifr_ifindex;
- rt6.rtmsg_metric = 1;
-
- if (ioctl(sock6_fd, SIOCADDRT, &rt6) < 0) {
- error("sif6addr: ioctl(SIOCADDRT): %m (%d)", errno);
- return 0;
- }
-
- return 1;
-}
-
-
-/********************************************************************
- *
- * cif6addr - Remove IPv6 address from interface
- */
-int cif6addr (int unit, eui64_t our_eui64, eui64_t his_eui64)
-{
- struct ifreq ifr;
- struct in6_ifreq ifr6;
-
- if (sock6_fd < 0) {
- errno = -sock6_fd;
- error("IPv6 socket creation failed: %m");
- return 0;
- }
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(sock6_fd, SIOCGIFINDEX, (caddr_t) &ifr) < 0) {
- error("cif6addr: ioctl(SIOCGIFINDEX): %m (%d)", errno);
- return 0;
- }
-
- memset(&ifr6, 0, sizeof(ifr6));
- IN6_LLADDR_FROM_EUI64(ifr6.ifr6_addr, our_eui64);
- ifr6.ifr6_ifindex = ifr.ifr_ifindex;
- ifr6.ifr6_prefixlen = 10;
-
- if (ioctl(sock6_fd, SIOCDIFADDR, &ifr6) < 0) {
- if (errno != EADDRNOTAVAIL) {
- if (! ok_error (errno))
- error("cif6addr: ioctl(SIOCDIFADDR): %m (%d)", errno);
- }
- else {
- warn("cif6addr: ioctl(SIOCDIFADDR): No such address");
- }
- return (0);
- }
- return 1;
-}
-#endif /* INET6 */
-
-/*
- * get_pty - get a pty master/slave pair and chown the slave side
- * to the uid given. Assumes slave_name points to >= 16 bytes of space.
- */
-int
-get_pty(master_fdp, slave_fdp, slave_name, uid)
- int *master_fdp;
- int *slave_fdp;
- char *slave_name;
- int uid;
-{
- int i, mfd, sfd = -1;
- char pty_name[16];
- struct termios tios;
-
-#ifdef TIOCGPTN
- /*
- * Try the unix98 way first.
- */
- mfd = open("/dev/ptmx", O_RDWR);
- if (mfd >= 0) {
- int ptn;
- if (ioctl(mfd, TIOCGPTN, &ptn) >= 0) {
- slprintf(pty_name, sizeof(pty_name), "/dev/pts/%d", ptn);
- chmod(pty_name, S_IRUSR | S_IWUSR);
-#ifdef TIOCSPTLCK
- ptn = 0;
- if (ioctl(mfd, TIOCSPTLCK, &ptn) < 0)
- warn("Couldn't unlock pty slave %s: %m", pty_name);
-#endif
- if ((sfd = open(pty_name, O_RDWR | O_NOCTTY)) < 0)
- warn("Couldn't open pty slave %s: %m", pty_name);
- }
- }
-#endif /* TIOCGPTN */
-
- if (sfd < 0) {
- /* the old way - scan through the pty name space */
- for (i = 0; i < 64; ++i) {
- slprintf(pty_name, sizeof(pty_name), "/dev/pty%c%x",
- 'p' + i / 16, i % 16);
- mfd = open(pty_name, O_RDWR, 0);
- if (mfd >= 0) {
- pty_name[5] = 't';
- sfd = open(pty_name, O_RDWR | O_NOCTTY, 0);
- if (sfd >= 0) {
- fchown(sfd, uid, -1);
- fchmod(sfd, S_IRUSR | S_IWUSR);
- break;
- }
- close(mfd);
- }
- }
- }
-
- if (sfd < 0)
- return 0;
-
- strlcpy(slave_name, pty_name, 16);
- *master_fdp = mfd;
- *slave_fdp = sfd;
- if (tcgetattr(sfd, &tios) == 0) {
- tios.c_cflag &= ~(CSIZE | CSTOPB | PARENB);
- tios.c_cflag |= CS8 | CREAD | CLOCAL;
- tios.c_iflag = IGNPAR;
- tios.c_oflag = 0;
- tios.c_lflag = 0;
- if (tcsetattr(sfd, TCSAFLUSH, &tios) < 0)
- warn("couldn't set attributes on pty: %m");
- } else
- warn("couldn't get attributes on pty: %m");
-
- return 1;
-}
-
-/********************************************************************
- *
- * open_loopback - open the device we use for getting packets
- * in demand mode. Under Linux, we use a pty master/slave pair.
- */
-int
-open_ppp_loopback(void)
-{
- int flags;
-
- looped = 1;
- if (new_style_driver) {
- /* allocate ourselves a ppp unit */
- if (make_ppp_unit() < 0)
- die(1);
- set_flags(ppp_dev_fd, SC_LOOP_TRAFFIC);
- set_kdebugflag(kdebugflag);
- ppp_fd = -1;
- return ppp_dev_fd;
- }
-
- if (!get_pty(&master_fd, &slave_fd, loop_name, 0))
- fatal("No free pty for loopback");
- SYSDEBUG(("using %s for loopback", loop_name));
-
- set_ppp_fd(slave_fd);
-
- flags = fcntl(master_fd, F_GETFL);
- if (flags == -1 ||
- fcntl(master_fd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("couldn't set master loopback to nonblock: %m(%d)", errno);
-
- flags = fcntl(ppp_fd, F_GETFL);
- if (flags == -1 ||
- fcntl(ppp_fd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("couldn't set slave loopback to nonblock: %m(%d)", errno);
-
- if (ioctl(ppp_fd, TIOCSETD, &ppp_disc) < 0)
- fatal("ioctl(TIOCSETD): %m(%d)", errno);
-/*
- * Find out which interface we were given.
- */
- if (ioctl(ppp_fd, PPPIOCGUNIT, &ifunit) < 0)
- fatal("ioctl(PPPIOCGUNIT): %m(%d)", errno);
-/*
- * Enable debug in the driver if requested.
- */
- set_kdebugflag (kdebugflag);
-
- return master_fd;
-}
-
-/********************************************************************
- *
- * restore_loop - reattach the ppp unit to the loopback.
- *
- * The kernel ppp driver automatically reattaches the ppp unit to
- * the loopback if the serial port is set to a line discipline other
- * than ppp, or if it detects a modem hangup. The former will happen
- * in disestablish_ppp if the latter hasn't already happened, so we
- * shouldn't need to do anything.
- *
- * Just to be sure, set the real serial port to the normal discipline.
- */
-
-static void
-restore_loop(void)
-{
- looped = 1;
- if (new_style_driver) {
- set_flags(ppp_dev_fd, get_flags(ppp_dev_fd) | SC_LOOP_TRAFFIC);
- return;
- }
- if (ppp_fd != slave_fd) {
- (void) ioctl(ppp_fd, TIOCSETD, &tty_disc);
- set_ppp_fd(slave_fd);
- }
-}
-
-/********************************************************************
- *
- * sifnpmode - Set the mode for handling packets for a given NP.
- */
-
-int
-sifnpmode(u, proto, mode)
- int u;
- int proto;
- enum NPmode mode;
-{
- struct npioctl npi;
-
- npi.protocol = proto;
- npi.mode = mode;
- if (ioctl(ppp_dev_fd, PPPIOCSNPMODE, (caddr_t) &npi) < 0) {
- if (! ok_error (errno))
- error("ioctl(PPPIOCSNPMODE, %d, %d): %m (%d)",
- proto, mode, errno);
- return 0;
- }
- return 1;
-}
-
-
-/********************************************************************
- *
- * sipxfaddr - Config the interface IPX networknumber
- */
-
-int sipxfaddr (int unit, unsigned long int network, unsigned char * node )
-{
- int result = 1;
-
-#ifdef IPX_CHANGE
- int skfd;
- struct ifreq ifr;
- struct sockaddr_ipx *sipx = (struct sockaddr_ipx *) &ifr.ifr_addr;
-
- skfd = socket (AF_IPX, SOCK_DGRAM, 0);
- if (skfd < 0) {
- if (! ok_error (errno))
- dbglog("socket(AF_IPX): %m (%d)", errno);
- result = 0;
- }
- else {
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy (ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
-
- memcpy (sipx->sipx_node, node, IPX_NODE_LEN);
- sipx->sipx_family = AF_IPX;
- sipx->sipx_port = 0;
- sipx->sipx_network = htonl (network);
- sipx->sipx_type = IPX_FRAME_ETHERII;
- sipx->sipx_action = IPX_CRTITF;
-/*
- * Set the IPX device
- */
- if (ioctl(skfd, SIOCSIFADDR, (caddr_t) &ifr) < 0) {
- result = 0;
- if (errno != EEXIST) {
- if (! ok_error (errno))
- dbglog("ioctl(SIOCSIFADDR, CRTITF): %m (%d)", errno);
- }
- else {
- warn("ioctl(SIOCSIFADDR, CRTITF): Address already exists");
- }
- }
- close (skfd);
- }
-#endif
- return result;
-}
-
-/********************************************************************
- *
- * cipxfaddr - Clear the information for the IPX network. The IPX routes
- * are removed and the device is no longer able to pass IPX
- * frames.
- */
-
-int cipxfaddr (int unit)
-{
- int result = 1;
-
-#ifdef IPX_CHANGE
- int skfd;
- struct ifreq ifr;
- struct sockaddr_ipx *sipx = (struct sockaddr_ipx *) &ifr.ifr_addr;
-
- skfd = socket (AF_IPX, SOCK_DGRAM, 0);
- if (skfd < 0) {
- if (! ok_error (errno))
- dbglog("socket(AF_IPX): %m (%d)", errno);
- result = 0;
- }
- else {
- memset (&ifr, '\0', sizeof (ifr));
- strlcpy (ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
-
- sipx->sipx_type = IPX_FRAME_ETHERII;
- sipx->sipx_action = IPX_DLTITF;
- sipx->sipx_family = AF_IPX;
-/*
- * Set the IPX device
- */
- if (ioctl(skfd, SIOCSIFADDR, (caddr_t) &ifr) < 0) {
- if (! ok_error (errno))
- info("ioctl(SIOCSIFADDR, IPX_DLTITF): %m (%d)", errno);
- result = 0;
- }
- close (skfd);
- }
-#endif
- return result;
-}
-
-/*
- * Use the hostname as part of the random number seed.
- */
-int
-get_host_seed()
-{
- int h;
- char *p = hostname;
-
- h = 407;
- for (p = hostname; *p != 0; ++p)
- h = h * 37 + *p;
- return h;
-}
-
-/********************************************************************
- *
- * sys_check_options - check the options that the user specified
- */
-
-int
-sys_check_options(void)
-{
-#ifdef IPX_CHANGE
-/*
- * Disable the IPX protocol if the support is not present in the kernel.
- */
- char *path;
-
- if (ipxcp_protent.enabled_flag) {
- struct stat stat_buf;
- if ((path = path_to_procfs("/net/ipx_interface")) == 0
- || lstat(path, &stat_buf) < 0) {
- error("IPX support is not present in the kernel\n");
- ipxcp_protent.enabled_flag = 0;
- }
- }
-#endif
- if (demand && driver_is_old) {
- option_error("demand dialling is not supported by kernel driver "
- "version %d.%d.%d", driver_version, driver_modification,
- driver_patch);
- return 0;
- }
- if (multilink && !new_style_driver) {
- warn("Warning: multilink is not supported by the kernel driver");
- multilink = 0;
- }
- return 1;
-}
diff --git a/mdk-stage1/ppp/pppd/sys-solaris.c b/mdk-stage1/ppp/pppd/sys-solaris.c
deleted file mode 100644
index da5f9c45a..000000000
--- a/mdk-stage1/ppp/pppd/sys-solaris.c
+++ /dev/null
@@ -1,2737 +0,0 @@
-/*
- * System-dependent procedures for pppd under Solaris 2.
- *
- * Parts re-written by Adi Masputra <adi.masputra@sun.com>, based on
- * the original sys-svr4.c
- *
- * Copyright (c) 2000 by Sun Microsystems, Inc.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies.
- *
- * SUN MAKES NO REPRESENTATION OR WARRANTIES ABOUT THE SUITABILITY OF
- * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
- * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
- * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
- * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
- * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- */
-
-#define RCSID "$Id$"
-
-#include <limits.h>
-#include <stdio.h>
-#include <stddef.h>
-#include <stdlib.h>
-#include <ctype.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <termios.h>
-#ifndef CRTSCTS
-#include <sys/termiox.h>
-#endif
-#include <signal.h>
-#include <utmpx.h>
-#include <sys/types.h>
-#include <sys/ioccom.h>
-#include <sys/stream.h>
-#include <sys/stropts.h>
-#include <sys/socket.h>
-#include <sys/sockio.h>
-#include <sys/sysmacros.h>
-#include <sys/systeminfo.h>
-#include <sys/dlpi.h>
-#include <sys/stat.h>
-#include <sys/mkdev.h>
-#include <net/if.h>
-#include <net/if_arp.h>
-#include <net/route.h>
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-#include <netinet/in.h>
-#ifdef SOL2
-#include <sys/tihdr.h>
-#include <sys/tiuser.h>
-#include <inet/common.h>
-#include <inet/mib2.h>
-#include <sys/ethernet.h>
-#endif
-
-#include "pppd.h"
-#include "fsm.h"
-#include "lcp.h"
-#include "ipcp.h"
-#include "ccp.h"
-
-#if !defined(PPP_DRV_NAME)
-#define PPP_DRV_NAME "ppp"
-#endif /* !defined(PPP_DRV_NAME) */
-
-#if !defined(PPP_DEV_NAME)
-#define PPP_DEV_NAME "/dev/" PPP_DRV_NAME
-#endif /* !defined(PPP_DEV_NAME) */
-
-#if !defined(AHDLC_MOD_NAME)
-#define AHDLC_MOD_NAME "ppp_ahdl"
-#endif /* !defined(AHDLC_MOD_NAME) */
-
-#if !defined(COMP_MOD_NAME)
-#define COMP_MOD_NAME "ppp_comp"
-#endif /* !defined(COMP_MOD_NAME) */
-
-#if !defined(IP_DEV_NAME)
-#define IP_DEV_NAME "/dev/ip"
-#endif /* !defined(IP_DEV_NAME) */
-
-#if !defined(IP_MOD_NAME)
-#define IP_MOD_NAME "ip"
-#endif /* !defined(IP_MOD_NAME) */
-
-#if !defined(UDP_DEV_NAME) && defined(SOL2)
-#define UDP_DEV_NAME "/dev/udp"
-#endif /* !defined(UDP_DEV_NAME) && defined(SOL2) */
-
-#if !defined(UDP6_DEV_NAME) && defined(SOL2)
-#define UDP6_DEV_NAME "/dev/udp6"
-#endif /* !defined(UDP6_DEV_NAME) && defined(SOL2) */
-
-static const char rcsid[] = RCSID;
-
-#if defined(SOL2)
-/*
- * "/dev/udp" is used as a multiplexor to PLINK the interface stream
- * under. It is used in place of "/dev/ip" since STREAMS will not let
- * a driver be PLINK'ed under itself, and "/dev/ip" is typically the
- * driver at the bottom of the tunneling interfaces stream.
- */
-static char *mux_dev_name = UDP_DEV_NAME;
-#else
-static char *mux_dev_name = IP_DEV_NAME;
-#endif
-static int pppfd;
-static int fdmuxid = -1;
-static int ipfd;
-static int ipmuxid = -1;
-
-#if defined(INET6) && defined(SOL2)
-static int ip6fd; /* IP file descriptor */
-static int ip6muxid = -1; /* Multiplexer file descriptor */
-static int if6_is_up = 0; /* IPv6 interface has been marked up */
-
-#define _IN6_LLX_FROM_EUI64(l, s, eui64, as) do { \
- s->sin6_addr.s6_addr32[0] = htonl(as); \
- eui64_copy(eui64, s->sin6_addr.s6_addr32[2]); \
- s->sin6_family = AF_INET6; \
- l.lifr_addr.ss_family = AF_INET6; \
- l.lifr_addrlen = 10; \
- l.lifr_addr = laddr; \
- } while (0)
-
-#define IN6_LLADDR_FROM_EUI64(l, s, eui64) \
- _IN6_LLX_FROM_EUI64(l, s, eui64, 0xfe800000)
-
-#define IN6_LLTOKEN_FROM_EUI64(l, s, eui64) \
- _IN6_LLX_FROM_EUI64(l, s, eui64, 0)
-
-#endif /* defined(INET6) && defined(SOL2) */
-
-#if defined(INET6) && defined(SOL2)
-static char first_ether_name[LIFNAMSIZ]; /* Solaris 8 and above */
-#else
-static char first_ether_name[IFNAMSIZ]; /* Before Solaris 8 */
-#define MAXIFS 256 /* Max # of interfaces */
-#endif /* defined(INET6) && defined(SOL2) */
-
-static int restore_term;
-static struct termios inittermios;
-#ifndef CRTSCTS
-static struct termiox inittermiox;
-static int termiox_ok;
-#endif
-static struct winsize wsinfo; /* Initial window size info */
-static pid_t tty_sid; /* original session ID for terminal */
-
-extern u_char inpacket_buf[]; /* borrowed from main.c */
-
-#define MAX_POLLFDS 32
-static struct pollfd pollfds[MAX_POLLFDS];
-static int n_pollfds;
-
-static int link_mtu, link_mru;
-
-#define NMODULES 32
-static int tty_nmodules;
-static char tty_modules[NMODULES][FMNAMESZ+1];
-static int tty_npushed;
-
-static int if_is_up; /* Interface has been marked up */
-static u_int32_t remote_addr; /* IP address of peer */
-static u_int32_t default_route_gateway; /* Gateway for default route added */
-static u_int32_t proxy_arp_addr; /* Addr for proxy arp entry added */
-
-/* Prototypes for procedures local to this file. */
-static int translate_speed __P((int));
-static int baud_rate_of __P((int));
-static int get_ether_addr __P((u_int32_t, struct sockaddr *));
-static int get_hw_addr __P((char *, u_int32_t, struct sockaddr *));
-static int get_hw_addr_dlpi __P((char *, struct sockaddr *));
-static int dlpi_attach __P((int, int));
-static int dlpi_info_req __P((int));
-static int dlpi_get_reply __P((int, union DL_primitives *, int, int));
-static int strioctl __P((int, int, void *, int, int));
-
-#ifdef SOL2
-/*
- * sifppa - Sets interface ppa
- *
- * without setting the ppa, ip module will return EINVAL upon setting the
- * interface UP (SIOCSxIFFLAGS). This is because ip module in 2.8 expects
- * two DLPI_INFO_REQ to be sent down to the driver (below ip) before
- * IFF_UP can be set. Plumbing the device causes one DLPI_INFO_REQ to
- * be sent down, and the second DLPI_INFO_REQ is sent upon receiving
- * IF_UNITSEL (old) or SIOCSLIFNAME (new) ioctls. Such setting of the ppa
- * is required because the ppp DLPI provider advertises itself as
- * a DLPI style 2 type, which requires a point of attachment to be
- * specified. The only way the user can specify a point of attachment
- * is via SIOCSLIFNAME or IF_UNITSEL.
- *
- * Such changes in the behavior of ip module was made to meet new or
- * evolving standards requirements.
- *
- */
-static int
-sifppa(fd, ppa)
- int fd;
- int ppa;
-{
- return (int)ioctl(fd, IF_UNITSEL, (char *)&ppa);
-}
-#endif /* SOL2 */
-
-#if defined(SOL2) && defined(INET6)
-/*
- * get_first_ethernet - returns the first Ethernet interface name found in
- * the system, or NULL if none is found
- *
- * NOTE: This is the lifreq version (Solaris 8 and above)
- */
-char *
-get_first_ethernet()
-{
- struct lifnum lifn;
- struct lifconf lifc;
- struct lifreq *plifreq;
- struct lifreq lifr;
- int fd, num_ifs, i, found;
- uint_t fl, req_size;
- char *req;
-
- fd = socket(AF_INET, SOCK_DGRAM, 0);
- if (fd < 0) {
- return 0;
- }
-
- /*
- * Find out how many interfaces are running
- */
- lifn.lifn_family = AF_UNSPEC;
- lifn.lifn_flags = LIFC_NOXMIT;
- if (ioctl(fd, SIOCGLIFNUM, &lifn) < 0) {
- close(fd);
- error("could not determine number of interfaces: %m");
- return 0;
- }
-
- num_ifs = lifn.lifn_count;
- req_size = num_ifs * sizeof(struct lifreq);
- req = malloc(req_size);
- if (req == NULL) {
- close(fd);
- error("out of memory");
- return 0;
- }
-
- /*
- * Get interface configuration info for all interfaces
- */
- lifc.lifc_family = AF_UNSPEC;
- lifc.lifc_flags = LIFC_NOXMIT;
- lifc.lifc_len = req_size;
- lifc.lifc_buf = req;
- if (ioctl(fd, SIOCGLIFCONF, &lifc) < 0) {
- close(fd);
- free(req);
- error("SIOCGLIFCONF: %m");
- return 0;
- }
-
- /*
- * And traverse each interface to look specifically for the first
- * occurence of an Ethernet interface which has been marked up
- */
- plifreq = lifc.lifc_req;
- found = 0;
- for (i = lifc.lifc_len / sizeof(struct lifreq); i > 0; i--, plifreq++) {
-
- if (strchr(plifreq->lifr_name, ':') != NULL)
- continue;
-
- memset(&lifr, 0, sizeof(lifr));
- strncpy(lifr.lifr_name, plifreq->lifr_name, sizeof(lifr.lifr_name));
- if (ioctl(fd, SIOCGLIFFLAGS, &lifr) < 0) {
- close(fd);
- free(req);
- error("SIOCGLIFFLAGS: %m");
- return 0;
- }
- fl = lifr.lifr_flags;
-
- if ((fl & (IFF_UP|IFF_BROADCAST|IFF_POINTOPOINT|IFF_LOOPBACK|IFF_NOARP))
- != (IFF_UP | IFF_BROADCAST))
- continue;
-
- found = 1;
- break;
- }
- free(req);
- close(fd);
-
- if (found) {
- strncpy(first_ether_name, lifr.lifr_name, sizeof(first_ether_name));
- return (char *)first_ether_name;
- } else
- return NULL;
-}
-#else
-/*
- * get_first_ethernet - returns the first Ethernet interface name found in
- * the system, or NULL if none is found
- *
- * NOTE: This is the ifreq version (before Solaris 8).
- */
-char *
-get_first_ethernet()
-{
- struct ifconf ifc;
- struct ifreq *pifreq;
- struct ifreq ifr;
- int fd, num_ifs, i, found;
- uint_t fl, req_size;
- char *req;
-
- fd = socket(AF_INET, SOCK_DGRAM, 0);
- if (fd < 0) {
- return 0;
- }
-
- /*
- * Find out how many interfaces are running
- */
- if (ioctl(fd, SIOCGIFNUM, (char *)&num_ifs) < 0) {
- num_ifs = MAXIFS;
- }
-
- req_size = num_ifs * sizeof(struct ifreq);
- req = malloc(req_size);
- if (req == NULL) {
- close(fd);
- error("out of memory");
- return 0;
- }
-
- /*
- * Get interface configuration info for all interfaces
- */
- ifc.ifc_len = req_size;
- ifc.ifc_buf = req;
- if (ioctl(fd, SIOCGIFCONF, &ifc) < 0) {
- close(fd);
- free(req);
- error("SIOCGIFCONF: %m");
- return 0;
- }
-
- /*
- * And traverse each interface to look specifically for the first
- * occurence of an Ethernet interface which has been marked up
- */
- pifreq = ifc.ifc_req;
- found = 0;
- for (i = ifc.ifc_len / sizeof(struct ifreq); i > 0; i--, pifreq++) {
-
- if (strchr(pifreq->ifr_name, ':') != NULL)
- continue;
-
- memset(&ifr, 0, sizeof(ifr));
- strncpy(ifr.ifr_name, pifreq->ifr_name, sizeof(ifr.ifr_name));
- if (ioctl(fd, SIOCGIFFLAGS, &ifr) < 0) {
- close(fd);
- free(req);
- error("SIOCGIFFLAGS: %m");
- return 0;
- }
- fl = ifr.ifr_flags;
-
- if ((fl & (IFF_UP|IFF_BROADCAST|IFF_POINTOPOINT|IFF_LOOPBACK|IFF_NOARP))
- != (IFF_UP | IFF_BROADCAST))
- continue;
-
- found = 1;
- break;
- }
- free(req);
- close(fd);
-
- if (found) {
- strncpy(first_ether_name, ifr.ifr_name, sizeof(first_ether_name));
- return (char *)first_ether_name;
- } else
- return NULL;
-}
-#endif /* defined(SOL2) && defined(INET6) */
-
-#if defined(SOL2)
-/*
- * get_if_hwaddr - get the hardware address for the specified
- * network interface device.
- */
-int
-get_if_hwaddr(u_char *addr, char *if_name)
-{
- struct sockaddr s_eth_addr;
- struct ether_addr *eth_addr = (struct ether_addr *)&s_eth_addr.sa_data;
-
- if (if_name == NULL)
- return -1;
-
- /*
- * Send DL_INFO_REQ to the driver to solicit its MAC address
- */
- if (!get_hw_addr_dlpi(if_name, &s_eth_addr)) {
- error("could not obtain hardware address for %s", if_name);
- return -1;
- }
-
- memcpy(addr, eth_addr->ether_addr_octet, 6);
- return 1;
-}
-#endif /* SOL2 */
-
-#if defined(SOL2) && defined(INET6)
-/*
- * slifname - Sets interface ppa and flags
- *
- * in addition to the comments stated in sifppa(), IFF_IPV6 bit must
- * be set in order to declare this as an IPv6 interface
- */
-static int
-slifname(fd, ppa)
- int fd;
- int ppa;
-{
- struct lifreq lifr;
- int ret;
-
- memset(&lifr, 0, sizeof(lifr));
- ret = ioctl(fd, SIOCGLIFFLAGS, &lifr);
- if (ret < 0)
- goto slifname_done;
-
- lifr.lifr_flags |= IFF_IPV6;
- lifr.lifr_flags &= ~(IFF_BROADCAST | IFF_IPV4);
- lifr.lifr_ppa = ppa;
- strlcpy(lifr.lifr_name, ifname, sizeof(lifr.lifr_name));
-
- ret = ioctl(fd, SIOCSLIFNAME, &lifr);
-
-slifname_done:
- return ret;
-
-
-}
-
-
-/*
- * ether_to_eui64 - Convert 48-bit Ethernet address into 64-bit EUI
- *
- * walks the list of valid ethernet interfaces, and convert the first
- * found 48-bit MAC address into EUI 64. caller also assumes that
- * the system has a properly configured Ethernet interface for this
- * function to return non-zero.
- */
-int
-ether_to_eui64(eui64_t *p_eui64)
-{
- struct sockaddr s_eth_addr;
- struct ether_addr *eth_addr = (struct ether_addr *)&s_eth_addr.sa_data;
- char *if_name;
-
- if ((if_name = get_first_ethernet()) == NULL) {
- error("no persistent id can be found");
- return 0;
- }
-
- /*
- * Send DL_INFO_REQ to the driver to solicit its MAC address
- */
- if (!get_hw_addr_dlpi(if_name, &s_eth_addr)) {
- error("could not obtain hardware address for %s", if_name);
- return 0;
- }
-
- /*
- * And convert the EUI-48 into EUI-64, per RFC 2472 [sec 4.1]
- */
- p_eui64->e8[0] = (eth_addr->ether_addr_octet[0] & 0xFF) | 0x02;
- p_eui64->e8[1] = (eth_addr->ether_addr_octet[1] & 0xFF);
- p_eui64->e8[2] = (eth_addr->ether_addr_octet[2] & 0xFF);
- p_eui64->e8[3] = 0xFF;
- p_eui64->e8[4] = 0xFE;
- p_eui64->e8[5] = (eth_addr->ether_addr_octet[3] & 0xFF);
- p_eui64->e8[6] = (eth_addr->ether_addr_octet[4] & 0xFF);
- p_eui64->e8[7] = (eth_addr->ether_addr_octet[5] & 0xFF);
-
- return 1;
-}
-#endif /* defined(SOL2) && defined(INET6) */
-
-/*
- * sys_init - System-dependent initialization.
- */
-void
-sys_init()
-{
- int ifd, x;
- struct ifreq ifr;
-#if defined(INET6) && defined(SOL2)
- int i6fd;
- struct lifreq lifr;
-#endif /* defined(INET6) && defined(SOL2) */
-#if !defined(SOL2)
- struct {
- union DL_primitives prim;
- char space[64];
- } reply;
-#endif /* !defined(SOL2) */
-
- ipfd = open(mux_dev_name, O_RDWR, 0);
- if (ipfd < 0)
- fatal("Couldn't open IP device: %m");
-
-#if defined(INET6) && defined(SOL2)
- ip6fd = open(UDP6_DEV_NAME, O_RDWR, 0);
- if (ip6fd < 0)
- fatal("Couldn't open IP device (2): %m");
-#endif /* defined(INET6) && defined(SOL2) */
-
- if (default_device && !notty)
- tty_sid = getsid((pid_t)0);
-
- pppfd = open(PPP_DEV_NAME, O_RDWR | O_NONBLOCK, 0);
- if (pppfd < 0)
- fatal("Can't open %s: %m", PPP_DEV_NAME);
- if (kdebugflag & 1) {
- x = PPPDBG_LOG + PPPDBG_DRIVER;
- strioctl(pppfd, PPPIO_DEBUG, &x, sizeof(int), 0);
- }
-
- /* Assign a new PPA and get its unit number. */
- if (strioctl(pppfd, PPPIO_NEWPPA, &ifunit, 0, sizeof(int)) < 0)
- fatal("Can't create new PPP interface: %m");
-
-#if defined(SOL2)
- /*
- * Since sys_init() is called prior to ifname being set in main(),
- * we need to get the ifname now, otherwise slifname(), and others,
- * will fail, or maybe, I should move them to a later point ?
- * <adi.masputra@sun.com>
- */
- sprintf(ifname, PPP_DRV_NAME "%d", ifunit);
-#endif /* defined(SOL2) */
- /*
- * Open the ppp device again and link it under the ip multiplexor.
- * IP will assign a unit number which hopefully is the same as ifunit.
- * I don't know any way to be certain they will be the same. :-(
- */
- ifd = open(PPP_DEV_NAME, O_RDWR, 0);
- if (ifd < 0)
- fatal("Can't open %s (2): %m", PPP_DEV_NAME);
- if (kdebugflag & 1) {
- x = PPPDBG_LOG + PPPDBG_DRIVER;
- strioctl(ifd, PPPIO_DEBUG, &x, sizeof(int), 0);
- }
-
-#if defined(INET6) && defined(SOL2)
- i6fd = open(PPP_DEV_NAME, O_RDWR, 0);
- if (i6fd < 0) {
- close(ifd);
- fatal("Can't open %s (3): %m", PPP_DEV_NAME);
- }
- if (kdebugflag & 1) {
- x = PPPDBG_LOG + PPPDBG_DRIVER;
- strioctl(i6fd, PPPIO_DEBUG, &x, sizeof(int), 0);
- }
-#endif /* defined(INET6) && defined(SOL2) */
-
-#if defined(SOL2)
- if (ioctl(ifd, I_PUSH, IP_MOD_NAME) < 0) {
- close(ifd);
-#if defined(INET6)
- close(i6fd);
-#endif /* defined(INET6) */
- fatal("Can't push IP module: %m");
- }
-
- /*
- * Assign ppa according to the unit number returned by ppp device
- * after plumbing is completed above.
- */
- if (sifppa(ifd, ifunit) < 0) {
- close (ifd);
-#if defined(INET6)
- close(i6fd);
-#endif /* defined(INET6) */
- fatal("Can't set ppa for unit %d: %m", ifunit);
- }
-
-#if defined(INET6)
- /*
- * An IPv6 interface is created anyway, even when the user does not
- * explicitly enable it. Note that the interface will be marked
- * IPv6 during slifname().
- */
- if (ioctl(i6fd, I_PUSH, IP_MOD_NAME) < 0) {
- close(ifd);
- close(i6fd);
- fatal("Can't push IP module (2): %m");
- }
-
- /*
- * Assign ppa according to the unit number returned by ppp device
- * after plumbing is completed above. In addition, mark the interface
- * as an IPv6 interface.
- */
- if (slifname(i6fd, ifunit) < 0) {
- close(ifd);
- close(i6fd);
- fatal("Can't set ifname for unit %d: %m", ifunit);
- }
-#endif /* defined(INET6) */
-
- ipmuxid = ioctl(ipfd, I_PLINK, ifd);
- close(ifd);
- if (ipmuxid < 0) {
-#if defined(INET6)
- close(i6fd);
-#endif /* defined(INET6) */
- fatal("Can't I_PLINK PPP device to IP: %m");
- }
-
- memset(&ifr, 0, sizeof(ifr));
- sprintf(ifr.ifr_name, "%s", ifname);
- ifr.ifr_ip_muxid = ipmuxid;
-
- /*
- * In Sol 8 and later, STREAMS dynamic module plumbing feature exists.
- * This is so that an arbitrary module can be inserted, or deleted,
- * between ip module and the device driver without tearing down the
- * existing stream. Such feature requires the mux ids, which is set
- * by SIOCSIFMUXID (or SIOCLSIFMUXID).
- */
- if (ioctl(ipfd, SIOCSIFMUXID, &ifr) < 0) {
- ioctl(ipfd, I_PUNLINK, ipmuxid);
-#if defined(INET6)
- close(i6fd);
-#endif /* defined(INET6) */
- fatal("SIOCSIFMUXID: %m");
- }
-
-#else /* else if !defined(SOL2) */
-
- if (dlpi_attach(ifd, ifunit) < 0 ||
- dlpi_get_reply(ifd, &reply.prim, DL_OK_ACK, sizeof(reply)) < 0) {
- close(ifd);
- fatal("Can't attach to ppp%d: %m", ifunit);
- }
-
- ipmuxid = ioctl(ipfd, I_LINK, ifd);
- close(ifd);
- if (ipmuxid < 0)
- fatal("Can't link PPP device to IP: %m");
-#endif /* defined(SOL2) */
-
-#if defined(INET6) && defined(SOL2)
- ip6muxid = ioctl(ip6fd, I_PLINK, i6fd);
- close(i6fd);
- if (ip6muxid < 0) {
- ioctl(ipfd, I_PUNLINK, ipmuxid);
- fatal("Can't I_PLINK PPP device to IP (2): %m");
- }
-
- memset(&lifr, 0, sizeof(lifr));
- sprintf(lifr.lifr_name, "%s", ifname);
- lifr.lifr_ip_muxid = ip6muxid;
-
- /*
- * Let IP know of the mux id [see comment for SIOCSIFMUXID above]
- */
- if (ioctl(ip6fd, SIOCSLIFMUXID, &lifr) < 0) {
- ioctl(ipfd, I_PUNLINK, ipmuxid);
- ioctl(ip6fd, I_PUNLINK, ip6muxid);
- fatal("Can't link PPP device to IP (2): %m");
- }
-#endif /* defined(INET6) && defined(SOL2) */
-
-#if !defined(SOL2)
- /* Set the interface name for the link. */
- slprintf(ifr.ifr_name, sizeof(ifr.ifr_name), PPP_DRV_NAME "%d", ifunit);
- ifr.ifr_metric = ipmuxid;
- if (strioctl(ipfd, SIOCSIFNAME, (char *)&ifr, sizeof ifr, 0) < 0)
- fatal("Can't set interface name %s: %m", ifr.ifr_name);
-#endif /* !defined(SOL2) */
-
- n_pollfds = 0;
-}
-
-/*
- * sys_cleanup - restore any system state we modified before exiting:
- * mark the interface down, delete default route and/or proxy arp entry.
- * This should call die() because it's called from die().
- */
-void
-sys_cleanup()
-{
-#if defined(SOL2)
- struct ifreq ifr;
-#if defined(INET6)
- struct lifreq lifr;
-#endif /* defined(INET6) */
-#endif /* defined(SOL2) */
-
-#if defined(SOL2) && defined(INET6)
- if (if6_is_up)
- sif6down(0);
-#endif /* defined(SOL2) && defined(INET6) */
- if (if_is_up)
- sifdown(0);
- if (default_route_gateway)
- cifdefaultroute(0, default_route_gateway, default_route_gateway);
- if (proxy_arp_addr)
- cifproxyarp(0, proxy_arp_addr);
-#if defined(SOL2)
- /*
- * Make sure we ask ip what the muxid, because 'ifconfig modlist' will
- * unlink and re-link the modules, causing the muxid to change.
- */
- memset(&ifr, 0, sizeof(ifr));
- sprintf(ifr.ifr_name, "%s", ifname);
- if (ioctl(ipfd, SIOCGIFFLAGS, &ifr) < 0) {
- error("SIOCGIFFLAGS: %m");
- return;
- }
-
- if (ioctl(ipfd, SIOCGIFMUXID, &ifr) < 0) {
- error("SIOCGIFMUXID: %m");
- return;
- }
-
- ipmuxid = ifr.ifr_ip_muxid;
-
- if (ioctl(ipfd, I_PUNLINK, ipmuxid) < 0) {
- error("Can't I_PUNLINK PPP from IP: %m");
- return;
- }
-#if defined(INET6)
- /*
- * Make sure we ask ip what the muxid, because 'ifconfig modlist' will
- * unlink and re-link the modules, causing the muxid to change.
- */
- memset(&lifr, 0, sizeof(lifr));
- sprintf(lifr.lifr_name, "%s", ifname);
- if (ioctl(ip6fd, SIOCGLIFFLAGS, &lifr) < 0) {
- error("SIOCGLIFFLAGS: %m");
- return;
- }
-
- if (ioctl(ip6fd, SIOCGLIFMUXID, &lifr) < 0) {
- error("SIOCGLIFMUXID: %m");
- return;
- }
-
- ip6muxid = lifr.lifr_ip_muxid;
-
- if (ioctl(ip6fd, I_PUNLINK, ip6muxid) < 0) {
- error("Can't I_PUNLINK PPP from IP (2): %m");
- }
-#endif /* defined(INET6) */
-#endif /* defined(SOL2) */
-}
-
-/*
- * sys_close - Clean up in a child process before execing.
- */
-void
-sys_close()
-{
- close(ipfd);
-#if defined(INET6) && defined(SOL2)
- close(ip6fd);
-#endif /* defined(INET6) && defined(SOL2) */
- if (pppfd >= 0)
- close(pppfd);
-}
-
-/*
- * sys_check_options - check the options that the user specified
- */
-int
-sys_check_options()
-{
- return 1;
-}
-
-#if 0
-/*
- * daemon - Detach us from controlling terminal session.
- */
-int
-daemon(nochdir, noclose)
- int nochdir, noclose;
-{
- int pid;
-
- if ((pid = fork()) < 0)
- return -1;
- if (pid != 0)
- exit(0); /* parent dies */
- setsid();
- if (!nochdir)
- chdir("/");
- if (!noclose) {
- fclose(stdin); /* don't need stdin, stdout, stderr */
- fclose(stdout);
- fclose(stderr);
- }
- return 0;
-}
-#endif
-
-/*
- * ppp_available - check whether the system has any ppp interfaces
- */
-int
-ppp_available()
-{
- struct stat buf;
-
- return stat(PPP_DEV_NAME, &buf) >= 0;
-}
-
-/*
- * any_compressions - see if compression is enabled or not
- *
- * In the STREAMS implementation of kernel-portion pppd,
- * the comp STREAMS module performs the ACFC, PFC, as well
- * CCP and VJ compressions. However, if the user has explicitly
- * declare to not enable them from the command line, there is
- * no point of having the comp module be pushed on the stream.
- */
-static int
-any_compressions()
-{
- if ((!lcp_wantoptions[0].neg_accompression) &&
- (!lcp_wantoptions[0].neg_pcompression) &&
- (!ccp_protent.enabled_flag) &&
- (!ipcp_wantoptions[0].neg_vj)) {
- return 0;
- }
- return 1;
-}
-
-/*
- * tty_establish_ppp - Turn the serial port into a ppp interface.
- */
-int
-tty_establish_ppp(fd)
- int fd;
-{
- int i;
-
- /* Pop any existing modules off the tty stream. */
- for (i = 0;; ++i)
- if (ioctl(fd, I_LOOK, tty_modules[i]) < 0
- || strcmp(tty_modules[i], "ptem") == 0
- || ioctl(fd, I_POP, 0) < 0)
- break;
- tty_nmodules = i;
-
- /* Push the async hdlc module and the compressor module. */
- tty_npushed = 0;
-
- if(!sync_serial) {
- if (ioctl(fd, I_PUSH, AHDLC_MOD_NAME) < 0) {
- error("Couldn't push PPP Async HDLC module: %m");
- return -1;
- }
- ++tty_npushed;
- }
- if (kdebugflag & 4) {
- i = PPPDBG_LOG + PPPDBG_AHDLC;
- strioctl(pppfd, PPPIO_DEBUG, &i, sizeof(int), 0);
- }
- /*
- * There's no need to push comp module if we don't intend
- * to compress anything
- */
- if (any_compressions()) {
- if (ioctl(fd, I_PUSH, COMP_MOD_NAME) < 0)
- error("Couldn't push PPP compression module: %m");
- else
- ++tty_npushed;
- }
-
- if (kdebugflag & 2) {
- i = PPPDBG_LOG;
- if (any_compressions())
- i += PPPDBG_COMP;
- strioctl(pppfd, PPPIO_DEBUG, &i, sizeof(int), 0);
- }
-
- /* Link the serial port under the PPP multiplexor. */
- if ((fdmuxid = ioctl(pppfd, I_LINK, fd)) < 0) {
- error("Can't link tty to PPP mux: %m");
- return -1;
- }
-
- return pppfd;
-}
-
-/*
- * tty_disestablish_ppp - Restore the serial port to normal operation.
- * It attempts to reconstruct the stream with the previously popped
- * modules. This shouldn't call die() because it's called from die().
- */
-void
-tty_disestablish_ppp(fd)
- int fd;
-{
- int i;
-
- if (fdmuxid >= 0) {
- if (ioctl(pppfd, I_UNLINK, fdmuxid) < 0) {
- if (!hungup)
- error("Can't unlink tty from PPP mux: %m");
- }
- fdmuxid = -1;
-
- if (!hungup) {
- while (tty_npushed > 0 && ioctl(fd, I_POP, 0) >= 0)
- --tty_npushed;
- for (i = tty_nmodules - 1; i >= 0; --i)
- if (ioctl(fd, I_PUSH, tty_modules[i]) < 0)
- error("Couldn't restore tty module %s: %m",
- tty_modules[i]);
- }
- if (hungup && default_device && tty_sid > 0) {
- /*
- * If we have received a hangup, we need to send a SIGHUP
- * to the terminal's controlling process. The reason is
- * that the original stream head for the terminal hasn't
- * seen the M_HANGUP message (it went up through the ppp
- * driver to the stream head for our fd to /dev/ppp).
- */
- kill(tty_sid, SIGHUP);
- }
- }
-}
-
-/*
- * Check whether the link seems not to be 8-bit clean.
- */
-void
-clean_check()
-{
- int x;
- char *s;
-
- if (strioctl(pppfd, PPPIO_GCLEAN, &x, 0, sizeof(x)) < 0)
- return;
- s = NULL;
- switch (~x) {
- case RCV_B7_0:
- s = "bit 7 set to 1";
- break;
- case RCV_B7_1:
- s = "bit 7 set to 0";
- break;
- case RCV_EVNP:
- s = "odd parity";
- break;
- case RCV_ODDP:
- s = "even parity";
- break;
- }
- if (s != NULL) {
- warn("Serial link is not 8-bit clean:");
- warn("All received characters had %s", s);
- }
-}
-
-/*
- * List of valid speeds.
- */
-struct speed {
- int speed_int, speed_val;
-} speeds[] = {
-#ifdef B50
- { 50, B50 },
-#endif
-#ifdef B75
- { 75, B75 },
-#endif
-#ifdef B110
- { 110, B110 },
-#endif
-#ifdef B134
- { 134, B134 },
-#endif
-#ifdef B150
- { 150, B150 },
-#endif
-#ifdef B200
- { 200, B200 },
-#endif
-#ifdef B300
- { 300, B300 },
-#endif
-#ifdef B600
- { 600, B600 },
-#endif
-#ifdef B1200
- { 1200, B1200 },
-#endif
-#ifdef B1800
- { 1800, B1800 },
-#endif
-#ifdef B2000
- { 2000, B2000 },
-#endif
-#ifdef B2400
- { 2400, B2400 },
-#endif
-#ifdef B3600
- { 3600, B3600 },
-#endif
-#ifdef B4800
- { 4800, B4800 },
-#endif
-#ifdef B7200
- { 7200, B7200 },
-#endif
-#ifdef B9600
- { 9600, B9600 },
-#endif
-#ifdef B19200
- { 19200, B19200 },
-#endif
-#ifdef B38400
- { 38400, B38400 },
-#endif
-#ifdef EXTA
- { 19200, EXTA },
-#endif
-#ifdef EXTB
- { 38400, EXTB },
-#endif
-#ifdef B57600
- { 57600, B57600 },
-#endif
-#ifdef B76800
- { 76800, B76800 },
-#endif
-#ifdef B115200
- { 115200, B115200 },
-#endif
-#ifdef B153600
- { 153600, B153600 },
-#endif
-#ifdef B230400
- { 230400, B230400 },
-#endif
-#ifdef B307200
- { 307200, B307200 },
-#endif
-#ifdef B460800
- { 460800, B460800 },
-#endif
- { 0, 0 }
-};
-
-/*
- * Translate from bits/second to a speed_t.
- */
-static int
-translate_speed(bps)
- int bps;
-{
- struct speed *speedp;
-
- if (bps == 0)
- return 0;
- for (speedp = speeds; speedp->speed_int; speedp++)
- if (bps == speedp->speed_int)
- return speedp->speed_val;
- warn("speed %d not supported", bps);
- return 0;
-}
-
-/*
- * Translate from a speed_t to bits/second.
- */
-static int
-baud_rate_of(speed)
- int speed;
-{
- struct speed *speedp;
-
- if (speed == 0)
- return 0;
- for (speedp = speeds; speedp->speed_int; speedp++)
- if (speed == speedp->speed_val)
- return speedp->speed_int;
- return 0;
-}
-
-/*
- * set_up_tty: Set up the serial port on `fd' for 8 bits, no parity,
- * at the requested speed, etc. If `local' is true, set CLOCAL
- * regardless of whether the modem option was specified.
- */
-void
-set_up_tty(fd, local)
- int fd, local;
-{
- int speed;
- struct termios tios;
-#if !defined (CRTSCTS)
- struct termiox tiox;
-#endif
-
- if (!sync_serial && tcgetattr(fd, &tios) < 0)
- fatal("tcgetattr: %m");
-
-#ifndef CRTSCTS
- termiox_ok = 1;
- if (!sync_serial && ioctl (fd, TCGETX, &tiox) < 0) {
- termiox_ok = 0;
- if (errno != ENOTTY)
- error("TCGETX: %m");
- }
-#endif
-
- if (!restore_term) {
- inittermios = tios;
-#ifndef CRTSCTS
- inittermiox = tiox;
-#endif
- if (!sync_serial)
- ioctl(fd, TIOCGWINSZ, &wsinfo);
- }
-
- tios.c_cflag &= ~(CSIZE | CSTOPB | PARENB | CLOCAL);
-#ifdef CRTSCTS
- if (crtscts > 0)
- tios.c_cflag |= CRTSCTS;
- else if (crtscts < 0)
- tios.c_cflag &= ~CRTSCTS;
-#else
- if (crtscts != 0 && !termiox_ok) {
- error("Can't set RTS/CTS flow control");
- } else if (crtscts > 0) {
- tiox.x_hflag |= RTSXOFF|CTSXON;
- } else if (crtscts < 0) {
- tiox.x_hflag &= ~(RTSXOFF|CTSXON);
- }
-#endif
-
- tios.c_cflag |= CS8 | CREAD | HUPCL;
- if (local || !modem)
- tios.c_cflag |= CLOCAL;
- tios.c_iflag = IGNBRK | IGNPAR;
- tios.c_oflag = 0;
- tios.c_lflag = 0;
- tios.c_cc[VMIN] = 1;
- tios.c_cc[VTIME] = 0;
-
- if (crtscts == -2) {
- tios.c_iflag |= IXON | IXOFF;
- tios.c_cc[VSTOP] = 0x13; /* DC3 = XOFF = ^S */
- tios.c_cc[VSTART] = 0x11; /* DC1 = XON = ^Q */
- }
-
- speed = translate_speed(inspeed);
- if (speed) {
- cfsetospeed(&tios, speed);
- cfsetispeed(&tios, speed);
- } else {
- speed = cfgetospeed(&tios);
- /*
- * We can't proceed if the serial port speed is 0,
- * since that implies that the serial port is disabled.
- */
- if ((speed == B0) && !sync_serial)
- fatal("Baud rate for %s is 0; need explicit baud rate", devnam);
- }
-
- if (!sync_serial && tcsetattr(fd, TCSAFLUSH, &tios) < 0)
- fatal("tcsetattr: %m");
-
-#ifndef CRTSCTS
- if (!sync_serial && termiox_ok && ioctl (fd, TCSETXF, &tiox) < 0){
- error("TCSETXF: %m");
- }
-#endif
-
- baud_rate = inspeed = baud_rate_of(speed);
- if (!sync_serial)
- restore_term = 1;
-}
-
-/*
- * restore_tty - restore the terminal to the saved settings.
- */
-void
-restore_tty(fd)
- int fd;
-{
- if (restore_term) {
- if (!default_device) {
- /*
- * Turn off echoing, because otherwise we can get into
- * a loop with the tty and the modem echoing to each other.
- * We presume we are the sole user of this tty device, so
- * when we close it, it will revert to its defaults anyway.
- */
- inittermios.c_lflag &= ~(ECHO | ECHONL);
- }
- if (!sync_serial && tcsetattr(fd, TCSAFLUSH, &inittermios) < 0)
- if (!hungup && errno != ENXIO)
- warn("tcsetattr: %m");
-#ifndef CRTSCTS
- if (!sync_serial && ioctl (fd, TCSETXF, &inittermiox) < 0){
- if (!hungup && errno != ENXIO)
- error("TCSETXF: %m");
- }
-#endif
- if (!sync_serial)
- ioctl(fd, TIOCSWINSZ, &wsinfo);
- restore_term = 0;
- }
-}
-
-/*
- * setdtr - control the DTR line on the serial port.
- * This is called from die(), so it shouldn't call die().
- */
-void
-setdtr(fd, on)
-int fd, on;
-{
- int modembits = TIOCM_DTR;
-
- ioctl(fd, (on? TIOCMBIS: TIOCMBIC), &modembits);
-}
-
-/*
- * open_loopback - open the device we use for getting packets
- * in demand mode. Under Solaris 2, we use our existing fd
- * to the ppp driver.
- */
-int
-open_ppp_loopback()
-{
- return pppfd;
-}
-
-/*
- * output - Output PPP packet.
- */
-void
-output(unit, p, len)
- int unit;
- u_char *p;
- int len;
-{
- struct strbuf data;
- int retries;
- struct pollfd pfd;
-
- if (debug)
- dbglog("sent %P", p, len);
-
- data.len = len;
- data.buf = (caddr_t) p;
- retries = 4;
- while (putmsg(pppfd, NULL, &data, 0) < 0) {
- if (--retries < 0 || (errno != EWOULDBLOCK && errno != EAGAIN)) {
- if (errno != ENXIO)
- error("Couldn't send packet: %m");
- break;
- }
- pfd.fd = pppfd;
- pfd.events = POLLOUT;
- poll(&pfd, 1, 250); /* wait for up to 0.25 seconds */
- }
-}
-
-
-/*
- * wait_input - wait until there is data available,
- * for the length of time specified by *timo (indefinite
- * if timo is NULL).
- */
-void
-wait_input(timo)
- struct timeval *timo;
-{
- int t;
-
- t = timo == NULL? -1: timo->tv_sec * 1000 + timo->tv_usec / 1000;
- if (poll(pollfds, n_pollfds, t) < 0 && errno != EINTR)
- fatal("poll: %m");
-}
-
-/*
- * add_fd - add an fd to the set that wait_input waits for.
- */
-void add_fd(fd)
- int fd;
-{
- int n;
-
- for (n = 0; n < n_pollfds; ++n)
- if (pollfds[n].fd == fd)
- return;
- if (n_pollfds < MAX_POLLFDS) {
- pollfds[n_pollfds].fd = fd;
- pollfds[n_pollfds].events = POLLIN | POLLPRI | POLLHUP;
- ++n_pollfds;
- } else
- error("Too many inputs!");
-}
-
-/*
- * remove_fd - remove an fd from the set that wait_input waits for.
- */
-void remove_fd(fd)
- int fd;
-{
- int n;
-
- for (n = 0; n < n_pollfds; ++n) {
- if (pollfds[n].fd == fd) {
- while (++n < n_pollfds)
- pollfds[n-1] = pollfds[n];
- --n_pollfds;
- break;
- }
- }
-}
-
-#if 0
-/*
- * wait_loop_output - wait until there is data available on the
- * loopback, for the length of time specified by *timo (indefinite
- * if timo is NULL).
- */
-void
-wait_loop_output(timo)
- struct timeval *timo;
-{
- wait_input(timo);
-}
-
-/*
- * wait_time - wait for a given length of time or until a
- * signal is received.
- */
-void
-wait_time(timo)
- struct timeval *timo;
-{
- int n;
-
- n = select(0, NULL, NULL, NULL, timo);
- if (n < 0 && errno != EINTR)
- fatal("select: %m");
-}
-#endif
-
-
-/*
- * read_packet - get a PPP packet from the serial device.
- */
-int
-read_packet(buf)
- u_char *buf;
-{
- struct strbuf ctrl, data;
- int flags, len;
- unsigned char ctrlbuf[sizeof(union DL_primitives) + 64];
-
- for (;;) {
- data.maxlen = PPP_MRU + PPP_HDRLEN;
- data.buf = (caddr_t) buf;
- ctrl.maxlen = sizeof(ctrlbuf);
- ctrl.buf = (caddr_t) ctrlbuf;
- flags = 0;
- len = getmsg(pppfd, &ctrl, &data, &flags);
- if (len < 0) {
- if (errno == EAGAIN || errno == EINTR)
- return -1;
- fatal("Error reading packet: %m");
- }
-
- if (ctrl.len <= 0)
- return data.len;
-
- /*
- * Got a M_PROTO or M_PCPROTO message. Interpret it
- * as a DLPI primitive??
- */
- if (debug)
- dbglog("got dlpi prim 0x%x, len=%d",
- ((union DL_primitives *)ctrlbuf)->dl_primitive, ctrl.len);
-
- }
-}
-
-/*
- * get_loop_output - get outgoing packets from the ppp device,
- * and detect when we want to bring the real link up.
- * Return value is 1 if we need to bring up the link, 0 otherwise.
- */
-int
-get_loop_output()
-{
- int len;
- int rv = 0;
-
- while ((len = read_packet(inpacket_buf)) > 0) {
- if (loop_frame(inpacket_buf, len))
- rv = 1;
- }
- return rv;
-}
-
-/*
- * netif_set_mtu - set the MTU on the PPP network interface.
- */
-void
-netif_set_mtu(unit, mtu)
- int unit, mtu;
-{
- struct ifreq ifr;
-#if defined(INET6) && defined(SOL2)
- struct lifreq lifr;
- int fd;
-#endif /* defined(INET6) && defined(SOL2) */
-
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- ifr.ifr_metric = link_mtu;
- if (ioctl(ipfd, SIOCSIFMTU, &ifr) < 0) {
- error("Couldn't set IP MTU (%s): %m", ifr.ifr_name);
- }
-
-#if defined(INET6) && defined(SOL2)
- fd = socket(AF_INET6, SOCK_DGRAM, 0);
- if (fd < 0)
- error("Couldn't open IPv6 socket: %m");
-
- memset(&lifr, 0, sizeof(lifr));
- strlcpy(lifr.lifr_name, ifname, sizeof(lifr.lifr_name));
- lifr.lifr_mtu = link_mtu;
- if (ioctl(fd, SIOCSLIFMTU, &lifr) < 0) {
- close(fd);
- error("Couldn't set IPv6 MTU (%s): %m", ifr.ifr_name);
- }
- close(fd);
-#endif /* defined(INET6) && defined(SOL2) */
-}
-
-/*
- * tty_send_config - configure the transmit characteristics of
- * the ppp interface.
- */
-void
-tty_send_config(mtu, asyncmap, pcomp, accomp)
- int mtu;
- u_int32_t asyncmap;
- int pcomp, accomp;
-{
- int cf[2];
-
- link_mtu = mtu;
- if (strioctl(pppfd, PPPIO_MTU, &mtu, sizeof(mtu), 0) < 0) {
- if (hungup && errno == ENXIO)
- return;
- error("Couldn't set MTU: %m");
- }
- if (fdmuxid >= 0) {
- if (!sync_serial) {
- if (strioctl(pppfd, PPPIO_XACCM, &asyncmap, sizeof(asyncmap), 0) < 0) {
- error("Couldn't set transmit ACCM: %m");
- }
- }
- cf[0] = (pcomp? COMP_PROT: 0) + (accomp? COMP_AC: 0);
- cf[1] = COMP_PROT | COMP_AC;
- if (any_compressions() &&
- strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- error("Couldn't set prot/AC compression: %m");
- }
- }
-}
-
-/*
- * ppp_set_xaccm - set the extended transmit ACCM for the interface.
- */
-void
-tty_set_xaccm(accm)
- ext_accm accm;
-{
- if (sync_serial)
- return;
-
- if (fdmuxid >= 0
- && strioctl(pppfd, PPPIO_XACCM, accm, sizeof(ext_accm), 0) < 0) {
- if (!hungup || errno != ENXIO)
- warn("Couldn't set extended ACCM: %m");
- }
-}
-
-/*
- * ppp_recv_config - configure the receive-side characteristics of
- * the ppp interface.
- */
-void
-tty_recv_config(mru, asyncmap, pcomp, accomp)
- int mru;
- u_int32_t asyncmap;
- int pcomp, accomp;
-{
- int cf[2];
-
- link_mru = mru;
- if (strioctl(pppfd, PPPIO_MRU, &mru, sizeof(mru), 0) < 0) {
- if (hungup && errno == ENXIO)
- return;
- error("Couldn't set MRU: %m");
- }
- if (fdmuxid >= 0) {
- if (!sync_serial) {
- if (strioctl(pppfd, PPPIO_RACCM, &asyncmap, sizeof(asyncmap), 0) < 0) {
- error("Couldn't set receive ACCM: %m");
- }
- }
- cf[0] = (pcomp? DECOMP_PROT: 0) + (accomp? DECOMP_AC: 0);
- cf[1] = DECOMP_PROT | DECOMP_AC;
- if (any_compressions() &&
- strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- error("Couldn't set prot/AC decompression: %m");
- }
- }
-}
-
-/*
- * ccp_test - ask kernel whether a given compression method
- * is acceptable for use.
- */
-int
-ccp_test(unit, opt_ptr, opt_len, for_transmit)
- int unit, opt_len, for_transmit;
- u_char *opt_ptr;
-{
- if (strioctl(pppfd, (for_transmit? PPPIO_XCOMP: PPPIO_RCOMP),
- opt_ptr, opt_len, 0) >= 0)
- return 1;
- return (errno == ENOSR)? 0: -1;
-}
-
-/*
- * ccp_flags_set - inform kernel about the current state of CCP.
- */
-void
-ccp_flags_set(unit, isopen, isup)
- int unit, isopen, isup;
-{
- int cf[2];
-
- cf[0] = (isopen? CCP_ISOPEN: 0) + (isup? CCP_ISUP: 0);
- cf[1] = CCP_ISOPEN | CCP_ISUP | CCP_ERROR | CCP_FATALERROR;
- if (strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- if (!hungup || errno != ENXIO)
- error("Couldn't set kernel CCP state: %m");
- }
-}
-
-/*
- * get_idle_time - return how long the link has been idle.
- */
-int
-get_idle_time(u, ip)
- int u;
- struct ppp_idle *ip;
-{
- return strioctl(pppfd, PPPIO_GIDLE, ip, 0, sizeof(struct ppp_idle)) >= 0;
-}
-
-/*
- * get_ppp_stats - return statistics for the link.
- */
-int
-get_ppp_stats(u, stats)
- int u;
- struct pppd_stats *stats;
-{
- struct ppp_stats s;
-
- if (!sync_serial &&
- strioctl(pppfd, PPPIO_GETSTAT, &s, 0, sizeof(s)) < 0) {
- error("Couldn't get link statistics: %m");
- return 0;
- }
- stats->bytes_in = s.p.ppp_ibytes;
- stats->bytes_out = s.p.ppp_obytes;
- return 1;
-}
-
-#if 0
-/*
- * set_filters - transfer the pass and active filters to the kernel.
- */
-int
-set_filters(pass, active)
- struct bpf_program *pass, *active;
-{
- int ret = 1;
-
- if (pass->bf_len > 0) {
- if (strioctl(pppfd, PPPIO_PASSFILT, pass,
- sizeof(struct bpf_program), 0) < 0) {
- error("Couldn't set pass-filter in kernel: %m");
- ret = 0;
- }
- }
- if (active->bf_len > 0) {
- if (strioctl(pppfd, PPPIO_ACTIVEFILT, active,
- sizeof(struct bpf_program), 0) < 0) {
- error("Couldn't set active-filter in kernel: %m");
- ret = 0;
- }
- }
- return ret;
-}
-#endif
-
-/*
- * ccp_fatal_error - returns 1 if decompression was disabled as a
- * result of an error detected after decompression of a packet,
- * 0 otherwise. This is necessary because of patent nonsense.
- */
-int
-ccp_fatal_error(unit)
- int unit;
-{
- int cf[2];
-
- cf[0] = cf[1] = 0;
- if (strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- if (errno != ENXIO && errno != EINVAL)
- error("Couldn't get compression flags: %m");
- return 0;
- }
- return cf[0] & CCP_FATALERROR;
-}
-
-/*
- * sifvjcomp - config tcp header compression
- */
-int
-sifvjcomp(u, vjcomp, xcidcomp, xmaxcid)
- int u, vjcomp, xcidcomp, xmaxcid;
-{
- int cf[2];
- char maxcid[2];
-
- if (vjcomp) {
- maxcid[0] = xcidcomp;
- maxcid[1] = 15; /* XXX should be rmaxcid */
- if (strioctl(pppfd, PPPIO_VJINIT, maxcid, sizeof(maxcid), 0) < 0) {
- error("Couldn't initialize VJ compression: %m");
- }
- }
-
- cf[0] = (vjcomp? COMP_VJC + DECOMP_VJC: 0) /* XXX this is wrong */
- + (xcidcomp? COMP_VJCCID + DECOMP_VJCCID: 0);
- cf[1] = COMP_VJC + DECOMP_VJC + COMP_VJCCID + DECOMP_VJCCID;
- if (strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- if (vjcomp)
- error("Couldn't enable VJ compression: %m");
- }
-
- return 1;
-}
-
-/*
- * sifup - Config the interface up and enable IP packets to pass.
- */
-int
-sifup(u)
- int u;
-{
- struct ifreq ifr;
-
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(ipfd, SIOCGIFFLAGS, &ifr) < 0) {
- error("Couldn't mark interface up (get): %m");
- return 0;
- }
- ifr.ifr_flags |= IFF_UP;
- if (ioctl(ipfd, SIOCSIFFLAGS, &ifr) < 0) {
- error("Couldn't mark interface up (set): %m");
- return 0;
- }
- if_is_up = 1;
- return 1;
-}
-
-/*
- * sifdown - Config the interface down and disable IP.
- */
-int
-sifdown(u)
- int u;
-{
- struct ifreq ifr;
-
- if (ipmuxid < 0)
- return 1;
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(ipfd, SIOCGIFFLAGS, &ifr) < 0) {
- error("Couldn't mark interface down (get): %m");
- return 0;
- }
- ifr.ifr_flags &= ~IFF_UP;
- if (ioctl(ipfd, SIOCSIFFLAGS, &ifr) < 0) {
- error("Couldn't mark interface down (set): %m");
- return 0;
- }
- if_is_up = 0;
- return 1;
-}
-
-/*
- * sifnpmode - Set the mode for handling packets for a given NP.
- */
-int
-sifnpmode(u, proto, mode)
- int u;
- int proto;
- enum NPmode mode;
-{
- int npi[2];
-
- npi[0] = proto;
- npi[1] = (int) mode;
- if (strioctl(pppfd, PPPIO_NPMODE, &npi, 2 * sizeof(int), 0) < 0) {
- error("ioctl(set NP %d mode to %d): %m", proto, mode);
- return 0;
- }
- return 1;
-}
-
-#if defined(SOL2) && defined(INET6)
-/*
- * sif6up - Config the IPv6 interface up and enable IPv6 packets to pass.
- */
-int
-sif6up(u)
- int u;
-{
- struct lifreq lifr;
- int fd;
-
- fd = socket(AF_INET6, SOCK_DGRAM, 0);
- if (fd < 0) {
- return 0;
- }
-
- memset(&lifr, 0, sizeof(lifr));
- strlcpy(lifr.lifr_name, ifname, sizeof(lifr.lifr_name));
- if (ioctl(fd, SIOCGLIFFLAGS, &lifr) < 0) {
- close(fd);
- return 0;
- }
-
- lifr.lifr_flags |= IFF_UP;
- strlcpy(lifr.lifr_name, ifname, sizeof(lifr.lifr_name));
- if (ioctl(fd, SIOCSLIFFLAGS, &lifr) < 0) {
- close(fd);
- return 0;
- }
-
- if6_is_up = 1;
- close(fd);
- return 1;
-}
-
-/*
- * sifdown - Config the IPv6 interface down and disable IPv6.
- */
-int
-sif6down(u)
- int u;
-{
- struct lifreq lifr;
- int fd;
-
- fd = socket(AF_INET6, SOCK_DGRAM, 0);
- if (fd < 0)
- return 0;
-
- memset(&lifr, 0, sizeof(lifr));
- strlcpy(lifr.lifr_name, ifname, sizeof(lifr.lifr_name));
- if (ioctl(fd, SIOCGLIFFLAGS, &lifr) < 0) {
- close(fd);
- return 0;
- }
-
- lifr.lifr_flags &= ~IFF_UP;
- strlcpy(lifr.lifr_name, ifname, sizeof(lifr.lifr_name));
- if (ioctl(fd, SIOCGLIFFLAGS, &lifr) < 0) {
- close(fd);
- return 0;
- }
-
- if6_is_up = 0;
- close(fd);
- return 1;
-}
-
-/*
- * sif6addr - Config the interface with an IPv6 link-local address
- */
-int
-sif6addr(u, o, h)
- int u;
- eui64_t o, h;
-{
- struct lifreq lifr;
- struct sockaddr_storage laddr;
- struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)&laddr;
- int fd;
-
- fd = socket(AF_INET6, SOCK_DGRAM, 0);
- if (fd < 0)
- return 0;
-
- memset(&lifr, 0, sizeof(lifr));
- strlcpy(lifr.lifr_name, ifname, sizeof(lifr.lifr_name));
-
- /*
- * Do this because /dev/ppp responds to DL_PHYS_ADDR_REQ with
- * zero values, hence the interface token came to be zero too,
- * and without this, in.ndpd will complain
- */
- IN6_LLTOKEN_FROM_EUI64(lifr, sin6, o);
- if (ioctl(fd, SIOCSLIFTOKEN, &lifr) < 0) {
- close(fd);
- return 0;
- }
-
- /*
- * Set the interface address and destination address
- */
- IN6_LLADDR_FROM_EUI64(lifr, sin6, o);
- if (ioctl(fd, SIOCSLIFADDR, &lifr) < 0) {
- close(fd);
- return 0;
- }
-
- memset(&lifr, 0, sizeof(lifr));
- strlcpy(lifr.lifr_name, ifname, sizeof(lifr.lifr_name));
- IN6_LLADDR_FROM_EUI64(lifr, sin6, h);
- if (ioctl(fd, SIOCSLIFDSTADDR, &lifr) < 0) {
- close(fd);
- return 0;
- }
-
- return 1;
-}
-
-/*
- * cif6addr - Remove the IPv6 address from interface
- */
-int
-cif6addr(u, o, h)
- int u;
- eui64_t o, h;
-{
- return 1;
-}
-
-#endif /* defined(SOL2) && defined(INET6) */
-
-
-#define INET_ADDR(x) (((struct sockaddr_in *) &(x))->sin_addr.s_addr)
-
-/*
- * sifaddr - Config the interface IP addresses and netmask.
- */
-int
-sifaddr(u, o, h, m)
- int u;
- u_int32_t o, h, m;
-{
- struct ifreq ifr;
- int ret = 1;
-
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- ifr.ifr_addr.sa_family = AF_INET;
- INET_ADDR(ifr.ifr_addr) = m;
- if (ioctl(ipfd, SIOCSIFNETMASK, &ifr) < 0) {
- error("Couldn't set IP netmask: %m");
- ret = 0;
- }
- ifr.ifr_addr.sa_family = AF_INET;
- INET_ADDR(ifr.ifr_addr) = o;
- if (ioctl(ipfd, SIOCSIFADDR, &ifr) < 0) {
- error("Couldn't set local IP address: %m");
- ret = 0;
- }
-
- /*
- * On some systems, we have to explicitly set the point-to-point
- * flag bit before we can set a destination address.
- */
- if (ioctl(ipfd, SIOCGIFFLAGS, &ifr) >= 0
- && (ifr.ifr_flags & IFF_POINTOPOINT) == 0) {
- ifr.ifr_flags |= IFF_POINTOPOINT;
- if (ioctl(ipfd, SIOCSIFFLAGS, &ifr) < 0) {
- error("Couldn't mark interface pt-to-pt: %m");
- ret = 0;
- }
- }
- ifr.ifr_dstaddr.sa_family = AF_INET;
- INET_ADDR(ifr.ifr_dstaddr) = h;
- if (ioctl(ipfd, SIOCSIFDSTADDR, &ifr) < 0) {
- error("Couldn't set remote IP address: %m");
- ret = 0;
- }
-#if 0 /* now done in ppp_send_config */
- ifr.ifr_metric = link_mtu;
- if (ioctl(ipfd, SIOCSIFMTU, &ifr) < 0) {
- error("Couldn't set IP MTU: %m");
- }
-#endif
-
- remote_addr = h;
- return ret;
-}
-
-/*
- * cifaddr - Clear the interface IP addresses, and delete routes
- * through the interface if possible.
- */
-int
-cifaddr(u, o, h)
- int u;
- u_int32_t o, h;
-{
-#if defined(__USLC__) /* was: #if 0 */
- cifroute(unit, ouraddr, hisaddr);
- if (ipmuxid >= 0) {
- notice("Removing ppp interface unit");
- if (ioctl(ipfd, I_UNLINK, ipmuxid) < 0) {
- error("Can't remove ppp interface unit: %m");
- return 0;
- }
- ipmuxid = -1;
- }
-#endif
- remote_addr = 0;
- return 1;
-}
-
-/*
- * sifdefaultroute - assign a default route through the address given.
- */
-int
-sifdefaultroute(u, l, g)
- int u;
- u_int32_t l, g;
-{
- struct rtentry rt;
-
-#if defined(__USLC__)
- g = l; /* use the local address as gateway */
-#endif
- memset(&rt, 0, sizeof(rt));
- rt.rt_dst.sa_family = AF_INET;
- INET_ADDR(rt.rt_dst) = 0;
- rt.rt_gateway.sa_family = AF_INET;
- INET_ADDR(rt.rt_gateway) = g;
- rt.rt_flags = RTF_GATEWAY;
-
- if (ioctl(ipfd, SIOCADDRT, &rt) < 0) {
- error("Can't add default route: %m");
- return 0;
- }
-
- default_route_gateway = g;
- return 1;
-}
-
-/*
- * cifdefaultroute - delete a default route through the address given.
- */
-int
-cifdefaultroute(u, l, g)
- int u;
- u_int32_t l, g;
-{
- struct rtentry rt;
-
-#if defined(__USLC__)
- g = l; /* use the local address as gateway */
-#endif
- memset(&rt, 0, sizeof(rt));
- rt.rt_dst.sa_family = AF_INET;
- INET_ADDR(rt.rt_dst) = 0;
- rt.rt_gateway.sa_family = AF_INET;
- INET_ADDR(rt.rt_gateway) = g;
- rt.rt_flags = RTF_GATEWAY;
-
- if (ioctl(ipfd, SIOCDELRT, &rt) < 0) {
- error("Can't delete default route: %m");
- return 0;
- }
-
- default_route_gateway = 0;
- return 1;
-}
-
-/*
- * sifproxyarp - Make a proxy ARP entry for the peer.
- */
-int
-sifproxyarp(unit, hisaddr)
- int unit;
- u_int32_t hisaddr;
-{
- struct arpreq arpreq;
-
- memset(&arpreq, 0, sizeof(arpreq));
- if (!get_ether_addr(hisaddr, &arpreq.arp_ha))
- return 0;
-
- arpreq.arp_pa.sa_family = AF_INET;
- INET_ADDR(arpreq.arp_pa) = hisaddr;
- arpreq.arp_flags = ATF_PERM | ATF_PUBL;
- if (ioctl(ipfd, SIOCSARP, (caddr_t) &arpreq) < 0) {
- error("Couldn't set proxy ARP entry: %m");
- return 0;
- }
-
- proxy_arp_addr = hisaddr;
- return 1;
-}
-
-/*
- * cifproxyarp - Delete the proxy ARP entry for the peer.
- */
-int
-cifproxyarp(unit, hisaddr)
- int unit;
- u_int32_t hisaddr;
-{
- struct arpreq arpreq;
-
- memset(&arpreq, 0, sizeof(arpreq));
- arpreq.arp_pa.sa_family = AF_INET;
- INET_ADDR(arpreq.arp_pa) = hisaddr;
- if (ioctl(ipfd, SIOCDARP, (caddr_t)&arpreq) < 0) {
- error("Couldn't delete proxy ARP entry: %m");
- return 0;
- }
-
- proxy_arp_addr = 0;
- return 1;
-}
-
-/*
- * get_ether_addr - get the hardware address of an interface on the
- * the same subnet as ipaddr.
- */
-#define MAX_IFS 32
-
-static int
-get_ether_addr(ipaddr, hwaddr)
- u_int32_t ipaddr;
- struct sockaddr *hwaddr;
-{
- struct ifreq *ifr, *ifend, ifreq;
- int nif;
- struct ifconf ifc;
- u_int32_t ina, mask;
-
- /*
- * Scan through the system's network interfaces.
- */
-#ifdef SIOCGIFNUM
- if (ioctl(ipfd, SIOCGIFNUM, &nif) < 0)
-#endif
- nif = MAX_IFS;
- ifc.ifc_len = nif * sizeof(struct ifreq);
- ifc.ifc_buf = (caddr_t) malloc(ifc.ifc_len);
- if (ifc.ifc_buf == 0)
- return 0;
- if (ioctl(ipfd, SIOCGIFCONF, &ifc) < 0) {
- warn("Couldn't get system interface list: %m");
- free(ifc.ifc_buf);
- return 0;
- }
- ifend = (struct ifreq *) (ifc.ifc_buf + ifc.ifc_len);
- for (ifr = ifc.ifc_req; ifr < ifend; ++ifr) {
- if (ifr->ifr_addr.sa_family != AF_INET)
- continue;
- /*
- * Check that the interface is up, and not point-to-point or loopback.
- */
- strlcpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
- if (ioctl(ipfd, SIOCGIFFLAGS, &ifreq) < 0)
- continue;
- if ((ifreq.ifr_flags &
- (IFF_UP|IFF_BROADCAST|IFF_POINTOPOINT|IFF_LOOPBACK|IFF_NOARP))
- != (IFF_UP|IFF_BROADCAST))
- continue;
- /*
- * Get its netmask and check that it's on the right subnet.
- */
- if (ioctl(ipfd, SIOCGIFNETMASK, &ifreq) < 0)
- continue;
- ina = INET_ADDR(ifr->ifr_addr);
- mask = INET_ADDR(ifreq.ifr_addr);
- if ((ipaddr & mask) == (ina & mask))
- break;
- }
-
- if (ifr >= ifend) {
- warn("No suitable interface found for proxy ARP");
- free(ifc.ifc_buf);
- return 0;
- }
-
- info("found interface %s for proxy ARP", ifr->ifr_name);
- if (!get_hw_addr(ifr->ifr_name, ina, hwaddr)) {
- error("Couldn't get hardware address for %s", ifr->ifr_name);
- free(ifc.ifc_buf);
- return 0;
- }
-
- free(ifc.ifc_buf);
- return 1;
-}
-
-/*
- * get_hw_addr_dlpi - obtain the hardware address using DLPI
- */
-static int
-get_hw_addr_dlpi(name, hwaddr)
- char *name;
- struct sockaddr *hwaddr;
-{
- char *p, *q;
- int unit, iffd, adrlen;
- unsigned char *adrp;
- char ifdev[24];
- struct {
- union DL_primitives prim;
- char space[64];
- } reply;
-
- /*
- * We have to open the device and ask it for its hardware address.
- * First split apart the device name and unit.
- */
- slprintf(ifdev, sizeof(ifdev), "/dev/%s", name);
- for (q = ifdev + strlen(ifdev); --q >= ifdev; )
- if (!isdigit(*q))
- break;
- unit = atoi(q+1);
- q[1] = 0;
-
- /*
- * Open the device and do a DLPI attach and phys_addr_req.
- */
- iffd = open(ifdev, O_RDWR);
- if (iffd < 0) {
- error("Can't open %s: %m", ifdev);
- return 0;
- }
- if (dlpi_attach(iffd, unit) < 0
- || dlpi_get_reply(iffd, &reply.prim, DL_OK_ACK, sizeof(reply)) < 0
- || dlpi_info_req(iffd) < 0
- || dlpi_get_reply(iffd, &reply.prim, DL_INFO_ACK, sizeof(reply)) < 0) {
- close(iffd);
- return 0;
- }
-
- adrlen = reply.prim.info_ack.dl_addr_length;
- adrp = (unsigned char *)&reply + reply.prim.info_ack.dl_addr_offset;
-
-#if DL_CURRENT_VERSION >= 2
- if (reply.prim.info_ack.dl_sap_length < 0)
- adrlen += reply.prim.info_ack.dl_sap_length;
- else
- adrp += reply.prim.info_ack.dl_sap_length;
-#endif
-
- hwaddr->sa_family = AF_UNSPEC;
- memcpy(hwaddr->sa_data, adrp, adrlen);
-
- return 1;
-}
-/*
- * get_hw_addr - obtain the hardware address for a named interface.
- */
-static int
-get_hw_addr(name, ina, hwaddr)
- char *name;
- u_int32_t ina;
- struct sockaddr *hwaddr;
-{
- /* New way - get the address by doing an arp request. */
- int s;
- struct arpreq req;
-
- s = socket(AF_INET, SOCK_DGRAM, 0);
- if (s < 0)
- return 0;
- memset(&req, 0, sizeof(req));
- req.arp_pa.sa_family = AF_INET;
- INET_ADDR(req.arp_pa) = ina;
- if (ioctl(s, SIOCGARP, &req) < 0) {
- error("Couldn't get ARP entry for %s: %m", ip_ntoa(ina));
- return 0;
- }
- *hwaddr = req.arp_ha;
- hwaddr->sa_family = AF_UNSPEC;
-
- return 1;
-}
-
-static int
-dlpi_attach(fd, ppa)
- int fd, ppa;
-{
- dl_attach_req_t req;
- struct strbuf buf;
-
- req.dl_primitive = DL_ATTACH_REQ;
- req.dl_ppa = ppa;
- buf.len = sizeof(req);
- buf.buf = (void *) &req;
- return putmsg(fd, &buf, NULL, RS_HIPRI);
-}
-
-static int
-dlpi_info_req(fd)
- int fd;
-{
- dl_info_req_t req;
- struct strbuf buf;
-
- req.dl_primitive = DL_INFO_REQ;
- buf.len = sizeof(req);
- buf.buf = (void *) &req;
- return putmsg(fd, &buf, NULL, RS_HIPRI);
-}
-
-static int
-dlpi_get_reply(fd, reply, expected_prim, maxlen)
- union DL_primitives *reply;
- int fd, expected_prim, maxlen;
-{
- struct strbuf buf;
- int flags, n;
- struct pollfd pfd;
-
- /*
- * Use poll to wait for a message with a timeout.
- */
- pfd.fd = fd;
- pfd.events = POLLIN | POLLPRI;
- do {
- n = poll(&pfd, 1, 1000);
- } while (n == -1 && errno == EINTR);
- if (n <= 0)
- return -1;
-
- /*
- * Get the reply.
- */
- buf.maxlen = maxlen;
- buf.buf = (void *) reply;
- flags = 0;
- if (getmsg(fd, &buf, NULL, &flags) < 0)
- return -1;
-
- if (buf.len < sizeof(ulong)) {
- if (debug)
- dbglog("dlpi response short (len=%d)\n", buf.len);
- return -1;
- }
-
- if (reply->dl_primitive == expected_prim)
- return 0;
-
- if (debug) {
- if (reply->dl_primitive == DL_ERROR_ACK) {
- dbglog("dlpi error %d (unix errno %d) for prim %x\n",
- reply->error_ack.dl_errno, reply->error_ack.dl_unix_errno,
- reply->error_ack.dl_error_primitive);
- } else {
- dbglog("dlpi unexpected response prim %x\n",
- reply->dl_primitive);
- }
- }
-
- return -1;
-}
-
-/*
- * Return user specified netmask, modified by any mask we might determine
- * for address `addr' (in network byte order).
- * Here we scan through the system's list of interfaces, looking for
- * any non-point-to-point interfaces which might appear to be on the same
- * network as `addr'. If we find any, we OR in their netmask to the
- * user-specified netmask.
- */
-u_int32_t
-GetMask(addr)
- u_int32_t addr;
-{
- u_int32_t mask, nmask, ina;
- struct ifreq *ifr, *ifend, ifreq;
- int nif;
- struct ifconf ifc;
-
- addr = ntohl(addr);
- if (IN_CLASSA(addr)) /* determine network mask for address class */
- nmask = IN_CLASSA_NET;
- else if (IN_CLASSB(addr))
- nmask = IN_CLASSB_NET;
- else
- nmask = IN_CLASSC_NET;
- /* class D nets are disallowed by bad_ip_adrs */
- mask = netmask | htonl(nmask);
-
- /*
- * Scan through the system's network interfaces.
- */
-#ifdef SIOCGIFNUM
- if (ioctl(ipfd, SIOCGIFNUM, &nif) < 0)
-#endif
- nif = MAX_IFS;
- ifc.ifc_len = nif * sizeof(struct ifreq);
- ifc.ifc_buf = (caddr_t) malloc(ifc.ifc_len);
- if (ifc.ifc_buf == 0)
- return mask;
- if (ioctl(ipfd, SIOCGIFCONF, &ifc) < 0) {
- warn("Couldn't get system interface list: %m");
- free(ifc.ifc_buf);
- return mask;
- }
- ifend = (struct ifreq *) (ifc.ifc_buf + ifc.ifc_len);
- for (ifr = ifc.ifc_req; ifr < ifend; ++ifr) {
- /*
- * Check the interface's internet address.
- */
- if (ifr->ifr_addr.sa_family != AF_INET)
- continue;
- ina = INET_ADDR(ifr->ifr_addr);
- if ((ntohl(ina) & nmask) != (addr & nmask))
- continue;
- /*
- * Check that the interface is up, and not point-to-point or loopback.
- */
- strlcpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
- if (ioctl(ipfd, SIOCGIFFLAGS, &ifreq) < 0)
- continue;
- if ((ifreq.ifr_flags & (IFF_UP|IFF_POINTOPOINT|IFF_LOOPBACK))
- != IFF_UP)
- continue;
- /*
- * Get its netmask and OR it into our mask.
- */
- if (ioctl(ipfd, SIOCGIFNETMASK, &ifreq) < 0)
- continue;
- mask |= INET_ADDR(ifreq.ifr_addr);
- }
-
- free(ifc.ifc_buf);
- return mask;
-}
-
-/*
- * logwtmp - write an accounting record to the /var/adm/wtmp file.
- */
-void
-logwtmp(line, name, host)
- const char *line, *name, *host;
-{
- static struct utmpx utmpx;
-
- if (name[0] != 0) {
- /* logging in */
- strncpy(utmpx.ut_user, name, sizeof(utmpx.ut_user));
- strncpy(utmpx.ut_id, ifname, sizeof(utmpx.ut_id));
- strncpy(utmpx.ut_line, line, sizeof(utmpx.ut_line));
- utmpx.ut_pid = getpid();
- utmpx.ut_type = USER_PROCESS;
- } else {
- utmpx.ut_type = DEAD_PROCESS;
- }
- gettimeofday(&utmpx.ut_tv, NULL);
- updwtmpx("/var/adm/wtmpx", &utmpx);
-}
-
-/*
- * get_host_seed - return the serial number of this machine.
- */
-int
-get_host_seed()
-{
- char buf[32];
-
- if (sysinfo(SI_HW_SERIAL, buf, sizeof(buf)) < 0) {
- error("sysinfo: %m");
- return 0;
- }
- return (int) strtoul(buf, NULL, 16);
-}
-
-static int
-strioctl(fd, cmd, ptr, ilen, olen)
- int fd, cmd, ilen, olen;
- void *ptr;
-{
- struct strioctl str;
-
- str.ic_cmd = cmd;
- str.ic_timout = 0;
- str.ic_len = ilen;
- str.ic_dp = ptr;
- if (ioctl(fd, I_STR, &str) == -1)
- return -1;
- if (str.ic_len != olen)
- dbglog("strioctl: expected %d bytes, got %d for cmd %x\n",
- olen, str.ic_len, cmd);
- return 0;
-}
-
-#if 0
-/*
- * lock - create a lock file for the named lock device
- */
-
-#define LOCK_PREFIX "/var/spool/locks/LK."
-static char lock_file[40]; /* name of lock file created */
-
-int
-lock(dev)
- char *dev;
-{
- int n, fd, pid;
- struct stat sbuf;
- char ascii_pid[12];
-
- if (stat(dev, &sbuf) < 0) {
- error("Can't get device number for %s: %m", dev);
- return -1;
- }
- if ((sbuf.st_mode & S_IFMT) != S_IFCHR) {
- error("Can't lock %s: not a character device", dev);
- return -1;
- }
- slprintf(lock_file, sizeof(lock_file), "%s%03d.%03d.%03d",
- LOCK_PREFIX, major(sbuf.st_dev),
- major(sbuf.st_rdev), minor(sbuf.st_rdev));
-
- while ((fd = open(lock_file, O_EXCL | O_CREAT | O_RDWR, 0644)) < 0) {
- if (errno == EEXIST
- && (fd = open(lock_file, O_RDONLY, 0)) >= 0) {
- /* Read the lock file to find out who has the device locked */
- n = read(fd, ascii_pid, 11);
- if (n <= 0) {
- error("Can't read pid from lock file %s", lock_file);
- close(fd);
- } else {
- ascii_pid[n] = 0;
- pid = atoi(ascii_pid);
- if (pid > 0 && kill(pid, 0) == -1 && errno == ESRCH) {
- /* pid no longer exists - remove the lock file */
- if (unlink(lock_file) == 0) {
- close(fd);
- notice("Removed stale lock on %s (pid %d)",
- dev, pid);
- continue;
- } else
- warn("Couldn't remove stale lock on %s",
- dev);
- } else
- notice("Device %s is locked by pid %d",
- dev, pid);
- }
- close(fd);
- } else
- error("Can't create lock file %s: %m", lock_file);
- lock_file[0] = 0;
- return -1;
- }
-
- slprintf(ascii_pid, sizeof(ascii_pid), "%10d\n", getpid());
- write(fd, ascii_pid, 11);
-
- close(fd);
- return 1;
-}
-
-/*
- * unlock - remove our lockfile
- */
-void
-unlock()
-{
- if (lock_file[0]) {
- unlink(lock_file);
- lock_file[0] = 0;
- }
-}
-#endif
-
-/*
- * cifroute - delete a route through the addresses given.
- */
-int
-cifroute(u, our, his)
- int u;
- u_int32_t our, his;
-{
- struct rtentry rt;
-
- memset(&rt, 0, sizeof(rt));
- rt.rt_dst.sa_family = AF_INET;
- INET_ADDR(rt.rt_dst) = his;
- rt.rt_gateway.sa_family = AF_INET;
- INET_ADDR(rt.rt_gateway) = our;
- rt.rt_flags = RTF_HOST;
-
- if (ioctl(ipfd, SIOCDELRT, &rt) < 0) {
- error("Can't delete route: %m");
- return 0;
- }
-
- return 1;
-}
-
-/*
- * have_route_to - determine if the system has a route to the specified
- * IP address. Returns 0 if not, 1 if so, -1 if we can't tell.
- * `addr' is in network byte order.
- * For demand mode to work properly, we have to ignore routes
- * through our own interface.
- */
-#ifndef T_CURRENT /* needed for Solaris 2.5 */
-#define T_CURRENT MI_T_CURRENT
-#endif
-
-int
-have_route_to(addr)
- u_int32_t addr;
-{
-#ifdef SOL2
- int fd, r, flags, i;
- struct {
- struct T_optmgmt_req req;
- struct opthdr hdr;
- } req;
- union {
- struct T_optmgmt_ack ack;
- unsigned char space[64];
- } ack;
- struct opthdr *rh;
- struct strbuf cbuf, dbuf;
- int nroutes;
- mib2_ipRouteEntry_t routes[8];
- mib2_ipRouteEntry_t *rp;
-
- fd = open(mux_dev_name, O_RDWR);
- if (fd < 0) {
- warn("have_route_to: couldn't open %s: %m", mux_dev_name);
- return -1;
- }
-
- req.req.PRIM_type = T_OPTMGMT_REQ;
- req.req.OPT_offset = (char *) &req.hdr - (char *) &req;
- req.req.OPT_length = sizeof(req.hdr);
- req.req.MGMT_flags = T_CURRENT;
-
- req.hdr.level = MIB2_IP;
- req.hdr.name = 0;
- req.hdr.len = 0;
-
- cbuf.buf = (char *) &req;
- cbuf.len = sizeof(req);
-
- if (putmsg(fd, &cbuf, NULL, 0) == -1) {
- warn("have_route_to: putmsg: %m");
- close(fd);
- return -1;
- }
-
- for (;;) {
- cbuf.buf = (char *) &ack;
- cbuf.maxlen = sizeof(ack);
- dbuf.buf = (char *) routes;
- dbuf.maxlen = sizeof(routes);
- flags = 0;
- r = getmsg(fd, &cbuf, &dbuf, &flags);
- if (r == -1) {
- warn("have_route_to: getmsg: %m");
- close(fd);
- return -1;
- }
-
- if (cbuf.len < sizeof(struct T_optmgmt_ack)
- || ack.ack.PRIM_type != T_OPTMGMT_ACK
- || ack.ack.MGMT_flags != T_SUCCESS
- || ack.ack.OPT_length < sizeof(struct opthdr)) {
- dbglog("have_route_to: bad message len=%d prim=%d",
- cbuf.len, ack.ack.PRIM_type);
- close(fd);
- return -1;
- }
-
- rh = (struct opthdr *) ((char *)&ack + ack.ack.OPT_offset);
- if (rh->level == 0 && rh->name == 0)
- break;
- if (rh->level != MIB2_IP || rh->name != MIB2_IP_21) {
- while (r == MOREDATA)
- r = getmsg(fd, NULL, &dbuf, &flags);
- continue;
- }
-
- for (;;) {
- nroutes = dbuf.len / sizeof(mib2_ipRouteEntry_t);
- for (rp = routes, i = 0; i < nroutes; ++i, ++rp) {
- if (rp->ipRouteMask != ~0) {
- dbglog("have_route_to: dest=%x gw=%x mask=%x\n",
- rp->ipRouteDest, rp->ipRouteNextHop,
- rp->ipRouteMask);
- if (((addr ^ rp->ipRouteDest) & rp->ipRouteMask) == 0
- && rp->ipRouteNextHop != remote_addr)
- return 1;
- }
- }
- if (r == 0)
- break;
- r = getmsg(fd, NULL, &dbuf, &flags);
- }
- }
- close(fd);
- return 0;
-#else
- return -1;
-#endif /* SOL2 */
-}
-
-/*
- * get_pty - get a pty master/slave pair and chown the slave side to
- * the uid given. Assumes slave_name points to MAXPATHLEN bytes of space.
- */
-int
-get_pty(master_fdp, slave_fdp, slave_name, uid)
- int *master_fdp;
- int *slave_fdp;
- char *slave_name;
- int uid;
-{
- int mfd, sfd;
- char *pty_name;
- struct termios tios;
-
- mfd = open("/dev/ptmx", O_RDWR);
- if (mfd < 0) {
- error("Couldn't open pty master: %m");
- return 0;
- }
-
- pty_name = ptsname(mfd);
- if (pty_name == NULL) {
- error("Couldn't get name of pty slave");
- close(mfd);
- return 0;
- }
- if (chown(pty_name, uid, -1) < 0)
- warn("Couldn't change owner of pty slave: %m");
- if (chmod(pty_name, S_IRUSR | S_IWUSR) < 0)
- warn("Couldn't change permissions on pty slave: %m");
- if (unlockpt(mfd) < 0)
- warn("Couldn't unlock pty slave: %m");
-
- sfd = open(pty_name, O_RDWR);
- if (sfd < 0) {
- error("Couldn't open pty slave %s: %m", pty_name);
- close(mfd);
- return 0;
- }
- if (ioctl(sfd, I_PUSH, "ptem") < 0)
- warn("Couldn't push ptem module on pty slave: %m");
-
- dbglog("Using %s", pty_name);
- strlcpy(slave_name, pty_name, MAXPATHLEN);
- *master_fdp = mfd;
- *slave_fdp = sfd;
-
- return 1;
-}
diff --git a/mdk-stage1/ppp/pppd/sys-sunos4.c b/mdk-stage1/ppp/pppd/sys-sunos4.c
deleted file mode 100644
index 3344948e9..000000000
--- a/mdk-stage1/ppp/pppd/sys-sunos4.c
+++ /dev/null
@@ -1,1559 +0,0 @@
-/*
- * System-dependent procedures for pppd under SunOS 4.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- */
-
-#define RCSID "$Id$"
-
-#include <stdio.h>
-#include <stddef.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <termios.h>
-#include <signal.h>
-#include <malloc.h>
-#include <utmp.h>
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/socket.h>
-#include <sys/sockio.h>
-#include <sys/stream.h>
-#include <sys/stropts.h>
-#include <sys/stat.h>
-#include <sys/time.h>
-#include <sys/poll.h>
-#include <net/if.h>
-#include <net/if_arp.h>
-#include <net/nit_if.h>
-#include <net/route.h>
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-#include <netinet/in.h>
-
-#include "pppd.h"
-
-#if defined(sun) && defined(sparc)
-#include <alloca.h>
-#ifndef __GNUC__
-extern void *alloca();
-#endif
-#endif /*sparc*/
-
-static const char rcsid[] = RCSID;
-
-static int pppfd;
-static int fdmuxid = -1;
-static int iffd;
-static int sockfd;
-
-static int restore_term;
-static struct termios inittermios;
-static struct winsize wsinfo; /* Initial window size info */
-static pid_t parent_pid; /* PID of our parent */
-
-extern u_char inpacket_buf[]; /* borrowed from main.c */
-
-#define MAX_POLLFDS 32
-static struct pollfd pollfds[MAX_POLLFDS];
-static int n_pollfds;
-
-static int link_mtu, link_mru;
-
-#define NMODULES 32
-static int tty_nmodules;
-static char tty_modules[NMODULES][FMNAMESZ+1];
-
-static int if_is_up; /* Interface has been marked up */
-static u_int32_t ifaddrs[2]; /* local and remote addresses */
-static u_int32_t default_route_gateway; /* Gateway for default route added */
-static u_int32_t proxy_arp_addr; /* Addr for proxy arp entry added */
-
-/* Prototypes for procedures local to this file. */
-static int translate_speed __P((int));
-static int baud_rate_of __P((int));
-static int get_ether_addr __P((u_int32_t, struct sockaddr *));
-static int strioctl __P((int, int, void *, int, int));
-
-
-/*
- * sys_init - System-dependent initialization.
- */
-void
-sys_init()
-{
- int x;
-
- /* Get an internet socket for doing socket ioctl's on. */
- if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) < 0)
- fatal("Couldn't create IP socket: %m");
-
- /*
- * We may want to send a SIGHUP to the session leader associated
- * with our controlling terminal later. Because SunOS doesn't
- * have getsid(), we make do with sending the signal to our
- * parent process.
- */
- parent_pid = getppid();
-
- /*
- * Open the ppp device.
- */
- pppfd = open("/dev/ppp", O_RDWR | O_NONBLOCK, 0);
- if (pppfd < 0)
- fatal("Can't open /dev/ppp: %m");
- if (kdebugflag) {
- x = PPPDBG_LOG + PPPDBG_DRIVER;
- strioctl(pppfd, PPPIO_DEBUG, &x, sizeof(int), 0);
- }
-
- /* Assign a new PPA and get its unit number. */
- if (strioctl(pppfd, PPPIO_NEWPPA, &ifunit, 0, sizeof(int)) < 0)
- fatal("Can't create new PPP interface: %m");
-
- /*
- * Open the ppp device again and push the if_ppp module on it.
- */
- iffd = open("/dev/ppp", O_RDWR, 0);
- if (iffd < 0)
- fatal("Can't open /dev/ppp (2): %m");
- if (kdebugflag) {
- x = PPPDBG_LOG + PPPDBG_DRIVER;
- strioctl(iffd, PPPIO_DEBUG, &x, sizeof(int), 0);
- }
- if (strioctl(iffd, PPPIO_ATTACH, &ifunit, sizeof(int), 0) < 0)
- fatal("Couldn't attach ppp interface to device: %m");
- if (ioctl(iffd, I_PUSH, "if_ppp") < 0)
- fatal("Can't push ppp interface module: %m");
- if (kdebugflag) {
- x = PPPDBG_LOG + PPPDBG_IF;
- strioctl(iffd, PPPIO_DEBUG, &x, sizeof(int), 0);
- }
- if (strioctl(iffd, PPPIO_NEWPPA, &ifunit, sizeof(int), 0) < 0)
- fatal("Couldn't create ppp interface unit: %m");
- x = PPP_IP;
- if (strioctl(iffd, PPPIO_BIND, &x, sizeof(int), 0) < 0)
- fatal("Couldn't bind ppp interface to IP SAP: %m");
-
- n_pollfds = 0;
-}
-
-/*
- * sys_cleanup - restore any system state we modified before exiting:
- * mark the interface down, delete default route and/or proxy arp entry.
- * This shouldn't call die() because it's called from die().
- */
-void
-sys_cleanup()
-{
- if (if_is_up)
- sifdown(0);
- if (ifaddrs[0])
- cifaddr(0, ifaddrs[0], ifaddrs[1]);
- if (default_route_gateway)
- cifdefaultroute(0, 0, default_route_gateway);
- if (proxy_arp_addr)
- cifproxyarp(0, proxy_arp_addr);
-}
-
-/*
- * sys_close - Clean up in a child process before execing.
- */
-void
-sys_close()
-{
- close(iffd);
- close(pppfd);
- close(sockfd);
-}
-
-/*
- * sys_check_options - check the options that the user specified
- */
-int
-sys_check_options()
-{
- return 1;
-}
-
-#if 0
-/*
- * daemon - Detach us from controlling terminal session.
- */
-int
-daemon(nochdir, noclose)
- int nochdir, noclose;
-{
- int pid;
-
- if ((pid = fork()) < 0)
- return -1;
- if (pid != 0)
- exit(0); /* parent dies */
- setsid();
- if (!nochdir)
- chdir("/");
- if (!noclose) {
- fclose(stdin); /* don't need stdin, stdout, stderr */
- fclose(stdout);
- fclose(stderr);
- }
- return 0;
-}
-#endif
-
-/*
- * ppp_available - check whether the system has any ppp interfaces
- */
-int
-ppp_available()
-{
- struct stat buf;
-
- return stat("/dev/ppp", &buf) >= 0;
-}
-
-/*
- * tty_establish_ppp - Turn the serial port into a ppp interface.
- */
-int
-tty_establish_ppp(fd)
- int fd;
-{
- int i;
-
- /* Pop any existing modules off the tty stream. */
- for (i = 0;; ++i)
- if (ioctl(fd, I_LOOK, tty_modules[i]) < 0
- || ioctl(fd, I_POP, 0) < 0)
- break;
- tty_nmodules = i;
-
- /* Push the async hdlc module and the compressor module. */
- if (ioctl(fd, I_PUSH, "ppp_ahdl") < 0)
- fatal("Couldn't push PPP Async HDLC module: %m");
- if (ioctl(fd, I_PUSH, "ppp_comp") < 0)
- error("Couldn't push PPP compression module: %m");
-
- /* Link the serial port under the PPP multiplexor. */
- if ((fdmuxid = ioctl(pppfd, I_LINK, fd)) < 0)
- fatal("Can't link tty to PPP mux: %m");
-
- return pppfd;
-}
-
-/*
- * disestablish_ppp - Restore the serial port to normal operation.
- * It attempts to reconstruct the stream with the previously popped
- * modules. This shouldn't call die() because it's called from die().
- */
-void
-tty_disestablish_ppp(fd)
- int fd;
-{
- int i;
-
- if (fdmuxid >= 0) {
- if (ioctl(pppfd, I_UNLINK, fdmuxid) < 0) {
- if (!hungup)
- error("Can't unlink tty from PPP mux: %m");
- }
- fdmuxid = -1;
-
- if (!hungup) {
- while (ioctl(fd, I_POP, 0) >= 0)
- ;
- for (i = tty_nmodules - 1; i >= 0; --i)
- if (ioctl(fd, I_PUSH, tty_modules[i]) < 0)
- error("Couldn't restore tty module %s: %m",
- tty_modules[i]);
- }
- if (hungup && default_device && parent_pid > 0) {
- /*
- * If we have received a hangup, we need to send a SIGHUP
- * to the terminal's controlling process. The reason is
- * that the original stream head for the terminal hasn't
- * seen the M_HANGUP message (it went up through the ppp
- * driver to the stream head for our fd to /dev/ppp).
- * Actually we send the signal to the process that invoked
- * pppd, since SunOS doesn't have getsid().
- */
- kill(parent_pid, SIGHUP);
- }
- }
-}
-
-/*
- * Check whether the link seems not to be 8-bit clean.
- */
-void
-clean_check()
-{
- int x;
- char *s;
-
- if (strioctl(pppfd, PPPIO_GCLEAN, &x, 0, sizeof(x)) < 0)
- return;
- s = NULL;
- switch (~x) {
- case RCV_B7_0:
- s = "bit 7 set to 1";
- break;
- case RCV_B7_1:
- s = "bit 7 set to 0";
- break;
- case RCV_EVNP:
- s = "odd parity";
- break;
- case RCV_ODDP:
- s = "even parity";
- break;
- }
- if (s != NULL) {
- warn("Serial link is not 8-bit clean:");
- warn("All received characters had %s", s);
- }
-}
-
-/*
- * List of valid speeds.
- */
-struct speed {
- int speed_int, speed_val;
-} speeds[] = {
-#ifdef B50
- { 50, B50 },
-#endif
-#ifdef B75
- { 75, B75 },
-#endif
-#ifdef B110
- { 110, B110 },
-#endif
-#ifdef B134
- { 134, B134 },
-#endif
-#ifdef B150
- { 150, B150 },
-#endif
-#ifdef B200
- { 200, B200 },
-#endif
-#ifdef B300
- { 300, B300 },
-#endif
-#ifdef B600
- { 600, B600 },
-#endif
-#ifdef B1200
- { 1200, B1200 },
-#endif
-#ifdef B1800
- { 1800, B1800 },
-#endif
-#ifdef B2000
- { 2000, B2000 },
-#endif
-#ifdef B2400
- { 2400, B2400 },
-#endif
-#ifdef B3600
- { 3600, B3600 },
-#endif
-#ifdef B4800
- { 4800, B4800 },
-#endif
-#ifdef B7200
- { 7200, B7200 },
-#endif
-#ifdef B9600
- { 9600, B9600 },
-#endif
-#ifdef B19200
- { 19200, B19200 },
-#endif
-#ifdef B38400
- { 38400, B38400 },
-#endif
-#ifdef EXTA
- { 19200, EXTA },
-#endif
-#ifdef EXTB
- { 38400, EXTB },
-#endif
-#ifdef B57600
- { 57600, B57600 },
-#endif
-#ifdef B115200
- { 115200, B115200 },
-#endif
- { 0, 0 }
-};
-
-/*
- * Translate from bits/second to a speed_t.
- */
-static int
-translate_speed(bps)
- int bps;
-{
- struct speed *speedp;
-
- if (bps == 0)
- return 0;
- for (speedp = speeds; speedp->speed_int; speedp++)
- if (bps == speedp->speed_int)
- return speedp->speed_val;
- warn("speed %d not supported", bps);
- return 0;
-}
-
-/*
- * Translate from a speed_t to bits/second.
- */
-static int
-baud_rate_of(speed)
- int speed;
-{
- struct speed *speedp;
-
- if (speed == 0)
- return 0;
- for (speedp = speeds; speedp->speed_int; speedp++)
- if (speed == speedp->speed_val)
- return speedp->speed_int;
- return 0;
-}
-
-/*
- * set_up_tty: Set up the serial port on `fd' for 8 bits, no parity,
- * at the requested speed, etc. If `local' is true, set CLOCAL
- * regardless of whether the modem option was specified.
- */
-void
-set_up_tty(fd, local)
- int fd, local;
-{
- int speed;
- struct termios tios;
-
- if (tcgetattr(fd, &tios) < 0)
- fatal("tcgetattr: %m");
-
- if (!restore_term) {
- inittermios = tios;
- ioctl(fd, TIOCGWINSZ, &wsinfo);
- }
-
- tios.c_cflag &= ~(CSIZE | CSTOPB | PARENB | CLOCAL);
- if (crtscts > 0)
- tios.c_cflag |= CRTSCTS;
- else if (crtscts < 0)
- tios.c_cflag &= ~CRTSCTS;
-
- tios.c_cflag |= CS8 | CREAD | HUPCL;
- if (local || !modem)
- tios.c_cflag |= CLOCAL;
- tios.c_iflag = IGNBRK | IGNPAR;
- tios.c_oflag = 0;
- tios.c_lflag = 0;
- tios.c_cc[VMIN] = 1;
- tios.c_cc[VTIME] = 0;
-
- if (crtscts == -2) {
- tios.c_iflag |= IXON | IXOFF;
- tios.c_cc[VSTOP] = 0x13; /* DC3 = XOFF = ^S */
- tios.c_cc[VSTART] = 0x11; /* DC1 = XON = ^Q */
- }
-
- speed = translate_speed(inspeed);
- if (speed) {
- cfsetospeed(&tios, speed);
- cfsetispeed(&tios, speed);
- } else {
- speed = cfgetospeed(&tios);
- /*
- * We can't proceed if the serial port speed is 0,
- * since that implies that the serial port is disabled.
- */
- if (speed == B0)
- fatal("Baud rate for %s is 0; need explicit baud rate", devnam);
- }
-
- if (tcsetattr(fd, TCSAFLUSH, &tios) < 0)
- fatal("tcsetattr: %m");
-
- baud_rate = inspeed = baud_rate_of(speed);
- restore_term = 1;
-}
-
-/*
- * restore_tty - restore the terminal to the saved settings.
- */
-void
-restore_tty(fd)
- int fd;
-{
- if (restore_term) {
- if (!default_device) {
- /*
- * Turn off echoing, because otherwise we can get into
- * a loop with the tty and the modem echoing to each other.
- * We presume we are the sole user of this tty device, so
- * when we close it, it will revert to its defaults anyway.
- */
- inittermios.c_lflag &= ~(ECHO | ECHONL);
- }
- if (tcsetattr(fd, TCSAFLUSH, &inittermios) < 0)
- if (!hungup && errno != ENXIO)
- warn("tcsetattr: %m");
- ioctl(fd, TIOCSWINSZ, &wsinfo);
- restore_term = 0;
- }
-}
-
-/*
- * setdtr - control the DTR line on the serial port.
- * This is called from die(), so it shouldn't call die().
- */
-void
-setdtr(fd, on)
-int fd, on;
-{
- int modembits = TIOCM_DTR;
-
- ioctl(fd, (on? TIOCMBIS: TIOCMBIC), &modembits);
-}
-
-/*
- * open_loopback - open the device we use for getting packets
- * in demand mode. Under SunOS, we use our existing fd
- * to the ppp driver.
- */
-int
-open_ppp_loopback()
-{
- return pppfd;
-}
-
-/*
- * output - Output PPP packet.
- */
-void
-output(unit, p, len)
- int unit;
- u_char *p;
- int len;
-{
- struct strbuf data;
- int retries;
- struct pollfd pfd;
-
- if (debug)
- dbglog("sent %P", p, len);
-
- data.len = len;
- data.buf = (caddr_t) p;
- retries = 4;
- while (putmsg(pppfd, NULL, &data, 0) < 0) {
- if (--retries < 0 || (errno != EWOULDBLOCK && errno != EAGAIN)) {
- if (errno != ENXIO)
- error("Couldn't send packet: %m");
- break;
- }
- pfd.fd = pppfd;
- pfd.events = POLLOUT;
- poll(&pfd, 1, 250); /* wait for up to 0.25 seconds */
- }
-}
-
-
-/*
- * wait_input - wait until there is data available,
- * for the length of time specified by *timo (indefinite
- * if timo is NULL).
- */
-void
-wait_input(timo)
- struct timeval *timo;
-{
- int t;
-
- t = timo == NULL? -1: timo->tv_sec * 1000 + timo->tv_usec / 1000;
- if (poll(pollfds, n_pollfds, t) < 0 && errno != EINTR) {
- if (errno != EAGAIN)
- fatal("poll: %m");
- /* we can get EAGAIN on a heavily loaded system,
- * just wait a short time and try again. */
- usleep(50000);
- }
-}
-
-/*
- * add_fd - add an fd to the set that wait_input waits for.
- */
-void add_fd(fd)
- int fd;
-{
- int n;
-
- for (n = 0; n < n_pollfds; ++n)
- if (pollfds[n].fd == fd)
- return;
- if (n_pollfds < MAX_POLLFDS) {
- pollfds[n_pollfds].fd = fd;
- pollfds[n_pollfds].events = POLLIN | POLLPRI | POLLHUP;
- ++n_pollfds;
- } else
- error("Too many inputs!");
-}
-
-/*
- * remove_fd - remove an fd from the set that wait_input waits for.
- */
-void remove_fd(fd)
- int fd;
-{
- int n;
-
- for (n = 0; n < n_pollfds; ++n) {
- if (pollfds[n].fd == fd) {
- while (++n < n_pollfds)
- pollfds[n-1] = pollfds[n];
- --n_pollfds;
- break;
- }
- }
-}
-
-#if 0
-/*
- * wait_loop_output - wait until there is data available on the
- * loopback, for the length of time specified by *timo (indefinite
- * if timo is NULL).
- */
-void
-wait_loop_output(timo)
- struct timeval *timo;
-{
- wait_input(timo);
-}
-
-/*
- * wait_time - wait for a given length of time or until a
- * signal is received.
- */
-void
-wait_time(timo)
- struct timeval *timo;
-{
- int n;
-
- n = select(0, NULL, NULL, NULL, timo);
- if (n < 0 && errno != EINTR)
- fatal("select: %m");
-}
-#endif
-
-/*
- * read_packet - get a PPP packet from the serial device.
- */
-int
-read_packet(buf)
- u_char *buf;
-{
- struct strbuf ctrl, data;
- int flags, len;
- unsigned char ctrlbuf[64];
-
- for (;;) {
- data.maxlen = PPP_MRU + PPP_HDRLEN;
- data.buf = (caddr_t) buf;
- ctrl.maxlen = sizeof(ctrlbuf);
- ctrl.buf = (caddr_t) ctrlbuf;
- flags = 0;
- len = getmsg(pppfd, &ctrl, &data, &flags);
- if (len < 0) {
- if (errno == EAGAIN || errno == EINTR)
- return -1;
- fatal("Error reading packet: %m");
- }
-
- if (ctrl.len <= 0)
- return data.len;
-
- /*
- * Got a M_PROTO or M_PCPROTO message. Huh?
- */
- if (debug)
- dbglog("got ctrl msg len=%d", ctrl.len);
-
- }
-}
-
-/*
- * get_loop_output - get outgoing packets from the ppp device,
- * and detect when we want to bring the real link up.
- * Return value is 1 if we need to bring up the link, 0 otherwise.
- */
-int
-get_loop_output()
-{
- int len;
- int rv = 0;
-
- while ((len = read_packet(inpacket_buf)) > 0) {
- if (loop_frame(inpacket_buf, len))
- rv = 1;
- }
- return rv;
-}
-
-/*
- * ppp_send_config - configure the transmit characteristics of
- * the ppp interface.
- */
-void
-ppp_send_config(unit, mtu, asyncmap, pcomp, accomp)
- int unit, mtu;
- u_int32_t asyncmap;
- int pcomp, accomp;
-{
- int cf[2];
- struct ifreq ifr;
-
- link_mtu = mtu;
- if (strioctl(pppfd, PPPIO_MTU, &mtu, sizeof(mtu), 0) < 0) {
- if (hungup && errno == ENXIO)
- return;
- error("Couldn't set MTU: %m");
- }
- if (strioctl(pppfd, PPPIO_XACCM, &asyncmap, sizeof(asyncmap), 0) < 0) {
- error("Couldn't set transmit ACCM: %m");
- }
- cf[0] = (pcomp? COMP_PROT: 0) + (accomp? COMP_AC: 0);
- cf[1] = COMP_PROT | COMP_AC;
- if (strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- error("Couldn't set prot/AC compression: %m");
- }
-
- /* set mtu for ip as well */
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- ifr.ifr_metric = link_mtu;
- if (ioctl(sockfd, SIOCSIFMTU, &ifr) < 0) {
- error("Couldn't set IP MTU: %m");
- }
-}
-
-/*
- * ppp_set_xaccm - set the extended transmit ACCM for the interface.
- */
-void
-ppp_set_xaccm(unit, accm)
- int unit;
- ext_accm accm;
-{
- if (strioctl(pppfd, PPPIO_XACCM, accm, sizeof(ext_accm), 0) < 0) {
- if (!hungup || errno != ENXIO)
- warn("Couldn't set extended ACCM: %m");
- }
-}
-
-/*
- * ppp_recv_config - configure the receive-side characteristics of
- * the ppp interface.
- */
-void
-ppp_recv_config(unit, mru, asyncmap, pcomp, accomp)
- int unit, mru;
- u_int32_t asyncmap;
- int pcomp, accomp;
-{
- int cf[2];
-
- link_mru = mru;
- if (strioctl(pppfd, PPPIO_MRU, &mru, sizeof(mru), 0) < 0) {
- if (hungup && errno == ENXIO)
- return;
- error("Couldn't set MRU: %m");
- }
- if (strioctl(pppfd, PPPIO_RACCM, &asyncmap, sizeof(asyncmap), 0) < 0) {
- error("Couldn't set receive ACCM: %m");
- }
- cf[0] = (pcomp? DECOMP_PROT: 0) + (accomp? DECOMP_AC: 0);
- cf[1] = DECOMP_PROT | DECOMP_AC;
- if (strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- error("Couldn't set prot/AC decompression: %m");
- }
-}
-
-/*
- * ccp_test - ask kernel whether a given compression method
- * is acceptable for use.
- */
-int
-ccp_test(unit, opt_ptr, opt_len, for_transmit)
- int unit, opt_len, for_transmit;
- u_char *opt_ptr;
-{
- if (strioctl(pppfd, (for_transmit? PPPIO_XCOMP: PPPIO_RCOMP),
- opt_ptr, opt_len, 0) >= 0)
- return 1;
- return (errno == ENOSR)? 0: -1;
-}
-
-/*
- * ccp_flags_set - inform kernel about the current state of CCP.
- */
-void
-ccp_flags_set(unit, isopen, isup)
- int unit, isopen, isup;
-{
- int cf[2];
-
- cf[0] = (isopen? CCP_ISOPEN: 0) + (isup? CCP_ISUP: 0);
- cf[1] = CCP_ISOPEN | CCP_ISUP | CCP_ERROR | CCP_FATALERROR;
- if (strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- if (!hungup || errno != ENXIO)
- error("Couldn't set kernel CCP state: %m");
- }
-}
-
-/*
- * get_idle_time - return how long the link has been idle.
- */
-int
-get_idle_time(u, ip)
- int u;
- struct ppp_idle *ip;
-{
- return strioctl(pppfd, PPPIO_GIDLE, ip, 0, sizeof(struct ppp_idle)) >= 0;
-}
-
-/*
- * get_ppp_stats - return statistics for the link.
- */
-int
-get_ppp_stats(u, stats)
- int u;
- struct pppd_stats *stats;
-{
- struct ppp_stats s;
-
- if (strioctl(pppfd, PPPIO_GETSTAT, &s, 0, sizeof(s)) < 0) {
- error("Couldn't get link statistics: %m");
- return 0;
- }
- stats->bytes_in = s.p.ppp_ibytes;
- stats->bytes_out = s.p.ppp_obytes;
- return 1;
-}
-
-
-/*
- * ccp_fatal_error - returns 1 if decompression was disabled as a
- * result of an error detected after decompression of a packet,
- * 0 otherwise. This is necessary because of patent nonsense.
- */
-int
-ccp_fatal_error(unit)
- int unit;
-{
- int cf[2];
-
- cf[0] = cf[1] = 0;
- if (strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- if (errno != ENXIO && errno != EINVAL)
- error("Couldn't get compression flags: %m");
- return 0;
- }
- return cf[0] & CCP_FATALERROR;
-}
-
-/*
- * sifvjcomp - config tcp header compression
- */
-int
-sifvjcomp(u, vjcomp, xcidcomp, xmaxcid)
- int u, vjcomp, xcidcomp, xmaxcid;
-{
- int cf[2];
- char maxcid[2];
-
- if (vjcomp) {
- maxcid[0] = xcidcomp;
- maxcid[1] = 15; /* XXX should be rmaxcid */
- if (strioctl(pppfd, PPPIO_VJINIT, maxcid, sizeof(maxcid), 0) < 0) {
- error("Couldn't initialize VJ compression: %m");
- }
- }
-
- cf[0] = (vjcomp? COMP_VJC + DECOMP_VJC: 0) /* XXX this is wrong */
- + (xcidcomp? COMP_VJCCID + DECOMP_VJCCID: 0);
- cf[1] = COMP_VJC + DECOMP_VJC + COMP_VJCCID + DECOMP_VJCCID;
- if (strioctl(pppfd, PPPIO_CFLAGS, cf, sizeof(cf), sizeof(int)) < 0) {
- if (vjcomp)
- error("Couldn't enable VJ compression: %m");
- }
-
- return 1;
-}
-
-/*
- * sifup - Config the interface up and enable IP packets to pass.
- */
-int
-sifup(u)
- int u;
-{
- struct ifreq ifr;
-
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(sockfd, SIOCGIFFLAGS, &ifr) < 0) {
- error("Couldn't mark interface up (get): %m");
- return 0;
- }
- ifr.ifr_flags |= IFF_UP;
- if (ioctl(sockfd, SIOCSIFFLAGS, &ifr) < 0) {
- error("Couldn't mark interface up (set): %m");
- return 0;
- }
- if_is_up = 1;
- return 1;
-}
-
-/*
- * sifdown - Config the interface down and disable IP.
- */
-int
-sifdown(u)
- int u;
-{
- struct ifreq ifr;
-
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(sockfd, SIOCGIFFLAGS, &ifr) < 0) {
- error("Couldn't mark interface down (get): %m");
- return 0;
- }
- if ((ifr.ifr_flags & IFF_UP) != 0) {
- ifr.ifr_flags &= ~IFF_UP;
- if (ioctl(sockfd, SIOCSIFFLAGS, &ifr) < 0) {
- error("Couldn't mark interface down (set): %m");
- return 0;
- }
- }
- if_is_up = 0;
- return 1;
-}
-
-/*
- * sifnpmode - Set the mode for handling packets for a given NP.
- */
-int
-sifnpmode(u, proto, mode)
- int u;
- int proto;
- enum NPmode mode;
-{
- int npi[2];
-
- npi[0] = proto;
- npi[1] = (int) mode;
- if (strioctl(pppfd, PPPIO_NPMODE, npi, 2 * sizeof(int), 0) < 0) {
- error("ioctl(set NP %d mode to %d): %m", proto, mode);
- return 0;
- }
- return 1;
-}
-
-#define INET_ADDR(x) (((struct sockaddr_in *) &(x))->sin_addr.s_addr)
-
-/*
- * sifaddr - Config the interface IP addresses and netmask.
- */
-int
-sifaddr(u, o, h, m)
- int u;
- u_int32_t o, h, m;
-{
- struct ifreq ifr;
-
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- ifr.ifr_addr.sa_family = AF_INET;
- INET_ADDR(ifr.ifr_addr) = m;
- if (ioctl(sockfd, SIOCSIFNETMASK, &ifr) < 0) {
- error("Couldn't set IP netmask: %m");
- }
- ifr.ifr_addr.sa_family = AF_INET;
- INET_ADDR(ifr.ifr_addr) = o;
- if (ioctl(sockfd, SIOCSIFADDR, &ifr) < 0) {
- error("Couldn't set local IP address: %m");
- }
- ifr.ifr_dstaddr.sa_family = AF_INET;
- INET_ADDR(ifr.ifr_dstaddr) = h;
- if (ioctl(sockfd, SIOCSIFDSTADDR, &ifr) < 0) {
- error("Couldn't set remote IP address: %m");
- }
-#if 0 /* now done in ppp_send_config */
- ifr.ifr_metric = link_mtu;
- if (ioctl(sockfd, SIOCSIFMTU, &ifr) < 0) {
- error("Couldn't set IP MTU: %m");
- }
-#endif
- ifaddrs[0] = o;
- ifaddrs[1] = h;
-
- return 1;
-}
-
-/*
- * cifaddr - Clear the interface IP addresses, and delete routes
- * through the interface if possible.
- */
-int
-cifaddr(u, o, h)
- int u;
- u_int32_t o, h;
-{
- struct rtentry rt;
-
- bzero(&rt, sizeof(rt));
- rt.rt_dst.sa_family = AF_INET;
- INET_ADDR(rt.rt_dst) = h;
- rt.rt_gateway.sa_family = AF_INET;
- INET_ADDR(rt.rt_gateway) = o;
- rt.rt_flags = RTF_HOST;
- if (ioctl(sockfd, SIOCDELRT, &rt) < 0)
- error("Couldn't delete route through interface: %m");
- ifaddrs[0] = 0;
- return 1;
-}
-
-/*
- * sifdefaultroute - assign a default route through the address given.
- */
-int
-sifdefaultroute(u, l, g)
- int u;
- u_int32_t l, g;
-{
- struct rtentry rt;
-
- bzero(&rt, sizeof(rt));
- rt.rt_dst.sa_family = AF_INET;
- INET_ADDR(rt.rt_dst) = 0;
- rt.rt_gateway.sa_family = AF_INET;
- INET_ADDR(rt.rt_gateway) = g;
- rt.rt_flags = RTF_GATEWAY;
-
- if (ioctl(sockfd, SIOCADDRT, &rt) < 0) {
- error("Can't add default route: %m");
- return 0;
- }
-
- default_route_gateway = g;
- return 1;
-}
-
-/*
- * cifdefaultroute - delete a default route through the address given.
- */
-int
-cifdefaultroute(u, l, g)
- int u;
- u_int32_t l, g;
-{
- struct rtentry rt;
-
- bzero(&rt, sizeof(rt));
- rt.rt_dst.sa_family = AF_INET;
- INET_ADDR(rt.rt_dst) = 0;
- rt.rt_gateway.sa_family = AF_INET;
- INET_ADDR(rt.rt_gateway) = g;
- rt.rt_flags = RTF_GATEWAY;
-
- if (ioctl(sockfd, SIOCDELRT, &rt) < 0) {
- error("Can't delete default route: %m");
- return 0;
- }
-
- default_route_gateway = 0;
- return 1;
-}
-
-/*
- * sifproxyarp - Make a proxy ARP entry for the peer.
- */
-int
-sifproxyarp(unit, hisaddr)
- int unit;
- u_int32_t hisaddr;
-{
- struct arpreq arpreq;
-
- bzero(&arpreq, sizeof(arpreq));
- if (!get_ether_addr(hisaddr, &arpreq.arp_ha))
- return 0;
-
- arpreq.arp_pa.sa_family = AF_INET;
- INET_ADDR(arpreq.arp_pa) = hisaddr;
- arpreq.arp_flags = ATF_PERM | ATF_PUBL;
- if (ioctl(sockfd, SIOCSARP, (caddr_t) &arpreq) < 0) {
- error("Couldn't set proxy ARP entry: %m");
- return 0;
- }
-
- proxy_arp_addr = hisaddr;
- return 1;
-}
-
-/*
- * cifproxyarp - Delete the proxy ARP entry for the peer.
- */
-int
-cifproxyarp(unit, hisaddr)
- int unit;
- u_int32_t hisaddr;
-{
- struct arpreq arpreq;
-
- bzero(&arpreq, sizeof(arpreq));
- arpreq.arp_pa.sa_family = AF_INET;
- INET_ADDR(arpreq.arp_pa) = hisaddr;
- if (ioctl(sockfd, SIOCDARP, (caddr_t)&arpreq) < 0) {
- error("Couldn't delete proxy ARP entry: %m");
- return 0;
- }
-
- proxy_arp_addr = 0;
- return 1;
-}
-
-/*
- * get_ether_addr - get the hardware address of an interface on the
- * the same subnet as ipaddr.
- */
-#define MAX_IFS 32
-
-static int
-get_ether_addr(ipaddr, hwaddr)
- u_int32_t ipaddr;
- struct sockaddr *hwaddr;
-{
- struct ifreq *ifr, *ifend;
- u_int32_t ina, mask;
- struct ifreq ifreq;
- struct ifconf ifc;
- struct ifreq ifs[MAX_IFS];
- int nit_fd;
-
- ifc.ifc_len = sizeof(ifs);
- ifc.ifc_req = ifs;
- if (ioctl(sockfd, SIOCGIFCONF, &ifc) < 0) {
- error("ioctl(SIOCGIFCONF): %m");
- return 0;
- }
-
- /*
- * Scan through looking for an interface with an Internet
- * address on the same subnet as `ipaddr'.
- */
- ifend = (struct ifreq *) (ifc.ifc_buf + ifc.ifc_len);
- for (ifr = ifc.ifc_req; ifr < ifend; ifr = (struct ifreq *)
- ((char *)&ifr->ifr_addr + sizeof(struct sockaddr))) {
- if (ifr->ifr_addr.sa_family == AF_INET) {
-
- /*
- * Check that the interface is up, and not point-to-point
- * or loopback.
- */
- strlcpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
- if (ioctl(sockfd, SIOCGIFFLAGS, &ifreq) < 0)
- continue;
- if ((ifreq.ifr_flags &
- (IFF_UP|IFF_BROADCAST|IFF_POINTOPOINT|IFF_LOOPBACK|IFF_NOARP))
- != (IFF_UP|IFF_BROADCAST))
- continue;
-
- /*
- * Get its netmask and check that it's on the right subnet.
- */
- if (ioctl(sockfd, SIOCGIFNETMASK, &ifreq) < 0)
- continue;
- ina = ((struct sockaddr_in *) &ifr->ifr_addr)->sin_addr.s_addr;
- mask = ((struct sockaddr_in *) &ifreq.ifr_addr)->sin_addr.s_addr;
- if ((ipaddr & mask) != (ina & mask))
- continue;
-
- break;
- }
- }
-
- if (ifr >= ifend)
- return 0;
- info("found interface %s for proxy arp", ifr->ifr_name);
-
- /*
- * Grab the physical address for this interface.
- */
- if ((nit_fd = open("/dev/nit", O_RDONLY)) < 0) {
- error("Couldn't open /dev/nit: %m");
- return 0;
- }
- strlcpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
- if (ioctl(nit_fd, NIOCBIND, &ifreq) < 0
- || ioctl(nit_fd, SIOCGIFADDR, &ifreq) < 0) {
- error("Couldn't get hardware address for %s: %m",
- ifreq.ifr_name);
- close(nit_fd);
- return 0;
- }
-
- hwaddr->sa_family = AF_UNSPEC;
- memcpy(hwaddr->sa_data, ifreq.ifr_addr.sa_data, 6);
- close(nit_fd);
- return 1;
-}
-
-/*
- * have_route_to - determine if the system has any route to
- * a given IP address.
- * For demand mode to work properly, we have to ignore routes
- * through our own interface.
- */
-int have_route_to(addr)
- u_int32_t addr;
-{
- return -1;
-}
-
-#define WTMPFILE "/usr/adm/wtmp"
-
-void
-logwtmp(line, name, host)
- const char *line, *name, *host;
-{
- int fd;
- struct stat buf;
- struct utmp ut;
-
- if ((fd = open(WTMPFILE, O_WRONLY|O_APPEND, 0)) < 0)
- return;
- if (!fstat(fd, &buf)) {
- strncpy(ut.ut_line, line, sizeof(ut.ut_line));
- strncpy(ut.ut_name, name, sizeof(ut.ut_name));
- strncpy(ut.ut_host, host, sizeof(ut.ut_host));
- (void)time(&ut.ut_time);
- if (write(fd, (char *)&ut, sizeof(struct utmp)) != sizeof(struct utmp))
- (void)ftruncate(fd, buf.st_size);
- }
- close(fd);
-}
-
-/*
- * Return user specified netmask, modified by any mask we might determine
- * for address `addr' (in network byte order).
- * Here we scan through the system's list of interfaces, looking for
- * any non-point-to-point interfaces which might appear to be on the same
- * network as `addr'. If we find any, we OR in their netmask to the
- * user-specified netmask.
- */
-u_int32_t
-GetMask(addr)
- u_int32_t addr;
-{
- u_int32_t mask, nmask, ina;
- struct ifreq *ifr, *ifend, ifreq;
- struct ifconf ifc;
-
- addr = ntohl(addr);
- if (IN_CLASSA(addr)) /* determine network mask for address class */
- nmask = IN_CLASSA_NET;
- else if (IN_CLASSB(addr))
- nmask = IN_CLASSB_NET;
- else
- nmask = IN_CLASSC_NET;
- /* class D nets are disallowed by bad_ip_adrs */
- mask = netmask | htonl(nmask);
-
- /*
- * Scan through the system's network interfaces.
- */
- ifc.ifc_len = MAX_IFS * sizeof(struct ifreq);
- ifc.ifc_req = alloca(ifc.ifc_len);
- if (ifc.ifc_req == 0)
- return mask;
- if (ioctl(sockfd, SIOCGIFCONF, &ifc) < 0) {
- warn("Couldn't get system interface list: %m");
- return mask;
- }
- ifend = (struct ifreq *) (ifc.ifc_buf + ifc.ifc_len);
- for (ifr = ifc.ifc_req; ifr < ifend; ++ifr) {
- /*
- * Check the interface's internet address.
- */
- if (ifr->ifr_addr.sa_family != AF_INET)
- continue;
- ina = INET_ADDR(ifr->ifr_addr);
- if ((ntohl(ina) & nmask) != (addr & nmask))
- continue;
- /*
- * Check that the interface is up, and not point-to-point or loopback.
- */
- strlcpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
- if (ioctl(sockfd, SIOCGIFFLAGS, &ifreq) < 0)
- continue;
- if ((ifreq.ifr_flags & (IFF_UP|IFF_POINTOPOINT|IFF_LOOPBACK))
- != IFF_UP)
- continue;
- /*
- * Get its netmask and OR it into our mask.
- */
- if (ioctl(sockfd, SIOCGIFNETMASK, &ifreq) < 0)
- continue;
- mask |= INET_ADDR(ifreq.ifr_addr);
- }
-
- return mask;
-}
-
-static int
-strioctl(fd, cmd, ptr, ilen, olen)
- int fd, cmd, ilen, olen;
- void *ptr;
-{
- struct strioctl str;
-
- str.ic_cmd = cmd;
- str.ic_timout = 0;
- str.ic_len = ilen;
- str.ic_dp = ptr;
- if (ioctl(fd, I_STR, &str) == -1)
- return -1;
- if (str.ic_len != olen)
- dbglog("strioctl: expected %d bytes, got %d for cmd %x\n",
- olen, str.ic_len, cmd);
- return 0;
-}
-
-/*
- * Use the hostid as part of the random number seed.
- */
-int
-get_host_seed()
-{
- return gethostid();
-}
-
-#if 0
-/*
- * Code for locking/unlocking the serial device.
- * This code is derived from chat.c.
- */
-
-#if !defined(HDB) && !defined(SUNOS3)
-#define HDB 1 /* ascii lock files are the default */
-#endif
-
-#ifndef LOCK_DIR
-# if HDB
-# define PIDSTRING
-# define LOCK_PREFIX "/usr/spool/locks/LCK.."
-# else /* HDB */
-# define LOCK_PREFIX "/usr/spool/uucp/LCK.."
-# endif /* HDB */
-#endif /* LOCK_DIR */
-
-static char *lock_file; /* name of lock file created */
-
-/*
- * lock - create a lock file for the named device.
- */
-int
-lock(dev)
- char *dev;
-{
- char hdb_lock_buffer[12];
- int fd, pid, n;
- char *p;
- size_t l;
-
- if ((p = strrchr(dev, '/')) != NULL)
- dev = p + 1;
- l = strlen(LOCK_PREFIX) + strlen(dev) + 1;
- lock_file = malloc(l);
- if (lock_file == NULL)
- novm("lock file name");
- slprintf(lock_file, l, "%s%s", LOCK_PREFIX, dev);
-
- while ((fd = open(lock_file, O_EXCL | O_CREAT | O_RDWR, 0644)) < 0) {
- if (errno == EEXIST
- && (fd = open(lock_file, O_RDONLY, 0)) >= 0) {
- /* Read the lock file to find out who has the device locked */
-#ifdef PIDSTRING
- n = read(fd, hdb_lock_buffer, 11);
- if (n > 0) {
- hdb_lock_buffer[n] = 0;
- pid = atoi(hdb_lock_buffer);
- }
-#else
- n = read(fd, &pid, sizeof(pid));
-#endif
- if (n <= 0) {
- error("Can't read pid from lock file %s", lock_file);
- close(fd);
- } else {
- if (kill(pid, 0) == -1 && errno == ESRCH) {
- /* pid no longer exists - remove the lock file */
- if (unlink(lock_file) == 0) {
- close(fd);
- notice("Removed stale lock on %s (pid %d)",
- dev, pid);
- continue;
- } else
- warn("Couldn't remove stale lock on %s",
- dev);
- } else
- notice("Device %s is locked by pid %d",
- dev, pid);
- }
- close(fd);
- } else
- error("Can't create lock file %s: %m", lock_file);
- free(lock_file);
- lock_file = NULL;
- return -1;
- }
-
-#ifdef PIDSTRING
- slprintf(hdb_lock_buffer, sizeof(hdb_lock_buffer), "%10d\n", getpid());
- write(fd, hdb_lock_buffer, 11);
-#else
- pid = getpid();
- write(fd, &pid, sizeof pid);
-#endif
-
- close(fd);
- return 0;
-}
-
-/*
- * unlock - remove our lockfile
- */
-void
-unlock()
-{
- if (lock_file) {
- unlink(lock_file);
- free(lock_file);
- lock_file = NULL;
- }
-}
-#endif /* lock stuff removed */
-
-/*
- * get_pty - get a pty master/slave pair and chown the slave side
- * to the uid given. Assumes slave_name points to >= 12 bytes of space.
- */
-int
-get_pty(master_fdp, slave_fdp, slave_name, uid)
- int *master_fdp;
- int *slave_fdp;
- char *slave_name;
- int uid;
-{
- int i, mfd, sfd;
- char pty_name[12];
- struct termios tios;
-
- sfd = -1;
- for (i = 0; i < 64; ++i) {
- slprintf(pty_name, sizeof(pty_name), "/dev/pty%c%x",
- 'p' + i / 16, i % 16);
- mfd = open(pty_name, O_RDWR, 0);
- if (mfd >= 0) {
- pty_name[5] = 't';
- sfd = open(pty_name, O_RDWR | O_NOCTTY, 0);
- if (sfd >= 0)
- break;
- close(mfd);
- }
- }
- if (sfd < 0)
- return 0;
-
- strlcpy(slave_name, pty_name, 12);
- *master_fdp = mfd;
- *slave_fdp = sfd;
- fchown(sfd, uid, -1);
- fchmod(sfd, S_IRUSR | S_IWUSR);
- if (tcgetattr(sfd, &tios) == 0) {
- tios.c_cflag &= ~(CSIZE | CSTOPB | PARENB);
- tios.c_cflag |= CS8 | CREAD;
- tios.c_iflag = IGNPAR | CLOCAL;
- tios.c_oflag = 0;
- tios.c_lflag = 0;
- if (tcsetattr(sfd, TCSAFLUSH, &tios) < 0)
- warn("couldn't set attributes on pty: %m");
- } else
- warn("couldn't get attributes on pty: %m");
-
- return 1;
-}
-
-/*
- * SunOS doesn't have strtoul :-(
- */
-unsigned long
-strtoul(str, ptr, base)
- char *str, **ptr;
- int base;
-{
- return (unsigned long) strtol(str, ptr, base);
-}
-
-/*
- * Or strerror :-(
- */
-extern char *sys_errlist[];
-extern int sys_nerr;
-
-char *
-strerror(n)
- int n;
-{
- static char unknown[32];
-
- if (n > 0 && n < sys_nerr)
- return sys_errlist[n];
- slprintf(unknown, sizeof(unknown), "Error %d", n);
- return unknown;
-}
diff --git a/mdk-stage1/ppp/pppd/tdb.c b/mdk-stage1/ppp/pppd/tdb.c
deleted file mode 100644
index 7fd58291e..000000000
--- a/mdk-stage1/ppp/pppd/tdb.c
+++ /dev/null
@@ -1,1282 +0,0 @@
-/*
- * Database functions
- * Copyright (C) Andrew Tridgell 1999
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms AND provided that this software or
- * any derived work is only used as part of the PPP daemon (pppd)
- * and related utilities.
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Note: this software is also available under the Gnu Public License
- * version 2 or later.
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <string.h>
-#include <fcntl.h>
-#include <errno.h>
-#include <sys/mman.h>
-#include <sys/stat.h>
-#include "tdb.h"
-
-#define TDB_VERSION (0x26011967 + 1)
-#define TDB_MAGIC (0x26011999U)
-#define TDB_FREE_MAGIC (~TDB_MAGIC)
-#define TDB_ALIGN 4
-#define MIN_REC_SIZE (2*sizeof(struct list_struct) + TDB_ALIGN)
-#define DEFAULT_HASH_SIZE 128
-#define TDB_PAGE_SIZE 0x2000
-#define TDB_LEN_MULTIPLIER 10
-#define FREELIST_TOP (sizeof(struct tdb_header))
-
-#define LOCK_SET 1
-#define LOCK_CLEAR 0
-
-/* lock offsets */
-#define GLOBAL_LOCK 0
-#define ACTIVE_LOCK 4
-#define LIST_LOCK_BASE 1024
-
-#define BUCKET(hash) ((hash) % tdb->header.hash_size)
-
-#ifndef MAP_FILE
-#define MAP_FILE 0
-#endif
-
-/* the body of the database is made of one list_struct for the free space
- plus a separate data list for each hash value */
-struct list_struct {
- tdb_len rec_len; /* total byte length of record */
- tdb_off next; /* offset of the next record in the list */
- tdb_len key_len; /* byte length of key */
- tdb_len data_len; /* byte length of data */
- unsigned full_hash; /* the full 32 bit hash of the key */
- unsigned magic; /* try to catch errors */
- /*
- the following union is implied
- union {
- char record[rec_len];
- struct {
- char key[key_len];
- char data[data_len];
- }
- }
- */
-};
-
-/* a null data record - useful for error returns */
-static TDB_DATA null_data;
-
-/* a byte range locking function - return 0 on success
- this functions locks/unlocks 1 byte at the specified offset */
-static int tdb_brlock(TDB_CONTEXT *tdb, tdb_off offset,
- int set, int rw_type, int lck_type)
-{
-#if NOLOCK
- return 0;
-#else
- struct flock fl;
-
- if (tdb->fd == -1) return 0; /* for in memory tdb */
-
- if (tdb->read_only) return -1;
-
- fl.l_type = set==LOCK_SET?rw_type:F_UNLCK;
- fl.l_whence = SEEK_SET;
- fl.l_start = offset;
- fl.l_len = 1;
- fl.l_pid = 0;
-
- if (fcntl(tdb->fd, lck_type, &fl) != 0) {
-#if TDB_DEBUG
- if (lck_type == F_SETLKW) {
- printf("lock %d failed at %d (%s)\n",
- set, offset, strerror(errno));
- }
-#endif
- tdb->ecode = TDB_ERR_LOCK;
- return -1;
- }
- return 0;
-#endif
-}
-
-/* lock a list in the database. list -1 is the alloc list */
-static int tdb_lock(TDB_CONTEXT *tdb, int list)
-{
- if (list < -1 || list >= (int)tdb->header.hash_size) {
-#if TDB_DEBUG
- printf("bad list %d\n", list);
-#endif
- return -1;
- }
- if (tdb->locked[list+1] == 0) {
- if (tdb_brlock(tdb, LIST_LOCK_BASE + 4*list, LOCK_SET,
- F_WRLCK, F_SETLKW) != 0) {
- return -1;
- }
- }
- tdb->locked[list+1]++;
- return 0;
-}
-
-/* unlock the database. */
-static int tdb_unlock(TDB_CONTEXT *tdb, int list)
-{
- if (list < -1 || list >= (int)tdb->header.hash_size) {
-#if TDB_DEBUG
- printf("bad unlock list %d\n", list);
-#endif
- return -1;
- }
-
- if (tdb->locked[list+1] == 0) {
-#if TDB_DEBUG
- printf("not locked %d\n", list);
-#endif
- tdb->ecode = TDB_ERR_LOCK;
- return -1;
- }
- if (tdb->locked[list+1] == 1) {
- if (tdb_brlock(tdb, LIST_LOCK_BASE + 4*list, LOCK_CLEAR,
- F_WRLCK, F_SETLKW) != 0) {
- return -1;
- }
- }
- tdb->locked[list+1]--;
- return 0;
-}
-
-/* the hash algorithm - turn a key into an integer
- This is based on the hash agorithm from gdbm */
-static unsigned tdb_hash(TDB_DATA *key)
-{
- unsigned value; /* Used to compute the hash value. */
- unsigned i; /* Used to cycle through random values. */
-
- /* Set the initial value from the key size. */
- value = 0x238F13AF * key->dsize;
- for (i=0; i < key->dsize; i++) {
- value = (value + (key->dptr[i] << (i*5 % 24)));
- }
-
- value = (1103515243 * value + 12345);
-
- return value;
-}
-
-/* find the top of the hash chain for an open database */
-static tdb_off tdb_hash_top(TDB_CONTEXT *tdb, unsigned hash)
-{
- tdb_off ret;
- hash = BUCKET(hash);
- ret = FREELIST_TOP + (hash+1)*sizeof(tdb_off);
- return ret;
-}
-
-
-/* check for an out of bounds access - if it is out of bounds then
- see if the database has been expanded by someone else and expand
- if necessary */
-static int tdb_oob(TDB_CONTEXT *tdb, tdb_off offset)
-{
- struct stat st;
- if ((offset <= tdb->map_size) || (tdb->fd == -1)) return 0;
-
- fstat(tdb->fd, &st);
- if (st.st_size <= (ssize_t)offset) {
- tdb->ecode = TDB_ERR_IO;
- return -1;
- }
-
-#if HAVE_MMAP
- if (tdb->map_ptr) {
- munmap(tdb->map_ptr, tdb->map_size);
- tdb->map_ptr = NULL;
- }
-#endif
-
- tdb->map_size = st.st_size;
-#if HAVE_MMAP
- tdb->map_ptr = (void *)mmap(NULL, tdb->map_size,
- tdb->read_only?PROT_READ:PROT_READ|PROT_WRITE,
- MAP_SHARED | MAP_FILE, tdb->fd, 0);
-#endif
- return 0;
-}
-
-
-/* write a lump of data at a specified offset */
-static int tdb_write(TDB_CONTEXT *tdb, tdb_off offset, const char *buf, tdb_len len)
-{
- if (tdb_oob(tdb, offset + len) != 0) {
- /* oops - trying to write beyond the end of the database! */
- return -1;
- }
-
- if (tdb->map_ptr) {
- memcpy(offset + (char *)tdb->map_ptr, buf, len);
- } else {
- if (lseek(tdb->fd, offset, SEEK_SET) != offset ||
- write(tdb->fd, buf, len) != (ssize_t)len) {
- tdb->ecode = TDB_ERR_IO;
- return -1;
- }
- }
- return 0;
-}
-
-/* read a lump of data at a specified offset */
-static int tdb_read(TDB_CONTEXT *tdb, tdb_off offset, char *buf, tdb_len len)
-{
- if (tdb_oob(tdb, offset + len) != 0) {
- /* oops - trying to read beyond the end of the database! */
- return -1;
- }
-
- if (tdb->map_ptr) {
- memcpy(buf, offset + (char *)tdb->map_ptr, len);
- } else {
- if (lseek(tdb->fd, offset, SEEK_SET) != offset ||
- read(tdb->fd, buf, len) != (ssize_t)len) {
- tdb->ecode = TDB_ERR_IO;
- return -1;
- }
- }
- return 0;
-}
-
-
-/* read a lump of data, allocating the space for it */
-static char *tdb_alloc_read(TDB_CONTEXT *tdb, tdb_off offset, tdb_len len)
-{
- char *buf;
-
- buf = (char *)malloc(len);
-
- if (!buf) {
- tdb->ecode = TDB_ERR_OOM;
- return NULL;
- }
-
- if (tdb_read(tdb, offset, buf, len) == -1) {
- free(buf);
- return NULL;
- }
-
- return buf;
-}
-
-/* convenience routine for writing a record */
-static int rec_write(TDB_CONTEXT *tdb, tdb_off offset, struct list_struct *rec)
-{
- return tdb_write(tdb, offset, (char *)rec, sizeof(*rec));
-}
-
-/* convenience routine for writing a tdb_off */
-static int ofs_write(TDB_CONTEXT *tdb, tdb_off offset, tdb_off *d)
-{
- return tdb_write(tdb, offset, (char *)d, sizeof(*d));
-}
-
-/* read a tdb_off from the store */
-static int ofs_read(TDB_CONTEXT *tdb, tdb_off offset, tdb_off *d)
-{
- return tdb_read(tdb, offset, (char *)d, sizeof(*d));
-}
-
-/* read a record and check for simple errors */
-static int rec_read(TDB_CONTEXT *tdb, tdb_off offset, struct list_struct *rec)
-{
- if (tdb_read(tdb, offset, (char *)rec, sizeof(*rec)) == -1) return -1;
- if (rec->magic != TDB_MAGIC) {
-#if TDB_DEBUG
- printf("bad magic 0x%08x at offset %d\n",
- rec->magic, offset);
-#endif
- tdb->ecode = TDB_ERR_CORRUPT;
- return -1;
- }
- if (tdb_oob(tdb, rec->next) != 0) {
- return -1;
- }
- return 0;
-}
-
-/* expand the database at least length bytes by expanding the
- underlying file and doing the mmap again if necessary */
-static int tdb_expand(TDB_CONTEXT *tdb, tdb_off length)
-{
- struct list_struct rec;
- tdb_off offset, ptr;
- char b = 0;
-
- tdb_lock(tdb,-1);
-
- /* make sure we know about any previous expansions by another
- process */
- tdb_oob(tdb,tdb->map_size + 1);
-
- /* always make room for at least 10 more records */
- length *= TDB_LEN_MULTIPLIER;
-
- /* and round the database up to a multiple of TDB_PAGE_SIZE */
- length = ((tdb->map_size + length + TDB_PAGE_SIZE) & ~(TDB_PAGE_SIZE - 1)) - tdb->map_size;
-
- /* expand the file itself */
- if (tdb->fd != -1) {
- lseek(tdb->fd, tdb->map_size + length - 1, SEEK_SET);
- if (write(tdb->fd, &b, 1) != 1) goto fail;
- }
-
- /* form a new freelist record */
- offset = FREELIST_TOP;
- rec.rec_len = length - sizeof(rec);
- rec.magic = TDB_FREE_MAGIC;
- if (ofs_read(tdb, offset, &rec.next) == -1) {
- goto fail;
- }
-
-#if HAVE_MMAP
- if (tdb->fd != -1 && tdb->map_ptr) {
- munmap(tdb->map_ptr, tdb->map_size);
- tdb->map_ptr = NULL;
- }
-#endif
-
- tdb->map_size += length;
-
- if (tdb->fd == -1) {
- tdb->map_ptr = realloc(tdb->map_ptr, tdb->map_size);
- }
-
- /* write it out */
- if (rec_write(tdb, tdb->map_size - length, &rec) == -1) {
- goto fail;
- }
-
- /* link it into the free list */
- ptr = tdb->map_size - length;
- if (ofs_write(tdb, offset, &ptr) == -1) goto fail;
-
-#if HAVE_MMAP
- if (tdb->fd != -1) {
- tdb->map_ptr = (void *)mmap(NULL, tdb->map_size,
- PROT_READ|PROT_WRITE,
- MAP_SHARED | MAP_FILE, tdb->fd, 0);
- }
-#endif
-
- tdb_unlock(tdb, -1);
- return 0;
-
- fail:
- tdb_unlock(tdb,-1);
- return -1;
-}
-
-/* allocate some space from the free list. The offset returned points
- to a unconnected list_struct within the database with room for at
- least length bytes of total data
-
- 0 is returned if the space could not be allocated
- */
-static tdb_off tdb_allocate(TDB_CONTEXT *tdb, tdb_len length)
-{
- tdb_off offset, rec_ptr, last_ptr;
- struct list_struct rec, lastrec, newrec;
-
- tdb_lock(tdb, -1);
-
- again:
- last_ptr = 0;
- offset = FREELIST_TOP;
-
- /* read in the freelist top */
- if (ofs_read(tdb, offset, &rec_ptr) == -1) {
- goto fail;
- }
-
- /* keep looking until we find a freelist record that is big
- enough */
- while (rec_ptr) {
- if (tdb_read(tdb, rec_ptr, (char *)&rec, sizeof(rec)) == -1) {
- goto fail;
- }
-
- if (rec.magic != TDB_FREE_MAGIC) {
-#if TDB_DEBUG
- printf("bad magic 0x%08x in free list\n", rec.magic);
-#endif
- goto fail;
- }
-
- if (rec.rec_len >= length) {
- /* found it - now possibly split it up */
- if (rec.rec_len > length + MIN_REC_SIZE) {
- length = (length + TDB_ALIGN) & ~(TDB_ALIGN-1);
-
- newrec.rec_len = rec.rec_len - (sizeof(rec) + length);
- newrec.next = rec.next;
- newrec.magic = TDB_FREE_MAGIC;
-
- rec.rec_len = length;
- rec.next = rec_ptr + sizeof(rec) + rec.rec_len;
-
- if (rec_write(tdb, rec.next, &newrec) == -1) {
- goto fail;
- }
-
- if (rec_write(tdb, rec_ptr, &rec) == -1) {
- goto fail;
- }
- }
-
- /* remove it from the list */
- if (last_ptr == 0) {
- offset = FREELIST_TOP;
-
- if (ofs_write(tdb, offset, &rec.next) == -1) {
- goto fail;
- }
- } else {
- lastrec.next = rec.next;
- if (rec_write(tdb, last_ptr, &lastrec) == -1) {
- goto fail;
- }
- }
-
- /* all done - return the new record offset */
- tdb_unlock(tdb, -1);
- return rec_ptr;
- }
-
- /* move to the next record */
- lastrec = rec;
- last_ptr = rec_ptr;
- rec_ptr = rec.next;
- }
-
- /* we didn't find enough space. See if we can expand the
- database and if we can then try again */
- if (tdb_expand(tdb, length + sizeof(rec)) == 0) goto again;
-
- fail:
-#if TDB_DEBUG
- printf("tdb_allocate failed for size %u\n", length);
-#endif
- tdb_unlock(tdb, -1);
- return 0;
-}
-
-/* initialise a new database with a specified hash size */
-static int tdb_new_database(TDB_CONTEXT *tdb, int hash_size)
-{
- struct tdb_header header;
- tdb_off offset;
- int i, size = 0;
- tdb_off buf[16];
-
- /* create the header */
- memset(&header, 0, sizeof(header));
- memcpy(header.magic_food, TDB_MAGIC_FOOD, strlen(TDB_MAGIC_FOOD)+1);
- header.version = TDB_VERSION;
- header.hash_size = hash_size;
- lseek(tdb->fd, 0, SEEK_SET);
- ftruncate(tdb->fd, 0);
-
- if (tdb->fd != -1 && write(tdb->fd, &header, sizeof(header)) !=
- sizeof(header)) {
- tdb->ecode = TDB_ERR_IO;
- return -1;
- } else size += sizeof(header);
-
- /* the freelist and hash pointers */
- offset = 0;
- memset(buf, 0, sizeof(buf));
-
- for (i=0;(hash_size+1)-i >= 16; i += 16) {
- if (tdb->fd != -1 && write(tdb->fd, buf, sizeof(buf)) !=
- sizeof(buf)) {
- tdb->ecode = TDB_ERR_IO;
- return -1;
- } else size += sizeof(buf);
- }
-
- for (;i<hash_size+1; i++) {
- if (tdb->fd != -1 && write(tdb->fd, buf, sizeof(tdb_off)) !=
- sizeof(tdb_off)) {
- tdb->ecode = TDB_ERR_IO;
- return -1;
- } else size += sizeof(tdb_off);
- }
-
- if (tdb->fd == -1) {
- tdb->map_ptr = calloc(size, 1);
- tdb->map_size = size;
- if (tdb->map_ptr == NULL) {
- tdb->ecode = TDB_ERR_IO;
- return -1;
- }
- memcpy(&tdb->header, &header, sizeof(header));
- }
-
-#if TDB_DEBUG
- printf("initialised database of hash_size %u\n",
- hash_size);
-#endif
- return 0;
-}
-
-/* Returns 0 on fail. On success, return offset of record, and fills
- in rec */
-static tdb_off tdb_find(TDB_CONTEXT *tdb, TDB_DATA key, unsigned int hash,
- struct list_struct *rec)
-{
- tdb_off offset, rec_ptr;
-
- /* find the top of the hash chain */
- offset = tdb_hash_top(tdb, hash);
-
- /* read in the hash top */
- if (ofs_read(tdb, offset, &rec_ptr) == -1)
- return 0;
-
- /* keep looking until we find the right record */
- while (rec_ptr) {
- if (rec_read(tdb, rec_ptr, rec) == -1)
- return 0;
-
- if (hash == rec->full_hash && key.dsize == rec->key_len) {
- char *k;
- /* a very likely hit - read the key */
- k = tdb_alloc_read(tdb, rec_ptr + sizeof(*rec),
- rec->key_len);
-
- if (!k)
- return 0;
-
- if (memcmp(key.dptr, k, key.dsize) == 0) {
- free(k);
- return rec_ptr;
- }
- free(k);
- }
-
- /* move to the next record */
- rec_ptr = rec->next;
- }
- return 0;
-}
-
-/*
- return an error string for the last tdb error
-*/
-char *tdb_error(TDB_CONTEXT *tdb)
-{
- int i;
- static struct {
- enum TDB_ERROR ecode;
- char *estring;
- } emap[] = {
- {TDB_SUCCESS, "Success"},
- {TDB_ERR_CORRUPT, "Corrupt database"},
- {TDB_ERR_IO, "IO Error"},
- {TDB_ERR_LOCK, "Locking error"},
- {TDB_ERR_OOM, "Out of memory"},
- {TDB_ERR_EXISTS, "Record exists"},
- {-1, NULL}};
- if (tdb != NULL) {
- for (i=0;emap[i].estring;i++) {
- if (tdb->ecode == emap[i].ecode) return emap[i].estring;
- }
- } else {
- return "Invalid tdb context";
- }
- return "Invalid error code";
-}
-
-
-/* update an entry in place - this only works if the new data size
- is <= the old data size and the key exists.
- on failure return -1
-*/
-int tdb_update(TDB_CONTEXT *tdb, TDB_DATA key, TDB_DATA dbuf)
-{
- unsigned hash;
- struct list_struct rec;
- tdb_off rec_ptr;
- int ret = -1;
-
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_update() called with null context\n");
-#endif
- return -1;
- }
-
- /* find which hash bucket it is in */
- hash = tdb_hash(&key);
-
- tdb_lock(tdb, BUCKET(hash));
- rec_ptr = tdb_find(tdb, key, hash, &rec);
-
- if (!rec_ptr)
- goto out;
-
- /* must be long enough */
- if (rec.rec_len < key.dsize + dbuf.dsize)
- goto out;
-
- if (tdb_write(tdb, rec_ptr + sizeof(rec) + rec.key_len,
- dbuf.dptr, dbuf.dsize) == -1)
- goto out;
-
- if (dbuf.dsize != rec.data_len) {
- /* update size */
- rec.data_len = dbuf.dsize;
- ret = rec_write(tdb, rec_ptr, &rec);
- } else
- ret = 0;
-
- out:
- tdb_unlock(tdb, BUCKET(hash));
- return ret;
-}
-
-/* find an entry in the database given a key */
-TDB_DATA tdb_fetch(TDB_CONTEXT *tdb, TDB_DATA key)
-{
- unsigned hash;
- tdb_off rec_ptr;
- struct list_struct rec;
- TDB_DATA ret = null_data;
-
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_fetch() called with null context\n");
-#endif
- return null_data;
- }
-
- /* find which hash bucket it is in */
- hash = tdb_hash(&key);
-
- tdb_lock(tdb, BUCKET(hash));
- rec_ptr = tdb_find(tdb, key, hash, &rec);
-
- if (rec_ptr) {
- ret.dptr = tdb_alloc_read(tdb,
- rec_ptr + sizeof(rec) + rec.key_len,
- rec.data_len);
- ret.dsize = rec.data_len;
- }
-
- tdb_unlock(tdb, BUCKET(hash));
- return ret;
-}
-
-/* check if an entry in the database exists
-
- note that 1 is returned if the key is found and 0 is returned if not found
- this doesn't match the conventions in the rest of this module, but is
- compatible with gdbm
-*/
-int tdb_exists(TDB_CONTEXT *tdb, TDB_DATA key)
-{
- unsigned hash;
- tdb_off rec_ptr;
- struct list_struct rec;
-
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_exists() called with null context\n");
-#endif
- return 0;
- }
-
- /* find which hash bucket it is in */
- hash = tdb_hash(&key);
-
- tdb_lock(tdb, BUCKET(hash));
- rec_ptr = tdb_find(tdb, key, hash, &rec);
- tdb_unlock(tdb, BUCKET(hash));
-
- return rec_ptr != 0;
-}
-
-/* traverse the entire database - calling fn(tdb, key, data) on each element.
- return -1 on error or the record count traversed
- if fn is NULL then it is not called
- a non-zero return value from fn() indicates that the traversal should stop
- */
-int tdb_traverse(TDB_CONTEXT *tdb, int (*fn)(TDB_CONTEXT *tdb, TDB_DATA key, TDB_DATA dbuf, void* state), void* state)
-{
- int count = 0;
- unsigned h;
- tdb_off offset, rec_ptr;
- struct list_struct rec;
- char *data;
- TDB_DATA key, dbuf;
-
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_traverse() called with null context\n");
-#endif
- return -1;
- }
-
- /* loop over all hash chains */
- for (h = 0; h < tdb->header.hash_size; h++) {
- tdb_lock(tdb, BUCKET(h));
-
- /* read in the hash top */
- offset = tdb_hash_top(tdb, h);
- if (ofs_read(tdb, offset, &rec_ptr) == -1) {
- goto fail;
- }
-
- /* traverse all records for this hash */
- while (rec_ptr) {
- if (rec_read(tdb, rec_ptr, &rec) == -1) {
- goto fail;
- }
-
- /* now read the full record */
- data = tdb_alloc_read(tdb, rec_ptr + sizeof(rec),
- rec.key_len + rec.data_len);
- if (!data) {
- goto fail;
- }
-
- key.dptr = data;
- key.dsize = rec.key_len;
- dbuf.dptr = data + rec.key_len;
- dbuf.dsize = rec.data_len;
- count++;
-
- if (fn && fn(tdb, key, dbuf, state) != 0) {
- /* they want us to stop traversing */
- free(data);
- tdb_unlock(tdb, BUCKET(h));
- return count;
- }
-
- /* a miss - drat */
- free(data);
-
- /* move to the next record */
- rec_ptr = rec.next;
- }
- tdb_unlock(tdb, BUCKET(h));
- }
-
- /* return the number traversed */
- return count;
-
- fail:
- tdb_unlock(tdb, BUCKET(h));
- return -1;
-}
-
-
-/* find the first entry in the database and return its key */
-TDB_DATA tdb_firstkey(TDB_CONTEXT *tdb)
-{
- tdb_off offset, rec_ptr;
- struct list_struct rec;
- unsigned hash;
- TDB_DATA ret;
-
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_firstkey() called with null context\n");
-#endif
- return null_data;
- }
-
- /* look for a non-empty hash chain */
- for (hash = 0, rec_ptr = 0;
- hash < tdb->header.hash_size;
- hash++) {
- /* find the top of the hash chain */
- offset = tdb_hash_top(tdb, hash);
-
- tdb_lock(tdb, BUCKET(hash));
-
- /* read in the hash top */
- if (ofs_read(tdb, offset, &rec_ptr) == -1) {
- goto fail;
- }
-
- if (rec_ptr) break;
-
- tdb_unlock(tdb, BUCKET(hash));
- }
-
- if (rec_ptr == 0) return null_data;
-
- /* we've found a non-empty chain, now read the record */
- if (rec_read(tdb, rec_ptr, &rec) == -1) {
- goto fail;
- }
-
- /* allocate and read the key space */
- ret.dptr = tdb_alloc_read(tdb, rec_ptr + sizeof(rec), rec.key_len);
- ret.dsize = rec.key_len;
- tdb_unlock(tdb, BUCKET(hash));
- return ret;
-
- fail:
- tdb_unlock(tdb, BUCKET(hash));
- return null_data;
-}
-
-/* find the next entry in the database, returning its key */
-TDB_DATA tdb_nextkey(TDB_CONTEXT *tdb, TDB_DATA key)
-{
- unsigned hash, hbucket;
- tdb_off rec_ptr, offset;
- struct list_struct rec;
- TDB_DATA ret;
-
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_nextkey() called with null context\n");
-#endif
- return null_data;
- }
-
- /* find which hash bucket it is in */
- hash = tdb_hash(&key);
- hbucket = BUCKET(hash);
-
- tdb_lock(tdb, hbucket);
- rec_ptr = tdb_find(tdb, key, hash, &rec);
- if (rec_ptr) {
- /* we want the next record after this one */
- rec_ptr = rec.next;
- }
-
- /* not found or last in hash: look for next non-empty hash chain */
- while (rec_ptr == 0) {
- tdb_unlock(tdb, hbucket);
-
- if (++hbucket >= tdb->header.hash_size - 1)
- return null_data;
-
- offset = tdb_hash_top(tdb, hbucket);
- tdb_lock(tdb, hbucket);
- /* read in the hash top */
- if (ofs_read(tdb, offset, &rec_ptr) == -1) {
- tdb_unlock(tdb, hbucket);
- return null_data;
- }
- }
-
- /* Read the record. */
- if (rec_read(tdb, rec_ptr, &rec) == -1) {
- tdb_unlock(tdb, hbucket);
- return null_data;
- }
- /* allocate and read the key */
- ret.dptr = tdb_alloc_read(tdb, rec_ptr + sizeof(rec), rec.key_len);
- ret.dsize = rec.key_len;
- tdb_unlock(tdb, hbucket);
-
- return ret;
-}
-
-/* delete an entry in the database given a key */
-int tdb_delete(TDB_CONTEXT *tdb, TDB_DATA key)
-{
- unsigned hash;
- tdb_off offset, rec_ptr, last_ptr;
- struct list_struct rec, lastrec;
- char *data = NULL;
-
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_delete() called with null context\n");
-#endif
- return -1;
- }
-
- /* find which hash bucket it is in */
- hash = tdb_hash(&key);
-
- tdb_lock(tdb, BUCKET(hash));
-
- /* find the top of the hash chain */
- offset = tdb_hash_top(tdb, hash);
-
- /* read in the hash top */
- if (ofs_read(tdb, offset, &rec_ptr) == -1) {
- goto fail;
- }
-
- last_ptr = 0;
-
- /* keep looking until we find the right record */
- while (rec_ptr) {
- if (rec_read(tdb, rec_ptr, &rec) == -1) {
- goto fail;
- }
-
- if (hash == rec.full_hash && key.dsize == rec.key_len) {
- /* a very likely hit - read the record and full key */
- data = tdb_alloc_read(tdb, rec_ptr + sizeof(rec),
- rec.key_len);
- if (!data) {
- goto fail;
- }
-
- if (memcmp(key.dptr, data, key.dsize) == 0) {
- /* a definite match - delete it */
- if (last_ptr == 0) {
- offset = tdb_hash_top(tdb, hash);
- if (ofs_write(tdb, offset, &rec.next) == -1) {
- goto fail;
- }
- } else {
- lastrec.next = rec.next;
- if (rec_write(tdb, last_ptr, &lastrec) == -1) {
- goto fail;
- }
- }
- tdb_unlock(tdb, BUCKET(hash));
- tdb_lock(tdb, -1);
- /* and recover the space */
- offset = FREELIST_TOP;
- if (ofs_read(tdb, offset, &rec.next) == -1) {
- goto fail2;
- }
- rec.magic = TDB_FREE_MAGIC;
- if (rec_write(tdb, rec_ptr, &rec) == -1) {
- goto fail2;
- }
- if (ofs_write(tdb, offset, &rec_ptr) == -1) {
- goto fail2;
- }
-
- /* yipee - all done */
- free(data);
- tdb_unlock(tdb, -1);
- return 0;
- }
-
- /* a miss - drat */
- free(data);
- data = NULL;
- }
-
- /* move to the next record */
- last_ptr = rec_ptr;
- lastrec = rec;
- rec_ptr = rec.next;
- }
-
- fail:
- if (data) free(data);
- tdb_unlock(tdb, BUCKET(hash));
- return -1;
-
- fail2:
- if (data) free(data);
- tdb_unlock(tdb, -1);
- return -1;
-}
-
-
-/* store an element in the database, replacing any existing element
- with the same key
-
- return 0 on success, -1 on failure
-*/
-int tdb_store(TDB_CONTEXT *tdb, TDB_DATA key, TDB_DATA dbuf, int flag)
-{
- struct list_struct rec;
- unsigned hash;
- tdb_off rec_ptr, offset;
- char *p = NULL;
-
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_store() called with null context\n");
-#endif
- return -1;
- }
-
- /* find which hash bucket it is in */
- hash = tdb_hash(&key);
-
- /* check for it existing */
- if (flag == TDB_INSERT && tdb_exists(tdb, key)) {
- tdb->ecode = TDB_ERR_EXISTS;
- return -1;
- }
-
- /* first try in-place update */
- if (flag != TDB_INSERT && tdb_update(tdb, key, dbuf) == 0) {
- return 0;
- }
-
- rec_ptr = tdb_allocate(tdb, key.dsize + dbuf.dsize);
- if (rec_ptr == 0) {
- return -1;
- }
-
- tdb_lock(tdb, BUCKET(hash));
-
- /* delete any existing record - if it doesn't exist we don't care */
- if (flag != TDB_INSERT) {
- tdb_delete(tdb, key);
- }
-
- /* read the newly created record */
- if (tdb_read(tdb, rec_ptr, (char *)&rec, sizeof(rec)) == -1) {
- goto fail;
- }
-
- if (rec.magic != TDB_FREE_MAGIC) goto fail;
-
- /* find the top of the hash chain */
- offset = tdb_hash_top(tdb, hash);
-
- /* read in the hash top diretcly into our next pointer */
- if (ofs_read(tdb, offset, &rec.next) == -1) {
- goto fail;
- }
-
- rec.key_len = key.dsize;
- rec.data_len = dbuf.dsize;
- rec.full_hash = hash;
- rec.magic = TDB_MAGIC;
-
- p = (char *)malloc(sizeof(rec) + key.dsize + dbuf.dsize);
- if (!p) {
- tdb->ecode = TDB_ERR_OOM;
- goto fail;
- }
-
- memcpy(p, &rec, sizeof(rec));
- memcpy(p+sizeof(rec), key.dptr, key.dsize);
- memcpy(p+sizeof(rec)+key.dsize, dbuf.dptr, dbuf.dsize);
-
- if (tdb_write(tdb, rec_ptr, p, sizeof(rec)+key.dsize+dbuf.dsize) == -1)
- goto fail;
-
- free(p);
- p = NULL;
-
- /* and point the top of the hash chain at it */
- if (ofs_write(tdb, offset, &rec_ptr) == -1) goto fail;
-
- tdb_unlock(tdb, BUCKET(hash));
- return 0;
-
- fail:
-#if TDB_DEBUG
- printf("store failed for hash 0x%08x in bucket %u\n", hash, BUCKET(hash));
-#endif
- if (p) free(p);
- tdb_unlock(tdb, BUCKET(hash));
- return -1;
-}
-
-
-/* open the database, creating it if necessary
-
- The open_flags and mode are passed straight to the open call on the database
- file. A flags value of O_WRONLY is invalid
-
- The hash size is advisory, use zero for a default value.
-
- return is NULL on error
-*/
-TDB_CONTEXT *tdb_open(char *name, int hash_size, int tdb_flags,
- int open_flags, mode_t mode)
-{
- TDB_CONTEXT tdb, *ret;
- struct stat st;
-
- memset(&tdb, 0, sizeof(tdb));
-
- tdb.fd = -1;
- tdb.name = NULL;
- tdb.map_ptr = NULL;
-
- if ((open_flags & O_ACCMODE) == O_WRONLY) {
- goto fail;
- }
-
- if (hash_size == 0) hash_size = DEFAULT_HASH_SIZE;
-
- tdb.read_only = ((open_flags & O_ACCMODE) == O_RDONLY);
-
- if (name != NULL) {
- tdb.fd = open(name, open_flags, mode);
- if (tdb.fd == -1) {
- goto fail;
- }
- }
-
- /* ensure there is only one process initialising at once */
- tdb_brlock(&tdb, GLOBAL_LOCK, LOCK_SET, F_WRLCK, F_SETLKW);
-
- if (tdb_flags & TDB_CLEAR_IF_FIRST) {
- /* we need to zero the database if we are the only
- one with it open */
- if (tdb_brlock(&tdb, ACTIVE_LOCK, LOCK_SET, F_WRLCK, F_SETLK) == 0) {
- ftruncate(tdb.fd, 0);
- tdb_brlock(&tdb, ACTIVE_LOCK, LOCK_CLEAR, F_WRLCK, F_SETLK);
- }
- }
-
- /* leave this lock in place */
- tdb_brlock(&tdb, ACTIVE_LOCK, LOCK_SET, F_RDLCK, F_SETLKW);
-
- if (read(tdb.fd, &tdb.header, sizeof(tdb.header)) != sizeof(tdb.header) ||
- strcmp(tdb.header.magic_food, TDB_MAGIC_FOOD) != 0 ||
- tdb.header.version != TDB_VERSION) {
- /* its not a valid database - possibly initialise it */
- if (!(open_flags & O_CREAT)) {
- goto fail;
- }
- if (tdb_new_database(&tdb, hash_size) == -1) goto fail;
-
- lseek(tdb.fd, 0, SEEK_SET);
- if (tdb.fd != -1 && read(tdb.fd, &tdb.header,
- sizeof(tdb.header)) !=
- sizeof(tdb.header))
- goto fail;
- }
-
- if (tdb.fd != -1) {
- fstat(tdb.fd, &st);
-
- /* map the database and fill in the return structure */
- tdb.name = (char *)strdup(name);
- tdb.map_size = st.st_size;
- }
-
- tdb.locked = (int *)calloc(tdb.header.hash_size+1,
- sizeof(tdb.locked[0]));
- if (!tdb.locked) {
- goto fail;
- }
-
-#if HAVE_MMAP
- if (tdb.fd != -1) {
- tdb.map_ptr = (void *)mmap(NULL, st.st_size,
- tdb.read_only? PROT_READ : PROT_READ|PROT_WRITE,
- MAP_SHARED | MAP_FILE, tdb.fd, 0);
- }
-#endif
-
- ret = (TDB_CONTEXT *)malloc(sizeof(tdb));
- if (!ret) goto fail;
-
- *ret = tdb;
-
-#if TDB_DEBUG
- printf("mapped database of hash_size %u map_size=%u\n",
- hash_size, tdb.map_size);
-#endif
-
- tdb_brlock(&tdb, GLOBAL_LOCK, LOCK_CLEAR, F_WRLCK, F_SETLKW);
- return ret;
-
- fail:
- if (tdb.name) free(tdb.name);
- if (tdb.fd != -1) close(tdb.fd);
- if (tdb.map_ptr) munmap(tdb.map_ptr, tdb.map_size);
-
- return NULL;
-}
-
-/* close a database */
-int tdb_close(TDB_CONTEXT *tdb)
-{
- if (!tdb) return -1;
-
- if (tdb->name) free(tdb->name);
- if (tdb->fd != -1) close(tdb->fd);
- if (tdb->locked) free(tdb->locked);
-
- if (tdb->map_ptr) {
- if (tdb->fd != -1) {
- munmap(tdb->map_ptr, tdb->map_size);
- } else {
- free(tdb->map_ptr);
- }
- }
-
- memset(tdb, 0, sizeof(*tdb));
- free(tdb);
-
- return 0;
-}
-
-/* lock the database. If we already have it locked then don't do anything */
-int tdb_writelock(TDB_CONTEXT *tdb)
-{
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_writelock() called with null context\n");
-#endif
- return -1;
- }
-
- return tdb_lock(tdb, -1);
-}
-
-/* unlock the database. */
-int tdb_writeunlock(TDB_CONTEXT *tdb)
-{
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_writeunlock() called with null context\n");
-#endif
- return -1;
- }
-
- return tdb_unlock(tdb, -1);
-}
-
-/* lock one hash chain. This is meant to be used to reduce locking
- contention - it cannot guarantee how many records will be locked */
-int tdb_lockchain(TDB_CONTEXT *tdb, TDB_DATA key)
-{
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_lockchain() called with null context\n");
-#endif
- return -1;
- }
-
- return tdb_lock(tdb, BUCKET(tdb_hash(&key)));
-}
-
-
-/* unlock one hash chain */
-int tdb_unlockchain(TDB_CONTEXT *tdb, TDB_DATA key)
-{
- if (tdb == NULL) {
-#ifdef TDB_DEBUG
- printf("tdb_unlockchain() called with null context\n");
-#endif
- return -1;
- }
-
- return tdb_unlock(tdb, BUCKET(tdb_hash(&key)));
-}
diff --git a/mdk-stage1/ppp/pppd/tdb.h b/mdk-stage1/ppp/pppd/tdb.h
deleted file mode 100644
index 56ae0ac2a..000000000
--- a/mdk-stage1/ppp/pppd/tdb.h
+++ /dev/null
@@ -1,77 +0,0 @@
-#define STANDALONE 1
-/*
- * Database functions
- * Copyright (C) Andrew Tridgell 1999
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms AND provided that this software or
- * any derived work is only used as part of the PPP daemon (pppd)
- * and related utilities.
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * Note: this software is also available under the Gnu Public License
- * version 2 or later.
- */
-
-typedef unsigned tdb_len;
-typedef unsigned tdb_off;
-
-#define TDB_MAGIC_FOOD "TDB file\n"
-
-/* this is stored at the front of every database */
-struct tdb_header {
- char magic_food[32]; /* for /etc/magic */
- unsigned version; /* version of the code */
- unsigned hash_size; /* number of hash entries */
-};
-
-typedef struct {
- char *dptr;
- size_t dsize;
-} TDB_DATA;
-
-/* this is the context structure that is returned from a db open */
-typedef struct {
- char *name; /* the name of the database */
- void *map_ptr; /* where it is currently mapped */
- int fd; /* open file descriptor for the database */
- tdb_len map_size; /* how much space has been mapped */
- int read_only; /* opened read-only */
- int *locked; /* set if we have a chain locked */
- int ecode; /* error code for last tdb error */
- struct tdb_header header; /* a cached copy of the header */
-} TDB_CONTEXT;
-
-/* flags to tdb_store() */
-#define TDB_REPLACE 1
-#define TDB_INSERT 2
-
-/* flags for tdb_open() */
-#define TDB_CLEAR_IF_FIRST 1
-
-/* error codes */
-enum TDB_ERROR {TDB_SUCCESS=0, TDB_ERR_CORRUPT, TDB_ERR_IO, TDB_ERR_LOCK,
- TDB_ERR_OOM, TDB_ERR_EXISTS};
-
-#if STANDALONE
-TDB_CONTEXT *tdb_open(char *name, int hash_size, int tdb_flags,
- int open_flags, mode_t mode);
-char *tdb_error(TDB_CONTEXT *tdb);
-int tdb_writelock(TDB_CONTEXT *tdb);
-int tdb_writeunlock(TDB_CONTEXT *tdb);
-TDB_DATA tdb_fetch(TDB_CONTEXT *tdb, TDB_DATA key);
-int tdb_delete(TDB_CONTEXT *tdb, TDB_DATA key);
-int tdb_store(TDB_CONTEXT *tdb, TDB_DATA key, TDB_DATA dbuf, int flag);
-int tdb_close(TDB_CONTEXT *tdb);
-TDB_DATA tdb_firstkey(TDB_CONTEXT *tdb);
-TDB_DATA tdb_nextkey(TDB_CONTEXT *tdb, TDB_DATA key);
-int tdb_traverse(TDB_CONTEXT *tdb,
- int (*fn)(TDB_CONTEXT *tdb, TDB_DATA key, TDB_DATA dbuf, void *state),
- void *state);
-int tdb_exists(TDB_CONTEXT *tdb, TDB_DATA key);
-#endif
diff --git a/mdk-stage1/ppp/pppd/tty.c b/mdk-stage1/ppp/pppd/tty.c
deleted file mode 100644
index 4db707968..000000000
--- a/mdk-stage1/ppp/pppd/tty.c
+++ /dev/null
@@ -1,1164 +0,0 @@
-/*
- * tty.c - code for handling serial ports in pppd.
- *
- * Copyright (C) 2000 Paul Mackerras.
- * All rights reserved.
- *
- * Portions Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-#include <stdio.h>
-#include <ctype.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <signal.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <syslog.h>
-#include <netdb.h>
-#include <utmp.h>
-#include <pwd.h>
-#include <setjmp.h>
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <sys/time.h>
-#include <sys/resource.h>
-#include <sys/stat.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include "pppd.h"
-#include "fsm.h"
-#include "lcp.h"
-
-void tty_process_extra_options __P((void));
-void tty_check_options __P((void));
-int connect_tty __P((void));
-void disconnect_tty __P((void));
-void tty_close_fds __P((void));
-void cleanup_tty __P((void));
-void tty_do_send_config __P((int, u_int32_t, int, int));
-
-static int setdevname __P((char *, char **, int));
-static int setspeed __P((char *, char **, int));
-static int setxonxoff __P((char **));
-static int setescape __P((char **));
-static void printescape __P((option_t *, void (*)(void *, char *,...),void *));
-static void finish_tty __P((void));
-static int start_charshunt __P((int, int));
-static void stop_charshunt __P((void *, int));
-static void charshunt_done __P((void *));
-static void charshunt __P((int, int, char *));
-static int record_write __P((FILE *, int code, u_char *buf, int nb,
- struct timeval *));
-static int open_socket __P((char *));
-static void maybe_relock __P((void *, int));
-
-static int pty_master; /* fd for master side of pty */
-static int pty_slave; /* fd for slave side of pty */
-static int real_ttyfd; /* fd for actual serial port (not pty) */
-static int ttyfd; /* Serial port file descriptor */
-static char speed_str[16]; /* Serial port speed as string */
-
-mode_t tty_mode = (mode_t)-1; /* Original access permissions to tty */
-int baud_rate; /* Actual bits/second for serial device */
-char *callback_script; /* script for doing callback */
-int charshunt_pid; /* Process ID for charshunt */
-int locked; /* lock() has succeeded */
-struct stat devstat; /* result of stat() on devnam */
-
-/* option variables */
-int crtscts = 0; /* Use hardware flow control */
-bool modem = 1; /* Use modem control lines */
-int inspeed = 0; /* Input/Output speed requested */
-bool lockflag = 0; /* Create lock file to lock the serial dev */
-char *initializer = NULL; /* Script to initialize physical link */
-char *connect_script = NULL; /* Script to establish physical link */
-char *disconnect_script = NULL; /* Script to disestablish physical link */
-char *welcomer = NULL; /* Script to run after phys link estab. */
-char *ptycommand = NULL; /* Command to run on other side of pty */
-bool notty = 0; /* Stdin/out is not a tty */
-char *record_file = NULL; /* File to record chars sent/received */
-int max_data_rate; /* max bytes/sec through charshunt */
-bool sync_serial = 0; /* Device is synchronous serial device */
-char *pty_socket = NULL; /* Socket to connect to pty */
-int using_pty = 0; /* we're allocating a pty as the device */
-
-extern uid_t uid;
-extern int kill_link;
-
-/* XXX */
-extern int privopen; /* don't lock, open device as root */
-
-u_int32_t xmit_accm[8]; /* extended transmit ACCM */
-
-/* option descriptors */
-option_t tty_options[] = {
- /* device name must be first, or change connect_tty() below! */
- { "device name", o_wild, (void *) &setdevname,
- "Serial port device name",
- OPT_DEVNAM | OPT_PRIVFIX | OPT_NOARG | OPT_A2STRVAL | OPT_STATIC,
- devnam},
-
- { "tty speed", o_wild, (void *) &setspeed,
- "Baud rate for serial port",
- OPT_PRIO | OPT_NOARG | OPT_A2STRVAL | OPT_STATIC, speed_str },
-
- { "lock", o_bool, &lockflag,
- "Lock serial device with UUCP-style lock file", OPT_PRIO | 1 },
- { "nolock", o_bool, &lockflag,
- "Don't lock serial device", OPT_PRIOSUB | OPT_PRIV },
-
- { "init", o_string, &initializer,
- "A program to initialize the device", OPT_PRIO | OPT_PRIVFIX },
-
- { "connect", o_string, &connect_script,
- "A program to set up a connection", OPT_PRIO | OPT_PRIVFIX },
-
- { "disconnect", o_string, &disconnect_script,
- "Program to disconnect serial device", OPT_PRIO | OPT_PRIVFIX },
-
- { "welcome", o_string, &welcomer,
- "Script to welcome client", OPT_PRIO | OPT_PRIVFIX },
-
- { "pty", o_string, &ptycommand,
- "Script to run on pseudo-tty master side",
- OPT_PRIO | OPT_PRIVFIX | OPT_DEVNAM },
-
- { "notty", o_bool, &notty,
- "Input/output is not a tty", OPT_DEVNAM | 1 },
-
- { "socket", o_string, &pty_socket,
- "Send and receive over socket, arg is host:port",
- OPT_PRIO | OPT_DEVNAM },
-
- { "record", o_string, &record_file,
- "Record characters sent/received to file", OPT_PRIO },
-
- { "crtscts", o_int, &crtscts,
- "Set hardware (RTS/CTS) flow control",
- OPT_PRIO | OPT_NOARG | OPT_VAL(1) },
- { "cdtrcts", o_int, &crtscts,
- "Set alternate hardware (DTR/CTS) flow control",
- OPT_PRIOSUB | OPT_NOARG | OPT_VAL(2) },
- { "nocrtscts", o_int, &crtscts,
- "Disable hardware flow control",
- OPT_PRIOSUB | OPT_NOARG | OPT_VAL(-1) },
- { "-crtscts", o_int, &crtscts,
- "Disable hardware flow control",
- OPT_PRIOSUB | OPT_ALIAS | OPT_NOARG | OPT_VAL(-1) },
- { "nocdtrcts", o_int, &crtscts,
- "Disable hardware flow control",
- OPT_PRIOSUB | OPT_ALIAS | OPT_NOARG | OPT_VAL(-1) },
- { "xonxoff", o_special_noarg, (void *)setxonxoff,
- "Set software (XON/XOFF) flow control", OPT_PRIOSUB },
-
- { "modem", o_bool, &modem,
- "Use modem control lines", OPT_PRIO | 1 },
- { "local", o_bool, &modem,
- "Don't use modem control lines", OPT_PRIOSUB | 0 },
-
- { "sync", o_bool, &sync_serial,
- "Use synchronous HDLC serial encoding", 1 },
-
- { "datarate", o_int, &max_data_rate,
- "Maximum data rate in bytes/sec (with pty, notty or record option)",
- OPT_PRIO },
-
- { "escape", o_special, (void *)setescape,
- "List of character codes to escape on transmission",
- OPT_A2PRINTER, (void *)printescape },
-
- { NULL }
-};
-
-
-struct channel tty_channel = {
- tty_options,
- &tty_process_extra_options,
- &tty_check_options,
- &connect_tty,
- &disconnect_tty,
- &tty_establish_ppp,
- &tty_disestablish_ppp,
- &tty_do_send_config,
- &tty_recv_config,
- &cleanup_tty,
- &tty_close_fds
-};
-
-/*
- * setspeed - Set the serial port baud rate.
- * If doit is 0, the call is to check whether this option is
- * potentially a speed value.
- */
-static int
-setspeed(arg, argv, doit)
- char *arg;
- char **argv;
- int doit;
-{
- char *ptr;
- int spd;
-
- spd = strtol(arg, &ptr, 0);
- if (ptr == arg || *ptr != 0 || spd == 0)
- return 0;
- if (doit) {
- inspeed = spd;
- slprintf(speed_str, sizeof(speed_str), "%d", spd);
- }
- return 1;
-}
-
-
-/*
- * setdevname - Set the device name.
- * If doit is 0, the call is to check whether this option is
- * potentially a device name.
- */
-static int
-setdevname(cp, argv, doit)
- char *cp;
- char **argv;
- int doit;
-{
- struct stat statbuf;
- char dev[MAXPATHLEN];
-
- if (*cp == 0)
- return 0;
-
- if (strncmp("/dev/", cp, 5) != 0) {
- strlcpy(dev, "/dev/", sizeof(dev));
- strlcat(dev, cp, sizeof(dev));
- cp = dev;
- }
-
- /*
- * Check if there is a character device by this name.
- */
- if (stat(cp, &statbuf) < 0) {
- if (!doit)
- return errno != ENOENT;
- option_error("Couldn't stat %s: %m", cp);
- return 0;
- }
- if (!S_ISCHR(statbuf.st_mode)) {
- if (doit)
- option_error("%s is not a character device", cp);
- return 0;
- }
-
- if (doit) {
- strlcpy(devnam, cp, sizeof(devnam));
- devstat = statbuf;
- default_device = 0;
- }
-
- return 1;
-}
-
-static int
-setxonxoff(argv)
- char **argv;
-{
- lcp_wantoptions[0].asyncmap |= 0x000A0000; /* escape ^S and ^Q */
- lcp_wantoptions[0].neg_asyncmap = 1;
-
- crtscts = -2;
- return 1;
-}
-
-/*
- * setescape - add chars to the set we escape on transmission.
- */
-static int
-setescape(argv)
- char **argv;
-{
- int n, ret;
- char *p, *endp;
-
- p = *argv;
- ret = 1;
- while (*p) {
- n = strtol(p, &endp, 16);
- if (p == endp) {
- option_error("escape parameter contains invalid hex number '%s'",
- p);
- return 0;
- }
- p = endp;
- if (n < 0 || n == 0x5E || n > 0xFF) {
- option_error("can't escape character 0x%x", n);
- ret = 0;
- } else
- xmit_accm[n >> 5] |= 1 << (n & 0x1F);
- while (*p == ',' || *p == ' ')
- ++p;
- }
- lcp_allowoptions[0].asyncmap = xmit_accm[0];
- return ret;
-}
-
-static void
-printescape(opt, printer, arg)
- option_t *opt;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int n;
- int first = 1;
-
- for (n = 0; n < 256; ++n) {
- if (n == 0x7d)
- n += 2; /* skip 7d, 7e */
- if (xmit_accm[n >> 5] & (1 << (n & 0x1f))) {
- if (!first)
- printer(arg, ",");
- else
- first = 0;
- printer(arg, "%x", n);
- }
- }
- if (first)
- printer(arg, "oops # nothing escaped");
-}
-
-/*
- * tty_init - do various tty-related initializations.
- */
-void tty_init()
-{
- add_notifier(&pidchange, maybe_relock, 0);
- the_channel = &tty_channel;
- xmit_accm[3] = 0x60000000;
-}
-
-/*
- * tty_process_extra_options - work out which tty device we are using
- * and read its options file.
- */
-void tty_process_extra_options()
-{
- using_pty = notty || ptycommand != NULL || pty_socket != NULL;
- if (using_pty)
- return;
- if (default_device) {
- char *p;
- if (!isatty(0) || (p = ttyname(0)) == NULL) {
- option_error("no device specified and stdin is not a tty");
- exit(EXIT_OPTION_ERROR);
- }
- strlcpy(devnam, p, sizeof(devnam));
- if (stat(devnam, &devstat) < 0)
- fatal("Couldn't stat default device %s: %m", devnam);
- }
-
-
- /*
- * Parse the tty options file.
- * The per-tty options file should not change
- * ptycommand, pty_socket, notty or devnam.
- * options_for_tty doesn't override options set on the command line,
- * except for some privileged options.
- */
- if (!options_for_tty())
- exit(EXIT_OPTION_ERROR);
-}
-
-/*
- * tty_check_options - do consistency checks on the options we were given.
- */
-void
-tty_check_options()
-{
- struct stat statbuf;
- int fdflags;
-
- if (demand && connect_script == 0) {
- option_error("connect script is required for demand-dialling\n");
- exit(EXIT_OPTION_ERROR);
- }
- /* default holdoff to 0 if no connect script has been given */
- if (connect_script == 0 && !holdoff_specified)
- holdoff = 0;
-
- if (using_pty) {
- if (!default_device) {
- option_error("%s option precludes specifying device name",
- notty? "notty": "pty");
- exit(EXIT_OPTION_ERROR);
- }
- if (ptycommand != NULL && notty) {
- option_error("pty option is incompatible with notty option");
- exit(EXIT_OPTION_ERROR);
- }
- if (pty_socket != NULL && (ptycommand != NULL || notty)) {
- option_error("socket option is incompatible with pty and notty");
- exit(EXIT_OPTION_ERROR);
- }
- default_device = notty;
- lockflag = 0;
- modem = 0;
- if (notty && log_to_fd <= 1)
- log_to_fd = -1;
- } else {
- /*
- * If the user has specified a device which is the same as
- * the one on stdin, pretend they didn't specify any.
- * If the device is already open read/write on stdin,
- * we assume we don't need to lock it, and we can open it
- * as root.
- */
- if (fstat(0, &statbuf) >= 0 && S_ISCHR(statbuf.st_mode)
- && statbuf.st_rdev == devstat.st_rdev) {
- default_device = 1;
- fdflags = fcntl(0, F_GETFL);
- if (fdflags != -1 && (fdflags & O_ACCMODE) == O_RDWR)
- privopen = 1;
- }
- }
- if (default_device)
- nodetach = 1;
-
- /*
- * Don't send log messages to the serial port, it tends to
- * confuse the peer. :-)
- */
- if (log_to_fd >= 0 && fstat(log_to_fd, &statbuf) >= 0
- && S_ISCHR(statbuf.st_mode) && statbuf.st_rdev == devstat.st_rdev)
- log_to_fd = -1;
-}
-
-/*
- * connect_tty - get the serial port ready to start doing PPP.
- * That is, open the serial port, set its speed and mode, and run
- * the connector and/or welcomer.
- */
-int connect_tty()
-{
- char *connector;
- int fdflags;
- struct stat statbuf;
- char numbuf[16];
-
- /*
- * Get a pty master/slave pair if the pty, notty, socket,
- * or record options were specified.
- */
- strlcpy(ppp_devnam, devnam, sizeof(ppp_devnam));
- pty_master = -1;
- pty_slave = -1;
- real_ttyfd = -1;
- if (using_pty || record_file != NULL) {
- if (!get_pty(&pty_master, &pty_slave, ppp_devnam, uid)) {
- error("Couldn't allocate pseudo-tty");
- status = EXIT_FATAL_ERROR;
- return -1;
- }
- set_up_tty(pty_slave, 1);
- }
-
- /*
- * Lock the device if we've been asked to.
- */
- status = EXIT_LOCK_FAILED;
- if (lockflag && !privopen) {
- if (lock(devnam) < 0)
- return -1;
- locked = 1;
- }
-
- /*
- * Open the serial device and set it up to be the ppp interface.
- * First we open it in non-blocking mode so we can set the
- * various termios flags appropriately. If we aren't dialling
- * out and we want to use the modem lines, we reopen it later
- * in order to wait for the carrier detect signal from the modem.
- */
- hungup = 0;
- kill_link = 0;
- connector = doing_callback? callback_script: connect_script;
- if (devnam[0] != 0) {
- for (;;) {
- /* If the user specified the device name, become the
- user before opening it. */
- int err, prio;
-
- prio = privopen? OPRIO_ROOT: tty_options[0].priority;
- if (prio < OPRIO_ROOT)
- seteuid(uid);
- ttyfd = open(devnam, O_NONBLOCK | O_RDWR, 0);
- err = errno;
- if (prio < OPRIO_ROOT)
- seteuid(0);
- if (ttyfd >= 0)
- break;
- errno = err;
- if (err != EINTR) {
- error("Failed to open %s: %m", devnam);
- status = EXIT_OPEN_FAILED;
- }
- if (!persist || err != EINTR)
- return -1;
- }
- real_ttyfd = ttyfd;
- if ((fdflags = fcntl(ttyfd, F_GETFL)) == -1
- || fcntl(ttyfd, F_SETFL, fdflags & ~O_NONBLOCK) < 0)
- warn("Couldn't reset non-blocking mode on device: %m");
-
- /*
- * Do the equivalent of `mesg n' to stop broadcast messages.
- */
- if (fstat(ttyfd, &statbuf) < 0
- || fchmod(ttyfd, statbuf.st_mode & ~(S_IWGRP | S_IWOTH)) < 0) {
- warn("Couldn't restrict write permissions to %s: %m", devnam);
- } else
- tty_mode = statbuf.st_mode;
-
- /*
- * Set line speed, flow control, etc.
- * If we have a non-null connection or initializer script,
- * on most systems we set CLOCAL for now so that we can talk
- * to the modem before carrier comes up. But this has the
- * side effect that we might miss it if CD drops before we
- * get to clear CLOCAL below. On systems where we can talk
- * successfully to the modem with CLOCAL clear and CD down,
- * we could clear CLOCAL at this point.
- */
- set_up_tty(ttyfd, ((connector != NULL && connector[0] != 0)
- || initializer != NULL));
- }
-
- /*
- * If the pty, socket, notty and/or record option was specified,
- * start up the character shunt now.
- */
- status = EXIT_PTYCMD_FAILED;
- if (ptycommand != NULL) {
- if (record_file != NULL) {
- int ipipe[2], opipe[2], ok;
-
- if (pipe(ipipe) < 0 || pipe(opipe) < 0)
- fatal("Couldn't create pipes for record option: %m");
- ok = device_script(ptycommand, opipe[0], ipipe[1], 1) == 0
- && start_charshunt(ipipe[0], opipe[1]);
- close(ipipe[0]);
- close(ipipe[1]);
- close(opipe[0]);
- close(opipe[1]);
- if (!ok)
- return -1;
- } else {
- if (device_script(ptycommand, pty_master, pty_master, 1) < 0)
- return -1;
- ttyfd = pty_slave;
- close(pty_master);
- pty_master = -1;
- }
- } else if (pty_socket != NULL) {
- int fd = open_socket(pty_socket);
- if (fd < 0)
- return -1;
- if (!start_charshunt(fd, fd))
- return -1;
- } else if (notty) {
- if (!start_charshunt(0, 1))
- return -1;
- } else if (record_file != NULL) {
- if (!start_charshunt(ttyfd, ttyfd))
- return -1;
- }
-
- /* run connection script */
- if ((connector && connector[0]) || initializer) {
- if (real_ttyfd != -1) {
- /* XXX do this if doing_callback == CALLBACK_DIALIN? */
- if (!default_device && modem) {
- setdtr(real_ttyfd, 0); /* in case modem is off hook */
- sleep(1);
- setdtr(real_ttyfd, 1);
- }
- }
-
- if (initializer && initializer[0]) {
- if (device_script(initializer, ttyfd, ttyfd, 0) < 0) {
- error("Initializer script failed");
- status = EXIT_INIT_FAILED;
- return -1;
- }
- if (kill_link) {
- disconnect_tty();
- return -1;
- }
- info("Serial port initialized.");
- }
-
- if (connector && connector[0]) {
- if (device_script(connector, ttyfd, ttyfd, 0) < 0) {
- error("Connect script failed");
- status = EXIT_CONNECT_FAILED;
- return -1;
- }
- if (kill_link) {
- disconnect_tty();
- return -1;
- }
- info("Serial connection established.");
- }
-
- /* set line speed, flow control, etc.;
- clear CLOCAL if modem option */
- if (real_ttyfd != -1)
- set_up_tty(real_ttyfd, 0);
-
- if (doing_callback == CALLBACK_DIALIN)
- connector = NULL;
- }
-
- /* reopen tty if necessary to wait for carrier */
- if (connector == NULL && modem && devnam[0] != 0) {
- int i;
- for (;;) {
- if ((i = open(devnam, O_RDWR)) >= 0)
- break;
- if (errno != EINTR) {
- error("Failed to reopen %s: %m", devnam);
- status = EXIT_OPEN_FAILED;
- }
- if (!persist || errno != EINTR || hungup || kill_link)
- return -1;
- }
- close(i);
- }
-
- slprintf(numbuf, sizeof(numbuf), "%d", baud_rate);
- script_setenv("SPEED", numbuf, 0);
-
- /* run welcome script, if any */
- if (welcomer && welcomer[0]) {
- if (device_script(welcomer, ttyfd, ttyfd, 0) < 0)
- warn("Welcome script failed");
- }
-
- /*
- * If we are initiating this connection, wait for a short
- * time for something from the peer. This can avoid bouncing
- * our packets off his tty before he has it set up.
- */
- if (connector != NULL || ptycommand != NULL)
- listen_time = connect_delay;
-
- return ttyfd;
-}
-
-
-void disconnect_tty()
-{
- if (disconnect_script == NULL || hungup)
- return;
- if (real_ttyfd >= 0)
- set_up_tty(real_ttyfd, 1);
- if (device_script(disconnect_script, ttyfd, ttyfd, 0) < 0) {
- warn("disconnect script failed");
- } else {
- info("Serial link disconnected.");
- }
-}
-
-void tty_close_fds()
-{
- if (pty_master >= 0)
- close(pty_master);
- if (pty_slave >= 0)
- close(pty_slave);
- if (real_ttyfd >= 0) {
- close(real_ttyfd);
- real_ttyfd = -1;
- }
- /* N.B. ttyfd will == either pty_slave or real_ttyfd */
-}
-
-void cleanup_tty()
-{
- if (real_ttyfd >= 0)
- finish_tty();
- tty_close_fds();
- if (locked) {
- unlock();
- locked = 0;
- }
-}
-
-/*
- * tty_do_send_config - set transmit-side PPP configuration.
- * We set the extended transmit ACCM here as well.
- */
-void
-tty_do_send_config(mtu, accm, pcomp, accomp)
- int mtu;
- u_int32_t accm;
- int pcomp, accomp;
-{
- tty_set_xaccm(xmit_accm);
- tty_send_config(mtu, accm, pcomp, accomp);
-}
-
-/*
- * finish_tty - restore the terminal device to its original settings
- */
-static void
-finish_tty()
-{
- /* drop dtr to hang up */
- if (!default_device && modem) {
- setdtr(real_ttyfd, 0);
- /*
- * This sleep is in case the serial port has CLOCAL set by default,
- * and consequently will reassert DTR when we close the device.
- */
- sleep(1);
- }
-
- restore_tty(real_ttyfd);
-
- if (tty_mode != (mode_t) -1) {
- if (fchmod(real_ttyfd, tty_mode) != 0) {
- /* XXX if devnam is a symlink, this will change the link */
- chmod(devnam, tty_mode);
- }
- }
-
- close(real_ttyfd);
- real_ttyfd = -1;
-}
-
-/*
- * maybe_relock - our PID has changed, maybe update the lock file.
- */
-static void
-maybe_relock(arg, pid)
- void *arg;
- int pid;
-{
- if (locked)
- relock(pid);
-}
-
-/*
- * open_socket - establish a stream socket connection to the nominated
- * host and port.
- */
-static int
-open_socket(dest)
- char *dest;
-{
- char *sep, *endp = NULL;
- int sock, port = -1;
- u_int32_t host;
- struct hostent *hent;
- struct sockaddr_in sad;
-
- /* parse host:port and resolve host to an IP address */
- sep = strchr(dest, ':');
- if (sep != NULL)
- port = strtol(sep+1, &endp, 10);
- if (port < 0 || endp == sep+1 || sep == dest) {
- error("Can't parse host:port for socket destination");
- return -1;
- }
- *sep = 0;
- host = inet_addr(dest);
- if (host == (u_int32_t) -1) {
- hent = gethostbyname(dest);
- if (hent == NULL) {
- error("%s: unknown host in socket option", dest);
- *sep = ':';
- return -1;
- }
- host = *(u_int32_t *)(hent->h_addr_list[0]);
- }
- *sep = ':';
-
- /* get a socket and connect it to the other end */
- sock = socket(PF_INET, SOCK_STREAM, 0);
- if (sock < 0) {
- error("Can't create socket: %m");
- return -1;
- }
- memset(&sad, 0, sizeof(sad));
- sad.sin_family = AF_INET;
- sad.sin_port = htons(port);
- sad.sin_addr.s_addr = host;
- if (connect(sock, (struct sockaddr *)&sad, sizeof(sad)) < 0) {
- error("Can't connect to %s: %m", dest);
- close(sock);
- return -1;
- }
-
- return sock;
-}
-
-
-/*
- * start_charshunt - create a child process to run the character shunt.
- */
-static int
-start_charshunt(ifd, ofd)
- int ifd, ofd;
-{
- int cpid;
-
- cpid = fork();
- if (cpid == -1) {
- error("Can't fork process for character shunt: %m");
- return 0;
- }
- if (cpid == 0) {
- /* child */
- close(pty_slave);
- setuid(uid);
- if (getuid() != uid)
- fatal("setuid failed");
- setgid(getgid());
- if (!nodetach)
- log_to_fd = -1;
- charshunt(ifd, ofd, record_file);
- exit(0);
- }
- charshunt_pid = cpid;
- add_notifier(&sigreceived, stop_charshunt, 0);
- close(pty_master);
- pty_master = -1;
- ttyfd = pty_slave;
- record_child(cpid, "pppd (charshunt)", charshunt_done, NULL);
- return 1;
-}
-
-static void
-charshunt_done(arg)
- void *arg;
-{
- charshunt_pid = 0;
-}
-
-static void
-stop_charshunt(arg, sig)
- void *arg;
- int sig;
-{
- if (charshunt_pid)
- kill(charshunt_pid, (sig == SIGINT? sig: SIGTERM));
-}
-
-/*
- * charshunt - the character shunt, which passes characters between
- * the pty master side and the serial port (or stdin/stdout).
- * This runs as the user (not as root).
- * (We assume ofd >= ifd which is true the way this gets called. :-).
- */
-static void
-charshunt(ifd, ofd, record_file)
- int ifd, ofd;
- char *record_file;
-{
- int n, nfds;
- fd_set ready, writey;
- u_char *ibufp, *obufp;
- int nibuf, nobuf;
- int flags;
- int pty_readable, stdin_readable;
- struct timeval lasttime;
- FILE *recordf = NULL;
- int ilevel, olevel, max_level;
- struct timeval levelt, tout, *top;
- extern u_char inpacket_buf[];
-
- /*
- * Reset signal handlers.
- */
- signal(SIGHUP, SIG_IGN); /* Hangup */
- signal(SIGINT, SIG_DFL); /* Interrupt */
- signal(SIGTERM, SIG_DFL); /* Terminate */
- signal(SIGCHLD, SIG_DFL);
- signal(SIGUSR1, SIG_DFL);
- signal(SIGUSR2, SIG_DFL);
- signal(SIGABRT, SIG_DFL);
- signal(SIGALRM, SIG_DFL);
- signal(SIGFPE, SIG_DFL);
- signal(SIGILL, SIG_DFL);
- signal(SIGPIPE, SIG_DFL);
- signal(SIGQUIT, SIG_DFL);
- signal(SIGSEGV, SIG_DFL);
-#ifdef SIGBUS
- signal(SIGBUS, SIG_DFL);
-#endif
-#ifdef SIGEMT
- signal(SIGEMT, SIG_DFL);
-#endif
-#ifdef SIGPOLL
- signal(SIGPOLL, SIG_DFL);
-#endif
-#ifdef SIGPROF
- signal(SIGPROF, SIG_DFL);
-#endif
-#ifdef SIGSYS
- signal(SIGSYS, SIG_DFL);
-#endif
-#ifdef SIGTRAP
- signal(SIGTRAP, SIG_DFL);
-#endif
-#ifdef SIGVTALRM
- signal(SIGVTALRM, SIG_DFL);
-#endif
-#ifdef SIGXCPU
- signal(SIGXCPU, SIG_DFL);
-#endif
-#ifdef SIGXFSZ
- signal(SIGXFSZ, SIG_DFL);
-#endif
-
- /*
- * Open the record file if required.
- */
- if (record_file != NULL) {
- recordf = fopen(record_file, "a");
- if (recordf == NULL)
- error("Couldn't create record file %s: %m", record_file);
- }
-
- /* set all the fds to non-blocking mode */
- flags = fcntl(pty_master, F_GETFL);
- if (flags == -1
- || fcntl(pty_master, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("couldn't set pty master to nonblock: %m");
- flags = fcntl(ifd, F_GETFL);
- if (flags == -1
- || fcntl(ifd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("couldn't set %s to nonblock: %m", (ifd==0? "stdin": "tty"));
- if (ofd != ifd) {
- flags = fcntl(ofd, F_GETFL);
- if (flags == -1
- || fcntl(ofd, F_SETFL, flags | O_NONBLOCK) == -1)
- warn("couldn't set stdout to nonblock: %m");
- }
-
- nibuf = nobuf = 0;
- ibufp = obufp = NULL;
- pty_readable = stdin_readable = 1;
-
- ilevel = olevel = 0;
- gettimeofday(&levelt, NULL);
- if (max_data_rate) {
- max_level = max_data_rate / 10;
- if (max_level < 100)
- max_level = 100;
- } else
- max_level = PPP_MRU + PPP_HDRLEN + 1;
-
- nfds = (ofd > pty_master? ofd: pty_master) + 1;
- if (recordf != NULL) {
- gettimeofday(&lasttime, NULL);
- putc(7, recordf); /* put start marker */
- putc(lasttime.tv_sec >> 24, recordf);
- putc(lasttime.tv_sec >> 16, recordf);
- putc(lasttime.tv_sec >> 8, recordf);
- putc(lasttime.tv_sec, recordf);
- lasttime.tv_usec = 0;
- }
-
- while (nibuf != 0 || nobuf != 0 || pty_readable || stdin_readable) {
- top = 0;
- tout.tv_sec = 0;
- tout.tv_usec = 10000;
- FD_ZERO(&ready);
- FD_ZERO(&writey);
- if (nibuf != 0) {
- if (ilevel >= max_level)
- top = &tout;
- else
- FD_SET(pty_master, &writey);
- } else if (stdin_readable)
- FD_SET(ifd, &ready);
- if (nobuf != 0) {
- if (olevel >= max_level)
- top = &tout;
- else
- FD_SET(ofd, &writey);
- } else if (pty_readable)
- FD_SET(pty_master, &ready);
- if (select(nfds, &ready, &writey, NULL, top) < 0) {
- if (errno != EINTR)
- fatal("select");
- continue;
- }
- if (max_data_rate) {
- double dt;
- int nbt;
- struct timeval now;
-
- gettimeofday(&now, NULL);
- dt = (now.tv_sec - levelt.tv_sec
- + (now.tv_usec - levelt.tv_usec) / 1e6);
- nbt = (int)(dt * max_data_rate);
- ilevel = (nbt < 0 || nbt > ilevel)? 0: ilevel - nbt;
- olevel = (nbt < 0 || nbt > olevel)? 0: olevel - nbt;
- levelt = now;
- } else
- ilevel = olevel = 0;
- if (FD_ISSET(ifd, &ready)) {
- ibufp = inpacket_buf;
- nibuf = read(ifd, ibufp, PPP_MRU + PPP_HDRLEN);
- if (nibuf < 0 && errno == EIO)
- nibuf = 0;
- if (nibuf < 0) {
- if (!(errno == EINTR || errno == EAGAIN)) {
- error("Error reading standard input: %m");
- break;
- }
- nibuf = 0;
- } else if (nibuf == 0) {
- /* end of file from stdin */
- stdin_readable = 0;
- /* do a 0-length write, hopefully this will generate
- an EOF (hangup) on the slave side. */
- write(pty_master, inpacket_buf, 0);
- if (recordf)
- if (!record_write(recordf, 4, NULL, 0, &lasttime))
- recordf = NULL;
- } else {
- FD_SET(pty_master, &writey);
- if (recordf)
- if (!record_write(recordf, 2, ibufp, nibuf, &lasttime))
- recordf = NULL;
- }
- }
- if (FD_ISSET(pty_master, &ready)) {
- obufp = outpacket_buf;
- nobuf = read(pty_master, obufp, PPP_MRU + PPP_HDRLEN);
- if (nobuf < 0 && errno == EIO)
- nobuf = 0;
- if (nobuf < 0) {
- if (!(errno == EINTR || errno == EAGAIN)) {
- error("Error reading pseudo-tty master: %m");
- break;
- }
- nobuf = 0;
- } else if (nobuf == 0) {
- /* end of file from the pty - slave side has closed */
- pty_readable = 0;
- stdin_readable = 0; /* pty is not writable now */
- nibuf = 0;
- close(ofd);
- if (recordf)
- if (!record_write(recordf, 3, NULL, 0, &lasttime))
- recordf = NULL;
- } else {
- FD_SET(ofd, &writey);
- if (recordf)
- if (!record_write(recordf, 1, obufp, nobuf, &lasttime))
- recordf = NULL;
- }
- }
- if (FD_ISSET(ofd, &writey)) {
- n = nobuf;
- if (olevel + n > max_level)
- n = max_level - olevel;
- n = write(ofd, obufp, n);
- if (n < 0) {
- if (errno == EIO) {
- pty_readable = 0;
- nobuf = 0;
- } else if (errno != EAGAIN && errno != EINTR) {
- error("Error writing standard output: %m");
- break;
- }
- } else {
- obufp += n;
- nobuf -= n;
- olevel += n;
- }
- }
- if (FD_ISSET(pty_master, &writey)) {
- n = nibuf;
- if (ilevel + n > max_level)
- n = max_level - ilevel;
- n = write(pty_master, ibufp, n);
- if (n < 0) {
- if (errno == EIO) {
- stdin_readable = 0;
- nibuf = 0;
- } else if (errno != EAGAIN && errno != EINTR) {
- error("Error writing pseudo-tty master: %m");
- break;
- }
- } else {
- ibufp += n;
- nibuf -= n;
- ilevel += n;
- }
- }
- }
- exit(0);
-}
-
-static int
-record_write(f, code, buf, nb, tp)
- FILE *f;
- int code;
- u_char *buf;
- int nb;
- struct timeval *tp;
-{
- struct timeval now;
- int diff;
-
- gettimeofday(&now, NULL);
- now.tv_usec /= 100000; /* actually 1/10 s, not usec now */
- diff = (now.tv_sec - tp->tv_sec) * 10 + (now.tv_usec - tp->tv_usec);
- if (diff > 0) {
- if (diff > 255) {
- putc(5, f);
- putc(diff >> 24, f);
- putc(diff >> 16, f);
- putc(diff >> 8, f);
- putc(diff, f);
- } else {
- putc(6, f);
- putc(diff, f);
- }
- *tp = now;
- }
- putc(code, f);
- if (buf != NULL) {
- putc(nb >> 8, f);
- putc(nb, f);
- fwrite(buf, nb, 1, f);
- }
- fflush(f);
- if (ferror(f)) {
- error("Error writing record file: %m");
- return 0;
- }
- return 1;
-}
diff --git a/mdk-stage1/ppp/pppd/upap.c b/mdk-stage1/ppp/pppd/upap.c
deleted file mode 100644
index bd569fb74..000000000
--- a/mdk-stage1/ppp/pppd/upap.c
+++ /dev/null
@@ -1,640 +0,0 @@
-/*
- * upap.c - User/Password Authentication Protocol.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-/*
- * TODO:
- */
-
-#include <stdio.h>
-#include <string.h>
-
-#include "pppd.h"
-#include "upap.h"
-
-static const char rcsid[] = RCSID;
-
-static bool hide_password = 1;
-
-/*
- * Command-line options.
- */
-static option_t pap_option_list[] = {
- { "hide-password", o_bool, &hide_password,
- "Don't output passwords to log", OPT_PRIO | 1 },
- { "show-password", o_bool, &hide_password,
- "Show password string in debug log messages", OPT_PRIOSUB | 0 },
-
- { "pap-restart", o_int, &upap[0].us_timeouttime,
- "Set retransmit timeout for PAP", OPT_PRIO },
- { "pap-max-authreq", o_int, &upap[0].us_maxtransmits,
- "Set max number of transmissions for auth-reqs", OPT_PRIO },
- { "pap-timeout", o_int, &upap[0].us_reqtimeout,
- "Set time limit for peer PAP authentication", OPT_PRIO },
-
- { NULL }
-};
-
-/*
- * Protocol entry points.
- */
-static void upap_init __P((int));
-static void upap_lowerup __P((int));
-static void upap_lowerdown __P((int));
-static void upap_input __P((int, u_char *, int));
-static void upap_protrej __P((int));
-static int upap_printpkt __P((u_char *, int,
- void (*) __P((void *, char *, ...)), void *));
-
-struct protent pap_protent = {
- PPP_PAP,
- upap_init,
- upap_input,
- upap_protrej,
- upap_lowerup,
- upap_lowerdown,
- NULL,
- NULL,
- upap_printpkt,
- NULL,
- 1,
- "PAP",
- NULL,
- pap_option_list,
- NULL,
- NULL,
- NULL
-};
-
-upap_state upap[NUM_PPP]; /* UPAP state; one for each unit */
-
-static void upap_timeout __P((void *));
-static void upap_reqtimeout __P((void *));
-static void upap_rauthreq __P((upap_state *, u_char *, int, int));
-static void upap_rauthack __P((upap_state *, u_char *, int, int));
-static void upap_rauthnak __P((upap_state *, u_char *, int, int));
-static void upap_sauthreq __P((upap_state *));
-static void upap_sresp __P((upap_state *, int, int, char *, int));
-
-
-/*
- * upap_init - Initialize a UPAP unit.
- */
-static void
-upap_init(unit)
- int unit;
-{
- upap_state *u = &upap[unit];
-
- u->us_unit = unit;
- u->us_user = NULL;
- u->us_userlen = 0;
- u->us_passwd = NULL;
- u->us_passwdlen = 0;
- u->us_clientstate = UPAPCS_INITIAL;
- u->us_serverstate = UPAPSS_INITIAL;
- u->us_id = 0;
- u->us_timeouttime = UPAP_DEFTIMEOUT;
- u->us_maxtransmits = 10;
- u->us_reqtimeout = UPAP_DEFREQTIME;
-}
-
-
-/*
- * upap_authwithpeer - Authenticate us with our peer (start client).
- *
- * Set new state and send authenticate's.
- */
-void
-upap_authwithpeer(unit, user, password)
- int unit;
- char *user, *password;
-{
- upap_state *u = &upap[unit];
-
- /* Save the username and password we're given */
- u->us_user = user;
- u->us_userlen = strlen(user);
- u->us_passwd = password;
- u->us_passwdlen = strlen(password);
- u->us_transmits = 0;
-
- /* Lower layer up yet? */
- if (u->us_clientstate == UPAPCS_INITIAL ||
- u->us_clientstate == UPAPCS_PENDING) {
- u->us_clientstate = UPAPCS_PENDING;
- return;
- }
-
- upap_sauthreq(u); /* Start protocol */
-}
-
-
-/*
- * upap_authpeer - Authenticate our peer (start server).
- *
- * Set new state.
- */
-void
-upap_authpeer(unit)
- int unit;
-{
- upap_state *u = &upap[unit];
-
- /* Lower layer up yet? */
- if (u->us_serverstate == UPAPSS_INITIAL ||
- u->us_serverstate == UPAPSS_PENDING) {
- u->us_serverstate = UPAPSS_PENDING;
- return;
- }
-
- u->us_serverstate = UPAPSS_LISTEN;
- if (u->us_reqtimeout > 0)
- TIMEOUT(upap_reqtimeout, u, u->us_reqtimeout);
-}
-
-
-/*
- * upap_timeout - Retransmission timer for sending auth-reqs expired.
- */
-static void
-upap_timeout(arg)
- void *arg;
-{
- upap_state *u = (upap_state *) arg;
-
- if (u->us_clientstate != UPAPCS_AUTHREQ)
- return;
-
- if (u->us_transmits >= u->us_maxtransmits) {
- /* give up in disgust */
- error("No response to PAP authenticate-requests");
- u->us_clientstate = UPAPCS_BADAUTH;
- auth_withpeer_fail(u->us_unit, PPP_PAP);
- return;
- }
-
- upap_sauthreq(u); /* Send Authenticate-Request */
-}
-
-
-/*
- * upap_reqtimeout - Give up waiting for the peer to send an auth-req.
- */
-static void
-upap_reqtimeout(arg)
- void *arg;
-{
- upap_state *u = (upap_state *) arg;
-
- if (u->us_serverstate != UPAPSS_LISTEN)
- return; /* huh?? */
-
- auth_peer_fail(u->us_unit, PPP_PAP);
- u->us_serverstate = UPAPSS_BADAUTH;
-}
-
-
-/*
- * upap_lowerup - The lower layer is up.
- *
- * Start authenticating if pending.
- */
-static void
-upap_lowerup(unit)
- int unit;
-{
- upap_state *u = &upap[unit];
-
- if (u->us_clientstate == UPAPCS_INITIAL)
- u->us_clientstate = UPAPCS_CLOSED;
- else if (u->us_clientstate == UPAPCS_PENDING) {
- upap_sauthreq(u); /* send an auth-request */
- }
-
- if (u->us_serverstate == UPAPSS_INITIAL)
- u->us_serverstate = UPAPSS_CLOSED;
- else if (u->us_serverstate == UPAPSS_PENDING) {
- u->us_serverstate = UPAPSS_LISTEN;
- if (u->us_reqtimeout > 0)
- TIMEOUT(upap_reqtimeout, u, u->us_reqtimeout);
- }
-}
-
-
-/*
- * upap_lowerdown - The lower layer is down.
- *
- * Cancel all timeouts.
- */
-static void
-upap_lowerdown(unit)
- int unit;
-{
- upap_state *u = &upap[unit];
-
- if (u->us_clientstate == UPAPCS_AUTHREQ) /* Timeout pending? */
- UNTIMEOUT(upap_timeout, u); /* Cancel timeout */
- if (u->us_serverstate == UPAPSS_LISTEN && u->us_reqtimeout > 0)
- UNTIMEOUT(upap_reqtimeout, u);
-
- u->us_clientstate = UPAPCS_INITIAL;
- u->us_serverstate = UPAPSS_INITIAL;
-}
-
-
-/*
- * upap_protrej - Peer doesn't speak this protocol.
- *
- * This shouldn't happen. In any case, pretend lower layer went down.
- */
-static void
-upap_protrej(unit)
- int unit;
-{
- upap_state *u = &upap[unit];
-
- if (u->us_clientstate == UPAPCS_AUTHREQ) {
- error("PAP authentication failed due to protocol-reject");
- auth_withpeer_fail(unit, PPP_PAP);
- }
- if (u->us_serverstate == UPAPSS_LISTEN) {
- error("PAP authentication of peer failed (protocol-reject)");
- auth_peer_fail(unit, PPP_PAP);
- }
- upap_lowerdown(unit);
-}
-
-
-/*
- * upap_input - Input UPAP packet.
- */
-static void
-upap_input(unit, inpacket, l)
- int unit;
- u_char *inpacket;
- int l;
-{
- upap_state *u = &upap[unit];
- u_char *inp;
- u_char code, id;
- int len;
-
- /*
- * Parse header (code, id and length).
- * If packet too short, drop it.
- */
- inp = inpacket;
- if (l < UPAP_HEADERLEN) {
- UPAPDEBUG(("pap_input: rcvd short header."));
- return;
- }
- GETCHAR(code, inp);
- GETCHAR(id, inp);
- GETSHORT(len, inp);
- if (len < UPAP_HEADERLEN) {
- UPAPDEBUG(("pap_input: rcvd illegal length."));
- return;
- }
- if (len > l) {
- UPAPDEBUG(("pap_input: rcvd short packet."));
- return;
- }
- len -= UPAP_HEADERLEN;
-
- /*
- * Action depends on code.
- */
- switch (code) {
- case UPAP_AUTHREQ:
- upap_rauthreq(u, inp, id, len);
- break;
-
- case UPAP_AUTHACK:
- upap_rauthack(u, inp, id, len);
- break;
-
- case UPAP_AUTHNAK:
- upap_rauthnak(u, inp, id, len);
- break;
-
- default: /* XXX Need code reject */
- break;
- }
-}
-
-
-/*
- * upap_rauth - Receive Authenticate.
- */
-static void
-upap_rauthreq(u, inp, id, len)
- upap_state *u;
- u_char *inp;
- int id;
- int len;
-{
- u_char ruserlen, rpasswdlen;
- char *ruser, *rpasswd;
- int retcode;
- char *msg;
- int msglen;
-
- if (u->us_serverstate < UPAPSS_LISTEN)
- return;
-
- /*
- * If we receive a duplicate authenticate-request, we are
- * supposed to return the same status as for the first request.
- */
- if (u->us_serverstate == UPAPSS_OPEN) {
- upap_sresp(u, UPAP_AUTHACK, id, "", 0); /* return auth-ack */
- return;
- }
- if (u->us_serverstate == UPAPSS_BADAUTH) {
- upap_sresp(u, UPAP_AUTHNAK, id, "", 0); /* return auth-nak */
- return;
- }
-
- /*
- * Parse user/passwd.
- */
- if (len < 1) {
- UPAPDEBUG(("pap_rauth: rcvd short packet."));
- return;
- }
- GETCHAR(ruserlen, inp);
- len -= sizeof (u_char) + ruserlen + sizeof (u_char);
- if (len < 0) {
- UPAPDEBUG(("pap_rauth: rcvd short packet."));
- return;
- }
- ruser = (char *) inp;
- INCPTR(ruserlen, inp);
- GETCHAR(rpasswdlen, inp);
- if (len < rpasswdlen) {
- UPAPDEBUG(("pap_rauth: rcvd short packet."));
- return;
- }
- rpasswd = (char *) inp;
-
- /*
- * Check the username and password given.
- */
- retcode = check_passwd(u->us_unit, ruser, ruserlen, rpasswd,
- rpasswdlen, &msg);
- BZERO(rpasswd, rpasswdlen);
- msglen = strlen(msg);
- if (msglen > 255)
- msglen = 255;
-
- upap_sresp(u, retcode, id, msg, msglen);
-
- if (retcode == UPAP_AUTHACK) {
- u->us_serverstate = UPAPSS_OPEN;
- auth_peer_success(u->us_unit, PPP_PAP, ruser, ruserlen);
- } else {
- u->us_serverstate = UPAPSS_BADAUTH;
- auth_peer_fail(u->us_unit, PPP_PAP);
- }
-
- if (u->us_reqtimeout > 0)
- UNTIMEOUT(upap_reqtimeout, u);
-}
-
-
-/*
- * upap_rauthack - Receive Authenticate-Ack.
- */
-static void
-upap_rauthack(u, inp, id, len)
- upap_state *u;
- u_char *inp;
- int id;
- int len;
-{
- u_char msglen;
- char *msg;
-
- if (u->us_clientstate != UPAPCS_AUTHREQ) /* XXX */
- return;
-
- /*
- * Parse message.
- */
- if (len < 1) {
- UPAPDEBUG(("pap_rauthack: ignoring missing msg-length."));
- } else {
- GETCHAR(msglen, inp);
- if (msglen > 0) {
- len -= sizeof (u_char);
- if (len < msglen) {
- UPAPDEBUG(("pap_rauthack: rcvd short packet."));
- return;
- }
- msg = (char *) inp;
- PRINTMSG(msg, msglen);
- }
- }
-
- u->us_clientstate = UPAPCS_OPEN;
-
- auth_withpeer_success(u->us_unit, PPP_PAP);
-}
-
-
-/*
- * upap_rauthnak - Receive Authenticate-Nakk.
- */
-static void
-upap_rauthnak(u, inp, id, len)
- upap_state *u;
- u_char *inp;
- int id;
- int len;
-{
- u_char msglen;
- char *msg;
-
- if (u->us_clientstate != UPAPCS_AUTHREQ) /* XXX */
- return;
-
- /*
- * Parse message.
- */
- if (len < 1) {
- UPAPDEBUG(("pap_rauthnak: ignoring missing msg-length."));
- } else {
- GETCHAR(msglen, inp);
- if (msglen > 0) {
- len -= sizeof (u_char);
- if (len < msglen) {
- UPAPDEBUG(("pap_rauthnak: rcvd short packet."));
- return;
- }
- msg = (char *) inp;
- PRINTMSG(msg, msglen);
- }
- }
-
- u->us_clientstate = UPAPCS_BADAUTH;
-
- error("PAP authentication failed");
- auth_withpeer_fail(u->us_unit, PPP_PAP);
-}
-
-
-/*
- * upap_sauthreq - Send an Authenticate-Request.
- */
-static void
-upap_sauthreq(u)
- upap_state *u;
-{
- u_char *outp;
- int outlen;
-
- outlen = UPAP_HEADERLEN + 2 * sizeof (u_char) +
- u->us_userlen + u->us_passwdlen;
- outp = outpacket_buf;
-
- MAKEHEADER(outp, PPP_PAP);
-
- PUTCHAR(UPAP_AUTHREQ, outp);
- PUTCHAR(++u->us_id, outp);
- PUTSHORT(outlen, outp);
- PUTCHAR(u->us_userlen, outp);
- BCOPY(u->us_user, outp, u->us_userlen);
- INCPTR(u->us_userlen, outp);
- PUTCHAR(u->us_passwdlen, outp);
- BCOPY(u->us_passwd, outp, u->us_passwdlen);
-
- output(u->us_unit, outpacket_buf, outlen + PPP_HDRLEN);
-
- TIMEOUT(upap_timeout, u, u->us_timeouttime);
- ++u->us_transmits;
- u->us_clientstate = UPAPCS_AUTHREQ;
-}
-
-
-/*
- * upap_sresp - Send a response (ack or nak).
- */
-static void
-upap_sresp(u, code, id, msg, msglen)
- upap_state *u;
- u_char code, id;
- char *msg;
- int msglen;
-{
- u_char *outp;
- int outlen;
-
- outlen = UPAP_HEADERLEN + sizeof (u_char) + msglen;
- outp = outpacket_buf;
- MAKEHEADER(outp, PPP_PAP);
-
- PUTCHAR(code, outp);
- PUTCHAR(id, outp);
- PUTSHORT(outlen, outp);
- PUTCHAR(msglen, outp);
- BCOPY(msg, outp, msglen);
- output(u->us_unit, outpacket_buf, outlen + PPP_HDRLEN);
-}
-
-/*
- * upap_printpkt - print the contents of a PAP packet.
- */
-static char *upap_codenames[] = {
- "AuthReq", "AuthAck", "AuthNak"
-};
-
-static int
-upap_printpkt(p, plen, printer, arg)
- u_char *p;
- int plen;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int code, id, len;
- int mlen, ulen, wlen;
- char *user, *pwd, *msg;
- u_char *pstart;
-
- if (plen < UPAP_HEADERLEN)
- return 0;
- pstart = p;
- GETCHAR(code, p);
- GETCHAR(id, p);
- GETSHORT(len, p);
- if (len < UPAP_HEADERLEN || len > plen)
- return 0;
-
- if (code >= 1 && code <= sizeof(upap_codenames) / sizeof(char *))
- printer(arg, " %s", upap_codenames[code-1]);
- else
- printer(arg, " code=0x%x", code);
- printer(arg, " id=0x%x", id);
- len -= UPAP_HEADERLEN;
- switch (code) {
- case UPAP_AUTHREQ:
- if (len < 1)
- break;
- ulen = p[0];
- if (len < ulen + 2)
- break;
- wlen = p[ulen + 1];
- if (len < ulen + wlen + 2)
- break;
- user = (char *) (p + 1);
- pwd = (char *) (p + ulen + 2);
- p += ulen + wlen + 2;
- len -= ulen + wlen + 2;
- printer(arg, " user=");
- print_string(user, ulen, printer, arg);
- printer(arg, " password=");
- if (!hide_password)
- print_string(pwd, wlen, printer, arg);
- else
- printer(arg, "<hidden>");
- break;
- case UPAP_AUTHACK:
- case UPAP_AUTHNAK:
- if (len < 1)
- break;
- mlen = p[0];
- if (len < mlen + 1)
- break;
- msg = (char *) (p + 1);
- p += mlen + 1;
- len -= mlen + 1;
- printer(arg, " ");
- print_string(msg, mlen, printer, arg);
- break;
- }
-
- /* print the rest of the bytes in the packet */
- for (; len > 0; --len) {
- GETCHAR(code, p);
- printer(arg, " %.2x", code);
- }
-
- return p - pstart;
-}
diff --git a/mdk-stage1/ppp/pppd/upap.h b/mdk-stage1/ppp/pppd/upap.h
deleted file mode 100644
index 42d6f4f0f..000000000
--- a/mdk-stage1/ppp/pppd/upap.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * upap.h - User/Password Authentication Protocol definitions.
- *
- * Copyright (c) 1989 Carnegie Mellon University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by Carnegie Mellon University. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
- * $Id$
- */
-
-/*
- * Packet header = Code, id, length.
- */
-#define UPAP_HEADERLEN 4
-
-
-/*
- * UPAP codes.
- */
-#define UPAP_AUTHREQ 1 /* Authenticate-Request */
-#define UPAP_AUTHACK 2 /* Authenticate-Ack */
-#define UPAP_AUTHNAK 3 /* Authenticate-Nak */
-
-
-/*
- * Each interface is described by upap structure.
- */
-typedef struct upap_state {
- int us_unit; /* Interface unit number */
- char *us_user; /* User */
- int us_userlen; /* User length */
- char *us_passwd; /* Password */
- int us_passwdlen; /* Password length */
- int us_clientstate; /* Client state */
- int us_serverstate; /* Server state */
- u_char us_id; /* Current id */
- int us_timeouttime; /* Timeout (seconds) for auth-req retrans. */
- int us_transmits; /* Number of auth-reqs sent */
- int us_maxtransmits; /* Maximum number of auth-reqs to send */
- int us_reqtimeout; /* Time to wait for auth-req from peer */
-} upap_state;
-
-
-/*
- * Client states.
- */
-#define UPAPCS_INITIAL 0 /* Connection down */
-#define UPAPCS_CLOSED 1 /* Connection up, haven't requested auth */
-#define UPAPCS_PENDING 2 /* Connection down, have requested auth */
-#define UPAPCS_AUTHREQ 3 /* We've sent an Authenticate-Request */
-#define UPAPCS_OPEN 4 /* We've received an Ack */
-#define UPAPCS_BADAUTH 5 /* We've received a Nak */
-
-/*
- * Server states.
- */
-#define UPAPSS_INITIAL 0 /* Connection down */
-#define UPAPSS_CLOSED 1 /* Connection up, haven't requested auth */
-#define UPAPSS_PENDING 2 /* Connection down, have requested auth */
-#define UPAPSS_LISTEN 3 /* Listening for an Authenticate */
-#define UPAPSS_OPEN 4 /* We've sent an Ack */
-#define UPAPSS_BADAUTH 5 /* We've sent a Nak */
-
-
-/*
- * Timeouts.
- */
-#define UPAP_DEFTIMEOUT 3 /* Timeout (seconds) for retransmitting req */
-#define UPAP_DEFREQTIME 30 /* Time to wait for auth-req from peer */
-
-extern upap_state upap[];
-
-void upap_authwithpeer __P((int, char *, char *));
-void upap_authpeer __P((int));
-
-extern struct protent pap_protent;
diff --git a/mdk-stage1/ppp/pppd/utils.c b/mdk-stage1/ppp/pppd/utils.c
deleted file mode 100644
index 5861d8980..000000000
--- a/mdk-stage1/ppp/pppd/utils.c
+++ /dev/null
@@ -1,949 +0,0 @@
-/*
- * utils.c - various utility functions used in pppd.
- *
- * Copyright (c) 1999 The Australian National University.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the Australian National University. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#define RCSID "$Id$"
-
-#include <stdio.h>
-#include <ctype.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <signal.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <syslog.h>
-#include <netdb.h>
-#include <utmp.h>
-#include <pwd.h>
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <sys/time.h>
-#include <sys/resource.h>
-#include <sys/stat.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#ifdef SVR4
-#include <sys/mkdev.h>
-#endif
-
-#include "pppd.h"
-#include <time.h>
-
-static const char rcsid[] = RCSID;
-
-#if defined(SUNOS4)
-extern char *strerror();
-#endif
-
-static void logit __P((int, char *, va_list));
-static void log_write __P((int, char *));
-static void vslp_printer __P((void *, char *, ...));
-static void format_packet __P((u_char *, int, void (*) (void *, char *, ...),
- void *));
-
-struct buffer_info {
- char *ptr;
- int len;
-};
-
-/*
- * strlcpy - like strcpy/strncpy, doesn't overflow destination buffer,
- * always leaves destination null-terminated (for len > 0).
- */
-size_t
-strlcpy(dest, src, len)
- char *dest;
- const char *src;
- size_t len;
-{
- size_t ret = strlen(src);
-
- if (len != 0) {
- if (ret < len)
- strcpy(dest, src);
- else {
- strncpy(dest, src, len - 1);
- dest[len-1] = 0;
- }
- }
- return ret;
-}
-
-/*
- * strlcat - like strcat/strncat, doesn't overflow destination buffer,
- * always leaves destination null-terminated (for len > 0).
- */
-size_t
-strlcat(dest, src, len)
- char *dest;
- const char *src;
- size_t len;
-{
- size_t dlen = strlen(dest);
-
- return dlen + strlcpy(dest + dlen, src, (len > dlen? len - dlen: 0));
-}
-
-
-/*
- * slprintf - format a message into a buffer. Like sprintf except we
- * also specify the length of the output buffer, and we handle
- * %r (recursive format), %m (error message), %v (visible string),
- * %q (quoted string), %t (current time) and %I (IP address) formats.
- * Doesn't do floating-point formats.
- * Returns the number of chars put into buf.
- */
-int
-slprintf __V((char *buf, int buflen, char *fmt, ...))
-{
- va_list args;
- int n;
-
-#if defined(__STDC__)
- va_start(args, fmt);
-#else
- char *buf;
- int buflen;
- char *fmt;
- va_start(args);
- buf = va_arg(args, char *);
- buflen = va_arg(args, int);
- fmt = va_arg(args, char *);
-#endif
- n = vslprintf(buf, buflen, fmt, args);
- va_end(args);
- return n;
-}
-
-/*
- * vslprintf - like slprintf, takes a va_list instead of a list of args.
- */
-#define OUTCHAR(c) (buflen > 0? (--buflen, *buf++ = (c)): 0)
-
-int
-vslprintf(buf, buflen, fmt, args)
- char *buf;
- int buflen;
- char *fmt;
- va_list args;
-{
- int c, i, n;
- int width, prec, fillch;
- int base, len, neg, quoted;
- unsigned long val = 0;
- char *str, *f, *buf0;
- unsigned char *p;
- char num[32];
- time_t t;
- u_int32_t ip;
- static char hexchars[] = "0123456789abcdef";
- struct buffer_info bufinfo;
-
- buf0 = buf;
- --buflen;
- while (buflen > 0) {
- for (f = fmt; *f != '%' && *f != 0; ++f)
- ;
- if (f > fmt) {
- len = f - fmt;
- if (len > buflen)
- len = buflen;
- memcpy(buf, fmt, len);
- buf += len;
- buflen -= len;
- fmt = f;
- }
- if (*fmt == 0)
- break;
- c = *++fmt;
- width = 0;
- prec = -1;
- fillch = ' ';
- if (c == '0') {
- fillch = '0';
- c = *++fmt;
- }
- if (c == '*') {
- width = va_arg(args, int);
- c = *++fmt;
- } else {
- while (isdigit(c)) {
- width = width * 10 + c - '0';
- c = *++fmt;
- }
- }
- if (c == '.') {
- c = *++fmt;
- if (c == '*') {
- prec = va_arg(args, int);
- c = *++fmt;
- } else {
- prec = 0;
- while (isdigit(c)) {
- prec = prec * 10 + c - '0';
- c = *++fmt;
- }
- }
- }
- str = 0;
- base = 0;
- neg = 0;
- ++fmt;
- switch (c) {
- case 'd':
- i = va_arg(args, int);
- if (i < 0) {
- neg = 1;
- val = -i;
- } else
- val = i;
- base = 10;
- break;
- case 'u':
- val = va_arg(args, unsigned int);
- base = 10;
- break;
- case 'o':
- val = va_arg(args, unsigned int);
- base = 8;
- break;
- case 'x':
- case 'X':
- val = va_arg(args, unsigned int);
- base = 16;
- break;
- case 'p':
- val = (unsigned long) va_arg(args, void *);
- base = 16;
- neg = 2;
- break;
- case 's':
- str = va_arg(args, char *);
- break;
- case 'c':
- num[0] = va_arg(args, int);
- num[1] = 0;
- str = num;
- break;
- case 'm':
- str = strerror(errno);
- break;
- case 'I':
- ip = va_arg(args, u_int32_t);
- ip = ntohl(ip);
- slprintf(num, sizeof(num), "%d.%d.%d.%d", (ip >> 24) & 0xff,
- (ip >> 16) & 0xff, (ip >> 8) & 0xff, ip & 0xff);
- str = num;
- break;
- case 'r':
- f = va_arg(args, char *);
-#if !defined(__powerpc__) && !defined(__x86_64__)
- n = vslprintf(buf, buflen + 1, f, va_arg(args, va_list));
-#else
- /* On the powerpc, a va_list is an array of 1 structure */
- n = vslprintf(buf, buflen + 1, f, va_arg(args, void *));
-#endif
- buf += n;
- buflen -= n;
- continue;
- case 't':
- time(&t);
- str = ctime(&t);
- str += 4; /* chop off the day name */
- str[15] = 0; /* chop off year and newline */
- break;
- case 'v': /* "visible" string */
- case 'q': /* quoted string */
- quoted = c == 'q';
- p = va_arg(args, unsigned char *);
- if (fillch == '0' && prec >= 0) {
- n = prec;
- } else {
- n = strlen((char *)p);
- if (prec >= 0 && n > prec)
- n = prec;
- }
- while (n > 0 && buflen > 0) {
- c = *p++;
- --n;
- if (!quoted && c >= 0x80) {
- OUTCHAR('M');
- OUTCHAR('-');
- c -= 0x80;
- }
- if (quoted && (c == '"' || c == '\\'))
- OUTCHAR('\\');
- if (c < 0x20 || (0x7f <= c && c < 0xa0)) {
- if (quoted) {
- OUTCHAR('\\');
- switch (c) {
- case '\t': OUTCHAR('t'); break;
- case '\n': OUTCHAR('n'); break;
- case '\b': OUTCHAR('b'); break;
- case '\f': OUTCHAR('f'); break;
- default:
- OUTCHAR('x');
- OUTCHAR(hexchars[c >> 4]);
- OUTCHAR(hexchars[c & 0xf]);
- }
- } else {
- if (c == '\t')
- OUTCHAR(c);
- else {
- OUTCHAR('^');
- OUTCHAR(c ^ 0x40);
- }
- }
- } else
- OUTCHAR(c);
- }
- continue;
- case 'P': /* print PPP packet */
- bufinfo.ptr = buf;
- bufinfo.len = buflen + 1;
- p = va_arg(args, unsigned char *);
- n = va_arg(args, int);
- format_packet(p, n, vslp_printer, &bufinfo);
- buf = bufinfo.ptr;
- buflen = bufinfo.len - 1;
- continue;
- case 'B':
- p = va_arg(args, unsigned char *);
- for (n = prec; n > 0; --n) {
- c = *p++;
- if (fillch == ' ')
- OUTCHAR(' ');
- OUTCHAR(hexchars[(c >> 4) & 0xf]);
- OUTCHAR(hexchars[c & 0xf]);
- }
- continue;
- default:
- *buf++ = '%';
- if (c != '%')
- --fmt; /* so %z outputs %z etc. */
- --buflen;
- continue;
- }
- if (base != 0) {
- str = num + sizeof(num);
- *--str = 0;
- while (str > num + neg) {
- *--str = hexchars[val % base];
- val = val / base;
- if (--prec <= 0 && val == 0)
- break;
- }
- switch (neg) {
- case 1:
- *--str = '-';
- break;
- case 2:
- *--str = 'x';
- *--str = '0';
- break;
- }
- len = num + sizeof(num) - 1 - str;
- } else {
- len = strlen(str);
- if (prec >= 0 && len > prec)
- len = prec;
- }
- if (width > 0) {
- if (width > buflen)
- width = buflen;
- if ((n = width - len) > 0) {
- buflen -= n;
- for (; n > 0; --n)
- *buf++ = fillch;
- }
- }
- if (len > buflen)
- len = buflen;
- memcpy(buf, str, len);
- buf += len;
- buflen -= len;
- }
- *buf = 0;
- return buf - buf0;
-}
-
-/*
- * vslp_printer - used in processing a %P format
- */
-static void
-vslp_printer __V((void *arg, char *fmt, ...))
-{
- int n;
- va_list pvar;
- struct buffer_info *bi;
-
-#if defined(__STDC__)
- va_start(pvar, fmt);
-#else
- void *arg;
- char *fmt;
- va_start(pvar);
- arg = va_arg(pvar, void *);
- fmt = va_arg(pvar, char *);
-#endif
-
- bi = (struct buffer_info *) arg;
- n = vslprintf(bi->ptr, bi->len, fmt, pvar);
- va_end(pvar);
-
- bi->ptr += n;
- bi->len -= n;
-}
-
-#ifdef unused
-/*
- * log_packet - format a packet and log it.
- */
-
-void
-log_packet(p, len, prefix, level)
- u_char *p;
- int len;
- char *prefix;
- int level;
-{
- init_pr_log(prefix, level);
- format_packet(p, len, pr_log, &level);
- end_pr_log();
-}
-#endif /* unused */
-
-/*
- * format_packet - make a readable representation of a packet,
- * calling `printer(arg, format, ...)' to output it.
- */
-static void
-format_packet(p, len, printer, arg)
- u_char *p;
- int len;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int i, n;
- u_short proto;
- struct protent *protp;
-
- if (len >= PPP_HDRLEN && p[0] == PPP_ALLSTATIONS && p[1] == PPP_UI) {
- p += 2;
- GETSHORT(proto, p);
- len -= PPP_HDRLEN;
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (proto == protp->protocol)
- break;
- if (protp != NULL) {
- printer(arg, "[%s", protp->name);
- n = (*protp->printpkt)(p, len, printer, arg);
- printer(arg, "]");
- p += n;
- len -= n;
- } else {
- for (i = 0; (protp = protocols[i]) != NULL; ++i)
- if (proto == (protp->protocol & ~0x8000))
- break;
- if (protp != 0 && protp->data_name != 0) {
- printer(arg, "[%s data]", protp->data_name);
- if (len > 8)
- printer(arg, "%.8B ...", p);
- else
- printer(arg, "%.*B", len, p);
- len = 0;
- } else
- printer(arg, "[proto=0x%x]", proto);
- }
- }
-
- if (len > 32)
- printer(arg, "%.32B ...", p);
- else
- printer(arg, "%.*B", len, p);
-}
-
-/*
- * init_pr_log, end_pr_log - initialize and finish use of pr_log.
- */
-
-static char line[256]; /* line to be logged accumulated here */
-static char *linep; /* current pointer within line */
-static int llevel; /* level for logging */
-
-void
-init_pr_log(prefix, level)
- char *prefix;
- int level;
-{
- linep = line;
- if (prefix != NULL) {
- strlcpy(line, prefix, sizeof(line));
- linep = line + strlen(line);
- }
- llevel = level;
-}
-
-void
-end_pr_log()
-{
- if (linep != line) {
- *linep = 0;
- log_write(llevel, line);
- }
-}
-
-/*
- * pr_log - printer routine for outputting to syslog
- */
-void
-pr_log __V((void *arg, char *fmt, ...))
-{
- int l, n;
- va_list pvar;
- char *p, *eol;
- char buf[256];
-
-#if defined(__STDC__)
- va_start(pvar, fmt);
-#else
- void *arg;
- char *fmt;
- va_start(pvar);
- arg = va_arg(pvar, void *);
- fmt = va_arg(pvar, char *);
-#endif
-
- n = vslprintf(buf, sizeof(buf), fmt, pvar);
- va_end(pvar);
-
- p = buf;
- eol = strchr(buf, '\n');
- if (linep != line) {
- l = (eol == NULL)? n: eol - buf;
- if (linep + l < line + sizeof(line)) {
- if (l > 0) {
- memcpy(linep, buf, l);
- linep += l;
- }
- if (eol == NULL)
- return;
- p = eol + 1;
- eol = strchr(p, '\n');
- }
- *linep = 0;
- log_write(llevel, line);
- linep = line;
- }
-
- while (eol != NULL) {
- *eol = 0;
- log_write(llevel, p);
- p = eol + 1;
- eol = strchr(p, '\n');
- }
-
- /* assumes sizeof(buf) <= sizeof(line) */
- l = buf + n - p;
- if (l > 0) {
- memcpy(line, p, n);
- linep = line + l;
- }
-}
-
-/*
- * print_string - print a readable representation of a string using
- * printer.
- */
-void
-print_string(p, len, printer, arg)
- char *p;
- int len;
- void (*printer) __P((void *, char *, ...));
- void *arg;
-{
- int c;
-
- printer(arg, "\"");
- for (; len > 0; --len) {
- c = *p++;
- if (' ' <= c && c <= '~') {
- if (c == '\\' || c == '"')
- printer(arg, "\\");
- printer(arg, "%c", c);
- } else {
- switch (c) {
- case '\n':
- printer(arg, "\\n");
- break;
- case '\r':
- printer(arg, "\\r");
- break;
- case '\t':
- printer(arg, "\\t");
- break;
- default:
- printer(arg, "\\%.3o", c);
- }
- }
- }
- printer(arg, "\"");
-}
-
-/*
- * logit - does the hard work for fatal et al.
- */
-static void
-logit(level, fmt, args)
- int level;
- char *fmt;
- va_list args;
-{
- int n;
- char buf[1024];
-
- n = vslprintf(buf, sizeof(buf), fmt, args);
- log_write(level, buf);
-}
-
-static void
-log_write(level, buf)
- int level;
- char *buf;
-{
- syslog(level, "%s", buf);
- if (log_to_fd >= 0 && (level != LOG_DEBUG || debug)) {
- int n = strlen(buf);
-
- if (n > 0 && buf[n-1] == '\n')
- --n;
- if (write(log_to_fd, buf, n) != n
- || write(log_to_fd, "\n", 1) != 1)
- log_to_fd = -1;
- }
-}
-
-/*
- * fatal - log an error message and die horribly.
- */
-void
-fatal __V((char *fmt, ...))
-{
- va_list pvar;
-
-#if defined(__STDC__)
- va_start(pvar, fmt);
-#else
- char *fmt;
- va_start(pvar);
- fmt = va_arg(pvar, char *);
-#endif
-
- logit(LOG_ERR, fmt, pvar);
- va_end(pvar);
-
- die(1); /* as promised */
-}
-
-/*
- * error - log an error message.
- */
-void
-error __V((char *fmt, ...))
-{
- va_list pvar;
-
-#if defined(__STDC__)
- va_start(pvar, fmt);
-#else
- char *fmt;
- va_start(pvar);
- fmt = va_arg(pvar, char *);
-#endif
-
- logit(LOG_ERR, fmt, pvar);
- va_end(pvar);
-}
-
-/*
- * warn - log a warning message.
- */
-void
-warn __V((char *fmt, ...))
-{
- va_list pvar;
-
-#if defined(__STDC__)
- va_start(pvar, fmt);
-#else
- char *fmt;
- va_start(pvar);
- fmt = va_arg(pvar, char *);
-#endif
-
- logit(LOG_WARNING, fmt, pvar);
- va_end(pvar);
-}
-
-/*
- * notice - log a notice-level message.
- */
-void
-notice __V((char *fmt, ...))
-{
- va_list pvar;
-
-#if defined(__STDC__)
- va_start(pvar, fmt);
-#else
- char *fmt;
- va_start(pvar);
- fmt = va_arg(pvar, char *);
-#endif
-
- logit(LOG_NOTICE, fmt, pvar);
- va_end(pvar);
-}
-
-/*
- * info - log an informational message.
- */
-void
-info __V((char *fmt, ...))
-{
- va_list pvar;
-
-#if defined(__STDC__)
- va_start(pvar, fmt);
-#else
- char *fmt;
- va_start(pvar);
- fmt = va_arg(pvar, char *);
-#endif
-
- logit(LOG_INFO, fmt, pvar);
- va_end(pvar);
-}
-
-/*
- * dbglog - log a debug message.
- */
-void
-dbglog __V((char *fmt, ...))
-{
- va_list pvar;
-
-#if defined(__STDC__)
- va_start(pvar, fmt);
-#else
- char *fmt;
- va_start(pvar);
- fmt = va_arg(pvar, char *);
-#endif
-
- logit(LOG_DEBUG, fmt, pvar);
- va_end(pvar);
-}
-
-/* Procedures for locking the serial device using a lock file. */
-#ifndef LOCK_DIR
-#ifdef _linux_
-#define LOCK_DIR "/var/lock"
-#else
-#ifdef SVR4
-#define LOCK_DIR "/var/spool/locks"
-#else
-#define LOCK_DIR "/var/spool/lock"
-#endif
-#endif
-#endif /* LOCK_DIR */
-
-static char lock_file[MAXPATHLEN];
-
-/*
- * lock - create a lock file for the named device
- */
-int
-lock(dev)
- char *dev;
-{
-#ifdef LOCKLIB
- int result;
-
- result = mklock (dev, (void *) 0);
- if (result == 0) {
- strlcpy(lock_file, sizeof(lock_file), dev);
- return 0;
- }
-
- if (result > 0)
- notice("Device %s is locked by pid %d", dev, result);
- else
- error("Can't create lock file %s", lock_file);
- return -1;
-
-#else /* LOCKLIB */
-
- char lock_buffer[12];
- int fd, pid, n;
-
-#ifdef SVR4
- struct stat sbuf;
-
- if (stat(dev, &sbuf) < 0) {
- error("Can't get device number for %s: %m", dev);
- return -1;
- }
- if ((sbuf.st_mode & S_IFMT) != S_IFCHR) {
- error("Can't lock %s: not a character device", dev);
- return -1;
- }
- slprintf(lock_file, sizeof(lock_file), "%s/LK.%03d.%03d.%03d",
- LOCK_DIR, major(sbuf.st_dev),
- major(sbuf.st_rdev), minor(sbuf.st_rdev));
-#else
- char *p;
-
- if ((p = strrchr(dev, '/')) != NULL)
- dev = p + 1;
- slprintf(lock_file, sizeof(lock_file), "%s/LCK..%s", LOCK_DIR, dev);
-#endif
-
- while ((fd = open(lock_file, O_EXCL | O_CREAT | O_RDWR, 0644)) < 0) {
- if (errno != EEXIST) {
- error("Can't create lock file %s: %m", lock_file);
- break;
- }
-
- /* Read the lock file to find out who has the device locked. */
- fd = open(lock_file, O_RDONLY, 0);
- if (fd < 0) {
- if (errno == ENOENT) /* This is just a timing problem. */
- continue;
- error("Can't open existing lock file %s: %m", lock_file);
- break;
- }
-#ifndef LOCK_BINARY
- n = read(fd, lock_buffer, 11);
-#else
- n = read(fd, &pid, sizeof(pid));
-#endif /* LOCK_BINARY */
- close(fd);
- fd = -1;
- if (n <= 0) {
- error("Can't read pid from lock file %s", lock_file);
- break;
- }
-
- /* See if the process still exists. */
-#ifndef LOCK_BINARY
- lock_buffer[n] = 0;
- pid = atoi(lock_buffer);
-#endif /* LOCK_BINARY */
- if (pid == getpid())
- return 1; /* somebody else locked it for us */
- if (pid == 0
- || (kill(pid, 0) == -1 && errno == ESRCH)) {
- if (unlink (lock_file) == 0) {
- notice("Removed stale lock on %s (pid %d)", dev, pid);
- continue;
- }
- warn("Couldn't remove stale lock on %s", dev);
- } else
- notice("Device %s is locked by pid %d", dev, pid);
- break;
- }
-
- if (fd < 0) {
- lock_file[0] = 0;
- return -1;
- }
-
- pid = getpid();
-#ifndef LOCK_BINARY
- slprintf(lock_buffer, sizeof(lock_buffer), "%10d\n", pid);
- write (fd, lock_buffer, 11);
-#else
- write(fd, &pid, sizeof (pid));
-#endif
- close(fd);
- return 0;
-
-#endif
-}
-
-/*
- * relock - called to update our lockfile when we are about to detach,
- * thus changing our pid (we fork, the child carries on, and the parent dies).
- * Note that this is called by the parent, with pid equal to the pid
- * of the child. This avoids a potential race which would exist if
- * we had the child rewrite the lockfile (the parent might die first,
- * and another process could think the lock was stale if it checked
- * between when the parent died and the child rewrote the lockfile).
- */
-int
-relock(pid)
- int pid;
-{
-#ifdef LOCKLIB
- /* XXX is there a way to do this? */
- return -1;
-#else /* LOCKLIB */
-
- int fd;
- char lock_buffer[12];
-
- if (lock_file[0] == 0)
- return -1;
- fd = open(lock_file, O_WRONLY, 0);
- if (fd < 0) {
- error("Couldn't reopen lock file %s: %m", lock_file);
- lock_file[0] = 0;
- return -1;
- }
-
-#ifndef LOCK_BINARY
- slprintf(lock_buffer, sizeof(lock_buffer), "%10d\n", pid);
- write (fd, lock_buffer, 11);
-#else
- write(fd, &pid, sizeof(pid));
-#endif /* LOCK_BINARY */
- close(fd);
- return 0;
-
-#endif /* LOCKLIB */
-}
-
-/*
- * unlock - remove our lockfile
- */
-void
-unlock()
-{
- if (lock_file[0]) {
-#ifdef LOCKLIB
- (void) rmlock(lock_file, (void *) 0);
-#else
- unlink(lock_file);
-#endif
- lock_file[0] = 0;
- }
-}
-
diff --git a/mdk-stage1/ppp/pppdump/Makefile.linux b/mdk-stage1/ppp/pppdump/Makefile.linux
deleted file mode 100644
index 1d8d78ff7..000000000
--- a/mdk-stage1/ppp/pppdump/Makefile.linux
+++ /dev/null
@@ -1,17 +0,0 @@
-CFLAGS= -I../include/net $(RPM_OPT_FLAGS)
-OBJS = pppdump.o bsd-comp.o deflate.o zlib.o
-
-INSTALL= install
-
-all: pppdump
-
-pppdump: $(OBJS)
- $(CC) $(RPM_OPT_FLAGS) -o pppdump $(OBJS)
-
-clean:
- rm -f pppdump $(OBJS) *~
-
-install:
- mkdir -p $(BINDIR) $(MANDIR)/man8
- $(INSTALL) -s -c pppdump $(BINDIR)
- $(INSTALL) -c pppdump.8 $(MANDIR)/man8
diff --git a/mdk-stage1/ppp/pppdump/Makefile.linux.makeopt b/mdk-stage1/ppp/pppdump/Makefile.linux.makeopt
deleted file mode 100644
index d02fecde8..000000000
--- a/mdk-stage1/ppp/pppdump/Makefile.linux.makeopt
+++ /dev/null
@@ -1,17 +0,0 @@
-CFLAGS= -O -I../include/net
-OBJS = pppdump.o bsd-comp.o deflate.o zlib.o
-
-INSTALL= install
-
-all: pppdump
-
-pppdump: $(OBJS)
- $(CC) -o pppdump $(OBJS)
-
-clean:
- rm -f pppdump $(OBJS) *~
-
-install:
- mkdir -p $(BINDIR) $(MANDIR)/man8
- $(INSTALL) -s -c pppdump $(BINDIR)
- $(INSTALL) -c -m 444 pppdump.8 $(MANDIR)/man8
diff --git a/mdk-stage1/ppp/pppdump/Makefile.linux.pppdump-Makefile b/mdk-stage1/ppp/pppdump/Makefile.linux.pppdump-Makefile
deleted file mode 100644
index 4c98b6c6d..000000000
--- a/mdk-stage1/ppp/pppdump/Makefile.linux.pppdump-Makefile
+++ /dev/null
@@ -1,17 +0,0 @@
-CFLAGS= -O -I../include/net
-OBJS = pppdump.o bsd-comp.o deflate.o zlib.o
-
-INSTALL= install
-
-all: pppdump
-
-pppdump: $(OBJS)
- $(CC) $(RPM_OPT_FLAGS) -o pppdump $(OBJS)
-
-clean:
- rm -f pppdump $(OBJS) *~
-
-install:
- mkdir -p $(BINDIR) $(MANDIR)/man8
- $(INSTALL) -s -c pppdump $(BINDIR)
- $(INSTALL) -c -m 444 pppdump.8 $(MANDIR)/man8
diff --git a/mdk-stage1/ppp/pppdump/Makefile.sol2 b/mdk-stage1/ppp/pppdump/Makefile.sol2
deleted file mode 100644
index d7e6b413e..000000000
--- a/mdk-stage1/ppp/pppdump/Makefile.sol2
+++ /dev/null
@@ -1,21 +0,0 @@
-#
-# pppdump Makefile for SVR4 systems
-# $Id$
-#
-
-include ../solaris/Makedefs
-
-CFLAGS= $(COPTS) -I../include/net
-OBJS = pppdump.o bsd-comp.o deflate.o zlib.o
-
-all: pppdump
-
-pppdump: $(OBJS)
- $(CC) -o pppdump $(OBJS)
-
-clean:
- rm -f $(OBJS) pppdump *~
-
-install:
- $(INSTALL) -f $(BINDIR) pppdump
- $(INSTALL) -m 444 -f $(MANDIR)/man8 pppdump.8
diff --git a/mdk-stage1/ppp/pppdump/Makefile.sunos4 b/mdk-stage1/ppp/pppdump/Makefile.sunos4
deleted file mode 100644
index 915c8267d..000000000
--- a/mdk-stage1/ppp/pppdump/Makefile.sunos4
+++ /dev/null
@@ -1,21 +0,0 @@
-#
-# pppstats makefile
-# $Id$
-#
-
-include ../sunos4/Makedefs
-
-OBJS = pppdump.o bsd-comp.o deflate.o zlib.o
-CFLAGS = $(COPTS) -I../include/net
-
-all: pppdump
-
-pppdump: $(OBJS)
- $(CC) -o pppdump $(OBJS)
-
-clean:
- rm -f pppdump $(OBJS) *~
-
-install: pppdump
- $(INSTALL) -c pppdump $(BINDIR)/pppdump
- $(INSTALL) -c -m 444 pppdump.8 $(MANDIR)/man8/pppdump.8
diff --git a/mdk-stage1/ppp/pppdump/bsd-comp.c b/mdk-stage1/ppp/pppdump/bsd-comp.c
deleted file mode 100644
index 1e14e98bb..000000000
--- a/mdk-stage1/ppp/pppdump/bsd-comp.c
+++ /dev/null
@@ -1,750 +0,0 @@
-/* Because this code is derived from the 4.3BSD compress source:
- *
- *
- * Copyright (c) 1985, 1986 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * James A. Woods, derived from original work by Spencer Thomas
- * and Joseph Orost.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-/*
- * $Id$
- */
-
-#include <sys/types.h>
-#include <stddef.h>
-#include <stdlib.h>
-#include "ppp_defs.h"
-#include "ppp-comp.h"
-
-#if DO_BSD_COMPRESS
-
-/*
- * PPP "BSD compress" compression
- * The differences between this compression and the classic BSD LZW
- * source are obvious from the requirement that the classic code worked
- * with files while this handles arbitrarily long streams that
- * are broken into packets. They are:
- *
- * When the code size expands, a block of junk is not emitted by
- * the compressor and not expected by the decompressor.
- *
- * New codes are not necessarily assigned every time an old
- * code is output by the compressor. This is because a packet
- * end forces a code to be emitted, but does not imply that a
- * new sequence has been seen.
- *
- * The compression ratio is checked at the first end of a packet
- * after the appropriate gap. Besides simplifying and speeding
- * things up, this makes it more likely that the transmitter
- * and receiver will agree when the dictionary is cleared when
- * compression is not going well.
- */
-
-/*
- * A dictionary for doing BSD compress.
- */
-struct bsd_db {
- int totlen; /* length of this structure */
- u_int hsize; /* size of the hash table */
- u_char hshift; /* used in hash function */
- u_char n_bits; /* current bits/code */
- u_char maxbits;
- u_char debug;
- u_char unit;
- u_short seqno; /* sequence number of next packet */
- u_int hdrlen; /* header length to preallocate */
- u_int mru;
- u_int maxmaxcode; /* largest valid code */
- u_int max_ent; /* largest code in use */
- u_int in_count; /* uncompressed bytes, aged */
- u_int bytes_out; /* compressed bytes, aged */
- u_int ratio; /* recent compression ratio */
- u_int checkpoint; /* when to next check the ratio */
- u_int clear_count; /* times dictionary cleared */
- u_int incomp_count; /* incompressible packets */
- u_int incomp_bytes; /* incompressible bytes */
- u_int uncomp_count; /* uncompressed packets */
- u_int uncomp_bytes; /* uncompressed bytes */
- u_int comp_count; /* compressed packets */
- u_int comp_bytes; /* compressed bytes */
- u_short *lens; /* array of lengths of codes */
- struct bsd_dict {
- union { /* hash value */
- u_int32_t fcode;
- struct {
-#ifdef BSD_LITTLE_ENDIAN
- u_short prefix; /* preceding code */
- u_char suffix; /* last character of new code */
- u_char pad;
-#else
- u_char pad;
- u_char suffix; /* last character of new code */
- u_short prefix; /* preceding code */
-#endif
- } hs;
- } f;
- u_short codem1; /* output of hash table -1 */
- u_short cptr; /* map code to hash table entry */
- } dict[1];
-};
-
-#define BSD_OVHD 2 /* BSD compress overhead/packet */
-#define BSD_INIT_BITS BSD_MIN_BITS
-
-static void *bsd_decomp_alloc __P((u_char *options, int opt_len));
-static void bsd_free __P((void *state));
-static int bsd_decomp_init __P((void *state, u_char *options, int opt_len,
- int unit, int hdrlen, int mru, int debug));
-static void bsd_incomp __P((void *state, u_char *dmsg, int len));
-static int bsd_decompress __P((void *state, u_char *cmp, int inlen,
- u_char *dmp, int *outlen));
-static void bsd_reset __P((void *state));
-static void bsd_comp_stats __P((void *state, struct compstat *stats));
-
-/*
- * Exported procedures.
- */
-struct compressor ppp_bsd_compress = {
- CI_BSD_COMPRESS, /* compress_proto */
- bsd_decomp_alloc, /* decomp_alloc */
- bsd_free, /* decomp_free */
- bsd_decomp_init, /* decomp_init */
- bsd_reset, /* decomp_reset */
- bsd_decompress, /* decompress */
- bsd_incomp, /* incomp */
- bsd_comp_stats, /* decomp_stat */
-};
-
-/*
- * the next two codes should not be changed lightly, as they must not
- * lie within the contiguous general code space.
- */
-#define CLEAR 256 /* table clear output code */
-#define FIRST 257 /* first free entry */
-#define LAST 255
-
-#define MAXCODE(b) ((1 << (b)) - 1)
-#define BADCODEM1 MAXCODE(BSD_MAX_BITS)
-
-#define BSD_HASH(prefix,suffix,hshift) ((((u_int32_t)(suffix)) << (hshift)) \
- ^ (u_int32_t)(prefix))
-#define BSD_KEY(prefix,suffix) ((((u_int32_t)(suffix)) << 16) \
- + (u_int32_t)(prefix))
-
-#define CHECK_GAP 10000 /* Ratio check interval */
-
-#define RATIO_SCALE_LOG 8
-#define RATIO_SCALE (1<<RATIO_SCALE_LOG)
-#define RATIO_MAX (0x7fffffff>>RATIO_SCALE_LOG)
-
-/*
- * clear the dictionary
- */
-static void
-bsd_clear(db)
- struct bsd_db *db;
-{
- db->clear_count++;
- db->max_ent = FIRST-1;
- db->n_bits = BSD_INIT_BITS;
- db->ratio = 0;
- db->bytes_out = 0;
- db->in_count = 0;
- db->checkpoint = CHECK_GAP;
-}
-
-/*
- * If the dictionary is full, then see if it is time to reset it.
- *
- * Compute the compression ratio using fixed-point arithmetic
- * with 8 fractional bits.
- *
- * Since we have an infinite stream instead of a single file,
- * watch only the local compression ratio.
- *
- * Since both peers must reset the dictionary at the same time even in
- * the absence of CLEAR codes (while packets are incompressible), they
- * must compute the same ratio.
- */
-static int /* 1=output CLEAR */
-bsd_check(db)
- struct bsd_db *db;
-{
- u_int new_ratio;
-
- if (db->in_count >= db->checkpoint) {
- /* age the ratio by limiting the size of the counts */
- if (db->in_count >= RATIO_MAX
- || db->bytes_out >= RATIO_MAX) {
- db->in_count -= db->in_count/4;
- db->bytes_out -= db->bytes_out/4;
- }
-
- db->checkpoint = db->in_count + CHECK_GAP;
-
- if (db->max_ent >= db->maxmaxcode) {
- /* Reset the dictionary only if the ratio is worse,
- * or if it looks as if it has been poisoned
- * by incompressible data.
- *
- * This does not overflow, because
- * db->in_count <= RATIO_MAX.
- */
- new_ratio = db->in_count << RATIO_SCALE_LOG;
- if (db->bytes_out != 0)
- new_ratio /= db->bytes_out;
-
- if (new_ratio < db->ratio || new_ratio < 1 * RATIO_SCALE) {
- bsd_clear(db);
- return 1;
- }
- db->ratio = new_ratio;
- }
- }
- return 0;
-}
-
-/*
- * Return statistics.
- */
-static void
-bsd_comp_stats(state, stats)
- void *state;
- struct compstat *stats;
-{
- struct bsd_db *db = (struct bsd_db *) state;
- u_int out;
-
- stats->unc_bytes = db->uncomp_bytes;
- stats->unc_packets = db->uncomp_count;
- stats->comp_bytes = db->comp_bytes;
- stats->comp_packets = db->comp_count;
- stats->inc_bytes = db->incomp_bytes;
- stats->inc_packets = db->incomp_count;
- stats->ratio = db->in_count;
- out = db->bytes_out;
- if (stats->ratio <= 0x7fffff)
- stats->ratio <<= 8;
- else
- out >>= 8;
- if (out != 0)
- stats->ratio /= out;
-}
-
-/*
- * Reset state, as on a CCP ResetReq.
- */
-static void
-bsd_reset(state)
- void *state;
-{
- struct bsd_db *db = (struct bsd_db *) state;
-
- db->seqno = 0;
- bsd_clear(db);
- db->clear_count = 0;
-}
-
-/*
- * Allocate space for a (de) compressor.
- */
-static void *
-bsd_alloc(options, opt_len, decomp)
- u_char *options;
- int opt_len, decomp;
-{
- int bits;
- u_int newlen, hsize, hshift, maxmaxcode;
- struct bsd_db *db;
-
- if (opt_len != 3 || options[0] != CI_BSD_COMPRESS || options[1] != 3
- || BSD_VERSION(options[2]) != BSD_CURRENT_VERSION)
- return NULL;
-
- bits = BSD_NBITS(options[2]);
- switch (bits) {
- case 9: /* needs 82152 for both directions */
- case 10: /* needs 84144 */
- case 11: /* needs 88240 */
- case 12: /* needs 96432 */
- hsize = 5003;
- hshift = 4;
- break;
- case 13: /* needs 176784 */
- hsize = 9001;
- hshift = 5;
- break;
- case 14: /* needs 353744 */
- hsize = 18013;
- hshift = 6;
- break;
- case 15: /* needs 691440 */
- hsize = 35023;
- hshift = 7;
- break;
- case 16: /* needs 1366160--far too much, */
- /* hsize = 69001; */ /* and 69001 is too big for cptr */
- /* hshift = 8; */ /* in struct bsd_db */
- /* break; */
- default:
- return NULL;
- }
-
- maxmaxcode = MAXCODE(bits);
- newlen = sizeof(*db) + (hsize-1) * (sizeof(db->dict[0]));
- db = (struct bsd_db *) malloc(newlen);
- if (!db)
- return NULL;
- memset(db, 0, sizeof(*db) - sizeof(db->dict));
-
- if (!decomp) {
- db->lens = NULL;
- } else {
- db->lens = (u_short *) malloc((maxmaxcode+1) * sizeof(db->lens[0]));
- if (!db->lens) {
- free(db);
- return NULL;
- }
- }
-
- db->totlen = newlen;
- db->hsize = hsize;
- db->hshift = hshift;
- db->maxmaxcode = maxmaxcode;
- db->maxbits = bits;
-
- return (void *) db;
-}
-
-static void
-bsd_free(state)
- void *state;
-{
- struct bsd_db *db = (struct bsd_db *) state;
-
- if (db->lens)
- free(db->lens);
- free(db);
-}
-
-static void *
-bsd_decomp_alloc(options, opt_len)
- u_char *options;
- int opt_len;
-{
- return bsd_alloc(options, opt_len, 1);
-}
-
-/*
- * Initialize the database.
- */
-static int
-bsd_init(db, options, opt_len, unit, hdrlen, mru, debug, decomp)
- struct bsd_db *db;
- u_char *options;
- int opt_len, unit, hdrlen, mru, debug, decomp;
-{
- int i;
-
- if (opt_len < CILEN_BSD_COMPRESS
- || options[0] != CI_BSD_COMPRESS || options[1] != CILEN_BSD_COMPRESS
- || BSD_VERSION(options[2]) != BSD_CURRENT_VERSION
- || BSD_NBITS(options[2]) != db->maxbits
- || decomp && db->lens == NULL)
- return 0;
-
- if (decomp) {
- i = LAST+1;
- while (i != 0)
- db->lens[--i] = 1;
- }
- i = db->hsize;
- while (i != 0) {
- db->dict[--i].codem1 = BADCODEM1;
- db->dict[i].cptr = 0;
- }
-
- db->unit = unit;
- db->hdrlen = hdrlen;
- db->mru = mru;
- if (debug)
- db->debug = 1;
-
- bsd_reset(db);
-
- return 1;
-}
-
-static int
-bsd_decomp_init(state, options, opt_len, unit, hdrlen, mru, debug)
- void *state;
- u_char *options;
- int opt_len, unit, hdrlen, mru, debug;
-{
- return bsd_init((struct bsd_db *) state, options, opt_len,
- unit, hdrlen, mru, debug, 1);
-}
-
-
-/*
- * Update the "BSD Compress" dictionary on the receiver for
- * incompressible data by pretending to compress the incoming data.
- */
-static void
-bsd_incomp(state, dmsg, mlen)
- void *state;
- u_char *dmsg;
- int mlen;
-{
- struct bsd_db *db = (struct bsd_db *) state;
- u_int hshift = db->hshift;
- u_int max_ent = db->max_ent;
- u_int n_bits = db->n_bits;
- struct bsd_dict *dictp;
- u_int32_t fcode;
- u_char c;
- long hval, disp;
- int slen, ilen;
- u_int bitno = 7;
- u_char *rptr;
- u_int ent;
-
- rptr = dmsg;
- ent = rptr[0]; /* get the protocol */
- if (ent == 0) {
- ++rptr;
- --mlen;
- ent = rptr[0];
- }
- if ((ent & 1) == 0 || ent < 0x21 || ent > 0xf9)
- return;
-
- db->seqno++;
- ilen = 1; /* count the protocol as 1 byte */
- ++rptr;
- slen = dmsg + mlen - rptr;
- ilen += slen;
- for (; slen > 0; --slen) {
- c = *rptr++;
- fcode = BSD_KEY(ent, c);
- hval = BSD_HASH(ent, c, hshift);
- dictp = &db->dict[hval];
-
- /* validate and then check the entry */
- if (dictp->codem1 >= max_ent)
- goto nomatch;
- if (dictp->f.fcode == fcode) {
- ent = dictp->codem1+1;
- continue; /* found (prefix,suffix) */
- }
-
- /* continue probing until a match or invalid entry */
- disp = (hval == 0) ? 1 : hval;
- do {
- hval += disp;
- if (hval >= db->hsize)
- hval -= db->hsize;
- dictp = &db->dict[hval];
- if (dictp->codem1 >= max_ent)
- goto nomatch;
- } while (dictp->f.fcode != fcode);
- ent = dictp->codem1+1;
- continue; /* finally found (prefix,suffix) */
-
- nomatch: /* output (count) the prefix */
- bitno += n_bits;
-
- /* code -> hashtable */
- if (max_ent < db->maxmaxcode) {
- struct bsd_dict *dictp2;
- /* expand code size if needed */
- if (max_ent >= MAXCODE(n_bits))
- db->n_bits = ++n_bits;
-
- /* Invalidate previous hash table entry
- * assigned this code, and then take it over.
- */
- dictp2 = &db->dict[max_ent+1];
- if (db->dict[dictp2->cptr].codem1 == max_ent)
- db->dict[dictp2->cptr].codem1 = BADCODEM1;
- dictp2->cptr = hval;
- dictp->codem1 = max_ent;
- dictp->f.fcode = fcode;
-
- db->max_ent = ++max_ent;
- db->lens[max_ent] = db->lens[ent]+1;
- }
- ent = c;
- }
- bitno += n_bits; /* output (count) the last code */
- db->bytes_out += bitno/8;
- db->in_count += ilen;
- (void)bsd_check(db);
-
- ++db->incomp_count;
- db->incomp_bytes += ilen;
- ++db->uncomp_count;
- db->uncomp_bytes += ilen;
-
- /* Increase code size if we would have without the packet
- * boundary and as the decompressor will.
- */
- if (max_ent >= MAXCODE(n_bits) && max_ent < db->maxmaxcode)
- db->n_bits++;
-}
-
-
-/*
- * Decompress "BSD Compress"
- *
- * Because of patent problems, we return DECOMP_ERROR for errors
- * found by inspecting the input data and for system problems, but
- * DECOMP_FATALERROR for any errors which could possibly be said to
- * be being detected "after" decompression. For DECOMP_ERROR,
- * we can issue a CCP reset-request; for DECOMP_FATALERROR, we may be
- * infringing a patent of Motorola's if we do, so we take CCP down
- * instead.
- *
- * Given that the frame has the correct sequence number and a good FCS,
- * errors such as invalid codes in the input most likely indicate a
- * bug, so we return DECOMP_FATALERROR for them in order to turn off
- * compression, even though they are detected by inspecting the input.
- */
-static int
-bsd_decompress(state, cmsg, inlen, dmp, outlenp)
- void *state;
- u_char *cmsg, *dmp;
- int inlen, *outlenp;
-{
- struct bsd_db *db = (struct bsd_db *) state;
- u_int max_ent = db->max_ent;
- u_int32_t accm = 0;
- u_int bitno = 32; /* 1st valid bit in accm */
- u_int n_bits = db->n_bits;
- u_int tgtbitno = 32-n_bits; /* bitno when we have a code */
- struct bsd_dict *dictp;
- int explen, i, seq, len;
- u_int incode, oldcode, finchar;
- u_char *p, *rptr, *wptr;
- int ilen;
- int dlen, space, codelen, extra;
-
- rptr = cmsg;
- if (*rptr == 0)
- ++rptr;
- ++rptr; /* skip protocol (assumed 0xfd) */
- seq = (rptr[0] << 8) + rptr[1];
- rptr += BSD_OVHD;
- ilen = len = cmsg + inlen - rptr;
-
- /*
- * Check the sequence number and give up if it is not what we expect.
- */
- if (seq != db->seqno++) {
- if (db->debug)
- printf("bsd_decomp%d: bad sequence # %d, expected %d\n",
- db->unit, seq, db->seqno - 1);
- return DECOMP_ERROR;
- }
-
- wptr = dmp + db->hdrlen;
-
- oldcode = CLEAR;
- explen = 0;
- while (len > 0) {
- /*
- * Accumulate bytes until we have a complete code.
- * Then get the next code, relying on the 32-bit,
- * unsigned accm to mask the result.
- */
- bitno -= 8;
- accm |= *rptr++ << bitno;
- --len;
- if (tgtbitno < bitno)
- continue;
- incode = accm >> tgtbitno;
- accm <<= n_bits;
- bitno += n_bits;
-
- if (incode == CLEAR) {
- /*
- * The dictionary must only be cleared at
- * the end of a packet. But there could be an
- * empty message block at the end.
- */
- if (len > 0) {
- if (db->debug)
- printf("bsd_decomp%d: bad CLEAR\n", db->unit);
- return DECOMP_FATALERROR;
- }
- bsd_clear(db);
- explen = ilen = 0;
- break;
- }
-
- if (incode > max_ent + 2 || incode > db->maxmaxcode
- || incode > max_ent && oldcode == CLEAR) {
- if (db->debug) {
- printf("bsd_decomp%d: bad code 0x%x oldcode=0x%x ",
- db->unit, incode, oldcode);
- printf("max_ent=0x%x dlen=%d seqno=%d\n",
- max_ent, dlen, db->seqno);
- }
- return DECOMP_FATALERROR; /* probably a bug */
- }
-
- /* Special case for KwKwK string. */
- if (incode > max_ent) {
- finchar = oldcode;
- extra = 1;
- } else {
- finchar = incode;
- extra = 0;
- }
-
- codelen = db->lens[finchar];
- explen += codelen + extra;
- if (explen > db->mru + 1) {
- if (db->debug)
- printf("bsd_decomp%d: ran out of mru\n", db->unit);
- return DECOMP_FATALERROR;
- }
-
- /*
- * Decode this code and install it in the decompressed buffer.
- */
- p = (wptr += codelen);
- while (finchar > LAST) {
- dictp = &db->dict[db->dict[finchar].cptr];
-#ifdef DEBUG
- --codelen;
- if (codelen <= 0) {
- printf("bsd_decomp%d: fell off end of chain ", db->unit);
- printf("0x%x at 0x%x by 0x%x, max_ent=0x%x\n",
- incode, finchar, db->dict[finchar].cptr, max_ent);
- return DECOMP_FATALERROR;
- }
- if (dictp->codem1 != finchar-1) {
- printf("bsd_decomp%d: bad code chain 0x%x finchar=0x%x ",
- db->unit, incode, finchar);
- printf("oldcode=0x%x cptr=0x%x codem1=0x%x\n", oldcode,
- db->dict[finchar].cptr, dictp->codem1);
- return DECOMP_FATALERROR;
- }
-#endif
- *--p = dictp->f.hs.suffix;
- finchar = dictp->f.hs.prefix;
- }
- *--p = finchar;
-
-#ifdef DEBUG
- if (--codelen != 0)
- printf("bsd_decomp%d: short by %d after code 0x%x, max_ent=0x%x\n",
- db->unit, codelen, incode, max_ent);
-#endif
-
- if (extra) /* the KwKwK case again */
- *wptr++ = finchar;
-
- /*
- * If not first code in a packet, and
- * if not out of code space, then allocate a new code.
- *
- * Keep the hash table correct so it can be used
- * with uncompressed packets.
- */
- if (oldcode != CLEAR && max_ent < db->maxmaxcode) {
- struct bsd_dict *dictp2;
- u_int32_t fcode;
- int hval, disp;
-
- fcode = BSD_KEY(oldcode,finchar);
- hval = BSD_HASH(oldcode,finchar,db->hshift);
- dictp = &db->dict[hval];
-
- /* look for a free hash table entry */
- if (dictp->codem1 < max_ent) {
- disp = (hval == 0) ? 1 : hval;
- do {
- hval += disp;
- if (hval >= db->hsize)
- hval -= db->hsize;
- dictp = &db->dict[hval];
- } while (dictp->codem1 < max_ent);
- }
-
- /*
- * Invalidate previous hash table entry
- * assigned this code, and then take it over
- */
- dictp2 = &db->dict[max_ent+1];
- if (db->dict[dictp2->cptr].codem1 == max_ent) {
- db->dict[dictp2->cptr].codem1 = BADCODEM1;
- }
- dictp2->cptr = hval;
- dictp->codem1 = max_ent;
- dictp->f.fcode = fcode;
-
- db->max_ent = ++max_ent;
- db->lens[max_ent] = db->lens[oldcode]+1;
-
- /* Expand code size if needed. */
- if (max_ent >= MAXCODE(n_bits) && max_ent < db->maxmaxcode) {
- db->n_bits = ++n_bits;
- tgtbitno = 32-n_bits;
- }
- }
- oldcode = incode;
- }
- *outlenp = wptr - (dmp + db->hdrlen);
-
- /*
- * Keep the checkpoint right so that incompressible packets
- * clear the dictionary at the right times.
- */
- db->bytes_out += ilen;
- db->in_count += explen;
- if (bsd_check(db) && db->debug) {
- printf("bsd_decomp%d: peer should have cleared dictionary\n",
- db->unit);
- }
-
- ++db->comp_count;
- db->comp_bytes += ilen + BSD_OVHD;
- ++db->uncomp_count;
- db->uncomp_bytes += explen;
-
- return DECOMP_OK;
-}
-#endif /* DO_BSD_COMPRESS */
diff --git a/mdk-stage1/ppp/pppdump/deflate.c b/mdk-stage1/ppp/pppdump/deflate.c
deleted file mode 100644
index 08e8abc0d..000000000
--- a/mdk-stage1/ppp/pppdump/deflate.c
+++ /dev/null
@@ -1,344 +0,0 @@
-/*
- * ppp_deflate.c - interface the zlib procedures for Deflate compression
- * and decompression (as used by gzip) to the PPP code.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-#include <sys/types.h>
-#include <stddef.h>
-#include <stdlib.h>
-#include "ppp_defs.h"
-#include "ppp-comp.h"
-#include "zlib.h"
-
-#if DO_DEFLATE
-
-#define DEFLATE_DEBUG 1
-
-/*
- * State for a Deflate (de)compressor.
- */
-struct deflate_state {
- int seqno;
- int w_size;
- int unit;
- int hdrlen;
- int mru;
- int debug;
- z_stream strm;
- struct compstat stats;
-};
-
-#define DEFLATE_OVHD 2 /* Deflate overhead/packet */
-
-static void *z_alloc __P((void *, u_int items, u_int size));
-static void z_free __P((void *, void *ptr, u_int nb));
-static void *z_decomp_alloc __P((u_char *options, int opt_len));
-static void z_decomp_free __P((void *state));
-static int z_decomp_init __P((void *state, u_char *options, int opt_len,
- int unit, int hdrlen, int mru, int debug));
-static void z_incomp __P((void *state, u_char *dmsg, int len));
-static int z_decompress __P((void *state, u_char *cmp, int inlen,
- u_char *dmp, int *outlenp));
-static void z_decomp_reset __P((void *state));
-static void z_comp_stats __P((void *state, struct compstat *stats));
-
-/*
- * Procedures exported to if_ppp.c.
- */
-struct compressor ppp_deflate = {
- CI_DEFLATE, /* compress_proto */
- z_decomp_alloc, /* decomp_alloc */
- z_decomp_free, /* decomp_free */
- z_decomp_init, /* decomp_init */
- z_decomp_reset, /* decomp_reset */
- z_decompress, /* decompress */
- z_incomp, /* incomp */
- z_comp_stats, /* decomp_stat */
-};
-
-/*
- * Space allocation and freeing routines for use by zlib routines.
- */
-static void *
-z_alloc(notused, items, size)
- void *notused;
- u_int items, size;
-{
- return malloc(items * size);
-}
-
-static void
-z_free(notused, ptr, nbytes)
- void *notused;
- void *ptr;
- u_int nbytes;
-{
- free(ptr);
-}
-
-static void
-z_comp_stats(arg, stats)
- void *arg;
- struct compstat *stats;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
- u_int out;
-
- *stats = state->stats;
- stats->ratio = stats->unc_bytes;
- out = stats->comp_bytes + stats->unc_bytes;
- if (stats->ratio <= 0x7ffffff)
- stats->ratio <<= 8;
- else
- out >>= 8;
- if (out != 0)
- stats->ratio /= out;
-}
-
-/*
- * Allocate space for a decompressor.
- */
-static void *
-z_decomp_alloc(options, opt_len)
- u_char *options;
- int opt_len;
-{
- struct deflate_state *state;
- int w_size;
-
- if (opt_len != CILEN_DEFLATE || options[0] != CI_DEFLATE
- || options[1] != CILEN_DEFLATE
- || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL
- || options[3] != DEFLATE_CHK_SEQUENCE)
- return NULL;
- w_size = DEFLATE_SIZE(options[2]);
- if (w_size < DEFLATE_MIN_SIZE || w_size > DEFLATE_MAX_SIZE)
- return NULL;
-
- state = (struct deflate_state *) malloc(sizeof(*state));
- if (state == NULL)
- return NULL;
-
- state->strm.next_out = NULL;
- state->strm.zalloc = (alloc_func) z_alloc;
- state->strm.zfree = (free_func) z_free;
- if (inflateInit2(&state->strm, -w_size) != Z_OK) {
- free(state);
- return NULL;
- }
-
- state->w_size = w_size;
- memset(&state->stats, 0, sizeof(state->stats));
- return (void *) state;
-}
-
-static void
-z_decomp_free(arg)
- void *arg;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
-
- inflateEnd(&state->strm);
- free(state);
-}
-
-static int
-z_decomp_init(arg, options, opt_len, unit, hdrlen, mru, debug)
- void *arg;
- u_char *options;
- int opt_len, unit, hdrlen, mru, debug;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
-
- if (opt_len < CILEN_DEFLATE || options[0] != CI_DEFLATE
- || options[1] != CILEN_DEFLATE
- || DEFLATE_METHOD(options[2]) != DEFLATE_METHOD_VAL
- || DEFLATE_SIZE(options[2]) != state->w_size
- || options[3] != DEFLATE_CHK_SEQUENCE)
- return 0;
-
- state->seqno = 0;
- state->unit = unit;
- state->hdrlen = hdrlen;
- state->debug = debug;
- state->mru = mru;
-
- inflateReset(&state->strm);
-
- return 1;
-}
-
-static void
-z_decomp_reset(arg)
- void *arg;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
-
- state->seqno = 0;
- inflateReset(&state->strm);
-}
-
-/*
- * Decompress a Deflate-compressed packet.
- *
- * Because of patent problems, we return DECOMP_ERROR for errors
- * found by inspecting the input data and for system problems, but
- * DECOMP_FATALERROR for any errors which could possibly be said to
- * be being detected "after" decompression. For DECOMP_ERROR,
- * we can issue a CCP reset-request; for DECOMP_FATALERROR, we may be
- * infringing a patent of Motorola's if we do, so we take CCP down
- * instead.
- *
- * Given that the frame has the correct sequence number and a good FCS,
- * errors such as invalid codes in the input most likely indicate a
- * bug, so we return DECOMP_FATALERROR for them in order to turn off
- * compression, even though they are detected by inspecting the input.
- */
-static int
-z_decompress(arg, mi, inlen, mo, outlenp)
- void *arg;
- u_char *mi, *mo;
- int inlen, *outlenp;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
- u_char *rptr, *wptr;
- int rlen, olen, ospace;
- int seq, i, flush, r, decode_proto;
-
- rptr = mi;
- if (*rptr == 0)
- ++rptr;
- ++rptr;
-
- /* Check the sequence number. */
- seq = (rptr[0] << 8) + rptr[1];
- rptr += 2;
- if (seq != state->seqno) {
-#if !DEFLATE_DEBUG
- if (state->debug)
-#endif
- printf("z_decompress%d: bad seq # %d, expected %d\n",
- state->unit, seq, state->seqno);
- return DECOMP_ERROR;
- }
- ++state->seqno;
-
- /*
- * Set up to call inflate.
- */
- wptr = mo;
- state->strm.next_in = rptr;
- state->strm.avail_in = mi + inlen - rptr;
- rlen = state->strm.avail_in + PPP_HDRLEN + DEFLATE_OVHD;
- state->strm.next_out = wptr;
- state->strm.avail_out = state->mru + 2;
-
- r = inflate(&state->strm, Z_PACKET_FLUSH);
- if (r != Z_OK) {
-#if !DEFLATE_DEBUG
- if (state->debug)
-#endif
- printf("z_decompress%d: inflate returned %d (%s)\n",
- state->unit, r, (state->strm.msg? state->strm.msg: ""));
- return DECOMP_FATALERROR;
- }
- olen = state->mru + 2 - state->strm.avail_out;
- *outlenp = olen;
-
- if ((wptr[0] & 1) != 0)
- ++olen; /* for suppressed protocol high byte */
- olen += 2; /* for address, control */
-
-#if DEFLATE_DEBUG
- if (olen > state->mru + PPP_HDRLEN)
- printf("ppp_deflate%d: exceeded mru (%d > %d)\n",
- state->unit, olen, state->mru + PPP_HDRLEN);
-#endif
-
- state->stats.unc_bytes += olen;
- state->stats.unc_packets++;
- state->stats.comp_bytes += rlen;
- state->stats.comp_packets++;
-
- return DECOMP_OK;
-}
-
-/*
- * Incompressible data has arrived - add it to the history.
- */
-static void
-z_incomp(arg, mi, mlen)
- void *arg;
- u_char *mi;
- int mlen;
-{
- struct deflate_state *state = (struct deflate_state *) arg;
- u_char *rptr;
- int rlen, proto, r;
-
- /*
- * Check that the protocol is one we handle.
- */
- rptr = mi;
- proto = rptr[0];
- if ((proto & 1) == 0)
- proto = (proto << 8) + rptr[1];
- if (proto > 0x3fff || proto == 0xfd || proto == 0xfb)
- return;
-
- ++state->seqno;
-
- if (rptr[0] == 0)
- ++rptr;
- rlen = mi + mlen - rptr;
- state->strm.next_in = rptr;
- state->strm.avail_in = rlen;
- r = inflateIncomp(&state->strm);
- if (r != Z_OK) {
- /* gak! */
-#if !DEFLATE_DEBUG
- if (state->debug)
-#endif
- printf("z_incomp%d: inflateIncomp returned %d (%s)\n",
- state->unit, r, (state->strm.msg? state->strm.msg: ""));
- return;
- }
-
- /*
- * Update stats.
- */
- if (proto <= 0xff)
- ++rlen;
- rlen += 2;
- state->stats.inc_bytes += rlen;
- state->stats.inc_packets++;
- state->stats.unc_bytes += rlen;
- state->stats.unc_packets++;
-}
-
-#endif /* DO_DEFLATE */
diff --git a/mdk-stage1/ppp/pppdump/ppp-comp.h b/mdk-stage1/ppp/pppdump/ppp-comp.h
deleted file mode 100644
index 9221c0db4..000000000
--- a/mdk-stage1/ppp/pppdump/ppp-comp.h
+++ /dev/null
@@ -1,150 +0,0 @@
-/*
- * ppp-comp.h - Definitions for doing PPP packet compression.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-#ifndef _NET_PPP_COMP_H
-#define _NET_PPP_COMP_H
-
-/*
- * The following symbols control whether we include code for
- * various compression methods.
- */
-#ifndef DO_BSD_COMPRESS
-#define DO_BSD_COMPRESS 1 /* by default, include BSD-Compress */
-#endif
-#ifndef DO_DEFLATE
-#define DO_DEFLATE 1 /* by default, include Deflate */
-#endif
-#define DO_PREDICTOR_1 0
-#define DO_PREDICTOR_2 0
-
-/*
- * Structure giving methods for compression/decompression.
- */
-struct compressor {
- int compress_proto; /* CCP compression protocol number */
-
- /* Allocate space for a decompressor (receive side) */
- void *(*decomp_alloc) __P((u_char *options, int opt_len));
- /* Free space used by a decompressor */
- void (*decomp_free) __P((void *state));
- /* Initialize a decompressor */
- int (*decomp_init) __P((void *state, u_char *options, int opt_len,
- int unit, int hdrlen, int mru, int debug));
- /* Reset a decompressor */
- void (*decomp_reset) __P((void *state));
- /* Decompress a packet. */
- int (*decompress) __P((void *state, u_char *mp, int inlen,
- u_char *dmp, int *outlen));
- /* Update state for an incompressible packet received */
- void (*incomp) __P((void *state, u_char *mp, int len));
- /* Return decompression statistics */
- void (*decomp_stat) __P((void *state, struct compstat *stats));
-};
-
-/*
- * Return values for decompress routine.
- * We need to make these distinctions so that we can disable certain
- * useful functionality, namely sending a CCP reset-request as a result
- * of an error detected after decompression. This is to avoid infringing
- * a patent held by Motorola.
- * Don't you just lurve software patents.
- */
-#define DECOMP_OK 0 /* everything went OK */
-#define DECOMP_ERROR 1 /* error detected before decomp. */
-#define DECOMP_FATALERROR 2 /* error detected after decomp. */
-
-/*
- * CCP codes.
- */
-#define CCP_CONFREQ 1
-#define CCP_CONFACK 2
-#define CCP_CONFNAK 3
-#define CCP_CONFREJ 4
-#define CCP_TERMREQ 5
-#define CCP_TERMACK 6
-#define CCP_RESETREQ 14
-#define CCP_RESETACK 15
-
-/*
- * Max # bytes for a CCP option
- */
-#define CCP_MAX_OPTION_LENGTH 32
-
-/*
- * Parts of a CCP packet.
- */
-#define CCP_CODE(dp) ((dp)[0])
-#define CCP_ID(dp) ((dp)[1])
-#define CCP_LENGTH(dp) (((dp)[2] << 8) + (dp)[3])
-#define CCP_HDRLEN 4
-
-#define CCP_OPT_CODE(dp) ((dp)[0])
-#define CCP_OPT_LENGTH(dp) ((dp)[1])
-#define CCP_OPT_MINLEN 2
-
-/*
- * Definitions for BSD-Compress.
- */
-#define CI_BSD_COMPRESS 21 /* config. option for BSD-Compress */
-#define CILEN_BSD_COMPRESS 3 /* length of config. option */
-
-/* Macros for handling the 3rd byte of the BSD-Compress config option. */
-#define BSD_NBITS(x) ((x) & 0x1F) /* number of bits requested */
-#define BSD_VERSION(x) ((x) >> 5) /* version of option format */
-#define BSD_CURRENT_VERSION 1 /* current version number */
-#define BSD_MAKE_OPT(v, n) (((v) << 5) | (n))
-
-#define BSD_MIN_BITS 9 /* smallest code size supported */
-#define BSD_MAX_BITS 15 /* largest code size supported */
-
-/*
- * Definitions for Deflate.
- */
-#define CI_DEFLATE 26 /* config option for Deflate */
-#define CI_DEFLATE_DRAFT 24 /* value used in original draft RFC */
-#define CILEN_DEFLATE 4 /* length of its config option */
-
-#define DEFLATE_MIN_SIZE 8
-#define DEFLATE_MAX_SIZE 15
-#define DEFLATE_METHOD_VAL 8
-#define DEFLATE_SIZE(x) (((x) >> 4) + DEFLATE_MIN_SIZE)
-#define DEFLATE_METHOD(x) ((x) & 0x0F)
-#define DEFLATE_MAKE_OPT(w) ((((w) - DEFLATE_MIN_SIZE) << 4) \
- + DEFLATE_METHOD_VAL)
-#define DEFLATE_CHK_SEQUENCE 0
-
-/*
- * Definitions for other, as yet unsupported, compression methods.
- */
-#define CI_PREDICTOR_1 1 /* config option for Predictor-1 */
-#define CILEN_PREDICTOR_1 2 /* length of its config option */
-#define CI_PREDICTOR_2 2 /* config option for Predictor-2 */
-#define CILEN_PREDICTOR_2 2 /* length of its config option */
-
-#endif /* _NET_PPP_COMP_H */
diff --git a/mdk-stage1/ppp/pppdump/pppdump.8 b/mdk-stage1/ppp/pppdump/pppdump.8
deleted file mode 100644
index c0172f519..000000000
--- a/mdk-stage1/ppp/pppdump/pppdump.8
+++ /dev/null
@@ -1,62 +0,0 @@
-.\" @(#) $Id$
-.TH PPPDUMP 8 "1 April 1999"
-.SH NAME
-pppdump \- convert PPP record file to readable format
-.SH SYNOPSIS
-.B pppdump
-[
-.B -h
-|
-.B -p
-[
-.B -d
-]] [
-.B -r
-] [
-.B -m \fImru
-] [
-.I file \fR...
-]
-.ti 12
-.SH DESCRIPTION
-The
-.B pppdump
-utility converts the files written using the \fIrecord\fR option of
-.B pppd
-into a human-readable format. If one or more filenames are specified,
-.B pppdump
-will read each in turn; otherwise it will read its standard input. In
-each case the result is written to standard output.
-.PP
-The options are as follows:
-.TP
-.B -h
-Prints the bytes sent and received in hexadecimal. If neither this
-option nor the \fB-p\fR option is specified, the bytes are printed as
-the characters themselves, with non-printing and non-ASCII characters
-printed as escape sequences.
-.TP
-.B -p
-Collects the bytes sent and received into PPP packets, interpreting
-the async HDLC framing and escape characters and checking the FCS
-(frame check sequence) of each packet. The packets are printed as hex
-values and as characters (non-printable characters are printed as
-`.').
-.TP
-.B -d
-With the \fB-p\fR option, this option causes
-.B pppdump
-to decompress packets which have been compressed with the BSD-Compress
-or Deflate methods.
-.TP
-.B -r
-Reverses the direction indicators, so that `sent' is printed for
-bytes or packets received, and `rcvd' is printed for bytes or packets
-sent.
-.TP
-.B -m \fImru
-Use \fImru\fR as the MRU (maximum receive unit) for both directions of
-the link when checking for over-length PPP packets (with the \fB-p\fR
-option).
-.SH SEE ALSO
-pppd(8)
diff --git a/mdk-stage1/ppp/pppdump/pppdump.c b/mdk-stage1/ppp/pppdump/pppdump.c
deleted file mode 100644
index a8e69d4bf..000000000
--- a/mdk-stage1/ppp/pppdump/pppdump.c
+++ /dev/null
@@ -1,502 +0,0 @@
-/*
- * pppdump - print out the contents of a record file generated by
- * pppd in readable form.
- *
- * Copyright (C) 1999 Paul Mackerras. All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms. The name of the author
- * may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-#include <stdio.h>
-#include <unistd.h>
-#include <time.h>
-#include <sys/types.h>
-#include "ppp_defs.h"
-#include "ppp-comp.h"
-
-int hexmode;
-int pppmode;
-int reverse;
-int decompress;
-int mru = 1500;
-int abs_times;
-time_t start_time;
-int start_time_tenths;
-int tot_sent, tot_rcvd;
-
-extern int optind;
-extern char *optarg;
-
-main(ac, av)
- int ac;
- char **av;
-{
- int i;
- char *p;
- FILE *f;
-
- while ((i = getopt(ac, av, "hprdm:a")) != -1) {
- switch (i) {
- case 'h':
- hexmode = 1;
- break;
- case 'p':
- pppmode = 1;
- break;
- case 'r':
- reverse = 1;
- break;
- case 'd':
- decompress = 1;
- break;
- case 'm':
- mru = atoi(optarg);
- break;
- case 'a':
- abs_times = 1;
- break;
- default:
- fprintf(stderr, "Usage: %s [-h | -p[d]] [-r] [-m mru] [-a] [file ...]\n", av[0]);
- exit(1);
- }
- }
- if (optind >= ac)
- dumplog(stdin);
- else {
- for (i = optind; i < ac; ++i) {
- p = av[i];
- if ((f = fopen(p, "r")) == NULL) {
- perror(p);
- exit(1);
- }
- if (pppmode)
- dumpppp(f);
- else
- dumplog(f);
- fclose(f);
- }
- }
- exit(0);
-}
-
-dumplog(f)
- FILE *f;
-{
- int c, n, k, col;
- int nb, c2;
- unsigned char buf[16];
-
- while ((c = getc(f)) != EOF) {
- switch (c) {
- case 1:
- case 2:
- if (reverse)
- c = 3 - c;
- printf("%s %c", c==1? "sent": "rcvd", hexmode? ' ': '"');
- col = 6;
- n = getc(f);
- n = (n << 8) + getc(f);
- *(c==1? &tot_sent: &tot_rcvd) += n;
- nb = 0;
- for (; n > 0; --n) {
- c = getc(f);
- if (c == EOF) {
- printf("\nEOF\n");
- exit(0);
- }
- if (hexmode) {
- if (nb >= 16) {
- printf(" ");
- for (k = 0; k < nb; ++k) {
- c2 = buf[k];
- putchar((' ' <= c2 && c2 <= '~')? c2: '.');
- }
- printf("\n ");
- nb = 0;
- }
- buf[nb++] = c;
- printf(" %.2x", c);
- } else {
- k = (' ' <= c && c <= '~')? (c != '\\' && c != '"')? 1: 2: 3;
- if ((col += k) >= 78) {
- printf("\n ");
- col = 6 + k;
- }
- switch (k) {
- case 1:
- putchar(c);
- break;
- case 2:
- printf("\\%c", c);
- break;
- case 3:
- printf("\\%.2x", c);
- break;
- }
- }
- }
- if (hexmode) {
- for (k = nb; k < 16; ++k)
- printf(" ");
- printf(" ");
- for (k = 0; k < nb; ++k) {
- c2 = buf[k];
- putchar((' ' <= c2 && c2 <= '~')? c2: '.');
- }
- } else
- putchar('"');
- printf("\n");
- break;
- case 3:
- case 4:
- printf("end %s\n", c==3? "send": "recv");
- break;
- case 5:
- case 6:
- case 7:
- show_time(f, c);
- break;
- default:
- printf("?%.2x\n");
- }
- }
-}
-
-/*
- * FCS lookup table as calculated by genfcstab.
- */
-static u_short fcstab[256] = {
- 0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf,
- 0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5, 0xe97e, 0xf8f7,
- 0x1081, 0x0108, 0x3393, 0x221a, 0x56a5, 0x472c, 0x75b7, 0x643e,
- 0x9cc9, 0x8d40, 0xbfdb, 0xae52, 0xdaed, 0xcb64, 0xf9ff, 0xe876,
- 0x2102, 0x308b, 0x0210, 0x1399, 0x6726, 0x76af, 0x4434, 0x55bd,
- 0xad4a, 0xbcc3, 0x8e58, 0x9fd1, 0xeb6e, 0xfae7, 0xc87c, 0xd9f5,
- 0x3183, 0x200a, 0x1291, 0x0318, 0x77a7, 0x662e, 0x54b5, 0x453c,
- 0xbdcb, 0xac42, 0x9ed9, 0x8f50, 0xfbef, 0xea66, 0xd8fd, 0xc974,
- 0x4204, 0x538d, 0x6116, 0x709f, 0x0420, 0x15a9, 0x2732, 0x36bb,
- 0xce4c, 0xdfc5, 0xed5e, 0xfcd7, 0x8868, 0x99e1, 0xab7a, 0xbaf3,
- 0x5285, 0x430c, 0x7197, 0x601e, 0x14a1, 0x0528, 0x37b3, 0x263a,
- 0xdecd, 0xcf44, 0xfddf, 0xec56, 0x98e9, 0x8960, 0xbbfb, 0xaa72,
- 0x6306, 0x728f, 0x4014, 0x519d, 0x2522, 0x34ab, 0x0630, 0x17b9,
- 0xef4e, 0xfec7, 0xcc5c, 0xddd5, 0xa96a, 0xb8e3, 0x8a78, 0x9bf1,
- 0x7387, 0x620e, 0x5095, 0x411c, 0x35a3, 0x242a, 0x16b1, 0x0738,
- 0xffcf, 0xee46, 0xdcdd, 0xcd54, 0xb9eb, 0xa862, 0x9af9, 0x8b70,
- 0x8408, 0x9581, 0xa71a, 0xb693, 0xc22c, 0xd3a5, 0xe13e, 0xf0b7,
- 0x0840, 0x19c9, 0x2b52, 0x3adb, 0x4e64, 0x5fed, 0x6d76, 0x7cff,
- 0x9489, 0x8500, 0xb79b, 0xa612, 0xd2ad, 0xc324, 0xf1bf, 0xe036,
- 0x18c1, 0x0948, 0x3bd3, 0x2a5a, 0x5ee5, 0x4f6c, 0x7df7, 0x6c7e,
- 0xa50a, 0xb483, 0x8618, 0x9791, 0xe32e, 0xf2a7, 0xc03c, 0xd1b5,
- 0x2942, 0x38cb, 0x0a50, 0x1bd9, 0x6f66, 0x7eef, 0x4c74, 0x5dfd,
- 0xb58b, 0xa402, 0x9699, 0x8710, 0xf3af, 0xe226, 0xd0bd, 0xc134,
- 0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c,
- 0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028, 0x91a1, 0xa33a, 0xb2b3,
- 0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb,
- 0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9, 0x8120, 0xb3bb, 0xa232,
- 0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a,
- 0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1,
- 0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb, 0x0e70, 0x1ff9,
- 0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab, 0xa022, 0x92b9, 0x8330,
- 0x7bc7, 0x6a4e, 0x58d5, 0x495c, 0x3de3, 0x2c6a, 0x1ef1, 0x0f78
-};
-
-struct pkt {
- int cnt;
- int esc;
- int flags;
- struct compressor *comp;
- void *state;
- unsigned char buf[8192];
-} spkt, rpkt;
-
-/* Values for flags */
-#define CCP_ISUP 1
-#define CCP_ERROR 2
-#define CCP_FATALERROR 4
-#define CCP_ERR (CCP_ERROR | CCP_FATALERROR)
-#define CCP_DECOMP_RUN 8
-
-unsigned char dbuf[8192];
-
-dumpppp(f)
- FILE *f;
-{
- int c, n, k;
- int nb, nl, dn, proto, rv;
- char *dir, *q;
- unsigned char *p, *r, *endp;
- unsigned char *d;
- unsigned short fcs;
- struct pkt *pkt;
-
- spkt.cnt = rpkt.cnt = 0;
- spkt.esc = rpkt.esc = 0;
- while ((c = getc(f)) != EOF) {
- switch (c) {
- case 1:
- case 2:
- if (reverse)
- c = 3 - c;
- dir = c==1? "sent": "rcvd";
- pkt = c==1? &spkt: &rpkt;
- n = getc(f);
- n = (n << 8) + getc(f);
- *(c==1? &tot_sent: &tot_rcvd) += n;
- for (; n > 0; --n) {
- c = getc(f);
- switch (c) {
- case EOF:
- printf("\nEOF\n");
- if (spkt.cnt > 0)
- printf("[%d bytes in incomplete send packet]\n",
- spkt.cnt);
- if (rpkt.cnt > 0)
- printf("[%d bytes in incomplete recv packet]\n",
- rpkt.cnt);
- exit(0);
- case '~':
- if (pkt->cnt > 0) {
- q = dir;
- if (pkt->esc) {
- printf("%s aborted packet:\n ", dir);
- q = " ";
- }
- nb = pkt->cnt;
- p = pkt->buf;
- pkt->cnt = 0;
- pkt->esc = 0;
- if (nb <= 2) {
- printf("%s short packet [%d bytes]:", q, nb);
- for (k = 0; k < nb; ++k)
- printf(" %.2x", p[k]);
- printf("\n");
- break;
- }
- fcs = PPP_INITFCS;
- for (k = 0; k < nb; ++k)
- fcs = PPP_FCS(fcs, p[k]);
- fcs &= 0xFFFF;
- nb -= 2;
- endp = p + nb;
- r = p;
- if (r[0] == 0xff && r[1] == 3)
- r += 2;
- if ((r[0] & 1) == 0)
- ++r;
- ++r;
- if (endp - r > mru)
- printf(" ERROR: length (%d) > MRU (%d)\n",
- endp - r, mru);
- if (decompress && fcs == PPP_GOODFCS) {
- /* See if this is a CCP or compressed packet */
- d = dbuf;
- r = p;
- if (r[0] == 0xff && r[1] == 3) {
- *d++ = *r++;
- *d++ = *r++;
- }
- proto = r[0];
- if ((proto & 1) == 0)
- proto = (proto << 8) + r[1];
- if (proto == PPP_CCP) {
- handle_ccp(pkt, r + 2, endp - r - 2);
- } else if (proto == PPP_COMP) {
- if ((pkt->flags & CCP_ISUP)
- && (pkt->flags & CCP_DECOMP_RUN)
- && pkt->state
- && (pkt->flags & CCP_ERR) == 0) {
- rv = pkt->comp->decompress(pkt->state, r,
- endp - r, d, &dn);
- switch (rv) {
- case DECOMP_OK:
- p = dbuf;
- nb = d + dn - p;
- if ((d[0] & 1) == 0)
- --dn;
- --dn;
- if (dn > mru)
- printf(" ERROR: decompressed length (%d) > MRU (%d)\n", dn, mru);
- break;
- case DECOMP_ERROR:
- printf(" DECOMPRESSION ERROR\n");
- pkt->flags |= CCP_ERROR;
- break;
- case DECOMP_FATALERROR:
- printf(" FATAL DECOMPRESSION ERROR\n");
- pkt->flags |= CCP_FATALERROR;
- break;
- }
- }
- } else if (pkt->state
- && (pkt->flags & CCP_DECOMP_RUN)) {
- pkt->comp->incomp(pkt->state, r, endp - r);
- }
- }
- do {
- nl = nb < 16? nb: 16;
- printf("%s ", q);
- for (k = 0; k < nl; ++k)
- printf(" %.2x", p[k]);
- for (; k < 16; ++k)
- printf(" ");
- printf(" ");
- for (k = 0; k < nl; ++k) {
- c = p[k];
- putchar((' ' <= c && c <= '~')? c: '.');
- }
- printf("\n");
- q = " ";
- p += nl;
- nb -= nl;
- } while (nb > 0);
- if (fcs != PPP_GOODFCS)
- printf(" BAD FCS: (residue = %x)\n", fcs);
- }
- break;
- case '}':
- if (!pkt->esc) {
- pkt->esc = 1;
- break;
- }
- /* else fall through */
- default:
- if (pkt->esc) {
- c ^= 0x20;
- pkt->esc = 0;
- }
- pkt->buf[pkt->cnt++] = c;
- break;
- }
- }
- break;
- case 3:
- case 4:
- if (reverse)
- c = 7 - c;
- dir = c==3? "send": "recv";
- pkt = c==3? &spkt: &rpkt;
- printf("end %s", dir);
- if (pkt->cnt > 0)
- printf(" [%d bytes in incomplete packet]", pkt->cnt);
- printf("\n");
- break;
- case 5:
- case 6:
- case 7:
- show_time(f, c);
- break;
- default:
- printf("?%.2x\n");
- }
- }
-}
-
-extern struct compressor ppp_bsd_compress, ppp_deflate;
-
-struct compressor *compressors[] = {
-#if DO_BSD_COMPRESS
- &ppp_bsd_compress,
-#endif
-#if DO_DEFLATE
- &ppp_deflate,
-#endif
- NULL
-};
-
-handle_ccp(cp, dp, len)
- struct pkt *cp;
- u_char *dp;
- int len;
-{
- int clen;
- struct compressor **comp;
-
- if (len < CCP_HDRLEN)
- return;
- clen = CCP_LENGTH(dp);
- if (clen > len)
- return;
-
- switch (CCP_CODE(dp)) {
- case CCP_CONFACK:
- cp->flags &= ~(CCP_DECOMP_RUN | CCP_ISUP);
- if (clen < CCP_HDRLEN + CCP_OPT_MINLEN
- || clen < CCP_HDRLEN + CCP_OPT_LENGTH(dp + CCP_HDRLEN))
- break;
- dp += CCP_HDRLEN;
- clen -= CCP_HDRLEN;
- for (comp = compressors; *comp != NULL; ++comp) {
- if ((*comp)->compress_proto == dp[0]) {
- if (cp->state != NULL) {
- (*cp->comp->decomp_free)(cp->state);
- cp->state = NULL;
- }
- cp->comp = *comp;
- cp->state = (*comp)->decomp_alloc(dp, CCP_OPT_LENGTH(dp));
- cp->flags |= CCP_ISUP;
- if (cp->state != NULL
- && (*cp->comp->decomp_init)
- (cp->state, dp, clen, 0, 0, 8192, 1))
- cp->flags = (cp->flags & ~CCP_ERR) | CCP_DECOMP_RUN;
- break;
- }
- }
- break;
-
- case CCP_CONFNAK:
- case CCP_CONFREJ:
- cp->flags &= ~(CCP_DECOMP_RUN | CCP_ISUP);
- break;
-
- case CCP_RESETACK:
- if (cp->flags & CCP_ISUP) {
- if (cp->state && (cp->flags & CCP_DECOMP_RUN)) {
- (*cp->comp->decomp_reset)(cp->state);
- cp->flags &= ~CCP_ERROR;
- }
- }
- break;
- }
-}
-
-show_time(f, c)
- FILE *f;
- int c;
-{
- time_t t;
- int n;
- struct tm *tm;
-
- if (c == 7) {
- t = getc(f);
- t = (t << 8) + getc(f);
- t = (t << 8) + getc(f);
- t = (t << 8) + getc(f);
- printf("start %s", ctime(&t));
- start_time = t;
- start_time_tenths = 0;
- tot_sent = tot_rcvd = 0;
- } else {
- n = getc(f);
- if (c == 5) {
- for (c = 3; c > 0; --c)
- n = (n << 8) + getc(f);
- }
- if (abs_times) {
- n += start_time_tenths;
- start_time += n / 10;
- start_time_tenths = n % 10;
- tm = localtime(&start_time);
- printf("time %.2d:%.2d:%.2d.%d", tm->tm_hour, tm->tm_min,
- tm->tm_sec, start_time_tenths);
- printf(" (sent %d, rcvd %d)\n", tot_sent, tot_rcvd);
- } else
- printf("time %.1fs\n", (double) n / 10);
- }
-}
diff --git a/mdk-stage1/ppp/pppdump/zlib.c b/mdk-stage1/ppp/pppdump/zlib.c
deleted file mode 100644
index 5b8372719..000000000
--- a/mdk-stage1/ppp/pppdump/zlib.c
+++ /dev/null
@@ -1,4614 +0,0 @@
-/*
- * This file is derived from various .h and .c files from the zlib-0.95
- * distribution by Jean-loup Gailly and Mark Adler, with some additions
- * by Paul Mackerras to aid in implementing Deflate compression and
- * decompression for PPP packets. See zlib.h for conditions of
- * distribution and use.
- *
- * Changes that have been made include:
- * - changed functions not used outside this file to "local"
- * - added minCompression parameter to deflateInit2
- * - added Z_PACKET_FLUSH (see zlib.h for details)
- * - added inflateIncomp
- *
- * $Id$
- */
-
-
-/*+++++*/
-/* zutil.h -- internal interface and configuration of the compression library
- * Copyright (C) 1995 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-/* From: zutil.h,v 1.9 1995/05/03 17:27:12 jloup Exp */
-
-#define _Z_UTIL_H
-
-#include "zlib.h"
-
-#ifdef STDC
-# include <string.h>
-#endif
-
-#ifndef local
-# define local static
-#endif
-/* compile with -Dlocal if your debugger can't find static symbols */
-
-#define FAR
-
-typedef unsigned char uch;
-typedef uch FAR uchf;
-typedef unsigned short ush;
-typedef ush FAR ushf;
-typedef unsigned long ulg;
-
-extern char *z_errmsg[]; /* indexed by 1-zlib_error */
-
-#define ERR_RETURN(strm,err) return (strm->msg=z_errmsg[1-err], err)
-/* To be used only when the state is known to be valid */
-
-#ifndef NULL
-#define NULL ((void *) 0)
-#endif
-
- /* common constants */
-
-#define DEFLATED 8
-
-#ifndef DEF_WBITS
-# define DEF_WBITS MAX_WBITS
-#endif
-/* default windowBits for decompression. MAX_WBITS is for compression only */
-
-#if MAX_MEM_LEVEL >= 8
-# define DEF_MEM_LEVEL 8
-#else
-# define DEF_MEM_LEVEL MAX_MEM_LEVEL
-#endif
-/* default memLevel */
-
-#define STORED_BLOCK 0
-#define STATIC_TREES 1
-#define DYN_TREES 2
-/* The three kinds of block type */
-
-#define MIN_MATCH 3
-#define MAX_MATCH 258
-/* The minimum and maximum match lengths */
-
- /* functions */
-
-#if defined(STDC) && !defined(HAVE_MEMCPY) && !defined(NO_MEMCPY)
-# define HAVE_MEMCPY
-#endif
-#ifdef HAVE_MEMCPY
-# define zmemcpy memcpy
-# define zmemzero(dest, len) memset(dest, 0, len)
-#else
-# define zmemcpy(d, s, n) bcopy((s), (d), (n))
-# define zmemzero bzero
-#endif
-
-/* Diagnostic functions */
-#ifdef DEBUG_ZLIB
-# include <stdio.h>
-# ifndef verbose
-# define verbose 0
-# endif
-# define Assert(cond,msg) {if(!(cond)) z_error(msg);}
-# define Trace(x) fprintf x
-# define Tracev(x) {if (verbose) fprintf x ;}
-# define Tracevv(x) {if (verbose>1) fprintf x ;}
-# define Tracec(c,x) {if (verbose && (c)) fprintf x ;}
-# define Tracecv(c,x) {if (verbose>1 && (c)) fprintf x ;}
-#else
-# define Assert(cond,msg)
-# define Trace(x)
-# define Tracev(x)
-# define Tracevv(x)
-# define Tracec(c,x)
-# define Tracecv(c,x)
-#endif
-
-
-typedef uLong (*check_func) OF((uLong check, Bytef *buf, uInt len));
-
-/* voidpf zcalloc OF((voidpf opaque, unsigned items, unsigned size)); */
-/* void zcfree OF((voidpf opaque, voidpf ptr)); */
-
-#define ZALLOC(strm, items, size) \
- (*((strm)->zalloc))((strm)->opaque, (items), (size))
-#define ZFREE(strm, addr, size) \
- (*((strm)->zfree))((strm)->opaque, (voidpf)(addr), (size))
-#define TRY_FREE(s, p, n) {if (p) ZFREE(s, p, n);}
-
-/* deflate.h -- internal compression state
- * Copyright (C) 1995 Jean-loup Gailly
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-
-/*+++++*/
-/* From: deflate.h,v 1.5 1995/05/03 17:27:09 jloup Exp */
-
-/* ===========================================================================
- * Internal compression state.
- */
-
-/* Data type */
-#define BINARY 0
-#define ASCII 1
-#define UNKNOWN 2
-
-#define LENGTH_CODES 29
-/* number of length codes, not counting the special END_BLOCK code */
-
-#define LITERALS 256
-/* number of literal bytes 0..255 */
-
-#define L_CODES (LITERALS+1+LENGTH_CODES)
-/* number of Literal or Length codes, including the END_BLOCK code */
-
-#define D_CODES 30
-/* number of distance codes */
-
-#define BL_CODES 19
-/* number of codes used to transfer the bit lengths */
-
-#define HEAP_SIZE (2*L_CODES+1)
-/* maximum heap size */
-
-#define MAX_BITS 15
-/* All codes must not exceed MAX_BITS bits */
-
-#define INIT_STATE 42
-#define BUSY_STATE 113
-#define FLUSH_STATE 124
-#define FINISH_STATE 666
-/* Stream status */
-
-
-/* Data structure describing a single value and its code string. */
-typedef struct ct_data_s {
- union {
- ush freq; /* frequency count */
- ush code; /* bit string */
- } fc;
- union {
- ush dad; /* father node in Huffman tree */
- ush len; /* length of bit string */
- } dl;
-} FAR ct_data;
-
-#define Freq fc.freq
-#define Code fc.code
-#define Dad dl.dad
-#define Len dl.len
-
-typedef struct static_tree_desc_s static_tree_desc;
-
-typedef struct tree_desc_s {
- ct_data *dyn_tree; /* the dynamic tree */
- int max_code; /* largest code with non zero frequency */
- static_tree_desc *stat_desc; /* the corresponding static tree */
-} FAR tree_desc;
-
-typedef ush Pos;
-typedef Pos FAR Posf;
-typedef unsigned IPos;
-
-/* A Pos is an index in the character window. We use short instead of int to
- * save space in the various tables. IPos is used only for parameter passing.
- */
-
-typedef struct deflate_state {
- z_stream *strm; /* pointer back to this zlib stream */
- int status; /* as the name implies */
- Bytef *pending_buf; /* output still pending */
- Bytef *pending_out; /* next pending byte to output to the stream */
- int pending; /* nb of bytes in the pending buffer */
- uLong adler; /* adler32 of uncompressed data */
- int noheader; /* suppress zlib header and adler32 */
- Byte data_type; /* UNKNOWN, BINARY or ASCII */
- Byte method; /* STORED (for zip only) or DEFLATED */
- int minCompr; /* min size decrease for Z_FLUSH_NOSTORE */
-
- /* used by deflate.c: */
-
- uInt w_size; /* LZ77 window size (32K by default) */
- uInt w_bits; /* log2(w_size) (8..16) */
- uInt w_mask; /* w_size - 1 */
-
- Bytef *window;
- /* Sliding window. Input bytes are read into the second half of the window,
- * and move to the first half later to keep a dictionary of at least wSize
- * bytes. With this organization, matches are limited to a distance of
- * wSize-MAX_MATCH bytes, but this ensures that IO is always
- * performed with a length multiple of the block size. Also, it limits
- * the window size to 64K, which is quite useful on MSDOS.
- * To do: use the user input buffer as sliding window.
- */
-
- ulg window_size;
- /* Actual size of window: 2*wSize, except when the user input buffer
- * is directly used as sliding window.
- */
-
- Posf *prev;
- /* Link to older string with same hash index. To limit the size of this
- * array to 64K, this link is maintained only for the last 32K strings.
- * An index in this array is thus a window index modulo 32K.
- */
-
- Posf *head; /* Heads of the hash chains or NIL. */
-
- uInt ins_h; /* hash index of string to be inserted */
- uInt hash_size; /* number of elements in hash table */
- uInt hash_bits; /* log2(hash_size) */
- uInt hash_mask; /* hash_size-1 */
-
- uInt hash_shift;
- /* Number of bits by which ins_h must be shifted at each input
- * step. It must be such that after MIN_MATCH steps, the oldest
- * byte no longer takes part in the hash key, that is:
- * hash_shift * MIN_MATCH >= hash_bits
- */
-
- long block_start;
- /* Window position at the beginning of the current output block. Gets
- * negative when the window is moved backwards.
- */
-
- uInt match_length; /* length of best match */
- IPos prev_match; /* previous match */
- int match_available; /* set if previous match exists */
- uInt strstart; /* start of string to insert */
- uInt match_start; /* start of matching string */
- uInt lookahead; /* number of valid bytes ahead in window */
-
- uInt prev_length;
- /* Length of the best match at previous step. Matches not greater than this
- * are discarded. This is used in the lazy match evaluation.
- */
-
- uInt max_chain_length;
- /* To speed up deflation, hash chains are never searched beyond this
- * length. A higher limit improves compression ratio but degrades the
- * speed.
- */
-
- uInt max_lazy_match;
- /* Attempt to find a better match only when the current match is strictly
- * smaller than this value. This mechanism is used only for compression
- * levels >= 4.
- */
-# define max_insert_length max_lazy_match
- /* Insert new strings in the hash table only if the match length is not
- * greater than this length. This saves time but degrades compression.
- * max_insert_length is used only for compression levels <= 3.
- */
-
- int level; /* compression level (1..9) */
- int strategy; /* favor or force Huffman coding*/
-
- uInt good_match;
- /* Use a faster search when the previous match is longer than this */
-
- int nice_match; /* Stop searching when current match exceeds this */
-
- /* used by trees.c: */
- /* Didn't use ct_data typedef below to supress compiler warning */
- struct ct_data_s dyn_ltree[HEAP_SIZE]; /* literal and length tree */
- struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */
- struct ct_data_s bl_tree[2*BL_CODES+1]; /* Huffman tree for bit lengths */
-
- struct tree_desc_s l_desc; /* desc. for literal tree */
- struct tree_desc_s d_desc; /* desc. for distance tree */
- struct tree_desc_s bl_desc; /* desc. for bit length tree */
-
- ush bl_count[MAX_BITS+1];
- /* number of codes at each bit length for an optimal tree */
-
- int heap[2*L_CODES+1]; /* heap used to build the Huffman trees */
- int heap_len; /* number of elements in the heap */
- int heap_max; /* element of largest frequency */
- /* The sons of heap[n] are heap[2*n] and heap[2*n+1]. heap[0] is not used.
- * The same heap array is used to build all trees.
- */
-
- uch depth[2*L_CODES+1];
- /* Depth of each subtree used as tie breaker for trees of equal frequency
- */
-
- uchf *l_buf; /* buffer for literals or lengths */
-
- uInt lit_bufsize;
- /* Size of match buffer for literals/lengths. There are 4 reasons for
- * limiting lit_bufsize to 64K:
- * - frequencies can be kept in 16 bit counters
- * - if compression is not successful for the first block, all input
- * data is still in the window so we can still emit a stored block even
- * when input comes from standard input. (This can also be done for
- * all blocks if lit_bufsize is not greater than 32K.)
- * - if compression is not successful for a file smaller than 64K, we can
- * even emit a stored file instead of a stored block (saving 5 bytes).
- * This is applicable only for zip (not gzip or zlib).
- * - creating new Huffman trees less frequently may not provide fast
- * adaptation to changes in the input data statistics. (Take for
- * example a binary file with poorly compressible code followed by
- * a highly compressible string table.) Smaller buffer sizes give
- * fast adaptation but have of course the overhead of transmitting
- * trees more frequently.
- * - I can't count above 4
- */
-
- uInt last_lit; /* running index in l_buf */
-
- ushf *d_buf;
- /* Buffer for distances. To simplify the code, d_buf and l_buf have
- * the same number of elements. To use different lengths, an extra flag
- * array would be necessary.
- */
-
- ulg opt_len; /* bit length of current block with optimal trees */
- ulg static_len; /* bit length of current block with static trees */
- ulg compressed_len; /* total bit length of compressed file */
- uInt matches; /* number of string matches in current block */
- int last_eob_len; /* bit length of EOB code for last block */
-
-#ifdef DEBUG_ZLIB
- ulg bits_sent; /* bit length of the compressed data */
-#endif
-
- ush bi_buf;
- /* Output buffer. bits are inserted starting at the bottom (least
- * significant bits).
- */
- int bi_valid;
- /* Number of valid bits in bi_buf. All bits above the last valid bit
- * are always zero.
- */
-
- uInt blocks_in_packet;
- /* Number of blocks produced since the last time Z_PACKET_FLUSH
- * was used.
- */
-
-} FAR deflate_state;
-
-/* Output a byte on the stream.
- * IN assertion: there is enough room in pending_buf.
- */
-#define put_byte(s, c) {s->pending_buf[s->pending++] = (c);}
-
-
-#define MIN_LOOKAHEAD (MAX_MATCH+MIN_MATCH+1)
-/* Minimum amount of lookahead, except at the end of the input file.
- * See deflate.c for comments about the MIN_MATCH+1.
- */
-
-#define MAX_DIST(s) ((s)->w_size-MIN_LOOKAHEAD)
-/* In order to simplify the code, particularly on 16 bit machines, match
- * distances are limited to MAX_DIST instead of WSIZE.
- */
-
- /* in trees.c */
-local void ct_init OF((deflate_state *s));
-local int ct_tally OF((deflate_state *s, int dist, int lc));
-local ulg ct_flush_block OF((deflate_state *s, charf *buf, ulg stored_len,
- int flush));
-local void ct_align OF((deflate_state *s));
-local void ct_stored_block OF((deflate_state *s, charf *buf, ulg stored_len,
- int eof));
-local void ct_stored_type_only OF((deflate_state *s));
-
-
-/*+++++*/
-/* deflate.c -- compress data using the deflation algorithm
- * Copyright (C) 1995 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/*
- * ALGORITHM
- *
- * The "deflation" process depends on being able to identify portions
- * of the input text which are identical to earlier input (within a
- * sliding window trailing behind the input currently being processed).
- *
- * The most straightforward technique turns out to be the fastest for
- * most input files: try all possible matches and select the longest.
- * The key feature of this algorithm is that insertions into the string
- * dictionary are very simple and thus fast, and deletions are avoided
- * completely. Insertions are performed at each input character, whereas
- * string matches are performed only when the previous match ends. So it
- * is preferable to spend more time in matches to allow very fast string
- * insertions and avoid deletions. The matching algorithm for small
- * strings is inspired from that of Rabin & Karp. A brute force approach
- * is used to find longer strings when a small match has been found.
- * A similar algorithm is used in comic (by Jan-Mark Wams) and freeze
- * (by Leonid Broukhis).
- * A previous version of this file used a more sophisticated algorithm
- * (by Fiala and Greene) which is guaranteed to run in linear amortized
- * time, but has a larger average cost, uses more memory and is patented.
- * However the F&G algorithm may be faster for some highly redundant
- * files if the parameter max_chain_length (described below) is too large.
- *
- * ACKNOWLEDGEMENTS
- *
- * The idea of lazy evaluation of matches is due to Jan-Mark Wams, and
- * I found it in 'freeze' written by Leonid Broukhis.
- * Thanks to many people for bug reports and testing.
- *
- * REFERENCES
- *
- * Deutsch, L.P.,"'Deflate' Compressed Data Format Specification".
- * Available in ftp.uu.net:/pub/archiving/zip/doc/deflate-1.1.doc
- *
- * A description of the Rabin and Karp algorithm is given in the book
- * "Algorithms" by R. Sedgewick, Addison-Wesley, p252.
- *
- * Fiala,E.R., and Greene,D.H.
- * Data Compression with Finite Windows, Comm.ACM, 32,4 (1989) 490-595
- *
- */
-
-/* From: deflate.c,v 1.8 1995/05/03 17:27:08 jloup Exp */
-
-local char zlib_copyright[] = " deflate Copyright 1995 Jean-loup Gailly ";
-/*
- If you use the zlib library in a product, an acknowledgment is welcome
- in the documentation of your product. If for some reason you cannot
- include such an acknowledgment, I would appreciate that you keep this
- copyright string in the executable of your product.
- */
-
-#define NIL 0
-/* Tail of hash chains */
-
-#ifndef TOO_FAR
-# define TOO_FAR 4096
-#endif
-/* Matches of length 3 are discarded if their distance exceeds TOO_FAR */
-
-#define MIN_LOOKAHEAD (MAX_MATCH+MIN_MATCH+1)
-/* Minimum amount of lookahead, except at the end of the input file.
- * See deflate.c for comments about the MIN_MATCH+1.
- */
-
-/* Values for max_lazy_match, good_match and max_chain_length, depending on
- * the desired pack level (0..9). The values given below have been tuned to
- * exclude worst case performance for pathological files. Better values may be
- * found for specific files.
- */
-
-typedef struct config_s {
- ush good_length; /* reduce lazy search above this match length */
- ush max_lazy; /* do not perform lazy search above this match length */
- ush nice_length; /* quit search above this match length */
- ush max_chain;
-} config;
-
-local config configuration_table[10] = {
-/* good lazy nice chain */
-/* 0 */ {0, 0, 0, 0}, /* store only */
-/* 1 */ {4, 4, 8, 4}, /* maximum speed, no lazy matches */
-/* 2 */ {4, 5, 16, 8},
-/* 3 */ {4, 6, 32, 32},
-
-/* 4 */ {4, 4, 16, 16}, /* lazy matches */
-/* 5 */ {8, 16, 32, 32},
-/* 6 */ {8, 16, 128, 128},
-/* 7 */ {8, 32, 128, 256},
-/* 8 */ {32, 128, 258, 1024},
-/* 9 */ {32, 258, 258, 4096}}; /* maximum compression */
-
-/* Note: the deflate() code requires max_lazy >= MIN_MATCH and max_chain >= 4
- * For deflate_fast() (levels <= 3) good is ignored and lazy has a different
- * meaning.
- */
-
-#define EQUAL 0
-/* result of memcmp for equal strings */
-
-/* ===========================================================================
- * Prototypes for local functions.
- */
-
-local void fill_window OF((deflate_state *s));
-local int deflate_fast OF((deflate_state *s, int flush));
-local int deflate_slow OF((deflate_state *s, int flush));
-local void lm_init OF((deflate_state *s));
-local int longest_match OF((deflate_state *s, IPos cur_match));
-local void putShortMSB OF((deflate_state *s, uInt b));
-local void flush_pending OF((z_stream *strm));
-local int read_buf OF((z_stream *strm, charf *buf, unsigned size));
-#ifdef ASMV
- void match_init OF((void)); /* asm code initialization */
-#endif
-
-#ifdef DEBUG_ZLIB
-local void check_match OF((deflate_state *s, IPos start, IPos match,
- int length));
-#endif
-
-
-/* ===========================================================================
- * Update a hash value with the given input byte
- * IN assertion: all calls to to UPDATE_HASH are made with consecutive
- * input characters, so that a running hash key can be computed from the
- * previous key instead of complete recalculation each time.
- */
-#define UPDATE_HASH(s,h,c) (h = (((h)<<s->hash_shift) ^ (c)) & s->hash_mask)
-
-
-/* ===========================================================================
- * Insert string str in the dictionary and set match_head to the previous head
- * of the hash chain (the most recent string with same hash key). Return
- * the previous length of the hash chain.
- * IN assertion: all calls to to INSERT_STRING are made with consecutive
- * input characters and the first MIN_MATCH bytes of str are valid
- * (except for the last MIN_MATCH-1 bytes of the input file).
- */
-#define INSERT_STRING(s, str, match_head) \
- (UPDATE_HASH(s, s->ins_h, s->window[(str) + (MIN_MATCH-1)]), \
- s->prev[(str) & s->w_mask] = match_head = s->head[s->ins_h], \
- s->head[s->ins_h] = (str))
-
-/* ===========================================================================
- * Initialize the hash table (avoiding 64K overflow for 16 bit systems).
- * prev[] will be initialized on the fly.
- */
-#define CLEAR_HASH(s) \
- s->head[s->hash_size-1] = NIL; \
- zmemzero((charf *)s->head, (unsigned)(s->hash_size-1)*sizeof(*s->head));
-
-/* ========================================================================= */
-int deflateInit (strm, level)
- z_stream *strm;
- int level;
-{
- return deflateInit2 (strm, level, DEFLATED, MAX_WBITS, DEF_MEM_LEVEL,
- 0, 0);
- /* To do: ignore strm->next_in if we use it as window */
-}
-
-/* ========================================================================= */
-int deflateInit2 (strm, level, method, windowBits, memLevel,
- strategy, minCompression)
- z_stream *strm;
- int level;
- int method;
- int windowBits;
- int memLevel;
- int strategy;
- int minCompression;
-{
- deflate_state *s;
- int noheader = 0;
-
- if (strm == Z_NULL) return Z_STREAM_ERROR;
-
- strm->msg = Z_NULL;
-/* if (strm->zalloc == Z_NULL) strm->zalloc = zcalloc; */
-/* if (strm->zfree == Z_NULL) strm->zfree = zcfree; */
-
- if (level == Z_DEFAULT_COMPRESSION) level = 6;
-
- if (windowBits < 0) { /* undocumented feature: suppress zlib header */
- noheader = 1;
- windowBits = -windowBits;
- }
- if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method != DEFLATED ||
- windowBits < 8 || windowBits > 15 || level < 1 || level > 9) {
- return Z_STREAM_ERROR;
- }
- s = (deflate_state *) ZALLOC(strm, 1, sizeof(deflate_state));
- if (s == Z_NULL) return Z_MEM_ERROR;
- strm->state = (struct internal_state FAR *)s;
- s->strm = strm;
-
- s->noheader = noheader;
- s->w_bits = windowBits;
- s->w_size = 1 << s->w_bits;
- s->w_mask = s->w_size - 1;
-
- s->hash_bits = memLevel + 7;
- s->hash_size = 1 << s->hash_bits;
- s->hash_mask = s->hash_size - 1;
- s->hash_shift = ((s->hash_bits+MIN_MATCH-1)/MIN_MATCH);
-
- s->window = (Bytef *) ZALLOC(strm, s->w_size, 2*sizeof(Byte));
- s->prev = (Posf *) ZALLOC(strm, s->w_size, sizeof(Pos));
- s->head = (Posf *) ZALLOC(strm, s->hash_size, sizeof(Pos));
-
- s->lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */
-
- s->pending_buf = (uchf *) ZALLOC(strm, s->lit_bufsize, 2*sizeof(ush));
-
- if (s->window == Z_NULL || s->prev == Z_NULL || s->head == Z_NULL ||
- s->pending_buf == Z_NULL) {
- strm->msg = z_errmsg[1-Z_MEM_ERROR];
- deflateEnd (strm);
- return Z_MEM_ERROR;
- }
- s->d_buf = (ushf *) &(s->pending_buf[s->lit_bufsize]);
- s->l_buf = (uchf *) &(s->pending_buf[3*s->lit_bufsize]);
- /* We overlay pending_buf and d_buf+l_buf. This works since the average
- * output size for (length,distance) codes is <= 32 bits (worst case
- * is 15+15+13=33).
- */
-
- s->level = level;
- s->strategy = strategy;
- s->method = (Byte)method;
- s->minCompr = minCompression;
- s->blocks_in_packet = 0;
-
- return deflateReset(strm);
-}
-
-/* ========================================================================= */
-int deflateReset (strm)
- z_stream *strm;
-{
- deflate_state *s;
-
- if (strm == Z_NULL || strm->state == Z_NULL ||
- strm->zalloc == Z_NULL || strm->zfree == Z_NULL) return Z_STREAM_ERROR;
-
- strm->total_in = strm->total_out = 0;
- strm->msg = Z_NULL; /* use zfree if we ever allocate msg dynamically */
- strm->data_type = Z_UNKNOWN;
-
- s = (deflate_state *)strm->state;
- s->pending = 0;
- s->pending_out = s->pending_buf;
-
- if (s->noheader < 0) {
- s->noheader = 0; /* was set to -1 by deflate(..., Z_FINISH); */
- }
- s->status = s->noheader ? BUSY_STATE : INIT_STATE;
- s->adler = 1;
-
- ct_init(s);
- lm_init(s);
-
- return Z_OK;
-}
-
-/* =========================================================================
- * Put a short in the pending buffer. The 16-bit value is put in MSB order.
- * IN assertion: the stream state is correct and there is enough room in
- * pending_buf.
- */
-local void putShortMSB (s, b)
- deflate_state *s;
- uInt b;
-{
- put_byte(s, (Byte)(b >> 8));
- put_byte(s, (Byte)(b & 0xff));
-}
-
-/* =========================================================================
- * Flush as much pending output as possible.
- */
-local void flush_pending(strm)
- z_stream *strm;
-{
- deflate_state *state = (deflate_state *) strm->state;
- unsigned len = state->pending;
-
- if (len > strm->avail_out) len = strm->avail_out;
- if (len == 0) return;
-
- if (strm->next_out != NULL) {
- zmemcpy(strm->next_out, state->pending_out, len);
- strm->next_out += len;
- }
- state->pending_out += len;
- strm->total_out += len;
- strm->avail_out -= len;
- state->pending -= len;
- if (state->pending == 0) {
- state->pending_out = state->pending_buf;
- }
-}
-
-/* ========================================================================= */
-int deflate (strm, flush)
- z_stream *strm;
- int flush;
-{
- deflate_state *state = (deflate_state *) strm->state;
-
- if (strm == Z_NULL || state == Z_NULL) return Z_STREAM_ERROR;
-
- if (strm->next_in == Z_NULL && strm->avail_in != 0) {
- ERR_RETURN(strm, Z_STREAM_ERROR);
- }
- if (strm->avail_out == 0) ERR_RETURN(strm, Z_BUF_ERROR);
-
- state->strm = strm; /* just in case */
-
- /* Write the zlib header */
- if (state->status == INIT_STATE) {
-
- uInt header = (DEFLATED + ((state->w_bits-8)<<4)) << 8;
- uInt level_flags = (state->level-1) >> 1;
-
- if (level_flags > 3) level_flags = 3;
- header |= (level_flags << 6);
- header += 31 - (header % 31);
-
- state->status = BUSY_STATE;
- putShortMSB(state, header);
- }
-
- /* Flush as much pending output as possible */
- if (state->pending != 0) {
- flush_pending(strm);
- if (strm->avail_out == 0) return Z_OK;
- }
-
- /* If we came back in here to get the last output from
- * a previous flush, we're done for now.
- */
- if (state->status == FLUSH_STATE) {
- state->status = BUSY_STATE;
- if (flush != Z_NO_FLUSH && flush != Z_FINISH)
- return Z_OK;
- }
-
- /* User must not provide more input after the first FINISH: */
- if (state->status == FINISH_STATE && strm->avail_in != 0) {
- ERR_RETURN(strm, Z_BUF_ERROR);
- }
-
- /* Start a new block or continue the current one.
- */
- if (strm->avail_in != 0 || state->lookahead != 0 ||
- (flush == Z_FINISH && state->status != FINISH_STATE)) {
- int quit;
-
- if (flush == Z_FINISH) {
- state->status = FINISH_STATE;
- }
- if (state->level <= 3) {
- quit = deflate_fast(state, flush);
- } else {
- quit = deflate_slow(state, flush);
- }
- if (quit || strm->avail_out == 0)
- return Z_OK;
- /* If flush != Z_NO_FLUSH && avail_out == 0, the next call
- * of deflate should use the same flush parameter to make sure
- * that the flush is complete. So we don't have to output an
- * empty block here, this will be done at next call. This also
- * ensures that for a very small output buffer, we emit at most
- * one empty block.
- */
- }
-
- /* If a flush was requested, we have a little more to output now. */
- if (flush != Z_NO_FLUSH && flush != Z_FINISH
- && state->status != FINISH_STATE) {
- switch (flush) {
- case Z_PARTIAL_FLUSH:
- ct_align(state);
- break;
- case Z_PACKET_FLUSH:
- /* Output just the 3-bit `stored' block type value,
- but not a zero length. */
- ct_stored_type_only(state);
- break;
- default:
- ct_stored_block(state, (char*)0, 0L, 0);
- /* For a full flush, this empty block will be recognized
- * as a special marker by inflate_sync().
- */
- if (flush == Z_FULL_FLUSH) {
- CLEAR_HASH(state); /* forget history */
- }
- }
- flush_pending(strm);
- if (strm->avail_out == 0) {
- /* We'll have to come back to get the rest of the output;
- * this ensures we don't output a second zero-length stored
- * block (or whatever).
- */
- state->status = FLUSH_STATE;
- return Z_OK;
- }
- }
-
- Assert(strm->avail_out > 0, "bug2");
-
- if (flush != Z_FINISH) return Z_OK;
- if (state->noheader) return Z_STREAM_END;
-
- /* Write the zlib trailer (adler32) */
- putShortMSB(state, (uInt)(state->adler >> 16));
- putShortMSB(state, (uInt)(state->adler & 0xffff));
- flush_pending(strm);
- /* If avail_out is zero, the application will call deflate again
- * to flush the rest.
- */
- state->noheader = -1; /* write the trailer only once! */
- return state->pending != 0 ? Z_OK : Z_STREAM_END;
-}
-
-/* ========================================================================= */
-int deflateEnd (strm)
- z_stream *strm;
-{
- deflate_state *state = (deflate_state *) strm->state;
-
- if (strm == Z_NULL || state == Z_NULL) return Z_STREAM_ERROR;
-
- TRY_FREE(strm, state->window, state->w_size * 2 * sizeof(Byte));
- TRY_FREE(strm, state->prev, state->w_size * sizeof(Pos));
- TRY_FREE(strm, state->head, state->hash_size * sizeof(Pos));
- TRY_FREE(strm, state->pending_buf, state->lit_bufsize * 2 * sizeof(ush));
-
- ZFREE(strm, state, sizeof(deflate_state));
- strm->state = Z_NULL;
-
- return Z_OK;
-}
-
-/* ===========================================================================
- * Read a new buffer from the current input stream, update the adler32
- * and total number of bytes read.
- */
-local int read_buf(strm, buf, size)
- z_stream *strm;
- charf *buf;
- unsigned size;
-{
- unsigned len = strm->avail_in;
- deflate_state *state = (deflate_state *) strm->state;
-
- if (len > size) len = size;
- if (len == 0) return 0;
-
- strm->avail_in -= len;
-
- if (!state->noheader) {
- state->adler = adler32(state->adler, strm->next_in, len);
- }
- zmemcpy(buf, strm->next_in, len);
- strm->next_in += len;
- strm->total_in += len;
-
- return (int)len;
-}
-
-/* ===========================================================================
- * Initialize the "longest match" routines for a new zlib stream
- */
-local void lm_init (s)
- deflate_state *s;
-{
- s->window_size = (ulg)2L*s->w_size;
-
- CLEAR_HASH(s);
-
- /* Set the default configuration parameters:
- */
- s->max_lazy_match = configuration_table[s->level].max_lazy;
- s->good_match = configuration_table[s->level].good_length;
- s->nice_match = configuration_table[s->level].nice_length;
- s->max_chain_length = configuration_table[s->level].max_chain;
-
- s->strstart = 0;
- s->block_start = 0L;
- s->lookahead = 0;
- s->match_length = MIN_MATCH-1;
- s->match_available = 0;
- s->ins_h = 0;
-#ifdef ASMV
- match_init(); /* initialize the asm code */
-#endif
-}
-
-/* ===========================================================================
- * Set match_start to the longest match starting at the given string and
- * return its length. Matches shorter or equal to prev_length are discarded,
- * in which case the result is equal to prev_length and match_start is
- * garbage.
- * IN assertions: cur_match is the head of the hash chain for the current
- * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1
- */
-#ifndef ASMV
-/* For 80x86 and 680x0, an optimized version will be provided in match.asm or
- * match.S. The code will be functionally equivalent.
- */
-local int longest_match(s, cur_match)
- deflate_state *s;
- IPos cur_match; /* current match */
-{
- unsigned chain_length = s->max_chain_length;/* max hash chain length */
- register Bytef *scan = s->window + s->strstart; /* current string */
- register Bytef *match; /* matched string */
- register int len; /* length of current match */
- int best_len = s->prev_length; /* best match length so far */
- IPos limit = s->strstart > (IPos)MAX_DIST(s) ?
- s->strstart - (IPos)MAX_DIST(s) : NIL;
- /* Stop when cur_match becomes <= limit. To simplify the code,
- * we prevent matches with the string of window index 0.
- */
- Posf *prev = s->prev;
- uInt wmask = s->w_mask;
-
-#ifdef UNALIGNED_OK
- /* Compare two bytes at a time. Note: this is not always beneficial.
- * Try with and without -DUNALIGNED_OK to check.
- */
- register Bytef *strend = s->window + s->strstart + MAX_MATCH - 1;
- register ush scan_start = *(ushf*)scan;
- register ush scan_end = *(ushf*)(scan+best_len-1);
-#else
- register Bytef *strend = s->window + s->strstart + MAX_MATCH;
- register Byte scan_end1 = scan[best_len-1];
- register Byte scan_end = scan[best_len];
-#endif
-
- /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16.
- * It is easy to get rid of this optimization if necessary.
- */
- Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever");
-
- /* Do not waste too much time if we already have a good match: */
- if (s->prev_length >= s->good_match) {
- chain_length >>= 2;
- }
- Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead");
-
- do {
- Assert(cur_match < s->strstart, "no future");
- match = s->window + cur_match;
-
- /* Skip to next match if the match length cannot increase
- * or if the match length is less than 2:
- */
-#if (defined(UNALIGNED_OK) && MAX_MATCH == 258)
- /* This code assumes sizeof(unsigned short) == 2. Do not use
- * UNALIGNED_OK if your compiler uses a different size.
- */
- if (*(ushf*)(match+best_len-1) != scan_end ||
- *(ushf*)match != scan_start) continue;
-
- /* It is not necessary to compare scan[2] and match[2] since they are
- * always equal when the other bytes match, given that the hash keys
- * are equal and that HASH_BITS >= 8. Compare 2 bytes at a time at
- * strstart+3, +5, ... up to strstart+257. We check for insufficient
- * lookahead only every 4th comparison; the 128th check will be made
- * at strstart+257. If MAX_MATCH-2 is not a multiple of 8, it is
- * necessary to put more guard bytes at the end of the window, or
- * to check more often for insufficient lookahead.
- */
- Assert(scan[2] == match[2], "scan[2]?");
- scan++, match++;
- do {
- } while (*(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
- *(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
- *(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
- *(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
- scan < strend);
- /* The funny "do {}" generates better code on most compilers */
-
- /* Here, scan <= window+strstart+257 */
- Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");
- if (*scan == *match) scan++;
-
- len = (MAX_MATCH - 1) - (int)(strend-scan);
- scan = strend - (MAX_MATCH-1);
-
-#else /* UNALIGNED_OK */
-
- if (match[best_len] != scan_end ||
- match[best_len-1] != scan_end1 ||
- *match != *scan ||
- *++match != scan[1]) continue;
-
- /* The check at best_len-1 can be removed because it will be made
- * again later. (This heuristic is not always a win.)
- * It is not necessary to compare scan[2] and match[2] since they
- * are always equal when the other bytes match, given that
- * the hash keys are equal and that HASH_BITS >= 8.
- */
- scan += 2, match++;
- Assert(*scan == *match, "match[2]?");
-
- /* We check for insufficient lookahead only every 8th comparison;
- * the 256th check will be made at strstart+258.
- */
- do {
- } while (*++scan == *++match && *++scan == *++match &&
- *++scan == *++match && *++scan == *++match &&
- *++scan == *++match && *++scan == *++match &&
- *++scan == *++match && *++scan == *++match &&
- scan < strend);
-
- Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");
-
- len = MAX_MATCH - (int)(strend - scan);
- scan = strend - MAX_MATCH;
-
-#endif /* UNALIGNED_OK */
-
- if (len > best_len) {
- s->match_start = cur_match;
- best_len = len;
- if (len >= s->nice_match) break;
-#ifdef UNALIGNED_OK
- scan_end = *(ushf*)(scan+best_len-1);
-#else
- scan_end1 = scan[best_len-1];
- scan_end = scan[best_len];
-#endif
- }
- } while ((cur_match = prev[cur_match & wmask]) > limit
- && --chain_length != 0);
-
- return best_len;
-}
-#endif /* ASMV */
-
-#ifdef DEBUG_ZLIB
-/* ===========================================================================
- * Check that the match at match_start is indeed a match.
- */
-local void check_match(s, start, match, length)
- deflate_state *s;
- IPos start, match;
- int length;
-{
- /* check that the match is indeed a match */
- if (memcmp((charf *)s->window + match,
- (charf *)s->window + start, length) != EQUAL) {
- fprintf(stderr,
- " start %u, match %u, length %d\n",
- start, match, length);
- do { fprintf(stderr, "%c%c", s->window[match++],
- s->window[start++]); } while (--length != 0);
- z_error("invalid match");
- }
- if (verbose > 1) {
- fprintf(stderr,"\\[%d,%d]", start-match, length);
- do { putc(s->window[start++], stderr); } while (--length != 0);
- }
-}
-#else
-# define check_match(s, start, match, length)
-#endif
-
-/* ===========================================================================
- * Fill the window when the lookahead becomes insufficient.
- * Updates strstart and lookahead.
- *
- * IN assertion: lookahead < MIN_LOOKAHEAD
- * OUT assertions: strstart <= window_size-MIN_LOOKAHEAD
- * At least one byte has been read, or avail_in == 0; reads are
- * performed for at least two bytes (required for the zip translate_eol
- * option -- not supported here).
- */
-local void fill_window(s)
- deflate_state *s;
-{
- register unsigned n, m;
- register Posf *p;
- unsigned more; /* Amount of free space at the end of the window. */
- uInt wsize = s->w_size;
-
- do {
- more = (unsigned)(s->window_size -(ulg)s->lookahead -(ulg)s->strstart);
-
- /* Deal with !@#$% 64K limit: */
- if (more == 0 && s->strstart == 0 && s->lookahead == 0) {
- more = wsize;
- } else if (more == (unsigned)(-1)) {
- /* Very unlikely, but possible on 16 bit machine if strstart == 0
- * and lookahead == 1 (input done one byte at time)
- */
- more--;
-
- /* If the window is almost full and there is insufficient lookahead,
- * move the upper half to the lower one to make room in the upper half.
- */
- } else if (s->strstart >= wsize+MAX_DIST(s)) {
-
- /* By the IN assertion, the window is not empty so we can't confuse
- * more == 0 with more == 64K on a 16 bit machine.
- */
- zmemcpy((charf *)s->window, (charf *)s->window+wsize,
- (unsigned)wsize);
- s->match_start -= wsize;
- s->strstart -= wsize; /* we now have strstart >= MAX_DIST */
-
- s->block_start -= (long) wsize;
-
- /* Slide the hash table (could be avoided with 32 bit values
- at the expense of memory usage):
- */
- n = s->hash_size;
- p = &s->head[n];
- do {
- m = *--p;
- *p = (Pos)(m >= wsize ? m-wsize : NIL);
- } while (--n);
-
- n = wsize;
- p = &s->prev[n];
- do {
- m = *--p;
- *p = (Pos)(m >= wsize ? m-wsize : NIL);
- /* If n is not on any hash chain, prev[n] is garbage but
- * its value will never be used.
- */
- } while (--n);
-
- more += wsize;
- }
- if (s->strm->avail_in == 0) return;
-
- /* If there was no sliding:
- * strstart <= WSIZE+MAX_DIST-1 && lookahead <= MIN_LOOKAHEAD - 1 &&
- * more == window_size - lookahead - strstart
- * => more >= window_size - (MIN_LOOKAHEAD-1 + WSIZE + MAX_DIST-1)
- * => more >= window_size - 2*WSIZE + 2
- * In the BIG_MEM or MMAP case (not yet supported),
- * window_size == input_size + MIN_LOOKAHEAD &&
- * strstart + s->lookahead <= input_size => more >= MIN_LOOKAHEAD.
- * Otherwise, window_size == 2*WSIZE so more >= 2.
- * If there was sliding, more >= WSIZE. So in all cases, more >= 2.
- */
- Assert(more >= 2, "more < 2");
-
- n = read_buf(s->strm, (charf *)s->window + s->strstart + s->lookahead,
- more);
- s->lookahead += n;
-
- /* Initialize the hash value now that we have some input: */
- if (s->lookahead >= MIN_MATCH) {
- s->ins_h = s->window[s->strstart];
- UPDATE_HASH(s, s->ins_h, s->window[s->strstart+1]);
-#if MIN_MATCH != 3
- Call UPDATE_HASH() MIN_MATCH-3 more times
-#endif
- }
- /* If the whole input has less than MIN_MATCH bytes, ins_h is garbage,
- * but this is not important since only literal bytes will be emitted.
- */
-
- } while (s->lookahead < MIN_LOOKAHEAD && s->strm->avail_in != 0);
-}
-
-/* ===========================================================================
- * Flush the current block, with given end-of-file flag.
- * IN assertion: strstart is set to the end of the current match.
- */
-#define FLUSH_BLOCK_ONLY(s, flush) { \
- ct_flush_block(s, (s->block_start >= 0L ? \
- (charf *)&s->window[(unsigned)s->block_start] : \
- (charf *)Z_NULL), (long)s->strstart - s->block_start, (flush)); \
- s->block_start = s->strstart; \
- flush_pending(s->strm); \
- Tracev((stderr,"[FLUSH]")); \
-}
-
-/* Same but force premature exit if necessary. */
-#define FLUSH_BLOCK(s, flush) { \
- FLUSH_BLOCK_ONLY(s, flush); \
- if (s->strm->avail_out == 0) return 1; \
-}
-
-/* ===========================================================================
- * Compress as much as possible from the input stream, return true if
- * processing was terminated prematurely (no more input or output space).
- * This function does not perform lazy evaluationof matches and inserts
- * new strings in the dictionary only for unmatched strings or for short
- * matches. It is used only for the fast compression options.
- */
-local int deflate_fast(s, flush)
- deflate_state *s;
- int flush;
-{
- IPos hash_head = NIL; /* head of the hash chain */
- int bflush; /* set if current block must be flushed */
-
- s->prev_length = MIN_MATCH-1;
-
- for (;;) {
- /* Make sure that we always have enough lookahead, except
- * at the end of the input file. We need MAX_MATCH bytes
- * for the next match, plus MIN_MATCH bytes to insert the
- * string following the next match.
- */
- if (s->lookahead < MIN_LOOKAHEAD) {
- fill_window(s);
- if (s->lookahead < MIN_LOOKAHEAD && flush == Z_NO_FLUSH) return 1;
-
- if (s->lookahead == 0) break; /* flush the current block */
- }
-
- /* Insert the string window[strstart .. strstart+2] in the
- * dictionary, and set hash_head to the head of the hash chain:
- */
- if (s->lookahead >= MIN_MATCH) {
- INSERT_STRING(s, s->strstart, hash_head);
- }
-
- /* Find the longest match, discarding those <= prev_length.
- * At this point we have always match_length < MIN_MATCH
- */
- if (hash_head != NIL && s->strstart - hash_head <= MAX_DIST(s)) {
- /* To simplify the code, we prevent matches with the string
- * of window index 0 (in particular we have to avoid a match
- * of the string with itself at the start of the input file).
- */
- if (s->strategy != Z_HUFFMAN_ONLY) {
- s->match_length = longest_match (s, hash_head);
- }
- /* longest_match() sets match_start */
-
- if (s->match_length > s->lookahead) s->match_length = s->lookahead;
- }
- if (s->match_length >= MIN_MATCH) {
- check_match(s, s->strstart, s->match_start, s->match_length);
-
- bflush = ct_tally(s, s->strstart - s->match_start,
- s->match_length - MIN_MATCH);
-
- s->lookahead -= s->match_length;
-
- /* Insert new strings in the hash table only if the match length
- * is not too large. This saves time but degrades compression.
- */
- if (s->match_length <= s->max_insert_length &&
- s->lookahead >= MIN_MATCH) {
- s->match_length--; /* string at strstart already in hash table */
- do {
- s->strstart++;
- INSERT_STRING(s, s->strstart, hash_head);
- /* strstart never exceeds WSIZE-MAX_MATCH, so there are
- * always MIN_MATCH bytes ahead.
- */
- } while (--s->match_length != 0);
- s->strstart++;
- } else {
- s->strstart += s->match_length;
- s->match_length = 0;
- s->ins_h = s->window[s->strstart];
- UPDATE_HASH(s, s->ins_h, s->window[s->strstart+1]);
-#if MIN_MATCH != 3
- Call UPDATE_HASH() MIN_MATCH-3 more times
-#endif
- /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not
- * matter since it will be recomputed at next deflate call.
- */
- }
- } else {
- /* No match, output a literal byte */
- Tracevv((stderr,"%c", s->window[s->strstart]));
- bflush = ct_tally (s, 0, s->window[s->strstart]);
- s->lookahead--;
- s->strstart++;
- }
- if (bflush) FLUSH_BLOCK(s, Z_NO_FLUSH);
- }
- FLUSH_BLOCK(s, flush);
- return 0; /* normal exit */
-}
-
-/* ===========================================================================
- * Same as above, but achieves better compression. We use a lazy
- * evaluation for matches: a match is finally adopted only if there is
- * no better match at the next window position.
- */
-local int deflate_slow(s, flush)
- deflate_state *s;
- int flush;
-{
- IPos hash_head = NIL; /* head of hash chain */
- int bflush; /* set if current block must be flushed */
-
- /* Process the input block. */
- for (;;) {
- /* Make sure that we always have enough lookahead, except
- * at the end of the input file. We need MAX_MATCH bytes
- * for the next match, plus MIN_MATCH bytes to insert the
- * string following the next match.
- */
- if (s->lookahead < MIN_LOOKAHEAD) {
- fill_window(s);
- if (s->lookahead < MIN_LOOKAHEAD && flush == Z_NO_FLUSH) return 1;
-
- if (s->lookahead == 0) break; /* flush the current block */
- }
-
- /* Insert the string window[strstart .. strstart+2] in the
- * dictionary, and set hash_head to the head of the hash chain:
- */
- if (s->lookahead >= MIN_MATCH) {
- INSERT_STRING(s, s->strstart, hash_head);
- }
-
- /* Find the longest match, discarding those <= prev_length.
- */
- s->prev_length = s->match_length, s->prev_match = s->match_start;
- s->match_length = MIN_MATCH-1;
-
- if (hash_head != NIL && s->prev_length < s->max_lazy_match &&
- s->strstart - hash_head <= MAX_DIST(s)) {
- /* To simplify the code, we prevent matches with the string
- * of window index 0 (in particular we have to avoid a match
- * of the string with itself at the start of the input file).
- */
- if (s->strategy != Z_HUFFMAN_ONLY) {
- s->match_length = longest_match (s, hash_head);
- }
- /* longest_match() sets match_start */
- if (s->match_length > s->lookahead) s->match_length = s->lookahead;
-
- if (s->match_length <= 5 && (s->strategy == Z_FILTERED ||
- (s->match_length == MIN_MATCH &&
- s->strstart - s->match_start > TOO_FAR))) {
-
- /* If prev_match is also MIN_MATCH, match_start is garbage
- * but we will ignore the current match anyway.
- */
- s->match_length = MIN_MATCH-1;
- }
- }
- /* If there was a match at the previous step and the current
- * match is not better, output the previous match:
- */
- if (s->prev_length >= MIN_MATCH && s->match_length <= s->prev_length) {
- uInt max_insert = s->strstart + s->lookahead - MIN_MATCH;
- /* Do not insert strings in hash table beyond this. */
-
- check_match(s, s->strstart-1, s->prev_match, s->prev_length);
-
- bflush = ct_tally(s, s->strstart -1 - s->prev_match,
- s->prev_length - MIN_MATCH);
-
- /* Insert in hash table all strings up to the end of the match.
- * strstart-1 and strstart are already inserted. If there is not
- * enough lookahead, the last two strings are not inserted in
- * the hash table.
- */
- s->lookahead -= s->prev_length-1;
- s->prev_length -= 2;
- do {
- if (++s->strstart <= max_insert) {
- INSERT_STRING(s, s->strstart, hash_head);
- }
- } while (--s->prev_length != 0);
- s->match_available = 0;
- s->match_length = MIN_MATCH-1;
- s->strstart++;
-
- if (bflush) FLUSH_BLOCK(s, Z_NO_FLUSH);
-
- } else if (s->match_available) {
- /* If there was no match at the previous position, output a
- * single literal. If there was a match but the current match
- * is longer, truncate the previous match to a single literal.
- */
- Tracevv((stderr,"%c", s->window[s->strstart-1]));
- if (ct_tally (s, 0, s->window[s->strstart-1])) {
- FLUSH_BLOCK_ONLY(s, Z_NO_FLUSH);
- }
- s->strstart++;
- s->lookahead--;
- if (s->strm->avail_out == 0) return 1;
- } else {
- /* There is no previous match to compare with, wait for
- * the next step to decide.
- */
- s->match_available = 1;
- s->strstart++;
- s->lookahead--;
- }
- }
- Assert (flush != Z_NO_FLUSH, "no flush?");
- if (s->match_available) {
- Tracevv((stderr,"%c", s->window[s->strstart-1]));
- ct_tally (s, 0, s->window[s->strstart-1]);
- s->match_available = 0;
- }
- FLUSH_BLOCK(s, flush);
- return 0;
-}
-
-
-/*+++++*/
-/* trees.c -- output deflated data using Huffman coding
- * Copyright (C) 1995 Jean-loup Gailly
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/*
- * ALGORITHM
- *
- * The "deflation" process uses several Huffman trees. The more
- * common source values are represented by shorter bit sequences.
- *
- * Each code tree is stored in a compressed form which is itself
- * a Huffman encoding of the lengths of all the code strings (in
- * ascending order by source values). The actual code strings are
- * reconstructed from the lengths in the inflate process, as described
- * in the deflate specification.
- *
- * REFERENCES
- *
- * Deutsch, L.P.,"'Deflate' Compressed Data Format Specification".
- * Available in ftp.uu.net:/pub/archiving/zip/doc/deflate-1.1.doc
- *
- * Storer, James A.
- * Data Compression: Methods and Theory, pp. 49-50.
- * Computer Science Press, 1988. ISBN 0-7167-8156-5.
- *
- * Sedgewick, R.
- * Algorithms, p290.
- * Addison-Wesley, 1983. ISBN 0-201-06672-6.
- */
-
-/* From: trees.c,v 1.5 1995/05/03 17:27:12 jloup Exp */
-
-#ifdef DEBUG_ZLIB
-# include <ctype.h>
-#endif
-
-/* ===========================================================================
- * Constants
- */
-
-#define MAX_BL_BITS 7
-/* Bit length codes must not exceed MAX_BL_BITS bits */
-
-#define END_BLOCK 256
-/* end of block literal code */
-
-#define REP_3_6 16
-/* repeat previous bit length 3-6 times (2 bits of repeat count) */
-
-#define REPZ_3_10 17
-/* repeat a zero length 3-10 times (3 bits of repeat count) */
-
-#define REPZ_11_138 18
-/* repeat a zero length 11-138 times (7 bits of repeat count) */
-
-local int extra_lbits[LENGTH_CODES] /* extra bits for each length code */
- = {0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0};
-
-local int extra_dbits[D_CODES] /* extra bits for each distance code */
- = {0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13};
-
-local int extra_blbits[BL_CODES]/* extra bits for each bit length code */
- = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7};
-
-local uch bl_order[BL_CODES]
- = {16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15};
-/* The lengths of the bit length codes are sent in order of decreasing
- * probability, to avoid transmitting the lengths for unused bit length codes.
- */
-
-#define Buf_size (8 * 2*sizeof(char))
-/* Number of bits used within bi_buf. (bi_buf might be implemented on
- * more than 16 bits on some systems.)
- */
-
-/* ===========================================================================
- * Local data. These are initialized only once.
- * To do: initialize at compile time to be completely reentrant. ???
- */
-
-local ct_data static_ltree[L_CODES+2];
-/* The static literal tree. Since the bit lengths are imposed, there is no
- * need for the L_CODES extra codes used during heap construction. However
- * The codes 286 and 287 are needed to build a canonical tree (see ct_init
- * below).
- */
-
-local ct_data static_dtree[D_CODES];
-/* The static distance tree. (Actually a trivial tree since all codes use
- * 5 bits.)
- */
-
-local uch dist_code[512];
-/* distance codes. The first 256 values correspond to the distances
- * 3 .. 258, the last 256 values correspond to the top 8 bits of
- * the 15 bit distances.
- */
-
-local uch length_code[MAX_MATCH-MIN_MATCH+1];
-/* length code for each normalized match length (0 == MIN_MATCH) */
-
-local int base_length[LENGTH_CODES];
-/* First normalized length for each code (0 = MIN_MATCH) */
-
-local int base_dist[D_CODES];
-/* First normalized distance for each code (0 = distance of 1) */
-
-struct static_tree_desc_s {
- ct_data *static_tree; /* static tree or NULL */
- intf *extra_bits; /* extra bits for each code or NULL */
- int extra_base; /* base index for extra_bits */
- int elems; /* max number of elements in the tree */
- int max_length; /* max bit length for the codes */
-};
-
-local static_tree_desc static_l_desc =
-{static_ltree, extra_lbits, LITERALS+1, L_CODES, MAX_BITS};
-
-local static_tree_desc static_d_desc =
-{static_dtree, extra_dbits, 0, D_CODES, MAX_BITS};
-
-local static_tree_desc static_bl_desc =
-{(ct_data *)0, extra_blbits, 0, BL_CODES, MAX_BL_BITS};
-
-/* ===========================================================================
- * Local (static) routines in this file.
- */
-
-local void ct_static_init OF((void));
-local void init_block OF((deflate_state *s));
-local void pqdownheap OF((deflate_state *s, ct_data *tree, int k));
-local void gen_bitlen OF((deflate_state *s, tree_desc *desc));
-local void gen_codes OF((ct_data *tree, int max_code, ushf *bl_count));
-local void build_tree OF((deflate_state *s, tree_desc *desc));
-local void scan_tree OF((deflate_state *s, ct_data *tree, int max_code));
-local void send_tree OF((deflate_state *s, ct_data *tree, int max_code));
-local int build_bl_tree OF((deflate_state *s));
-local void send_all_trees OF((deflate_state *s, int lcodes, int dcodes,
- int blcodes));
-local void compress_block OF((deflate_state *s, ct_data *ltree,
- ct_data *dtree));
-local void set_data_type OF((deflate_state *s));
-local unsigned bi_reverse OF((unsigned value, int length));
-local void bi_windup OF((deflate_state *s));
-local void bi_flush OF((deflate_state *s));
-local void copy_block OF((deflate_state *s, charf *buf, unsigned len,
- int header));
-
-#ifndef DEBUG_ZLIB
-# define send_code(s, c, tree) send_bits(s, tree[c].Code, tree[c].Len)
- /* Send a code of the given tree. c and tree must not have side effects */
-
-#else /* DEBUG_ZLIB */
-# define send_code(s, c, tree) \
- { if (verbose>1) fprintf(stderr,"\ncd %3d ",(c)); \
- send_bits(s, tree[c].Code, tree[c].Len); }
-#endif
-
-#define d_code(dist) \
- ((dist) < 256 ? dist_code[dist] : dist_code[256+((dist)>>7)])
-/* Mapping from a distance to a distance code. dist is the distance - 1 and
- * must not have side effects. dist_code[256] and dist_code[257] are never
- * used.
- */
-
-/* ===========================================================================
- * Output a short LSB first on the stream.
- * IN assertion: there is enough room in pendingBuf.
- */
-#define put_short(s, w) { \
- put_byte(s, (uch)((w) & 0xff)); \
- put_byte(s, (uch)((ush)(w) >> 8)); \
-}
-
-/* ===========================================================================
- * Send a value on a given number of bits.
- * IN assertion: length <= 16 and value fits in length bits.
- */
-#ifdef DEBUG_ZLIB
-local void send_bits OF((deflate_state *s, int value, int length));
-
-local void send_bits(s, value, length)
- deflate_state *s;
- int value; /* value to send */
- int length; /* number of bits */
-{
- Tracev((stderr," l %2d v %4x ", length, value));
- Assert(length > 0 && length <= 15, "invalid length");
- s->bits_sent += (ulg)length;
-
- /* If not enough room in bi_buf, use (valid) bits from bi_buf and
- * (16 - bi_valid) bits from value, leaving (width - (16-bi_valid))
- * unused bits in value.
- */
- if (s->bi_valid > (int)Buf_size - length) {
- s->bi_buf |= (value << s->bi_valid);
- put_short(s, s->bi_buf);
- s->bi_buf = (ush)value >> (Buf_size - s->bi_valid);
- s->bi_valid += length - Buf_size;
- } else {
- s->bi_buf |= value << s->bi_valid;
- s->bi_valid += length;
- }
-}
-#else /* !DEBUG_ZLIB */
-
-#define send_bits(s, value, length) \
-{ int len = length;\
- if (s->bi_valid > (int)Buf_size - len) {\
- int val = value;\
- s->bi_buf |= (val << s->bi_valid);\
- put_short(s, s->bi_buf);\
- s->bi_buf = (ush)val >> (Buf_size - s->bi_valid);\
- s->bi_valid += len - Buf_size;\
- } else {\
- s->bi_buf |= (value) << s->bi_valid;\
- s->bi_valid += len;\
- }\
-}
-#endif /* DEBUG_ZLIB */
-
-
-#define MAX(a,b) (a >= b ? a : b)
-/* the arguments must not have side effects */
-
-/* ===========================================================================
- * Initialize the various 'constant' tables.
- * To do: do this at compile time.
- */
-local void ct_static_init()
-{
- int n; /* iterates over tree elements */
- int bits; /* bit counter */
- int length; /* length value */
- int code; /* code value */
- int dist; /* distance index */
- ush bl_count[MAX_BITS+1];
- /* number of codes at each bit length for an optimal tree */
-
- /* Initialize the mapping length (0..255) -> length code (0..28) */
- length = 0;
- for (code = 0; code < LENGTH_CODES-1; code++) {
- base_length[code] = length;
- for (n = 0; n < (1<<extra_lbits[code]); n++) {
- length_code[length++] = (uch)code;
- }
- }
- Assert (length == 256, "ct_static_init: length != 256");
- /* Note that the length 255 (match length 258) can be represented
- * in two different ways: code 284 + 5 bits or code 285, so we
- * overwrite length_code[255] to use the best encoding:
- */
- length_code[length-1] = (uch)code;
-
- /* Initialize the mapping dist (0..32K) -> dist code (0..29) */
- dist = 0;
- for (code = 0 ; code < 16; code++) {
- base_dist[code] = dist;
- for (n = 0; n < (1<<extra_dbits[code]); n++) {
- dist_code[dist++] = (uch)code;
- }
- }
- Assert (dist == 256, "ct_static_init: dist != 256");
- dist >>= 7; /* from now on, all distances are divided by 128 */
- for ( ; code < D_CODES; code++) {
- base_dist[code] = dist << 7;
- for (n = 0; n < (1<<(extra_dbits[code]-7)); n++) {
- dist_code[256 + dist++] = (uch)code;
- }
- }
- Assert (dist == 256, "ct_static_init: 256+dist != 512");
-
- /* Construct the codes of the static literal tree */
- for (bits = 0; bits <= MAX_BITS; bits++) bl_count[bits] = 0;
- n = 0;
- while (n <= 143) static_ltree[n++].Len = 8, bl_count[8]++;
- while (n <= 255) static_ltree[n++].Len = 9, bl_count[9]++;
- while (n <= 279) static_ltree[n++].Len = 7, bl_count[7]++;
- while (n <= 287) static_ltree[n++].Len = 8, bl_count[8]++;
- /* Codes 286 and 287 do not exist, but we must include them in the
- * tree construction to get a canonical Huffman tree (longest code
- * all ones)
- */
- gen_codes((ct_data *)static_ltree, L_CODES+1, bl_count);
-
- /* The static distance tree is trivial: */
- for (n = 0; n < D_CODES; n++) {
- static_dtree[n].Len = 5;
- static_dtree[n].Code = bi_reverse(n, 5);
- }
-}
-
-/* ===========================================================================
- * Initialize the tree data structures for a new zlib stream.
- */
-local void ct_init(s)
- deflate_state *s;
-{
- if (static_dtree[0].Len == 0) {
- ct_static_init(); /* To do: at compile time */
- }
-
- s->compressed_len = 0L;
-
- s->l_desc.dyn_tree = s->dyn_ltree;
- s->l_desc.stat_desc = &static_l_desc;
-
- s->d_desc.dyn_tree = s->dyn_dtree;
- s->d_desc.stat_desc = &static_d_desc;
-
- s->bl_desc.dyn_tree = s->bl_tree;
- s->bl_desc.stat_desc = &static_bl_desc;
-
- s->bi_buf = 0;
- s->bi_valid = 0;
- s->last_eob_len = 8; /* enough lookahead for inflate */
-#ifdef DEBUG_ZLIB
- s->bits_sent = 0L;
-#endif
- s->blocks_in_packet = 0;
-
- /* Initialize the first block of the first file: */
- init_block(s);
-}
-
-/* ===========================================================================
- * Initialize a new block.
- */
-local void init_block(s)
- deflate_state *s;
-{
- int n; /* iterates over tree elements */
-
- /* Initialize the trees. */
- for (n = 0; n < L_CODES; n++) s->dyn_ltree[n].Freq = 0;
- for (n = 0; n < D_CODES; n++) s->dyn_dtree[n].Freq = 0;
- for (n = 0; n < BL_CODES; n++) s->bl_tree[n].Freq = 0;
-
- s->dyn_ltree[END_BLOCK].Freq = 1;
- s->opt_len = s->static_len = 0L;
- s->last_lit = s->matches = 0;
-}
-
-#define SMALLEST 1
-/* Index within the heap array of least frequent node in the Huffman tree */
-
-
-/* ===========================================================================
- * Remove the smallest element from the heap and recreate the heap with
- * one less element. Updates heap and heap_len.
- */
-#define pqremove(s, tree, top) \
-{\
- top = s->heap[SMALLEST]; \
- s->heap[SMALLEST] = s->heap[s->heap_len--]; \
- pqdownheap(s, tree, SMALLEST); \
-}
-
-/* ===========================================================================
- * Compares to subtrees, using the tree depth as tie breaker when
- * the subtrees have equal frequency. This minimizes the worst case length.
- */
-#define smaller(tree, n, m, depth) \
- (tree[n].Freq < tree[m].Freq || \
- (tree[n].Freq == tree[m].Freq && depth[n] <= depth[m]))
-
-/* ===========================================================================
- * Restore the heap property by moving down the tree starting at node k,
- * exchanging a node with the smallest of its two sons if necessary, stopping
- * when the heap property is re-established (each father smaller than its
- * two sons).
- */
-local void pqdownheap(s, tree, k)
- deflate_state *s;
- ct_data *tree; /* the tree to restore */
- int k; /* node to move down */
-{
- int v = s->heap[k];
- int j = k << 1; /* left son of k */
- while (j <= s->heap_len) {
- /* Set j to the smallest of the two sons: */
- if (j < s->heap_len &&
- smaller(tree, s->heap[j+1], s->heap[j], s->depth)) {
- j++;
- }
- /* Exit if v is smaller than both sons */
- if (smaller(tree, v, s->heap[j], s->depth)) break;
-
- /* Exchange v with the smallest son */
- s->heap[k] = s->heap[j]; k = j;
-
- /* And continue down the tree, setting j to the left son of k */
- j <<= 1;
- }
- s->heap[k] = v;
-}
-
-/* ===========================================================================
- * Compute the optimal bit lengths for a tree and update the total bit length
- * for the current block.
- * IN assertion: the fields freq and dad are set, heap[heap_max] and
- * above are the tree nodes sorted by increasing frequency.
- * OUT assertions: the field len is set to the optimal bit length, the
- * array bl_count contains the frequencies for each bit length.
- * The length opt_len is updated; static_len is also updated if stree is
- * not null.
- */
-local void gen_bitlen(s, desc)
- deflate_state *s;
- tree_desc *desc; /* the tree descriptor */
-{
- ct_data *tree = desc->dyn_tree;
- int max_code = desc->max_code;
- ct_data *stree = desc->stat_desc->static_tree;
- intf *extra = desc->stat_desc->extra_bits;
- int base = desc->stat_desc->extra_base;
- int max_length = desc->stat_desc->max_length;
- int h; /* heap index */
- int n, m; /* iterate over the tree elements */
- int bits; /* bit length */
- int xbits; /* extra bits */
- ush f; /* frequency */
- int overflow = 0; /* number of elements with bit length too large */
-
- for (bits = 0; bits <= MAX_BITS; bits++) s->bl_count[bits] = 0;
-
- /* In a first pass, compute the optimal bit lengths (which may
- * overflow in the case of the bit length tree).
- */
- tree[s->heap[s->heap_max]].Len = 0; /* root of the heap */
-
- for (h = s->heap_max+1; h < HEAP_SIZE; h++) {
- n = s->heap[h];
- bits = tree[tree[n].Dad].Len + 1;
- if (bits > max_length) bits = max_length, overflow++;
- tree[n].Len = (ush)bits;
- /* We overwrite tree[n].Dad which is no longer needed */
-
- if (n > max_code) continue; /* not a leaf node */
-
- s->bl_count[bits]++;
- xbits = 0;
- if (n >= base) xbits = extra[n-base];
- f = tree[n].Freq;
- s->opt_len += (ulg)f * (bits + xbits);
- if (stree) s->static_len += (ulg)f * (stree[n].Len + xbits);
- }
- if (overflow == 0) return;
-
- Trace((stderr,"\nbit length overflow\n"));
- /* This happens for example on obj2 and pic of the Calgary corpus */
-
- /* Find the first bit length which could increase: */
- do {
- bits = max_length-1;
- while (s->bl_count[bits] == 0) bits--;
- s->bl_count[bits]--; /* move one leaf down the tree */
- s->bl_count[bits+1] += 2; /* move one overflow item as its brother */
- s->bl_count[max_length]--;
- /* The brother of the overflow item also moves one step up,
- * but this does not affect bl_count[max_length]
- */
- overflow -= 2;
- } while (overflow > 0);
-
- /* Now recompute all bit lengths, scanning in increasing frequency.
- * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all
- * lengths instead of fixing only the wrong ones. This idea is taken
- * from 'ar' written by Haruhiko Okumura.)
- */
- for (bits = max_length; bits != 0; bits--) {
- n = s->bl_count[bits];
- while (n != 0) {
- m = s->heap[--h];
- if (m > max_code) continue;
- if (tree[m].Len != (unsigned) bits) {
- Trace((stderr,"code %d bits %d->%d\n", m, tree[m].Len, bits));
- s->opt_len += ((long)bits - (long)tree[m].Len)
- *(long)tree[m].Freq;
- tree[m].Len = (ush)bits;
- }
- n--;
- }
- }
-}
-
-/* ===========================================================================
- * Generate the codes for a given tree and bit counts (which need not be
- * optimal).
- * IN assertion: the array bl_count contains the bit length statistics for
- * the given tree and the field len is set for all tree elements.
- * OUT assertion: the field code is set for all tree elements of non
- * zero code length.
- */
-local void gen_codes (tree, max_code, bl_count)
- ct_data *tree; /* the tree to decorate */
- int max_code; /* largest code with non zero frequency */
- ushf *bl_count; /* number of codes at each bit length */
-{
- ush next_code[MAX_BITS+1]; /* next code value for each bit length */
- ush code = 0; /* running code value */
- int bits; /* bit index */
- int n; /* code index */
-
- /* The distribution counts are first used to generate the code values
- * without bit reversal.
- */
- for (bits = 1; bits <= MAX_BITS; bits++) {
- next_code[bits] = code = (code + bl_count[bits-1]) << 1;
- }
- /* Check that the bit counts in bl_count are consistent. The last code
- * must be all ones.
- */
- Assert (code + bl_count[MAX_BITS]-1 == (1<<MAX_BITS)-1,
- "inconsistent bit counts");
- Tracev((stderr,"\ngen_codes: max_code %d ", max_code));
-
- for (n = 0; n <= max_code; n++) {
- int len = tree[n].Len;
- if (len == 0) continue;
- /* Now reverse the bits */
- tree[n].Code = bi_reverse(next_code[len]++, len);
-
- Tracec(tree != static_ltree, (stderr,"\nn %3d %c l %2d c %4x (%x) ",
- n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len]-1));
- }
-}
-
-/* ===========================================================================
- * Construct one Huffman tree and assigns the code bit strings and lengths.
- * Update the total bit length for the current block.
- * IN assertion: the field freq is set for all tree elements.
- * OUT assertions: the fields len and code are set to the optimal bit length
- * and corresponding code. The length opt_len is updated; static_len is
- * also updated if stree is not null. The field max_code is set.
- */
-local void build_tree(s, desc)
- deflate_state *s;
- tree_desc *desc; /* the tree descriptor */
-{
- ct_data *tree = desc->dyn_tree;
- ct_data *stree = desc->stat_desc->static_tree;
- int elems = desc->stat_desc->elems;
- int n, m; /* iterate over heap elements */
- int max_code = -1; /* largest code with non zero frequency */
- int node; /* new node being created */
-
- /* Construct the initial heap, with least frequent element in
- * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1].
- * heap[0] is not used.
- */
- s->heap_len = 0, s->heap_max = HEAP_SIZE;
-
- for (n = 0; n < elems; n++) {
- if (tree[n].Freq != 0) {
- s->heap[++(s->heap_len)] = max_code = n;
- s->depth[n] = 0;
- } else {
- tree[n].Len = 0;
- }
- }
-
- /* The pkzip format requires that at least one distance code exists,
- * and that at least one bit should be sent even if there is only one
- * possible code. So to avoid special checks later on we force at least
- * two codes of non zero frequency.
- */
- while (s->heap_len < 2) {
- node = s->heap[++(s->heap_len)] = (max_code < 2 ? ++max_code : 0);
- tree[node].Freq = 1;
- s->depth[node] = 0;
- s->opt_len--; if (stree) s->static_len -= stree[node].Len;
- /* node is 0 or 1 so it does not have extra bits */
- }
- desc->max_code = max_code;
-
- /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree,
- * establish sub-heaps of increasing lengths:
- */
- for (n = s->heap_len/2; n >= 1; n--) pqdownheap(s, tree, n);
-
- /* Construct the Huffman tree by repeatedly combining the least two
- * frequent nodes.
- */
- node = elems; /* next internal node of the tree */
- do {
- pqremove(s, tree, n); /* n = node of least frequency */
- m = s->heap[SMALLEST]; /* m = node of next least frequency */
-
- s->heap[--(s->heap_max)] = n; /* keep the nodes sorted by frequency */
- s->heap[--(s->heap_max)] = m;
-
- /* Create a new node father of n and m */
- tree[node].Freq = tree[n].Freq + tree[m].Freq;
- s->depth[node] = (uch) (MAX(s->depth[n], s->depth[m]) + 1);
- tree[n].Dad = tree[m].Dad = (ush)node;
-#ifdef DUMP_BL_TREE
- if (tree == s->bl_tree) {
- fprintf(stderr,"\nnode %d(%d), sons %d(%d) %d(%d)",
- node, tree[node].Freq, n, tree[n].Freq, m, tree[m].Freq);
- }
-#endif
- /* and insert the new node in the heap */
- s->heap[SMALLEST] = node++;
- pqdownheap(s, tree, SMALLEST);
-
- } while (s->heap_len >= 2);
-
- s->heap[--(s->heap_max)] = s->heap[SMALLEST];
-
- /* At this point, the fields freq and dad are set. We can now
- * generate the bit lengths.
- */
- gen_bitlen(s, (tree_desc *)desc);
-
- /* The field len is now set, we can generate the bit codes */
- gen_codes ((ct_data *)tree, max_code, s->bl_count);
-}
-
-/* ===========================================================================
- * Scan a literal or distance tree to determine the frequencies of the codes
- * in the bit length tree.
- */
-local void scan_tree (s, tree, max_code)
- deflate_state *s;
- ct_data *tree; /* the tree to be scanned */
- int max_code; /* and its largest code of non zero frequency */
-{
- int n; /* iterates over all tree elements */
- int prevlen = -1; /* last emitted length */
- int curlen; /* length of current code */
- int nextlen = tree[0].Len; /* length of next code */
- int count = 0; /* repeat count of the current code */
- int max_count = 7; /* max repeat count */
- int min_count = 4; /* min repeat count */
-
- if (nextlen == 0) max_count = 138, min_count = 3;
- tree[max_code+1].Len = (ush)0xffff; /* guard */
-
- for (n = 0; n <= max_code; n++) {
- curlen = nextlen; nextlen = tree[n+1].Len;
- if (++count < max_count && curlen == nextlen) {
- continue;
- } else if (count < min_count) {
- s->bl_tree[curlen].Freq += count;
- } else if (curlen != 0) {
- if (curlen != prevlen) s->bl_tree[curlen].Freq++;
- s->bl_tree[REP_3_6].Freq++;
- } else if (count <= 10) {
- s->bl_tree[REPZ_3_10].Freq++;
- } else {
- s->bl_tree[REPZ_11_138].Freq++;
- }
- count = 0; prevlen = curlen;
- if (nextlen == 0) {
- max_count = 138, min_count = 3;
- } else if (curlen == nextlen) {
- max_count = 6, min_count = 3;
- } else {
- max_count = 7, min_count = 4;
- }
- }
-}
-
-/* ===========================================================================
- * Send a literal or distance tree in compressed form, using the codes in
- * bl_tree.
- */
-local void send_tree (s, tree, max_code)
- deflate_state *s;
- ct_data *tree; /* the tree to be scanned */
- int max_code; /* and its largest code of non zero frequency */
-{
- int n; /* iterates over all tree elements */
- int prevlen = -1; /* last emitted length */
- int curlen; /* length of current code */
- int nextlen = tree[0].Len; /* length of next code */
- int count = 0; /* repeat count of the current code */
- int max_count = 7; /* max repeat count */
- int min_count = 4; /* min repeat count */
-
- /* tree[max_code+1].Len = -1; */ /* guard already set */
- if (nextlen == 0) max_count = 138, min_count = 3;
-
- for (n = 0; n <= max_code; n++) {
- curlen = nextlen; nextlen = tree[n+1].Len;
- if (++count < max_count && curlen == nextlen) {
- continue;
- } else if (count < min_count) {
- do { send_code(s, curlen, s->bl_tree); } while (--count != 0);
-
- } else if (curlen != 0) {
- if (curlen != prevlen) {
- send_code(s, curlen, s->bl_tree); count--;
- }
- Assert(count >= 3 && count <= 6, " 3_6?");
- send_code(s, REP_3_6, s->bl_tree); send_bits(s, count-3, 2);
-
- } else if (count <= 10) {
- send_code(s, REPZ_3_10, s->bl_tree); send_bits(s, count-3, 3);
-
- } else {
- send_code(s, REPZ_11_138, s->bl_tree); send_bits(s, count-11, 7);
- }
- count = 0; prevlen = curlen;
- if (nextlen == 0) {
- max_count = 138, min_count = 3;
- } else if (curlen == nextlen) {
- max_count = 6, min_count = 3;
- } else {
- max_count = 7, min_count = 4;
- }
- }
-}
-
-/* ===========================================================================
- * Construct the Huffman tree for the bit lengths and return the index in
- * bl_order of the last bit length code to send.
- */
-local int build_bl_tree(s)
- deflate_state *s;
-{
- int max_blindex; /* index of last bit length code of non zero freq */
-
- /* Determine the bit length frequencies for literal and distance trees */
- scan_tree(s, (ct_data *)s->dyn_ltree, s->l_desc.max_code);
- scan_tree(s, (ct_data *)s->dyn_dtree, s->d_desc.max_code);
-
- /* Build the bit length tree: */
- build_tree(s, (tree_desc *)(&(s->bl_desc)));
- /* opt_len now includes the length of the tree representations, except
- * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.
- */
-
- /* Determine the number of bit length codes to send. The pkzip format
- * requires that at least 4 bit length codes be sent. (appnote.txt says
- * 3 but the actual value used is 4.)
- */
- for (max_blindex = BL_CODES-1; max_blindex >= 3; max_blindex--) {
- if (s->bl_tree[bl_order[max_blindex]].Len != 0) break;
- }
- /* Update opt_len to include the bit length tree and counts */
- s->opt_len += 3*(max_blindex+1) + 5+5+4;
- Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld",
- s->opt_len, s->static_len));
-
- return max_blindex;
-}
-
-/* ===========================================================================
- * Send the header for a block using dynamic Huffman trees: the counts, the
- * lengths of the bit length codes, the literal tree and the distance tree.
- * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.
- */
-local void send_all_trees(s, lcodes, dcodes, blcodes)
- deflate_state *s;
- int lcodes, dcodes, blcodes; /* number of codes for each tree */
-{
- int rank; /* index in bl_order */
-
- Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes");
- Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,
- "too many codes");
- Tracev((stderr, "\nbl counts: "));
- send_bits(s, lcodes-257, 5); /* not +255 as stated in appnote.txt */
- send_bits(s, dcodes-1, 5);
- send_bits(s, blcodes-4, 4); /* not -3 as stated in appnote.txt */
- for (rank = 0; rank < blcodes; rank++) {
- Tracev((stderr, "\nbl code %2d ", bl_order[rank]));
- send_bits(s, s->bl_tree[bl_order[rank]].Len, 3);
- }
- Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent));
-
- send_tree(s, (ct_data *)s->dyn_ltree, lcodes-1); /* literal tree */
- Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent));
-
- send_tree(s, (ct_data *)s->dyn_dtree, dcodes-1); /* distance tree */
- Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent));
-}
-
-/* ===========================================================================
- * Send a stored block
- */
-local void ct_stored_block(s, buf, stored_len, eof)
- deflate_state *s;
- charf *buf; /* input block */
- ulg stored_len; /* length of input block */
- int eof; /* true if this is the last block for a file */
-{
- send_bits(s, (STORED_BLOCK<<1)+eof, 3); /* send block type */
- s->compressed_len = (s->compressed_len + 3 + 7) & ~7L;
- s->compressed_len += (stored_len + 4) << 3;
-
- copy_block(s, buf, (unsigned)stored_len, 1); /* with header */
-}
-
-/* Send just the `stored block' type code without any length bytes or data.
- */
-local void ct_stored_type_only(s)
- deflate_state *s;
-{
- send_bits(s, (STORED_BLOCK << 1), 3);
- bi_windup(s);
- s->compressed_len = (s->compressed_len + 3) & ~7L;
-}
-
-
-/* ===========================================================================
- * Send one empty static block to give enough lookahead for inflate.
- * This takes 10 bits, of which 7 may remain in the bit buffer.
- * The current inflate code requires 9 bits of lookahead. If the EOB
- * code for the previous block was coded on 5 bits or less, inflate
- * may have only 5+3 bits of lookahead to decode this EOB.
- * (There are no problems if the previous block is stored or fixed.)
- */
-local void ct_align(s)
- deflate_state *s;
-{
- send_bits(s, STATIC_TREES<<1, 3);
- send_code(s, END_BLOCK, static_ltree);
- s->compressed_len += 10L; /* 3 for block type, 7 for EOB */
- bi_flush(s);
- /* Of the 10 bits for the empty block, we have already sent
- * (10 - bi_valid) bits. The lookahead for the EOB of the previous
- * block was thus its length plus what we have just sent.
- */
- if (s->last_eob_len + 10 - s->bi_valid < 9) {
- send_bits(s, STATIC_TREES<<1, 3);
- send_code(s, END_BLOCK, static_ltree);
- s->compressed_len += 10L;
- bi_flush(s);
- }
- s->last_eob_len = 7;
-}
-
-/* ===========================================================================
- * Determine the best encoding for the current block: dynamic trees, static
- * trees or store, and output the encoded block to the zip file. This function
- * returns the total compressed length for the file so far.
- */
-local ulg ct_flush_block(s, buf, stored_len, flush)
- deflate_state *s;
- charf *buf; /* input block, or NULL if too old */
- ulg stored_len; /* length of input block */
- int flush; /* Z_FINISH if this is the last block for a file */
-{
- ulg opt_lenb, static_lenb; /* opt_len and static_len in bytes */
- int max_blindex; /* index of last bit length code of non zero freq */
- int eof = flush == Z_FINISH;
-
- ++s->blocks_in_packet;
-
- /* Check if the file is ascii or binary */
- if (s->data_type == UNKNOWN) set_data_type(s);
-
- /* Construct the literal and distance trees */
- build_tree(s, (tree_desc *)(&(s->l_desc)));
- Tracev((stderr, "\nlit data: dyn %ld, stat %ld", s->opt_len,
- s->static_len));
-
- build_tree(s, (tree_desc *)(&(s->d_desc)));
- Tracev((stderr, "\ndist data: dyn %ld, stat %ld", s->opt_len,
- s->static_len));
- /* At this point, opt_len and static_len are the total bit lengths of
- * the compressed block data, excluding the tree representations.
- */
-
- /* Build the bit length tree for the above two trees, and get the index
- * in bl_order of the last bit length code to send.
- */
- max_blindex = build_bl_tree(s);
-
- /* Determine the best encoding. Compute first the block length in bytes */
- opt_lenb = (s->opt_len+3+7)>>3;
- static_lenb = (s->static_len+3+7)>>3;
-
- Tracev((stderr, "\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u ",
- opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len,
- s->last_lit));
-
- if (static_lenb <= opt_lenb) opt_lenb = static_lenb;
-
- /* If compression failed and this is the first and last block,
- * and if the .zip file can be seeked (to rewrite the local header),
- * the whole file is transformed into a stored file:
- */
-#ifdef STORED_FILE_OK
-# ifdef FORCE_STORED_FILE
- if (eof && compressed_len == 0L) /* force stored file */
-# else
- if (stored_len <= opt_lenb && eof && s->compressed_len==0L && seekable())
-# endif
- {
- /* Since LIT_BUFSIZE <= 2*WSIZE, the input data must be there: */
- if (buf == (charf*)0) error ("block vanished");
-
- copy_block(buf, (unsigned)stored_len, 0); /* without header */
- s->compressed_len = stored_len << 3;
- s->method = STORED;
- } else
-#endif /* STORED_FILE_OK */
-
- /* For Z_PACKET_FLUSH, if we don't achieve the required minimum
- * compression, and this block contains all the data since the last
- * time we used Z_PACKET_FLUSH, then just omit this block completely
- * from the output.
- */
- if (flush == Z_PACKET_FLUSH && s->blocks_in_packet == 1
- && opt_lenb > stored_len - s->minCompr) {
- s->blocks_in_packet = 0;
- /* output nothing */
- } else
-
-#ifdef FORCE_STORED
- if (buf != (char*)0) /* force stored block */
-#else
- if (stored_len+4 <= opt_lenb && buf != (char*)0)
- /* 4: two words for the lengths */
-#endif
- {
- /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.
- * Otherwise we can't have processed more than WSIZE input bytes since
- * the last block flush, because compression would have been
- * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to
- * transform a block into a stored block.
- */
- ct_stored_block(s, buf, stored_len, eof);
- } else
-
-#ifdef FORCE_STATIC
- if (static_lenb >= 0) /* force static trees */
-#else
- if (static_lenb == opt_lenb)
-#endif
- {
- send_bits(s, (STATIC_TREES<<1)+eof, 3);
- compress_block(s, (ct_data *)static_ltree, (ct_data *)static_dtree);
- s->compressed_len += 3 + s->static_len;
- } else {
- send_bits(s, (DYN_TREES<<1)+eof, 3);
- send_all_trees(s, s->l_desc.max_code+1, s->d_desc.max_code+1,
- max_blindex+1);
- compress_block(s, (ct_data *)s->dyn_ltree, (ct_data *)s->dyn_dtree);
- s->compressed_len += 3 + s->opt_len;
- }
- Assert (s->compressed_len == s->bits_sent, "bad compressed size");
- init_block(s);
-
- if (eof) {
- bi_windup(s);
- s->compressed_len += 7; /* align on byte boundary */
- }
- Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len>>3,
- s->compressed_len-7*eof));
-
- return s->compressed_len >> 3;
-}
-
-/* ===========================================================================
- * Save the match info and tally the frequency counts. Return true if
- * the current block must be flushed.
- */
-local int ct_tally (s, dist, lc)
- deflate_state *s;
- int dist; /* distance of matched string */
- int lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */
-{
- s->d_buf[s->last_lit] = (ush)dist;
- s->l_buf[s->last_lit++] = (uch)lc;
- if (dist == 0) {
- /* lc is the unmatched char */
- s->dyn_ltree[lc].Freq++;
- } else {
- s->matches++;
- /* Here, lc is the match length - MIN_MATCH */
- dist--; /* dist = match distance - 1 */
- Assert((ush)dist < (ush)MAX_DIST(s) &&
- (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&
- (ush)d_code(dist) < (ush)D_CODES, "ct_tally: bad match");
-
- s->dyn_ltree[length_code[lc]+LITERALS+1].Freq++;
- s->dyn_dtree[d_code(dist)].Freq++;
- }
-
- /* Try to guess if it is profitable to stop the current block here */
- if (s->level > 2 && (s->last_lit & 0xfff) == 0) {
- /* Compute an upper bound for the compressed length */
- ulg out_length = (ulg)s->last_lit*8L;
- ulg in_length = (ulg)s->strstart - s->block_start;
- int dcode;
- for (dcode = 0; dcode < D_CODES; dcode++) {
- out_length += (ulg)s->dyn_dtree[dcode].Freq *
- (5L+extra_dbits[dcode]);
- }
- out_length >>= 3;
- Tracev((stderr,"\nlast_lit %u, in %ld, out ~%ld(%ld%%) ",
- s->last_lit, in_length, out_length,
- 100L - out_length*100L/in_length));
- if (s->matches < s->last_lit/2 && out_length < in_length/2) return 1;
- }
- return (s->last_lit == s->lit_bufsize-1);
- /* We avoid equality with lit_bufsize because of wraparound at 64K
- * on 16 bit machines and because stored blocks are restricted to
- * 64K-1 bytes.
- */
-}
-
-/* ===========================================================================
- * Send the block data compressed using the given Huffman trees
- */
-local void compress_block(s, ltree, dtree)
- deflate_state *s;
- ct_data *ltree; /* literal tree */
- ct_data *dtree; /* distance tree */
-{
- unsigned dist; /* distance of matched string */
- int lc; /* match length or unmatched char (if dist == 0) */
- unsigned lx = 0; /* running index in l_buf */
- unsigned code; /* the code to send */
- int extra; /* number of extra bits to send */
-
- if (s->last_lit != 0) do {
- dist = s->d_buf[lx];
- lc = s->l_buf[lx++];
- if (dist == 0) {
- send_code(s, lc, ltree); /* send a literal byte */
- Tracecv(isgraph(lc), (stderr," '%c' ", lc));
- } else {
- /* Here, lc is the match length - MIN_MATCH */
- code = length_code[lc];
- send_code(s, code+LITERALS+1, ltree); /* send the length code */
- extra = extra_lbits[code];
- if (extra != 0) {
- lc -= base_length[code];
- send_bits(s, lc, extra); /* send the extra length bits */
- }
- dist--; /* dist is now the match distance - 1 */
- code = d_code(dist);
- Assert (code < D_CODES, "bad d_code");
-
- send_code(s, code, dtree); /* send the distance code */
- extra = extra_dbits[code];
- if (extra != 0) {
- dist -= base_dist[code];
- send_bits(s, dist, extra); /* send the extra distance bits */
- }
- } /* literal or match pair ? */
-
- /* Check that the overlay between pending_buf and d_buf+l_buf is ok: */
- Assert(s->pending < s->lit_bufsize + 2*lx, "pendingBuf overflow");
-
- } while (lx < s->last_lit);
-
- send_code(s, END_BLOCK, ltree);
- s->last_eob_len = ltree[END_BLOCK].Len;
-}
-
-/* ===========================================================================
- * Set the data type to ASCII or BINARY, using a crude approximation:
- * binary if more than 20% of the bytes are <= 6 or >= 128, ascii otherwise.
- * IN assertion: the fields freq of dyn_ltree are set and the total of all
- * frequencies does not exceed 64K (to fit in an int on 16 bit machines).
- */
-local void set_data_type(s)
- deflate_state *s;
-{
- int n = 0;
- unsigned ascii_freq = 0;
- unsigned bin_freq = 0;
- while (n < 7) bin_freq += s->dyn_ltree[n++].Freq;
- while (n < 128) ascii_freq += s->dyn_ltree[n++].Freq;
- while (n < LITERALS) bin_freq += s->dyn_ltree[n++].Freq;
- s->data_type = (Byte)(bin_freq > (ascii_freq >> 2) ? BINARY : ASCII);
-}
-
-/* ===========================================================================
- * Reverse the first len bits of a code, using straightforward code (a faster
- * method would use a table)
- * IN assertion: 1 <= len <= 15
- */
-local unsigned bi_reverse(code, len)
- unsigned code; /* the value to invert */
- int len; /* its bit length */
-{
- register unsigned res = 0;
- do {
- res |= code & 1;
- code >>= 1, res <<= 1;
- } while (--len > 0);
- return res >> 1;
-}
-
-/* ===========================================================================
- * Flush the bit buffer, keeping at most 7 bits in it.
- */
-local void bi_flush(s)
- deflate_state *s;
-{
- if (s->bi_valid == 16) {
- put_short(s, s->bi_buf);
- s->bi_buf = 0;
- s->bi_valid = 0;
- } else if (s->bi_valid >= 8) {
- put_byte(s, (Byte)s->bi_buf);
- s->bi_buf >>= 8;
- s->bi_valid -= 8;
- }
-}
-
-/* ===========================================================================
- * Flush the bit buffer and align the output on a byte boundary
- */
-local void bi_windup(s)
- deflate_state *s;
-{
- if (s->bi_valid > 8) {
- put_short(s, s->bi_buf);
- } else if (s->bi_valid > 0) {
- put_byte(s, (Byte)s->bi_buf);
- }
- s->bi_buf = 0;
- s->bi_valid = 0;
-#ifdef DEBUG_ZLIB
- s->bits_sent = (s->bits_sent+7) & ~7;
-#endif
-}
-
-/* ===========================================================================
- * Copy a stored block, storing first the length and its
- * one's complement if requested.
- */
-local void copy_block(s, buf, len, header)
- deflate_state *s;
- charf *buf; /* the input data */
- unsigned len; /* its length */
- int header; /* true if block header must be written */
-{
- bi_windup(s); /* align on byte boundary */
- s->last_eob_len = 8; /* enough lookahead for inflate */
-
- if (header) {
- put_short(s, (ush)len);
- put_short(s, (ush)~len);
-#ifdef DEBUG_ZLIB
- s->bits_sent += 2*16;
-#endif
- }
-#ifdef DEBUG_ZLIB
- s->bits_sent += (ulg)len<<3;
-#endif
- while (len--) {
- put_byte(s, *buf++);
- }
-}
-
-
-/*+++++*/
-/* infblock.h -- header to use infblock.c
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-struct inflate_blocks_state;
-typedef struct inflate_blocks_state FAR inflate_blocks_statef;
-
-local inflate_blocks_statef * inflate_blocks_new OF((
- z_stream *z,
- check_func c, /* check function */
- uInt w)); /* window size */
-
-local int inflate_blocks OF((
- inflate_blocks_statef *,
- z_stream *,
- int)); /* initial return code */
-
-local void inflate_blocks_reset OF((
- inflate_blocks_statef *,
- z_stream *,
- uLongf *)); /* check value on output */
-
-local int inflate_blocks_free OF((
- inflate_blocks_statef *,
- z_stream *,
- uLongf *)); /* check value on output */
-
-local int inflate_addhistory OF((
- inflate_blocks_statef *,
- z_stream *));
-
-local int inflate_packet_flush OF((
- inflate_blocks_statef *));
-
-/*+++++*/
-/* inftrees.h -- header to use inftrees.c
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-/* Huffman code lookup table entry--this entry is four bytes for machines
- that have 16-bit pointers (e.g. PC's in the small or medium model). */
-
-typedef struct inflate_huft_s FAR inflate_huft;
-
-struct inflate_huft_s {
- union {
- struct {
- Byte Exop; /* number of extra bits or operation */
- Byte Bits; /* number of bits in this code or subcode */
- } what;
- uInt Nalloc; /* number of these allocated here */
- Bytef *pad; /* pad structure to a power of 2 (4 bytes for */
- } word; /* 16-bit, 8 bytes for 32-bit machines) */
- union {
- uInt Base; /* literal, length base, or distance base */
- inflate_huft *Next; /* pointer to next level of table */
- } more;
-};
-
-#ifdef DEBUG_ZLIB
- local uInt inflate_hufts;
-#endif
-
-local int inflate_trees_bits OF((
- uIntf *, /* 19 code lengths */
- uIntf *, /* bits tree desired/actual depth */
- inflate_huft * FAR *, /* bits tree result */
- z_stream *)); /* for zalloc, zfree functions */
-
-local int inflate_trees_dynamic OF((
- uInt, /* number of literal/length codes */
- uInt, /* number of distance codes */
- uIntf *, /* that many (total) code lengths */
- uIntf *, /* literal desired/actual bit depth */
- uIntf *, /* distance desired/actual bit depth */
- inflate_huft * FAR *, /* literal/length tree result */
- inflate_huft * FAR *, /* distance tree result */
- z_stream *)); /* for zalloc, zfree functions */
-
-local int inflate_trees_fixed OF((
- uIntf *, /* literal desired/actual bit depth */
- uIntf *, /* distance desired/actual bit depth */
- inflate_huft * FAR *, /* literal/length tree result */
- inflate_huft * FAR *)); /* distance tree result */
-
-local int inflate_trees_free OF((
- inflate_huft *, /* tables to free */
- z_stream *)); /* for zfree function */
-
-
-/*+++++*/
-/* infcodes.h -- header to use infcodes.c
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-struct inflate_codes_state;
-typedef struct inflate_codes_state FAR inflate_codes_statef;
-
-local inflate_codes_statef *inflate_codes_new OF((
- uInt, uInt,
- inflate_huft *, inflate_huft *,
- z_stream *));
-
-local int inflate_codes OF((
- inflate_blocks_statef *,
- z_stream *,
- int));
-
-local void inflate_codes_free OF((
- inflate_codes_statef *,
- z_stream *));
-
-
-/*+++++*/
-/* inflate.c -- zlib interface to inflate modules
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* inflate private state */
-struct internal_state {
-
- /* mode */
- enum {
- METHOD, /* waiting for method byte */
- FLAG, /* waiting for flag byte */
- BLOCKS, /* decompressing blocks */
- CHECK4, /* four check bytes to go */
- CHECK3, /* three check bytes to go */
- CHECK2, /* two check bytes to go */
- CHECK1, /* one check byte to go */
- DONE, /* finished check, done */
- BAD} /* got an error--stay here */
- mode; /* current inflate mode */
-
- /* mode dependent information */
- union {
- uInt method; /* if FLAGS, method byte */
- struct {
- uLong was; /* computed check value */
- uLong need; /* stream check value */
- } check; /* if CHECK, check values to compare */
- uInt marker; /* if BAD, inflateSync's marker bytes count */
- } sub; /* submode */
-
- /* mode independent information */
- int nowrap; /* flag for no wrapper */
- uInt wbits; /* log2(window size) (8..15, defaults to 15) */
- inflate_blocks_statef
- *blocks; /* current inflate_blocks state */
-
-};
-
-
-int inflateReset(z)
-z_stream *z;
-{
- uLong c;
-
- if (z == Z_NULL || z->state == Z_NULL)
- return Z_STREAM_ERROR;
- z->total_in = z->total_out = 0;
- z->msg = Z_NULL;
- z->state->mode = z->state->nowrap ? BLOCKS : METHOD;
- inflate_blocks_reset(z->state->blocks, z, &c);
- Trace((stderr, "inflate: reset\n"));
- return Z_OK;
-}
-
-
-int inflateEnd(z)
-z_stream *z;
-{
- uLong c;
-
- if (z == Z_NULL || z->state == Z_NULL || z->zfree == Z_NULL)
- return Z_STREAM_ERROR;
- if (z->state->blocks != Z_NULL)
- inflate_blocks_free(z->state->blocks, z, &c);
- ZFREE(z, z->state, sizeof(struct internal_state));
- z->state = Z_NULL;
- Trace((stderr, "inflate: end\n"));
- return Z_OK;
-}
-
-
-int inflateInit2(z, w)
-z_stream *z;
-int w;
-{
- /* initialize state */
- if (z == Z_NULL)
- return Z_STREAM_ERROR;
-/* if (z->zalloc == Z_NULL) z->zalloc = zcalloc; */
-/* if (z->zfree == Z_NULL) z->zfree = zcfree; */
- if ((z->state = (struct internal_state FAR *)
- ZALLOC(z,1,sizeof(struct internal_state))) == Z_NULL)
- return Z_MEM_ERROR;
- z->state->blocks = Z_NULL;
-
- /* handle undocumented nowrap option (no zlib header or check) */
- z->state->nowrap = 0;
- if (w < 0)
- {
- w = - w;
- z->state->nowrap = 1;
- }
-
- /* set window size */
- if (w < 8 || w > 15)
- {
- inflateEnd(z);
- return Z_STREAM_ERROR;
- }
- z->state->wbits = (uInt)w;
-
- /* create inflate_blocks state */
- if ((z->state->blocks =
- inflate_blocks_new(z, z->state->nowrap ? Z_NULL : adler32, 1 << w))
- == Z_NULL)
- {
- inflateEnd(z);
- return Z_MEM_ERROR;
- }
- Trace((stderr, "inflate: allocated\n"));
-
- /* reset state */
- inflateReset(z);
- return Z_OK;
-}
-
-
-int inflateInit(z)
-z_stream *z;
-{
- return inflateInit2(z, DEF_WBITS);
-}
-
-
-#define NEEDBYTE {if(z->avail_in==0)goto empty;r=Z_OK;}
-#define NEXTBYTE (z->avail_in--,z->total_in++,*z->next_in++)
-
-int inflate(z, f)
-z_stream *z;
-int f;
-{
- int r;
- uInt b;
-
- if (z == Z_NULL || z->next_in == Z_NULL)
- return Z_STREAM_ERROR;
- r = Z_BUF_ERROR;
- while (1) switch (z->state->mode)
- {
- case METHOD:
- NEEDBYTE
- if (((z->state->sub.method = NEXTBYTE) & 0xf) != DEFLATED)
- {
- z->state->mode = BAD;
- z->msg = "unknown compression method";
- z->state->sub.marker = 5; /* can't try inflateSync */
- break;
- }
- if ((z->state->sub.method >> 4) + 8 > z->state->wbits)
- {
- z->state->mode = BAD;
- z->msg = "invalid window size";
- z->state->sub.marker = 5; /* can't try inflateSync */
- break;
- }
- z->state->mode = FLAG;
- case FLAG:
- NEEDBYTE
- if ((b = NEXTBYTE) & 0x20)
- {
- z->state->mode = BAD;
- z->msg = "invalid reserved bit";
- z->state->sub.marker = 5; /* can't try inflateSync */
- break;
- }
- if (((z->state->sub.method << 8) + b) % 31)
- {
- z->state->mode = BAD;
- z->msg = "incorrect header check";
- z->state->sub.marker = 5; /* can't try inflateSync */
- break;
- }
- Trace((stderr, "inflate: zlib header ok\n"));
- z->state->mode = BLOCKS;
- case BLOCKS:
- r = inflate_blocks(z->state->blocks, z, r);
- if (f == Z_PACKET_FLUSH && z->avail_in == 0 && z->avail_out != 0)
- r = inflate_packet_flush(z->state->blocks);
- if (r == Z_DATA_ERROR)
- {
- z->state->mode = BAD;
- z->state->sub.marker = 0; /* can try inflateSync */
- break;
- }
- if (r != Z_STREAM_END)
- return r;
- r = Z_OK;
- inflate_blocks_reset(z->state->blocks, z, &z->state->sub.check.was);
- if (z->state->nowrap)
- {
- z->state->mode = DONE;
- break;
- }
- z->state->mode = CHECK4;
- case CHECK4:
- NEEDBYTE
- z->state->sub.check.need = (uLong)NEXTBYTE << 24;
- z->state->mode = CHECK3;
- case CHECK3:
- NEEDBYTE
- z->state->sub.check.need += (uLong)NEXTBYTE << 16;
- z->state->mode = CHECK2;
- case CHECK2:
- NEEDBYTE
- z->state->sub.check.need += (uLong)NEXTBYTE << 8;
- z->state->mode = CHECK1;
- case CHECK1:
- NEEDBYTE
- z->state->sub.check.need += (uLong)NEXTBYTE;
-
- if (z->state->sub.check.was != z->state->sub.check.need)
- {
- z->state->mode = BAD;
- z->msg = "incorrect data check";
- z->state->sub.marker = 5; /* can't try inflateSync */
- break;
- }
- Trace((stderr, "inflate: zlib check ok\n"));
- z->state->mode = DONE;
- case DONE:
- return Z_STREAM_END;
- case BAD:
- return Z_DATA_ERROR;
- default:
- return Z_STREAM_ERROR;
- }
-
- empty:
- if (f != Z_PACKET_FLUSH)
- return r;
- z->state->mode = BAD;
- z->state->sub.marker = 0; /* can try inflateSync */
- return Z_DATA_ERROR;
-}
-
-/*
- * This subroutine adds the data at next_in/avail_in to the output history
- * without performing any output. The output buffer must be "caught up";
- * i.e. no pending output (hence s->read equals s->write), and the state must
- * be BLOCKS (i.e. we should be willing to see the start of a series of
- * BLOCKS). On exit, the output will also be caught up, and the checksum
- * will have been updated if need be.
- */
-
-int inflateIncomp(z)
-z_stream *z;
-{
- if (z->state->mode != BLOCKS)
- return Z_DATA_ERROR;
- return inflate_addhistory(z->state->blocks, z);
-}
-
-
-int inflateSync(z)
-z_stream *z;
-{
- uInt n; /* number of bytes to look at */
- Bytef *p; /* pointer to bytes */
- uInt m; /* number of marker bytes found in a row */
- uLong r, w; /* temporaries to save total_in and total_out */
-
- /* set up */
- if (z == Z_NULL || z->state == Z_NULL)
- return Z_STREAM_ERROR;
- if (z->state->mode != BAD)
- {
- z->state->mode = BAD;
- z->state->sub.marker = 0;
- }
- if ((n = z->avail_in) == 0)
- return Z_BUF_ERROR;
- p = z->next_in;
- m = z->state->sub.marker;
-
- /* search */
- while (n && m < 4)
- {
- if (*p == (Byte)(m < 2 ? 0 : 0xff))
- m++;
- else if (*p)
- m = 0;
- else
- m = 4 - m;
- p++, n--;
- }
-
- /* restore */
- z->total_in += p - z->next_in;
- z->next_in = p;
- z->avail_in = n;
- z->state->sub.marker = m;
-
- /* return no joy or set up to restart on a new block */
- if (m != 4)
- return Z_DATA_ERROR;
- r = z->total_in; w = z->total_out;
- inflateReset(z);
- z->total_in = r; z->total_out = w;
- z->state->mode = BLOCKS;
- return Z_OK;
-}
-
-#undef NEEDBYTE
-#undef NEXTBYTE
-
-/*+++++*/
-/* infutil.h -- types and macros common to blocks and codes
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-/* inflate blocks semi-private state */
-struct inflate_blocks_state {
-
- /* mode */
- enum {
- TYPE, /* get type bits (3, including end bit) */
- LENS, /* get lengths for stored */
- STORED, /* processing stored block */
- TABLE, /* get table lengths */
- BTREE, /* get bit lengths tree for a dynamic block */
- DTREE, /* get length, distance trees for a dynamic block */
- CODES, /* processing fixed or dynamic block */
- DRY, /* output remaining window bytes */
- DONEB, /* finished last block, done */
- BADB} /* got a data error--stuck here */
- mode; /* current inflate_block mode */
-
- /* mode dependent information */
- union {
- uInt left; /* if STORED, bytes left to copy */
- struct {
- uInt table; /* table lengths (14 bits) */
- uInt index; /* index into blens (or border) */
- uIntf *blens; /* bit lengths of codes */
- uInt bb; /* bit length tree depth */
- inflate_huft *tb; /* bit length decoding tree */
- int nblens; /* # elements allocated at blens */
- } trees; /* if DTREE, decoding info for trees */
- struct {
- inflate_huft *tl, *td; /* trees to free */
- inflate_codes_statef
- *codes;
- } decode; /* if CODES, current state */
- } sub; /* submode */
- uInt last; /* true if this block is the last block */
-
- /* mode independent information */
- uInt bitk; /* bits in bit buffer */
- uLong bitb; /* bit buffer */
- Bytef *window; /* sliding window */
- Bytef *end; /* one byte after sliding window */
- Bytef *read; /* window read pointer */
- Bytef *write; /* window write pointer */
- check_func checkfn; /* check function */
- uLong check; /* check on output */
-
-};
-
-
-/* defines for inflate input/output */
-/* update pointers and return */
-#define UPDBITS {s->bitb=b;s->bitk=k;}
-#define UPDIN {z->avail_in=n;z->total_in+=p-z->next_in;z->next_in=p;}
-#define UPDOUT {s->write=q;}
-#define UPDATE {UPDBITS UPDIN UPDOUT}
-#define LEAVE {UPDATE return inflate_flush(s,z,r);}
-/* get bytes and bits */
-#define LOADIN {p=z->next_in;n=z->avail_in;b=s->bitb;k=s->bitk;}
-#define NEEDBYTE {if(n)r=Z_OK;else LEAVE}
-#define NEXTBYTE (n--,*p++)
-#define NEEDBITS(j) {while(k<(j)){NEEDBYTE;b|=((uLong)NEXTBYTE)<<k;k+=8;}}
-#define DUMPBITS(j) {b>>=(j);k-=(j);}
-/* output bytes */
-#define WAVAIL (q<s->read?s->read-q-1:s->end-q)
-#define LOADOUT {q=s->write;m=WAVAIL;}
-#define WRAP {if(q==s->end&&s->read!=s->window){q=s->window;m=WAVAIL;}}
-#define FLUSH {UPDOUT r=inflate_flush(s,z,r); LOADOUT}
-#define NEEDOUT {if(m==0){WRAP if(m==0){FLUSH WRAP if(m==0) LEAVE}}r=Z_OK;}
-#define OUTBYTE(a) {*q++=(Byte)(a);m--;}
-/* load local pointers */
-#define LOAD {LOADIN LOADOUT}
-
-/* And'ing with mask[n] masks the lower n bits */
-local uInt inflate_mask[] = {
- 0x0000,
- 0x0001, 0x0003, 0x0007, 0x000f, 0x001f, 0x003f, 0x007f, 0x00ff,
- 0x01ff, 0x03ff, 0x07ff, 0x0fff, 0x1fff, 0x3fff, 0x7fff, 0xffff
-};
-
-/* copy as much as possible from the sliding window to the output area */
-local int inflate_flush OF((
- inflate_blocks_statef *,
- z_stream *,
- int));
-
-/*+++++*/
-/* inffast.h -- header to use inffast.c
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
- part of the implementation of the compression library and is
- subject to change. Applications should only use zlib.h.
- */
-
-local int inflate_fast OF((
- uInt,
- uInt,
- inflate_huft *,
- inflate_huft *,
- inflate_blocks_statef *,
- z_stream *));
-
-
-/*+++++*/
-/* infblock.c -- interpret and process block types to last block
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* Table for deflate from PKZIP's appnote.txt. */
-local uInt border[] = { /* Order of the bit length code lengths */
- 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15};
-
-/*
- Notes beyond the 1.93a appnote.txt:
-
- 1. Distance pointers never point before the beginning of the output
- stream.
- 2. Distance pointers can point back across blocks, up to 32k away.
- 3. There is an implied maximum of 7 bits for the bit length table and
- 15 bits for the actual data.
- 4. If only one code exists, then it is encoded using one bit. (Zero
- would be more efficient, but perhaps a little confusing.) If two
- codes exist, they are coded using one bit each (0 and 1).
- 5. There is no way of sending zero distance codes--a dummy must be
- sent if there are none. (History: a pre 2.0 version of PKZIP would
- store blocks with no distance codes, but this was discovered to be
- too harsh a criterion.) Valid only for 1.93a. 2.04c does allow
- zero distance codes, which is sent as one code of zero bits in
- length.
- 6. There are up to 286 literal/length codes. Code 256 represents the
- end-of-block. Note however that the static length tree defines
- 288 codes just to fill out the Huffman codes. Codes 286 and 287
- cannot be used though, since there is no length base or extra bits
- defined for them. Similarily, there are up to 30 distance codes.
- However, static trees define 32 codes (all 5 bits) to fill out the
- Huffman codes, but the last two had better not show up in the data.
- 7. Unzip can check dynamic Huffman blocks for complete code sets.
- The exception is that a single code would not be complete (see #4).
- 8. The five bits following the block type is really the number of
- literal codes sent minus 257.
- 9. Length codes 8,16,16 are interpreted as 13 length codes of 8 bits
- (1+6+6). Therefore, to output three times the length, you output
- three codes (1+1+1), whereas to output four times the same length,
- you only need two codes (1+3). Hmm.
- 10. In the tree reconstruction algorithm, Code = Code + Increment
- only if BitLength(i) is not zero. (Pretty obvious.)
- 11. Correction: 4 Bits: # of Bit Length codes - 4 (4 - 19)
- 12. Note: length code 284 can represent 227-258, but length code 285
- really is 258. The last length deserves its own, short code
- since it gets used a lot in very redundant files. The length
- 258 is special since 258 - 3 (the min match length) is 255.
- 13. The literal/length and distance code bit lengths are read as a
- single stream of lengths. It is possible (and advantageous) for
- a repeat code (16, 17, or 18) to go across the boundary between
- the two sets of lengths.
- */
-
-
-local void inflate_blocks_reset(s, z, c)
-inflate_blocks_statef *s;
-z_stream *z;
-uLongf *c;
-{
- if (s->checkfn != Z_NULL)
- *c = s->check;
- if (s->mode == BTREE || s->mode == DTREE)
- ZFREE(z, s->sub.trees.blens, s->sub.trees.nblens * sizeof(uInt));
- if (s->mode == CODES)
- {
- inflate_codes_free(s->sub.decode.codes, z);
- inflate_trees_free(s->sub.decode.td, z);
- inflate_trees_free(s->sub.decode.tl, z);
- }
- s->mode = TYPE;
- s->bitk = 0;
- s->bitb = 0;
- s->read = s->write = s->window;
- if (s->checkfn != Z_NULL)
- s->check = (*s->checkfn)(0L, Z_NULL, 0);
- Trace((stderr, "inflate: blocks reset\n"));
-}
-
-
-local inflate_blocks_statef *inflate_blocks_new(z, c, w)
-z_stream *z;
-check_func c;
-uInt w;
-{
- inflate_blocks_statef *s;
-
- if ((s = (inflate_blocks_statef *)ZALLOC
- (z,1,sizeof(struct inflate_blocks_state))) == Z_NULL)
- return s;
- if ((s->window = (Bytef *)ZALLOC(z, 1, w)) == Z_NULL)
- {
- ZFREE(z, s, sizeof(struct inflate_blocks_state));
- return Z_NULL;
- }
- s->end = s->window + w;
- s->checkfn = c;
- s->mode = TYPE;
- Trace((stderr, "inflate: blocks allocated\n"));
- inflate_blocks_reset(s, z, &s->check);
- return s;
-}
-
-
-local int inflate_blocks(s, z, r)
-inflate_blocks_statef *s;
-z_stream *z;
-int r;
-{
- uInt t; /* temporary storage */
- uLong b; /* bit buffer */
- uInt k; /* bits in bit buffer */
- Bytef *p; /* input data pointer */
- uInt n; /* bytes available there */
- Bytef *q; /* output window write pointer */
- uInt m; /* bytes to end of window or read pointer */
-
- /* copy input/output information to locals (UPDATE macro restores) */
- LOAD
-
- /* process input based on current state */
- while (1) switch (s->mode)
- {
- case TYPE:
- NEEDBITS(3)
- t = (uInt)b & 7;
- s->last = t & 1;
- switch (t >> 1)
- {
- case 0: /* stored */
- Trace((stderr, "inflate: stored block%s\n",
- s->last ? " (last)" : ""));
- DUMPBITS(3)
- t = k & 7; /* go to byte boundary */
- DUMPBITS(t)
- s->mode = LENS; /* get length of stored block */
- break;
- case 1: /* fixed */
- Trace((stderr, "inflate: fixed codes block%s\n",
- s->last ? " (last)" : ""));
- {
- uInt bl, bd;
- inflate_huft *tl, *td;
-
- inflate_trees_fixed(&bl, &bd, &tl, &td);
- s->sub.decode.codes = inflate_codes_new(bl, bd, tl, td, z);
- if (s->sub.decode.codes == Z_NULL)
- {
- r = Z_MEM_ERROR;
- LEAVE
- }
- s->sub.decode.tl = Z_NULL; /* don't try to free these */
- s->sub.decode.td = Z_NULL;
- }
- DUMPBITS(3)
- s->mode = CODES;
- break;
- case 2: /* dynamic */
- Trace((stderr, "inflate: dynamic codes block%s\n",
- s->last ? " (last)" : ""));
- DUMPBITS(3)
- s->mode = TABLE;
- break;
- case 3: /* illegal */
- DUMPBITS(3)
- s->mode = BADB;
- z->msg = "invalid block type";
- r = Z_DATA_ERROR;
- LEAVE
- }
- break;
- case LENS:
- NEEDBITS(32)
- if (((~b) >> 16) != (b & 0xffff))
- {
- s->mode = BADB;
- z->msg = "invalid stored block lengths";
- r = Z_DATA_ERROR;
- LEAVE
- }
- s->sub.left = (uInt)b & 0xffff;
- b = k = 0; /* dump bits */
- Tracev((stderr, "inflate: stored length %u\n", s->sub.left));
- s->mode = s->sub.left ? STORED : TYPE;
- break;
- case STORED:
- if (n == 0)
- LEAVE
- NEEDOUT
- t = s->sub.left;
- if (t > n) t = n;
- if (t > m) t = m;
- zmemcpy(q, p, t);
- p += t; n -= t;
- q += t; m -= t;
- if ((s->sub.left -= t) != 0)
- break;
- Tracev((stderr, "inflate: stored end, %lu total out\n",
- z->total_out + (q >= s->read ? q - s->read :
- (s->end - s->read) + (q - s->window))));
- s->mode = s->last ? DRY : TYPE;
- break;
- case TABLE:
- NEEDBITS(14)
- s->sub.trees.table = t = (uInt)b & 0x3fff;
-#ifndef PKZIP_BUG_WORKAROUND
- if ((t & 0x1f) > 29 || ((t >> 5) & 0x1f) > 29)
- {
- s->mode = BADB;
- z->msg = "too many length or distance symbols";
- r = Z_DATA_ERROR;
- LEAVE
- }
-#endif
- t = 258 + (t & 0x1f) + ((t >> 5) & 0x1f);
- if (t < 19)
- t = 19;
- if ((s->sub.trees.blens = (uIntf*)ZALLOC(z, t, sizeof(uInt))) == Z_NULL)
- {
- r = Z_MEM_ERROR;
- LEAVE
- }
- s->sub.trees.nblens = t;
- DUMPBITS(14)
- s->sub.trees.index = 0;
- Tracev((stderr, "inflate: table sizes ok\n"));
- s->mode = BTREE;
- case BTREE:
- while (s->sub.trees.index < 4 + (s->sub.trees.table >> 10))
- {
- NEEDBITS(3)
- s->sub.trees.blens[border[s->sub.trees.index++]] = (uInt)b & 7;
- DUMPBITS(3)
- }
- while (s->sub.trees.index < 19)
- s->sub.trees.blens[border[s->sub.trees.index++]] = 0;
- s->sub.trees.bb = 7;
- t = inflate_trees_bits(s->sub.trees.blens, &s->sub.trees.bb,
- &s->sub.trees.tb, z);
- if (t != Z_OK)
- {
- r = t;
- if (r == Z_DATA_ERROR)
- s->mode = BADB;
- LEAVE
- }
- s->sub.trees.index = 0;
- Tracev((stderr, "inflate: bits tree ok\n"));
- s->mode = DTREE;
- case DTREE:
- while (t = s->sub.trees.table,
- s->sub.trees.index < 258 + (t & 0x1f) + ((t >> 5) & 0x1f))
- {
- inflate_huft *h;
- uInt i, j, c;
-
- t = s->sub.trees.bb;
- NEEDBITS(t)
- h = s->sub.trees.tb + ((uInt)b & inflate_mask[t]);
- t = h->word.what.Bits;
- c = h->more.Base;
- if (c < 16)
- {
- DUMPBITS(t)
- s->sub.trees.blens[s->sub.trees.index++] = c;
- }
- else /* c == 16..18 */
- {
- i = c == 18 ? 7 : c - 14;
- j = c == 18 ? 11 : 3;
- NEEDBITS(t + i)
- DUMPBITS(t)
- j += (uInt)b & inflate_mask[i];
- DUMPBITS(i)
- i = s->sub.trees.index;
- t = s->sub.trees.table;
- if (i + j > 258 + (t & 0x1f) + ((t >> 5) & 0x1f) ||
- (c == 16 && i < 1))
- {
- s->mode = BADB;
- z->msg = "invalid bit length repeat";
- r = Z_DATA_ERROR;
- LEAVE
- }
- c = c == 16 ? s->sub.trees.blens[i - 1] : 0;
- do {
- s->sub.trees.blens[i++] = c;
- } while (--j);
- s->sub.trees.index = i;
- }
- }
- inflate_trees_free(s->sub.trees.tb, z);
- s->sub.trees.tb = Z_NULL;
- {
- uInt bl, bd;
- inflate_huft *tl, *td;
- inflate_codes_statef *c;
-
- bl = 9; /* must be <= 9 for lookahead assumptions */
- bd = 6; /* must be <= 9 for lookahead assumptions */
- t = s->sub.trees.table;
- t = inflate_trees_dynamic(257 + (t & 0x1f), 1 + ((t >> 5) & 0x1f),
- s->sub.trees.blens, &bl, &bd, &tl, &td, z);
- if (t != Z_OK)
- {
- if (t == (uInt)Z_DATA_ERROR)
- s->mode = BADB;
- r = t;
- LEAVE
- }
- Tracev((stderr, "inflate: trees ok\n"));
- if ((c = inflate_codes_new(bl, bd, tl, td, z)) == Z_NULL)
- {
- inflate_trees_free(td, z);
- inflate_trees_free(tl, z);
- r = Z_MEM_ERROR;
- LEAVE
- }
- ZFREE(z, s->sub.trees.blens, s->sub.trees.nblens * sizeof(uInt));
- s->sub.decode.codes = c;
- s->sub.decode.tl = tl;
- s->sub.decode.td = td;
- }
- s->mode = CODES;
- case CODES:
- UPDATE
- if ((r = inflate_codes(s, z, r)) != Z_STREAM_END)
- return inflate_flush(s, z, r);
- r = Z_OK;
- inflate_codes_free(s->sub.decode.codes, z);
- inflate_trees_free(s->sub.decode.td, z);
- inflate_trees_free(s->sub.decode.tl, z);
- LOAD
- Tracev((stderr, "inflate: codes end, %lu total out\n",
- z->total_out + (q >= s->read ? q - s->read :
- (s->end - s->read) + (q - s->window))));
- if (!s->last)
- {
- s->mode = TYPE;
- break;
- }
- if (k > 7) /* return unused byte, if any */
- {
- Assert(k < 16, "inflate_codes grabbed too many bytes")
- k -= 8;
- n++;
- p--; /* can always return one */
- }
- s->mode = DRY;
- case DRY:
- FLUSH
- if (s->read != s->write)
- LEAVE
- s->mode = DONEB;
- case DONEB:
- r = Z_STREAM_END;
- LEAVE
- case BADB:
- r = Z_DATA_ERROR;
- LEAVE
- default:
- r = Z_STREAM_ERROR;
- LEAVE
- }
-}
-
-
-local int inflate_blocks_free(s, z, c)
-inflate_blocks_statef *s;
-z_stream *z;
-uLongf *c;
-{
- inflate_blocks_reset(s, z, c);
- ZFREE(z, s->window, s->end - s->window);
- ZFREE(z, s, sizeof(struct inflate_blocks_state));
- Trace((stderr, "inflate: blocks freed\n"));
- return Z_OK;
-}
-
-/*
- * This subroutine adds the data at next_in/avail_in to the output history
- * without performing any output. The output buffer must be "caught up";
- * i.e. no pending output (hence s->read equals s->write), and the state must
- * be BLOCKS (i.e. we should be willing to see the start of a series of
- * BLOCKS). On exit, the output will also be caught up, and the checksum
- * will have been updated if need be.
- */
-local int inflate_addhistory(s, z)
-inflate_blocks_statef *s;
-z_stream *z;
-{
- uLong b; /* bit buffer */ /* NOT USED HERE */
- uInt k; /* bits in bit buffer */ /* NOT USED HERE */
- uInt t; /* temporary storage */
- Bytef *p; /* input data pointer */
- uInt n; /* bytes available there */
- Bytef *q; /* output window write pointer */
- uInt m; /* bytes to end of window or read pointer */
-
- if (s->read != s->write)
- return Z_STREAM_ERROR;
- if (s->mode != TYPE)
- return Z_DATA_ERROR;
-
- /* we're ready to rock */
- LOAD
- /* while there is input ready, copy to output buffer, moving
- * pointers as needed.
- */
- while (n) {
- t = n; /* how many to do */
- /* is there room until end of buffer? */
- if (t > m) t = m;
- /* update check information */
- if (s->checkfn != Z_NULL)
- s->check = (*s->checkfn)(s->check, q, t);
- zmemcpy(q, p, t);
- q += t;
- p += t;
- n -= t;
- z->total_out += t;
- s->read = q; /* drag read pointer forward */
-/* WRAP */ /* expand WRAP macro by hand to handle s->read */
- if (q == s->end) {
- s->read = q = s->window;
- m = WAVAIL;
- }
- }
- UPDATE
- return Z_OK;
-}
-
-
-/*
- * At the end of a Deflate-compressed PPP packet, we expect to have seen
- * a `stored' block type value but not the (zero) length bytes.
- */
-local int inflate_packet_flush(s)
- inflate_blocks_statef *s;
-{
- if (s->mode != LENS)
- return Z_DATA_ERROR;
- s->mode = TYPE;
- return Z_OK;
-}
-
-
-/*+++++*/
-/* inftrees.c -- generate Huffman trees for efficient decoding
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* simplify the use of the inflate_huft type with some defines */
-#define base more.Base
-#define next more.Next
-#define exop word.what.Exop
-#define bits word.what.Bits
-
-
-local int huft_build OF((
- uIntf *, /* code lengths in bits */
- uInt, /* number of codes */
- uInt, /* number of "simple" codes */
- uIntf *, /* list of base values for non-simple codes */
- uIntf *, /* list of extra bits for non-simple codes */
- inflate_huft * FAR*,/* result: starting table */
- uIntf *, /* maximum lookup bits (returns actual) */
- z_stream *)); /* for zalloc function */
-
-local voidpf falloc OF((
- voidpf, /* opaque pointer (not used) */
- uInt, /* number of items */
- uInt)); /* size of item */
-
-local void ffree OF((
- voidpf q, /* opaque pointer (not used) */
- voidpf p, /* what to free (not used) */
- uInt n)); /* number of bytes (not used) */
-
-/* Tables for deflate from PKZIP's appnote.txt. */
-local uInt cplens[] = { /* Copy lengths for literal codes 257..285 */
- 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,
- 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0};
- /* actually lengths - 2; also see note #13 above about 258 */
-local uInt cplext[] = { /* Extra bits for literal codes 257..285 */
- 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2,
- 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 192, 192}; /* 192==invalid */
-local uInt cpdist[] = { /* Copy offsets for distance codes 0..29 */
- 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
- 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
- 8193, 12289, 16385, 24577};
-local uInt cpdext[] = { /* Extra bits for distance codes */
- 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6,
- 7, 7, 8, 8, 9, 9, 10, 10, 11, 11,
- 12, 12, 13, 13};
-
-/*
- Huffman code decoding is performed using a multi-level table lookup.
- The fastest way to decode is to simply build a lookup table whose
- size is determined by the longest code. However, the time it takes
- to build this table can also be a factor if the data being decoded
- is not very long. The most common codes are necessarily the
- shortest codes, so those codes dominate the decoding time, and hence
- the speed. The idea is you can have a shorter table that decodes the
- shorter, more probable codes, and then point to subsidiary tables for
- the longer codes. The time it costs to decode the longer codes is
- then traded against the time it takes to make longer tables.
-
- This results of this trade are in the variables lbits and dbits
- below. lbits is the number of bits the first level table for literal/
- length codes can decode in one step, and dbits is the same thing for
- the distance codes. Subsequent tables are also less than or equal to
- those sizes. These values may be adjusted either when all of the
- codes are shorter than that, in which case the longest code length in
- bits is used, or when the shortest code is *longer* than the requested
- table size, in which case the length of the shortest code in bits is
- used.
-
- There are two different values for the two tables, since they code a
- different number of possibilities each. The literal/length table
- codes 286 possible values, or in a flat code, a little over eight
- bits. The distance table codes 30 possible values, or a little less
- than five bits, flat. The optimum values for speed end up being
- about one bit more than those, so lbits is 8+1 and dbits is 5+1.
- The optimum values may differ though from machine to machine, and
- possibly even between compilers. Your mileage may vary.
- */
-
-
-/* If BMAX needs to be larger than 16, then h and x[] should be uLong. */
-#define BMAX 15 /* maximum bit length of any code */
-#define N_MAX 288 /* maximum number of codes in any set */
-
-#ifdef DEBUG_ZLIB
- uInt inflate_hufts;
-#endif
-
-local int huft_build(b, n, s, d, e, t, m, zs)
-uIntf *b; /* code lengths in bits (all assumed <= BMAX) */
-uInt n; /* number of codes (assumed <= N_MAX) */
-uInt s; /* number of simple-valued codes (0..s-1) */
-uIntf *d; /* list of base values for non-simple codes */
-uIntf *e; /* list of extra bits for non-simple codes */
-inflate_huft * FAR *t; /* result: starting table */
-uIntf *m; /* maximum lookup bits, returns actual */
-z_stream *zs; /* for zalloc function */
-/* Given a list of code lengths and a maximum table size, make a set of
- tables to decode that set of codes. Return Z_OK on success, Z_BUF_ERROR
- if the given code set is incomplete (the tables are still built in this
- case), Z_DATA_ERROR if the input is invalid (all zero length codes or an
- over-subscribed set of lengths), or Z_MEM_ERROR if not enough memory. */
-{
-
- uInt a; /* counter for codes of length k */
- uInt c[BMAX+1]; /* bit length count table */
- uInt f; /* i repeats in table every f entries */
- int g; /* maximum code length */
- int h; /* table level */
- register uInt i; /* counter, current code */
- register uInt j; /* counter */
- register int k; /* number of bits in current code */
- int l; /* bits per table (returned in m) */
- register uIntf *p; /* pointer into c[], b[], or v[] */
- inflate_huft *q; /* points to current table */
- struct inflate_huft_s r; /* table entry for structure assignment */
- inflate_huft *u[BMAX]; /* table stack */
- uInt v[N_MAX]; /* values in order of bit length */
- register int w; /* bits before this table == (l * h) */
- uInt x[BMAX+1]; /* bit offsets, then code stack */
- uIntf *xp; /* pointer into x */
- int y; /* number of dummy codes added */
- uInt z; /* number of entries in current table */
-
-
- /* Generate counts for each bit length */
- p = c;
-#define C0 *p++ = 0;
-#define C2 C0 C0 C0 C0
-#define C4 C2 C2 C2 C2
- C4 /* clear c[]--assume BMAX+1 is 16 */
- p = b; i = n;
- do {
- c[*p++]++; /* assume all entries <= BMAX */
- } while (--i);
- if (c[0] == n) /* null input--all zero length codes */
- {
- *t = (inflate_huft *)Z_NULL;
- *m = 0;
- return Z_OK;
- }
-
-
- /* Find minimum and maximum length, bound *m by those */
- l = *m;
- for (j = 1; j <= BMAX; j++)
- if (c[j])
- break;
- k = j; /* minimum code length */
- if ((uInt)l < j)
- l = j;
- for (i = BMAX; i; i--)
- if (c[i])
- break;
- g = i; /* maximum code length */
- if ((uInt)l > i)
- l = i;
- *m = l;
-
-
- /* Adjust last length count to fill out codes, if needed */
- for (y = 1 << j; j < i; j++, y <<= 1)
- if ((y -= c[j]) < 0)
- return Z_DATA_ERROR;
- if ((y -= c[i]) < 0)
- return Z_DATA_ERROR;
- c[i] += y;
-
-
- /* Generate starting offsets into the value table for each length */
- x[1] = j = 0;
- p = c + 1; xp = x + 2;
- while (--i) { /* note that i == g from above */
- *xp++ = (j += *p++);
- }
-
-
- /* Make a table of values in order of bit lengths */
- p = b; i = 0;
- do {
- if ((j = *p++) != 0)
- v[x[j]++] = i;
- } while (++i < n);
-
-
- /* Generate the Huffman codes and for each, make the table entries */
- x[0] = i = 0; /* first Huffman code is zero */
- p = v; /* grab values in bit order */
- h = -1; /* no tables yet--level -1 */
- w = -l; /* bits decoded == (l * h) */
- u[0] = (inflate_huft *)Z_NULL; /* just to keep compilers happy */
- q = (inflate_huft *)Z_NULL; /* ditto */
- z = 0; /* ditto */
-
- /* go through the bit lengths (k already is bits in shortest code) */
- for (; k <= g; k++)
- {
- a = c[k];
- while (a--)
- {
- /* here i is the Huffman code of length k bits for value *p */
- /* make tables up to required level */
- while (k > w + l)
- {
- h++;
- w += l; /* previous table always l bits */
-
- /* compute minimum size table less than or equal to l bits */
- z = (z = g - w) > (uInt)l ? l : z; /* table size upper limit */
- if ((f = 1 << (j = k - w)) > a + 1) /* try a k-w bit table */
- { /* too few codes for k-w bit table */
- f -= a + 1; /* deduct codes from patterns left */
- xp = c + k;
- if (j < z)
- while (++j < z) /* try smaller tables up to z bits */
- {
- if ((f <<= 1) <= *++xp)
- break; /* enough codes to use up j bits */
- f -= *xp; /* else deduct codes from patterns */
- }
- }
- z = 1 << j; /* table entries for j-bit table */
-
- /* allocate and link in new table */
- if ((q = (inflate_huft *)ZALLOC
- (zs,z + 1,sizeof(inflate_huft))) == Z_NULL)
- {
- if (h)
- inflate_trees_free(u[0], zs);
- return Z_MEM_ERROR; /* not enough memory */
- }
- q->word.Nalloc = z + 1;
-#ifdef DEBUG_ZLIB
- inflate_hufts += z + 1;
-#endif
- *t = q + 1; /* link to list for huft_free() */
- *(t = &(q->next)) = Z_NULL;
- u[h] = ++q; /* table starts after link */
-
- /* connect to last table, if there is one */
- if (h)
- {
- x[h] = i; /* save pattern for backing up */
- r.bits = (Byte)l; /* bits to dump before this table */
- r.exop = (Byte)j; /* bits in this table */
- r.next = q; /* pointer to this table */
- j = i >> (w - l); /* (get around Turbo C bug) */
- u[h-1][j] = r; /* connect to last table */
- }
- }
-
- /* set up table entry in r */
- r.bits = (Byte)(k - w);
- if (p >= v + n)
- r.exop = 128 + 64; /* out of values--invalid code */
- else if (*p < s)
- {
- r.exop = (Byte)(*p < 256 ? 0 : 32 + 64); /* 256 is end-of-block */
- r.base = *p++; /* simple code is just the value */
- }
- else
- {
- r.exop = (Byte)e[*p - s] + 16 + 64; /* non-simple--look up in lists */
- r.base = d[*p++ - s];
- }
-
- /* fill code-like entries with r */
- f = 1 << (k - w);
- for (j = i >> w; j < z; j += f)
- q[j] = r;
-
- /* backwards increment the k-bit code i */
- for (j = 1 << (k - 1); i & j; j >>= 1)
- i ^= j;
- i ^= j;
-
- /* backup over finished tables */
- while ((i & ((1 << w) - 1)) != x[h])
- {
- h--; /* don't need to update q */
- w -= l;
- }
- }
- }
-
-
- /* Return Z_BUF_ERROR if we were given an incomplete table */
- return y != 0 && g != 1 ? Z_BUF_ERROR : Z_OK;
-}
-
-
-local int inflate_trees_bits(c, bb, tb, z)
-uIntf *c; /* 19 code lengths */
-uIntf *bb; /* bits tree desired/actual depth */
-inflate_huft * FAR *tb; /* bits tree result */
-z_stream *z; /* for zfree function */
-{
- int r;
-
- r = huft_build(c, 19, 19, (uIntf*)Z_NULL, (uIntf*)Z_NULL, tb, bb, z);
- if (r == Z_DATA_ERROR)
- z->msg = "oversubscribed dynamic bit lengths tree";
- else if (r == Z_BUF_ERROR)
- {
- inflate_trees_free(*tb, z);
- z->msg = "incomplete dynamic bit lengths tree";
- r = Z_DATA_ERROR;
- }
- return r;
-}
-
-
-local int inflate_trees_dynamic(nl, nd, c, bl, bd, tl, td, z)
-uInt nl; /* number of literal/length codes */
-uInt nd; /* number of distance codes */
-uIntf *c; /* that many (total) code lengths */
-uIntf *bl; /* literal desired/actual bit depth */
-uIntf *bd; /* distance desired/actual bit depth */
-inflate_huft * FAR *tl; /* literal/length tree result */
-inflate_huft * FAR *td; /* distance tree result */
-z_stream *z; /* for zfree function */
-{
- int r;
-
- /* build literal/length tree */
- if ((r = huft_build(c, nl, 257, cplens, cplext, tl, bl, z)) != Z_OK)
- {
- if (r == Z_DATA_ERROR)
- z->msg = "oversubscribed literal/length tree";
- else if (r == Z_BUF_ERROR)
- {
- inflate_trees_free(*tl, z);
- z->msg = "incomplete literal/length tree";
- r = Z_DATA_ERROR;
- }
- return r;
- }
-
- /* build distance tree */
- if ((r = huft_build(c + nl, nd, 0, cpdist, cpdext, td, bd, z)) != Z_OK)
- {
- if (r == Z_DATA_ERROR)
- z->msg = "oversubscribed literal/length tree";
- else if (r == Z_BUF_ERROR) {
-#ifdef PKZIP_BUG_WORKAROUND
- r = Z_OK;
- }
-#else
- inflate_trees_free(*td, z);
- z->msg = "incomplete literal/length tree";
- r = Z_DATA_ERROR;
- }
- inflate_trees_free(*tl, z);
- return r;
-#endif
- }
-
- /* done */
- return Z_OK;
-}
-
-
-/* build fixed tables only once--keep them here */
-local int fixed_lock = 0;
-local int fixed_built = 0;
-#define FIXEDH 530 /* number of hufts used by fixed tables */
-local uInt fixed_left = FIXEDH;
-local inflate_huft fixed_mem[FIXEDH];
-local uInt fixed_bl;
-local uInt fixed_bd;
-local inflate_huft *fixed_tl;
-local inflate_huft *fixed_td;
-
-
-local voidpf falloc(q, n, s)
-voidpf q; /* opaque pointer (not used) */
-uInt n; /* number of items */
-uInt s; /* size of item */
-{
- Assert(s == sizeof(inflate_huft) && n <= fixed_left,
- "inflate_trees falloc overflow");
- if (q) s++; /* to make some compilers happy */
- fixed_left -= n;
- return (voidpf)(fixed_mem + fixed_left);
-}
-
-
-local void ffree(q, p, n)
-voidpf q;
-voidpf p;
-uInt n;
-{
- Assert(0, "inflate_trees ffree called!");
- if (q) q = p; /* to make some compilers happy */
-}
-
-
-local int inflate_trees_fixed(bl, bd, tl, td)
-uIntf *bl; /* literal desired/actual bit depth */
-uIntf *bd; /* distance desired/actual bit depth */
-inflate_huft * FAR *tl; /* literal/length tree result */
-inflate_huft * FAR *td; /* distance tree result */
-{
- /* build fixed tables if not built already--lock out other instances */
- while (++fixed_lock > 1)
- fixed_lock--;
- if (!fixed_built)
- {
- int k; /* temporary variable */
- unsigned c[288]; /* length list for huft_build */
- z_stream z; /* for falloc function */
-
- /* set up fake z_stream for memory routines */
- z.zalloc = falloc;
- z.zfree = ffree;
- z.opaque = Z_NULL;
-
- /* literal table */
- for (k = 0; k < 144; k++)
- c[k] = 8;
- for (; k < 256; k++)
- c[k] = 9;
- for (; k < 280; k++)
- c[k] = 7;
- for (; k < 288; k++)
- c[k] = 8;
- fixed_bl = 7;
- huft_build(c, 288, 257, cplens, cplext, &fixed_tl, &fixed_bl, &z);
-
- /* distance table */
- for (k = 0; k < 30; k++)
- c[k] = 5;
- fixed_bd = 5;
- huft_build(c, 30, 0, cpdist, cpdext, &fixed_td, &fixed_bd, &z);
-
- /* done */
- fixed_built = 1;
- }
- fixed_lock--;
- *bl = fixed_bl;
- *bd = fixed_bd;
- *tl = fixed_tl;
- *td = fixed_td;
- return Z_OK;
-}
-
-
-local int inflate_trees_free(t, z)
-inflate_huft *t; /* table to free */
-z_stream *z; /* for zfree function */
-/* Free the malloc'ed tables built by huft_build(), which makes a linked
- list of the tables it made, with the links in a dummy first entry of
- each table. */
-{
- register inflate_huft *p, *q;
-
- /* Go through linked list, freeing from the malloced (t[-1]) address. */
- p = t;
- while (p != Z_NULL)
- {
- q = (--p)->next;
- ZFREE(z, p, p->word.Nalloc * sizeof(inflate_huft));
- p = q;
- }
- return Z_OK;
-}
-
-/*+++++*/
-/* infcodes.c -- process literals and length/distance pairs
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* simplify the use of the inflate_huft type with some defines */
-#define base more.Base
-#define next more.Next
-#define exop word.what.Exop
-#define bits word.what.Bits
-
-/* inflate codes private state */
-struct inflate_codes_state {
-
- /* mode */
- enum { /* waiting for "i:"=input, "o:"=output, "x:"=nothing */
- START, /* x: set up for LEN */
- LEN, /* i: get length/literal/eob next */
- LENEXT, /* i: getting length extra (have base) */
- DIST, /* i: get distance next */
- DISTEXT, /* i: getting distance extra */
- COPY, /* o: copying bytes in window, waiting for space */
- LIT, /* o: got literal, waiting for output space */
- WASH, /* o: got eob, possibly still output waiting */
- END, /* x: got eob and all data flushed */
- BADCODE} /* x: got error */
- mode; /* current inflate_codes mode */
-
- /* mode dependent information */
- uInt len;
- union {
- struct {
- inflate_huft *tree; /* pointer into tree */
- uInt need; /* bits needed */
- } code; /* if LEN or DIST, where in tree */
- uInt lit; /* if LIT, literal */
- struct {
- uInt get; /* bits to get for extra */
- uInt dist; /* distance back to copy from */
- } copy; /* if EXT or COPY, where and how much */
- } sub; /* submode */
-
- /* mode independent information */
- Byte lbits; /* ltree bits decoded per branch */
- Byte dbits; /* dtree bits decoder per branch */
- inflate_huft *ltree; /* literal/length/eob tree */
- inflate_huft *dtree; /* distance tree */
-
-};
-
-
-local inflate_codes_statef *inflate_codes_new(bl, bd, tl, td, z)
-uInt bl, bd;
-inflate_huft *tl, *td;
-z_stream *z;
-{
- inflate_codes_statef *c;
-
- if ((c = (inflate_codes_statef *)
- ZALLOC(z,1,sizeof(struct inflate_codes_state))) != Z_NULL)
- {
- c->mode = START;
- c->lbits = (Byte)bl;
- c->dbits = (Byte)bd;
- c->ltree = tl;
- c->dtree = td;
- Tracev((stderr, "inflate: codes new\n"));
- }
- return c;
-}
-
-
-local int inflate_codes(s, z, r)
-inflate_blocks_statef *s;
-z_stream *z;
-int r;
-{
- uInt j; /* temporary storage */
- inflate_huft *t; /* temporary pointer */
- uInt e; /* extra bits or operation */
- uLong b; /* bit buffer */
- uInt k; /* bits in bit buffer */
- Bytef *p; /* input data pointer */
- uInt n; /* bytes available there */
- Bytef *q; /* output window write pointer */
- uInt m; /* bytes to end of window or read pointer */
- Bytef *f; /* pointer to copy strings from */
- inflate_codes_statef *c = s->sub.decode.codes; /* codes state */
-
- /* copy input/output information to locals (UPDATE macro restores) */
- LOAD
-
- /* process input and output based on current state */
- while (1) switch (c->mode)
- { /* waiting for "i:"=input, "o:"=output, "x:"=nothing */
- case START: /* x: set up for LEN */
-#ifndef SLOW
- if (m >= 258 && n >= 10)
- {
- UPDATE
- r = inflate_fast(c->lbits, c->dbits, c->ltree, c->dtree, s, z);
- LOAD
- if (r != Z_OK)
- {
- c->mode = r == Z_STREAM_END ? WASH : BADCODE;
- break;
- }
- }
-#endif /* !SLOW */
- c->sub.code.need = c->lbits;
- c->sub.code.tree = c->ltree;
- c->mode = LEN;
- case LEN: /* i: get length/literal/eob next */
- j = c->sub.code.need;
- NEEDBITS(j)
- t = c->sub.code.tree + ((uInt)b & inflate_mask[j]);
- DUMPBITS(t->bits)
- e = (uInt)(t->exop);
- if (e == 0) /* literal */
- {
- c->sub.lit = t->base;
- Tracevv((stderr, t->base >= 0x20 && t->base < 0x7f ?
- "inflate: literal '%c'\n" :
- "inflate: literal 0x%02x\n", t->base));
- c->mode = LIT;
- break;
- }
- if (e & 16) /* length */
- {
- c->sub.copy.get = e & 15;
- c->len = t->base;
- c->mode = LENEXT;
- break;
- }
- if ((e & 64) == 0) /* next table */
- {
- c->sub.code.need = e;
- c->sub.code.tree = t->next;
- break;
- }
- if (e & 32) /* end of block */
- {
- Tracevv((stderr, "inflate: end of block\n"));
- c->mode = WASH;
- break;
- }
- c->mode = BADCODE; /* invalid code */
- z->msg = "invalid literal/length code";
- r = Z_DATA_ERROR;
- LEAVE
- case LENEXT: /* i: getting length extra (have base) */
- j = c->sub.copy.get;
- NEEDBITS(j)
- c->len += (uInt)b & inflate_mask[j];
- DUMPBITS(j)
- c->sub.code.need = c->dbits;
- c->sub.code.tree = c->dtree;
- Tracevv((stderr, "inflate: length %u\n", c->len));
- c->mode = DIST;
- case DIST: /* i: get distance next */
- j = c->sub.code.need;
- NEEDBITS(j)
- t = c->sub.code.tree + ((uInt)b & inflate_mask[j]);
- DUMPBITS(t->bits)
- e = (uInt)(t->exop);
- if (e & 16) /* distance */
- {
- c->sub.copy.get = e & 15;
- c->sub.copy.dist = t->base;
- c->mode = DISTEXT;
- break;
- }
- if ((e & 64) == 0) /* next table */
- {
- c->sub.code.need = e;
- c->sub.code.tree = t->next;
- break;
- }
- c->mode = BADCODE; /* invalid code */
- z->msg = "invalid distance code";
- r = Z_DATA_ERROR;
- LEAVE
- case DISTEXT: /* i: getting distance extra */
- j = c->sub.copy.get;
- NEEDBITS(j)
- c->sub.copy.dist += (uInt)b & inflate_mask[j];
- DUMPBITS(j)
- Tracevv((stderr, "inflate: distance %u\n", c->sub.copy.dist));
- c->mode = COPY;
- case COPY: /* o: copying bytes in window, waiting for space */
-#ifndef __TURBOC__ /* Turbo C bug for following expression */
- f = (uInt)(q - s->window) < c->sub.copy.dist ?
- s->end - (c->sub.copy.dist - (q - s->window)) :
- q - c->sub.copy.dist;
-#else
- f = q - c->sub.copy.dist;
- if ((uInt)(q - s->window) < c->sub.copy.dist)
- f = s->end - (c->sub.copy.dist - (q - s->window));
-#endif
- while (c->len)
- {
- NEEDOUT
- OUTBYTE(*f++)
- if (f == s->end)
- f = s->window;
- c->len--;
- }
- c->mode = START;
- break;
- case LIT: /* o: got literal, waiting for output space */
- NEEDOUT
- OUTBYTE(c->sub.lit)
- c->mode = START;
- break;
- case WASH: /* o: got eob, possibly more output */
- FLUSH
- if (s->read != s->write)
- LEAVE
- c->mode = END;
- case END:
- r = Z_STREAM_END;
- LEAVE
- case BADCODE: /* x: got error */
- r = Z_DATA_ERROR;
- LEAVE
- default:
- r = Z_STREAM_ERROR;
- LEAVE
- }
-}
-
-
-local void inflate_codes_free(c, z)
-inflate_codes_statef *c;
-z_stream *z;
-{
- ZFREE(z, c, sizeof(struct inflate_codes_state));
- Tracev((stderr, "inflate: codes free\n"));
-}
-
-/*+++++*/
-/* inflate_util.c -- data and routines common to blocks and codes
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* copy as much as possible from the sliding window to the output area */
-local int inflate_flush(s, z, r)
-inflate_blocks_statef *s;
-z_stream *z;
-int r;
-{
- uInt n;
- Bytef *p, *q;
-
- /* local copies of source and destination pointers */
- p = z->next_out;
- q = s->read;
-
- /* compute number of bytes to copy as far as end of window */
- n = (uInt)((q <= s->write ? s->write : s->end) - q);
- if (n > z->avail_out) n = z->avail_out;
- if (n && r == Z_BUF_ERROR) r = Z_OK;
-
- /* update counters */
- z->avail_out -= n;
- z->total_out += n;
-
- /* update check information */
- if (s->checkfn != Z_NULL)
- s->check = (*s->checkfn)(s->check, q, n);
-
- /* copy as far as end of window */
- if (p != NULL) {
- zmemcpy(p, q, n);
- p += n;
- }
- q += n;
-
- /* see if more to copy at beginning of window */
- if (q == s->end)
- {
- /* wrap pointers */
- q = s->window;
- if (s->write == s->end)
- s->write = s->window;
-
- /* compute bytes to copy */
- n = (uInt)(s->write - q);
- if (n > z->avail_out) n = z->avail_out;
- if (n && r == Z_BUF_ERROR) r = Z_OK;
-
- /* update counters */
- z->avail_out -= n;
- z->total_out += n;
-
- /* update check information */
- if (s->checkfn != Z_NULL)
- s->check = (*s->checkfn)(s->check, q, n);
-
- /* copy */
- if (p != NULL) {
- zmemcpy(p, q, n);
- p += n;
- }
- q += n;
- }
-
- /* update pointers */
- z->next_out = p;
- s->read = q;
-
- /* done */
- return r;
-}
-
-
-/*+++++*/
-/* inffast.c -- process literals and length/distance pairs fast
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* simplify the use of the inflate_huft type with some defines */
-#define base more.Base
-#define next more.Next
-#define exop word.what.Exop
-#define bits word.what.Bits
-
-/* macros for bit input with no checking and for returning unused bytes */
-#define GRABBITS(j) {while(k<(j)){b|=((uLong)NEXTBYTE)<<k;k+=8;}}
-#define UNGRAB {n+=(c=k>>3);p-=c;k&=7;}
-
-/* Called with number of bytes left to write in window at least 258
- (the maximum string length) and number of input bytes available
- at least ten. The ten bytes are six bytes for the longest length/
- distance pair plus four bytes for overloading the bit buffer. */
-
-local int inflate_fast(bl, bd, tl, td, s, z)
-uInt bl, bd;
-inflate_huft *tl, *td;
-inflate_blocks_statef *s;
-z_stream *z;
-{
- inflate_huft *t; /* temporary pointer */
- uInt e; /* extra bits or operation */
- uLong b; /* bit buffer */
- uInt k; /* bits in bit buffer */
- Bytef *p; /* input data pointer */
- uInt n; /* bytes available there */
- Bytef *q; /* output window write pointer */
- uInt m; /* bytes to end of window or read pointer */
- uInt ml; /* mask for literal/length tree */
- uInt md; /* mask for distance tree */
- uInt c; /* bytes to copy */
- uInt d; /* distance back to copy from */
- Bytef *r; /* copy source pointer */
-
- /* load input, output, bit values */
- LOAD
-
- /* initialize masks */
- ml = inflate_mask[bl];
- md = inflate_mask[bd];
-
- /* do until not enough input or output space for fast loop */
- do { /* assume called with m >= 258 && n >= 10 */
- /* get literal/length code */
- GRABBITS(20) /* max bits for literal/length code */
- if ((e = (t = tl + ((uInt)b & ml))->exop) == 0)
- {
- DUMPBITS(t->bits)
- Tracevv((stderr, t->base >= 0x20 && t->base < 0x7f ?
- "inflate: * literal '%c'\n" :
- "inflate: * literal 0x%02x\n", t->base));
- *q++ = (Byte)t->base;
- m--;
- continue;
- }
- do {
- DUMPBITS(t->bits)
- if (e & 16)
- {
- /* get extra bits for length */
- e &= 15;
- c = t->base + ((uInt)b & inflate_mask[e]);
- DUMPBITS(e)
- Tracevv((stderr, "inflate: * length %u\n", c));
-
- /* decode distance base of block to copy */
- GRABBITS(15); /* max bits for distance code */
- e = (t = td + ((uInt)b & md))->exop;
- do {
- DUMPBITS(t->bits)
- if (e & 16)
- {
- /* get extra bits to add to distance base */
- e &= 15;
- GRABBITS(e) /* get extra bits (up to 13) */
- d = t->base + ((uInt)b & inflate_mask[e]);
- DUMPBITS(e)
- Tracevv((stderr, "inflate: * distance %u\n", d));
-
- /* do the copy */
- m -= c;
- if ((uInt)(q - s->window) >= d) /* offset before dest */
- { /* just copy */
- r = q - d;
- *q++ = *r++; c--; /* minimum count is three, */
- *q++ = *r++; c--; /* so unroll loop a little */
- }
- else /* else offset after destination */
- {
- e = d - (q - s->window); /* bytes from offset to end */
- r = s->end - e; /* pointer to offset */
- if (c > e) /* if source crosses, */
- {
- c -= e; /* copy to end of window */
- do {
- *q++ = *r++;
- } while (--e);
- r = s->window; /* copy rest from start of window */
- }
- }
- do { /* copy all or what's left */
- *q++ = *r++;
- } while (--c);
- break;
- }
- else if ((e & 64) == 0)
- e = (t = t->next + ((uInt)b & inflate_mask[e]))->exop;
- else
- {
- z->msg = "invalid distance code";
- UNGRAB
- UPDATE
- return Z_DATA_ERROR;
- }
- } while (1);
- break;
- }
- if ((e & 64) == 0)
- {
- if ((e = (t = t->next + ((uInt)b & inflate_mask[e]))->exop) == 0)
- {
- DUMPBITS(t->bits)
- Tracevv((stderr, t->base >= 0x20 && t->base < 0x7f ?
- "inflate: * literal '%c'\n" :
- "inflate: * literal 0x%02x\n", t->base));
- *q++ = (Byte)t->base;
- m--;
- break;
- }
- }
- else if (e & 32)
- {
- Tracevv((stderr, "inflate: * end of block\n"));
- UNGRAB
- UPDATE
- return Z_STREAM_END;
- }
- else
- {
- z->msg = "invalid literal/length code";
- UNGRAB
- UPDATE
- return Z_DATA_ERROR;
- }
- } while (1);
- } while (m >= 258 && n >= 10);
-
- /* not enough input or output--restore pointers and return */
- UNGRAB
- UPDATE
- return Z_OK;
-}
-
-
-/*+++++*/
-/* zutil.c -- target dependent utility functions for the compression library
- * Copyright (C) 1995 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* From: zutil.c,v 1.8 1995/05/03 17:27:12 jloup Exp */
-
-char *zlib_version = ZLIB_VERSION;
-
-char *z_errmsg[] = {
-"stream end", /* Z_STREAM_END 1 */
-"", /* Z_OK 0 */
-"file error", /* Z_ERRNO (-1) */
-"stream error", /* Z_STREAM_ERROR (-2) */
-"data error", /* Z_DATA_ERROR (-3) */
-"insufficient memory", /* Z_MEM_ERROR (-4) */
-"buffer error", /* Z_BUF_ERROR (-5) */
-""};
-
-
-/*+++++*/
-/* adler32.c -- compute the Adler-32 checksum of a data stream
- * Copyright (C) 1995 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* From: adler32.c,v 1.6 1995/05/03 17:27:08 jloup Exp */
-
-#define BASE 65521L /* largest prime smaller than 65536 */
-#define NMAX 5552
-/* NMAX is the largest n such that 255n(n+1)/2 + (n+1)(BASE-1) <= 2^32-1 */
-
-#define DO1(buf) {s1 += *buf++; s2 += s1;}
-#define DO2(buf) DO1(buf); DO1(buf);
-#define DO4(buf) DO2(buf); DO2(buf);
-#define DO8(buf) DO4(buf); DO4(buf);
-#define DO16(buf) DO8(buf); DO8(buf);
-
-/* ========================================================================= */
-uLong adler32(adler, buf, len)
- uLong adler;
- Bytef *buf;
- uInt len;
-{
- unsigned long s1 = adler & 0xffff;
- unsigned long s2 = (adler >> 16) & 0xffff;
- int k;
-
- if (buf == Z_NULL) return 1L;
-
- while (len > 0) {
- k = len < NMAX ? len : NMAX;
- len -= k;
- while (k >= 16) {
- DO16(buf);
- k -= 16;
- }
- if (k != 0) do {
- DO1(buf);
- } while (--k);
- s1 %= BASE;
- s2 %= BASE;
- }
- return (s2 << 16) | s1;
-}
diff --git a/mdk-stage1/ppp/pppdump/zlib.h b/mdk-stage1/ppp/pppdump/zlib.h
deleted file mode 100644
index 9c7ac734d..000000000
--- a/mdk-stage1/ppp/pppdump/zlib.h
+++ /dev/null
@@ -1,631 +0,0 @@
-/* $Id$ */
-
-/*
- * This file is derived from zlib.h and zconf.h from the zlib-0.95
- * distribution by Jean-loup Gailly and Mark Adler, with some additions
- * by Paul Mackerras to aid in implementing Deflate compression and
- * decompression for PPP packets.
- */
-
-/* zlib.h -- interface of the 'zlib' general purpose compression library
- version 0.95, Aug 16th, 1995.
-
- Copyright (C) 1995 Jean-loup Gailly and Mark Adler
-
- This software is provided 'as-is', without any express or implied
- warranty. In no event will the authors be held liable for any damages
- arising from the use of this software.
-
- Permission is granted to anyone to use this software for any purpose,
- including commercial applications, and to alter it and redistribute it
- freely, subject to the following restrictions:
-
- 1. The origin of this software must not be misrepresented; you must not
- claim that you wrote the original software. If you use this software
- in a product, an acknowledgment in the product documentation would be
- appreciated but is not required.
- 2. Altered source versions must be plainly marked as such, and must not be
- misrepresented as being the original software.
- 3. This notice may not be removed or altered from any source distribution.
-
- Jean-loup Gailly Mark Adler
- gzip@prep.ai.mit.edu madler@alumni.caltech.edu
- */
-
-#ifndef _ZLIB_H
-#define _ZLIB_H
-
-/* #include "zconf.h" */ /* included directly here */
-
-/* zconf.h -- configuration of the zlib compression library
- * Copyright (C) 1995 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* From: zconf.h,v 1.12 1995/05/03 17:27:12 jloup Exp */
-
-/*
- The library does not install any signal handler. It is recommended to
- add at least a handler for SIGSEGV when decompressing; the library checks
- the consistency of the input data whenever possible but may go nuts
- for some forms of corrupted input.
- */
-
-/*
- * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
- * than 64k bytes at a time (needed on systems with 16-bit int).
- * Compile with -DUNALIGNED_OK if it is OK to access shorts or ints
- * at addresses which are not a multiple of their size.
- * Under DOS, -DFAR=far or -DFAR=__far may be needed.
- */
-
-#ifndef STDC
-# if defined(MSDOS) || defined(__STDC__) || defined(__cplusplus)
-# define STDC
-# endif
-#endif
-
-#ifdef __MWERKS__ /* Metrowerks CodeWarrior declares fileno() in unix.h */
-# include <unix.h>
-#endif
-
-/* Maximum value for memLevel in deflateInit2 */
-#ifndef MAX_MEM_LEVEL
-# ifdef MAXSEG_64K
-# define MAX_MEM_LEVEL 8
-# else
-# define MAX_MEM_LEVEL 9
-# endif
-#endif
-
-#ifndef FAR
-# define FAR
-#endif
-
-/* Maximum value for windowBits in deflateInit2 and inflateInit2 */
-#ifndef MAX_WBITS
-# define MAX_WBITS 15 /* 32K LZ77 window */
-#endif
-
-/* The memory requirements for deflate are (in bytes):
- 1 << (windowBits+2) + 1 << (memLevel+9)
- that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values)
- plus a few kilobytes for small objects. For example, if you want to reduce
- the default memory requirements from 256K to 128K, compile with
- make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
- Of course this will generally degrade compression (there's no free lunch).
-
- The memory requirements for inflate are (in bytes) 1 << windowBits
- that is, 32K for windowBits=15 (default value) plus a few kilobytes
- for small objects.
-*/
-
- /* Type declarations */
-
-#ifndef OF /* function prototypes */
-# ifdef STDC
-# define OF(args) args
-# else
-# define OF(args) ()
-# endif
-#endif
-
-typedef unsigned char Byte; /* 8 bits */
-typedef unsigned int uInt; /* 16 bits or more */
-typedef unsigned long uLong; /* 32 bits or more */
-
-typedef Byte FAR Bytef;
-typedef char FAR charf;
-typedef int FAR intf;
-typedef uInt FAR uIntf;
-typedef uLong FAR uLongf;
-
-#ifdef STDC
- typedef void FAR *voidpf;
- typedef void *voidp;
-#else
- typedef Byte FAR *voidpf;
- typedef Byte *voidp;
-#endif
-
-/* end of original zconf.h */
-
-#define ZLIB_VERSION "0.95P"
-
-/*
- The 'zlib' compression library provides in-memory compression and
- decompression functions, including integrity checks of the uncompressed
- data. This version of the library supports only one compression method
- (deflation) but other algorithms may be added later and will have the same
- stream interface.
-
- For compression the application must provide the output buffer and
- may optionally provide the input buffer for optimization. For decompression,
- the application must provide the input buffer and may optionally provide
- the output buffer for optimization.
-
- Compression can be done in a single step if the buffers are large
- enough (for example if an input file is mmap'ed), or can be done by
- repeated calls of the compression function. In the latter case, the
- application must provide more input and/or consume the output
- (providing more output space) before each call.
-*/
-
-typedef voidpf (*alloc_func) OF((voidpf opaque, uInt items, uInt size));
-typedef void (*free_func) OF((voidpf opaque, voidpf address, uInt nbytes));
-
-struct internal_state;
-
-typedef struct z_stream_s {
- Bytef *next_in; /* next input byte */
- uInt avail_in; /* number of bytes available at next_in */
- uLong total_in; /* total nb of input bytes read so far */
-
- Bytef *next_out; /* next output byte should be put there */
- uInt avail_out; /* remaining free space at next_out */
- uLong total_out; /* total nb of bytes output so far */
-
- char *msg; /* last error message, NULL if no error */
- struct internal_state FAR *state; /* not visible by applications */
-
- alloc_func zalloc; /* used to allocate the internal state */
- free_func zfree; /* used to free the internal state */
- voidp opaque; /* private data object passed to zalloc and zfree */
-
- Byte data_type; /* best guess about the data type: ascii or binary */
-
-} z_stream;
-
-/*
- The application must update next_in and avail_in when avail_in has
- dropped to zero. It must update next_out and avail_out when avail_out
- has dropped to zero. The application must initialize zalloc, zfree and
- opaque before calling the init function. All other fields are set by the
- compression library and must not be updated by the application.
-
- The opaque value provided by the application will be passed as the first
- parameter for calls of zalloc and zfree. This can be useful for custom
- memory management. The compression library attaches no meaning to the
- opaque value.
-
- zalloc must return Z_NULL if there is not enough memory for the object.
- On 16-bit systems, the functions zalloc and zfree must be able to allocate
- exactly 65536 bytes, but will not be required to allocate more than this
- if the symbol MAXSEG_64K is defined (see zconf.h). WARNING: On MSDOS,
- pointers returned by zalloc for objects of exactly 65536 bytes *must*
- have their offset normalized to zero. The default allocation function
- provided by this library ensures this (see zutil.c). To reduce memory
- requirements and avoid any allocation of 64K objects, at the expense of
- compression ratio, compile the library with -DMAX_WBITS=14 (see zconf.h).
-
- The fields total_in and total_out can be used for statistics or
- progress reports. After compression, total_in holds the total size of
- the uncompressed data and may be saved for use in the decompressor
- (particularly if the decompressor wants to decompress everything in
- a single step).
-*/
-
- /* constants */
-
-#define Z_NO_FLUSH 0
-#define Z_PARTIAL_FLUSH 1
-#define Z_FULL_FLUSH 2
-#define Z_SYNC_FLUSH 3 /* experimental: partial_flush + byte align */
-#define Z_FINISH 4
-#define Z_PACKET_FLUSH 5
-/* See deflate() below for the usage of these constants */
-
-#define Z_OK 0
-#define Z_STREAM_END 1
-#define Z_ERRNO (-1)
-#define Z_STREAM_ERROR (-2)
-#define Z_DATA_ERROR (-3)
-#define Z_MEM_ERROR (-4)
-#define Z_BUF_ERROR (-5)
-/* error codes for the compression/decompression functions */
-
-#define Z_BEST_SPEED 1
-#define Z_BEST_COMPRESSION 9
-#define Z_DEFAULT_COMPRESSION (-1)
-/* compression levels */
-
-#define Z_FILTERED 1
-#define Z_HUFFMAN_ONLY 2
-#define Z_DEFAULT_STRATEGY 0
-
-#define Z_BINARY 0
-#define Z_ASCII 1
-#define Z_UNKNOWN 2
-/* Used to set the data_type field */
-
-#define Z_NULL 0 /* for initializing zalloc, zfree, opaque */
-
-extern char *zlib_version;
-/* The application can compare zlib_version and ZLIB_VERSION for consistency.
- If the first character differs, the library code actually used is
- not compatible with the zlib.h header file used by the application.
- */
-
- /* basic functions */
-
-extern int deflateInit OF((z_stream *strm, int level));
-/*
- Initializes the internal stream state for compression. The fields
- zalloc, zfree and opaque must be initialized before by the caller.
- If zalloc and zfree are set to Z_NULL, deflateInit updates them to
- use default allocation functions.
-
- The compression level must be Z_DEFAULT_COMPRESSION, or between 1 and 9:
- 1 gives best speed, 9 gives best compression. Z_DEFAULT_COMPRESSION requests
- a default compromise between speed and compression (currently equivalent
- to level 6).
-
- deflateInit returns Z_OK if success, Z_MEM_ERROR if there was not
- enough memory, Z_STREAM_ERROR if level is not a valid compression level.
- msg is set to null if there is no error message. deflateInit does not
- perform any compression: this will be done by deflate().
-*/
-
-
-extern int deflate OF((z_stream *strm, int flush));
-/*
- Performs one or both of the following actions:
-
- - Compress more input starting at next_in and update next_in and avail_in
- accordingly. If not all input can be processed (because there is not
- enough room in the output buffer), next_in and avail_in are updated and
- processing will resume at this point for the next call of deflate().
-
- - Provide more output starting at next_out and update next_out and avail_out
- accordingly. This action is forced if the parameter flush is non zero.
- Forcing flush frequently degrades the compression ratio, so this parameter
- should be set only when necessary (in interactive applications).
- Some output may be provided even if flush is not set.
-
- Before the call of deflate(), the application should ensure that at least
- one of the actions is possible, by providing more input and/or consuming
- more output, and updating avail_in or avail_out accordingly; avail_out
- should never be zero before the call. The application can consume the
- compressed output when it wants, for example when the output buffer is full
- (avail_out == 0), or after each call of deflate().
-
- If the parameter flush is set to Z_PARTIAL_FLUSH, the current compression
- block is terminated and flushed to the output buffer so that the
- decompressor can get all input data available so far. For method 9, a future
- variant on method 8, the current block will be flushed but not terminated.
- If flush is set to Z_FULL_FLUSH, the compression block is terminated, a
- special marker is output and the compression dictionary is discarded; this
- is useful to allow the decompressor to synchronize if one compressed block
- has been damaged (see inflateSync below). Flushing degrades compression and
- so should be used only when necessary. Using Z_FULL_FLUSH too often can
- seriously degrade the compression. If deflate returns with avail_out == 0,
- this function must be called again with the same value of the flush
- parameter and more output space (updated avail_out), until the flush is
- complete (deflate returns with non-zero avail_out).
-
- If the parameter flush is set to Z_PACKET_FLUSH, the compression
- block is terminated, and a zero-length stored block is output,
- omitting the length bytes (the effect of this is that the 3-bit type
- code 000 for a stored block is output, and the output is then
- byte-aligned). This is designed for use at the end of a PPP packet.
- In addition, if the current compression block contains all the data
- since the last Z_PACKET_FLUSH, it is never output as a stored block.
- If the current compression block output as a static or dynamic block
- would not be at least `minCompression' bytes smaller than the
- original data, then nothing is output for that block. (The type
- code for the zero-length stored block is still output, resulting in
- a single zero byte being output for the whole packet.)
- `MinCompression' is a parameter to deflateInit2, or 0 if deflateInit
- is used.
-
- If the parameter flush is set to Z_FINISH, all pending input is processed,
- all pending output is flushed and deflate returns with Z_STREAM_END if there
- was enough output space; if deflate returns with Z_OK, this function must be
- called again with Z_FINISH and more output space (updated avail_out) but no
- more input data, until it returns with Z_STREAM_END or an error. After
- deflate has returned Z_STREAM_END, the only possible operations on the
- stream are deflateReset or deflateEnd.
-
- Z_FINISH can be used immediately after deflateInit if all the compression
- is to be done in a single step. In this case, avail_out must be at least
- 0.1% larger than avail_in plus 12 bytes. If deflate does not return
- Z_STREAM_END, then it must be called again as described above.
-
- deflate() may update data_type if it can make a good guess about
- the input data type (Z_ASCII or Z_BINARY). In doubt, the data is considered
- binary. This field is only for information purposes and does not affect
- the compression algorithm in any manner.
-
- deflate() returns Z_OK if some progress has been made (more input
- processed or more output produced), Z_STREAM_END if all input has been
- consumed and all output has been produced (only when flush is set to
- Z_FINISH), Z_STREAM_ERROR if the stream state was inconsistent (for example
- if next_in or next_out was NULL), Z_BUF_ERROR if no progress is possible.
-*/
-
-
-extern int deflateEnd OF((z_stream *strm));
-/*
- All dynamically allocated data structures for this stream are freed.
- This function discards any unprocessed input and does not flush any
- pending output.
-
- deflateEnd returns Z_OK if success, Z_STREAM_ERROR if the
- stream state was inconsistent. In the error case, msg may be set
- but then points to a static string (which must not be deallocated).
-*/
-
-
-extern int inflateInit OF((z_stream *strm));
-/*
- Initializes the internal stream state for decompression. The fields
- zalloc and zfree must be initialized before by the caller. If zalloc and
- zfree are set to Z_NULL, inflateInit updates them to use default allocation
- functions.
-
- inflateInit returns Z_OK if success, Z_MEM_ERROR if there was not
- enough memory. msg is set to null if there is no error message.
- inflateInit does not perform any decompression: this will be done by
- inflate().
-*/
-
-
-extern int inflate OF((z_stream *strm, int flush));
-/*
- Performs one or both of the following actions:
-
- - Decompress more input starting at next_in and update next_in and avail_in
- accordingly. If not all input can be processed (because there is not
- enough room in the output buffer), next_in is updated and processing
- will resume at this point for the next call of inflate().
-
- - Provide more output starting at next_out and update next_out and avail_out
- accordingly. inflate() always provides as much output as possible
- (until there is no more input data or no more space in the output buffer).
-
- Before the call of inflate(), the application should ensure that at least
- one of the actions is possible, by providing more input and/or consuming
- more output, and updating the next_* and avail_* values accordingly.
- The application can consume the uncompressed output when it wants, for
- example when the output buffer is full (avail_out == 0), or after each
- call of inflate().
-
- If the parameter flush is set to Z_PARTIAL_FLUSH or Z_PACKET_FLUSH,
- inflate flushes as much output as possible to the output buffer. The
- flushing behavior of inflate is not specified for values of the flush
- parameter other than Z_PARTIAL_FLUSH, Z_PACKET_FLUSH or Z_FINISH, but the
- current implementation actually flushes as much output as possible
- anyway. For Z_PACKET_FLUSH, inflate checks that once all the input data
- has been consumed, it is expecting to see the length field of a stored
- block; if not, it returns Z_DATA_ERROR.
-
- inflate() should normally be called until it returns Z_STREAM_END or an
- error. However if all decompression is to be performed in a single step
- (a single call of inflate), the parameter flush should be set to
- Z_FINISH. In this case all pending input is processed and all pending
- output is flushed; avail_out must be large enough to hold all the
- uncompressed data. (The size of the uncompressed data may have been saved
- by the compressor for this purpose.) The next operation on this stream must
- be inflateEnd to deallocate the decompression state. The use of Z_FINISH
- is never required, but can be used to inform inflate that a faster routine
- may be used for the single inflate() call.
-
- inflate() returns Z_OK if some progress has been made (more input
- processed or more output produced), Z_STREAM_END if the end of the
- compressed data has been reached and all uncompressed output has been
- produced, Z_DATA_ERROR if the input data was corrupted, Z_STREAM_ERROR if
- the stream structure was inconsistent (for example if next_in or next_out
- was NULL), Z_MEM_ERROR if there was not enough memory, Z_BUF_ERROR if no
- progress is possible or if there was not enough room in the output buffer
- when Z_FINISH is used. In the Z_DATA_ERROR case, the application may then
- call inflateSync to look for a good compression block. */
-
-
-extern int inflateEnd OF((z_stream *strm));
-/*
- All dynamically allocated data structures for this stream are freed.
- This function discards any unprocessed input and does not flush any
- pending output.
-
- inflateEnd returns Z_OK if success, Z_STREAM_ERROR if the stream state
- was inconsistent. In the error case, msg may be set but then points to a
- static string (which must not be deallocated).
-*/
-
- /* advanced functions */
-
-/*
- The following functions are needed only in some special applications.
-*/
-
-extern int deflateInit2 OF((z_stream *strm,
- int level,
- int method,
- int windowBits,
- int memLevel,
- int strategy,
- int minCompression));
-/*
- This is another version of deflateInit with more compression options. The
- fields next_in, zalloc and zfree must be initialized before by the caller.
-
- The method parameter is the compression method. It must be 8 in this
- version of the library. (Method 9 will allow a 64K history buffer and
- partial block flushes.)
-
- The windowBits parameter is the base two logarithm of the window size
- (the size of the history buffer). It should be in the range 8..15 for this
- version of the library (the value 16 will be allowed for method 9). Larger
- values of this parameter result in better compression at the expense of
- memory usage. The default value is 15 if deflateInit is used instead.
-
- The memLevel parameter specifies how much memory should be allocated
- for the internal compression state. memLevel=1 uses minimum memory but
- is slow and reduces compression ratio; memLevel=9 uses maximum memory
- for optimal speed. The default value is 8. See zconf.h for total memory
- usage as a function of windowBits and memLevel.
-
- The strategy parameter is used to tune the compression algorithm. Use
- the value Z_DEFAULT_STRATEGY for normal data, Z_FILTERED for data
- produced by a filter (or predictor), or Z_HUFFMAN_ONLY to force Huffman
- encoding only (no string match). Filtered data consists mostly of small
- values with a somewhat random distribution. In this case, the
- compression algorithm is tuned to compress them better. The strategy
- parameter only affects the compression ratio but not the correctness of
- the compressed output even if it is not set appropriately.
-
- The minCompression parameter specifies the minimum reduction in size
- required for a compressed block to be output when Z_PACKET_FLUSH is
- used (see the description of deflate above).
-
- If next_in is not null, the library will use this buffer to hold also
- some history information; the buffer must either hold the entire input
- data, or have at least 1<<(windowBits+1) bytes and be writable. If next_in
- is null, the library will allocate its own history buffer (and leave next_in
- null). next_out need not be provided here but must be provided by the
- application for the next call of deflate().
-
- If the history buffer is provided by the application, next_in must
- must never be changed by the application since the compressor maintains
- information inside this buffer from call to call; the application
- must provide more input only by increasing avail_in. next_in is always
- reset by the library in this case.
-
- deflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was
- not enough memory, Z_STREAM_ERROR if a parameter is invalid (such as
- an invalid method). msg is set to null if there is no error message.
- deflateInit2 does not perform any compression: this will be done by
- deflate().
-*/
-
-extern int deflateCopy OF((z_stream *dest,
- z_stream *source));
-/*
- Sets the destination stream as a complete copy of the source stream. If
- the source stream is using an application-supplied history buffer, a new
- buffer is allocated for the destination stream. The compressed output
- buffer is always application-supplied. It's the responsibility of the
- application to provide the correct values of next_out and avail_out for the
- next call of deflate.
-
- This function is useful when several compression strategies will be
- tried, for example when there are several ways of pre-processing the input
- data with a filter. The streams that will be discarded should then be freed
- by calling deflateEnd. Note that deflateCopy duplicates the internal
- compression state which can be quite large, so this strategy is slow and
- can consume lots of memory.
-
- deflateCopy returns Z_OK if success, Z_MEM_ERROR if there was not
- enough memory, Z_STREAM_ERROR if the source stream state was inconsistent
- (such as zalloc being NULL). msg is left unchanged in both source and
- destination.
-*/
-
-extern int deflateReset OF((z_stream *strm));
-/*
- This function is equivalent to deflateEnd followed by deflateInit,
- but does not free and reallocate all the internal compression state.
- The stream will keep the same compression level and any other attributes
- that may have been set by deflateInit2.
-
- deflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source
- stream state was inconsistent (such as zalloc or state being NULL).
-*/
-
-extern int inflateInit2 OF((z_stream *strm,
- int windowBits));
-/*
- This is another version of inflateInit with more compression options. The
- fields next_out, zalloc and zfree must be initialized before by the caller.
-
- The windowBits parameter is the base two logarithm of the maximum window
- size (the size of the history buffer). It should be in the range 8..15 for
- this version of the library (the value 16 will be allowed soon). The
- default value is 15 if inflateInit is used instead. If a compressed stream
- with a larger window size is given as input, inflate() will return with
- the error code Z_DATA_ERROR instead of trying to allocate a larger window.
-
- If next_out is not null, the library will use this buffer for the history
- buffer; the buffer must either be large enough to hold the entire output
- data, or have at least 1<<windowBits bytes. If next_out is null, the
- library will allocate its own buffer (and leave next_out null). next_in
- need not be provided here but must be provided by the application for the
- next call of inflate().
-
- If the history buffer is provided by the application, next_out must
- never be changed by the application since the decompressor maintains
- history information inside this buffer from call to call; the application
- can only reset next_out to the beginning of the history buffer when
- avail_out is zero and all output has been consumed.
-
- inflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was
- not enough memory, Z_STREAM_ERROR if a parameter is invalid (such as
- windowBits < 8). msg is set to null if there is no error message.
- inflateInit2 does not perform any decompression: this will be done by
- inflate().
-*/
-
-extern int inflateSync OF((z_stream *strm));
-/*
- Skips invalid compressed data until the special marker (see deflate()
- above) can be found, or until all available input is skipped. No output
- is provided.
-
- inflateSync returns Z_OK if the special marker has been found, Z_BUF_ERROR
- if no more input was provided, Z_DATA_ERROR if no marker has been found,
- or Z_STREAM_ERROR if the stream structure was inconsistent. In the success
- case, the application may save the current current value of total_in which
- indicates where valid compressed data was found. In the error case, the
- application may repeatedly call inflateSync, providing more input each time,
- until success or end of the input data.
-*/
-
-extern int inflateReset OF((z_stream *strm));
-/*
- This function is equivalent to inflateEnd followed by inflateInit,
- but does not free and reallocate all the internal decompression state.
- The stream will keep attributes that may have been set by inflateInit2.
-
- inflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source
- stream state was inconsistent (such as zalloc or state being NULL).
-*/
-
-extern int inflateIncomp OF((z_stream *strm));
-/*
- This function adds the data at next_in (avail_in bytes) to the output
- history without performing any output. There must be no pending output,
- and the decompressor must be expecting to see the start of a block.
- Calling this function is equivalent to decompressing a stored block
- containing the data at next_in (except that the data is not output).
-*/
-
- /* checksum functions */
-
-/*
- This function is not related to compression but is exported
- anyway because it might be useful in applications using the
- compression library.
-*/
-
-extern uLong adler32 OF((uLong adler, Bytef *buf, uInt len));
-
-/*
- Update a running Adler-32 checksum with the bytes buf[0..len-1] and
- return the updated checksum. If buf is NULL, this function returns
- the required initial value for the checksum.
- An Adler-32 checksum is almost as reliable as a CRC32 but can be computed
- much faster. Usage example:
-
- uLong adler = adler32(0L, Z_NULL, 0);
-
- while (read_buffer(buffer, length) != EOF) {
- adler = adler32(adler, buffer, length);
- }
- if (adler != original_adler) error();
-*/
-
-#ifndef _Z_UTIL_H
- struct internal_state {int dummy;}; /* hack for buggy compilers */
-#endif
-
-#endif /* _ZLIB_H */
diff --git a/mdk-stage1/ppp/pppstats/Makefile.linux b/mdk-stage1/ppp/pppstats/Makefile.linux
deleted file mode 100644
index ef0764c5d..000000000
--- a/mdk-stage1/ppp/pppstats/Makefile.linux
+++ /dev/null
@@ -1,32 +0,0 @@
-#
-# pppstats makefile
-# $Id$
-#
-
-PPPSTATSRCS = pppstats.c
-PPPSTATOBJS = pppstats.o
-
-#CC = gcc
-COPTS = -O
-COMPILE_FLAGS = -D_linux_ -I../include
-LIBS =
-
-INSTALL= install -o root -g daemon
-
-CFLAGS = $(COPTS) $(COMPILE_FLAGS)
-
-all: pppstats
-
-install: pppstats
- $(INSTALL) -s -c pppstats $(BINDIR)/pppstats
- $(INSTALL) -c -m 444 pppstats.8 $(MANDIR)/man8/pppstats.8
-
-pppstats: $(PPPSTATSRCS)
- $(CC) $(CFLAGS) -o pppstats pppstats.c $(LIBS)
-
-clean:
- rm -f pppstats *~ #* core
-
-depend:
- cpp -M $(CFLAGS) $(PPPSTATSRCS) >.depend
-# makedepend $(CFLAGS) $(PPPSTATSRCS)
diff --git a/mdk-stage1/ppp/pppstats/Makefile.sol2 b/mdk-stage1/ppp/pppstats/Makefile.sol2
deleted file mode 100644
index a6544e61b..000000000
--- a/mdk-stage1/ppp/pppstats/Makefile.sol2
+++ /dev/null
@@ -1,20 +0,0 @@
-#
-# pppstats Makefile for SVR4 systems
-# $Id$
-#
-
-include ../solaris/Makedefs
-
-CFLAGS = -DSTREAMS -I../include $(COPTS)
-
-all: pppstats
-
-pppstats: pppstats.c
- $(CC) $(CFLAGS) -o pppstats pppstats.c
-
-install: pppstats
- $(INSTALL) -f $(BINDIR) pppstats
- $(INSTALL) -m 444 -f $(MANDIR)/man8 pppstats.8
-
-clean:
- rm -f pppstats *~ core
diff --git a/mdk-stage1/ppp/pppstats/Makefile.sunos4 b/mdk-stage1/ppp/pppstats/Makefile.sunos4
deleted file mode 100644
index 2a036f28f..000000000
--- a/mdk-stage1/ppp/pppstats/Makefile.sunos4
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-# pppstats makefile
-# $Id$
-#
-
-include ../sunos4/Makedefs
-
-PPPSTATSRCS = pppstats.c
-PPPSTATOBJS = pppstats.o
-
-COMPILE_FLAGS = -DSTREAMS -DSUNOS4
-LIBS =
-
-CFLAGS = -I../include $(COPTS) $(COMPILE_FLAGS)
-
-all: pppstats
-
-install: pppstats
- $(INSTALL) -c pppstats $(BINDIR)/pppstats
- $(INSTALL) -c -m 444 pppstats.8 $(MANDIR)/man8/pppstats.8
-
-pppstats: $(PPPSTATSRCS)
- $(CC) $(CFLAGS) -o pppstats pppstats.c $(LIBS)
-
-clean:
- rm -f pppstats *~ #* core
-
-depend:
- cpp -M $(CFLAGS) $(PPPSTATSRCS) >.depend
-# makedepend $(CFLAGS) $(PPPSTATSRCS)
diff --git a/mdk-stage1/ppp/pppstats/pppstats.8 b/mdk-stage1/ppp/pppstats/pppstats.8
deleted file mode 100644
index 1ba8d5779..000000000
--- a/mdk-stage1/ppp/pppstats/pppstats.8
+++ /dev/null
@@ -1,217 +0,0 @@
-.\" @(#) $Id$
-.TH PPPSTATS 8 "26 June 1995"
-.SH NAME
-pppstats \- print PPP statistics
-.SH SYNOPSIS
-.B pppstats
-[
-.B -a
-] [
-.B -v
-] [
-.B -r
-] [
-.B -z
-] [
-.B -c
-.I <count>
-] [
-.B -w
-.I <secs>
-] [
-.I interface
-]
-.ti 12
-.SH DESCRIPTION
-The
-.B pppstats
-utility reports PPP-related statistics at regular intervals for the
-specified PPP interface. If the interface is unspecified, it will
-default to ppp0.
-The display is split horizontally
-into input and output sections containing columns of statistics
-describing the properties and volume of packets received and
-transmitted by the interface.
-.PP
-The options are as follows:
-.TP
-.B -a
-Display absolute values rather than deltas. With this option, all
-reports show statistics for the time since the link was initiated.
-Without this option, the second and subsequent reports show statistics
-for the time since the last report.
-.TP
-.B -c \fIcount
-Repeat the display
-.I count
-times. If this option is not specified, the default repeat count is 1
-if the
-.B -w
-option is not specified, otherwise infinity.
-.TP
-.B -r
-Display additional statistics summarizing the compression ratio
-achieved by the packet compression algorithm in use.
-.TP
-.B -v
-Display additional statistics relating to the performance of the Van
-Jacobson TCP header compression algorithm.
-.TP
-.B -w \fIwait
-Pause
-.I wait
-seconds between each display. If this option is not specified, the
-default interval is 5 seconds.
-.TP
-.B -z
-Instead of the standard display, show statistics indicating the
-performance of the packet compression algorithm in use.
-.PP
-The following fields are printed on the input side when the
-.B -z
-option is not used:
-.TP
-.B IN
-The total number of bytes received by this interface.
-.TP
-.B PACK
-The total number of packets received by this interface.
-.TP
-.B VJCOMP
-The number of header-compressed TCP packets received by this interface.
-.TP
-.B VJUNC
-The number of header-uncompressed TCP packets received by this
-interface. Not reported when the
-.B -r
-option is specified.
-.TP
-.B VJERR
-The number of corrupted or bogus header-compressed TCP packets
-received by this interface. Not reported when the
-.B -r
-option is specified.
-.TP
-.B VJTOSS
-The number of VJ header-compressed TCP packets dropped on reception by
-this interface because of preceding errors. Only reported when the
-.B -v
-option is specified.
-.TP
-.B NON-VJ
-The total number of non-TCP packets received by this interface. Only
-reported when the
-.B -v
-option is specified.
-.TP
-.B RATIO
-The compression ratio achieved for received packets by the
-packet compression scheme in use, defined as the uncompressed size
-divided by the compressed size.
-Only reported when the
-.B -r
-option is specified.
-.TP
-.B UBYTE
-The total number of bytes received, after decompression of compressed
-packets. Only reported when the
-.B -r
-option is specified.
-.PP
-The following fields are printed on the output side:
-.TP
-.B OUT
-The total number of bytes transmitted from this interface.
-.TP
-.B PACK
-The total number of packets transmitted from this interface.
-.TP
-.B VJCOMP
-The number of TCP packets transmitted from this interface with
-VJ-compressed TCP headers.
-.TP
-.B VJUNC
-The number of TCP packets transmitted from this interface with
-VJ-uncompressed TCP headers.
-Not reported when the
-.B -r
-option is specified.
-.TP
-.B NON-VJ
-The total number of non-TCP packets transmitted from this interface.
-Not reported when the
-.B -r
-option is specified.
-.TP
-.B VJSRCH
-The number of searches for the cached header entry for a VJ header
-compressed TCP packet. Only reported when the
-.B -v
-option is specified.
-.TP
-.B VJMISS
-The number of failed searches for the cached header entry for a
-VJ header compressed TCP packet. Only reported when the
-.B -v
-option is specified.
-.TP
-.B RATIO
-The compression ratio achieved for transmitted packets by the
-packet compression scheme in use, defined as the size
-before compression divided by the compressed size.
-Only reported when the
-.B -r
-option is specified.
-.TP
-.B UBYTE
-The total number of bytes to be transmitted, before packet compression
-is applied. Only reported when the
-.B -r
-option is specified.
-.PP
-When the
-.B -z
-option is specified,
-.Nm pppstats
-instead displays the following fields, relating to the packet
-compression algorithm currently in use. If packet compression is not
-in use, these fields will all display zeroes. The fields displayed on
-the input side are:
-.TP
-.B COMPRESSED BYTE
-The number of bytes of compressed packets received.
-.TP
-.B COMPRESSED PACK
-The number of compressed packets received.
-.TP
-.B INCOMPRESSIBLE BYTE
-The number of bytes of incompressible packets (that is, those which
-were transmitted in uncompressed form) received.
-.TP
-.B INCOMPRESSIBLE PACK
-The number of incompressible packets received.
-.TP
-.B COMP RATIO
-The recent compression ratio for incoming packets, defined as the
-uncompressed size divided by the compressed size (including both
-compressible and incompressible packets).
-.PP
-The fields displayed on the output side are:
-.TP
-.B COMPRESSED BYTE
-The number of bytes of compressed packets transmitted.
-.TP
-.B COMPRESSED PACK
-The number of compressed packets transmitted.
-.TP
-.B INCOMPRESSIBLE BYTE
-The number of bytes of incompressible packets transmitted (that is,
-those which were transmitted in uncompressed form).
-.TP
-.B INCOMPRESSIBLE PACK
-The number of incompressible packets transmitted.
-.TP
-.B COMP RATIO
-The recent compression ratio for outgoing packets.
-.SH SEE ALSO
-pppd(8)
diff --git a/mdk-stage1/ppp/pppstats/pppstats.c b/mdk-stage1/ppp/pppstats/pppstats.c
deleted file mode 100644
index 77b803723..000000000
--- a/mdk-stage1/ppp/pppstats/pppstats.c
+++ /dev/null
@@ -1,557 +0,0 @@
-/*
- * print PPP statistics:
- * pppstats [-a|-d] [-v|-r|-z] [-c count] [-w wait] [interface]
- *
- * -a Show absolute values rather than deltas
- * -d Show data rate (kB/s) rather than bytes
- * -v Show more stats for VJ TCP header compression
- * -r Show compression ratio
- * -z Show compression statistics instead of default display
- *
- * History:
- * perkins@cps.msu.edu: Added compression statistics and alternate
- * display. 11/94
- * Brad Parker (brad@cayman.com) 6/92
- *
- * from the original "slstats" by Van Jacobson
- *
- * Copyright (c) 1989 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#ifndef __STDC__
-#define const
-#endif
-
-#ifndef lint
-static const char rcsid[] = "$Id$";
-#endif
-
-#include <stdio.h>
-#include <stddef.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <errno.h>
-#include <signal.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <sys/param.h>
-#include <sys/types.h>
-#include <sys/ioctl.h>
-
-#ifndef STREAMS
-#if defined(_linux_) && defined(__powerpc__) \
- && (__GLIBC__ == 2 && __GLIBC_MINOR__ == 0)
-/* kludge alert! */
-#undef __GLIBC__
-#endif
-#include <sys/socket.h> /* *BSD, Linux, NeXT, Ultrix etc. */
-#ifndef _linux_
-#include <net/if.h>
-#include <net/ppp_defs.h>
-#include <net/if_ppp.h>
-#else
-/* Linux */
-#if __GLIBC__ >= 2
-#include <asm/types.h> /* glibc 2 conflicts with linux/types.h */
-#include <net/if.h>
-#else
-#include <linux/types.h>
-#include <linux/if.h>
-#endif
-#include <linux/ppp_defs.h>
-#include <linux/if_ppp.h>
-#endif /* _linux_ */
-
-#else /* STREAMS */
-#include <sys/stropts.h> /* SVR4, Solaris 2, SunOS 4, OSF/1, etc. */
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-
-#endif /* STREAMS */
-
-int vflag, rflag, zflag; /* select type of display */
-int aflag; /* print absolute values, not deltas */
-int dflag; /* print data rates, not bytes */
-int interval, count;
-int infinite;
-int unit;
-int s; /* socket or /dev/ppp file descriptor */
-int signalled; /* set if alarm goes off "early" */
-char *progname;
-char *interface;
-
-#if defined(SUNOS4) || defined(ULTRIX) || defined(NeXT)
-extern int optind;
-extern char *optarg;
-#endif
-
-/*
- * If PPP_DRV_NAME is not defined, use the legacy "ppp" as the
- * device name.
- */
-#if !defined(PPP_DRV_NAME)
-#define PPP_DRV_NAME "ppp"
-#endif /* !defined(PPP_DRV_NAME) */
-
-static void usage __P((void));
-static void catchalarm __P((int));
-static void get_ppp_stats __P((struct ppp_stats *));
-static void get_ppp_cstats __P((struct ppp_comp_stats *));
-static void intpr __P((void));
-
-int main __P((int, char *argv[]));
-
-static void
-usage()
-{
- fprintf(stderr, "Usage: %s [-a|-d] [-v|-r|-z] [-c count] [-w wait] [interface]\n",
- progname);
- exit(1);
-}
-
-/*
- * Called if an interval expires before intpr has completed a loop.
- * Sets a flag to not wait for the alarm.
- */
-static void
-catchalarm(arg)
- int arg;
-{
- signalled = 1;
-}
-
-
-#ifndef STREAMS
-static void
-get_ppp_stats(curp)
- struct ppp_stats *curp;
-{
- struct ifpppstatsreq req;
-
- memset (&req, 0, sizeof (req));
-
-#ifdef _linux_
- req.stats_ptr = (caddr_t) &req.stats;
-#undef ifr_name
-#define ifr_name ifr__name
-#endif
-
- strncpy(req.ifr_name, interface, sizeof(req.ifr_name));
- if (ioctl(s, SIOCGPPPSTATS, &req) < 0) {
- fprintf(stderr, "%s: ", progname);
- if (errno == ENOTTY)
- fprintf(stderr, "kernel support missing\n");
- else
- perror("couldn't get PPP statistics");
- exit(1);
- }
- *curp = req.stats;
-}
-
-static void
-get_ppp_cstats(csp)
- struct ppp_comp_stats *csp;
-{
- struct ifpppcstatsreq creq;
-
- memset (&creq, 0, sizeof (creq));
-
-#ifdef _linux_
- creq.stats_ptr = (caddr_t) &creq.stats;
-#undef ifr_name
-#define ifr_name ifr__name
-#endif
-
- strncpy(creq.ifr_name, interface, sizeof(creq.ifr_name));
- if (ioctl(s, SIOCGPPPCSTATS, &creq) < 0) {
- fprintf(stderr, "%s: ", progname);
- if (errno == ENOTTY) {
- fprintf(stderr, "no kernel compression support\n");
- if (zflag)
- exit(1);
- rflag = 0;
- } else {
- perror("couldn't get PPP compression stats");
- exit(1);
- }
- }
-
-#ifdef _linux_
- if (creq.stats.c.bytes_out == 0) {
- creq.stats.c.bytes_out = creq.stats.c.comp_bytes + creq.stats.c.inc_bytes;
- creq.stats.c.in_count = creq.stats.c.unc_bytes;
- }
- if (creq.stats.c.bytes_out == 0)
- creq.stats.c.ratio = 0.0;
- else
- creq.stats.c.ratio = 256.0 * creq.stats.c.in_count /
- creq.stats.c.bytes_out;
-
- if (creq.stats.d.bytes_out == 0) {
- creq.stats.d.bytes_out = creq.stats.d.comp_bytes + creq.stats.d.inc_bytes;
- creq.stats.d.in_count = creq.stats.d.unc_bytes;
- }
- if (creq.stats.d.bytes_out == 0)
- creq.stats.d.ratio = 0.0;
- else
- creq.stats.d.ratio = 256.0 * creq.stats.d.in_count /
- creq.stats.d.bytes_out;
-#endif
-
- *csp = creq.stats;
-}
-
-#else /* STREAMS */
-
-int
-strioctl(fd, cmd, ptr, ilen, olen)
- int fd, cmd, ilen, olen;
- char *ptr;
-{
- struct strioctl str;
-
- str.ic_cmd = cmd;
- str.ic_timout = 0;
- str.ic_len = ilen;
- str.ic_dp = ptr;
- if (ioctl(fd, I_STR, &str) == -1)
- return -1;
- if (str.ic_len != olen)
- fprintf(stderr, "strioctl: expected %d bytes, got %d for cmd %x\n",
- olen, str.ic_len, cmd);
- return 0;
-}
-
-static void
-get_ppp_stats(curp)
- struct ppp_stats *curp;
-{
- if (strioctl(s, PPPIO_GETSTAT, curp, 0, sizeof(*curp)) < 0) {
- fprintf(stderr, "%s: ", progname);
- if (errno == EINVAL)
- fprintf(stderr, "kernel support missing\n");
- else
- perror("couldn't get PPP statistics");
- exit(1);
- }
-}
-
-static void
-get_ppp_cstats(csp)
- struct ppp_comp_stats *csp;
-{
- if (strioctl(s, PPPIO_GETCSTAT, csp, 0, sizeof(*csp)) < 0) {
- fprintf(stderr, "%s: ", progname);
- if (errno == ENOTTY) {
- fprintf(stderr, "no kernel compression support\n");
- if (zflag)
- exit(1);
- rflag = 0;
- } else {
- perror("couldn't get PPP compression statistics");
- exit(1);
- }
- }
-}
-
-#endif /* STREAMS */
-
-#define MAX0(a) ((int)(a) > 0? (a): 0)
-#define V(offset) MAX0(cur.offset - old.offset)
-#define W(offset) MAX0(ccs.offset - ocs.offset)
-
-#define RATIO(c, i, u) ((c) == 0? 1.0: (u) / ((double)(c) + (i)))
-#define CRATE(x) RATIO(W(x.comp_bytes), W(x.inc_bytes), W(x.unc_bytes))
-
-#define KBPS(n) ((n) / (interval * 1000.0))
-
-/*
- * Print a running summary of interface statistics.
- * Repeat display every interval seconds, showing statistics
- * collected over that interval. Assumes that interval is non-zero.
- * First line printed is cumulative.
- */
-static void
-intpr()
-{
- register int line = 0;
- sigset_t oldmask, mask;
- char *bunit;
- int ratef = 0;
- struct ppp_stats cur, old;
- struct ppp_comp_stats ccs, ocs;
-
- memset(&old, 0, sizeof(old));
- memset(&ocs, 0, sizeof(ocs));
-
- while (1) {
- get_ppp_stats(&cur);
- if (zflag || rflag)
- get_ppp_cstats(&ccs);
-
- (void)signal(SIGALRM, catchalarm);
- signalled = 0;
- (void)alarm(interval);
-
- if ((line % 20) == 0) {
- if (zflag) {
- printf("IN: COMPRESSED INCOMPRESSIBLE COMP | ");
- printf("OUT: COMPRESSED INCOMPRESSIBLE COMP\n");
- bunit = dflag? "KB/S": "BYTE";
- printf(" %s PACK %s PACK RATIO | ", bunit, bunit);
- printf(" %s PACK %s PACK RATIO", bunit, bunit);
- } else {
- printf("%8.8s %6.6s %6.6s",
- "IN", "PACK", "VJCOMP");
-
- if (!rflag)
- printf(" %6.6s %6.6s", "VJUNC", "VJERR");
- if (vflag)
- printf(" %6.6s %6.6s", "VJTOSS", "NON-VJ");
- if (rflag)
- printf(" %6.6s %6.6s", "RATIO", "UBYTE");
- printf(" | %8.8s %6.6s %6.6s",
- "OUT", "PACK", "VJCOMP");
-
- if (!rflag)
- printf(" %6.6s %6.6s", "VJUNC", "NON-VJ");
- if (vflag)
- printf(" %6.6s %6.6s", "VJSRCH", "VJMISS");
- if (rflag)
- printf(" %6.6s %6.6s", "RATIO", "UBYTE");
- }
- putchar('\n');
- }
-
- if (zflag) {
- if (ratef) {
- printf("%8.3f %6u %8.3f %6u %6.2f",
- KBPS(W(d.comp_bytes)),
- W(d.comp_packets),
- KBPS(W(d.inc_bytes)),
- W(d.inc_packets),
- ccs.d.ratio / 256.0);
- printf(" | %8.3f %6u %8.3f %6u %6.2f",
- KBPS(W(c.comp_bytes)),
- W(c.comp_packets),
- KBPS(W(c.inc_bytes)),
- W(c.inc_packets),
- ccs.c.ratio / 256.0);
- } else {
- printf("%8u %6u %8u %6u %6.2f",
- W(d.comp_bytes),
- W(d.comp_packets),
- W(d.inc_bytes),
- W(d.inc_packets),
- ccs.d.ratio / 256.0);
- printf(" | %8u %6u %8u %6u %6.2f",
- W(c.comp_bytes),
- W(c.comp_packets),
- W(c.inc_bytes),
- W(c.inc_packets),
- ccs.c.ratio / 256.0);
- }
-
- } else {
- if (ratef)
- printf("%8.3f", KBPS(V(p.ppp_ibytes)));
- else
- printf("%8u", V(p.ppp_ibytes));
- printf(" %6u %6u",
- V(p.ppp_ipackets),
- V(vj.vjs_compressedin));
- if (!rflag)
- printf(" %6u %6u",
- V(vj.vjs_uncompressedin),
- V(vj.vjs_errorin));
- if (vflag)
- printf(" %6u %6u",
- V(vj.vjs_tossed),
- V(p.ppp_ipackets) - V(vj.vjs_compressedin)
- - V(vj.vjs_uncompressedin) - V(vj.vjs_errorin));
- if (rflag) {
- printf(" %6.2f ", CRATE(d));
- if (ratef)
- printf("%6.2f", KBPS(W(d.unc_bytes)));
- else
- printf("%6u", W(d.unc_bytes));
- }
- if (ratef)
- printf(" | %8.3f", KBPS(V(p.ppp_obytes)));
- else
- printf(" | %8u", V(p.ppp_obytes));
- printf(" %6u %6u",
- V(p.ppp_opackets),
- V(vj.vjs_compressed));
- if (!rflag)
- printf(" %6u %6u",
- V(vj.vjs_packets) - V(vj.vjs_compressed),
- V(p.ppp_opackets) - V(vj.vjs_packets));
- if (vflag)
- printf(" %6u %6u",
- V(vj.vjs_searches),
- V(vj.vjs_misses));
- if (rflag) {
- printf(" %6.2f ", CRATE(c));
- if (ratef)
- printf("%6.2f", KBPS(W(c.unc_bytes)));
- else
- printf("%6u", W(c.unc_bytes));
- }
-
- }
-
- putchar('\n');
- fflush(stdout);
- line++;
-
- count--;
- if (!infinite && !count)
- break;
-
- sigemptyset(&mask);
- sigaddset(&mask, SIGALRM);
- sigprocmask(SIG_BLOCK, &mask, &oldmask);
- if (!signalled) {
- sigemptyset(&mask);
- sigsuspend(&mask);
- }
- sigprocmask(SIG_SETMASK, &oldmask, NULL);
- signalled = 0;
- (void)alarm(interval);
-
- if (!aflag) {
- old = cur;
- ocs = ccs;
- ratef = dflag;
- }
- }
-}
-
-int
-main(argc, argv)
- int argc;
- char *argv[];
-{
- int c;
-#ifdef STREAMS
- char *dev;
-#endif
-
- interface = PPP_DRV_NAME "0";
- if ((progname = strrchr(argv[0], '/')) == NULL)
- progname = argv[0];
- else
- ++progname;
-
- while ((c = getopt(argc, argv, "advrzc:w:")) != -1) {
- switch (c) {
- case 'a':
- ++aflag;
- break;
- case 'd':
- ++dflag;
- break;
- case 'v':
- ++vflag;
- break;
- case 'r':
- ++rflag;
- break;
- case 'z':
- ++zflag;
- break;
- case 'c':
- count = atoi(optarg);
- if (count <= 0)
- usage();
- break;
- case 'w':
- interval = atoi(optarg);
- if (interval <= 0)
- usage();
- break;
- default:
- usage();
- }
- }
- argc -= optind;
- argv += optind;
-
- if (!interval && count)
- interval = 5;
- if (interval && !count)
- infinite = 1;
- if (!interval && !count)
- count = 1;
- if (aflag)
- dflag = 0;
-
- if (argc > 1)
- usage();
- if (argc > 0)
- interface = argv[0];
-
- if (sscanf(interface, PPP_DRV_NAME "%d", &unit) != 1) {
- fprintf(stderr, "%s: invalid interface '%s' specified\n",
- progname, interface);
- }
-
-#ifndef STREAMS
- {
- struct ifreq ifr;
-
- s = socket(AF_INET, SOCK_DGRAM, 0);
- if (s < 0) {
- fprintf(stderr, "%s: ", progname);
- perror("couldn't create IP socket");
- exit(1);
- }
-
-#ifdef _linux_
-#undef ifr_name
-#define ifr_name ifr_ifrn.ifrn_name
-#endif
- strncpy(ifr.ifr_name, interface, sizeof(ifr.ifr_name));
- if (ioctl(s, SIOCGIFFLAGS, (caddr_t)&ifr) < 0) {
- fprintf(stderr, "%s: nonexistent interface '%s' specified\n",
- progname, interface);
- exit(1);
- }
- }
-
-#else /* STREAMS */
-#ifdef __osf__
- dev = "/dev/streams/ppp";
-#else
- dev = "/dev/" PPP_DRV_NAME;
-#endif
- if ((s = open(dev, O_RDONLY)) < 0) {
- fprintf(stderr, "%s: couldn't open ", progname);
- perror(dev);
- exit(1);
- }
- if (strioctl(s, PPPIO_ATTACH, &unit, sizeof(int), 0) < 0) {
- fprintf(stderr, "%s: ppp%d is not available\n", progname, unit);
- exit(1);
- }
-
-#endif /* STREAMS */
-
- intpr();
- exit(0);
-}
diff --git a/mdk-stage1/ppp/sample/auth-down b/mdk-stage1/ppp/sample/auth-down
deleted file mode 100644
index edde65db1..000000000
--- a/mdk-stage1/ppp/sample/auth-down
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-#
-# A program or script which is executed after the remote system
-# successfully authenticates itself. It is executed with the parameters
-# <interface-name> <peer-name> <user-name> <tty-device> <speed>
-#
-
-#
-# The environment is cleared before executing this script
-# so the path must be reset
-#
-PATH=/usr/sbin:/sbin:/usr/bin:/bin
-export PATH
-
-echo auth-down `date +'%y/%m/%d %T'` $* >> /var/log/pppstats
-
-# last line
diff --git a/mdk-stage1/ppp/sample/auth-up b/mdk-stage1/ppp/sample/auth-up
deleted file mode 100644
index 54722a3c0..000000000
--- a/mdk-stage1/ppp/sample/auth-up
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-#
-# A program or script which is executed after the remote system
-# successfully authenticates itself. It is executed with the parameters
-# <interface-name> <peer-name> <user-name> <tty-device> <speed>
-#
-
-#
-# The environment is cleared before executing this script
-# so the path must be reset
-#
-PATH=/usr/sbin:/sbin:/usr/bin:/bin
-export PATH
-
-echo auth-up `date +'%y/%m/%d %T'` $* >> /var/log/pppstats
-
-# last line
diff --git a/mdk-stage1/ppp/sample/ip-down b/mdk-stage1/ppp/sample/ip-down
deleted file mode 100644
index b771fb644..000000000
--- a/mdk-stage1/ppp/sample/ip-down
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/bin/sh
-#
-# This script is run by the pppd _after_ the link is brought down.
-# It should be used to delete routes, unset IP addresses etc.
-#
-# This script is called with the following arguments:
-# Arg Name Example
-# $1 Interface name ppp0
-# $2 The tty ttyS1
-# $3 The link speed 38400
-# $4 Local IP number 12.34.56.78
-# $5 Peer IP number 12.34.56.99
-#
-
-#
-# The environment is cleared before executing this script
-# so the path must be reset
-#
-PATH=/usr/sbin:/sbin:/usr/bin:/bin
-export PATH
-
-# last line
diff --git a/mdk-stage1/ppp/sample/ip-up b/mdk-stage1/ppp/sample/ip-up
deleted file mode 100644
index 02bb71c44..000000000
--- a/mdk-stage1/ppp/sample/ip-up
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/sh
-#
-# This script is run by the pppd after the link is established.
-# It should be used to add routes, set IP address, run the mailq
-# etc.
-#
-# This script is called with the following arguments:
-# Arg Name Example
-# $1 Interface name ppp0
-# $2 The tty ttyS1
-# $3 The link speed 38400
-# $4 Local IP number 12.34.56.78
-# $5 Peer IP number 12.34.56.99
-#
-
-#
-# The environment is cleared before executing this script
-# so the path must be reset
-#
-PATH=/usr/sbin:/sbin:/usr/bin:/bin
-export PATH
-
-# last line
diff --git a/mdk-stage1/ppp/sample/options b/mdk-stage1/ppp/sample/options
deleted file mode 100644
index 8d0a3f963..000000000
--- a/mdk-stage1/ppp/sample/options
+++ /dev/null
@@ -1,153 +0,0 @@
-# /etc/ppp/options
-
-# The name of this server. Often, the FQDN is used here.
-#name <host>
-
-# Enforce the use of the hostname as the name of the local system for
-# authentication purposes (overrides the name option).
-usehostname
-
-# If no local IP address is given, pppd will use the first IP address
-# that belongs to the local hostname. If "noipdefault" is given, this
-# is disabled and the peer will have to supply an IP address.
-noipdefault
-
-# With this option, pppd will accept the peer's idea of our local IP
-# address, even if the local IP address was specified in an option.
-#ipcp-accept-local
-
-# With this option, pppd will accept the peer's idea of its (remote) IP
-# address, even if the remote IP address was specified in an option.
-#ipcp-accept-remote
-
-# Specify which DNS Servers the incoming Win95 or WinNT Connection should use
-# Two Servers can be remotely configured
-#ms-dns 192.168.1.1
-#ms-dns 192.168.1.2
-
-# Specify which WINS Servers the incoming connection Win95 or WinNT should use
-#wins-addr 192.168.1.50
-#wins-addr 192.168.1.51
-
-# enable this on a server that already has a permanent default route
-#nodefaultroute
-
-# Run the executable or shell command specified after pppd has terminated
-# the link. This script could, for example, issue commands to the modem
-# to cause it to hang up if hardware modem control signals were not
-# available.
-# If mgetty is running, it will reset the modem anyway. So there is no need
-# to do it here.
-#disconnect "chat -- \d+++\d\c OK ath0 OK"
-
-# Increase debugging level (same as -d). The debug output is written
-# to syslog LOG_LOCAL2.
-debug
-
-# Enable debugging code in the kernel-level PPP driver. The argument n
-# is a number which is the sum of the following values: 1 to enable
-# general debug messages, 2 to request that the contents of received
-# packets be printed, and 4 to request that the contents of transmitted
-# packets be printed.
-#kdebug n
-
-# Require the peer to authenticate itself before allowing network
-# packets to be sent or received.
-# Please do not disable this setting. It is expected to be standard in
-# future releases of pppd. Use the call option (see manpage) to disable
-# authentication for specific peers.
-#auth
-
-# authentication can either be pap or chap. As most people only want to
-# use pap, you can also disable chap:
-#require-pap
-#refuse-chap
-
-# Use hardware flow control (i.e. RTS/CTS) to control the flow of data
-# on the serial port.
-crtscts
-
-# Specifies that pppd should use a UUCP-style lock on the serial device
-# to ensure exclusive access to the device.
-lock
-
-# Use the modem control lines.
-modem
-
-# async character map -- 32-bit hex; each bit is a character
-# that needs to be escaped for pppd to receive it. 0x00000001
-# represents '\x01', and 0x80000000 represents '\x1f'.
-# To allow pppd to work over a rlogin/telnet connection, ou should escape
-# XON (^Q), XOFF (^S) and ^]: (The peer should use "escape ff".)
-#asyncmap 200a0000
-asyncmap 0
-
-# Specifies that certain characters should be escaped on transmission
-# (regardless of whether the peer requests them to be escaped with its
-# async control character map). The characters to be escaped are
-# specified as a list of hex numbers separated by commas. Note that
-# almost any character can be specified for the escape option, unlike
-# the asyncmap option which only allows control characters to be
-# specified. The characters which may not be escaped are those with hex
-# values 0x20 - 0x3f or 0x5e.
-#escape 11,13,ff
-
-# Set the MRU [Maximum Receive Unit] value to <n> for negotiation. pppd
-# will ask the peer to send packets of no more than <n> bytes. The
-# minimum MRU value is 128. The default MRU value is 1500. A value of
-# 296 is recommended for slow links (40 bytes for TCP/IP header + 256
-# bytes of data).
-#mru 542
-
-# Set the MTU [Maximum Transmit Unit] value to <n>. Unless the peer
-# requests a smaller value via MRU negotiation, pppd will request that
-# the kernel networking code send data packets of no more than n bytes
-# through the PPP network interface.
-#mtu <n>
-
-# Set the interface netmask to <n>, a 32 bit netmask in "decimal dot"
-# notation (e.g. 255.255.255.0).
-#netmask 255.255.255.0
-
-# Don't fork to become a background process (otherwise pppd will do so
-# if a serial device is specified).
-nodetach
-
-# Set the assumed name of the remote system for authentication purposes
-# to <n>.
-#remotename <n>
-
-# Add an entry to this system's ARP [Address Resolution Protocol]
-# table with the IP address of the peer and the Ethernet address of this
-# system. {proxyarp,noproxyarp}
-proxyarp
-
-# Use the system password database for authenticating the peer using
-# PAP. Note: mgetty already provides this option. If this is specified
-# then dialin from users using a script under Linux to fire up ppp wont work.
-#login
-
-# If this option is given, pppd will send an LCP echo-request frame to
-# the peer every n seconds. Under Linux, the echo-request is sent when
-# no packets have been received from the peer for n seconds. Normally
-# the peer should respond to the echo-request by sending an echo-reply.
-# This option can be used with the lcp-echo-failure option to detect
-# that the peer is no longer connected.
-lcp-echo-interval 30
-
-# If this option is given, pppd will presume the peer to be dead if n
-# LCP echo-requests are sent without receiving a valid LCP echo-reply.
-# If this happens, pppd will terminate the connection. Use of this
-# option requires a non-zero value for the lcp-echo-interval parameter.
-# This option can be used to enable pppd to terminate after the physical
-# connection has been broken (e.g., the modem has hung up) in
-# situations where no hardware modem control lines are available.
-lcp-echo-failure 4
-
-# Specifies that pppd should disconnect if the link is idle for n seconds.
-idle 600
-
-# Disable the IPXCP and IPX protocols.
-noipx
-
-# ---<End of File>---
diff --git a/mdk-stage1/ppp/sample/options.ttyXX b/mdk-stage1/ppp/sample/options.ttyXX
deleted file mode 100644
index d4202f534..000000000
--- a/mdk-stage1/ppp/sample/options.ttyXX
+++ /dev/null
@@ -1,14 +0,0 @@
-# If you need to set up multiple serial lines then copy this file to
-# options.<ttyname> for each tty with a modem on it.
-#
-# The options.tty file will assign an IP address to each PPP connection
-# as it comes up. They must all be distinct!
-#
-# Example:
-# options.ttyS1 for com2 under DOS.
-#
-# Edit the following line so that the first IP address
-# mentioned is the ip address of the serial port while the second
-# is the IP address of your host
-#
-hostname-s1:hostname
diff --git a/mdk-stage1/ppp/sample/pap-secrets b/mdk-stage1/ppp/sample/pap-secrets
deleted file mode 100644
index 098971b9f..000000000
--- a/mdk-stage1/ppp/sample/pap-secrets
+++ /dev/null
@@ -1,28 +0,0 @@
-# Secrets for authentication using PAP
-# client server secret IP addresses
-
-# OUTBOUND CONNECTIONS
-# Here you should add your userid password to connect to your providers via
-# pap. The * means that the password is to be used for ANY host you connect
-# to. Thus you do not have to worry about the foreign machine name. Just
-# replace password with your password.
-# If you have different providers with different passwords then you better
-# remove the following line.
-#hostname * password
-
-# INBOUND CONNECTIONS
-#client hostname <password> 192.168.1.1
-
-# If you add "auth login -chap +pap" to /etc/mgetty+sendfax/login.config,
-# all users in /etc/passwd can use their password for pap-authentication.
-#
-# Every regular user can use PPP and has to use passwords from /etc/passwd
-#* hostname ""
-# UserIDs that cannot use PPP at all. Check your /etc/passwd and add any
-# other accounts that should not be able to use pppd! Replace hostname
-# with your local hostname.
-#guest hostname "*" -
-#master hostname "*" -
-#root hostname "*" -
-#support hostname "*" -
-#stats hostname "*" -
diff --git a/mdk-stage1/ppp/scripts/README b/mdk-stage1/ppp/scripts/README
deleted file mode 100644
index 00e032ca6..000000000
--- a/mdk-stage1/ppp/scripts/README
+++ /dev/null
@@ -1,143 +0,0 @@
-This directory contains a set of scripts which have been used on Linux
-as well as Solaris 2.x systems to initiate or maintain a connection
-with PPP. The files in this directory were contributed by Al Longyear
-(longyear@netcom.com) and Adi Masputra (adi.masputra@sun.com)
-
-------------------------------------------------------------------------
-
-1. README
-
-This file. You are reading it. It is just documentation.
-
-------------------------------------------------------------------------
-
-2. ppp-on
-
-This script will initiate a connection to the PPP system. It will run
-the chat program with the connection script as a parameter. This is a
-possible security hole. However, it is simple. It is meant to replace
-the previous version of ppp-on which was not very functional.
-
-The ppp-on script has entries for the account name, password, IP
-addresses, and telephone numbers. The parameters are passed to the
-pppd process and, then in turn, to the second part of the connect
-script, as a set of environment variables.
-
-Please make sure that you put the full path name to the ppp-on-dialer
-script in the reference to it in ppp-on.
-
-------------------------------------------------------------------------
-
-3. ppp-on-dialer
-
-This is the second part to the simple calling script, ppp-on. It
-executes the chat program to connect the user with a standard UNIX
-style getty/login connection sequence.
-
-------------------------------------------------------------------------
-
-4. callback
-
-This script may be used in lieu of the ppp-on-dialer to permit the
-common modem callback sequence. You may need to make changes to the
-expected prompt string for the modem.
-
-The script works by disabling the system's detection of the DCD
-condition and working on the modem status message "NO CARRIER" which
-is generated when the modem disconnects.
-
-It is crude. It does work for my modem connection. Use as you see fit.
-
-------------------------------------------------------------------------
-
-5. redialer
-
-The redialer script is a replacement for the ppp-on-dialer script. It
-will do 'attack dialing' or 'demon dialing' of one or more telephone
-numbers. The first number which responds will be used for a
-connection.
-
-There is a limit of ten attempts and a 15 second delay between dialing
-attempts. Both values are set in the script.
-
-------------------------------------------------------------------------
-
-6. ppp-off
-
-This is a script which will terminate the active ppp connection. Use
-as either "ppp-off" to terminate ppp0, or "ppp-off <device>" to
-terminate the connection on <device>. For example, "ppp-off ppp2" will
-terminate the ppp2 connection.
-
-------------------------------------------------------------------------
-
-7. secure-card
-
-This script was written by Jim Isaacson <jcisaac@crl.com>. It is a script
-for the 'expect' programming language used with Tcl. You need to have
-expect and Tcl installed before this script may be used.
-
-This script will operate with a device marketed under the name "SecureCARD".
-This little device is mated with its controller. On the credit card size
-device, there is a sequence number which changes on a random basis. In order
-for you to connect you need to enter a fixed portion of your account name
-and the number which is displayed on this card device. The number must match
-the value at the controller in order for the account name to be used.
-
-The problem is that chat uses fixed response strings. In addition, the
-timing for running the script may prevent the use of a script that reads the
-value before it starts the dial sequence. What was needed was a script which
-asked the user at the user's console at the time that it is needed.
-
-This led to the use of expect.
-
-------------------------------------------------------------------------
-
-8. ppp-on-rsh
-
-This script will initiate a PPP connection to a remote machine using rsh.
-This is implemented by creating a master/slave pseudo-tty with the slave
-pointing to rsh, specifically with the 'pty' and 'notty' options of pppd.
-It is assumed that the remote machine contains some sort of trust
-mechanisms (such as ~/.rhosts, et al) to allow the local machine to
-connect via rsh as root.
-
-------------------------------------------------------------------------
-
-9. ppp-on-ssh
-
-This script will initiate a PPP connection to a remote machine using the
-secure shell, or ssh. I've only tested this on ssh 1.x, so those of you
-who are running ssh 2.x mahy need to modify the ssh options slightly.
-This is implemented by creating a master/slave pseudo-ttyt with the slave
-pointing to ssh, specifically with the 'pty' and 'notty' options of pppd.
-It is assumed that the remote machine can accept the ssh connection from
-the local host, in the sense that all ssh authentication mechanisms have
-been properly configured, so that a remote root user can open a ssh
-connection.
-
-------------------------------------------------------------------------
-
-10. options-rsh-loc & options-rsh-rem
-
-These options files accompany the ppp-on-rsh script mentioned above. In
-theory, you'd want to copy the options-rsh-rem to the remote machine where
-in.rshd is running. The only extra option required on the remote machine
-options file is the 'notty' option. In addition, all ASCII control characters
-[0x00 to 0x1f], plus 0xff, are escaped. This may need to be modified
-depending on the rsh (or pseudo-tty) implementation which may differ across
-platforms, for further optimizations.
-
-------------------------------------------------------------------------
-
-11. options-ssh-loc & options-ssh-rem
-
-These options files accompany the ppp-on-ssh script mentioned above. I've
-only tested this on ssh 1.x, so those of you who are running ssh 2.x need
-to modify the ssh options slightly. In theory, you'd want to copy the
-options-ssh-rem to the remote machine where sshd daemon is running. The only
-extra options required on the remote machine options file is the 'notty'
-option. In addition, all ASCII control characters [0x00 to 0x1f], plus 0xff,
-are escaped. This may need to be modified depending on the ssh (or
-pseudo-tty) implementation which may differ across platforms, for further
-optimizations.
diff --git a/mdk-stage1/ppp/scripts/callback b/mdk-stage1/ppp/scripts/callback
deleted file mode 100755
index 3e74e10b2..000000000
--- a/mdk-stage1/ppp/scripts/callback
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/bin/sh
-###################################################################
-#
-# Script to dial the remote system, negotiate the connection, and send
-# it the id. Then wait for the modem to disconnect. Reset the modem
-# to answer mode and wait for the system to call back.
-#
-# The telephone number and modempass are used when establishing the
-# connection to the modem.
-#
-PHONE=555-1212
-MODEMPASS=modem_identifier
-#
-# Once the modem calls back, the account name and password are used for
-# a UNIX style login operation.
-#
-ACCOUNT=my_account_name
-PASSWORD=my_password
-
-###################################################################
-#
-# Step 1. Dial the modem and negotiate the initial dialog.
-# note: the modem is configured to ignore loss of DCD at this point.
-# it is important that this be performed because the loss of DCD
-# will normally prevent system from working since 'modem' is used
-# for pppd.
-#
-# The script is terminated normally when the carrier is lost.
-#
-chat -v \
- TIMEOUT 3 \
- ABORT '\nBUSY\r' \
- ABORT '\nNO ANSWER\r' \
- ABORT '\nRINGING\r\n\r\nRINGING\r' \
- '' AT \
- 'OK-+++\c-OK' 'AT&C0&D2S0=0H0 \
- TIMEOUT 30 \
- OK ATDT$TELEPHONE \
- CONNECT '' \
- assword: $MODEMPASS \
- "\nNO CARRIER\r"
-
-if [ "$?" = "0" ]; then
-
-###################################################################
-#
-# Step 2. Wait for the call back from the remote. This will wait for at most
-# 30 seconds for the call back should the first attempt fail or
-# something happen with the callback logic at the remote.
-#
-# note: when the callback occurs, the DCD setting is re-enabled.
-#
-# If some voice call should happen during this period, the system will
-# answer the telephone and then hang up on them. I realize that this is
-# rude, but there is little that this script can do.
-#
- chat -v \
- TIMEOUT 30 \
- ABORT '\nVOICE\r' \
- '\nRING\r' 'AT&C1A' \
- CONNECT '' \
- TIMEOUT 10 \
- ogin:--ogin: $ACCOUNT \
- TIMEOUT 45 \
- assword: $PASSWORD
-
- if [ "$?" = "0" ]; then
- exit 0
- fi
-fi
-
-###################################################################
-#
-# The script has failed. Terminate the connection mode.
-#
-chat -v TIMEOUT 3 "" AT 'OK-+++\c-OK' 'AT&C1&D2S0=0H0' OK
-exit 1
diff --git a/mdk-stage1/ppp/scripts/chat-callback b/mdk-stage1/ppp/scripts/chat-callback
deleted file mode 100644
index d014d6af3..000000000
--- a/mdk-stage1/ppp/scripts/chat-callback
+++ /dev/null
@@ -1,98 +0,0 @@
-# =====================================================================================
-# Chat script to dial our Company PPP account.
-# They uses a call-back system to identify us and to reverse
-# charge the call cost.
-# =====================================================================================
-#
-ECHO OFF
-# All the usual abort strings
-ABORT "NO CARRIER"
-ABORT "VOICE"
-ABORT "BUSY"
-ABORT "NO DIALTONE"
-ABORT "NO ANSWER"
-#
-# If calling outside allowed time we get this:
-#
-ABORT "Access denied"
-#
-# Modem initialisation stuff
-#
-TIMEOUT 5
-SAY "Initialising modem ...\n"
-'' ATE1
-'OK\r\n' ATS0=1S11=60X4&K4S42.1=1
-#
-# Now dial our ISP and wait for connection
-#
-SAY "Dialling our ISP ...\n"
-'OK\r\n' ATDT09834657
-TIMEOUT 60
-CONNECT \c
-SAY "Connected ...\n"
-#
-# This is the first stage login, we identify ourself so that the remote
-# system will agree to call us back.
-#
-TIMEOUT 30
-SAY "Sending Callback login ID ...\n"
-name:-BREAK-name: callme
-#
-# From now on, we must assume no carrier is normal as well
-# as receiving a HANGUP signal because it will be the
-# case if our ISP clears the call to call us back.
-#
-CLR_ABORT "NO CARRIER"
-HANGUP OFF
-#
-ABORT "Invalid"
-#
-# Now send password and wait to see what happens
-#
-SAY "Sending Callback password ...\n"
-word:--word: xvsgsgs
-"You will be" \c
-#
-# What can happen now is:
-# either: we get "You will be called back..." which is the successful case
-# or: we get "Invalid login" and we abort (bad login ID or password)
-# or: we get "NO CARRIER" because of an error, this will not abort
-# and we will time out after 30 seconds
-# or: we get nothing and we will time out after 30 seconds
-#
-#
-# We reach here if we got "You will be called back..."
-#
-CLR_ABORT "Invalid"
-SAY "Now waiting for Call back ...\n"
-#
-# The remote system will now hangup and we will get both "NO CARRIER"
-# and a hangup signal which are ignored. We now wait for a connection
-# for up to 120 seconds. What happens here if somebody else calls before
-# the remote system is a bit dangerous:
-#
-# If a malicious user connects and says 'name:', he will see 'PPPuser'
-# If he then says 'word:' he will see the passowrd 'blipblop'. I may not
-# know to which systems these belong to, though. It is up to you to consider
-# that case and decide wether the risk is too big or not ....
-#
-TIMEOUT 120
-"CONNECT" \c
-#
-# We have been called, re-arm ABORT on NO CARRIER and normal hangup signal
-# behaviour
-#
-HANGUP ON
-ABORT "NO CARRIER"
-#
-# Second stage login in order to start PPP
-#
-SAY "Remote system called back, logging in ...\n"
-SAY "Sending login ID ...\n"
-name:-BREAK-name: PPPuser
-SAY "Sending password ...\n"
-word:--word: blipblop
-SAY "Asking to start PPP ...\n"
-'CnetSrv' "ppp default"
-"Entering PPP mode" \c
-SAY "ISP PPP started ...\n"
diff --git a/mdk-stage1/ppp/scripts/chatchat/README b/mdk-stage1/ppp/scripts/chatchat/README
deleted file mode 100644
index 88a4c6939..000000000
--- a/mdk-stage1/ppp/scripts/chatchat/README
+++ /dev/null
@@ -1,134 +0,0 @@
-v 0.1 gpk@onramp.net 3/27/99
-
-I Intro
-
- This document covers the use of the modified "chat" program and its
-adjunct "chatchat" to login using the Security Dynamics SecurID card
-on a linux system.
-
- This set of files comprises a modified version of the chat program
-(the one distributed with ppp-2.3.5) and a new program called chatchat
-that allows you to supply data from the keyboard to the chat program.
-
- The SecurID card generates passwords that have a lifetime of one
-minute and are used as a first layer in dial up security. The only
-software I know of for this card is for windows, so I wrote my own.
-This software allows you to type in the time-sensitive password right
-when your chat script is asked to supply the passcode by the remote
-system.
-
-
-II How It Works
-
- This version of chat his an additional command that can be put into
-its options that says "Don't reply with this string. Open this pipe,
-read the contents, and reply with that instead." Chatchat creates a
-pipe and lets you type your passcode into it, then chat picks that up
-and sends it out just as though the passcode was hardcoded into the
-options.
-
-
-III Installation
-
- I've provided intel binaries and source code the the modified chat
-program and the chatchat program. I'll recommend that you copy the
-chat.c program into your ppp-2.3.5/chat directory (save your original
-chat.c program first!) and re-make it using the Makefile that comes
-with chat. Copy the new chat somewhere into your path. (On my system
-chat lives in /usr/sbin/chat, so I've copied the modified one into
-/usr/sbin/chat.new and changed my dial in script to call chat.new
-instead of chat.
-
- Second, compile chatchat.c and install it somewhere in your path:
-
- gcc -g -o chatchat chatchat.c
- cp chatchat /usr/sbin
-
- Third, modify your chat script to use the chatchat program. Mine
-looks something like this:
-
-
- --------------------
-
-#!/bin/sh
-#
-# This is part 2 of the ppp-on script. It will perform the connection
-# protocol for the desired connection.
-# use atm0 to turn down the speaker volume on my sportster x2 voice modem
-# gpk 11/2/97
-
-exec /usr/sbin/chat.new -V -v \
- ABORT "BUSY" \
- ABORT "NO DIAL TONE" \
- ABORT "NO ANSWER" \
- TIMEOUT 50 \
- "" "atm0" \
- OK ATDT$TELEPHONE \
- CONNECT '' \
- name: \\da0xxxxxx \
- word: @/var/tmp/p \
- compress. ''
-
-
- -----------------------
-
- This is a standard chat script:
-
-* abort if the modem is busy, you don't get a dial tone, no one
- answers, or 50 seconds elapses.
-
-* use atm0 to mute the modem
-
-* dial the modem, when it connects, wait to be asked for account name
-
-* when we see "name:" prompt, delay briefly then respond with your
- account name (fill in your account name)
-
-Now we get to the new stuff:
-
-* when we see "word:" in the password prompt, instead of responding
- with "@/var/tmp/p", the modified chat program will open the pipe
- /var/tmp/p, read the passcode out of there, and send it
-
-* when we see "compress." (the last word before ppp starts), reply
- with nothing. The script ends and we start ppp.
-
-Note:
-
-* Make sure there is some whitespace between the filename and the \.
-
-
-IV Usage
-
- To use this install the modified chat and chatchat programs, and
-modify your chat script similar to the above. Before you dial in,
-start that chatchat program giving it the same pipe as in your config
-file. In the above case:
-
-chatchat /var/tmp/p
-
- Wait until you have one or two tick marks left on your card's
-current number, then start your dial up process that eventually calls
-chat. When chat goes to open and read the pipe, chatchat will prompt:
-
-
-type PIN into SecurID card and
- enter resulting passcode:
-
- At that point, type your PIN number into your Securid card, press
-the diamond, and type the resulting numbers in as your passcode. If
-you've left the -V -v options on your chat command you'll see
-everything so out, otherwise it works silently.
-
- If you type the number wrong or run out of time, the server will
-respond with an authentication failure. In that case you will have to
-hang up and start again. I don't know how to build a conditional script
-that says either expect "compress" next, but if you see "name:" again,
-do this instead.
-
-
-V Additional Information
-
- You can obtain additional information about chat and ppp from the
-man pages for chat and pppd, as well as the PPP-HOWTO.
-
diff --git a/mdk-stage1/ppp/scripts/chatchat/chatchat.c b/mdk-stage1/ppp/scripts/chatchat/chatchat.c
deleted file mode 100644
index 4534fb9e3..000000000
--- a/mdk-stage1/ppp/scripts/chatchat/chatchat.c
+++ /dev/null
@@ -1,409 +0,0 @@
-/* *************************************************************************
-* NAME: chatchat.c
-*
-* DESCRIPTION:
-*
-* This program creates a pipe for the chat process to read. The user
-* can supply information (like a password) that will be picked up
-* by chat and sent just like the regular contents of a chat script.
-*
-* Usage is:
-*
-* chatchat <filename>
-*
-* where <filename> matches the option given in the chat script.
-*
-* for instance the chat script fragment:
-*
-* ...
-* name: \\dmyname \
-* word: @/var/tmp/p \
-* ...
-* ^
-* (note: leave some whitespace after the filename)
-*
-* expect "name:", reply with a delay followed by "myname"
-* expect "word:", reply with the data read from the pipe /var/tmp/p
-*
-* the matching usage of chatchat would be:
-*
-* chatchat /var/tmp/p
-*
-* eg:
-*
-* $chatchat /var/tmp/p
-* ...
-* some other process eventually starts:
-* chat ...
-* chat parses the "@/var/tmp/p" option and opens
-* /var/tmp/p
-* (chatchat prompts:)
-*
-* type PIN into SecurID card
-* enter resulting passcode: [user inputs something]
-*
-* chat reads /var/tmp/p & gets what the
-* user typed at chatchat's "enter string" prompt
-* chat removes the pipe file
-* chat sends the user's input as a response in
-* place of "@/var/tmp/p"
-*
-* PROCESS:
-*
-* gcc -g -o chatchat chatchat.c
-*
-*
-* GLOBALS: none
-*
-* REFERENCES:
-*
-* see the man pages and documentation that come with the 'chat' program
-* (part of the ppp package). you will need to use the modified chat
-* program that accepts the '@' operator.
-*
-* LIMITATIONS:
-*
-* REVISION HISTORY:
-*
-* STR Description Author
-*
-* 23-Mar-99 initial coding gpk
-* 12-May-99 unlink the pipe after closing paulus
-*
-* TARGET: ANSI C
-* This program is in the public domain.
-*
-*
-* ************************************************************************* */
-
-
-
-
-#include <sys/time.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <string.h>
-
-/* MAXINPUT - the data typed into chatchat must be fewer */
-/* characters than this. */
-
-#define MAXINPUT 80
-
-
-
-
-
-
-/* *************************************************************************
-
-
- NAME: main
-
-
- USAGE:
-
- int argc;
- char * argv[];
-
- main(argc, argv[]);
-
- returns: int
-
- DESCRIPTION:
- if the pipe file name is given on the command line,
- create the pipe, prompt the user and put whatever
- is typed into the pipe.
-
- returns -1 on error
- else # characters entered
- REFERENCES:
-
- LIMITATIONS:
-
- GLOBAL VARIABLES:
-
- accessed: none
-
- modified: none
-
- FUNCTIONS CALLED:
-
- REVISION HISTORY:
-
- STR Description of Revision Author
-
- 25-Mar-99 initial coding gpk
-
- ************************************************************************* */
-
-int main(int argc, char * argv[])
-{
- int retval;
-
- int create_and_write_pipe(char * pipename);
-
- if (argc != 2)
- {
- fprintf(stderr, "usage: %s pipename\n", argv[0]);
- retval = -1;
- }
- else
- {
- retval = create_and_write_pipe(argv[1]);
- }
- return (retval);
-}
-
-
-
-
-/* *************************************************************************
-
-
- NAME: create_and_write_pipe
-
-
- USAGE:
-
- int some_int;
- char * pipename;
-
- some_int = create_and_write_pipe(pipename);
-
- returns: int
-
- DESCRIPTION:
- given the pipename, create the pipe, open it,
- prompt the user for a string to put into the
- pipe, write the string, and close the pipe
-
- on error, print out an error message and return -1
-
- returns -1 on error
- else #bytes written into the pipe
- REFERENCES:
-
- LIMITATIONS:
-
- GLOBAL VARIABLES:
-
- accessed: none
-
- modified: none
-
- FUNCTIONS CALLED:
-
- REVISION HISTORY:
-
- STR Description of Revision Author
-
- 25-Mar-99 initial coding gpk
- 12-May-99 remove pipe after closing paulus
-
- ************************************************************************* */
-
-int create_and_write_pipe(char * pipename)
-{
- int retval, created, pipefd, nread, nwritten;
- char input[MAXINPUT];
- char errstring[180];
-
- int create_pipe(char * pipename);
- int write_to_pipe(int pipefd, char * input, int nchar);
-
- created = create_pipe(pipename);
-
- if (-1 == created)
- {
- sprintf(errstring, "unable to create pipe '%s'", pipename);
- perror(errstring);
- retval = -1;
- }
- else
- {
-
- /* note: this open won't succeed until chat has the pipe */
- /* open and ready to read. this makes for nice timing. */
-
- pipefd = open(pipename, O_WRONLY);
-
- if (-1 == pipefd)
- {
- sprintf(errstring, "unable to open pipe '%s'", pipename);
- perror(errstring);
- retval = -1;
- }
- else
- {
- fprintf(stderr, "%s \n %s",
- "type PIN into SecurID card and",
- "enter resulting passcode:");
- nread = read(STDIN_FILENO, (void *)input, MAXINPUT);
-
-
- if (0 >= nread)
- {
- perror("unable to read from stdin");
- retval = -1;
- }
- else
- {
- /* munch off the newline character, chat supplies */
- /* a return when it sends the string out. */
- input[nread -1] = 0;
- nread--;
- nwritten = write_to_pipe(pipefd, input, nread);
- /* printf("wrote [%d]: '%s'\n", nwritten, input); */
- retval = nwritten;
- }
- close(pipefd);
-
- /* Now make the pipe go away. It won't actually go away
- completely until chat closes it. */
- if (unlink(pipename) < 0)
- perror("Warning: couldn't remove pipe");
- }
- }
- return(retval);
-}
-
-
-
-
-
-
-
-/* *************************************************************************
-
-
- NAME: create_pipe
-
-
- USAGE:
-
- int some_int;
- char * pipename;
-
- some_int = create_pipe(pipename);
-
- returns: int
-
- DESCRIPTION:
- create a pipe of the given name
-
- if there is an error (like the pipe already exists)
- print an error message and return
-
- return -1 on failure else success
-
- REFERENCES:
-
- LIMITATIONS:
-
- GLOBAL VARIABLES:
-
- accessed: none
-
- modified: none
-
- FUNCTIONS CALLED:
-
- REVISION HISTORY:
-
- STR Description of Revision Author
-
- 25-Mar-99 initial coding gpk
-
- ************************************************************************* */
-
-int create_pipe(char * pipename)
-{
- mode_t old_umask;
- int created;
-
- /* hijack the umask temporarily to get the mode I want */
- /* on the pipe. */
-
- old_umask = umask(000);
-
- created = mknod(pipename, S_IFIFO | S_IRWXU | S_IWGRP | S_IWOTH,
- (dev_t)NULL);
-
- /* now restore umask. */
-
- (void)umask(old_umask);
-
- if (-1 == created)
- {
- perror("unable to create pipe");
- }
-
- return(created);
-}
-
-
-
-
-
-
-/* *************************************************************************
-
-
- NAME: write_to_pipe
-
-
- USAGE:
-
- int some_int;
- int pipefd;
- char * input;
- int nchar;
-
- some_int = write_to_pipe(pipefd, input, nchar);
-
- returns: int
-
- DESCRIPTION:
- write nchars of data from input to pipefd
-
- on error print a message to stderr
-
- return -1 on error, else # bytes written
- REFERENCES:
-
- LIMITATIONS:
-
- GLOBAL VARIABLES:
-
- accessed: none
-
- modified: none
-
- FUNCTIONS CALLED:
-
- REVISION HISTORY:
-
- STR Description of Revision Author
-
- 25-Mar-99 initial coding gpk
- 12-May-99 don't write count word first paulus
-
- ************************************************************************* */
-
-int write_to_pipe(int pipefd, char * input, int nchar)
-{
- int nwritten;
-
- /* nwritten = write(pipefd, (void *)&nchar, sizeof(nchar)); */
- nwritten = write(pipefd, (void *)input, nchar);
-
- if (-1 == nwritten)
- {
- perror("unable to write to pipe");
- }
-
- return(nwritten);
-}
diff --git a/mdk-stage1/ppp/scripts/ip-down.local.add b/mdk-stage1/ppp/scripts/ip-down.local.add
deleted file mode 100644
index b93590e49..000000000
--- a/mdk-stage1/ppp/scripts/ip-down.local.add
+++ /dev/null
@@ -1,20 +0,0 @@
-
-#
-# This sample code shows you one way to modify your setup to allow automatic
-# configuration of your resolv.conf for peer supplied DNS addresses when using
-# the `usepeerdns' option.
-#
-# In my case I just added this to my /etc/ppp/ip-down.local script. You may need to
-# create an executable script if one does not exist.
-#
-# Nick Walker (nickwalker@email.com)
-#
-
-if [ -n "$USEPEERDNS" -a -f /etc/ppp/resolv.conf ]; then
- if [ -f /etc/ppp/resolv.prev ]; then
- cp -f /etc/ppp/resolv.prev /etc/resolv.conf
- else
- rm -f /etc/resolv.conf
- fi
-fi
-
diff --git a/mdk-stage1/ppp/scripts/ip-up.local.add b/mdk-stage1/ppp/scripts/ip-up.local.add
deleted file mode 100644
index 80172093a..000000000
--- a/mdk-stage1/ppp/scripts/ip-up.local.add
+++ /dev/null
@@ -1,24 +0,0 @@
-
-#
-# This sample code shows you one way to modify your setup to allow automatic
-# configuration of your resolv.conf for peer supplied DNS addresses when using
-# the `usepeerdns' option.
-#
-# In my case I just added this to my /etc/ppp/ip-up.local script. You may need to
-# create an executable script if one does not exist.
-#
-# Nick Walker (nickwalker@email.com)
-#
-
-if [ -n "$USEPEERDNS" -a -f /etc/ppp/resolv.conf ]; then
- rm -f /etc/ppp/resolv.prev
- if [ -f /etc/resolv.conf ]; then
- cp /etc/resolv.conf /etc/ppp/resolv.prev
- grep domain /etc/ppp/resolv.prev > /etc/resolv.conf
- grep search /etc/ppp/resolv.prev >> /etc/resolv.conf
- cat /etc/ppp/resolv.conf >> /etc/resolv.conf
- else
- cp /etc/ppp/resolv.conf /etc
- fi
-fi
-
diff --git a/mdk-stage1/ppp/scripts/options-rsh-loc b/mdk-stage1/ppp/scripts/options-rsh-loc
deleted file mode 100644
index b015b87fe..000000000
--- a/mdk-stage1/ppp/scripts/options-rsh-loc
+++ /dev/null
@@ -1 +0,0 @@
-debug asyncmap FFFFFFFF escape FF kdebug 0 noipdefault nodefaultroute noauth mtu 1460
diff --git a/mdk-stage1/ppp/scripts/options-rsh-rem b/mdk-stage1/ppp/scripts/options-rsh-rem
deleted file mode 100644
index 4b10bb9e9..000000000
--- a/mdk-stage1/ppp/scripts/options-rsh-rem
+++ /dev/null
@@ -1 +0,0 @@
-notty debug asyncmap FFFFFFFF escape FF kdebug 0 noipdefault nodefaultroute noauth mtu 1460
diff --git a/mdk-stage1/ppp/scripts/options-ssh-loc b/mdk-stage1/ppp/scripts/options-ssh-loc
deleted file mode 100644
index add03d659..000000000
--- a/mdk-stage1/ppp/scripts/options-ssh-loc
+++ /dev/null
@@ -1 +0,0 @@
-debug asyncmap FFFFFFFF escape FF kdebug 0 noipdefault nodefaultroute noauth mtu 1400
diff --git a/mdk-stage1/ppp/scripts/options-ssh-rem b/mdk-stage1/ppp/scripts/options-ssh-rem
deleted file mode 100644
index d690722c6..000000000
--- a/mdk-stage1/ppp/scripts/options-ssh-rem
+++ /dev/null
@@ -1 +0,0 @@
-notty debug asyncmap FFFFFFFF escape FF kdebug 0 noipdefault nodefaultroute noauth mtu 1400
diff --git a/mdk-stage1/ppp/scripts/ppp-off b/mdk-stage1/ppp/scripts/ppp-off
deleted file mode 100755
index a22b5ea3d..000000000
--- a/mdk-stage1/ppp/scripts/ppp-off
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh
-######################################################################
-#
-# Determine the device to be terminated.
-#
-if [ "$1" = "" ]; then
- DEVICE=ppp0
-else
- DEVICE=$1
-fi
-
-######################################################################
-#
-# If the ppp0 pid file is present then the program is running. Stop it.
-if [ -r /var/run/$DEVICE.pid ]; then
- kill -INT `cat /var/run/$DEVICE.pid`
-#
-# If the kill did not work then there is no process running for this
-# pid. It may also mean that the lock file will be left. You may wish
-# to delete the lock file at the same time.
- if [ ! "$?" = "0" ]; then
- rm -f /var/run/$DEVICE.pid
- echo "ERROR: Removed stale pid file"
- exit 1
- fi
-#
-# Success. Let pppd clean up its own junk.
- echo "PPP link to $DEVICE terminated."
- exit 0
-fi
-#
-# The ppp process is not running for ppp0
-echo "ERROR: PPP link is not active on $DEVICE"
-exit 1
diff --git a/mdk-stage1/ppp/scripts/ppp-on b/mdk-stage1/ppp/scripts/ppp-on
deleted file mode 100755
index ab79db471..000000000
--- a/mdk-stage1/ppp/scripts/ppp-on
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-#
-# Script to initiate a ppp connection. This is the first part of the
-# pair of scripts. This is not a secure pair of scripts as the codes
-# are visible with the 'ps' command. However, it is simple.
-#
-# These are the parameters. Change as needed.
-TELEPHONE=555-1212 # The telephone number for the connection
-ACCOUNT=george # The account name for logon (as in 'George Burns')
-PASSWORD=gracie # The password for this account (and 'Gracie Allen')
-LOCAL_IP=0.0.0.0 # Local IP address if known. Dynamic = 0.0.0.0
-REMOTE_IP=0.0.0.0 # Remote IP address if desired. Normally 0.0.0.0
-NETMASK=255.255.255.0 # The proper netmask if needed
-#
-# Export them so that they will be available at 'ppp-on-dialer' time.
-export TELEPHONE ACCOUNT PASSWORD
-#
-# This is the location of the script which dials the phone and logs
-# in. Please use the absolute file name as the $PATH variable is not
-# used on the connect option. (To do so on a 'root' account would be
-# a security hole so don't ask.)
-#
-DIALER_SCRIPT=/etc/ppp/ppp-on-dialer
-#
-# Initiate the connection
-#
-# I put most of the common options on this command. Please, don't
-# forget the 'lock' option or some programs such as mgetty will not
-# work. The asyncmap and escape will permit the PPP link to work with
-# a telnet or rlogin connection. You are welcome to make any changes
-# as desired. Don't use the 'defaultroute' option if you currently
-# have a default route to an ethernet gateway.
-#
-exec /usr/sbin/pppd debug lock modem crtscts /dev/ttyS0 38400 \
- asyncmap 20A0000 escape FF kdebug 0 $LOCAL_IP:$REMOTE_IP \
- noipdefault netmask $NETMASK defaultroute connect $DIALER_SCRIPT
diff --git a/mdk-stage1/ppp/scripts/ppp-on-dialer b/mdk-stage1/ppp/scripts/ppp-on-dialer
deleted file mode 100755
index 7d66765f1..000000000
--- a/mdk-stage1/ppp/scripts/ppp-on-dialer
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-#
-# This is part 2 of the ppp-on script. It will perform the connection
-# protocol for the desired connection.
-#
-exec chat -v \
- TIMEOUT 3 \
- ABORT '\nBUSY\r' \
- ABORT '\nNO ANSWER\r' \
- ABORT '\nRINGING\r\n\r\nRINGING\r' \
- '' \rAT \
- 'OK-+++\c-OK' ATH0 \
- TIMEOUT 30 \
- OK ATDT$TELEPHONE \
- CONNECT '' \
- ogin:--ogin: $ACCOUNT \
- assword: $PASSWORD
diff --git a/mdk-stage1/ppp/scripts/ppp-on-rsh b/mdk-stage1/ppp/scripts/ppp-on-rsh
deleted file mode 100755
index 30a50dba6..000000000
--- a/mdk-stage1/ppp/scripts/ppp-on-rsh
+++ /dev/null
@@ -1,72 +0,0 @@
-#!/bin/sh
-#
-# A sample script to establish PPP session(s) via rsh
-#
-# Adi Masputra <adi.masputra@sun.com>
-# Jan 24, 2000
-#
-
-#
-# You'd definitely want to change the following addresses to suit
-# your network configuration
-#
-LOC_IP=10.0.0.1
-REM_IP=10.0.0.2
-NETMASK=255.255.0.0
-
-export LOC_IP REM_IP
-
-#
-# This is the remote peer where in.rshd is running, either
-# its hostname or IP address
-#
-PPPD_RHOST=myremotehost
-
-#
-# For this example, we assume that pppd on both local and remote
-# machines reside in the same place, /usr/local/bin/pppd
-#
-PPPD_LOC=/usr/local/bin/pppd
-
-#
-# The location of local options file (where rsh client is running).
-# Note that the sample options file included in the distribution
-# may need further customizations, depending on your needs. The 'noauth'
-# option specified in the file is there to simplify the example. In
-# reality, you'd probably want to remove such option.
-#
-PPPD_LOC_OPT=/etc/ppp/options-rsh-loc
-
-#
-# The location of remote options file (where in.rshd daemon is running).
-# Note that the sample options file included in the distribution
-# may need further customizations, depending on your needs. The 'noauth'
-# option specified in the file is there to simplify the example. In
-# reality, you'd probably want to remove such option. Also note that
-# the remote options file need to include the 'notty' option for this
-# to work
-#
-PPPD_REM_OPT=/etc/ppp/options-rsh-rem
-
-#
-# The location of rsh client on the local machine
-#
-RSH_LOC=/bin/rsh
-
-export PPPD_LOC PPPD_LOC_OPT PPPD_REM_OPT PPPD_RHOST RSH_LOC
-
-#
-# Uncomment the following to enable IPv6, note that the IPv6 support
-# needs to be enabled during compilation
-#
-# PPPD_IPV6='+ipv6 ipv6cp-use-ipaddr'
-export PPPD_IPV6
-
-#
-# And execute pppd with the pty option, specifying rsh client as the
-# slave side of the pseduo-tty master/slave pair.
-#
-exec $PPPD_LOC \
- pty '$RSH_LOC $PPPD_RHOST $PPPD_LOC $REM_IP:$LOC_IP $PPPD_IPV6 file $PPPD_REM_OPT' \
- $LOC_IP:$REM_IP netmask $NETMASK $PPPD_IPV6 file $PPPD_LOC_OPT
-
diff --git a/mdk-stage1/ppp/scripts/ppp-on-ssh b/mdk-stage1/ppp/scripts/ppp-on-ssh
deleted file mode 100755
index 0e41acac6..000000000
--- a/mdk-stage1/ppp/scripts/ppp-on-ssh
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/bin/sh
-#
-# A sample script to establish PPP session(s) via SSH 1.x
-#
-# Adi Masputra <adi.masputra@sun.com>
-# Jan 24, 2000
-#
-
-#
-# You'd definitely want to change the following addresses to suit
-# your network configuration
-#
-LOC_IP=10.0.0.1
-REM_IP=10.0.0.2
-NETMASK=255.255.0.0
-
-export LOC_IP REM_IP
-
-#
-# This is the remote peer where sshd is running, either
-# its hostname or IP address
-#
-PPPD_RHOST=myremotehost
-
-#
-# For this example, we assume that pppd on both local and remote
-# machines reside in the same place, /usr/local/bin/pppd
-#
-PPPD_LOC=/usr/local/bin/pppd
-
-#
-# The location of local options file (where ssh client is running).
-# Note that the sample options file included in the distribution
-# may need further customizations, depending on your needs. The 'noauth'
-# option specified in the file is there to simplify the example, although
-# some may choose to have it there and rely on ssh authentication
-# instead.
-#
-PPPD_LOC_OPT=/etc/ppp/options-ssh-loc
-
-#
-# The location of remote options file (where sshd daemon is running)
-# Note that the sample options file included in the distribution
-# may need further customizations, depending on your needs. The 'noauth'
-# option specified in the file is there to simplify the example, although
-# some may choose to have it there and rely on ssh authentication
-# instead. Also note that the remote options file need to include the 'notty'
-# options for this to work.
-#
-PPPD_REM_OPT=/etc/ppp/options-ssh-rem
-
-#
-# The location of ssh client on the local machine
-#
-SSH_LOC=/usr/local/bin/ssh
-
-export PPPD_LOC PPPD_LOC_OPT PPPD_REM_OPT PPPD_RHOST SSH_LOC
-
-#
-# Uncomment the following to enable IPv6, note that the IPv6 support
-# needs to be enabled during compilation
-#
-# PPPD_IPV6='+ipv6 ipv6cp-use-ipaddr'
-export PPPD_IPV6
-
-#
-# And execute pppd with the pty option, specifying ssh client as the
-# slave side of the pseudo-tty master/slave pair. Note that on this example,
-# ssh has been compiled to allow NULL encryption (thus the '-c none' option),
-# but in reality, you'd probably want to specify the encryption algorithm.
-# See the man page of ssh(1) for details.
-#
-exec $PPPD_LOC \
- pty '$SSH_LOC -c none $PPPD_RHOST $PPPD_LOC $REM_IP:$LOC_IP $PPPD_IPV6 file $PPPD_REM_OPT' \
- $LOC_IP:$REM_IP netmask $NETMASK $PPPD_IPV6 file $PPPD_LOC_OPT
-
diff --git a/mdk-stage1/ppp/scripts/redialer b/mdk-stage1/ppp/scripts/redialer
deleted file mode 100755
index 5bbde4e9d..000000000
--- a/mdk-stage1/ppp/scripts/redialer
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/sh
-###################################################################
-#
-# These parameters control the attack dialing sequence.
-#
-# Maximum number of attempts to reach the telephone number(s)
-MAX_ATTEMPTS=10
-
-# Delay between each of the attempts. This is a parameter to sleep
-# so use "15s" for 15 seconds, "1m" for 1 minute, etc.
-SLEEP_DELAY=15s
-
-###################################################################
-#
-# This is a list of telephone numbers. Add new numbers if you wish
-# and see the function 'callall' below for the dial process.
-PHONE1=555-1212
-PHONE2=411
-
-###################################################################
-#
-# If you use the ppp-on script, then these are passed to this routine
-# automatically. There is no need to define them here. If not, then
-# you will need to set the values.
-#
-ACCOUNT=my_account_name
-PASSWORD=my_password
-
-###################################################################
-#
-# Function to initialize the modem and ensure that it is in command
-# state. This may not be needed, but it doesn't hurt.
-#
-function initialize
-{
- chat -v TIMEOUT 3 '' AT 'OK-+++\c-OK'
- return
-}
-
-###################################################################
-#
-# Script to dial a telephone
-#
-function callnumber
-{
-chat -v \
- ABORT '\nBUSY\r' \
- ABORT '\nNO ANSWER\r' \
- ABORT '\nRINGING\r\n\r\nRINGING\r' \
- '' ATDT$1 \
- CONNECT '' \
- ogin:--ogin: $ACCOUNT \
- assword: $PASSWORD
-#
-# If the connection was successful then end the whole script with a
-# success.
-#
- if [ "$?" = "0" ]; then
- exit 0
- fi
-
- return
-}
-
-###################################################################
-#
-# Script to dial any telephone number
-#
-function callall
-{
-# echo "dialing attempt number: $1" >/dev/console
- callnumber $PHONE1
-# callnumber $PHONE2
-}
-
-###################################################################
-#
-# Initialize the modem to ensure that it is in the command state
-#
-initialize
-if [ ! "$?" = "0" ]; then
- exit 1
-fi
-
-#
-# Dial telephone numbers until one answers
-#
-attempt=0
-while : ; do
- attempt=`expr $attempt + 1`
- callall $attempt
- if [ "$attempt" = "$MAX_ATTEMPTS" ]; then
- exit 1
- fi
- sleep "$SLEEP_DELAY"
-done
diff --git a/mdk-stage1/ppp/scripts/secure-card b/mdk-stage1/ppp/scripts/secure-card
deleted file mode 100644
index a32138b7d..000000000
--- a/mdk-stage1/ppp/scripts/secure-card
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/usr/local/bin/expect -f
-#
-# This script was written by Jim Isaacson <jcisaac@crl.com>. It is
-# designed to work as a script to use the SecureCARD(tm) device. This
-# little device is mated with a central controller. The number displayed
-# on this card changes every so often and you need to enter the number
-# along with your user account name in order to gain access. Since chat
-# is based upon fixed strings this procedure will not work with chat.
-#
-# It is included by permission. An excellent reference for the expect
-# program used by this script is in the book:
-#
-# "Exploring Expect"
-# by Don Libes
-# Published by O'Rielly and Associates
-#
-
-send_user "hello, starting ppp\n"
-
-system "stty 19200 -echoe -echo raw < /dev/cua3 > /dev/cua3"
-
-#
-# These are the parameters for the program.
-#
-set user Pxxxxxx
-set password xxxxxxx
-set modem /dev/cua3
-set dialup <put phone number here>
-set timeout 60
-
-spawn -noecho -open [open $modem "r+"]
-
-send "AT&F\r"
-expect "OK"
-
-send "ATe0v1x4&c1q0&d2&c1s2=128s0=0DT $dialup\r"
-set timeout 15
-set counter 0
-
-set still_connecting 1
-
-expect {
- -re ".*CONNECT.*\n" {
- set timeout 5
- set still_connecting 0
- continue -expect
- }
- -re ".*CONNECT.*\r" {
- set timeout 5
- set still_connecting 0
- continue -expect
- }
- -re ".*NO.*CARRIER" {
- send_user "Failed to Connect, exiting...\n"
- exit
- }
- -re ".*NO.*DIAL.*TONE" {
- send_user "Failed to Connect, exiting...\n"
- exit
- }
- -re ".*VOICE" {
- send_user "Failed to Connect, exiting...\n"
- exit
- }
- -re ".*sscode:.*\n" {
- continue -expect
- }
- -re ".*sscode:" {
- set timeout -1
- expect_user -re "(.*)\n"
- send "$expect_out(1,string)\r"
- set timeout 30
- continue -expect
- }
- -re ".*Next.*:" {
- set timeout -1
- expect_user -re "(.*)\n"
- send "$expect_out(1,string)\r"
- set timeout 30
- continue -expect
- }
- -re "Your.*" {
- send "\r"
- continue -expect
- }
- -re ".*in:" {
- send "$user\r"
- continue -expect
- }
- -re ".*word:" {
- send "$password\r"
- }
-
- timeout {
- if { $still_connecting > 0 } {
- continue -expect
- }
- set timeout 15
- send "\r"
- incr counter
- if { $counter > 8 } {
- send_user "Cannot Connect\n"
- exit
- } else {
- continue -expect
- }
- }
-}
-
-overlay -0 $spawn_id -1 $spawn_id pppd /dev/cua3 19200 192.111.187.215: \
- crtscts modem defaultroute debug
diff --git a/mdk-stage1/ppp/solaris/Makedefs b/mdk-stage1/ppp/solaris/Makedefs
deleted file mode 100644
index 81db8ab2e..000000000
--- a/mdk-stage1/ppp/solaris/Makedefs
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# defines common to several Makefiles
-#
-
-INSTALL= /usr/sbin/install
-
-BINDIR = /usr/local/bin
-MANDIR = /usr/local/man
-ETCDIR = /etc/ppp
-
-COPTS = -O -Xa
-
-# For compiling with gcc, comment out the COPTS definition above and
-# uncomment the next 2 definitions.
-#CC = gcc
-#COPTS = -O2
diff --git a/mdk-stage1/ppp/solaris/Makedefs.sol2 b/mdk-stage1/ppp/solaris/Makedefs.sol2
deleted file mode 100644
index 1282c6e74..000000000
--- a/mdk-stage1/ppp/solaris/Makedefs.sol2
+++ /dev/null
@@ -1,59 +0,0 @@
-#
-# Generic make definitions for Solaris 2
-#
-# $Id$
-#
-
-include ../solaris/Makedefs
-
-CPPFLAGS = -D_KERNEL -DSVR4 -DSOL2 -DPRIOQ -DDEBUG -I../include
-CFLAGS = $(CPPFLAGS) $(COPTS)
-
-# lint-specific variables
-LINT = lint
-LINT_OPT_32 =
-LINT_OPT_64 = -Xarch=v9 -errchk=longptr64
-
-LINT_32 =
-LINT_32 += -erroff=E_BAD_PTR_CAST_ALIGN
-LINT_32 += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINT_32 += -erroff=E_SUSPICIOUS_COMPARISON
-LINT_32 += -erroff=E_CAST_UINT_TO_SIGNED_INT
-LINT_32 += -erroff=E_PASS_UINT_TO_SIGNED_INT
-LINT_32 += -erroff=E_INVALID_ANNOTATION_NAME
-LINT_32 += -erroff=E_FUNC_ARG_UNUSED
-# This might be needed, but zlib.c and vjcompress.c will squawk
-# when not ignored
-LINT_32 += -erroff=E_CASE_FALLTHRU
-LINT_32 += -erroff=E_RET_INT_IMPLICITLY
-LINT_32 += -erroff=E_FUNC_NO_RET_VAL
-# Some STREAMS macros will be noisy too when this isn't ignored
-LINT_32 += -erroff=E_CONSTANT_CONDITION
-LINT_32 += -erroff=E_CONST_EXPR
-
-# Extra noise suppressant for 64-bit
-EXTRA_OFF =
-EXTRA_OFF += -erroff=E_CAST_INT_TO_SMALL_INT
-EXTRA_OFF += -erroff=E_CAST_INT_CONST_TO_SMALL_INT
-EXTRA_OFF += -erroff=E_CAST_TO_PTR_FROM_INT
-EXTRA_OFF += -erroff=E_ASSIGN_INT_TO_SMALL_INT
-EXTRA_OFF += -erroff=E_ASSIGN_INT_FROM_BIG_CONST
-EXTRA_OFF += -erroff=E_CONST_PROMOTED_UNSIGNED_LL
-EXTRA_OFF += -erroff=E_CONST_PROMOTED_LONG_LONG
-EXTRA_OFF += -erroff=E_CONST_TRUNCATED_BY_ASSIGN
-EXTRA_OFF += -erroff=E_PASS_INT_FROM_BIG_CONST
-EXTRA_OFF += -erroff=E_COMP_INT_WITH_LARGE_INT
-EXTRA_OFF += -erroff=E_ASSIGN_UINT_TO_SIGNED_INT
-EXTRA_OFF += -erroff=E_ASSIGN_NARROW_CONV
-EXTRA_OFF += -erroff=E_PASS_INT_TO_SMALL_INT
-EXTRA_OFF += -erroff=E_PTR_CONV_LOSES_BITS
-
-LINT_64 = $(LINT_32)
-LINT_64 += $(EXTRA_OFF)
-
-LINTFLAGS64 = -Xa -nsxmuF -errtags=yes $(LINT_OPT_64) $(LINT_64)
-LINT64 = $(LINT) -c $(LINTFLAGS64) $(CPPFLAGS)
-
-LINTFLAGS32 = -Xa -nsxmuF -errtags=yes $(LINT_OPT_32) $(LINT_32)
-LINT32 = $(LINT) -c $(LINTFLAGS32) $(CPPFLAGS)
-
diff --git a/mdk-stage1/ppp/solaris/Makefile.sol2 b/mdk-stage1/ppp/solaris/Makefile.sol2
deleted file mode 100644
index 78628847b..000000000
--- a/mdk-stage1/ppp/solaris/Makefile.sol2
+++ /dev/null
@@ -1,66 +0,0 @@
-#
-# Makefile for STREAMS modules for Solaris 2.
-#
-# $Id$
-#
-
-include Makedefs.sol2
-
-COPTS += -xO2 -xspace -W0,-Lt
-
-COMP_OBJS = ppp_comp.o bsd-comp.o deflate.o zlib.o vjcompress.o \
- ppp_comp_mod.o
-
-all: ppp ppp_ahdl ppp_comp
-
-ppp: ppp.o ppp_mod.o
- ld -r -o $@ ppp.o ppp_mod.o
- chmod +x $@
-
-ppp_ahdl: ppp_ahdlc.o ppp_ahdlc_mod.o
- ld -r -o $@ ppp_ahdlc.o ppp_ahdlc_mod.o
- chmod +x $@
-
-ppp_comp: $(COMP_OBJS)
- ld -r -o $@ $(COMP_OBJS)
- chmod +x $@
-
-bsd-comp.o: ../modules/bsd-comp.c
- $(CC) $(CFLAGS) -c $?
-deflate.o: ../modules/deflate.c
- $(CC) $(CFLAGS) -c $?
-ppp.o: ppp.c
- $(CC) $(CFLAGS) -c $?
-ppp_mod.o: ppp_mod.c
- $(CC) $(CFLAGS) -c $?
-ppp_ahdlc_mod.o: ppp_ahdlc_mod.c
- $(CC) $(CFLAGS) -c $?
-ppp_ahdlc.o: ppp_ahdlc.c
- $(CC) $(CFLAGS) -c $?
-ppp_comp.o: ppp_comp.c
- $(CC) $(CFLAGS) -c $?
-ppp_comp_mod.o: ppp_comp_mod.c
- $(CC) $(CFLAGS) -c $?
-vjcompress.o: ../modules/vjcompress.c
- $(CC) $(CFLAGS) -c $?
-zlib.o: ../common/zlib.c
- $(CC) $(CFLAGS) -c $?
-
-install:
- cp ppp ppp.conf /kernel/drv
- cp ppp_comp ppp_ahdl /kernel/strmod
- if grep clone:ppp /etc/minor_perm; then :; else \
- echo clone:ppp 0644 root sys >>/etc/minor_perm; fi
- /usr/sbin/rem_drv ppp 2>/dev/null || true
- /usr/sbin/add_drv ppp
-
-SRCS = ppp.c ppp_mod.c ppp_ahdlc.c ppp_ahdlc_mod.c \
- ppp_comp.c ../modules/bsd-comp.c ../modules/deflate.c \
- ../common/zlib.c ../modules/vjcompress.c ppp_comp_mod.c
-
-lint:
- $(LINT32) $(SRCS)
-
-clean:
- rm -f ppp ppp_comp ppp_ahdl *.o *~ core
- rm -f *.ln
diff --git a/mdk-stage1/ppp/solaris/Makefile.sol2-64 b/mdk-stage1/ppp/solaris/Makefile.sol2-64
deleted file mode 100644
index 63e75fc54..000000000
--- a/mdk-stage1/ppp/solaris/Makefile.sol2-64
+++ /dev/null
@@ -1,85 +0,0 @@
-#
-# Makefile for 64-bit STREAMS modules for Solaris 2.
-#
-# $Id$
-#
-
-include Makedefs.sol2
-
-# Sun's cc flag for LP64 compilation / linkage
-COPTS += -xchip=ultra -xarch=v9 -Wc,-xcode=abs32 -Wc,-Qiselect-regsym=0 -xO3 -xspace -W0,-Lt
-
-# subdirectory where 64-bit objects / binaries will be placed
-LP64DIR = sparcv9
-
-# Name of legacy Makefile (for 32-bit binaries)
-STD_MAKE = Makefile.sol2
-
-COMP_OBJS = $(LP64DIR)/ppp_comp.o $(LP64DIR)/bsd-comp.o \
- $(LP64DIR)/deflate.o $(LP64DIR)/zlib.o $(LP64DIR)/vjcompress.o \
- $(LP64DIR)/ppp_comp_mod.o
-
-all: std_objs $(LP64DIR) ppp ppp_ahdl ppp_comp
-
-std_objs:
- $(MAKE) -f $(STD_MAKE) all
-
-ppp: $(LP64DIR)/ppp.o $(LP64DIR)/ppp_mod.o
- ld -r -o $(LP64DIR)/$@ $(LP64DIR)/ppp.o $(LP64DIR)/ppp_mod.o
- chmod +x $(LP64DIR)/$@
-
-ppp_ahdl: $(LP64DIR)/ppp_ahdlc.o $(LP64DIR)/ppp_ahdlc_mod.o
- ld -r -o $(LP64DIR)/$@ $(LP64DIR)/ppp_ahdlc.o $(LP64DIR)/ppp_ahdlc_mod.o
- chmod +x $(LP64DIR)/$@
-
-ppp_comp: $(COMP_OBJS)
- ld -r -o $(LP64DIR)/$@ $(COMP_OBJS)
- chmod +x $(LP64DIR)/$@
-
-$(LP64DIR)/bsd-comp.o: ../modules/bsd-comp.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/deflate.o: ../modules/deflate.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp.o: ppp.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_mod.o: ppp_mod.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_ahdlc_mod.o: ppp_ahdlc_mod.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_ahdlc.o: ppp_ahdlc.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_comp.o: ppp_comp.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_comp_mod.o: ppp_comp_mod.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/vjcompress.o: ../modules/vjcompress.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/zlib.o: ../common/zlib.c
- $(CC) $(CFLAGS) -c $? -o $@
-
-$(LP64DIR):
- mkdir -m 755 -p $@
-
-install:
- cp ppp ppp.conf /kernel/drv
- cp ppp_comp ppp_ahdl /kernel/strmod
- cp $(LP64DIR)/ppp /kernel/drv/$(LP64DIR)
- cp $(LP64DIR)/ppp_comp $(LP64DIR)/ppp_ahdl /kernel/strmod/$(LP64DIR)
- if grep clone:ppp /etc/minor_perm; then :; else \
- echo clone:ppp 0644 root sys >>/etc/minor_perm; fi
- /usr/sbin/rem_drv ppp 2>/dev/null || true
- /usr/sbin/add_drv ppp
-
-SRCS = ppp.c ppp_mod.c ppp_ahdlc.c ppp_ahdlc_mod.c \
- ppp_comp.c ../modules/bsd-comp.c ../modules/deflate.c \
- ../common/zlib.c ../modules/vjcompress.c ppp_comp_mod.c
-
-lint:
- $(LINT64) $(SRCS)
-
-lint-32:
- $(LINT32) $(SRCS)
-
-clean:
- $(MAKE) -f $(STD_MAKE) clean
- rm -f $(LP64DIR)/ppp $(LP64DIR)/ppp_comp $(LP64DIR)/ppp_ahdl $(LP64DIR)/*.o $(LP64DIR)/*~ $(LP64DIR)/core
diff --git a/mdk-stage1/ppp/solaris/Makefile.top b/mdk-stage1/ppp/solaris/Makefile.top
deleted file mode 100644
index f1200b852..000000000
--- a/mdk-stage1/ppp/solaris/Makefile.top
+++ /dev/null
@@ -1,50 +0,0 @@
-#
-# ppp top level makefile for SVR4 and Solaris 2
-#
-# $Id$
-#
-
-include solaris/Makedefs
-
-all:
- cd chat; $(MAKE) all
- cd pppd; $(MAKE) all
- cd pppstats; $(MAKE) all
- cd pppdump; $(MAKE) all
- cd solaris; $(MAKE) all
-
-install: $(BINDIR) $(MANDIR)/man8 install-progs install-etcppp
-
-install-progs:
- cd chat; $(MAKE) install
- cd pppd; $(MAKE) install
- cd pppstats; $(MAKE) install
- cd pppdump; $(MAKE) install
- cd solaris; $(MAKE) install
-
-install-etcppp: $(ETCDIR) $(ETCDIR)/options $(ETCDIR)/pap-secrets \
- $(ETCDIR)/chap-secrets
-
-$(ETCDIR)/options:
- cp etc.ppp/options $@
- chmod go-w $@
-$(ETCDIR)/pap-secrets:
- $(INSTALL) -f $(ETCDIR) -m 600 etc.ppp/pap-secrets
-$(ETCDIR)/chap-secrets:
- $(INSTALL) -f $(ETCDIR) -m 600 etc.ppp/chap-secrets
-
-$(BINDIR):
- mkdir -m 755 -p $@
-$(MANDIR)/man8:
- mkdir -m 755 -p $@
-$(ETCDIR):
- mkdir -m 755 -p $@
-
-clean:
- rm -f *~
- cd chat; $(MAKE) clean
- cd pppd; $(MAKE) clean
- cd pppstats; $(MAKE) clean
- cd pppdump; $(MAKE) clean
- cd solaris; $(MAKE) clean
-
diff --git a/mdk-stage1/ppp/solaris/ppp.c b/mdk-stage1/ppp/solaris/ppp.c
deleted file mode 100644
index 44bf08dff..000000000
--- a/mdk-stage1/ppp/solaris/ppp.c
+++ /dev/null
@@ -1,2486 +0,0 @@
-/*
- * ppp.c - STREAMS multiplexing pseudo-device driver for PPP.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under Solaris 2, SVR4, SunOS 4, and Digital UNIX.
- */
-
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/stat.h>
-#include <sys/stream.h>
-#include <sys/stropts.h>
-#include <sys/errno.h>
-#ifdef __osf__
-#include <sys/ioctl.h>
-#include <sys/cmn_err.h>
-#define queclass(mp) ((mp)->b_band & QPCTL)
-#else
-#include <sys/ioccom.h>
-#endif
-#include <sys/time.h>
-#ifdef SVR4
-#include <sys/cmn_err.h>
-#include <sys/conf.h>
-#include <sys/dlpi.h>
-#include <sys/ddi.h>
-#ifdef SOL2
-#include <sys/ksynch.h>
-#include <sys/kstat.h>
-#include <sys/sunddi.h>
-#include <sys/ethernet.h>
-#else
-#include <sys/socket.h>
-#include <sys/sockio.h>
-#include <net/if.h>
-#include <netinet/in.h>
-#endif /* SOL2 */
-#else /* not SVR4 */
-#include <sys/user.h>
-#endif /* SVR4 */
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-#include "ppp_mod.h"
-
-/*
- * Modifications marked with #ifdef PRIOQ are for priority queueing of
- * interactive traffic, and are due to Marko Zec <zec@japa.tel.fer.hr>.
- */
-#ifdef PRIOQ
-#endif /* PRIOQ */
-
-#include <netinet/in.h> /* leave this outside of PRIOQ for htons */
-
-#ifdef __STDC__
-#define __P(x) x
-#else
-#define __P(x) ()
-#endif
-
-/*
- * The IP module may use this SAP value for IP packets.
- */
-#ifndef ETHERTYPE_IP
-#define ETHERTYPE_IP 0x800
-#endif
-
-#if !defined(ETHERTYPE_IPV6)
-#define ETHERTYPE_IPV6 0x86dd
-#endif /* !defined(ETHERTYPE_IPV6) */
-
-#if !defined(ETHERTYPE_ALLSAP) && defined(SOL2)
-#define ETHERTYPE_ALLSAP 0
-#endif /* !defined(ETHERTYPE_ALLSAP) && defined(SOL2) */
-
-#if !defined(PPP_ALLSAP) && defined(SOL2)
-#define PPP_ALLSAP PPP_ALLSTATIONS
-#endif /* !defined(PPP_ALLSAP) && defined(SOL2) */
-
-extern time_t time;
-
-#ifdef SOL2
-/*
- * We use this reader-writer lock to ensure that the lower streams
- * stay connected to the upper streams while the lower-side put and
- * service procedures are running. Essentially it is an existence
- * lock for the upper stream associated with each lower stream.
- */
-krwlock_t ppp_lower_lock;
-#define LOCK_LOWER_W rw_enter(&ppp_lower_lock, RW_WRITER)
-#define LOCK_LOWER_R rw_enter(&ppp_lower_lock, RW_READER)
-#define TRYLOCK_LOWER_R rw_tryenter(&ppp_lower_lock, RW_READER)
-#define UNLOCK_LOWER rw_exit(&ppp_lower_lock)
-
-#define MT_ENTER(x) mutex_enter(x)
-#define MT_EXIT(x) mutex_exit(x)
-
-/*
- * Notes on multithreaded implementation for Solaris 2:
- *
- * We use an inner perimeter around each queue pair and an outer
- * perimeter around the whole driver. The inner perimeter is
- * entered exclusively for all entry points (open, close, put,
- * service). The outer perimeter is entered exclusively for open
- * and close and shared for put and service. This is all done for
- * us by the streams framework.
- *
- * I used to think that the perimeters were entered for the lower
- * streams' put and service routines as well as for the upper streams'.
- * Because of problems experienced by people, and after reading the
- * documentation more closely, I now don't think that is true. So we
- * now use ppp_lower_lock to give us an existence guarantee on the
- * upper stream controlling each lower stream.
- *
- * Shared entry to the outer perimeter protects the existence of all
- * the upper streams and their upperstr_t structures, and guarantees
- * that the following fields of any upperstr_t won't change:
- * nextmn, next, nextppa. It guarantees that the lowerq field of an
- * upperstr_t won't go from non-zero to zero, that the global `ppas'
- * won't change and that the no lower stream will get unlinked.
- *
- * Shared (reader) access to ppa_lower_lock guarantees that no lower
- * stream will be unlinked and that the lowerq field of all upperstr_t
- * structures won't change.
- */
-
-#else /* SOL2 */
-#define LOCK_LOWER_W 0
-#define LOCK_LOWER_R 0
-#define TRYLOCK_LOWER_R 1
-#define UNLOCK_LOWER 0
-#define MT_ENTER(x) 0
-#define MT_EXIT(x) 0
-
-#endif /* SOL2 */
-
-/*
- * Private information; one per upper stream.
- */
-typedef struct upperstr {
- minor_t mn; /* minor device number */
- struct upperstr *nextmn; /* next minor device */
- queue_t *q; /* read q associated with this upper stream */
- int flags; /* flag bits, see below */
- int state; /* current DLPI state */
- int sap; /* service access point */
- int req_sap; /* which SAP the DLPI client requested */
- struct upperstr *ppa; /* control stream for our ppa */
- struct upperstr *next; /* next stream for this ppa */
- uint ioc_id; /* last ioctl ID for this stream */
- enum NPmode npmode; /* what to do with packets on this SAP */
- unsigned char rblocked; /* flow control has blocked upper read strm */
- /* N.B. rblocked is only changed by control stream's put/srv procs */
- /*
- * There is exactly one control stream for each PPA.
- * The following fields are only used for control streams.
- */
- int ppa_id;
- queue_t *lowerq; /* write queue attached below this PPA */
- struct upperstr *nextppa; /* next control stream */
- int mru;
- int mtu;
- struct pppstat stats; /* statistics */
- time_t last_sent; /* time last NP packet sent */
- time_t last_recv; /* time last NP packet rcvd */
-#ifdef SOL2
- kmutex_t stats_lock; /* lock for stats updates */
- kstat_t *kstats; /* stats for netstat */
-#endif /* SOL2 */
-#ifdef LACHTCP
- int ifflags;
- char ifname[IFNAMSIZ];
- struct ifstats ifstats;
-#endif /* LACHTCP */
-} upperstr_t;
-
-/* Values for flags */
-#define US_PRIV 1 /* stream was opened by superuser */
-#define US_CONTROL 2 /* stream is a control stream */
-#define US_BLOCKED 4 /* flow ctrl has blocked lower write stream */
-#define US_LASTMOD 8 /* no PPP modules below us */
-#define US_DBGLOG 0x10 /* log various occurrences */
-#define US_RBLOCKED 0x20 /* flow ctrl has blocked upper read stream */
-
-#if defined(SOL2)
-#if DL_CURRENT_VERSION >= 2
-#define US_PROMISC 0x40 /* stream is promiscuous */
-#endif /* DL_CURRENT_VERSION >= 2 */
-#define US_RAWDATA 0x80 /* raw M_DATA, no DLPI header */
-#endif /* defined(SOL2) */
-
-#ifdef PRIOQ
-static u_char max_band=0;
-static u_char def_band=0;
-
-#define IPPORT_DEFAULT 65535
-
-/*
- * Port priority table
- * Highest priority ports are listed first, lowest are listed last.
- * ICMP & packets using unlisted ports will be treated as "default".
- * If IPPORT_DEFAULT is not listed here, "default" packets will be
- * assigned lowest priority.
- * Each line should be terminated with "0".
- * Line containing only "0" marks the end of the list.
- */
-
-static u_short prioq_table[]= {
- 113, 53, 0,
- 22, 23, 513, 517, 518, 0,
- 514, 21, 79, 111, 0,
- 25, 109, 110, 0,
- IPPORT_DEFAULT, 0,
- 20, 70, 80, 8001, 8008, 8080, 0, /* 8001,8008,8080 - common proxy ports */
-0 };
-
-#endif /* PRIOQ */
-
-
-static upperstr_t *minor_devs = NULL;
-static upperstr_t *ppas = NULL;
-
-#ifdef SVR4
-static int pppopen __P((queue_t *, dev_t *, int, int, cred_t *));
-static int pppclose __P((queue_t *, int, cred_t *));
-#else
-static int pppopen __P((queue_t *, int, int, int));
-static int pppclose __P((queue_t *, int));
-#endif /* SVR4 */
-static int pppurput __P((queue_t *, mblk_t *));
-static int pppuwput __P((queue_t *, mblk_t *));
-static int pppursrv __P((queue_t *));
-static int pppuwsrv __P((queue_t *));
-static int ppplrput __P((queue_t *, mblk_t *));
-static int ppplwput __P((queue_t *, mblk_t *));
-static int ppplrsrv __P((queue_t *));
-static int ppplwsrv __P((queue_t *));
-#ifndef NO_DLPI
-static void dlpi_request __P((queue_t *, mblk_t *, upperstr_t *));
-static void dlpi_error __P((queue_t *, upperstr_t *, int, int, int));
-static void dlpi_ok __P((queue_t *, int));
-#endif
-static int send_data __P((mblk_t *, upperstr_t *));
-static void new_ppa __P((queue_t *, mblk_t *));
-static void attach_ppa __P((queue_t *, mblk_t *));
-static void detach_ppa __P((queue_t *, mblk_t *));
-static void detach_lower __P((queue_t *, mblk_t *));
-static void debug_dump __P((queue_t *, mblk_t *));
-static upperstr_t *find_dest __P((upperstr_t *, int));
-#if defined(SOL2)
-static upperstr_t *find_promisc __P((upperstr_t *, int));
-static mblk_t *prepend_ether __P((upperstr_t *, mblk_t *, int));
-static mblk_t *prepend_udind __P((upperstr_t *, mblk_t *, int));
-static void promisc_sendup __P((upperstr_t *, mblk_t *, int, int));
-#endif /* defined(SOL2) */
-static int putctl2 __P((queue_t *, int, int, int));
-static int putctl4 __P((queue_t *, int, int, int));
-static int pass_packet __P((upperstr_t *ppa, mblk_t *mp, int outbound));
-#ifdef FILTER_PACKETS
-static int ip_hard_filter __P((upperstr_t *ppa, mblk_t *mp, int outbound));
-#endif /* FILTER_PACKETS */
-
-#define PPP_ID 0xb1a6
-static struct module_info ppp_info = {
-#ifdef PRIOQ
- PPP_ID, "ppp", 0, 512, 512, 384
-#else
- PPP_ID, "ppp", 0, 512, 512, 128
-#endif /* PRIOQ */
-};
-
-static struct qinit pppurint = {
- pppurput, pppursrv, pppopen, pppclose, NULL, &ppp_info, NULL
-};
-
-static struct qinit pppuwint = {
- pppuwput, pppuwsrv, NULL, NULL, NULL, &ppp_info, NULL
-};
-
-static struct qinit ppplrint = {
- ppplrput, ppplrsrv, NULL, NULL, NULL, &ppp_info, NULL
-};
-
-static struct qinit ppplwint = {
- ppplwput, ppplwsrv, NULL, NULL, NULL, &ppp_info, NULL
-};
-
-#ifdef LACHTCP
-extern struct ifstats *ifstats;
-int pppdevflag = 0;
-#endif
-
-struct streamtab pppinfo = {
- &pppurint, &pppuwint,
- &ppplrint, &ppplwint
-};
-
-int ppp_count;
-
-/*
- * How we maintain statistics.
- */
-#ifdef SOL2
-#define INCR_IPACKETS(ppa) \
- if (ppa->kstats != 0) { \
- KSTAT_NAMED_PTR(ppa->kstats)[0].value.ul++; \
- }
-#define INCR_IERRORS(ppa) \
- if (ppa->kstats != 0) { \
- KSTAT_NAMED_PTR(ppa->kstats)[1].value.ul++; \
- }
-#define INCR_OPACKETS(ppa) \
- if (ppa->kstats != 0) { \
- KSTAT_NAMED_PTR(ppa->kstats)[2].value.ul++; \
- }
-#define INCR_OERRORS(ppa) \
- if (ppa->kstats != 0) { \
- KSTAT_NAMED_PTR(ppa->kstats)[3].value.ul++; \
- }
-#endif
-
-#ifdef LACHTCP
-#define INCR_IPACKETS(ppa) ppa->ifstats.ifs_ipackets++;
-#define INCR_IERRORS(ppa) ppa->ifstats.ifs_ierrors++;
-#define INCR_OPACKETS(ppa) ppa->ifstats.ifs_opackets++;
-#define INCR_OERRORS(ppa) ppa->ifstats.ifs_oerrors++;
-#endif
-
-/*
- * STREAMS driver entry points.
- */
-static int
-#ifdef SVR4
-pppopen(q, devp, oflag, sflag, credp)
- queue_t *q;
- dev_t *devp;
- int oflag, sflag;
- cred_t *credp;
-#else
-pppopen(q, dev, oflag, sflag)
- queue_t *q;
- int dev; /* really dev_t */
- int oflag, sflag;
-#endif
-{
- upperstr_t *up;
- upperstr_t **prevp;
- minor_t mn;
-#ifdef PRIOQ
- u_short *ptr;
- u_char new_band;
-#endif /* PRIOQ */
-
- if (q->q_ptr)
- DRV_OPEN_OK(dev); /* device is already open */
-
-#ifdef PRIOQ
- /* Calculate max_bband & def_band from definitions in prioq.h
- This colud be done at some more approtiate time (less often)
- but this way it works well so I'll just leave it here */
-
- max_band = 1;
- def_band = 0;
- ptr = prioq_table;
- while (*ptr) {
- new_band = 1;
- while (*ptr)
- if (*ptr++ == IPPORT_DEFAULT) {
- new_band = 0;
- def_band = max_band;
- }
- max_band += new_band;
- ptr++;
- }
- if (def_band)
- def_band = max_band - def_band;
- --max_band;
-#endif /* PRIOQ */
-
- if (sflag == CLONEOPEN) {
- mn = 0;
- for (prevp = &minor_devs; (up = *prevp) != 0; prevp = &up->nextmn) {
- if (up->mn != mn)
- break;
- ++mn;
- }
- } else {
-#ifdef SVR4
- mn = getminor(*devp);
-#else
- mn = minor(dev);
-#endif
- for (prevp = &minor_devs; (up = *prevp) != 0; prevp = &up->nextmn) {
- if (up->mn >= mn)
- break;
- }
- if (up->mn == mn) {
- /* this can't happen */
- q->q_ptr = WR(q)->q_ptr = (caddr_t) up;
- DRV_OPEN_OK(dev);
- }
- }
-
- /*
- * Construct a new minor node.
- */
- up = (upperstr_t *) ALLOC_SLEEP(sizeof(upperstr_t));
- bzero((caddr_t) up, sizeof(upperstr_t));
- if (up == 0) {
- DPRINT("pppopen: out of kernel memory\n");
- OPEN_ERROR(ENXIO);
- }
- up->nextmn = *prevp;
- *prevp = up;
- up->mn = mn;
-#ifdef SVR4
- *devp = makedevice(getmajor(*devp), mn);
-#endif
- up->q = q;
- if (NOTSUSER() == 0)
- up->flags |= US_PRIV;
-#ifndef NO_DLPI
- up->state = DL_UNATTACHED;
-#endif
-#ifdef LACHTCP
- up->ifflags = IFF_UP | IFF_POINTOPOINT;
-#endif
- up->sap = -1;
- up->last_sent = up->last_recv = time;
- up->npmode = NPMODE_DROP;
- q->q_ptr = (caddr_t) up;
- WR(q)->q_ptr = (caddr_t) up;
- noenable(WR(q));
-#ifdef SOL2
- mutex_init(&up->stats_lock, NULL, MUTEX_DRIVER, NULL);
-#endif
- ++ppp_count;
-
- qprocson(q);
- DRV_OPEN_OK(makedev(major(dev), mn));
-}
-
-static int
-#ifdef SVR4
-pppclose(q, flag, credp)
- queue_t *q;
- int flag;
- cred_t *credp;
-#else
-pppclose(q, flag)
- queue_t *q;
- int flag;
-#endif
-{
- upperstr_t *up, **upp;
- upperstr_t *as, *asnext;
- upperstr_t **prevp;
-
- qprocsoff(q);
-
- up = (upperstr_t *) q->q_ptr;
- if (up == 0) {
- DPRINT("pppclose: q_ptr = 0\n");
- return 0;
- }
- if (up->flags & US_DBGLOG)
- DPRINT2("ppp/%d: close, flags=%x\n", up->mn, up->flags);
- if (up->flags & US_CONTROL) {
-#ifdef LACHTCP
- struct ifstats *ifp, *pifp;
-#endif
- if (up->lowerq != 0) {
- /* Gack! the lower stream should have be unlinked earlier! */
- DPRINT1("ppp%d: lower stream still connected on close?\n",
- up->mn);
- LOCK_LOWER_W;
- up->lowerq->q_ptr = 0;
- RD(up->lowerq)->q_ptr = 0;
- up->lowerq = 0;
- UNLOCK_LOWER;
- }
-
- /*
- * This stream represents a PPA:
- * For all streams attached to the PPA, clear their
- * references to this PPA.
- * Then remove this PPA from the list of PPAs.
- */
- for (as = up->next; as != 0; as = asnext) {
- asnext = as->next;
- as->next = 0;
- as->ppa = 0;
- if (as->flags & US_BLOCKED) {
- as->flags &= ~US_BLOCKED;
- flushq(WR(as->q), FLUSHDATA);
- }
- }
- for (upp = &ppas; *upp != 0; upp = &(*upp)->nextppa)
- if (*upp == up) {
- *upp = up->nextppa;
- break;
- }
-#ifdef LACHTCP
- /* Remove the statistics from the active list. */
- for (ifp = ifstats, pifp = 0; ifp; ifp = ifp->ifs_next) {
- if (ifp == &up->ifstats) {
- if (pifp)
- pifp->ifs_next = ifp->ifs_next;
- else
- ifstats = ifp->ifs_next;
- break;
- }
- pifp = ifp;
- }
-#endif
- } else {
- /*
- * If this stream is attached to a PPA,
- * remove it from the PPA's list.
- */
- if ((as = up->ppa) != 0) {
- for (; as->next != 0; as = as->next)
- if (as->next == up) {
- as->next = up->next;
- break;
- }
- }
- }
-
-#ifdef SOL2
- if (up->kstats)
- kstat_delete(up->kstats);
- mutex_destroy(&up->stats_lock);
-#endif
-
- q->q_ptr = NULL;
- WR(q)->q_ptr = NULL;
-
- for (prevp = &minor_devs; *prevp != 0; prevp = &(*prevp)->nextmn) {
- if (*prevp == up) {
- *prevp = up->nextmn;
- break;
- }
- }
- FREE(up, sizeof(upperstr_t));
- --ppp_count;
-
- return 0;
-}
-
-/*
- * A message from on high. We do one of three things:
- * - qreply()
- * - put the message on the lower write stream
- * - queue it for our service routine
- */
-static int
-pppuwput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us, *ppa, *nps;
- struct iocblk *iop;
- struct linkblk *lb;
-#ifdef LACHTCP
- struct ifreq *ifr;
- int i;
-#endif
- queue_t *lq;
- int error, n, sap;
- mblk_t *mq;
- struct ppp_idle *pip;
-#ifdef PRIOQ
- queue_t *tlq;
-#endif /* PRIOQ */
-#ifdef NO_DLPI
- upperstr_t *os;
-#endif
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("pppuwput: q_ptr = 0!\n");
- return 0;
- }
- if (mp == 0) {
- DPRINT1("pppuwput/%d: mp = 0!\n", us->mn);
- return 0;
- }
- if (mp->b_datap == 0) {
- DPRINT1("pppuwput/%d: mp->b_datap = 0!\n", us->mn);
- return 0;
- }
- switch (mp->b_datap->db_type) {
-#ifndef NO_DLPI
- case M_PCPROTO:
- case M_PROTO:
- dlpi_request(q, mp, us);
- break;
-#endif /* NO_DLPI */
-
- case M_DATA:
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: uwput M_DATA len=%d flags=%x\n",
- us->mn, msgdsize(mp), us->flags);
- if (us->ppa == 0 || msgdsize(mp) > us->ppa->mtu + PPP_HDRLEN
-#ifndef NO_DLPI
- || (us->flags & US_CONTROL) == 0
-#endif /* NO_DLPI */
- ) {
- DPRINT1("pppuwput: junk data len=%d\n", msgdsize(mp));
- freemsg(mp);
- break;
- }
-#ifdef NO_DLPI
- if ((us->flags & US_CONTROL) == 0 && !pass_packet(us, mp, 1))
- break;
-#endif
- if (!send_data(mp, us))
- putq(q, mp);
- break;
-
- case M_IOCTL:
- iop = (struct iocblk *) mp->b_rptr;
- error = EINVAL;
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: ioctl %x count=%d\n",
- us->mn, iop->ioc_cmd, iop->ioc_count);
- switch (iop->ioc_cmd) {
-#if defined(SOL2)
- case DLIOCRAW: /* raw M_DATA mode */
- us->flags |= US_RAWDATA;
- error = 0;
- break;
-#endif /* defined(SOL2) */
- case I_LINK:
- if ((us->flags & US_CONTROL) == 0 || us->lowerq != 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl I_LINK b_cont = 0!\n", us->mn);
- break;
- }
- lb = (struct linkblk *) mp->b_cont->b_rptr;
- lq = lb->l_qbot;
- if (lq == 0) {
- DPRINT1("pppuwput/%d: ioctl I_LINK l_qbot = 0!\n", us->mn);
- break;
- }
- LOCK_LOWER_W;
- us->lowerq = lq;
- lq->q_ptr = (caddr_t) q;
- RD(lq)->q_ptr = (caddr_t) us->q;
- UNLOCK_LOWER;
- iop->ioc_count = 0;
- error = 0;
- us->flags &= ~US_LASTMOD;
- /* Unblock upper streams which now feed this lower stream. */
- qenable(q);
- /* Send useful information down to the modules which
- are now linked below us. */
- putctl2(lq, M_CTL, PPPCTL_UNIT, us->ppa_id);
- putctl4(lq, M_CTL, PPPCTL_MRU, us->mru);
- putctl4(lq, M_CTL, PPPCTL_MTU, us->mtu);
-#ifdef PRIOQ
- /* Lower tty driver's queue hiwat/lowat from default 4096/128
- to 256/128 since we don't want queueing of data on
- output to physical device */
-
- freezestr(lq);
- for (tlq = lq; tlq->q_next != NULL; tlq = tlq->q_next)
- ;
- strqset(tlq, QHIWAT, 0, 256);
- strqset(tlq, QLOWAT, 0, 128);
- unfreezestr(lq);
-#endif /* PRIOQ */
- break;
-
- case I_UNLINK:
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl I_UNLINK b_cont = 0!\n", us->mn);
- break;
- }
- lb = (struct linkblk *) mp->b_cont->b_rptr;
-#if DEBUG
- if (us->lowerq != lb->l_qbot) {
- DPRINT2("ppp unlink: lowerq=%x qbot=%x\n",
- us->lowerq, lb->l_qbot);
- break;
- }
-#endif
- iop->ioc_count = 0;
- qwriter(q, mp, detach_lower, PERIM_OUTER);
- error = -1;
- break;
-
- case PPPIO_NEWPPA:
- if (us->flags & US_CONTROL)
- break;
- if ((us->flags & US_PRIV) == 0) {
- error = EPERM;
- break;
- }
- /* Arrange to return an int */
- if ((mq = mp->b_cont) == 0
- || mq->b_datap->db_lim - mq->b_rptr < sizeof(int)) {
- mq = allocb(sizeof(int), BPRI_HI);
- if (mq == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = mq;
- mq->b_cont = 0;
- }
- iop->ioc_count = sizeof(int);
- mq->b_wptr = mq->b_rptr + sizeof(int);
- qwriter(q, mp, new_ppa, PERIM_OUTER);
- error = -1;
- break;
-
- case PPPIO_ATTACH:
- /* like dlpi_attach, for programs which can't write to
- the stream (like pppstats) */
- if (iop->ioc_count != sizeof(int) || us->ppa != 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_ATTACH b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- for (ppa = ppas; ppa != 0; ppa = ppa->nextppa)
- if (ppa->ppa_id == n)
- break;
- if (ppa == 0)
- break;
- us->ppa = ppa;
- iop->ioc_count = 0;
- qwriter(q, mp, attach_ppa, PERIM_OUTER);
- error = -1;
- break;
-
-#ifdef NO_DLPI
- case PPPIO_BIND:
- /* Attach to a given SAP. */
- if (iop->ioc_count != sizeof(int) || us->ppa == 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_BIND b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- /* n must be a valid PPP network protocol number. */
- if (n < 0x21 || n > 0x3fff || (n & 0x101) != 1)
- break;
- /* check that no other stream is bound to this sap already. */
- for (os = us->ppa; os != 0; os = os->next)
- if (os->sap == n)
- break;
- if (os != 0)
- break;
- us->sap = n;
- iop->ioc_count = 0;
- error = 0;
- break;
-#endif /* NO_DLPI */
-
- case PPPIO_MRU:
- if (iop->ioc_count != sizeof(int) || (us->flags & US_CONTROL) == 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_MRU b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- if (n <= 0 || n > PPP_MAXMRU)
- break;
- if (n < PPP_MRU)
- n = PPP_MRU;
- us->mru = n;
- if (us->lowerq)
- putctl4(us->lowerq, M_CTL, PPPCTL_MRU, n);
- error = 0;
- iop->ioc_count = 0;
- break;
-
- case PPPIO_MTU:
- if (iop->ioc_count != sizeof(int) || (us->flags & US_CONTROL) == 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_MTU b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- if (n <= 0 || n > PPP_MAXMTU)
- break;
- us->mtu = n;
-#ifdef LACHTCP
- /* The MTU reported in netstat, not used as IP max packet size! */
- us->ifstats.ifs_mtu = n;
-#endif
- if (us->lowerq)
- putctl4(us->lowerq, M_CTL, PPPCTL_MTU, n);
- error = 0;
- iop->ioc_count = 0;
- break;
-
- case PPPIO_LASTMOD:
- us->flags |= US_LASTMOD;
- error = 0;
- break;
-
- case PPPIO_DEBUG:
- if (iop->ioc_count != sizeof(int))
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_DEBUG b_cont = 0!\n", us->mn);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- if (n == PPPDBG_DUMP + PPPDBG_DRIVER) {
- qwriter(q, NULL, debug_dump, PERIM_OUTER);
- iop->ioc_count = 0;
- error = -1;
- } else if (n == PPPDBG_LOG + PPPDBG_DRIVER) {
- DPRINT1("ppp/%d: debug log enabled\n", us->mn);
- us->flags |= US_DBGLOG;
- iop->ioc_count = 0;
- error = 0;
- } else {
- if (us->ppa == 0 || us->ppa->lowerq == 0)
- break;
- putnext(us->ppa->lowerq, mp);
- error = -1;
- }
- break;
-
- case PPPIO_NPMODE:
- if (iop->ioc_count != 2 * sizeof(int))
- break;
- if ((us->flags & US_CONTROL) == 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("pppuwput/%d: ioctl PPPIO_NPMODE b_cont = 0!\n", us->mn);
- break;
- }
- sap = ((int *)mp->b_cont->b_rptr)[0];
- for (nps = us->next; nps != 0; nps = nps->next) {
- if (us->flags & US_DBGLOG)
- DPRINT2("us = 0x%x, us->next->sap = 0x%x\n", nps, nps->sap);
- if (nps->sap == sap)
- break;
- }
- if (nps == 0) {
- if (us->flags & US_DBGLOG)
- DPRINT2("ppp/%d: no stream for sap %x\n", us->mn, sap);
- break;
- }
- /* XXX possibly should use qwriter here */
- nps->npmode = (enum NPmode) ((int *)mp->b_cont->b_rptr)[1];
- if (nps->npmode != NPMODE_QUEUE && (nps->flags & US_BLOCKED) != 0)
- qenable(WR(nps->q));
- iop->ioc_count = 0;
- error = 0;
- break;
-
- case PPPIO_GIDLE:
- if ((ppa = us->ppa) == 0)
- break;
- mq = allocb(sizeof(struct ppp_idle), BPRI_HI);
- if (mq == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = mq;
- mq->b_cont = 0;
- pip = (struct ppp_idle *) mq->b_wptr;
- pip->xmit_idle = time - ppa->last_sent;
- pip->recv_idle = time - ppa->last_recv;
- mq->b_wptr += sizeof(struct ppp_idle);
- iop->ioc_count = sizeof(struct ppp_idle);
- error = 0;
- break;
-
-#ifdef LACHTCP
- case SIOCSIFNAME:
- /* Sent from IP down to us. Attach the ifstats structure. */
- if (iop->ioc_count != sizeof(struct ifreq) || us->ppa == 0)
- break;
- ifr = (struct ifreq *)mp->b_cont->b_rptr;
- /* Find the unit number in the interface name. */
- for (i = 0; i < IFNAMSIZ; i++) {
- if (ifr->ifr_name[i] == 0 ||
- (ifr->ifr_name[i] >= '0' &&
- ifr->ifr_name[i] <= '9'))
- break;
- else
- us->ifname[i] = ifr->ifr_name[i];
- }
- us->ifname[i] = 0;
-
- /* Convert the unit number to binary. */
- for (n = 0; i < IFNAMSIZ; i++) {
- if (ifr->ifr_name[i] == 0) {
- break;
- }
- else {
- n = n * 10 + ifr->ifr_name[i] - '0';
- }
- }
-
- /* Verify the ppa. */
- if (us->ppa->ppa_id != n)
- break;
- ppa = us->ppa;
-
- /* Set up the netstat block. */
- strncpy (ppa->ifname, us->ifname, IFNAMSIZ);
-
- ppa->ifstats.ifs_name = ppa->ifname;
- ppa->ifstats.ifs_unit = n;
- ppa->ifstats.ifs_active = us->state != DL_UNBOUND;
- ppa->ifstats.ifs_mtu = ppa->mtu;
-
- /* Link in statistics used by netstat. */
- ppa->ifstats.ifs_next = ifstats;
- ifstats = &ppa->ifstats;
-
- iop->ioc_count = 0;
- error = 0;
- break;
-
- case SIOCGIFFLAGS:
- if (!(us->flags & US_CONTROL)) {
- if (us->ppa)
- us = us->ppa;
- else
- break;
- }
- ((struct iocblk_in *)iop)->ioc_ifflags = us->ifflags;
- error = 0;
- break;
-
- case SIOCSIFFLAGS:
- if (!(us->flags & US_CONTROL)) {
- if (us->ppa)
- us = us->ppa;
- else
- break;
- }
- us->ifflags = ((struct iocblk_in *)iop)->ioc_ifflags;
- error = 0;
- break;
-
- case SIOCSIFADDR:
- if (!(us->flags & US_CONTROL)) {
- if (us->ppa)
- us = us->ppa;
- else
- break;
- }
- us->ifflags |= IFF_RUNNING;
- ((struct iocblk_in *)iop)->ioc_ifflags |= IFF_RUNNING;
- error = 0;
- break;
-
- case SIOCSIFMTU:
- /*
- * Vanilla SVR4 systems don't handle SIOCSIFMTU, rather
- * they take the MTU from the DL_INFO_ACK we sent in response
- * to their DL_INFO_REQ. Fortunately, they will update the
- * MTU if we send an unsolicited DL_INFO_ACK up.
- */
- if ((mq = allocb(sizeof(dl_info_req_t), BPRI_HI)) == 0)
- break; /* should do bufcall */
- ((union DL_primitives *)mq->b_rptr)->dl_primitive = DL_INFO_REQ;
- mq->b_wptr = mq->b_rptr + sizeof(dl_info_req_t);
- dlpi_request(q, mq, us);
- error = 0;
- break;
-
- case SIOCGIFNETMASK:
- case SIOCSIFNETMASK:
- case SIOCGIFADDR:
- case SIOCGIFDSTADDR:
- case SIOCSIFDSTADDR:
- case SIOCGIFMETRIC:
- error = 0;
- break;
-#endif /* LACHTCP */
-
- default:
- if (us->ppa == 0 || us->ppa->lowerq == 0)
- break;
- us->ioc_id = iop->ioc_id;
- error = -1;
- switch (iop->ioc_cmd) {
- case PPPIO_GETSTAT:
- case PPPIO_GETCSTAT:
- if (us->flags & US_LASTMOD) {
- error = EINVAL;
- break;
- }
- putnext(us->ppa->lowerq, mp);
- break;
- default:
- if (us->flags & US_PRIV)
- putnext(us->ppa->lowerq, mp);
- else {
- DPRINT1("ppp ioctl %x rejected\n", iop->ioc_cmd);
- error = EPERM;
- }
- break;
- }
- break;
- }
-
- if (error > 0) {
- iop->ioc_error = error;
- mp->b_datap->db_type = M_IOCNAK;
- qreply(q, mp);
- } else if (error == 0) {
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
- }
- break;
-
- case M_FLUSH:
- if (us->flags & US_DBGLOG)
- DPRINT2("ppp/%d: flush %x\n", us->mn, *mp->b_rptr);
- if (*mp->b_rptr & FLUSHW)
- flushq(q, FLUSHDATA);
- if (*mp->b_rptr & FLUSHR) {
- *mp->b_rptr &= ~FLUSHW;
- qreply(q, mp);
- } else
- freemsg(mp);
- break;
-
- default:
- freemsg(mp);
- break;
- }
- return 0;
-}
-
-#ifndef NO_DLPI
-static void
-dlpi_request(q, mp, us)
- queue_t *q;
- mblk_t *mp;
- upperstr_t *us;
-{
- union DL_primitives *d = (union DL_primitives *) mp->b_rptr;
- int size = mp->b_wptr - mp->b_rptr;
- mblk_t *reply, *np;
- upperstr_t *ppa, *os;
- int sap, len;
- dl_info_ack_t *info;
- dl_bind_ack_t *ackp;
-#if DL_CURRENT_VERSION >= 2
- dl_phys_addr_ack_t *paddrack;
- static struct ether_addr eaddr = {0};
-#endif
-
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: dlpi prim %x len=%d\n", us->mn,
- d->dl_primitive, size);
- switch (d->dl_primitive) {
- case DL_INFO_REQ:
- if (size < sizeof(dl_info_req_t))
- goto badprim;
- if ((reply = allocb(sizeof(dl_info_ack_t), BPRI_HI)) == 0)
- break; /* should do bufcall */
- reply->b_datap->db_type = M_PCPROTO;
- info = (dl_info_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_info_ack_t);
- bzero((caddr_t) info, sizeof(dl_info_ack_t));
- info->dl_primitive = DL_INFO_ACK;
- info->dl_max_sdu = us->ppa? us->ppa->mtu: PPP_MAXMTU;
- info->dl_min_sdu = 1;
- info->dl_addr_length = sizeof(uint);
- info->dl_mac_type = DL_ETHER; /* a bigger lie */
- info->dl_current_state = us->state;
- info->dl_service_mode = DL_CLDLS;
- info->dl_provider_style = DL_STYLE2;
-#if DL_CURRENT_VERSION >= 2
- info->dl_sap_length = sizeof(uint);
- info->dl_version = DL_CURRENT_VERSION;
-#endif
- qreply(q, reply);
- break;
-
- case DL_ATTACH_REQ:
- if (size < sizeof(dl_attach_req_t))
- goto badprim;
- if (us->state != DL_UNATTACHED || us->ppa != 0) {
- dlpi_error(q, us, DL_ATTACH_REQ, DL_OUTSTATE, 0);
- break;
- }
- for (ppa = ppas; ppa != 0; ppa = ppa->nextppa)
- if (ppa->ppa_id == d->attach_req.dl_ppa)
- break;
- if (ppa == 0) {
- dlpi_error(q, us, DL_ATTACH_REQ, DL_BADPPA, 0);
- break;
- }
- us->ppa = ppa;
- qwriter(q, mp, attach_ppa, PERIM_OUTER);
- return;
-
- case DL_DETACH_REQ:
- if (size < sizeof(dl_detach_req_t))
- goto badprim;
- if (us->state != DL_UNBOUND || us->ppa == 0) {
- dlpi_error(q, us, DL_DETACH_REQ, DL_OUTSTATE, 0);
- break;
- }
- qwriter(q, mp, detach_ppa, PERIM_OUTER);
- return;
-
- case DL_BIND_REQ:
- if (size < sizeof(dl_bind_req_t))
- goto badprim;
- if (us->state != DL_UNBOUND || us->ppa == 0) {
- dlpi_error(q, us, DL_BIND_REQ, DL_OUTSTATE, 0);
- break;
- }
-#if 0
- /* apparently this test fails (unnecessarily?) on some systems */
- if (d->bind_req.dl_service_mode != DL_CLDLS) {
- dlpi_error(q, us, DL_BIND_REQ, DL_UNSUPPORTED, 0);
- break;
- }
-#endif
-
- /* saps must be valid PPP network protocol numbers,
- except that we accept ETHERTYPE_IP in place of PPP_IP. */
- sap = d->bind_req.dl_sap;
- us->req_sap = sap;
-
-#if defined(SOL2)
- if (us->flags & US_DBGLOG)
- DPRINT2("DL_BIND_REQ: ip gives sap = 0x%x, us = 0x%x", sap, us);
-
- if (sap == ETHERTYPE_IP) /* normal IFF_IPV4 */
- sap = PPP_IP;
- else if (sap == ETHERTYPE_IPV6) /* when IFF_IPV6 is set */
- sap = PPP_IPV6;
- else if (sap == ETHERTYPE_ALLSAP) /* snoop gives sap of 0 */
- sap = PPP_ALLSAP;
- else {
- DPRINT2("DL_BIND_REQ: unrecognized sap = 0x%x, us = 0x%x", sap, us);
- dlpi_error(q, us, DL_BIND_REQ, DL_BADADDR, 0);
- break;
- }
-#else
- if (sap == ETHERTYPE_IP)
- sap = PPP_IP;
- if (sap < 0x21 || sap > 0x3fff || (sap & 0x101) != 1) {
- dlpi_error(q, us, DL_BIND_REQ, DL_BADADDR, 0);
- break;
- }
-#endif /* defined(SOL2) */
-
- /* check that no other stream is bound to this sap already. */
- for (os = us->ppa; os != 0; os = os->next)
- if (os->sap == sap)
- break;
- if (os != 0) {
- dlpi_error(q, us, DL_BIND_REQ, DL_NOADDR, 0);
- break;
- }
-
- us->sap = sap;
- us->state = DL_IDLE;
-
- if ((reply = allocb(sizeof(dl_bind_ack_t) + sizeof(uint),
- BPRI_HI)) == 0)
- break; /* should do bufcall */
- ackp = (dl_bind_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_bind_ack_t) + sizeof(uint);
- reply->b_datap->db_type = M_PCPROTO;
- bzero((caddr_t) ackp, sizeof(dl_bind_ack_t));
- ackp->dl_primitive = DL_BIND_ACK;
- ackp->dl_sap = sap;
- ackp->dl_addr_length = sizeof(uint);
- ackp->dl_addr_offset = sizeof(dl_bind_ack_t);
- *(uint *)(ackp+1) = sap;
- qreply(q, reply);
- break;
-
- case DL_UNBIND_REQ:
- if (size < sizeof(dl_unbind_req_t))
- goto badprim;
- if (us->state != DL_IDLE) {
- dlpi_error(q, us, DL_UNBIND_REQ, DL_OUTSTATE, 0);
- break;
- }
- us->sap = -1;
- us->state = DL_UNBOUND;
-#ifdef LACHTCP
- us->ppa->ifstats.ifs_active = 0;
-#endif
- dlpi_ok(q, DL_UNBIND_REQ);
- break;
-
- case DL_UNITDATA_REQ:
- if (size < sizeof(dl_unitdata_req_t))
- goto badprim;
- if (us->state != DL_IDLE) {
- dlpi_error(q, us, DL_UNITDATA_REQ, DL_OUTSTATE, 0);
- break;
- }
- if ((ppa = us->ppa) == 0) {
- cmn_err(CE_CONT, "ppp: in state dl_idle but ppa == 0?\n");
- break;
- }
- len = mp->b_cont == 0? 0: msgdsize(mp->b_cont);
- if (len > ppa->mtu) {
- DPRINT2("dlpi data too large (%d > %d)\n", len, ppa->mtu);
- break;
- }
-
-#if defined(SOL2)
- /*
- * Should there be any promiscuous stream(s), send the data
- * up for each promiscuous stream that we recognize.
- */
- if (mp->b_cont)
- promisc_sendup(ppa, mp->b_cont, us->sap, 0);
-#endif /* defined(SOL2) */
-
- mp->b_band = 0;
-#ifdef PRIOQ
- /* Extract s_port & d_port from IP-packet, the code is a bit
- dirty here, but so am I, too... */
- if (mp->b_datap->db_type == M_PROTO && us->sap == PPP_IP
- && mp->b_cont != 0) {
- u_char *bb, *tlh;
- int iphlen, len;
- u_short *ptr;
- u_char band_unset, cur_band, syn;
- u_short s_port, d_port;
-
- bb = mp->b_cont->b_rptr; /* bb points to IP-header*/
- len = mp->b_cont->b_wptr - mp->b_cont->b_rptr;
- syn = 0;
- s_port = IPPORT_DEFAULT;
- d_port = IPPORT_DEFAULT;
- if (len >= 20) { /* 20 = minimum length of IP header */
- iphlen = (bb[0] & 0x0f) * 4;
- tlh = bb + iphlen;
- len -= iphlen;
- switch (bb[9]) {
- case IPPROTO_TCP:
- if (len >= 20) { /* min length of TCP header */
- s_port = (tlh[0] << 8) + tlh[1];
- d_port = (tlh[2] << 8) + tlh[3];
- syn = tlh[13] & 0x02;
- }
- break;
- case IPPROTO_UDP:
- if (len >= 8) { /* min length of UDP header */
- s_port = (tlh[0] << 8) + tlh[1];
- d_port = (tlh[2] << 8) + tlh[3];
- }
- break;
- }
- }
-
- /*
- * Now calculate b_band for this packet from the
- * port-priority table.
- */
- ptr = prioq_table;
- cur_band = max_band;
- band_unset = 1;
- while (*ptr) {
- while (*ptr && band_unset)
- if (s_port == *ptr || d_port == *ptr++) {
- mp->b_band = cur_band;
- band_unset = 0;
- break;
- }
- ptr++;
- cur_band--;
- }
- if (band_unset)
- mp->b_band = def_band;
- /* It may be usable to urge SYN packets a bit */
- if (syn)
- mp->b_band++;
- }
-#endif /* PRIOQ */
- /* this assumes PPP_HDRLEN <= sizeof(dl_unitdata_req_t) */
- if (mp->b_datap->db_ref > 1) {
- np = allocb(PPP_HDRLEN, BPRI_HI);
- if (np == 0)
- break; /* gak! */
- np->b_cont = mp->b_cont;
- mp->b_cont = 0;
- freeb(mp);
- mp = np;
- } else
- mp->b_datap->db_type = M_DATA;
- /* XXX should use dl_dest_addr_offset/length here,
- but we would have to translate ETHERTYPE_IP -> PPP_IP */
- mp->b_wptr = mp->b_rptr + PPP_HDRLEN;
- mp->b_rptr[0] = PPP_ALLSTATIONS;
- mp->b_rptr[1] = PPP_UI;
- mp->b_rptr[2] = us->sap >> 8;
- mp->b_rptr[3] = us->sap;
- if (pass_packet(us, mp, 1)) {
- if (!send_data(mp, us))
- putq(q, mp);
- }
- return;
-
-#if DL_CURRENT_VERSION >= 2
- case DL_PHYS_ADDR_REQ:
- if (size < sizeof(dl_phys_addr_req_t))
- goto badprim;
-
- /*
- * Don't check state because ifconfig sends this one down too
- */
-
- if ((reply = allocb(sizeof(dl_phys_addr_ack_t)+ETHERADDRL,
- BPRI_HI)) == 0)
- break; /* should do bufcall */
- reply->b_datap->db_type = M_PCPROTO;
- paddrack = (dl_phys_addr_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_phys_addr_ack_t);
- bzero((caddr_t) paddrack, sizeof(dl_phys_addr_ack_t)+ETHERADDRL);
- paddrack->dl_primitive = DL_PHYS_ADDR_ACK;
- paddrack->dl_addr_length = ETHERADDRL;
- paddrack->dl_addr_offset = sizeof(dl_phys_addr_ack_t);
- bcopy(&eaddr, reply->b_wptr, ETHERADDRL);
- reply->b_wptr += ETHERADDRL;
- qreply(q, reply);
- break;
-
-#if defined(SOL2)
- case DL_PROMISCON_REQ:
- if (size < sizeof(dl_promiscon_req_t))
- goto badprim;
- us->flags |= US_PROMISC;
- dlpi_ok(q, DL_PROMISCON_REQ);
- break;
-
- case DL_PROMISCOFF_REQ:
- if (size < sizeof(dl_promiscoff_req_t))
- goto badprim;
- us->flags &= ~US_PROMISC;
- dlpi_ok(q, DL_PROMISCOFF_REQ);
- break;
-#else
- case DL_PROMISCON_REQ: /* fall thru */
- case DL_PROMISCOFF_REQ: /* fall thru */
-#endif /* defined(SOL2) */
-#endif /* DL_CURRENT_VERSION >= 2 */
-
-#if DL_CURRENT_VERSION >= 2
- case DL_SET_PHYS_ADDR_REQ:
- case DL_SUBS_BIND_REQ:
- case DL_SUBS_UNBIND_REQ:
- case DL_ENABMULTI_REQ:
- case DL_DISABMULTI_REQ:
- case DL_XID_REQ:
- case DL_TEST_REQ:
- case DL_REPLY_UPDATE_REQ:
- case DL_REPLY_REQ:
- case DL_DATA_ACK_REQ:
-#endif
- case DL_CONNECT_REQ:
- case DL_TOKEN_REQ:
- dlpi_error(q, us, d->dl_primitive, DL_NOTSUPPORTED, 0);
- break;
-
- case DL_CONNECT_RES:
- case DL_DISCONNECT_REQ:
- case DL_RESET_REQ:
- case DL_RESET_RES:
- dlpi_error(q, us, d->dl_primitive, DL_OUTSTATE, 0);
- break;
-
- case DL_UDQOS_REQ:
- dlpi_error(q, us, d->dl_primitive, DL_BADQOSTYPE, 0);
- break;
-
-#if DL_CURRENT_VERSION >= 2
- case DL_TEST_RES:
- case DL_XID_RES:
- break;
-#endif
-
- default:
- cmn_err(CE_CONT, "ppp: unknown dlpi prim 0x%x\n", d->dl_primitive);
- /* fall through */
- badprim:
- dlpi_error(q, us, d->dl_primitive, DL_BADPRIM, 0);
- break;
- }
- freemsg(mp);
-}
-
-static void
-dlpi_error(q, us, prim, err, uerr)
- queue_t *q;
- upperstr_t *us;
- int prim, err, uerr;
-{
- mblk_t *reply;
- dl_error_ack_t *errp;
-
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: dlpi error, prim=%x, err=%x\n", us->mn, prim, err);
- reply = allocb(sizeof(dl_error_ack_t), BPRI_HI);
- if (reply == 0)
- return; /* XXX should do bufcall */
- reply->b_datap->db_type = M_PCPROTO;
- errp = (dl_error_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_error_ack_t);
- errp->dl_primitive = DL_ERROR_ACK;
- errp->dl_error_primitive = prim;
- errp->dl_errno = err;
- errp->dl_unix_errno = uerr;
- qreply(q, reply);
-}
-
-static void
-dlpi_ok(q, prim)
- queue_t *q;
- int prim;
-{
- mblk_t *reply;
- dl_ok_ack_t *okp;
-
- reply = allocb(sizeof(dl_ok_ack_t), BPRI_HI);
- if (reply == 0)
- return; /* XXX should do bufcall */
- reply->b_datap->db_type = M_PCPROTO;
- okp = (dl_ok_ack_t *) reply->b_wptr;
- reply->b_wptr += sizeof(dl_ok_ack_t);
- okp->dl_primitive = DL_OK_ACK;
- okp->dl_correct_primitive = prim;
- qreply(q, reply);
-}
-#endif /* NO_DLPI */
-
-static int
-pass_packet(us, mp, outbound)
- upperstr_t *us;
- mblk_t *mp;
- int outbound;
-{
- int pass;
- upperstr_t *ppa;
-
- if ((ppa = us->ppa) == 0) {
- freemsg(mp);
- return 0;
- }
-
-#ifdef FILTER_PACKETS
- pass = ip_hard_filter(us, mp, outbound);
-#else
- /*
- * Here is where we might, in future, decide whether to pass
- * or drop the packet, and whether it counts as link activity.
- */
- pass = 1;
-#endif /* FILTER_PACKETS */
-
- if (pass < 0) {
- /* pass only if link already up, and don't update time */
- if (ppa->lowerq == 0) {
- freemsg(mp);
- return 0;
- }
- pass = 1;
- } else if (pass) {
- if (outbound)
- ppa->last_sent = time;
- else
- ppa->last_recv = time;
- }
-
- return pass;
-}
-
-/*
- * We have some data to send down to the lower stream (or up the
- * control stream, if we don't have a lower stream attached).
- * Returns 1 if the message was dealt with, 0 if it wasn't able
- * to be sent on and should therefore be queued up.
- */
-static int
-send_data(mp, us)
- mblk_t *mp;
- upperstr_t *us;
-{
- upperstr_t *ppa;
-
- if ((us->flags & US_BLOCKED) || us->npmode == NPMODE_QUEUE)
- return 0;
- ppa = us->ppa;
- if (ppa == 0 || us->npmode == NPMODE_DROP || us->npmode == NPMODE_ERROR) {
- if (us->flags & US_DBGLOG)
- DPRINT2("ppp/%d: dropping pkt (npmode=%d)\n", us->mn, us->npmode);
- freemsg(mp);
- return 1;
- }
- if (ppa->lowerq == 0) {
- /* try to send it up the control stream */
- if (bcanputnext(ppa->q, mp->b_band)) {
- /*
- * The message seems to get corrupted for some reason if
- * we just send the message up as it is, so we send a copy.
- */
- mblk_t *np = copymsg(mp);
- freemsg(mp);
- if (np != 0)
- putnext(ppa->q, np);
- return 1;
- }
- } else {
- if (bcanputnext(ppa->lowerq, mp->b_band)) {
- MT_ENTER(&ppa->stats_lock);
- ppa->stats.ppp_opackets++;
- ppa->stats.ppp_obytes += msgdsize(mp);
-#ifdef INCR_OPACKETS
- INCR_OPACKETS(ppa);
-#endif
- MT_EXIT(&ppa->stats_lock);
- /*
- * The lower queue is only ever detached while holding an
- * exclusive lock on the whole driver. So we can be confident
- * that the lower queue is still there.
- */
- putnext(ppa->lowerq, mp);
- return 1;
- }
- }
- us->flags |= US_BLOCKED;
- return 0;
-}
-
-/*
- * Allocate a new PPA id and link this stream into the list of PPAs.
- * This procedure is called with an exclusive lock on all queues in
- * this driver.
- */
-static void
-new_ppa(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us, *up, **usp;
- int ppa_id;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("new_ppa: q_ptr = 0!\n");
- return;
- }
-
- usp = &ppas;
- ppa_id = 0;
- while ((up = *usp) != 0 && ppa_id == up->ppa_id) {
- ++ppa_id;
- usp = &up->nextppa;
- }
- us->ppa_id = ppa_id;
- us->ppa = us;
- us->next = 0;
- us->nextppa = *usp;
- *usp = us;
- us->flags |= US_CONTROL;
- us->npmode = NPMODE_PASS;
-
- us->mtu = PPP_MTU;
- us->mru = PPP_MRU;
-
-#ifdef SOL2
- /*
- * Create a kstats record for our statistics, so netstat -i works.
- */
- if (us->kstats == 0) {
- char unit[32];
-
- sprintf(unit, "ppp%d", us->ppa->ppa_id);
- us->kstats = kstat_create("ppp", us->ppa->ppa_id, unit,
- "net", KSTAT_TYPE_NAMED, 4, 0);
- if (us->kstats != 0) {
- kstat_named_t *kn = KSTAT_NAMED_PTR(us->kstats);
-
- strcpy(kn[0].name, "ipackets");
- kn[0].data_type = KSTAT_DATA_ULONG;
- strcpy(kn[1].name, "ierrors");
- kn[1].data_type = KSTAT_DATA_ULONG;
- strcpy(kn[2].name, "opackets");
- kn[2].data_type = KSTAT_DATA_ULONG;
- strcpy(kn[3].name, "oerrors");
- kn[3].data_type = KSTAT_DATA_ULONG;
- kstat_install(us->kstats);
- }
- }
-#endif /* SOL2 */
-
- *(int *)mp->b_cont->b_rptr = ppa_id;
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
-}
-
-static void
-attach_ppa(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us, *t;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("attach_ppa: q_ptr = 0!\n");
- return;
- }
-
-#ifndef NO_DLPI
- us->state = DL_UNBOUND;
-#endif
- for (t = us->ppa; t->next != 0; t = t->next)
- ;
- t->next = us;
- us->next = 0;
- if (mp->b_datap->db_type == M_IOCTL) {
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
- } else {
-#ifndef NO_DLPI
- dlpi_ok(q, DL_ATTACH_REQ);
-#endif
- }
-}
-
-static void
-detach_ppa(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us, *t;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("detach_ppa: q_ptr = 0!\n");
- return;
- }
-
- for (t = us->ppa; t->next != 0; t = t->next)
- if (t->next == us) {
- t->next = us->next;
- break;
- }
- us->next = 0;
- us->ppa = 0;
-#ifndef NO_DLPI
- us->state = DL_UNATTACHED;
- dlpi_ok(q, DL_DETACH_REQ);
-#endif
-}
-
-/*
- * We call this with qwriter in order to give the upper queue procedures
- * the guarantee that the lower queue is not going to go away while
- * they are executing.
- */
-static void
-detach_lower(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("detach_lower: q_ptr = 0!\n");
- return;
- }
-
- LOCK_LOWER_W;
- us->lowerq->q_ptr = 0;
- RD(us->lowerq)->q_ptr = 0;
- us->lowerq = 0;
- UNLOCK_LOWER;
-
- /* Unblock streams which now feed back up the control stream. */
- qenable(us->q);
-
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
-}
-
-static int
-pppuwsrv(q)
- queue_t *q;
-{
- upperstr_t *us, *as;
- mblk_t *mp;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("pppuwsrv: q_ptr = 0!\n");
- return 0;
- }
-
- /*
- * If this is a control stream, then this service procedure
- * probably got enabled because of flow control in the lower
- * stream being enabled (or because of the lower stream going
- * away). Therefore we enable the service procedure of all
- * attached upper streams.
- */
- if (us->flags & US_CONTROL) {
- for (as = us->next; as != 0; as = as->next)
- qenable(WR(as->q));
- }
-
- /* Try to send on any data queued here. */
- us->flags &= ~US_BLOCKED;
- while ((mp = getq(q)) != 0) {
- if (!send_data(mp, us)) {
- putbq(q, mp);
- break;
- }
- }
-
- return 0;
-}
-
-/* should never get called... */
-static int
-ppplwput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- putnext(q, mp);
- return 0;
-}
-
-static int
-ppplwsrv(q)
- queue_t *q;
-{
- queue_t *uq;
-
- /*
- * Flow control has back-enabled this stream:
- * enable the upper write service procedure for
- * the upper control stream for this lower stream.
- */
- LOCK_LOWER_R;
- uq = (queue_t *) q->q_ptr;
- if (uq != 0)
- qenable(uq);
- UNLOCK_LOWER;
- return 0;
-}
-
-/*
- * This should only get called for control streams.
- */
-static int
-pppurput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *ppa, *us;
- int proto, len;
- struct iocblk *iop;
-
- ppa = (upperstr_t *) q->q_ptr;
- if (ppa == 0) {
- DPRINT("pppurput: q_ptr = 0!\n");
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
- case M_CTL:
- MT_ENTER(&ppa->stats_lock);
- switch (*mp->b_rptr) {
- case PPPCTL_IERROR:
-#ifdef INCR_IERRORS
- INCR_IERRORS(ppa);
-#endif
- ppa->stats.ppp_ierrors++;
- break;
- case PPPCTL_OERROR:
-#ifdef INCR_OERRORS
- INCR_OERRORS(ppa);
-#endif
- ppa->stats.ppp_oerrors++;
- break;
- }
- MT_EXIT(&ppa->stats_lock);
- freemsg(mp);
- break;
-
- case M_IOCACK:
- case M_IOCNAK:
- /*
- * Attempt to match up the response with the stream
- * that the request came from.
- */
- iop = (struct iocblk *) mp->b_rptr;
- for (us = ppa; us != 0; us = us->next)
- if (us->ioc_id == iop->ioc_id)
- break;
- if (us == 0)
- freemsg(mp);
- else
- putnext(us->q, mp);
- break;
-
- case M_HANGUP:
- /*
- * The serial device has hung up. We don't want to send
- * the M_HANGUP message up to pppd because that will stop
- * us from using the control stream any more. Instead we
- * send a zero-length message as an end-of-file indication.
- */
- freemsg(mp);
- mp = allocb(1, BPRI_HI);
- if (mp == 0) {
- DPRINT1("ppp/%d: couldn't allocate eof message!\n", ppa->mn);
- break;
- }
- putnext(ppa->q, mp);
- break;
-
- default:
- if (mp->b_datap->db_type == M_DATA) {
- len = msgdsize(mp);
- if (mp->b_wptr - mp->b_rptr < PPP_HDRLEN) {
- PULLUP(mp, PPP_HDRLEN);
- if (mp == 0) {
- DPRINT1("ppp_urput: msgpullup failed (len=%d)\n", len);
- break;
- }
- }
- MT_ENTER(&ppa->stats_lock);
- ppa->stats.ppp_ipackets++;
- ppa->stats.ppp_ibytes += len;
-#ifdef INCR_IPACKETS
- INCR_IPACKETS(ppa);
-#endif
- MT_EXIT(&ppa->stats_lock);
-
- proto = PPP_PROTOCOL(mp->b_rptr);
-
-#if defined(SOL2)
- /*
- * Should there be any promiscuous stream(s), send the data
- * up for each promiscuous stream that we recognize.
- */
- promisc_sendup(ppa, mp, proto, 1);
-#endif /* defined(SOL2) */
-
- if (proto < 0x8000 && (us = find_dest(ppa, proto)) != 0) {
- /*
- * A data packet for some network protocol.
- * Queue it on the upper stream for that protocol.
- * XXX could we just putnext it? (would require thought)
- * The rblocked flag is there to ensure that we keep
- * messages in order for each network protocol.
- */
- if (!pass_packet(us, mp, 0))
- break;
- if (!us->rblocked && !canput(us->q))
- us->rblocked = 1;
- if (!us->rblocked)
- putq(us->q, mp);
- else
- putq(q, mp);
- break;
- }
- }
- /*
- * A control frame, a frame for an unknown protocol,
- * or some other message type.
- * Send it up to pppd via the control stream.
- */
- if (queclass(mp) == QPCTL || canputnext(ppa->q))
- putnext(ppa->q, mp);
- else
- putq(q, mp);
- break;
- }
-
- return 0;
-}
-
-static int
-pppursrv(q)
- queue_t *q;
-{
- upperstr_t *us, *as;
- mblk_t *mp, *hdr;
-#ifndef NO_DLPI
- dl_unitdata_ind_t *ud;
-#endif
- int proto;
-
- us = (upperstr_t *) q->q_ptr;
- if (us == 0) {
- DPRINT("pppursrv: q_ptr = 0!\n");
- return 0;
- }
-
- if (us->flags & US_CONTROL) {
- /*
- * A control stream.
- * If there is no lower queue attached, run the write service
- * routines of other upper streams attached to this PPA.
- */
- if (us->lowerq == 0) {
- as = us;
- do {
- if (as->flags & US_BLOCKED)
- qenable(WR(as->q));
- as = as->next;
- } while (as != 0);
- }
-
- /*
- * Messages get queued on this stream's read queue if they
- * can't be queued on the read queue of the attached stream
- * that they are destined for. This is for flow control -
- * when this queue fills up, the lower read put procedure will
- * queue messages there and the flow control will propagate
- * down from there.
- */
- while ((mp = getq(q)) != 0) {
- proto = PPP_PROTOCOL(mp->b_rptr);
- if (proto < 0x8000 && (as = find_dest(us, proto)) != 0) {
- if (!canput(as->q))
- break;
- putq(as->q, mp);
- } else {
- if (!canputnext(q))
- break;
- putnext(q, mp);
- }
- }
- if (mp) {
- putbq(q, mp);
- } else {
- /* can now put stuff directly on network protocol streams again */
- for (as = us->next; as != 0; as = as->next)
- as->rblocked = 0;
- }
-
- /*
- * If this stream has a lower stream attached,
- * enable the read queue's service routine.
- * XXX we should really only do this if the queue length
- * has dropped below the low-water mark.
- */
- if (us->lowerq != 0)
- qenable(RD(us->lowerq));
-
- } else {
- /*
- * A network protocol stream. Put a DLPI header on each
- * packet and send it on.
- * (Actually, it seems that the IP module will happily
- * accept M_DATA messages without the DL_UNITDATA_IND header.)
- */
- while ((mp = getq(q)) != 0) {
- if (!canputnext(q)) {
- putbq(q, mp);
- break;
- }
-#ifndef NO_DLPI
- proto = PPP_PROTOCOL(mp->b_rptr);
- mp->b_rptr += PPP_HDRLEN;
- hdr = allocb(sizeof(dl_unitdata_ind_t) + 2 * sizeof(uint),
- BPRI_MED);
- if (hdr == 0) {
- /* XXX should put it back and use bufcall */
- freemsg(mp);
- continue;
- }
- hdr->b_datap->db_type = M_PROTO;
- ud = (dl_unitdata_ind_t *) hdr->b_wptr;
- hdr->b_wptr += sizeof(dl_unitdata_ind_t) + 2 * sizeof(uint);
- hdr->b_cont = mp;
- ud->dl_primitive = DL_UNITDATA_IND;
- ud->dl_dest_addr_length = sizeof(uint);
- ud->dl_dest_addr_offset = sizeof(dl_unitdata_ind_t);
- ud->dl_src_addr_length = sizeof(uint);
- ud->dl_src_addr_offset = ud->dl_dest_addr_offset + sizeof(uint);
-#if DL_CURRENT_VERSION >= 2
- ud->dl_group_address = 0;
-#endif
- /* Send the DLPI client the data with the SAP they requested,
- (e.g. ETHERTYPE_IP) rather than the PPP protocol number
- (e.g. PPP_IP) */
- ((uint *)(ud + 1))[0] = us->req_sap; /* dest SAP */
- ((uint *)(ud + 1))[1] = us->req_sap; /* src SAP */
- putnext(q, hdr);
-#else /* NO_DLPI */
- putnext(q, mp);
-#endif /* NO_DLPI */
- }
- /*
- * Now that we have consumed some packets from this queue,
- * enable the control stream's read service routine so that we
- * can process any packets for us that might have got queued
- * there for flow control reasons.
- */
- if (us->ppa)
- qenable(us->ppa->q);
- }
-
- return 0;
-}
-
-static upperstr_t *
-find_dest(ppa, proto)
- upperstr_t *ppa;
- int proto;
-{
- upperstr_t *us;
-
- for (us = ppa->next; us != 0; us = us->next)
- if (proto == us->sap)
- break;
- return us;
-}
-
-#if defined (SOL2)
-/*
- * Test upstream promiscuous conditions. As of now, only pass IPv4 and
- * Ipv6 packets upstream (let PPP packets be decoded elsewhere).
- */
-static upperstr_t *
-find_promisc(us, proto)
- upperstr_t *us;
- int proto;
-{
-
- if ((proto != PPP_IP) && (proto != PPP_IPV6))
- return (upperstr_t *)0;
-
- for ( ; us; us = us->next) {
- if ((us->flags & US_PROMISC) && (us->state == DL_IDLE))
- return us;
- }
-
- return (upperstr_t *)0;
-}
-
-/*
- * Prepend an empty Ethernet header to msg for snoop, et al.
- */
-static mblk_t *
-prepend_ether(us, mp, proto)
- upperstr_t *us;
- mblk_t *mp;
- int proto;
-{
- mblk_t *eh;
- int type;
-
- if ((eh = allocb(sizeof(struct ether_header), BPRI_HI)) == 0) {
- freemsg(mp);
- return (mblk_t *)0;
- }
-
- if (proto == PPP_IP)
- type = ETHERTYPE_IP;
- else if (proto == PPP_IPV6)
- type = ETHERTYPE_IPV6;
- else
- type = proto; /* What else? Let decoder decide */
-
- eh->b_wptr += sizeof(struct ether_header);
- bzero((caddr_t)eh->b_rptr, sizeof(struct ether_header));
- ((struct ether_header *)eh->b_rptr)->ether_type = htons((short)type);
- eh->b_cont = mp;
- return (eh);
-}
-
-/*
- * Prepend DL_UNITDATA_IND mblk to msg
- */
-static mblk_t *
-prepend_udind(us, mp, proto)
- upperstr_t *us;
- mblk_t *mp;
- int proto;
-{
- dl_unitdata_ind_t *dlu;
- mblk_t *dh;
- size_t size;
-
- size = sizeof(dl_unitdata_ind_t);
- if ((dh = allocb(size, BPRI_MED)) == 0) {
- freemsg(mp);
- return (mblk_t *)0;
- }
-
- dh->b_datap->db_type = M_PROTO;
- dh->b_wptr = dh->b_datap->db_lim;
- dh->b_rptr = dh->b_wptr - size;
-
- dlu = (dl_unitdata_ind_t *)dh->b_rptr;
- dlu->dl_primitive = DL_UNITDATA_IND;
- dlu->dl_dest_addr_length = 0;
- dlu->dl_dest_addr_offset = sizeof(dl_unitdata_ind_t);
- dlu->dl_src_addr_length = 0;
- dlu->dl_src_addr_offset = sizeof(dl_unitdata_ind_t);
- dlu->dl_group_address = 0;
-
- dh->b_cont = mp;
- return (dh);
-}
-
-/*
- * For any recognized promiscuous streams, send data upstream
- */
-static void
-promisc_sendup(ppa, mp, proto, skip)
- upperstr_t *ppa;
- mblk_t *mp;
- int proto, skip;
-{
- mblk_t *dup_mp, *dup_dup_mp;
- upperstr_t *prus, *nprus;
-
- if ((prus = find_promisc(ppa, proto)) != 0) {
- if (dup_mp = dupmsg(mp)) {
-
- if (skip)
- dup_mp->b_rptr += PPP_HDRLEN;
-
- for ( ; nprus = find_promisc(prus->next, proto);
- prus = nprus) {
-
- if (dup_dup_mp = dupmsg(dup_mp)) {
- if (canputnext(prus->q)) {
- if (prus->flags & US_RAWDATA) {
- dup_dup_mp = prepend_ether(prus, dup_dup_mp, proto);
- putnext(prus->q, dup_dup_mp);
- } else {
- dup_dup_mp = prepend_udind(prus, dup_dup_mp, proto);
- putnext(prus->q, dup_dup_mp);
- }
- } else {
- DPRINT("ppp_urput: data to promisc q dropped\n");
- freemsg(dup_dup_mp);
- }
- }
- }
-
- if (canputnext(prus->q)) {
- if (prus->flags & US_RAWDATA) {
- dup_mp = prepend_ether(prus, dup_mp, proto);
- putnext(prus->q, dup_mp);
- } else {
- dup_mp = prepend_udind(prus, dup_mp, proto);
- putnext(prus->q, dup_mp);
- }
- } else {
- DPRINT("ppp_urput: data to promisc q dropped\n");
- freemsg(dup_mp);
- }
- }
- }
-}
-#endif /* defined(SOL2) */
-
-/*
- * We simply put the message on to the associated upper control stream
- * (either here or in ppplrsrv). That way we enter the perimeters
- * before looking through the list of attached streams to decide which
- * stream it should go up.
- */
-static int
-ppplrput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- queue_t *uq;
- struct iocblk *iop;
-
- switch (mp->b_datap->db_type) {
- case M_IOCTL:
- iop = (struct iocblk *) mp->b_rptr;
- iop->ioc_error = EINVAL;
- mp->b_datap->db_type = M_IOCNAK;
- qreply(q, mp);
- return 0;
- case M_FLUSH:
- if (*mp->b_rptr & FLUSHR)
- flushq(q, FLUSHDATA);
- if (*mp->b_rptr & FLUSHW) {
- *mp->b_rptr &= ~FLUSHR;
- qreply(q, mp);
- } else
- freemsg(mp);
- return 0;
- }
-
- /*
- * If we can't get the lower lock straight away, queue this one
- * rather than blocking, to avoid the possibility of deadlock.
- */
- if (!TRYLOCK_LOWER_R) {
- putq(q, mp);
- return 0;
- }
-
- /*
- * Check that we're still connected to the driver.
- */
- uq = (queue_t *) q->q_ptr;
- if (uq == 0) {
- UNLOCK_LOWER;
- DPRINT1("ppplrput: q = %x, uq = 0??\n", q);
- freemsg(mp);
- return 0;
- }
-
- /*
- * Try to forward the message to the put routine for the upper
- * control stream for this lower stream.
- * If there are already messages queued here, queue this one so
- * they don't get out of order.
- */
- if (queclass(mp) == QPCTL || (qsize(q) == 0 && canput(uq)))
- put(uq, mp);
- else
- putq(q, mp);
-
- UNLOCK_LOWER;
- return 0;
-}
-
-static int
-ppplrsrv(q)
- queue_t *q;
-{
- mblk_t *mp;
- queue_t *uq;
-
- /*
- * Packets get queued here for flow control reasons
- * or if the lrput routine couldn't get the lower lock
- * without blocking.
- */
- LOCK_LOWER_R;
- uq = (queue_t *) q->q_ptr;
- if (uq == 0) {
- UNLOCK_LOWER;
- flushq(q, FLUSHALL);
- DPRINT1("ppplrsrv: q = %x, uq = 0??\n", q);
- return 0;
- }
- while ((mp = getq(q)) != 0) {
- if (queclass(mp) == QPCTL || canput(uq))
- put(uq, mp);
- else {
- putbq(q, mp);
- break;
- }
- }
- UNLOCK_LOWER;
- return 0;
-}
-
-static int
-putctl2(q, type, code, val)
- queue_t *q;
- int type, code, val;
-{
- mblk_t *mp;
-
- mp = allocb(2, BPRI_HI);
- if (mp == 0)
- return 0;
- mp->b_datap->db_type = type;
- mp->b_wptr[0] = code;
- mp->b_wptr[1] = val;
- mp->b_wptr += 2;
- putnext(q, mp);
- return 1;
-}
-
-static int
-putctl4(q, type, code, val)
- queue_t *q;
- int type, code, val;
-{
- mblk_t *mp;
-
- mp = allocb(4, BPRI_HI);
- if (mp == 0)
- return 0;
- mp->b_datap->db_type = type;
- mp->b_wptr[0] = code;
- ((short *)mp->b_wptr)[1] = val;
- mp->b_wptr += 4;
- putnext(q, mp);
- return 1;
-}
-
-static void
-debug_dump(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- upperstr_t *us;
- queue_t *uq, *lq;
-
- DPRINT("ppp upper streams:\n");
- for (us = minor_devs; us != 0; us = us->nextmn) {
- uq = us->q;
- DPRINT3(" %d: q=%x rlev=%d",
- us->mn, uq, (uq? qsize(uq): 0));
- DPRINT3(" wlev=%d flags=0x%b", (uq? qsize(WR(uq)): 0),
- us->flags, "\020\1priv\2control\3blocked\4last");
- DPRINT3(" state=%x sap=%x req_sap=%x", us->state, us->sap,
- us->req_sap);
- if (us->ppa == 0)
- DPRINT(" ppa=?\n");
- else
- DPRINT1(" ppa=%d\n", us->ppa->ppa_id);
- if (us->flags & US_CONTROL) {
- lq = us->lowerq;
- DPRINT3(" control for %d lq=%x rlev=%d",
- us->ppa_id, lq, (lq? qsize(RD(lq)): 0));
- DPRINT3(" wlev=%d mru=%d mtu=%d\n",
- (lq? qsize(lq): 0), us->mru, us->mtu);
- }
- }
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
-}
-
-#ifdef FILTER_PACKETS
-#include <netinet/in_systm.h>
-#include <netinet/ip.h>
-#include <netinet/udp.h>
-#include <netinet/tcp.h>
-
-#define MAX_IPHDR 128 /* max TCP/IP header size */
-
-
-/* The following table contains a hard-coded list of protocol/port pairs.
- * Any matching packets are either discarded unconditionally, or,
- * if ok_if_link_up is non-zero when a connection does not currently exist
- * (i.e., they go through if the connection is present, but never initiate
- * a dial-out).
- * This idea came from a post by dm@garage.uun.org (David Mazieres)
- */
-static struct pktfilt_tab {
- int proto;
- u_short port;
- u_short ok_if_link_up;
-} pktfilt_tab[] = {
- { IPPROTO_UDP, 520, 1 }, /* RIP, ok to pass if link is up */
- { IPPROTO_UDP, 123, 1 }, /* NTP, don't keep up the link for it */
- { -1, 0, 0 } /* terminator entry has port == -1 */
-};
-
-
-static int
-ip_hard_filter(us, mp, outbound)
- upperstr_t *us;
- mblk_t *mp;
- int outbound;
-{
- struct ip *ip;
- struct pktfilt_tab *pft;
- mblk_t *temp_mp;
- int proto;
- int len, hlen;
-
-
- /* Note, the PPP header has already been pulled up in all cases */
- proto = PPP_PROTOCOL(mp->b_rptr);
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: filter, proto=0x%x, out=%d\n", us->mn, proto, outbound);
-
- switch (proto)
- {
- case PPP_IP:
- if ((mp->b_wptr - mp->b_rptr) == PPP_HDRLEN && mp->b_cont != 0) {
- temp_mp = mp->b_cont;
- len = msgdsize(temp_mp);
- hlen = (len < MAX_IPHDR) ? len : MAX_IPHDR;
- PULLUP(temp_mp, hlen);
- if (temp_mp == 0) {
- DPRINT2("ppp/%d: filter, pullup next failed, len=%d\n",
- us->mn, hlen);
- mp->b_cont = 0; /* PULLUP() freed the rest */
- freemsg(mp);
- return 0;
- }
- ip = (struct ip *)mp->b_cont->b_rptr;
- }
- else {
- len = msgdsize(mp);
- hlen = (len < (PPP_HDRLEN+MAX_IPHDR)) ? len : (PPP_HDRLEN+MAX_IPHDR);
- PULLUP(mp, hlen);
- if (mp == 0) {
- DPRINT2("ppp/%d: filter, pullup failed, len=%d\n",
- us->mn, hlen);
- return 0;
- }
- ip = (struct ip *)(mp->b_rptr + PPP_HDRLEN);
- }
-
- /* For IP traffic, certain packets (e.g., RIP) may be either
- * 1. ignored - dropped completely
- * 2. will not initiate a connection, but
- * will be passed if a connection is currently up.
- */
- for (pft=pktfilt_tab; pft->proto != -1; pft++) {
- if (ip->ip_p == pft->proto) {
- switch(pft->proto) {
- case IPPROTO_UDP:
- if (((struct udphdr *) &((int *)ip)[ip->ip_hl])->uh_dport
- == htons(pft->port)) goto endfor;
- break;
- case IPPROTO_TCP:
- if (((struct tcphdr *) &((int *)ip)[ip->ip_hl])->th_dport
- == htons(pft->port)) goto endfor;
- break;
- }
- }
- }
- endfor:
- if (pft->proto != -1) {
- if (us->flags & US_DBGLOG)
- DPRINT3("ppp/%d: found IP pkt, proto=0x%x (%d)\n",
- us->mn, pft->proto, pft->port);
- /* Discard if not connected, or if not pass_with_link_up */
- /* else, if link is up let go by, but don't update time */
- return pft->ok_if_link_up? -1: 0;
- }
- break;
- } /* end switch (proto) */
-
- return 1;
-}
-#endif /* FILTER_PACKETS */
-
diff --git a/mdk-stage1/ppp/solaris/ppp.conf b/mdk-stage1/ppp/solaris/ppp.conf
deleted file mode 100644
index e443a7aac..000000000
--- a/mdk-stage1/ppp/solaris/ppp.conf
+++ /dev/null
@@ -1 +0,0 @@
-name="ppp" parent="pseudo" instance=0;
diff --git a/mdk-stage1/ppp/solaris/ppp_ahdlc.c b/mdk-stage1/ppp/solaris/ppp_ahdlc.c
deleted file mode 100644
index d0b961258..000000000
--- a/mdk-stage1/ppp/solaris/ppp_ahdlc.c
+++ /dev/null
@@ -1,878 +0,0 @@
-/*
- * ppp_ahdlc.c - STREAMS module for doing PPP asynchronous HDLC.
- *
- * Re-written by Adi Masputra <adi.masputra@sun.com>, based on
- * the original ppp_ahdlc.c
- *
- * Copyright (c) 2000 by Sun Microsystems, Inc.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies.
- *
- * SUN MAKES NO REPRESENTATION OR WARRANTIES ABOUT THE SUITABILITY OF
- * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
- * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
- * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
- * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
- * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under Solaris 2, SVR4, SunOS 4, and Digital UNIX.
- */
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/stream.h>
-#include <sys/errno.h>
-
-#ifdef SVR4
-#include <sys/conf.h>
-#include <sys/kmem.h>
-#include <sys/cmn_err.h>
-#include <sys/ddi.h>
-#else
-#include <sys/user.h>
-#ifdef __osf__
-#include <sys/cmn_err.h>
-#endif
-#endif /* SVR4 */
-
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-#include "ppp_mod.h"
-
-/*
- * Right now, mutex is only enabled for Solaris 2.x
- */
-#if defined(SOL2)
-#define USE_MUTEX
-#endif /* SOL2 */
-
-/*
- * intpointer_t and uintpointer_t are signed and unsigned integer types
- * large enough to hold any data pointer; that is, data pointers can be
- * assigned into or from these integer types without losing precision.
- * On recent Solaris releases, these types are defined in sys/int_types.h,
- * but not on SunOS 4.x or the earlier Solaris versions.
- */
-#if defined(_LP64) || defined(_I32LPx)
-typedef long intpointer_t;
-typedef unsigned long uintpointer_t;
-#else
-typedef int intpointer_t;
-typedef unsigned int uintpointer_t;
-#endif
-
-MOD_OPEN_DECL(ahdlc_open);
-MOD_CLOSE_DECL(ahdlc_close);
-static int ahdlc_wput __P((queue_t *, mblk_t *));
-static int ahdlc_rput __P((queue_t *, mblk_t *));
-static void ahdlc_encode __P((queue_t *, mblk_t *));
-static void ahdlc_decode __P((queue_t *, mblk_t *));
-static int msg_byte __P((mblk_t *, unsigned int));
-
-#if defined(SOL2)
-/*
- * Don't send HDLC start flag is last transmit is within 1.5 seconds -
- * FLAG_TIME is defined is microseconds
- */
-#define FLAG_TIME 1500
-#define ABS(x) (x >= 0 ? x : (-x))
-#endif /* SOL2 */
-
-/*
- * Extract byte i of message mp
- */
-#define MSG_BYTE(mp, i) ((i) < (mp)->b_wptr - (mp)->b_rptr? (mp)->b_rptr[i]: \
- msg_byte((mp), (i)))
-
-/*
- * Is this LCP packet one we have to transmit using LCP defaults?
- */
-#define LCP_USE_DFLT(mp) (1 <= (code = MSG_BYTE((mp), 4)) && code <= 7)
-
-/*
- * Standard STREAMS declarations
- */
-static struct module_info minfo = {
- 0x7d23, "ppp_ahdl", 0, INFPSZ, 32768, 512
-};
-
-static struct qinit rinit = {
- ahdlc_rput, NULL, ahdlc_open, ahdlc_close, NULL, &minfo, NULL
-};
-
-static struct qinit winit = {
- ahdlc_wput, NULL, NULL, NULL, NULL, &minfo, NULL
-};
-
-#if defined(SVR4) && !defined(SOL2)
-int phdldevflag = 0;
-#define ppp_ahdlcinfo phdlinfo
-#endif /* defined(SVR4) && !defined(SOL2) */
-
-struct streamtab ppp_ahdlcinfo = {
- &rinit, /* ptr to st_rdinit */
- &winit, /* ptr to st_wrinit */
- NULL, /* ptr to st_muxrinit */
- NULL, /* ptr to st_muxwinit */
-#if defined(SUNOS4)
- NULL /* ptr to ptr to st_modlist */
-#endif /* SUNOS4 */
-};
-
-#if defined(SUNOS4)
-int ppp_ahdlc_count = 0; /* open counter */
-#endif /* SUNOS4 */
-
-/*
- * Per-stream state structure
- */
-typedef struct ahdlc_state {
-#if defined(USE_MUTEX)
- kmutex_t lock; /* lock for this structure */
-#endif /* USE_MUTEX */
- int flags; /* link flags */
- mblk_t *rx_buf; /* ptr to receive buffer */
- int rx_buf_size; /* receive buffer size */
- ushort_t infcs; /* calculated rx HDLC FCS */
- u_int32_t xaccm[8]; /* 256-bit xmit ACCM */
- u_int32_t raccm; /* 32-bit rcv ACCM */
- int mtu; /* interface MTU */
- int mru; /* link MRU */
- int unit; /* current PPP unit number */
- struct pppstat stats; /* statistic structure */
-#if defined(SOL2)
- clock_t flag_time; /* time in usec between flags */
- clock_t lbolt; /* last updated lbolt */
-#endif /* SOL2 */
-} ahdlc_state_t;
-
-/*
- * Values for flags
- */
-#define ESCAPED 0x100 /* last saw escape char on input */
-#define IFLUSH 0x200 /* flushing input due to error */
-
-/*
- * RCV_B7_1, etc., defined in net/pppio.h, are stored in flags also.
- */
-#define RCV_FLAGS (RCV_B7_1|RCV_B7_0|RCV_ODDP|RCV_EVNP)
-
-/*
- * FCS lookup table as calculated by genfcstab.
- */
-static u_short fcstab[256] = {
- 0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf,
- 0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5, 0xe97e, 0xf8f7,
- 0x1081, 0x0108, 0x3393, 0x221a, 0x56a5, 0x472c, 0x75b7, 0x643e,
- 0x9cc9, 0x8d40, 0xbfdb, 0xae52, 0xdaed, 0xcb64, 0xf9ff, 0xe876,
- 0x2102, 0x308b, 0x0210, 0x1399, 0x6726, 0x76af, 0x4434, 0x55bd,
- 0xad4a, 0xbcc3, 0x8e58, 0x9fd1, 0xeb6e, 0xfae7, 0xc87c, 0xd9f5,
- 0x3183, 0x200a, 0x1291, 0x0318, 0x77a7, 0x662e, 0x54b5, 0x453c,
- 0xbdcb, 0xac42, 0x9ed9, 0x8f50, 0xfbef, 0xea66, 0xd8fd, 0xc974,
- 0x4204, 0x538d, 0x6116, 0x709f, 0x0420, 0x15a9, 0x2732, 0x36bb,
- 0xce4c, 0xdfc5, 0xed5e, 0xfcd7, 0x8868, 0x99e1, 0xab7a, 0xbaf3,
- 0x5285, 0x430c, 0x7197, 0x601e, 0x14a1, 0x0528, 0x37b3, 0x263a,
- 0xdecd, 0xcf44, 0xfddf, 0xec56, 0x98e9, 0x8960, 0xbbfb, 0xaa72,
- 0x6306, 0x728f, 0x4014, 0x519d, 0x2522, 0x34ab, 0x0630, 0x17b9,
- 0xef4e, 0xfec7, 0xcc5c, 0xddd5, 0xa96a, 0xb8e3, 0x8a78, 0x9bf1,
- 0x7387, 0x620e, 0x5095, 0x411c, 0x35a3, 0x242a, 0x16b1, 0x0738,
- 0xffcf, 0xee46, 0xdcdd, 0xcd54, 0xb9eb, 0xa862, 0x9af9, 0x8b70,
- 0x8408, 0x9581, 0xa71a, 0xb693, 0xc22c, 0xd3a5, 0xe13e, 0xf0b7,
- 0x0840, 0x19c9, 0x2b52, 0x3adb, 0x4e64, 0x5fed, 0x6d76, 0x7cff,
- 0x9489, 0x8500, 0xb79b, 0xa612, 0xd2ad, 0xc324, 0xf1bf, 0xe036,
- 0x18c1, 0x0948, 0x3bd3, 0x2a5a, 0x5ee5, 0x4f6c, 0x7df7, 0x6c7e,
- 0xa50a, 0xb483, 0x8618, 0x9791, 0xe32e, 0xf2a7, 0xc03c, 0xd1b5,
- 0x2942, 0x38cb, 0x0a50, 0x1bd9, 0x6f66, 0x7eef, 0x4c74, 0x5dfd,
- 0xb58b, 0xa402, 0x9699, 0x8710, 0xf3af, 0xe226, 0xd0bd, 0xc134,
- 0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c,
- 0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028, 0x91a1, 0xa33a, 0xb2b3,
- 0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb,
- 0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9, 0x8120, 0xb3bb, 0xa232,
- 0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a,
- 0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1,
- 0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb, 0x0e70, 0x1ff9,
- 0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab, 0xa022, 0x92b9, 0x8330,
- 0x7bc7, 0x6a4e, 0x58d5, 0x495c, 0x3de3, 0x2c6a, 0x1ef1, 0x0f78
-};
-
-static u_int32_t paritytab[8] =
-{
- 0x96696996, 0x69969669, 0x69969669, 0x96696996,
- 0x69969669, 0x96696996, 0x96696996, 0x69969669
-};
-
-/*
- * STREAMS module open (entry) point
- */
-MOD_OPEN(ahdlc_open)
-{
- ahdlc_state_t *state;
-
- /*
- * Return if it's already opened
- */
- if (q->q_ptr) {
- return 0;
- }
-
- /*
- * This can only be opened as a module
- */
- if (sflag != MODOPEN) {
- return 0;
- }
-
- state = (ahdlc_state_t *) ALLOC_NOSLEEP(sizeof(ahdlc_state_t));
- if (state == 0)
- OPEN_ERROR(ENOSR);
- bzero((caddr_t) state, sizeof(ahdlc_state_t));
-
- q->q_ptr = (caddr_t) state;
- WR(q)->q_ptr = (caddr_t) state;
-
-#if defined(USE_MUTEX)
- mutex_init(&state->lock, NULL, MUTEX_DEFAULT, NULL);
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
-
- state->xaccm[0] = ~0; /* escape 0x00 through 0x1f */
- state->xaccm[3] = 0x60000000; /* escape 0x7d and 0x7e */
- state->mru = PPP_MRU; /* default of 1500 bytes */
-#if defined(SOL2)
- state->flag_time = drv_usectohz(FLAG_TIME);
-#endif /* SOL2 */
-
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
-
-#if defined(SUNOS4)
- ppp_ahdlc_count++;
-#endif /* SUNOS4 */
-
- qprocson(q);
-
- return 0;
-}
-
-/*
- * STREAMS module close (exit) point
- */
-MOD_CLOSE(ahdlc_close)
-{
- ahdlc_state_t *state;
-
- qprocsoff(q);
-
- state = (ahdlc_state_t *) q->q_ptr;
-
- if (state == 0) {
- DPRINT("state == 0 in ahdlc_close\n");
- return 0;
- }
-
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
-
- if (state->rx_buf != 0) {
- freemsg(state->rx_buf);
- state->rx_buf = 0;
- }
-
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
- mutex_destroy(&state->lock);
-#endif /* USE_MUTEX */
-
- FREE(q->q_ptr, sizeof(ahdlc_state_t));
- q->q_ptr = NULL;
- OTHERQ(q)->q_ptr = NULL;
-
-#if defined(SUNOS4)
- if (ppp_ahdlc_count)
- ppp_ahdlc_count--;
-#endif /* SUNOS4 */
-
- return 0;
-}
-
-/*
- * Write side put routine
- */
-static int
-ahdlc_wput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- ahdlc_state_t *state;
- struct iocblk *iop;
- int error;
- mblk_t *np;
- struct ppp_stats *psp;
-
- state = (ahdlc_state_t *) q->q_ptr;
- if (state == 0) {
- DPRINT("state == 0 in ahdlc_wput\n");
- freemsg(mp);
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
- case M_DATA:
- /*
- * A data packet - do character-stuffing and FCS, and
- * send it onwards.
- */
- ahdlc_encode(q, mp);
- freemsg(mp);
- break;
-
- case M_IOCTL:
- iop = (struct iocblk *) mp->b_rptr;
- error = EINVAL;
- switch (iop->ioc_cmd) {
- case PPPIO_XACCM:
- if ((iop->ioc_count < sizeof(u_int32_t)) ||
- (iop->ioc_count > sizeof(ext_accm))) {
- break;
- }
- if (mp->b_cont == 0) {
- DPRINT1("ahdlc_wput/%d: PPPIO_XACCM b_cont = 0!\n", state->unit);
- break;
- }
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- bcopy((caddr_t)mp->b_cont->b_rptr, (caddr_t)state->xaccm,
- iop->ioc_count);
- state->xaccm[2] &= ~0x40000000; /* don't escape 0x5e */
- state->xaccm[3] |= 0x60000000; /* do escape 0x7d, 0x7e */
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- iop->ioc_count = 0;
- error = 0;
- break;
-
- case PPPIO_RACCM:
- if (iop->ioc_count != sizeof(u_int32_t))
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ahdlc_wput/%d: PPPIO_RACCM b_cont = 0!\n", state->unit);
- break;
- }
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- bcopy((caddr_t)mp->b_cont->b_rptr, (caddr_t)&state->raccm,
- sizeof(u_int32_t));
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- iop->ioc_count = 0;
- error = 0;
- break;
-
- case PPPIO_GCLEAN:
- np = allocb(sizeof(int), BPRI_HI);
- if (np == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = np;
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- *(int *)np->b_wptr = state->flags & RCV_FLAGS;
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- np->b_wptr += sizeof(int);
- iop->ioc_count = sizeof(int);
- error = 0;
- break;
-
- case PPPIO_GETSTAT:
- np = allocb(sizeof(struct ppp_stats), BPRI_HI);
- if (np == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = np;
- psp = (struct ppp_stats *) np->b_wptr;
- np->b_wptr += sizeof(struct ppp_stats);
- bzero((caddr_t)psp, sizeof(struct ppp_stats));
- psp->p = state->stats;
- iop->ioc_count = sizeof(struct ppp_stats);
- error = 0;
- break;
-
- case PPPIO_LASTMOD:
- /* we knew this anyway */
- error = 0;
- break;
-
- default:
- error = -1;
- break;
- }
-
- if (error < 0)
- putnext(q, mp);
- else if (error == 0) {
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
- } else {
- mp->b_datap->db_type = M_IOCNAK;
- iop->ioc_count = 0;
- iop->ioc_error = error;
- qreply(q, mp);
- }
- break;
-
- case M_CTL:
- switch (*mp->b_rptr) {
- case PPPCTL_MTU:
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- state->mtu = ((unsigned short *)mp->b_rptr)[1];
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- freemsg(mp);
- break;
- case PPPCTL_MRU:
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- state->mru = ((unsigned short *)mp->b_rptr)[1];
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- freemsg(mp);
- break;
- case PPPCTL_UNIT:
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- state->unit = mp->b_rptr[1];
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- break;
- default:
- putnext(q, mp);
- }
- break;
-
- default:
- putnext(q, mp);
- }
-
- return 0;
-}
-
-/*
- * Read side put routine
- */
-static int
-ahdlc_rput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- ahdlc_state_t *state;
-
- state = (ahdlc_state_t *) q->q_ptr;
- if (state == 0) {
- DPRINT("state == 0 in ahdlc_rput\n");
- freemsg(mp);
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
- case M_DATA:
- ahdlc_decode(q, mp);
- freemsg(mp);
- break;
-
- case M_HANGUP:
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
- if (state->rx_buf != 0) {
- /* XXX would like to send this up for debugging */
- freemsg(state->rx_buf);
- state->rx_buf = 0;
- }
- state->flags = IFLUSH;
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- putnext(q, mp);
- break;
-
- default:
- putnext(q, mp);
- }
- return 0;
-}
-
-/*
- * Extract bit c from map m, to determine if c needs to be escaped
- */
-#define IN_TX_MAP(c, m) ((m)[(c) >> 5] & (1 << ((c) & 0x1f)))
-
-static void
-ahdlc_encode(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- ahdlc_state_t *state;
- u_int32_t *xaccm, loc_xaccm[8];
- ushort_t fcs;
- size_t outmp_len;
- mblk_t *outmp, *tmp;
- uchar_t *dp, fcs_val;
- int is_lcp, code;
-#if defined(SOL2)
- clock_t lbolt;
-#endif /* SOL2 */
-
- if (msgdsize(mp) < 4) {
- return;
- }
-
- state = (ahdlc_state_t *)q->q_ptr;
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
-
- /*
- * Allocate an output buffer large enough to handle a case where all
- * characters need to be escaped
- */
- outmp_len = (msgdsize(mp) << 1) + /* input block x 2 */
- (sizeof(fcs) << 2) + /* HDLC FCS x 4 */
- (sizeof(uchar_t) << 1); /* HDLC flags x 2 */
-
- outmp = allocb(outmp_len, BPRI_MED);
- if (outmp == NULL) {
- state->stats.ppp_oerrors++;
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
- putctl1(RD(q)->q_next, M_CTL, PPPCTL_OERROR);
- return;
- }
-
-#if defined(SOL2)
- /*
- * Check if our last transmit happenned within flag_time, using
- * the system's LBOLT value in clock ticks
- */
- if (drv_getparm(LBOLT, &lbolt) != -1) {
- if (ABS((clock_t)lbolt - state->lbolt) > state->flag_time) {
- *outmp->b_wptr++ = PPP_FLAG;
- }
- state->lbolt = lbolt;
- } else {
- *outmp->b_wptr++ = PPP_FLAG;
- }
-#else
- /*
- * If the driver below still has a message to process, skip the
- * HDLC flag, otherwise, put one in the beginning
- */
- if (qsize(q->q_next) == 0) {
- *outmp->b_wptr++ = PPP_FLAG;
- }
-#endif
-
- /*
- * All control characters must be escaped for LCP packets with code
- * values between 1 (Conf-Req) and 7 (Code-Rej).
- */
- is_lcp = ((MSG_BYTE(mp, 0) == PPP_ALLSTATIONS) &&
- (MSG_BYTE(mp, 1) == PPP_UI) &&
- (MSG_BYTE(mp, 2) == (PPP_LCP >> 8)) &&
- (MSG_BYTE(mp, 3) == (PPP_LCP & 0xff)) &&
- LCP_USE_DFLT(mp));
-
- xaccm = state->xaccm;
- if (is_lcp) {
- bcopy((caddr_t)state->xaccm, (caddr_t)loc_xaccm, sizeof(loc_xaccm));
- loc_xaccm[0] = ~0; /* force escape on 0x00 through 0x1f */
- xaccm = loc_xaccm;
- }
-
- fcs = PPP_INITFCS; /* Initial FCS is 0xffff */
-
- /*
- * Process this block and the rest (if any) attached to the this one
- */
- for (tmp = mp; tmp; tmp = tmp->b_cont) {
- if (tmp->b_datap->db_type == M_DATA) {
- for (dp = tmp->b_rptr; dp < tmp->b_wptr; dp++) {
- fcs = PPP_FCS(fcs, *dp);
- if (IN_TX_MAP(*dp, xaccm)) {
- *outmp->b_wptr++ = PPP_ESCAPE;
- *outmp->b_wptr++ = *dp ^ PPP_TRANS;
- } else {
- *outmp->b_wptr++ = *dp;
- }
- }
- } else {
- continue; /* skip if db_type is something other than M_DATA */
- }
- }
-
- /*
- * Append the HDLC FCS, making sure that escaping is done on any
- * necessary bytes
- */
- fcs_val = (fcs ^ 0xffff) & 0xff;
- if (IN_TX_MAP(fcs_val, xaccm)) {
- *outmp->b_wptr++ = PPP_ESCAPE;
- *outmp->b_wptr++ = fcs_val ^ PPP_TRANS;
- } else {
- *outmp->b_wptr++ = fcs_val;
- }
-
- fcs_val = ((fcs ^ 0xffff) >> 8) & 0xff;
- if (IN_TX_MAP(fcs_val, xaccm)) {
- *outmp->b_wptr++ = PPP_ESCAPE;
- *outmp->b_wptr++ = fcs_val ^ PPP_TRANS;
- } else {
- *outmp->b_wptr++ = fcs_val;
- }
-
- /*
- * And finally, append the HDLC flag, and send it away
- */
- *outmp->b_wptr++ = PPP_FLAG;
-
- state->stats.ppp_obytes += msgdsize(outmp);
- state->stats.ppp_opackets++;
-
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
-
- putnext(q, outmp);
- return;
-}
-
-/*
- * Checks the 32-bit receive ACCM to see if the byte needs un-escaping
- */
-#define IN_RX_MAP(c, m) ((((unsigned int) (uchar_t) (c)) < 0x20) && \
- (m) & (1 << (c)))
-
-
-/*
- * Process received characters.
- */
-static void
-ahdlc_decode(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- ahdlc_state_t *state;
- mblk_t *om;
- uchar_t *dp;
- ushort_t fcs;
-#if defined(SOL2)
- mblk_t *zmp;
-#endif /* SOL2 */
-
-#if defined(SOL2)
- /*
- * In case the driver (or something below) doesn't send
- * data upstream in one message block, concatenate everything
- */
- if (!((mp->b_wptr - mp->b_rptr == msgdsize(mp)) &&
- ((intpointer_t)mp->b_rptr % sizeof(intpointer_t) == 0))) {
-
- zmp = msgpullup(mp, -1);
- freemsg(mp);
- mp = zmp;
- if (mp == 0)
- return;
- }
-#endif /* SOL2 */
-
- state = (ahdlc_state_t *) q->q_ptr;
-
-#if defined(USE_MUTEX)
- mutex_enter(&state->lock);
-#endif /* USE_MUTEX */
-
- state->stats.ppp_ibytes += msgdsize(mp);
-
- for (dp = mp->b_rptr; dp < mp->b_wptr; dp++) {
-
- /*
- * This should detect the lack of 8-bit communication channel
- * which is necessary for PPP to work. In addition, it also
- * checks on the parity.
- */
- if (*dp & 0x80)
- state->flags |= RCV_B7_1;
- else
- state->flags |= RCV_B7_0;
-
- if (paritytab[*dp >> 5] & (1 << (*dp & 0x1f)))
- state->flags |= RCV_ODDP;
- else
- state->flags |= RCV_EVNP;
-
- /*
- * So we have a HDLC flag ...
- */
- if (*dp == PPP_FLAG) {
-
- /*
- * If we think that it marks the beginning of the frame,
- * then continue to process the next octects
- */
- if ((state->flags & IFLUSH) ||
- (state->rx_buf == 0) ||
- (msgdsize(state->rx_buf) == 0)) {
-
- state->flags &= ~IFLUSH;
- continue;
- }
-
- /*
- * We get here because the above condition isn't true,
- * in which case the HDLC flag was there to mark the end
- * of the frame (or so we think)
- */
- om = state->rx_buf;
-
- if (state->infcs == PPP_GOODFCS) {
- state->stats.ppp_ipackets++;
- adjmsg(om, -PPP_FCSLEN);
- putnext(q, om);
- } else {
- DPRINT2("ppp%d: bad fcs (len=%d)\n",
- state->unit, msgdsize(state->rx_buf));
- freemsg(state->rx_buf);
- state->flags &= ~(IFLUSH | ESCAPED);
- state->stats.ppp_ierrors++;
- putctl1(q->q_next, M_CTL, PPPCTL_IERROR);
- }
-
- state->rx_buf = 0;
- continue;
- }
-
- if (state->flags & IFLUSH) {
- continue;
- }
-
- /*
- * Allocate a receive buffer, large enough to store a frame (after
- * un-escaping) of at least 1500 octets. If MRU is negotiated to
- * be more than the default, then allocate that much. In addition,
- * we add an extra 32-bytes for a fudge factor
- */
- if (state->rx_buf == 0) {
- state->rx_buf_size = (state->mru < PPP_MRU ? PPP_MRU : state->mru);
- state->rx_buf_size += (sizeof(u_int32_t) << 3);
- state->rx_buf = allocb(state->rx_buf_size, BPRI_MED);
-
- /*
- * If allocation fails, try again on the next frame
- */
- if (state->rx_buf == 0) {
- state->flags |= IFLUSH;
- continue;
- }
- state->flags &= ~(IFLUSH | ESCAPED);
- state->infcs = PPP_INITFCS;
- }
-
- if (*dp == PPP_ESCAPE) {
- state->flags |= ESCAPED;
- continue;
- }
-
- /*
- * Make sure we un-escape the necessary characters, as well as the
- * ones in our receive async control character map
- */
- if (state->flags & ESCAPED) {
- *dp ^= PPP_TRANS;
- state->flags &= ~ESCAPED;
- } else if (IN_RX_MAP(*dp, state->raccm))
- continue;
-
- /*
- * Unless the peer lied to us about the negotiated MRU, we should
- * never get a frame which is too long. If it happens, toss it away
- * and grab the next incoming one
- */
- if (msgdsize(state->rx_buf) < state->rx_buf_size) {
- state->infcs = PPP_FCS(state->infcs, *dp);
- *state->rx_buf->b_wptr++ = *dp;
- } else {
- DPRINT2("ppp%d: frame too long (%d)\n",
- state->unit, msgdsize(state->rx_buf));
- freemsg(state->rx_buf);
- state->rx_buf = 0;
- state->flags |= IFLUSH;
- }
- }
-
-#if defined(USE_MUTEX)
- mutex_exit(&state->lock);
-#endif /* USE_MUTEX */
-}
-
-static int
-msg_byte(mp, i)
- mblk_t *mp;
- unsigned int i;
-{
- while (mp != 0 && i >= mp->b_wptr - mp->b_rptr)
- mp = mp->b_cont;
- if (mp == 0)
- return -1;
- return mp->b_rptr[i];
-}
diff --git a/mdk-stage1/ppp/solaris/ppp_ahdlc_mod.c b/mdk-stage1/ppp/solaris/ppp_ahdlc_mod.c
deleted file mode 100644
index f81be8abb..000000000
--- a/mdk-stage1/ppp/solaris/ppp_ahdlc_mod.c
+++ /dev/null
@@ -1,49 +0,0 @@
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/conf.h>
-#include <sys/modctl.h>
-#include <sys/sunddi.h>
-
-extern struct streamtab ppp_ahdlcinfo;
-
-static struct fmodsw fsw = {
- "ppp_ahdl",
- &ppp_ahdlcinfo,
- D_NEW | D_MP | D_MTQPAIR
-};
-
-extern struct mod_ops mod_strmodops;
-
-static struct modlstrmod modlstrmod = {
- &mod_strmodops,
- "PPP async HDLC module",
- &fsw
-};
-
-static struct modlinkage modlinkage = {
- MODREV_1,
- (void *) &modlstrmod,
- NULL
-};
-
-/*
- * Entry points for modloading.
- */
-int
-_init(void)
-{
- return mod_install(&modlinkage);
-}
-
-int
-_fini(void)
-{
- return mod_remove(&modlinkage);
-}
-
-int
-_info(mip)
- struct modinfo *mip;
-{
- return mod_info(&modlinkage, mip);
-}
diff --git a/mdk-stage1/ppp/solaris/ppp_comp.c b/mdk-stage1/ppp/solaris/ppp_comp.c
deleted file mode 100644
index f6eef5ab1..000000000
--- a/mdk-stage1/ppp/solaris/ppp_comp.c
+++ /dev/null
@@ -1,1126 +0,0 @@
-/*
- * ppp_comp.c - STREAMS module for kernel-level compression and CCP support.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under SVR4, Solaris 2, SunOS 4, and Digital UNIX.
- */
-
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/errno.h>
-#include <sys/stream.h>
-
-#ifdef SVR4
-#include <sys/conf.h>
-#include <sys/cmn_err.h>
-#include <sys/ddi.h>
-#else
-#include <sys/user.h>
-#ifdef __osf__
-#include <sys/cmn_err.h>
-#endif
-#endif /* SVR4 */
-
-#include <net/ppp_defs.h>
-#include <net/pppio.h>
-#include "ppp_mod.h"
-
-#ifdef __osf__
-#include <sys/mbuf.h>
-#include <sys/protosw.h>
-#endif
-
-#include <netinet/in.h>
-#include <netinet/in_systm.h>
-#include <netinet/ip.h>
-#include <net/vjcompress.h>
-
-#define PACKETPTR mblk_t *
-#include <net/ppp-comp.h>
-
-MOD_OPEN_DECL(ppp_comp_open);
-MOD_CLOSE_DECL(ppp_comp_close);
-static int ppp_comp_rput __P((queue_t *, mblk_t *));
-static int ppp_comp_rsrv __P((queue_t *));
-static int ppp_comp_wput __P((queue_t *, mblk_t *));
-static int ppp_comp_wsrv __P((queue_t *));
-static void ppp_comp_ccp __P((queue_t *, mblk_t *, int));
-static int msg_byte __P((mblk_t *, unsigned int));
-
-/* Extract byte i of message mp. */
-#define MSG_BYTE(mp, i) ((i) < (mp)->b_wptr - (mp)->b_rptr? (mp)->b_rptr[i]: \
- msg_byte((mp), (i)))
-
-/* Is this LCP packet one we have to transmit using LCP defaults? */
-#define LCP_USE_DFLT(mp) (1 <= (code = MSG_BYTE((mp), 4)) && code <= 7)
-
-#define PPP_COMP_ID 0xbadf
-static struct module_info minfo = {
-#ifdef PRIOQ
- PPP_COMP_ID, "ppp_comp", 0, INFPSZ, 16512, 16384,
-#else
- PPP_COMP_ID, "ppp_comp", 0, INFPSZ, 16384, 4096,
-#endif
-};
-
-static struct qinit r_init = {
- ppp_comp_rput, ppp_comp_rsrv, ppp_comp_open, ppp_comp_close,
- NULL, &minfo, NULL
-};
-
-static struct qinit w_init = {
- ppp_comp_wput, ppp_comp_wsrv, NULL, NULL, NULL, &minfo, NULL
-};
-
-#if defined(SVR4) && !defined(SOL2)
-int pcmpdevflag = 0;
-#define ppp_compinfo pcmpinfo
-#endif
-struct streamtab ppp_compinfo = {
- &r_init, &w_init, NULL, NULL
-};
-
-int ppp_comp_count; /* number of module instances in use */
-
-#ifdef __osf__
-
-static void ppp_comp_alloc __P((comp_state_t *));
-typedef struct memreq {
- unsigned char comp_opts[20];
- int cmd;
- int thread_status;
- char *returned_mem;
-} memreq_t;
-
-#endif
-
-typedef struct comp_state {
- int flags;
- int mru;
- int mtu;
- int unit;
- struct compressor *xcomp;
- void *xstate;
- struct compressor *rcomp;
- void *rstate;
- struct vjcompress vj_comp;
- int vj_last_ierrors;
- struct pppstat stats;
-#ifdef __osf__
- memreq_t memreq;
- thread_t thread;
-#endif
-} comp_state_t;
-
-
-#ifdef __osf__
-extern task_t first_task;
-#endif
-
-/* Bits in flags are as defined in pppio.h. */
-#define CCP_ERR (CCP_ERROR | CCP_FATALERROR)
-#define LAST_MOD 0x1000000 /* no ppp modules below us */
-#define DBGLOG 0x2000000 /* log debugging stuff */
-
-#define MAX_IPHDR 128 /* max TCP/IP header size */
-#define MAX_VJHDR 20 /* max VJ compressed header size (?) */
-
-#undef MIN /* just in case */
-#define MIN(a, b) ((a) < (b)? (a): (b))
-
-/*
- * List of compressors we know about.
- */
-
-#if DO_BSD_COMPRESS
-extern struct compressor ppp_bsd_compress;
-#endif
-#if DO_DEFLATE
-extern struct compressor ppp_deflate, ppp_deflate_draft;
-#endif
-
-struct compressor *ppp_compressors[] = {
-#if DO_BSD_COMPRESS
- &ppp_bsd_compress,
-#endif
-#if DO_DEFLATE
- &ppp_deflate,
- &ppp_deflate_draft,
-#endif
- NULL
-};
-
-/*
- * STREAMS module entry points.
- */
-MOD_OPEN(ppp_comp_open)
-{
- comp_state_t *cp;
-#ifdef __osf__
- thread_t thread;
-#endif
-
- if (q->q_ptr == NULL) {
- cp = (comp_state_t *) ALLOC_SLEEP(sizeof(comp_state_t));
- if (cp == NULL)
- OPEN_ERROR(ENOSR);
- bzero((caddr_t)cp, sizeof(comp_state_t));
- WR(q)->q_ptr = q->q_ptr = (caddr_t) cp;
- cp->mru = PPP_MRU;
- cp->mtu = PPP_MTU;
- cp->xstate = NULL;
- cp->rstate = NULL;
- vj_compress_init(&cp->vj_comp, -1);
-#ifdef __osf__
- if (!(thread = kernel_thread_w_arg(first_task, ppp_comp_alloc, (void *)cp)))
- OPEN_ERROR(ENOSR);
- cp->thread = thread;
-#endif
- ++ppp_comp_count;
- qprocson(q);
- }
- return 0;
-}
-
-MOD_CLOSE(ppp_comp_close)
-{
- comp_state_t *cp;
-
- qprocsoff(q);
- cp = (comp_state_t *) q->q_ptr;
- if (cp != NULL) {
- if (cp->xstate != NULL)
- (*cp->xcomp->comp_free)(cp->xstate);
- if (cp->rstate != NULL)
- (*cp->rcomp->decomp_free)(cp->rstate);
-#ifdef __osf__
- if (!cp->thread)
- printf("ppp_comp_close: NULL thread!\n");
- else
- thread_terminate(cp->thread);
-#endif
- FREE(cp, sizeof(comp_state_t));
- q->q_ptr = NULL;
- OTHERQ(q)->q_ptr = NULL;
- --ppp_comp_count;
- }
- return 0;
-}
-
-#ifdef __osf__
-
-/* thread for calling back to a compressor's memory allocator
- * Needed for Digital UNIX since it's VM can't handle requests
- * for large amounts of memory without blocking. The thread
- * provides a context in which we can call a memory allocator
- * that may block.
- */
-static void
-ppp_comp_alloc(comp_state_t *cp)
-{
- int len, cmd;
- unsigned char *compressor_options;
- thread_t thread;
- void *(*comp_allocator)();
-
-
-#if defined(MAJOR_VERSION) && (MAJOR_VERSION <= 2)
-
- /* In 2.x and earlier the argument gets passed
- * in the thread structure itself. Yuck.
- */
- thread = current_thread();
- cp = thread->reply_port;
- thread->reply_port = PORT_NULL;
-
-#endif
-
- for (;;) {
- assert_wait((vm_offset_t)&cp->memreq.thread_status, TRUE);
- thread_block();
-
- if (thread_should_halt(current_thread()))
- thread_halt_self();
- cmd = cp->memreq.cmd;
- compressor_options = &cp->memreq.comp_opts[0];
- len = compressor_options[1];
- if (cmd == PPPIO_XCOMP) {
- cp->memreq.returned_mem = cp->xcomp->comp_alloc(compressor_options, len);
- if (!cp->memreq.returned_mem) {
- cp->memreq.thread_status = ENOSR;
- } else {
- cp->memreq.thread_status = 0;
- }
- } else {
- cp->memreq.returned_mem = cp->rcomp->decomp_alloc(compressor_options, len);
- if (!cp->memreq.returned_mem) {
- cp->memreq.thread_status = ENOSR;
- } else {
- cp->memreq.thread_status = 0;
- }
- }
- }
-}
-
-#endif /* __osf__ */
-
-/* here's the deal with memory allocation under Digital UNIX.
- * Some other may also benefit from this...
- * We can't ask for huge chunks of memory in a context where
- * the caller can't be put to sleep (like, here.) The alloc
- * is likely to fail. Instead we do this: the first time we
- * get called, kick off a thread to do the allocation. Return
- * immediately to the caller with EAGAIN, as an indication that
- * they should send down the ioctl again. By the time the
- * second call comes in it's likely that the memory allocation
- * thread will have returned with the requested memory. We will
- * continue to return EAGAIN however until the thread has completed.
- * When it has, we return zero (and the memory) if the allocator
- * was successful and ENOSR otherwise.
- *
- * Callers of the RCOMP and XCOMP ioctls are encouraged (but not
- * required) to loop for some number of iterations with a small
- * delay in the loop body (for instance a 1/10-th second "sleep"
- * via select.)
- */
-static int
-ppp_comp_wput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- struct iocblk *iop;
- comp_state_t *cp;
- int error, len, n;
- int flags, mask;
- mblk_t *np;
- struct compressor **comp;
- struct ppp_stats *psp;
- struct ppp_comp_stats *csp;
- unsigned char *opt_data;
- int nxslots, nrslots;
-
- cp = (comp_state_t *) q->q_ptr;
- if (cp == 0) {
- DPRINT("cp == 0 in ppp_comp_wput\n");
- freemsg(mp);
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
-
- case M_DATA:
- putq(q, mp);
- break;
-
- case M_IOCTL:
- iop = (struct iocblk *) mp->b_rptr;
- error = EINVAL;
- switch (iop->ioc_cmd) {
-
- case PPPIO_CFLAGS:
- /* set/get CCP state */
- if (iop->ioc_count != 2 * sizeof(int))
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ppp_comp_wput/%d: PPPIO_CFLAGS b_cont = 0!\n", cp->unit);
- break;
- }
- flags = ((int *) mp->b_cont->b_rptr)[0];
- mask = ((int *) mp->b_cont->b_rptr)[1];
- cp->flags = (cp->flags & ~mask) | (flags & mask);
- if ((mask & CCP_ISOPEN) && (flags & CCP_ISOPEN) == 0) {
- if (cp->xstate != NULL) {
- (*cp->xcomp->comp_free)(cp->xstate);
- cp->xstate = NULL;
- }
- if (cp->rstate != NULL) {
- (*cp->rcomp->decomp_free)(cp->rstate);
- cp->rstate = NULL;
- }
- cp->flags &= ~CCP_ISUP;
- }
- error = 0;
- iop->ioc_count = sizeof(int);
- ((int *) mp->b_cont->b_rptr)[0] = cp->flags;
- mp->b_cont->b_wptr = mp->b_cont->b_rptr + sizeof(int);
- break;
-
- case PPPIO_VJINIT:
- /*
- * Initialize VJ compressor/decompressor
- */
- if (iop->ioc_count != 2)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ppp_comp_wput/%d: PPPIO_VJINIT b_cont = 0!\n", cp->unit);
- break;
- }
- nxslots = mp->b_cont->b_rptr[0] + 1;
- nrslots = mp->b_cont->b_rptr[1] + 1;
- if (nxslots > MAX_STATES || nrslots > MAX_STATES)
- break;
- vj_compress_init(&cp->vj_comp, nxslots);
- cp->vj_last_ierrors = cp->stats.ppp_ierrors;
- error = 0;
- iop->ioc_count = 0;
- break;
-
- case PPPIO_XCOMP:
- case PPPIO_RCOMP:
- if (iop->ioc_count <= 0)
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ppp_comp_wput/%d: PPPIO_[XR]COMP b_cont = 0!\n", cp->unit);
- break;
- }
- opt_data = mp->b_cont->b_rptr;
- len = mp->b_cont->b_wptr - opt_data;
- if (len > iop->ioc_count)
- len = iop->ioc_count;
- if (opt_data[1] < 2 || opt_data[1] > len)
- break;
- for (comp = ppp_compressors; *comp != NULL; ++comp)
- if ((*comp)->compress_proto == opt_data[0]) {
- /* here's the handler! */
- error = 0;
-#ifndef __osf__
- if (iop->ioc_cmd == PPPIO_XCOMP) {
- /* A previous call may have fetched memory for a compressor
- * that's now being retired or reset. Free it using it's
- * mechanism for freeing stuff.
- */
- if (cp->xstate != NULL) {
- (*cp->xcomp->comp_free)(cp->xstate);
- cp->xstate = NULL;
- }
- cp->xcomp = *comp;
- cp->xstate = (*comp)->comp_alloc(opt_data, len);
- if (cp->xstate == NULL)
- error = ENOSR;
- } else {
- if (cp->rstate != NULL) {
- (*cp->rcomp->decomp_free)(cp->rstate);
- cp->rstate = NULL;
- }
- cp->rcomp = *comp;
- cp->rstate = (*comp)->decomp_alloc(opt_data, len);
- if (cp->rstate == NULL)
- error = ENOSR;
- }
-#else
- if ((error = cp->memreq.thread_status) != EAGAIN)
- if (iop->ioc_cmd == PPPIO_XCOMP) {
- if (cp->xstate) {
- (*cp->xcomp->comp_free)(cp->xstate);
- cp->xstate = 0;
- }
- /* sanity check for compressor options
- */
- if (sizeof (cp->memreq.comp_opts) < len) {
- printf("can't handle options for compressor %d (%d)\n", opt_data[0],
- opt_data[1]);
- cp->memreq.thread_status = ENOSR;
- cp->memreq.returned_mem = 0;
- }
- /* fill in request for the thread and kick it off
- */
- if (cp->memreq.thread_status == 0 && !cp->memreq.returned_mem) {
- bcopy(opt_data, cp->memreq.comp_opts, len);
- cp->memreq.cmd = PPPIO_XCOMP;
- cp->xcomp = *comp;
- error = cp->memreq.thread_status = EAGAIN;
- thread_wakeup((vm_offset_t)&cp->memreq.thread_status);
- } else {
- cp->xstate = cp->memreq.returned_mem;
- cp->memreq.returned_mem = 0;
- cp->memreq.thread_status = 0;
- }
- } else {
- if (cp->rstate) {
- (*cp->rcomp->decomp_free)(cp->rstate);
- cp->rstate = NULL;
- }
- if (sizeof (cp->memreq.comp_opts) < len) {
- printf("can't handle options for compressor %d (%d)\n", opt_data[0],
- opt_data[1]);
- cp->memreq.thread_status = ENOSR;
- cp->memreq.returned_mem = 0;
- }
- if (cp->memreq.thread_status == 0 && !cp->memreq.returned_mem) {
- bcopy(opt_data, cp->memreq.comp_opts, len);
- cp->memreq.cmd = PPPIO_RCOMP;
- cp->rcomp = *comp;
- error = cp->memreq.thread_status = EAGAIN;
- thread_wakeup((vm_offset_t)&cp->memreq.thread_status);
- } else {
- cp->rstate = cp->memreq.returned_mem;
- cp->memreq.returned_mem = 0;
- cp->memreq.thread_status = 0;
- }
- }
-#endif
- break;
- }
- iop->ioc_count = 0;
- break;
-
- case PPPIO_GETSTAT:
- if ((cp->flags & LAST_MOD) == 0) {
- error = -1; /* let the ppp_ahdl module handle it */
- break;
- }
- np = allocb(sizeof(struct ppp_stats), BPRI_HI);
- if (np == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = np;
- psp = (struct ppp_stats *) np->b_wptr;
- np->b_wptr += sizeof(struct ppp_stats);
- iop->ioc_count = sizeof(struct ppp_stats);
- psp->p = cp->stats;
- psp->vj = cp->vj_comp.stats;
- error = 0;
- break;
-
- case PPPIO_GETCSTAT:
- np = allocb(sizeof(struct ppp_comp_stats), BPRI_HI);
- if (np == 0) {
- error = ENOSR;
- break;
- }
- if (mp->b_cont != 0)
- freemsg(mp->b_cont);
- mp->b_cont = np;
- csp = (struct ppp_comp_stats *) np->b_wptr;
- np->b_wptr += sizeof(struct ppp_comp_stats);
- iop->ioc_count = sizeof(struct ppp_comp_stats);
- bzero((caddr_t)csp, sizeof(struct ppp_comp_stats));
- if (cp->xstate != 0)
- (*cp->xcomp->comp_stat)(cp->xstate, &csp->c);
- if (cp->rstate != 0)
- (*cp->rcomp->decomp_stat)(cp->rstate, &csp->d);
- error = 0;
- break;
-
- case PPPIO_DEBUG:
- if (iop->ioc_count != sizeof(int))
- break;
- if (mp->b_cont == 0) {
- DPRINT1("ppp_comp_wput/%d: PPPIO_DEBUG b_cont = 0!\n", cp->unit);
- break;
- }
- n = *(int *)mp->b_cont->b_rptr;
- if (n == PPPDBG_LOG + PPPDBG_COMP) {
- DPRINT1("ppp_comp%d: debug log enabled\n", cp->unit);
- cp->flags |= DBGLOG;
- error = 0;
- iop->ioc_count = 0;
- } else {
- error = -1;
- }
- break;
-
- case PPPIO_LASTMOD:
- cp->flags |= LAST_MOD;
- error = 0;
- break;
-
- default:
- error = -1;
- break;
- }
-
- if (error < 0)
- putnext(q, mp);
- else if (error == 0) {
- mp->b_datap->db_type = M_IOCACK;
- qreply(q, mp);
- } else {
- mp->b_datap->db_type = M_IOCNAK;
- iop->ioc_error = error;
- iop->ioc_count = 0;
- qreply(q, mp);
- }
- break;
-
- case M_CTL:
- switch (*mp->b_rptr) {
- case PPPCTL_MTU:
- cp->mtu = ((unsigned short *)mp->b_rptr)[1];
- break;
- case PPPCTL_MRU:
- cp->mru = ((unsigned short *)mp->b_rptr)[1];
- break;
- case PPPCTL_UNIT:
- cp->unit = mp->b_rptr[1];
- break;
- }
- putnext(q, mp);
- break;
-
- default:
- putnext(q, mp);
- }
-
- return 0;
-}
-
-static int
-ppp_comp_wsrv(q)
- queue_t *q;
-{
- mblk_t *mp, *cmp = NULL;
- comp_state_t *cp;
- int len, proto, type, hlen, code;
- struct ip *ip;
- unsigned char *vjhdr, *dp;
-
- cp = (comp_state_t *) q->q_ptr;
- if (cp == 0) {
- DPRINT("cp == 0 in ppp_comp_wsrv\n");
- return 0;
- }
-
- while ((mp = getq(q)) != 0) {
- /* assert(mp->b_datap->db_type == M_DATA) */
-#ifdef PRIOQ
- if (!bcanputnext(q,mp->b_band))
-#else
- if (!canputnext(q))
-#endif PRIOQ
- {
- putbq(q, mp);
- break;
- }
-
- /*
- * First check the packet length and work out what the protocol is.
- */
- len = msgdsize(mp);
- if (len < PPP_HDRLEN) {
- DPRINT1("ppp_comp_wsrv: bogus short packet (%d)\n", len);
- freemsg(mp);
- cp->stats.ppp_oerrors++;
- putctl1(RD(q)->q_next, M_CTL, PPPCTL_OERROR);
- continue;
- }
- proto = (MSG_BYTE(mp, 2) << 8) + MSG_BYTE(mp, 3);
-
- /*
- * Make sure we've got enough data in the first mblk
- * and that we are its only user.
- */
- if (proto == PPP_CCP)
- hlen = len;
- else if (proto == PPP_IP)
- hlen = PPP_HDRLEN + MAX_IPHDR;
- else
- hlen = PPP_HDRLEN;
- if (hlen > len)
- hlen = len;
- if (mp->b_wptr < mp->b_rptr + hlen || mp->b_datap->db_ref > 1) {
- PULLUP(mp, hlen);
- if (mp == 0) {
- DPRINT1("ppp_comp_wsrv: pullup failed (%d)\n", hlen);
- cp->stats.ppp_oerrors++;
- putctl1(RD(q)->q_next, M_CTL, PPPCTL_OERROR);
- continue;
- }
- }
-
- /*
- * Do VJ compression if requested.
- */
- if (proto == PPP_IP && (cp->flags & COMP_VJC)) {
- ip = (struct ip *) (mp->b_rptr + PPP_HDRLEN);
- if (ip->ip_p == IPPROTO_TCP) {
- type = vj_compress_tcp(ip, len - PPP_HDRLEN, &cp->vj_comp,
- (cp->flags & COMP_VJCCID), &vjhdr);
- switch (type) {
- case TYPE_UNCOMPRESSED_TCP:
- mp->b_rptr[3] = proto = PPP_VJC_UNCOMP;
- break;
- case TYPE_COMPRESSED_TCP:
- dp = vjhdr - PPP_HDRLEN;
- dp[1] = mp->b_rptr[1]; /* copy control field */
- dp[0] = mp->b_rptr[0]; /* copy address field */
- dp[2] = 0; /* set protocol field */
- dp[3] = proto = PPP_VJC_COMP;
- mp->b_rptr = dp;
- break;
- }
- }
- }
-
- /*
- * Do packet compression if enabled.
- */
- if (proto == PPP_CCP)
- ppp_comp_ccp(q, mp, 0);
- else if (proto != PPP_LCP && (cp->flags & CCP_COMP_RUN)
- && cp->xstate != NULL) {
- len = msgdsize(mp);
- (*cp->xcomp->compress)(cp->xstate, &cmp, mp, len,
- (cp->flags & CCP_ISUP? cp->mtu + PPP_HDRLEN: 0));
- if (cmp != NULL) {
-#ifdef PRIOQ
- cmp->b_band=mp->b_band;
-#endif PRIOQ
- freemsg(mp);
- mp = cmp;
- }
- }
-
- /*
- * Do address/control and protocol compression if enabled.
- */
- if ((cp->flags & COMP_AC)
- && !(proto == PPP_LCP && LCP_USE_DFLT(mp))) {
- mp->b_rptr += 2; /* drop the address & ctrl fields */
- if (proto < 0x100 && (cp->flags & COMP_PROT))
- ++mp->b_rptr; /* drop the high protocol byte */
- } else if (proto < 0x100 && (cp->flags & COMP_PROT)) {
- /* shuffle up the address & ctrl fields */
- mp->b_rptr[2] = mp->b_rptr[1];
- mp->b_rptr[1] = mp->b_rptr[0];
- ++mp->b_rptr;
- }
-
- cp->stats.ppp_opackets++;
- cp->stats.ppp_obytes += msgdsize(mp);
- putnext(q, mp);
- }
-
- return 0;
-}
-
-static int
-ppp_comp_rput(q, mp)
- queue_t *q;
- mblk_t *mp;
-{
- comp_state_t *cp;
- struct iocblk *iop;
- struct ppp_stats *psp;
-
- cp = (comp_state_t *) q->q_ptr;
- if (cp == 0) {
- DPRINT("cp == 0 in ppp_comp_rput\n");
- freemsg(mp);
- return 0;
- }
-
- switch (mp->b_datap->db_type) {
-
- case M_DATA:
- putq(q, mp);
- break;
-
- case M_IOCACK:
- iop = (struct iocblk *) mp->b_rptr;
- switch (iop->ioc_cmd) {
- case PPPIO_GETSTAT:
- /*
- * Catch this on the way back from the ppp_ahdl module
- * so we can fill in the VJ stats.
- */
- if (mp->b_cont == 0 || iop->ioc_count != sizeof(struct ppp_stats))
- break;
- psp = (struct ppp_stats *) mp->b_cont->b_rptr;
- psp->vj = cp->vj_comp.stats;
- break;
- }
- putnext(q, mp);
- break;
-
- case M_CTL:
- switch (mp->b_rptr[0]) {
- case PPPCTL_IERROR:
- ++cp->stats.ppp_ierrors;
- break;
- case PPPCTL_OERROR:
- ++cp->stats.ppp_oerrors;
- break;
- }
- putnext(q, mp);
- break;
-
- default:
- putnext(q, mp);
- }
-
- return 0;
-}
-
-static int
-ppp_comp_rsrv(q)
- queue_t *q;
-{
- int proto, rv, i;
- mblk_t *mp, *dmp = NULL, *np;
- uchar_t *dp, *iphdr;
- comp_state_t *cp;
- int len, hlen, vjlen;
- u_int iphlen;
-
- cp = (comp_state_t *) q->q_ptr;
- if (cp == 0) {
- DPRINT("cp == 0 in ppp_comp_rsrv\n");
- return 0;
- }
-
- while ((mp = getq(q)) != 0) {
- /* assert(mp->b_datap->db_type == M_DATA) */
- if (!canputnext(q)) {
- putbq(q, mp);
- break;
- }
-
- len = msgdsize(mp);
- cp->stats.ppp_ibytes += len;
- cp->stats.ppp_ipackets++;
-
- /*
- * First work out the protocol and where the PPP header ends.
- */
- i = 0;
- proto = MSG_BYTE(mp, 0);
- if (proto == PPP_ALLSTATIONS) {
- i = 2;
- proto = MSG_BYTE(mp, 2);
- }
- if ((proto & 1) == 0) {
- ++i;
- proto = (proto << 8) + MSG_BYTE(mp, i);
- }
- hlen = i + 1;
-
- /*
- * Now reconstruct a complete, contiguous PPP header at the
- * start of the packet.
- */
- if (hlen < ((cp->flags & DECOMP_AC)? 0: 2)
- + ((cp->flags & DECOMP_PROT)? 1: 2)) {
- /* count these? */
- goto bad;
- }
- if (mp->b_rptr + hlen > mp->b_wptr) {
- adjmsg(mp, hlen); /* XXX check this call */
- hlen = 0;
- }
- if (hlen != PPP_HDRLEN) {
- /*
- * We need to put some bytes on the front of the packet
- * to make a full-length PPP header.
- * If we can put them in *mp, we do, otherwise we
- * tack another mblk on the front.
- * XXX we really shouldn't need to carry around
- * the address and control at this stage.
- */
- dp = mp->b_rptr + hlen - PPP_HDRLEN;
- if (dp < mp->b_datap->db_base || mp->b_datap->db_ref > 1) {
- np = allocb(PPP_HDRLEN, BPRI_MED);
- if (np == 0)
- goto bad;
- np->b_cont = mp;
- mp->b_rptr += hlen;
- mp = np;
- dp = mp->b_wptr;
- mp->b_wptr += PPP_HDRLEN;
- } else
- mp->b_rptr = dp;
-
- dp[0] = PPP_ALLSTATIONS;
- dp[1] = PPP_UI;
- dp[2] = proto >> 8;
- dp[3] = proto;
- }
-
- /*
- * Now see if we have a compressed packet to decompress,
- * or a CCP packet to take notice of.
- */
- proto = PPP_PROTOCOL(mp->b_rptr);
- if (proto == PPP_CCP) {
- len = msgdsize(mp);
- if (mp->b_wptr < mp->b_rptr + len) {
- PULLUP(mp, len);
- if (mp == 0)
- goto bad;
- }
- ppp_comp_ccp(q, mp, 1);
- } else if (proto == PPP_COMP) {
- if ((cp->flags & CCP_ISUP)
- && (cp->flags & CCP_DECOMP_RUN) && cp->rstate
- && (cp->flags & CCP_ERR) == 0) {
- rv = (*cp->rcomp->decompress)(cp->rstate, mp, &dmp);
- switch (rv) {
- case DECOMP_OK:
- freemsg(mp);
- mp = dmp;
- if (mp == NULL) {
- /* no error, but no packet returned either. */
- continue;
- }
- break;
- case DECOMP_ERROR:
- cp->flags |= CCP_ERROR;
- ++cp->stats.ppp_ierrors;
- putctl1(q->q_next, M_CTL, PPPCTL_IERROR);
- break;
- case DECOMP_FATALERROR:
- cp->flags |= CCP_FATALERROR;
- ++cp->stats.ppp_ierrors;
- putctl1(q->q_next, M_CTL, PPPCTL_IERROR);
- break;
- }
- }
- } else if (cp->rstate && (cp->flags & CCP_DECOMP_RUN)) {
- (*cp->rcomp->incomp)(cp->rstate, mp);
- }
-
- /*
- * Now do VJ decompression.
- */
- proto = PPP_PROTOCOL(mp->b_rptr);
- if (proto == PPP_VJC_COMP || proto == PPP_VJC_UNCOMP) {
- len = msgdsize(mp) - PPP_HDRLEN;
- if ((cp->flags & DECOMP_VJC) == 0 || len <= 0)
- goto bad;
-
- /*
- * Advance past the ppp header.
- * Here we assume that the whole PPP header is in the first mblk.
- */
- np = mp;
- dp = np->b_rptr + PPP_HDRLEN;
- if (dp >= mp->b_wptr) {
- np = np->b_cont;
- dp = np->b_rptr;
- }
-
- /*
- * Make sure we have sufficient contiguous data at this point.
- */
- hlen = (proto == PPP_VJC_COMP)? MAX_VJHDR: MAX_IPHDR;
- if (hlen > len)
- hlen = len;
- if (np->b_wptr < dp + hlen || np->b_datap->db_ref > 1) {
- PULLUP(mp, hlen + PPP_HDRLEN);
- if (mp == 0)
- goto bad;
- np = mp;
- dp = np->b_rptr + PPP_HDRLEN;
- }
-
- if (proto == PPP_VJC_COMP) {
- /*
- * Decompress VJ-compressed packet.
- * First reset compressor if an input error has occurred.
- */
- if (cp->stats.ppp_ierrors != cp->vj_last_ierrors) {
- if (cp->flags & DBGLOG)
- DPRINT1("ppp%d: resetting VJ\n", cp->unit);
- vj_uncompress_err(&cp->vj_comp);
- cp->vj_last_ierrors = cp->stats.ppp_ierrors;
- }
-
- vjlen = vj_uncompress_tcp(dp, np->b_wptr - dp, len,
- &cp->vj_comp, &iphdr, &iphlen);
- if (vjlen < 0) {
- if (cp->flags & DBGLOG)
- DPRINT2("ppp%d: vj_uncomp_tcp failed, pkt len %d\n",
- cp->unit, len);
- ++cp->vj_last_ierrors; /* so we don't reset next time */
- goto bad;
- }
-
- /* drop ppp and vj headers off */
- if (mp != np) {
- freeb(mp);
- mp = np;
- }
- mp->b_rptr = dp + vjlen;
-
- /* allocate a new mblk for the ppp and ip headers */
- if ((np = allocb(iphlen + PPP_HDRLEN + 4, BPRI_MED)) == 0)
- goto bad;
- dp = np->b_rptr; /* prepend mblk with TCP/IP hdr */
- dp[0] = PPP_ALLSTATIONS; /* reconstruct PPP header */
- dp[1] = PPP_UI;
- dp[2] = PPP_IP >> 8;
- dp[3] = PPP_IP;
- bcopy((caddr_t)iphdr, (caddr_t)dp + PPP_HDRLEN, iphlen);
- np->b_wptr = dp + iphlen + PPP_HDRLEN;
- np->b_cont = mp;
-
- /* XXX there seems to be a bug which causes panics in strread
- if we make an mbuf with only the IP header in it :-( */
- if (mp->b_wptr - mp->b_rptr > 4) {
- bcopy((caddr_t)mp->b_rptr, (caddr_t)np->b_wptr, 4);
- mp->b_rptr += 4;
- np->b_wptr += 4;
- } else {
- bcopy((caddr_t)mp->b_rptr, (caddr_t)np->b_wptr,
- mp->b_wptr - mp->b_rptr);
- np->b_wptr += mp->b_wptr - mp->b_rptr;
- np->b_cont = mp->b_cont;
- freeb(mp);
- }
-
- mp = np;
-
- } else {
- /*
- * "Decompress" a VJ-uncompressed packet.
- */
- cp->vj_last_ierrors = cp->stats.ppp_ierrors;
- if (!vj_uncompress_uncomp(dp, hlen, &cp->vj_comp)) {
- if (cp->flags & DBGLOG)
- DPRINT2("ppp%d: vj_uncomp_uncomp failed, pkt len %d\n",
- cp->unit, len);
- ++cp->vj_last_ierrors; /* don't need to reset next time */
- goto bad;
- }
- mp->b_rptr[3] = PPP_IP; /* fix up the PPP protocol field */
- }
- }
-
- putnext(q, mp);
- continue;
-
- bad:
- if (mp != 0)
- freemsg(mp);
- cp->stats.ppp_ierrors++;
- putctl1(q->q_next, M_CTL, PPPCTL_IERROR);
- }
-
- return 0;
-}
-
-/*
- * Handle a CCP packet being sent or received.
- * Here all the data in the packet is in a single mbuf.
- */
-static void
-ppp_comp_ccp(q, mp, rcvd)
- queue_t *q;
- mblk_t *mp;
- int rcvd;
-{
- int len, clen;
- comp_state_t *cp;
- unsigned char *dp;
-
- len = msgdsize(mp);
- if (len < PPP_HDRLEN + CCP_HDRLEN)
- return;
-
- cp = (comp_state_t *) q->q_ptr;
- dp = mp->b_rptr + PPP_HDRLEN;
- len -= PPP_HDRLEN;
- clen = CCP_LENGTH(dp);
- if (clen > len)
- return;
-
- switch (CCP_CODE(dp)) {
- case CCP_CONFREQ:
- case CCP_TERMREQ:
- case CCP_TERMACK:
- cp->flags &= ~CCP_ISUP;
- break;
-
- case CCP_CONFACK:
- if ((cp->flags & (CCP_ISOPEN | CCP_ISUP)) == CCP_ISOPEN
- && clen >= CCP_HDRLEN + CCP_OPT_MINLEN
- && clen >= CCP_HDRLEN + CCP_OPT_LENGTH(dp + CCP_HDRLEN)) {
- if (!rcvd) {
- if (cp->xstate != NULL
- && (*cp->xcomp->comp_init)
- (cp->xstate, dp + CCP_HDRLEN, clen - CCP_HDRLEN,
- cp->unit, 0, ((cp->flags & DBGLOG) != 0)))
- cp->flags |= CCP_COMP_RUN;
- } else {
- if (cp->rstate != NULL
- && (*cp->rcomp->decomp_init)
- (cp->rstate, dp + CCP_HDRLEN, clen - CCP_HDRLEN,
- cp->unit, 0, cp->mru, ((cp->flags & DBGLOG) != 0)))
- cp->flags = (cp->flags & ~CCP_ERR) | CCP_DECOMP_RUN;
- }
- }
- break;
-
- case CCP_RESETACK:
- if (cp->flags & CCP_ISUP) {
- if (!rcvd) {
- if (cp->xstate && (cp->flags & CCP_COMP_RUN))
- (*cp->xcomp->comp_reset)(cp->xstate);
- } else {
- if (cp->rstate && (cp->flags & CCP_DECOMP_RUN)) {
- (*cp->rcomp->decomp_reset)(cp->rstate);
- cp->flags &= ~CCP_ERROR;
- }
- }
- }
- break;
- }
-}
-
-#if 0
-dump_msg(mp)
- mblk_t *mp;
-{
- dblk_t *db;
-
- while (mp != 0) {
- db = mp->b_datap;
- DPRINT2("mp=%x cont=%x ", mp, mp->b_cont);
- DPRINT3("rptr=%x wptr=%x datap=%x\n", mp->b_rptr, mp->b_wptr, db);
- DPRINT2(" base=%x lim=%x", db->db_base, db->db_lim);
- DPRINT2(" ref=%d type=%d\n", db->db_ref, db->db_type);
- mp = mp->b_cont;
- }
-}
-#endif
-
-static int
-msg_byte(mp, i)
- mblk_t *mp;
- unsigned int i;
-{
- while (mp != 0 && i >= mp->b_wptr - mp->b_rptr)
- mp = mp->b_cont;
- if (mp == 0)
- return -1;
- return mp->b_rptr[i];
-}
diff --git a/mdk-stage1/ppp/solaris/ppp_comp_mod.c b/mdk-stage1/ppp/solaris/ppp_comp_mod.c
deleted file mode 100644
index 83ff8e252..000000000
--- a/mdk-stage1/ppp/solaris/ppp_comp_mod.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * ppp_comp_mod.c - modload support for PPP compression STREAMS module.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under Solaris 2.
- */
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/conf.h>
-#include <sys/modctl.h>
-#include <sys/sunddi.h>
-
-extern struct streamtab ppp_compinfo;
-
-static struct fmodsw fsw = {
- "ppp_comp",
- &ppp_compinfo,
- D_NEW | D_MP | D_MTQPAIR
-};
-
-extern struct mod_ops mod_strmodops;
-
-static struct modlstrmod modlstrmod = {
- &mod_strmodops,
- "PPP compression module",
- &fsw
-};
-
-static struct modlinkage modlinkage = {
- MODREV_1,
- (void *) &modlstrmod,
- NULL
-};
-
-/*
- * Entry points for modloading.
- */
-int
-_init(void)
-{
- return mod_install(&modlinkage);
-}
-
-int
-_fini(void)
-{
- return mod_remove(&modlinkage);
-}
-
-int
-_info(mip)
- struct modinfo *mip;
-{
- return mod_info(&modlinkage, mip);
-}
diff --git a/mdk-stage1/ppp/solaris/ppp_mod.c b/mdk-stage1/ppp/solaris/ppp_mod.c
deleted file mode 100644
index a4b1538a5..000000000
--- a/mdk-stage1/ppp/solaris/ppp_mod.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * ppp_mod.c - modload support for PPP pseudo-device driver.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under Solaris 2.
- */
-
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/stat.h>
-#include <sys/conf.h>
-#include <sys/modctl.h>
-#include <sys/sunddi.h>
-#include <sys/ksynch.h>
-
-#ifdef __STDC__
-#define __P(x) x
-#else
-#define __P(x) ()
-#endif
-
-static int ppp_identify __P((dev_info_t *));
-static int ppp_attach __P((dev_info_t *, ddi_attach_cmd_t));
-static int ppp_detach __P((dev_info_t *, ddi_detach_cmd_t));
-static int ppp_devinfo __P((dev_info_t *, ddi_info_cmd_t, void *, void **));
-
-extern struct streamtab pppinfo;
-extern krwlock_t ppp_lower_lock;
-
-static dev_info_t *ppp_dip;
-
-static struct cb_ops cb_ppp_ops = {
- nulldev, nulldev, nodev, nodev, /* cb_open, ... */
- nodev, nodev, nodev, nodev, /* cb_dump, ... */
- nodev, nodev, nodev, nochpoll, /* cb_devmap, ... */
- ddi_prop_op, /* cb_prop_op */
- &pppinfo, /* cb_stream */
- D_NEW|D_MP|D_MTQPAIR|D_MTOUTPERIM|D_MTOCEXCL /* cb_flag */
-};
-
-static struct dev_ops ppp_ops = {
- DEVO_REV, /* devo_rev */
- 0, /* devo_refcnt */
- ppp_devinfo, /* devo_getinfo */
- ppp_identify, /* devo_identify */
- nulldev, /* devo_probe */
- ppp_attach, /* devo_attach */
- ppp_detach, /* devo_detach */
- nodev, /* devo_reset */
- &cb_ppp_ops, /* devo_cb_ops */
- NULL /* devo_bus_ops */
-};
-
-/*
- * Module linkage information
- */
-
-static struct modldrv modldrv = {
- &mod_driverops, /* says this is a pseudo driver */
- "PPP-2.3 multiplexing driver",
- &ppp_ops /* driver ops */
-};
-
-static struct modlinkage modlinkage = {
- MODREV_1,
- (void *) &modldrv,
- NULL
-};
-
-int
-_init(void)
-{
- return mod_install(&modlinkage);
-}
-
-int
-_fini(void)
-{
- return mod_remove(&modlinkage);
-}
-
-int
-_info(mip)
- struct modinfo *mip;
-{
- return mod_info(&modlinkage, mip);
-}
-
-static int
-ppp_identify(dip)
- dev_info_t *dip;
-{
- return strcmp(ddi_get_name(dip), "ppp") == 0? DDI_IDENTIFIED:
- DDI_NOT_IDENTIFIED;
-}
-
-static int
-ppp_attach(dip, cmd)
- dev_info_t *dip;
- ddi_attach_cmd_t cmd;
-{
-
- if (cmd != DDI_ATTACH)
- return DDI_FAILURE;
- if (ddi_create_minor_node(dip, "ppp", S_IFCHR, 0, DDI_PSEUDO, CLONE_DEV)
- == DDI_FAILURE) {
- ddi_remove_minor_node(dip, NULL);
- return DDI_FAILURE;
- }
- rw_init(&ppp_lower_lock, NULL, RW_DRIVER, NULL);
- return DDI_SUCCESS;
-}
-
-static int
-ppp_detach(dip, cmd)
- dev_info_t *dip;
- ddi_detach_cmd_t cmd;
-{
- rw_destroy(&ppp_lower_lock);
- ddi_remove_minor_node(dip, NULL);
- return DDI_SUCCESS;
-}
-
-static int
-ppp_devinfo(dip, cmd, arg, result)
- dev_info_t *dip;
- ddi_info_cmd_t cmd;
- void *arg;
- void **result;
-{
- int error;
-
- error = DDI_SUCCESS;
- switch (cmd) {
- case DDI_INFO_DEVT2DEVINFO:
- if (ppp_dip == NULL)
- error = DDI_FAILURE;
- else
- *result = (void *) ppp_dip;
- break;
- case DDI_INFO_DEVT2INSTANCE:
- *result = NULL;
- break;
- default:
- error = DDI_FAILURE;
- }
- return error;
-}
diff --git a/mdk-stage1/ppp/solaris/ppp_mod.h b/mdk-stage1/ppp/solaris/ppp_mod.h
deleted file mode 100644
index f0af00886..000000000
--- a/mdk-stage1/ppp/solaris/ppp_mod.h
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Miscellaneous definitions for PPP STREAMS modules.
- */
-
-/*
- * Macros for allocating and freeing kernel memory.
- */
-#ifdef SVR4 /* SVR4, including Solaris 2 */
-#include <sys/kmem.h>
-#define ALLOC_SLEEP(n) kmem_alloc((n), KM_SLEEP)
-#define ALLOC_NOSLEEP(n) kmem_alloc((n), KM_NOSLEEP)
-#define FREE(p, n) kmem_free((p), (n))
-#endif
-
-#ifdef SUNOS4
-#include <sys/kmem_alloc.h> /* SunOS 4.x */
-#define ALLOC_SLEEP(n) kmem_alloc((n), KMEM_SLEEP)
-#define ALLOC_NOSLEEP(n) kmem_alloc((n), KMEM_NOSLEEP)
-#define FREE(p, n) kmem_free((p), (n))
-#define NOTSUSER() (suser()? 0: EPERM)
-#define bcanputnext(q, band) canputnext((q))
-#endif /* SunOS 4 */
-
-#ifdef __osf__
-#include <sys/malloc.h>
-
-/* caution: this mirrors macros in sys/malloc.h, and uses interfaces
- * which are subject to change.
- * The problems are that:
- * - the official MALLOC macro wants the lhs of the assignment as an argument,
- * and it takes care of the assignment itself (yuck.)
- * - PPP insists on using "FREE" which conflicts with a macro of the same name.
- *
- */
-#ifdef BUCKETINDX /* V2.0 */
-#define ALLOC_SLEEP(n) (void *)malloc((u_long)(n), BUCKETP(n), M_DEVBUF, M_WAITOK)
-#define ALLOC_NOSLEEP(n) (void *)malloc((u_long)(n), BUCKETP(n), M_DEVBUF, M_NOWAIT)
-#else
-#define ALLOC_SLEEP(n) (void *)malloc((u_long)(n), BUCKETINDEX(n), M_DEVBUF, M_WAITOK)
-#define ALLOC_NOSLEEP(n) (void *)malloc((u_long)(n), BUCKETINDEX(n), M_DEVBUF, M_NOWAIT)
-#endif
-
-#define bcanputnext(q, band) canputnext((q))
-
-#ifdef FREE
-#undef FREE
-#endif
-#define FREE(p, n) free((void *)(p), M_DEVBUF)
-
-#define NO_DLPI 1
-
-#ifndef IFT_PPP
-#define IFT_PPP 0x17
-#endif
-
-#include <sys/proc.h>
-#define NOTSUSER() (suser(u.u_procp->p_rcred, &u.u_acflag) ? EPERM : 0)
-
-/* #include "ppp_osf.h" */
-
-#endif /* __osf__ */
-
-#ifdef AIX4
-#define ALLOC_SLEEP(n) xmalloc((n), 0, pinned_heap) /* AIX V4.x */
-#define ALLOC_NOSLEEP(n) xmalloc((n), 0, pinned_heap) /* AIX V4.x */
-#define FREE(p, n) xmfree((p), pinned_heap)
-#define NOTSUSER() (suser()? 0: EPERM)
-#endif /* AIX */
-
-/*
- * Macros for printing debugging stuff.
- */
-#ifdef DEBUG
-#if defined(SVR4) || defined(__osf__)
-#if defined(SNI)
-#include <sys/strlog.h>
-#define STRLOG_ID 4712
-#define DPRINT(f) strlog(STRLOG_ID, 0, 0, SL_TRACE, f)
-#define DPRINT1(f, a1) strlog(STRLOG_ID, 0, 0, SL_TRACE, f, a1)
-#define DPRINT2(f, a1, a2) strlog(STRLOG_ID, 0, 0, SL_TRACE, f, a1, a2)
-#define DPRINT3(f, a1, a2, a3) strlog(STRLOG_ID, 0, 0, SL_TRACE, f, a1, a2, a3)
-#else
-#define DPRINT(f) cmn_err(CE_CONT, f)
-#define DPRINT1(f, a1) cmn_err(CE_CONT, f, a1)
-#define DPRINT2(f, a1, a2) cmn_err(CE_CONT, f, a1, a2)
-#define DPRINT3(f, a1, a2, a3) cmn_err(CE_CONT, f, a1, a2, a3)
-#endif /* SNI */
-#else
-#define DPRINT(f) printf(f)
-#define DPRINT1(f, a1) printf(f, a1)
-#define DPRINT2(f, a1, a2) printf(f, a1, a2)
-#define DPRINT3(f, a1, a2, a3) printf(f, a1, a2, a3)
-#endif /* SVR4 or OSF */
-
-#else
-#define DPRINT(f) 0
-#define DPRINT1(f, a1) 0
-#define DPRINT2(f, a1, a2) 0
-#define DPRINT3(f, a1, a2, a3) 0
-#endif /* DEBUG */
-
-#ifndef SVR4
-typedef unsigned char uchar_t;
-typedef unsigned short ushort_t;
-#ifndef __osf__
-typedef int minor_t;
-#endif
-#endif
-
-/*
- * If we don't have multithreading support, define substitutes.
- */
-#ifndef D_MP
-# define qprocson(q)
-# define qprocsoff(q)
-# define put(q, mp) ((*(q)->q_qinfo->qi_putp)((q), (mp)))
-# define canputnext(q) canput((q)->q_next)
-# define qwriter(q, mp, func, scope) (func)((q), (mp))
-#endif
-
-#ifdef D_MP
-/* Use msgpullup if we have other multithreading support. */
-#define PULLUP(mp, len) \
- do { \
- mblk_t *np = msgpullup((mp), (len)); \
- freemsg((mp)); \
- mp = np; \
- } while (0)
-
-#else
-/* Use pullupmsg if we don't have any multithreading support. */
-#define PULLUP(mp, len) \
- do { \
- if (!pullupmsg((mp), (len))) { \
- freemsg((mp)); \
- mp = 0; \
- } \
- } while (0)
-#endif
-
-/*
- * How to declare the open and close procedures for a module.
- */
-#ifdef SVR4
-#define MOD_OPEN_DECL(name) \
-static int name __P((queue_t *, dev_t *, int, int, cred_t *))
-
-#define MOD_CLOSE_DECL(name) \
-static int name __P((queue_t *, int, cred_t *))
-
-#define MOD_OPEN(name) \
-static int name(q, devp, flag, sflag, credp) \
- queue_t *q; \
- dev_t *devp; \
- int flag, sflag; \
- cred_t *credp;
-
-#define MOD_CLOSE(name) \
-static int name(q, flag, credp) \
- queue_t *q; \
- int flag; \
- cred_t *credp;
-
-#define OPEN_ERROR(x) return (x)
-#define DRV_OPEN_OK(dev) return 0
-
-#define NOTSUSER() (drv_priv(credp))
-
-#else /* not SVR4 */
-#define MOD_OPEN_DECL(name) \
-static int name __P((queue_t *, int, int, int))
-
-#define MOD_CLOSE_DECL(name) \
-static int name __P((queue_t *, int))
-
-#define MOD_OPEN(name) \
-static int name(q, dev, flag, sflag) \
- queue_t *q; \
- int dev; \
- int flag, sflag;
-
-#define MOD_CLOSE(name) \
-static int name(q, flag) \
- queue_t *q; \
- int flag;
-
-#define OPEN_ERROR(x) { u.u_error = (x); return OPENFAIL; }
-#define DRV_OPEN_OK(dev) return (dev)
-
-#endif /* SVR4 */
diff --git a/mdk-stage1/ppp/sunos4/Makedefs b/mdk-stage1/ppp/sunos4/Makedefs
deleted file mode 100644
index 8b56a2b67..000000000
--- a/mdk-stage1/ppp/sunos4/Makedefs
+++ /dev/null
@@ -1,13 +0,0 @@
-#
-# defines common to several Makefiles
-#
-
-INSTALL= install -o root -g daemon
-
-BINDIR = /usr/local/etc
-MANDIR = /usr/local/man
-ETCDIR = /etc/ppp
-
-# To use gcc, uncomment the next line.
-#CC = gcc
-COPTS = -O
diff --git a/mdk-stage1/ppp/sunos4/Makefile b/mdk-stage1/ppp/sunos4/Makefile
deleted file mode 100644
index 701e24e14..000000000
--- a/mdk-stage1/ppp/sunos4/Makefile
+++ /dev/null
@@ -1,57 +0,0 @@
-#
-# Makefile for STREAMS modules for SunOS 4.
-#
-# $Id$
-#
-
-include Makedefs
-
-LD = /usr/bin/ld # make sure we don't get gnu ld
-
-# Defining __$(ARCH)__ is for gcc's broken version of sun/vddrv.h.
-ARCH = `/bin/arch -k`
-DEFINES= -DKERNEL -D_KERNEL -DSUNOS4 -D$(ARCH) -D__$(ARCH)__ \
- -DDEBUG -DNO_DLPI -DSNIT_SUPPORT
-CFLAGS= $(DEFINES) -I../include $(COPTS)
-
-MODULES= ppp_mod.o ppp_ahdl_mod.o ppp_comp_mod.o if_ppp_mod.o
-
-all: $(MODULES)
-
-ppp_mod.o: ppp.o ppp_vdcmd.o
- $(LD) -r -o ppp_mod.o ppp.o ppp_vdcmd.o
-
-ppp_ahdl_mod.o: ppp_ahdlc.o ppp_ahdlc_vdcmd.o
- $(LD) -r -o ppp_ahdl_mod.o ppp_ahdlc.o ppp_ahdlc_vdcmd.o
-
-COMP_OBJS = ppp_comp.o bsd-comp.o deflate.o zlib.o vjcompress.o \
- ppp_comp_vdcmd.o
-ppp_comp_mod.o: $(COMP_OBJS)
- $(LD) -r -o $@ $(COMP_OBJS)
-
-if_ppp.o: ../modules/if_ppp.c
- $(CC) $(CFLAGS) -c $?
-bsd-comp.o: ../modules/bsd-comp.c
- $(CC) $(CFLAGS) -c $?
-deflate.o: ../modules/deflate.c
- $(CC) $(CFLAGS) -c $?
-ppp.o: ../modules/ppp.c
- $(CC) $(CFLAGS) -c $?
-ppp_ahdlc.o: ../modules/ppp_ahdlc.c
- $(CC) $(CFLAGS) -c $?
-ppp_comp.o: ../modules/ppp_comp.c
- $(CC) $(CFLAGS) -c $?
-vjcompress.o: ../modules/vjcompress.c
- $(CC) $(CFLAGS) -c $?
-zlib.o: ../common/zlib.c
- $(CC) $(CFLAGS) -c $?
-
-if_ppp_mod.o: if_ppp.o if_ppp_vdcmd.o
- $(LD) -r -o if_ppp_mod.o if_ppp.o if_ppp_vdcmd.o
-
-install: all
- $(INSTALL) $(MODULES) $(BINDIR)
- ./ppp.INSTALL
-
-clean:
- rm -f ppp ppp_comp ppp_ahdl *.o *~ core
diff --git a/mdk-stage1/ppp/sunos4/Makefile.top b/mdk-stage1/ppp/sunos4/Makefile.top
deleted file mode 100644
index c86e0884d..000000000
--- a/mdk-stage1/ppp/sunos4/Makefile.top
+++ /dev/null
@@ -1,46 +0,0 @@
-#
-# ppp top level makefile
-#
-
-include sunos4/Makedefs
-
-all:
- cd chat; $(MAKE) all
- cd pppd; $(MAKE) all
- cd pppstats; $(MAKE) all
- cd sunos4; $(MAKE) all
- cd pppdump; $(MAKE) all
-
-install: $(BINDIR) $(MANDIR)/man8 install-progs install-etcppp
-
-install-progs:
- cd chat; $(MAKE) install
- cd pppd; $(MAKE) install
- cd pppstats; $(MAKE) install
- cd pppdump; $(MAKE) install
- cd sunos4; $(MAKE) install
-
-install-etcppp: $(ETCDIR) $(ETCDIR)/options $(ETCDIR)/pap-secrets \
- $(ETCDIR)/chap-secrets
-
-$(ETCDIR)/options:
- $(INSTALL) -c -m 644 etc.ppp/options $@
-$(ETCDIR)/pap-secrets:
- $(INSTALL) -c -m 600 etc.ppp/pap-secrets $@
-$(ETCDIR)/chap-secrets:
- $(INSTALL) -c -m 600 etc.ppp/chap-secrets $@
-
-$(BINDIR):
- $(INSTALL) -d -m 755 $@
-$(MANDIR)/man8:
- $(INSTALL) -d -m 755 $@
-$(ETCDIR):
- $(INSTALL) -d -m 755 $@
-
-clean:
- rm -f *~
- cd chat; $(MAKE) clean
- cd pppd; $(MAKE) clean
- cd pppstats; $(MAKE) clean
- cd sunos4; $(MAKE) clean
-
diff --git a/mdk-stage1/ppp/sunos4/if_ppp_vdcmd.c b/mdk-stage1/ppp/sunos4/if_ppp_vdcmd.c
deleted file mode 100644
index 2bf9710f4..000000000
--- a/mdk-stage1/ppp/sunos4/if_ppp_vdcmd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-#include <sys/types.h>
-#include <sys/errno.h>
-#include <sys/conf.h>
-#include <sun/vddrv.h>
-
-extern struct streamtab if_pppinfo;
-
-static struct vdldrv vd = {
- VDMAGIC_USER,
- "if_ppp"
-};
-
-static int fmodsw_index = -1;
-
-int
-if_ppp_vdcmd(fun, vdp, vdi, vds)
- unsigned int fun;
- struct vddrv *vdp;
- addr_t vdi;
- struct vdstat *vds;
-{
- int n, error;
-
- switch (fun) {
- case VDLOAD:
- vdp->vdd_vdtab = (struct vdlinkage *) &vd;
- if (fmodsw_index >= 0)
- return EBUSY;
- for (n = 0; n < fmodcnt; ++n)
- if (fmodsw[n].f_str == 0)
- break;
- if (n >= fmodcnt)
- return ENODEV;
- strncpy(fmodsw[n].f_name, vd.Drv_name, FMNAMESZ+1);
- fmodsw[n].f_str = &if_pppinfo;
- fmodsw_index = n;
- break;
-
- case VDUNLOAD:
- if (fmodsw_index <= 0)
- return EINVAL;
- error = if_ppp_unload();
- if (error != 0)
- return error;
- fmodsw[fmodsw_index].f_name[0] = 0;
- fmodsw[fmodsw_index].f_str = 0;
- fmodsw_index = -1;
- break;
-
- case VDSTAT:
- break;
-
- default:
- return EIO;
- }
- return 0;
-}
diff --git a/mdk-stage1/ppp/sunos4/ppp.INSTALL b/mdk-stage1/ppp/sunos4/ppp.INSTALL
deleted file mode 100755
index 0018bf8d0..000000000
--- a/mdk-stage1/ppp/sunos4/ppp.INSTALL
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/bin/sh
-
-# Script for loading, unloading, etc. ppp modules.
-
-moddir=/usr/local/etc
-etcppp=/etc/ppp
-
-PATH=/usr/etc:/usr/bin
-
-# Check that we're superuser
-touch /tmp/su$$
-if chown root /tmp/su$$ >/dev/null; then :
-else
- echo "$0: must be root."
- rm -f /tmp/su$$
- exit 1
-fi
-rm -f /tmp/su$$
-
-case "$0" in
-*ppp.INSTALL)
- if [ ! -f ppp.INSTALL ]; then
- echo "ppp.INSTALL: not found"
- exit 1
- fi
- for n in INSTALL LOAD UNLOAD MKDEV RMDEV; do
- if [ -h /dev/ppp.$n -o -f /dev/ppp.$n ]; then
- rm /dev/ppp.$n
- fi
- done
- cp ppp.INSTALL /dev
- for n in LOAD UNLOAD MKDEV RMDEV; do
- ln -s ppp.INSTALL /dev/ppp.$n
- done
- ;;
-
-*ppp.LOAD)
- if modstat | grep -w ppp >/dev/null; then
- echo "ppp driver is already loaded."
- exit 1
- fi
- if modstat | grep -w if_ppp >/dev/null; then
- echo "if_ppp module already loaded: not reloading."
- else
- echo -n "if_ppp: "
- modload $moddir/if_ppp_mod.o -sym -entry _if_ppp_vdcmd \
- -o $etcppp/if_ppp_mod
- fi
- echo -n "ppp: "
- modload $moddir/ppp_mod.o -sym -entry _ppp_vdcmd -exec /dev/ppp.MKDEV \
- -o $etcppp/ppp_mod
- echo -n "ppp_comp: "
- modload $moddir/ppp_comp_mod.o -sym -entry _ppp_comp_vdcmd \
- -o $etcppp/ppp_comp
- echo -n "ppp_ahdl: "
- modload $moddir/ppp_ahdl_mod.o -sym -entry _ppp_ahdlc_vdcmd \
- -o $etcppp/ppp_ahdl
- exit 0
- ;;
-
-*ppp.MKDEV)
- # args: module number, type, b-major, c-major
- if [ $# -ne 4 ]; then
- echo "Usage: $0 module-id module-type b-major c-major"
- exit 1
- fi
- if [ "$2" -ne "12345607" -a "$2" -ne "12345600" ]; then
- echo "$0: $2: bad module type"
- exit 1
- fi
- rm -f /dev/ppp
- # we "just know" that 37 is the major number of the clone driver
- mknod /dev/ppp c 37 $4
- chmod 644 /dev/ppp
- exit 0
- ;;
-
-*ppp.UNLOAD)
- stat=0
- if modstat | grep -w if_ppp >/dev/null; then
- echo "$0: not unloading if_ppp module."
- fi
- for mod in ppp ppp_comp ppp_ahdl; do
- id=`modstat | grep -w $mod | awk '{print $1}'`
- if [ x$id = x ]; then
- echo "$mod is not loaded."
- stat=1
- else
- modunload -id $id
- fi
- done
- exit $stat
- ;;
-
-*ppp.RMDEV)
- rm -f /dev/ppp
- exit 0
- ;;
-
-*)
- echo "Invocation names: ppp.INSTALL ppp.LOAD ppp.UNLOAD ppp.MKDEV ppp.RMDEV"
- exit 1
- ;;
-esac
diff --git a/mdk-stage1/ppp/sunos4/ppp_ahdlc_vdcmd.c b/mdk-stage1/ppp/sunos4/ppp_ahdlc_vdcmd.c
deleted file mode 100644
index 2dbe8262b..000000000
--- a/mdk-stage1/ppp/sunos4/ppp_ahdlc_vdcmd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-#include <sys/types.h>
-#include <sys/errno.h>
-#include <sys/conf.h>
-#include <sun/vddrv.h>
-
-extern struct streamtab ppp_ahdlcinfo;
-extern int ppp_ahdlc_count;
-
-static struct vdldrv vd = {
- VDMAGIC_USER,
- "ppp_ahdl"
-};
-
-static int fmodsw_index = -1;
-
-int
-ppp_ahdlc_vdcmd(fun, vdp, vdi, vds)
- unsigned int fun;
- struct vddrv *vdp;
- addr_t vdi;
- struct vdstat *vds;
-{
- int n;
-
- switch (fun) {
- case VDLOAD:
- vdp->vdd_vdtab = (struct vdlinkage *) &vd;
- if (fmodsw_index >= 0)
- return EBUSY;
- for (n = 0; n < fmodcnt; ++n)
- if (fmodsw[n].f_str == 0)
- break;
- if (n >= fmodcnt)
- return ENODEV;
- strncpy(fmodsw[n].f_name, vd.Drv_name, FMNAMESZ+1);
- fmodsw[n].f_str = &ppp_ahdlcinfo;
- fmodsw_index = n;
- break;
-
- case VDUNLOAD:
- if (ppp_ahdlc_count > 0)
- return EBUSY;
- if (fmodsw_index <= 0)
- return EINVAL;
- fmodsw[fmodsw_index].f_name[0] = 0;
- fmodsw[fmodsw_index].f_str = 0;
- fmodsw_index = -1;
- break;
-
- case VDSTAT:
- break;
-
- default:
- return EIO;
- }
- return 0;
-}
diff --git a/mdk-stage1/ppp/sunos4/ppp_comp_vdcmd.c b/mdk-stage1/ppp/sunos4/ppp_comp_vdcmd.c
deleted file mode 100644
index b81bc47e8..000000000
--- a/mdk-stage1/ppp/sunos4/ppp_comp_vdcmd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-#include <sys/types.h>
-#include <sys/errno.h>
-#include <sys/conf.h>
-#include <sun/vddrv.h>
-
-extern struct streamtab ppp_compinfo;
-extern int ppp_comp_count;
-
-static struct vdldrv vd = {
- VDMAGIC_USER,
- "ppp_comp"
-};
-
-static int fmodsw_index = -1;
-
-int
-ppp_comp_vdcmd(fun, vdp, vdi, vds)
- unsigned int fun;
- struct vddrv *vdp;
- addr_t vdi;
- struct vdstat *vds;
-{
- int n;
-
- switch (fun) {
- case VDLOAD:
- vdp->vdd_vdtab = (struct vdlinkage *) &vd;
- if (fmodsw_index >= 0)
- return EBUSY;
- for (n = 0; n < fmodcnt; ++n)
- if (fmodsw[n].f_str == 0)
- break;
- if (n >= fmodcnt)
- return ENODEV;
- strncpy(fmodsw[n].f_name, vd.Drv_name, FMNAMESZ+1);
- fmodsw[n].f_str = &ppp_compinfo;
- fmodsw_index = n;
- break;
-
- case VDUNLOAD:
- if (ppp_comp_count > 0)
- return EBUSY;
- if (fmodsw_index <= 0)
- return EINVAL;
- fmodsw[fmodsw_index].f_name[0] = 0;
- fmodsw[fmodsw_index].f_str = 0;
- fmodsw_index = -1;
- break;
-
- case VDSTAT:
- break;
-
- default:
- return EIO;
- }
- return 0;
-}
diff --git a/mdk-stage1/ppp/sunos4/ppp_vdcmd.c b/mdk-stage1/ppp/sunos4/ppp_vdcmd.c
deleted file mode 100644
index 68095c92e..000000000
--- a/mdk-stage1/ppp/sunos4/ppp_vdcmd.c
+++ /dev/null
@@ -1,81 +0,0 @@
-#include <sys/types.h>
-#include <sys/errno.h>
-#include <sys/conf.h>
-#include <sun/vddrv.h>
-
-extern struct streamtab pppinfo;
-extern int ppp_count;
-extern int nchrdev;
-
-static struct vdldrv vd = {
- VDMAGIC_PSEUDO,
- "ppp"
-};
-
-extern int nodev();
-
-static struct cdevsw ppp_cdevsw = {
- nodev, nodev, nodev, nodev, nodev, nodev, nodev, 0,
- &pppinfo
-};
-
-static struct cdevsw old_entry;
-
-int
-ppp_vdcmd(fun, vdp, vdi, vds)
- unsigned int fun;
- struct vddrv *vdp;
- addr_t vdi;
- struct vdstat *vds;
-{
- static int majnum = -1;
- int n, maj;
-
- switch (fun) {
- case VDLOAD:
- /*
- * It seems like modload doesn't install the cdevsw entry
- * for us. Oh well...
- */
- for (maj = 1; maj < nchrdev; ++maj)
- if (cdevsw[maj].d_open == vd_unuseddev)
- break;
- if (maj >= nchrdev)
- return ENODEV;
- vd.Drv_charmajor = maj;
- old_entry = cdevsw[maj];
- cdevsw[maj] = ppp_cdevsw;
- vd.Drv_cdevsw = &ppp_cdevsw;
- vdp->vdd_vdtab = (struct vdlinkage *) &vd;
- majnum = maj;
- break;
-
- case VDUNLOAD:
- if (ppp_count > 0)
- return EBUSY;
- if (vd.Drv_charmajor > 0)
- cdevsw[vd.Drv_charmajor] = old_entry;
- break;
-
- case VDSTAT:
- /*
- * We have to fool the modstat command into thinking
- * that this module is actually a driver! This is
- * so that installation commands that use the -exec
- * option of modload to run a shell script find out
- * the block and/or char major numbers of the driver
- * loaded (so that the shell script can go off to
- * /dev and *MAKE* the bloody device nodes- remember
- * they might change from one load to another if
- * you don't hardwire the number!).
- */
- vds->vds_magic = VDMAGIC_DRV;
- vds->vds_modinfo[0] = (char) 0;
- vds->vds_modinfo[1] = (char) majnum;
- break;
-
- default:
- return EIO;
- }
- return 0;
-}
diff --git a/mdk-stage1/ppp/svr4/Makedefs b/mdk-stage1/ppp/svr4/Makedefs
deleted file mode 100644
index 81db8ab2e..000000000
--- a/mdk-stage1/ppp/svr4/Makedefs
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# defines common to several Makefiles
-#
-
-INSTALL= /usr/sbin/install
-
-BINDIR = /usr/local/bin
-MANDIR = /usr/local/man
-ETCDIR = /etc/ppp
-
-COPTS = -O -Xa
-
-# For compiling with gcc, comment out the COPTS definition above and
-# uncomment the next 2 definitions.
-#CC = gcc
-#COPTS = -O2
diff --git a/mdk-stage1/ppp/svr4/Makedefs.sol2 b/mdk-stage1/ppp/svr4/Makedefs.sol2
deleted file mode 100644
index e8b8d282e..000000000
--- a/mdk-stage1/ppp/svr4/Makedefs.sol2
+++ /dev/null
@@ -1,59 +0,0 @@
-#
-# Generic make definitions for Solaris 2
-#
-# $Id$
-#
-
-include ../svr4/Makedefs
-
-CPPFLAGS = -D_KERNEL -DSVR4 -DSOL2 -DPRIOQ -DDEBUG -I../include
-CFLAGS = $(CPPFLAGS) $(COPTS)
-
-# lint-specific variables
-LINT = lint
-LINT_OPT_32 =
-LINT_OPT_64 = -Xarch=v9 -errchk=longptr64
-
-LINT_32 =
-LINT_32 += -erroff=E_BAD_PTR_CAST_ALIGN
-LINT_32 += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINT_32 += -erroff=E_SUSPICIOUS_COMPARISON
-LINT_32 += -erroff=E_CAST_UINT_TO_SIGNED_INT
-LINT_32 += -erroff=E_PASS_UINT_TO_SIGNED_INT
-LINT_32 += -erroff=E_INVALID_ANNOTATION_NAME
-LINT_32 += -erroff=E_FUNC_ARG_UNUSED
-# This might be needed, but zlib.c and vjcompress.c will squawk
-# when not ignored
-LINT_32 += -erroff=E_CASE_FALLTHRU
-LINT_32 += -erroff=E_RET_INT_IMPLICITLY
-LINT_32 += -erroff=E_FUNC_NO_RET_VAL
-# Some STREAMS macros will be noisy too when this isn't ignored
-LINT_32 += -erroff=E_CONSTANT_CONDITION
-LINT_32 += -erroff=E_CONST_EXPR
-
-# Extra noise suppressant for 64-bit
-EXTRA_OFF =
-EXTRA_OFF += -erroff=E_CAST_INT_TO_SMALL_INT
-EXTRA_OFF += -erroff=E_CAST_INT_CONST_TO_SMALL_INT
-EXTRA_OFF += -erroff=E_CAST_TO_PTR_FROM_INT
-EXTRA_OFF += -erroff=E_ASSIGN_INT_TO_SMALL_INT
-EXTRA_OFF += -erroff=E_ASSIGN_INT_FROM_BIG_CONST
-EXTRA_OFF += -erroff=E_CONST_PROMOTED_UNSIGNED_LL
-EXTRA_OFF += -erroff=E_CONST_PROMOTED_LONG_LONG
-EXTRA_OFF += -erroff=E_CONST_TRUNCATED_BY_ASSIGN
-EXTRA_OFF += -erroff=E_PASS_INT_FROM_BIG_CONST
-EXTRA_OFF += -erroff=E_COMP_INT_WITH_LARGE_INT
-EXTRA_OFF += -erroff=E_ASSIGN_UINT_TO_SIGNED_INT
-EXTRA_OFF += -erroff=E_ASSIGN_NARROW_CONV
-EXTRA_OFF += -erroff=E_PASS_INT_TO_SMALL_INT
-EXTRA_OFF += -erroff=E_PTR_CONV_LOSES_BITS
-
-LINT_64 = $(LINT_32)
-LINT_64 += $(EXTRA_OFF)
-
-LINTFLAGS64 = -Xa -nsxmuF -errtags=yes $(LINT_OPT_64) $(LINT_64)
-LINT64 = $(LINT) -c $(LINTFLAGS64) $(CPPFLAGS)
-
-LINTFLAGS32 = -Xa -nsxmuF -errtags=yes $(LINT_OPT_32) $(LINT_32)
-LINT32 = $(LINT) -c $(LINTFLAGS32) $(CPPFLAGS)
-
diff --git a/mdk-stage1/ppp/svr4/Makefile.sol2 b/mdk-stage1/ppp/svr4/Makefile.sol2
deleted file mode 100644
index 5b2ca8635..000000000
--- a/mdk-stage1/ppp/svr4/Makefile.sol2
+++ /dev/null
@@ -1,66 +0,0 @@
-#
-# Makefile for STREAMS modules for Solaris 2.
-#
-# $Id$
-#
-
-include Makedefs.sol2
-
-COPTS += -xO2 -xspace -W0,-Lt
-
-COMP_OBJS = ppp_comp.o bsd-comp.o deflate.o zlib.o vjcompress.o \
- ppp_comp_mod.o
-
-all: ppp ppp_ahdl ppp_comp
-
-ppp: ppp.o ppp_mod.o
- ld -r -o $@ ppp.o ppp_mod.o
- chmod +x $@
-
-ppp_ahdl: ppp_ahdlc.o ppp_ahdlc_mod.o
- ld -r -o $@ ppp_ahdlc.o ppp_ahdlc_mod.o
- chmod +x $@
-
-ppp_comp: $(COMP_OBJS)
- ld -r -o $@ $(COMP_OBJS)
- chmod +x $@
-
-bsd-comp.o: ../modules/bsd-comp.c
- $(CC) $(CFLAGS) -c $?
-deflate.o: ../modules/deflate.c
- $(CC) $(CFLAGS) -c $?
-ppp.o: ../modules/ppp.c
- $(CC) $(CFLAGS) -c $?
-ppp_mod.o: ppp_mod.c
- $(CC) $(CFLAGS) -c $?
-ppp_ahdlc_mod.o: ppp_ahdlc_mod.c
- $(CC) $(CFLAGS) -c $?
-ppp_ahdlc.o: ../modules/ppp_ahdlc.c
- $(CC) $(CFLAGS) -c $?
-ppp_comp.o: ../modules/ppp_comp.c
- $(CC) $(CFLAGS) -c $?
-ppp_comp_mod.o: ppp_comp_mod.c
- $(CC) $(CFLAGS) -c $?
-vjcompress.o: ../modules/vjcompress.c
- $(CC) $(CFLAGS) -c $?
-zlib.o: ../common/zlib.c
- $(CC) $(CFLAGS) -c $?
-
-install:
- cp ppp ppp.conf /kernel/drv
- cp ppp_comp ppp_ahdl /kernel/strmod
- if grep clone:ppp /etc/minor_perm; then :; else \
- echo clone:ppp 0644 root sys >>/etc/minor_perm; fi
- /usr/sbin/rem_drv ppp 2>/dev/null || true
- /usr/sbin/add_drv ppp
-
-SRCS = ../modules/ppp.c ppp_mod.c ../modules/ppp_ahdlc.c ppp_ahdlc_mod.c \
- ../modules/ppp_comp.c ../modules/bsd-comp.c ../modules/deflate.c \
- ../common/zlib.c ../modules/vjcompress.c ppp_comp_mod.c
-
-lint:
- $(LINT32) $(SRCS)
-
-clean:
- rm -f ppp ppp_comp ppp_ahdl *.o *~ core
- rm -f *.ln
diff --git a/mdk-stage1/ppp/svr4/Makefile.sol2-64 b/mdk-stage1/ppp/svr4/Makefile.sol2-64
deleted file mode 100644
index 80c6b185e..000000000
--- a/mdk-stage1/ppp/svr4/Makefile.sol2-64
+++ /dev/null
@@ -1,85 +0,0 @@
-#
-# Makefile for 64-bit STREAMS modules for Solaris 2.
-#
-# $Id$
-#
-
-include Makedefs.sol2
-
-# Sun's cc flag for LP64 compilation / linkage
-COPTS += -xchip=ultra -xarch=v9 -Wc,-xcode=abs32 -Wc,-Qiselect-regsym=0 -xO3 -xspace -W0,-Lt
-
-# subdirectory where 64-bit objects / binaries will be placed
-LP64DIR = sparcv9
-
-# Name of legacy Makefile (for 32-bit binaries)
-STD_MAKE = Makefile.sol2
-
-COMP_OBJS = $(LP64DIR)/ppp_comp.o $(LP64DIR)/bsd-comp.o \
- $(LP64DIR)/deflate.o $(LP64DIR)/zlib.o $(LP64DIR)/vjcompress.o \
- $(LP64DIR)/ppp_comp_mod.o
-
-all: std_objs $(LP64DIR) ppp ppp_ahdl ppp_comp
-
-std_objs:
- $(MAKE) -f $(STD_MAKE) all
-
-ppp: $(LP64DIR)/ppp.o $(LP64DIR)/ppp_mod.o
- ld -r -o $(LP64DIR)/$@ $(LP64DIR)/ppp.o $(LP64DIR)/ppp_mod.o
- chmod +x $(LP64DIR)/$@
-
-ppp_ahdl: $(LP64DIR)/ppp_ahdlc.o $(LP64DIR)/ppp_ahdlc_mod.o
- ld -r -o $(LP64DIR)/$@ $(LP64DIR)/ppp_ahdlc.o $(LP64DIR)/ppp_ahdlc_mod.o
- chmod +x $(LP64DIR)/$@
-
-ppp_comp: $(COMP_OBJS)
- ld -r -o $(LP64DIR)/$@ $(COMP_OBJS)
- chmod +x $(LP64DIR)/$@
-
-$(LP64DIR)/bsd-comp.o: ../modules/bsd-comp.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/deflate.o: ../modules/deflate.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp.o: ../modules/ppp.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_mod.o: ppp_mod.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_ahdlc_mod.o: ppp_ahdlc_mod.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_ahdlc.o: ../modules/ppp_ahdlc.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_comp.o: ../modules/ppp_comp.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/ppp_comp_mod.o: ppp_comp_mod.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/vjcompress.o: ../modules/vjcompress.c
- $(CC) $(CFLAGS) -c $? -o $@
-$(LP64DIR)/zlib.o: ../common/zlib.c
- $(CC) $(CFLAGS) -c $? -o $@
-
-$(LP64DIR):
- mkdir -m 755 -p $@
-
-install:
- cp ppp ppp.conf /kernel/drv
- cp ppp_comp ppp_ahdl /kernel/strmod
- cp $(LP64DIR)/ppp /kernel/drv/$(LP64DIR)
- cp $(LP64DIR)/ppp_comp $(LP64DIR)/ppp_ahdl /kernel/strmod/$(LP64DIR)
- if grep clone:ppp /etc/minor_perm; then :; else \
- echo clone:ppp 0644 root sys >>/etc/minor_perm; fi
- /usr/sbin/rem_drv ppp 2>/dev/null || true
- /usr/sbin/add_drv ppp
-
-SRCS = ../modules/ppp.c ppp_mod.c ../modules/ppp_ahdlc.c ppp_ahdlc_mod.c \
- ../modules/ppp_comp.c ../modules/bsd-comp.c ../modules/deflate.c \
- ../common/zlib.c ../modules/vjcompress.c ppp_comp_mod.c
-
-lint:
- $(LINT64) $(SRCS)
-
-lint-32:
- $(LINT32) $(SRCS)
-
-clean:
- $(MAKE) -f $(STD_MAKE) clean
- rm -f $(LP64DIR)/ppp $(LP64DIR)/ppp_comp $(LP64DIR)/ppp_ahdl $(LP64DIR)/*.o $(LP64DIR)/*~ $(LP64DIR)/core
diff --git a/mdk-stage1/ppp/svr4/Makefile.svr4 b/mdk-stage1/ppp/svr4/Makefile.svr4
deleted file mode 100644
index 252c52428..000000000
--- a/mdk-stage1/ppp/svr4/Makefile.svr4
+++ /dev/null
@@ -1,60 +0,0 @@
-#
-# Makefile for STREAMS modules for SVR4.
-#
-# $Id$
-#
-
-COPTS = -O
-
-CFLAGS= -D_KERNEL -DSVR4 -DLACHTCP -I../include $(COPTS)
-
-all: ppp ppp_ahdl ppp_comp
-
-ppp: ppp.o
- ld -r -o $@ ppp.o
-
-ppp_ahdl: ppp_ahdlc.o
- ld -r -o $@ ppp_ahdlc.o
-
-ppp_comp: ppp_comp.o bsd-comp.o vjcompress.o deflate.o zlib.o
- ld -r -o $@ ppp_comp.o bsd-comp.o vjcompress.o deflate.o zlib.o
-
-bsd-comp.o: ../modules/bsd-comp.c
- $(CC) $(CFLAGS) -c $?
-deflate.o: ../modules/deflate.c
- $(CC) $(CFLAGS) -c $?
-ppp.o: ../modules/ppp.c
- $(CC) $(CFLAGS) -c $?
-ppp_ahdlc.o: ../modules/ppp_ahdlc.c
- $(CC) $(CFLAGS) -c $?
-ppp_comp.o: ../modules/ppp_comp.c
- $(CC) $(CFLAGS) -c $?
-vjcompress.o: ../modules/vjcompress.c
- $(CC) $(CFLAGS) -c $?
-zlib.o: ../common/zlib.c
- $(CC) $(CFLAGS) -c $?
-
-install: all
- cp ppp Driver.o
- cp ppp.Master Master
- cp ppp.System System
- cp ppp.Node Node
- /etc/conf/bin/idinstall -d ppp
- /etc/conf/bin/idinstall -a ppp
- cp ppp_comp Driver.o
- cp ppp_comp.Master Master
- cp ppp_comp.System System
- /etc/conf/bin/idinstall -d ppp_comp
- /etc/conf/bin/idinstall -a ppp_comp
- cp ppp_ahdl Driver.o
- cp ppp_ahdl.Master Master
- cp ppp_ahdl.System System
- /etc/conf/bin/idinstall -d ppp_ahdl
- /etc/conf/bin/idinstall -a ppp_ahdl
- @echo
- @echo 'NOTE: You must rebuild your kernel to incorporate the driver.'
- @echo '(use /etc/conf/bin/idbuild)'
- @echo
-
-clean:
- rm -f ppp ppp_comp ppp_ahdl *.o *~ core
diff --git a/mdk-stage1/ppp/svr4/Makefile.top b/mdk-stage1/ppp/svr4/Makefile.top
deleted file mode 100644
index 253e48acb..000000000
--- a/mdk-stage1/ppp/svr4/Makefile.top
+++ /dev/null
@@ -1,50 +0,0 @@
-#
-# ppp top level makefile for SVR4 and Solaris 2
-#
-# $Id$
-#
-
-include svr4/Makedefs
-
-all:
- cd chat; $(MAKE) all
- cd pppd; $(MAKE) all
- cd pppstats; $(MAKE) all
- cd pppdump; $(MAKE) all
- cd svr4; $(MAKE) all
-
-install: $(BINDIR) $(MANDIR)/man8 install-progs install-etcppp
-
-install-progs:
- cd chat; $(MAKE) install
- cd pppd; $(MAKE) install
- cd pppstats; $(MAKE) install
- cd pppdump; $(MAKE) install
- cd svr4; $(MAKE) install
-
-install-etcppp: $(ETCDIR) $(ETCDIR)/options $(ETCDIR)/pap-secrets \
- $(ETCDIR)/chap-secrets
-
-$(ETCDIR)/options:
- cp etc.ppp/options $@
- chmod go-w $@
-$(ETCDIR)/pap-secrets:
- $(INSTALL) -f $(ETCDIR) -m 600 etc.ppp/pap-secrets
-$(ETCDIR)/chap-secrets:
- $(INSTALL) -f $(ETCDIR) -m 600 etc.ppp/chap-secrets
-
-$(BINDIR):
- mkdir -m 755 -p $@
-$(MANDIR)/man8:
- mkdir -m 755 -p $@
-$(ETCDIR):
- mkdir -m 755 -p $@
-
-clean:
- rm -f *~
- cd chat; $(MAKE) clean
- cd pppd; $(MAKE) clean
- cd pppstats; $(MAKE) clean
- cd pppdump; $(MAKE) clean
- cd svr4; $(MAKE) clean
-
diff --git a/mdk-stage1/ppp/svr4/ppp.Master b/mdk-stage1/ppp/svr4/ppp.Master
deleted file mode 100644
index 346db035b..000000000
--- a/mdk-stage1/ppp/svr4/ppp.Master
+++ /dev/null
@@ -1 +0,0 @@
-ppp - Sciof ppp 0 0 1 128 -1
diff --git a/mdk-stage1/ppp/svr4/ppp.Node b/mdk-stage1/ppp/svr4/ppp.Node
deleted file mode 100644
index 7767ade71..000000000
--- a/mdk-stage1/ppp/svr4/ppp.Node
+++ /dev/null
@@ -1 +0,0 @@
-clone ppp c ppp
diff --git a/mdk-stage1/ppp/svr4/ppp.System b/mdk-stage1/ppp/svr4/ppp.System
deleted file mode 100644
index e60c0eec3..000000000
--- a/mdk-stage1/ppp/svr4/ppp.System
+++ /dev/null
@@ -1 +0,0 @@
-ppp Y 1 0 0 0 0 0 0 0
diff --git a/mdk-stage1/ppp/svr4/ppp.conf b/mdk-stage1/ppp/svr4/ppp.conf
deleted file mode 100644
index e443a7aac..000000000
--- a/mdk-stage1/ppp/svr4/ppp.conf
+++ /dev/null
@@ -1 +0,0 @@
-name="ppp" parent="pseudo" instance=0;
diff --git a/mdk-stage1/ppp/svr4/ppp_ahdl.Master b/mdk-stage1/ppp/svr4/ppp_ahdl.Master
deleted file mode 100644
index 4fde52596..000000000
--- a/mdk-stage1/ppp/svr4/ppp_ahdl.Master
+++ /dev/null
@@ -1 +0,0 @@
-ppp_ahdl - iSf phdl 0 0 1 1 -1
diff --git a/mdk-stage1/ppp/svr4/ppp_ahdl.System b/mdk-stage1/ppp/svr4/ppp_ahdl.System
deleted file mode 100644
index f41a500f4..000000000
--- a/mdk-stage1/ppp/svr4/ppp_ahdl.System
+++ /dev/null
@@ -1 +0,0 @@
-ppp_ahdl Y 1 0 0 0 0 0 0 0
diff --git a/mdk-stage1/ppp/svr4/ppp_ahdlc_mod.c b/mdk-stage1/ppp/svr4/ppp_ahdlc_mod.c
deleted file mode 100644
index f81be8abb..000000000
--- a/mdk-stage1/ppp/svr4/ppp_ahdlc_mod.c
+++ /dev/null
@@ -1,49 +0,0 @@
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/conf.h>
-#include <sys/modctl.h>
-#include <sys/sunddi.h>
-
-extern struct streamtab ppp_ahdlcinfo;
-
-static struct fmodsw fsw = {
- "ppp_ahdl",
- &ppp_ahdlcinfo,
- D_NEW | D_MP | D_MTQPAIR
-};
-
-extern struct mod_ops mod_strmodops;
-
-static struct modlstrmod modlstrmod = {
- &mod_strmodops,
- "PPP async HDLC module",
- &fsw
-};
-
-static struct modlinkage modlinkage = {
- MODREV_1,
- (void *) &modlstrmod,
- NULL
-};
-
-/*
- * Entry points for modloading.
- */
-int
-_init(void)
-{
- return mod_install(&modlinkage);
-}
-
-int
-_fini(void)
-{
- return mod_remove(&modlinkage);
-}
-
-int
-_info(mip)
- struct modinfo *mip;
-{
- return mod_info(&modlinkage, mip);
-}
diff --git a/mdk-stage1/ppp/svr4/ppp_comp.Master b/mdk-stage1/ppp/svr4/ppp_comp.Master
deleted file mode 100644
index 78019064e..000000000
--- a/mdk-stage1/ppp/svr4/ppp_comp.Master
+++ /dev/null
@@ -1 +0,0 @@
-ppp_comp - iSf pcmp 0 0 1 1 -1
diff --git a/mdk-stage1/ppp/svr4/ppp_comp.System b/mdk-stage1/ppp/svr4/ppp_comp.System
deleted file mode 100644
index e69d4a1a3..000000000
--- a/mdk-stage1/ppp/svr4/ppp_comp.System
+++ /dev/null
@@ -1 +0,0 @@
-ppp_comp Y 1 0 0 0 0 0 0 0
diff --git a/mdk-stage1/ppp/svr4/ppp_comp_mod.c b/mdk-stage1/ppp/svr4/ppp_comp_mod.c
deleted file mode 100644
index 83ff8e252..000000000
--- a/mdk-stage1/ppp/svr4/ppp_comp_mod.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * ppp_comp_mod.c - modload support for PPP compression STREAMS module.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under Solaris 2.
- */
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/conf.h>
-#include <sys/modctl.h>
-#include <sys/sunddi.h>
-
-extern struct streamtab ppp_compinfo;
-
-static struct fmodsw fsw = {
- "ppp_comp",
- &ppp_compinfo,
- D_NEW | D_MP | D_MTQPAIR
-};
-
-extern struct mod_ops mod_strmodops;
-
-static struct modlstrmod modlstrmod = {
- &mod_strmodops,
- "PPP compression module",
- &fsw
-};
-
-static struct modlinkage modlinkage = {
- MODREV_1,
- (void *) &modlstrmod,
- NULL
-};
-
-/*
- * Entry points for modloading.
- */
-int
-_init(void)
-{
- return mod_install(&modlinkage);
-}
-
-int
-_fini(void)
-{
- return mod_remove(&modlinkage);
-}
-
-int
-_info(mip)
- struct modinfo *mip;
-{
- return mod_info(&modlinkage, mip);
-}
diff --git a/mdk-stage1/ppp/svr4/ppp_mod.c b/mdk-stage1/ppp/svr4/ppp_mod.c
deleted file mode 100644
index a4b1538a5..000000000
--- a/mdk-stage1/ppp/svr4/ppp_mod.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * ppp_mod.c - modload support for PPP pseudo-device driver.
- *
- * Copyright (c) 1994 The Australian National University.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation is hereby granted, provided that the above copyright
- * notice appears in all copies. This software is provided without any
- * warranty, express or implied. The Australian National University
- * makes no representations about the suitability of this software for
- * any purpose.
- *
- * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY
- * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
- * THE AUSTRALIAN NATIONAL UNIVERSITY HAVE BEEN ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- *
- * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
- * OR MODIFICATIONS.
- *
- * $Id$
- */
-
-/*
- * This file is used under Solaris 2.
- */
-
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/stat.h>
-#include <sys/conf.h>
-#include <sys/modctl.h>
-#include <sys/sunddi.h>
-#include <sys/ksynch.h>
-
-#ifdef __STDC__
-#define __P(x) x
-#else
-#define __P(x) ()
-#endif
-
-static int ppp_identify __P((dev_info_t *));
-static int ppp_attach __P((dev_info_t *, ddi_attach_cmd_t));
-static int ppp_detach __P((dev_info_t *, ddi_detach_cmd_t));
-static int ppp_devinfo __P((dev_info_t *, ddi_info_cmd_t, void *, void **));
-
-extern struct streamtab pppinfo;
-extern krwlock_t ppp_lower_lock;
-
-static dev_info_t *ppp_dip;
-
-static struct cb_ops cb_ppp_ops = {
- nulldev, nulldev, nodev, nodev, /* cb_open, ... */
- nodev, nodev, nodev, nodev, /* cb_dump, ... */
- nodev, nodev, nodev, nochpoll, /* cb_devmap, ... */
- ddi_prop_op, /* cb_prop_op */
- &pppinfo, /* cb_stream */
- D_NEW|D_MP|D_MTQPAIR|D_MTOUTPERIM|D_MTOCEXCL /* cb_flag */
-};
-
-static struct dev_ops ppp_ops = {
- DEVO_REV, /* devo_rev */
- 0, /* devo_refcnt */
- ppp_devinfo, /* devo_getinfo */
- ppp_identify, /* devo_identify */
- nulldev, /* devo_probe */
- ppp_attach, /* devo_attach */
- ppp_detach, /* devo_detach */
- nodev, /* devo_reset */
- &cb_ppp_ops, /* devo_cb_ops */
- NULL /* devo_bus_ops */
-};
-
-/*
- * Module linkage information
- */
-
-static struct modldrv modldrv = {
- &mod_driverops, /* says this is a pseudo driver */
- "PPP-2.3 multiplexing driver",
- &ppp_ops /* driver ops */
-};
-
-static struct modlinkage modlinkage = {
- MODREV_1,
- (void *) &modldrv,
- NULL
-};
-
-int
-_init(void)
-{
- return mod_install(&modlinkage);
-}
-
-int
-_fini(void)
-{
- return mod_remove(&modlinkage);
-}
-
-int
-_info(mip)
- struct modinfo *mip;
-{
- return mod_info(&modlinkage, mip);
-}
-
-static int
-ppp_identify(dip)
- dev_info_t *dip;
-{
- return strcmp(ddi_get_name(dip), "ppp") == 0? DDI_IDENTIFIED:
- DDI_NOT_IDENTIFIED;
-}
-
-static int
-ppp_attach(dip, cmd)
- dev_info_t *dip;
- ddi_attach_cmd_t cmd;
-{
-
- if (cmd != DDI_ATTACH)
- return DDI_FAILURE;
- if (ddi_create_minor_node(dip, "ppp", S_IFCHR, 0, DDI_PSEUDO, CLONE_DEV)
- == DDI_FAILURE) {
- ddi_remove_minor_node(dip, NULL);
- return DDI_FAILURE;
- }
- rw_init(&ppp_lower_lock, NULL, RW_DRIVER, NULL);
- return DDI_SUCCESS;
-}
-
-static int
-ppp_detach(dip, cmd)
- dev_info_t *dip;
- ddi_detach_cmd_t cmd;
-{
- rw_destroy(&ppp_lower_lock);
- ddi_remove_minor_node(dip, NULL);
- return DDI_SUCCESS;
-}
-
-static int
-ppp_devinfo(dip, cmd, arg, result)
- dev_info_t *dip;
- ddi_info_cmd_t cmd;
- void *arg;
- void **result;
-{
- int error;
-
- error = DDI_SUCCESS;
- switch (cmd) {
- case DDI_INFO_DEVT2DEVINFO:
- if (ppp_dip == NULL)
- error = DDI_FAILURE;
- else
- *result = (void *) ppp_dip;
- break;
- case DDI_INFO_DEVT2INSTANCE:
- *result = NULL;
- break;
- default:
- error = DDI_FAILURE;
- }
- return error;
-}
diff --git a/mdk-stage1/probe-modules.c b/mdk-stage1/probe-modules.c
index 6f162aed4..86b383b5e 100644
--- a/mdk-stage1/probe-modules.c
+++ b/mdk-stage1/probe-modules.c
@@ -1,5 +1,5 @@
/*
- * Olivier Blin (blino@mandriva.com)
+ * Olivier Blin (blino)
*
* Copyright 2007-2004 Mandriva
*
@@ -22,7 +22,6 @@
#include <string.h>
#include "utils.h"
-void exit_bootsplash(void) {}
void stg1_error_message(char *msg, ...)
{
va_list args;
@@ -59,7 +58,7 @@ int main(int argc, char **argv, char **env)
init_modules_insmoding();
if (module) {
- my_insmod(module, ANY_DRIVER_TYPE, options, 0);
+ my_modprobe(module, ANY_DRIVER_TYPE, options);
} else {
find_media(bus);
}
diff --git a/mdk-stage1/probing.c b/mdk-stage1/probing.c
index 4ca30fbe4..f956bb348 100644
--- a/mdk-stage1/probing.c
+++ b/mdk-stage1/probing.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -40,23 +40,27 @@
#include <fnmatch.h>
#include <sys/socket.h>
#include <net/if.h>
+#include <linux/sockios.h>
+#include <linux/ethtool.h>
#include <sys/ioctl.h>
#include <sys/mount.h>
#include <pci/pci.h>
#include <libldetect.h>
+#include <errno.h>
+#include <glob.h>
#include "stage1.h"
#include "log.h"
#include "utils.h"
#include "frontend.h"
#include "modules.h"
-#include "pci-resource/pci-ids.h"
+#include "pci-ids.h"
#ifdef ENABLE_USB
-#include "usb-resource/usb-ids.h"
+#include "usb-ids.h"
#endif
#ifdef ENABLE_PCMCIA
#include "sysfs/libsysfs.h"
-#include "pcmcia-resource/pcmcia-ids.h"
+#include "pcmcia-ids.h"
#endif
#include "probing.h"
@@ -82,54 +86,31 @@ static void warning_insmod_failed(enum insmod_return r)
}
#ifndef DISABLE_NETWORK
-struct net_description_elem
-{
- char * intf_name;
- char * intf_description;
-};
-static struct net_description_elem net_descriptions[50];
-static int net_descr_number = 0;
-static char * intf_descr_for_discover = NULL;
-static char * net_intf_too_early_name[50]; /* for modules providing more than one net intf */
-static int net_intf_too_early_number = 0;
-static int net_intf_too_early_ptr = 0;
-
const char * safe_descr(const char * text) {
return text ? text : "unknown";
}
-void prepare_intf_descr(const char * intf_descr)
+char * get_net_intf_description(char * intf_name)
{
- intf_descr_for_discover = strdup(intf_descr);
-}
+ struct ifreq ifr;
+ struct ethtool_drvinfo drvinfo;
+ int s = socket(AF_INET, SOCK_DGRAM, 0);
+ char *res;
-void net_discovered_interface(char * intf_name)
-{
- if (!intf_descr_for_discover) {
- net_intf_too_early_name[net_intf_too_early_number++] = strdup(intf_name);
- return;
- }
- if (!intf_name) {
- if (net_intf_too_early_ptr >= net_intf_too_early_number) {
- log_message("NET: was expecting another network interface (broken net module?)");
- return;
- }
- net_descriptions[net_descr_number].intf_name = net_intf_too_early_name[net_intf_too_early_ptr++];
- }
- else
- net_descriptions[net_descr_number].intf_name = strdup(intf_name);
- net_descriptions[net_descr_number].intf_description = strdup(intf_descr_for_discover);
- intf_descr_for_discover = NULL;
- net_descr_number++;
-}
+ memset(&ifr, 0, sizeof(ifr));
+ strncpy(ifr.ifr_name, intf_name, IFNAMSIZ);
-char * get_net_intf_description(char * intf_name)
-{
- int i;
- for (i = 0; i < net_descr_number ; i++)
- if (!strcmp(net_descriptions[i].intf_name, intf_name))
- return net_descriptions[i].intf_description;
- return strdup("unknown");
+ drvinfo.cmd = ETHTOOL_GDRVINFO;
+ ifr.ifr_data = (caddr_t) &drvinfo;
+
+ if (ioctl(s, SIOCETHTOOL, &ifr) != -1) {
+ res = drvinfo.driver;
+ } else {
+ perror("SIOCETHTOOL");
+ res = "unknown";
+ }
+ close(s);
+ return strdup(res);
}
#endif
@@ -272,10 +253,10 @@ void discovered_device(enum driver_type type, const char * description, const ch
if (type == MEDIA_ADAPTERS) {
const char * alternate = NULL;
wait_message("Loading driver for media adapter:\n \n%s", description);
- failed = my_insmod(driver, MEDIA_ADAPTERS, NULL, 1);
+ failed = my_modprobe(driver, MEDIA_ADAPTERS, NULL);
alternate = get_alternate_module(driver);
if (!IS_NOAUTO && alternate) {
- failed = failed || my_insmod(alternate, MEDIA_ADAPTERS, NULL, 1);
+ failed = failed || my_modprobe(alternate, MEDIA_ADAPTERS, NULL);
}
remove_wait_message();
warning_insmod_failed(failed);
@@ -283,19 +264,17 @@ void discovered_device(enum driver_type type, const char * description, const ch
#endif
#ifndef DISABLE_NETWORK
if (type == NETWORK_DEVICES) {
+ log_message("NET: Loading driver for network device %s", description);
wait_message("Loading driver for network device:\n \n%s", description);
- prepare_intf_descr(description);
- failed = my_insmod(driver, NETWORK_DEVICES, NULL, 1);
+ failed = my_modprobe(driver, NETWORK_DEVICES, NULL);
warning_insmod_failed(failed);
remove_wait_message();
- if (intf_descr_for_discover) /* for modules providing more than one net intf */
- net_discovered_interface(NULL);
}
#endif
#ifdef ENABLE_USB
if (type == USB_CONTROLLERS)
/* we can't allow additional modules floppy since we need usbhid for keystrokes of usb keyboards */
- failed = my_insmod(driver, USB_CONTROLLERS, NULL, 0);
+ failed = my_modprobe(driver, USB_CONTROLLERS, NULL);
#endif
}
@@ -329,18 +308,22 @@ void probe_virtio_modules(void)
int i;
char *name;
char *options;
+ int loaded_pci = 0;
entries = pci_probe();
for (i = 0; i < entries.nb; i++) {
struct pciusb_entry *e = &entries.entries[i];
if (e->vendor == VIRTIO_PCI_VENDOR) {
+ if (!loaded_pci) {
+ log_message("loading virtio-pci");
+ my_modprobe("virtio_pci", ANY_DRIVER_TYPE, NULL);
+ loaded_pci = 1;
+ }
+
name = NULL;
options = NULL;
- switch (e->device) {
- case VIRTIO_ID_PCI:
- name = "virtio_pci";
- break;
+ switch (e->subdevice) {
case VIRTIO_ID_NET:
name = "virtio_net";
options = "csum=0";
@@ -356,7 +339,7 @@ void probe_virtio_modules(void)
}
if (name) {
log_message("virtio: loading %s", name);
- my_insmod(name, ANY_DRIVER_TYPE, options, 0);
+ my_modprobe(name, ANY_DRIVER_TYPE, options);
}
}
}
@@ -425,14 +408,9 @@ void probe_that_type(enum driver_type type, enum media_bus bus __attribute__ ((u
if (!already_mounted_usbdev) {
already_mounted_usbdev = 1;
- if (mount("none", "/proc/bus/usb", "usbfs", 0, NULL) &&
- mount("none", "/proc/bus/usb", "usbdevfs", 0, NULL)) {
- log_message("USB: couldn't mount /proc/bus/usb");
- goto end_usb_probe;
- }
wait_message("Detecting USB devices.");
sleep(4); /* sucking background work */
- my_insmod("usbhid", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("usbhid", ANY_DRIVER_TYPE, NULL);
remove_wait_message();
}
@@ -484,7 +462,7 @@ void probe_that_type(enum driver_type type, enum media_bus bus __attribute__ ((u
for (dent = readdir(dir); dent != NULL; dent = readdir(dir)) {
struct sysfs_attribute *modalias_attr;
- char keyfile[256];
+ char keyfile[300];
int i, id;
if (dent->d_name[0] == '.')
@@ -547,11 +525,13 @@ void probe_that_type(enum driver_type type, enum media_bus bus __attribute__ ((u
already_probed_usb_controllers && !already_loaded_usb_scsi) {
already_loaded_usb_scsi = 1;
/* we can't allow additional modules floppy since we need usbkbd for keystrokes of usb keyboards */
- my_insmod("usb_storage", MEDIA_ADAPTERS, NULL, 0);
+ my_modprobe("usb_storage", MEDIA_ADAPTERS, NULL);
if (module_already_present("ieee1394"))
- my_insmod("sbp2", MEDIA_ADAPTERS, NULL, 0);
+ my_modprobe("sbp2", MEDIA_ADAPTERS, NULL);
wait_message("Detecting USB mass-storage devices.");
+#ifndef DEBUG
sleep(10); /* sucking background work */
+#endif
remove_wait_message();
}
}
@@ -559,13 +539,38 @@ void probe_that_type(enum driver_type type, enum media_bus bus __attribute__ ((u
static struct media_info * medias = NULL;
+// Read a short string from a file and strips it, intended for sysfs attributes
+static ssize_t read_attribute(char *path, char *buf) {
+ ssize_t l = 0;
+ int fd = open(path, O_RDONLY);
+ buf[0] = '\0';
+ if (fd == -1) {
+ log_message("Failed to open %s for reading", path);
+ } else {
+ ssize_t n = read(fd, buf, 32);
+ if (n == -1) {
+ log_message("Couldn't read file (%s)", path);
+ } else {
+ // Strip whitespaces and newline
+ for (int i = n-1; i >= 0; i--) {
+ if (buf[i] == '\n' || buf[i] == ' ')
+ continue;
+ l = i+1;
+ break;
+ }
+ buf[l] = '\0';
+ }
+ close(fd);
+ }
+ log_message("Content of %s was %s", path, buf);
+ return l;
+}
+
void find_media(enum media_bus bus)
{
- char b[50];
char buf[5000];
struct media_info tmp[50];
int count = 0;
- int fd;
if (medias)
free(medias); /* that does not free the strings, by the way */
@@ -574,250 +579,6 @@ void find_media(enum media_bus bus)
probe_that_type(MEDIA_ADAPTERS, bus);
/* ----------------------------------------------- */
- if (bus != BUS_IDE && bus != BUS_ANY)
- goto find_media_after_ide;
- log_message("looking for ide media");
-
- strcpy(b, "/proc/ide/hd");
- for (b[12] = 'a'; b[12] <= 't'; b[12]++) {
- int i;
- char ide_disk[] = "disk";
- char ide_cdrom[] = "cdrom";
- char ide_tape[] = "tape";
- char ide_floppy[] = "floppy";
-
- /* first, test if file exists (will tell if attached medium exists) */
- b[13] = '\0';
- if (access(b, R_OK))
- continue;
-
- tmp[count].name = strdup("hda");
- tmp[count].name[2] = b[12];
-
- /* media type */
- strcpy(b + 13, "/media");
- fd = open(b, O_RDONLY);
- if (fd == -1) {
- log_message("failed to open %s for reading", b);
- continue;
- }
-
- i = read(fd, buf, sizeof(buf));
- if (i == -1) {
- log_message("failed to read %s", b);
- continue;
- }
- buf[i] = '\0';
- close(fd);
-
- if (ptr_begins_static_str(buf, ide_disk))
- tmp[count].type = DISK;
- else if (ptr_begins_static_str(buf, ide_cdrom))
- tmp[count].type = CDROM;
- else if (ptr_begins_static_str(buf, ide_tape))
- tmp[count].type = TAPE;
- else if (ptr_begins_static_str(buf, ide_floppy))
- tmp[count].type = FLOPPY;
- else
- tmp[count].type = UNKNOWN_MEDIA;
-
- /* media model */
- strcpy(b + 13, "/model");
- fd = open(b, O_RDONLY);
- if (fd == -1) {
- log_message("failed to open %s for reading", b);
- continue;
- }
-
- i = read(fd, buf, sizeof(buf));
- if (i <= 0) {
- log_message("failed to read %s", b);
- tmp[count].model = strdup("(none)");
- }
- else {
- buf[i-1] = '\0'; /* eat the \n */
- tmp[count].model = strdup(buf);
- }
- close(fd);
-
- log_message("IDE/%d: %s is a %s", tmp[count].type, tmp[count].name, tmp[count].model);
- count++;
- }
-
- find_media_after_ide:
- /* ----------------------------------------------- */
- if (bus != BUS_SCSI && bus != BUS_USB && bus != BUS_PCMCIA && bus != BUS_ANY)
- goto find_media_after_scsi;
- log_message("looking for scsi media");
-
- fd = open("/proc/scsi/scsi", O_RDONLY);
- if (fd != -1) {
- FILE * f;
-
- enum { SCSI_TOP, SCSI_HOST, SCSI_VENDOR, SCSI_TYPE } state = SCSI_TOP;
- char * start, * chptr, * next, * end;
- char scsi_disk_count = 'a';
- char scsi_cdrom_count = '0';
- char scsi_tape_count = '0';
-
- char scsi_no_devices[] = "Attached devices: none";
- char scsi_some_devices[] = "Attached devices:";
- char scsi_host[] = "Host: ";
- char scsi_vendor[] = " Vendor: ";
-
- int i = read(fd, &buf, sizeof(buf)-1);
- if (i < 1) {
- close(fd);
- goto end_scsi;
- }
- close(fd);
- buf[i] = '\0';
-
- if (ptr_begins_static_str(buf, scsi_no_devices))
- goto end_scsi;
-
- start = buf;
- while (*start) {
- char tmp_model[50];
- char tmp_name[10];
-
- chptr = start;
- while (*chptr != '\n') chptr++;
- *chptr = '\0';
- next = chptr + 1;
-
- switch (state) {
- case SCSI_TOP:
- if (!ptr_begins_static_str(start, scsi_some_devices))
- goto end_scsi;
- state = SCSI_HOST;
- break;
-
- case SCSI_HOST:
- if (!ptr_begins_static_str(start, scsi_host))
- goto end_scsi;
- state = SCSI_VENDOR;
- break;
-
- case SCSI_VENDOR:
- if (!ptr_begins_static_str(start, scsi_vendor))
- goto end_scsi;
-
- /* (1) Grab Vendor info */
- start += 10;
- end = chptr = strstr(start, "Model:");
- if (!chptr)
- goto end_scsi;
-
- chptr--;
- while (*chptr == ' ')
- chptr--;
- if (*chptr == ':') {
- chptr++;
- *(chptr + 1) = '\0';
- strcpy(tmp_model,"(unknown)");
- } else {
- *(chptr + 1) = '\0';
- strcpy(tmp_model, start);
- }
-
- /* (2) Grab Model info */
- start = end;
- start += 7;
-
- chptr = strstr(start, "Rev:");
- if (!chptr)
- goto end_scsi;
-
- chptr--;
- while (*chptr == ' ') chptr--;
- *(chptr + 1) = '\0';
-
- strcat(tmp_model, " ");
- strcat(tmp_model, start);
-
- tmp[count].model = strdup(tmp_model);
-
- state = SCSI_TYPE;
-
- break;
-
- case SCSI_TYPE:
- if (strncmp(" Type:", start, 7))
- goto end_scsi;
- *tmp_name = '\0';
-
- if (strstr(start, "Direct-Access")) {
- sprintf(tmp_name, "sd%c", scsi_disk_count++);
- tmp[count].type = DISK;
- } else if (strstr(start, "Sequential-Access")) {
- sprintf(tmp_name, "st%c", scsi_tape_count++);
- tmp[count].type = TAPE;
- } else if (strstr(start, "CD-ROM")) {
- sprintf(tmp_name, "sr%c", scsi_cdrom_count++);
- tmp[count].type = CDROM;
- }
-
- if (!(f = fopen("/proc/partitions", "rb")) || !fgets(buf, sizeof(buf), f) || !fgets(buf, sizeof(buf), f)) {
- log_message("Couldn't open /proc/partitions");
- } else {
- while (fgets(buf, sizeof(buf), f)) {
- char name[100];
- int major, minor, blocks;
- memset(name, 0, sizeof(name));
- sscanf(buf, " %d %d %d %s", &major, &minor, &blocks, name);
- if (streq(name, tmp_name) && tmp[count].type == DISK && ((blocks == 1048575) || (blocks == 1440)))
- tmp[count].type = FLOPPY;
- }
- fclose(f);
- }
-
- if (*tmp_name) {
- tmp[count].name = strdup(tmp_name);
- log_message("SCSI/%d: %s is a %s", tmp[count].type, tmp[count].name, tmp[count].model);
- count++;
- }
-
- state = SCSI_HOST;
- }
-
- start = next;
- }
-
- end_scsi:;
- }
-
- /* ----------------------------------------------- */
- log_message("looking for Compaq Smart Array media");
- {
- char * procfiles[] = { "/proc/driver/cpqarray/ida0", "/proc/driver/cciss/cciss0", // 2.4 style
- "/proc/array/ida", "/proc/cciss/cciss", // 2.2 style
- NULL };
- static char cpq_descr[] = "Compaq RAID logical disk";
- char ** procfile = procfiles;
- FILE * f;
- while (procfile && *procfile && (f = fopen(*procfile, "rb"))) {
- while (fgets(buf, sizeof(buf), f)) {
- if (ptr_begins_static_str(buf, "ida/") || ptr_begins_static_str(buf, "cciss/")) {
- char * end = strchr(buf, ':');
- if (!end)
- log_message("Inconsistency in %s, line:\n%s", *procfile, buf);
- else {
- *end = '\0';
- tmp[count].name = strdup(buf);
- tmp[count].type = DISK;
- tmp[count].model = cpq_descr;
- log_message("CPQ: found %s", tmp[count].name);
- count++;
- }
- }
- }
- fclose(f);
- procfile++;
- }
- }
-
- /* ----------------------------------------------- */
log_message("looking for DAC960");
{
FILE * f;
@@ -847,13 +608,102 @@ void find_media(enum media_bus bus)
fclose(f);
}
}
- find_media_after_scsi:
+ /* ----------------------------------------------- */
+ log_message("looking for other disks");
+ {
+ glob_t globbuf;
+ // TODO: We should switch everything to here, and later switch to ignoring
+ // some types of disks (ram, loop, ...) rather than a list to accept.
+ glob("/sys/block/nvme*", 0, NULL, &globbuf);
+ glob("/sys/block/vd*", GLOB_APPEND, NULL, &globbuf);
+ glob("/sys/block/cciss*", GLOB_APPEND, NULL, &globbuf);
+ glob("/sys/block/fd*", GLOB_APPEND, NULL, &globbuf);
+ glob("/sys/block/sd*", GLOB_APPEND, NULL, &globbuf);
+ glob("/sys/block/st*", GLOB_APPEND, NULL, &globbuf);
+ glob("/sys/block/sr*", GLOB_APPEND, NULL, &globbuf);
+
+ for (int i = 0; i < globbuf.gl_pathc; i++) {
+ char *name, *pathend;
+ char path[64];
+ char model[64];
+ int vendor_length = 0;
+
+ strncpy(path, globbuf.gl_pathv[i], sizeof(path));
+ name = strdup(path + 11);
+
+ // Replace ! with /, for example for cciss!c0d0 devices
+ char * c = name;
+ while((c = strchr(c, '!')) != NULL) {
+ *c = '/';
+ c++;
+ }
+
+ pathend = path + strlen(path);
+
+ // Check if this device had been handled by other code
+ int exists = 0;
+ for (int j = 0; j < count; j++) {
+ if (!strcmp(name, tmp[j].name)) {
+ exists = 1;
+ break;
+ }
+ }
+ if (exists) {
+ free(name);
+ continue;
+ }
+
+ strcpy(model, "Unknown Disk");
+
+ strcpy(pathend, "/device/vendor");
+ vendor_length = read_attribute(path, model);
+
+ if (vendor_length) {
+ strcat(model, " ");
+ vendor_length++;
+ }
+
+ strcpy(pathend, "/device/model");
+ read_attribute(path, model+vendor_length);
+
+ strcpy(pathend, "/capability");
+ read_attribute(path, buf);
+ long caps = strtol(buf, NULL, 16);
+
+ // GENHD_FL_UP (0x0010): indicated that the block device is “up” but the kernel has removed that info
+ if (caps && 0) {
+ log_message("Ignoring device %s (not up)", name);
+ free(name);
+ continue;
+ }
+
+ if (caps & 0x0400) {
+ log_message("Ignoring device %s (hidden)", name);
+ free(name);
+ continue;
+ }
+
+ tmp[count].type = DISK;
+ if (caps & 0x0008 || !strncmp(name, "sr", 2)) {
+ tmp[count].type = CDROM;
+ } else if (!strncmp(name, "fd", 2)) {
+ tmp[count].type = FLOPPY;
+ } else if (!strncmp(name, "st", 2)) {
+ tmp[count].type = TAPE;
+ }
+
+ tmp[count].name = name;
+ tmp[count].model = strdup(model);
+ count++;
+ }
+ globfree(&globbuf);
+ }
/* ----------------------------------------------- */
tmp[count].name = NULL;
count++;
- medias = memdup(tmp, sizeof(struct media_info) * count);
+ medias = _memdup(tmp, sizeof(struct media_info) * count);
}
@@ -880,8 +730,8 @@ void get_medias(enum media_type media, char *** names, char *** models, enum med
tmp_names[count] = NULL;
tmp_models[count++] = NULL;
- *names = memdup(tmp_names, sizeof(char *) * count);
- *models = memdup(tmp_models, sizeof(char *) * count);
+ *names = _memdup(tmp_names, sizeof(char *) * count);
+ *models = _memdup(tmp_models, sizeof(char *) * count);
}
@@ -909,7 +759,7 @@ char ** get_net_devices(void)
int i = 0;
if (!already_probed) {
- already_probed = 1; /* cut off loop brought by: probe_that_type => my_insmod => get_net_devices */
+ already_probed = 1; /* cut off loop brought by: probe_that_type => my_modprobe => get_net_devices */
probe_that_type(NETWORK_DEVICES, BUS_ANY);
}
@@ -947,7 +797,7 @@ char ** get_net_devices(void)
tmp[i++] = NULL;
- return memdup(tmp, sizeof(char *) * i);
+ return _memdup(tmp, sizeof(char *) * i);
}
#endif /* DISABLE_NETWORK */
diff --git a/mdk-stage1/probing.h b/mdk-stage1/probing.h
index 15dec7392..702c9d056 100644
--- a/mdk-stage1/probing.h
+++ b/mdk-stage1/probing.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -30,17 +30,14 @@ enum driver_type { MEDIA_ADAPTERS, NETWORK_DEVICES, USB_CONTROLLERS,
enum media_bus { BUS_IDE, BUS_SCSI, BUS_USB, BUS_PCMCIA, BUS_ANY };
#define VIRTIO_PCI_VENDOR 0x1af4
-#define VIRTIO_ID_PCI 0x1000
-#define VIRTIO_ID_NET 0x1001
-#define VIRTIO_ID_BLOCK 0x1002
-#define VIRTIO_ID_BALLOON 0x1005
+#define VIRTIO_ID_NET 0x0001
+#define VIRTIO_ID_BLOCK 0x0002
+#define VIRTIO_ID_BALLOON 0x0005
void find_media(enum media_bus bus);
void get_medias(enum media_type media, char *** names, char *** models, enum media_bus bus);
char ** get_net_devices(void);
-void net_discovered_interface(char * intf_name);
char * get_net_intf_description(char * intf_name);
-void prepare_intf_descr(const char * intf_descr);
void probe_that_type(enum driver_type type, enum media_bus bus);
/* Make sure the MATCH_ALL value is greater than all possible values
diff --git a/mdk-stage1/rescue-gui.c b/mdk-stage1/rescue-gui.c
index a71a5ae91..c7aae6126 100644
--- a/mdk-stage1/rescue-gui.c
+++ b/mdk-stage1/rescue-gui.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2001 Mandriva
*
@@ -27,6 +27,7 @@
#include <sys/ioctl.h>
#include <linux/unistd.h>
#include <sys/select.h>
+#include <linux/reboot.h>
#include "config-stage1.h"
#include "frontend.h"
@@ -34,7 +35,11 @@
#include "params.h"
#include <sys/syscall.h>
-#define reboot(...) syscall(__NR_reboot, __VA_ARGS__)
+
+static inline long reboot(void)
+{
+ return (long) syscall(__NR_reboot, LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, LINUX_REBOOT_CMD_RESTART, 0);
+}
#if defined(__i386__) || defined(__x86_64__)
#define ENABLE_RESCUE_MS_BOOT 1
@@ -42,9 +47,9 @@
char * env[] = {
"PATH=/usr/bin:/bin:/sbin:/usr/sbin:/mnt/sbin:/mnt/usr/sbin:/mnt/bin:/mnt/usr/bin",
- "LD_LIBRARY_PATH=/lib:/usr/lib:/mnt/lib:/mnt/usr/lib:/usr/X11R6/lib:/mnt/usr/X11R6/lib"
-#if defined(__x86_64__) || defined(__ppc64__)
- ":/lib64:/usr/lib64:/usr/X11R6/lib64:/mnt/lib64:/mnt/usr/lib64:/mnt/usr/X11R6/lib64"
+ "LD_LIBRARY_PATH=/lib:/usr/lib:/mnt/lib:/mnt/usr/lib"
+#if defined(__x86_64__)
+ ":/lib64:/usr/lib64:/mnt/lib64:/mnt/usr/lib64"
#endif
,
"HOME=/",
@@ -148,7 +153,7 @@ void unmount_filesystems(void)
for (i = nb = 0; i < numfs; i++)
if (fs[i].mounted) {
printf("\t%s umount failed\n", fs[i].name);
- if (strcmp(fs[i].fs, "ext2") == 0) nb++; /* don't count not-ext2 umount failed */
+ if (strcmp(fs[i].fs, "ext4") == 0) nb++; /* don't count not-ext4 umount failed */
}
if (nb) {
@@ -161,7 +166,6 @@ void unmount_filesystems(void)
/* ------ UUURGH -- this is dirrrrrttttyyyyyy */
void probe_that_type(void) {}
-void exit_bootsplash(void) {}
int main(int argc __attribute__ ((unused)), char **argv __attribute__ ((unused)))
@@ -233,7 +237,7 @@ int main(int argc __attribute__ ((unused)), char **argv __attribute__ ((unused))
sync(); sync();
printf("rebooting system\n");
sleep(2);
- reboot(0xfee1dead, 672274793, 0x01234567);
+ reboot();
}
if (ptr_begins_static_str(choice, doc)) {
binary = "/usr/bin/rescue-doc";
diff --git a/mdk-stage1/rp-pppoe/README b/mdk-stage1/rp-pppoe/README
deleted file mode 100644
index 269fc16be..000000000
--- a/mdk-stage1/rp-pppoe/README
+++ /dev/null
@@ -1,87 +0,0 @@
-pppoe: a PPP-over-Ethernet redirector for pppd
-Copyright (C) 2001 Roaring Penguin Software Inc.
-
-Much inspiration from an earlier client by Luke Stras.
-
-The MSS clamping was inspired by mssclampfw by Marc Boucher <marc@mbsi.ca>
-with acknowledgements to Rebel.com (http://www.rebel.com). However, the
-actual MSS clamping code is original and is licensed under the GPL, unlike
-the original mssclampfw.
-
-Introduction
-============
-
-pppoe is a user-space redirector which permits the use of PPPoE
-(Point-to-Point Over Ethernet) with Linux. PPPoE is used by many
-ADSL service providers.
-
-Installation
-============
-
-Requirements
-------------
-
-1) Linux 2.2.9 or later on Intel, Sparc or PowerPC. It may work on
- Alpha, too -- anyone care to let me know?
-
- OR
-
- Linux 2.0.36 or later.
-
- OR
-
- FreeBSD, NetBSD or OpenBSD with BPF support. I have access only
- to FreeBSD. In general, I can't answer questions about the *BSD's
- as well as I can about Linux.
-
-
-2) pppd 2.3.10 or later. Versions 2.3.7 and later work unless you use
- demand-dialling. For demand dialling, you *must* use 2.3.10 or later.
-
-QUICKSTART
-----------
-
-If you're lucky, the "quickstart" method will work. After unpacking
-the archive, become root and type:
-
- ./go
-
-This should configure, compile and install the software and set up your
-ADSL connection. You'll have to answer a few questions along the way.
-
-If you want the GUI wrapper, type:
-
- ./go-gui
-
-If ./go and ./go-gui didn't work, read the rest of this README.
-
-Compiling
----------
-
-Compile and install pppd if you don't already have it. Then:
-
-1) Unpack:
-
- $ tar xzvf rp-pppoe-xxx.tar.gz
-
-2) Change to source directory:
-
- $ cd src
-
-3) Configure:
-
- $ ./configure
-
-4) Compile:
-
- $ make
-
-4) Install (this step must be done as root)
-
- # make install
-
-5) Now read doc/HOW-TO-CONNECT
-
---
-David F. Skoll <dfs@roaringpenguin.com> | Roaring Penguin Software Inc.
-http://www.roaringpenguin.com | Linux and UNIX Specialists \ No newline at end of file
diff --git a/mdk-stage1/rp-pppoe/configs/firewall-masq b/mdk-stage1/rp-pppoe/configs/firewall-masq
deleted file mode 100644
index cb16fbecf..000000000
--- a/mdk-stage1/rp-pppoe/configs/firewall-masq
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/sh
-#
-# firewall-masq This script sets up firewall rules for a machine
-# acting as a masquerading gateway
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc. This software may
-# be distributed under the terms of the GNU General Public License, version
-# 2 or any later version.
-
-# Interface to Internet
-EXTIF=ppp+
-
-ANY=0.0.0.0/0
-
-ipchains -P input ACCEPT
-ipchains -P output ACCEPT
-ipchains -P forward DENY
-
-ipchains -F forward
-ipchains -F input
-ipchains -F output
-
-# Deny TCP and UDP packets to privileged ports
-ipchains -A input -l -i $EXTIF -d $ANY 0:1023 -p udp -j DENY
-ipchains -A input -l -i $EXTIF -d $ANY 0:1023 -p tcp -j DENY
-
-# Deny TCP connection attempts
-ipchains -A input -l -i $EXTIF -p tcp -y -j DENY
-
-# Deny ICMP echo-requests
-ipchains -A input -l -i $EXTIF -s $ANY echo-request -p icmp -j DENY
-
-# Do masquerading
-ipchains -A forward -j MASQ
-echo 1 > /proc/sys/net/ipv4/ip_forward
diff --git a/mdk-stage1/rp-pppoe/configs/firewall-standalone b/mdk-stage1/rp-pppoe/configs/firewall-standalone
deleted file mode 100644
index bcb1e92b1..000000000
--- a/mdk-stage1/rp-pppoe/configs/firewall-standalone
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-#
-# firewall-standalone This script sets up firewall rules for a standalone
-# machine
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc. This software may
-# be distributed under the terms of the GNU General Public License, version
-# 2 or any later version.
-
-# Interface to Internet
-EXTIF=ppp+
-
-ANY=0.0.0.0/0
-
-ipchains -P input ACCEPT
-ipchains -P output ACCEPT
-ipchains -P forward DENY
-
-ipchains -F forward
-ipchains -F input
-ipchains -F output
-
-# Deny TCP and UDP packets to privileged ports
-ipchains -A input -l -i $EXTIF -d $ANY 0:1023 -p udp -j DENY
-ipchains -A input -l -i $EXTIF -d $ANY 0:1023 -p tcp -j DENY
-
-# Deny TCP connection attempts
-ipchains -A input -l -i $EXTIF -p tcp -y -j DENY
-
-# Deny ICMP echo-requests
-ipchains -A input -l -i $EXTIF -s $ANY echo-request -p icmp -j DENY
-
diff --git a/mdk-stage1/rp-pppoe/configs/pap-secrets b/mdk-stage1/rp-pppoe/configs/pap-secrets
deleted file mode 100644
index f4483a723..000000000
--- a/mdk-stage1/rp-pppoe/configs/pap-secrets
+++ /dev/null
@@ -1,9 +0,0 @@
-# Edit this file and place it in /etc/ppp/pap-secrets
-
-#User #Server #Password #IP
-bxxxxx@sympatico.ca * my_password *
-
-# Replace bxxxxx@sympatico.ca with your Sympatico user-ID
-# Replace my_password with your Sympatico password
-
-# For Magma, use xxyyzz@magma.ca
diff --git a/mdk-stage1/rp-pppoe/configs/pppoe-server-options b/mdk-stage1/rp-pppoe/configs/pppoe-server-options
deleted file mode 100644
index 8319870ac..000000000
--- a/mdk-stage1/rp-pppoe/configs/pppoe-server-options
+++ /dev/null
@@ -1,5 +0,0 @@
-# PPP options for the PPPoE server
-require-pap
-login
-lcp-echo-interval 10
-lcp-echo-failure 2
diff --git a/mdk-stage1/rp-pppoe/configs/pppoe.conf b/mdk-stage1/rp-pppoe/configs/pppoe.conf
deleted file mode 100644
index 9f77b913c..000000000
--- a/mdk-stage1/rp-pppoe/configs/pppoe.conf
+++ /dev/null
@@ -1,126 +0,0 @@
-#***********************************************************************
-#
-# pppoe.conf
-#
-# Configuration file for rp-pppoe. Edit as appropriate and install in
-# /etc/ppp/pppoe.conf
-#
-# NOTE: This file is used by the adsl-start, adsl-stop, adsl-connect and
-# adsl-status shell scripts. It is *not* used in any way by the
-# "pppoe" executable.
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc.
-#
-# This file may be distributed under the terms of the GNU General
-# Public License.
-#
-# $Id$
-#***********************************************************************
-
-# When you configure a variable, DO NOT leave spaces around the "=" sign.
-
-# Ethernet card connected to ADSL modem
-ETH=eth1
-
-# ADSL user name. You may have to supply "@provider.com" Sympatico
-# users in Canada do need to include "@sympatico.ca"
-# Sympatico uses PAP authentication. Make sure /etc/ppp/pap-secrets
-# contains the right username/password combination.
-# For Magma, use xxyyzz@magma.ca
-USER=bxxxnxnx@sympatico.ca
-
-# Bring link up on demand? Default is to leave link up all the time.
-# If you want the link to come up on demand, set DEMAND to a number indicating
-# the idle time after which the link is brought down.
-DEMAND=no
-#DEMAND=300
-
-# DNS type: SERVER=obtain from server; SPECIFY=use DNS1 and DNS2;
-# NOCHANGE=do not adjust.
-DNSTYPE=SERVER
-
-# Obtain DNS server addresses from the peer (recent versions of pppd only)
-USEPEERDNS=yes
-
-DNS1=
-DNS2=
-
-### ONLY TOUCH THE FOLLOWING SETTINGS IF YOU'RE AN EXPERT
-
-# How long adsl-start waits for a new PPP interface to appear before
-# concluding something went wrong. If you use 0, then adsl-start
-# exits immediately with a successful status and does not wait for the
-# link to come up. Time is in seconds.
-#
-# WARNING WARNING WARNING:
-#
-# If you are using rp-pppoe on a physically-inaccessible host, set
-# CONNECT_TIMEOUT to 0. This makes SURE that the machine keeps trying
-# to connect forever after adsl-start is called. Otherwise, it will
-# give out after CONNECT_TIMEOUT seconds and will not attempt to
-# connect again, making it impossible to reach.
-CONNECT_TIMEOUT=30
-
-# How often in seconds adsl-start polls to check if link is up
-CONNECT_POLL=2
-
-# Specific desired AC Name
-ACNAME=
-
-# Specific desired service name
-SERVICENAME=
-
-# Character to echo at each poll. Use PING="" if you don't want
-# anything echoed
-PING="."
-
-# File where the adsl-connect script writes its process-ID.
-# Three files are actually used:
-# $PIDFILE contains PID of adsl-connect script
-# $PIDFILE.pppoe contains PID of pppoe process
-# $PIDFILE.pppd contains PID of pppd process
-CF_BASE=`basename $CONFIG`
-PIDFILE="/var/run/$CF_BASE-adsl.pid"
-
-# Do you want to use synchronous PPP? "yes" or "no". "yes" is much
-# easier on CPU usage, but may not work for you. It is safer to use
-# "no", but you may want to experiment with "yes". "yes" is generally
-# safe on Linux machines with the n_hdlc line discipline; unsafe on others.
-SYNCHRONOUS=no
-
-# Do you want to clamp the MSS? Here's how to decide:
-# - If you have only a SINGLE computer connected to the ADSL modem, choose
-# "no".
-# - If you have a computer acting as a gateway for a LAN, choose "1412".
-# The setting of 1412 is safe for either setup, but uses slightly more
-# CPU power.
-CLAMPMSS=1412
-#CLAMPMSS=no
-
-# LCP echo interval and failure count.
-LCP_INTERVAL=20
-LCP_FAILURE=3
-
-# PPPOE_TIMEOUT should be about 4*LCP_INTERVAL
-PPPOE_TIMEOUT=80
-
-# Firewalling: One of NONE, STANDALONE or MASQUERADE
-FIREWALL=NONE
-
-# Linux kernel-mode plugin for pppd. If you want to try the kernel-mode
-# plugin, use LINUX_PLUGIN=/etc/ppp/plugins/rp-pppoe.so
-LINUX_PLUGIN=
-
-# Any extra arguments to pass to pppoe. Normally, use a blank string
-# like this:
-PPPOE_EXTRA=""
-
-# Rumour has it that "Citizen's Communications" with a 3Com
-# HomeConnect ADSL Modem DualLink requires these extra options:
-# PPPOE_EXTRA="-f 3c12:3c13 -S ISP"
-
-# Any extra arguments to pass to pppd. Normally, use a blank string
-# like this:
-PPPD_EXTRA=""
-
-
diff --git a/mdk-stage1/rp-pppoe/doc/CHANGES b/mdk-stage1/rp-pppoe/doc/CHANGES
deleted file mode 100644
index 9afce027d..000000000
--- a/mdk-stage1/rp-pppoe/doc/CHANGES
+++ /dev/null
@@ -1,177 +0,0 @@
-Changes from Version 2.8 to 3.0:
-
-- Many small improvements to server. Server now only makes one
- discovery socket, systemwide, with addition of "-n" option to pppoe.
-
-- Fixes for compilation problems on BSD, Solaris and some Linux platforms.
-
-- Added "-p" option to pppoe-server to allow you to specify a pool of
- IP addresses to assign to clients.
-
-- Added GUI system (tkpppoe). This work was funded by Iospan
- Wireless, Inc. The GUI includes a Set-UID wrapper (pppoe-wrapper)
- which allows ordinary users to control a link (if so authorized.)
- I believe the wrapper script is secure, but please audit the
- source code (gui/wrapper.c) if you have any concerns.
-
-- Changes to scripts and pppoe.conf. DNS setup is now dynamic (happens
- each time adsl-connect runs.)
-
-- Made relay.c check packet lengths rigorously; made it throw out Ethernet
- frame padding on session packets as well as discovery packets.
-
-Changes from Version 2.7 to 2.8:
-
-- Added init scripts for TurboLinux, courtesy of Yasuhiro Sumi.
-
-- Made relay.c check packet lengths rigorously; made it throw out Ethernet
- frame padding on discovery packets.
-
-*** NOTE: 2.7 was not released publicly
-
-Changes from Version 2.6 to 2.7:
-
-- Completely restructured source file tree.
-
-- Much internal restructuring to eliminate a bunch of global variables.
-
-- adsl-connect now executes /etc/ppp/adsl-lost whenever connection is dropped
- or cannot be established.
-
-- Split pppoe.c into pppoe.c and discovery.c.
-
-- Added relay agent (pppoe-relay).
-
-- Made adsl-connect script use the "-U" (host-unique) option to better support
- multiple PPPoE links.
-
-- Added support for kernel-mode PPPoE (EXPERIMENTAL, UNSUPPORTED!)
-
-- Added "-o" option to PPPoE server; encoded server PID in pppoe-server
- cookie.
-
-Changes from Version 2.5 to 2.6:
-
-- Code should now compile cleanly on Caldera and Slackware Linux
-
-- Fixed rp-pppoe.spec file to work on Mandrake and Red Hat.
-
-- Deleted some obsolete files
-
-- Fixed bug in Solaris/x86 port (thanks to Philippe Levan)
-
-- Made shell scripts nicer under Solaris (again, Philippe Levan)
-
-- Made adsl-status look under /var/run and /etc/ppp for PID files. Should
- fix problems with NetBSD.
-
-- Added PPPD_EXTRA to pppoe.conf; made the PID file depend on the config
- file name. This makes it easier to run multiple PPPoE sessions.
-
-Changes from Version 2.4 to 2.5:
-
-- Tested for zero-length TCP option-length field, and for reverse-packing
- of type/code bitfields. Thanks to Robert Schlabbach for pointing out
- these problems.
-
-- Set umask to 077 in adsl-setup.in to protect created files like
- /etc/ppp/pap-secrets.
-
-Changes from Version 2.3 to 2.4:
-
-- Fixed spec file to automatically add .gz extension to man files as required
-
-- Tightened firewall rules.
-
-- Better check for /var/run in adsl-status; minor shell script fixes and
- cleanups for NetBSD and Solaris.
-
-- Added FAQ to HOW-TO-CONNECT regarding running a script each time a
- connection is made.
-
-Changes from Version 2.2 to 2.3:
-
-- Fixed the init script to create/remove /var/lock/subsys/adsl (patch
- courtesy of Charley Carter.)
-
-- Added support (under Linux) for N_HDLC line discipline which should
- greatly reduce CPU usage. My tests show it cuts CPU usage in half.
- My 486 DX2/66 gets 800 kb/s at 22% CPU usage.
-
-- adsl-connect uses "setsid" (if available) so that adsl-stop doesn't kill
- its caller. There is (IMO) a bug in pppd which kills all processes in
- its process group if the "pty" option is used. The setsid program gets
- around this bug, on Linux at least.
-
-- Port to Solaris, courtesy of David Holland.
-
-- Renamed spec file from "spec" to "rp-pppoe.spec" and made some cleanups.
- NOTE: Red Hat, in their infinite wisdom, decided to make the new RPM
- compress man pages automatically. You may have problems building RPM's
- from source unless you get the latest rpm package and make sure it
- compresses man pages.
-
-Changes from Version 2.1 to 2.2:
-
-- Added "-f" option to pppoe to allow use of any Ethernet frame type
- for PPPoE. USE WITH CAUTION -- this is a workaround for broken DSL
- providers, not something you should monkey with freely!
-
-- Added pppoe-sniff program to help expose non-standard PPPoE implementations.
-
-Changes from Version 2.0 to 2.1:
-
-- Fixed minor bugs in bounds-checking
-
-- Modified adsl-status to use output of "netstat -r -n" to determine whether
- or not link is up. This should make it independent of locale, I hope!
-
-- Added "-k" and "-d" options to pppoe.
-
-Changes from Version 1.9 to 2.0:
-
-- Addition of pppoe-server
-
-- Massive internal code restructuring
-
-- Zealous bounds-checking everywhere.
-
-- adsl-setup now quotes user name and password in /etc/ppp/pap-secrets.
-
-- Ported to OpenBSD, FreeBSD and NetBSD, courtesy of Geoff Mottram
- and Yannis Sismanis.
-
-- Rearranged adsl-* shell scripts, courtesy of Heiko Schlittermann.
-
-- Fixed bug in which Host-Uniq did not work if access concentrator sent
- a cookie.
-
-- Addition of SuSE-specific "init" script, courtesy of Gary Cameron.
-
-Changes from Version 1.8 to 1.9:
-
-- Added some more documentation to HOW-TO-CONNECT
-
-- Demand-dialling option now works correctly
-
-- SIGHUP terminates pppoe after sending a PADT to the access concentrator
-
-- Minor cleanups to connection shell scripts
-
-Changes from Version 1.7 to 1.8:
-
-- Added demand-dialling option
-
-- Clarified HOW-TO-CONNECT
-
-- Added adsl-status script
-
-- Added "restart" and "status" options to Red Hat /etc/rc.d/init.d/adsl script
-
-- Made adsl-setup check for existence of pppd
-
-- Wildcarded external interface in firewall rules
-
-- Made pppoe send a PADT frame if connection is terminated
-
-$Id$
diff --git a/mdk-stage1/rp-pppoe/doc/HOW-TO-CONNECT b/mdk-stage1/rp-pppoe/doc/HOW-TO-CONNECT
deleted file mode 100644
index 3e888af69..000000000
--- a/mdk-stage1/rp-pppoe/doc/HOW-TO-CONNECT
+++ /dev/null
@@ -1,295 +0,0 @@
-$Id$
-
-This package lets you connect a Linux machine to Sympatico HSE or Magma's
-high-speed service using a Nortel 1-meg modem.
-
-Follow these steps and you should have your high-speed service up and running.
-
-0. Install the rp-pppoe-software
---------------------------------
-
-You should have already done this by the time you're reading this. If not,
-go back and read README.
-
-1. Set up your Ethernet hardware
---------------------------------
-
-First, make sure the Ethernet card you intend to use with the modem is
-visible to the Linux kernel. Just how to do this is beyond the scope
-of this document. However, if the card is the only Ethernet card in
-the system, executing:
-
- ifconfig eth0
-
-should display something like this:
-
- eth0 Link encap:Ethernet HWaddr 00:60:67:62:31:D4
-
-plust some more lines. Your HWaddr will be different. As long as you see
-the HWaddr line, your card should be working.
-
-DO NOT assign an IP address to the Ethernet card. DO NOT configure the
-card to come up at boot time.
-
-2. Configure various files
---------------------------
-
-Several files need editing. The easiest way to do this is to run
-the following command as root:
-
- adsl-setup
-
-Answer the questions and you should be all set. If you want to know what
-goes on behind the scenes, continue reading this document. If you don't
-care and your connection works, stop reading. :-)
-
-3. Edit pap-secrets
--------------------
-
-Edit the "pap-secrets" file, inserting your proper user-ID and password.
-Install the file (or copy the relevant lines) to /etc/ppp/pap-secrets.
-Your ISP may use CHAP authentication. In this case, add the line to
-/etc/ppp/chap-secrets.
-
-4. Edit /etc/ppp/pppoe.conf
------------------------------
-
-The file /etc/ppp/pppoe.conf contains configuration information for the
-ADSL connection. You need to edit the following items:
-
-- Change ETH=eth1 to the correct Ethernet device for your modem.
-- Change USER=bxxxnxnx@sympatico.ca to your proper ADSL user-ID.
-
-Don't edit any of the other settings unless you're an expert.
-
-5. Set up DNS
--------------
-
-If you are using DNS servers supplied by your ISP, edit the file
-/etc/resolv.conf to contain these lines:
-
- nameserver ip_addr_of_first_dns_server
- nameserver ip_addr_of_second_dns_server
-
-For example:
-
- nameserver 204.101.251.1
- nameserver 204.101.251.2
-
-
-6. Firewall your machine
-------------------------
-
-MAKE SURE YOU FIREWALL YOUR MACHINE. A sample firewall script is given
-in the shell script "firewall" To install the script:
-
-a) Copy it to /etc/rc.d/init.d/firewall
-b) Type: chkconfig firewall on
-c) Start the firewall: sh /etc/rc.d/init.d/firewall start
-
-(The above procedure works ONLY on Red Hat-like systems.)
-
-You may want to tweak the script somewhat.
-
-7. Bring up the connection at boot time
----------------------------------------
-
-On a Red Hat system, the installation procedure should have installed
-a script called /etc/rc.d/init.d/adsl. To bring up the connection
-at boot time, just type this command as root:
-
- chkconfig --add adsl
-
-On non-Red-Hat systems, add this line to the end
-of /etc/rc.d/rc.local:
-
- /usr/sbin/adsl-start
-
-8. Configure LAN Hosts
-----------------------
-
-If you have a LAN behind the firewall, you have to lower the TCP
-maximum segment size from the normal 1460 to 1452 (or better, 1412.)
-You have two options: Either set the MTU of all the interfaces on
-other hosts on the LAN to 1452, or use the "-m 1412" option to pppoe.
-The "-m" option for pppoe is far simpler and makes it easier to add
-hosts to the LAN, but consumes some extra CPU time.
-
-If you want to manually configure the LAN hosts, here's how:
-
-In Linux, use: "ifconfig eth0 mtu 1452". For best results, put this
-in an /etc/rc.d/rc.local script.
-
-For Windows, machines, see http://lan.cns.ksu.edu/OS/WIN95/slip95.htm.
-Set the MaxMTU to 1452.
-
-9. Commands to control the ADSL link
-------------------------------------
-
-As root, bring up the link by typing: adsl-start
-As root, bring down the link by typing: adsl-stop
-
-That's it!
-
---
-David F. Skoll <dfs@roaringpenguin.com> | Roaring Penguin Software Inc.
-http://www.roaringpenguin.com | Linux and UNIX Specialists
-
-PROBLEMS! DAVE, IT DOESN'T WORK!
----------------------------------
-
-Here are some problems PPPoE users have encountered.
-
------------------------------------------------------------------------------
-A) Can't see the Ethernet interface
-
-Well, I can't really help you here. To use these instructions, you must
-have Linux working to the point where it recognizes your Ethernet card.
-If you type "ifconfig ethx" and you get back a HWAddr value, your Ethernet
-card is probably OK. But I really can't help with hardware configuration
-issues.
-
------------------------------------------------------------------------------
-B) Connection seems to come up, but I can't browse the web or ping anything
-
-You probably don't have DNS set up. See step 6.
-
------------------------------------------------------------------------------
-C) Can't compile PPPoE
-
-I have only tested compilation on 2.2-kernel machines. Make sure you have
-"make", the C compiler and all development header files installed.
-
------------------------------------------------------------------------------
-D) pppd complains about (i) "unknown option pty" or (ii) "pty option precludes
- specifying device name"
-
-(i) Your pppd is too old. You need at least 2.3.7.
-(ii) Your /etc/ppp/options file is not empty. Empty it!
-
------------------------------------------------------------------------------
-E) pppoe dies with the log message "Message too long"
-
-You set the MTU of the Ethernet interface connected to the ADSL modem
-to less than 1500. Don't do that.
-
------------------------------------------------------------------------------
-F) Internal hosts can't see the Internet
-
-Do you have masquerading set up? I can't help you in great detail, but
-see the IPCHAINS-HOWTO and the IP-Masquerade mini-HOWTO.
-
------------------------------------------------------------------------------
-G) Authentication fails
-
-Make sure you have the right secret in /etc/ppp/pap-secrets. Your ISP
-may be using CHAP; it won't hurt to copy the line to /etc/ppp/chap-secrets.
-
-Also, MAKE SURE that /etc/ppp/options is EMPTY. The "adsl-connect" script
-supplies all required options on the command line; additional options
-in /etc/ppp/options may mess things up.
-
------------------------------------------------------------------------------
-H) VPN software does not work
-
-If you are using VPN software on a Windows or Linux machine with another
-Linux machine running PPPoE as the gateway, you MUST NOT use the "-m" option
-to pppoe. This alters IP packets, which will break any VPN which uses IPSec.
-In /etc/ppp/pppoe.conf, set CLAMPMSS to "no". You'll also have to reduce
-the MTU on the hosts behind the gateway to 1452.
-
------------------------------------------------------------------------------
-I) I can browse some web sites just fine, but others stall forever.
-
-There is probably a buggy router or firewall between you and the Web server.
-One possible workaround: In /etc/ppp/pppoe.conf, find the line which reads:
-
- CLAMPMSS=1412
-
-Try lowering the 1412 until it works (go down in steps of 100 or so.) Each
-time you lower the value, you have to restart your connection like this:
-
- adsl-stop; adsl-start
-
-This should work around buggy routers which do not support Path MTU discovery.
-
------------------------------------------------------------------------------
-J) Whenever I connect using ADSL, my internal LAN no longer sees the gateway
-
-You are more than likely running a 2.0.X Linux kernel. To solve this
-problem, give the Ethernet card connected to the DSL modem a fake IP
-address. For example, if eth0 is your internal LAN card and eth1 goes to
-the DSL modem, do something like this:
-
- ifconfig eth1 10.0.0.1 netmask 255.255.255.0
-
-(You may have to choose a different IP address; experiment.)
------------------------------------------------------------------------------
-K) How can I run a script every time I connect and get a new IP address?
-
-Put the script in /etc/ppp/ip-up. See the pppd(8) man page.
------------------------------------------------------------------------------
-L) Nothing works!
-
-You may need to put your Ethernet card in half-duplex, 10Mb/s mode to
-work with the DSL modem. You may have to run a DOS program to do this,
-or pass special parameters to the Linux driver.
-
-Some providers object to attempts to set the MRU or MTU. Try removing
-"mtu 1492 mru 1492" from PPP_STD_OPTIONS in the adsl-connect script.
-This problem has been seen with an ISP in Hong Kong.
-
-Your DSL provider may be using non-standard PPPoE frames or require
-something special in the Service-Name field. If you have two computers,
-you can try sniffing out these values with the "pppoe-sniff" program.
-Type "man pppoe-sniff" for details. If you don't have two computers,
-you'll have to ask your DSL provider if it uses non-standard PPPoE frames
-or special Service-Name fields. Good luck getting an answer...
-
-If pppoe-sniff indicates that nothing is amiss, make sure the Ethernet
-card associated with the ADSL modem does NOT have a valid IP address.
-(NOTE: For 2.0 kernels, you may have to give it a fake IP address
-which is not on your internal subnet. Something like 192.168.42.42
-might work if you are not using 192.168.42.*)
-
-If you are using synchronous PPP on a slow machine, try switching to
-asynchronous PPP.
-
-Make sure no entries in the routing table go through the Ethernet card
-connected to the ADSL modem. You might want to add these lines in
-adsl-connect:
-
- ifconfig ethx down
- ifconfig ethx up mtu 1500
-
-which should reset things to sane values.
-
-#######################################################################
-# WHEN ALL ELSE FAILS: #
-#######################################################################
-
-If you are completely unable to connect, run the adsl-start script in
-debugging mode. If you are using bash as your shell (if you don't
-know what your shell is, it's probably bash), type this:
-
- DEBUG=1 adsl-start
-
-In tcsh or csh, use:
-
- setenv DEBUG 1; adsl-start
-
-Then follow the instructions to mail the debugging file to me. PLEASE
-DON'T DO THIS until you have exhausted all other avenues; rp-pppoe is
-free software and it costs me time and money to help people with
-problems. While I don't mind doing this, I do mind it if you don't
-make an effort to fix the problem yourself first.
-
-WARNING: If you run adsl-start in debugging mode and you manage to
-connect, your connection will be extremely slow and huge amounts of
-data will quickly fill your /tmp directory. Do not use debugging mode
-unless you really cannot get your connection to work.
-
-Be aware that debugging mode produces hex dumps which potentially reveal
-your user name and password. If the debugging output includes packets
-labeled "PPPOE Session", you may wish to remove these packets from the
-dump before mailing it to me.
diff --git a/mdk-stage1/rp-pppoe/doc/KERNEL-MODE-PPPOE b/mdk-stage1/rp-pppoe/doc/KERNEL-MODE-PPPOE
deleted file mode 100644
index 454c4b870..000000000
--- a/mdk-stage1/rp-pppoe/doc/KERNEL-MODE-PPPOE
+++ /dev/null
@@ -1,39 +0,0 @@
-RP-PPPoE now supports kernel-mode PPPoE on Linux kernels 2.4.x. However,
-the default "./go" build procedure does not make kernel-mode support.
-
-Here's what you need to do:
-
-1) Download Michal Ostrowski's patched version of pppd which supports
-a PPPoE plugin. The latest version as of this writing is
-at http://www.math.uwaterloo.ca/~mostrows/ in
-http://www.math.uwaterloo.ca/~mostrows/ppp-2.4.0-pppoe4.tgz. It is
-also mirrored at http://www.roaringpenguin.com/pppoe/
-
-2) Unpack that version of pppd and build and install it.
-
-3) In the rp-pppoe directory, change to src/ and type:
-
- ./configure --enable-plugin=/path/to/ppp-tree
-
-Here, /path/to/ppp-tree is where you unpacked the pppd software. It
-should be the directory named ppp-2.4.0.pppoe
-
-4) Type make; make install
-
-5) Edit /etc/ppp/pppoe.conf to include this line:
-
- LINUX_PLUGIN=/etc/ppp/plugins/rp-pppoe.so
-
-6) Make sure your kernel was built with support for PPP, PPPOX and that
-all modules are locatable by modprobe. Make sure you have a /dev/ppp
-device:
-
- mknod /dev/ppp c 108 0
-
-After that, adsl-start should use kernel-mode PPPoE.
-
-This code is experimental and unsupported. Use at your own risk.
-
---
-David F. Skoll <dfs@roaringpenguin.com>
-
diff --git a/mdk-stage1/rp-pppoe/doc/LICENSE b/mdk-stage1/rp-pppoe/doc/LICENSE
deleted file mode 100644
index 9ed341535..000000000
--- a/mdk-stage1/rp-pppoe/doc/LICENSE
+++ /dev/null
@@ -1,339 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 675 Mass Ave, Cambridge, MA 02139, USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- Appendix: How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) 19yy <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) 19yy name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/mdk-stage1/rp-pppoe/doc/PROBLEMS b/mdk-stage1/rp-pppoe/doc/PROBLEMS
deleted file mode 100644
index f0b7d7d59..000000000
--- a/mdk-stage1/rp-pppoe/doc/PROBLEMS
+++ /dev/null
@@ -1,3 +0,0 @@
-Problems?
-
-See the last section of HOW-TO-CONNECT.
diff --git a/mdk-stage1/rp-pppoe/go b/mdk-stage1/rp-pppoe/go
deleted file mode 100755
index 305ac9ee4..000000000
--- a/mdk-stage1/rp-pppoe/go
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/bin/sh
-#***********************************************************************
-#
-# go
-#
-# Quick-start shell script to set up ADSL
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc.
-#
-# $Id$
-#***********************************************************************
-
-# Figure out directory of script
-MYDIR=`dirname $0`
-cd $MYDIR/src
-
-echo "Running ./configure..."
-./configure
-if [ "$?" != 0 ] ; then
- echo "Oops! It looks like ./configure failed."
- exit 1
-fi
-
-echo "Running make..."
-make
-if [ "$?" != 0 ] ; then
- echo "Oops! It looks like make failed."
- exit 1
-fi
-
-echo "Running make install..."
-make install
-
-if [ "$?" != 0 ] ; then
- echo "Oops! It looks like make install failed."
- exit 1
-fi
-
-for i in a a a a a a a a a a a a a a a a a a a a a a a a a a a a ; do
- echo ""
-done
-
-sh ../scripts/adsl-setup
diff --git a/mdk-stage1/rp-pppoe/go-gui b/mdk-stage1/rp-pppoe/go-gui
deleted file mode 100755
index ddce984fd..000000000
--- a/mdk-stage1/rp-pppoe/go-gui
+++ /dev/null
@@ -1,92 +0,0 @@
-#!/bin/sh
-#***********************************************************************
-#
-# go-gui
-#
-# Quick-start shell script to set up ADSL and GUI wrapper
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc.
-#
-# $Id$
-#***********************************************************************
-
-# GUI only works on Linux
-if test "`uname`" != "Linux" ; then
- echo "Sorry, the GUI only works on Linux."
- exit 1
-fi
-
-# Figure out directory of script
-MYDIR=`dirname $0`
-cd $MYDIR/src
-
-echo "Running ./configure..."
-./configure
-if [ "$?" != 0 ] ; then
- echo "Oops! It looks like ./configure failed."
- exit 1
-fi
-
-echo "Running make..."
-make
-if [ "$?" != 0 ] ; then
- echo "Oops! It looks like make failed."
- exit 1
-fi
-
-echo "Running make install..."
-make install
-
-if [ "$?" != 0 ] ; then
- echo "Oops! It looks like make install failed."
- exit 1
-fi
-
-echo "Building GUI wrapper..."
-cd ../gui
-make
-if [ "$?" != 0 ] ; then
- echo "Oops! It looks like make failed."
- exit 1
-fi
-
-echo "Installing GUI..."
-make install
-
-if [ "$?" != 0 ] ; then
- echo "Oops! It looks like make install failed."
- exit 1
-fi
-
-# Install entry in KDE menu
-if test -n "$KDEDIR" ; then
- echo "Installing KDE menu entry Internet : TkPPPoE..."
- mkdir -p "$KDEDIR/share/applnk/Internet"
- cat <<EOF > "$KDEDIR/share/applnk/Internet/tkpppoe.kdelnk"
-# KDE Config File
-[KDE Desktop Entry]
-Name=TkPPPoE
-Comment=Start/Stop ADSL connections
-Exec=tkpppoe
-Terminal=0
-Type=Application
-EOF
-fi
-
-# Install entry in GNOME menus
-GNOMEDIR=`gnome-config --datadir 2>/dev/null`
-if test -n "$GNOMEDIR" ; then
- echo "Installing GNOME menu entry Internet : TkPPPoE..."
- mkdir -p "$GNOMEDIR/gnome/apps/Internet"
-cat <<EOF > "$GNOMEDIR/gnome/apps/Internet/tkpppoe.desktop"
-[Desktop Entry]
-Name=TkPPPoE
-Comment=Start/Stop ADSL connections
-Exec=tkpppoe
-Terminal=0
-Type=Application
-EOF
-fi
-echo "Running GUI configuration tool..."
-tkpppoe &
-exit 0
diff --git a/mdk-stage1/rp-pppoe/gui/Makefile.in b/mdk-stage1/rp-pppoe/gui/Makefile.in
deleted file mode 100644
index a9b0844c0..000000000
--- a/mdk-stage1/rp-pppoe/gui/Makefile.in
+++ /dev/null
@@ -1,64 +0,0 @@
-# @configure_input@
-#***********************************************************************
-#
-# Makefile
-#
-# Makefile for GUI for Roaring Penguin's Linux user-space PPPoE client.
-#
-# Copyright (C) 2001 Roaring Penguin Software Inc.
-#
-# This program may be distributed according to the terms of the GNU
-# General Public License, version 2 or (at your option) any later version.
-#
-# $Id$
-#***********************************************************************
-DEFINES=
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-mandir=@mandir@
-install=@INSTALL@
-install_dir=@INSTALL@ -d
-sbindir=@sbindir@
-bindir=@bindir@
-
-ADSL_START_PATH=@sbindir@/adsl-start
-ADSL_STOP_PATH=@sbindir@/adsl-stop
-ADSL_STATUS_PATH=@sbindir@/adsl-status
-
-PATHS='-DADSL_START_PATH="$(ADSL_START_PATH)"' '-DADSL_STOP_PATH="$(ADSL_STOP_PATH)"' '-DADSL_STATUS_PATH="$(ADSL_STATUS_PATH)"'
-
-CFLAGS= @CFLAGS@ $(DEFINES) $(PATHS)
-
-all: pppoe-wrapper
- @echo ""
- @echo "Type 'make install' as root to install the software."
-
-pppoe-wrapper: wrapper.o
- @CC@ -o pppoe-wrapper wrapper.o
-
-wrapper.o: wrapper.c
- @CC@ $(CFLAGS) -c -o wrapper.o wrapper.c
-
-install: all
- -mkdir -p $(RPM_INSTALL_ROOT)$(sbindir)
- -mkdir -p $(RPM_INSTALL_ROOT)$(bindir)
- -mkdir -p $(RPM_INSTALL_ROOT)/etc/ppp/rp-pppoe-gui
- $(install) -m 4755 -s pppoe-wrapper $(RPM_INSTALL_ROOT)$(sbindir)
- $(install) -m 755 tkpppoe $(RPM_INSTALL_ROOT)$(bindir)
- -mkdir -p $(RPM_INSTALL_ROOT)$(mandir)/man1
- $(install) -m 644 pppoe-wrapper.1 $(RPM_INSTALL_ROOT)$(mandir)/man1
- $(install) -m 644 tkpppoe.1 $(RPM_INSTALL_ROOT)$(mandir)/man1
- -mkdir -p $(RPM_INSTALL_ROOT)/usr/share/rp-pppoe-gui
- for i in tkpppoe.html mainwin-busy.png mainwin-nonroot.png mainwin.png props-advanced.png props-basic.png props-nic.png props-options.png ; do \
- $(install) -m 644 html/$$i $(RPM_INSTALL_ROOT)/usr/share/rp-pppoe-gui; \
- done
-
-clean:
- rm -f *.o *~ pppoe-wrapper
-
-distclean: clean
- rm -f Makefile tkpppoe
-
-.PHONY: clean
-
-.PHONY: distclean
diff --git a/mdk-stage1/rp-pppoe/gui/html/tkpppoe.html b/mdk-stage1/rp-pppoe/gui/html/tkpppoe.html
deleted file mode 100644
index 51aadb895..000000000
--- a/mdk-stage1/rp-pppoe/gui/html/tkpppoe.html
+++ /dev/null
@@ -1,181 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; Linux 2.2.14-5.0 i686) [Netscape]">
- <title>TkPPPoE Manual</title>
-</head>
-<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#59188E" alink="#FF0000">
-
-<center>
-<h1>tkpppoe - A GUI for managing PPPoE Connections</h1>
-</center>
-
-<h1>Introduction</h1>
-
-TkPPPoE is a graphical user interface for managing PPPoE connections. It
-performs two different functions:
-<ul>
-<li>TkPPPoE lets you <em>define</em> connection properties. This step must
-be done as root.
-<li>TkPPPoE lets you <em>start and stop</em> PPPoE connections. This step
-may be done as a normal user, depending on how you configured the connection.
-</ul>
-
-<h1>Defining Connections</h1>
-
-To define connections, start TkPPPoE as root. You can do this from
-a terminal by typing <code>tkpppoe</code>, or from the KDE or GNOME menus
-by selecting <b>Internet : TkPPPoE</b>. The following window pops up:
-
-<p>
-<center><img src="mainwin.png" width="361" height="73" alt="Main Window">
-</center>
-
-<p>
-Because you have not yet defined any connections, the connection property
-window also pops up:
-
-<p>
-<center><img src="props-basic.png" width="440" height="259" alt="Connection Properties - Basic">
-</center>
-
-You can pop up the connection property window at any time by clicking
-<b>New Connection...</b> You can edit the properties of an existing
-connection by selecting the connection's name and clicking
-<b>Properties...</b>
-<h4>Basic Information</h4>
-
-Let's fill in the basic information:
-<ul>
-<li>For <b>Connection Name</b>, enter a unique name for this connection. It
-can be anything you like, but must contain only letters, numbers, underscores
-or dashes. In particular, it can't contain spaces. If you have only one
-PPPoE connection, a good name is <b>Default</b>.
-<li>For <b>User Name</b>, enter the user name supplied by your ISP. Enter
-only the user name; do not enter an "@isp.com" part.
-<li>For <b>Network</b>, you may have to enter your ISP's domain name.
-(For example, <b>isp.com</b>.) Some DSL providers add this to your user
-name; others do not. You may have to experiment a bit. The two most likely
-choices are your ISP's domain name, or blank. Try both.
-<li>For <b>Password</b>, enter the password your ISP provided you with.
-</ul>
-
-<h4>NIC and DNS</h4>
-Click on the <b>NIC and DNS</b> tab:
-
-<p>
-<center><img src="props-nic.png" width="440" height="259" alt="Connection Properties - NIC and DNS"></center>
-<p>
-<ul>
-<li>For <b>Ethernet Interface</b>, enter the Ethernet interface connected
-to the DSL modem. It is something like <b>eth0</b> or <b>eth1</b>. Click
-on <b>...</b> to browse a list of detected Ethernet interfaces.
-<li>For <b>DNS Setup</b>, you have three options:
-<ol>
-<li><b>From Server</b> means that the system will obtain DNS information from
-the PPPoE server. This is the correct choice for most ISPs.
-<li><b>Specify</b> means that you will enter the IP addresses of your DNS
-servers manually. In this case, enter the addresses in the <b>Primary DNS</b>
-and <b>Secondary DNS</b> entries.
-<li><b>Do not Adjust</b> means that you want RP-PPPoE to leave your
-DNS setup alone. Use this if you are running your own caching DNS server
-or know that you don't want the DNS setup touched.
-</ol>
-</ul>
-
-<h4>Options</h4>
-Click on the <b>Options</b> tab:
-
-<p>
-<center><img src="props-options.png" width="440" height="259" alt="Connection Properties - Options"></center>
-<p>
-<ul>
-<li>If you want ordinary users to be able to start and stop this connection,
-enable <b>Allow use by non-root users</b>. If you do not enable this,
-non-root users will be able to monitor the connection, but not control it.
-<li>If you want to use synchronous PPP, enable <b>Use synchronous PPP</b>.
-This is recommended as it conserves CPU usage, but may not work on some
-(misconfigured) Linux kernels.
-<li>For <b>Firewalling</b>, you have three options:
-<ol>
-<li><b>Stand-Alone</b> installs a simple firewall ruleset for stand-alone
-machines. Use this if you have only a single computer connected to the DSL
-modem.
-<li><b>Masquerading</b> installs a simple firewall ruleset for using
-your Linux computer as an Internet sharing device. If you have two Ethernet
-cards, you can connect one card to the DSL modem and the other to an
-internal LAN. The masquerading firewall ruleset lets internal machines
-share the DSL connection.
-<li><b>None</b>. If you already have your own firewall rules, or you wish
-to run servers on your machine, select None. This is <em>not recommended</em>
-unless you take steps to secure your machine, and know what you are doing.
-</ol>
-</ul>
-
-<h4>Advanced</h4>
-Click on the <b>Advanced</b> tab:
-
-<p>
-<center><img src="props-advanced.png" width="440" height="259" alt="Connection Properties - Advanced"></center>
-<p>
-
-In most cases, you can leave <b>AC-Name</b> and <b>Service-Name</b> blank.
-In some cases, your ISP may require you to enter information in these fields;
-contact your ISP for more information.
-
-<h1>Controlling Connections</h1>
-For these examples, run <code>tkpppoe</code> as a normal user (not root).
-The main window appears like this:
-
-<p>
-<center><img src="mainwin-nonroot.png" width="206" height="73" alt="Main Window - Non-root">
-</center>
-<p>
-<ul>
-<li>To start a connection, press <b>Start</b>. The two LEDs flash red
-and grey. If the connection is established, they turn green.
-<li>To stop a connection, press <b>Stop</b>.
-</ul>
-
-<p>The two rectangles to the right of the connection name are the
-<em>status LEDs</em>. The top LED corresponds to transmitted data and
-the bottom to received. The LEDs are colored as follows:
-<ul>
-<li>Grey -- connection is not established.
-<li>Flashing red/grey -- connection is being started.
-<li>Green -- connection is up, but idle.
-<li>Yellow -- connection is up and data is being sent or received.
-<li>Red -- connection has been lost, but the system is trying to reestablish it.
-</ul>
-
-<p>
-When a connection is established, two graphs appear:
-
-<p>
-<center><img src="mainwin-busy.png" width="206" height="73" alt="Main Window - Established Connection">
-</center>
-<p>
-
-The left (red) graph shows transmitted packets and the average
-transmission speed (in bits per second) over the sample time. The
-right (green) graph shows received packets.
-
-<h1>Miscellaneous Information</h1>
-<ul>
-<li>The connection menu has an entry called <b>User's Manual</b> which
-will pop up this user manual (if you have Netscape installed.)
-<li>You can define multiple PPPoE connections, but you should not use
-more than one simultaneuously unless you feel comfortable editing scripts
-and setting up routing tables. By default, TkPPPoE tries to add a default
-route for connections. This does not work well with multiple simultaneous
-connections.
-<li>If you exit from TkPPPoE, connections which are up remain up. You
-have to explicitly stop connections if you want them terminated.
-</ul>
-<hr>
-<a href="http://www.roaringpenguin.com/pppoe/">TkPPPoE</a> is Copyright 2001 by <a href="http://www.roaringpenguin.com">Roaring Penguin Software Inc</a> and
-is licensed under the GNU General Public License.
-<p>Screenshots show TkPPPoE running under the <a href="http://www.xfce.org">XFCE</a> desktop, a lightweight UNIX and Linux desktop.
-</body>
-</html>
diff --git a/mdk-stage1/rp-pppoe/gui/pppoe-wrapper.1 b/mdk-stage1/rp-pppoe/gui/pppoe-wrapper.1
deleted file mode 100644
index 4fbf2bce2..000000000
--- a/mdk-stage1/rp-pppoe/gui/pppoe-wrapper.1
+++ /dev/null
@@ -1,45 +0,0 @@
-.\" $Id$
-.TH PPPOE-WRAPPER 1 "26 February 2001"
-.UC 4
-.SH NAME
-pppoe-wrapper \- SUID wrapper for starting and stopping PPPoE connections.
-.SH SYNOPSIS
-.B pppoe-wrapper start linkname
-.P
-.B pppoe-wrapper stop linkname
-.P
-.B pppoe-wrapper status linkname
-
-.SH DESCRIPTION
-\fBpppoe-wrapper\fR is a small SUID program which allows non-root users
-to start and stop PPPoE links. It operates as follows:
-
-.TP
-.B o
-First, \fIlinkname\fR is sanity-checked. Too-long names and names containing
-illegal characters are rejected.
-
-.TP
-.B o
-Second, \fBpppoe-wrapper\fR opens the file \fB/etc/ppp/rp-pppoe-gui/\fR\fIlinkname\fR for reading. If that file does not contain the line:
-.nf
-
- NONROOT=OK
-
-.fi
-then \fBpppoe-wrapper\fR fails.
-
-.TP
-.B o
-Otherwise, \fBpppoe-wrapper\fR runs \fBadsl-start\fR, \fBadsl-stop\fR or
-\fBadsl-status\fR with the above filename as its single argument.
-
-.SH AUTHOR
-\fBpppoe-wrapper\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-adsl-start(8), adsl-stop(8), adsl-status(8), tkpppoe(1)
-
-
diff --git a/mdk-stage1/rp-pppoe/gui/tkpppoe.1 b/mdk-stage1/rp-pppoe/gui/tkpppoe.1
deleted file mode 100644
index 183476568..000000000
--- a/mdk-stage1/rp-pppoe/gui/tkpppoe.1
+++ /dev/null
@@ -1,36 +0,0 @@
-.\" $Id$
-.TH TKPPPOE 1 "26 February 2001"
-.UC 4
-.SH NAME
-tkpppoe \- Graphical interface for controlling rp-pppoe
-.SH SYNOPSIS
-.B tkpppoe
-
-.SH DESCRIPTION
-\fBtkpppoe\fR is a graphical program for controlling PPPoE links.
-It works with the RP-PPPoE package and has its own HTML manual.
-
-.SH FILES
-
-.TP
-.B /etc/ppp/rp-pppoe-gui/connection-info
-Contains connection information. This file is not human-editable.
-
-.TP
-.B /etc/ppp/rp-pppoe-gui/passwd
-Contains passwords for each connection. This file is not human-editable.
-
-.TP
-.B /etc/ppp/rp-pppoe-gui/conf.*
-These configuration files are used by \fBadsl-start\fR. They are
-generated anew by \fBtkpppoe\fR each time a change is made to a
-connection's properties.
-
-.SH AUTHOR
-\fBtkpppoe\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-adsl-start(8), adsl-stop(8), pppoe-wrapper(8).
-
diff --git a/mdk-stage1/rp-pppoe/gui/tkpppoe.in b/mdk-stage1/rp-pppoe/gui/tkpppoe.in
deleted file mode 100755
index 37dbf8cc1..000000000
--- a/mdk-stage1/rp-pppoe/gui/tkpppoe.in
+++ /dev/null
@@ -1,2891 +0,0 @@
-#!/bin/sh
-# -*-Mode: TCL;-*-
-
-#--------------------------------------------------------------
-# tkpppoe
-#
-# A graphical front-end for configuring and using rp-pppoe.
-#
-# Copyright (C) 2001 by Roaring Penguin Software Inc.
-# This file may be distributed under the terms of the GNU General Public
-# License, Version 2, or (at your option) any later version.
-#
-# The "Roaring Penguin" logo is a trademark of Roaring Penguin Software Inc.
-#
-# http://www.roaringpenguin.com
-#
-#--------------------------------------------------------------
-
-# $Id$
-
-# the next line restarts using wish \
-umask 022; \
-exec wish "$0" "$@" || clear; echo "*****"; echo "Cannot find 'wish' -- you need Tcl/Tk installed to run this program"; exit 1
-
-# Set app name
-tk appname TkPPPoE
-
-# Set this to one if you want to allow multiple instances of TkPPPoE
-set AllowMultipleInstances 0
-
-# Check for other instances
-if {"[tk appname]" != "TkPPPoE"} {
- # Must be another instance running...
- if {!$AllowMultipleInstances} {
- send TkPPPoE AnotherInstance
- exit 0
- }
-}
-
-# Location of config directory
-set ConfigDir /etc/ppp/rp-pppoe-gui
-
-# Are we running as root?
-set Admin 0
-
-# Location of connection info file
-set ConnectionInfoFile [file join $ConfigDir connection-info]
-
-# Location of password file
-set PasswordFile [file join $ConfigDir passwd]
-
-# Location of "already run" file
-set AlreadyRunFile [file join $ConfigDir gui-already-run]
-
-# Connection information
-set ConnectionInfo {}
-
-# Connection options
-set OPTS(nonroot) 0
-set OPTS(sync) 1
-
-# Location of wrapper
-set Wrapper "@WRAPPER@"
-
-# Timer token for UpdateConnectionState
-set UpdateToken {}
-
-# Update interval in milliseconds
-set UpdateInterval 500
-
-# Packet counters for signalling activity
-set Packets(in) 0
-set Packets(out) 0
-set Bytes(in) 0
-set Bytes(out) 0
-set MeasureTime 0
-
-# Set up some options to make it look better
-option add *Button.borderWidth 1
-option add *Button.Pad 1
-option add *Menubutton.borderWidth 1
-option add *Menubutton.Pad 1
-option add *Entry.Background white
-
-# Array holding help strings for windows
-array set HelpData {}
-
-bind HelpWin <Enter> "HelpWindowEntered %W"
-bind HelpWin <Leave> "HelpWindowLeft %W"
-
-proc AnotherInstance {} {
- wm deiconify .
- raise .
-}
-
-#***********************************************************************
-# %PROCEDURE: HelpWindowEntered
-# %ARGUMENTS:
-# w -- window
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Looks for procedure in HelpData; evals it if found.
-#***********************************************************************
-proc HelpWindowEntered { w } {
- global HelpData
- if {[info exists HelpData($w)]} {
- set cmd "$HelpData($w) Enter"
- uplevel #0 $cmd
- }
-}
-
-#***********************************************************************
-# %PROCEDURE: HelpWindowLeft
-# %ARGUMENTS:
-# w -- window
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Looks for procedure in HelpData; evals it if found.
-#***********************************************************************
-proc HelpWindowLeft { w } {
- global HelpData
- if {[info exists HelpData($w)]} {
- set cmd "$HelpData($w) Leave"
- uplevel #0 $cmd
- }
-}
-
-#***********************************************************************
-# %PROCEDURE: RegisterHelpWindow
-# %ARGUMENTS:
-# w -- window we need help about
-# helptext -- the help text
-# win -- window in which to put help messages
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Sets things up so help text appears in "$win" when mouse enters "$w"
-#***********************************************************************
-proc RegisterHelpWindow {w helptext win} {
- global HelpData
- set tags [bindtags $w]
- if {[lsearch -exact $tags HelpWin] < 0} {
- lappend tags HelpWin
- bindtags $w $tags
- }
- set HelpData($w) [list HelpInTextWin $helptext $win]
-}
-
-#***********************************************************************
-# %PROCEDURE: HelpInTextWin
-# %ARGUMENTS:
-# text -- help text
-# tw -- window in which to write text
-# what -- one of "Enter" or "Leave"
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Clears out $tw; if $what is "Enter", puts $text in $tw.
-#***********************************************************************
-proc HelpInTextWin {text tw what} {
- $tw configure -state normal
- $tw delete 1.0 end
- if {"$what" == "Enter"} {
- $tw insert end $text
- }
- $tw configure -state disabled
-}
-
-
-#***********************************************************************
-# %PROCEDURE: drawLogo
-# %ARGUMENTS:
-# c -- canvas to draw logo in
-# bg -- background color of canvas
-# pencolor -- color of the word "Penguin"
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Draws Roaring Penguin logo in a Tcl canvas
-#***********************************************************************
-proc drawLogo { c bg {pengcolor #6699cc} } {
- $c create polygon 372.249 5.182 361.23 5.519 \
- 346.164 8.892 316.482 20.023 305.463 17.774 296.468 \
- 19.573 288.935 24.97 282.864 33.177 267.348 55.102 \
- 254.531 77.814 236.204 125.26 225.635 174.844 \
- 221.026 226.113 213.605 228.025 208.658 232.634 \
- 225.523 240.28 250.708 243.316 282.752 242.416 \
- 320.079 238.818 330.985 193.17 338.181 146.735 \
- 338.743 99.963 335.483 76.577 329.524 53.191 345.602 \
- 48.131 353.135 45.995 359.768 41.048 342.679 43.184 \
- 324.689 40.036 334.583 28.905 348.3 18.674 372.249 \
- 5.182 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create line 372.249 5.182 361.23 5.519 \
- 346.164 8.892 316.482 20.023 305.463 17.774 296.468 \
- 19.573 288.935 24.97 282.864 33.177 267.348 55.102 \
- 254.531 77.814 236.204 125.26 225.635 174.844 \
- 221.026 226.113 213.605 228.025 208.658 232.634 \
- 225.523 240.28 250.708 243.316 282.752 242.416 \
- 320.079 238.818 330.985 193.17 338.181 146.735 \
- 338.743 99.963 335.483 76.577 329.524 53.191 345.602 \
- 48.131 353.135 45.995 359.768 41.048 342.679 43.184 \
- 324.689 40.036 334.583 28.905 348.3 18.674 372.249 \
- 5.182 -tags logo
-
- $c create polygon 298.605 109.632 290.734 \
- 159.328 282.752 182.939 271.958 205.65 262.851 \
- 171.133 263.75 138.752 264.537 164.5 271.958 192.833 \
- 286.687 157.192 298.605 109.632 -fill #ffffff \
- -outline {} -width 1 -tags logo
-
- $c create line 298.605 109.632 290.734 159.328 \
- 282.752 182.939 271.958 205.65 262.851 171.133 \
- 263.75 138.752 264.537 164.5 271.958 192.833 286.687 \
- 157.192 298.605 109.632 -tags logo
-
- $c create polygon 312.546 30.592 315.132 35.876 \
- 310.747 39.586 308.161 34.414 312.546 30.592 -fill \
- #ffffff -outline {} -width 1 -tags logo
-
- $c create line 312.546 30.592 315.132 35.876 \
- 310.747 39.586 308.161 34.414 312.546 30.592 -tags logo
-
- $c create polygon 328.624 54.427 322.665 58.7 \
- 314.458 61.286 289.16 59.15 284.55 74.665 285.338 \
- 90.181 303.214 98.951 308.499 106.259 310.523 \
- 116.378 305.913 130.208 312.771 141.563 308.049 \
- 167.76 299.729 192.158 279.041 238.593 313.558 \
- 233.871 327.388 185.75 335.033 139.989 335.82 96.253 \
- 328.624 54.427 -fill #ffffff -outline {} -width 1 -tags logo
-
- $c create line 328.624 54.427 322.665 58.7 \
- 314.458 61.286 289.16 59.15 284.55 74.665 285.338 \
- 90.181 303.214 98.951 308.499 106.259 310.523 \
- 116.378 305.913 130.208 312.771 141.563 308.049 \
- 167.76 299.729 192.158 279.041 238.593 313.558 \
- 233.871 327.388 185.75 335.033 139.989 335.82 96.253 \
- 328.624 54.427 -tags logo
-
- $c create polygon 53.837 185.412 54.399 185.862 \
- 53.837 188.223 54.399 188.673 53.837 188.673 53.837 \
- 189.572 53.837 190.472 53.387 191.034 52.938 192.833 \
- 50.577 195.644 49.677 196.656 49.677 197.105 48.215 \
- 198.455 47.316 198.904 46.866 198.904 44.505 200.816 \
- 43.606 200.366 42.594 201.265 42.144 201.715 41.245 \
- 202.277 40.795 202.727 40.345 202.277 39.783 202.277 \
- 36.972 203.177 36.522 203.177 36.073 203.177 35.623 \
- 203.627 34.723 203.627 34.161 203.627 34.161 204.076 \
- 30.901 204.526 28.54 205.538 26.291 205.088 25.729 \
- 205.088 24.829 205.088 24.38 204.526 23.93 204.526 \
- 23.48 204.526 22.918 205.088 22.918 206.437 22.918 \
- 206.887 22.918 207.337 22.468 207.337 22.468 208.798 \
- 22.018 209.248 22.018 211.16 22.018 211.609 21.569 \
- 213.521 21.119 215.769 21.569 216.781 20.669 218.13 \
- 20.669 219.592 20.669 220.042 20.107 220.941 20.107 \
- 221.953 20.107 223.752 19.657 225.664 19.208 226.113 \
- 19.657 227.013 18.308 230.835 17.858 240.167 17.296 \
- 248.15 17.296 249.05 16.846 250.062 15.947 250.062 \
- 15.048 250.062 15.048 250.511 12.686 251.86 12.237 \
- 251.86 11.675 251.411 11.675 250.511 11.675 246.689 \
- 11.225 245.339 11.225 243.878 10.775 240.617 11.225 \
- 239.268 11.225 238.818 10.775 238.256 10.325 237.357 \
- 10.325 236.007 9.876 232.634 9.876 231.735 9.876 \
- 231.285 9.876 230.835 9.876 230.386 9.876 229.824 \
- 9.426 229.374 9.426 226.113 9.876 226.113 9.876 \
- 225.664 9.426 224.202 9.426 223.752 9.426 223.302 \
- 10.325 221.953 9.426 220.941 9.426 219.592 9.426 \
- 219.142 9.426 218.58 9.426 217.681 9.426 217.231 \
- 9.426 216.781 8.864 216.332 8.864 214.42 8.864 \
- 213.97 8.414 213.521 8.414 210.148 8.414 209.248 \
- 7.964 207.899 8.414 205.988 8.414 204.526 7.065 \
- 201.265 7.515 200.816 9.426 201.715 10.325 201.265 \
- 10.775 200.816 10.775 198.904 11.225 198.005 11.225 \
- 197.555 10.775 197.555 9.876 196.094 9.426 194.744 \
- 7.515 194.295 6.615 193.845 6.053 193.845 5.153 \
- 193.283 3.804 191.484 3.804 190.022 3.804 189.572 \
- 3.804 189.123 3.242 188.673 3.242 186.762 3.804 \
- 185.412 4.254 184.85 4.704 184.4 7.964 180.24 10.325 \
- 178.779 11.225 178.779 12.237 177.879 14.036 176.98 \
- 15.497 175.968 21.569 173.607 22.918 173.157 23.48 \
- 173.157 24.38 172.707 24.829 172.707 29.102 171.808 \
- 29.551 171.808 30.001 171.358 31.35 170.796 31.913 \
- 171.358 32.362 170.796 39.783 171.358 40.345 170.796 \
- 42.144 171.358 47.766 174.619 48.778 176.418 49.227 \
- 176.418 49.677 176.98 50.127 176.98 51.588 178.329 \
- 52.038 179.228 52.488 180.69 52.038 181.14 52.038 \
- 181.59 52.488 182.039 52.938 182.039 53.387 182.601 \
- 53.837 183.051 53.837 183.501 53.837 185.412 -fill \
- $pengcolor -outline {} -width 1 -tags logo
-
- $c create polygon 42.594 222.853 43.156 221.953 \
- 41.694 222.403 39.783 224.202 39.783 224.764 39.783 \
- 225.214 40.345 225.214 41.245 224.202 41.694 223.752 \
- 42.594 222.853 -fill $pengcolor -outline {} -width 1 -tags logo
-
- $c create polygon 58.559 234.096 59.009 234.096 \
- 59.009 234.546 58.559 234.995 58.559 235.445 57.21 \
- 236.907 56.648 237.806 52.938 241.067 52.038 241.629 \
- 52.038 242.079 51.026 242.529 50.577 242.978 50.127 \
- 242.978 49.227 244.44 45.405 246.239 44.055 246.689 \
- 43.606 246.689 43.606 247.251 42.144 247.251 41.694 \
- 247.7 40.795 247.7 38.434 248.15 36.522 248.15 \
- 35.173 247.7 34.161 246.689 33.711 246.239 32.812 \
- 244.44 32.362 241.629 32.812 239.718 32.812 239.268 \
- 33.711 234.995 36.522 229.824 35.623 228.474 35.623 \
- 227.013 36.522 225.664 37.534 224.202 38.883 222.853 \
- 41.694 220.492 42.594 219.592 43.156 219.592 43.606 \
- 219.142 45.405 217.681 45.967 217.681 46.416 217.231 \
- 48.778 215.769 52.038 214.87 53.387 214.42 54.849 \
- 214.87 55.299 214.87 56.198 215.769 56.198 217.681 \
- 56.198 218.58 54.399 221.953 53.837 222.853 53.837 \
- 223.302 53.387 223.752 50.577 226.113 49.677 226.563 \
- 47.316 228.474 43.156 230.386 41.245 230.835 40.795 \
- 230.835 40.345 230.835 39.333 230.835 38.883 230.835 \
- 38.883 229.824 39.783 229.374 40.795 228.474 41.694 \
- 228.025 42.594 227.575 45.967 227.013 46.866 226.563 \
- 50.127 224.764 51.588 223.302 52.488 221.953 52.488 \
- 220.492 52.488 219.142 51.026 218.13 49.677 218.13 \
- 48.778 218.13 47.766 219.142 47.316 219.142 47.316 \
- 219.592 46.866 219.592 45.967 220.941 44.505 221.953 \
- 44.055 222.403 43.606 222.853 42.594 223.752 41.694 \
- 225.664 41.245 225.664 41.245 226.113 40.345 226.563 \
- 39.333 227.575 39.333 228.474 38.434 229.374 36.522 \
- 233.197 35.623 236.457 35.623 237.357 35.623 238.256 \
- 35.173 241.067 35.623 242.079 36.522 243.428 37.534 \
- 243.878 37.984 244.44 38.434 244.89 38.883 244.89 \
- 39.783 245.339 43.156 245.339 45.967 244.44 49.227 \
- 242.529 50.127 241.629 50.577 241.067 54.399 238.818 \
- 54.399 238.256 54.399 237.806 56.198 236.907 58.559 \
- 234.096 -fill $pengcolor -outline {} -width 1 -tags logo
-
- $c create polygon 92.289 248.6 92.739 249.05 \
- 92.289 249.05 91.84 249.05 90.94 248.6 90.378 248.6 \
- 89.478 247.7 89.029 247.251 88.129 246.689 87.117 \
- 245.789 85.768 244.89 85.318 244.44 85.768 244.44 \
- 85.318 242.529 84.756 242.079 84.756 240.617 84.756 \
- 240.167 84.756 239.718 84.756 239.268 83.857 236.457 \
- 83.407 234.096 83.407 233.197 83.407 231.735 83.407 \
- 223.302 83.407 221.391 82.957 220.941 82.508 221.953 \
- 80.596 226.113 80.146 226.563 80.146 227.013 79.697 \
- 228.025 79.135 228.474 79.697 228.474 76.324 234.096 \
- 75.874 234.995 75.424 236.457 74.975 236.457 74.975 \
- 236.907 74.975 237.357 74.075 239.268 73.513 239.718 \
- 73.063 240.167 72.613 241.067 72.164 242.529 71.714 \
- 242.529 71.714 243.878 70.252 245.789 69.803 246.689 \
- 68.903 246.689 68.903 247.251 67.891 247.7 66.542 \
- 247.7 66.092 247.7 65.643 247.7 65.08 247.251 65.08 \
- 246.689 65.08 245.789 64.631 242.079 65.08 242.079 \
- 64.631 241.629 65.08 241.067 65.08 238.818 64.631 \
- 237.806 64.631 236.457 64.631 234.546 64.631 233.197 \
- 64.631 232.634 64.631 232.185 64.631 231.735 64.631 \
- 228.924 64.631 227.575 64.631 225.664 64.631 225.214 \
- 64.631 224.764 64.631 223.302 64.631 217.231 65.08 \
- 216.332 65.643 215.769 69.803 214.87 70.252 215.32 \
- 70.252 216.332 70.252 217.681 70.252 218.58 69.803 \
- 219.142 69.803 220.492 69.353 220.941 69.353 221.391 \
- 68.903 221.953 68.903 225.664 68.453 226.563 68.453 \
- 228.025 68.453 228.474 67.891 228.924 67.891 230.835 \
- 68.453 236.457 68.453 237.806 68.453 238.818 68.453 \
- 240.617 68.453 241.067 68.903 241.067 68.903 241.629 \
- 69.353 241.629 70.702 241.067 70.702 240.617 71.264 \
- 240.167 71.264 239.268 72.164 238.256 73.063 236.457 \
- 74.525 234.546 74.975 233.197 76.324 230.835 77.336 \
- 229.824 78.235 227.575 78.235 227.013 78.685 226.563 \
- 78.685 225.664 79.135 225.214 79.697 224.764 79.697 \
- 224.202 80.146 222.403 81.046 220.941 81.945 217.681 \
- 82.957 215.769 85.318 214.87 85.768 214.87 87.567 \
- 214.42 87.567 215.769 87.117 216.332 87.567 216.781 \
- 88.129 219.592 87.567 219.592 87.567 220.492 87.567 \
- 221.391 87.567 224.764 87.567 225.664 87.567 226.113 \
- 87.117 226.113 87.117 227.575 87.567 229.374 88.579 \
- 235.445 89.029 239.268 89.029 239.718 89.029 241.067 \
- 89.478 242.529 89.478 242.978 89.928 243.878 89.928 \
- 244.44 90.378 244.89 90.94 246.239 92.289 248.6 \
- -fill $pengcolor -outline {} -width 1 -tags logo
-
- $c create polygon 117.587 220.492 118.037 \
- 222.403 117.587 222.853 117.587 224.764 116.687 \
- 226.113 116.687 227.013 116.238 228.025 114.776 \
- 229.374 113.877 231.285 112.865 231.735 109.154 \
- 234.995 106.343 236.457 105.444 237.357 103.982 \
- 237.806 103.083 238.256 102.633 238.818 102.183 \
- 238.818 101.172 239.268 99.822 239.718 98.361 \
- 239.268 97.461 239.718 96.562 239.268 96.0 238.818 \
- 95.55 238.818 94.201 236.907 94.201 235.445 94.201 \
- 233.646 94.65 233.197 94.65 232.634 95.1 232.185 \
- 95.1 231.735 95.55 231.735 96.0 230.386 97.461 \
- 228.025 97.461 227.575 98.361 226.563 99.822 224.764 \
- 101.172 223.302 101.172 222.853 102.633 221.391 \
- 103.083 220.941 104.432 219.592 103.982 218.58 \
- 103.982 217.231 103.982 216.781 103.982 215.32 \
- 104.432 214.42 103.982 210.148 103.982 209.698 \
- 103.982 209.248 104.432 208.798 104.432 207.899 \
- 104.432 205.988 104.432 205.538 104.994 203.177 \
- 104.994 202.277 104.994 201.265 104.994 200.816 \
- 104.994 200.366 104.994 199.916 105.894 199.467 \
- 106.343 198.904 106.793 198.455 107.243 198.904 \
- 108.255 198.904 108.255 199.467 108.705 199.467 \
- 108.705 202.727 108.255 204.076 108.255 205.538 \
- 108.255 205.988 107.805 205.988 107.805 206.887 \
- 107.805 209.698 107.243 210.71 106.793 212.059 \
- 106.343 214.87 106.343 215.32 106.343 215.769 \
- 105.894 217.681 106.343 217.681 106.793 217.681 \
- 107.243 217.231 108.705 215.32 109.604 215.32 \
- 110.054 214.42 110.054 213.97 110.616 213.97 110.616 \
- 214.42 111.965 214.87 112.415 214.87 112.865 215.32 \
- 114.326 216.332 116.238 217.681 116.687 218.58 \
- 117.137 219.592 117.587 220.042 117.587 220.492 \
- -fill $pengcolor -outline {} -width 1 -tags logo
-
- $c create polygon 123.658 258.944 123.658 \
- 259.394 123.658 260.293 123.658 261.755 123.658 \
- 262.654 123.658 263.104 123.209 266.364 123.209 \
- 267.376 122.759 269.175 122.309 269.737 121.859 \
- 271.087 121.859 271.536 121.859 271.986 121.297 \
- 271.986 121.297 272.548 120.847 273.448 120.398 \
- 273.448 120.398 273.897 118.486 276.259 118.037 \
- 276.708 117.587 277.608 117.137 278.17 116.687 \
- 278.17 115.675 278.62 115.675 279.069 113.427 \
- 280.419 112.865 280.981 112.415 280.981 111.965 \
- 281.43 110.054 282.33 109.154 282.33 108.705 282.78 \
- 108.255 282.78 107.805 283.229 104.994 283.792 \
- 104.432 283.792 103.982 283.792 103.533 283.792 \
- 103.083 283.792 102.633 283.792 102.183 283.792 \
- 101.172 283.792 100.722 283.792 99.822 283.792 98.81 \
- 283.792 96.562 282.33 96.0 282.78 95.1 281.88 94.201 \
- 281.43 91.84 279.969 92.289 279.519 92.289 278.62 \
- 93.751 279.069 93.751 279.519 94.201 279.519 94.65 \
- 279.969 95.1 279.969 96.0 280.981 98.81 281.88 \
- 101.172 281.88 101.621 281.88 102.633 281.88 103.083 \
- 281.88 103.533 281.88 104.432 281.43 104.994 281.88 \
- 105.444 281.43 106.793 281.43 107.805 280.981 \
- 108.705 280.419 109.154 280.419 109.604 279.969 \
- 110.054 279.969 110.616 279.969 111.066 279.519 \
- 112.865 278.17 113.427 277.608 113.877 277.608 \
- 113.877 277.158 114.326 277.158 114.326 276.708 \
- 114.776 276.259 115.226 276.259 116.238 274.347 \
- 116.687 274.347 116.687 273.897 117.587 272.998 \
- 117.587 272.548 118.037 271.986 119.498 267.826 \
- 120.398 265.015 120.398 262.204 119.948 259.843 \
- 119.948 259.394 119.948 258.944 119.498 257.482 \
- 118.486 254.222 118.037 253.772 117.587 251.86 \
- 115.675 249.05 115.226 248.6 114.776 248.15 113.877 \
- 247.251 111.965 246.239 111.515 246.239 110.616 \
- 246.239 110.054 246.239 109.154 246.239 107.243 \
- 247.251 106.343 247.251 105.444 247.7 104.994 247.7 \
- 103.083 248.15 102.183 248.6 101.621 248.6 101.172 \
- 249.05 100.722 249.499 99.822 250.062 98.361 250.062 \
- 97.461 249.499 97.012 249.499 96.562 249.05 96.562 \
- 248.6 97.012 248.15 99.822 245.789 100.272 245.339 \
- 101.621 244.44 101.621 243.878 102.183 243.428 \
- 102.633 243.428 102.633 242.978 103.982 241.629 \
- 103.982 241.067 103.982 240.617 103.982 240.167 \
- 105.444 239.268 108.705 236.907 108.705 236.457 \
- 109.154 236.457 110.054 235.445 111.066 234.546 \
- 112.415 234.096 112.865 233.646 113.427 233.646 \
- 113.877 233.646 113.877 234.096 114.326 234.995 \
- 114.776 235.445 114.776 236.457 114.326 237.357 \
- 113.427 238.818 112.415 239.268 112.415 240.167 \
- 111.965 240.167 111.515 240.617 110.054 241.629 \
- 110.054 242.079 109.604 242.529 108.705 242.978 \
- 110.054 242.978 113.427 242.079 114.326 242.529 \
- 115.226 242.978 116.687 244.44 119.048 246.689 \
- 119.498 247.7 119.498 248.15 119.948 248.6 119.948 \
- 249.05 120.398 249.05 120.398 249.499 120.847 \
- 249.499 120.847 250.062 121.297 250.511 121.297 \
- 251.411 121.859 252.31 122.759 252.872 122.759 \
- 254.222 122.759 254.671 123.658 258.494 123.658 \
- 258.944 -fill $pengcolor -outline {} -width 1 -tags logo
-
- $c create polygon 147.607 215.769 148.506 215.32 \
- 148.506 217.231 148.506 217.681 148.506 218.13 \
- 148.956 218.58 148.506 220.492 148.506 220.941 \
- 148.506 222.853 148.956 224.764 148.956 226.113 \
- 148.506 226.563 148.956 226.563 148.506 228.924 \
- 148.956 229.824 148.956 231.285 148.506 232.185 \
- 148.956 232.634 148.956 233.646 149.405 234.995 \
- 148.956 234.995 149.405 235.445 149.405 236.907 \
- 149.405 237.357 149.968 238.818 150.867 240.167 \
- 150.867 240.617 151.317 242.079 152.216 243.428 \
- 153.228 245.339 154.128 245.789 155.027 246.239 \
- 156.939 245.789 157.388 246.239 156.489 246.689 \
- 155.027 247.7 154.128 247.7 153.228 247.7 152.216 \
- 247.7 151.767 247.7 150.867 247.251 150.417 246.239 \
- 149.405 246.239 148.056 245.339 147.607 244.44 \
- 147.157 243.428 145.695 241.629 145.695 240.617 \
- 145.245 240.167 145.245 239.718 144.796 238.256 \
- 144.346 236.907 144.346 235.445 143.784 234.546 \
- 143.784 233.197 143.784 232.185 143.784 230.835 \
- 143.334 229.824 143.784 229.374 143.334 229.374 \
- 143.334 228.474 142.884 230.386 141.985 231.735 \
- 140.973 233.197 140.523 234.096 140.523 234.546 \
- 140.523 234.995 139.624 236.457 139.174 237.806 \
- 138.162 239.718 137.263 241.067 136.813 242.079 \
- 135.913 242.978 134.452 244.89 134.002 245.789 \
- 133.552 245.789 132.091 246.689 131.191 247.251 \
- 129.73 248.15 129.28 248.15 128.38 247.7 128.38 \
- 248.15 126.919 247.7 126.019 247.251 125.12 246.239 \
- 125.12 245.339 124.67 244.89 124.67 244.44 124.67 \
- 243.428 124.67 242.529 124.67 241.067 124.67 239.718 \
- 125.12 239.268 124.67 239.268 124.67 238.256 125.12 \
- 237.806 125.12 237.357 125.12 236.907 125.12 236.007 \
- 125.12 234.096 125.57 233.197 125.57 232.185 126.019 \
- 232.185 126.019 231.285 126.019 230.386 126.019 \
- 229.374 126.469 228.474 126.469 227.013 126.469 \
- 225.214 126.019 225.214 126.469 225.214 126.019 \
- 223.302 126.019 221.953 126.019 220.492 125.57 \
- 220.042 125.12 219.592 124.108 219.142 123.209 \
- 219.142 121.859 220.042 121.297 220.042 120.398 \
- 220.941 119.498 221.391 119.048 221.391 118.486 \
- 221.953 118.037 221.953 118.037 221.391 118.486 \
- 220.941 119.498 220.042 120.847 219.142 122.759 \
- 217.681 124.108 216.781 125.12 215.769 126.469 \
- 214.87 126.919 214.87 127.481 214.87 128.38 214.87 \
- 128.83 214.87 129.73 214.87 129.73 215.769 130.292 \
- 215.769 130.742 216.781 130.742 217.681 130.292 \
- 219.142 130.292 221.953 130.292 223.302 130.292 \
- 224.202 129.73 225.214 129.28 227.013 128.83 227.575 \
- 129.28 227.575 129.28 228.474 128.83 229.374 129.28 \
- 229.824 129.28 230.386 128.83 231.735 128.38 234.096 \
- 128.38 234.995 127.931 236.457 127.931 239.268 \
- 127.931 240.167 127.931 241.629 128.83 242.978 \
- 129.28 243.878 129.73 244.44 130.742 244.44 131.191 \
- 244.44 132.091 244.44 133.103 243.878 134.002 \
- 242.978 134.902 242.079 135.351 241.067 135.913 \
- 240.167 136.363 239.268 136.813 238.818 137.263 \
- 237.806 137.712 236.907 138.162 235.445 138.724 \
- 234.546 139.174 233.646 139.624 232.634 140.523 \
- 230.835 140.973 228.924 141.535 227.013 142.435 \
- 225.664 142.884 223.302 143.334 221.391 143.334 \
- 220.941 143.334 219.142 144.346 217.681 144.796 \
- 216.781 145.695 216.332 146.595 216.332 147.607 \
- 215.769 -fill $pengcolor -outline {} -width 1 -tags logo
-
- $c create polygon 165.371 241.067 165.371 \
- 241.067 164.921 243.878 164.921 246.239 163.46 \
- 246.689 161.211 247.251 160.649 247.251 160.199 \
- 244.44 160.199 243.878 160.199 243.428 160.199 \
- 242.079 160.199 240.167 160.199 239.718 159.749 \
- 239.268 160.199 237.806 159.749 237.357 159.749 \
- 236.007 159.749 230.835 159.749 229.824 159.749 \
- 228.924 159.749 226.113 159.749 225.664 159.749 \
- 223.752 159.749 222.853 159.749 218.58 159.749 \
- 218.13 159.749 217.681 160.199 217.231 161.661 \
- 216.781 162.11 216.781 162.56 216.781 163.46 216.781 \
- 164.022 219.142 163.46 222.403 163.46 222.853 163.46 \
- 224.202 163.46 225.664 163.46 226.563 163.46 227.013 \
- 163.46 228.924 163.01 230.835 163.01 232.634 163.46 \
- 233.197 164.022 232.634 164.472 232.634 164.921 \
- 232.185 164.921 231.735 165.371 231.735 165.821 \
- 232.185 165.371 233.646 165.821 236.007 165.371 \
- 238.256 165.371 238.818 165.371 240.617 165.371 \
- 241.067 -fill $pengcolor -outline {} -width 1 -tags logo
-
- $c create polygon 165.821 214.42 166.833 215.32 \
- 166.271 215.32 165.821 216.332 165.371 216.332 \
- 165.371 216.781 165.821 217.681 165.821 218.13 \
- 165.371 219.142 165.371 220.042 164.921 222.853 \
- 165.371 224.764 164.921 225.664 165.371 227.575 \
- 165.371 228.474 164.921 228.474 164.472 227.575 \
- 164.472 226.113 164.022 224.764 164.472 224.202 \
- 164.472 223.752 164.472 222.403 164.921 214.87 \
- 164.472 213.521 164.472 212.959 164.472 212.509 \
- 164.022 212.509 163.46 212.509 163.01 212.959 162.56 \
- 212.959 161.661 212.959 161.211 212.059 161.211 \
- 211.609 160.649 211.609 160.199 209.698 160.649 \
- 208.349 163.46 206.437 164.472 206.437 165.821 \
- 207.899 165.821 208.349 166.833 210.148 166.833 \
- 210.71 165.821 211.609 165.371 212.059 165.371 \
- 212.959 165.821 213.97 165.821 214.42 -fill $pengcolor \
- -outline {} -width 1 -tags logo
-
- $c create polygon 201.462 248.6 201.462 249.05 \
- 201.012 249.05 200.563 249.05 200.001 248.6 199.551 \
- 248.6 198.651 247.7 197.752 247.251 196.74 246.689 \
- 196.29 245.789 194.379 244.89 194.379 244.44 194.379 \
- 242.529 193.929 242.079 193.479 240.617 193.479 \
- 240.167 193.929 239.718 193.479 239.268 193.03 \
- 236.457 192.58 234.096 192.58 233.197 192.58 231.735 \
- 192.58 223.302 192.58 221.391 192.13 220.941 191.568 \
- 221.953 189.769 226.113 189.319 226.563 189.319 \
- 227.013 188.757 228.025 188.307 228.474 188.757 \
- 228.474 185.497 234.096 185.047 234.995 184.597 \
- 236.457 184.147 236.457 184.147 236.907 184.147 \
- 237.357 183.136 239.268 182.686 239.268 182.686 \
- 239.718 182.236 240.167 181.786 241.067 181.337 \
- 242.529 180.887 242.529 180.887 243.878 179.425 \
- 245.789 178.975 246.689 178.076 246.689 178.076 \
- 247.251 177.064 247.7 175.715 247.7 175.265 247.7 \
- 174.703 247.7 174.253 247.251 174.253 246.689 \
- 174.253 245.789 173.804 242.079 174.253 242.079 \
- 173.804 241.629 173.804 241.067 173.804 238.818 \
- 173.804 237.806 173.804 236.457 173.354 234.546 \
- 173.354 233.197 173.804 232.634 173.804 232.185 \
- 173.804 231.735 173.804 228.924 173.354 227.575 \
- 173.804 227.575 173.804 225.664 173.804 225.214 \
- 173.804 224.764 173.804 223.302 173.804 217.231 \
- 174.253 216.332 174.703 215.769 178.526 214.87 \
- 179.425 215.32 179.425 216.332 179.425 217.681 \
- 179.425 218.58 178.975 219.142 178.526 220.492 \
- 178.526 220.941 178.076 221.391 178.076 221.953 \
- 178.076 225.664 177.514 226.563 177.514 228.025 \
- 177.064 228.474 177.064 228.924 177.064 230.835 \
- 177.514 236.457 177.064 237.806 177.514 237.806 \
- 177.514 238.818 177.514 240.617 177.514 241.067 \
- 178.076 241.629 178.526 241.629 179.425 241.067 \
- 179.875 240.617 179.875 240.167 180.325 239.268 \
- 181.337 238.256 182.236 236.457 183.698 234.546 \
- 184.147 233.197 185.497 230.835 186.509 229.824 \
- 187.408 227.575 187.408 227.013 187.408 226.563 \
- 187.858 225.664 188.307 225.214 188.757 224.764 \
- 188.757 224.202 189.319 222.403 190.219 220.941 \
- 191.118 217.681 192.13 215.769 194.379 214.87 \
- 194.941 214.87 196.74 214.42 196.74 215.769 196.29 \
- 215.769 196.29 216.332 196.29 216.781 196.74 219.592 \
- 196.74 220.492 196.29 221.391 196.74 224.764 196.29 \
- 225.664 196.29 226.113 196.29 227.575 196.74 229.374 \
- 197.19 235.445 198.202 239.268 198.202 239.718 \
- 198.202 241.067 198.202 242.529 198.651 242.978 \
- 199.101 243.878 199.101 244.44 199.551 244.89 \
- 200.001 246.239 201.462 248.6 -fill $pengcolor -outline \
- {} -width 1 -tags logo
-
- $c create polygon 71.714 185.412 71.714 110.869 \
- 81.496 110.869 82.845 110.981 83.969 111.431 85.094 \
- 112.106 86.105 113.118 86.893 114.467 87.567 116.041 \
- 88.017 117.39 88.242 118.065 88.467 118.852 88.579 \
- 119.639 88.804 120.538 88.916 121.438 89.029 122.337 \
- 89.141 123.349 89.254 124.361 89.366 125.485 89.366 \
- 126.61 89.478 127.734 89.478 128.971 89.478 130.208 \
- 89.478 131.444 89.478 132.456 89.478 133.468 89.478 \
- 134.48 89.366 135.492 89.254 136.391 89.254 137.291 \
- 89.141 138.19 89.029 139.09 88.916 139.877 88.804 \
- 140.664 88.691 141.451 88.579 142.238 88.354 143.362 \
- 88.129 144.374 87.904 145.386 87.567 146.398 87.342 \
- 147.297 87.005 148.197 86.668 148.984 86.218 149.771 \
- 87.005 151.233 87.342 152.02 87.68 152.919 87.904 \
- 153.931 88.129 154.943 88.129 155.505 88.354 156.854 \
- 88.354 157.641 88.354 158.428 88.467 159.328 88.467 \
- 160.34 88.467 161.352 88.467 162.476 88.579 163.6 \
- 88.579 164.837 88.579 166.186 88.579 166.973 88.691 \
- 167.873 88.804 168.885 88.916 169.897 89.029 171.021 \
- 89.029 172.258 89.029 173.719 89.029 175.068 89.029 \
- 176.305 89.029 177.542 89.141 178.554 89.141 179.566 \
- 89.141 180.353 89.141 181.14 89.254 181.814 89.366 \
- 182.714 89.478 183.051 89.478 185.412 83.857 185.412 \
- 83.857 184.738 83.744 183.951 83.744 183.276 83.744 \
- 182.489 83.744 180.803 83.857 179.791 83.857 178.891 \
- 83.857 177.879 83.857 176.867 83.857 175.743 83.857 \
- 174.619 83.857 173.27 83.857 172.033 83.744 170.908 \
- 83.744 170.009 83.632 169.109 83.632 168.322 83.52 \
- 166.973 83.407 166.524 83.407 166.186 83.407 165.062 \
- 83.407 164.05 83.295 163.151 83.295 162.251 83.295 \
- 161.464 83.182 160.789 82.957 159.553 81.945 158.203 \
- 80.596 157.754 76.886 157.754 76.886 185.412 71.714 \
- 185.412 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 92.289 148.309 92.289 147.185 \
- 92.289 146.061 92.289 145.049 92.402 143.924 92.402 \
- 142.8 92.402 141.788 92.402 140.664 92.514 139.652 \
- 92.514 138.64 92.627 137.628 92.627 136.616 92.739 \
- 135.717 92.739 134.705 92.851 133.805 92.964 132.793 \
- 92.964 131.894 93.076 130.995 93.301 129.196 93.414 \
- 128.409 93.526 127.509 93.639 126.722 93.751 125.935 \
- 93.863 125.148 93.976 124.361 94.313 122.787 94.426 \
- 122.112 94.65 121.325 94.763 120.651 95.1 119.301 \
- 95.55 117.615 96.112 116.041 96.674 114.692 97.236 \
- 113.455 97.799 112.443 98.361 111.544 99.035 110.757 \
- 99.71 110.082 100.385 109.632 101.059 109.295 \
- 101.846 109.07 102.633 108.958 104.207 109.295 \
- 104.882 109.632 105.556 110.082 106.231 110.757 \
- 106.906 111.544 107.468 112.443 108.03 113.455 \
- 108.592 114.692 109.154 116.041 109.604 117.615 \
- 110.054 119.301 110.279 119.976 110.616 121.325 \
- 110.841 122.112 110.953 122.787 111.178 123.574 \
- 111.403 125.148 111.628 125.935 111.74 126.722 \
- 111.853 127.622 111.965 128.409 112.078 129.308 \
- 112.19 130.208 112.302 130.995 112.415 132.006 \
- 112.64 133.805 112.752 134.817 112.865 135.717 \
- 112.977 136.729 112.977 137.741 113.089 138.752 \
- 113.089 139.764 113.202 140.776 113.202 141.788 \
- 113.314 142.912 113.314 143.924 113.314 145.049 \
- 113.427 146.061 113.427 147.185 113.427 148.309 \
- 113.427 149.546 113.314 150.783 113.314 151.907 \
- 113.314 153.032 113.314 154.156 113.202 155.28 \
- 113.202 156.405 113.089 157.529 113.089 158.541 \
- 112.977 159.553 112.865 160.565 112.752 161.576 \
- 112.64 162.588 112.527 163.6 112.415 164.5 112.302 \
- 165.512 112.19 166.411 112.078 167.311 111.965 \
- 168.21 111.853 169.109 111.628 169.897 111.515 \
- 170.796 111.403 171.583 111.178 172.37 111.066 \
- 173.157 110.616 174.731 110.504 175.518 110.279 \
- 176.193 110.054 176.98 109.604 178.666 109.154 \
- 180.128 108.592 181.59 108.03 182.826 107.468 \
- 183.951 106.906 184.963 106.231 185.75 105.556 \
- 186.424 104.882 186.986 104.207 187.436 103.42 \
- 187.661 102.633 187.661 101.846 187.661 101.059 \
- 187.436 100.385 186.986 99.71 186.424 99.035 185.75 \
- 98.361 184.963 97.799 183.951 97.236 182.826 96.674 \
- 181.59 96.112 180.128 95.55 178.666 95.1 176.98 \
- 94.988 176.193 94.763 175.518 94.538 174.731 94.426 \
- 173.944 94.088 172.37 93.976 171.583 93.863 170.796 \
- 93.639 169.897 93.526 169.109 93.414 168.21 93.301 \
- 167.311 93.189 166.411 93.076 165.512 92.964 164.5 \
- 92.964 163.6 92.851 162.588 92.739 161.576 92.627 \
- 160.565 92.627 159.553 92.514 158.541 92.514 157.529 \
- 92.514 156.405 92.402 155.28 92.402 154.156 92.402 \
- 153.032 92.289 151.907 92.289 150.783 92.289 149.546 \
- 92.289 148.309 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 121.859 110.869 127.481 \
- 110.869 134.902 185.412 129.28 185.412 127.931 \
- 171.808 120.847 171.808 119.948 185.412 114.326 \
- 185.412 121.859 110.869 -fill #000000 -outline {} \
- -width 1 -tags logo
-
- $c create polygon 137.263 185.412 137.263 \
- 110.869 147.157 110.869 148.394 110.981 149.518 \
- 111.431 150.417 112.106 151.317 113.118 152.104 \
- 114.467 152.778 116.041 153.228 117.39 153.341 \
- 118.065 153.566 118.852 153.903 120.538 154.015 \
- 121.438 154.128 122.337 154.24 123.349 154.353 \
- 124.361 154.465 125.485 154.465 126.61 154.577 \
- 127.734 154.577 128.971 154.577 130.208 154.577 \
- 131.444 154.577 132.456 154.577 133.468 154.577 \
- 134.48 154.577 135.492 154.577 136.391 154.577 \
- 137.291 154.577 138.19 154.465 139.09 154.465 \
- 139.877 154.353 140.664 154.24 141.451 154.128 \
- 142.238 153.903 143.362 153.678 144.374 153.341 \
- 145.386 153.003 146.398 152.554 147.297 152.216 \
- 148.197 151.767 148.984 151.317 149.771 152.104 \
- 151.233 152.441 152.02 152.778 152.919 153.003 \
- 153.931 153.228 154.943 153.341 155.505 153.453 \
- 156.854 153.566 157.641 153.678 158.428 153.79 \
- 159.328 153.903 160.34 154.015 161.352 154.015 \
- 162.476 154.128 163.6 154.128 164.837 154.128 \
- 166.186 154.128 166.973 154.128 167.873 154.128 \
- 168.885 154.128 169.897 154.128 171.021 154.128 \
- 172.258 154.128 173.719 154.24 175.068 154.24 \
- 176.305 154.353 177.542 154.353 178.554 154.465 \
- 179.566 154.577 180.353 154.69 181.14 154.69 181.814 \
- 154.915 182.714 155.027 183.051 155.027 185.412 \
- 149.405 185.412 149.405 184.738 149.293 183.951 \
- 149.293 183.276 149.181 182.489 149.181 180.803 \
- 149.068 179.791 149.068 178.891 149.068 177.879 \
- 149.068 176.867 148.956 175.743 148.956 174.619 \
- 148.956 173.27 148.956 172.033 148.956 170.908 \
- 148.956 170.009 148.956 169.109 148.956 168.322 \
- 148.956 166.973 148.956 166.524 148.956 166.186 \
- 148.956 165.062 148.843 164.05 148.731 163.151 \
- 148.618 162.251 148.506 161.464 148.394 160.789 \
- 148.056 159.553 147.269 158.203 146.145 157.754 \
- 142.435 157.754 142.435 185.412 137.263 185.412 \
- -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 158.4 185.412 158.4 110.869 \
- 164.022 110.869 164.022 185.412 158.4 185.412 -fill \
- #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 168.182 185.412 168.182 \
- 110.869 173.804 110.869 177.514 135.267 177.739 \
- 136.054 177.851 136.954 177.964 137.853 178.076 \
- 138.752 178.301 139.539 178.413 140.439 178.526 \
- 141.338 178.751 143.137 178.975 144.037 179.088 \
- 144.824 179.2 145.723 179.313 146.623 179.425 147.41 \
- 179.538 148.422 179.763 149.321 179.875 150.333 \
- 180.1 151.233 180.212 152.132 180.437 153.032 180.55 \
- 154.043 180.774 154.943 180.887 155.842 180.999 \
- 156.742 181.224 157.754 181.337 158.653 181.337 \
- 157.641 181.224 156.629 181.224 155.617 181.224 \
- 154.606 181.224 153.594 181.112 152.582 181.112 \
- 151.682 181.112 150.67 180.999 149.771 180.999 \
- 148.759 180.999 147.86 180.887 146.96 180.887 \
- 145.948 180.887 145.049 180.887 144.149 180.887 \
- 143.25 180.887 142.125 180.887 141.114 180.887 \
- 140.102 180.887 139.09 180.887 138.078 180.887 \
- 137.178 180.887 136.166 180.887 135.267 180.887 \
- 134.368 180.887 133.468 180.887 132.569 180.887 \
- 131.669 180.887 130.882 180.887 130.095 180.887 \
- 110.869 185.946 110.869 185.946 185.412 180.325 \
- 185.412 176.165 160.565 176.052 159.778 175.94 \
- 158.99 175.827 158.203 175.602 156.517 175.49 \
- 155.617 175.378 154.718 175.265 153.931 175.153 \
- 153.032 175.04 152.02 174.928 151.12 174.703 150.221 \
- 174.591 149.321 174.478 148.422 174.366 147.41 \
- 174.141 146.51 174.028 145.611 173.804 144.599 \
- 173.691 143.587 173.579 142.575 173.354 141.676 \
- 173.241 140.551 173.017 139.539 172.904 138.528 \
- 172.904 139.539 172.904 140.551 173.017 141.563 \
- 173.017 142.575 173.017 143.587 173.129 144.599 \
- 173.129 145.498 173.129 146.51 173.241 147.41 \
- 173.241 148.422 173.241 149.321 173.354 150.221 \
- 173.354 151.233 173.354 152.132 173.354 153.144 \
- 173.354 154.156 173.354 155.055 173.354 156.067 \
- 173.354 156.967 173.354 157.866 173.354 158.766 \
- 173.354 159.553 173.354 160.452 173.354 161.239 \
- 173.354 162.026 173.354 162.926 173.354 185.412 \
- 168.182 185.412 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 206.184 185.412 205.622 \
- 175.968 205.397 177.092 205.172 178.217 204.948 \
- 179.228 204.61 180.128 204.385 181.027 204.048 \
- 181.814 203.823 182.489 203.486 183.164 203.149 \
- 183.838 202.811 184.4 202.024 185.75 201.125 186.762 \
- 200.113 187.436 199.101 187.661 198.089 187.549 \
- 197.19 186.986 196.29 186.087 195.391 184.85 194.941 \
- 184.176 194.491 183.389 194.042 182.489 193.592 \
- 181.477 193.255 180.465 192.805 179.341 192.467 \
- 178.217 192.13 176.98 191.905 176.193 191.68 175.406 \
- 191.568 174.619 191.456 173.832 191.231 172.932 \
- 191.118 172.145 191.006 171.246 190.781 169.559 \
- 190.669 168.66 190.556 167.648 190.444 166.748 \
- 190.331 165.736 190.219 164.725 190.106 163.825 \
- 189.994 162.926 189.994 162.026 189.882 161.127 \
- 189.769 160.227 189.769 159.215 189.657 158.316 \
- 189.544 157.304 189.544 156.405 189.432 155.393 \
- 189.432 154.381 189.319 153.369 189.319 152.357 \
- 189.319 151.345 189.319 150.333 189.319 149.321 \
- 189.319 148.197 189.319 146.96 189.319 145.948 \
- 189.319 144.824 189.319 143.7 189.319 142.688 \
- 189.432 141.563 189.432 140.551 189.544 139.539 \
- 189.544 138.528 189.544 137.516 189.657 136.504 \
- 189.769 135.492 189.769 134.592 189.882 133.581 \
- 189.994 132.681 189.994 131.782 190.106 130.882 \
- 190.219 129.983 190.331 129.083 190.556 127.397 \
- 190.669 126.61 190.781 125.823 191.006 124.923 \
- 191.118 124.136 191.231 123.462 191.568 121.887 \
- 191.793 121.213 191.905 120.426 192.13 119.751 \
- 192.58 117.952 193.142 116.378 193.704 114.917 \
- 194.266 113.567 194.941 112.443 195.616 111.431 \
- 196.29 110.532 196.965 109.857 197.752 109.295 \
- 198.426 108.845 199.214 108.62 200.001 108.508 \
- 201.799 108.958 202.699 109.407 203.374 110.194 \
- 204.161 111.094 204.835 112.218 205.51 113.567 \
- 206.184 115.141 206.634 116.491 206.859 117.165 \
- 206.971 117.952 207.421 119.526 207.534 120.426 \
- 207.758 121.325 207.871 122.225 207.983 123.124 \
- 208.096 124.136 208.208 125.036 208.321 126.047 \
- 208.433 127.172 208.545 128.184 208.658 129.308 \
- 208.77 130.32 208.77 131.557 208.883 132.681 208.995 \
- 133.805 204.273 133.805 204.161 132.681 203.936 \
- 131.557 203.711 130.432 203.486 129.533 203.261 \
- 128.633 202.924 127.734 202.699 126.947 202.362 \
- 126.385 201.35 124.586 200.001 124.024 199.438 \
- 124.136 198.989 124.361 198.426 124.923 197.977 \
- 125.598 197.527 126.497 197.077 127.622 196.628 \
- 128.971 196.29 130.545 196.178 131.219 195.953 \
- 132.681 195.84 133.356 195.728 134.143 195.616 \
- 134.93 195.503 135.829 195.278 137.516 195.278 \
- 138.303 195.166 139.315 195.166 140.214 195.053 \
- 141.114 195.053 142.125 194.941 143.137 194.941 \
- 144.149 194.941 145.161 194.941 146.173 194.941 \
- 147.297 194.941 148.309 194.941 149.546 194.941 \
- 150.67 194.941 151.907 194.941 152.919 195.053 \
- 154.043 195.053 155.168 195.166 156.18 195.166 \
- 157.192 195.278 158.091 195.391 159.103 195.391 \
- 160.002 195.503 160.902 195.616 161.801 195.728 \
- 162.588 195.84 163.375 196.065 164.162 196.178 \
- 164.949 196.29 165.736 196.628 167.198 197.077 \
- 168.547 197.527 169.672 197.977 170.571 198.426 \
- 171.246 198.989 171.808 199.438 172.145 200.001 \
- 172.258 200.9 171.92 201.575 171.246 202.249 170.009 \
- 202.811 168.547 203.149 167.76 203.374 166.973 \
- 203.598 166.186 203.823 165.399 204.048 164.5 \
- 204.273 163.488 204.385 162.476 204.498 161.464 \
- 204.61 160.34 204.723 159.103 200.001 159.103 \
- 200.001 145.049 209.445 145.049 209.445 185.412 \
- 206.184 185.412 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 148.506 261.305 148.506 \
- 263.554 143.784 263.554 143.784 261.305 143.671 \
- 260.068 143.334 259.394 142.772 259.056 141.985 \
- 258.944 141.085 259.056 140.523 259.394 140.074 \
- 261.755 140.074 263.104 140.523 264.678 141.085 \
- 265.465 141.985 266.364 146.145 270.637 147.607 \
- 271.874 148.506 272.998 148.843 274.01 148.956 \
- 275.359 148.956 277.158 148.843 278.507 148.506 \
- 279.632 147.944 280.643 147.157 281.43 146.482 \
- 281.88 145.695 282.218 144.796 282.442 143.784 \
- 282.667 142.659 282.78 141.535 282.78 140.298 282.78 \
- 139.286 282.78 138.387 282.667 137.6 282.442 136.925 \
- 282.218 136.363 281.88 135.576 281.093 135.014 \
- 280.194 134.564 278.957 134.452 277.608 134.452 \
- 275.359 139.624 275.359 139.624 277.608 139.736 \
- 279.069 140.074 279.969 141.535 280.419 142.659 \
- 280.081 143.334 279.519 143.671 278.62 143.784 \
- 277.158 143.784 275.809 143.671 275.022 143.334 \
- 274.235 142.772 273.448 141.985 272.548 137.263 \
- 267.376 136.251 266.364 135.351 265.465 135.014 \
- 264.565 134.902 263.554 134.902 261.755 135.014 \
- 260.518 135.464 259.506 136.026 258.719 136.813 \
- 257.932 137.488 257.595 138.275 257.145 139.174 \
- 256.92 140.186 256.695 141.31 256.583 142.435 \
- 256.583 143.447 256.583 144.458 256.583 145.245 \
- 256.695 145.92 256.92 147.157 257.482 147.719 \
- 258.157 148.169 258.944 148.394 260.068 148.506 \
- 261.305 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 165.821 270.187 165.821 \
- 276.708 165.821 277.833 165.708 278.957 165.483 \
- 279.856 165.259 280.643 164.921 281.318 164.472 \
- 281.88 163.909 282.218 163.235 282.555 162.448 \
- 282.667 161.548 282.78 160.536 282.78 159.3 282.78 \
- 158.175 282.78 157.051 282.78 156.151 282.667 \
- 155.364 282.555 154.69 282.218 154.128 281.88 \
- 153.678 281.318 153.341 280.643 153.116 279.856 \
- 152.891 278.845 152.778 277.833 152.778 276.708 \
- 152.778 270.187 152.778 269.063 152.891 268.051 \
- 153.116 267.264 153.341 266.589 154.128 265.465 \
- 155.364 264.678 156.151 264.453 157.051 264.228 \
- 158.063 264.116 159.3 264.116 160.424 264.116 \
- 161.548 264.228 162.448 264.453 163.235 264.678 \
- 163.909 265.015 164.472 265.465 164.921 265.915 \
- 165.483 267.264 165.708 268.051 165.821 269.063 \
- 165.821 270.187 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 177.514 256.583 177.514 \
- 258.494 177.064 258.494 176.165 258.606 175.715 \
- 258.944 175.378 259.281 175.265 259.843 175.265 \
- 264.565 177.514 264.565 177.514 266.927 175.265 \
- 266.927 175.265 282.78 170.543 282.78 170.543 \
- 266.927 168.632 266.927 168.632 264.565 170.543 \
- 264.565 170.543 261.305 170.655 259.843 170.993 \
- 258.606 171.442 257.707 171.892 257.032 173.579 \
- 256.358 174.703 256.133 176.165 256.133 176.727 \
- 256.133 177.064 256.133 177.514 256.583 -fill \
- #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 185.946 259.843 185.946 \
- 264.565 188.757 264.565 188.757 266.927 185.946 \
- 266.927 185.946 278.62 186.171 279.407 186.509 \
- 279.969 187.071 280.306 187.858 280.419 188.307 \
- 280.419 188.757 280.419 188.757 282.78 188.645 \
- 282.78 188.307 282.78 187.183 282.78 186.509 282.78 \
- 185.159 282.78 183.923 282.555 182.911 282.33 \
- 182.236 281.88 181.786 281.206 181.561 280.419 \
- 181.337 279.407 181.337 278.17 181.337 266.927 \
- 179.425 266.927 179.425 264.565 181.337 264.565 \
- 181.337 261.305 185.946 259.843 -fill #000000 \
- -outline {} -width 1 -tags logo
-
- $c create polygon 190.219 264.565 194.379 \
- 264.565 196.29 279.519 196.74 279.519 199.101 \
- 264.565 204.723 264.565 207.084 279.519 207.534 \
- 279.519 209.895 264.565 213.605 264.565 209.895 \
- 282.78 204.723 282.78 201.912 267.376 201.462 \
- 267.376 199.101 282.78 193.479 282.78 190.219 \
- 264.565 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 229.121 269.175 229.121 282.78 \
- 224.848 282.78 224.848 280.981 224.061 281.768 \
- 223.049 282.33 221.925 282.667 220.688 282.78 \
- 219.564 282.78 218.44 282.555 217.54 282.33 216.866 \
- 281.88 216.528 281.318 216.191 280.531 216.079 \
- 279.632 215.966 278.62 215.966 275.359 216.079 \
- 274.347 216.978 272.998 217.877 272.548 218.44 \
- 272.211 219.114 271.986 219.789 271.761 220.688 \
- 271.536 221.588 271.424 222.6 271.311 223.724 \
- 271.199 224.848 271.087 224.848 269.175 224.736 \
- 267.826 224.399 266.927 223.612 266.477 222.487 \
- 266.364 221.7 266.477 221.138 266.927 220.688 \
- 268.726 220.688 269.175 216.416 269.175 216.528 \
- 267.938 216.753 266.702 217.203 265.69 217.877 \
- 265.015 218.44 264.678 219.114 264.453 219.901 \
- 264.228 220.801 264.116 221.925 264.116 223.049 \
- 264.116 224.061 264.116 225.073 264.116 225.86 \
- 264.228 226.535 264.453 227.659 265.015 228.334 \
- 265.69 228.783 266.702 229.008 267.938 229.121 \
- 269.175 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 243.175 264.565 243.175 \
- 266.927 242.725 266.927 241.601 266.927 240.701 \
- 267.151 239.914 267.489 239.352 267.826 239.015 \
- 268.276 238.678 268.95 238.565 269.737 238.453 \
- 270.637 238.453 282.78 233.731 282.78 233.731 \
- 264.565 238.453 264.565 238.453 265.915 239.352 \
- 265.128 240.364 264.565 242.163 264.116 242.725 \
- 264.565 243.175 264.565 -fill #000000 -outline {} \
- -width 1 -tags logo
-
- $c create polygon 258.129 270.187 258.129 \
- 274.347 249.696 274.347 249.696 278.17 249.809 \
- 279.294 250.146 279.969 250.708 280.643 251.607 \
- 280.981 252.732 280.643 253.406 279.969 253.744 \
- 279.294 253.969 278.17 253.969 276.708 258.129 \
- 276.708 258.129 277.608 258.129 278.957 257.904 \
- 280.081 257.454 281.093 256.779 281.88 256.217 \
- 282.218 254.643 282.667 253.744 282.78 252.732 \
- 282.78 251.607 282.78 250.371 282.78 249.359 282.78 \
- 248.459 282.667 247.672 282.442 246.436 281.88 \
- 245.986 281.318 245.649 280.643 245.424 279.856 \
- 245.199 278.957 245.086 277.833 244.974 276.708 \
- 244.974 270.187 245.086 269.063 245.199 268.051 \
- 245.311 267.264 245.649 266.589 245.986 265.915 \
- 246.436 265.465 246.998 265.015 247.672 264.678 \
- 248.459 264.453 249.359 264.228 250.371 264.116 \
- 251.607 264.116 252.732 264.116 253.744 264.228 \
- 254.756 264.453 255.543 264.678 256.217 265.015 \
- 256.779 265.465 257.229 265.915 257.566 266.589 \
- 257.791 267.264 258.016 268.051 258.129 269.063 \
- 258.129 270.187 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 272.183 256.583 277.355 \
- 256.583 277.355 282.78 272.183 282.78 272.183 \
- 256.583 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 295.569 268.726 295.569 282.78 \
- 290.959 282.78 290.959 269.175 290.847 268.051 \
- 290.509 267.376 289.947 266.702 289.048 266.364 \
- 287.923 266.702 287.136 267.376 287.024 268.051 \
- 287.136 269.175 287.136 282.78 282.527 282.78 \
- 282.527 264.565 286.687 264.565 287.136 265.915 \
- 288.036 265.128 289.048 264.565 290.172 264.228 \
- 291.409 264.116 292.533 264.116 293.433 264.341 \
- 294.107 264.565 294.669 265.015 295.344 266.477 \
- 295.569 267.489 295.569 268.726 -fill #000000 \
- -outline {} -width 1 -tags logo
-
- $c create polygon 312.434 269.737 312.434 \
- 270.637 308.274 270.637 308.274 269.175 308.161 \
- 267.826 307.824 266.927 307.262 266.477 306.363 \
- 266.364 305.576 266.477 305.013 266.927 304.676 \
- 267.826 304.564 269.175 304.564 278.17 304.676 \
- 279.294 305.013 279.969 306.363 280.981 307.262 \
- 280.643 307.824 279.969 307.937 279.294 307.824 \
- 278.17 307.824 276.259 312.434 276.259 312.434 \
- 277.608 312.434 278.957 312.209 280.081 311.759 \
- 281.093 311.085 281.88 310.523 282.218 309.173 \
- 282.667 308.386 282.78 307.374 282.78 306.363 282.78 \
- 305.238 282.78 304.226 282.78 303.327 282.667 \
- 302.427 282.442 301.753 282.218 301.191 281.88 \
- 300.853 281.318 300.516 280.643 300.179 279.856 \
- 299.954 278.957 299.841 277.833 299.841 276.708 \
- 299.841 270.187 299.841 269.063 299.954 268.051 \
- 300.179 267.264 300.404 266.589 301.191 265.465 \
- 302.427 264.678 303.327 264.453 304.226 264.228 \
- 305.238 264.116 306.363 264.116 307.374 264.116 \
- 308.386 264.228 309.173 264.453 309.96 264.678 \
- 310.523 265.015 311.085 265.465 311.759 266.252 \
- 312.209 267.264 312.434 268.388 312.434 269.737 \
- -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 316.706 279.069 320.866 \
- 279.069 320.866 282.78 316.706 282.78 316.706 \
- 279.069 -fill #000000 -outline {} -width 1 -tags logo
-
- $c create polygon 48.215 186.312 48.215 185.412 \
- 47.766 184.4 47.766 183.501 47.316 183.501 47.316 \
- 182.601 46.416 181.59 46.416 181.14 45.967 180.24 \
- 45.405 179.791 44.955 179.228 44.055 178.329 43.606 \
- 177.879 43.156 177.43 42.144 176.98 41.694 176.418 \
- 41.245 175.968 38.883 175.068 36.972 174.169 36.522 \
- 174.169 35.173 173.607 34.723 174.169 31.913 173.607 \
- 31.913 174.169 29.551 173.607 29.551 174.169 28.54 \
- 174.169 28.09 174.619 27.19 174.169 27.19 174.619 \
- 26.741 174.619 25.729 175.068 23.93 175.518 22.918 \
- 175.068 22.468 175.518 20.669 176.418 19.657 176.418 \
- 15.048 178.779 14.036 179.228 12.686 180.24 12.237 \
- 180.69 11.225 181.59 10.775 182.039 10.325 182.601 \
- 10.775 182.601 10.325 184.4 10.775 184.85 11.225 \
- 186.312 14.036 188.223 14.485 188.673 16.846 190.022 \
- 17.296 190.472 17.296 191.034 15.947 191.933 15.048 \
- 192.383 14.485 192.833 14.036 193.283 13.136 193.845 \
- 12.237 194.295 12.686 195.644 12.686 196.094 12.237 \
- 197.555 12.237 198.005 11.675 198.904 12.237 200.816 \
- 12.237 202.277 12.237 204.526 11.675 205.988 12.237 \
- 205.988 12.237 206.437 12.237 207.337 12.686 208.349 \
- 12.686 209.248 13.136 209.698 12.686 211.16 13.136 \
- 212.509 13.136 213.521 13.586 215.32 13.586 216.781 \
- 13.586 217.681 14.036 220.492 14.485 222.403 15.048 \
- 222.853 15.947 222.853 15.947 222.403 16.397 221.953 \
- 16.846 216.781 17.296 215.32 17.858 211.609 18.308 \
- 210.71 18.308 210.148 18.308 209.248 17.858 208.798 \
- 17.858 207.899 18.308 206.437 18.308 205.538 18.308 \
- 205.088 18.308 203.627 16.846 203.627 15.947 203.177 \
- 15.947 202.727 15.947 202.277 16.397 201.715 16.846 \
- 201.715 17.858 201.715 18.308 201.715 18.758 201.265 \
- 18.308 200.816 17.858 199.916 18.308 198.455 17.858 \
- 198.455 17.858 193.283 19.208 192.383 20.107 191.933 \
- 21.569 191.484 22.018 191.484 22.918 192.383 22.918 \
- 192.833 23.48 192.833 23.93 198.005 23.48 199.467 \
- 23.93 202.277 25.279 202.277 29.551 202.727 30.001 \
- 202.277 30.901 202.277 31.913 202.277 35.623 201.265 \
- 36.522 201.265 36.972 200.816 37.984 200.816 38.883 \
- 200.816 39.333 200.366 40.345 199.916 40.795 199.916 \
- 42.594 198.455 44.055 198.005 44.055 197.555 44.505 \
- 197.105 46.416 195.644 46.416 194.744 46.866 194.295 \
- 47.316 193.845 47.766 193.283 47.316 192.833 48.215 \
- 190.472 48.215 190.022 48.215 189.572 48.215 188.673 \
- 48.215 187.211 48.215 186.762 48.215 186.312 -fill \
- $bg -outline {} -width 1 -tags logo
-
- $c create polygon 76.886 142.688 81.046 142.688 \
- 82.508 142.35 83.407 140.889 83.632 140.327 83.969 \
- 138.865 84.082 137.965 84.194 137.066 84.307 136.054 \
- 84.307 134.93 84.307 133.805 84.307 132.456 84.194 \
- 131.332 84.082 130.208 83.857 129.308 83.632 128.409 \
- 83.407 127.734 82.395 126.272 81.046 125.823 76.886 \
- 125.823 76.886 142.688 -fill $bg -outline {} -width \
- 1 -tags logo
-
- $c create polygon 97.461 148.309 97.461 149.546 \
- 97.461 150.783 97.461 152.02 97.574 153.144 97.574 \
- 154.268 97.686 155.28 97.686 156.405 97.799 157.416 \
- 97.799 158.316 97.911 159.328 98.023 160.227 98.136 \
- 161.127 98.361 162.701 98.473 163.488 98.586 164.275 \
- 98.698 164.949 98.81 165.736 99.373 167.535 99.822 \
- 169.109 100.497 170.234 101.059 171.133 101.846 \
- 171.583 102.633 171.808 104.095 171.133 104.769 \
- 170.234 105.332 169.109 105.894 167.535 106.343 \
- 165.736 106.456 164.949 106.681 164.275 106.793 \
- 163.488 106.906 162.701 107.018 161.914 107.243 \
- 160.227 107.355 159.328 107.355 158.316 107.468 \
- 157.416 107.58 156.405 107.58 155.28 107.693 154.268 \
- 107.693 153.144 107.693 152.02 107.693 150.783 \
- 107.805 149.546 107.805 148.309 107.805 147.073 \
- 107.693 145.836 107.693 144.711 107.693 143.587 \
- 107.693 142.463 107.58 141.338 107.58 140.327 \
- 107.468 139.315 107.355 138.303 107.355 137.403 \
- 107.243 136.504 107.131 135.604 106.906 133.918 \
- 106.793 133.131 106.681 132.456 106.456 131.669 \
- 106.343 130.995 105.894 129.196 105.332 127.622 \
- 104.769 126.497 104.095 125.598 103.42 125.148 \
- 102.633 124.923 101.846 125.148 101.059 125.598 \
- 100.497 126.497 99.822 127.622 99.373 129.196 98.81 \
- 130.995 98.698 131.669 98.586 132.456 98.473 133.131 \
- 98.361 133.918 98.248 134.817 98.023 136.504 97.911 \
- 137.403 97.799 138.303 97.799 139.315 97.686 140.327 \
- 97.686 141.338 97.574 142.463 97.574 143.587 97.461 \
- 144.711 97.461 145.836 97.461 147.073 97.461 148.309 \
- -fill $bg -outline {} -width 1 -tags logo
-
- $c create polygon 122.309 156.292 126.919 \
- 156.292 124.67 130.545 122.309 156.292 -fill $bg \
- -outline {} -width 1 -tags logo
-
- $c create polygon 142.435 142.688 146.145 \
- 142.688 147.607 142.35 148.506 140.889 148.731 \
- 140.327 149.068 138.865 149.181 137.965 149.293 \
- 137.066 149.405 136.054 149.405 134.93 149.405 \
- 133.805 149.405 132.456 149.405 131.332 149.405 \
- 130.208 149.293 129.308 149.181 128.409 148.956 \
- 127.734 148.056 126.272 146.595 125.823 142.435 \
- 125.823 142.435 142.688 -fill $bg -outline {} -width \
- 1 -tags logo
-
- $c create polygon 111.515 228.924 111.515 \
- 227.575 111.066 225.664 108.705 221.391 108.255 \
- 220.042 108.255 219.142 108.255 218.58 108.255 \
- 218.13 107.805 217.681 106.793 218.58 104.994 \
- 220.941 104.432 221.953 102.633 224.202 102.183 \
- 224.764 101.621 225.214 99.822 228.474 97.461 \
- 233.197 97.461 234.096 97.461 234.995 97.911 235.445 \
- 98.361 236.007 99.822 236.457 102.633 236.457 \
- 104.432 235.445 105.894 234.995 106.343 234.546 \
- 106.793 234.546 107.805 233.646 110.616 230.835 \
- 111.515 229.824 111.515 229.374 111.515 228.924 \
- -fill $bg -outline {} -width 1 -tags logo
-
- $c create polygon 161.211 269.175 160.986 \
- 267.826 160.649 266.927 160.199 266.477 159.3 \
- 266.364 158.4 266.477 157.838 266.927 157.613 \
- 267.826 157.388 269.175 157.388 278.17 157.613 \
- 279.294 157.838 279.969 159.3 280.981 160.199 \
- 280.643 160.649 279.969 160.986 279.294 161.211 \
- 278.17 161.211 269.175 -fill $bg -outline {} -width \
- 1 -tags logo
-
- $c create polygon 224.848 273.448 223.836 \
- 273.448 222.825 273.56 222.15 273.673 221.588 \
- 273.897 220.913 274.684 220.688 275.809 220.688 \
- 278.17 220.801 279.294 221.138 279.969 221.7 280.643 \
- 222.487 280.981 223.612 280.643 224.399 279.969 \
- 224.736 279.294 224.848 278.17 224.848 273.448 -fill \
- $bg -outline {} -width 1 -tags logo
-
- $c create polygon 253.969 269.175 253.744 \
- 267.826 253.406 266.927 252.732 266.477 251.607 \
- 266.364 250.708 266.477 250.146 266.927 249.696 \
- 269.175 249.696 272.548 253.969 272.548 253.969 \
- 269.175 -fill $bg -outline {} -width 1 -tags logo
-
-}
-
-#***********************************************************************
-# %PROCEDURE: LoadConnectionInfo
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Loads the connection information into the global ConnectionInfo variable
-#***********************************************************************
-proc LoadConnectionInfo {} {
- global ConnectionInfoFile ConnectionInfo PasswordFile
- set ConnectionInfo {}
- if {![file exists $ConnectionInfoFile]} {
- return
- }
- set problem [catch {
- set fp [open $ConnectionInfoFile "r"]
- while {1} {
- if {[gets $fp line] < 0} {
- break
- }
- set line [string trim $line]
- if {[string match "#*" $line]} {
- continue
- }
- if {"$line" == ""} {
- continue
- }
- set ConnectionInfo $line
- break
- }
- close $fp
- } err]
- if {$problem} {
- tk_dialog .err Error "Error loading configuration file: $err" error 0 OK
- }
- # Try loading and merging passwords if the password file is readable
- if {![file readable $PasswordFile]} {
- return
- }
-
- set fp [open $PasswordFile "r"]
- while {1} {
- if {[gets $fp line] < 0} {
- break
- }
- set line [string trim $line]
- if {[string match "#*" $line]} {
- continue
- }
- if {"$line" == ""} {
- continue
- }
- set passwords $line
- break
- }
- close $fp
-
- # Merge passwords
- foreach thing $passwords {
- set name [value $thing ConnectionName]
- set password [value $thing Password]
- set conn [GetConnection $name]
- if {"$conn" != ""} {
- lappend conn Password $password
- ReplaceConnection $conn
- }
- }
-}
-
-#***********************************************************************
-# %PROCEDURE: GetConnection
-# %ARGUMENTS:
-# name -- name of connection
-# %RETURNS:
-# key/value pair listing connection configuration, or "" if not found.
-#***********************************************************************
-proc GetConnection { name } {
- global ConnectionInfo
- foreach thing $ConnectionInfo {
- if {[value $thing ConnectionName] == "$name"} {
- return $thing
- }
- }
- return ""
-}
-
-
-#***********************************************************************
-# %PROCEDURE: DeleteConnection
-# %ARGUMENTS:
-# name -- name of connection
-# %RETURNS:
-# Nothing, but deletes connection named "$name"
-#***********************************************************************
-proc DeleteConnection { name } {
- global ConnectionInfo ConfigDir
- set newInfo {}
- set found 0
- foreach thing $ConnectionInfo {
- if {[value $thing ConnectionName] == "$name"} {
- set found 1
- } else {
- lappend newInfo $thing
- }
- }
- if {!$found} {
- return
- }
- set ConnectionInfo $newInfo
- SaveConnectionInfo
-
- # Delete the config file
- set fname [file join $ConfigDir conf.$name]
- catch { file delete $fname }
-
- BuildConnectionMenu
- if {[GetCurrentConnection] == $name} {
- if {[llength $ConnectionInfo] == 0} {
- SwitchConnection ""
- } else {
- set name [value [lindex $ConnectionInfo 0] ConnectionName]
- SwitchConnection $name
- }
- }
-}
-
-#***********************************************************************
-# %PROCEDURE: ReplaceConnection
-# %ARGUMENTS:
-# conn -- new name/value pairs
-# %RETURNS:
-# Nothing, but replaces connection in ConnectionInfo. If no such
-# connection exists, appends new connection.
-#***********************************************************************
-proc ReplaceConnection { conn } {
- global ConnectionInfo
- set name [value $conn ConnectionName]
- set newInfo {}
- set found 0
- foreach thing $ConnectionInfo {
- if {[value $thing ConnectionName] == "$name"} {
- lappend newInfo $conn
- set found 1
- } else {
- lappend newInfo $thing
- }
- }
- if {!$found} {
- lappend newInfo $conn
- }
- set ConnectionInfo $newInfo
-}
-
-proc DeletePPPoEConnection {} {
- set conn [GetCurrentConnection]
- if {"$conn" == ""} {
- return
- }
- set ans [tk_dialog .confirm "Confirm Deletion - RP-PPPoE" "Are you sure you wish to delete the connection `$conn'?" warning 0 No Yes]
- if {$ans} {
- DeleteConnection $conn
- }
-}
-
-#***********************************************************************
-# %PROCEDURE: CreateMainDialog
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Creates the main window
-#***********************************************************************
-proc CreateMainDialog {} {
- global ConnectionInfoFile
- global ConnectionInfo
- global Admin
- wm title . "RP-PPPoE"
- wm iconname . "PPPoE"
- frame .f1
- label .l1 -text "Connection: "
- menubutton .m1 -text "" -indicatoron 1 -menu .m1.menu -relief raised
- menu .m1.menu -tearoff 0
- pack .l1 .m1 -in .f1 -side left -expand 0 -fill x
- canvas .c -width 40 -height 20
- pack .c -in .f1 -side left -expand 0 -fill none
-
- # Draw the LED's
- .c create rectangle 10 1 30 8 -outline "#808080" -fill "#A0A0A0" -tags xmitrect
- .c create rectangle 10 10 30 18 -outline "#808080" -fill "#A0A0A0" -tags recvrect
-
- frame .buttons
- button .start -text "Start" -command "StartPPPoEConnection"
- button .stop -text "Stop" -command "StopPPPoEConnection"
- button .exit -text "Exit" -command "exit"
- canvas .graph -width 1 -height 1
- if {[file writable $ConnectionInfoFile]} {
- set Admin 1
- pack .f1 -side top -expand 1 -fill both
- pack .buttons -side top -expand 0 -fill x
- button .delete -text "Delete" -command "DeletePPPoEConnection"
- button .new -text "New Connection..." -command "NewPPPoEConnection"
- button .props -text "Properties..." -command "EditConnectionProps"
- pack .graph -in .f1 -side left -expand 1 -fill both
- pack .start .stop .delete .props .new .exit -in .buttons -side left -expand 0 -fill none
- } else {
- set Admin 0
- pack .f1 -side top -expand 0 -fill x
- pack .buttons -side top -expand 1 -fill both
- pack .start .stop .exit -in .buttons -side left -expand 0 -fill none
- pack .graph -in .buttons -side left -expand 1 -fill both
- }
-
- LoadConnectionInfo
- BuildConnectionMenu
- # If no connections exist, pop up new connection dialog
- if {[llength $ConnectionInfo] == 0} {
- SwitchConnection ""
- if {$Admin} {
- update idletasks
- NewPPPoEConnection
- } else {
- tk_dialog .note Note "Note: There are no connections defined. You must run this program as root to define connections" warning 0 OK
- }
- } else {
- set con [lindex $ConnectionInfo 0]
- set name [value $con ConnectionName]
- SwitchConnection $name
- }
-}
-
-#***********************************************************************
-# %PROCEDURE: GetCurrentConnection
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# The name of the current connection in the GUI.
-#***********************************************************************
-proc GetCurrentConnection {} {
- .m1 cget -text
-}
-
-#***********************************************************************
-# %PROCEDURE: value
-# %ARGUMENTS:
-# lst -- a list of key/value pairs
-# key -- key we're looking for
-# %RETURNS:
-# value corresponding to $key, or "" if not found.
-#***********************************************************************
-proc value { lst key } {
- set idx [lsearch -exact $lst $key]
- if {$idx >= 0} {
- return [lindex $lst [expr $idx+1]]
- }
- return ""
-}
-
-#***********************************************************************
-# %PROCEDURE: SwitchConnection
-# %ARGUMENTS:
-# name -- new connection name
-# %DESCRIPTION:
-# Makes $name the active connection
-#***********************************************************************
-proc SwitchConnection { name } {
- .m1 configure -text $name
- SetButtonStates
- UpdateConnectionState 0
-}
-
-#***********************************************************************
-# %PROCEDURE: EditConnectionProps
-# %ARGUMENTS:
-# None
-# %DESCRIPTION:
-# Pops up edit window for current connection
-#***********************************************************************
-proc EditConnectionProps {} {
- global ConnectionInfo
- set conn [GetCurrentConnection]
- NewPPPoEConnection $conn
-}
-
-#***********************************************************************
-# %PROCEDURE: FillConnectionGui
-# %ARGUMENTS:
-# w -- connection property GUI
-# name -- name of connection
-# %DESCRIPTION:
-# Fills GUI with values corresponding to $name.
-#***********************************************************************
-proc FillConnectionGui { w name } {
- global ConnectionInfo
- set found [GetConnection $name]
- if {"$found" != ""} {
- ListToSetupGui $w $found
- }
-}
-
-#***********************************************************************
-# %PROCEDURE: BuildConnectionMenu
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Builds the connection menu
-#***********************************************************************
-proc BuildConnectionMenu {} {
- global ConnectionInfo
- .m1.menu delete 0 end
- foreach connection $ConnectionInfo {
- set name [value $connection ConnectionName]
- .m1.menu add command -label $name -command [list SwitchConnection $name]
- }
- .m1.menu add separator
- .m1.menu add command -label "User's Manual" -command Help
-}
-
-#***********************************************************************
-# %PROCEDURE: SetButtonStates
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Enables or disables buttons, as appropriate
-#***********************************************************************
-proc SetButtonStates {} {
- global Admin
- set conn [GetCurrentConnection]
- if {"$conn" == ""} {
- .start configure -state disabled
- .stop configure -state disabled
- catch {
- .delete configure -state disabled
- .props configure -state disabled
- .new configure -state normal
- }
- } else {
- foreach {startstop updown interface} [GetConnectionStatus $conn] {break}
- if {"$startstop" == "started"} {
- .start configure -state disabled
- .stop configure -state normal
- } else {
- .start configure -state normal
- .stop configure -state disabled
- }
- catch {
- .delete configure -state normal
- .props configure -state normal
- .new configure -state normal
- }
- if {!$Admin} {
- set ok [value [GetConnection $conn] NonrootOK]
- if {!$ok} {
- .start configure -state disabled
- .stop configure -state disabled
- }
- }
- }
-}
-
-#***********************************************************************
-# %PROCEDURE: GetEthernetInterfaces
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# A list of Ethernet interfaces
-#***********************************************************************
-proc GetEthernetInterfaces {} {
- set ifs {}
- set fp [open "|/sbin/ifconfig" "r"]
- while {[gets $fp line] >= 0} {
- if {[regexp {^eth[0-9]+} $line eth]} {
- lappend ifs $eth
- }
- }
- return $ifs
-}
-
-#***********************************************************************
-# %PROCEDURE: StartPPPoEConnection
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Starts currently-selected PPPoE connection.
-#***********************************************************************
-proc StartPPPoEConnection {} {
- global Wrapper
- global StartState
- global UpdateToken
-
- set conn [GetCurrentConnection]
- if {"$conn" == ""} {
- return
- }
-
- if {"$UpdateToken" != ""} {
- after cancel $UpdateToken
- set UpdateToken ""
- }
-
- catch { unset StartState }
- set StartState(chars) ""
- set StartState(status) ""
- set StartState(msg) ""
- set StartState(flip) 0
-
- set fp [open "|$Wrapper start $conn" "r"]
-
- # Set fileevent
- fileevent $fp readable [list StartFPReadable $fp]
-
- LockGui $fp
- vwait StartState(status)
- UnlockGui
-
- if {$StartState(status) == "failed"} {
- tk_dialog .err Error "Error starting connection: $StartState(msg)" error 0 OK
- }
- SetButtonStates
- UpdateConnectionState 0
-}
-
-proc LockGui { fp } {
- .start configure -state disabled
- .stop configure -state normal -command [list AbortConnection $fp]
- .exit configure -state disabled
- .m1 configure -state disabled
- grab set .stop
-}
-
-proc UnlockGui {} {
- .start configure -state normal
- .stop configure -state disabled -command StopPPPoEConnection
- .exit configure -state normal
- .m1 configure -state normal
- grab release .stop
-}
-
-proc AbortConnection { fp } {
- global StartState
- catch { StopPPPoEConnection }
- catch { close $fp }
- set StartState(msg) "Connection aborted by user"
- set StartState(status) "failed"
-}
-
-#***********************************************************************
-# %PROCEDURE: StartFPReadable
-# %ARGUMENTS:
-# fp -- file handle
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Called when the "adsl-start" file handle is readable.
-#***********************************************************************
-proc StartFPReadable { fp } {
- global StartState
- set char [read $fp 1]
- if {$char == ""} {
- set uhoh [catch {close $fp} err]
- if {$uhoh} {
- set StartState(status) "failed"
- set StartState(msg) $err
- } else {
- set StartState(status) "succeeded"
- }
- return
- }
- append StartState(chars) $char
- if {$StartState(flip)} {
- ConnectionStateDown
- } else {
- ConnectionStateOff
- }
- set StartState(flip) [expr 1 - $StartState(flip)]
-}
-
-#***********************************************************************
-# %PROCEDURE: StopPPPoEConnection
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Stops currently-selected PPPoE connection.
-#***********************************************************************
-proc StopPPPoEConnection {} {
- global Wrapper
- set conn [GetCurrentConnection]
- if {"$conn" == ""} {
- return
- }
- set fp [open "|$Wrapper stop $conn" "r"]
- while {1} {
- set char [read $fp 1]
- if {"$char" == ""} {
- break;
- }
- }
- set uhoh [catch {close $fp} err]
- if {$uhoh} {
- # Ignore a common error
- if {![string match "*appears to have died*" $err]} {
- tk_dialog .err Error "Error stopping connection: $err" error 0 OK
- }
- }
- SetButtonStates
- UpdateConnectionState 0
-}
-
-#***********************************************************************
-# %PROCEDURE: NewPPPoEConnection
-# %ARGUMENTS:
-# name -- if supplied, we're editing the existing connection "name"
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Creates a new PPPoE connection
-#***********************************************************************
-proc NewPPPoEConnection {{name ""}} {
- set w .newcon
- if {[winfo exists $w]} {
- wm deiconify $w
- raise $w
- return
- }
-
- toplevel $w
- if {"$name" == ""} {
- wm title $w "New Connection - RP-PPPoE"
- wm iconname $w "New Connection"
- } else {
- wm title $w "Edit Connection - RP-PPPoE"
- wm iconname $w "Edit Connection"
- }
- wm withdraw $w
-
- tabnotebook_create $w.tn
- set basic [tabnotebook_page $w.tn "Basic"]
- set interface [tabnotebook_page $w.tn "NIC and DNS"]
- set opts [tabnotebook_page $w.tn "Options"]
- set advanced [tabnotebook_page $w.tn "Advanced"]
-
- # ----------- BASIC PAGE -------------
- label $w.lconName -text "Connection Name: " -anchor e
- if {"$name" != ""} {
- label $w.conName -text $name -anchor w
- } else {
- entry $w.conName -width 15
- RegisterHelpWindow $w.lconName "Enter a name for this connection. It can contain letters, numbers, undescores and the minus-sign." $w.help
- RegisterHelpWindow $w.conName "Enter a name for this connection. It can contain letters, numbers, undescores and the minus-sign." $w.help
- }
-
- label $w.luser -text "User Name: " -anchor e
- entry $w.user -width 15
- RegisterHelpWindow $w.luser "Enter your user name. Do not add a domain-name after the user name." $w.help
- RegisterHelpWindow $w.user "Enter your user name. Do not add a domain-name after the user name." $w.help
-
- label $w.lnet -text "Network: " -anchor e
- entry $w.network -width 15
- RegisterHelpWindow $w.lnet "Some ISP's require you to enter their domain-name here (e.g. \"sympatico.ca\")." $w.help
- RegisterHelpWindow $w.network "Some ISP's require you to enter their domain-name here (e.g. \"sympatico.ca\")." $w.help
-
- label $w.lpass -text "Password: " -anchor e
- entry $w.pass -width 15 -show "*"
- RegisterHelpWindow $w.lpass "Enter your password." $w.help
- RegisterHelpWindow $w.pass "Enter your password." $w.help
-
- grid $w.lconName $w.conName -in $basic -sticky nsew
- grid $w.luser $w.user -in $basic -sticky nsew
- grid $w.lnet $w.network -in $basic -sticky nsew
- grid $w.lpass $w.pass -in $basic -sticky nsew
- grid columnconfigure $basic 1 -weight 1
-
- # ----------- INTERFACES PAGE -------------
- set ifs {}
- catch {set ifs [GetEthernetInterfaces]}
-
- label $w.lifname -text "Ethernet Interface: " -anchor e
- entry $w.ifname -width 8
- RegisterHelpWindow $w.lifname "Enter Ethernet interface to which DSL modem is attached." $w.help
- RegisterHelpWindow $w.ifname "Enter Ethernet interface to which DSL modem is attached." $w.help
-
- if {[llength $ifs] > 0} {
- menubutton $w.ifmb -relief raised -text "..." -menu $w.ifmb.menu
- RegisterHelpWindow $w.ifmb "Browse detected Ethernet interface names." $w.help
- menu $w.ifmb.menu -tearoff 0
- foreach if $ifs {
- $w.ifmb.menu add command -label $if -command "$w.ifname delete 0 end; $w.ifname insert end [list $if]"
- }
- grid $w.lifname $w.ifname $w.ifmb -in $interface -sticky nsew
- } else {
- grid $w.lifname $w.ifname - -in $interface -sticky nsew
- }
-
- label $w.ldns -text "DNS Setup: " -anchor e
- menubutton $w.dns -text "From Server" -menu $w.dns.menu -relief raised -indicatoron 1
- menu $w.dns.menu -tearoff 0
- foreach thing {"From Server" "Specify" "Do not Adjust"} {
- $w.dns.menu add command -label $thing -command [list SetDNSOption $w $thing]
- }
- RegisterHelpWindow $w.ldns "DNS server options:\n'From Server' - Let PPPoE server specify DNS servers\n'Specify' - Enter IP addresses of DNS servers yourself\n'Do not Adjust' - Leave your DNS setup alone." $w.help
- RegisterHelpWindow $w.dns "DNS server options:\n'From Server' - Let PPPoE server specify DNS servers\n'Specify' - Enter IP addresses of DNS servers yourself\n'Do not Adjust' - Leave your DNS setup alone." $w.help
-
- label $w.ldns1 -text "Primary DNS: " -anchor e
- entry $w.dns1 -width 16
- RegisterHelpWindow $w.ldns1 "Enter the IP address of the primary DNS server." $w.help
- RegisterHelpWindow $w.dns1 "Enter the IP address of the primary DNS server." $w.help
- label $w.ldns2 -text "Secondary DNS: " -anchor e
- entry $w.dns2 -width 16
- RegisterHelpWindow $w.ldns2 "Enter the IP address of the secondary DNS server." $w.help
- RegisterHelpWindow $w.dns2 "Enter the IP address of the secondary DNS server." $w.help
-
- SetDNSOption $w "From Server"
- grid $w.ldns $w.dns - -in $interface -sticky nsew
- grid $w.ldns1 $w.dns1 - -in $interface -sticky nsew
- grid $w.ldns2 $w.dns2 - -in $interface -sticky nsew
-
- # If only one Ethernet interface, select it by default
- if {[llength $ifs] == 1} {
- $w.ifname insert end [lindex $ifs 0]
- }
-
- grid columnconfigure $interface 1 -weight 1
- # ----------- OPTS PAGE -------------
- checkbutton $w.nonroot -text "Allow use by non-root users" -variable OPTS(nonroot) -anchor w
- RegisterHelpWindow $w.nonroot "If enabled, ordinary users can start and stop this connection." $w.help
- checkbutton $w.sync -text "Use synchronous PPP" -variable OPTS(sync) -anchor w
- RegisterHelpWindow $w.sync "Use synchronous PPP (recommended -- easier on the CPU.)" $w.help
- label $w.lfw -text "Firewalling: " -anchor e
- if {[llength $ifs] == 1} {
- set defaultFW "Stand-Alone"
- } else {
- set defaultFW "Masquerading"
- }
- menubutton $w.fw -text $defaultFW -menu $w.fw.menu -indicatoron 1 -relief raised
- menu $w.fw.menu -tearoff 0
- foreach type {Stand-Alone Masquerading None} {
- $w.fw.menu add command -label $type -command [list $w.fw configure -text $type]
- }
-
- RegisterHelpWindow $w.lfw "Firewalling options:\nStand-Alone - A stand-alone machine.\nMasquerading - A gateway machine used for Internet sharing.\nNone - Use if you already have your own firewall rules or want to run servers." $w.help
- RegisterHelpWindow $w.fw "Firewalling options:\nStand-Alone - A stand-alone machine.\nMasquerading - A gateway machine used for Internet sharing.\nNone - Use if you already have your own firewall rules or want to run servers." $w.help
- grid $w.nonroot - -in $opts -sticky nsew
- grid $w.sync - -in $opts -sticky nsew
- grid $w.lfw $w.fw -in $opts -sticky nsw
- grid columnconfigure $opts 1 -weight 1
-
- # ----------- ADVANCED PAGE -------------
- label $w.lsn -text "Service-Name: " -anchor e
- entry $w.servicename -width 24
-
- label $w.lac -text "AC-Name: " -anchor e
- entry $w.acname -width 24
-
- RegisterHelpWindow $w.lac "Enter access concentrator name if required. Most ISPs do not require this; try leaving it blank." $w.help
- RegisterHelpWindow $w.acname "Enter access concentrator name if required. Most ISPs do not require this; try leaving it blank." $w.help
- grid $w.lsn $w.servicename -in $advanced -sticky nsew
- grid $w.lac $w.acname -in $advanced -sticky nsew
- RegisterHelpWindow $w.lsn "Enter service name if required. Most ISPs do not require this; try leaving it blank." $w.help
- RegisterHelpWindow $w.servicename "Enter service name if required. Most ISPs do not require this; try leaving it blank." $w.help
-
- grid columnconfigure $advanced 1 -weight 1
-
- # ----------- BUTTONS -------------
- frame $w.buttons
- button $w.ok -text "OK" -command [list NewPPPoEConnectionOK $name $w]
- button $w.cancel -text "Cancel" -command [list destroy $w]
- pack $w.ok $w.cancel -in $w.buttons -expand 0 -fill none -side left
-
- pack $w.tn -side top -expand 1 -fill both
-
- text $w.help -width 60 -wrap word -state disabled -height 6
- pack $w.help -side top -expand 0 -fill both
- pack $w.buttons -side top -expand 0 -fill x
-
- # If we're editing existing connection, fill GUI with current values
- if {"$name" != ""} {
- FillConnectionGui $w $name
- }
- wm deiconify $w
- update idletasks
- raise $w
-}
-
-#***********************************************************************
-# %PROCEDURE: SetDNSOption
-# %ARGUMENTS:
-# w -- connection-editing window
-# opt -- value of DNS option
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Adjusts GUI for specified option
-#***********************************************************************
-proc SetDNSOption { w opt } {
- $w.dns configure -text $opt
- if {"$opt" == "Specify"} {
- $w.dns1 configure -state normal -background white
- $w.dns2 configure -state normal -background white
- } else {
- $w.dns1 configure -state disabled -background "#d9d9d9"
- $w.dns2 configure -state disabled -background "#d9d9d9"
- }
-}
-
-# ----------------------------------------------------------------------
-# Tabbed notebook code from "Effective Tcl/Tk Programming"
-# ----------------------------------------------------------------------
-# EXAMPLE: tabnotebook that can dial up pages
-# ----------------------------------------------------------------------
-# Effective Tcl/Tk Programming
-# Mark Harrison, DSC Communications Corp.
-# Michael McLennan, Bell Labs Innovations for Lucent Technologies
-# Addison-Wesley Professional Computing Series
-# ======================================================================
-# Copyright (c) 1996-1997 Lucent Technologies Inc. and Mark Harrison
-# ======================================================================
-
-option add *Tabnotebook.tabs.background #666666 widgetDefault
-option add *Tabnotebook.margin 6 widgetDefault
-option add *Tabnotebook.tabColor #a6a6a6 widgetDefault
-option add *Tabnotebook.activeTabColor #d9d9d9 widgetDefault
-option add *Tabnotebook.tabFont \
- -*-helvetica-bold-r-normal--*-120-* widgetDefault
-
-proc tabnotebook_create {win} {
- global tnInfo
-
- frame $win -class Tabnotebook
- canvas $win.tabs -highlightthickness 0
- pack $win.tabs -fill x
-
- notebook_create $win.notebook
- pack $win.notebook -expand yes -fill both
-
- set tnInfo($win-tabs) ""
- set tnInfo($win-current) ""
- set tnInfo($win-pending) ""
- return $win
-}
-
-proc tabnotebook_page {win name} {
- global tnInfo
-
- set page [notebook_page $win.notebook $name]
- lappend tnInfo($win-tabs) $name
-
- if {$tnInfo($win-pending) == ""} {
- set id [after idle [list tabnotebook_refresh $win]]
- set tnInfo($win-pending) $id
- }
- return $page
-}
-
-proc tabnotebook_refresh {win} {
- global tnInfo
-
- $win.tabs delete all
-
- set margin [option get $win margin Margin]
- set color [option get $win tabColor Color]
- set font [option get $win tabFont Font]
- set x 2
- set maxh 0
-
- foreach name $tnInfo($win-tabs) {
- set id [$win.tabs create text \
- [expr $x+$margin+2] [expr -0.5*$margin] \
- -anchor sw -text $name -font $font \
- -tags [list $name]]
-
- set bbox [$win.tabs bbox $id]
- set wd [expr [lindex $bbox 2]-[lindex $bbox 0]]
- set ht [expr [lindex $bbox 3]-[lindex $bbox 1]]
- if {$ht > $maxh} {
- set maxh $ht
- }
-
- $win.tabs create polygon 0 0 $x 0 \
- [expr $x+$margin] [expr -$ht-$margin] \
- [expr $x+$margin+$wd] [expr -$ht-$margin] \
- [expr $x+$wd+2*$margin] 0 \
- 2000 0 2000 10 0 10 \
- -outline black -fill $color \
- -tags [list $name tab tab-$name]
-
- $win.tabs raise $id
-
- $win.tabs bind $name <ButtonPress-1> \
- [list tabnotebook_display $win $name]
-
- set x [expr $x+$wd+2*$margin]
- }
- set height [expr $maxh+2*$margin]
- $win.tabs move all 0 $height
-
- $win.tabs configure -width $x -height [expr $height+4]
-
- if {$tnInfo($win-current) != ""} {
- tabnotebook_display $win $tnInfo($win-current)
- } else {
- tabnotebook_display $win [lindex $tnInfo($win-tabs) 0]
- }
- set tnInfo($win-pending) ""
-}
-
-proc tabnotebook_display {win name} {
- global tnInfo
-
- notebook_display $win.notebook $name
-
- set normal [option get $win tabColor Color]
- $win.tabs itemconfigure tab -fill $normal
-
- set active [option get $win activeTabColor Color]
- $win.tabs itemconfigure tab-$name -fill $active
- $win.tabs raise $name
-
- set tnInfo($win-current) $name
-}
-
-# ----------------------------------------------------------------------
-# EXAMPLE: simple notebook that can dial up pages
-# ----------------------------------------------------------------------
-# Effective Tcl/Tk Programming
-# Mark Harrison, DSC Communications Corp.
-# Michael McLennan, Bell Labs Innovations for Lucent Technologies
-# Addison-Wesley Professional Computing Series
-# ======================================================================
-# Copyright (c) 1996-1997 Lucent Technologies Inc. and Mark Harrison
-# ======================================================================
-
-option add *Notebook.borderWidth 2 widgetDefault
-option add *Notebook.relief sunken widgetDefault
-
-proc notebook_create {win} {
- global nbInfo
-
- frame $win -class Notebook
- pack propagate $win 0
-
- set nbInfo($win-count) 0
- set nbInfo($win-pages) ""
- set nbInfo($win-current) ""
- return $win
-}
-
-proc notebook_page {win name} {
- global nbInfo
-
- set page "$win.page[incr nbInfo($win-count)]"
- lappend nbInfo($win-pages) $page
- set nbInfo($win-page-$name) $page
-
- frame $page
-
- if {$nbInfo($win-count) == 1} {
- after idle [list notebook_display $win $name]
- }
- return $page
-}
-
-proc notebook_display {win name} {
- global nbInfo
-
- set page ""
- if {[info exists nbInfo($win-page-$name)]} {
- set page $nbInfo($win-page-$name)
- } elseif {[winfo exists $win.page$name]} {
- set page $win.page$name
- }
- if {$page == ""} {
- error "bad notebook page \"$name\""
- }
-
- notebook_fix_size $win
-
- if {$nbInfo($win-current) != ""} {
- pack forget $nbInfo($win-current)
- }
- pack $page -expand yes -fill both
- set nbInfo($win-current) $page
-}
-
-proc notebook_fix_size {win} {
- global nbInfo
-
- update idletasks
-
- set maxw 0
- set maxh 0
- foreach page $nbInfo($win-pages) {
- set w [winfo reqwidth $page]
- if {$w > $maxw} {
- set maxw $w
- }
- set h [winfo reqheight $page]
- if {$h > $maxh} {
- set maxh $h
- }
- }
- set bd [$win cget -borderwidth]
- set maxw [expr $maxw+2*$bd]
- set maxh [expr $maxh+2*$bd]
- $win configure -width $maxw -height $maxh
-}
-
-#***********************************************************************
-# %PROCEDURE: SetupGuiToList
-# %ARGUMENTS:
-# w -- the PPPoE connection setup window
-# %RETURNS:
-# A list of (name value) pairs for the connection.
-# %DESCRIPTION:
-# Reads values from the GUI; makes a list.
-#***********************************************************************
-proc SetupGuiToList { w } {
- global OPTS
- set ans {}
- if {[catch {lappend ans ConnectionName [$w.conName get]}]} {
- lappend ans ConnectionName [$w.conName cget -text]
- }
- lappend ans UserName [$w.user get]
- lappend ans NetworkName [$w.network get]
- lappend ans Password [$w.pass get]
- lappend ans Interface [$w.ifname get]
- lappend ans DNSType [$w.dns cget -text]
- lappend ans DNS1 [$w.dns1 get]
- lappend ans DNS2 [$w.dns2 get]
- lappend ans NonrootOK $OPTS(nonroot)
- lappend ans Sync $OPTS(sync)
- lappend ans FirewallType [$w.fw cget -text]
- lappend ans ServiceName [$w.servicename get]
- lappend ans ACName [$w.acname get]
-
- # Validate
- set name [value $ans ConnectionName]
- if {![regexp -nocase {^[-a-z0-9_]+$} $name]} {
- error "Connection name must be non-blank and contain only letters, digits, `_' and `-'"
- }
-
- # Check DNS
- set type [value $ans DNSType]
- if {"$type" == "Specify"} {
- set dns [value $ans DNS1]
- if {![regexp {[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+} "$dns"]} {
- error "Primary DNS entry must consist of four dot-separated decimal numbers"
- }
- set dns [value $ans DNS2]
- if {"$dns" != "" && ![regexp {[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+} "$dns"]} {
- error "Secondary DNS entry must consist of four dot-separated decimal numbers"
- }
- }
- return $ans
-}
-
-#***********************************************************************
-# %PROCEDURE: ListToSetupGui
-# %ARGUMENTS:
-# w -- the PPPoE connection setup window
-# lst -- a list of name/value pairs
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Updates GUI to reflect lst
-#***********************************************************************
-proc ListToSetupGui { w lst } {
- global OPTS
- foreach {key value} $lst {
- switch -exact -- $key {
- ConnectionName {
- catch {
- $w.conName delete 0 end
- $w.conName insert end $value
- }
- catch {
- $w.conName configure -text $value
- }
- }
- UserName {
- $w.user delete 0 end
- $w.user insert end $value
- }
- NetworkName {
- $w.network delete 0 end
- $w.network insert end $value
- }
- Password {
- $w.pass delete 0 end
- $w.pass insert end $value
- }
- Interface {
- $w.ifname delete 0 end
- $w.ifname insert end $value
- }
- DNSType {
- SetDNSOption $w $value
- }
- DNS1 {
- set oldstate [$w.dns1 cget -state]
- $w.dns1 configure -state normal
- $w.dns1 delete 0 end
- $w.dns1 insert end $value
- $w.dns1 configure -state $oldstate
- }
- DNS2 {
- set oldstate [$w.dns2 cget -state]
- $w.dns2 configure -state normal
- $w.dns2 delete 0 end
- $w.dns2 insert end $value
- $w.dns2 configure -state $oldstate
- }
- NonrootOK {
- set OPTS(nonroot) $value
- }
- Sync {
- set OPTS(sync) $value
- }
- FirewallType {
- $w.fw configure -text $value
- }
- ServiceName {
- $w.servicename delete 0 end
- $w.servicename insert end $value
- }
- ACName {
- $w.acname delete 0 end
- $w.acname insert end $value
- }
- }
- }
-}
-
-proc NewPPPoEConnectionOK { name w } {
- if {[catch {set conn [SetupGuiToList $w]} err]} {
- tk_dialog .err "Invalid Parameters" "$err" error 0 OK
- return
- }
- if {"$name" == ""} {
- set name [value $conn ConnectionName]
- set tmp [GetConnection $name]
- if {"$tmp" != ""} {
- tk_dialog .err "Connection Exists" "The connection `$name' already exists. Pick another name." error 0 OK
- return
- }
- }
- ReplaceConnection $conn
- SaveConnectionInfo
- BuildConnectionMenu
- SwitchConnection $name
- destroy $w
-}
-
-proc SaveConnectionInfo {} {
- global ConnectionInfo ConnectionInfoFile PasswordFile
- set fp [open "$ConnectionInfoFile.new" "w"]
- puts $fp "# RP-PPPoE GUI Configuration Information."
- puts $fp "# This file may *look* human-editable, but it is NOT."
- puts $fp "# So, you with the text editor: Keep away from this file."
- puts $fp "#"
- set expunged {}
- set passwords {}
- foreach thing $ConnectionInfo {
- set name [value $thing ConnectionName]
- set password [value $thing Password]
- set pwindex [lsearch -exact $thing Password]
- set safe [lreplace $thing $pwindex [expr $pwindex+1]]
- set pwd [list ConnectionName $name Password $password]
- lappend expunged $safe
- lappend passwords $pwd
- }
- puts $fp $expunged
- close $fp
- set fp [open "$PasswordFile.new" "w"]
- exec chmod 600 "$PasswordFile.new"
- puts $fp "# RP-PPPoE GUI Configuration Information."
- puts $fp "# This file may *look* human-editable, but it is NOT."
- puts $fp "# So, you with the text editor: Keep away from this file."
- puts $fp "#"
- puts $fp $passwords
- close $fp
- file rename -force "$ConnectionInfoFile.new" "$ConnectionInfoFile"
- file rename -force "$PasswordFile.new" "$PasswordFile"
-
- # Generate config files for adsl-start for each connection
- foreach thing $ConnectionInfo {
- GenerateConfigFile $thing
- }
-
- # Now update /etc/ppp/pap-secrets and /etc/ppp/chap-secrets
- foreach thing $ConnectionInfo {
- GenerateSecretsEntry $thing
- }
-}
-
-#***********************************************************************
-# %PROCEDURE: ReadShellEscapedWord
-# %ARGUMENTS:
-# str -- a string
-# %RETURNS:
-# A two-element list -- the first element is a shell-escaped word
-# extracted from $str, just the way pppd parses /etc/ppp/pap-secrets.
-# The second element is the remaining portion of $str
-#***********************************************************************
-proc ReadShellEscapedWord { str } {
- set ans {}
- set rest $str
-
- # Chew up leading spaces
- set rest [string trimleft $rest]
-
- # If first char is a quote, read until a quote
- if {"[string index $rest 0]" == "\""} {
- set rest [string range $rest 1 end]
- set nextquote [string first "\"" $rest]
- # If no following quote, pretend we haven't seen a quote, I guess.
- if {$nextquote >= 0} {
- set ans [string range $rest 0 [expr $nextquote-1]]
- set rest [string range $rest [expr $nextquote+1] end]
- return [list $ans $rest]
- }
- }
-
- # Not a quote; chew through the string until an unescaped space
- while {[string length $rest] > 0} {
- set char [string index $rest 0]
- set rest [string range $rest 1 end]
- # Sneaky test for whitespace in Tcl 8.0
- if {"[string trim $char]" == ""} {
- return [list $ans $rest]
- }
- if {"$char" == "\\"} {
- set char [string index $rest 0]
- set rest [string range $rest 1 end]
- }
- append ans $char
- }
- return [list $ans $rest]
-}
-
-
-#***********************************************************************
-# %PROCEDURE: GenerateSecretsEntry
-# %ARGUMENTS:
-# conn -- a connection key/value list
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Adds entries to /etc/ppp/pap-secrets and /etc/ppp/chap-secrets.
-#***********************************************************************
-proc GenerateSecretsEntry { conn } {
- set user [value $conn UserName]
- set net [value $conn NetworkName]
- set password [value $conn Password]
- if {"$net" != ""} {
- set user "$user@$net"
- }
- GenerateSecretsEntryForFile $user $password "/etc/ppp/pap-secrets"
- GenerateSecretsEntryForFile $user $password "/etc/ppp/chap-secrets"
-}
-
-#***********************************************************************
-# %PROCEDURE: GenerateSecretsEntryForFile
-# %ARGUMENTS:
-# user -- user name
-# password -- password
-# fname -- file to add entry to.
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Adds entries to /etc/ppp/pap-secrets or /etc/ppp/chap-secrets.
-#***********************************************************************
-proc GenerateSecretsEntryForFile { user password fname } {
- # Copy $fname to $fname.new
- set out [open "$fname.new" "w"]
- exec chmod go-rwx "$fname.new"
- if {[file exists $fname]} {
- set in [open $fname "r"]
- while {[gets $in line] >= 0} {
- set trimmed [string trim $line]
- if {"$trimmed" == ""} {
- puts $out $line
- continue
- }
- if {[string match "#*" $trimmed]} {
- puts $out $line
- continue
- }
-
- # Read the user name off the line; copy it unless it's our
- # user name.
- foreach {word dummy} [ReadShellEscapedWord $line] {break}
- if {$word != $user} {
- puts $out $line
- }
- }
- close $in
- }
-
- # Now add our line
- set user [ShellEscape $user]
- set password [ShellEscape $password]
- puts $out "$user\t*\t$password\t*"
- close $out
- file rename -force $fname.new $fname
-}
-
-#***********************************************************************
-# %PROCEDURE: ShellEscape
-# %ARGUMENTS:
-# str
-# %RETURNS:
-# A version of $str with shell meta-characters escaped
-#***********************************************************************
-proc ShellEscape { str } {
- set ans ""
- foreach char [split $str ""] {
- if {[string first $char "01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_+=-@./"] >= 0} {
- append ans $char
- } else {
- append ans "\\$char"
- }
- }
- return $ans
-}
-
-
-#***********************************************************************
-# %PROCEDURE: GenerateConfigFile
-# %ARGUMENTS:
-# conn -- a connection key/value list
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Generates a configuration file for adsl-start and friends under
-# /etc/ppp/rp-pppoe-gui
-#***********************************************************************
-proc GenerateConfigFile { conn } {
- global ConfigDir
- set name [value $conn ConnectionName]
- set fname [file join $ConfigDir conf.$name]
- set fp [open "$fname.new" w]
- puts $fp "# Configuration file for connection `$name'."
- puts $fp "# Automatically generated. Do not edit by hand."
- puts $fp ""
- foreach {var val} $conn {
- switch -exact $var {
- UserName {
- set net [value $conn NetworkName]
- if {"$net" != ""} {
- set user "$val@$net"
- } else {
- set user "$val"
- }
- puts $fp [ShellEscape "USER=$user"]
- }
- Interface {
- puts $fp [ShellEscape "ETH=$val"]
- }
- DNSType {
- if {"$val" == "From Server"} {
- puts $fp "DNSTYPE=SERVER"
- puts $fp "USEPEERDNS=yes"
- } elseif {"$val" == "Specify"} {
- puts $fp "DNSTYPE=SPECIFY"
- puts $fp "USEPEERDNS=no"
- } else {
- puts $fp "DNSTYPE=NOCHANGE"
- puts $fp "USEPEERDNS=no"
- }
- }
- DNS1 {
- puts $fp [ShellEscape "DNS1=$val"]
- }
- DNS2 {
- puts $fp [ShellEscape "DNS2=$val"]
- }
- NonrootOK {
- if {$val} {
- puts $fp "NONROOT=OK"
- }
- }
- ACName {
- puts $fp [ShellEscape "ACNAME=$val"]
- }
- ServiceName {
- puts $fp [ShellEscape "SERVICENAME=$val"]
- }
- FirewallType {
- if {"$val" == "None"} {
- puts $fp "FIREWALL=NONE"
- } elseif {"$val" == "Masquerading"} {
- puts $fp "FIREWALL=MASQUERADE"
- } else {
- puts $fp "FIREWALL=STANDALONE"
- }
- }
- Sync {
- if {$val} {
- puts $fp "SYNCHRONOUS=yes"
- } else {
- puts $fp "SYNCHRONOUS=no"
- }
- }
- }
- }
- puts $fp "CONNECT_TIMEOUT=30"
- puts $fp "CONNECT_POLL=1"
- puts $fp "FORCEPING=\".\""
- puts $fp "PIDFILE=/var/run/adsl-$name.pid"
- puts $fp "CLAMPMSS=1412"
- puts $fp "LCP_INTERVAL=20"
- puts $fp "LCP_FAILURE=3"
- puts $fp "PPPOE_TIMEOUT=80"
- puts $fp "LINUX_PLUGIN="
- puts $fp "DEMAND=no"
- close $fp
- file rename -force "$fname.new" "$fname"
-}
-
-#***********************************************************************
-# %PROCEDURE: GetConnectionStatus
-# %ARGUMENTS:
-# conn -- connection name
-# %RETURNS:
-# A three-element list:
-# {started/stopped up/down if}
-# If first element is "started", then connection has been started.
-# If second element is "up", then connection is up.
-# If connection is up, third element is PPP interface.
-#***********************************************************************
-proc GetConnectionStatus { conn } {
- set pidfile "/var/run/adsl-$conn.pid"
-
- # Check for PID file
- if {![file readable $pidfile]} {
- return {stopped down ""}
- }
- set fp [open $pidfile "r"]
- gets $fp pid
- close $fp
-
- # Check if process is dead
- if {![file exists "/proc/$pid"]} {
- # The pppd might still be running... doh...
- if {![file readable "$pidfile.pppd"]} {
- return {stopped down ""}
- }
- set fp [open "$pidfile.pppd" "r"]
- gets $fp pid
- close $fp
- if {![file exists "/proc/$pid"]} {
- return {stopped down ""}
- }
- }
-
- # Now get PID of pppd
- if {![file readable "$pidfile.pppd"]} {
- return {started down ""}
- }
- set fp [open "$pidfile.pppd" "r"]
- gets $fp pid
- close $fp
-
- # Find interface to which it corresponds
- set pppdfiles [glob -nocomplain "/var/run/ppp*.pid"]
- set found {}
- foreach file $pppdfiles {
- set fp [open $file "r"]
- gets $fp ifpid
- close $fp
- if {$ifpid == $pid} {
- set found [file rootname [file tail $file]]
- break
- }
- }
- if {"$found" == ""} {
- return {started down ""}
- }
- return [list started up $found]
-}
-
-#***********************************************************************
-# %PROCEDURE: UpdateConnectionState
-# %ARGUMENTS:
-# fromAfter -- if 1, was called from an "after" callback.
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Updates the "LED" displays; periodically reschedules itself to keep
-# updating display.
-#***********************************************************************
-proc UpdateConnectionState {{fromAfter 1}} {
- global UpdateToken
- global Packets
- global Bytes
- global UpdateInterval
- global MeasureTime
- if {$fromAfter} {
- set UpdateToken ""
- }
-
- set conn [GetCurrentConnection]
- if {"$conn" == ""} {
- ConnectionStateOff
- ResetGraph
- if {"$UpdateToken" != ""} {
- after cancel $UpdateToken
- set UpdateToken {}
- }
- return
- }
-
- foreach {startstop updown interface} [GetConnectionStatus $conn] {break}
- if {"$startstop" == "stopped"} {
- ConnectionStateOff
- ResetGraph
- } elseif {"$updown" == "down"} {
- ConnectionStateDown
- ResetGraph
- } else {
- # Get the packet counts
- set found 0
- set fp [open "/proc/net/dev" "r"]
- while {[gets $fp line] >= 0} {
- if {![string match "*$interface:*" $line]} {
- continue
- }
- set colon [string first ":" $line]
- if {$colon < 0} {
- continue
- }
- set line [string range $line [expr $colon+1] end]
- set found 1
- set MeasureTime [clock seconds]
- break
- }
- close $fp
- if {$found} {
- foreach {rbytes rpacks rerrs rdrop rfifo rframe rcomp rmulti tbytes tpacks} $line {break}
- if {!$fromAfter} {
- set Packets(in) $rpacks
- set Packets(out) $tpacks
- set Bytes(in) $rbytes
- set Bytes(out) $tbytes
- ConnectionStateUp
- ResetGraph
- } else {
- if {$rpacks != $Packets(in)} {
- ConnectionReceiveActive
- } else {
- ConnectionReceiveUp
- }
- if {$tpacks != $Packets(out)} {
- ConnectionTransmitActive
- } else {
- ConnectionTransmitUp
- }
- set Packets(in) $rpacks
- set Packets(out) $tpacks
- set Bytes(in) $rbytes
- set Bytes(out) $tbytes
- UpdateGraph
- }
- } else {
- ConnectionStateUp
- ResetGraph
- }
- }
- if {"$UpdateToken" == ""} {
- set UpdateToken [after $UpdateInterval UpdateConnectionState]
- }
- if {$fromAfter} {
- SetButtonStates
- }
-}
-
-proc ConnectionStateOff {} {
- .c itemconfigure xmitrect -fill "#A0A0A0"
- .c itemconfigure recvrect -fill "#A0A0A0"
-}
-
-proc ConnectionStateDown {} {
- .c itemconfigure xmitrect -fill "#A00000"
- .c itemconfigure recvrect -fill "#A00000"
-}
-
-proc ConnectionStateUp {} {
- .c itemconfigure xmitrect -fill "#00D000"
- .c itemconfigure recvrect -fill "#00D000"
-}
-
-proc ConnectionTransmitActive {} {
- .c itemconfigure xmitrect -fill "#FFFF00"
-}
-
-proc ConnectionTransmitUp {} {
- .c itemconfigure xmitrect -fill "#00D000"
-}
-
-proc ConnectionReceiveActive {} {
- .c itemconfigure recvrect -fill "#FFFF00"
-}
-
-proc ConnectionReceiveUp {} {
- .c itemconfigure recvrect -fill "#00D000"
-}
-
-proc ResetGraph {} {
- global GraphPoints
- set GraphPoints(in) {}
- set GraphPoints(out) {}
- set GraphPoints(times) {}
- .graph delete all
- UpdateGraph
-}
-
-proc UpdateGraph {} {
- global GraphPoints Bytes UpdateInterval MeasureTime
- lappend GraphPoints(times) $MeasureTime
- lappend GraphPoints(in) $Bytes(in)
- lappend GraphPoints(out) $Bytes(out)
-
- set w [winfo width .graph]
- set w2 [expr $w/2]
-
- set h [winfo height .graph]
- set toChop [expr [llength $GraphPoints(in)] - $w2 - 1]
- if {$toChop > 0} {
- set GraphPoints(in) [lrange $GraphPoints(in) $toChop end]
- }
- set toChop [expr [llength $GraphPoints(out)] - $w2 - 1]
- if {$toChop > 0} {
- set GraphPoints(out) [lrange $GraphPoints(out) $toChop end]
- }
- set toChop [expr [llength $GraphPoints(times)] - $w2 - 1]
- if {$toChop > 0} {
- set GraphPoints(times) [lrange $GraphPoints(times) $toChop end]
- }
-
- set prev [lindex $GraphPoints(in) 0]
- set incoords {}
- set outcoords {}
- set inmax 0
- set outmax 0
- foreach thing [lrange $GraphPoints(in) 1 end] {
- set diff [expr $thing - $prev]
- set prev $thing
- lappend incoords $diff
- if {$diff > $inmax} {
- set inmax $diff
- }
- }
-
- set prev [lindex $GraphPoints(out) 0]
- foreach thing [lrange $GraphPoints(out) 1 end] {
- set diff [expr $thing - $prev]
- set prev $thing
- lappend outcoords $diff
- if {$diff > $outmax} {
- set outmax $diff
- }
- }
-
- if {$inmax == 0} { set inmax 1 }
- if {$outmax == 0} { set outmax 1 }
- # Draw the transmit line
- set x 0
- set hh [expr $h-4]
- set scaled {}
- foreach thing $outcoords {
- lappend scaled $x [expr double($h) - 2 - (double($hh) * double($thing) / double($outmax))]
- incr x
- }
-
- .graph delete all
- if {[llength $scaled] >= 4} {
- eval ".graph create line $scaled -fill #A00000"
- set bits [expr 8.0 * ([lindex $GraphPoints(out) end] - [lindex $GraphPoints(out) 0])]
- set timediff [expr [lindex $GraphPoints(times) end] - [lindex $GraphPoints(times) 0]]
- if {$timediff != 0} {
- set bps [Pretty [expr double($bits) / $timediff]]
- .graph create text 2 2 -anchor nw -font fixed -text "$bps"
- }
- }
-
- # Draw the receive line
- set x $w2
- set scaled {}
- foreach thing $incoords {
- lappend scaled $x [expr double($h) - 2 - (double($hh) * double($thing) / double($inmax))]
- incr x
- }
-
- if {[llength $scaled] >= 4} {
- eval ".graph create line $scaled -fill #00A000"
- set bits [expr 8.0 * ([lindex $GraphPoints(in) end] - [lindex $GraphPoints(in) 0])]
- set timediff [expr [lindex $GraphPoints(times) end] - [lindex $GraphPoints(times) 0]]
- if {$timediff != 0} {
- set bps [Pretty [expr double($bits) / $timediff]]
- .graph create text [expr $w2+2] 2 -anchor nw -font fixed -text "$bps"
- }
- }
-}
-
-proc Pretty { n } {
- if {$n < 0} {
- return "***"
- }
- if {$n < 1000} {
- return [format "%.1f" $n]
- }
- set n [expr $n/1000.0]
- if {$n < 1000} {
- return [format "%.1fk" $n]
- }
- set n [expr $n/1000.0]
- if {$n < 1000} {
- return [format "%.1fM" $n]
- }
- set n [expr $n/1000.0]
- return [format "%.1fG" $n]
-}
-
-#***********************************************************************
-# %PROCEDURE: Help
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Opens help page
-#***********************************************************************
-proc Help {} {
- if {![file readable /usr/share/rp-pppoe-gui/tkpppoe.html]} {
- tk_dialog .err Error "Help file '/usr/share/rp-pppoe-gui/tkpppoe.html' is not installed" error 0 OK
- return
- }
- catch { exec /bin/sh -c "netscape -remote 'openURL(/usr/share/rp-pppoe-gui/tkpppoe.html)' || netscape /usr/share/rp-pppoe-gui/tkpppoe.html" > /dev/null 2>/dev/null & }
-}
-
-
-
-#***********************************************************************
-# %PROCEDURE: doLogo
-# %ARGUMENTS:
-# None
-# %RETURNS:
-# Nothing
-# %DESCRIPTION:
-# Does the logo thing
-#***********************************************************************
-proc doLogo {} {
- global AlreadyRunFile ConfigDir
- if {[file exists $AlreadyRunFile]} {
- return
- }
- catch { file mkdir $ConfigDir }
- catch { close [open $AlreadyRunFile "w"] }
- canvas .c -width 374 -height 286 -bg #FFFFCC
- pack .c
- drawLogo .c #FFFFCC
-
- # Funky effect
- .c create text 4 4 -anchor nw -text "Welcome to RP-PPPoE" \
- -fill red -font {-family times -size -24 -weight bold} -tags pppoe
- .c lower pppoe
-
- .c move logo -300 0
-
- update idletasks
-
- for {set i 0} {$i < 15} {incr i} {
- .c move logo 20 0
- update idletasks
- after 25
- }
-
- .c create text 4 28 -anchor nw -text "http://www.roaringpenguin.com" \
- -fill red -font {-family courier -size -14 -weight bold}
- update idletasks
- after 2500
-}
-
-doLogo
-catch { destroy .c }
-
-# Try creating an empty config file if none exists
-if {![file readable $ConnectionInfoFile]} {
- catch { file mkdir $ConfigDir }
- catch {
- set fp [open $ConnectionInfoFile "w"]
- close $fp
- }
-}
-
-CreateMainDialog
diff --git a/mdk-stage1/rp-pppoe/gui/wrapper.c b/mdk-stage1/rp-pppoe/gui/wrapper.c
deleted file mode 100644
index e2b99662a..000000000
--- a/mdk-stage1/rp-pppoe/gui/wrapper.c
+++ /dev/null
@@ -1,234 +0,0 @@
-/* -*-Mode: C;-*- */
-
-/***********************************************************************
-*
-* wrapper.c
-*
-* C wrapper designed to run SUID root for controlling PPPoE connections.
-*
-* Copyright (C) 2001 by Roaring Penguin Software Inc.
-*
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#define _SVID_SOURCE 1 /* For putenv */
-#define _POSIX_SOURCE 1 /* For fileno */
-#define _BSD_SOURCE 1 /* For setreuid */
-#include <stdlib.h>
-#include <string.h>
-#include <stdio.h>
-#include <errno.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-#define CONN_NAME_LEN 64
-#define LINELEN 512
-
-static char const *adsl_start = ADSL_START_PATH;
-static char const *adsl_stop = ADSL_STOP_PATH;
-static char const *adsl_status = ADSL_STATUS_PATH;
-
-/**********************************************************************
- *%FUNCTION: PathOK
- *%ARGUMENTS:
- * fname -- a file name.
- *%RETURNS:
- * 1 if path to fname is secure; 0 otherwise.
- *%DESCRIPTION:
- * Makes sure ownership/permissions of file and parent directories
- * are safe.
- **********************************************************************/
-static int
-PathOK(char const *fname)
-{
- char path[LINELEN];
- struct stat buf;
- char const *slash;
-
- if (strlen(fname) > LINELEN) {
- fprintf(stderr, "Pathname '%s' too long\n", fname);
- return 0;
- }
-
- /* Must be absolute path */
- if (*fname != '/') {
- fprintf(stderr, "Unsafe path '%s' not absolute\n", fname);
- return 0;
- }
-
- /* Check root directory */
- if (stat("/", &buf) < 0) {
- perror("stat");
- return 0;
- }
- if (buf.st_uid) {
- fprintf(stderr, "SECURITY ALERT: Root directory (/) not owned by root\n");
- return 0;
- }
- if (buf.st_mode & (S_IWGRP | S_IWOTH)) {
- fprintf(stderr, "SECURITY ALERT: Root directory (/) writable by group or other\n");
- return 0;
- }
-
- /* Check each component */
- slash = fname;
-
- while(*slash) {
- slash = strchr(slash+1, '/');
- if (!slash) {
- slash = fname + strlen(fname);
- }
- memcpy(path, fname, slash-fname);
- path[slash-fname] = 0;
- if (stat(path, &buf) < 0) {
- perror("stat");
- return 0;
- }
- if (buf.st_uid) {
- fprintf(stderr, "SECURITY ALERT: '%s' not owned by root\n", path);
- return 0;
- }
-
- if (buf.st_mode & (S_IWGRP | S_IWOTH)) {
- fprintf(stderr, "SECURITY ALERT: '%s' writable by group or other\n",
- path);
- return 0;
- }
- }
- return 1;
-}
-
-/**********************************************************************
- *%FUNCTION: CleanEnvironment
- *%ARGUMENTS:
- * envp -- environment passed to main
- *%RETURNS:
- * Nothing
- *%DESCRIPTION:
- * Deletes all environment variables; makes safe environment
- **********************************************************************/
-static void
-CleanEnvironment(char *envp[])
-{
- envp[0] = NULL;
- putenv("PATH=/bin:/usr/bin:/sbin:/usr/sbin");
-}
-
-/**********************************************************************
- *%FUNCTION: main
- *%ARGUMENTS:
- * argc, argv -- usual suspects
- * Usage: pppoe-wrapper {start|stop|status} {connection_name}
- *%RETURNS:
- * Whatever adsl-start, adsl-stop or adsl-status returns.
- *%DESCRIPTION:
- * Runs adsl-start, adsl-stop or adsl-status on given connection if
- * non-root users are allowed to do it.
- **********************************************************************/
-int
-main(int argc, char *argv[])
-{
- int amRoot;
- char *cp;
- char fname[64+CONN_NAME_LEN];
- char line[LINELEN+1];
- int allowed = 0;
-
- FILE *fp;
-
- extern char **environ;
-
- /* Clean out environment */
- CleanEnvironment(environ);
-
- /* Are we root? */
- amRoot = (getuid() == 0);
-
- /* Validate arguments */
- if (argc != 3) {
- fprintf(stderr, "Usage: %s {start|stop|status} connection_name\n",
- argv[0]);
- exit(1);
- }
-
- if (strcmp(argv[1], "start") &&
- strcmp(argv[1], "stop") &&
- strcmp(argv[1], "status")) {
- fprintf(stderr, "Usage: %s {start|stop|status} connection_name\n",
- argv[0]);
- exit(1);
- }
-
- /* Connection name can be at most CONN_NAME_LEN chars; alpha, num, underscore */
- if (strlen(argv[2]) > CONN_NAME_LEN) {
- fprintf(stderr, "%s: Connection name '%s' too long.\n",
- argv[0], argv[2]);
- exit(1);
- }
-
- for (cp = argv[2]; *cp; cp++) {
- if (!strchr("abcdefghijklmnopqrstuvwxyz"
- "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
- "0123456789_-", *cp)) {
- fprintf(stderr, "%s: Connection name '%s' contains illegal character '%c'\n", argv[0], argv[2], *cp);
- exit(1);
- }
- }
-
- /* Open the connection file */
- sprintf(fname, "/etc/ppp/rp-pppoe-gui/conf.%s", argv[2]);
- /* Check path sanity */
- if (!PathOK(fname)) {
- exit(1);
- }
-
- fp = fopen(fname, "r");
- if (!fp) {
- fprintf(stderr, "%s: Could not open '%s': %s\n",
- argv[0], fname, strerror(errno));
- exit(1);
- }
-
- /* Check if non-root users can control it */
- if (amRoot) {
- allowed = 1;
- } else {
- while (!feof(fp)) {
- if (!fgets(line, LINELEN, fp)) {
- break;
- }
- if (!strcmp(line, "NONROOT=OK\n")) {
- allowed = 1;
- break;
- }
- }
- }
- fclose(fp);
-
- if (!allowed) {
- fprintf(stderr, "%s: Non-root users are not permitted to control connection '%s'\n", argv[0], argv[2]);
- exit(1);
- }
-
- /* Become root with setuid() to defeat is-root checks in shell scripts */
- if (setreuid(0, 0) < 0) {
- perror("setreuid");
- exit(1);
- }
-
- /* It's OK -- do it. */
- if (!strcmp(argv[1], "start")) {
- if (!PathOK(adsl_start)) exit(1);
- execl(adsl_start, "adsl-start", fname, NULL);
- } else if (!strcmp(argv[1], "stop")) {
- if (!PathOK(adsl_stop)) exit(1);
- execl(adsl_stop, "adsl-stop", fname, NULL);
- } else {
- if (!PathOK(adsl_status)) exit(1);
- execl(adsl_status, "adsl-status", fname, NULL);
- }
- fprintf(stderr, "%s: execl: %s\n", argv[0], strerror(errno));
- exit(1);
-}
diff --git a/mdk-stage1/rp-pppoe/man/adsl-connect.8 b/mdk-stage1/rp-pppoe/man/adsl-connect.8
deleted file mode 100644
index 1b34a74e5..000000000
--- a/mdk-stage1/rp-pppoe/man/adsl-connect.8
+++ /dev/null
@@ -1,66 +0,0 @@
-.\" $Id$
-.TH ADSL-CONNECT 8 "21 February 2000"
-.UC 4
-.SH NAME
-adsl-connect \- Shell script to manage a PPPoE link
-
-.SH SYNOPSIS
-.B adsl-connect \fR[\fIconfig_file\fR]
-.P
-.B adsl-connect \fR\fIinterface user\fR [\fIconfig_file\fR]
-
-
-.SH DESCRIPTION
-\fBadsl-connect\fR is a shell script which manages an ADSL connection
-using the Roaring Penguin user-space PPPoE client. If you omit
-\fIconfig_file\fR, the default file \fB/etc/ppp/pppoe.conf\fR is used.
-If you supply \fIinterface\fR and \fIuser\fR, then they override the
-Ethernet interface and user-name settings in the configuration file.
-.P
-Note that normally, you should \fInot\fR invoke \fBadsl-connect\fR
-directly. Instead, use \fBadsl-start\fR to bring up the ADSL connection.
-.P
-\fBadsl-connect\fR first reads a configuration file. It then brings
-up a PPPoE connection. If the connection ever drops, a message is logged
-to syslog, and \fBadsl-connect\fR re-establishes the connection. In addition,
-each time the connection is dropped or cannot be established,
-\fBadsl-connect\fR executes the script \fB/etc/ppp/adsl-lost\fR if it
-exists and is executable.
-
-.P
-The shell script \fBadsl-stop\fR causes \fBadsl-connect\fR to break out
-of its loop, bring the connection down, and exit.
-
-.SH TECHNICAL DETAILS
-\fBadsl-connect\fR uses the following shell variables from the
-configuration file:
-
-.TP
-.B ETH
-The Ethernet interface connected to the ADSL modem (for example, eth0).
-
-.TP
-.B USER
-The ADSL user-id (for example, b1xxnxnx@sympatico.ca).
-
-.TP
-.B PIDFILE
-A file in which to write the process-ID of the adsl-connect process
-(for example, \fB/var/run/pppoe.pid\fR). Two additional files
-($PIDFILE.pppd and $PIDFILE.pppoe) hold the process-ID's of the
-\fBpppd\fR and \fBpppoe\fR processes, respectively.
-
-.P
-By using different configuration files with different PIDFILE
-settings, you can manage multiple PPPoE connections. Just specify the
-configuration file as an argument to \fBadsl-start\fR and
-\fBadsl-stop\fR.
-
-.SH AUTHOR
-\fBadsl-connect\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-pppoe(8), adsl-start(8), adsl-stop(8), pppd(8), pppoe.conf(5), adsl-setup(8), adsl-status(8), pppoe-sniff(8), pppoe-server(8), pppoe-relay(8)
-
diff --git a/mdk-stage1/rp-pppoe/man/adsl-setup.8 b/mdk-stage1/rp-pppoe/man/adsl-setup.8
deleted file mode 100644
index 9e78fa547..000000000
--- a/mdk-stage1/rp-pppoe/man/adsl-setup.8
+++ /dev/null
@@ -1,23 +0,0 @@
-.\" $Id$
-.TH ADSL-SETUP 8 "21 February 2000"
-.UC 4
-.SH NAME
-adsl-setup \- Shell script to configure Roaring Penguin PPPoE client
-.SH SYNOPSIS
-.B adsl-setup
-
-.SH DESCRIPTION
-\fBadsl-setup\fR is a shell script which prompts you for various pieces
-of information and sets up an /etc/ppp/pppoe.conf configuration script
-for the \fBadsl-start\fR, \fBadsl-stop\fR and \fBadsl-connect\fR scripts.
-
-.SH AUTHOR
-\fBadsl-setup\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-pppoe(8), adsl-start(8), adsl-stop(8), adsl-connect(8), pppd(8),
-pppoe.conf(5), adsl-status(8), pppoe-sniff(8), pppoe-relay(8),
-pppoe-server(8)
-
diff --git a/mdk-stage1/rp-pppoe/man/adsl-start.8 b/mdk-stage1/rp-pppoe/man/adsl-start.8
deleted file mode 100644
index 87250b381..000000000
--- a/mdk-stage1/rp-pppoe/man/adsl-start.8
+++ /dev/null
@@ -1,27 +0,0 @@
-.\" $Id$
-.TH ADSL-START 8 "21 February 2000"
-.UC 4
-.SH NAME
-adsl-start \- Shell script to bring up a PPPoE link
-.SH SYNOPSIS
-.B adsl-start \fR[\fIconfig_file\fR]
-.P
-.B adsl-start \fR\fIinterface user\fR [\fIconfig_file\fR]
-
-.SH DESCRIPTION
-\fBadsl-start\fR is a shell script which starts the Roaring Penguin
-user-space PPPoE client. If you omit \fIconfig_file\fR, the default
-file \fB/etc/ppp/pppoe.conf\fR is used. If you supply
-\fIinterface\fR and \fIuser\fR, then they override the Ethernet interface
-and user-name settings in the configuration file.
-
-.SH AUTHOR
-\fBadsl-start\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-pppoe(8), adsl-stop(8), adsl-connect(8), pppd(8), pppoe.conf(5),
-adsl-setup(8), adsl-status(8), pppoe-sniff(8), pppoe-relay(8),
-pppoe-server(8)
-
diff --git a/mdk-stage1/rp-pppoe/man/adsl-status.8 b/mdk-stage1/rp-pppoe/man/adsl-status.8
deleted file mode 100644
index 2114d461e..000000000
--- a/mdk-stage1/rp-pppoe/man/adsl-status.8
+++ /dev/null
@@ -1,25 +0,0 @@
-.\" $Id$
-.TH ADSL-STATUS 8 "16 March 2000"
-.UC 4
-.SH NAME
-adsl-status \- Shell script to report on status of PPPoE link
-.SH SYNOPSIS
-.B adsl-status \fR[\fIconfig_file\fR]
-
-.SH DESCRIPTION
-\fBadsl-status\fR is a shell script which checks the status of the
-PPPoE link established by the Roaring Penguin user-space PPPoE client.
-If you omit \fIconfig_file\fR, the default file
-\fB/etc/ppp/pppoe.conf\fR is used.
-
-.SH AUTHOR
-\fBadsl-status\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-pppoe(8), adsl-start(8), adsl-connect(8), pppd(8), pppoe.conf(5),
-adsl-setup(8), adsl-stop(8), pppoe-sniff(8), pppoe-relay(8),
-pppoe-server(8)
-
-
diff --git a/mdk-stage1/rp-pppoe/man/adsl-stop.8 b/mdk-stage1/rp-pppoe/man/adsl-stop.8
deleted file mode 100644
index 2ac7fef8e..000000000
--- a/mdk-stage1/rp-pppoe/man/adsl-stop.8
+++ /dev/null
@@ -1,21 +0,0 @@
-.\" $Id$
-.TH ADSL-STOP 8 "21 February 2000"
-.UC 4
-.SH NAME
-adsl-stop \- Shell script to shut down a PPPoE link
-.SH SYNOPSIS
-.B adsl-stop \fR[\fIconfig_file\fR]
-
-.SH DESCRIPTION
-\fBadsl-stop\fR is a shell script which stops the Roaring Penguin
-user-space PPPoE client. If you omit \fIconfig_file\fR, the default
-file \fB/etc/ppp/pppoe.conf\fR is used.
-
-.SH AUTHOR
-\fBadsl-stop\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-pppoe(8), adsl-start(8), adsl-connect(8), pppd(8), pppoe.conf(5), adsl-setup(8), adsl-status(8), pppoe-sniff(8), pppoe-relay(8), pppoe-server(8)
-
diff --git a/mdk-stage1/rp-pppoe/man/pppoe-relay.8 b/mdk-stage1/rp-pppoe/man/pppoe-relay.8
deleted file mode 100644
index 5f79b09a1..000000000
--- a/mdk-stage1/rp-pppoe/man/pppoe-relay.8
+++ /dev/null
@@ -1,124 +0,0 @@
-.\" $Id$
-.TH PPPOE-RELAY 8 "26 January 2001"
-.\""
-.UC 4
-.SH NAME
-pppoe-relay \- user-space PPPoE relay agent.
-.SH SYNOPSIS
-.B pppoe-relay \fR[\fIoptions\fR]
-
-.SH DESCRIPTION
-\fBpppoe-relay\fR is a user-space relay agent for PPPoE
-(Point-to-Point Protocol over Ethernet) for Linux. \fBpppoe-relay\fR
-works in concert with the \fBpppoe\fR client and \fBpppoe-server\fR
-server. See the OPERATION section later in this manual for
-details on how \fBpppoe-relay\fR works.
-
-.SH OPTIONS
-.TP
-.B \-S \fIinterface\fR
-Adds the Ethernet interface \fIinterface\fR to the list of interfaces
-managed by \fBpppoe-relay\fR. Only PPPoE servers may be connected to
-this interface.
-
-.TP
-.B \-C \fIinterface\fR
-Adds the Ethernet interface \fIinterface\fR to the list of interfaces
-managed by \fBpppoe-relay\fR. Only PPPoE clients may be connected to
-this interface.
-
-.TP
-.B \-B \fIinterface\fR
-Adds the Ethernet interface \fIinterface\fR to the list of interfaces
-managed by \fBpppoe-relay\fR. Both PPPoE clients and servers may be
-connected to this interface.
-
-.TP
-.B \-n \fInum\fR
-Allows at most \fInum\fR concurrent PPPoE sessions. If not specified,
-the default is 5000. \fInum\fR can range from 1 to 65534.
-
-.TP
-.B \-i \fItimeout\fR
-Specifies the session idle timeout. If both peers in a session are idle
-for more than \fItimeout\fR seconds, the session is terminated.
-If \fItimeout\fR is specified as zero, sessions will never be terminated
-because of idleness.
-
-Note that the idle-session expiry routine is never run more frequently than
-every 30 seconds, so the timeout is approximate. The default value for
-\fItimeout\fR is 600 seconds (10 minutes.)
-
-.TP
-.B \-F
-The \fB\-F\fR option causes \fBpppoe-relay\fR \fInot\fR to fork into the
-background; instead, it remains in the foreground.
-
-.TP
-.B \-h
-The \fB\-h\fR option prints a brief usage message and exits.
-
-.SH OPERATION
-
-\fBpppoe-relay\fR listens for incoming PPPoE PADI frames on all interfaces
-specified with \fB-B\fR or \fB-C\fR options. When a PADI frame appears,
-\fBpppoe-relay\fR adds a Relay-Session-ID tag and broadcasts the PADI
-on all interfaces specified with \fB-B\fR or \fB-S\fR options (except the
-interface on which the frame arrived.)
-
-Any PADO frames received are relayed back to the client which sent the
-PADI (assuming they contain valid Relay-Session-ID tags.) Likewise,
-PADR frames from clients are relayed back to the matching access
-concentrator.
-
-When a PADS frame is received, \fBpppoe-relay\fR enters the two peers'
-MAC addresses and session-ID's into a hash table. (The session-ID seen
-by the access concentrator may be different from that seen by the client;
-\fBpppoe-relay\fR must renumber sessions to avoid the possibility of duplicate
-session-ID's.) Whenever either peer sends a session frame, \fBpppoe-relay\fR
-looks up the session entry in the hash table and relays the frame to
-the correct peer.
-
-When a PADT frame is received, \fBpppoe-relay\fR relays it to the peer
-and deletes the session entry from its hash table.
-
-If a client and server crash (or frames are lost), PADT frames may never
-be sent, and \fBpppoe-relay\fR's hash table can fill up with stale sessions.
-Therefore, a session-cleaning routine runs periodically, and removes old
-sessions from the hash table. A session is considered "old" if no traffic
-has been seen within \fItimeout\fR seconds. When a session is deleted because
-of a timeout, a PADT frame is sent to each peer to make certain that they
-are aware the session has been killed.
-
-.SH EXAMPLE INVOCATIONS
-
-.nf
-pppoe-relay -C eth0 -S eth1
-.fi
-
-The example above relays frames between PPPoE clients on the eth0 network
-and PPPoE servers on the eth1 network.
-
-.nf
-pppoe-relay -B eth0 -B eth1
-.fi
-
-This example is a transparent relay -- frames are relayed between any mix
-of clients and servers on the eth0 and eth1 networks.
-
-.nf
-pppoe-relay -S eth0 -C eth1 -C eth2 -C eth3
-.fi
-
-This example relays frames between servers on the eth0 network and
-clients on the eth1, eth2 and eth3 networks.
-
-.SH AUTHORS
-\fBpppoe-relay\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-adsl-start(8), adsl-stop(8), adsl-connect(8), pppd(8), pppoe.conf(5),
-pppoe(8), adsl-setup(8), adsl-status(8), pppoe-sniff(8), pppoe-server(8)
-
diff --git a/mdk-stage1/rp-pppoe/man/pppoe-server.8 b/mdk-stage1/rp-pppoe/man/pppoe-server.8
deleted file mode 100644
index aacf11f1f..000000000
--- a/mdk-stage1/rp-pppoe/man/pppoe-server.8
+++ /dev/null
@@ -1,123 +0,0 @@
-.\" $Id$
-.TH PPPOE-SERVER 8 "3 July 2000"
-.\""
-.UC 4
-.SH NAME
-pppoe-server \- user-space PPPoE server
-.SH SYNOPSIS
-.B pppoe-server \fR[\fIoptions\fR]
-
-.SH DESCRIPTION
-\fBpppoe-server\fR is a user-space server for PPPoE (Point-to-Point Protocol
-over Ethernet) for Linux and other UNIX systems. \fBpppoe-server\fR works in
-concert with the \fBpppoe\fR client to respond to PPPoE discovery packets
-and set up PPPoE sessions.
-
-.SH OPTIONS
-.TP
-.B \-F
-The \fB\-F\fR option causes \fBpppoe-server\fR not to fork and become a
-daemon. The default is to fork and become a daemon.
-
-.TP
-.B \-I \fIinterface\fR
-The \fB\-I\fR option specifies the Ethernet interface to use. Under Linux,
-it is typically \fIeth0\fR or \fIeth1\fR. The interface should be "up"
-before you start \fBpppoe-server\fR, but should \fInot\fR be configured to have
-an IP address.
-
-.TP
-.B \-T \fItimeout\fR
-This option is passed directly to \fBpppoe\fR; see \fBpppoe\fR(8) for
-details.
-
-.TP
-.B \-C \fIac_name\fR
-Specifies which name to report as the access concentrator name. If not
-supplied, the host name is used.
-
-.TP
-.B \-m \fIMSS\fR
-This option is passed directly to \fBpppoe\fR; see \fBpppoe\fR(8) for
-details.
-
-.TP
-.B \-s
-This option is passed directly to \fBpppoe\fR; see \fBpppoe\fR(8) for
-details. In addition, it causes \fBpppd\fR to be invoked with the
-\fIsync\fR option.
-
-.TP
-.B \-L \fIip\fR
-Sets the local IP address. This is passed to spawned \fBpppd\fR processes.
-If not specified, the default is 10.0.0.1.
-
-.TP
-.B \-R \fIip\fR
-Sets the starting remote IP address. As sessions are established,
-IP addresses are assigned starting from \fIip\fR. \fBpppoe-server\fR
-automatically keeps track of the pool of addresses and passes a
-valid remote IP address to \fBpppd\fR. If not specified, a starting address
-of 10.67.15.1 is used.
-
-.TP
-.B \-N \fInum\fR
-Allows at most \fInum\fR concurrent PPPoE sessions. If not specified,
-the default is 64.
-
-.TP
-.B \-p \fIfname\fR
-Reads the specified file \fIfname\fR which is a text file consisting of
-one IP address per line. These IP addresses will be assigned to clients.
-The number of sessions allowed will equal the number of addresses found
-in the file. The \fB\-p\fR option overrides both \fB\-R\fR and \fB\-N\fR.
-
-.TP
-.B \-o \fIoffset\fR
-Instead of numbering PPPoE sessions starting at 1, they will be numbered
-starting at \fIoffset\fR+1. This allows you to run multiple servers on
-a given machine; just make sure that their session numbers do not
-overlap.
-
-.TP
-.B \-f disc:sess
-The \fB\-f\fR option sets the Ethernet frame types for PPPoE discovery
-and session frames. The types are specified as hexadecimal numbers
-separated by a colon. Standard PPPoE uses frame types 8863:8864.
-\fIYou should not use this option\fR unless you are absolutely sure
-the peer you are dealing with uses non-standard frame types.
-
-.TP
-.B \-h
-The \fB\-h\fR option prints a brief usage message and exits.
-
-.SH OPERATION
-
-\fBpppoe-server\fR listens for incoming PPPoE discovery packets. When
-a session is established, it spawns a \fBpppd\fR process. The following
-options are passed to \fBpppd\fR:
-
-.nf
-nodetach noaccomp nobsdcom nodeflate nopcomp novj novjccomp
-default-asyncmap
-.fi
-
-In addition, the local and remote IP address are set based on the
-\fB\-L\fR and \fB\-R\fR options. The \fBpty\fR option is supplied along
-with a \fBpppoe\fR command to initiate the PPPoE session. Finally,
-additional \fBpppd\fR options can be placed in the file
-\fB/etc/ppp/pppoe-server-options\fR (which must exist, even if it is just
-empty!)
-
-Note that \fBpppoe-server\fR is meant mainly for testing PPPoE clients.
-It is \fInot\fR a high-performance server meant for production use.
-
-.SH AUTHORS
-\fBpppoe-server\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-adsl-start(8), adsl-stop(8), adsl-connect(8), pppd(8), pppoe.conf(5),
-pppoe(8), adsl-setup(8), adsl-status(8), pppoe-sniff(8), pppoe-relay(8)
-
diff --git a/mdk-stage1/rp-pppoe/man/pppoe-sniff.8 b/mdk-stage1/rp-pppoe/man/pppoe-sniff.8
deleted file mode 100644
index 431830a22..000000000
--- a/mdk-stage1/rp-pppoe/man/pppoe-sniff.8
+++ /dev/null
@@ -1,77 +0,0 @@
-.\" $Id$
-.TH PPPOE-SNIFF 8 "3 July 2000"
-.\""
-.UC 4
-.SH NAME
-pppoe-sniff \- examine network for non-standard PPPoE frames
-.SH SYNOPSIS
-.B pppoe-sniff \fR[\fIoptions\fR]
-
-.SH DESCRIPTION
-\fBpppoe-sniff\fR listens for likely-looking PPPoE PADR and session frames
-and deduces extra options required for \fBpppoe(8)\fR to work.
-
-Some DSL providers seem to use non-standard frame types for PPPoE frames,
-and/or require a certain value in the Service-Name field. It is often
-easier to sniff those values from a machine which can successfully connect
-rather than try to pry them out of the DSL provider.
-
-To use \fBpppoe-sniff\fR, you need two computers, a DSL modem and
-an Ethernet hub (\fInot\fR an Ethernet switch.)
-
-If the DSL modem normally connects directly to your computer's
-Ethernet card, connect it to the "uplink" port on the Ethernet hub.
-Plug two computers into normal ports on the hub. On one computer, run
-whatever software the DSL provider gave you on whatever operating
-system the DSL provider supports. On the other computer, run Linux and
-log in as root.
-
-On the Linux machine, put the Ethernet interface into promiscuous mode
-and start \fBpppoe-sniff\fR. If the ethernet interface is \fIeth0\fR,
-for example, type these commands:
-
-.nf
- ifconfig eth0 promisc
- pppoe-sniff -I eth0
-.fi
-
-On the other machine, start your DSL connection as usual. After a short
-time, \fBpppoe-sniff\fR should print recommendations for the value
-of \fBPPPOE_EXTRA\fR. Set this value in \fB/etc/ppp/pppoe.conf\fR.
-If \fBpppoe-sniff\fR indicates that something special is required in
-\fBPPPOE_EXTRA\fR, please e-mail this to \fBpppoe@roaringpenguin.com\fR
-along with the name of your ISP and the manufacturer and model number of
-your DSL modem. This information will be collated and provided on the
-PPPoE web page for users who do not have two computers.
-
-After \fBpppoe-sniff\fR finishes (or you stop it if it seems hung),
-remember to turn off promiscuous mode:
-
-.nf
- ifconfig eth0 -promisc
-.fi
-
-.SH OPTIONS
-.TP
-.B \-I \fIinterface\fR
-The \fB\-I\fR option specifies the Ethernet interface to use. Under Linux,
-it is typically \fIeth0\fR or \fIeth1\fR. The interface should be "up"
-and in promiscuous mode before you start \fBpppoe-sniff\fR.
-
-.TP
-.B \-V
-The \fB\-V\fR option causes \fBpppoe-sniff\fR to print its version number and
-exit.
-
-.SH BUGS
-\fBpppoe-sniff\fR only works on Linux.
-
-.SH AUTHORS
-\fBpppoe-sniff\fR was written by David F. Skoll <dfs@roaringpenguin.com>.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-adsl-start(8), adsl-stop(8), adsl-connect(8), pppd(8), pppoe.conf(5),
-pppoe(8), adsl-setup(8), adsl-status(8), pppoe-server(8), pppoe-relay(8)
-
diff --git a/mdk-stage1/rp-pppoe/man/pppoe.8 b/mdk-stage1/rp-pppoe/man/pppoe.8
deleted file mode 100644
index 999c3d2ed..000000000
--- a/mdk-stage1/rp-pppoe/man/pppoe.8
+++ /dev/null
@@ -1,236 +0,0 @@
-.\" $Id$
-.TH PPPOE 8 "3 July 2000"
-.UC 4
-.SH NAME
-pppoe \- user-space PPPoE client.
-.SH SYNOPSIS
-.B pppd pty 'pppoe \fR[\fIpppoe_options\fR]\fB' \fR[\fIpppd_options\fR]
-.P
-.B pppoe -A \fR[\fIpppoe_options\fR]
-.SH DESCRIPTION
-\fBpppoe\fR is a user-space client for PPPoE (Point-to-Point Protocol
-over Ethernet) for Linux and other UNIX systems. \fBpppoe\fR works in
-concert with the \fBpppd\fR PPP daemon to provide a PPP connection
-over Ethernet, as is used by many ADSL service providers.
-
-.SH OPTIONS
-.TP
-.B \-I \fIinterface\fR
-The \fB\-I\fR option specifies the Ethernet interface to use. Under Linux,
-it is typically \fIeth0\fR or \fIeth1\fR. The interface should be "up"
-before you start \fBpppoe\fR, but should \fInot\fR be configured to have
-an IP address.
-
-.TP
-.B \-T \fItimeout\fR
-The \fB\-T\fR option causes \fBpppoe\fR to exit if no session traffic
-is detected for \fItimeout\fR seconds. I recommend that you use this
-option as an extra safety measure, but if you do, you should make sure
-that PPP generates enough traffic so the timeout will normally not be
-triggered. The best way to do this is to use the
-\fIlcp-echo-interval\fR option to \fBpppd\fR. You should set the
-PPPoE timeout to be about four times the LCP echo interval.
-
-.TP
-.B \-D \fIfile_name\fR
-The \fB\-D\fR option causes every packet to be dumped to the specified
-\fIfile_name\fR. This is intended for debugging only; it produces huge
-amounts of output and greatly reduces performance.
-
-.TP
-.B \-V
-The \fB\-V\fR option causes \fBpppoe\fR to print its version number and
-exit.
-
-.TP
-.B \-A
-The \fB\-A\fR option causes \fBpppoe\fR to send a PADI packet and then print
-the names of access concentrators in each PADO packet it receives. Do not
-use this option in conjunction with \fBpppd\fR; the \fB\-A\fR option is
-meant to be used interactively to give interesting information about the
-access concentrator.
-
-.TP
-.B \-S \fIservice_name\fR
-Specifies the desired service name. \fBpppoe\fR will only initiate sessions
-with access concentrators which can provide the specified service. In
-most cases, you should \fInot\fR specify this option. Use it only if you
-know that there are multiple access concentrators or know that you need a
-specific service name.
-
-.TP
-.B \-C \fIac_name\fR
-Specifies the desired access concentrator name. \fBpppoe\fR will only
-initiate sessions with the specified access concentrator. In
-most cases, you should \fInot\fR specify this option. Use it only if you
-know that there are multiple access concentrators. If both the
-\fB\-S\fR and \fB\-C\fR options are specified, they must \fIboth\fR match
-for \fBpppoe\fR to initiate a session.
-
-.TP
-.B \-U
-Causes \fBpppoe\fR to use the Host-Uniq tag in its discovery packets. This
-lets you run multiple \fBpppoe\fR daemons without having their discovery
-packets interfere with one another. You must supply this option to
-\fIall\fR \fBpppoe\fR daemons if you intend to run multiple daemons
-simultaneously.
-
-.TP
-.B \-s
-Causes \fBpppoe\fR to use \fIsynchronous\fR PPP encapsulation. If you
-use this option, then you \fImust\fR use the \fBsync\fR option with
-\fBpppd\fR. You are encouraged to use this option if it works, because
-it greatly reduces the CPU overhead of \fBpppoe\fR. However, it
-MAY be unreliable on slow machines -- there is a race condition between
-pppd writing data and pppoe reading it. For this reason, the default
-setting is asynchronous. If you encounter bugs or crashes with Synchronous
-PPP, turn it off -- don't e-mail me for support!
-
-.TP
-.B \-m \fIMSS\fR
-Causes \fBpppoe\fR to \fIclamp\fR the TCP maximum segment size at the specified
-value. Because of PPPoE overhead, the maximum segment size for PPPoE is
-smaller than for normal Ethernet encapsulation. This could cause problems
-for machines on a LAN behind a gateway using PPPoE. If you have a LAN
-behind a gateway, and the gateway connects to the Internet using PPPoE,
-you are strongly recommended to use a \fB\-m 1412\fR option. This avoids
-having to set the MTU on all the hosts on the LAN.
-
-.TP
-.B \-p \fIfile\fR
-Causes \fBpppoe\fR to write its process-ID to the specified file. This
-can be used to locate and kill \fBpppoe\fR processes.
-
-.TP
-.B \-e \fIsess:mac\fR
-Causes \fBpppoe\fR to skip the discovery phase and move directly to the
-session phase. The session is given by \fIsess\fR and the MAC address of
-the peer by \fImac\fR. This mode is \fInot\fR meant for normal use; it
-is designed only for \fBpppoe-server\fR(8).
-
-.TP
-.B \-n
-Causes \fBpppoe\fR not to open a discovery socket. This mode is
-\fInot\fR meant for normal use; it is designed only for
-\fBpppoe-server\fR(8).
-
-.TP
-.B \-k
-Causes \fBpppoe\fR to terminate an existing session by sending a PADT frame,
-and then exit. You must use the \fB\-e\fR option in conjunction with this
-option to specify the session to kill. This may be useful for killing
-sessions when a buggy peer does not realize the session has ended.
-
-.TP
-.B \-d
-Causes \fBpppoe\fR to perform discovery and then exit, after printing
-session information to standard output. The session information is printed
-in exactly the format expected by the \fB\-e\fR option. This option lets
-you initiate a PPPoE discovery, perform some other work, and then start
-the actual PPP session. \fIBe careful\fR; if you use this option in a loop,
-you can create many sessions, which may annoy your peer.
-
-.TP
-.B \-f disc:sess
-The \fB\-f\fR option sets the Ethernet frame types for PPPoE discovery
-and session frames. The types are specified as hexadecimal numbers
-separated by a colon. Standard PPPoE uses frame types 8863:8864.
-\fIYou should not use this option\fR unless you are absolutely sure
-the peer you are dealing with uses non-standard frame types. If your
-ISP uses non-standard frame types, complain!
-
-.TP
-.B \-h
-The \fB\-h\fR option causes \fBpppoe\fR to print usage information and
-exit.
-
-.SH PPPOE BACKGROUND
-
-PPPoE (Point-to-Point Protocol over Ethernet) is described in RFC 2516
-and is a protocol which allows the session abstraction to be maintained
-over bridged Ethernet networks.
-
-PPPoE works by encapsulating PPP frames in Ethernet frames. The protocol
-has two distinct stages: The \fIdiscovery\fR and the \fIsession\fR stage.
-
-In the discovery stage, the host broadcasts a special PADI (PPPoE
-Active Discovery Initiation) frame to discover any \fIaccess
-concentrators\fR. The access concentrators (typically, only one
-access concentrator) reply with PADO (PPPoE Active Discovery Offer)
-packets, announcing their presence and the services they offer. The
-host picks one of the access concentrators and transmits a PADR (PPPoE
-Active Discovery Request) packet, asking for a session. The access
-concentrator replies with a PADS (PPPoE Active Discovery
-Session-Confirmation) packet. The protocol then moves to the session stage.
-
-In the session stage, the host and access concentrator exchange PPP frames
-embedded in Ethernet frames. The normal Ethernet MTU is 1500 bytes, but
-the PPPoE overhead plus two bytes of overhead for the encapsulated PPP
-frame mean that the MTU of the PPP interface is at most 1492 bytes.
-This causes \fIall kinds of problems\fR if you are using a Linux machine
-as a firewall and interfaces behind the firewall have an MTU greater than
-1492. In fact, to be safe, I recommend setting the MTU of machines
-behind the firewall to 1412, to allow for worst-case TCP and IP options
-in their respective headers.
-
-Normally, PPP uses the Link Control Protocol (LCP) to shut down a PPP
-link. However, the PPPoE specification allows the link to be shut down
-with a special PADT (PPPoE Active Discovery Terminate) packet. This client
-recognizes this packet and will correctly terminate if a terminate request
-is received for the PPP session.
-
-.SH DESIGN GOALS
-
-My design goals for this PPPoE client were as follows, in descending order
-of importance:
-
-.TP
-.B o
-It must work.
-
-.TP
-.B o
-It must be a user-space program and not a kernel patch.
-
-.TP
-.B o
-The code must be easy to read and maintain.
-
-.TP
-.B o
-It must be fully compliant with RFC 2516, the proposed PPPoE standard.
-
-.TP
-.B o
-It must never hang up forever -- if the connection is broken, it must
-detect this and exit, allowing a wrapper script to restart the connection.
-
-.TP
-.B o
-It must be fairly efficient.
-
-.P
-I believe I have achieved all of these goals, but (of course) am open
-to suggestions, patches and ideas. See my home page,
-http://www.roaringpenguin.com, for contact information.
-
-.SH NOTES
-
-For best results, you must give \fBpppd\fR an mtu option of
-1492. I have observed problems with excessively-large frames
-unless I set this option. Also, if \fBpppoe\fR is running on a firewall
-machine, all machines behind the firewall should have MTU's of 1412.
-
-If you have problems, check your system logs. \fBpppoe\fR logs interesting
-things to syslog. You may have to turn on logging of \fIdebug\fR-level
-messages for complete diagnosis.
-
-.SH AUTHORS
-\fBpppoe\fR was written by David F. Skoll <dfs@roaringpenguin.com>,
-with much inspiration from an earlier version by Luke Stras.
-
-The \fBpppoe\fR home page is \fIhttp://www.roaringpenguin.com/pppoe/\fR.
-
-.SH SEE ALSO
-adsl-start(8), adsl-stop(8), adsl-connect(8), pppd(8), pppoe.conf(5), adsl-setup(8), adsl-status(8), pppoe-sniff(8), pppoe-server(8), pppoe-relay(8)
-
diff --git a/mdk-stage1/rp-pppoe/man/pppoe.conf.5 b/mdk-stage1/rp-pppoe/man/pppoe.conf.5
deleted file mode 100644
index 731fd98d4..000000000
--- a/mdk-stage1/rp-pppoe/man/pppoe.conf.5
+++ /dev/null
@@ -1,168 +0,0 @@
-.\" $Id$
-.\""
-.TH PPPOE.CONF 5 "21 February 2000"
-.UC 4
-.SH NAME
-pppoe.conf \- Configuration file used by \fBadsl-start\fR(8),
-\fBadsl-stop\fR(8), \fBadsl-status(8)\fR and \fBadsl-connect\fR(8).
-
-.SH DESCRIPTION
-\fB/etc/ppp/pppoe.conf\fR is a shell script which contains configuration
-information for Roaring Penguin's ADSL scripts. Note that \fBpppoe.conf\fR
-is used only by the various adsl-* shell scripts, not by \fBpppoe\fR
-itself.
-
-\fBpppoe.conf\fR consists of a sequence of shell variable assignments.
-The variables and their meanings are:
-
-.TP
-.B ETH
-The Ethernet interface connected to the ADSL modem (for example, eth0).
-
-.TP
-.B USER
-The ADSL user-id (for example, b1xxnxnx@sympatico.ca).
-
-.TP
-.B SERVICENAME
-If this is not blank, then it is passed with the \fB\-S\fR option to
-\fBpppoe\fR. It specifies a service name to ask for. Usually, you
-should leave it blank.
-
-.TP
-.B ACNAME
-If this is not blank, then it is passed with the \fB\-C\fR option to
-\fBpppoe\fR. It specifies the name of the access concentrator to connect
-to. Usually, you should leave it blank.
-
-.TP
-.B DEMAND
-If set to a number, the link is activated on demand and brought down
-after after \fBDEMAND\fR seconds. If set to \fBno\fR, the link is kept
-up all the time rather than being activated on demand.
-
-.TP
-.B DNSTYPE
-One of \fBNOCHANGE\fR, \fBSPECIFY\fR or \fBSERVER\fR. If
-set to NOCHANGE, \fBadsl-connect\fR will not adjust the DNS setup in
-any way. If set to SPECIFY, it will re-write /etc/resolv.conf with
-the values of DNS1 and DNS2. If set to \fBSERVER\fR, it will
-supply the \fIusepeerdns\fR option to \fBpppd\fR, and make a symlink
-from /etc/resolv.conf to /etc/ppp/resolv.conf.
-
-.TP
-.B DNS1, DNS2
-IP addresses of DNS servers if you use DNSTYPE=SPECIFY.
-
-.TP
-.B NONROOT
-If the line \fBNONROOT=OK\fR (exactly like that; no whitespace or comments)
-appears in the configuration file, then \fBpppoe-wrapper\fR will allow
-non-root users to bring the conneciton up or down. The wrapper is installed
-only if you installed the rp-pppoe-gui package.
-
-.TP
-.B USEPEERDNS
-If set to "yes", then \fBadsl-connect\fR will supply the \fIusepeerdns\fR
-option to \fBpppd\fR, which causes it to obtain DNS server addresses
-from the peer and create a new \fB/etc/resolv.conf\fR file. Otherwise,
-\fBadsl-connect\fR will not supply this option, and \fBpppd\fR will not
-modify \fB/etc/resolv.conf\fR.
-
-.TP
-.B CONNECT_POLL
-How often (in seconds) \fBadsl-start\fR should check to see if a new PPP
-interface has come up. If this is set to 0, the \fBadsl-start\fR simply
-initiates the PPP session, but does not wait to see if it comes up
-successfully.
-
-.TP
-.B CONNECT_TIMEOUT
-How long (in seconds) \fBadsl-start\fR should wait for a new PPP interface
-to come up before concluding that \fBadsl-connect\fR has failed and killing
-the session.
-
-.TP
-.B PING
-A character which is echoed every \fBCONNECT_POLL\fR seconds while
-\fBadsl-start\fR is waiting for the PPP interface to come up.
-
-.TP
-.B FORCEPING
-A character which is echoed every \fBCONNECT_POLL\fR seconds while
-\fBadsl-start\fR is waiting for the PPP interface to come up. Similar
-to \fBPING\fR, but the character is echoed even if \fBadsl-start\fR's
-standard output is not a tty.
-
-.TP
-.B PIDFILE
-A file in which to write the process-ID of the adsl-connect process
-(for example, \fB/var/run/pppoe.pid\fR). Two additional files
-($PIDFILE.pppd and $PIDFILE.pppoe) hold the process-ID's of the
-\fBpppd\fR and \fBpppoe\fR processes, respectively.
-
-.TP
-.B SYNCHRONOUS
-An indication of whether or not to use synchronous PPP (\fByes\fR or
-\fBno\fR). Synchronous PPP is safe on Linux machines with the n_hdlc
-line discipline. (If you have a file called "n_hdlc.o" in your
-modules directory, you have the line discipline.) It is \fInot
-recommended\fR on other machines or on Linux machines without the
-n_hdlc line discipline due to some known and unsolveable race
-conditions in a user-mode client.
-
-.TP
-.B CLAMPMSS
-The value at which to "clamp" the advertised MSS for TCP sessions. The
-default of 1412 should be fine.
-
-.TP
-.B LCP_INTERVAL
-How often (in seconds) \fBpppd\fR sends out LCP echo-request packets.
-
-.TP
-.B LCP_FAILURE
-How many unanswered LCP echo-requests must occur before \fBpppd\fR
-concludes the link is dead.
-
-.TP
-.B PPPOE_TIMEOUT
-If this many seconds elapse without any activity seen by \fBpppoe\fR,
-then \fBpppoe\fR exits.
-
-.TP
-.B FIREWALL
-One of NONE, STANDALONE or MASQUERADE. If NONE, then \fBadsl-connect\fR does
-not add any firewall rules. If STANDALONE, then it clears existing firewall
-rules and sets up basic rules for a standalone machine. If MASQUERADE, then
-it clears existing firewall rules and sets up basic rules for an Internet
-gateway. If you run services on your machine, these simple firewall scripts
-are inadequate; you'll have to make your own firewall rules and set FIREWALL
-to NONE.
-
-.TP
-.B PPPOE_EXTRA
-Any extra arguments to pass to \fBpppoe\fR
-
-.TP
-.B PPPD_EXTRA
-Any extra arguments to pass to \fBpppd\fR
-
-.TP
-.B LINUX_PLUGIN
-If non-blank, the full path of the Linux kernel-mode PPPoE plugin
-(typically \fB/etc/ppp/plugins/rp-pppoe.so\fR.) This forces
-\fBadsl-connect\fR to use kernel-mode PPPoE on Linux 2.4.x systems.
-This code is experimental and unsupported. Use of the plugin causes
-\fBadsl-connect\fR to ignore CLAMPMSS, PPPOE_EXTRA, SYNCHRONOUS and
-PPPOE_TIMEOUT.
-
-.P
-By using different configuration files with different PIDFILE
-settings, you can manage multiple PPPoE connections. Just specify the
-configuration file as an argument to \fBadsl-start\fR and \fBadsl-stop\fR.
-
-.SH SEE ALSO
-pppoe(8), adsl-connect(8), adsl-start(8), adsl-stop(8), pppd(8), adsl-setup(8),
-pppoe-wrapper(8)
-
diff --git a/mdk-stage1/rp-pppoe/rp-pppoe-gui.spec b/mdk-stage1/rp-pppoe/rp-pppoe-gui.spec
deleted file mode 100644
index e28faa3e6..000000000
--- a/mdk-stage1/rp-pppoe/rp-pppoe-gui.spec
+++ /dev/null
@@ -1,98 +0,0 @@
-Summary: PPP Over Ethernet (xDSL support)
-Name: rp-pppoe-gui
-Version: 3.0
-%if %(%{expand:test %{_vendor} != mandriva ; echo $?})
-Release: 1mdk
-%else
-Release: 1
-%endif
-Copyright: GPL
-Group: System Environment/Daemons
-Source: http://www.roaringpenguin.com/pppoe/rp-pppoe-3.0.tar.gz
-Url: http://www.roaringpenguin.com/pppoe/
-Packager: David F. Skoll <dfs@roaringpenguin.com>
-BuildRoot: /tmp/pppoe-build
-Vendor: Roaring Penguin Software Inc.
-Requires: ppp >= 2.3.7
-Requires: rp-pppoe >= 3.0
-
-%description
-This is a graphical wrapper around the rp-pppoe PPPoE client. PPPoE is
-a protocol used by many DSL Internet Service Providers.
-
-%prep
-umask 022
-mkdir -p $RPM_BUILD_ROOT
-cd $RPM_BUILD_ROOT
-rm -rf $RPM_BUILD_ROOT/rp-pppoe-%{version}
-zcat $RPM_SOURCE_DIR/rp-pppoe-%{version}.tar.gz | tar xvf -
-cd $RPM_BUILD_ROOT/rp-pppoe-%{version}/src
-./configure --mandir=%{_mandir}
-
-%build
-cd $RPM_BUILD_ROOT/rp-pppoe-%{version}/gui
-make
-
-%install
-cd $RPM_BUILD_ROOT/rp-pppoe-%{version}/gui
-make install RPM_INSTALL_ROOT=$RPM_BUILD_ROOT
-
-%clean
-rm -rf $RPM_BUILD_ROOT
-
-%post
-# Install entry in KDE menu
-if test -n "$KDEDIR" ; then
- mkdir -p "$KDEDIR/share/applnk/Internet"
- cat <<EOF > "$KDEDIR/share/applnk/Internet/tkpppoe.kdelnk"
-# KDE Config File
-[KDE Desktop Entry]
-Name=TkPPPoE
-Comment=Start/Stop ADSL connections
-Exec=tkpppoe
-Terminal=0
-Type=Application
-EOF
-fi
-
-# Install entry in GNOME menus
-GNOMEDIR=`gnome-config --datadir 2>/dev/null`
-if test -n "$GNOMEDIR" ; then
- mkdir -p "$GNOMEDIR/gnome/apps/Internet"
-cat <<EOF > "$GNOMEDIR/gnome/apps/Internet/tkpppoe.desktop"
-[Desktop Entry]
-Name=TkPPPoE
-Comment=Start/Stop ADSL connections
-Exec=tkpppoe
-Terminal=0
-Type=Application
-EOF
-fi
-
-%postun
-# Remove KDE menu entry
-if test -n "$KDEDIR" ; then
- rm -f "$KDEDIR/share/applnk/Internet/tkpppoe.kdelnk"
-fi
-
-# Remove GNOME menu entry
-GNOMEDIR=`gnome-config --datadir 2>/dev/null`
-if test -n "$GNOMEDIR" ; then
- rm -f "$GNOMEDIR/gnome/apps/Internet/tkpppoe.desktop"
-fi
-
-%files
-%defattr(-,root,root)
-%dir /etc/ppp/rp-pppoe-gui
-/usr/sbin/pppoe-wrapper
-/usr/bin/tkpppoe
-%{_mandir}/man1/tkpppoe.1*
-%{_mandir}/man1/pppoe-wrapper.1*
-/usr/share/rp-pppoe-gui/tkpppoe.html
-/usr/share/rp-pppoe-gui/mainwin-busy.png
-/usr/share/rp-pppoe-gui/mainwin-nonroot.png
-/usr/share/rp-pppoe-gui/mainwin.png
-/usr/share/rp-pppoe-gui/props-advanced.png
-/usr/share/rp-pppoe-gui/props-basic.png
-/usr/share/rp-pppoe-gui/props-nic.png
-/usr/share/rp-pppoe-gui/props-options.png
diff --git a/mdk-stage1/rp-pppoe/rp-pppoe.spec b/mdk-stage1/rp-pppoe/rp-pppoe.spec
deleted file mode 100644
index b39fd811c..000000000
--- a/mdk-stage1/rp-pppoe/rp-pppoe.spec
+++ /dev/null
@@ -1,71 +0,0 @@
-Summary: PPP Over Ethernet (xDSL support)
-Name: rp-pppoe
-Version: 3.0
-%if %(%{expand:test %{_vendor} != mandriva ; echo $?})
-Release: 1mdk
-%else
-Release: 1
-%endif
-Copyright: GPL
-Group: System Environment/Daemons
-Source: http://www.roaringpenguin.com/pppoe/rp-pppoe-3.0.tar.gz
-Url: http://www.roaringpenguin.com/pppoe/
-Packager: David F. Skoll <dfs@roaringpenguin.com>
-BuildRoot: /tmp/pppoe-build
-Vendor: Roaring Penguin Software Inc.
-Requires: ppp >= 2.3.7
-
-%description
-PPPoE (Point-to-Point Protocol over Ethernet) is a protocol used by
-many ADSL Internet Service Providers. Roaring Penguin has a free
-client for Linux systems to connect to PPPoE service providers.
-
-The client is a user-mode program and does not require any kernel
-modifications. It is fully compliant with RFC 2516, the official PPPoE
-specification.
-
-%prep
-%setup
-cd src
-./configure --mandir=%{_mandir}
-
-%build
-cd src
-make
-
-%install
-cd src
-make install RPM_INSTALL_ROOT=$RPM_BUILD_ROOT
-
-%clean
-rm -rf $RPM_BUILD_ROOT
-
-%files
-%defattr(-,root,root)
-%doc doc/CHANGES doc/HOW-TO-CONNECT doc/LICENSE doc/KERNEL-MODE-PPPOE README
-%config /etc/ppp/pppoe.conf
-%config /etc/ppp/pppoe-server-options
-%config /etc/ppp/firewall-masq
-%config /etc/ppp/firewall-standalone
-/etc/ppp/plugins/*
-/usr/sbin/pppoe
-/usr/sbin/pppoe-server
-/usr/sbin/pppoe-sniff
-/usr/sbin/pppoe-relay
-/usr/sbin/adsl-connect
-/usr/sbin/adsl-start
-/usr/sbin/adsl-stop
-/usr/sbin/adsl-setup
-/usr/sbin/adsl-status
-%{_mandir}/man5/pppoe.conf.5*
-%{_mandir}/man8/pppoe.8*
-%{_mandir}/man8/pppoe-server.8*
-%{_mandir}/man8/pppoe-relay.8*
-%{_mandir}/man8/pppoe-sniff.8*
-%{_mandir}/man8/adsl-connect.8*
-%{_mandir}/man8/adsl-start.8*
-%{_mandir}/man8/adsl-stop.8*
-%{_mandir}/man8/adsl-status.8*
-%{_mandir}/man8/adsl-setup.8*
-/etc/rc.d/init.d/adsl
-
diff --git a/mdk-stage1/rp-pppoe/scripts/adsl-connect.in b/mdk-stage1/rp-pppoe/scripts/adsl-connect.in
deleted file mode 100755
index 85dfb3d8d..000000000
--- a/mdk-stage1/rp-pppoe/scripts/adsl-connect.in
+++ /dev/null
@@ -1,278 +0,0 @@
-#!/bin/sh
-# @configure_input@
-#***********************************************************************
-#
-# adsl-connect
-#
-# Shell script to connect to an ADSL provider using PPPoE
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc.
-#
-# $Id$
-#
-# This file may be distributed under the terms of the GNU General
-# Public License.
-#
-# Usage: adsl-connect [config_file]
-# adsl-connect interface user [config_file]
-# Second form overrides USER and ETH from config file.
-# If config_file is omitted, defaults to /etc//ppp/pppoe.conf
-#
-#***********************************************************************
-
-# From AUTOCONF
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-localstatedir=/var
-
-# Paths to programs
-IFCONFIG=/sbin/ifconfig
-PPPD=@PPPD@
-SETSID=@SETSID@
-PPPOE=@sbindir@/pppoe
-LOGGER="/usr/bin/logger -t `basename $0`"
-
-# Must be root
-if test "`@ID@ -u`" != 0 ; then
- echo "$0: You must be root to run this script" >& 2
- exit 1
-fi
-
-if test "$SETSID" != "" -a ! -x "$SETSID"; then
- SETSID=""
-fi
-
-CONFIG=/etc//ppp/pppoe.conf
-USER=""
-ETH=""
-
-# Sort out command-line arguments
-case "$#" in
- 1)
- CONFIG="$1"
- ;;
- 3)
- CONFIG="$3"
- ;;
-esac
-
-if test ! -f "$CONFIG" -o ! -r "$CONFIG" ; then
- echo "$0: Cannot read configuration file '$CONFIG'" >& 2
- exit 1
-fi
-
-. $CONFIG
-
-PPPOE_PIDFILE="$PIDFILE.pppoe"
-PPPD_PIDFILE="$PIDFILE.pppd"
-
-# Check for command-line overriding of ETH and USER
-case "$#" in
- 2|3)
- ETH="$1"
- USER="$2"
- ;;
-esac
-
-# Check that config file is sane
-if test "$USER" = "" ; then
- echo "$0: Check '$CONFIG' -- no setting for USER" >& 2
- exit 1
-fi
-if test "$ETH" = "" ; then
- echo "$0: Check '$CONFIG' -- no setting for ETH" >& 2
- exit 1
-fi
-
-PPPD_PID=0
-
-# Catch common error
-if test "$DEBUG" = "1" ; then
- echo "*** If you want to use DEBUG, invoke adsl-start, not adsl-connect."
- exit 1
-fi
-
-if test "$DEBUG" != "" ; then
- if test "$LINUX_PLUGIN" != "" ; then
- echo "Cannot use DEBUG mode and LINUX_PLUGIN at the same time."
- echo "Kernel-mode PPPoE is experimental and unsupported."
- exit 1
- fi
- echo "* The following section identifies your Ethernet interface" >> $DEBUG
- echo "* and user name. Some ISP's need 'username'; others" >> $DEBUG
- echo "* need 'username@isp.com'. Try both" >> $DEBUG
- echo "ETH=$ETH; USER=$USER" >> $DEBUG
- echo "---------------------------------------------" >> $DEBUG
-fi
-
-# MTU of Ethernet card attached to modem MUST be 1500. This apparently
-# fails on some *BSD's, so we'll only do it under Linux
-
-if test `uname -s` = Linux ; then
- $IFCONFIG $ETH up mtu 1500
- # For 2.4 kernels. Will fail on 2.2.x, but who cares?
- modprobe ppp_generic > /dev/null 2>&1
- modprobe ppp_async > /dev/null 2>&1
- modprobe ppp_synctty > /dev/null 2>&1
- if test -n "$LINUX_PLUGIN" ; then
- modprobe pppox > /dev/null 2>&1
- modprobe pppoe > /dev/null 2>&1
- fi
-fi
-
-if test "$SYNCHRONOUS" = "yes" ; then
- PPPOE_SYNC=-s
- PPPD_SYNC=sync
- # Increase the chances of it working on Linux...
- if test `uname -s` = Linux ; then
- modprobe n_hdlc > /dev/null 2>&1
- fi
-else
- PPPOE_SYNC=""
- PPPD_SYNC=""
-fi
-
-if test -n "$ACNAME" ; then
- ACNAME="-C $ACNAME"
-fi
-
-if test -n "$SERVICENAME" ; then
- SERVICENAME="-S $SERVICENAME"
-fi
-
-if test "$CLAMPMSS" = "no" ; then
- CLAMPMSS=""
-else
- CLAMPMSS="-m $CLAMPMSS"
-fi
-
-# If DNSTYPE is SERVER, we must use "usepeerdns" option to pppd.
-if test "$DNSTYPE" = "SERVER" ; then
- USEPEERDNS=yes
-fi
-
-if test "$USEPEERDNS" = "yes" ; then
- USEPEERDNS="usepeerdns"
-else
- USEPEERDNS=""
-fi
-
-# Backward config file compatibility
-if test "$DEMAND" = "" ; then
- DEMAND=no
-fi
-
-if test "$DEMAND" = "no" ; then
- DEMAND=""
-else
- DEMAND="demand persist idle $DEMAND 10.112.112.112:10.112.112.113 ipcp-accept-remote ipcp-accept-local connect true noipdefault ktune"
-fi
-
-case "$FIREWALL" in
- STANDALONE)
- . /etc/ppp/firewall-standalone
- ;;
- MASQUERADE)
- . /etc/ppp/firewall-masq
- ;;
-esac
-
-# If we're using kernel-mode PPPoE on Linux...
-if test "$LINUX_PLUGIN" != "" ; then
- PLUGIN_OPTS="plugin $LINUX_PLUGIN $ETH"
- modprobe pppoe > /dev/null 2>&1
-fi
-
-# Standard PPP options we always use
-PPP_STD_OPTIONS="$PLUGIN_OPTS noipdefault noauth default-asyncmap defaultroute hide-password nodetach $USEPEERDNS local mtu 1492 mru 1492 noaccomp noccp nobsdcomp nodeflate nopcomp novj novjccomp user $USER lcp-echo-interval $LCP_INTERVAL lcp-echo-failure $LCP_FAILURE $PPPD_EXTRA"
-
-# Jigger DNS if required...
-if test "$DNSTYPE" = "SERVER" ; then
- # Sorry, dude...
- rm -f /etc/resolv.conf
- ln -s /etc/ppp/resolv.conf /etc/resolv.conf
-elif test "$DNSTYPE" = "SPECIFY" ; then
- # Sorry, dude...
- rm -f /etc/resolv.conf
- echo "nameserver $DNS1" > /etc/resolv.conf
- if test -n "$DNS2" ; then
- echo "nameserver $DNS2" >> /etc/resolv.conf
- fi
-fi
-
-# PPPoE invocation
-PPPOE_CMD="$PPPOE -p $PPPOE_PIDFILE -I $ETH -T $PPPOE_TIMEOUT -U $PPPOE_SYNC $CLAMPMSS $ACNAME $SERVICENAME $PPPOE_EXTRA"
-if test "$DEBUG" != "" ; then
- if test "$DEMAND" != "" ; then
- echo "(Turning off DEMAND for debugging purposes)"
- DEMAND=""
- fi
- echo "* The following section shows the pppd command we will invoke" >> $DEBUG
- echo "pppd invocation" >> $DEBUG
- echo "$SETSID $PPPD pty '$PPPOE_CMD' $PPP_STD_OPTIONS $PPPD_SYNC debug" >> $DEBUG
- echo "---------------------------------------------" >> $DEBUG
- $SETSID $PPPD pty "$PPPOE_CMD -D $DEBUG-0" \
- $PPP_STD_OPTIONS \
- $PPPD_SYNC \
- debug >> $DEBUG 2>&1
- echo "---------------------------------------------" >> $DEBUG
- echo "* The following section is an extract from your log." >> $DEBUG
- echo "* Look for error messages from pppd, such as" >> $DEBUG
- echo "* a lack of kernel support for PPP, authentication failure" >> $DEBUG
- echo "* etc." >> $DEBUG
- echo "Extract from /var/log/messages" >> $DEBUG
- grep 'ppp' /var/log/messages | tail -150 >> $DEBUG
- date >> $DEBUG
- echo "---------------------------------------------" >> $DEBUG
- echo "* The following section is a dump of the packets" >> $DEBUG
- echo "* sent and received by rp-pppoe. If you don't see" >> $DEBUG
- echo "* any output, it's an Ethernet driver problem. If you only" >> $DEBUG
- echo "* see three PADI packets and nothing else, check your cables" >> $DEBUG
- echo "* and modem. Make sure the modem lights flash when you try" >> $DEBUG
- echo "* to connect. Check that your Ethernet card is in" >> $DEBUG
- echo "* half-duplex, 10Mb/s mode. If all else fails," >> $DEBUG
- echo "* try using pppoe-sniff." >> $DEBUG
- echo "rp-pppoe debugging dump" >> $DEBUG
- cat $DEBUG-0 >> $DEBUG
- rm -f $DEBUG-0
- for i in 1 2 3 4 5 6 7 8 9 10 ; do
- echo ""
- echo ""
- echo ""
- done
- echo "*** Finished debugging run. Please review the file"
- echo "*** '$DEBUG' and try to"
- echo "*** figure out what is going on."
- echo "***"
- echo "*** Unfortunately, we can NO LONGER accept debugging"
- echo "*** output for analysis. Please do not send this to"
- echo "*** Roaring Penguin; it is too time-consuming for"
- echo "*** us to deal with all the analyses we have been sent."
- exit 0
-fi
-
-echo $$ > $PIDFILE
-
-while [ true ] ; do
- if test "$LINUX_PLUGIN" != "" ; then
- $SETSID $PPPD $PPP_STD_OPTIONS $DEMAND &
- echo "$!" > $PPPD_PIDFILE
- else
- $SETSID $PPPD pty "$PPPOE_CMD" \
- $PPP_STD_OPTIONS \
- $DEMAND \
- $PPPD_SYNC &
- echo "$!" > $PPPD_PIDFILE
- fi
- wait
-
- # Run /etc/ppp/adsl-lost if it exists
- test -x /etc/ppp/adsl-lost && /etc/ppp/adsl-lost
-
- # Re-establish the connection
- $LOGGER -p daemon.notice \
- "ADSL connection lost; attempting re-connection."
-
- # Wait a bit in case a problem causes tons of log messages :-)
- sleep 5
-done
diff --git a/mdk-stage1/rp-pppoe/scripts/adsl-init-suse.in b/mdk-stage1/rp-pppoe/scripts/adsl-init-suse.in
deleted file mode 100755
index 936f5fba7..000000000
--- a/mdk-stage1/rp-pppoe/scripts/adsl-init-suse.in
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/bin/sh
-#
-# adsl This script starts or stops an ADSL connection
-#
-# chkconfig: 2345 99 01
-# description: Connects to ADSL provider
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc. This software may
-# be distributed under the terms of the GNU General Public License, version
-# 2 or any later version.
-# Modifed to work with SuSE 6.4 linux by Gary Cameron.
-#
-# Source function library.
-#. /etc/rc.d/init.d/functions # For red hat?
-. /etc/rc.config # For SuSE, enables setting from /etc/rc.config
-
-#Tweak this
-restart_time=120
-
-# From AUTOCONF
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-
-# Paths to programs
-START=@sbindir@/adsl-start
-STOP=@sbindir@/adsl-stop
-STATUS=@sbindir@/adsl-status
-
-test "$ADSL_START" = "yes" || exit 0
-
-# The echo return value for success (defined in /etc/rc.config).
-return=$rc_done
-case "$1" in
- start)
- echo -n "Bringing up ADSL link"
- $START > /dev/null 2>&1 || return=$rc_failed
- echo -e "$return"
- ;;
-
- stop)
- echo -n "Shutting down ADSL link"
- $STOP > /dev/null 2>&1 || return=$rc_failed
- echo -e "$return"
- ;;
-
- restart)
- $0 stop
- echo "Waiting" $restart_time "seconds for the host to reset itself"
- sleep $restart_time #Note: Need time for host to reset itself
- $0 start
- ;;
-
- status)
- $STATUS
- ;;
-
- *)
- echo "Usage: adsl {start|stop|restart|status}"
- exit 1
-esac
-
-exit 0
diff --git a/mdk-stage1/rp-pppoe/scripts/adsl-init-turbolinux.in b/mdk-stage1/rp-pppoe/scripts/adsl-init-turbolinux.in
deleted file mode 100755
index 3b22f1345..000000000
--- a/mdk-stage1/rp-pppoe/scripts/adsl-init-turbolinux.in
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/bin/sh
-#
-# adsl This script starts or stops an ADSL connection
-#
-# chkconfig: 2345 99 01
-# description: Connects to ADSL provider
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc. This software may
-# be distributed under the terms of the GNU General Public License, version
-# 2 or any later version.
-
-# Source function library if it exists
-test -r /etc/rc.d/init.d/functions && . /etc/rc.d/init.d/functions
-
-# From AUTOCONF
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-
-# Paths to programs
-START=@sbindir@/adsl-start
-STOP=@sbindir@/adsl-stop
-STATUS=@sbindir@/adsl-status
-case "$1" in
- start)
- echo -n "Bringing up ADSL link: "
-
- $START
- if [ $? = 0 ] ; then
- echo success
- touch /var/lock/subsys/adsl
- else
- echo failure
- fi
- ;;
-
- stop)
- echo -n "Shutting down ADSL link: "
-
- $STOP > /dev/null 2>&1
- if [ $? = 0 ] ; then
- echo success
- rm -f /var/lock/subsys/adsl
- else
- echo failure
- fi
- ;;
-
- restart)
- $0 stop
- $0 start
- ;;
-
- status)
- $STATUS
- ;;
-
- *)
- echo "Usage: adsl {start|stop|restart|status}"
- exit 1
-esac
-
-exit 0
diff --git a/mdk-stage1/rp-pppoe/scripts/adsl-init.in b/mdk-stage1/rp-pppoe/scripts/adsl-init.in
deleted file mode 100755
index ab9146fd3..000000000
--- a/mdk-stage1/rp-pppoe/scripts/adsl-init.in
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/bin/sh
-#
-# adsl This script starts or stops an ADSL connection
-#
-# chkconfig: 2345 99 01
-# description: Connects to ADSL provider
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc. This software may
-# be distributed under the terms of the GNU General Public License, version
-# 2 or any later version.
-
-# Source function library if it exists
-test -r /etc/rc.d/init.d/functions && . /etc/rc.d/init.d/functions
-
-# From AUTOCONF
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-
-# Paths to programs
-START=@sbindir@/adsl-start
-STOP=@sbindir@/adsl-stop
-STATUS=@sbindir@/adsl-status
-case "$1" in
- start)
- echo -n "Bringing up ADSL link"
-
- $START
- if [ $? = 0 ] ; then
- touch /var/lock/subsys/adsl
- echo_success
- else
- echo_failure
- fi
- echo ""
- ;;
-
- stop)
- echo -n "Shutting down ADSL link"
-
- $STOP > /dev/null 2>&1
- if [ $? = 0 ] ; then
- rm -f /var/lock/subsys/adsl
- echo_success
- else
- echo_failure
- fi
- echo ""
- ;;
-
- restart)
- $0 stop
- $0 start
- ;;
-
- status)
- $STATUS
- ;;
-
- *)
- echo "Usage: adsl {start|stop|restart|status}"
- exit 1
-esac
-
-exit 0
diff --git a/mdk-stage1/rp-pppoe/scripts/adsl-setup.in b/mdk-stage1/rp-pppoe/scripts/adsl-setup.in
deleted file mode 100755
index a8c7fa039..000000000
--- a/mdk-stage1/rp-pppoe/scripts/adsl-setup.in
+++ /dev/null
@@ -1,346 +0,0 @@
-#!/bin/sh
-#***********************************************************************
-#
-# adsl-setup
-#
-# All-purpose slicing/dicing shell script to configure rp-pppoe.
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc.
-#
-# $Id$
-#***********************************************************************
-
-# From AUTOCONF
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-
-# Paths to programs
-IFCONFIG=/sbin/ifconfig
-PPPD=@PPPD@
-PPPOE=@sbindir@/pppoe
-ECHO=@ECHO@
-LOGGER="/usr/bin/logger -t `basename $0`"
-
-CONFIG=/etc/ppp/pppoe.conf
-
-# Protect created files
-umask 077
-
-copy() {
- cp $1 $2
- if [ "$?" != 0 ] ; then
- $ECHO "*** Error copying $1 to $2"
- $ECHO "*** Quitting."
- exit 1
- fi
-}
-
-$ECHO "Welcome to the Roaring Penguin ADSL client setup. First, I will run"
-$ECHO "some checks on your system to make sure the PPPoE client is installed"
-$ECHO "properly..."
-$ECHO ""
-
-# Must be root
-if [ "`@ID@ -u`" != 0 ] ; then
- $ECHO "$0: Sorry, you must be root to run this script"
- exit 1
-fi
-
-# Prototype config file must exist
-if [ ! -r "$CONFIG" ] ; then
- $ECHO "Oh, dear, I don't see the file '$CONFIG' anywhere. Please"
- $ECHO "re-install the PPPoE client."
- exit 1
-fi
-
-# Must have pppd
-if [ ! -x $PPPD ] ; then
- $ECHO "Oops, I can't execute the program '$PPPD'. You"
- $ECHO "must install the PPP software suite, version 2.3.10 or later."
- exit 1
-fi
-
-. $CONFIG
-
-if [ "$DEMAND" = "" ] ; then
- DEMAND=no
-fi
-
-# pppoe must exist
-if [ ! -x "$PPPOE" ] ; then
- $ECHO "Oh, dear, I can't execute the program '$PPPOE'. Please"
- $ECHO "re-install the rp-pppoe client."
- exit 1
-fi
-
-$ECHO "Looks good! Now, please enter some information:"
-
-while [ true ] ; do
- $ECHO ""
- $ECHO "USER NAME"
- $ECHO ""
- $ECHO -n ">>> Enter your PPPoE user name (default $USER): "
- read U
-
- if [ "$U" = "" ] ; then
- U="$USER"
- fi
-
- # Under Linux, "fix" the default interface if eth1 is not available
- if test `uname -s` = "Linux" ; then
- $IFCONFIG $ETH > /dev/null 2>&1 || ETH=eth0
- fi
- $ECHO ""
- $ECHO "INTERFACE"
- $ECHO ""
- $ECHO ">>> Enter the Ethernet interface connected to the ADSL modem"
- $ECHO "For Solaris, this is likely to be something like /dev/hme0."
- $ECHO "For Linux, it will be ethn, where 'n' is a number."
- $ECHO -n "(default $ETH): "
- read E
-
- if [ "$E" = "" ] ; then
- E="$ETH"
- fi
-
- $ECHO ""
- $ECHO "Do you want the link to come up on demand, or stay up continuously?"
- $ECHO "If you want it to come up on demand, enter the idle time in seconds"
- $ECHO "after which the link should be dropped. If you want the link to"
- $ECHO "stay up permanently, enter 'no' (two letters, lower-case.)"
- $ECHO "NOTE: Demand-activated links do not interact well with dynamic IP"
- $ECHO "addresses. You may have some problems with demand-activated links."
- $ECHO -n ">>> Enter the demand value (default $DEMAND): "
- read D
- if [ "$D" = "" ] ; then
- D=$DEMAND
- fi
-
- $ECHO ""
- $ECHO "DNS"
- $ECHO ""
- $ECHO "Please enter the IP address of your ISP's primary DNS server."
- $ECHO "If your ISP claims that 'the server will provide DNS addresses',"
- $ECHO "enter 'server' (all lower-case) here."
- $ECHO "If you just press enter, I will assume you know what you are"
- $ECHO "doing and not modify your DNS setup."
- $ECHO -n ">>> Enter the DNS information here: "
-
- read DNS1
-
-
- if [ "$DNS1" != "" ] ; then
- if [ "$DNS1" != "server" ] ; then
- $ECHO "Please enter the IP address of your ISP's secondary DNS server."
- $ECHO "If you just press enter, I will assume there is only one DNS server."
- $ECHO -n ">>> Enter the secondary DNS server address here: "
- read DNS2
- fi
- fi
-
- while [ true ] ; do
- $ECHO ""
- $ECHO "PASSWORD"
- $ECHO ""
- stty -echo
- $ECHO -n ">>> Please enter your PPPoE password: "
- read PWD1
- $ECHO ""
- $ECHO -n ">>> Please re-enter your PPPoE password: "
- read PWD2
- $ECHO ""
- stty echo
- if [ "$PWD1" = "$PWD2" ] ; then
- break
- fi
-
- $ECHO -n ">>> Sorry, the passwords do not match. Try again? (y/n)"
- read ANS
- case "$ANS" in
- N|No|NO|Non|n|no|non)
- $ECHO "OK, quitting. Bye."
- exit 1
- esac
- done
-
- # Firewalling
- $ECHO ""
- $ECHO "FIREWALLING"
- $ECHO ""
- if test `uname -s` != "Linux" ; then
- $ECHO "Sorry, firewalling is only supported under Linux. Consult"
- $ECHO "your operating system manuals for details on setting up"
- $ECHO "packet filters for your system."
- FIREWALL=NONE
- else
- $ECHO "Please choose the firewall rules to use. Note that these rules are"
- $ECHO "very basic. You are strongly encouraged to use a more sophisticated"
- $ECHO "firewall setup; however, these will provide basic security. If you"
- $ECHO "are running any servers on your machine, you must choose 'NONE' and"
- $ECHO "set up firewalling yourself. Otherwise, the firewall rules will deny"
- $ECHO "access to all standard servers like Web, e-mail, ftp, etc. If you"
- $ECHO "are using SSH, the rules will block outgoing SSH connections which"
- $ECHO "allocate a privileged source port."
- $ECHO ""
- while [ true ] ; do
- $ECHO "The firewall choices are:"
- $ECHO "0 - NONE: This script will not set any firewall rules. You are responsible"
- $ECHO " for ensuring the security of your machine. You are STRONGLY"
- $ECHO " recommended to use some kind of firewall rules."
- $ECHO "1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation"
- $ECHO "2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway"
- $ECHO " for a LAN"
- $ECHO -n ">>> Choose a type of firewall (0-2): "
- read a
- if [ "$a" = 0 -o "$a" = 1 -o "$a" = 2 ] ; then
- break
- fi
- $ECHO "Please enter a number from 0 to 2"
- done
-
- case "$a" in
- 0)
- FIREWALL=NONE
- ;;
- 1)
- FIREWALL=STANDALONE
- ;;
- 2)
- FIREWALL=MASQUERADE
- ;;
- esac
- fi
-
- $ECHO ""
- $ECHO "** Summary of what you entered **"
- $ECHO ""
- $ECHO "Ethernet Interface: $E"
- $ECHO "User name: $U"
- if [ "$D" = "no" ] ; then
- $ECHO "Activate-on-demand: No"
- else
- $ECHO "Activate-on-demand: Yes; idle timeout = $D seconds"
- fi
-
- if [ "$DNS1" != "" ] ; then
- if [ "$DNS1" = "server" ] ; then
- $ECHO "DNS addresses: Supplied by ISP's server"
- else
- $ECHO "Primary DNS: $DNS1"
- if [ "$DNS2" != "" ] ; then
- $ECHO "Secondary DNS: $DNS2"
- fi
- fi
- else
- $ECHO "DNS: Do not adjust"
- fi
- $ECHO "Firewalling: $FIREWALL"
- $ECHO ""
- while [ true ] ; do
- $ECHO -n '>>> Accept these settings and adjust configuration files (y/n)? '
- read ANS
- case "ANS" in
- Y|y|yes|Yes|oui|Oui)
- ANS=y
- ;;
- N|n|no|No|non|Non)
- ANS=n
- ;;
- esac
- if [ "$ANS" = "y" -o "$ANS" = "n" ] ; then
- break
- fi
- done
- if [ "$ANS" = "y" ] ; then
- break
- fi
-done
-
-# Adjust configuration files. First to $CONFIG
-
-$ECHO "Adjusting $CONFIG"
-
-copy $CONFIG $CONFIG-bak
-if [ "$DNS1" = "server" ] ; then
- DNSTYPE=SERVER
- DNS1=""
- USEPEERDNS=yes
-else
- USEPEERDNS=no
- if [ "$DNS1" = "" ] ; then
- DNSTYPE=NOCHANGE
- else
- DNSTYPE=SPECIFY
- fi
-fi
-
-# Where is pppd likely to put its pid?
-if [ -d /var/run ] ; then
- VARRUN=/var/run
-else
- VARRUN=/etc/ppp
-fi
-
-# Some #$(*& ISP's use a slash in the user name...
-sed -e "s&^USER=.*&USER='$U'&" \
- -e "s&^ETH=.*&ETH='$E'&" \
- -e "s&^PIDFILE=.*&PIDFILE=\"$VARRUN/\$CF_BASE-adsl.pid\"&" \
- -e "s/^FIREWALL=.*/FIREWALL=$FIREWALL/" \
- -e "s/^DEMAND=.*/DEMAND=$D/" \
- -e "s/^DNSTYPE=.*/DNSTYPE=$DNSTYPE/" \
- -e "s/^DNS1=.*/DNS1=$DNS1/" \
- -e "s/^DNS2=.*/DNS2=$DNS2/" \
- -e "s/^USEPEERDNS=.*/USEPEERDNS=$USEPEERDNS/" \
- < $CONFIG-bak > $CONFIG
-
-if [ $? != 0 ] ; then
- $ECHO "** Error modifying $CONFIG"
- $ECHO "** Quitting"
- exit 1
-fi
-
-if [ "$DNS1" != "" ] ; then
- if [ "$DNS1" != "server" ] ; then
- $ECHO "Adjusting /etc/resolv.conf"
- if [ -r /etc/resolv.conf ] ; then
- grep -s "MADE-BY-RP-PPPOE" /etc/resolv.conf > /dev/null 2>&1
- if [ "$?" != 0 ] ; then
- $ECHO " (But first backing it up to /etc/resolv.conf-bak)"
- copy /etc/resolv.conf /etc/resolv.conf-bak
- fi
- fi
- $ECHO "# MADE-BY-RP-PPPOE" > /etc/resolv.conf
- $ECHO "nameserver $DNS1" >> /etc/resolv.conf
- if [ "$DNS2" != "" ] ; then
- $ECHO "nameserver $DNS2" >> /etc/resolv.conf
- fi
- fi
-fi
-
-$ECHO "Adjusting /etc/ppp/pap-secrets and /etc/ppp/chap-secrets"
-if [ -r /etc/ppp/pap-secrets ] ; then
- $ECHO " (But first backing it up to /etc/ppp/pap-secrets-bak)"
- copy /etc/ppp/pap-secrets /etc/ppp/pap-secrets-bak
-else
- cp /dev/null /etc/ppp/pap-secrets-bak
-fi
-if [ -r /etc/ppp/chap-secrets ] ; then
- $ECHO " (But first backing it up to /etc/ppp/chap-secrets-bak)"
- copy /etc/ppp/chap-secrets /etc/ppp/chap-secrets-bak
-else
- cp /dev/null /etc/ppp/chap-secrets-bak
-fi
-
-egrep -v "^$U|^\"$U\"" /etc/ppp/pap-secrets-bak > /etc/ppp/pap-secrets
-$ECHO "\"$U\" * \"$PWD1\"" >> /etc/ppp/pap-secrets
-egrep -v "^$U|^\"$U\"" /etc/ppp/chap-secrets-bak > /etc/ppp/chap-secrets
-$ECHO "\"$U\" * \"$PWD1\"" >> /etc/ppp/chap-secrets
-
-$ECHO ""
-$ECHO ""
-$ECHO ""
-$ECHO "Congratulations, it should be all set up!"
-$ECHO ""
-$ECHO "Type 'adsl-start' to bring up your ADSL link and 'adsl-stop' to bring"
-$ECHO "it down. Type 'adsl-status' to see the link status."
-exit 0
diff --git a/mdk-stage1/rp-pppoe/scripts/adsl-start.in b/mdk-stage1/rp-pppoe/scripts/adsl-start.in
deleted file mode 100755
index 33251a851..000000000
--- a/mdk-stage1/rp-pppoe/scripts/adsl-start.in
+++ /dev/null
@@ -1,186 +0,0 @@
-#!/bin/sh
-# @configure_input@
-#***********************************************************************
-#
-# adsl-start
-#
-# Shell script to bring up an ADSL connection
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc.
-#
-# $Id$
-#
-# This file may be distributed under the terms of the GNU General
-# Public License.
-#
-# Usage: adsl-start [config_file]
-# adsl-start interface user [config_file]
-# Second form overrides USER and ETH from config file.
-# If config_file is omitted, defaults to /etc/ppp/pppoe.conf
-#
-#***********************************************************************
-
-# From AUTOCONF
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-
-# Paths to programs
-CONNECT=@sbindir@/adsl-connect
-ECHO=@ECHO@
-IFCONFIG=/sbin/ifconfig
-
-# Defaults
-CONFIG=/etc/ppp/pppoe.conf
-USER=""
-ETH=""
-ME=`basename $0`
-# Must be root
-if [ "`@ID@ -u`" != 0 ] ; then
- $ECHO "$ME: You must be root to run this script" >& 2
- exit 1
-fi
-
-# Debugging
-if [ "$DEBUG" = "1" ] ; then
- $ECHO "*** Running in debug mode... please be patient..."
- DEBUG=/tmp/pppoe-debug-$$
- export DEBUG
- mkdir $DEBUG
- if [ "$?" != 0 ] ; then
- $ECHO "Could not create directory $DEBUG... exiting"
- exit 1
- fi
- DEBUG=$DEBUG/pppoe-debug.txt
-
- # Initial debug output
- $ECHO "---------------------------------------------" > $DEBUG
- $ECHO "* The following section contains information about your system" >> $DEBUG
- date >> $DEBUG
- $ECHO "Output of uname -a" >> $DEBUG
- uname -a >> $DEBUG
- $ECHO "---------------------------------------------" >> $DEBUG
- $ECHO "* The following section contains information about your network" >> $DEBUG
- $ECHO "* interfaces. The one you chose for PPPoE should contain the words:" >> $DEBUG
- $ECHO "* 'UP' and 'RUNNING'. If it does not, you probably have an Ethernet" >> $DEBUG
- $ECHO "* driver problem." >> $DEBUG
- $ECHO "Output of ifconfig -a" >> $DEBUG
- $IFCONFIG -a >> $DEBUG
- $ECHO "---------------------------------------------" >> $DEBUG
- if [ "`uname -s`" = "Linux" ] ; then
- $ECHO "* The following section contains information about kernel modules" >> $DEBUG
- $ECHO "* If the module for your Ethernet card is 'tulip', you might" >> $DEBUG
- $ECHO "* want to look for an updated version at http://www.scyld.com" >> $DEBUG
- $ECHO "Output of lsmod" >> $DEBUG
- lsmod >> $DEBUG
- $ECHO "---------------------------------------------" >> $DEBUG
- fi
- $ECHO "* The following section lists your routing table." >> $DEBUG
- $ECHO "* If you have an entry which starts with '0.0.0.0', you probably" >> $DEBUG
- $ECHO "* have defined a default route and gateway, and pppd will" >> $DEBUG
- $ECHO "* not create a default route using your ISP. Try getting" >> $DEBUG
- $ECHO "* rid of this route." >> $DEBUG
- $ECHO "Output of netstat -n -r" >> $DEBUG
- netstat -n -r >> $DEBUG
- $ECHO "---------------------------------------------" >> $DEBUG
- $ECHO "Contents of /etc/resolv.conf" >> $DEBUG
- $ECHO "* The following section lists DNS setup." >> $DEBUG
- $ECHO "* If you can browse by IP address, but not name, suspect" >> $DEBUG
- $ECHO "* a DNS problem." >> $DEBUG
- cat /etc/resolv.conf >> $DEBUG
- $ECHO "---------------------------------------------" >> $DEBUG
- $ECHO "* The following section lists /etc/ppp/options." >> $DEBUG
- $ECHO "* You should have NOTHING in that file." >> $DEBUG
- $ECHO "Contents of /etc/ppp/options" >> $DEBUG
- cat /etc/ppp/options >> $DEBUG 2>/dev/null
- $ECHO "---------------------------------------------" >> $DEBUG
-else
- DEBUG=""
-fi
-
-# Sort out command-line arguments
-case "$#" in
- 1)
- CONFIG="$1"
- ;;
- 3)
- CONFIG="$3"
- ;;
-esac
-
-if [ ! -f "$CONFIG" -o ! -r "$CONFIG" ] ; then
- $ECHO "$ME: Cannot read configuration file '$CONFIG'" >& 2
- exit 1
-fi
-
-. $CONFIG
-
-# Check for command-line overriding of ETH and USER
-case "$#" in
- 2|3)
- ETH="$1"
- USER="$2"
- ;;
-esac
-
-# Check for pidfile
-if [ -r "$PIDFILE" ] ; then
- PID=`cat "$PIDFILE"`
- # Check if still running
- kill -0 $PID > /dev/null 2>&1
- if [ $? = 0 ] ; then
- $ECHO "$ME: There already seems to be an ADSL connection up (PID $PID)" >& 2
- exit 1
- fi
- # Delete bogus PIDFILE
- rm -f "$PIDFILE" "$PIDFILE.pppd" "$PIDFILE.pppoe" "$PIDFILE.start"
-fi
-
-echo $$ > $PIDFILE.start
-
-# Start the connection in the background unless we're debugging
-if [ "$DEBUG" != "" ] ; then
- $CONNECT "$@"
- exit 0
-fi
-
-$CONNECT "$@" > /dev/null 2>&1 &
-CONNECT_PID=$!
-
-if [ "$CONNECT_TIMEOUT" = "" -o "$CONNECT_TIMEOUT" = 0 ] ; then
- exit 0
-fi
-
-# Don't monitor connection if dial-on-demand
-if [ "$DEMAND" != "" -a "$DEMAND" != "no" ] ; then
- exit 0
-fi
-
-# Monitor connection
-TIME=0
-while [ true ] ; do
- @sbindir@/adsl-status $CONFIG > /dev/null 2>&1
-
- # Looks like the interface came up
- if [ $? = 0 ] ; then
- # Print newline if standard input is a TTY
- tty -s && $ECHO " Connected!"
- exit 0
- fi
-
- if test -n "$FORCEPING" ; then
- $ECHO -n "$FORCEPING"
- else
- tty -s && $ECHO -n "$PING"
- fi
- sleep $CONNECT_POLL
- TIME=`expr $TIME + $CONNECT_POLL`
- if [ $TIME -gt $CONNECT_TIMEOUT ] ; then
- break
- fi
-done
-
-$ECHO "TIMED OUT" >& 2
-# Timed out! Kill the adsl-connect process and quit
-kill $CONNECT_PID > /dev/null 2>&1
-exit 1
-
diff --git a/mdk-stage1/rp-pppoe/scripts/adsl-status b/mdk-stage1/rp-pppoe/scripts/adsl-status
deleted file mode 100755
index 18b100ab2..000000000
--- a/mdk-stage1/rp-pppoe/scripts/adsl-status
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-#***********************************************************************
-#
-# adsl-status
-#
-# Shell script to report on status of ADSL connection
-#
-# Copyright (C) 2000-2001 Roaring Penguin Software Inc.
-#
-# $Id$
-#
-# This file may be distributed under the terms of the GNU General
-# Public License.
-#
-# Usage: adsl-status [config_file]
-# If config_file is omitted, defaults to /etc/ppp/pppoe.conf
-#
-#***********************************************************************
-
-# Defaults
-CONFIG=/etc/ppp/pppoe.conf
-
-case "$#" in
- 1)
- CONFIG="$1"
- ;;
-esac
-
-if [ ! -f "$CONFIG" -o ! -r "$CONFIG" ] ; then
- echo "$0: Cannot read configuration file '$CONFIG'" >& 2
- exit 1
-fi
-
-. $CONFIG
-
-PPPOE_PIDFILE="$PIDFILE.pppoe"
-PPPD_PIDFILE="$PIDFILE.pppd"
-
-if [ "$DEMAND" != "no" ] ; then
- echo "Note: You have enabled demand-connection; adsl-status may be inaccurate."
-fi
-
-# If no PPPOE_PIDFILE, connection is down, unless we're using the Linux plugin
-if [ "$LINUX_PLUGIN" = "" ] ; then
- if [ ! -r "$PPPOE_PIDFILE" ] ; then
- echo "adsl-status: Link is down (can't read pppoe PID file $PPPOE_PIDFILE)"
- exit 1
- fi
-fi
-
-# If no PPPD_PIDFILE, something fishy!
-if [ ! -r "$PPPD_PIDFILE" ] ; then
- echo "adsl-status: Link is down (can't read pppd PID file $PPPD_PIDFILE)"
- exit 1
-fi
-
-PPPD_PID=`cat "$PPPD_PIDFILE"`
-
-# Sigh. Some versions of pppd put PID files in /var/run; others put them
-# in /etc/ppp. Since it's too messy to figure out what pppd does, we
-# try both locations.
-for i in /etc/ppp/ppp*.pid /var/run/ppp*.pid ; do
- if [ -r $i ] ; then
- PID=`cat $i`
- if [ "$PID" = "$PPPD_PID" ] ; then
- IF=`basename $i .pid`
- netstat -rn | grep " ${IF}\$" > /dev/null
- # /sbin/ifconfig $IF | grep "UP.*POINTOPOINT" > /dev/null
- if [ "$?" != "0" ] ; then
- echo "adsl-status: Link is attached to $IF, but $IF is down"
- exit 1
- fi
- echo "adsl-status: Link is up and running on interface $IF"
- /sbin/ifconfig $IF
- exit 0
- fi
- fi
-done
-
-echo "adsl-status: Link is down -- could not find interface corresponding to"
-echo "pppd pid $PPPD_PID"
-exit 1 \ No newline at end of file
diff --git a/mdk-stage1/rp-pppoe/scripts/adsl-stop.in b/mdk-stage1/rp-pppoe/scripts/adsl-stop.in
deleted file mode 100755
index af0867573..000000000
--- a/mdk-stage1/rp-pppoe/scripts/adsl-stop.in
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/bin/sh
-# @configure_input@
-#***********************************************************************
-#
-# adsl-stop
-#
-# Shell script to bring down an ADSL connection
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc.
-#
-# $Id$
-#
-# This file may be distributed under the terms of the GNU General
-# Public License.
-#
-# Usage: adsl-stop [config_file]
-# If config_file is omitted, defaults to /etc/ppp/pppoe.conf
-#
-#***********************************************************************
-
-ME="`basename $0`"
-LOGGER="/usr/bin/logger -t $ME"
-CONFIG="$1"
-if [ "$CONFIG" = "" ] ; then
- CONFIG=/etc/ppp/pppoe.conf
-fi
-
-if [ ! -f "$CONFIG" -o ! -r "$CONFIG" ] ; then
- echo "$ME: Cannot read configuration file '$CONFIG'" >& 2
- exit 1
-fi
-
-. $CONFIG
-
-PPPOE_PIDFILE="$PIDFILE.pppoe"
-PPPD_PIDFILE="$PIDFILE.pppd"
-STARTPID="$PIDFILE.start"
-
-# Backward config file compatibility
-if test "$DEMAND" = "" ; then
- DEMAND=no
-fi
-
-# Ignore SIGTERM
-trap "" 15
-
-# Check for pidfile
-if [ -r "$PIDFILE" ] ; then
- PID=`cat $PIDFILE`
-
- # Check if still running
- kill -0 $PID > /dev/null 2>&1
- if [ $? != 0 ] ; then
- echo "$ME: The adsl-connect script (PID $PID) appears to have died" >& 2
- fi
-
- # Kill pppd, which should in turn kill pppoe
- if [ -r "$PPPD_PIDFILE" ] ; then
- PPPD_PID=`cat "$PPPD_PIDFILE"`
- $LOGGER -p daemon.notice "Killing pppd"
- echo "Killing pppd ($PPPD_PID)"
- kill $PPPD_PID > /dev/null 2>&1 || exit 1
- fi
-
- # Kill adsl-start
- PIDS=`cat $STARTPID`
- kill -0 $PIDS > /dev/null 2>&1
- if [ $? = 0 ] ; then
- $LOGGER -p daemon.notice "Killing adsl-connect"
- kill $PIDS > /dev/null 2>&1
- fi
-
- # Kill adsl-connect
- $LOGGER -p daemon.notice "Killing adsl-connect"
- echo "Killing adsl-connect ($PID)"
- kill $PID > /dev/null 2>&1
-
- rm -f "$PIDFILE" "$PPPD_PIDFILE" "$PPPOE_PIDFILE" "$STARTPID"
-else
- echo "$ME: No ADSL connection appears to be running" >&2
- exit 1
-fi
-
-exit 0
diff --git a/mdk-stage1/rp-pppoe/src/Makefile b/mdk-stage1/rp-pppoe/src/Makefile
deleted file mode 100644
index 321628b41..000000000
--- a/mdk-stage1/rp-pppoe/src/Makefile
+++ /dev/null
@@ -1,45 +0,0 @@
- #******************************************************************************
- #
- # Guillaume Cottenceau (gc@mandriva.com)
- #
- # Copyright 2000 Mandriva
- #
- # This software may be freely redistributed under the terms of the GNU
- # public license.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- #*****************************************************************************
-
-top_dir = ../..
-
-include $(top_dir)/Makefile.common
-
-
-TARGETS = pppoe
-
-BINTARGET = ../../pppoe
-
-
-all: $(TARGETS)
-
-clean:
- rm -f *.o *.a $(BINTARGET) pppoe
-
-FLAGS = -Wall -Werror -Os -fno-strict-aliasing -fomit-frame-pointer '-DPPPOE_PATH="/sbin/pppoe"' '-DPPPD_PATH="/sbin/pppd"' '-DVERSION="3.0-stg1"'
-
-ifeq (GLIBC, $(L))
-EXTRA_LDFLAGS = -static
-endif
-
-OBJS = pppoe.o if.o debug.o common.o ppp.o discovery.o
-
-pppoe: $(OBJS)
- $(DIET) gcc -o $@ $^ $(EXTRA_LDFLAGS)
- $(STRIPCMD) $@
- cp -f $@ $(BINTARGET)
-
-$(OBJS): %.o: %.c
- $(DIET) gcc $(FLAGS) $(INCLUDES) $(INCS) -c $< -o $@
diff --git a/mdk-stage1/rp-pppoe/src/Makefile.in b/mdk-stage1/rp-pppoe/src/Makefile.in
deleted file mode 100644
index 8eee012cb..000000000
--- a/mdk-stage1/rp-pppoe/src/Makefile.in
+++ /dev/null
@@ -1,257 +0,0 @@
-# @configure_input@
-#***********************************************************************
-#
-# Makefile
-#
-# Makefile for Roaring Penguin's Linux user-space PPPoE client.
-#
-# Copyright (C) 2000 Roaring Penguin Software Inc.
-#
-# This program may be distributed according to the terms of the GNU
-# General Public License, version 2 or (at your option) any later version.
-#
-# $Id$
-#***********************************************************************
-
-# Version is set ONLY IN THE MAKEFILE! Don't delete this!
-VERSION=3.0
-
-DEFINES=
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-mandir=@mandir@
-docdir=@prefix@/doc/rp-pppoe-$(VERSION)
-install=@INSTALL@
-install_dir=@INSTALL@ -d
-sbindir=@sbindir@
-
-# Plugin for pppd on Linux
-LINUX_KERNELMODE_PLUGIN=@LINUX_KERNELMODE_PLUGIN@
-PPPD_INCDIR=@PPPD_INCDIR@
-
-# PPPoE relay -- currently only supported on Linux
-PPPOE_RELAY=@PPPOE_RELAY@
-
-# Program paths
-PPPOE_PATH=$(sbindir)/pppoe
-PPPD_PATH=@PPPD@
-
-# Kernel-mode plugin gets installed here.
-PLUGIN_DIR=/etc/ppp/plugins
-PLUGIN_PATH=$(PLUGIN_DIR)/rp-pppoe.so
-
-# Configuration file paths
-PPPOESERVER_PPPD_OPTIONS=/etc/ppp/pppoe-server-options
-
-PATHS='-DPPPOE_PATH="$(PPPOE_PATH)"' '-DPPPD_PATH="$(PPPD_PATH)"' \
- '-DPLUGIN_PATH="$(PLUGIN_PATH)"' \
- '-DPPPOE_SERVER_OPTIONS="$(PPPOESERVER_PPPD_OPTIONS)"'
-
-CFLAGS= @CFLAGS@ $(DEFINES) $(PATHS)
-TARGETS=@TARGETS@
-
-all: $(TARGETS)
- @echo ""
- @echo "Type 'make install' as root to install the software."
-
-pppoe-sniff: pppoe-sniff.o if.o common.o debug.o
- @CC@ -o pppoe-sniff pppoe-sniff.o if.o common.o debug.o $(LIBS)
-
-pppoe-server: pppoe-server.o if.o debug.o common.o md5.o
- @CC@ -o pppoe-server pppoe-server.o if.o debug.o common.o md5.o $(LIBS)
-
-pppoe: pppoe.o if.o debug.o common.o ppp.o discovery.o
- @CC@ -o pppoe pppoe.o if.o debug.o common.o ppp.o discovery.o $(LIBS)
-
-pppoe-relay: relay.o if.o debug.o common.o
- @CC@ -o pppoe-relay relay.o if.o debug.o common.o $(LIBS)
-
-pppoe.o: pppoe.c pppoe.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o pppoe.o pppoe.c
-
-discovery.o: discovery.c pppoe.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o discovery.o discovery.c
-
-ppp.o: ppp.c pppoe.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o ppp.o ppp.c
-
-md5.o: md5.c md5.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o md5.o md5.c
-
-pppoe-server.o: pppoe-server.c pppoe.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o pppoe-server.o pppoe-server.c
-
-pppoe-sniff.o: pppoe-sniff.c pppoe.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o pppoe-sniff.o pppoe-sniff.c
-
-if.o: if.c pppoe.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o if.o if.c
-
-common.o: common.c pppoe.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o common.o common.c
-
-debug.o: debug.c pppoe.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o debug.o debug.c
-
-relay.o: relay.c relay.h pppoe.h
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o relay.o relay.c
-
-# Linux-specific plugin
-rp-pppoe.so: plugin/libplugin.a plugin/plugin.o
- @CC@ -o rp-pppoe.so -shared plugin/plugin.o plugin/libplugin.a
-
-plugin/plugin.o: plugin.c
- @CC@ '-DVERSION="$(VERSION)"' -I$(PPPD_INCDIR) -c -o plugin/plugin.o -fPIC plugin.c
-
-plugin/libplugin.a: plugin/discovery.o plugin/if.o plugin/common.o plugin/debug.o
- ar -rc $@ $^
-
-plugin/discovery.o: discovery.c
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o plugin/discovery.o -fPIC discovery.c
-
-plugin/if.o: if.c
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o plugin/if.o -fPIC if.c
-
-plugin/debug.o: debug.c
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o plugin/debug.o -fPIC debug.c
-
-plugin/common.o: common.c
- @CC@ $(CFLAGS) '-DVERSION="$(VERSION)"' -c -o plugin/common.o -fPIC common.c
-
-install: all
- -mkdir -p $(RPM_INSTALL_ROOT)$(sbindir)
- $(install) -m 755 -s pppoe $(RPM_INSTALL_ROOT)$(sbindir)
- $(install) -m 755 -s pppoe-server $(RPM_INSTALL_ROOT)$(sbindir)
- if test -x pppoe-relay ; then $(install) -m 755 -s pppoe-relay $(RPM_INSTALL_ROOT)$(sbindir); fi
- $(install) -m 755 -s pppoe-sniff $(RPM_INSTALL_ROOT)$(sbindir)
- $(install) -m 755 ../scripts/adsl-connect $(RPM_INSTALL_ROOT)$(sbindir)
- $(install) -m 755 ../scripts/adsl-start $(RPM_INSTALL_ROOT)$(sbindir)
- $(install) -m 755 ../scripts/adsl-status $(RPM_INSTALL_ROOT)$(sbindir)
- $(install) -m 755 ../scripts/adsl-stop $(RPM_INSTALL_ROOT)$(sbindir)
- $(install) -m 755 ../scripts/adsl-setup $(RPM_INSTALL_ROOT)$(sbindir)
- -mkdir -p $(RPM_INSTALL_ROOT)$(docdir)
- $(install) -m 644 ../doc/CHANGES $(RPM_INSTALL_ROOT)$(docdir)
- $(install) -m 644 ../doc/KERNEL-MODE-PPPOE $(RPM_INSTALL_ROOT)$(docdir)
- $(install) -m 644 ../doc/HOW-TO-CONNECT $(RPM_INSTALL_ROOT)$(docdir)
- $(install) -m 644 ../doc/LICENSE $(RPM_INSTALL_ROOT)$(docdir)
- $(install) -m 644 ../README $(RPM_INSTALL_ROOT)$(docdir)
- $(install) -m 644 ../configs/pap-secrets $(RPM_INSTALL_ROOT)$(docdir)
- -mkdir -p $(RPM_INSTALL_ROOT)$(mandir)/man8
- for i in $(TARGETS) ; do \
- if test -f ../man/$$i.8 ; then \
- $(install) -m 644 ../man/$$i.8 $(RPM_INSTALL_ROOT)$(mandir)/man8 || exit 1; \
- fi; \
- done
- $(install) -m 644 ../man/adsl-start.8 $(RPM_INSTALL_ROOT)$(mandir)/man8
- $(install) -m 644 ../man/adsl-stop.8 $(RPM_INSTALL_ROOT)$(mandir)/man8
- $(install) -m 644 ../man/adsl-status.8 $(RPM_INSTALL_ROOT)$(mandir)/man8
- $(install) -m 644 ../man/adsl-connect.8 $(RPM_INSTALL_ROOT)$(mandir)/man8
- $(install) -m 644 ../man/adsl-setup.8 $(RPM_INSTALL_ROOT)$(mandir)/man8
- -mkdir -p $(RPM_INSTALL_ROOT)$(mandir)/man5
- $(install) -m 644 ../man/pppoe.conf.5 $(RPM_INSTALL_ROOT)$(mandir)/man5
- -mkdir -p $(RPM_INSTALL_ROOT)/etc/ppp
- -mkdir -p $(RPM_INSTALL_ROOT)$(PLUGIN_DIR)
- -echo "# Directory created by rp-pppoe for kernel-mode plugin" > $(RPM_INSTALL_ROOT)$(PLUGIN_DIR)/README
- @if test -r rp-pppoe.so; then $(install) -m 755 rp-pppoe.so $(RPM_INSTALL_ROOT)$(PLUGIN_DIR); fi
- @for i in pppoe.conf firewall-standalone firewall-masq ; do \
- if [ ! -f $(RPM_INSTALL_ROOT)/etc/ppp/$$i ] ; then \
- $(install) -m 644 ../configs/$$i $(RPM_INSTALL_ROOT)/etc/ppp ; \
- else \
- echo "NOT overwriting existing $(RPM_INSTALL_ROOT)/etc/ppp/$$i" ;\
- $(install) -m 644 ../configs/$$i $(RPM_INSTALL_ROOT)/etc/ppp/$$i-$(VERSION) ;\
- fi ;\
- done
- @if [ ! -f $(RPM_INSTALL_ROOT)$(PPPOESERVER_PPPD_OPTIONS) ] ; then \
- $(install) -m 644 ../configs/pppoe-server-options $(RPM_INSTALL_ROOT)$(PPPOESERVER_PPPD_OPTIONS) ; \
- else \
- echo "NOT overwriting existing $(RPM_INSTALL_ROOT)$(PPPOESERVER_PPPD_OPTIONS)"; \
- $(install) -m 644 ../configs/pppoe-server-options $(RPM_INSTALL_ROOT)$(PPPOESERVER_PPPD_OPTIONS)-example ; \
- fi
- @if [ -f /etc/redhat-release ] ; then \
- echo "Looks like a Red Hat system; installing $(RPM_INSTALL_ROOT)/etc/rc.d/init.d/adsl" ; \
- mkdir -p $(RPM_INSTALL_ROOT)/etc/rc.d/init.d ;\
- $(install) -m 755 ../scripts/adsl-init $(RPM_INSTALL_ROOT)/etc/rc.d/init.d/adsl ; \
- fi
- @if [ -f /etc/turbolinux-release ] ; then \
- echo "Looks like a TurboLinux system; installing $(RPM_INSTALL_ROOT)/etc/rc.d/init.d/adsl" ; \
- mkdir -p $(RPM_INSTALL_ROOT)/etc/rc.d/init.d ;\
- $(install) -m 755 adsl-init-turbolinux $(RPM_INSTALL_ROOT)/etc/rc.d/init.d/adsl ; \
- fi
- @if [ -f /etc/SuSE-release ] ; then \
- echo "Looks like a SuSE Linux system; installing $(RPM_INSTALL_ROOT)/etc/rc.d/init.d/adsl" ; \
- mkdir -p $(RPM_INSTALL_ROOT)/etc/rc.d/init.d ;\
- $(install) -m 755 ../scripts/adsl-init-suse $(RPM_INSTALL_ROOT)/etc/rc.d/init.d/adsl ; \
- fi
- @echo ""
- @echo "Type 'adsl-setup' to configure the software."
-
-distro:
- cd ..; \
- rm -rf rp-pppoe-$(VERSION) ; \
- mkdir rp-pppoe-$(VERSION) || exit 1; \
- for i in README go go-gui rp-pppoe.spec rp-pppoe-gui.spec; do \
- cp $$i rp-pppoe-$(VERSION) || exit 1; \
- done ; \
- mkdir rp-pppoe-$(VERSION)/gui || exit 1; \
- for i in Makefile.in tkpppoe.in wrapper.c tkpppoe.1 pppoe-wrapper.1 ; do \
- cp gui/$$i rp-pppoe-$(VERSION)/gui || exit 1; \
- done; \
- mkdir rp-pppoe-$(VERSION)/gui/html || exit 1; \
- for i in mainwin-busy.png mainwin-nonroot.png mainwin.png props-advanced.png props-basic.png props-nic.png props-options.png tkpppoe.html ; do \
- cp gui/html/$$i rp-pppoe-$(VERSION)/gui/html || exit 1; \
- done; \
- mkdir rp-pppoe-$(VERSION)/configs || exit 1; \
- for i in firewall-masq firewall-standalone pap-secrets pppoe-server-options pppoe.conf ; do \
- cp configs/$$i rp-pppoe-$(VERSION)/configs || exit 1; \
- done ; \
- mkdir rp-pppoe-$(VERSION)/doc || exit 1; \
- for i in CHANGES KERNEL-MODE-PPPOE HOW-TO-CONNECT LICENSE PROBLEMS ; do \
- cp doc/$$i rp-pppoe-$(VERSION)/doc || exit 1; \
- done; \
- mkdir rp-pppoe-$(VERSION)/man || exit 1; \
- for i in adsl-connect.8 adsl-setup.8 adsl-start.8 adsl-status.8 adsl-stop.8 pppoe-server.8 pppoe-sniff.8 pppoe.8 pppoe-relay.8 pppoe.conf.5 ; do \
- cp man/$$i rp-pppoe-$(VERSION)/man || exit 1; \
- done; \
- mkdir rp-pppoe-$(VERSION)/scripts || exit 1; \
- for i in adsl-connect.in adsl-init-suse.in adsl-init-turbolinux.in adsl-init.in adsl-setup.in adsl-start.in adsl-stop.in adsl-status ; do \
- cp scripts/$$i rp-pppoe-$(VERSION)/scripts || exit 1; \
- done; \
- mkdir rp-pppoe-$(VERSION)/src || exit 1; \
- for i in Makefile.in install-sh common.c config.h.in configure configure.in debug.c discovery.c if.c md5.c md5.h ppp.c pppoe-server.c pppoe-sniff.c pppoe.c pppoe.h plugin.c relay.c relay.h ; do \
- cp src/$$i rp-pppoe-$(VERSION)/src || exit 1; \
- done; \
- mkdir rp-pppoe-$(VERSION)/src/plugin || exit 1; \
- tar cvf rp-pppoe-$(VERSION).tar rp-pppoe-$(VERSION)/* ; \
- gzip -f -v -9 rp-pppoe-$(VERSION).tar ; \
-
-rpms: distro
- cp ../rp-pppoe-$(VERSION).tar.gz /usr/src/redhat/SOURCES
- cd ..; \
- rpm -ba rp-pppoe.spec; \
- rpm -ba rp-pppoe-gui.spec
-
-clean:
- rm -f *.o pppoe pppoe-sniff pppoe-server core rp-pppoe.so plugin/*.o plugin/libplugin.a *~
-
-distclean: clean
- rm -f Makefile config.h config.cache config.log config.status
- rm -f ../scripts/adsl-connect ../scripts/adsl-start ../scripts/adsl-stop ../scripts/adsl-init ../scripts/adsl-setup ../scripts/adsl-init-suse ../scripts/adsl-init-turbolinux
-
-update-version:
- sed -e 's/^Version: .*$$/Version: $(VERSION)/' ../rp-pppoe.spec > ../rp-pppoe.spec.new && mv ../rp-pppoe.spec.new ../rp-pppoe.spec
- sed -e 's+^Source: .*$$+Source: http://www.roaringpenguin.com/pppoe/rp-pppoe-$(VERSION).tar.gz+' ../rp-pppoe.spec > ../rp-pppoe.spec.new && mv ../rp-pppoe.spec.new ../rp-pppoe.spec
- sed -e 's/^Version: .*$$/Version: $(VERSION)/' ../rp-pppoe-gui.spec > ../rp-pppoe-gui.spec.new && mv ../rp-pppoe-gui.spec.new ../rp-pppoe-gui.spec
- sed -e 's+^Source: .*$$+Source: http://www.roaringpenguin.com/pppoe/rp-pppoe-$(VERSION).tar.gz+' ../rp-pppoe-gui.spec > ../rp-pppoe-gui.spec.new && mv ../rp-pppoe-gui.spec.new ../rp-pppoe-gui.spec
- sed -e 's+^Requires: rp-pppoe >=.*$$+Requires: rp-pppoe >= $(VERSION)+' ../rp-pppoe-gui.spec > ../rp-pppoe-gui.spec.new && mv ../rp-pppoe-gui.spec.new ../rp-pppoe-gui.spec
-
-# Convenience target for David! Don't try to use this one.
-km:
- ./configure --enable-plugin=/home/dfs/Archive/PPP/ppp-2.4.0.pppoe4-patched-dfs
-
-.PHONY: update-version
-
-.PHONY: clean
-
-.PHONY: distclean
-
-.PHONY: rpms
diff --git a/mdk-stage1/rp-pppoe/src/common.c b/mdk-stage1/rp-pppoe/src/common.c
deleted file mode 100644
index b6e43996b..000000000
--- a/mdk-stage1/rp-pppoe/src/common.c
+++ /dev/null
@@ -1,485 +0,0 @@
-/***********************************************************************
-*
-* common.c
-*
-* Implementation of user-space PPPoE redirector for Linux.
-*
-* Common functions used by PPPoE client and server
-*
-* Copyright (C) 2000 by Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#include "pppoe.h"
-
-#ifdef HAVE_SYSLOG_H
-#include <syslog.h>
-#endif
-
-#include <string.h>
-#include <errno.h>
-#include <stdlib.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-/**********************************************************************
-*%FUNCTION: parsePacket
-*%ARGUMENTS:
-* packet -- the PPPoE discovery packet to parse
-* func -- function called for each tag in the packet
-* extra -- an opaque data pointer supplied to parsing function
-*%RETURNS:
-* 0 if everything went well; -1 if there was an error
-*%DESCRIPTION:
-* Parses a PPPoE discovery packet, calling "func" for each tag in the packet.
-* "func" is passed the additional argument "extra".
-***********************************************************************/
-int
-parsePacket(PPPoEPacket *packet, ParseFunc *func, void *extra)
-{
- UINT16_t len = ntohs(packet->length);
- unsigned char *curTag;
- UINT16_t tagType, tagLen;
-
- if (packet->ver != 1) {
- syslog(LOG_ERR, "Invalid PPPoE version (%d)", (int) packet->ver);
- return -1;
- }
- if (packet->type != 1) {
- syslog(LOG_ERR, "Invalid PPPoE type (%d)", (int) packet->type);
- return -1;
- }
-
- /* Do some sanity checks on packet */
- if (len > ETH_DATA_LEN - 6) { /* 6-byte overhead for PPPoE header */
- syslog(LOG_ERR, "Invalid PPPoE packet length (%u)", len);
- return -1;
- }
-
- /* Step through the tags */
- curTag = packet->payload;
- while(curTag - packet->payload < len) {
- /* Alignment is not guaranteed, so do this by hand... */
- tagType = (((UINT16_t) curTag[0]) << 8) +
- (UINT16_t) curTag[1];
- tagLen = (((UINT16_t) curTag[2]) << 8) +
- (UINT16_t) curTag[3];
- if (tagType == TAG_END_OF_LIST) {
- return 0;
- }
- if ((curTag - packet->payload) + tagLen + TAG_HDR_SIZE > len) {
- syslog(LOG_ERR, "Invalid PPPoE tag length (%u)", tagLen);
- return -1;
- }
- func(tagType, tagLen, curTag+TAG_HDR_SIZE, extra);
- curTag = curTag + TAG_HDR_SIZE + tagLen;
- }
- return 0;
-}
-
-/**********************************************************************
-*%FUNCTION: findTag
-*%ARGUMENTS:
-* packet -- the PPPoE discovery packet to parse
-* type -- the type of the tag to look for
-* tag -- will be filled in with tag contents
-*%RETURNS:
-* A pointer to the tag if one of the specified type is found; NULL
-* otherwise.
-*%DESCRIPTION:
-* Looks for a specific tag type.
-***********************************************************************/
-unsigned char *
-findTag(PPPoEPacket *packet, UINT16_t type, PPPoETag *tag)
-{
- UINT16_t len = ntohs(packet->length);
- unsigned char *curTag;
- UINT16_t tagType, tagLen;
-
- if (packet->ver != 1) {
- syslog(LOG_ERR, "Invalid PPPoE version (%d)", (int) packet->ver);
- return NULL;
- }
- if (packet->type != 1) {
- syslog(LOG_ERR, "Invalid PPPoE type (%d)", (int) packet->type);
- return NULL;
- }
-
- /* Do some sanity checks on packet */
- if (len > ETH_DATA_LEN - 6) { /* 6-byte overhead for PPPoE header */
- syslog(LOG_ERR, "Invalid PPPoE packet length (%u)", len);
- return NULL;
- }
-
- /* Step through the tags */
- curTag = packet->payload;
- while(curTag - packet->payload < len) {
- /* Alignment is not guaranteed, so do this by hand... */
- tagType = (((UINT16_t) curTag[0]) << 8) +
- (UINT16_t) curTag[1];
- tagLen = (((UINT16_t) curTag[2]) << 8) +
- (UINT16_t) curTag[3];
- if (tagType == TAG_END_OF_LIST) {
- return NULL;
- }
- if ((curTag - packet->payload) + tagLen + TAG_HDR_SIZE > len) {
- syslog(LOG_ERR, "Invalid PPPoE tag length (%u)", tagLen);
- return NULL;
- }
- if (tagType == type) {
- memcpy(tag, curTag, tagLen + TAG_HDR_SIZE);
- return curTag;
- }
- curTag = curTag + TAG_HDR_SIZE + tagLen;
- }
- return NULL;
-}
-
-/**********************************************************************
-*%FUNCTION: printErr
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message to stderr and syslog.
-***********************************************************************/
-void
-printErr(char const *str)
-{
- fprintf(stderr, "pppoe: %s\n", str);
- syslog(LOG_ERR, "%s", str);
-}
-
-
-/**********************************************************************
-*%FUNCTION: strDup
-*%ARGUMENTS:
-* str -- string to copy
-*%RETURNS:
-* A malloc'd copy of str. Exits if malloc fails.
-***********************************************************************/
-char *
-strDup(char const *str)
-{
- char *copy = malloc(strlen(str)+1);
- if (!copy) {
- rp_fatal("strdup failed");
- }
- strcpy(copy, str);
- return copy;
-}
-
-/**********************************************************************
-*%FUNCTION: computeTCPChecksum
-*%ARGUMENTS:
-* ipHdr -- pointer to IP header
-* tcpHdr -- pointer to TCP header
-*%RETURNS:
-* The computed TCP checksum
-***********************************************************************/
-UINT16_t
-computeTCPChecksum(unsigned char *ipHdr, unsigned char *tcpHdr)
-{
- UINT32_t sum = 0;
- UINT16_t count = ipHdr[2] * 256 + ipHdr[3];
- unsigned char *addr = tcpHdr;
- unsigned char pseudoHeader[12];
-
- /* Count number of bytes in TCP header and data */
- count -= (ipHdr[0] & 0x0F) * 4;
-
- memcpy(pseudoHeader, ipHdr+12, 8);
- pseudoHeader[8] = 0;
- pseudoHeader[9] = ipHdr[9];
- pseudoHeader[10] = (count >> 8) & 0xFF;
- pseudoHeader[11] = (count & 0xFF);
-
- /* Checksum the pseudo-header */
- sum += * (UINT16_t *) pseudoHeader;
- sum += * ((UINT16_t *) (pseudoHeader+2));
- sum += * ((UINT16_t *) (pseudoHeader+4));
- sum += * ((UINT16_t *) (pseudoHeader+6));
- sum += * ((UINT16_t *) (pseudoHeader+8));
- sum += * ((UINT16_t *) (pseudoHeader+10));
-
- /* Checksum the TCP header and data */
- while (count > 1) {
- sum += * (UINT16_t *) addr;
- addr += 2;
- count -= 2;
- }
- if (count > 0) {
- sum += *addr;
- }
-
- while(sum >> 16) {
- sum = (sum & 0xffff) + (sum >> 16);
- }
- return (UINT16_t) (~sum & 0xFFFF);
-}
-
-/**********************************************************************
-*%FUNCTION: clampMSS
-*%ARGUMENTS:
-* packet -- PPPoE session packet
-* dir -- either "incoming" or "outgoing"
-* clampMss -- clamp value
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Clamps MSS option if TCP SYN flag is set.
-***********************************************************************/
-void
-clampMSS(PPPoEPacket *packet, char const *dir, int clampMss)
-{
- unsigned char *tcpHdr;
- unsigned char *ipHdr;
- unsigned char *opt;
- unsigned char *endHdr;
- unsigned char *mssopt = NULL;
- UINT16_t csum;
-
- int len;
-
- /* Is it IPv4? */
- if (packet->payload[0] != 0x00 ||
- packet->payload[1] != 0x21) {
- /* Nope, ignore it */
- return;
- }
-
- ipHdr = packet->payload + 2;
-
- /* Is it too short? */
- len = (int) ntohs(packet->length);
- if (len < 42) {
- /* 20 byte IP header; 20 byte TCP header; 2 byte PPP protocol */
- return;
- }
-
- /* Verify once more that it's IPv4 */
- if ((ipHdr[0] & 0xF0) != 0x40) {
- return;
- }
-
- /* Is it a fragment that's not at the beginning of the packet? */
- if ((ipHdr[6] & 0x1F) || ipHdr[7]) {
- /* Yup, don't touch! */
- return;
- }
- /* Is it TCP? */
- if (ipHdr[9] != 0x06) {
- return;
- }
-
- /* Get start of TCP header */
- tcpHdr = ipHdr + (ipHdr[0] & 0x0F) * 4;
-
- /* Is SYN set? */
- if (!(tcpHdr[13] & 0x02)) {
- return;
- }
-
- /* Compute and verify TCP checksum -- do not touch a packet with a bad
- checksum */
- csum = computeTCPChecksum(ipHdr, tcpHdr);
- if (csum) {
- syslog(LOG_ERR, "Bad TCP checksum %x", (unsigned int) csum);
-
- /* Upper layers will drop it */
- return;
- }
-
- /* Look for existing MSS option */
- endHdr = tcpHdr + ((tcpHdr[12] & 0xF0) >> 2);
- opt = tcpHdr + 20;
- while (opt < endHdr) {
- if (!*opt) break; /* End of options */
- switch(*opt) {
- case 1:
- opt++;
- break;
-
- case 2:
- if (opt[1] != 4) {
- /* Something fishy about MSS option length. */
- syslog(LOG_ERR,
- "Bogus length for MSS option (%u) from %u.%u.%u.%u",
- (unsigned int) opt[1],
- (unsigned int) ipHdr[12],
- (unsigned int) ipHdr[13],
- (unsigned int) ipHdr[14],
- (unsigned int) ipHdr[15]);
- return;
- }
- mssopt = opt;
- break;
- default:
- if (opt[1] < 2) {
- /* Someone's trying to attack us? */
- syslog(LOG_ERR,
- "Bogus TCP option length (%u) from %u.%u.%u.%u",
- (unsigned int) opt[1],
- (unsigned int) ipHdr[12],
- (unsigned int) ipHdr[13],
- (unsigned int) ipHdr[14],
- (unsigned int) ipHdr[15]);
- return;
- }
- opt += (opt[1]);
- break;
- }
- /* Found existing MSS option? */
- if (mssopt) break;
- }
-
- /* If MSS exists and it's low enough, do nothing */
- if (mssopt) {
- unsigned mss = mssopt[2] * 256 + mssopt[3];
- if (mss <= clampMss) {
- return;
- }
-
- mssopt[2] = (((unsigned) clampMss) >> 8) & 0xFF;
- mssopt[3] = ((unsigned) clampMss) & 0xFF;
- } else {
- /* No MSS option. Don't add one; we'll have to use 536. */
- return;
- }
-
- /* Recompute TCP checksum */
- tcpHdr[16] = 0;
- tcpHdr[17] = 0;
- csum = computeTCPChecksum(ipHdr, tcpHdr);
- (* (UINT16_t *) (tcpHdr+16)) = csum;
-}
-
-/***********************************************************************
-*%FUNCTION: sendPADT
-*%ARGUMENTS:
-* conn -- PPPoE connection
-* msg -- if non-NULL, extra error message to include in PADT packet.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Sends a PADT packet
-***********************************************************************/
-void
-sendPADT(PPPoEConnection *conn, char const *msg)
-{
- PPPoEPacket packet;
- unsigned char *cursor = packet.payload;
-
- UINT16_t plen = 0;
-
- /* Do nothing if no session established yet */
- if (!conn->session) return;
-
- /* Do nothing if no discovery socket */
- if (conn->discoverySocket < 0) return;
-
- memcpy(packet.ethHdr.h_dest, conn->peerEth, ETH_ALEN);
- memcpy(packet.ethHdr.h_source, conn->myEth, ETH_ALEN);
-
- packet.ethHdr.h_proto = htons(Eth_PPPOE_Discovery);
- packet.ver = 1;
- packet.type = 1;
- packet.code = CODE_PADT;
- packet.session = conn->session;
-
- /* Reset Session to zero so there is no possibility of
- recursive calls to this function by any signal handler */
- conn->session = 0;
-
- /* If we're using Host-Uniq, copy it over */
- if (conn->useHostUniq) {
- PPPoETag hostUniq;
- pid_t pid = getpid();
- hostUniq.type = htons(TAG_HOST_UNIQ);
- hostUniq.length = htons(sizeof(pid));
- memcpy(hostUniq.payload, &pid, sizeof(pid));
- memcpy(cursor, &hostUniq, sizeof(pid) + TAG_HDR_SIZE);
- cursor += sizeof(pid) + TAG_HDR_SIZE;
- plen += sizeof(pid) + TAG_HDR_SIZE;
- }
-
- /* Copy error message */
- if (msg) {
- PPPoETag err;
- size_t elen = strlen(msg);
- err.type = htons(TAG_GENERIC_ERROR);
- err.length = htons(elen);
- strcpy((char *)err.payload, msg);
- memcpy(cursor, &err, elen + TAG_HDR_SIZE);
- cursor += elen + TAG_HDR_SIZE;
- plen += elen + TAG_HDR_SIZE;
- }
-
- /* Copy cookie and relay-ID if needed */
- if (conn->cookie.type) {
- CHECK_ROOM(cursor, packet.payload,
- ntohs(conn->cookie.length) + TAG_HDR_SIZE);
- memcpy(cursor, &conn->cookie, ntohs(conn->cookie.length) + TAG_HDR_SIZE);
- cursor += ntohs(conn->cookie.length) + TAG_HDR_SIZE;
- plen += ntohs(conn->cookie.length) + TAG_HDR_SIZE;
- }
-
- if (conn->relayId.type) {
- CHECK_ROOM(cursor, packet.payload,
- ntohs(conn->relayId.length) + TAG_HDR_SIZE);
- memcpy(cursor, &conn->relayId, ntohs(conn->relayId.length) + TAG_HDR_SIZE);
- cursor += ntohs(conn->relayId.length) + TAG_HDR_SIZE;
- plen += ntohs(conn->relayId.length) + TAG_HDR_SIZE;
- }
-
- packet.length = htons(plen);
- sendPacket(conn, conn->discoverySocket, &packet, (int) (plen + HDR_SIZE));
- if (conn->debugFile) {
- dumpPacket(conn->debugFile, &packet, "SENT");
- fprintf(conn->debugFile, "\n");
- fflush(conn->debugFile);
- }
- syslog(LOG_INFO,"Sent PADT");
-}
-
-/**********************************************************************
-*%FUNCTION: parseLogErrs
-*%ARGUMENTS:
-* type -- tag type
-* len -- tag length
-* data -- tag data
-* extra -- extra user data
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Picks error tags out of a packet and logs them.
-***********************************************************************/
-void
-parseLogErrs(UINT16_t type, UINT16_t len, unsigned char *data,
- void *extra)
-{
- switch(type) {
- case TAG_SERVICE_NAME_ERROR:
- syslog(LOG_ERR, "PADT: Service-Name-Error: %.*s", (int) len, data);
- fprintf(stderr, "PADT: Service-Name-Error: %.*s\n", (int) len, data);
- break;
- case TAG_AC_SYSTEM_ERROR:
- syslog(LOG_ERR, "PADT: System-Error: %.*s", (int) len, data);
- fprintf(stderr, "PADT: System-Error: %.*s\n", (int) len, data);
- break;
- case TAG_GENERIC_ERROR:
- syslog(LOG_ERR, "PADT: Generic-Error: %.*s", (int) len, data);
- fprintf(stderr, "PADT: Generic-Error: %.*s\n", (int) len, data);
- break;
- }
-}
-
diff --git a/mdk-stage1/rp-pppoe/src/config.h b/mdk-stage1/rp-pppoe/src/config.h
deleted file mode 100644
index e3adf4353..000000000
--- a/mdk-stage1/rp-pppoe/src/config.h
+++ /dev/null
@@ -1,135 +0,0 @@
-/* config.h. Generated automatically by configure. */
-/* config.h.in. Generated automatically from configure.in by autoheader. */
-
-/* Define to empty if the keyword does not work. */
-/* #undef const */
-
-/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
-#define HAVE_SYS_WAIT_H 1
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-/* #undef pid_t */
-
-/* Define as the return type of signal handlers (int or void). */
-#define RETSIGTYPE void
-
-/* Define if the setvbuf function takes the buffering type as its second
- argument and the buffer pointer as the third, as on System V
- before release 3. */
-/* #undef SETVBUF_REVERSED */
-
-/* Define if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Define if you can safely include both <sys/time.h> and <time.h>. */
-#define TIME_WITH_SYS_TIME 1
-
-/* Define if your <sys/time.h> declares struct tm. */
-/* #undef TM_IN_SYS_TIME */
-
-#define HAVE_STRUCT_SOCKADDR_LL 1
-
-/* The number of bytes in a unsigned int. */
-#define SIZEOF_UNSIGNED_INT 4
-
-/* The number of bytes in a unsigned long. */
-#define SIZEOF_UNSIGNED_LONG 4
-
-/* The number of bytes in a unsigned short. */
-#define SIZEOF_UNSIGNED_SHORT 2
-
-/* Define if you have the select function. */
-#define HAVE_SELECT 1
-
-/* Define if you have the socket function. */
-#define HAVE_SOCKET 1
-
-/* Define if you have the strerror function. */
-#define HAVE_STRERROR 1
-
-/* Define if you have the strtol function. */
-#define HAVE_STRTOL 1
-
-/* Define if you have the <asm/types.h> header file. */
-#define HAVE_ASM_TYPES_H 1
-
-/* Define if you have the <fcntl.h> header file. */
-#define HAVE_FCNTL_H 1
-
-/* Define if you have the <getopt.h> header file. */
-#define HAVE_GETOPT_H 1
-
-/* Define if you have the <linux/if_ether.h> header file. */
-#define HAVE_LINUX_IF_ETHER_H 1
-
-/* Define if you have kernel-mode PPPoE in Linux file. */
-/* #undef HAVE_LINUX_KERNEL_PPPOE */
-
-/* Define if you have the <linux/if_packet.h> header file. */
-#define HAVE_LINUX_IF_PACKET_H 1
-
-/* Define if you have the <linux/if_pppox.h> header file. */
-#define HAVE_LINUX_IF_PPPOX_H 1
-
-/* Define if you have the <net/bpf.h> header file. */
-#define HAVE_NET_BPF_H 1
-
-/* Define if you have the <net/if_arp.h> header file. */
-//#define HAVE_NET_IF_ARP_H 1
-
-/* Define if you have the <net/ethernet.h> header file. */
-#define HAVE_NET_ETHERNET_H 1
-
-/* Define if you have the <net/if.h> header file. */
-#define HAVE_NET_IF_H 1
-
-/* Define if you have the <linux/if.h> header file. */
-#define HAVE_LINUX_IF_H 1
-
-/* Define if you have the <net/if_dl.h> header file. */
-/* #undef HAVE_NET_IF_DL_H */
-
-/* Define if you have the <net/if_ether.h> header file. */
-/* #undef HAVE_NET_IF_ETHER_H */
-
-/* Define if you have the <net/if_types.h> header file. */
-/* #undef HAVE_NET_IF_TYPES_H */
-
-/* Define if you have the <netinet/if_ether.h> header file. */
-//#define HAVE_NETINET_IF_ETHER_H 1
-
-/* Define if you have the <netpacket/packet.h> header file. */
-#define HAVE_NETPACKET_PACKET_H 1
-
-/* Define if you have the <sys/cdefs.h> header file. */
-#define HAVE_SYS_CDEFS_H 1
-
-/* Define if you have the <sys/dlpi.h> header file. */
-/* #undef HAVE_SYS_DLPI_H */
-
-/* Define if you have the <sys/ioctl.h> header file. */
-#define HAVE_SYS_IOCTL_H 1
-
-/* Define if you have the <sys/param.h> header file. */
-#define HAVE_SYS_PARAM_H 1
-
-/* Define if you have the <sys/socket.h> header file. */
-#define HAVE_SYS_SOCKET_H 1
-
-/* Define if you have the <sys/time.h> header file. */
-#define HAVE_SYS_TIME_H 1
-
-/* Define if you have the <sys/uio.h> header file. */
-#define HAVE_SYS_UIO_H 1
-
-/* Define if you have the <syslog.h> header file. */
-#define HAVE_SYSLOG_H 1
-
-/* Define if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H 1
-
-/* Define if you have the N_HDLC line discipline in linux/termios.h */
-#define HAVE_N_HDLC 1
-
-/* Define if bitfields are packed in reverse order */
-#define PACK_BITFIELDS_REVERSED 1
diff --git a/mdk-stage1/rp-pppoe/src/config.h.in b/mdk-stage1/rp-pppoe/src/config.h.in
deleted file mode 100644
index e3340389d..000000000
--- a/mdk-stage1/rp-pppoe/src/config.h.in
+++ /dev/null
@@ -1,134 +0,0 @@
-/* config.h.in. Generated automatically from configure.in by autoheader. */
-
-/* Define to empty if the keyword does not work. */
-#undef const
-
-/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
-#undef HAVE_SYS_WAIT_H
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-#undef pid_t
-
-/* Define as the return type of signal handlers (int or void). */
-#undef RETSIGTYPE
-
-/* Define if the setvbuf function takes the buffering type as its second
- argument and the buffer pointer as the third, as on System V
- before release 3. */
-#undef SETVBUF_REVERSED
-
-/* Define if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Define if you can safely include both <sys/time.h> and <time.h>. */
-#undef TIME_WITH_SYS_TIME
-
-/* Define if your <sys/time.h> declares struct tm. */
-#undef TM_IN_SYS_TIME
-
-#undef HAVE_STRUCT_SOCKADDR_LL
-
-/* The number of bytes in a unsigned int. */
-#undef SIZEOF_UNSIGNED_INT
-
-/* The number of bytes in a unsigned long. */
-#undef SIZEOF_UNSIGNED_LONG
-
-/* The number of bytes in a unsigned short. */
-#undef SIZEOF_UNSIGNED_SHORT
-
-/* Define if you have the select function. */
-#undef HAVE_SELECT
-
-/* Define if you have the socket function. */
-#undef HAVE_SOCKET
-
-/* Define if you have the strerror function. */
-#undef HAVE_STRERROR
-
-/* Define if you have the strtol function. */
-#undef HAVE_STRTOL
-
-/* Define if you have the <asm/types.h> header file. */
-#undef HAVE_ASM_TYPES_H
-
-/* Define if you have the <fcntl.h> header file. */
-#undef HAVE_FCNTL_H
-
-/* Define if you have the <getopt.h> header file. */
-#undef HAVE_GETOPT_H
-
-/* Define if you have the <linux/if_ether.h> header file. */
-#undef HAVE_LINUX_IF_ETHER_H
-
-/* Define if you have kernel-mode PPPoE in Linux file. */
-#undef HAVE_LINUX_KERNEL_PPPOE
-
-/* Define if you have the <linux/if_packet.h> header file. */
-#undef HAVE_LINUX_IF_PACKET_H
-
-/* Define if you have the <linux/if_pppox.h> header file. */
-#undef HAVE_LINUX_IF_PPPOX_H
-
-/* Define if you have the <net/bpf.h> header file. */
-#undef HAVE_NET_BPF_H
-
-/* Define if you have the <net/if_arp.h> header file. */
-#undef HAVE_NET_IF_ARP_H
-
-/* Define if you have the <net/ethernet.h> header file. */
-#undef HAVE_NET_ETHERNET_H
-
-/* Define if you have the <net/if.h> header file. */
-#undef HAVE_NET_IF_H
-
-/* Define if you have the <linux/if.h> header file. */
-#undef HAVE_LINUX_IF_H
-
-/* Define if you have the <net/if_dl.h> header file. */
-#undef HAVE_NET_IF_DL_H
-
-/* Define if you have the <net/if_ether.h> header file. */
-#undef HAVE_NET_IF_ETHER_H
-
-/* Define if you have the <net/if_types.h> header file. */
-#undef HAVE_NET_IF_TYPES_H
-
-/* Define if you have the <netinet/if_ether.h> header file. */
-#undef HAVE_NETINET_IF_ETHER_H
-
-/* Define if you have the <netpacket/packet.h> header file. */
-#undef HAVE_NETPACKET_PACKET_H
-
-/* Define if you have the <sys/cdefs.h> header file. */
-#undef HAVE_SYS_CDEFS_H
-
-/* Define if you have the <sys/dlpi.h> header file. */
-#undef HAVE_SYS_DLPI_H
-
-/* Define if you have the <sys/ioctl.h> header file. */
-#undef HAVE_SYS_IOCTL_H
-
-/* Define if you have the <sys/param.h> header file. */
-#undef HAVE_SYS_PARAM_H
-
-/* Define if you have the <sys/socket.h> header file. */
-#undef HAVE_SYS_SOCKET_H
-
-/* Define if you have the <sys/time.h> header file. */
-#undef HAVE_SYS_TIME_H
-
-/* Define if you have the <sys/uio.h> header file. */
-#undef HAVE_SYS_UIO_H
-
-/* Define if you have the <syslog.h> header file. */
-#undef HAVE_SYSLOG_H
-
-/* Define if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H
-
-/* Define if you have the N_HDLC line discipline in linux/termios.h */
-#undef HAVE_N_HDLC
-
-/* Define if bitfields are packed in reverse order */
-#undef PACK_BITFIELDS_REVERSED
diff --git a/mdk-stage1/rp-pppoe/src/configure b/mdk-stage1/rp-pppoe/src/configure
deleted file mode 100755
index eede451a1..000000000
--- a/mdk-stage1/rp-pppoe/src/configure
+++ /dev/null
@@ -1,2356 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-ac_default_prefix=/usr
-ac_help="$ac_help
- --enable-plugin=pppd_src_path build pppd plugin"
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=pppoe.c
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:536: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:566: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- if test -z "$CC"; then
- case "`uname -s`" in
- *win32* | *WIN32*)
- # Extract the first word of "cl", so it can be a program name with args.
-set dummy cl; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:617: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="cl"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
- ;;
- esac
- fi
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:649: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-cat > conftest.$ac_ext << EOF
-
-#line 660 "configure"
-#include "confdefs.h"
-
-main(){return(0);}
-EOF
-if { (eval echo configure:665: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- ac_cv_prog_cc_works=yes
- # If we can't run a trivial program, we are probably using a cross compiler.
- if (./conftest; exit) 2>/dev/null; then
- ac_cv_prog_cc_cross=no
- else
- ac_cv_prog_cc_cross=yes
- fi
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- ac_cv_prog_cc_works=no
-fi
-rm -fr conftest*
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-echo "$ac_t""$ac_cv_prog_cc_works" 1>&6
-if test $ac_cv_prog_cc_works = no; then
- { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
-fi
-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:691: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
-echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
-cross_compiling=$ac_cv_prog_cc_cross
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:696: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:705: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-else
- GCC=
-fi
-
-ac_test_CFLAGS="${CFLAGS+set}"
-ac_save_CFLAGS="$CFLAGS"
-CFLAGS=
-echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:724: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
-if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
-elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-g"
- fi
-else
- if test "$GCC" = yes; then
- CFLAGS="-O2"
- else
- CFLAGS=
- fi
-fi
-
-
-
-echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:758: checking how to run the C preprocessor" >&5
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
- CPP=
-fi
-if test -z "$CPP"; then
-if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- # This must be in double quotes, not single quotes, because CPP may get
- # substituted into the Makefile and "${CC-cc}" will confuse make.
- CPP="${CC-cc} -E"
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp.
- cat > conftest.$ac_ext <<EOF
-#line 773 "configure"
-#include "confdefs.h"
-#include <assert.h>
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:779: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- :
-else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- CPP="${CC-cc} -E -traditional-cpp"
- cat > conftest.$ac_ext <<EOF
-#line 790 "configure"
-#include "confdefs.h"
-#include <assert.h>
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:796: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- :
-else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- CPP="${CC-cc} -nologo -E"
- cat > conftest.$ac_ext <<EOF
-#line 807 "configure"
-#include "confdefs.h"
-#include <assert.h>
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:813: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- :
-else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- CPP=/lib/cpp
-fi
-rm -f conftest*
-fi
-rm -f conftest*
-fi
-rm -f conftest*
- ac_cv_prog_CPP="$CPP"
-fi
- CPP="$ac_cv_prog_CPP"
-else
- ac_cv_prog_CPP="$CPP"
-fi
-echo "$ac_t""$CPP" 1>&6
-
-echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:838: checking for ANSI C header files" >&5
-if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 843 "configure"
-#include "confdefs.h"
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:851: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- ac_cv_header_stdc=yes
-else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-cat > conftest.$ac_ext <<EOF
-#line 868 "configure"
-#include "confdefs.h"
-#include <string.h>
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "memchr" >/dev/null 2>&1; then
- :
-else
- rm -rf conftest*
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-cat > conftest.$ac_ext <<EOF
-#line 886 "configure"
-#include "confdefs.h"
-#include <stdlib.h>
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "free" >/dev/null 2>&1; then
- :
-else
- rm -rf conftest*
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-if test "$cross_compiling" = yes; then
- :
-else
- cat > conftest.$ac_ext <<EOF
-#line 907 "configure"
-#include "confdefs.h"
-#include <ctype.h>
-#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int main () { int i; for (i = 0; i < 256; i++)
-if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
-exit (0); }
-
-EOF
-if { (eval echo configure:918: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- :
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_header_stdc=no
-fi
-rm -fr conftest*
-fi
-
-fi
-fi
-
-echo "$ac_t""$ac_cv_header_stdc" 1>&6
-if test $ac_cv_header_stdc = yes; then
- cat >> confdefs.h <<\EOF
-#define STDC_HEADERS 1
-EOF
-
-fi
-
-echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6
-echo "configure:942: checking for sys/wait.h that is POSIX.1 compatible" >&5
-if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 947 "configure"
-#include "confdefs.h"
-#include <sys/types.h>
-#include <sys/wait.h>
-#ifndef WEXITSTATUS
-#define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8)
-#endif
-#ifndef WIFEXITED
-#define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
-#endif
-int main() {
-int s;
-wait (&s);
-s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
-; return 0; }
-EOF
-if { (eval echo configure:963: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_header_sys_wait_h=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_header_sys_wait_h=no
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_header_sys_wait_h" 1>&6
-if test $ac_cv_header_sys_wait_h = yes; then
- cat >> confdefs.h <<\EOF
-#define HAVE_SYS_WAIT_H 1
-EOF
-
-fi
-
-for ac_hdr in fcntl.h sys/ioctl.h sys/time.h syslog.h unistd.h net/if_arp.h netinet/if_ether.h getopt.h sys/uio.h sys/param.h fcntl.h net/bpf.h netpacket/packet.h net/ethernet.h asm/types.h linux/if_packet.h linux/if_ether.h linux/if_pppox.h sys/socket.h sys/cdefs.h linux/if.h net/if.h net/if_dl.h net/if_ether.h net/if_types.h netinet/if_ether.h net/if_types.h net/if_dl.h sys/dlpi.h
-do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:987: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 992 "configure"
-#include "confdefs.h"
-#include <$ac_hdr>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:997: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
-else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
-EOF
-
-else
- echo "$ac_t""no" 1>&6
-fi
-done
-
-
-echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:1025: checking for working const" >&5
-if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 1030 "configure"
-#include "confdefs.h"
-
-int main() {
-
-/* Ultrix mips cc rejects this. */
-typedef int charset[2]; const charset x;
-/* SunOS 4.1.1 cc rejects this. */
-char const *const *ccp;
-char **p;
-/* NEC SVR4.0.2 mips cc rejects this. */
-struct point {int x, y;};
-static struct point const zero = {0,0};
-/* AIX XL C 1.02.0.0 rejects this.
- It does not let you subtract one const X* pointer from another in an arm
- of an if-expression whose if-part is not a constant expression */
-const char *g = "string";
-ccp = &g + (g ? g-g : 0);
-/* HPUX 7.0 cc rejects these. */
-++ccp;
-p = (char**) ccp;
-ccp = (char const *const *) p;
-{ /* SCO 3.2v4 cc rejects this. */
- char *t;
- char const *s = 0 ? (char *) 0 : (char const *) 0;
-
- *t++ = 0;
-}
-{ /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */
- int x[] = {25, 17};
- const int *foo = &x[0];
- ++foo;
-}
-{ /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
- typedef const int *iptr;
- iptr p = 0;
- ++p;
-}
-{ /* AIX XL C 1.02.0.0 rejects this saying
- "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
- struct s { int j; const int *ap[3]; };
- struct s *b; b->j = 5;
-}
-{ /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
- const int foo = 10;
-}
-
-; return 0; }
-EOF
-if { (eval echo configure:1079: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_c_const=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_c_const=no
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_c_const" 1>&6
-if test $ac_cv_c_const = no; then
- cat >> confdefs.h <<\EOF
-#define const
-EOF
-
-fi
-
-echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:1100: checking for pid_t" >&5
-if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 1105 "configure"
-#include "confdefs.h"
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "(^|[^a-zA-Z_0-9])pid_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
- rm -rf conftest*
- ac_cv_type_pid_t=yes
-else
- rm -rf conftest*
- ac_cv_type_pid_t=no
-fi
-rm -f conftest*
-
-fi
-echo "$ac_t""$ac_cv_type_pid_t" 1>&6
-if test $ac_cv_type_pid_t = no; then
- cat >> confdefs.h <<\EOF
-#define pid_t int
-EOF
-
-fi
-
-echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:1133: checking whether time.h and sys/time.h may both be included" >&5
-if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 1138 "configure"
-#include "confdefs.h"
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-int main() {
-struct tm *tp;
-; return 0; }
-EOF
-if { (eval echo configure:1147: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_header_time=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_header_time=no
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_header_time" 1>&6
-if test $ac_cv_header_time = yes; then
- cat >> confdefs.h <<\EOF
-#define TIME_WITH_SYS_TIME 1
-EOF
-
-fi
-
-echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6
-echo "configure:1168: checking whether struct tm is in sys/time.h or time.h" >&5
-if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 1173 "configure"
-#include "confdefs.h"
-#include <sys/types.h>
-#include <time.h>
-int main() {
-struct tm *tp; tp->tm_sec;
-; return 0; }
-EOF
-if { (eval echo configure:1181: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_struct_tm=time.h
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_struct_tm=sys/time.h
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_struct_tm" 1>&6
-if test $ac_cv_struct_tm = sys/time.h; then
- cat >> confdefs.h <<\EOF
-#define TM_IN_SYS_TIME 1
-EOF
-
-fi
-
-
-# Extract the first word of "echo", so it can be a program name with args.
-set dummy echo; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1205: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_ECHO'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- case "$ECHO" in
- /*)
- ac_cv_path_ECHO="$ECHO" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_ECHO="$ECHO" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="/usr/ucb/bin:$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_ECHO="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_path_ECHO" && ac_cv_path_ECHO=""""
- ;;
-esac
-fi
-ECHO="$ac_cv_path_ECHO"
-if test -n "$ECHO"; then
- echo "$ac_t""$ECHO" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-$ECHO -n "checking for struct sockaddr_ll... "
-cat > conftest.$ac_ext <<EOF
-#line 1241 "configure"
-#include "confdefs.h"
-#include <asm/types.h>
-#include <linux/if_packet.h>
-#include <linux/if_ether.h>
-
-int main() {
-struct sockaddr_ll sa;
-; return 0; }
-EOF
-if { (eval echo configure:1251: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_struct_sockaddr_ll=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_struct_sockaddr_ll=no
-fi
-rm -f conftest*
-$ECHO $ac_cv_struct_sockaddr_ll
-if test "$ac_cv_struct_sockaddr_ll" = yes ; then
-cat >> confdefs.h <<\EOF
-#define HAVE_STRUCT_SOCKADDR_LL 1
-EOF
-
-fi
-
-$ECHO -n "checking for N_HDLC line discipline... "
-cat > conftest.$ac_ext <<EOF
-#line 1271 "configure"
-#include "confdefs.h"
-#include <linux/termios.h>
-int main() {
-int x = N_HDLC;
-; return 0; }
-EOF
-if { (eval echo configure:1278: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_n_hdlc=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_n_hdlc=no
-fi
-rm -f conftest*
-$ECHO $ac_cv_n_hdlc
-if test "$ac_cv_n_hdlc" = yes ; then
-cat >> confdefs.h <<\EOF
-#define HAVE_N_HDLC 1
-EOF
-
-fi
-
-# Check whether --enable-plugin or --disable-plugin was given.
-if test "${enable_plugin+set}" = set; then
- enableval="$enable_plugin"
- ac_cv_pluginpath=$enableval
-else
- ac_cv_pluginpath=no
-fi
-
-
-LINUX_KERNELMODE_PLUGIN=""
-PPPD_INCDIR=""
-if test "$ac_cv_header_linux_if_pppox_h" = yes ; then
- if test "$ac_cv_pluginpath" != no ; then
- LINUX_KERNELMODE_PLUGIN=rp-pppoe.so
- PPPD_INCDIR=$ac_cv_pluginpath
- fi
-fi
-
-
-
-
-PPPOE_RELAY=""
-if test "`uname -s`" = "Linux" ; then
- PPPOE_RELAY=pppoe-relay
-fi
-
-
-echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6
-echo "configure:1324: checking for 8-bit clean memcmp" >&5
-if eval "test \"`echo '$''{'ac_cv_func_memcmp_clean'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$cross_compiling" = yes; then
- ac_cv_func_memcmp_clean=no
-else
- cat > conftest.$ac_ext <<EOF
-#line 1332 "configure"
-#include "confdefs.h"
-
-main()
-{
- char c0 = 0x40, c1 = 0x80, c2 = 0x81;
- exit(memcmp(&c0, &c2, 1) < 0 && memcmp(&c1, &c2, 1) < 0 ? 0 : 1);
-}
-
-EOF
-if { (eval echo configure:1342: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- ac_cv_func_memcmp_clean=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_func_memcmp_clean=no
-fi
-rm -fr conftest*
-fi
-
-fi
-
-echo "$ac_t""$ac_cv_func_memcmp_clean" 1>&6
-test $ac_cv_func_memcmp_clean = no && LIBOBJS="$LIBOBJS memcmp.${ac_objext}"
-
-echo $ac_n "checking whether setvbuf arguments are reversed""... $ac_c" 1>&6
-echo "configure:1360: checking whether setvbuf arguments are reversed" >&5
-if eval "test \"`echo '$''{'ac_cv_func_setvbuf_reversed'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
-else
- cat > conftest.$ac_ext <<EOF
-#line 1368 "configure"
-#include "confdefs.h"
-#include <stdio.h>
-/* If setvbuf has the reversed format, exit 0. */
-main () {
- /* This call has the arguments reversed.
- A reversed system may check and see that the address of main
- is not _IOLBF, _IONBF, or _IOFBF, and return nonzero. */
- if (setvbuf(stdout, _IOLBF, (char *) main, BUFSIZ) != 0)
- exit(1);
- putc('\r', stdout);
- exit(0); /* Non-reversed systems segv here. */
-}
-EOF
-if { (eval echo configure:1382: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- ac_cv_func_setvbuf_reversed=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_func_setvbuf_reversed=no
-fi
-rm -fr conftest*
-fi
-
-rm -f core core.* *.core
-fi
-
-echo "$ac_t""$ac_cv_func_setvbuf_reversed" 1>&6
-if test $ac_cv_func_setvbuf_reversed = yes; then
- cat >> confdefs.h <<\EOF
-#define SETVBUF_REVERSED 1
-EOF
-
-fi
-
-echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
-echo "configure:1406: checking return type of signal handlers" >&5
-if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 1411 "configure"
-#include "confdefs.h"
-#include <sys/types.h>
-#include <signal.h>
-#ifdef signal
-#undef signal
-#endif
-#ifdef __cplusplus
-extern "C" void (*signal (int, void (*)(int)))(int);
-#else
-void (*signal ()) ();
-#endif
-
-int main() {
-int i;
-; return 0; }
-EOF
-if { (eval echo configure:1428: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_type_signal=void
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_type_signal=int
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_type_signal" 1>&6
-cat >> confdefs.h <<EOF
-#define RETSIGTYPE $ac_cv_type_signal
-EOF
-
-
-for ac_func in select socket strerror strtol
-do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:1449: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 1454 "configure"
-#include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func();
-
-int main() {
-
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-$ac_func();
-#endif
-
-; return 0; }
-EOF
-if { (eval echo configure:1477: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
- cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
-EOF
-
-else
- echo "$ac_t""no" 1>&6
-fi
-done
-
-ac_aux_dir=
-for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1532: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-echo $ac_n "checking size of unsigned short""... $ac_c" 1>&6
-echo "configure:1586: checking size of unsigned short" >&5
-if eval "test \"`echo '$''{'ac_cv_sizeof_unsigned_short'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
-else
- cat > conftest.$ac_ext <<EOF
-#line 1594 "configure"
-#include "confdefs.h"
-#include <stdio.h>
-main()
-{
- FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
- fprintf(f, "%d\n", sizeof(unsigned short));
- exit(0);
-}
-EOF
-if { (eval echo configure:1605: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- ac_cv_sizeof_unsigned_short=`cat conftestval`
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_sizeof_unsigned_short=0
-fi
-rm -fr conftest*
-fi
-
-fi
-echo "$ac_t""$ac_cv_sizeof_unsigned_short" 1>&6
-cat >> confdefs.h <<EOF
-#define SIZEOF_UNSIGNED_SHORT $ac_cv_sizeof_unsigned_short
-EOF
-
-
-echo $ac_n "checking size of unsigned int""... $ac_c" 1>&6
-echo "configure:1625: checking size of unsigned int" >&5
-if eval "test \"`echo '$''{'ac_cv_sizeof_unsigned_int'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
-else
- cat > conftest.$ac_ext <<EOF
-#line 1633 "configure"
-#include "confdefs.h"
-#include <stdio.h>
-main()
-{
- FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
- fprintf(f, "%d\n", sizeof(unsigned int));
- exit(0);
-}
-EOF
-if { (eval echo configure:1644: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- ac_cv_sizeof_unsigned_int=`cat conftestval`
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_sizeof_unsigned_int=0
-fi
-rm -fr conftest*
-fi
-
-fi
-echo "$ac_t""$ac_cv_sizeof_unsigned_int" 1>&6
-cat >> confdefs.h <<EOF
-#define SIZEOF_UNSIGNED_INT $ac_cv_sizeof_unsigned_int
-EOF
-
-
-echo $ac_n "checking size of unsigned long""... $ac_c" 1>&6
-echo "configure:1664: checking size of unsigned long" >&5
-if eval "test \"`echo '$''{'ac_cv_sizeof_unsigned_long'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
-else
- cat > conftest.$ac_ext <<EOF
-#line 1672 "configure"
-#include "confdefs.h"
-#include <stdio.h>
-main()
-{
- FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
- fprintf(f, "%d\n", sizeof(unsigned long));
- exit(0);
-}
-EOF
-if { (eval echo configure:1683: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- ac_cv_sizeof_unsigned_long=`cat conftestval`
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_sizeof_unsigned_long=0
-fi
-rm -fr conftest*
-fi
-
-fi
-echo "$ac_t""$ac_cv_sizeof_unsigned_long" 1>&6
-cat >> confdefs.h <<EOF
-#define SIZEOF_UNSIGNED_LONG $ac_cv_sizeof_unsigned_long
-EOF
-
-
-
-# Extract the first word of "pppd", so it can be a program name with args.
-set dummy pppd; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1706: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_PPPD'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- case "$PPPD" in
- /*)
- ac_cv_path_PPPD="$PPPD" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_PPPD="$PPPD" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH:/sbin:/usr/sbin:/usr/local/sbin"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_PPPD="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_path_PPPD" && ac_cv_path_PPPD="NOTFOUND"
- ;;
-esac
-fi
-PPPD="$ac_cv_path_PPPD"
-if test -n "$PPPD"; then
- echo "$ac_t""$PPPD" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-# Extract the first word of "setsid", so it can be a program name with args.
-set dummy setsid; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1743: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_SETSID'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- case "$SETSID" in
- /*)
- ac_cv_path_SETSID="$SETSID" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_SETSID="$SETSID" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH:/sbin:/usr/sbin:/usr/local/sbin"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_SETSID="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_path_SETSID" && ac_cv_path_SETSID=""""
- ;;
-esac
-fi
-SETSID="$ac_cv_path_SETSID"
-if test -n "$SETSID"; then
- echo "$ac_t""$SETSID" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-# Extract the first word of "id", so it can be a program name with args.
-set dummy id; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1780: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_ID'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- case "$ID" in
- /*)
- ac_cv_path_ID="$ID" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_ID="$ID" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="/usr/xpg4/bin:$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_ID="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_path_ID" && ac_cv_path_ID=""""
- ;;
-esac
-fi
-ID="$ac_cv_path_ID"
-if test -n "$ID"; then
- echo "$ac_t""$ID" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-$ECHO -n "checking for Linux 2.4.X kernel-mode PPPoE support..."
-if test "`uname -s`" = "Linux" ; then
-if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
-else
- cat > conftest.$ac_ext <<EOF
-#line 1820 "configure"
-#include "confdefs.h"
-#include <sys/socket.h>
-#include <net/ethernet.h>
-#include <linux/if.h>
-#include <linux/if_pppox.h>
-int main()
-{
- if (socket(AF_PPPOX, SOCK_DGRAM, PX_PROTO_OE) >= 0) return 0; else return 1;
-}
-
-EOF
-if { (eval echo configure:1832: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- ac_cv_linux_kernel_pppoe=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_linux_kernel_pppoe=no
-fi
-rm -fr conftest*
-fi
-
-else
- ac_cv_linux_kernel_pppoe=no
-fi
-
-$ECHO $ac_cv_linux_kernel_pppoe
-if test "$ac_cv_linux_kernel_pppoe" = yes ; then
- cat >> confdefs.h <<\EOF
-#define HAVE_LINUX_KERNEL_PPPOE 1
-EOF
-
-fi
-
-if test "$GCC" = yes; then
- CFLAGS="$CFLAGS -Wall -Wstrict-prototypes -ansi -pedantic"
-fi
-
-if test "$PPPD" = "NOTFOUND"; then
- $ECHO ""
- $ECHO "*** Oops! I couldn't find pppd, the PPP daemon anywhere."
- $ECHO "*** You must install pppd, version 2.3.10 or later."
- $ECHO "*** I will keep going, but it may not work."
- $ECHO ""
-fi
-
-
-PPPD_VERSION=`$PPPD --version 2>&1 | awk '{print $NF}'`
-
-case "$PPPD_VERSION" in
-1.*|2.0.*|2.1.*|2.2.*|2.3.0|2.3.1|2.3.2|2.3.3|2.3.4|2.3.5|2.3.6)
- $ECHO ""
- $ECHO "*** Oops! Your version of pppd is $PPPD_VERSION, which is too old."
- $ECHO "*** You need at least 2.3.7 (2.3.10 or newer recommended.)"
- $ECHO "*** I will keep going, but it may not work."
- $ECHO ""
- ;;
-
-2.3.7|2.3.8|2.3.9)
- $ECHO ""
- $ECHO "*** Warning. Your version of pppd is $PPPD_VERSION. You will"
- $ECHO "*** not be able to use connect-on-demand. Upgrade to pppd"
- $ECHO "*** 2.3.10 or newer if you need connect-on-demand."
- $ECHO ""
- ;;
-
-2*|3*|4*|5*|6*|7*|8*|9*)
- ;;
-
-*)
- $ECHO ""
- $ECHO "*** Oops. I cannot figure out what version of pppd you have."
- $ECHO "*** All I got back was '$PPPD_VERSION'"
- $ECHO "*** I will keep going, but it may not work."
- $ECHO ""
- ;;
-esac
-
-$ECHO -n "checking packing order of bit fields... "
-if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
-else
- cat > conftest.$ac_ext <<EOF
-#line 1905 "configure"
-#include "confdefs.h"
-
-union foo {
- struct bar {
- unsigned int ver:4;
- unsigned int type:4;
- } bb;
- unsigned char baz;
-};
-
-int
-main(void)
-{
- union foo x;
- x.bb.ver = 1;
- x.bb.type = 2;
- if (x.baz == 0x21) {
- return 1;
- } else if (x.baz == 0x12) {
- return 0;
- } else {
- return 2;
- }
-}
-EOF
-if { (eval echo configure:1931: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- PACK=normal
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- PACK=rev
-fi
-rm -fr conftest*
-fi
-
-
-if test "$PACK" = "rev" ; then
- $ECHO "reversed"
- cat >> confdefs.h <<\EOF
-#define PACK_BITFIELDS_REVERSED 1
-EOF
-
-else
- $ECHO "normal"
-fi
-
-# Sigh... got to fix this up for tcl
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Fully resolve WRAPPER for Tcl script.
-WRAPPER=${sbindir}/pppoe-wrapper
-eval "WRAPPER=${WRAPPER}"
-eval "WRAPPER=${WRAPPER}"
-
-
-# Determine what targets to build
-TARGETS="pppoe pppoe-server"
-
-# pppoe-sniff is built only on Linux and Solaris
-if test "$ac_cv_header_linux_if_packet_h" = "yes" -o "$ac_cv_header_sys_dlpi_h" = "yes" ; then
- TARGETS="$TARGETS pppoe-sniff"
-fi
-
-# pppoe-relay is built only on Linux
-if test "$ac_cv_header_linux_if_packet_h" = "yes" ; then
- TARGETS="$TARGETS pppoe-relay"
-fi
-
-# plugin is built only if we have kernel support
-if test -n "$LINUX_KERNELMODE_PLUGIN" ; then
- TARGETS="$TARGETS $LINUX_KERNELMODE_PLUGIN"
-fi
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-DEFS=-DHAVE_CONFIG_H
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile ../scripts/adsl-connect ../scripts/adsl-start ../scripts/adsl-stop ../scripts/adsl-init ../scripts/adsl-init-suse ../scripts/adsl-init-turbolinux ../scripts/adsl-setup ../gui/Makefile ../gui/tkpppoe config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@CC@%$CC%g
-s%@CPP@%$CPP%g
-s%@ECHO@%$ECHO%g
-s%@LINUX_KERNELMODE_PLUGIN@%$LINUX_KERNELMODE_PLUGIN%g
-s%@PPPD_INCDIR@%$PPPD_INCDIR%g
-s%@PPPOE_RELAY@%$PPPOE_RELAY%g
-s%@LIBOBJS@%$LIBOBJS%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@PPPD@%$PPPD%g
-s%@SETSID@%$SETSID%g
-s%@ID@%$ID%g
-s%@WRAPPER@%$WRAPPER%g
-s%@TARGETS@%$TARGETS%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile ../scripts/adsl-connect ../scripts/adsl-start ../scripts/adsl-stop ../scripts/adsl-init ../scripts/adsl-init-suse ../scripts/adsl-init-turbolinux ../scripts/adsl-setup ../gui/Makefile ../gui/tkpppoe"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
-# NAME is the cpp macro being defined and VALUE is the value it is being given.
-#
-# ac_d sets the value in "#define NAME VALUE" lines.
-ac_dA='s%^\([ ]*\)#\([ ]*define[ ][ ]*\)'
-ac_dB='\([ ][ ]*\)[^ ]*%\1#\2'
-ac_dC='\3'
-ac_dD='%g'
-# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
-ac_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
-ac_uB='\([ ]\)%\1#\2define\3'
-ac_uC=' '
-ac_uD='\4%g'
-# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
-ac_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
-ac_eB='$%\1#\2define\3'
-ac_eC=' '
-ac_eD='%g'
-
-if test "${CONFIG_HEADERS+set}" != set; then
-EOF
-cat >> $CONFIG_STATUS <<EOF
- CONFIG_HEADERS="config.h"
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-fi
-for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- echo creating $ac_file
-
- rm -f conftest.frag conftest.in conftest.out
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- cat $ac_file_inputs > conftest.in
-
-EOF
-
-# Transform confdefs.h into a sed script conftest.vals that substitutes
-# the proper values into config.h.in to produce config.h. And first:
-# Protect against being on the right side of a sed subst in config.status.
-# Protect against being in an unquoted here document in config.status.
-rm -f conftest.vals
-cat > conftest.hdr <<\EOF
-s/[\\&%]/\\&/g
-s%[\\$`]%\\&%g
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD}%gp
-s%ac_d%ac_u%gp
-s%ac_u%ac_e%gp
-EOF
-sed -n -f conftest.hdr confdefs.h > conftest.vals
-rm -f conftest.hdr
-
-# This sed command replaces #undef with comments. This is necessary, for
-# example, in the case of _POSIX_SOURCE, which is predefined and required
-# on some systems where configure will not decide to define it.
-cat >> conftest.vals <<\EOF
-s%^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
-EOF
-
-# Break up conftest.vals because some shells have a limit on
-# the size of here documents, and old seds have small limits too.
-
-rm -f conftest.tail
-while :
-do
- ac_lines=`grep -c . conftest.vals`
- # grep -c gives empty output for an empty file on some AIX systems.
- if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi
- # Write a limited-size here document to conftest.frag.
- echo ' cat > conftest.frag <<CEOF' >> $CONFIG_STATUS
- sed ${ac_max_here_lines}q conftest.vals >> $CONFIG_STATUS
- echo 'CEOF
- sed -f conftest.frag conftest.in > conftest.out
- rm -f conftest.in
- mv conftest.out conftest.in
-' >> $CONFIG_STATUS
- sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail
- rm -f conftest.vals
- mv conftest.tail conftest.vals
-done
-rm -f conftest.vals
-
-cat >> $CONFIG_STATUS <<\EOF
- rm -f conftest.frag conftest.h
- echo "/* $ac_file. Generated automatically by configure. */" > conftest.h
- cat conftest.in >> conftest.h
- rm -f conftest.in
- if cmp -s $ac_file conftest.h 2>/dev/null; then
- echo "$ac_file is unchanged"
- rm -f conftest.h
- else
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- fi
- rm -f $ac_file
- mv conftest.h $ac_file
- fi
-fi; done
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
-
-$ECHO ""
-$ECHO "On this platform, the following targets will be built:"
-$ECHO " $TARGETS"
-$ECHO ""
-$ECHO "Type 'make' to compile the software."
diff --git a/mdk-stage1/rp-pppoe/src/configure.in b/mdk-stage1/rp-pppoe/src/configure.in
deleted file mode 100644
index c11690179..000000000
--- a/mdk-stage1/rp-pppoe/src/configure.in
+++ /dev/null
@@ -1,231 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-AC_INIT(pppoe.c)
-
-AC_CONFIG_HEADER(config.h)
-
-AC_PREFIX_DEFAULT(/usr)
-
-dnl Checks for programs.
-AC_PROG_CC
-
-dnl Checks for libraries.
-
-dnl Checks for header files.
-AC_HEADER_STDC
-AC_HEADER_SYS_WAIT
-AC_CHECK_HEADERS(fcntl.h sys/ioctl.h sys/time.h syslog.h unistd.h net/if_arp.h netinet/if_ether.h getopt.h sys/uio.h sys/param.h fcntl.h net/bpf.h netpacket/packet.h net/ethernet.h asm/types.h linux/if_packet.h linux/if_ether.h linux/if_pppox.h sys/socket.h sys/cdefs.h linux/if.h net/if.h net/if_dl.h net/if_ether.h net/if_types.h netinet/if_ether.h net/if_types.h net/if_dl.h sys/dlpi.h )
-
-dnl Checks for typedefs, structures, and compiler characteristics.
-AC_C_CONST
-AC_TYPE_PID_T
-AC_HEADER_TIME
-AC_STRUCT_TM
-
-dnl Check for an echo which supports -n -- another hack for Solaris
-AC_PATH_PROG(ECHO, echo, "", /usr/ucb/bin:$PATH)
-
-dnl Check for sockaddr_ll
-$ECHO -n "checking for struct sockaddr_ll... "
-AC_TRY_COMPILE([#include <asm/types.h>
-#include <linux/if_packet.h>
-#include <linux/if_ether.h>
-], [struct sockaddr_ll sa;],
-ac_cv_struct_sockaddr_ll=yes, ac_cv_struct_sockaddr_ll=no)
-$ECHO $ac_cv_struct_sockaddr_ll
-if test "$ac_cv_struct_sockaddr_ll" = yes ; then
-AC_DEFINE(HAVE_STRUCT_SOCKADDR_LL)
-fi
-
-dnl Check for N_HDLC line discipline
-$ECHO -n "checking for N_HDLC line discipline... "
-AC_TRY_COMPILE([#include <linux/termios.h>],
- [int x = N_HDLC;],
- ac_cv_n_hdlc=yes, ac_cv_n_hdlc=no)
-$ECHO $ac_cv_n_hdlc
-if test "$ac_cv_n_hdlc" = yes ; then
-AC_DEFINE(HAVE_N_HDLC)
-fi
-
-AC_ARG_ENABLE(plugin, [ --enable-plugin=pppd_src_path build pppd plugin], ac_cv_pluginpath=$enableval, ac_cv_pluginpath=no)
-
-dnl Determine whether or not to build Linux pppd plugin
-LINUX_KERNELMODE_PLUGIN=""
-PPPD_INCDIR=""
-if test "$ac_cv_header_linux_if_pppox_h" = yes ; then
- if test "$ac_cv_pluginpath" != no ; then
- LINUX_KERNELMODE_PLUGIN=rp-pppoe.so
- PPPD_INCDIR=$ac_cv_pluginpath
- fi
-fi
-
-AC_SUBST(LINUX_KERNELMODE_PLUGIN)
-AC_SUBST(PPPD_INCDIR)
-
-dnl Determine whether or not to build PPPoE relay
-PPPOE_RELAY=""
-if test "`uname -s`" = "Linux" ; then
- PPPOE_RELAY=pppoe-relay
-fi
-AC_SUBST(PPPOE_RELAY)
-
-dnl Checks for library functions.
-AC_FUNC_MEMCMP
-AC_FUNC_SETVBUF_REVERSED
-AC_TYPE_SIGNAL
-AC_CHECK_FUNCS(select socket strerror strtol)
-AC_PROG_INSTALL
-
-dnl Integer sizes
-AC_CHECK_SIZEOF(unsigned short)
-AC_CHECK_SIZEOF(unsigned int)
-AC_CHECK_SIZEOF(unsigned long)
-
-dnl Check for location of pppd
-AC_PATH_PROG(PPPD, pppd, NOTFOUND, $PATH:/sbin:/usr/sbin:/usr/local/sbin)
-
-dnl Check for setsid (probably Linux-specific)
-AC_PATH_PROG(SETSID, setsid, "", $PATH:/sbin:/usr/sbin:/usr/local/sbin)
-
-dnl Check for an "id" which accepts "-u" option -- hack for Solaris.
-AC_PATH_PROG(ID, id, "", /usr/xpg4/bin:$PATH)
-
-dnl Check for Linux-specific kernel support for PPPoE
-$ECHO -n "checking for Linux 2.4.X kernel-mode PPPoE support..."
-if test "`uname -s`" = "Linux" ; then
-AC_TRY_RUN([#include <sys/socket.h>
-#include <net/ethernet.h>
-#include <linux/if.h>
-#include <linux/if_pppox.h>
-int main()
-{
- if (socket(AF_PPPOX, SOCK_DGRAM, PX_PROTO_OE) >= 0) return 0; else return 1;
-}
-], ac_cv_linux_kernel_pppoe=yes, ac_cv_linux_kernel_pppoe=no)
-else
- ac_cv_linux_kernel_pppoe=no
-fi
-
-$ECHO $ac_cv_linux_kernel_pppoe
-if test "$ac_cv_linux_kernel_pppoe" = yes ; then
- AC_DEFINE(HAVE_LINUX_KERNEL_PPPOE)
-fi
-
-dnl GCC warning level
-if test "$GCC" = yes; then
- CFLAGS="$CFLAGS -Wall -Wstrict-prototypes"
-fi
-
-dnl If we couldn't find pppd, die
-if test "$PPPD" = "NOTFOUND"; then
- $ECHO ""
- $ECHO "*** Oops! I couldn't find pppd, the PPP daemon anywhere."
- $ECHO "*** You must install pppd, version 2.3.10 or later."
- $ECHO "*** I will keep going, but it may not work."
- $ECHO ""
-fi
-
-dnl Figure out pppd version. 2.3.7 to 2.3.9 -- issue warning. Less than
-dnl 2.3.7 -- stop
-
-PPPD_VERSION=`$PPPD --version 2>&1 | awk '{print $NF}'`
-
-case "$PPPD_VERSION" in
-1.*|2.0.*|2.1.*|2.2.*|2.3.0|2.3.1|2.3.2|2.3.3|2.3.4|2.3.5|2.3.6)
- $ECHO ""
- $ECHO "*** Oops! Your version of pppd is $PPPD_VERSION, which is too old."
- $ECHO "*** You need at least 2.3.7 (2.3.10 or newer recommended.)"
- $ECHO "*** I will keep going, but it may not work."
- $ECHO ""
- ;;
-
-2.3.7|2.3.8|2.3.9)
- $ECHO ""
- $ECHO "*** Warning. Your version of pppd is $PPPD_VERSION. You will"
- $ECHO "*** not be able to use connect-on-demand. Upgrade to pppd"
- $ECHO "*** 2.3.10 or newer if you need connect-on-demand."
- $ECHO ""
- ;;
-
-2*|3*|4*|5*|6*|7*|8*|9*)
- ;;
-
-*)
- $ECHO ""
- $ECHO "*** Oops. I cannot figure out what version of pppd you have."
- $ECHO "*** All I got back was '$PPPD_VERSION'"
- $ECHO "*** I will keep going, but it may not work."
- $ECHO ""
- ;;
-esac
-
-dnl Figure out packing order of structures
-$ECHO -n "checking packing order of bit fields... "
-AC_TRY_RUN([
-union foo {
- struct bar {
- unsigned int ver:4;
- unsigned int type:4;
- } bb;
- unsigned char baz;
-};
-
-int
-main(void)
-{
- union foo x;
- x.bb.ver = 1;
- x.bb.type = 2;
- if (x.baz == 0x21) {
- return 1;
- } else if (x.baz == 0x12) {
- return 0;
- } else {
- return 2;
- }
-}], PACK=normal, PACK=rev)
-
-if test "$PACK" = "rev" ; then
- $ECHO "reversed"
- AC_DEFINE(PACK_BITFIELDS_REVERSED)
-else
- $ECHO "normal"
-fi
-
-# Sigh... got to fix this up for tcl
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Fully resolve WRAPPER for Tcl script.
-WRAPPER=${sbindir}/pppoe-wrapper
-eval "WRAPPER=${WRAPPER}"
-eval "WRAPPER=${WRAPPER}"
-AC_SUBST(WRAPPER)
-
-# Determine what targets to build
-TARGETS="pppoe pppoe-server"
-
-# pppoe-sniff is built only on Linux and Solaris
-if test "$ac_cv_header_linux_if_packet_h" = "yes" -o "$ac_cv_header_sys_dlpi_h" = "yes" ; then
- TARGETS="$TARGETS pppoe-sniff"
-fi
-
-# pppoe-relay is built only on Linux
-if test "$ac_cv_header_linux_if_packet_h" = "yes" ; then
- TARGETS="$TARGETS pppoe-relay"
-fi
-
-# plugin is built only if we have kernel support
-if test -n "$LINUX_KERNELMODE_PLUGIN" ; then
- TARGETS="$TARGETS $LINUX_KERNELMODE_PLUGIN"
-fi
-
-AC_SUBST(TARGETS)
-
-AC_OUTPUT(Makefile ../scripts/adsl-connect ../scripts/adsl-start ../scripts/adsl-stop ../scripts/adsl-init ../scripts/adsl-init-suse ../scripts/adsl-init-turbolinux ../scripts/adsl-setup ../gui/Makefile ../gui/tkpppoe)
-
-$ECHO ""
-$ECHO "On this platform, the following targets will be built:"
-$ECHO " $TARGETS"
-$ECHO ""
-$ECHO "Type 'make' to compile the software."
diff --git a/mdk-stage1/rp-pppoe/src/debug.c b/mdk-stage1/rp-pppoe/src/debug.c
deleted file mode 100644
index 052dca6c7..000000000
--- a/mdk-stage1/rp-pppoe/src/debug.c
+++ /dev/null
@@ -1,143 +0,0 @@
-/***********************************************************************
-*
-* debug.c
-*
-* Implementation of user-space PPPoE redirector for Linux.
-*
-* Functions for printing debugging information
-*
-* Copyright (C) 2000 by Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#include "pppoe.h"
-#include <sys/time.h>
-#include <time.h>
-#include <unistd.h>
-#include <ctype.h>
-
-/**********************************************************************
-*%FUNCTION: dumpHex
-*%ARGUMENTS:
-* fp -- file to dump to
-* buf -- buffer to dump
-* len -- length of data
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Dumps buffer to fp in an easy-to-read format
-***********************************************************************/
-void
-dumpHex(FILE *fp, unsigned char const *buf, int len)
-{
- int i;
- int base;
-
- if (!fp) return;
-
- /* do NOT dump PAP packets */
- if (len >= 2 && buf[0] == 0xC0 && buf[1] == 0x23) {
- fprintf(fp, "(PAP Authentication Frame -- Contents not dumped)\n");
- return;
- }
-
- for (base=0; base<len; base += 16) {
- for (i=base; i<base+16; i++) {
- if (i < len) {
- fprintf(fp, "%02x ", (unsigned) buf[i]);
- } else {
- fprintf(fp, " ");
- }
- }
- fprintf(fp, " ");
- for (i=base; i<base+16; i++) {
- if (i < len) {
- if (isprint(buf[i])) {
- fprintf(fp, "%c", buf[i]);
- } else {
- fprintf(fp, ".");
- }
- } else {
- break;
- }
- }
- fprintf(fp, "\n");
- }
-}
-
-/**********************************************************************
-*%FUNCTION: dumpPacket
-*%ARGUMENTS:
-* fp -- file to dump to
-* packet -- a PPPoE packet
-* dir -- either SENT or RCVD
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Dumps the PPPoE packet to fp in an easy-to-read format
-***********************************************************************/
-void
-dumpPacket(FILE *fp, PPPoEPacket *packet, char const *dir)
-{
- int len = ntohs(packet->length);
-
- /* Sheesh... printing times is a pain... */
- struct timeval tv;
- time_t now;
- int millisec;
- struct tm *lt;
- char timebuf[256];
-
- UINT16_t type = etherType(packet);
- if (!fp) return;
- gettimeofday(&tv, NULL);
- now = (time_t) tv.tv_sec;
- millisec = tv.tv_usec / 1000;
- lt = localtime(&now);
- strftime(timebuf, 256, "%H:%M:%S", lt);
- fprintf(fp, "%s.%03d %s PPPoE ", timebuf, millisec, dir);
- if (type == Eth_PPPOE_Discovery) {
- fprintf(fp, "Discovery (%x) ", (unsigned) type);
- } else if (type == Eth_PPPOE_Session) {
- fprintf(fp, "Session (%x) ", (unsigned) type);
- } else {
- fprintf(fp, "Unknown (%x) ", (unsigned) type);
- }
-
- switch(packet->code) {
- case CODE_PADI: fprintf(fp, "PADI "); break;
- case CODE_PADO: fprintf(fp, "PADO "); break;
- case CODE_PADR: fprintf(fp, "PADR "); break;
- case CODE_PADS: fprintf(fp, "PADS "); break;
- case CODE_PADT: fprintf(fp, "PADT "); break;
- case CODE_SESS: fprintf(fp, "SESS "); break;
- }
-
- fprintf(fp, "sess-id %d length %d\n",
- (int) ntohs(packet->session),
- len);
-
- /* Ugly... I apologize... */
- fprintf(fp,
- "SourceAddr %02x:%02x:%02x:%02x:%02x:%02x "
- "DestAddr %02x:%02x:%02x:%02x:%02x:%02x\n",
- (unsigned) packet->ethHdr.h_source[0],
- (unsigned) packet->ethHdr.h_source[1],
- (unsigned) packet->ethHdr.h_source[2],
- (unsigned) packet->ethHdr.h_source[3],
- (unsigned) packet->ethHdr.h_source[4],
- (unsigned) packet->ethHdr.h_source[5],
- (unsigned) packet->ethHdr.h_dest[0],
- (unsigned) packet->ethHdr.h_dest[1],
- (unsigned) packet->ethHdr.h_dest[2],
- (unsigned) packet->ethHdr.h_dest[3],
- (unsigned) packet->ethHdr.h_dest[4],
- (unsigned) packet->ethHdr.h_dest[5]);
- dumpHex(fp, packet->payload, ntohs(packet->length));
-}
diff --git a/mdk-stage1/rp-pppoe/src/discovery.c b/mdk-stage1/rp-pppoe/src/discovery.c
deleted file mode 100644
index fc3568db5..000000000
--- a/mdk-stage1/rp-pppoe/src/discovery.c
+++ /dev/null
@@ -1,629 +0,0 @@
-/***********************************************************************
-*
-* discovery.c
-*
-* Perform PPPoE discovery
-*
-* Copyright (C) 1999 by Roaring Penguin Software Inc.
-*
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#include "pppoe.h"
-
-#ifdef HAVE_SYSLOG_H
-#include <syslog.h>
-#endif
-
-#include <string.h>
-#include <stdlib.h>
-#include <errno.h>
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#ifdef HAVE_SYS_UIO_H
-#include <sys/uio.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef USE_LINUX_PACKET
-#include <sys/ioctl.h>
-#include <fcntl.h>
-#endif
-
-#include <signal.h>
-
-/**********************************************************************
-*%FUNCTION: parseForHostUniq
-*%ARGUMENTS:
-* type -- tag type
-* len -- tag length
-* data -- tag data.
-* extra -- user-supplied pointer. This is assumed to be a pointer to int.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* If a HostUnique tag is found which matches our PID, sets *extra to 1.
-***********************************************************************/
-void
-parseForHostUniq(UINT16_t type, UINT16_t len, unsigned char *data,
- void *extra)
-{
- int *val = (int *) extra;
- if (type == TAG_HOST_UNIQ && len == sizeof(pid_t)) {
- pid_t tmp;
- memcpy(&tmp, data, len);
- if (tmp == getpid()) {
- *val = 1;
- }
- }
-}
-
-/**********************************************************************
-*%FUNCTION: packetIsForMe
-*%ARGUMENTS:
-* conn -- PPPoE connection info
-* packet -- a received PPPoE packet
-*%RETURNS:
-* 1 if packet is for this PPPoE daemon; 0 otherwise.
-*%DESCRIPTION:
-* If we are using the Host-Unique tag, verifies that packet contains
-* our unique identifier.
-***********************************************************************/
-int
-packetIsForMe(PPPoEConnection *conn, PPPoEPacket *packet)
-{
- int forMe = 0;
-
- /* If we're not using the Host-Unique tag, then accept the packet */
- if (!conn->useHostUniq) return 1;
-
- parsePacket(packet, parseForHostUniq, &forMe);
- return forMe;
-}
-
-/**********************************************************************
-*%FUNCTION: parsePADOTags
-*%ARGUMENTS:
-* type -- tag type
-* len -- tag length
-* data -- tag data
-* extra -- extra user data. Should point to a PacketCriteria structure
-* which gets filled in according to selected AC name and service
-* name.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Picks interesting tags out of a PADO packet
-***********************************************************************/
-void
-parsePADOTags(UINT16_t type, UINT16_t len, unsigned char *data,
- void *extra)
-{
- struct PacketCriteria *pc = (struct PacketCriteria *) extra;
- PPPoEConnection *conn = pc->conn;
- int i;
-
- switch(type) {
- case TAG_AC_NAME:
- if (conn->printACNames) {
- printf("Access-Concentrator: %.*s\n", (int) len, data);
- }
- if (conn->acName && len == strlen(conn->acName) &&
- !strncmp((char *) data, conn->acName, len)) {
- pc->acNameOK = 1;
- }
- break;
- case TAG_SERVICE_NAME:
- if (conn->printACNames && len > 0) {
- printf(" Service-Name: %.*s\n", (int) len, data);
- }
- if (conn->serviceName && len == strlen(conn->serviceName) &&
- !strncmp((char *) data, conn->serviceName, len)) {
- pc->serviceNameOK = 1;
- }
- break;
- case TAG_AC_COOKIE:
- if (conn->printACNames) {
- printf("Got a cookie:");
- /* Print first 20 bytes of cookie */
- for (i=0; i<len && i < 20; i++) {
- printf(" %02x", (unsigned) data[i]);
- }
- if (i < len) printf("...");
- printf("\n");
- }
- conn->cookie.type = htons(type);
- conn->cookie.length = htons(len);
- memcpy(conn->cookie.payload, data, len);
- break;
- case TAG_RELAY_SESSION_ID:
- if (conn->printACNames) {
- printf("Got a Relay-ID:");
- /* Print first 20 bytes of relay ID */
- for (i=0; i<len && i < 20; i++) {
- printf(" %02x", (unsigned) data[i]);
- }
- if (i < len) printf("...");
- printf("\n");
- }
- conn->relayId.type = htons(type);
- conn->relayId.length = htons(len);
- memcpy(conn->relayId.payload, data, len);
- break;
- case TAG_SERVICE_NAME_ERROR:
- if (conn->printACNames) {
- printf("Got a Service-Name-Error tag: %.*s\n", (int) len, data);
- } else {
- syslog(LOG_ERR, "PADO: Service-Name-Error: %.*s", (int) len, data);
- exit(1);
- }
- break;
- case TAG_AC_SYSTEM_ERROR:
- if (conn->printACNames) {
- printf("Got a System-Error tag: %.*s\n", (int) len, data);
- } else {
- syslog(LOG_ERR, "PADO: System-Error: %.*s", (int) len, data);
- exit(1);
- }
- break;
- case TAG_GENERIC_ERROR:
- if (conn->printACNames) {
- printf("Got a Generic-Error tag: %.*s\n", (int) len, data);
- } else {
- syslog(LOG_ERR, "PADO: Generic-Error: %.*s", (int) len, data);
- exit(1);
- }
- break;
- }
-}
-
-/**********************************************************************
-*%FUNCTION: parsePADSTags
-*%ARGUMENTS:
-* type -- tag type
-* len -- tag length
-* data -- tag data
-* extra -- extra user data (pointer to PPPoEConnection structure)
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Picks interesting tags out of a PADS packet
-***********************************************************************/
-void
-parsePADSTags(UINT16_t type, UINT16_t len, unsigned char *data,
- void *extra)
-{
- PPPoEConnection *conn = (PPPoEConnection *) extra;
- switch(type) {
- case TAG_SERVICE_NAME:
- syslog(LOG_DEBUG, "PADS: Service-Name: '%.*s'", (int) len, data);
- break;
- case TAG_SERVICE_NAME_ERROR:
- syslog(LOG_ERR, "PADS: Service-Name-Error: %.*s", (int) len, data);
- fprintf(stderr, "PADS: Service-Name-Error: %.*s\n", (int) len, data);
- exit(1);
- case TAG_AC_SYSTEM_ERROR:
- syslog(LOG_ERR, "PADS: System-Error: %.*s", (int) len, data);
- fprintf(stderr, "PADS: System-Error: %.*s\n", (int) len, data);
- exit(1);
- case TAG_GENERIC_ERROR:
- syslog(LOG_ERR, "PADS: Generic-Error: %.*s", (int) len, data);
- fprintf(stderr, "PADS: Generic-Error: %.*s\n", (int) len, data);
- exit(1);
- case TAG_RELAY_SESSION_ID:
- conn->relayId.type = htons(type);
- conn->relayId.length = htons(len);
- memcpy(conn->relayId.payload, data, len);
- break;
- }
-}
-
-/***********************************************************************
-*%FUNCTION: sendPADI
-*%ARGUMENTS:
-* conn -- PPPoEConnection structure
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Sends a PADI packet
-***********************************************************************/
-void
-sendPADI(PPPoEConnection *conn)
-{
- PPPoEPacket packet;
- unsigned char *cursor = packet.payload;
- PPPoETag *svc = (PPPoETag *) (&packet.payload);
- UINT16_t namelen = 0;
- UINT16_t plen;
-
- if (conn->serviceName) {
- namelen = (UINT16_t) strlen(conn->serviceName);
- }
- plen = TAG_HDR_SIZE + namelen;
- CHECK_ROOM(cursor, packet.payload, plen);
-
- /* Set destination to Ethernet broadcast address */
- memset(packet.ethHdr.h_dest, 0xFF, ETH_ALEN);
- memcpy(packet.ethHdr.h_source, conn->myEth, ETH_ALEN);
-
- packet.ethHdr.h_proto = htons(Eth_PPPOE_Discovery);
- packet.ver = 1;
- packet.type = 1;
- packet.code = CODE_PADI;
- packet.session = 0;
-
- svc->type = TAG_SERVICE_NAME;
- svc->length = htons(namelen);
- CHECK_ROOM(cursor, packet.payload, namelen+TAG_HDR_SIZE);
-
- if (conn->serviceName) {
- memcpy(svc->payload, conn->serviceName, strlen(conn->serviceName));
- }
- cursor += namelen + TAG_HDR_SIZE;
-
- /* If we're using Host-Uniq, copy it over */
- if (conn->useHostUniq) {
- PPPoETag hostUniq;
- pid_t pid = getpid();
- hostUniq.type = htons(TAG_HOST_UNIQ);
- hostUniq.length = htons(sizeof(pid));
- memcpy(hostUniq.payload, &pid, sizeof(pid));
- CHECK_ROOM(cursor, packet.payload, sizeof(pid) + TAG_HDR_SIZE);
- memcpy(cursor, &hostUniq, sizeof(pid) + TAG_HDR_SIZE);
- cursor += sizeof(pid) + TAG_HDR_SIZE;
- plen += sizeof(pid) + TAG_HDR_SIZE;
- }
-
- packet.length = htons(plen);
-
- sendPacket(conn, conn->discoverySocket, &packet, (int) (plen + HDR_SIZE));
- if (conn->debugFile) {
- dumpPacket(conn->debugFile, &packet, "SENT");
- fprintf(conn->debugFile, "\n");
- fflush(conn->debugFile);
- }
-}
-
-/**********************************************************************
-*%FUNCTION: waitForPADO
-*%ARGUMENTS:
-* conn -- PPPoEConnection structure
-* timeout -- how long to wait (in seconds)
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Waits for a PADO packet and copies useful information
-***********************************************************************/
-void
-waitForPADO(PPPoEConnection *conn, int timeout)
-{
- fd_set readable;
- int r;
- struct timeval tv;
- PPPoEPacket packet;
- int len;
-
- struct PacketCriteria pc;
- pc.conn = conn;
- pc.acNameOK = (conn->acName) ? 0 : 1;
- pc.serviceNameOK = (conn->serviceName) ? 0 : 1;
-
- do {
- if (BPF_BUFFER_IS_EMPTY) {
- tv.tv_sec = timeout;
- tv.tv_usec = 0;
-
- FD_ZERO(&readable);
- FD_SET(conn->discoverySocket, &readable);
-
- while(1) {
- r = select(conn->discoverySocket+1, &readable, NULL, NULL, &tv);
- if (r >= 0 || errno != EINTR) break;
- }
- if (r < 0) {
- fatalSys("select (waitForPADO)");
- }
- if (r == 0) return; /* Timed out */
- }
-
- /* Get the packet */
- receivePacket(conn->discoverySocket, &packet, &len);
-
- /* Check length */
- if (ntohs(packet.length) + HDR_SIZE > len) {
- syslog(LOG_ERR, "Bogus PPPoE length field (%u)",
- (unsigned int) ntohs(packet.length));
- continue;
- }
-
-#ifdef USE_BPF
- /* If it's not a Discovery packet, loop again */
- if (etherType(&packet) != Eth_PPPOE_Discovery) continue;
-#endif
-
- if (conn->debugFile) {
- dumpPacket(conn->debugFile, &packet, "RCVD");
- fprintf(conn->debugFile, "\n");
- fflush(conn->debugFile);
- }
- /* If it's not for us, loop again */
- if (!packetIsForMe(conn, &packet)) continue;
-
- if (packet.code == CODE_PADO) {
- if (NOT_UNICAST(packet.ethHdr.h_source)) {
- printErr("Ignoring PADO packet from non-unicast MAC address");
- continue;
- }
- conn->numPADOs++;
- if (conn->printACNames) {
- printf("--------------------------------------------------\n");
- }
- parsePacket(&packet, parsePADOTags, &pc);
- if (pc.acNameOK && pc.serviceNameOK) {
- memcpy(conn->peerEth, packet.ethHdr.h_source, ETH_ALEN);
- if (conn->printACNames) {
- printf("AC-Ethernet-Address: %02x:%02x:%02x:%02x:%02x:%02x\n",
- (unsigned) conn->peerEth[0],
- (unsigned) conn->peerEth[1],
- (unsigned) conn->peerEth[2],
- (unsigned) conn->peerEth[3],
- (unsigned) conn->peerEth[4],
- (unsigned) conn->peerEth[5]);
- continue;
- }
- conn->discoveryState = STATE_RECEIVED_PADO;
- break;
- }
- }
- } while (conn->discoveryState != STATE_RECEIVED_PADO);
-}
-
-/***********************************************************************
-*%FUNCTION: sendPADR
-*%ARGUMENTS:
-* conn -- PPPoE connection structur
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Sends a PADR packet
-***********************************************************************/
-void
-sendPADR(PPPoEConnection *conn)
-{
- PPPoEPacket packet;
- PPPoETag *svc = (PPPoETag *) packet.payload;
- unsigned char *cursor = packet.payload;
-
- UINT16_t namelen = 0;
- UINT16_t plen;
-
- if (conn->serviceName) {
- namelen = (UINT16_t) strlen(conn->serviceName);
- }
- plen = TAG_HDR_SIZE + namelen;
- CHECK_ROOM(cursor, packet.payload, plen);
-
- memcpy(packet.ethHdr.h_dest, conn->peerEth, ETH_ALEN);
- memcpy(packet.ethHdr.h_source, conn->myEth, ETH_ALEN);
-
- packet.ethHdr.h_proto = htons(Eth_PPPOE_Discovery);
- packet.ver = 1;
- packet.type = 1;
- packet.code = CODE_PADR;
- packet.session = 0;
-
- svc->type = TAG_SERVICE_NAME;
- svc->length = htons(namelen);
- if (conn->serviceName) {
- memcpy(svc->payload, conn->serviceName, namelen);
- }
- cursor += namelen + TAG_HDR_SIZE;
-
- /* If we're using Host-Uniq, copy it over */
- if (conn->useHostUniq) {
- PPPoETag hostUniq;
- pid_t pid = getpid();
- hostUniq.type = htons(TAG_HOST_UNIQ);
- hostUniq.length = htons(sizeof(pid));
- memcpy(hostUniq.payload, &pid, sizeof(pid));
- CHECK_ROOM(cursor, packet.payload, sizeof(pid)+TAG_HDR_SIZE);
- memcpy(cursor, &hostUniq, sizeof(pid) + TAG_HDR_SIZE);
- cursor += sizeof(pid) + TAG_HDR_SIZE;
- plen += sizeof(pid) + TAG_HDR_SIZE;
- }
-
- /* Copy cookie and relay-ID if needed */
- if (conn->cookie.type) {
- CHECK_ROOM(cursor, packet.payload,
- ntohs(conn->cookie.length) + TAG_HDR_SIZE);
- memcpy(cursor, &conn->cookie, ntohs(conn->cookie.length) + TAG_HDR_SIZE);
- cursor += ntohs(conn->cookie.length) + TAG_HDR_SIZE;
- plen += ntohs(conn->cookie.length) + TAG_HDR_SIZE;
- }
-
- if (conn->relayId.type) {
- CHECK_ROOM(cursor, packet.payload,
- ntohs(conn->relayId.length) + TAG_HDR_SIZE);
- memcpy(cursor, &conn->relayId, ntohs(conn->relayId.length) + TAG_HDR_SIZE);
- cursor += ntohs(conn->relayId.length) + TAG_HDR_SIZE;
- plen += ntohs(conn->relayId.length) + TAG_HDR_SIZE;
- }
-
- packet.length = htons(plen);
- sendPacket(conn, conn->discoverySocket, &packet, (int) (plen + HDR_SIZE));
- if (conn->debugFile) {
- dumpPacket(conn->debugFile, &packet, "SENT");
- fprintf(conn->debugFile, "\n");
- fflush(conn->debugFile);
- }
-}
-
-/**********************************************************************
-*%FUNCTION: waitForPADS
-*%ARGUMENTS:
-* conn -- PPPoE connection info
-* timeout -- how long to wait (in seconds)
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Waits for a PADS packet and copies useful information
-***********************************************************************/
-void
-waitForPADS(PPPoEConnection *conn, int timeout)
-{
- fd_set readable;
- int r;
- struct timeval tv;
- PPPoEPacket packet;
- int len;
-
- do {
- if (BPF_BUFFER_IS_EMPTY) {
- tv.tv_sec = timeout;
- tv.tv_usec = 0;
-
- FD_ZERO(&readable);
- FD_SET(conn->discoverySocket, &readable);
-
- while(1) {
- r = select(conn->discoverySocket+1, &readable, NULL, NULL, &tv);
- if (r >= 0 || errno != EINTR) break;
- }
- if (r < 0) {
- fatalSys("select (waitForPADS)");
- }
- if (r == 0) return;
- }
-
- /* Get the packet */
- receivePacket(conn->discoverySocket, &packet, &len);
-
- /* Check length */
- if (ntohs(packet.length) + HDR_SIZE > len) {
- syslog(LOG_ERR, "Bogus PPPoE length field (%u)",
- (unsigned int) ntohs(packet.length));
- continue;
- }
-
-#ifdef USE_BPF
- /* If it's not a Discovery packet, loop again */
- if (etherType(&packet) != Eth_PPPOE_Discovery) continue;
-#endif
- if (conn->debugFile) {
- dumpPacket(conn->debugFile, &packet, "RCVD");
- fprintf(conn->debugFile, "\n");
- fflush(conn->debugFile);
- }
-
- /* If it's not from the AC, it's not for me */
- if (memcmp(packet.ethHdr.h_source, conn->peerEth, ETH_ALEN)) continue;
-
- /* If it's not for us, loop again */
- if (!packetIsForMe(conn, &packet)) continue;
-
- /* Is it PADS? */
- if (packet.code == CODE_PADS) {
- /* Parse for goodies */
- parsePacket(&packet, parsePADSTags, conn);
- conn->discoveryState = STATE_SESSION;
- break;
- }
- } while (conn->discoveryState != STATE_SESSION);
-
- /* Don't bother with ntohs; we'll just end up converting it back... */
- conn->session = packet.session;
-
- syslog(LOG_INFO, "PPP session is %d", (int) ntohs(conn->session));
-
- /* RFC 2516 says session id MUST NOT be zero or 0xFFFF */
- if (ntohs(conn->session) == 0 || ntohs(conn->session) == 0xFFFF) {
- syslog(LOG_ERR, "Access concentrator used a session value of %x -- the AC is violating RFC 2516", (unsigned int) ntohs(conn->session));
- }
-}
-
-/**********************************************************************
-*%FUNCTION: discovery
-*%ARGUMENTS:
-* conn -- PPPoE connection info structure
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Performs the PPPoE discovery phase
-***********************************************************************/
-void
-discovery(PPPoEConnection *conn)
-{
- int padiAttempts = 0;
- int padrAttempts = 0;
- int timeout = PADI_TIMEOUT;
-
- /* Skip discovery and don't open discovery socket? */
- if (conn->skipDiscovery && conn->noDiscoverySocket) {
- conn->discoveryState = STATE_SESSION;
- return;
- }
-
- conn->discoverySocket =
- openInterface(conn->ifName, Eth_PPPOE_Discovery, conn->myEth);
-
- /* Skip discovery? */
- if (conn->skipDiscovery) {
- conn->discoveryState = STATE_SESSION;
- if (conn->killSession) {
- sendPADT(conn, "RP-PPPoE: Session killed manually");
- exit(0);
- }
- return;
- }
-
- do {
- padiAttempts++;
- if (padiAttempts > MAX_PADI_ATTEMPTS) {
- rp_fatal("Timeout waiting for PADO packets");
- }
- sendPADI(conn);
- conn->discoveryState = STATE_SENT_PADI;
- waitForPADO(conn, timeout);
-
- /* If we're just probing for access concentrators, don't do
- exponential backoff. This reduces the time for an unsuccessful
- probe to 15 seconds. */
- if (!conn->printACNames) {
- timeout *= 2;
- }
- if (conn->printACNames && conn->numPADOs) {
- break;
- }
- } while (conn->discoveryState == STATE_SENT_PADI);
-
- /* If we're only printing access concentrator names, we're done */
- if (conn->printACNames) {
- printf("--------------------------------------------------\n");
- exit(0);
- }
-
- timeout = PADI_TIMEOUT;
- do {
- padrAttempts++;
- if (padrAttempts > MAX_PADI_ATTEMPTS) {
- rp_fatal("Timeout waiting for PADS packets");
- }
- sendPADR(conn);
- conn->discoveryState = STATE_SENT_PADR;
- waitForPADS(conn, timeout);
- timeout *= 2;
- } while (conn->discoveryState == STATE_SENT_PADR);
-
- /* We're done. */
- conn->discoveryState = STATE_SESSION;
- return;
-}
-
diff --git a/mdk-stage1/rp-pppoe/src/if.c b/mdk-stage1/rp-pppoe/src/if.c
deleted file mode 100644
index fec09b273..000000000
--- a/mdk-stage1/rp-pppoe/src/if.c
+++ /dev/null
@@ -1,1092 +0,0 @@
-/***********************************************************************
-*
-* if.c
-*
-* Implementation of user-space PPPoE redirector for Linux.
-*
-* Functions for opening a raw socket and reading/writing raw Ethernet frames.
-*
-* Copyright (C) 2000 by Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#include "pppoe.h"
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_NETPACKET_PACKET_H
-#include <netpacket/packet.h>
-#elif defined(HAVE_LINUX_IF_PACKET_H)
-#include <linux/if_packet.h>
-#endif
-
-#ifdef HAVE_NET_ETHERNET_H
-#include <net/ethernet.h>
-#endif
-
-#ifdef HAVE_ASM_TYPES_H
-#include <asm/types.h>
-#endif
-
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-
-#ifdef HAVE_SYSLOG_H
-#include <syslog.h>
-#endif
-
-#include <errno.h>
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef HAVE_NET_IF_ARP_H
-#include <net/if_arp.h>
-#endif
-
-#ifdef USE_DLPI
-
-#include <limits.h>
-#include <fcntl.h>
-#include <stdlib.h>
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/stream.h>
-#include <sys/stropts.h>
-#include <sys/dlpi.h>
-#include <sys/bufmod.h>
-#include <stdio.h>
-#include <signal.h>
-#include <stropts.h>
-
-/* function declarations */
-
-void dlpromisconreq( int fd, u_long level);
-void dlinforeq(int fd);
-void dlunitdatareq(int fd, u_char *addrp, int addrlen, u_long minpri, u_long maxpri, u_char *datap, int datalen);
-void dlinfoack(int fd, char *bufp);
-void dlbindreq(int fd, u_long sap, u_long max_conind, u_long service_mode, u_long conn_mgmt, u_long xidtest);
-void dlattachreq(int fd, u_long ppa);
-void dlokack(int fd, char *bufp);
-void dlbindack(int fd, char *bufp);
-int strioctl(int fd, int cmd, int timout, int len, char *dp);
-void strgetmsg(int fd, struct strbuf *ctlp, struct strbuf *datap, int *flagsp, char *caller);
-void sigalrm(int sig);
-void expecting(int prim, union DL_primitives *dlp);
-char *dlprim(u_long prim);
-
-/* #define DL_DEBUG */
-
-static int dl_abssaplen;
-static int dl_saplen;
-static int dl_addrlen;
-
-#endif
-
-#ifdef USE_BPF
-#include <net/bpf.h>
-#include <fcntl.h>
-
-unsigned char *bpfBuffer; /* Packet filter buffer */
-int bpfLength = 0; /* Packet filter buffer length */
-int bpfSize = 0; /* Number of unread bytes in buffer */
-int bpfOffset = 0; /* Current offset in bpfBuffer */
-#endif
-
-/* Initialize frame types to RFC 2516 values. Some broken peers apparently
- use different frame types... sigh... */
-
-UINT16_t Eth_PPPOE_Discovery = ETH_PPPOE_DISCOVERY;
-UINT16_t Eth_PPPOE_Session = ETH_PPPOE_SESSION;
-
-/**********************************************************************
-*%FUNCTION: etherType
-*%ARGUMENTS:
-* packet -- a received PPPoE packet
-*%RETURNS:
-* ethernet packet type (see /usr/include/net/ethertypes.h)
-*%DESCRIPTION:
-* Checks the ethernet packet header to determine its type.
-* We should only be receveing DISCOVERY and SESSION types if the BPF
-* is set up correctly. Logs an error if an unexpected type is received.
-* Note that the ethernet type names come from "pppoe.h" and the packet
-* packet structure names use the LINUX dialect to maintain consistency
-* with the rest of this file. See the BSD section of "pppoe.h" for
-* translations of the data structure names.
-***********************************************************************/
-UINT16_t
-etherType(PPPoEPacket *packet)
-{
- UINT16_t type = (UINT16_t) ntohs(packet->ethHdr.h_proto);
- if (type != Eth_PPPOE_Discovery && type != Eth_PPPOE_Session) {
- syslog(LOG_ERR, "Invalid ether type 0x%x", type);
- }
- return type;
-}
-
-#ifdef USE_BPF
-/**********************************************************************
-*%FUNCTION: getHWaddr
-*%ARGUMENTS:
-* ifname -- name of interface
-* hwaddr -- buffer for ehthernet address
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Locates the Ethernet hardware address for an interface.
-***********************************************************************/
-void
-getHWaddr(int sock, char const *ifname, unsigned char *hwaddr)
-{
- char inbuf[8192];
- const struct sockaddr_dl *sdl;
- struct ifconf ifc;
- struct ifreq ifreq, *ifr;
- int i;
- int found = 0;
-
- ifc.ifc_len = sizeof(inbuf);
- ifc.ifc_buf = inbuf;
- if (ioctl(sock, SIOCGIFCONF, &ifc) < 0) {
- fatalSys("SIOCGIFCONF");
- }
- ifr = ifc.ifc_req;
- ifreq.ifr_name[0] = '\0';
- for (i = 0; i < ifc.ifc_len; ) {
- ifr = (struct ifreq *)((caddr_t)ifc.ifc_req + i);
- i += sizeof(ifr->ifr_name) +
- (ifr->ifr_addr.sa_len > sizeof(struct sockaddr)
- ? ifr->ifr_addr.sa_len
- : sizeof(struct sockaddr));
- if (ifr->ifr_addr.sa_family == AF_LINK) {
- sdl = (const struct sockaddr_dl *) &ifr->ifr_addr;
- if ((sdl->sdl_type == IFT_ETHER) &&
- (sdl->sdl_alen == ETH_ALEN) &&
- !strncmp(ifname, ifr->ifr_name, sizeof(ifr->ifr_name))) {
- if (found) {
- char buffer[256];
- sprintf(buffer, "interface %.16s has more than one ethernet address", ifname);
- rp_fatal(buffer);
- } else {
- found = 1;
- memcpy(hwaddr, LLADDR(sdl), ETH_ALEN);
- }
- }
- }
- }
- if (!found) {
- char buffer[256];
- sprintf(buffer, "interface %.16s has no ethernet address", ifname);
- rp_fatal(buffer);
- }
-}
-
-/**********************************************************************
-*%FUNCTION: initFilter
-*%ARGUMENTS:
-* fd -- file descriptor of BSD device
-* type -- Ethernet frame type (0 for watch mode)
-* hwaddr -- buffer with ehthernet address
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Initializes the packet filter rules.
-***********************************************************************/
-void
-initFilter(int fd, UINT16_t type, unsigned char *hwaddr)
-{
- /* Packet Filter Instructions:
- * Note that the ethernet type names come from "pppoe.h" and are
- * used here to maintain consistency with the rest of this file. */
- static struct bpf_insn bpfRun[] = { /* run PPPoE */
- BPF_STMT(BPF_LD+BPF_H+BPF_ABS, 12), /* ethernet type */
- BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, ETH_PPPOE_SESSION, 5, 0),
- BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, ETH_PPPOE_DISCOVERY, 0, 9),
- BPF_STMT(BPF_LD+BPF_W+BPF_ABS, 0), /* first word of dest. addr */
-#define PPPOE_BCAST_CMPW 4 /* offset of word compare */
- BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0, 0, 2),
- BPF_STMT(BPF_LD+BPF_H+BPF_ABS, 4), /* next 1/2 word of dest. */
-#define PPPOE_BCAST_CMPH 6 /* offset of 1/2 word compare */
- BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0, 4, 0),
- BPF_STMT(BPF_LD+BPF_W+BPF_ABS, 0), /* first word of dest. addr */
-#define PPPOE_FILTER_CMPW 8 /* offset of word compare */
- BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0, 0, 3),
- BPF_STMT(BPF_LD+BPF_H+BPF_ABS, 4), /* next 1/2 word of dest. */
-#define PPPOE_FILTER_CMPH 10 /* offset of 1/rd compare */
- BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0, 0, 1),
- BPF_STMT(BPF_RET+BPF_K, (u_int) -1), /* keep packet */
- BPF_STMT(BPF_RET+BPF_K, 0), /* drop packet */
- };
-
- /* Fix the potentially varying parts */
- bpfRun[1].code = (u_short) BPF_JMP+BPF_JEQ+BPF_K;
- bpfRun[1].jt = 5;
- bpfRun[1].jf = 0;
- bpfRun[1].k = Eth_PPPOE_Session;
-
- bpfRun[2].code = (u_short) BPF_JMP+BPF_JEQ+BPF_K;
- bpfRun[2].jt = 0;
- bpfRun[2].jf = 9;
- bpfRun[2].k = Eth_PPPOE_Discovery;
-
- {
- struct bpf_insn bpfInsn[sizeof(bpfRun) / sizeof(bpfRun[0])];
- struct bpf_program bpfProgram;
- memcpy(bpfInsn, bpfRun, sizeof(bpfRun));
- bpfInsn[PPPOE_BCAST_CMPW].k = ((0xff << 24) | (0xff << 16) |
- (0xff << 8) | 0xff);
- bpfInsn[PPPOE_BCAST_CMPH].k = ((0xff << 8) | 0xff);
- bpfInsn[PPPOE_FILTER_CMPW].k = ((hwaddr[0] << 24) | (hwaddr[1] << 16) |
- (hwaddr[2] << 8) | hwaddr[3]);
- bpfInsn[PPPOE_FILTER_CMPH].k = ((hwaddr[4] << 8) | hwaddr[5]);
- bpfProgram.bf_len = (sizeof(bpfInsn) / sizeof(bpfInsn[0]));
- bpfProgram.bf_insns = &bpfInsn[0];
-
- /* Apply the filter */
- if (ioctl(fd, BIOCSETF, &bpfProgram) < 0) {
- fatalSys("ioctl(BIOCSETF)");
- }
- }
-}
-
-/**********************************************************************
-*%FUNCTION: openInterface
-*%ARGUMENTS:
-* ifname -- name of interface
-* type -- Ethernet frame type (0 for any frame type)
-* hwaddr -- if non-NULL, set to the hardware address
-*%RETURNS:
-* A file descriptor for talking with the Ethernet card. Exits on error.
-* Note that the Linux version of this routine returns a socket instead.
-*%DESCRIPTION:
-* Opens a BPF on an interface for all PPPoE traffic (discovery and
-* session). If 'type' is 0, uses promiscuous mode to watch any PPPoE
-* traffic on this network.
-***********************************************************************/
-int
-openInterface(char const *ifname, UINT16_t type, unsigned char *hwaddr)
-{
- static int fd = -1;
- char bpfName[32];
- u_int optval;
- struct bpf_version bpf_ver;
- struct ifreq ifr;
- int sock;
- int i;
-
- /* BSD only opens one socket for both Discovery and Session packets */
- if (fd >= 0) {
- return fd;
- }
-
- /* Find a free BPF device */
- for (i = 0; i < 256; i++) {
- sprintf(bpfName, "/dev/bpf%d", i);
- if (((fd = open(bpfName, O_RDWR, 0)) >= 0) ||
- (errno != EBUSY)) {
- break;
- }
- }
- if (fd < 0) {
- switch (errno) {
- case EACCES: /* permission denied */
- {
- char buffer[256];
- sprintf(buffer, "Cannot open %.32s -- pppoe must be run as root.", bpfName);
- rp_fatal(buffer);
- }
- break;
- case EBUSY:
- case ENOENT: /* no such file */
- if (i == 0) {
- rp_fatal("No /dev/bpf* devices (check your kernel configuration for BPF support)");
- } else {
- rp_fatal("All /dev/bpf* devices are in use");
- }
- break;
- }
- fatalSys(bpfName);
- }
-
- if ((sock = socket(AF_LOCAL, SOCK_DGRAM, 0)) < 0) {
- fatalSys("socket");
- }
-
- /* Check that the interface is up */
- strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(sock, SIOCGIFFLAGS, &ifr) < 0) {
- fatalSys("ioctl(SIOCGIFFLAGS)");
- }
- if ((ifr.ifr_flags & IFF_UP) == 0) {
- char buffer[256];
- sprintf(buffer, "Interface %.16s is not up\n", ifname);
- rp_fatal(buffer);
- }
-
- /* Fill in hardware address and initialize the packet filter rules */
- if (hwaddr == NULL) {
- rp_fatal("openInterface: no hwaddr arg.");
- }
- getHWaddr(sock, ifname, hwaddr);
- initFilter(fd, type, hwaddr);
-
- /* Sanity check on MTU -- apparently does not work on OpenBSD */
-#if !defined(__OpenBSD__)
- strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(sock, SIOCGIFMTU, &ifr) < 0) {
- fatalSys("ioctl(SIOCGIFMTU)");
- }
- if (ifr.ifr_mtu < ETH_DATA_LEN) {
- char buffer[256];
- sprintf(buffer, "Interface %.16s has MTU of %d -- should be %d. You may have serious connection problems.",
- ifname, ifr.ifr_mtu, ETH_DATA_LEN);
- printErr(buffer);
- }
-#endif
-
- /* done with the socket */
- if (close(sock) < 0) {
- fatalSys("close");
- }
-
- /* Check the BPF version number */
- if (ioctl(fd, BIOCVERSION, &bpf_ver) < 0) {
- fatalSys("ioctl(BIOCVERSION)");
- }
- if ((bpf_ver.bv_major != BPF_MAJOR_VERSION) ||
- (bpf_ver.bv_minor < BPF_MINOR_VERSION)) {
- char buffer[256];
- sprintf(buffer, "Unsupported BPF version: %d.%d (kernel: %d.%d)",
- BPF_MAJOR_VERSION, BPF_MINOR_VERSION,
- bpf_ver.bv_major, bpf_ver.bv_minor);
- rp_fatal(buffer);
- }
-
- /* allocate a receive packet buffer */
- if (ioctl(fd, BIOCGBLEN, &bpfLength) < 0) {
- fatalSys("ioctl(BIOCGBLEN)");
- }
- if (!(bpfBuffer = (unsigned char *) malloc(bpfLength))) {
- rp_fatal("malloc");
- }
-
- /* reads should return as soon as there is a packet available */
- optval = 1;
- if (ioctl(fd, BIOCIMMEDIATE, &optval) < 0) {
- fatalSys("ioctl(BIOCIMMEDIATE)");
- }
-
- /* Bind the interface to the filter */
- strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(fd, BIOCSETIF, &ifr) < 0) {
- char buffer[256];
- sprintf(buffer, "ioctl(BIOCSETIF) can't select interface %.16s",
- ifname);
- rp_fatal(buffer);
- }
-
- syslog(LOG_INFO, "Interface=%.16s HWaddr=%02X:%02X:%02X:%02X:%02X:%02X Device=%.32s Buffer size=%d",
- ifname,
- hwaddr[0], hwaddr[1], hwaddr[2],
- hwaddr[3], hwaddr[4], hwaddr[5],
- bpfName, bpfLength);
- return fd;
-}
-
-#endif /* USE_BPF */
-
-#ifdef USE_LINUX_PACKET
-/**********************************************************************
-*%FUNCTION: openInterface
-*%ARGUMENTS:
-* ifname -- name of interface
-* type -- Ethernet frame type
-* hwaddr -- if non-NULL, set to the hardware address
-*%RETURNS:
-* A raw socket for talking to the Ethernet card. Exits on error.
-*%DESCRIPTION:
-* Opens a raw Ethernet socket
-***********************************************************************/
-int
-openInterface(char const *ifname, UINT16_t type, unsigned char *hwaddr)
-{
- int optval=1;
- int fd;
- struct ifreq ifr;
- int domain, stype;
-
-#ifdef HAVE_STRUCT_SOCKADDR_LL
- struct sockaddr_ll sa;
-#else
- struct sockaddr sa;
-#endif
-
- memset(&sa, 0, sizeof(sa));
-
-#ifdef HAVE_STRUCT_SOCKADDR_LL
- domain = PF_PACKET;
- stype = SOCK_RAW;
-#else
- domain = PF_INET;
- stype = SOCK_PACKET;
-#endif
-
- if ((fd = socket(domain, stype, htons(type))) < 0) {
- /* Give a more helpful message for the common error case */
- if (errno == EPERM) {
- rp_fatal("Cannot create raw socket -- pppoe must be run as root.");
- }
- fatalSys("socket");
- }
-
- if (setsockopt(fd, SOL_SOCKET, SO_BROADCAST, &optval, sizeof(optval)) < 0) {
- fatalSys("setsockopt");
- }
-
- /* Fill in hardware address */
- if (hwaddr) {
- strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(fd, SIOCGIFHWADDR, &ifr) < 0) {
- fatalSys("ioctl(SIOCGIFHWADDR)");
- }
- memcpy(hwaddr, ifr.ifr_hwaddr.sa_data, ETH_ALEN);
-#ifdef ARPHRD_ETHER
- if (ifr.ifr_hwaddr.sa_family != ARPHRD_ETHER) {
- char buffer[256];
- sprintf(buffer, "Interface %.16s is not Ethernet", ifname);
- rp_fatal(buffer);
- }
-#endif
- if (NOT_UNICAST(hwaddr)) {
- char buffer[256];
- sprintf(buffer,
- "Interface %.16s has broadcast/multicast MAC address??",
- ifname);
- rp_fatal(buffer);
- }
- }
-
- /* Sanity check on MTU */
- strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(fd, SIOCGIFMTU, &ifr) < 0) {
- fatalSys("ioctl(SIOCGIFMTU)");
- }
- if (ifr.ifr_mtu < ETH_DATA_LEN) {
- char buffer[256];
- sprintf(buffer, "Interface %.16s has MTU of %d -- should be %d. You may have serious connection problems.",
- ifname, ifr.ifr_mtu, ETH_DATA_LEN);
- printErr(buffer);
- }
-
-#ifdef HAVE_STRUCT_SOCKADDR_LL
- /* Get interface index */
- sa.sll_family = AF_PACKET;
- sa.sll_protocol = htons(type);
-
- strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- if (ioctl(fd, SIOCGIFINDEX, &ifr) < 0) {
- fatalSys("ioctl(SIOCFIGINDEX): Could not get interface index");
- }
- sa.sll_ifindex = ifr.ifr_ifindex;
-
-#else
- strcpy(sa.sa_data, ifname);
-#endif
-
- /* We're only interested in packets on specified interface */
- if (bind(fd, (struct sockaddr *) &sa, sizeof(sa)) < 0) {
- fatalSys("bind");
- }
-
- return fd;
-}
-
-#endif /* USE_LINUX */
-
-/***********************************************************************
-*%FUNCTION: sendPacket
-*%ARGUMENTS:
-* sock -- socket to send to
-* pkt -- the packet to transmit
-* size -- size of packet (in bytes)
-*%RETURNS:
-* 0 on success; -1 on failure
-*%DESCRIPTION:
-* Transmits a packet
-***********************************************************************/
-int
-sendPacket(PPPoEConnection *conn, int sock, PPPoEPacket *pkt, int size)
-{
-#if defined(USE_BPF)
- if (write(sock, pkt, size) < 0) {
- sysErr("write (sendPacket)");
- return -1;
- }
-#elif defined(HAVE_STRUCT_SOCKADDR_LL)
- if (send(sock, pkt, size, 0) < 0) {
- sysErr("send (sendPacket)");
- return -1;
- }
-#else
-#ifdef USE_DLPI
-
-#define ABS(x) ((x) < 0 ? -(x) : (x))
-
- u_char addr[MAXDLADDR];
- u_char phys[MAXDLADDR];
- u_char sap[MAXDLADDR];
- u_char xmitbuf[MAXDLBUF];
- int data_size;
-
- short tmp_sap;
-
- tmp_sap = htons(pkt->ethHdr.h_proto);
- data_size = size - sizeof(struct ethhdr);
-
- memcpy((char *)phys, (char *)pkt->ethHdr.h_dest, ETHERADDRL);
- memcpy((char *)sap, (char *)&tmp_sap, sizeof(ushort_t));
- memcpy((char *)xmitbuf, (char *)pkt + sizeof(struct ethhdr), data_size);
-
- if (dl_saplen > 0) { /* order is sap+phys */
- (void) memcpy((char*)addr, (char*)&sap, dl_abssaplen);
- (void) memcpy((char*)addr+dl_abssaplen, (char*)phys, ETHERADDRL);
- } else { /* order is phys+sap */
- (void) memcpy((char*)addr, (char*)phys, ETHERADDRL);
- (void) memcpy((char*)addr+ETHERADDRL, (char*)&sap, dl_abssaplen);
- }
-
-#ifdef DL_DEBUG
- printf("%02x:%02x:%02x:%02x:%02x:%02x %02x:%02x\n",
- addr[0],addr[1],addr[2],addr[3],addr[4],addr[5],
- addr[6],addr[7]);
-#endif
-
- dlunitdatareq(sock, addr, dl_addrlen, 0, 0, xmitbuf, data_size);
-
-
-
-#else
- struct sockaddr sa;
-
- if (!conn) {
- rp_fatal("relay and server not supported on Linux 2.0 kernels");
- }
- strcpy(sa.sa_data, conn->ifName);
- if (sendto(sock, pkt, size, 0, &sa, sizeof(sa)) < 0) {
- sysErr("sendto (sendPacket)");
- return -1;
- }
-#endif
-#endif
- return 0;
-}
-
-#ifdef USE_BPF
-/***********************************************************************
-*%FUNCTION: clearPacketHeader
-*%ARGUMENTS:
-* pkt -- packet that needs its head clearing
-*%RETURNS:
-* nothing
-*%DESCRIPTION:
-* Clears a PPPoE packet header after a truncated packet has been
-* received. Insures that the packet will fail any integrity tests
-* and will be discarded by upper level routines. Also resets the
-* bpfSize and bpfOffset variables to force a new read on the next
-* call to receivePacket().
-***********************************************************************/
-void
-clearPacketHeader(PPPoEPacket *pkt)
-{
- bpfSize = bpfOffset = 0;
- memset(pkt, 0, HDR_SIZE);
-}
-#endif
-
-/***********************************************************************
-*%FUNCTION: receivePacket
-*%ARGUMENTS:
-* sock -- socket to read from
-* pkt -- place to store the received packet
-* size -- set to size of packet in bytes
-*%RETURNS:
-* >= 0 if all OK; < 0 if error
-*%DESCRIPTION:
-* Receives a packet
-***********************************************************************/
-int
-receivePacket(int sock, PPPoEPacket *pkt, int *size)
-{
-#ifdef USE_BPF
- struct bpf_hdr hdr;
- int seglen, copylen;
-
- if (bpfSize <= 0) {
- bpfOffset = 0;
- if ((bpfSize = read(sock, bpfBuffer, bpfLength)) < 0) {
- sysErr("read (receivePacket)");
- return -1;
- }
- }
- if (bpfSize < sizeof(hdr)) {
- syslog(LOG_ERR, "Truncated bpf packet header: len=%d", bpfSize);
- clearPacketHeader(pkt); /* resets bpfSize and bpfOffset */
- return 0;
- }
- memcpy(&hdr, bpfBuffer + bpfOffset, sizeof(hdr));
- if (hdr.bh_caplen != hdr.bh_datalen) {
- syslog(LOG_ERR, "Truncated bpf packet: caplen=%d, datalen=%d",
- hdr.bh_caplen, hdr.bh_datalen);
- clearPacketHeader(pkt); /* resets bpfSize and bpfOffset */
- return 0;
- }
- seglen = hdr.bh_hdrlen + hdr.bh_caplen;
- if (seglen > bpfSize) {
- syslog(LOG_ERR, "Truncated bpf packet: seglen=%d, bpfSize=%d",
- seglen, bpfSize);
- clearPacketHeader(pkt); /* resets bpfSize and bpfOffset */
- return 0;
- }
- seglen = BPF_WORDALIGN(seglen);
- *size = copylen = ((hdr.bh_caplen < sizeof(PPPoEPacket)) ?
- hdr.bh_caplen : sizeof(PPPoEPacket));
- memcpy(pkt, bpfBuffer + bpfOffset + hdr.bh_hdrlen, copylen);
- if (seglen >= bpfSize) {
- bpfSize = bpfOffset = 0;
- } else {
- bpfSize -= seglen;
- bpfOffset += seglen;
- }
-#else
-#ifdef USE_DLPI
- struct strbuf data;
- int flags = 0;
- int retval;
-
- data.buf = (char *) pkt;
- data.maxlen = MAXDLBUF;
- data.len = 0;
-
- if ((retval = getmsg(sock, NULL, &data, &flags)) < 0) {
- sysErr("read (receivePacket)");
- return -1;
- }
-
- *size = data.len;
-
-#else
- if ((*size = recv(sock, pkt, sizeof(PPPoEPacket), 0)) < 0) {
- sysErr("recv (receivePacket)");
- return -1;
- }
-#endif
-#endif
- return 0;
-}
-
-#ifdef USE_DLPI
-/**********************************************************************
-*%FUNCTION: openInterface
-*%ARGUMENTS:
-* ifname -- name of interface
-* type -- Ethernet frame type
-* hwaddr -- if non-NULL, set to the hardware address
-*%RETURNS:
-* A raw socket for talking to the Ethernet card. Exits on error.
-*%DESCRIPTION:
-* Opens a raw Ethernet socket
-***********************************************************************/
-int
-openInterface(char const *ifname, UINT16_t type, unsigned char *hwaddr)
-{
- int fd;
- long buf[MAXDLBUF];
-
- union DL_primitives *dlp;
-
- char base_dev[PATH_MAX];
- int ppa;
-
- if(strlen(ifname) > PATH_MAX) {
- rp_fatal("socket: string to long");
- }
-
- ppa = atoi(&ifname[strlen(ifname)-1]);
- strncpy(base_dev, ifname, PATH_MAX);
- base_dev[strlen(base_dev)-1] = '\0';
-
- if (( fd = open(base_dev, O_RDWR)) < 0) {
- /* Give a more helpful message for the common error case */
- if (errno == EPERM) {
- rp_fatal("Cannot create raw socket -- pppoe must be run as root.");
- }
- fatalSys("socket");
- }
-
- dlinforeq(fd);
- dlinfoack(fd, (char *)buf);
-
- dlp = (union DL_primitives*) buf;
-
- dl_abssaplen = ABS(dlp->info_ack.dl_sap_length);
- dl_saplen = dlp->info_ack.dl_sap_length;
- if (ETHERADDRL != (dlp->info_ack.dl_addr_length - dl_abssaplen))
- fatalSys("invalid destination physical address length");
- dl_addrlen = dl_abssaplen + ETHERADDRL;
-
- dlattachreq(fd, ppa);
- dlokack(fd, (char *)buf);
-
- dlbindreq(fd, type, 0, DL_CLDLS, 0, 0);
- dlbindack(fd, (char *)buf);
-
- if ( strioctl(fd, DLIOCRAW, -1, 0, NULL) < 0 ) {
- fatalSys("DLIOCRAW");
- }
-
- if (ioctl(fd, I_FLUSH, FLUSHR) < 0) fatalSys("I_FLUSH");
-
- return fd;
-}
-
-/* cloned from dlcommon.c */
-
-void dlpromisconreq(int fd, u_long level)
-{
- dl_promiscon_req_t promiscon_req;
- struct strbuf ctl;
- int flags;
-
- promiscon_req.dl_primitive = DL_PROMISCON_REQ;
- promiscon_req.dl_level = level;
-
- ctl.maxlen = 0;
- ctl.len = sizeof (promiscon_req);
- ctl.buf = (char *) &promiscon_req;
-
- flags = 0;
-
- if (putmsg(fd, &ctl, (struct strbuf*) NULL, flags) < 0)
- fatalSys("dlpromiscon: putmsg");
-
-}
-
-void dlinforeq(int fd)
-{
- dl_info_req_t info_req;
- struct strbuf ctl;
- int flags;
-
- info_req.dl_primitive = DL_INFO_REQ;
-
- ctl.maxlen = 0;
- ctl.len = sizeof (info_req);
- ctl.buf = (char *) &info_req;
-
- flags = RS_HIPRI;
-
- if (putmsg(fd, &ctl, (struct strbuf*) NULL, flags) < 0)
- fatalSys("dlinforeq: putmsg");
-}
-
-void dlunitdatareq(int fd, u_char *addrp, int addrlen, u_long minpri, u_long maxpri, u_char *datap, int datalen)
-{
- long buf[MAXDLBUF];
- union DL_primitives *dlp;
- struct strbuf data, ctl;
-
- dlp = (union DL_primitives*) buf;
-
- dlp->unitdata_req.dl_primitive = DL_UNITDATA_REQ;
- dlp->unitdata_req.dl_dest_addr_length = addrlen;
- dlp->unitdata_req.dl_dest_addr_offset = sizeof (dl_unitdata_req_t);
- dlp->unitdata_req.dl_priority.dl_min = minpri;
- dlp->unitdata_req.dl_priority.dl_max = maxpri;
-
- (void) memcpy(OFFADDR(dlp, sizeof (dl_unitdata_req_t)), addrp, addrlen);
-
- ctl.maxlen = 0;
- ctl.len = sizeof (dl_unitdata_req_t) + addrlen;
- ctl.buf = (char *) buf;
-
- data.maxlen = 0;
- data.len = datalen;
- data.buf = (char *) datap;
-
- if (putmsg(fd, &ctl, &data, 0) < 0)
- fatalSys("dlunitdatareq: putmsg");
-}
-
-void dlinfoack(int fd, char *bufp)
-{
- union DL_primitives *dlp;
- struct strbuf ctl;
- int flags;
-
- ctl.maxlen = MAXDLBUF;
- ctl.len = 0;
- ctl.buf = bufp;
-
- strgetmsg(fd, &ctl, (struct strbuf*)NULL, &flags, "dlinfoack");
-
- dlp = (union DL_primitives *) ctl.buf;
-
- expecting(DL_INFO_ACK, dlp);
-
- if (ctl.len < sizeof (dl_info_ack_t)) {
- char buffer[256];
- sprintf(buffer, "dlinfoack: response ctl.len too short: %d", ctl.len);
- rp_fatal(buffer);
- }
-
- if (flags != RS_HIPRI)
- rp_fatal("dlinfoack: DL_INFO_ACK was not M_PCPROTO");
-
- if (ctl.len < sizeof (dl_info_ack_t)) {
- char buffer[256];
- sprintf(buffer, "dlinfoack: short response ctl.len: %d", ctl.len);
- rp_fatal(buffer);
- }
-}
-
-void dlbindreq(int fd, u_long sap, u_long max_conind, u_long service_mode, u_long conn_mgmt, u_long xidtest)
-{
- dl_bind_req_t bind_req;
- struct strbuf ctl;
- int flags;
-
- bind_req.dl_primitive = DL_BIND_REQ;
- bind_req.dl_sap = sap;
- bind_req.dl_max_conind = max_conind;
- bind_req.dl_service_mode = service_mode;
- bind_req.dl_conn_mgmt = conn_mgmt;
- bind_req.dl_xidtest_flg = xidtest;
-
- ctl.maxlen = 0;
- ctl.len = sizeof (bind_req);
- ctl.buf = (char *) &bind_req;
-
- flags = 0;
-
- if (putmsg(fd, &ctl, (struct strbuf*) NULL, flags) < 0)
- fatalSys("dlbindreq: putmsg");
-}
-
-void dlattachreq(int fd, u_long ppa)
-{
- dl_attach_req_t attach_req;
- struct strbuf ctl;
- int flags;
-
- attach_req.dl_primitive = DL_ATTACH_REQ;
- attach_req.dl_ppa = ppa;
-
- ctl.maxlen = 0;
- ctl.len = sizeof (attach_req);
- ctl.buf = (char *) &attach_req;
-
- flags = 0;
-
- if (putmsg(fd, &ctl, (struct strbuf*) NULL, flags) < 0)
- fatalSys("dlattachreq: putmsg");
-}
-
-void dlokack(int fd, char *bufp)
-{
- union DL_primitives *dlp;
- struct strbuf ctl;
- int flags;
-
- ctl.maxlen = MAXDLBUF;
- ctl.len = 0;
- ctl.buf = bufp;
-
- strgetmsg(fd, &ctl, (struct strbuf*)NULL, &flags, "dlokack");
-
- dlp = (union DL_primitives *) ctl.buf;
-
- expecting(DL_OK_ACK, dlp);
-
- if (ctl.len < sizeof (dl_ok_ack_t)) {
- char buffer[256];
- sprintf(buffer, "dlokack: response ctl.len too short: %d", ctl.len);
- rp_fatal(buffer);
- }
-
- if (flags != RS_HIPRI)
- rp_fatal("dlokack: DL_OK_ACK was not M_PCPROTO");
-
- if (ctl.len < sizeof (dl_ok_ack_t)) {
- char buffer[256];
- sprintf(buffer, "dlokack: short response ctl.len: %d", ctl.len);
- rp_fatal(buffer);
- }
-}
-
-void dlbindack(int fd, char *bufp)
-{
- union DL_primitives *dlp;
- struct strbuf ctl;
- int flags;
-
- ctl.maxlen = MAXDLBUF;
- ctl.len = 0;
- ctl.buf = bufp;
-
- strgetmsg(fd, &ctl, (struct strbuf*)NULL, &flags, "dlbindack");
-
- dlp = (union DL_primitives *) ctl.buf;
-
- expecting(DL_BIND_ACK, dlp);
-
- if (flags != RS_HIPRI)
- rp_fatal("dlbindack: DL_OK_ACK was not M_PCPROTO");
-
- if (ctl.len < sizeof (dl_bind_ack_t)) {
- char buffer[256];
- sprintf(buffer, "dlbindack: short response ctl.len: %d", ctl.len);
- rp_fatal(buffer);
- }
-}
-
-int strioctl(int fd, int cmd, int timout, int len, char *dp)
-{
- struct strioctl sioc;
- int rc;
-
- sioc.ic_cmd = cmd;
- sioc.ic_timout = timout;
- sioc.ic_len = len;
- sioc.ic_dp = dp;
- rc = ioctl(fd, I_STR, &sioc);
-
- if (rc < 0)
- return (rc);
- else
- return (sioc.ic_len);
-}
-
-void strgetmsg(int fd, struct strbuf *ctlp, struct strbuf *datap, int *flagsp, char *caller)
-{
- int rc;
- static char errmsg[80];
-
- /*
- * Start timer.
- */
- (void) signal(SIGALRM, sigalrm);
- if (alarm(MAXWAIT) < 0) {
- (void) sprintf(errmsg, "%s: alarm", caller);
- fatalSys(errmsg);
- }
-
- /*
- * Set flags argument and issue getmsg().
- */
- *flagsp = 0;
- if ((rc = getmsg(fd, ctlp, datap, flagsp)) < 0) {
- (void) sprintf(errmsg, "%s: getmsg", caller);
- fatalSys(errmsg);
- }
-
- /*
- * Stop timer.
- */
- if (alarm(0) < 0) {
- (void) sprintf(errmsg, "%s: alarm", caller);
- fatalSys(errmsg);
- }
-
- /*
- * Check for MOREDATA and/or MORECTL.
- */
- if ((rc & (MORECTL | MOREDATA)) == (MORECTL | MOREDATA)) {
- char buffer[256];
- sprintf(buffer, "%s: MORECTL|MOREDATA", caller);
- rp_fatal(buffer);
- }
-
- if (rc & MORECTL) {
- char buffer[256];
- sprintf(buffer, "%s: MORECTL", caller);
- rp_fatal(buffer);
- }
-
- if (rc & MOREDATA) {
- char buffer[256];
- sprintf(buffer, "%s: MOREDATA", caller);
- rp_fatal(buffer);
- }
-
- /*
- * Check for at least sizeof (long) control data portion.
- */
- if (ctlp->len < sizeof (long)) {
- char buffer[256];
- sprintf(buffer, "getmsg: control portion length < sizeof (long): %d", ctlp->len);
- rp_fatal(buffer);
- }
-}
-
-void sigalrm(int sig)
-{
- (void) rp_fatal("sigalrm: TIMEOUT");
-}
-
-void expecting(int prim, union DL_primitives *dlp)
-{
- if (dlp->dl_primitive != (u_long)prim) {
- char buffer[256];
- sprintf(buffer, "expected %s got %s", dlprim(prim), dlprim(dlp->dl_primitive));
- rp_fatal(buffer);
- exit(1);
- }
-}
-
-char *dlprim(u_long prim)
-{
- static char primbuf[80];
-
- switch ((int)prim) {
- CASERET(DL_INFO_REQ);
- CASERET(DL_INFO_ACK);
- CASERET(DL_ATTACH_REQ);
- CASERET(DL_DETACH_REQ);
- CASERET(DL_BIND_REQ);
- CASERET(DL_BIND_ACK);
- CASERET(DL_UNBIND_REQ);
- CASERET(DL_OK_ACK);
- CASERET(DL_ERROR_ACK);
- CASERET(DL_SUBS_BIND_REQ);
- CASERET(DL_SUBS_BIND_ACK);
- CASERET(DL_UNITDATA_REQ);
- CASERET(DL_UNITDATA_IND);
- CASERET(DL_UDERROR_IND);
- CASERET(DL_UDQOS_REQ);
- CASERET(DL_CONNECT_REQ);
- CASERET(DL_CONNECT_IND);
- CASERET(DL_CONNECT_RES);
- CASERET(DL_CONNECT_CON);
- CASERET(DL_TOKEN_REQ);
- CASERET(DL_TOKEN_ACK);
- CASERET(DL_DISCONNECT_REQ);
- CASERET(DL_DISCONNECT_IND);
- CASERET(DL_RESET_REQ);
- CASERET(DL_RESET_IND);
- CASERET(DL_RESET_RES);
- CASERET(DL_RESET_CON);
- default:
- (void) sprintf(primbuf, "unknown primitive 0x%lx", prim);
- return (primbuf);
- }
-}
-
-#endif /* USE_DLPI */
diff --git a/mdk-stage1/rp-pppoe/src/install-sh b/mdk-stage1/rp-pppoe/src/install-sh
deleted file mode 100755
index 58719246f..000000000
--- a/mdk-stage1/rp-pppoe/src/install-sh
+++ /dev/null
@@ -1,238 +0,0 @@
-#! /bin/sh
-#
-# install - install a program, script, or datafile
-# This comes from X11R5.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.
-#
-
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit="${DOITPROG-}"
-
-
-# put in absolute paths if you don't have them in your path; or use env. vars.
-
-mvprog="${MVPROG-mv}"
-cpprog="${CPPROG-cp}"
-chmodprog="${CHMODPROG-chmod}"
-chownprog="${CHOWNPROG-chown}"
-chgrpprog="${CHGRPPROG-chgrp}"
-stripprog="${STRIPPROG-strip}"
-rmprog="${RMPROG-rm}"
-mkdirprog="${MKDIRPROG-mkdir}"
-
-transformbasename=""
-transform_arg=""
-instcmd="$mvprog"
-chmodcmd="$chmodprog 0755"
-chowncmd=""
-chgrpcmd=""
-stripcmd=""
-rmcmd="$rmprog -f"
-mvcmd="$mvprog"
-src=""
-dst=""
-dir_arg=""
-
-while [ x"$1" != x ]; do
- case $1 in
- -c) instcmd="$cpprog"
- shift
- continue;;
-
- -d) dir_arg=true
- shift
- continue;;
-
- -m) chmodcmd="$chmodprog $2"
- shift
- shift
- continue;;
-
- -o) chowncmd="$chownprog $2"
- shift
- shift
- continue;;
-
- -g) chgrpcmd="$chgrpprog $2"
- shift
- shift
- continue;;
-
- -s) stripcmd="$stripprog"
- shift
- continue;;
-
- -t=*) transformarg=`echo $1 | sed 's/-t=//'`
- shift
- continue;;
-
- -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
- shift
- continue;;
-
- *) if [ x"$src" = x ]
- then
- src=$1
- else
- # this colon is to work around a 386BSD /bin/sh bug
- :
- dst=$1
- fi
- shift
- continue;;
- esac
-done
-
-if [ x"$src" = x ]
-then
- echo "install: no input file specified"
- exit 1
-else
- true
-fi
-
-if [ x"$dir_arg" != x ]; then
- dst=$src
- src=""
-
- if [ -d $dst ]; then
- instcmd=:
- else
- instcmd=mkdir
- fi
-else
-
-# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
-# might cause directories to be created, which would be especially bad
-# if $src (and thus $dsttmp) contains '*'.
-
- if [ -f $src -o -d $src ]
- then
- true
- else
- echo "install: $src does not exist"
- exit 1
- fi
-
- if [ x"$dst" = x ]
- then
- echo "install: no destination specified"
- exit 1
- else
- true
- fi
-
-# If destination is a directory, append the input filename; if your system
-# does not like double slashes in filenames, you may need to add some logic
-
- if [ -d $dst ]
- then
- dst="$dst"/`basename $src`
- else
- true
- fi
-fi
-
-## this sed command emulates the dirname command
-dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
-
-# Make sure that the destination directory exists.
-# this part is taken from Noah Friedman's mkinstalldirs script
-
-# Skip lots of stat calls in the usual case.
-if [ ! -d "$dstdir" ]; then
-defaultIFS='
-'
-IFS="${IFS-${defaultIFS}}"
-
-oIFS="${IFS}"
-# Some sh's can't handle IFS=/ for some reason.
-IFS='%'
-set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
-IFS="${oIFS}"
-
-pathcomp=''
-
-while [ $# -ne 0 ] ; do
- pathcomp="${pathcomp}${1}"
- shift
-
- if [ ! -d "${pathcomp}" ] ;
- then
- $mkdirprog "${pathcomp}"
- else
- true
- fi
-
- pathcomp="${pathcomp}/"
-done
-fi
-
-if [ x"$dir_arg" != x ]
-then
- $doit $instcmd $dst &&
-
- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
-else
-
-# If we're going to rename the final executable, determine the name now.
-
- if [ x"$transformarg" = x ]
- then
- dstfile=`basename $dst`
- else
- dstfile=`basename $dst $transformbasename |
- sed $transformarg`$transformbasename
- fi
-
-# don't allow the sed command to completely eliminate the filename
-
- if [ x"$dstfile" = x ]
- then
- dstfile=`basename $dst`
- else
- true
- fi
-
-# Make a temp file name in the proper directory.
-
- dsttmp=$dstdir/#inst.$$#
-
-# Move or copy the file name to the temp name
-
- $doit $instcmd $src $dsttmp &&
-
- trap "rm -f ${dsttmp}" 0 &&
-
-# and set any options; do chmod last to preserve setuid bits
-
-# If any of these fail, we abort the whole thing. If we want to
-# ignore errors from any of these, just make sure not to ignore
-# errors from the above "$doit $instcmd $src $dsttmp" command.
-
- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
-
-# Now rename the file to the real destination.
-
- $doit $rmcmd -f $dstdir/$dstfile &&
- $doit $mvcmd $dsttmp $dstdir/$dstfile
-
-fi &&
-
-
-exit 0
diff --git a/mdk-stage1/rp-pppoe/src/md5.c b/mdk-stage1/rp-pppoe/src/md5.c
deleted file mode 100644
index 5b7a0d7b2..000000000
--- a/mdk-stage1/rp-pppoe/src/md5.c
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
- * This code implements the MD5 message-digest algorithm.
- * The algorithm is due to Ron Rivest. This code was
- * written by Colin Plumb in 1993, no copyright is claimed.
- * This code is in the public domain; do with it what you wish.
- *
- * Equivalent code is available from RSA Data Security, Inc.
- * This code has been tested against that, and is equivalent,
- * except that you don't need to include two pages of legalese
- * with every copy.
- *
- * To compute the message digest of a chunk of bytes, declare an
- * MD5Context structure, pass it to MD5Init, call MD5Update as
- * needed on buffers full of bytes, and then call MD5Final, which
- * will fill a supplied 16-byte array with the digest.
- */
-#include <string.h> /* for memcpy() */
-#include "md5.h"
-
-void byteReverse(unsigned char *buf, unsigned longs);
-
-/*
- * Note: this code is harmless on little-endian machines.
- */
-void byteReverse(unsigned char *buf, unsigned longs)
-{
- uint32 t;
- do {
- t = (uint32) ((unsigned) buf[3] << 8 | buf[2]) << 16 |
- ((unsigned) buf[1] << 8 | buf[0]);
- *(uint32 *) buf = t;
- buf += 4;
- } while (--longs);
-}
-
-/*
- * Start MD5 accumulation. Set bit count to 0 and buffer to mysterious
- * initialization constants.
- */
-void MD5Init(struct MD5Context *ctx)
-{
- ctx->buf[0] = 0x67452301;
- ctx->buf[1] = 0xefcdab89;
- ctx->buf[2] = 0x98badcfe;
- ctx->buf[3] = 0x10325476;
-
- ctx->bits[0] = 0;
- ctx->bits[1] = 0;
-}
-
-/*
- * Update context to reflect the concatenation of another buffer full
- * of bytes.
- */
-void MD5Update(struct MD5Context *ctx, unsigned char const *buf, unsigned len)
-{
- uint32 t;
-
- /* Update bitcount */
-
- t = ctx->bits[0];
- if ((ctx->bits[0] = t + ((uint32) len << 3)) < t)
- ctx->bits[1]++; /* Carry from low to high */
- ctx->bits[1] += len >> 29;
-
- t = (t >> 3) & 0x3f; /* Bytes already in shsInfo->data */
-
- /* Handle any leading odd-sized chunks */
-
- if (t) {
- unsigned char *p = (unsigned char *) ctx->in + t;
-
- t = 64 - t;
- if (len < t) {
- memcpy(p, buf, len);
- return;
- }
- memcpy(p, buf, t);
- byteReverse(ctx->in, 16);
- MD5Transform(ctx->buf, (uint32 *) ctx->in);
- buf += t;
- len -= t;
- }
- /* Process data in 64-byte chunks */
-
- while (len >= 64) {
- memcpy(ctx->in, buf, 64);
- byteReverse(ctx->in, 16);
- MD5Transform(ctx->buf, (uint32 *) ctx->in);
- buf += 64;
- len -= 64;
- }
-
- /* Handle any remaining bytes of data. */
-
- memcpy(ctx->in, buf, len);
-}
-
-/*
- * Final wrapup - pad to 64-byte boundary with the bit pattern
- * 1 0* (64-bit count of bits processed, MSB-first)
- */
-void MD5Final(unsigned char digest[16], struct MD5Context *ctx)
-{
- unsigned count;
- unsigned char *p;
-
- /* Compute number of bytes mod 64 */
- count = (ctx->bits[0] >> 3) & 0x3F;
-
- /* Set the first char of padding to 0x80. This is safe since there is
- always at least one byte free */
- p = ctx->in + count;
- *p++ = 0x80;
-
- /* Bytes of padding needed to make 64 bytes */
- count = 64 - 1 - count;
-
- /* Pad out to 56 mod 64 */
- if (count < 8) {
- /* Two lots of padding: Pad the first block to 64 bytes */
- memset(p, 0, count);
- byteReverse(ctx->in, 16);
- MD5Transform(ctx->buf, (uint32 *) ctx->in);
-
- /* Now fill the next block with 56 bytes */
- memset(ctx->in, 0, 56);
- } else {
- /* Pad block to 56 bytes */
- memset(p, 0, count - 8);
- }
- byteReverse(ctx->in, 14);
-
- /* Append length in bits and transform */
- ((uint32 *) ctx->in)[14] = ctx->bits[0];
- ((uint32 *) ctx->in)[15] = ctx->bits[1];
-
- MD5Transform(ctx->buf, (uint32 *) ctx->in);
- byteReverse((unsigned char *) ctx->buf, 4);
- memcpy(digest, ctx->buf, 16);
- memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */
-}
-
-#ifndef ASM_MD5
-
-/* The four core functions - F1 is optimized somewhat */
-
-/* #define F1(x, y, z) (x & y | ~x & z) */
-#define F1(x, y, z) (z ^ (x & (y ^ z)))
-#define F2(x, y, z) F1(z, x, y)
-#define F3(x, y, z) (x ^ y ^ z)
-#define F4(x, y, z) (y ^ (x | ~z))
-
-/* This is the central step in the MD5 algorithm. */
-#define MD5STEP(f, w, x, y, z, data, s) \
- ( w += f(x, y, z) + data, w = w<<s | w>>(32-s), w += x )
-
-/*
- * The core of the MD5 algorithm, this alters an existing MD5 hash to
- * reflect the addition of 16 longwords of new data. MD5Update blocks
- * the data and converts bytes into longwords for this routine.
- */
-void MD5Transform(uint32 buf[4], uint32 const in[16])
-{
- register uint32 a, b, c, d;
-
- a = buf[0];
- b = buf[1];
- c = buf[2];
- d = buf[3];
-
- MD5STEP(F1, a, b, c, d, in[0] + 0xd76aa478, 7);
- MD5STEP(F1, d, a, b, c, in[1] + 0xe8c7b756, 12);
- MD5STEP(F1, c, d, a, b, in[2] + 0x242070db, 17);
- MD5STEP(F1, b, c, d, a, in[3] + 0xc1bdceee, 22);
- MD5STEP(F1, a, b, c, d, in[4] + 0xf57c0faf, 7);
- MD5STEP(F1, d, a, b, c, in[5] + 0x4787c62a, 12);
- MD5STEP(F1, c, d, a, b, in[6] + 0xa8304613, 17);
- MD5STEP(F1, b, c, d, a, in[7] + 0xfd469501, 22);
- MD5STEP(F1, a, b, c, d, in[8] + 0x698098d8, 7);
- MD5STEP(F1, d, a, b, c, in[9] + 0x8b44f7af, 12);
- MD5STEP(F1, c, d, a, b, in[10] + 0xffff5bb1, 17);
- MD5STEP(F1, b, c, d, a, in[11] + 0x895cd7be, 22);
- MD5STEP(F1, a, b, c, d, in[12] + 0x6b901122, 7);
- MD5STEP(F1, d, a, b, c, in[13] + 0xfd987193, 12);
- MD5STEP(F1, c, d, a, b, in[14] + 0xa679438e, 17);
- MD5STEP(F1, b, c, d, a, in[15] + 0x49b40821, 22);
-
- MD5STEP(F2, a, b, c, d, in[1] + 0xf61e2562, 5);
- MD5STEP(F2, d, a, b, c, in[6] + 0xc040b340, 9);
- MD5STEP(F2, c, d, a, b, in[11] + 0x265e5a51, 14);
- MD5STEP(F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20);
- MD5STEP(F2, a, b, c, d, in[5] + 0xd62f105d, 5);
- MD5STEP(F2, d, a, b, c, in[10] + 0x02441453, 9);
- MD5STEP(F2, c, d, a, b, in[15] + 0xd8a1e681, 14);
- MD5STEP(F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20);
- MD5STEP(F2, a, b, c, d, in[9] + 0x21e1cde6, 5);
- MD5STEP(F2, d, a, b, c, in[14] + 0xc33707d6, 9);
- MD5STEP(F2, c, d, a, b, in[3] + 0xf4d50d87, 14);
- MD5STEP(F2, b, c, d, a, in[8] + 0x455a14ed, 20);
- MD5STEP(F2, a, b, c, d, in[13] + 0xa9e3e905, 5);
- MD5STEP(F2, d, a, b, c, in[2] + 0xfcefa3f8, 9);
- MD5STEP(F2, c, d, a, b, in[7] + 0x676f02d9, 14);
- MD5STEP(F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20);
-
- MD5STEP(F3, a, b, c, d, in[5] + 0xfffa3942, 4);
- MD5STEP(F3, d, a, b, c, in[8] + 0x8771f681, 11);
- MD5STEP(F3, c, d, a, b, in[11] + 0x6d9d6122, 16);
- MD5STEP(F3, b, c, d, a, in[14] + 0xfde5380c, 23);
- MD5STEP(F3, a, b, c, d, in[1] + 0xa4beea44, 4);
- MD5STEP(F3, d, a, b, c, in[4] + 0x4bdecfa9, 11);
- MD5STEP(F3, c, d, a, b, in[7] + 0xf6bb4b60, 16);
- MD5STEP(F3, b, c, d, a, in[10] + 0xbebfbc70, 23);
- MD5STEP(F3, a, b, c, d, in[13] + 0x289b7ec6, 4);
- MD5STEP(F3, d, a, b, c, in[0] + 0xeaa127fa, 11);
- MD5STEP(F3, c, d, a, b, in[3] + 0xd4ef3085, 16);
- MD5STEP(F3, b, c, d, a, in[6] + 0x04881d05, 23);
- MD5STEP(F3, a, b, c, d, in[9] + 0xd9d4d039, 4);
- MD5STEP(F3, d, a, b, c, in[12] + 0xe6db99e5, 11);
- MD5STEP(F3, c, d, a, b, in[15] + 0x1fa27cf8, 16);
- MD5STEP(F3, b, c, d, a, in[2] + 0xc4ac5665, 23);
-
- MD5STEP(F4, a, b, c, d, in[0] + 0xf4292244, 6);
- MD5STEP(F4, d, a, b, c, in[7] + 0x432aff97, 10);
- MD5STEP(F4, c, d, a, b, in[14] + 0xab9423a7, 15);
- MD5STEP(F4, b, c, d, a, in[5] + 0xfc93a039, 21);
- MD5STEP(F4, a, b, c, d, in[12] + 0x655b59c3, 6);
- MD5STEP(F4, d, a, b, c, in[3] + 0x8f0ccc92, 10);
- MD5STEP(F4, c, d, a, b, in[10] + 0xffeff47d, 15);
- MD5STEP(F4, b, c, d, a, in[1] + 0x85845dd1, 21);
- MD5STEP(F4, a, b, c, d, in[8] + 0x6fa87e4f, 6);
- MD5STEP(F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10);
- MD5STEP(F4, c, d, a, b, in[6] + 0xa3014314, 15);
- MD5STEP(F4, b, c, d, a, in[13] + 0x4e0811a1, 21);
- MD5STEP(F4, a, b, c, d, in[4] + 0xf7537e82, 6);
- MD5STEP(F4, d, a, b, c, in[11] + 0xbd3af235, 10);
- MD5STEP(F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15);
- MD5STEP(F4, b, c, d, a, in[9] + 0xeb86d391, 21);
-
- buf[0] += a;
- buf[1] += b;
- buf[2] += c;
- buf[3] += d;
-}
-
-#endif
diff --git a/mdk-stage1/rp-pppoe/src/md5.h b/mdk-stage1/rp-pppoe/src/md5.h
deleted file mode 100644
index e264f686d..000000000
--- a/mdk-stage1/rp-pppoe/src/md5.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef MD5_H
-#define MD5_H
-
-#ifdef __alpha
-typedef unsigned int uint32;
-#else
-typedef unsigned long uint32;
-#endif
-
-struct MD5Context {
- uint32 buf[4];
- uint32 bits[2];
- unsigned char in[64];
-};
-
-void MD5Init(struct MD5Context *context);
-void MD5Update(struct MD5Context *context, unsigned char const *buf,
- unsigned len);
-void MD5Final(unsigned char digest[16], struct MD5Context *context);
-void MD5Transform(uint32 buf[4], uint32 const in[16]);
-
-/*
- * This is needed to make RSAREF happy on some MS-DOS compilers.
- */
-typedef struct MD5Context MD5_CTX;
-
-#endif /* !MD5_H */
diff --git a/mdk-stage1/rp-pppoe/src/plugin.c b/mdk-stage1/rp-pppoe/src/plugin.c
deleted file mode 100644
index d1097e291..000000000
--- a/mdk-stage1/rp-pppoe/src/plugin.c
+++ /dev/null
@@ -1,397 +0,0 @@
-/***********************************************************************
-*
-* plugin.c
-*
-* pppd plugin for kernel-mode PPPoE on Linux
-*
-* Copyright (C) 2001 by Roaring Penguin Software Inc., Michal Ostrowski
-* and Jamal Hadi Salim.
-*
-* Much code and many ideas derived from pppoe plugin by Michal
-* Ostrowski and Jamal Hadi Salim, which carries this copyright:
-*
-* Copyright 2000 Michal Ostrowski <mostrows@styx.uwaterloo.ca>,
-* Jamal Hadi Salim <hadi@cyberus.ca>
-* Borrows heavily from the PPPoATM plugin by Mitchell Blank Jr.,
-* which is based in part on work from Jens Axboe and Paul Mackerras.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version
-* 2 of the License, or (at your option) any later version.
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#define _GNU_SOURCE 1
-#include "pppoe.h"
-
-#include "pppd/pppd.h"
-#include "pppd/fsm.h"
-#include "pppd/lcp.h"
-#include "pppd/ipcp.h"
-#include "pppd/ccp.h"
-#include "pppd/pathnames.h"
-
-#include <linux/types.h>
-#include <syslog.h>
-#include <sys/ioctl.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <sys/stat.h>
-#include <string.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <signal.h>
-#include <net/ethernet.h>
-#include <net/if_arp.h>
-#include <linux/if_pppox.h>
-
-/* From sys-linux.c in pppd -- MUST FIX THIS! */
-extern int new_style_driver;
-
-static char *service = NULL;
-static char *acName = NULL;
-static char *existingSession = NULL;
-
-static option_t Options[] = {
- { "rp_pppoe_service", o_string, &service,
- "Desired PPPoE service name" },
- { "rp_pppoe_ac", o_string, &acName,
- "Desired PPPoE access concentrator name" },
- { "rp_pppoe_sess", o_string, &existingSession,
- "Attach to existing session (sessid:macaddr)" },
- { NULL }
-};
-int (*OldDevnameHook)(const char *name) = NULL;
-static PPPoEConnection *conn = NULL;
-
-/**********************************************************************
- * %FUNCTION: PPPOEInitDevice
- * %ARGUMENTS:
- * None
- * %RETURNS:
- *
- * %DESCRIPTION:
- * Initializes PPPoE device.
- ***********************************************************************/
-static int
-PPPOEInitDevice(void)
-{
- conn = malloc(sizeof(PPPoEConnection));
- if (!conn) {
- fatal("Could not allocate memory for PPPoE session");
- }
- memset(conn, 0, sizeof(PPPoEConnection));
- if (acName) {
- SET_STRING(conn->acName, acName);
- }
- if (service) {
- SET_STRING(conn->serviceName, acName);
- }
- SET_STRING(conn->ifName, devnam);
- conn->discoverySocket = -1;
- conn->sessionSocket = -1;
- conn->useHostUniq = 1;
- return 1;
-}
-
-/**********************************************************************
- * %FUNCTION: PPPOEConnectDevice
- * %ARGUMENTS:
- * None
- * %RETURNS:
- * Non-negative if all goes well; -1 otherwise
- * %DESCRIPTION:
- * Connects PPPoE device.
- ***********************************************************************/
-static int
-PPPOEConnectDevice(void)
-{
- struct sockaddr_pppox sp;
-
- strlcpy(ppp_devnam, devnam, sizeof(ppp_devnam));
- if (existingSession) {
- unsigned int mac[ETH_ALEN];
- int i, ses;
- if (sscanf(existingSession, "%d:%x:%x:%x:%x:%x:%x",
- &ses, &mac[0], &mac[1], &mac[2],
- &mac[3], &mac[4], &mac[5]) != 7) {
- fatal("Illegal value for rp_pppoe_sess option");
- }
- conn->session = htons(ses);
- for (i=0; i<ETH_ALEN; i++) {
- conn->peerEth[i] = (unsigned char) mac[i];
- }
- } else {
- discovery(conn);
- if (conn->discoveryState != STATE_SESSION) {
- fatal("Unable to complete PPPoE Discovery");
- }
- }
-
- /* Make the session socket */
- conn->sessionSocket = socket(AF_PPPOX, SOCK_STREAM, PX_PROTO_OE);
- if (conn->sessionSocket < 0) {
- fatal("Failed to create PPPoE socket: %m");
- }
- sp.sa_family = AF_PPPOX;
- sp.sa_protocol = PX_PROTO_OE;
- sp.sa_addr.pppoe.sid = conn->session;
- memcpy(sp.sa_addr.pppoe.dev, conn->ifName, IFNAMSIZ);
- memcpy(sp.sa_addr.pppoe.remote, conn->peerEth, ETH_ALEN);
- if (connect(conn->sessionSocket, (struct sockaddr *) &sp,
- sizeof(struct sockaddr_pppox)) < 0) {
- fatal("Failed to connect PPPoE socket: %d %m", errno);
- return -1;
- }
- return conn->sessionSocket;
-}
-
-static void
-PPPOESendConfig(int unit,
- int mtu,
- u_int32_t asyncmap,
- int pcomp,
- int accomp)
-{
- int sock;
- struct ifreq ifr;
-
- if (mtu > MAX_PPPOE_MTU) {
- warn("Couldn't increase MTU to %d", mtu);
- }
- sock = socket(AF_INET, SOCK_DGRAM, 0);
- if (sock < 0) {
- fatal("Couldn't create IP socket: %m");
- }
- strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
- ifr.ifr_mtu = mtu;
- if (ioctl(sock, SIOCSIFMTU, &ifr) < 0) {
- fatal("ioctl(SIOCSIFMTU): %m");
- }
- (void) close (sock);
-}
-
-
-static void
-PPPOERecvConfig(int unit,
- int mru,
- u_int32_t asyncmap,
- int pcomp,
- int accomp)
-{
- if (mru > MAX_PPPOE_MTU) {
- error("Couldn't increase MRU to %d", mru);
- }
-}
-
-static void
-PPPOESetXaccm(int unit,
- ext_accm accm)
-{
- /* Do nothing */
-}
-
-/**********************************************************************
- * %FUNCTION: PPPOEDisconnectDevice
- * %ARGUMENTS:
- * None
- * %RETURNS:
- * Nothing
- * %DESCRIPTION:
- * Disconnects PPPoE device
- ***********************************************************************/
-static void
-PPPOEDisconnectDevice(void)
-{
- struct sockaddr_pppox sp;
-
- sp.sa_family = AF_PPPOX;
- sp.sa_protocol = PX_PROTO_OE;
- sp.sa_addr.pppoe.sid = 0;
- memcpy(sp.sa_addr.pppoe.dev, conn->ifName, IFNAMSIZ);
- memcpy(sp.sa_addr.pppoe.remote, conn->peerEth, ETH_ALEN);
- if (connect(conn->sessionSocket, (struct sockaddr *) &sp,
- sizeof(struct sockaddr_pppox)) < 0) {
- fatal("Failed to disconnect PPPoE socket: %d %m", errno);
- return;
- }
- close(conn->sessionSocket);
-}
-
-static int
-PPPOESetSpeed(const char *speed)
-{
- return 0;
-}
-
-static void
-PPPOEDeviceCheckHook(void)
-{
- if (!options_for_dev(_PATH_ETHOPT, devnam)) {
- exit(EXIT_OPTION_ERROR);
- }
-}
-
-/**********************************************************************
- * %FUNCTION: PPPoEDevnameHook
- * %ARGUMENTS:
- * name -- name of device
- * %RETURNS:
- * 1 if we will handle this device; 0 otherwise.
- * %DESCRIPTION:
- * Checks if name is a valid interface name; if so, returns 1. Also
- * sets up devnam (string representation of device) and sets devstat.st_mode
- * so S_ISCHR(devstat.st_mode) != 1 for internal pppd consumption.
- ***********************************************************************/
-static int
-PPPoEDevnameHook(const char *name)
-{
- int r = 1;
- int fd;
- struct ifreq ifr;
-
- /* Open a socket */
- if ((fd = socket(PF_PACKET, SOCK_RAW, 0)) < 0) {
- r = 0;
- }
-
- /* Try getting interface index */
- if (r) {
- strncpy(ifr.ifr_name, name, sizeof(ifr.ifr_name));
- if (ioctl(fd, SIOCGIFINDEX, &ifr) < 0) {
- r = 0;
- } else {
- if (ioctl(fd, SIOCGIFHWADDR, &ifr) < 0) {
- r = 0;
- } else {
- if (ifr.ifr_hwaddr.sa_family != ARPHRD_ETHER) {
- error("Interface %s not Ethernet", name);
- r=0;
- }
- }
- }
- }
-
- /* Close socket */
- close(fd);
- if (r) {
- strncpy(devnam, name, sizeof(devnam));
- if (device_check_hook != PPPOEDeviceCheckHook) {
- devstat.st_mode = S_IFSOCK;
- device_init_hook = PPPOEInitDevice;
- setspeed_hook = PPPOESetSpeed;
- device_check_hook = PPPOEDeviceCheckHook;
- connect_device_hook = PPPOEConnectDevice;
- disconnect_device_hook = PPPOEDisconnectDevice;
- send_config_hook = PPPOESendConfig;
- recv_config_hook = PPPOERecvConfig;
- set_xaccm_hook = PPPOESetXaccm;
- modem = 0;
-
- lcp_allowoptions[0].neg_accompression = 0;
- lcp_wantoptions[0].neg_accompression = 0;
-
- lcp_allowoptions[0].neg_asyncmap = 0;
- lcp_wantoptions[0].neg_asyncmap = 0;
-
- lcp_allowoptions[0].neg_pcompression = 0;
- lcp_wantoptions[0].neg_pcompression = 0;
-
- ccp_allowoptions[0].deflate = 0 ;
- ccp_wantoptions[0].deflate = 0 ;
-
- ipcp_allowoptions[0].neg_vj=0;
- ipcp_wantoptions[0].neg_vj=0;
-
- ccp_allowoptions[0].bsd_compress = 0;
- ccp_wantoptions[0].bsd_compress = 0;
-
- PPPOEInitDevice();
- }
- return 1;
- }
-
- if (OldDevnameHook) r = OldDevnameHook(name);
- return r;
-}
-
-/**********************************************************************
- * %FUNCTION: plugin_init
- * %ARGUMENTS:
- * None
- * %RETURNS:
- * Nothing
- * %DESCRIPTION:
- * Initializes hooks for pppd plugin
- ***********************************************************************/
-void
-plugin_init(void)
-{
- if (!new_style_driver) {
- fatal("Linux kernel does not support PPPoE -- are you running 2.4.x?");
- }
- OldDevnameHook = setdevname_hook;
- setdevname_hook = PPPoEDevnameHook;
- add_options(Options);
-
- info("Roaring Penguin PPPoE Plugin Initialized");
-}
-
-/**********************************************************************
-*%FUNCTION: fatalSys
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to stderr and syslog and exits.
-***********************************************************************/
-void
-fatalSys(char const *str)
-{
- char buf[1024];
- int i = errno;
- sprintf(buf, "%.256s: %.256s", str, strerror(i));
- printErr(buf);
- sprintf(buf, "RP-PPPoE: %.256s: %.256s", str, strerror(i));
- sendPADT(conn, buf);
- exit(1);
-}
-
-/**********************************************************************
-*%FUNCTION: rp_fatal
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message to stderr and syslog and exits.
-***********************************************************************/
-void
-rp_fatal(char const *str)
-{
- char buf[1024];
- printErr(str);
- sprintf(buf, "RP-PPPoE: %.256s", str);
- sendPADT(conn, buf);
- exit(1);
-}
-/**********************************************************************
-*%FUNCTION: sysErr
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to syslog.
-***********************************************************************/
-void
-sysErr(char const *str)
-{
- rp_fatal(str);
-}
diff --git a/mdk-stage1/rp-pppoe/src/ppp.c b/mdk-stage1/rp-pppoe/src/ppp.c
deleted file mode 100644
index 72020a76c..000000000
--- a/mdk-stage1/rp-pppoe/src/ppp.c
+++ /dev/null
@@ -1,258 +0,0 @@
-/***********************************************************************
-*
-* ppp.c
-*
-* Implementation of user-space PPPoE redirector for Linux.
-*
-* Functions for talking to PPP daemon
-*
-* Copyright (C) 2000 by Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#include "pppoe.h"
-
-#ifdef HAVE_SYSLOG_H
-#include <syslog.h>
-#endif
-
-#include <string.h>
-#include <errno.h>
-#include <stdlib.h>
-
-#ifdef HAVE_SYS_UIO_H
-#include <sys/uio.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_N_HDLC
-#ifndef N_HDLC
-#include <linux/termios.h>
-#endif
-#endif
-
-int PPPState;
-int PPPPacketSize;
-unsigned char PPPXorValue;
-
-UINT16_t fcstab[256] = {
- 0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf,
- 0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5, 0xe97e, 0xf8f7,
- 0x1081, 0x0108, 0x3393, 0x221a, 0x56a5, 0x472c, 0x75b7, 0x643e,
- 0x9cc9, 0x8d40, 0xbfdb, 0xae52, 0xdaed, 0xcb64, 0xf9ff, 0xe876,
- 0x2102, 0x308b, 0x0210, 0x1399, 0x6726, 0x76af, 0x4434, 0x55bd,
- 0xad4a, 0xbcc3, 0x8e58, 0x9fd1, 0xeb6e, 0xfae7, 0xc87c, 0xd9f5,
- 0x3183, 0x200a, 0x1291, 0x0318, 0x77a7, 0x662e, 0x54b5, 0x453c,
- 0xbdcb, 0xac42, 0x9ed9, 0x8f50, 0xfbef, 0xea66, 0xd8fd, 0xc974,
- 0x4204, 0x538d, 0x6116, 0x709f, 0x0420, 0x15a9, 0x2732, 0x36bb,
- 0xce4c, 0xdfc5, 0xed5e, 0xfcd7, 0x8868, 0x99e1, 0xab7a, 0xbaf3,
- 0x5285, 0x430c, 0x7197, 0x601e, 0x14a1, 0x0528, 0x37b3, 0x263a,
- 0xdecd, 0xcf44, 0xfddf, 0xec56, 0x98e9, 0x8960, 0xbbfb, 0xaa72,
- 0x6306, 0x728f, 0x4014, 0x519d, 0x2522, 0x34ab, 0x0630, 0x17b9,
- 0xef4e, 0xfec7, 0xcc5c, 0xddd5, 0xa96a, 0xb8e3, 0x8a78, 0x9bf1,
- 0x7387, 0x620e, 0x5095, 0x411c, 0x35a3, 0x242a, 0x16b1, 0x0738,
- 0xffcf, 0xee46, 0xdcdd, 0xcd54, 0xb9eb, 0xa862, 0x9af9, 0x8b70,
- 0x8408, 0x9581, 0xa71a, 0xb693, 0xc22c, 0xd3a5, 0xe13e, 0xf0b7,
- 0x0840, 0x19c9, 0x2b52, 0x3adb, 0x4e64, 0x5fed, 0x6d76, 0x7cff,
- 0x9489, 0x8500, 0xb79b, 0xa612, 0xd2ad, 0xc324, 0xf1bf, 0xe036,
- 0x18c1, 0x0948, 0x3bd3, 0x2a5a, 0x5ee5, 0x4f6c, 0x7df7, 0x6c7e,
- 0xa50a, 0xb483, 0x8618, 0x9791, 0xe32e, 0xf2a7, 0xc03c, 0xd1b5,
- 0x2942, 0x38cb, 0x0a50, 0x1bd9, 0x6f66, 0x7eef, 0x4c74, 0x5dfd,
- 0xb58b, 0xa402, 0x9699, 0x8710, 0xf3af, 0xe226, 0xd0bd, 0xc134,
- 0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c,
- 0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028, 0x91a1, 0xa33a, 0xb2b3,
- 0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb,
- 0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9, 0x8120, 0xb3bb, 0xa232,
- 0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a,
- 0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1,
- 0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb, 0x0e70, 0x1ff9,
- 0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab, 0xa022, 0x92b9, 0x8330,
- 0x7bc7, 0x6a4e, 0x58d5, 0x495c, 0x3de3, 0x2c6a, 0x1ef1, 0x0f78
-};
-
-/**********************************************************************
-*%FUNCTION: syncReadFromPPP
-*%ARGUMENTS:
-* conn -- PPPoEConnection structure
-* packet -- buffer in which to place PPPoE packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Reads from a synchronous PPP device and builds and transmits a PPPoE
-* packet
-***********************************************************************/
-void
-syncReadFromPPP(PPPoEConnection *conn, PPPoEPacket *packet)
-{
- int r;
-#ifndef HAVE_N_HDLC
- struct iovec vec[2];
- unsigned char dummy[2];
- vec[0].iov_base = (void *) dummy;
- vec[0].iov_len = 2;
- vec[1].iov_base = (void *) packet->payload;
- vec[1].iov_len = ETH_DATA_LEN - PPPOE_OVERHEAD;
-
- /* Use scatter-read to throw away the PPP frame address bytes */
- r = readv(0, vec, 2);
-#else
- /* Bloody hell... readv doesn't work with N_HDLC line discipline... GRR! */
- unsigned char buf[ETH_DATA_LEN - PPPOE_OVERHEAD + 2];
- r = read(0, buf, ETH_DATA_LEN - PPPOE_OVERHEAD + 2);
- if (r >= 2) {
- memcpy(packet->payload, buf+2, r-2);
- }
-#endif
- if (r < 0) {
- /* Catch the Linux "select" bug */
- if (errno == EAGAIN) {
- rp_fatal("Linux select bug hit! This message is harmless, but please ask the Linux kernel developers to fix it.");
- }
- fatalSys("read (syncReadFromPPP)");
- }
- if (r == 0) {
- syslog(LOG_INFO, "end-of-file in syncReadFromPPP");
- sendPADT(conn, "RP-PPPoE: EOF in syncReadFromPPP");
- exit(0);
- }
-
- if (r < 2) {
- rp_fatal("too few characters read from PPP (syncReadFromPPP)");
- }
-
- sendSessionPacket(conn, packet, r-2);
-}
-
-/**********************************************************************
-*%FUNCTION: initPPP
-*%ARGUMENTS:
-* None
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Initializes the PPP state machine
-***********************************************************************/
-void
-initPPP(void)
-{
- PPPState = STATE_WAITFOR_FRAME_ADDR;
- PPPPacketSize = 0;
- PPPXorValue = 0;
-
-}
-/**********************************************************************
-*%FUNCTION: asyncReadFromPPP
-*%ARGUMENTS:
-* conn -- PPPoEConnection structure
-* packet -- buffer in which to place PPPoE packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Reads from an async PPP device and builds a PPPoE packet to transmit
-***********************************************************************/
-void
-asyncReadFromPPP(PPPoEConnection *conn, PPPoEPacket *packet)
-{
- unsigned char buf[READ_CHUNK];
- unsigned char *ptr = buf;
- unsigned char c;
-
- int r;
-
- r = read(0, buf, READ_CHUNK);
- if (r < 0) {
- fatalSys("read (asyncReadFromPPP)");
- }
-
- if (r == 0) {
- syslog(LOG_INFO, "end-of-file in asyncReadFromPPP");
- sendPADT(conn, "RP-PPPoE: EOF in asyncReadFromPPP");
- exit(0);
- }
-
- while(r) {
- if (PPPState == STATE_WAITFOR_FRAME_ADDR) {
- while(r) {
- --r;
- if (*ptr++ == FRAME_ADDR) {
- PPPState = STATE_DROP_PROTO;
- break;
- }
- }
- }
-
- /* Still waiting... */
- if (PPPState == STATE_WAITFOR_FRAME_ADDR) return;
-
- while(r && PPPState == STATE_DROP_PROTO) {
- --r;
- if (*ptr++ == (FRAME_CTRL ^ FRAME_ENC)) {
- PPPState = STATE_BUILDING_PACKET;
- }
- }
-
- if (PPPState == STATE_DROP_PROTO) return;
-
- /* Start building frame */
- while(r && PPPState == STATE_BUILDING_PACKET) {
- --r;
- c = *ptr++;
- switch(c) {
- case FRAME_ESC:
- PPPXorValue = FRAME_ENC;
- break;
- case FRAME_FLAG:
- if (PPPPacketSize < 2) {
- rp_fatal("Packet too short from PPP (asyncReadFromPPP)");
- }
- sendSessionPacket(conn, packet, PPPPacketSize-2);
- PPPPacketSize = 0;
- PPPXorValue = 0;
- PPPState = STATE_WAITFOR_FRAME_ADDR;
- break;
- default:
- if (PPPPacketSize >= ETH_DATA_LEN - 4) {
- syslog(LOG_ERR, "Packet too big! Check MTU on PPP interface");
- PPPPacketSize = 0;
- PPPXorValue = 0;
- PPPState = STATE_WAITFOR_FRAME_ADDR;
- } else {
- packet->payload[PPPPacketSize++] = c ^ PPPXorValue;
- PPPXorValue = 0;
- }
- }
- }
- }
-}
-
-/**********************************************************************
-*%FUNCTION: pppFCS16
-*%ARGUMENTS:
-* fcs -- current fcs
-* cp -- a buffer's worth of data
-* len -- length of buffer "cp"
-*%RETURNS:
-* A new FCS
-*%DESCRIPTION:
-* Updates the PPP FCS.
-***********************************************************************/
-UINT16_t
-pppFCS16(UINT16_t fcs,
- unsigned char * cp,
- int len)
-{
- while (len--)
- fcs = (fcs >> 8) ^ fcstab[(fcs ^ *cp++) & 0xff];
-
- return (fcs);
-}
-
diff --git a/mdk-stage1/rp-pppoe/src/pppoe-server.c b/mdk-stage1/rp-pppoe/src/pppoe-server.c
deleted file mode 100644
index e43e63553..000000000
--- a/mdk-stage1/rp-pppoe/src/pppoe-server.c
+++ /dev/null
@@ -1,1247 +0,0 @@
-/***********************************************************************
-*
-* pppoe.h
-*
-* Implementation of a user-space PPPoE server
-*
-* Copyright (C) 2000 Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-* $Id$
-*
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#include "config.h"
-
-#if defined(HAVE_NETPACKET_PACKET_H) || defined(HAVE_LINUX_IF_PACKET_H)
-#define _POSIX_SOURCE 1 /* For sigaction defines */
-#endif
-
-#define _BSD_SOURCE 1 /* for gethostname */
-
-#include "pppoe.h"
-#include "md5.h"
-
-#ifdef HAVE_SYSLOG_H
-#include <syslog.h>
-#endif
-
-#include <errno.h>
-#include <string.h>
-#include <stdlib.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_GETOPT_H
-#include <getopt.h>
-#endif
-
-#ifdef HAVE_SYS_WAIT_H
-#include <sys/wait.h>
-#endif
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#include <signal.h>
-
-/* Hack for daemonizing */
-#define CLOSEFD 64
-
-/* Max. 64 sessions by default */
-#define DEFAULT_MAX_SESSIONS 64
-
-/* A list of client sessions */
-struct ClientSession *Sessions = NULL;
-
-/* The number of session slots */
-size_t NumSessionSlots;
-
-/* Offset of first session */
-size_t SessOffset = 0;
-
-/* Socket for client's discovery phases */
-int Socket = -1;
-
-/* Pipe written on reception of SIGCHLD */
-int Pipe[2] = {-1, -1};
-int ReapPending = 0;
-
-/* Synchronous mode */
-int Synchronous = 0;
-
-/* Random seed for cookie generation */
-#define SEED_LEN 16
-#define MD5_LEN 16
-#define COOKIE_LEN (MD5_LEN + sizeof(pid_t)) /* Cookie is 16-byte MD5 + PID of server */
-
-unsigned char CookieSeed[SEED_LEN];
-
-/* Default interface if no -I option given */
-#define DEFAULT_IF "eth0"
-char *IfName = NULL;
-
-/* Access concentrator name */
-char *ACName = NULL;
-
-/* Options to pass to pppoe process */
-char PppoeOptions[SMALLBUF] = "";
-
-/* Our local IP address */
-unsigned char LocalIP[IPV4ALEN] = {10, 0, 0, 1};
-unsigned char RemoteIP[IPV4ALEN] = {10, 67, 15, 1}; /* Counter STARTS here */
-
-PPPoETag hostUniq;
-PPPoETag relayId;
-PPPoETag receivedCookie;
-PPPoETag requestedService;
-
-#define HOSTNAMELEN 256
-
-static void startPPPD(struct ClientSession *sess);
-static void sendErrorPADS(int sock, unsigned char *source, unsigned char *dest,
- int errorTag, char *errorMsg);
-
-#define CHECK_ROOM(cursor, start, len) \
-do {\
- if (((cursor)-(start))+(len) > MAX_PPPOE_PAYLOAD) { \
- syslog(LOG_ERR, "Would create too-long packet"); \
- return; \
- } \
-} while(0)
-
-/* Use Linux kernel-mode PPPoE? */
-int UseLinuxKernelModePPPoE = 0;
-
-/**********************************************************************
-*%FUNCTION: parseAddressPool
-*%ARGUMENTS:
-* fname -- name of file containing IP address pool.
-* install -- if true, install IP addresses in sessions.
-*%RETURNS:
-* Number of valid IP addresses found.
-*%DESCRIPTION:
-* Reads a list of IP addresses from a file.
-***********************************************************************/
-static int
-parseAddressPool(char const *fname, int install)
-{
- FILE *fp = fopen(fname, "r");
- int numAddrs = 0;
- unsigned int a, b, c, d;
-
- if (!fp) {
- sysErr("Cannot open address pool file");
- }
-
- while (!feof(fp)) {
- if ((fscanf(fp, "%u.%u.%u.%u", &a, &b, &c, &d) == 4) &&
- a < 256 && b < 256 && c < 256 && d < 256) {
- if (install) {
- Sessions[numAddrs].ip[0] = (unsigned char) a;
- Sessions[numAddrs].ip[1] = (unsigned char) b;
- Sessions[numAddrs].ip[2] = (unsigned char) c;
- Sessions[numAddrs].ip[3] = (unsigned char) d;
- }
- numAddrs++;
- }
- }
- if (!numAddrs) {
- rp_fatal("No valid ip addresses found in pool file");
- }
- return numAddrs;
-}
-
-/**********************************************************************
-*%FUNCTION: parsePADITags
-*%ARGUMENTS:
-* type -- tag type
-* len -- tag length
-* data -- tag data
-* extra -- extra user data.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Picks interesting tags out of a PADI packet
-***********************************************************************/
-void
-parsePADITags(UINT16_t type, UINT16_t len, unsigned char *data,
- void *extra)
-{
- switch(type) {
- case TAG_SERVICE_NAME:
- /* Should do something -- currently ignored */
- break;
- case TAG_RELAY_SESSION_ID:
- relayId.type = htons(type);
- relayId.length = htons(len);
- memcpy(relayId.payload, data, len);
- break;
- case TAG_HOST_UNIQ:
- hostUniq.type = htons(type);
- hostUniq.length = htons(len);
- memcpy(hostUniq.payload, data, len);
- break;
- }
-}
-
-/**********************************************************************
-*%FUNCTION: parsePADRTags
-*%ARGUMENTS:
-* type -- tag type
-* len -- tag length
-* data -- tag data
-* extra -- extra user data.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Picks interesting tags out of a PADR packet
-***********************************************************************/
-void
-parsePADRTags(UINT16_t type, UINT16_t len, unsigned char *data,
- void *extra)
-{
- switch(type) {
- case TAG_RELAY_SESSION_ID:
- relayId.type = htons(type);
- relayId.length = htons(len);
- memcpy(relayId.payload, data, len);
- break;
- case TAG_HOST_UNIQ:
- hostUniq.type = htons(type);
- hostUniq.length = htons(len);
- memcpy(hostUniq.payload, data, len);
- break;
- case TAG_AC_COOKIE:
- receivedCookie.type = htons(type);
- receivedCookie.length = htons(len);
- memcpy(receivedCookie.payload, data, len);
- break;
- case TAG_SERVICE_NAME:
- requestedService.type = htons(type);
- requestedService.length = htons(len);
- memcpy(requestedService.payload, data, len);
- break;
- }
-}
-
-/**********************************************************************
-*%FUNCTION: findSession
-*%ARGUMENTS:
-* pid -- PID of child which owns session. If PID is 0, searches for
-* empty session slots.
-*%RETURNS:
-* A pointer to the session, or NULL if no such session found.
-*%DESCRIPTION:
-* Searches for specified session.
-**********************************************************************/
-struct ClientSession *
-findSession(pid_t pid)
-{
- size_t i;
- for (i=0; i<NumSessionSlots; i++) {
- if (Sessions[i].pid == pid) {
- return &Sessions[i];
- }
- }
- return NULL;
-}
-
-/**********************************************************************
-*%FUNCTION: reapSessions
-*%ARGUMENTS:
-* myAddr -- my Ethernet address
-* sock -- my discovery socket
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Reaps children which have exited and removes their sessions
-**********************************************************************/
-void
-reapSessions(unsigned char *myAddr, int sock)
-{
- int status;
- pid_t pid;
- struct ClientSession *session;
-
- /* Temporary structure for sending PADT's. */
- PPPoEConnection conn;
- memset(&conn, 0, sizeof(conn));
-
- /* Initialize fields of conn which do not depend on peer */
- memcpy(conn.myEth, myAddr, ETH_ALEN);
- conn.useHostUniq = 0;
- conn.discoverySocket = sock;
-
- while((pid = waitpid(-1, &status, WNOHANG)) > 0) {
- session = findSession(pid);
- if (!session) {
- syslog(LOG_ERR, "Child %d died but couldn't find session!",
- (int) pid);
- } else {
- syslog(LOG_INFO,
- "Session %d closed for client %02x:%02x:%02x:%02x:%02x:%02x (%d.%d.%d.%d)",
- ntohs(session->sess),
- session->eth[0], session->eth[1], session->eth[2],
- session->eth[3], session->eth[4], session->eth[5],
- (int) session->ip[0], (int) session->ip[1],
- (int) session->ip[2], (int) session->ip[3]);
- conn.session = session->sess;
- memcpy(conn.peerEth, session->eth, ETH_ALEN);
- if (session->recvdPADT) {
- sendPADT(&conn, "RP-PPPoE: Received PADT from peer");
- } else {
- sendPADT(&conn, "RP-PPPoE: Child pppd process terminated");
- }
- session->pid = 0;
- }
- }
-}
-
-/**********************************************************************
-*%FUNCTION: fatalSys
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to stderr and syslog and exits.
-***********************************************************************/
-void
-fatalSys(char const *str)
-{
- char buf[SMALLBUF];
- snprintf(buf, SMALLBUF, "%s: %s", str, strerror(errno));
- printErr(buf);
- exit(EXIT_FAILURE);
-}
-
-/**********************************************************************
-*%FUNCTION: sysErr
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to syslog.
-***********************************************************************/
-void
-sysErr(char const *str)
-{
- char buf[1024];
- sprintf(buf, "%.256s: %.256s", str, strerror(errno));
- printErr(buf);
-}
-
-/**********************************************************************
-*%FUNCTION: rp_fatal
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message to stderr and syslog and exits.
-***********************************************************************/
-void
-rp_fatal(char const *str)
-{
- printErr(str);
- exit(EXIT_FAILURE);
-}
-
-/**********************************************************************
-*%FUNCTION: genCookie
-*%ARGUMENTS:
-* peerEthAddr -- peer Ethernet address (6 bytes)
-* myEthAddr -- my Ethernet address (6 bytes)
-* seed -- random cookie seed to make things tasty (16 bytes)
-* cookie -- buffer which is filled with server PID and
-* md5 sum of previous items
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Forms the md5 sum of peer MAC address, our MAC address and seed, useful
-* in a PPPoE Cookie tag.
-***********************************************************************/
-void
-genCookie(unsigned char const *peerEthAddr,
- unsigned char const *myEthAddr,
- unsigned char const *seed,
- unsigned char *cookie)
-{
- struct MD5Context ctx;
- pid_t pid = getpid();
-
- MD5Init(&ctx);
- MD5Update(&ctx, peerEthAddr, ETH_ALEN);
- MD5Update(&ctx, myEthAddr, ETH_ALEN);
- MD5Update(&ctx, seed, SEED_LEN);
- MD5Final(cookie, &ctx);
- memcpy(cookie+MD5_LEN, &pid, sizeof(pid));
-}
-
-/**********************************************************************
-*%FUNCTION: processPADI
-*%ARGUMENTS:
-* sock -- Ethernet socket
-* myAddr -- my Ethernet address
-* packet -- PPPoE PADI packet
-* len -- length of received packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Sends a PADO packet back to client
-***********************************************************************/
-void
-processPADI(int sock, unsigned char *myAddr,
- PPPoEPacket *packet, int len)
-{
- PPPoEPacket pado;
- PPPoETag acname;
- PPPoETag servname;
- PPPoETag cookie;
- size_t acname_len;
- unsigned char *cursor = pado.payload;
- UINT16_t plen;
-
- /* Ignore PADI's which don't come from a unicast address */
- if (NOT_UNICAST(packet->ethHdr.h_source)) {
- syslog(LOG_ERR, "PADI packet from non-unicast source address");
- return;
- }
-
- acname.type = htons(TAG_AC_NAME);
- acname_len = strlen(ACName);
- acname.length = htons(acname_len);
- memcpy(acname.payload, ACName, acname_len);
-
- servname.type = htons(TAG_SERVICE_NAME);
- servname.length = 0;
-
- relayId.type = 0;
- hostUniq.type = 0;
- parsePacket(packet, parsePADITags, NULL);
-
- /* Generate a cookie */
- cookie.type = htons(TAG_AC_COOKIE);
- cookie.length = htons(COOKIE_LEN);
- genCookie(packet->ethHdr.h_source, myAddr, CookieSeed, cookie.payload);
-
- /* Construct a PADO packet */
- memcpy(pado.ethHdr.h_dest, packet->ethHdr.h_source, ETH_ALEN);
- memcpy(pado.ethHdr.h_source, myAddr, ETH_ALEN);
- pado.ethHdr.h_proto = htons(Eth_PPPOE_Discovery);
- pado.ver = 1;
- pado.type = 1;
- pado.code = CODE_PADO;
- pado.session = 0;
- plen = TAG_HDR_SIZE + acname_len;
-
- CHECK_ROOM(cursor, pado.payload, acname_len+TAG_HDR_SIZE);
- memcpy(cursor, &acname, acname_len + TAG_HDR_SIZE);
- cursor += acname_len + TAG_HDR_SIZE;
-
- CHECK_ROOM(cursor, pado.payload, TAG_HDR_SIZE);
- memcpy(cursor, &servname, TAG_HDR_SIZE);
- cursor += TAG_HDR_SIZE;
- plen += TAG_HDR_SIZE;
-
- CHECK_ROOM(cursor, pado.payload, TAG_HDR_SIZE + COOKIE_LEN);
- memcpy(cursor, &cookie, TAG_HDR_SIZE + COOKIE_LEN);
- cursor += TAG_HDR_SIZE + COOKIE_LEN;
- plen += TAG_HDR_SIZE + COOKIE_LEN;
-
- if (relayId.type) {
- CHECK_ROOM(cursor, pado.payload, ntohs(relayId.length) + TAG_HDR_SIZE);
- memcpy(cursor, &relayId, ntohs(relayId.length) + TAG_HDR_SIZE);
- cursor += ntohs(relayId.length) + TAG_HDR_SIZE;
- plen += ntohs(relayId.length) + TAG_HDR_SIZE;
- }
- if (hostUniq.type) {
- CHECK_ROOM(cursor, pado.payload, ntohs(hostUniq.length)+TAG_HDR_SIZE);
- memcpy(cursor, &hostUniq, ntohs(hostUniq.length) + TAG_HDR_SIZE);
- cursor += ntohs(hostUniq.length) + TAG_HDR_SIZE;
- plen += ntohs(hostUniq.length) + TAG_HDR_SIZE;
- }
- pado.length = htons(plen);
- sendPacket(NULL, sock, &pado, (int) (plen + HDR_SIZE));
-}
-
-/**********************************************************************
-*%FUNCTION: processPADT
-*%ARGUMENTS:
-* sock -- Ethernet socket
-* myAddr -- my Ethernet address
-* packet -- PPPoE PADT packet
-* len -- length of received packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Kills session whose session-ID is in PADT packet.
-***********************************************************************/
-void
-processPADT(int sock, unsigned char *myAddr,
- PPPoEPacket *packet, int len)
-{
- size_t i;
-
- /* Ignore PADT's not directed at us */
- if (memcmp(packet->ethHdr.h_dest, myAddr, ETH_ALEN)) return;
-
- /* Get session's index */
- i = ntohs(packet->session) - 1 - SessOffset;
- if (i >= NumSessionSlots) return;
- if (Sessions[i].sess != packet->session) {
- syslog(LOG_ERR, "Session index %u doesn't match session number %u",
- (unsigned int) i, (unsigned int) ntohs(packet->session));
- return;
- }
- if (Sessions[i].pid) {
- Sessions[i].recvdPADT = 1;
- parsePacket(packet, parseLogErrs, NULL);
- kill(Sessions[i].pid, SIGTERM);
- }
-}
-
-/**********************************************************************
-*%FUNCTION: processPADR
-*%ARGUMENTS:
-* sock -- Ethernet socket
-* myAddr -- my Ethernet address
-* packet -- PPPoE PADR packet
-* len -- length of received packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Sends a PADS packet back to client and starts a PPP session if PADR
-* packet is OK.
-***********************************************************************/
-void
-processPADR(int sock, unsigned char *myAddr,
- PPPoEPacket *packet, int len)
-{
- unsigned char cookieBuffer[COOKIE_LEN];
- struct ClientSession *cliSession;
- pid_t child;
- PPPoEPacket pads;
- unsigned char *cursor = pads.payload;
- UINT16_t plen;
- PPPoETag servname;
-
- /* Initialize some globals */
- relayId.type = 0;
- hostUniq.type = 0;
- receivedCookie.type = 0;
- requestedService.type = 0;
-
- /* Ignore PADR's not directed at us */
- if (memcmp(packet->ethHdr.h_dest, myAddr, ETH_ALEN)) return;
-
- /* Ignore PADR's from non-unicast addresses */
- if (NOT_UNICAST(packet->ethHdr.h_source)) {
- syslog(LOG_ERR, "PADR packet from non-unicast source address");
- return;
- }
-
- parsePacket(packet, parsePADRTags, NULL);
-
- /* Check that everything's cool */
- if (!receivedCookie.type) {
- /* Drop it -- do not send error PADS */
- return;
- }
-
- /* Is cookie kosher? */
- if (receivedCookie.length != htons(COOKIE_LEN)) {
- /* Drop it -- do not send error PADS */
- return;
- }
-
- genCookie(packet->ethHdr.h_source, myAddr, CookieSeed, cookieBuffer);
- if (memcmp(receivedCookie.payload, cookieBuffer, COOKIE_LEN)) {
- /* Drop it -- do not send error PADS */
- return;
- }
-
- /* Check service name -- we only offer service "" */
- if (!requestedService.type) {
- syslog(LOG_ERR, "Received PADR packet with no SERVICE_NAME tag");
- sendErrorPADS(sock, myAddr, packet->ethHdr.h_source,
- TAG_SERVICE_NAME_ERROR, "RP-PPPoE: Server: No service name tag");
- return;
- }
-
- if (requestedService.length) {
- syslog(LOG_ERR, "Received PADR packet asking for unsupported service %.*s", (int) ntohs(requestedService.length), requestedService.payload);
- sendErrorPADS(sock, myAddr, packet->ethHdr.h_source,
- TAG_SERVICE_NAME_ERROR, "RP-PPPoE: Server: Invalid service name tag");
- return;
- }
-
- /* Looks cool... find a slot for the session */
- cliSession = findSession(0);
- if (!cliSession) {
- syslog(LOG_ERR, "No client slots available (%02x:%02x:%02x:%02x:%02x:%02x)",
- (unsigned int) packet->ethHdr.h_source[0],
- (unsigned int) packet->ethHdr.h_source[1],
- (unsigned int) packet->ethHdr.h_source[2],
- (unsigned int) packet->ethHdr.h_source[3],
- (unsigned int) packet->ethHdr.h_source[4],
- (unsigned int) packet->ethHdr.h_source[5]);
- sendErrorPADS(sock, myAddr, packet->ethHdr.h_source,
- TAG_AC_SYSTEM_ERROR, "RP-PPPoE: Server: No client slots available");
- return;
- }
-
- /* Set up client session peer Ethernet address */
- memcpy(cliSession->eth, packet->ethHdr.h_source, ETH_ALEN);
- cliSession->recvdPADT = 0;
-
- /* Create child process, send PADS packet back */
- child = fork();
- if (child < 0) {
- sendErrorPADS(sock, myAddr, packet->ethHdr.h_source,
- TAG_AC_SYSTEM_ERROR, "RP-PPPoE: Server: Unable to start session process");
- return;
- }
- if (child != 0) {
- /* In the parent process. Mark pid in session slot */
- cliSession->pid = child;
- return;
- }
-
- /* In the child process. */
-
- /* pppd has a nasty habit of killing all processes in its process group.
- Start a new session to stop pppd from killing us! */
- setsid();
-
- /* Send PADS and Start pppd */
- memcpy(pads.ethHdr.h_dest, packet->ethHdr.h_source, ETH_ALEN);
- memcpy(pads.ethHdr.h_source, myAddr, ETH_ALEN);
- pads.ethHdr.h_proto = htons(Eth_PPPOE_Discovery);
- pads.ver = 1;
- pads.type = 1;
- pads.code = CODE_PADS;
-
- pads.session = cliSession->sess;
- plen = 0;
-
- servname.type = htons(TAG_SERVICE_NAME);
- servname.length = 0;
-
- memcpy(cursor, &servname, TAG_HDR_SIZE);
- cursor += TAG_HDR_SIZE;
- plen += TAG_HDR_SIZE;
-
- if (relayId.type) {
- memcpy(cursor, &relayId, ntohs(relayId.length) + TAG_HDR_SIZE);
- cursor += ntohs(relayId.length) + TAG_HDR_SIZE;
- plen += ntohs(relayId.length) + TAG_HDR_SIZE;
- }
- if (hostUniq.type) {
- memcpy(cursor, &hostUniq, ntohs(hostUniq.length) + TAG_HDR_SIZE);
- cursor += ntohs(hostUniq.length) + TAG_HDR_SIZE;
- plen += ntohs(hostUniq.length) + TAG_HDR_SIZE;
- }
- pads.length = htons(plen);
- sendPacket(NULL, sock, &pads, (int) (plen + HDR_SIZE));
- startPPPD(cliSession);
-}
-
-/**********************************************************************
-*%FUNCTION: childHandler
-*%ARGUMENTS:
-* sig -- signal number
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Called by SIGCHLD. Writes one byte to Pipe to wake up the select
-* loop and cause reaping of dead sessions
-***********************************************************************/
-void
-childHandler(int sig)
-{
- if (!ReapPending) {
- ReapPending = 1;
- write(Pipe[1], &ReapPending, 1);
- }
-}
-
-/**********************************************************************
-*%FUNCTION: usage
-*%ARGUMENTS:
-* argv0 -- argv[0] from main
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints usage instructions
-***********************************************************************/
-void
-usage(char const *argv0)
-{
- fprintf(stderr, "Usage: %s [options]\n", argv0);
- fprintf(stderr, "Options:\n");
-#ifdef USE_BPF
- fprintf(stderr, " -I if_name -- Specify interface (REQUIRED)\n");
-#else
- fprintf(stderr, " -I if_name -- Specify interface (default %s.)\n",
- DEFAULT_IF);
-#endif
- fprintf(stderr, " -T timeout -- Specify inactivity timeout in seconds.\n");
- fprintf(stderr, " -C name -- Set access concentrator name.\n");
- fprintf(stderr, " -m MSS -- Clamp incoming and outgoing MSS options.\n");
- fprintf(stderr, " -L ip -- Set local IP address.\n");
- fprintf(stderr, " -R ip -- Set start address of remote IP pool.\n");
- fprintf(stderr, " -p fname -- Optain IP address pool from specified file.\n");
- fprintf(stderr, " -N num -- Allow 'num' concurrent sessions.\n");
- fprintf(stderr, " -o offset -- Assign session numbers starting at offset+1.\n");
- fprintf(stderr, " -f disc:sess -- Set Ethernet frame types (hex).\n");
- fprintf(stderr, " -s -- Use synchronous PPP mode.\n");
-#ifdef HAVE_LINUX_KERNEL_PPPOE
- fprintf(stderr, " -k -- Use kernel-mode PPPoE.\n");
-#endif
- fprintf(stderr, " -h -- Print usage information.\n\n");
- fprintf(stderr, "PPPoE-Server Version %s, Copyright (C) 2001 Roaring Penguin Software Inc.\n", VERSION);
- fprintf(stderr, "PPPoE-Server comes with ABSOLUTELY NO WARRANTY.\n");
- fprintf(stderr, "This is free software, and you are welcome to redistribute it\n");
- fprintf(stderr, "under the terms of the GNU General Public License, version 2\n");
- fprintf(stderr, "or (at your option) any later version.\n");
- fprintf(stderr, "http://www.roaringpenguin.com\n");
-}
-
-/**********************************************************************
-*%FUNCTION: main
-*%ARGUMENTS:
-* argc, argv -- usual suspects
-*%RETURNS:
-* Exit status
-*%DESCRIPTION:
-* Main program of PPPoE server
-***********************************************************************/
-int
-main(int argc, char **argv)
-{
-
- FILE *fp;
- int i;
- int opt;
- unsigned char myAddr[ETH_ALEN];
- PPPoEPacket packet;
- int len;
- int sock;
- int d[IPV4ALEN];
- int beDaemon = 1;
- struct sigaction act;
- int maxFD;
- unsigned int discoveryType, sessionType;
- char *addressPoolFname = NULL;
-
-#ifndef HAVE_LINUX_KERNEL_PPPOE
- char *options = "hI:C:L:R:T:m:FN:f:o:sp:";
-#else
- char *options = "hI:C:L:R:T:m:FN:f:o:skp:";
-#endif
-
- /* Initialize syslog */
- openlog("pppoe-server", LOG_PID, LOG_DAEMON);
-
- /* Default number of session slots */
- NumSessionSlots = DEFAULT_MAX_SESSIONS;
-
- /* Parse command-line options */
- while((opt = getopt(argc, argv, options)) != -1) {
- switch(opt) {
-#ifdef HAVE_LINUX_KERNEL_PPPOE
- case 'k':
- UseLinuxKernelModePPPoE = 1;
- break;
-#endif
- case 'p':
- addressPoolFname = optarg;
- break;
- case 's':
- Synchronous = 1;
- /* Pass the Synchronous option on to pppoe */
- snprintf(PppoeOptions + strlen(PppoeOptions),
- SMALLBUF-strlen(PppoeOptions),
- " -s");
- break;
- case 'f':
- if (sscanf(optarg, "%x:%x", &discoveryType, &sessionType) != 2) {
- fprintf(stderr, "Illegal argument to -f: Should be disc:sess in hex\n");
- exit(EXIT_FAILURE);
- }
- Eth_PPPOE_Discovery = (UINT16_t) discoveryType;
- Eth_PPPOE_Session = (UINT16_t) sessionType;
- /* This option gets passed to pppoe */
- snprintf(PppoeOptions + strlen(PppoeOptions),
- SMALLBUF-strlen(PppoeOptions),
- " -%c %s", opt, optarg);
- break;
- case 'F':
- beDaemon = 0;
- break;
- case 'N':
- if (sscanf(optarg, "%d", &opt) != 1) {
- usage(argv[0]);
- exit(EXIT_FAILURE);
- }
- if (opt <= 0) {
- fprintf(stderr, "-N: Value must be positive\n");
- exit(EXIT_FAILURE);
- }
- NumSessionSlots = opt;
- break;
- case 'o':
- if (sscanf(optarg, "%d", &opt) != 1) {
- usage(argv[0]);
- exit(EXIT_FAILURE);
- }
- if (opt < 0) {
- fprintf(stderr, "-o: Value must be non-negative\n");
- exit(EXIT_FAILURE);
- }
- SessOffset = (size_t) opt;
- break;
-
- case 'I':
- SET_STRING(IfName, optarg);
- break;
- case 'C':
- SET_STRING(ACName, optarg);
- break;
- case 'L':
- case 'R':
- /* Get local/remote IP address */
- if (sscanf(optarg, "%d.%d.%d.%d", &d[0], &d[1], &d[2], &d[3]) != 4) {
- usage(argv[0]);
- exit(EXIT_FAILURE);
- }
- for (i=0; i<IPV4ALEN; i++) {
- if (d[i] < 0 || d[i] > 255) {
- usage(argv[0]);
- exit(EXIT_FAILURE);
- }
- if (opt == 'L') {
- LocalIP[i] = (unsigned char) d[i];
- } else {
- RemoteIP[i] = (unsigned char) d[i];
- }
- }
- break;
- case 'T':
- case 'm':
- /* These just get passed to pppoe */
- snprintf(PppoeOptions + strlen(PppoeOptions),
- SMALLBUF-strlen(PppoeOptions),
- " -%c %s", opt, optarg);
- break;
- case 'h':
- usage(argv[0]);
- exit(EXIT_SUCCESS);
- }
- }
-
-#ifdef USE_LINUX_PACKET
-#ifndef HAVE_STRUCT_SOCKADDR_LL
- fprintf(stderr, "The PPPoE relay does not work on Linux 2.0 kernels.\n");
- exit(EXIT_FAILURE);
-#endif
-#endif
-
- if (!IfName) {
- IfName = DEFAULT_IF;
- }
-
- if (!ACName) {
- ACName = malloc(HOSTNAMELEN);
- if (gethostname(ACName, HOSTNAMELEN) < 0) {
- fatalSys("gethostname");
- }
- }
-
- /* If address pool filename given, count number of addresses */
- if (addressPoolFname) {
- NumSessionSlots = parseAddressPool(addressPoolFname, 0);
- }
-
- /* Max 65534 - SessOffset sessions */
- if (NumSessionSlots + SessOffset > 65534) {
- fprintf(stderr, "-N and -o options must add up to at most 65534\n");
- exit(EXIT_FAILURE);
- }
-
- /* Allocate memory for sessions */
- Sessions = calloc(NumSessionSlots, sizeof(struct ClientSession));
- if (!Sessions) {
- rp_fatal("Cannot allocate memory for session slots");
- }
-
- /* Fill in remote IP addresses from pool */
- if (addressPoolFname) {
- (void) parseAddressPool(addressPoolFname, 1);
- }
-
- /* For testing -- generate sequential remote IP addresses */
- for(i=0; i<NumSessionSlots; i++) {
- Sessions[i].pid = 0;
- Sessions[i].sess = htons(i+1+SessOffset);
-
- if (!addressPoolFname) {
- memcpy(Sessions[i].ip, RemoteIP, sizeof(RemoteIP));
-
- /* Increment IP */
- RemoteIP[3]++;
- if (!RemoteIP[3]) {
- RemoteIP[3] = 0;
- RemoteIP[2]++;
- if (!RemoteIP[2]) {
- RemoteIP[1]++;
- if (!RemoteIP[1]) {
- RemoteIP[0]++;
- }
- }
- }
- }
- }
-
- /* Daemonize -- UNIX Network Programming, Vol. 1, Stevens */
- if (beDaemon) {
- i = fork();
- if (i < 0) {
- fatalSys("fork");
- } else if (i != 0) {
- /* parent */
- exit(EXIT_SUCCESS);
- }
- setsid();
- signal(SIGHUP, SIG_IGN);
- i = fork();
- if (i < 0) {
- fatalSys("fork");
- } else if (i != 0) {
- exit(EXIT_SUCCESS);
- }
-
- chdir("/");
- closelog();
- for (i=0; i<CLOSEFD; i++) close(i);
- /* We nuked our syslog descriptor... */
- openlog("pppoe-server", LOG_PID, LOG_DAEMON);
- }
-
- /* Initialize our random cookie. Try /dev/urandom; if that fails,
- use PID and rand() */
- fp = fopen("/dev/urandom", "r");
- if (fp) {
- fread(&CookieSeed, 1, SEED_LEN, fp);
- fclose(fp);
- } else {
- CookieSeed[0] = getpid() & 0xFF;
- CookieSeed[1] = (getpid() >> 8) & 0xFF;
- for (i=2; i<SEED_LEN; i++) {
- CookieSeed[i] = (rand() >> (i % 9)) & 0xFF;
- }
- }
-
- sock = openInterface(IfName, Eth_PPPOE_Discovery, myAddr);
-
- /* Set signal handler for SIGCHLD */
- act.sa_handler = childHandler;
- sigemptyset(&act.sa_mask);
- act.sa_flags = SA_NOCLDSTOP | SA_RESTART;
- if (sigaction(SIGCHLD, &act, NULL) < 0) {
- fatalSys("sigaction");
- }
-
- /* Set up pipe for signal handler */
- if (pipe(Pipe) < 0) {
- fatalSys("pipe");
- }
-
- /* Main server loop */
- maxFD = sock;
- if (Pipe[0] > maxFD) maxFD = Pipe[0];
- maxFD++;
-
- for(;;) {
- fd_set readable;
- FD_ZERO(&readable);
- FD_SET(sock, &readable);
- FD_SET(Pipe[0], &readable);
-
- while(1) {
- i = select(maxFD, &readable, NULL, NULL, NULL);
- if (i >= 0 || errno != EINTR) break;
- }
- if (i < 0) {
- fatalSys("select");
- }
-
- if (FD_ISSET(Pipe[0], &readable)) {
- /* Clear pipe */
- char buf[SMALLBUF];
- read(Pipe[0], buf, SMALLBUF);
- }
-
- if (ReapPending) {
- ReapPending = 0;
- reapSessions(myAddr, sock);
- }
- if (!FD_ISSET(sock, &readable)) {
- continue;
- }
-
- if (receivePacket(sock, &packet, &len) < 0) {
- continue;
- }
-
- /* Check length */
- if (ntohs(packet.length) + HDR_SIZE > len) {
- syslog(LOG_ERR, "Bogus PPPoE length field (%u)",
- (unsigned int) ntohs(packet.length));
- continue;
- }
-
- /* Sanity check on packet */
- if (packet.ver != 1 || packet.type != 1) {
- /* Syslog an error */
- continue;
- }
- switch(packet.code) {
- case CODE_PADI:
- processPADI(sock, myAddr, &packet, len);
- break;
- case CODE_PADR:
- processPADR(sock, myAddr, &packet, len);
- break;
- case CODE_PADT:
- /* Kill the child */
- processPADT(sock, myAddr, &packet, len);
- break;
- case CODE_SESS:
- /* Ignore SESS -- children will handle them */
- break;
- case CODE_PADO:
- case CODE_PADS:
- /* Ignore PADO and PADS totally */
- break;
- default:
- /* Syslog an error */
- break;
- }
- }
- return 0;
-}
-
-/**********************************************************************
-*%FUNCTION: sendErrorPADS
-*%ARGUMENTS:
-* sock -- socket to write to
-* source -- source Ethernet address
-* dest -- destination Ethernet address
-* errorTag -- error tag
-* errorMsg -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Sends a PADS packet with an error message
-***********************************************************************/
-void
-sendErrorPADS(int sock,
- unsigned char *source,
- unsigned char *dest,
- int errorTag,
- char *errorMsg)
-{
- PPPoEPacket pads;
- unsigned char *cursor = pads.payload;
- UINT16_t plen;
- PPPoETag err;
- int elen = strlen(errorMsg);
-
- memcpy(pads.ethHdr.h_dest, dest, ETH_ALEN);
- memcpy(pads.ethHdr.h_source, source, ETH_ALEN);
- pads.ethHdr.h_proto = htons(Eth_PPPOE_Discovery);
- pads.ver = 1;
- pads.type = 1;
- pads.code = CODE_PADS;
-
- pads.session = htons(0);
- plen = 0;
-
- err.type = htons(errorTag);
- err.length = htons(elen);
-
- memcpy(err.payload, errorMsg, elen);
- memcpy(cursor, &err, TAG_HDR_SIZE+elen);
- cursor += TAG_HDR_SIZE + elen;
- plen += TAG_HDR_SIZE + elen;
-
- if (relayId.type) {
- memcpy(cursor, &relayId, ntohs(relayId.length) + TAG_HDR_SIZE);
- cursor += ntohs(relayId.length) + TAG_HDR_SIZE;
- plen += ntohs(relayId.length) + TAG_HDR_SIZE;
- }
- if (hostUniq.type) {
- memcpy(cursor, &hostUniq, ntohs(hostUniq.length) + TAG_HDR_SIZE);
- cursor += ntohs(hostUniq.length) + TAG_HDR_SIZE;
- plen += ntohs(hostUniq.length) + TAG_HDR_SIZE;
- }
- pads.length = htons(plen);
- sendPacket(NULL, sock, &pads, (int) (plen + HDR_SIZE));
-}
-
-
-/**********************************************************************
-*%FUNCTION: startPPPDUserMode
-*%ARGUMENTS:
-* session -- client session record
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Starts PPPD for user-mode PPPoE
-***********************************************************************/
-void
-startPPPDUserMode(struct ClientSession *session)
-{
- /* Leave some room */
- char *argv[20];
-
- char buffer[SMALLBUF];
-
- argv[0] = "pppd";
- argv[1] = "pty";
-
- snprintf(buffer, SMALLBUF, "%s -n -I %s -e %d:%02x:%02x:%02x:%02x:%02x:%02x%s",
- PPPOE_PATH, IfName,
- ntohs(session->sess),
- session->eth[0], session->eth[1], session->eth[2],
- session->eth[3], session->eth[4], session->eth[5],
- PppoeOptions);
- argv[2] = strdup(buffer);
- if (!argv[2]) {
- /* TODO: Send a PADT */
- exit(EXIT_FAILURE);
- }
-
- argv[3] = "file";
- argv[4] = PPPOE_SERVER_OPTIONS;
-
- snprintf(buffer, SMALLBUF, "%d.%d.%d.%d:%d.%d.%d.%d",
- (int) LocalIP[0], (int) LocalIP[1],
- (int) LocalIP[2], (int) LocalIP[3],
- (int) session->ip[0], (int) session->ip[1],
- (int) session->ip[2], (int) session->ip[3]);
- syslog(LOG_INFO,
- "Session %d created for client %02x:%02x:%02x:%02x:%02x:%02x (%d.%d.%d.%d)",
- ntohs(session->sess),
- session->eth[0], session->eth[1], session->eth[2],
- session->eth[3], session->eth[4], session->eth[5],
- (int) session->ip[0], (int) session->ip[1],
- (int) session->ip[2], (int) session->ip[3]);
- argv[5] = buffer; /* No need for strdup -- about to execv! */
- argv[6] = "nodetach";
- argv[7] = "noaccomp";
- argv[8] = "nobsdcomp";
- argv[9] = "nodeflate";
- argv[10] = "nopcomp";
- argv[11] = "novj";
- argv[12] = "novjccomp";
- argv[13] = "default-asyncmap";
- if (Synchronous) {
- argv[14] = "sync";
- argv[15] = NULL;
- } else {
- argv[14] = NULL;
- }
-
- execv(PPPD_PATH, argv);
- exit(EXIT_FAILURE);
-}
-
-/**********************************************************************
-*%FUNCTION: startPPPDLinuxKernelMode
-*%ARGUMENTS:
-* session -- client session record
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Starts PPPD for kernel-mode PPPoE on Linux
-***********************************************************************/
-void
-startPPPDLinuxKernelMode(struct ClientSession *session)
-{
- /* Leave some room */
- char *argv[20];
-
- char buffer[SMALLBUF];
-
- argv[0] = "pppd";
- argv[1] = "plugin";
- argv[2] = PLUGIN_PATH;
- argv[3] = IfName;
- snprintf(buffer, SMALLBUF, "%d:%02x:%02x:%02x:%02x:%02x:%02x",
- ntohs(session->sess),
- session->eth[0], session->eth[1], session->eth[2],
- session->eth[3], session->eth[4], session->eth[5]);
- argv[4] = "rp_pppoe_sess";
- argv[5] = strdup(buffer);
- if (!argv[5]) {
- /* TODO: Send a PADT */
- exit(EXIT_FAILURE);
- }
- argv[6] = "file";
- argv[7] = PPPOE_SERVER_OPTIONS;
-
- snprintf(buffer, SMALLBUF, "%d.%d.%d.%d:%d.%d.%d.%d",
- (int) LocalIP[0], (int) LocalIP[1],
- (int) LocalIP[2], (int) LocalIP[3],
- (int) session->ip[0], (int) session->ip[1],
- (int) session->ip[2], (int) session->ip[3]);
- syslog(LOG_INFO,
- "Session %d created for client %02x:%02x:%02x:%02x:%02x:%02x (%d.%d.%d.%d)",
- ntohs(session->sess),
- session->eth[0], session->eth[1], session->eth[2],
- session->eth[3], session->eth[4], session->eth[5],
- (int) session->ip[0], (int) session->ip[1],
- (int) session->ip[2], (int) session->ip[3]);
- argv[8] = buffer;
- argv[9] = "nodetach";
- argv[10] = "noaccomp";
- argv[11] = "nobsdcomp";
- argv[12] = "nodeflate";
- argv[13] = "nopcomp";
- argv[14] = "novj";
- argv[15] = "novjccomp";
- argv[16] = "default-asyncmap";
- argv[17] = NULL;
- execv(PPPD_PATH, argv);
- exit(EXIT_FAILURE);
-}
-
-/**********************************************************************
-*%FUNCTION: startPPPD
-*%ARGUMENTS:
-* session -- client session record
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Starts PPPD
-***********************************************************************/
-void
-startPPPD(struct ClientSession *session)
-{
- if (UseLinuxKernelModePPPoE) startPPPDLinuxKernelMode(session);
- else startPPPDUserMode(session);
-}
-
diff --git a/mdk-stage1/rp-pppoe/src/pppoe-sniff.c b/mdk-stage1/rp-pppoe/src/pppoe-sniff.c
deleted file mode 100644
index aa796547b..000000000
--- a/mdk-stage1/rp-pppoe/src/pppoe-sniff.c
+++ /dev/null
@@ -1,258 +0,0 @@
-/***********************************************************************
-*
-* pppoe-sniff.c
-*
-* Sniff a network for likely-looking PPPoE frames and deduce the value
-* to supply to PPPOE_EXTRA in /etc/ppp/pppoe.conf. USE AT YOUR OWN RISK.
-*
-* Copyright (C) 2000 by Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#include "pppoe.h"
-
-#ifdef HAVE_GETOPT_H
-#include <getopt.h>
-#endif
-
-#include <errno.h>
-#include <unistd.h>
-#include <string.h>
-#include <stdlib.h>
-
-#ifdef USE_DLPI
-#include <sys/dlpi.h>
-/* function declarations */
-void dlpromisconreq( int fd, u_long level);
-void dlokack(int fd, char *bufp);
-#endif
-
-/* Default interface if no -I option given */
-#define DEFAULT_IF "eth0"
-
-/* Global vars */
-int SeenPADR = 0;
-int SeenSess = 0;
-UINT16_t SessType, DiscType;
-
-char *IfName = NULL; /* Interface name */
-char *ServiceName = NULL; /* Service name */
-
-/**********************************************************************
-*%FUNCTION: parsePADRTags
-*%ARGUMENTS:
-* type -- tag type
-* len -- tag length
-* data -- tag data
-* extra -- extra user data.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Picks interesting tags out of a PADR packet
-***********************************************************************/
-void
-parsePADRTags(UINT16_t type, UINT16_t len, unsigned char *data,
- void *extra)
-{
- switch(type) {
- case TAG_SERVICE_NAME:
- ServiceName = malloc(len+1);
- if (ServiceName) {
- memcpy(ServiceName, data, len);
- ServiceName[len] = 0;
- }
- break;
- }
-}
-
-/**********************************************************************
-*%FUNCTION: fatalSys
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to stderr and exits.
-***********************************************************************/
-void
-fatalSys(char const *str)
-{
- char buf[1024];
- sprintf(buf, "%.256s: %.256s", str, strerror(errno));
- printErr(buf);
- exit(1);
-}
-
-/**********************************************************************
-*%FUNCTION: rp_fatal
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message to stderr and syslog and exits.
-***********************************************************************/
-void
-rp_fatal(char const *str)
-{
- printErr(str);
- exit(1);
-}
-
-/**********************************************************************
-*%FUNCTION: usage
-*%ARGUMENTS:
-* argv0 -- program name
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints usage information and exits.
-***********************************************************************/
-void
-usage(char const *argv0)
-{
- fprintf(stderr, "Usage: %s [options]\n", argv0);
- fprintf(stderr, "Options:\n");
- fprintf(stderr, " -I if_name -- Specify interface (default %s.)\n",
- DEFAULT_IF);
- fprintf(stderr, " -V -- Print version and exit.\n");
- fprintf(stderr, "\nPPPoE Version %s, Copyright (C) 2000 Roaring Penguin Software Inc.\n", VERSION);
- fprintf(stderr, "PPPoE comes with ABSOLUTELY NO WARRANTY.\n");
- fprintf(stderr, "This is free software, and you are welcome to redistribute it under the terms\n");
- fprintf(stderr, "of the GNU General Public License, version 2 or any later version.\n");
- fprintf(stderr, "http://www.roaringpenguin.com\n");
- exit(0);
-}
-
-#if !defined(USE_LINUX_PACKET) && !defined(USE_DLPI)
-
-int
-main()
-{
- fprintf(stderr, "Sorry, pppoe-sniff works only on Linux.\n");
- return 1;
-}
-
-#else
-
-/**********************************************************************
-*%FUNCTION: main
-*%ARGUMENTS:
-* argc, argv -- count and values of command-line arguments
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Main program
-***********************************************************************/
-int
-main(int argc, char *argv[])
-{
- int opt;
- int sock;
- PPPoEPacket pkt;
- int size;
-#ifdef USE_DLPI
- long buf[MAXDLBUF];
-#endif
-
- while((opt = getopt(argc, argv, "I:V")) != -1) {
- switch(opt) {
- case 'I':
- SET_STRING(IfName, optarg);
- break;
- case 'V':
- printf("pppoe-sniff: Roaring Penguin PPPoE Version %s\n", VERSION);
- exit(0);
- default:
- usage(argv[0]);
- }
- }
-
- /* Pick a default interface name */
- if (!IfName) {
- IfName = DEFAULT_IF;
- }
-
- /* Open the interface */
-#ifdef USE_DLPI
- sock = openInterface(IfName, Eth_PPPOE_Discovery, NULL);
- dlpromisconreq(sock, DL_PROMISC_PHYS);
- dlokack(sock, (char *)buf);
- dlpromisconreq(sock, DL_PROMISC_SAP);
- dlokack(sock, (char *)buf);
-#else
-
- sock = openInterface(IfName, ETH_P_ALL, NULL);
-
-#endif
-
- /* We assume interface is in promiscuous mode -- use ifconfig to
- ensure this */
- fprintf(stderr, "Sniffing for PADR. Start your connection on another machine...\n");
- while (!SeenPADR) {
- if (receivePacket(sock, &pkt, &size) < 0) continue;
- if (ntohs(pkt.length) + HDR_SIZE > size) continue;
- if (pkt.ver != 1 || pkt.type != 1) continue;
- if (pkt.code != CODE_PADR) continue;
-
- /* Looks promising... parse it */
- if (parsePacket(&pkt, parsePADRTags, NULL) < 0) {
- continue;
- }
- DiscType = ntohs(pkt.ethHdr.h_proto);
- fprintf(stderr, "\nExcellent! Sniffed a likely-looking PADR.\n");
- break;
- }
-
- while (!SeenSess) {
- if (receivePacket(sock, &pkt, &size) < 0) continue;
- if (ntohs(pkt.length) + HDR_SIZE > size) continue;
- if (pkt.ver != 1 || pkt.type != 1) continue;
- if (pkt.code != CODE_SESS) continue;
-
- /* Cool! */
- SessType = ntohs(pkt.ethHdr.h_proto);
- break;
- }
-
- fprintf(stderr, "Wonderful! Sniffed a likely-looking session packet.\n");
- if ((ServiceName == NULL || *ServiceName == 0) &&
- DiscType == ETH_PPPOE_DISCOVERY &&
- SessType == ETH_PPPOE_SESSION) {
- fprintf(stderr, "\nGreat! It looks like a standard PPPoE service.\nYou should not need anything special in the configuration file.\n");
- return 0;
- }
-
- fprintf(stderr, "\nOK, looks like you need something special in the configuration file.\nTry this:\n\n");
- if (ServiceName != NULL && *ServiceName != 0) {
- fprintf(stderr, "SERVICENAME='%s'\n", ServiceName);
- }
- if (DiscType != ETH_PPPOE_DISCOVERY || SessType != ETH_PPPOE_SESSION) {
- fprintf(stderr, " PPPOE_EXTRA='-f %x:%x'\n", DiscType, SessType);
- }
- return 0;
-}
-
-#endif
-/**********************************************************************
-*%FUNCTION: sysErr
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to syslog.
-***********************************************************************/
-void
-sysErr(char const *str)
-{
- char buf[1024];
- sprintf(buf, "%.256s: %.256s", str, strerror(errno));
- printErr(buf);
-}
diff --git a/mdk-stage1/rp-pppoe/src/pppoe.c b/mdk-stage1/rp-pppoe/src/pppoe.c
deleted file mode 100644
index 26cb4b07b..000000000
--- a/mdk-stage1/rp-pppoe/src/pppoe.c
+++ /dev/null
@@ -1,834 +0,0 @@
-/***********************************************************************
-*
-* pppoe.c
-*
-* Implementation of user-space PPPoE redirector for Linux.
-*
-* Copyright (C) 2000-2001 by Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-***********************************************************************/
-
-static char const RCSID[] =
-"$Id$";
-
-#include "pppoe.h"
-
-#ifdef HAVE_SYSLOG_H
-#include <syslog.h>
-#endif
-
-#ifdef HAVE_GETOPT_H
-#include <getopt.h>
-#endif
-
-#include <string.h>
-#include <stdlib.h>
-#include <errno.h>
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#ifdef HAVE_SYS_UIO_H
-#include <sys/uio.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef USE_LINUX_PACKET
-#include <sys/ioctl.h>
-#include <fcntl.h>
-#endif
-
-#include <signal.h>
-
-#ifdef HAVE_N_HDLC
-#ifndef N_HDLC
-#include <termios.h>
-#endif
-#endif
-
-/* Default interface if no -I option given */
-#define DEFAULT_IF "eth0"
-
-/* Global variables -- options */
-int optInactivityTimeout = 0; /* Inactivity timeout */
-int optClampMSS = 0; /* Clamp MSS to this value */
-int optSkipSession = 0; /* Perform discovery, print session info
- and exit */
-
-PPPoEConnection *Connection = NULL; /* Must be global -- used
- in signal handler */
-/***********************************************************************
-*%FUNCTION: sendSessionPacket
-*%ARGUMENTS:
-* conn -- PPPoE connection
-* packet -- the packet to send
-* len -- length of data to send
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Transmits a session packet to the peer.
-***********************************************************************/
-void
-sendSessionPacket(PPPoEConnection *conn, PPPoEPacket *packet, int len)
-{
- packet->length = htons(len);
- if (optClampMSS) {
- clampMSS(packet, "outgoing", optClampMSS);
- }
- if (sendPacket(conn, conn->sessionSocket, packet, len + HDR_SIZE) < 0) {
- exit(EXIT_FAILURE);
- }
- if (conn->debugFile) {
- dumpPacket(conn->debugFile, packet, "SENT");
- fprintf(conn->debugFile, "\n");
- fflush(conn->debugFile);
- }
-}
-
-#ifdef USE_BPF
-/**********************************************************************
-*%FUNCTION: sessionDiscoveryPacket
-*%ARGUMENTS:
-* packet -- the discovery packet that was received
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* We got a discovery packet during the session stage. This most likely
-* means a PADT.
-*
-* The BSD version uses a single socket for both discovery and session
-* packets. When a packet comes in over the wire once we are in
-* session mode, either syncReadFromEth() or asyncReadFromEth() will
-* have already read the packet and determined it to be a discovery
-* packet before passing it here.
-***********************************************************************/
-void
-sessionDiscoveryPacket(PPPoEPacket *packet)
-{
- /* Sanity check */
- if (packet->code != CODE_PADT) {
- return;
- }
-
- /* It's a PADT, all right. Is it for us? */
- if (packet->session != Connection->session) {
- /* Nope, ignore it */
- return;
- }
-
- syslog(LOG_INFO,
- "Session terminated -- received PADT from access concentrator");
- parsePacket(packet, parseLogErrs, NULL);
- exit(EXIT_SUCCESS);
-}
-#else
-/**********************************************************************
-*%FUNCTION: sessionDiscoveryPacket
-*%ARGUMENTS:
-* conn -- PPPoE connection
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* We got a discovery packet during the session stage. This most likely
-* means a PADT.
-***********************************************************************/
-void
-sessionDiscoveryPacket(PPPoEConnection *conn)
-{
- PPPoEPacket packet;
- int len;
-
- if (receivePacket(conn->discoverySocket, &packet, &len) < 0) {
- return;
- }
-
- /* Check length */
- if (ntohs(packet.length) + HDR_SIZE > len) {
- syslog(LOG_ERR, "Bogus PPPoE length field (%u)",
- (unsigned int) ntohs(packet.length));
- return;
- }
-
- if (conn->debugFile) {
- dumpPacket(conn->debugFile, &packet, "RCVD");
- fprintf(conn->debugFile, "\n");
- fflush(conn->debugFile);
- }
-
- if (packet.code != CODE_PADT) {
- /* Not PADT; ignore it */
- return;
- }
-
- /* It's a PADT, all right. Is it for us? */
- if (packet.session != conn->session) {
- /* Nope, ignore it */
- return;
- }
-
- syslog(LOG_INFO,
- "Session terminated -- received PADT from peer");
- parsePacket(&packet, parseLogErrs, NULL);
- exit(EXIT_SUCCESS);
-}
-#endif /* USE_BPF */
-
-/**********************************************************************
-*%FUNCTION: session
-*%ARGUMENTS:
-* conn -- PPPoE connection info
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Handles the "session" phase of PPPoE
-***********************************************************************/
-void
-session(PPPoEConnection *conn)
-{
- fd_set readable;
- PPPoEPacket packet;
- struct timeval tv;
- struct timeval *tvp = NULL;
- int maxFD = 0;
- int r;
-
- /* Open a session socket */
- conn->sessionSocket = openInterface(conn->ifName, Eth_PPPOE_Session, conn->myEth);
-
- /* Prepare for select() */
- if (conn->sessionSocket > maxFD) maxFD = conn->sessionSocket;
- if (conn->discoverySocket > maxFD) maxFD = conn->discoverySocket;
- maxFD++;
-
- /* Fill in the constant fields of the packet to save time */
- memcpy(packet.ethHdr.h_dest, conn->peerEth, ETH_ALEN);
- memcpy(packet.ethHdr.h_source, conn->myEth, ETH_ALEN);
- packet.ethHdr.h_proto = htons(Eth_PPPOE_Session);
- packet.ver = 1;
- packet.type = 1;
- packet.code = CODE_SESS;
- packet.session = conn->session;
-
- initPPP();
-
-#ifdef USE_BPF
- /* check for buffered session data */
- while (BPF_BUFFER_HAS_DATA) {
- if (conn->synchronous) {
- syncReadFromEth(conn, conn->sessionSocket, optClampMSS);
- } else {
- asyncReadFromEth(conn, conn->sessionSocket, optClampMSS);
- }
- }
-#endif
-
- for (;;) {
- if (optInactivityTimeout > 0) {
- tv.tv_sec = optInactivityTimeout;
- tv.tv_usec = 0;
- tvp = &tv;
- }
- FD_ZERO(&readable);
- FD_SET(0, &readable); /* ppp packets come from stdin */
- if (conn->discoverySocket >= 0) {
- FD_SET(conn->discoverySocket, &readable);
- }
- FD_SET(conn->sessionSocket, &readable);
- while(1) {
- r = select(maxFD, &readable, NULL, NULL, tvp);
- if (r >= 0 || errno != EINTR) break;
- }
- if (r < 0) {
- fatalSys("select (session)");
- }
- if (r == 0) { /* Inactivity timeout */
- syslog(LOG_ERR, "Inactivity timeout... something wicked happened");
- sendPADT(conn, "RP-PPPoE: Inactivity timeout");
- exit(EXIT_FAILURE);
- }
-
- /* Handle ready sockets */
- if (FD_ISSET(0, &readable)) {
- if (conn->synchronous) {
- syncReadFromPPP(conn, &packet);
- } else {
- asyncReadFromPPP(conn, &packet);
- }
- }
-
- if (FD_ISSET(conn->sessionSocket, &readable)) {
- do {
- if (conn->synchronous) {
- syncReadFromEth(conn, conn->sessionSocket, optClampMSS);
- } else {
- asyncReadFromEth(conn, conn->sessionSocket, optClampMSS);
- }
- } while (BPF_BUFFER_HAS_DATA);
- }
-
-#ifndef USE_BPF
- /* BSD uses a single socket, see *syncReadFromEth() */
- /* for calls to sessionDiscoveryPacket() */
- if (conn->discoverySocket >= 0) {
- if (FD_ISSET(conn->discoverySocket, &readable)) {
- sessionDiscoveryPacket(conn);
- }
- }
-#endif
-
- }
-}
-
-
-/***********************************************************************
-*%FUNCTION: sigPADT
-*%ARGUMENTS:
-* src -- signal received
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* If an established session exists send PADT to terminate from session
-* from our end
-***********************************************************************/
-void
-sigPADT(int src)
-{
- syslog(LOG_DEBUG,"Received signal %d.",(int)src);
- sendPADT(Connection, "RP-PPPoE: Received signal");
- exit(EXIT_SUCCESS);
-}
-
-/**********************************************************************
-*%FUNCTION: usage
-*%ARGUMENTS:
-* argv0 -- program name
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints usage information and exits.
-***********************************************************************/
-void
-usage(char const *argv0)
-{
- fprintf(stderr, "Usage: %s [options]\n", argv0);
- fprintf(stderr, "Options:\n");
-#ifdef USE_BPF
- fprintf(stderr, " -I if_name -- Specify interface (REQUIRED)\n");
-#else
- fprintf(stderr, " -I if_name -- Specify interface (default %s.)\n",
- DEFAULT_IF);
-#endif
- fprintf(stderr, " -T timeout -- Specify inactivity timeout in seconds.\n");
- fprintf(stderr, " -D filename -- Log debugging information in filename.\n");
- fprintf(stderr, " -V -- Print version and exit.\n");
- fprintf(stderr, " -A -- Print access concentrator names and exit.\n");
- fprintf(stderr, " -S name -- Set desired service name.\n");
- fprintf(stderr, " -C name -- Set desired access concentrator name.\n");
- fprintf(stderr, " -U -- Use Host-Unique to allow multiple PPPoE sessions.\n");
- fprintf(stderr, " -s -- Use synchronous PPP encapsulation.\n");
- fprintf(stderr, " -m MSS -- Clamp incoming and outgoing MSS options.\n");
- fprintf(stderr, " -p pidfile -- Write process-ID to pidfile.\n");
- fprintf(stderr, " -e sess:mac -- Skip discovery phase; use existing session.\n");
- fprintf(stderr, " -n -- Do not open discovery socket.\n");
- fprintf(stderr, " -k -- Kill a session with PADT (requires -e)\n");
- fprintf(stderr, " -d -- Perform discovery, print session info and exit.\n");
- fprintf(stderr, " -f disc:sess -- Set Ethernet frame types (hex).\n");
- fprintf(stderr, " -h -- Print usage information.\n\n");
- fprintf(stderr, "PPPoE Version %s, Copyright (C) 2001 Roaring Penguin Software Inc.\n", VERSION);
- fprintf(stderr, "PPPoE comes with ABSOLUTELY NO WARRANTY.\n");
- fprintf(stderr, "This is free software, and you are welcome to redistribute it under the terms\n");
- fprintf(stderr, "of the GNU General Public License, version 2 or any later version.\n");
- fprintf(stderr, "http://www.roaringpenguin.com\n");
- exit(EXIT_SUCCESS);
-}
-
-/**********************************************************************
-*%FUNCTION: main
-*%ARGUMENTS:
-* argc, argv -- count and values of command-line arguments
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Main program
-***********************************************************************/
-int
-main(int argc, char *argv[])
-{
- int opt;
- int n;
- unsigned int m[6]; /* MAC address in -e option */
- unsigned int s; /* Temporary to hold session */
- FILE *pidfile;
- unsigned int discoveryType, sessionType;
-
- PPPoEConnection conn;
-
-#ifdef HAVE_N_HDLC
- int disc = N_HDLC;
- long flags;
-#endif
-
- /* Initialize connection info */
- memset(&conn, 0, sizeof(conn));
- conn.discoverySocket = -1;
- conn.sessionSocket = -1;
-
- /* For signal handler */
- Connection = &conn;
-
- /* Initialize syslog */
- openlog("pppoe", LOG_PID, LOG_DAEMON);
-
- while((opt = getopt(argc, argv, "I:VAT:D:hS:C:Usm:np:e:kdf:")) != -1) {
- switch(opt) {
- case 'f':
- if (sscanf(optarg, "%x:%x", &discoveryType, &sessionType) != 2) {
- fprintf(stderr, "Illegal argument to -f: Should be disc:sess in hex\n");
- exit(EXIT_FAILURE);
- }
- Eth_PPPOE_Discovery = (UINT16_t) discoveryType;
- Eth_PPPOE_Session = (UINT16_t) sessionType;
- break;
- case 'd':
- optSkipSession = 1;
- break;
-
- case 'k':
- conn.killSession = 1;
- break;
-
- case 'n':
- /* Do not even open a discovery socket -- used when invoked
- by pppoe-server */
- conn.noDiscoverySocket = 1;
- break;
-
- case 'e':
- /* Existing session: "sess:xx:yy:zz:aa:bb:cc" where "sess" is
- session-ID, and xx:yy:zz:aa:bb:cc is MAC-address of peer */
- n = sscanf(optarg, "%u:%2x:%2x:%2x:%2x:%2x:%2x",
- &s, &m[0], &m[1], &m[2], &m[3], &m[4], &m[5]);
- if (n != 7) {
- fprintf(stderr, "Illegal argument to -e: Should be sess:xx:yy:zz:aa:bb:cc\n");
- exit(EXIT_FAILURE);
- }
-
- /* Copy MAC address of peer */
- for (n=0; n<6; n++) {
- conn.peerEth[n] = (unsigned char) m[n];
- }
-
- /* Convert session */
- conn.session = htons(s);
-
- /* Skip discovery phase! */
- conn.skipDiscovery = 1;
- break;
-
- case 'p':
- pidfile = fopen(optarg, "w");
- if (pidfile) {
- fprintf(pidfile, "%lu\n", (unsigned long) getpid());
- fclose(pidfile);
- }
- break;
- case 'S':
- SET_STRING(conn.serviceName, optarg);
- break;
- case 'C':
- SET_STRING(conn.acName, optarg);
- break;
- case 's':
- conn.synchronous = 1;
- break;
- case 'U':
- conn.useHostUniq = 1;
- break;
- case 'D':
- conn.debugFile = fopen(optarg, "w");
- if (!conn.debugFile) {
- fprintf(stderr, "Could not open %s: %s\n",
- optarg, strerror(errno));
- exit(EXIT_FAILURE);
- }
- fprintf(conn.debugFile, "rp-pppoe-%s\n", VERSION);
- fflush(conn.debugFile);
- break;
- case 'T':
- optInactivityTimeout = (int) strtol(optarg, NULL, 10);
- if (optInactivityTimeout < 0) {
- optInactivityTimeout = 0;
- }
- break;
- case 'm':
- optClampMSS = (int) strtol(optarg, NULL, 10);
- if (optClampMSS < 536) {
- fprintf(stderr, "-m: %d is too low (min 536)\n", optClampMSS);
- exit(EXIT_FAILURE);
- }
- if (optClampMSS > 1452) {
- fprintf(stderr, "-m: %d is too high (max 1452)\n", optClampMSS);
- exit(EXIT_FAILURE);
- }
- break;
- case 'I':
- SET_STRING(conn.ifName, optarg);
- break;
- case 'V':
- printf("Roaring Penguin PPPoE Version %s\n", VERSION);
- exit(EXIT_SUCCESS);
- case 'A':
- conn.printACNames = 1;
- break;
- case 'h':
- usage(argv[0]);
- break;
- default:
- usage(argv[0]);
- }
- }
-
- /* Pick a default interface name */
- if (!conn.ifName) {
-#ifdef USE_BPF
- fprintf(stderr, "No interface specified (-I option)\n");
- exit(EXIT_FAILURE);
-#else
- SET_STRING(conn.ifName, DEFAULT_IF);
-#endif
- }
-
- /* Set signal handlers: send PADT on TERM, HUP and INT */
- if (!conn.printACNames) {
- signal(SIGTERM, sigPADT);
- signal(SIGHUP, sigPADT);
- signal(SIGINT, sigPADT);
-
-#ifdef HAVE_N_HDLC
- if (conn.synchronous) {
- if (ioctl(0, TIOCSETD, &disc) < 0) {
- printErr("Unable to set line discipline to N_HDLC -- synchronous mode probably will fail");
- } else {
- syslog(LOG_INFO,
- "Changed pty line discipline to N_HDLC for synchronous mode");
- }
- /* There is a bug in Linux's select which returns a descriptor
- * as readable if N_HDLC line discipline is on, even if
- * it isn't really readable. This return happens only when
- * select() times out. To avoid blocking forever in read(),
- * make descriptor 0 non-blocking */
- flags = fcntl(0, F_GETFL);
- if (flags < 0) fatalSys("fcntl(F_GETFL)");
- if (fcntl(0, F_SETFL, (long) flags | O_NONBLOCK) < 0) {
- fatalSys("fcntl(F_SETFL)");
- }
- }
-#endif
-
- }
-
- discovery(&conn);
- if (optSkipSession) {
- printf("%u:%02x:%02x:%02x:%02x:%02x:%02x\n",
- ntohs(conn.session),
- conn.peerEth[0],
- conn.peerEth[1],
- conn.peerEth[2],
- conn.peerEth[3],
- conn.peerEth[4],
- conn.peerEth[5]);
- exit(EXIT_SUCCESS);
- }
- session(&conn);
- return 0;
-}
-
-/**********************************************************************
-*%FUNCTION: fatalSys
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to stderr and syslog and exits.
-***********************************************************************/
-void
-fatalSys(char const *str)
-{
- char buf[1024];
- sprintf(buf, "%.256s: %.256s", str, strerror(errno));
- printErr(buf);
- sendPADT(Connection, "RP-PPPoE: System call error");
- exit(EXIT_FAILURE);
-}
-
-/**********************************************************************
-*%FUNCTION: sysErr
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to syslog.
-***********************************************************************/
-void
-sysErr(char const *str)
-{
- char buf[1024];
- sprintf(buf, "%.256s: %.256s", str, strerror(errno));
- printErr(buf);
-}
-
-/**********************************************************************
-*%FUNCTION: rp_fatal
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message to stderr and syslog and exits.
-***********************************************************************/
-void
-rp_fatal(char const *str)
-{
- char buf[1024];
- printErr(str);
- sprintf(buf, "RP-PPPoE: %.256s", str);
- sendPADT(Connection, buf);
- exit(EXIT_FAILURE);
-}
-
-/**********************************************************************
-*%FUNCTION: asyncReadFromEth
-*%ARGUMENTS:
-* conn -- PPPoE connection info
-* sock -- Ethernet socket
-* clampMss -- if non-zero, do MSS-clamping
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Reads a packet from the Ethernet interface and sends it to async PPP
-* device.
-***********************************************************************/
-void
-asyncReadFromEth(PPPoEConnection *conn, int sock, int clampMss)
-{
- PPPoEPacket packet;
- int len;
- int plen;
- int i;
- unsigned char pppBuf[4096];
- unsigned char *ptr = pppBuf;
- unsigned char c;
- UINT16_t fcs;
- unsigned char header[2] = {FRAME_ADDR, FRAME_CTRL};
- unsigned char tail[2];
-#ifdef USE_BPF
- int type;
-#endif
-
- if (receivePacket(sock, &packet, &len) < 0) {
- return;
- }
-
- /* Check length */
- if (ntohs(packet.length) + HDR_SIZE > len) {
- syslog(LOG_ERR, "Bogus PPPoE length field (%u)",
- (unsigned int) ntohs(packet.length));
- return;
- }
- if (conn->debugFile) {
- dumpPacket(conn->debugFile, &packet, "RCVD");
- fprintf(conn->debugFile, "\n");
- fflush(conn->debugFile);
- }
-
-#ifdef USE_BPF
- /* Make sure this is a session packet before processing further */
- type = etherType(&packet);
- if (type == Eth_PPPOE_Discovery) {
- sessionDiscoveryPacket(&packet);
- } else if (type != Eth_PPPOE_Session) {
- return;
- }
-#endif
-
- /* Sanity check */
- if (packet.code != CODE_SESS) {
- syslog(LOG_ERR, "Unexpected packet code %d", (int) packet.code);
- return;
- }
- if (packet.ver != 1) {
- syslog(LOG_ERR, "Unexpected packet version %d", (int) packet.ver);
- return;
- }
- if (packet.type != 1) {
- syslog(LOG_ERR, "Unexpected packet type %d", (int) packet.type);
- return;
- }
- if (memcmp(packet.ethHdr.h_source, conn->peerEth, ETH_ALEN)) {
- /* Not for us -- must be another session. This is not an error,
- so don't log anything. */
- return;
- }
-
- if (packet.session != conn->session) {
- /* Not for us -- must be another session. This is not an error,
- so don't log anything. */
- return;
- }
- plen = ntohs(packet.length);
- if (plen + HDR_SIZE > len) {
- syslog(LOG_ERR, "Bogus length field in session packet %d (%d)",
- (int) plen, (int) len);
- return;
- }
-
- /* Clamp MSS */
- if (clampMss) {
- clampMSS(&packet, "incoming", clampMss);
- }
-
- /* Compute FCS */
- fcs = pppFCS16(PPPINITFCS16, header, 2);
- fcs = pppFCS16(fcs, packet.payload, plen) ^ 0xffff;
- tail[0] = fcs & 0x00ff;
- tail[1] = (fcs >> 8) & 0x00ff;
-
- /* Build a buffer to send to PPP */
- *ptr++ = FRAME_FLAG;
- *ptr++ = FRAME_ADDR;
- *ptr++ = FRAME_ESC;
- *ptr++ = FRAME_CTRL ^ FRAME_ENC;
-
- for (i=0; i<plen; i++) {
- c = packet.payload[i];
- if (c == FRAME_FLAG || c == FRAME_ADDR || c == FRAME_ESC || c < 0x20) {
- *ptr++ = FRAME_ESC;
- *ptr++ = c ^ FRAME_ENC;
- } else {
- *ptr++ = c;
- }
- }
- for (i=0; i<2; i++) {
- c = tail[i];
- if (c == FRAME_FLAG || c == FRAME_ADDR || c == FRAME_ESC || c < 0x20) {
- *ptr++ = FRAME_ESC;
- *ptr++ = c ^ FRAME_ENC;
- } else {
- *ptr++ = c;
- }
- }
- *ptr++ = FRAME_FLAG;
-
- /* Ship it out */
- if (write(1, pppBuf, (ptr-pppBuf)) < 0) {
- fatalSys("asyncReadFromEth: write");
- }
-}
-
-/**********************************************************************
-*%FUNCTION: syncReadFromEth
-*%ARGUMENTS:
-* conn -- PPPoE connection info
-* sock -- Ethernet socket
-* clampMss -- if true, clamp MSS.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Reads a packet from the Ethernet interface and sends it to sync PPP
-* device.
-***********************************************************************/
-void
-syncReadFromEth(PPPoEConnection *conn, int sock, int clampMss)
-{
- PPPoEPacket packet;
- int len;
- int plen;
- struct iovec vec[2];
- unsigned char dummy[2];
-#ifdef USE_BPF
- int type;
-#endif
-
- if (receivePacket(sock, &packet, &len) < 0) {
- return;
- }
-
- /* Check length */
- if (ntohs(packet.length) + HDR_SIZE > len) {
- syslog(LOG_ERR, "Bogus PPPoE length field (%u)",
- (unsigned int) ntohs(packet.length));
- return;
- }
- if (conn->debugFile) {
- dumpPacket(conn->debugFile, &packet, "RCVD");
- fprintf(conn->debugFile, "\n");
- fflush(conn->debugFile);
- }
-
-#ifdef USE_BPF
- /* Make sure this is a session packet before processing further */
- type = etherType(&packet);
- if (type == Eth_PPPOE_Discovery) {
- sessionDiscoveryPacket(&packet);
- } else if (type != Eth_PPPOE_Session) {
- return;
- }
-#endif
-
- /* Sanity check */
- if (packet.code != CODE_SESS) {
- syslog(LOG_ERR, "Unexpected packet code %d", (int) packet.code);
- return;
- }
- if (packet.ver != 1) {
- syslog(LOG_ERR, "Unexpected packet version %d", (int) packet.ver);
- return;
- }
- if (packet.type != 1) {
- syslog(LOG_ERR, "Unexpected packet type %d", (int) packet.type);
- return;
- }
- if (memcmp(packet.ethHdr.h_source, conn->peerEth, ETH_ALEN)) {
- /* Not for us -- must be another session. This is not an error,
- so don't log anything. */
- return;
- }
- if (packet.session != conn->session) {
- /* Not for us -- must be another session. This is not an error,
- so don't log anything. */
- return;
- }
- plen = ntohs(packet.length);
- if (plen + HDR_SIZE > len) {
- syslog(LOG_ERR, "Bogus length field in session packet %d (%d)",
- (int) plen, (int) len);
- return;
- }
-
- /* Clamp MSS */
- if (clampMss) {
- clampMSS(&packet, "incoming", clampMss);
- }
-
- /* Ship it out */
- vec[0].iov_base = (void *) dummy;
- dummy[0] = FRAME_ADDR;
- dummy[1] = FRAME_CTRL;
- vec[0].iov_len = 2;
- vec[1].iov_base = (void *) packet.payload;
- vec[1].iov_len = plen;
-
- if (writev(1, vec, 2) < 0) {
- fatalSys("syncReadFromEth: write");
- }
-}
-
diff --git a/mdk-stage1/rp-pppoe/src/pppoe.h b/mdk-stage1/rp-pppoe/src/pppoe.h
deleted file mode 100644
index da300c17d..000000000
--- a/mdk-stage1/rp-pppoe/src/pppoe.h
+++ /dev/null
@@ -1,331 +0,0 @@
-/***********************************************************************
-*
-* pppoe.h
-*
-* Declaration of various PPPoE constants
-*
-* Copyright (C) 2000 Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-* $Id$
-*
-***********************************************************************/
-
-#ifdef __sun__
-#define __EXTENSIONS__
-#endif
-
-#include "config.h"
-
-#if defined(HAVE_NETPACKET_PACKET_H) || defined(HAVE_LINUX_IF_PACKET_H)
-#define _POSIX_SOURCE 1 /* For sigaction defines */
-#endif
-
-#include <stdio.h> /* For FILE */
-#include <sys/types.h> /* For pid_t */
-
-/* How do we access raw Ethernet devices? */
-#undef USE_LINUX_PACKET
-#undef USE_BPF
-
-#if defined(HAVE_NETPACKET_PACKET_H) || defined(HAVE_LINUX_IF_PACKET_H)
-#define USE_LINUX_PACKET 1
-#elif defined(HAVE_NET_BPF_H)
-#define USE_BPF 1
-#elif defined(HAVE_SYS_DLPI_H)
-#define USE_DLPI
-#endif
-
-/* Sanity check */
-#if !defined(USE_BPF) && !defined(USE_LINUX_PACKET) && !defined(USE_DLPI)
-#error Unknown method for accessing raw Ethernet frames
-#endif
-
-#ifdef HAVE_SYS_CDEFS_H
-#include <sys/cdefs.h>
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-/* Ugly header files on some Linux boxes... */
-#if defined(HAVE_LINUX_IF_H)
-#include <linux/if.h>
-#elif defined(HAVE_NET_IF_H)
-#include <net/if.h>
-#endif
-
-#ifdef HAVE_NET_IF_TYPES_H
-#include <net/if_types.h>
-#endif
-
-#ifdef HAVE_NET_IF_DL_H
-#include <net/if_dl.h>
-#endif
-
-/* I'm not sure why this is needed... I do not have OpenBSD */
-#if defined(__OpenBSD__)
-#include <net/ppp_defs.h>
-#include <net/if_ppp.h>
-#endif
-
-#ifdef USE_BPF
-extern int bpfSize;
-struct PPPoEPacketStruct;
-void sessionDiscoveryPacket(struct PPPoEPacketStruct *packet);
-#define BPF_BUFFER_IS_EMPTY (bpfSize <= 0)
-#define BPF_BUFFER_HAS_DATA (bpfSize > 0)
-#define ethhdr ether_header
-#define h_dest ether_dhost
-#define h_source ether_shost
-#define h_proto ether_type
-#define ETH_DATA_LEN ETHERMTU
-#define ETH_ALEN ETHER_ADDR_LEN
-#else
-#undef USE_BPF
-#define BPF_BUFFER_IS_EMPTY 1
-#define BPF_BUFFER_HAS_DATA 0
-#endif
-
-#ifdef USE_DLPI
-#include <sys/ethernet.h>
-#define ethhdr ether_header
-#define ETH_DATA_LEN ETHERMTU
-#define ETH_ALEN ETHERADDRL
-#define h_dest ether_dhost.ether_addr_octet
-#define h_source ether_shost.ether_addr_octet
-#define h_proto ether_type
-
-/* cloned from dltest.h */
-#define MAXDLBUF 8192
-#define MAXDLADDR 1024
-#define MAXWAIT 15
-#define OFFADDR(s, n) (u_char*)((char*)(s) + (int)(n))
-#define CASERET(s) case s: return ("s")
-
-#endif
-
-/* Define various integer types -- assumes a char is 8 bits */
-#if SIZEOF_UNSIGNED_SHORT == 2
-typedef unsigned short UINT16_t;
-#elif SIZEOF_UNSIGNED_INT == 2
-typedef unsigned int UINT16_t;
-#else
-#error Could not find a 16-bit integer type
-#endif
-
-#if SIZEOF_UNSIGNED_SHORT == 4
-typedef unsigned short UINT32_t;
-#elif SIZEOF_UNSIGNED_INT == 4
-typedef unsigned int UINT32_t;
-#elif SIZEOF_UNSIGNED_LONG == 4
-typedef unsigned long UINT32_t;
-#else
-#error Could not find a 16-bit integer type
-#endif
-
-#ifdef HAVE_LINUX_IF_ETHER_H
-#include <linux/if_ether.h>
-#endif
-
-#include <netinet/in.h>
-
-#ifdef HAVE_NETINET_IF_ETHER_H
-#include <sys/types.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifndef HAVE_SYS_DLPI_H
-#include <netinet/if_ether.h>
-#endif
-#endif
-
-
-
-/* Ethernet frame types according to RFC 2516 */
-#define ETH_PPPOE_DISCOVERY 0x8863
-#define ETH_PPPOE_SESSION 0x8864
-
-/* But some brain-dead peers disobey the RFC, so frame types are variables */
-extern UINT16_t Eth_PPPOE_Discovery;
-extern UINT16_t Eth_PPPOE_Session;
-
-/* PPPoE codes */
-#define CODE_PADI 0x09
-#define CODE_PADO 0x07
-#define CODE_PADR 0x19
-#define CODE_PADS 0x65
-#define CODE_PADT 0xA7
-#define CODE_SESS 0x00
-
-/* PPPoE Tags */
-#define TAG_END_OF_LIST 0x0000
-#define TAG_SERVICE_NAME 0x0101
-#define TAG_AC_NAME 0x0102
-#define TAG_HOST_UNIQ 0x0103
-#define TAG_AC_COOKIE 0x0104
-#define TAG_VENDOR_SPECIFIC 0x0105
-#define TAG_RELAY_SESSION_ID 0x0110
-#define TAG_SERVICE_NAME_ERROR 0x0201
-#define TAG_AC_SYSTEM_ERROR 0x0202
-#define TAG_GENERIC_ERROR 0x0203
-
-/* Discovery phase states */
-#define STATE_SENT_PADI 0
-#define STATE_RECEIVED_PADO 1
-#define STATE_SENT_PADR 2
-#define STATE_SESSION 3
-#define STATE_TERMINATED 4
-
-/* How many PADI/PADS attempts? */
-#define MAX_PADI_ATTEMPTS 3
-
-/* Initial timeout for PADO/PADS */
-#define PADI_TIMEOUT 5
-
-/* States for scanning PPP frames */
-#define STATE_WAITFOR_FRAME_ADDR 0
-#define STATE_DROP_PROTO 1
-#define STATE_BUILDING_PACKET 2
-
-/* Special PPP frame characters */
-#define FRAME_ESC 0x7D
-#define FRAME_FLAG 0x7E
-#define FRAME_ADDR 0xFF
-#define FRAME_CTRL 0x03
-#define FRAME_ENC 0x20
-
-#define IPV4ALEN 4
-#define SMALLBUF 256
-
-/* A PPPoE Packet, including Ethernet headers */
-typedef struct PPPoEPacketStruct {
- struct ethhdr ethHdr; /* Ethernet header */
-#ifdef PACK_BITFIELDS_REVERSED
- unsigned int type:4; /* PPPoE Type (must be 1) */
- unsigned int ver:4; /* PPPoE Version (must be 1) */
-#else
- unsigned int ver:4; /* PPPoE Version (must be 1) */
- unsigned int type:4; /* PPPoE Type (must be 1) */
-#endif
- unsigned int code:8; /* PPPoE code */
- unsigned int session:16; /* PPPoE session */
- unsigned int length:16; /* Payload length */
- unsigned char payload[ETH_DATA_LEN]; /* A bit of room to spare */
-} PPPoEPacket;
-
-/* Header size of a PPPoE packet */
-#define PPPOE_OVERHEAD 6 /* type, code, session, length */
-#define HDR_SIZE (sizeof(struct ethhdr) + PPPOE_OVERHEAD)
-#define MAX_PPPOE_PAYLOAD (ETH_DATA_LEN - PPPOE_OVERHEAD)
-#define MAX_PPPOE_MTU (MAX_PPPOE_PAYLOAD - 2)
-
-/* PPPoE Tag */
-
-typedef struct PPPoETagStruct {
- unsigned int type:16; /* tag type */
- unsigned int length:16; /* Length of payload */
- unsigned char payload[ETH_DATA_LEN]; /* A LOT of room to spare */
-} PPPoETag;
-/* Header size of a PPPoE tag */
-#define TAG_HDR_SIZE 4
-
-/* Chunk to read from stdin */
-#define READ_CHUNK 4096
-
-/* Function passed to parsePacket */
-typedef void ParseFunc(UINT16_t type,
- UINT16_t len,
- unsigned char *data,
- void *extra);
-
-/* Structures used by PPPoE server */
-struct ClientSession {
- pid_t pid; /* PID of child handling session */
- unsigned char ip[IPV4ALEN]; /* IP address of peer */
- UINT16_t sess; /* Session number */
- unsigned char eth[ETH_ALEN]; /* Peer's Ethernet address */
- int recvdPADT; /* Peer sent a PADT */
-};
-
-#define PPPINITFCS16 0xffff /* Initial FCS value */
-
-/* Keep track of the state of a connection -- collect everything in
- one spot */
-
-typedef struct PPPoEConnectionStruct {
- int discoveryState; /* Where we are in discovery */
- int discoverySocket; /* Raw socket for discovery frames */
- int sessionSocket; /* Raw socket for session frames */
- unsigned char myEth[ETH_ALEN]; /* My MAC address */
- unsigned char peerEth[ETH_ALEN]; /* Peer's MAC address */
- UINT16_t session; /* Session ID */
- char *ifName; /* Interface name */
- char *serviceName; /* Desired service name, if any */
- char *acName; /* Desired AC name, if any */
- int synchronous; /* Use synchronous PPP */
- int useHostUniq; /* Use Host-Uniq tag */
- int printACNames; /* Just print AC names */
- int skipDiscovery; /* Skip discovery */
- int noDiscoverySocket; /* Don't even open discovery socket */
- int killSession; /* Kill session and exit */
- FILE *debugFile; /* Debug file for dumping packets */
- int numPADOs; /* Number of PADO packets received */
- PPPoETag cookie; /* We have to send this if we get it */
- PPPoETag relayId; /* Ditto */
-} PPPoEConnection;
-
-/* Structure used to determine acceptable PADO or PADS packet */
-struct PacketCriteria {
- PPPoEConnection *conn;
- int acNameOK;
- int serviceNameOK;
-};
-
-/* Function Prototypes */
-UINT16_t etherType(PPPoEPacket *packet);
-int openInterface(char const *ifname, UINT16_t type, unsigned char *hwaddr);
-int sendPacket(PPPoEConnection *conn, int sock, PPPoEPacket *pkt, int size);
-int receivePacket(int sock, PPPoEPacket *pkt, int *size);
-void fatalSys(char const *str);
-void rp_fatal(char const *str);
-void printErr(char const *str);
-void sysErr(char const *str);
-void dumpPacket(FILE *fp, PPPoEPacket *packet, char const *dir);
-void dumpHex(FILE *fp, unsigned char const *buf, int len);
-int parsePacket(PPPoEPacket *packet, ParseFunc *func, void *extra);
-void parseLogErrs(UINT16_t typ, UINT16_t len, unsigned char *data, void *xtra);
-void syncReadFromPPP(PPPoEConnection *conn, PPPoEPacket *packet);
-void asyncReadFromPPP(PPPoEConnection *conn, PPPoEPacket *packet);
-void asyncReadFromEth(PPPoEConnection *conn, int sock, int clampMss);
-void syncReadFromEth(PPPoEConnection *conn, int sock, int clampMss);
-char *strDup(char const *str);
-void sendPADT(PPPoEConnection *conn, char const *msg);
-void sendSessionPacket(PPPoEConnection *conn,
- PPPoEPacket *packet, int len);
-void initPPP(void);
-void clampMSS(PPPoEPacket *packet, char const *dir, int clampMss);
-UINT16_t computeTCPChecksum(unsigned char *ipHdr, unsigned char *tcpHdr);
-UINT16_t pppFCS16(UINT16_t fcs, unsigned char *cp, int len);
-void discovery(PPPoEConnection *conn);
-unsigned char *findTag(PPPoEPacket *packet, UINT16_t tagType,
- PPPoETag *tag);
-
-#define SET_STRING(var, val) do { if (var) free(var); var = strDup(val); } while(0);
-
-#define CHECK_ROOM(cursor, start, len) \
-do {\
- if (((cursor)-(start))+(len) > MAX_PPPOE_PAYLOAD) { \
- syslog(LOG_ERR, "Would create too-long packet"); \
- return; \
- } \
-} while(0)
-
-/* True if Ethernet address is broadcast or multicast */
-#define NOT_UNICAST(e) ((e[0] & 0x01) != 0)
-#define BROADCAST(e) ((e[0] & e[1] & e[2] & e[3] & e[4] & e[5]) == 0xFF)
-#define NOT_BROADCAST(e) ((e[0] & e[1] & e[2] & e[3] & e[4] & e[5]) != 0xFF)
diff --git a/mdk-stage1/rp-pppoe/src/relay.c b/mdk-stage1/rp-pppoe/src/relay.c
deleted file mode 100644
index 9738cb8a8..000000000
--- a/mdk-stage1/rp-pppoe/src/relay.c
+++ /dev/null
@@ -1,1541 +0,0 @@
-/***********************************************************************
-*
-* relay.c
-*
-* Implementation of PPPoE relay
-*
-* Copyright (C) 2001 Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-* $Id$
-*
-***********************************************************************/
-static char const RCSID[] =
-"$Id$";
-
-#define _GNU_SOURCE 1 /* For SA_RESTART */
-
-#include "relay.h"
-
-#include <signal.h>
-
-#ifdef HAVE_SYSLOG_H
-#include <syslog.h>
-#endif
-
-#ifdef HAVE_GETOPT_H
-#include <getopt.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#ifdef HAVE_SYS_UIO_H
-#include <sys/uio.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-
-/* Interfaces (max MAX_INTERFACES) */
-PPPoEInterface Interfaces[MAX_INTERFACES];
-int NumInterfaces;
-
-/* Relay info */
-int NumSessions;
-int MaxSessions;
-PPPoESession *AllSessions;
-PPPoESession *FreeSessions;
-PPPoESession *ActiveSessions;
-
-SessionHash *AllHashes;
-SessionHash *FreeHashes;
-SessionHash *Buckets[HASHTAB_SIZE];
-
-volatile unsigned int Epoch = 0;
-volatile unsigned int CleanCounter = 0;
-
-/* How often to clean up stale sessions? */
-#define MIN_CLEAN_PERIOD 30 /* Minimum period to run cleaner */
-#define TIMEOUT_DIVISOR 20 /* How often to run cleaner per timeout period */
-unsigned int CleanPeriod = MIN_CLEAN_PERIOD;
-
-/* How long a session can be idle before it is cleaned up? */
-unsigned int IdleTimeout = MIN_CLEAN_PERIOD * TIMEOUT_DIVISOR;
-
-/* Pipe for breaking select() to initiate periodic cleaning */
-int CleanPipe[2];
-
-/* Our relay: if_index followed by peer_mac */
-#define MY_RELAY_TAG_LEN (sizeof(int) + ETH_ALEN)
-
-/* Hack for daemonizing */
-#define CLOSEFD 64
-
-/**********************************************************************
-*%FUNCTION: keepDescriptor
-*%ARGUMENTS:
-* fd -- a file descriptor
-*%RETURNS:
-* 1 if descriptor should NOT be closed during daemonizing; 0 otherwise.
-***********************************************************************/
-static int
-keepDescriptor(int fd)
-{
- int i;
- if (fd == CleanPipe[0] || fd == CleanPipe[1]) return 1;
- for (i=0; i<NumInterfaces; i++) {
- if (fd == Interfaces[i].discoverySock ||
- fd == Interfaces[i].sessionSock) return 1;
- }
- return 0;
-}
-
-/**********************************************************************
-*%FUNCTION: addTag
-*%ARGUMENTS:
-* packet -- a PPPoE packet
-* tag -- tag to add
-*%RETURNS:
-* -1 if no room in packet; number of bytes added otherwise.
-*%DESCRIPTION:
-* Inserts a tag as the first tag in a PPPoE packet.
-***********************************************************************/
-int
-addTag(PPPoEPacket *packet, PPPoETag const *tag)
-{
- return insertBytes(packet, packet->payload, tag,
- ntohs(tag->length) + TAG_HDR_SIZE);
-}
-
-/**********************************************************************
-*%FUNCTION: insertBytes
-*%ARGUMENTS:
-* packet -- a PPPoE packet
-* loc -- location at which to insert bytes of data
-* bytes -- the data to insert
-* len -- length of data to insert
-*%RETURNS:
-* -1 if no room in packet; len otherwise.
-*%DESCRIPTION:
-* Inserts "len" bytes of data at location "loc" in "packet", moving all
-* other data up to make room.
-***********************************************************************/
-int
-insertBytes(PPPoEPacket *packet,
- unsigned char *loc,
- void const *bytes,
- int len)
-{
- int toMove;
- int plen = ntohs(packet->length);
- /* Sanity checks */
- if (loc < packet->payload ||
- loc > packet->payload + plen ||
- len + plen > MAX_PPPOE_PAYLOAD) {
- return -1;
- }
-
- toMove = (packet->payload + plen) - loc;
- memmove(loc+len, loc, toMove);
- memcpy(loc, bytes, len);
- packet->length = htons(plen + len);
- return len;
-}
-
-/**********************************************************************
-*%FUNCTION: removeBytes
-*%ARGUMENTS:
-* packet -- a PPPoE packet
-* loc -- location at which to remove bytes of data
-* len -- length of data to remove
-*%RETURNS:
-* -1 if there was a problem, len otherwise
-*%DESCRIPTION:
-* Removes "len" bytes of data from location "loc" in "packet", moving all
-* other data down to close the gap
-***********************************************************************/
-int
-removeBytes(PPPoEPacket *packet,
- unsigned char *loc,
- int len)
-{
- int toMove;
- int plen = ntohs(packet->length);
- /* Sanity checks */
- if (len < 0 || len > plen ||
- loc < packet->payload ||
- loc + len > packet->payload + plen) {
- return -1;
- }
-
- toMove = ((packet->payload + plen) - loc) - len;
- memmove(loc, loc+len, toMove);
- packet->length = htons(plen - len);
- return len;
-}
-
-/**********************************************************************
-*%FUNCTION: usage
-*%ARGUMENTS:
-* argv0 -- program name
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints usage information and exits.
-***********************************************************************/
-void
-usage(char const *argv0)
-{
- fprintf(stderr, "Usage: %s [options]\n", argv0);
- fprintf(stderr, "Options:\n");
- fprintf(stderr, " -S if_name -- Specify interface for PPPoE Server\n");
- fprintf(stderr, " -C if_name -- Specify interface for PPPoE Client\n");
- fprintf(stderr, " -B if_name -- Specify interface for both clients and server\n");
- fprintf(stderr, " -n nsess -- Maxmimum number of sessions to relay\n");
- fprintf(stderr, " -i timeout -- Idle timeout in seconds (0 = no timeout)\n");
- fprintf(stderr, " -F -- Do not fork into background\n");
- fprintf(stderr, " -h -- Print this help message\n");
-
- fprintf(stderr, "\nPPPoE Version %s, Copyright (C) 2001 Roaring Penguin Software Inc.\n", VERSION);
- fprintf(stderr, "PPPoE comes with ABSOLUTELY NO WARRANTY.\n");
- fprintf(stderr, "This is free software, and you are welcome to redistribute it under the terms\n");
- fprintf(stderr, "of the GNU General Public License, version 2 or any later version.\n");
- fprintf(stderr, "http://www.roaringpenguin.com\n");
- exit(EXIT_SUCCESS);
-}
-
-/**********************************************************************
-*%FUNCTION: main
-*%ARGUMENTS:
-* argc, argv -- usual suspects
-*%RETURNS:
-* EXIT_SUCCESS or EXIT_FAILURE
-*%DESCRIPTION:
-* Main program. Options:
-* -C ifname -- Use interface for PPPoE clients
-* -S ifname -- Use interface for PPPoE servers
-* -B ifname -- Use interface for both clients and servers
-* -n sessions -- Maximum of "n" sessions
-***********************************************************************/
-int
-main(int argc, char *argv[])
-{
- int opt;
- int nsess = DEFAULT_SESSIONS;
- struct sigaction sa;
- int beDaemon = 1;
- openlog("pppoe-relay", LOG_PID, LOG_DAEMON);
-
- while((opt = getopt(argc, argv, "hC:S:B:n:i:F")) != -1) {
- switch(opt) {
- case 'h':
- usage(argv[0]);
- break;
- case 'F':
- beDaemon = 0;
- break;
- case 'C':
- addInterface(optarg, 1, 0);
- break;
- case 'S':
- addInterface(optarg, 0, 1);
- break;
- case 'B':
- addInterface(optarg, 1, 1);
- break;
- case 'i':
- if (sscanf(optarg, "%u", &IdleTimeout) != 1) {
- fprintf(stderr, "Illegal argument to -i: should be -i timeout\n");
- exit(EXIT_FAILURE);
- }
- CleanPeriod = IdleTimeout / TIMEOUT_DIVISOR;
- if (CleanPeriod < MIN_CLEAN_PERIOD) CleanPeriod = MIN_CLEAN_PERIOD;
- break;
- case 'n':
- if (sscanf(optarg, "%d", &nsess) != 1) {
- fprintf(stderr, "Illegal argument to -n: should be -n #sessions\n");
- exit(EXIT_FAILURE);
- }
- if (nsess < 1 || nsess > 65534) {
- fprintf(stderr, "Illegal argument to -n: must range from 1 to 65534\n");
- exit(EXIT_FAILURE);
- }
- break;
- default:
- usage(argv[0]);
- }
- }
-
-#ifdef USE_LINUX_PACKET
-#ifndef HAVE_STRUCT_SOCKADDR_LL
- fprintf(stderr, "The PPPoE relay does not work on Linux 2.0 kernels.\n");
- exit(EXIT_FAILURE);
-#endif
-#endif
-
- /* Check that at least two interfaces were defined */
- if (NumInterfaces < 2) {
- fprintf(stderr, "%s: Must define at least two interfaces\n",
- argv[0]);
- exit(EXIT_FAILURE);
- }
-
- /* Make a pipe for the cleaner */
- if (pipe(CleanPipe) < 0) {
- fatalSys("pipe");
- }
-
- /* Set up alarm handler */
- sa.sa_handler = alarmHandler;
- sigemptyset(&sa.sa_mask);
- sa.sa_flags = SA_RESTART;
- if (sigaction(SIGALRM, &sa, NULL) < 0) {
- fatalSys("sigaction");
- }
-
- /* Allocate memory for sessions, etc. */
- initRelay(nsess);
-
- /* Daemonize -- UNIX Network Programming, Vol. 1, Stevens */
- if (beDaemon) {
- int i;
- i = fork();
- if (i < 0) {
- fatalSys("fork");
- } else if (i != 0) {
- /* parent */
- exit(0);
- }
- setsid();
- signal(SIGHUP, SIG_IGN);
- i = fork();
- if (i < 0) {
- fatalSys("fork");
- } else if (i != 0) {
- exit(0);
- }
-
- chdir("/");
- closelog();
- for (i=0; i<CLOSEFD; i++) {
- if (!keepDescriptor(i)) {
- close(i);
- }
- }
- /* We nuked our syslog descriptor... */
- openlog("pppoe-relay", LOG_PID, LOG_DAEMON);
- }
-
- /* Kick off SIGALRM if there is an idle timeout */
- if (IdleTimeout) alarm(1);
-
- /* Enter the relay loop */
- relayLoop();
-
- /* Shouldn't ever get here... */
- return EXIT_FAILURE;
-}
-
-/**********************************************************************
-*%FUNCTION: addInterface
-*%ARGUMENTS:
-* ifname -- interface name
-* clientOK -- true if this interface should relay PADI, PADR packets.
-* acOK -- true if this interface should relay PADO, PADS packets.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Opens an interface; sets up discovery and session sockets.
-***********************************************************************/
-void
-addInterface(char const *ifname,
- int clientOK,
- int acOK)
-{
- PPPoEInterface *i;
- if (NumInterfaces >= MAX_INTERFACES) {
- fprintf(stderr, "Too many interfaces (%d max)\n",
- MAX_INTERFACES);
- exit(EXIT_FAILURE);
- }
- i = &Interfaces[NumInterfaces++];
- strncpy(i->name, ifname, IFNAMSIZ);
- i->name[IFNAMSIZ] = 0;
-
- i->discoverySock = openInterface(ifname, Eth_PPPOE_Discovery, i->mac);
- i->sessionSock = openInterface(ifname, Eth_PPPOE_Session, NULL);
- i->clientOK = clientOK;
- i->acOK = acOK;
-}
-
-/**********************************************************************
-*%FUNCTION: initRelay
-*%ARGUMENTS:
-* nsess -- maximum allowable number of sessions
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Initializes relay hash table and session tables.
-***********************************************************************/
-void
-initRelay(int nsess)
-{
- int i;
- NumSessions = 0;
- MaxSessions = nsess;
-
- AllSessions = calloc(MaxSessions, sizeof(PPPoESession));
- if (!AllSessions) {
- rp_fatal("Unable to allocate memory for PPPoE session table");
- }
- AllHashes = calloc(MaxSessions*2, sizeof(SessionHash));
- if (!AllHashes) {
- rp_fatal("Unable to allocate memory for PPPoE hash table");
- }
-
- /* Initialize sessions in a linked list */
- AllSessions[0].prev = NULL;
- if (MaxSessions > 1) {
- AllSessions[0].next = &AllSessions[1];
- } else {
- AllSessions[0].next = NULL;
- }
- for (i=1; i<MaxSessions-1; i++) {
- AllSessions[i].prev = &AllSessions[i-1];
- AllSessions[i].next = &AllSessions[i+1];
- }
- if (MaxSessions > 1) {
- AllSessions[MaxSessions-1].prev = &AllSessions[MaxSessions-2];
- AllSessions[MaxSessions-1].next = NULL;
- }
-
- FreeSessions = AllSessions;
- ActiveSessions = NULL;
-
- /* Initialize session numbers which we hand out */
- for (i=0; i<MaxSessions; i++) {
- AllSessions[i].sesNum = htons((UINT16_t) i+1);
- }
-
- /* Initialize hashes in a linked list */
- AllHashes[0].prev = NULL;
- AllHashes[0].next = &AllHashes[1];
- for (i=1; i<2*MaxSessions-1; i++) {
- AllHashes[i].prev = &AllHashes[i-1];
- AllHashes[i].next = &AllHashes[i+1];
- }
- AllHashes[2*MaxSessions-1].prev = &AllHashes[2*MaxSessions-2];
- AllHashes[2*MaxSessions-1].next = NULL;
-
- FreeHashes = AllHashes;
-}
-
-/**********************************************************************
-*%FUNCTION: createSession
-*%ARGUMENTS:
-* ac -- Ethernet interface on access-concentrator side
-* cli -- Ethernet interface on client side
-* acMac -- Access concentrator's MAC address
-* cliMac -- Client's MAC address
-* acSess -- Access concentrator's session ID.
-*%RETURNS:
-* PPPoESession structure; NULL if one could not be allocated
-*%DESCRIPTION:
-* Initializes relay hash table and session tables.
-***********************************************************************/
-PPPoESession *
-createSession(PPPoEInterface const *ac,
- PPPoEInterface const *cli,
- unsigned char const *acMac,
- unsigned char const *cliMac,
- UINT16_t acSes)
-{
- PPPoESession *sess;
- SessionHash *acHash, *cliHash;
-
- if (NumSessions >= MaxSessions) {
- printErr("Maximum number of sessions reached -- cannot create new session");
- return NULL;
- }
-
- /* Grab a free session */
- sess = FreeSessions;
- FreeSessions = sess->next;
- NumSessions++;
-
- /* Link it to the active list */
- sess->next = ActiveSessions;
- if (sess->next) {
- sess->next->prev = sess;
- }
- ActiveSessions = sess;
- sess->prev = NULL;
-
- sess->epoch = Epoch;
-
- /* Get two hash entries */
- acHash = FreeHashes;
- cliHash = acHash->next;
- FreeHashes = cliHash->next;
-
- acHash->peer = cliHash;
- cliHash->peer = acHash;
-
- sess->acHash = acHash;
- sess->clientHash = cliHash;
-
- acHash->interface = ac;
- cliHash->interface = cli;
-
- memcpy(acHash->peerMac, acMac, ETH_ALEN);
- acHash->sesNum = acSes;
- acHash->ses = sess;
-
- memcpy(cliHash->peerMac, cliMac, ETH_ALEN);
- cliHash->sesNum = sess->sesNum;
- cliHash->ses = sess;
-
- addHash(acHash);
- addHash(cliHash);
-
- /* Log */
- syslog(LOG_INFO,
- "Opened session: server=%02x:%02x:%02x:%02x:%02x:%02x(%s:%d), client=%02x:%02x:%02x:%02x:%02x:%02x(%s:%d)",
- acHash->peerMac[0], acHash->peerMac[1],
- acHash->peerMac[2], acHash->peerMac[3],
- acHash->peerMac[4], acHash->peerMac[5],
- acHash->interface->name,
- ntohs(acHash->sesNum),
- cliHash->peerMac[0], cliHash->peerMac[1],
- cliHash->peerMac[2], cliHash->peerMac[3],
- cliHash->peerMac[4], cliHash->peerMac[5],
- cliHash->interface->name,
- ntohs(cliHash->sesNum));
-
- return sess;
-}
-
-/**********************************************************************
-*%FUNCTION: freeSession
-*%ARGUMENTS:
-* ses -- session to free
-* msg -- extra message to log on syslog.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Frees data used by a PPPoE session -- adds hashes and session back
-* to the free list
-***********************************************************************/
-void
-freeSession(PPPoESession *ses, char const *msg)
-{
- syslog(LOG_INFO,
- "Closed session: server=%02x:%02x:%02x:%02x:%02x:%02x(%s:%d), client=%02x:%02x:%02x:%02x:%02x:%02x(%s:%d): %s",
- ses->acHash->peerMac[0], ses->acHash->peerMac[1],
- ses->acHash->peerMac[2], ses->acHash->peerMac[3],
- ses->acHash->peerMac[4], ses->acHash->peerMac[5],
- ses->acHash->interface->name,
- ntohs(ses->acHash->sesNum),
- ses->clientHash->peerMac[0], ses->clientHash->peerMac[1],
- ses->clientHash->peerMac[2], ses->clientHash->peerMac[3],
- ses->clientHash->peerMac[4], ses->clientHash->peerMac[5],
- ses->clientHash->interface->name,
- ntohs(ses->clientHash->sesNum), msg);
-
- /* Unlink from active sessions */
- if (ses->prev) {
- ses->prev->next = ses->next;
- } else {
- ActiveSessions = ses->next;
- }
- if (ses->next) {
- ses->next->prev = ses->prev;
- }
-
- /* Link onto free list -- this is a singly-linked list, so
- we do not care about prev */
- ses->next = FreeSessions;
- FreeSessions = ses;
-
- unhash(ses->acHash);
- unhash(ses->clientHash);
- NumSessions--;
-}
-
-/**********************************************************************
-*%FUNCTION: unhash
-*%ARGUMENTS:
-* sh -- session hash to free
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Frees a session hash -- takes it out of hash table and puts it on
-* free list.
-***********************************************************************/
-void
-unhash(SessionHash *sh)
-{
- unsigned int b = hash(sh->peerMac, sh->sesNum) % HASHTAB_SIZE;
- if (sh->prev) {
- sh->prev->next = sh->next;
- } else {
- Buckets[b] = sh->next;
- }
-
- if (sh->next) {
- sh->next->prev = sh->prev;
- }
-
- /* Add to free list (singly-linked) */
- sh->next = FreeHashes;
- FreeHashes = sh;
-}
-
-/**********************************************************************
-*%FUNCTION: addHash
-*%ARGUMENTS:
-* sh -- a session hash
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Adds a SessionHash to the hash table
-***********************************************************************/
-void
-addHash(SessionHash *sh)
-{
- unsigned int b = hash(sh->peerMac, sh->sesNum) % HASHTAB_SIZE;
- sh->next = Buckets[b];
- sh->prev = NULL;
- if (sh->next) {
- sh->next->prev = sh;
- }
- Buckets[b] = sh;
-}
-
-/**********************************************************************
-*%FUNCTION: hash
-*%ARGUMENTS:
-* mac -- an Ethernet address
-* sesNum -- a session number
-*%RETURNS:
-* A hash value combining Ethernet address with session number.
-* Currently very simplistic; we may need to experiment with different
-* hash values.
-***********************************************************************/
-unsigned int
-hash(unsigned char const *mac, UINT16_t sesNum)
-{
- unsigned int ans1 =
- ((unsigned int) mac[0]) |
- (((unsigned int) mac[1]) << 8) |
- (((unsigned int) mac[2]) << 16) |
- (((unsigned int) mac[3]) << 24);
- unsigned int ans2 =
- ((unsigned int) sesNum) |
- (((unsigned int) mac[4]) << 16) |
- (((unsigned int) mac[5]) << 24);
- return ans1 ^ ans2;
-}
-
-/**********************************************************************
-*%FUNCTION: findSession
-*%ARGUMENTS:
-* mac -- an Ethernet address
-* sesNum -- a session number
-*%RETURNS:
-* The session hash for peer address "mac", session number sesNum
-***********************************************************************/
-SessionHash *
-findSession(unsigned char const *mac, UINT16_t sesNum)
-{
- unsigned int b = hash(mac, sesNum) % HASHTAB_SIZE;
- SessionHash *sh = Buckets[b];
- while(sh) {
- if (!memcmp(mac, sh->peerMac, ETH_ALEN) && sesNum == sh->sesNum) {
- return sh;
- }
- sh = sh->next;
- }
- return NULL;
-}
-
-/**********************************************************************
-*%FUNCTION: fatalSys
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to stderr and syslog and exits.
-***********************************************************************/
-void
-fatalSys(char const *str)
-{
- char buf[1024];
- sprintf(buf, "%.256s: %.256s", str, strerror(errno));
- printErr(buf);
- exit(EXIT_FAILURE);
-}
-
-/**********************************************************************
-*%FUNCTION: sysErr
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message plus the errno value to syslog.
-***********************************************************************/
-void
-sysErr(char const *str)
-{
- char buf[1024];
- sprintf(buf, "%.256s: %.256s", str, strerror(errno));
- printErr(buf);
-}
-
-/**********************************************************************
-*%FUNCTION: rp_fatal
-*%ARGUMENTS:
-* str -- error message
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Prints a message to stderr and syslog and exits.
-***********************************************************************/
-void
-rp_fatal(char const *str)
-{
- printErr(str);
- exit(EXIT_FAILURE);
-}
-
-/**********************************************************************
-*%FUNCTION: relayLoop
-*%ARGUMENTS:
-* None
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Runs the relay loop. This function never returns
-***********************************************************************/
-void
-relayLoop()
-{
- fd_set readable, readableCopy;
- int maxFD;
- int i, r;
- int sock;
-
- /* Build the select set */
- FD_ZERO(&readable);
- maxFD = 0;
- for (i=0; i<NumInterfaces; i++) {
- sock = Interfaces[i].discoverySock;
- if (sock > maxFD) maxFD = sock;
- FD_SET(sock, &readable);
- sock = Interfaces[i].sessionSock;
- if (sock > maxFD) maxFD = sock;
- FD_SET(sock, &readable);
- if (CleanPipe[0] > maxFD) maxFD = CleanPipe[0];
- FD_SET(CleanPipe[0], &readable);
- }
- maxFD++;
- for(;;) {
- readableCopy = readable;
- for(;;) {
- r = select(maxFD, &readableCopy, NULL, NULL, NULL);
- if (r >= 0 || errno != EINTR) break;
- }
- if (r < 0) {
- sysErr("select (relayLoop)");
- continue;
- }
-
- /* Handle session packets first */
- for (i=0; i<NumInterfaces; i++) {
- if (FD_ISSET(Interfaces[i].sessionSock, &readableCopy)) {
- relayGotSessionPacket(&Interfaces[i]);
- }
- }
-
- /* Now handle discovery packets */
- for (i=0; i<NumInterfaces; i++) {
- if (FD_ISSET(Interfaces[i].discoverySock, &readableCopy)) {
- relayGotDiscoveryPacket(&Interfaces[i]);
- }
- }
-
- /* Handle the session-cleaning process */
- if (FD_ISSET(CleanPipe[0], &readableCopy)) {
- char dummy;
- CleanCounter = 0;
- read(CleanPipe[0], &dummy, 1);
- if (IdleTimeout) cleanSessions();
- }
- }
-}
-
-/**********************************************************************
-*%FUNCTION: relayGotDiscoveryPacket
-*%ARGUMENTS:
-* iface -- interface on which packet is waiting
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Receives and processes a discovery packet.
-***********************************************************************/
-void
-relayGotDiscoveryPacket(PPPoEInterface const *iface)
-{
- PPPoEPacket packet;
- int size;
-
- if (receivePacket(iface->discoverySock, &packet, &size) < 0) {
- return;
- }
- /* Ignore unknown code/version */
- if (packet.ver != 1 || packet.type != 1) {
- return;
- }
-
- /* Validate length */
- if (ntohs(packet.length) + HDR_SIZE > size) {
- syslog(LOG_ERR, "Bogus PPPoE length field (%u)",
- (unsigned int) ntohs(packet.length));
- return;
- }
-
- /* Drop Ethernet frame padding */
- if (size > ntohs(packet.length) + HDR_SIZE) {
- size = ntohs(packet.length) + HDR_SIZE;
- }
-
- switch(packet.code) {
- case CODE_PADT:
- relayHandlePADT(iface, &packet, size);
- break;
- case CODE_PADI:
- relayHandlePADI(iface, &packet, size);
- break;
- case CODE_PADO:
- relayHandlePADO(iface, &packet, size);
- break;
- case CODE_PADR:
- relayHandlePADR(iface, &packet, size);
- break;
- case CODE_PADS:
- relayHandlePADS(iface, &packet, size);
- break;
- default:
- syslog(LOG_ERR, "Discovery packet on %s with unknown code %d",
- iface->name, (int) packet.code);
- }
-}
-
-/**********************************************************************
-*%FUNCTION: relayGotSessionPacket
-*%ARGUMENTS:
-* iface -- interface on which packet is waiting
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Receives and processes a session packet.
-***********************************************************************/
-void
-relayGotSessionPacket(PPPoEInterface const *iface)
-{
- PPPoEPacket packet;
- int size;
- SessionHash *sh;
- PPPoESession *ses;
-
- if (receivePacket(iface->sessionSock, &packet, &size) < 0) {
- return;
- }
-
- /* Ignore unknown code/version */
- if (packet.ver != 1 || packet.type != 1) {
- return;
- }
-
- /* Must be a session packet */
- if (packet.code != CODE_SESS) {
- syslog(LOG_ERR, "Session packet with code %d", (int) packet.code);
- return;
- }
-
- /* Ignore session packets whose destination address isn't ours */
- if (memcmp(packet.ethHdr.h_dest, iface->mac, ETH_ALEN)) {
- return;
- }
-
- /* Validate length */
- if (ntohs(packet.length) + HDR_SIZE > size) {
- syslog(LOG_ERR, "Bogus PPPoE length field (%u)",
- (unsigned int) ntohs(packet.length));
- return;
- }
-
- /* Drop Ethernet frame padding */
- if (size > ntohs(packet.length) + HDR_SIZE) {
- size = ntohs(packet.length) + HDR_SIZE;
- }
-
- /* We're in business! Find the hash */
- sh = findSession(packet.ethHdr.h_source, packet.session);
- if (!sh) {
- /* Don't log this. Someone could be running the client and the
- relay on the same box. */
- return;
- }
-
- /* Relay it */
- ses = sh->ses;
- ses->epoch = Epoch;
- sh = sh->peer;
- packet.session = sh->sesNum;
- memcpy(packet.ethHdr.h_source, sh->interface->mac, ETH_ALEN);
- memcpy(packet.ethHdr.h_dest, sh->peerMac, ETH_ALEN);
-#if 0
- fprintf(stderr, "Relaying %02x:%02x:%02x:%02x:%02x:%02x(%s:%d) to %02x:%02x:%02x:%02x:%02x:%02x(%s:%d)\n",
- sh->peer->peerMac[0], sh->peer->peerMac[1], sh->peer->peerMac[2],
- sh->peer->peerMac[3], sh->peer->peerMac[4], sh->peer->peerMac[5],
- sh->peer->interface->name, ntohs(sh->peer->sesNum),
- sh->peerMac[0], sh->peerMac[1], sh->peerMac[2],
- sh->peerMac[3], sh->peerMac[4], sh->peerMac[5],
- sh->interface->name, ntohs(sh->sesNum));
-#endif
- sendPacket(NULL, sh->interface->sessionSock, &packet, size);
-}
-
-/**********************************************************************
-*%FUNCTION: relayHandlePADT
-*%ARGUMENTS:
-* iface -- interface on which packet was received
-* packet -- the PADT packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Receives and processes a PADT packet.
-***********************************************************************/
-void
-relayHandlePADT(PPPoEInterface const *iface,
- PPPoEPacket *packet,
- int size)
-{
- SessionHash *sh;
- PPPoESession *ses;
-
- sh = findSession(packet->ethHdr.h_source, packet->session);
- if (!sh) {
- return;
- }
- /* Relay the PADT to the peer */
- sh = sh->peer;
- ses = sh->ses;
- packet->session = sh->sesNum;
- memcpy(packet->ethHdr.h_source, sh->interface->mac, ETH_ALEN);
- memcpy(packet->ethHdr.h_dest, sh->peerMac, ETH_ALEN);
- sendPacket(NULL, sh->interface->sessionSock, packet, size);
-
- /* Destroy the session */
- freeSession(ses, "Received PADT");
-}
-
-/**********************************************************************
-*%FUNCTION: relayHandlePADI
-*%ARGUMENTS:
-* iface -- interface on which packet was received
-* packet -- the PADI packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Receives and processes a PADI packet.
-***********************************************************************/
-void
-relayHandlePADI(PPPoEInterface const *iface,
- PPPoEPacket *packet,
- int size)
-{
- PPPoETag tag;
- unsigned char *loc;
- int i, r;
-
- int ifIndex;
-
- /* Can a client legally be behind this interface? */
- if (!iface->clientOK) {
- syslog(LOG_ERR,
- "PADI packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s not permitted",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Source address must be unicast */
- if (NOT_UNICAST(packet->ethHdr.h_source)) {
- syslog(LOG_ERR,
- "PADI packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s not from a unicast address",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Destination address must be broadcast */
- if (NOT_BROADCAST(packet->ethHdr.h_dest)) {
- syslog(LOG_ERR,
- "PADI packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s not to a broadcast address",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Get array index of interface */
- ifIndex = iface - Interfaces;
-
- loc = findTag(packet, TAG_RELAY_SESSION_ID, &tag);
- if (!loc) {
- tag.type = htons(TAG_RELAY_SESSION_ID);
- tag.length = htons(MY_RELAY_TAG_LEN);
- memcpy(tag.payload, &ifIndex, sizeof(ifIndex));
- memcpy(tag.payload+sizeof(ifIndex), packet->ethHdr.h_source, ETH_ALEN);
- /* Add a relay tag if there's room */
- r = addTag(packet, &tag);
- if (r < 0) return;
- size += r;
- } else {
- /* We do not re-use relay-id tags. Drop the frame. The RFC says the
- relay agent SHOULD return a Generic-Error tag, but this does not
- make sense for PADI packets. */
- return;
- }
-
- /* Broadcast the PADI on all AC-capable interfaces except the interface
- on which it came */
- for (i=0; i < NumInterfaces; i++) {
- if (iface == &Interfaces[i]) continue;
- if (!Interfaces[i].acOK) continue;
- memcpy(packet->ethHdr.h_source, Interfaces[i].mac, ETH_ALEN);
- sendPacket(NULL, Interfaces[i].discoverySock, packet, size);
- }
-
-}
-
-/**********************************************************************
-*%FUNCTION: relayHandlePADO
-*%ARGUMENTS:
-* iface -- interface on which packet was received
-* packet -- the PADO packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Receives and processes a PADO packet.
-***********************************************************************/
-void
-relayHandlePADO(PPPoEInterface const *iface,
- PPPoEPacket *packet,
- int size)
-{
- PPPoETag tag;
- unsigned char *loc;
- int ifIndex;
- int acIndex;
-
- /* Can a server legally be behind this interface? */
- if (!iface->acOK) {
- syslog(LOG_ERR,
- "PADO packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s not permitted",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- acIndex = iface - Interfaces;
-
- /* Source address must be unicast */
- if (NOT_UNICAST(packet->ethHdr.h_source)) {
- syslog(LOG_ERR,
- "PADO packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s not from a unicast address",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Destination address must be interface's MAC address */
- if (memcmp(packet->ethHdr.h_dest, iface->mac, ETH_ALEN)) {
- return;
- }
-
- /* Find relay tag */
- loc = findTag(packet, TAG_RELAY_SESSION_ID, &tag);
- if (!loc) {
- syslog(LOG_ERR,
- "PADO packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s does not have Relay-Session-Id tag",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* If it's the wrong length, ignore it */
- if (ntohs(tag.length) != MY_RELAY_TAG_LEN) {
- syslog(LOG_ERR,
- "PADO packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s does not have correct length Relay-Session-Id tag",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Extract interface index */
- memcpy(&ifIndex, tag.payload, sizeof(ifIndex));
-
- if (ifIndex < 0 || ifIndex >= NumInterfaces ||
- !Interfaces[ifIndex].clientOK ||
- iface == &Interfaces[ifIndex]) {
- syslog(LOG_ERR,
- "PADO packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s has invalid interface in Relay-Session-Id tag",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Replace Relay-ID tag with opposite-direction tag */
- memcpy(loc+TAG_HDR_SIZE, &acIndex, sizeof(acIndex));
- memcpy(loc+TAG_HDR_SIZE+sizeof(ifIndex), packet->ethHdr.h_source, ETH_ALEN);
-
- /* Set destination address to MAC address in relay ID */
- memcpy(packet->ethHdr.h_dest, tag.payload + sizeof(ifIndex), ETH_ALEN);
-
- /* Set source address to MAC address of interface */
- memcpy(packet->ethHdr.h_source, Interfaces[ifIndex].mac, ETH_ALEN);
-
- /* Send the PADO to the proper client */
- sendPacket(NULL, Interfaces[ifIndex].discoverySock, packet, size);
-}
-
-/**********************************************************************
-*%FUNCTION: relayHandlePADR
-*%ARGUMENTS:
-* iface -- interface on which packet was received
-* packet -- the PADR packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Receives and processes a PADR packet.
-***********************************************************************/
-void
-relayHandlePADR(PPPoEInterface const *iface,
- PPPoEPacket *packet,
- int size)
-{
- PPPoETag tag;
- unsigned char *loc;
- int ifIndex;
- int cliIndex;
-
- /* Can a client legally be behind this interface? */
- if (!iface->clientOK) {
- syslog(LOG_ERR,
- "PADR packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s not permitted",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- cliIndex = iface - Interfaces;
-
- /* Source address must be unicast */
- if (NOT_UNICAST(packet->ethHdr.h_source)) {
- syslog(LOG_ERR,
- "PADR packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s not from a unicast address",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Destination address must be interface's MAC address */
- if (memcmp(packet->ethHdr.h_dest, iface->mac, ETH_ALEN)) {
- return;
- }
-
- /* Find relay tag */
- loc = findTag(packet, TAG_RELAY_SESSION_ID, &tag);
- if (!loc) {
- syslog(LOG_ERR,
- "PADR packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s does not have Relay-Session-Id tag",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* If it's the wrong length, ignore it */
- if (ntohs(tag.length) != MY_RELAY_TAG_LEN) {
- syslog(LOG_ERR,
- "PADR packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s does not have correct length Relay-Session-Id tag",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Extract interface index */
- memcpy(&ifIndex, tag.payload, sizeof(ifIndex));
-
- if (ifIndex < 0 || ifIndex >= NumInterfaces ||
- !Interfaces[ifIndex].acOK ||
- iface == &Interfaces[ifIndex]) {
- syslog(LOG_ERR,
- "PADR packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s has invalid interface in Relay-Session-Id tag",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Replace Relay-ID tag with opposite-direction tag */
- memcpy(loc+TAG_HDR_SIZE, &cliIndex, sizeof(cliIndex));
- memcpy(loc+TAG_HDR_SIZE+sizeof(ifIndex), packet->ethHdr.h_source, ETH_ALEN);
-
- /* Set destination address to MAC address in relay ID */
- memcpy(packet->ethHdr.h_dest, tag.payload + sizeof(ifIndex), ETH_ALEN);
-
- /* Set source address to MAC address of interface */
- memcpy(packet->ethHdr.h_source, Interfaces[ifIndex].mac, ETH_ALEN);
-
- /* Send the PADR to the proper access concentrator */
- sendPacket(NULL, Interfaces[ifIndex].discoverySock, packet, size);
-}
-
-/**********************************************************************
-*%FUNCTION: relayHandlePADS
-*%ARGUMENTS:
-* iface -- interface on which packet was received
-* packet -- the PADS packet
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Receives and processes a PADS packet.
-***********************************************************************/
-void
-relayHandlePADS(PPPoEInterface const *iface,
- PPPoEPacket *packet,
- int size)
-{
- PPPoETag tag;
- unsigned char *loc;
- int ifIndex;
- int acIndex;
- PPPoESession *ses = NULL;
- SessionHash *sh;
-
- /* Can a server legally be behind this interface? */
- if (!iface->acOK) {
- syslog(LOG_ERR,
- "PADS packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s not permitted",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- acIndex = iface - Interfaces;
-
- /* Source address must be unicast */
- if (NOT_UNICAST(packet->ethHdr.h_source)) {
- syslog(LOG_ERR,
- "PADS packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s not from a unicast address",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Destination address must be interface's MAC address */
- if (memcmp(packet->ethHdr.h_dest, iface->mac, ETH_ALEN)) {
- return;
- }
-
- /* Find relay tag */
- loc = findTag(packet, TAG_RELAY_SESSION_ID, &tag);
- if (!loc) {
- syslog(LOG_ERR,
- "PADS packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s does not have Relay-Session-Id tag",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* If it's the wrong length, ignore it */
- if (ntohs(tag.length) != MY_RELAY_TAG_LEN) {
- syslog(LOG_ERR,
- "PADS packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s does not have correct length Relay-Session-Id tag",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* Extract interface index */
- memcpy(&ifIndex, tag.payload, sizeof(ifIndex));
-
- if (ifIndex < 0 || ifIndex >= NumInterfaces ||
- !Interfaces[ifIndex].clientOK ||
- iface == &Interfaces[ifIndex]) {
- syslog(LOG_ERR,
- "PADS packet from %02x:%02x:%02x:%02x:%02x:%02x on interface %s has invalid interface in Relay-Session-Id tag",
- packet->ethHdr.h_source[0],
- packet->ethHdr.h_source[1],
- packet->ethHdr.h_source[2],
- packet->ethHdr.h_source[3],
- packet->ethHdr.h_source[4],
- packet->ethHdr.h_source[5],
- iface->name);
- return;
- }
-
- /* If session ID is zero, it's the AC respoding with an error.
- Just relay it; do not create a session */
- if (packet->session != htons(0)) {
- /* Check for existing session */
- sh = findSession(packet->ethHdr.h_source, packet->session);
- if (sh) ses = sh->ses;
-
- /* If already an existing session, assume it's a duplicate PADS. Send
- the frame, but do not create a new session. Is this the right
- thing to do? Arguably, should send an error to the client and
- a PADT to the server, because this could happen due to a
- server crash and reboot. */
-
- if (!ses) {
- /* Create a new session */
- ses = createSession(iface, &Interfaces[ifIndex],
- packet->ethHdr.h_source,
- loc + TAG_HDR_SIZE + sizeof(ifIndex), packet->session);
- if (!ses) {
- /* Can't allocate session -- send error PADS to client and
- PADT to server */
- PPPoETag hostUniq, *hu;
- if (findTag(packet, TAG_HOST_UNIQ, &hostUniq)) {
- hu = &hostUniq;
- } else {
- hu = NULL;
- }
- relaySendError(CODE_PADS, htons(0), &Interfaces[ifIndex],
- loc + TAG_HDR_SIZE + sizeof(ifIndex),
- hu, "RP-PPPoE: Relay: Unable to allocate session");
- relaySendError(CODE_PADT, packet->session, iface,
- packet->ethHdr.h_source, NULL,
- "RP-PPPoE: Relay: Unable to allocate session");
- return;
- }
- }
- /* Replace session number */
- packet->session = ses->sesNum;
- }
-
- /* Remove relay-ID tag */
- removeBytes(packet, loc, MY_RELAY_TAG_LEN + TAG_HDR_SIZE);
- size -= (MY_RELAY_TAG_LEN + TAG_HDR_SIZE);
-
- /* Set destination address to MAC address in relay ID */
- memcpy(packet->ethHdr.h_dest, tag.payload + sizeof(ifIndex), ETH_ALEN);
-
- /* Set source address to MAC address of interface */
- memcpy(packet->ethHdr.h_source, Interfaces[ifIndex].mac, ETH_ALEN);
-
- /* Send the PADS to the proper client */
- sendPacket(NULL, Interfaces[ifIndex].discoverySock, packet, size);
-}
-
-/**********************************************************************
-*%FUNCTION: relaySendError
-*%ARGUMENTS:
-* code -- PPPoE packet code (PADS or PADT, typically)
-* session -- PPPoE session number
-* iface -- interface on which to send frame
-* mac -- Ethernet address to which frame should be sent
-* hostUniq -- if non-NULL, a hostUniq tag to add to error frame
-* errMsg -- error message to insert into Generic-Error tag.
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Sends either a PADS or PADT packet with a Generic-Error tag and an
-* error message.
-***********************************************************************/
-void
-relaySendError(unsigned char code,
- UINT16_t session,
- PPPoEInterface const *iface,
- unsigned char const *mac,
- PPPoETag const *hostUniq,
- char const *errMsg)
-{
- PPPoEPacket packet;
- PPPoETag errTag;
- int size;
-
- memcpy(packet.ethHdr.h_source, iface->mac, ETH_ALEN);
- memcpy(packet.ethHdr.h_dest, mac, ETH_ALEN);
- packet.ethHdr.h_proto = htons(Eth_PPPOE_Discovery);
- packet.type = 1;
- packet.ver = 1;
- packet.code = code;
- packet.session = session;
- packet.length = htons(0);
- if (hostUniq) {
- if (addTag(&packet, hostUniq) < 0) return;
- }
- errTag.type = htons(TAG_GENERIC_ERROR);
- errTag.length = htons(strlen(errMsg));
- strcpy(errTag.payload, errMsg);
- if (addTag(&packet, &errTag) < 0) return;
- size = ntohs(packet.length) + HDR_SIZE;
- if (code == CODE_PADT) {
- sendPacket(NULL, iface->discoverySock, &packet, size);
- } else {
- sendPacket(NULL, iface->sessionSock, &packet, size);
- }
-}
-
-/**********************************************************************
-*%FUNCTION: alarmHandler
-*%ARGUMENTS:
-* sig -- signal number
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* SIGALRM handler. Increments Epoch; if necessary, writes a byte of
-* data to the alarm pipe to trigger the stale-session cleaner.
-***********************************************************************/
-void
-alarmHandler(int sig)
-{
- alarm(1);
- Epoch++;
- CleanCounter++;
- if (CleanCounter == CleanPeriod) {
- write(CleanPipe[1], "", 1);
- }
-}
-
-/**********************************************************************
-*%FUNCTION: cleanSessions
-*%ARGUMENTS:
-* None
-*%RETURNS:
-* Nothing
-*%DESCRIPTION:
-* Goes through active sessions and cleans sessions idle for longer
-* than IdleTimeout seconds.
-***********************************************************************/
-void cleanSessions(void)
-{
- PPPoESession *cur, *next;
- cur = ActiveSessions;
- while(cur) {
- next = cur->next;
- if (Epoch - cur->epoch > IdleTimeout) {
- /* Send PADT to each peer */
- relaySendError(CODE_PADT, cur->acHash->sesNum,
- cur->acHash->interface,
- cur->acHash->peerMac, NULL,
- "RP-PPPoE: Relay: Session exceeded idle timeout");
- relaySendError(CODE_PADT, cur->clientHash->sesNum,
- cur->clientHash->interface,
- cur->clientHash->peerMac, NULL,
- "RP-PPPoE: Relay: Session exceeded idle timeout");
- freeSession(cur, "Idle Timeout");
- }
- cur = next;
- }
-}
diff --git a/mdk-stage1/rp-pppoe/src/relay.h b/mdk-stage1/rp-pppoe/src/relay.h
deleted file mode 100644
index d438a657f..000000000
--- a/mdk-stage1/rp-pppoe/src/relay.h
+++ /dev/null
@@ -1,97 +0,0 @@
-/**********************************************************************
-*
-* relay.h
-*
-* Definitions for PPPoE relay
-*
-* Copyright (C) 2001 Roaring Penguin Software Inc.
-*
-* This program may be distributed according to the terms of the GNU
-* General Public License, version 2 or (at your option) any later version.
-*
-* $Id$
-*
-***********************************************************************/
-
-#include "pppoe.h"
-
-/* Description for each active Ethernet interface */
-typedef struct InterfaceStruct {
- char name[IFNAMSIZ+1]; /* Interface name */
- int discoverySock; /* Socket for discovery frames */
- int sessionSock; /* Socket for session frames */
- int clientOK; /* Client requests allowed (PADI, PADR) */
- int acOK; /* AC replies allowed (PADO, PADS) */
- unsigned char mac[ETH_ALEN]; /* MAC address */
-} PPPoEInterface;
-
-/* Session state for relay */
-struct SessionHashStruct;
-typedef struct SessionStruct {
- struct SessionStruct *next; /* Free list link */
- struct SessionStruct *prev; /* Free list link */
- struct SessionHashStruct *acHash; /* Hash bucket for AC MAC/Session */
- struct SessionHashStruct *clientHash; /* Hash bucket for client MAC/Session */
- unsigned int epoch; /* Epoch when last activity was seen */
- UINT16_t sesNum; /* Session number assigned by relay */
-} PPPoESession;
-
-/* Hash table entry to find sessions */
-typedef struct SessionHashStruct {
- struct SessionHashStruct *next; /* Link in hash chain */
- struct SessionHashStruct *prev; /* Link in hash chain */
- struct SessionHashStruct *peer; /* Peer for this session */
- PPPoEInterface const *interface; /* Interface */
- unsigned char peerMac[ETH_ALEN]; /* Peer's MAC address */
- UINT16_t sesNum; /* Session number */
- PPPoESession *ses; /* Session data */
-} SessionHash;
-
-/* Function prototypes */
-
-void relayGotSessionPacket(PPPoEInterface const *i);
-void relayGotDiscoveryPacket(PPPoEInterface const *i);
-PPPoEInterface *findInterface(int sock);
-unsigned int hash(unsigned char const *mac, UINT16_t sesNum);
-SessionHash *findSession(unsigned char const *mac, UINT16_t sesNum);
-void deleteHash(SessionHash *hash);
-PPPoESession *createSession(PPPoEInterface const *ac,
- PPPoEInterface const *cli,
- unsigned char const *acMac,
- unsigned char const *cliMac,
- UINT16_t acSes);
-void freeSession(PPPoESession *ses, char const *msg);
-void addInterface(char const *ifname, int clientOK, int acOK);
-void usage(char const *progname);
-void initRelay(int nsess);
-void relayLoop(void);
-void addHash(SessionHash *sh);
-void unhash(SessionHash *sh);
-
-void relayHandlePADT(PPPoEInterface const *iface, PPPoEPacket *packet, int size);
-void relayHandlePADI(PPPoEInterface const *iface, PPPoEPacket *packet, int size);
-void relayHandlePADO(PPPoEInterface const *iface, PPPoEPacket *packet, int size);
-void relayHandlePADR(PPPoEInterface const *iface, PPPoEPacket *packet, int size);
-void relayHandlePADS(PPPoEInterface const *iface, PPPoEPacket *packet, int size);
-
-int addTag(PPPoEPacket *packet, PPPoETag const *tag);
-int insertBytes(PPPoEPacket *packet, unsigned char *loc,
- void const *bytes, int length);
-int removeBytes(PPPoEPacket *packet, unsigned char *loc,
- int length);
-void relaySendError(unsigned char code,
- UINT16_t session,
- PPPoEInterface const *iface,
- unsigned char const *mac,
- PPPoETag const *hostUniq,
- char const *errMsg);
-
-void alarmHandler(int sig);
-void cleanSessions(void);
-
-#define MAX_INTERFACES 8
-#define DEFAULT_SESSIONS 5000
-
-/* Hash table size -- a prime number; gives load factor of around 6
- for 65534 sessions */
-#define HASHTAB_SIZE 18917
diff --git a/mdk-stage1/slang/Makefile b/mdk-stage1/slang/Makefile
deleted file mode 100644
index fbbf542b3..000000000
--- a/mdk-stage1/slang/Makefile
+++ /dev/null
@@ -1,42 +0,0 @@
- #******************************************************************************
- #
- # Guillaume Cottenceau (gc@mandriva.com)
- #
- # Copyright 2000 Mandriva
- #
- # This software may be freely redistributed under the terms of the GNU
- # public license.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- #*****************************************************************************
-
-top_dir = ..
-
-include $(top_dir)/Makefile.common
-
-
-LIBNAME = libslang
-
-OBJS = sltermin.o sldisply.o slutty.o slang.o slarray.o slclass.o slcmd.o slerr.o slgetkey.o slkeymap.o slmalloc.o slmath.o slmemchr.o slmemcmp.o slmemcpy.o slmemset.o slmisc.o slparse.o slprepr.o slregexp.o slrline.o slsearch.o slsmg.o slstd.o sltoken.o sltypes.o slxstrng.o slcurses.o slscroll.o slsignal.o slkeypad.o slerrno.o slstring.o slstruct.o slcmplex.o slarrfun.o slimport.o slpath.o slarith.o slassoc.o slcompat.o slposdir.o slstdio.o slproc.o sltime.o slstrops.o slbstr.o slpack.o slintall.o slistruc.o slposio.o slnspace.o slarrmis.o slospath.o slscanf.o
-
-DEFS = -Dunix -DSLANG
-
-INCS =
-
-
-TARGETS = $(LIBNAME).a
-
-all: $(TARGETS)
-
-clean:
- rm -f *.o *.a
-
-$(LIBNAME).a: $(OBJS)
- ar -cru $@ $^
- ranlib $@
-
-$(OBJS): %.o: %.c
- $(DIET) gcc $(CFLAGS) $(DEFS) $(INCS) $(INCLUDES) -c $< -o $@
diff --git a/mdk-stage1/slang/_slang.h b/mdk-stage1/slang/_slang.h
deleted file mode 100644
index 02ee13505..000000000
--- a/mdk-stage1/slang/_slang.h
+++ /dev/null
@@ -1,743 +0,0 @@
-#ifndef _PRIVATE_SLANG_H_
-#define _PRIVATE_SLANG_H_
-/* header file for S-Lang internal structures that users do not (should not)
- need. Use slang.h for that purpose. */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-/* #include "config.h" */
-#include "jdmacros.h"
-#include "sllimits.h"
-
-#ifdef VMS
-# define SLANG_SYSTEM_NAME "_VMS"
-#else
-# if defined (IBMPC_SYSTEM)
-# define SLANG_SYSTEM_NAME "_IBMPC"
-# else
-# define SLANG_SYSTEM_NAME "_UNIX"
-# endif
-#endif /* VMS */
-
-/* These quantities are main_types for byte-compiled code. They are used
- * by the inner_interp routine. The _BC_ means byte-code.
- */
-
-#define _SLANG_BC_LVARIABLE SLANG_LVARIABLE /* 0x01 */
-#define _SLANG_BC_GVARIABLE SLANG_GVARIABLE /* 0x02 */
-#define _SLANG_BC_IVARIABLE SLANG_IVARIABLE /* 0x03 */
-#define _SLANG_BC_RVARIABLE SLANG_RVARIABLE /* 0x04 */
-#define _SLANG_BC_INTRINSIC SLANG_INTRINSIC /* 0x05 */
-#define _SLANG_BC_FUNCTION SLANG_FUNCTION /* 0x06 */
-#define _SLANG_BC_MATH_UNARY SLANG_MATH_UNARY /* 0x07 */
-#define _SLANG_BC_APP_UNARY SLANG_APP_UNARY /* 0x08 */
-#define _SLANG_BC_ICONST SLANG_ICONSTANT /* 0x09 */
-#define _SLANG_BC_DCONST SLANG_DCONSTANT /* 0x0A */
-#define _SLANG_BC_PVARIABLE SLANG_PVARIABLE /* 0x0B */
-#define _SLANG_BC_PFUNCTION SLANG_PFUNCTION /* 0x0C */
-
-#define _SLANG_BC_BINARY 0x10
-#define _SLANG_BC_LITERAL 0x11 /* constant objects */
-#define _SLANG_BC_LITERAL_INT 0x12
-#define _SLANG_BC_LITERAL_STR 0x13
-#define _SLANG_BC_BLOCK 0x14
-
-/* These 3 MUST be in this order too ! */
-#define _SLANG_BC_RETURN 0x15
-#define _SLANG_BC_BREAK 0x16
-#define _SLANG_BC_CONTINUE 0x17
-
-#define _SLANG_BC_EXCH 0x18
-#define _SLANG_BC_LABEL 0x19
-#define _SLANG_BC_LOBJPTR 0x1A
-#define _SLANG_BC_GOBJPTR 0x1B
-#define _SLANG_BC_X_ERROR 0x1C
-/* These must be in this order */
-#define _SLANG_BC_X_USER0 0x1D
-#define _SLANG_BC_X_USER1 0x1E
-#define _SLANG_BC_X_USER2 0x1F
-#define _SLANG_BC_X_USER3 0x20
-#define _SLANG_BC_X_USER4 0x21
-
-#define _SLANG_BC_CALL_DIRECT 0x24
-#define _SLANG_BC_CALL_DIRECT_FRAME 0x25
-#define _SLANG_BC_UNARY 0x26
-#define _SLANG_BC_UNARY_FUNC 0x27
-
-#define _SLANG_BC_DEREF_ASSIGN 0x30
-#define _SLANG_BC_SET_LOCAL_LVALUE 0x31
-#define _SLANG_BC_SET_GLOBAL_LVALUE 0x32
-#define _SLANG_BC_SET_INTRIN_LVALUE 0x33
-#define _SLANG_BC_SET_STRUCT_LVALUE 0x34
-#define _SLANG_BC_FIELD 0x35
-#define _SLANG_BC_SET_ARRAY_LVALUE 0x36
-
-#define _SLANG_BC_LINE_NUM 0x40
-
-#define _SLANG_BC_TMP 0x50
-#define _SLANG_BC_LVARIABLE_AGET 0x60
-#define _SLANG_BC_LVARIABLE_APUT 0x61
-#define _SLANG_BC_INTEGER_PLUS 0x62
-#define _SLANG_BC_INTEGER_MINUS 0x63
-#define _SLANG_BC_ARG_LVARIABLE 0x64
-#define _SLANG_BC_EARG_LVARIABLE 0x65
-
-#define _SLANG_BC_CALL_DIRECT_INTRINSIC 0x80
-#define _SLANG_BC_INTRINSIC_CALL_DIRECT 0x81
-#define _SLANG_BC_CALL_DIRECT_LSTR 0x82
-#define _SLANG_BC_CALL_DIRECT_SLFUN 0x83
-#define _SLANG_BC_CALL_DIRECT_INTRSTOP 0x84
-#define _SLANG_BC_INTRINSIC_STOP 0x85
-#define _SLANG_BC_CALL_DIRECT_EARG_LVAR 0x86
-#define _SLANG_BC_CALL_DIRECT_LINT 0x87
-#define _SLANG_BC_CALL_DIRECT_LVAR 0x88
-
-
-/* Byte-Code Sub Types (_BCST_) */
-
-/* These are sub_types of _SLANG_BC_BLOCK */
-#define _SLANG_BCST_ERROR_BLOCK 0x01
-#define _SLANG_BCST_EXIT_BLOCK 0x02
-#define _SLANG_BCST_USER_BLOCK0 0x03
-#define _SLANG_BCST_USER_BLOCK1 0x04
-#define _SLANG_BCST_USER_BLOCK2 0x05
-#define _SLANG_BCST_USER_BLOCK3 0x06
-#define _SLANG_BCST_USER_BLOCK4 0x07
-/* The user blocks MUST be in the above order */
-#define _SLANG_BCST_LOOP 0x10
-#define _SLANG_BCST_WHILE 0x11
-#define _SLANG_BCST_FOR 0x12
-#define _SLANG_BCST_FOREVER 0x13
-#define _SLANG_BCST_CFOR 0x14
-#define _SLANG_BCST_DOWHILE 0x15
-#define _SLANG_BCST_FOREACH 0x16
-
-#define _SLANG_BCST_IF 0x20
-#define _SLANG_BCST_IFNOT 0x21
-#define _SLANG_BCST_ELSE 0x22
-#define _SLANG_BCST_ANDELSE 0x23
-#define _SLANG_BCST_ORELSE 0x24
-#define _SLANG_BCST_SWITCH 0x25
-#define _SLANG_BCST_NOTELSE 0x26
-
-/* assignment (_SLANG_BC_SET_*_LVALUE) subtypes. The order MUST correspond
- * to the assignment token order with the ASSIGN_TOKEN as the first!
- */
-#define _SLANG_BCST_ASSIGN 0x01
-#define _SLANG_BCST_PLUSEQS 0x02
-#define _SLANG_BCST_MINUSEQS 0x03
-#define _SLANG_BCST_TIMESEQS 0x04
-#define _SLANG_BCST_DIVEQS 0x05
-#define _SLANG_BCST_BOREQS 0x06
-#define _SLANG_BCST_BANDEQS 0x07
-#define _SLANG_BCST_PLUSPLUS 0x08
-#define _SLANG_BCST_POST_PLUSPLUS 0x09
-#define _SLANG_BCST_MINUSMINUS 0x0A
-#define _SLANG_BCST_POST_MINUSMINUS 0x0B
-
-/* These use SLANG_PLUS, SLANG_MINUS, SLANG_PLUSPLUS, etc... */
-
-typedef union
-{
-#if SLANG_HAS_FLOAT
- double double_val;
- float float_val;
-#endif
- long long_val;
- unsigned long ulong_val;
- VOID_STAR ptr_val;
- char *s_val;
- int int_val;
- unsigned int uint_val;
- SLang_MMT_Type *ref;
- SLang_Name_Type *n_val;
- struct _SLang_Struct_Type *struct_val;
- struct _SLang_Array_Type *array_val;
- short short_val;
- unsigned short ushort_val;
- char char_val;
- unsigned char uchar_val;
-}
-_SL_Object_Union_Type;
-
-typedef struct _SLang_Object_Type
-{
- unsigned char data_type; /* SLANG_INT_TYPE, ... */
- _SL_Object_Union_Type v;
-}
-SLang_Object_Type;
-
-struct _SLang_MMT_Type
-{
- unsigned char data_type; /* int, string, etc... */
- VOID_STAR user_data; /* address of user structure */
- unsigned int count; /* number of references */
-};
-
-extern int _SLang_pop_object_of_type (unsigned char, SLang_Object_Type *, int);
-
-typedef struct
-{
- char *name; /* slstring */
- SLang_Object_Type obj;
-}
-_SLstruct_Field_Type;
-
-typedef struct _SLang_Struct_Type
-{
- _SLstruct_Field_Type *fields;
- unsigned int nfields; /* number used */
- unsigned int num_refs;
-}
-_SLang_Struct_Type;
-
-extern void _SLstruct_delete_struct (_SLang_Struct_Type *);
-extern int _SLang_push_struct (_SLang_Struct_Type *);
-extern int _SLang_pop_struct (_SLang_Struct_Type **);
-extern int _SLstruct_init (void);
-/* extern int _SLstruct_get_field (char *); */
-extern int _SLstruct_define_struct (void);
-extern int _SLstruct_define_typedef (void);
-
-extern int _SLang_pop_datatype (unsigned char *);
-extern int _SLang_push_datatype (unsigned char);
-
-struct _SLang_Ref_Type
-{
- int is_global;
- union
- {
- SLang_Name_Type *nt;
- SLang_Object_Type *local_obj;
- }
- v;
-};
-
-extern int _SLang_dereference_ref (SLang_Ref_Type *);
-extern int _SLang_deref_assign (SLang_Ref_Type *);
-extern int _SLang_push_ref (int, VOID_STAR);
-
-extern int _SL_increment_frame_pointer (void);
-extern int _SL_decrement_frame_pointer (void);
-
-extern int SLang_pop(SLang_Object_Type *);
-extern void SLang_free_object (SLang_Object_Type *);
-extern int _SLanytype_typecast (unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR);
-extern void _SLstring_intrinsic (void);
-
-
-/* These functions are used to create slstrings of a fixed length. Be
- * very careful how they are used. In particular, if len bytes are allocated,
- * then the string must be len characters long, no more and no less.
- */
-extern char *_SLallocate_slstring (unsigned int);
-extern char *_SLcreate_via_alloced_slstring (char *, unsigned int);
-extern void _SLunallocate_slstring (char *, unsigned int);
-extern int _SLpush_alloced_slstring (char *, unsigned int);
-
-typedef struct
-{
- char **buf;
- unsigned int max_num;
- unsigned int num;
- unsigned int delta_num;
-}
-_SLString_List_Type;
-extern int _SLstring_list_append (_SLString_List_Type *, char *);
-extern int _SLstring_list_init (_SLString_List_Type *, unsigned int, unsigned int);
-extern void _SLstring_list_delete (_SLString_List_Type *);
-extern int _SLstring_list_push (_SLString_List_Type *);
-
-/* This function assumes that s is an slstring. */
-extern char *_SLstring_dup_slstring (char *);
-extern int _SLang_dup_and_push_slstring (char *);
-
-
-extern int _SLang_init_import (void);
-
-/* This function checks to see if the referenced object is initialized */
-extern int _SLang_is_ref_initialized (SLang_Ref_Type *);
-extern int _SLcheck_identifier_syntax (char *);
-extern int _SLang_uninitialize_ref (SLang_Ref_Type *);
-
-extern int _SLpush_slang_obj (SLang_Object_Type *);
-
-extern char *_SLexpand_escaped_char(char *, char *);
-extern void _SLexpand_escaped_string (char *, char *, char *);
-
-/* returns a pointer to an SLstring string-- use SLang_free_slstring */
-extern char *_SLstringize_object (SLang_Object_Type *);
-extern int _SLdump_objects (char *, SLang_Object_Type *, unsigned int, int);
-
-extern SLang_Object_Type *_SLRun_Stack;
-extern SLang_Object_Type *_SLStack_Pointer;
-
-struct _SLang_NameSpace_Type
-{
- struct _SLang_NameSpace_Type *next;
- char *name; /* this is the load_type name */
- char *namespace_name; /* this name is assigned by implements */
- unsigned int table_size;
- SLang_Name_Type **table;
-};
-extern SLang_NameSpace_Type *_SLns_allocate_namespace (char *, unsigned int);
-extern SLang_NameSpace_Type *_SLns_find_namespace (char *);
-extern int _SLns_set_namespace_name (SLang_NameSpace_Type *, char *);
-extern SLang_Array_Type *_SLnspace_apropos (SLang_NameSpace_Type *, char *, unsigned int);
-extern void _SLang_use_namespace_intrinsic (char *name);
-extern char *_SLang_cur_namespace_intrinsic (void);
-extern SLang_Array_Type *_SLang_apropos (char *, char *, unsigned int);
-extern void _SLang_implements_intrinsic (char *);
-
-extern int _SLang_Trace;
-extern int _SLstack_depth(void);
-extern char *_SLang_Current_Function_Name;
-
-extern int _SLang_trace_fun(char *);
-extern int _SLang_Compile_Line_Num_Info;
-
-extern char *_SLstring_dup_hashed_string (char *, unsigned long);
-extern unsigned long _SLcompute_string_hash (char *);
-extern char *_SLstring_make_hashed_string (char *, unsigned int, unsigned long *);
-extern void _SLfree_hashed_string (char *, unsigned int, unsigned long);
-unsigned long _SLstring_hash (unsigned char *, unsigned char *);
-extern int _SLinit_slcomplex (void);
-
-extern int _SLang_init_slstrops (void);
-extern int _SLstrops_do_sprintf_n (int);
-extern int _SLang_sscanf (void);
-extern double _SLang_atof (char *);
-extern int _SLang_init_bstring (void);
-extern int _SLang_init_sltime (void);
-extern void _SLpack (void);
-extern void _SLunpack (char *, SLang_BString_Type *);
-extern void _SLpack_pad_format (char *);
-extern unsigned int _SLpack_compute_size (char *);
-extern int _SLusleep (unsigned long);
-
-/* frees upon error. NULL __NOT__ ok. */
-extern int _SLang_push_slstring (char *);
-
-extern unsigned char _SLarith_promote_type (unsigned char);
-extern int _SLarith_get_precedence (unsigned char);
-extern int _SLarith_typecast (unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR);
-
-extern int SLang_push(SLang_Object_Type *);
-extern int SLadd_global_variable (char *);
-extern void _SLang_clear_error (void);
-
-extern int _SLdo_pop (void);
-extern unsigned int _SLsys_getkey (void);
-extern int _SLsys_input_pending (int);
-#ifdef IBMPC_SYSTEM
-extern unsigned int _SLpc_convert_scancode (unsigned int, unsigned int, int);
-#define _SLTT_KEY_SHIFT 1
-#define _SLTT_KEY_CTRL 2
-#define _SLTT_KEY_ALT 4
-#endif
-
-typedef struct _SLterminfo_Type SLterminfo_Type;
-extern SLterminfo_Type *_SLtt_tigetent (char *);
-extern char *_SLtt_tigetstr (SLterminfo_Type *, char *);
-extern int _SLtt_tigetnum (SLterminfo_Type *, char *);
-extern int _SLtt_tigetflag (SLterminfo_Type *, char *);
-
-#if SLTT_HAS_NON_BCE_SUPPORT
-extern int _SLtt_get_bce_color_offset (void);
-#endif
-extern void (*_SLtt_color_changed_hook)(void);
-
-extern unsigned char SLang_Input_Buffer [SL_MAX_INPUT_BUFFER_LEN];
-
-extern int _SLregister_types (void);
-extern SLang_Class_Type *_SLclass_get_class (unsigned char);
-extern VOID_STAR _SLclass_get_ptr_to_value (SLang_Class_Type *, SLang_Object_Type *);
-extern void _SLclass_type_mismatch_error (unsigned char, unsigned char);
-extern int _SLclass_init (void);
-extern int _SLclass_copy_class (unsigned char, unsigned char);
-
-extern unsigned char _SLclass_Class_Type [256];
-
-extern int (*_SLclass_get_typecast (unsigned char, unsigned char, int))
-(unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR);
-
-extern int (*_SLclass_get_binary_fun (int, SLang_Class_Type *, SLang_Class_Type *, SLang_Class_Type **, int))
-(int,
- unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR);
-
-extern int (*_SLclass_get_unary_fun (int, SLang_Class_Type *, SLang_Class_Type **, int))
-(int, unsigned char, VOID_STAR, unsigned int, VOID_STAR);
-
-extern int _SLarith_register_types (void);
-extern unsigned char _SLarith_Arith_Types [];
-extern unsigned char _SLarith_Is_Arith_Type [256];
-extern int _SLarith_bin_op (SLang_Object_Type *, SLang_Object_Type *, int);
-
-extern int _SLarray_add_bin_op (unsigned char);
-
-extern int _SLang_call_funptr (SLang_Name_Type *);
-extern void _SLset_double_format (char *);
-extern SLang_Name_Type *_SLlocate_global_name (char *);
-extern SLang_Name_Type *_SLlocate_name (char *);
-
-extern char *_SLdefines[];
-
-#define SL_ERRNO_NOT_IMPLEMENTED 0x7FFF
-extern int _SLerrno_errno;
-extern int _SLerrno_init (void);
-
-extern int _SLstdio_fdopen (char *, int, char *);
-
-extern void _SLstruct_pop_args (int *);
-extern void _SLstruct_push_args (SLang_Array_Type *);
-
-extern int _SLarray_aput (void);
-extern int _SLarray_aget (void);
-extern int _SLarray_inline_implicit_array (void);
-extern int _SLarray_inline_array (void);
-extern int _SLarray_wildcard_array (void);
-
-extern int
-_SLarray_typecast (unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR, int);
-
-extern int _SLarray_aput_transfer_elem (SLang_Array_Type *, int *,
- VOID_STAR, unsigned int, int);
-extern int _SLarray_aget_transfer_elem (SLang_Array_Type *, int *,
- VOID_STAR, unsigned int, int);
-extern void _SLarray_free_array_elements (SLang_Class_Type *, VOID_STAR, unsigned int);
-
-extern SLang_Foreach_Context_Type *
-_SLarray_cl_foreach_open (unsigned char, unsigned int);
-extern void _SLarray_cl_foreach_close (unsigned char, SLang_Foreach_Context_Type *);
-extern int _SLarray_cl_foreach (unsigned char, SLang_Foreach_Context_Type *);
-
-extern int _SLarray_matrix_multiply (void);
-extern void (*_SLang_Matrix_Multiply)(void);
-
-extern int _SLarray_init_slarray (void);
-extern SLang_Array_Type *
-SLang_create_array1 (unsigned char, int, VOID_STAR, int *, unsigned int, int);
-
-extern int _SLcompile_push_context (SLang_Load_Type *);
-extern int _SLcompile_pop_context (void);
-extern int _SLang_Auto_Declare_Globals;
-
-typedef struct
-{
- union
- {
- long long_val;
- char *s_val; /* Used for IDENT_TOKEN, FLOAT, etc... */
- SLang_BString_Type *b_val;
- } v;
- int free_sval_flag;
- unsigned int num_refs;
- unsigned long hash;
-#if _SLANG_HAS_DEBUG_CODE
- int line_number;
-#endif
- unsigned char type;
-}
-_SLang_Token_Type;
-
-extern void _SLcompile (_SLang_Token_Type *);
-extern void (*_SLcompile_ptr)(_SLang_Token_Type *);
-
-/* *** TOKENS *** */
-
-/* Note that that tokens corresponding to ^J, ^M, and ^Z should not be used.
- * This is because a file that contains any of these characters will
- * have an OS dependent interpretation, e.g., ^Z is EOF on MSDOS.
- */
-
-/* Special tokens */
-#define EOF_TOKEN 0x01
-#define RPN_TOKEN 0x02
-#define NL_TOKEN 0x03
-#define NOP_TOKEN 0x05
-#define FARG_TOKEN 0x06
-#define TMP_TOKEN 0x07
-
-#define RESERVED1_TOKEN 0x0A /* \n */
-#define RESERVED2_TOKEN 0x0D /* \r */
-
-/* Literal tokens */
-#define CHAR_TOKEN 0x10
-#define UCHAR_TOKEN 0x11
-#define SHORT_TOKEN 0x12
-#define USHORT_TOKEN 0x13
-#define INT_TOKEN 0x14
-#define UINT_TOKEN 0x15
-#define LONG_TOKEN 0x16
-#define ULONG_TOKEN 0x17
-#define IS_INTEGER_TOKEN(x) ((x >= CHAR_TOKEN) && (x <= ULONG_TOKEN))
-#define FLOAT_TOKEN 0x18
-#define DOUBLE_TOKEN 0x19
-#define RESERVED3_TOKEN 0x1A /* ^Z */
-#define COMPLEX_TOKEN 0x1B
-#define STRING_TOKEN 0x1C
-#define BSTRING_TOKEN 0x1D
-#define _BSTRING_TOKEN 0x1E /* byte-compiled BSTRING */
-#define ESC_STRING_TOKEN 0x1F
-
-/* Tokens that can be LVALUES */
-#define IDENT_TOKEN 0x20
-#define ARRAY_TOKEN 0x21
-#define DOT_TOKEN 0x22
-#define IS_LVALUE_TOKEN (((t) <= DOT_TOKEN) && ((t) >= IDENT_TOKEN))
-
-/* do not use these values */
-#define RESERVED4_TOKEN 0x23 /* # */
-#define RESERVED5_TOKEN 0x25 /* % */
-
-/* Flags for struct fields */
-#define STATIC_TOKEN 0x26
-#define READONLY_TOKEN 0x27
-#define PRIVATE_TOKEN 0x28
-#define PUBLIC_TOKEN 0x29
-
-/* Punctuation tokens */
-#define OBRACKET_TOKEN 0x2a
-#define CBRACKET_TOKEN 0x2b
-#define OPAREN_TOKEN 0x2c
-#define CPAREN_TOKEN 0x2d
-#define OBRACE_TOKEN 0x2e
-#define CBRACE_TOKEN 0x2f
-
-#define COMMA_TOKEN 0x31
-#define SEMICOLON_TOKEN 0x32
-#define COLON_TOKEN 0x33
-#define NAMESPACE_TOKEN 0x34
-
-/* Operators */
-#define POW_TOKEN 0x38
-
-/* The order here must match the order in the Binop_Level table in slparse.c */
-#define FIRST_BINARY_OP 0x39
-#define ADD_TOKEN 0x39
-#define SUB_TOKEN 0x3a
-#define TIMES_TOKEN 0x3b
-#define DIV_TOKEN 0x3c
-#define LT_TOKEN 0x3d
-#define LE_TOKEN 0x3e
-#define GT_TOKEN 0x3f
-#define GE_TOKEN 0x40
-#define EQ_TOKEN 0x41
-#define NE_TOKEN 0x42
-#define AND_TOKEN 0x43
-#define OR_TOKEN 0x44
-#define MOD_TOKEN 0x45
-#define BAND_TOKEN 0x46
-#define SHL_TOKEN 0x47
-#define SHR_TOKEN 0x48
-#define BXOR_TOKEN 0x49
-#define BOR_TOKEN 0x4a
-#define POUND_TOKEN 0x4b /* matrix multiplication */
-
-#define LAST_BINARY_OP 0x4b
-#define IS_BINARY_OP(t) ((t >= FIRST_BINARY_OP) && (t <= LAST_BINARY_OP))
-
-/* unary tokens -- but not all of them (see grammar) */
-#define DEREF_TOKEN 0x4d
-#define NOT_TOKEN 0x4e
-#define BNOT_TOKEN 0x4f
-
-#define IS_INTERNAL_FUNC(t) ((t >= 0x50) && (t <= 0x56))
-#define POP_TOKEN 0x50
-#define CHS_TOKEN 0x51
-#define SIGN_TOKEN 0x52
-#define ABS_TOKEN 0x53
-#define SQR_TOKEN 0x54
-#define MUL2_TOKEN 0x55
-#define EXCH_TOKEN 0x56
-
-/* Assignment tokens. Note: these must appear with sequential values.
- * The order here must match the specific lvalue assignments below.
- * These tokens are used by rpn routines in slang.c. slparse.c maps them
- * onto the specific lvalue tokens while parsing infix.
- * Also the assignment _SLANG_BCST_ assumes this order
- */
-#define ASSIGN_TOKEN 0x57
-#define PLUSEQS_TOKEN 0x58
-#define MINUSEQS_TOKEN 0x59
-#define TIMESEQS_TOKEN 0x5A
-#define DIVEQS_TOKEN 0x5B
-#define BOREQS_TOKEN 0x5C
-#define BANDEQS_TOKEN 0x5D
-#define PLUSPLUS_TOKEN 0x5E
-#define POST_PLUSPLUS_TOKEN 0x5F
-#define MINUSMINUS_TOKEN 0x60
-#define POST_MINUSMINUS_TOKEN 0x61
-
-/* Directives */
-#define FIRST_DIRECTIVE_TOKEN 0x62
-#define IFNOT_TOKEN 0x62
-#define IF_TOKEN 0x63
-#define ELSE_TOKEN 0x64
-#define FOREVER_TOKEN 0x65
-#define WHILE_TOKEN 0x66
-#define FOR_TOKEN 0x67
-#define _FOR_TOKEN 0x68
-#define LOOP_TOKEN 0x69
-#define SWITCH_TOKEN 0x6A
-#define DOWHILE_TOKEN 0x6B
-#define ANDELSE_TOKEN 0x6C
-#define ORELSE_TOKEN 0x6D
-#define ERRBLK_TOKEN 0x6E
-#define EXITBLK_TOKEN 0x6F
-/* These must be sequential */
-#define USRBLK0_TOKEN 0x70
-#define USRBLK1_TOKEN 0x71
-#define USRBLK2_TOKEN 0x72
-#define USRBLK3_TOKEN 0x73
-#define USRBLK4_TOKEN 0x74
-
-#define CONT_TOKEN 0x75
-#define BREAK_TOKEN 0x76
-#define RETURN_TOKEN 0x77
-
-#define CASE_TOKEN 0x78
-#define DEFINE_TOKEN 0x79
-#define DO_TOKEN 0x7a
-#define VARIABLE_TOKEN 0x7b
-#define GVARIABLE_TOKEN 0x7c
-#define _REF_TOKEN 0x7d
-#define PUSH_TOKEN 0x7e
-#define STRUCT_TOKEN 0x7f
-#define TYPEDEF_TOKEN 0x80
-#define NOTELSE_TOKEN 0x81
-#define DEFINE_STATIC_TOKEN 0x82
-#define FOREACH_TOKEN 0x83
-#define USING_TOKEN 0x84
-#define DEFINE_PRIVATE_TOKEN 0x85
-#define DEFINE_PUBLIC_TOKEN 0x86
-
-/* Note: the order here must match the order of the generic assignment tokens.
- * Also, the first token of each group must be the ?_ASSIGN_TOKEN.
- * slparse.c exploits this order, as well as slang.h.
- */
-#define FIRST_ASSIGN_TOKEN 0x90
-#define _STRUCT_ASSIGN_TOKEN 0x90
-#define _STRUCT_PLUSEQS_TOKEN 0x91
-#define _STRUCT_MINUSEQS_TOKEN 0x92
-#define _STRUCT_TIMESEQS_TOKEN 0x93
-#define _STRUCT_DIVEQS_TOKEN 0x94
-#define _STRUCT_BOREQS_TOKEN 0x95
-#define _STRUCT_BANDEQS_TOKEN 0x96
-#define _STRUCT_PLUSPLUS_TOKEN 0x97
-#define _STRUCT_POST_PLUSPLUS_TOKEN 0x98
-#define _STRUCT_MINUSMINUS_TOKEN 0x99
-#define _STRUCT_POST_MINUSMINUS_TOKEN 0x9A
-
-#define _ARRAY_ASSIGN_TOKEN 0xA0
-#define _ARRAY_PLUSEQS_TOKEN 0xA1
-#define _ARRAY_MINUSEQS_TOKEN 0xA2
-#define _ARRAY_TIMESEQS_TOKEN 0xA3
-#define _ARRAY_DIVEQS_TOKEN 0xA4
-#define _ARRAY_BOREQS_TOKEN 0xA5
-#define _ARRAY_BANDEQS_TOKEN 0xA6
-#define _ARRAY_PLUSPLUS_TOKEN 0xA7
-#define _ARRAY_POST_PLUSPLUS_TOKEN 0xA8
-#define _ARRAY_MINUSMINUS_TOKEN 0xA9
-#define _ARRAY_POST_MINUSMINUS_TOKEN 0xAA
-
-#define _SCALAR_ASSIGN_TOKEN 0xB0
-#define _SCALAR_PLUSEQS_TOKEN 0xB1
-#define _SCALAR_MINUSEQS_TOKEN 0xB2
-#define _SCALAR_TIMESEQS_TOKEN 0xB3
-#define _SCALAR_DIVEQS_TOKEN 0xB4
-#define _SCALAR_BOREQS_TOKEN 0xB5
-#define _SCALAR_BANDEQS_TOKEN 0xB6
-#define _SCALAR_PLUSPLUS_TOKEN 0xB7
-#define _SCALAR_POST_PLUSPLUS_TOKEN 0xB8
-#define _SCALAR_MINUSMINUS_TOKEN 0xB9
-#define _SCALAR_POST_MINUSMINUS_TOKEN 0xBA
-
-#define _DEREF_ASSIGN_TOKEN 0xC0
-#define _DEREF_PLUSEQS_TOKEN 0xC1
-#define _DEREF_MINUSEQS_TOKEN 0xC2
-#define _DEREF_TIMESEQS_TOKEN 0xC3
-#define _DEREF_DIVEQS_TOKEN 0xC4
-#define _DEREF_BOREQS_TOKEN 0xC5
-#define _DEREF_BANDEQS_TOKEN 0xC6
-#define _DEREF_PLUSPLUS_TOKEN 0xC7
-#define _DEREF_POST_PLUSPLUS_TOKEN 0xC8
-#define _DEREF_MINUSMINUS_TOKEN 0xC9
-#define _DEREF_POST_MINUSMINUS_TOKEN 0xCA
-
-#define LAST_ASSIGN_TOKEN 0xCA
-#define IS_ASSIGN_TOKEN(t) (((t)>=FIRST_ASSIGN_TOKEN)&&((t)<=LAST_ASSIGN_TOKEN))
-
-#define _INLINE_ARRAY_TOKEN 0xE0
-#define _INLINE_IMPLICIT_ARRAY_TOKEN 0xE1
-#define _NULL_TOKEN 0xE2
-#define _INLINE_WILDCARD_ARRAY_TOKEN 0xE3
-
-#define LINE_NUM_TOKEN 0xFC
-#define ARG_TOKEN 0xFD
-#define EARG_TOKEN 0xFE
-#define NO_OP_LITERAL 0xFF
-
-typedef struct
-{
- /* sltoken.c */
- /* SLang_eval_object */
- SLang_Load_Type *llt;
- SLPreprocess_Type *this_slpp;
- /* prep_get_char() */
- char *input_line;
- char cchar;
- /* get_token() */
- int want_nl_token;
-
- /* slparse.c */
- _SLang_Token_Type ctok;
- int block_depth;
- int assignment_expression;
-
- /* slang.c : SLcompile() */
- _SLang_Token_Type save_token;
- _SLang_Token_Type next_token;
- void (*slcompile_ptr)(_SLang_Token_Type *);
-}
-_SLEval_Context;
-
-extern int _SLget_token (_SLang_Token_Type *);
-extern void _SLparse_error (char *, _SLang_Token_Type *, int);
-extern void _SLparse_start (SLang_Load_Type *);
-extern int _SLget_rpn_token (_SLang_Token_Type *);
-extern void _SLcompile_byte_compiled (void);
-
-extern int (*_SLprep_eval_hook) (char *);
-
-#ifdef HAVE_VSNPRINTF
-#define _SLvsnprintf vsnprintf
-#else
-extern int _SLvsnprintf (char *, unsigned int, char *, va_list);
-#endif
-
-#ifdef HAVE_SNPRINTF
-# define _SLsnprintf snprintf
-#else
-extern int _SLsnprintf (char *, unsigned int, char *, ...);
-#endif
-
-#undef _INLINE_
-#if defined(__GNUC__) && _SLANG_USE_INLINE_CODE
-# define _INLINE_ __inline__
-#else
-# define _INLINE_
-#endif
-
-
-#endif /* _PRIVATE_SLANG_H_ */
diff --git a/mdk-stage1/slang/config.h b/mdk-stage1/slang/config.h
deleted file mode 100644
index a5ab3273c..000000000
--- a/mdk-stage1/slang/config.h
+++ /dev/null
@@ -1,163 +0,0 @@
-/* src/sysconf.h. Generated automatically by configure. */
-/* -*- c -*- */
-/* Note: this is for unix only. */
-
-#ifndef SL_CONFIG_H
-#define SL_CONFIG_H
-
-/* define if you have stdlib.h */
-#define HAVE_STDLIB_H 1
-
-/* define if you have unistd.h */
-#define HAVE_UNISTD_H 1
-
-/* define if you have termios.h */
-#define HAVE_TERMIOS_H 1
-
-/* define if you have memory.h */
-#define HAVE_MEMORY_H 1
-
-/* define if you have malloc.h */
-#define HAVE_MALLOC_H 1
-
-/* define if you have memset */
-#define HAVE_MEMSET 1
-
-/* define if you have memcpy */
-#define HAVE_MEMCPY 1
-
-//#define HAVE_SETLOCALE 1
-//#define HAVE_LOCALE_H 1
-
-#define HAVE_VFSCANF 1
-
-/* define if you have fcntl.h */
-#define HAVE_FCNTL_H 1
-
-/* Define if you have the vsnprintf, snprintf functions and they return
- * EOF upon failure.
- */
-#define HAVE_VSNPRINTF 1
-#define HAVE_SNPRINTF 1
-
-/* define if you have sys/fcntl.h */
-#define HAVE_SYS_FCNTL_H 1
-
-#define HAVE_SYS_TYPES_H 1
-#define HAVE_SYS_WAIT_H 1
-#define HAVE_SYS_TIMES_H 1
-
-/* Set these to the appropriate values */
-#define SIZEOF_SHORT 2
-#define SIZEOF_INT 4
-#define SIZEOF_LONG 4
-#define SIZEOF_FLOAT 4
-#define SIZEOF_DOUBLE 8
-
-/* define if you have these. */
-#define HAVE_ATEXIT 1
-#define HAVE_ON_EXIT 1
-#define HAVE_PUTENV 1
-#define HAVE_GETCWD 1
-#define HAVE_TCGETATTR 1
-#define HAVE_TCSETATTR 1
-#define HAVE_CFGETOSPEED 1
-#define HAVE_LSTAT 1
-#define HAVE_KILL 1
-#define HAVE_CHOWN 1
-#define HAVE_VSNPRINTF 1
-#define HAVE_POPEN 1
-#define HAVE_UMASK 1
-#define HAVE_READLINK 1
-#define HAVE_TIMES 1
-#define HAVE_GMTIME 1
-#define HAVE_MKFIFO 1
-
-#define HAVE_GETPPID 1
-#define HAVE_GETGID 1
-#define HAVE_GETEGID 1
-#define HAVE_GETEUID 1
-/* #undef HAVE_GETUID */
-
-#define HAVE_SETGID 1
-#define HAVE_SETPGID 1
-#define HAVE_SETUID 1
-
-#define HAVE_ACOSH 1
-#define HAVE_ASINH 1
-#define HAVE_ATANH 1
-
-#define HAVE_DIRENT_H 1
-/* #undef HAVE_SYS_NDIR_H */
-/* #undef HAVE_SYS_DIR_H */
-/* #undef HAVE_NDIR_H */
-
-#define HAVE_DLFCN_H 1
-
-#define HAVE_SYS_UTSNAME_H 1
-#define HAVE_UNAME 1
-
-/* These two are needed on DOS-like systems. Unix does not require them.
- * They are included here for consistency.
- *
-#define HAVE_IO_H
-#define HAVE_PROCESS_H
- */
-
-/* #undef USE_TERMCAP */
-
-/* #undef mode_t */
-/* #undef uid_t */
-/* #undef pid_t */
-/* #undef gid_t */
-
-/* Do we have posix signals? */
-#define HAVE_SIGACTION 1
-#define HAVE_SIGPROCMASK 1
-#define HAVE_SIGEMPTYSET 1
-#define HAVE_SIGADDSET 1
-
-#if defined(HAVE_SIGADDSET) && defined(HAVE_SIGEMPTYSET)
-# if defined(HAVE_SIGACTION) && defined(HAVE_SIGPROCMASK)
-# define SLANG_POSIX_SIGNALS
-# endif
-#endif
-
-/* Define if you need to in order for stat and other things to work. */
-/* #undef _POSIX_SOURCE */
-
-#ifdef _AIX
-# ifndef _POSIX_SOURCE
-# define _POSIX_SOURCE 1
-# endif
-# ifndef _ALL_SOURCE
-# define _ALL_SOURCE
-# endif
-/* This may generate warnings but the fact is that without it, xlc will
- * INCORRECTLY inline many str* functions. */
-/* # undef __STR__ */
-#endif
-
-/* define USE_TERMCAP if you want to use it instead of terminfo. */
-#if defined(sequent) || defined(NeXT)
-# ifndef USE_TERMCAP
-# define USE_TERMCAP
-# endif
-#endif
-
-#if defined(ultrix) && !defined(__GNUC__)
-# ifndef NO_PROTOTYPES
-# define NO_PROTOTYPES
-# endif
-#endif
-
-#ifndef unix
-# define unix 1
-#endif
-
-#ifndef __unix__
-# define __unix__ 1
-#endif
-
-#define _SLANG_SOURCE_ 1
-#endif /* SL_CONFIG_H */
diff --git a/mdk-stage1/slang/jdmacros.h b/mdk-stage1/slang/jdmacros.h
deleted file mode 100644
index 70d491b78..000000000
--- a/mdk-stage1/slang/jdmacros.h
+++ /dev/null
@@ -1,53 +0,0 @@
-#ifndef _JD_MACROS_H_
-#define _JD_MACROS_H_
-
-#ifndef SLMEMSET
-# ifdef HAVE_MEMSET
-# define SLMEMSET memset
-# else
-# define SLMEMSET SLmemset
-# endif
-#endif
-
-#ifndef SLMEMCHR
-# ifdef HAVE_MEMCHR
-# define SLMEMCHR memchr
-# else
-# define SLMEMCHR SLmemchr
-# endif
-#endif
-
-#ifndef SLMEMCPY
-# ifdef HAVE_MEMCPY
-# define SLMEMCPY memcpy
-# else
-# define SLMEMCPY SLmemcpy
-# endif
-#endif
-
-/* Note: HAVE_MEMCMP requires an unsigned memory comparison!!! */
-#ifndef SLMEMCMP
-# ifdef HAVE_MEMCMP
-# define SLMEMCMP memcmp
-# else
-# define SLMEMCMP SLmemcmp
-# endif
-#endif
-
-#ifndef SLFREE
-# define SLFREE free
-#endif
-
-#ifndef SLMALLOC
-# define SLMALLOC malloc
-#endif
-
-#ifndef SLCALLOC
-# define SLCALLOC calloc
-#endif
-
-#ifndef SLREALLOC
-# define SLREALLOC realloc
-#endif
-
-#endif /* _JD_MACROS_H_ */
diff --git a/mdk-stage1/slang/keywhash.c b/mdk-stage1/slang/keywhash.c
deleted file mode 100644
index 17d94d5a3..000000000
--- a/mdk-stage1/slang/keywhash.c
+++ /dev/null
@@ -1,190 +0,0 @@
-/* Perfect hash generated by command line:
- * ./a.out 1
- */
-#define MIN_HASH_VALUE 2
-#define MAX_HASH_VALUE 118
-#define MIN_KEYWORD_LEN 2
-#define MAX_KEYWORD_LEN 11
-
-static unsigned char Keyword_Hash_Table [256] =
-{
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 1, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 9, 7, 1, 8, 2, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 119, 0, 0, 119, 0, 119, 119, 119, 7, 119, 0, 0, 119, 119, 0,
- 119, 119, 0, 0, 0, 0, 119, 119, 0, 119, 119, 119, 119, 119, 119, 2,
- 119, 41, 1, 1, 9, 0, 55, 8, 0, 0, 119, 0, 27, 0, 0, 0,
- 7, 2, 0, 21, 0, 0, 0, 3, 2, 0, 119, 119, 119, 119, 119, 119,
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
- 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119
-};
-
-static unsigned char keyword_hash (char *s, unsigned int len)
-{
- unsigned int sum;
-
- sum = len;
- while (len)
- {
- len--;
- sum += (unsigned int) Keyword_Hash_Table [(unsigned char)s[len]];
- }
- return sum;
-}
-
-typedef struct
-{
- char *name;
- unsigned int type;
-}
-Keyword_Table_Type;
-
-static Keyword_Table_Type Keyword_Table [/* 117 */] =
-{
- {"or", OR_TOKEN},
- {"not", NOT_TOKEN},
- {NULL,0},
- {"xor", BXOR_TOKEN},
- {"return", RETURN_TOKEN},
- {"exch", EXCH_TOKEN},
- {NULL,0},
- {"continue", CONT_TOKEN},
- {NULL,0},
- {"do", DO_TOKEN},
- {"mod", MOD_TOKEN},
- {"ERROR_BLOCK", ERRBLK_TOKEN},
- {"USER_BLOCK2", USRBLK2_TOKEN},
- {"USER_BLOCK4", USRBLK4_TOKEN},
- {"__tmp", TMP_TOKEN},
- {"pop", POP_TOKEN},
- {NULL,0},
- {"EXIT_BLOCK", EXITBLK_TOKEN},
- {"USER_BLOCK1", USRBLK1_TOKEN},
- {"USER_BLOCK3", USRBLK3_TOKEN},
- {"USER_BLOCK0", USRBLK0_TOKEN},
- {NULL,0},
- {"shr", SHR_TOKEN},
- {"chs", CHS_TOKEN},
- {"sqr", SQR_TOKEN},
- {NULL,0},
- {"struct", STRUCT_TOKEN},
- {NULL,0},
- {NULL,0},
- {"switch", SWITCH_TOKEN},
- {"mul2", MUL2_TOKEN},
- {"sign", SIGN_TOKEN},
- {"using", USING_TOKEN},
- {"while", WHILE_TOKEN},
- {NULL,0},
- {NULL,0},
- {"loop", LOOP_TOKEN},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {"public", PUBLIC_TOKEN},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {"break", BREAK_TOKEN},
- {NULL,0},
- {"do_while", DOWHILE_TOKEN},
- {NULL,0},
- {"shl", SHL_TOKEN},
- {"else", ELSE_TOKEN},
- {"and", AND_TOKEN},
- {"orelse", ORELSE_TOKEN},
- {"private", PRIVATE_TOKEN},
- {NULL,0},
- {"if", IF_TOKEN},
- {"for", FOR_TOKEN},
- {"!if", IFNOT_TOKEN},
- {NULL,0},
- {"_for", _FOR_TOKEN},
- {"forever", FOREVER_TOKEN},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {"abs", ABS_TOKEN},
- {"case", CASE_TOKEN},
- {NULL,0},
- {"static", STATIC_TOKEN},
- {"define", DEFINE_TOKEN},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {"typedef", TYPEDEF_TOKEN},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {"foreach", FOREACH_TOKEN},
- {"andelse", ANDELSE_TOKEN},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {NULL,0},
- {"variable", VARIABLE_TOKEN},
-};
-
-static Keyword_Table_Type *is_keyword (char *str, unsigned int len)
-{
- unsigned int hash;
- char *name;
- Keyword_Table_Type *kw;
-
- if ((len < MIN_KEYWORD_LEN)
- || (len > MAX_KEYWORD_LEN))
- return NULL;
-
- hash = keyword_hash (str, len);
- if ((hash > MAX_HASH_VALUE) || (hash < MIN_HASH_VALUE))
- return NULL;
-
- kw = &Keyword_Table[hash - MIN_HASH_VALUE];
- if ((NULL != (name = kw->name))
- && (*str == *name)
- && (0 == strcmp (str, name)))
- return kw;
- return NULL;
-}
diff --git a/mdk-stage1/slang/sl-feat.h b/mdk-stage1/slang/sl-feat.h
deleted file mode 100644
index 511d72451..000000000
--- a/mdk-stage1/slang/sl-feat.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Setting this to 1 enables automatic support for associative arrays.
- * If this is set to 0, an application must explicitly enable associative
- * array support via SLang_init_slassoc.
- */
-#define SLANG_HAS_ASSOC_ARRAYS 1
-
-#define SLANG_HAS_COMPLEX 1
-#define SLANG_HAS_FLOAT 1
-
-/* This is the old space-speed trade off. To reduce memory usage and code
- * size, set this to zero.
- */
-#define _SLANG_OPTIMIZE_FOR_SPEED 2
-
-#define _SLANG_USE_INLINE_CODE 1
-
-/* This is experimental. It adds extra information for tracking down
- * errors.
- */
-#define _SLANG_HAS_DEBUG_CODE 1
-
-/* Allow optimizations based upon the __tmp operator. */
-#define _SLANG_USE_TMP_OPTIMIZATION 1
-
-/* Setting this to one will map 8 bit vtxxx terminals to 7 bit. Terminals
- * such as the vt320 can be set up to output the two-character escape sequence
- * encoded as 'ESC [' as single character. Setting this variable to 1 will
- * insert code to map such characters to the 7 bit equivalent.
- * This affects just input characters in the range 128-160 on non PC
- * systems.
- */
-#if defined(VMS) || defined(AMIGA)
-# define _SLANG_MAP_VTXXX_8BIT 1
-#else
-# define _SLANG_MAP_VTXXX_8BIT 0
-#endif
-
-/* Add support for color terminals that cannot do background color erases
- * Such terminals are poorly designed and are slowly disappearing but they
- * are still quite common. For example, screen is one of them!
- *
- * This is experimental. In particular, it is not known to work if
- * KANJI suupport is enabled.
- */
-#if !defined(IBMPC_SYSTEM)
-# define SLTT_HAS_NON_BCE_SUPPORT 1
-#else
-# define SLTT_HAS_NON_BCE_SUPPORT 0
-#endif
-
-/* If you want slang to assume that an xterm always has the background color
- * erase feature, then set this to 1. Otherwise, it will check the terminfo
- * database. This may or may not be a good idea since most good color xterms
- * support bce but many terminfo systems do not support it.
- */
-#define SLTT_XTERM_ALWAYS_BCE 0
-
-/* Set this to 1 to enable Kanji support. See above comment. */
-#define SLANG_HAS_KANJI_SUPPORT 0
-
diff --git a/mdk-stage1/slang/slang.c b/mdk-stage1/slang/slang.c
deleted file mode 100644
index 6edc7df37..000000000
--- a/mdk-stage1/slang/slang.c
+++ /dev/null
@@ -1,5547 +0,0 @@
-/* -*- mode: C; mode: fold; -*- */
-/* slang.c --- guts of S-Lang interpreter */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#if SLANG_HAS_FLOAT
-# include <math.h>
-#endif
-
-#include "slang.h"
-#include "_slang.h"
-
-#define USE_COMBINED_BYTECODES 0
-
-struct _SLBlock_Type;
-
-typedef struct
-{
- struct _SLBlock_Type *body;
- unsigned int num_refs;
-}
-_SLBlock_Header_Type;
-
-typedef struct
-{
- char *name;
- SLang_Name_Type *next;
- char name_type;
-
- union
- {
- _SLBlock_Header_Type *header; /* body of function */
- char *autoload_filename;
- }
- v;
-#if _SLANG_HAS_DEBUG_CODE
- char *file;
-#endif
-#define SLANG_MAX_LOCAL_VARIABLES 254
-#define AUTOLOAD_NUM_LOCALS (SLANG_MAX_LOCAL_VARIABLES + 1)
- unsigned char nlocals; /* number of local variables */
- unsigned char nargs; /* number of arguments */
-}
-_SLang_Function_Type;
-
-typedef struct
-{
- char *name;
- SLang_Name_Type *next;
- char name_type;
-
- SLang_Object_Type obj;
-}
-SLang_Global_Var_Type;
-
-typedef struct
-{
- char *name;
- SLang_Name_Type *next;
- char name_type;
-
- int local_var_number;
-}
-SLang_Local_Var_Type;
-
-typedef struct _SLBlock_Type
-{
- unsigned char bc_main_type;
- unsigned char bc_sub_type;
- union
- {
- struct _SLBlock_Type *blk;
- int i_blk;
-
- SLang_Name_Type *nt_blk;
- SLang_App_Unary_Type *nt_unary_blk;
- SLang_Intrin_Var_Type *nt_ivar_blk;
- SLang_Intrin_Fun_Type *nt_ifun_blk;
- SLang_Global_Var_Type *nt_gvar_blk;
- SLang_IConstant_Type *iconst_blk;
- SLang_DConstant_Type *dconst_blk;
- _SLang_Function_Type *nt_fun_blk;
-
- VOID_STAR ptr_blk;
- char *s_blk;
- SLang_BString_Type *bs_blk;
-
-#if SLANG_HAS_FLOAT
- double *double_blk; /*literal double is a pointer */
-#endif
- float float_blk;
- long l_blk;
- struct _SLang_Struct_Type *struct_blk;
- int (*call_function)(void);
- }
- b;
-}
-SLBlock_Type;
-
-/* Debugging and tracing variables */
-
-void (*SLang_Enter_Function)(char *) = NULL;
-void (*SLang_Exit_Function)(char *) = NULL;
-/* If non null, these call C functions before and after a slang function. */
-
-int _SLang_Trace = 0;
-/* If _SLang_Trace = -1, do not trace intrinsics */
-static int Trace_Mode = 0;
-
-static char *Trace_Function; /* function to be traced */
-int SLang_Traceback = 0;
-/* non zero means do traceback. If less than 0, do not show local variables */
-
-/* These variables handle _NARGS processing by the parser */
-int SLang_Num_Function_Args;
-static int *Num_Args_Stack;
-static unsigned int Recursion_Depth;
-static SLang_Object_Type *Frame_Pointer;
-static int Next_Function_Num_Args;
-static unsigned int Frame_Pointer_Depth;
-static unsigned int *Frame_Pointer_Stack;
-
-static int Lang_Break_Condition = 0;
-/* true if any one below is true. This keeps us from testing 3 variables.
- * I know this can be perfomed with a bitmapped variable, but...
- */
-static int Lang_Break = 0;
-static int Lang_Return = 0;
-/* static int Lang_Continue = 0; */
-
-SLang_Object_Type *_SLRun_Stack;
-SLang_Object_Type *_SLStack_Pointer;
-static SLang_Object_Type *_SLStack_Pointer_Max;
-
-/* Might want to increase this. */
-static SLang_Object_Type Local_Variable_Stack[SLANG_MAX_LOCAL_STACK];
-static SLang_Object_Type *Local_Variable_Frame = Local_Variable_Stack;
-
-static void free_function_header (_SLBlock_Header_Type *);
-
-void (*SLang_Dump_Routine)(char *);
-
-static void call_dump_routine (char *fmt, ...)
-{
- char buf[1024];
- va_list ap;
-
- va_start (ap, fmt);
- if (SLang_Dump_Routine != NULL)
- {
- (void) _SLvsnprintf (buf, sizeof (buf), fmt, ap);
- (*SLang_Dump_Routine) (buf);
- }
- else
- {
- vfprintf (stderr, fmt, ap);
- fflush (stderr);
- }
- va_end (ap);
-}
-
-static void do_traceback (char *, unsigned int, char *);
-static int init_interpreter (void);
-
-/*{{{ push/pop/etc stack manipulation functions */
-
-/* This routine is assumed to work even in the presence of a SLang_Error. */
-_INLINE_
-int SLang_pop (SLang_Object_Type *x)
-{
- register SLang_Object_Type *y;
-
- y = _SLStack_Pointer;
- if (y == _SLRun_Stack)
- {
- if (SLang_Error == 0) SLang_Error = SL_STACK_UNDERFLOW;
- x->data_type = 0;
- return -1;
- }
- y--;
- *x = *y;
-
- _SLStack_Pointer = y;
- return 0;
-}
-
-static int pop_ctrl_integer (int *i)
-{
- int type;
- SLang_Class_Type *cl;
-#if _SLANG_OPTIMIZE_FOR_SPEED
- register SLang_Object_Type *y;
-
- /* Most of the time, either an integer or a char will be on the stack.
- * Optimize these cases.
- */
- y = _SLStack_Pointer;
- if (y == _SLRun_Stack)
- {
- if (SLang_Error == 0) SLang_Error = SL_STACK_UNDERFLOW;
- return -1;
- }
- y--;
-
- type = y->data_type;
- if (type == SLANG_INT_TYPE)
- {
- _SLStack_Pointer = y;
- *i = y->v.int_val;
- return 0;
- }
- if (type == SLANG_CHAR_TYPE)
- {
- _SLStack_Pointer = y;
- *i = y->v.char_val;
- return 0;
- }
-#else
- if (-1 == (type = SLang_peek_at_stack ()))
- return -1;
-#endif
-
- cl = _SLclass_get_class ((unsigned char) type);
- if (cl->cl_to_bool == NULL)
- {
- SLang_verror (SL_TYPE_MISMATCH,
- "%s cannot be used in a boolean context",
- cl->cl_name);
- return -1;
- }
- return cl->cl_to_bool ((unsigned char) type, i);
-}
-
-_INLINE_
-int SLang_peek_at_stack (void)
-{
- if (_SLStack_Pointer == _SLRun_Stack)
- {
- if (SLang_Error == 0)
- SLang_Error = SL_STACK_UNDERFLOW;
- return -1;
- }
-
- return (_SLStack_Pointer - 1)->data_type;
-}
-
-int SLang_peek_at_stack1 (void)
-{
- int type;
-
- type = SLang_peek_at_stack ();
- if (type == SLANG_ARRAY_TYPE)
- type = (_SLStack_Pointer - 1)->v.array_val->data_type;
-
- return type;
-}
-
-_INLINE_
-void SLang_free_object (SLang_Object_Type *obj)
-{
- unsigned char data_type;
- SLang_Class_Type *cl;
-
- if (obj == NULL) return;
- data_type = obj->data_type;
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR == _SLclass_Class_Type [data_type])
- return;
- if (data_type == SLANG_STRING_TYPE)
- {
- SLang_free_slstring (obj->v.s_val);
- return;
- }
-#endif
- cl = _SLclass_get_class (data_type);
-#if !_SLANG_OPTIMIZE_FOR_SPEED
- if (cl->cl_class_type != SLANG_CLASS_TYPE_SCALAR)
-#endif
- (*cl->cl_destroy) (data_type, (VOID_STAR) &obj->v);
-}
-
-_INLINE_
-int SLang_push (SLang_Object_Type *x)
-{
- register SLang_Object_Type *y;
- y = _SLStack_Pointer;
-
- /* if there is a SLang_Error, probably not much harm will be done
- if it is ignored here */
- /* if (SLang_Error) return; */
-
- /* flag it now */
- if (y >= _SLStack_Pointer_Max)
- {
- if (!SLang_Error) SLang_Error = SL_STACK_OVERFLOW;
- return -1;
- }
-
- *y = *x;
- _SLStack_Pointer = y + 1;
- return 0;
-}
-
-/* _INLINE_ */
-int SLclass_push_ptr_obj (unsigned char type, VOID_STAR pval)
-{
- register SLang_Object_Type *y;
- y = _SLStack_Pointer;
-
- if (y >= _SLStack_Pointer_Max)
- {
- if (!SLang_Error) SLang_Error = SL_STACK_OVERFLOW;
- return -1;
- }
-
- y->data_type = type;
- y->v.ptr_val = pval;
-
- _SLStack_Pointer = y + 1;
- return 0;
-}
-
-_INLINE_
-int SLclass_push_int_obj (unsigned char type, int x)
-{
- register SLang_Object_Type *y;
- y = _SLStack_Pointer;
-
- if (y >= _SLStack_Pointer_Max)
- {
- if (!SLang_Error) SLang_Error = SL_STACK_OVERFLOW;
- return -1;
- }
-
- y->data_type = type;
- y->v.int_val = x;
-
- _SLStack_Pointer = y + 1;
- return 0;
-}
-
-_INLINE_
-int _SLang_pop_object_of_type (unsigned char type, SLang_Object_Type *obj,
- int allow_arrays)
-{
- register SLang_Object_Type *y;
-
- y = _SLStack_Pointer;
- if (y == _SLRun_Stack)
- return SLang_pop (obj);
- y--;
- if (y->data_type != type)
- {
-#if _SLANG_OPTIMIZE_FOR_SPEED
- /* This is an implicit typecast. We do not want to typecast
- * floats to ints implicitly.
- */
- if (_SLarith_Is_Arith_Type [type]
- && _SLarith_Is_Arith_Type [y->data_type]
- && (_SLarith_Is_Arith_Type [type] >= _SLarith_Is_Arith_Type[y->data_type]))
- {
- /* This should not fail */
- (void) _SLarith_typecast (y->data_type, (VOID_STAR)&y->v, 1,
- type, (VOID_STAR)&obj->v);
- obj->data_type = type;
- _SLStack_Pointer = y;
- return 0;
- }
-#endif
-
- if ((allow_arrays == 0)
- || (y->data_type != SLANG_ARRAY_TYPE)
- || (y->v.array_val->data_type != type))
- if (-1 == SLclass_typecast (type, 1, 0))
- return -1;
- }
- *obj = *y;
- _SLStack_Pointer = y;
- return 0;
-}
-
-/* This function reverses the top n items on the stack and returns a
- * an offset from the start of the stack to the last item.
- */
-int SLreverse_stack (int n)
-{
- SLang_Object_Type *otop, *obot, tmp;
-
- otop = _SLStack_Pointer;
- if ((n > otop - _SLRun_Stack) || (n < 0))
- {
- SLang_Error = SL_STACK_UNDERFLOW;
- return -1;
- }
- obot = otop - n;
- otop--;
- while (otop > obot)
- {
- tmp = *obot;
- *obot = *otop;
- *otop = tmp;
- otop--;
- obot++;
- }
- return (int) ((_SLStack_Pointer - n) - _SLRun_Stack);
-}
-
-_INLINE_
-int SLroll_stack (int np)
-{
- int n, i;
- SLang_Object_Type *otop, *obot, tmp;
-
- if ((n = abs(np)) <= 1) return 0; /* identity */
-
- obot = otop = _SLStack_Pointer;
- i = n;
- while (i != 0)
- {
- if (obot <= _SLRun_Stack)
- {
- SLang_Error = SL_STACK_UNDERFLOW;
- return -1;
- }
- obot--;
- i--;
- }
- otop--;
-
- if (np > 0)
- {
- /* Put top on bottom and roll rest up. */
- tmp = *otop;
- while (otop > obot)
- {
- *otop = *(otop - 1);
- otop--;
- }
- *otop = tmp;
- }
- else
- {
- /* Put bottom on top and roll rest down. */
- tmp = *obot;
- while (obot < otop)
- {
- *obot = *(obot + 1);
- obot++;
- }
- *obot = tmp;
- }
- return 0;
-}
-
-int _SLstack_depth (void)
-{
- return (int) (_SLStack_Pointer - _SLRun_Stack);
-}
-
-int SLdup_n (int n)
-{
- SLang_Object_Type *bot, *top;
-
- if (n <= 0)
- return 0;
-
- top = _SLStack_Pointer;
- if (top < _SLRun_Stack + n)
- {
- if (SLang_Error == 0)
- SLang_Error = SL_STACK_UNDERFLOW;
- return -1;
- }
- if (top + n > _SLStack_Pointer_Max)
- {
- if (SLang_Error == 0)
- SLang_Error = SL_STACK_OVERFLOW;
- return -1;
- }
- bot = top - n;
-
- while (bot < top)
- {
- SLang_Class_Type *cl;
- unsigned char data_type = bot->data_type;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR == _SLclass_Class_Type [data_type])
- {
- *_SLStack_Pointer++ = *bot++;
- continue;
- }
-#endif
- cl = _SLclass_get_class (data_type);
- if (-1 == (*cl->cl_push) (data_type, (VOID_STAR) &bot->v))
- return -1;
- bot++;
- }
- return 0;
-}
-
-/*}}}*/
-
-/*{{{ inner interpreter and support functions */
-
-_INLINE_
-int _SL_increment_frame_pointer (void)
-{
- if (Recursion_Depth >= SLANG_MAX_RECURSIVE_DEPTH)
- {
- SLang_verror (SL_STACK_OVERFLOW, "Num Args Stack Overflow");
- return -1;
- }
- Num_Args_Stack [Recursion_Depth] = SLang_Num_Function_Args;
-
- SLang_Num_Function_Args = Next_Function_Num_Args;
- Next_Function_Num_Args = 0;
- Recursion_Depth++;
- return 0;
-}
-
-_INLINE_
-int _SL_decrement_frame_pointer (void)
-{
- if (Recursion_Depth == 0)
- {
- SLang_verror (SL_STACK_UNDERFLOW, "Num Args Stack Underflow");
- return -1;
- }
-
- Recursion_Depth--;
- if (Recursion_Depth < SLANG_MAX_RECURSIVE_DEPTH)
- SLang_Num_Function_Args = Num_Args_Stack [Recursion_Depth];
-
- return 0;
-}
-
-_INLINE_
-int SLang_start_arg_list (void)
-{
- if (Frame_Pointer_Depth < SLANG_MAX_RECURSIVE_DEPTH)
- {
- Frame_Pointer_Stack [Frame_Pointer_Depth] = (unsigned int) (Frame_Pointer - _SLRun_Stack);
- Frame_Pointer = _SLStack_Pointer;
- Frame_Pointer_Depth++;
- Next_Function_Num_Args = 0;
- return 0;
- }
-
- SLang_verror (SL_STACK_OVERFLOW, "Frame Stack Overflow");
- return -1;
-}
-
-_INLINE_
-int SLang_end_arg_list (void)
-{
- if (Frame_Pointer_Depth == 0)
- {
- SLang_verror (SL_STACK_UNDERFLOW, "Frame Stack Underflow");
- return -1;
- }
- Frame_Pointer_Depth--;
- if (Frame_Pointer_Depth < SLANG_MAX_RECURSIVE_DEPTH)
- {
- Next_Function_Num_Args = (int) (_SLStack_Pointer - Frame_Pointer);
- Frame_Pointer = _SLRun_Stack + Frame_Pointer_Stack [Frame_Pointer_Depth];
- }
- return 0;
-}
-
-_INLINE_
-static int do_bc_call_direct_frame (int (*f)(void))
-{
- if ((0 == SLang_end_arg_list ())
- && (0 == _SL_increment_frame_pointer ()))
- {
- (void) (*f) ();
- _SL_decrement_frame_pointer ();
- }
- if (SLang_Error)
- return -1;
- return 0;
-}
-
-static int do_name_type_error (SLang_Name_Type *nt)
-{
- char buf[256];
- if (nt != NULL)
- {
- (void) _SLsnprintf (buf, sizeof (buf), "(Error occurred processing %s)", nt->name);
- do_traceback (buf, 0, NULL);
- }
- return -1;
-}
-
-/* local and global variable assignments */
-
-static int do_binary_ab (int op, SLang_Object_Type *obja, SLang_Object_Type *objb)
-{
- SLang_Class_Type *a_cl, *b_cl, *c_cl;
- unsigned char b_data_type, a_data_type, c_data_type;
- int (*binary_fun) (int,
- unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR);
- VOID_STAR pa;
- VOID_STAR pb;
- VOID_STAR pc;
- int ret;
-
- b_data_type = objb->data_type;
- a_data_type = obja->data_type;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (_SLarith_Is_Arith_Type[a_data_type]
- && _SLarith_Is_Arith_Type[b_data_type])
- {
- int status;
- status = _SLarith_bin_op (obja, objb, op);
- if (status != 1)
- return status;
- /* drop and try it the hard way */
- }
-#endif
-
- a_cl = _SLclass_get_class (a_data_type);
- if (a_data_type == b_data_type)
- b_cl = a_cl;
- else
- b_cl = _SLclass_get_class (b_data_type);
-
- if (NULL == (binary_fun = _SLclass_get_binary_fun (op, a_cl, b_cl, &c_cl, 1)))
- return -1;
-
- c_data_type = c_cl->cl_data_type;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR == _SLclass_Class_Type [a_data_type])
- pa = (VOID_STAR) &obja->v;
- else
-#endif
- pa = _SLclass_get_ptr_to_value (a_cl, obja);
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR == _SLclass_Class_Type [b_data_type])
- pb = (VOID_STAR) &objb->v;
- else
-#endif
- pb = _SLclass_get_ptr_to_value (b_cl, objb);
-
- pc = c_cl->cl_transfer_buf;
-
- if (1 != (*binary_fun) (op,
- a_data_type, pa, 1,
- b_data_type, pb, 1,
- pc))
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "Binary operation between %s and %s failed",
- a_cl->cl_name, b_cl->cl_name);
-
- return -1;
- }
-
- /* apush will create a copy, so make sure we free after the push */
- ret = (*c_cl->cl_apush)(c_data_type, pc);
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [c_data_type])
-#endif
- (*c_cl->cl_adestroy)(c_data_type, pc);
-
- return ret;
-}
-
-_INLINE_
-static void do_binary (int op)
-{
- SLang_Object_Type obja, objb;
-
- if (SLang_pop (&objb)) return;
- if (0 == SLang_pop (&obja))
- {
- (void) do_binary_ab (op, &obja, &objb);
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [obja.data_type])
-#endif
- SLang_free_object (&obja);
- }
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [objb.data_type])
-#endif
- SLang_free_object (&objb);
-}
-
-static int do_unary_op (int op, SLang_Object_Type *obj, int unary_type)
-{
- int (*f) (int, unsigned char, VOID_STAR, unsigned int, VOID_STAR);
- VOID_STAR pa;
- VOID_STAR pb;
- SLang_Class_Type *a_cl, *b_cl;
- unsigned char a_type, b_type;
- int ret;
-
- a_type = obj->data_type;
- a_cl = _SLclass_get_class (a_type);
-
- if (NULL == (f = _SLclass_get_unary_fun (op, a_cl, &b_cl, unary_type)))
- return -1;
-
- b_type = b_cl->cl_data_type;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR == _SLclass_Class_Type [a_type])
- pa = (VOID_STAR) &obj->v;
- else
-#endif
- pa = _SLclass_get_ptr_to_value (a_cl, obj);
-
- pb = b_cl->cl_transfer_buf;
-
- if (1 != (*f) (op, a_type, pa, 1, pb))
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "Unary operation for %s failed", a_cl->cl_name);
- return -1;
- }
-
- ret = (*b_cl->cl_apush)(b_type, pb);
- /* cl_apush creates a copy, so make sure we call cl_adestroy */
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [b_type])
-#endif
- (*b_cl->cl_adestroy)(b_type, pb);
-
- return ret;
-}
-
-_INLINE_
-static int do_unary (int op, int unary_type)
-{
- SLang_Object_Type obj;
- int ret;
-
- if (-1 == SLang_pop (&obj)) return -1;
- ret = do_unary_op (op, &obj, unary_type);
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [obj.data_type])
-#endif
- SLang_free_object (&obj);
- return ret;
-}
-
-static int do_assignment_binary (int op, SLang_Object_Type *obja_ptr)
-{
- SLang_Object_Type objb;
- int ret;
-
- if (SLang_pop (&objb))
- return -1;
-
- ret = do_binary_ab (op, obja_ptr, &objb);
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [objb.data_type])
-#endif
- SLang_free_object (&objb);
- return ret;
-}
-
-/* The order of these is assumed to match the binary operators
- * defined in slang.h
- */
-static int
-map_assignment_op_to_binary (unsigned char op_type, int *op, int *is_unary)
-{
- *is_unary = 0;
- switch (op_type)
- {
- case _SLANG_BCST_PLUSEQS:
- case _SLANG_BCST_MINUSEQS:
- case _SLANG_BCST_TIMESEQS:
- case _SLANG_BCST_DIVEQS:
- *op = SLANG_PLUS + (op_type - _SLANG_BCST_PLUSEQS);
- break;
-
- case _SLANG_BCST_BOREQS:
- *op = SLANG_BOR;
- break;
-
- case _SLANG_BCST_BANDEQS:
- *op = SLANG_BAND;
- break;
-
- case _SLANG_BCST_POST_MINUSMINUS:
- case _SLANG_BCST_MINUSMINUS:
- *op = SLANG_MINUS;
- *is_unary = 1;
- break;
-
- case _SLANG_BCST_PLUSPLUS:
- case _SLANG_BCST_POST_PLUSPLUS:
- *op = SLANG_PLUS;
- *is_unary = 1;
- break;
-
- default:
- SLang_verror (SL_NOT_IMPLEMENTED, "Assignment operator not implemented");
- return -1;
- }
- return 0;
-}
-
-static int
-perform_lvalue_operation (unsigned char op_type, SLang_Object_Type *obja_ptr)
-{
- switch (op_type)
- {
- case _SLANG_BCST_ASSIGN:
- break;
-
- /* The order of these is assumed to match the binary operators
- * defined in slang.h
- */
- case _SLANG_BCST_PLUSEQS:
- case _SLANG_BCST_MINUSEQS:
- case _SLANG_BCST_TIMESEQS:
- case _SLANG_BCST_DIVEQS:
- if (-1 == do_assignment_binary (SLANG_PLUS + (op_type - _SLANG_BCST_PLUSEQS), obja_ptr))
- return -1;
- break;
-
- case _SLANG_BCST_BOREQS:
- if (-1 == do_assignment_binary (SLANG_BOR, obja_ptr))
- return -1;
- break;
-
- case _SLANG_BCST_BANDEQS:
- if (-1 == do_assignment_binary (SLANG_BAND, obja_ptr))
- return -1;
- break;
-
- case _SLANG_BCST_PLUSPLUS:
- case _SLANG_BCST_POST_PLUSPLUS:
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (obja_ptr->data_type == SLANG_INT_TYPE)
- return SLclass_push_int_obj (SLANG_INT_TYPE, obja_ptr->v.int_val + 1);
-#endif
- if (-1 == do_unary_op (SLANG_PLUSPLUS, obja_ptr, _SLANG_BC_UNARY))
- return -1;
- break;
-
- case _SLANG_BCST_MINUSMINUS:
- case _SLANG_BCST_POST_MINUSMINUS:
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (obja_ptr->data_type == SLANG_INT_TYPE)
- return SLclass_push_int_obj (SLANG_INT_TYPE, obja_ptr->v.int_val - 1);
-#endif
- if (-1 == do_unary_op (SLANG_MINUSMINUS, obja_ptr, _SLANG_BC_UNARY))
- return -1;
- break;
-
- default:
- SLang_Error = SL_INTERNAL_ERROR;
- return -1;
- }
- return 0;
-}
-
-_INLINE_
-static int
-set_lvalue_obj (unsigned char op_type, SLang_Object_Type *obja_ptr)
-{
- if (op_type != _SLANG_BCST_ASSIGN)
- {
- if (-1 == perform_lvalue_operation (op_type, obja_ptr))
- return -1;
- }
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [obja_ptr->data_type])
-#endif
- SLang_free_object (obja_ptr);
-
- return SLang_pop(obja_ptr);
-}
-
-static int
-set_struct_lvalue (SLBlock_Type *bc_blk)
-{
- int type;
- SLang_Class_Type *cl;
- char *name;
- int op;
-
- if (-1 == (type = SLang_peek_at_stack ()))
- return -1;
-
- cl = _SLclass_get_class (type);
- if ((cl->cl_sput == NULL)
- || (cl->cl_sget == NULL))
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "%s does not support structure access",
- cl->cl_name);
- SLdo_pop_n (2); /* object plus what was to be assigned */
- return -1;
- }
- name = bc_blk->b.s_blk;
- op = bc_blk->bc_sub_type;
-
- if (op != _SLANG_BCST_ASSIGN)
- {
- /* We have something like (A.x += b) or (A.x++). In either case,
- * we need A.x.
- */
- SLang_Object_Type obj_A;
- SLang_Object_Type obj;
-
- if (-1 == SLang_pop (&obj_A))
- return -1;
-
- if ((-1 == _SLpush_slang_obj (&obj_A))
- || (-1 == cl->cl_sget ((unsigned char) type, name))
- || (-1 == SLang_pop (&obj)))
- {
- SLang_free_object (&obj_A);
- return -1;
- }
- /* Now the value of A.x is in obj. */
- if (-1 == perform_lvalue_operation (op, &obj))
- {
- SLang_free_object (&obj);
- SLang_free_object (&obj_A);
- return -1;
- }
- SLang_free_object (&obj);
- /* The result of the operation is now on the stack.
- * Perform assignment */
- if (-1 == SLang_push (&obj_A))
- {
- SLang_free_object (&obj_A);
- return -1;
- }
- }
-
- return (*cl->cl_sput) ((unsigned char) type, name);
-}
-
-static int make_unit_object (SLang_Object_Type *a, SLang_Object_Type *u)
-{
- unsigned char type;
-
- type = a->data_type;
- if (type == SLANG_ARRAY_TYPE)
- type = a->v.array_val->data_type;
-
- u->data_type = type;
- switch (type)
- {
- case SLANG_UCHAR_TYPE:
- case SLANG_CHAR_TYPE:
- u->v.char_val = 1;
- break;
-
- case SLANG_SHORT_TYPE:
- case SLANG_USHORT_TYPE:
- u->v.short_val = 1;
- break;
-
- case SLANG_LONG_TYPE:
- case SLANG_ULONG_TYPE:
- u->v.long_val = 1;
- break;
-
-#if SLANG_HAS_FLOAT
- case SLANG_FLOAT_TYPE:
- u->v.float_val = 1;
- break;
-
- case SLANG_COMPLEX_TYPE:
- u->data_type = SLANG_DOUBLE_TYPE;
- case SLANG_DOUBLE_TYPE:
- u->v.double_val = 1;
- break;
-#endif
- default:
- u->data_type = SLANG_INT_TYPE;
- u->v.int_val = 1;
- }
- return 0;
-}
-
-
-/* We want to convert 'A[i] op X' to 'A[i] = A[i] op X'. The code that
- * has been generated is: X __args i A __aput-op
- * where __aput-op represents this function. We need to generate:
- * __args i A __eargs __aget X op __args i A __eargs __aput
- * Here, __eargs implies a call to do_bc_call_direct_frame with either
- * the aput or aget function. In addition, __args represents a call to
- * SLang_start_arg_list. Of course, i represents a set of indices.
- *
- * Note: If op is an unary operation (e.g., ++ or --), then X will not
- * b present an will have to be taken to be 1.
- *
- * Implementation note: For efficiency, calls to setup the frame, start
- * arg list will be omitted and SLang_Num_Function_Args will be set.
- * This is ugly but the alternative is much less efficient rendering these
- * assignment operators useless. So, the plan is to roll the stack to get X,
- * then duplicate the next N values, call __aget followed by op X, finally
- * calling __aput. Hence, the sequence is:
- *
- * start: X i .. j A
- * dupN: X i .. j A i .. j A
- * __aget: X i .. j A Y
- * roll: i .. j A Y X
- * op: i .. j A Z
- * roll: Z i .. j A
- * __aput:
- */
-static int
-set_array_lvalue (int op)
-{
- SLang_Object_Type x, y;
- int num_args, is_unary;
-
- if (-1 == map_assignment_op_to_binary (op, &op, &is_unary))
- return -1;
-
- /* Grab the indices and the array. Do not start a new frame. */
- if (-1 == SLang_end_arg_list ())
- return -1;
- num_args = Next_Function_Num_Args;
- Next_Function_Num_Args = 0;
-
- if (-1 == SLdup_n (num_args))
- return -1;
-
- SLang_Num_Function_Args = num_args;
- if (-1 == _SLarray_aget ())
- return -1;
-
- if (-1 == SLang_pop (&y))
- return -1;
-
- if (is_unary == 0)
- {
- if ((-1 == SLroll_stack (-(num_args + 1)))
- || (-1 == SLang_pop (&x)))
- {
- SLang_free_object (&y);
- return -1;
- }
- }
- else if (-1 == make_unit_object (&y, &x))
- {
- SLang_free_object (&y);
- return -1;
- }
-
- if (-1 == do_binary_ab (op, &y, &x))
- {
- SLang_free_object (&y);
- SLang_free_object (&x);
- return -1;
- }
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [y.data_type])
-#endif
- SLang_free_object (&y);
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [x.data_type])
-#endif
- SLang_free_object (&x);
-
- if (-1 == SLroll_stack (num_args + 1))
- return -1;
-
- SLang_Num_Function_Args = num_args;
- return _SLarray_aput ();
-}
-
-
-static int
-set_intrin_lvalue (SLBlock_Type *bc_blk)
-{
- unsigned char op_type;
- SLang_Object_Type obja;
- SLang_Class_Type *cl;
- SLang_Intrin_Var_Type *ivar;
- VOID_STAR intrinsic_addr;
- unsigned char intrinsic_type;
-
- ivar = bc_blk->b.nt_ivar_blk;
-
- intrinsic_type = ivar->type;
- intrinsic_addr = ivar->addr;
-
- op_type = bc_blk->bc_sub_type;
-
- cl = _SLclass_get_class (intrinsic_type);
-
- if (op_type != _SLANG_BCST_ASSIGN)
- {
- /* We want to get the current value into obja. This is the
- * easiest way.
- */
- if ((-1 == (*cl->cl_push) (intrinsic_type, intrinsic_addr))
- || (-1 == SLang_pop (&obja)))
- return -1;
-
- (void) perform_lvalue_operation (op_type, &obja);
- SLang_free_object (&obja);
-
- if (SLang_Error)
- return -1;
- }
-
- return (*cl->cl_pop) (intrinsic_type, intrinsic_addr);
-}
-
-int _SLang_deref_assign (SLang_Ref_Type *ref)
-{
- SLang_Object_Type *objp;
- SLang_Name_Type *nt;
- SLBlock_Type blk;
-
- if (ref->is_global == 0)
- {
- objp = ref->v.local_obj;
- if (objp > Local_Variable_Frame)
- {
- SLang_verror (SL_UNDEFINED_NAME, "Local variable reference is out of scope");
- return -1;
- }
- return set_lvalue_obj (_SLANG_BCST_ASSIGN, objp);
- }
-
- nt = ref->v.nt;
- switch (nt->name_type)
- {
- case SLANG_GVARIABLE:
- case SLANG_PVARIABLE:
- if (-1 == set_lvalue_obj (_SLANG_BCST_ASSIGN,
- &((SLang_Global_Var_Type *)nt)->obj))
- {
- do_name_type_error (nt);
- return -1;
- }
- break;
-
- case SLANG_IVARIABLE:
- blk.b.nt_blk = nt;
- blk.bc_sub_type = _SLANG_BCST_ASSIGN;
- if (-1 == set_intrin_lvalue (&blk))
- {
- do_name_type_error (nt);
- return -1;
- }
- break;
-
- case SLANG_LVARIABLE:
- SLang_Error = SL_INTERNAL_ERROR;
- /* set_intrin_lvalue (&blk); */
- return -1;
-
- case SLANG_RVARIABLE:
- default:
- SLang_verror (SL_READONLY_ERROR, "deref assignment to %s not allowed", nt->name);
- return -1;
- }
-
- return 0;
-}
-
-static void set_deref_lvalue (SLBlock_Type *bc_blk)
-{
- SLang_Object_Type *objp;
- SLang_Ref_Type *ref;
-
- switch (bc_blk->bc_sub_type)
- {
- case SLANG_LVARIABLE:
- objp = (Local_Variable_Frame - bc_blk->b.i_blk);
- break;
- case SLANG_GVARIABLE:
- case SLANG_PVARIABLE:
- objp = &bc_blk->b.nt_gvar_blk->obj;
- break;
- default:
- SLang_Error = SL_INTERNAL_ERROR;
- return;
- }
-
- if (-1 == _SLpush_slang_obj (objp))
- return;
-
- if (-1 == SLang_pop_ref (&ref))
- return;
- (void) _SLang_deref_assign (ref);
- SLang_free_ref (ref);
-}
-
-static int push_struct_field (char *name)
-{
- int type;
- SLang_Class_Type *cl;
-
- if (-1 == (type = SLang_peek_at_stack ()))
- return -1;
-
- cl = _SLclass_get_class ((unsigned char) type);
- if (cl->cl_sget == NULL)
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "%s does not permit structure access",
- cl->cl_name);
- SLdo_pop_n (2);
- return -1;
- }
-
- return (*cl->cl_sget) ((unsigned char) type, name);
-}
-
-static void trace_dump (char *format, char *name, SLang_Object_Type *objs, int n, int dir)
-{
- unsigned int len;
- char prefix [52];
-
- len = Trace_Mode - 1;
- if (len + 2 >= sizeof (prefix))
- len = sizeof (prefix) - 2;
-
- SLMEMSET (prefix, ' ', len);
- prefix[len] = 0;
-
- call_dump_routine (prefix);
- call_dump_routine (format, name, n);
-
- if (n > 0)
- {
- prefix[len] = ' ';
- len++;
- prefix[len] = 0;
-
- _SLdump_objects (prefix, objs, n, dir);
- }
-}
-
-/* Pop a data item from the stack and return a pointer to it.
- * Strings are not freed from stack so use another routine to do it.
- */
-static VOID_STAR pop_pointer (SLang_Object_Type *obj, unsigned char type)
-{
-#ifndef _SLANG_OPTIMIZE_FOR_SPEED
- SLang_Class_Type *cl;
-#endif
-
- SLang_Array_Type *at;
-
- /* Arrays are special. Allow scalars to automatically convert to arrays.
- */
- if (type == SLANG_ARRAY_TYPE)
- {
- if (-1 == SLang_pop_array (&at, 1))
- return NULL;
- obj->data_type = SLANG_ARRAY_TYPE;
- return obj->v.ptr_val = (VOID_STAR) at;
- }
-
- if (type == 0)
- {
- /* This happens when an intrinsic is declared without any information
- * regarding parameter types.
- */
- if (-1 == SLang_pop (obj))
- return NULL;
- type = obj->data_type;
- }
- else if (-1 == _SLang_pop_object_of_type (type, obj, 0))
- return NULL;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- type = _SLclass_Class_Type [type];
-#else
- type = _SLclass_get_class (type)->cl_class_type;
-#endif
-
- if (type == SLANG_CLASS_TYPE_SCALAR)
- return (VOID_STAR) &obj->v;
- else if (type == SLANG_CLASS_TYPE_MMT)
- return SLang_object_from_mmt (obj->v.ref);
- else
- return obj->v.ptr_val;
-}
-
-/* This is ugly. Does anyone have a advice for a cleaner way of doing
- * this??
- */
-typedef void (*VF0_Type)(void);
-typedef void (*VF1_Type)(VOID_STAR);
-typedef void (*VF2_Type)(VOID_STAR, VOID_STAR);
-typedef void (*VF3_Type)(VOID_STAR, VOID_STAR, VOID_STAR);
-typedef void (*VF4_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef void (*VF5_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef void (*VF6_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef void (*VF7_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef long (*LF0_Type)(void);
-typedef long (*LF1_Type)(VOID_STAR);
-typedef long (*LF2_Type)(VOID_STAR, VOID_STAR);
-typedef long (*LF3_Type)(VOID_STAR, VOID_STAR, VOID_STAR);
-typedef long (*LF4_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef long (*LF5_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef long (*LF6_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef long (*LF7_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-#if SLANG_HAS_FLOAT
-typedef double (*FF0_Type)(void);
-typedef double (*FF1_Type)(VOID_STAR);
-typedef double (*FF2_Type)(VOID_STAR, VOID_STAR);
-typedef double (*FF3_Type)(VOID_STAR, VOID_STAR, VOID_STAR);
-typedef double (*FF4_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef double (*FF5_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef double (*FF6_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-typedef double (*FF7_Type)(VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR, VOID_STAR);
-#endif
-
-static int execute_intrinsic_fun (SLang_Intrin_Fun_Type *objf)
-{
-#if SLANG_HAS_FLOAT
- double xf;
-#endif
- VOID_STAR p[SLANG_MAX_INTRIN_ARGS];
- SLang_Object_Type objs[SLANG_MAX_INTRIN_ARGS];
- long ret;
- unsigned char type;
- unsigned int argc;
- unsigned int i;
- FVOID_STAR fptr;
- unsigned char *arg_types;
- int stk_depth;
-
- fptr = objf->i_fun;
- argc = objf->num_args;
- type = objf->return_type;
- arg_types = objf->arg_types;
-
- if (argc > SLANG_MAX_INTRIN_ARGS)
- {
- SLang_verror(SL_APPLICATION_ERROR,
- "Intrinsic function %s requires too many parameters", objf->name);
- return -1;
- }
-
- if (-1 == _SL_increment_frame_pointer ())
- return -1;
-
- stk_depth = -1;
- if (Trace_Mode && (_SLang_Trace > 0))
- {
- int nargs;
-
- stk_depth = _SLstack_depth ();
-
- nargs = SLang_Num_Function_Args;
- if (nargs == 0)
- nargs = (int)argc;
-
- stk_depth -= nargs;
-
- if (stk_depth >= 0)
- trace_dump (">>%s (%d args)\n",
- objf->name,
- _SLStack_Pointer - nargs,
- nargs,
- 1);
- }
-
- i = argc;
- while (i != 0)
- {
- i--;
- if (NULL == (p[i] = pop_pointer (objs + i, arg_types[i])))
- {
- i++;
- goto free_and_return;
- }
- }
-
- ret = 0;
-#if SLANG_HAS_FLOAT
- xf = 0.0;
-#endif
-
- switch (argc)
- {
- case 0:
- if (type == SLANG_VOID_TYPE) ((VF0_Type) fptr) ();
-#if SLANG_HAS_FLOAT
- else if (type == SLANG_DOUBLE_TYPE) xf = ((FF0_Type) fptr)();
-#endif
- else ret = ((LF0_Type) fptr)();
- break;
-
- case 1:
- if (type == SLANG_VOID_TYPE) ((VF1_Type) fptr)(p[0]);
-#if SLANG_HAS_FLOAT
- else if (type == SLANG_DOUBLE_TYPE) xf = ((FF1_Type) fptr)(p[0]);
-#endif
- else ret = ((LF1_Type) fptr)(p[0]);
- break;
-
- case 2:
- if (type == SLANG_VOID_TYPE) ((VF2_Type) fptr)(p[0], p[1]);
-#if SLANG_HAS_FLOAT
- else if (type == SLANG_DOUBLE_TYPE) xf = ((FF2_Type) fptr)(p[0], p[1]);
-#endif
- else ret = ((LF2_Type) fptr)(p[0], p[1]);
- break;
-
- case 3:
- if (type == SLANG_VOID_TYPE) ((VF3_Type) fptr)(p[0], p[1], p[2]);
-#if SLANG_HAS_FLOAT
- else if (type == SLANG_DOUBLE_TYPE) xf = ((FF3_Type) fptr)(p[0], p[1], p[2]);
-#endif
- else ret = ((LF3_Type) fptr)(p[0], p[1], p[2]);
- break;
-
- case 4:
- if (type == SLANG_VOID_TYPE) ((VF4_Type) fptr)(p[0], p[1], p[2], p[3]);
-#if SLANG_HAS_FLOAT
- else if (type == SLANG_DOUBLE_TYPE) xf = ((FF4_Type) fptr)(p[0], p[1], p[2], p[3]);
-#endif
- else ret = ((LF4_Type) fptr)(p[0], p[1], p[2], p[3]);
- break;
-
- case 5:
- if (type == SLANG_VOID_TYPE) ((VF5_Type) fptr)(p[0], p[1], p[2], p[3], p[4]);
-#if SLANG_HAS_FLOAT
- else if (type == SLANG_DOUBLE_TYPE) xf = ((FF5_Type) fptr)(p[0], p[1], p[2], p[3], p[4]);
-#endif
- else ret = ((LF5_Type) fptr)(p[0], p[1], p[2], p[3], p[4]);
- break;
-
- case 6:
- if (type == SLANG_VOID_TYPE) ((VF6_Type) fptr)(p[0], p[1], p[2], p[3], p[4], p[5]);
-#if SLANG_HAS_FLOAT
- else if (type == SLANG_DOUBLE_TYPE) xf = ((FF6_Type) fptr)(p[0], p[1], p[2], p[3], p[4], p[5]);
-#endif
- else ret = ((LF6_Type) fptr)(p[0], p[1], p[2], p[3], p[4], p[5]);
- break;
-
- case 7:
- if (type == SLANG_VOID_TYPE) ((VF7_Type) fptr)(p[0], p[1], p[2], p[3], p[4], p[5], p[6]);
-#if SLANG_HAS_FLOAT
- else if (type == SLANG_DOUBLE_TYPE) xf = ((FF7_Type) fptr)(p[0], p[1], p[2], p[3], p[4], p[5], p[6]);
-#endif
- else ret = ((LF7_Type) fptr)(p[0], p[1], p[2], p[3], p[4], p[5], p[6]);
- break;
- }
-
- switch (type)
- {
- case SLANG_VOID_TYPE:
- break;
-
-#if SLANG_HAS_FLOAT
- case SLANG_DOUBLE_TYPE:
- (void) SLang_push_double (xf);
- break;
-#endif
- case SLANG_UINT_TYPE:
- case SLANG_INT_TYPE: (void) SLclass_push_int_obj (type, (int) ret);
- break;
-
- case SLANG_CHAR_TYPE:
- case SLANG_UCHAR_TYPE: (void) SLclass_push_char_obj (type, (char) ret);
- break;
-
- case SLANG_SHORT_TYPE:
- case SLANG_USHORT_TYPE: (void) SLclass_push_short_obj (type, (short) ret);
- break;
-
- case SLANG_LONG_TYPE:
- case SLANG_ULONG_TYPE: (void) SLclass_push_long_obj (type, ret);
- break;
-
- case SLANG_STRING_TYPE:
- if (NULL == (char *)ret)
- {
- if (SLang_Error == 0) SLang_Error = SL_INTRINSIC_ERROR;
- }
- else (void) SLang_push_string ((char *)ret);
- break;
-
- default:
- SLang_verror (SL_NOT_IMPLEMENTED,
- "Support for intrinsic functions returning %s is not provided",
- SLclass_get_datatype_name (type));
- }
-
- if (stk_depth >= 0)
- {
- stk_depth = _SLstack_depth () - stk_depth;
-
- trace_dump ("<<%s (returning %d values)\n",
- objf->name,
- _SLStack_Pointer - stk_depth,
- stk_depth,
- 1);
- }
-
- free_and_return:
- while (i < argc)
- {
- SLang_free_object (objs + i);
- i++;
- }
-
- return _SL_decrement_frame_pointer ();
-}
-
-static int inner_interp(register SLBlock_Type *);
-
-/* Switch_Obj_Ptr points to the NEXT available free switch object */
-static SLang_Object_Type Switch_Objects[SLANG_MAX_NESTED_SWITCH];
-static SLang_Object_Type *Switch_Obj_Ptr = Switch_Objects;
-static SLang_Object_Type *Switch_Obj_Max = Switch_Objects + SLANG_MAX_NESTED_SWITCH;
-
-static void
-lang_do_loops (unsigned char stype, SLBlock_Type *block, unsigned int num_blocks)
-{
- int i, ctrl;
- int first, last;
- SLBlock_Type *blks[4];
- char *loop_name;
- SLang_Foreach_Context_Type *foreach_context;
- SLang_Class_Type *cl;
- int type;
- unsigned int j;
-
- j = 0;
- for (i = 0; i < (int) num_blocks; i++)
- {
- if (block[i].bc_main_type != _SLANG_BC_BLOCK)
- {
- if (block[i].bc_main_type == _SLANG_BC_LINE_NUM)
- continue;
-
- SLang_verror (SL_SYNTAX_ERROR, "Bytecode is not a looping block");
- return;
- }
- blks[j] = block[i].b.blk;
- j++;
- }
-
- num_blocks = j;
- block = blks[0];
-
- switch (stype)
- {
- case _SLANG_BCST_FOREACH:
- loop_name = "foreach";
- if (num_blocks != 1)
- goto wrong_num_blocks_error;
-
- /* We should find Next_Function_Num_Args + 1 items on the stack.
- * The first Next_Function_Num_Args items represent the arguments to
- * to USING. The last item (deepest in stack) is the object to loop
- * over. So, roll the stack up and grab it.
- */
- if ((-1 == SLroll_stack (-(Next_Function_Num_Args + 1)))
- || (-1 == (type = SLang_peek_at_stack ())))
- goto return_error;
-
- cl = _SLclass_get_class ((unsigned char) type);
- if ((cl->cl_foreach == NULL)
- || (cl->cl_foreach_open == NULL)
- || (cl->cl_foreach_close == NULL))
- {
- SLang_verror (SL_NOT_IMPLEMENTED, "%s does not permit foreach", cl->cl_name);
- SLdo_pop_n (Next_Function_Num_Args + 1);
- goto return_error;
- }
-
- if (NULL == (foreach_context = (*cl->cl_foreach_open) ((unsigned char)type, Next_Function_Num_Args)))
- goto return_error;
-
- while (1)
- {
- int status;
-
- if (SLang_Error)
- {
- (*cl->cl_foreach_close) ((unsigned char) type, foreach_context);
- goto return_error;
- }
-
- status = (*cl->cl_foreach) ((unsigned char) type, foreach_context);
- if (status <= 0)
- {
- if (status == 0)
- break;
-
- (*cl->cl_foreach_close) ((unsigned char) type, foreach_context);
- goto return_error;
- }
-
- inner_interp (block);
- if (Lang_Break) break;
- Lang_Break_Condition = /* Lang_Continue = */ 0;
- }
- (*cl->cl_foreach_close) ((unsigned char) type, foreach_context);
- break;
-
- case _SLANG_BCST_WHILE:
- loop_name = "while";
-
- if (num_blocks != 2)
- goto wrong_num_blocks_error;
-
- type = blks[1]->bc_main_type;
- while (1)
- {
- if (SLang_Error)
- goto return_error;
-
- inner_interp (block);
- if (Lang_Break) break;
-
- if (-1 == pop_ctrl_integer (&ctrl))
- goto return_error;
-
- if (ctrl == 0) break;
-
- if (type)
- {
- inner_interp (blks[1]);
- if (Lang_Break) break;
- Lang_Break_Condition = /* Lang_Continue = */ 0;
- }
- }
- break;
-
- case _SLANG_BCST_DOWHILE:
- loop_name = "do...while";
-
- if (num_blocks != 2)
- goto wrong_num_blocks_error;
-
- while (1)
- {
- if (SLang_Error)
- goto return_error;
-
- Lang_Break_Condition = /* Lang_Continue = */ 0;
- inner_interp (block);
- if (Lang_Break) break;
- Lang_Break_Condition = /* Lang_Continue = */ 0;
- inner_interp (blks[1]);
- if (-1 == pop_ctrl_integer (&ctrl))
- goto return_error;
-
- if (ctrl == 0) break;
- }
- break;
-
- case _SLANG_BCST_CFOR:
- loop_name = "for";
-
- /* we need 4 blocks: first 3 control, the last is code */
- if (num_blocks != 4) goto wrong_num_blocks_error;
-
- inner_interp (block);
- while (1)
- {
- if (SLang_Error)
- goto return_error;
-
- inner_interp(blks[1]); /* test */
- if (-1 == pop_ctrl_integer (&ctrl))
- goto return_error;
-
- if (ctrl == 0) break;
- inner_interp(blks[3]); /* code */
- if (Lang_Break) break;
- inner_interp(blks[2]); /* bump */
- Lang_Break_Condition = /* Lang_Continue = */ 0;
- }
- break;
-
- case _SLANG_BCST_FOR:
- loop_name = "_for";
-
- if (num_blocks != 1)
- goto wrong_num_blocks_error;
-
- /* 3 elements: first, last, step */
- if ((-1 == SLang_pop_integer (&ctrl))
- || (-1 == SLang_pop_integer (&last))
- || (-1 == SLang_pop_integer (&first)))
- goto return_error;
-
- i = first;
- while (1)
- {
- /* It is ugly to have this test here but I do not know of a
- * simple way to do this without using two while loops.
- */
- if (ctrl >= 0)
- {
- if (i > last) break;
- }
- else if (i < last) break;
-
- if (SLang_Error) goto return_error;
-
- SLclass_push_int_obj (SLANG_INT_TYPE, i);
- inner_interp (block);
- if (Lang_Break) break;
- Lang_Break_Condition = /* Lang_Continue = */ 0;
-
- i += ctrl;
- }
- break;
-
- case _SLANG_BCST_LOOP:
- loop_name = "loop";
- if (num_blocks != 1)
- goto wrong_num_blocks_error;
-
- if (-1 == SLang_pop_integer (&ctrl))
- goto return_error;
- while (ctrl > 0)
- {
- ctrl--;
-
- if (SLang_Error)
- goto return_error;
-
- inner_interp (block);
- if (Lang_Break) break;
- Lang_Break_Condition = /* Lang_Continue = */ 0;
- }
- break;
-
- case _SLANG_BCST_FOREVER:
- loop_name = "forever";
-
- if (num_blocks != 1)
- goto wrong_num_blocks_error;
-
- while (1)
- {
- if (SLang_Error)
- goto return_error;
-
- inner_interp (block);
- if (Lang_Break) break;
- Lang_Break_Condition = /* Lang_Continue = */ 0;
- }
- break;
-
- default: SLang_verror(SL_INTERNAL_ERROR, "Unknown loop type");
- return;
- }
- Lang_Break = /* Lang_Continue = */ 0;
- Lang_Break_Condition = Lang_Return;
- return;
-
- wrong_num_blocks_error:
- SLang_verror (SL_SYNTAX_ERROR, "Wrong number of blocks for '%s' construct", loop_name);
-
- /* drop */
- return_error:
- do_traceback (loop_name, 0, NULL);
-}
-
-static void lang_do_and_orelse (unsigned char stype, SLBlock_Type *addr, SLBlock_Type *addr_max)
-{
- int test = 0;
- int is_or;
-
- is_or = (stype == _SLANG_BCST_ORELSE);
-
- while (addr <= addr_max)
- {
- if (addr->bc_main_type == _SLANG_BC_LINE_NUM)
- {
- addr++;
- continue;
- }
-
- inner_interp (addr->b.blk);
- if (SLang_Error
- || Lang_Break_Condition
- || (-1 == pop_ctrl_integer (&test)))
- return;
-
- if (is_or == (test != 0))
- break;
-
- /* if (((stype == _SLANG_BCST_ANDELSE) && (test == 0))
- * || ((stype == _SLANG_BCST_ORELSE) && test))
- * break;
- */
-
- addr++;
- }
- SLclass_push_int_obj (SLANG_INT_TYPE, test);
-}
-
-static void do_else_if (SLBlock_Type *zero_block, SLBlock_Type *non_zero_block)
-{
- int test;
-
- if (-1 == pop_ctrl_integer (&test))
- return;
-
- if (test == 0)
- non_zero_block = zero_block;
-
- if (non_zero_block != NULL)
- inner_interp (non_zero_block->b.blk);
-}
-
-int _SLang_trace_fun (char *f)
-{
- if (NULL == (f = SLang_create_slstring (f)))
- return -1;
-
- SLang_free_slstring (Trace_Function);
- Trace_Function = f;
- _SLang_Trace = 1;
- return 0;
-}
-
-int _SLdump_objects (char *prefix, SLang_Object_Type *x, unsigned int n, int dir)
-{
- char *s;
- SLang_Class_Type *cl;
-
- while (n)
- {
- cl = _SLclass_get_class (x->data_type);
-
- if (NULL == (s = _SLstringize_object (x)))
- s = "??";
-
- call_dump_routine ("%s[%s]:%s\n", prefix, cl->cl_name, s);
-
- SLang_free_slstring (s);
-
- x += dir;
- n--;
- }
- return 0;
-}
-
-static SLBlock_Type *Exit_Block_Ptr;
-static SLBlock_Type *Global_User_Block[5];
-static SLBlock_Type **User_Block_Ptr = Global_User_Block;
-char *_SLang_Current_Function_Name = NULL;
-
-static int execute_slang_fun (_SLang_Function_Type *fun)
-{
- register unsigned int i;
- register SLang_Object_Type *frame, *lvf;
- register unsigned int n_locals;
- _SLBlock_Header_Type *header;
- /* SLBlock_Type *val; */
- SLBlock_Type *exit_block_save;
- SLBlock_Type **user_block_save;
- SLBlock_Type *user_blocks[5];
- char *save_fname;
-
- exit_block_save = Exit_Block_Ptr;
- user_block_save = User_Block_Ptr;
- User_Block_Ptr = user_blocks;
- *(user_blocks) = NULL;
- *(user_blocks + 1) = NULL;
- *(user_blocks + 2) = NULL;
- *(user_blocks + 3) = NULL;
- *(user_blocks + 4) = NULL;
-
- Exit_Block_Ptr = NULL;
-
- save_fname = _SLang_Current_Function_Name;
- _SLang_Current_Function_Name = fun->name;
-
- _SL_increment_frame_pointer ();
-
- /* need loaded? */
- if (fun->nlocals == AUTOLOAD_NUM_LOCALS)
- {
- header = NULL;
- if (-1 == SLang_load_file(fun->v.autoload_filename))
- goto the_return;
-
- if (fun->nlocals == AUTOLOAD_NUM_LOCALS)
- {
- SLang_verror (SL_UNDEFINED_NAME, "%s: Function did not autoload",
- _SLang_Current_Function_Name);
- goto the_return;
- }
- }
-
- n_locals = fun->nlocals;
-
- /* let the error propagate through since it will do no harm
- and allow us to restore stack. */
-
- /* set new stack frame */
- lvf = frame = Local_Variable_Frame;
- i = n_locals;
- if ((lvf + i) > Local_Variable_Stack + SLANG_MAX_LOCAL_STACK)
- {
- SLang_verror(SL_STACK_OVERFLOW, "%s: Local Variable Stack Overflow",
- _SLang_Current_Function_Name);
- goto the_return;
- }
-
- /* Make sure we do not allow this header to get destroyed by something
- * like: define crash () { eval ("define crash ();") }
- */
- header = fun->v.header;
- header->num_refs++;
-
- while (i--)
- {
- lvf++;
- lvf->data_type = SLANG_UNDEFINED_TYPE;
- }
- Local_Variable_Frame = lvf;
-
- /* read values of function arguments */
- i = fun->nargs;
- while (i > 0)
- {
- i--;
- (void) SLang_pop (Local_Variable_Frame - i);
- }
-
- if (SLang_Enter_Function != NULL) (*SLang_Enter_Function)(_SLang_Current_Function_Name);
-
- if (_SLang_Trace)
- {
- int stack_depth;
-
- stack_depth = _SLstack_depth ();
-
- if ((Trace_Function != NULL)
- && (0 == strcmp (Trace_Function, _SLang_Current_Function_Name))
- && (Trace_Mode == 0))
- Trace_Mode = 1;
-
- if (Trace_Mode)
- {
- /* The local variable frame grows backwards */
- trace_dump (">>%s (%d args)\n",
- _SLang_Current_Function_Name,
- Local_Variable_Frame,
- (int) fun->nargs,
- -1);
- Trace_Mode++;
- }
-
- inner_interp (header->body);
- Lang_Break_Condition = Lang_Return = Lang_Break = 0;
- if (Exit_Block_Ptr != NULL) inner_interp(Exit_Block_Ptr);
-
- if (Trace_Mode)
- {
- Trace_Mode--;
- stack_depth = _SLstack_depth () - stack_depth;
-
- trace_dump ("<<%s (returning %d values)\n",
- _SLang_Current_Function_Name,
- _SLStack_Pointer - stack_depth,
- stack_depth,
- 1);
-
- if (Trace_Mode == 1)
- Trace_Mode = 0;
- }
- }
- else
- {
- inner_interp (header->body);
- Lang_Break_Condition = Lang_Return = Lang_Break = 0;
- if (Exit_Block_Ptr != NULL) inner_interp(Exit_Block_Ptr);
- }
-
- if (SLang_Exit_Function != NULL) (*SLang_Exit_Function)(_SLang_Current_Function_Name);
-
- if (SLang_Error)
- do_traceback(fun->name, n_locals,
-#if _SLANG_HAS_DEBUG_CODE
- fun->file
-#else
- NULL
-#endif
- );
-
- /* free local variables.... */
- lvf = Local_Variable_Frame;
- while (lvf > frame)
- {
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR != _SLclass_Class_Type [lvf->data_type])
-#endif
- SLang_free_object (lvf);
- lvf--;
- }
- Local_Variable_Frame = lvf;
-
- if (header->num_refs == 1)
- free_function_header (header);
- else
- header->num_refs--;
-
- the_return:
-
- Lang_Break_Condition = Lang_Return = Lang_Break = 0;
- Exit_Block_Ptr = exit_block_save;
- User_Block_Ptr = user_block_save;
- _SLang_Current_Function_Name = save_fname;
- _SL_decrement_frame_pointer ();
-
- if (SLang_Error)
- return -1;
-
- return 0;
-}
-
-static void do_traceback (char *name, unsigned int locals, char *file)
-{
- char *s;
- unsigned int i;
- SLang_Object_Type *objp;
- unsigned short stype;
-
- /* FIXME: Priority=low
- * I need to make this configurable!!! That is, let the
- * application decide whether or not a usage error should result in a
- * traceback.
- */
- if (SLang_Error == SL_USAGE_ERROR)
- return;
-
- if (SLang_Traceback == 0)
- return;
-
- call_dump_routine ("S-Lang Traceback: %s\n", name);
- if (SLang_Traceback < 0)
- return;
-
- if (file != NULL)
- call_dump_routine ("File: %s\n", file);
-
- if (locals == 0)
- return;
-
- call_dump_routine (" Local Variables:\n");
-
- for (i = 0; i < locals; i++)
- {
- SLang_Class_Type *cl;
- char *class_name;
-
- objp = Local_Variable_Frame - i;
- stype = objp->data_type;
-
- s = _SLstringize_object (objp);
- cl = _SLclass_get_class (stype);
- class_name = cl->cl_name;
-
- call_dump_routine ("\t$%d: Type: %s,\tValue:\t", i, class_name);
-
- if (s == NULL) call_dump_routine("??\n");
- else
- {
- char *q = "";
-#ifndef HAVE_VSNPRINTF
- char buf[256];
- if (strlen (s) >= sizeof (buf))
- {
- strncpy (buf, s, sizeof(buf));
- s = buf;
- s[sizeof(buf) - 1] = 0;
- }
-#endif
- if (SLANG_STRING_TYPE == stype) q = "\"";
- call_dump_routine ("%s%s%s\n", q, s, q);
- }
- }
-}
-
-static void do_app_unary (SLang_App_Unary_Type *nt)
-{
- if (-1 == do_unary (nt->unary_op, nt->name_type))
- do_traceback (nt->name, 0, NULL);
-}
-
-static int inner_interp_nametype (SLang_Name_Type *nt)
-{
- SLBlock_Type bc_blks[2];
-
- bc_blks[0].b.nt_blk = nt;
- bc_blks[0].bc_main_type = nt->name_type;
- bc_blks[1].bc_main_type = 0;
- return inner_interp(bc_blks);
-}
-
-int _SLang_dereference_ref (SLang_Ref_Type *ref)
-{
- if (ref == NULL)
- {
- SLang_Error = SL_INTERNAL_ERROR;
- return -1;
- }
-
- if (ref->is_global == 0)
- {
- SLang_Object_Type *obj = ref->v.local_obj;
- if (obj > Local_Variable_Frame)
- {
- SLang_verror (SL_UNDEFINED_NAME, "Local variable deref is out of scope");
- return -1;
- }
- return _SLpush_slang_obj (ref->v.local_obj);
- }
-
- (void) inner_interp_nametype (ref->v.nt);
- return 0;
-}
-
-int _SLang_is_ref_initialized (SLang_Ref_Type *ref)
-{
- unsigned char type;
-
- if (ref == NULL)
- {
- SLang_Error = SL_INTERNAL_ERROR;
- return -1;
- }
-
- if (ref->is_global == 0)
- {
- SLang_Object_Type *obj = ref->v.local_obj;
- if (obj > Local_Variable_Frame)
- {
- SLang_verror (SL_UNDEFINED_NAME, "Local variable deref is out of scope");
- return -1;
- }
- type = ref->v.local_obj->data_type;
- }
- else
- {
- SLang_Name_Type *nt = ref->v.nt;
- if ((nt->name_type != SLANG_GVARIABLE)
- && (nt->name_type != SLANG_PVARIABLE))
- return 1;
- type = ((SLang_Global_Var_Type *)nt)->obj.data_type;
- }
- return type != SLANG_UNDEFINED_TYPE;
-}
-
-int _SLang_uninitialize_ref (SLang_Ref_Type *ref)
-{
- SLang_Object_Type *obj;
-
- if (ref == NULL)
- {
- SLang_Error = SL_INTERNAL_ERROR;
- return -1;
- }
-
- if (ref->is_global == 0)
- {
- obj = ref->v.local_obj;
- if (obj > Local_Variable_Frame)
- {
- SLang_verror (SL_UNDEFINED_NAME, "Local variable deref is out of scope");
- return -1;
- }
- obj = ref->v.local_obj;
- }
- else
- {
- SLang_Name_Type *nt = ref->v.nt;
- if ((nt->name_type != SLANG_GVARIABLE)
- && (nt->name_type != SLANG_PVARIABLE))
- return -1;
- obj = &((SLang_Global_Var_Type *)nt)->obj;
- }
- SLang_free_object (obj);
- obj->data_type = SLANG_UNDEFINED_TYPE;
- obj->v.ptr_val = NULL;
- return 0;
-}
-
-void (*SLang_Interrupt)(void);
-static int Last_Error;
-void (*SLang_User_Clear_Error)(void);
-void _SLang_clear_error (void)
-{
- if (Last_Error <= 0)
- {
- Last_Error = 0;
- return;
- }
- Last_Error--;
- if (SLang_User_Clear_Error != NULL) (*SLang_User_Clear_Error)();
-}
-
-int _SLpush_slang_obj (SLang_Object_Type *obj)
-{
- unsigned char subtype;
- SLang_Class_Type *cl;
-
- if (obj == NULL) return SLang_push_null ();
-
- subtype = obj->data_type;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR == _SLclass_Class_Type[subtype])
- return SLang_push (obj);
-#endif
-
- cl = _SLclass_get_class (subtype);
- return (*cl->cl_push) (subtype, (VOID_STAR) &obj->v);
-}
-
-_INLINE_
-static int push_local_variable (int i)
-{
- SLang_Class_Type *cl;
- SLang_Object_Type *obj;
- unsigned char subtype;
-
- obj = Local_Variable_Frame - i;
- subtype = obj->data_type;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR == _SLclass_Class_Type[subtype])
- return SLang_push (obj);
- if (subtype == SLANG_STRING_TYPE)
- return _SLang_dup_and_push_slstring (obj->v.s_val);
-#endif
-
- cl = _SLclass_get_class (subtype);
- return (*cl->cl_push) (subtype, (VOID_STAR) &obj->v);
-}
-
-static int push_intrinsic_variable (SLang_Intrin_Var_Type *ivar)
-{
- SLang_Class_Type *cl;
- unsigned char stype;
-
- stype = ivar->type;
- cl = _SLclass_get_class (stype);
-
- if (-1 == (*cl->cl_push_intrinsic) (stype, ivar->addr))
- {
- do_name_type_error ((SLang_Name_Type *) ivar);
- return -1;
- }
- return 0;
-}
-
-static int dereference_object (void)
-{
- SLang_Object_Type obj;
- SLang_Class_Type *cl;
- unsigned char type;
- int ret;
-
- if (-1 == SLang_pop (&obj))
- return -1;
-
- type = obj.data_type;
-
- cl = _SLclass_get_class (type);
- ret = (*cl->cl_dereference)(type, (VOID_STAR) &obj.v);
-
- SLang_free_object (&obj);
- return ret;
-}
-
-static int case_function (void)
-{
- unsigned char type;
- SLang_Object_Type obj;
- SLang_Object_Type *swobjptr;
-
- swobjptr = Switch_Obj_Ptr - 1;
-
- if ((swobjptr < Switch_Objects)
- || (0 == (type = swobjptr->data_type)))
- {
- SLang_verror (SL_SYNTAX_ERROR, "Misplaced 'case' keyword");
- return -1;
- }
-
- if (-1 == SLang_pop (&obj))
- return -1;
-
- if (obj.data_type != type)
- {
- SLang_Class_Type *a_cl, *b_cl;
-
- a_cl = _SLclass_get_class (obj.data_type);
- b_cl = _SLclass_get_class (type);
-
- if (NULL == _SLclass_get_binary_fun (SLANG_EQ, a_cl, b_cl, &a_cl, 0))
- {
- (void) SLclass_push_int_obj (SLANG_INT_TYPE, 0);
- SLang_free_object (&obj);
- return 0;
- }
- }
-
- (void) do_binary_ab (SLANG_EQ, swobjptr, &obj);
- SLang_free_object (&obj);
- return 0;
-}
-
-static void tmp_variable_function (SLBlock_Type *addr)
-{
- SLang_Object_Type *obj;
-
- switch (addr->bc_sub_type)
- {
- case SLANG_GVARIABLE:
- case SLANG_PVARIABLE:
- obj = &addr->b.nt_gvar_blk->obj;
- break;
-
- case SLANG_LVARIABLE:
- obj = Local_Variable_Frame - addr->b.i_blk;
- break;
-
- default:
- SLang_Error = SL_INTERNAL_ERROR;
- return;
- }
-
- /* There is no need to go through higher level routines since we are
- * not creating or destroying extra copies.
- */
- if (-1 == SLang_push (obj))
- return;
-
- obj->data_type = SLANG_UNDEFINED_TYPE;
- obj->v.ptr_val = NULL;
-}
-
-
-static int
-do_inner_interp_error (SLBlock_Type *err_block,
- SLBlock_Type *addr_start,
- SLBlock_Type *addr)
-{
- int save_err, slerr;
-
- /* Someday I can use the these variable to provide extra information
- * about what went wrong.
- */
- (void) addr_start;
- (void) addr;
-
- if (err_block == NULL)
- goto return_error;
-
- if (SLang_Error < 0) /* errors less than 0 are severe */
- goto return_error;
-
- save_err = Last_Error++;
- slerr = SLang_Error;
- SLang_Error = 0;
- inner_interp (err_block->b.blk);
-
- if (Last_Error <= save_err)
- {
- /* Caught error and cleared it */
- Last_Error = save_err;
- if ((Lang_Break_Condition == 0)
- /* An error may have cleared the error and then caused the
- * function to return. We will allow that but let's not allow
- * 'break' nor 'continue' statements until later.
- */
- || Lang_Return)
- return 0;
-
- /* drop--- either a break or continue was called */
- }
-
- Last_Error = save_err;
- SLang_Error = slerr;
-
- return_error:
-#if _SLANG_HAS_DEBUG_CODE
- while (addr >= addr_start)
- {
- if (addr->bc_main_type == _SLANG_BC_LINE_NUM)
- {
- char buf[256];
- sprintf (buf, "(Error occurred on line %lu)", addr->b.l_blk);
- do_traceback (buf, 0, NULL);
- break;
- }
- /* Special hack for 16 bit systems to prevent pointer wrapping. */
-#if defined(__16_BIT_SYSTEM__)
- if (addr == addr_start)
- break;
-#endif
- addr--;
- }
-#endif
- return -1;
-}
-
-
-#define GATHER_STATISTICS 0
-#if GATHER_STATISTICS
-static unsigned int Bytecodes[0xFFFF];
-
-static void print_stats (void)
-{
- unsigned int i;
- unsigned long total;
- FILE *fp = fopen ("stats.txt", "w");
- if (fp == NULL)
- return;
-
- total = 0;
- for (i = 0; i < 0xFFFF; i++)
- total += Bytecodes[i];
-
- if (total == 0)
- total = 1;
-
- for (i = 0; i < 0xFFFF; i++)
- {
- if (Bytecodes[i])
- fprintf (fp, "0x%04X %9u %e\n", i, Bytecodes[i], Bytecodes[i]/(double) total);
- }
- fclose (fp);
-}
-
-static void add_to_statistics (SLBlock_Type *b)
-{
- unsigned short x, y;
-
- x = b->bc_main_type;
- if (x == 0)
- {
- Bytecodes[0] += 1;
- return;
- }
- b++;
- y = b->bc_main_type;
-
- Bytecodes[(x << 8) | y] += 1;
-}
-
-#endif
-
-/* inner interpreter */
-/* The return value from this function is only meaningful when it is used
- * to process blocks for the switch statement. If it returns 0, the calling
- * routine should pass the next block to it. Otherwise it will
- * return non-zero, with or without error.
- */
-static int inner_interp (SLBlock_Type *addr_start)
-{
- SLBlock_Type *block, *err_block, *addr;
-#if GATHER_STATISTICS
- static int inited = 0;
-
- if (inited == 0)
- {
- (void) SLang_add_cleanup_function (print_stats);
- inited = 1;
- }
-#endif
-
- /* for systems that have no real interrupt facility (e.g. go32 on dos) */
- if (SLang_Interrupt != NULL) (*SLang_Interrupt)();
-
- block = err_block = NULL;
- addr = addr_start;
-
-#if GATHER_STATISTICS
- add_to_statistics (addr);
-#endif
- while (1)
- {
- switch (addr->bc_main_type)
- {
- case 0:
- return 1;
- case _SLANG_BC_LVARIABLE:
- push_local_variable (addr->b.i_blk);
- break;
- case _SLANG_BC_GVARIABLE:
- if (-1 == _SLpush_slang_obj (&addr->b.nt_gvar_blk->obj))
- do_name_type_error (addr->b.nt_blk);
- break;
-
- case _SLANG_BC_IVARIABLE:
- case _SLANG_BC_RVARIABLE:
- push_intrinsic_variable (addr->b.nt_ivar_blk);
- break;
-
- case _SLANG_BC_INTRINSIC:
- execute_intrinsic_fun (addr->b.nt_ifun_blk);
- if (SLang_Error)
- do_traceback(addr->b.nt_ifun_blk->name, 0, NULL);
- break;
-
- case _SLANG_BC_FUNCTION:
- execute_slang_fun (addr->b.nt_fun_blk);
- if (Lang_Break_Condition) goto handle_break_condition;
- break;
-
- case _SLANG_BC_MATH_UNARY:
- case _SLANG_BC_APP_UNARY:
- /* Make sure we treat these like function calls since the
- * parser took sin(x) to be a function call.
- */
- if (0 == _SL_increment_frame_pointer ())
- {
- do_app_unary (addr->b.nt_unary_blk);
- (void) _SL_decrement_frame_pointer ();
- }
- break;
-
- case _SLANG_BC_ICONST:
- SLclass_push_int_obj (SLANG_INT_TYPE, addr->b.iconst_blk->i);
- break;
-
-#if SLANG_HAS_FLOAT
- case _SLANG_BC_DCONST:
- SLang_push_double (addr->b.dconst_blk->d);
- break;
-#endif
-
- case _SLANG_BC_PVARIABLE:
- if (-1 == _SLpush_slang_obj (&addr->b.nt_gvar_blk->obj))
- do_name_type_error (addr->b.nt_blk);
- break;
-
- case _SLANG_BC_PFUNCTION:
- execute_slang_fun (addr->b.nt_fun_blk);
- if (Lang_Break_Condition) goto handle_break_condition;
- break;
-
- case _SLANG_BC_BINARY:
- do_binary (addr->b.i_blk);
- break;
-
- case _SLANG_BC_LITERAL:
-#if !_SLANG_OPTIMIZE_FOR_SPEED
- case _SLANG_BC_LITERAL_INT:
- case _SLANG_BC_LITERAL_STR:
-#endif
- {
- SLang_Class_Type *cl = _SLclass_get_class (addr->bc_sub_type);
- (*cl->cl_push_literal) (addr->bc_sub_type, (VOID_STAR) &addr->b.ptr_blk);
- }
- break;
-#if _SLANG_OPTIMIZE_FOR_SPEED
- case _SLANG_BC_LITERAL_INT:
- SLclass_push_int_obj (addr->bc_sub_type, (int) addr->b.l_blk);
- break;
-
- case _SLANG_BC_LITERAL_STR:
- _SLang_dup_and_push_slstring (addr->b.s_blk);
- break;
-#endif
- case _SLANG_BC_BLOCK:
- switch (addr->bc_sub_type)
- {
- case _SLANG_BCST_ERROR_BLOCK:
- err_block = addr;
- break;
-
- case _SLANG_BCST_EXIT_BLOCK:
- Exit_Block_Ptr = addr->b.blk;
- break;
-
- case _SLANG_BCST_USER_BLOCK0:
- case _SLANG_BCST_USER_BLOCK1:
- case _SLANG_BCST_USER_BLOCK2:
- case _SLANG_BCST_USER_BLOCK3:
- case _SLANG_BCST_USER_BLOCK4:
- User_Block_Ptr[addr->bc_sub_type - _SLANG_BCST_USER_BLOCK0] = addr->b.blk;
- break;
-
- case _SLANG_BCST_LOOP:
- case _SLANG_BCST_WHILE:
- case _SLANG_BCST_FOR:
- case _SLANG_BCST_FOREVER:
- case _SLANG_BCST_CFOR:
- case _SLANG_BCST_DOWHILE:
- case _SLANG_BCST_FOREACH:
- if (block == NULL) block = addr;
- lang_do_loops(addr->bc_sub_type, block, 1 + (unsigned int) (addr - block));
- block = NULL;
- break;
-
- case _SLANG_BCST_IFNOT:
-#if _SLANG_OPTIMIZE_FOR_SPEED
- {
- int i;
-
- if ((0 == pop_ctrl_integer (&i)) && (i == 0))
- inner_interp (addr->b.blk);
- }
-#else
- do_else_if (addr, NULL);
-#endif
- break;
-
- case _SLANG_BCST_IF:
-#if _SLANG_OPTIMIZE_FOR_SPEED
- {
- int i;
-
- if ((0 == pop_ctrl_integer (&i)) && i)
- inner_interp (addr->b.blk);
- }
-#else
- do_else_if (NULL, addr);
-#endif
- break;
-
- case _SLANG_BCST_NOTELSE:
- do_else_if (block, addr);
- block = NULL;
- break;
-
- case _SLANG_BCST_ELSE:
- do_else_if (addr, block);
- block = NULL;
- break;
-
- case _SLANG_BCST_SWITCH:
- if (Switch_Obj_Ptr == Switch_Obj_Max)
- {
- SLang_doerror("switch nesting too deep");
- break;
- }
- (void) SLang_pop (Switch_Obj_Ptr);
- Switch_Obj_Ptr++;
-
- if (block == NULL) block = addr;
- while ((SLang_Error == 0)
- && (block <= addr)
- && (Lang_Break_Condition == 0)
- && (0 == inner_interp (block->b.blk)))
- block++;
- Switch_Obj_Ptr--;
- SLang_free_object (Switch_Obj_Ptr);
- Switch_Obj_Ptr->data_type = 0;
- block = NULL;
- break;
-
- case _SLANG_BCST_ANDELSE:
- case _SLANG_BCST_ORELSE:
- if (block == NULL) block = addr;
- lang_do_and_orelse (addr->bc_sub_type, block, addr);
- block = NULL;
- break;
-
- default:
- if (block == NULL) block = addr;
- break;
- }
- if (Lang_Break_Condition) goto handle_break_condition;
- break;
-
- case _SLANG_BC_RETURN:
- Lang_Break_Condition = Lang_Return = Lang_Break = 1; return 1;
- case _SLANG_BC_BREAK:
- Lang_Break_Condition = Lang_Break = 1; return 1;
- case _SLANG_BC_CONTINUE:
- Lang_Break_Condition = /* Lang_Continue = */ 1; return 1;
-
- case _SLANG_BC_EXCH:
- (void) SLreverse_stack (2);
- break;
-
- case _SLANG_BC_LABEL:
- {
- int test;
- if ((0 == SLang_pop_integer (&test))
- && (test == 0))
- return 0;
- }
- break;
-
- case _SLANG_BC_LOBJPTR:
- (void)_SLang_push_ref (0, (VOID_STAR)(Local_Variable_Frame - addr->b.i_blk));
- break;
-
- case _SLANG_BC_GOBJPTR:
- (void)_SLang_push_ref (1, (VOID_STAR)addr->b.nt_blk);
- break;
-
- case _SLANG_BC_X_ERROR:
- if (err_block != NULL)
- {
- inner_interp(err_block->b.blk);
- if (SLang_Error) err_block = NULL;
- }
- else SLang_verror(SL_SYNTAX_ERROR, "No ERROR_BLOCK");
- if (Lang_Break_Condition) goto handle_break_condition;
- break;
-
- case _SLANG_BC_X_USER0:
- case _SLANG_BC_X_USER1:
- case _SLANG_BC_X_USER2:
- case _SLANG_BC_X_USER3:
- case _SLANG_BC_X_USER4:
- if (User_Block_Ptr[addr->bc_main_type - _SLANG_BC_X_USER0] != NULL)
- {
- inner_interp(User_Block_Ptr[addr->bc_main_type - _SLANG_BC_X_USER0]);
- }
- else SLang_verror(SL_SYNTAX_ERROR, "No block for X_USERBLOCK");
- if (Lang_Break_Condition) goto handle_break_condition;
- break;
-
- case _SLANG_BC_CALL_DIRECT:
- (*addr->b.call_function) ();
- break;
-
- case _SLANG_BC_CALL_DIRECT_FRAME:
- do_bc_call_direct_frame (addr->b.call_function);
- break;
-
- case _SLANG_BC_UNARY:
- do_unary (addr->b.i_blk, _SLANG_BC_UNARY);
- break;
-
- case _SLANG_BC_UNARY_FUNC:
- /* Make sure we treat these like function calls since the
- * parser took abs(x) to be a function call.
- */
- if (0 == _SL_increment_frame_pointer ())
- {
- do_unary (addr->b.i_blk, _SLANG_BC_UNARY);
- (void) _SL_decrement_frame_pointer ();
- }
- break;
-
- case _SLANG_BC_DEREF_ASSIGN:
- set_deref_lvalue (addr);
- break;
- case _SLANG_BC_SET_LOCAL_LVALUE:
- set_lvalue_obj (addr->bc_sub_type, Local_Variable_Frame - addr->b.i_blk);
- break;
- case _SLANG_BC_SET_GLOBAL_LVALUE:
- if (-1 == set_lvalue_obj (addr->bc_sub_type, &addr->b.nt_gvar_blk->obj))
- do_name_type_error (addr->b.nt_blk);
- break;
- case _SLANG_BC_SET_INTRIN_LVALUE:
- set_intrin_lvalue (addr);
- break;
- case _SLANG_BC_SET_STRUCT_LVALUE:
- set_struct_lvalue (addr);
- break;
-
- case _SLANG_BC_FIELD:
- (void) push_struct_field (addr->b.s_blk);
- break;
-
- case _SLANG_BC_SET_ARRAY_LVALUE:
- set_array_lvalue (addr->bc_sub_type);
- break;
-
-#if _SLANG_HAS_DEBUG_CODE
- case _SLANG_BC_LINE_NUM:
- break;
-#endif
-
- case _SLANG_BC_TMP:
- tmp_variable_function (addr);
- break;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- case _SLANG_BC_LVARIABLE_AGET:
- if (0 == push_local_variable (addr->b.i_blk))
- do_bc_call_direct_frame (_SLarray_aget);
- break;
-
- case _SLANG_BC_LVARIABLE_APUT:
- if (0 == push_local_variable (addr->b.i_blk))
- do_bc_call_direct_frame (_SLarray_aput);
- break;
- case _SLANG_BC_INTEGER_PLUS:
- if (0 == SLclass_push_int_obj (addr->bc_sub_type, (int) addr->b.l_blk))
- do_binary (SLANG_PLUS);
- break;
-
- case _SLANG_BC_INTEGER_MINUS:
- if (0 == SLclass_push_int_obj (addr->bc_sub_type, (int) addr->b.l_blk))
- do_binary (SLANG_MINUS);
- break;
-#endif
-#if 0
- case _SLANG_BC_ARG_LVARIABLE:
- (void) SLang_start_arg_list ();
- push_local_variable (addr->b.i_blk);
- break;
-#endif
- case _SLANG_BC_EARG_LVARIABLE:
- push_local_variable (addr->b.i_blk);
- (void) SLang_end_arg_list ();
- break;
-
-#if USE_COMBINED_BYTECODES
- case _SLANG_BC_CALL_DIRECT_INTRINSIC:
- (*addr->b.call_function) ();
- addr++;
- execute_intrinsic_fun (addr->b.nt_ifun_blk);
- if (SLang_Error)
- do_traceback(addr->b.nt_ifun_blk->name, 0, NULL);
- break;
-
- case _SLANG_BC_INTRINSIC_CALL_DIRECT:
- execute_intrinsic_fun (addr->b.nt_ifun_blk);
- if (SLang_Error)
- {
- do_traceback(addr->b.nt_ifun_blk->name, 0, NULL);
- break;
- }
- addr++;
- (*addr->b.call_function) ();
- break;
-
- case _SLANG_BC_CALL_DIRECT_LSTR:
- (*addr->b.call_function) ();
- addr++;
- _SLang_dup_and_push_slstring (addr->b.s_blk);
- break;
-
- case _SLANG_BC_CALL_DIRECT_SLFUN:
- (*addr->b.call_function) ();
- addr++;
- execute_slang_fun (addr->b.nt_fun_blk);
- if (Lang_Break_Condition) goto handle_break_condition;
- break;
-
- case _SLANG_BC_CALL_DIRECT_INTRSTOP:
- (*addr->b.call_function) ();
- addr++;
- /* drop */
- case _SLANG_BC_INTRINSIC_STOP:
- execute_intrinsic_fun (addr->b.nt_ifun_blk);
- if (SLang_Error == 0)
- return 1;
- do_traceback(addr->b.nt_ifun_blk->name, 0, NULL);
- break;
-
- case _SLANG_BC_CALL_DIRECT_EARG_LVAR:
- (*addr->b.call_function) ();
- addr++;
- push_local_variable (addr->b.i_blk);
- (void) SLang_end_arg_list ();
- break;
-
- case _SLANG_BC_CALL_DIRECT_LINT:
- (*addr->b.call_function) ();
- addr++;
- SLclass_push_int_obj (addr->bc_sub_type, (int) addr->b.l_blk);
- break;
-
- case _SLANG_BC_CALL_DIRECT_LVAR:
- (*addr->b.call_function) ();
- addr++;
- push_local_variable (addr->b.i_blk);
- break;
-#endif /* USE_COMBINED_BYTECODES */
-
- default:
- SLang_verror (SL_INTERNAL_ERROR, "Byte-Code 0x%X is not valid", addr->bc_main_type);
- }
-
- /* Someday I plan to add a 'signal' intrinsic function. Then when a
- * signal is caught, a variable will be set to one and that value of
- * that variable will need to be monitored here, e.g.,
- * if (Handle_Signal) handle_signal ();
- * It would be nice to check only one variable instead of Handle_Signal
- * and SLang_Error. Perhaps I should phase out SLang_Error = xxx
- * and used something like: SLang_set_error (code); Then, I could
- * use:
- * if (Handle_Condition)
- * {
- * Handle_Condition = 0;
- * if (SLang_Error) ....
- * else if (Handle_Signal) handle_signal ();
- * else....
- * }
- */
- if (SLang_Error)
- {
- if (-1 == do_inner_interp_error (err_block, addr_start, addr))
- return 1;
- if (SLang_Error)
- return 1;
-
- /* Otherwise, error cleared. Continue onto next bytecode.
- * Someday I need to add something to indicate where the
- * next statement begins since continuing on the next
- * bytecode is not really what is desired.
- */
- if (Lang_Break_Condition) goto handle_break_condition;
- }
- addr++;
- }
-
- handle_break_condition:
- /* Get here if Lang_Break_Condition != 0, which implies that either
- * Lang_Return, Lang_Break, or Lang_Continue is non zero
- */
- if (Lang_Return)
- Lang_Break = 1;
-
- return 1;
-}
-
-/*}}}*/
-
-/* The functions below this point are used to implement the parsed token
- * to byte-compiled code.
- */
-/* static SLang_Name_Type **Static_Hash_Table; */
-
-static SLang_Name_Type **Locals_Hash_Table;
-static int Local_Variable_Number;
-static unsigned int Function_Args_Number;
-int _SLang_Auto_Declare_Globals = 0;
-int (*SLang_Auto_Declare_Var_Hook) (char *);
-
-static SLang_NameSpace_Type *This_Static_NameSpace;
-static SLang_NameSpace_Type *Global_NameSpace;
-
-#if _SLANG_HAS_DEBUG_CODE
-static char *This_Compile_Filename;
-#endif
-static SLBlock_Type SLShort_Blocks[6];
-/* These are initialized in add_table below. I cannot init a Union!! */
-
-static int Lang_Defining_Function;
-static void (*Default_Variable_Mode) (_SLang_Token_Type *);
-static void (*Default_Define_Function) (char *, unsigned long);
-
-static int push_compile_context (char *);
-static int pop_compile_context (void);
-
-typedef struct
-{
- int block_type;
- SLBlock_Type *block; /* beginning of block definition */
- SLBlock_Type *block_ptr; /* current location */
- SLBlock_Type *block_max; /* end of definition */
- SLang_NameSpace_Type *static_namespace;
-}
-Block_Context_Type;
-
-static Block_Context_Type Block_Context_Stack [SLANG_MAX_BLOCK_STACK_LEN];
-static unsigned int Block_Context_Stack_Len;
-
-static SLBlock_Type *Compile_ByteCode_Ptr;
-static SLBlock_Type *This_Compile_Block;
-static SLBlock_Type *This_Compile_Block_Max;
-static int This_Compile_Block_Type;
-#define COMPILE_BLOCK_TYPE_FUNCTION 1
-#define COMPILE_BLOCK_TYPE_BLOCK 2
-#define COMPILE_BLOCK_TYPE_TOP_LEVEL 3
-
-/* If it returns 0, DO NOT FREE p */
-static int lang_free_branch (SLBlock_Type *p)
-{
- /* Note: we look at 0,2,4, since these blocks are 0 terminated */
- if ((p == SLShort_Blocks)
- || (p == SLShort_Blocks + 2)
- || (p == SLShort_Blocks + 4)
- )
- return 0;
-
- while (1)
- {
- SLang_Class_Type *cl;
-
- switch (p->bc_main_type)
- {
- case _SLANG_BC_BLOCK:
- if (lang_free_branch(p->b.blk))
- SLfree((char *)p->b.blk);
- break;
-
- case _SLANG_BC_LITERAL:
- case _SLANG_BC_LITERAL_STR:
- /* No user types should be here. */
- cl = _SLclass_get_class (p->bc_sub_type);
- (*cl->cl_byte_code_destroy) (p->bc_sub_type, (VOID_STAR) &p->b.ptr_blk);
- break;
-
- case _SLANG_BC_FIELD:
- case _SLANG_BC_SET_STRUCT_LVALUE:
- SLang_free_slstring (p->b.s_blk);
- break;
-
- default:
- break;
-
- case 0:
- return 1;
- }
- p++;
- }
-}
-
-static void free_function_header (_SLBlock_Header_Type *h)
-{
- if (h->num_refs > 1)
- {
- h->num_refs--;
- return;
- }
-
- if (h->body != NULL)
- {
- if (lang_free_branch (h->body))
- SLfree ((char *) h->body);
- }
-
- SLfree ((char *) h);
-}
-
-static int push_block_context (int type)
-{
- Block_Context_Type *c;
- unsigned int num;
- SLBlock_Type *b;
-
- if (Block_Context_Stack_Len == SLANG_MAX_BLOCK_STACK_LEN)
- {
- SLang_verror (SL_STACK_OVERFLOW, "Block stack overflow");
- return -1;
- }
-
- num = 5; /* 40 bytes */
- if (NULL == (b = (SLBlock_Type *) SLcalloc (num, sizeof (SLBlock_Type))))
- return -1;
-
- c = Block_Context_Stack + Block_Context_Stack_Len;
- c->block = This_Compile_Block;
- c->block_ptr = Compile_ByteCode_Ptr;
- c->block_max = This_Compile_Block_Max;
- c->block_type = This_Compile_Block_Type;
- c->static_namespace = This_Static_NameSpace;
-
- Compile_ByteCode_Ptr = This_Compile_Block = b;
- This_Compile_Block_Max = b + num;
- This_Compile_Block_Type = type;
-
- Block_Context_Stack_Len += 1;
- return 0;
-}
-
-static int pop_block_context (void)
-{
- Block_Context_Type *c;
-
- if (Block_Context_Stack_Len == 0)
- return -1;
-
- Block_Context_Stack_Len -= 1;
- c = Block_Context_Stack + Block_Context_Stack_Len;
-
- This_Compile_Block = c->block;
- This_Compile_Block_Max = c->block_max;
- This_Compile_Block_Type = c->block_type;
- Compile_ByteCode_Ptr = c->block_ptr;
- This_Static_NameSpace = c->static_namespace;
-
- return 0;
-}
-
-int _SLcompile_push_context (SLang_Load_Type *load_object)
-{
- if (-1 == push_compile_context (load_object->name))
- return -1;
-
- if (NULL == (This_Static_NameSpace = _SLns_allocate_namespace (load_object->name, SLSTATIC_HASH_TABLE_SIZE)))
- {
- pop_compile_context ();
- return -1;
- }
-
- if (-1 == push_block_context (COMPILE_BLOCK_TYPE_TOP_LEVEL))
- {
- pop_compile_context ();
- return -1;
- }
-
- return 0;
-}
-
-int _SLcompile_pop_context (void)
-{
- if (This_Compile_Block_Type == COMPILE_BLOCK_TYPE_TOP_LEVEL)
- {
- Compile_ByteCode_Ptr->bc_main_type = 0;
- if (lang_free_branch (This_Compile_Block))
- SLfree ((char *) This_Compile_Block);
- }
-
- (void) pop_block_context ();
- (void) pop_compile_context ();
-
- if (This_Compile_Block == NULL)
- return 0;
-
-#if 0
- if (This_Compile_Block_Type != COMPILE_BLOCK_TYPE_TOP_LEVEL)
- {
- SLang_verror (SL_INTERNAL_ERROR, "Not at top-level");
- return -1;
- }
-#endif
-
- return 0;
-}
-
-/*{{{ Hash and Name Table Functions */
-
-static SLang_Name_Type *locate_name_in_table (char *name, unsigned long hash,
- SLang_Name_Type **table, unsigned int table_size)
-{
- SLang_Name_Type *t;
- char ch;
-
- t = table [(unsigned int) (hash % table_size)];
- ch = *name++;
-
- while (t != NULL)
- {
- if ((ch == t->name[0])
- && (0 == strcmp (t->name + 1, name)))
- break;
-
- t = t->next;
- }
-
- return t;
-}
-
-static SLang_Name_Type *locate_namespace_encoded_name (char *name, int err_on_bad_ns)
-{
- char *ns, *ns1;
- SLang_NameSpace_Type *table;
- SLang_Name_Type *nt;
-
- ns = name;
- name = strchr (name, '-');
- if ((name == NULL) || (name [1] != '>'))
- name = ns;
-
- ns1 = SLang_create_nslstring (ns, (unsigned int) (name - ns));
- if (ns1 == NULL)
- return NULL;
- if (ns != name)
- name += 2;
- ns = ns1;
-
- if (*ns == 0)
- {
- /* Use Global Namespace */
- SLang_free_slstring (ns);
- return locate_name_in_table (name, _SLcompute_string_hash (name),
- Global_NameSpace->table, Global_NameSpace->table_size);
- }
-
- if (NULL == (table = _SLns_find_namespace (ns)))
- {
- if (err_on_bad_ns)
- SLang_verror (SL_SYNTAX_ERROR, "Unable to find namespace called %s", ns);
- SLang_free_slstring (ns);
- return NULL;
- }
- SLang_free_slstring (ns);
-
- /* FIXME: the hash table size should be stored in the hash table itself */
- nt = locate_name_in_table (name, _SLcompute_string_hash (name),
- table->table, table->table_size);
- if (nt == NULL)
- return NULL;
-
- switch (nt->name_type)
- {
- /* These are private and cannot be accessed through the namespace. */
- case SLANG_PVARIABLE:
- case SLANG_PFUNCTION:
- return NULL;
- }
- return nt;
-}
-
-static SLang_Name_Type *locate_hashed_name (char *name, unsigned long hash)
-{
- SLang_Name_Type *t;
-
- if (Lang_Defining_Function)
- {
- t = locate_name_in_table (name, hash, Locals_Hash_Table, SLLOCALS_HASH_TABLE_SIZE);
- if (t != NULL)
- return t;
- }
-
- if ((This_Static_NameSpace != NULL)
- && (NULL != (t = locate_name_in_table (name, hash, This_Static_NameSpace->table, This_Static_NameSpace->table_size))))
- return t;
-
- t = locate_name_in_table (name, hash, Global_NameSpace->table, Global_NameSpace->table_size);
- if (NULL != t)
- return t;
-
- return locate_namespace_encoded_name (name, 1);
-}
-
-SLang_Name_Type *_SLlocate_name (char *name)
-{
- return locate_hashed_name (name, _SLcompute_string_hash (name));
-}
-
-static SLang_Name_Type *
-add_name_to_hash_table (char *name, unsigned long hash,
- unsigned int sizeof_obj, unsigned char name_type,
- SLang_Name_Type **table, unsigned int table_size,
- int check_existing)
-{
- SLang_Name_Type *t;
-
- if (check_existing)
- {
- t = locate_name_in_table (name, hash, table, table_size);
- if (t != NULL)
- return t;
- }
-
- if (-1 == _SLcheck_identifier_syntax (name))
- return NULL;
-
- t = (SLang_Name_Type *) SLmalloc (sizeof_obj);
- if (t == NULL)
- return t;
-
- memset ((char *) t, 0, sizeof_obj);
- if (NULL == (t->name = _SLstring_dup_hashed_string (name, hash)))
- {
- SLfree ((char *) t);
- return NULL;
- }
- t->name_type = name_type;
-
- hash = hash % table_size;
- t->next = table [(unsigned int)hash];
- table [(unsigned int) hash] = t;
-
- return t;
-}
-
-static SLang_Name_Type *
-add_global_name (char *name, unsigned long hash,
- unsigned char name_type, unsigned int sizeof_obj,
- SLang_NameSpace_Type *ns)
-{
- SLang_Name_Type *nt;
- SLang_Name_Type **table;
- unsigned int table_size;
-
- table = ns->table;
- table_size = ns->table_size;
-
- nt = locate_name_in_table (name, hash, table, table_size);
- if (nt != NULL)
- {
- if (nt->name_type == name_type)
- return nt;
-
- SLang_verror (SL_DUPLICATE_DEFINITION, "%s cannot be re-defined", name);
- return NULL;
- }
-
- return add_name_to_hash_table (name, hash, sizeof_obj, name_type,
- table, table_size, 0);
-}
-
-static int add_intrinsic_function (SLang_NameSpace_Type *ns,
- char *name, FVOID_STAR addr, unsigned char ret_type,
- unsigned int nargs, va_list ap)
-{
- SLang_Intrin_Fun_Type *f;
- unsigned int i;
-
- if (-1 == init_interpreter ())
- return -1;
-
- if (ns == NULL) ns = Global_NameSpace;
-
- if (nargs > SLANG_MAX_INTRIN_ARGS)
- {
- SLang_verror (SL_APPLICATION_ERROR, "Function %s requires too many arguments", name);
- return -1;
- }
-
- if (ret_type == SLANG_FLOAT_TYPE)
- {
- SLang_verror (SL_NOT_IMPLEMENTED, "Function %s is not permitted to return float", name);
- return -1;
- }
-
- f = (SLang_Intrin_Fun_Type *) add_global_name (name, _SLcompute_string_hash (name),
- SLANG_INTRINSIC, sizeof (SLang_Intrin_Fun_Type),
- ns);
-
- if (f == NULL)
- return -1;
-
- f->i_fun = addr;
- f->num_args = nargs;
- f->return_type = ret_type;
-
- for (i = 0; i < nargs; i++)
- f->arg_types [i] = va_arg (ap, unsigned int);
-
- return 0;
-}
-
-int SLadd_intrinsic_function (char *name, FVOID_STAR addr, unsigned char ret_type,
- unsigned int nargs, ...)
-{
- va_list ap;
- int status;
-
- va_start (ap, nargs);
- status = add_intrinsic_function (NULL, name, addr, ret_type, nargs, ap);
- va_end (ap);
-
- return status;
-}
-
-int SLns_add_intrinsic_function (SLang_NameSpace_Type *ns,
- char *name, FVOID_STAR addr, unsigned char ret_type,
- unsigned int nargs, ...)
-{
- va_list ap;
- int status;
-
- va_start (ap, nargs);
- status = add_intrinsic_function (ns, name, addr, ret_type, nargs, ap);
- va_end (ap);
-
- return status;
-}
-
-int SLns_add_intrinsic_variable (SLang_NameSpace_Type *ns,
- char *name, VOID_STAR addr, unsigned char data_type, int ro)
-{
- SLang_Intrin_Var_Type *v;
-
- if (-1 == init_interpreter ())
- return -1;
-
- if (ns == NULL) ns = Global_NameSpace;
-
- v = (SLang_Intrin_Var_Type *)add_global_name (name,
- _SLcompute_string_hash (name),
- (ro ? SLANG_RVARIABLE : SLANG_IVARIABLE),
- sizeof (SLang_Intrin_Var_Type),
- ns);
- if (v == NULL)
- return -1;
-
- v->addr = addr;
- v->type = data_type;
- return 0;
-}
-
-int SLadd_intrinsic_variable (char *name, VOID_STAR addr, unsigned char data_type, int ro)
-{
- return SLns_add_intrinsic_variable (NULL, name, addr, data_type, ro);
-}
-
-static int
-add_slang_function (char *name, unsigned char type, unsigned long hash,
- unsigned int num_args, unsigned int num_locals,
-#if _SLANG_HAS_DEBUG_CODE
- char *file,
-#endif
- _SLBlock_Header_Type *h,
- SLang_NameSpace_Type *ns)
-{
- _SLang_Function_Type *f;
-
-#if _SLANG_HAS_DEBUG_CODE
- if ((file != NULL)
- && (NULL == (file = SLang_create_slstring (file))))
- return -1;
-#endif
-
- f = (_SLang_Function_Type *)add_global_name (name, hash,
- type,
- sizeof (_SLang_Function_Type),
- ns);
- if (f == NULL)
- {
-#if _SLANG_HAS_DEBUG_CODE
- SLang_free_slstring (file); /* NULL ok */
-#endif
- return -1;
- }
-
- if (f->v.header != NULL)
- {
- if (f->nlocals == AUTOLOAD_NUM_LOCALS)
- SLang_free_slstring ((char *)f->v.autoload_filename); /* autoloaded filename */
- else
- free_function_header (f->v.header);
- }
-
-#if _SLANG_HAS_DEBUG_CODE
- if (f->file != NULL) SLang_free_slstring (f->file);
- f->file = file;
-#endif
- f->v.header = h;
- f->nlocals = num_locals;
- f->nargs = num_args;
-
- return 0;
-}
-
-int SLang_autoload (char *name, char *file)
-{
- _SLang_Function_Type *f;
- unsigned long hash;
-
- hash = _SLcompute_string_hash (name);
- f = (_SLang_Function_Type *)locate_name_in_table (name, hash, Global_NameSpace->table, Global_NameSpace->table_size);
-
- if ((f != NULL)
- && (f->name_type == SLANG_FUNCTION)
- && (f->v.header != NULL)
- && (f->nlocals != AUTOLOAD_NUM_LOCALS))
- {
- /* already loaded */
- return 0;
- }
-
- file = SLang_create_slstring (file);
- if (-1 == add_slang_function (name, SLANG_FUNCTION, hash, 0, AUTOLOAD_NUM_LOCALS,
-#if _SLANG_HAS_DEBUG_CODE
- file,
-#endif
- (_SLBlock_Header_Type *) file,
- Global_NameSpace))
- {
- SLang_free_slstring (file);
- return -1;
- }
-
- return 0;
-}
-
-SLang_Name_Type *_SLlocate_global_name (char *name)
-{
- unsigned long hash;
-
- hash = _SLcompute_string_hash (name);
- return locate_name_in_table (name, hash, Global_NameSpace->table,
- Global_NameSpace->table_size);
-}
-
-/*}}}*/
-
-static void free_local_variable_table (void)
-{
- unsigned int i;
- SLang_Name_Type *t, *t1;
-
- for (i = 0; i < SLLOCALS_HASH_TABLE_SIZE; i++)
- {
- t = Locals_Hash_Table [i];
- while (t != NULL)
- {
- SLang_free_slstring (t->name);
- t1 = t->next;
- SLfree ((char *) t);
- t = t1;
- }
- Locals_Hash_Table [i] = NULL;
- }
- Local_Variable_Number = 0;
-}
-
-/* call inner interpreter or return for more */
-static void lang_try_now(void)
-{
- Compile_ByteCode_Ptr++;
- if (This_Compile_Block_Type != COMPILE_BLOCK_TYPE_TOP_LEVEL)
- return;
-
- Compile_ByteCode_Ptr->bc_main_type = 0; /* so next command stops after this */
-
- /* now do it */
- inner_interp (This_Compile_Block);
- (void) lang_free_branch (This_Compile_Block);
- Compile_ByteCode_Ptr = This_Compile_Block;
-}
-
-SLang_Name_Type *SLang_get_fun_from_ref (SLang_Ref_Type *ref)
-{
- if (ref->is_global)
- {
- SLang_Name_Type *nt = ref->v.nt;
-
- switch (nt->name_type)
- {
- case SLANG_PFUNCTION:
- case SLANG_FUNCTION:
- case SLANG_INTRINSIC:
- case SLANG_MATH_UNARY:
- case SLANG_APP_UNARY:
- return nt;
- }
- SLang_verror (SL_TYPE_MISMATCH,
- "Reference to a function expected. Found &%s",
- nt->name);
- }
-
- SLang_verror (SL_TYPE_MISMATCH,
- "Reference to a function expected");
- return NULL;
-}
-
-int SLexecute_function (SLang_Name_Type *nt)
-{
- unsigned char type;
- char *name;
-
- if (SLang_Error)
- return -1;
-
- type = nt->name_type;
- name = nt->name;
-
- switch (type)
- {
- case SLANG_PFUNCTION:
- case SLANG_FUNCTION:
- execute_slang_fun ((_SLang_Function_Type *) nt);
- break;
-
- case SLANG_INTRINSIC:
- execute_intrinsic_fun ((SLang_Intrin_Fun_Type *) nt);
- break;
-
- case SLANG_MATH_UNARY:
- case SLANG_APP_UNARY:
- inner_interp_nametype (nt);
- break;
-
- default:
- SLang_verror (SL_TYPE_MISMATCH, "%s is not a function", name);
- return -1;
- }
-
- if (SLang_Error)
- {
- SLang_verror (SLang_Error, "Error while executing %s", name);
- return -1;
- }
-
- return 1;
-}
-
-int SLang_execute_function (char *name)
-{
- SLang_Name_Type *entry;
-
- if (NULL == (entry = SLang_get_function (name)))
- return 0;
-
- return SLexecute_function (entry);
-}
-
-/* return S-Lang function or NULL */
-SLang_Name_Type *SLang_get_function (char *name)
-{
- SLang_Name_Type *entry;
-
- if (NULL == (entry = locate_namespace_encoded_name (name, 0)))
- return NULL;
-
- if ((entry->name_type == SLANG_FUNCTION)
- || (entry->name_type == SLANG_INTRINSIC))
- return entry;
-
- return NULL;
-}
-
-static void lang_begin_function (void)
-{
- if (This_Compile_Block_Type != COMPILE_BLOCK_TYPE_TOP_LEVEL)
- {
- SLang_verror (SL_SYNTAX_ERROR, "Function nesting is illegal");
- return;
- }
- Lang_Defining_Function = 1;
- (void) push_block_context (COMPILE_BLOCK_TYPE_FUNCTION);
-}
-
-#if USE_COMBINED_BYTECODES
-static void optimize_block (SLBlock_Type *b)
-{
- while (1)
- {
- switch (b->bc_main_type)
- {
- case 0:
- return;
-
- default:
- b++;
- break;
-
- case _SLANG_BC_CALL_DIRECT:
- b++;
- switch (b->bc_main_type)
- {
- case 0:
- return;
- case _SLANG_BC_INTRINSIC:
- if ((b+1)->bc_main_type == 0)
- {
- (b-1)->bc_main_type = _SLANG_BC_CALL_DIRECT_INTRSTOP;
- return;
- }
- (b-1)->bc_main_type = _SLANG_BC_CALL_DIRECT_INTRINSIC;
- b++;
- break;
- case _SLANG_BC_LITERAL_STR:
- (b-1)->bc_main_type = _SLANG_BC_CALL_DIRECT_LSTR;
- b++;
- break;
- case _SLANG_BC_FUNCTION:
- case _SLANG_BC_PFUNCTION:
- (b-1)->bc_main_type = _SLANG_BC_CALL_DIRECT_SLFUN;
- b++;
- break;
- case _SLANG_BC_EARG_LVARIABLE:
- (b-1)->bc_main_type = _SLANG_BC_CALL_DIRECT_EARG_LVAR;
- b++;
- break;
- case _SLANG_BC_LITERAL_INT:
- (b-1)->bc_main_type = _SLANG_BC_CALL_DIRECT_LINT;
- b++;
- break;
- case _SLANG_BC_LVARIABLE:
- (b-1)->bc_main_type = _SLANG_BC_CALL_DIRECT_LVAR;
- b++;
- break;
- }
- break;
-
- case _SLANG_BC_INTRINSIC:
- b++;
- switch (b->bc_main_type)
- {
- case _SLANG_BC_CALL_DIRECT:
- (b-1)->bc_main_type = _SLANG_BC_INTRINSIC_CALL_DIRECT;
- b++;
- break;
-#if 0
- case _SLANG_BC_BLOCK:
- (b-1)->bc_main_type = _SLANG_BC_INTRINSIC_BLOCK;
- b++;
- break;
-#endif
-
- case 0:
- (b-1)->bc_main_type = _SLANG_BC_INTRINSIC_STOP;
- return;
- }
- break;
- }
- }
-}
-
-#endif
-
-
-/* name will be NULL if the object is to simply terminate the function
- * definition. See SLang_restart.
- */
-static int lang_define_function (char *name, unsigned char type, unsigned long hash,
- SLang_NameSpace_Type *ns)
-{
- if (This_Compile_Block_Type != COMPILE_BLOCK_TYPE_FUNCTION)
- {
- SLang_verror (SL_SYNTAX_ERROR, "Premature end of function");
- return -1;
- }
-
- /* terminate function */
- Compile_ByteCode_Ptr->bc_main_type = 0;
-
- if (name != NULL)
- {
- _SLBlock_Header_Type *h;
-
- h = (_SLBlock_Header_Type *)SLmalloc (sizeof (_SLBlock_Header_Type));
- if (h != NULL)
- {
- h->num_refs = 1;
- h->body = This_Compile_Block;
-
-#if USE_COMBINED_BYTECODES
- optimize_block (h->body);
-#endif
-
- if (-1 == add_slang_function (name, type, hash,
- Function_Args_Number,
- Local_Variable_Number,
-#if _SLANG_HAS_DEBUG_CODE
- This_Compile_Filename,
-#endif
- h, ns))
- SLfree ((char *) h);
- }
- /* Drop through for clean-up */
- }
-
- free_local_variable_table ();
-
- Function_Args_Number = 0;
- Lang_Defining_Function = 0;
-
- if (SLang_Error) return -1;
- /* SLang_restart will finish this if there is a slang error. */
-
- pop_block_context ();
-
- /* A function is only defined at top-level */
- if (This_Compile_Block_Type != COMPILE_BLOCK_TYPE_TOP_LEVEL)
- {
- SLang_verror (SL_INTERNAL_ERROR, "Not at top-level");
- return -1;
- }
- Compile_ByteCode_Ptr = This_Compile_Block;
- return 0;
-}
-
-static void define_static_function (char *name, unsigned long hash)
-{
- (void) lang_define_function (name, SLANG_FUNCTION, hash, This_Static_NameSpace);
-}
-
-static void define_private_function (char *name, unsigned long hash)
-{
- (void) lang_define_function (name, SLANG_PFUNCTION, hash, This_Static_NameSpace);
-}
-
-static void define_public_function (char *name, unsigned long hash)
-{
- (void) lang_define_function (name, SLANG_FUNCTION, hash, Global_NameSpace);
-}
-
-static void lang_end_block (void)
-{
- SLBlock_Type *node, *branch;
- unsigned char mtype;
-
- if (This_Compile_Block_Type != COMPILE_BLOCK_TYPE_BLOCK)
- {
- SLang_verror (SL_SYNTAX_ERROR, "Not defining a block");
- return;
- }
-
- /* terminate the block */
- Compile_ByteCode_Ptr->bc_main_type = 0;
- branch = This_Compile_Block;
-
- /* Try to save some space by using the cached blocks. */
- if (Compile_ByteCode_Ptr == branch + 1)
- {
- mtype = branch->bc_main_type;
- if (((mtype == _SLANG_BC_BREAK)
- || (mtype == _SLANG_BC_CONTINUE)
- || (mtype == _SLANG_BC_RETURN))
- && (SLang_Error == 0))
- {
- SLfree ((char *)branch);
- branch = SLShort_Blocks + 2 * (int) (mtype - _SLANG_BC_RETURN);
- }
- }
-
-#if USE_COMBINED_BYTECODES
- optimize_block (branch);
-#endif
-
- pop_block_context ();
- node = Compile_ByteCode_Ptr++;
-
- node->bc_main_type = _SLANG_BC_BLOCK;
- node->bc_sub_type = 0;
- node->b.blk = branch;
-}
-
-static int lang_begin_block (void)
-{
- return push_block_context (COMPILE_BLOCK_TYPE_BLOCK);
-}
-
-static int lang_check_space (void)
-{
- unsigned int n;
- SLBlock_Type *p;
-
- if (NULL == (p = This_Compile_Block))
- {
- SLang_verror (SL_INTERNAL_ERROR, "Top-level block not present");
- return -1;
- }
-
- /* Allow 1 extra for terminator */
- if (Compile_ByteCode_Ptr + 1 < This_Compile_Block_Max)
- return 0;
-
- n = (unsigned int) (This_Compile_Block_Max - p);
-
- /* enlarge the space by 2 objects */
- n += 2;
-
- if (NULL == (p = (SLBlock_Type *) SLrealloc((char *)p, n * sizeof(SLBlock_Type))))
- return -1;
-
- This_Compile_Block_Max = p + n;
- n = (unsigned int) (Compile_ByteCode_Ptr - This_Compile_Block);
- This_Compile_Block = p;
- Compile_ByteCode_Ptr = p + n;
-
- return 0;
-}
-
-/* returns positive number if name is a function or negative number if it
- is a variable. If it is intrinsic, it returns magnitude of 1, else 2 */
-int SLang_is_defined(char *name)
-{
- SLang_Name_Type *t;
-
- if (-1 == init_interpreter ())
- return -1;
-
- t = locate_namespace_encoded_name (name, 0);
- if (t == NULL)
- return 0;
-
- switch (t->name_type)
- {
- case SLANG_FUNCTION:
- /* case SLANG_PFUNCTION: */
- return 2;
- case SLANG_GVARIABLE:
- /* case SLANG_PVARIABLE: */
- return -2;
-
- case SLANG_ICONSTANT:
- case SLANG_DCONSTANT:
- case SLANG_RVARIABLE:
- case SLANG_IVARIABLE:
- return -1;
-
- case SLANG_INTRINSIC:
- default:
- return 1;
- }
-}
-
-static int add_global_variable (char *name, char name_type, unsigned long hash,
- SLang_NameSpace_Type *ns)
-{
- SLang_Name_Type *g;
-
- /* Note the importance of checking if it is already defined or not. For example,
- * suppose X is defined as an intrinsic variable. Then S-Lang code like:
- * !if (is_defined("X")) { variable X; }
- * will not result in a global variable X. On the other hand, this would
- * not be an issue if 'variable' statements always were not processed
- * immediately. That is, as it is now, 'if (0) {variable ZZZZ;}' will result
- * in the variable ZZZZ being defined because of the immediate processing.
- * The current solution is to do: if (0) { eval("variable ZZZZ;"); }
- */
- /* hash = _SLcompute_string_hash (name); */
- g = locate_name_in_table (name, hash, ns->table, ns->table_size);
-
- if (g != NULL)
- {
- if (g->name_type == name_type)
- return 0;
- }
-
- if (NULL == add_global_name (name, hash, name_type,
- sizeof (SLang_Global_Var_Type), ns))
- return -1;
-
- return 0;
-}
-
-int SLadd_global_variable (char *name)
-{
- if (-1 == init_interpreter ())
- return -1;
-
- return add_global_variable (name, SLANG_GVARIABLE,
- _SLcompute_string_hash (name),
- Global_NameSpace);
-}
-
-static int add_local_variable (char *name, unsigned long hash)
-{
- SLang_Local_Var_Type *t;
-
- /* local variable */
- if (Local_Variable_Number >= SLANG_MAX_LOCAL_VARIABLES)
- {
- SLang_verror (SL_SYNTAX_ERROR, "Too many local variables");
- return -1;
- }
-
- if (NULL != locate_name_in_table (name, hash, Locals_Hash_Table, SLLOCALS_HASH_TABLE_SIZE))
- {
- SLang_verror (SL_SYNTAX_ERROR, "Local variable %s has already been defined", name);
- return -1;
- }
-
- t = (SLang_Local_Var_Type *)
- add_name_to_hash_table (name, hash,
- sizeof (SLang_Local_Var_Type), SLANG_LVARIABLE,
- Locals_Hash_Table, SLLOCALS_HASH_TABLE_SIZE, 0);
- if (t == NULL)
- return -1;
-
- t->local_var_number = Local_Variable_Number;
- Local_Variable_Number++;
- return 0;
-}
-
-static void (*Compile_Mode_Function) (_SLang_Token_Type *);
-static void compile_basic_token_mode (_SLang_Token_Type *);
-
-/* if an error occurs, discard current object, block, function, etc... */
-void SLang_restart (int localv)
-{
- int save = SLang_Error;
-
- SLang_Error = SL_UNKNOWN_ERROR;
-
- _SLcompile_ptr = _SLcompile;
- Compile_Mode_Function = compile_basic_token_mode;
-
- Lang_Break = /* Lang_Continue = */ Lang_Return = 0;
- Trace_Mode = 0;
-
- while (This_Compile_Block_Type == COMPILE_BLOCK_TYPE_BLOCK)
- lang_end_block();
-
- if (This_Compile_Block_Type == COMPILE_BLOCK_TYPE_FUNCTION)
- {
- /* Terminate function definition and free variables */
- lang_define_function (NULL, SLANG_FUNCTION, 0, Global_NameSpace);
- if (lang_free_branch (This_Compile_Block))
- SLfree((char *)This_Compile_Block);
- }
- Lang_Defining_Function = 0;
-
- SLang_Error = save;
-
- if (SLang_Error == SL_STACK_OVERFLOW)
- {
- /* This loop guarantees that the stack is properly cleaned. */
- while (_SLStack_Pointer != _SLRun_Stack)
- {
- SLdo_pop ();
- }
- }
-
- while ((This_Compile_Block_Type != COMPILE_BLOCK_TYPE_TOP_LEVEL)
- && (0 == pop_block_context ()))
- ;
-
- if (localv)
- {
- Next_Function_Num_Args = SLang_Num_Function_Args = 0;
- Local_Variable_Frame = Local_Variable_Stack;
- Recursion_Depth = 0;
- Frame_Pointer = _SLStack_Pointer;
- Frame_Pointer_Depth = 0;
- Switch_Obj_Ptr = Switch_Objects;
- while (Switch_Obj_Ptr < Switch_Obj_Max)
- {
- SLang_free_object (Switch_Obj_Ptr);
- Switch_Obj_Ptr++;
- }
- Switch_Obj_Ptr = Switch_Objects;
- }
-}
-
-static void compile_directive (unsigned char sub_type)
-{
- /* This function is called only from compile_directive_mode which is
- * only possible when a block is available.
- */
-
- /* use BLOCK */
- Compile_ByteCode_Ptr--;
- Compile_ByteCode_Ptr->bc_sub_type = sub_type;
-
- lang_try_now ();
-}
-
-static void compile_unary (int op, unsigned char mt)
-{
- Compile_ByteCode_Ptr->bc_main_type = mt;
- Compile_ByteCode_Ptr->b.i_blk = op;
- Compile_ByteCode_Ptr->bc_sub_type = 0;
-
- lang_try_now ();
-}
-
-
-static void compile_binary (int op)
-{
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_BINARY;
- Compile_ByteCode_Ptr->b.i_blk = op;
- Compile_ByteCode_Ptr->bc_sub_type = 0;
-
- lang_try_now ();
-}
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
-static int try_compressed_bytecode (unsigned char last_bc, unsigned char bc)
-{
- if (Compile_ByteCode_Ptr != This_Compile_Block)
- {
- SLBlock_Type *b;
- b = Compile_ByteCode_Ptr - 1;
- if (b->bc_main_type == last_bc)
- {
- Compile_ByteCode_Ptr = b;
- b->bc_main_type = bc;
- lang_try_now ();
- return 0;
- }
- }
- return -1;
-}
-#endif
-
-static void compile_fast_binary (int op, unsigned char bc)
-{
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (0 == try_compressed_bytecode (_SLANG_BC_LITERAL_INT, bc))
- return;
-#else
- (void) bc;
-#endif
- compile_binary (op);
-}
-
-/* This is a hack */
-typedef struct _Special_NameTable_Type
-{
- char *name;
- int (*fun) (struct _Special_NameTable_Type *, _SLang_Token_Type *);
- VOID_STAR blk_data;
- unsigned char main_type;
-}
-Special_NameTable_Type;
-
-static int handle_special (Special_NameTable_Type *nt, _SLang_Token_Type *tok)
-{
- (void) tok;
- Compile_ByteCode_Ptr->bc_main_type = nt->main_type;
- Compile_ByteCode_Ptr->b.ptr_blk = nt->blk_data;
- return 0;
-}
-
-static int handle_special_file (Special_NameTable_Type *nt, _SLang_Token_Type *tok)
-{
- char *name;
-
- (void) nt; (void) tok;
-
- if (This_Static_NameSpace == NULL) name = "***Unknown***";
- else
- name = This_Static_NameSpace->name;
-
- name = SLang_create_slstring (name);
- if (name == NULL)
- return -1;
-
- Compile_ByteCode_Ptr->b.s_blk = name;
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_LITERAL_STR;
- Compile_ByteCode_Ptr->bc_sub_type = SLANG_STRING_TYPE;
- return 0;
-}
-
-static int handle_special_line (Special_NameTable_Type *nt, _SLang_Token_Type *tok)
-{
- (void) nt;
-
-#if _SLANG_HAS_DEBUG_CODE
- Compile_ByteCode_Ptr->b.l_blk = (long) tok->line_number;
-#endif
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_LITERAL;
- Compile_ByteCode_Ptr->bc_sub_type = SLANG_UINT_TYPE;
-
- return 0;
-}
-
-static Special_NameTable_Type Special_Name_Table [] =
-{
- {"EXECUTE_ERROR_BLOCK", handle_special, NULL, _SLANG_BC_X_ERROR},
- {"X_USER_BLOCK0", handle_special, NULL, _SLANG_BC_X_USER0},
- {"X_USER_BLOCK1", handle_special, NULL, _SLANG_BC_X_USER1},
- {"X_USER_BLOCK2", handle_special, NULL, _SLANG_BC_X_USER2},
- {"X_USER_BLOCK3", handle_special, NULL, _SLANG_BC_X_USER3},
- {"X_USER_BLOCK4", handle_special, NULL, _SLANG_BC_X_USER4},
- {"__FILE__", handle_special_file, NULL, 0},
- {"__LINE__", handle_special_line, NULL, 0},
-#if 0
- {"__NAMESPACE__", handle_special_namespace, NULL, 0},
-#endif
- {NULL, NULL, NULL, 0}
-};
-
-static void compile_hashed_identifier (char *name, unsigned long hash, _SLang_Token_Type *tok)
-{
- SLang_Name_Type *entry;
- unsigned char name_type;
-
- entry = locate_hashed_name (name, hash);
-
- if (entry == NULL)
- {
- Special_NameTable_Type *nt = Special_Name_Table;
-
- while (nt->name != NULL)
- {
- if (strcmp (name, nt->name))
- {
- nt++;
- continue;
- }
-
- if (0 == (*nt->fun)(nt, tok))
- lang_try_now ();
- return;
- }
-
- SLang_verror (SL_UNDEFINED_NAME, "%s is undefined", name);
- return;
- }
-
- name_type = entry->name_type;
- Compile_ByteCode_Ptr->bc_main_type = name_type;
-
- if (name_type == SLANG_LVARIABLE)
- Compile_ByteCode_Ptr->b.i_blk = ((SLang_Local_Var_Type *) entry)->local_var_number;
- else
- Compile_ByteCode_Ptr->b.nt_blk = entry;
-
- lang_try_now ();
-}
-
-static void compile_tmp_variable (char *name, unsigned long hash)
-{
- SLang_Name_Type *entry;
- unsigned char name_type;
-
- if (NULL == (entry = locate_hashed_name (name, hash)))
- {
- SLang_verror (SL_UNDEFINED_NAME, "%s is undefined", name);
- return;
- }
-
- name_type = entry->name_type;
- switch (name_type)
- {
- case SLANG_LVARIABLE:
- Compile_ByteCode_Ptr->b.i_blk = ((SLang_Local_Var_Type *) entry)->local_var_number;
- break;
-
- case SLANG_GVARIABLE:
- case SLANG_PVARIABLE:
- Compile_ByteCode_Ptr->b.nt_blk = entry;
- break;
-
- default:
- SLang_verror (SL_SYNTAX_ERROR, "__tmp(%s) does not specifiy a variable", name);
- return;
- }
-
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_TMP;
- Compile_ByteCode_Ptr->bc_sub_type = name_type;
-
- lang_try_now ();
-}
-
-static void compile_simple (unsigned char main_type)
-{
- Compile_ByteCode_Ptr->bc_main_type = main_type;
- Compile_ByteCode_Ptr->bc_sub_type = 0;
- Compile_ByteCode_Ptr->b.blk = NULL;
- lang_try_now ();
-}
-
-static void compile_identifier (char *name, _SLang_Token_Type *tok)
-{
- compile_hashed_identifier (name, _SLcompute_string_hash (name), tok);
-}
-
-static void compile_call_direct (int (*f) (void), unsigned char byte_code)
-{
- Compile_ByteCode_Ptr->b.call_function = f;
- Compile_ByteCode_Ptr->bc_main_type = byte_code;
- Compile_ByteCode_Ptr->bc_sub_type = 0;
- lang_try_now ();
-}
-
-static void compile_lvar_call_direct (int (*f)(void), unsigned char bc,
- unsigned char frame_op)
-{
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (0 == try_compressed_bytecode (_SLANG_BC_LVARIABLE, bc))
- return;
-#else
- (void) bc;
-#endif
-
- compile_call_direct (f, frame_op);
-}
-
-static void compile_integer (long i, unsigned char bc_main_type, unsigned char bc_sub_type)
-{
- Compile_ByteCode_Ptr->b.l_blk = i;
- Compile_ByteCode_Ptr->bc_main_type = bc_main_type;
- Compile_ByteCode_Ptr->bc_sub_type = bc_sub_type;
-
- lang_try_now ();
-}
-
-#if SLANG_HAS_FLOAT
-static void compile_double (char *str, unsigned char type)
-{
- double d;
- unsigned int factor = 1;
- double *ptr;
-
-#if 1
- d = _SLang_atof (str);
-#else
- if (1 != sscanf (str, "%lf", &d))
- {
- SLang_verror (SL_SYNTAX_ERROR, "Unable to convert %s to double", str);
- return;
- }
-#endif
-
-#if SLANG_HAS_COMPLEX
- if (type == SLANG_COMPLEX_TYPE) factor = 2;
-#endif
- if (NULL == (ptr = (double *) SLmalloc(factor * sizeof(double))))
- return;
-
- Compile_ByteCode_Ptr->b.double_blk = ptr;
-#if SLANG_HAS_COMPLEX
- if (type == SLANG_COMPLEX_TYPE)
- *ptr++ = 0;
-#endif
- *ptr = d;
-
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_LITERAL;
- Compile_ByteCode_Ptr->bc_sub_type = type;
- lang_try_now ();
-}
-
-static void compile_float (char *s)
-{
- float x;
-
-#if 1
- x = (float) _SLang_atof (s);
-#else
- if (1 != sscanf (s, "%f", &x))
- {
- SLang_verror (SL_SYNTAX_ERROR, "Unable to convert %s to float", s);
- return;
- }
-#endif
- Compile_ByteCode_Ptr->b.float_blk = x;
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_LITERAL;
- Compile_ByteCode_Ptr->bc_sub_type = SLANG_FLOAT_TYPE;
- lang_try_now ();
-}
-
-#endif
-
-static void compile_string (char *s, unsigned long hash)
-{
- if (NULL == (Compile_ByteCode_Ptr->b.s_blk = _SLstring_dup_hashed_string (s, hash)))
- return;
-
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_LITERAL_STR;
- Compile_ByteCode_Ptr->bc_sub_type = SLANG_STRING_TYPE;
-
- lang_try_now ();
-}
-
-static void compile_bstring (SLang_BString_Type *s)
-{
- if (NULL == (Compile_ByteCode_Ptr->b.bs_blk = SLbstring_dup (s)))
- return;
-
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_LITERAL;
- Compile_ByteCode_Ptr->bc_sub_type = SLANG_BSTRING_TYPE;
-
- lang_try_now ();
-}
-
-/* assign_type is one of _SLANG_BCST_ASSIGN, ... values */
-static void compile_assign (unsigned char assign_type,
- char *name, unsigned long hash)
-{
- SLang_Name_Type *v;
- unsigned char main_type;
- SLang_Class_Type *cl;
-
- v = locate_hashed_name (name, hash);
- if (v == NULL)
- {
- if ((_SLang_Auto_Declare_Globals == 0)
- || (NULL != strchr (name, '-')) /* namespace->name form */
- || Lang_Defining_Function
- || (assign_type != _SLANG_BCST_ASSIGN)
- || (This_Static_NameSpace == NULL))
- {
- SLang_verror (SL_UNDEFINED_NAME, "%s is undefined", name);
- return;
- }
- /* Note that function local variables are not at top level */
-
- /* Variables that are automatically declared are given static
- * scope.
- */
- if ((NULL != SLang_Auto_Declare_Var_Hook)
- && (-1 == (*SLang_Auto_Declare_Var_Hook) (name)))
- return;
-
- if ((-1 == add_global_variable (name, SLANG_GVARIABLE, hash, This_Static_NameSpace))
- || (NULL == (v = locate_hashed_name (name, hash))))
- return;
- }
-
- switch (v->name_type)
- {
- case SLANG_LVARIABLE:
- main_type = _SLANG_BC_SET_LOCAL_LVALUE;
- Compile_ByteCode_Ptr->b.i_blk = ((SLang_Local_Var_Type *) v)->local_var_number;
- break;
-
- case SLANG_GVARIABLE:
- case SLANG_PVARIABLE:
- main_type = _SLANG_BC_SET_GLOBAL_LVALUE;
- Compile_ByteCode_Ptr->b.nt_blk = v;
- break;
-
- case SLANG_IVARIABLE:
- cl = _SLclass_get_class (((SLang_Intrin_Var_Type *)v)->type);
- if (cl->cl_class_type != SLANG_CLASS_TYPE_SCALAR)
- {
- SLang_verror (SL_SYNTAX_ERROR, "Assignment to %s is not allowed", name);
- return;
- }
- main_type = _SLANG_BC_SET_INTRIN_LVALUE;
- Compile_ByteCode_Ptr->b.nt_blk = v;
- break;
-
- case SLANG_RVARIABLE:
- SLang_verror (SL_READONLY_ERROR, "%s is read-only", name);
- return;
-
- default:
- SLang_verror (SL_DUPLICATE_DEFINITION, "%s may not be used as an lvalue", name);
- return;
- }
-
- Compile_ByteCode_Ptr->bc_sub_type = assign_type;
- Compile_ByteCode_Ptr->bc_main_type = main_type;
-
- lang_try_now ();
-}
-
-static void compile_deref_assign (char *name, unsigned long hash)
-{
- SLang_Name_Type *v;
-
- v = locate_hashed_name (name, hash);
-
- if (v == NULL)
- {
- SLang_verror (SL_UNDEFINED_NAME, "%s is undefined", name);
- return;
- }
-
- switch (v->name_type)
- {
- case SLANG_LVARIABLE:
- Compile_ByteCode_Ptr->b.i_blk = ((SLang_Local_Var_Type *) v)->local_var_number;
- break;
-
- case SLANG_GVARIABLE:
- case SLANG_PVARIABLE:
- Compile_ByteCode_Ptr->b.nt_blk = v;
- break;
-
- default:
- /* FIXME: Priority=low
- * This could be made to work. It is not a priority because
- * I cannot imagine application intrinsics which are references.
- */
- SLang_verror (SL_NOT_IMPLEMENTED, "Deref assignment to %s is not allowed", name);
- return;
- }
-
- Compile_ByteCode_Ptr->bc_sub_type = v->name_type;
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_DEREF_ASSIGN;
-
- lang_try_now ();
-}
-
-static void
-compile_struct_assign (_SLang_Token_Type *t)
-{
- Compile_ByteCode_Ptr->bc_sub_type = _SLANG_BCST_ASSIGN + (t->type - _STRUCT_ASSIGN_TOKEN);
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_SET_STRUCT_LVALUE;
- Compile_ByteCode_Ptr->b.s_blk = _SLstring_dup_hashed_string (t->v.s_val, t->hash);
- lang_try_now ();
-}
-
-static void
-compile_array_assign (_SLang_Token_Type *t)
-{
- Compile_ByteCode_Ptr->bc_sub_type = _SLANG_BCST_ASSIGN + (t->type - _ARRAY_ASSIGN_TOKEN);
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_SET_ARRAY_LVALUE;
- Compile_ByteCode_Ptr->b.s_blk = NULL;
- lang_try_now ();
-}
-
-static void compile_dot(_SLang_Token_Type *t)
-{
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_FIELD;
- Compile_ByteCode_Ptr->b.s_blk = _SLstring_dup_hashed_string(t->v.s_val, t->hash);
- lang_try_now ();
-}
-
-static void compile_ref (char *name, unsigned long hash)
-{
- SLang_Name_Type *entry;
- unsigned char main_type;
-
- if (NULL == (entry = locate_hashed_name (name, hash)))
- {
- SLang_verror (SL_UNDEFINED_NAME, "%s is undefined", name);
- return;
- }
-
- main_type = entry->name_type;
-
- if (main_type == SLANG_LVARIABLE)
- {
- main_type = _SLANG_BC_LOBJPTR;
- Compile_ByteCode_Ptr->b.i_blk = ((SLang_Local_Var_Type *)entry)->local_var_number;
- }
- else
- {
- main_type = _SLANG_BC_GOBJPTR;
- Compile_ByteCode_Ptr->b.nt_blk = entry;
- }
-
- Compile_ByteCode_Ptr->bc_main_type = main_type;
- lang_try_now ();
-}
-
-static void compile_break (unsigned char break_type,
- int requires_block, int requires_fun,
- char *str)
-{
- if ((requires_fun
- && (Lang_Defining_Function == 0))
- || (requires_block
- && (This_Compile_Block_Type != COMPILE_BLOCK_TYPE_BLOCK)))
- {
- SLang_verror (SL_SYNTAX_ERROR, "misplaced %s", str);
- return;
- }
-
- Compile_ByteCode_Ptr->bc_main_type = break_type;
- Compile_ByteCode_Ptr->bc_sub_type = 0;
-
- lang_try_now ();
-}
-
-static void compile_public_variable_mode (_SLang_Token_Type *t)
-{
- if (t->type == IDENT_TOKEN)
- {
- /* If the variable is already defined in the static hash table,
- * generate an error.
- */
- if ((This_Static_NameSpace != NULL)
- && (NULL != locate_name_in_table (t->v.s_val, t->hash, This_Static_NameSpace->table, This_Static_NameSpace->table_size)))
- {
- SLang_verror (SL_DUPLICATE_DEFINITION,
- "%s already has static or private linkage in this unit",
- t->v.s_val);
- return;
- }
- add_global_variable (t->v.s_val, SLANG_GVARIABLE, t->hash, Global_NameSpace);
- }
- else if (t->type == CBRACKET_TOKEN)
- Compile_Mode_Function = compile_basic_token_mode;
- else
- SLang_verror (SL_SYNTAX_ERROR, "Misplaced token in variable list");
-}
-
-static void compile_local_variable_mode (_SLang_Token_Type *t)
-{
- if (t->type == IDENT_TOKEN)
- add_local_variable (t->v.s_val, t->hash);
- else if (t->type == CBRACKET_TOKEN)
- Compile_Mode_Function = compile_basic_token_mode;
- else
- SLang_verror (SL_SYNTAX_ERROR, "Misplaced token in variable list");
-}
-
-static void compile_static_variable_mode (_SLang_Token_Type *t)
-{
- if (t->type == IDENT_TOKEN)
- add_global_variable (t->v.s_val, SLANG_GVARIABLE, t->hash, This_Static_NameSpace);
- else if (t->type == CBRACKET_TOKEN)
- Compile_Mode_Function = compile_basic_token_mode;
- else
- SLang_verror (SL_SYNTAX_ERROR, "Misplaced token in variable list");
-}
-
-static void compile_private_variable_mode (_SLang_Token_Type *t)
-{
- if (t->type == IDENT_TOKEN)
- add_global_variable (t->v.s_val, SLANG_PVARIABLE, t->hash, This_Static_NameSpace);
- else if (t->type == CBRACKET_TOKEN)
- Compile_Mode_Function = compile_basic_token_mode;
- else
- SLang_verror (SL_SYNTAX_ERROR, "Misplaced token in variable list");
-}
-
-static void compile_function_mode (_SLang_Token_Type *t)
-{
- if (-1 == lang_check_space ())
- return;
-
- if (t->type != IDENT_TOKEN)
- SLang_verror (SL_SYNTAX_ERROR, "Expecting function name");
- else
- lang_define_function (t->v.s_val, SLANG_FUNCTION, t->hash, Global_NameSpace);
-
- Compile_Mode_Function = compile_basic_token_mode;
-}
-
-/* An error block is not permitted to contain continue or break statements.
- * This restriction may be removed later but for now reject them.
- */
-static int check_error_block (void)
-{
- SLBlock_Type *p;
- unsigned char t;
-
- /* Back up to the block and then scan it. */
- p = (Compile_ByteCode_Ptr - 1)->b.blk;
-
- while (0 != (t = p->bc_main_type))
- {
- if ((t == _SLANG_BC_BREAK)
- || (t == _SLANG_BC_CONTINUE))
- {
- SLang_verror (SL_SYNTAX_ERROR,
- "An ERROR_BLOCK is not permitted to contain continue or break statements");
- return -1;
- }
- p++;
- }
- return 0;
-}
-
-/* The only allowed tokens are the directives and another block start.
- * The mode is only active if a block is available. The inner_interp routine
- * expects such safety checks.
- */
-static void compile_directive_mode (_SLang_Token_Type *t)
-{
- int bc_sub_type;
-
- if (-1 == lang_check_space ())
- return;
-
- bc_sub_type = -1;
-
- switch (t->type)
- {
- case FOREVER_TOKEN:
- bc_sub_type = _SLANG_BCST_FOREVER;
- break;
-
- case IFNOT_TOKEN:
- bc_sub_type = _SLANG_BCST_IFNOT;
- break;
-
- case IF_TOKEN:
- bc_sub_type = _SLANG_BCST_IF;
- break;
-
- case ANDELSE_TOKEN:
- bc_sub_type = _SLANG_BCST_ANDELSE;
- break;
-
- case SWITCH_TOKEN:
- bc_sub_type = _SLANG_BCST_SWITCH;
- break;
-
- case EXITBLK_TOKEN:
- if (Lang_Defining_Function == 0)
- {
- SLang_verror (SL_SYNTAX_ERROR, "misplaced EXIT_BLOCK");
- break;
- }
- bc_sub_type = _SLANG_BCST_EXIT_BLOCK;
- break;
-
- case ERRBLK_TOKEN:
- if (This_Compile_Block_Type == COMPILE_BLOCK_TYPE_TOP_LEVEL)
- {
- SLang_verror (SL_SYNTAX_ERROR, "misplaced ERROR_BLOCK");
- break;
- }
- if (0 == check_error_block ())
- bc_sub_type = _SLANG_BCST_ERROR_BLOCK;
- break;
-
- case USRBLK0_TOKEN:
- case USRBLK1_TOKEN:
- case USRBLK2_TOKEN:
- case USRBLK3_TOKEN:
- case USRBLK4_TOKEN:
- if (This_Compile_Block_Type == COMPILE_BLOCK_TYPE_TOP_LEVEL)
- {
- SLang_verror (SL_SYNTAX_ERROR, "misplaced USER_BLOCK");
- break;
- }
- bc_sub_type = _SLANG_BCST_USER_BLOCK0 + (t->type - USRBLK0_TOKEN);
- break;
-
- case NOTELSE_TOKEN:
- bc_sub_type = _SLANG_BCST_NOTELSE;
- break;
-
- case ELSE_TOKEN:
- bc_sub_type = _SLANG_BCST_ELSE;
- break;
-
- case LOOP_TOKEN:
- bc_sub_type = _SLANG_BCST_LOOP;
- break;
-
- case DOWHILE_TOKEN:
- bc_sub_type = _SLANG_BCST_DOWHILE;
- break;
-
- case WHILE_TOKEN:
- bc_sub_type = _SLANG_BCST_WHILE;
- break;
-
- case ORELSE_TOKEN:
- bc_sub_type = _SLANG_BCST_ORELSE;
- break;
-
- case _FOR_TOKEN:
- bc_sub_type = _SLANG_BCST_FOR;
- break;
-
- case FOR_TOKEN:
- bc_sub_type = _SLANG_BCST_CFOR;
- break;
-
- case FOREACH_TOKEN:
- bc_sub_type = _SLANG_BCST_FOREACH;
- break;
-
- case OBRACE_TOKEN:
- lang_begin_block ();
- break;
-
- default:
- SLang_verror (SL_SYNTAX_ERROR, "Expecting directive token. Found 0x%X", t->type);
- break;
- }
-
- /* Reset this pointer first because compile_directive may cause a
- * file to be loaded.
- */
- Compile_Mode_Function = compile_basic_token_mode;
-
- if (bc_sub_type != -1)
- compile_directive (bc_sub_type);
-}
-
-static unsigned int Assign_Mode_Type;
-static void compile_assign_mode (_SLang_Token_Type *t)
-{
- if (t->type != IDENT_TOKEN)
- {
- SLang_verror (SL_SYNTAX_ERROR, "Expecting identifier for assignment");
- return;
- }
-
- compile_assign (Assign_Mode_Type, t->v.s_val, t->hash);
- Compile_Mode_Function = compile_basic_token_mode;
-}
-
-static void compile_basic_token_mode (_SLang_Token_Type *t)
-{
- if (-1 == lang_check_space ())
- return;
-
- switch (t->type)
- {
- case PUSH_TOKEN:
- case NOP_TOKEN:
- case EOF_TOKEN:
- case READONLY_TOKEN:
- case DO_TOKEN:
- case VARIABLE_TOKEN:
- case SEMICOLON_TOKEN:
- default:
- SLang_verror (SL_SYNTAX_ERROR, "Unknown or unsupported token type 0x%X", t->type);
- break;
-
- case DEREF_TOKEN:
- compile_call_direct (dereference_object, _SLANG_BC_CALL_DIRECT);
- break;
-
- case STRUCT_TOKEN:
- compile_call_direct (_SLstruct_define_struct, _SLANG_BC_CALL_DIRECT);
- break;
-
- case TYPEDEF_TOKEN:
- compile_call_direct (_SLstruct_define_typedef, _SLANG_BC_CALL_DIRECT);
- break;
-
- case TMP_TOKEN:
- compile_tmp_variable (t->v.s_val, t->hash);
- break;
-
- case DOT_TOKEN: /* X . field */
- compile_dot (t);
- break;
-
- case COMMA_TOKEN:
- break; /* do nothing */
-
- case IDENT_TOKEN:
- compile_hashed_identifier (t->v.s_val, t->hash, t);
- break;
-
- case _REF_TOKEN:
- compile_ref (t->v.s_val, t->hash);
- break;
-
- case ARG_TOKEN:
- compile_call_direct (SLang_start_arg_list, _SLANG_BC_CALL_DIRECT);
- break;
-
- case EARG_TOKEN:
- compile_lvar_call_direct (SLang_end_arg_list, _SLANG_BC_EARG_LVARIABLE, _SLANG_BC_CALL_DIRECT);
- break;
-
- case COLON_TOKEN:
- if (This_Compile_Block_Type == COMPILE_BLOCK_TYPE_BLOCK)
- compile_simple (_SLANG_BC_LABEL);
- else SLang_Error = SL_SYNTAX_ERROR;
- break;
-
- case POP_TOKEN:
- compile_call_direct (SLdo_pop, _SLANG_BC_CALL_DIRECT);
- break;
-
- case CASE_TOKEN:
- if (This_Compile_Block_Type != COMPILE_BLOCK_TYPE_BLOCK)
- SLang_verror (SL_SYNTAX_ERROR, "Misplaced 'case'");
- else
- compile_call_direct (case_function, _SLANG_BC_CALL_DIRECT);
- break;
-
- case CHAR_TOKEN:
- compile_integer (t->v.long_val, _SLANG_BC_LITERAL, SLANG_CHAR_TYPE);
- break;
- case SHORT_TOKEN:
- compile_integer (t->v.long_val, _SLANG_BC_LITERAL, SLANG_SHORT_TYPE);
- break;
- case INT_TOKEN:
- compile_integer (t->v.long_val, _SLANG_BC_LITERAL_INT, SLANG_INT_TYPE);
- break;
- case UCHAR_TOKEN:
- compile_integer (t->v.long_val, _SLANG_BC_LITERAL, SLANG_UCHAR_TYPE);
- break;
- case USHORT_TOKEN:
- compile_integer (t->v.long_val, _SLANG_BC_LITERAL, SLANG_USHORT_TYPE);
- break;
- case UINT_TOKEN:
- compile_integer (t->v.long_val, _SLANG_BC_LITERAL_INT, SLANG_UINT_TYPE);
- break;
- case LONG_TOKEN:
- compile_integer (t->v.long_val, _SLANG_BC_LITERAL, SLANG_LONG_TYPE);
- break;
- case ULONG_TOKEN:
- compile_integer (t->v.long_val, _SLANG_BC_LITERAL, SLANG_ULONG_TYPE);
- break;
-
-#if SLANG_HAS_FLOAT
- case FLOAT_TOKEN:
- compile_float (t->v.s_val);
- break;
-
- case DOUBLE_TOKEN:
- compile_double (t->v.s_val, SLANG_DOUBLE_TYPE);
- break;
-#endif
-#if SLANG_HAS_COMPLEX
- case COMPLEX_TOKEN:
- compile_double (t->v.s_val, SLANG_COMPLEX_TYPE);
- break;
-#endif
-
- case STRING_TOKEN:
- compile_string (t->v.s_val, t->hash);
- break;
-
- case _BSTRING_TOKEN:
- compile_bstring (SLbstring_create ((unsigned char *)t->v.s_val, (unsigned int) t->hash));
- break;
-
- case BSTRING_TOKEN:
- compile_bstring (t->v.b_val);
- break;
-
- case _NULL_TOKEN:
- compile_identifier ("NULL", t);
- break;
-
- case _INLINE_WILDCARD_ARRAY_TOKEN:
- compile_call_direct (_SLarray_wildcard_array, _SLANG_BC_CALL_DIRECT);
- break;
-
- case _INLINE_ARRAY_TOKEN:
- compile_call_direct (_SLarray_inline_array, _SLANG_BC_CALL_DIRECT_FRAME);
- break;
-
- case _INLINE_IMPLICIT_ARRAY_TOKEN:
- compile_call_direct (_SLarray_inline_implicit_array, _SLANG_BC_CALL_DIRECT_FRAME);
- break;
-
- case ARRAY_TOKEN:
- compile_lvar_call_direct (_SLarray_aget, _SLANG_BC_LVARIABLE_AGET, _SLANG_BC_CALL_DIRECT_FRAME);
- break;
-
- /* Note: I need to add the other _ARRAY assign tokens. */
- case _ARRAY_PLUSEQS_TOKEN:
- case _ARRAY_MINUSEQS_TOKEN:
- case _ARRAY_TIMESEQS_TOKEN:
- case _ARRAY_DIVEQS_TOKEN:
- case _ARRAY_BOREQS_TOKEN:
- case _ARRAY_BANDEQS_TOKEN:
- case _ARRAY_POST_MINUSMINUS_TOKEN:
- case _ARRAY_MINUSMINUS_TOKEN:
- case _ARRAY_POST_PLUSPLUS_TOKEN:
- case _ARRAY_PLUSPLUS_TOKEN:
- compile_array_assign (t);
- break;
-
- case _ARRAY_ASSIGN_TOKEN:
- compile_lvar_call_direct (_SLarray_aput, _SLANG_BC_LVARIABLE_APUT, _SLANG_BC_CALL_DIRECT_FRAME);
- break;
-
- case _STRUCT_ASSIGN_TOKEN:
- case _STRUCT_PLUSEQS_TOKEN:
- case _STRUCT_MINUSEQS_TOKEN:
- case _STRUCT_TIMESEQS_TOKEN:
- case _STRUCT_DIVEQS_TOKEN:
- case _STRUCT_BOREQS_TOKEN:
- case _STRUCT_BANDEQS_TOKEN:
- case _STRUCT_POST_MINUSMINUS_TOKEN:
- case _STRUCT_MINUSMINUS_TOKEN:
- case _STRUCT_POST_PLUSPLUS_TOKEN:
- case _STRUCT_PLUSPLUS_TOKEN:
- compile_struct_assign (t);
- break;
-
- case _SCALAR_ASSIGN_TOKEN:
- case _SCALAR_PLUSEQS_TOKEN:
- case _SCALAR_MINUSEQS_TOKEN:
- case _SCALAR_TIMESEQS_TOKEN:
- case _SCALAR_DIVEQS_TOKEN:
- case _SCALAR_BOREQS_TOKEN:
- case _SCALAR_BANDEQS_TOKEN:
- case _SCALAR_POST_MINUSMINUS_TOKEN:
- case _SCALAR_MINUSMINUS_TOKEN:
- case _SCALAR_POST_PLUSPLUS_TOKEN:
- case _SCALAR_PLUSPLUS_TOKEN:
- compile_assign (_SLANG_BCST_ASSIGN + (t->type - _SCALAR_ASSIGN_TOKEN),
- t->v.s_val, t->hash);
- break;
-
- case _DEREF_ASSIGN_TOKEN:
- compile_deref_assign (t->v.s_val, t->hash);
- break;
-
- /* For processing RPN tokens */
- case ASSIGN_TOKEN:
- case PLUSEQS_TOKEN:
- case MINUSEQS_TOKEN:
- case TIMESEQS_TOKEN:
- case DIVEQS_TOKEN:
- case BOREQS_TOKEN:
- case BANDEQS_TOKEN:
- case POST_MINUSMINUS_TOKEN:
- case MINUSMINUS_TOKEN:
- case POST_PLUSPLUS_TOKEN:
- case PLUSPLUS_TOKEN:
- Compile_Mode_Function = compile_assign_mode;
- Assign_Mode_Type = _SLANG_BCST_ASSIGN + (t->type - ASSIGN_TOKEN);
- break;
-
- case LT_TOKEN:
- compile_binary (SLANG_LT);
- break;
-
- case LE_TOKEN:
- compile_binary (SLANG_LE);
- break;
-
- case GT_TOKEN:
- compile_binary (SLANG_GT);
- break;
-
- case GE_TOKEN:
- compile_binary (SLANG_GE);
- break;
-
- case EQ_TOKEN:
- compile_binary (SLANG_EQ);
- break;
-
- case NE_TOKEN:
- compile_binary (SLANG_NE);
- break;
-
- case AND_TOKEN:
- compile_binary (SLANG_AND);
- break;
-
- case ADD_TOKEN:
- compile_fast_binary (SLANG_PLUS, _SLANG_BC_INTEGER_PLUS);
- break;
-
- case SUB_TOKEN:
- compile_fast_binary (SLANG_MINUS, _SLANG_BC_INTEGER_MINUS);
- break;
-
- case TIMES_TOKEN:
- compile_binary (SLANG_TIMES);
- break;
-
- case DIV_TOKEN:
- compile_binary (SLANG_DIVIDE);
- break;
-
- case POW_TOKEN:
- compile_binary (SLANG_POW);
- break;
-
- case BXOR_TOKEN:
- compile_binary (SLANG_BXOR);
- break;
-
- case BAND_TOKEN:
- compile_binary (SLANG_BAND);
- break;
-
- case BOR_TOKEN:
- compile_binary (SLANG_BOR);
- break;
-
- case SHR_TOKEN:
- compile_binary (SLANG_SHR);
- break;
-
- case SHL_TOKEN:
- compile_binary (SLANG_SHL);
- break;
-
- case MOD_TOKEN:
- compile_binary (SLANG_MOD);
- break;
-
- case OR_TOKEN:
- compile_binary (SLANG_OR);
- break;
-
- case NOT_TOKEN:
- compile_unary (SLANG_NOT, _SLANG_BC_UNARY);
- break;
-
- case BNOT_TOKEN:
- compile_unary (SLANG_BNOT, _SLANG_BC_UNARY);
- break;
-
- case MUL2_TOKEN:
- compile_unary (SLANG_MUL2, _SLANG_BC_UNARY_FUNC);
- break;
-
- case CHS_TOKEN:
- compile_unary (SLANG_CHS, _SLANG_BC_UNARY_FUNC);
- break;
-
- case ABS_TOKEN:
- compile_unary (SLANG_ABS, _SLANG_BC_UNARY_FUNC);
- break;
-
- case SQR_TOKEN:
- compile_unary (SLANG_SQR, _SLANG_BC_UNARY_FUNC);
- break;
-
- case SIGN_TOKEN:
- compile_unary (SLANG_SIGN, _SLANG_BC_UNARY_FUNC);
- break;
-
- case BREAK_TOKEN:
- compile_break (_SLANG_BC_BREAK, 1, 0, "break");
- break;
-
- case RETURN_TOKEN:
- compile_break (_SLANG_BC_RETURN, 0, 1, "return");
- break;
-
- case CONT_TOKEN:
- compile_break (_SLANG_BC_CONTINUE, 1, 0, "continue");
- break;
-
- case EXCH_TOKEN:
- compile_break (_SLANG_BC_EXCH, 0, 0, ""); /* FIXME: Priority=low */
- break;
-
- case STATIC_TOKEN:
- if (Lang_Defining_Function == 0)
- Compile_Mode_Function = compile_static_variable_mode;
- else
- SLang_verror (SL_NOT_IMPLEMENTED, "static variables not permitted in functions");
- break;
-
- case PRIVATE_TOKEN:
- if (Lang_Defining_Function == 0)
- Compile_Mode_Function = compile_private_variable_mode;
- else
- SLang_verror (SL_NOT_IMPLEMENTED, "private variables not permitted in functions");
- break;
-
- case PUBLIC_TOKEN:
- if (Lang_Defining_Function == 0)
- Compile_Mode_Function = compile_public_variable_mode;
- else
- SLang_verror (SL_NOT_IMPLEMENTED, "public variables not permitted in functions");
- break;
-
- case OBRACKET_TOKEN:
- if (Lang_Defining_Function == 0)
- Compile_Mode_Function = Default_Variable_Mode;
- else
- Compile_Mode_Function = compile_local_variable_mode;
- break;
-
- case OPAREN_TOKEN:
- lang_begin_function ();
- break;
-
- case DEFINE_STATIC_TOKEN:
- if (Lang_Defining_Function)
- define_static_function (t->v.s_val, t->hash);
- else SLang_Error = SL_SYNTAX_ERROR;
- break;
-
- case DEFINE_PRIVATE_TOKEN:
- if (Lang_Defining_Function)
- define_private_function (t->v.s_val, t->hash);
- else SLang_Error = SL_SYNTAX_ERROR;
- break;
-
- case DEFINE_PUBLIC_TOKEN:
- if (Lang_Defining_Function)
- define_public_function (t->v.s_val, t->hash);
- else SLang_Error = SL_SYNTAX_ERROR;
- break;
-
- case DEFINE_TOKEN:
- if (Lang_Defining_Function)
- (*Default_Define_Function) (t->v.s_val, t->hash);
- else
- SLang_Error = SL_SYNTAX_ERROR;
- break;
-
- case CPAREN_TOKEN:
- if (Lang_Defining_Function)
- Compile_Mode_Function = compile_function_mode;
- else SLang_Error = SL_SYNTAX_ERROR;
- break;
-
- case CBRACE_TOKEN:
- lang_end_block ();
- Compile_Mode_Function = compile_directive_mode;
- break;
-
- case OBRACE_TOKEN:
- lang_begin_block ();
- break;
-
- case FARG_TOKEN:
- Function_Args_Number = Local_Variable_Number;
- break;
-
-#if _SLANG_HAS_DEBUG_CODE
- case LINE_NUM_TOKEN:
- Compile_ByteCode_Ptr->bc_main_type = _SLANG_BC_LINE_NUM;
- Compile_ByteCode_Ptr->b.l_blk = t->v.long_val;
- lang_try_now ();
- break;
-#endif
- case POUND_TOKEN:
- compile_call_direct (_SLarray_matrix_multiply, _SLANG_BC_CALL_DIRECT);
- break;
- }
-}
-
-void _SLcompile (_SLang_Token_Type *t)
-{
- if (SLang_Error == 0)
- {
- if (Compile_Mode_Function != compile_basic_token_mode)
- {
- if (Compile_Mode_Function == NULL)
- Compile_Mode_Function = compile_basic_token_mode;
-#if _SLANG_HAS_DEBUG_CODE
- if (t->type == LINE_NUM_TOKEN)
- {
- compile_basic_token_mode (t);
- return;
- }
-#endif
- }
-
- (*Compile_Mode_Function) (t);
- }
-
- if (SLang_Error)
- {
- Compile_Mode_Function = compile_basic_token_mode;
- SLang_restart (0);
- }
-}
-
-void (*_SLcompile_ptr)(_SLang_Token_Type *) = _SLcompile;
-
-typedef struct _Compile_Context_Type
-{
- struct _Compile_Context_Type *next;
- SLang_NameSpace_Type *static_namespace;
- void (*compile_variable_mode) (_SLang_Token_Type *);
- void (*define_function) (char *, unsigned long);
- int lang_defining_function;
- int local_variable_number;
- unsigned int function_args_number;
- SLang_Name_Type **locals_hash_table;
- void (*compile_mode_function)(_SLang_Token_Type *);
-#if _SLANG_HAS_DEBUG_CODE
- char *compile_filename;
-#endif
-}
-Compile_Context_Type;
-
-static Compile_Context_Type *Compile_Context_Stack;
-
-/* The only way the push/pop_context functions can get called is via
- * an eval type function. That can only happen when executed from a
- * top level block. This means that Compile_ByteCode_Ptr can always be
- * rest back to the beginning of a block.
- */
-
-static int pop_compile_context (void)
-{
- Compile_Context_Type *cc;
-
- if (NULL == (cc = Compile_Context_Stack))
- return -1;
-
- This_Static_NameSpace = cc->static_namespace;
- Compile_Context_Stack = cc->next;
- Default_Variable_Mode = cc->compile_variable_mode;
- Default_Define_Function = cc->define_function;
- Compile_Mode_Function = cc->compile_mode_function;
-
- Lang_Defining_Function = cc->lang_defining_function;
- Local_Variable_Number = cc->local_variable_number;
- Function_Args_Number = cc->function_args_number;
-
-#if _SLANG_HAS_DEBUG_CODE
- SLang_free_slstring (This_Compile_Filename);
- This_Compile_Filename = cc->compile_filename;
-#endif
-
- SLfree ((char *) Locals_Hash_Table);
- Locals_Hash_Table = cc->locals_hash_table;
-
- SLfree ((char *) cc);
-
- return 0;
-}
-
-static int push_compile_context (char *name)
-{
- Compile_Context_Type *cc;
- SLang_Name_Type **lns;
-
- cc = (Compile_Context_Type *)SLmalloc (sizeof (Compile_Context_Type));
- if (cc == NULL)
- return -1;
- memset ((char *) cc, 0, sizeof (Compile_Context_Type));
-
- lns = (SLang_Name_Type **) SLcalloc (sizeof (SLang_Name_Type *), SLLOCALS_HASH_TABLE_SIZE);
- if (lns == NULL)
- {
- SLfree ((char *) cc);
- return -1;
- }
-
-#if _SLANG_HAS_DEBUG_CODE
- if ((name != NULL)
- && (NULL == (name = SLang_create_slstring (name))))
- {
- SLfree ((char *) cc);
- SLfree ((char *) lns);
- return -1;
- }
-
- cc->compile_filename = This_Compile_Filename;
- This_Compile_Filename = name;
-#endif
-
- cc->static_namespace = This_Static_NameSpace;
- cc->compile_variable_mode = Default_Variable_Mode;
- cc->define_function = Default_Define_Function;
- cc->locals_hash_table = Locals_Hash_Table;
-
- cc->lang_defining_function = Lang_Defining_Function;
- cc->local_variable_number = Local_Variable_Number;
- cc->function_args_number = Function_Args_Number;
- cc->locals_hash_table = Locals_Hash_Table;
- cc->compile_mode_function = Compile_Mode_Function;
-
- cc->next = Compile_Context_Stack;
- Compile_Context_Stack = cc;
-
- Compile_Mode_Function = compile_basic_token_mode;
- Default_Variable_Mode = compile_public_variable_mode;
- Default_Define_Function = define_public_function;
- Lang_Defining_Function = 0;
- Local_Variable_Number = 0;
- Function_Args_Number = 0;
- Locals_Hash_Table = lns;
- return 0;
-}
-
-static int init_interpreter (void)
-{
- SLang_NameSpace_Type *ns;
-
- if (Global_NameSpace != NULL)
- return 0;
-
- if (NULL == (ns = _SLns_allocate_namespace ("***GLOBAL***", SLGLOBALS_HASH_TABLE_SIZE)))
- return -1;
- if (-1 == _SLns_set_namespace_name (ns, "Global"))
- return -1;
- Global_NameSpace = ns;
-
- _SLRun_Stack = (SLang_Object_Type *) SLcalloc (SLANG_MAX_STACK_LEN,
- sizeof (SLang_Object_Type));
- if (_SLRun_Stack == NULL)
- return -1;
-
- _SLStack_Pointer = _SLRun_Stack;
- _SLStack_Pointer_Max = _SLRun_Stack + SLANG_MAX_STACK_LEN;
-
- SLShort_Blocks[0].bc_main_type = _SLANG_BC_RETURN;
- SLShort_Blocks[2].bc_main_type = _SLANG_BC_BREAK;
- SLShort_Blocks[4].bc_main_type = _SLANG_BC_CONTINUE;
-
- Num_Args_Stack = (int *) SLmalloc (sizeof (int) * SLANG_MAX_RECURSIVE_DEPTH);
- if (Num_Args_Stack == NULL)
- {
- SLfree ((char *) _SLRun_Stack);
- return -1;
- }
- Recursion_Depth = 0;
- Frame_Pointer_Stack = (unsigned int *) SLmalloc (sizeof (unsigned int) * SLANG_MAX_RECURSIVE_DEPTH);
- if (Frame_Pointer_Stack == NULL)
- {
- SLfree ((char *) _SLRun_Stack);
- SLfree ((char *)Num_Args_Stack);
- return -1;
- }
- Frame_Pointer_Depth = 0;
- Frame_Pointer = _SLRun_Stack;
-
- Default_Variable_Mode = compile_public_variable_mode;
- Default_Define_Function = define_public_function;
- return 0;
-}
-
-static int add_generic_table (SLang_NameSpace_Type *ns,
- SLang_Name_Type *table, char *pp_name,
- unsigned int entry_len)
-{
- SLang_Name_Type *t, **ns_table;
- char *name;
- unsigned int table_size;
-
- if (-1 == init_interpreter ())
- return -1;
-
- if (ns == NULL)
- ns = Global_NameSpace;
-
- ns_table = ns->table;
- table_size = ns->table_size;
-
- if ((pp_name != NULL)
- && (-1 == SLdefine_for_ifdef (pp_name)))
- return -1;
-
- t = table;
- while (NULL != (name = t->name))
- {
- unsigned long hash;
-
- /* Backward compatibility: '.' WAS used as hash marker */
- if (*name == '.')
- {
- name++;
- t->name = name;
- }
-
- if (NULL == (name = SLang_create_slstring (name)))
- return -1;
-
- t->name = name;
-
- hash = _SLcompute_string_hash (name);
- hash = hash % table_size;
-
- t->next = ns_table [(unsigned int) hash];
- ns_table [(unsigned int) hash] = t;
-
- t = (SLang_Name_Type *) ((char *)t + entry_len);
- }
-
- return 0;
-}
-
-int SLadd_intrin_fun_table (SLang_Intrin_Fun_Type *tbl, char *pp)
-{
- return add_generic_table (NULL, (SLang_Name_Type *) tbl, pp, sizeof (SLang_Intrin_Fun_Type));
-}
-
-int SLadd_intrin_var_table (SLang_Intrin_Var_Type *tbl, char *pp)
-{
- return add_generic_table (NULL, (SLang_Name_Type *) tbl, pp, sizeof (SLang_Intrin_Var_Type));
-}
-
-int SLadd_app_unary_table (SLang_App_Unary_Type *tbl, char *pp)
-{
- return add_generic_table (NULL, (SLang_Name_Type *) tbl, pp, sizeof (SLang_App_Unary_Type));
-}
-
-int SLadd_math_unary_table (SLang_Math_Unary_Type *tbl, char *pp)
-{
- return add_generic_table (NULL, (SLang_Name_Type *) tbl, pp, sizeof (SLang_Math_Unary_Type));
-}
-
-int SLadd_iconstant_table (SLang_IConstant_Type *tbl, char *pp)
-{
- return add_generic_table (NULL, (SLang_Name_Type *) tbl, pp, sizeof (SLang_IConstant_Type));
-}
-
-#if SLANG_HAS_FLOAT
-int SLadd_dconstant_table (SLang_DConstant_Type *tbl, char *pp)
-{
- return add_generic_table (NULL, (SLang_Name_Type *) tbl, pp, sizeof (SLang_DConstant_Type));
-}
-#endif
-
-/* ----------- */
-int SLns_add_intrin_fun_table (SLang_NameSpace_Type *ns, SLang_Intrin_Fun_Type *tbl, char *pp)
-{
- return add_generic_table (ns, (SLang_Name_Type *) tbl, pp, sizeof (SLang_Intrin_Fun_Type));
-}
-
-int SLns_add_intrin_var_table (SLang_NameSpace_Type *ns, SLang_Intrin_Var_Type *tbl, char *pp)
-{
- return add_generic_table (ns, (SLang_Name_Type *) tbl, pp, sizeof (SLang_Intrin_Var_Type));
-}
-
-int SLns_add_app_unary_table (SLang_NameSpace_Type *ns, SLang_App_Unary_Type *tbl, char *pp)
-{
- return add_generic_table (ns, (SLang_Name_Type *) tbl, pp, sizeof (SLang_App_Unary_Type));
-}
-
-int SLns_add_math_unary_table (SLang_NameSpace_Type *ns, SLang_Math_Unary_Type *tbl, char *pp)
-{
- return add_generic_table (ns, (SLang_Name_Type *) tbl, pp, sizeof (SLang_Math_Unary_Type));
-}
-
-int SLns_add_iconstant_table (SLang_NameSpace_Type *ns, SLang_IConstant_Type *tbl, char *pp)
-{
- return add_generic_table (ns, (SLang_Name_Type *) tbl, pp, sizeof (SLang_IConstant_Type));
-}
-
-#if SLANG_HAS_FLOAT
-int SLns_add_dconstant_table (SLang_NameSpace_Type *ns, SLang_DConstant_Type *tbl, char *pp)
-{
- return add_generic_table (ns, (SLang_Name_Type *) tbl, pp, sizeof (SLang_DConstant_Type));
-}
-#endif
-
-/* what is a bitmapped value:
- * 1 intrin fun
- * 2 user fun
- * 4 intrin var
- * 8 user defined var
- */
-SLang_Array_Type *_SLang_apropos (char *namespace_name, char *pat, unsigned int what)
-{
- SLang_NameSpace_Type *ns;
-
- if (namespace_name == NULL)
- namespace_name = "Global";
-
- if (*namespace_name == 0)
- ns = This_Static_NameSpace;
- else ns = _SLns_find_namespace (namespace_name);
-
- return _SLnspace_apropos (ns, pat, what);
-}
-
-void _SLang_implements_intrinsic (char *name)
-{
- if (This_Static_NameSpace == NULL)
- {
- SLang_verror (SL_INTRINSIC_ERROR, "No namespace available");
- return;
- }
-
- (void) _SLns_set_namespace_name (This_Static_NameSpace, name);
-
- Default_Define_Function = define_static_function;
- Default_Variable_Mode = compile_static_variable_mode;
-}
-
-void _SLang_use_namespace_intrinsic (char *name)
-{
- SLang_NameSpace_Type *ns;
-
- if (NULL == (ns = _SLns_find_namespace (name)))
- {
- SLang_verror (SL_INTRINSIC_ERROR, "Namespace %s does not exist", name);
- return;
- }
- This_Static_NameSpace = ns;
- if (Global_NameSpace == ns)
- {
- Default_Define_Function = define_public_function;
- Default_Variable_Mode = compile_public_variable_mode;
- }
- else
- {
- Default_Define_Function = define_static_function;
- Default_Variable_Mode = compile_static_variable_mode;
- }
-}
-
-
-char *_SLang_cur_namespace_intrinsic (void)
-{
- if (This_Static_NameSpace == NULL)
- return "Global";
-
- if (This_Static_NameSpace->namespace_name == NULL)
- return "";
-
- return This_Static_NameSpace->namespace_name;
-}
diff --git a/mdk-stage1/slang/slang.h b/mdk-stage1/slang/slang.h
deleted file mode 100644
index 900b14043..000000000
--- a/mdk-stage1/slang/slang.h
+++ /dev/null
@@ -1,1930 +0,0 @@
-#ifndef DAVIS_SLANG_H_
-#define DAVIS_SLANG_H_
-/* -*- mode: C; mode: fold; -*- */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#define SLANG_VERSION 10404
-#define SLANG_VERSION_STRING "1.4.4"
-
-/*{{{ System Dependent Macros and Typedefs */
-
-#if defined(__WATCOMC__) && defined(DOS)
-# ifndef __MSDOS__
-# define __MSDOS__
-# endif
-# ifndef DOS386
-# define DOS386
-# endif
-# ifndef IBMPC_SYSTEM
-# define IBMPC_SYSTEM
-# endif
-#endif /* __watcomc__ */
-
-#if defined(unix) || defined(__unix)
-# ifndef __unix__
-# define __unix__ 1
-# endif
-#endif
-
-#if !defined(__GO32__)
-# ifdef __unix__
-# define REAL_UNIX_SYSTEM
-# endif
-#endif
-
-/* Set of the various defines for pc systems. This includes OS/2 */
-#ifdef __GO32__
-# ifndef __DJGPP__
-# define __DJGPP__ 1
-# endif
-# ifndef IBMPC_SYSTEM
-# define IBMPC_SYSTEM
-# endif
-#endif
-
-#ifdef __BORLANDC__
-# ifndef IBMPC_SYSTEM
-# define IBMPC_SYSTEM
-# endif
-#endif
-
-#ifdef __MSDOS__
-# ifndef IBMPC_SYSTEM
-# define IBMPC_SYSTEM
-# endif
-#endif
-
-#if defined(OS2) || defined(__os2__)
-# ifndef IBMPC_SYSTEM
-# define IBMPC_SYSTEM
-# endif
-# ifndef __os2__
-# define __os2__
-# endif
-#endif
-
-#if defined(__NT__) || defined(__MINGW32__) || defined(__CYGWIN32__)
-# ifndef IBMPC_SYSTEM
-# define IBMPC_SYSTEM
-# endif
-#endif
-
-#if defined(IBMPC_SYSTEM) || defined(VMS)
-# ifdef REAL_UNIX_SYSTEM
-# undef REAL_UNIX_SYSTEM
-# endif
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-#if 0
-}
-#endif
-
-#include <stdio.h>
-#include <stdarg.h>
-#if defined(__STDC__) || defined(__BORLANDC__) || defined(__cplusplus)
-# include <stddef.h> /* for offsetof */
-#endif
-
-/* ---------------------------- Generic Macros ----------------------------- */
-
-/* __SC__ is defined for Symantec C++
- DOS386 is defined for -mx memory model, 32 bit DOS extender. */
-
-#if defined(__SC__) && !defined(DOS386)
-# include <dos.h>
-#endif
-
-#if defined(__BORLANDC__)
-# include <alloc.h>
-#endif
-
-#if defined (__cplusplus) || defined(__STDC__) || defined(IBMPC_SYSTEM)
- typedef void *VOID_STAR;
-#else
- typedef unsigned char *VOID_STAR;
-#endif
-
-typedef int (*FVOID_STAR)(void);
-
-#if defined(__MSDOS_) && defined(__BORLANDC__)
-# define SLFREE(buf) farfree((void far *)(buf))
-# define SLMALLOC(x) farmalloc((unsigned long) (x))
-# define SLREALLOC(buf, n) farrealloc((void far *) (buf), (unsigned long) (n))
-# define SLCALLOC(n, m) farcalloc((unsigned long) (n), (unsigned long) (m))
-#else
-# if defined(VMS) && !defined(__DECC)
-# define SLFREE VAXC$FREE_OPT
-# define SLMALLOC VAXC$MALLOC_OPT
-# define SLREALLOC VAXC$REALLOC_OPT
-# define SLCALLOC VAXC$CALLOC_OPT
-# else
-# define SLFREE(x) free((char *)(x))
-# define SLMALLOC malloc
-# define SLREALLOC realloc
-# define SLCALLOC calloc
-# endif
-#endif
-
- extern char *SLdebug_malloc (unsigned long);
- extern char *SLdebug_calloc (unsigned long, unsigned long);
- extern char *SLdebug_realloc (char *, unsigned long);
- extern void SLdebug_free (char *);
- extern void SLmalloc_dump_statistics (void);
- extern char *SLstrcpy(register char *, register char *);
- extern int SLstrcmp(register char *, register char *);
- extern char *SLstrncpy(char *, register char *, register int);
-
- extern void SLmemset (char *, char, int);
- extern char *SLmemchr (register char *, register char, register int);
- extern char *SLmemcpy (char *, char *, int);
- extern int SLmemcmp (char *, char *, int);
-
-/*}}}*/
-
-/*{{{ Interpreter Typedefs */
-
-typedef struct _SLang_Name_Type
-{
- char *name;
- struct _SLang_Name_Type *next;
- char name_type;
- /* These values must be less than 0x10 because they map directly
- * to byte codes. See _slang.h.
- */
-#define SLANG_LVARIABLE 0x01
-#define SLANG_GVARIABLE 0x02
-#define SLANG_IVARIABLE 0x03 /* intrinsic variables */
- /* Note!!! For Macro MAKE_VARIABLE below to work, SLANG_IVARIABLE Must
- be 1 less than SLANG_RVARIABLE!!! */
-#define SLANG_RVARIABLE 0x04 /* read only variable */
-#define SLANG_INTRINSIC 0x05
-#define SLANG_FUNCTION 0x06
-#define SLANG_MATH_UNARY 0x07
-#define SLANG_APP_UNARY 0x08
-#define SLANG_ICONSTANT 0x09
-#define SLANG_DCONSTANT 0x0A
-#define SLANG_PVARIABLE 0x0B /* private */
-#define SLANG_PFUNCTION 0x0C /* private */
-
- /* Rest of fields depend on name type */
-}
-SLang_Name_Type;
-
-typedef struct
-{
- char *name;
- struct _SLang_Name_Type *next; /* this is for the hash table */
- char name_type;
-
- FVOID_STAR i_fun; /* address of object */
-
- /* Do not change this without modifying slang.c:execute_intrinsic_fun */
-#define SLANG_MAX_INTRIN_ARGS 7
- unsigned char arg_types [SLANG_MAX_INTRIN_ARGS];
- unsigned char num_args;
- unsigned char return_type;
-}
-SLang_Intrin_Fun_Type;
-
-typedef struct
-{
- char *name;
- SLang_Name_Type *next;
- char name_type;
-
- VOID_STAR addr;
- unsigned char type;
-}
-SLang_Intrin_Var_Type;
-
-typedef struct
-{
- char *name;
- SLang_Name_Type *next;
- char name_type;
-
- int unary_op;
-}
-SLang_App_Unary_Type;
-
-typedef struct
-{
- char *name;
- SLang_Name_Type *next;
- char name_type;
-
- int unary_op;
-}
-SLang_Math_Unary_Type;
-
-typedef struct
-{
- char *name;
- SLang_Name_Type *next;
- char name_type;
- int i;
-}
-SLang_IConstant_Type;
-
-typedef struct
-{
- char *name;
- SLang_Name_Type *next;
- char name_type;
- double d;
-}
-SLang_DConstant_Type;
-
-typedef struct
-{
- char *field_name;
- unsigned int offset;
- unsigned char type;
- unsigned char read_only;
-}
-SLang_IStruct_Field_Type;
-
-extern int SLadd_intrin_fun_table (SLang_Intrin_Fun_Type *, char *);
-extern int SLadd_intrin_var_table (SLang_Intrin_Var_Type *, char *);
-extern int SLadd_app_unary_table (SLang_App_Unary_Type *, char *);
-extern int SLadd_math_unary_table (SLang_Math_Unary_Type *, char *);
-extern int SLadd_iconstant_table (SLang_IConstant_Type *, char *);
-extern int SLadd_dconstant_table (SLang_DConstant_Type *, char *);
-extern int SLadd_istruct_table (SLang_IStruct_Field_Type *, VOID_STAR, char *);
-
-typedef struct _SLang_NameSpace_Type SLang_NameSpace_Type;
-
-extern int SLns_add_intrin_fun_table (SLang_NameSpace_Type *, SLang_Intrin_Fun_Type *, char *);
-extern int SLns_add_intrin_var_table (SLang_NameSpace_Type *, SLang_Intrin_Var_Type *, char *);
-extern int SLns_add_app_unary_table (SLang_NameSpace_Type *, SLang_App_Unary_Type *, char *);
-extern int SLns_add_math_unary_table (SLang_NameSpace_Type *, SLang_Math_Unary_Type *, char *);
-extern int SLns_add_iconstant_table (SLang_NameSpace_Type *, SLang_IConstant_Type *, char *);
-extern int SLns_add_dconstant_table (SLang_NameSpace_Type *, SLang_DConstant_Type *, char *);
-extern int SLns_add_istruct_table (SLang_NameSpace_Type *, SLang_IStruct_Field_Type *, VOID_STAR, char *);
-
-extern SLang_NameSpace_Type *SLns_create_namespace (char *);
-extern void SLns_delete_namespace (SLang_NameSpace_Type *);
-
-typedef struct SLang_Load_Type
-{
- int type;
-
- VOID_STAR client_data;
- /* Pointer to data that client needs for loading */
-
- int auto_declare_globals;
- /* if non-zero, undefined global variables are declared as static */
-
- char *(*read)(struct SLang_Load_Type *);
- /* function to call to read next line from obj. */
-
- unsigned int line_num;
- /* Number of lines read, used for error reporting */
-
- int parse_level;
- /* 0 if at top level of parsing */
-
- char *name;
- /* Name of this object, e.g., filename. This name should be unique because
- * it alone determines the name space for static objects associated with
- * the compilable unit.
- */
-
- unsigned long reserved[4];
- /* For future expansion */
-} SLang_Load_Type;
-
-extern SLang_Load_Type *SLallocate_load_type (char *);
-extern void SLdeallocate_load_type (SLang_Load_Type *);
-
-/* Returns SLang_Error upon failure */
-extern int SLang_load_object (SLang_Load_Type *);
-extern int (*SLang_Load_File_Hook)(char *);
-extern int (*SLang_Auto_Declare_Var_Hook) (char *);
-
-extern int SLang_generate_debug_info (int);
-
-
-#if defined(ultrix) && !defined(__GNUC__)
-# ifndef NO_PROTOTYPES
-# define NO_PROTOTYPES
-# endif
-#endif
-
-#ifndef NO_PROTOTYPES
-# define _PROTO(x) x
-#else
-# define _PROTO(x) ()
-#endif
-
-typedef struct SL_OOBinary_Type
-{
- unsigned char data_type; /* partner type for binary op */
-
- int (*binary_function)_PROTO((int,
- unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR));
-
- int (*binary_result) _PROTO((int, unsigned char, unsigned char, unsigned char *));
- struct SL_OOBinary_Type *next;
-}
-SL_OOBinary_Type;
-
-typedef struct _SL_Typecast_Type
-{
- unsigned char data_type; /* to_type */
- int allow_implicit;
-
- int (*typecast)_PROTO((unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR));
- struct _SL_Typecast_Type *next;
-}
-SL_Typecast_Type;
-
-typedef struct _SLang_Struct_Type SLang_Struct_Type;
-
-#if defined(SL_APP_WANTS_FOREACH)
-/* It is up to the application to define struct _SLang_Foreach_Context_Type */
-typedef struct _SLang_Foreach_Context_Type SLang_Foreach_Context_Type;
-#else
-typedef int SLang_Foreach_Context_Type;
-#endif
-
-typedef struct
-{
- unsigned char cl_class_type;
-#define SLANG_CLASS_TYPE_MMT 0
-#define SLANG_CLASS_TYPE_SCALAR 1
-#define SLANG_CLASS_TYPE_VECTOR 2
-#define SLANG_CLASS_TYPE_PTR 3
-
- unsigned int cl_data_type; /* SLANG_INTEGER_TYPE, etc... */
- char *cl_name; /* slstring type */
-
- unsigned int cl_sizeof_type;
- VOID_STAR cl_transfer_buf; /* cl_sizeof_type bytes*/
-
- /* Methods */
-
- /* Most of the method functions are prototyped:
- * int method (unsigned char type, VOID_STAR addr);
- * Here, @type@ represents the type of object that the method is asked
- * to deal with. The second parameter @addr@ will contain the ADDRESS of
- * the object. For example, if type is SLANG_INT_TYPE, then @addr@ will
- * actually be int *. Similary, if type is SLANG_STRING_TYPE,
- * then @addr@ will contain the address of the string, i.e., char **.
- */
-
- void (*cl_destroy)_PROTO((unsigned char, VOID_STAR));
- /* Prototype: void destroy(unsigned type, VOID_STAR val)
- * Called to delete/free the object */
-
- char *(*cl_string)_PROTO((unsigned char, VOID_STAR));
- /* Prototype: char *to_string (unsigned char t, VOID_STAR p);
- * Here p is a pointer to the object for which a string representation
- * is to be returned. The returned pointer is to be a MALLOCED string.
- */
-
- /* Prototype: void push(unsigned char type, VOID_STAR v);
- * Push a copy of the object of type @type@ at address @v@ onto the
- * stack.
- */
- int (*cl_push)_PROTO((unsigned char, VOID_STAR));
-
- /* Prototype: int pop(unsigned char type, VOID_STAR v);
- * Pops value from stack and assign it to object, whose address is @v@.
- */
- int (*cl_pop)_PROTO((unsigned char, VOID_STAR));
-
- int (*cl_unary_op_result_type)_PROTO((int, unsigned char, unsigned char *));
- int (*cl_unary_op)_PROTO((int, unsigned char, VOID_STAR, unsigned int, VOID_STAR));
-
- int (*cl_app_unary_op_result_type)_PROTO((int, unsigned char, unsigned char *));
- int (*cl_app_unary_op)_PROTO((int, unsigned char, VOID_STAR, unsigned int, VOID_STAR));
-
- /* If this function is non-NULL, it will be called for sin, cos, etc... */
-#define SLMATH_SIN 1
-#define SLMATH_COS 2
-#define SLMATH_TAN 3
-#define SLMATH_ATAN 4
-#define SLMATH_ASIN 5
-#define SLMATH_ACOS 6
-#define SLMATH_EXP 7
-#define SLMATH_LOG 8
-#define SLMATH_SQRT 9
-#define SLMATH_LOG10 10
-#define SLMATH_REAL 11
-#define SLMATH_IMAG 12
-#define SLMATH_SINH 13
-#define SLMATH_COSH 14
-#define SLMATH_TANH 15
-#define SLMATH_ATANH 16
-#define SLMATH_ASINH 17
-#define SLMATH_ACOSH 18
-#define SLMATH_TODOUBLE 19
-#define SLMATH_CONJ 20
-
- int (*cl_math_op)_PROTO((int, unsigned char, VOID_STAR, unsigned int, VOID_STAR));
- int (*cl_math_op_result_type)_PROTO((int, unsigned char, unsigned char *));
-
- SL_OOBinary_Type *cl_binary_ops;
- SL_Typecast_Type *cl_typecast_funs;
-
- void (*cl_byte_code_destroy)_PROTO((unsigned char, VOID_STAR));
- void (*cl_user_destroy_fun)_PROTO((unsigned char, VOID_STAR));
- int (*cl_init_array_object)_PROTO((unsigned char, VOID_STAR));
- int (*cl_datatype_deref)_PROTO((unsigned char));
- SLang_Struct_Type *cl_struct_def;
- int (*cl_dereference) _PROTO((unsigned char, VOID_STAR));
- int (*cl_acopy) (unsigned char, VOID_STAR, VOID_STAR);
- int (*cl_apop) _PROTO((unsigned char, VOID_STAR));
- int (*cl_apush) _PROTO((unsigned char, VOID_STAR));
- int (*cl_push_literal) _PROTO((unsigned char, VOID_STAR));
- void (*cl_adestroy)_PROTO((unsigned char, VOID_STAR));
- int (*cl_push_intrinsic)_PROTO((unsigned char, VOID_STAR));
- int (*cl_void_typecast)_PROTO((unsigned char, VOID_STAR, unsigned int, unsigned char, VOID_STAR));
-
- int (*cl_anytype_typecast)_PROTO((unsigned char, VOID_STAR, unsigned int, unsigned char, VOID_STAR));
-
- /* Array access functions */
- int (*cl_aput) (unsigned char, unsigned int);
- int (*cl_aget) (unsigned char, unsigned int);
- int (*cl_anew) (unsigned char, unsigned int);
-
- /* length method */
- int (*cl_length) (unsigned char, VOID_STAR, unsigned int *);
-
- /* foreach */
- SLang_Foreach_Context_Type *(*cl_foreach_open) (unsigned char, unsigned int);
- void (*cl_foreach_close) (unsigned char, SLang_Foreach_Context_Type *);
- int (*cl_foreach) (unsigned char, SLang_Foreach_Context_Type *);
-
- /* Structure access: get and put (assign to) fields */
- int (*cl_sput) (unsigned char, char *);
- int (*cl_sget) (unsigned char, char *);
-
- /* File I/O */
- int (*cl_fread) (unsigned char, FILE *, VOID_STAR, unsigned int, unsigned int *);
- int (*cl_fwrite) (unsigned char, FILE *, VOID_STAR, unsigned int, unsigned int *);
- int (*cl_fdread) (unsigned char, int, VOID_STAR, unsigned int, unsigned int *);
- int (*cl_fdwrite) (unsigned char, int, VOID_STAR, unsigned int, unsigned int *);
-
- int (*cl_to_bool) (unsigned char, int *);
-
- int (*cl_cmp)(unsigned char, VOID_STAR, VOID_STAR, int *);
-
-} SLang_Class_Type;
-
-/* These are the low-level functions for building push/pop methods. They
- * know nothing about memory management. For SLANG_CLASS_TYPE_MMT, use the
- * MMT push/pop functions instead.
- */
-extern int SLclass_push_double_obj (unsigned char, double);
-extern int SLclass_push_float_obj (unsigned char, float);
-extern int SLclass_push_long_obj (unsigned char, long);
-extern int SLclass_push_int_obj (unsigned char, int);
-extern int SLclass_push_short_obj (unsigned char, short);
-extern int SLclass_push_char_obj (unsigned char, char);
-extern int SLclass_push_ptr_obj (unsigned char, VOID_STAR);
-extern int SLclass_pop_double_obj (unsigned char, double *);
-extern int SLclass_pop_float_obj (unsigned char, float *);
-extern int SLclass_pop_long_obj (unsigned char, long *);
-extern int SLclass_pop_int_obj (unsigned char, int *);
-extern int SLclass_pop_short_obj (unsigned char, short *);
-extern int SLclass_pop_char_obj (unsigned char, char *);
-extern int SLclass_pop_ptr_obj (unsigned char, VOID_STAR *);
-
-extern SLang_Class_Type *SLclass_allocate_class (char *);
-extern int SLclass_get_class_id (SLang_Class_Type *cl);
-extern int SLclass_create_synonym (char *, unsigned char);
-extern int SLclass_is_class_defined (unsigned char);
-
-extern int SLclass_register_class (SLang_Class_Type *, unsigned char, unsigned int, unsigned char);
-extern int SLclass_set_string_function (SLang_Class_Type *, char *(*)(unsigned char, VOID_STAR));
-extern int SLclass_set_destroy_function (SLang_Class_Type *, void (*)(unsigned char, VOID_STAR));
-extern int SLclass_set_push_function (SLang_Class_Type *, int (*)(unsigned char, VOID_STAR));
-extern int SLclass_set_pop_function (SLang_Class_Type *, int (*)(unsigned char, VOID_STAR));
-
-extern int SLclass_set_aget_function (SLang_Class_Type *, int (*)(unsigned char, unsigned int));
-extern int SLclass_set_aput_function (SLang_Class_Type *, int (*)(unsigned char, unsigned int));
-extern int SLclass_set_anew_function (SLang_Class_Type *, int (*)(unsigned char, unsigned int));
-
-extern int SLclass_set_sget_function (SLang_Class_Type *, int (*)(unsigned char, char *));
-extern int SLclass_set_sput_function (SLang_Class_Type *, int (*)(unsigned char, char *));
-
-/* Typecast object on the stack to type p1. p2 and p3 should be set to 1 */
-extern int SLclass_typecast (unsigned char, int, int);
-
-extern int SLclass_add_unary_op (unsigned char,
- int (*) (int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR),
- int (*) (int, unsigned char, unsigned char *));
-
-extern int
-SLclass_add_app_unary_op (unsigned char,
- int (*) (int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR),
- int (*) (int, unsigned char, unsigned char *));
-
-extern int
-SLclass_add_binary_op (unsigned char, unsigned char,
- int (*) (int,
- unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR),
- int (*) (int, unsigned char, unsigned char, unsigned char *));
-
-extern int
-SLclass_add_math_op (unsigned char,
- int (*)(int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR),
- int (*)(int, unsigned char, unsigned char *));
-
-extern int
-SLclass_add_typecast (unsigned char /* from */, unsigned char /* to */,
- int (*)_PROTO((unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR)),
- int /* allow implicit typecasts */
- );
-
-extern char *SLclass_get_datatype_name (unsigned char);
-
-extern double SLcomplex_abs (double *);
-extern double *SLcomplex_times (double *, double *, double *);
-extern double *SLcomplex_divide (double *, double *, double *);
-extern double *SLcomplex_sin (double *, double *);
-extern double *SLcomplex_cos (double *, double *);
-extern double *SLcomplex_tan (double *, double *);
-extern double *SLcomplex_asin (double *, double *);
-extern double *SLcomplex_acos (double *, double *);
-extern double *SLcomplex_atan (double *, double *);
-extern double *SLcomplex_exp (double *, double *);
-extern double *SLcomplex_log (double *, double *);
-extern double *SLcomplex_log10 (double *, double *);
-extern double *SLcomplex_sqrt (double *, double *);
-extern double *SLcomplex_sinh (double *, double *);
-extern double *SLcomplex_cosh (double *, double *);
-extern double *SLcomplex_tanh (double *, double *);
-extern double *SLcomplex_pow (double *, double *, double *);
-extern double SLmath_hypot (double x, double y);
-
-/* Not implemented yet */
-extern double *SLcomplex_asinh (double *, double *);
-extern double *SLcomplex_acosh (double *, double *);
-extern double *SLcomplex_atanh (double *, double *);
-
-#ifdef _SLANG_SOURCE_
-typedef struct _SLang_MMT_Type SLang_MMT_Type;
-#else
-typedef int SLang_MMT_Type;
-#endif
-
-extern void SLang_free_mmt (SLang_MMT_Type *);
-extern VOID_STAR SLang_object_from_mmt (SLang_MMT_Type *);
-extern SLang_MMT_Type *SLang_create_mmt (unsigned char, VOID_STAR);
-extern int SLang_push_mmt (SLang_MMT_Type *);
-extern SLang_MMT_Type *SLang_pop_mmt (unsigned char);
-extern void SLang_inc_mmt (SLang_MMT_Type *);
-
-/* Maximum number of dimensions of an array. */
-#define SLARRAY_MAX_DIMS 7
-typedef struct _SLang_Array_Type
-{
- unsigned char data_type;
- unsigned int sizeof_type;
- VOID_STAR data;
- unsigned int num_elements;
- unsigned int num_dims;
- int dims [SLARRAY_MAX_DIMS];
- VOID_STAR (*index_fun)_PROTO((struct _SLang_Array_Type *, int *));
- /* This function is designed to allow a type to store an array in
- * any manner it chooses. This function returns the address of the data
- * value at the specified index location.
- */
- unsigned int flags;
-#define SLARR_DATA_VALUE_IS_READ_ONLY 1
-#define SLARR_DATA_VALUE_IS_POINTER 2
-#define SLARR_DATA_VALUE_IS_RANGE 4
-#define SLARR_DATA_VALUE_IS_INTRINSIC 8
- SLang_Class_Type *cl;
- unsigned int num_refs;
-}
-SLang_Array_Type;
-
-extern int SLang_pop_array_of_type (SLang_Array_Type **, unsigned char);
-extern int SLang_pop_array (SLang_Array_Type **, int);
-extern int SLang_push_array (SLang_Array_Type *, int);
-extern void SLang_free_array (SLang_Array_Type *);
-extern SLang_Array_Type *SLang_create_array (unsigned char, int, VOID_STAR, int *, unsigned int);
-extern SLang_Array_Type *SLang_duplicate_array (SLang_Array_Type *);
-extern int SLang_get_array_element (SLang_Array_Type *, int *, VOID_STAR);
-extern int SLang_set_array_element (SLang_Array_Type *, int *, VOID_STAR);
-
-
-/*}}}*/
-
-/*{{{ Interpreter Function Prototypes */
-
- extern volatile int SLang_Error;
-/* Non zero if error occurs. Must be reset to zero to continue. */
-/* error codes, severe errors are less than 0 */
-#define SL_APPLICATION_ERROR -2
-#define SL_VARIABLE_UNINITIALIZED -3
-#define SL_INTERNAL_ERROR -5
-#define SL_STACK_OVERFLOW -6
-#define SL_STACK_UNDERFLOW -7
-#define SL_UNDEFINED_NAME -8
-#define SL_SYNTAX_ERROR -9
-#define SL_DUPLICATE_DEFINITION -10
-#define SL_TYPE_MISMATCH -11
-#define SL_OBJ_UNKNOWN -13
-#define SL_UNKNOWN_ERROR -14
-#define SL_TYPE_UNDEFINED_OP_ERROR -16
-
-#define SL_INTRINSIC_ERROR 1
-/* Intrinsic error is an error generated by intrinsic functions */
-#define SL_USER_BREAK 2
-#define SL_DIVIDE_ERROR 3
-#define SL_OBJ_NOPEN 4
-#define SL_USER_ERROR 5
-#define SL_USAGE_ERROR 6
-#define SL_READONLY_ERROR 7
-#define SL_INVALID_PARM 8
-#define SL_NOT_IMPLEMENTED 9
-#define SL_MALLOC_ERROR 10
-#define SL_OVERFLOW 11
-#define SL_FLOATING_EXCEPTION 12
-
-/* Compatibility */
-#define USER_BREAK SL_USER_BREAK
-#define INTRINSIC_ERROR SL_INTRINSIC_ERROR
-
- extern int SLang_Traceback;
- /* If non-zero, dump an S-Lang traceback upon error. Available as
- _traceback in S-Lang. */
-
- extern char *SLang_User_Prompt;
- /* Prompt to use when reading from stdin */
- extern int SLang_Version;
- extern char *SLang_Version_String;
-extern char *SLang_Doc_Dir;
-
-extern void (*SLang_VMessage_Hook) (char *, va_list);
-extern void SLang_vmessage (char *, ...);
-
- extern void (*SLang_Error_Hook)(char *);
- /* Pointer to application dependent error messaging routine. By default,
- messages are displayed on stderr. */
-
- extern void (*SLang_Exit_Error_Hook)(char *, va_list);
- extern void SLang_exit_error (char *, ...);
- extern void (*SLang_Dump_Routine)(char *);
- /* Called if S-Lang traceback is enabled as well as other debugging
- routines (e.g., trace). By default, these messages go to stderr. */
-
- extern void (*SLang_Interrupt)(void);
- /* function to call whenever inner interpreter is entered. This is
- a good place to set SLang_Error to USER_BREAK. */
-
- extern void (*SLang_User_Clear_Error)(void);
- /* function that gets called when '_clear_error' is called. */
-
- /* If non null, these call C functions before and after a slang function. */
- extern void (*SLang_Enter_Function)(char *);
-extern void (*SLang_Exit_Function)(char *);
-
-extern int SLang_Num_Function_Args;
-
-/* Functions: */
-
-extern int SLang_init_all (void);
-/* Initializes interpreter and all modules */
-
-extern int SLang_init_slang (void);
-/* This function is mandatory and must be called by all applications that
- * use the interpreter
- */
-extern int SLang_init_posix_process (void); /* process specific intrinsics */
-extern int SLang_init_stdio (void); /* fgets, etc. stdio functions */
-extern int SLang_init_posix_dir (void);
-extern int SLang_init_ospath (void);
-
-extern int SLang_init_slmath (void);
-/* called if math functions sin, cos, etc... are needed. */
-
- extern int SLang_init_slfile (void);
- extern int SLang_init_slunix (void);
- /* These functions are obsolte. Use init_stdio, posix_process, etc. */
-
-extern int SLang_init_slassoc (void);
-/* Assoc Arrays (Hashes) */
-
-extern int SLang_init_array (void);
-/* Additional arrays functions: transpose, etc... */
-
-/* Dynamic linking facility */
-extern int SLang_init_import (void);
-
- extern int SLang_load_file (char *);
- /* Load a file of S-Lang code for interpreting. If the parameter is
- * NULL, input comes from stdin. */
-
- extern void SLang_restart(int);
- /* should be called if an error occurs. If the passed integer is
- * non-zero, items are popped off the stack; otherwise, the stack is
- * left intact. Any time the stack is believed to be trashed, this routine
- * should be called with a non-zero argument (e.g., if setjmp/longjmp is
- * called). */
-
- extern int SLang_byte_compile_file(char *, int);
- /* takes a file of S-Lang code and ``byte-compiles'' it for faster
- * loading. The new filename is equivalent to the old except that a `c' is
- * appended to the name. (e.g., init.sl --> init.slc). The second
- * specified the method; currently, it is not used.
- */
-
- extern int SLang_autoload(char *, char *);
- /* Automatically load S-Lang function p1 from file p2. This function
- is also available via S-Lang */
-
- extern int SLang_load_string(char *);
- /* Like SLang_load_file except input is from a null terminated string. */
-
- extern int SLdo_pop(void);
- /* pops item off stack and frees any memory associated with it */
- extern int SLdo_pop_n(unsigned int);
- /* pops n items off stack and frees any memory associated with them */
-
-extern int SLang_pop_integer(int *);
-extern int SLang_pop_uinteger(unsigned int *);
- /* pops integer *p0 from the stack. Returns 0 upon success and non-zero
- * if the stack is empty or a type mismatch occurs, setting SLang_Error.
- */
-extern int SLang_pop_char (char *);
-extern int SLang_pop_uchar (unsigned char *);
-extern int SLang_pop_short(short *);
-extern int SLang_pop_ushort(unsigned short *);
-extern int SLang_pop_long(long *);
-extern int SLang_pop_ulong(unsigned long *);
-
-extern int SLang_pop_float(float *);
-extern int SLang_pop_double(double *, int *, int *);
- /* Pops double *p1 from stack. If *p3 is non-zero, *p1 was derived
- from the integer *p2. Returns zero upon success. */
-
- extern int SLang_pop_complex (double *, double *);
-
- extern int SLpop_string (char **);
- extern int SLang_pop_string(char **, int *);
- /* pops string *p0 from stack. If *p1 is non-zero, the string must be
- * freed after its use. DO NOT FREE p0 if *p1 IS ZERO! Returns 0 upon
- * success */
-
- extern int SLang_push_complex (double, double);
-
- extern int SLang_push_char (char);
- extern int SLang_push_uchar (unsigned char);
-
- extern int SLang_push_integer(int);
- extern int SLang_push_uinteger(unsigned int);
- /* push integer p1 on stack */
-
- extern int SLang_push_short(short);
- extern int SLang_push_ushort(unsigned short);
- extern int SLang_push_long(long);
- extern int SLang_push_ulong(unsigned long);
- extern int SLang_push_float(float);
- extern int SLang_push_double(double);
- /* Push double onto stack */
-
- extern int SLang_push_string(char *);
- /* Push string p1 onto stack */
-
- extern int SLang_push_malloced_string(char *);
- /* The normal SLang_push_string pushes an slstring. This one converts
- * a normally malloced string to an slstring, and then frees the
- * malloced string. So, do NOT use the malloced string after calling
- * this routine because it will be freed! The routine returns -1 upon
- * error, but the string will be freed.
- */
-
-extern int SLang_push_null (void);
-extern int SLang_pop_null (void);
-
-extern int SLang_push_value (unsigned char type, VOID_STAR);
-extern int SLang_pop_value (unsigned char type, VOID_STAR);
-extern void SLang_free_value (unsigned char type, VOID_STAR);
-
-typedef struct _SLang_Object_Type SLang_Any_Type;
-
-extern int SLang_pop_anytype (SLang_Any_Type **);
-extern int SLang_push_anytype (SLang_Any_Type *);
-extern void SLang_free_anytype (SLang_Any_Type *);
-
-#ifdef _SLANG_SOURCE_
-typedef struct _SLang_Ref_Type SLang_Ref_Type;
-#else
-typedef int SLang_Ref_Type;
-#endif
-
-extern int SLang_pop_ref (SLang_Ref_Type **);
-extern void SLang_free_ref (SLang_Ref_Type *);
-extern int SLang_assign_to_ref (SLang_Ref_Type *, unsigned char, VOID_STAR);
-extern SLang_Name_Type *SLang_pop_function (void);
-extern SLang_Name_Type *SLang_get_fun_from_ref (SLang_Ref_Type *);
-extern void SLang_free_function (SLang_Name_Type *f);
-
- extern int SLang_is_defined(char *);
- /* Return non-zero is p1 is defined otherwise returns 0. */
-
- extern int SLang_run_hooks(char *, unsigned int, ...);
- /* calls S-Lang function p1 pushing p2 strings in the variable argument
- * list onto the stack first.
- * Returns -1 upon error, 1 if hooks exists and it ran,
- * or 0 if hook does not exist. Thus it returns non-zero is hook was called.
- */
-
-/* These functions return 1 if the indicated function exists and the function
- * runs without error. If the function does not exist, the function returns
- * 0. Otherwise -1 is returned with SLang_Error set appropriately.
- */
-extern int SLexecute_function (SLang_Name_Type *);
-extern int SLang_execute_function(char *);
-
-
-extern int SLang_end_arg_list (void);
-extern int SLang_start_arg_list (void);
-
-extern void SLang_verror (int, char *, ...);
-
-extern void SLang_doerror(char *);
- /* set SLang_Error and display p1 as error message */
-
-extern int SLang_add_intrinsic_array (char *, /* name */
- unsigned char, /* type */
- int, /* readonly */
- VOID_STAR, /* data */
- unsigned int, ...); /* num dims */
-
-extern int SLextract_list_element (char *, unsigned int, char,
- char *, unsigned int);
-
-extern void SLexpand_escaped_string (register char *, register char *,
- register char *);
-
-extern SLang_Name_Type *SLang_get_function (char *);
-extern void SLang_release_function (SLang_Name_Type *);
-
-extern int SLreverse_stack (int);
-extern int SLroll_stack (int);
-/* If argument p is positive, the top p objects on the stack are rolled
- * up. If negative, the stack is rolled down.
- */
-extern int SLdup_n (int n);
-/* Duplicate top n elements of stack */
-
-extern int SLang_peek_at_stack1 (void);
-extern int SLang_peek_at_stack (void);
-/* Returns type of next object on stack-- -1 upon stack underflow. */
-extern void SLmake_lut (unsigned char *, unsigned char *, unsigned char);
-
- extern int SLang_guess_type (char *);
-
-extern int SLstruct_create_struct (unsigned int,
- char **,
- unsigned char *,
- VOID_STAR *);
-
-/*}}}*/
-
-/*{{{ Misc Functions */
-
-/* This is an interface to atexit */
-extern int SLang_add_cleanup_function (void (*)(void));
-
-extern char *SLmake_string (char *);
-extern char *SLmake_nstring (char *, unsigned int);
-/* Returns a null terminated string made from the first n characters of the
- * string.
- */
-
-/* The string created by this routine must be freed by SLang_free_slstring
- * and nothing else!! Also these strings must not be modified. Use
- * SLmake_string if you intend to modify them!!
- */
-extern char *SLang_create_nslstring (char *, unsigned int);
-extern char *SLang_create_slstring (char *);
-extern void SLang_free_slstring (char *); /* handles NULL */
-extern int SLang_pop_slstring (char **); /* free with SLang_free_slstring */
-extern char *SLang_concat_slstrings (char *a, char *b);
-extern char *SLang_create_static_slstring (char *); /* adds a string that will not get deleted */
-extern void SLstring_dump_stats (void);
-
-/* Binary strings */
-/* The binary string is an opaque type. Use the SLbstring_get_pointer function
- * to get a pointer and length.
- */
-typedef struct _SLang_BString_Type SLang_BString_Type;
-extern unsigned char *SLbstring_get_pointer (SLang_BString_Type *, unsigned int *);
-
-extern SLang_BString_Type *SLbstring_dup (SLang_BString_Type *);
-extern SLang_BString_Type *SLbstring_create (unsigned char *, unsigned int);
-
-/* The create_malloced function used the first argument which is assumed
- * to be a pointer to a len + 1 malloced string. The extra byte is for
- * \0 termination.
- */
-extern SLang_BString_Type *SLbstring_create_malloced (unsigned char *, unsigned int, int);
-
-/* Create a bstring from an slstring */
-extern SLang_BString_Type *SLbstring_create_slstring (char *);
-
-extern void SLbstring_free (SLang_BString_Type *);
-extern int SLang_pop_bstring (SLang_BString_Type **);
-extern int SLang_push_bstring (SLang_BString_Type *);
-
-extern char *SLmalloc (unsigned int);
-extern char *SLcalloc (unsigned int, unsigned int);
-extern void SLfree(char *); /* This function handles NULL */
-extern char *SLrealloc (char *, unsigned int);
-
-extern char *SLcurrent_time_string (void);
-
-extern int SLatoi(unsigned char *);
-extern long SLatol (unsigned char *);
-extern unsigned long SLatoul (unsigned char *);
-
-extern int SLang_pop_fileptr (SLang_MMT_Type **, FILE **);
-extern char *SLang_get_name_from_fileptr (SLang_MMT_Type *);
-
-typedef struct _SLFile_FD_Type SLFile_FD_Type;
-extern SLFile_FD_Type *SLfile_create_fd (char *, int);
-extern void SLfile_free_fd (SLFile_FD_Type *);
-extern int SLfile_push_fd (SLFile_FD_Type *);
-extern int SLfile_pop_fd (SLFile_FD_Type **);
-extern int SLfile_get_fd (SLFile_FD_Type *, int *);
-extern SLFile_FD_Type *SLfile_dup_fd (SLFile_FD_Type *f0);
-extern int SLang_init_posix_io (void);
-
-typedef double (*SLang_To_Double_Fun_Type)(VOID_STAR);
-extern SLang_To_Double_Fun_Type SLarith_get_to_double_fun (unsigned char, unsigned int *);
-
-extern int SLang_set_argc_argv (int, char **);
-
-/*}}}*/
-
-/*{{{ SLang getkey interface Functions */
-
-#ifdef REAL_UNIX_SYSTEM
-extern int SLang_TT_Baud_Rate;
-extern int SLang_TT_Read_FD;
-#endif
-
-extern int SLang_init_tty (int, int, int);
-/* Initializes the tty for single character input. If the first parameter *p1
- * is in the range 0-255, it will be used for the abort character;
- * otherwise, (unix only) if it is -1, the abort character will be the one
- * used by the terminal. If the second parameter p2 is non-zero, flow
- * control is enabled. If the last parmeter p3 is zero, output processing
- * is NOT turned on. A value of zero is required for the screen management
- * routines. Returns 0 upon success. In addition, if SLang_TT_Baud_Rate ==
- * 0 when this function is called, SLang will attempt to determine the
- * terminals baud rate. As far as the SLang library is concerned, if
- * SLang_TT_Baud_Rate is less than or equal to zero, the baud rate is
- * effectively infinite.
- */
-
-extern void SLang_reset_tty (void);
-/* Resets tty to what it was prior to a call to SLang_init_tty */
-#ifdef REAL_UNIX_SYSTEM
-extern void SLtty_set_suspend_state (int);
- /* If non-zero argument, terminal driver will be told to react to the
- * suspend character. If 0, it will not.
- */
-extern int (*SLang_getkey_intr_hook) (void);
-#endif
-
-#define SLANG_GETKEY_ERROR 0xFFFF
-extern unsigned int SLang_getkey (void);
-/* reads a single key from the tty. If the read fails, 0xFFFF is returned. */
-
-#ifdef IBMPC_SYSTEM
-extern int SLgetkey_map_to_ansi (int);
-#endif
-
-extern int SLang_ungetkey_string (unsigned char *, unsigned int);
-extern int SLang_buffer_keystring (unsigned char *, unsigned int);
-extern int SLang_ungetkey (unsigned char);
-extern void SLang_flush_input (void);
-extern int SLang_input_pending (int);
-extern int SLang_Abort_Char;
-/* The value of the character (0-255) used to trigger SIGINT */
-extern int SLang_Ignore_User_Abort;
-/* If non-zero, pressing the abort character will not result in USER_BREAK
- * SLang_Error. */
-
-extern int SLang_set_abort_signal (void (*)(int));
-/* If SIGINT is generated, the function p1 will be called. If p1 is NULL
- * the SLang_default signal handler is called. This sets SLang_Error to
- * USER_BREAK. I suspect most users will simply want to pass NULL.
- */
-extern unsigned int SLang_Input_Buffer_Len;
-
-extern volatile int SLKeyBoard_Quit;
-
-#ifdef VMS
-/* If this function returns -1, ^Y will be added to input buffer. */
-extern int (*SLtty_VMS_Ctrl_Y_Hook) (void);
-#endif
-/*}}}*/
-
-/*{{{ SLang Keymap routines */
-
-typedef struct SLKeymap_Function_Type
-{
- char *name;
- int (*f)(void);
-}
-SLKeymap_Function_Type;
-
-#define SLANG_MAX_KEYMAP_KEY_SEQ 14
-typedef struct SLang_Key_Type
-{
- struct SLang_Key_Type *next;
- union
- {
- char *s;
- FVOID_STAR f;
- unsigned int keysym;
- }
- f;
- unsigned char type; /* type of function */
-#define SLKEY_F_INTERPRET 0x01
-#define SLKEY_F_INTRINSIC 0x02
-#define SLKEY_F_KEYSYM 0x03
- unsigned char str[SLANG_MAX_KEYMAP_KEY_SEQ + 1];/* key sequence */
-}
-SLang_Key_Type;
-
-typedef struct SLKeyMap_List_Type
-{
- char *name; /* hashed string */
- SLang_Key_Type *keymap;
- SLKeymap_Function_Type *functions; /* intrinsic functions */
-}
-SLKeyMap_List_Type;
-
-/* This is arbitrary but I have got to start somewhere */
-#define SLANG_MAX_KEYMAPS 30
-extern SLKeyMap_List_Type SLKeyMap_List[SLANG_MAX_KEYMAPS];
-
-extern char *SLang_process_keystring(char *);
-
-extern int SLkm_define_key (char *, FVOID_STAR, SLKeyMap_List_Type *);
-
-extern int SLang_define_key(char *, char *, SLKeyMap_List_Type *);
-/* Like define_key1 except that p2 is a string that is to be associated with
- * a function in the functions field of p3. This routine calls define_key1.
- */
-
-extern int SLkm_define_keysym (char *, unsigned int, SLKeyMap_List_Type *);
-
-extern void SLang_undefine_key(char *, SLKeyMap_List_Type *);
-
-extern SLKeyMap_List_Type *SLang_create_keymap(char *, SLKeyMap_List_Type *);
-/* create and returns a pointer to a new keymap named p1 created by copying
- * keymap p2. If p2 is NULL, it is up to the calling routine to initialize
- * the keymap.
- */
-
-extern char *SLang_make_keystring(unsigned char *);
-
-extern SLang_Key_Type *SLang_do_key(SLKeyMap_List_Type *, int (*)(void));
-/* read a key using keymap p1 with getkey function p2 */
-
-extern
- FVOID_STAR
- SLang_find_key_function(char *, SLKeyMap_List_Type *);
-
-extern SLKeyMap_List_Type *SLang_find_keymap(char *);
-
-extern int SLang_Last_Key_Char;
-extern int SLang_Key_TimeOut_Flag;
-
-/*}}}*/
-
-/*{{{ SLang Readline Interface */
-
-typedef struct SLang_Read_Line_Type
-{
- struct SLang_Read_Line_Type *prev, *next;
- unsigned char *buf;
- int buf_len; /* number of chars in the buffer */
- int num; /* num and misc are application specific*/
- int misc;
-} SLang_Read_Line_Type;
-
-/* Maximum size of display */
-#define SLRL_DISPLAY_BUFFER_SIZE 256
-
-typedef struct
-{
- SLang_Read_Line_Type *root, *tail, *last;
- unsigned char *buf; /* edit buffer */
- int buf_len; /* sizeof buffer */
- int point; /* current editing point */
- int tab; /* tab width */
- int len; /* current line size */
-
- /* display variables */
- int edit_width; /* length of display field */
- int curs_pos; /* current column */
- int start_column; /* column offset of display */
- int dhscroll; /* amount to use for horiz scroll */
- char *prompt;
-
- FVOID_STAR last_fun; /* last function executed by rl */
-
- /* These two contain an image of what is on the display */
- unsigned char upd_buf1[SLRL_DISPLAY_BUFFER_SIZE];
- unsigned char upd_buf2[SLRL_DISPLAY_BUFFER_SIZE];
- unsigned char *old_upd, *new_upd; /* pointers to previous two buffers */
- int new_upd_len, old_upd_len; /* length of output buffers */
-
- SLKeyMap_List_Type *keymap;
-
- /* tty variables */
- unsigned int flags; /* */
-#define SL_RLINE_NO_ECHO 1
-#define SL_RLINE_USE_ANSI 2
-#define SL_RLINE_BLINK_MATCH 4
- unsigned int (*getkey)(void); /* getkey function -- required */
- void (*tt_goto_column)(int);
- void (*tt_insert)(char);
- void (*update_hook)(unsigned char *, int, int);
- /* The update hook is called with a pointer to a buffer p1 that contains
- * an image of what the update hook is suppoed to produce. The length
- * of the buffer is p2 and after the update, the cursor is to be placed
- * in column p3.
- */
- /* This function is only called when blinking matches */
- int (*input_pending)(int);
- unsigned long reserved[4];
-} SLang_RLine_Info_Type;
-
-extern int SLang_RL_EOF_Char;
-
-extern SLang_Read_Line_Type * SLang_rline_save_line (SLang_RLine_Info_Type *);
-extern int SLang_init_readline (SLang_RLine_Info_Type *);
-extern int SLang_read_line (SLang_RLine_Info_Type *);
-extern int SLang_rline_insert (char *);
-extern void SLrline_redraw (SLang_RLine_Info_Type *);
-extern int SLang_Rline_Quit;
-
-/*}}}*/
-
-/*{{{ Low Level Screen Output Interface */
-
-extern unsigned long SLtt_Num_Chars_Output;
-extern int SLtt_Baud_Rate;
-
-typedef unsigned long SLtt_Char_Type;
-
-#define SLTT_BOLD_MASK 0x01000000UL
-#define SLTT_BLINK_MASK 0x02000000UL
-#define SLTT_ULINE_MASK 0x04000000UL
-#define SLTT_REV_MASK 0x08000000UL
-#define SLTT_ALTC_MASK 0x10000000UL
-
-extern int SLtt_Screen_Rows;
-extern int SLtt_Screen_Cols;
-extern int SLtt_Term_Cannot_Insert;
-extern int SLtt_Term_Cannot_Scroll;
-extern int SLtt_Use_Ansi_Colors;
-extern int SLtt_Ignore_Beep;
-#if defined(REAL_UNIX_SYSTEM)
-extern int SLtt_Force_Keypad_Init;
-extern int SLang_TT_Write_FD;
-#endif
-
-#ifndef IBMPC_SYSTEM
-extern char *SLtt_Graphics_Char_Pairs;
-#endif
-
-#ifndef __GO32__
-#if defined(VMS) || defined(REAL_UNIX_SYSTEM)
-extern int SLtt_Blink_Mode;
-extern int SLtt_Use_Blink_For_ACS;
-extern int SLtt_Newline_Ok;
-extern int SLtt_Has_Alt_Charset;
-extern int SLtt_Has_Status_Line; /* if 0, NO. If > 0, YES, IF -1, ?? */
-# ifndef VMS
-extern int SLtt_Try_Termcap;
-# endif
-#endif
-#endif
-
-#if defined(IBMPC_SYSTEM)
-extern int SLtt_Msdos_Cheap_Video;
-#endif
-
-typedef unsigned short SLsmg_Char_Type;
-#define SLSMG_EXTRACT_CHAR(x) ((x) & 0xFF)
-#define SLSMG_EXTRACT_COLOR(x) (((x)>>8)&0xFF)
-#define SLSMG_BUILD_CHAR(ch,color) (((SLsmg_Char_Type)(unsigned char)(ch))|((color)<<8))
-
-extern int SLtt_flush_output (void);
-extern void SLtt_set_scroll_region(int, int);
-extern void SLtt_reset_scroll_region(void);
-extern void SLtt_reverse_video (int);
-extern void SLtt_bold_video (void);
-extern void SLtt_begin_insert(void);
-extern void SLtt_end_insert(void);
-extern void SLtt_del_eol(void);
-extern void SLtt_goto_rc (int, int);
-extern void SLtt_delete_nlines(int);
-extern void SLtt_delete_char(void);
-extern void SLtt_erase_line(void);
-extern void SLtt_normal_video(void);
-extern void SLtt_cls(void);
-extern void SLtt_beep(void);
-extern void SLtt_reverse_index(int);
-extern void SLtt_smart_puts(SLsmg_Char_Type *, SLsmg_Char_Type *, int, int);
-extern void SLtt_write_string (char *);
-extern void SLtt_putchar(char);
-extern int SLtt_init_video (void);
-extern int SLtt_reset_video (void);
-extern void SLtt_get_terminfo(void);
-extern void SLtt_get_screen_size (void);
-extern int SLtt_set_cursor_visibility (int);
-
-extern int SLtt_set_mouse_mode (int, int);
-
-#if defined(VMS) || defined(REAL_UNIX_SYSTEM)
-extern int SLtt_initialize (char *);
-extern void SLtt_enable_cursor_keys(void);
-extern void SLtt_set_term_vtxxx(int *);
-extern void SLtt_set_color_esc (int, char *);
-extern void SLtt_wide_width(void);
-extern void SLtt_narrow_width(void);
-extern void SLtt_set_alt_char_set (int);
-extern int SLtt_write_to_status_line (char *, int);
-extern void SLtt_disable_status_line (void);
-# ifdef REAL_UNIX_SYSTEM
-/* These are termcap/terminfo routines that assume SLtt_initialize has
- * been called.
- */
-extern char *SLtt_tgetstr (char *);
-extern int SLtt_tgetnum (char *);
-extern int SLtt_tgetflag (char *);
-
-/* The following are terminfo-only routines -- these prototypes will change
- * in V2.x.
- */
-extern char *SLtt_tigetent (char *);
-extern char *SLtt_tigetstr (char *, char **);
-extern int SLtt_tigetnum (char *, char **);
-# endif
-#endif
-
-extern SLtt_Char_Type SLtt_get_color_object (int);
-extern void SLtt_set_color_object (int, SLtt_Char_Type);
-extern void SLtt_set_color (int, char *, char *, char *);
-extern void SLtt_set_mono (int, char *, SLtt_Char_Type);
-extern void SLtt_add_color_attribute (int, SLtt_Char_Type);
-extern void SLtt_set_color_fgbg (int, SLtt_Char_Type, SLtt_Char_Type);
-
-/*}}}*/
-
-/*{{{ SLang Preprocessor Interface */
-
-typedef struct
-{
- int this_level;
- int exec_level;
- int prev_exec_level;
- char preprocess_char;
- char comment_char;
- unsigned char flags;
-#define SLPREP_BLANK_LINES_OK 1
-#define SLPREP_COMMENT_LINES_OK 2
-}
-SLPreprocess_Type;
-
-extern int SLprep_open_prep (SLPreprocess_Type *);
-extern void SLprep_close_prep (SLPreprocess_Type *);
-extern int SLprep_line_ok (char *, SLPreprocess_Type *);
- extern int SLdefine_for_ifdef (char *);
- /* Adds a string to the SLang #ifdef preparsing defines. SLang already
- defines MSDOS, UNIX, and VMS on the appropriate system. */
-extern int (*SLprep_exists_hook) (char *, char);
-
-/*}}}*/
-
-/*{{{ SLsmg Screen Management Functions */
-
-extern void SLsmg_fill_region (int, int, unsigned int, unsigned int, unsigned char);
-extern void SLsmg_set_char_set (int);
-#ifndef IBMPC_SYSTEM
-extern int SLsmg_Scroll_Hash_Border;
-#endif
-extern int SLsmg_suspend_smg (void);
-extern int SLsmg_resume_smg (void);
-extern void SLsmg_erase_eol (void);
-extern void SLsmg_gotorc (int, int);
-extern void SLsmg_erase_eos (void);
-extern void SLsmg_reverse_video (void);
-extern void SLsmg_set_color (int);
-extern void SLsmg_normal_video (void);
-extern void SLsmg_printf (char *, ...);
-extern void SLsmg_vprintf (char *, va_list);
-extern void SLsmg_write_string (char *);
-extern void SLsmg_write_nstring (char *, unsigned int);
-extern void SLsmg_write_char (char);
-extern void SLsmg_write_nchars (char *, unsigned int);
-extern void SLsmg_write_wrapped_string (char *, int, int, unsigned int, unsigned int, int);
-extern void SLsmg_cls (void);
-extern void SLsmg_refresh (void);
-extern void SLsmg_touch_lines (int, unsigned int);
-extern void SLsmg_touch_screen (void);
-extern int SLsmg_init_smg (void);
-extern int SLsmg_reinit_smg (void);
-extern void SLsmg_reset_smg (void);
-extern SLsmg_Char_Type SLsmg_char_at(void);
-extern void SLsmg_set_screen_start (int *, int *);
-extern void SLsmg_draw_hline (unsigned int);
-extern void SLsmg_draw_vline (int);
-extern void SLsmg_draw_object (int, int, unsigned char);
-extern void SLsmg_draw_box (int, int, unsigned int, unsigned int);
-extern int SLsmg_get_column(void);
-extern int SLsmg_get_row(void);
-extern void SLsmg_forward (int);
-extern void SLsmg_write_color_chars (SLsmg_Char_Type *, unsigned int);
-extern unsigned int SLsmg_read_raw (SLsmg_Char_Type *, unsigned int);
-extern unsigned int SLsmg_write_raw (SLsmg_Char_Type *, unsigned int);
-extern void SLsmg_set_color_in_region (int, int, int, unsigned int, unsigned int);
-extern int SLsmg_Display_Eight_Bit;
-extern int SLsmg_Tab_Width;
-
-#define SLSMG_NEWLINE_IGNORED 0 /* default */
-#define SLSMG_NEWLINE_MOVES 1 /* moves to next line, column 0 */
-#define SLSMG_NEWLINE_SCROLLS 2 /* moves but scrolls at bottom of screen */
-#define SLSMG_NEWLINE_PRINTABLE 3 /* prints as ^J */
-extern int SLsmg_Newline_Behavior;
-
-extern int SLsmg_Backspace_Moves;
-
-#ifdef IBMPC_SYSTEM
-# define SLSMG_HLINE_CHAR 0xC4
-# define SLSMG_VLINE_CHAR 0xB3
-# define SLSMG_ULCORN_CHAR 0xDA
-# define SLSMG_URCORN_CHAR 0xBF
-# define SLSMG_LLCORN_CHAR 0xC0
-# define SLSMG_LRCORN_CHAR 0xD9
-# define SLSMG_RTEE_CHAR 0xB4
-# define SLSMG_LTEE_CHAR 0xC3
-# define SLSMG_UTEE_CHAR 0xC2
-# define SLSMG_DTEE_CHAR 0xC1
-# define SLSMG_PLUS_CHAR 0xC5
-/* There are several to choose from: 0xB0, 0xB1, and 0xB2 */
-# define SLSMG_CKBRD_CHAR 0xB0
-# define SLSMG_DIAMOND_CHAR 0x04
-# define SLSMG_DEGREE_CHAR 0xF8
-# define SLSMG_PLMINUS_CHAR 0xF1
-# define SLSMG_BULLET_CHAR 0xF9
-# define SLSMG_LARROW_CHAR 0x1B
-# define SLSMG_RARROW_CHAR 0x1A
-# define SLSMG_DARROW_CHAR 0x19
-# define SLSMG_UARROW_CHAR 0x18
-# define SLSMG_BOARD_CHAR 0xB2
-# define SLSMG_BLOCK_CHAR 0xDB
-#else
-# if defined(AMIGA)
-# define SLSMG_HLINE_CHAR '-'
-# define SLSMG_VLINE_CHAR '|'
-# define SLSMG_ULCORN_CHAR '+'
-# define SLSMG_URCORN_CHAR '+'
-# define SLSMG_LLCORN_CHAR '+'
-# define SLSMG_LRCORN_CHAR '+'
-# define SLSMG_CKBRD_CHAR '#'
-# define SLSMG_RTEE_CHAR '+'
-# define SLSMG_LTEE_CHAR '+'
-# define SLSMG_UTEE_CHAR '+'
-# define SLSMG_DTEE_CHAR '+'
-# define SLSMG_PLUS_CHAR '+'
-# define SLSMG_DIAMOND_CHAR '+'
-# define SLSMG_DEGREE_CHAR '\\'
-# define SLSMG_PLMINUS_CHAR '#'
-# define SLSMG_BULLET_CHAR 'o'
-# define SLSMG_LARROW_CHAR '<'
-# define SLSMG_RARROW_CHAR '>'
-# define SLSMG_DARROW_CHAR 'v'
-# define SLSMG_UARROW_CHAR '^'
-# define SLSMG_BOARD_CHAR '#'
-# define SLSMG_BLOCK_CHAR '#'
-# else
-# define SLSMG_HLINE_CHAR 'q'
-# define SLSMG_VLINE_CHAR 'x'
-# define SLSMG_ULCORN_CHAR 'l'
-# define SLSMG_URCORN_CHAR 'k'
-# define SLSMG_LLCORN_CHAR 'm'
-# define SLSMG_LRCORN_CHAR 'j'
-# define SLSMG_CKBRD_CHAR 'a'
-# define SLSMG_RTEE_CHAR 'u'
-# define SLSMG_LTEE_CHAR 't'
-# define SLSMG_UTEE_CHAR 'w'
-# define SLSMG_DTEE_CHAR 'v'
-# define SLSMG_PLUS_CHAR 'n'
-# define SLSMG_DIAMOND_CHAR '`'
-# define SLSMG_DEGREE_CHAR 'f'
-# define SLSMG_PLMINUS_CHAR 'g'
-# define SLSMG_BULLET_CHAR '~'
-# define SLSMG_LARROW_CHAR ','
-# define SLSMG_RARROW_CHAR '+'
-# define SLSMG_DARROW_CHAR '.'
-# define SLSMG_UARROW_CHAR '-'
-# define SLSMG_BOARD_CHAR 'h'
-# define SLSMG_BLOCK_CHAR '0'
-# endif /* AMIGA */
-#endif /* IBMPC_SYSTEM */
-
-#ifndef IBMPC_SYSTEM
-# define SLSMG_COLOR_BLACK 0x000000
-# define SLSMG_COLOR_RED 0x000001
-# define SLSMG_COLOR_GREEN 0x000002
-# define SLSMG_COLOR_BROWN 0x000003
-# define SLSMG_COLOR_BLUE 0x000004
-# define SLSMG_COLOR_MAGENTA 0x000005
-# define SLSMG_COLOR_CYAN 0x000006
-# define SLSMG_COLOR_LGRAY 0x000007
-# define SLSMG_COLOR_GRAY 0x000008
-# define SLSMG_COLOR_BRIGHT_RED 0x000009
-# define SLSMG_COLOR_BRIGHT_GREEN 0x00000A
-# define SLSMG_COLOR_BRIGHT_BROWN 0x00000B
-# define SLSMG_COLOR_BRIGHT_BLUE 0x00000C
-# define SLSMG_COLOR_BRIGHT_CYAN 0x00000D
-# define SLSMG_COLOR_BRIGHT_MAGENTA 0x00000E
-# define SLSMG_COLOR_BRIGHT_WHITE 0x00000F
-#endif
-
-typedef struct
-{
- void (*tt_normal_video)(void);
- void (*tt_set_scroll_region)(int, int);
- void (*tt_goto_rc)(int, int);
- void (*tt_reverse_index)(int);
- void (*tt_reset_scroll_region)(void);
- void (*tt_delete_nlines)(int);
- void (*tt_cls) (void);
- void (*tt_del_eol) (void);
- void (*tt_smart_puts) (SLsmg_Char_Type *, SLsmg_Char_Type *, int, int);
- int (*tt_flush_output) (void);
- int (*tt_reset_video) (void);
- int (*tt_init_video) (void);
-
- int *tt_screen_rows;
- int *tt_screen_cols;
-
- int *tt_term_cannot_scroll;
- int *tt_has_alt_charset;
- int *tt_use_blink_for_acs;
- char **tt_graphic_char_pairs;
-
- long reserved[4];
-}
-SLsmg_Term_Type;
-extern void SLsmg_set_terminal_info (SLsmg_Term_Type *);
-
-/*}}}*/
-
-/*{{{ SLang Keypad Interface */
-
-#define SL_KEY_ERR 0xFFFF
-
-#define SL_KEY_UP 0x101
-#define SL_KEY_DOWN 0x102
-#define SL_KEY_LEFT 0x103
-#define SL_KEY_RIGHT 0x104
-#define SL_KEY_PPAGE 0x105
-#define SL_KEY_NPAGE 0x106
-#define SL_KEY_HOME 0x107
-#define SL_KEY_END 0x108
-#define SL_KEY_A1 0x109
-#define SL_KEY_A3 0x10A
-#define SL_KEY_B2 0x10B
-#define SL_KEY_C1 0x10C
-#define SL_KEY_C3 0x10D
-#define SL_KEY_REDO 0x10E
-#define SL_KEY_UNDO 0x10F
-#define SL_KEY_BACKSPACE 0x110
-#define SL_KEY_ENTER 0x111
-#define SL_KEY_IC 0x112
-#define SL_KEY_DELETE 0x113
-
-#define SL_KEY_F0 0x200
-#define SL_KEY_F(X) (SL_KEY_F0 + X)
-
-/* I do not intend to use keysymps > 0x1000. Applications can use those. */
-/* Returns 0 upon success or -1 upon error. */
-extern int SLkp_define_keysym (char *, unsigned int);
-
-/* This function must be called AFTER SLtt_get_terminfo and not before. */
-extern int SLkp_init (void);
-
-/* This function uses SLang_getkey and assumes that what ever initialization
- * is required for SLang_getkey has been performed.
- */
-extern int SLkp_getkey (void);
-
-/*}}}*/
-
-/*{{{ SLang Scroll Interface */
-
-typedef struct _SLscroll_Type
-{
- struct _SLscroll_Type *next;
- struct _SLscroll_Type *prev;
- unsigned int flags;
-}
-SLscroll_Type;
-
-typedef struct
-{
- unsigned int flags;
- SLscroll_Type *top_window_line; /* list element at top of window */
- SLscroll_Type *bot_window_line; /* list element at bottom of window */
- SLscroll_Type *current_line; /* current list element */
- SLscroll_Type *lines; /* first list element */
- unsigned int nrows; /* number of rows in window */
- unsigned int hidden_mask; /* applied to flags in SLscroll_Type */
- unsigned int line_num; /* current line number (visible) */
- unsigned int num_lines; /* total number of lines (visible) */
- unsigned int window_row; /* row of current_line in window */
- unsigned int border; /* number of rows that form scroll border */
- int cannot_scroll; /* should window scroll or recenter */
-}
-SLscroll_Window_Type;
-
-extern int SLscroll_find_top (SLscroll_Window_Type *);
-extern int SLscroll_find_line_num (SLscroll_Window_Type *);
-extern unsigned int SLscroll_next_n (SLscroll_Window_Type *, unsigned int);
-extern unsigned int SLscroll_prev_n (SLscroll_Window_Type *, unsigned int);
-extern int SLscroll_pageup (SLscroll_Window_Type *);
-extern int SLscroll_pagedown (SLscroll_Window_Type *);
-
-/*}}}*/
-
-/*{{{ Signal Routines */
-
-typedef void SLSig_Fun_Type (int);
-extern SLSig_Fun_Type *SLsignal (int, SLSig_Fun_Type *);
-extern SLSig_Fun_Type *SLsignal_intr (int, SLSig_Fun_Type *);
-extern int SLsig_block_signals (void);
-extern int SLsig_unblock_signals (void);
-extern int SLsystem (char *);
-
-extern char *SLerrno_strerror (int);
-extern int SLerrno_set_errno (int);
-
-/*}}}*/
-
-/*{{{ Interpreter Macro Definitions */
-
-/* The definitions here are for objects that may be on the run-time stack.
- * They are actually sub_types of literal and data main_types. The actual
- * numbers are historical.
- */
-#define SLANG_UNDEFINED_TYPE 0x00 /* MUST be 0 */
-#define SLANG_VOID_TYPE 0x01 /* also matches ANY type */
-#define SLANG_INT_TYPE 0x02
-#define SLANG_DOUBLE_TYPE 0x03
-#define SLANG_CHAR_TYPE 0x04
-#define SLANG_INTP_TYPE 0x05
-/* An object of SLANG_INTP_TYPE should never really occur on the stack. Rather,
- * the integer to which it refers will be there instead. It is defined here
- * because it is a valid type for MAKE_VARIABLE.
- */
-#define SLANG_REF_TYPE 0x06
-/* SLANG_REF_TYPE refers to an object on the stack that is a pointer (reference)
- * to some other object.
- */
-#define SLANG_COMPLEX_TYPE 0x07
-#define SLANG_NULL_TYPE 0x08
-#define SLANG_UCHAR_TYPE 0x09
-#define SLANG_SHORT_TYPE 0x0A
-#define SLANG_USHORT_TYPE 0x0B
-#define SLANG_UINT_TYPE 0x0C
-#define SLANG_LONG_TYPE 0x0D
-#define SLANG_ULONG_TYPE 0x0E
-#define SLANG_STRING_TYPE 0x0F
-#define SLANG_FLOAT_TYPE 0x10
-#define SLANG_STRUCT_TYPE 0x11
-#define SLANG_ISTRUCT_TYPE 0x12
-#define SLANG_ARRAY_TYPE 0x20
-#define SLANG_DATATYPE_TYPE 0x21
-#define SLANG_FILE_PTR_TYPE 0x22
-#define SLANG_ASSOC_TYPE 0x23
-#define SLANG_ANY_TYPE 0x24
-#define SLANG_BSTRING_TYPE 0x25
-#define SLANG_FILE_FD_TYPE 0x26
-
-/* Compatibility */
-#ifdef FLOAT_TYPE
-# undef FLOAT_TYPE
-#endif
-#define VOID_TYPE SLANG_VOID_TYPE
-#define INT_TYPE SLANG_INT_TYPE
-#define INTP_TYPE SLANG_INTP_TYPE
-#define FLOAT_TYPE SLANG_DOUBLE_TYPE
-#define ARRAY_TYPE SLANG_ARRAY_TYPE
-#define CHAR_TYPE SLANG_CHAR_TYPE
-#define STRING_TYPE SLANG_STRING_TYPE
-
-/* I am reserving values greater than or equal to 128 for user applications.
- * The first 127 are reserved for S-Lang.
- */
-
-/* Binary and Unary Subtypes */
-/* Since the application can define new types and can overload the binary
- * and unary operators, these definitions must be present in this file.
- * The current implementation assumes both unary and binary are distinct.
- */
-#define SLANG_PLUS 0x01
-#define SLANG_MINUS 0x02
-#define SLANG_TIMES 0x03
-#define SLANG_DIVIDE 0x04
-#define SLANG_EQ 0x05
-#define SLANG_NE 0x06
-#define SLANG_GT 0x07
-#define SLANG_GE 0x08
-#define SLANG_LT 0x09
-#define SLANG_LE 0x0A
-#define SLANG_POW 0x0B
-#define SLANG_OR 0x0C
-#define SLANG_AND 0x0D
-#define SLANG_BAND 0x0E
-#define SLANG_BOR 0x0F
-#define SLANG_BXOR 0x10
-#define SLANG_SHL 0x11
-#define SLANG_SHR 0x12
-#define SLANG_MOD 0x13
-
-/* UNARY subtypes (may be overloaded) */
-#define SLANG_PLUSPLUS 0x20
-#define SLANG_MINUSMINUS 0x21
-#define SLANG_ABS 0x22
-#define SLANG_SIGN 0x23
-#define SLANG_SQR 0x24
-#define SLANG_MUL2 0x25
-#define SLANG_CHS 0x26
-#define SLANG_NOT 0x27
-#define SLANG_BNOT 0x28
-
-extern char *SLang_Error_Message;
-
-int SLadd_intrinsic_variable (char *, VOID_STAR, unsigned char, int);
-int SLadd_intrinsic_function (char *, FVOID_STAR, unsigned char, unsigned int,...);
-
-int SLns_add_intrinsic_variable (SLang_NameSpace_Type *, char *, VOID_STAR, unsigned char, int);
-int SLns_add_intrinsic_function (SLang_NameSpace_Type *, char *, FVOID_STAR, unsigned char, unsigned int,...);
-
-extern void SLadd_at_handler (long *, char *);
-
-#define MAKE_INTRINSIC_N(n,f,out,in,a1,a2,a3,a4,a5,a6,a7) \
- {(n), NULL, SLANG_INTRINSIC, (FVOID_STAR) (f), \
- {a1,a2,a3,a4,a5,a6,a7}, (in), (out)}
-
-#define MAKE_INTRINSIC_7(n,f,out,a1,a2,a3,a4,a5,a6,a7) \
- MAKE_INTRINSIC_N(n,f,out,7,a1,a2,a3,a4,a5,a6,a7)
-#define MAKE_INTRINSIC_6(n,f,out,a1,a2,a3,a4,a5,a6) \
- MAKE_INTRINSIC_N(n,f,out,6,a1,a2,a3,a4,a5,a6,0)
-#define MAKE_INTRINSIC_5(n,f,out,a1,a2,a3,a4,a5) \
- MAKE_INTRINSIC_N(n,f,out,5,a1,a2,a3,a4,a5,0,0)
-#define MAKE_INTRINSIC_4(n,f,out,a1,a2,a3,a4) \
- MAKE_INTRINSIC_N(n,f,out,4,a1,a2,a3,a4,0,0,0)
-#define MAKE_INTRINSIC_3(n,f,out,a1,a2,a3) \
- MAKE_INTRINSIC_N(n,f,out,3,a1,a2,a3,0,0,0,0)
-#define MAKE_INTRINSIC_2(n,f,out,a1,a2) \
- MAKE_INTRINSIC_N(n,f,out,2,a1,a2,0,0,0,0,0)
-#define MAKE_INTRINSIC_1(n,f,out,a1) \
- MAKE_INTRINSIC_N(n,f,out,1,a1,0,0,0,0,0,0)
-#define MAKE_INTRINSIC_0(n,f,out) \
- MAKE_INTRINSIC_N(n,f,out,0,0,0,0,0,0,0,0)
-
-#define MAKE_INTRINSIC_S(n,f,r) \
- MAKE_INTRINSIC_1(n,f,r,SLANG_STRING_TYPE)
-#define MAKE_INTRINSIC_I(n,f,r) \
- MAKE_INTRINSIC_1(n,f,r,SLANG_INT_TYPE)
-
-#define MAKE_INTRINSIC_SS(n,f,r) \
- MAKE_INTRINSIC_2(n,f,r,SLANG_STRING_TYPE,SLANG_STRING_TYPE)
-#define MAKE_INTRINSIC_SI(n,f,r) \
- MAKE_INTRINSIC_2(n,f,r,SLANG_STRING_TYPE,SLANG_INT_TYPE)
-#define MAKE_INTRINSIC_IS(n,f,r) \
- MAKE_INTRINSIC_2(n,f,r,SLANG_INT_TYPE,SLANG_STRING_TYPE)
-#define MAKE_INTRINSIC_II(n,f,r) \
- MAKE_INTRINSIC_2(n,f,r,SLANG_INT_TYPE,SLANG_INT_TYPE)
-
-#define MAKE_INTRINSIC_SSS(n,f,r) \
- MAKE_INTRINSIC_3(n,f,r,SLANG_STRING_TYPE,SLANG_STRING_TYPE,SLANG_STRING_TYPE)
-#define MAKE_INTRINSIC_SSI(n,f,r) \
- MAKE_INTRINSIC_3(n,f,r,SLANG_STRING_TYPE,SLANG_STRING_TYPE,SLANG_INT_TYPE)
-#define MAKE_INTRINSIC_SIS(n,f,r) \
- MAKE_INTRINSIC_3(n,f,r,SLANG_STRING_TYPE,SLANG_INT_TYPE,SLANG_STRING_TYPE)
-#define MAKE_INTRINSIC_SII(n,f,r) \
- MAKE_INTRINSIC_3(n,f,r,SLANG_STRING_TYPE,SLANG_INT_TYPE,SLANG_INT_TYPE)
-#define MAKE_INTRINSIC_ISS(n,f,r) \
- MAKE_INTRINSIC_3(n,f,r,SLANG_INT_TYPE,SLANG_STRING_TYPE,SLANG_STRING_TYPE)
-#define MAKE_INTRINSIC_ISI(n,f,r) \
- MAKE_INTRINSIC_3(n,f,r,SLANG_INT_TYPE,SLANG_STRING_TYPE,SLANG_INT_TYPE)
-#define MAKE_INTRINSIC_IIS(n,f,r) \
- MAKE_INTRINSIC_3(n,f,r,SLANG_INT_TYPE,SLANG_INT_TYPE,SLANG_STRING_TYPE)
-#define MAKE_INTRINSIC_III(n,f,r) \
- MAKE_INTRINSIC_3(n,f,r,SLANG_INT_TYPE,SLANG_INT_TYPE,SLANG_INT_TYPE)
-
-#define MAKE_INTRINSIC(n, f, out, in) \
- MAKE_INTRINSIC_N(n,f,out,in,0,0,0,0,0,0,0)
-
-#define MAKE_VARIABLE(n, v, t, r) \
- {n, NULL, SLANG_IVARIABLE + (r), (VOID_STAR)(v), (t)}
-
-#define MAKE_APP_UNARY(n,op) \
- {(n), NULL, SLANG_APP_UNARY, (op)}
-
-#define MAKE_MATH_UNARY(n,op) \
- {(n), NULL, SLANG_MATH_UNARY, (op)}
-
-#define MAKE_ICONSTANT(n,val) \
- {(n),NULL, SLANG_ICONSTANT, (val)}
-
-#define MAKE_DCONSTANT(n,val) \
- {(n),NULL, SLANG_DCONSTANT, (val)}
-
-#ifndef offsetof
-# define offsetof(T,F) ((unsigned int)((char *)&((T *)0L)->F - (char *)0L))
-#endif
-#define MAKE_ISTRUCT_FIELD(s,f,n,t,r) {(n), offsetof(s,f), (t), (r)}
-
-#define SLANG_END_TABLE {NULL}
-#define SLANG_END_INTRIN_FUN_TABLE MAKE_INTRINSIC_0(NULL,NULL,0)
-#define SLANG_END_DCONST_TABLE MAKE_DCONSTANT(NULL,0)
-#define SLANG_END_MATH_UNARY_TABLE MAKE_MATH_UNARY(NULL,0)
-#define SLANG_END_INTRIN_VAR_TABLE MAKE_VARIABLE(NULL,NULL,0,0)
-#define SLANG_END_ICONST_TABLE MAKE_ICONSTANT(NULL,0)
-#define SLANG_END_ISTRUCT_TABLE {NULL, 0, 0, 0}
-
-
-
-/*}}}*/
-
-/*{{{ Upper/Lowercase Functions */
-
-extern void SLang_define_case(int *, int *);
-extern void SLang_init_case_tables (void);
-
-extern unsigned char _SLChg_UCase_Lut[256];
-extern unsigned char _SLChg_LCase_Lut[256];
-#define UPPER_CASE(x) (_SLChg_UCase_Lut[(unsigned char) (x)])
-#define LOWER_CASE(x) (_SLChg_LCase_Lut[(unsigned char) (x)])
-#define CHANGE_CASE(x) (((x) == _SLChg_LCase_Lut[(unsigned char) (x)]) ?\
- _SLChg_UCase_Lut[(unsigned char) (x)] : _SLChg_LCase_Lut[(unsigned char) (x)])
-
-/*}}}*/
-
-/*{{{ Regular Expression Interface */
-
-typedef struct
-{
- /* These must be set by calling routine. */
- unsigned char *pat; /* regular expression pattern */
- unsigned char *buf; /* buffer for compiled regexp */
- unsigned int buf_len; /* length of buffer */
- int case_sensitive; /* 1 if match is case sensitive */
-
- /* The rest are set by SLang_regexp_compile */
-
- int must_match; /* 1 if line must contain substring */
- int must_match_bol; /* true if it must match beginning of line */
- unsigned char must_match_str[16]; /* 15 char null term substring */
- int osearch; /* 1 if ordinary search suffices */
- unsigned int min_length; /* minimum length the match must be */
- int beg_matches[10]; /* offset of start of \( */
- unsigned int end_matches[10]; /* length of nth submatch
- * Note that the entire match corresponds
- * to \0
- */
- int offset; /* offset to be added to beg_matches */
- int reserved[10];
-} SLRegexp_Type;
-
-extern unsigned char *SLang_regexp_match(unsigned char *,
- unsigned int,
- SLRegexp_Type *);
-
-/* Returns 0 upon success. If failure, the offset into the
- * pattern is returned (start = 1).
- */
-extern int SLang_regexp_compile (SLRegexp_Type *);
-extern char *SLregexp_quote_string (char *, char *, unsigned int);
-
-/*}}}*/
-
-/*{{{ SLang Command Interface */
-
-struct _SLcmd_Cmd_Type; /* Pre-declaration is needed below */
-typedef struct
-{
- struct _SLcmd_Cmd_Type *table;
- int argc;
- /* Version 2.0 needs to use a union!! */
- char **string_args;
- int *int_args;
- double *double_args;
- unsigned char *arg_type;
- unsigned long reserved[4];
-} SLcmd_Cmd_Table_Type;
-
-typedef struct _SLcmd_Cmd_Type
-{
- int (*cmdfun)(int, SLcmd_Cmd_Table_Type *);
- char *cmd;
- char *arg_type;
-} SLcmd_Cmd_Type;
-
-extern int SLcmd_execute_string (char *, SLcmd_Cmd_Table_Type *);
-
-/*}}}*/
-
-/*{{{ SLang Search Interface */
-
-typedef struct
-{
- int cs; /* case sensitive */
- unsigned char key[256];
- int ind[256];
- int key_len;
- int dir;
-} SLsearch_Type;
-
-extern int SLsearch_init (char *, int, int, SLsearch_Type *);
-/* This routine must first be called before any search can take place.
- * The second parameter specifies the direction of the search: greater than
- * zero for a forwrd search and less than zero for a backward search. The
- * third parameter specifies whether the search is case sensitive or not.
- * The last parameter is a pointer to a structure that is filled by this
- * function and it is this structure that must be passed to SLsearch.
- */
-
-extern unsigned char *SLsearch (unsigned char *, unsigned char *, SLsearch_Type *);
-/* To use this routine, you must first call 'SLsearch_init'. Then the first
- * two parameters p1 and p2 serve to define the region over which the search
- * is to take place. The third parameter is the structure that was previously
- * initialized by SLsearch_init.
- *
- * The routine returns a pointer to the match if found otherwise it returns
- * NULL.
- */
-
-/*}}}*/
-
-/*{{{ SLang Pathname Interface */
-
-/* These function return pointers to the original space */
-extern char *SLpath_basename (char *);
-extern char *SLpath_extname (char *);
-extern int SLpath_is_absolute_path (char *);
-
-/* These return malloced strings--- NOT slstrings */
-extern char *SLpath_dircat (char *, char *);
-extern char *SLpath_find_file_in_path (char *, char *);
-extern char *SLpath_dirname (char *);
-extern int SLpath_file_exists (char *);
-extern char *SLpath_pathname_sans_extname (char *);
-
-/*}}}*/
-
-extern int SLang_set_module_load_path (char *);
-
-#define SLANG_MODULE(name) \
- extern int init_##name##_module_ns (char *); \
- extern void deinit_##name##_module (void)
-
-#if 0
-{
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _DAVIS_SLANG_H_ */
diff --git a/mdk-stage1/slang/slarith.c b/mdk-stage1/slang/slarith.c
deleted file mode 100644
index 07ad68687..000000000
--- a/mdk-stage1/slang/slarith.c
+++ /dev/null
@@ -1,1656 +0,0 @@
-
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include <math.h>
-
-#ifdef HAVE_LOCALE_H
-# include <locale.h>
-#endif
-
-#include "slang.h"
-#include "_slang.h"
-
-/*
- * This file defines binary and unary operations on all integer types.
- * Supported types include:
- *
- * SLANG_CHAR_TYPE (char)
- * SLANG_SHORT_TYPE (short)
- * SLANG_INT_TYPE (int)
- * SLANG_LONG_TYPE (long)
- * SLANG_FLOAT_TYPE (float)
- * SLANG_DOUBLE_TYPE (double)
- *
- * as well as unsigned types. The result-type of an arithmentic operation
- * will depend upon the data types involved. I am going to distinguish
- * between the boolean operations such as `and' and `or' from the arithmetic
- * operations such as `plus'. Since the result of a boolean operation is
- * either 1 or 0, a boolean result will be represented by SLANG_CHAR_TYPE.
- * Ordinarily I would use an integer but for arrays it makes more sense to
- * use a character data type.
- *
- * So, the following will be assumed (`+' is any arithmetic operator)
- *
- * char + char = int
- * char|short + short = int
- * char|short|int + int = int
- * char|short|int|long + long = long
- * char|short|int|long|float + float = float
- * char|short|int|long|float|double + double = double
- *
- * In the actual implementation, a brute force approach is avoided. Such
- * an approach would mean defining different functions for all possible
- * combinations of types. Including the unsigned types, and not including
- * the complex number type, there are 10 arithmetic types and 10*10=100
- * different combinations of types. Clearly this would be too much.
- *
- * One approach would be to define binary functions only between operands of
- * the same type and then convert types as appropriate. This would require
- * just 6 such functions (int, uint, long, ulong, float, double).
- * However, many conversion functions are going to be required, particularly
- * since we are going to allow typecasting from one arithmetic to another.
- * Since the bit pattern of signed and unsigned types are the same, and only
- * the interpretation differs, there will be no functions to convert between
- * signed and unsigned forms of a given type.
- */
-
-#define MAX_ARITHMETIC_TYPES 10
-
-unsigned char _SLarith_Is_Arith_Type [256];
-
-unsigned char _SLarith_Arith_Types[] =
-{
- SLANG_CHAR_TYPE,
- SLANG_UCHAR_TYPE,
- SLANG_SHORT_TYPE,
- SLANG_USHORT_TYPE,
- SLANG_INT_TYPE,
- SLANG_UINT_TYPE,
- SLANG_LONG_TYPE,
- SLANG_ULONG_TYPE,
- SLANG_FLOAT_TYPE,
- SLANG_DOUBLE_TYPE,
- 0
-};
-
-/* Here are a bunch of functions to convert from one type to another. To
- * facilitate the process, a macros will be used.
- */
-
-#define DEFUN_1(f,from_type,to_type) \
-static void f (to_type *y, from_type *x, unsigned int n) \
-{ \
- unsigned int i; \
- for (i = 0; i < n; i++) y[i] = (to_type) x[i]; \
-}
-
-#define DEFUN_2(f,from_type,to_type,copy_fun) \
-static VOID_STAR f (VOID_STAR xp, unsigned int n) \
-{ \
- from_type *x; \
- to_type *y; \
- x = (from_type *) xp; \
- if (NULL == (y = (to_type *) SLmalloc (sizeof (to_type) * n))) return NULL; \
- copy_fun (y, x, n); \
- return (VOID_STAR) y; \
-}
-typedef VOID_STAR (*Convert_Fun_Type)(VOID_STAR, unsigned int);
-
-DEFUN_1(copy_char_to_char,char,char)
-#if SIZEOF_INT != SIZEOF_SHORT
-DEFUN_1(copy_char_to_short,char,short)
-DEFUN_1(copy_char_to_ushort,char,unsigned short)
-#else
-# define copy_char_to_short copy_char_to_int
-# define copy_char_to_ushort copy_char_to_uint
-#endif
-DEFUN_1(copy_char_to_int,char,int)
-DEFUN_1(copy_char_to_uint,char,unsigned int)
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_1(copy_char_to_long,char,long)
-DEFUN_1(copy_char_to_ulong,char,unsigned long)
-#else
-# define copy_char_to_long copy_char_to_int
-# define copy_char_to_ulong copy_char_to_uint
-#endif
-DEFUN_1(copy_char_to_float,char,float)
-DEFUN_1(copy_char_to_double,char,double)
-
-#if SIZEOF_INT != SIZEOF_SHORT
-DEFUN_1(copy_uchar_to_short,unsigned char,short)
-DEFUN_1(copy_uchar_to_ushort,unsigned char,unsigned short)
-#else
-# define copy_uchar_to_short copy_uchar_to_int
-# define copy_uchar_to_ushort copy_uchar_to_uint
-#endif
-DEFUN_1(copy_uchar_to_int,unsigned char,int)
-DEFUN_1(copy_uchar_to_uint,unsigned char,unsigned int)
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_1(copy_uchar_to_long,unsigned char,long)
-DEFUN_1(copy_uchar_to_ulong,unsigned char,unsigned long)
-#else
-# define copy_uchar_to_long copy_uchar_to_int
-# define copy_uchar_to_ulong copy_uchar_to_uint
-#endif
-DEFUN_1(copy_uchar_to_float,unsigned char,float)
-DEFUN_1(copy_uchar_to_double,unsigned char,double)
-
-#if SIZEOF_INT != SIZEOF_SHORT
-DEFUN_1(copy_short_to_char,short,char)
-DEFUN_1(copy_short_to_uchar,short,unsigned char)
-DEFUN_1(copy_short_to_short,short,short)
-DEFUN_1(copy_short_to_int,short,int)
-DEFUN_1(copy_short_to_uint,short,unsigned int)
-DEFUN_1(copy_short_to_long,short,long)
-DEFUN_1(copy_short_to_ulong,short,unsigned long)
-DEFUN_1(copy_short_to_float,short,float)
-DEFUN_1(copy_short_to_double,short,double)
-DEFUN_1(copy_ushort_to_char,unsigned short,char)
-DEFUN_1(copy_ushort_to_uchar,unsigned short,unsigned char)
-DEFUN_1(copy_ushort_to_int,unsigned short,int)
-DEFUN_1(copy_ushort_to_uint,unsigned short,unsigned int)
-DEFUN_1(copy_ushort_to_long,unsigned short,long)
-DEFUN_1(copy_ushort_to_ulong,unsigned short,unsigned long)
-DEFUN_1(copy_ushort_to_float,unsigned short,float)
-DEFUN_1(copy_ushort_to_double,unsigned short,double)
-#else
-# define copy_short_to_char copy_int_to_char
-# define copy_short_to_uchar copy_int_to_uchar
-# define copy_short_to_short copy_int_to_int
-# define copy_short_to_int copy_int_to_int
-# define copy_short_to_uint copy_int_to_int
-# define copy_short_to_long copy_int_to_long
-# define copy_short_to_ulong copy_int_to_ulong
-# define copy_short_to_float copy_int_to_float
-# define copy_short_to_double copy_int_to_double
-# define copy_ushort_to_char copy_uint_to_char
-# define copy_ushort_to_uchar copy_uint_to_uchar
-# define copy_ushort_to_int copy_int_to_int
-# define copy_ushort_to_uint copy_int_to_int
-# define copy_ushort_to_long copy_uint_to_long
-# define copy_ushort_to_ulong copy_uint_to_ulong
-# define copy_ushort_to_float copy_uint_to_float
-# define copy_ushort_to_double copy_uint_to_double
-#endif
-
-DEFUN_1(copy_int_to_char,int,char)
-DEFUN_1(copy_int_to_uchar,int,unsigned char)
-DEFUN_1(copy_uint_to_char,unsigned int,char)
-DEFUN_1(copy_uint_to_uchar,unsigned int,unsigned char)
-#if SIZEOF_INT != SIZEOF_SHORT
-DEFUN_1(copy_int_to_short,int,short)
-DEFUN_1(copy_int_to_ushort,int,unsigned short)
-DEFUN_1(copy_uint_to_short,unsigned int,short)
-DEFUN_1(copy_uint_to_ushort,unsigned int,unsigned short)
-#else
-# define copy_int_to_short copy_int_to_int
-# define copy_int_to_ushort copy_int_to_int
-# define copy_uint_to_short copy_int_to_int
-# define copy_uint_to_ushort copy_int_to_int
-#endif
-DEFUN_1(copy_int_to_int,int,int)
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_1(copy_int_to_long,int,long)
-DEFUN_1(copy_int_to_ulong,int,unsigned long)
-DEFUN_1(copy_uint_to_long,unsigned int,long)
-DEFUN_1(copy_uint_to_ulong,unsigned int,unsigned long)
-#else
-# define copy_int_to_long copy_int_to_int
-# define copy_int_to_ulong copy_int_to_int
-# define copy_uint_to_long copy_int_to_int
-# define copy_uint_to_ulong copy_int_to_int
-#endif
-DEFUN_1(copy_int_to_float,int,float)
-DEFUN_1(copy_int_to_double,int,double)
-DEFUN_1(copy_uint_to_float,unsigned int,float)
-DEFUN_1(copy_uint_to_double,unsigned int,double)
-
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_1(copy_long_to_char,long,char)
-DEFUN_1(copy_long_to_uchar,long,unsigned char)
-DEFUN_1(copy_long_to_short,long,short)
-DEFUN_1(copy_long_to_ushort,long,unsigned short)
-DEFUN_1(copy_long_to_int,long,int)
-DEFUN_1(copy_long_to_uint,long,unsigned int)
-DEFUN_1(copy_long_to_long,long,long)
-DEFUN_1(copy_long_to_float,long,float)
-DEFUN_1(copy_long_to_double,long,double)
-DEFUN_1(copy_ulong_to_char,unsigned long,char)
-DEFUN_1(copy_ulong_to_uchar,unsigned long,unsigned char)
-DEFUN_1(copy_ulong_to_short,unsigned long,short)
-DEFUN_1(copy_ulong_to_ushort,unsigned long,unsigned short)
-DEFUN_1(copy_ulong_to_int,unsigned long,int)
-DEFUN_1(copy_ulong_to_uint,unsigned long,unsigned int)
-DEFUN_1(copy_ulong_to_float,unsigned long,float)
-DEFUN_1(copy_ulong_to_double,unsigned long,double)
-#else
-#define copy_long_to_char copy_int_to_char
-#define copy_long_to_uchar copy_int_to_uchar
-#define copy_long_to_short copy_int_to_short
-#define copy_long_to_ushort copy_int_to_ushort
-#define copy_long_to_int copy_int_to_int
-#define copy_long_to_uint copy_int_to_int
-#define copy_long_to_long copy_int_to_int
-#define copy_long_to_float copy_int_to_float
-#define copy_long_to_double copy_int_to_double
-#define copy_ulong_to_char copy_uint_to_char
-#define copy_ulong_to_uchar copy_uint_to_uchar
-#define copy_ulong_to_short copy_uint_to_short
-#define copy_ulong_to_ushort copy_uint_to_ushort
-#define copy_ulong_to_int copy_int_to_int
-#define copy_ulong_to_uint copy_int_to_int
-#define copy_ulong_to_float copy_uint_to_float
-#define copy_ulong_to_double copy_uint_to_double
-#endif
-
-DEFUN_1(copy_float_to_char,float,char)
-DEFUN_1(copy_float_to_uchar,float,unsigned char)
-#if SIZEOF_INT != SIZEOF_SHORT
-DEFUN_1(copy_float_to_short,float,short)
-DEFUN_1(copy_float_to_ushort,float,unsigned short)
-#else
-# define copy_float_to_short copy_float_to_int
-# define copy_float_to_ushort copy_float_to_uint
-#endif
-DEFUN_1(copy_float_to_int,float,int)
-DEFUN_1(copy_float_to_uint,float,unsigned int)
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_1(copy_float_to_long,float,long)
-DEFUN_1(copy_float_to_ulong,float,unsigned long)
-#else
-# define copy_float_to_long copy_float_to_int
-# define copy_float_to_ulong copy_float_to_uint
-#endif
-DEFUN_1(copy_float_to_float,float,float)
-DEFUN_1(copy_float_to_double,float,double)
-
-DEFUN_1(copy_double_to_char,double,char)
-DEFUN_1(copy_double_to_uchar,double,unsigned char)
-#if SIZEOF_INT != SIZEOF_SHORT
-DEFUN_1(copy_double_to_short,double,short)
-DEFUN_1(copy_double_to_ushort,double,unsigned short)
-#else
-# define copy_double_to_short copy_double_to_int
-# define copy_double_to_ushort copy_double_to_uint
-#endif
-DEFUN_1(copy_double_to_int,double,int)
-DEFUN_1(copy_double_to_uint,double,unsigned int)
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_1(copy_double_to_long,double,long)
-DEFUN_1(copy_double_to_ulong,double,unsigned long)
-#else
-# define copy_double_to_long copy_double_to_int
-# define copy_double_to_ulong copy_double_to_uint
-#endif
-DEFUN_1(copy_double_to_float,double,float)
-DEFUN_1(copy_double_to_double,double,double)
-
-DEFUN_2(char_to_int,char,int,copy_char_to_int)
-DEFUN_2(char_to_uint,char,unsigned int,copy_char_to_uint)
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_2(char_to_long,char,long,copy_char_to_long)
-DEFUN_2(char_to_ulong,char,unsigned long,copy_char_to_ulong)
-#else
-# define char_to_long char_to_int
-# define char_to_ulong char_to_uint
-#endif
-DEFUN_2(char_to_float,char,float,copy_char_to_float)
-DEFUN_2(char_to_double,char,double,copy_char_to_double)
-
-DEFUN_2(uchar_to_int,unsigned char,int,copy_uchar_to_int)
-DEFUN_2(uchar_to_uint,unsigned char,unsigned int,copy_uchar_to_uint)
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_2(uchar_to_long,unsigned char,long,copy_uchar_to_long)
-DEFUN_2(uchar_to_ulong,unsigned char,unsigned long,copy_uchar_to_ulong)
-#else
-# define uchar_to_long uchar_to_int
-# define uchar_to_ulong uchar_to_uint
-#endif
-DEFUN_2(uchar_to_float,unsigned char,float,copy_uchar_to_float)
-DEFUN_2(uchar_to_double,unsigned char,double,copy_uchar_to_double)
-
-#if SIZEOF_INT != SIZEOF_SHORT
-DEFUN_2(short_to_int,short,int,copy_short_to_int)
-DEFUN_2(short_to_uint,short,unsigned int,copy_short_to_uint)
-DEFUN_2(short_to_long,short,long,copy_short_to_long)
-DEFUN_2(short_to_ulong,short,unsigned long,copy_short_to_ulong)
-DEFUN_2(short_to_float,short,float,copy_short_to_float)
-DEFUN_2(short_to_double,short,double,copy_short_to_double)
-DEFUN_2(ushort_to_int,unsigned short,int,copy_ushort_to_int)
-DEFUN_2(ushort_to_uint,unsigned short,unsigned int,copy_ushort_to_uint)
-DEFUN_2(ushort_to_long,unsigned short,long,copy_ushort_to_long)
-DEFUN_2(ushort_to_ulong,unsigned short,unsigned long,copy_ushort_to_ulong)
-DEFUN_2(ushort_to_float,unsigned short,float,copy_ushort_to_float)
-DEFUN_2(ushort_to_double,unsigned short,double,copy_ushort_to_double)
-#else
-# define short_to_int NULL
-# define short_to_uint NULL
-# define short_to_long int_to_long
-# define short_to_ulong int_to_ulong
-# define short_to_float int_to_float
-# define short_to_double int_to_double
-# define ushort_to_int NULL
-# define ushort_to_uint NULL
-# define ushort_to_long uint_to_long
-# define ushort_to_ulong uint_to_ulong
-# define ushort_to_float uint_to_float
-# define ushort_to_double uint_to_double
-#endif
-
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_2(int_to_long,int,long,copy_int_to_long)
-DEFUN_2(int_to_ulong,int,unsigned long,copy_int_to_ulong)
-#else
-# define int_to_long NULL
-# define int_to_ulong NULL
-#endif
-DEFUN_2(int_to_float,int,float,copy_int_to_float)
-DEFUN_2(int_to_double,int,double,copy_int_to_double)
-
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_2(uint_to_long,unsigned int,long,copy_uint_to_long)
-DEFUN_2(uint_to_ulong,unsigned int,unsigned long,copy_uint_to_ulong)
-#else
-# define uint_to_long NULL
-# define uint_to_ulong NULL
-#endif
-DEFUN_2(uint_to_float,unsigned int,float,copy_uint_to_float)
-DEFUN_2(uint_to_double,unsigned int,double,copy_uint_to_double)
-
-#if SIZEOF_INT != SIZEOF_LONG
-DEFUN_2(long_to_float,long,float,copy_long_to_float)
-DEFUN_2(long_to_double,long,double,copy_long_to_double)
-DEFUN_2(ulong_to_float,unsigned long,float,copy_ulong_to_float)
-DEFUN_2(ulong_to_double,unsigned long,double,copy_ulong_to_double)
-#else
-# define long_to_float int_to_float
-# define long_to_double int_to_double
-# define ulong_to_float uint_to_float
-# define ulong_to_double uint_to_double
-#endif
-
-DEFUN_2(float_to_double,float,double,copy_float_to_double)
-
-#define TO_DOUBLE_FUN(name,type) \
-static double name (VOID_STAR x) { return (double) *(type *) x; }
-TO_DOUBLE_FUN(char_to_one_double,char)
-TO_DOUBLE_FUN(uchar_to_one_double,unsigned char)
-#if SIZEOF_INT != SIZEOF_SHORT
-TO_DOUBLE_FUN(short_to_one_double,short)
-TO_DOUBLE_FUN(ushort_to_one_double,unsigned short)
-#else
-# define short_to_one_double int_to_one_double
-# define ushort_to_one_double uint_to_one_double
-#endif
-TO_DOUBLE_FUN(int_to_one_double,int)
-TO_DOUBLE_FUN(uint_to_one_double,unsigned int)
-#if SIZEOF_INT != SIZEOF_LONG
-TO_DOUBLE_FUN(long_to_one_double,long)
-TO_DOUBLE_FUN(ulong_to_one_double,unsigned long)
-#else
-# define long_to_one_double int_to_one_double
-# define ulong_to_one_double uint_to_one_double
-#endif
-TO_DOUBLE_FUN(float_to_one_double,float)
-TO_DOUBLE_FUN(double_to_one_double,double)
-
-SLang_To_Double_Fun_Type
-SLarith_get_to_double_fun (unsigned char type, unsigned int *sizeof_type)
-{
- unsigned int da;
- SLang_To_Double_Fun_Type to_double;
-
- switch (type)
- {
- default:
- return NULL;
-
- case SLANG_CHAR_TYPE:
- da = sizeof (char); to_double = char_to_one_double;
- break;
- case SLANG_UCHAR_TYPE:
- da = sizeof (unsigned char); to_double = uchar_to_one_double;
- break;
- case SLANG_SHORT_TYPE:
- da = sizeof (short); to_double = short_to_one_double;
- break;
- case SLANG_USHORT_TYPE:
- da = sizeof (unsigned short); to_double = ushort_to_one_double;
- break;
- case SLANG_INT_TYPE:
- da = sizeof (int); to_double = int_to_one_double;
- break;
- case SLANG_UINT_TYPE:
- da = sizeof (unsigned int); to_double = uint_to_one_double;
- break;
- case SLANG_LONG_TYPE:
- da = sizeof (long); to_double = long_to_one_double;
- break;
- case SLANG_ULONG_TYPE:
- da = sizeof (unsigned long); to_double = ulong_to_one_double;
- break;
- case SLANG_FLOAT_TYPE:
- da = sizeof (float); to_double = float_to_one_double;
- break;
- case SLANG_DOUBLE_TYPE:
- da = sizeof (double); to_double = double_to_one_double;
- break;
- }
-
- if (sizeof_type != NULL) *sizeof_type = da;
- return to_double;
-}
-
-/* Each element of the matrix determines how the row maps onto the column.
- * That is, let the matrix be B_ij. Where the i,j indices refer to
- * precedence of the type. Then,
- * B_ij->copy_function copies type i to type j. Similarly,
- * B_ij->convert_function mallocs a new array of type j and copies i to it.
- *
- * Since types are always converted to higher levels of precedence for binary
- * operations, many of the elements are NULL.
- *
- * Is the idea clear?
- */
-typedef struct
-{
- FVOID_STAR copy_function;
- Convert_Fun_Type convert_function;
-}
-Binary_Matrix_Type;
-
-static Binary_Matrix_Type Binary_Matrix [MAX_ARITHMETIC_TYPES][MAX_ARITHMETIC_TYPES] =
-{
- {
- {(FVOID_STAR)copy_char_to_char, NULL},
- {(FVOID_STAR)copy_char_to_char, NULL},
- {(FVOID_STAR) copy_char_to_short, NULL},
- {(FVOID_STAR) copy_char_to_ushort, NULL},
- {(FVOID_STAR) copy_char_to_int, char_to_int},
- {(FVOID_STAR) copy_char_to_uint, char_to_uint},
- {(FVOID_STAR) copy_char_to_long, char_to_long},
- {(FVOID_STAR) copy_char_to_ulong, char_to_ulong},
- {(FVOID_STAR) copy_char_to_float, char_to_float},
- {(FVOID_STAR) copy_char_to_double, char_to_double},
- },
-
- {
- {(FVOID_STAR)copy_char_to_char, NULL},
- {(FVOID_STAR)copy_char_to_char, NULL},
- {(FVOID_STAR) copy_uchar_to_short, NULL},
- {(FVOID_STAR) copy_uchar_to_ushort, NULL},
- {(FVOID_STAR) copy_uchar_to_int, uchar_to_int},
- {(FVOID_STAR) copy_uchar_to_uint, uchar_to_uint},
- {(FVOID_STAR) copy_uchar_to_long, uchar_to_long},
- {(FVOID_STAR) copy_uchar_to_ulong, uchar_to_ulong},
- {(FVOID_STAR) copy_uchar_to_float, uchar_to_float},
- {(FVOID_STAR) copy_uchar_to_double, uchar_to_double},
- },
-
- {
- {(FVOID_STAR) copy_short_to_char, NULL},
- {(FVOID_STAR) copy_short_to_uchar, NULL},
- {(FVOID_STAR) copy_short_to_short, NULL},
- {(FVOID_STAR) copy_short_to_short, NULL},
- {(FVOID_STAR) copy_short_to_int, short_to_int},
- {(FVOID_STAR) copy_short_to_uint, short_to_uint},
- {(FVOID_STAR) copy_short_to_long, short_to_long},
- {(FVOID_STAR) copy_short_to_ulong, short_to_ulong},
- {(FVOID_STAR) copy_short_to_float, short_to_float},
- {(FVOID_STAR) copy_short_to_double, short_to_double},
- },
-
- {
- {(FVOID_STAR) copy_ushort_to_char, NULL},
- {(FVOID_STAR) copy_ushort_to_uchar, NULL},
- {(FVOID_STAR) copy_short_to_short, NULL},
- {(FVOID_STAR) copy_short_to_short, NULL},
- {(FVOID_STAR) copy_ushort_to_int, ushort_to_int},
- {(FVOID_STAR) copy_ushort_to_uint, ushort_to_uint},
- {(FVOID_STAR) copy_ushort_to_long, ushort_to_long},
- {(FVOID_STAR) copy_ushort_to_ulong, ushort_to_ulong},
- {(FVOID_STAR) copy_ushort_to_float, ushort_to_float},
- {(FVOID_STAR) copy_ushort_to_double, ushort_to_double},
- },
-
- {
- {(FVOID_STAR) copy_int_to_char, NULL},
- {(FVOID_STAR) copy_int_to_uchar, NULL},
- {(FVOID_STAR) copy_int_to_short, NULL},
- {(FVOID_STAR) copy_int_to_ushort, NULL},
- {(FVOID_STAR) copy_int_to_int, NULL},
- {(FVOID_STAR) copy_int_to_int, NULL},
- {(FVOID_STAR) copy_int_to_long, int_to_long},
- {(FVOID_STAR) copy_int_to_ulong, int_to_ulong},
- {(FVOID_STAR) copy_int_to_float, int_to_float},
- {(FVOID_STAR) copy_int_to_double, int_to_double},
- },
-
- {
- {(FVOID_STAR) copy_uint_to_char, NULL},
- {(FVOID_STAR) copy_uint_to_uchar, NULL},
- {(FVOID_STAR) copy_uint_to_short, NULL},
- {(FVOID_STAR) copy_uint_to_ushort, NULL},
- {(FVOID_STAR) copy_int_to_int, NULL},
- {(FVOID_STAR) copy_int_to_int, NULL},
- {(FVOID_STAR) copy_uint_to_long, uint_to_long},
- {(FVOID_STAR) copy_uint_to_ulong, uint_to_ulong},
- {(FVOID_STAR) copy_uint_to_float, uint_to_float},
- {(FVOID_STAR) copy_uint_to_double, uint_to_double},
- },
-
- {
- {(FVOID_STAR) copy_long_to_char, NULL},
- {(FVOID_STAR) copy_long_to_uchar, NULL},
- {(FVOID_STAR) copy_long_to_short, NULL},
- {(FVOID_STAR) copy_long_to_ushort, NULL},
- {(FVOID_STAR) copy_long_to_int, NULL},
- {(FVOID_STAR) copy_long_to_uint, NULL},
- {(FVOID_STAR) copy_long_to_long, NULL},
- {(FVOID_STAR) copy_long_to_long, NULL},
- {(FVOID_STAR) copy_long_to_float, long_to_float},
- {(FVOID_STAR) copy_long_to_double, long_to_double},
- },
-
- {
- {(FVOID_STAR) copy_ulong_to_char, NULL},
- {(FVOID_STAR) copy_ulong_to_uchar, NULL},
- {(FVOID_STAR) copy_ulong_to_short, NULL},
- {(FVOID_STAR) copy_ulong_to_ushort, NULL},
- {(FVOID_STAR) copy_ulong_to_int, NULL},
- {(FVOID_STAR) copy_ulong_to_uint, NULL},
- {(FVOID_STAR) copy_long_to_long, NULL},
- {(FVOID_STAR) copy_long_to_long, NULL},
- {(FVOID_STAR) copy_ulong_to_float, ulong_to_float},
- {(FVOID_STAR) copy_ulong_to_double, ulong_to_double},
- },
-
- {
- {(FVOID_STAR) copy_float_to_char, NULL},
- {(FVOID_STAR) copy_float_to_uchar, NULL},
- {(FVOID_STAR) copy_float_to_short, NULL},
- {(FVOID_STAR) copy_float_to_ushort, NULL},
- {(FVOID_STAR) copy_float_to_int, NULL},
- {(FVOID_STAR) copy_float_to_uint, NULL},
- {(FVOID_STAR) copy_float_to_long, NULL},
- {(FVOID_STAR) copy_float_to_ulong, NULL},
- {(FVOID_STAR) copy_float_to_float, NULL},
- {(FVOID_STAR) copy_float_to_double, float_to_double},
- },
-
- {
- {(FVOID_STAR) copy_double_to_char, NULL},
- {(FVOID_STAR) copy_double_to_uchar, NULL},
- {(FVOID_STAR) copy_double_to_short, NULL},
- {(FVOID_STAR) copy_double_to_ushort, NULL},
- {(FVOID_STAR) copy_double_to_int, NULL},
- {(FVOID_STAR) copy_double_to_uint, NULL},
- {(FVOID_STAR) copy_double_to_long, NULL},
- {(FVOID_STAR) copy_double_to_ulong, NULL},
- {(FVOID_STAR) copy_double_to_float, NULL},
- {(FVOID_STAR) copy_double_to_double, NULL},
- }
-};
-
-#define GENERIC_BINARY_FUNCTION int_int_bin_op
-#define GENERIC_BIT_OPERATIONS
-#define GENERIC_TYPE int
-#define POW_FUNCTION(a,b) pow((double)(a),(double)(b))
-#define POW_RESULT_TYPE double
-#define ABS_FUNCTION abs
-#define MOD_FUNCTION(a,b) ((a) % (b))
-#define GENERIC_UNARY_FUNCTION int_unary_op
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : (((x) < 0) ? -1 : 0))
-#define SCALAR_BINARY_FUNCTION int_int_scalar_bin_op
-#define PUSH_SCALAR_OBJ_FUN(x) SLclass_push_int_obj(SLANG_INT_TYPE,(x))
-#define PUSH_POW_OBJ_FUN(x) SLclass_push_double_obj(SLANG_DOUBLE_TYPE, (x))
-#define CMP_FUNCTION int_cmp_function
-#include "slarith.inc"
-
-#define GENERIC_BINARY_FUNCTION uint_uint_bin_op
-#define GENERIC_BIT_OPERATIONS
-#define GENERIC_TYPE unsigned int
-#define POW_FUNCTION(a,b) pow((double)(a),(double)(b))
-#define POW_RESULT_TYPE double
-#define MOD_FUNCTION(a,b) ((a) % (b))
-#define GENERIC_UNARY_FUNCTION uint_unary_op
-#define ABS_FUNCTION(a) (a)
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : 0)
-#define SCALAR_BINARY_FUNCTION uint_uint_scalar_bin_op
-#define PUSH_SCALAR_OBJ_FUN(x) SLclass_push_int_obj(SLANG_UINT_TYPE,(int)(x))
-#define PUSH_POW_OBJ_FUN(x) SLclass_push_double_obj(SLANG_DOUBLE_TYPE, (x))
-#define CMP_FUNCTION uint_cmp_function
-#include "slarith.inc"
-
-#if SIZEOF_LONG != SIZEOF_INT
-#define GENERIC_BINARY_FUNCTION long_long_bin_op
-#define GENERIC_BIT_OPERATIONS
-#define GENERIC_TYPE long
-#define POW_FUNCTION(a,b) pow((double)(a),(double)(b))
-#define POW_RESULT_TYPE double
-#define MOD_FUNCTION(a,b) ((a) % (b))
-#define GENERIC_UNARY_FUNCTION long_unary_op
-#define ABS_FUNCTION(a) (((a) >= 0) ? (a) : -(a))
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : (((x) < 0) ? -1 : 0))
-#define SCALAR_BINARY_FUNCTION long_long_scalar_bin_op
-#define PUSH_SCALAR_OBJ_FUN(x) SLclass_push_long_obj(SLANG_LONG_TYPE,(x))
-#define PUSH_POW_OBJ_FUN(x) SLclass_push_double_obj(SLANG_DOUBLE_TYPE, (x))
-#define CMP_FUNCTION long_cmp_function
-#include "slarith.inc"
-
-#define GENERIC_BINARY_FUNCTION ulong_ulong_bin_op
-#define GENERIC_BIT_OPERATIONS
-#define GENERIC_TYPE unsigned long
-#define POW_FUNCTION(a,b) pow((double)(a),(double)(b))
-#define POW_RESULT_TYPE double
-#define MOD_FUNCTION(a,b) ((a) % (b))
-#define GENERIC_UNARY_FUNCTION ulong_unary_op
-#define ABS_FUNCTION(a) (a)
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : 0)
-#define SCALAR_BINARY_FUNCTION ulong_ulong_scalar_bin_op
-#define PUSH_SCALAR_OBJ_FUN(x) SLclass_push_long_obj(SLANG_ULONG_TYPE,(long)(x))
-#define PUSH_POW_OBJ_FUN(x) SLclass_push_double_obj(SLANG_DOUBLE_TYPE, (x))
-#define CMP_FUNCTION ulong_cmp_function
-#include "slarith.inc"
-#else
-#define long_long_bin_op int_int_bin_op
-#define ulong_ulong_bin_op uint_uint_bin_op
-#define long_unary_op int_unary_op
-#define ulong_unary_op uint_unary_op
-#define long_cmp_function int_cmp_function
-#define ulong_cmp_function uint_cmp_function
-#endif /* SIZEOF_INT != SIZEOF_LONG */
-
-#define GENERIC_BINARY_FUNCTION float_float_bin_op
-#define GENERIC_TYPE float
-#define POW_FUNCTION(a,b) (float)pow((double)(a),(double)(b))
-#define POW_RESULT_TYPE float
-#define MOD_FUNCTION(a,b) (float)fmod((a),(b))
-#define GENERIC_UNARY_FUNCTION float_unary_op
-#define ABS_FUNCTION(a) (float)fabs((double) a)
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : (((x) < 0) ? -1 : 0))
-#define SCALAR_BINARY_FUNCTION float_float_scalar_bin_op
-#define PUSH_SCALAR_OBJ_FUN(x) SLclass_push_float_obj(SLANG_FLOAT_TYPE,(x))
-#define PUSH_POW_OBJ_FUN(x) SLclass_push_float_obj(SLANG_FLOAT_TYPE, (x))
-#define CMP_FUNCTION float_cmp_function
-#include "slarith.inc"
-
-#define GENERIC_BINARY_FUNCTION double_double_bin_op
-#define GENERIC_TYPE double
-#define POW_FUNCTION(a,b) pow((double)(a),(double)(b))
-#define POW_RESULT_TYPE double
-#define MOD_FUNCTION(a,b) (float)fmod((a),(b))
-#define GENERIC_UNARY_FUNCTION double_unary_op
-#define ABS_FUNCTION(a) fabs(a)
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : (((x) < 0) ? -1 : 0))
-#define SCALAR_BINARY_FUNCTION double_double_scalar_bin_op
-#define PUSH_SCALAR_OBJ_FUN(x) SLclass_push_double_obj(SLANG_DOUBLE_TYPE,(x))
-#define PUSH_POW_OBJ_FUN(x) SLclass_push_double_obj(SLANG_DOUBLE_TYPE, (x))
-#define CMP_FUNCTION double_cmp_function
-#include "slarith.inc"
-
-#define GENERIC_UNARY_FUNCTION char_unary_op
-#define GENERIC_BIT_OPERATIONS
-#define GENERIC_TYPE signed char
-#define ABS_FUNCTION abs
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : (((x) < 0) ? -1 : 0))
-#define CMP_FUNCTION char_cmp_function
-#include "slarith.inc"
-
-#define GENERIC_UNARY_FUNCTION uchar_unary_op
-#define GENERIC_BIT_OPERATIONS
-#define GENERIC_TYPE unsigned char
-#define ABS_FUNCTION(x) (x)
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : 0)
-#define CMP_FUNCTION uchar_cmp_function
-#include "slarith.inc"
-
-#if SIZEOF_SHORT != SIZEOF_INT
-#define GENERIC_UNARY_FUNCTION short_unary_op
-#define GENERIC_BIT_OPERATIONS
-#define GENERIC_TYPE short
-#define ABS_FUNCTION abs
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : (((x) < 0) ? -1 : 0))
-#define CMP_FUNCTION short_cmp_function
-#include "slarith.inc"
-
-#define GENERIC_UNARY_FUNCTION ushort_unary_op
-#define GENERIC_BIT_OPERATIONS
-#define GENERIC_TYPE unsigned short
-#define ABS_FUNCTION(x) (x)
-#define SIGN_FUNCTION(x) (((x) > 0) ? 1 : 0)
-#define CMP_FUNCTION ushort_cmp_function
-#include "slarith.inc"
-#endif /* SIZEOF_INT != SIZEOF_SHORT */
-
-/* Unfortunately, the numbers that were assigned to the data-types were
- * not well thought out. So, I need to use the following table.
- */
-#define MAXIMUM_ARITH_TYPE_VALUE SLANG_FLOAT_TYPE
-#define IS_INTEGER_TYPE(x) \
- (((x) <= MAXIMUM_ARITH_TYPE_VALUE) \
- && (Type_Precedence_Table[x] < 8) && (Type_Precedence_Table[x] != -1))
-#define IS_ARITHMETIC_TYPE(x) \
- (((x) <= MAXIMUM_ARITH_TYPE_VALUE) && (Type_Precedence_Table[x] != -1))
-
-#define LONG_PRECEDENCE_VALUE 6
-#define FLOAT_PRECEDENCE_VALUE 8
-
-static signed char Type_Precedence_Table [MAXIMUM_ARITH_TYPE_VALUE + 1] =
-{
- -1, /* SLANG_UNDEFINED_TYPE */
- -1, /* SLANG_VOID_TYPE */
- 4, /* SLANG_INT_TYPE */
- 9, /* SLANG_DOUBLE_TYPE */
- 0, /* SLANG_CHAR_TYPE */
- -1, /* SLANG_INTP_TYPE */
- -1, /* SLANG_REF_TYPE */
- -1, /* SLANG_COMPLEX_TYPE */
- -1, /* SLANG_NULL_TYPE */
- 1, /* SLANG_UCHAR_TYPE */
- 2, /* SLANG_SHORT_TYPE */
- 3, /* SLANG_USHORT_TYPE */
- 5, /* SLANG_UINT_TYPE */
- 6, /* SLANG_LONG_TYPE */
- 7, /* SLANG_ULONG_TYPE */
- -1, /* SLANG_STRING_TYPE */
- 8 /* SLANG_FLOAT_TYPE */
-};
-
-int _SLarith_get_precedence (unsigned char type)
-{
- if (type > MAXIMUM_ARITH_TYPE_VALUE)
- return -1;
-
- return Type_Precedence_Table[type];
-}
-
-unsigned char _SLarith_promote_type (unsigned char t)
-{
- switch (t)
- {
- case SLANG_FLOAT_TYPE:
- case SLANG_DOUBLE_TYPE:
- case SLANG_LONG_TYPE:
- case SLANG_ULONG_TYPE:
- case SLANG_INT_TYPE:
- case SLANG_UINT_TYPE:
- break;
-
- case SLANG_USHORT_TYPE:
-#if SIZEOF_INT == SIZEOF_SHORT
- t = SLANG_UINT_TYPE;
- break;
-#endif
- /* drop */
- case SLANG_CHAR_TYPE:
- case SLANG_UCHAR_TYPE:
- case SLANG_SHORT_TYPE:
- default:
- t = SLANG_INT_TYPE;
- }
-
- return t;
-}
-
-static unsigned char promote_to_common_type (unsigned char a, unsigned char b)
-{
- a = _SLarith_promote_type (a);
- b = _SLarith_promote_type (b);
-
- return (Type_Precedence_Table[a] > Type_Precedence_Table[b]) ? a : b;
-}
-
-static int arith_bin_op_result (int op, unsigned char a_type, unsigned char b_type,
- unsigned char *c_type)
-{
- switch (op)
- {
- case SLANG_EQ:
- case SLANG_NE:
- case SLANG_GT:
- case SLANG_GE:
- case SLANG_LT:
- case SLANG_LE:
- case SLANG_OR:
- case SLANG_AND:
- *c_type = SLANG_CHAR_TYPE;
- return 1;
-
- case SLANG_POW:
- if (SLANG_FLOAT_TYPE == promote_to_common_type (a_type, b_type))
- *c_type = SLANG_FLOAT_TYPE;
- else
- *c_type = SLANG_DOUBLE_TYPE;
- return 1;
-
- case SLANG_BAND:
- case SLANG_BXOR:
- case SLANG_BOR:
- case SLANG_SHL:
- case SLANG_SHR:
- /* The bit-level operations are defined just for integer types */
- if ((0 == IS_INTEGER_TYPE (a_type))
- || (0 == IS_INTEGER_TYPE(b_type)))
- return 0;
- break;
-
- default:
- break;
- }
-
- *c_type = promote_to_common_type (a_type, b_type);
- return 1;
-}
-
-typedef int (*Bin_Fun_Type) (int,
- unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR);
-
-/* This array of functions must be indexed by precedence after arithmetic
- * promotions.
- */
-static Bin_Fun_Type Bin_Fun_Map [MAX_ARITHMETIC_TYPES] =
-{
- NULL,
- NULL,
- NULL,
- NULL,
- int_int_bin_op,
- uint_uint_bin_op,
- long_long_bin_op,
- ulong_ulong_bin_op,
- float_float_bin_op,
- double_double_bin_op
-};
-
-static int arith_bin_op (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- Convert_Fun_Type af, bf;
- Bin_Fun_Type binfun;
- int a_indx, b_indx, c_indx;
- unsigned char c_type;
- int ret;
-
- c_type = promote_to_common_type (a_type, b_type);
-
- a_indx = Type_Precedence_Table [a_type];
- b_indx = Type_Precedence_Table [b_type];
- c_indx = Type_Precedence_Table [c_type];
-
- af = Binary_Matrix[a_indx][c_indx].convert_function;
- bf = Binary_Matrix[b_indx][c_indx].convert_function;
- binfun = Bin_Fun_Map[c_indx];
-
- if ((af != NULL)
- && (NULL == (ap = (VOID_STAR) (*af) (ap, na))))
- return -1;
-
- if ((bf != NULL)
- && (NULL == (bp = (VOID_STAR) (*bf) (bp, nb))))
- {
- if (af != NULL) SLfree ((char *) ap);
- return -1;
- }
-
- ret = (*binfun) (op, a_type, ap, na, b_type, bp, nb, cp);
- if (af != NULL) SLfree ((char *) ap);
- if (bf != NULL) SLfree ((char *) bp);
-
- return ret;
-}
-
-static int arith_unary_op_result (int op, unsigned char a, unsigned char *b)
-{
- (void) a;
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_SQR:
- case SLANG_MUL2:
- case SLANG_PLUSPLUS:
- case SLANG_MINUSMINUS:
- case SLANG_CHS:
- case SLANG_ABS:
- *b = a;
- break;
-
- case SLANG_NOT:
- case SLANG_BNOT:
- if (0 == IS_INTEGER_TYPE(a))
- return 0;
- *b = a;
- break;
-
- case SLANG_SIGN:
- *b = SLANG_INT_TYPE;
- break;
- }
- return 1;
-}
-
-static int integer_pop (unsigned char type, VOID_STAR ptr)
-{
- SLang_Object_Type obj;
- int i, j;
- void (*f)(VOID_STAR, VOID_STAR, unsigned int);
-
- if (-1 == SLang_pop (&obj))
- return -1;
-
- if ((obj.data_type > MAXIMUM_ARITH_TYPE_VALUE)
- || ((j = Type_Precedence_Table[obj.data_type]) == -1)
- || (j >= FLOAT_PRECEDENCE_VALUE))
- {
- _SLclass_type_mismatch_error (type, obj.data_type);
- SLang_free_object (&obj);
- return -1;
- }
-
- i = Type_Precedence_Table[type];
- f = (void (*)(VOID_STAR, VOID_STAR, unsigned int))
- Binary_Matrix[j][i].copy_function;
-
- (*f) (ptr, (VOID_STAR)&obj.v, 1);
-
- return 0;
-}
-
-static int integer_push (unsigned char type, VOID_STAR ptr)
-{
- SLang_Object_Type obj;
- int i;
- void (*f)(VOID_STAR, VOID_STAR, unsigned int);
-
- i = Type_Precedence_Table[type];
- f = (void (*)(VOID_STAR, VOID_STAR, unsigned int))
- Binary_Matrix[i][i].copy_function;
-
- obj.data_type = type;
-
- (*f) ((VOID_STAR)&obj.v, ptr, 1);
-
- return SLang_push (&obj);
-}
-
-int SLang_pop_char (char *i)
-{
- return integer_pop (SLANG_CHAR_TYPE, (VOID_STAR) i);
-}
-
-int SLang_pop_uchar (unsigned char *i)
-{
- return integer_pop (SLANG_UCHAR_TYPE, (VOID_STAR) i);
-}
-
-int SLang_pop_short (short *i)
-{
- return integer_pop (SLANG_SHORT_TYPE, (VOID_STAR) i);
-}
-
-int SLang_pop_ushort (unsigned short *i)
-{
- return integer_pop (SLANG_USHORT_TYPE, (VOID_STAR) i);
-}
-
-int SLang_pop_long (long *i)
-{
- return integer_pop (SLANG_LONG_TYPE, (VOID_STAR) i);
-}
-
-int SLang_pop_ulong (unsigned long *i)
-{
- return integer_pop (SLANG_ULONG_TYPE, (VOID_STAR) i);
-}
-
-int SLang_pop_integer (int *i)
-{
-#if _SLANG_OPTIMIZE_FOR_SPEED
- SLang_Object_Type obj;
-
- if (-1 == _SLang_pop_object_of_type (SLANG_INT_TYPE, &obj, 0))
- return -1;
- *i = obj.v.int_val;
- return 0;
-#else
- return integer_pop (SLANG_INT_TYPE, (VOID_STAR) i);
-#endif
-}
-
-int SLang_pop_uinteger (unsigned int *i)
-{
- return integer_pop (SLANG_UINT_TYPE, (VOID_STAR) i);
-}
-
-int SLang_push_integer (int i)
-{
- return SLclass_push_int_obj (SLANG_INT_TYPE, i);
-}
-int SLang_push_uinteger (unsigned int i)
-{
- return SLclass_push_int_obj (SLANG_UINT_TYPE, (int) i);
-}
-int SLang_push_char (char i)
-{
- return SLclass_push_char_obj (SLANG_CHAR_TYPE, i);
-}
-int SLang_push_uchar (unsigned char i)
-{
- return SLclass_push_char_obj (SLANG_UCHAR_TYPE, (char) i);
-}
-int SLang_push_short (short i)
-{
- return SLclass_push_short_obj (SLANG_SHORT_TYPE, i);
-}
-int SLang_push_ushort (unsigned short i)
-{
- return SLclass_push_short_obj (SLANG_USHORT_TYPE, (unsigned short) i);
-}
-int SLang_push_long (long i)
-{
- return SLclass_push_long_obj (SLANG_LONG_TYPE, i);
-}
-int SLang_push_ulong (unsigned long i)
-{
- return SLclass_push_long_obj (SLANG_ULONG_TYPE, (long) i);
-}
-
-_INLINE_
-int _SLarith_typecast (unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp)
-{
- int i, j;
-
- void (*copy)(VOID_STAR, VOID_STAR, unsigned int);
-
- i = Type_Precedence_Table[a_type];
- j = Type_Precedence_Table[b_type];
-
- copy = (void (*)(VOID_STAR, VOID_STAR, unsigned int))
- Binary_Matrix[i][j].copy_function;
-
- (*copy) (bp, ap, na);
- return 1;
-}
-
-#if SLANG_HAS_FLOAT
-
-int SLang_pop_double(double *x, int *convertp, int *ip)
-{
- SLang_Object_Type obj;
- int i, convert;
-
- if (0 != SLang_pop (&obj))
- return -1;
-
- i = 0;
- convert = 0;
-
- switch (obj.data_type)
- {
- case SLANG_FLOAT_TYPE:
- *x = (double) obj.v.float_val;
- break;
-
- case SLANG_DOUBLE_TYPE:
- *x = obj.v.double_val;
- break;
-
- case SLANG_INT_TYPE:
- i = (int) obj.v.long_val;
- *x = (double) i;
- convert = 1;
- break;
-
- case SLANG_CHAR_TYPE: *x = (double) obj.v.char_val; break;
- case SLANG_UCHAR_TYPE: *x = (double) obj.v.uchar_val; break;
- case SLANG_SHORT_TYPE: *x = (double) obj.v.short_val; break;
- case SLANG_USHORT_TYPE: *x = (double) obj.v.ushort_val; break;
- case SLANG_UINT_TYPE: *x = (double) obj.v.uint_val; break;
- case SLANG_LONG_TYPE: *x = (double) obj.v.long_val; break;
- case SLANG_ULONG_TYPE: *x = (double) obj.v.ulong_val; break;
-
- default:
- _SLclass_type_mismatch_error (SLANG_DOUBLE_TYPE, obj.data_type);
- SLang_free_object (&obj);
- return -1;
- }
-
- if (convertp != NULL) *convertp = convert;
- if (ip != NULL) *ip = i;
-
- return 0;
-}
-
-int SLang_push_double (double x)
-{
- return SLclass_push_double_obj (SLANG_DOUBLE_TYPE, x);
-}
-
-int SLang_pop_float (float *x)
-{
- double d;
-
- /* Pop it as a double and let the double function do all the typcasting */
- if (-1 == SLang_pop_double (&d, NULL, NULL))
- return -1;
-
- *x = (float) d;
- return 0;
-}
-
-int SLang_push_float (float f)
-{
- return SLclass_push_float_obj (SLANG_FLOAT_TYPE, (double) f);
-}
-
-/* Double */
-static int double_push (unsigned char unused, VOID_STAR ptr)
-{
- (void) unused;
- SLang_push_double (*(double *) ptr);
- return 0;
-}
-
-static int double_push_literal (unsigned char type, VOID_STAR ptr)
-{
- (void) type;
- return SLang_push_double (**(double **)ptr);
-}
-
-static int double_pop (unsigned char unused, VOID_STAR ptr)
-{
- (void) unused;
- return SLang_pop_double ((double *) ptr, NULL, NULL);
-}
-
-static void double_byte_code_destroy (unsigned char unused, VOID_STAR ptr)
-{
- (void) unused;
- SLfree (*(char **) ptr);
-}
-
-static int float_push (unsigned char unused, VOID_STAR ptr)
-{
- (void) unused;
- SLang_push_float (*(float *) ptr);
- return 0;
-}
-
-static int float_pop (unsigned char unused, VOID_STAR ptr)
-{
- (void) unused;
- return SLang_pop_float ((float *) ptr);
-}
-
-#endif /* SLANG_HAS_FLOAT */
-
-#if SLANG_HAS_FLOAT
-static char Double_Format[16] = "%g";
-
-void _SLset_double_format (char *s)
-{
- strncpy (Double_Format, s, 15);
- Double_Format[15] = 0;
-}
-#endif
-
-static char *arith_string (unsigned char type, VOID_STAR v)
-{
- char buf [256];
- char *s;
-
- s = buf;
-
- switch (type)
- {
- default:
- s = SLclass_get_datatype_name (type);
- break;
-
- case SLANG_CHAR_TYPE:
- sprintf (s, "%d", *(char *) v);
- break;
- case SLANG_UCHAR_TYPE:
- sprintf (s, "%u", *(unsigned char *) v);
- break;
- case SLANG_SHORT_TYPE:
- sprintf (s, "%d", *(short *) v);
- break;
- case SLANG_USHORT_TYPE:
- sprintf (s, "%u", *(unsigned short *) v);
- break;
- case SLANG_INT_TYPE:
- sprintf (s, "%d", *(int *) v);
- break;
- case SLANG_UINT_TYPE:
- sprintf (s, "%u", *(unsigned int *) v);
- break;
- case SLANG_LONG_TYPE:
- sprintf (s, "%ld", *(long *) v);
- break;
- case SLANG_ULONG_TYPE:
- sprintf (s, "%lu", *(unsigned long *) v);
- break;
-#if SLANG_HAS_FLOAT
- case SLANG_FLOAT_TYPE:
- if (EOF == _SLsnprintf (buf, sizeof (buf), Double_Format, *(float *) v))
- sprintf (s, "%e", *(float *) v);
- break;
- case SLANG_DOUBLE_TYPE:
- if (EOF == _SLsnprintf (buf, sizeof (buf), Double_Format, *(double *) v))
- sprintf (s, "%e", *(double *) v);
- break;
-#endif
- }
-
- return SLmake_string (s);
-}
-
-static int integer_to_bool (unsigned char type, int *t)
-{
- (void) type;
- return SLang_pop_integer (t);
-}
-
-static int push_int_literal (unsigned char type, VOID_STAR ptr)
-{
- return SLclass_push_int_obj (type, (int) *(long *) ptr);
-}
-
-static int push_char_literal (unsigned char type, VOID_STAR ptr)
-{
- return SLclass_push_char_obj (type, (char) *(long *) ptr);
-}
-
-#if SIZEOF_SHORT != SIZEOF_INT
-static int push_short_literal (unsigned char type, VOID_STAR ptr)
-{
- return SLclass_push_short_obj (type, (short) *(long *) ptr);
-}
-#endif
-
-#if SIZEOF_INT != SIZEOF_LONG
-static int push_long_literal (unsigned char type, VOID_STAR ptr)
-{
- return SLclass_push_long_obj (type, *(long *) ptr);
-}
-#endif
-
-typedef struct
-{
- char *name;
- unsigned char data_type;
- unsigned int sizeof_type;
- int (*unary_fun)(int, unsigned char, VOID_STAR, unsigned int, VOID_STAR);
- int (*push_literal) (unsigned char, VOID_STAR);
- int (*cmp_fun) (unsigned char, VOID_STAR, VOID_STAR, int *);
-}
-Integer_Info_Type;
-
-static Integer_Info_Type Integer_Types [8] =
-{
- {"Char_Type", SLANG_CHAR_TYPE, sizeof (char), char_unary_op, push_char_literal, char_cmp_function},
- {"UChar_Type", SLANG_UCHAR_TYPE, sizeof (unsigned char), uchar_unary_op, push_char_literal, uchar_cmp_function},
-#if SIZEOF_INT != SIZEOF_SHORT
- {"Short_Type", SLANG_SHORT_TYPE, sizeof (short), short_unary_op, push_short_literal, short_cmp_function},
- {"UShort_Type", SLANG_USHORT_TYPE, sizeof (unsigned short), ushort_unary_op, push_short_literal, ushort_cmp_function},
-#else
- {NULL, SLANG_SHORT_TYPE},
- {NULL, SLANG_USHORT_TYPE},
-#endif
-
- {"Integer_Type", SLANG_INT_TYPE, sizeof (int), int_unary_op, push_int_literal, int_cmp_function},
- {"UInteger_Type", SLANG_UINT_TYPE, sizeof (unsigned int), uint_unary_op, push_int_literal, uint_cmp_function},
-
-#if SIZEOF_INT != SIZEOF_LONG
- {"Long_Type", SLANG_LONG_TYPE, sizeof (long), long_unary_op, push_long_literal, long_cmp_function},
- {"ULong_Type", SLANG_ULONG_TYPE, sizeof (unsigned long), ulong_unary_op, push_long_literal, ulong_cmp_function}
-#else
- {NULL, SLANG_LONG_TYPE, 0, NULL, NULL, NULL},
- {NULL, SLANG_ULONG_TYPE, 0, NULL, NULL, NULL}
-#endif
-};
-
-static int create_synonyms (void)
-{
- static char *names[8] =
- {
- "Int16_Type", "UInt16_Type", "Int32_Type", "UInt32_Type",
- "Int64_Type", "UInt64_Type",
- "Float32_Type", "Float64_Type"
- };
- int types[8];
- unsigned int i;
-
- memset ((char *) types, 0, sizeof (types));
-
- /* The assumption is that sizeof(unsigned X) == sizeof (X) */
-#if SIZEOF_INT == 2
- types[0] = SLANG_INT_TYPE;
- types[1] = SLANG_UINT_TYPE;
-#else
-# if SIZEOF_SHORT == 2
- types[0] = SLANG_SHORT_TYPE;
- types[1] = SLANG_USHORT_TYPE;
-# else
-# if SIZEOF_LONG == 2
- types[0] = SLANG_LONG_TYPE;
- types[1] = SLANG_ULONG_TYPE;
-# endif
-# endif
-#endif
-
-#if SIZEOF_INT == 4
- types[2] = SLANG_INT_TYPE;
- types[3] = SLANG_UINT_TYPE;
-#else
-# if SIZEOF_SHORT == 4
- types[2] = SLANG_SHORT_TYPE;
- types[3] = SLANG_USHORT_TYPE;
-# else
-# if SIZEOF_LONG == 4
- types[2] = SLANG_LONG_TYPE;
- types[3] = SLANG_ULONG_TYPE;
-# endif
-# endif
-#endif
-
-#if SIZEOF_INT == 8
- types[4] = SLANG_INT_TYPE;
- types[5] = SLANG_UINT_TYPE;
-#else
-# if SIZEOF_SHORT == 8
- types[4] = SLANG_SHORT_TYPE;
- types[5] = SLANG_USHORT_TYPE;
-# else
-# if SIZEOF_LONG == 8
- types[4] = SLANG_LONG_TYPE;
- types[5] = SLANG_ULONG_TYPE;
-# endif
-# endif
-#endif
-
-#if SLANG_HAS_FLOAT
-
-#if SIZEOF_FLOAT == 4
- types[6] = SLANG_FLOAT_TYPE;
-#else
-# if SIZEOF_DOUBLE == 4
- types[6] = SLANG_DOUBLE_TYPE;
-# endif
-#endif
-#if SIZEOF_FLOAT == 8
- types[7] = SLANG_FLOAT_TYPE;
-#else
-# if SIZEOF_DOUBLE == 8
- types[7] = SLANG_DOUBLE_TYPE;
-# endif
-#endif
-
-#endif
-
- if ((-1 == SLclass_create_synonym ("Int_Type", SLANG_INT_TYPE))
- || (-1 == SLclass_create_synonym ("UInt_Type", SLANG_UINT_TYPE)))
- return -1;
-
- for (i = 0; i < 8; i++)
- {
- if (types[i] == 0) continue;
-
- if (-1 == SLclass_create_synonym (names[i], types[i]))
- return -1;
- }
-
-#if SIZEOF_INT == SIZEOF_SHORT
- if ((-1 == SLclass_create_synonym ("Short_Type", SLANG_INT_TYPE))
- || (-1 == SLclass_create_synonym ("UShort_Type", SLANG_UINT_TYPE))
- || (-1 == _SLclass_copy_class (SLANG_SHORT_TYPE, SLANG_INT_TYPE))
- || (-1 == _SLclass_copy_class (SLANG_USHORT_TYPE, SLANG_UINT_TYPE)))
- return -1;
-#endif
-#if SIZEOF_INT == SIZEOF_LONG
- if ((-1 == SLclass_create_synonym ("Long_Type", SLANG_INT_TYPE))
- || (-1 == SLclass_create_synonym ("ULong_Type", SLANG_UINT_TYPE))
- || (-1 == _SLclass_copy_class (SLANG_LONG_TYPE, SLANG_INT_TYPE))
- || (-1 == _SLclass_copy_class (SLANG_ULONG_TYPE, SLANG_UINT_TYPE)))
- return -1;
-#endif
- return 0;
-}
-
-int _SLarith_register_types (void)
-{
- SLang_Class_Type *cl;
- int a_type, b_type;
- int i, j;
-
-#if defined(HAVE_SETLOCALE) && defined(LC_NUMERIC)
- /* make sure decimal point it used --- the parser requires it */
- (void) setlocale (LC_NUMERIC, "C");
-#endif
-
- for (i = 0; i < 8; i++)
- {
- Integer_Info_Type *info;
-
- info = Integer_Types + i;
-
- if (info->name == NULL)
- {
- /* This happens when the object is the same size as an integer
- * For this case, we really want to copy the integer class.
- * We will handle that when the synonym is created.
- */
- continue;
- }
-
- if (NULL == (cl = SLclass_allocate_class (info->name)))
- return -1;
-
- (void) SLclass_set_string_function (cl, arith_string);
- (void) SLclass_set_push_function (cl, integer_push);
- (void) SLclass_set_pop_function (cl, integer_pop);
- cl->cl_push_literal = info->push_literal;
- cl->cl_to_bool = integer_to_bool;
-
- cl->cl_cmp = info->cmp_fun;
-
- if (-1 == SLclass_register_class (cl, info->data_type, info->sizeof_type,
- SLANG_CLASS_TYPE_SCALAR))
- return -1;
- if (-1 == SLclass_add_unary_op (info->data_type, info->unary_fun, arith_unary_op_result))
- return -1;
-
- _SLarith_Is_Arith_Type [info->data_type] = 1;
- }
-
-#if SLANG_HAS_FLOAT
- if (NULL == (cl = SLclass_allocate_class ("Double_Type")))
- return -1;
- (void) SLclass_set_push_function (cl, double_push);
- (void) SLclass_set_pop_function (cl, double_pop);
- (void) SLclass_set_string_function (cl, arith_string);
- cl->cl_byte_code_destroy = double_byte_code_destroy;
- cl->cl_push_literal = double_push_literal;
- cl->cl_cmp = double_cmp_function;
-
- if (-1 == SLclass_register_class (cl, SLANG_DOUBLE_TYPE, sizeof (double),
- SLANG_CLASS_TYPE_SCALAR))
- return -1;
- if (-1 == SLclass_add_unary_op (SLANG_DOUBLE_TYPE, double_unary_op, arith_unary_op_result))
- return -1;
- _SLarith_Is_Arith_Type [SLANG_DOUBLE_TYPE] = 2;
-
- if (NULL == (cl = SLclass_allocate_class ("Float_Type")))
- return -1;
- (void) SLclass_set_string_function (cl, arith_string);
- (void) SLclass_set_push_function (cl, float_push);
- (void) SLclass_set_pop_function (cl, float_pop);
- cl->cl_cmp = float_cmp_function;
-
- if (-1 == SLclass_register_class (cl, SLANG_FLOAT_TYPE, sizeof (float),
- SLANG_CLASS_TYPE_SCALAR))
- return -1;
- if (-1 == SLclass_add_unary_op (SLANG_FLOAT_TYPE, float_unary_op, arith_unary_op_result))
- return -1;
- _SLarith_Is_Arith_Type [SLANG_FLOAT_TYPE] = 2;
-#endif
-
- if (-1 == create_synonyms ())
- return -1;
-
- for (a_type = 0; a_type <= MAXIMUM_ARITH_TYPE_VALUE; a_type++)
- {
- if (-1 == (i = Type_Precedence_Table [a_type]))
- continue;
-
- for (b_type = 0; b_type <= MAXIMUM_ARITH_TYPE_VALUE; b_type++)
- {
- int implicit_ok;
-
- if (-1 == (j = Type_Precedence_Table [b_type]))
- continue;
-
- /* Allow implicit typecast, except from into to float */
- implicit_ok = ((j >= FLOAT_PRECEDENCE_VALUE)
- || (i < FLOAT_PRECEDENCE_VALUE));
-
- if (-1 == SLclass_add_binary_op (a_type, b_type, arith_bin_op, arith_bin_op_result))
- return -1;
-
- if (i != j)
- if (-1 == SLclass_add_typecast (a_type, b_type, _SLarith_typecast, implicit_ok))
- return -1;
- }
- }
-
- return 0;
-}
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
-
-static void promote_objs (SLang_Object_Type *a, SLang_Object_Type *b,
- SLang_Object_Type *c, SLang_Object_Type *d)
-{
- unsigned char ia, ib, ic, id;
- int i, j;
- void (*copy)(VOID_STAR, VOID_STAR, unsigned int);
-
- ia = a->data_type;
- ib = b->data_type;
-
- ic = _SLarith_promote_type (ia);
-
- if (ic == ib) id = ic; /* already promoted */
- else id = _SLarith_promote_type (ib);
-
- i = Type_Precedence_Table[ic];
- j = Type_Precedence_Table[id];
- if (i > j)
- {
- id = ic;
- j = i;
- }
-
- c->data_type = d->data_type = id;
-
- i = Type_Precedence_Table[ia];
- copy = (void (*)(VOID_STAR, VOID_STAR, unsigned int))
- Binary_Matrix[i][j].copy_function;
- (*copy) ((VOID_STAR) &c->v, (VOID_STAR)&a->v, 1);
-
- i = Type_Precedence_Table[ib];
- copy = (void (*)(VOID_STAR, VOID_STAR, unsigned int))
- Binary_Matrix[i][j].copy_function;
- (*copy) ((VOID_STAR) &d->v, (VOID_STAR)&b->v, 1);
-}
-
-int _SLarith_bin_op (SLang_Object_Type *oa, SLang_Object_Type *ob, int op)
-{
- unsigned char a_type, b_type;
-
- a_type = oa->data_type;
- b_type = ob->data_type;
-
- if (a_type != b_type)
- {
- SLang_Object_Type obj_a, obj_b;
-
- /* Handle common cases */
- if ((a_type == SLANG_INT_TYPE)
- && (b_type == SLANG_DOUBLE_TYPE))
- return double_double_scalar_bin_op (oa->v.int_val, ob->v.double_val, op);
-
- if ((a_type == SLANG_DOUBLE_TYPE)
- && (b_type == SLANG_INT_TYPE))
- return double_double_scalar_bin_op (oa->v.double_val, ob->v.int_val, op);
-
- /* Otherwise do it the hard way */
- promote_objs (oa, ob, &obj_a, &obj_b);
- oa = &obj_a;
- ob = &obj_b;
-
- a_type = oa->data_type;
- b_type = ob->data_type;
- }
-
-
- switch (a_type)
- {
- case SLANG_CHAR_TYPE:
- return int_int_scalar_bin_op (oa->v.char_val, ob->v.char_val, op);
-
- case SLANG_UCHAR_TYPE:
- return int_int_scalar_bin_op (oa->v.uchar_val, ob->v.uchar_val, op);
-
- case SLANG_SHORT_TYPE:
- return int_int_scalar_bin_op (oa->v.short_val, ob->v.short_val, op);
-
- case SLANG_USHORT_TYPE:
-# if SIZEOF_INT == SIZEOF_SHORT
- return uint_uint_scalar_bin_op (oa->v.ushort_val, ob->v.ushort_val, op);
-# else
- return int_int_scalar_bin_op ((int)oa->v.ushort_val, (int)ob->v.ushort_val, op);
-# endif
-
-#if SIZEOF_LONG == SIZEOF_INT
- case SLANG_LONG_TYPE:
-#endif
- case SLANG_INT_TYPE:
- return int_int_scalar_bin_op (oa->v.int_val, ob->v.int_val, op);
-
-#if SIZEOF_LONG == SIZEOF_INT
- case SLANG_ULONG_TYPE:
-#endif
- case SLANG_UINT_TYPE:
- return uint_uint_scalar_bin_op (oa->v.uint_val, ob->v.uint_val, op);
-
-#if SIZEOF_LONG != SIZEOF_INT
- case SLANG_LONG_TYPE:
- return long_long_scalar_bin_op (oa->v.long_val, ob->v.long_val, op);
- case SLANG_ULONG_TYPE:
- return ulong_ulong_scalar_bin_op (oa->v.ulong_val, ob->v.ulong_val, op);
-#endif
- case SLANG_FLOAT_TYPE:
- return float_float_scalar_bin_op (oa->v.float_val, ob->v.float_val, op);
- case SLANG_DOUBLE_TYPE:
- return double_double_scalar_bin_op (oa->v.double_val, ob->v.double_val, op);
- }
-
- return 1;
-}
-#endif
diff --git a/mdk-stage1/slang/slarith.inc b/mdk-stage1/slang/slarith.inc
deleted file mode 100644
index efa8a5e04..000000000
--- a/mdk-stage1/slang/slarith.inc
+++ /dev/null
@@ -1,783 +0,0 @@
-/* -*- c -*- */
-
-/* This include file is a template for defining arithmetic binary operations
- * on arithmetic types. I realize that doing it this way is not very
- * elegant but it minimizes the number of lines of code and I believe it
- * promotes clarity.
- */
-
-/* The following macros should be properly defined before including this file:
- *
- * GENERIC_BINARY_FUNCTION: The name of the binary function
- * GENERIC_TYPE: The class data type
- * MOD_FUNCTION: The function to use for mod
- * ABS_FUNCTION: Name of the abs function
- * SIGN_FUNCTION: Name of the sign function
- * GENERIC_UNARY_FUNCTION Name of the unary function
- *
- * If GENERIC_BIT_OPERATIONS is defined, the bit-level binary operators
- * will get included. If the data type has a power operation (SLANG_POW),
- * then POW_FUNCTION should be defined to return POW_RESULT_TYPE.
- */
-#ifdef GENERIC_BINARY_FUNCTION
-
-static int GENERIC_BINARY_FUNCTION
-(int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- GENERIC_TYPE *c, *a, *b;
-#ifdef POW_FUNCTION
- POW_RESULT_TYPE *d;
-#endif
- unsigned int n;
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- unsigned int n_max, da, db;
-#endif
- char *cc;
-
- (void) a_type; /* Both SLANG_INT_TYPE */
- (void) b_type;
-
- a = (GENERIC_TYPE *) ap;
- b = (GENERIC_TYPE *) bp;
- c = (GENERIC_TYPE *) cp;
- cc = (char *) cp;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- if (na == 1) da = 0; else da = 1;
- if (nb == 1) db = 0; else db = 1;
-
- if (na > nb) n_max = na; else n_max = nb;
-#endif
-
- switch (op)
- {
- default:
- return 0;
-#ifdef POW_FUNCTION
- case SLANG_POW:
- d = (POW_RESULT_TYPE *) cp;
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- d[n] = POW_FUNCTION(*a, *b);
- a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- d[n] = POW_FUNCTION(a[n],b[n]);
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- if (xb == 2)
- for (n = 0; n < na; n++)
- d[n] = a[n] * a[n];
- else
- for (n = 0; n < na; n++)
- d[n] = POW_FUNCTION(a[n], xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- d[n] = POW_FUNCTION(xa, b[n]);
- }
-#endif
- break;
-#endif
- case SLANG_PLUS:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- c[n] = (*a + *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- c[n] = a[n] + b[n];
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- c[n] = a[n] + xb;
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- c[n] = xa + b[n];
- }
-#endif
- break;
-
- case SLANG_MINUS:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- c[n] = (*a - *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- c[n] = a[n] - b[n];
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- c[n] = a[n] - xb;
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- c[n] = xa - b[n];
- }
-#endif
- break;
-
- case SLANG_TIMES:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- c[n] = (*a * *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- c[n] = a[n] * b[n];
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- c[n] = a[n] * xb;
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- c[n] = xa * b[n];
- }
-#endif
- break;
-
- case SLANG_DIVIDE:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- if (*b == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- c[n] = (*a / *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- {
- if (b[n] == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- c[n] = a[n] / b[n];
- }
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
-
- if (xb == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- for (n = 0; n < na; n++)
- c[n] = a[n] / xb;
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- {
- if (b[n] == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- c[n] = xa / b[n];
- }
- }
-#endif
- break;
-
- case SLANG_MOD:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- if (*b == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- c[n] = MOD_FUNCTION(*a, *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- {
- if (b[n] == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- c[n] = MOD_FUNCTION(a[n],b[n]);
- }
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- if (xb == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- for (n = 0; n < na; n++)
- c[n] = MOD_FUNCTION(a[n],xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- {
- if (b[n] == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- c[n] = MOD_FUNCTION(xa,b[n]);
- }
- }
-#endif
- break;
-
-#ifdef GENERIC_BIT_OPERATIONS
- case SLANG_BAND:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- c[n] = (*a & *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- c[n] = a[n] & b[n];
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- c[n] = a[n] & xb;
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- c[n] = xa & b[n];
- }
-#endif
- break;
-
- case SLANG_BXOR:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- c[n] = (*a ^ *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- c[n] = a[n] ^ b[n];
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- c[n] = a[n] ^ xb;
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- c[n] = xa ^ b[n];
- }
-#endif
- break;
-
- case SLANG_BOR:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- c[n] = (*a | *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- c[n] = a[n] | b[n];
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- c[n] = a[n] | xb;
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- c[n] = xa | b[n];
- }
-#endif
- break;
-
- case SLANG_SHL:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- c[n] = (*a << *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- c[n] = a[n] << b[n];
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- c[n] = a[n] << xb;
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- c[n] = xa << b[n];
- }
-#endif
- break;
-
- case SLANG_SHR:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- c[n] = (*a >> *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- c[n] = a[n] >> b[n];
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- c[n] = a[n] >> xb;
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- c[n] = xa >> b[n];
- }
-#endif
- break;
-#endif /* GENERIC_BIT_OPERATIONS */
- case SLANG_EQ:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- cc[n] = (*a == *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- cc[n] = (a[n] == b[n]);
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- cc[n] = (a[n] == xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- cc[n] = (xa == b[n]);
- }
-#endif
- break;
-
- case SLANG_NE:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- cc[n] = (*a != *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- cc[n] = (a[n] != b[n]);
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- cc[n] = (a[n] != xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- cc[n] = (xa != b[n]);
- }
-#endif
- break;
-
- case SLANG_GT:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- cc[n] = (*a > *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- cc[n] = (a[n] > b[n]);
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- cc[n] = (a[n] > xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- cc[n] = (xa > b[n]);
- }
-#endif
- break;
-
- case SLANG_GE:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- cc[n] = (*a >= *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- cc[n] = (a[n] >= b[n]);
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- cc[n] = (a[n] >= xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- cc[n] = (xa >= b[n]);
- }
-#endif
- break;
-
- case SLANG_LT:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- cc[n] = (*a < *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- cc[n] = (a[n] < b[n]);
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- cc[n] = (a[n] < xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- cc[n] = (xa < b[n]);
- }
-#endif
- break;
-
- case SLANG_LE:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- cc[n] = (*a <= *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- cc[n] = (a[n] <= b[n]);
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- cc[n] = (a[n] <= xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- cc[n] = (xa <= b[n]);
- }
-#endif
- break;
-
- case SLANG_OR:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- cc[n] = (*a || *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- cc[n] = (a[n] || b[n]);
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- cc[n] = (a[n] || xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- cc[n] = (xa || b[n]);
- }
-#endif
- break;
-
- case SLANG_AND:
-#if _SLANG_OPTIMIZE_FOR_SPEED < 2
- for (n = 0; n < n_max; n++)
- {
- cc[n] = (*a && *b); a += da; b += db;
- }
-#else
- if (na == nb)
- {
- for (n = 0; n < na; n++)
- cc[n] = (a[n] && b[n]);
- }
- else if (nb == 1)
- {
- GENERIC_TYPE xb = *b;
- for (n = 0; n < na; n++)
- cc[n] = (a[n] && xb);
- }
- else /* if (na == 1) */
- {
- GENERIC_TYPE xa = *a;
- for (n = 0; n < nb; n++)
- cc[n] = (xa && b[n]);
- }
-#endif
- break;
- }
- return 1;
-}
-
-#endif /* GENERIC_BINARY_FUNCTION */
-
-
-#ifdef GENERIC_UNARY_FUNCTION
-
-static int GENERIC_UNARY_FUNCTION
-(int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- VOID_STAR bp
- )
-{
- GENERIC_TYPE *a, *b;
- unsigned int n;
- int *ib;
-
- (void) a_type;
-
- a = (GENERIC_TYPE *) ap;
- b = (GENERIC_TYPE *) bp;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_PLUSPLUS:
- for (n = 0; n < na; n++) b[n] = (a[n] + 1);
- break;
- case SLANG_MINUSMINUS:
- for (n = 0; n < na; n++) b[n] = (a[n] - 1);
- break;
- case SLANG_CHS:
- for (n = 0; n < na; n++) b[n] = (GENERIC_TYPE) -(a[n]);
- break;
- case SLANG_SQR:
- for (n = 0; n < na; n++) b[n] = (a[n] * a[n]);
- break;
- case SLANG_MUL2:
- for (n = 0; n < na; n++) b[n] = (2 * a[n]);
- break;
- case SLANG_ABS:
- for (n = 0; n < na; n++) b[n] = ABS_FUNCTION (a[n]);
- break;
- case SLANG_SIGN:
- ib = (int *) bp;
- for (n = 0; n < na; n++)
- ib[n] = SIGN_FUNCTION(a[n]);
- break;
-
-#ifdef GENERIC_BIT_OPERATIONS
- case SLANG_NOT:
- for (n = 0; n < na; n++) b[n] = !(a[n]);
- break;
- case SLANG_BNOT:
- for (n = 0; n < na; n++) b[n] = ~(a[n]);
- break;
-#endif
- }
-
- return 1;
-}
-#endif /* GENERIC_UNARY_FUNCTION */
-
-
-#ifdef SCALAR_BINARY_FUNCTION
-
-static int SCALAR_BINARY_FUNCTION (GENERIC_TYPE a, GENERIC_TYPE b, int op)
-{
- switch (op)
- {
- default:
- return 1;
-
-#ifdef POW_FUNCTION
- case SLANG_POW:
- return PUSH_POW_OBJ_FUN(POW_FUNCTION(a, b));
-#endif
- case SLANG_PLUS:
- return PUSH_SCALAR_OBJ_FUN (a + b);
- case SLANG_MINUS:
- return PUSH_SCALAR_OBJ_FUN (a - b);
- case SLANG_TIMES:
- return PUSH_SCALAR_OBJ_FUN (a * b);
- case SLANG_DIVIDE:
- if (b == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- return PUSH_SCALAR_OBJ_FUN (a / b);
- case SLANG_MOD:
- if (b == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- return PUSH_SCALAR_OBJ_FUN (MOD_FUNCTION(a,b));
-#ifdef GENERIC_BIT_OPERATIONS
- case SLANG_BAND:
- return PUSH_SCALAR_OBJ_FUN (a & b);
- case SLANG_BXOR:
- return PUSH_SCALAR_OBJ_FUN (a ^ b);
- case SLANG_BOR:
- return PUSH_SCALAR_OBJ_FUN (a | b);
- case SLANG_SHL:
- return PUSH_SCALAR_OBJ_FUN (a << b);
- case SLANG_SHR:
- return PUSH_SCALAR_OBJ_FUN (a >> b);
-#endif
- case SLANG_GT: return SLclass_push_char_obj (SLANG_CHAR_TYPE, (char)(a > b));
- case SLANG_LT: return SLclass_push_char_obj (SLANG_CHAR_TYPE, (char)(a < b));
- case SLANG_GE: return SLclass_push_char_obj (SLANG_CHAR_TYPE, (char)(a >= b));
- case SLANG_LE: return SLclass_push_char_obj (SLANG_CHAR_TYPE, (char)(a <= b));
- case SLANG_EQ: return SLclass_push_char_obj (SLANG_CHAR_TYPE, (char)(a == b));
- case SLANG_NE: return SLclass_push_char_obj (SLANG_CHAR_TYPE, (char)(a != b));
- case SLANG_OR: return SLclass_push_char_obj (SLANG_CHAR_TYPE, (char)(a || b));
- case SLANG_AND: return SLclass_push_char_obj (SLANG_CHAR_TYPE, (char)(a && b));
- }
-}
-
-#endif /* SCALAR_BINARY_FUNCTION */
-
-#ifdef CMP_FUNCTION
-static int CMP_FUNCTION (unsigned char unused, VOID_STAR a, VOID_STAR b, int *c)
-{
- GENERIC_TYPE x, y;
-
- (void) unused;
- x = *(GENERIC_TYPE *) a;
- y = *(GENERIC_TYPE *) b;
-
- if (x > y) *c = 1;
- else if (x == y) *c = 0;
- else *c = -1;
-
- return 0;
-}
-#endif
-
-#undef CMP_FUNCTION
-#undef SCALAR_BINARY_FUNCTION
-#undef PUSH_POW_OBJ_FUN
-#undef PUSH_SCALAR_OBJ_FUN
-#undef GENERIC_BINARY_FUNCTION
-#undef GENERIC_UNARY_FUNCTION
-#undef GENERIC_BIT_OPERATIONS
-#undef GENERIC_TYPE
-#undef POW_FUNCTION
-#undef POW_RESULT_TYPE
-#undef MOD_FUNCTION
-#undef ABS_FUNCTION
-#undef SIGN_FUNCTION
diff --git a/mdk-stage1/slang/slarray.c b/mdk-stage1/slang/slarray.c
deleted file mode 100644
index 0b9a1406c..000000000
--- a/mdk-stage1/slang/slarray.c
+++ /dev/null
@@ -1,3139 +0,0 @@
-/* Array manipulation routines for S-Lang */
-/* Copyright (c) 1997, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#define SL_APP_WANTS_FOREACH
-#include "slang.h"
-#include "_slang.h"
-
-typedef struct
-{
- int first_index;
- int last_index;
- int delta;
-}
-SLarray_Range_Array_Type;
-
-/* Use SLang_pop_array when a linear array is required. */
-static int pop_array (SLang_Array_Type **at_ptr, int convert_scalar)
-{
- SLang_Array_Type *at;
- int one = 1;
- int type;
-
- *at_ptr = NULL;
- type = SLang_peek_at_stack ();
-
- switch (type)
- {
- case -1:
- return -1;
-
- case SLANG_ARRAY_TYPE:
- return SLclass_pop_ptr_obj (SLANG_ARRAY_TYPE, (VOID_STAR *) at_ptr);
-
- case SLANG_NULL_TYPE:
- convert_scalar = 0;
- /* drop */
- default:
- if (convert_scalar == 0)
- {
- SLdo_pop ();
- SLang_verror (SL_TYPE_MISMATCH, "Context requires an array. Scalar not converted");
- return -1;
- }
- break;
- }
-
- if (NULL == (at = SLang_create_array ((unsigned char) type, 0, NULL, &one, 1)))
- return -1;
-
- if (-1 == at->cl->cl_apop ((unsigned char) type, at->data))
- {
- SLang_free_array (at);
- return -1;
- }
-
- *at_ptr = at;
-
- return 0;
-}
-
-static VOID_STAR linear_get_data_addr (SLang_Array_Type *at, int *dims)
-{
- unsigned int num_dims;
- unsigned int ofs;
- unsigned int i;
- int *max_dims;
-
- ofs = 0;
- max_dims = at->dims;
- num_dims = at->num_dims;
-
- for (i = 0; i < num_dims; i++)
- {
- int d = dims[i];
-
- if (d < 0)
- d = d + max_dims[i];
-
- ofs = ofs * (unsigned int)max_dims [i] + (unsigned int) d;
- }
-
- return (VOID_STAR) ((char *)at->data + (ofs * at->sizeof_type));
-}
-
-static VOID_STAR get_data_addr (SLang_Array_Type *at, int *dims)
-{
- VOID_STAR data;
-
- data = at->data;
- if (data == NULL)
- {
- SLang_verror (SL_UNKNOWN_ERROR, "Array has no data");
- return NULL;
- }
-
- data = (*at->index_fun) (at, dims);
-
- if (data == NULL)
- {
- SLang_verror (SL_UNKNOWN_ERROR, "Unable to access array element");
- return NULL;
- }
-
- return data;
-}
-
-void _SLarray_free_array_elements (SLang_Class_Type *cl, VOID_STAR s, unsigned int num)
-{
- unsigned int sizeof_type;
- void (*f) (unsigned char, VOID_STAR);
- char *p;
- unsigned char type;
-
- if ((cl->cl_class_type == SLANG_CLASS_TYPE_SCALAR)
- || (cl->cl_class_type == SLANG_CLASS_TYPE_VECTOR))
- return;
-
- f = cl->cl_destroy;
- sizeof_type = cl->cl_sizeof_type;
- type = cl->cl_data_type;
-
- p = (char *) s;
- while (num != 0)
- {
- if (NULL != *(VOID_STAR *)p)
- {
- (*f) (type, (VOID_STAR)p);
- *(VOID_STAR *) p = NULL;
- }
- p += sizeof_type;
- num--;
- }
-}
-
-static int destroy_element (SLang_Array_Type *at,
- int *dims,
- VOID_STAR data)
-{
- data = get_data_addr (at, dims);
- if (data == NULL)
- return -1;
-
- /* This function should only get called for arrays that have
- * pointer elements. Do not call the destroy method if the element
- * is NULL.
- */
- if (NULL != *(VOID_STAR *)data)
- {
- (*at->cl->cl_destroy) (at->data_type, data);
- *(VOID_STAR *) data = NULL;
- }
- return 0;
-}
-
-/* This function only gets called when a new array is created. Thus there
- * is no need to destroy the object first.
- */
-static int new_object_element (SLang_Array_Type *at,
- int *dims,
- VOID_STAR data)
-{
- data = get_data_addr (at, dims);
- if (data == NULL)
- return -1;
-
- return (*at->cl->cl_init_array_object) (at->data_type, data);
-}
-
-static int next_index (int *dims, int *max_dims, unsigned int num_dims)
-{
- while (num_dims)
- {
- int dims_i;
-
- num_dims--;
-
- dims_i = dims [num_dims] + 1;
- if (dims_i != (int) max_dims [num_dims])
- {
- dims [num_dims] = dims_i;
- return 0;
- }
- dims [num_dims] = 0;
- }
-
- return -1;
-}
-
-static int do_method_for_all_elements (SLang_Array_Type *at,
- int (*method)(SLang_Array_Type *,
- int *,
- VOID_STAR),
- VOID_STAR client_data)
-{
- int dims [SLARRAY_MAX_DIMS];
- int *max_dims;
- unsigned int num_dims;
-
- if (at->num_elements == 0)
- return 0;
-
- max_dims = at->dims;
- num_dims = at->num_dims;
-
- SLMEMSET((char *)dims, 0, sizeof(dims));
-
- do
- {
- if (-1 == (*method) (at, dims, client_data))
- return -1;
- }
- while (0 == next_index (dims, max_dims, num_dims));
-
- return 0;
-}
-
-void SLang_free_array (SLang_Array_Type *at)
-{
- VOID_STAR data;
- unsigned int flags;
-
- if (at == NULL) return;
-
- if (at->num_refs > 1)
- {
- at->num_refs -= 1;
- return;
- }
-
- data = at->data;
- flags = at->flags;
-
- if (flags & SLARR_DATA_VALUE_IS_INTRINSIC)
- return; /* not to be freed */
-
- if (flags & SLARR_DATA_VALUE_IS_POINTER)
- (void) do_method_for_all_elements (at, destroy_element, NULL);
-
- SLfree ((char *) data);
- SLfree ((char *) at);
-}
-
-SLang_Array_Type *
-SLang_create_array1 (unsigned char type, int read_only, VOID_STAR data,
- int *dims, unsigned int num_dims, int no_init)
-{
- SLang_Class_Type *cl;
- unsigned int i;
- SLang_Array_Type *at;
- unsigned int num_elements;
- unsigned int sizeof_type;
- unsigned int size;
-
- if (num_dims > SLARRAY_MAX_DIMS)
- {
- SLang_verror (SL_NOT_IMPLEMENTED, "%u dimensional arrays are not supported", num_dims);
- return NULL;
- }
-
- for (i = 0; i < num_dims; i++)
- {
- if (dims[i] < 0)
- {
- SLang_verror (SL_INVALID_PARM, "Size of array dim %u is less than 0", i);
- return NULL;
- }
- }
-
- cl = _SLclass_get_class (type);
-
- at = (SLang_Array_Type *) SLmalloc (sizeof(SLang_Array_Type));
- if (at == NULL)
- return NULL;
-
- SLMEMSET ((char*) at, 0, sizeof(SLang_Array_Type));
-
- at->data_type = type;
- at->cl = cl;
- at->num_dims = num_dims;
- at->num_refs = 1;
-
- if (read_only) at->flags = SLARR_DATA_VALUE_IS_READ_ONLY;
- switch (cl->cl_class_type)
- {
- case SLANG_CLASS_TYPE_VECTOR:
- case SLANG_CLASS_TYPE_SCALAR:
- break;
-
- default:
- at->flags |= SLARR_DATA_VALUE_IS_POINTER;
- }
-
- num_elements = 1;
- for (i = 0; i < num_dims; i++)
- {
- at->dims [i] = dims[i];
- num_elements = dims [i] * num_elements;
- }
-
- /* Now set the rest of the unused dimensions to 1. This makes it easier
- * when transposing arrays.
- */
- while (i < SLARRAY_MAX_DIMS)
- at->dims[i++] = 1;
-
- at->num_elements = num_elements;
- at->index_fun = linear_get_data_addr;
- at->sizeof_type = sizeof_type = cl->cl_sizeof_type;
-
- if (data != NULL)
- {
- at->data = data;
- return at;
- }
-
- size = num_elements * sizeof_type;
-
- if (size == 0) size = 1;
-
- if (NULL == (data = (VOID_STAR) SLmalloc (size)))
- {
- SLang_free_array (at);
- return NULL;
- }
-
- if (no_init == 0)
- SLMEMSET ((char *) data, 0, size);
-
- at->data = data;
-
- if ((cl->cl_init_array_object != NULL)
- && (-1 == do_method_for_all_elements (at, new_object_element, NULL)))
- {
- SLang_free_array (at);
- return NULL;
- }
- return at;
-}
-
-SLang_Array_Type *
-SLang_create_array (unsigned char type, int read_only, VOID_STAR data,
- int *dims, unsigned int num_dims)
-{
- return SLang_create_array1 (type, read_only, data, dims, num_dims, 0);
-}
-
-int SLang_add_intrinsic_array (char *name,
- unsigned char type,
- int read_only,
- VOID_STAR data,
- unsigned int num_dims, ...)
-{
- va_list ap;
- unsigned int i;
- int dims[SLARRAY_MAX_DIMS];
- SLang_Array_Type *at;
-
- if ((num_dims > SLARRAY_MAX_DIMS)
- || (name == NULL)
- || (data == NULL))
- {
- SLang_verror (SL_INVALID_PARM, "Unable to create intrinsic array");
- return -1;
- }
-
- va_start (ap, num_dims);
- for (i = 0; i < num_dims; i++)
- dims [i] = va_arg (ap, int);
- va_end (ap);
-
- at = SLang_create_array (type, read_only, data, dims, num_dims);
- if (at == NULL)
- return -1;
- at->flags |= SLARR_DATA_VALUE_IS_INTRINSIC;
-
- /* Note: The variable that refers to the intrinsic array is regarded as
- * read-only. That way, Array_Name = another_array; will fail.
- */
- if (-1 == SLadd_intrinsic_variable (name, (VOID_STAR) at, SLANG_ARRAY_TYPE, 1))
- {
- SLang_free_array (at);
- return -1;
- }
- return 0;
-}
-
-static int pop_array_indices (int *dims, unsigned int num_dims)
-{
- unsigned int n;
- int i;
-
- if (num_dims > SLARRAY_MAX_DIMS)
- {
- SLang_verror (SL_INVALID_PARM, "Array size not supported");
- return -1;
- }
-
- n = num_dims;
- while (n != 0)
- {
- n--;
- if (-1 == SLang_pop_integer (&i))
- return -1;
-
- dims[n] = i;
- }
-
- return 0;
-}
-
-int SLang_push_array (SLang_Array_Type *at, int free_flag)
-{
- if (at == NULL)
- return SLang_push_null ();
-
- at->num_refs += 1;
-
- if (0 == SLclass_push_ptr_obj (SLANG_ARRAY_TYPE, (VOID_STAR) at))
- {
- if (free_flag)
- SLang_free_array (at);
- return 0;
- }
-
- at->num_refs -= 1;
-
- if (free_flag) SLang_free_array (at);
- return -1;
-}
-
-/* This function gets called via expressions such as Double_Type[10, 20];
- */
-static int push_create_new_array (void)
-{
- unsigned int num_dims;
- SLang_Array_Type *at;
- unsigned char type;
- int dims [SLARRAY_MAX_DIMS];
- int (*anew) (unsigned char, unsigned int);
-
- num_dims = (SLang_Num_Function_Args - 1);
-
- if (-1 == _SLang_pop_datatype (&type))
- return -1;
-
- anew = (_SLclass_get_class (type))->cl_anew;
- if (anew != NULL)
- return (*anew) (type, num_dims);
-
- if (-1 == pop_array_indices (dims, num_dims))
- return -1;
-
- if (NULL == (at = SLang_create_array (type, 0, NULL, dims, num_dims)))
- return -1;
-
- return SLang_push_array (at, 1);
-}
-
-static int push_element_at_addr (SLang_Array_Type *at,
- VOID_STAR data, int allow_null)
-{
- SLang_Class_Type *cl;
-
- cl = at->cl;
- if ((at->flags & SLARR_DATA_VALUE_IS_POINTER)
- && (*(VOID_STAR *) data == NULL))
- {
- if (allow_null)
- return SLang_push_null ();
-
- SLang_verror (SL_VARIABLE_UNINITIALIZED,
- "%s array has unitialized element", cl->cl_name);
- return -1;
- }
-
- return (*cl->cl_apush)(at->data_type, data);
-}
-
-static int coerse_array_to_linear (SLang_Array_Type *at)
-{
- SLarray_Range_Array_Type *range;
- int *data;
- int xmin, dx;
- unsigned int i, imax;
-
- /* FIXME: Priority = low. This assumes that if an array is not linear, then
- * it is a range.
- */
- if (0 == (at->flags & SLARR_DATA_VALUE_IS_RANGE))
- return 0;
-
- range = (SLarray_Range_Array_Type *) at->data;
- xmin = range->first_index;
- dx = range->delta;
-
- imax = at->num_elements;
- data = (int *) SLmalloc ((imax + 1) * sizeof (int));
- if (data == NULL)
- return -1;
-
- for (i = 0; i < imax; i++)
- {
- data [i] = xmin;
- xmin += dx;
- }
-
- SLfree ((char *) range);
- at->data = (VOID_STAR) data;
- at->flags &= ~SLARR_DATA_VALUE_IS_RANGE;
- at->index_fun = linear_get_data_addr;
- return 0;
-}
-
-static void
-free_index_objects (SLang_Object_Type *index_objs, unsigned int num_indices)
-{
- unsigned int i;
- SLang_Object_Type *obj;
-
- for (i = 0; i < num_indices; i++)
- {
- obj = index_objs + i;
- if (obj->data_type != 0)
- SLang_free_object (obj);
- }
-}
-
-static int
-pop_indices (SLang_Object_Type *index_objs, unsigned int num_indices,
- int *is_index_array)
-{
- unsigned int i;
-
- SLMEMSET((char *) index_objs, 0, num_indices * sizeof (SLang_Object_Type));
-
- *is_index_array = 0;
-
- if (num_indices >= SLARRAY_MAX_DIMS)
- {
- SLang_verror (SL_INVALID_PARM, "too many indices for array");
- return -1;
- }
-
- i = num_indices;
- while (i != 0)
- {
- SLang_Object_Type *obj;
-
- i--;
- obj = index_objs + i;
- if (-1 == _SLang_pop_object_of_type (SLANG_INT_TYPE, obj, 1))
- goto return_error;
-
- if (obj->data_type == SLANG_ARRAY_TYPE)
- {
- SLang_Array_Type *at = obj->v.array_val;
-
- if (at->num_dims == 1)
- {
- if ((num_indices == 1)
- && (0 == (at->flags & SLARR_DATA_VALUE_IS_RANGE)))
- *is_index_array = 1;
- }
- else
- {
- SLang_verror (SL_INVALID_PARM, "expecting a 1-d index array");
- goto return_error;
- }
- }
- }
-
- return 0;
-
- return_error:
- free_index_objects (index_objs, num_indices);
- return -1;
-}
-
-/* Here ind_at is a linear 1-d array of indices */
-static int
-check_index_array_ranges (SLang_Array_Type *at, SLang_Array_Type *ind_at)
-{
- int *indices, *indices_max;
- unsigned int num_elements;
-
- num_elements = at->num_elements;
- indices = (int *) ind_at->data;
- indices_max = indices + ind_at->num_elements;
-
- while (indices < indices_max)
- {
- unsigned int d;
-
- d = (unsigned int) *indices++;
- if (d >= num_elements)
- {
- SLang_verror (SL_INVALID_PARM,
- "index-array is out of range");
- return -1;
- }
- }
- return 0;
-}
-
-static int
-transfer_n_elements (SLang_Array_Type *at, VOID_STAR dest_data, VOID_STAR src_data,
- unsigned int sizeof_type, unsigned int n, int is_ptr)
-{
- unsigned char data_type;
- SLang_Class_Type *cl;
-
- if (is_ptr == 0)
- {
- SLMEMCPY ((char *) dest_data, (char *)src_data, n * sizeof_type);
- return 0;
- }
-
- data_type = at->data_type;
- cl = at->cl;
-
- while (n != 0)
- {
- if (*(VOID_STAR *)dest_data != NULL)
- {
- (*cl->cl_destroy) (data_type, dest_data);
- *(VOID_STAR *) dest_data = NULL;
- }
-
- if (*(VOID_STAR *) src_data == NULL)
- *(VOID_STAR *) dest_data = NULL;
- else
- {
- if (-1 == (*cl->cl_acopy) (data_type, src_data, dest_data))
- /* No need to destroy anything */
- return -1;
- }
-
- src_data = (VOID_STAR) ((char *)src_data + sizeof_type);
- dest_data = (VOID_STAR) ((char *)dest_data + sizeof_type);
-
- n--;
- }
-
- return 0;
-}
-
-int
-_SLarray_aget_transfer_elem (SLang_Array_Type *at, int *indices,
- VOID_STAR new_data, unsigned int sizeof_type, int is_ptr)
-{
- VOID_STAR at_data;
-
- /* Since 1 element is being transferred, there is not need to coerse
- * the array to linear.
- */
- if (NULL == (at_data = get_data_addr (at, indices)))
- return -1;
-
- return transfer_n_elements (at, new_data, at_data, sizeof_type, 1, is_ptr);
-}
-
-/* Here the ind_at index-array is a 1-d array of indices. This function
- * creates a 1-d array of made up of values of 'at' at the locations
- * specified by the indices. The result is pushed.
- */
-static int
-aget_from_index_array (SLang_Array_Type *at,
- SLang_Array_Type *ind_at)
-{
- SLang_Array_Type *new_at;
- int *indices, *indices_max;
- unsigned char *new_data, *src_data;
- unsigned int sizeof_type;
- int is_ptr;
-
- if (-1 == coerse_array_to_linear (at))
- return -1;
-
- if (-1 == coerse_array_to_linear (ind_at))
- return -1;
-
- if (-1 == check_index_array_ranges (at, ind_at))
- return -1;
-
- if (NULL == (new_at = SLang_create_array (at->data_type, 0, NULL, ind_at->dims, 1)))
- return -1;
-
- /* Since the index array is linear, I can address it directly */
- indices = (int *) ind_at->data;
- indices_max = indices + ind_at->num_elements;
-
- src_data = (unsigned char *) at->data;
- new_data = (unsigned char *) new_at->data;
- sizeof_type = new_at->sizeof_type;
- is_ptr = (new_at->flags & SLARR_DATA_VALUE_IS_POINTER);
-
- while (indices < indices_max)
- {
- unsigned int offset;
-
- offset = sizeof_type * (unsigned int)*indices;
- if (-1 == transfer_n_elements (at, (VOID_STAR) new_data,
- (VOID_STAR) (src_data + offset),
- sizeof_type, 1, is_ptr))
- {
- SLang_free_array (new_at);
- return -1;
- }
-
- new_data += sizeof_type;
- indices++;
- }
-
- return SLang_push_array (new_at, 1);
-}
-
-/* This is extremely ugly. It is due to the fact that the index_objects
- * may contain ranges. This is a utility function for the aget/aput
- * routines
- */
-static int
-convert_nasty_index_objs (SLang_Array_Type *at,
- SLang_Object_Type *index_objs,
- unsigned int num_indices,
- int **index_data,
- int *range_buf, int *range_delta_buf,
- int *max_dims,
- unsigned int *num_elements,
- int *is_array, int is_dim_array[SLARRAY_MAX_DIMS])
-{
- unsigned int i, total_num_elements;
- SLang_Array_Type *ind_at;
-
- if (num_indices != at->num_dims)
- {
- SLang_verror (SL_INVALID_PARM, "Array requires %u indices", at->num_dims);
- return -1;
- }
-
- *is_array = 0;
- total_num_elements = 1;
- for (i = 0; i < num_indices; i++)
- {
- int max_index, min_index;
- SLang_Object_Type *obj;
- int at_dims_i;
-
- at_dims_i = at->dims[i];
- obj = index_objs + i;
- range_delta_buf [i] = 0;
-
- if (obj->data_type == SLANG_INT_TYPE)
- {
- range_buf [i] = min_index = max_index = obj->v.int_val;
- max_dims [i] = 1;
- index_data[i] = range_buf + i;
- is_dim_array[i] = 0;
- }
- else
- {
- *is_array = 1;
- is_dim_array[i] = 1;
- ind_at = obj->v.array_val;
-
- if (ind_at->flags & SLARR_DATA_VALUE_IS_RANGE)
- {
- SLarray_Range_Array_Type *r;
- int delta;
- int first_index, last_index;
-
- r = (SLarray_Range_Array_Type *) ind_at->data;
-
- /* In an array indexing context, range arrays have different
- * semantics. Consider a[[0:10]]. Clearly this means elements
- * 0-10 of a. But what does a[[0:-1]] mean? By itself,
- * [0:-1] is a null matrix []. But, it is useful in an
- * indexing context to allow -1 to refer to the last element
- * of the array. Similarly, [-3:-1] refers to the last 3
- * elements.
- *
- * However, [-1:-3] does not refer to any of the elements.
- */
- if ((first_index = r->first_index) < 0)
- {
- if (at_dims_i != 0)
- first_index = (at_dims_i + first_index) % at_dims_i;
- }
-
- if ((last_index = r->last_index) < 0)
- {
- if (at_dims_i != 0)
- last_index = (at_dims_i + last_index) % at_dims_i;
- }
-
- delta = r->delta;
-
- range_delta_buf [i] = delta;
- range_buf[i] = first_index;
-
- if (delta > 0)
- {
- if (first_index > last_index)
- max_dims[i] = min_index = max_index = 0;
- else
- {
- max_index = min_index = first_index;
- while (max_index + delta <= last_index)
- max_index += delta;
- max_dims [i] = 1 + (max_index - min_index) / delta;
- }
- }
- else
- {
- if (first_index < last_index)
- max_dims[i] = min_index = max_index = 0;
- else
- {
- min_index = max_index = first_index;
- while (min_index + delta >= last_index)
- min_index += delta;
- max_dims [i] = 1 + (max_index - min_index) / (-delta);
- }
- }
- }
- else
- {
- int *tmp, *tmp_max;
-
- if (0 == (max_dims[i] = ind_at->num_elements))
- {
- total_num_elements = 0;
- break;
- }
-
- tmp = (int *) ind_at->data;
- tmp_max = tmp + ind_at->num_elements;
- index_data [i] = tmp;
-
- min_index = max_index = *tmp;
- while (tmp < tmp_max)
- {
- if (max_index > *tmp)
- max_index = *tmp;
- if (min_index < *tmp)
- min_index = *tmp;
-
- tmp++;
- }
- }
- }
-
- if ((at_dims_i == 0) && (max_dims[i] == 0))
- {
- total_num_elements = 0;
- continue;
- }
-
- if (max_index < 0)
- max_index += at_dims_i;
- if (min_index < 0)
- min_index += at_dims_i;
-
- if ((min_index < 0) || (min_index >= at_dims_i)
- || (max_index < 0) || (max_index >= at_dims_i))
- {
- SLang_verror (SL_INVALID_PARM, "Array index %u ([%d:%d]) out of allowed range [0->%d]",
- i, min_index, max_index, at_dims_i);
- return -1;
- }
-
- total_num_elements = total_num_elements * max_dims[i];
- }
-
- *num_elements = total_num_elements;
- return 0;
-}
-
-/* This routine pushes a 1-d vector of values from 'at' indexed by
- * the objects 'index_objs'. These objects can either be integers or
- * 1-d integer arrays. The fact that the 1-d arrays can be ranges
- * makes this look ugly.
- */
-static int
-aget_from_indices (SLang_Array_Type *at,
- SLang_Object_Type *index_objs, unsigned int num_indices)
-{
- int *index_data [SLARRAY_MAX_DIMS];
- int range_buf [SLARRAY_MAX_DIMS];
- int range_delta_buf [SLARRAY_MAX_DIMS];
- int max_dims [SLARRAY_MAX_DIMS];
- unsigned int i, num_elements;
- SLang_Array_Type *new_at;
- int map_indices[SLARRAY_MAX_DIMS];
- int indices [SLARRAY_MAX_DIMS];
- unsigned int sizeof_type;
- int is_ptr, ret, is_array;
- char *new_data;
- SLang_Class_Type *cl;
- int is_dim_array[SLARRAY_MAX_DIMS];
-
- if (-1 == convert_nasty_index_objs (at, index_objs, num_indices,
- index_data, range_buf, range_delta_buf,
- max_dims, &num_elements, &is_array,
- is_dim_array))
- return -1;
-
- is_ptr = (at->flags & SLARR_DATA_VALUE_IS_POINTER);
- sizeof_type = at->sizeof_type;
-
- cl = _SLclass_get_class (at->data_type);
-
- if ((is_array == 0) && (num_elements == 1))
- {
- new_data = (char *)cl->cl_transfer_buf;
- memset (new_data, 0, sizeof_type);
- new_at = NULL;
- }
- else
- {
- int i_num_elements = (int)num_elements;
-
- new_at = SLang_create_array (at->data_type, 0, NULL, &i_num_elements, 1);
- if (NULL == new_at)
- return -1;
- if (num_elements == 0)
- return SLang_push_array (new_at, 1);
-
- new_data = (char *)new_at->data;
- }
-
- SLMEMSET((char *) map_indices, 0, sizeof(map_indices));
- do
- {
- for (i = 0; i < num_indices; i++)
- {
- int j;
-
- j = map_indices[i];
-
- if (0 != range_delta_buf[i])
- indices[i] = range_buf[i] + j * range_delta_buf[i];
- else
- indices[i] = index_data [i][j];
- }
-
- if (-1 == _SLarray_aget_transfer_elem (at, indices, (VOID_STAR)new_data, sizeof_type, is_ptr))
- {
- SLang_free_array (new_at);
- return -1;
- }
- new_data += sizeof_type;
- }
- while (0 == next_index (map_indices, max_dims, num_indices));
-
- if (new_at != NULL)
- {
- int num_dims = 0;
- /* Fixup dimensions on array */
- for (i = 0; i < num_indices; i++)
- {
- if (is_dim_array[i]) /* was: (max_dims[i] > 1) */
- {
- new_at->dims[num_dims] = max_dims[i];
- num_dims++;
- }
- }
-
- if (num_dims != 0) new_at->num_dims = num_dims;
- return SLang_push_array (new_at, 1);
- }
-
- /* Here new_data is a whole new copy, so free it after the push */
- new_data -= sizeof_type;
- if (is_ptr && (*(VOID_STAR *)new_data == NULL))
- ret = SLang_push_null ();
- else
- {
- ret = (*cl->cl_apush) (at->data_type, (VOID_STAR)new_data);
- (*cl->cl_adestroy) (at->data_type, (VOID_STAR)new_data);
- }
-
- return ret;
-}
-
-static int push_string_as_array (unsigned char *s, unsigned int len)
-{
- int ilen;
- SLang_Array_Type *at;
-
- ilen = (int) len;
-
- at = SLang_create_array (SLANG_UCHAR_TYPE, 0, NULL, &ilen, 1);
- if (at == NULL)
- return -1;
-
- memcpy ((char *)at->data, (char *)s, len);
- return SLang_push_array (at, 1);
-}
-
-static int pop_array_as_string (char **sp)
-{
- SLang_Array_Type *at;
- int ret;
-
- *sp = NULL;
-
- if (-1 == SLang_pop_array_of_type (&at, SLANG_UCHAR_TYPE))
- return -1;
-
- ret = 0;
-
- if (NULL == (*sp = SLang_create_nslstring ((char *) at->data, at->num_elements)))
- ret = -1;
-
- SLang_free_array (at);
- return ret;
-}
-
-static int pop_array_as_bstring (SLang_BString_Type **bs)
-{
- SLang_Array_Type *at;
- int ret;
-
- *bs = NULL;
-
- if (-1 == SLang_pop_array_of_type (&at, SLANG_UCHAR_TYPE))
- return -1;
-
- ret = 0;
-
- if (NULL == (*bs = SLbstring_create ((unsigned char *) at->data, at->num_elements)))
- ret = -1;
-
- SLang_free_array (at);
- return ret;
-}
-
-static int aget_from_array (unsigned int num_indices)
-{
- SLang_Array_Type *at;
- SLang_Object_Type index_objs [SLARRAY_MAX_DIMS];
- int ret;
- int is_index_array;
- unsigned int i;
-
- if (num_indices > SLARRAY_MAX_DIMS)
- {
- SLang_verror (SL_INVALID_PARM, "Number of dims must be less than %d", SLARRAY_MAX_DIMS);
- return -1;
- }
-
- if (-1 == pop_array (&at, 1))
- return -1;
-
- if (-1 == pop_indices (index_objs, num_indices, &is_index_array))
- {
- SLang_free_array (at);
- return -1;
- }
-
- if (is_index_array == 0)
- ret = aget_from_indices (at, index_objs, num_indices);
- else
- ret = aget_from_index_array (at, index_objs[0].v.array_val);
-
- SLang_free_array (at);
- for (i = 0; i < num_indices; i++)
- SLang_free_object (index_objs + i);
-
- return ret;
-}
-
-static int push_string_element (unsigned char type, unsigned char *s, unsigned int len)
-{
- int i;
-
- if (SLang_peek_at_stack () == SLANG_ARRAY_TYPE)
- {
- char *str;
-
- /* The indices are array values. So, do this: */
- if (-1 == push_string_as_array (s, len))
- return -1;
-
- if (-1 == aget_from_array (1))
- return -1;
-
- if (type == SLANG_BSTRING_TYPE)
- {
- SLang_BString_Type *bs;
- int ret;
-
- if (-1 == pop_array_as_bstring (&bs))
- return -1;
-
- ret = SLang_push_bstring (bs);
- SLbstring_free (bs);
- return ret;
- }
-
- if (-1 == pop_array_as_string (&str))
- return -1;
- return _SLang_push_slstring (str); /* frees s upon error */
- }
-
- if (-1 == SLang_pop_integer (&i))
- return -1;
-
- if (i < 0) i = i + (int)len;
- if ((unsigned int) i > len)
- i = len; /* get \0 character --- bstrings include it as well */
-
- i = s[(unsigned int) i];
-
- return SLang_push_integer (i);
-}
-
-/* ARRAY[i, j, k] generates code: __args i j ...k ARRAY __aput/__aget
- * Here i, j, ... k may be a mixture of integers and 1-d arrays, or
- * a single 2-d array of indices. The 2-d index array is generated by the
- * 'where' function.
- *
- * If ARRAY is of type DataType, then this function will create an array of
- * the appropriate type. In that case, the indices i, j, ..., k must be
- * integers.
- */
-int _SLarray_aget (void)
-{
- unsigned int num_indices;
- int type;
- int (*aget_fun) (unsigned char, unsigned int);
-
- num_indices = (SLang_Num_Function_Args - 1);
-
- type = SLang_peek_at_stack ();
- switch (type)
- {
- case -1:
- return -1; /* stack underflow */
-
- case SLANG_DATATYPE_TYPE:
- return push_create_new_array ();
-
- case SLANG_BSTRING_TYPE:
- if (1 == num_indices)
- {
- SLang_BString_Type *bs;
- int ret;
- unsigned int len;
- unsigned char *s;
-
- if (-1 == SLang_pop_bstring (&bs))
- return -1;
-
- if (NULL == (s = SLbstring_get_pointer (bs, &len)))
- ret = -1;
- else
- ret = push_string_element (type, s, len);
-
- SLbstring_free (bs);
- return ret;
- }
- break;
-
- case SLANG_STRING_TYPE:
- if (1 == num_indices)
- {
- char *s;
- int ret;
-
- if (-1 == SLang_pop_slstring (&s))
- return -1;
-
- ret = push_string_element (type, (unsigned char *)s, strlen (s));
- SLang_free_slstring (s);
- return ret;
- }
- break;
-
- case SLANG_ARRAY_TYPE:
- break;
-
- default:
- aget_fun = _SLclass_get_class (type)->cl_aget;
- if (NULL != aget_fun)
- return (*aget_fun) (type, num_indices);
- }
-
- return aget_from_array (num_indices);
-}
-
-int
-_SLarray_aput_transfer_elem (SLang_Array_Type *at, int *indices,
- VOID_STAR data_to_put, unsigned int sizeof_type, int is_ptr)
-{
- VOID_STAR at_data;
-
- /* Since 1 element is being transferred, there is no need to coerse
- * the array to linear.
- */
- if (NULL == (at_data = get_data_addr (at, indices)))
- return -1;
-
- return transfer_n_elements (at, at_data, data_to_put, sizeof_type, 1, is_ptr);
-}
-
-static int
-aput_get_array_to_put (SLang_Class_Type *cl, unsigned int num_elements, int allow_array,
- SLang_Array_Type **at_ptr, char **data_to_put, unsigned int *data_increment)
-{
- unsigned char data_type;
- SLang_Array_Type *at;
-
- *at_ptr = NULL;
-
- data_type = cl->cl_data_type;
- if (-1 == SLclass_typecast (data_type, 1, allow_array))
- return -1;
-
- if ((data_type != SLANG_ARRAY_TYPE)
- && (data_type != SLANG_ANY_TYPE)
- && (SLANG_ARRAY_TYPE == SLang_peek_at_stack ()))
- {
- if (-1 == SLang_pop_array (&at, 0))
- return -1;
-
- if ((at->num_elements != num_elements)
-#if 0
- || (at->num_dims != 1)
-#endif
- )
- {
- SLang_verror (SL_TYPE_MISMATCH, "Array size is inappropriate for use with index-array");
- SLang_free_array (at);
- return -1;
- }
-
- *data_to_put = (char *) at->data;
- *data_increment = at->sizeof_type;
- *at_ptr = at;
- return 0;
- }
-
- *data_increment = 0;
- *data_to_put = (char *) cl->cl_transfer_buf;
-
- if (-1 == (*cl->cl_apop)(data_type, (VOID_STAR) *data_to_put))
- return -1;
-
- return 0;
-}
-
-static int
-aput_from_indices (SLang_Array_Type *at,
- SLang_Object_Type *index_objs, unsigned int num_indices)
-{
- int *index_data [SLARRAY_MAX_DIMS];
- int range_buf [SLARRAY_MAX_DIMS];
- int range_delta_buf [SLARRAY_MAX_DIMS];
- int max_dims [SLARRAY_MAX_DIMS];
- unsigned int i, num_elements;
- SLang_Array_Type *bt;
- int map_indices[SLARRAY_MAX_DIMS];
- int indices [SLARRAY_MAX_DIMS];
- unsigned int sizeof_type;
- int is_ptr, is_array, ret;
- char *data_to_put;
- unsigned int data_increment;
- SLang_Class_Type *cl;
- int is_dim_array [SLARRAY_MAX_DIMS];
-
- if (-1 == convert_nasty_index_objs (at, index_objs, num_indices,
- index_data, range_buf, range_delta_buf,
- max_dims, &num_elements, &is_array,
- is_dim_array))
- return -1;
-
- cl = at->cl;
-
- if (-1 == aput_get_array_to_put (cl, num_elements, is_array,
- &bt, &data_to_put, &data_increment))
- return -1;
-
- sizeof_type = at->sizeof_type;
- is_ptr = (at->flags & SLARR_DATA_VALUE_IS_POINTER);
-
- ret = -1;
-
- SLMEMSET((char *) map_indices, 0, sizeof(map_indices));
- if (num_elements) do
- {
- for (i = 0; i < num_indices; i++)
- {
- int j;
-
- j = map_indices[i];
-
- if (0 != range_delta_buf[i])
- indices[i] = range_buf[i] + j * range_delta_buf[i];
- else
- indices[i] = index_data [i][j];
- }
-
- if (-1 == _SLarray_aput_transfer_elem (at, indices, (VOID_STAR)data_to_put, sizeof_type, is_ptr))
- goto return_error;
-
- data_to_put += data_increment;
- }
- while (0 == next_index (map_indices, max_dims, num_indices));
-
- ret = 0;
-
- /* drop */
-
- return_error:
- if (bt == NULL)
- {
- if (is_ptr)
- (*cl->cl_destroy) (cl->cl_data_type, (VOID_STAR) data_to_put);
- }
- else SLang_free_array (bt);
-
- return ret;
-}
-
-static int
-aput_from_index_array (SLang_Array_Type *at, SLang_Array_Type *ind_at)
-{
- int *indices, *indices_max;
- unsigned int sizeof_type;
- char *data_to_put, *dest_data;
- unsigned int data_increment;
- int is_ptr;
- SLang_Array_Type *bt;
- SLang_Class_Type *cl;
- int ret;
-
- if (-1 == coerse_array_to_linear (at))
- return -1;
-
- if (-1 == coerse_array_to_linear (ind_at))
- return -1;
-
- if (-1 == check_index_array_ranges (at, ind_at))
- return -1;
-
- sizeof_type = at->sizeof_type;
-
- cl = at->cl;
-
- /* Note that if bt is returned as non NULL, then the array is a linear
- * one.
- */
- if (-1 == aput_get_array_to_put (cl, ind_at->num_elements, 1,
- &bt, &data_to_put, &data_increment))
- return -1;
-
- /* Since the index array is linear, I can address it directly */
- indices = (int *) ind_at->data;
- indices_max = indices + ind_at->num_elements;
-
- is_ptr = (at->flags & SLARR_DATA_VALUE_IS_POINTER);
- dest_data = (char *) at->data;
-
- ret = -1;
- while (indices < indices_max)
- {
- unsigned int offset;
-
- offset = sizeof_type * (unsigned int)*indices;
-
- if (-1 == transfer_n_elements (at, (VOID_STAR) (dest_data + offset),
- (VOID_STAR) data_to_put, sizeof_type, 1,
- is_ptr))
- goto return_error;
-
- indices++;
- data_to_put += data_increment;
- }
-
- ret = 0;
- /* Drop */
-
- return_error:
-
- if (bt == NULL)
- {
- if (is_ptr)
- (*cl->cl_destroy) (cl->cl_data_type, (VOID_STAR)data_to_put);
- }
- else SLang_free_array (bt);
-
- return ret;
-}
-
-/* ARRAY[i, j, k] = generates code: __args i j k ARRAY __aput
- */
-int _SLarray_aput (void)
-{
- unsigned int num_indices;
- SLang_Array_Type *at;
- SLang_Object_Type index_objs [SLARRAY_MAX_DIMS];
- int ret;
- int is_index_array;
- int (*aput_fun) (unsigned char, unsigned int);
- int type;
-
- ret = -1;
- num_indices = (SLang_Num_Function_Args - 1);
-
- type = SLang_peek_at_stack ();
- switch (type)
- {
- case -1:
- return -1;
-
- case SLANG_ARRAY_TYPE:
- break;
-
- default:
- if (NULL != (aput_fun = _SLclass_get_class (type)->cl_aput))
- return (*aput_fun) (type, num_indices);
- break;
- }
-
- if (-1 == SLang_pop_array (&at, 0))
- return -1;
-
- if (at->flags & SLARR_DATA_VALUE_IS_READ_ONLY)
- {
- SLang_verror (SL_READONLY_ERROR, "%s Array is read-only",
- SLclass_get_datatype_name (at->data_type));
- SLang_free_array (at);
- return -1;
- }
-
- if (-1 == pop_indices (index_objs, num_indices, &is_index_array))
- {
- SLang_free_array (at);
- return -1;
- }
-
- if (is_index_array == 0)
- ret = aput_from_indices (at, index_objs, num_indices);
- else
- ret = aput_from_index_array (at, index_objs[0].v.array_val);
-
- SLang_free_array (at);
- free_index_objects (index_objs, num_indices);
- return ret;
-}
-
-/* This is for 1-d matrices only. It is used by the sort function */
-static int push_element_at_index (SLang_Array_Type *at, int indx)
-{
- VOID_STAR data;
-
- if (NULL == (data = get_data_addr (at, &indx)))
- return -1;
-
- return push_element_at_addr (at, (VOID_STAR) data, 1);
-}
-
-static SLang_Name_Type *Sort_Function;
-static SLang_Array_Type *Sort_Array;
-
-static int sort_cmp_fun (int *a, int *b)
-{
- int cmp;
-
- if (SLang_Error
- || (-1 == push_element_at_index (Sort_Array, *a))
- || (-1 == push_element_at_index (Sort_Array, *b))
- || (-1 == SLexecute_function (Sort_Function))
- || (-1 == SLang_pop_integer (&cmp)))
- {
- /* DO not allow qsort to loop forever. Return something meaningful */
- if (*a > *b) return 1;
- if (*a < *b) return -1;
- return 0;
- }
-
- return cmp;
-}
-
-static int builtin_sort_cmp_fun (int *a, int *b)
-{
- VOID_STAR a_data;
- VOID_STAR b_data;
- SLang_Class_Type *cl;
-
- cl = Sort_Array->cl;
-
- if ((SLang_Error == 0)
- && (NULL != (a_data = get_data_addr (Sort_Array, a)))
- && (NULL != (b_data = get_data_addr (Sort_Array, b))))
- {
- int cmp;
-
- if ((Sort_Array->flags & SLARR_DATA_VALUE_IS_POINTER)
- && ((*(VOID_STAR *) a_data == NULL) || (*(VOID_STAR *) a_data == NULL)))
- {
- SLang_verror (SL_VARIABLE_UNINITIALIZED,
- "%s array has unitialized element", cl->cl_name);
- }
- else if (0 == (*cl->cl_cmp)(Sort_Array->data_type, a_data, b_data, &cmp))
- return cmp;
- }
-
-
- if (*a > *b) return 1;
- if (*a == *b) return 0;
- return -1;
-}
-
-static void sort_array_internal (SLang_Array_Type *at_str,
- SLang_Name_Type *entry,
- int (*sort_fun)(int *, int *))
-{
- SLang_Array_Type *ind_at;
- /* This is a silly hack to make up for braindead compilers and the lack of
- * uniformity in prototypes for qsort.
- */
- void (*qsort_fun) (char *, unsigned int, int, int (*)(int *, int *));
- int *indx;
- int i, n;
- int dims[1];
-
- if (Sort_Array != NULL)
- {
- SLang_verror (SL_NOT_IMPLEMENTED, "array_sort is not recursive");
- return;
- }
-
- n = at_str->num_elements;
-
- if (at_str->num_dims != 1)
- {
- SLang_verror (SL_INVALID_PARM, "sort is restricted to 1 dim arrays");
- return;
- }
-
- dims [0] = n;
-
- if (NULL == (ind_at = SLang_create_array (SLANG_INT_TYPE, 0, NULL, dims, 1)))
- return;
-
- indx = (int *) ind_at->data;
- for (i = 0; i < n; i++) indx[i] = i;
-
- if (n > 1)
- {
- qsort_fun = (void (*)(char *, unsigned int, int, int (*)(int *,
- int *)))
- qsort;
-
- Sort_Array = at_str;
- Sort_Function = entry;
- (*qsort_fun) ((char *) indx, n, sizeof (int), sort_fun);
- }
-
- Sort_Array = NULL;
- (void) SLang_push_array (ind_at, 1);
-}
-
-static void sort_array (void)
-{
- SLang_Name_Type *entry;
- SLang_Array_Type *at;
- int (*sort_fun) (int *, int *);
-
- if (SLang_Num_Function_Args != 1)
- {
- sort_fun = sort_cmp_fun;
-
- if (NULL == (entry = SLang_pop_function ()))
- return;
-
- if (-1 == SLang_pop_array (&at, 1))
- return;
- }
- else
- {
- sort_fun = builtin_sort_cmp_fun;
- if (-1 == SLang_pop_array (&at, 1))
- return;
- if (at->cl->cl_cmp == NULL)
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "%s does not have a predefined sorting method",
- at->cl->cl_name);
- SLang_free_array (at);
- return;
- }
- entry = NULL;
- }
-
- sort_array_internal (at, entry, sort_fun);
- SLang_free_array (at);
- SLang_free_function (entry);
-}
-
-static void bstring_to_array (SLang_BString_Type *bs)
-{
- unsigned char *s;
- unsigned int len;
-
- if (NULL == (s = SLbstring_get_pointer (bs, &len)))
- (void) SLang_push_null ();
- else
- (void) push_string_as_array (s, len);
-}
-
-static void array_to_bstring (SLang_Array_Type *at)
-{
- unsigned int nbytes;
- SLang_BString_Type *bs;
-
- nbytes = at->num_elements * at->sizeof_type;
- bs = SLbstring_create ((unsigned char *)at->data, nbytes);
- (void) SLang_push_bstring (bs);
- SLbstring_free (bs);
-}
-
-static void init_char_array (void)
-{
- SLang_Array_Type *at;
- char *s;
- unsigned int n, ndim;
-
- if (SLang_pop_slstring (&s)) return;
-
- if (-1 == SLang_pop_array (&at, 0))
- goto free_and_return;
-
- if (at->data_type != SLANG_CHAR_TYPE)
- {
- SLang_doerror("Operation requires character array");
- goto free_and_return;
- }
-
- n = strlen (s);
- ndim = at->num_elements;
- if (n > ndim)
- {
- SLang_doerror("String too big to init array");
- goto free_and_return;
- }
-
- strncpy((char *) at->data, s, ndim);
- /* drop */
-
- free_and_return:
- SLang_free_array (at);
- SLang_free_slstring (s);
-}
-
-static void array_info (void)
-{
- SLang_Array_Type *at, *bt;
- int num_dims;
-
- if (-1 == pop_array (&at, 1))
- return;
-
- num_dims = (int)at->num_dims;
-
- if (NULL != (bt = SLang_create_array (SLANG_INT_TYPE, 0, NULL, &num_dims, 1)))
- {
- int *bdata;
- int i;
- int *a_dims;
-
- a_dims = at->dims;
- bdata = (int *) bt->data;
- for (i = 0; i < num_dims; i++) bdata [i] = a_dims [i];
-
- if (0 == SLang_push_array (bt, 1))
- {
- (void) SLang_push_integer ((int) at->num_dims);
- (void) _SLang_push_datatype (at->data_type);
- }
- }
-
- SLang_free_array (at);
-}
-
-static VOID_STAR range_get_data_addr (SLang_Array_Type *at, int *dims)
-{
- static int value;
- SLarray_Range_Array_Type *r;
- int d;
-
- d = *dims;
- r = (SLarray_Range_Array_Type *)at->data;
-
- if (d < 0)
- d += at->dims[0];
-
- value = r->first_index + d * r->delta;
- return (VOID_STAR) &value;
-}
-
-static SLang_Array_Type *inline_implicit_int_array (int *xminptr, int *xmaxptr, int *dxptr)
-{
- int delta;
- SLang_Array_Type *at;
- int dims, idims;
- SLarray_Range_Array_Type *data;
-
- if (dxptr == NULL) delta = 1;
- else delta = *dxptr;
-
- if (delta == 0)
- {
- SLang_verror (SL_INVALID_PARM, "range-array increment must be non-zero");
- return NULL;
- }
-
- data = (SLarray_Range_Array_Type *) SLmalloc (sizeof (SLarray_Range_Array_Type));
- if (data == NULL)
- return NULL;
-
- SLMEMSET((char *) data, 0, sizeof (SLarray_Range_Array_Type));
- data->delta = delta;
- dims = 0;
-
- if (xminptr != NULL)
- data->first_index = *xminptr;
- else
- data->first_index = 0;
-
- if (xmaxptr != NULL)
- data->last_index = *xmaxptr;
- else
- data->last_index = -1;
-
-/* if ((xminptr != NULL) && (xmaxptr != NULL))
- { */
- idims = 1 + (data->last_index - data->first_index) / delta;
- if (idims > 0)
- dims = idims;
- /* } */
-
- if (NULL == (at = SLang_create_array (SLANG_INT_TYPE, 0, (VOID_STAR) data, &dims, 1)))
- return NULL;
-
- at->index_fun = range_get_data_addr;
- at->flags |= SLARR_DATA_VALUE_IS_RANGE;
-
- return at;
-}
-
-#if SLANG_HAS_FLOAT
-static SLang_Array_Type *inline_implicit_floating_array (unsigned char type,
- double *xminptr, double *xmaxptr, double *dxptr)
-{
- int n, i;
- SLang_Array_Type *at;
- int dims;
- double xmin, xmax, dx;
-
- if ((xminptr == NULL) || (xmaxptr == NULL))
- {
- SLang_verror (SL_INVALID_PARM, "range-array has unknown size");
- return NULL;
- }
- xmin = *xminptr;
- xmax = *xmaxptr;
- if (dxptr == NULL) dx = 1.0;
- else dx = *dxptr;
-
- if (dx == 0.0)
- {
- SLang_doerror ("range-array increment must be non-zero");
- return NULL;
- }
-
- /* I have convinced myself that it is better to use semi-open intervals
- * because of less ambiguities. So, [a:b:c] will represent the set of
- * values a, a + c, a + 2c ... a + nc
- * such that a + nc < b. That is, b lies outside the interval.
- */
-
- /* Allow for roundoff by adding 0.5 before truncation */
- n = (int)(1.5 + ((xmax - xmin) / dx));
- if (n <= 0)
- n = 0;
- else
- {
- double last = xmin + (n-1) * dx;
-
- if (dx > 0.0)
- {
- if (last >= xmax)
- n -= 1;
- }
- else if (last <= xmax)
- n -= 1;
- }
-
- dims = n;
- if (NULL == (at = SLang_create_array1 (type, 0, NULL, &dims, 1, 1)))
- return NULL;
-
- if (type == SLANG_DOUBLE_TYPE)
- {
- double *ptr;
-
- ptr = (double *) at->data;
-
- for (i = 0; i < n; i++)
- ptr[i] = xmin + i * dx;
- }
- else
- {
- float *ptr;
-
- ptr = (float *) at->data;
-
- for (i = 0; i < n; i++)
- ptr[i] = (float) (xmin + i * dx);
- }
- return at;
-}
-#endif
-
-/* FIXME: Priority=medium
- * This needs to be updated to work with all integer types.
- */
-int _SLarray_inline_implicit_array (void)
-{
- int int_vals[3];
-#if SLANG_HAS_FLOAT
- double double_vals[3];
-#endif
- int has_vals[3];
- unsigned int i, count;
- SLang_Array_Type *at;
- int precedence;
- unsigned char type;
- int is_int;
-
- count = SLang_Num_Function_Args;
-
- if (count == 2)
- has_vals [2] = 0;
- else if (count != 3)
- {
- SLang_doerror ("wrong number of arguments to __implicit_inline_array");
- return -1;
- }
-
-#if SLANG_HAS_FLOAT
- is_int = 1;
-#endif
-
- type = 0;
- precedence = 0;
-
- i = count;
- while (i--)
- {
- int this_type, this_precedence;
-
- if (-1 == (this_type = SLang_peek_at_stack ()))
- return -1;
-
- this_precedence = _SLarith_get_precedence ((unsigned char) this_type);
- if (precedence < this_precedence)
- {
- type = (unsigned char) this_type;
- precedence = this_precedence;
- }
-
- has_vals [i] = 1;
-
- switch (this_type)
- {
- case SLANG_NULL_TYPE:
- has_vals[i] = 0;
- (void) SLdo_pop ();
- break;
-
-#if SLANG_HAS_FLOAT
- case SLANG_DOUBLE_TYPE:
- case SLANG_FLOAT_TYPE:
- if (-1 == SLang_pop_double (double_vals + i, NULL, NULL))
- return -1;
- is_int = 0;
- break;
-#endif
- default:
- if (-1 == SLang_pop_integer (int_vals + i))
- return -1;
- double_vals[i] = (double) int_vals[i];
- }
- }
-
-#if SLANG_HAS_FLOAT
- if (is_int == 0)
- at = inline_implicit_floating_array (type,
- (has_vals[0] ? &double_vals[0] : NULL),
- (has_vals[1] ? &double_vals[1] : NULL),
- (has_vals[2] ? &double_vals[2] : NULL));
- else
-#endif
- at = inline_implicit_int_array ((has_vals[0] ? &int_vals[0] : NULL),
- (has_vals[1] ? &int_vals[1] : NULL),
- (has_vals[2] ? &int_vals[2] : NULL));
-
- if (at == NULL)
- return -1;
-
- return SLang_push_array (at, 1);
-}
-
-int _SLarray_wildcard_array (void)
-{
- SLang_Array_Type *at;
-
- if (NULL == (at = inline_implicit_int_array (NULL, NULL, NULL)))
- return -1;
-
- return SLang_push_array (at, 1);
-}
-
-static SLang_Array_Type *concat_arrays (unsigned int count)
-{
- SLang_Array_Type **arrays;
- SLang_Array_Type *at, *bt;
- unsigned int i;
- int num_elements;
- unsigned char type;
- char *src_data, *dest_data;
- int is_ptr;
- unsigned int sizeof_type;
- int max_dims, min_dims, max_rows, min_rows;
-
- arrays = (SLang_Array_Type **)SLmalloc (count * sizeof (SLang_Array_Type *));
- if (arrays == NULL)
- {
- SLdo_pop_n (count);
- return NULL;
- }
- SLMEMSET((char *) arrays, 0, count * sizeof(SLang_Array_Type *));
-
- at = NULL;
-
- num_elements = 0;
- i = count;
-
- while (i != 0)
- {
- i--;
-
- if (-1 == SLang_pop_array (&bt, 1))
- goto free_and_return;
-
- arrays[i] = bt;
- num_elements += (int)bt->num_elements;
- }
-
- type = arrays[0]->data_type;
- max_dims = min_dims = arrays[0]->num_dims;
- min_rows = max_rows = arrays[0]->dims[0];
-
- for (i = 1; i < count; i++)
- {
- SLang_Array_Type *ct;
- int num;
-
- bt = arrays[i];
-
- num = bt->num_dims;
- if (num > max_dims) max_dims = num;
- if (num < min_dims) min_dims = num;
-
- num = bt->dims[0];
- if (num > max_rows) max_rows = num;
- if (num < min_rows) min_rows = num;
-
- if (type == bt->data_type)
- continue;
-
- if (1 != _SLarray_typecast (bt->data_type, (VOID_STAR) &bt, 1,
- type, (VOID_STAR) &ct, 1))
- goto free_and_return;
-
- SLang_free_array (bt);
- arrays [i] = ct;
- }
-
- if (NULL == (at = SLang_create_array (type, 0, NULL, &num_elements, 1)))
- goto free_and_return;
-
- is_ptr = (at->flags & SLARR_DATA_VALUE_IS_POINTER);
- sizeof_type = at->sizeof_type;
- dest_data = (char *) at->data;
-
- for (i = 0; i < count; i++)
- {
- bt = arrays[i];
-
- src_data = (char *) bt->data;
- num_elements = bt->num_elements;
-
- if (-1 == transfer_n_elements (bt, (VOID_STAR)dest_data, (VOID_STAR)src_data, sizeof_type,
- num_elements, is_ptr))
- {
- SLang_free_array (at);
- at = NULL;
- goto free_and_return;
- }
-
- dest_data += num_elements * sizeof_type;
- }
-
- /* If the arrays are all 1-d, and all the same size, then reshape to a
- * 2-d array. This will allow us to do, e.g.
- * a = [[1,2], [3,4]]
- * to specifiy a 2-d.
- * Someday I will generalize this.
- */
- if ((max_dims == min_dims) && (max_dims == 1) && (min_rows == max_rows))
- {
- at->num_dims = 2;
- at->dims[0] = count;
- at->dims[1] = min_rows;
- }
-
- free_and_return:
-
- for (i = 0; i < count; i++)
- SLang_free_array (arrays[i]);
- SLfree ((char *) arrays);
-
- return at;
-}
-
-int _SLarray_inline_array (void)
-{
- SLang_Object_Type *obj;
- unsigned char type, this_type;
- unsigned int count;
- SLang_Array_Type *at;
-
- obj = _SLStack_Pointer;
-
- count = SLang_Num_Function_Args;
- type = 0;
-
- while ((count > 0) && (--obj >= _SLRun_Stack))
- {
- this_type = obj->data_type;
-
- if (type == 0)
- type = this_type;
-
- if ((type == this_type) || (type == SLANG_ARRAY_TYPE))
- {
- count--;
- continue;
- }
-
- switch (this_type)
- {
- case SLANG_ARRAY_TYPE:
- type = SLANG_ARRAY_TYPE;
- break;
-
- case SLANG_INT_TYPE:
- switch (type)
- {
-#if SLANG_HAS_FLOAT
- case SLANG_DOUBLE_TYPE:
- break;
-#endif
-#if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- break;
-#endif
- default:
- goto type_mismatch;
- }
- break;
-#if SLANG_HAS_FLOAT
- case SLANG_DOUBLE_TYPE:
- switch (type)
- {
- case SLANG_INT_TYPE:
- type = SLANG_DOUBLE_TYPE;
- break;
-# if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- break;
-# endif
- default:
- goto type_mismatch;
- }
- break;
-#endif
-#if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- switch (type)
- {
- case SLANG_INT_TYPE:
- case SLANG_DOUBLE_TYPE:
- type = SLANG_COMPLEX_TYPE;
- break;
-
- default:
- goto type_mismatch;
- }
- break;
-#endif
- default:
- type_mismatch:
- _SLclass_type_mismatch_error (type, this_type);
- return -1;
- }
- count--;
- }
-
- if (count != 0)
- {
- SLang_Error = SL_STACK_UNDERFLOW;
- return -1;
- }
-
- count = SLang_Num_Function_Args;
-
- if (count == 0)
- {
- SLang_verror (SL_NOT_IMPLEMENTED, "Empty inline-arrays not supported");
- return -1;
- }
-
- if (type == SLANG_ARRAY_TYPE)
- {
- if (NULL == (at = concat_arrays (count)))
- return -1;
- }
- else
- {
- SLang_Object_Type index_obj;
- int icount = (int) count;
-
- if (NULL == (at = SLang_create_array (type, 0, NULL, &icount, 1)))
- return -1;
-
- index_obj.data_type = SLANG_INT_TYPE;
- while (count != 0)
- {
- count--;
- index_obj.v.int_val = (int) count;
- if (-1 == aput_from_indices (at, &index_obj, 1))
- {
- SLang_free_array (at);
- SLdo_pop_n (count);
- return -1;
- }
- }
- }
-
- return SLang_push_array (at, 1);
-}
-
-static int array_binary_op_result (int op, unsigned char a, unsigned char b,
- unsigned char *c)
-{
- (void) op;
- (void) a;
- (void) b;
- *c = SLANG_ARRAY_TYPE;
- return 1;
-}
-
-static int array_binary_op (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- SLang_Array_Type *at, *bt, *ct;
- unsigned int i, num_dims;
- int (*binary_fun) (int,
- unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR);
- SLang_Class_Type *a_cl, *b_cl, *c_cl;
- int no_init;
-
- if (a_type == SLANG_ARRAY_TYPE)
- {
- if (na != 1)
- {
- SLang_verror (SL_NOT_IMPLEMENTED, "Binary operation on multiple arrays not implemented");
- return -1;
- }
-
- at = *(SLang_Array_Type **) ap;
- if (-1 == coerse_array_to_linear (at))
- return -1;
- ap = at->data;
- a_type = at->data_type;
- na = at->num_elements;
- }
- else
- {
- at = NULL;
- }
-
- if (b_type == SLANG_ARRAY_TYPE)
- {
- if (nb != 1)
- {
- SLang_verror (SL_NOT_IMPLEMENTED, "Binary operation on multiple arrays not implemented");
- return -1;
- }
-
- bt = *(SLang_Array_Type **) bp;
- if (-1 == coerse_array_to_linear (bt))
- return -1;
- bp = bt->data;
- b_type = bt->data_type;
- nb = bt->num_elements;
- }
- else
- {
- bt = NULL;
- }
-
- if ((at != NULL) && (bt != NULL))
- {
- num_dims = at->num_dims;
-
- if (num_dims != bt->num_dims)
- {
- SLang_verror (SL_TYPE_MISMATCH, "Arrays must have same dim for binary operation");
- return -1;
- }
-
- for (i = 0; i < num_dims; i++)
- {
- if (at->dims[i] != bt->dims[i])
- {
- SLang_verror (SL_TYPE_MISMATCH, "Arrays must be the same for binary operation");
- return -1;
- }
- }
- }
-
- a_cl = _SLclass_get_class (a_type);
- b_cl = _SLclass_get_class (b_type);
-
- if (NULL == (binary_fun = _SLclass_get_binary_fun (op, a_cl, b_cl, &c_cl, 1)))
- return -1;
-
- no_init = ((c_cl->cl_class_type == SLANG_CLASS_TYPE_SCALAR)
- || (c_cl->cl_class_type == SLANG_CLASS_TYPE_VECTOR));
-
- ct = NULL;
-#if _SLANG_USE_TMP_OPTIMIZATION
- /* If we are dealing with scalar (or vector) objects, and if the object
- * appears to be owned by the stack, then use it instead of creating a
- * new version. This can happen with code such as:
- * @ x = [1,2,3,4];
- * @ x = __tmp(x) + 1;
- */
- if (no_init)
- {
- if ((at != NULL)
- && (at->num_refs == 1)
- && (at->data_type == c_cl->cl_data_type))
- {
- ct = at;
- ct->num_refs = 2;
- }
- else if ((bt != NULL)
- && (bt->num_refs == 1)
- && (bt->data_type == c_cl->cl_data_type))
- {
- ct = bt;
- ct->num_refs = 2;
- }
- }
-#endif /* _SLANG_USE_TMP_OPTIMIZATION */
-
- if (ct == NULL)
- {
- if (at != NULL) ct = at; else ct = bt;
- ct = SLang_create_array1 (c_cl->cl_data_type, 0, NULL, ct->dims, ct->num_dims, no_init);
- if (ct == NULL)
- return -1;
- }
-
-
- if ((na == 0) || (nb == 0) /* allow empty arrays */
- || (1 == (*binary_fun) (op, a_type, ap, na, b_type, bp, nb, ct->data)))
- {
- *(SLang_Array_Type **) cp = ct;
- return 1;
- }
-
- SLang_free_array (ct);
- return -1;
-}
-
-static void array_where (void)
-{
- SLang_Array_Type *at, *bt;
- char *a_data;
- int *b_data;
- unsigned int i, num_elements;
- int b_num;
-
- if (-1 == SLang_pop_array (&at, 1))
- return;
-
- bt = NULL;
-
- if (at->data_type != SLANG_CHAR_TYPE)
- {
- int zero;
- SLang_Array_Type *tmp_at;
-
- tmp_at = at;
- zero = 0;
- if (1 != array_binary_op (SLANG_NE,
- SLANG_ARRAY_TYPE, (VOID_STAR) &at, 1,
- SLANG_CHAR_TYPE, (VOID_STAR) &zero, 1,
- (VOID_STAR) &tmp_at))
- goto return_error;
-
- SLang_free_array (at);
- at = tmp_at;
- if (at->data_type != SLANG_CHAR_TYPE)
- {
- SLang_Error = SL_TYPE_MISMATCH;
- goto return_error;
- }
- }
-
- a_data = (char *) at->data;
- num_elements = at->num_elements;
-
- b_num = 0;
- for (i = 0; i < num_elements; i++)
- if (a_data[i] != 0) b_num++;
-
- if (NULL == (bt = SLang_create_array1 (SLANG_INT_TYPE, 0, NULL, &b_num, 1, 1)))
- goto return_error;
-
- b_data = (int *) bt->data;
-
- i = 0;
- while (b_num)
- {
- if (a_data[i] != 0)
- {
- *b_data++ = i;
- b_num--;
- }
-
- i++;
- }
-
- (void) SLang_push_array (bt, 0);
- /* drop */
-
- return_error:
- SLang_free_array (at);
- SLang_free_array (bt);
-}
-
-static int do_array_reshape (SLang_Array_Type *at, SLang_Array_Type *ind_at)
-{
- int *dims;
- unsigned int i, num_dims;
- unsigned int num_elements;
-
- if ((ind_at->data_type != SLANG_INT_TYPE)
- || (ind_at->num_dims != 1))
- {
- SLang_verror (SL_TYPE_MISMATCH, "Expecting 1-d integer array");
- return -1;
- }
-
- num_dims = ind_at->num_elements;
- dims = (int *) ind_at->data;
-
- num_elements = 1;
- for (i = 0; i < num_dims; i++)
- {
- int d = dims[i];
- if (d < 0)
- {
- SLang_verror (SL_INVALID_PARM, "reshape: dimension is less then 0");
- return -1;
- }
-
- num_elements = (unsigned int) d * num_elements;
- }
-
- if ((num_elements != at->num_elements)
- || (num_dims > SLARRAY_MAX_DIMS))
- {
- SLang_verror (SL_INVALID_PARM, "Unable to reshape array to specified size");
- return -1;
- }
-
- for (i = 0; i < num_dims; i++)
- at->dims [i] = dims[i];
-
- while (i < SLARRAY_MAX_DIMS)
- {
- at->dims [i] = 1;
- i++;
- }
-
- at->num_dims = num_dims;
- return 0;
-}
-
-static void array_reshape (SLang_Array_Type *at, SLang_Array_Type *ind_at)
-{
- (void) do_array_reshape (at, ind_at);
-}
-
-static void _array_reshape (SLang_Array_Type *ind_at)
-{
- SLang_Array_Type *at;
- SLang_Array_Type *new_at;
-
- if (-1 == SLang_pop_array (&at, 1))
- return;
-
- /* FIXME: Priority=low: duplicate_array could me modified to look at num_refs */
-
- /* Now try to avoid the overhead of creating a new array if possible */
- if (at->num_refs == 1)
- {
- /* Great, we are the sole owner of this array. */
- if ((-1 == do_array_reshape (at, ind_at))
- || (-1 == SLclass_push_ptr_obj (SLANG_ARRAY_TYPE, (VOID_STAR)at)))
- SLang_free_array (at);
- return;
- }
-
- new_at = SLang_duplicate_array (at);
- if (new_at != NULL)
- {
- if (0 == do_array_reshape (new_at, ind_at))
- (void) SLang_push_array (new_at, 0);
-
- SLang_free_array (new_at);
- }
- SLang_free_array (at);
-}
-
-typedef struct
-{
- SLang_Array_Type *at;
- unsigned int increment;
- char *addr;
-}
-Map_Arg_Type;
-/* Usage: array_map (Return-Type, func, args,....); */
-static void array_map (void)
-{
- Map_Arg_Type *args;
- unsigned int num_args;
- unsigned int i, i_control;
- SLang_Name_Type *nt;
- unsigned int num_elements;
- SLang_Array_Type *at;
- char *addr;
- unsigned char type;
-
- at = NULL;
- args = NULL;
- nt = NULL;
-
- if (SLang_Num_Function_Args < 3)
- {
- SLang_verror (SL_INVALID_PARM,
- "Usage: array_map (Return-Type, &func, args...)");
- SLdo_pop_n (SLang_Num_Function_Args);
- return;
- }
-
- num_args = (unsigned int)SLang_Num_Function_Args - 2;
- args = (Map_Arg_Type *) SLmalloc (num_args * sizeof (Map_Arg_Type));
- if (args == NULL)
- {
- SLdo_pop_n (SLang_Num_Function_Args);
- return;
- }
- memset ((char *) args, 0, num_args * sizeof (Map_Arg_Type));
- i = num_args;
- i_control = 0;
- while (i > 0)
- {
- i--;
- if (-1 == SLang_pop_array (&args[i].at, 1))
- {
- SLdo_pop_n (i + 2);
- goto return_error;
- }
- if (args[i].at->num_elements > 1)
- i_control = i;
- }
-
- if (NULL == (nt = SLang_pop_function ()))
- {
- SLdo_pop_n (1);
- goto return_error;
- }
-
- num_elements = args[i_control].at->num_elements;
-
- if (-1 == _SLang_pop_datatype (&type))
- goto return_error;
-
- if (type == SLANG_UNDEFINED_TYPE) /* Void_Type */
- at = NULL;
- else
- {
- at = args[i_control].at;
-
- if (NULL == (at = SLang_create_array (type, 0, NULL, at->dims, at->num_dims)))
- goto return_error;
- }
-
-
- for (i = 0; i < num_args; i++)
- {
- SLang_Array_Type *ati = args[i].at;
- /* FIXME: Priority = low: The actual dimensions should be compared. */
- if (ati->num_elements == num_elements)
- args[i].increment = ati->sizeof_type;
- /* memset already guarantees increment to be zero */
-
- if (ati->num_elements == 0)
- {
- SLang_verror (0, "array_map: function argument %d of %d is an empty array",
- i+1, num_args);
- goto return_error;
- }
-
- args[i].addr = (char *) ati->data;
- }
-
- if (at == NULL)
- addr = NULL;
- else
- addr = (char *)at->data;
-
- for (i = 0; i < num_elements; i++)
- {
- unsigned int j;
-
- if (-1 == SLang_start_arg_list ())
- goto return_error;
-
- for (j = 0; j < num_args; j++)
- {
- if (-1 == push_element_at_addr (args[j].at,
- (VOID_STAR) args[j].addr,
- 1))
- {
- SLdo_pop_n (j);
- goto return_error;
- }
-
- args[j].addr += args[j].increment;
- }
-
- if (-1 == SLang_end_arg_list ())
- {
- SLdo_pop_n (num_args);
- goto return_error;
- }
-
- if (-1 == SLexecute_function (nt))
- goto return_error;
-
- if (at == NULL)
- continue;
-
- if (-1 == at->cl->cl_apop (type, (VOID_STAR) addr))
- goto return_error;
-
- addr += at->sizeof_type;
- }
-
- if (at != NULL)
- (void) SLang_push_array (at, 0);
-
- /* drop */
-
- return_error:
- SLang_free_array (at);
- SLang_free_function (nt);
- if (args != NULL)
- {
- for (i = 0; i < num_args; i++)
- SLang_free_array (args[i].at);
-
- SLfree ((char *) args);
- }
-}
-
-static SLang_Intrin_Fun_Type Array_Table [] =
-{
- MAKE_INTRINSIC_0("array_map", array_map, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("array_sort", sort_array, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_1("array_to_bstring", array_to_bstring, SLANG_VOID_TYPE, SLANG_ARRAY_TYPE),
- MAKE_INTRINSIC_1("bstring_to_array", bstring_to_array, SLANG_VOID_TYPE, SLANG_BSTRING_TYPE),
- MAKE_INTRINSIC("init_char_array", init_char_array, SLANG_VOID_TYPE, 0),
- MAKE_INTRINSIC("array_info", array_info, SLANG_VOID_TYPE, 0),
- MAKE_INTRINSIC("where", array_where, SLANG_VOID_TYPE, 0),
- MAKE_INTRINSIC_2("reshape", array_reshape, SLANG_VOID_TYPE, SLANG_ARRAY_TYPE, SLANG_ARRAY_TYPE),
- MAKE_INTRINSIC_1("_reshape", _array_reshape, SLANG_VOID_TYPE, SLANG_ARRAY_TYPE),
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-static char *array_string (unsigned char type, VOID_STAR v)
-{
- SLang_Array_Type *at;
- char buf[512];
- unsigned int i, num_dims;
- int *dims;
-
- at = *(SLang_Array_Type **) v;
- type = at->data_type;
- num_dims = at->num_dims;
- dims = at->dims;
-
- sprintf (buf, "%s[%d", SLclass_get_datatype_name (type), at->dims[0]);
-
- for (i = 1; i < num_dims; i++)
- sprintf (buf + strlen(buf), ",%d", dims[i]);
- strcat (buf, "]");
-
- return SLmake_string (buf);
-}
-
-static void array_destroy (unsigned char type, VOID_STAR v)
-{
- (void) type;
- SLang_free_array (*(SLang_Array_Type **) v);
-}
-
-static int array_push (unsigned char type, VOID_STAR v)
-{
- SLang_Array_Type *at;
-
- (void) type;
- at = *(SLang_Array_Type **) v;
- return SLang_push_array (at, 0);
-}
-
-/* Intrinsic arrays are not stored in a variable. So, the address that
- * would contain the variable holds the array address.
- */
-static int array_push_intrinsic (unsigned char type, VOID_STAR v)
-{
- (void) type;
- return SLang_push_array ((SLang_Array_Type *) v, 0);
-}
-
-int _SLarray_add_bin_op (unsigned char type)
-{
- SL_OOBinary_Type *ab;
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
- ab = cl->cl_binary_ops;
-
- while (ab != NULL)
- {
- if (ab->data_type == SLANG_ARRAY_TYPE)
- return 0;
- ab = ab->next;
- }
-
- if ((-1 == SLclass_add_binary_op (SLANG_ARRAY_TYPE, type, array_binary_op, array_binary_op_result))
- || (-1 == SLclass_add_binary_op (type, SLANG_ARRAY_TYPE, array_binary_op, array_binary_op_result)))
- return -1;
-
- return 0;
-}
-
-static SLang_Array_Type *
-do_array_math_op (int op, int unary_type,
- SLang_Array_Type *at, unsigned int na)
-{
- unsigned char a_type, b_type;
- int (*f) (int, unsigned char, VOID_STAR, unsigned int, VOID_STAR);
- SLang_Array_Type *bt;
- SLang_Class_Type *b_cl;
- int no_init;
-
- if (na != 1)
- {
- SLang_verror (SL_NOT_IMPLEMENTED, "Operation restricted to 1 array");
- return NULL;
- }
-
- a_type = at->data_type;
- if (NULL == (f = _SLclass_get_unary_fun (op, at->cl, &b_cl, unary_type)))
- return NULL;
- b_type = b_cl->cl_data_type;
-
- if (-1 == coerse_array_to_linear (at))
- return NULL;
-
- no_init = ((b_cl->cl_class_type == SLANG_CLASS_TYPE_SCALAR)
- || (b_cl->cl_class_type == SLANG_CLASS_TYPE_VECTOR));
-
-#if _SLANG_USE_TMP_OPTIMIZATION
- /* If we are dealing with scalar (or vector) objects, and if the object
- * appears to be owned by the stack, then use it instead of creating a
- * new version. This can happen with code such as:
- * @ x = [1,2,3,4];
- * @ x = UNARY_OP(__tmp(x));
- */
- if (no_init
- && (at->num_refs == 1)
- && (at->data_type == b_cl->cl_data_type))
- {
- bt = at;
- bt->num_refs = 2;
- }
- else
-#endif /* _SLANG_USE_TMP_OPTIMIZATION */
- if (NULL == (bt = SLang_create_array1 (b_type, 0, NULL, at->dims, at->num_dims, no_init)))
- return NULL;
-
- if (1 != (*f)(op, a_type, at->data, at->num_elements, bt->data))
- {
- SLang_free_array (bt);
- return NULL;
- }
- return bt;
-}
-
-static int
-array_unary_op_result (int op, unsigned char a, unsigned char *b)
-{
- (void) op;
- (void) a;
- *b = SLANG_ARRAY_TYPE;
- return 1;
-}
-
-static int
-array_unary_op (int op,
- unsigned char a, VOID_STAR ap, unsigned int na,
- VOID_STAR bp)
-{
- SLang_Array_Type *at;
-
- (void) a;
- at = *(SLang_Array_Type **) ap;
- if (NULL == (at = do_array_math_op (op, _SLANG_BC_UNARY, at, na)))
- {
- if (SLang_Error) return -1;
- return 0;
- }
- *(SLang_Array_Type **) bp = at;
- return 1;
-}
-
-static int
-array_math_op (int op,
- unsigned char a, VOID_STAR ap, unsigned int na,
- VOID_STAR bp)
-{
- SLang_Array_Type *at;
-
- (void) a;
- at = *(SLang_Array_Type **) ap;
- if (NULL == (at = do_array_math_op (op, _SLANG_BC_MATH_UNARY, at, na)))
- {
- if (SLang_Error) return -1;
- return 0;
- }
- *(SLang_Array_Type **) bp = at;
- return 1;
-}
-
-static int
-array_app_op (int op,
- unsigned char a, VOID_STAR ap, unsigned int na,
- VOID_STAR bp)
-{
- SLang_Array_Type *at;
-
- (void) a;
- at = *(SLang_Array_Type **) ap;
- if (NULL == (at = do_array_math_op (op, _SLANG_BC_APP_UNARY, at, na)))
- {
- if (SLang_Error) return -1;
- return 0;
- }
- *(SLang_Array_Type **) bp = at;
- return 1;
-}
-
-int
-_SLarray_typecast (unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp,
- int is_implicit)
-{
- SLang_Array_Type *at, *bt;
- SLang_Class_Type *b_cl;
- int no_init;
- int (*t) (unsigned char, VOID_STAR, unsigned int, unsigned char, VOID_STAR);
-
- if (na != 1)
- {
- SLang_verror (SL_NOT_IMPLEMENTED, "typecast of multiple arrays not implemented");
- return -1;
- }
-
- at = *(SLang_Array_Type **) ap;
- a_type = at->data_type;
-
- if (a_type == b_type)
- {
- at->num_refs += 1;
- *(SLang_Array_Type **) bp = at;
- return 1;
- }
-
- if (NULL == (t = _SLclass_get_typecast (a_type, b_type, is_implicit)))
- return -1;
-
- if (-1 == coerse_array_to_linear (at))
- return -1;
-
- b_cl = _SLclass_get_class (b_type);
-
- no_init = ((b_cl->cl_class_type == SLANG_CLASS_TYPE_SCALAR)
- || (b_cl->cl_class_type == SLANG_CLASS_TYPE_VECTOR));
-
- if (NULL == (bt = SLang_create_array1 (b_type, 0, NULL, at->dims, at->num_dims, no_init)))
- return -1;
-
- if (1 == (*t) (a_type, at->data, at->num_elements, b_type, bt->data))
- {
- *(SLang_Array_Type **) bp = bt;
- return 1;
- }
-
- SLang_free_array (bt);
- return 0;
-}
-
-SLang_Array_Type *SLang_duplicate_array (SLang_Array_Type *at)
-{
- SLang_Array_Type *bt;
- char *data, *a_data;
- unsigned int i, num_elements, sizeof_type;
- unsigned int size;
- int (*cl_acopy) (unsigned char, VOID_STAR, VOID_STAR);
- unsigned char type;
-
- if (-1 == coerse_array_to_linear (at))
- return NULL;
-
- type = at->data_type;
- num_elements = at->num_elements;
- sizeof_type = at->sizeof_type;
- size = num_elements * sizeof_type;
-
- if (NULL == (data = SLmalloc (size)))
- return NULL;
-
- if (NULL == (bt = SLang_create_array (type, 0, (VOID_STAR)data, at->dims, at->num_dims)))
- {
- SLfree (data);
- return NULL;
- }
-
- a_data = (char *) at->data;
- if (0 == (at->flags & SLARR_DATA_VALUE_IS_POINTER))
- {
- SLMEMCPY (data, a_data, size);
- return bt;
- }
-
- SLMEMSET (data, 0, size);
-
- cl_acopy = at->cl->cl_acopy;
- for (i = 0; i < num_elements; i++)
- {
- if (NULL != *(VOID_STAR *) a_data)
- {
- if (-1 == (*cl_acopy) (type, (VOID_STAR) a_data, (VOID_STAR) data))
- {
- SLang_free_array (bt);
- return NULL;
- }
- }
-
- data += sizeof_type;
- a_data += sizeof_type;
- }
-
- return bt;
-}
-
-static int array_dereference (unsigned char type, VOID_STAR addr)
-{
- SLang_Array_Type *at;
-
- (void) type;
- at = SLang_duplicate_array (*(SLang_Array_Type **) addr);
- if (at == NULL) return -1;
- return SLang_push_array (at, 1);
-}
-
-/* This function gets called via, e.g., @Array_Type (Double_Type, [10,20]);
- */
-static int
-array_datatype_deref (unsigned char type)
-{
- SLang_Array_Type *ind_at;
- SLang_Array_Type *at;
-
-#if 0
- /* The parser generated code for this as if a function call were to be
- * made. However, the interpreter simply called the deref object routine
- * instead of the function call. So, I must simulate the function call.
- * This needs to be formalized to hide this detail from applications
- * who wish to do the same. So...
- * FIXME: Priority=medium
- */
- if (0 == _SL_increment_frame_pointer ())
- (void) _SL_decrement_frame_pointer ();
-#endif
-
- if (-1 == SLang_pop_array (&ind_at, 1))
- return -1;
-
- if ((ind_at->data_type != SLANG_INT_TYPE)
- || (ind_at->num_dims != 1))
- {
- SLang_verror (SL_TYPE_MISMATCH, "Expecting 1-d integer array");
- goto return_error;
- }
-
- if (-1 == _SLang_pop_datatype (&type))
- goto return_error;
-
- if (NULL == (at = SLang_create_array (type, 0, NULL,
- (int *) ind_at->data,
- ind_at->num_elements)))
- goto return_error;
-
- SLang_free_array (ind_at);
- return SLang_push_array (at, 1);
-
- return_error:
- SLang_free_array (ind_at);
- return -1;
-}
-
-static int array_length (unsigned char type, VOID_STAR v, unsigned int *len)
-{
- SLang_Array_Type *at;
-
- (void) type;
- at = *(SLang_Array_Type **) v;
- *len = at->num_elements;
- return 0;
-}
-
-int
-_SLarray_init_slarray (void)
-{
- SLang_Class_Type *cl;
-
- if (-1 == SLadd_intrin_fun_table (Array_Table, NULL))
- return -1;
-
- if (NULL == (cl = SLclass_allocate_class ("Array_Type")))
- return -1;
-
- (void) SLclass_set_string_function (cl, array_string);
- (void) SLclass_set_destroy_function (cl, array_destroy);
- (void) SLclass_set_push_function (cl, array_push);
- cl->cl_push_intrinsic = array_push_intrinsic;
- cl->cl_dereference = array_dereference;
- cl->cl_datatype_deref = array_datatype_deref;
- cl->cl_length = array_length;
-
- if (-1 == SLclass_register_class (cl, SLANG_ARRAY_TYPE, sizeof (VOID_STAR),
- SLANG_CLASS_TYPE_PTR))
- return -1;
-
- if ((-1 == SLclass_add_binary_op (SLANG_ARRAY_TYPE, SLANG_ARRAY_TYPE, array_binary_op, array_binary_op_result))
- || (-1 == SLclass_add_unary_op (SLANG_ARRAY_TYPE, array_unary_op, array_unary_op_result))
- || (-1 == SLclass_add_app_unary_op (SLANG_ARRAY_TYPE, array_app_op, array_unary_op_result))
- || (-1 == SLclass_add_math_op (SLANG_ARRAY_TYPE, array_math_op, array_unary_op_result))
- || (-1 == SLclass_add_math_op (SLANG_ARRAY_TYPE, array_math_op, array_unary_op_result)))
- return -1;
-
- return 0;
-}
-
-int SLang_pop_array (SLang_Array_Type **at_ptr, int convert_scalar)
-{
- if (-1 == pop_array (at_ptr, convert_scalar))
- return -1;
-
- if (-1 == coerse_array_to_linear (*at_ptr))
- {
- SLang_free_array (*at_ptr);
- return -1;
- }
- return 0;
-}
-
-int SLang_pop_array_of_type (SLang_Array_Type **at, unsigned char type)
-{
- if (-1 == SLclass_typecast (type, 1, 1))
- return -1;
-
- return SLang_pop_array (at, 1);
-}
-
-void (*_SLang_Matrix_Multiply)(void);
-
-int _SLarray_matrix_multiply (void)
-{
- if (_SLang_Matrix_Multiply != NULL)
- {
- (*_SLang_Matrix_Multiply)();
- return 0;
- }
- SLang_verror (SL_NOT_IMPLEMENTED, "Matrix multiplication not available");
- return -1;
-}
-
-struct _SLang_Foreach_Context_Type
-{
- SLang_Array_Type *at;
- unsigned int next_element_index;
-};
-
-SLang_Foreach_Context_Type *
-_SLarray_cl_foreach_open (unsigned char type, unsigned int num)
-{
- SLang_Foreach_Context_Type *c;
-
- if (num != 0)
- {
- SLdo_pop_n (num + 1);
- SLang_verror (SL_NOT_IMPLEMENTED,
- "%s does not support 'foreach using' form",
- SLclass_get_datatype_name (type));
- return NULL;
- }
-
- if (NULL == (c = (SLang_Foreach_Context_Type *) SLmalloc (sizeof (SLang_Foreach_Context_Type))))
- return NULL;
-
- memset ((char *) c, 0, sizeof (SLang_Foreach_Context_Type));
-
- if (-1 == pop_array (&c->at, 1))
- {
- SLfree ((char *) c);
- return NULL;
- }
-
- return c;
-}
-
-void _SLarray_cl_foreach_close (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- (void) type;
- if (c == NULL) return;
- SLang_free_array (c->at);
- SLfree ((char *) c);
-}
-
-int _SLarray_cl_foreach (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- SLang_Array_Type *at;
- VOID_STAR data;
-
- (void) type;
-
- if (c == NULL)
- return -1;
-
- at = c->at;
- if (at->num_elements == c->next_element_index)
- return 0;
-
- /* FIXME: Priority = low. The following assumes linear arrays
- * or Integer range arrays. Fixing it right requires a method to get the
- * nth element of a multidimensional array.
- */
-
- if (at->flags & SLARR_DATA_VALUE_IS_RANGE)
- {
- int d = (int) c->next_element_index;
- data = range_get_data_addr (at, &d);
- }
- else
- data = (VOID_STAR) ((char *)at->data + (c->next_element_index * at->sizeof_type));
-
- c->next_element_index += 1;
-
- if ((at->flags & SLARR_DATA_VALUE_IS_POINTER)
- && (*(VOID_STAR *) data == NULL))
- {
- if (-1 == SLang_push_null ())
- return -1;
- }
- else if (-1 == (*at->cl->cl_apush)(at->data_type, data))
- return -1;
-
- /* keep going */
- return 1;
-}
-
diff --git a/mdk-stage1/slang/slarrfun.c b/mdk-stage1/slang/slarrfun.c
deleted file mode 100644
index bfa6ec5e5..000000000
--- a/mdk-stage1/slang/slarrfun.c
+++ /dev/null
@@ -1,464 +0,0 @@
-/* Advanced array manipulation routines for S-Lang */
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-static int next_transposed_index (int *dims, int *max_dims, unsigned int num_dims)
-{
- int i;
-
- for (i = 0; i < (int) num_dims; i++)
- {
- int dims_i;
-
- dims_i = dims [i] + 1;
- if (dims_i != (int) max_dims [i])
- {
- dims [i] = dims_i;
- return 0;
- }
- dims [i] = 0;
- }
-
- return -1;
-}
-
-static SLang_Array_Type *allocate_transposed_array (SLang_Array_Type *at)
-{
- unsigned int num_elements;
- SLang_Array_Type *bt;
- VOID_STAR b_data;
-
- num_elements = at->num_elements;
- b_data = (VOID_STAR) SLmalloc (at->sizeof_type * num_elements);
- if (b_data == NULL)
- return NULL;
-
- bt = SLang_create_array (at->data_type, 0, b_data, at->dims, 2);
- if (bt == NULL)
- {
- SLfree ((char *)b_data);
- return NULL;
- }
-
- bt->dims[1] = at->dims[0];
- bt->dims[0] = at->dims[1];
-
- return bt;
-}
-
-#define GENERIC_TYPE float
-#define TRANSPOSE_2D_ARRAY transpose_floats
-#define GENERIC_TYPE_A float
-#define GENERIC_TYPE_B float
-#define GENERIC_TYPE_C float
-#define INNERPROD_FUNCTION innerprod_float_float
-#if SLANG_HAS_COMPLEX
-# define INNERPROD_COMPLEX_A innerprod_complex_float
-# define INNERPROD_A_COMPLEX innerprod_float_complex
-#endif
-#include "slarrfun.inc"
-
-#define GENERIC_TYPE double
-#define TRANSPOSE_2D_ARRAY transpose_doubles
-#define GENERIC_TYPE_A double
-#define GENERIC_TYPE_B double
-#define GENERIC_TYPE_C double
-#define INNERPROD_FUNCTION innerprod_double_double
-#if SLANG_HAS_COMPLEX
-# define INNERPROD_COMPLEX_A innerprod_complex_double
-# define INNERPROD_A_COMPLEX innerprod_double_complex
-#endif
-#include "slarrfun.inc"
-
-#define GENERIC_TYPE_A double
-#define GENERIC_TYPE_B float
-#define GENERIC_TYPE_C double
-#define INNERPROD_FUNCTION innerprod_double_float
-#include "slarrfun.inc"
-
-#define GENERIC_TYPE_A float
-#define GENERIC_TYPE_B double
-#define GENERIC_TYPE_C double
-#define INNERPROD_FUNCTION innerprod_float_double
-#include "slarrfun.inc"
-
-/* Finally pick up the complex_complex multiplication
- * and do the integers
- */
-#if SLANG_HAS_COMPLEX
-# define INNERPROD_COMPLEX_COMPLEX innerprod_complex_complex
-#endif
-#define GENERIC_TYPE int
-#define TRANSPOSE_2D_ARRAY transpose_ints
-#include "slarrfun.inc"
-
-#if SIZEOF_LONG != SIZEOF_INT
-# define GENERIC_TYPE long
-# define TRANSPOSE_2D_ARRAY transpose_longs
-# include "slarrfun.inc"
-#else
-# define transpose_longs transpose_ints
-#endif
-
-#if SIZEOF_SHORT != SIZEOF_INT
-# define GENERIC_TYPE short
-# define TRANSPOSE_2D_ARRAY transpose_shorts
-# include "slarrfun.inc"
-#else
-# define transpose_shorts transpose_ints
-#endif
-
-#define GENERIC_TYPE char
-#define TRANSPOSE_2D_ARRAY transpose_chars
-#include "slarrfun.inc"
-
-/* This routine works only with linear arrays */
-static SLang_Array_Type *transpose (SLang_Array_Type *at)
-{
- int dims [SLARRAY_MAX_DIMS];
- int *max_dims;
- unsigned int num_dims;
- SLang_Array_Type *bt;
- int i;
- unsigned int sizeof_type;
- int is_ptr;
- char *b_data;
-
- max_dims = at->dims;
- num_dims = at->num_dims;
-
- if ((at->num_elements == 0)
- || (num_dims == 1))
- {
- bt = SLang_duplicate_array (at);
- if (num_dims == 1) bt->num_dims = 2;
- goto transpose_dims;
- }
-
- /* For numeric arrays skip the overhead below */
- if (num_dims == 2)
- {
- bt = allocate_transposed_array (at);
- if (bt == NULL) return NULL;
-
- switch (at->data_type)
- {
- case SLANG_INT_TYPE:
- case SLANG_UINT_TYPE:
- return transpose_ints (at, bt);
- case SLANG_DOUBLE_TYPE:
- return transpose_doubles (at, bt);
- case SLANG_FLOAT_TYPE:
- return transpose_floats (at, bt);
- case SLANG_CHAR_TYPE:
- case SLANG_UCHAR_TYPE:
- return transpose_chars (at, bt);
- case SLANG_LONG_TYPE:
- case SLANG_ULONG_TYPE:
- return transpose_longs (at, bt);
- case SLANG_SHORT_TYPE:
- case SLANG_USHORT_TYPE:
- return transpose_shorts (at, bt);
- }
- }
- else
- {
- bt = SLang_create_array (at->data_type, 0, NULL, max_dims, num_dims);
- if (bt == NULL) return NULL;
- }
-
- sizeof_type = at->sizeof_type;
- is_ptr = (at->flags & SLARR_DATA_VALUE_IS_POINTER);
-
- memset ((char *)dims, 0, sizeof(dims));
-
- b_data = (char *) bt->data;
-
- do
- {
- if (-1 == _SLarray_aget_transfer_elem (at, dims, (VOID_STAR) b_data,
- sizeof_type, is_ptr))
- {
- SLang_free_array (bt);
- return NULL;
- }
- b_data += sizeof_type;
- }
- while (0 == next_transposed_index (dims, max_dims, num_dims));
-
- transpose_dims:
-
- num_dims = bt->num_dims;
- for (i = 0; i < (int) num_dims; i++)
- bt->dims[i] = max_dims [num_dims - i - 1];
-
- return bt;
-}
-
-static void array_transpose (SLang_Array_Type *at)
-{
- if (NULL != (at = transpose (at)))
- (void) SLang_push_array (at, 1);
-}
-
-static int get_inner_product_parms (SLang_Array_Type *a, int *dp,
- unsigned int *loops, unsigned int *other)
-{
- int num_dims;
- int d;
-
- d = *dp;
-
- num_dims = (int)a->num_dims;
- if (num_dims == 0)
- {
- SLang_verror (SL_INVALID_PARM, "Inner-product operation requires an array of at least 1 dimension.");
- return -1;
- }
-
- /* An index of -1 refers to last dimension */
- if (d == -1)
- d += num_dims;
- *dp = d;
-
- if (a->num_elements == 0)
- { /* [] # [] ==> [] */
- *loops = *other = 0;
- return 0;
- }
-
- *loops = a->num_elements / a->dims[d];
-
- if (d == 0)
- {
- *other = *loops; /* a->num_elements / a->dims[0]; */
- return 0;
- }
-
- *other = a->dims[d];
- return 0;
-}
-
-/* This routines takes two arrays A_i..j and B_j..k and produces a third
- * via C_i..k = A_i..j B_j..k.
- *
- * If A is a vector, and B is a 2-d matrix, then regard A as a 2-d matrix
- * with 1-column.
- */
-static void do_inner_product (void)
-{
- SLang_Array_Type *a, *b, *c;
- void (*fun)(SLang_Array_Type *, SLang_Array_Type *, SLang_Array_Type *,
- unsigned int, unsigned int, unsigned int, unsigned int,
- unsigned int);
- unsigned char c_type;
- int dims[SLARRAY_MAX_DIMS];
- int status;
- unsigned int a_loops, b_loops, b_inc, a_stride;
- int ai_dims, i, j;
- unsigned int num_dims, a_num_dims, b_num_dims;
- int ai, bi;
-
- /* The result of a inner_product will be either a float, double, or
- * a complex number.
- *
- * If an integer array is used, it will be promoted to a float.
- */
-
- switch (SLang_peek_at_stack1 ())
- {
- case SLANG_DOUBLE_TYPE:
- if (-1 == SLang_pop_array_of_type (&b, SLANG_DOUBLE_TYPE))
- return;
- break;
-
-#if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- if (-1 == SLang_pop_array_of_type (&b, SLANG_COMPLEX_TYPE))
- return;
- break;
-#endif
- case SLANG_FLOAT_TYPE:
- default:
- if (-1 == SLang_pop_array_of_type (&b, SLANG_FLOAT_TYPE))
- return;
- break;
- }
-
- switch (SLang_peek_at_stack1 ())
- {
- case SLANG_DOUBLE_TYPE:
- status = SLang_pop_array_of_type (&a, SLANG_DOUBLE_TYPE);
- break;
-
-#if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- status = SLang_pop_array_of_type (&a, SLANG_COMPLEX_TYPE);
- break;
-#endif
- case SLANG_FLOAT_TYPE:
- default:
- status = SLang_pop_array_of_type (&a, SLANG_FLOAT_TYPE);
- break;
- }
-
- if (status == -1)
- {
- SLang_free_array (b);
- return;
- }
-
- ai = -1; /* last index of a */
- bi = 0; /* first index of b */
- if ((-1 == get_inner_product_parms (a, &ai, &a_loops, &a_stride))
- || (-1 == get_inner_product_parms (b, &bi, &b_loops, &b_inc)))
- {
- SLang_verror (SL_TYPE_MISMATCH, "Array dimensions are not compatible for inner-product");
- goto free_and_return;
- }
-
- a_num_dims = a->num_dims;
- b_num_dims = b->num_dims;
-
- /* Coerse a 1-d vector to 2-d */
- if ((a_num_dims == 1)
- && (b_num_dims == 2)
- && (a->num_elements))
- {
- a_num_dims = 2;
- ai = 1;
- a_loops = a->num_elements;
- a_stride = 1;
- }
-
- if ((ai_dims = a->dims[ai]) != b->dims[bi])
- {
- SLang_verror (SL_TYPE_MISMATCH, "Array dimensions are not compatible for inner-product");
- goto free_and_return;
- }
-
- num_dims = a_num_dims + b_num_dims - 2;
- if (num_dims > SLARRAY_MAX_DIMS)
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "Inner-product result exceed max allowed dimensions");
- goto free_and_return;
- }
-
- if (num_dims)
- {
- j = 0;
- for (i = 0; i < (int)a_num_dims; i++)
- if (i != ai) dims [j++] = a->dims[i];
- for (i = 0; i < (int)b_num_dims; i++)
- if (i != bi) dims [j++] = b->dims[i];
- }
- else
- {
- /* a scalar */
- num_dims = 1;
- dims[0] = 1;
- }
-
- c_type = 0; fun = NULL;
- switch (a->data_type)
- {
- case SLANG_FLOAT_TYPE:
- switch (b->data_type)
- {
- case SLANG_FLOAT_TYPE:
- c_type = SLANG_FLOAT_TYPE;
- fun = innerprod_float_float;
- break;
- case SLANG_DOUBLE_TYPE:
- c_type = SLANG_DOUBLE_TYPE;
- fun = innerprod_float_double;
- break;
-#if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- c_type = SLANG_COMPLEX_TYPE;
- fun = innerprod_float_complex;
- break;
-#endif
- }
- break;
- case SLANG_DOUBLE_TYPE:
- switch (b->data_type)
- {
- case SLANG_FLOAT_TYPE:
- c_type = SLANG_DOUBLE_TYPE;
- fun = innerprod_double_float;
- break;
- case SLANG_DOUBLE_TYPE:
- c_type = SLANG_DOUBLE_TYPE;
- fun = innerprod_double_double;
- break;
-#if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- c_type = SLANG_COMPLEX_TYPE;
- fun = innerprod_double_complex;
- break;
-#endif
- }
- break;
-#if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- c_type = SLANG_COMPLEX_TYPE;
- switch (b->data_type)
- {
- case SLANG_FLOAT_TYPE:
- fun = innerprod_complex_float;
- break;
- case SLANG_DOUBLE_TYPE:
- fun = innerprod_complex_double;
- break;
- case SLANG_COMPLEX_TYPE:
- fun = innerprod_complex_complex;
- break;
- }
- break;
-#endif
- default:
- break;
- }
-
- if (NULL == (c = SLang_create_array (c_type, 0, NULL, dims, num_dims)))
- goto free_and_return;
-
- (*fun)(a, b, c, a_loops, a_stride, b_loops, b_inc, ai_dims);
-
- (void) SLang_push_array (c, 1);
- /* drop */
-
- free_and_return:
- SLang_free_array (a);
- SLang_free_array (b);
-}
-
-
-
-static SLang_Intrin_Fun_Type Array_Fun_Table [] =
-{
- MAKE_INTRINSIC_1("transpose", array_transpose, SLANG_VOID_TYPE, SLANG_ARRAY_TYPE),
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-int SLang_init_array (void)
-{
- if (-1 == SLadd_intrin_fun_table (Array_Fun_Table, "__SLARRAY__"))
- return -1;
-#if SLANG_HAS_FLOAT
- _SLang_Matrix_Multiply = do_inner_product;
-#endif
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slarrfun.inc b/mdk-stage1/slang/slarrfun.inc
deleted file mode 100644
index 348473a6f..000000000
--- a/mdk-stage1/slang/slarrfun.inc
+++ /dev/null
@@ -1,257 +0,0 @@
-/* -*- mode: C -*- */
-
-/* Some "inline" functions for generic scalar types */
-
-#ifdef TRANSPOSE_2D_ARRAY
-static SLang_Array_Type *TRANSPOSE_2D_ARRAY (SLang_Array_Type *at, SLang_Array_Type *bt)
-{
- GENERIC_TYPE *a_data, *b_data;
- int nr, nc, i;
-
- nr = at->dims[0];
- nc = at->dims[1];
-
- a_data = (GENERIC_TYPE *) at->data;
- b_data = (GENERIC_TYPE *) bt->data;
-
- for (i = 0; i < nr; i++)
- {
- GENERIC_TYPE *offset = b_data + i;
- int j;
- for (j = 0; j < nc; j++)
- {
- *offset = *a_data++;
- offset += nr;
- }
- }
- return bt;
-}
-#undef TRANSPOSE_2D_ARRAY
-#endif
-
-
-#ifdef INNERPROD_FUNCTION
-
-static void INNERPROD_FUNCTION
- (SLang_Array_Type *at, SLang_Array_Type *bt, SLang_Array_Type *ct,
- unsigned int a_loops, unsigned int a_stride,
- unsigned int b_loops, unsigned int b_inc,
- unsigned int inner_loops)
-{
- GENERIC_TYPE_A *a;
- GENERIC_TYPE_B *b;
- GENERIC_TYPE_C *c;
-
- c = (GENERIC_TYPE_C *) ct->data;
- b = (GENERIC_TYPE_B *) bt->data;
- a = (GENERIC_TYPE_A *) at->data;
-
- while (a_loops--)
- {
- GENERIC_TYPE_B *bb;
- unsigned int j;
-
- bb = b;
-
- for (j = 0; j < inner_loops; j++)
- {
- double x = (double) a[j];
-
- if (x != 0.0)
- {
- unsigned int k;
-
- for (k = 0; k < b_loops; k++)
- c[k] += x * bb[k];
- }
- bb += b_inc;
- }
- c += b_loops;
- a += a_stride;
- }
-}
-#undef INNERPROD_FUNCTION
-
-#undef GENERIC_TYPE_A
-#undef GENERIC_TYPE_B
-#undef GENERIC_TYPE_C
-#endif
-
-#ifdef INNERPROD_COMPLEX_A
-static void INNERPROD_COMPLEX_A
- (SLang_Array_Type *at, SLang_Array_Type *bt, SLang_Array_Type *ct,
- unsigned int a_loops, unsigned int a_stride,
- unsigned int b_loops, unsigned int b_inc,
- unsigned int inner_loops)
-{
- double *a;
- GENERIC_TYPE *b;
- double *c;
-
- c = (double *) ct->data;
- b = (GENERIC_TYPE *) bt->data;
- a = (double *) at->data;
-
- a_stride *= 2;
-
- while (a_loops--)
- {
- GENERIC_TYPE *bb;
- unsigned int bb_loops;
-
- bb = b;
- bb_loops = b_loops;
-
- while (bb_loops--)
- {
- double real_sum;
- double imag_sum;
- unsigned int iloops;
- double *aa;
- GENERIC_TYPE *bbb;
-
- aa = a;
- bbb = bb;
- iloops = inner_loops;
-
- real_sum = 0.0;
- imag_sum = 0.0;
- while (iloops--)
- {
- real_sum += aa[0] * (double)bbb[0];
- imag_sum += aa[1] * (double)bbb[0];
- aa += 2;
- bbb += b_inc;
- }
-
- *c++ = real_sum;
- *c++ = imag_sum;
- bb++;
- }
-
- a += a_stride;
- }
-}
-
-static void INNERPROD_A_COMPLEX
- (SLang_Array_Type *at, SLang_Array_Type *bt, SLang_Array_Type *ct,
- unsigned int a_loops, unsigned int a_stride,
- unsigned int b_loops, unsigned int b_inc,
- unsigned int inner_loops)
-{
- GENERIC_TYPE *a;
- double *b;
- double *c;
-
- c = (double *) ct->data;
- b = (double *) bt->data;
- a = (GENERIC_TYPE *) at->data;
-
- b_inc *= 2;
-
- while (a_loops--)
- {
- double *bb;
- unsigned int bb_loops;
-
- bb = b;
- bb_loops = b_loops;
-
- while (bb_loops--)
- {
- double real_sum;
- double imag_sum;
- unsigned int iloops;
- GENERIC_TYPE *aa;
- double *bbb;
-
- aa = a;
- bbb = bb;
- iloops = inner_loops;
-
- real_sum = 0.0;
- imag_sum = 0.0;
- while (iloops--)
- {
- real_sum += (double)aa[0] * bbb[0];
- imag_sum += (double)aa[0] * bbb[1];
- aa += 1;
- bbb += b_inc;
- }
-
- *c++ = real_sum;
- *c++ = imag_sum;
- bb += 2;
- }
-
- a += a_stride;
- }
-}
-
-#undef INNERPROD_A_COMPLEX
-#undef INNERPROD_COMPLEX_A
-#endif /* INNERPROD_COMPLEX_A */
-
-
-#ifdef INNERPROD_COMPLEX_COMPLEX
-static void INNERPROD_COMPLEX_COMPLEX
- (SLang_Array_Type *at, SLang_Array_Type *bt, SLang_Array_Type *ct,
- unsigned int a_loops, unsigned int a_stride,
- unsigned int b_loops, unsigned int b_inc,
- unsigned int inner_loops)
-{
- double *a;
- double *b;
- double *c;
-
- c = (double *) ct->data;
- b = (double *) bt->data;
- a = (double *) at->data;
-
- a_stride *= 2;
- b_inc *= 2;
-
- while (a_loops--)
- {
- double *bb;
- unsigned int bb_loops;
-
- bb = b;
- bb_loops = b_loops;
-
- while (bb_loops--)
- {
- double real_sum;
- double imag_sum;
- unsigned int iloops;
- double *aa;
- double *bbb;
-
- aa = a;
- bbb = bb;
- iloops = inner_loops;
-
- real_sum = 0.0;
- imag_sum = 0.0;
- while (iloops--)
- {
- real_sum += aa[0]*bbb[0] - aa[1]*bbb[1];
- imag_sum += aa[0]*bbb[1] + aa[1]*bbb[0];
- aa += 2;
- bbb += b_inc;
- }
-
- *c++ = real_sum;
- *c++ = imag_sum;
- bb += 2;
- }
-
- a += a_stride;
- }
-}
-#undef INNERPROD_COMPLEX_COMPLEX
-#endif
-
-#ifdef GENERIC_TYPE
-# undef GENERIC_TYPE
-#endif
diff --git a/mdk-stage1/slang/slarrmis.c b/mdk-stage1/slang/slarrmis.c
deleted file mode 100644
index 330dcb53f..000000000
--- a/mdk-stage1/slang/slarrmis.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Misc Array Functions */
-/* Copyright (c) 1997, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-int SLang_get_array_element (SLang_Array_Type *at, int *indices, VOID_STAR data)
-{
- int is_ptr;
-
- if ((at == NULL)
- || (indices == NULL)
- || (data == NULL))
- return -1;
-
- is_ptr = (at->flags & SLARR_DATA_VALUE_IS_POINTER);
- if (is_ptr) *(VOID_STAR *) data = NULL;
- return _SLarray_aget_transfer_elem (at, indices, data, at->sizeof_type, is_ptr);
-}
-
-int SLang_set_array_element (SLang_Array_Type *at, int *indices, VOID_STAR data)
-{
- if ((at == NULL)
- || (indices == NULL)
- || (data == NULL))
- return -1;
-
- return _SLarray_aput_transfer_elem (at, indices, data, at->sizeof_type,
- at->flags & SLARR_DATA_VALUE_IS_POINTER);
-}
-
diff --git a/mdk-stage1/slang/slassoc.c b/mdk-stage1/slang/slassoc.c
deleted file mode 100644
index 5997458d2..000000000
--- a/mdk-stage1/slang/slassoc.c
+++ /dev/null
@@ -1,713 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#define SL_APP_WANTS_FOREACH
-#include "slang.h"
-#include "_slang.h"
-
-#define USE_NEW_ANYTYPE_CODE 1
-
-typedef struct _SLAssoc_Array_Element_Type
-{
- char *key; /* slstring */
- struct _SLAssoc_Array_Element_Type *next;
- SLang_Object_Type value;
-}
-_SLAssoc_Array_Element_Type;
-
-typedef struct
-{
- _SLAssoc_Array_Element_Type *elements[SLASSOC_HASH_TABLE_SIZE];
- SLang_Object_Type default_value;
- unsigned int num_elements;
-#define HAS_DEFAULT_VALUE 1
- unsigned int flags;
- unsigned char type;
-}
-SLang_Assoc_Array_Type;
-
-#define USE_CACHED_STRING 1
-
-#if USE_CACHED_STRING
-static char *Cached_String;
-static SLang_Object_Type *Cached_Obj;
-static SLang_Assoc_Array_Type *Cached_Array;
-#endif
-
-static SLang_Assoc_Array_Type *alloc_assoc_array (unsigned char type, int has_default_value)
-{
- SLang_Assoc_Array_Type *a;
-
- a = (SLang_Assoc_Array_Type *)SLmalloc (sizeof (SLang_Assoc_Array_Type));
- if (a == NULL)
- {
- if (has_default_value)
- SLdo_pop_n (1);
- return NULL;
- }
-
- memset ((char *) a, 0, sizeof (SLang_Assoc_Array_Type));
- a->type = type;
-
- if (has_default_value)
- {
- if (
-#if USE_NEW_ANYTYPE_CODE
- ((type != SLANG_ANY_TYPE) && (-1 == SLclass_typecast (type, 1, 1)))
-#else
- (-1 == SLclass_typecast (type, 1, 1))
-#endif
- || (-1 == SLang_pop (&a->default_value)))
- {
- SLfree ((char *) a);
- return NULL;
- }
-
- a->flags |= HAS_DEFAULT_VALUE;
- }
- return a;
-}
-
-static void free_element (_SLAssoc_Array_Element_Type *e)
-{
- if (e == NULL)
- return;
-
- SLang_free_object (&e->value);
- SLang_free_slstring (e->key);
-#if USE_CACHED_STRING
- if (e->key == Cached_String)
- Cached_String = NULL;
-#endif
- SLfree ((char *)e);
-}
-
-static void delete_assoc_array (SLang_Assoc_Array_Type *a)
-{
- unsigned int i;
-
- if (a == NULL) return;
-
- for (i = 0; i < SLASSOC_HASH_TABLE_SIZE; i++)
- {
- _SLAssoc_Array_Element_Type *e;
-
- e = a->elements[i];
- while (e != NULL)
- {
- _SLAssoc_Array_Element_Type *next_e;
-
- next_e = e->next;
- free_element (e);
- e = next_e;
- }
- }
- if (a->flags & HAS_DEFAULT_VALUE)
- SLang_free_object (&a->default_value);
-
- SLfree ((char *) a);
-}
-
-_INLINE_
-static SLang_Object_Type *
-find_element (SLang_Assoc_Array_Type *a, char *str, unsigned long hash)
-{
- unsigned int h;
- _SLAssoc_Array_Element_Type *e;
-
- h = (unsigned int) (hash % SLASSOC_HASH_TABLE_SIZE);
- e = a->elements[h];
-
- while (e != NULL)
- {
- if (str == e->key) /* slstrings can be compared this way */
- {
-#if USE_CACHED_STRING
- Cached_String = str;
- Cached_Obj = &e->value;
- Cached_Array = a;
-#endif
- return &e->value;
- }
-
- e = e->next;
- }
-
- return NULL;
-}
-
-static _SLAssoc_Array_Element_Type *
-create_element (SLang_Assoc_Array_Type *a, char *str, unsigned long hash)
-{
- unsigned int h;
- _SLAssoc_Array_Element_Type *e;
-
- e = (_SLAssoc_Array_Element_Type *) SLmalloc (sizeof (_SLAssoc_Array_Element_Type));
- if (e == NULL)
- return NULL;
-
- memset ((char *) e, 0, sizeof (_SLAssoc_Array_Element_Type));
- h = (unsigned int) (hash % SLASSOC_HASH_TABLE_SIZE);
-
- if (NULL == (str = _SLstring_dup_hashed_string (str, hash)))
- {
- SLfree ((char *) e);
- return NULL;
- }
-
- e->key = str;
- e->next = a->elements[h];
- a->elements[h] = e;
-
- a->num_elements += 1;
-#if USE_CACHED_STRING
- Cached_String = str;
- Cached_Obj = &e->value;
- Cached_Array = a;
-#endif
- return e;
-}
-
-static int store_object (SLang_Assoc_Array_Type *a, char *s, SLang_Object_Type *obj)
-{
- unsigned long hash;
- SLang_Object_Type *v;
-
-#if USE_CACHED_STRING
- if ((s == Cached_String) && (a == Cached_Array))
- {
- v = Cached_Obj;
- SLang_free_object (v);
- }
- else
- {
-#endif
- hash = _SLcompute_string_hash (s);
- if (NULL != (v = find_element (a, s, hash)))
- SLang_free_object (v);
- else
- {
- _SLAssoc_Array_Element_Type *e;
-
- e = create_element (a, s, hash);
- if (e == NULL)
- return -1;
-
- v = &e->value;
- }
-#if USE_CACHED_STRING
- }
-#endif
-
- *v = *obj;
-
- return 0;
-}
-
-static void assoc_destroy (unsigned char type, VOID_STAR ptr)
-{
- (void) type;
- delete_assoc_array ((SLang_Assoc_Array_Type *) ptr);
-}
-
-static int pop_index (unsigned int num_indices,
- SLang_MMT_Type **mmt,
- SLang_Assoc_Array_Type **a,
- char **str)
-{
- if (NULL == (*mmt = SLang_pop_mmt (SLANG_ASSOC_TYPE)))
- {
- *a = NULL;
- *str = NULL;
- return -1;
- }
-
- if ((num_indices != 1)
- || (-1 == SLang_pop_slstring (str)))
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "Assoc_Type arrays require a single string index");
- SLang_free_mmt (*mmt);
- *mmt = NULL;
- *a = NULL;
- *str = NULL;
- return -1;
- }
-
- *a = (SLang_Assoc_Array_Type *) SLang_object_from_mmt (*mmt);
- return 0;
-}
-
-static int assoc_aget (unsigned char type, unsigned int num_indices)
-{
- SLang_MMT_Type *mmt;
- char *str;
- SLang_Assoc_Array_Type *a;
- SLang_Object_Type *obj;
- int ret;
-
- (void) type;
-
- if (-1 == pop_index (num_indices, &mmt, &a, &str))
- return -1;
-
-#if USE_CACHED_STRING
- if ((str == Cached_String) && (a == Cached_Array))
- obj = Cached_Obj;
- else
-#endif
- obj = find_element (a, str, _SLcompute_string_hash (str));
-
- if ((obj == NULL)
- && (a->flags & HAS_DEFAULT_VALUE))
- obj = &a->default_value;
-
- if (obj == NULL)
- {
- SLang_verror (SL_INTRINSIC_ERROR,
- "No such element in Assoc Array: %s", str);
- ret = -1;
- }
- else
- {
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (SLANG_CLASS_TYPE_SCALAR == _SLclass_Class_Type[obj->data_type])
- ret = SLang_push (obj);
-#endif
- else
- ret = _SLpush_slang_obj (obj);
- }
-
- SLang_free_slstring (str);
- SLang_free_mmt (mmt);
- return ret;
-}
-
-static int assoc_aput (unsigned char type, unsigned int num_indices)
-{
- SLang_MMT_Type *mmt;
- char *str;
- SLang_Assoc_Array_Type *a;
- SLang_Object_Type obj;
- int ret;
-
- (void) type;
-
- if (-1 == pop_index (num_indices, &mmt, &a, &str))
- return -1;
-
- ret = -1;
-
- if (0 == SLang_pop (&obj))
- {
- if ((obj.data_type != a->type)
-#if USE_NEW_ANYTYPE_CODE
- && (a->type != SLANG_ANY_TYPE)
-#endif
- )
- {
- (void) SLang_push (&obj);
- if ((-1 == SLclass_typecast (a->type, 1, 1))
- || (-1 == SLang_pop (&obj)))
- goto the_return;
- }
-
- if (-1 == store_object (a, str, &obj))
- SLang_free_object (&obj);
- else
- ret = 0;
- }
-
- the_return:
- SLang_free_slstring (str);
- SLang_free_mmt (mmt);
- return ret;
-}
-
-static int assoc_anew (unsigned char type, unsigned int num_dims)
-{
- SLang_MMT_Type *mmt;
- SLang_Assoc_Array_Type *a;
- int has_default_value;
-
- has_default_value = 0;
- switch (num_dims)
- {
- case 0:
- type = SLANG_ANY_TYPE;
- break;
- case 2:
- (void) SLreverse_stack (2);
- has_default_value = 1;
- /* drop */
- case 1:
- if (0 == _SLang_pop_datatype (&type))
- break;
- num_dims--;
- /* drop */
- default:
- SLdo_pop_n (num_dims);
- SLang_verror (SL_SYNTAX_ERROR, "Usage: Assoc_Type [DataType_Type]");
- return -1;
- }
-
- a = alloc_assoc_array (type, has_default_value);
- if (a == NULL)
- return -1;
-
- if (NULL == (mmt = SLang_create_mmt (SLANG_ASSOC_TYPE, (VOID_STAR) a)))
- {
- delete_assoc_array (a);
- return -1;
- }
-
- if (-1 == SLang_push_mmt (mmt))
- {
- SLang_free_mmt (mmt);
- return -1;
- }
-
- return 0;
-}
-
-static void assoc_get_keys (SLang_Assoc_Array_Type *a)
-{
- SLang_Array_Type *at;
- int num;
- unsigned int i, j;
- char **data;
-
- /* Note: If support for threads is added, then we need to modify this
- * algorithm to prevent another thread from modifying the array.
- * However, that should be handled in inner_interp.
- */
- num = a->num_elements;
-
- if (NULL == (at = SLang_create_array (SLANG_STRING_TYPE, 0, NULL, &num, 1)))
- return;
-
- data = (char **)at->data;
-
- i = 0;
- for (j = 0; j < SLASSOC_HASH_TABLE_SIZE; j++)
- {
- _SLAssoc_Array_Element_Type *e;
-
- e = a->elements[j];
- while (e != NULL)
- {
- /* Next cannot fail because it is an slstring */
- data [i] = SLang_create_slstring (e->key);
- e = e->next;
- i++;
- }
- }
- (void) SLang_push_array (at, 1);
-}
-
-static int
-transfer_element (SLang_Class_Type *cl, VOID_STAR dest_data,
- SLang_Object_Type *obj)
-{
- unsigned int sizeof_type;
- VOID_STAR src_data;
-
-#if USE_NEW_ANYTYPE_CODE
- if (cl->cl_data_type == SLANG_ANY_TYPE)
- {
- SLang_Any_Type *any;
-
- if ((-1 == _SLpush_slang_obj (obj))
- || (-1 == SLang_pop_anytype (&any)))
- return -1;
-
- *(SLang_Any_Type **)dest_data = any;
- return 0;
- }
-#endif
- /* Optimize for scalar */
- if (cl->cl_class_type == SLANG_CLASS_TYPE_SCALAR)
- {
- sizeof_type = cl->cl_sizeof_type;
- memcpy ((char *) dest_data, (char *)&obj->v, sizeof_type);
- return 0;
- }
-
- src_data = _SLclass_get_ptr_to_value (cl, obj);
-
- if (-1 == (*cl->cl_acopy) (cl->cl_data_type, src_data, dest_data))
- return -1;
-
- return 0;
-}
-
-static void assoc_get_values (SLang_Assoc_Array_Type *a)
-{
- SLang_Array_Type *at;
- int num;
- unsigned int i, j;
- char *dest_data;
- unsigned char type;
- SLang_Class_Type *cl;
- unsigned int sizeof_type;
-
- /* Note: If support for threads is added, then we need to modify this
- * algorithm to prevent another thread from modifying the array.
- * However, that should be handled in inner_interp.
- */
- num = a->num_elements;
- type = a->type;
-
- cl = _SLclass_get_class (type);
- sizeof_type = cl->cl_sizeof_type;
-
- if (NULL == (at = SLang_create_array (type, 0, NULL, &num, 1)))
- return;
-
- dest_data = (char *)at->data;
-
- i = 0;
- for (j = 0; j < SLASSOC_HASH_TABLE_SIZE; j++)
- {
- _SLAssoc_Array_Element_Type *e;
-
- e = a->elements[j];
- while (e != NULL)
- {
- if (-1 == transfer_element (cl, (VOID_STAR) dest_data, &e->value))
- {
- SLang_free_array (at);
- return;
- }
-
- dest_data += sizeof_type;
- e = e->next;
- i++;
- }
- }
- (void) SLang_push_array (at, 1);
-}
-
-static int assoc_key_exists (SLang_Assoc_Array_Type *a, char *key)
-{
- return (NULL != find_element (a, key, _SLcompute_string_hash (key)));
-}
-
-static void assoc_delete_key (SLang_Assoc_Array_Type *a, char *key)
-{
- unsigned int h;
- _SLAssoc_Array_Element_Type *v, *v0;
-
- h = (unsigned int) (_SLcompute_string_hash (key) % SLASSOC_HASH_TABLE_SIZE);
-
- v0 = NULL;
- v = a->elements[h];
- while (v != NULL)
- {
- if (v->key == key)
- {
- if (v0 != NULL)
- v0->next = v->next;
- else
- a->elements[h] = v->next;
-
- free_element (v);
- a->num_elements -= 1;
- return;
- }
- v0 = v;
- v = v->next;
- }
-
- /* No such element. Let it pass with no error. */
-}
-
-#define A SLANG_ASSOC_TYPE
-#define S SLANG_STRING_TYPE
-static SLang_Intrin_Fun_Type Assoc_Table [] =
-{
- MAKE_INTRINSIC_1("assoc_get_keys", assoc_get_keys, SLANG_VOID_TYPE, A),
- MAKE_INTRINSIC_1("assoc_get_values", assoc_get_values, SLANG_VOID_TYPE, A),
- MAKE_INTRINSIC_2("assoc_key_exists", assoc_key_exists, SLANG_INT_TYPE, A, S),
- MAKE_INTRINSIC_2("assoc_delete_key", assoc_delete_key, SLANG_VOID_TYPE, A, S),
-
- SLANG_END_INTRIN_FUN_TABLE
-};
-#undef A
-#undef S
-
-static int assoc_length (unsigned char type, VOID_STAR v, unsigned int *len)
-{
- SLang_Assoc_Array_Type *a;
-
- (void) type;
- a = (SLang_Assoc_Array_Type *) SLang_object_from_mmt (*(SLang_MMT_Type **)v);
- *len = a->num_elements;
- return 0;
-}
-
-struct _SLang_Foreach_Context_Type
-{
- SLang_MMT_Type *mmt;
- SLang_Assoc_Array_Type *a;
- unsigned int this_hash_index;
- unsigned int next_same_hash_index;
-#define CTX_WRITE_KEYS 1
-#define CTX_WRITE_VALUES 2
- unsigned char flags;
-};
-
-static SLang_Foreach_Context_Type *
-cl_foreach_open (unsigned char type, unsigned int num)
-{
- SLang_Foreach_Context_Type *c;
- unsigned char flags;
- SLang_MMT_Type *mmt;
-
- (void) type;
-
- if (NULL == (mmt = SLang_pop_mmt (SLANG_ASSOC_TYPE)))
- return NULL;
-
- flags = 0;
-
- while (num--)
- {
- char *s;
-
- if (-1 == SLang_pop_slstring (&s))
- {
- SLang_free_mmt (mmt);
- return NULL;
- }
-
- if (0 == strcmp (s, "keys"))
- flags |= CTX_WRITE_KEYS;
- else if (0 == strcmp (s, "values"))
- flags |= CTX_WRITE_VALUES;
- else
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "using '%s' not supported by SLassoc_Type",
- s);
- SLang_free_slstring (s);
- SLang_free_mmt (mmt);
- return NULL;
- }
-
- SLang_free_slstring (s);
- }
-
- if (NULL == (c = (SLang_Foreach_Context_Type *) SLmalloc (sizeof (SLang_Foreach_Context_Type))))
- {
- SLang_free_mmt (mmt);
- return NULL;
- }
-
- memset ((char *) c, 0, sizeof (SLang_Foreach_Context_Type));
-
- if (flags == 0) flags = CTX_WRITE_VALUES|CTX_WRITE_KEYS;
-
- c->flags = flags;
- c->mmt = mmt;
- c->a = (SLang_Assoc_Array_Type *) SLang_object_from_mmt (mmt);
-
- return c;
-}
-
-static void cl_foreach_close (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- (void) type;
- if (c == NULL) return;
- SLang_free_mmt (c->mmt);
- SLfree ((char *) c);
-}
-
-static int cl_foreach (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- SLang_Assoc_Array_Type *a;
- _SLAssoc_Array_Element_Type *e;
- unsigned int i, j;
-
- (void) type;
-
- if (c == NULL)
- return -1;
-
- a = c->a;
-
- i = c->this_hash_index;
- if (i >= SLASSOC_HASH_TABLE_SIZE)
- return 0;
-
- e = a->elements[i];
-
- j = c->next_same_hash_index;
- c->next_same_hash_index = j + 1;
-
- while ((j > 0) && (e != NULL))
- {
- j--;
- e = e->next;
- }
-
- if (e == NULL)
- {
- do
- {
- i++;
- if (i >= SLASSOC_HASH_TABLE_SIZE)
- return 0; /* no more */
- }
- while (a->elements [i] == NULL);
-
- e = a->elements[i];
- c->this_hash_index = i;
- c->next_same_hash_index = 1;
- }
-
- if ((c->flags & CTX_WRITE_KEYS)
- && (-1 == SLang_push_string (e->key)))
- return -1;
-
- if ((c->flags & CTX_WRITE_VALUES)
- && (-1 == _SLpush_slang_obj (&e->value)))
- return -1;
-
- /* keep going */
- return 1;
-}
-
-int SLang_init_slassoc (void)
-{
- SLang_Class_Type *cl;
-
- if (SLclass_is_class_defined (SLANG_ASSOC_TYPE))
- return 0;
-
- if (NULL == (cl = SLclass_allocate_class ("Assoc_Type")))
- return -1;
-
- (void) SLclass_set_destroy_function (cl, assoc_destroy);
- (void) SLclass_set_aput_function (cl, assoc_aput);
- (void) SLclass_set_aget_function (cl, assoc_aget);
- (void) SLclass_set_anew_function (cl, assoc_anew);
- cl->cl_length = assoc_length;
- cl->cl_foreach_open = cl_foreach_open;
- cl->cl_foreach_close = cl_foreach_close;
- cl->cl_foreach = cl_foreach;
-
- if (-1 == SLclass_register_class (cl, SLANG_ASSOC_TYPE, sizeof (SLang_Assoc_Array_Type), SLANG_CLASS_TYPE_MMT))
- return -1;
-
- if (-1 == SLadd_intrin_fun_table (Assoc_Table, "__SLASSOC__"))
- return -1;
-
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slbstr.c b/mdk-stage1/slang/slbstr.c
deleted file mode 100644
index b4b8c4c51..000000000
--- a/mdk-stage1/slang/slbstr.c
+++ /dev/null
@@ -1,615 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-struct _SLang_BString_Type
-{
- unsigned int num_refs;
- unsigned int len;
- int ptr_type;
-#define IS_SLSTRING 1
-#define IS_MALLOCED 2
-#define IS_NOT_TO_BE_FREED 3
- union
- {
- unsigned char bytes[1];
- unsigned char *ptr;
- }
- v;
-};
-
-#define BS_GET_POINTER(b) ((b)->ptr_type ? (b)->v.ptr : (b)->v.bytes)
-
-static SLang_BString_Type *create_bstring_of_type (char *bytes, unsigned int len, int type)
-{
- SLang_BString_Type *b;
- unsigned int size;
-
- size = sizeof(SLang_BString_Type);
- if (type == 0)
- size += len;
-
- if (NULL == (b = (SLang_BString_Type *)SLmalloc (size)))
- return NULL;
-
- b->len = len;
- b->num_refs = 1;
- b->ptr_type = type;
-
- switch (type)
- {
- case 0:
- if (bytes != NULL) memcpy ((char *) b->v.bytes, bytes, len);
- /* Now \0 terminate it because we want to also use it as a C string
- * whenever possible. Note that sizeof(SLang_BString_Type) includes
- * space for 1 character and we allocated len extra bytes. Thus, it is
- * ok to add a \0 to the end.
- */
- b->v.bytes[len] = 0;
- break;
-
- case IS_SLSTRING:
- if (NULL == (b->v.ptr = (unsigned char *)SLang_create_nslstring (bytes, len)))
- {
- SLfree ((char *) b);
- return NULL;
- }
- break;
-
- case IS_MALLOCED:
- case IS_NOT_TO_BE_FREED:
- b->v.ptr = (unsigned char *)bytes;
- bytes [len] = 0; /* NULL terminate */
- break;
- }
-
- return b;
-}
-
-SLang_BString_Type *
-SLbstring_create (unsigned char *bytes, unsigned int len)
-{
- return create_bstring_of_type ((char *)bytes, len, 0);
-}
-
-/* Note that ptr must be len + 1 bytes long for \0 termination */
-SLang_BString_Type *
-SLbstring_create_malloced (unsigned char *ptr, unsigned int len, int free_on_error)
-{
- SLang_BString_Type *b;
-
- if (ptr == NULL)
- return NULL;
-
- if (NULL == (b = create_bstring_of_type ((char *)ptr, len, IS_MALLOCED)))
- {
- if (free_on_error)
- SLfree ((char *) ptr);
- }
- return b;
-}
-
-SLang_BString_Type *SLbstring_create_slstring (char *s)
-{
- if (s == NULL)
- return NULL;
-
- return create_bstring_of_type (s, strlen (s), IS_SLSTRING);
-}
-
-SLang_BString_Type *SLbstring_dup (SLang_BString_Type *b)
-{
- if (b != NULL)
- b->num_refs += 1;
-
- return b;
-}
-
-unsigned char *SLbstring_get_pointer (SLang_BString_Type *b, unsigned int *len)
-{
- if (b == NULL)
- {
- *len = 0;
- return NULL;
- }
- *len = b->len;
- return BS_GET_POINTER(b);
-}
-
-void SLbstring_free (SLang_BString_Type *b)
-{
- if (b == NULL)
- return;
-
- if (b->num_refs > 1)
- {
- b->num_refs -= 1;
- return;
- }
-
- switch (b->ptr_type)
- {
- case 0:
- case IS_NOT_TO_BE_FREED:
- default:
- break;
-
- case IS_SLSTRING:
- SLang_free_slstring ((char *)b->v.ptr);
- break;
-
- case IS_MALLOCED:
- SLfree ((char *)b->v.ptr);
- break;
- }
-
- SLfree ((char *) b);
-}
-
-int SLang_pop_bstring (SLang_BString_Type **b)
-{
- return SLclass_pop_ptr_obj (SLANG_BSTRING_TYPE, (VOID_STAR *)b);
-}
-
-int SLang_push_bstring (SLang_BString_Type *b)
-{
- if (b == NULL)
- return SLang_push_null ();
-
- b->num_refs += 1;
-
- if (0 == SLclass_push_ptr_obj (SLANG_BSTRING_TYPE, (VOID_STAR)b))
- return 0;
-
- b->num_refs -= 1;
- return -1;
-}
-
-static int
-bstring_bstring_bin_op_result (int op, unsigned char a, unsigned char b,
- unsigned char *c)
-{
- (void) a;
- (void) b;
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_PLUS:
- *c = SLANG_BSTRING_TYPE;
- break;
-
- case SLANG_GT:
- case SLANG_GE:
- case SLANG_LT:
- case SLANG_LE:
- case SLANG_EQ:
- case SLANG_NE:
- *c = SLANG_CHAR_TYPE;
- break;
- }
- return 1;
-}
-
-static int compare_bstrings (SLang_BString_Type *a, SLang_BString_Type *b)
-{
- unsigned int len;
- int ret;
-
- len = a->len;
- if (b->len < len) len = b->len;
-
- ret = memcmp ((char *)BS_GET_POINTER(b), (char *)BS_GET_POINTER(a), len);
- if (ret != 0)
- return ret;
-
- if (a->len > b->len)
- return 1;
- if (a->len == b->len)
- return 0;
-
- return -1;
-}
-
-static SLang_BString_Type *
-concat_bstrings (SLang_BString_Type *a, SLang_BString_Type *b)
-{
- unsigned int len;
- SLang_BString_Type *c;
- char *bytes;
-
- len = a->len + b->len;
-
- if (NULL == (c = SLbstring_create (NULL, len)))
- return NULL;
-
- bytes = (char *)BS_GET_POINTER(c);
-
- memcpy (bytes, (char *)BS_GET_POINTER(a), a->len);
- memcpy (bytes + a->len, (char *)BS_GET_POINTER(b), b->len);
-
- return c;
-}
-
-static void free_n_bstrings (SLang_BString_Type **a, unsigned int n)
-{
- unsigned int i;
-
- if (a == NULL) return;
-
- for (i = 0; i < n; i++)
- {
- SLbstring_free (a[i]);
- a[i] = NULL;
- }
-}
-
-static int
-bstring_bstring_bin_op (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- char *ic;
- SLang_BString_Type **a, **b, **c;
- unsigned int n, n_max;
- unsigned int da, db;
-
- (void) a_type;
- (void) b_type;
-
- if (na == 1) da = 0; else da = 1;
- if (nb == 1) db = 0; else db = 1;
-
- if (na > nb) n_max = na; else n_max = nb;
-
- a = (SLang_BString_Type **) ap;
- b = (SLang_BString_Type **) bp;
- for (n = 0; n < n_max; n++)
- {
- if ((*a == NULL) || (*b == NULL))
- {
- SLang_verror (SL_VARIABLE_UNINITIALIZED,
- "Binary string element[%u] not initialized for binary operation", n);
- return -1;
- }
- a += da; b += db;
- }
-
- a = (SLang_BString_Type **) ap;
- b = (SLang_BString_Type **) bp;
- ic = (char *) cp;
- c = NULL;
-
- switch (op)
- {
- case SLANG_PLUS:
- /* Concat */
- c = (SLang_BString_Type **) cp;
- for (n = 0; n < n_max; n++)
- {
- if (NULL == (c[n] = concat_bstrings (*a, *b)))
- goto return_error;
-
- a += da; b += db;
- }
- break;
-
- case SLANG_NE:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (0 != compare_bstrings (*a, *b));
- a += da;
- b += db;
- }
- break;
- case SLANG_GT:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (compare_bstrings (*a, *b) > 0);
- a += da;
- b += db;
- }
- break;
- case SLANG_GE:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (compare_bstrings (*a, *b) >= 0);
- a += da;
- b += db;
- }
- break;
- case SLANG_LT:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (compare_bstrings (*a, *b) < 0);
- a += da;
- b += db;
- }
- break;
- case SLANG_LE:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (compare_bstrings (*a, *b) <= 0);
- a += da;
- b += db;
- }
- break;
- case SLANG_EQ:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (compare_bstrings (*a, *b) == 0);
- a += da;
- b += db;
- }
- break;
- }
- return 1;
-
- return_error:
- if (c != NULL)
- {
- free_n_bstrings (c, n);
- while (n < n_max)
- {
- c[n] = NULL;
- n++;
- }
- }
- return -1;
-}
-
-/* If preserve_ptr, then use a[i] as the bstring data. See how this function
- * is called by the binary op routines for why.
- */
-static SLang_BString_Type **
-make_n_bstrings (SLang_BString_Type **b, char **a, unsigned int n, int ptr_type)
-{
- unsigned int i;
- int malloc_flag;
-
- malloc_flag = 0;
- if (b == NULL)
- {
- b = (SLang_BString_Type **) SLmalloc ((n + 1) * sizeof (SLang_BString_Type *));
- if (b == NULL)
- return NULL;
- malloc_flag = 1;
- }
-
- for (i = 0; i < n; i++)
- {
- char *s = a[i];
-
- if (s == NULL)
- {
- b[i] = NULL;
- continue;
- }
-
- if (NULL == (b[i] = create_bstring_of_type (s, strlen(s), ptr_type)))
- {
- free_n_bstrings (b, i);
- if (malloc_flag) SLfree ((char *) b);
- return NULL;
- }
- }
-
- return b;
-}
-
-static int
-bstring_string_bin_op (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- SLang_BString_Type **b;
- int ret;
-
- if (NULL == (b = make_n_bstrings (NULL, (char **)bp, nb, IS_NOT_TO_BE_FREED)))
- return -1;
-
- b_type = SLANG_BSTRING_TYPE;
- ret = bstring_bstring_bin_op (op,
- a_type, ap, na,
- b_type, (VOID_STAR) b, nb,
- cp);
- free_n_bstrings (b, nb);
- SLfree ((char *) b);
- return ret;
-}
-
-static int
-string_bstring_bin_op (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- SLang_BString_Type **a;
- int ret;
-
- if (NULL == (a = make_n_bstrings (NULL, (char **)ap, na, IS_NOT_TO_BE_FREED)))
- return -1;
-
- a_type = SLANG_BSTRING_TYPE;
- ret = bstring_bstring_bin_op (op,
- a_type, (VOID_STAR) a, na,
- b_type, bp, nb,
- cp);
- free_n_bstrings (a, na);
- SLfree ((char *) a);
-
- return ret;
-}
-
-static void bstring_destroy (unsigned char unused, VOID_STAR s)
-{
- (void) unused;
- SLbstring_free (*(SLang_BString_Type **) s);
-}
-
-static int bstring_push (unsigned char unused, VOID_STAR sptr)
-{
- (void) unused;
-
- return SLang_push_bstring (*(SLang_BString_Type **) sptr);
-}
-
-static int string_to_bstring (unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp)
-{
- char **s;
- SLang_BString_Type **b;
-
- (void) a_type;
- (void) b_type;
-
- s = (char **) ap;
- b = (SLang_BString_Type **) bp;
-
- if (NULL == make_n_bstrings (b, s, na, IS_SLSTRING))
- return -1;
-
- return 1;
-}
-
-static int bstring_to_string (unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp)
-{
- char **s;
- unsigned int i;
- SLang_BString_Type **a;
-
- (void) a_type;
- (void) b_type;
-
- s = (char **) bp;
- a = (SLang_BString_Type **) ap;
-
- for (i = 0; i < na; i++)
- {
- SLang_BString_Type *ai = a[i];
-
- if (ai == NULL)
- {
- s[i] = NULL;
- continue;
- }
-
- if (NULL == (s[i] = SLang_create_slstring ((char *)BS_GET_POINTER(ai))))
- {
- while (i != 0)
- {
- i--;
- SLang_free_slstring (s[i]);
- s[i] = NULL;
- }
- return -1;
- }
- }
-
- return 1;
-}
-
-static char *bstring_string (unsigned char type, VOID_STAR v)
-{
- SLang_BString_Type *s;
- unsigned char buf[128];
- unsigned char *bytes, *bytes_max;
- unsigned char *b, *bmax;
-
- (void) type;
-
- s = *(SLang_BString_Type **) v;
- bytes = BS_GET_POINTER(s);
- bytes_max = bytes + s->len;
-
- b = buf;
- bmax = buf + (sizeof (buf) - 4);
-
- while (bytes < bytes_max)
- {
- unsigned char ch = *bytes;
-
- if ((ch < 32) || (ch >= 127) || (ch == '\\'))
- {
- if (b + 4 > bmax)
- break;
-
- sprintf ((char *) b, "\\%03o", ch);
- b += 4;
- }
- else
- {
- if (b == bmax)
- break;
-
- *b++ = ch;
- }
-
- bytes++;
- }
-
- if (bytes < bytes_max)
- {
- *b++ = '.';
- *b++ = '.';
- *b++ = '.';
- }
- *b = 0;
-
- return SLmake_string ((char *)buf);
-}
-
-static unsigned int bstrlen_cmd (SLang_BString_Type *b)
-{
- return b->len;
-}
-
-static SLang_Intrin_Fun_Type BString_Table [] = /*{{{*/
-{
- MAKE_INTRINSIC_1("bstrlen", bstrlen_cmd, SLANG_UINT_TYPE, SLANG_BSTRING_TYPE),
- MAKE_INTRINSIC_0("pack", _SLpack, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_2("unpack", _SLunpack, SLANG_VOID_TYPE, SLANG_STRING_TYPE, SLANG_BSTRING_TYPE),
- MAKE_INTRINSIC_1("pad_pack_format", _SLpack_pad_format, SLANG_VOID_TYPE, SLANG_STRING_TYPE),
- MAKE_INTRINSIC_1("sizeof_pack", _SLpack_compute_size, SLANG_UINT_TYPE, SLANG_STRING_TYPE),
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-int _SLang_init_bstring (void)
-{
- SLang_Class_Type *cl;
-
- if (NULL == (cl = SLclass_allocate_class ("BString_Type")))
- return -1;
- (void) SLclass_set_destroy_function (cl, bstring_destroy);
- (void) SLclass_set_push_function (cl, bstring_push);
- (void) SLclass_set_string_function (cl, bstring_string);
-
- if (-1 == SLclass_register_class (cl, SLANG_BSTRING_TYPE, sizeof (char *),
- SLANG_CLASS_TYPE_PTR))
- return -1;
-
- if ((-1 == SLclass_add_typecast (SLANG_BSTRING_TYPE, SLANG_STRING_TYPE, bstring_to_string, 1))
- || (-1 == SLclass_add_typecast (SLANG_STRING_TYPE, SLANG_BSTRING_TYPE, string_to_bstring, 1))
- || (-1 == SLclass_add_binary_op (SLANG_BSTRING_TYPE, SLANG_BSTRING_TYPE, bstring_bstring_bin_op, bstring_bstring_bin_op_result))
- || (-1 == SLclass_add_binary_op (SLANG_STRING_TYPE, SLANG_BSTRING_TYPE, string_bstring_bin_op, bstring_bstring_bin_op_result))
- || (-1 == SLclass_add_binary_op (SLANG_BSTRING_TYPE, SLANG_STRING_TYPE, bstring_string_bin_op, bstring_bstring_bin_op_result)))
-
- return -1;
-
- if (-1 == SLadd_intrin_fun_table (BString_Table, NULL))
- return -1;
-
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slclass.c b/mdk-stage1/slang/slclass.c
deleted file mode 100644
index 733888cb8..000000000
--- a/mdk-stage1/slang/slclass.c
+++ /dev/null
@@ -1,1391 +0,0 @@
-/* User defined objects */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
-unsigned char _SLclass_Class_Type [256];
-#endif
-
-static SLang_Class_Type *Registered_Types[256];
-SLang_Class_Type *_SLclass_get_class (unsigned char type)
-{
- SLang_Class_Type *cl;
-
- cl = Registered_Types [type];
- if (cl == NULL)
- SLang_exit_error ("Application error: Type %d not registered", (int) type);
-
- return cl;
-}
-
-int SLclass_is_class_defined (unsigned char type)
-{
- return (NULL != Registered_Types[type]);
-}
-
-VOID_STAR _SLclass_get_ptr_to_value (SLang_Class_Type *cl,
- SLang_Object_Type *obj)
-{
- VOID_STAR p;
-
- switch (cl->cl_class_type)
- {
- case SLANG_CLASS_TYPE_MMT:
- case SLANG_CLASS_TYPE_PTR:
- case SLANG_CLASS_TYPE_SCALAR:
- p = (VOID_STAR) &obj->v;
- break;
-
- case SLANG_CLASS_TYPE_VECTOR:
- p = obj->v.ptr_val;
- break;
-
- default:
- p = NULL;
- }
- return p;
-}
-
-char *SLclass_get_datatype_name (unsigned char stype)
-{
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (stype);
- return cl->cl_name;
-}
-
-static int method_undefined_error (unsigned char type, char *method, char *name)
-{
- if (name == NULL) name = SLclass_get_datatype_name (type);
-
- SLang_verror (SL_TYPE_MISMATCH, "%s method not defined for %s",
- method, name);
- return -1;
-}
-
-static int
-scalar_vector_bin_op_result (int op, unsigned char a, unsigned char b,
- unsigned char *c)
-{
- (void) a; (void) b;
- switch (op)
- {
- case SLANG_NE:
- case SLANG_EQ:
- *c = SLANG_INT_TYPE;
- return 1;
- }
- return 0;
-}
-
-static int
-scalar_vector_bin_op (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- int *c;
- char *a, *b;
- unsigned int da, db;
- unsigned int n, n_max;
- unsigned int data_type_len;
- SLang_Class_Type *cl;
-
- (void) b_type;
- cl = _SLclass_get_class (a_type);
-
- data_type_len = cl->cl_sizeof_type;
-
- a = (char *) ap;
- b = (char *) bp;
- c = (int *) cp;
-
- if (na == 1) da = 0; else da = data_type_len;
- if (nb == 1) db = 0; else db = data_type_len;
- if (na > nb) n_max = na; else n_max = nb;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_NE:
- for (n = 0; n < n_max; n++)
- {
- c[n] = (0 != SLMEMCMP(a, b, data_type_len));
- a += da; b += db;
- }
- break;
-
- case SLANG_EQ:
- for (n = 0; n < n_max; n++)
- {
- c[n] = (0 == SLMEMCMP(a, b, data_type_len));
- a += da; b += db;
- }
- break;
- }
- return 1;
-}
-
-static int scalar_fread (unsigned char type, FILE *fp, VOID_STAR ptr,
- unsigned int desired, unsigned int *actual)
-{
- unsigned int n;
-
- n = fread ((char *) ptr, _SLclass_get_class (type)->cl_sizeof_type,
- desired, fp);
- *actual = n;
- return 0;
-}
-
-static int scalar_fwrite (unsigned char type, FILE *fp, VOID_STAR ptr,
- unsigned int desired, unsigned int *actual)
-{
- unsigned int n;
-
- n = fwrite ((char *) ptr, _SLclass_get_class (type)->cl_sizeof_type,
- desired, fp);
- *actual = n;
- return 0;
-}
-
-static int vector_apush (unsigned char type, VOID_STAR ptr)
-{
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
- return (*cl->cl_push)(type, (VOID_STAR) &ptr);
-}
-
-static int vector_apop (unsigned char type, VOID_STAR ptr)
-{
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
- return (*cl->cl_pop)(type, (VOID_STAR) &ptr);
-}
-
-static int default_push_mmt (unsigned char type_unused, VOID_STAR ptr)
-{
- SLang_MMT_Type *ref;
-
- (void) type_unused;
- ref = *(SLang_MMT_Type **) ptr;
- return SLang_push_mmt (ref);
-}
-
-static void default_destroy_simple (unsigned char type_unused, VOID_STAR ptr_unused)
-{
- (void) type_unused;
- (void) ptr_unused;
-}
-
-static void default_destroy_user (unsigned char type, VOID_STAR ptr)
-{
- (void) type;
- SLang_free_mmt (*(SLang_MMT_Type **) ptr);
-}
-
-static int default_pop (unsigned char type, VOID_STAR ptr)
-{
- return SLclass_pop_ptr_obj (type, (VOID_STAR *) ptr);
-}
-
-static int default_datatype_deref (unsigned char type)
-{
- return method_undefined_error (type, "datatype_deref", NULL);
-}
-
-static int default_acopy (unsigned char type, VOID_STAR from, VOID_STAR to)
-{
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
- if (-1 == (*cl->cl_apush) (type, from))
- return -1;
- return (*cl->cl_apop) (type, to);
-}
-
-static int default_dereference_object (unsigned char type, VOID_STAR ptr)
-{
- (void) ptr;
- return method_undefined_error (type, "dereference", NULL);
-}
-
-static char *default_string (unsigned char stype, VOID_STAR v)
-{
- char buf [256];
- char *s;
-#if SLANG_HAS_COMPLEX
- double *cplx;
-#endif
- s = buf;
-
- switch (stype)
- {
- case SLANG_STRING_TYPE:
- s = *(char **) v;
- break;
-
- case SLANG_NULL_TYPE:
- s = "NULL";
- break;
-
- case SLANG_DATATYPE_TYPE:
- s = SLclass_get_datatype_name ((unsigned char) *(int *)v);
- break;
-
-#if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- cplx = *(double **) v;
- if (cplx[1] < 0)
- sprintf (s, "(%g - %gi)", cplx [0], -cplx [1]);
- else
- sprintf (s, "(%g + %gi)", cplx [0], cplx [1]);
- break;
-#endif
- default:
- s = SLclass_get_datatype_name (stype);
- }
-
- return SLmake_string (s);
-}
-
-static int
-use_cmp_bin_op_result (int op, unsigned char a, unsigned char b,
- unsigned char *c)
-{
- if (a != b)
- return 0;
- switch (op)
- {
- case SLANG_NE:
- case SLANG_EQ:
- case SLANG_LT:
- case SLANG_LE:
- case SLANG_GT:
- case SLANG_GE:
- *c = SLANG_INT_TYPE;
- return 1;
- }
- return 0;
-}
-
-static int
-use_cmp_bin_op (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- int *c;
- char *a, *b;
- unsigned int da, db;
- unsigned int n, n_max;
- unsigned int data_type_len;
- SLang_Class_Type *cl;
- int (*cmp)(unsigned char, VOID_STAR, VOID_STAR, int *);
-
- (void) b_type;
- cl = _SLclass_get_class (a_type);
- cmp = cl->cl_cmp;
- data_type_len = cl->cl_sizeof_type;
-
- a = (char *) ap;
- b = (char *) bp;
- c = (int *) cp;
-
- if (na == 1) da = 0; else da = data_type_len;
- if (nb == 1) db = 0; else db = data_type_len;
- if (na > nb) n_max = na; else n_max = nb;
-
- switch (op)
- {
- int result;
-
- default:
- return 0;
-
- case SLANG_NE:
- for (n = 0; n < n_max; n++)
- {
- if (-1 == (*cmp) (a_type, (VOID_STAR)a, (VOID_STAR)b, &result))
- return -1;
- c[n] = (result != 0);
- a += da; b += db;
- }
- break;
-
- case SLANG_EQ:
- for (n = 0; n < n_max; n++)
- {
- if (-1 == (*cmp) (a_type, (VOID_STAR)a, (VOID_STAR)b, &result))
- return -1;
- c[n] = (result == 0);
- a += da; b += db;
- }
- break;
-
- case SLANG_GT:
- for (n = 0; n < n_max; n++)
- {
- if (-1 == (*cmp) (a_type, (VOID_STAR)a, (VOID_STAR)b, &result))
- return -1;
- c[n] = (result > 0);
- a += da; b += db;
- }
- break;
- case SLANG_GE:
- for (n = 0; n < n_max; n++)
- {
- if (-1 == (*cmp) (a_type, (VOID_STAR)a, (VOID_STAR)b, &result))
- return -1;
- c[n] = (result >= 0);
- a += da; b += db;
- }
- break;
- case SLANG_LT:
- for (n = 0; n < n_max; n++)
- {
- if (-1 == (*cmp) (a_type, (VOID_STAR)a, (VOID_STAR)b, &result))
- return -1;
- c[n] = (result < 0);
- a += da; b += db;
- }
- break;
- case SLANG_LE:
- for (n = 0; n < n_max; n++)
- {
- if (-1 == (*cmp) (a_type, (VOID_STAR)a, (VOID_STAR)b, &result))
- return -1;
- c[n] = (result <= 0);
- a += da; b += db;
- }
- break;
- }
- return 1;
-}
-
-
-int SLclass_get_class_id (SLang_Class_Type *cl)
-{
- if (cl == NULL)
- return -1;
- return (int) cl->cl_data_type;
-}
-
-SLang_Class_Type *SLclass_allocate_class (char *name)
-{
- SLang_Class_Type *cl;
- unsigned int i;
-
- for (i = 0; i < 256; i++)
- {
- cl = Registered_Types [i];
- if ((cl != NULL)
- && (0 == strcmp (cl->cl_name, name)))
- {
- SLang_verror (SL_DUPLICATE_DEFINITION, "Type name %s already exists", name);
- return NULL;
- }
- }
-
- cl = (SLang_Class_Type *) SLmalloc (sizeof (SLang_Class_Type));
- if (cl == NULL) return NULL;
-
- SLMEMSET ((char *) cl, 0, sizeof (SLang_Class_Type));
-
- if (NULL == (cl->cl_name = SLang_create_slstring (name)))
- {
- SLfree ((char *) cl);
- return NULL;
- }
-
- return cl;
-}
-
-static int DataType_Ids [256];
-
-int _SLang_push_datatype (unsigned char data_type)
-{
- /* This data type could be a copy of another type, e.g., short and
- * int if they are the same size (Int16 == Short). So, make sure
- * we push the original and not the copy.
- */
- data_type = _SLclass_get_class (data_type)->cl_data_type;
- return SLclass_push_int_obj (SLANG_DATATYPE_TYPE, (int) data_type);
-}
-
-static int datatype_deref (unsigned char type, VOID_STAR ptr)
-{
- SLang_Class_Type *cl;
- int status;
-
- /* The parser generated code for this as if a function call were to be
- * made. However, we are calling the deref object routine
- * instead of the function call. So, I must simulate the function call.
- */
- if (-1 == _SL_increment_frame_pointer ())
- return -1;
-
- type = (unsigned char) *(int *) ptr;
- cl = _SLclass_get_class (type);
- status = (*cl->cl_datatype_deref) (type);
-
- (void) _SL_decrement_frame_pointer ();
- return status;
-}
-
-static int datatype_push (unsigned char type_unused, VOID_STAR ptr)
-{
- (void) type_unused;
- return _SLang_push_datatype (*(int *) ptr);
-}
-
-int _SLang_pop_datatype (unsigned char *type)
-{
- int i;
-
- if (-1 == SLclass_pop_int_obj (SLANG_DATATYPE_TYPE, &i))
- return -1;
-
- *type = (unsigned char) i;
- return 0;
-}
-
-static int datatype_pop (unsigned char type, VOID_STAR ptr)
-{
- if (-1 == _SLang_pop_datatype (&type))
- return -1;
-
- *(int *) ptr = type;
- return 0;
-}
-
-int _SLclass_init (void)
-{
- SLang_Class_Type *cl;
-
- /* First initialize the container classes. This is so binary operations
- * added later will work with them.
- */
- if (-1 == _SLarray_init_slarray ())
- return -1;
-
- /* DataType_Type */
- if (NULL == (cl = SLclass_allocate_class ("DataType_Type")))
- return -1;
- cl->cl_pop = datatype_pop;
- cl->cl_push = datatype_push;
- cl->cl_dereference = datatype_deref;
- if (-1 == SLclass_register_class (cl, SLANG_DATATYPE_TYPE, sizeof(int),
- SLANG_CLASS_TYPE_SCALAR))
- return -1;
-
- return 0;
-}
-
-static int register_new_datatype (char *name, unsigned char type)
-{
- DataType_Ids [type] = type;
- return SLadd_intrinsic_variable (name, (VOID_STAR) (DataType_Ids + type),
- SLANG_DATATYPE_TYPE, 1);
-}
-
-int SLclass_create_synonym (char *name, unsigned char type)
-{
- if (NULL == _SLclass_get_class (type))
- return -1;
-
- return register_new_datatype (name, type);
-}
-
-int _SLclass_copy_class (unsigned char to, unsigned char from)
-{
- SLang_Class_Type *cl = _SLclass_get_class (from);
-
- if (Registered_Types[to] != NULL)
- SLang_exit_error ("Application error: Class already exists");
-
- Registered_Types[to] = cl;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (to != SLANG_UNDEFINED_TYPE)
- _SLclass_Class_Type [to] = cl->cl_class_type;
-#endif
- return 0;
-}
-
-int SLclass_register_class (SLang_Class_Type *cl, unsigned char type, unsigned int type_size, unsigned char class_type)
-{
- char *name;
- unsigned int i;
- int can_binop = 1; /* scalar_vector_bin_op should work
- * for all data types.
- */
-
- if (type == SLANG_VOID_TYPE) for (i = 0; i < 256; i++)
- {
- if ((Registered_Types[i] == NULL)
- && (i != SLANG_VOID_TYPE))
- {
- type = (unsigned char) i;
- break;
- }
- }
-
- if ((NULL != Registered_Types [type])
- || (type == SLANG_VOID_TYPE))
- {
- SLang_verror (SL_APPLICATION_ERROR, "Class type %d already in use", (int) type);
- return -1;
- }
-
- cl->cl_data_type = type;
- cl->cl_class_type = class_type;
- name = cl->cl_name;
-
- switch (class_type)
- {
- case SLANG_CLASS_TYPE_MMT:
- if (cl->cl_push == NULL) cl->cl_push = default_push_mmt;
- if (cl->cl_destroy == NULL)
- return method_undefined_error (type, "destroy", name);
- cl->cl_user_destroy_fun = cl->cl_destroy;
- cl->cl_destroy = default_destroy_user;
- type_size = sizeof (VOID_STAR);
- break;
-
- case SLANG_CLASS_TYPE_SCALAR:
- if (cl->cl_destroy == NULL) cl->cl_destroy = default_destroy_simple;
- if ((type_size == 0)
- || (type_size > sizeof (_SL_Object_Union_Type)))
- {
- SLang_verror (SL_INVALID_PARM,
- "Type size for %s not appropriate for SCALAR type",
- name);
- return -1;
- }
- if (cl->cl_pop == NULL)
- return method_undefined_error (type, "pop", name);
- if (cl->cl_fread == NULL) cl->cl_fread = scalar_fread;
- if (cl->cl_fwrite == NULL) cl->cl_fwrite = scalar_fwrite;
-
- can_binop = 1;
- break;
-
- case SLANG_CLASS_TYPE_PTR:
- if (cl->cl_destroy == NULL)
- return method_undefined_error (type, "destroy", name);
- type_size = sizeof (VOID_STAR);
- break;
-
- case SLANG_CLASS_TYPE_VECTOR:
- if (cl->cl_destroy == NULL)
- return method_undefined_error (type, "destroy", name);
- if (cl->cl_pop == NULL)
- return method_undefined_error (type, "pop", name);
- cl->cl_apop = vector_apop;
- cl->cl_apush = vector_apush;
- cl->cl_adestroy = default_destroy_simple;
- if (cl->cl_fread == NULL) cl->cl_fread = scalar_fread;
- if (cl->cl_fwrite == NULL) cl->cl_fwrite = scalar_fwrite;
- can_binop = 1;
- break;
-
- default:
- SLang_verror (SL_INVALID_PARM, "%s: unknown class type (%d)", name, class_type);
- return -1;
- }
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if (type != SLANG_UNDEFINED_TYPE)
- _SLclass_Class_Type [type] = class_type;
-#endif
-
- if (type_size == 0)
- {
- SLang_verror (SL_INVALID_PARM, "type size must be non-zero for %s", name);
- return -1;
- }
-
- if (cl->cl_string == NULL) cl->cl_string = default_string;
- if (cl->cl_acopy == NULL) cl->cl_acopy = default_acopy;
- if (cl->cl_datatype_deref == NULL) cl->cl_datatype_deref = default_datatype_deref;
-
- if (cl->cl_pop == NULL) cl->cl_pop = default_pop;
-
- if (cl->cl_push == NULL)
- return method_undefined_error (type, "push", name);
-
- if (cl->cl_byte_code_destroy == NULL)
- cl->cl_byte_code_destroy = cl->cl_destroy;
- if (cl->cl_push_literal == NULL)
- cl->cl_push_literal = cl->cl_push;
-
- if (cl->cl_dereference == NULL)
- cl->cl_dereference = default_dereference_object;
-
- if (cl->cl_apop == NULL) cl->cl_apop = cl->cl_pop;
- if (cl->cl_apush == NULL) cl->cl_apush = cl->cl_push;
- if (cl->cl_adestroy == NULL) cl->cl_adestroy = cl->cl_destroy;
- if (cl->cl_push_intrinsic == NULL) cl->cl_push_intrinsic = cl->cl_push;
-
- if ((cl->cl_foreach == NULL)
- || (cl->cl_foreach_open == NULL)
- || (cl->cl_foreach_close == NULL))
- {
- cl->cl_foreach = _SLarray_cl_foreach;
- cl->cl_foreach_open = _SLarray_cl_foreach_open;
- cl->cl_foreach_close = _SLarray_cl_foreach_close;
- }
-
- cl->cl_sizeof_type = type_size;
-
- if (NULL == (cl->cl_transfer_buf = (VOID_STAR) SLmalloc (type_size)))
- return -1;
-
- Registered_Types[type] = cl;
-
- if (-1 == register_new_datatype (name, type))
- return -1;
-
- if (cl->cl_cmp != NULL)
- {
- if (-1 == SLclass_add_binary_op (type, type, use_cmp_bin_op, use_cmp_bin_op_result))
- return -1;
- }
- else if (can_binop
- && (-1 == SLclass_add_binary_op (type, type, scalar_vector_bin_op, scalar_vector_bin_op_result)))
- return -1;
-
- cl->cl_anytype_typecast = _SLanytype_typecast;
-
- return 0;
-}
-
-int SLclass_add_math_op (unsigned char type,
- int (*handler)(int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR),
- int (*result) (int, unsigned char, unsigned char *))
-{
- SLang_Class_Type *cl = _SLclass_get_class (type);
-
- cl->cl_math_op = handler;
- cl->cl_math_op_result_type = result;
- return 0;
-}
-
-int SLclass_add_binary_op (unsigned char a, unsigned char b,
- int (*f) (int,
- unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR),
- int (*r) (int, unsigned char, unsigned char, unsigned char *))
-{
- SLang_Class_Type *cl;
- SL_OOBinary_Type *ab;
-
- if ((f == NULL) || (r == NULL))
- {
- SLang_verror (SL_INVALID_PARM, "SLclass_add_binary_op");
- return -1;
- }
-
- cl = _SLclass_get_class (a);
- (void) _SLclass_get_class (b);
-
- if (NULL == (ab = (SL_OOBinary_Type *) SLmalloc (sizeof(SL_OOBinary_Type))))
- return -1;
-
- ab->data_type = b;
- ab->binary_function = f;
- ab->binary_result = r;
- ab->next = cl->cl_binary_ops;
- cl->cl_binary_ops = ab;
-
- if ((a != SLANG_ARRAY_TYPE)
- && (b != SLANG_ARRAY_TYPE))
- {
- if ((-1 == _SLarray_add_bin_op (a))
- || (-1 == _SLarray_add_bin_op (b)))
- return -1;
- }
-
- return 0;
-}
-
-int SLclass_add_unary_op (unsigned char type,
- int (*f)(int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR),
- int (*r)(int, unsigned char, unsigned char *))
-{
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
- if ((f == NULL) || (r == NULL))
- {
- SLang_verror (SL_INVALID_PARM, "SLclass_add_unary_op");
- return -1;
- }
-
- cl->cl_unary_op = f;
- cl->cl_unary_op_result_type = r;
-
- return 0;
-}
-
-int SLclass_add_app_unary_op (unsigned char type,
- int (*f)(int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR),
- int (*r)(int, unsigned char, unsigned char *))
-{
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
- if ((f == NULL) || (r == NULL))
- {
- SLang_verror (SL_INVALID_PARM, "SLclass_add_app_unary_op");
- return -1;
- }
-
- cl->cl_app_unary_op = f;
- cl->cl_app_unary_op_result_type = r;
-
- return 0;
-}
-
-int SLclass_set_pop_function (SLang_Class_Type *cl, int (*f)(unsigned char, VOID_STAR))
-{
- if (cl == NULL) return -1;
- cl->cl_pop = f;
-
- return 0;
-}
-
-int SLclass_set_push_function (SLang_Class_Type *cl, int (*f)(unsigned char, VOID_STAR))
-{
- if (cl == NULL) return -1;
- cl->cl_push = f;
-
- return 0;
-}
-
-int SLclass_set_string_function (SLang_Class_Type *cl, char *(*f)(unsigned char, VOID_STAR))
-{
- if (cl == NULL) return -1;
-
- cl->cl_string = f;
- return 0;
-}
-
-int SLclass_set_destroy_function (SLang_Class_Type *cl, void (*f)(unsigned char, VOID_STAR))
-{
- if (cl == NULL) return -1;
-
- cl->cl_destroy = f;
- return 0;
-}
-
-int SLclass_set_sget_function (SLang_Class_Type *cl, int (*f)(unsigned char, char *))
-{
- if (cl == NULL) return -1;
- cl->cl_sget = f;
- return 0;
-}
-
-int SLclass_set_sput_function (SLang_Class_Type *cl, int (*f)(unsigned char, char *))
-{
- if (cl == NULL) return -1;
- cl->cl_sput = f;
- return 0;
-}
-
-int SLclass_set_aget_function (SLang_Class_Type *cl, int (*f)(unsigned char, unsigned int))
-{
- if (cl == NULL) return -1;
- cl->cl_aget = f;
- return 0;
-}
-
-int SLclass_set_aput_function (SLang_Class_Type *cl, int (*f)(unsigned char, unsigned int))
-{
- if (cl == NULL) return -1;
- cl->cl_aput = f;
- return 0;
-}
-
-int SLclass_set_anew_function (SLang_Class_Type *cl, int (*f)(unsigned char, unsigned int))
-{
- if (cl == NULL) return -1;
- cl->cl_anew = f;
- return 0;
-}
-
-/* Misc */
-void _SLclass_type_mismatch_error (unsigned char a, unsigned char b)
-{
- SLang_verror (SL_TYPE_MISMATCH, "Expecting %s, found %s",
- SLclass_get_datatype_name (a),
- SLclass_get_datatype_name (b));
-}
-
-/* */
-
-static int null_binary_fun (int op,
- unsigned char a, VOID_STAR ap, unsigned int na,
- unsigned char b, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- int *ic;
- unsigned int i;
- int c;
-
- (void) ap; (void) bp;
-
- switch (op)
- {
- case SLANG_EQ:
- c = (a == b);
- break;
-
- case SLANG_NE:
- c = (a != b);
- break;
-
- default:
- return 0;
- }
-
- if (na > nb) nb = na;
- ic = (int *) cp;
- for (i = 0; i < nb; i++)
- ic[i] = c;
-
- return 1;
-}
-
-static char *get_binary_op_string (int op)
-{
- static char *ops[SLANG_MOD] =
- {
- "+", "=", "*", "/", "==", "!=", ">", ">=", "<", "<=", "^",
- "or", "and", "&", "|", "xor", "shl", "shr", "mod"
- };
-
- if ((op > SLANG_MOD) || (op <= 0))
- return "??";
- return ops[op - 1];
-}
-
-int (*_SLclass_get_binary_fun (int op,
- SLang_Class_Type *a_cl, SLang_Class_Type *b_cl,
- SLang_Class_Type **c_cl, int do_error))
-(int,
- unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR, unsigned int,
- VOID_STAR)
-{
- SL_OOBinary_Type *bt;
- unsigned char a, b, c;
-
- a = a_cl->cl_data_type;
- b = b_cl->cl_data_type;
-
- if ((a == SLANG_NULL_TYPE) || (b == SLANG_NULL_TYPE))
- {
- *c_cl = _SLclass_get_class (SLANG_INT_TYPE);
- return null_binary_fun;
- }
-
- bt = a_cl->cl_binary_ops;
-
- while (bt != NULL)
- {
- if (bt->data_type == b)
- {
- if (1 != (*bt->binary_result)(op, a, b, &c))
- break;
-
- if (c == a) *c_cl = a_cl;
- else if (c == b) *c_cl = b_cl;
- else *c_cl = _SLclass_get_class (c);
-
- return bt->binary_function;
- }
-
- bt = bt->next;
- }
-
- if (do_error)
- SLang_verror (SL_TYPE_MISMATCH, "%s %s %s is not possible",
- a_cl->cl_name, get_binary_op_string (op), b_cl->cl_name);
-
- *c_cl = NULL;
- return NULL;
-}
-
-int (*_SLclass_get_unary_fun (int op,
- SLang_Class_Type *a_cl,
- SLang_Class_Type **b_cl,
- int utype))
-(int, unsigned char, VOID_STAR, unsigned int, VOID_STAR)
-{
- int (*f)(int, unsigned char, VOID_STAR, unsigned int, VOID_STAR);
- int (*r)(int, unsigned char, unsigned char *);
- unsigned char a;
- unsigned char b;
-
- switch (utype)
- {
- case _SLANG_BC_UNARY:
- f = a_cl->cl_unary_op;
- r = a_cl->cl_unary_op_result_type;
- break;
-
- case _SLANG_BC_MATH_UNARY:
- f = a_cl->cl_math_op;
- r = a_cl->cl_math_op_result_type;
- break;
-
- case _SLANG_BC_APP_UNARY:
- f = a_cl->cl_app_unary_op;
- r = a_cl->cl_app_unary_op_result_type;
- break;
-
- default:
- f = NULL;
- r = NULL;
- }
-
- a = a_cl->cl_data_type;
- if ((f != NULL) && (r != NULL) && (1 == (*r) (op, a, &b)))
- {
- if (a == b)
- *b_cl = a_cl;
- else
- *b_cl = _SLclass_get_class (b);
- return f;
- }
-
- SLang_verror (SL_TYPE_MISMATCH, "undefined unary operation/function on %s",
- a_cl->cl_name);
-
- *b_cl = NULL;
-
- return NULL;
-}
-
-int
-SLclass_typecast (unsigned char to_type, int is_implicit, int allow_array)
-{
- unsigned char from_type;
- SLang_Class_Type *cl_to, *cl_from;
- SLang_Object_Type obj;
- VOID_STAR ap;
- VOID_STAR bp;
- int status;
-
- if (-1 == SLang_pop (&obj))
- return -1;
-
- from_type = obj.data_type;
- if (from_type == to_type)
- {
- SLang_push (&obj);
- return 0;
- }
-
- cl_from = _SLclass_get_class (from_type);
-
- /* Since the typecast functions are designed to work on arrays,
- * get the pointer to the value instead of just &obj.v.
- */
- ap = _SLclass_get_ptr_to_value (cl_from, &obj);
-
- if ((from_type == SLANG_ARRAY_TYPE)
- && (allow_array || (to_type != SLANG_ANY_TYPE)))
- {
- if (allow_array == 0)
- goto return_error;
-
- cl_to = _SLclass_get_class (SLANG_ARRAY_TYPE);
- bp = cl_to->cl_transfer_buf;
- status = _SLarray_typecast (from_type, ap, 1, to_type, bp, is_implicit);
- }
- else
- {
- int (*t) (unsigned char, VOID_STAR, unsigned int, unsigned char, VOID_STAR);
-
- if (NULL == (t = _SLclass_get_typecast (from_type, to_type, is_implicit)))
- {
- SLang_free_object (&obj);
- return -1;
- }
-
- cl_to = _SLclass_get_class (to_type);
- bp = cl_to->cl_transfer_buf;
- status = (*t) (from_type, ap, 1, to_type, bp);
- }
-
- if (1 == status)
- {
- if (-1 == (*cl_to->cl_apush)(to_type, bp))
- {
- (*cl_to->cl_adestroy) (to_type, bp);
- SLang_free_object (&obj);
- return -1;
- }
-
- /* cl_apush will push a copy, so destry this one */
- (*cl_to->cl_adestroy) (to_type, bp);
- SLang_free_object (&obj);
- return 0;
- }
-
- return_error:
-
- SLang_verror (SL_TYPE_MISMATCH, "Unable to typecast %s to %s",
- cl_from->cl_name,
- SLclass_get_datatype_name (to_type));
- SLang_free_object (&obj);
- return -1;
-}
-
-int (*_SLclass_get_typecast (unsigned char from, unsigned char to, int is_implicit))
-(unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR)
-{
- SL_Typecast_Type *t;
- SLang_Class_Type *cl_from;
-
- cl_from = _SLclass_get_class (from);
-
- t = cl_from->cl_typecast_funs;
- while (t != NULL)
- {
- if (t->data_type != to)
- {
- t = t->next;
- continue;
- }
-
- if (is_implicit && (t->allow_implicit == 0))
- break;
-
- return t->typecast;
- }
-
- if (to == SLANG_ANY_TYPE)
- return _SLanytype_typecast;
-
- if ((is_implicit == 0)
- && (cl_from->cl_void_typecast != NULL))
- return cl_from->cl_void_typecast;
-
- SLang_verror (SL_TYPE_MISMATCH, "Unable to typecast %s to %s",
- cl_from->cl_name,
- SLclass_get_datatype_name (to));
-
- return NULL;
-}
-
-int
-SLclass_add_typecast (unsigned char from, unsigned char to,
- int (*f)_PROTO((unsigned char, VOID_STAR, unsigned int,
- unsigned char, VOID_STAR)),
- int allow_implicit)
-{
- SL_Typecast_Type *t;
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (from);
- if (to == SLANG_VOID_TYPE)
- {
- cl->cl_void_typecast = f;
- return 0;
- }
-
- (void) _SLclass_get_class (to);
-
- if (NULL == (t = (SL_Typecast_Type *) SLmalloc (sizeof (SL_Typecast_Type))))
- return -1;
-
- SLMEMSET((char *) t, 0, sizeof(SL_Typecast_Type));
- t->data_type = to;
- t->next = cl->cl_typecast_funs;
- t->typecast = f;
- t->allow_implicit = allow_implicit;
-
- cl->cl_typecast_funs = t;
-
- return 0;
-}
-
-SLang_MMT_Type *SLang_pop_mmt (unsigned char type) /*{{{*/
-{
- SLang_MMT_Type *mmt;
-
- if (-1 == SLclass_pop_ptr_obj (type, (VOID_STAR *) &mmt))
- mmt = NULL;
- return mmt;
-
-#if 0
- SLang_Object_Type obj;
- SLang_Class_Type *cl;
-
- if (_SLang_pop_object_of_type (type, &obj))
- return NULL;
-
- cl = _SLclass_get_class (type);
- if ((cl->cl_class_type == SLANG_CLASS_TYPE_MMT)
- && (obj.data_type == type))
- {
- return obj.v.ref;
- }
-
- _SLclass_type_mismatch_error (type, obj.data_type);
- SLang_free_object (&obj);
- return NULL;
-#endif
-}
-
-/*}}}*/
-
-int SLang_push_mmt (SLang_MMT_Type *ref) /*{{{*/
-{
- if (ref == NULL)
- return SLang_push_null ();
-
- ref->count += 1;
-
- if (0 == SLclass_push_ptr_obj (ref->data_type, (VOID_STAR) ref))
- return 0;
-
- ref->count -= 1;
- return -1;
-}
-
-/*}}}*/
-
-void SLang_inc_mmt (SLang_MMT_Type *ref)
-{
- if (ref != NULL)
- ref->count += 1;
-}
-
-VOID_STAR SLang_object_from_mmt (SLang_MMT_Type *ref)
-{
- if (ref == NULL)
- return NULL;
-
- return ref->user_data;
-}
-
-SLang_MMT_Type *SLang_create_mmt (unsigned char t, VOID_STAR p)
-{
- SLang_MMT_Type *ref;
-
- (void) _SLclass_get_class (t); /* check to see if it is registered */
-
- if (NULL == (ref = (SLang_MMT_Type *) SLmalloc (sizeof (SLang_MMT_Type))))
- return NULL;
-
- SLMEMSET ((char *) ref, 0, sizeof (SLang_MMT_Type));
-
- ref->data_type = t;
- ref->user_data = p;
- /* FIXME!! To be consistent with other types, the reference count should
- * be set to 1 here. However, doing so will require other code changes
- * involving the use of MMTs. For instance, SLang_free_mmt would have
- * to be called after every push of the MMT.
- */
- return ref;
-}
-
-void SLang_free_mmt (SLang_MMT_Type *ref)
-{
- unsigned char type;
- SLang_Class_Type *cl;
-
- if (ref == NULL)
- return;
-
- /* This can be zero if SLang_create_mmt is called followed
- * by this routine before anything gets a chance to attach itself
- * to it.
- */
- if (ref->count > 1)
- {
- ref->count -= 1;
- return;
- }
-
- type = ref->data_type;
- cl = _SLclass_get_class (type);
- (*cl->cl_user_destroy_fun) (type, ref->user_data);
- SLfree ((char *)ref);
-}
-
-int SLang_push_value (unsigned char type, VOID_STAR v)
-{
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
- return (*cl->cl_apush)(type, v);
-}
-
-int SLang_pop_value (unsigned char type, VOID_STAR v)
-{
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
- return (*cl->cl_apop)(type, v);
-}
-
-void SLang_free_value (unsigned char type, VOID_STAR v)
-{
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
- (*cl->cl_adestroy) (type, v);
-}
-
-/* These routines are very low-level and are designed for application data
- * types to access the stack from their push/pop methods. The int and
- * pointer versions are in slang.c
- */
-#if SLANG_HAS_FLOAT
-int SLclass_push_double_obj (unsigned char type, double x)
-{
- SLang_Object_Type obj;
- obj.data_type = type;
- obj.v.double_val = x;
- return SLang_push (&obj);
-}
-int SLclass_push_float_obj (unsigned char type, float x)
-{
- SLang_Object_Type obj;
- obj.data_type = type;
- obj.v.float_val = x;
- return SLang_push (&obj);
-}
-
-#endif
-
-int SLclass_push_long_obj (unsigned char type, long x)
-{
- SLang_Object_Type obj;
- obj.data_type = type;
- obj.v.long_val = x;
- return SLang_push (&obj);
-}
-
-int SLclass_push_short_obj (unsigned char type, short x)
-{
- SLang_Object_Type obj;
- obj.data_type = type;
- obj.v.short_val = x;
- return SLang_push (&obj);
-}
-
-int SLclass_push_char_obj (unsigned char type, char x)
-{
- SLang_Object_Type obj;
- obj.data_type = type;
- obj.v.char_val = x;
- return SLang_push (&obj);
-}
-
-#if SLANG_HAS_FLOAT
-int SLclass_pop_double_obj (unsigned char type, double *x)
-{
- SLang_Object_Type obj;
-
- if (-1 == _SLang_pop_object_of_type (type, &obj, 0))
- return -1;
-
- *x = obj.v.double_val;
- return 0;
-}
-
-int SLclass_pop_float_obj (unsigned char type, float *x)
-{
- SLang_Object_Type obj;
-
- if (-1 == _SLang_pop_object_of_type (type, &obj, 0))
- return -1;
-
- *x = obj.v.float_val;
- return 0;
-}
-#endif
-
-int SLclass_pop_long_obj (unsigned char type, long *x)
-{
- SLang_Object_Type obj;
-
- if (-1 == _SLang_pop_object_of_type (type, &obj, 0))
- return -1;
-
- *x = obj.v.long_val;
- return 0;
-}
-
-int SLclass_pop_int_obj (unsigned char type, int *x)
-{
- SLang_Object_Type obj;
-
- if (-1 == _SLang_pop_object_of_type (type, &obj, 0))
- return -1;
-
- *x = obj.v.int_val;
- return 0;
-}
-
-int SLclass_pop_short_obj (unsigned char type, short *x)
-{
- SLang_Object_Type obj;
-
- if (-1 == _SLang_pop_object_of_type (type, &obj, 0))
- return -1;
-
- *x = obj.v.short_val;
- return 0;
-}
-
-int SLclass_pop_char_obj (unsigned char type, char *x)
-{
- SLang_Object_Type obj;
-
- if (-1 == _SLang_pop_object_of_type (type, &obj, 0))
- return -1;
-
- *x = obj.v.char_val;
- return 0;
-}
-
-int SLclass_pop_ptr_obj (unsigned char type, VOID_STAR *s)
-{
- SLang_Object_Type obj;
-
- if (-1 == _SLang_pop_object_of_type (type, &obj, 0))
- {
- *s = (VOID_STAR) NULL;
- return -1;
- }
- *s = obj.v.ptr_val;
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slcmd.c b/mdk-stage1/slang/slcmd.c
deleted file mode 100644
index 4a00a90fc..000000000
--- a/mdk-stage1/slang/slcmd.c
+++ /dev/null
@@ -1,351 +0,0 @@
-/* cmd line facility for slang */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#if SLANG_HAS_FLOAT
-# include <math.h>
-#endif
-
-#include "slang.h"
-#include "_slang.h"
-
-#ifndef HAVE_STDLIB_H
-/* Oh dear. Where is the prototype for atof? If not in stdlib, then
- * I do not know where. Not in math.h onsome systems either.
- */
-extern double atof ();
-#endif
-
-static SLcmd_Cmd_Type *SLcmd_find_command (char *s, SLcmd_Cmd_Type *cmd)
-{
- char *cmdstr;
- char chs = *s++, ch;
-
- while ((cmd->cmdfun != NULL)
- && (NULL != (cmdstr = cmd->cmd))
- && (0 != (ch = *cmdstr++)))
- {
- if ((ch == chs) && !strcmp (s, cmdstr)) return cmd;
- cmd++;
- }
- return NULL;
-}
-
-static int extract_token (char **strptr, char *buf)
-{
- char *s, *b;
- char ch, quote;
-
- *buf = 0;
-
- s = *strptr;
- while (((ch = *s) != 0)
- && ((ch == ' ') || (ch == '\t') || (ch == '\n')))
- s++;
-
- *strptr = s;
-
- if (ch == 0) return 0;
- if (ch == '%') return 0;
-
- b = buf;
-
- *b++ = ch;
- s++;
-
- if ((ch == '\'') || (ch == '"'))
- {
- quote = ch;
- while ((ch = *s) != 0)
- {
- s++;
- *b++ = ch;
- if (ch == quote)
- break;
-
- if (ch == '\\')
- {
- if (0 == (ch = *s))
- break;
- *b++ = ch;
- s++;
- }
- }
- *strptr = s;
- *b = 0;
- return 1;
- }
-
- while (((ch = *s) != 0)
- && (ch != ' ')
- && (ch != '\t')
- && (ch != '\n')
- && (ch != '%'))
- *b++ = *s++;
-
- *strptr = s;
- *b = 0;
- return 1;
-}
-
-static int allocate_arg_space (SLcmd_Cmd_Table_Type *table, int argc, unsigned int *space_ptr)
-{
- unsigned int space = *space_ptr;
- char *p;
-
- if (argc + 1 < (int) space)
- return 0;
-
- if (space > 128)
- {
- if (space > 1024) space += 1024;
- else space += 128;
- }
- else space += 32;
-
- if (NULL == (p = SLrealloc ((char *)table->string_args, space * sizeof (char *))))
- return -1;
- table->string_args = (char **)p;
- table->string_args [argc] = NULL;
-
- if (NULL == (p = SLrealloc ((char *)table->int_args, space * sizeof (int))))
- return -1;
- table->int_args = (int *)p;
-
- if (NULL == (p = SLrealloc ((char *)table->double_args, space * sizeof (double))))
- return -1;
- table->double_args = (double *)p;
-
- if (NULL == (p = SLrealloc ((char *)table->arg_type, space * sizeof (unsigned char))))
- return -1;
- table->arg_type = (unsigned char *)p;
-
- *space_ptr = space;
- return 0;
-}
-
-int SLcmd_execute_string (char *str, SLcmd_Cmd_Table_Type *table)
-{
- char *s, *b = NULL, *arg_type, *last_str, *cmd_name;
- SLcmd_Cmd_Type *cmd;
- char *buf;
- int token_present;
- int i;
- int status;
- unsigned int len;
- int argc;
- unsigned int space;
-
- table->argc = 0;
- table->string_args = NULL;
- table->int_args = NULL;
- table->double_args = NULL;
- table->arg_type = NULL;
-
- buf = SLmake_string (str);
- if (buf == NULL)
- return -1;
-
- status = extract_token (&str, buf);
- if (status <= 0)
- {
- SLfree (buf);
- return status;
- }
-
- if (((len = strlen (buf)) >= 32)
- || (NULL == (cmd = SLcmd_find_command (buf, table->table))))
- {
- SLang_verror (SL_UNDEFINED_NAME,"%s: invalid command", buf);
- SLfree (buf);
- return -1;
- }
-
- if (NULL == (cmd_name = SLmake_string (buf)))
- {
- SLfree (buf);
- return -1;
- }
-
- space = 0;
- argc = 0;
- if (-1 == allocate_arg_space (table, argc, &space))
- {
- SLfree (buf);
- return -1;
- }
- table->arg_type[argc] = SLANG_STRING_TYPE;
- table->string_args[argc++] = cmd_name;
-
- arg_type = cmd->arg_type;
- status = -1;
- while (*arg_type)
- {
- int guess_type = 0;
-
- last_str = str;
-
- if (-1 == allocate_arg_space (table, argc, &space))
- goto error;
-
- if (-1 == (token_present = extract_token (&str, buf)))
- goto error;
-
- table->string_args[argc] = NULL;
-
- if (token_present)
- {
- b = buf;
- len = strlen (b);
-
- if ((*b == '"') && (len > 1))
- {
- b++;
- len -= 2;
- b[len] = 0;
- guess_type = SLANG_STRING_TYPE;
- SLexpand_escaped_string (buf, b, b + len);
- len = strlen (buf);
- }
- else if ((*b == '\'') && (len > 1))
- {
- char ch;
- b++;
- len -= 2;
- b[len] = 0;
- guess_type = SLANG_INT_TYPE;
- ch = *b;
- if (ch == '\\')
- (void) _SLexpand_escaped_char (b, &ch);
- sprintf (buf, "%d", (unsigned char) ch);
- len = strlen (buf);
- }
- else guess_type = SLang_guess_type (buf);
- }
-
- switch (*arg_type++)
- {
- /* variable argument number */
- case 'v':
- if (token_present == 0) break;
- case 'V':
- if (token_present == 0)
- {
- SLang_verror (SL_INVALID_PARM, "%s: Expecting argument", cmd_name);
- goto error;
- }
-
- while (*last_str == ' ') last_str++;
- len = strlen (last_str);
- str = last_str + len;
-
- s = SLmake_nstring (last_str, len);
- if (s == NULL) goto error;
-
- table->arg_type[argc] = SLANG_STRING_TYPE;
- table->string_args[argc++] = s;
- break;
-
- case 's':
- if (token_present == 0) break;
- case 'S':
- if (token_present == 0)
- {
- SLang_verror (SL_TYPE_MISMATCH, "%s: Expecting string argument", cmd_name);
- goto error;
- }
-
- s = SLmake_nstring (buf, len);
- if (s == NULL) goto error;
- table->arg_type[argc] = SLANG_STRING_TYPE;
- table->string_args[argc++] = s;
- break;
-
- /* integer argument */
- case 'i':
- if (token_present == 0) break;
- case 'I':
- if ((token_present == 0) || (SLANG_INT_TYPE != guess_type))
- {
- SLang_verror (SL_TYPE_MISMATCH, "%s: Expecting integer argument", cmd_name);
- goto error;
- }
-
- table->arg_type[argc] = SLANG_INT_TYPE;
- table->int_args[argc++] = SLatoi((unsigned char *) buf);
- break;
-
- /* floating point arg */
-#if SLANG_HAS_FLOAT
- case 'f':
- if (token_present == 0) break;
- case 'F':
- if ((token_present == 0) || (SLANG_STRING_TYPE == guess_type))
- {
- SLang_verror (SL_TYPE_MISMATCH, "%s: Expecting double argument", cmd_name);
- goto error;
- }
- table->arg_type[argc] = SLANG_DOUBLE_TYPE;
- table->double_args[argc++] = atof(buf);
- break;
-#endif
- /* Generic type */
- case 'g':
- if (token_present == 0) break;
- case 'G':
- if (token_present == 0)
- {
- SLang_verror (SL_TYPE_MISMATCH, "%s: Expecting argument", cmd_name);
- goto error;
- }
-
- switch (guess_type)
- {
- case SLANG_INT_TYPE:
- table->arg_type[argc] = SLANG_INT_TYPE;
- table->int_args[argc++] = SLatoi((unsigned char *) buf);
- break;
-
- case SLANG_STRING_TYPE:
- s = SLmake_nstring (buf, len);
- if (s == NULL) goto error;
-
- table->arg_type[argc] = SLANG_STRING_TYPE;
- table->string_args[argc++] = s;
- break;
-#if SLANG_HAS_FLOAT
- case SLANG_DOUBLE_TYPE:
- table->arg_type[argc] = SLANG_DOUBLE_TYPE;
- table->double_args[argc++] = atof(buf);
-#endif
- }
- break;
- }
- }
-
- /* call function */
- status = (*cmd->cmdfun)(argc, table);
-
- error:
- if (table->string_args != NULL) for (i = 0; i < argc; i++)
- {
- if (NULL != table->string_args[i])
- {
- SLfree (table->string_args[i]);
- table->string_args[i] = NULL;
- }
- }
- SLfree ((char *)table->string_args); table->string_args = NULL;
- SLfree ((char *)table->double_args); table->double_args = NULL;
- SLfree ((char *)table->int_args); table->int_args = NULL;
- SLfree ((char *)table->arg_type); table->arg_type = NULL;
-
- SLfree (buf);
- return status;
-}
-
diff --git a/mdk-stage1/slang/slcmplex.c b/mdk-stage1/slang/slcmplex.c
deleted file mode 100644
index b210dfc04..000000000
--- a/mdk-stage1/slang/slcmplex.c
+++ /dev/null
@@ -1,1142 +0,0 @@
-/* Complex Data Type definition for S-Lang */
-/* Copyright (c) 1997, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-/* The rest of the file is enclosed in this #if */
-#if SLANG_HAS_COMPLEX
-
-#if SLANG_HAS_FLOAT
-# include <math.h>
-#endif
-
-#ifdef PI
-# undef PI
-#endif
-#define PI 3.14159265358979323846
-
-int SLang_pop_complex (double *r, double *i)
-{
- double *c;
-
- switch (SLang_peek_at_stack ())
- {
- case SLANG_COMPLEX_TYPE:
- if (-1 == SLclass_pop_ptr_obj (SLANG_COMPLEX_TYPE, (VOID_STAR *)&c))
- return -1;
- *r = c[0];
- *i = c[1];
- SLfree ((char *) c);
- break;
-
- default:
- *i = 0.0;
- if (-1 == SLang_pop_double (r, NULL, NULL))
- return -1;
- break;
-
- case -1:
- return -1;
- }
- return 0;
-}
-
-int SLang_push_complex (double r, double i)
-{
- double *c;
-
- c = (double *) SLmalloc (2 * sizeof (double));
- if (c == NULL)
- return -1;
-
- c[0] = r;
- c[1] = i;
-
- if (-1 == SLclass_push_ptr_obj (SLANG_COMPLEX_TYPE, (VOID_STAR) c))
- {
- SLfree ((char *) c);
- return -1;
- }
- return 0;
-}
-
-double *SLcomplex_times (double *c, double *a, double *b)
-{
- double a_real, b_real, a_imag, b_imag;
-
- a_real = a[0];
- b_real = b[0];
- a_imag = a[1];
- b_imag = b[1];
-
- c[0] = a_real * b_real - a_imag * b_imag;
- c[1] = a_imag * b_real + a_real * b_imag;
-
- return c;
-}
-
-double *SLcomplex_divide (double *c, double *a, double *b)
-{
- double a_real, b_real, a_imag, b_imag;
- double ratio, invden;
-
- a_real = a[0];
- b_real = b[0];
- a_imag = a[1];
- b_imag = b[1];
-
- /* Do it this way to avoid overflow in the denom */
- if (fabs(b_real) > fabs(b_imag))
- {
- ratio = b_imag / b_real;
- invden = 1.0 / (b_real + b_imag * ratio);
- c[0] = (a_real + ratio * a_imag) * invden;
- c[1] = (a_imag - a_real * ratio) * invden;
- }
- else
- {
- ratio = b_real / b_imag;
- invden = 1.0 / (b_real * ratio + b_imag);
- c[0] = (a_real * ratio + a_imag) * invden;
- c[1] = (a_imag * ratio - a_real) * invden;
- }
- return c;
-}
-
-/* a^b = exp (b log a); */
-double *SLcomplex_pow (double *c, double *a, double *b)
-{
- return SLcomplex_exp (c, SLcomplex_times (c, b, SLcomplex_log (c, a)));
-}
-
-static double *complex_dpow (double *c, double *a, double b)
-{
- SLcomplex_log (c, a);
- c[0] *= b;
- c[1] *= b;
- return SLcomplex_exp (c, c);
-}
-
-static double *dcomplex_pow (double *c, double a, double *b)
-{
- a = log (a);
- c[0] = a * b[0];
- c[1] = a * b[1];
- return SLcomplex_exp (c, c);
-}
-
-double SLcomplex_abs (double *z)
-{
- return SLmath_hypot (z[0], z[1]);
-}
-
-/* It appears that FORTRAN assumes that the branch cut for the log function
- * is along the -x axis. So, use this for atan2:
- */
-static double my_atan2 (double y, double x)
-{
- double val;
-
- val = atan (y/x);
-
- if (x >= 0)
- return val; /* I, IV */
-
- if (y <= 0) /* III */
- return val - PI;
-
- return PI + val; /* II */
-}
-
-static void polar_form (double *r, double *theta, double *z)
-{
- double x, y;
-
- *r = SLcomplex_abs (z);
-
- x = z[0];
- y = z[1];
-
- if (x == 0.0)
- {
- if (y >= 0)
- *theta = 0.5 * PI;
- else
- *theta = 1.5 * PI;
- }
- else *theta = my_atan2 (y, x);
-}
-
-double *SLcomplex_sin (double *sinz, double *z)
-{
- double x, y;
-
- x = z[0]; y = z[1];
- sinz[0] = sin (x) * cosh (y);
- sinz[1] = cos (x) * sinh (y);
- return sinz;
-}
-
-double *SLcomplex_cos (double *cosz, double *z)
-{
- double x, y;
-
- x = z[0]; y = z[1];
- cosz[0] = cos (x) * cosh (y);
- cosz[1] = -sin (x) * sinh (y);
- return cosz;
-}
-
-double *SLcomplex_exp (double *expz, double *z)
-{
- double r, i;
-
- r = exp (z[0]);
- i = z[1];
- expz[0] = r * cos (i);
- expz[1] = r * sin (i);
- return expz;
-}
-
-double *SLcomplex_log (double *logz, double *z)
-{
- double r, theta;
-
- polar_form (&r, &theta, z); /* log R.e^(ix) = log R + ix */
- logz[0] = log(r);
- logz[1] = theta;
- return logz;
-}
-
-double *SLcomplex_log10 (double *log10z, double *z)
-{
- double l10 = log (10.0);
- (void) SLcomplex_log (log10z, z);
- log10z[0] = log10z[0] / l10;
- log10z[1] = log10z[1] / l10;
- return log10z;
-}
-
-double *SLcomplex_sqrt (double *sqrtz, double *z)
-{
- double r, x, y;
-
- x = z[0];
- y = z[1];
-
- r = SLmath_hypot (x, y);
-
- if (r == 0.0)
- {
- sqrtz [0] = sqrtz [1] = 0.0;
- return sqrtz;
- }
-
- if (x >= 0.0)
- {
- x = sqrt (0.5 * (r + x));
- y = 0.5 * y / x;
- }
- else
- {
- r = sqrt (0.5 * (r - x));
- x = 0.5 * y / r;
- y = r;
-
- if (x < 0.0)
- {
- x = -x;
- y = -y;
- }
- }
-
- sqrtz[0] = x;
- sqrtz[1] = y;
-
- return sqrtz;
-}
-
-double *SLcomplex_tan (double *tanz, double *z)
-{
- double x, y, invden;
-
- x = 2 * z[0];
- y = 2 * z[1];
- invden = 1.0 / (cos (x) + cosh (y));
- tanz[0] = invden * sin (x);
- tanz[1] = invden * sinh (y);
- return tanz;
-}
-
-/* Utility Function */
-static void compute_alpha_beta (double *z, double *alpha, double *beta)
-{
- double x, y, a, b;
-
- x = z[0];
- y = z[1];
- a = 0.5 * SLmath_hypot (x + 1, y);
- b = 0.5 * SLmath_hypot (x - 1, y);
-
- *alpha = a + b;
- *beta = a - b;
-}
-
-double *SLcomplex_asin (double *asinz, double *z)
-{
- double alpha, beta;
-
- compute_alpha_beta (z, &alpha, &beta);
- asinz[0] = asin (beta);
- asinz[1] = log (alpha + sqrt (alpha * alpha - 1));
- return asinz;
-}
-
-double *SLcomplex_acos (double *acosz, double *z)
-{
- double alpha, beta;
-
- compute_alpha_beta (z, &alpha, &beta);
- acosz[0] = acos (beta);
- acosz[1] = -log (alpha + sqrt (alpha * alpha - 1));
- return acosz;
-}
-
-double *SLcomplex_atan (double *atanz, double *z)
-{
- double x, y;
- double z1[2], z2[2];
-
- x = z[0]; y = z[1];
- z1[0] = x;
- z1[1] = 1 + y;
- z2[0] = -x;
- z2[1] = 1 - y;
-
- SLcomplex_log (z1, SLcomplex_divide (z2, z1, z2));
- atanz[0] = -0.5 * z1[1];
- atanz[1] = 0.5 * z1[0];
-
- return atanz;
-}
-
-double *SLcomplex_sinh (double *sinhz, double *z)
-{
- double x, y;
- x = z[0]; y = z[1];
- sinhz[0] = sinh (x) * cos (y);
- sinhz[1] = cosh (x) * sin (y);
- return sinhz;
-}
-
-double *SLcomplex_cosh (double *coshz, double *z)
-{
- double x, y;
- x = z[0]; y = z[1];
- coshz[0] = cosh (x) * cos (y);
- coshz[1] = sinh (x) * sin (y);
- return coshz;
-}
-
-double *SLcomplex_tanh (double *tanhz, double *z)
-{
- double x, y, invden;
- x = 2 * z[0];
- y = 2 * z[1];
- invden = 1.0 / (cosh (x) + cos (y));
- tanhz[0] = invden * sinh (x);
- tanhz[1] = invden * sin (y);
- return tanhz;
-}
-#if 0
-static double *not_implemented (char *fun, double *p)
-{
- SLang_verror (SL_NOT_IMPLEMENTED, "%s for complex numbers has not been implemented",
- fun);
- *p = -1.0;
- return p;
-}
-#endif
-/* Use: asinh(z) = -i asin(iz) */
-double *SLcomplex_asinh (double *asinhz, double *z)
-{
- double iz[2];
-
- iz[0] = -z[1];
- iz[1] = z[0];
-
- (void) SLcomplex_asin (iz, iz);
- asinhz[0] = iz[1];
- asinhz[1] = -iz[0];
-
- return asinhz;
-}
-
-/* Use: acosh (z) = i acos(z) */
-double *SLcomplex_acosh (double *acoshz, double *z)
-{
- double iz[2];
-
- (void) SLcomplex_acos (iz, z);
- acoshz[0] = -iz[1];
- acoshz[1] = iz[0];
-
- return acoshz;
-}
-
-/* Use: atanh(z) = -i atan(iz) */
-double *SLcomplex_atanh (double *atanhz, double *z)
-{
- double iz[2];
-
- iz[0] = -z[1];
- iz[1] = z[0];
-
- (void) SLcomplex_atan (iz, iz);
- atanhz[0] = iz[1];
- atanhz[1] = -iz[0];
-
- return atanhz;
-}
-
-static int complex_binary_result (int op, unsigned char a, unsigned char b,
- unsigned char *c)
-{
- (void) a; (void) b;
-
- switch (op)
- {
- default:
- case SLANG_POW:
- case SLANG_PLUS:
- case SLANG_MINUS:
- case SLANG_TIMES:
- case SLANG_DIVIDE:
- *c = SLANG_COMPLEX_TYPE;
- break;
-
- case SLANG_EQ:
- case SLANG_NE:
- *c = SLANG_CHAR_TYPE;
- break;
- }
- return 1;
-}
-
-static int complex_complex_binary (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- char *ic;
- double *a, *b, *c;
- unsigned int n, n_max;
- unsigned int da, db;
-
- (void) a_type;
- (void) b_type;
-
- a = (double *) ap;
- b = (double *) bp;
- c = (double *) cp;
- ic = (char *) cp;
-
- if (na == 1) da = 0; else da = 2;
- if (nb == 1) db = 0; else db = 2;
-
- if (na > nb) n_max = na; else n_max = nb;
- n_max = 2 * n_max;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_PLUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = a[0] + b[0];
- c[n + 1] = a[1] + b[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_MINUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = a[0] - b[0];
- c[n + 1] = a[1] - b[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_TIMES:
- for (n = 0; n < n_max; n += 2)
- {
- SLcomplex_times (c + n, a, b);
- a += da; b += db;
- }
- break;
-
- case SLANG_DIVIDE: /* / */
- for (n = 0; n < n_max; n += 2)
- {
- if ((b[0] == 0.0) && (b[1] == 0.0))
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- SLcomplex_divide (c + n, a, b);
- a += da; b += db;
- }
- break;
-
- case SLANG_EQ: /* == */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((a[0] == b[0]) && (a[1] == b[1]));
- a += da; b += db;
- }
- break;
-
- case SLANG_NE: /* != */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((a[0] != b[0]) || (a[1] != b[1]));
- a += da; b += db;
- }
- break;
-
- case SLANG_POW:
- for (n = 0; n < n_max; n += 2)
- {
- SLcomplex_pow (c + n, a, b);
- a += da; b += db;
- }
- break;
-
- }
-
- return 1;
-}
-
-static int complex_double_binary (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- char *ic;
- double *a, *b, *c;
- unsigned int n, n_max;
- unsigned int da, db;
-
- (void) a_type;
- (void) b_type;
-
- a = (double *) ap;
- b = (double *) bp;
- c = (double *) cp;
- ic = (char *) cp;
-
- if (na == 1) da = 0; else da = 2;
- if (nb == 1) db = 0; else db = 1;
-
- if (na > nb) n_max = na; else n_max = nb;
- n_max = 2 * n_max;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_PLUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = a[0] + b[0];
- c[n + 1] = a[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_MINUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = a[0] - b[0];
- c[n + 1] = a[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_TIMES:
- for (n = 0; n < n_max; n += 2)
- {
- double b0 = b[0];
- c[n] = a[0] * b0;
- c[n + 1] = a[1] * b0;
- a += da; b += db;
- }
- break;
-
- case SLANG_DIVIDE: /* / */
- for (n = 0; n < n_max; n += 2)
- {
- double b0 = b[0];
- if (b0 == 0.0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- c[n] = a[0] / b0;
- c[n + 1] = a[1] / b0;
- a += da; b += db;
- }
- break;
-
- case SLANG_EQ: /* == */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((a[0] == b[0]) && (a[1] == 0.0));
- a += da; b += db;
- }
- break;
-
- case SLANG_NE: /* != */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((a[0] != b[0]) || (a[1] != 0.0));
- a += da; b += db;
- }
- break;
-
- case SLANG_POW:
- for (n = 0; n < n_max; n += 2)
- {
- complex_dpow (c + n, a, b[0]);
- a += da; b += db;
- }
- break;
- }
-
- return 1;
-}
-
-static int double_complex_binary (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- char *ic;
- double *a, *b, *c;
- unsigned int n, n_max;
- unsigned int da, db;
-
- (void) a_type;
- (void) b_type;
-
- a = (double *) ap;
- b = (double *) bp;
- c = (double *) cp;
- ic = (char *) cp;
-
- if (na == 1) da = 0; else da = 1;
- if (nb == 1) db = 0; else db = 2;
-
- if (na > nb) n_max = na; else n_max = nb;
- n_max = 2 * n_max;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_PLUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = a[0] + b[0];
- c[n + 1] = b[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_MINUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = a[0] - b[0];
- c[n + 1] = -b[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_TIMES:
- for (n = 0; n < n_max; n += 2)
- {
- double a0 = a[0];
- c[n] = a0 * b[0];
- c[n + 1] = a0 * b[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_DIVIDE: /* / */
- for (n = 0; n < n_max; n += 2)
- {
- double z[2];
- if ((b[0] == 0.0) && (b[1] == 0.0))
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- z[0] = a[0];
- z[1] = 0.0;
- SLcomplex_divide (c + n, z, b);
- a += da; b += db;
- }
- break;
-
- case SLANG_EQ: /* == */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((a[0] == b[0]) && (0.0 == b[1]));
- a += da; b += db;
- }
- break;
-
- case SLANG_NE: /* != */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((a[0] != b[0]) || (0.0 != b[1]));
- a += da; b += db;
- }
- break;
-
- case SLANG_POW:
- for (n = 0; n < n_max; n += 2)
- {
- dcomplex_pow (c + n, a[0], b);
- a += da; b += db;
- }
- break;
- }
-
- return 1;
-}
-
-static int complex_generic_binary (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- char *ic;
- char *b;
- double *a, *c;
- unsigned int n, n_max;
- unsigned int da, db;
- unsigned int sizeof_b;
- SLang_To_Double_Fun_Type to_double;
-
- if (NULL == (to_double = SLarith_get_to_double_fun (b_type, &sizeof_b)))
- return 0;
-
- (void) a_type;
-
- a = (double *) ap;
- b = (char *) bp;
- c = (double *) cp;
- ic = (char *) cp;
-
- if (na == 1) da = 0; else da = 2;
- if (nb == 1) db = 0; else db = sizeof_b;
-
- if (na > nb) n_max = na; else n_max = nb;
- n_max = 2 * n_max;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_POW:
- for (n = 0; n < n_max; n += 2)
- {
- complex_dpow (c + n, a, to_double((VOID_STAR)b));
- a += da; b += db;
- }
- break;
-
- case SLANG_PLUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = a[0] + to_double((VOID_STAR)b);
- c[n + 1] = a[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_MINUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = a[0] - to_double((VOID_STAR)b);
- c[n + 1] = a[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_TIMES:
- for (n = 0; n < n_max; n += 2)
- {
- double b0 = to_double((VOID_STAR)b);
- c[n] = a[0] * b0;
- c[n + 1] = a[1] * b0;
- a += da; b += db;
- }
- break;
-
- case SLANG_DIVIDE: /* / */
- for (n = 0; n < n_max; n += 2)
- {
- double b0 = to_double((VOID_STAR)b);
- if (b0 == 0)
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- c[n] = a[0] / b0;
- c[n + 1] = a[1] / b0;
- a += da; b += db;
- }
- break;
-
- case SLANG_EQ: /* == */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((a[0] == to_double((VOID_STAR)b)) && (a[1] == 0.0));
- a += da; b += db;
- }
- break;
-
- case SLANG_NE: /* != */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((a[0] != to_double((VOID_STAR)b)) || (a[1] != 0.0));
- a += da; b += db;
- }
- break;
- }
-
- return 1;
-}
-
-static int generic_complex_binary (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- double *b, *c;
- char *a, *ic;
- unsigned int n, n_max;
- unsigned int da, db;
- unsigned int sizeof_a;
- SLang_To_Double_Fun_Type to_double;
-
- if (NULL == (to_double = SLarith_get_to_double_fun (a_type, &sizeof_a)))
- return 0;
-
- (void) b_type;
-
- a = (char *) ap;
- b = (double *) bp;
- c = (double *) cp;
- ic = (char *) cp;
-
- if (na == 1) da = 0; else da = sizeof_a;
- if (nb == 1) db = 0; else db = 2;
-
- if (na > nb) n_max = na; else n_max = nb;
- n_max = 2 * n_max;
-
- switch (op)
- {
- default:
- return 0;
- case SLANG_POW:
- for (n = 0; n < n_max; n += 2)
- {
- dcomplex_pow (c + n, to_double((VOID_STAR)a), b);
- a += da; b += db;
- }
- break;
-
- case SLANG_PLUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = to_double((VOID_STAR)a) + b[0];
- c[n + 1] = b[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_MINUS:
- for (n = 0; n < n_max; n += 2)
- {
- c[n] = to_double((VOID_STAR)a) - b[0];
- c[n + 1] = -b[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_TIMES:
- for (n = 0; n < n_max; n += 2)
- {
- double a0 = to_double((VOID_STAR)a);
- c[n] = a0 * b[0];
- c[n + 1] = a0 * b[1];
- a += da; b += db;
- }
- break;
-
- case SLANG_DIVIDE: /* / */
- for (n = 0; n < n_max; n += 2)
- {
- double z[2];
- if ((b[0] == 0.0) && (b[1] == 0.0))
- {
- SLang_Error = SL_DIVIDE_ERROR;
- return -1;
- }
- z[0] = to_double((VOID_STAR)a);
- z[1] = 0.0;
- SLcomplex_divide (c + n, z, b);
- a += da; b += db;
- }
- break;
-
- case SLANG_EQ: /* == */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((to_double((VOID_STAR)a) == b[0]) && (0.0 == b[1]));
- a += da; b += db;
- }
- break;
-
- case SLANG_NE: /* != */
- for (n = 0; n < n_max; n += 2)
- {
- ic[n/2] = ((to_double((VOID_STAR)a) != b[0]) || (0.0 != b[1]));
- a += da; b += db;
- }
- break;
- }
-
- return 1;
-}
-
-static int complex_unary_result (int op, unsigned char a, unsigned char *b)
-{
- (void) a;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_PLUSPLUS:
- case SLANG_MINUSMINUS:
- case SLANG_CHS:
- case SLANG_MUL2:
- *b = SLANG_COMPLEX_TYPE;
- break;
-
- case SLANG_SQR: /* |Real|^2 + |Imag|^2 ==> double */
- case SLANG_ABS: /* |z| ==> double */
- *b = SLANG_DOUBLE_TYPE;
- break;
-
- case SLANG_SIGN:
- *b = SLANG_INT_TYPE;
- break;
- }
- return 1;
-}
-
-static int complex_unary (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- VOID_STAR bp)
-{
- unsigned int n;
- double *a, *b;
- int *ic;
-
- (void) a_type;
-
- a = (double *) ap;
- b = (double *) bp;
- ic = (int *) bp;
-
- na = 2 * na;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_PLUSPLUS:
- for (n = 0; n < na; n += 2) b[n] = (a[n] + 1);
- break;
- case SLANG_MINUSMINUS:
- for (n = 0; n < na; n += 2) b[n] = (a[n] - 1);
- break;
- case SLANG_CHS:
- for (n = 0; n < na; n += 2)
- {
- b[n] = -(a[n]);
- b[n + 1] = -(a[n + 1]);
- }
- break;
- case SLANG_SQR: /* |Real|^2 + |Imag|^2 ==> double */
- for (n = 0; n < na; n += 2)
- b[n/2] = (a[n] * a[n] + a[n + 1] * a[n + 1]);
- break;
-
- case SLANG_MUL2:
- for (n = 0; n < na; n += 2)
- {
- b[n] = (2 * a[n]);
- b[n + 1] = (2 * a[n + 1]);
- }
- break;
-
- case SLANG_ABS: /* |z| ==> double */
- for (n = 0; n < na; n += 2)
- b[n/2] = SLcomplex_abs (a + n);
- break;
-
- case SLANG_SIGN:
- /* Another creative extension. Lets return an integer which indicates
- * whether the complex number is in the upperhalf plane or not.
- */
- for (n = 0; n < na; n += 2)
- {
- if (a[n + 1] < 0.0) ic[n/2] = -1;
- else if (a[n + 1] > 0.0) ic[n/2] = 1;
- else ic[n/2] = 0;
- }
- break;
- }
-
- return 1;
-}
-
-static int
-complex_typecast (unsigned char from_type, VOID_STAR from, unsigned int num,
- unsigned char to_type, VOID_STAR to)
-{
- double *z;
- double *d;
- char *i;
- unsigned int n;
- unsigned int sizeof_i;
- SLang_To_Double_Fun_Type to_double;
-
- (void) to_type;
-
- z = (double *) to;
-
- switch (from_type)
- {
- default:
- if (NULL == (to_double = SLarith_get_to_double_fun (from_type, &sizeof_i)))
- return 0;
- i = (char *) from;
- for (n = 0; n < num; n++)
- {
- *z++ = to_double ((VOID_STAR) i);
- *z++ = 0.0;
-
- i += sizeof_i;
- }
- break;
-
- case SLANG_DOUBLE_TYPE:
- d = (double *) from;
- for (n = 0; n < num; n++)
- {
- *z++ = d[n];
- *z++ = 0.0;
- }
- break;
- }
-
- return 1;
-}
-
-static void complex_destroy (unsigned char type, VOID_STAR ptr)
-{
- (void) type;
- SLfree ((char *)*(double **) ptr);
-}
-
-static int complex_push (unsigned char type, VOID_STAR ptr)
-{
- double *z;
-
- (void) type;
- z = *(double **) ptr;
- return SLang_push_complex (z[0], z[1]);
-}
-
-static int complex_pop (unsigned char type, VOID_STAR ptr)
-{
- double *z;
-
- (void) type;
- z = *(double **) ptr;
- return SLang_pop_complex (&z[0], &z[1]);
-}
-
-int _SLinit_slcomplex (void)
-{
- SLang_Class_Type *cl;
- unsigned char *types;
-
- if (NULL == (cl = SLclass_allocate_class ("Complex_Type")))
- return -1;
-
- (void) SLclass_set_destroy_function (cl, complex_destroy);
- (void) SLclass_set_push_function (cl, complex_push);
- (void) SLclass_set_pop_function (cl, complex_pop);
-
- if (-1 == SLclass_register_class (cl, SLANG_COMPLEX_TYPE, 2 * sizeof (double),
- SLANG_CLASS_TYPE_VECTOR))
- return -1;
-
- types = _SLarith_Arith_Types;
- while (*types != SLANG_DOUBLE_TYPE)
- {
- unsigned char t = *types++;
-
- if ((-1 == SLclass_add_binary_op (t, SLANG_COMPLEX_TYPE, generic_complex_binary, complex_binary_result))
- || (-1 == SLclass_add_binary_op (SLANG_COMPLEX_TYPE, t, complex_generic_binary, complex_binary_result))
- || (-1 == (SLclass_add_typecast (t, SLANG_COMPLEX_TYPE, complex_typecast, 1))))
- return -1;
- }
-
- if ((-1 == (SLclass_add_binary_op (SLANG_COMPLEX_TYPE, SLANG_COMPLEX_TYPE, complex_complex_binary, complex_binary_result)))
- || (-1 == (SLclass_add_binary_op (SLANG_COMPLEX_TYPE, SLANG_DOUBLE_TYPE, complex_double_binary, complex_binary_result)))
- || (-1 == (SLclass_add_binary_op (SLANG_DOUBLE_TYPE, SLANG_COMPLEX_TYPE, double_complex_binary, complex_binary_result)))
- || (-1 == (SLclass_add_unary_op (SLANG_COMPLEX_TYPE, complex_unary, complex_unary_result)))
- || (-1 == (SLclass_add_typecast (SLANG_DOUBLE_TYPE, SLANG_COMPLEX_TYPE, complex_typecast, 1))))
- return -1;
-
- return 0;
-}
-
-#endif /* if SLANG_HAS_COMPLEX */
-
diff --git a/mdk-stage1/slang/slcompat.c b/mdk-stage1/slang/slcompat.c
deleted file mode 100644
index 5aa122483..000000000
--- a/mdk-stage1/slang/slcompat.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* These functions are provided for backward compatibility and are obsolete.
- * Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-/* Compatibility */
-int SLang_init_slunix (void)
-{
- if ((-1 == SLang_init_posix_dir ())
- || (-1 == SLang_init_posix_process ())
- || (-1 == SLdefine_for_ifdef ("__SLUNIX__")))
- return -1;
-
- return 0;
-}
-
-int SLang_init_slfile (void)
-{
- if ((-1 == SLang_init_stdio ())
- || (-1 == SLang_init_posix_dir ())
- || (-1 == SLdefine_for_ifdef("__SLFILE__")))
- return -1;
-
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slcurses.c b/mdk-stage1/slang/slcurses.c
deleted file mode 100644
index f1212afc8..000000000
--- a/mdk-stage1/slang/slcurses.c
+++ /dev/null
@@ -1,972 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include <signal.h>
-#include <errno.h>
-
-#include "slang.h"
-#include "_slang.h"
-#include "slcurses.h"
-
-/* This file is meant to implement a primitive curses implementation in
- * terms of SLsmg calls. The fact is that the interfaces are sufficiently
- * different that a 100% emulation is not possible.
- */
-
-SLcurses_Window_Type *SLcurses_Stdscr;
-int SLcurses_Esc_Delay = 150; /* 0.15 seconds */
-SLtt_Char_Type SLcurses_Acs_Map [128];
-int SLcurses_Is_Endwin = 1;
-int SLcurses_Num_Colors = 8;
-
-static void blank_line (SLsmg_Char_Type *b, unsigned int len, SLsmg_Char_Type color)
-{
- SLsmg_Char_Type *bmax;
-
- bmax = b + len;
- color = SLSMG_BUILD_CHAR(' ', color);
-
- while (b < bmax) *b++ = color;
-}
-
-static int va_mvprintw (SLcurses_Window_Type *w, int r, int c, int do_move,
- char *fmt, va_list ap)
-{
- char buf[1024];
-
- if (do_move) SLcurses_wmove (w, r, c);
-
- (void) _SLvsnprintf (buf, sizeof(buf), fmt, ap);
-
- SLcurses_waddnstr (w, buf, -1);
- return 0;
-}
-
-int SLcurses_mvprintw (int r, int c, char *fmt, ...)
-{
- va_list ap;
-
- va_start(ap, fmt);
- va_mvprintw (SLcurses_Stdscr, r, c, 1, fmt, ap);
- va_end(ap);
-
- return 0;
-}
-
-int SLcurses_mvwprintw (SLcurses_Window_Type *w, int r, int c, char *fmt, ...)
-{
- va_list ap;
-
- va_start(ap, fmt);
- va_mvprintw (w, r, c, 1, fmt, ap);
- va_end(ap);
-
- return 0;
-}
-
-int SLcurses_wprintw (SLcurses_Window_Type *w, char *fmt, ...)
-{
- va_list ap;
-
- va_start(ap, fmt);
- va_mvprintw (w, 0, 0, 0, fmt, ap);
- va_end(ap);
-
- return 0;
-}
-
-int SLcurses_printw (char *fmt, ...)
-{
- va_list ap;
-
- va_start(ap, fmt);
- va_mvprintw (SLcurses_Stdscr, 0, 0, 0, fmt, ap);
- va_end(ap);
-
- return 0;
-}
-
-int SLcurses_nil (void)
-{
- return 0;
-}
-
-int SLcurses_has_colors(void)
-{
- return SLtt_Use_Ansi_Colors;
-}
-
-int SLcurses_nodelay (SLcurses_Window_Type *w, int onoff)
-{
- w->delay_off = (onoff ? 0 : -1);
- return 0;
-}
-
-int SLcurses_wgetch (SLcurses_Window_Type *w)
-{
- if (w == NULL)
- return ERR;
-
- SLcurses_wrefresh (w);
-
- if ((w->delay_off == -1) ||
- SLang_input_pending (w->delay_off))
- {
- if (w->use_keypad)
- {
- int ch = SLang_getkey ();
- if (ch == '\033')
- {
- if (0 == SLang_input_pending (ESCDELAY / 100))
- return ch;
- }
- else if (ch == 0xFFFF) return ERR;
- SLang_ungetkey (ch);
- return SLkp_getkey ();
- }
- return SLang_getkey ();
- }
-
- return ERR;
-}
-
-int SLcurses_getch (void)
-{
- return SLcurses_wgetch (SLcurses_Stdscr);
-}
-
-/* This is a super hack. That fact is that SLsmg and curses
- * are incompatible.
- */
-static unsigned char Color_Objects[256];
-
-static unsigned int map_attr_to_object (SLtt_Char_Type attr)
-{
- unsigned int obj;
- SLtt_Char_Type at;
-
- obj = (attr >> 8) & 0xFF;
-
- if (SLtt_Use_Ansi_Colors)
- {
- if (Color_Objects[obj] != 0) return obj;
-
- at = SLtt_get_color_object (obj & 0xF);
-
- if (attr & A_BOLD) at |= SLTT_BOLD_MASK;
- if (attr & A_UNDERLINE) at |= SLTT_ULINE_MASK;
- if (attr & A_REVERSE) at |= SLTT_REV_MASK;
-
- SLtt_set_color_object (obj, at);
-
- Color_Objects[obj] = 1;
- }
- else obj = obj & 0xF0;
-
- return obj;
-
-}
-
-int SLcurses_start_color (void)
-{
- int f, b;
- int obj;
-
- if (SLtt_Use_Ansi_Colors == 0) return -1;
-
- obj = 0;
- for (f = 0; f < 16; f++)
- {
- for (b = 0; b < 16; b++)
- {
- obj++;
- SLtt_set_color_fgbg (obj, f, b);
- }
- }
- return 0;
-}
-
-#ifdef SIGINT
-static void sigint_handler (int sig)
-{
- SLang_reset_tty ();
- SLsmg_reset_smg ();
- exit (sig);
-}
-#endif
-
-/* Values are assumed to be 0, 1, 2. This fact is exploited */
-static int TTY_State;
-
-static int init_tty (int suspend_ok)
-{
- if (-1 == SLang_init_tty (-1, 1, 0))
- return -1;
-
-#ifdef REAL_UNIX_SYSTEM
- if (suspend_ok) SLtty_set_suspend_state (1);
-#endif
- return 0;
-}
-
-int SLcurses_raw (void)
-{
- TTY_State = 1;
- return init_tty (0);
-}
-
-int SLcurses_cbreak (void)
-{
- TTY_State = 2;
- return init_tty (1);
-}
-
-#if defined(SIGTSTP) && defined(SIGSTOP)
-static void sigtstp_handler (int sig)
-{
- sig = errno;
-
- SLsmg_suspend_smg ();
-
- if (TTY_State)
- SLang_reset_tty ();
-
- kill(getpid(),SIGSTOP);
-
- SLsmg_resume_smg ();
-
- if (TTY_State) init_tty (TTY_State - 1);
-
- signal (SIGTSTP, sigtstp_handler);
- errno = sig;
-}
-#endif
-
-SLcurses_Window_Type *SLcurses_initscr (void)
-{
- SLcurses_Is_Endwin = 0;
- SLsmg_Newline_Behavior = SLSMG_NEWLINE_MOVES;
- SLtt_get_terminfo ();
-
-#if !defined(IBMPC_SYSTEM) && !defined(VMS)
- if (-1 == (SLcurses_Num_Colors = SLtt_tgetnum ("Co")))
-#endif
- SLcurses_Num_Colors = 8;
-
- if ((-1 == SLkp_init ())
- || (-1 == SLcurses_cbreak ())
- || (NULL == (SLcurses_Stdscr = SLcurses_newwin (0, 0, 0, 0)))
- || (-1 == SLsmg_init_smg ()))
- {
- SLang_doerror (NULL);
- SLang_exit_error ("SLcurses_initscr: init failed\n");
- return NULL;
- }
-
-#ifdef SIGINT
- signal (SIGINT, sigint_handler);
-#endif
-
-#if defined(SIGTSTP) && defined(SIGSTOP)
- signal (SIGTSTP, sigtstp_handler);
-#endif
-
- SLtt_set_mono (A_BOLD >> 8, NULL, SLTT_BOLD_MASK);
- SLtt_set_mono (A_UNDERLINE >> 8, NULL, SLTT_ULINE_MASK);
- SLtt_set_mono (A_REVERSE >> 8, NULL, SLTT_REV_MASK);
- /* SLtt_set_mono (A_BLINK >> 8, NULL, SLTT_BLINK_MASK); */
- SLtt_set_mono ((A_BOLD|A_UNDERLINE) >> 8, NULL, SLTT_ULINE_MASK|SLTT_BOLD_MASK);
- SLtt_set_mono ((A_REVERSE|A_UNDERLINE) >> 8, NULL, SLTT_ULINE_MASK|SLTT_REV_MASK);
-
- if (SLtt_Has_Alt_Charset)
- {
- SLcurses_Acs_Map[SLSMG_ULCORN_CHAR] = SLSMG_ULCORN_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_URCORN_CHAR] = SLSMG_URCORN_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_LLCORN_CHAR] = SLSMG_LLCORN_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_LRCORN_CHAR] = SLSMG_LRCORN_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_UTEE_CHAR] = SLSMG_UTEE_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_DTEE_CHAR] = SLSMG_DTEE_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_LTEE_CHAR] = SLSMG_LTEE_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_RTEE_CHAR] = SLSMG_RTEE_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_VLINE_CHAR] = SLSMG_VLINE_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_HLINE_CHAR] = SLSMG_HLINE_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_PLUS_CHAR] = SLSMG_PLUS_CHAR | A_ALTCHARSET;
- SLcurses_Acs_Map[SLSMG_CKBRD_CHAR] = SLSMG_CKBRD_CHAR | A_ALTCHARSET;
- }
- else
- {
- /* ugly defaults to use on terminals which don't support graphics */
- SLcurses_Acs_Map[SLSMG_ULCORN_CHAR] = '+';
- SLcurses_Acs_Map[SLSMG_URCORN_CHAR] = '+';
- SLcurses_Acs_Map[SLSMG_LLCORN_CHAR] = '+';
- SLcurses_Acs_Map[SLSMG_LRCORN_CHAR] = '+';
- SLcurses_Acs_Map[SLSMG_UTEE_CHAR] = '+';
- SLcurses_Acs_Map[SLSMG_DTEE_CHAR] = '+';
- SLcurses_Acs_Map[SLSMG_LTEE_CHAR] = '+';
- SLcurses_Acs_Map[SLSMG_RTEE_CHAR] = '+';
- SLcurses_Acs_Map[SLSMG_VLINE_CHAR] = '|';
- SLcurses_Acs_Map[SLSMG_HLINE_CHAR] = '-';
- SLcurses_Acs_Map[SLSMG_PLUS_CHAR] = '+';
- SLcurses_Acs_Map[SLSMG_CKBRD_CHAR] = '#';
- }
-
- return SLcurses_Stdscr;
-}
-
-int SLcurses_wattrset (SLcurses_Window_Type *w, SLtt_Char_Type ch)
-{
- unsigned int obj;
-
- obj = map_attr_to_object (ch);
- w->color = obj;
- w->attr = ch;
- return 0;
-}
-
-int SLcurses_wattroff (SLcurses_Window_Type *w, SLtt_Char_Type ch)
-{
- if (SLtt_Use_Ansi_Colors)
- return SLcurses_wattrset (w, 0);
-
- w->attr &= ~ch;
- return SLcurses_wattrset (w, w->attr);
-}
-
-int SLcurses_wattron (SLcurses_Window_Type *w, SLtt_Char_Type ch)
-{
- if (SLtt_Use_Ansi_Colors)
- return SLcurses_wattrset (w, ch);
-
- w->attr |= ch;
- return SLcurses_wattrset (w, w->attr);
-}
-
-int SLcurses_delwin (SLcurses_Window_Type *w)
-{
- if (w == NULL) return 0;
- if (w->lines != NULL)
- {
- SLsmg_Char_Type **lines = w->lines;
- if (w->is_subwin == 0)
- {
- unsigned int r, rmax;
-
- rmax = w->nrows;
- for (r = 0; r < rmax; r++)
- {
- SLfree ((char *)lines[r]);
- }
- }
-
- SLfree ((char *)lines);
- }
-
- SLfree ((char *)w);
- if (w == SLcurses_Stdscr)
- SLcurses_Stdscr = NULL;
- return 0;
-}
-
-SLcurses_Window_Type *SLcurses_newwin (unsigned int nrows, unsigned int ncols,
- unsigned int r, unsigned int c)
-{
- SLcurses_Window_Type *win;
- SLsmg_Char_Type **lines;
-
- if (r >= (unsigned int) SLtt_Screen_Rows)
- return NULL;
- if (c >= (unsigned int) SLtt_Screen_Cols)
- return NULL;
-
- if (NULL == (win = (SLcurses_Window_Type *) SLmalloc (sizeof (SLcurses_Window_Type))))
- return NULL;
-
- SLMEMSET ((char *) win, 0, sizeof (SLcurses_Window_Type));
-
- if (nrows == 0)
- nrows = (unsigned int) SLtt_Screen_Rows - r;
- if (ncols == 0)
- ncols = (unsigned int) SLtt_Screen_Cols - c;
-
- lines = (SLsmg_Char_Type **) SLmalloc (nrows * sizeof (SLsmg_Char_Type *));
- if (lines == NULL)
- {
- SLcurses_delwin (win);
- return NULL;
- }
-
- SLMEMSET ((char *) lines, 0, nrows * sizeof (SLsmg_Char_Type *));
-
- win->lines = lines;
- win->scroll_max = win->nrows = nrows;
- win->ncols = ncols;
- win->_begy = r;
- win->_begx = c;
- win->_maxx = (c + ncols) - 1;
- win->_maxy = (r + nrows) - 1;
- win->modified = 1;
- win->delay_off = -1;
-
- for (r = 0; r < nrows; r++)
- {
- SLsmg_Char_Type *b;
-
- b = (SLsmg_Char_Type *) SLmalloc (ncols * sizeof (SLsmg_Char_Type));
- if (b == NULL)
- {
- SLcurses_delwin (win);
- return NULL;
- }
- lines [r] = b;
- blank_line (b, ncols, 0);
- }
-
- return win;
-}
-
-int SLcurses_wmove (SLcurses_Window_Type *win, unsigned int r, unsigned int c)
-{
- if (win == NULL) return -1;
- win->_cury = r;
- win->_curx = c;
- win->modified = 1;
- return 0;
-}
-
-static int do_newline (SLcurses_Window_Type *w)
-{
- w->_curx = 0;
- w->_cury += 1;
- if (w->_cury >= w->scroll_max)
- {
- w->_cury = w->scroll_max - 1;
- if (w->scroll_ok)
- SLcurses_wscrl (w, 1);
- }
-
- return 0;
-}
-
-int SLcurses_waddch (SLcurses_Window_Type *win, SLtt_Char_Type attr)
-{
- SLsmg_Char_Type *b, ch;
- SLsmg_Char_Type color;
-
- if (win == NULL) return -1;
-
- if (win->_cury >= win->nrows)
- {
- /* Curses seems to move current postion to top of window. */
- win->_cury = win->_curx = 0;
- return -1;
- }
-
- win->modified = 1;
-
- ch = SLSMG_EXTRACT_CHAR(attr);
-
- if (attr == ch)
- color = win->color;
- else
- {
- /* hack to pick up the default color for graphics chars */
- if (((attr & A_COLOR) == 0) && ((attr & A_ALTCHARSET) != 0))
- {
- /* FIXME: priority=medium: Use SLSMG_?? instead of << */
- attr |= win->color << 8;
- }
- color = map_attr_to_object (attr);
- }
-
- if (ch < ' ')
- {
- if (ch == '\n')
- {
- SLcurses_wclrtoeol (win);
- return do_newline (win);
- }
-
- if (ch == '\r')
- {
- win->_curx = 0;
- return 0;
- }
-
- if (ch == '\b')
- {
- if (win->_curx > 0)
- win->_curx--;
-
- return 0;
- }
-
- /* HACK HACK!!!! */
- if (ch == '\t') ch = ' ';
- }
-
- if (win->_curx >= win->ncols)
- do_newline (win);
-
- b = win->lines[win->_cury] + win->_curx;
- *b = SLSMG_BUILD_CHAR(ch,color);
- win->_curx++;
-
- return 0;
-}
-
-int SLcurses_wnoutrefresh (SLcurses_Window_Type *w)
-{
- unsigned int len;
- unsigned int r, c;
- unsigned int i, imax;
-
- if (SLcurses_Is_Endwin)
- {
- if (TTY_State) init_tty (TTY_State - 1);
- SLsmg_resume_smg ();
- SLcurses_Is_Endwin = 0;
- }
-
- if (w == NULL)
- {
- SLsmg_refresh ();
- return -1;
- }
-
- if (w->modified == 0)
- return 0;
-
- r = w->_begy;
- c = w->_begx;
-
- len = w->ncols;
- imax = w->nrows;
-
- for (i = 0; i < imax; i++)
- {
- SLsmg_gotorc (r, c);
- SLsmg_write_color_chars (w->lines[i], len);
- r++;
- }
-
- if (w->has_box)
- SLsmg_draw_box(w->_begy, w->_begx, w->nrows, w->ncols);
-
- SLsmg_gotorc (w->_begy + w->_cury, w->_begx + w->_curx);
- w->modified = 0;
- return 0;
-}
-
-int SLcurses_wrefresh (SLcurses_Window_Type *w)
-{
- if (w == NULL)
- return -1;
-
- if (w->modified == 0)
- return 0;
-
- SLcurses_wnoutrefresh (w);
- SLsmg_refresh ();
- return 0;
-}
-
-int SLcurses_wclrtoeol (SLcurses_Window_Type *w)
-{
- SLsmg_Char_Type *b, *bmax;
- SLsmg_Char_Type blank;
-
- if (w == NULL) return -1;
- if (w->_cury >= w->nrows)
- return 0;
-
- w->modified = 1;
-
- blank = SLSMG_BUILD_CHAR(' ',w->color);
-
- b = w->lines[w->_cury];
- bmax = b + w->ncols;
- b += w->_curx;
-
- while (b < bmax) *b++ = blank;
- return 0;
-}
-
-int SLcurses_wclrtobot (SLcurses_Window_Type *w)
-{
- SLsmg_Char_Type *b, *bmax;
- SLsmg_Char_Type blank;
- unsigned int r;
-
- if (w == NULL) return -1;
-
- w->modified = 1;
- blank = SLSMG_BUILD_CHAR(' ',w->color);
- SLcurses_wclrtoeol (w);
- for (r = w->_cury + 1; r < w->nrows; r++)
- {
- b = w->lines [r];
- bmax = b + w->ncols;
-
- while (b < bmax) *b++ = blank;
- }
-
- return 0;
-}
-
-int SLcurses_wscrl (SLcurses_Window_Type *w, int n)
-{
- SLsmg_Char_Type **lines;
- unsigned int r, rmax, rmin, ncols;
- SLsmg_Char_Type color;
-
- if ((w == NULL) || (w->scroll_ok == 0))
- return -1;
-
- w->modified = 1;
-#if 0
- if (w->is_subwin)
- {
- SLang_reset_tty ();
- SLsmg_reset_smg ();
- fprintf (stderr, "\rAttempt to scroll a subwindow\n");
- exit (1);
- }
-#endif
-
- color = w->color;
- ncols = w->ncols;
- lines = w->lines;
- rmax = w->scroll_max;
- rmin = w->scroll_min;
- if (rmax > w->nrows)
- rmax = w->nrows;
- if (rmin >= rmax)
- return 0;
-
- while (n > 0)
- {
- for (r = rmin + 1; r < rmax; r++)
- {
- /* lines[r - 1] = lines[r]; */
- memcpy ((char *)lines[r - 1], (char *)lines[r],
- sizeof (SLsmg_Char_Type) * ncols);
- }
- blank_line (lines[rmax - 1], ncols, color);
- n--;
- }
-
- rmax--;
- while (n < 0)
- {
- for (r = rmax; r > rmin; r--)
- {
- memcpy ((char *)lines[r], (char *)lines[r - 1],
- sizeof (SLsmg_Char_Type) * ncols);
- }
- blank_line (lines[rmin], ncols, color);
- n++;
- }
-
- /* wmove (w, w->nrows - 1, 0); */
- /* wclrtobot (w); */
- return 0;
-}
-
-/* Note: if len is < 0, entire string will be used.
- */
-int SLcurses_waddnstr (SLcurses_Window_Type *w, char *str, int len)
-{
- SLsmg_Char_Type *b;
- SLsmg_Char_Type color;
- unsigned char ch;
- unsigned int nrows, ncols, crow, ccol;
-
- if ((w == NULL)
- || (str == NULL))
- return -1;
-
- w->modified = 1;
- nrows = w->nrows;
- ncols = w->ncols;
- crow = w->_cury;
- ccol = w->_curx;
- color = w->color;
-
- if (w->scroll_max <= nrows)
- nrows = w->scroll_max;
-
- if (crow >= nrows)
- crow = 0; /* wrap back to top */
-
- b = w->lines [crow] + ccol;
-
- while (len && ((ch = (unsigned char) *str++) != 0))
- {
- len--;
-
- if (ch == '\n')
- {
- w->_cury = crow;
- w->_curx = ccol;
- SLcurses_wclrtoeol (w);
- do_newline (w);
- crow = w->_cury;
- ccol = w->_curx;
- b = w->lines[crow];
- continue;
- }
-
- if (ccol >= ncols)
- {
- ccol = 0;
- crow++;
- if (crow >= nrows)
- {
- w->_curx = 0;
- w->_cury = crow;
- do_newline (w);
- crow = w->_cury;
- ccol = w->_curx;
- }
-
- b = w->lines [crow];
- }
-
- if (ch == '\t')
- {
- unsigned int n = ccol;
- n += SLsmg_Tab_Width;
- n = SLsmg_Tab_Width - (n % SLsmg_Tab_Width);
- if (ccol + n > ncols) n = ncols - len;
- ccol += n;
- while (n--)
- *b++ = SLSMG_BUILD_CHAR(' ',color);
- continue;
- }
-
- *b++ = SLSMG_BUILD_CHAR(ch, color);
- ccol++;
- }
-
- w->_curx = ccol;
- w->_cury = crow;
-
- return 0;
-}
-
-/* This routine IS NOT CORRECT. It needs to compute the proper overlap
- * and copy accordingly. Here, I just assume windows are same size.
- */
-#if 0
-int SLcurses_overlay (SLcurses_Window_Type *swin, SLcurses_Window_Type *dwin)
-{
- SLsmg_Char_Type *s, *smax, *d, *dmax;
-
- if ((swin == NULL) || (dwin == NULL))
- return -1;
-
- s = swin->buf;
- smax = swin->bufmax;
- d = dwin->buf;
- dmax = dwin->bufmax;
-
- while ((s < smax) && (d < dmax))
- {
- SLsmg_Char_Type ch = *s++;
- if (SLSMG_EXTRACT_CHAR(ch) != ' ')
- *d = ch;
- d++;
- }
-
- return -1; /* not implemented */
-}
-
-#endif
-
-SLcurses_Window_Type *SLcurses_subwin (SLcurses_Window_Type *orig,
- unsigned int nlines, unsigned int ncols,
- unsigned int begin_y, unsigned int begin_x)
-{
- SLcurses_Window_Type *sw;
- int r, c;
- unsigned int i;
-
- if (orig == NULL)
- return NULL;
-
- sw = (SLcurses_Window_Type *) SLmalloc (sizeof (SLcurses_Window_Type));
- if (sw == NULL)
- return NULL;
-
- SLMEMSET ((char *)sw, 0, sizeof (SLcurses_Window_Type));
-#if 1
- r = begin_y - orig->_begy;
-#else
- r = 1 + ((int)orig->nrows - (int)nlines) / 2;
-#endif
- if (r < 0) r = 0;
- if (r + nlines > orig->nrows) nlines = orig->nrows - r;
-
- c = ((int)orig->ncols - (int)ncols) / 2;
- if (c < 0) c = 0;
- if (c + ncols > orig->ncols) ncols = orig->ncols - c;
-
- sw->scroll_min = 0;
- sw->scroll_max = sw->nrows = nlines;
- sw->ncols = ncols;
- sw->_begy = begin_y;
- sw->_begx = begin_x;
- sw->_maxx = (begin_x + ncols) - 1;
- sw->_maxy = (begin_y + nlines) - 1;
-
- sw->lines = (SLsmg_Char_Type **) SLmalloc (nlines * sizeof (SLsmg_Char_Type *));
- if (sw->lines == NULL)
- {
- SLcurses_delwin (sw);
- return NULL;
- }
-
- for (i = 0; i < nlines; i++)
- {
- sw->lines [i] = orig->lines [r + i] + c;
- }
-
- sw->is_subwin = 1;
- return sw;
-}
-
-int SLcurses_wclear (SLcurses_Window_Type *w)
-{
- unsigned int i;
-
- if (w != NULL) w->modified = 1;
- for (i=0; i < w->nrows; i++)
- blank_line (w->lines[i], w->ncols, w->color);
- return 0;
-}
-
-int SLcurses_wdelch (SLcurses_Window_Type *w)
-{
- SLsmg_Char_Type *p, *p1, *pmax;
-
- p = w->lines[w->_cury];
- pmax = p + w->ncols;
- p += w->_curx;
- p1 = p + 1;
-
- while (p1 < pmax)
- {
- *p = *p1;
- p = p1;
- p1++;
- }
-
- if (p < pmax)
- *p = SLSMG_BUILD_CHAR(' ',w->color);
-
- w->modified = 1;
- return 0;
-}
-
-int SLcurses_winsch (SLcurses_Window_Type *w, int ch)
-{
- SLsmg_Char_Type *p, *p1, *pmax;
-
- p = w->lines[w->_cury];
- pmax = p + w->ncols;
- p += w->_curx;
- p1 = pmax - 1;
-
- while (pmax > p)
- {
- *pmax = *p1;
- pmax = p1;
- p1--;
- }
-
- if (p < pmax)
- *p = SLSMG_BUILD_CHAR(ch, w->color);
-
- w->modified = 1;
- return 0;
-}
-
-int SLcurses_endwin (void)
-{
- SLcurses_Is_Endwin = 1;
- SLsmg_suspend_smg ();
- SLang_reset_tty ();
- return 0;
-}
-
-#if 0
-int SLcurses_mvwscanw (SLcurses_Window_Type *w, unsigned int r, unsigned int c,
- char *fmt, ...)
-{
-#if HAVE_VFSCANF
- int ret;
- va_list ap;
-
- SLcurses_wmove (w, r, c);
- SLcurses_wrefresh (w);
-
- va_start(ap, fmt);
- ret = vfscanf (stdin, fmt, ap);
- va_end(ap);
- return ret;
-#else
- return 0;
-#endif
-}
-
-int SLcurses_wscanw (SLcurses_Window_Type *w, char *fmt, ...)
-{
-#if HAVE_VFSCANF
- va_list ap;
- int ret;
-
- SLcurses_wrefresh (w);
-
- va_start(ap, fmt);
- ret = vfscanf (stdin, fmt, ap);
- va_end(ap);
-
- return ret;
-#else
- return 0;
-#endif
-}
-
-int SLcurses_scanw (char *fmt, ...)
-{
-#ifdef HAVE_VFSCANF
- va_list ap;
- int ret;
-
- SLcurses_wrefresh (SLcurses_Stdscr);
-
- va_start(ap, fmt);
- ret = vfscanf (stdin, fmt, ap);
- va_end(ap);
-
- return ret;
-#else
- return 0;
-#endif
-}
-#endif
-
-int SLcurses_clearok (SLcurses_Window_Type *w, int bf)
-{
- if (bf)
- {
- SLsmg_cls ();
- w->modified = 1;
- }
- return 0;
-}
diff --git a/mdk-stage1/slang/slcurses.h b/mdk-stage1/slang/slcurses.h
deleted file mode 100644
index fa082304f..000000000
--- a/mdk-stage1/slang/slcurses.h
+++ /dev/null
@@ -1,353 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include <stdio.h>
-
-#ifndef SLANG_VERSION
-# include <slang.h>
-#endif
-
-/* This is a temporary hack until lynx is fixed to not include this file. */
-#ifndef LYCURSES_H
-
-typedef struct
-{
- unsigned int _begy, _begx, _maxy, _maxx;
- unsigned int _curx, _cury;
- unsigned int nrows, ncols;
- unsigned int scroll_min, scroll_max;
- SLsmg_Char_Type **lines;
- SLsmg_Char_Type color;
- int is_subwin;
- SLtt_Char_Type attr;
- int delay_off;
- int scroll_ok;
- int modified;
- int has_box;
- int use_keypad;
-}
-SLcurses_Window_Type;
-
-extern int SLcurses_wclrtobot (SLcurses_Window_Type *);
-extern int SLcurses_wscrl (SLcurses_Window_Type *, int);
-extern int SLcurses_wrefresh (SLcurses_Window_Type *);
-extern int SLcurses_delwin (SLcurses_Window_Type *);
-extern int SLcurses_wprintw (SLcurses_Window_Type *, char *, ...);
-extern SLcurses_Window_Type *SLcurses_newwin (unsigned int, unsigned int,
- unsigned int, unsigned int);
-
-extern SLcurses_Window_Type *SLcurses_subwin (SLcurses_Window_Type *,
- unsigned int, unsigned int,
- unsigned int, unsigned int);
-
-extern int SLcurses_wnoutrefresh (SLcurses_Window_Type *);
-extern int SLcurses_wclrtoeol (SLcurses_Window_Type *);
-
-extern int SLcurses_wmove (SLcurses_Window_Type *, unsigned int, unsigned int);
-extern int SLcurses_waddch (SLcurses_Window_Type *, SLtt_Char_Type);
-extern int SLcurses_waddnstr (SLcurses_Window_Type *, char *, int);
-
-#define waddnstr SLcurses_waddnstr
-#define waddch SLcurses_waddch
-#define waddstr(w,s) waddnstr((w),(s),-1)
-#define addstr(x) waddstr(stdscr, (x))
-#define addnstr(s,n) waddnstr(stdscr,(s),(n))
-#define addch(ch) waddch(stdscr,(ch))
-
-#define mvwaddnstr(w,y,x,s,n) \
- (-1 == wmove((w),(y),(x)) ? -1 : waddnstr((w),(s),(n)))
-#define mvwaddstr(w,y,x,s) \
- (-1 == wmove((w),(y),(x)) ? -1 : waddnstr((w),(s), -1))
-#define mvaddnstr(y,x,s,n) mvwaddnstr(stdscr,(y),(x),(s),(n))
-#define mvaddstr(y,x,s) mvwaddstr(stdscr,(y),(x),(s))
-#define mvwaddch(w,y,x,c) \
- ((-1 == wmove((w),(y),(x))) ? -1 : waddch((w),(c)))
-#define mvaddch(y,x,c) mvwaddch(stdscr,(y),(x),(c))
-
-extern int SLcurses_wclear (SLcurses_Window_Type *w);
-extern int SLcurses_printw (char *, ...);
-
-#if 0
-/* Why are these functions part of curses??? */
-extern int SLcurses_mvwscanw (SLcurses_Window_Type *, unsigned int, unsigned int,
- char *, ...);
-extern int SLcurses_wscanw (SLcurses_Window_Type *, char *, ...);
-extern int SLcurses_scanw (char *, ...);
-#define mvwscanw SLcurses_mvwscanw
-#define wscanw SLcurses_wscanw
-#define scanw SLcurses_scanw
-#endif
-
-extern SLcurses_Window_Type *SLcurses_Stdscr;
-#define WINDOW SLcurses_Window_Type
-#define stdscr SLcurses_Stdscr
-
-#define subwin SLcurses_subwin
-#define wclrtobot SLcurses_wclrtobot
-#define wscrl SLcurses_wscrl
-#define scrl(n) wscrl(stdscr,(n))
-#define scroll(w) wscrl((w),1)
-#define wrefresh SLcurses_wrefresh
-#define delwin SLcurses_delwin
-#define wmove SLcurses_wmove
-#define newwin SLcurses_newwin
-#define wnoutrefresh SLcurses_wnoutrefresh
-#define werase(w) SLcurses_wmove((w),0,0); SLcurses_wclrtobot(w)
-#define wclear(w) SLcurses_wmove((w),0,0); SLcurses_wclrtobot(w)
-#define wprintw SLcurses_wprintw
-#define mvwprintw SLcurses_mvwprintw
-
-#define winch(w) \
- ((((w)->_cury < (w)->nrows) && ((w)->_curx < (w)->ncols)) \
- ? ((w)->lines[(w)->_cury][(w)->_curx]) : 0)
-
-#define inch() winch(stdscr)
-#define mvwinch(w,x,y) \
- ((-1 != wmove((w),(x),(y))) ? winch(w) : (-1))
-#define doupdate SLsmg_refresh
-
-#define mvwin(w,a,b) ((w)->_begy = (a), (w)->_begx = (b))
-
-extern int SLcurses_mvprintw (int, int, char *, ...);
-extern int SLcurses_mvwprintw (SLcurses_Window_Type *, int, int, char *, ...);
-extern int SLcurses_has_colors(void);
-extern int SLcurses_nil (void);
-extern int SLcurses_wgetch (SLcurses_Window_Type *);
-extern int SLcurses_getch (void);
-
-extern int SLcurses_wattrset (SLcurses_Window_Type *, SLtt_Char_Type);
-extern int SLcurses_wattron (SLcurses_Window_Type *, SLtt_Char_Type);
-extern int SLcurses_wattroff (SLcurses_Window_Type *, SLtt_Char_Type);
-#define attrset(x) SLcurses_wattrset(stdscr, (x))
-#define attron(x) SLcurses_wattron(stdscr, (x))
-#define attroff(x) SLcurses_wattroff(stdscr, (x))
-#define wattrset(w, x) SLcurses_wattrset((w), (x))
-#define wattron(w, x) SLcurses_wattron((w), (x))
-#define wattroff(w, x) SLcurses_wattroff((w), (x))
-#define wattr_get(w) ((w)->color << 8)
-#define attr_get() wattr_get(stdscr)
-
-#define COLOR_PAIR(x) ((x) << 8)
-
-extern int SLcurses_start_color (void);
-#define start_color SLcurses_start_color
-
-#define ERR 0xFFFF
-#define wgetch SLcurses_wgetch
-#define getch SLcurses_getch
-
-extern int SLcurses_nodelay (SLcurses_Window_Type *, int);
-extern SLcurses_Window_Type *SLcurses_initscr (void);
-#define initscr SLcurses_initscr
-
-extern int SLcurses_cbreak (void);
-extern int SLcurses_raw (void);
-#define cbreak SLcurses_cbreak
-#define crmode SLcurses_cbreak
-#define raw SLcurses_raw
-#define noraw SLang_reset_tty
-#define nocbreak SLang_reset_tty
-
-#define mvprintw SLcurses_mvprintw
-#define has_colors SLcurses_has_colors
-#define nodelay SLcurses_nodelay
-
-#define ungetch SLang_ungetkey
-
-#define COLS SLtt_Screen_Cols
-#define LINES SLtt_Screen_Rows
-
-#define move(x,y) SLcurses_wmove(stdscr, (x), (y))
-#define wclrtoeol SLcurses_wclrtoeol
-#define clrtoeol() SLcurses_wclrtoeol(stdscr)
-#define clrtobot() SLcurses_wclrtobot(stdscr)
-
-#define printw SLcurses_printw
-#define mvprintw SLcurses_mvprintw
-#define wstandout(w) SLcurses_wattrset((w),A_STANDOUT)
-#define wstandend(w) SLcurses_wattrset((w),A_NORMAL)
-#define standout() SLcurses_wattrset(stdscr,A_STANDOUT)
-#define standend() SLcurses_wattrset(stdscr,A_NORMAL)
-
-#define refresh() SLcurses_wrefresh(stdscr)
-#define clear() SLcurses_wclear(stdscr)
-#define erase() werase(stdscr)
-#define touchline SLsmg_touch_lines
-#define resetterm SLang_reset_tty
-
-extern int SLcurses_endwin (void);
-#define endwin SLcurses_endwin
-extern int SLcurses_Is_Endwin;
-#define isendwin() SLcurses_Is_Endwin
-
-#define keypad(w,x) ((w)->use_keypad = (x))
-
-#define KEY_MIN SL_KEY_UP
-#define KEY_DOWN SL_KEY_DOWN
-#define KEY_UP SL_KEY_UP
-#define KEY_LEFT SL_KEY_LEFT
-#define KEY_RIGHT SL_KEY_RIGHT
-#define KEY_A1 SL_KEY_A1
-#define KEY_B1 SL_KEY_B1
-#define KEY_C1 SL_KEY_C1
-#define KEY_A2 SL_KEY_A2
-#define KEY_B2 SL_KEY_B2
-#define KEY_C2 SL_KEY_C2
-#define KEY_A3 SL_KEY_A3
-#define KEY_B3 SL_KEY_B3
-#define KEY_C3 SL_KEY_C3
-#define KEY_REDO SL_KEY_REDO
-#define KEY_UNDO SL_KEY_UNDO
-#define KEY_BACKSPACE SL_KEY_BACKSPACE
-#define KEY_PPAGE SL_KEY_PPAGE
-#define KEY_NPAGE SL_KEY_NPAGE
-#define KEY_HOME SL_KEY_HOME
-#define KEY_END SL_KEY_END
-#define KEY_F0 SL_KEY_F0
-#define KEY_F SL_KEY_F
-#define KEY_ENTER SL_KEY_ENTER
-#define KEY_MAX 0xFFFF
-
-/* Ugly Hacks that may not work */
-#define flushinp SLcurses_nil
-#define winsertln(w) \
- ((w)->scroll_min=(w)->_cury, \
- (w)->scroll_max=(w)->nrows, \
- wscrl((w), -1))
-
-extern SLtt_Char_Type SLcurses_Acs_Map [128];
-#define acs_map SLcurses_Acs_Map
-
-#define ACS_ULCORNER (acs_map[SLSMG_ULCORN_CHAR])
-#define ACS_URCORNER (acs_map[SLSMG_URCORN_CHAR])
-#define ACS_LRCORNER (acs_map[SLSMG_LRCORN_CHAR])
-#define ACS_LLCORNER (acs_map[SLSMG_LLCORN_CHAR])
-#define ACS_TTEE (acs_map[SLSMG_UTEE_CHAR])
-#define ACS_LTEE (acs_map[SLSMG_LTEE_CHAR])
-#define ACS_RTEE (acs_map[SLSMG_RTEE_CHAR])
-#define ACS_BTEE (acs_map[SLSMG_DTEE_CHAR])
-#define ACS_PLUS (acs_map[SLSMG_PLUS_CHAR])
-#define ACS_VLINE (acs_map[SLSMG_VLINE_CHAR])
-#define ACS_HLINE (acs_map[SLSMG_HLINE_CHAR])
-#define ACS_S1 '-'
-#define ACS_S9 '-'
-#define ACS_DIAMOND '&'
-#define ACS_CKBOARD (acs_map[SLSMG_CKBRD_CHAR])
-#define ACS_DEGREE 'o'
-#define ACS_PLMINUS '+'
-#define ACS_BULLET '*'
-#define ACS_LARROW '<'
-#define ACS_RARROW '>'
-#define ACS_DARROW 'v'
-#define ACS_UARROW '^'
-#define ACS_BOARD '#'
-#define ACS_LANTERN '#'
-#define ACS_BLOCK '#'
-
-#if 1
-#define hline(x,y) SLcurses_nil ()
-#define vline(x,y) SLcurses_nil ()
-#endif
-
-#define A_CHARTEXT 0x00FF
-#define A_NORMAL 0
-#define A_BOLD 0x1000
-#define A_REVERSE 0x2000
-#define A_STANDOUT A_REVERSE
-#define A_UNDERLINE 0x4000
-#define A_BLINK 0
-#define A_COLOR 0x0700
-#define A_ALTCHARSET 0x8000
-#define A_DIM 0
-#define A_PROTECT 0
-#define A_INVIS 0
-
-#define COLOR_BLACK SLSMG_COLOR_BLACK
-#define COLOR_RED SLSMG_COLOR_RED
-#define COLOR_GREEN SLSMG_COLOR_GREEN
-#define COLOR_YELLOW SLSMG_COLOR_BROWN
-#define COLOR_BLUE SLSMG_COLOR_BLUE
-#define COLOR_MAGENTA SLSMG_COLOR_MAGENTA
-#define COLOR_CYAN SLSMG_COLOR_CYAN
-#define COLOR_WHITE SLSMG_COLOR_LGRAY
-
-extern int SLcurses_Num_Colors;
-#define COLORS SLcurses_Num_Colors
-#define COLOR_PAIRS (SLcurses_Num_Colors*SLcurses_Num_Colors)
-
-#define init_pair(_x,_f,_b) \
- SLtt_set_color_object((_x), ((_f) == (_b) ? 0x0700 : ((_f) | ((_b) << 8)) << 8))
-
-#define scrollok(a,b) ((a)->scroll_ok = (b))
-#define getyx(a,y,x) (y=(a)->_cury, x=(a)->_curx)
-#define getmaxyx(a,y,x) (y=(a)->nrows, x=(a)->ncols)
-#define napms(x) usleep(1000 * (x))
-typedef SLtt_Char_Type chtype;
-#define beep SLtt_beep
-#define curs_set(x) SLtt_set_cursor_visibility(x)
-#define touchwin(x) SLsmg_touch_lines((x)->_begy, (x)->nrows)
-#define flash SLtt_beep
-
-#define wsetscrreg(w,a,b) ((w)->scroll_min = (a), (w)->scroll_max = (b))
-
-#define wtimeout(a,b) (a)->delay_off = ((b >= 0) ? (b) / 100 : -1)
-#define timeout(a) wtimeout(stdscr, a)
-extern int SLcurses_wdelch (SLcurses_Window_Type *);
-#define wdelch SLcurses_wdelch
-#define delch() wdelch(stdscr)
-
-extern int SLcurses_winsch (SLcurses_Window_Type *, int);
-#define winsch SLcurses_winsch
-
-extern int SLcurses_Esc_Delay;/* ESC expire time in milliseconds (ncurses compatible) */
-#define ESCDELAY SLcurses_Esc_Delay
-
-extern int SLcurses_clearok (SLcurses_Window_Type *, int);
-#define clearok SLcurses_clearok
-
-/* Functions that have not been implemented. */
-#define copywin(w,v,a,b,c,d,e,f,g) SLcurses_nil()
-#define wdeleteln(win) SLcurses_nil()
-#define resetty SLcurses_nil
-#define savetty SLcurses_nil
-#define overlay(u,v) SLcurses_nil()
-
-/* These functions do nothing */
-#define savetty SLcurses_nil
-#define nonl SLcurses_nil
-#define echo SLcurses_nil
-#define noecho SLcurses_nil
-#define saveterm SLcurses_nil
-#define box(w,y,z) ((w)->has_box = 1, (w)->modified = 1)
-#define leaveok(a,b) SLcurses_nil()
-#define nl() SLcurses_nil()
-#define trace(x) SLcurses_nil()
-#define tigetstr(x) NULL
-
-/* These have no place in C */
-#define TRUE 1
-#define FALSE 0
-#define bool int
-
-/* Lynx compatability */
-#else
-
-#define stdscr NULL
-#define COLS SLtt_Screen_Cols
-#define LINES SLtt_Screen_Rows
-#define move SLsmg_gotorc
-#define addstr SLsmg_write_string
-#define clear SLsmg_cls
-#define standout SLsmg_reverse_video
-#define standend SLsmg_normal_video
-#define clrtoeol SLsmg_erase_eol
-#define scrollok(a,b) SLsmg_Newline_Moves = ((b) ? 1 : -1)
-#define addch SLsmg_write_char
-#define echo()
-#define printw SLsmg_printf
-#define endwin SLsmg_reset_smg(),SLang_reset_tty
-
-#endif
diff --git a/mdk-stage1/slang/sldisply.c b/mdk-stage1/slang/sldisply.c
deleted file mode 100644
index 1e1161774..000000000
--- a/mdk-stage1/slang/sldisply.c
+++ /dev/null
@@ -1,2596 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include <time.h>
-#include <ctype.h>
-
-#if !defined(VMS) || (__VMS_VER >= 70000000)
-# include <sys/time.h>
-# ifdef __QNX__
-# include <sys/select.h>
-# endif
-# include <sys/types.h>
-#endif
-
-#ifdef __BEOS__
-/* Prototype for select */
-# include <net/socket.h>
-#endif
-
-#ifdef HAVE_TERMIOS_H
-# include <termios.h>
-#endif
-
-#ifdef VMS
-# include <unixlib.h>
-# include <unixio.h>
-# include <dvidef.h>
-# include <descrip.h>
-# include <lib$routines.h>
-# include <starlet.h>
-#else
-# if !defined(sun)
-# include <sys/ioctl.h>
-# endif
-#endif
-
-#ifdef SYSV
-# include <sys/termio.h>
-# include <sys/stream.h>
-# include <sys/ptem.h>
-# include <sys/tty.h>
-#endif
-
-#if defined (_AIX) && !defined (FD_SET)
-# include <sys/select.h> /* for FD_ISSET, FD_SET, FD_ZERO */
-#endif
-
-#include <errno.h>
-
-#if defined(__DECC) && defined(VMS)
-/* These get prototypes for write an sleep */
-# include <unixio.h>
-#endif
-#include <signal.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-/* Colors: These definitions are used for the display. However, the
- * application only uses object handles which get mapped to this
- * internal representation. The mapping is performed by the Color_Map
- * structure below. */
-
-#define CHAR_MASK 0x000000FF
-#define FG_MASK 0x0000FF00
-#define BG_MASK 0x00FF0000
-#define ATTR_MASK 0x1F000000
-#define BGALL_MASK 0x0FFF0000
-
-/* The 0x10000000 bit represents the alternate character set. BGALL_MASK does
- * not include this attribute.
- */
-
-#define GET_FG(color) ((color & FG_MASK) >> 8)
-#define GET_BG(color) ((color & BG_MASK) >> 16)
-#define MAKE_COLOR(fg, bg) (((fg) | ((bg) << 8)) << 8)
-
-int SLtt_Screen_Cols;
-int SLtt_Screen_Rows;
-int SLtt_Term_Cannot_Insert;
-int SLtt_Term_Cannot_Scroll;
-int SLtt_Use_Ansi_Colors;
-int SLtt_Blink_Mode = 1;
-int SLtt_Use_Blink_For_ACS = 0;
-int SLtt_Newline_Ok = 0;
-int SLtt_Has_Alt_Charset = 0;
-int SLtt_Force_Keypad_Init = 0;
-
-void (*_SLtt_color_changed_hook)(void);
-
-#if SLTT_HAS_NON_BCE_SUPPORT
-static int Bce_Color_Offset = 0;
-#endif
-static int Can_Background_Color_Erase = 1;
-
-/* -1 means unknown */
-int SLtt_Has_Status_Line = -1; /* hs */
-int SLang_TT_Write_FD = -1;
-
-static int Automatic_Margins;
-/* static int No_Move_In_Standout; */
-static int Worthless_Highlight;
-#define HP_GLITCH_CODE
-#ifdef HP_GLITCH_CODE
-/* This glitch is exclusive to HP term. Basically it means that to clear
- * attributes, one has to erase to the end of the line.
- */
-static int Has_HP_Glitch;
-#endif
-
-static char *Reset_Color_String;
-static int Is_Color_Terminal = 0;
-
-static int Linux_Console;
-
-/* It is crucial that JMAX_COLORS must be less than 128 since the high bit
- * is used to indicate a character from the ACS (alt char set). The exception
- * to this rule is if SLtt_Use_Blink_For_ACS is true. This means that of
- * the highbit is set, we interpret that as a blink character. This is
- * exploited by DOSemu.
- */
-#define JMAX_COLORS 256
-#define JNORMAL_COLOR 0
-
-typedef struct
-{
- SLtt_Char_Type fgbg;
- SLtt_Char_Type mono;
- char *custom_esc;
-}
-Ansi_Color_Type;
-
-#define RGB1(r, g, b) ((r) | ((g) << 1) | ((b) << 2))
-#define RGB(r, g, b, br, bg, bb) ((RGB1(r, g, b) << 8) | (RGB1(br, bg, bb) << 16))
-
-static Ansi_Color_Type Ansi_Color_Map[JMAX_COLORS] =
-{
- {RGB(1, 1, 1, 0, 0, 0), 0x00000000, NULL}, /* white/black */
- {RGB(0, 1, 0, 0, 0, 0), SLTT_REV_MASK, NULL}, /* green/black */
- {RGB(1, 0, 1, 0, 0, 0), SLTT_REV_MASK, NULL}, /* magenta/black */
- {RGB(0, 1, 1, 0, 0, 0), SLTT_REV_MASK, NULL}, /* cyan/black */
- {RGB(1, 0, 0, 0, 0, 0), SLTT_REV_MASK, NULL},
- {RGB(0, 1, 0, 0, 0, 1), SLTT_REV_MASK, NULL},
- {RGB(1, 0, 0, 0, 0, 1), SLTT_REV_MASK, NULL},
- {RGB(1, 0, 0, 0, 1, 0), SLTT_REV_MASK, NULL},
- {RGB(0, 0, 1, 1, 0, 0), SLTT_REV_MASK, NULL},
- {RGB(0, 1, 0, 1, 0, 0), SLTT_REV_MASK, NULL},
- {RGB(0, 1, 1, 1, 1, 1), SLTT_REV_MASK, NULL},
- {RGB(1, 1, 0, 1, 1, 1), SLTT_REV_MASK, NULL},
- {RGB(1, 0, 1, 1, 1, 1), SLTT_REV_MASK, NULL},
- {RGB(0, 0, 0, 0, 1, 1), SLTT_REV_MASK, NULL},
- {RGB(0, 1, 0, 1, 1, 1), SLTT_REV_MASK, NULL},
- {RGB(0, 1, 0, 1, 1, 1), SLTT_REV_MASK, NULL},
- {RGB(0, 1, 0, 1, 1, 1), SLTT_REV_MASK, NULL},
- {RGB(0, 1, 0, 1, 1, 1), SLTT_REV_MASK, NULL}
-};
-
-static char *Color_Fg_Str = "\033[3%dm";
-static char *Color_Bg_Str = "\033[4%dm";
-static char *Default_Color_Fg_Str = "\033[39m";
-static char *Default_Color_Bg_Str = "\033[49m";
-
-static int Max_Terminfo_Colors = 8; /* termcap Co */
-
-char *SLtt_Graphics_Char_Pairs; /* ac termcap string -- def is vt100 */
-
-/* 1 if terminal lacks the ability to go into insert mode or into delete
- mode. Currently controlled by S-Lang but later perhaps termcap. */
-
-static char *UnderLine_Vid_Str;
-static char *Blink_Vid_Str;
-static char *Bold_Vid_Str;
-static char *Ins_Mode_Str; /* = "\033[4h"; */ /* ins mode (im) */
-static char *Eins_Mode_Str; /* = "\033[4l"; */ /* end ins mode (ei) */
-static char *Scroll_R_Str; /* = "\033[%d;%dr"; */ /* scroll region */
-static char *Cls_Str; /* = "\033[2J\033[H"; */ /* cl termcap STR for ansi terminals */
-static char *Rev_Vid_Str; /* = "\033[7m"; */ /* mr,so termcap string */
-static char *Norm_Vid_Str; /* = "\033[m"; */ /* me,se termcap string */
-static char *Del_Eol_Str; /* = "\033[K"; */ /* ce */
-static char *Del_Bol_Str; /* = "\033[1K"; */ /* cb */
-static char *Del_Char_Str; /* = "\033[P"; */ /* dc */
-static char *Del_N_Lines_Str; /* = "\033[%dM"; */ /* DL */
-static char *Add_N_Lines_Str; /* = "\033[%dL"; */ /* AL */
-static char *Rev_Scroll_Str;
-static char *Curs_Up_Str;
-static char *Curs_F_Str; /* RI termcap string */
-static char *Cursor_Visible_Str; /* ve termcap string */
-static char *Cursor_Invisible_Str; /* vi termcap string */
-#if 0
-static char *Start_Mouse_Rpt_Str; /* Start mouse reporting mode */
-static char *End_Mouse_Rpt_Str; /* End mouse reporting mode */
-#endif
-static char *Start_Alt_Chars_Str; /* as */
-static char *End_Alt_Chars_Str; /* ae */
-static char *Enable_Alt_Char_Set; /* eA */
-
-static char *Term_Init_Str;
-static char *Keypad_Init_Str;
-static char *Term_Reset_Str;
-static char *Keypad_Reset_Str;
-
-/* status line functions */
-static char *Disable_Status_line_Str; /* ds */
-static char *Return_From_Status_Line_Str; /* fs */
-static char *Goto_Status_Line_Str; /* ts */
-static int Num_Status_Line_Columns; /* ws */
-/* static int Status_Line_Esc_Ok; */ /* es */
-
-/* static int Len_Curs_F_Str = 5; */
-
-/* cm string has %i%d since termcap numbers columns from 0 */
-/* char *CURS_POS_STR = "\033[%d;%df"; ansi-- hor and vert pos */
-static char *Curs_Pos_Str; /* = "\033[%i%d;%dH";*/ /* cm termcap string */
-
-/* scrolling region */
-static int Scroll_r1 = 0, Scroll_r2 = 23;
-static int Cursor_r, Cursor_c; /* 0 based */
-
-/* current attributes --- initialized to impossible value */
-static SLtt_Char_Type Current_Fgbg = 0xFFFFFFFFU;
-
-static int Cursor_Set; /* 1 if cursor position known, 0
- * if not. -1 if only row is known
- */
-
-#define MAX_OUTPUT_BUFFER_SIZE 4096
-
-static unsigned char Output_Buffer[MAX_OUTPUT_BUFFER_SIZE];
-static unsigned char *Output_Bufferp = Output_Buffer;
-
-unsigned long SLtt_Num_Chars_Output;
-
-int _SLusleep (unsigned long usecs)
-{
-#if !defined(VMS) || (__VMS_VER >= 70000000)
- struct timeval tv;
- tv.tv_sec = usecs / 1000000;
- tv.tv_usec = usecs % 1000000;
- return select(0, NULL, NULL, NULL, &tv);
-#else
- return 0;
-#endif
-}
-
-int SLtt_flush_output (void)
-{
- int nwrite = 0;
- unsigned int total;
- int n = (int) (Output_Bufferp - Output_Buffer);
-
- SLtt_Num_Chars_Output += n;
-
- total = 0;
- while (n > 0)
- {
- nwrite = write (SLang_TT_Write_FD, (char *) Output_Buffer + total, n);
- if (nwrite == -1)
- {
- nwrite = 0;
-#ifdef EAGAIN
- if (errno == EAGAIN)
- {
- _SLusleep (100000); /* 1/10 sec */
- continue;
- }
-#endif
-#ifdef EWOULDBLOCK
- if (errno == EWOULDBLOCK)
- {
- _SLusleep (100000);
- continue;
- }
-#endif
-#ifdef EINTR
- if (errno == EINTR) continue;
-#endif
- break;
- }
- n -= nwrite;
- total += nwrite;
- }
- Output_Bufferp = Output_Buffer;
- return n;
-}
-
-int SLtt_Baud_Rate;
-static void tt_write(char *str, unsigned int n)
-{
- static unsigned long last_time;
- static int total;
- unsigned long now;
- unsigned int ndiff;
-
- if ((str == NULL) || (n == 0)) return;
- total += n;
-
- while (1)
- {
- ndiff = MAX_OUTPUT_BUFFER_SIZE - (int) (Output_Bufferp - Output_Buffer);
- if (ndiff < n)
- {
- SLMEMCPY ((char *) Output_Bufferp, (char *) str, ndiff);
- Output_Bufferp += ndiff;
- SLtt_flush_output ();
- n -= ndiff;
- str += ndiff;
- }
- else
- {
- SLMEMCPY ((char *) Output_Bufferp, str, n);
- Output_Bufferp += n;
- break;
- }
- }
-
- if (((SLtt_Baud_Rate > 150) && (SLtt_Baud_Rate <= 9600))
- && (10 * total > SLtt_Baud_Rate))
- {
- total = 0;
- if ((now = (unsigned long) time(NULL)) - last_time <= 1)
- {
- SLtt_flush_output ();
- sleep((unsigned) 1);
- }
- last_time = now;
- }
-}
-
-static void tt_write_string (char *str)
-{
- if (str != NULL) tt_write(str, strlen(str));
-}
-
-void SLtt_write_string (char *str)
-{
- tt_write_string (str);
- Cursor_Set = 0;
-}
-
-void SLtt_putchar (char ch)
-{
- SLtt_normal_video ();
- if (Cursor_Set == 1)
- {
- if (ch >= ' ') Cursor_c++;
- else if (ch == '\b') Cursor_c--;
- else if (ch == '\r') Cursor_c = 0;
- else Cursor_Set = 0;
-
- if ((Cursor_c + 1 == SLtt_Screen_Cols)
- && Automatic_Margins) Cursor_Set = 0;
- }
-
- if (Output_Bufferp < Output_Buffer + MAX_OUTPUT_BUFFER_SIZE)
- {
- *Output_Bufferp++ = (unsigned char) ch;
- }
- else tt_write (&ch, 1);
-}
-
-static unsigned int tt_sprintf(char *buf, char *fmt, int x, int y)
-{
- char *fmt_max;
- register unsigned char *b, ch;
- int offset;
- int z, z1, parse_level;
- int zero_pad;
- int field_width;
- int variables [26];
- int stack [64];
- unsigned int stack_len;
- int parms [10];
-#define STACK_POP (stack_len ? stack[--stack_len] : 0)
-
- if (fmt == NULL)
- {
- *buf = 0;
- return 0;
- }
-
- stack [0] = y; /* pushed for termcap */
- stack [1] = x;
- stack_len = 2;
-
- parms [1] = x; /* p1 */
- parms [2] = y; /* p2 */
-
- offset = 0;
- zero_pad = 0;
- field_width = 0;
-
- b = (unsigned char *) buf;
- fmt_max = fmt + strlen (fmt);
-
- while (fmt < fmt_max)
- {
- ch = *fmt++;
-
- if (ch != '%')
- {
- *b++ = ch;
- continue;
- }
-
- if (fmt == fmt_max) break;
- ch = *fmt++;
-
- switch (ch)
- {
- default:
- *b++ = ch;
- break;
-
- case 'p':
-
- if (fmt == fmt_max) break;
- ch = *fmt++;
- if ((ch >= '0') && (ch <= '9'))
- stack [stack_len++] = parms [ch - '0'];
- break;
-
- case '\'': /* 'x' */
- if (fmt == fmt_max) break;
- stack [stack_len++] = *fmt++;
- if (fmt < fmt_max) fmt++; /* skip ' */
- break;
-
- case '{': /* literal constant, e.g. {30} */
- z = 0;
- while ((fmt < fmt_max) && ((ch = *fmt) <= '9') && (ch >= '0'))
- {
- z = z * 10 + (ch - '0');
- fmt++;
- }
- stack [stack_len++] = z;
- if ((ch == '}') && (fmt < fmt_max)) fmt++;
- break;
-
- case '0':
- if (fmt == fmt_max) break;
- ch = *fmt;
- if ((ch != '2') && (ch != '3'))
- break;
- zero_pad = 1;
- fmt++;
- /* drop */
-
- case '2':
- case '3':
- if (fmt == fmt_max)
- if (*fmt == 'x')
- {
- char x_fmt_buf [4];
- char *x_fmt_buf_ptr;
-
- x_fmt_buf_ptr = x_fmt_buf;
- if (zero_pad) *x_fmt_buf_ptr++ = '0';
- *x_fmt_buf_ptr++ = ch;
- *x_fmt_buf_ptr++ = 'X';
- *x_fmt_buf_ptr = 0;
-
- z = STACK_POP;
- z += offset;
-
- sprintf ((char *)b, x_fmt_buf, z);
- b += strlen ((char *)b);
- zero_pad = 0;
- break;
- }
-
- field_width = (ch - '0');
- /* drop */
-
- case 'd':
- z = STACK_POP;
- z += offset;
- if (z >= 100)
- {
- *b++ = z / 100 + '0';
- z = z % 100;
- zero_pad = 1;
- field_width = 2;
- }
- else if (zero_pad && (field_width == 3))
- *b++ = '0';
-
- if (z >= 10)
- {
- *b++ = z / 10 + '0';
- z = z % 10;
- }
- else if (zero_pad && (field_width >= 2))
- *b++ = '0';
-
- *b++ = z + '0';
- field_width = zero_pad = 0;
- break;
-
- case 'x':
- z = STACK_POP;
- z += offset;
- sprintf ((char *) b, "%X", z);
- b += strlen ((char *)b);
- break;
-
- case 'i':
- offset = 1;
- break;
-
- case '+':
- /* Handling this depends upon whether or not we are parsing
- * terminfo. Terminfo requires the stack so use it as an
- * indicator.
- */
- if (stack_len > 2)
- {
- z = STACK_POP;
- stack [stack_len - 1] += z;
- }
- else if (fmt < fmt_max)
- {
- ch = *fmt++;
- if ((unsigned char) ch == 128) ch = 0;
- ch = ch + (unsigned char) STACK_POP;
- if (ch == '\n') ch++;
- *b++ = ch;
- }
- break;
-
- /* Binary operators */
- case '-':
- case '*':
- case '/':
- case 'm':
- case '&':
- case '|':
- case '^':
- case '=':
- case '>':
- case '<':
- case 'A':
- case 'O':
- z1 = STACK_POP;
- z = STACK_POP;
- switch (ch)
- {
- case '-': z = (z - z1); break;
- case '*': z = (z * z1); break;
- case '/': z = (z / z1); break;
- case 'm': z = (z % z1); break;
- case '&': z = (z & z1); break;
- case '|': z = (z | z1); break;
- case '^': z = (z ^ z1); break;
- case '=': z = (z == z1); break;
- case '>': z = (z > z1); break;
- case '<': z = (z < z1); break;
- case 'A': z = (z && z1); break;
- case 'O': z = (z || z1); break;
- }
- stack [stack_len++] = z;
- break;
-
- /* unary */
- case '!':
- z = STACK_POP;
- stack [stack_len++] = !z;
- break;
-
- case '~':
- z = STACK_POP;
- stack [stack_len++] = ~z;
- break;
-
- case 'r': /* termcap -- swap parameters */
- z = stack [0];
- stack [0] = stack [1];
- stack [1] = z;
- break;
-
- case '.': /* termcap */
- case 'c':
- ch = (unsigned char) STACK_POP;
- if (ch == '\n') ch++;
- *b++ = ch;
- break;
-
- case 'g':
- if (fmt == fmt_max) break;
- ch = *fmt++;
- if ((ch >= 'a') && (ch <= 'z'))
- stack [stack_len++] = variables [ch - 'a'];
- break;
-
- case 'P':
- if (fmt == fmt_max) break;
- ch = *fmt++;
- if ((ch >= 'a') && (ch <= 'z'))
- variables [ch - 'a'] = STACK_POP;
- break;
-
- /* If then else parsing. Actually, this is rather easy. The
- * key is to notice that 'then' does all the work. 'if' simply
- * there to indicate the start of a test and endif indicates
- * the end of tests. If 'else' is seen, then skip to
- * endif.
- */
- case '?': /* if */
- case ';': /* endif */
- break;
-
- case 't': /* then */
- z = STACK_POP;
- if (z != 0)
- break; /* good. Continue parsing. */
-
- /* z == 0 and test has failed. So, skip past this entire if
- * expression to the matching else or matching endif.
- */
- /* drop */
- case 'e': /* else */
-
- parse_level = 0;
- while (fmt < fmt_max)
- {
- unsigned char ch1;
-
- ch1 = *fmt++;
- if ((ch1 != '%') || (fmt == fmt_max))
- continue;
-
- ch1 = *fmt++;
-
- if (ch1 == '?') parse_level++; /* new if */
- else if (ch1 == 'e')
- {
- if ((ch != 'e') && (parse_level == 0))
- break;
- }
- else if (ch1 == ';')
- {
- if (parse_level == 0)
- break;
- parse_level--;
- }
- }
- break;
- }
- }
- *b = 0;
- return (unsigned int) (b - (unsigned char *) buf);
-}
-
-static void tt_printf(char *fmt, int x, int y)
-{
- char buf[1024];
- unsigned int n;
- if (fmt == NULL) return;
- n = tt_sprintf(buf, fmt, x, y);
- tt_write(buf, n);
-}
-
-void SLtt_set_scroll_region (int r1, int r2)
-{
- Scroll_r1 = r1;
- Scroll_r2 = r2;
- tt_printf (Scroll_R_Str, Scroll_r1, Scroll_r2);
- Cursor_Set = 0;
-}
-
-void SLtt_reset_scroll_region (void)
-{
- SLtt_set_scroll_region(0, SLtt_Screen_Rows - 1);
-}
-
-int SLtt_set_cursor_visibility (int show)
-{
- if ((Cursor_Visible_Str == NULL) || (Cursor_Invisible_Str == NULL))
- return -1;
-
- tt_write_string (show ? Cursor_Visible_Str : Cursor_Invisible_Str);
- return 0;
-}
-
-/* the goto_rc function moves to row relative to scrolling region */
-void SLtt_goto_rc(int r, int c)
-{
- char *s = NULL;
- int n;
- char buf[6];
-
- if ((c < 0) || (r < 0))
- {
- Cursor_Set = 0;
- return;
- }
-
- /* if (No_Move_In_Standout && Current_Fgbg) SLtt_normal_video (); */
- r += Scroll_r1;
-
- if ((Cursor_Set > 0) || ((Cursor_Set < 0) && !Automatic_Margins))
- {
- n = r - Cursor_r;
- if ((n == -1) && (Cursor_Set > 0) && (Cursor_c == c)
- && (Curs_Up_Str != NULL))
- {
- s = Curs_Up_Str;
- }
- else if ((n >= 0) && (n <= 4))
- {
- if ((n == 0) && (Cursor_Set == 1)
- && ((c > 1) || (c == Cursor_c)))
- {
- if (Cursor_c == c) return;
- if (Cursor_c == c + 1)
- {
- s = buf;
- *s++ = '\b'; *s = 0;
- s = buf;
- }
- }
- else if (c == 0)
- {
- s = buf;
- if ((Cursor_Set != 1) || (Cursor_c != 0)) *s++ = '\r';
- while (n--) *s++ = '\n';
-#ifdef VMS
- /* Need to add this after \n to start a new record. Sheesh. */
- *s++ = '\r';
-#endif
- *s = 0;
- s = buf;
- }
- /* Will fail on VMS */
-#ifndef VMS
- else if (SLtt_Newline_Ok && (Cursor_Set == 1) &&
- (Cursor_c >= c) && (c + 3 > Cursor_c))
- {
- s = buf;
- while (n--) *s++ = '\n';
- n = Cursor_c - c;
- while (n--) *s++ = '\b';
- *s = 0;
- s = buf;
- }
-#endif
- }
- }
- if (s != NULL) tt_write_string(s);
- else tt_printf(Curs_Pos_Str, r, c);
- Cursor_c = c; Cursor_r = r;
- Cursor_Set = 1;
-}
-
-void SLtt_begin_insert (void)
-{
- tt_write_string(Ins_Mode_Str);
-}
-
-void SLtt_end_insert (void)
-{
- tt_write_string(Eins_Mode_Str);
-}
-
-void SLtt_delete_char (void)
-{
- SLtt_normal_video ();
- tt_write_string(Del_Char_Str);
-}
-
-void SLtt_erase_line (void)
-{
- tt_write_string("\r");
- Cursor_Set = 1; Cursor_c = 0;
- SLtt_del_eol();
-}
-
-/* It appears that the Linux console, and most likely others do not
- * like scrolling regions that consist of one line. So I have to
- * resort to this stupidity to make up for that stupidity.
- */
-static void delete_line_in_scroll_region (void)
-{
- SLtt_goto_rc (Cursor_r - Scroll_r1, 0);
- SLtt_del_eol ();
-}
-
-void SLtt_delete_nlines (int n)
-{
- int r1, curs;
- char buf[132];
-
- if (n <= 0) return;
- SLtt_normal_video ();
-
- if (Scroll_r1 == Scroll_r2)
- {
- delete_line_in_scroll_region ();
- return;
- }
-
- if (Del_N_Lines_Str != NULL) tt_printf(Del_N_Lines_Str,n, 0);
- else
- /* get a new terminal */
- {
- r1 = Scroll_r1;
- curs = Cursor_r;
- SLtt_set_scroll_region(curs, Scroll_r2);
- SLtt_goto_rc(Scroll_r2 - Scroll_r1, 0);
- SLMEMSET(buf, '\n', (unsigned int) n);
- tt_write(buf, (unsigned int) n);
- /* while (n--) tt_putchar('\n'); */
- SLtt_set_scroll_region(r1, Scroll_r2);
- SLtt_goto_rc(curs, 0);
- }
-}
-
-void SLtt_cls (void)
-{
- /* If the terminal is a color terminal but the user wants black and
- * white, then make sure that the colors are reset. This appears to be
- * necessary.
- */
- if ((SLtt_Use_Ansi_Colors == 0) && Is_Color_Terminal)
- {
- if (Reset_Color_String != NULL)
- tt_write_string (Reset_Color_String);
- else
- tt_write_string ("\033[0m\033[m");
- }
-
- SLtt_normal_video();
- SLtt_reset_scroll_region ();
- tt_write_string(Cls_Str);
-}
-
-void SLtt_reverse_index (int n)
-{
- if (!n) return;
-
- SLtt_normal_video();
-
- if (Scroll_r1 == Scroll_r2)
- {
- delete_line_in_scroll_region ();
- return;
- }
-
- if (Add_N_Lines_Str != NULL) tt_printf(Add_N_Lines_Str,n, 0);
- else
- {
- while(n--) tt_write_string(Rev_Scroll_Str);
- }
-}
-
-int SLtt_Ignore_Beep = 1;
-static char *Visible_Bell_Str;
-
-void SLtt_beep (void)
-{
- if (SLtt_Ignore_Beep & 0x1) SLtt_putchar('\007');
-
- if (SLtt_Ignore_Beep & 0x2)
- {
- if (Visible_Bell_Str != NULL) tt_write_string (Visible_Bell_Str);
-#ifdef __linux__
- else if (Linux_Console)
- {
- tt_write_string ("\033[?5h");
- SLtt_flush_output ();
- _SLusleep (50000);
- tt_write_string ("\033[?5l");
- }
-#endif
- }
- SLtt_flush_output ();
-}
-
-static void del_eol (void)
-{
- int c;
-
- if (Del_Eol_Str != NULL)
- {
- tt_write_string(Del_Eol_Str);
- return;
- }
-
- c = Cursor_c;
- /* Avoid writing to the lower right corner. If the terminal does not
- * have Del_Eol_Str, then it probably does not have what it takes to play
- * games with insert for for a space into that corner.
- */
- if (Cursor_r + 1 < SLtt_Screen_Rows)
- c++;
-
- while (c < SLtt_Screen_Cols)
- {
- tt_write (" ", 1);
- c++;
- }
-}
-
-void SLtt_del_eol (void)
-{
- if (Current_Fgbg != 0xFFFFFFFFU) SLtt_normal_video ();
- del_eol ();
-}
-
-typedef struct
-{
- char *name;
- SLtt_Char_Type color;
-}
-Color_Def_Type;
-
-#define MAX_COLOR_NAMES 17
-static Color_Def_Type Color_Defs [MAX_COLOR_NAMES] =
-{
- {"black", SLSMG_COLOR_BLACK},
- {"red", SLSMG_COLOR_RED},
- {"green", SLSMG_COLOR_GREEN},
- {"brown", SLSMG_COLOR_BROWN},
- {"blue", SLSMG_COLOR_BLUE},
- {"magenta", SLSMG_COLOR_MAGENTA},
- {"cyan", SLSMG_COLOR_CYAN},
- {"lightgray", SLSMG_COLOR_LGRAY},
- {"gray", SLSMG_COLOR_GRAY},
- {"brightred", SLSMG_COLOR_BRIGHT_RED},
- {"brightgreen", SLSMG_COLOR_BRIGHT_GREEN},
- {"yellow", SLSMG_COLOR_BRIGHT_BROWN},
- {"brightblue", SLSMG_COLOR_BRIGHT_BLUE},
- {"brightmagenta", SLSMG_COLOR_BRIGHT_CYAN},
- {"brightcyan", SLSMG_COLOR_BRIGHT_MAGENTA},
- {"white", SLSMG_COLOR_BRIGHT_WHITE},
-#define SLSMG_COLOR_DEFAULT 0xFF
- {"default", SLSMG_COLOR_DEFAULT}
-};
-
-void SLtt_set_mono (int obj, char *what, SLtt_Char_Type mask)
-{
- (void) what;
- if ((obj < 0) || (obj >= JMAX_COLORS))
- {
- return;
- }
- Ansi_Color_Map[obj].mono = mask & ATTR_MASK;
-}
-
-static char *check_color_for_digit_form (char *color)
-{
- unsigned int i, ich;
- char *s = color;
-
- i = 0;
- while ((ich = (int) *s) != 0)
- {
- if ((ich < '0') || (ich > '9'))
- return color;
-
- i = i * 10 + (ich - '0');
- s++;
- }
-
- if (i < MAX_COLOR_NAMES)
- color = Color_Defs[i].name;
-
- return color;
-}
-
-static int get_default_colors (char **fgp, char **bgp)
-{
- static char fg_buf[16], bg_buf[16], *bg, *fg;
- static int already_parsed;
- char *p, *pmax;
-
- if (already_parsed == -1)
- return -1;
-
- if (already_parsed)
- {
- *fgp = fg;
- *bgp = bg;
- return 0;
- }
-
- already_parsed = -1;
-
- bg = getenv ("COLORFGBG");
-
- if (bg == NULL)
- {
- bg = getenv ("DEFAULT_COLORS");
- if (bg == NULL)
- return -1;
- }
-
- p = fg_buf;
- pmax = p + (sizeof (fg_buf) - 1);
-
- while ((*bg != 0) && (*bg != ';'))
- {
- if (p < pmax) *p++ = *bg;
- bg++;
- }
- *p = 0;
-
- if (*bg) bg++;
-
- p = bg_buf;
- pmax = p + (sizeof (bg_buf) - 1);
-
- /* Mark suggested allowing for extra spplication specific stuff following
- * the background color. That is what the check for the semi-colon is for.
- */
- while ((*bg != 0) && (*bg != ';'))
- {
- if (p < pmax) *p++ = *bg;
- bg++;
- }
- *p = 0;
-
- if (!strcmp (fg_buf, "default") || !strcmp(bg_buf, "default"))
- {
- *fgp = *bgp = fg = bg = "default";
- }
- else
- {
- *fgp = fg = check_color_for_digit_form (fg_buf);
- *bgp = bg = check_color_for_digit_form (bg_buf);
- }
- already_parsed = 1;
- return 0;
-}
-
-static unsigned char FgBg_Stats[JMAX_COLORS];
-
-static int Color_0_Modified = 0;
-
-void SLtt_set_color_object (int obj, SLtt_Char_Type attr)
-{
- char *cust_esc;
-
- if ((obj < 0) || (obj >= JMAX_COLORS)) return;
-
- cust_esc = Ansi_Color_Map[obj].custom_esc;
- if (cust_esc != NULL)
- {
- SLfree (cust_esc);
- FgBg_Stats[(Ansi_Color_Map[obj].fgbg >> 8) & 0x7F] -= 1;
- Ansi_Color_Map[obj].custom_esc = NULL;
- }
-
- Ansi_Color_Map[obj].fgbg = attr;
- if (obj == 0) Color_0_Modified = 1;
-
- if (_SLtt_color_changed_hook != NULL)
- (*_SLtt_color_changed_hook)();
-}
-
-SLtt_Char_Type SLtt_get_color_object (int obj)
-{
- if ((obj < 0) || (obj >= JMAX_COLORS)) return 0;
- return Ansi_Color_Map[obj].fgbg;
-}
-
-void SLtt_add_color_attribute (int obj, SLtt_Char_Type attr)
-{
- if ((obj < 0) || (obj >= JMAX_COLORS)) return;
-
- Ansi_Color_Map[obj].fgbg |= (attr & ATTR_MASK);
- if (obj == 0) Color_0_Modified = 1;
- if (_SLtt_color_changed_hook != NULL)
- (*_SLtt_color_changed_hook)();
-}
-
-static SLtt_Char_Type fb_to_fgbg (SLtt_Char_Type f, SLtt_Char_Type b)
-{
- SLtt_Char_Type attr;
-
- if (Max_Terminfo_Colors != 8)
- {
- if (f != SLSMG_COLOR_DEFAULT) f %= Max_Terminfo_Colors;
- if (b != SLSMG_COLOR_DEFAULT) b %= Max_Terminfo_Colors;
- return ((f << 8) | (b << 16));
- }
-
- /* Otherwise we have 8 ansi colors. Try to get bright versions
- * by using the BOLD and BLINK attributes.
- */
-
- attr = 0;
-
- /* Note: If f represents default, it will have the value 0xFF */
- if (f != SLSMG_COLOR_DEFAULT)
- {
- if (f & 0x8) attr = SLTT_BOLD_MASK;
- f &= 0x7;
- }
-
- if (b != SLSMG_COLOR_DEFAULT)
- {
- if (b & 0x8) attr |= SLTT_BLINK_MASK;
- b &= 0x7;
- }
-
- return ((f << 8) | (b << 16) | attr);
-}
-
-/* This looks for colors with name form 'colorN'. If color is of this
- * form, N is passed back via paramter list.
- */
-static int parse_color_digit_name (char *color, SLtt_Char_Type *f)
-{
- unsigned int i;
- unsigned char ch;
-
- if (strncmp (color, "color", 5))
- return -1;
-
- color += 5;
- if (*color == 0)
- return -1;
-
- i = 0;
- while (1)
- {
- ch = (unsigned char) *color++;
- if (ch == 0)
- break;
- if ((ch > '9') || (ch < '0'))
- return -1;
- i = 10 * i + (ch - '0');
- }
-
- *f = (SLtt_Char_Type) i;
- return 0;
-}
-
-static int make_color_fgbg (char *fg, char *bg, SLtt_Char_Type *fgbg)
-{
- SLtt_Char_Type f = 0xFFFFFFFFU, b = 0xFFFFFFFFU;
- char *dfg, *dbg;
- unsigned int i;
-
- if ((fg != NULL) && (*fg == 0)) fg = NULL;
- if ((bg != NULL) && (*bg == 0)) bg = NULL;
-
- if ((fg == NULL) || (bg == NULL))
- {
- if (-1 == get_default_colors (&dfg, &dbg))
- return -1;
-
- if (fg == NULL) fg = dfg;
- if (bg == NULL) bg = dbg;
- }
-
- if (-1 == parse_color_digit_name (fg, &f))
- {
- for (i = 0; i < MAX_COLOR_NAMES; i++)
- {
- if (strcmp(fg, Color_Defs[i].name)) continue;
- f = Color_Defs[i].color;
- break;
- }
- }
-
- if (-1 == parse_color_digit_name (bg, &b))
- {
- for (i = 0; i < MAX_COLOR_NAMES; i++)
- {
- if (strcmp(bg, Color_Defs[i].name)) continue;
- b = Color_Defs[i].color;
- break;
- }
- }
-
- if ((f == 0xFFFFFFFFU) || (b == 0xFFFFFFFFU))
- return -1;
-
- *fgbg = fb_to_fgbg (f, b);
- return 0;
-}
-
-void SLtt_set_color (int obj, char *what, char *fg, char *bg)
-{
- SLtt_Char_Type fgbg;
-
- (void) what;
- if ((obj < 0) || (obj >= JMAX_COLORS))
- return;
-
- if (-1 != make_color_fgbg (fg, bg, &fgbg))
- SLtt_set_color_object (obj, fgbg);
-}
-
-void SLtt_set_color_fgbg (int obj, SLtt_Char_Type f, SLtt_Char_Type b)
-{
- SLtt_set_color_object (obj, fb_to_fgbg (f, b));
-}
-
-void SLtt_set_color_esc (int obj, char *esc)
-{
- char *cust_esc;
- SLtt_Char_Type fgbg = 0;
- int i;
-
- if ((obj < 0) || (obj >= JMAX_COLORS))
- {
- return;
- }
-
- cust_esc = Ansi_Color_Map[obj].custom_esc;
- if (cust_esc != NULL)
- {
- SLfree (cust_esc);
- FgBg_Stats[(Ansi_Color_Map[obj].fgbg >> 8) & 0x7F] -= 1;
- }
-
- cust_esc = (char *) SLmalloc (strlen(esc) + 1);
- if (cust_esc != NULL) strcpy (cust_esc, esc);
-
- Ansi_Color_Map[obj].custom_esc = cust_esc;
- if (cust_esc == NULL) fgbg = 0;
- else
- {
- /* The whole point of this is to generate a unique fgbg */
- for (i = 0; i < JMAX_COLORS; i++)
- {
- if (FgBg_Stats[i] == 0) fgbg = i;
-
- if (obj == i) continue;
- if ((Ansi_Color_Map[i].custom_esc) == NULL) continue;
- if (!strcmp (Ansi_Color_Map[i].custom_esc, cust_esc))
- {
- fgbg = (Ansi_Color_Map[i].fgbg >> 8) & 0x7F;
- break;
- }
- }
- FgBg_Stats[fgbg] += 1;
- }
-
- fgbg |= 0x80;
- Ansi_Color_Map[obj].fgbg = (fgbg | (fgbg << 8)) << 8;
- if (obj == 0) Color_0_Modified = 1;
- if (_SLtt_color_changed_hook != NULL)
- (*_SLtt_color_changed_hook)();
-}
-
-void SLtt_set_alt_char_set (int i)
-{
- static int last_i;
- if (SLtt_Has_Alt_Charset == 0) return;
- if (i == last_i) return;
- tt_write_string (i ? Start_Alt_Chars_Str : End_Alt_Chars_Str );
- last_i = i;
-}
-
-static void write_attributes (SLtt_Char_Type fgbg)
-{
- int bg0, fg0;
- int unknown_attributes;
-
- if (Worthless_Highlight) return;
- if (fgbg == Current_Fgbg) return;
-
- unknown_attributes = 0;
-
- /* Before spitting out colors, fix attributes */
- if ((fgbg & ATTR_MASK) != (Current_Fgbg & ATTR_MASK))
- {
- if (Current_Fgbg & ATTR_MASK)
- {
- tt_write_string(Norm_Vid_Str);
- /* In case normal video turns off ALL attributes: */
- if (fgbg & SLTT_ALTC_MASK)
- Current_Fgbg &= ~SLTT_ALTC_MASK;
- SLtt_set_alt_char_set (0);
- }
-
- if ((fgbg & SLTT_ALTC_MASK)
- != (Current_Fgbg & SLTT_ALTC_MASK))
- {
- SLtt_set_alt_char_set ((int) (fgbg & SLTT_ALTC_MASK));
- }
-
- if (fgbg & SLTT_ULINE_MASK) tt_write_string (UnderLine_Vid_Str);
- if (fgbg & SLTT_BOLD_MASK) SLtt_bold_video ();
- if (fgbg & SLTT_REV_MASK) tt_write_string (Rev_Vid_Str);
- if (fgbg & SLTT_BLINK_MASK)
- {
- /* Someday Linux will have a blink mode that set high intensity
- * background. Lets be prepared.
- */
- if (SLtt_Blink_Mode) tt_write_string (Blink_Vid_Str);
- }
- unknown_attributes = 1;
- }
-
- if (SLtt_Use_Ansi_Colors)
- {
- fg0 = (int) GET_FG(fgbg);
- bg0 = (int) GET_BG(fgbg);
-
- if (unknown_attributes
- || (fg0 != (int)GET_FG(Current_Fgbg)))
- {
- if (fg0 == SLSMG_COLOR_DEFAULT)
- tt_write_string (Default_Color_Fg_Str);
- else
- tt_printf (Color_Fg_Str, fg0, 0);
- }
-
- if (unknown_attributes
- || (bg0 != (int)GET_BG(Current_Fgbg)))
- {
- if (bg0 == SLSMG_COLOR_DEFAULT)
- tt_write_string (Default_Color_Bg_Str);
- else
- tt_printf (Color_Bg_Str, bg0, 0);
- }
- }
-
- Current_Fgbg = fgbg;
-}
-
-static int Video_Initialized;
-
-void SLtt_reverse_video (int color)
-{
- SLtt_Char_Type fgbg;
- char *esc;
-
- if (Worthless_Highlight) return;
- if ((color < 0) || (color >= JMAX_COLORS)) return;
-
- if (Video_Initialized == 0)
- {
- if (color == JNORMAL_COLOR)
- {
- tt_write_string (Norm_Vid_Str);
- }
- else tt_write_string (Rev_Vid_Str);
- Current_Fgbg = 0xFFFFFFFFU;
- return;
- }
-
- if (SLtt_Use_Ansi_Colors)
- {
- fgbg = Ansi_Color_Map[color].fgbg;
- if ((esc = Ansi_Color_Map[color].custom_esc) != NULL)
- {
- if (fgbg != Current_Fgbg)
- {
- Current_Fgbg = fgbg;
- tt_write_string (esc);
- return;
- }
- }
- }
- else fgbg = Ansi_Color_Map[color].mono;
-
- if (fgbg == Current_Fgbg) return;
- write_attributes (fgbg);
-}
-
-void SLtt_normal_video (void)
-{
- SLtt_reverse_video(JNORMAL_COLOR);
-}
-
-void SLtt_narrow_width (void)
-{
- tt_write_string("\033[?3l");
-}
-
-void SLtt_wide_width (void)
-{
- tt_write_string("\033[?3h");
-}
-
-/* Highest bit represents the character set. */
-#define COLOR_MASK 0x7F00
-
-#if SLTT_HAS_NON_BCE_SUPPORT
-static int bce_color_eqs (unsigned int a, unsigned int b)
-{
- a = (a & COLOR_MASK) >> 8;
- b = (b & COLOR_MASK) >> 8;
-
- if (a == b)
- return 1;
-
- if (SLtt_Use_Ansi_Colors == 0)
- return Ansi_Color_Map[a].mono == Ansi_Color_Map[b].mono;
-
- if (Bce_Color_Offset == 0)
- return Ansi_Color_Map[a].fgbg == Ansi_Color_Map[b].fgbg;
-
- /* If either are color 0, then we do not know what that means since the
- * terminal does not support BCE */
- if ((a == 0) || (b == 0))
- return 0;
-
- return Ansi_Color_Map[a-1].fgbg == Ansi_Color_Map[b-1].fgbg;
-}
-#define COLOR_EQS(a,b) bce_color_eqs (a,b)
-#else
-# define COLOR_OF(x) (((unsigned int)(x) & COLOR_MASK) >> 8)
-# define COLOR_EQS(a, b) \
- (SLtt_Use_Ansi_Colors \
- ? (Ansi_Color_Map[COLOR_OF(a)].fgbg == Ansi_Color_Map[COLOR_OF(b)].fgbg)\
- : (Ansi_Color_Map[COLOR_OF(a)].mono == Ansi_Color_Map[COLOR_OF(b)].mono))
-#endif
-
-#define CHAR_EQS(a, b) (((a) == (b))\
- || ((((a) & ~COLOR_MASK) == ((b) & ~COLOR_MASK))\
- && COLOR_EQS((a), (b))))
-
-/* The whole point of this routine is to prevent writing to the last column
- * and last row on terminals with automatic margins.
- */
-static void write_string_with_care (char *str)
-{
- unsigned int len;
-
- if (str == NULL) return;
-
- len = strlen (str);
- if (Automatic_Margins && (Cursor_r + 1 == SLtt_Screen_Rows))
- {
- if (len + (unsigned int) Cursor_c >= (unsigned int) SLtt_Screen_Cols)
- {
- /* For now, just do not write there. Later, something more
- * sophisticated will be implemented.
- */
- if (SLtt_Screen_Cols > Cursor_c)
- len = SLtt_Screen_Cols - Cursor_c - 1;
- else
- len = 0;
- }
- }
- tt_write (str, len);
-}
-
-static void send_attr_str (SLsmg_Char_Type *s)
-{
- unsigned char out[256], ch, *p;
- register SLtt_Char_Type attr;
- register SLsmg_Char_Type sh;
- int color, last_color = -1;
-
- p = out;
- while (0 != (sh = *s++))
- {
- ch = sh & 0xFF;
- color = ((int) sh & 0xFF00) >> 8;
-
-#if SLTT_HAS_NON_BCE_SUPPORT
- if (Bce_Color_Offset
- && (color >= Bce_Color_Offset))
- color -= Bce_Color_Offset;
-#endif
-
- if (color != last_color)
- {
- if (SLtt_Use_Ansi_Colors) attr = Ansi_Color_Map[color & 0x7F].fgbg;
- else attr = Ansi_Color_Map[color & 0x7F].mono;
-
- if (sh & 0x8000) /* alternate char set */
- {
- if (SLtt_Use_Blink_For_ACS)
- {
- if (SLtt_Blink_Mode) attr |= SLTT_BLINK_MASK;
- }
- else attr |= SLTT_ALTC_MASK;
- }
-
- if (attr != Current_Fgbg)
- {
- if ((ch != ' ') ||
- /* it is a space so only consider it different if it
- * has different attributes.
- */
- (attr & BGALL_MASK) != (Current_Fgbg & BGALL_MASK))
- {
- if (p != out)
- {
- *p = 0;
- write_string_with_care ((char *) out);
- Cursor_c += (int) (p - out);
- p = out;
- }
-
- if (SLtt_Use_Ansi_Colors && (NULL != Ansi_Color_Map[color & 0x7F].custom_esc))
- {
- tt_write_string (Ansi_Color_Map[color & 0x7F].custom_esc);
- /* Just in case the custom escape sequence screwed up
- * the alt character set state...
- */
- if ((attr & SLTT_ALTC_MASK) != (Current_Fgbg & SLTT_ALTC_MASK))
- SLtt_set_alt_char_set ((int) (attr & SLTT_ALTC_MASK));
- Current_Fgbg = attr;
- }
- else write_attributes (attr);
-
- last_color = color;
- }
- }
- }
- *p++ = ch;
- }
- *p = 0;
- if (p != out) write_string_with_care ((char *) out);
- Cursor_c += (int) (p - out);
-}
-
-static void forward_cursor (unsigned int n, int row)
-{
- char buf [1024];
-
- if (n <= 4)
- {
- SLtt_normal_video ();
- SLMEMSET (buf, ' ', n);
- buf[n] = 0;
- write_string_with_care (buf);
- Cursor_c += n;
- }
- else if (Curs_F_Str != NULL)
- {
- Cursor_c += n;
- n = tt_sprintf(buf, Curs_F_Str, (int) n, 0);
- tt_write(buf, n);
- }
- else SLtt_goto_rc (row, (int) (Cursor_c + n));
-}
-
-
-void SLtt_smart_puts(SLsmg_Char_Type *neww, SLsmg_Char_Type *oldd, int len, int row)
-{
- register SLsmg_Char_Type *p, *q, *qmax, *pmax, *buf;
- SLsmg_Char_Type buffer[256];
- unsigned int n_spaces;
- SLsmg_Char_Type *space_match, *last_buffered_match;
-#ifdef HP_GLITCH_CODE
- int handle_hp_glitch = 0;
-#endif
- SLsmg_Char_Type space_char;
-#define SLTT_USE_INSERT_HACK 1
-#if SLTT_USE_INSERT_HACK
- SLsmg_Char_Type insert_hack_prev = 0;
- SLsmg_Char_Type insert_hack_char = 0;
-
- if ((row + 1 == SLtt_Screen_Rows)
- && (len == SLtt_Screen_Cols)
- && (len > 1)
- && (SLtt_Term_Cannot_Insert == 0)
- && Automatic_Margins)
- {
- insert_hack_char = neww[len-1];
- if (oldd[len-1] == insert_hack_char)
- insert_hack_char = 0;
- else
- insert_hack_prev = neww[len-2];
- }
-#endif
-
- q = oldd; p = neww;
- qmax = oldd + len;
- pmax = p + len;
-
- /* Find out where to begin --- while they match, we are ok */
- while (1)
- {
- if (q == qmax) return;
-#if SLANG_HAS_KANJI_SUPPORT
- if (*p & 0x80)
- { /* new is kanji */
- if ((*q & 0x80) && ((q + 1) < qmax))
- { /* old is also kanji */
- if (((0xFF & *q) != (0xFF & *p))
- || ((0xFF & q[1]) != (0xFF & p[1])))
- break; /* both kanji, but not match */
-
- else
- { /* kanji match ! */
- if (!COLOR_EQS(*q, *p)) break;
- q++; p++;
- if (!COLOR_EQS(*q, *p)) break;
- /* really match! */
- q++; p++;
- continue;
- }
- }
- else break; /* old is not kanji */
- }
- else
- { /* new is not kanji */
- if (*q & 0x80) break; /* old is kanji */
- }
-#endif
- if (!CHAR_EQS(*q, *p)) break;
- q++; p++;
- }
-
-#ifdef HP_GLITCH_CODE
- if (Has_HP_Glitch)
- {
- SLsmg_Char_Type *qq = q;
-
- SLtt_goto_rc (row, (int) (p - neww));
-
- while (qq < qmax)
- {
- if (*qq & 0xFF00)
- {
- SLtt_normal_video ();
- SLtt_del_eol ();
- qmax = q;
- handle_hp_glitch = 1;
- break;
- }
- qq++;
- }
- }
-#endif
- /* Find where the last non-blank character on old/new screen is */
-
- space_char = ' ';
- if ((*(pmax-1) & 0xFF) == ' ')
- {
- /* If we get here, then we can erase to the end of the line to create
- * the final space. However, this will only work _if_ erasing will
- * get us the correct color. If the terminal supports BCE, then this
- * is easy. If it does not, then we can only perform this operation
- * if the color is known via something like COLORFGBG. For now,
- * I just will not perform the optimization for such terminals.
- */
- if ((Can_Background_Color_Erase)
- && SLtt_Use_Ansi_Colors)
- space_char = *(pmax - 1);
-
- while (pmax > p)
- {
- pmax--;
- if (!CHAR_EQS(*pmax, space_char))
- {
- pmax++;
- break;
- }
- }
- }
-
- while (qmax > q)
- {
- qmax--;
- if (!CHAR_EQS(*qmax, space_char))
- {
- qmax++;
- break;
- }
- }
-
- last_buffered_match = buf = buffer; /* buffer is empty */
-
-#ifdef HP_GLITCH_CODE
- if (handle_hp_glitch)
- {
- while (p < pmax)
- {
- *buf++ = *p++;
- }
- }
-#endif
-
-#ifdef HP_GLITCH_CODE
- if (Has_HP_Glitch == 0)
- {
-#endif
- /* Try use use erase to bol if possible */
- if ((Del_Bol_Str != NULL) && ((*neww & 0xFF) == 32))
- {
- SLsmg_Char_Type *p1;
- SLsmg_Char_Type blank;
-
- p1 = neww;
- if ((Can_Background_Color_Erase)
- && SLtt_Use_Ansi_Colors)
- blank = *p1;
- /* black+white attributes do not support bce */
- else
- blank = 32;
-
- while ((p1 < pmax) && (CHAR_EQS (*p1, blank)))
- p1++;
-
- /* Is this optimization worth it? Assume Del_Bol_Str is ESC [ 1 K
- * It costs 4 chars + the space needed to properly position the
- * cursor, e.g., ESC [ 10;10H. So, it costs at least 13 characters.
- */
- if ((p1 > neww + 13)
- && (p1 >= p)
- /* Avoid erasing from the end of the line */
- && ((p1 != pmax) || (pmax < neww + len)))
- {
- int ofs = (int) (p1 - neww);
- q = oldd + ofs;
- p = p1;
- SLtt_goto_rc (row, ofs - 1);
- SLtt_reverse_video (blank >> 8);
- tt_write_string (Del_Bol_Str);
- tt_write (" ", 1);
- Cursor_c += 1;
- }
- else
- SLtt_goto_rc (row, (int) (p - neww));
- }
- else
- SLtt_goto_rc (row, (int) (p - neww));
-#ifdef HP_GLITCH_CODE
- }
-#endif
-
-
- /* loop using overwrite then skip algorithm until done */
- while (1)
- {
- /* while they do not match and we do not hit a space, buffer them up */
- n_spaces = 0;
- while (p < pmax)
- {
- if (CHAR_EQS(*q, 32) && CHAR_EQS(*p, 32))
- {
- /* If *q is not a space, we would have to overwrite it.
- * However, if *q is a space, then while *p is also one,
- * we only need to skip over the blank field.
- */
- space_match = p;
- p++; q++;
- while ((p < pmax)
- && CHAR_EQS(*q, 32)
- && CHAR_EQS(*p, 32))
- {
- p++;
- q++;
- }
- n_spaces = (unsigned int) (p - space_match);
- break;
- }
-#if SLANG_HAS_KANJI_SUPPORT
- if ((*p & 0x80) && ((p + 1) < pmax))
- { /* new is kanji */
- if (*q & 0x80)
- { /* old is also kanji */
- if (((0xFF & *q) != (0xFF & *p))
- || ((0xFF & q[1]) != (0xFF & p[1])))
- {
- /* both kanji, but not match */
- *buf++ = *p++;
- *buf++ = *p++;
- q += 2;
- continue;
- }
- else
- { /* kanji match ? */
- if (!COLOR_EQS(*q, *p) || !COLOR_EQS(*(q+1), *(p+1)))
- {
- /* code is match, but color is diff */
- *buf++ = *p++;
- *buf++ = *p++;
- q += 2;
- continue;
- }
- /* really match ! */
- break;
- }
- }
- else
- { /* old is not kanji */
- *buf++ = *p++;
- *buf++ = *p++;
- q += 2;
- continue;
- }
- }
- else
- { /* new is not kanji */
- if (*q & 0x80)
- { /* old is kanji */
- *buf++ = *p++;
- q++;
- continue;
- }
- }
-#endif
-
- if (CHAR_EQS(*q, *p)) break;
- *buf++ = *p++;
- q++;
- }
- *buf = 0;
-
- if (buf != buffer) send_attr_str (buffer);
- buf = buffer;
-
- if (n_spaces
- && ((p < pmax) /* erase to eol will achieve this effect*/
- || (space_char != 32)))/* unless space_char is not a simple space */
- {
- forward_cursor (n_spaces, row);
- }
-
- /* Now we overwrote what we could and cursor is placed at position
- * of a possible match of new and old. If this is the case, skip
- * some more.
- */
-#if !SLANG_HAS_KANJI_SUPPORT
- while ((p < pmax) && CHAR_EQS(*p, *q))
- {
- *buf++ = *p++;
- q++;
- }
-#else
- /* Kanji */
- while (p < pmax)
- {
- if ((*p & 0x80) && ((p + 1) < pmax))
- { /* new is kanji */
- if (*q & 0x80)
- { /* old is also kanji */
- if (((0xFF & *q) == (0xFF & *p))
- && ((0xFF & q[1]) == (0xFF & p[1])))
- {
- /* kanji match ? */
- if (!COLOR_EQS(*q, *p)
- || !COLOR_EQS(q[1], p[1]))
- break;
-
- *buf++ = *p++;
- q++;
- if (p >= pmax)
- {
- *buf++ = 32;
- p++;
- break;
- }
- else
- {
- *buf++ = *p++;
- q++;
- continue;
- }
- }
- else break; /* both kanji, but not match */
- }
- else break; /* old is not kanji */
- }
- else
- { /* new is not kanji */
- if (*q & 0x80) break; /* old is kanji */
- if (!CHAR_EQS(*q, *p)) break;
- *buf++ = *p++;
- q++;
- }
- }
-#endif
- last_buffered_match = buf;
- if (p >= pmax) break;
-
- /* jump to new position is it is greater than 5 otherwise
- * let it sit in the buffer and output it later.
- */
- if ((int) (buf - buffer) >= 5)
- {
- forward_cursor ((unsigned int) (buf - buffer), row);
- last_buffered_match = buf = buffer;
- }
- }
-
- if (buf != buffer)
- {
- if (q < qmax)
- {
- if ((buf == last_buffered_match)
- && ((int) (buf - buffer) >= 5))
- {
- forward_cursor ((unsigned int) (buf - buffer), row);
- }
- else
- {
- *buf = 0;
- send_attr_str (buffer);
- }
- }
- }
-
- if (q < qmax)
- {
- SLtt_reverse_video (space_char >> 8);
- del_eol ();
- }
-
-#if SLTT_USE_INSERT_HACK
- else if (insert_hack_char)
- {
- SLtt_goto_rc (SLtt_Screen_Rows-1, SLtt_Screen_Cols-2);
- buffer[0] = insert_hack_char;
- buffer[1] = 0;
- send_attr_str (buffer);
- SLtt_goto_rc (SLtt_Screen_Rows-1, SLtt_Screen_Cols-2);
- buffer[0] = insert_hack_prev;
- SLtt_begin_insert ();
- send_attr_str (buffer);
- SLtt_end_insert ();
- }
-#endif
-
- if (Automatic_Margins && (Cursor_c + 1 >= SLtt_Screen_Cols)) Cursor_Set = 0;
-}
-
-static void get_color_info (void)
-{
- char *fg, *bg;
-
- /* Allow easy mechanism to override inadequate termcap/terminfo files. */
- if (SLtt_Use_Ansi_Colors == 0)
- SLtt_Use_Ansi_Colors = (NULL != getenv ("COLORTERM"));
-
- if (SLtt_Use_Ansi_Colors)
- Is_Color_Terminal = 1;
-
-#if SLTT_HAS_NON_BCE_SUPPORT
- if (Can_Background_Color_Erase == 0)
- Can_Background_Color_Erase = (NULL != getenv ("COLORTERM_BCE"));
-#endif
-
- if (-1 == get_default_colors (&fg, &bg))
- return;
-
- /* Check to see if application has already set them. */
- if (Color_0_Modified)
- return;
-
- SLtt_set_color (0, NULL, fg, bg);
- SLtt_set_color (1, NULL, bg, fg);
-}
-
-/* termcap stuff */
-
-#ifdef __unix__
-
-static int Termcap_Initalized = 0;
-
-#ifdef USE_TERMCAP
-/* Termcap based system */
-static char Termcap_Buf[4096];
-static char Termcap_String_Buf[4096];
-static char *Termcap_String_Ptr;
-extern char *tgetstr(char *, char **);
-extern int tgetent(char *, char *);
-extern int tgetnum(char *);
-extern int tgetflag(char *);
-#else
-/* Terminfo */
-static SLterminfo_Type *Terminfo;
-#endif
-
-#define TGETFLAG(x) (SLtt_tgetflag(x) > 0)
-
-static char *fixup_tgetstr (char *what)
-{
- register char *w, *w1;
- char *wsave;
-
- if (what == NULL)
- return NULL;
-
- /* Check for AIX brain-damage */
- if (*what == '@')
- return NULL;
-
- /* lose pad info --- with today's technology, term is a loser if
- it is really needed */
- while ((*what == '.') ||
- ((*what >= '0') && (*what <= '9'))) what++;
- if (*what == '*') what++;
-
- /* lose terminfo padding--- looks like $<...> */
- w = what;
- while (*w) if ((*w++ == '$') && (*w == '<'))
- {
- w1 = w - 1;
- while (*w && (*w != '>')) w++;
- if (*w == 0) break;
- w++;
- wsave = w1;
- while ((*w1++ = *w++) != 0);
- w = wsave;
- }
-
- if (*what == 0) what = NULL;
- return what;
-}
-
-char *SLtt_tgetstr (char *s)
-{
- if (Termcap_Initalized == 0)
- return NULL;
-
-#ifdef USE_TERMCAP
- s = tgetstr (s, &Termcap_String_Ptr);
-#else
- s = _SLtt_tigetstr (Terminfo, s);
-#endif
- return fixup_tgetstr (s);
-}
-
-int SLtt_tgetnum (char *s)
-{
- if (Termcap_Initalized == 0)
- return -1;
-#ifdef USE_TERMCAP
- return tgetnum (s);
-#else
- return _SLtt_tigetnum (Terminfo, s);
-#endif
-}
-
-int SLtt_tgetflag (char *s)
-{
- if (Termcap_Initalized == 0)
- return -1;
-#ifdef USE_TERMCAP
- return tgetflag (s);
-#else
- return _SLtt_tigetflag (Terminfo, s);
-#endif
-}
-
-static int Vt100_Like = 0;
-
-void SLtt_get_terminfo (void)
-{
- char *term;
- int status;
-
- term = getenv ("TERM");
- if (term == NULL)
- SLang_exit_error("TERM environment variable needs set.");
-
- if (0 == (status = SLtt_initialize (term)))
- return;
-
- if (status == -1)
- {
- SLang_exit_error ("Unknown terminal: %s\n\
-Check the TERM environment variable.\n\
-Also make sure that the terminal is defined in the terminfo database.\n\
-Alternatively, set the TERMCAP environment variable to the desired\n\
-termcap entry.",
- term);
- }
-
- if (status == -2)
- {
- SLang_exit_error ("\
-Your terminal lacks the ability to clear the screen or position the cursor.\n");
- }
-}
-
-/* Returns 0 if all goes well, -1 if terminal capabilities cannot be deduced,
- * or -2 if terminal cannot position the cursor.
- */
-int SLtt_initialize (char *term)
-{
- char *t, ch;
- int is_xterm;
- int almost_vtxxx;
-
- if (SLang_TT_Write_FD == -1)
- {
- /* Apparantly, this cannot fail according to the man pages. */
- SLang_TT_Write_FD = fileno (stdout);
- }
-
- if (term == NULL)
- {
- term = getenv ("TERM");
- if (term == NULL)
- return -1;
- }
-
- Linux_Console = (!strncmp (term, "linux", 5)
-# ifdef linux
- || !strncmp(term, "con", 3)
-# endif
- );
-
- t = term;
-
- if (strcmp(t, "vt52") && (*t++ == 'v') && (*t++ == 't')
- && (ch = *t, (ch >= '1') && (ch <= '9'))) Vt100_Like = 1;
-
- is_xterm = ((0 == strncmp (term, "xterm", 5))
- || (0 == strncmp (term, "rxvt", 4))
- || (0 == strncmp (term, "Eterm", 5)));
-
- almost_vtxxx = (Vt100_Like
- || Linux_Console
- || is_xterm
- || !strcmp (term, "screen"));
-
-# ifndef USE_TERMCAP
- if (NULL == (Terminfo = _SLtt_tigetent (term)))
- {
- if (almost_vtxxx) /* Special cases. */
- {
- int vt102 = 1;
- if (!strcmp (term, "vt100")) vt102 = 0;
- get_color_info ();
- SLtt_set_term_vtxxx (&vt102);
- return 0;
- }
- return -1;
- }
-# else /* USE_TERMCAP */
- if (1 != tgetent(Termcap_Buf, term))
- return -1;
- Termcap_String_Ptr = Termcap_String_Buf;
-# endif /* NOT USE_TERMCAP */
-
- Termcap_Initalized = 1;
-
- Cls_Str = SLtt_tgetstr ("cl");
- Curs_Pos_Str = SLtt_tgetstr ("cm");
-
- if ((NULL == (Ins_Mode_Str = SLtt_tgetstr("im")))
- || ( NULL == (Eins_Mode_Str = SLtt_tgetstr("ei")))
- || ( NULL == (Del_Char_Str = SLtt_tgetstr("dc"))))
- SLtt_Term_Cannot_Insert = 1;
-
- Visible_Bell_Str = SLtt_tgetstr ("vb");
- Curs_Up_Str = SLtt_tgetstr ("up");
- Rev_Scroll_Str = SLtt_tgetstr("sr");
- Del_N_Lines_Str = SLtt_tgetstr("DL");
- Add_N_Lines_Str = SLtt_tgetstr("AL");
-
- /* Actually these are used to initialize terminals that use cursor
- * addressing. Hard to believe.
- */
- Term_Init_Str = SLtt_tgetstr ("ti");
- Term_Reset_Str = SLtt_tgetstr ("te");
-
- /* If I do this for vtxxx terminals, arrow keys start sending ESC O A,
- * which I do not want. This is mainly for HP terminals.
- */
- if ((almost_vtxxx == 0) || SLtt_Force_Keypad_Init)
- {
- Keypad_Init_Str = SLtt_tgetstr ("ks");
- Keypad_Reset_Str = SLtt_tgetstr ("ke");
- }
-
- /* Make up for defective termcap/terminfo databases */
- if ((Vt100_Like && (term[2] != '1'))
- || Linux_Console
- || is_xterm
- )
- {
- if (Del_N_Lines_Str == NULL) Del_N_Lines_Str = "\033[%dM";
- if (Add_N_Lines_Str == NULL) Add_N_Lines_Str = "\033[%dL";
- }
-
- Scroll_R_Str = SLtt_tgetstr("cs");
-
- SLtt_get_screen_size ();
-
- if ((Scroll_R_Str == NULL)
- || (((NULL == Del_N_Lines_Str) || (NULL == Add_N_Lines_Str))
- && (NULL == Rev_Scroll_Str)))
- {
- if (is_xterm
- || Linux_Console
- )
- {
- /* Defective termcap mode!!!! */
- SLtt_set_term_vtxxx (NULL);
- }
- else SLtt_Term_Cannot_Scroll = 1;
- }
-
- Del_Eol_Str = SLtt_tgetstr("ce");
- Del_Bol_Str = SLtt_tgetstr("cb");
- if (is_xterm && (Del_Bol_Str == NULL))
- Del_Bol_Str = "\033[1K";
- if (is_xterm && (Del_Eol_Str == NULL))
- Del_Bol_Str = "\033[K";
-
- Rev_Vid_Str = SLtt_tgetstr("mr");
- if (Rev_Vid_Str == NULL) Rev_Vid_Str = SLtt_tgetstr("so");
-
- Bold_Vid_Str = SLtt_tgetstr("md");
-
- /* Although xterm cannot blink, it does display the blinking characters
- * as bold ones. Some Rxvt will display the background as high intensity.
- */
- if ((NULL == (Blink_Vid_Str = SLtt_tgetstr("mb")))
- && is_xterm)
- Blink_Vid_Str = "\033[5m";
-
- UnderLine_Vid_Str = SLtt_tgetstr("us");
-
- Start_Alt_Chars_Str = SLtt_tgetstr ("as"); /* smacs */
- End_Alt_Chars_Str = SLtt_tgetstr ("ae"); /* rmacs */
- Enable_Alt_Char_Set = SLtt_tgetstr ("eA"); /* enacs */
- SLtt_Graphics_Char_Pairs = SLtt_tgetstr ("ac");
-
- if (NULL == SLtt_Graphics_Char_Pairs)
- {
- /* make up for defective termcap/terminfo */
- if (Vt100_Like)
- {
- Start_Alt_Chars_Str = "\016";
- End_Alt_Chars_Str = "\017";
- Enable_Alt_Char_Set = "\033)0";
- }
- }
-
- /* aixterm added by willi */
- if (is_xterm || !strncmp (term, "aixterm", 7))
- {
- Start_Alt_Chars_Str = "\016";
- End_Alt_Chars_Str = "\017";
- Enable_Alt_Char_Set = "\033(B\033)0";
- }
-
- if ((SLtt_Graphics_Char_Pairs == NULL) &&
- ((Start_Alt_Chars_Str == NULL) || (End_Alt_Chars_Str == NULL)))
- {
- SLtt_Has_Alt_Charset = 0;
- Enable_Alt_Char_Set = NULL;
- }
- else SLtt_Has_Alt_Charset = 1;
-
-#ifdef AMIGA
- Enable_Alt_Char_Set = Start_Alt_Chars_Str = End_Alt_Chars_Str = NULL;
-#endif
-
- /* status line capabilities */
- if ((SLtt_Has_Status_Line == -1)
- && (0 != (SLtt_Has_Status_Line = TGETFLAG ("hs"))))
- {
- Disable_Status_line_Str = SLtt_tgetstr ("ds");
- Return_From_Status_Line_Str = SLtt_tgetstr ("fs");
- Goto_Status_Line_Str = SLtt_tgetstr ("ts");
- /* Status_Line_Esc_Ok = TGETFLAG("es"); */
- Num_Status_Line_Columns = SLtt_tgetnum ("ws");
- if (Num_Status_Line_Columns < 0) Num_Status_Line_Columns = 0;
- }
-
- if (NULL == (Norm_Vid_Str = SLtt_tgetstr("me")))
- {
- Norm_Vid_Str = SLtt_tgetstr("se");
- }
-
- Cursor_Invisible_Str = SLtt_tgetstr("vi");
- Cursor_Visible_Str = SLtt_tgetstr("ve");
-
- Curs_F_Str = SLtt_tgetstr("RI");
-
-# if 0
- if (NULL != Curs_F_Str)
- {
- Len_Curs_F_Str = strlen(Curs_F_Str);
- }
- else Len_Curs_F_Str = strlen(Curs_Pos_Str);
-# endif
-
- Automatic_Margins = TGETFLAG ("am");
- /* No_Move_In_Standout = !TGETFLAG ("ms"); */
-# ifdef HP_GLITCH_CODE
- Has_HP_Glitch = TGETFLAG ("xs");
-# else
- Worthless_Highlight = TGETFLAG ("xs");
-# endif
-
- if (Worthless_Highlight == 0)
- { /* Magic cookie glitch */
- Worthless_Highlight = (SLtt_tgetnum ("sg") > 0);
- }
-
- if (Worthless_Highlight)
- SLtt_Has_Alt_Charset = 0;
-
- Reset_Color_String = SLtt_tgetstr ("op");
- Color_Fg_Str = SLtt_tgetstr ("AF"); /* ANSI setaf */
- Color_Bg_Str = SLtt_tgetstr ("AB"); /* ANSI setbf */
- if ((Color_Fg_Str == NULL) || (Color_Bg_Str == NULL))
- {
- Color_Fg_Str = SLtt_tgetstr ("Sf"); /* setf */
- Color_Bg_Str = SLtt_tgetstr ("Sb"); /* setb */
- }
-
- if ((Max_Terminfo_Colors = SLtt_tgetnum ("Co")) < 0)
- Max_Terminfo_Colors = 8;
-
- if ((Color_Bg_Str != NULL) && (Color_Fg_Str != NULL))
- SLtt_Use_Ansi_Colors = 1;
- else
- {
-#if 0
- Color_Fg_Str = "%?%p1%{7}%>%t\033[1;3%p1%{8}%m%dm%e\033[3%p1%dm%;";
- Color_Bg_Str = "%?%p1%{7}%>%t\033[5;4%p1%{8}%m%dm%e\033[4%p1%dm%;";
- Max_Terminfo_Colors = 16;
-#else
- Color_Fg_Str = "\033[3%dm";
- Color_Bg_Str = "\033[4%dm";
- Max_Terminfo_Colors = 8;
-#endif
- }
-
-#if SLTT_HAS_NON_BCE_SUPPORT
- Can_Background_Color_Erase = TGETFLAG ("ut"); /* bce */
- /* Modern xterms have the BCE capability as well as the linux console */
- if (Can_Background_Color_Erase == 0)
- {
- Can_Background_Color_Erase = (Linux_Console
-# if SLTT_XTERM_ALWAYS_BCE
- || is_xterm
-# endif
- );
- }
-#endif
- get_color_info ();
-
-
- if ((Cls_Str == NULL)
- || (Curs_Pos_Str == NULL))
- return -2;
-
- return 0;
-}
-
-#endif
-/* Unix */
-
-/* specific to vtxxx only */
-void SLtt_enable_cursor_keys (void)
-{
-#ifdef __unix__
- if (Vt100_Like)
-#endif
- tt_write_string("\033=\033[?1l");
-}
-
-#ifdef VMS
-int SLtt_initialize (char *term)
-{
- SLtt_get_terminfo ();
- return 0;
-}
-
-void SLtt_get_terminfo ()
-{
- int zero = 0;
-
- Color_Fg_Str = "\033[3%dm";
- Color_Bg_Str = "\033[4%dm";
- Max_Terminfo_Colors = 8;
-
- get_color_info ();
-
- SLtt_set_term_vtxxx(&zero);
- Start_Alt_Chars_Str = "\016";
- End_Alt_Chars_Str = "\017";
- SLtt_Has_Alt_Charset = 1;
- SLtt_Graphics_Char_Pairs = "aaffgghhjjkkllmmnnooqqssttuuvvwwxx";
- Enable_Alt_Char_Set = "\033(B\033)0";
- SLtt_get_screen_size ();
-}
-#endif
-
-/* This sets term for vt102 terminals it parameter vt100 is 0. If vt100
- * is non-zero, set terminal appropriate for a only vt100
- * (no add line capability). */
-
-void SLtt_set_term_vtxxx(int *vt100)
-{
- Norm_Vid_Str = "\033[m";
-
- Scroll_R_Str = "\033[%i%d;%dr";
- Cls_Str = "\033[2J\033[H";
- Rev_Vid_Str = "\033[7m";
- Bold_Vid_Str = "\033[1m";
- Blink_Vid_Str = "\033[5m";
- UnderLine_Vid_Str = "\033[4m";
- Del_Eol_Str = "\033[K";
- Del_Bol_Str = "\033[1K";
- Rev_Scroll_Str = "\033M";
- Curs_F_Str = "\033[%dC";
- /* Len_Curs_F_Str = 5; */
- Curs_Pos_Str = "\033[%i%d;%dH";
- if ((vt100 == NULL) || (*vt100 == 0))
- {
- Ins_Mode_Str = "\033[4h";
- Eins_Mode_Str = "\033[4l";
- Del_Char_Str = "\033[P";
- Del_N_Lines_Str = "\033[%dM";
- Add_N_Lines_Str = "\033[%dL";
- SLtt_Term_Cannot_Insert = 0;
- }
- else
- {
- Del_N_Lines_Str = NULL;
- Add_N_Lines_Str = NULL;
- SLtt_Term_Cannot_Insert = 1;
- }
- SLtt_Term_Cannot_Scroll = 0;
- /* No_Move_In_Standout = 0; */
-}
-
-int SLtt_init_video (void)
-{
- /* send_string_to_term("\033[?6h"); */
- /* relative origin mode */
- tt_write_string (Term_Init_Str);
- tt_write_string (Keypad_Init_Str);
- SLtt_reset_scroll_region();
- SLtt_end_insert();
- tt_write_string (Enable_Alt_Char_Set);
- Video_Initialized = 1;
- return 0;
-}
-
-int SLtt_reset_video (void)
-{
- SLtt_goto_rc (SLtt_Screen_Rows - 1, 0);
- Cursor_Set = 0;
- SLtt_normal_video (); /* MSKermit requires this */
- tt_write_string(Norm_Vid_Str);
-
- Current_Fgbg = 0xFFFFFFFFU;
- SLtt_set_alt_char_set (0);
- if (SLtt_Use_Ansi_Colors)
- {
- if (Reset_Color_String == NULL)
- {
- SLtt_Char_Type attr;
- if (-1 != make_color_fgbg (NULL, NULL, &attr))
- write_attributes (attr);
- else tt_write_string ("\033[0m\033[m");
- }
- else tt_write_string (Reset_Color_String);
- Current_Fgbg = 0xFFFFFFFFU;
- }
- SLtt_erase_line ();
- tt_write_string (Keypad_Reset_Str);
- tt_write_string (Term_Reset_Str);
- SLtt_flush_output ();
- Video_Initialized = 0;
- return 0;
-}
-
-void SLtt_bold_video (void)
-{
- tt_write_string (Bold_Vid_Str);
-}
-
-int SLtt_set_mouse_mode (int mode, int force)
-{
- char *term;
-
- if (force == 0)
- {
- if (NULL == (term = (char *) getenv("TERM"))) return -1;
- if (strncmp ("xterm", term, 5))
- return -1;
- }
-
- if (mode)
- tt_write_string ("\033[?9h");
- else
- tt_write_string ("\033[?9l");
-
- return 0;
-}
-
-void SLtt_disable_status_line (void)
-{
- if (SLtt_Has_Status_Line > 0)
- {
- tt_write_string (Disable_Status_line_Str);
- SLtt_flush_output ();
- }
-}
-
-int SLtt_write_to_status_line (char *s, int col)
-{
- if ((SLtt_Has_Status_Line <= 0)
- || (Goto_Status_Line_Str == NULL)
- || (Return_From_Status_Line_Str == NULL))
- return -1;
-
- tt_printf (Goto_Status_Line_Str, col, 0);
- tt_write_string (s);
- tt_write_string (Return_From_Status_Line_Str);
- return 0;
-}
-
-void SLtt_get_screen_size (void)
-{
-#ifdef VMS
- int status, code;
- unsigned short chan;
- $DESCRIPTOR(dev_dsc, "SYS$INPUT:");
-#endif
- int r = 0, c = 0;
-
-#ifdef TIOCGWINSZ
- struct winsize wind_struct;
-
- do
- {
- if ((ioctl(1,TIOCGWINSZ,&wind_struct) == 0)
- || (ioctl(0, TIOCGWINSZ, &wind_struct) == 0)
- || (ioctl(2, TIOCGWINSZ, &wind_struct) == 0))
- {
- c = (int) wind_struct.ws_col;
- r = (int) wind_struct.ws_row;
- break;
- }
- }
- while (errno == EINTR);
-
-#endif
-
-#ifdef VMS
- status = sys$assign(&dev_dsc,&chan,0,0,0);
- if (status & 1)
- {
- code = DVI$_DEVBUFSIZ;
- status = lib$getdvi(&code, &chan,0, &c, 0,0);
- if (!(status & 1))
- c = 80;
- code = DVI$_TT_PAGE;
- status = lib$getdvi(&code, &chan,0, &r, 0,0);
- if (!(status & 1))
- r = 24;
- sys$dassgn(chan);
- }
-#endif
-
- if (r <= 0)
- {
- char *s = getenv ("LINES");
- if (s != NULL) r = atoi (s);
- }
-
- if (c <= 0)
- {
- char *s = getenv ("COLUMNS");
- if (s != NULL) c = atoi (s);
- }
-
- if (r <= 0) r = 24;
- if (c <= 0) c = 80;
-#if 0
- if ((r <= 0) || (r > 200)) r = 24;
- if ((c <= 0) || (c > 250)) c = 80;
-#endif
- SLtt_Screen_Rows = r;
- SLtt_Screen_Cols = c;
-}
-
-#if SLTT_HAS_NON_BCE_SUPPORT
-int _SLtt_get_bce_color_offset (void)
-{
- if ((SLtt_Use_Ansi_Colors == 0)
- || Can_Background_Color_Erase
- || SLtt_Use_Blink_For_ACS) /* in this case, we cannot lose a color */
- Bce_Color_Offset = 0;
- else
- {
- if (GET_BG(Ansi_Color_Map[0].fgbg) == SLSMG_COLOR_DEFAULT)
- Bce_Color_Offset = 0;
- else
- Bce_Color_Offset = 1;
- }
-
- return Bce_Color_Offset;
-}
-#endif
diff --git a/mdk-stage1/slang/slerr.c b/mdk-stage1/slang/slerr.c
deleted file mode 100644
index 139b3859b..000000000
--- a/mdk-stage1/slang/slerr.c
+++ /dev/null
@@ -1,181 +0,0 @@
-/* error handling common to all routines. */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-void (*SLang_VMessage_Hook) (char *, va_list);
-void (*SLang_Error_Hook)(char *);
-void (*SLang_Exit_Error_Hook)(char *, va_list);
-volatile int SLang_Error = 0;
-char *SLang_Error_Message;
-volatile int SLKeyBoard_Quit = 0;
-
-static char *get_error_string (void)
-{
- char *str;
-
- if (!SLang_Error) SLang_Error = SL_UNKNOWN_ERROR;
- if (SLang_Error_Message != NULL) str = SLang_Error_Message;
- else switch(SLang_Error)
- {
- case SL_NOT_IMPLEMENTED: str = "Not Implemented"; break;
- case SL_APPLICATION_ERROR: str = "Application Error"; break;
- case SL_VARIABLE_UNINITIALIZED: str = "Variable Uninitialized"; break;
- case SL_MALLOC_ERROR : str = "Malloc Error"; break;
- case SL_INTERNAL_ERROR: str = "Internal Error"; break;
- case SL_STACK_OVERFLOW: str = "Stack Overflow"; break;
- case SL_STACK_UNDERFLOW: str = "Stack Underflow"; break;
- case SL_INTRINSIC_ERROR: str = "Intrinsic Error"; break;
- case SL_USER_BREAK: str = "User Break"; break;
- case SL_UNDEFINED_NAME: str = "Undefined Name"; break;
- case SL_SYNTAX_ERROR: str = "Syntax Error"; break;
- case SL_DUPLICATE_DEFINITION: str = "Duplicate Definition"; break;
- case SL_TYPE_MISMATCH: str = "Type Mismatch"; break;
- case SL_READONLY_ERROR: str = "Variable is read-only"; break;
- case SL_DIVIDE_ERROR: str = "Divide by zero"; break;
- case SL_OBJ_NOPEN: str = "Object not opened"; break;
- case SL_OBJ_UNKNOWN: str = "Object unknown"; break;
- case SL_INVALID_PARM: str = "Invalid Parameter"; break;
- case SL_TYPE_UNDEFINED_OP_ERROR:
- str = "Operation not defined for datatype"; break;
- case SL_USER_ERROR:
- str = "User Error"; break;
- case SL_USAGE_ERROR:
- str = "Illegal usage of function";
- break;
- case SL_FLOATING_EXCEPTION:
- str = "Floating Point Exception";
- break;
- case SL_UNKNOWN_ERROR:
- default: str = "Unknown Error Code";
- }
-
- SLang_Error_Message = NULL;
- return str;
-}
-
-void SLang_doerror (char *error)
-{
- char *str = NULL;
- char *err;
- char *malloced_err_buf;
- char err_buf [1024];
-
- malloced_err_buf = NULL;
-
- if (((SLang_Error == SL_USER_ERROR)
- || (SLang_Error == SL_USAGE_ERROR))
- && (error != NULL) && (*error != 0))
- err = error;
- else
- {
- char *sle = "S-Lang Error: ";
- unsigned int len;
- char *fmt;
-
- str = get_error_string ();
-
- fmt = "%s%s%s";
- if ((error == NULL) || (*error == 0))
- error = "";
- else if (SLang_Error == SL_UNKNOWN_ERROR)
- /* Do not display an unknown error message if error is non-NULL */
- str = "";
- else
- fmt = "%s%s: %s";
-
- len = strlen (sle) + strlen (str) + strlen(error) + 1;
-
- err = err_buf;
- if (len >= sizeof (err_buf))
- {
- if (NULL == (malloced_err_buf = SLmalloc (len)))
- err = NULL;
- else
- err = malloced_err_buf;
- }
-
- if (err != NULL) sprintf (err, fmt, sle, str, error);
- else err = "Out of memory";
- }
-
- if (SLang_Error_Hook == NULL)
- {
- fputs (err, stderr);
- fputs("\r\n", stderr);
- fflush (stderr);
- }
- else
- (*SLang_Error_Hook)(err);
-
- SLfree (malloced_err_buf);
-}
-
-void SLang_verror (int err_code, char *fmt, ...)
-{
- va_list ap;
- char err [1024];
-
- if (err_code == 0) err_code = SL_INTRINSIC_ERROR;
- if (SLang_Error == 0) SLang_Error = err_code;
-
- if (fmt != NULL)
- {
- va_start(ap, fmt);
- (void) _SLvsnprintf (err, sizeof (err), fmt, ap);
- fmt = err;
- va_end(ap);
- }
-
- SLang_doerror (fmt);
-}
-
-void SLang_exit_error (char *fmt, ...)
-{
- va_list ap;
-
- va_start (ap, fmt);
- if (SLang_Exit_Error_Hook != NULL)
- {
- (*SLang_Exit_Error_Hook) (fmt, ap);
- exit (1);
- }
-
- if (fmt != NULL)
- {
- vfprintf (stderr, fmt, ap);
- fputs ("\r\n", stderr);
- fflush (stderr);
- }
- va_end (ap);
-
- exit (1);
-}
-
-void SLang_vmessage (char *fmt, ...)
-{
- va_list ap;
-
- if (fmt == NULL)
- return;
-
- va_start (ap, fmt);
-
- if (SLang_VMessage_Hook != NULL)
- (*SLang_VMessage_Hook) (fmt, ap);
- else
- {
- vfprintf (stdout, fmt, ap);
- fputs ("\r\n", stdout);
- }
-
- va_end (ap);
-}
diff --git a/mdk-stage1/slang/slerrno.c b/mdk-stage1/slang/slerrno.c
deleted file mode 100644
index 662fadde1..000000000
--- a/mdk-stage1/slang/slerrno.c
+++ /dev/null
@@ -1,219 +0,0 @@
-/* The point of this file is to handle errno values in a system independent
- * way so that they may be used in slang scripts.
- */
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include <errno.h>
-#include "slang.h"
-#include "_slang.h"
-
-typedef struct
-{
- char *msg;
- int sys_errno;
- char *symbolic_name;
-}
-Errno_Map_Type;
-
-static Errno_Map_Type Errno_Map [] =
-{
-#ifndef EPERM
-# define EPERM -1
-#endif
- {"Not owner", EPERM, "EPERM"},
-#ifndef ENOENT
-# define ENOENT -1
-#endif
- {"No such file or directory", ENOENT, "ENOENT"},
-#ifndef ESRCH
-# define ESRCH -1
-#endif
- {"No such process", ESRCH, "ESRCH"},
-#ifndef EINTR
-# define EINTR -1
-#endif
- {"Interrupted system call", EINTR, "EINTR"},
-#ifndef EIO
-# define EIO -1
-#endif
- {"I/O error", EIO, "EIO"},
-#ifndef ENXIO
-# define ENXIO -1
-#endif
- {"No such device or address", ENXIO, "ENXIO"},
-#ifndef E2BIG
-# define E2BIG -1
-#endif
- {"Arg list too long", E2BIG, "E2BIG"},
-#ifndef ENOEXEC
-# define ENOEXEC -1
-#endif
- {"Exec format error", ENOEXEC,"ENOEXEC"},
-#ifndef EBADF
-# define EBADF -1
-#endif
- {"Bad file number", EBADF, "EBADF"},
-#ifndef ECHILD
-# define ECHILD -1
-#endif
- {"No children", ECHILD, "ECHILD"},
-#ifndef EAGAIN
-# define EAGAIN -1
-#endif
- {"Try again", EAGAIN, "EAGAIN"},
-#ifndef ENOMEM
-# define ENOMEM -1
-#endif
- {"Not enough core", ENOMEM, "ENOMEM"},
-#ifndef EACCES
-# define EACCES -1
-#endif
- {"Permission denied", EACCES, "EACCES"},
-#ifndef EFAULT
-# define EFAULT -1
-#endif
- {"Bad address", EFAULT, "EFAULT"},
-#ifndef ENOTBLK
-# define ENOTBLK -1
-#endif
- {"Block device required", ENOTBLK, "ENOTBLK"},
-#ifndef EBUSY
-# define EBUSY -1
-#endif
- {"Mount device busy", EBUSY, "EBUSY"},
-#ifndef EEXIST
-# define EEXIST -1
-#endif
- {"File exists", EEXIST, "EEXIST"},
-#ifndef EXDEV
-# define EXDEV -1
-#endif
- {"Cross-device link", EXDEV, "EXDEV"},
-#ifndef ENODEV
-# define ENODEV -1
-#endif
- {"No such device", ENODEV, "ENODEV"},
-#ifndef ENOTDIR
-# define ENOTDIR -1
-#endif
- {"Not a directory", ENOTDIR, "ENOTDIR"},
-#ifndef EISDIR
-# define EISDIR -1
-#endif
- {"Is a directory", EISDIR, "EISDIR"},
-#ifndef EINVAL
-# define EINVAL -1
-#endif
- {"Invalid argument", EINVAL, "EINVAL"},
-#ifndef ENFILE
-# define ENFILE -1
-#endif
- {"File table overflow", ENFILE, "ENFILE"},
-#ifndef EMFILE
-# define EMFILE -1
-#endif
- {"Too many open files", EMFILE, "EMFILE"},
-#ifndef ENOTTY
-# define ENOTTY -1
-#endif
- {"Not a typewriter", ENOTTY, "ENOTTY"},
-#ifndef ETXTBSY
-# define ETXTBSY -1
-#endif
- {"Text file busy", ETXTBSY, "ETXTBSY"},
-#ifndef EFBIG
-# define EFBIG -1
-#endif
- {"File too large", EFBIG, "EFBIG"},
-#ifndef ENOSPC
-# define ENOSPC -1
-#endif
- {"No space left on device", ENOSPC, "ENOSPC"},
-#ifndef ESPIPE
-# define ESPIPE -1
-#endif
- {"Illegal seek", ESPIPE, "ESPIPE"},
-#ifndef EROFS
-# define EROFS -1
-#endif
- {"Read-only file system", EROFS, "EROFS"},
-#ifndef EMLINK
-# define EMLINK -1
-#endif
- {"Too many links", EMLINK, "EMLINK"},
-#ifndef EPIPE
-# define EPIPE -1
-#endif
- {"Broken pipe", EPIPE, "EPIPE"},
-#ifndef ELOOP
-# define ELOOP -1
-#endif
- {"Too many levels of symbolic links",ELOOP, "ELOOP"},
-#ifndef ENAMETOOLONG
-# define ENAMETOOLONG -1
-#endif
- {"File name too long", ENAMETOOLONG, "ENAMETOOLONG"},
-
- {NULL, 0, NULL}
-};
-
-int _SLerrno_errno;
-
-int SLerrno_set_errno (int sys_errno)
-{
- _SLerrno_errno = sys_errno;
- return 0;
-}
-
-char *SLerrno_strerror (int sys_errno)
-{
- Errno_Map_Type *e;
-
- e = Errno_Map;
- while (e->msg != NULL)
- {
- if (e->sys_errno == sys_errno)
- return e->msg;
-
- e++;
- }
-
- if (sys_errno == SL_ERRNO_NOT_IMPLEMENTED)
- return "System call not available for this platform";
-
- return "Unknown error";
-}
-
-static char *intrin_errno_string (int *sys_errno)
-{
- return SLerrno_strerror (*sys_errno);
-}
-
-int _SLerrno_init (void)
-{
- static Errno_Map_Type *e;
-
- if (e != NULL) /* already initialized */
- return 0;
-
- if ((-1 == SLadd_intrinsic_function ("errno_string", (FVOID_STAR) intrin_errno_string,
- SLANG_STRING_TYPE, 1, SLANG_INT_TYPE))
- || (-1 == SLadd_intrinsic_variable ("errno", (VOID_STAR)&_SLerrno_errno, SLANG_INT_TYPE, 1)))
- return -1;
-
- e = Errno_Map;
- while (e->msg != NULL)
- {
- if (-1 == SLadd_intrinsic_variable (e->symbolic_name, (VOID_STAR) &e->sys_errno, SLANG_INT_TYPE, 1))
- return -1;
- e++;
- }
-
- return 0;
-}
diff --git a/mdk-stage1/slang/slgetkey.c b/mdk-stage1/slang/slgetkey.c
deleted file mode 100644
index 2f2914f07..000000000
--- a/mdk-stage1/slang/slgetkey.c
+++ /dev/null
@@ -1,306 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-unsigned int SLang_Input_Buffer_Len = 0;
-unsigned char SLang_Input_Buffer [SL_MAX_INPUT_BUFFER_LEN];
-
-int SLang_Abort_Char = 7;
-int SLang_Ignore_User_Abort = 0;
-
-/* This has the effect of mapping all characters in the range 128-169 to
- * ESC [ something
- */
-
-unsigned int SLang_getkey (void)
-{
- unsigned int imax;
- unsigned int ch;
-
- if (SLang_Input_Buffer_Len)
- {
- ch = (unsigned int) *SLang_Input_Buffer;
- SLang_Input_Buffer_Len--;
- imax = SLang_Input_Buffer_Len;
-
- SLMEMCPY ((char *) SLang_Input_Buffer,
- (char *) (SLang_Input_Buffer + 1), imax);
- }
- else if (SLANG_GETKEY_ERROR == (ch = _SLsys_getkey ())) return ch;
-
-#if _SLANG_MAP_VTXXX_8BIT
-# if !defined(IBMPC_SYSTEM)
- if (ch & 0x80)
- {
- unsigned char i;
- i = (unsigned char) (ch & 0x7F);
- if (i < ' ')
- {
- i += 64;
- SLang_ungetkey (i);
- ch = 27;
- }
- }
-# endif
-#endif
- return(ch);
-}
-
-int SLang_ungetkey_string (unsigned char *s, unsigned int n)
-{
- register unsigned char *bmax, *b, *b1;
- if (SLang_Input_Buffer_Len + n + 3 > SL_MAX_INPUT_BUFFER_LEN)
- return -1;
-
- b = SLang_Input_Buffer;
- bmax = (b - 1) + SLang_Input_Buffer_Len;
- b1 = bmax + n;
- while (bmax >= b) *b1-- = *bmax--;
- bmax = b + n;
- while (b < bmax) *b++ = *s++;
- SLang_Input_Buffer_Len += n;
- return 0;
-}
-
-int SLang_buffer_keystring (unsigned char *s, unsigned int n)
-{
-
- if (n + SLang_Input_Buffer_Len + 3 > SL_MAX_INPUT_BUFFER_LEN) return -1;
-
- SLMEMCPY ((char *) SLang_Input_Buffer + SLang_Input_Buffer_Len,
- (char *) s, n);
- SLang_Input_Buffer_Len += n;
- return 0;
-}
-
-int SLang_ungetkey (unsigned char ch)
-{
- return SLang_ungetkey_string(&ch, 1);
-}
-
-int SLang_input_pending (int tsecs)
-{
- int n;
- unsigned char c;
- if (SLang_Input_Buffer_Len) return (int) SLang_Input_Buffer_Len;
-
- n = _SLsys_input_pending (tsecs);
-
- if (n <= 0) return 0;
-
- c = (unsigned char) SLang_getkey ();
- SLang_ungetkey_string (&c, 1);
-
- return n;
-}
-
-void SLang_flush_input (void)
-{
- int quit = SLKeyBoard_Quit;
-
- SLang_Input_Buffer_Len = 0;
- SLKeyBoard_Quit = 0;
- while (_SLsys_input_pending (0) > 0)
- {
- (void) _SLsys_getkey ();
- /* Set this to 0 because _SLsys_getkey may stuff keyboard buffer if
- * key sends key sequence (OS/2, DOS, maybe VMS).
- */
- SLang_Input_Buffer_Len = 0;
- }
- SLKeyBoard_Quit = quit;
-}
-
-#ifdef IBMPC_SYSTEM
-static int Map_To_ANSI;
-int SLgetkey_map_to_ansi (int enable)
-{
- Map_To_ANSI = enable;
- return 0;
-}
-
-static int convert_scancode (unsigned int scan,
- unsigned int shift,
- int getkey,
- unsigned int *ret_key)
-{
- unsigned char buf[16];
- unsigned char *b;
- unsigned char end;
- int is_arrow;
-
- shift &= (_SLTT_KEY_ALT|_SLTT_KEY_SHIFT|_SLTT_KEY_CTRL);
-
- b = buf;
- if (_SLTT_KEY_ALT == shift)
- {
- shift = 0;
- *b++ = 27;
- }
- *b++ = 27;
- *b++ = '[';
-
- is_arrow = 0;
- end = '~';
- if (shift)
- {
- if (shift == _SLTT_KEY_CTRL)
- end = '^';
- else if (shift == _SLTT_KEY_SHIFT)
- end = '$';
- else shift = 0;
- }
-
- /* These mappings correspond to what rxvt produces under Linux */
- switch (scan & 0xFF)
- {
- default:
- return -1;
-
- case 0x47: /* home */
- *b++ = '1';
- break;
- case 0x48: /* up */
- end = 'A';
- is_arrow = 1;
- break;
- case 0x49: /* PgUp */
- *b++ = '5';
- break;
- case 0x4B: /* Left */
- end = 'D';
- is_arrow = 1;
- break;
- case 0x4D: /* Right */
- end = 'C';
- is_arrow = 1;
- break;
- case 0x4F: /* End */
- *b++ = '4';
- break;
- case 0x50: /* Down */
- end = 'B';
- is_arrow = 1;
- break;
- case 0x51: /* PgDn */
- *b++ = '6';
- break;
- case 0x52: /* Insert */
- *b++ = '2';
- break;
- case 0x53: /* Delete */
- *b++ = '3';
- break;
- case ';': /* F1 */
- *b++ = '1';
- *b++ = '1';
- break;
- case '<': /* F2 */
- *b++ = '1';
- *b++ = '2';
- break;
- case '=': /* F3 */
- *b++ = '1';
- *b++ = '3';
- break;
-
- case '>': /* F4 */
- *b++ = '1';
- *b++ = '4';
- break;
-
- case '?': /* F5 */
- *b++ = '1';
- *b++ = '5';
- break;
-
- case '@': /* F6 */
- *b++ = '1';
- *b++ = '7';
- break;
-
- case 'A': /* F7 */
- *b++ = '1';
- *b++ = '8';
- break;
-
- case 'B': /* F8 */
- *b++ = '1';
- *b++ = '9';
- break;
-
- case 'C': /* F9 */
- *b++ = '2';
- *b++ = '0';
- break;
-
- case 'D': /* F10 */
- *b++ = '2';
- *b++ = '1';
- break;
-
- case 0x57: /* F11 */
- *b++ = '2';
- *b++ = '3';
- break;
-
- case 0x58: /* F12 */
- *b++ = '2';
- *b++ = '4';
- break;
- }
-
- if (is_arrow && shift)
- {
- if (shift == _SLTT_KEY_CTRL)
- end &= 0x1F;
- else
- end |= 0x20;
- }
- *b++ = end;
-
- if (getkey)
- {
- (void) SLang_buffer_keystring (buf + 1, (unsigned int) (b - (buf + 1)));
- *ret_key = buf[0];
- return 0;
- }
-
- (void) SLang_buffer_keystring (buf, (unsigned int) (b - buf));
- return 0;
-}
-
-
-unsigned int _SLpc_convert_scancode (unsigned int scan,
- unsigned int shift,
- int getkey)
-{
- unsigned char buf[16];
-
- if (Map_To_ANSI)
- {
- if (0 == convert_scancode (scan, shift, getkey, &scan))
- return scan;
- }
-
- if (getkey)
- {
- buf[0] = scan & 0xFF;
- SLang_buffer_keystring (buf, 1);
- return (scan >> 8) & 0xFF;
- }
- buf[0] = (scan >> 8) & 0xFF;
- buf[1] = scan & 0xFF;
- (void) SLang_buffer_keystring (buf, 2);
- return 0;
-}
-
-#endif
diff --git a/mdk-stage1/slang/slimport.c b/mdk-stage1/slang/slimport.c
deleted file mode 100644
index 44b4b25e1..000000000
--- a/mdk-stage1/slang/slimport.c
+++ /dev/null
@@ -1,281 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-#define SLANG_HAS_DYNAMIC_LINKING 1
-
-#ifndef HAVE_DLFCN_H
-# undef SLANG_HAS_DYNAMIC_LINKING
-# define SLANG_HAS_DYNAMIC_LINKING 0
-#endif
-
-/* The rest of this file is in the if block */
-#if SLANG_HAS_DYNAMIC_LINKING
-
-#ifdef HAVE_DLFCN_H
-# include <dlfcn.h>
-#endif
-
-static char *Module_Path;
-#define MODULE_PATH_ENV_NAME "SLANG_MODULE_PATH"
-#ifndef MODULE_INSTALL_DIR
-# define MODULE_INSTALL_DIR "/usr/local/lib/slang/modules"
-#endif
-
-typedef struct _Handle_Type
-{
- struct _Handle_Type *next;
- char *name;
- VOID_STAR handle;
- void (*deinit_fun) (void);
-}
-Handle_Type;
-
-static Handle_Type *Handle_List;
-
-static void delete_handles (void)
-{
- while (Handle_List != NULL)
- {
- Handle_Type *next = Handle_List->next;
-
- if (Handle_List->deinit_fun != NULL)
- Handle_List->deinit_fun ();
- (void) dlclose (Handle_List->handle);
- SLang_free_slstring (Handle_List->name);
- SLfree ((char *)Handle_List);
- Handle_List = next;
- }
-}
-
-static Handle_Type *save_handle (char *name, VOID_STAR h, void (*df)(void))
-{
- Handle_Type *l;
-
- l = (Handle_Type *) SLmalloc (sizeof (Handle_Type));
- if (l == NULL)
- return NULL;
- memset ((char *) l, 0, sizeof(Handle_Type));
- if (NULL == (l->name = SLang_create_slstring (name)))
- {
- SLfree ((char *) l);
- return NULL;
- }
- l->handle = h;
- l->next = Handle_List;
- l->deinit_fun = df;
- Handle_List = l;
-
- return l;
-}
-
-static Handle_Type *find_handle (char *name)
-{
- Handle_Type *l;
-
- l = Handle_List;
- while (l != NULL)
- {
- if (0 == strcmp (l->name, name))
- break;
- l = l->next;
- }
- return l;
-}
-
-static int import_from_library (char *name,
- char *init_fun_name, char *deinit_fun_name,
- char *file,
- char *ns,
- char *ns_init_fun_name)
-{
- VOID_STAR handle;
- int (*init_fun) (void);
- int (*ns_init_fun) (char *);
- void (*deinit_fun) (void);
- char *err;
- char filebuf[1024];
- char *fun_name;
-
- if (NULL != find_handle (name))
- return 0; /* already loaded */
-
- while (1)
- {
-#ifndef RTLD_GLOBAL
-# define RTLD_GLOBAL 0
-#endif
-#ifdef RTLD_NOW
- handle = (VOID_STAR) dlopen (file, RTLD_NOW | RTLD_GLOBAL);
-#else
- handle = (VOID_STAR) dlopen (file, RTLD_LAZY | RTLD_GLOBAL);
-#endif
-
- if (handle != NULL)
- break;
-
- if (NULL == strchr (file, '/'))
- {
- _SLsnprintf (filebuf, sizeof (filebuf), "./%s", file);
- file = filebuf;
- continue;
- }
-
- if (NULL == (err = (char *) dlerror ()))
- err = "UNKNOWN";
-
- SLang_verror (SL_INTRINSIC_ERROR,
- "Error linking to %s: %s", file, err);
- return -1;
- }
-
- fun_name = ns_init_fun_name;
- ns_init_fun = (int (*)(char *)) dlsym (handle, fun_name);
- if (ns_init_fun == NULL)
- {
- if ((ns != NULL)
- && (0 != strcmp (ns, "Global")))
- goto return_error;
-
- fun_name = init_fun_name;
- init_fun = (int (*)(void)) dlsym (handle, fun_name);
- if (init_fun == NULL)
- goto return_error;
-
- if (-1 == (*init_fun) ())
- {
- dlclose (handle);
- return -1;
- }
- }
- else if (-1 == (*ns_init_fun) (ns))
- {
- dlclose (handle);
- return -1;
- }
-
-
- deinit_fun = (void (*)(void)) dlsym (handle, deinit_fun_name);
-
- (void) save_handle (name, handle, deinit_fun);
- return 0;
-
- return_error:
-
- if (NULL == (err = (char *) dlerror ()))
- err = "UNKNOWN";
-
- dlclose (handle);
- SLang_verror (SL_INTRINSIC_ERROR,
- "Unable to get symbol %s from %s: %s",
- name, file, err);
- return -1;
-}
-
-static void import_module (void)
-{
- char module_name[256];
- char symbol_name[256];
- char deinit_name[256];
- char ns_init_name[256];
- char *path;
- char *file;
- char *module;
- char *ns = NULL;
-
- if (SLang_Num_Function_Args == 2)
- {
- if (-1 == SLang_pop_slstring (&ns))
- return;
- }
-
- if (-1 == SLang_pop_slstring (&module))
- {
- SLang_free_slstring (ns); /* NULL ok */
- return;
- }
-
- _SLsnprintf (symbol_name, sizeof(symbol_name), "init_%s_module", module);
- _SLsnprintf (module_name, sizeof(module_name), "%s-module.so", module);
- _SLsnprintf (deinit_name, sizeof(deinit_name), "deinit_%s_module", module);
- _SLsnprintf (ns_init_name, sizeof (ns_init_name), "init_%s_module_ns", module);
-
- if (Module_Path != NULL)
- file = SLpath_find_file_in_path (Module_Path, module_name);
- else file = NULL;
-
- if ((file == NULL)
- && (NULL != (path = getenv (MODULE_PATH_ENV_NAME))))
- file = SLpath_find_file_in_path (path, module_name);
-
- if (file == NULL)
- file = SLpath_find_file_in_path (MODULE_INSTALL_DIR, module_name);
-
- if (file != NULL)
- {
- (void) import_from_library (symbol_name, symbol_name, deinit_name, file, ns, ns_init_name);
- SLfree (file);
- }
- else
- {
- /* Maybe the system loader can find it in LD_LIBRARY_PATH */
- (void) import_from_library (symbol_name, symbol_name, deinit_name, module_name, ns, ns_init_name);
- }
-}
-
-static void set_import_module_path (char *path)
-{
- (void) SLang_set_module_load_path (path);
-}
-
-static char *get_import_module_path (void)
-{
- char *path;
- if (Module_Path != NULL)
- return Module_Path;
- if (NULL != (path = getenv (MODULE_PATH_ENV_NAME)))
- return path;
- return MODULE_INSTALL_DIR;
-}
-
-static SLang_Intrin_Fun_Type Module_Intrins [] =
-{
- MAKE_INTRINSIC_0("import", import_module, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("set_import_module_path", set_import_module_path, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("get_import_module_path", get_import_module_path, SLANG_STRING_TYPE),
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-#endif /* SLANG_HAS_DYNAMIC_LINKING */
-
-int SLang_set_module_load_path (char *path)
-{
-#if SLANG_HAS_DYNAMIC_LINKING
- if (NULL == (path = SLang_create_slstring (path)))
- return -1;
- SLang_free_slstring (Module_Path);
- Module_Path = path;
- return 0;
-#else
- (void) path;
- return -1;
-#endif
-}
-
-int SLang_init_import (void)
-{
-#if SLANG_HAS_DYNAMIC_LINKING
- (void) SLang_add_cleanup_function (delete_handles);
- return SLadd_intrin_fun_table (Module_Intrins, "__IMPORT__");
-#else
- return 0;
-#endif
-}
diff --git a/mdk-stage1/slang/slinclud.h b/mdk-stage1/slang/slinclud.h
deleted file mode 100644
index d60a4423e..000000000
--- a/mdk-stage1/slang/slinclud.h
+++ /dev/null
@@ -1,26 +0,0 @@
-#ifndef _SLANG_INCLUDE_H_
-#define _SLANG_INCLUDE_H_
-
-#include "config.h"
-#include "sl-feat.h"
-
-#include <stdio.h>
-#include <string.h>
-
-#ifdef HAVE_STDLIB_H
-# include <stdlib.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-#ifdef HAVE_MALLOC_H
-# include <malloc.h>
-#endif
-
-#ifdef HAVE_MEMORY_H
-# include <memory.h>
-#endif
-
-#endif /* _SLANG_INCLUDE_H_ */
diff --git a/mdk-stage1/slang/slintall.c b/mdk-stage1/slang/slintall.c
deleted file mode 100644
index a66b9d6d2..000000000
--- a/mdk-stage1/slang/slintall.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-int SLang_init_all (void)
-{
- if ((-1 == SLang_init_slang ())
- || (-1 == SLang_init_slmath ())
- || (-1 == SLang_init_posix_dir ())
- || (-1 == SLang_init_posix_process ())
- || (-1 == SLang_init_stdio ())
- || (-1 == SLang_init_array ())
- || (-1 == SLang_init_posix_io ())
- || (-1 == SLang_init_ospath ())
- )
- return -1;
-
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slistruc.c b/mdk-stage1/slang/slistruc.c
deleted file mode 100644
index 06b8fd6ff..000000000
--- a/mdk-stage1/slang/slistruc.c
+++ /dev/null
@@ -1,218 +0,0 @@
-/* Intrinsic Structure type implementation */
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-/* Intrinsic structures */
-
-typedef struct
-{
- char *name;
- VOID_STAR addr;
- SLang_IStruct_Field_Type *fields;
-}
-_SLang_IStruct_Type;
-
-static SLang_IStruct_Field_Type *istruct_pop_field (char *name, int no_readonly, VOID_STAR *addr)
-{
- _SLang_IStruct_Type *s;
- SLang_IStruct_Field_Type *f;
- char *struct_addr;
-
- /* Note: There is no need to free this object */
- if (-1 == SLclass_pop_ptr_obj (SLANG_ISTRUCT_TYPE, (VOID_STAR *) &s))
- return NULL;
-
- if (NULL == (struct_addr = *(char **)s->addr))
- {
- SLang_verror (SL_INTRINSIC_ERROR,
- "%s is NULL. Unable to access field", s->name);
- return NULL;
- }
-
- f = s->fields;
- while (f->field_name != NULL)
- {
- /* Since both these are slstrings, just test pointers */
- if (f->field_name != name)
- {
- f++;
- continue;
- }
-
- if (no_readonly && f->read_only)
- {
- SLang_verror (SL_READONLY_ERROR,
- "%s.%s is read-only", s->name, name);
- return NULL;
- }
-
- *addr = (VOID_STAR) (struct_addr + f->offset);
- return f;
- }
-
- SLang_verror (SL_TYPE_MISMATCH,
- "%s has no field called %s", s->name, name);
- return NULL;
-}
-
-static int istruct_sget (unsigned char type, char *name)
-{
- SLang_IStruct_Field_Type *f;
- VOID_STAR addr;
- SLang_Class_Type *cl;
-
- if (NULL == (f = istruct_pop_field (name, 0, &addr)))
- return -1;
-
- type = f->type;
- cl = _SLclass_get_class (type);
-
- return (cl->cl_push_intrinsic)(f->type, addr);
-}
-
-static int istruct_sput (unsigned char type, char *name)
-{
- SLang_IStruct_Field_Type *f;
- VOID_STAR addr;
- SLang_Class_Type *cl;
-
- if (NULL == (f = istruct_pop_field (name, 1, &addr)))
- return -1;
-
- type = f->type;
- cl = _SLclass_get_class (type);
-
- return (*cl->cl_pop) (type, addr);
-}
-
-static int istruct_push (unsigned char type, VOID_STAR ptr)
-{
- _SLang_IStruct_Type *s;
-
- s = *(_SLang_IStruct_Type **) ptr;
- if ((s == NULL)
- || (s->addr == NULL)
- || (*(char **) s->addr == NULL))
- return SLang_push_null ();
-
- return SLclass_push_ptr_obj (type, (VOID_STAR) s);
-}
-
-static int istruct_pop (unsigned char type, VOID_STAR ptr)
-{
- return SLclass_pop_ptr_obj (type, (VOID_STAR *)ptr);
-}
-
-static void istruct_destroy (unsigned char type, VOID_STAR ptr)
-{
- (void) type;
- (void) ptr;
-}
-
-/* Intrinsic struct objects are not stored in a variable. So, the address that
- * is passed here is actually a pointer to the struct. So, pass its address
- * to istruct_push since v is a variable. Confusing, n'est pas?
- */
-static int istruct_push_intrinsic (unsigned char type, VOID_STAR v)
-{
- return istruct_push (type, (VOID_STAR) &v);
-}
-
-static int init_intrin_struct (void)
-{
- SLang_Class_Type *cl;
- static int initialized;
-
- if (initialized)
- return 0;
-
- if (NULL == (cl = SLclass_allocate_class ("IStruct_Type")))
- return -1;
-
- cl->cl_pop = istruct_pop;
- cl->cl_push = istruct_push;
- cl->cl_sget = istruct_sget;
- cl->cl_sput = istruct_sput;
- cl->cl_destroy = istruct_destroy;
- cl->cl_push_intrinsic = istruct_push_intrinsic;
-
- if (-1 == SLclass_register_class (cl, SLANG_ISTRUCT_TYPE, sizeof (_SLang_IStruct_Type *),
- SLANG_CLASS_TYPE_PTR))
- return -1;
-
- initialized = 1;
- return 0;
-}
-
-int SLadd_istruct_table (SLang_IStruct_Field_Type *fields, VOID_STAR addr, char *name)
-{
- _SLang_IStruct_Type *s;
- SLang_IStruct_Field_Type *f;
-
- if (-1 == init_intrin_struct ())
- return -1;
-
- if (addr == NULL)
- {
- SLang_verror (SL_INVALID_PARM,
- "SLadd_istruct_table: address must be non-NULL");
- return -1;
- }
-
- if (fields == NULL)
- return -1;
-
- /* Make the field names slstrings so that only the pointers need to be
- * compared. However, this table may have been already been added for
- * another instance of the intrinsic object. So, check for the presence
- * of an slstring.
- */
- f = fields;
- while (f->field_name != NULL)
- {
- char *fname;
-
- fname = SLang_create_slstring (f->field_name);
- if (fname == NULL)
- return -1;
-
- /* Here is the check for the slstring */
- if (f->field_name == fname)
- SLang_free_slstring (fname);
- else /* replace string literal with slstring */
- f->field_name = fname;
-
- f++;
- }
-
- s = (_SLang_IStruct_Type *)SLmalloc (sizeof (_SLang_IStruct_Type));
- if (s == NULL)
- return -1;
-
- memset ((char *)s, 0, sizeof (_SLang_IStruct_Type));
- if (NULL == (s->name = SLang_create_slstring (name)))
- {
- SLfree ((char *) s);
- return -1;
- }
-
- s->addr = addr;
- s->fields = fields;
-
- if (-1 == SLadd_intrinsic_variable (name, (VOID_STAR) s, SLANG_ISTRUCT_TYPE, 1))
- {
- SLang_free_slstring (s->name);
- SLfree ((char *) s);
- return -1;
- }
-
- return 0;
-}
diff --git a/mdk-stage1/slang/slkeymap.c b/mdk-stage1/slang/slkeymap.c
deleted file mode 100644
index dff65433e..000000000
--- a/mdk-stage1/slang/slkeymap.c
+++ /dev/null
@@ -1,596 +0,0 @@
-/* Keymap routines for SLang. The role of these keymap routines is simple:
- * Just read keys from the tty and return a pointer to a keymap structure.
- * That is, a keymap is simple a mapping of strings (keys from tty) to
- * structures. Also included are routines for managing the keymaps.
- */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-/* We need a define a rule for upperand lower case chars that user cannot
- change! This could be a problem for international chars! */
-
-#define UPPER_CASE_KEY(x) (((x) >= 'a') && ((x) <= 'z') ? (x) - 32 : (x))
-#define LOWER_CASE_KEY(x) (((x) >= 'A') && ((x) <= 'Z') ? (x) + 32 : (x))
-
-int SLang_Key_TimeOut_Flag = 0; /* true if more than 1 sec has elapsed
- without key in multikey sequence */
-
-int SLang_Last_Key_Char;
-
-SLKeyMap_List_Type SLKeyMap_List[SLANG_MAX_KEYMAPS];
-
-static SLang_Key_Type *malloc_key(unsigned char *str)
-{
- SLang_Key_Type *neew;
-
- if (NULL == (neew = (SLang_Key_Type *) SLmalloc(sizeof(SLang_Key_Type))))
- return NULL;
-
- SLMEMSET ((char *) neew, 0, sizeof (SLang_Key_Type));
- SLMEMCPY((char *) neew->str, (char *) str, (unsigned int) *str);
- return(neew);
-}
-
-static SLKeyMap_List_Type *add_keymap (char *name, SLang_Key_Type *map)
-{
- int i;
-
- for (i = 0; i < SLANG_MAX_KEYMAPS; i++)
- {
- if (SLKeyMap_List[i].keymap == NULL)
- {
- if (NULL == (name = SLang_create_slstring (name)))
- return NULL;
-
- SLKeyMap_List[i].keymap = map;
- SLKeyMap_List[i].name = name;
- return &SLKeyMap_List[i];
- }
- }
- SLang_Error = SL_UNKNOWN_ERROR;
- /* SLang_doerror ("Keymap quota exceeded."); */
- return NULL;
-}
-
-FVOID_STAR SLang_find_key_function(char *name, SLKeyMap_List_Type *keymap)
-{
- SLKeymap_Function_Type *fp = keymap -> functions;
- char ch = *name;
-
- while ((fp != NULL) && (fp->name != NULL))
- {
- if ((ch == *fp->name)
- && (0 == strcmp(fp->name, name)))
- return (FVOID_STAR) fp->f;
-
- fp++;
- }
- return NULL;
-}
-
-#ifdef REAL_UNIX_SYSTEM
-/* Expand termcap string specified by s. s as passed will have the format:
- * "XY)..." where XY represents a termcap keyname.
- */
-static char *process_termcap_string (char *s, char *str, int *ip, int imax)
-{
- char c[3], *val;
- int i;
-
- if ((0 == (c[0] = s[0]))
- || (0 == (c[1] = s[1]))
- || (s[2] != ')'))
- {
- SLang_verror (SL_SYNTAX_ERROR, "setkey: ^(%s is badly formed", s);
- return NULL;
- }
- s += 3;
-
- c[2] = 0;
- if ((NULL == (val = SLtt_tgetstr (c)))
- || (*val == 0))
- return NULL;
-
- i = *ip;
- while ((i < imax) && (*val != 0))
- {
- str[i++] = *val++;
- }
- *ip = i;
-
- return s;
-}
-#endif
-
-/* convert things like "^A" to 1 etc... The 0th char is the strlen INCLUDING
- * the length character itself.
- */
-char *SLang_process_keystring(char *s)
-{
- /* FIXME: v2.0, make this thread safe */
- static char str[32];
- unsigned char ch;
- int i;
-
- i = 1;
- while (*s != 0)
- {
- ch = (unsigned char) *s++;
- if (ch == '^')
- {
- ch = *s++;
- if (ch == 0)
- {
- if (i < 32)
- str[i++] = '^';
- break;
- }
-#ifdef REAL_UNIX_SYSTEM
- if (ch == '(')
- {
- s = process_termcap_string (s, str, &i, 32);
- if (s == NULL)
- {
- str[0] = 1;
- return str;
- }
- continue;
- }
-#endif
- ch = UPPER_CASE_KEY(ch);
- if (ch == '?') ch = 127; else ch = ch - 'A' + 1;
- }
-
- if (i >= 32) break;
- str[i++] = ch;
- }
-
- if (i > SLANG_MAX_KEYMAP_KEY_SEQ)
- {
- SLang_verror (SL_INVALID_PARM, "Key sequence is too long");
- return NULL;
- }
-
- str[0] = i;
- return(str);
-}
-
-static int key_string_compare (unsigned char *a, unsigned char *b, unsigned int len)
-{
- unsigned char *amax = a + len;
- int cha, chb, cha_up, chb_up;
-
- while (a < amax)
- {
- cha = *a++;
- chb = *b++;
-
- if (cha == chb) continue;
-
- cha_up = UPPER_CASE_KEY(cha);
- chb_up = UPPER_CASE_KEY(chb);
-
- if (cha_up == chb_up)
- {
- /* Use case-sensitive result. */
- return cha - chb;
- }
- /* Use case-insensitive result. */
- return cha_up - chb_up;
- }
- return 0;
-}
-
-static char *Define_Key_Error = "Inconsistency in define key.";
-
-/* This function also performs an insertion in an ordered way. */
-static int find_the_key (char *s, SLKeyMap_List_Type *kml, SLang_Key_Type **keyp)
-{
- unsigned char ch;
- unsigned int str_len;
- SLang_Key_Type *key, *last, *neew;
- unsigned char *str;
-
- *keyp = NULL;
-
- if (NULL == (str = (unsigned char *) SLang_process_keystring(s)))
- return -2;
-
- if (1 == (str_len = str[0]))
- return 0;
-
- ch = str[1];
- key = kml->keymap + ch;
-
- if (str_len == 2)
- {
- if (key->next != NULL)
- {
- SLang_doerror (Define_Key_Error);
- return -2;
- }
-
- if (key->type == SLKEY_F_INTERPRET)
- SLang_free_slstring (key->f.s);
-
- key->str[0] = str_len;
- key->str[1] = ch;
-
- *keyp = key;
- return 0;
- }
-
- /* insert the key definition */
- while (1)
- {
- int cmp;
- unsigned int key_len, len;
-
- last = key;
- key = key->next;
-
- if ((key != NULL) && (key->str != NULL))
- {
- len = key_len = key->str[0];
- if (len > str_len) len = str_len;
-
- cmp = key_string_compare (str + 1, key->str + 1, len - 1);
-
- if (cmp > 0)
- continue;
-
- if (cmp == 0)
- {
- if (key_len != str_len)
- {
- SLang_doerror (Define_Key_Error);
- return -2;
- }
-
- if (key->type == SLKEY_F_INTERPRET)
- SLang_free_slstring (key->f.s);
-
- *keyp = key;
- return 0;
- }
- /* Drop to cmp < 0 case */
- }
-
- if (NULL == (neew = malloc_key(str))) return -1;
-
- neew -> next = key;
- last -> next = neew;
-
- *keyp = neew;
- return 0;
- }
-}
-
-/* returns -2 if inconsistent, -1 if malloc error, 0 upon success */
-int SLkm_define_key (char *s, FVOID_STAR f, SLKeyMap_List_Type *kml)
-{
- SLang_Key_Type *key;
- unsigned int type = SLKEY_F_INTRINSIC;
- int ret;
-
- ret = find_the_key (s, kml, &key);
- if ((ret != 0) || (key == NULL))
- return ret;
-
- key->type = type;
- key->f.f = f;
- return 0;
-}
-
-int SLang_define_key (char *s, char *funct, SLKeyMap_List_Type *kml)
-{
- SLang_Key_Type *key;
- FVOID_STAR f;
- int ret;
-
- ret = find_the_key (s, kml, &key);
- if ((ret != 0) || (key == NULL))
- return ret;
-
- f = SLang_find_key_function(funct, kml);
-
- if (f == NULL) /* assume interpreted */
- {
- char *str = SLang_create_slstring (funct);
- if (str == NULL) return -1;
- key->type = SLKEY_F_INTERPRET;
- key->f.s = str;
- }
- else
- {
- key->type = SLKEY_F_INTRINSIC;
- key->f.f = f;
- }
- return 0;
-}
-
-int SLkm_define_keysym (char *s, unsigned int keysym, SLKeyMap_List_Type *kml)
-{
- SLang_Key_Type *key;
- int ret;
-
- ret = find_the_key (s, kml, &key);
-
- if ((ret != 0) || (key == NULL))
- return ret;
-
- key->type = SLKEY_F_KEYSYM;
- key->f.keysym = keysym;
- return 0;
-}
-
-SLang_Key_Type *SLang_do_key(SLKeyMap_List_Type *kml, int (*getkey)(void))
-{
- register SLang_Key_Type *key, *next, *kmax;
- unsigned int len;
- unsigned char input_ch;
- register unsigned char chup, chlow;
- unsigned char key_ch = 0;
-
- SLang_Last_Key_Char = (*getkey)();
- SLang_Key_TimeOut_Flag = 0;
-
- if (SLANG_GETKEY_ERROR == (unsigned int) SLang_Last_Key_Char)
- return NULL;
-
- input_ch = (unsigned char) SLang_Last_Key_Char;
-
- key = (SLang_Key_Type *) &((kml->keymap)[input_ch]);
-
- /* if the next one is null, then we know this MAY be it. */
- while (key->next == NULL)
- {
- if (key->type != 0)
- return key;
-
- /* Try its opposite case counterpart */
- chlow = LOWER_CASE_KEY(input_ch);
- if (input_ch == chlow)
- input_ch = UPPER_CASE_KEY(input_ch);
-
- key = kml->keymap + input_ch;
- if (key->type == 0)
- return NULL;
- }
-
- /* It appears to be a prefix character in a key sequence. */
-
- len = 1; /* already read one character */
- key = key->next; /* Now we are in the key list */
- kmax = NULL; /* set to end of list */
-
- while (1)
- {
- SLang_Key_TimeOut_Flag = 1;
- SLang_Last_Key_Char = (*getkey)();
- SLang_Key_TimeOut_Flag = 0;
-
- len++;
-
- if ((SLANG_GETKEY_ERROR == (unsigned int) SLang_Last_Key_Char)
- || SLKeyBoard_Quit)
- break;
-
- input_ch = (unsigned char) SLang_Last_Key_Char;
-
- chup = UPPER_CASE_KEY(input_ch); chlow = LOWER_CASE_KEY(input_ch);
-
- while (key != kmax)
- {
- if (key->str[0] > len)
- {
- key_ch = key->str[len];
- if (chup == UPPER_CASE_KEY(key_ch))
- break;
- }
- key = key->next;
- }
-
- if (key == kmax) break;
-
- /* If the input character is lowercase, check to see if there is
- * a lowercase match. If so, set key to it. Note: the
- * algorithm assumes the sorting performed by key_string_compare.
- */
- if (input_ch != key_ch)
- {
- next = key->next;
- while (next != kmax)
- {
- if (next->str[0] > len)
- {
- unsigned char next_ch = next->str[len];
- if (next_ch == input_ch)
- {
- key = next;
- break;
- }
- if (next_ch != chup)
- break;
- }
- next = next->next;
- }
- }
-
- /* Ok, we found the first position of a possible match. If it
- * is exact, we are done.
- */
- if ((unsigned int) key->str[0] == len + 1)
- return key;
-
- /* Apparantly, there are some ambiguities. Read next key to resolve
- * the ambiguity. Adjust kmax to encompass ambiguities.
- */
-
- next = key->next;
- while (next != kmax)
- {
- if ((unsigned int) next->str[0] > len)
- {
- key_ch = next->str[len];
- if (chup != UPPER_CASE_KEY(key_ch))
- break;
- }
- next = next->next;
- }
- kmax = next;
- }
-
- return NULL;
-}
-
-void SLang_undefine_key(char *s, SLKeyMap_List_Type *kml)
-{
- int n, i;
- SLang_Key_Type *key, *next, *last, *key_root, *keymap;
- unsigned char *str;
-
- keymap = kml -> keymap;
- if (NULL == (str = (unsigned char *) SLang_process_keystring(s)))
- return;
-
- if (0 == (n = *str++ - 1)) return;
- i = *str;
-
- last = key_root = (SLang_Key_Type *) &(keymap[i]);
- key = key_root->next;
-
- while (key != NULL)
- {
- next = key->next;
- if (0 == SLMEMCMP ((char *)(key->str + 1), (char *) str, n))
- {
- if (key->type == SLKEY_F_INTERPRET)
- SLang_free_slstring (key->f.s);
-
- SLfree((char *) key);
- last->next = next;
- }
- else last = key;
- key = next;
- }
-
- if (n == 1)
- {
- *key_root->str = 0;
- key_root->f.f = NULL;
- key_root->type = 0;
- }
-}
-
-char *SLang_make_keystring(unsigned char *s)
-{
- static char buf [3 * SLANG_MAX_KEYMAP_KEY_SEQ + 1];
- char *b;
- int n;
-
- n = *s++ - 1;
-
- if (n > SLANG_MAX_KEYMAP_KEY_SEQ)
- {
- SLang_verror (SL_INVALID_PARM, "Key sequence is too long");
- return NULL;
- }
-
- b = buf;
- while (n--)
- {
- if (*s < 32)
- {
- *b++ = '^';
- *b++ = *s + 'A' - 1;
- }
- else *b++ = *s;
- s++;
- }
- *b = 0;
- return(buf);
-}
-
-static SLang_Key_Type *copy_keymap(SLKeyMap_List_Type *kml)
-{
- int i;
- SLang_Key_Type *neew, *old, *new_root, *km;
-
- if (NULL == (new_root = (SLang_Key_Type *) SLcalloc(256, sizeof(SLang_Key_Type))))
- return NULL;
-
- if (kml == NULL) return new_root;
- km = kml->keymap;
-
- for (i = 0; i < 256; i++)
- {
- old = &(km[i]);
- neew = &(new_root[i]);
-
- if (old->type == SLKEY_F_INTERPRET)
- neew->f.s = SLang_create_slstring (old->f.s);
- else
- neew->f.f = old->f.f;
-
- neew->type = old->type;
- SLMEMCPY((char *) neew->str, (char *) old->str, (unsigned int) *old->str);
-
- old = old->next;
- while (old != NULL)
- {
- neew->next = malloc_key((unsigned char *) old->str);
- neew = neew->next;
-
- if (old->type == SLKEY_F_INTERPRET)
- neew->f.s = SLang_create_slstring (old->f.s);
- else
- neew->f.f = old->f.f;
-
- neew->type = old->type;
- old = old->next;
- }
- neew->next = NULL;
- }
- return(new_root);
-}
-
-SLKeyMap_List_Type *SLang_create_keymap(char *name, SLKeyMap_List_Type *map)
-{
- SLang_Key_Type *neew;
- SLKeyMap_List_Type *new_map;
-
- if ((NULL == (neew = copy_keymap(map)))
- || (NULL == (new_map = add_keymap(name, neew)))) return NULL;
-
- if (map != NULL) new_map -> functions = map -> functions;
-
- return new_map;
-}
-
-SLKeyMap_List_Type *SLang_find_keymap(char *name)
-{
- SLKeyMap_List_Type *kmap, *kmap_max;
-
- kmap = SLKeyMap_List;
- kmap_max = kmap + SLANG_MAX_KEYMAPS;
-
- while (kmap < kmap_max)
- {
- if ((kmap->name != NULL)
- && (0 == strcmp (kmap->name, name)))
- return kmap;
-
- kmap++;
- }
- return NULL;
-}
diff --git a/mdk-stage1/slang/slkeypad.c b/mdk-stage1/slang/slkeypad.c
deleted file mode 100644
index 524dc80fa..000000000
--- a/mdk-stage1/slang/slkeypad.c
+++ /dev/null
@@ -1,163 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-static SLKeyMap_List_Type *Keymap_List;
-
-int SLkp_init (void)
-{
- char esc_seq[10];
- int i;
-
- if (NULL == (Keymap_List = SLang_create_keymap ("_SLKeypad", NULL)))
- return -1;
-
- esc_seq[1] = 0;
- for (i = 1; i < 256; i++)
- {
- esc_seq[0] = (char) i;
- SLkm_define_keysym (esc_seq, i, Keymap_List);
- }
-
- /* Now add most common ones. */
-#ifndef IBMPC_SYSTEM
- SLkm_define_keysym ("^@", 0, Keymap_List);
-
- SLkm_define_keysym ("\033[A", SL_KEY_UP, Keymap_List);
- SLkm_define_keysym ("\033OA", SL_KEY_UP, Keymap_List);
- SLkm_define_keysym ("\033[B", SL_KEY_DOWN, Keymap_List);
- SLkm_define_keysym ("\033OB", SL_KEY_DOWN, Keymap_List);
- SLkm_define_keysym ("\033[C", SL_KEY_RIGHT, Keymap_List);
- SLkm_define_keysym ("\033OC", SL_KEY_RIGHT, Keymap_List);
- SLkm_define_keysym ("\033[D", SL_KEY_LEFT, Keymap_List);
- SLkm_define_keysym ("\033OD", SL_KEY_LEFT, Keymap_List);
- SLkm_define_keysym ("\033[2~", SL_KEY_IC, Keymap_List);
- SLkm_define_keysym ("\033[7~", SL_KEY_HOME, Keymap_List);
- SLkm_define_keysym ("\033[5~", SL_KEY_PPAGE, Keymap_List);
- SLkm_define_keysym ("\033[6~", SL_KEY_NPAGE, Keymap_List);
- SLkm_define_keysym ("\033[8~", SL_KEY_END, Keymap_List);
- SLkm_define_keysym ("\033[3~", SL_KEY_DELETE, Keymap_List);
-#else
- /* Note: This will not work if SLgetkey_map_to_ansi (1) has
- * been called.
- */
- SLkm_define_keysym ("^@\x48", SL_KEY_UP, Keymap_List );
- SLkm_define_keysym ("^@\x50", SL_KEY_DOWN, Keymap_List );
- SLkm_define_keysym ("^@\x4d", SL_KEY_RIGHT, Keymap_List );
- SLkm_define_keysym ("^@\x4b", SL_KEY_LEFT, Keymap_List );
- SLkm_define_keysym ("^@\x47", SL_KEY_HOME, Keymap_List );
- SLkm_define_keysym ("^@\x49", SL_KEY_PPAGE, Keymap_List );
- SLkm_define_keysym ("^@\x51", SL_KEY_NPAGE, Keymap_List );
- SLkm_define_keysym ("^@\x4f", SL_KEY_END, Keymap_List );
- SLkm_define_keysym ("^@\x52", SL_KEY_IC, Keymap_List );
- SLkm_define_keysym ("^@\x53", SL_KEY_DELETE, Keymap_List );
-
- SLkm_define_keysym ("\xE0\x48", SL_KEY_UP, Keymap_List );
- SLkm_define_keysym ("\xE0\x50", SL_KEY_DOWN, Keymap_List );
- SLkm_define_keysym ("\xE0\x4d", SL_KEY_RIGHT, Keymap_List );
- SLkm_define_keysym ("\xE0\x4b", SL_KEY_LEFT, Keymap_List );
- SLkm_define_keysym ("\xE0\x47", SL_KEY_HOME, Keymap_List );
- SLkm_define_keysym ("\xE0\x49", SL_KEY_PPAGE, Keymap_List );
- SLkm_define_keysym ("\xE0\x51", SL_KEY_NPAGE, Keymap_List );
- SLkm_define_keysym ("\xE0\x4f", SL_KEY_END, Keymap_List );
- SLkm_define_keysym ("\xE0\x52", SL_KEY_IC, Keymap_List );
- SLkm_define_keysym ("\xE0\x53", SL_KEY_DELETE, Keymap_List );
-
- strcpy (esc_seq, "^@ "); /* guarantees esc_seq[3] = 0. */
-
- for (i = 0x3b; i < 0x45; i++)
- {
- esc_seq [2] = i;
- SLkm_define_keysym (esc_seq, SL_KEY_F(i - 0x3a), Keymap_List);
- }
- esc_seq[2] = 0x57; SLkm_define_keysym (esc_seq, SL_KEY_F(11), Keymap_List);
- esc_seq[2] = 0x58; SLkm_define_keysym (esc_seq, SL_KEY_F(12), Keymap_List);
-#endif
-
-#ifdef REAL_UNIX_SYSTEM
- strcpy (esc_seq, "^(kX)");
- for (i = 0; i <= 9; i++)
- {
- esc_seq[3] = '0' + i;
- SLkm_define_keysym (esc_seq, SL_KEY_F(i), Keymap_List);
- }
- SLkm_define_keysym ("^(k;)", SL_KEY_F(10), Keymap_List);
-
- SLkm_define_keysym ("^(ku)", SL_KEY_UP, Keymap_List);
- SLkm_define_keysym ("^(kd)", SL_KEY_DOWN, Keymap_List);
- SLkm_define_keysym ("^(kl)", SL_KEY_LEFT, Keymap_List);
- SLkm_define_keysym ("^(kr)", SL_KEY_RIGHT, Keymap_List);
- SLkm_define_keysym ("^(kP)", SL_KEY_PPAGE, Keymap_List);
- SLkm_define_keysym ("^(kN)", SL_KEY_NPAGE, Keymap_List);
- SLkm_define_keysym ("^(kh)", SL_KEY_HOME, Keymap_List);
- SLkm_define_keysym ("^(@7)", SL_KEY_END, Keymap_List);
- SLkm_define_keysym ("^(K1)", SL_KEY_A1, Keymap_List);
- SLkm_define_keysym ("^(K3)", SL_KEY_A3, Keymap_List);
- SLkm_define_keysym ("^(K2)", SL_KEY_B2, Keymap_List);
- SLkm_define_keysym ("^(K4)", SL_KEY_C1, Keymap_List);
- SLkm_define_keysym ("^(K5)", SL_KEY_C3, Keymap_List);
- SLkm_define_keysym ("^(%0)", SL_KEY_REDO, Keymap_List);
- SLkm_define_keysym ("^(&8)", SL_KEY_UNDO, Keymap_List);
- SLkm_define_keysym ("^(kb)", SL_KEY_BACKSPACE, Keymap_List);
- SLkm_define_keysym ("^(@8)", SL_KEY_ENTER, Keymap_List);
- SLkm_define_keysym ("^(kD)", SL_KEY_DELETE, Keymap_List);
-#endif
-
- if (SLang_Error)
- return -1;
- return 0;
-}
-
-int SLkp_getkey (void)
-{
- SLang_Key_Type *key;
-
- key = SLang_do_key (Keymap_List, (int (*)(void)) SLang_getkey);
- if ((key == NULL) || (key->type != SLKEY_F_KEYSYM))
- {
- SLang_flush_input ();
- return SL_KEY_ERR;
- }
-
- return key->f.keysym;
-}
-
-int SLkp_define_keysym (char *keystr, unsigned int keysym)
-{
- if (SLkm_define_keysym (keystr, keysym, Keymap_List) < 0)
- return -1;
-
- return 0;
-}
-
-#if 0
-int main (int argc, char **argv)
-{
- int ch;
-
- SLtt_get_terminfo ();
-
- if (-1 == SLkp_init ())
- return 1;
-
- SLang_init_tty (-1, 0, 0);
-
- while ('q' != (ch = SLkp_getkey ()))
- {
- fprintf (stdout, "Keycode = %d\r\n", ch);
- fflush (stdout);
- }
-
- SLang_reset_tty ();
-
- return 0;
-}
-#endif
-
diff --git a/mdk-stage1/slang/sllimits.h b/mdk-stage1/slang/sllimits.h
deleted file mode 100644
index c4ae03b83..000000000
--- a/mdk-stage1/slang/sllimits.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-/* sllimits.h */
-
-/* slstring.c: Size of the hash table used for strings (prime numbers) */
-#ifdef __MSDOS_16BIT__
-# define SLSTRING_HASH_TABLE_SIZE 601
-# define SLASSOC_HASH_TABLE_SIZE 601
-#else
-# define SLSTRING_HASH_TABLE_SIZE 2909
-# define SLASSOC_HASH_TABLE_SIZE 2909
-#endif
-
-/* slang.c: maximum size of run time stack */
-#ifdef __MSDOS_16BIT__
-# define SLANG_MAX_STACK_LEN 500
-#else
-# define SLANG_MAX_STACK_LEN 2500
-#endif
-
-/* slang.c: This sets the size on the depth of function calls */
-#ifdef __MSDOS_16BIT__
-# define SLANG_MAX_RECURSIVE_DEPTH 50
-#else
-# define SLANG_MAX_RECURSIVE_DEPTH 250
-#endif
-
-/* slang.c: Size of the stack used for local variables */
-#ifdef __MSDOS_16BIT__
-# define SLANG_MAX_LOCAL_STACK 200
-#else
-# define SLANG_MAX_LOCAL_STACK 1024
-#endif
-
-/* slang.c: The size of the hash table used for local and global objects.
- * These should be prime numbers.
- */
-#define SLGLOBALS_HASH_TABLE_SIZE 2909
-#define SLLOCALS_HASH_TABLE_SIZE 73
-#define SLSTATIC_HASH_TABLE_SIZE 73
-
-/* Size of the keyboard buffer use by the ungetkey routines */
-#ifdef __MSDOS_16BIT__
-# define SL_MAX_INPUT_BUFFER_LEN 40
-#else
-# define SL_MAX_INPUT_BUFFER_LEN 1024
-#endif
-
-/* Maximum number of nested switch statements */
-#define SLANG_MAX_NESTED_SWITCH 10
-
-/* Size of the block stack (used in byte-compiling) */
-#define SLANG_MAX_BLOCK_STACK_LEN 50
-
-/* slfile.c: Max number of open file pointers */
-#ifdef __MSDOS_16BIT__
-# define SL_MAX_FILES 32
-#else
-# define SL_MAX_FILES 256
-#endif
diff --git a/mdk-stage1/slang/slmalloc.c b/mdk-stage1/slang/slmalloc.c
deleted file mode 100644
index be4ed6cae..000000000
--- a/mdk-stage1/slang/slmalloc.c
+++ /dev/null
@@ -1,165 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#ifdef SL_MALLOC_DEBUG
-# undef SL_MALLOC_DEBUG
-#endif
-
-#include "slang.h"
-#include "_slang.h"
-
-#ifdef __alpha
-# define Chunk 8
-#else
-# define Chunk 4
-#endif
-
-static long Total_Allocated;
-static long Max_Single_Allocation;
-static long Max_Allocated;
-/* #define SLDEBUG_DOUT */
-
-#ifdef SLDEBUG_DOUT
-static FILE *dout;
-#endif
-
-void SLmalloc_dump_statistics (void)
-{
-#ifdef SLDEBUG_DOUT
- fflush (dout);
-#endif
- fprintf (stderr, "Total Allocated: %ld\nHighest single allocation: %ld\nHighest Total Allocated:%ld\n",
- Total_Allocated, Max_Single_Allocation, Max_Allocated);
-}
-
-static void register_at_exit_fun (void)
-{
- static int is_registered = 0;
- if (is_registered)
- return;
- is_registered = 1;
-
-#ifdef SLDEBUG_DOUT
- if (dout == NULL) dout = fopen ("malloc.out", "w");
-#endif
- SLang_add_cleanup_function (SLmalloc_dump_statistics);
-}
-
-static void fixup (unsigned char *p, unsigned long n, char *what)
-{
- register_at_exit_fun ();
-
- p += Chunk;
- *(p - 4)= (unsigned char) ((n >> 24) & 0xFF);
- *(p - 3) = (unsigned char) ((n >> 16) & 0xFF);
- *(p - 2) = (unsigned char) ((n >> 8) & 0xFF);
- *(p - 1) = (unsigned char) (n & 0xFF);
- *(p + (int) n) = 27;
- *(p + (int) (n + 1)) = 182;
- *(p + (int) (n + 2)) = 81;
- *(p + (int) (n + 3)) = 86;
- Total_Allocated += (long) n;
- if (Total_Allocated > Max_Allocated) Max_Allocated = Total_Allocated;
- if ((long) n > Max_Single_Allocation)
- Max_Single_Allocation = (long) n;
-
-#ifdef SLDEBUG_DOUT
- fprintf (dout, "ALLOC: %s\t%p %ld\n", what, p, (long) n);
-#else
- (void) what;
-#endif
-}
-
-static void SLmalloc_doerror (char *buf)
-{
- SLang_doerror (buf);
-}
-
-static int check_memory (unsigned char *p, char *what)
-{
- char buf[128];
- unsigned long n;
-
- register_at_exit_fun ();
-
- n = ((unsigned long) *(p - 4)) << 24;
- n |= ((unsigned long) *(p - 3)) << 16;
- n |= ((unsigned long) *(p - 2)) << 8;
- n |= (unsigned long) *(p - 1);
-
- if (n == 0xFFFFFFFFUL)
- {
- sprintf (buf, "%s: %p: Already FREE! Abort NOW.", what, (void*)p - Chunk);
- SLmalloc_doerror (buf);
- return -1;
- }
-
- if ((*(p + (int) n) != 27)
- || (*(p + (int) (n + 1)) != 182)
- || (*(p + (int) (n + 2)) != 81)
- || (*(p + (int) (n + 3)) != 86))
- {
- sprintf (buf, "\007%s: %p: Memory corrupt! Abort NOW.", what, (void*)p);
- SLmalloc_doerror (buf);
- return -1;
- }
-
- *(p - 4) = *(p - 3) = *(p - 2) = *(p - 1) = 0xFF;
-
- Total_Allocated -= (long) n;
- if (Total_Allocated < 0)
- {
- sprintf (buf, "\007%s: %p\nFreed %ld, Allocated is: %ld!\n",
- what, (void*)p, (long) n, Total_Allocated);
- SLang_doerror (buf);
- }
-#ifdef SLDEBUG_DOUT
- fprintf (dout, "FREE: %s:\t%p %ld\n", what, p, (long) n);
-#endif
- return 0;
-}
-
-void SLdebug_free (char *p)
-{
- if (p == NULL) return;
- if (-1 == check_memory ((unsigned char *) p, "FREE")) return;
-
- SLFREE (p - Chunk);
-}
-
-char *SLdebug_malloc (unsigned long n)
-{
- char *p;
-
- if ((p = (char *) SLMALLOC (n + 2 * Chunk)) == NULL) return NULL;
-
- fixup ((unsigned char *) p, n, "MALLOC");
- return p + Chunk;
-}
-
-char *SLdebug_realloc (char *p, unsigned long n)
-{
- if (-1 == check_memory ((unsigned char *) p, "REALLOC")) return NULL;
- if ((p = (char *) SLREALLOC (p - Chunk, n + 2 * Chunk)) == NULL) return NULL;
- fixup ((unsigned char *) p, n, "REALLOC");
- return p + Chunk;
-}
-
-char *SLdebug_calloc (unsigned long n, unsigned long size)
-{
- char *p;
- int m;
-
- /* This is tough -- hope this is a good assumption!! */
- if (size >= Chunk) m = 1; else m = Chunk;
-
- if ((p = (char *) SLCALLOC (n + m + m, size)) == NULL) return NULL;
- fixup ((unsigned char *) p, size * n, "CALLOC");
- return p + Chunk;
-}
-
diff --git a/mdk-stage1/slang/slmath.c b/mdk-stage1/slang/slmath.c
deleted file mode 100644
index 1d61e14d3..000000000
--- a/mdk-stage1/slang/slmath.c
+++ /dev/null
@@ -1,565 +0,0 @@
-/* sin, cos, etc, for S-Lang */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include <math.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-#ifdef PI
-# undef PI
-#endif
-#define PI 3.14159265358979323846264338327950288
-
-#if defined(__unix__)
-#include <signal.h>
-#include <errno.h>
-
-#define SIGNAL SLsignal
-
-static void math_floating_point_exception (int sig)
-{
- sig = errno;
- if (SLang_Error == 0) SLang_Error = SL_FLOATING_EXCEPTION;
- (void) SIGNAL (SIGFPE, math_floating_point_exception);
- errno = sig;
-}
-#endif
-
-double SLmath_hypot (double x, double y)
-{
- double fr, fi, ratio;
-
- fr = fabs(x);
- fi = fabs(y);
-
- if (fr > fi)
- {
- ratio = y / x;
- x = fr * sqrt (1.0 + ratio * ratio);
- }
- else if (fi == 0.0) x = 0.0;
- else
- {
- ratio = x / y;
- x = fi * sqrt (1.0 + ratio * ratio);
- }
-
- return x;
-}
-
-/* usage here is a1 a2 ... an n x ==> a1x^n + a2 x ^(n - 1) + ... + an */
-static double math_poly (void)
-{
- int n;
- double xn = 1.0, sum = 0.0;
- double an, x;
-
- if ((SLang_pop_double(&x, NULL, NULL))
- || (SLang_pop_integer(&n))) return(0.0);
-
- while (n-- > 0)
- {
- if (SLang_pop_double(&an, NULL, NULL)) break;
- sum += an * xn;
- xn = xn * x;
- }
- return (double) sum;
-}
-
-static int double_math_op_result (int op, unsigned char a, unsigned char *b)
-{
- (void) op;
-
- if (a != SLANG_FLOAT_TYPE)
- *b = SLANG_DOUBLE_TYPE;
- else
- *b = a;
-
- return 1;
-}
-
-#ifdef HAVE_ASINH
-# define ASINH_FUN asinh
-#else
-# define ASINH_FUN my_asinh
-static double my_asinh (double x)
-{
- return log (x + sqrt (x*x + 1));
-}
-#endif
-#ifdef HAVE_ACOSH
-# define ACOSH_FUN acosh
-#else
-# define ACOSH_FUN my_acosh
-static double my_acosh (double x)
-{
- return log (x + sqrt(x*x - 1)); /* x >= 1 */
-}
-#endif
-#ifdef HAVE_ATANH
-# define ATANH_FUN atanh
-#else
-# define ATANH_FUN my_atanh
-static double my_atanh (double x)
-{
- return 0.5 * log ((1.0 + x)/(1.0 - x)); /* 0 <= x^2 < 1 */
-}
-#endif
-
-static int double_math_op (int op,
- unsigned char type, VOID_STAR ap, unsigned int na,
- VOID_STAR bp)
-{
- double *a, *b;
- unsigned int i;
- double (*fun) (double);
-
- (void) type;
- a = (double *) ap;
- b = (double *) bp;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLMATH_SINH:
- fun = sinh;
- break;
- case SLMATH_COSH:
- fun = cosh;
- break;
- case SLMATH_TANH:
- fun = tanh;
- break;
- case SLMATH_TAN:
- fun = tan;
- break;
- case SLMATH_ASIN:
- fun = asin;
- break;
- case SLMATH_ACOS:
- fun = acos;
- break;
- case SLMATH_ATAN:
- fun = atan;
- break;
- case SLMATH_EXP:
- fun = exp;
- break;
- case SLMATH_LOG:
- fun = log;
- break;
- case SLMATH_LOG10:
- fun = log10;
- break;
- case SLMATH_SQRT:
- fun = sqrt;
- break;
- case SLMATH_SIN:
- fun = sin;
- break;
- case SLMATH_COS:
- fun = cos;
- break;
-
- case SLMATH_ASINH:
- fun = ASINH_FUN;
- break;
- case SLMATH_ATANH:
- fun = ATANH_FUN;
- break;
- case SLMATH_ACOSH:
- fun = ACOSH_FUN;
- break;
-
- case SLMATH_CONJ:
- case SLMATH_REAL:
- for (i = 0; i < na; i++)
- b[i] = a[i];
- return 1;
- case SLMATH_IMAG:
- for (i = 0; i < na; i++)
- b[i] = 0.0;
- return 1;
- }
-
- for (i = 0; i < na; i++)
- b[i] = (*fun) (a[i]);
-
- return 1;
-}
-
-static int float_math_op (int op,
- unsigned char type, VOID_STAR ap, unsigned int na,
- VOID_STAR bp)
-{
- float *a, *b;
- unsigned int i;
- double (*fun) (double);
-
- (void) type;
- a = (float *) ap;
- b = (float *) bp;
-
-
- switch (op)
- {
- default:
- return 0;
-
- case SLMATH_SINH:
- fun = sinh;
- break;
- case SLMATH_COSH:
- fun = cosh;
- break;
- case SLMATH_TANH:
- fun = tanh;
- break;
- case SLMATH_TAN:
- fun = tan;
- break;
- case SLMATH_ASIN:
- fun = asin;
- break;
- case SLMATH_ACOS:
- fun = acos;
- break;
- case SLMATH_ATAN:
- fun = atan;
- break;
- case SLMATH_EXP:
- fun = exp;
- break;
- case SLMATH_LOG:
- fun = log;
- break;
- case SLMATH_LOG10:
- fun = log10;
- break;
- case SLMATH_SQRT:
- fun = sqrt;
- break;
- case SLMATH_SIN:
- fun = sin;
- break;
- case SLMATH_COS:
- fun = cos;
- break;
-
- case SLMATH_ASINH:
- fun = ASINH_FUN;
- break;
- case SLMATH_ATANH:
- fun = ATANH_FUN;
- break;
- case SLMATH_ACOSH:
- fun = ACOSH_FUN;
- break;
-
- case SLMATH_CONJ:
- case SLMATH_REAL:
- for (i = 0; i < na; i++)
- b[i] = a[i];
- return 1;
- case SLMATH_IMAG:
- for (i = 0; i < na; i++)
- b[i] = 0.0;
- return 1;
- }
-
- for (i = 0; i < na; i++)
- b[i] = (float) (*fun) ((double) a[i]);
-
- return 1;
-}
-
-static int generic_math_op (int op,
- unsigned char type, VOID_STAR ap, unsigned int na,
- VOID_STAR bp)
-{
- double *b;
- unsigned int i;
- SLang_To_Double_Fun_Type to_double;
- double (*fun) (double);
- unsigned int da;
- char *a;
-
- if (NULL == (to_double = SLarith_get_to_double_fun (type, &da)))
- return 0;
-
- b = (double *) bp;
- a = (char *) ap;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLMATH_SINH:
- fun = sinh;
- break;
- case SLMATH_COSH:
- fun = cosh;
- break;
- case SLMATH_TANH:
- fun = tanh;
- break;
- case SLMATH_TAN:
- fun = tan;
- break;
- case SLMATH_ASIN:
- fun = asin;
- break;
- case SLMATH_ACOS:
- fun = acos;
- break;
- case SLMATH_ATAN:
- fun = atan;
- break;
- case SLMATH_EXP:
- fun = exp;
- break;
- case SLMATH_LOG:
- fun = log;
- break;
- case SLMATH_LOG10:
- fun = log10;
- break;
- case SLMATH_SQRT:
- fun = sqrt;
- break;
- case SLMATH_SIN:
- fun = sin;
- break;
- case SLMATH_COS:
- fun = cos;
- break;
-
- case SLMATH_ASINH:
- fun = ASINH_FUN;
- break;
- case SLMATH_ATANH:
- fun = ATANH_FUN;
- break;
- case SLMATH_ACOSH:
- fun = ACOSH_FUN;
- break;
-
-
- case SLMATH_CONJ:
- case SLMATH_REAL:
- for (i = 0; i < na; i++)
- {
- b[i] = to_double((VOID_STAR) a);
- a += da;
- }
- return 1;
-
- case SLMATH_IMAG:
- for (i = 0; i < na; i++)
- b[i] = 0.0;
- return 1;
- }
-
- for (i = 0; i < na; i++)
- {
- b[i] = (*fun) (to_double ((VOID_STAR) a));
- a += da;
- }
-
- return 1;
-}
-
-#if SLANG_HAS_COMPLEX
-static int complex_math_op_result (int op, unsigned char a, unsigned char *b)
-{
- (void) a;
- switch (op)
- {
- default:
- *b = SLANG_COMPLEX_TYPE;
- break;
-
- case SLMATH_REAL:
- case SLMATH_IMAG:
- *b = SLANG_DOUBLE_TYPE;
- break;
- }
- return 1;
-}
-
-static int complex_math_op (int op,
- unsigned char type, VOID_STAR ap, unsigned int na,
- VOID_STAR bp)
-{
- double *a, *b;
- unsigned int i;
- unsigned int na2 = na * 2;
- double *(*fun) (double *, double *);
-
- (void) type;
- a = (double *) ap;
- b = (double *) bp;
-
- switch (op)
- {
- default:
- return 0;
-
- case SLMATH_REAL:
- for (i = 0; i < na; i++)
- b[i] = a[2 * i];
- return 1;
-
- case SLMATH_IMAG:
- for (i = 0; i < na; i++)
- b[i] = a[2 * i + 1];
- return 1;
-
- case SLMATH_CONJ:
- for (i = 0; i < na2; i += 2)
- {
- b[i] = a[i];
- b[i+1] = -a[i+1];
- }
- return 1;
-
- case SLMATH_ATANH:
- fun = SLcomplex_atanh;
- break;
- case SLMATH_ACOSH:
- fun = SLcomplex_acosh;
- break;
- case SLMATH_ASINH:
- fun = SLcomplex_asinh;
- break;
- case SLMATH_EXP:
- fun = SLcomplex_exp;
- break;
- case SLMATH_LOG:
- fun = SLcomplex_log;
- break;
- case SLMATH_LOG10:
- fun = SLcomplex_log10;
- break;
- case SLMATH_SQRT:
- fun = SLcomplex_sqrt;
- break;
- case SLMATH_SIN:
- fun = SLcomplex_sin;
- break;
- case SLMATH_COS:
- fun = SLcomplex_cos;
- break;
- case SLMATH_SINH:
- fun = SLcomplex_sinh;
- break;
- case SLMATH_COSH:
- fun = SLcomplex_cosh;
- break;
- case SLMATH_TANH:
- fun = SLcomplex_tanh;
- break;
- case SLMATH_TAN:
- fun = SLcomplex_tan;
- break;
- case SLMATH_ASIN:
- fun = SLcomplex_asin;
- break;
- case SLMATH_ACOS:
- fun = SLcomplex_acos;
- break;
- case SLMATH_ATAN:
- fun = SLcomplex_atan;
- break;
- }
-
- for (i = 0; i < na2; i += 2)
- (void) (*fun) (b + i, a + i);
-
- return 1;
-}
-#endif
-
-static SLang_DConstant_Type DConst_Table [] =
-{
- MAKE_DCONSTANT("E", 2.718281828459045),
- MAKE_DCONSTANT("PI", 3.14159265358979323846264338327950288),
- SLANG_END_DCONST_TABLE
-};
-
-static SLang_Math_Unary_Type SLmath_Table [] =
-{
- MAKE_MATH_UNARY("sinh", SLMATH_SINH),
- MAKE_MATH_UNARY("asinh", SLMATH_ASINH),
- MAKE_MATH_UNARY("cosh", SLMATH_COSH),
- MAKE_MATH_UNARY("acosh", SLMATH_ACOSH),
- MAKE_MATH_UNARY("tanh", SLMATH_TANH),
- MAKE_MATH_UNARY("atanh", SLMATH_ATANH),
- MAKE_MATH_UNARY("sin", SLMATH_SIN),
- MAKE_MATH_UNARY("cos", SLMATH_COS),
- MAKE_MATH_UNARY("tan", SLMATH_TAN),
- MAKE_MATH_UNARY("atan", SLMATH_ATAN),
- MAKE_MATH_UNARY("acos", SLMATH_ACOS),
- MAKE_MATH_UNARY("asin", SLMATH_ASIN),
- MAKE_MATH_UNARY("exp", SLMATH_EXP),
- MAKE_MATH_UNARY("log", SLMATH_LOG),
- MAKE_MATH_UNARY("sqrt", SLMATH_SQRT),
- MAKE_MATH_UNARY("log10", SLMATH_LOG10),
-#if SLANG_HAS_COMPLEX
- MAKE_MATH_UNARY("Real", SLMATH_REAL),
- MAKE_MATH_UNARY("Imag", SLMATH_IMAG),
- MAKE_MATH_UNARY("Conj", SLMATH_CONJ),
-#endif
- SLANG_END_MATH_UNARY_TABLE
-};
-
-static SLang_Intrin_Fun_Type SLang_Math_Table [] =
-{
- MAKE_INTRINSIC_0("polynom", math_poly, SLANG_DOUBLE_TYPE),
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-int SLang_init_slmath (void)
-{
- unsigned char *int_types;
-
-#if defined(__unix__)
- (void) SIGNAL (SIGFPE, math_floating_point_exception);
-#endif
-
- int_types = _SLarith_Arith_Types;
-
- while (*int_types != SLANG_FLOAT_TYPE)
- {
- if (-1 == SLclass_add_math_op (*int_types, generic_math_op, double_math_op_result))
- return -1;
- int_types++;
- }
-
- if ((-1 == SLclass_add_math_op (SLANG_FLOAT_TYPE, float_math_op, double_math_op_result))
- || (-1 == SLclass_add_math_op (SLANG_DOUBLE_TYPE, double_math_op, double_math_op_result))
-#if SLANG_HAS_COMPLEX
- || (-1 == SLclass_add_math_op (SLANG_COMPLEX_TYPE, complex_math_op, complex_math_op_result))
-#endif
- )
- return -1;
-
- if ((-1 == SLadd_math_unary_table (SLmath_Table, "__SLMATH__"))
- || (-1 == SLadd_intrin_fun_table (SLang_Math_Table, NULL))
- || (-1 == SLadd_dconstant_table (DConst_Table, NULL)))
- return -1;
-
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slmemchr.c b/mdk-stage1/slang/slmemchr.c
deleted file mode 100644
index 1417bc549..000000000
--- a/mdk-stage1/slang/slmemchr.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-/* These routines are fast memcpy, memset routines. When available, I
- use system rouines. For msdos, I use inline assembly. */
-
-/* The current versions only work in the forward direction only!! */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-char *SLmemchr(register char *p, register char c, register int n)
-{
- int n2;
- register char *pmax;
-
- pmax = p + (n - 32);
-
- while (p <= pmax)
- {
- if ((*p == c) || (*++p == c) || (*++p == c) || (*++p == c)
- || (*++p == c) || (*++p == c) || (*++p == c) || (*++p == c)
- || (*++p == c) || (*++p == c) || (*++p == c) || (*++p == c)
- || (*++p == c) || (*++p == c) || (*++p == c) || (*++p == c)
- || (*++p == c) || (*++p == c) || (*++p == c) || (*++p == c)
- || (*++p == c) || (*++p == c) || (*++p == c) || (*++p == c)
- || (*++p == c) || (*++p == c) || (*++p == c) || (*++p == c)
- || (*++p == c) || (*++p == c) || (*++p == c) || (*++p == c))
- return p;
- p++;
- }
-
- n2 = n % 32;
-
- while (n2--)
- {
- if (*p == c) return p;
- p++;
- }
- return(NULL);
-}
diff --git a/mdk-stage1/slang/slmemcmp.c b/mdk-stage1/slang/slmemcmp.c
deleted file mode 100644
index c5ed50095..000000000
--- a/mdk-stage1/slang/slmemcmp.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-/* These routines are fast memcpy, memset routines. When available, I
- use system rouines. For msdos, I use inline assembly. */
-
-/* The current versions only work in the forward direction only!! */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-/* This is an UNSIGNED comparison designed for systems that either do not have
-* this function or performed a signed comparison (SunOS)
-*/
-int SLmemcmp(register char *s1, register char *s2, int n)
-{
- register int cmp;
- register char *s1max;
-
- s1max = s1 + (n - 32);
-
- while (s1 <= s1max)
- {
- if (*s1 != *s2) return ((unsigned char) *s1 - (unsigned char) *s2);
- if (*(s1 + 1) != *(s2 + 1)) return ((unsigned char) *(s1 + 1) - (unsigned char) *(s2 + 1));
- if (*(s1 + 2) != *(s2 + 2)) return ((unsigned char) *(s1 + 2) - (unsigned char) *(s2 + 2));
- if (*(s1 + 3) != *(s2 + 3)) return ((unsigned char) *(s1 + 3) - (unsigned char) *(s2 + 3));
- if (*(s1 + 4) != *(s2 + 4)) return ((unsigned char) *(s1 + 4) - (unsigned char) *(s2 + 4));
- if (*(s1 + 5) != *(s2 + 5)) return ((unsigned char) *(s1 + 5) - (unsigned char) *(s2 + 5));
- if (*(s1 + 6) != *(s2 + 6)) return ((unsigned char) *(s1 + 6) - (unsigned char) *(s2 + 6));
- if (*(s1 + 7) != *(s2 + 7)) return ((unsigned char) *(s1 + 7) - (unsigned char) *(s2 + 7));
- if (*(s1 + 8) != *(s2 + 8)) return ((unsigned char) *(s1 + 8) - (unsigned char) *(s2 + 8));
- if (*(s1 + 9) != *(s2 + 9)) return ((unsigned char) *(s1 + 9) - (unsigned char) *(s2 + 9));
- if (*(s1 + 10) != *(s2 + 10)) return ((unsigned char) *(s1 + 10) - (unsigned char) *(s2 + 10));
- if (*(s1 + 11) != *(s2 + 11)) return ((unsigned char) *(s1 + 11) - (unsigned char) *(s2 + 11));
- if (*(s1 + 12) != *(s2 + 12)) return ((unsigned char) *(s1 + 12) - (unsigned char) *(s2 + 12));
- if (*(s1 + 13) != *(s2 + 13)) return ((unsigned char) *(s1 + 13) - (unsigned char) *(s2 + 13));
- if (*(s1 + 14) != *(s2 + 14)) return ((unsigned char) *(s1 + 14) - (unsigned char) *(s2 + 14));
- if (*(s1 + 15) != *(s2 + 15)) return ((unsigned char) *(s1 + 15) - (unsigned char) *(s2 + 15));
- if (*(s1 + 16) != *(s2 + 16)) return ((unsigned char) *(s1 + 16) - (unsigned char) *(s2 + 16));
- if (*(s1 + 17) != *(s2 + 17)) return ((unsigned char) *(s1 + 17) - (unsigned char) *(s2 + 17));
- if (*(s1 + 18) != *(s2 + 18)) return ((unsigned char) *(s1 + 18) - (unsigned char) *(s2 + 18));
- if (*(s1 + 19) != *(s2 + 19)) return ((unsigned char) *(s1 + 19) - (unsigned char) *(s2 + 19));
- if (*(s1 + 20) != *(s2 + 20)) return ((unsigned char) *(s1 + 20) - (unsigned char) *(s2 + 20));
- if (*(s1 + 21) != *(s2 + 21)) return ((unsigned char) *(s1 + 21) - (unsigned char) *(s2 + 21));
- if (*(s1 + 22) != *(s2 + 22)) return ((unsigned char) *(s1 + 22) - (unsigned char) *(s2 + 22));
- if (*(s1 + 23) != *(s2 + 23)) return ((unsigned char) *(s1 + 23) - (unsigned char) *(s2 + 23));
- if (*(s1 + 24) != *(s2 + 24)) return ((unsigned char) *(s1 + 24) - (unsigned char) *(s2 + 24));
- if (*(s1 + 25) != *(s2 + 25)) return ((unsigned char) *(s1 + 25) - (unsigned char) *(s2 + 25));
- if (*(s1 + 26) != *(s2 + 26)) return ((unsigned char) *(s1 + 26) - (unsigned char) *(s2 + 26));
- if (*(s1 + 27) != *(s2 + 27)) return ((unsigned char) *(s1 + 27) - (unsigned char) *(s2 + 27));
- if (*(s1 + 28) != *(s2 + 28)) return ((unsigned char) *(s1 + 28) - (unsigned char) *(s2 + 28));
- if (*(s1 + 29) != *(s2 + 29)) return ((unsigned char) *(s1 + 29) - (unsigned char) *(s2 + 29));
- if (*(s1 + 30) != *(s2 + 30)) return ((unsigned char) *(s1 + 30) - (unsigned char) *(s2 + 30));
- if (*(s1 + 31) != *(s2 + 31)) return ((unsigned char) *(s1 + 31) - (unsigned char) *(s2 + 31));
- s1 += 32; s2 += 32;
- }
-
- s1max = s1 + (n % 32);
-
- while (s1 < s1max)
- {
- cmp = (unsigned char) *s1 - (unsigned char) *s2;
- if (cmp) return(cmp);
- s1++;
- s2++;
- }
-
- return(0);
-}
diff --git a/mdk-stage1/slang/slmemcpy.c b/mdk-stage1/slang/slmemcpy.c
deleted file mode 100644
index e8665e4c6..000000000
--- a/mdk-stage1/slang/slmemcpy.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-/* These routines are fast memcpy, memset routines. When available, I
- use system rouines. For msdos, I use inline assembly. */
-
-/* The current versions only work in the forward direction only!! */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-char *SLmemcpy(char *s1, char *s2, int n)
-{
-#if defined(__BORLANDC__) && defined(__MSDOS__)
- asm mov ax, ds
- asm mov bx, si
- asm mov dx, di
- asm mov cx, n
- asm les di, s1
- asm lds si, s2
- asm cld
- asm rep movsb
- asm mov ds, ax
- asm mov si, bx
- asm mov di, dx
- return(s1);
-
-#else
- register char *smax, *s = s1;
- int n2;
-
- n2 = n % 4;
- smax = s + (n - 4);
- while (s <= smax)
- {
- *s = *s2; *(s + 1) = *(s2 + 1); *(s + 2) = *(s2 + 2); *(s + 3) = *(s2 + 3);
- s += 4;
- s2 += 4;
- }
- while (n2--) *s++ = *s2++;
- return(s1);
-#endif
-}
diff --git a/mdk-stage1/slang/slmemset.c b/mdk-stage1/slang/slmemset.c
deleted file mode 100644
index 3851663c5..000000000
--- a/mdk-stage1/slang/slmemset.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-/* These routines are fast memcpy, memset routines. When available, I
- use system rouines. For msdos, I use inline assembly. */
-
-/* The current versions only work in the forward direction only!! */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-void SLmemset(char *p, char space, int n)
-{
-#if defined(__BORLANDC__) && defined(__MSDOS__)
- asm mov al, space
- asm mov dx, di
- asm mov cx, n
- asm les di, p
- asm cld
- asm rep stosb
- asm mov di, dx
-#else
- register char *pmax;
-
- pmax = p + (n - 4);
- n = n % 4;
- while (p <= pmax)
- {
- *p++ = space; *p++ = space; *p++ = space; *p++= space;
- }
- while (n--) *p++ = space;
-#endif
-}
diff --git a/mdk-stage1/slang/slmisc.c b/mdk-stage1/slang/slmisc.c
deleted file mode 100644
index ccc7a9bdf..000000000
--- a/mdk-stage1/slang/slmisc.c
+++ /dev/null
@@ -1,330 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-#define DEBUG_MALLOC 0
-
-#if DEBUG_MALLOC
-# define SLREALLOC_FUN SLdebug_realloc
-# define SLMALLOC_FUN SLdebug_malloc
-# define SLFREE_FUN SLdebug_free
-#else
-# define SLREALLOC_FUN SLREALLOC
-# define SLMALLOC_FUN SLMALLOC
-# define SLFREE_FUN SLFREE
-#endif
-
-/* Version information goes here since this file is always needed. */
-int SLang_Version = SLANG_VERSION;
-char *SLang_Version_String = SLANG_VERSION_STRING;
-
-char *SLmake_string(char *str)
-{
- return SLmake_nstring(str, strlen (str));
-}
-
-char *SLmake_nstring (char *str, unsigned int n)
-{
- char *ptr;
-
- if (NULL == (ptr = SLmalloc(n + 1)))
- {
- return NULL;
- }
- SLMEMCPY (ptr, str, n);
- ptr[n] = 0;
- return(ptr);
-}
-
-void SLmake_lut (unsigned char *lut, unsigned char *range, unsigned char reverse)
-{
- register unsigned char *l = lut, *lmax = lut + 256;
- int i, r1, r2;
-
- while (l < lmax) *l++ = reverse;
- reverse = !reverse;
-
- r1 = *range++;
- while (r1)
- {
- r2 = *range++;
- if ((r2 == '-') && (*range != 0))
- {
- r2 = *range++;
- for (i = r1; i <= r2; i++) lut[i] = reverse;
- r1 = *range++;
- continue;
- }
- lut[r1] = reverse;
- r1 = r2;
- }
-}
-
-char *SLmalloc (unsigned int len)
-{
- char *p;
-
- p = (char *) SLMALLOC_FUN (len);
- if (p == NULL)
- SLang_Error = SL_MALLOC_ERROR;
-
- return p;
-}
-
-void SLfree (char *p)
-{
- if (p != NULL) SLFREE_FUN (p);
-}
-
-char *SLrealloc (char *p, unsigned int len)
-{
- if (len == 0)
- {
- SLfree (p);
- return NULL;
- }
-
- if (p == NULL) p = SLmalloc (len);
- else
- {
- p = (char *)SLREALLOC_FUN (p, len);
- if (p == NULL)
- SLang_Error = SL_MALLOC_ERROR;
- }
- return p;
-}
-
-char *SLcalloc (unsigned int nelems, unsigned int len)
-{
- char *p;
-
- len = nelems * len;
- p = SLmalloc (len);
- if (p != NULL) SLMEMSET (p, 0, len);
- return p;
-}
-
-/* p and ch may point to the same buffer */
-char *_SLexpand_escaped_char(char *p, char *ch)
-{
- int i = 0;
- int max = 0, num, base = 0;
- char ch1;
-
- ch1 = *p++;
-
- switch (ch1)
- {
- default: num = ch1; break;
- case 'n': num = '\n'; break;
- case 't': num = '\t'; break;
- case 'v': num = '\v'; break;
- case 'b': num = '\b'; break;
- case 'r': num = '\r'; break;
- case 'f': num = '\f'; break;
- case 'E': case 'e': num = 27; break;
- case 'a': num = 7;
- break;
-
- /* octal */
- case '0': case '1': case '2': case '3':
- case '4': case '5': case '6': case '7':
- max = '7';
- base = 8; i = 2; num = ch1 - '0';
- break;
-
- case 'd': /* decimal -- S-Lang extension */
- base = 10;
- i = 3;
- max = '9';
- num = 0;
- break;
-
- case 'x': /* hex */
- base = 16;
- max = '9';
- i = 2;
- num = 0;
- break;
- }
-
- while (i--)
- {
- ch1 = *p;
-
- if ((ch1 <= max) && (ch1 >= '0'))
- {
- num = base * num + (ch1 - '0');
- }
- else if (base == 16)
- {
- ch1 |= 0x20;
- if ((ch1 < 'a') || ((ch1 > 'f'))) break;
- num = base * num + 10 + (ch1 - 'a');
- }
- else break;
- p++;
- }
-
- *ch = (char) num;
- return p;
-}
-
-/* s and t could represent the same space */
-void SLexpand_escaped_string (register char *s, register char *t,
- register char *tmax)
-{
- char ch;
-
- while (t < tmax)
- {
- ch = *t++;
- if (ch == '\\')
- {
- t = _SLexpand_escaped_char (t, &ch);
- }
- *s++ = ch;
- }
- *s = 0;
-}
-
-int SLextract_list_element (char *list, unsigned int nth, char delim,
- char *elem, unsigned int buflen)
-{
- char *el, *elmax;
- char ch;
-
- while (nth > 0)
- {
- while ((0 != (ch = *list)) && (ch != delim))
- list++;
-
- if (ch == 0) return -1;
-
- list++;
- nth--;
- }
-
- el = elem;
- elmax = el + (buflen - 1);
-
- while ((0 != (ch = *list)) && (ch != delim) && (el < elmax))
- *el++ = *list++;
- *el = 0;
-
- return 0;
-}
-
-#ifndef HAVE_VSNPRINTF
-int _SLvsnprintf (char *buf, unsigned int buflen, char *fmt, va_list ap)
-{
-#if 1
- unsigned int len;
-
- /* On some systems vsprintf returns useless information. So, punt */
- vsprintf (buf, fmt, ap);
- len = strlen (buf);
- if (len >= buflen)
- {
- SLang_exit_error ("\
-Your system lacks the vsnprintf system call and vsprintf overflowed a buffer.\n\
-The integrity of this program has been violated.\n");
- return EOF; /* NOT reached */
- }
- return (int)len;
-#else
- int status;
-
- status = vsprintf (buf, fmt, ap);
- if (status >= (int) buflen)
- {
- /* If we are lucky, we will get this far. The real solution is to
- * provide a working version of vsnprintf
- */
- SLang_exit_error ("\
-Your system lacks the vsnprintf system call and vsprintf overflowed a buffer.\n\
-The integrity of this program has been violated.\n");
- return EOF; /* NOT reached */
- }
- return status;
-#endif
-}
-#endif
-
-#ifndef HAVE_SNPRINTF
-int _SLsnprintf (char *buf, unsigned int buflen, char *fmt, ...)
-{
- int status;
-
- va_list ap;
-
- va_start (ap, fmt);
- status = _SLvsnprintf (buf, buflen, fmt, ap);
- va_end (ap);
-
- return status;
-}
-#endif
-
-typedef struct _Cleanup_Function_Type
-{
- struct _Cleanup_Function_Type *next;
- void (*f)(void);
-}
-Cleanup_Function_Type;
-
-static Cleanup_Function_Type *Cleanup_Function_List;
-
-static void cleanup_slang (void)
-{
- while (Cleanup_Function_List != NULL)
- {
- Cleanup_Function_Type *next = Cleanup_Function_List->next;
- (*Cleanup_Function_List->f)();
- SLFREE_FUN ((char *) Cleanup_Function_List);
- Cleanup_Function_List = next;
- }
-}
-
-#ifndef HAVE_ATEXIT
-# ifdef HAVE_ON_EXIT
-static void on_exit_cleanup_slang (int arg_unused)
-{
- (void) arg_unused;
- cleanup_slang ();
-}
-# endif
-#endif
-
-int SLang_add_cleanup_function (void (*f)(void))
-{
- Cleanup_Function_Type *l;
-
- l = (Cleanup_Function_Type *) SLMALLOC_FUN (sizeof (Cleanup_Function_Type));
- if (l == NULL)
- return -1;
-
- l->f = f;
- l->next = Cleanup_Function_List;
-
- if (Cleanup_Function_List == NULL)
- {
-#ifdef HAVE_ATEXIT
- (void) atexit (cleanup_slang);
-#else
-# ifdef HAVE_ON_EXIT
- (void) on_exit (on_exit_cleanup_slang, 0);
-# endif
-#endif
- }
- Cleanup_Function_List = l;
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slnspace.c b/mdk-stage1/slang/slnspace.c
deleted file mode 100644
index 174ba7c81..000000000
--- a/mdk-stage1/slang/slnspace.c
+++ /dev/null
@@ -1,242 +0,0 @@
-/* -*- mode: C; mode: fold; -*- */
-/* slnspace.c --- Name Space implementation */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-static SLang_NameSpace_Type *Namespace_Tables;
-
-static SLang_NameSpace_Type *find_name_table (char *name)
-{
- SLang_NameSpace_Type *table_list;
-
- table_list = Namespace_Tables;
- while (table_list != NULL)
- {
- if (0 == strcmp (table_list->name, name))
- break;
- table_list = table_list->next;
- }
- return table_list;
-}
-
-SLang_NameSpace_Type *_SLns_find_namespace (char *name)
-{
- SLang_NameSpace_Type *table_list;
-
- table_list = Namespace_Tables;
- while (table_list != NULL)
- {
- if ((table_list->namespace_name != NULL)
- && (0 == strcmp (table_list->namespace_name, name)))
- break;
- table_list = table_list->next;
- }
- return table_list;
-}
-
-SLang_NameSpace_Type *_SLns_allocate_namespace (char *name, unsigned int size)
-{
- SLang_NameSpace_Type *table_list;
- SLang_Name_Type **nt;
-
- if (NULL != (table_list = find_name_table (name)))
- return table_list;
-
- if (NULL == (name = SLang_create_slstring (name)))
- return NULL;
-
- if (NULL == (table_list = (SLang_NameSpace_Type *)
- SLmalloc (sizeof (SLang_NameSpace_Type))))
- {
- SLang_free_slstring (name);
- return NULL;
- }
-
- if (NULL == (nt = (SLang_Name_Type **) SLmalloc (sizeof (SLang_Name_Type *) * size)))
- {
- SLang_free_slstring (name);
- SLfree ((char *)table_list);
- return NULL;
- }
-
- memset ((char *)nt, 0, size * sizeof (SLang_Name_Type *));
- memset ((char *) table_list, 0, sizeof (SLang_NameSpace_Type));
-
- table_list->name = name;
- table_list->table = nt;
- table_list->table_size = size;
-
- table_list->next = Namespace_Tables;
- Namespace_Tables = table_list;
-
- return table_list;
-}
-
-int _SLns_set_namespace_name (SLang_NameSpace_Type *t, char *name)
-{
- SLang_NameSpace_Type *t1;
-
- t1 = _SLns_find_namespace (name);
- if (t1 == NULL)
- t1 = t;
-
- if ((t != t1) || (*name == 0))
- {
- SLang_verror (SL_INTRINSIC_ERROR, "Namespace \"%s\" already exists",
- name);
- return -1;
- }
-
- if (NULL == (name = SLang_create_slstring (name)))
- return -1;
-
- SLang_free_slstring (t->namespace_name); /* NULL ok */
- t->namespace_name = name;
-
- return 0;
-}
-
-SLang_Array_Type *_SLnspace_apropos (SLang_NameSpace_Type *ns, char *pat, unsigned int what)
-{
- SLang_Array_Type *at;
- unsigned int table_size;
- SLang_Name_Type *t, **table;
- int num_matches;
- unsigned int i;
- SLRegexp_Type rexp;
- unsigned char rbuf[512];
- unsigned int two;
-
- at = NULL;
-
- if ((ns == NULL)
- || ((table = ns->table) == NULL))
- return NULL;
-
- memset ((char *) &rexp, 0, sizeof (SLRegexp_Type));
- rexp.case_sensitive = 1;
- rexp.buf = rbuf;
- rexp.buf_len = sizeof (rbuf);
- rexp.pat = (unsigned char *)pat;
-
- if (0 != SLang_regexp_compile (&rexp))
- {
- SLang_verror (SL_INVALID_PARM, "Invalid regular expression: %s", pat);
- return NULL;
- }
-
- table_size = ns->table_size;
-
- two = 2;
- while (two != 0)
- {
- two--;
-
- num_matches = 0;
- for (i = 0; i < table_size; i++)
- {
- t = table[i];
- while (t != NULL)
- {
- unsigned int flags;
- char *name = t->name;
-
- switch (t->name_type)
- {
- case SLANG_GVARIABLE:
- flags = 8;
- break;
-
- case SLANG_ICONSTANT:
- case SLANG_DCONSTANT:
- case SLANG_RVARIABLE:
- case SLANG_IVARIABLE:
- flags = 4;
- break;
-
- case SLANG_INTRINSIC:
- case SLANG_MATH_UNARY:
- case SLANG_APP_UNARY:
- flags = 1;
- break;
-
- case SLANG_FUNCTION:
- flags = 2;
- break;
-
- default:
- flags = 0;
- break;
- }
-
- if ((flags & what)
- && (NULL != SLang_regexp_match ((unsigned char *)name, strlen (name), &rexp)))
- {
- if (at != NULL)
- {
- if (-1 == SLang_set_array_element (at, &num_matches, (VOID_STAR)&name))
- goto return_error;
- }
- num_matches++;
- }
- t = t->next;
- }
- }
-
- if (at == NULL)
- {
- at = SLang_create_array (SLANG_STRING_TYPE, 0, NULL, &num_matches, 1);
- if (at == NULL)
- goto return_error;
- }
- }
-
- return at;
-
- return_error:
- SLang_free_array (at);
- return NULL;
-}
-
-SLang_NameSpace_Type *SLns_create_namespace (char *namespace_name)
-{
- SLang_NameSpace_Type *ns;
- static int num;
- char name[64];
-
- if (namespace_name == NULL)
- namespace_name = "Global";
-
- ns = _SLns_find_namespace (namespace_name);
- if (ns != NULL)
- return ns;
-
- sprintf (name, " *** internal ns <%d> *** ", num);
-
- if (NULL == (ns = _SLns_allocate_namespace (name, SLSTATIC_HASH_TABLE_SIZE)))
- return NULL;
-
- num++;
- if (-1 == _SLns_set_namespace_name (ns, namespace_name))
- {
- SLns_delete_namespace (ns);
- return NULL;
- }
-
- return ns;
-}
-
-void SLns_delete_namespace (SLang_NameSpace_Type *ns)
-{
- (void) ns;
- /* V2.0 */
-}
diff --git a/mdk-stage1/slang/slospath.c b/mdk-stage1/slang/slospath.c
deleted file mode 100644
index 644931e81..000000000
--- a/mdk-stage1/slang/slospath.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/* Pathname intrinsic functions */
-/* Copyright (c) 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-static void path_concat (char *a, char *b)
-{
- SLang_push_malloced_string (SLpath_dircat (a,b));
-}
-
-static void path_extname (char *path)
-{
-#ifdef VMS
- char *p;
-#endif
-
- path = SLpath_extname (path);
-#ifndef VMS
- SLang_push_string (path);
-#else
- p = strchr (path, ';');
- if (p == NULL)
- (void)SLang_push_string (p);
- else
- (void)SLang_push_malloced_string (SLmake_nstring (path, (unsigned int)(p - path)));
-#endif
-}
-
-static void path_basename (char *path)
-{
- (void) SLang_push_string (SLpath_basename (path));
-}
-
-static void path_dirname (char *path)
-{
- (void) SLang_push_malloced_string (SLpath_dirname (path));
-}
-
-static void path_sans_extname (char *path)
-{
- (void) SLang_push_malloced_string (SLpath_pathname_sans_extname (path));
-}
-
-
-
-static SLang_Intrin_Fun_Type Path_Name_Table [] =
-{
- MAKE_INTRINSIC_SS("path_concat", path_concat, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("path_extname", path_extname, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("path_dirname", path_dirname, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("path_basename", path_basename, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("path_sans_extname", path_sans_extname, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("path_is_absolute", SLpath_is_absolute_path, SLANG_INT_TYPE),
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-int SLang_init_ospath (void)
-{
- if (-1 == SLadd_intrin_fun_table(Path_Name_Table, "__OSPATH__"))
- return -1;
-
- return 0;
-}
-
-
diff --git a/mdk-stage1/slang/slpack.c b/mdk-stage1/slang/slpack.c
deleted file mode 100644
index 53ef63643..000000000
--- a/mdk-stage1/slang/slpack.c
+++ /dev/null
@@ -1,785 +0,0 @@
-/* Pack objects as a binary string */
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include <ctype.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-#ifndef isdigit
-# define isdigit(c) (((c)>='0')&&((c)<= '9'))
-#endif
-#ifndef isspace
-# define isspace(c) (((c)==' ') || ((c)=='\t') || ((c)=='\n'))
-#endif
-
-/* format description:
- *
- * s = string (null padded)
- * S = string (space padded)
- * c = signed char
- * C = unsigned char
- * h = short
- * H = unsigned short
- * i = int
- * I = unsigned int
- * l = long
- * L = unsigned long
- * j = 16 bit signed integer (short)
- * J = 16 bit unsigned integer (short)
- * k = 32 bit signed integer (long)
- * K = 32 bit unsigned integer (long)
- * f = float (native format)
- * F = 32 bit double
- * d = double (native format)
- * D = 64 bit double
- * x = null pad byte
- * > = big-endian mode
- * < = little-endian mode
- * = = native mode
- */
-
-#define NATIVE_ORDER 0
-#define BIGENDIAN_ORDER 1
-#define LILENDIAN_ORDER 2
-static int Native_Byte_Order = NATIVE_ORDER;
-
-typedef struct
-{
- char format_type;
- unsigned char data_type;
- unsigned int repeat;
- unsigned int sizeof_type;
- char pad;
- int byteorder;
- int is_scalar;
-}
-Format_Type;
-
-static int get_int_type_for_size (unsigned int size, unsigned char *s, unsigned char *u)
-{
- if (sizeof (int) == size)
- {
- if (s != NULL) *s = SLANG_INT_TYPE;
- if (u != NULL) *u = SLANG_UINT_TYPE;
- return 0;
- }
-
- if (sizeof (short) == size)
- {
- if (s != NULL) *s = SLANG_SHORT_TYPE;
- if (u != NULL) *u = SLANG_USHORT_TYPE;
- return 1;
- }
-
- if (sizeof (long) == size)
- {
- if (s != NULL) *s = SLANG_LONG_TYPE;
- if (u != NULL) *u = SLANG_ULONG_TYPE;
- return 1;
- }
-
- if (s != NULL) *s = 0;
- if (u != NULL) *u = 0;
- SLang_verror (SL_NOT_IMPLEMENTED,
- "This OS does not support a %u byte int", size);
- return -1;
-}
-
-static int get_float_type_for_size (unsigned int size, unsigned char *s)
-{
- if (sizeof (float) == size)
- {
- *s = SLANG_FLOAT_TYPE;
- return 0;
- }
-
- if (sizeof (double) == size)
- {
- *s = SLANG_DOUBLE_TYPE;
- return 0;
- }
-
- SLang_verror (SL_NOT_IMPLEMENTED,
- "This OS does not support a %u byte float", size);
- return -1;
-}
-
-static int parse_a_format (char **format, Format_Type *ft)
-{
- char *f;
- char ch;
- unsigned repeat;
-
- f = *format;
-
- while (((ch = *f++) != 0)
- && isspace (ch))
- ;
-
- switch (ch)
- {
- default:
- ft->byteorder = NATIVE_ORDER;
- break;
-
- case '=':
- ft->byteorder = NATIVE_ORDER;
- ch = *f++;
- break;
-
- case '>':
- ft->byteorder = BIGENDIAN_ORDER;
- ch = *f++;
- break;
-
- case '<':
- ft->byteorder = LILENDIAN_ORDER;
- ch = *f++;
- break;
- }
-
- if (ch == 0)
- {
- f--;
- *format = f;
- return 0;
- }
-
- ft->format_type = ch;
- ft->repeat = 1;
-
- if (isdigit (*f))
- {
- repeat = (unsigned int) (*f - '0');
- f++;
-
- while (isdigit (*f))
- {
- unsigned int repeat10 = 10 * repeat + (unsigned int)(*f - '0');
-
- /* Check overflow */
- if (repeat != repeat10 / 10)
- {
- SLang_verror (SL_OVERFLOW,
- "Repeat count too large in [un]pack format");
- return -1;
- }
- repeat = repeat10;
- f++;
- }
- ft->repeat = repeat;
- }
-
- *format = f;
-
- ft->is_scalar = 1;
- ft->pad = 0;
-
- switch (ft->format_type)
- {
- default:
- SLang_verror (SL_NOT_IMPLEMENTED,
- "[un]pack format character '%c' not supported", ft->format_type);
- return -1;
-
- case 'D':
- ft->sizeof_type = 8;
- if (-1 == get_float_type_for_size (8, &ft->data_type))
- return -1;
- break;
-
- case 'd':
- ft->data_type = SLANG_DOUBLE_TYPE;
- ft->sizeof_type = sizeof (double);
- break;
-
- case 'F':
- ft->sizeof_type = 4;
- if (-1 == get_float_type_for_size (4, &ft->data_type))
- return -1;
- break;
- case 'f':
- ft->data_type = SLANG_FLOAT_TYPE;
- ft->sizeof_type = sizeof (float);
- break;
-
- case 'h':
- ft->data_type = SLANG_SHORT_TYPE;
- ft->sizeof_type = sizeof (short);
- break;
- case 'H':
- ft->data_type = SLANG_USHORT_TYPE;
- ft->sizeof_type = sizeof (unsigned short);
- break;
- case 'i':
- ft->data_type = SLANG_INT_TYPE;
- ft->sizeof_type = sizeof (int);
- break;
- case 'I':
- ft->data_type = SLANG_UINT_TYPE;
- ft->sizeof_type = sizeof (unsigned int);
- break;
- case 'l':
- ft->data_type = SLANG_LONG_TYPE;
- ft->sizeof_type = sizeof (long);
- break;
- case 'L':
- ft->data_type = SLANG_ULONG_TYPE;
- ft->sizeof_type = sizeof (unsigned long);
- break;
-
- /* 16 bit ints */
- case 'j':
- ft->sizeof_type = 2;
- if (-1 == get_int_type_for_size (2, &ft->data_type, NULL))
- return -1;
- break;
- case 'J':
- ft->sizeof_type = 2;
- if (-1 == get_int_type_for_size (2, NULL, &ft->data_type))
- return -1;
- break;
-
- /* 32 bit ints */
- case 'k':
- ft->sizeof_type = 4;
- if (-1 == get_int_type_for_size (4, &ft->data_type, NULL))
- return -1;
- break;
- case 'K':
- ft->sizeof_type = 4;
- if (-1 == get_int_type_for_size (4, NULL, &ft->data_type))
- return -1;
- break;
-
- case 'x':
- ft->sizeof_type = 1;
- ft->data_type = 0;
- break;
-
- case 'c':
- ft->sizeof_type = 1;
- ft->data_type = SLANG_CHAR_TYPE;
- break;
-
- case 'C':
- ft->data_type = SLANG_UCHAR_TYPE;
- ft->sizeof_type = 1;
- break;
-
- case 'S':
- case 'A':
- ft->pad = ' ';
- case 'a':
- case 's':
- ft->data_type = SLANG_BSTRING_TYPE;
- ft->sizeof_type = 1;
- ft->is_scalar = 0;
- break;
- }
- return 1;
-}
-
-static int compute_size_for_format (char *format, unsigned int *num_bytes)
-{
- unsigned int size;
- Format_Type ft;
- int status;
-
- *num_bytes = size = 0;
-
- while (1 == (status = parse_a_format (&format, &ft)))
- size += ft.repeat * ft.sizeof_type;
-
- *num_bytes = size;
- return status;
-}
-
-static void byte_swap64 (unsigned char *ss, unsigned int n) /*{{{*/
-{
- unsigned char *p, *pmax, ch;
-
- if (n == 0) return;
- p = (unsigned char *) ss;
- pmax = p + 8 * n;
- while (p < pmax)
- {
- ch = *p;
- *p = *(p + 7);
- *(p + 7) = ch;
-
- ch = *(p + 6);
- *(p + 6) = *(p + 1);
- *(p + 1) = ch;
-
- ch = *(p + 5);
- *(p + 5) = *(p + 2);
- *(p + 2) = ch;
-
- ch = *(p + 4);
- *(p + 4) = *(p + 3);
- *(p + 3) = ch;
-
- p += 8;
- }
-}
-
-/*}}}*/
-static void byte_swap32 (unsigned char *ss, unsigned int n) /*{{{*/
-{
- unsigned char *p, *pmax, ch;
-
- p = (unsigned char *) ss;
- pmax = p + 4 * n;
- while (p < pmax)
- {
- ch = *p;
- *p = *(p + 3);
- *(p + 3) = ch;
-
- ch = *(p + 1);
- *(p + 1) = *(p + 2);
- *(p + 2) = ch;
- p += 4;
- }
-}
-
-/*}}}*/
-static void byte_swap16 (unsigned char *p, unsigned int nread) /*{{{*/
-{
- unsigned char *pmax, ch;
-
- pmax = p + 2 * nread;
- while (p < pmax)
- {
- ch = *p;
- *p = *(p + 1);
- *(p + 1) = ch;
- p += 2;
- }
-}
-
-/*}}}*/
-
-static int byteswap (int order, unsigned char *b, unsigned int size, unsigned int num)
-{
- if (Native_Byte_Order == order)
- return 0;
-
- switch (size)
- {
- case 2:
- byte_swap16 (b, num);
- break;
- case 4:
- byte_swap32 (b, num);
- break;
- case 8:
- byte_swap64 (b, num);
- break;
- default:
- return -1;
- }
-
- return 0;
-}
-
-static void check_native_byte_order (void)
-{
- unsigned short x;
-
- if (Native_Byte_Order != NATIVE_ORDER)
- return;
-
- x = 0xFF;
- if (*(unsigned char *)&x == 0xFF)
- Native_Byte_Order = LILENDIAN_ORDER;
- else
- Native_Byte_Order = BIGENDIAN_ORDER;
-}
-
-static SLang_BString_Type *
-pack_according_to_format (char *format, unsigned int nitems)
-{
- unsigned int size, num;
- unsigned char *buf, *b;
- SLang_BString_Type *bs;
- Format_Type ft;
-
- buf = NULL;
-
- if (-1 == compute_size_for_format (format, &size))
- goto return_error;
-
- if (NULL == (buf = (unsigned char *) SLmalloc (size + 1)))
- goto return_error;
-
- b = buf;
-
- while (1 == parse_a_format (&format, &ft))
- {
- unsigned char *ptr;
- unsigned int repeat;
-
- repeat = ft.repeat;
- if (ft.data_type == 0)
- {
- memset ((char *) b, ft.pad, repeat);
- b += repeat;
- continue;
- }
-
- if (ft.is_scalar)
- {
- unsigned char *bstart;
- num = repeat;
-
- bstart = b;
- while (repeat != 0)
- {
- unsigned int nelements;
- SLang_Array_Type *at;
-
- if (nitems == 0)
- {
- SLang_verror (SL_INVALID_PARM,
- "Not enough items for pack format");
- goto return_error;
- }
-
- if (-1 == SLang_pop_array_of_type (&at, ft.data_type))
- goto return_error;
-
- nelements = at->num_elements;
- if (repeat < nelements)
- nelements = repeat;
- repeat -= nelements;
-
- nelements = nelements * ft.sizeof_type;
- memcpy ((char *)b, (char *)at->data, nelements);
-
- b += nelements;
- SLang_free_array (at);
- nitems--;
- }
-
- if (ft.byteorder != NATIVE_ORDER)
- byteswap (ft.byteorder, bstart, ft.sizeof_type, num);
-
- continue;
- }
-
- /* Otherwise we have a string */
- if (-1 == SLang_pop_bstring (&bs))
- goto return_error;
-
- ptr = SLbstring_get_pointer (bs, &num);
- if (repeat < num) num = repeat;
- memcpy ((char *)b, (char *)ptr, num);
- b += num;
- repeat -= num;
- memset ((char *)b, ft.pad, repeat);
- SLbstring_free (bs);
- b += repeat;
- nitems--;
- }
-
- *b = 0;
- bs = SLbstring_create_malloced (buf, size, 0);
- if (bs == NULL)
- goto return_error;
-
- SLdo_pop_n (nitems);
- return bs;
-
- return_error:
- SLdo_pop_n (nitems);
- if (buf != NULL)
- SLfree ((char *) buf);
-
- return NULL;
-}
-
-void _SLpack (void)
-{
- SLang_BString_Type *bs;
- char *fmt;
- int nitems;
-
- check_native_byte_order ();
-
- nitems = SLang_Num_Function_Args;
- if (nitems <= 0)
- {
- SLang_verror (SL_SYNTAX_ERROR,
- "pack: not enough arguments");
- return;
- }
-
- if ((-1 == SLreverse_stack (nitems))
- || (-1 == SLang_pop_slstring (&fmt)))
- bs = NULL;
- else
- {
- bs = pack_according_to_format (fmt, (unsigned int)nitems - 1);
- SLang_free_slstring (fmt);
- }
-
- SLang_push_bstring (bs);
- SLbstring_free (bs);
-}
-
-void _SLunpack (char *format, SLang_BString_Type *bs)
-{
- Format_Type ft;
- unsigned char *b;
- unsigned int len;
- unsigned int num_bytes;
-
- check_native_byte_order ();
-
- if (-1 == compute_size_for_format (format, &num_bytes))
- return;
-
- b = SLbstring_get_pointer (bs, &len);
- if (b == NULL)
- return;
-
- if (len < num_bytes)
- {
- SLang_verror (SL_INVALID_PARM,
- "unpack format %s is too large for input string",
- format);
- return;
- }
-
- while (1 == parse_a_format (&format, &ft))
- {
- char *str, *s;
-
- if (ft.repeat == 0)
- continue;
-
- if (ft.data_type == 0)
- { /* skip padding */
- b += ft.repeat;
- continue;
- }
-
- if (ft.is_scalar)
- {
- SLang_Array_Type *at;
- int dims;
-
- if (ft.repeat == 1)
- {
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (ft.data_type);
- memcpy ((char *)cl->cl_transfer_buf, (char *)b, ft.sizeof_type);
- if (ft.byteorder != NATIVE_ORDER)
- byteswap (ft.byteorder, (unsigned char *)cl->cl_transfer_buf, ft.sizeof_type, 1);
-
- if (-1 == (cl->cl_apush (ft.data_type, cl->cl_transfer_buf)))
- return;
- b += ft.sizeof_type;
- continue;
- }
-
- dims = (int) ft.repeat;
- at = SLang_create_array (ft.data_type, 0, NULL, &dims, 1);
- if (at == NULL)
- return;
-
- num_bytes = ft.repeat * ft.sizeof_type;
- memcpy ((char *)at->data, (char *)b, num_bytes);
- if (ft.byteorder != NATIVE_ORDER)
- byteswap (ft.byteorder, (unsigned char *)at->data, ft.sizeof_type, ft.repeat);
-
- if (-1 == SLang_push_array (at, 1))
- return;
-
- b += num_bytes;
- continue;
- }
-
- len = ft.repeat;
- str = SLmalloc (len + 1);
- if (str == NULL)
- return;
-
- memcpy ((char *) str, (char *)b, len);
- str [len] = 0;
-
- if (ft.pad == ' ')
- {
- unsigned int new_len;
-
- s = str + len;
- while (s > str)
- {
- s--;
- if ((*s != ' ') && (*s != 0))
- {
- s++;
- break;
- }
- *s = 0;
- }
- new_len = (unsigned int) (s - str);
-
- if (new_len != len)
- {
- s = SLrealloc (str, new_len + 1);
- if (s == NULL)
- {
- SLfree (str);
- return;
- }
- str = s;
- len = new_len;
- }
- }
-
- /* Avoid a bstring if possible */
- s = SLmemchr (str, 0, len);
- if (s == NULL)
- {
- if (-1 == SLang_push_malloced_string (str))
- return;
- }
- else
- {
- SLang_BString_Type *new_bs;
-
- new_bs = SLbstring_create_malloced ((unsigned char *)str, len, 1);
- if (new_bs == NULL)
- return;
-
- if (-1 == SLang_push_bstring (new_bs))
- {
- SLfree (str);
- return;
- }
- SLbstring_free (new_bs);
- }
-
- b += ft.repeat;
- }
-}
-
-unsigned int _SLpack_compute_size (char *format)
-{
- unsigned int n;
-
- n = 0;
- (void) compute_size_for_format (format, &n);
- return n;
-}
-
-void _SLpack_pad_format (char *format)
-{
- unsigned int len, max_len;
- Format_Type ft;
- char *buf, *b;
-
- check_native_byte_order ();
-
- /* Just check the syntax */
- if (-1 == compute_size_for_format (format, &max_len))
- return;
-
- /* This should be sufficient to handle any needed xyy padding characters.
- * I cannot see how this will be overrun
- */
- max_len = 4 * (strlen (format) + 1);
- if (NULL == (buf = SLmalloc (max_len + 1)))
- return;
-
- b = buf;
- len = 0;
- while (1 == parse_a_format (&format, &ft))
- {
- struct { char a; short b; } s_h;
- struct { char a; int b; } s_i;
- struct { char a; long b; } s_l;
- struct { char a; float b; } s_f;
- struct { char a; double b; } s_d;
- unsigned int pad;
-
- if (ft.repeat == 0)
- continue;
-
- if (ft.data_type == 0)
- { /* pad */
- sprintf (b, "x%u", ft.repeat);
- b += strlen (b);
- len += ft.repeat;
- continue;
- }
-
- switch (ft.data_type)
- {
- default:
- case SLANG_STRING_TYPE:
- case SLANG_BSTRING_TYPE:
- case SLANG_CHAR_TYPE:
- case SLANG_UCHAR_TYPE:
- pad = 0;
- break;
-
- case SLANG_SHORT_TYPE:
- case SLANG_USHORT_TYPE:
- pad = ((unsigned int) ((char *)&s_h.b - (char *)&s_h.a));
- break;
-
- case SLANG_INT_TYPE:
- case SLANG_UINT_TYPE:
- pad = ((unsigned int) ((char *)&s_i.b - (char *)&s_i.a));
- break;
-
- case SLANG_LONG_TYPE:
- case SLANG_ULONG_TYPE:
- pad = ((unsigned int) ((char *)&s_l.b - (char *)&s_l.a));
- break;
-
- case SLANG_FLOAT_TYPE:
- pad = ((unsigned int) ((char *)&s_f.b - (char *)&s_f.a));
- break;
-
- case SLANG_DOUBLE_TYPE:
- pad = ((unsigned int) ((char *)&s_d.b - (char *)&s_d.a));
- break;
- }
-
- /* Pad to a length that is an integer multiple of pad. */
- if (pad)
- pad = pad * ((len + pad - 1)/pad) - len;
-
- if (pad)
- {
- sprintf (b, "x%u", pad);
- b += strlen (b);
- len += pad;
- }
-
- *b++ = ft.format_type;
- if (ft.repeat > 1)
- {
- sprintf (b, "%u", ft.repeat);
- b += strlen (b);
- }
-
- len += ft.repeat * ft.sizeof_type;
- }
- *b = 0;
-
- (void) SLang_push_malloced_string (buf);
-}
diff --git a/mdk-stage1/slang/slparse.c b/mdk-stage1/slang/slparse.c
deleted file mode 100644
index bc709d1fb..000000000
--- a/mdk-stage1/slang/slparse.c
+++ /dev/null
@@ -1,1970 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-static SLang_Load_Type *LLT;
-int _SLang_Compile_Line_Num_Info;
-
-static void free_token (_SLang_Token_Type *t)
-{
- register unsigned int nrefs = t->num_refs;
-
- if (nrefs == 0)
- return;
-
- if (nrefs == 1)
- {
- if (t->free_sval_flag)
- {
- if (t->type == BSTRING_TOKEN)
- SLbstring_free (t->v.b_val);
- else
- _SLfree_hashed_string (t->v.s_val, strlen (t->v.s_val), t->hash);
- t->v.s_val = NULL;
- }
- }
-
- t->num_refs = nrefs - 1;
-}
-
-static void init_token (_SLang_Token_Type *t)
-{
- memset ((char *) t, 0, sizeof (_SLang_Token_Type));
-#if _SLANG_HAS_DEBUG_CODE
- t->line_number = -1;
-#endif
-}
-
-/* Allow room for one push back of a token. This is necessary for
- * multiple assignment.
- */
-static unsigned int Use_Next_Token;
-static _SLang_Token_Type Next_Token;
-#if _SLANG_HAS_DEBUG_CODE
-static int Last_Line_Number = -1;
-#endif
-
-static int unget_token (_SLang_Token_Type *ctok)
-{
- if (SLang_Error)
- return -1;
- if (Use_Next_Token != 0)
- {
- _SLparse_error ("unget_token failed", ctok, 0);
- return -1;
- }
-
- Use_Next_Token++;
- Next_Token = *ctok;
- init_token (ctok);
- return 0;
-}
-
-static int get_token (_SLang_Token_Type *ctok)
-{
- if (ctok->num_refs)
- free_token (ctok);
-
- if (Use_Next_Token)
- {
- Use_Next_Token--;
- *ctok = Next_Token;
- return ctok->type;
- }
-
- return _SLget_token (ctok);
-}
-
-static int compile_token (_SLang_Token_Type *t)
-{
-#if _SLANG_HAS_DEBUG_CODE
- if (_SLang_Compile_Line_Num_Info
- && (t->line_number != Last_Line_Number)
- && (t->line_number != -1))
- {
- _SLang_Token_Type tok;
- tok.type = LINE_NUM_TOKEN;
- tok.v.long_val = Last_Line_Number = t->line_number;
- (*_SLcompile_ptr) (&tok);
- }
-#endif
- (*_SLcompile_ptr) (t);
- return 0;
-}
-
-typedef struct
-{
-#define USE_PARANOID_MAGIC 0
-#if USE_PARANOID_MAGIC
- unsigned long magic;
-#endif
- _SLang_Token_Type *stack;
- unsigned int len;
- unsigned int size;
-}
-Token_List_Type;
-
-#define MAX_TOKEN_LISTS 16
-static Token_List_Type Token_List_Stack [MAX_TOKEN_LISTS];
-static unsigned int Token_List_Stack_Depth = 0;
-static Token_List_Type *Token_List = NULL;
-
-static void init_token_list (Token_List_Type *t)
-{
- t->size = 0;
- t->len = 0;
- t->stack = NULL;
-#if USE_PARANOID_MAGIC
- t->magic = 0xABCDEF12;
-#endif
-}
-
-static void free_token_list (Token_List_Type *t)
-{
- _SLang_Token_Type *s;
-
- if (t == NULL)
- return;
-#if USE_PARANOID_MAGIC
- if (t->magic != 0xABCDEF12)
- {
- SLang_doerror ("Magic error.");
- return;
- }
-#endif
- s = t->stack;
- if (s != NULL)
- {
- _SLang_Token_Type *smax = s + t->len;
- while (s != smax)
- {
- if (s->num_refs) free_token (s);
- s++;
- }
-
- SLfree ((char *) t->stack);
- }
-
- memset ((char *) t, 0, sizeof (Token_List_Type));
-}
-
-static Token_List_Type *push_token_list (void)
-{
- if (Token_List_Stack_Depth == MAX_TOKEN_LISTS)
- {
- _SLparse_error ("Token list stack size exceeded", NULL, 0);
- return NULL;
- }
-
- Token_List = Token_List_Stack + Token_List_Stack_Depth;
- Token_List_Stack_Depth++;
- init_token_list (Token_List);
- return Token_List;
-}
-
-static int pop_token_list (int do_free)
-{
- if (Token_List_Stack_Depth == 0)
- {
- if (SLang_Error == 0)
- _SLparse_error ("Token list stack underflow", NULL, 0);
- return -1;
- }
- Token_List_Stack_Depth--;
-
- if (do_free) free_token_list (Token_List);
-
- if (Token_List_Stack_Depth != 0)
- Token_List = Token_List_Stack + (Token_List_Stack_Depth - 1);
- else
- Token_List = NULL;
-
- return 0;
-}
-
-static int check_token_list_space (Token_List_Type *t, unsigned int delta_size)
-{
- _SLang_Token_Type *st;
- unsigned int len;
-#if USE_PARANOID_MAGIC
- if (t->magic != 0xABCDEF12)
- {
- SLang_doerror ("Magic error.");
- return -1;
- }
-#endif
- len = t->len + delta_size;
- if (len <= t->size) return 0;
-
- if (delta_size < 4)
- {
- delta_size = 4;
- len = t->len + delta_size;
- }
-
- st = (_SLang_Token_Type *) SLrealloc((char *) t->stack,
- len * sizeof(_SLang_Token_Type));
- if (st == NULL)
- {
- _SLparse_error ("Malloc error", NULL, 0);
- return -1;
- }
-
- memset ((char *) (st + t->len), 0, delta_size);
-
- t->stack = st;
- t->size = len;
- return 0;
-}
-
-static int append_token (_SLang_Token_Type *t)
-{
- if (-1 == check_token_list_space (Token_List, 1))
- return -1;
-
- Token_List->stack [Token_List->len] = *t;
- Token_List->len += 1;
- t->num_refs = 0; /* stealing it */
- return 0;
-}
-
-static int append_token_of_type (unsigned char t)
-{
- _SLang_Token_Type *tok;
-
- if (-1 == check_token_list_space (Token_List, 1))
- return -1;
-
- /* The memset when the list was created ensures that the other fields
- * are properly initialized.
- */
- tok = Token_List->stack + Token_List->len;
- init_token (tok);
- tok->type = t;
- Token_List->len += 1;
- return 0;
-}
-
-static _SLang_Token_Type *get_last_token (void)
-{
- unsigned int len;
-
- if ((Token_List == NULL)
- || (0 == (len = Token_List->len)))
- return NULL;
-
- len--;
- return Token_List->stack + len;
-}
-
-/* This function does NOT free the list. */
-static int compile_token_list_with_fun (int dir, Token_List_Type *list,
- int (*f)(_SLang_Token_Type *))
-{
- _SLang_Token_Type *t0, *t1;
-
- if (list == NULL)
- return -1;
-
- if (f == NULL)
- f = compile_token;
-
- t0 = list->stack;
- t1 = t0 + list->len;
-
- if (dir < 0)
- {
- /* backwards */
-
- while ((SLang_Error == 0) && (t1 > t0))
- {
- t1--;
- (*f) (t1);
- }
- return 0;
- }
-
- /* forward */
- while ((SLang_Error == 0) && (t0 < t1))
- {
- (*f) (t0);
- t0++;
- }
- return 0;
-}
-
-static int compile_token_list (void)
-{
- if (Token_List == NULL)
- return -1;
-
- compile_token_list_with_fun (1, Token_List, NULL);
- pop_token_list (1);
- return 0;
-}
-
-/* Take all elements in the list from pos2 to the end and exchange them
- * with the elements at pos1, e.g.,
- * ...ABCDEabc ==> ...abcABCDE
- * where pos1 denotes A and pos2 denotes a.
- */
-static int token_list_element_exchange (unsigned int pos1, unsigned int pos2)
-{
- _SLang_Token_Type *s, *s1, *s2;
- unsigned int len, nloops;
-
- if (Token_List == NULL)
- return -1;
-
- s = Token_List->stack;
- len = Token_List->len;
-
- if ((s == NULL) || (len == 0)
- || (pos2 >= len))
- return -1;
-
- /* This may not be the most efficient algorithm but the number to swap
- * is most-likely going to be small, e.g, 3
- * The algorithm is to rotate the list. The particular rotation
- * direction was chosen to make insert_token fast.
- * It works like:
- * @ ABCabcde --> BCabcdeA --> CabcdeAB --> abcdefAB
- * which is optimal for Abcdef sequence produced by function calls.
- *
- * Profiling indicates that nloops is almost always 1, whereas the inner
- * loop can loop many times (e.g., 9 times).
- */
-
- s2 = s + (len - 1);
- s1 = s + pos1;
- nloops = pos2 - pos1;
-
- while (nloops)
- {
- _SLang_Token_Type save;
-
- s = s1;
- save = *s;
-
- while (s < s2)
- {
- *s = *(s + 1);
- s++;
- }
- *s = save;
-
- nloops--;
- }
- return 0;
-}
-
-#if 0
-static int insert_token (_SLang_Token_Type *t, unsigned int pos)
-{
- if (-1 == append_token (t))
- return -1;
-
- return token_list_element_exchange (pos, Token_List->len - 1);
-}
-#endif
-static void compile_token_of_type (unsigned char t)
-{
- _SLang_Token_Type tok;
-
-#if _SLANG_HAS_DEBUG_CODE
- tok.line_number = -1;
-#endif
- tok.type = t;
- compile_token(&tok);
-}
-
-static void statement (_SLang_Token_Type *);
-static void compound_statement (_SLang_Token_Type *);
-static void expression_with_parenthesis (_SLang_Token_Type *);
-static void handle_semicolon (_SLang_Token_Type *);
-static void statement_list (_SLang_Token_Type *);
-static void variable_list (_SLang_Token_Type *, unsigned char);
-static void struct_declaration (_SLang_Token_Type *);
-static void define_function_args (_SLang_Token_Type *);
-static void typedef_definition (_SLang_Token_Type *);
-static void function_args_expression (_SLang_Token_Type *, int);
-static void expression (_SLang_Token_Type *);
-static void expression_with_commas (_SLang_Token_Type *, int);
-static void simple_expression (_SLang_Token_Type *);
-static void unary_expression (_SLang_Token_Type *);
-static void postfix_expression (_SLang_Token_Type *);
-static int check_for_lvalue (unsigned char, _SLang_Token_Type *);
-/* static void primary_expression (_SLang_Token_Type *); */
-static void block (_SLang_Token_Type *);
-static void inline_array_expression (_SLang_Token_Type *);
-static void array_index_expression (_SLang_Token_Type *);
-static void do_multiple_assignment (_SLang_Token_Type *);
-static void try_multiple_assignment (_SLang_Token_Type *);
-#if 0
-static void not_implemented (char *what)
-{
- char err [256];
- sprintf (err, "Expression not implemented: %s", what);
- _SLparse_error (err, NULL, 0);
-}
-#endif
-static void rpn_parse_line (_SLang_Token_Type *tok)
-{
- do
- {
- /* multiple RPN tokens possible when the file looks like:
- * . <end of line>
- * . <end of line>
- */
- if (tok->type != RPN_TOKEN)
- compile_token (tok);
- free_token (tok);
- }
- while (EOF_TOKEN != _SLget_rpn_token (tok));
-}
-
-static int get_identifier_token (_SLang_Token_Type *tok)
-{
- if (IDENT_TOKEN == get_token (tok))
- return IDENT_TOKEN;
-
- _SLparse_error ("Expecting identifier", tok, 0);
- return tok->type;
-}
-
-static void define_function (_SLang_Token_Type *ctok, unsigned char type)
-{
- _SLang_Token_Type fname;
-
- switch (type)
- {
- case STATIC_TOKEN:
- type = DEFINE_STATIC_TOKEN;
- break;
-
- case PUBLIC_TOKEN:
- type = DEFINE_PUBLIC_TOKEN;
- break;
-
- case PRIVATE_TOKEN:
- type = DEFINE_PRIVATE_TOKEN;
- }
-
- init_token (&fname);
- if (IDENT_TOKEN != get_identifier_token (&fname))
- {
- free_token (&fname);
- return;
- }
-
- compile_token_of_type(OPAREN_TOKEN);
- get_token (ctok);
- define_function_args (ctok);
- compile_token_of_type(FARG_TOKEN);
-
- if (ctok->type == OBRACE_TOKEN)
- compound_statement(ctok);
-
- else if (ctok->type != SEMICOLON_TOKEN)
- {
- _SLparse_error("Expecting {", ctok, 0);
- free_token (&fname);
- return;
- }
-
- fname.type = type;
- compile_token (&fname);
- free_token (&fname);
-}
-
-/* statement:
- * compound-statement
- * if ( expression ) statement
- * if ( expression ) statement else statement
- * !if ( expression ) statement
- * loop ( expression ) statement
- * _for ( expression ) statement
- * foreach ( expression ) statement
- * foreach (expression ) using (expression-list) statement
- * while ( expression ) statement
- * do statement while (expression) ;
- * for ( expressionopt ; expressionopt ; expressionopt ) statement
- * ERROR_BLOCK statement
- * EXIT_BLOCK statement
- * USER_BLOCK0 statement
- * USER_BLOCK1 statement
- * USER_BLOCK2 statement
- * USER_BLOCK3 statement
- * USER_BLOCK4 statement
- * forever statement
- * break ;
- * continue ;
- * return expressionopt ;
- * variable variable-list ;
- * struct struct-decl ;
- * define identifier function-args ;
- * define identifier function-args compound-statement
- * switch ( expression ) statement
- * rpn-line
- * at-line
- * push ( expression )
- * ( expression ) = expression ;
- * expression ;
- * expression :
- */
-
-/* Note: This function does not return with a new token. It is up to the
- * calling routine to handle that.
- */
-static void statement (_SLang_Token_Type *ctok)
-{
- unsigned char type;
-
- if (SLang_Error)
- return;
-
- LLT->parse_level += 1;
-
- switch (ctok->type)
- {
- case OBRACE_TOKEN:
- compound_statement (ctok);
- break;
-
- case IF_TOKEN:
- case IFNOT_TOKEN:
- type = ctok->type;
- get_token (ctok);
- expression_with_parenthesis (ctok);
- block (ctok);
-
- if (ELSE_TOKEN != get_token (ctok))
- {
- compile_token_of_type (type);
- unget_token (ctok);
- break;
- }
- get_token (ctok);
- block (ctok);
- if (type == IF_TOKEN) type = ELSE_TOKEN; else type = NOTELSE_TOKEN;
- compile_token_of_type (type);
- break;
-
- /* case IFNOT_TOKEN: */
- case LOOP_TOKEN:
- case _FOR_TOKEN:
- type = ctok->type;
- get_token (ctok);
- expression_with_parenthesis (ctok);
- block (ctok);
- compile_token_of_type (type);
- break;
-
- case FOREACH_TOKEN:
- get_token (ctok);
- expression_with_parenthesis (ctok);
-
- if (NULL == push_token_list ())
- break;
-
- append_token_of_type (ARG_TOKEN);
- if (ctok->type == USING_TOKEN)
- {
- if (OPAREN_TOKEN != get_token (ctok))
- {
- _SLparse_error ("Expected 'using ('", ctok, 0);
- break;
- }
- get_token (ctok);
- function_args_expression (ctok, 0);
- }
- append_token_of_type (EARG_TOKEN);
-
- compile_token_list ();
-
- block (ctok);
- compile_token_of_type (FOREACH_TOKEN);
- break;
-
- case WHILE_TOKEN:
- get_token (ctok);
- compile_token_of_type (OBRACE_TOKEN);
- expression_with_parenthesis (ctok);
- compile_token_of_type (CBRACE_TOKEN);
- block (ctok);
- compile_token_of_type (WHILE_TOKEN);
- break;
-
- case DO_TOKEN:
- get_token (ctok);
- block (ctok);
-
- if (WHILE_TOKEN != get_token (ctok))
- {
- _SLparse_error("Expecting while", ctok, 0);
- break;
- }
-
- get_token (ctok);
-
- compile_token_of_type (OBRACE_TOKEN);
- expression_with_parenthesis (ctok);
- compile_token_of_type (CBRACE_TOKEN);
- compile_token_of_type (DOWHILE_TOKEN);
- handle_semicolon (ctok);
- break;
-
- case FOR_TOKEN:
-
- /* Look for (exp_opt ; exp_opt ; exp_opt ) */
-
- if (OPAREN_TOKEN != get_token (ctok))
- {
- _SLparse_error("Expecting (.", ctok, 0);
- break;
- }
-
- if (NULL == push_token_list ())
- break;
-
- append_token_of_type (OBRACE_TOKEN);
- if (SEMICOLON_TOKEN != get_token (ctok))
- {
- expression (ctok);
- if (ctok->type != SEMICOLON_TOKEN)
- {
- _SLparse_error("Expecting ;", ctok, 0);
- break;
- }
- }
- append_token_of_type (CBRACE_TOKEN);
-
- append_token_of_type (OBRACE_TOKEN);
- if (SEMICOLON_TOKEN != get_token (ctok))
- {
- expression (ctok);
- if (ctok->type != SEMICOLON_TOKEN)
- {
- _SLparse_error("Expecting ;", ctok, 0);
- break;
- }
- }
- append_token_of_type (CBRACE_TOKEN);
-
- append_token_of_type (OBRACE_TOKEN);
- if (CPAREN_TOKEN != get_token (ctok))
- {
- expression (ctok);
- if (ctok->type != CPAREN_TOKEN)
- {
- _SLparse_error("Expecting ).", ctok, 0);
- break;
- }
- }
- append_token_of_type (CBRACE_TOKEN);
-
- compile_token_list ();
-
- get_token (ctok);
- block (ctok);
- compile_token_of_type (FOR_TOKEN);
- break;
-
- case ERRBLK_TOKEN:
- case EXITBLK_TOKEN:
- case USRBLK0_TOKEN:
- case USRBLK1_TOKEN:
- case USRBLK2_TOKEN:
- case USRBLK3_TOKEN:
- case USRBLK4_TOKEN:
- case FOREVER_TOKEN:
- type = ctok->type;
- get_token (ctok);
- block (ctok);
- compile_token_of_type (type);
- break;
-
- case BREAK_TOKEN:
- case CONT_TOKEN:
- compile_token_of_type (ctok->type);
- get_token (ctok);
- handle_semicolon (ctok);
- break;
-
- case RETURN_TOKEN:
- if (SEMICOLON_TOKEN != get_token (ctok))
- {
- if (NULL == push_token_list ())
- break;
-
- expression (ctok);
-
- if (ctok->type != SEMICOLON_TOKEN)
- {
- _SLparse_error ("Expecting ;", ctok, 0);
- break;
- }
- compile_token_list ();
- }
- compile_token_of_type (RETURN_TOKEN);
- handle_semicolon (ctok);
- break;
-
- case STATIC_TOKEN:
- case PRIVATE_TOKEN:
- case PUBLIC_TOKEN:
- type = ctok->type;
- get_token (ctok);
- if (ctok->type == VARIABLE_TOKEN)
- {
- get_token (ctok);
- variable_list (ctok, type);
- handle_semicolon (ctok);
- break;
- }
- if (ctok->type == DEFINE_TOKEN)
- {
- define_function (ctok, type);
- break;
- }
- _SLparse_error ("Expecting 'variable' or 'define'", ctok, 0);
- break;
-
- case VARIABLE_TOKEN:
- get_token (ctok);
- variable_list (ctok, OBRACKET_TOKEN);
- handle_semicolon (ctok);
- break;
-
- case TYPEDEF_TOKEN:
- get_token (ctok);
- if (NULL == push_token_list ())
- break;
- typedef_definition (ctok);
- compile_token_list ();
-
- handle_semicolon (ctok);
- break;
-
- case DEFINE_TOKEN:
- define_function (ctok, DEFINE_TOKEN);
- break;
-
- case SWITCH_TOKEN:
- get_token (ctok);
- expression_with_parenthesis (ctok);
-
- while ((SLang_Error == 0)
- && (OBRACE_TOKEN == ctok->type))
- {
- compile_token_of_type (OBRACE_TOKEN);
- compound_statement (ctok);
- compile_token_of_type (CBRACE_TOKEN);
- get_token (ctok);
- }
- compile_token_of_type (SWITCH_TOKEN);
- unget_token (ctok);
- break;
-
- case EOF_TOKEN:
- break;
-#if 0
- case PUSH_TOKEN:
- get_token (ctok);
- expression_list_with_parenthesis (ctok);
- handle_semicolon (ctok);
- break;
-#endif
-
- case SEMICOLON_TOKEN:
- handle_semicolon (ctok);
- break;
-
- case RPN_TOKEN:
- if (POUND_TOKEN == get_token (ctok))
- _SLcompile_byte_compiled ();
- else if (ctok->type != EOF_TOKEN)
- rpn_parse_line (ctok);
- break;
-
- case OPAREN_TOKEN: /* multiple assignment */
- try_multiple_assignment (ctok);
- if (ctok->type == COLON_TOKEN)
- compile_token_of_type (COLON_TOKEN);
- else handle_semicolon (ctok);
- break;
-
- default:
-
- if (NULL == push_token_list ())
- break;
-
- expression (ctok);
- compile_token_list ();
-
- if (ctok->type == COLON_TOKEN)
- compile_token_of_type (COLON_TOKEN);
- else handle_semicolon (ctok);
- break;
- }
-
- LLT->parse_level -= 1;
-}
-
-static void block (_SLang_Token_Type *ctok)
-{
- compile_token_of_type (OBRACE_TOKEN);
- statement (ctok);
- compile_token_of_type (CBRACE_TOKEN);
-}
-
-/*
- * statement-list:
- * statement
- * statement-list statement
- */
-static void statement_list (_SLang_Token_Type *ctok)
-{
- while ((SLang_Error == 0)
- && (ctok->type != CBRACE_TOKEN)
- && (ctok->type != EOF_TOKEN))
- {
- statement(ctok);
- get_token (ctok);
- }
-}
-
-/* compound-statement:
- * { statement-list }
- */
-static void compound_statement (_SLang_Token_Type *ctok)
-{
- /* ctok->type is OBRACE_TOKEN here */
- get_token (ctok);
- statement_list(ctok);
- if (CBRACE_TOKEN != ctok->type)
- {
- _SLparse_error ("Expecting '}'", ctok, 0);
- return;
- }
-}
-
-/* This function is only called from statement. */
-static void expression_with_parenthesis (_SLang_Token_Type *ctok)
-{
- if (ctok->type != OPAREN_TOKEN)
- {
- _SLparse_error("Expecting (", ctok, 0);
- return;
- }
-
- if (NULL == push_token_list ())
- return;
-
- get_token (ctok);
- expression (ctok);
-
- if (ctok->type != CPAREN_TOKEN)
- _SLparse_error("Expecting )", ctok, 0);
-
- compile_token_list ();
-
- get_token (ctok);
-}
-
-static void handle_semicolon (_SLang_Token_Type *ctok)
-{
- if ((ctok->type == SEMICOLON_TOKEN)
- || (ctok->type == EOF_TOKEN))
- return;
-
- _SLparse_error ("Expecting ;", ctok, 0);
-}
-
-void _SLparse_start (SLang_Load_Type *llt)
-{
- _SLang_Token_Type ctok;
- SLang_Load_Type *save_llt;
- unsigned int save_use_next_token;
- _SLang_Token_Type save_next_token;
- Token_List_Type *save_list;
-#if _SLANG_HAS_DEBUG_CODE
- int save_last_line_number = Last_Line_Number;
-
- Last_Line_Number = -1;
-#endif
- save_use_next_token = Use_Next_Token;
- save_next_token = Next_Token;
- save_list = Token_List;
- save_llt = LLT;
- LLT = llt;
-
- init_token (&Next_Token);
- Use_Next_Token = 0;
- init_token (&ctok);
- get_token (&ctok);
-
- llt->parse_level = 0;
- statement_list (&ctok);
-
- if ((SLang_Error == 0)
- && (ctok.type != EOF_TOKEN))
- _SLparse_error ("Parse ended prematurely", &ctok, 0);
-
-
- if (SLang_Error)
- {
- if (SLang_Error < 0) /* severe error */
- save_list = NULL;
-
- while (Token_List != save_list)
- {
- if (-1 == pop_token_list (1))
- break; /* ??? when would this happen? */
- }
- }
-
- free_token (&ctok);
- LLT = save_llt;
- if (Use_Next_Token)
- free_token (&Next_Token);
- Use_Next_Token = save_use_next_token;
- Next_Token = save_next_token;
-#if _SLANG_HAS_DEBUG_CODE
- Last_Line_Number = save_last_line_number;
-#endif
-}
-
-/* variable-list:
- * variable-decl
- * variable-decl variable-list
- *
- * variable-decl:
- * identifier
- * identifier = simple-expression
- */
-static void variable_list (_SLang_Token_Type *name_token, unsigned char variable_type)
-{
- int declaring;
- _SLang_Token_Type tok;
-
- if (name_token->type != IDENT_TOKEN)
- {
- _SLparse_error ("Expecting a variable name", name_token, 0);
- return;
- }
-
- declaring = 0;
- do
- {
- if (declaring == 0)
- {
- declaring = 1;
- compile_token_of_type (variable_type);
- }
-
- compile_token (name_token);
-
- init_token (&tok);
- if (ASSIGN_TOKEN == get_token (&tok))
- {
- compile_token_of_type (CBRACKET_TOKEN);
- declaring = 0;
-
- get_token (&tok);
-
- push_token_list ();
- simple_expression (&tok);
- compile_token_list ();
-
- name_token->type = _SCALAR_ASSIGN_TOKEN;
- compile_token (name_token);
- }
-
- free_token (name_token);
- *name_token = tok;
- }
- while ((name_token->type == COMMA_TOKEN)
- && (IDENT_TOKEN == get_token (name_token)));
-
- if (declaring) compile_token_of_type (CBRACKET_TOKEN);
-}
-
-/* struct-declaration:
- * struct { struct-field-list };
- *
- * struct-field-list:
- * struct-field-name , struct-field-list
- * struct-field-name
- *
- * Generates code: "field-name-1" ... "field-name-N" N STRUCT_TOKEN
- */
-static void struct_declaration (_SLang_Token_Type *ctok)
-{
- int n;
- _SLang_Token_Type num_tok;
-
- if (ctok->type != OBRACE_TOKEN)
- {
- _SLparse_error ("Expecting {", ctok, 0);
- return;
- }
-
- n = 0;
- while (IDENT_TOKEN == get_token (ctok))
- {
- n++;
- ctok->type = STRING_TOKEN;
- append_token (ctok);
- if (COMMA_TOKEN != get_token (ctok))
- break;
- }
-
- if (ctok->type != CBRACE_TOKEN)
- {
- _SLparse_error ("Expecting }", ctok, 0);
- return;
- }
- if (n == 0)
- {
- _SLparse_error ("struct requires at least 1 field", ctok, 0);
- return;
- }
-
- init_token (&num_tok);
- num_tok.type = INT_TOKEN;
- num_tok.v.long_val = n;
- append_token (&num_tok);
- append_token_of_type (STRUCT_TOKEN);
-
- get_token (ctok);
-}
-
-/* struct-declaration:
- * typedef struct { struct-field-list } Type_Name;
- *
- * struct-field-list:
- * struct-field-name , struct-field-list
- * struct-field-name
- *
- * Generates code: "field-name-1" ... "field-name-N" N STRUCT_TOKEN typedef
- */
-static void typedef_definition (_SLang_Token_Type *t)
-{
-
- if (t->type != STRUCT_TOKEN)
- {
- _SLparse_error ("Expecting `struct'", t, 0);
- return;
- }
- get_token (t);
-
- struct_declaration (t);
- if (t->type != IDENT_TOKEN)
- {
- _SLparse_error ("Expecting identifier", t, 0);
- return;
- }
-
- t->type = STRING_TOKEN;
- append_token (t);
- append_token_of_type (TYPEDEF_TOKEN);
-
- get_token (t);
-}
-
-/* function-args:
- * ( args-dec-opt )
- *
- * args-decl-opt:
- * identifier
- * args-decl , identifier
- */
-static void define_function_args (_SLang_Token_Type *ctok)
-{
- if (CPAREN_TOKEN == get_token (ctok))
- {
- get_token (ctok);
- return;
- }
-
- compile_token_of_type(OBRACKET_TOKEN);
-
- while ((SLang_Error == 0)
- && (ctok->type == IDENT_TOKEN))
- {
- compile_token (ctok);
- if (COMMA_TOKEN != get_token (ctok))
- break;
-
- get_token (ctok);
- }
-
- if (CPAREN_TOKEN != ctok->type)
- {
- _SLparse_error("Expecting )", ctok, 0);
- return;
- }
- compile_token_of_type(CBRACKET_TOKEN);
-
- get_token (ctok);
-}
-
-void try_multiple_assignment (_SLang_Token_Type *ctok)
-{
- /* This is called with ctok->type == OPAREN_TOKEN. We have no idea
- * what follows this. There are various possibilities such as:
- * @ () = x;
- * @ ( expression ) = x;
- * @ ( expression ) ;
- * @ ( expression ) OP expression;
- * @ ( expression ) [expression] = expression;
- * and only the first two constitute a multiple assignment. The last
- * two forms create the difficulty.
- *
- * Here is the plan. First parse (expression) and then check next token.
- * If it is an equal operator, then it will be parsed as a multiple
- * assignment. In fact, that is the easy part.
- *
- * The hard part stems from the fact that by parsing (expression), we
- * have effectly truncated the parse if (expression) is part of a binary
- * or unary expression. Somehow, the parsing must be resumed. The trick
- * here is to use a dummy literal that generates no code: NO_OP_LITERAL
- * Using it, we just call 'expression' and proceed.
- */
-
- if (NULL == push_token_list ())
- return;
-
- get_token (ctok);
-
- if (ctok->type != CPAREN_TOKEN)
- {
- expression_with_commas (ctok, 1);
- if (ctok->type != CPAREN_TOKEN)
- {
- _SLparse_error ("Expecting )", ctok, 0);
- return;
- }
- }
-
- switch (get_token (ctok))
- {
- case ASSIGN_TOKEN:
- case PLUSEQS_TOKEN:
- case MINUSEQS_TOKEN:
- case TIMESEQS_TOKEN:
- case DIVEQS_TOKEN:
- case BOREQS_TOKEN:
- case BANDEQS_TOKEN:
- do_multiple_assignment (ctok);
- pop_token_list (1);
- break;
-
- default:
- unget_token (ctok);
- ctok->type = NO_OP_LITERAL;
- expression (ctok);
- compile_token_list ();
- break;
- }
-}
-
-/* Note: expression never gets compiled directly. Rather, it gets
- * appended to the token list and then compiled by a calling
- * routine.
- */
-
-/* expression:
- * simple_expression
- * simple-expression , expression
- * <none>
- */
-static void expression_with_commas (_SLang_Token_Type *ctok, int save_comma)
-{
- while (SLang_Error == 0)
- {
- if (ctok->type != COMMA_TOKEN)
- {
- if (ctok->type == CPAREN_TOKEN)
- return;
-
- simple_expression (ctok);
-
- if (ctok->type != COMMA_TOKEN)
- break;
- }
- if (save_comma) append_token (ctok);
- get_token (ctok);
- }
-}
-
-static void expression (_SLang_Token_Type *ctok)
-{
- expression_with_commas (ctok, 0);
-}
-
-/* priority levels of binary operations */
-static unsigned char Binop_Level[] =
-{
-/* ADD_TOKEN */ 2,
-/* SUB_TOKEN */ 2,
-/* MUL_TOKEN */ 1,
-/* DIV_TOKEN */ 1,
-/* LT_TOKEN */ 4,
-/* LE_TOKEN */ 4,
-/* GT_TOKEN */ 4,
-/* GE_TOKEN */ 4,
-/* EQ_TOKEN */ 5,
-/* NE_TOKEN */ 5,
-/* AND_TOKEN */ 9,
-/* OR_TOKEN */ 10,
-/* MOD_TOKEN */ 1,
-/* BAND_TOKEN */ 6,
-/* SHL_TOKEN */ 3,
-/* SHR_TOKEN */ 3,
-/* BXOR_TOKEN */ 7,
-/* BOR_TOKEN */ 8,
-/* POUND_TOKEN */ 1 /* Matrix Multiplication */
-};
-
-/* % Note: simple-expression groups operators OP1 at same level. The
- * % actual implementation will not do this.
- * simple-expression:
- * unary-expression
- * binary-expression BINARY-OP unary-expression
- * andelse xxelse-expression-list
- * orelse xxelse-expression-list
- *
- * xxelse-expression-list:
- * { expression }
- * xxelse-expression-list { expression }
- * binary-expression:
- * unary-expression
- * unary-expression BINARY-OP binary-expression
- */
-static void simple_expression (_SLang_Token_Type *ctok)
-{
- unsigned char type;
- unsigned char op_stack [64];
- unsigned char level_stack [64];
- unsigned char level;
- unsigned int op_num;
-
- switch (ctok->type)
- {
- case ANDELSE_TOKEN:
- case ORELSE_TOKEN:
- type = ctok->type;
- if (OBRACE_TOKEN != get_token (ctok))
- {
- _SLparse_error ("Expecting '{'", ctok, 0);
- return;
- }
-
- while (ctok->type == OBRACE_TOKEN)
- {
- append_token (ctok);
- get_token (ctok);
- expression (ctok);
- if (CBRACE_TOKEN != ctok->type)
- {
- _SLparse_error("Expecting }", ctok, 0);
- return;
- }
- append_token (ctok);
- get_token (ctok);
- }
- append_token_of_type (type);
- return;
-
- /* avoid unary-expression if possible */
- case STRING_TOKEN:
- append_token (ctok);
- get_token (ctok);
- break;
-
- default:
- unary_expression (ctok);
- break;
- }
-
- if (SEMICOLON_TOKEN == (type = ctok->type))
- return;
-
- op_num = 0;
-
- while ((SLang_Error == 0)
- && (IS_BINARY_OP(type)))
- {
- level = Binop_Level[type - FIRST_BINARY_OP];
-
- while ((op_num > 0) && (level_stack [op_num - 1] <= level))
- append_token_of_type (op_stack [--op_num]);
-
- if (op_num >= sizeof (op_stack) - 1)
- {
- _SLparse_error ("Binary op stack overflow", ctok, 0);
- return;
- }
-
- op_stack [op_num] = type;
- level_stack [op_num] = level;
- op_num++;
-
- get_token (ctok);
- unary_expression (ctok);
- type = ctok->type;
- }
-
- while (op_num > 0)
- append_token_of_type(op_stack[--op_num]);
-}
-
-/* unary-expression:
- * postfix-expression
- * ++ postfix-expression
- * -- postfix-expression
- * case unary-expression
- * OP3 unary-expression
- * (OP3: + - ~ & not @)
- *
- * Note: This grammar permits: case case case WHATEVER
- */
-static void unary_expression (_SLang_Token_Type *ctok)
-{
- unsigned char save_unary_ops [16];
- unsigned int num_unary_ops;
- unsigned char type;
- _SLang_Token_Type *last_token;
-
- num_unary_ops = 0;
- while (SLang_Error == 0)
- {
- type = ctok->type;
-
- switch (type)
- {
- case PLUSPLUS_TOKEN:
- case MINUSMINUS_TOKEN:
- get_token (ctok);
- postfix_expression (ctok);
- check_for_lvalue (type, NULL);
- goto out_of_switch;
-
- case ADD_TOKEN:
- get_token (ctok); /* skip it-- it's unary here */
- break;
-
- case SUB_TOKEN:
- (void) get_token (ctok);
- if (IS_INTEGER_TOKEN (ctok->type))
- {
- ctok->v.long_val = -ctok->v.long_val;
- break;
- }
-
- if (num_unary_ops == 16)
- goto stack_overflow_error;
- save_unary_ops [num_unary_ops++] = CHS_TOKEN;
- break;
-
- case DEREF_TOKEN:
- case BNOT_TOKEN:
- case NOT_TOKEN:
- case CASE_TOKEN:
- if (num_unary_ops == 16)
- goto stack_overflow_error;
-
- save_unary_ops [num_unary_ops++] = type;
- get_token (ctok);
- break;
-
- /* Try to avoid ->postfix_expression->primary_expression
- * subroutine calls.
- */
- case STRING_TOKEN:
- append_token (ctok);
- get_token (ctok);
- goto out_of_switch;
-
- default:
- postfix_expression (ctok);
- goto out_of_switch;
- }
- }
-
- out_of_switch:
- if (num_unary_ops == 0)
- return;
-
- if ((DEREF_TOKEN == save_unary_ops[num_unary_ops - 1])
- && (NULL != (last_token = get_last_token ()))
- && (IS_ASSIGN_TOKEN(last_token->type)))
- {
- /* FIXME: Priority=medium
- * This needs generalized so that things like @a.y = 1 will work properly.
- */
- if ((num_unary_ops != 1)
- || (last_token->type != _SCALAR_ASSIGN_TOKEN))
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "Only derefence assignments to simple variables are possible");
- return;
- }
-
- last_token->type += (_DEREF_ASSIGN_TOKEN - _SCALAR_ASSIGN_TOKEN);
- return;
- }
-
- while (num_unary_ops)
- {
- num_unary_ops--;
- append_token_of_type (save_unary_ops [num_unary_ops]);
- }
- return;
-
- stack_overflow_error:
- _SLparse_error ("Too many unary operators.", ctok, 0);
-}
-
-static int combine_namespace_tokens (_SLang_Token_Type *a, _SLang_Token_Type *b)
-{
- char *sa, *sb, *sc;
- unsigned int lena, lenb;
- unsigned long hash;
-
- /* This is somewhat of a hack. Combine the TWO identifier names
- * (NAMESPACE) and (name) into the form NAMESPACE->name. Then when the
- * byte compiler compiles the object it will not be found. It will then
- * check for this hack and make the appropriate namespace lookup.
- */
-
- sa = a->v.s_val;
- sb = b->v.s_val;
-
- lena = strlen (sa);
- lenb = strlen (sb);
-
- sc = SLmalloc (lena + lenb + 3);
- if (sc == NULL)
- return -1;
-
- strcpy (sc, sa);
- strcpy (sc + lena, "->");
- strcpy (sc + lena + 2, sb);
-
- sb = _SLstring_make_hashed_string (sc, lena + lenb + 2, &hash);
- SLfree (sc);
- if (sb == NULL)
- return -1;
-
- /* I can free this string because no other token should be referencing it.
- * (num_refs == 1).
- */
- _SLfree_hashed_string (sa, lena, a->hash);
- a->v.s_val = sb;
- a->hash = hash;
-
- return 0;
-}
-
-static void append_identifier_token (_SLang_Token_Type *ctok)
-{
- _SLang_Token_Type *last_token;
-
- append_token (ctok);
-
- if (NAMESPACE_TOKEN != get_token (ctok))
- return;
-
- if (IDENT_TOKEN != get_token (ctok))
- {
- _SLparse_error ("Expecting name-space identifier", ctok, 0);
- return;
- }
-
- last_token = get_last_token ();
- if (-1 == combine_namespace_tokens (last_token, ctok))
- return;
-
- (void) get_token (ctok);
-}
-
-static int get_identifier_expr_token (_SLang_Token_Type *ctok)
-{
- _SLang_Token_Type next_token;
-
- if (IDENT_TOKEN != get_identifier_token (ctok))
- return -1;
-
- init_token (&next_token);
- if (NAMESPACE_TOKEN != get_token (&next_token))
- {
- unget_token (&next_token);
- return IDENT_TOKEN;
- }
-
- if (IDENT_TOKEN != get_identifier_token (&next_token))
- {
- free_token (&next_token);
- return -1;
- }
-
- if (-1 == combine_namespace_tokens (ctok, &next_token))
- {
- free_token (&next_token);
- return -1;
- }
- free_token (&next_token);
- return IDENT_TOKEN;
-}
-
-/* postfix-expression:
- * primary-expression
- * postfix-expression [ expression ]
- * postfix-expression ( function-args-expression )
- * postfix-expression . identifier
- * postfix-expression ^ unary-expression
- * postfix-expression ++
- * postfix-expression --
- * postfix-expression = simple-expression
- * postfix-expression += simple-expression
- * postfix-expression -= simple-expression
- *
- * primary-expression:
- * literal
- * identifier-expr
- * ( expression_opt )
- * [ inline-array-expression ]
- * &identifier-expr
- * struct-definition
- * __tmp(identifier-expr)
- *
- * identifier-expr:
- * identifier
- * identifier->identifier
- */
-static void postfix_expression (_SLang_Token_Type *ctok)
-{
- unsigned int start_pos, end_pos;
- unsigned char type;
-
- if (Token_List == NULL)
- return;
-
- start_pos = Token_List->len;
-
- switch (ctok->type)
- {
- case IDENT_TOKEN:
- append_identifier_token (ctok);
- break;
-
- case CHAR_TOKEN:
- case SHORT_TOKEN:
- case INT_TOKEN:
- case LONG_TOKEN:
- case UCHAR_TOKEN:
- case USHORT_TOKEN:
- case UINT_TOKEN:
- case ULONG_TOKEN:
- case STRING_TOKEN:
- case BSTRING_TOKEN:
-#ifdef SLANG_HAS_FLOAT
- case DOUBLE_TOKEN:
- case FLOAT_TOKEN:
-#endif
-#ifdef SLANG_HAS_COMPLEX
- case COMPLEX_TOKEN:
-#endif
- append_token (ctok);
- get_token (ctok);
- break;
-
- case OPAREN_TOKEN:
- if (CPAREN_TOKEN != get_token (ctok))
- {
- expression (ctok);
- if (ctok->type != CPAREN_TOKEN)
- _SLparse_error("Expecting )", ctok, 0);
- }
- get_token (ctok);
- break;
-
- case BAND_TOKEN:
- if (IDENT_TOKEN != get_identifier_expr_token (ctok))
- break;
-
- ctok->type = _REF_TOKEN;
- append_token (ctok);
- get_token (ctok);
- break;
-
- case OBRACKET_TOKEN:
- get_token (ctok);
- inline_array_expression (ctok);
- break;
-
- case NO_OP_LITERAL:
- /* This token was introduced by try_multiple_assignment. There,
- * a new token_list was pushed and (expression) was evaluated.
- * NO_OP_LITERAL represents the result of expression. However,
- * we need to tweak the start_pos variable to point to the beginning
- * of the token list to complete the equivalence.
- */
- start_pos = 0;
- get_token (ctok);
- break;
-
- case STRUCT_TOKEN:
- get_token (ctok);
- struct_declaration (ctok);
- break;
-
- case TMP_TOKEN:
- get_token (ctok);
- if (ctok->type == OPAREN_TOKEN)
- {
- if (IDENT_TOKEN == get_identifier_expr_token (ctok))
- {
- ctok->type = TMP_TOKEN;
- append_token (ctok);
- get_token (ctok);
- if (ctok->type == CPAREN_TOKEN)
- {
- get_token (ctok);
- break;
- }
- }
- }
- _SLparse_error ("Expecting form __tmp(NAME)", ctok, 0);
- break;
-
- default:
- if (IS_INTERNAL_FUNC(ctok->type))
- {
- append_token (ctok);
- get_token (ctok);
- }
- else
- _SLparse_error("Expecting a PRIMARY", ctok, 0);
- }
-
- while (SLang_Error == 0)
- {
- end_pos = Token_List->len;
- type = ctok->type;
- switch (type)
- {
- case OBRACKET_TOKEN: /* X[args] ==> [args] X ARRAY */
- get_token (ctok);
- append_token_of_type (ARG_TOKEN);
- if (ctok->type != CBRACKET_TOKEN)
- array_index_expression (ctok);
-
- if (ctok->type != CBRACKET_TOKEN)
- {
- _SLparse_error ("Expecting ']'", ctok, 0);
- return;
- }
- get_token (ctok);
- /* append_token_of_type (EARG_TOKEN); -- ARRAY_TOKEN implicitely does this */
- token_list_element_exchange (start_pos, end_pos);
- append_token_of_type (ARRAY_TOKEN);
- break;
-
- case OPAREN_TOKEN:
- /* f(args) ==> args f */
- if (CPAREN_TOKEN != get_token (ctok))
- {
- function_args_expression (ctok, 1);
- token_list_element_exchange (start_pos, end_pos);
- }
- else get_token (ctok);
- break;
-
- case DOT_TOKEN:
- /* S.a ==> "a" S DOT
- * This means that if S is X[b], then X[b].a ==> a b X ARRAY DOT
- * and f(a).X[b].c ==> "c" b "X" a f . ARRAY .
- * Also, f(a).X[b] = g(x); ==> x g b "X" a f .
- */
- if (IDENT_TOKEN != get_identifier_token (ctok))
- return;
-
- ctok->type = DOT_TOKEN;
- append_token (ctok);
- get_token (ctok);
- break;
-
- case PLUSPLUS_TOKEN:
- case MINUSMINUS_TOKEN:
- check_for_lvalue (type, NULL);
- get_token (ctok);
- break;
-
- case ASSIGN_TOKEN:
- case PLUSEQS_TOKEN:
- case MINUSEQS_TOKEN:
- case TIMESEQS_TOKEN:
- case DIVEQS_TOKEN:
- case BOREQS_TOKEN:
- case BANDEQS_TOKEN:
- check_for_lvalue (type, NULL);
- get_token (ctok);
- simple_expression (ctok);
- token_list_element_exchange (start_pos, end_pos);
- break;
-
- case POW_TOKEN:
- get_token (ctok);
- unary_expression (ctok);
- append_token_of_type (POW_TOKEN);
- break;
-
- default:
- return;
- }
- }
-}
-
-static void function_args_expression (_SLang_Token_Type *ctok, int handle_num_args)
-{
- unsigned char last_type, this_type;
-
- if (handle_num_args) append_token_of_type (ARG_TOKEN);
-
- last_type = COMMA_TOKEN;
-
- while (SLang_Error == 0)
- {
- this_type = ctok->type;
-
- switch (this_type)
- {
- case COMMA_TOKEN:
- if (last_type == COMMA_TOKEN)
- append_token_of_type (_NULL_TOKEN);
- get_token (ctok);
- break;
-
- case CPAREN_TOKEN:
- if (last_type == COMMA_TOKEN)
- append_token_of_type (_NULL_TOKEN);
- if (handle_num_args) append_token_of_type (EARG_TOKEN);
- get_token (ctok);
- return;
-
- default:
- simple_expression (ctok);
- if ((ctok->type != COMMA_TOKEN)
- && (ctok->type != CPAREN_TOKEN))
- {
- _SLparse_error ("Expecting ')'", ctok, 0);
- break;
- }
- }
- last_type = this_type;
- }
-}
-
-static int check_for_lvalue (unsigned char eqs_type, _SLang_Token_Type *ctok)
-{
- unsigned char type;
-
- if ((ctok == NULL)
- && (NULL == (ctok = get_last_token ())))
- return -1;
-
- type = ctok->type;
-
- eqs_type -= ASSIGN_TOKEN;
-
- if (type == IDENT_TOKEN)
- eqs_type += _SCALAR_ASSIGN_TOKEN;
- else if (type == ARRAY_TOKEN)
- eqs_type += _ARRAY_ASSIGN_TOKEN;
- else if (type == DOT_TOKEN)
- eqs_type += _STRUCT_ASSIGN_TOKEN;
- else
- {
- _SLparse_error ("Expecting LVALUE", ctok, 0);
- return -1;
- }
-
- ctok->type = eqs_type;
- return 0;
-}
-
-static void array_index_expression (_SLang_Token_Type *ctok)
-{
- unsigned int num_commas;
-
- num_commas = 0;
- while (1)
- {
- switch (ctok->type)
- {
- case COLON_TOKEN:
- if (num_commas)
- _SLparse_error ("Misplaced ':'", ctok, 0);
- return;
-
- case TIMES_TOKEN:
- append_token_of_type (_INLINE_WILDCARD_ARRAY_TOKEN);
- get_token (ctok);
- break;
-
- case COMMA_TOKEN:
- _SLparse_error ("Misplaced ','", ctok, 0);
- return;
-
- default:
- simple_expression (ctok);
- }
-
- if (ctok->type != COMMA_TOKEN)
- return;
- num_commas++;
- get_token (ctok);
- }
-}
-
-/* inline-array-expression:
- * array_index_expression
- * simple_expression : simple_expression
- * simple_expression : simple_expression : simple_expression
- */
-static void inline_array_expression (_SLang_Token_Type *ctok)
-{
- int num_colons = 0;
-
- append_token_of_type (ARG_TOKEN);
-
- if (ctok->type == COLON_TOKEN) /* [:...] */
- append_token_of_type (_NULL_TOKEN);
- else if (ctok->type != CBRACKET_TOKEN)
- array_index_expression (ctok);
-
- if (ctok->type == COLON_TOKEN)
- {
- num_colons++;
- if ((COLON_TOKEN == get_token (ctok))
- || (ctok->type == CBRACKET_TOKEN))
- append_token_of_type (_NULL_TOKEN);
- else
- simple_expression (ctok);
-
- if (ctok->type == COLON_TOKEN)
- {
- num_colons++;
- get_token (ctok);
- simple_expression (ctok);
- }
- }
-
- if (ctok->type != CBRACKET_TOKEN)
- {
- _SLparse_error ("Expecting ']'", ctok, 0);
- return;
- }
-
- /* append_token_of_type (EARG_TOKEN); */
- if (num_colons)
- append_token_of_type (_INLINE_IMPLICIT_ARRAY_TOKEN);
- else
- append_token_of_type (_INLINE_ARRAY_TOKEN);
- get_token (ctok);
-}
-
-static void do_multiple_assignment (_SLang_Token_Type *ctok)
-{
- _SLang_Token_Type *s;
- unsigned int i, k, len;
- unsigned char assign_type;
-
- assign_type = ctok->type;
-
- /* The LHS token list has already been pushed. Here we do the RHS
- * so push to another token list, process it, then come back to
- * LHS for assignment.
- */
- if (NULL == push_token_list ())
- return;
-
- get_token (ctok);
- expression (ctok);
- compile_token_list ();
-
- if (SLang_Error)
- return;
-
- /* Finally compile the LHS of the assignment expression
- * that has been saved.
- */
- s = Token_List->stack;
- len = Token_List->len;
-
- if (len == 0)
- {
- compile_token_of_type (POP_TOKEN);
- return;
- }
-
- while (len > 0)
- {
- /* List is of form:
- * a , b, c d e, f , g , , , h ,
- * The missing expressions will be replaced by a POP
- * ,,a
- */
-
- /* Start from back looking for a COMMA */
- k = len - 1;
- if (s[k].type == COMMA_TOKEN)
- {
- compile_token_of_type (POP_TOKEN);
- len = k;
- continue;
- }
-
- if (-1 == check_for_lvalue (assign_type, s + k))
- return;
-
- i = 0;
- while (1)
- {
- if (s[k].type == COMMA_TOKEN)
- {
- i = k + 1;
- break;
- }
-
- if (k == 0)
- break;
-
- k--;
- }
-
- while (i < len)
- {
- compile_token (s + i);
- i++;
- }
-
- len = k;
- }
-
- if (s[0].type == COMMA_TOKEN)
- compile_token_of_type (POP_TOKEN);
-}
-
diff --git a/mdk-stage1/slang/slpath.c b/mdk-stage1/slang/slpath.c
deleted file mode 100644
index 831bd34df..000000000
--- a/mdk-stage1/slang/slpath.c
+++ /dev/null
@@ -1,344 +0,0 @@
-/* Pathname and filename functions */
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#ifdef HAVE_IO_H
-# include <io.h>
-#endif
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <signal.h>
-#include <time.h>
-
-#include <errno.h>
-#include <string.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-/* In this file, all file names are assumed to be specified in the Unix
- * format, or in the native format.
- *
- * Aboout VMS:
- * VMS pathnames are a mess. In general, they look like
- * node::device:[dir.dir]file.ext;version
- * and I do not know of a well-defined Unix representation for them. So,
- * I am going to punt and encourage users to stick to the native
- * representation.
- */
-
-#if defined(IBMPC_SYSTEM)
-# define PATH_SEP '\\'
-# define DRIVE_SPECIFIER ':'
-# define SEARCH_PATH_DELIMITER ';'
-# define THIS_DIR_STRING "."
-#else
-# if defined(VMS)
-# define PATH_SEP ']'
-# define DRIVE_SPECIFIER ':'
-# define SEARCH_PATH_DELIMITER ' '
-# define THIS_DIR_STRING "[]" /* Is this correct?? */
-# else
-# define PATH_SEP '/'
-# define UNIX_PATHNAMES_OK
-# define SEARCH_PATH_DELIMITER ':'
-# define THIS_DIR_STRING "."
-# endif
-#endif
-
-#ifdef UNIX_PATHNAMES_OK
-# define IS_PATH_SEP(x) ((x) == PATH_SEP)
-#else
-# define IS_PATH_SEP(x) (((x) == PATH_SEP) || ((x) == '/'))
-#endif
-
-/* If file is /a/b/c/basename, this function returns a pointer to basename */
-char *SLpath_basename (char *file)
-{
- char *b;
-
- if (file == NULL) return NULL;
- b = file + strlen (file);
-
- while (b != file)
- {
- b--;
- if (IS_PATH_SEP(*b))
- return b + 1;
-#ifdef DRIVE_SPECIFIER
- if (*b == DRIVE_SPECIFIER)
- return b + 1;
-#endif
- }
-
- return b;
-}
-
-/* Returns a malloced string */
-char *SLpath_pathname_sans_extname (char *file)
-{
- char *b;
-
- file = SLmake_string (file);
- if (file == NULL)
- return NULL;
-
- b = file + strlen (file);
-
- while (b != file)
- {
- b--;
- if (*b == '.')
- {
- *b = 0;
- return file;
- }
- }
-
- return file;
-}
-
-/* If path looks like: A/B/C/D/whatever, it returns A/B/C/D as a malloced
- * string.
- */
-char *SLpath_dirname (char *file)
-{
- char *b;
-
- if (file == NULL) return NULL;
- b = file + strlen (file);
-
- while (b != file)
- {
- b--;
- if (IS_PATH_SEP(*b))
- {
- if (b == file) b++;
- break;
- }
-
-#ifdef DRIVE_SPECIFIER
- if (*b == DRIVE_SPECIFIER)
- {
- b++;
- break;
- }
-#endif
- }
-
- if (b == file)
- return SLmake_string (THIS_DIR_STRING);
-
- return SLmake_nstring (file, (unsigned int) (b - file));
-}
-
-/* Note: VMS filenames also contain version numbers. The caller will have
- * to deal with that.
- *
- * The extension includes the '.'. If no extension is present, "" is returned.
- */
-char *SLpath_extname (char *file)
-{
- char *b;
-
- if (NULL == (file = SLpath_basename (file)))
- return NULL;
-
- b = file + strlen (file);
- while (b != file)
- {
- b--;
- if (*b == '.')
- return b;
- }
-
- if (*b == '.')
- return b;
-
- /* Do not return a literal "" */
- return file + strlen (file);
-}
-
-#ifdef IBMPC_SYSTEM
-static void convert_slashes (char *f)
-{
- while (*f)
- {
- if (*f == '/') *f = PATH_SEP;
- f++;
- }
-}
-#endif
-
-int SLpath_is_absolute_path (char *name)
-{
-#ifdef UNIX_PATHNAMES_OK
- return (*name == '/');
-#else
- if (IS_PATH_SEP (*name))
- return 1;
-
-# ifdef DRIVE_SPECIFIER
- /* Look for a drive specifier */
- while (*name)
- {
- if (*name == DRIVE_SPECIFIER)
- return 1;
-
- name++;
- }
-# endif
-
- return 0;
-#endif
-}
-
-/* This returns a MALLOCED string */
-char *SLpath_dircat (char *dir, char *name)
-{
- unsigned int len, dirlen;
- char *file;
-#ifndef VMS
- int requires_fixup;
-#endif
-
- if (name == NULL)
- name = "";
-
- if ((dir == NULL) || (SLpath_is_absolute_path (name)))
- dir = "";
-
- /* Both VMS and MSDOS have default directories associated with each drive.
- * That is, the meaning of something like C:X depends upon more than just
- * the syntax of the string. Since this concept has more power under VMS
- * it will be honored here. However, I am going to treat C:X as C:\X
- * under MSDOS.
- *
- * Note!!!
- * VMS has problems of its own regarding path names, so I am simply
- * going to strcat. Hopefully the VMS RTL is smart enough to deal with
- * the result.
- */
- dirlen = strlen (dir);
-#ifndef VMS
- requires_fixup = (dirlen && (0 == IS_PATH_SEP(dir[dirlen - 1])));
-#endif
-
- len = dirlen + strlen (name) + 2;
- if (NULL == (file = SLmalloc (len)))
- return NULL;
-
- strcpy (file, dir);
-
-#ifndef VMS
- if (requires_fixup)
- file[dirlen++] = PATH_SEP;
-#endif
-
- strcpy (file + dirlen, name);
-
-#if defined(IBMPC_SYSTEM)
- convert_slashes (file);
-#endif
-
- return file;
-}
-
-int SLpath_file_exists (char *file)
-{
- struct stat st;
- int m;
-
-#if defined(__os2__) && !defined(S_IFMT)
-/* IBM VA3 doesn't declare S_IFMT */
-# define S_IFMT (S_IFDIR | S_IFCHR | S_IFREG)
-#endif
-
-#ifdef _S_IFDIR
-# ifndef S_IFDIR
-# define S_IFDIR _S_IFDIR
-# endif
-#endif
-
-#ifndef S_ISDIR
-# ifdef S_IFDIR
-# define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
-# else
-# define S_ISDIR(m) 0
-# endif
-#endif
-
- if (file == NULL)
- return -1;
-
- if (stat(file, &st) < 0) return 0;
- m = st.st_mode;
-
- if (S_ISDIR(m)) return (2);
- return 1;
-}
-
-char *SLpath_find_file_in_path (char *path, char *name)
-{
- unsigned int max_path_len;
- unsigned int this_path_len;
- char *file, *dir;
- char *p;
- unsigned int nth;
-
- if ((path == NULL) || (*path == 0)
- || (name == NULL) || (*name == 0))
- return NULL;
-
- max_path_len = 0;
- this_path_len = 0;
- p = path;
- while (*p != 0)
- {
- if (*p++ == SEARCH_PATH_DELIMITER)
- {
- if (this_path_len > max_path_len) max_path_len = this_path_len;
- this_path_len = 0;
- }
- else this_path_len++;
- }
- if (this_path_len > max_path_len) max_path_len = this_path_len;
- max_path_len++;
-
- if (NULL == (dir = SLmalloc (max_path_len)))
- return NULL;
-
- nth = 0;
- while (-1 != SLextract_list_element (path, nth, SEARCH_PATH_DELIMITER,
- dir, max_path_len))
- {
- nth++;
- if (*dir == 0)
- continue;
-
- if (NULL == (file = SLpath_dircat (dir, name)))
- {
- SLfree (dir);
- return NULL;
- }
-
- if (1 == SLpath_file_exists (file))
- {
- SLfree (dir);
- return file;
- }
-
- SLfree (file);
- }
-
- SLfree (dir);
- return NULL;
-}
-
diff --git a/mdk-stage1/slang/slposdir.c b/mdk-stage1/slang/slposdir.c
deleted file mode 100644
index 33799e574..000000000
--- a/mdk-stage1/slang/slposdir.c
+++ /dev/null
@@ -1,1057 +0,0 @@
-/* file intrinsics for S-Lang */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#if defined(__unix__) || (defined (__os2__) && defined (__EMX__))
-# include <sys/types.h>
-#endif
-
-#ifdef HAVE_IO_H
-# include <io.h> /* for chmod */
-#endif
-
-#if defined(__BORLANDC__)
-# include <process.h>
-# include <dos.h>
-#endif
-
-#ifdef HAVE_FCNTL_H
-# include <fcntl.h>
-#endif
-#ifdef HAVE_SYS_FCNTL_H
-# include <sys/fcntl.h>
-#endif
-
-#ifdef __unix__
-# include <sys/file.h>
-#endif
-
-#if defined(__BORLANDC__)
-# include <dir.h>
-#endif
-
-#if defined(_MSC_VER)
-# include <io.h>
-#endif
-
-#if defined(__DECC) && defined(VMS)
-# include <unixio.h>
-# include <unixlib.h>
-#endif
-
-#ifdef VMS
-# include <stat.h>
-#else
-# include <sys/stat.h>
-#endif
-
-#if defined(VMS)
-# define USE_LISTDIR_INTRINSIC 0
-#else
-# define USE_LISTDIR_INTRINSIC 1
-#endif
-
-#if USE_LISTDIR_INTRINSIC
-
-#if defined(__WIN32__)
-# include <windows.h>
-#else
-# if defined(__OS2__) && defined(__IBMC__)
-# define INCL_DOS
-# define INCL_ERRORS
-# include <os2.h>
-# include <direct.h>
-# include <ctype.h>
-# else
-# ifdef HAVE_DIRENT_H
-# include <dirent.h>
-# else
-# ifdef HAVE_DIRECT_H
-# include <direct.h>
-# else
-# define dirent direct
-# define NEED_D_NAMLEN
-# if HAVE_SYS_NDIR_H
-# include <sys/ndir.h>
-# endif
-# if HAVE_SYS_DIR_H
-# include <sys/dir.h>
-# endif
-# if HAVE_NDIR_H
-# include <ndir.h>
-# endif
-# endif
-# endif
-# endif
-#endif
-
-#endif /* USE_LISTDIR_INTRINSIC */
-
-#include <errno.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-static int push_stat_struct (struct stat *st, int opt_attrs)
-{
- char *field_names [12];
- unsigned char field_types[12];
- VOID_STAR field_values [12];
- int int_values [12];
- unsigned int i;
-
- field_names [0] = "st_dev"; int_values [0] = (int) st->st_dev;
- field_names [1] = "st_ino"; int_values [1] = (int) st->st_ino;
- field_names [2] = "st_mode"; int_values [2] = (int) st->st_mode;
- field_names [3] = "st_nlink"; int_values [3] = (int) st->st_nlink;
- field_names [4] = "st_uid"; int_values [4] = (int) st->st_uid;
- field_names [5] = "st_gid"; int_values [5] = (int) st->st_gid;
- field_names [6] = "st_rdev"; int_values [6] = (int) st->st_rdev;
- field_names [7] = "st_size"; int_values [7] = (int) st->st_size;
- field_names [8] = "st_atime"; int_values [8] = (int) st->st_atime;
- field_names [9] = "st_mtime"; int_values [9] = (int) st->st_mtime;
- field_names [10] = "st_ctime"; int_values [10] = (int) st->st_ctime;
-
- field_names [11] = "st_opt_attrs"; int_values[11] = opt_attrs;
-
- for (i = 0; i < 12; i++)
- {
- field_types [i] = SLANG_INT_TYPE;
- field_values [i] = (VOID_STAR) (int_values + i);
- }
-
- return SLstruct_create_struct (12, field_names, field_types, field_values);
-}
-
-static void stat_cmd (char *file)
-{
- struct stat st;
- int status;
- int opt_attrs;
-
- status = stat (file, &st);
-
-#if defined(__MSDOS__) || defined(__WIN32__)
- if (status == -1)
- {
- unsigned int len = strlen (file);
- if (len && ((file[len-1] == '\\') || (file[len-1] == '/')))
- {
- file = SLmake_nstring (file, len-1);
- if (file == NULL)
- return;
-
- status = stat (file, &st);
- SLfree (file);
- }
- }
-#endif
- if (status == -1)
- {
- _SLerrno_errno = errno;
- SLang_push_null ();
- return;
- }
-
-#ifdef __WIN32__
- opt_attrs = GetFileAttributes (file);
-#else
- opt_attrs = 0;
-#endif
-
- push_stat_struct (&st, opt_attrs);
-}
-
-static void lstat_cmd (char *file)
-{
-#ifdef HAVE_LSTAT
- struct stat st;
- int opt_attrs;
-
- if (-1 == lstat (file, &st))
- {
- _SLerrno_errno = errno;
- SLang_push_null ();
- return;
- }
-
-#ifdef __WIN32__
- opt_attrs = GetFileAttributes (file);
-#else
- opt_attrs = 0;
-#endif
-
- push_stat_struct (&st, opt_attrs);
-#else
- stat_cmd (file);
-#endif
-}
-
-/* Well, it appears that on some systems, these are not defined. Here I
- * provide them. These are derived from the Linux stat.h file.
- */
-
-#ifdef __os2__
-# ifdef __IBMC__
-/* IBM VA3 doesn't declare S_IFMT */
-# define S_IFMT (S_IFDIR | S_IFCHR | S_IFREG)
-# endif
-#endif
-
-#ifndef S_ISLNK
-# ifdef S_IFLNK
-# define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
-# else
-# define S_ISLNK(m) 0
-# endif
-#endif
-
-#ifndef S_ISREG
-# ifdef S_IFREG
-# define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
-# else
-# define S_ISREG(m) 0
-# endif
-#endif
-
-#ifndef S_ISDIR
-# ifdef S_IFDIR
-# define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
-# else
-# define S_ISDIR(m) 0
-# endif
-#endif
-
-#ifndef S_ISCHR
-# ifdef S_IFCHR
-# define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
-# else
-# define S_ISCHR(m) 0
-# endif
-#endif
-
-#ifndef S_ISBLK
-# ifdef S_IFBLK
-# define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK)
-# else
-# define S_ISBLK(m) 0
-# endif
-#endif
-
-#ifndef S_ISFIFO
-# ifdef S_IFIFO
-# define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO)
-# else
-# define S_ISFIFO(m) 0
-# endif
-#endif
-
-#ifndef S_ISSOCK
-# ifdef S_IFSOCK
-# define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK)
-# else
-# define S_ISSOCK(m) 0
-# endif
-#endif
-
-static char stat_is_cmd (char *what, int *mode_ptr)
-{
- int ret;
- int st_mode = *mode_ptr;
-
- if (!strcmp (what, "sock")) ret = S_ISSOCK(st_mode);
- else if (!strcmp (what, "fifo")) ret = S_ISFIFO(st_mode);
- else if (!strcmp (what, "blk")) ret = S_ISBLK(st_mode);
- else if (!strcmp (what, "chr")) ret = S_ISCHR(st_mode);
- else if (!strcmp (what, "dir")) ret = S_ISDIR(st_mode);
- else if (!strcmp (what, "reg")) ret = S_ISREG(st_mode);
- else if (!strcmp (what, "lnk")) ret = S_ISLNK(st_mode);
- else
- {
- SLang_verror (SL_INVALID_PARM, "stat_is: Unrecognized type: %s", what);
- return -1;
- }
-
- return (char) (ret != 0);
-}
-
-#ifdef HAVE_READLINK
-static void readlink_cmd (char *s)
-{
- char buf[2048];
- int n;
-
- n = readlink (s, buf, sizeof (buf)-1);
- if (n == -1)
- {
- _SLerrno_errno = errno;
- s = NULL;
- }
- else
- {
- buf[n] = 0;
- s = buf;
- }
-
- (void) SLang_push_string (s);
-}
-#endif
-
-static int chmod_cmd (char *file, int *mode)
-{
- if (-1 == chmod(file, (mode_t) *mode))
- {
- _SLerrno_errno = errno;
- return -1;
- }
- return 0;
-}
-
-#ifdef HAVE_CHOWN
-static int chown_cmd (char *file, int *owner, int *group)
-{
- int ret;
-
- if (-1 == (ret = chown(file, (uid_t) *owner, (gid_t) *group)))
- _SLerrno_errno = errno;
- return ret;
-}
-#endif
-
-/* add trailing slash to dir */
-static void fixup_dir (char *dir)
-{
-#ifndef VMS
- int n;
-
- if ((n = strlen(dir)) > 1)
- {
- n--;
-#if defined(IBMPC_SYSTEM)
- if ( dir[n] != '/' && dir[n] != '\\' )
- strcat(dir, "\\" );
-#else
- if (dir[n] != '/' )
- strcat(dir, "/" );
-#endif
- }
-#endif /* !VMS */
-}
-
-static void slget_cwd (void)
-{
- char cwd[1024];
- char *p;
-
-#ifndef HAVE_GETCWD
- p = getwd (cwd);
-#else
-# if defined (__EMX__)
- p = _getcwd2(cwd, 1022); /* includes drive specifier */
-# else
- p = getcwd(cwd, 1022); /* djggp includes drive specifier */
-# endif
-#endif
-
- if (p == NULL)
- {
- _SLerrno_errno = errno;
- SLang_push_null ();
- return;
- }
-
-#ifndef VMS
-#ifdef __GO32__
- /* You never know about djgpp since it favors unix */
- {
- char ch;
- p = cwd;
- while ((ch = *p) != 0)
- {
- if (ch == '/') *p = '\\';
- p++;
- }
- }
-#endif
- fixup_dir (cwd);
-#endif
- SLang_push_string (cwd);
-}
-
-static int chdir_cmd (char *s)
-{
- int ret;
-
- while (-1 == (ret = chdir (s)))
- {
-#ifdef EINTR
- if (errno == EINTR)
- continue;
-#endif
- _SLerrno_errno = errno;
- break;
- }
- return ret;
-}
-
-#ifdef VMS
-static int remove_cmd (char *);
-/* If the file looks like xxx, then change it to xxx.dir. If
- * it looks like A:[B.xxx] then change it to A:[B]xxx.dir.
- */
-
-static char *vms_convert_dirspec_to_vms_dir (char *str)
-{
- char *s;
- char *version;
- unsigned int len;
- char *dot;
-
- len = strlen (str);
-
- version = strchr (str, ';');
- if (version == NULL)
- version = str + len;
- /* version points to the version of the input string */
-
-
- if (NULL == (s = SLmalloc (len + 8)))/* allow extra space to work with */
- return NULL;
-
- len = (unsigned int) (version - str);
- strncpy (s, str, len);
- s[len] = 0;
- str = s;
-
- /* Lowercase the whole thing */
- while (*s != 0)
- {
- *s = LOWER_CASE(*s);
- s++;
- }
-
- if ((s > str)
- && (s[-1] != ']'))
- {
- if ((s >= str + 4)
- && (0 == strcmp (s - 4, ".dir")))
- s -= 4;
- goto add_dir_version;
- }
-
- /* Check for one of two possibilities:
- *
- * dev:[x] --> dev:x
- * dev:[a.x] --> dev:[a]x
- */
-
- if (NULL == (dot = strchr (str, '.')))
- {
- /* First possibility */
- if (NULL == (s = strchr (str, '[')))
- return str; /* let someone else figure this out */
- while (s[1] != ']')
- {
- s[0] = s[1];
- s++;
- }
- *s = 0;
- goto add_dir_version;
- }
-
- while (NULL != (s = strchr (dot + 1, '.')))
- dot = s;
-
- *dot = ']';
- s = str + (len - 1);
-
- /* Drop */
-
- add_dir_version:
- strcpy (s, ".dir");
- strcpy (s+4, version);
- return str;
-}
-#endif
-
-static int rmdir_cmd (char *s)
-{
-#ifdef VMS
- int status;
-
- if (NULL == (s = vms_convert_dirspec_to_vms_dir (s)))
- return -1;
-
- status = remove_cmd (s);
- SLfree (s);
-
- return status;
-
-#else
- int ret;
-
- while (-1 == (ret = rmdir (s)))
- {
-#ifdef EINTR
- if (errno == EINTR)
- continue;
-#endif
- _SLerrno_errno = errno;
- break;
- }
- return ret;
-#endif
-}
-
-static int remove_cmd (char *s)
-{
- int ret;
-#ifdef VMS
-# define REMOVE delete
-#else
-# ifdef REAL_UNIX_SYSTEM
-# define REMOVE unlink
-# else
-# define REMOVE remove
-# endif
-#endif
-
- while (-1 == (ret = REMOVE (s)))
- {
-#ifdef EINTR
- if (errno == EINTR)
- continue;
-#endif
- _SLerrno_errno = errno;
- break;
- }
- return ret;
-}
-
-static int rename_cmd (char *oldpath, char *newpath)
-{
- int ret;
- while (-1 == (ret = rename (oldpath, newpath)))
- {
-#ifdef EINTR
- if (errno == EINTR)
- continue;
-#endif
- _SLerrno_errno = errno;
- break;
- }
- return ret;
-}
-
-static int mkdir_cmd (char *s, int *mode_ptr)
-{
- int ret;
-
- (void) mode_ptr;
- errno = 0;
-
-#if defined (__MSDOS__) && !defined(__GO32__)
-# define MKDIR(x,y) mkdir(x)
-#else
-# if defined (__os2__) && !defined (__EMX__)
-# define MKDIR(x,y) mkdir(x)
-# else
-# if defined (__WIN32__) && !defined (__CYGWIN32__)
-# define MKDIR(x,y) mkdir(x)
-# else
-# define MKDIR mkdir
-# endif
-# endif
-#endif
-
- while (-1 == (ret = MKDIR(s, *mode_ptr)))
- {
-#ifdef EINTR
- if (errno == EINTR)
- continue;
-#endif
- _SLerrno_errno = errno;
- break;
- }
- return ret;
-}
-
-#ifdef HAVE_MKFIFO
-static int mkfifo_cmd (char *path, int *mode)
-{
- if (-1 == mkfifo (path, *mode))
- {
- _SLerrno_errno = errno;
- return -1;
- }
- return 0;
-}
-#endif
-
-#if USE_LISTDIR_INTRINSIC
-
-static void free_dir_list (char **list, unsigned int num)
-{
- unsigned int i;
-
- if (list == NULL)
- return;
-
- for (i = 0; i < num; i++)
- SLang_free_slstring (list[i]);
- SLfree ((char *) list);
-}
-
-#if defined(__WIN32__) || defined(__os2__) && defined(__IBMC__)
-static int build_dirlist (char *file, char *opt, char ***listp, unsigned int *nump, unsigned int *maxnum)
-{
-# ifdef __WIN32__
- DWORD status;
- HANDLE h;
- WIN32_FIND_DATA fd;
-# else
- APIRET rc;
- FILESTATUS3 status;
- HDIR h;
- FILEFINDBUF3 fd;
- ULONG cFileNames;
-# endif
- char *pat;
- unsigned int len;
- char **list;
- unsigned int num;
- unsigned int max_num;
- int hok;
-
- /* If an option is present, assume ok to list hidden files. Later
- * I will formalize this.
- */
- hok = (opt != NULL);
-
-# ifdef __WIN32__
- status = GetFileAttributes (file);
-# else
- rc = DosQueryPathInfo(file, FIL_STANDARD, &status, sizeof(FILESTATUS3));
-# endif
-
-
-# ifdef __WIN32__
- if (status == (DWORD)-1)
- {
- _SLerrno_errno = ENOENT;
- return -1;
- }
- if (0 == (status & FILE_ATTRIBUTE_DIRECTORY))
- {
- _SLerrno_errno = ENOTDIR;
- return -1;
- }
-# else
- if ((rc != 0) || (status.attrFile & FILE_DIRECTORY) == 0)
- {
- /* ENOTDIR isn't defined in VA3. */
- _SLerrno_errno = ENOENT;
- return -1;
- }
-# endif
-
- len = strlen (file);
- pat = SLmalloc (len + 3);
- if (pat == NULL)
- return -1;
-
- strcpy (pat, file);
- file = pat;
- while (*file != 0)
- {
- if (*file == '/') *file = '\\';
- file++;
- }
-
- if (len && (pat[len-1] != '\\'))
- {
- pat[len] = '\\';
- len++;
- }
- pat[len++] = '*';
- pat[len] = 0;
-
- num = 0;
- max_num = 50;
- list = (char **)SLmalloc (max_num * sizeof(char *));
- if (list == NULL)
- {
- SLfree (pat);
- return -1;
- }
-
-# ifdef __WIN32__
- h = FindFirstFile(pat, &fd);
- if (h == INVALID_HANDLE_VALUE)
- {
- if (ERROR_NO_MORE_FILES != GetLastError())
- {
- SLfree (pat);
- SLfree ((char *)list);
- return -1;
- }
- }
-# else
- h = HDIR_CREATE;
- cFileNames = 1;
- rc = DosFindFirst(pat, &h, FILE_READONLY | FILE_DIRECTORY |
- FILE_ARCHIVED, &fd, sizeof(fd), &cFileNames, FIL_STANDARD);
- if (rc != 0)
- {
- if (rc != ERROR_NO_MORE_FILES)
- {
- SLfree (pat);
- SLfree ((char *)list);
- return -1;
- }
- }
-# endif
- else while (1)
- {
- /* Do not include hidden files in the list. Also, do not
- * include "." and ".." entries.
- */
-#ifdef __WIN32__
- file = fd.cFileName;
-#else
- file = fd.achName;
-#endif
- if (
-#ifdef __WIN32__
- (hok || (0 == (fd.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN)))
-#else
- (hok || (0 == (fd.attrFile & FILE_HIDDEN)))
-#endif
- && ((*file != '.')
- || ((0 != strcmp (file, "."))
- && (0 != strcmp (file, "..")))))
- {
- if (num == max_num)
- {
- char **new_list;
-
- max_num += 100;
- new_list = (char **)SLrealloc ((char *)list, max_num * sizeof (char *));
- if (new_list == NULL)
- goto return_error;
-
- list = new_list;
- }
-
- file = SLang_create_slstring (file);
- if (file == NULL)
- goto return_error;
-
- list[num] = file;
- num++;
- }
-
-#ifdef __WIN32__
- if (FALSE == FindNextFile(h, &fd))
- {
- if (ERROR_NO_MORE_FILES == GetLastError())
- {
- FindClose (h);
- break;
- }
-
- _SLerrno_errno = errno;
- FindClose (h);
- goto return_error;
- }
-#else
- cFileNames = 1;
- rc = DosFindNext(h, &fd, sizeof(fd), &cFileNames);
- if (rc != 0)
- {
- if (rc == ERROR_NO_MORE_FILES)
- {
- DosFindClose (h);
- break;
- }
-
- _SLerrno_errno = errno;
- DosFindClose (h);
- goto return_error;
- }
-#endif
- }
-
- SLfree (pat);
- *maxnum = max_num;
- *nump = num;
- *listp = list;
- return 0;
-
- return_error:
- free_dir_list (list, num);
- SLfree (pat);
- return -1;
-}
-
-#else /* NOT __WIN32__ */
-
-static int build_dirlist (char *dir, char *opt, char ***listp, unsigned int *nump, unsigned int *maxnum)
-{
- DIR *dp;
- struct dirent *ep;
- unsigned int num_files;
- unsigned int max_num_files;
- char **list;
-
- (void) opt;
-
- if (NULL == (dp = opendir (dir)))
- {
- _SLerrno_errno = errno;
- return -1;
- }
-
- num_files = max_num_files = 0;
- list = NULL;
- while (NULL != (ep = readdir (dp)))
- {
- unsigned int len;
- char *name;
-
- name = ep->d_name;
-# ifdef NEED_D_NAMLEN
- len = ep->d_namlen;
-# else
- len = strlen (name);
-# endif
- if ((*name == '.') && (len <= 2))
- {
- if (len == 1) continue;
- if (name [1] == '.') continue;
- }
-
- if (num_files == max_num_files)
- {
- char **new_list;
-
- max_num_files += 100;
- if (NULL == (new_list = (char **) SLrealloc ((char *)list, max_num_files * sizeof(char *))))
- goto return_error;
-
- list = new_list;
- }
-
- if (NULL == (list[num_files] = SLang_create_nslstring (name, len)))
- goto return_error;
-
- num_files++;
- }
-
- closedir (dp);
- *nump = num_files;
- *maxnum = max_num_files;
- *listp = list;
- return 0;
-
- return_error:
- if (dp != NULL)
- closedir (dp);
- free_dir_list (list, num_files);
- return -1;
-}
-# endif /* NOT __WIN32__ */
-
-static void listdir_cmd (char *dir, char *opt)
-{
- SLang_Array_Type *at;
- unsigned int num_files;
- unsigned int max_num_files;
- int inum_files;
- char **list;
-
- if (-1 == build_dirlist (dir, opt, &list, &num_files, &max_num_files))
- {
- SLang_push_null ();
- return;
- }
- /* If max_num_files == 0, then num_files == 0 and list == NULL.
- * The realloc step below will malloc list for us.
- */
- if (num_files + 1 < max_num_files)
- {
- char **new_list;
- if (NULL == (new_list = (char **) SLrealloc ((char *)list, (num_files + 1)* sizeof(char*))))
- {
- free_dir_list (list, num_files);
- SLang_push_null ();
- return;
- }
- list = new_list;
- }
-
- inum_files = (int) num_files;
- if (NULL == (at = SLang_create_array (SLANG_STRING_TYPE, 0, (VOID_STAR) list, &inum_files, 1)))
- {
- free_dir_list (list, num_files);
- SLang_push_null ();
- return;
- }
-
- /* Allow the array to free this list if push fails */
- if (-1 == SLang_push_array (at, 1))
- SLang_push_null ();
-}
-
-static void listdir_cmd_wrap (void)
-{
- char *s, *sopt;
-
- sopt = NULL;
- switch (SLang_Num_Function_Args)
- {
- case 2:
- if (-1 == SLang_pop_slstring (&sopt))
- return;
- case 1:
- if (-1 == SLang_pop_slstring (&s))
- {
- SLang_free_slstring (sopt);
- return;
- }
- break;
- default:
- SLang_verror (SL_INVALID_PARM, "usage: listdir (string, [opt-string]");
- return;
- }
-
- listdir_cmd (s, sopt);
- SLang_free_slstring (s);
- SLang_free_slstring (sopt);
-}
-
-#endif /* USE_LISTDIR_INTRINSIC */
-
-#ifdef HAVE_UMASK
-static int umask_cmd (int *u)
-{
- return umask (*u);
-}
-#endif
-
-static SLang_Intrin_Fun_Type PosixDir_Name_Table [] =
-{
-#ifdef HAVE_READLINK
- MAKE_INTRINSIC_S("readlink", readlink_cmd, SLANG_VOID_TYPE),
-#endif
- MAKE_INTRINSIC_S("lstat_file", lstat_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("stat_file", stat_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SI("stat_is", stat_is_cmd, SLANG_CHAR_TYPE),
-#ifdef HAVE_MKFIFO
- MAKE_INTRINSIC_SI("mkfifo", mkfifo_cmd, SLANG_INT_TYPE),
-#endif
-#ifdef HAVE_CHOWN
- MAKE_INTRINSIC_SII("chown", chown_cmd, SLANG_INT_TYPE),
-#endif
- MAKE_INTRINSIC_SI("chmod", chmod_cmd, SLANG_INT_TYPE),
-#ifdef HAVE_UMASK
- MAKE_INTRINSIC_I("umask", umask_cmd, SLANG_INT_TYPE),
-#endif
- MAKE_INTRINSIC_0("getcwd", slget_cwd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SI("mkdir", mkdir_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_S("chdir", chdir_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_S("rmdir", rmdir_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_S("remove", remove_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_SS("rename", rename_cmd, SLANG_INT_TYPE),
-#if USE_LISTDIR_INTRINSIC
- MAKE_INTRINSIC("listdir", listdir_cmd_wrap, SLANG_VOID_TYPE, 0),
-#endif
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-static SLang_IConstant_Type PosixDir_Consts [] =
-{
-#ifndef S_IRWXU
-# define S_IRWXU 00700
-#endif
- MAKE_ICONSTANT("S_IRWXU", S_IRWXU),
-#ifndef S_IRUSR
-# define S_IRUSR 00400
-#endif
- MAKE_ICONSTANT("S_IRUSR", S_IRUSR),
-#ifndef S_IWUSR
-# define S_IWUSR 00200
-#endif
- MAKE_ICONSTANT("S_IWUSR", S_IWUSR),
-#ifndef S_IXUSR
-# define S_IXUSR 00100
-#endif
- MAKE_ICONSTANT("S_IXUSR", S_IXUSR),
-#ifndef S_IRWXG
-# define S_IRWXG 00070
-#endif
- MAKE_ICONSTANT("S_IRWXG", S_IRWXG),
-#ifndef S_IRGRP
-# define S_IRGRP 00040
-#endif
- MAKE_ICONSTANT("S_IRGRP", S_IRGRP),
-#ifndef S_IWGRP
-# define S_IWGRP 00020
-#endif
- MAKE_ICONSTANT("S_IWGRP", S_IWGRP),
-#ifndef S_IXGRP
-# define S_IXGRP 00010
-#endif
- MAKE_ICONSTANT("S_IXGRP", S_IXGRP),
-#ifndef S_IRWXO
-# define S_IRWXO 00007
-#endif
- MAKE_ICONSTANT("S_IRWXO", S_IRWXO),
-#ifndef S_IROTH
-# define S_IROTH 00004
-#endif
- MAKE_ICONSTANT("S_IROTH", S_IROTH),
-#ifndef S_IWOTH
-# define S_IWOTH 00002
-#endif
- MAKE_ICONSTANT("S_IWOTH", S_IWOTH),
-#ifndef S_IXOTH
-# define S_IXOTH 00001
-#endif
- MAKE_ICONSTANT("S_IXOTH", S_IXOTH),
-#ifdef __WIN32__
- MAKE_ICONSTANT("FILE_ATTRIBUTE_ARCHIVE", FILE_ATTRIBUTE_ARCHIVE),
- MAKE_ICONSTANT("FILE_ATTRIBUTE_COMPRESSED", FILE_ATTRIBUTE_COMPRESSED),
- MAKE_ICONSTANT("FILE_ATTRIBUTE_NORMAL", FILE_ATTRIBUTE_NORMAL),
- MAKE_ICONSTANT("FILE_ATTRIBUTE_DIRECTORY", FILE_ATTRIBUTE_DIRECTORY),
- MAKE_ICONSTANT("FILE_ATTRIBUTE_HIDDEN", FILE_ATTRIBUTE_HIDDEN),
- MAKE_ICONSTANT("FILE_ATTRIBUTE_READONLY", FILE_ATTRIBUTE_READONLY),
- MAKE_ICONSTANT("FILE_ATTRIBUTE_SYSTEM", FILE_ATTRIBUTE_SYSTEM),
- MAKE_ICONSTANT("FILE_ATTRIBUTE_TEMPORARY", FILE_ATTRIBUTE_TEMPORARY),
-#endif
- SLANG_END_ICONST_TABLE
-};
-
-static int Initialized;
-
-int SLang_init_posix_dir (void)
-{
- if (Initialized)
- return 0;
-
- if ((-1 == SLadd_intrin_fun_table(PosixDir_Name_Table, "__POSIX_DIR__"))
- || (-1 == SLadd_iconstant_table (PosixDir_Consts, NULL))
- || (-1 == _SLerrno_init ()))
- return -1;
-
- Initialized = 1;
-
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slposio.c b/mdk-stage1/slang/slposio.c
deleted file mode 100644
index ab1e9f689..000000000
--- a/mdk-stage1/slang/slposio.c
+++ /dev/null
@@ -1,568 +0,0 @@
-/* This module implements an interface to posix system calls */
-/* file stdio intrinsics for S-Lang */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#if defined(__unix__) || (defined (__os2__) && defined (__EMX__))
-# include <sys/types.h>
-#endif
-
-#ifdef HAVE_FCNTL_H
-# include <fcntl.h>
-#endif
-#ifdef HAVE_SYS_FCNTL_H
-# include <sys/fcntl.h>
-#endif
-
-#ifdef __unix__
-# include <sys/file.h>
-#endif
-
-#ifdef HAVE_IO_H
-# include <io.h>
-#endif
-
-#if defined(__BORLANDC__)
-# include <dir.h>
-#endif
-
-#if defined(__DECC) && defined(VMS)
-# include <unixio.h>
-# include <unixlib.h>
-#endif
-
-#ifdef VMS
-# include <stat.h>
-#else
-# include <sys/stat.h>
-#endif
-
-#include <errno.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-struct _SLFile_FD_Type
-{
- char *name;
- unsigned int num_refs; /* reference counting */
- int fd;
- SLang_MMT_Type *stdio_mmt; /* fdopen'd stdio object */
-
- /* methods */
- int (*close)(int);
- int (*read) (int, char *, unsigned int *);
- int (*write)(int, char *, unsigned int *);
-};
-
-static int close_method (int fd)
-{
- return close (fd);
-}
-
-static int write_method (int fd, char *buf, unsigned int *nump)
-{
- int num;
-
- if (-1 == (num = write (fd, buf, *nump)))
- {
- *nump = 0;
- return -1;
- }
-
- *nump = (unsigned int) num;
- return 0;
-}
-
-static int read_method (int fd, char *buf, unsigned int *nump)
-{
- int num;
-
- num = read (fd, buf, *nump);
- if (num == -1)
- {
- *nump = 0;
- return -1;
- }
- *nump = (unsigned int) num;
- return 0;
-}
-
-static int check_fd (int fd)
-{
- if (fd == -1)
- {
-#ifdef EBADF
- _SLerrno_errno = EBADF;
-#endif
- return -1;
- }
-
- return 0;
-}
-
-static int posix_close (SLFile_FD_Type *f)
-{
- if (-1 == check_fd (f->fd))
- return -1;
-
- if ((f->close != NULL)
- && (-1 == f->close (f->fd)))
- {
- _SLerrno_errno = errno;
- return -1;
- }
-
- if (f->stdio_mmt != NULL)
- {
- SLang_free_mmt (f->stdio_mmt);
- f->stdio_mmt = NULL;
- }
-
- f->fd = -1;
- return 0;
-}
-
-/* Usage: Uint write (f, buf); */
-static void posix_write (SLFile_FD_Type *f, SLang_BString_Type *bstr)
-{
- unsigned int len;
- char *p;
-
- if ((-1 == check_fd (f->fd))
- || (NULL == (p = (char *)SLbstring_get_pointer (bstr, &len))))
- {
- SLang_push_integer (-1);
- return;
- }
-
- if (-1 == f->write (f->fd, p, &len))
- {
- _SLerrno_errno = errno;
- SLang_push_integer (-1);
- return;
- }
-
- (void) SLang_push_uinteger (len);
-}
-
-/* Usage: nn = read (f, &buf, n); */
-static void posix_read (SLFile_FD_Type *f, SLang_Ref_Type *ref, unsigned int *nbytes)
-{
- unsigned int len;
- char *b;
- SLang_BString_Type *bstr;
-
- b = NULL;
-
- len = *nbytes;
- if ((-1 == check_fd (f->fd))
- || (NULL == (b = SLmalloc (len + 1))))
- goto return_error;
-
- if (-1 == f->read (f->fd, b, &len))
- {
- _SLerrno_errno = errno;
- goto return_error;
- }
-
- if (len != *nbytes)
- {
- char *b1 = SLrealloc (b, len + 1);
- if (b1 == NULL)
- goto return_error;
- b = b1;
- }
-
- bstr = SLbstring_create_malloced ((unsigned char *) b, len, 0);
- if (bstr != NULL)
- {
- if ((-1 != SLang_assign_to_ref (ref, SLANG_BSTRING_TYPE, (VOID_STAR)&bstr))
- && (-1 != SLang_push_uinteger (len)))
- return;
-
- SLbstring_free (bstr);
- b = NULL;
- /* drop */
- }
-
- return_error:
- if (b != NULL) SLfree ((char *)b);
- (void) SLang_assign_to_ref (ref, SLANG_NULL_TYPE, NULL);
- (void) SLang_push_integer (-1);
-}
-
-SLFile_FD_Type *SLfile_create_fd (char *name, int fd)
-{
- SLFile_FD_Type *f;
-
- if (NULL == (f = (SLFile_FD_Type *) SLmalloc (sizeof (SLFile_FD_Type))))
- return NULL;
-
- memset ((char *) f, 0, sizeof (SLFile_FD_Type));
- if (NULL == (f->name = SLang_create_slstring (name)))
- {
- SLfree ((char *)f);
- return NULL;
- }
-
- f->fd = fd;
- f->num_refs = 1;
-
- f->close = close_method;
- f->read = read_method;
- f->write = write_method;
-
- return f;
-}
-
-SLFile_FD_Type *SLfile_dup_fd (SLFile_FD_Type *f0)
-{
- SLFile_FD_Type *f;
- int fd0, fd;
-
- if (f0 == NULL)
- return NULL;
- fd0 = f0->fd;
- if (-1 == check_fd (fd0))
- return NULL;
-
- while (-1 == (fd = dup (fd0)))
- {
-#ifdef EINTR
- if (errno == EINTR)
- continue;
-#endif
- _SLerrno_errno = errno;
- return NULL;
- }
-
- if (NULL == (f = SLfile_create_fd (f0->name, fd)))
- {
- f0->close (fd);
- return NULL;
- }
-
- return f;
-}
-
-int SLfile_get_fd (SLFile_FD_Type *f, int *fd)
-{
- if (f == NULL)
- return -1;
-
- *fd = f->fd;
- if (-1 == check_fd (*fd))
- return -1;
-
- return 0;
-}
-
-void SLfile_free_fd (SLFile_FD_Type *f)
-{
- if (f == NULL)
- return;
-
- if (f->num_refs > 1)
- {
- f->num_refs -= 1;
- return;
- }
-
- if (f->fd != -1)
- {
- if (f->close != NULL)
- (void) f->close (f->fd);
-
- f->fd = -1;
- }
-
- if (f->stdio_mmt != NULL)
- SLang_free_mmt (f->stdio_mmt);
-
- SLfree ((char *) f);
-}
-
-static int pop_string_int (char **s, int *i)
-{
- *s = NULL;
- if ((-1 == SLang_pop_integer (i))
- || (-1 == SLang_pop_slstring (s)))
- return -1;
-
- return 0;
-}
-
-static int pop_string_int_int (char **s, int *a, int *b)
-{
- *s = NULL;
- if ((-1 == SLang_pop_integer (b))
- || (-1 == pop_string_int (s, a)))
- return -1;
-
- return 0;
-}
-
-static void posix_open (void)
-{
- char *file;
- int mode, flags;
- SLFile_FD_Type *f;
-
- switch (SLang_Num_Function_Args)
- {
- case 3:
- if (-1 == pop_string_int_int (&file, &flags, &mode))
- {
- SLang_push_null ();
- return;
- }
- break;
-
- case 2:
- default:
- if (-1 == pop_string_int (&file, &flags))
- return;
- mode = 0777;
- break;
- }
-
- f = SLfile_create_fd (file, -1);
- if (f == NULL)
- {
- SLang_free_slstring (file);
- SLang_push_null ();
- return;
- }
- SLang_free_slstring (file);
-
- if (-1 == (f->fd = open (f->name, flags, mode)))
- {
- _SLerrno_errno = errno;
- SLfile_free_fd (f);
- SLang_push_null ();
- return;
- }
-
- if (-1 == SLfile_push_fd (f))
- SLang_push_null ();
- SLfile_free_fd (f);
-}
-
-static void posix_fileno (void)
-{
- FILE *fp;
- SLang_MMT_Type *mmt;
- int fd;
- SLFile_FD_Type *f;
- char *name;
-
- if (-1 == SLang_pop_fileptr (&mmt, &fp))
- {
- SLang_push_null ();
- return;
- }
- name = SLang_get_name_from_fileptr (mmt);
- fd = fileno (fp);
-
- f = SLfile_create_fd (name, fd);
- if (f != NULL)
- f->close = NULL; /* prevent fd from being closed
- * when it goes out of scope
- */
- SLang_free_mmt (mmt);
-
- if (-1 == SLfile_push_fd (f))
- SLang_push_null ();
- SLfile_free_fd (f);
-}
-
-static void posix_fdopen (SLFile_FD_Type *f, char *mode)
-{
- if (f->stdio_mmt == NULL)
- {
- if (-1 == _SLstdio_fdopen (f->name, f->fd, mode))
- return;
-
- if (NULL == (f->stdio_mmt = SLang_pop_mmt (SLANG_FILE_PTR_TYPE)))
- return;
- }
-
- (void) SLang_push_mmt (f->stdio_mmt);
-}
-
-static long posix_lseek (SLFile_FD_Type *f, long ofs, int whence)
-{
- long status;
-
- if (-1 == (status = lseek (f->fd, ofs, whence)))
- _SLerrno_errno = errno;
-
- return status;
-}
-
-static int posix_isatty (void)
-{
- int ret;
- SLFile_FD_Type *f;
-
- if (SLang_peek_at_stack () == SLANG_FILE_PTR_TYPE)
- {
- SLang_MMT_Type *mmt;
- FILE *fp;
-
- if (-1 == SLang_pop_fileptr (&mmt, &fp))
- return 0; /* invalid descriptor */
-
- ret = isatty (fileno (fp));
- SLang_free_mmt (mmt);
- return ret;
- }
-
- if (-1 == SLfile_pop_fd (&f))
- return 0;
-
- ret = isatty (f->fd);
- SLfile_free_fd (f);
-
- return ret;
-}
-
-static void posix_dup (SLFile_FD_Type *f)
-{
- if ((NULL == (f = SLfile_dup_fd (f)))
- || (-1 == SLfile_push_fd (f)))
- SLang_push_null ();
-
- SLfile_free_fd (f);
-}
-
-#define I SLANG_INT_TYPE
-#define V SLANG_VOID_TYPE
-#define F SLANG_FILE_FD_TYPE
-#define B SLANG_BSTRING_TYPE
-#define R SLANG_REF_TYPE
-#define U SLANG_UINT_TYPE
-#define S SLANG_STRING_TYPE
-#define L SLANG_LONG_TYPE
-static SLang_Intrin_Fun_Type Fd_Name_Table [] =
-{
- MAKE_INTRINSIC_0("fileno", posix_fileno, V),
- MAKE_INTRINSIC_0("isatty", posix_isatty, I),
- MAKE_INTRINSIC_0("open", posix_open, V),
- MAKE_INTRINSIC_3("read", posix_read, V, F, R, U),
- MAKE_INTRINSIC_3("lseek", posix_lseek, L, F, L, I),
- MAKE_INTRINSIC_2("fdopen", posix_fdopen, V, F, S),
- MAKE_INTRINSIC_2("write", posix_write, V, F, B),
- MAKE_INTRINSIC_1("dup_fd", posix_dup, V, F),
- MAKE_INTRINSIC_1("close", posix_close, I, F),
- SLANG_END_INTRIN_FUN_TABLE
-};
-#undef I
-#undef V
-#undef F
-#undef B
-#undef R
-#undef S
-#undef L
-#undef U
-
-static SLang_IConstant_Type PosixIO_Consts [] =
-{
-#ifdef O_RDONLY
- MAKE_ICONSTANT("O_RDONLY", O_RDONLY),
-#endif
-#ifdef O_WRONLY
- MAKE_ICONSTANT("O_WRONLY", O_WRONLY),
-#endif
-#ifdef O_RDWR
- MAKE_ICONSTANT("O_RDWR", O_RDWR),
-#endif
-#ifdef O_APPEND
- MAKE_ICONSTANT("O_APPEND", O_APPEND),
-#endif
-#ifdef O_CREAT
- MAKE_ICONSTANT("O_CREAT", O_CREAT),
-#endif
-#ifdef O_EXCL
- MAKE_ICONSTANT("O_EXCL", O_EXCL),
-#endif
-#ifdef O_NOCTTY
- MAKE_ICONSTANT("O_NOCTTY", O_NOCTTY),
-#endif
-#ifdef O_NONBLOCK
- MAKE_ICONSTANT("O_NONBLOCK", O_NONBLOCK),
-#endif
-#ifdef O_TRUNC
- MAKE_ICONSTANT("O_TRUNC", O_TRUNC),
-#endif
-#ifndef O_BINARY
-# define O_BINARY 0
-#endif
- MAKE_ICONSTANT("O_BINARY", O_BINARY),
-#ifndef O_TEXT
-# define O_TEXT 0
-#endif
- MAKE_ICONSTANT("O_TEXT", O_TEXT),
-
- SLANG_END_ICONST_TABLE
-};
-
-int SLfile_push_fd (SLFile_FD_Type *f)
-{
- if (f == NULL)
- return SLang_push_null ();
-
- f->num_refs += 1;
-
- if (0 == SLclass_push_ptr_obj (SLANG_FILE_FD_TYPE, (VOID_STAR) f))
- return 0;
-
- f->num_refs -= 1;
-
- return -1;
-}
-
-int SLfile_pop_fd (SLFile_FD_Type **f)
-{
- return SLclass_pop_ptr_obj (SLANG_FILE_FD_TYPE, (VOID_STAR *) f);
-}
-
-static void destroy_fd_type (unsigned char type, VOID_STAR ptr)
-{
- (void) type;
- SLfile_free_fd (*(SLFile_FD_Type **) ptr);
-}
-
-static int fd_push (unsigned char type, VOID_STAR v)
-{
- (void) type;
- return SLfile_push_fd (*(SLFile_FD_Type **)v);
-}
-
-int SLang_init_posix_io (void)
-{
- SLang_Class_Type *cl;
-
- if (NULL == (cl = SLclass_allocate_class ("FD_Type")))
- return -1;
- cl->cl_destroy = destroy_fd_type;
- (void) SLclass_set_push_function (cl, fd_push);
-
- if (-1 == SLclass_register_class (cl, SLANG_FILE_FD_TYPE, sizeof (SLFile_FD_Type), SLANG_CLASS_TYPE_PTR))
- return -1;
-
- if ((-1 == SLadd_intrin_fun_table(Fd_Name_Table, "__POSIXIO__"))
- || (-1 == SLadd_iconstant_table (PosixIO_Consts, NULL))
- || (-1 == _SLerrno_init ()))
- return -1;
-
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slprepr.c b/mdk-stage1/slang/slprepr.c
deleted file mode 100644
index 358eeb874..000000000
--- a/mdk-stage1/slang/slprepr.c
+++ /dev/null
@@ -1,427 +0,0 @@
-/* Copyright (c) 1996, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-/*--------------------------------*-C-*---------------------------------*
- * File: slprepr.c
- *
- * preprocessing routines
- */
-/*{{{ notes: */
-/*
- * various preprocessing tokens supported
- *
- * #ifdef TOKEN1 TOKEN2 ...
- * - True if any of TOKEN1 TOKEN2 ... are defined
- *
- * #ifndef TOKEN1 TOKEN2 ...
- * - True if none of TOKEN1 TOKEN2 ... are defined
- *
- * #iftrue
- * #ifnfalse
- * - always True
- *
- * #iffalse
- * #ifntrue
- * - always False
- *
- * #if$ENV
- * - True if the enviroment variable ENV is set
- *
- * #ifn$ENV
- * - True if the enviroment variable ENV is not set
- *
- * #if$ENV TOKEN1 TOKEN2 ...
- * - True if the contents of enviroment variable ENV match
- * any of TOKEN1 TOKEN2 ...
- *
- * #ifn$ENV TOKEN1 TOKEN2 ...
- * - True if the contents of enviroment variable ENV do not match
- * any of TOKEN1 TOKEN2 ...
- *
- * NB: For $ENV, the tokens may contain wildcard characters:
- * '?' - match any single character
- * '*' - match any number of characters
- *
- * #elif...
- * #else
- * #endif
- *
- *
- * mj olesen
- *----------------------------------------------------------------------*/
-/*}}}*/
-/*{{{ includes: */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-/*}}}*/
-
-int (*SLprep_exists_hook) (char *, char);
-int (*_SLprep_eval_hook) (char *);
-
-/*{{{ SLprep_open_prep (), SLprep_close_prep () */
-int SLprep_open_prep (SLPreprocess_Type *pt)
-{
- pt->this_level = 0;
- pt->exec_level = 0;
- pt->prev_exec_level = 0;
- pt->comment_char = '%';
- pt->preprocess_char = '#';
- pt->flags = 0;
- return 0;
-}
-
-void SLprep_close_prep (SLPreprocess_Type *pt)
-{
- (void) pt;
-}
-/*}}}*/
-
-/*{{{ SLwildcard () */
-/*----------------------------------------------------------------------*
- * Does `string' match `pattern' ?
- *
- * '*' in pattern matches any sub-string (including the null string)
- * '?' matches any single char.
- *
- * Code taken from that donated by Paul Hudson <paulh@harlequin.co.uk>
- * to the fvwm project.
- * It is public domain, no strings attached. No guarantees either.
- *----------------------------------------------------------------------*/
-static int SLwildcard (char *pattern, char *string)
-{
- if (pattern == NULL || *pattern == '\0' || !strcmp (pattern, "*"))
- return 1;
- else if (string == NULL)
- return 0;
-
- while (*pattern && *string) switch (*pattern)
- {
- case '?':
- /* match any single character */
- pattern++;
- string++;
- break;
-
- case '*':
- /* see if rest of pattern matches any trailing */
- /* substring of the string. */
- if (*++pattern == '\0')
- return 1; /* trailing * must match rest */
-
- while (*string)
- {
- if (SLwildcard (pattern, string)) return 1;
- string++;
- }
- return 0;
-
- /* break; */
-
- default:
- if (*pattern == '\\')
- {
- if (*++pattern == '\0')
- pattern--; /* don't skip trailing backslash */
- }
- if (*pattern++ != *string++) return 0;
- break;
- }
-
- return ((*string == '\0')
- && ((*pattern == '\0') || !strcmp (pattern, "*")));
-}
-/*}}}*/
-
-#if defined(__16_BIT_SYSTEM__)
-# define MAX_DEFINES 10
-#else
-# define MAX_DEFINES 128
-#endif
-
-/* The extra one is for NULL termination */
-char *_SLdefines [MAX_DEFINES + 1];
-
-int SLdefine_for_ifdef (char *s) /*{{{*/
-{
- unsigned int i;
-
- for (i = 0; i < MAX_DEFINES; i++)
- {
- char *s1 = _SLdefines [i];
-
- if (s1 == s)
- return 0; /* already defined (hashed string) */
-
- if (s1 != NULL)
- continue;
-
- s = SLang_create_slstring (s);
- if (s == NULL)
- return -1;
-
- _SLdefines[i] = s;
- return 0;
- }
- return -1;
-}
-/*}}}*/
-
-/*{{{ static functions */
-static int is_any_defined(char *buf, char comment) /*{{{*/
-{
- char *sys;
- unsigned int i;
-
- while (1)
- {
- register char ch;
-
- /* Skip whitespace */
- while (((ch = *buf) == ' ') || (ch == '\t'))
- buf++;
-
- if ((ch == '\n') || (ch == 0) || (ch == comment))
- return 0;
-
- i = 0;
- while (NULL != (sys = _SLdefines [i++]))
- {
- unsigned int n;
-
- if (*sys != ch)
- continue;
-
- n = strlen (sys);
- if (0 == strncmp (buf, sys, n))
- {
- char ch1 = *(buf + n);
-
- if ((ch1 == '\n') || (ch1 == 0) ||
- (ch1 == ' ') || (ch1 == '\t') || (ch1 == comment))
- return 1;
- }
- }
-
- /* Skip past word */
- while (((ch = *buf) != ' ')
- && (ch != '\n')
- && (ch != 0)
- && (ch != '\t')
- && (ch != comment))
- buf++;
- }
-}
-/*}}}*/
-
-static unsigned char *tokenize (unsigned char *buf, char *token, unsigned int len)
-{
- register char *token_end;
-
- token_end = token + (len - 1); /* allow room for \0 */
-
- while ((token < token_end) && (*buf > ' '))
- *token++ = *buf++;
-
- if (*buf > ' ') return NULL; /* token too long */
-
- *token = '\0';
-
- while ((*buf == ' ') || (*buf == '\t')) buf++;
-
- return buf;
-}
-
-static int is_env_defined (char *buf, char comment) /*{{{*/
-{
- char * env, token [32];
-
- if ((*buf <= ' ') || (*buf == comment)) return 0; /* no token */
-
- if (NULL == (buf = (char *) tokenize ((unsigned char *) buf,
- token, sizeof (token))))
- return 0;
-
- if (NULL == (env = getenv (token)))
- return 0; /* ENV not defined */
-
- if ((*buf == '\0') || (*buf == '\n') || (*buf == comment))
- return 1; /* no tokens, but getenv() worked */
-
- do
- {
- buf = (char *) tokenize ((unsigned char *) buf, token, sizeof (token));
- if (buf == NULL) return 0;
-
- if (SLwildcard (token, env))
- return 1;
- }
- while (*buf && (*buf != '\n') && (*buf != comment));
-
- return 0;
-}
-/*}}}*/
-/*}}}*/
-
-int SLprep_line_ok (char *buf, SLPreprocess_Type *pt) /*{{{*/
-{
- int level, prev_exec_level, exec_level;
-
- if ((buf == NULL) || (pt == NULL)) return 1;
-
- if (*buf != pt->preprocess_char)
- {
- if (pt->this_level != pt->exec_level)
- return 0;
-
- if (*buf == '\n') return pt->flags & SLPREP_BLANK_LINES_OK;
- if (*buf == pt->comment_char) return pt->flags & SLPREP_COMMENT_LINES_OK;
-
- return 1;
- }
-
- level = pt->this_level;
- exec_level = pt->exec_level;
- prev_exec_level = pt->prev_exec_level;
-
- buf++;
-
- /* Allow '#!' to pass. This could be a shell script with something
- like '#! /local/bin/slang' */
- if ((*buf == '!') && (pt->preprocess_char == '#'))
- return 0;
-
- /* Allow whitespace as in '# ifdef' */
- while ((*buf == ' ') || (*buf == '\t')) buf++;
- if (*buf < 'a') return (level == exec_level);
-
- if (!strncmp(buf, "endif", 5))
- {
- if (level == exec_level)
- {
- exec_level--;
- prev_exec_level = exec_level;
- }
- level--;
- if (level < prev_exec_level) prev_exec_level = level;
- goto done;
- }
-
- if ((buf[0] == 'e') && (buf[1] == 'l')) /* else, elifdef, ... */
- {
- if ((level == exec_level + 1)
- && (prev_exec_level != level))
- {
- /* We are in position to execute */
- buf += 2;
- if ((buf[0] == 's') && (buf[1] == 'e'))
- {
- /* "else" */
- exec_level = level;
- goto done;
- }
-
- /* drop through to ifdef testing. First set variable
- * to values appropriate for ifdef testing.
- */
- level--; /* now == to exec level */
- }
- else
- {
- if (level == exec_level)
- {
- exec_level--;
- }
- goto done;
- }
- }
-
- if ((buf[0] == 'i') && (buf[1] == 'f'))
- {
- int truth;
-
- if (level != exec_level)
- {
- /* Not interested */
- level++;
- goto done;
- }
-
- level++;
-
- buf += 2;
- if (buf[0] == 'n')
- {
- truth = 0;
- buf++;
- }
- else truth = 1;
-
- if (!strncmp (buf, "def", 3))
- truth = (truth == is_any_defined(buf + 3, pt->comment_char));
-
- else if (!strncmp (buf, "false", 5))
- truth = !truth;
-
- else if (*buf == '$')
- truth = (truth == is_env_defined (buf + 1, pt->comment_char));
-
- else if (!strncmp (buf, "exists", 6)
- && (SLprep_exists_hook != NULL))
- truth = (truth == (*SLprep_exists_hook)(buf + 6, pt->comment_char));
-
- else if (!strncmp (buf, "eval", 4)
- && (_SLprep_eval_hook != NULL))
- truth = (truth == (*_SLprep_eval_hook) (buf + 4));
-
- else if (0 != strncmp (buf, "true", 4))
- return 1; /* let it bomb */
-
- if (truth)
- {
- exec_level = level;
- prev_exec_level = exec_level;
- }
- }
- else return 1; /* let it bomb. */
-
- done:
-
- if (exec_level < 0) return 1;
-
- pt->this_level = level;
- pt->exec_level = exec_level;
- pt->prev_exec_level = prev_exec_level;
- return 0;
-}
-/*}}}*/
-
-/*{{{ main() - for testing only */
-#if 0
-int main ()
-{
- char buf[1024];
- SLPreprocess_Type pt;
-
- SLprep_open_prep (&pt);
-
- SLdefine_for_ifdef ("UNIX");
-
- while (NULL != fgets (buf, sizeof (buf) - 1, stdin))
- {
- if (SLprep_line_ok (buf, &pt))
- {
- fputs (buf, stdout);
- }
- }
-
- SLprep_close_prep (&pt);
- return 0;
-}
-#endif
-/*}}}*/
diff --git a/mdk-stage1/slang/slproc.c b/mdk-stage1/slang/slproc.c
deleted file mode 100644
index 8b266f28f..000000000
--- a/mdk-stage1/slang/slproc.c
+++ /dev/null
@@ -1,155 +0,0 @@
-/* Process specific system calls */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#ifdef HAVE_IO_H
-# include <io.h> /* for chmod */
-#endif
-
-#ifdef HAVE_PROCESS_H
-# include <process.h> /* for getpid */
-#endif
-
-#if defined(__BORLANDC__)
-# include <dos.h>
-#endif
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <signal.h>
-#include <time.h>
-
-#include <errno.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-#ifdef HAVE_KILL
-static int kill_cmd (int *pid, int *sig)
-{
- int ret;
-
- if (-1 == (ret = kill ((pid_t) *pid, *sig)))
- _SLerrno_errno = errno;
- return ret;
-}
-#endif
-
-static int getpid_cmd (void)
-{
- return getpid ();
-}
-
-#ifdef HAVE_GETPPID
-static int getppid_cmd (void)
-{
- return getppid ();
-}
-#endif
-
-#ifdef HAVE_GETGID
-static int getgid_cmd (void)
-{
- return getgid ();
-}
-#endif
-
-#ifdef HAVE_GETEGID
-static int getegid_cmd (void)
-{
- return getegid ();
-}
-#endif
-
-#ifdef HAVE_GETEUID
-static int geteuid_cmd (void)
-{
- return geteuid ();
-}
-#endif
-
-#ifdef HAVE_GETUID
-static int getuid_cmd (void)
-{
- return getuid ();
-}
-#endif
-
-#ifdef HAVE_SETGID
-static int setgid_cmd (int *gid)
-{
- if (0 == setgid (*gid))
- return 0;
- _SLerrno_errno = errno;
- return -1;
-}
-#endif
-
-#ifdef HAVE_SETPGID
-static int setpgid_cmd (int *pid, int *pgid)
-{
- if (0 == setpgid (*pid, *pgid))
- return 0;
- _SLerrno_errno = errno;
- return -1;
-}
-#endif
-
-#ifdef HAVE_SETUID
-static int setuid_cmd (int *uid)
-{
- if (0 == setuid (*uid))
- return 0;
- _SLerrno_errno = errno;
- return -1;
-}
-#endif
-
-static SLang_Intrin_Fun_Type Process_Name_Table[] =
-{
- MAKE_INTRINSIC_0("getpid", getpid_cmd, SLANG_INT_TYPE),
-
-#ifdef HAVE_GETPPID
- MAKE_INTRINSIC_0("getppid", getppid_cmd, SLANG_INT_TYPE),
-#endif
-#ifdef HAVE_GETGID
- MAKE_INTRINSIC_0("getgid", getgid_cmd, SLANG_INT_TYPE),
-#endif
-#ifdef HAVE_GETEGID
- MAKE_INTRINSIC_0("getegid", getegid_cmd, SLANG_INT_TYPE),
-#endif
-#ifdef HAVE_GETEUID
- MAKE_INTRINSIC_0("geteuid", geteuid_cmd, SLANG_INT_TYPE),
-#endif
-#ifdef HAVE_GETUID
- MAKE_INTRINSIC_0("getuid", getuid_cmd, SLANG_INT_TYPE),
-#endif
-#ifdef HAVE_SETGID
- MAKE_INTRINSIC_I("setgid", setgid_cmd, SLANG_INT_TYPE),
-#endif
-#ifdef HAVE_SETPGID
- MAKE_INTRINSIC_II("setpgid", setpgid_cmd, SLANG_INT_TYPE),
-#endif
-#ifdef HAVE_SETUID
- MAKE_INTRINSIC_I("setuid", setuid_cmd, SLANG_INT_TYPE),
-#endif
-
-#ifdef HAVE_KILL
- MAKE_INTRINSIC_II("kill", kill_cmd, SLANG_INT_TYPE),
-#endif
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-int SLang_init_posix_process (void)
-{
- if ((-1 == SLadd_intrin_fun_table (Process_Name_Table, "__POSIX_PROCESS__"))
- || (-1 == _SLerrno_init ()))
- return -1;
- return 0;
-}
diff --git a/mdk-stage1/slang/slregexp.c b/mdk-stage1/slang/slregexp.c
deleted file mode 100644
index 6592a5a63..000000000
--- a/mdk-stage1/slang/slregexp.c
+++ /dev/null
@@ -1,935 +0,0 @@
-/* ed style regular expressions */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-#define SET_BIT(b, n) b[(unsigned int) (n) >> 3] |= 1 << ((unsigned int) (n) % 8)
-#define TEST_BIT(b, n) (b[(unsigned int)(n) >> 3] & (1 << ((unsigned int) (n) % 8)))
-#define LITERAL 1
-#define RANGE 2 /* [...] */
-#define ANY 3 /* . */
-#define BOL 4 /* ^ */
-#define EOL 5 /* $ */
-#define NTH_MATCH 6 /* \1 \2 ... \9 */
-#define OPAREN 7 /* \( */
-#define CPAREN 0x8 /* \) */
-#define ANY_DIGIT 0x9 /* \d */
-#define BOW 0xA /* \< */
-#define EOW 0xB /* \> */
-#if 0
-#define NOT_LITERAL 0xC /* \~ */
-#endif
-#define STAR 0x80 /* * */
-#define LEAST_ONCE 0x40 /* + */
-#define MAYBE_ONCE 0x20 /* ? */
-#define MANY 0x10 /* {n,m} */
-/* The rest are additions */
-#define YES_CASE (STAR | BOL)
-#define NO_CASE (STAR | EOL)
-
-#define UPPERCASE(x) (cs ? (x) : UPPER_CASE(x))
-#define LOWERCASE(x) (cs ? (x) : LOWER_CASE(x))
-
-static unsigned char Word_Chars[256];
-#define IS_WORD_CHAR(x) Word_Chars[(unsigned int) (x)]
-
-#if 0
-static int ctx->open_paren_number;
-static char Closed_Paren_Matches[10];
-
-static SLRegexp_Type *This_Reg;
-static unsigned char *This_Str;
-#endif
-
-typedef struct
-{
- SLRegexp_Type *reg;
- unsigned char *str;
- unsigned int len;
- char closed_paren_matches[10];
- int open_paren_number;
-}
-Re_Context_Type;
-
-static unsigned char *do_nth_match (Re_Context_Type *ctx, int n, unsigned char *str, unsigned char *estr)
-{
- unsigned char *bpos;
-
- if (ctx->closed_paren_matches[n] == 0)
- return NULL;
-
- bpos = ctx->reg->beg_matches[n] + ctx->str;
- n = ctx->reg->end_matches[n];
- if (n == 0) return(str);
- if (n > (int) (estr - str)) return (NULL);
-
- /* This needs fixed for case sensitive match */
- if (0 != strncmp((char *) str, (char *) bpos, (unsigned int) n)) return (NULL);
- str += n;
- return (str);
-}
-
-/* returns pointer to the end of regexp or NULL */
-static unsigned char *regexp_looking_at (Re_Context_Type *ctx, register unsigned char *str, unsigned char *estr, unsigned char *buf, register int cs)
-{
- register unsigned char p, p1;
- unsigned char *save_str, *tmpstr;
- int n, n0, n1;
- int save_num_open;
- char save_closed_matches[10];
-
- p = *buf++;
-
- while (p != 0)
- {
- /* p1 = UPPERCASE(*buf); */
- /* if (str < estr) c = UPPERCASE(*str); */
-
- switch((unsigned char) p)
- {
- case BOW:
- if ((str != ctx->str)
- && ((str >= estr)
- || IS_WORD_CHAR(*(str - 1))
- || (0 == IS_WORD_CHAR(*str)))) return NULL;
- break;
-
- case EOW:
- if ((str < estr)
- && IS_WORD_CHAR (*str)) return NULL;
- break;
-
- case YES_CASE: cs = 1; break;
- case NO_CASE: cs = 0; break;
-
- case OPAREN:
- ctx->open_paren_number++;
- ctx->reg->beg_matches[ctx->open_paren_number] = (int) (str - ctx->str);
- break;
- case CPAREN:
- n = ctx->open_paren_number;
- while (n > 0)
- {
- if (ctx->closed_paren_matches[n] != 0)
- {
- n--;
- continue;
- }
- ctx->closed_paren_matches[n] = 1;
- ctx->reg->end_matches[n] = (unsigned int) (str - (ctx->str + ctx->reg->beg_matches[n]));
- break;
- }
- break;
-#ifdef NOT_LITERAL
- case NOT_LITERAL:
- if ((str >= estr) || (*buf == UPPERCASE(*str))) return (NULL);
- str++; buf++;
- break;
-
- case MAYBE_ONCE | NOT_LITERAL:
- save_str = str;
- if ((str < estr) && (*buf != UPPERCASE(*str))) str++;
- buf++;
- goto match_rest;
-
- case NOT_LITERAL | LEAST_ONCE: /* match at least once */
- if ((str >= estr) || (UPPERCASE(*str) == UPPERCASE(*buf))) return (NULL);
- str++;
- /* drop */
- case STAR | NOT_LITERAL:
- save_str = str; p1 = *buf;
- while ((str < estr) && (UPPERCASE(*str) != p1)) str++;
- buf++;
- goto match_rest;
-
- /* this type consists of the expression + two bytes that
- determine number of matches to perform */
- case MANY | NOT_LITERAL:
- p1 = *buf; buf++;
- n = n0 = (int) (unsigned char) *buf++;
- /* minimum number to match--- could be 0 */
- n1 = (int) (unsigned char) *buf++;
- /* maximum number to match */
-
- while (n && (str < estr) && (p1 != *str))
- {
- n--;
- str++;
- }
- if (n) return (NULL);
-
- save_str = str;
- n = n1 - n0;
- while (n && (str < estr) && (p1 != *str))
- {
- n--;
- str++;
- }
- goto match_rest;
-#endif /* NOT_LITERAL */
- case LITERAL:
- if ((str >= estr) || (*buf != UPPERCASE(*str))) return (NULL);
- str++; buf++;
- break;
-
- case MAYBE_ONCE | LITERAL:
- save_str = str;
- if ((str < estr) && (*buf == UPPERCASE(*str))) str++;
- buf++;
- goto match_rest;
-
- case LITERAL | LEAST_ONCE: /* match at least once */
- if ((str >= estr) || (UPPERCASE(*str) != UPPERCASE(*buf))) return (NULL);
- str++;
- /* drop */
- case STAR | LITERAL:
- save_str = str; p1 = *buf;
- while ((str < estr) && (UPPERCASE(*str) == p1)) str++;
- buf++;
- goto match_rest;
-
- /* this type consists of the expression + two bytes that
- determine number of matches to perform */
- case MANY | LITERAL:
- p1 = *buf; buf++;
- n = n0 = (int) (unsigned char) *buf++;
- /* minimum number to match--- could be 0 */
- n1 = (int) (unsigned char) *buf++;
- /* maximum number to match */
-
- while (n && (str < estr) && (p1 == *str))
- {
- n--;
- str++;
- }
- if (n) return (NULL);
-
- save_str = str;
- n = n1 - n0;
- while (n && (str < estr) && (p1 == *str))
- {
- n--;
- str++;
- }
- goto match_rest;
-
- case NTH_MATCH:
- if ((str = do_nth_match(ctx, (int) (unsigned char) *buf, str, estr)) == NULL) return(NULL);
- buf++;
- break;
-
- case MAYBE_ONCE | NTH_MATCH:
- save_str = str;
- tmpstr = do_nth_match (ctx, (int) (unsigned char) *buf, str, estr);
- buf++;
- if (tmpstr != NULL)
- {
- str = tmpstr;
- goto match_rest;
- }
- continue;
-
- case LEAST_ONCE | NTH_MATCH:
- if ((str = do_nth_match(ctx, (int) (unsigned char) *buf, str, estr)) == NULL) return(NULL);
- /* drop */
- case STAR | NTH_MATCH:
- save_str = str;
- while (NULL != (tmpstr = do_nth_match(ctx, (int) (unsigned char) *buf, str, estr)))
- {
- str = tmpstr;
- }
- buf++;
- goto match_rest;
-
- case MANY | NTH_MATCH: return(NULL);
- /* needs done */
-
- case RANGE:
- if (str >= estr) return (NULL);
- if (TEST_BIT(buf, UPPERCASE(*str)) == 0) return (NULL);
- buf += 32; str++;
- break;
-
- case MAYBE_ONCE | RANGE:
- save_str = str;
- if ((str < estr) && TEST_BIT(buf, UPPERCASE(*str))) str++;
- buf += 32;
- goto match_rest;
-
- case LEAST_ONCE | RANGE:
- if ((str >= estr) || (0 == TEST_BIT(buf, UPPERCASE(*str)))) return NULL;
- str++;
- /* drop */
- case STAR | RANGE:
- save_str = str;
- while ((str < estr) && TEST_BIT(buf, UPPERCASE(*str))) str++;
- buf += 32;
- goto match_rest;
-
- /* The first 32 bytes correspond to the range and the two
- * following bytes indicate the min and max number of matches.
- */
- case MANY | RANGE:
- /* minimum number to match--- could be 0 */
- n = n0 = (int) (unsigned char) *(buf + 32);
- /* maximum number to match */
- n1 = (int) (unsigned char) *(buf + 33);
-
- while (n && (str < estr) && (TEST_BIT(buf, UPPERCASE(*str))))
- {
- n--;
- str++;
- }
- if (n) return (NULL);
- save_str = str;
- n = n1 - n0;
- while (n && (str < estr) && (TEST_BIT(buf, UPPERCASE(*str))))
- {
- n--;
- str++;
- }
- buf += 34; /* 32 + 2 */
- goto match_rest;
-
- case ANY_DIGIT:
- if ((str >= estr) || (*str > '9') || (*str < '0')) return (NULL);
- str++;
- break;
-
- case MAYBE_ONCE | ANY_DIGIT:
- save_str = str;
- if ((str < estr) && ((*str > '9') || (*str < '0'))) str++;
- goto match_rest;
-
- case LEAST_ONCE | ANY_DIGIT:
- if ((str >= estr) || ((*str > '9') || (*str < '0'))) return NULL;
- str++;
- /* drop */
- case STAR | ANY_DIGIT:
- save_str = str;
- while ((str < estr) && ((*str <= '9') && (*str >= '0'))) str++;
- goto match_rest;
-
- case MANY | ANY_DIGIT:
- /* needs finished */
- return (NULL);
-
- case ANY:
- if ((str >= estr) || (*str == '\n')) return (NULL);
- str++;
- break;
-
- case MAYBE_ONCE | ANY:
- save_str = str;
- if ((str < estr) && (*str != '\n')) str++;
- goto match_rest;
-
- case LEAST_ONCE | ANY:
- if ((str >= estr) || (*str == '\n')) return (NULL);
- str++;
- /* drop */
- case STAR | ANY:
- save_str = str;
- while ((str < estr) && (*str != '\n')) str++;
- goto match_rest;
-
- case MANY | ANY:
- return (NULL);
- /* needs finished */
-
- case EOL:
- if ((str >= estr) || (*str == '\n')) return (str);
- return(NULL);
-
- default: return (NULL);
- }
- p = *buf++;
- continue;
-
- match_rest:
- if (save_str == str)
- {
- p = *buf++;
- continue;
- }
-
- /* if (p == EOL)
- * {
- * if (str < estr) return (NULL); else return (str);
- * }
- */
-
- SLMEMCPY(save_closed_matches, ctx->closed_paren_matches, sizeof(save_closed_matches));
- save_num_open = ctx->open_paren_number;
- while (str >= save_str)
- {
- tmpstr = regexp_looking_at (ctx, str, estr, buf, cs);
- if (tmpstr != NULL) return(tmpstr);
- SLMEMCPY(ctx->closed_paren_matches, save_closed_matches, sizeof(ctx->closed_paren_matches));
- ctx->open_paren_number = save_num_open;
- str--;
- }
- return NULL;
- }
- if ((p != 0) && (p != EOL)) return (NULL); else return (str);
-}
-
-static void
-fixup_beg_end_matches (Re_Context_Type *ctx, SLRegexp_Type *r, unsigned char *str, unsigned char *epos)
-{
- int i;
-
- if (str == NULL)
- {
- r->beg_matches[0] = -1;
- r->end_matches[0] = 0;
- SLMEMSET(ctx->closed_paren_matches, 0, sizeof(ctx->closed_paren_matches));
- }
- else
- {
- r->beg_matches[0] = (int) (str - ctx->str);
- r->end_matches[0] = (unsigned int) (epos - str);
- }
-
- for (i = 1; i < 10; i++)
- {
- if (ctx->closed_paren_matches [i] == 0)
- {
- r->beg_matches[i] = -1;
- r->end_matches[i] = 0;
- }
- }
-}
-
-static void init_re_context (Re_Context_Type *ctx, SLRegexp_Type *reg,
- unsigned char *str, unsigned int len)
-{
- memset ((char *) ctx, 0, sizeof (Re_Context_Type));
- ctx->reg = reg;
- ctx->str = str;
- ctx->len = len;
-}
-
-unsigned char *SLang_regexp_match(unsigned char *str,
- unsigned int len, SLRegexp_Type *reg)
-{
- register unsigned char c = 0, *estr = str + len;
- int cs = reg->case_sensitive, lit = 0;
- unsigned char *buf = reg->buf, *epos = NULL;
- Re_Context_Type ctx_buf;
-
- if (reg->min_length > len) return NULL;
-
- init_re_context (&ctx_buf, reg, str, len);
-
- if (*buf == BOL)
- {
- if (NULL == (epos = regexp_looking_at (&ctx_buf, str, estr, buf + 1, cs)))
- str = NULL;
-
- fixup_beg_end_matches (&ctx_buf, reg, str, epos);
- return str;
- }
-
- if (*buf == NO_CASE)
- {
- buf++; cs = 0;
- }
-
- if (*buf == YES_CASE)
- {
- buf++; cs = 1;
- }
-
- if (*buf == LITERAL)
- {
- lit = 1;
- c = *(buf + 1);
- }
- else if ((*buf == OPAREN) && (*(buf + 1) == LITERAL))
- {
- lit = 1;
- c = *(buf + 2);
- }
-
- while (str < estr)
- {
- ctx_buf.open_paren_number = 0;
- memset (ctx_buf.closed_paren_matches, 0, sizeof(ctx_buf.closed_paren_matches));
- /* take care of leading chars */
- if (lit)
- {
- while ((str < estr) && (c != UPPERCASE(*str))) str++;
- if (str >= estr)
- break; /* failed */
- }
-
- if (NULL != (epos = regexp_looking_at(&ctx_buf, str, estr, buf, cs)))
- {
- fixup_beg_end_matches (&ctx_buf, reg, str, epos);
- return str;
- }
- str++;
- }
- fixup_beg_end_matches (&ctx_buf, reg, NULL, epos);
- return NULL;
-}
-
-static unsigned char *convert_digit(unsigned char *pat, int *nn)
-{
- int n = 0, m = 0;
- unsigned char c;
- while (c = (unsigned char) *pat, (c <= '9') && (c >= '0'))
- {
- pat++;
- n = 10 * n + (c - '0');
- m++;
- }
- if (m == 0)
- {
- return (NULL);
- }
- *nn = n;
- return pat;
-}
-
-#define ERROR return (int) (pat - reg->pat)
-
-/* Returns 0 if successful or offset in pattern of error */
-int SLang_regexp_compile (SLRegexp_Type *reg)
-{
- register unsigned char *buf, *ebuf, *pat;
- unsigned char *last = NULL, *tmppat;
- register unsigned char c;
- int i, reverse = 0, n, cs;
- int oparen = 0, nparen = 0;
- /* substring stuff */
- int count, last_count, this_max_mm = 0, max_mm = 0, ordinary_search,
- no_osearch = 0, min_length = 0;
- unsigned char *mm_p = NULL, *this_mm_p = NULL;
- static int already_initialized;
-
- reg->beg_matches[0] = reg->end_matches[0] = 0;
- buf = reg->buf;
- ebuf = (reg->buf + reg->buf_len) - 2; /* make some room */
- pat = reg->pat;
- cs = reg->case_sensitive;
-
- if (already_initialized == 0)
- {
- SLang_init_case_tables ();
-#ifdef IBMPC_SYSTEM
- SLmake_lut (Word_Chars, (unsigned char *) "_0-9a-zA-Z\200-\232\240-\245\341-\353", 0);
-#else
- SLmake_lut (Word_Chars, (unsigned char *) "_0-9a-zA-Z\277-\326\330-\336\340-\366\370-\376", 0);
-#endif
- already_initialized = 1;
- }
-
- i = 1; while (i < 10)
- {
- reg->beg_matches[i] = -1;
- reg->end_matches[i] = 0;
- i++;
- }
-
- if (*pat == '\\')
- {
- if (pat[1] == 'c')
- {
- cs = 1;
- pat += 2;
- no_osearch = 1;
- }
- else if (pat[1] == 'C')
- {
- cs = 0;
- pat += 2;
- no_osearch = 1;
- }
- }
-
- if (*pat == '^')
- {
- pat++;
- *buf++ = BOL;
- reg->must_match_bol = 1;
- }
- else reg->must_match_bol = 0;
-
- if (cs != reg->case_sensitive)
- {
- if (cs) *buf++ = YES_CASE;
- else *buf++ = NO_CASE;
- }
-
- *buf = 0;
-
- last_count = count = 0;
- while ((c = *pat++) != 0)
- {
- if (buf >= ebuf - 3)
- {
- SLang_doerror ("Pattern too large to be compiled.");
- ERROR;
- }
-
- count++;
- switch (c)
- {
- case '$':
- if (*pat != 0) goto literal_char;
- *buf++ = EOL;
- break;
-
- case '\\':
- c = *pat++;
- no_osearch = 1;
- switch(c)
- {
- case 'e': c = 033; goto literal_char;
- case 'n': c = '\n'; goto literal_char;
- case 't': c = '\t'; goto literal_char;
- case 'C': cs = 0; *buf++ = NO_CASE; break;
- case 'c': cs = 1; *buf++ = YES_CASE; break;
- case '1': case '2': case '3': case '4': case '5':
- case '6': case '7': case '8': case '9':
- c = c - '0';
- if ((int) c > nparen) ERROR;
- last = buf;
- *buf++ = NTH_MATCH; *buf++ = c;
- break;
-#ifdef NOT_LITERAL
- case '~': /* slang extension */
- if ((c = *pat) == 0) ERROR;
- pat++;
- last = buf;
- *buf++ = NOT_LITERAL;
- *buf++ = c;
- min_length++;
- break;
-#endif
- case 'd': /* slang extension */
- last = buf;
- *buf++ = ANY_DIGIT;
- min_length++;
- break;
-
- case '<':
- last = NULL;
- *buf++ = BOW;
- break;
-
- case '>':
- last = NULL;
- *buf++ = EOW;
- break;
-
- case '{':
- if (last == NULL) goto literal_char;
- *last |= MANY;
- tmppat = convert_digit(pat, &n);
- if (tmppat == NULL) ERROR;
- pat = tmppat;
- *buf++ = n;
-
- min_length += (n - 1);
-
- if (*pat == '\\')
- {
- *buf++ = n;
- }
- else if (*pat == ',')
- {
- pat++;
- if (*pat == '\\')
- {
- n = 255;
- }
- else
- {
- tmppat = convert_digit(pat, &n);
- if (tmppat == NULL) ERROR;
- pat = tmppat;
- if (*pat != '\\') ERROR;
- }
- *buf++ = n;
- }
- else ERROR;
- last = NULL;
- pat++;
- if (*pat != '}') ERROR;
- pat++;
- break; /* case '{' */
-
- case '(':
- oparen++;
- if (oparen > 9) ERROR;
- *buf++ = OPAREN;
- break;
- case ')':
- if (oparen == 0) ERROR;
- oparen--;
- nparen++;
- *buf++ = CPAREN;
- break;
-
- case 0: ERROR;
- default:
- goto literal_char;
- }
- break;
-
- case '[':
-
- *buf = RANGE;
- last = buf++;
-
- if (buf + 32 >= ebuf) ERROR;
-
- for (i = 0; i < 32; i++) buf[i] = 0;
- c = *pat++;
- if (c == '^')
- {
- reverse = 1;
- SET_BIT(buf, '\n');
- c = *pat++;
- }
-
- if (c == ']')
- {
- SET_BIT(buf, c);
- c = *pat++;
- }
- while (c && (c != ']'))
- {
- if (c == '\\')
- {
- c = *pat++;
- switch(c)
- {
- case 'n': c = '\n'; break;
- case 't': c = '\t'; break;
- case 0: ERROR;
- }
- }
-
- if (*pat == '-')
- {
- pat++;
- while (c < *pat)
- {
- if (cs == 0)
- {
- SET_BIT(buf, UPPERCASE(c));
- SET_BIT(buf, LOWERCASE(c));
- }
- else SET_BIT(buf, c);
- c++;
- }
- }
- if (cs == 0)
- {
- SET_BIT(buf, UPPERCASE(c));
- SET_BIT(buf, LOWERCASE(c));
- }
- else SET_BIT(buf, c);
- c = *pat++;
- }
- if (c != ']') ERROR;
- if (reverse) for (i = 0; i < 32; i++) buf[i] = buf[i] ^ 0xFF;
- reverse = 0;
- buf += 32;
- min_length++;
- break;
-
- case '.':
- last = buf;
- *buf++ = ANY;
- min_length++;
- break;
-
- case '*':
- if (last == NULL) goto literal_char;
- *last |= STAR;
- min_length--;
- last = NULL;
- break;
-
- case '+':
- if (last == NULL) goto literal_char;
- *last |= LEAST_ONCE;
- last = NULL;
- break;
-
- case '?':
- if (last == NULL) goto literal_char;
- *last |= MAYBE_ONCE;
- last = NULL;
- min_length--;
- break;
-
- literal_char:
- default:
- /* This is to keep track of longest substring */
- min_length++;
- this_max_mm++;
- if (last_count + 1 == count)
- {
- if (this_max_mm == 1)
- {
- this_mm_p = buf;
- }
- else if (max_mm < this_max_mm)
- {
- mm_p = this_mm_p;
- max_mm = this_max_mm;
- }
- }
- else
- {
- this_mm_p = buf;
- this_max_mm = 1;
- }
-
- last_count = count;
-
- last = buf;
- *buf++ = LITERAL;
- *buf++ = UPPERCASE(c);
- }
- }
- *buf = 0;
- /* Check for ordinary search */
- ebuf = buf;
- buf = reg->buf;
-
- if (no_osearch) ordinary_search = 0;
- else
- {
- ordinary_search = 1;
- while (buf < ebuf)
- {
- if (*buf != LITERAL)
- {
- ordinary_search = 0;
- break;
- }
- buf += 2;
- }
- }
-
- reg->osearch = ordinary_search;
- reg->must_match_str[15] = 0;
- reg->min_length = (min_length > 0) ? (unsigned int) min_length : 0;
- if (ordinary_search)
- {
- strncpy((char *) reg->must_match_str, (char *) reg->pat, 15);
- reg->must_match = 1;
- return(0);
- }
- /* check for longest substring of pattern */
- reg->must_match = 0;
- if ((mm_p == NULL) && (this_mm_p != NULL)) mm_p = this_mm_p;
- if (mm_p == NULL)
- {
- return (0);
- }
- n = 15;
- pat = reg->must_match_str;
- buf = mm_p;
- while (n--)
- {
- if (*buf++ != LITERAL) break;
- *pat++ = *buf++;
- }
- *pat = 0;
- if (pat != reg->must_match_str) reg->must_match = 1;
- return(0);
-}
-
-char *SLregexp_quote_string (char *re, char *buf, unsigned int buflen)
-{
- char ch;
- char *b, *bmax;
-
- if (re == NULL) return NULL;
-
- b = buf;
- bmax = buf + buflen;
-
- while (b < bmax)
- {
- switch (ch = *re++)
- {
- case 0:
- *b = 0;
- return buf;
-
- case '$':
- case '\\':
- case '[':
- case ']':
- case '.':
- case '^':
- case '*':
- case '+':
- case '?':
- *b++ = '\\';
- if (b == bmax) break;
- /* drop */
-
- default:
- *b++ = ch;
- }
- }
- return NULL;
-}
-
-#if 0
-#define MAX_EXP 4096
-int main(int argc, char **argv)
-{
- FILE *fp;
- char *regexp, *file;
- char expbuf[MAX_EXP], buf[512];
- SLRegexp_Type reg;
-
- file = argv[2];
- regexp = argv[1];
-
- if (NULL == (fp = fopen(file, "r")))
- {
- fprintf(stderr, "File not open\n");
- return(1);
- }
-
- reg.buf = expbuf;
- reg.buf_len = MAX_EXP;
- reg.pat = regexp;
- reg.case_sensitive = 1;
-
- if (!regexp_compile(&reg)) while (NULL != fgets(buf, 511, fp))
- {
- if (reg.osearch)
- {
- if (NULL == strstr(buf, reg.pat)) continue;
- }
- else
- {
- if (reg.must_match && (NULL == strstr(buf, reg.must_match_str))) continue;
- if (0 == regexp_match(buf, buf + strlen(buf), &reg)) continue;
- }
-
- fputs(buf, stdout);
- }
- return (0);
-}
-#endif
diff --git a/mdk-stage1/slang/slrline.c b/mdk-stage1/slang/slrline.c
deleted file mode 100644
index 1874be0bb..000000000
--- a/mdk-stage1/slang/slrline.c
+++ /dev/null
@@ -1,836 +0,0 @@
-/* SLang_read_line interface --- uses SLang tty stuff */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-#ifdef REAL_UNIX_SYSTEM
-int SLang_RL_EOF_Char = 4;
-#else
-int SLang_RL_EOF_Char = 26;
-#endif
-
-int SLang_Rline_Quit;
-static SLang_RLine_Info_Type *This_RLI;
-
-static unsigned char Char_Widths[256];
-static void position_cursor (int);
-
-static void rl_beep (void)
-{
- putc(7, stdout);
- fflush (stdout);
-}
-
-/* editing functions */
-static int rl_bol (void)
-{
- if (This_RLI->point == 0) return 0;
- This_RLI->point = 0;
- return 1;
-}
-
-static int rl_eol (void)
-{
- if (This_RLI->point == This_RLI->len) return 0;
- This_RLI->point = This_RLI->len;
- return 1;
-}
-
-static int rl_right (void)
-{
- if (This_RLI->point == This_RLI->len) return 0;
- This_RLI->point++;
- return 1;
-}
-
-static int rl_left (void)
-{
- if (This_RLI->point == 0) return 0;
- This_RLI->point--;
- return 1;
-}
-
-static int rl_self_insert (void)
-{
- unsigned char *pmin, *p;
-
- if (This_RLI->len == This_RLI->buf_len)
- {
- rl_beep ();
- return 0;
- }
-
- pmin = This_RLI->buf + This_RLI->point;
- p = This_RLI->buf + This_RLI->len;
- while (p > pmin)
- {
- *p = *(p - 1);
- p--;
- }
- *pmin = SLang_Last_Key_Char;
-
- This_RLI->len++;
- This_RLI->point++;
- if ((This_RLI->curs_pos + 2 >= This_RLI->edit_width)
- || (This_RLI->tt_insert == NULL)
- || (Char_Widths[SLang_Last_Key_Char] != 1)) return 1;
-
- (*This_RLI->tt_insert)((char) SLang_Last_Key_Char);
- /* update screen buf */
- p = This_RLI->old_upd + (This_RLI->len - 1);
- pmin = This_RLI->old_upd + (This_RLI->point - 1);
- while (p > pmin)
- {
- *p = *(p - 1);
- p--;
- }
- *pmin = SLang_Last_Key_Char;
- return 0;
-}
-
-int SLang_rline_insert (char *s)
-{
- unsigned char *pmin, *p;
- int n;
-
- n = strlen (s);
- if (n > This_RLI->buf_len - This_RLI->len)
- n = This_RLI->buf_len - This_RLI->len;
-
- if (n == 0) return 0;
-
- pmin = This_RLI->buf + This_RLI->point;
- p = This_RLI->buf + (This_RLI->len - 1);
-
- while (p >= pmin)
- {
- *(p + n) = *p;
- p--;
- }
- SLMEMCPY ((char *) pmin, s, n);
-
- This_RLI->len += n;
- This_RLI->point += n;
- return n;
-}
-
-static int rl_deln (int n)
-{
- unsigned char *pmax, *p;
-
- p = This_RLI->buf + This_RLI->point;
- pmax = This_RLI->buf + This_RLI->len;
-
- if (p + n > pmax) n = (int) (pmax - p);
- while (p < pmax)
- {
- *p = *(p + n);
- p++;
- }
- This_RLI->len -= n;
- return n;
-}
-
-static int rl_del (void)
-{
- return rl_deln(1);
-}
-
-static int rl_quote_insert (void)
-{
- int err = SLang_Error;
- SLang_Error = 0;
- SLang_Last_Key_Char = (*This_RLI->getkey)();
- rl_self_insert ();
- if (SLang_Error == SL_USER_BREAK) SLang_Error = 0;
- else SLang_Error = err;
- return 1;
-}
-
-static int rl_trim (void)
-{
- unsigned char *p, *pmax, *p1;
- p = This_RLI->buf + This_RLI->point;
- pmax = This_RLI->buf + This_RLI->len;
-
- if (p == pmax)
- {
- if (p == This_RLI->buf) return 0;
- p--;
- }
-
- if ((*p != ' ') && (*p != '\t')) return 0;
- p1 = p;
- while ((p1 < pmax) && ((*p1 == ' ') || (*p1 == '\t'))) p1++;
- pmax = p1;
- p1 = This_RLI->buf;
-
- while ((p >= p1) && ((*p == ' ') || (*p == '\t'))) p--;
- if (p == pmax) return 0;
- p++;
-
- This_RLI->point = (int) (p - p1);
- return rl_deln ((int) (pmax - p));
-}
-
-static int rl_bdel (void)
-{
- if (rl_left()) return rl_del();
- return 0;
-}
-
-static int rl_deleol (void)
-{
- if (This_RLI->point == This_RLI->len) return 0;
- *(This_RLI->buf + This_RLI->point) = 0;
- This_RLI->len = This_RLI->point;
- return 1;
-}
-
-static int rl_delete_line (void)
-{
- This_RLI->point = 0;
- *(This_RLI->buf + This_RLI->point) = 0;
- This_RLI->len = 0;
- return 1;
-}
-
-static int rl_enter (void)
-{
- *(This_RLI->buf + This_RLI->len) = 0;
- SLang_Rline_Quit = 1;
- return 1;
-}
-
-static SLKeyMap_List_Type *RL_Keymap;
-
-/* This update is designed for dumb terminals. It assumes only that the
- * terminal can backspace via ^H, and move cursor to start of line via ^M.
- * There is a hook so the user can provide a more sophisticated update if
- * necessary.
- */
-
-static void position_cursor (int col)
-{
- unsigned char *p, *pmax;
- int dc;
-
- if (col == This_RLI->curs_pos)
- {
- fflush (stdout);
- return;
- }
-
- if (This_RLI->tt_goto_column != NULL)
- {
- (*This_RLI->tt_goto_column)(col);
- This_RLI->curs_pos = col;
- fflush (stdout);
- return;
- }
-
- dc = This_RLI->curs_pos - col;
- if (dc < 0)
- {
- p = This_RLI->new_upd + This_RLI->curs_pos;
- pmax = This_RLI->new_upd + col;
- while (p < pmax) putc((char) *p++, stdout);
- }
- else
- {
- if (dc < col)
- {
- while (dc--) putc(8, stdout);
- }
- else
- {
- putc('\r', stdout);
- p = This_RLI->new_upd;
- pmax = This_RLI->new_upd + col;
- while (p < pmax) putc((char) *p++, stdout);
- }
- }
- This_RLI->curs_pos = col;
- fflush (stdout);
-}
-
-static void erase_eol (SLang_RLine_Info_Type *rli)
-{
- unsigned char *p, *pmax;
-
- p = rli->old_upd + rli->curs_pos;
- pmax = rli->old_upd + rli->old_upd_len;
-
- while (p++ < pmax) putc(' ', stdout);
-
- rli->curs_pos = rli->old_upd_len;
-}
-
-static unsigned char *spit_out(SLang_RLine_Info_Type *rli, unsigned char *p)
-{
- unsigned char *pmax;
- position_cursor ((int) (p - rli->new_upd));
- pmax = rli->new_upd + rli->new_upd_len;
- while (p < pmax) putc((char) *p++, stdout);
- rli->curs_pos = rli->new_upd_len;
- return pmax;
-}
-
-static void really_update (SLang_RLine_Info_Type *rli, int new_curs_position)
-{
- unsigned char *b = rli->old_upd, *p = rli->new_upd, chb, chp;
- unsigned char *pmax;
-
- if (rli->update_hook != NULL)
- {
- (*rli->update_hook)(p, rli->edit_width, new_curs_position);
- }
- else
- {
- pmax = p + rli->edit_width;
- while (p < pmax)
- {
- chb = *b++; chp = *p++;
- if (chb == chp) continue;
-
- if (rli->old_upd_len <= rli->new_upd_len)
- {
- /* easy one */
- (void) spit_out (rli, p - 1);
- break;
- }
- spit_out(rli, p - 1);
- erase_eol (rli);
- break;
- }
- position_cursor (new_curs_position);
- }
-
- /* update finished, so swap */
-
- rli->old_upd_len = rli->new_upd_len;
- p = rli->old_upd;
- rli->old_upd = rli->new_upd;
- rli->new_upd = p;
-}
-
-static void RLupdate (SLang_RLine_Info_Type *rli)
-{
- int len, dlen, start_len = 0, prompt_len = 0, tw = 0, count;
- int want_cursor_pos;
- unsigned char *b, chb, *b_point, *p;
- int no_echo;
-
- no_echo = rli->flags & SL_RLINE_NO_ECHO;
-
- b_point = (unsigned char *) (rli->buf + rli->point);
- *(rli->buf + rli->len) = 0;
-
- /* expand characters for output buffer --- handle prompt first.
- * Do two passes --- first to find out where to begin upon horiz
- * scroll and the second to actually fill the buffer. */
- len = 0;
- count = 2; /* once for prompt and once for buf */
-
- b = (unsigned char *) rli->prompt;
- while (count--)
- {
- if ((count == 0) && no_echo)
- break;
-
- /* The prompt could be NULL */
- if (b != NULL) while ((chb = *b) != 0)
- {
- /* This will ensure that the screen is scrolled a third of the edit
- * width each time */
- if (b_point == b) break;
- dlen = Char_Widths[chb];
- if ((chb == '\t') && tw)
- {
- dlen = tw * ((len - prompt_len) / tw + 1) - (len - prompt_len);
- }
- len += dlen;
- b++;
- }
- tw = rli->tab;
- b = (unsigned char *) rli->buf;
- if (count == 1) want_cursor_pos = prompt_len = len;
- }
-
- if (len < rli->edit_width - rli->dhscroll) start_len = 0;
- else if ((rli->start_column > len)
- || (rli->start_column + rli->edit_width <= len))
- {
- start_len = len - (rli->edit_width - rli->dhscroll);
- if (start_len < 0) start_len = 0;
- }
- else start_len = rli->start_column;
- rli->start_column = start_len;
-
- want_cursor_pos = len - start_len;
-
- /* second pass */
- p = rli->new_upd;
-
- len = 0;
- count = 2;
- b = (unsigned char *) rli->prompt;
- if (b == NULL) b = (unsigned char *) "";
-
- while ((len < start_len) && (*b))
- {
- len += Char_Widths[*b++];
- }
-
- tw = 0;
- if (*b == 0)
- {
- b = (unsigned char *) rli->buf;
- while (len < start_len)
- {
- len += Char_Widths[*b++];
- }
- tw = rli->tab;
- count--;
- }
-
- len = 0;
- while (count--)
- {
- if ((count == 0) && (no_echo))
- break;
-
- while ((len < rli->edit_width) && ((chb = *b++) != 0))
- {
- dlen = Char_Widths[chb];
- if (dlen == 1) *p++ = chb;
- else
- {
- if ((chb == '\t') && tw)
- {
- dlen = tw * ((len + start_len - prompt_len) / tw + 1) - (len + start_len - prompt_len);
- len += dlen; /* ok since dlen comes out 0 */
- if (len > rli->edit_width) dlen = len - rli->edit_width;
- while (dlen--) *p++ = ' ';
- dlen = 0;
- }
- else
- {
- if (dlen == 3)
- {
- chb &= 0x7F;
- *p++ = '~';
- }
-
- *p++ = '^';
- if (chb == 127) *p++ = '?';
- else *p++ = chb + '@';
- }
- }
- len += dlen;
- }
- /* if (start_len > prompt_len) break; */
- tw = rli->tab;
- b = (unsigned char *) rli->buf;
- }
-
- rli->new_upd_len = (int) (p - rli->new_upd);
- while (p < rli->new_upd + rli->edit_width) *p++ = ' ';
- really_update (rli, want_cursor_pos);
-}
-
-void SLrline_redraw (SLang_RLine_Info_Type *rli)
-{
- unsigned char *p = rli->new_upd;
- unsigned char *pmax = p + rli->edit_width;
- while (p < pmax) *p++ = ' ';
- rli->new_upd_len = rli->edit_width;
- really_update (rli, 0);
- RLupdate (rli);
-}
-
-static int rl_eof_insert (void)
-{
- if (This_RLI->len == 0)
- {
- SLang_Last_Key_Char = SLang_RL_EOF_Char;
- /* rl_self_insert (); */
- return rl_enter ();
- }
- return 0;
-}
-
-/* This is very naive. It knows very little about nesting and nothing
- * about quoting.
- */
-static void blink_match (SLang_RLine_Info_Type *rli)
-{
- unsigned char bra, ket;
- unsigned int delta_column;
- unsigned char *p, *pmin;
- int dq_level, sq_level;
- int level;
-
- pmin = rli->buf;
- p = pmin + rli->point;
- if (pmin == p)
- return;
-
- ket = SLang_Last_Key_Char;
- switch (ket)
- {
- case ')':
- bra = '(';
- break;
- case ']':
- bra = '[';
- break;
- case '}':
- bra = '{';
- break;
- default:
- return;
- }
-
- level = 0;
- sq_level = dq_level = 0;
-
- delta_column = 0;
- while (p > pmin)
- {
- char ch;
-
- p--;
- delta_column++;
- ch = *p;
-
- if (ch == ket)
- {
- if ((dq_level == 0) && (sq_level == 0))
- level++;
- }
- else if (ch == bra)
- {
- if ((dq_level != 0) || (sq_level != 0))
- continue;
-
- level--;
- if (level == 0)
- {
- rli->point -= delta_column;
- RLupdate (rli);
- (*rli->input_pending)(10);
- rli->point += delta_column;
- RLupdate (rli);
- break;
- }
- if (level < 0)
- break;
- }
- else if (ch == '"') dq_level = !dq_level;
- else if (ch == '\'') sq_level = !sq_level;
- }
-}
-
-int SLang_read_line (SLang_RLine_Info_Type *rli)
-{
- unsigned char *p, *pmax;
- SLang_Key_Type *key;
-
- SLang_Rline_Quit = 0;
- This_RLI = rli;
- p = rli->old_upd; pmax = p + rli->edit_width;
- while (p < pmax) *p++ = ' ';
-
- /* Sanity checking */
- rli->len = strlen ((char *) rli->buf);
- if (rli->len >= rli->buf_len)
- {
- rli->len = 0;
- *rli->buf = 0;
- }
- if (rli->point > rli->len) rli->point = rli->len;
- if (rli->point < 0) rli->point = 0;
-
- rli->curs_pos = rli->start_column = 0;
- rli->new_upd_len = rli->old_upd_len = 0;
-
- This_RLI->last_fun = NULL;
- if (rli->update_hook == NULL)
- putc ('\r', stdout);
-
- RLupdate (rli);
-
- while (1)
- {
- key = SLang_do_key (RL_Keymap, (int (*)(void)) rli->getkey);
-
- if ((key == NULL) || (key->f.f == NULL))
- rl_beep ();
- else
- {
- if ((SLang_Last_Key_Char == SLang_RL_EOF_Char)
- && (*key->str == 2)
- && (This_RLI->len == 0))
- rl_eof_insert ();
- else if (key->type == SLKEY_F_INTRINSIC)
- {
- if ((key->f.f)())
- RLupdate (rli);
-
- if ((rli->flags & SL_RLINE_BLINK_MATCH)
- && (rli->input_pending != NULL))
- blink_match (rli);
- }
-
- if (SLang_Rline_Quit)
- {
- This_RLI->buf[This_RLI->len] = 0;
- if (SLang_Error == SL_USER_BREAK)
- {
- SLang_Error = 0;
- return -1;
- }
- return This_RLI->len;
- }
- }
- if (key != NULL)
- This_RLI->last_fun = key->f.f;
- }
-}
-
-static int rl_abort (void)
-{
- rl_delete_line ();
- return rl_enter ();
-}
-
-/* TTY interface --- ANSI */
-
-static void ansi_goto_column (int n)
-{
- putc('\r', stdout);
- if (n) fprintf(stdout, "\033[%dC", n);
-}
-
-static void rl_select_line (SLang_Read_Line_Type *p)
-{
- This_RLI->last = p;
- strcpy ((char *) This_RLI->buf, (char *) p->buf);
- This_RLI->point = This_RLI->len = strlen((char *) p->buf);
-}
-static int rl_next_line (void);
-static int rl_prev_line (void)
-{
- SLang_Read_Line_Type *prev;
-
- if (((This_RLI->last_fun != (FVOID_STAR) rl_prev_line)
- && (This_RLI->last_fun != (FVOID_STAR) rl_next_line))
- || (This_RLI->last == NULL))
- {
- prev = This_RLI->tail;
- }
- else prev = This_RLI->last->prev;
-
- if (prev == NULL)
- {
- rl_beep ();
- return 0;
- }
-
- rl_select_line (prev);
- return 1;
-}
-static int rl_redraw (void)
-{
- SLrline_redraw (This_RLI);
- return 1;
-}
-
-static int rl_next_line (void)
-{
- SLang_Read_Line_Type *next;
-
- if (((This_RLI->last_fun != (FVOID_STAR) rl_prev_line)
- && (This_RLI->last_fun != (FVOID_STAR) rl_next_line))
- || (This_RLI->last == NULL))
- {
- rl_beep ();
- return 0;
- }
-
- next = This_RLI->last->next;
-
- if (next == NULL)
- {
- This_RLI->len = This_RLI->point = 0;
- *This_RLI->buf = 0;
- This_RLI->last = NULL;
- }
- else rl_select_line (next);
- return 1;
-}
-
-static SLKeymap_Function_Type SLReadLine_Functions[] =
-{
- {"up", rl_prev_line},
- {"down", rl_next_line},
- {"bol", rl_bol},
- {"eol", rl_eol},
- {"right", rl_right},
- {"left", rl_left},
- {"self_insert", rl_self_insert},
- {"bdel", rl_bdel},
- {"del", rl_del},
- {"deleol", rl_deleol},
- {"enter", rl_enter},
- {"trim", rl_trim},
- {"quoted_insert", rl_quote_insert},
- {(char *) NULL, NULL}
-};
-
-int SLang_init_readline (SLang_RLine_Info_Type *rli)
-{
- int ch;
- char simple[2];
-
- if (RL_Keymap == NULL)
- {
- simple[1] = 0;
- if (NULL == (RL_Keymap = SLang_create_keymap ("ReadLine", NULL)))
- return -1;
-
- RL_Keymap->functions = SLReadLine_Functions;
-
- /* This breaks under some DEC ALPHA compilers (scary!) */
-#ifndef __DECC
- for (ch = ' '; ch < 256; ch++)
- {
- simple[0] = (char) ch;
- SLkm_define_key (simple, (FVOID_STAR) rl_self_insert, RL_Keymap);
- }
-#else
- ch = ' ';
- while (1)
- {
- simple[0] = (char) ch;
- SLkm_define_key (simple, (FVOID_STAR) rl_self_insert, RL_Keymap);
- ch = ch + 1;
- if (ch == 256) break;
- }
-#endif /* NOT __DECC */
-
- simple[0] = SLang_Abort_Char;
- SLkm_define_key (simple, (FVOID_STAR) rl_abort, RL_Keymap);
- simple[0] = SLang_RL_EOF_Char;
- SLkm_define_key (simple, (FVOID_STAR) rl_eof_insert, RL_Keymap);
-
-#ifndef IBMPC_SYSTEM
- SLkm_define_key ("^[[A", (FVOID_STAR) rl_prev_line, RL_Keymap);
- SLkm_define_key ("^[[B", (FVOID_STAR) rl_next_line, RL_Keymap);
- SLkm_define_key ("^[[C", (FVOID_STAR) rl_right, RL_Keymap);
- SLkm_define_key ("^[[D", (FVOID_STAR) rl_left, RL_Keymap);
- SLkm_define_key ("^[OA", (FVOID_STAR) rl_prev_line, RL_Keymap);
- SLkm_define_key ("^[OB", (FVOID_STAR) rl_next_line, RL_Keymap);
- SLkm_define_key ("^[OC", (FVOID_STAR) rl_right, RL_Keymap);
- SLkm_define_key ("^[OD", (FVOID_STAR) rl_left, RL_Keymap);
-#else
- SLkm_define_key ("^@H", (FVOID_STAR) rl_prev_line, RL_Keymap);
- SLkm_define_key ("^@P", (FVOID_STAR) rl_next_line, RL_Keymap);
- SLkm_define_key ("^@M", (FVOID_STAR) rl_right, RL_Keymap);
- SLkm_define_key ("^@K", (FVOID_STAR) rl_left, RL_Keymap);
- SLkm_define_key ("^@S", (FVOID_STAR) rl_del, RL_Keymap);
- SLkm_define_key ("^@O", (FVOID_STAR) rl_eol, RL_Keymap);
- SLkm_define_key ("^@G", (FVOID_STAR) rl_bol, RL_Keymap);
-
- SLkm_define_key ("\xE0H", (FVOID_STAR) rl_prev_line, RL_Keymap);
- SLkm_define_key ("\xE0P", (FVOID_STAR) rl_next_line, RL_Keymap);
- SLkm_define_key ("\xE0M", (FVOID_STAR) rl_right, RL_Keymap);
- SLkm_define_key ("\xE0K", (FVOID_STAR) rl_left, RL_Keymap);
- SLkm_define_key ("\xE0S", (FVOID_STAR) rl_del, RL_Keymap);
- SLkm_define_key ("\xE0O", (FVOID_STAR) rl_eol, RL_Keymap);
- SLkm_define_key ("\xE0G", (FVOID_STAR) rl_bol, RL_Keymap);
-#endif
- SLkm_define_key ("^C", (FVOID_STAR) rl_abort, RL_Keymap);
- SLkm_define_key ("^E", (FVOID_STAR) rl_eol, RL_Keymap);
- SLkm_define_key ("^G", (FVOID_STAR) rl_abort, RL_Keymap);
- SLkm_define_key ("^I", (FVOID_STAR) rl_self_insert, RL_Keymap);
- SLkm_define_key ("^A", (FVOID_STAR) rl_bol, RL_Keymap);
- SLkm_define_key ("\r", (FVOID_STAR) rl_enter, RL_Keymap);
- SLkm_define_key ("\n", (FVOID_STAR) rl_enter, RL_Keymap);
- SLkm_define_key ("^K", (FVOID_STAR) rl_deleol, RL_Keymap);
- SLkm_define_key ("^L", (FVOID_STAR) rl_deleol, RL_Keymap);
- SLkm_define_key ("^V", (FVOID_STAR) rl_del, RL_Keymap);
- SLkm_define_key ("^D", (FVOID_STAR) rl_del, RL_Keymap);
- SLkm_define_key ("^F", (FVOID_STAR) rl_right, RL_Keymap);
- SLkm_define_key ("^B", (FVOID_STAR) rl_left, RL_Keymap);
- SLkm_define_key ("^?", (FVOID_STAR) rl_bdel, RL_Keymap);
- SLkm_define_key ("^H", (FVOID_STAR) rl_bdel, RL_Keymap);
- SLkm_define_key ("^P", (FVOID_STAR) rl_prev_line, RL_Keymap);
- SLkm_define_key ("^N", (FVOID_STAR) rl_next_line, RL_Keymap);
- SLkm_define_key ("^R", (FVOID_STAR) rl_redraw, RL_Keymap);
- SLkm_define_key ("`", (FVOID_STAR) rl_quote_insert, RL_Keymap);
- SLkm_define_key ("\033\\", (FVOID_STAR) rl_trim, RL_Keymap);
- if (SLang_Error) return -1;
- }
-
- if (rli->prompt == NULL) rli->prompt = "";
- if (rli->keymap == NULL) rli->keymap = RL_Keymap;
- rli->old_upd = rli->upd_buf1;
- rli->new_upd = rli->upd_buf2;
- *rli->buf = 0;
- rli->point = 0;
-
- if (rli->flags & SL_RLINE_USE_ANSI)
- {
- if (rli->tt_goto_column == NULL) rli->tt_goto_column = ansi_goto_column;
- }
-
- if (Char_Widths[0] == 2) return 0;
-
- for (ch = 0; ch < 32; ch++) Char_Widths[ch] = 2;
- for (ch = 32; ch < 256; ch++) Char_Widths[ch] = 1;
- Char_Widths[127] = 2;
-#ifndef IBMPC_SYSTEM
- for (ch = 128; ch < 160; ch++) Char_Widths[ch] = 3;
-#endif
-
- return 0;
-}
-
-SLang_Read_Line_Type *SLang_rline_save_line (SLang_RLine_Info_Type *rli)
-{
- SLang_Read_Line_Type *rl = NULL;
- unsigned char *buf;
-
- if ((rli == NULL) || (rli->buf == NULL))
- return NULL;
-
- if (NULL == (rl = (SLang_Read_Line_Type *) SLmalloc (sizeof (SLang_Read_Line_Type)))
- || (NULL == (buf = (unsigned char *) SLmake_string ((char *)rli->buf))))
- {
- SLfree ((char *)rl);
- return NULL;
- }
- rl->buf = buf;
- rl->buf_len = strlen ((char *)buf);
- rl->num = rl->misc = 0;
- rl->next = rl->prev = NULL;
-
- if (rli->tail != NULL)
- {
- rli->tail->next = rl;
- rl->prev = rli->tail;
- }
- rli->tail = rl;
-
- return rl;
-}
diff --git a/mdk-stage1/slang/slscanf.c b/mdk-stage1/slang/slscanf.c
deleted file mode 100644
index 5bd93ff41..000000000
--- a/mdk-stage1/slang/slscanf.c
+++ /dev/null
@@ -1,718 +0,0 @@
-/* sscanf function for S-Lang */
-/* Copyright (c) 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-#include <ctype.h>
-#include <math.h>
-#include <errno.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-static char *skip_whitespace (char *s)
-{
- while (isspace (*s))
- s++;
-
- return s;
-}
-
-static void init_map (unsigned char map[256], int base)
-{
- memset ((char *) map, 0xFF, 256);
-
- map['0'] = 0; map['1'] = 1; map['2'] = 2; map['3'] = 3;
- map['4'] = 4; map['5'] = 5; map['6'] = 6; map['7'] = 7;
- if (base == 8)
- return;
-
- map['8'] = 8; map['9'] = 9;
- if (base == 10)
- return;
-
- map['A'] = 10; map['B'] = 11; map['C'] = 12; map['D'] = 13;
- map['E'] = 14; map['F'] = 15; map['a'] = 10; map['b'] = 11;
- map['c'] = 12; map['d'] = 13; map['e'] = 14; map['f'] = 15;
-}
-
-static char *get_sign (char *s, char *smax, int *sign)
-{
- *sign = 1;
- if (s + 1 < smax)
- {
- if (*s == '+') s++;
- else if (*s == '-')
- {
- s++;
- *sign = -1;
- }
- }
- return s;
-}
-
-
-static int parse_long (char **sp, char *smax, long *np,
- long base, unsigned char map[256])
-{
- char *s, *s0;
- long n;
- int sign;
-
- s = s0 = get_sign (*sp, smax, &sign);
-
- n = 0;
- while (s < smax)
- {
- unsigned char value;
-
- value = map [(unsigned char) *s];
- if (value == 0xFF)
- break;
-
- n = base * n + value;
- s++;
- }
-
- *sp = s;
- if (s == s0)
- return 0;
-
- *np = n * sign;
-
- return 1;
-}
-
-
-static int parse_int (char **sp, char *smax, int *np,
- long base, unsigned char map[256])
-{
- long n;
- int status;
-
- if (1 == (status = parse_long (sp, smax, &n, base, map)))
- *np = (int) n;
- return status;
-}
-
-static int parse_short (char **sp, char *smax, short *np,
- long base, unsigned char map[256])
-{
- long n;
- int status;
-
- if (1 == (status = parse_long (sp, smax, &n, base, map)))
- *np = (short) n;
- return status;
-}
-
-static int parse_ulong (char **sp, char *smax, unsigned long *np,
- long base, unsigned char map[256])
-{
- return parse_long (sp, smax, (long *) np, base, map);
-}
-
-static int parse_uint (char **sp, char *smax, unsigned int *np,
- long base, unsigned char map[256])
-{
- return parse_int (sp, smax, (int *) np, base, map);
-}
-
-static int parse_ushort (char **sp, char *smax, unsigned short *np,
- long base, unsigned char map[256])
-{
- return parse_short (sp, smax, (short *) np, base, map);
-}
-
-#if SLANG_HAS_FLOAT
-/*
- * In an ideal world, strtod would be the correct function to use. However,
- * there may be problems relying on this function because some systems do
- * not support and some that do get it wrong. So, I will handle the parsing
- * of the string and let atof or strtod handle the arithmetic.
- */
-static int parse_double (char **sp, char *smax, double *d)
-{
- char *s, *s0;
- int sign;
- int expon;
- unsigned char map[256];
- char buf[128];
- int has_leading_zeros;
- char *start_pos, *sign_pos;
- char *b, *bmax;
-
- start_pos = *sp;
- s = get_sign (start_pos, smax, &sign);
- if (s >= smax)
- {
- errno = _SLerrno_errno = EINVAL;
- return 0;
- }
-
- /* Prepare the buffer that will be passed to strtod */
- /* Allow the exponent to be 5 significant digits: E+xxxxx\0 */
- bmax = buf + (sizeof (buf) - 8);
- buf[0] = '0'; buf[1] = '.';
- b = buf + 2;
-
- init_map (map, 10);
-
- /* Skip leading 0s */
- s0 = s;
- while ((s < smax) && (*s == '0'))
- s++;
- has_leading_zeros = (s != s0);
-
- expon = 0;
- while (s < smax)
- {
- unsigned char value = map [(unsigned char) *s];
-
- if (value == 0xFF)
- break;
-
- if (b < bmax)
- *b++ = *s;
-
- expon++;
- s++;
- }
-
- if ((s < smax) && (*s == '.'))
- {
- s++;
- if (b == buf + 2) /* nothing added yet */
- {
- while ((s < smax) && (*s == '0'))
- {
- expon--;
- s++;
- }
- }
-
- while (s < smax)
- {
- unsigned char value = map [(unsigned char) *s];
-
- if (value == 0xFF)
- break;
-
- if (b < bmax)
- *b++ = *s;
- s++;
- }
- }
-
- if ((b == buf + 2)
- && (has_leading_zeros == 0))
- {
- *sp = start_pos;
- errno = EINVAL;
- return 0;
- }
-
- if ((s + 1 < smax) && ((*s == 'E') || (*s == 'e')))
- {
- int e;
- int esign;
-
- s0 = s;
- s = get_sign (s + 1, smax, &esign);
- sign_pos = s;
- e = 0;
- while (s < smax)
- {
- unsigned char value = map [(unsigned char) *s];
- if (value == 0xFF)
- break;
- if (e < 25000) /* avoid overflow if 16 bit */
- e = 10 * e + value;
- s++;
- }
-#ifdef ERANGE
- if (e >= 25000)
- errno = ERANGE;
-#endif
- if (s == sign_pos)
- s = s0; /* ...E-X */
- else
- {
- e = esign * e;
- expon += e;
- }
- }
-
- if (expon != 0)
- sprintf (b, "e%d", expon);
- else
- *b = 0;
-
- *sp = s;
-#if HAVE_STRTOD
- *d = sign * strtod (buf, NULL);
-#else
- *d = sign * atof (buf);
-#endif
- return 1;
-}
-
-static int parse_float (char **sp, char *smax, float *d)
-{
- double x;
- if (1 == parse_double (sp, smax, &x))
- {
- *d = (float) x;
- return 1;
- }
- return 0;
-}
-#endif /* SLANG_HAS_FLOAT */
-
-static int parse_string (char **sp, char *smax, char **str)
-{
- char *s, *s0;
-
- s0 = s = *sp;
- while (s < smax)
- {
- if (isspace (*s))
- break;
- s++;
- }
- if (NULL == (*str = SLang_create_nslstring (s0, (unsigned int) (s - s0))))
- return -1;
-
- *sp = s;
- return 1;
-}
-
-static int parse_bstring (char **sp, char *smax, char **str)
-{
- char *s;
-
- s = *sp;
- if (NULL == (*str = SLang_create_nslstring (s, (unsigned int) (smax - s))))
- return -1;
-
- *sp = smax;
- return 1;
-}
-
-static int parse_range (char **sp, char *smax, char **fp, char **str)
-{
- char *s, *s0;
- char *range;
- char *f;
- unsigned char map[256];
- unsigned char reverse;
-
- /* How can one represent a range with just '^'? The naive answer is
- * is [^]. However, this may be interpreted as meaning any character
- * but ']' and others. Let's assume that the user will not use a range
- * to match '^'.
- */
- f = *fp;
- /* f is a pointer to (one char after) [...]. */
- if (*f == '^')
- {
- f++;
- reverse = 1;
- }
- else reverse = 0;
-
- s0 = f;
- if (*f == ']')
- f++;
-
- while (1)
- {
- char ch = *f;
-
- if (ch == 0)
- {
- SLang_verror (SL_INVALID_PARM, "Unexpected end of range in format");
- return -1;
- }
- if (ch == ']')
- break;
- f++;
- }
- if (NULL == (range = SLmake_nstring (s0, (unsigned int) (f - s0))))
- return -1;
- *fp = f + 1; /* skip ] */
-
- SLmake_lut (map, (unsigned char *) range, reverse);
- SLfree (range);
-
- s0 = s = *sp;
- while ((s < smax) && map [(unsigned char) *s])
- s++;
-
- if (NULL == (*str = SLang_create_nslstring (s0, (unsigned int) (s - s0))))
- return -1;
-
- *sp = s;
- return 1;
-}
-
-
-int _SLang_sscanf (void)
-{
- int num;
- unsigned int num_refs;
- char *format;
- char *input_string, *input_string_max;
- char *f, *s;
- unsigned char map8[256], map10[256], map16[256];
-
- if (SLang_Num_Function_Args < 2)
- {
- SLang_verror (SL_INVALID_PARM, "Int_Type sscanf (str, format, ...)");
- return -1;
- }
-
- num_refs = (unsigned int) SLang_Num_Function_Args;
- if (-1 == SLreverse_stack (num_refs))
- return -1;
- num_refs -= 2;
-
- if (-1 == SLang_pop_slstring (&input_string))
- return -1;
-
- if (-1 == SLang_pop_slstring (&format))
- {
- SLang_free_slstring (input_string);
- return -1;
- }
-
- f = format;
- s = input_string;
- input_string_max = input_string + strlen (input_string);
-
- init_map (map8, 8);
- init_map (map10, 10);
- init_map (map16, 16);
-
- num = 0;
-
- while (num_refs != 0)
- {
- SLang_Object_Type obj;
- SLang_Ref_Type *ref;
- char *smax;
- unsigned char *map;
- int base;
- int no_assign;
- int is_short;
- int is_long;
- int status;
- char chf;
- unsigned int width;
- int has_width;
-
- chf = *f++;
-
- if (chf == 0)
- {
- /* Hmmm.... what is the most useful thing to do?? */
-#if 1
- break;
-#else
- SLang_verror (SL_INVALID_PARM, "sscanf: format not big enough for output list");
- goto return_error;
-#endif
- }
-
- if (isspace (chf))
- {
- s = skip_whitespace (s);
- continue;
- }
-
- if ((chf != '%')
- || ((chf = *f++) == '%'))
- {
- if (*s != chf)
- break;
- s++;
- continue;
- }
-
- no_assign = 0;
- is_short = 0;
- is_long = 0;
- width = 0;
- smax = input_string_max;
-
- /* Look for the flag character */
- if (chf == '*')
- {
- no_assign = 1;
- chf = *f++;
- }
-
- /* Width */
- has_width = isdigit (chf);
- if (has_width)
- {
- f--;
- (void) parse_uint (&f, f + strlen(f), &width, 10, map10);
- chf = *f++;
- }
-
- /* Now the type modifier */
- switch (chf)
- {
- case 'h':
- is_short = 1;
- chf = *f++;
- break;
-
- case 'L': /* not implemented */
- case 'l':
- is_long = 1;
- chf = *f++;
- break;
- }
-
- status = -1;
-
- if ((chf != 'c') && (chf != '['))
- s = skip_whitespace (s);
-
- if (has_width)
- {
- if (width > (unsigned int) (input_string_max - s))
- width = (unsigned int) (input_string_max - s);
- smax = s + width;
- }
-
- /* Now the format descriptor */
-
- map = map10;
- base = 10;
-
- try_again: /* used by i, x, and o, conversions */
- switch (chf)
- {
- case 0:
- SLang_verror (SL_INVALID_PARM, "sscanf: Unexpected end of format");
- goto return_error;
- case 'D':
- is_long = 1;
- case 'd':
- if (is_short)
- {
- obj.data_type = SLANG_SHORT_TYPE;
- status = parse_short (&s, smax, &obj.v.short_val, base, map);
- }
- else if (is_long)
- {
- obj.data_type = SLANG_LONG_TYPE;
- status = parse_long (&s, smax, &obj.v.long_val, base, map);
- }
- else
- {
- obj.data_type = SLANG_INT_TYPE;
- status = parse_int (&s, smax, &obj.v.int_val, base, map);
- }
- break;
-
-
- case 'U':
- is_long = 1;
- case 'u':
- if (is_short)
- {
- obj.data_type = SLANG_USHORT_TYPE;
- status = parse_ushort (&s, smax, &obj.v.ushort_val, base, map);
- }
- else if (is_long)
- {
- obj.data_type = SLANG_ULONG_TYPE;
- status = parse_ulong (&s, smax, &obj.v.ulong_val, base, map);
- }
- else
- {
- obj.data_type = SLANG_INT_TYPE;
- status = parse_uint (&s, smax, &obj.v.uint_val, base, map);
- }
- break;
-
- case 'I':
- is_long = 1;
- case 'i':
- if ((s + 1 >= smax)
- || (*s != 0))
- chf = 'd';
- else if (((s[1] == 'x') || (s[1] == 'X'))
- && (s + 2 < smax))
- {
- s += 2;
- chf = 'x';
- }
- else chf = 'o';
- goto try_again;
-
- case 'O':
- is_long = 1;
- case 'o':
- map = map8;
- base = 8;
- chf = 'd';
- goto try_again;
-
- case 'X':
- is_long = 1;
- case 'x':
- base = 16;
- map = map16;
- chf = 'd';
- goto try_again;
-
- case 'E':
- case 'F':
- is_long = 1;
- case 'e':
- case 'f':
- case 'g':
-#if SLANG_HAS_FLOAT
- if (is_long)
- {
- obj.data_type = SLANG_DOUBLE_TYPE;
- status = parse_double (&s, smax, &obj.v.double_val);
- }
- else
- {
- obj.data_type = SLANG_FLOAT_TYPE;
- status = parse_float (&s, smax, &obj.v.float_val);
- }
-#else
- SLang_verror (SL_NOT_IMPLEMENTED,
- "This version of the S-Lang does not support floating point");
- status = -1;
-#endif
- break;
-
- case 's':
- obj.data_type = SLANG_STRING_TYPE;
- status = parse_string (&s, smax, &obj.v.s_val);
- break;
-
- case 'c':
- if (has_width == 0)
- {
- obj.data_type = SLANG_UCHAR_TYPE;
- obj.v.uchar_val = *s++;
- status = 1;
- break;
- }
- obj.data_type = SLANG_STRING_TYPE;
- status = parse_bstring (&s, smax, &obj.v.s_val);
- break;
-
- case '[':
- obj.data_type = SLANG_STRING_TYPE;
- status = parse_range (&s, smax, &f, &obj.v.s_val);
- break;
-
- case 'n':
- obj.data_type = SLANG_UINT_TYPE;
- obj.v.uint_val = (unsigned int) (s - input_string);
- status = 1;
- break;
-
- default:
- status = -1;
- SLang_verror (SL_NOT_IMPLEMENTED, "format specifier '%c' is not supported", chf);
- break;
- }
-
- if (status == 0)
- break;
-
- if (status == -1)
- goto return_error;
-
- if (no_assign)
- {
- SLang_free_object (&obj);
- continue;
- }
-
- if (-1 == SLang_pop_ref (&ref))
- {
- SLang_free_object (&obj);
- goto return_error;
- }
-
- if (-1 == SLang_push (&obj))
- {
- SLang_free_object (&obj);
- SLang_free_ref (ref);
- goto return_error;
- }
-
- if (-1 == _SLang_deref_assign (ref))
- {
- SLang_free_ref (ref);
- goto return_error;
- }
- SLang_free_ref (ref);
-
- num++;
- num_refs--;
- }
-
- if (-1 == SLdo_pop_n (num_refs))
- goto return_error;
-
- SLang_free_slstring (format);
- SLang_free_slstring (input_string);
- return num;
-
- return_error:
- /* NULLS ok */
- SLang_free_slstring (format);
- SLang_free_slstring (input_string);
- return -1;
-}
-
-
-# if SLANG_HAS_FLOAT
-
-#ifndef HAVE_STDLIB_H
-/* Oh dear. Where is the prototype for atof? If not in stdlib, then
- * I do not know where. Not in math.h on some systems either.
- */
-extern double atof ();
-#endif
-
-double _SLang_atof (char *s)
-{
- double x;
-
- s = skip_whitespace (s);
- errno = 0;
-
- if (1 != parse_double (&s, s + strlen (s), &x))
- {
- if ((0 == strcmp ("NaN", s))
- || (0 == strcmp ("-Inf", s))
- || (0 == strcmp ("Inf", s)))
- return atof (s); /* let this deal with it */
-#ifdef EINVAL
- errno = _SLerrno_errno = EINVAL;
-#endif
- return 0.0;
- }
- if (errno)
- _SLerrno_errno = errno;
- return x;
-}
-#endif
diff --git a/mdk-stage1/slang/slscroll.c b/mdk-stage1/slang/slscroll.c
deleted file mode 100644
index 358296116..000000000
--- a/mdk-stage1/slang/slscroll.c
+++ /dev/null
@@ -1,450 +0,0 @@
-/* SLang Scrolling Window Routines */
-/* Copyright (c) 1996, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-static void find_window_bottom (SLscroll_Window_Type *win)
-{
- unsigned int nrows;
- unsigned int hidden_mask;
- SLscroll_Type *bot, *cline, *last_bot;
- unsigned int row;
-
- nrows = win->nrows;
- hidden_mask = win->hidden_mask;
- cline = win->current_line;
-
- win->window_row = row = 0;
- last_bot = bot = win->top_window_line;
-
- while (row < nrows)
- {
- if (bot == cline)
- win->window_row = row;
-
- last_bot = bot;
-
- if (bot == NULL)
- break;
-
- bot = bot->next;
-
- if (hidden_mask)
- {
- while ((bot != NULL) && (bot->flags & hidden_mask))
- bot = bot->next;
- }
-
- row++;
- }
-
- win->bot_window_line = last_bot;
-}
-
-static int find_top_to_recenter (SLscroll_Window_Type *win)
-{
- unsigned int nrows;
- unsigned int hidden_mask;
- SLscroll_Type *prev, *last_prev, *cline;
-
- nrows = win->nrows;
- cline = win->current_line;
- hidden_mask = win->hidden_mask;
-
- nrows = nrows / 2;
-
- last_prev = prev = cline;
-
- while (nrows && (prev != NULL))
- {
- nrows--;
- last_prev = prev;
- do
- {
- prev = prev->prev;
- }
- while (hidden_mask
- && (prev != NULL)
- && (prev->flags & hidden_mask));
- }
-
- if (prev == NULL) prev = last_prev;
-
- win->top_window_line = prev;
- find_window_bottom (win);
-
- return 0;
-}
-
-#define HAS_BORDER_CODE 1
-int SLscroll_find_top (SLscroll_Window_Type *win)
-{
- unsigned int i;
- SLscroll_Type *cline, *prev, *next;
- SLscroll_Type *top_window_line;
- unsigned int nrows;
- unsigned int hidden_mask;
- int scroll_mode;
- unsigned int border;
-
- cline = win->current_line;
- nrows = win->nrows;
- scroll_mode = win->cannot_scroll;
- border = win->border;
- if (scroll_mode == 2)
- border = 0;
-
- if ((cline == NULL) || (nrows <= 1))
- {
- win->top_window_line = cline;
- find_window_bottom (win);
- return 0;
- }
-
- hidden_mask = win->hidden_mask;
-
- /* Note: top_window_line might be a bogus pointer. This means that I cannot
- * access it unless it really corresponds to a pointer in the buffer.
- */
- top_window_line = win->top_window_line;
-
- if (top_window_line == NULL)
- return find_top_to_recenter (win);
-
- /* Chances are that the current line is visible in the window. This means
- * that the top window line should be above it.
- */
- prev = cline;
-
- i = 0;
-
- while ((i < nrows) && (prev != NULL))
- {
- if (prev == top_window_line)
- {
- SLscroll_Type *twl = top_window_line;
- int dir = 0;
-
- if (i < border) dir = -1; else if (i + border >= nrows) dir = 1;
-
- if (dir) while (border)
- {
- if (dir < 0) twl = twl->prev;
- else twl = twl->next;
-
- if (twl == NULL)
- {
- twl = top_window_line;
- break;
- }
- if ((hidden_mask == 0)
- || (0 == (twl->flags & hidden_mask)))
- border--;
- }
-
- win->top_window_line = twl;
- find_window_bottom (win);
- return 0;
- }
-
- do
- {
- prev = prev->prev;
- }
- while (hidden_mask
- && (prev != NULL)
- && (prev->flags & hidden_mask));
- i++;
- }
-
- /* Now check the borders of the window. Perhaps the current line lies
- * outsider the border by a line. Only do this if terminal can scroll.
- */
-
- if (scroll_mode == 1)
- return find_top_to_recenter (win);
- else if (scroll_mode == -1)
- scroll_mode = 0;
-
- next = cline->next;
- while (hidden_mask
- && (next != NULL)
- && (next->flags & hidden_mask))
- next = next->next;
-
- if ((next != NULL)
- && (next == top_window_line))
- {
- /* The current line is one line above the window. This means user
- * has moved up past the top of the window. If scroll_mode is set
- * to scroll by pages, we need to do a page up.
- */
-
- win->top_window_line = cline;
- find_window_bottom (win);
-
- if (scroll_mode) return SLscroll_pageup (win);
-
- return 0;
- }
-
- prev = cline->prev;
-
- while (hidden_mask
- && (prev != NULL)
- && (prev->flags & hidden_mask))
- prev = prev->prev;
-
- if ((prev == NULL)
- || (prev != win->bot_window_line))
- return find_top_to_recenter (win);
-
- /* It looks like cline is below window by one line. See what line should
- * be at top to scroll it into view. Only do this unless we are scrolling
- * by pages.
- */
- if (scroll_mode)
- {
- win->top_window_line = cline;
- find_window_bottom (win);
- return 0;
- }
-
- i = 2;
- while ((i < nrows) && (prev != NULL))
- {
- do
- {
- prev = prev->prev;
- }
- while (hidden_mask
- && (prev != NULL)
- && (prev->flags & hidden_mask));
- i++;
- }
-
- if (prev != NULL)
- {
- win->top_window_line = prev;
- find_window_bottom (win);
- return 0;
- }
-
- return find_top_to_recenter (win);
-}
-
-int SLscroll_find_line_num (SLscroll_Window_Type *win)
-{
- SLscroll_Type *cline, *l;
- unsigned int n;
- unsigned int hidden_mask;
-
- if (win == NULL) return -1;
-
- hidden_mask = win->hidden_mask;
- cline = win->current_line;
-
- n = 1;
-
- l = win->lines;
- while (l != cline)
- {
- if ((hidden_mask == 0)
- || (0 == (l->flags & hidden_mask)))
- n++;
-
- l = l->next;
- }
-
- win->line_num = n;
- n--;
-
- while (l != NULL)
- {
- if ((hidden_mask == 0)
- || (0 == (l->flags & hidden_mask)))
- n++;
- l = l->next;
- }
- win->num_lines = n;
-
- return 0;
-}
-
-unsigned int SLscroll_next_n (SLscroll_Window_Type *win, unsigned int n)
-{
- unsigned int i;
- unsigned int hidden_mask;
- SLscroll_Type *l, *cline;
-
- if ((win == NULL)
- || (NULL == (cline = win->current_line)))
- return 0;
-
- hidden_mask = win->hidden_mask;
- l = cline;
- i = 0;
- while (i < n)
- {
- l = l->next;
- while (hidden_mask
- && (l != NULL) && (l->flags & hidden_mask))
- l = l->next;
-
- if (l == NULL)
- break;
-
- i++;
- cline = l;
- }
-
- win->current_line = cline;
- win->line_num += i;
- return i;
-}
-
-unsigned int SLscroll_prev_n (SLscroll_Window_Type *win, unsigned int n)
-{
- unsigned int i;
- unsigned int hidden_mask;
- SLscroll_Type *l, *cline;
-
- if ((win == NULL)
- || (NULL == (cline = win->current_line)))
- return 0;
-
- hidden_mask = win->hidden_mask;
- l = cline;
- i = 0;
- while (i < n)
- {
- l = l->prev;
- while (hidden_mask
- && (l != NULL) && (l->flags & hidden_mask))
- l = l->prev;
-
- if (l == NULL)
- break;
-
- i++;
- cline = l;
- }
-
- win->current_line = cline;
- win->line_num -= i;
- return i;
-}
-
-int SLscroll_pageup (SLscroll_Window_Type *win)
-{
- SLscroll_Type *l, *top;
- unsigned int nrows, hidden_mask;
- unsigned int n;
-
- if (win == NULL)
- return -1;
-
- (void) SLscroll_find_top (win);
-
- nrows = win->nrows;
-
- if ((NULL != (top = win->top_window_line))
- && (nrows > 2))
- {
- n = 0;
- hidden_mask = win->hidden_mask;
- l = win->current_line;
- while ((l != NULL) && (l != top))
- {
- l = l->prev;
- if ((hidden_mask == 0)
- || ((l != NULL) && (0 == (l->flags & hidden_mask))))
- n++;
- }
-
- if (l != NULL)
- {
- unsigned int save_line_num;
- int ret = 0;
-
- win->current_line = l;
- win->line_num -= n;
-
- /* Compute a new top/bottom header */
- save_line_num = win->line_num;
-
- if ((0 == SLscroll_prev_n (win, nrows - 1))
- && (n == 0))
- ret = -1;
-
- win->top_window_line = win->current_line;
- win->current_line = l;
- win->line_num = save_line_num;
-
- find_window_bottom (win);
- return ret;
- }
- }
-
- if (nrows < 2) nrows++;
- if (0 == SLscroll_prev_n (win, nrows - 1))
- return -1;
- return 0;
-}
-
-int SLscroll_pagedown (SLscroll_Window_Type *win)
-{
- SLscroll_Type *l, *bot;
- unsigned int nrows, hidden_mask;
- unsigned int n;
-
- if (win == NULL)
- return -1;
-
- (void) SLscroll_find_top (win);
-
- nrows = win->nrows;
-
- if ((NULL != (bot = win->bot_window_line))
- && (nrows > 2))
- {
- n = 0;
- hidden_mask = win->hidden_mask;
- l = win->current_line;
- while ((l != NULL) && (l != bot))
- {
- l = l->next;
- if ((hidden_mask == 0)
- || ((l != NULL) && (0 == (l->flags & hidden_mask))))
- n++;
- }
-
- if (l != NULL)
- {
- win->current_line = l;
- win->top_window_line = l;
- win->line_num += n;
-
- find_window_bottom (win);
-
- if (n || (bot != win->bot_window_line))
- return 0;
-
- return -1;
- }
- }
-
- if (nrows < 2) nrows++;
- if (0 == SLscroll_next_n (win, nrows - 1))
- return -1;
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slsearch.c b/mdk-stage1/slang/slsearch.c
deleted file mode 100644
index a9a427a7d..000000000
--- a/mdk-stage1/slang/slsearch.c
+++ /dev/null
@@ -1,239 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-#ifdef upcase
-# undef upcase
-#endif
-
-#define upcase(ch) (cs ? ch : UPPER_CASE(ch))
-
-static unsigned char *search_forward (register unsigned char *beg,
- unsigned char *end,
- unsigned char *key,
- register int key_len, int cs, int *ind)
-{
- register unsigned char char1;
- unsigned char *pos;
- int j, str_len;
- register unsigned char ch;
- register int db;
-
- str_len = (int) (end - beg);
- if (str_len < key_len) return (NULL);
-
- if (key_len == 0)
- return NULL;
-
- char1 = key[key_len - 1];
- beg += (key_len - 1);
-
- while(1)
- {
- if (cs) while (beg < end)
- {
- ch = *beg;
- db = ind[(unsigned char) ch];
- if ((db < key_len) && (ch == char1)) break;
- beg += db; /* ind[(unsigned char) ch]; */
- }
- else while (beg < end)
- {
- ch = *beg;
- db = ind[(unsigned char) ch];
- if ((db < key_len) &&
- (UPPER_CASE(ch) == char1)) break;
- beg += db; /* ind[(unsigned char) ch]; */
- }
-
- if (beg >= end) return(NULL);
-
- pos = beg - (key_len - 1);
- for (j = 0; j < key_len; j++)
- {
- ch = upcase(pos[j]);
- if (ch != (unsigned char) key[j]) break;
- }
-
- if (j == key_len) return(pos);
- beg += 1;
- }
-}
-
-static unsigned char *search_backward (unsigned char *beg,unsigned char *end,
- unsigned char *key, int key_len,
- int cs, int *ind)
-{
- unsigned char ch, char1;
- int j, str_len, ofs;
-
- str_len = (int) (end - beg);
- if (str_len < key_len) return (NULL);
-
- if (key_len == 0)
- return NULL;
-
- /* end -= (key_len - 1); */
- end -= key_len;
-
- char1 = key[0];
-
- while(1)
- {
- while ((beg <= end) && (ch = *end, ch = upcase(ch), ch != char1))
- {
- ofs = ind[(unsigned char) ch];
-#ifdef __MSDOS__
- /* This is needed for msdos segment wrapping problems */
- if (beg + ofs > end) return(NULL);
-#endif
- end -= ofs;
- }
- if (beg > end) return(NULL);
- for (j = 1; j < key_len; j++)
- {
- ch = upcase(end[j]);
- if (ch != key[j]) break;
- }
- if (j == key_len) return(end);
- end--;
- }
-}
-
-unsigned char *SLsearch (unsigned char *pmin, unsigned char *pmax,
- SLsearch_Type *st)
-{
- if (st->dir > 0) return search_forward (pmin, pmax, st->key,
- st->key_len, st->cs, st->ind);
- else return search_backward (pmin, pmax, st->key,
- st->key_len, st->cs, st->ind);
-}
-
-static int Case_Tables_Ok;
-
-int SLsearch_init (char *str, int dir, int cs, SLsearch_Type *st)
-{
- int i, maxi;
- register int max = strlen(str);
- unsigned char *w, *work = st->key;
- register int *indp, *indpm;
- int *ind = st->ind;
-
- if (max >= (int) sizeof (st->key))
- {
- SLang_doerror ("Search string too long.");
- return -1;
- }
-
- st->dir = dir; st->cs = cs;
-
- if (!Case_Tables_Ok) SLang_init_case_tables ();
-
- if (dir > 0)
- {
- w = work;
- }
- else
- {
- maxi = max - 1;
- str = str + maxi;
- w = work + maxi;
- }
-
- /* for (i = 0; i < 256; i++) ind[i] = max; */
- indp = ind; indpm = ind + 256;
- while (indp < indpm)
- {
- *indp++ = max;
- *indp++ = max;
- *indp++ = max;
- *indp++ = max;
- }
-
- i = 0;
- if (cs) while (i < max)
- {
- i++;
- maxi = max - i;
- *w = *str;
- ind[(unsigned char) *str] = maxi;
- str += dir; w += dir;
- }
- else while (i < max)
- {
- i++;
- maxi = max - i;
- *w = UPPER_CASE(*str);
- ind[(unsigned char) *w] = maxi;
- ind[(unsigned char) LOWER_CASE(*str)] = maxi;
- str += dir; w += dir;
- }
-
- work[max] = 0;
- st->key_len = max;
- return max;
-}
-
-/* 8bit clean upper and lowercase macros */
-unsigned char _SLChg_LCase_Lut[256];
-unsigned char _SLChg_UCase_Lut[256];
-
-void SLang_define_case (int *u, int *l)
-{
- unsigned char up = (unsigned char) *u, dn = (unsigned char) *l;
-
- _SLChg_LCase_Lut[up] = dn;
- _SLChg_LCase_Lut[dn] = dn;
- _SLChg_UCase_Lut[dn] = up;
- _SLChg_UCase_Lut[up] = up;
-}
-
-void SLang_init_case_tables (void)
-{
- int i, j;
- if (Case_Tables_Ok) return;
-
- for (i = 0; i < 256; i++)
- {
- _SLChg_UCase_Lut[i] = i;
- _SLChg_LCase_Lut[i] = i;
- }
-
- for (i = 'A'; i <= 'Z'; i++)
- {
- j = i + 32;
- _SLChg_UCase_Lut[j] = i;
- _SLChg_LCase_Lut[i] = j;
- }
-#ifdef PC_SYSTEM
- /* Initialize for DOS code page 437. */
- _SLChg_UCase_Lut[135] = 128; _SLChg_LCase_Lut[128] = 135;
- _SLChg_UCase_Lut[132] = 142; _SLChg_LCase_Lut[142] = 132;
- _SLChg_UCase_Lut[134] = 143; _SLChg_LCase_Lut[143] = 134;
- _SLChg_UCase_Lut[130] = 144; _SLChg_LCase_Lut[144] = 130;
- _SLChg_UCase_Lut[145] = 146; _SLChg_LCase_Lut[146] = 145;
- _SLChg_UCase_Lut[148] = 153; _SLChg_LCase_Lut[153] = 148;
- _SLChg_UCase_Lut[129] = 154; _SLChg_LCase_Lut[154] = 129;
- _SLChg_UCase_Lut[164] = 165; _SLChg_LCase_Lut[165] = 164;
-#else
- /* ISO Latin */
- for (i = 192; i <= 221; i++)
- {
- j = i + 32;
- _SLChg_UCase_Lut[j] = i;
- _SLChg_LCase_Lut[i] = j;
- }
- _SLChg_UCase_Lut[215] = 215; _SLChg_LCase_Lut[215] = 215;
- _SLChg_UCase_Lut[223] = 223; _SLChg_LCase_Lut[223] = 223;
- _SLChg_UCase_Lut[247] = 247; _SLChg_LCase_Lut[247] = 247;
- _SLChg_UCase_Lut[255] = 255; _SLChg_LCase_Lut[255] = 255;
-#endif
- Case_Tables_Ok = 1;
-}
diff --git a/mdk-stage1/slang/slsignal.c b/mdk-stage1/slang/slsignal.c
deleted file mode 100644
index 30707dea5..000000000
--- a/mdk-stage1/slang/slsignal.c
+++ /dev/null
@@ -1,336 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include <signal.h>
-
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_WAIT_H
-# include <sys/wait.h>
-#endif
-
-#include <errno.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-/* Do not trust these environments */
-#if defined(__CYGWIN32__) || defined(__MINGW32__) || defined(AMIGA)
-# ifdef SLANG_POSIX_SIGNALS
-# undef SLANG_POSIX_SIGNALS
-# endif
-#endif
-
-/* This function will cause system calls to be restarted after signal if possible */
-SLSig_Fun_Type *SLsignal (int sig, SLSig_Fun_Type *f)
-{
-#if defined(SLANG_POSIX_SIGNALS)
- struct sigaction old_sa, new_sa;
-
-# ifdef SIGALRM
- /* We want system calls to be interrupted by SIGALRM. */
- if (sig == SIGALRM) return SLsignal_intr (sig, f);
-# endif
-
- sigemptyset (&new_sa.sa_mask);
- new_sa.sa_handler = f;
-
- new_sa.sa_flags = 0;
-# ifdef SA_RESTART
- new_sa.sa_flags |= SA_RESTART;
-# endif
-
- if (-1 == sigaction (sig, &new_sa, &old_sa))
- return (SLSig_Fun_Type *) SIG_ERR;
-
- return old_sa.sa_handler;
-#else
- /* Not POSIX. */
- return signal (sig, f);
-#endif
-}
-
-/* This function will NOT cause system calls to be restarted after
- * signal if possible
- */
-SLSig_Fun_Type *SLsignal_intr (int sig, SLSig_Fun_Type *f)
-{
-#ifdef SLANG_POSIX_SIGNALS
- struct sigaction old_sa, new_sa;
-
- sigemptyset (&new_sa.sa_mask);
- new_sa.sa_handler = f;
-
- new_sa.sa_flags = 0;
-# ifdef SA_INTERRUPT
- new_sa.sa_flags |= SA_INTERRUPT;
-# endif
-
- if (-1 == sigaction (sig, &new_sa, &old_sa))
- return (SLSig_Fun_Type *) SIG_ERR;
-
- return old_sa.sa_handler;
-#else
- /* Not POSIX. */
- return signal (sig, f);
-#endif
-}
-
-/* We are primarily interested in blocking signals that would cause the
- * application to reset the tty. These include suspend signals and
- * possibly interrupt signals.
- */
-#ifdef SLANG_POSIX_SIGNALS
-static sigset_t Old_Signal_Mask;
-#endif
-
-static volatile unsigned int Blocked_Depth;
-
-int SLsig_block_signals (void)
-{
-#ifdef SLANG_POSIX_SIGNALS
- sigset_t new_mask;
-#endif
-
- Blocked_Depth++;
- if (Blocked_Depth != 1)
- {
- return 0;
- }
-
-#ifdef SLANG_POSIX_SIGNALS
- sigemptyset (&new_mask);
-# ifdef SIGQUIT
- sigaddset (&new_mask, SIGQUIT);
-# endif
-# ifdef SIGTSTP
- sigaddset (&new_mask, SIGTSTP);
-# endif
-# ifdef SIGINT
- sigaddset (&new_mask, SIGINT);
-# endif
-# ifdef SIGTTIN
- sigaddset (&new_mask, SIGTTIN);
-# endif
-# ifdef SIGTTOU
- sigaddset (&new_mask, SIGTTOU);
-# endif
-# ifdef SIGWINCH
- sigaddset (&new_mask, SIGWINCH);
-# endif
-
- (void) sigprocmask (SIG_BLOCK, &new_mask, &Old_Signal_Mask);
- return 0;
-#else
- /* Not implemented. */
- return -1;
-#endif
-}
-
-int SLsig_unblock_signals (void)
-{
- if (Blocked_Depth == 0)
- return -1;
-
- Blocked_Depth--;
-
- if (Blocked_Depth != 0)
- return 0;
-
-#ifdef SLANG_POSIX_SIGNALS
- (void) sigprocmask (SIG_SETMASK, &Old_Signal_Mask, NULL);
- return 0;
-#else
- return -1;
-#endif
-}
-
-#ifdef MSWINDOWS
-int SLsystem (char *cmd)
-{
- SLang_verror (SL_NOT_IMPLEMENTED, "system not implemented");
- return -1;
-}
-
-#else
-int SLsystem (char *cmd)
-{
-#ifdef SLANG_POSIX_SIGNALS
- pid_t pid;
- int status;
- struct sigaction ignore;
-# ifdef SIGINT
- struct sigaction save_intr;
-# endif
-# ifdef SIGQUIT
- struct sigaction save_quit;
-# endif
-# ifdef SIGCHLD
- sigset_t child_mask, save_mask;
-# endif
-
- if (cmd == NULL) return 1;
-
- ignore.sa_handler = SIG_IGN;
- sigemptyset (&ignore.sa_mask);
- ignore.sa_flags = 0;
-
-# ifdef SIGINT
- if (-1 == sigaction (SIGINT, &ignore, &save_intr))
- return -1;
-# endif
-
-# ifdef SIGQUIT
- if (-1 == sigaction (SIGQUIT, &ignore, &save_quit))
- {
- (void) sigaction (SIGINT, &save_intr, NULL);
- return -1;
- }
-# endif
-
-# ifdef SIGCHLD
- sigemptyset (&child_mask);
- sigaddset (&child_mask, SIGCHLD);
- if (-1 == sigprocmask (SIG_BLOCK, &child_mask, &save_mask))
- {
-# ifdef SIGINT
- (void) sigaction (SIGINT, &save_intr, NULL);
-# endif
-# ifdef SIGQUIT
- (void) sigaction (SIGQUIT, &save_quit, NULL);
-# endif
- return -1;
- }
-# endif
-
- pid = fork();
-
- if (pid == -1)
- status = -1;
- else if (pid == 0)
- {
- /* Child */
-# ifdef SIGINT
- (void) sigaction (SIGINT, &save_intr, NULL);
-# endif
-# ifdef SIGQUIT
- (void) sigaction (SIGQUIT, &save_quit, NULL);
-# endif
-# ifdef SIGCHLD
- (void) sigprocmask (SIG_SETMASK, &save_mask, NULL);
-# endif
-
- execl ("/bin/sh", "sh", "-c", cmd, NULL);
- _exit (127);
- }
- else
- {
- /* parent */
- while (-1 == waitpid (pid, &status, 0))
- {
-# ifdef EINTR
- if (errno == EINTR)
- continue;
-# endif
-# ifdef ERESTARTSYS
- if (errno == ERESTARTSYS)
- continue;
-# endif
- status = -1;
- break;
- }
- }
-# ifdef SIGINT
- if (-1 == sigaction (SIGINT, &save_intr, NULL))
- status = -1;
-# endif
-# ifdef SIGQUIT
- if (-1 == sigaction (SIGQUIT, &save_quit, NULL))
- status = -1;
-# endif
-# ifdef SIGCHLD
- if (-1 == sigprocmask (SIG_SETMASK, &save_mask, NULL))
- status = -1;
-# endif
-
- return status;
-
-#else /* No POSIX Signals */
-# ifdef SIGINT
- void (*sint)(int);
-# endif
-# ifdef SIGQUIT
- void (*squit)(int);
-# endif
- int status;
-
-# ifdef SIGQUIT
- squit = SLsignal (SIGQUIT, SIG_IGN);
-# endif
-# ifdef SIGINT
- sint = SLsignal (SIGINT, SIG_IGN);
-# endif
- status = system (cmd);
-# ifdef SIGINT
- SLsignal (SIGINT, sint);
-# endif
-# ifdef SIGQUIT
- SLsignal (SIGQUIT, squit);
-# endif
- return status;
-#endif /* POSIX_SIGNALS */
-}
-#endif
-
-#if 0
-#include <windows.h>
-static int msw_system (char *cmd)
-{
- STARTUPINFO startup_info;
- PROCESS_INFORMATION process_info;
- int status;
-
- if (cmd == NULL) return -1;
-
- memset ((char *) &startup_info, 0, sizeof (STARTUPINFO));
- startup_info.cb = sizeof(STARTUPINFO);
- startup_info.dwFlags = STARTF_USESHOWWINDOW;
- startup_info.wShowWindow = SW_SHOWDEFAULT;
-
- if (FALSE == CreateProcess (NULL,
- cmd,
- NULL,
- NULL,
- FALSE,
- NORMAL_PRIORITY_CLASS|CREATE_NEW_CONSOLE,
- NULL,
- NULL,
- &startup_info,
- &process_info))
- {
- SLang_verror (0, "%s: CreateProcess failed.", cmd);
- return -1;
- }
-
- status = -1;
-
- if (0xFFFFFFFFUL != WaitForSingleObject (process_info.hProcess, INFINITE))
- {
- DWORD exit_code;
-
- if (TRUE == GetExitCodeProcess (process_info.hProcess, &exit_code))
- status = (int) exit_code;
- }
-
- CloseHandle (process_info.hThread);
- CloseHandle (process_info.hProcess);
-
- return status;
-}
-#endif
diff --git a/mdk-stage1/slang/slsmg.c b/mdk-stage1/slang/slsmg.c
deleted file mode 100644
index 088557f27..000000000
--- a/mdk-stage1/slang/slsmg.c
+++ /dev/null
@@ -1,1584 +0,0 @@
-/* SLang Screen management routines */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-typedef struct Screen_Type
- {
- int n; /* number of chars written last time */
- int flags; /* line untouched, etc... */
- SLsmg_Char_Type *old, *neew;
-#ifndef IBMPC_SYSTEM
- unsigned long old_hash, new_hash;
-#endif
- }
-Screen_Type;
-
-#define TOUCHED 0x1
-#define TRASHED 0x2
-static int Screen_Trashed;
-
-#if !defined(__MSDOS_16BIT__)
-# define MAX_SCREEN_SIZE 256
-#else
-# define MAX_SCREEN_SIZE 75
-#endif
-
-Screen_Type SL_Screen[MAX_SCREEN_SIZE];
-static int Start_Col, Start_Row;
-static int Screen_Cols, Screen_Rows;
-static int This_Row, This_Col;
-static int This_Color; /* only the first 8 bits of this
- * are used. The highest bit is used
- * to indicate an alternate character
- * set. This leaves 127 userdefineable
- * color combination.
- */
-
-#ifndef IBMPC_SYSTEM
-#define ALT_CHAR_FLAG 0x80
-#else
-#define ALT_CHAR_FLAG 0x00
-#endif
-
-#if SLTT_HAS_NON_BCE_SUPPORT && !defined(IBMPC_SYSTEM)
-#define REQUIRES_NON_BCE_SUPPORT 1
-static int Bce_Color_Offset;
-#endif
-
-int SLsmg_Newline_Behavior = 0;
-int SLsmg_Backspace_Moves = 0;
-/* Backward compatibility. Not used. */
-/* int SLsmg_Newline_Moves; */
-
-static void (*tt_normal_video)(void) = SLtt_normal_video;
-static void (*tt_goto_rc)(int, int) = SLtt_goto_rc;
-static void (*tt_cls) (void) = SLtt_cls;
-static void (*tt_del_eol) (void) = SLtt_del_eol;
-static void (*tt_smart_puts) (SLsmg_Char_Type *, SLsmg_Char_Type *, int, int) = SLtt_smart_puts;
-static int (*tt_flush_output) (void) = SLtt_flush_output;
-static int (*tt_reset_video) (void) = SLtt_reset_video;
-static int (*tt_init_video) (void) = SLtt_init_video;
-static int *tt_Screen_Rows = &SLtt_Screen_Rows;
-static int *tt_Screen_Cols = &SLtt_Screen_Cols;
-
-#ifndef IBMPC_SYSTEM
-static void (*tt_set_scroll_region)(int, int) = SLtt_set_scroll_region;
-static void (*tt_reverse_index)(int) = SLtt_reverse_index;
-static void (*tt_reset_scroll_region)(void) = SLtt_reset_scroll_region;
-static void (*tt_delete_nlines)(int) = SLtt_delete_nlines;
-#endif
-
-#ifndef IBMPC_SYSTEM
-static int *tt_Term_Cannot_Scroll = &SLtt_Term_Cannot_Scroll;
-static int *tt_Has_Alt_Charset = &SLtt_Has_Alt_Charset;
-static char **tt_Graphics_Char_Pairs = &SLtt_Graphics_Char_Pairs;
-static int *tt_Use_Blink_For_ACS = &SLtt_Use_Blink_For_ACS;
-#endif
-
-static int Smg_Inited;
-
-static void blank_line (SLsmg_Char_Type *p, int n, unsigned char ch)
-{
- register SLsmg_Char_Type *pmax = p + n;
- register SLsmg_Char_Type color_ch;
-
- color_ch = SLSMG_BUILD_CHAR(ch,This_Color);
-
- while (p < pmax)
- {
- *p++ = color_ch;
- }
-}
-
-static void clear_region (int row, int n)
-{
- int i;
- int imax = row + n;
-
- if (imax > Screen_Rows) imax = Screen_Rows;
- for (i = row; i < imax; i++)
- {
- if (i >= 0)
- {
- blank_line (SL_Screen[i].neew, Screen_Cols, ' ');
- SL_Screen[i].flags |= TOUCHED;
- }
- }
-}
-
-void SLsmg_erase_eol (void)
-{
- int r, c;
-
- if (Smg_Inited == 0) return;
-
- c = This_Col - Start_Col;
- r = This_Row - Start_Row;
-
- if ((r < 0) || (r >= Screen_Rows)) return;
- if (c < 0) c = 0; else if (c >= Screen_Cols) return;
- blank_line (SL_Screen[This_Row].neew + c , Screen_Cols - c, ' ');
- SL_Screen[This_Row].flags |= TOUCHED;
-}
-
-static void scroll_up (void)
-{
- unsigned int i, imax;
- SLsmg_Char_Type *neew;
-
- neew = SL_Screen[0].neew;
- imax = Screen_Rows - 1;
- for (i = 0; i < imax; i++)
- {
- SL_Screen[i].neew = SL_Screen[i + 1].neew;
- SL_Screen[i].flags |= TOUCHED;
- }
- SL_Screen[i].neew = neew;
- SL_Screen[i].flags |= TOUCHED;
- blank_line (neew, Screen_Cols, ' ');
- This_Row--;
-}
-
-void SLsmg_gotorc (int r, int c)
-{
- This_Row = r;
- This_Col = c;
-}
-
-int SLsmg_get_row (void)
-{
- return This_Row;
-}
-
-int SLsmg_get_column (void)
-{
- return This_Col;
-}
-
-void SLsmg_erase_eos (void)
-{
- if (Smg_Inited == 0) return;
-
- SLsmg_erase_eol ();
- clear_region (This_Row + 1, Screen_Rows);
-}
-
-static int This_Alt_Char;
-
-void SLsmg_set_char_set (int i)
-{
-#ifdef IBMPC_SYSTEM
- (void) i;
-#else
- if ((tt_Use_Blink_For_ACS != NULL)
- && (*tt_Use_Blink_For_ACS != 0))
- return;/* alt chars not used and the alt bit
- * is used to indicate a blink.
- */
-
- if (i) This_Alt_Char = ALT_CHAR_FLAG;
- else This_Alt_Char = 0;
-
- This_Color &= 0x7F;
- This_Color |= This_Alt_Char;
-#endif
-}
-
-void SLsmg_set_color (int color)
-{
- if (color < 0) return;
-#ifdef REQUIRES_NON_BCE_SUPPORT
- color += Bce_Color_Offset;
-#endif
- This_Color = color | This_Alt_Char;
-}
-
-void SLsmg_reverse_video (void)
-{
- SLsmg_set_color (1);
-}
-
-void SLsmg_normal_video (void)
-{
- SLsmg_set_color (0);
-}
-
-static int point_visible (int col_too)
-{
- return ((This_Row >= Start_Row) && (This_Row < Start_Row + Screen_Rows)
- && ((col_too == 0)
- || ((This_Col >= Start_Col)
- && (This_Col < Start_Col + Screen_Cols))));
-}
-
-void SLsmg_write_string (char *str)
-{
- SLsmg_write_nchars (str, strlen (str));
-}
-
-void SLsmg_write_nstring (char *str, unsigned int n)
-{
- unsigned int width;
- char blank = ' ';
-
- /* Avoid a problem if a user accidently passes a negative value */
- if ((int) n < 0)
- return;
-
- if (str == NULL) width = 0;
- else
- {
- width = strlen (str);
- if (width > n) width = n;
- SLsmg_write_nchars (str, width);
- }
- while (width++ < n) SLsmg_write_nchars (&blank, 1);
-}
-
-void SLsmg_write_wrapped_string (char *s, int r, int c,
- unsigned int dr, unsigned int dc,
- int fill)
-{
- register char ch, *p;
- int maxc = (int) dc;
-
- if ((dr == 0) || (dc == 0)) return;
- p = s;
- dc = 0;
- while (1)
- {
- ch = *p++;
- if ((ch == 0) || (ch == '\n'))
- {
- int diff;
-
- diff = maxc - (int) dc;
-
- SLsmg_gotorc (r, c);
- SLsmg_write_nchars (s, dc);
- if (fill && (diff > 0))
- {
- while (diff--) SLsmg_write_char (' ');
- }
- if ((ch == 0) || (dr == 1)) break;
-
- r++;
- dc = 0;
- dr--;
- s = p;
- }
- else if ((int) dc == maxc)
- {
- SLsmg_gotorc (r, c);
- SLsmg_write_nchars (s, dc + 1);
- if (dr == 1) break;
-
- r++;
- dc = 0;
- dr--;
- s = p;
- }
- else dc++;
- }
-}
-
-int SLsmg_Tab_Width = 8;
-
-/* Minimum value for which eight bit char is displayed as is. */
-
-#ifndef IBMPC_SYSTEM
-int SLsmg_Display_Eight_Bit = 160;
-static unsigned char Alt_Char_Set[129];/* 129th is used as a flag */
-#else
-int SLsmg_Display_Eight_Bit = 128;
-#endif
-
-void SLsmg_write_nchars (char *str, unsigned int n)
-{
- register SLsmg_Char_Type *p, old, neew, color;
- unsigned char ch;
- unsigned int flags;
- int len, start_len, max_len;
- char *str_max;
- int newline_flag;
-#ifndef IBMPC_SYSTEM
- int alt_char_set_flag;
-
- alt_char_set_flag = ((This_Color & ALT_CHAR_FLAG)
- && ((tt_Use_Blink_For_ACS == NULL)
- || (*tt_Use_Blink_For_ACS == 0)));
-#endif
-
- if (Smg_Inited == 0) return;
-
- str_max = str + n;
- color = This_Color;
-
- top: /* get here only on newline */
-
- newline_flag = 0;
- start_len = Start_Col;
-
- if (point_visible (0) == 0) return;
-
- len = This_Col;
- max_len = start_len + Screen_Cols;
-
- p = SL_Screen[This_Row - Start_Row].neew;
- if (len > start_len) p += (len - start_len);
-
- flags = SL_Screen[This_Row - Start_Row].flags;
- while ((len < max_len) && (str < str_max))
- {
- ch = (unsigned char) *str++;
-
-#ifndef IBMPC_SYSTEM
- if (alt_char_set_flag)
- ch = Alt_Char_Set [ch & 0x7F];
-#endif
- if (((ch >= ' ') && (ch < 127))
- || (ch >= (unsigned char) SLsmg_Display_Eight_Bit)
-#ifndef IBMPC_SYSTEM
- || alt_char_set_flag
-#endif
- )
- {
- len += 1;
- if (len > start_len)
- {
- old = *p;
- neew = SLSMG_BUILD_CHAR(ch,color);
- if (old != neew)
- {
- flags |= TOUCHED;
- *p = neew;
- }
- p++;
- }
- }
-
- else if ((ch == '\t') && (SLsmg_Tab_Width > 0))
- {
- n = len;
- n += SLsmg_Tab_Width;
- n = SLsmg_Tab_Width - (n % SLsmg_Tab_Width);
- if ((unsigned int) len + n > (unsigned int) max_len)
- n = (unsigned int) (max_len - len);
- neew = SLSMG_BUILD_CHAR(' ',color);
- while (n--)
- {
- len += 1;
- if (len > start_len)
- {
- if (*p != neew)
- {
- flags |= TOUCHED;
- *p = neew;
- }
- p++;
- }
- }
- }
- else if ((ch == '\n')
- && (SLsmg_Newline_Behavior != SLSMG_NEWLINE_PRINTABLE))
- {
- newline_flag = 1;
- break;
- }
- else if ((ch == 0x8) && SLsmg_Backspace_Moves)
- {
- if (len != 0) len--;
- }
- else
- {
- if (ch & 0x80)
- {
- neew = SLSMG_BUILD_CHAR('~',color);
- len += 1;
- if (len > start_len)
- {
- if (*p != neew)
- {
- *p = neew;
- flags |= TOUCHED;
- }
- p++;
- if (len == max_len) break;
- ch &= 0x7F;
- }
- }
-
- len += 1;
- if (len > start_len)
- {
- neew = SLSMG_BUILD_CHAR('^',color);
- if (*p != neew)
- {
- *p = neew;
- flags |= TOUCHED;
- }
- p++;
- if (len == max_len) break;
- }
-
- if (ch == 127) ch = '?'; else ch = ch + '@';
- len++;
- if (len > start_len)
- {
- neew = SLSMG_BUILD_CHAR(ch,color);
- if (*p != neew)
- {
- *p = neew;
- flags |= TOUCHED;
- }
- p++;
- }
- }
- }
-
- SL_Screen[This_Row - Start_Row].flags = flags;
- This_Col = len;
-
- if (SLsmg_Newline_Behavior == 0)
- return;
-
- if (newline_flag == 0)
- {
- while (str < str_max)
- {
- if (*str == '\n') break;
- str++;
- }
- if (str == str_max) return;
- str++;
- }
-
- This_Row++;
- This_Col = 0;
- if (This_Row == Start_Row + Screen_Rows)
- {
- if (SLsmg_Newline_Behavior == SLSMG_NEWLINE_SCROLLS) scroll_up ();
- }
- goto top;
-}
-
-void SLsmg_write_char (char ch)
-{
- SLsmg_write_nchars (&ch, 1);
-}
-
-static int Cls_Flag;
-
-void SLsmg_cls (void)
-{
- int tac;
- if (Smg_Inited == 0) return;
-
- tac = This_Alt_Char; This_Alt_Char = 0;
- SLsmg_set_color (0);
- clear_region (0, Screen_Rows);
- This_Alt_Char = tac;
- SLsmg_set_color (0);
- Cls_Flag = 1;
-}
-#if 0
-static void do_copy (SLsmg_Char_Type *a, SLsmg_Char_Type *b)
-{
- SLsmg_Char_Type *amax = a + Screen_Cols;
-
- while (a < amax) *a++ = *b++;
-}
-#endif
-
-#ifndef IBMPC_SYSTEM
-int SLsmg_Scroll_Hash_Border = 0;
-static unsigned long compute_hash (SLsmg_Char_Type *s, int n)
-{
- register unsigned long h = 0, g;
- register unsigned long sum = 0;
- register SLsmg_Char_Type *smax, ch;
- int is_blank = 2;
-
- s += SLsmg_Scroll_Hash_Border;
- smax = s + (n - SLsmg_Scroll_Hash_Border);
- while (s < smax)
- {
- ch = *s++;
- if (is_blank && (SLSMG_EXTRACT_CHAR(ch) != 32)) is_blank--;
-
- sum += ch;
-
- h = sum + (h << 3);
- if ((g = h & 0xE0000000UL) != 0)
- {
- h = h ^ (g >> 24);
- h = h ^ g;
- }
- }
- if (is_blank) return 0;
- return h;
-}
-
-static unsigned long Blank_Hash;
-
-static int try_scroll_down (int rmin, int rmax)
-{
- int i, r1, r2, di, j;
- unsigned long hash;
- int did_scroll;
- int color;
- SLsmg_Char_Type *tmp;
- int ignore;
-
- did_scroll = 0;
- for (i = rmax; i > rmin; i--)
- {
- hash = SL_Screen[i].new_hash;
- if (hash == Blank_Hash) continue;
-
- if ((hash == SL_Screen[i].old_hash)
-#if 0
- || ((i + 1 < Screen_Rows) && (hash == SL_Screen[i + 1].old_hash))
- || ((i - 1 > rmin) && (SL_Screen[i].old_hash == SL_Screen[i - 1].new_hash))
-#endif
- )
- continue;
-
- for (j = i - 1; j >= rmin; j--)
- {
- if (hash == SL_Screen[j].old_hash) break;
- }
- if (j < rmin) continue;
-
- r2 = i; /* end scroll region */
-
- di = i - j;
- j--;
- ignore = 0;
- while ((j >= rmin) && (SL_Screen[j].old_hash == SL_Screen[j + di].new_hash))
- {
- if (SL_Screen[j].old_hash == Blank_Hash) ignore++;
- j--;
- }
- r1 = j + 1;
-
- /* If this scroll only scrolls this line into place, don't do it.
- */
- if ((di > 1) && (r1 + di + ignore == r2)) continue;
-
- /* If there is anything in the scrolling region that is ok, abort the
- * scroll.
- */
-
- for (j = r1; j <= r2; j++)
- {
- if ((SL_Screen[j].old_hash != Blank_Hash)
- && (SL_Screen[j].old_hash == SL_Screen[j].new_hash))
- {
- /* See if the scroll is happens to scroll this one into place. */
- if ((j + di > r2) || (SL_Screen[j].old_hash != SL_Screen[j + di].new_hash))
- break;
- }
- }
- if (j <= r2) continue;
-
- color = This_Color; This_Color = 0;
- did_scroll = 1;
- (*tt_normal_video) ();
- (*tt_set_scroll_region) (r1, r2);
- (*tt_goto_rc) (0, 0);
- (*tt_reverse_index) (di);
- (*tt_reset_scroll_region) ();
- /* Now we have a hole in the screen.
- * Make the virtual screen look like it.
- *
- * Note that if the terminal does not support BCE, then we have
- * no idea what color the hole is. So, for this case, we do not
- * want to add Bce_Color_Offset to This_Color since if Bce_Color_Offset
- * is non-zero, then This_Color = 0 does not match any valid color
- * obtained by adding Bce_Color_Offset.
- */
- for (j = r1; j <= r2; j++) SL_Screen[j].flags = TOUCHED;
-
- while (di--)
- {
- tmp = SL_Screen[r2].old;
- for (j = r2; j > r1; j--)
- {
- SL_Screen[j].old = SL_Screen[j - 1].old;
- SL_Screen[j].old_hash = SL_Screen[j - 1].old_hash;
- }
- SL_Screen[r1].old = tmp;
- blank_line (SL_Screen[r1].old, Screen_Cols, ' ');
- SL_Screen[r1].old_hash = Blank_Hash;
- r1++;
- }
- This_Color = color;
- }
-
- return did_scroll;
-}
-
-static int try_scroll_up (int rmin, int rmax)
-{
- int i, r1, r2, di, j;
- unsigned long hash;
- int did_scroll;
- int color;
- SLsmg_Char_Type *tmp;
- int ignore;
-
- did_scroll = 0;
- for (i = rmin; i < rmax; i++)
- {
- hash = SL_Screen[i].new_hash;
- if (hash == Blank_Hash) continue;
- if (hash == SL_Screen[i].old_hash)
- continue;
- /* find a match further down screen */
- for (j = i + 1; j <= rmax; j++)
- {
- if (hash == SL_Screen[j].old_hash) break;
- }
- if (j > rmax) continue;
-
- r1 = i; /* beg scroll region */
- di = j - i; /* number of lines to scroll */
- j++; /* since we know this is a match */
-
- /* find end of scroll region */
- ignore = 0;
- while ((j <= rmax) && (SL_Screen[j].old_hash == SL_Screen[j - di].new_hash))
- {
- if (SL_Screen[j].old_hash == Blank_Hash) ignore++;
- j++;
- }
- r2 = j - 1; /* end of scroll region */
-
- /* If this scroll only scrolls this line into place, don't do it.
- */
- if ((di > 1) && (r1 + di + ignore == r2)) continue;
-
- /* If there is anything in the scrolling region that is ok, abort the
- * scroll.
- */
-
- for (j = r1; j <= r2; j++)
- {
- if ((SL_Screen[j].old_hash != Blank_Hash)
- && (SL_Screen[j].old_hash == SL_Screen[j].new_hash))
- {
- if ((j - di < r1) || (SL_Screen[j].old_hash != SL_Screen[j - di].new_hash))
- break;
- }
-
- }
- if (j <= r2) continue;
-
- did_scroll = 1;
-
- /* See the above comments about BCE */
- color = This_Color; This_Color = 0;
- (*tt_normal_video) ();
- (*tt_set_scroll_region) (r1, r2);
- (*tt_goto_rc) (0, 0); /* relative to scroll region */
- (*tt_delete_nlines) (di);
- (*tt_reset_scroll_region) ();
- /* Now we have a hole in the screen. Make the virtual screen look
- * like it.
- */
- for (j = r1; j <= r2; j++) SL_Screen[j].flags = TOUCHED;
-
- while (di--)
- {
- tmp = SL_Screen[r1].old;
- for (j = r1; j < r2; j++)
- {
- SL_Screen[j].old = SL_Screen[j + 1].old;
- SL_Screen[j].old_hash = SL_Screen[j + 1].old_hash;
- }
- SL_Screen[r2].old = tmp;
- blank_line (SL_Screen[r2].old, Screen_Cols, ' ');
- SL_Screen[r2].old_hash = Blank_Hash;
- r2--;
- }
- This_Color = color;
- }
- return did_scroll;
-}
-
-static void try_scroll (void)
-{
- int r1, rmin, rmax;
- int num_up, num_down;
- /* find region limits. */
-
- for (rmax = Screen_Rows - 1; rmax > 0; rmax--)
- {
- if (SL_Screen[rmax].new_hash != SL_Screen[rmax].old_hash)
- {
- r1 = rmax - 1;
- if ((r1 == 0)
- || (SL_Screen[r1].new_hash != SL_Screen[r1].old_hash))
- break;
-
- rmax = r1;
- }
- }
-
- for (rmin = 0; rmin < rmax; rmin++)
- {
- if (SL_Screen[rmin].new_hash != SL_Screen[rmin].old_hash)
- {
- r1 = rmin + 1;
- if ((r1 == rmax)
- || (SL_Screen[r1].new_hash != SL_Screen[r1].old_hash))
- break;
-
- rmin = r1;
- }
- }
-
- /* Below, we have two scrolling algorithms. The first has the effect of
- * scrolling lines down. This is usually appropriate when one moves
- * up the display, e.g., with the UP arrow. The second algorithm is
- * appropriate for going the other way. It is important to choose the
- * correct one.
- */
-
- num_up = 0;
- for (r1 = rmin; r1 < rmax; r1++)
- {
- if (SL_Screen[r1].new_hash == SL_Screen[r1 + 1].old_hash)
- num_up++;
- }
-
- num_down = 0;
- for (r1 = rmax; r1 > rmin; r1--)
- {
- if (SL_Screen[r1 - 1].old_hash == SL_Screen[r1].new_hash)
- num_down++;
- }
-
- if (num_up > num_down)
- {
- if (try_scroll_up (rmin, rmax))
- return;
-
- (void) try_scroll_down (rmin, rmax);
- }
- else
- {
- if (try_scroll_down (rmin, rmax))
- return;
-
- (void) try_scroll_up (rmin, rmax);
- }
-}
-#endif /* NOT IBMPC_SYSTEM */
-
-
-#ifdef REQUIRES_NON_BCE_SUPPORT
-static void adjust_colors (void)
-{
- int bce;
- int i;
-
- bce = Bce_Color_Offset;
- Bce_Color_Offset = _SLtt_get_bce_color_offset ();
- if (bce == Bce_Color_Offset)
- return;
-
- if ((tt_Use_Blink_For_ACS != NULL)
- && (*tt_Use_Blink_For_ACS != 0))
- return; /* this mode does not support non-BCE
- * terminals.
- */
-
- for (i = 0; i < Screen_Rows; i++)
- {
- SLsmg_Char_Type *s, *smax;
-
- SL_Screen[i].flags |= TRASHED;
- s = SL_Screen[i].neew;
- smax = s + Screen_Cols;
-
- while (s < smax)
- {
- int color = (int) SLSMG_EXTRACT_COLOR(*s);
- int acs;
-
- if (color < 0)
- {
- s++;
- continue;
- }
-
- acs = color & 0x80;
- color = (color & 0x7F) - bce;
- color += Bce_Color_Offset;
- if (color >= 0)
- {
- unsigned char ch = SLSMG_EXTRACT_CHAR(*s);
- *s = SLSMG_BUILD_CHAR(ch, ((color&0x7F)|acs));
- }
- s++;
- }
- }
-}
-#endif
-
-void SLsmg_refresh (void)
-{
- int i;
-#ifndef IBMPC_SYSTEM
- int trashed = 0;
-#endif
-
- if (Smg_Inited == 0) return;
-
- if (Screen_Trashed)
- {
- Cls_Flag = 1;
- for (i = 0; i < Screen_Rows; i++)
- SL_Screen[i].flags |= TRASHED;
-#ifdef REQUIRES_NON_BCE_SUPPORT
- adjust_colors ();
-#endif
- }
-
-#ifndef IBMPC_SYSTEM
- for (i = 0; i < Screen_Rows; i++)
- {
- if (SL_Screen[i].flags == 0) continue;
- SL_Screen[i].new_hash = compute_hash (SL_Screen[i].neew, Screen_Cols);
- trashed = 1;
- }
-#endif
-
- if (Cls_Flag)
- {
- (*tt_normal_video) (); (*tt_cls) ();
- }
-#ifndef IBMPC_SYSTEM
- else if (trashed && (*tt_Term_Cannot_Scroll == 0)) try_scroll ();
-#endif
-
- for (i = 0; i < Screen_Rows; i++)
- {
- if (SL_Screen[i].flags == 0) continue;
-
- if (Cls_Flag || SL_Screen[i].flags & TRASHED)
- {
- int color = This_Color;
-
- if (Cls_Flag == 0)
- {
- (*tt_goto_rc) (i, 0);
- (*tt_del_eol) ();
- }
- This_Color = 0;
- blank_line (SL_Screen[i].old, Screen_Cols, ' ');
- This_Color = color;
- }
-
- SL_Screen[i].old[Screen_Cols] = 0;
- SL_Screen[i].neew[Screen_Cols] = 0;
-
- (*tt_smart_puts) (SL_Screen[i].neew, SL_Screen[i].old, Screen_Cols, i);
-
- SLMEMCPY ((char *) SL_Screen[i].old, (char *) SL_Screen[i].neew,
- Screen_Cols * sizeof (SLsmg_Char_Type));
-
- SL_Screen[i].flags = 0;
-#ifndef IBMPC_SYSTEM
- SL_Screen[i].old_hash = SL_Screen[i].new_hash;
-#endif
- }
-
- if (point_visible (1)) (*tt_goto_rc) (This_Row - Start_Row, This_Col - Start_Col);
- (*tt_flush_output) ();
- Cls_Flag = 0;
- Screen_Trashed = 0;
-}
-
-static int compute_clip (int row, int n, int box_start, int box_end,
- int *rmin, int *rmax)
-{
- int row_max;
-
- if (n < 0) return 0;
- if (row >= box_end) return 0;
- row_max = row + n;
- if (row_max <= box_start) return 0;
-
- if (row < box_start) row = box_start;
- if (row_max >= box_end) row_max = box_end;
- *rmin = row;
- *rmax = row_max;
- return 1;
-}
-
-void SLsmg_touch_lines (int row, unsigned int n)
-{
- int i;
- int r1, r2;
-
- /* Allow this function to be called even when we are not initialied.
- * Calling this function is useful after calling SLtt_set_color
- * to force the display to be redrawn
- */
-
- if (Smg_Inited == 0)
- return;
-
- if (0 == compute_clip (row, (int) n, Start_Row, Start_Row + Screen_Rows, &r1, &r2))
- return;
-
- r1 -= Start_Row;
- r2 -= Start_Row;
- for (i = r1; i < r2; i++)
- {
- SL_Screen[i].flags |= TRASHED;
- }
-}
-
-void SLsmg_touch_screen (void)
-{
- Screen_Trashed = 1;
-}
-
-
-#ifndef IBMPC_SYSTEM
-static char Fake_Alt_Char_Pairs [] = "a:j+k+l+m+q-t+u+v+w+x|n+`+f\\g#~o,<+>.v-^h#0#";
-
-static void init_alt_char_set (void)
-{
- int i;
- unsigned char *p, *pmax, ch;
-
- if (Alt_Char_Set[128] == 128) return;
-
- i = 32;
- memset ((char *)Alt_Char_Set, ' ', i);
- while (i <= 128)
- {
- Alt_Char_Set [i] = i;
- i++;
- }
-
- /* Map to VT100 */
- if (*tt_Has_Alt_Charset)
- {
- if (tt_Graphics_Char_Pairs == NULL) p = NULL;
- else p = (unsigned char *) *tt_Graphics_Char_Pairs;
- if (p == NULL) return;
- }
- else p = (unsigned char *) Fake_Alt_Char_Pairs;
- pmax = p + strlen ((char *) p);
-
- /* Some systems have messed up entries for this */
- while (p < pmax)
- {
- ch = *p++;
- ch &= 0x7F; /* should be unnecessary */
- Alt_Char_Set [ch] = *p;
- p++;
- }
-}
-#endif
-
-#ifndef IBMPC_SYSTEM
-# define BLOCK_SIGNALS SLsig_block_signals ()
-# define UNBLOCK_SIGNALS SLsig_unblock_signals ()
-#else
-# define BLOCK_SIGNALS (void)0
-# define UNBLOCK_SIGNALS (void)0
-#endif
-
-static int Smg_Suspended;
-int SLsmg_suspend_smg (void)
-{
- BLOCK_SIGNALS;
-
- if (Smg_Suspended == 0)
- {
- (*tt_reset_video) ();
- Smg_Suspended = 1;
- }
-
- UNBLOCK_SIGNALS;
- return 0;
-}
-
-int SLsmg_resume_smg (void)
-{
- BLOCK_SIGNALS;
-
- if (Smg_Suspended == 0)
- {
- UNBLOCK_SIGNALS;
- return 0;
- }
-
- Smg_Suspended = 0;
-
- if (-1 == (*tt_init_video) ())
- {
- UNBLOCK_SIGNALS;
- return -1;
- }
-
- Cls_Flag = 1;
- SLsmg_touch_screen ();
- SLsmg_refresh ();
-
- UNBLOCK_SIGNALS;
- return 0;
-}
-
-
-static void reset_smg (void)
-{
- int i;
- if (Smg_Inited == 0)
- return;
-
- for (i = 0; i < Screen_Rows; i++)
- {
- SLfree ((char *)SL_Screen[i].old);
- SLfree ((char *)SL_Screen[i].neew);
- SL_Screen[i].old = SL_Screen[i].neew = NULL;
- }
- This_Alt_Char = This_Color = 0;
- Smg_Inited = 0;
-}
-
-
-static int init_smg (void)
-{
- int i, len;
- SLsmg_Char_Type *old, *neew;
-
- Smg_Inited = 0;
-
-#ifdef REQUIRES_NON_BCE_SUPPORT
- Bce_Color_Offset = _SLtt_get_bce_color_offset ();
-#endif
-
- Screen_Rows = *tt_Screen_Rows;
- if (Screen_Rows > MAX_SCREEN_SIZE)
- Screen_Rows = MAX_SCREEN_SIZE;
-
- Screen_Cols = *tt_Screen_Cols;
-
- This_Col = This_Row = Start_Col = Start_Row = 0;
-
- This_Alt_Char = 0;
- SLsmg_set_color (0);
- Cls_Flag = 1;
-#ifndef IBMPC_SYSTEM
- init_alt_char_set ();
-#endif
- len = Screen_Cols + 3;
- for (i = 0; i < Screen_Rows; i++)
- {
- if ((NULL == (old = (SLsmg_Char_Type *) SLmalloc (sizeof(SLsmg_Char_Type) * len)))
- || ((NULL == (neew = (SLsmg_Char_Type *) SLmalloc (sizeof(SLsmg_Char_Type) * len)))))
- {
- SLfree ((char *) old);
- return -1;
- }
- blank_line (old, len, ' ');
- blank_line (neew, len, ' ');
- SL_Screen[i].old = old;
- SL_Screen[i].neew = neew;
- SL_Screen[i].flags = 0;
-#ifndef IBMPC_SYSTEM
- Blank_Hash = compute_hash (old, Screen_Cols);
- SL_Screen[i].new_hash = SL_Screen[i].old_hash = Blank_Hash;
-#endif
- }
-
- _SLtt_color_changed_hook = SLsmg_touch_screen;
- Screen_Trashed = 1;
- Smg_Inited = 1;
- return 0;
-}
-
-
-int SLsmg_init_smg (void)
-{
- int ret;
-
- BLOCK_SIGNALS;
-
- if (Smg_Inited)
- SLsmg_reset_smg ();
-
- if (-1 == (*tt_init_video) ())
- {
- UNBLOCK_SIGNALS;
- return -1;
- }
-
- if (-1 == (ret = init_smg ()))
- (void) (*tt_reset_video)();
-
- UNBLOCK_SIGNALS;
- return ret;
-}
-
-int SLsmg_reinit_smg (void)
-{
- int ret;
-
- if (Smg_Inited == 0)
- return SLsmg_init_smg ();
-
- BLOCK_SIGNALS;
- reset_smg ();
- ret = init_smg ();
- UNBLOCK_SIGNALS;
- return ret;
-}
-
-void SLsmg_reset_smg (void)
-{
- if (Smg_Inited == 0)
- return;
-
- BLOCK_SIGNALS;
-
- reset_smg ();
- (*tt_reset_video)();
-
- UNBLOCK_SIGNALS;
-}
-
-SLsmg_Char_Type SLsmg_char_at (void)
-{
- if (Smg_Inited == 0) return 0;
-
- if (point_visible (1))
- {
- return SL_Screen[This_Row - Start_Row].neew[This_Col - Start_Col];
- }
- return 0;
-}
-
-void SLsmg_vprintf (char *fmt, va_list ap)
-{
- char buf[1024];
-
- if (Smg_Inited == 0) return;
-
- (void) _SLvsnprintf (buf, sizeof (buf), fmt, ap);
- SLsmg_write_string (buf);
-}
-
-void SLsmg_printf (char *fmt, ...)
-{
- va_list ap;
- unsigned int len;
- char *f;
-
- if (Smg_Inited == 0) return;
-
- va_start(ap, fmt);
-
- f = fmt;
- while (*f && (*f != '%'))
- f++;
- len = (unsigned int) (f - fmt);
- if (len) SLsmg_write_nchars (fmt, len);
-
- if (*f != 0)
- SLsmg_vprintf (f, ap);
-
- va_end (ap);
-}
-
-void SLsmg_set_screen_start (int *r, int *c)
-{
- int orow = Start_Row, oc = Start_Col;
-
- if (Smg_Inited == 0) return;
-
- if (c == NULL) Start_Col = 0;
- else
- {
- Start_Col = *c;
- *c = oc;
- }
- if (r == NULL) Start_Row = 0;
- else
- {
- Start_Row = *r;
- *r = orow;
- }
-}
-
-void SLsmg_draw_object (int r, int c, unsigned char object)
-{
- This_Row = r; This_Col = c;
-
- if (Smg_Inited == 0) return;
-
- if (point_visible (1))
- {
- int color = This_Color;
- This_Color |= ALT_CHAR_FLAG;
- SLsmg_write_char (object);
- This_Color = color;
- }
-
- This_Col = c + 1;
-}
-
-void SLsmg_draw_hline (unsigned int n)
-{
- static unsigned char hbuf[16];
- int count;
- int cmin, cmax;
- int final_col = This_Col + (int) n;
- int save_color;
-
- if (Smg_Inited == 0) return;
-
- if ((This_Row < Start_Row) || (This_Row >= Start_Row + Screen_Rows)
- || (0 == compute_clip (This_Col, n, Start_Col, Start_Col + Screen_Cols,
- &cmin, &cmax)))
- {
- This_Col = final_col;
- return;
- }
-
- if (hbuf[0] == 0)
- {
- SLMEMSET ((char *) hbuf, SLSMG_HLINE_CHAR, 16);
- }
-
- n = (unsigned int)(cmax - cmin);
- count = n / 16;
-
- save_color = This_Color;
- This_Color |= ALT_CHAR_FLAG;
- This_Col = cmin;
-
- SLsmg_write_nchars ((char *) hbuf, n % 16);
- while (count-- > 0)
- {
- SLsmg_write_nchars ((char *) hbuf, 16);
- }
-
- This_Color = save_color;
- This_Col = final_col;
-}
-
-void SLsmg_draw_vline (int n)
-{
- unsigned char ch = SLSMG_VLINE_CHAR;
- int c = This_Col, rmin, rmax;
- int final_row = This_Row + n;
- int save_color;
-
- if (Smg_Inited == 0) return;
-
- if (((c < Start_Col) || (c >= Start_Col + Screen_Cols)) ||
- (0 == compute_clip (This_Row, n, Start_Row, Start_Row + Screen_Rows,
- &rmin, &rmax)))
- {
- This_Row = final_row;
- return;
- }
-
- save_color = This_Color;
- This_Color |= ALT_CHAR_FLAG;
-
- for (This_Row = rmin; This_Row < rmax; This_Row++)
- {
- This_Col = c;
- SLsmg_write_nchars ((char *) &ch, 1);
- }
-
- This_Col = c; This_Row = final_row;
- This_Color = save_color;
-}
-
-void SLsmg_draw_box (int r, int c, unsigned int dr, unsigned int dc)
-{
- if (Smg_Inited == 0) return;
-
- if (!dr || !dc) return;
- This_Row = r; This_Col = c;
- dr--; dc--;
- SLsmg_draw_hline (dc);
- SLsmg_draw_vline (dr);
- This_Row = r; This_Col = c;
- SLsmg_draw_vline (dr);
- SLsmg_draw_hline (dc);
- SLsmg_draw_object (r, c, SLSMG_ULCORN_CHAR);
- SLsmg_draw_object (r, c + (int) dc, SLSMG_URCORN_CHAR);
- SLsmg_draw_object (r + (int) dr, c, SLSMG_LLCORN_CHAR);
- SLsmg_draw_object (r + (int) dr, c + (int) dc, SLSMG_LRCORN_CHAR);
- This_Row = r; This_Col = c;
-}
-
-void SLsmg_fill_region (int r, int c, unsigned int dr, unsigned int dc, unsigned char ch)
-{
- static unsigned char hbuf[16];
- int count;
- int dcmax, rmax;
-
- if (Smg_Inited == 0) return;
-
- SLsmg_gotorc (r, c);
- r = This_Row; c = This_Col;
-
- dcmax = Screen_Cols - This_Col;
- if (dcmax < 0)
- return;
-
- if (dc > (unsigned int) dcmax) dc = (unsigned int) dcmax;
-
- rmax = This_Row + dr;
- if (rmax > Screen_Rows) rmax = Screen_Rows;
-
-#if 0
- ch = Alt_Char_Set[ch];
-#endif
- if (ch != hbuf[0]) SLMEMSET ((char *) hbuf, (char) ch, 16);
-
- for (This_Row = r; This_Row < rmax; This_Row++)
- {
- This_Col = c;
- count = dc / 16;
- SLsmg_write_nchars ((char *) hbuf, dc % 16);
- while (count-- > 0)
- {
- SLsmg_write_nchars ((char *) hbuf, 16);
- }
- }
-
- This_Row = r;
-}
-
-void SLsmg_forward (int n)
-{
- This_Col += n;
-}
-
-void SLsmg_write_color_chars (SLsmg_Char_Type *s, unsigned int len)
-{
- SLsmg_Char_Type *smax, sh;
- char buf[32], *b, *bmax;
- int color, save_color;
-
- if (Smg_Inited == 0) return;
-
- smax = s + len;
- b = buf;
- bmax = b + sizeof (buf);
-
- save_color = This_Color;
-
- while (s < smax)
- {
- sh = *s++;
-
- color = SLSMG_EXTRACT_COLOR(sh);
-
-#if REQUIRES_NON_BCE_SUPPORT
- if (Bce_Color_Offset)
- {
- if (color & 0x80)
- color = ((color & 0x7F) + Bce_Color_Offset) | 0x80;
- else
- color = ((color & 0x7F) + Bce_Color_Offset) & 0x7F;
- }
-#endif
-
- if ((color != This_Color) || (b == bmax))
- {
- if (b != buf)
- {
- SLsmg_write_nchars (buf, (int) (b - buf));
- b = buf;
- }
- This_Color = color;
- }
- *b++ = (char) SLSMG_EXTRACT_CHAR(sh);
- }
-
- if (b != buf)
- SLsmg_write_nchars (buf, (unsigned int) (b - buf));
-
- This_Color = save_color;
-}
-
-unsigned int SLsmg_read_raw (SLsmg_Char_Type *buf, unsigned int len)
-{
- unsigned int r, c;
-
- if (Smg_Inited == 0) return 0;
-
- if (0 == point_visible (1)) return 0;
-
- r = (unsigned int) (This_Row - Start_Row);
- c = (unsigned int) (This_Col - Start_Col);
-
- if (c + len > (unsigned int) Screen_Cols)
- len = (unsigned int) Screen_Cols - c;
-
- memcpy ((char *) buf, (char *) (SL_Screen[r].neew + c), len * sizeof (SLsmg_Char_Type));
- return len;
-}
-
-unsigned int SLsmg_write_raw (SLsmg_Char_Type *buf, unsigned int len)
-{
- unsigned int r, c;
- SLsmg_Char_Type *dest;
-
- if (Smg_Inited == 0) return 0;
-
- if (0 == point_visible (1)) return 0;
-
- r = (unsigned int) (This_Row - Start_Row);
- c = (unsigned int) (This_Col - Start_Col);
-
- if (c + len > (unsigned int) Screen_Cols)
- len = (unsigned int) Screen_Cols - c;
-
- dest = SL_Screen[r].neew + c;
-
- if (0 != memcmp ((char *) dest, (char *) buf, len * sizeof (SLsmg_Char_Type)))
- {
- memcpy ((char *) dest, (char *) buf, len * sizeof (SLsmg_Char_Type));
- SL_Screen[r].flags |= TOUCHED;
- }
- return len;
-}
-
-void
-SLsmg_set_color_in_region (int color, int r, int c, unsigned int dr, unsigned int dc)
-{
- int cmax, rmax;
- SLsmg_Char_Type char_mask;
-
- if (Smg_Inited == 0) return;
-
- c -= Start_Col;
- r -= Start_Row;
-
- cmax = c + (int) dc;
- rmax = r + (int) dr;
-
- if (cmax > Screen_Cols) cmax = Screen_Cols;
- if (rmax > Screen_Rows) rmax = Screen_Rows;
-
- if (c < 0) c = 0;
- if (r < 0) r = 0;
-
-#if REQUIRES_NON_BCE_SUPPORT
- if (Bce_Color_Offset)
- {
- if (color & 0x80)
- color = ((color & 0x7F) + Bce_Color_Offset) | 0x80;
- else
- color = ((color & 0x7F) + Bce_Color_Offset) & 0x7F;
- }
-#endif
- color = color << 8;
-
- char_mask = 0xFF;
-
-#ifndef IBMPC_SYSTEM
- if ((tt_Use_Blink_For_ACS == NULL)
- || (0 == *tt_Use_Blink_For_ACS))
- char_mask = 0x80FF;
-#endif
-
- while (r < rmax)
- {
- SLsmg_Char_Type *s, *smax;
-
- SL_Screen[r].flags |= TOUCHED;
- s = SL_Screen[r].neew;
- smax = s + cmax;
- s += c;
-
- while (s < smax)
- {
- *s = (*s & char_mask) | color;
- s++;
- }
- r++;
- }
-}
-
-void SLsmg_set_terminal_info (SLsmg_Term_Type *tt)
-{
- if (tt == NULL) /* use default */
- return;
-
- if ((tt->tt_normal_video == NULL)
- || (tt->tt_goto_rc == NULL)
- || (tt->tt_cls == NULL)
- || (tt->tt_del_eol == NULL)
- || (tt->tt_smart_puts == NULL)
- || (tt->tt_flush_output == NULL)
- || (tt->tt_reset_video == NULL)
- || (tt->tt_init_video == NULL)
-#ifndef IBMPC_SYSTEM
- || (tt->tt_set_scroll_region == NULL)
- || (tt->tt_reverse_index == NULL)
- || (tt->tt_reset_scroll_region == NULL)
- || (tt->tt_delete_nlines == NULL)
- /* Variables */
- || (tt->tt_term_cannot_scroll == NULL)
- || (tt->tt_has_alt_charset == NULL)
-#if 0 /* These can be NULL */
- || (tt->tt_use_blink_for_acs == NULL)
- || (tt->tt_graphic_char_pairs == NULL)
-#endif
- || (tt->tt_screen_cols == NULL)
- || (tt->tt_screen_rows == NULL)
-#endif
- )
- SLang_exit_error ("Terminal not powerful enough for SLsmg");
-
- tt_normal_video = tt->tt_normal_video;
- tt_goto_rc = tt->tt_goto_rc;
- tt_cls = tt->tt_cls;
- tt_del_eol = tt->tt_del_eol;
- tt_smart_puts = tt->tt_smart_puts;
- tt_flush_output = tt->tt_flush_output;
- tt_reset_video = tt->tt_reset_video;
- tt_init_video = tt->tt_init_video;
-
-#ifndef IBMPC_SYSTEM
- tt_set_scroll_region = tt->tt_set_scroll_region;
- tt_reverse_index = tt->tt_reverse_index;
- tt_reset_scroll_region = tt->tt_reset_scroll_region;
- tt_delete_nlines = tt->tt_delete_nlines;
-
- tt_Term_Cannot_Scroll = tt->tt_term_cannot_scroll;
- tt_Has_Alt_Charset = tt->tt_has_alt_charset;
- tt_Use_Blink_For_ACS = tt->tt_use_blink_for_acs;
- tt_Graphics_Char_Pairs = tt->tt_graphic_char_pairs;
-#endif
-
- tt_Screen_Cols = tt->tt_screen_cols;
- tt_Screen_Rows = tt->tt_screen_rows;
-}
-
diff --git a/mdk-stage1/slang/slstd.c b/mdk-stage1/slang/slstd.c
deleted file mode 100644
index b05dfcddb..000000000
--- a/mdk-stage1/slang/slstd.c
+++ /dev/null
@@ -1,724 +0,0 @@
-/* -*- mode: C; mode: fold; -*- */
-/* Standard intrinsic functions for S-Lang. Included here are string
- and array operations */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-/*{{{ Include Files */
-
-#include <time.h>
-
-#ifndef __QNX__
-# if defined(__GO32__) || defined(__WATCOMC__)
-# include <dos.h>
-# include <bios.h>
-# endif
-#endif
-
-#if SLANG_HAS_FLOAT
-# include <math.h>
-#endif
-
-#include "slang.h"
-#include "_slang.h"
-
-/*}}}*/
-
-/* builtin stack manipulation functions */
-int SLdo_pop(void) /*{{{*/
-{
- return SLdo_pop_n (1);
-}
-
-/*}}}*/
-
-int SLdo_pop_n (unsigned int n)
-{
- SLang_Object_Type x;
-
- while (n--)
- {
- if (SLang_pop(&x)) return -1;
- SLang_free_object (&x);
- }
-
- return 0;
-}
-
-static void do_dup(void) /*{{{*/
-{
- (void) SLdup_n (1);
-}
-
-/*}}}*/
-
-static int length_cmd (void)
-{
- SLang_Class_Type *cl;
- SLang_Object_Type obj;
- VOID_STAR p;
- unsigned int length;
- int len;
-
- if (-1 == SLang_pop (&obj))
- return -1;
-
- cl = _SLclass_get_class (obj.data_type);
- p = _SLclass_get_ptr_to_value (cl, &obj);
-
- len = 1;
- if (cl->cl_length != NULL)
- {
- if (0 == (*cl->cl_length)(obj.data_type, p, &length))
- len = (int) length;
- else
- len = -1;
- }
-
- SLang_free_object (&obj);
- return len;
-}
-
-/* convert integer to a string of length 1 */
-static void char_cmd (int *x) /*{{{*/
-{
- char ch, buf[2];
-
- ch = (char) *x;
- buf[0] = ch;
- buf[1] = 0;
- SLang_push_string (buf);
-}
-
-/*}}}*/
-
-/* format object into a string and returns slstring */
-char *_SLstringize_object (SLang_Object_Type *obj) /*{{{*/
-{
- SLang_Class_Type *cl;
- unsigned char stype;
- VOID_STAR p;
- char *s, *s1;
-
- stype = obj->data_type;
- p = (VOID_STAR) &obj->v.ptr_val;
-
- cl = _SLclass_get_class (stype);
-
- s = (*cl->cl_string) (stype, p);
- if (s != NULL)
- {
- s1 = SLang_create_slstring (s);
- SLfree (s);
- s = s1;
- }
- return s;
-}
-/*}}}*/
-
-int SLang_run_hooks(char *hook, unsigned int num_args, ...)
-{
- unsigned int i;
- va_list ap;
-
- if (SLang_Error) return -1;
-
- if (0 == SLang_is_defined (hook))
- return 0;
-
- (void) SLang_start_arg_list ();
- va_start (ap, num_args);
- for (i = 0; i < num_args; i++)
- {
- char *arg;
-
- arg = va_arg (ap, char *);
- if (-1 == SLang_push_string (arg))
- break;
- }
- va_end (ap);
- (void) SLang_end_arg_list ();
-
- if (SLang_Error) return -1;
- return SLang_execute_function (hook);
-}
-
-static void intrin_getenv_cmd (char *s)
-{
- SLang_push_string (getenv (s));
-}
-
-#ifdef HAVE_PUTENV
-static void intrin_putenv (void) /*{{{*/
-{
- char *s;
-
- /* Some putenv implementations required malloced strings. */
- if (SLpop_string(&s)) return;
-
- if (putenv (s))
- {
- SLang_Error = SL_INTRINSIC_ERROR;
- SLfree (s);
- }
-
- /* Note that s is NOT freed */
-}
-
-/*}}}*/
-
-#endif
-
-static void lang_print_stack (void) /*{{{*/
-{
- char buf[32];
- unsigned int n;
-
- n = (unsigned int) (_SLStack_Pointer - _SLRun_Stack);
- while (n)
- {
- n--;
- sprintf (buf, "(%u)", n);
- _SLdump_objects (buf, _SLRun_Stack + n, 1, 1);
- }
-}
-
-/*}}}*/
-
-static void byte_compile_file (char *f, int *m)
-{
- SLang_byte_compile_file (f, *m);
-}
-
-static void intrin_type_info1 (void)
-{
- SLang_Object_Type obj;
- unsigned int type;
-
- if (-1 == SLang_pop (&obj))
- return;
-
- type = obj.data_type;
- if (type == SLANG_ARRAY_TYPE)
- type = obj.v.array_val->data_type;
-
- SLang_free_object (&obj);
-
- _SLang_push_datatype (type);
-}
-
-static void intrin_type_info (void)
-{
- SLang_Object_Type obj;
-
- if (-1 == SLang_pop (&obj))
- return;
-
- _SLang_push_datatype (obj.data_type);
- SLang_free_object (&obj);
-}
-
-void _SLstring_intrinsic (void) /*{{{*/
-{
- SLang_Object_Type x;
- char *s;
-
- if (SLang_pop (&x)) return;
- if (NULL != (s = _SLstringize_object (&x)))
- _SLang_push_slstring (s);
-
- SLang_free_object (&x);
-}
-
-/*}}}*/
-
-static void intrin_typecast (void)
-{
- unsigned char to_type;
- if (0 == _SLang_pop_datatype (&to_type))
- (void) SLclass_typecast (to_type, 0, 1);
-}
-
-#if SLANG_HAS_FLOAT
-static void intrin_double (void)
-{
- (void) SLclass_typecast (SLANG_DOUBLE_TYPE, 0, 1);
-}
-
-#endif
-
-static void intrin_int (void) /*{{{*/
-{
- (void) SLclass_typecast (SLANG_INT_TYPE, 0, 1);
-}
-
-/*}}}*/
-
-static char *
-intrin_function_name (void)
-{
- if (NULL == _SLang_Current_Function_Name)
- return "";
- return _SLang_Current_Function_Name;
-}
-
-static void intrin_message (char *s)
-{
- SLang_vmessage ("%s", s);
-}
-
-static void intrin_error (char *s)
-{
- SLang_verror (SL_USER_ERROR, "%s", s);
-}
-
-static void intrin_pop_n (int *n)
-{
- SLdo_pop_n ((unsigned int) *n);
-}
-
-static void intrin_reverse_stack (int *n)
-{
- SLreverse_stack (*n);
-}
-
-static void intrin_roll_stack (int *n)
-{
- SLroll_stack (*n);
-}
-
-static void usage (void)
-{
- char *msg;
-
- _SLstrops_do_sprintf_n (SLang_Num_Function_Args - 1); /* do not include format */
-
- if (-1 == SLang_pop_slstring (&msg))
- return;
-
- SLang_verror (SL_USAGE_ERROR, "Usage: %s", msg);
- SLang_free_slstring (msg);
-}
-
-/* Convert string to integer */
-static int intrin_integer (char *s)
-{
- int i;
-
- i = SLatoi ((unsigned char *) s);
-
- if (SLang_Error)
- SLang_verror (SL_TYPE_MISMATCH, "Unable to convert string to integer");
- return i;
-}
-/*}}}*/
-
-static void guess_type (char *s)
-{
- _SLang_push_datatype (SLang_guess_type(s));
-}
-
-static int load_file (char *s)
-{
- if (-1 == SLang_load_file (s))
- return 0;
- return 1;
-}
-
-static void get_doc_string (char *file, char *topic)
-{
- FILE *fp;
- char line[1024];
- unsigned int topic_len, str_len;
- char *str;
- char ch;
-
- if (NULL == (fp = fopen (file, "r")))
- {
- SLang_push_null ();
- return;
- }
-
- topic_len = strlen (topic);
- ch = *topic;
-
- while (1)
- {
- if (NULL == fgets (line, sizeof(line), fp))
- {
- fclose (fp);
- (void) SLang_push_null ();
- return;
- }
-
- if ((ch == *line)
- && (0 == strncmp (line, topic, topic_len))
- && ((line[topic_len] == '\n') || (line [topic_len] == 0)
- || (line[topic_len] == ' ') || (line[topic_len] == '\t')))
- break;
- }
-
- if (NULL == (str = SLmake_string (line)))
- {
- fclose (fp);
- (void) SLang_push_null ();
- return;
- }
- str_len = strlen (str);
-
- while (NULL != fgets (line, sizeof (line), fp))
- {
- unsigned int len;
- char *new_str;
-
- ch = *line;
- if (ch == '#') continue;
- if (ch == '-') break;
-
- len = strlen (line);
- if (NULL == (new_str = SLrealloc (str, str_len + len + 1)))
- {
- SLfree (str);
- str = NULL;
- break;
- }
- str = new_str;
- strcpy (str + str_len, line);
- str_len += len;
- }
-
- fclose (fp);
-
- (void) SLang_push_malloced_string (str);
-}
-
-static int push_string_array_elements (SLang_Array_Type *at)
-{
- char **strs;
- unsigned int num;
- unsigned int i;
-
- if (at == NULL)
- return -1;
-
- strs = (char **)at->data;
- num = at->num_elements;
- for (i = 0; i < num; i++)
- {
- if (-1 == SLang_push_string (strs[i]))
- {
- SLdo_pop_n (i);
- return -1;
- }
- }
- SLang_push_integer ((int) num);
- return 0;
-}
-
-
-static void intrin_apropos (void)
-{
- int num_args;
- char *pat;
- char *namespace_name;
- unsigned int flags;
- SLang_Array_Type *at;
-
- num_args = SLang_Num_Function_Args;
-
- if (-1 == SLang_pop_uinteger (&flags))
- return;
- if (-1 == SLang_pop_slstring (&pat))
- return;
-
- namespace_name = NULL;
- at = NULL;
- if (num_args == 3)
- {
- if (-1 == SLang_pop_slstring (&namespace_name))
- goto free_and_return;
- }
-
- at = _SLang_apropos (namespace_name, pat, flags);
- if (num_args == 3)
- {
- (void) SLang_push_array (at, 0);
- goto free_and_return;
- }
-
- /* Maintain compatibility with old version of the function. That version
- * did not take three arguments and returned everything to the stack.
- * Yuk.
- */
- (void) push_string_array_elements (at);
-
- free_and_return:
- /* NULLs ok */
- SLang_free_slstring (namespace_name);
- SLang_free_slstring (pat);
- SLang_free_array (at);
-}
-
-static int intrin_get_defines (void)
-{
- int n = 0;
- char **s = _SLdefines;
-
- while (*s != NULL)
- {
- if (-1 == SLang_push_string (*s))
- {
- SLdo_pop_n ((unsigned int) n);
- return -1;
- }
- s++;
- n++;
- }
- return n;
-}
-
-static void intrin_get_reference (char *name)
-{
- _SLang_push_ref (1, (VOID_STAR) _SLlocate_name (name));
-}
-
-#ifdef HAVE_SYS_UTSNAME_H
-# include <sys/utsname.h>
-#endif
-
-static void uname_cmd (void)
-{
-#ifdef HAVE_UNAME
- struct utsname u;
- char *field_names [6];
- unsigned char field_types[6];
- VOID_STAR field_values [6];
- char *ptrs[6];
- int i;
-
- if (-1 == uname (&u))
- (void) SLang_push_null ();
-
- field_names[0] = "sysname"; ptrs[0] = u.sysname;
- field_names[1] = "nodename"; ptrs[1] = u.nodename;
- field_names[2] = "release"; ptrs[2] = u.release;
- field_names[3] = "version"; ptrs[3] = u.version;
- field_names[4] = "machine"; ptrs[4] = u.machine;
-
- for (i = 0; i < 5; i++)
- {
- field_types[i] = SLANG_STRING_TYPE;
- field_values[i] = (VOID_STAR) &ptrs[i];
- }
-
- if (0 == SLstruct_create_struct (5, field_names, field_types, field_values))
- return;
-#endif
-
- SLang_push_null ();
-}
-
-static void uninitialize_ref_intrin (SLang_Ref_Type *ref)
-{
- (void) _SLang_uninitialize_ref (ref);
-}
-
-static SLang_Intrin_Fun_Type SLang_Basic_Table [] = /*{{{*/
-{
- MAKE_INTRINSIC_1("__is_initialized", _SLang_is_ref_initialized, SLANG_INT_TYPE, SLANG_REF_TYPE),
- MAKE_INTRINSIC_S("__get_reference", intrin_get_reference, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_1("__uninitialize", uninitialize_ref_intrin, SLANG_VOID_TYPE, SLANG_REF_TYPE),
- MAKE_INTRINSIC_SS("get_doc_string_from_file", get_doc_string, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SS("autoload", SLang_autoload, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("is_defined", SLang_is_defined, SLANG_INT_TYPE),
- MAKE_INTRINSIC_0("string", _SLstring_intrinsic, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("uname", uname_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("getenv", intrin_getenv_cmd, SLANG_VOID_TYPE),
-#ifdef HAVE_PUTENV
- MAKE_INTRINSIC_0("putenv", intrin_putenv, SLANG_VOID_TYPE),
-#endif
- MAKE_INTRINSIC_S("evalfile", load_file, SLANG_INT_TYPE),
- MAKE_INTRINSIC_I("char", char_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("eval", SLang_load_string, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("dup", do_dup, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("integer", intrin_integer, SLANG_INT_TYPE),
- MAKE_INTRINSIC_S("system", SLsystem, SLANG_INT_TYPE),
- MAKE_INTRINSIC_0("_apropos", intrin_apropos, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("_trace_function", _SLang_trace_fun, SLANG_VOID_TYPE),
-#if SLANG_HAS_FLOAT
- MAKE_INTRINSIC_S("atof", _SLang_atof, SLANG_DOUBLE_TYPE),
- MAKE_INTRINSIC_0("double", intrin_double, SLANG_VOID_TYPE),
-#endif
- MAKE_INTRINSIC_0("int", intrin_int, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("typecast", intrin_typecast, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("_stkdepth", _SLstack_depth, SLANG_INT_TYPE),
- MAKE_INTRINSIC_I("_stk_reverse", intrin_reverse_stack, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("typeof", intrin_type_info, VOID_TYPE),
- MAKE_INTRINSIC_0("_typeof", intrin_type_info1, VOID_TYPE),
- MAKE_INTRINSIC_I("_pop_n", intrin_pop_n, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("_print_stack", lang_print_stack, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_I("_stk_roll", intrin_roll_stack, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SI("byte_compile_file", byte_compile_file, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("_clear_error", _SLang_clear_error, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("_function_name", intrin_function_name, SLANG_STRING_TYPE),
-#if SLANG_HAS_FLOAT
- MAKE_INTRINSIC_S("set_float_format", _SLset_double_format, SLANG_VOID_TYPE),
-#endif
- MAKE_INTRINSIC_S("_slang_guess_type", guess_type, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("error", intrin_error, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("message", intrin_message, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("__get_defined_symbols", intrin_get_defines, SLANG_INT_TYPE),
- MAKE_INTRINSIC_I("__pop_args", _SLstruct_pop_args, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_1("__push_args", _SLstruct_push_args, SLANG_VOID_TYPE, SLANG_ARRAY_TYPE),
- MAKE_INTRINSIC_0("usage", usage, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("implements", _SLang_implements_intrinsic, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("use_namespace", _SLang_use_namespace_intrinsic, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("current_namespace", _SLang_cur_namespace_intrinsic, SLANG_STRING_TYPE),
- MAKE_INTRINSIC_0("length", length_cmd, SLANG_INT_TYPE),
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-/*}}}*/
-
-#ifdef SLANG_DOC_DIR
-char *SLang_Doc_Dir = SLANG_DOC_DIR;
-#else
-char *SLang_Doc_Dir = "";
-#endif
-
-static SLang_Intrin_Var_Type Intrin_Vars[] =
-{
- MAKE_VARIABLE("_debug_info", &_SLang_Compile_Line_Num_Info, SLANG_INT_TYPE, 0),
- MAKE_VARIABLE("_auto_declare", &_SLang_Auto_Declare_Globals, SLANG_INT_TYPE, 0),
- MAKE_VARIABLE("_traceback", &SLang_Traceback, SLANG_INT_TYPE, 0),
- MAKE_VARIABLE("_slangtrace", &_SLang_Trace, SLANG_INT_TYPE, 0),
- MAKE_VARIABLE("_slang_version", &SLang_Version, SLANG_INT_TYPE, 1),
- MAKE_VARIABLE("_slang_version_string", &SLang_Version_String, SLANG_STRING_TYPE, 1),
- MAKE_VARIABLE("_NARGS", &SLang_Num_Function_Args, SLANG_INT_TYPE, 1),
- MAKE_VARIABLE("_slang_doc_dir", &SLang_Doc_Dir, SLANG_STRING_TYPE, 1),
- MAKE_VARIABLE("NULL", NULL, SLANG_NULL_TYPE, 1),
- SLANG_END_INTRIN_VAR_TABLE
-};
-
-int SLang_init_slang (void) /*{{{*/
-{
- char name[3];
- unsigned int i;
- char **s;
- static char *sys_defines [] =
- {
-#if defined(__os2__)
- "OS2",
-#endif
-#if defined(__MSDOS__)
- "MSDOS",
-#endif
-#if defined(__WIN16__)
- "WIN16",
-#endif
-#if defined (__WIN32__)
- "WIN32",
-#endif
-#if defined(__NT__)
- "NT",
-#endif
-#if defined (VMS)
- "VMS",
-#endif
-#ifdef REAL_UNIX_SYSTEM
- "UNIX",
-#endif
-#if SLANG_HAS_FLOAT
- "SLANG_DOUBLE_TYPE",
-#endif
- NULL
- };
-
- if (-1 == _SLregister_types ()) return -1;
-
- if ((-1 == SLadd_intrin_fun_table(SLang_Basic_Table, NULL))
- || (-1 == SLadd_intrin_var_table (Intrin_Vars, NULL))
- || (-1 == _SLang_init_slstrops ())
- || (-1 == _SLang_init_sltime ())
- || (-1 == _SLstruct_init ())
-#if SLANG_HAS_COMPLEX
- || (-1 == _SLinit_slcomplex ())
-#endif
-#if SLANG_HAS_ASSOC_ARRAYS
- || (-1 == SLang_init_slassoc ())
-#endif
- )
- return -1;
-
- SLadd_global_variable (SLANG_SYSTEM_NAME);
-
- s = sys_defines;
- while (*s != NULL)
- {
- if (-1 == SLdefine_for_ifdef (*s)) return -1;
- s++;
- }
-
- /* give temp global variables $0 --> $9 */
- name[2] = 0; name[0] = '$';
- for (i = 0; i < 10; i++)
- {
- name[1] = (char) (i + '0');
- SLadd_global_variable (name);
- }
-
- SLang_init_case_tables ();
-
- /* Now add a couple of macros */
- SLang_load_string (".(_NARGS 1 - Sprintf error)verror");
- SLang_load_string (".(_NARGS 1 - Sprintf message)vmessage");
-
- if (SLang_Error)
- return -1;
-
- return 0;
-}
-
-/*}}}*/
-
-int SLang_set_argc_argv (int argc, char **argv)
-{
- static int this_argc;
- static char **this_argv;
- int i;
-
- if (argc < 0) argc = 0;
- this_argc = argc;
-
- if (NULL == (this_argv = (char **) SLmalloc ((argc + 1) * sizeof (char *))))
- return -1;
- memset ((char *) this_argv, 0, sizeof (char *) * (argc + 1));
-
- for (i = 0; i < argc; i++)
- {
- if (NULL == (this_argv[i] = SLang_create_slstring (argv[i])))
- goto return_error;
- }
-
- if (-1 == SLadd_intrinsic_variable ("__argc", (VOID_STAR)&this_argc,
- SLANG_INT_TYPE, 1))
- goto return_error;
-
- if (-1 == SLang_add_intrinsic_array ("__argv", SLANG_STRING_TYPE, 1,
- (VOID_STAR) this_argv, 1, argc))
- goto return_error;
-
- return 0;
-
- return_error:
- for (i = 0; i < argc; i++)
- SLang_free_slstring (this_argv[i]); /* NULL ok */
- SLfree ((char *) this_argv);
-
- return -1;
-}
diff --git a/mdk-stage1/slang/slstdio.c b/mdk-stage1/slang/slstdio.c
deleted file mode 100644
index 05db1af77..000000000
--- a/mdk-stage1/slang/slstdio.c
+++ /dev/null
@@ -1,1050 +0,0 @@
-/* file stdio intrinsics for S-Lang */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#if defined(__unix__) || (defined (__os2__) && defined (__EMX__))
-# include <sys/types.h>
-#endif
-
-#ifdef HAVE_FCNTL_H
-# include <fcntl.h>
-#endif
-#ifdef HAVE_SYS_FCNTL_H
-# include <sys/fcntl.h>
-#endif
-
-#ifdef __unix__
-# include <sys/file.h>
-#endif
-
-#if defined(__BORLANDC__)
-# include <io.h>
-# include <dir.h>
-#endif
-
-#if defined(__DECC) && defined(VMS)
-# include <unixio.h>
-# include <unixlib.h>
-#endif
-
-#ifdef VMS
-# include <stat.h>
-#else
-# include <sys/stat.h>
-#endif
-
-#include <errno.h>
-
-#define SL_APP_WANTS_FOREACH
-#include "slang.h"
-#include "_slang.h"
-
-typedef struct
-{
- FILE *fp; /* kind of obvious */
- char *file; /* file name associated with pointer */
-
- unsigned int flags; /* modes, etc... */
-#define SL_READ 0x0001
-#define SL_WRITE 0x0002
-#define SL_BINARY 0x0004
-#define SL_FDOPEN 0x2000
-#define SL_PIPE 0x4000
-#define SL_INUSE 0x8000
-}
-SL_File_Table_Type;
-
-static SL_File_Table_Type *SL_File_Table;
-
-static SL_File_Table_Type *get_free_file_table_entry (void)
-{
- SL_File_Table_Type *t = SL_File_Table, *tmax;
-
- tmax = t + SL_MAX_FILES;
- while (t < tmax)
- {
- if (t->flags == 0)
- {
- memset ((char *) t, 0, sizeof (SL_File_Table_Type));
- return t;
- }
- t++;
- }
-
- return NULL;
-}
-
-static unsigned int file_process_flags (char *mode)
-{
- char ch;
- unsigned int flags = 0;
-
- while (1)
- {
- ch = *mode++;
- switch (ch)
- {
- case 'r': flags |= SL_READ;
- break;
- case 'w':
- case 'a':
- case 'A':
- flags |= SL_WRITE;
- break;
- case '+': flags |= SL_WRITE | SL_READ;
- break;
- case 'b': flags |= SL_BINARY;
- break;
- case 0:
- return flags;
-
- default:
- SLang_verror (SL_INVALID_PARM, "File flag %c is not supported", ch);
- return 0;
- }
- }
-}
-
-static int open_file_type (char *file, int fd, char *mode,
- FILE *(*open_fun)(char *, char *),
- int (*close_fun)(FILE *),
- unsigned int xflags)
-{
- FILE *fp;
- SL_File_Table_Type *t;
- unsigned int flags;
- SLang_MMT_Type *mmt;
-
- fp = NULL;
- t = NULL;
- mmt = NULL;
-
- if ((NULL == (t = get_free_file_table_entry ()))
- || (0 == (flags = file_process_flags(mode))))
- goto return_error;
-
- if (fd != -1)
- fp = fdopen (fd, mode);
- else
- fp = open_fun (file, mode);
-
- if (fp == NULL)
- {
- _SLerrno_errno = errno;
- goto return_error;
- }
-
- if (NULL == (mmt = SLang_create_mmt (SLANG_FILE_PTR_TYPE, (VOID_STAR) t)))
- goto return_error;
-
- t->fp = fp;
- t->flags = flags | xflags;
- fp = NULL; /* allow free_mmt to close fp */
-
- if ((NULL != (t->file = SLang_create_slstring (file)))
- && (0 == SLang_push_mmt (mmt)))
- return 0;
-
- /* drop */
-
- return_error:
- if (fp != NULL) (*close_fun) (fp);
- if (mmt != NULL) SLang_free_mmt (mmt);
- (void) SLang_push_null ();
- return -1;
-}
-
-/* Since some compilers do not have popen/pclose prototyped and in scope,
- * and pc compilers sometimes have silly prototypes involving PASCAL, etc.
- * use wrappers around the function to avoid compilation errors.
- */
-
-static FILE *fopen_fun (char *f, char *m)
-{
- return fopen (f, m);
-}
-static int fclose_fun (FILE *fp)
-{
- return fclose (fp);
-}
-
-static void stdio_fopen (char *file, char *mode)
-{
- (void) open_file_type (file, -1, mode, fopen_fun, fclose_fun, 0);
-}
-
-int _SLstdio_fdopen (char *file, int fd, char *mode)
-{
- if (fd == -1)
- {
- _SLerrno_errno = EBADF;
- (void) SLang_push_null ();
- return -1;
- }
-
- return open_file_type (file, fd, mode, NULL, fclose_fun, SL_FDOPEN);
-}
-
-#ifdef HAVE_POPEN
-static int pclose_fun (FILE *fp)
-{
- return pclose (fp);
-}
-
-static FILE *popen_fun (char *file, char *mode)
-{
- return popen (file, mode);
-}
-
-static void stdio_popen (char *file, char *mode)
-{
- (void) open_file_type (file, -1, mode, popen_fun, pclose_fun, SL_PIPE);
-}
-#endif
-
-/* returns pointer to file entry if it is open and consistent with
- flags. Returns NULL otherwise */
-static SLang_MMT_Type *pop_fp (unsigned int flags, FILE **fp_ptr)
-{
- SL_File_Table_Type *t;
- SLang_MMT_Type *mmt;
-
- *fp_ptr = NULL;
-
- if (NULL == (mmt = SLang_pop_mmt (SLANG_FILE_PTR_TYPE)))
- return NULL;
-
- t = (SL_File_Table_Type *) SLang_object_from_mmt (mmt);
- if ((t->flags & flags)
- && (NULL != (*fp_ptr = t->fp)))
- return mmt;
-
- SLang_free_mmt (mmt);
- return NULL;
-}
-
-static FILE *check_fp (SL_File_Table_Type *t, unsigned flags)
-{
- if ((t != NULL) && (t->flags & flags))
- return t->fp;
-
- return NULL;
-}
-
-char *SLang_get_name_from_fileptr (SLang_MMT_Type *mmt)
-{
- SL_File_Table_Type *ft;
-
- ft = (SL_File_Table_Type *) SLang_object_from_mmt (mmt);
- if (ft == NULL)
- return NULL;
- return ft->file;
-}
-
-int SLang_pop_fileptr (SLang_MMT_Type **mmt, FILE **fp)
-{
- if (NULL == (*mmt = pop_fp (0xFFFF, fp)))
- {
-#ifdef EBADF
- _SLerrno_errno = EBADF;
-#endif
- return -1;
- }
-
- return 0;
-}
-
-static int close_file_type (SL_File_Table_Type *t)
-{
- int ret = 0;
- FILE *fp;
-
- if (t == NULL)
- return -1;
-
- fp = t->fp;
-
- if (NULL == fp) ret = -1;
- else
- {
- if (0 == (t->flags & SL_PIPE))
- {
- if (EOF == (ret = fclose (fp)))
- _SLerrno_errno = errno;
- }
-#ifdef HAVE_POPEN
- else
- {
- if (-1 == (ret = pclose (fp)))
- _SLerrno_errno = errno;
- }
-#endif
- }
-
- if (t->file != NULL) SLang_free_slstring (t->file);
- memset ((char *) t, 0, sizeof (SL_File_Table_Type));
- return ret;
-}
-
-static int stdio_fclose (SL_File_Table_Type *t)
-{
- int ret;
-
- if (NULL == check_fp (t, 0xFFFF))
- return -1;
-
- ret = close_file_type (t);
-
- t->flags = SL_INUSE;
- return ret;
-}
-
-static int read_one_line (FILE *fp, char **strp, unsigned int *lenp)
-{
- char buf[512];
- char *str;
- unsigned int len;
-
- *strp = NULL;
- len = 0;
- str = NULL;
-
- while (NULL != fgets (buf, sizeof (buf), fp))
- {
- unsigned int dlen;
- char *new_str;
- int done_flag;
-
- dlen = strlen (buf);
- /* Note: If the file contains embedded \0 characters, then this
- * fails to work properly since dlen will not be correct.
- */
- done_flag = ((dlen + 1 < sizeof (buf))
- || (buf[dlen - 1] == '\n'));
-
- if (done_flag && (str == NULL))
- {
- /* Avoid the malloc */
- str = buf;
- len = dlen;
- break;
- }
-
- if (NULL == (new_str = SLrealloc (str, len + dlen + 1)))
- {
- SLfree (str);
- return -1;
- }
-
- str = new_str;
- strcpy (str + len, buf);
- len += dlen;
-
- if (done_flag) break;
- }
-
- if (str == NULL)
- return 0;
-
- *strp = SLang_create_nslstring (str, len);
- if (str != buf) SLfree (str);
-
- if (*strp == NULL) return -1;
-
- *lenp = len;
- return 1;
-}
-
-/* returns number of characters read and pushes the string to the stack.
- If it fails, it returns -1 */
-static int stdio_fgets (SLang_Ref_Type *ref, SL_File_Table_Type *t)
-{
- char *s;
- unsigned int len;
- FILE *fp;
- int status;
-
- if (NULL == (fp = check_fp (t, SL_READ)))
- return -1;
-
- status = read_one_line (fp, &s, &len);
- if (status <= 0)
- return -1;
-
- status = SLang_assign_to_ref (ref, SLANG_STRING_TYPE, (VOID_STAR)&s);
- SLang_free_slstring (s);
-
- if (status == -1)
- return -1;
-
- return (int) len;
-}
-
-static void stdio_fgetslines_internal (FILE *fp, unsigned int n)
-{
- unsigned int num_lines, max_num_lines;
- char **list;
- SLang_Array_Type *at;
- int inum_lines;
-
- if (n > 1024)
- max_num_lines = 1024;
- else
- {
- max_num_lines = n;
- if (max_num_lines == 0)
- max_num_lines++;
- }
-
- list = (char **) SLmalloc (sizeof (char *) * max_num_lines);
- if (list == NULL)
- return;
-
- num_lines = 0;
- while (num_lines < n)
- {
- int status;
- char *line;
- unsigned int len;
-
- status = read_one_line (fp, &line, &len);
- if (status == -1)
- goto return_error;
-
- if (status == 0)
- break;
-
- if (max_num_lines == num_lines)
- {
- char **new_list;
-
- if (max_num_lines + 4096 > n)
- max_num_lines = n;
- else
- max_num_lines += 4096;
-
- new_list = (char **) SLrealloc ((char *)list, sizeof (char *) * max_num_lines);
- if (new_list == NULL)
- {
- SLang_free_slstring (line);
- goto return_error;
- }
- list = new_list;
- }
-
- list[num_lines] = line;
- num_lines++;
- }
-
- if (num_lines != max_num_lines)
- {
- char **new_list;
-
- new_list = (char **)SLrealloc ((char *)list, sizeof (char *) * (num_lines + 1));
- if (new_list == NULL)
- goto return_error;
-
- list = new_list;
- }
-
- inum_lines = (int) num_lines;
- if (NULL == (at = SLang_create_array (SLANG_STRING_TYPE, 0, (VOID_STAR) list, &inum_lines, 1)))
- goto return_error;
-
- if (-1 == SLang_push_array (at, 1))
- SLang_push_null ();
- return;
-
- return_error:
- while (num_lines > 0)
- {
- num_lines--;
- SLfree (list[num_lines]);
- }
- SLfree ((char *)list);
- SLang_push_null ();
-}
-
-static void stdio_fgetslines (void)
-{
- unsigned int n;
- FILE *fp;
- SLang_MMT_Type *mmt;
-
- n = (unsigned int)-1;
-
- if (SLang_Num_Function_Args == 2)
- {
- if (-1 == SLang_pop_uinteger (&n))
- return;
- }
-
- if (NULL == (mmt = pop_fp (SL_READ, &fp)))
- {
- SLang_push_null ();
- return;
- }
-
- stdio_fgetslines_internal (fp, n);
- SLang_free_mmt (mmt);
-}
-
-
-static int stdio_fputs (char *s, SL_File_Table_Type *t)
-{
- FILE *fp;
-
- if (NULL == (fp = check_fp (t, SL_WRITE)))
- return -1;
-
- if (EOF == fputs(s, fp)) return -1;
- return (int) strlen (s);
-}
-
-static int stdio_fflush (SL_File_Table_Type *t)
-{
- FILE *fp;
-
- if (NULL == (fp = check_fp (t, SL_WRITE)))
- return -1;
-
- if (EOF == fflush (fp))
- {
- _SLerrno_errno = errno;
- return -1;
- }
-
- return 0;
-}
-
-/* Usage: n = fread (&str, data-type, nelems, fp); */
-static void stdio_fread (SLang_Ref_Type *ref, int *data_typep, unsigned int *num_elemns, SL_File_Table_Type *t)
-{
- char *s;
- FILE *fp;
- int ret;
- unsigned int num_read, num_to_read;
- unsigned int nbytes;
- SLang_Class_Type *cl;
- unsigned int sizeof_type;
- int data_type;
-
- ret = -1;
- s = NULL;
- cl = NULL;
-
- if (NULL == (fp = check_fp (t, SL_READ)))
- goto the_return;
-
- /* FIXME: priority = low : I should add some mechanism to support
- * other types.
- */
- data_type = *data_typep;
-
- cl = _SLclass_get_class ((unsigned char) data_type);
-
- if (cl->cl_fread == NULL)
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "fread does not support %s objects",
- cl->cl_name);
- goto the_return;
- }
-
- sizeof_type = cl->cl_sizeof_type;
-
- num_to_read = *num_elemns;
- nbytes = (unsigned int) num_to_read * sizeof_type;
-
- s = SLmalloc (nbytes + 1);
- if (s == NULL)
- goto the_return;
-
- ret = cl->cl_fread (data_type, fp, (VOID_STAR)s, num_to_read, &num_read);
-
- if ((num_read == 0)
- && (num_read != num_to_read))
- ret = -1;
-
- if ((ret == -1) && ferror (fp))
- _SLerrno_errno = errno;
-
- if ((ret == 0)
- && (num_read != num_to_read))
- {
- char *new_s;
-
- nbytes = num_read * sizeof_type;
- new_s = SLrealloc (s, nbytes + 1);
- if (new_s == NULL)
- ret = -1;
- else
- s = new_s;
- }
-
- if (ret == 0)
- {
- if (num_read == 1)
- {
- ret = SLang_assign_to_ref (ref, data_type, (VOID_STAR)s);
- SLfree (s);
- }
- else if ((data_type == SLANG_CHAR_TYPE)
- || (data_type == SLANG_UCHAR_TYPE))
- {
- SLang_BString_Type *bs;
-
- bs = SLbstring_create_malloced ((unsigned char *)s, num_read, 1);
- ret = SLang_assign_to_ref (ref, SLANG_BSTRING_TYPE, (VOID_STAR)&bs);
- SLbstring_free (bs);
- }
- else
- {
- SLang_Array_Type *at;
- int inum_read = (int) num_read;
- at = SLang_create_array (data_type, 0, (VOID_STAR)s, &inum_read, 1);
- ret = SLang_assign_to_ref (ref, SLANG_ARRAY_TYPE, (VOID_STAR)&at);
- SLang_free_array (at);
- }
- s = NULL;
- }
-
- the_return:
-
- if (s != NULL)
- SLfree (s);
-
- if (ret == -1)
- SLang_push_integer (ret);
- else
- SLang_push_uinteger (num_read);
-}
-
-/* Usage: n = fwrite (str, fp); */
-static void stdio_fwrite (SL_File_Table_Type *t)
-{
- FILE *fp;
- unsigned char *s;
- unsigned int num_to_write, num_write;
- int ret;
- SLang_BString_Type *b;
- SLang_Array_Type *at;
- SLang_Class_Type *cl;
-
- ret = -1;
- b = NULL;
- at = NULL;
-
- switch (SLang_peek_at_stack ())
- {
- case SLANG_BSTRING_TYPE:
- case SLANG_STRING_TYPE:
- if (-1 == SLang_pop_bstring (&b))
- goto the_return;
-
- if (NULL == (s = SLbstring_get_pointer (b, &num_to_write)))
- goto the_return;
-
- cl = _SLclass_get_class (SLANG_UCHAR_TYPE);
- break;
-
- default:
- if (-1 == SLang_pop_array (&at, 1))
- goto the_return;
-
- cl = at->cl;
- num_to_write = at->num_elements;
- s = (unsigned char *) at->data;
- }
-
- if (NULL == (fp = check_fp (t, SL_WRITE)))
- goto the_return;
-
- if (cl->cl_fwrite == NULL)
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "fwrite does not support %s objects", cl->cl_name);
- goto the_return;
- }
-
- ret = cl->cl_fwrite (cl->cl_data_type, fp, s, num_to_write, &num_write);
-
- if ((ret == -1) && ferror (fp))
- _SLerrno_errno = errno;
-
- /* drop */
- the_return:
- if (b != NULL)
- SLbstring_free (b);
- if (at != NULL)
- SLang_free_array (at);
-
- if (ret == -1)
- SLang_push_integer (ret);
- else
- SLang_push_uinteger (num_write);
-}
-
-static int stdio_fseek (SL_File_Table_Type *t, int *ofs, int *whence)
-{
- FILE *fp;
-
- if (NULL == (fp = check_fp (t, 0xFFFF)))
- return -1;
-
- if (-1 == fseek (fp, (long) *ofs, *whence))
- {
- _SLerrno_errno = errno;
- return -1;
- }
-
- return 0;
-}
-
-static int stdio_ftell (SL_File_Table_Type *t)
-{
- FILE *fp;
- long ofs;
-
- if (NULL == (fp = check_fp (t, 0xFFFF)))
- return -1;
-
- if (-1L == (ofs = ftell (fp)))
- {
- _SLerrno_errno = errno;
- return -1;
- }
-
- return (int) ofs;
-}
-
-static int stdio_feof (SL_File_Table_Type *t)
-{
- FILE *fp;
-
- if (NULL == (fp = check_fp (t, 0xFFFF)))
- return -1;
-
- return feof (fp);
-}
-
-static int stdio_ferror (SL_File_Table_Type *t)
-{
- FILE *fp;
-
- if (NULL == (fp = check_fp (t, 0xFFFF)))
- return -1;
-
- return ferror (fp);
-}
-
-static void stdio_clearerr (SL_File_Table_Type *t)
-{
- FILE *fp;
-
- if (NULL != (fp = check_fp (t, 0xFFFF)))
- clearerr (fp);
-}
-
-/* () = fprintf (fp, "FORMAT", arg...); */
-static int stdio_fprintf (void)
-{
- char *s;
- FILE *fp;
- SLang_MMT_Type *mmt;
- int status;
-
- if (-1 == _SLstrops_do_sprintf_n (SLang_Num_Function_Args - 2))
- return -1;
-
- if (-1 == SLang_pop_slstring (&s))
- return -1;
-
- if (NULL == (mmt = pop_fp (SL_WRITE, &fp)))
- {
- SLang_free_slstring (s);
- return -1;
- }
-
- if (EOF == fputs(s, fp))
- status = -1;
- else
- status = (int) strlen (s);
-
- SLang_free_mmt (mmt);
- SLang_free_slstring (s);
- return status;
-}
-
-static int stdio_printf (void)
-{
- char *s;
- int status;
-
- if (-1 == _SLstrops_do_sprintf_n (SLang_Num_Function_Args - 1))
- return -1;
-
- if (-1 == SLang_pop_slstring (&s))
- return -1;
-
- if (EOF == fputs(s, stdout))
- status = -1;
- else
- status = (int) strlen (s);
-
- SLang_free_slstring (s);
- return status;
-}
-
-
-#define F SLANG_FILE_PTR_TYPE
-#define R SLANG_REF_TYPE
-#define I SLANG_INT_TYPE
-#define V SLANG_VOID_TYPE
-#define S SLANG_STRING_TYPE
-#define B SLANG_BSTRING_TYPE
-#define U SLANG_UINT_TYPE
-#define D SLANG_DATATYPE_TYPE
-static SLang_Intrin_Fun_Type Stdio_Name_Table[] =
-{
- MAKE_INTRINSIC_0("fgetslines", stdio_fgetslines, V),
- MAKE_INTRINSIC_SS("fopen", stdio_fopen, V),
- MAKE_INTRINSIC_1("feof", stdio_feof, I, F),
- MAKE_INTRINSIC_1("ferror", stdio_ferror, I, F),
- MAKE_INTRINSIC_1("fclose", stdio_fclose, I, F),
- MAKE_INTRINSIC_2("fgets", stdio_fgets, I, R, F),
- MAKE_INTRINSIC_1("fflush", stdio_fflush, I, F),
- MAKE_INTRINSIC_2("fputs", stdio_fputs, I, S, F),
- MAKE_INTRINSIC_0("fprintf", stdio_fprintf, I),
- MAKE_INTRINSIC_0("printf", stdio_printf, I),
- MAKE_INTRINSIC_3("fseek", stdio_fseek, I, F, I, I),
- MAKE_INTRINSIC_1("ftell", stdio_ftell, I, F),
- MAKE_INTRINSIC_1("clearerr", stdio_clearerr, V, F),
- MAKE_INTRINSIC_4("fread", stdio_fread, V, R, D, U, F),
- MAKE_INTRINSIC_1("fwrite", stdio_fwrite, V, F),
-#ifdef HAVE_POPEN
- MAKE_INTRINSIC_SS("popen", stdio_popen, V),
- MAKE_INTRINSIC_1("pclose", stdio_fclose, I, F),
-#endif
- SLANG_END_INTRIN_FUN_TABLE
-};
-#undef F
-#undef I
-#undef R
-#undef V
-#undef S
-#undef B
-#undef U
-#undef D
-
-#ifndef SEEK_SET
-# define SEEK_SET 0
-#endif
-#ifndef SEEK_CUR
-# define SEEK_CUR 1
-#endif
-#ifndef SEEK_END
-# define SEEK_END 2
-#endif
-
-static SLang_IConstant_Type Stdio_Consts [] =
-{
- MAKE_ICONSTANT("SEEK_SET", SEEK_SET),
- MAKE_ICONSTANT("SEEK_END", SEEK_END),
- MAKE_ICONSTANT("SEEK_CUR", SEEK_CUR),
- SLANG_END_ICONST_TABLE
-};
-
-static void destroy_file_type (unsigned char type, VOID_STAR ptr)
-{
- (void) type;
- (void) close_file_type ((SL_File_Table_Type *) ptr);
-}
-
-
-struct _SLang_Foreach_Context_Type
-{
- SLang_MMT_Type *mmt;
- FILE *fp;
-#define CTX_USE_LINE 1
-#define CTX_USE_CHAR 2
- unsigned char type;
-};
-
-
-static SLang_Foreach_Context_Type *
-cl_foreach_open (unsigned char type, unsigned int num)
-{
- SLang_Foreach_Context_Type *c;
- SLang_MMT_Type *mmt;
- FILE *fp;
-
- if (NULL == (mmt = pop_fp (SL_READ, &fp)))
- return NULL;
-
- type = CTX_USE_LINE;
-
- switch (num)
- {
- char *s;
-
- case 0:
- type = CTX_USE_LINE;
- break;
-
- case 1:
- if (-1 == SLang_pop_slstring (&s))
- {
- SLang_free_mmt (mmt);
- return NULL;
- }
- if (0 == strcmp (s, "char"))
- type = CTX_USE_CHAR;
- else if (0 == strcmp (s, "line"))
- type = CTX_USE_LINE;
- else
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "using '%s' not supported by File_Type",
- s);
- SLang_free_slstring (s);
- SLang_free_mmt (mmt);
- return NULL;
- }
- SLang_free_slstring (s);
- break;
-
- default:
- SLdo_pop_n (num);
- SLang_verror (SL_NOT_IMPLEMENTED,
- "Usage: foreach (File_Type) using ([line|char])");
- SLang_free_mmt (mmt);
- return NULL;
- }
-
- if (NULL == (c = (SLang_Foreach_Context_Type *) SLmalloc (sizeof (SLang_Foreach_Context_Type))))
- {
- SLang_free_mmt (mmt);
- return NULL;
- }
- memset ((char *) c, 0, sizeof (SLang_Foreach_Context_Type));
-
- c->type = type;
- c->mmt = mmt;
- c->fp = fp;
-
- return c;
-}
-
-static void cl_foreach_close (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- (void) type;
- if (c == NULL) return;
- SLang_free_mmt (c->mmt);
- SLfree ((char *) c);
-}
-
-static int cl_foreach (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- int status;
- int ch;
- unsigned int len;
- char *s;
-
- (void) type;
-
- if (c == NULL)
- return -1;
-
- switch (c->type)
- {
- case CTX_USE_CHAR:
- if (EOF == (ch = getc (c->fp)))
- return 0;
- if (-1 == SLang_push_uchar ((unsigned char) ch))
- return -1;
- return 1;
-
- case CTX_USE_LINE:
- status = read_one_line (c->fp, &s, &len);
- if (status <= 0)
- return status;
- if (0 == _SLang_push_slstring (s))
- return 1;
- return -1;
- }
-
- return -1;
-}
-
-static int Stdio_Initialized;
-static SLang_MMT_Type *Stdio_Mmts[3];
-
-int SLang_init_stdio (void)
-{
- unsigned int i;
- SL_File_Table_Type *s;
- SLang_Class_Type *cl;
- char *names[3];
-
- if (Stdio_Initialized)
- return 0;
-
- SL_File_Table = (SL_File_Table_Type *)SLcalloc(sizeof (SL_File_Table_Type), SL_MAX_FILES);
- if (SL_File_Table == NULL)
- return -1;
-
- if (NULL == (cl = SLclass_allocate_class ("File_Type")))
- return -1;
- cl->cl_destroy = destroy_file_type;
- cl->cl_foreach_open = cl_foreach_open;
- cl->cl_foreach_close = cl_foreach_close;
- cl->cl_foreach = cl_foreach;
-
-
- if (-1 == SLclass_register_class (cl, SLANG_FILE_PTR_TYPE, sizeof (SL_File_Table_Type), SLANG_CLASS_TYPE_MMT))
- return -1;
-
- if ((-1 == SLadd_intrin_fun_table(Stdio_Name_Table, "__STDIO__"))
- || (-1 == SLadd_iconstant_table (Stdio_Consts, NULL))
- || (-1 == _SLerrno_init ()))
- return -1;
-
- names[0] = "stdin";
- names[1] = "stdout";
- names[2] = "stderr";
-
- s = SL_File_Table;
- s->fp = stdin; s->flags = SL_READ;
-
- s++;
- s->fp = stdout; s->flags = SL_WRITE;
-
- s++;
- s->fp = stderr; s->flags = SL_WRITE|SL_READ;
-
- s = SL_File_Table;
- for (i = 0; i < 3; i++)
- {
- if (NULL == (s->file = SLang_create_slstring (names[i])))
- return -1;
-
- if (NULL == (Stdio_Mmts[i] = SLang_create_mmt (SLANG_FILE_PTR_TYPE, (VOID_STAR) s)))
- return -1;
- SLang_inc_mmt (Stdio_Mmts[i]);
-
- if (-1 == SLadd_intrinsic_variable (s->file, (VOID_STAR)&Stdio_Mmts[i], SLANG_FILE_PTR_TYPE, 1))
- return -1;
- s++;
- }
-
- Stdio_Initialized = 1;
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slstring.c b/mdk-stage1/slang/slstring.c
deleted file mode 100644
index 529c41827..000000000
--- a/mdk-stage1/slang/slstring.c
+++ /dev/null
@@ -1,546 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-typedef struct _SLstring_Type
-{
- struct _SLstring_Type *next;
- unsigned int ref_count;
- char bytes [1];
-}
-SLstring_Type;
-
-static SLstring_Type *String_Hash_Table [SLSTRING_HASH_TABLE_SIZE];
-static char Single_Char_Strings [256 * 2];
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
-#define MAX_FREE_STORE_LEN 32
-static SLstring_Type *SLS_Free_Store [MAX_FREE_STORE_LEN];
-
-# define NUM_CACHED_STRINGS 601
-typedef struct
-{
- unsigned long hash;
- SLstring_Type *sls;
- unsigned int len;
-}
-Cached_String_Type;
-static Cached_String_Type Cached_Strings [NUM_CACHED_STRINGS];
-
-#define GET_CACHED_STRING(s) \
- (Cached_Strings + (unsigned int)(((unsigned long) (s)) % NUM_CACHED_STRINGS))
-
-_INLINE_
-static void cache_string (SLstring_Type *sls, unsigned int len, unsigned long hash)
-{
- Cached_String_Type *cs;
-
- cs = GET_CACHED_STRING(sls->bytes);
- cs->sls = sls;
- cs->hash = hash;
- cs->len = len;
-}
-
-_INLINE_
-static void uncache_string (char *s)
-{
- Cached_String_Type *cs;
-
- cs = GET_CACHED_STRING(s);
- if ((cs->sls != NULL)
- && (cs->sls->bytes == s))
- cs->sls = NULL;
-}
-#endif
-
-
-
-_INLINE_
-unsigned long _SLstring_hash (unsigned char *s, unsigned char *smax)
-{
- register unsigned long h = 0;
- register unsigned long sum = 0;
- unsigned char *smax4;
-
- smax4 = smax - 4;
-
- while (s < smax4)
- {
- sum += s[0];
- h = sum + (h << 1);
- sum += s[1];
- h = sum + (h << 1);
- sum += s[2];
- h = sum + (h << 1);
- sum += s[3];
- h = sum + (h << 1);
-
- s += 4;
- }
-
- while (s < smax)
- {
- sum += *s++;
- h ^= sum + (h << 3); /* slightly different */
- }
-
- return h;
-}
-
-unsigned long _SLcompute_string_hash (char *s)
-{
-#if _SLANG_OPTIMIZE_FOR_SPEED
- Cached_String_Type *cs;
- SLstring_Type *sls;
-
- cs = GET_CACHED_STRING(s);
- if (((sls = cs->sls) != NULL)
- && (sls->bytes == s))
- return cs->hash;
-#endif
- return _SLstring_hash ((unsigned char *) s, (unsigned char *) s + strlen (s));
-}
-
-_INLINE_
-/* This routine works with any (long) string */
-static SLstring_Type *find_string (char *s, unsigned int len, unsigned long hash)
-{
- SLstring_Type *sls;
- char ch;
-
- sls = String_Hash_Table [(unsigned int)(hash % SLSTRING_HASH_TABLE_SIZE)];
-
- if (sls == NULL)
- return NULL;
-
- ch = s[0];
- do
- {
- char *bytes = sls->bytes;
-
- /* Note that we need to actually make sure that bytes[len] == 0.
- * In this case, it is not enough to just compare pointers. In fact,
- * this is called from create_nstring, etc... It is unlikely that the
- * pointer is a slstring
- */
- if ((/* (s == bytes) || */ ((ch == bytes[0])
- && (0 == strncmp (s, bytes, len))))
- && (bytes [len] == 0))
- break;
-
- sls = sls->next;
- }
- while (sls != NULL);
-
- return sls;
-}
-
-_INLINE_
-static SLstring_Type *find_slstring (char *s, unsigned long hash)
-{
- SLstring_Type *sls;
-
- sls = String_Hash_Table [(unsigned int)(hash % SLSTRING_HASH_TABLE_SIZE)];
- while (sls != NULL)
- {
- if (s == sls->bytes)
- return sls;
-
- sls = sls->next;
- }
- return sls;
-}
-
-_INLINE_
-static SLstring_Type *allocate_sls (unsigned int len)
-{
- SLstring_Type *sls;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if ((len < MAX_FREE_STORE_LEN)
- && (NULL != (sls = SLS_Free_Store [len])))
- {
- SLS_Free_Store[len] = NULL;
- return sls;
- }
-#endif
- /* FIXME: use structure padding */
- return (SLstring_Type *) SLmalloc (len + sizeof (SLstring_Type));
-}
-
-_INLINE_
-static void free_sls (SLstring_Type *sls, unsigned int len)
-{
-#if _SLANG_OPTIMIZE_FOR_SPEED
- if ((len < MAX_FREE_STORE_LEN)
- && (SLS_Free_Store[len] == NULL))
- {
- SLS_Free_Store [len] = sls;
- return;
- }
-#else
- (void) len;
-#endif
- SLfree ((char *)sls);
-}
-
-_INLINE_
-static char *create_long_string (char *s, unsigned int len, unsigned long hash)
-{
- SLstring_Type *sls;
-
- sls = find_string (s, len, hash);
-
- if (sls != NULL)
- {
- sls->ref_count++;
- s = sls->bytes;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- cache_string (sls, len, hash);
-#endif
- return s;
- }
-
- sls = allocate_sls (len);
- if (sls == NULL)
- return NULL;
-
- strncpy (sls->bytes, s, len);
- sls->bytes[len] = 0;
- sls->ref_count = 1;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- cache_string (sls, len, hash);
-#endif
-
- hash = hash % SLSTRING_HASH_TABLE_SIZE;
- sls->next = String_Hash_Table [(unsigned int)hash];
- String_Hash_Table [(unsigned int)hash] = sls;
-
- return sls->bytes;
-}
-
-_INLINE_
-static char *create_short_string (char *s, unsigned int len)
-{
- char ch;
-
- /* Note: if len is 0, then it does not matter what *s is. This is
- * important for SLang_create_nslstring.
- */
- if (len) ch = *s; else ch = 0;
-
- len = 2 * (unsigned int) ((unsigned char) ch);
- Single_Char_Strings [len] = ch;
- Single_Char_Strings [len + 1] = 0;
- return Single_Char_Strings + len;
-}
-
-/* s cannot be NULL */
-_INLINE_
-static char *create_nstring (char *s, unsigned int len, unsigned long *hash_ptr)
-{
- unsigned long hash;
-
- if (len < 2)
- return create_short_string (s, len);
-
- hash = _SLstring_hash ((unsigned char *) s, (unsigned char *) (s + len));
- *hash_ptr = hash;
-
- return create_long_string (s, len, hash);
-}
-
-char *SLang_create_nslstring (char *s, unsigned int len)
-{
- unsigned long hash;
- return create_nstring (s, len, &hash);
-}
-
-char *_SLstring_make_hashed_string (char *s, unsigned int len, unsigned long *hashptr)
-{
- unsigned long hash;
-
- if (s == NULL) return NULL;
-
- hash = _SLstring_hash ((unsigned char *) s, (unsigned char *) s + len);
- *hashptr = hash;
-
- if (len < 2)
- return create_short_string (s, len);
-
- return create_long_string (s, len, hash);
-}
-
-char *_SLstring_dup_hashed_string (char *s, unsigned long hash)
-{
- unsigned int len;
-#if _SLANG_OPTIMIZE_FOR_SPEED
- Cached_String_Type *cs;
- SLstring_Type *sls;
-
- if (s == NULL) return NULL;
- if (s[0] == 0)
- return create_short_string (s, 0);
- if (s[1] == 0)
- return create_short_string (s, 1);
-
- cs = GET_CACHED_STRING(s);
- if (((sls = cs->sls) != NULL)
- && (sls->bytes == s))
- {
- sls->ref_count += 1;
- return s;
- }
-#else
- if (s == NULL) return NULL;
-#endif
-
- len = strlen (s);
-#if !_SLANG_OPTIMIZE_FOR_SPEED
- if (len < 2) return create_short_string (s, len);
-#endif
-
- return create_long_string (s, len, hash);
-}
-
-char *_SLstring_dup_slstring (char *s)
-{
- SLstring_Type *sls;
- unsigned int len;
- unsigned long hash;
-#if _SLANG_OPTIMIZE_FOR_SPEED
- Cached_String_Type *cs;
-
- cs = GET_CACHED_STRING(s);
- if (((sls = cs->sls) != NULL)
- && (sls->bytes == s))
- {
- sls->ref_count += 1;
- return s;
- }
-#endif
-
- if ((s == NULL) || ((len = strlen (s)) < 2))
- return s;
-
- hash = _SLstring_hash ((unsigned char *)s, (unsigned char *)(s + len));
-
- sls = find_slstring (s, hash);
- if (sls == NULL)
- {
- SLang_Error = SL_INTERNAL_ERROR;
- return NULL;
- }
-
- sls->ref_count++;
-#if _SLANG_OPTIMIZE_FOR_SPEED
- cache_string (sls, len, hash);
-#endif
- return s;
-}
-
-static void free_sls_string (SLstring_Type *sls, char *s, unsigned int len,
- unsigned long hash)
-{
- SLstring_Type *sls1, *prev;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- uncache_string (s);
-#endif
-
- hash = hash % SLSTRING_HASH_TABLE_SIZE;
-
- sls1 = String_Hash_Table [(unsigned int) hash];
-
- prev = NULL;
-
- /* This should not fail. */
- while (sls1 != sls)
- {
- prev = sls1;
- sls1 = sls1->next;
- }
-
- if (prev != NULL)
- prev->next = sls->next;
- else
- String_Hash_Table [(unsigned int) hash] = sls->next;
-
- free_sls (sls, len);
-}
-
-_INLINE_
-static void free_long_string (char *s, unsigned int len, unsigned long hash)
-{
- SLstring_Type *sls;
-
- if (NULL == (sls = find_slstring (s, hash)))
- {
- SLang_doerror ("Application internal error: invalid attempt to free string");
- return;
- }
-
- sls->ref_count--;
- if (sls->ref_count != 0)
- {
-#if _SLANG_OPTIMIZE_FOR_SPEED
- /* cache_string (sls, len, hash); */
-#endif
- return;
- }
-
-
- free_sls_string (sls, s, len, hash);
-}
-
-/* This routine may be passed NULL-- it is not an error. */
-void SLang_free_slstring (char *s)
-{
- unsigned long hash;
- unsigned int len;
-#if _SLANG_OPTIMIZE_FOR_SPEED
- Cached_String_Type *cs;
- SLstring_Type *sls;
-
- cs = GET_CACHED_STRING(s);
- if (((sls = cs->sls) != NULL)
- && (sls->bytes == s))
- {
- if (sls->ref_count <= 1)
- free_sls_string (sls, s, cs->len, cs->hash);
- else
- sls->ref_count -= 1;
- return;
- }
-#endif
-
- if (s == NULL) return;
-
- if ((len = strlen (s)) < 2)
- return;
-
- hash = _SLstring_hash ((unsigned char *)s, (unsigned char *) s + len);
- free_long_string (s, len, hash);
-}
-
-char *SLang_create_slstring (char *s)
-{
- unsigned long hash;
-#if _SLANG_OPTIMIZE_FOR_SPEED
- Cached_String_Type *cs;
- SLstring_Type *sls;
-
- cs = GET_CACHED_STRING(s);
- if (((sls = cs->sls) != NULL)
- && (sls->bytes == s))
- {
- sls->ref_count += 1;
- return s;
- }
-#endif
-
- if (s == NULL) return NULL;
- return create_nstring (s, strlen (s), &hash);
-}
-
-void _SLfree_hashed_string (char *s, unsigned int len, unsigned long hash)
-{
- if ((s == NULL) || (len < 2)) return;
- free_long_string (s, len, hash);
-}
-
-
-char *_SLallocate_slstring (unsigned int len)
-{
- SLstring_Type *sls = allocate_sls (len);
- if (sls == NULL)
- return NULL;
-
- return sls->bytes;
-}
-
-void _SLunallocate_slstring (char *s, unsigned int len)
-{
- SLstring_Type *sls;
-
- if (s == NULL)
- return;
-
- sls = (SLstring_Type *) (s - offsetof(SLstring_Type,bytes[0]));
- free_sls (sls, len);
-}
-
-char *_SLcreate_via_alloced_slstring (char *s, unsigned int len)
-{
- unsigned long hash;
- SLstring_Type *sls;
-
- if (s == NULL)
- return NULL;
-
- if (len < 2)
- {
- char *s1 = create_short_string (s, len);
- _SLunallocate_slstring (s, len);
- return s1;
- }
-
- /* s is not going to be in the cache because when it was malloced, its
- * value was unknown. This simplifies the coding.
- */
- hash = _SLstring_hash ((unsigned char *)s, (unsigned char *)s + len);
- sls = find_string (s, len, hash);
- if (sls != NULL)
- {
- sls->ref_count++;
- _SLunallocate_slstring (s, len);
- s = sls->bytes;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- cache_string (sls, len, hash);
-#endif
- return s;
- }
-
- sls = (SLstring_Type *) (s - offsetof(SLstring_Type,bytes[0]));
- sls->ref_count = 1;
-
-#if _SLANG_OPTIMIZE_FOR_SPEED
- cache_string (sls, len, hash);
-#endif
-
- hash = hash % SLSTRING_HASH_TABLE_SIZE;
- sls->next = String_Hash_Table [(unsigned int)hash];
- String_Hash_Table [(unsigned int)hash] = sls;
-
- return s;
-}
-
-/* Note, a and b may be ordinary strings. The result is an slstring */
-char *SLang_concat_slstrings (char *a, char *b)
-{
- unsigned int lena, len;
- char *c;
-
- lena = strlen (a);
- len = lena + strlen (b);
-
- c = _SLallocate_slstring (len);
- if (c == NULL)
- return NULL;
-
- strcpy (c, a);
- strcpy (c + lena, b);
-
- return _SLcreate_via_alloced_slstring (c, len);
-}
-
diff --git a/mdk-stage1/slang/slstrops.c b/mdk-stage1/slang/slstrops.c
deleted file mode 100644
index a57ef6389..000000000
--- a/mdk-stage1/slang/slstrops.c
+++ /dev/null
@@ -1,1686 +0,0 @@
-/* -*- mode: C; mode: fold; -*- */
-/* string manipulation functions for S-Lang. */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-/*{{{ Include Files */
-
-#include <time.h>
-
-#ifndef __QNX__
-# if defined(__GO32__) || defined(__WATCOMC__)
-# include <dos.h>
-# include <bios.h>
-# endif
-#endif
-
-#if SLANG_HAS_FLOAT
-#include <math.h>
-#endif
-
-#include <string.h>
-#include <stdarg.h>
-#include <ctype.h>
-
-#ifndef isdigit
-# define isdigit(x) (((x) >= '0') && ((x) <= '9'))
-#endif
-
-#include "slang.h"
-#include "_slang.h"
-
-/*}}}*/
-
-#define USE_ALLOC_STSTRING 1
-
-/*{{{ Utility Functions */
-
-static char Utility_Char_Table [256];
-static unsigned char WhiteSpace_Lut[256];
-
-static void set_utility_char_table (char *pos) /*{{{*/
-{
- register char *t = Utility_Char_Table, *tmax;
- register unsigned char ch;
-
- tmax = t + 256;
- while (t < tmax) *t++ = 0;
-
- t = Utility_Char_Table;
- while ((ch = (unsigned char) *pos++) != 0) t[ch] = 1;
-}
-
-/*}}}*/
-
-_INLINE_
-static unsigned char *make_whitespace_lut (void)
-{
- if (WhiteSpace_Lut[' '] != 1)
- {
- WhiteSpace_Lut[' '] = WhiteSpace_Lut['\r']
- = WhiteSpace_Lut ['\n'] = WhiteSpace_Lut['\t']
- = WhiteSpace_Lut ['\f'] = 1;
- }
- return WhiteSpace_Lut;
-}
-
-static unsigned char *make_lut (unsigned char *s, unsigned char *lut)
-{
- int reverse = 0;
-
- if (*s == '^')
- {
- reverse = 1;
- s++;
- }
- SLmake_lut (lut, s, reverse);
- return lut;
-}
-
-static unsigned int do_trim (char **beg, int do_beg,
- char **end, int do_end,
- char *white) /*{{{*/
-{
- unsigned int len;
- char *a, *b;
-
- set_utility_char_table (white);
-
- a = *beg;
- len = strlen (a);
- b = a + len;
-
- if (do_beg)
- while (Utility_Char_Table[(unsigned char) *a]) a++;
-
- if (do_end)
- {
- b--;
- while ((b >= a) && (Utility_Char_Table[(unsigned char) *b])) b--;
- b++;
- }
-
- len = (unsigned int) (b - a);
- *beg = a;
- *end = b;
- return len;
-}
-
-/*}}}*/
-
-/*}}}*/
-
-static int pop_3_strings (char **a, char **b, char **c)
-{
- *a = *b = *c = NULL;
- if (-1 == SLpop_string (c))
- return -1;
-
- if (-1 == SLpop_string (b))
- {
- SLfree (*c);
- *c = NULL;
- return -1;
- }
-
- if (-1 == SLpop_string (a))
- {
- SLfree (*b);
- SLfree (*c);
- *b = *c = NULL;
- return -1;
- }
-
- return 0;
-}
-
-static void free_3_strings (char *a, char *b, char *c)
-{
- SLfree (a);
- SLfree (b);
- SLfree (c);
-}
-
-static void strcat_cmd (void) /*{{{*/
-{
- char *c, *c1;
- int nargs;
- int i;
- char **ptrs;
- unsigned int len;
-#if !USE_ALLOC_STSTRING
- char buf[256];
-#endif
- nargs = SLang_Num_Function_Args;
- if (nargs <= 0) nargs = 2;
-
- if (NULL == (ptrs = (char **)SLmalloc (nargs * sizeof (char *))))
- return;
-
- memset ((char *) ptrs, 0, sizeof (char *) * nargs);
-
- c = NULL;
- i = nargs;
- len = 0;
- while (i != 0)
- {
- char *s;
-
- i--;
- if (-1 == SLang_pop_slstring (&s))
- goto free_and_return;
- ptrs[i] = s;
- len += strlen (s);
- }
-#if USE_ALLOC_STSTRING
- if (NULL == (c = _SLallocate_slstring (len)))
- goto free_and_return;
-#else
- len++; /* \0 char */
- if (len <= sizeof (buf))
- c = buf;
- else if (NULL == (c = SLmalloc (len)))
- goto free_and_return;
-#endif
-
- c1 = c;
- for (i = 0; i < nargs; i++)
- {
- strcpy (c1, ptrs[i]);
- c1 += strlen (c1);
- }
-
- free_and_return:
- for (i = 0; i < nargs; i++)
- SLang_free_slstring (ptrs[i]);
- SLfree ((char *) ptrs);
-
-#if USE_ALLOC_STSTRING
- (void) _SLpush_alloced_slstring (c, len);
-#else
- if (c != buf)
- (void) SLang_push_malloced_string (c); /* NULL ok */
- else
- (void) SLang_push_string (c);
-#endif
-}
-
-/*}}}*/
-
-static int _SLang_push_nstring (char *a, unsigned int len)
-{
- a = SLang_create_nslstring (a, len);
- if (a == NULL)
- return -1;
-
- return _SLang_push_slstring (a);
-}
-
-
-static void strtrim_cmd_internal (char *str, int do_beg, int do_end)
-{
- char *beg, *end, *white;
- int free_str;
- unsigned int len;
-
- /* Go through SLpop_string to get a private copy since it will be
- * modified.
- */
-
- free_str = 0;
- if (SLang_Num_Function_Args == 2)
- {
- white = str;
- if (-1 == SLang_pop_slstring (&str))
- return;
- free_str = 1;
- }
- else white = " \t\f\r\n";
-
- beg = str;
- len = do_trim (&beg, do_beg, &end, do_end, white);
-
- (void) _SLang_push_nstring (beg, len);
- if (free_str)
- SLang_free_slstring (str);
-}
-
-
-static void strtrim_cmd (char *str)
-{
- strtrim_cmd_internal (str, 1, 1);
-}
-
-static void strtrim_beg_cmd (char *str)
-{
- strtrim_cmd_internal (str, 1, 0);
-}
-
-static void strtrim_end_cmd (char *str)
-{
- strtrim_cmd_internal (str, 0, 1);
-}
-
-
-static void strcompress_cmd (void) /*{{{*/
-{
- char *str, *white, *c;
- unsigned char *s, *beg, *end;
- unsigned int len;
- char pref_char;
-
- if (SLpop_string (&white)) return;
- if (SLpop_string (&str))
- {
- SLfree (white);
- return;
- }
-
- /* The first character of white is the preferred whitespace character */
- pref_char = *white;
-
- beg = (unsigned char *) str;
- (void) do_trim ((char **) &beg, 1, (char **) &end, 1, white);
- SLfree (white);
-
- /* Determine the effective length */
- len = 0;
- s = (unsigned char *) beg;
- while (s < end)
- {
- len++;
- if (Utility_Char_Table[*s++])
- {
- while ((s < end) && Utility_Char_Table[*s]) s++;
- }
- }
-
-#if USE_ALLOC_STSTRING
- c = _SLallocate_slstring (len);
-#else
- c = SLmalloc (len + 1);
-#endif
- if (c == NULL)
- {
- SLfree (str);
- return;
- }
-
- s = (unsigned char *) c;
-
- while (beg < end)
- {
- unsigned char ch = *beg++;
-
- if (0 == Utility_Char_Table[ch])
- {
- *s++ = ch;
- continue;
- }
-
- *s++ = (unsigned char) pref_char;
-
- while ((beg < end) && Utility_Char_Table[*beg])
- beg++;
- }
-
- *s = 0;
-
-#if USE_ALLOC_STSTRING
- (void) _SLpush_alloced_slstring (c, len);
-#else
- SLang_push_malloced_string(c);
-#endif
-
- SLfree(str);
-}
-
-/*}}}*/
-
-static int str_replace_cmd_1 (char *orig, char *match, char *rep, unsigned int max_num_replaces,
- char **new_strp) /*{{{*/
-{
- char *s, *t, *new_str;
- unsigned int rep_len, match_len, new_len;
- unsigned int num_replaces;
-
- *new_strp = NULL;
-
- match_len = strlen (match);
-
- if (match_len == 0)
- return 0;
-
- num_replaces = 0;
- s = orig;
- while (num_replaces < max_num_replaces)
- {
- s = strstr (s, match);
- if (s == NULL)
- break;
- s += match_len;
- num_replaces++;
- }
-
- if (num_replaces == 0)
- return 0;
-
- max_num_replaces = num_replaces;
-
- rep_len = strlen (rep);
-
- new_len = (strlen (orig) - num_replaces * match_len) + num_replaces * rep_len;
- new_str = SLmalloc (new_len + 1);
- if (new_str == NULL)
- return -1;
-
- s = orig;
- t = new_str;
-
- for (num_replaces = 0; num_replaces < max_num_replaces; num_replaces++)
- {
- char *next_s;
- unsigned int len;
-
- next_s = strstr (s, match); /* cannot be NULL */
- len = (unsigned int) (next_s - s);
- strncpy (t, s, len);
- t += len;
- strcpy (t, rep);
- t += rep_len;
-
- s = next_s + match_len;
- }
- strcpy (t, s);
- *new_strp = new_str;
-
- return (int) num_replaces;
-}
-
-/*}}}*/
-
-static void reverse_string (char *a)
-{
- char *b;
-
- b = a + strlen (a);
- while (b > a)
- {
- char ch;
-
- b--;
- ch = *a;
- *a++ = *b;
- *b = ch;
- }
-}
-
-static int strreplace_cmd (int *np)
-{
- char *orig, *match, *rep;
- char *new_str;
- int max_num_replaces;
- int ret;
-
- max_num_replaces = *np;
-
- if (-1 == pop_3_strings (&orig, &match, &rep))
- return -1;
-
- if (max_num_replaces < 0)
- {
- reverse_string (orig);
- reverse_string (match);
- reverse_string (rep);
- ret = str_replace_cmd_1 (orig, match, rep, -max_num_replaces, &new_str);
- if (ret > 0) reverse_string (new_str);
- else if (ret == 0)
- reverse_string (orig);
- }
- else ret = str_replace_cmd_1 (orig, match, rep, max_num_replaces, &new_str);
-
- if (ret == 0)
- {
- if (-1 == SLang_push_malloced_string (orig))
- ret = -1;
- orig = NULL;
- }
- else if (ret > 0)
- {
- if (-1 == SLang_push_malloced_string (new_str))
- ret = -1;
- }
-
- free_3_strings (orig, match, rep);
- return ret;
-}
-
-static int str_replace_cmd (char *orig, char *match, char *rep)
-{
- char *s;
- int ret;
-
- ret = str_replace_cmd_1 (orig, match, rep, 1, &s);
- if (ret == 1)
- (void) SLang_push_malloced_string (s);
- return ret;
-}
-
-
-
-static void strtok_cmd (char *str)
-{
- _SLString_List_Type sl;
- unsigned char white_buf[256];
- char *s;
- unsigned char *white;
-
- if (SLang_Num_Function_Args == 1)
- white = make_whitespace_lut ();
- else
- {
- white = white_buf;
- make_lut ((unsigned char *)str, white);
- if (-1 == SLang_pop_slstring (&str))
- return;
- }
-
- if (-1 == _SLstring_list_init (&sl, 256, 1024))
- goto the_return;
-
- s = str;
- while (*s != 0)
- {
- char *s0;
-
- s0 = s;
- /* Skip whitespace */
- while ((*s0 != 0) && (0 != white[(unsigned char)*s0]))
- s0++;
-
- if (*s0 == 0)
- break;
-
- s = s0;
- while ((*s != 0) && (0 == white[(unsigned char) *s]))
- s++;
-
- /* sl deleted upon failure */
- if (-1 == _SLstring_list_append (&sl, SLang_create_nslstring (s0, (unsigned int) (s - s0))))
- goto the_return;
- }
-
- /* Deletes sl */
- (void) _SLstring_list_push (&sl);
-
- the_return:
- if (white == white_buf)
- SLang_free_slstring (str);
-}
-
-/* This routine returns the string with text removed between single character
- comment delimiters from the set b and e. */
-
-static void str_uncomment_string_cmd (char *str, char *b, char *e) /*{{{*/
-{
- unsigned char chb, che;
- unsigned char *s, *cbeg, *mark;
-
- if (strlen(b) != strlen(e))
- {
- SLang_doerror ("Comment delimiter length mismatch.");
- return;
- }
-
- set_utility_char_table (b);
-
- if (NULL == (str = (char *) SLmake_string(str))) return;
-
- s = (unsigned char *) str;
-
- while ((chb = *s++) != 0)
- {
- if (Utility_Char_Table [chb] == 0) continue;
-
- mark = s - 1;
-
- cbeg = (unsigned char *) b;
- while (*cbeg != chb) cbeg++;
-
- che = (unsigned char) *(e + (int) (cbeg - (unsigned char *) b));
-
- while (((chb = *s++) != 0) && (chb != che));
-
- if (chb == 0)
- {
- /* end of string and end not found. Just truncate it a return; */
- *mark = 0;
- break;
- }
-
- strcpy ((char *) mark, (char *)s);
- s = mark;
- }
- SLang_push_malloced_string (str);
-}
-
-/*}}}*/
-
-static void str_quote_string_cmd (char *str, char *quotes, int *slash_ptr) /*{{{*/
-{
- char *q;
- int slash;
- unsigned int len;
- register char *t, *s, *q1;
- register unsigned char ch;
-
- slash = *slash_ptr;
-
- if ((slash > 255) || (slash < 0))
- {
- SLang_Error = SL_INVALID_PARM;
- return;
- }
-
- /* setup the utility table to have 1s at quote char postitions. */
- set_utility_char_table (quotes);
-
- t = Utility_Char_Table;
- t[(unsigned int) slash] = 1;
-
- /* calculate length */
- s = str;
- len = 0;
- while ((ch = (unsigned char) *s++) != 0) if (t[ch]) len++;
- len += (unsigned int) (s - str);
-
- if (NULL != (q = SLmalloc(len)))
- {
- s = str; q1 = q;
- while ((ch = (unsigned char) *s++) != 0)
- {
- if (t[ch]) *q1++ = slash;
- *q1++ = (char) ch;
- }
- *q1 = 0;
- SLang_push_malloced_string(q);
- }
-}
-
-/*}}}*/
-
-/* returns the position of substrin in a string or null */
-static int issubstr_cmd (char *a, char *b) /*{{{*/
-{
- char *c;
-
- if (NULL == (c = (char *) strstr(a, b)))
- return 0;
-
- return 1 + (int) (c - a);
-}
-
-/*}}}*/
-
-/* returns to stack string at pos n to n + m of a */
-static void substr_cmd (char *a, int *n_ptr, int *m_ptr) /*{{{*/
-{
- int n, m;
- int lena;
-
- n = *n_ptr;
- m = *m_ptr;
-
- lena = strlen (a);
- if (n > lena) n = lena + 1;
- if (n < 1)
- {
- SLang_Error = SL_INVALID_PARM;
- return;
- }
-
- n--;
- if (m < 0) m = lena;
- if (n + m > lena) m = lena - n;
-
- (void) _SLang_push_nstring (a + n, (unsigned int) m);
-}
-
-/*}}}*/
-
-/* substitute char m at positin string n in string*/
-static void strsub_cmd (int *nptr, int *mptr) /*{{{*/
-{
- char *a;
- int n, m;
- unsigned int lena;
-
- if (-1 == SLpop_string (&a))
- return;
-
- n = *nptr;
- m = *mptr;
-
- lena = strlen (a);
-
- if ((n <= 0) || (lena < (unsigned int) n))
- {
- SLang_Error = SL_INVALID_PARM;
- SLfree(a);
- return;
- }
-
- a[n - 1] = (char) m;
-
- SLang_push_malloced_string (a);
-}
-
-/*}}}*/
-
-static void strup_cmd(void) /*{{{*/
-{
- unsigned char c, *a;
- char *str;
-
- if (SLpop_string (&str))
- return;
-
- a = (unsigned char *) str;
- while ((c = *a) != 0)
- {
- /* if ((*a >= 'a') && (*a <= 'z')) *a -= 32; */
- *a = UPPER_CASE(c);
- a++;
- }
-
- SLang_push_malloced_string (str);
-}
-
-/*}}}*/
-
-static int isdigit_cmd (char *what) /*{{{*/
-{
- return isdigit((unsigned char)*what);
-}
-
-/*}}}*/
-static int toupper_cmd (int *ch) /*{{{*/
-{
- return UPPER_CASE(*ch);
-}
-
-/*}}}*/
-
-static int tolower_cmd (int *ch) /*{{{*/
-{
- return LOWER_CASE(*ch);
-}
-
-/*}}}*/
-
-static void strlow_cmd (void) /*{{{*/
-{
- unsigned char c, *a;
- char *str;
-
- if (SLpop_string(&str)) return;
- a = (unsigned char *) str;
- while ((c = *a) != 0)
- {
- /* if ((*a >= 'a') && (*a <= 'z')) *a -= 32; */
- *a = LOWER_CASE(c);
- a++;
- }
-
- SLang_push_malloced_string ((char *) str);
-}
-
-/*}}}*/
-
-static SLang_Array_Type *do_strchop (char *str, int delim, int quote)
-{
- int count;
- char *s0, *elm;
- register char *s1;
- register unsigned char ch;
- int quoted;
- SLang_Array_Type *at;
- char **data;
-
- if ((quote < 0) || (quote > 255)
- || (delim <= 0) || (delim > 255))
- {
- SLang_Error = SL_INVALID_PARM;
- return NULL;
- }
-
- s1 = s0 = str;
-
- quoted = 0;
- count = 1; /* at least 1 */
- while (1)
- {
- ch = (unsigned char) *s1++;
- if ((ch == quote) && quote)
- {
- if (*s1 == 0)
- break;
-
- s1++;
- continue;
- }
-
- if (ch == delim)
- {
- count++;
- continue;
- }
-
- if (ch == 0)
- break;
- }
-
- if (NULL == (at = SLang_create_array (SLANG_STRING_TYPE, 0, NULL, &count, 1)))
- return NULL;
-
- data = (char **)at->data;
-
- count = 0;
- s1 = s0;
-
- while (1)
- {
- ch = (unsigned char) *s1;
-
- if ((ch == quote) && quote)
- {
- s1++;
- if (*s1 != 0) s1++;
- quoted = 1;
- continue;
- }
-
- if ((ch == delim) || (ch == 0))
- {
- if (quoted == 0)
- elm = SLang_create_nslstring (s0, (unsigned int) (s1 - s0));
- else
- {
- register char ch1, *p, *p1;
- char *tmp;
-
- tmp = SLmake_nstring (s0, (unsigned int)(s1 - s0));
- if (tmp == NULL)
- break;
-
- /* Now unquote it */
- p = p1 = tmp;
- do
- {
- ch1 = *p1++;
- if (ch1 == '\\') ch1 = *p1++;
- *p++ = ch1;
- }
- while (ch1 != 0);
- quoted = 0;
-
- elm = SLang_create_slstring (tmp);
- SLfree (tmp);
- }
-
- if (elm == NULL)
- break;
-
- data[count] = elm;
- count++;
-
- if (ch == 0)
- return at;
-
- s1++; /* skip past delim */
- s0 = s1; /* and reset */
- }
- else s1++;
- }
-
- SLang_free_array (at);
- return NULL;
-}
-
-static void strchop_cmd (char *str, int *q, int *d)
-{
- (void) SLang_push_array (do_strchop (str, *q, *d), 1);
-}
-
-static void strchopr_cmd (char *str, int *q, int *d)
-{
- SLang_Array_Type *at;
-
- if (NULL != (at = do_strchop (str, *q, *d)))
- {
- char **d0, **d1;
-
- d0 = (char **) at->data;
- d1 = d0 + (at->num_elements - 1);
-
- while (d0 < d1)
- {
- char *tmp;
-
- tmp = *d0;
- *d0 = *d1;
- *d1 = tmp;
- d0++;
- d1--;
- }
- }
- SLang_push_array (at, 1);
-}
-
-static int strcmp_cmd (char *a, char *b) /*{{{*/
-{
- return strcmp(a, b);
-}
-
-/*}}}*/
-
-static int strncmp_cmd (char *a, char *b, int *n) /*{{{*/
-{
- return strncmp(a, b, (unsigned int) *n);
-}
-
-/*}}}*/
-
-static int strlen_cmd (char *s) /*{{{*/
-{
- return (int) strlen (s);
-}
-/*}}}*/
-
-static void extract_element_cmd (char *list, int *nth_ptr, int *delim_ptr)
-{
- char buf[1024], *b;
-
- b = buf;
- if (-1 == SLextract_list_element (list, *nth_ptr, *delim_ptr, buf, sizeof(buf)))
- b = NULL;
-
- SLang_push_string (b);
-}
-
-/* sprintf functionality for S-Lang */
-
-static char *SLdo_sprintf (char *fmt) /*{{{*/
-{
- register char *p = fmt, ch;
- char *out = NULL, *outp = NULL;
- char dfmt[1024]; /* used to hold part of format */
- char *f;
- VOID_STAR varp;
- int want_width, width, precis, use_varp, int_var;
- long long_var;
- unsigned int len = 0, malloc_len = 0, dlen;
- int do_free, guess_size;
-#if SLANG_HAS_FLOAT
- int tmp1, tmp2, use_double;
- double x;
-#endif
- int use_long = 0;
-
- while (1)
- {
- while ((ch = *p) != 0)
- {
- if (ch == '%')
- break;
- p++;
- }
-
- /* p points at '%' or 0 */
-
- dlen = (unsigned int) (p - fmt);
-
- if (len + dlen >= malloc_len)
- {
- malloc_len = len + dlen;
- if (out == NULL) outp = SLmalloc(malloc_len + 1);
- else outp = SLrealloc(out, malloc_len + 1);
- if (NULL == outp)
- return out;
- out = outp;
- outp = out + len;
- }
-
- strncpy(outp, fmt, dlen);
- len += dlen;
- outp = out + len;
- *outp = 0;
- if (ch == 0) break;
-
- /* bump it beyond '%' */
- ++p;
- fmt = p;
-
- f = dfmt;
- *f++ = ch;
- /* handle flag char */
- ch = *p++;
-
- /* Make sure cases such as "% #g" can be handled. */
- if ((ch == '-') || (ch == '+') || (ch == ' ') || (ch == '#'))
- {
- *f++ = ch;
- ch = *p++;
- if ((ch == '-') || (ch == '+') || (ch == ' ') || (ch == '#'))
- {
- *f++ = ch;
- ch = *p++;
- }
- }
-
-
- /* width */
- /* I have got to parse it myself so that I can see how big it needs
- * to be.
- */
- want_width = width = 0;
- if (ch == '*')
- {
- if (SLang_pop_integer(&width)) return (out);
- want_width = 1;
- ch = *p++;
- }
- else
- {
- if (ch == '0')
- {
- *f++ = '0';
- ch = *p++;
- }
-
- while ((ch <= '9') && (ch >= '0'))
- {
- width = width * 10 + (ch - '0');
- ch = *p++;
- want_width = 1;
- }
- }
-
- if (want_width)
- {
- sprintf(f, "%d", width);
- f += strlen (f);
- }
- precis = 0;
- /* precision -- also indicates max number of chars from string */
- if (ch == '.')
- {
- *f++ = ch;
- ch = *p++;
- want_width = 0;
- if (ch == '*')
- {
- if (SLang_pop_integer(&precis)) return (out);
- ch = *p++;
- want_width = 1;
- }
- else while ((ch <= '9') && (ch >= '0'))
- {
- precis = precis * 10 + (ch - '0');
- ch = *p++;
- want_width = 1;
- }
- if (want_width)
- {
- sprintf(f, "%d", precis);
- f += strlen (f);
- }
- else precis = 0;
- }
-
- long_var = 0;
- int_var = 0;
- varp = NULL;
- guess_size = 32;
-#if SLANG_HAS_FLOAT
- use_double = 0;
-#endif
- use_long = 0;
- use_varp = 0;
- do_free = 0;
-
- if (ch == 'l')
- {
- use_long = 1;
- ch = *p++;
- }
- else if (ch == 'h') ch = *p++; /* not supported */
-
- /* Now the actual format specifier */
- switch (ch)
- {
- case 'S':
- _SLstring_intrinsic ();
- ch = 's';
- /* drop */
- case 's':
- if (SLang_pop_slstring((char **) &varp)) return (out);
- do_free = 1;
- guess_size = strlen((char *) varp);
- use_varp = 1;
- break;
-
- case '%':
- guess_size = 1;
- do_free = 0;
- use_varp = 1;
- varp = (VOID_STAR) "%";
- break;
-
- case 'c': guess_size = 1;
- use_long = 0;
- /* drop */
- case 'd':
- case 'i':
- case 'o':
- case 'u':
- case 'X':
- case 'x':
- if (SLang_pop_long (&long_var)) return(out);
- if (use_long == 0)
- int_var = (int) long_var;
- else
- *f++ = 'l';
- break;
-
- case 'f':
- case 'e':
- case 'g':
- case 'E':
- case 'G':
-#if SLANG_HAS_FLOAT
- if (SLang_pop_double(&x, &tmp1, &tmp2)) return (out);
- use_double = 1;
- guess_size = 256;
- (void) tmp1; (void) tmp2;
- use_long = 0;
- break;
-#endif
- case 'p':
- guess_size = 32;
- /* Pointer type?? Why?? */
- if (-1 == SLdo_pop ())
- return out;
- varp = (VOID_STAR) _SLStack_Pointer;
- use_varp = 1;
- use_long = 0;
- break;
-
- default:
- SLang_doerror("Invalid Format.");
- return(out);
- }
- *f++ = ch; *f = 0;
-
- width = width + precis;
- if (width > guess_size) guess_size = width;
-
- if (len + guess_size > malloc_len)
- {
- outp = (char *) SLrealloc(out, len + guess_size + 1);
- if (outp == NULL)
- {
- SLang_Error = SL_MALLOC_ERROR;
- return (out);
- }
- out = outp;
- outp = out + len;
- malloc_len = len + guess_size;
- }
-
- if (use_varp)
- {
- sprintf(outp, dfmt, varp);
- if (do_free) SLang_free_slstring ((char *)varp);
- }
-#if SLANG_HAS_FLOAT
- else if (use_double) sprintf(outp, dfmt, x);
-#endif
- else if (use_long) sprintf (outp, dfmt, long_var);
- else sprintf(outp, dfmt, int_var);
-
- len += strlen(outp);
- outp = out + len;
- fmt = p;
- }
-
- if (out != NULL)
- {
- outp = SLrealloc (out, (unsigned int) (outp - out) + 1);
- if (outp != NULL) out = outp;
- }
-
- return (out);
-}
-
-/*}}}*/
-
-int _SLstrops_do_sprintf_n (int n) /*{{{*/
-{
- char *p;
- char *fmt;
- SLang_Object_Type *ptr;
- int ofs;
-
- if (-1 == (ofs = SLreverse_stack (n + 1)))
- return -1;
-
- ptr = _SLRun_Stack + ofs;
-
- if (SLang_pop_slstring(&fmt))
- return -1;
-
- p = SLdo_sprintf (fmt);
- SLang_free_slstring (fmt);
-
- while (_SLStack_Pointer > ptr)
- SLdo_pop ();
-
- if (SLang_Error)
- {
- SLfree (p);
- return -1;
- }
-
- return SLang_push_malloced_string (p);
-}
-
-/*}}}*/
-
-static void sprintf_n_cmd (int *n)
-{
- _SLstrops_do_sprintf_n (*n);
-}
-
-static void sprintf_cmd (void)
-{
- _SLstrops_do_sprintf_n (SLang_Num_Function_Args - 1); /* do not include format */
-}
-
-/* converts string s to a form that can be used in an eval */
-static void make_printable_string(char *s) /*{{{*/
-{
- unsigned int len;
- register char *s1 = s, ch, *ss1;
- char *ss;
-
- /* compute length */
- len = 3;
- while ((ch = *s1++) != 0)
- {
- if ((ch == '\n') || (ch == '\\') || (ch == '"')) len++;
- len++;
- }
-
- if (NULL == (ss = SLmalloc(len)))
- return;
-
- s1 = s;
- ss1 = ss;
- *ss1++ = '"';
- while ((ch = *s1++) != 0)
- {
- if (ch == '\n')
- {
- ch = 'n';
- *ss1++ = '\\';
- }
- else if ((ch == '\\') || (ch == '"'))
- {
- *ss1++ = '\\';
- }
- *ss1++ = ch;
- }
- *ss1++ = '"';
- *ss1 = 0;
- if (-1 == SLang_push_string (ss))
- SLfree (ss);
-}
-
-/*}}}*/
-
-static int is_list_element_cmd (char *list, char *elem, int *d_ptr)
-{
- char ch;
- int d, n;
- unsigned int len;
- char *lbeg, *lend;
-
- d = *d_ptr;
-
- len = strlen (elem);
-
- n = 1;
- lend = list;
-
- while (1)
- {
- lbeg = lend;
- while ((0 != (ch = *lend)) && (ch != (char) d)) lend++;
-
- if ((lbeg + len == lend)
- && (0 == strncmp (elem, lbeg, len)))
- break;
-
- if (ch == 0)
- {
- n = 0;
- break;
- }
- lend++; /* skip delim */
- n++;
- }
-
- return n;
-}
-
-/*}}}*/
-
-/* Regular expression routines for strings */
-static SLRegexp_Type regexp_reg;
-
-static int string_match_cmd (char *str, char *pat, int *nptr) /*{{{*/
-{
- int n;
- unsigned int len;
- unsigned char rbuf[512], *match;
-
- n = *nptr;
-
- regexp_reg.case_sensitive = 1;
- regexp_reg.buf = rbuf;
- regexp_reg.pat = (unsigned char *) pat;
- regexp_reg.buf_len = sizeof (rbuf);
-
- if (SLang_regexp_compile (&regexp_reg))
- {
- SLang_verror (SL_INVALID_PARM, "Unable to compile pattern");
- return -1;
- }
-
- n--;
- len = strlen(str);
- if ((n < 0) || ((unsigned int) n >= len))
- {
- /* SLang_Error = SL_INVALID_PARM; */
- return 0;
- }
-
- str += n;
- len -= n;
-
- if (NULL == (match = SLang_regexp_match((unsigned char *) str, len, &regexp_reg)))
- return 0;
-
- /* adjust offsets */
- regexp_reg.offset = n;
-
- return (1 + (int) ((char *) match - str));
-}
-
-/*}}}*/
-
-static int string_match_nth_cmd (int *nptr) /*{{{*/
-{
- int n, beg;
-
- n = *nptr;
-
- if ((n < 0) || (n > 9) || (regexp_reg.pat == NULL)
- || ((beg = regexp_reg.beg_matches[n]) == -1))
- {
- SLang_Error = SL_INVALID_PARM;
- return -1;
- }
- SLang_push_integer(beg + regexp_reg.offset);
- return regexp_reg.end_matches[n];
-}
-
-/*}}}*/
-
-static char *create_delimited_string (char **list, unsigned int n,
- char *delim)
-{
- unsigned int len, dlen;
- unsigned int i;
- unsigned int num;
- char *str, *s;
-
- len = 1; /* allow room for \0 char */
- num = 0;
- for (i = 0; i < n; i++)
- {
- if (list[i] == NULL) continue;
- len += strlen (list[i]);
- num++;
- }
-
- dlen = strlen (delim);
- if (num > 1)
- len += (num - 1) * dlen;
-
- if (NULL == (str = SLmalloc (len)))
- return NULL;
-
- *str = 0;
- s = str;
- i = 0;
-
- while (num > 1)
- {
- while (list[i] == NULL)
- i++;
-
- strcpy (s, list[i]);
- s += strlen (list[i]);
- strcpy (s, delim);
- s += dlen;
- i++;
- num--;
- }
-
- if (num)
- {
- while (list[i] == NULL)
- i++;
-
- strcpy (s, list[i]);
- }
-
- return str;
-}
-
-static void create_delimited_string_cmd (int *nptr)
-{
- unsigned int n, i;
- char **strings;
- char *str;
-
- str = NULL;
-
- n = 1 + (unsigned int) *nptr; /* n includes delimiter */
-
- if (NULL == (strings = (char **)SLmalloc (n * sizeof (char *))))
- {
- SLdo_pop_n (n);
- return;
- }
- memset((char *)strings, 0, n * sizeof (char *));
-
- i = n;
- while (i != 0)
- {
- i--;
- if (-1 == SLang_pop_slstring (strings + i))
- goto return_error;
- }
-
- str = create_delimited_string (strings + 1, (n - 1), strings[0]);
- /* drop */
- return_error:
- for (i = 0; i < n; i++) SLang_free_slstring (strings[i]);
- SLfree ((char *)strings);
-
- (void) SLang_push_malloced_string (str); /* NULL Ok */
-}
-
-static void strjoin_cmd (char *delim)
-{
- SLang_Array_Type *at;
- char *str;
-
- if (-1 == SLang_pop_array_of_type (&at, SLANG_STRING_TYPE))
- return;
-
- str = create_delimited_string ((char **)at->data, at->num_elements, delim);
- SLang_free_array (at);
- (void) SLang_push_malloced_string (str); /* NULL Ok */
-}
-
-static void str_delete_chars_cmd (char *s, char *d)
-{
- unsigned char lut[256];
- unsigned char *s1, *s2;
- unsigned char ch;
-
- make_lut ((unsigned char *)d, lut);
- if (NULL == (s = SLmake_string (s)))
- return;
-
- s1 = s2 = (unsigned char *) s;
- while ((ch = *s2++) != 0)
- {
- if (0 == lut[ch])
- *s1++ = ch;
- }
- *s1 = 0;
-
- (void) SLang_push_malloced_string (s);
-}
-
-static unsigned char *make_lut_string (unsigned char *s)
-{
- unsigned char lut[256];
- unsigned char *l;
- unsigned int i;
-
- /* Complement-- a natural order is imposed */
- make_lut (s, lut);
- l = lut;
- for (i = 1; i < 256; i++)
- {
- if (lut[i])
- *l++ = (unsigned char) i;
- }
- *l = 0;
- return (unsigned char *) SLmake_string ((char *)lut);
-}
-
-static unsigned char *make_str_range (unsigned char *s)
-{
- unsigned char *s1, *range;
- unsigned int num;
- unsigned char ch;
- int len;
-
- if (*s == '^')
- return make_lut_string (s);
-
- num = 0;
- s1 = s;
- while ((ch = *s1++) != 0)
- {
- unsigned char ch1;
-
- ch1 = *s1;
- if (ch1 == '-')
- {
- s1++;
- ch1 = *s1;
- len = (int)ch1 - (int)ch;
- if (len < 0)
- len = -len;
-
- num += (unsigned int) len;
- if (ch1 != 0)
- s1++;
- }
-
- num++;
- }
-
- range = (unsigned char *)SLmalloc (num + 1);
- if (range == NULL)
- return NULL;
-
- s1 = s;
- s = range;
- while ((ch = *s1++) != 0)
- {
- unsigned char ch1;
- unsigned int i;
-
- ch1 = *s1;
- if (ch1 != '-')
- {
- *s++ = ch;
- continue;
- }
-
- s1++;
- ch1 = *s1;
-
- if (ch > ch1)
- {
- if (ch1 == 0)
- ch1 = 1;
-
- for (i = (unsigned int) ch; i >= (unsigned int) ch1; i--)
- *s++ = (unsigned char) i;
-
- if (*s1 == 0)
- break;
- }
- else
- {
- for (i = (unsigned int) ch; i <= (unsigned int) ch1; i++)
- *s++ = (unsigned char) i;
- }
- s1++;
- }
-
-#if 0
- if (range + num != s)
- SLang_verror (SL_INTERNAL_ERROR, "make_str_range: num wrong");
-#endif
- *s = 0;
-
- return range;
-}
-
-static void strtrans_cmd (char *s, unsigned char *from, unsigned char *to)
-{
- unsigned char map[256];
- char *s1;
- unsigned int i;
- unsigned char ch;
- unsigned char last_to;
- unsigned char *from_range, *to_range;
-
- for (i = 0; i < 256; i++) map[i] = (unsigned char) i;
-
- if (*to == 0)
- {
- str_delete_chars_cmd (s, (char *)from);
- return;
- }
-
- from_range = make_str_range (from);
- if (from_range == NULL)
- return;
- to_range = make_str_range (to);
- if (to_range == NULL)
- {
- SLfree ((char *)from_range);
- return;
- }
-
- from = from_range;
- to = to_range;
-
- last_to = 0;
- while ((ch = *from++) != 0)
- {
- unsigned char to_ch;
-
- if (0 == (to_ch = *to++))
- {
- do
- {
- map[ch] = last_to;
- }
- while (0 != (ch = *from++));
- break;
- }
-
- last_to = map[ch] = to_ch;
- }
-
- SLfree ((char *)from_range);
- SLfree ((char *)to_range);
-
- s = SLmake_string (s);
- if (s == NULL)
- return;
-
- s1 = s;
- while ((ch = (unsigned char) *s1) != 0)
- *s1++ = (char) map[ch];
-
- (void) SLang_push_malloced_string (s);
-}
-
-
-static SLang_Intrin_Fun_Type Strops_Table [] = /*{{{*/
-{
- MAKE_INTRINSIC_I("create_delimited_string", create_delimited_string_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SS("strcmp", strcmp_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_SSI("strncmp", strncmp_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_0("strcat", strcat_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("strlen", strlen_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_SII("strchop", strchop_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SII("strchopr", strchopr_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_I("strreplace", strreplace_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_SSS("str_replace", str_replace_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_SII("substr", substr_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SS("is_substr", issubstr_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_II("strsub", strsub_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SII("extract_element", extract_element_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SSI("is_list_element", is_list_element_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_SSI("string_match", string_match_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_I("string_match_nth", string_match_nth_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_0("strlow", strlow_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_I("tolower", tolower_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_I("toupper", toupper_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_0("strup", strup_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("isdigit", isdigit_cmd, SLANG_INT_TYPE),
- MAKE_INTRINSIC_S("strtrim", strtrim_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("strtrim_end", strtrim_end_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("strtrim_beg", strtrim_beg_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("strcompress", strcompress_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_I("Sprintf", sprintf_n_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("sprintf", sprintf_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("sscanf", _SLang_sscanf, SLANG_INT_TYPE),
- MAKE_INTRINSIC_S("make_printable_string", make_printable_string, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SSI("str_quote_string", str_quote_string_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SSS("str_uncomment_string", str_uncomment_string_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_II("define_case", SLang_define_case, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("strtok", strtok_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_S("strjoin", strjoin_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SSS("strtrans", strtrans_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_SS("str_delete_chars", str_delete_chars_cmd, SLANG_VOID_TYPE),
-
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-/*}}}*/
-
-int _SLang_init_slstrops (void)
-{
- return SLadd_intrin_fun_table (Strops_Table, NULL);
-}
diff --git a/mdk-stage1/slang/slstruct.c b/mdk-stage1/slang/slstruct.c
deleted file mode 100644
index 33d182373..000000000
--- a/mdk-stage1/slang/slstruct.c
+++ /dev/null
@@ -1,932 +0,0 @@
-/* Structure type implementation */
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#define SL_APP_WANTS_FOREACH
-#include "slang.h"
-#include "_slang.h"
-
-void _SLstruct_delete_struct (_SLang_Struct_Type *s)
-{
- _SLstruct_Field_Type *field, *field_max;
-
- if (s == NULL) return;
-
- if (s->num_refs > 1)
- {
- s->num_refs -= 1;
- return;
- }
-
- field = s->fields;
- if (field != NULL)
- {
- field_max = field + s->nfields;
-
- while (field < field_max)
- {
- SLang_free_object (&field->obj);
- SLang_free_slstring (field->name); /* could be NULL */
- field++;
- }
- SLfree ((char *) s->fields);
- }
- SLfree ((char *) s);
-}
-
-static _SLang_Struct_Type *allocate_struct (unsigned int nfields)
-{
- _SLang_Struct_Type *s;
- _SLstruct_Field_Type *f;
- unsigned int i, size;
-
- s = (_SLang_Struct_Type *) SLmalloc (sizeof (_SLang_Struct_Type));
- if (s == NULL) return NULL;
-
- SLMEMSET((char *) s, 0, sizeof (_SLang_Struct_Type));
-
- size = nfields * sizeof(_SLstruct_Field_Type);
- if (NULL == (f = (_SLstruct_Field_Type *) SLmalloc (size)))
- {
- SLfree ((char *) s);
- return NULL;
- }
- SLMEMSET ((char *) f, 0, size);
- s->nfields = nfields;
- s->fields = f;
-
- /* By default, all structs will be created with elements set to NULL. I
- * do not know whether or not it is better to use SLANG_UNDEFINED_TYPE.
- */
- for (i = 0; i < nfields; i++)
- f[i].obj.data_type = SLANG_NULL_TYPE;
-
- return s;
-}
-
-static int push_struct_of_type (unsigned char type, _SLang_Struct_Type *s)
-{
- SLang_Object_Type obj;
-
- obj.data_type = type;
- obj.v.struct_val = s;
- s->num_refs += 1;
-
- if (0 == SLang_push (&obj))
- return 0;
-
- s->num_refs -= 1;
- return -1;
-}
-
-int _SLang_push_struct (_SLang_Struct_Type *s)
-{
- return push_struct_of_type (SLANG_STRUCT_TYPE, s);
-}
-
-int _SLang_pop_struct (_SLang_Struct_Type **sp)
-{
- SLang_Object_Type obj;
- SLang_Class_Type *cl;
- unsigned char type;
-
- if (0 != SLang_pop (&obj))
- return -1;
-
- type = obj.data_type;
- if (type != SLANG_STRUCT_TYPE)
- {
- cl = _SLclass_get_class (type);
- if (cl->cl_struct_def == NULL)
- {
- *sp = NULL;
- SLang_free_object (&obj);
- SLang_verror (SL_TYPE_MISMATCH,
- "Expecting struct type object. Found %s",
- cl->cl_name);
- return -1;
- }
- }
-
- *sp = obj.v.struct_val;
- return 0;
-}
-
-static void struct_destroy (unsigned char type, VOID_STAR vs)
-{
- (void) type;
- _SLstruct_delete_struct (*(_SLang_Struct_Type **) vs);
-}
-
-static int struct_push (unsigned char type, VOID_STAR ptr)
-{
- return push_struct_of_type (type, *(_SLang_Struct_Type **) ptr);
-}
-
-static _SLstruct_Field_Type *find_field (_SLang_Struct_Type *s, char *name)
-{
- _SLstruct_Field_Type *f, *fmax;
-
- f = s->fields;
- fmax = f + s->nfields;
-
- while (f < fmax)
- {
- /* Since both these are slstrings, only compare pointer */
- if (name == f->name)
- return f;
-
- f++;
- }
-
- return NULL;
-}
-
-static _SLstruct_Field_Type *pop_field (_SLang_Struct_Type *s, char *name)
-{
- _SLstruct_Field_Type *f;
-
- f = find_field (s, name);
- if (f == NULL)
- SLang_verror (SL_SYNTAX_ERROR, "struct has no field named %s", name);
- return f;
-}
-
-int SLstruct_create_struct (unsigned int nfields,
- char **field_names,
- unsigned char *field_types,
- VOID_STAR *field_values)
-{
- _SLang_Struct_Type *s;
- _SLstruct_Field_Type *f;
- unsigned int i;
-
- if (NULL == (s = allocate_struct (nfields)))
- return -1;
-
- f = s->fields;
- for (i = 0; i < nfields; i++)
- {
- unsigned char type;
- SLang_Class_Type *cl;
- VOID_STAR value;
- char *name = field_names [i];
-
- if (name == NULL)
- {
- SLang_verror (SL_INVALID_PARM, "A struct field name cannot be NULL");
- goto return_error;
- }
-
- if (NULL == (f->name = SLang_create_slstring (name)))
- goto return_error;
-
- if ((field_values == NULL)
- || (NULL == (value = field_values [i])))
- {
- f++;
- continue;
- }
-
- type = field_types[i];
- cl = _SLclass_get_class (type);
-
- if ((-1 == (cl->cl_push (type, value)))
- || (-1 == SLang_pop (&f->obj)))
- goto return_error;
-
- f++;
- }
-
- if (0 == _SLang_push_struct (s))
- return 0;
- /* drop */
-
- return_error:
- _SLstruct_delete_struct (s);
- return -1;
-}
-
-/* Interpreter interface */
-
-int _SLstruct_define_struct (void)
-{
- int nfields;
- _SLang_Struct_Type *s;
- _SLstruct_Field_Type *f;
-
- if (-1 == SLang_pop_integer (&nfields))
- return -1;
-
- if (nfields <= 0)
- {
- SLang_verror (SL_INVALID_PARM, "Number of struct fields must be > 0");
- return -1;
- }
-
- if (NULL == (s = allocate_struct (nfields)))
- return -1;
-
- f = s->fields;
- while (nfields)
- {
- char *name;
-
- nfields--;
- if (-1 == SLang_pop_slstring (&name))
- {
- _SLstruct_delete_struct (s);
- return -1;
- }
- f[nfields].name = name;
- }
-
- if (-1 == _SLang_push_struct (s))
- {
- _SLstruct_delete_struct (s);
- return -1;
- }
- return 0;
-}
-
-/* Simply make a struct that contains the same fields as struct s. Do not
- * duplicate the field values.
- */
-static _SLang_Struct_Type *make_struct_shell (_SLang_Struct_Type *s)
-{
- _SLang_Struct_Type *new_s;
- _SLstruct_Field_Type *new_f, *old_f;
- unsigned int i, nfields;
-
- nfields = s->nfields;
- if (NULL == (new_s = allocate_struct (nfields)))
- return NULL;
-
- new_f = new_s->fields;
- old_f = s->fields;
-
- for (i = 0; i < nfields; i++)
- {
- if (NULL == (new_f[i].name = SLang_create_slstring (old_f[i].name)))
- {
- _SLstruct_delete_struct (new_s);
- return NULL;
- }
- }
- return new_s;
-}
-
-static int struct_init_array_object (unsigned char type, VOID_STAR addr)
-{
- SLang_Class_Type *cl;
- _SLang_Struct_Type *s;
-
- cl = _SLclass_get_class (type);
- if (NULL == (s = make_struct_shell (cl->cl_struct_def)))
- return -1;
-
- s->num_refs = 1;
- *(_SLang_Struct_Type **) addr = s;
- return 0;
-}
-
-static int
-typedefed_struct_datatype_deref (unsigned char type)
-{
- SLang_Class_Type *cl;
- _SLang_Struct_Type *s;
-
- cl = _SLclass_get_class (type);
- if (NULL == (s = make_struct_shell (cl->cl_struct_def)))
- return -1;
-
- if (-1 == push_struct_of_type (type, s))
- {
- _SLstruct_delete_struct (s);
- return -1;
- }
-
- return 0;
-}
-
-static _SLang_Struct_Type *duplicate_struct (_SLang_Struct_Type *s)
-{
- _SLang_Struct_Type *new_s;
- _SLstruct_Field_Type *new_f, *f, *fmax;
-
- new_s = make_struct_shell (s);
-
- if (new_s == NULL)
- return NULL;
-
- f = s->fields;
- fmax = f + s->nfields;
- new_f = new_s->fields;
-
- while (f < fmax)
- {
- SLang_Object_Type *obj;
-
- obj = &f->obj;
- if (obj->data_type != SLANG_UNDEFINED_TYPE)
- {
- if ((-1 == _SLpush_slang_obj (obj))
- || (-1 == SLang_pop (&new_f->obj)))
- {
- _SLstruct_delete_struct (new_s);
- return NULL;
- }
- }
- new_f++;
- f++;
- }
-
- return new_s;
-}
-
-static int struct_dereference (unsigned char type, VOID_STAR addr)
-{
- _SLang_Struct_Type *s;
-
- if (NULL == (s = duplicate_struct (*(_SLang_Struct_Type **) addr)))
- return -1;
-
- if (-1 == push_struct_of_type (type, s))
- {
- _SLstruct_delete_struct (s);
- return -1;
- }
-
- return 0;
-}
-
-/*{{{ foreach */
-
-struct _SLang_Foreach_Context_Type
-{
- _SLang_Struct_Type *s;
- char *next_field_name;
-};
-
-static SLang_Foreach_Context_Type *
-struct_foreach_open (unsigned char type, unsigned int num)
-{
- SLang_Foreach_Context_Type *c;
- _SLang_Struct_Type *s;
- char *next_name;
-
- (void) type;
-
- if (-1 == _SLang_pop_struct (&s))
- return NULL;
-
- switch (num)
- {
- case 0:
- next_name = SLang_create_slstring ("next");
- break;
-
- case 1:
- if (-1 == SLang_pop_slstring (&next_name))
- next_name = NULL;
- break;
-
- default:
- next_name = NULL;
- SLang_verror (SL_NOT_IMPLEMENTED,
- "'foreach (Struct_Type) using' requires single control value");
- SLdo_pop_n (num);
- break;
- }
-
- if (next_name == NULL)
- {
- _SLstruct_delete_struct (s);
- return NULL;
- }
-
- c = (SLang_Foreach_Context_Type *)SLmalloc (sizeof (SLang_Foreach_Context_Type));
- if (c == NULL)
- {
- _SLstruct_delete_struct (s);
- SLang_free_slstring (next_name);
- return NULL;
- }
- memset ((char *) c, 0, sizeof (SLang_Foreach_Context_Type));
-
- c->next_field_name = next_name;
- c->s = s;
-
- return c;
-}
-
-static void struct_foreach_close (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- (void) type;
- if (c == NULL) return;
-
- SLang_free_slstring (c->next_field_name);
- if (c->s != NULL) _SLstruct_delete_struct (c->s);
- SLfree ((char *) c);
-}
-
-static int struct_foreach (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- _SLstruct_Field_Type *f;
- _SLang_Struct_Type *next_s;
-
- (void) type;
-
- if (c == NULL)
- return -1;
-
- if (c->s == NULL)
- return 0; /* done */
-
- if (-1 == _SLang_push_struct (c->s))
- return -1;
-
- /* Now get the next one ready for the next foreach loop */
-
- next_s = NULL;
- if (NULL != (f = find_field (c->s, c->next_field_name)))
- {
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (f->obj.data_type);
- /* Note that I cannot simply look for SLANG_STRUCT_TYPE since the
- * user may have typedefed another struct type. So, look at the
- * class methods.
- */
- if (cl->cl_foreach_open == struct_foreach_open)
- {
- next_s = f->obj.v.struct_val;
- next_s->num_refs += 1;
- }
- }
-
- _SLstruct_delete_struct (c->s);
- c->s = next_s;
-
- /* keep going */
- return 1;
-}
-
-/*}}}*/
-
-static int struct_sput (unsigned char type, char *name)
-{
- _SLang_Struct_Type *s;
- _SLstruct_Field_Type *f;
- SLang_Object_Type obj;
-
- (void) type;
-
- if (-1 == _SLang_pop_struct (&s))
- return -1;
-
- if ((NULL == (f = pop_field (s, name)))
- || (-1 == SLang_pop (&obj)))
- {
- _SLstruct_delete_struct (s);
- return -1;
- }
-
- SLang_free_object (&f->obj);
- f->obj = obj;
- _SLstruct_delete_struct (s);
- return 0;
-}
-
-static int struct_sget (unsigned char type, char *name)
-{
- _SLang_Struct_Type *s;
- _SLstruct_Field_Type *f;
- int ret;
-
- (void) type;
-
- if (-1 == _SLang_pop_struct (&s))
- return -1;
-
- if (NULL == (f = pop_field (s, name)))
- {
- _SLstruct_delete_struct (s);
- return -1;
- }
-
- ret = _SLpush_slang_obj (&f->obj);
- _SLstruct_delete_struct (s);
- return ret;
-}
-
-static int struct_typecast
- (unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp)
-{
- _SLang_Struct_Type **a, **b;
- unsigned int i;
-
- (void) a_type;
- (void) b_type;
-
- a = (_SLang_Struct_Type **) ap;
- b = (_SLang_Struct_Type **) bp;
- for (i = 0; i < na; i++)
- {
- b[i] = a[i];
- if (a[i] != NULL)
- a[i]->num_refs += 1;
- }
-
- return 1;
-}
-
-int _SLstruct_define_typedef (void)
-{
- char *type_name;
- _SLang_Struct_Type *s, *s1;
- SLang_Class_Type *cl;
-
- if (-1 == SLang_pop_slstring (&type_name))
- return -1;
-
- if (-1 == _SLang_pop_struct (&s))
- {
- SLang_free_slstring (type_name);
- return -1;
- }
-
- if (NULL == (s1 = make_struct_shell (s)))
- {
- SLang_free_slstring (type_name);
- _SLstruct_delete_struct (s);
- return -1;
- }
-
- _SLstruct_delete_struct (s);
-
- if (NULL == (cl = SLclass_allocate_class (type_name)))
- {
- SLang_free_slstring (type_name);
- _SLstruct_delete_struct (s1);
- return -1;
- }
- SLang_free_slstring (type_name);
-
- cl->cl_struct_def = s1;
- cl->cl_init_array_object = struct_init_array_object;
- cl->cl_datatype_deref = typedefed_struct_datatype_deref;
- cl->cl_destroy = struct_destroy;
- cl->cl_push = struct_push;
- cl->cl_dereference = struct_dereference;
- cl->cl_foreach_open = struct_foreach_open;
- cl->cl_foreach_close = struct_foreach_close;
- cl->cl_foreach = struct_foreach;
-
- cl->cl_sget = struct_sget;
- cl->cl_sput = struct_sput;
-
- if (-1 == SLclass_register_class (cl,
- SLANG_VOID_TYPE, /* any open slot */
- sizeof (_SLang_Struct_Type),
- SLANG_CLASS_TYPE_PTR))
- {
- /* FIXME: Priority=low */
- /* There is a memory leak here if this fails... */
- return -1;
- }
- /* Note: typecast from a user type struct type allowed but not the other
- * way.
- */
- if (-1 == SLclass_add_typecast (cl->cl_data_type, SLANG_STRUCT_TYPE, struct_typecast, 1))
- return -1;
-
- return 0;
-}
-
-static int
-struct_datatype_deref (unsigned char stype)
-{
- (void) stype;
-
- if (SLang_peek_at_stack () == SLANG_ARRAY_TYPE)
- {
- SLang_Array_Type *at;
- int status;
-
- if (-1 == SLang_pop_array_of_type (&at, SLANG_STRING_TYPE))
- return -1;
-
- status = SLstruct_create_struct (at->num_elements,
- (char **) at->data, NULL, NULL);
-
- SLang_free_array (at);
- return status;
- }
-
- SLang_push_integer (SLang_Num_Function_Args);
- return _SLstruct_define_struct ();
-}
-
-static int register_struct (void)
-{
- SLang_Class_Type *cl;
-
- if (NULL == (cl = SLclass_allocate_class ("Struct_Type")))
- return -1;
-
- (void) SLclass_set_destroy_function (cl, struct_destroy);
- (void) SLclass_set_push_function (cl, struct_push);
- cl->cl_dereference = struct_dereference;
- cl->cl_datatype_deref = struct_datatype_deref;
-
- cl->cl_foreach_open = struct_foreach_open;
- cl->cl_foreach_close = struct_foreach_close;
- cl->cl_foreach = struct_foreach;
-
- cl->cl_sget = struct_sget;
- cl->cl_sput = struct_sput;
-
- if (-1 == SLclass_register_class (cl, SLANG_STRUCT_TYPE, sizeof (_SLang_Struct_Type),
- SLANG_CLASS_TYPE_PTR))
- return -1;
-
- return 0;
-}
-
-static void get_struct_field_names (_SLang_Struct_Type *s)
-{
- SLang_Array_Type *a;
- char **data;
- int i, nfields;
- _SLstruct_Field_Type *f;
-
- nfields = (int) s->nfields;
-
- if (NULL == (a = SLang_create_array (SLANG_STRING_TYPE, 0, NULL, &nfields, 1)))
- return;
-
- f = s->fields;
- data = (char **) a->data;
- for (i = 0; i < nfields; i++)
- {
- /* Since we are dealing with hashed strings, the next call should not
- * fail. If it does, the interpreter will handle it at some other
- * level.
- */
- data [i] = SLang_create_slstring (f[i].name);
- }
-
- SLang_push_array (a, 1);
-}
-
-static int push_struct_fields (_SLang_Struct_Type *s)
-{
- _SLstruct_Field_Type *f, *fmax;
- int num;
-
- f = s->fields;
- fmax = f + s->nfields;
-
- num = 0;
- while (fmax > f)
- {
- fmax--;
- if (-1 == _SLpush_slang_obj (&fmax->obj))
- break;
-
- num++;
- }
-
- return num;
-}
-
-/* Syntax: set_struct_field (s, name, value); */
-static void struct_set_field (void)
-{
- _SLang_Struct_Type *s;
- _SLstruct_Field_Type *f;
- SLang_Object_Type obj;
- char *name;
-
- if (-1 == SLang_pop (&obj))
- return;
-
- if (-1 == SLang_pop_slstring (&name))
- {
- SLang_free_object (&obj);
- return;
- }
-
- if (-1 == _SLang_pop_struct (&s))
- {
- SLang_free_slstring (name);
- SLang_free_object (&obj);
- return;
- }
-
- if (NULL == (f = pop_field (s, name)))
- {
- _SLstruct_delete_struct (s);
- SLang_free_slstring (name);
- SLang_free_object (&obj);
- return;
- }
-
- SLang_free_object (&f->obj);
- f->obj = obj;
-
- _SLstruct_delete_struct (s);
- SLang_free_slstring (name);
-}
-
-/* Syntax: set_struct_fields (s, values....); */
-static void set_struct_fields (void)
-{
- unsigned int n;
- _SLang_Struct_Type *s;
- _SLstruct_Field_Type *f;
-
- n = (unsigned int) SLang_Num_Function_Args;
-
- if (-1 == SLreverse_stack (n))
- return;
-
- n--;
- if (-1 == _SLang_pop_struct (&s))
- {
- SLdo_pop_n (n);
- return;
- }
-
- if (n > s->nfields)
- {
- SLdo_pop_n (n);
- SLang_verror (SL_INVALID_PARM, "Too many values for structure");
- _SLstruct_delete_struct (s);
- return;
- }
-
- f = s->fields;
- while (n > 0)
- {
- SLang_Object_Type obj;
-
- if (-1 == SLang_pop (&obj))
- break;
-
- SLang_free_object (&f->obj);
- f->obj = obj;
-
- f++;
- n--;
- }
-
- _SLstruct_delete_struct (s);
-}
-
-static void get_struct_field (char *name)
-{
- (void) struct_sget (0, name);
-}
-
-static int is_struct_type (void)
-{
- SLang_Object_Type obj;
- unsigned char type;
- int status;
-
- if (-1 == SLang_pop (&obj))
- return -1;
-
- type = obj.data_type;
- if (type == SLANG_STRUCT_TYPE)
- status = 1;
- else
- status = (NULL != _SLclass_get_class (type)->cl_struct_def);
- SLang_free_object (&obj);
- return status;
-}
-
-
-static SLang_Intrin_Fun_Type Struct_Table [] =
-{
- MAKE_INTRINSIC_1("get_struct_field_names", get_struct_field_names, SLANG_VOID_TYPE, SLANG_STRUCT_TYPE),
- MAKE_INTRINSIC_1("get_struct_field", get_struct_field, SLANG_VOID_TYPE, SLANG_STRING_TYPE),
- MAKE_INTRINSIC_1("_push_struct_field_values", push_struct_fields, SLANG_INT_TYPE, SLANG_STRUCT_TYPE),
- MAKE_INTRINSIC_0("set_struct_field", struct_set_field, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("set_struct_fields", set_struct_fields, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("is_struct_type", is_struct_type, SLANG_INT_TYPE),
- /* MAKE_INTRINSIC_I("_create_struct", create_struct, SLANG_VOID_TYPE), */
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-int _SLstruct_init (void)
-{
- if ((-1 == SLadd_intrin_fun_table (Struct_Table, NULL))
- || (-1 == register_struct ()))
- return -1;
-
- return 0;
-}
-
-void _SLstruct_pop_args (int *np)
-{
- SLang_Array_Type *at;
- int i, n;
- _SLang_Struct_Type **data;
-
- n = *np;
-
- if (n < 0)
- {
- SLang_Error = SL_INVALID_PARM;
- return;
- }
-
- data = (_SLang_Struct_Type **) SLmalloc ((n + 1) * sizeof (_SLang_Struct_Type *));
- if (data == NULL)
- {
- SLdo_pop_n (n);
- return;
- }
-
- memset ((char *)data, 0, n * sizeof (_SLang_Struct_Type *));
-
- i = n;
- while (i > 0)
- {
- _SLang_Struct_Type *s;
- _SLstruct_Field_Type *f;
-
- i--;
-
- if (NULL == (s = allocate_struct (1)))
- goto return_error;
-
- data[i] = s;
- s->num_refs += 1; /* keeping a copy */
-
- f = s->fields;
- if (NULL == (f->name = SLang_create_slstring ("value")))
- goto return_error;
-
- if (-1 == SLang_pop (&f->obj))
- goto return_error;
- }
-
- if (NULL == (at = SLang_create_array (SLANG_STRUCT_TYPE, 0,
- (VOID_STAR) data, &n, 1)))
- goto return_error;
-
- (void) SLang_push_array (at, 1);
- return;
-
- return_error:
- for (i = 0; i < n; i++)
- {
- _SLang_Struct_Type *s;
-
- s = data[i];
- if (s != NULL)
- _SLstruct_delete_struct (s);
- }
-
- SLfree ((char *) data);
-}
-
-void _SLstruct_push_args (SLang_Array_Type *at)
-{
- _SLang_Struct_Type **sp;
- unsigned int num;
-
- if (at->data_type != SLANG_STRUCT_TYPE)
- {
- SLang_Error = SL_TYPE_MISMATCH;
- return;
- }
-
- sp = (_SLang_Struct_Type **) at->data;
- num = at->num_elements;
-
- while ((SLang_Error == 0) && (num > 0))
- {
- _SLang_Struct_Type *s;
-
- num--;
- if (NULL == (s = *sp++))
- {
- SLang_push_null ();
- continue;
- }
-
- /* I should check to see if the value field is present, but... */
- (void) _SLpush_slang_obj (&s->fields->obj);
- }
-}
diff --git a/mdk-stage1/slang/sltermin.c b/mdk-stage1/slang/sltermin.c
deleted file mode 100644
index f9c64f0b2..000000000
--- a/mdk-stage1/slang/sltermin.c
+++ /dev/null
@@ -1,1155 +0,0 @@
-/* This file contains enough terminfo reading capabilities sufficient for
- * the slang SLtt interface.
- */
-
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-/*
- * The majority of the comments found in the file were taken from the
- * term(4) man page on an SGI.
- */
-
-/* Short integers are stored in two 8-bit bytes. The first byte contains
- * the least significant 8 bits of the value, and the second byte contains
- * the most significant 8 bits. (Thus, the value represented is
- * 256*second+first.) The value -1 is represented by 0377,0377, and the
- * value -2 is represented by 0376,0377; other negative values are illegal.
- * The -1 generally means that a capability is missing from this terminal.
- * The -2 means that the capability has been cancelled in the terminfo
- * source and also is to be considered missing.
- */
-
-static int make_integer (unsigned char *buf)
-{
- register int lo, hi;
- lo = (int) *buf++; hi = (int) *buf;
- if (hi == 0377)
- {
- if (lo == 0377) return -1;
- if (lo == 0376) return -2;
- }
- return lo + 256 * hi;
-}
-
-/*
- * The compiled file is created from the source file descriptions of the
- * terminals (see the -I option of infocmp) by using the terminfo compiler,
- * tic, and read by the routine setupterm [see curses(3X).] The file is
- * divided into six parts in the following order: the header, terminal
- * names, boolean flags, numbers, strings, and string table.
- *
- * The header section begins the file. This section contains six short
- * integers in the format described below. These integers are (1) the magic
- * number (octal 0432); (2) the size, in bytes, of the names section; (3)
- * the number of bytes in the boolean section; (4) the number of short
- * integers in the numbers section; (5) the number of offsets (short
- * integers) in the strings section; (6) the size, in bytes, of the string
- * table.
- */
-
-#define MAGIC 0432
-
-/* In this structure, all char * fields are malloced EXCEPT if the
- * structure is SLTERMCAP. In that case, only terminal_names is malloced
- * and the other fields are pointers into it.
- */
-struct _SLterminfo_Type
-{
-#define SLTERMINFO 1
-#define SLTERMCAP 2
- unsigned int flags;
-
- unsigned int name_section_size;
- char *terminal_names;
-
- unsigned int boolean_section_size;
- unsigned char *boolean_flags;
-
- unsigned int num_numbers;
- unsigned char *numbers;
-
- unsigned int num_string_offsets;
- unsigned char *string_offsets;
-
- unsigned int string_table_size;
- char *string_table;
-
-};
-
-static char *tcap_getstr (char *, SLterminfo_Type *);
-static int tcap_getnum (char *, SLterminfo_Type *);
-static int tcap_getflag (char *, SLterminfo_Type *);
-static int tcap_getent (char *, SLterminfo_Type *);
-
-static FILE *open_terminfo (char *file, SLterminfo_Type *h)
-{
- FILE *fp;
- unsigned char buf[12];
-
- /* Alan Cox reported a security problem here if the application using the
- * library is setuid. So, I need to make sure open the file as a normal
- * user. Unfortunately, there does not appear to be a portable way of
- * doing this, so I am going to use 'setfsgid' and 'setfsuid', which
- * are not portable.
- *
- * I will also look into the use of setreuid, seteuid and setregid, setegid.
- * FIXME: Priority=medium
- */
- fp = fopen (file, "rb");
- if (fp == NULL) return NULL;
-
- if ((12 == fread ((char *) buf, 1, 12, fp) && (MAGIC == make_integer (buf))))
- {
- h->name_section_size = make_integer (buf + 2);
- h->boolean_section_size = make_integer (buf + 4);
- h->num_numbers = make_integer (buf + 6);
- h->num_string_offsets = make_integer (buf + 8);
- h->string_table_size = make_integer (buf + 10);
- }
- else
- {
- fclose (fp);
- fp = NULL;
- }
- return fp;
-}
-
-/*
- * The terminal names section comes next. It contains the first line of the
- * terminfo description, listing the various names for the terminal,
- * separated by the bar ( | ) character (see term(5)). The section is
- * terminated with an ASCII NUL character.
- */
-
-/* returns pointer to malloced space */
-static unsigned char *read_terminfo_section (FILE *fp, unsigned int size)
-{
- char *s;
-
- if (NULL == (s = (char *) SLmalloc (size))) return NULL;
- if (size != fread (s, 1, size, fp))
- {
- SLfree (s);
- return NULL;
- }
- return (unsigned char *) s;
-}
-
-static char *read_terminal_names (FILE *fp, SLterminfo_Type *t)
-{
- return t->terminal_names = (char *) read_terminfo_section (fp, t->name_section_size);
-}
-
-/*
- * The boolean flags have one byte for each flag. This byte is either 0 or
- * 1 as the flag is present or absent. The value of 2 means that the flag
- * has been cancelled. The capabilities are in the same order as the file
- * <term.h>.
- */
-
-static unsigned char *read_boolean_flags (FILE *fp, SLterminfo_Type *t)
-{
- /* Between the boolean section and the number section, a null byte is
- * inserted, if necessary, to ensure that the number section begins on an
- * even byte offset. All short integers are aligned on a short word
- * boundary.
- */
-
- unsigned int size = (t->name_section_size + t->boolean_section_size) % 2;
- size += t->boolean_section_size;
-
- return t->boolean_flags = read_terminfo_section (fp, size);
-}
-
-/*
- * The numbers section is similar to the boolean flags section. Each
- * capability takes up two bytes, and is stored as a short integer. If the
- * value represented is -1 or -2, the capability is taken to be missing.
- */
-
-static unsigned char *read_numbers (FILE *fp, SLterminfo_Type *t)
-{
- return t->numbers = read_terminfo_section (fp, 2 * t->num_numbers);
-}
-
-/* The strings section is also similar. Each capability is stored as a
- * short integer, in the format above. A value of -1 or -2 means the
- * capability is missing. Otherwise, the value is taken as an offset from
- * the beginning of the string table. Special characters in ^X or \c
- * notation are stored in their interpreted form, not the printing
- * representation. Padding information ($<nn>) and parameter information
- * (%x) are stored intact in uninterpreted form.
- */
-
-static unsigned char *read_string_offsets (FILE *fp, SLterminfo_Type *t)
-{
- return t->string_offsets = (unsigned char *) read_terminfo_section (fp, 2 * t->num_string_offsets);
-}
-
-/* The final section is the string table. It contains all the values of
- * string capabilities referenced in the string section. Each string is
- * null terminated.
- */
-
-static char *read_string_table (FILE *fp, SLterminfo_Type *t)
-{
- return t->string_table = (char *) read_terminfo_section (fp, t->string_table_size);
-}
-
-/*
- * Compiled terminfo(4) descriptions are placed under the directory
- * /usr/share/lib/terminfo. In order to avoid a linear search of a huge
- * UNIX system directory, a two-level scheme is used:
- * /usr/share/lib/terminfo/c/name where name is the name of the terminal,
- * and c is the first character of name. Thus, att4425 can be found in the
- * file /usr/share/lib/terminfo/a/att4425. Synonyms for the same terminal
- * are implemented by multiple links to the same compiled file.
- */
-
-#define MAX_TI_DIRS 7
-static char *Terminfo_Dirs [MAX_TI_DIRS] =
-{
- NULL, /* $HOME/.terminfo */
- NULL, /* $TERMINFO */
- "/usr/share/terminfo",
- "/usr/lib/terminfo",
- "/usr/share/lib/terminfo",
- "/etc/terminfo",
- "/usr/local/lib/terminfo"
-};
-
-SLterminfo_Type *_SLtt_tigetent (char *term)
-{
- char *tidir;
- int i;
- FILE *fp = NULL;
- char file[1024];
- static char home_ti [1024];
- char *home;
- SLterminfo_Type *ti;
-
- if (
- (term == NULL)
-#ifdef SLANG_UNTIC
- && (SLang_Untic_Terminfo_File == NULL)
-#endif
- )
- return NULL;
-
- if (NULL == (ti = (SLterminfo_Type *) SLmalloc (sizeof (SLterminfo_Type))))
- {
- return NULL;
- }
-
-#ifdef SLANG_UNTIC
- if (SLang_Untic_Terminfo_File != NULL)
- {
- fp = open_terminfo (SLang_Untic_Terminfo_File, ti);
- goto fp_open_label;
- }
- else
-#endif
- /* If we are on a termcap based system, use termcap */
- if (0 == tcap_getent (term, ti)) return ti;
-
- if (NULL != (home = getenv ("HOME")))
- {
- strncpy (home_ti, home, sizeof (home_ti) - 11);
- home_ti [sizeof(home_ti) - 11] = 0;
- strcat (home_ti, "/.terminfo");
- Terminfo_Dirs [0] = home_ti;
- }
-
- Terminfo_Dirs[1] = getenv ("TERMINFO");
- i = 0;
- while (i < MAX_TI_DIRS)
- {
- tidir = Terminfo_Dirs[i];
- if ((tidir != NULL)
- && (sizeof (file) > strlen (tidir) + 2 + strlen (term)))
- {
- sprintf (file, "%s/%c/%s", tidir, *term, term);
- if (NULL != (fp = open_terminfo (file, ti)))
- break;
- }
- i++;
- }
-#ifdef SLANG_UNTIC
- fp_open_label:
-#endif
-
- if (fp != NULL)
- {
- if (NULL != read_terminal_names (fp, ti))
- {
- if (NULL != read_boolean_flags (fp, ti))
- {
- if (NULL != read_numbers (fp, ti))
- {
- if (NULL != read_string_offsets (fp, ti))
- {
- if (NULL != read_string_table (fp, ti))
- {
- /* success */
- fclose (fp);
- ti->flags = SLTERMINFO;
- return ti;
- }
- SLfree ((char *)ti->string_offsets);
- }
- SLfree ((char *)ti->numbers);
- }
- SLfree ((char *)ti->boolean_flags);
- }
- SLfree ((char *)ti->terminal_names);
- }
- fclose (fp);
- }
-
- SLfree ((char *)ti);
- return NULL;
-}
-
-#ifdef SLANG_UNTIC
-# define UNTIC_COMMENT(x) ,x
-#else
-# define UNTIC_COMMENT(x)
-#endif
-
-typedef struct
-{
- char name[3];
- int offset;
-#ifdef SLANG_UNTIC
- char *comment;
-#endif
-}
-Tgetstr_Map_Type;
-
-/* I need to add: K1-5, %0-5(not important), @8, &8... */
-static Tgetstr_Map_Type Tgetstr_Map [] =
-{
- {"!1", 212 UNTIC_COMMENT("shifted key")},
- {"!2", 213 UNTIC_COMMENT("shifted key")},
- {"!3", 214 UNTIC_COMMENT("shifted key")},
- {"#1", 198 UNTIC_COMMENT("shifted key")},
- {"#2", 199 UNTIC_COMMENT("Key S-Home")},
- {"#3", 200 UNTIC_COMMENT("Key S-Insert")},
- {"#4", 201 UNTIC_COMMENT("Key S-Left")},
- {"%0", 177 UNTIC_COMMENT("redo key")},
- {"%1", 168 UNTIC_COMMENT("help key")},
- {"%2", 169 UNTIC_COMMENT("mark key")},
- {"%3", 170 UNTIC_COMMENT("message key")},
- {"%4", 171 UNTIC_COMMENT("move key")},
- {"%5", 172 UNTIC_COMMENT("next key")},
- {"%6", 173 UNTIC_COMMENT("open key")},
- {"%7", 174 UNTIC_COMMENT("options key")},
- {"%8", 175 UNTIC_COMMENT("previous key")},
- {"%9", 176 UNTIC_COMMENT("print key")},
- {"%a", 202 UNTIC_COMMENT("shifted key")},
- {"%b", 203 UNTIC_COMMENT("shifted key")},
- {"%c", 204 UNTIC_COMMENT("Key S-Next")},
- {"%d", 205 UNTIC_COMMENT("shifted key")},
- {"%e", 206 UNTIC_COMMENT("Key S-Previous")},
- {"%f", 207 UNTIC_COMMENT("shifted key")},
- {"%g", 208 UNTIC_COMMENT("shifted key")},
- {"%h", 209 UNTIC_COMMENT("shifted key")},
- {"%i", 210 UNTIC_COMMENT("Key S-Right")},
- {"%j", 211 UNTIC_COMMENT("shifted key")},
- {"&0", 187 UNTIC_COMMENT("shifted key")},
- {"&1", 178 UNTIC_COMMENT("reference key")},
- {"&2", 179 UNTIC_COMMENT("refresh key")},
- {"&3", 180 UNTIC_COMMENT("replace key")},
- {"&4", 181 UNTIC_COMMENT("restart key")},
- {"&5", 182 UNTIC_COMMENT("resume key")},
- {"&6", 183 UNTIC_COMMENT("save key")},
- {"&7", 184 UNTIC_COMMENT("suspend key")},
- {"&8", 185 UNTIC_COMMENT("undo key")},
- {"&9", 186 UNTIC_COMMENT("shifted key")},
- {"*0", 197 UNTIC_COMMENT("shifted key")},
- {"*1", 188 UNTIC_COMMENT("shifted key")},
- {"*2", 189 UNTIC_COMMENT("shifted key")},
- {"*3", 190 UNTIC_COMMENT("shifted key")},
- {"*4", 191 UNTIC_COMMENT("Key S-Delete")},
- {"*5", 192 UNTIC_COMMENT("shifted key")},
- {"*6", 193 UNTIC_COMMENT("select key")},
- {"*7", 194 UNTIC_COMMENT("Key S-End")},
- {"*8", 195 UNTIC_COMMENT("shifted key")},
- {"*9", 196 UNTIC_COMMENT("shifted key")},
- {"@0", 167 UNTIC_COMMENT("find key")},
- {"@1", 158 UNTIC_COMMENT("begin key")},
- {"@2", 159 UNTIC_COMMENT("cancel key")},
- {"@3", 160 UNTIC_COMMENT("close key")},
- {"@4", 161 UNTIC_COMMENT("command key")},
- {"@5", 162 UNTIC_COMMENT("copy key")},
- {"@6", 163 UNTIC_COMMENT("create key")},
- {"@7", 164 UNTIC_COMMENT("Key End")},
- {"@8", 165 UNTIC_COMMENT("enter/send key")},
- {"@9", 166 UNTIC_COMMENT("exit key")},
- {"AB", 360 UNTIC_COMMENT("set ANSI color background")},
- {"AF", 359 UNTIC_COMMENT("set ANSI color foreground")},
- {"AL", 110 UNTIC_COMMENT("parm_insert_line")},
- {"CC", 9 UNTIC_COMMENT("terminal settable cmd character in prototype !?")},
- {"CM", 15 UNTIC_COMMENT("memory relative cursor addressing")},
- {"CW", 277 UNTIC_COMMENT("define a window #1 from #2, #3 to #4, #5")},
- {"DC", 105 UNTIC_COMMENT("delete #1 chars")},
- {"DI", 280 UNTIC_COMMENT("dial number #1")},
- {"DK", 275 UNTIC_COMMENT("display clock at (#1,#2)")},
- {"DL", 106 UNTIC_COMMENT("parm_delete_line")},
- {"DO", 107 UNTIC_COMMENT("down #1 lines")},
- {"F1", 216 UNTIC_COMMENT("key_f11")},
- {"F2", 217 UNTIC_COMMENT("key_f12")},
- {"F3", 218 UNTIC_COMMENT("key_f13")},
- {"F4", 219 UNTIC_COMMENT("key_f14")},
- {"F5", 220 UNTIC_COMMENT("key_f15")},
- {"F6", 221 UNTIC_COMMENT("key_f16")},
- {"F7", 222 UNTIC_COMMENT("key_f17")},
- {"F8", 223 UNTIC_COMMENT("key_f18")},
- {"F9", 224 UNTIC_COMMENT("key_f19")},
- {"FA", 225 UNTIC_COMMENT("key_f20")},
- {"FB", 226 UNTIC_COMMENT("F21 function key")},
- {"FC", 227 UNTIC_COMMENT("F22 function key")},
- {"FD", 228 UNTIC_COMMENT("F23 function key")},
- {"FE", 229 UNTIC_COMMENT("F24 function key")},
- {"FF", 230 UNTIC_COMMENT("F25 function key")},
- {"FG", 231 UNTIC_COMMENT("F26 function key")},
- {"FH", 232 UNTIC_COMMENT("F27 function key")},
- {"FI", 233 UNTIC_COMMENT("F28 function key")},
- {"FJ", 234 UNTIC_COMMENT("F29 function key")},
- {"FK", 235 UNTIC_COMMENT("F30 function key")},
- {"FL", 236 UNTIC_COMMENT("F31 function key")},
- {"FM", 237 UNTIC_COMMENT("F32 function key")},
- {"FN", 238 UNTIC_COMMENT("F33 function key")},
- {"FO", 239 UNTIC_COMMENT("F34 function key")},
- {"FP", 240 UNTIC_COMMENT("F35 function key")},
- {"FQ", 241 UNTIC_COMMENT("F36 function key")},
- {"FR", 242 UNTIC_COMMENT("F37 function key")},
- {"FS", 243 UNTIC_COMMENT("F38 function key")},
- {"FT", 244 UNTIC_COMMENT("F39 function key")},
- {"FU", 245 UNTIC_COMMENT("F40 function key")},
- {"FV", 246 UNTIC_COMMENT("F41 function key")},
- {"FW", 247 UNTIC_COMMENT("F42 function key")},
- {"FX", 248 UNTIC_COMMENT("F43 function key")},
- {"FY", 249 UNTIC_COMMENT("F44 function key")},
- {"FZ", 250 UNTIC_COMMENT("F45 function key")},
- {"Fa", 251 UNTIC_COMMENT("F46 function key")},
- {"Fb", 252 UNTIC_COMMENT("F47 function key")},
- {"Fc", 253 UNTIC_COMMENT("F48 function key")},
- {"Fd", 254 UNTIC_COMMENT("F49 function key")},
- {"Fe", 255 UNTIC_COMMENT("F50 function key")},
- {"Ff", 256 UNTIC_COMMENT("F51 function key")},
- {"Fg", 257 UNTIC_COMMENT("F52 function key")},
- {"Fh", 258 UNTIC_COMMENT("F53 function key")},
- {"Fi", 259 UNTIC_COMMENT("F54 function key")},
- {"Fj", 260 UNTIC_COMMENT("F55 function key")},
- {"Fk", 261 UNTIC_COMMENT("F56 function key")},
- {"Fl", 262 UNTIC_COMMENT("F57 function key")},
- {"Fm", 263 UNTIC_COMMENT("F58 function key")},
- {"Fn", 264 UNTIC_COMMENT("F59 function key")},
- {"Fo", 265 UNTIC_COMMENT("F60 function key")},
- {"Fp", 266 UNTIC_COMMENT("F61 function key")},
- {"Fq", 267 UNTIC_COMMENT("F62 function key")},
- {"Fr", 268 UNTIC_COMMENT("F63 function key")},
- {"G1", 400 UNTIC_COMMENT("single upper right")},
- {"G2", 398 UNTIC_COMMENT("single upper left")},
- {"G3", 399 UNTIC_COMMENT("single lower left")},
- {"G4", 401 UNTIC_COMMENT("single lower right")},
- {"GC", 408 UNTIC_COMMENT("single intersection")},
- {"GD", 405 UNTIC_COMMENT("tee pointing down")},
- {"GH", 406 UNTIC_COMMENT("single horizontal line")},
- {"GL", 403 UNTIC_COMMENT("tee pointing left")},
- {"GR", 402 UNTIC_COMMENT("tee pointing right")},
- {"GU", 404 UNTIC_COMMENT("tee pointing up")},
- {"GV", 407 UNTIC_COMMENT("single vertical line")},
- {"Gm", 358 UNTIC_COMMENT("Curses should get button events")},
- {"HU", 279 UNTIC_COMMENT("hang-up phone")},
- {"IC", 108 UNTIC_COMMENT("insert #1 chars")},
- {"Ic", 299 UNTIC_COMMENT("initialize color #1 to (#2,#3,#4)")},
- {"Ip", 300 UNTIC_COMMENT("Initialize color pair #1 to fg=(#2,#3,#4), bg=(#5,#6,#7)")},
- {"K1", 139 UNTIC_COMMENT("upper left of keypad")},
- {"K2", 141 UNTIC_COMMENT("center of keypad")},
- {"K3", 140 UNTIC_COMMENT("upper right of keypad")},
- {"K4", 142 UNTIC_COMMENT("lower left of keypad")},
- {"K5", 143 UNTIC_COMMENT("lower right of keypad")},
- {"Km", 355 UNTIC_COMMENT("Mouse event has occurred")},
- {"LE", 111 UNTIC_COMMENT("move #1 chars to the left")},
- {"LF", 157 UNTIC_COMMENT("turn off soft labels")},
- {"LO", 156 UNTIC_COMMENT("turn on soft labels")},
- {"Lf", 273 UNTIC_COMMENT("label format")},
- {"MC", 270 UNTIC_COMMENT("clear right and left soft margins")},
- {"ML", 271 UNTIC_COMMENT("set left soft margin")},
- {"ML", 368 UNTIC_COMMENT("Set both left and right margins to #1, #2")},
- {"MR", 272 UNTIC_COMMENT("set right soft margin")},
- {"MT", 369 UNTIC_COMMENT("Sets both top and bottom margins to #1, #2")},
- {"Mi", 356 UNTIC_COMMENT("Mouse status information")},
- {"PA", 285 UNTIC_COMMENT("pause for 2-3 seconds")},
- {"PU", 283 UNTIC_COMMENT("select pulse dialling")},
- {"QD", 281 UNTIC_COMMENT("dial number #1 without checking")},
- {"RA", 152 UNTIC_COMMENT("turn off automatic margins")},
- {"RC", 276 UNTIC_COMMENT("remove clock")},
- {"RF", 215 UNTIC_COMMENT("send next input char (for ptys)")},
- {"RI", 112 UNTIC_COMMENT("parm_right_cursor")},
- {"RQ", 357 UNTIC_COMMENT("Request mouse position")},
- {"RX", 150 UNTIC_COMMENT("turn off xon/xoff handshaking")},
- {"S1", 378 UNTIC_COMMENT("Display PC character")},
- {"S2", 379 UNTIC_COMMENT("Enter PC character display mode")},
- {"S3", 380 UNTIC_COMMENT("Exit PC character display mode")},
- {"S4", 381 UNTIC_COMMENT("Enter PC scancode mode")},
- {"S5", 382 UNTIC_COMMENT("Exit PC scancode mode")},
- {"S6", 383 UNTIC_COMMENT("PC terminal options")},
- {"S7", 384 UNTIC_COMMENT("Escape for scancode emulation")},
- {"S8", 385 UNTIC_COMMENT("Alternate escape for scancode emulation")},
- {"SA", 151 UNTIC_COMMENT("turn on automatic margins")},
- {"SC", 274 UNTIC_COMMENT("set clock, #1 hrs #2 mins #3 secs")},
- {"SF", 109 UNTIC_COMMENT("scroll forward #1 lines")},
- {"SR", 113 UNTIC_COMMENT("scroll back #1 lines")},
- {"SX", 149 UNTIC_COMMENT("turn on xon/xoff handshaking")},
- {"Sb", 303 UNTIC_COMMENT("set background (color)")},
- {"Sf", 302 UNTIC_COMMENT("set foreground (color)")},
- {"TO", 282 UNTIC_COMMENT("select touch tone dialing")},
- {"UP", 114 UNTIC_COMMENT("up #1 lines")},
- {"WA", 286 UNTIC_COMMENT("wait for dial-tone")},
- {"WG", 278 UNTIC_COMMENT("go to window #1")},
- {"XF", 154 UNTIC_COMMENT("XOFF character")},
- {"XN", 153 UNTIC_COMMENT("XON character")},
- {"Xh", 386 UNTIC_COMMENT("Enter horizontal highlight mode")},
- {"Xl", 387 UNTIC_COMMENT("Enter left highlight mode")},
- {"Xo", 388 UNTIC_COMMENT("Enter low highlight mode")},
- {"Xr", 389 UNTIC_COMMENT("Enter right highlight mode")},
- {"Xt", 390 UNTIC_COMMENT("Enter top highlight mode")},
- {"Xv", 391 UNTIC_COMMENT("Enter vertical highlight mode")},
- {"Xy", 370 UNTIC_COMMENT("Repeat bit image cell #1 #2 times")},
- {"YZ", 377 UNTIC_COMMENT("Set page length to #1 lines")},
- {"Yv", 372 UNTIC_COMMENT("Move to beginning of same row")},
- {"Yw", 373 UNTIC_COMMENT("Give name for color #1")},
- {"Yx", 374 UNTIC_COMMENT("Define rectangualar bit image region")},
- {"Yy", 375 UNTIC_COMMENT("End a bit-image region")},
- {"Yz", 376 UNTIC_COMMENT("Change to ribbon color #1")},
- {"ZA", 304 UNTIC_COMMENT("Change number of characters per inch")},
- {"ZB", 305 UNTIC_COMMENT("Change number of lines per inch")},
- {"ZC", 306 UNTIC_COMMENT("Change horizontal resolution")},
- {"ZD", 307 UNTIC_COMMENT("Change vertical resolution")},
- {"ZE", 308 UNTIC_COMMENT("Define a character")},
- {"ZF", 309 UNTIC_COMMENT("Enter double-wide mode")},
- {"ZG", 310 UNTIC_COMMENT("Enter draft-quality mode")},
- {"ZH", 311 UNTIC_COMMENT("Enter italic mode")},
- {"ZI", 312 UNTIC_COMMENT("Start leftward carriage motion")},
- {"ZJ", 313 UNTIC_COMMENT("Start micro-motion mode")},
- {"ZK", 314 UNTIC_COMMENT("Enter NLQ mode")},
- {"ZL", 315 UNTIC_COMMENT("Wnter normal-quality mode")},
- {"ZM", 316 UNTIC_COMMENT("Enter shadow-print mode")},
- {"ZN", 317 UNTIC_COMMENT("Enter subscript mode")},
- {"ZO", 318 UNTIC_COMMENT("Enter superscript mode")},
- {"ZP", 319 UNTIC_COMMENT("Start upward carriage motion")},
- {"ZQ", 320 UNTIC_COMMENT("End double-wide mode")},
- {"ZR", 321 UNTIC_COMMENT("End italic mode")},
- {"ZS", 322 UNTIC_COMMENT("End left-motion mode")},
- {"ZT", 323 UNTIC_COMMENT("End micro-motion mode")},
- {"ZU", 324 UNTIC_COMMENT("End shadow-print mode")},
- {"ZV", 325 UNTIC_COMMENT("End subscript mode")},
- {"ZW", 326 UNTIC_COMMENT("End superscript mode")},
- {"ZX", 327 UNTIC_COMMENT("End reverse character motion")},
- {"ZY", 328 UNTIC_COMMENT("Like column_address in micro mode")},
- {"ZZ", 329 UNTIC_COMMENT("Like cursor_down in micro mode")},
- {"Za", 330 UNTIC_COMMENT("Like cursor_left in micro mode")},
- {"Zb", 331 UNTIC_COMMENT("Like cursor_right in micro mode")},
- {"Zc", 332 UNTIC_COMMENT("Like row_address in micro mode")},
- {"Zd", 333 UNTIC_COMMENT("Like cursor_up in micro mode")},
- {"Ze", 334 UNTIC_COMMENT("Match software bits to print-head pins")},
- {"Zf", 335 UNTIC_COMMENT("Like parm_down_cursor in micro mode")},
- {"Zg", 336 UNTIC_COMMENT("Like parm_left_cursor in micro mode")},
- {"Zh", 337 UNTIC_COMMENT("Like parm_right_cursor in micro mode")},
- {"Zi", 338 UNTIC_COMMENT("Like parm_up_cursor in micro mode")},
- {"Zj", 339 UNTIC_COMMENT("Select character set")},
- {"Zk", 340 UNTIC_COMMENT("Set bottom margin at current line")},
- {"Zl", 341 UNTIC_COMMENT("Set bottom margin at line #1 or #2 lines from bottom")},
- {"Zm", 342 UNTIC_COMMENT("Set left (right) margin at column #1 (#2)")},
- {"Zn", 343 UNTIC_COMMENT("Set right margin at column #1")},
- {"Zo", 344 UNTIC_COMMENT("Set top margin at current line")},
- {"Zp", 345 UNTIC_COMMENT("Set top (bottom) margin at row #1 (#2)")},
- {"Zq", 346 UNTIC_COMMENT("Start printing bit image braphics")},
- {"Zr", 347 UNTIC_COMMENT("Start character set definition")},
- {"Zs", 348 UNTIC_COMMENT("Stop printing bit image graphics")},
- {"Zt", 349 UNTIC_COMMENT("End definition of character aet")},
- {"Zu", 350 UNTIC_COMMENT("List of subscriptable characters")},
- {"Zv", 351 UNTIC_COMMENT("List of superscriptable characters")},
- {"Zw", 352 UNTIC_COMMENT("Printing any of these chars causes CR")},
- {"Zx", 353 UNTIC_COMMENT("No motion for subsequent character")},
- {"Zy", 354 UNTIC_COMMENT("List of character set names")},
- {"Zz", 371 UNTIC_COMMENT("Move to next row of the bit image")},
- {"ac", 146 UNTIC_COMMENT("acs_chars")},
- {"ae", 38 UNTIC_COMMENT("exit_alt_charset_mode")},
- {"al", 53 UNTIC_COMMENT("insert line")},
- {"as", 25 UNTIC_COMMENT("enter_alt_charset_mode")},
- {"bc", 395 UNTIC_COMMENT("move left, if not ^H")},
- {"bl", 1 UNTIC_COMMENT("audible signal (bell)")},
- {"bt", 0 UNTIC_COMMENT("back tab")},
- {"bx", 411 UNTIC_COMMENT("box chars primary set")},
- {"cb", 269 UNTIC_COMMENT("Clear to beginning of line")},
- {"cd", 7 UNTIC_COMMENT("clear to end of screen")},
- {"ce", 6 UNTIC_COMMENT("clr_eol")},
- {"ch", 8 UNTIC_COMMENT("horizontal position #1, absolute")},
- {"ci", 363 UNTIC_COMMENT("Init sequence for multiple codesets")},
- {"cl", 5 UNTIC_COMMENT("clear screen and home cursor")},
- {"cm", 10 UNTIC_COMMENT("move to row #1 columns #2")},
- {"cr", 2 UNTIC_COMMENT("carriage return")},
- {"cs", 3 UNTIC_COMMENT("change region to line #1 to line #2")},
- {"ct", 4 UNTIC_COMMENT("clear all tab stops")},
- {"cv", 127 UNTIC_COMMENT("vertical position #1 absolute")},
- {"dc", 21 UNTIC_COMMENT("delete character")},
- {"dl", 22 UNTIC_COMMENT("delete line")},
- {"dm", 29 UNTIC_COMMENT("enter delete mode")},
- {"do", 11 UNTIC_COMMENT("down one line")},
- {"ds", 23 UNTIC_COMMENT("disable status line")},
- {"dv", 362 UNTIC_COMMENT("Indicate language/codeset support")},
- {"eA", 155 UNTIC_COMMENT("enable alternate char set")},
- {"ec", 37 UNTIC_COMMENT("erase #1 characters")},
- {"ed", 41 UNTIC_COMMENT("end delete mode")},
- {"ei", 42 UNTIC_COMMENT("exit insert mode")},
- {"ff", 46 UNTIC_COMMENT("hardcopy terminal page eject")},
- {"fh", 284 UNTIC_COMMENT("flash switch hook")},
- {"fs", 47 UNTIC_COMMENT("return from status line")},
- {"hd", 24 UNTIC_COMMENT("half a line down")},
- {"ho", 12 UNTIC_COMMENT("home cursor (if no cup)")},
- {"hu", 137 UNTIC_COMMENT("half a line up")},
- {"i1", 48 UNTIC_COMMENT("initialization string")},
- {"i2", 392 UNTIC_COMMENT("secondary initialization string")},
- {"i3", 50 UNTIC_COMMENT("initialization string")},
- {"iP", 138 UNTIC_COMMENT("path name of program for initialization")},
- {"ic", 52 UNTIC_COMMENT("insert character")},
- {"if", 51 UNTIC_COMMENT("name of initialization file")},
- {"im", 31 UNTIC_COMMENT("enter insert mode")},
- {"ip", 54 UNTIC_COMMENT("insert padding after inserted character")},
- {"is", 49 UNTIC_COMMENT("initialization string")},
- {"k0", 65 UNTIC_COMMENT("F0 function key")},
- {"k1", 66 UNTIC_COMMENT("F1 function key")},
- {"k2", 68 UNTIC_COMMENT("F2 function key")},
- {"k3", 69 UNTIC_COMMENT("F3 function key")},
- {"k4", 70 UNTIC_COMMENT("F4 function key")},
- {"k5", 71 UNTIC_COMMENT("F5 function key")},
- {"k6", 72 UNTIC_COMMENT("F6 function key")},
- {"k7", 73 UNTIC_COMMENT("F7 function key")},
- {"k8", 74 UNTIC_COMMENT("F8 fucntion key")},
- {"k9", 75 UNTIC_COMMENT("F9 function key")},
- {"k;", 67 UNTIC_COMMENT("F10 function key")},
- {"kA", 78 UNTIC_COMMENT("insert-line key")},
- {"kB", 148 UNTIC_COMMENT("back-tab key")},
- {"kC", 57 UNTIC_COMMENT("clear-screen or erase key")},
- {"kD", 59 UNTIC_COMMENT("delete-character key")},
- {"kE", 63 UNTIC_COMMENT("clear-to-end-of-line key")},
- {"kF", 84 UNTIC_COMMENT("scroll-forward key")},
- {"kH", 80 UNTIC_COMMENT("last-line key")},
- {"kI", 77 UNTIC_COMMENT("insert-character key")},
- {"kL", 60 UNTIC_COMMENT("delete-line key")},
- {"kM", 62 UNTIC_COMMENT("sent by rmir or smir in insert mode")},
- {"kN", 81 UNTIC_COMMENT("next-page key")},
- {"kP", 82 UNTIC_COMMENT("prev-page key")},
- {"kR", 85 UNTIC_COMMENT("scroll-backward key")},
- {"kS", 64 UNTIC_COMMENT("clear-to-end-of-screen key")},
- {"kT", 86 UNTIC_COMMENT("set-tab key")},
- {"ka", 56 UNTIC_COMMENT("clear-all-tabs key")},
- {"kb", 55 UNTIC_COMMENT("backspace key")},
- {"kd", 61 UNTIC_COMMENT("down-arrow key")},
- {"ke", 88 UNTIC_COMMENT("leave 'keyboard_transmit' mode")},
- {"kh", 76 UNTIC_COMMENT("home key")},
- {"kl", 79 UNTIC_COMMENT("left-arrow key")},
- {"ko", 396 UNTIC_COMMENT("list of self-mapped keycaps")},
- {"kr", 83 UNTIC_COMMENT("right-arrow key")},
- {"ks", 89 UNTIC_COMMENT("enter 'keyboard_transmit' mode")},
- {"kt", 58 UNTIC_COMMENT("clear-tab key")},
- {"ku", 87 UNTIC_COMMENT("up-arrow key")},
- {"l0", 90 UNTIC_COMMENT("label on function key f0 if not f0")},
- {"l1", 91 UNTIC_COMMENT("label on function key f1 if not f1")},
- {"l2", 93 UNTIC_COMMENT("label on function key f2 if not f2")},
- {"l3", 94 UNTIC_COMMENT("label on function key f3 if not f3")},
- {"l4", 95 UNTIC_COMMENT("label on function key f4 if not f4")},
- {"l5", 96 UNTIC_COMMENT("lable on function key f5 if not f5")},
- {"l6", 97 UNTIC_COMMENT("label on function key f6 if not f6")},
- {"l7", 98 UNTIC_COMMENT("label on function key f7 if not f7")},
- {"l8", 99 UNTIC_COMMENT("label on function key f8 if not f8")},
- {"l9", 100 UNTIC_COMMENT("label on function key f9 if not f9")},
- {"la", 92 UNTIC_COMMENT("label on function key f10 if not f10")},
- {"le", 14 UNTIC_COMMENT("move left one space")},
- {"ll", 18 UNTIC_COMMENT("last line, first column (if no cup)")},
- {"ma", 397 UNTIC_COMMENT("map arrow keys rogue(1) motion keys")},
- {"mb", 26 UNTIC_COMMENT("turn on blinking")},
- {"md", 27 UNTIC_COMMENT("turn on bold (extra bright) mode")},
- {"me", 39 UNTIC_COMMENT("turn off all attributes")},
- {"mh", 30 UNTIC_COMMENT("turn on half-bright mode")},
- {"mk", 32 UNTIC_COMMENT("turn on blank mode (characters invisible)")},
- {"ml", 409 UNTIC_COMMENT("memory lock above")},
- {"mm", 102 UNTIC_COMMENT("turn on meta mode (8th-bit on)")},
- {"mo", 101 UNTIC_COMMENT("turn off meta mode")},
- {"mp", 33 UNTIC_COMMENT("turn on protected mode")},
- {"mr", 34 UNTIC_COMMENT("turn on reverse video mode")},
- {"mu", 410 UNTIC_COMMENT("memory unlock")},
- {"nd", 17 UNTIC_COMMENT("move right one space")},
- {"nl", 394 UNTIC_COMMENT("use to move down")},
- {"nw", 103 UNTIC_COMMENT("newline (behave like cr followed by lf)")},
- {"oc", 298 UNTIC_COMMENT("Set all color pairs to the original ones")},
- {"op", 297 UNTIC_COMMENT("Set default pair to its original value")},
- {"pO", 144 UNTIC_COMMENT("turn on printer for #1 bytes")},
- {"pc", 104 UNTIC_COMMENT("padding char (instead of null)")},
- {"pf", 119 UNTIC_COMMENT("turn off printer")},
- {"pk", 115 UNTIC_COMMENT("program function key #1 to type string #2")},
- {"pl", 116 UNTIC_COMMENT("program function key #1 to execute string #2")},
- {"pn", 147 UNTIC_COMMENT("program label #1 to show string #2")},
- {"po", 120 UNTIC_COMMENT("turn on printer")},
- {"ps", 118 UNTIC_COMMENT("print contents of screen")},
- {"px", 117 UNTIC_COMMENT("program function key #1 to transmit string #2")},
- {"r1", 122 UNTIC_COMMENT("reset string")},
- {"r2", 123 UNTIC_COMMENT("reset string")},
- {"r3", 124 UNTIC_COMMENT("reset string")},
- {"rP", 145 UNTIC_COMMENT("like ip but when in insert mode")},
- {"rc", 126 UNTIC_COMMENT("restore cursor to last position of sc")},
- {"rf", 125 UNTIC_COMMENT("name of reset file")},
- {"rp", 121 UNTIC_COMMENT("repeat char #1 #2 times")},
- {"rs", 393 UNTIC_COMMENT("terminal reset string")},
- {"s0", 364 UNTIC_COMMENT("Shift to code set 0 (EUC set 0, ASCII)")},
- {"s1", 365 UNTIC_COMMENT("Shift to code set 1")},
- {"s2", 366 UNTIC_COMMENT("Shift to code set 2")},
- {"s3", 367 UNTIC_COMMENT("Shift to code set 3")},
- {"sa", 131 UNTIC_COMMENT("define video attributes #1-#9 (PG9)")},
- {"sc", 128 UNTIC_COMMENT("save current cursor position")},
- {"se", 43 UNTIC_COMMENT("exit standout mode")},
- {"sf", 129 UNTIC_COMMENT("scroll text up")},
- {"so", 35 UNTIC_COMMENT("begin standout mode")},
- {"sp", 301 UNTIC_COMMENT("Set current color pair to #1")},
- {"sr", 130 UNTIC_COMMENT("scroll text down")},
- {"st", 132 UNTIC_COMMENT("set a tab in every row, current columns")},
- {"ta", 134 UNTIC_COMMENT("tab to next 8-space hardware tab stop")},
- {"te", 40 UNTIC_COMMENT("strings to end programs using cup")},
- {"ti", 28 UNTIC_COMMENT("string to start programs using cup")},
- {"ts", 135 UNTIC_COMMENT("move to status line")},
- {"u0", 287 UNTIC_COMMENT("User string #0")},
- {"u1", 288 UNTIC_COMMENT("User string #1")},
- {"u2", 289 UNTIC_COMMENT("User string #2")},
- {"u3", 290 UNTIC_COMMENT("User string #3")},
- {"u4", 291 UNTIC_COMMENT("User string #4")},
- {"u5", 292 UNTIC_COMMENT("User string #5")},
- {"u6", 293 UNTIC_COMMENT("User string #6")},
- {"u7", 294 UNTIC_COMMENT("User string #7")},
- {"u8", 295 UNTIC_COMMENT("User string #8")},
- {"u9", 296 UNTIC_COMMENT("User string #9")},
- {"uc", 136 UNTIC_COMMENT("underline char and move past it")},
- {"ue", 44 UNTIC_COMMENT("exit underline mode")},
- {"up", 19 UNTIC_COMMENT("up one line")},
- {"us", 36 UNTIC_COMMENT("begin underline mode")},
- {"vb", 45 UNTIC_COMMENT("visible bell (may not move cursor)")},
- {"ve", 16 UNTIC_COMMENT("make cursor appear normal (undo civis/cvvis)")},
- {"vi", 13 UNTIC_COMMENT("make cursor invisible")},
- {"vs", 20 UNTIC_COMMENT("make cursor very visible")},
- {"wi", 133 UNTIC_COMMENT("current window is lines #1-#2 cols #3-#4")},
- {"xl", 361 UNTIC_COMMENT("Program function key #1 to type string #2 and show string #3")},
- {"", -1 UNTIC_COMMENT(NULL)}
-};
-
-static int compute_cap_offset (char *cap, SLterminfo_Type *t, Tgetstr_Map_Type *map, unsigned int max_ofs)
-{
- char cha, chb;
-
- (void) t;
- cha = *cap++; chb = *cap;
-
- while (*map->name != 0)
- {
- if ((cha == *map->name) && (chb == *(map->name + 1)))
- {
- if (map->offset >= (int) max_ofs) return -1;
- return map->offset;
- }
- map++;
- }
- return -1;
-}
-
-char *_SLtt_tigetstr (SLterminfo_Type *t, char *cap)
-{
- int offset;
-
- if (t == NULL)
- return NULL;
-
- if (t->flags == SLTERMCAP) return tcap_getstr (cap, t);
-
- offset = compute_cap_offset (cap, t, Tgetstr_Map, t->num_string_offsets);
- if (offset < 0) return NULL;
- offset = make_integer (t->string_offsets + 2 * offset);
- if (offset < 0) return NULL;
- return t->string_table + offset;
-}
-
-static Tgetstr_Map_Type Tgetnum_Map[] =
-{
- {"BT", 30 UNTIC_COMMENT("number of buttons on mouse")},
- {"Co", 13 UNTIC_COMMENT("maximum numbers of colors on screen")},
- {"MW", 12 UNTIC_COMMENT("maxumum number of defineable windows")},
- {"NC", 15 UNTIC_COMMENT("video attributes that can't be used with colors")},
- {"Nl", 8 UNTIC_COMMENT("number of labels on screen")},
- {"Ya", 16 UNTIC_COMMENT("numbers of bytes buffered before printing")},
- {"Yb", 17 UNTIC_COMMENT("spacing of pins vertically in pins per inch")},
- {"Yc", 18 UNTIC_COMMENT("spacing of dots horizontally in dots per inch")},
- {"Yd", 19 UNTIC_COMMENT("maximum value in micro_..._address")},
- {"Ye", 20 UNTIC_COMMENT("maximum value in parm_..._micro")},
- {"Yf", 21 UNTIC_COMMENT("character size when in micro mode")},
- {"Yg", 22 UNTIC_COMMENT("line size when in micro mode")},
- {"Yh", 23 UNTIC_COMMENT("numbers of pins in print-head")},
- {"Yi", 24 UNTIC_COMMENT("horizontal resolution in units per line")},
- {"Yj", 25 UNTIC_COMMENT("vertical resolution in units per line")},
- {"Yk", 26 UNTIC_COMMENT("horizontal resolution in units per inch")},
- {"Yl", 27 UNTIC_COMMENT("vertical resolution in units per inch")},
- {"Ym", 28 UNTIC_COMMENT("print rate in chars per second")},
- {"Yn", 29 UNTIC_COMMENT("character step size when in double wide mode")},
- {"Yo", 31 UNTIC_COMMENT("number of passed for each bit-image row")},
- {"Yp", 32 UNTIC_COMMENT("type of bit-image device")},
- {"co", 0 UNTIC_COMMENT("number of columns in aline")},
- {"dB", 36 UNTIC_COMMENT("padding required for ^H")},
- {"dC", 34 UNTIC_COMMENT("pad needed for CR")},
- {"dN", 35 UNTIC_COMMENT("pad needed for LF")},
- {"dT", 37 UNTIC_COMMENT("padding required for ^I")},
- {"it", 1 UNTIC_COMMENT("tabs initially every # spaces")},
- {"kn", 38 UNTIC_COMMENT("count of function keys")},
- {"lh", 9 UNTIC_COMMENT("rows in each label")},
- {"li", 2 UNTIC_COMMENT("number of lines on screen or page")},
- {"lm", 3 UNTIC_COMMENT("lines of memory if > line. 0 => varies")},
- {"lw", 10 UNTIC_COMMENT("columns in each label")},
- {"ma", 11 UNTIC_COMMENT("maximum combined attributes terminal can handle")},
- {"pa", 14 UNTIC_COMMENT("maximum number of color-pairs on the screen")},
- {"pb", 5 UNTIC_COMMENT("lowest baud rate where padding needed")},
- {"sg", 4 UNTIC_COMMENT("number of blank chars left by smso or rmso")},
- {"ug", 33 UNTIC_COMMENT("number of blanks left by ul")},
- {"vt", 6 UNTIC_COMMENT("virtual terminal number (CB/unix)")},
- {"ws", 7 UNTIC_COMMENT("columns in status line")},
- {"", -1 UNTIC_COMMENT(NULL)}
-};
-
-int _SLtt_tigetnum (SLterminfo_Type *t, char *cap)
-{
- int offset;
-
- if (t == NULL)
- return -1;
-
- if (t->flags == SLTERMCAP) return tcap_getnum (cap, t);
-
- offset = compute_cap_offset (cap, t, Tgetnum_Map, t->num_numbers);
- if (offset < 0) return -1;
- return make_integer (t->numbers + 2 * offset);
-}
-
-static Tgetstr_Map_Type Tgetflag_Map[] =
-{
- {"5i", 22 UNTIC_COMMENT("printer won't echo on screen")},
- {"HC", 23 UNTIC_COMMENT("cursor is hard to see")},
- {"MT", 40 UNTIC_COMMENT("has meta key")},
- {"ND", 26 UNTIC_COMMENT("scrolling region is non-destructive")},
- {"NL", 41 UNTIC_COMMENT("move down with \n")},
- {"NP", 25 UNTIC_COMMENT("pad character does not exist")},
- {"NR", 24 UNTIC_COMMENT("smcup does not reverse rmcup")},
- {"YA", 30 UNTIC_COMMENT("only positive motion for hpa/mhpa caps")},
- {"YB", 31 UNTIC_COMMENT("using cr turns off micro mode")},
- {"YC", 32 UNTIC_COMMENT("printer needs operator to change character set")},
- {"YD", 33 UNTIC_COMMENT("only positive motion for vpa/mvpa caps")},
- {"YE", 34 UNTIC_COMMENT("printing in last column causes cr")},
- {"YF", 35 UNTIC_COMMENT("changing character pitch changes resolution")},
- {"YG", 36 UNTIC_COMMENT("changing line pitch changes resolution")},
- {"am", 1 UNTIC_COMMENT("terminal has automatic margins")},
- {"bs", 37 UNTIC_COMMENT("uses ^H to move left")},
- {"bw", 0 UNTIC_COMMENT("cub1 wraps from column 0 to last column")},
- {"cc", 27 UNTIC_COMMENT("terminal can re-define existing colors")},
- {"da", 11 UNTIC_COMMENT("display may be retained above the screen")},
- {"db", 12 UNTIC_COMMENT("display may be retained below the screen")},
- {"eo", 5 UNTIC_COMMENT("can erase overstrikes with a blank")},
- {"es", 16 UNTIC_COMMENT("escape can be used on the status line")},
- {"gn", 6 UNTIC_COMMENT("generic line type")},
- {"hc", 7 UNTIC_COMMENT("hardcopy terminal")},
- {"hl", 29 UNTIC_COMMENT("terminal uses only HLS color notation (tektronix)")},
- {"hs", 9 UNTIC_COMMENT("has extra status line")},
- {"hz", 18 UNTIC_COMMENT("can't print ~'s (hazeltine)")},
- {"in", 10 UNTIC_COMMENT("insert mode distinguishes nulls")},
- {"km", 8 UNTIC_COMMENT("Has a meta key, sets msb high")},
- {"mi", 13 UNTIC_COMMENT("safe to move while in insert mode")},
- {"ms", 14 UNTIC_COMMENT("safe to move while in standout mode")},
- {"nc", 39 UNTIC_COMMENT("no way to go to start of line")},
- {"ns", 38 UNTIC_COMMENT("crt cannot scroll")},
- {"nx", 21 UNTIC_COMMENT("padding won't work, xon/xoff required")},
- {"os", 15 UNTIC_COMMENT("terminal can overstrike")},
- {"pt", 42 UNTIC_COMMENT("has 8-char tabs invoked with ^I")},
- {"ul", 19 UNTIC_COMMENT("underline character overstrikes")},
- {"ut", 28 UNTIC_COMMENT("screen erased with background color")},
- {"xb", 2 UNTIC_COMMENT("beehive (f1=escape, f2=ctrl C)")},
- {"xn", 4 UNTIC_COMMENT("newline ignored after 80 cols (concept)")},
- {"xo", 20 UNTIC_COMMENT("terminal uses xon/xoff handshaking")},
- {"xr", 43 UNTIC_COMMENT("return clears the line")},
- {"xs", 3 UNTIC_COMMENT("standout not erased by overwriting (hp)")},
- {"xt", 17 UNTIC_COMMENT("tabs destructive, magic so char (t1061)")},
- {"", -1 UNTIC_COMMENT(NULL)}
-};
-
-int _SLtt_tigetflag (SLterminfo_Type *t, char *cap)
-{
- int offset;
-
- if (t == NULL) return -1;
-
- if (t->flags == SLTERMCAP) return tcap_getflag (cap, t);
-
- offset = compute_cap_offset (cap, t, Tgetflag_Map, t->boolean_section_size);
-
- if (offset < 0) return -1;
- return (int) *(t->boolean_flags + offset);
-}
-
-/* These are my termcap routines. They only work with the TERMCAP environment
- * variable. This variable must contain the termcap entry and NOT the file.
- */
-
-static int tcap_getflag (char *cap, SLterminfo_Type *t)
-{
- char a, b;
- char *f = (char *) t->boolean_flags;
- char *fmax;
-
- if (f == NULL) return 0;
- fmax = f + t->boolean_section_size;
-
- a = *cap;
- b = *(cap + 1);
- while (f < fmax)
- {
- if ((a == f[0]) && (b == f[1]))
- return 1;
- f += 2;
- }
- return 0;
-}
-
-static char *tcap_get_cap (unsigned char *cap, unsigned char *caps, unsigned int len)
-{
- unsigned char c0, c1;
- unsigned char *caps_max;
-
- c0 = cap[0];
- c1 = cap[1];
-
- if (caps == NULL) return NULL;
- caps_max = caps + len;
- while (caps < caps_max)
- {
- if ((c0 == caps[0]) && (c1 == caps[1]))
- {
- return (char *) caps + 3;
- }
- caps += (int) caps[2];
- }
- return NULL;
-}
-
-static int tcap_getnum (char *cap, SLterminfo_Type *t)
-{
- cap = tcap_get_cap ((unsigned char *) cap, t->numbers, t->num_numbers);
- if (cap == NULL) return -1;
- return atoi (cap);
-}
-
-static char *tcap_getstr (char *cap, SLterminfo_Type *t)
-{
- return tcap_get_cap ((unsigned char *) cap, (unsigned char *) t->string_table, t->string_table_size);
-}
-
-static int tcap_extract_field (unsigned char *t0)
-{
- register unsigned char ch, *t = t0;
- while (((ch = *t) != 0) && (ch != ':')) t++;
- if (ch == ':') return (int) (t - t0);
- return -1;
-}
-
-int SLtt_Try_Termcap = 1;
-static int tcap_getent (char *term, SLterminfo_Type *ti)
-{
- unsigned char *termcap, ch;
- unsigned char *buf, *b;
- unsigned char *t;
- int len;
-
- if (SLtt_Try_Termcap == 0) return -1;
-#if 1
- /* XFREE86 xterm sets the TERMCAP environment variable to an invalid
- * value. Specifically, it lacks the tc= string.
- */
- if (!strncmp (term, "xterm", 5))
- return -1;
-#endif
- termcap = (unsigned char *) getenv ("TERMCAP");
- if ((termcap == NULL) || (*termcap == '/')) return -1;
-
- /* We have a termcap so lets use it provided it does not have a reference
- * to another terminal via tc=. In that case, use terminfo. The alternative
- * would be to parse the termcap file which I do not want to do right now.
- * Besides, this is a terminfo based system and if the termcap were parsed
- * terminfo would almost never get a chance to run. In addition, the tc=
- * thing should not occur if tset is used to set the termcap entry.
- */
- t = termcap;
- while ((len = tcap_extract_field (t)) != -1)
- {
- if ((len > 3) && (t[0] == 't') && (t[1] == 'c') && (t[2] == '='))
- return -1;
- t += (len + 1);
- }
-
- /* malloc some extra space just in case it is needed. */
- len = strlen ((char *) termcap) + 256;
- if (NULL == (buf = (unsigned char *) SLmalloc ((unsigned int) len))) return -1;
-
- b = buf;
-
- /* The beginning of the termcap entry contains the names of the entry.
- * It is terminated by a colon.
- */
-
- ti->terminal_names = (char *) b;
- t = termcap;
- len = tcap_extract_field (t);
- if (len < 0)
- {
- SLfree ((char *)buf);
- return -1;
- }
- strncpy ((char *) b, (char *) t, (unsigned int) len);
- b[len] = 0;
- b += len + 1;
- ti->name_section_size = len;
-
- /* Now, we are really at the start of the termcap entries. Point the
- * termcap variable here since we want to refer to this a number of times.
- */
- termcap = t + (len + 1);
-
- /* Process strings first. */
- ti->string_table = (char *) b;
- t = termcap;
- while (-1 != (len = tcap_extract_field (t)))
- {
- unsigned char *b1;
- unsigned char *tmax;
-
- /* We are looking for: XX=something */
- if ((len < 4) || (t[2] != '=') || (*t == '.'))
- {
- t += len + 1;
- continue;
- }
- tmax = t + len;
- b1 = b;
-
- while (t < tmax)
- {
- ch = *t++;
- if ((ch == '\\') && (t < tmax))
- {
- t = (unsigned char *) _SLexpand_escaped_char ((char *) t, (char *) &ch);
- }
- else if ((ch == '^') && (t < tmax))
- {
- ch = *t++;
- if (ch == '?') ch = 127;
- else ch = (ch | 0x20) - ('a' - 1);
- }
- *b++ = ch;
- }
- /* Null terminate it. */
- *b++ = 0;
- len = (int) (b - b1);
- b1[2] = (unsigned char) len; /* replace the = by the length */
- /* skip colon to next field. */
- t++;
- }
- ti->string_table_size = (int) (b - (unsigned char *) ti->string_table);
-
- /* Now process the numbers. */
-
- t = termcap;
- ti->numbers = b;
- while (-1 != (len = tcap_extract_field (t)))
- {
- unsigned char *b1;
- unsigned char *tmax;
-
- /* We are looking for: XX#NUMBER */
- if ((len < 4) || (t[2] != '#') || (*t == '.'))
- {
- t += len + 1;
- continue;
- }
- tmax = t + len;
- b1 = b;
-
- while (t < tmax)
- {
- *b++ = *t++;
- }
- /* Null terminate it. */
- *b++ = 0;
- len = (int) (b - b1);
- b1[2] = (unsigned char) len; /* replace the # by the length */
- t++;
- }
- ti->num_numbers = (int) (b - ti->numbers);
-
- /* Now process the flags. */
- t = termcap;
- ti->boolean_flags = b;
- while (-1 != (len = tcap_extract_field (t)))
- {
- /* We are looking for: XX#NUMBER */
- if ((len != 2) || (*t == '.') || (*t <= ' '))
- {
- t += len + 1;
- continue;
- }
- b[0] = t[0];
- b[1] = t[1];
- t += 3;
- b += 2;
- }
- ti->boolean_section_size = (int) (b - ti->boolean_flags);
- ti->flags = SLTERMCAP;
- return 0;
-}
-
-
-/* These routines are provided only for backward binary compatability.
- * They will vanish in V2.x
- */
-char *SLtt_tigetent (char *s)
-{
- return (char *) _SLtt_tigetent (s);
-}
-
-extern char *SLtt_tigetstr (char *s, char **p)
-{
- if (p == NULL)
- return NULL;
- return _SLtt_tigetstr ((SLterminfo_Type *) *p, s);
-}
-
-extern int SLtt_tigetnum (char *s, char **p)
-{
- if (p == NULL)
- return -1;
- return _SLtt_tigetnum ((SLterminfo_Type *) *p, s);
-}
-
-
diff --git a/mdk-stage1/slang/sltime.c b/mdk-stage1/slang/sltime.c
deleted file mode 100644
index 14fc6ec16..000000000
--- a/mdk-stage1/slang/sltime.c
+++ /dev/null
@@ -1,310 +0,0 @@
-/* time related system calls */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include <sys/types.h>
-#include <time.h>
-
-#if defined(__BORLANDC__)
-# include <dos.h>
-#endif
-#if defined(__GO32__) || defined(__WATCOMC__)
-# include <dos.h>
-# include <bios.h>
-#endif
-
-#include <errno.h>
-
-#include "slang.h"
-#include "_slang.h"
-
-#ifdef __WIN32__
-#include <windows.h>
-/* Sleep is defined badly in MSVC... */
-# ifdef _MSC_VER
-# define sleep(n) _sleep((n)*1000)
-# else
-# ifdef sleep
-# undef sleep
-# endif
-# define sleep(x) if(x)Sleep((x)*1000)
-# endif
-#endif
-
-
-#if defined(IBMPC_SYSTEM)
-/* For other system (Unix and VMS), _SLusleep is in sldisply.c */
-int _SLusleep (unsigned long s)
-{
- sleep (s/1000000L);
- s = s % 1000000L;
-
-# if defined(__WIN32__)
- Sleep (s/1000);
-#else
-# if defined(__IBMC__)
- DosSleep(s/1000);
-# else
-# if defined(_MSC_VER)
- _sleep (s/1000);
-# endif
-# endif
-#endif
- return 0;
-}
-#endif
-
-#if defined(__IBMC__) && !defined(_AIX)
-/* sleep is not a standard function in VA3. */
-unsigned int sleep (unsigned int seconds)
-{
- DosSleep(1000L * ((long)seconds));
- return 0;
-}
-#endif
-
-static char *ctime_cmd (unsigned long *tt)
-{
- char *t;
-
- t = ctime ((time_t *) tt);
- t[24] = 0; /* knock off \n */
- return (t);
-}
-
-static void sleep_cmd (void)
-{
- unsigned int secs;
-#if SLANG_HAS_FLOAT
- unsigned long usecs;
- double x;
-
- if (-1 == SLang_pop_double (&x, NULL, NULL))
- return;
-
- if (x < 0.0)
- x = 0.0;
- secs = (unsigned int) x;
- sleep (secs);
- x -= (double) secs;
- usecs = (unsigned long) (1e6 * x);
- if (usecs > 0) _SLusleep (usecs);
-#else
- if (-1 == SLang_pop_uinteger (&secs))
- return;
- if (secs != 0) sleep (secs);
-#endif
-}
-
-static unsigned long _time_cmd (void)
-{
- return (unsigned long) time (NULL);
-}
-
-#if defined(__GO32__)
-static char *djgpp_current_time (void) /*{{{*/
-{
- union REGS rg;
- unsigned int year;
- unsigned char month, day, weekday, hour, minute, sec;
- char days[] = "SunMonTueWedThuFriSat";
- char months[] = "JanFebMarAprMayJunJulAugSepOctNovDec";
- static char the_date[26];
-
- rg.h.ah = 0x2A;
-#ifndef __WATCOMC__
- int86(0x21, &rg, &rg);
- year = rg.x.cx & 0xFFFF;
-#else
- int386(0x21, &rg, &rg);
- year = rg.x.ecx & 0xFFFF;
-#endif
-
- month = 3 * (rg.h.dh - 1);
- day = rg.h.dl;
- weekday = 3 * rg.h.al;
-
- rg.h.ah = 0x2C;
-
-#ifndef __WATCOMC__
- int86(0x21, &rg, &rg);
-#else
- int386(0x21, &rg, &rg);
-#endif
-
- hour = rg.h.ch;
- minute = rg.h.cl;
- sec = rg.h.dh;
-
- /* we want this form: Thu Apr 14 15:43:39 1994\n */
- sprintf(the_date, "%.3s %.3s%3d %02d:%02d:%02d %d\n",
- days + weekday, months + month,
- day, hour, minute, sec, year);
- return the_date;
-}
-
-/*}}}*/
-
-#endif
-
-char *SLcurrent_time_string (void) /*{{{*/
-{
- char *the_time;
-#ifndef __GO32__
- time_t myclock;
-
- myclock = time((time_t *) 0);
- the_time = (char *) ctime(&myclock);
-#else
- the_time = djgpp_current_time ();
-#endif
- /* returns the form Sun Sep 16 01:03:52 1985\n\0 */
- the_time[24] = '\0';
- return(the_time);
-}
-
-/*}}}*/
-
-static int push_tm_struct (struct tm *tms)
-{
- char *field_names [9];
- unsigned char field_types[9];
- VOID_STAR field_values [9];
- int int_values [9];
- unsigned int i;
-
- if (tms == NULL)
- return SLang_push_null ();
-
- field_names [0] = "tm_sec"; int_values [0] = tms->tm_sec;
- field_names [1] = "tm_min"; int_values [1] = tms->tm_min;
- field_names [2] = "tm_hour"; int_values [2] = tms->tm_hour;
- field_names [3] = "tm_mday"; int_values [3] = tms->tm_mday;
- field_names [4] = "tm_mon"; int_values [4] = tms->tm_mon;
- field_names [5] = "tm_year"; int_values [5] = tms->tm_year;
- field_names [6] = "tm_wday"; int_values [6] = tms->tm_wday;
- field_names [7] = "tm_yday"; int_values [7] = tms->tm_yday;
- field_names [8] = "tm_isdst"; int_values [8] = tms->tm_isdst;
-
- for (i = 0; i < 9; i++)
- {
- field_types [i] = SLANG_INT_TYPE;
- field_values [i] = (VOID_STAR) (int_values + i);
- }
-
- return SLstruct_create_struct (9, field_names, field_types, field_values);
-}
-
-
-static void localtime_cmd (long *t)
-{
- time_t tt = (time_t) *t;
- (void) push_tm_struct (localtime (&tt));
-}
-
-static void gmtime_cmd (long *t)
-{
-#ifdef HAVE_GMTIME
- time_t tt = (time_t) *t;
- (void) push_tm_struct (gmtime (&tt));
-#else
- localtime_cmd (t);
-#endif
-}
-
-#ifdef HAVE_TIMES
-
-# ifdef HAVE_SYS_TIMES_H
-# include <sys/times.h>
-# endif
-
-#include <limits.h>
-
-#ifdef CLK_TCK
-# define SECS_PER_TICK (1.0/(double)CLK_TCK)
-#else
-# ifdef CLOCKS_PER_SEC
-# define SECS_PER_TICK (1.0/(double)CLOCKS_PER_SEC)
-# else
-# define SECS_PER_TICK (1.0/60.0)
-# endif
-#endif
-
-static void times_cmd (void)
-{
- double dvals[4];
- struct tms t;
- VOID_STAR field_values[4];
- char *field_names[4];
- unsigned int i;
- unsigned char field_types[4];
-
- (void) times (&t);
-
- field_names[0] = "tms_utime"; dvals[0] = (double)t.tms_utime;
- field_names[1] = "tms_stime"; dvals[1] = (double)t.tms_stime;
- field_names[2] = "tms_cutime"; dvals[2] = (double)t.tms_cutime;
- field_names[3] = "tms_cstime"; dvals[3] = (double)t.tms_cstime;
-
- for (i = 0; i < 4; i++)
- {
- dvals[i] *= SECS_PER_TICK;
- field_values[i] = (VOID_STAR) &dvals[i];
- field_types[i] = SLANG_DOUBLE_TYPE;
- }
- (void) SLstruct_create_struct (4, field_names, field_types, field_values);
-}
-
-static struct tms Tic_TMS;
-
-static void tic_cmd (void)
-{
- (void) times (&Tic_TMS);
-}
-
-static double toc_cmd (void)
-{
- struct tms t;
- double d;
-
- (void) times (&t);
- d = ((t.tms_utime - Tic_TMS.tms_utime)
- + (t.tms_stime - Tic_TMS.tms_stime)) * SECS_PER_TICK;
- Tic_TMS = t;
- return d;
-}
-
-#endif /* HAVE_TIMES */
-
-
-static SLang_Intrin_Fun_Type Time_Funs_Table [] =
-{
- MAKE_INTRINSIC_1("ctime", ctime_cmd, SLANG_STRING_TYPE, SLANG_ULONG_TYPE),
- MAKE_INTRINSIC_0("sleep", sleep_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("_time", _time_cmd, SLANG_ULONG_TYPE),
- MAKE_INTRINSIC_0("time", SLcurrent_time_string, SLANG_STRING_TYPE),
- MAKE_INTRINSIC_1("localtime", localtime_cmd, SLANG_VOID_TYPE, SLANG_LONG_TYPE),
- MAKE_INTRINSIC_1("gmtime", gmtime_cmd, SLANG_VOID_TYPE, SLANG_LONG_TYPE),
-
-#ifdef HAVE_TIMES
- MAKE_INTRINSIC_0("times", times_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("tic", tic_cmd, SLANG_VOID_TYPE),
- MAKE_INTRINSIC_0("toc", toc_cmd, SLANG_DOUBLE_TYPE),
-#endif
- SLANG_END_INTRIN_FUN_TABLE
-};
-
-int _SLang_init_sltime (void)
-{
-#ifdef HAVE_TIMES
- (void) tic_cmd ();
-#endif
- return SLadd_intrin_fun_table (Time_Funs_Table, NULL);
-}
-
diff --git a/mdk-stage1/slang/sltoken.c b/mdk-stage1/slang/sltoken.c
deleted file mode 100644
index c9852e68a..000000000
--- a/mdk-stage1/slang/sltoken.c
+++ /dev/null
@@ -1,1702 +0,0 @@
-/* Copyright (c) 1998, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-#include "slinclud.h"
-
-#include "slang.h"
-#include "_slang.h"
-
-#define MAX_TOKEN_LEN 254
-#define MAX_FILE_LINE_LEN 256
-
-static char Empty_Line[1] = {0};
-
-static int Default_Compile_Line_Num_Info;
-static char *Input_Line = Empty_Line;
-static char *Input_Line_Pointer;
-
-static SLPreprocess_Type *This_SLpp;
-
-static SLang_Load_Type *LLT;
-
-static char *map_token_to_string (_SLang_Token_Type *tok)
-{
- char *s;
- static char numbuf [32];
- unsigned char type;
- s = NULL;
-
- if (tok != NULL) type = tok->type;
- else type = 0;
-
- switch (type)
- {
- case 0:
- s = "??";
- break;
-
- case CHAR_TOKEN:
- case SHORT_TOKEN:
- case INT_TOKEN:
- case LONG_TOKEN:
- s = numbuf;
- sprintf (s, "%ld", tok->v.long_val);
- break;
-
- case UCHAR_TOKEN:
- case USHORT_TOKEN:
- case UINT_TOKEN:
- case ULONG_TOKEN:
- s = numbuf;
- sprintf (s, "%lu", (unsigned long)tok->v.long_val);
- break;
-
- case OBRACKET_TOKEN: s = "["; break;
- case CBRACKET_TOKEN: s = "]"; break;
- case OPAREN_TOKEN: s = "("; break;
- case CPAREN_TOKEN: s = ")"; break;
- case OBRACE_TOKEN: s = "{"; break;
- case CBRACE_TOKEN: s = "}"; break;
- case DEREF_TOKEN: s = "@"; break;
- case POUND_TOKEN: s = "#"; break;
- case COMMA_TOKEN: s = ","; break;
- case SEMICOLON_TOKEN: s = ";"; break;
- case COLON_TOKEN: s = ":"; break;
-
-#if SLANG_HAS_FLOAT
- case FLOAT_TOKEN:
- case DOUBLE_TOKEN:
- case COMPLEX_TOKEN:
-#endif
- case IDENT_TOKEN:
- if ((tok->free_sval_flag == 0) || (tok->num_refs == 0))
- break;
- /* drop */
- default:
- s = tok->v.s_val;
- break;
- }
-
- if (s == NULL)
- {
- s = numbuf;
- sprintf (s, "(0x%02X)", type);
- }
-
- return s;
-}
-
-static char *make_line_file_error (char *buf, unsigned int buflen,
- _SLang_Token_Type *tok, char *dsc, int line, char *file)
-{
-#if _SLANG_HAS_DEBUG_CODE
- if (tok != NULL) line = tok->line_number;
-#endif
- if (file == NULL) file = "??";
-
- (void) _SLsnprintf (buf, buflen, "%s: found '%s', line %d, file: %s",
- dsc, map_token_to_string (tok), line, file);
-
- return buf;
-}
-
-void _SLparse_error(char *str, _SLang_Token_Type *tok, int flag)
-{
- char buf [1024];
-
- if (str == NULL)
- str = "Parse Error";
-
- make_line_file_error (buf, sizeof (buf), tok, str, LLT->line_num, (char *) LLT->name);
-
- if ((flag == 0) && SLang_Error)
- return;
-
- SLang_verror (SL_SYNTAX_ERROR, "%s", buf);
-}
-
-static void do_line_file_error (int line, char *file)
-{
- SLang_verror (SL_SYNTAX_ERROR,
- "called from line %d, file: %s", line, file);
-}
-
-#define ALPHA_CHAR 1
-#define DIGIT_CHAR 2
-#define EXCL_CHAR 3
-#define SEP_CHAR 4
-#define OP_CHAR 5
-#define DOT_CHAR 6
-#define BOLDOT_CHAR 7
-#define DQUOTE_CHAR 8
-#define QUOTE_CHAR 9
-#define COMMENT_CHAR 10
-#define NL_CHAR 11
-#define BAD_CHAR 12
-#define WHITE_CHAR 13
-
-#define CHAR_EOF 255
-
-#define CHAR_CLASS(c) (Char_Type_Table[(c)][0])
-#define CHAR_DATA(c) (Char_Type_Table[(c)][1])
-
-/* In this table, if a single character can represent an operator, e.g.,
- * '&' (BAND_TOKEN), then it must be placed before multiple-character
- * operators that begin with the same character, e.g., "&=". See
- * get_op_token to see how this is exploited.
- *
- * The third character null terminates the operator string. This is for
- * the token structure.
- */
-static char Operators [29][4] =
-{
-#define OFS_EXCL 0
- {'!', '=', 0, NE_TOKEN},
-#define OFS_POUND 1
- {'#', 0, 0, POUND_TOKEN},
-#define OFS_BAND 2
- {'&', 0, 0, BAND_TOKEN},
- {'&', '&', 0, EOF_TOKEN},
- {'&', '=', 0, BANDEQS_TOKEN},
-#define OFS_STAR 5
- {'*', 0, 0, TIMES_TOKEN},
- {'*', '=', 0, TIMESEQS_TOKEN},
-#define OFS_PLUS 7
- {'+', 0, 0, ADD_TOKEN},
- {'+', '+', 0, PLUSPLUS_TOKEN},
- {'+', '=', 0, PLUSEQS_TOKEN},
-#define OFS_MINUS 10
- {'-', 0, 0, SUB_TOKEN},
- {'-', '-', 0, MINUSMINUS_TOKEN},
- {'-', '=', 0, MINUSEQS_TOKEN},
- {'-', '>', 0, NAMESPACE_TOKEN},
-#define OFS_DIV 14
- {'/', 0, 0, DIV_TOKEN},
- {'/', '=', 0, DIVEQS_TOKEN},
-#define OFS_LT 16
- {'<', 0, 0, LT_TOKEN},
- {'<', '=', 0, LE_TOKEN},
-#define OFS_EQS 18
- {'=', 0, 0, ASSIGN_TOKEN},
- {'=', '=', 0, EQ_TOKEN},
-#define OFS_GT 20
- {'>', 0, 0, GT_TOKEN},
- {'>', '=', 0, GE_TOKEN},
-#define OFS_AT 22
- {'@', 0, 0, DEREF_TOKEN},
-#define OFS_POW 23
- {'^', 0, 0, POW_TOKEN},
-#define OFS_BOR 24
- {'|', 0, 0, BOR_TOKEN},
- {'|', '|', 0, EOF_TOKEN},
- {'|', '=', 0, BOREQS_TOKEN},
-#define OFS_BNOT 27
- {'~', 0, 0, BNOT_TOKEN},
- { 0, 0, 0, EOF_TOKEN}
-};
-
-static unsigned char Char_Type_Table[256][2] =
-{
- { NL_CHAR, 0 }, /* 0x0 */ { BAD_CHAR, 0 }, /* 0x1 */
- { BAD_CHAR, 0 }, /* 0x2 */ { BAD_CHAR, 0 }, /* 0x3 */
- { BAD_CHAR, 0 }, /* 0x4 */ { BAD_CHAR, 0 }, /* 0x5 */
- { BAD_CHAR, 0 }, /* 0x6 */ { BAD_CHAR, 0 }, /* 0x7 */
- { WHITE_CHAR, 0 }, /* 0x8 */ { WHITE_CHAR, 0 }, /* 0x9 */
- { NL_CHAR, 0 }, /* \n */ { WHITE_CHAR, 0 }, /* 0xb */
- { WHITE_CHAR, 0 }, /* 0xc */ { WHITE_CHAR, 0 }, /* \r */
- { BAD_CHAR, 0 }, /* 0xe */ { BAD_CHAR, 0 }, /* 0xf */
- { BAD_CHAR, 0 }, /* 0x10 */ { BAD_CHAR, 0 }, /* 0x11 */
- { BAD_CHAR, 0 }, /* 0x12 */ { BAD_CHAR, 0 }, /* 0x13 */
- { BAD_CHAR, 0 }, /* 0x14 */ { BAD_CHAR, 0 }, /* 0x15 */
- { BAD_CHAR, 0 }, /* 0x16 */ { BAD_CHAR, 0 }, /* 0x17 */
- { BAD_CHAR, 0 }, /* 0x18 */ { BAD_CHAR, 0 }, /* 0x19 */
- { BAD_CHAR, 0 }, /* 0x1a */ { BAD_CHAR, 0 }, /* 0x1b */
- { BAD_CHAR, 0 }, /* 0x1c */ { BAD_CHAR, 0 }, /* 0x1d */
- { BAD_CHAR, 0 }, /* 0x1e */ { BAD_CHAR, 0 }, /* 0x1f */
- { WHITE_CHAR, 0 }, /* 0x20 */ { EXCL_CHAR, OFS_EXCL }, /* ! */
- { DQUOTE_CHAR, 0 }, /* " */ { OP_CHAR, OFS_POUND }, /* # */
- { ALPHA_CHAR, 0 }, /* $ */ { NL_CHAR, 0 },/* % */
- { OP_CHAR, OFS_BAND }, /* & */ { QUOTE_CHAR, 0 }, /* ' */
- { SEP_CHAR, OPAREN_TOKEN }, /* ( */ { SEP_CHAR, CPAREN_TOKEN }, /* ) */
- { OP_CHAR, OFS_STAR }, /* * */ { OP_CHAR, OFS_PLUS}, /* + */
- { SEP_CHAR, COMMA_TOKEN }, /* , */ { OP_CHAR, OFS_MINUS }, /* - */
- { DOT_CHAR, 0 }, /* . */ { OP_CHAR, OFS_DIV }, /* / */
- { DIGIT_CHAR, 0 }, /* 0 */ { DIGIT_CHAR, 0 }, /* 1 */
- { DIGIT_CHAR, 0 }, /* 2 */ { DIGIT_CHAR, 0 }, /* 3 */
- { DIGIT_CHAR, 0 }, /* 4 */ { DIGIT_CHAR, 0 }, /* 5 */
- { DIGIT_CHAR, 0 }, /* 6 */ { DIGIT_CHAR, 0 }, /* 7 */
- { DIGIT_CHAR, 0 }, /* 8 */ { DIGIT_CHAR, 0 }, /* 9 */
- { SEP_CHAR, COLON_TOKEN }, /* : */ { SEP_CHAR, SEMICOLON_TOKEN }, /* ; */
- { OP_CHAR, OFS_LT }, /* < */ { OP_CHAR, OFS_EQS }, /* = */
- { OP_CHAR, OFS_GT }, /* > */ { BAD_CHAR, 0 }, /* ? */
- { OP_CHAR, OFS_AT}, /* @ */ { ALPHA_CHAR, 0 }, /* A */
- { ALPHA_CHAR, 0 }, /* B */ { ALPHA_CHAR, 0 }, /* C */
- { ALPHA_CHAR, 0 }, /* D */ { ALPHA_CHAR, 0 }, /* E */
- { ALPHA_CHAR, 0 }, /* F */ { ALPHA_CHAR, 0 }, /* G */
- { ALPHA_CHAR, 0 }, /* H */ { ALPHA_CHAR, 0 }, /* I */
- { ALPHA_CHAR, 0 }, /* J */ { ALPHA_CHAR, 0 }, /* K */
- { ALPHA_CHAR, 0 }, /* L */ { ALPHA_CHAR, 0 }, /* M */
- { ALPHA_CHAR, 0 }, /* N */ { ALPHA_CHAR, 0 }, /* O */
- { ALPHA_CHAR, 0 }, /* P */ { ALPHA_CHAR, 0 }, /* Q */
- { ALPHA_CHAR, 0 }, /* R */ { ALPHA_CHAR, 0 }, /* S */
- { ALPHA_CHAR, 0 }, /* T */ { ALPHA_CHAR, 0 }, /* U */
- { ALPHA_CHAR, 0 }, /* V */ { ALPHA_CHAR, 0 }, /* W */
- { ALPHA_CHAR, 0 }, /* X */ { ALPHA_CHAR, 0 }, /* Y */
- { ALPHA_CHAR, 0 }, /* Z */ { SEP_CHAR, OBRACKET_TOKEN }, /* [ */
- { BAD_CHAR, 0 }, /* \ */ { SEP_CHAR, CBRACKET_TOKEN }, /* ] */
- { OP_CHAR, OFS_POW }, /* ^ */ { ALPHA_CHAR, 0 }, /* _ */
- { BAD_CHAR, 0 }, /* ` */ { ALPHA_CHAR, 0 }, /* a */
- { ALPHA_CHAR, 0 }, /* b */ { ALPHA_CHAR, 0 }, /* c */
- { ALPHA_CHAR, 0 }, /* d */ { ALPHA_CHAR, 0 }, /* e */
- { ALPHA_CHAR, 0 }, /* f */ { ALPHA_CHAR, 0 }, /* g */
- { ALPHA_CHAR, 0 }, /* h */ { ALPHA_CHAR, 0 }, /* i */
- { ALPHA_CHAR, 0 }, /* j */ { ALPHA_CHAR, 0 }, /* k */
- { ALPHA_CHAR, 0 }, /* l */ { ALPHA_CHAR, 0 }, /* m */
- { ALPHA_CHAR, 0 }, /* n */ { ALPHA_CHAR, 0 }, /* o */
- { ALPHA_CHAR, 0 }, /* p */ { ALPHA_CHAR, 0 }, /* q */
- { ALPHA_CHAR, 0 }, /* r */ { ALPHA_CHAR, 0 }, /* s */
- { ALPHA_CHAR, 0 }, /* t */ { ALPHA_CHAR, 0 }, /* u */
- { ALPHA_CHAR, 0 }, /* v */ { ALPHA_CHAR, 0 }, /* w */
- { ALPHA_CHAR, 0 }, /* x */ { ALPHA_CHAR, 0 }, /* y */
- { ALPHA_CHAR, 0 }, /* z */ { SEP_CHAR, OBRACE_TOKEN }, /* { */
- { OP_CHAR, OFS_BOR }, /* | */ { SEP_CHAR, CBRACE_TOKEN }, /* } */
- { OP_CHAR, OFS_BNOT }, /* ~ */ { BAD_CHAR, 0 }, /* 0x7f */
-
- { ALPHA_CHAR, 0 }, /* € */ { ALPHA_CHAR, 0 }, /*  */
- { ALPHA_CHAR, 0 }, /* ‚ */ { ALPHA_CHAR, 0 }, /* ƒ */
- { ALPHA_CHAR, 0 }, /* „ */ { ALPHA_CHAR, 0 }, /* … */
- { ALPHA_CHAR, 0 }, /* † */ { ALPHA_CHAR, 0 }, /* ‡ */
- { ALPHA_CHAR, 0 }, /* ˆ */ { ALPHA_CHAR, 0 }, /* ‰ */
- { ALPHA_CHAR, 0 }, /* Š */ { ALPHA_CHAR, 0 }, /* ‹ */
- { ALPHA_CHAR, 0 }, /* Œ */ { ALPHA_CHAR, 0 }, /*  */
- { ALPHA_CHAR, 0 }, /* Ž */ { ALPHA_CHAR, 0 }, /*  */
- { ALPHA_CHAR, 0 }, /*  */ { ALPHA_CHAR, 0 }, /* ‘ */
- { ALPHA_CHAR, 0 }, /* ’ */ { ALPHA_CHAR, 0 }, /* “ */
- { ALPHA_CHAR, 0 }, /* ” */ { ALPHA_CHAR, 0 }, /* • */
- { ALPHA_CHAR, 0 }, /* – */ { ALPHA_CHAR, 0 }, /* — */
- { ALPHA_CHAR, 0 }, /* ˜ */ { ALPHA_CHAR, 0 }, /* ™ */
- { ALPHA_CHAR, 0 }, /* š */ { ALPHA_CHAR, 0 }, /* › */
- { ALPHA_CHAR, 0 }, /* œ */ { ALPHA_CHAR, 0 }, /*  */
- { ALPHA_CHAR, 0 }, /* ž */ { ALPHA_CHAR, 0 }, /* Ÿ */
- { ALPHA_CHAR, 0 }, /*   */ { ALPHA_CHAR, 0 }, /* ¡ */
- { ALPHA_CHAR, 0 }, /* ¢ */ { ALPHA_CHAR, 0 }, /* £ */
- { ALPHA_CHAR, 0 }, /* ¤ */ { ALPHA_CHAR, 0 }, /* ¥ */
- { ALPHA_CHAR, 0 }, /* ¦ */ { ALPHA_CHAR, 0 }, /* § */
- { ALPHA_CHAR, 0 }, /* ¨ */ { ALPHA_CHAR, 0 }, /* © */
- { ALPHA_CHAR, 0 }, /* ª */ { ALPHA_CHAR, 0 }, /* « */
- { ALPHA_CHAR, 0 }, /* ¬ */ { ALPHA_CHAR, 0 }, /* ­ */
- { ALPHA_CHAR, 0 }, /* ® */ { ALPHA_CHAR, 0 }, /* ¯ */
- { ALPHA_CHAR, 0 }, /* ° */ { ALPHA_CHAR, 0 }, /* ± */
- { ALPHA_CHAR, 0 }, /* ² */ { ALPHA_CHAR, 0 }, /* ³ */
- { ALPHA_CHAR, 0 }, /* ´ */ { ALPHA_CHAR, 0 }, /* µ */
- { ALPHA_CHAR, 0 }, /* ¶ */ { ALPHA_CHAR, 0 }, /* · */
- { ALPHA_CHAR, 0 }, /* ¸ */ { ALPHA_CHAR, 0 }, /* ¹ */
- { ALPHA_CHAR, 0 }, /* º */ { ALPHA_CHAR, 0 }, /* » */
- { ALPHA_CHAR, 0 }, /* ¼ */ { ALPHA_CHAR, 0 }, /* ½ */
- { ALPHA_CHAR, 0 }, /* ¾ */ { ALPHA_CHAR, 0 }, /* ¿ */
- { ALPHA_CHAR, 0 }, /* À */ { ALPHA_CHAR, 0 }, /* Á */
- { ALPHA_CHAR, 0 }, /* Â */ { ALPHA_CHAR, 0 }, /* Ã */
- { ALPHA_CHAR, 0 }, /* Ä */ { ALPHA_CHAR, 0 }, /* Å */
- { ALPHA_CHAR, 0 }, /* Æ */ { ALPHA_CHAR, 0 }, /* Ç */
- { ALPHA_CHAR, 0 }, /* È */ { ALPHA_CHAR, 0 }, /* É */
- { ALPHA_CHAR, 0 }, /* Ê */ { ALPHA_CHAR, 0 }, /* Ë */
- { ALPHA_CHAR, 0 }, /* Ì */ { ALPHA_CHAR, 0 }, /* Í */
- { ALPHA_CHAR, 0 }, /* Î */ { ALPHA_CHAR, 0 }, /* Ï */
- { ALPHA_CHAR, 0 }, /* Ð */ { ALPHA_CHAR, 0 }, /* Ñ */
- { ALPHA_CHAR, 0 }, /* Ò */ { ALPHA_CHAR, 0 }, /* Ó */
- { ALPHA_CHAR, 0 }, /* Ô */ { ALPHA_CHAR, 0 }, /* Õ */
- { ALPHA_CHAR, 0 }, /* Ö */ { ALPHA_CHAR, 0 }, /* × */
- { ALPHA_CHAR, 0 }, /* Ø */ { ALPHA_CHAR, 0 }, /* Ù */
- { ALPHA_CHAR, 0 }, /* Ú */ { ALPHA_CHAR, 0 }, /* Û */
- { ALPHA_CHAR, 0 }, /* Ü */ { ALPHA_CHAR, 0 }, /* Ý */
- { ALPHA_CHAR, 0 }, /* Þ */ { ALPHA_CHAR, 0 }, /* ß */
- { ALPHA_CHAR, 0 }, /* à */ { ALPHA_CHAR, 0 }, /* á */
- { ALPHA_CHAR, 0 }, /* â */ { ALPHA_CHAR, 0 }, /* ã */
- { ALPHA_CHAR, 0 }, /* ä */ { ALPHA_CHAR, 0 }, /* å */
- { ALPHA_CHAR, 0 }, /* æ */ { ALPHA_CHAR, 0 }, /* ç */
- { ALPHA_CHAR, 0 }, /* è */ { ALPHA_CHAR, 0 }, /* é */
- { ALPHA_CHAR, 0 }, /* ê */ { ALPHA_CHAR, 0 }, /* ë */
- { ALPHA_CHAR, 0 }, /* ì */ { ALPHA_CHAR, 0 }, /* í */
- { ALPHA_CHAR, 0 }, /* î */ { ALPHA_CHAR, 0 }, /* ï */
- { ALPHA_CHAR, 0 }, /* ð */ { ALPHA_CHAR, 0 }, /* ñ */
- { ALPHA_CHAR, 0 }, /* ò */ { ALPHA_CHAR, 0 }, /* ó */
- { ALPHA_CHAR, 0 }, /* ô */ { ALPHA_CHAR, 0 }, /* õ */
- { ALPHA_CHAR, 0 }, /* ö */ { ALPHA_CHAR, 0 }, /* ÷ */
- { ALPHA_CHAR, 0 }, /* ø */ { ALPHA_CHAR, 0 }, /* ù */
- { ALPHA_CHAR, 0 }, /* ú */ { ALPHA_CHAR, 0 }, /* û */
- { ALPHA_CHAR, 0 }, /* ü */ { ALPHA_CHAR, 0 }, /* ý */
- { ALPHA_CHAR, 0 }, /* þ */ { ALPHA_CHAR, 0 }, /* ÿ */
-};
-
-int _SLcheck_identifier_syntax (char *name)
-{
- unsigned char *p;
-
- p = (unsigned char *) name;
- if (ALPHA_CHAR == Char_Type_Table[*p][0]) while (1)
- {
- unsigned ch;
- unsigned char type;
-
- ch = *++p;
-
- type = Char_Type_Table [ch][0];
- if ((type != ALPHA_CHAR) && (type != DIGIT_CHAR))
- {
- if (ch == 0)
- return 0;
- break;
- }
- }
-
- SLang_verror (SL_SYNTAX_ERROR,
- "Name %s contains an illegal character", name);
- return -1;
-}
-
-static unsigned char prep_get_char (void)
-{
- register unsigned char ch;
-
- if (0 != (ch = *Input_Line_Pointer++))
- return ch;
-
- Input_Line_Pointer--;
- return 0;
-}
-
-static void unget_prep_char (unsigned char ch)
-{
- if ((Input_Line_Pointer != Input_Line)
- && (ch != 0))
- Input_Line_Pointer--;
- /* *Input_Line_Pointer = ch; -- Do not modify the Input_Line */
-}
-
-#include "keywhash.c"
-
-static int get_ident_token (_SLang_Token_Type *tok, unsigned char *s, unsigned int len)
-{
- unsigned char ch;
- unsigned char type;
- Keyword_Table_Type *table;
-
- while (1)
- {
- ch = prep_get_char ();
- type = CHAR_CLASS (ch);
- if ((type != ALPHA_CHAR) && (type != DIGIT_CHAR))
- {
- unget_prep_char (ch);
- break;
- }
- s [len++] = ch;
- }
-
- s[len] = 0;
-
- /* check if keyword */
- table = is_keyword ((char *) s, len);
- if (table != NULL)
- {
- tok->v.s_val = table->name;
- return (tok->type = table->type);
- }
-
- tok->v.s_val = _SLstring_make_hashed_string ((char *)s, len, &tok->hash);
- tok->free_sval_flag = 1;
- return (tok->type = IDENT_TOKEN);
-}
-
-static int get_number_token (_SLang_Token_Type *tok, unsigned char *s, unsigned int len)
-{
- unsigned char ch;
- unsigned char type;
-
- /* Look for pattern [0-9.xX]*([eE][-+]?[digits])?[ijfhul]? */
- while (1)
- {
- ch = prep_get_char ();
-
- type = CHAR_CLASS (ch);
- if ((type != DIGIT_CHAR) && (type != DOT_CHAR))
- {
- if ((ch != 'x') && (ch != 'X'))
- break;
- /* It must be hex */
- do
- {
- if (len == (MAX_TOKEN_LEN - 1))
- goto too_long_return_error;
-
- s[len++] = ch;
- ch = prep_get_char ();
- type = CHAR_CLASS (ch);
- }
- while ((type == DIGIT_CHAR) || (type == ALPHA_CHAR));
- break;
- }
- if (len == (MAX_TOKEN_LEN - 1))
- goto too_long_return_error;
- s [len++] = ch;
- }
-
- /* At this point, type and ch are synchronized */
-
- if ((ch == 'e') || (ch == 'E'))
- {
- if (len == (MAX_TOKEN_LEN - 1))
- goto too_long_return_error;
- s[len++] = ch;
- ch = prep_get_char ();
- if ((ch == '+') || (ch == '-'))
- {
- if (len == (MAX_TOKEN_LEN - 1))
- goto too_long_return_error;
- s[len++] = ch;
- ch = prep_get_char ();
- }
-
- while (DIGIT_CHAR == (type = CHAR_CLASS(ch)))
- {
- if (len == (MAX_TOKEN_LEN - 1))
- goto too_long_return_error;
- s[len++] = ch;
- ch = prep_get_char ();
- }
- }
-
- while (ALPHA_CHAR == type)
- {
- if (len == (MAX_TOKEN_LEN - 1))
- goto too_long_return_error;
- s[len++] = ch;
- ch = prep_get_char ();
- type = CHAR_CLASS(ch);
- }
-
- unget_prep_char (ch);
- s[len] = 0;
-
- switch (SLang_guess_type ((char *) s))
- {
- default:
- tok->v.s_val = (char *) s;
- _SLparse_error ("Not a number", tok, 0);
- return (tok->type = EOF_TOKEN);
-
-#if SLANG_HAS_FLOAT
- case SLANG_FLOAT_TYPE:
- tok->v.s_val = _SLstring_make_hashed_string ((char *)s, len, &tok->hash);
- tok->free_sval_flag = 1;
- return (tok->type = FLOAT_TOKEN);
-
- case SLANG_DOUBLE_TYPE:
- tok->v.s_val = _SLstring_make_hashed_string ((char *)s, len, &tok->hash);
- tok->free_sval_flag = 1;
- return (tok->type = DOUBLE_TOKEN);
-#endif
-#if SLANG_HAS_COMPLEX
- case SLANG_COMPLEX_TYPE:
- tok->v.s_val = _SLstring_make_hashed_string ((char *)s, len, &tok->hash);
- tok->free_sval_flag = 1;
- return (tok->type = COMPLEX_TOKEN);
-#endif
- case SLANG_CHAR_TYPE:
- tok->v.long_val = (char)SLatol (s);
- return tok->type = CHAR_TOKEN;
- case SLANG_UCHAR_TYPE:
- tok->v.long_val = (unsigned char)SLatol (s);
- return tok->type = UCHAR_TOKEN;
- case SLANG_SHORT_TYPE:
- tok->v.long_val = (short)SLatol (s);
- return tok->type = SHORT_TOKEN;
- case SLANG_USHORT_TYPE:
- tok->v.long_val = (unsigned short)SLatoul (s);
- return tok->type = USHORT_TOKEN;
- case SLANG_INT_TYPE:
- tok->v.long_val = (int)SLatol (s);
- return tok->type = INT_TOKEN;
- case SLANG_UINT_TYPE:
- tok->v.long_val = (unsigned int)SLatoul (s);
- return tok->type = UINT_TOKEN;
- case SLANG_LONG_TYPE:
- tok->v.long_val = SLatol (s);
- return tok->type = LONG_TOKEN;
- case SLANG_ULONG_TYPE:
- tok->v.long_val = SLatoul (s);
- return tok->type = ULONG_TOKEN;
- }
-
- too_long_return_error:
- _SLparse_error ("Number too long for buffer", NULL, 0);
- return (tok->type == EOF_TOKEN);
-}
-
-static int get_op_token (_SLang_Token_Type *tok, char ch)
-{
- unsigned int offset;
- char second_char;
- unsigned char type;
- char *name;
-
- /* operators are: + - / * ++ -- += -= = == != > < >= <= | etc..
- * These lex to the longest valid operator token.
- */
-
- offset = CHAR_DATA((unsigned char) ch);
- if (0 == Operators [offset][1])
- {
- name = Operators [offset];
- type = name [3];
- }
- else
- {
- type = EOF_TOKEN;
- name = NULL;
- }
-
- second_char = prep_get_char ();
- do
- {
- if (second_char == Operators[offset][1])
- {
- name = Operators [offset];
- type = name [3];
- break;
- }
- offset++;
- }
- while (ch == Operators[offset][0]);
-
- tok->type = type;
-
- if (type == EOF_TOKEN)
- {
- _SLparse_error ("Operator not supported", NULL, 0);
- return type;
- }
-
- tok->v.s_val = name;
-
- if (name[1] == 0)
- unget_prep_char (second_char);
-
- return type;
-}
-
-/* If this returns non-zero, then it is a binary string */
-static int expand_escaped_string (register char *s,
- register char *t, register char *tmax,
- unsigned int *lenp)
-{
- char *s0;
- int is_binary = 0;
- char ch;
-
- s0 = s;
- while (t < tmax)
- {
- ch = *t++;
- if (ch == '\\')
- {
- t = _SLexpand_escaped_char (t, &ch);
- if (ch == 0) is_binary = 1;
- }
- *s++ = ch;
- }
- *s = 0;
-
- *lenp = (unsigned char) (s - s0);
- return is_binary;
-}
-
-static int get_string_token (_SLang_Token_Type *tok, unsigned char quote_char,
- unsigned char *s)
-{
- unsigned char ch;
- unsigned int len = 0;
- int has_quote = 0;
- int is_binary;
-
- while (1)
- {
- ch = prep_get_char ();
- if (ch == 0)
- {
- _SLparse_error("Expecting quote-character", NULL, 0);
- return (tok->type = EOF_TOKEN);
- }
- if (ch == quote_char) break;
-
- s[len++] = ch;
-
- if (len == (MAX_TOKEN_LEN - 1))
- {
- _SLparse_error ("String too long for buffer", NULL, 0);
- return (tok->type == EOF_TOKEN);
- }
-
- if (ch == '\\')
- {
- has_quote = 1;
- ch = prep_get_char ();
- s[len++] = ch;
- }
- }
-
- s[len] = 0;
-
- if (has_quote)
- is_binary = expand_escaped_string ((char *) s, (char *)s, (char *)s + len, &len);
- else is_binary = 0;
-
- if ('"' == quote_char)
- {
- tok->free_sval_flag = 1;
- if (is_binary)
- {
- tok->v.b_val = SLbstring_create (s, len);
- return tok->type = BSTRING_TOKEN;
- }
- else
- {
- tok->v.s_val = _SLstring_make_hashed_string ((char *)s,
- len,
- &tok->hash);
- tok->free_sval_flag = 1;
- return (tok->type = STRING_TOKEN);
- }
- }
-
- /* else single character */
- if (s[1] != 0)
- {
- _SLparse_error("Single char expected", NULL, 0);
- return (tok->type = EOF_TOKEN);
- }
-
- tok->v.long_val = s[0];
- return (tok->type = UCHAR_TOKEN);
-}
-
-static int extract_token (_SLang_Token_Type *tok, unsigned char ch, unsigned char t)
-{
- unsigned char s [MAX_TOKEN_LEN];
- unsigned int slen;
-
- s[0] = (char) ch;
- slen = 1;
-
- switch (t)
- {
- case ALPHA_CHAR:
- return get_ident_token (tok, s, slen);
-
- case OP_CHAR:
- return get_op_token (tok, ch);
-
- case DIGIT_CHAR:
- return get_number_token (tok, s, slen);
-
- case EXCL_CHAR:
- ch = prep_get_char ();
- s [slen++] = ch;
- t = CHAR_CLASS(ch);
- if (t == ALPHA_CHAR) return get_ident_token (tok, s, slen);
- if (t == OP_CHAR)
- {
- unget_prep_char (ch);
- return get_op_token (tok, '!');
- }
- _SLparse_error("Misplaced !", NULL, 0);
- return -1;
-
- case DOT_CHAR:
- ch = prep_get_char ();
- if (DIGIT_CHAR == CHAR_CLASS(ch))
- {
- s [slen++] = ch;
- return get_number_token (tok, s, slen);
- }
- unget_prep_char (ch);
- return (tok->type = DOT_TOKEN);
-
- case SEP_CHAR:
- return (tok->type = CHAR_DATA(ch));
-
- case DQUOTE_CHAR:
- case QUOTE_CHAR:
- return get_string_token (tok, ch, s);
-
- default:
- _SLparse_error("Invalid character", NULL, 0);
- return (tok->type = EOF_TOKEN);
- }
-}
-
-int _SLget_rpn_token (_SLang_Token_Type *tok)
-{
- unsigned char ch;
-
- tok->v.s_val = "??";
- while ((ch = *Input_Line_Pointer) != 0)
- {
- unsigned char t;
-
- Input_Line_Pointer++;
- if (WHITE_CHAR == (t = CHAR_CLASS(ch)))
- continue;
-
- if (NL_CHAR == t)
- break;
-
- return extract_token (tok, ch, t);
- }
- Input_Line_Pointer = Empty_Line;
- return EOF_TOKEN;
-}
-
-int _SLget_token (_SLang_Token_Type *tok)
-{
- unsigned char ch;
- unsigned char t;
-
- tok->num_refs = 1;
- tok->free_sval_flag = 0;
- tok->v.s_val = "??";
-#if _SLANG_HAS_DEBUG_CODE
- tok->line_number = LLT->line_num;
-#endif
- if (SLang_Error || (Input_Line == NULL))
- return (tok->type = EOF_TOKEN);
-
- while (1)
- {
- ch = *Input_Line_Pointer++;
- if (WHITE_CHAR == (t = CHAR_CLASS (ch)))
- continue;
-
- if (t != NL_CHAR)
- return extract_token (tok, ch, t);
-
- do
- {
- LLT->line_num++;
-#if _SLANG_HAS_DEBUG_CODE
- tok->line_number++;
-#endif
- Input_Line = LLT->read(LLT);
- if ((NULL == Input_Line) || SLang_Error)
- {
- Input_Line_Pointer = Input_Line = NULL;
- return (tok->type = EOF_TOKEN);
- }
- }
- while (0 == SLprep_line_ok(Input_Line, This_SLpp));
-
- Input_Line_Pointer = Input_Line;
- if (*Input_Line_Pointer == '.')
- {
- Input_Line_Pointer++;
- return tok->type = RPN_TOKEN;
- }
- }
-}
-
-static int prep_exists_function (char *line, char comment)
-{
- char buf[MAX_FILE_LINE_LEN], *b, *bmax;
- unsigned char ch;
-
- bmax = buf + (sizeof (buf) - 1);
-
- while (1)
- {
- /* skip whitespace */
- while ((ch = (unsigned char) *line),
- ch && (ch != '\n') && (ch <= ' '))
- line++;
-
- if ((ch <= '\n')
- || (ch == (unsigned char) comment)) break;
-
- b = buf;
- while ((ch = (unsigned char) *line) > ' ')
- {
- if (b < bmax) *b++ = (char) ch;
- line++;
- }
- *b = 0;
-
- if (SLang_is_defined (buf))
- return 1;
- }
-
- return 0;
-}
-
-static int prep_eval_expr (char *expr)
-{
- int ret;
-
- if (0 != SLang_load_string (expr))
- return -1;
- if (-1 == SLang_pop_integer (&ret))
- return -1;
- return (ret != 0);
-}
-
-
-int SLang_load_object (SLang_Load_Type *x)
-{
- SLPreprocess_Type this_pp;
- SLPreprocess_Type *save_this_pp;
- SLang_Load_Type *save_llt;
- char *save_input_line, *save_input_line_ptr;
-#if _SLANG_HAS_DEBUG_CODE
- int save_compile_line_num_info;
-#endif
- int save_auto_declare_variables;
-
- if (SLprep_exists_hook == NULL)
- SLprep_exists_hook = prep_exists_function;
-
- if (_SLprep_eval_hook == NULL)
- _SLprep_eval_hook = prep_eval_expr;
-
- if (-1 == SLprep_open_prep (&this_pp)) return -1;
-
- if (-1 == _SLcompile_push_context (x))
- return -1;
-
-#if _SLANG_HAS_DEBUG_CODE
- save_compile_line_num_info = _SLang_Compile_Line_Num_Info;
-#endif
- save_this_pp = This_SLpp;
- save_input_line = Input_Line;
- save_input_line_ptr = Input_Line_Pointer;
- save_llt = LLT;
- save_auto_declare_variables = _SLang_Auto_Declare_Globals;
-
- This_SLpp = &this_pp;
- Input_Line_Pointer = Input_Line = Empty_Line;
- LLT = x;
-
- x->line_num = 0;
- x->parse_level = 0;
- _SLang_Auto_Declare_Globals = x->auto_declare_globals;
-
-#if _SLANG_HAS_DEBUG_CODE
- _SLang_Compile_Line_Num_Info = Default_Compile_Line_Num_Info;
-#endif
-
- _SLparse_start (x);
- if (SLang_Error)
- do_line_file_error (x->line_num, x->name);
-
- _SLang_Auto_Declare_Globals = save_auto_declare_variables;
-
- if (SLang_Error) SLang_restart (0);
-
- (void) _SLcompile_pop_context ();
-
- Input_Line = save_input_line;
- Input_Line_Pointer = save_input_line_ptr;
- LLT = save_llt;
- This_SLpp = save_this_pp;
-
-#if _SLANG_HAS_DEBUG_CODE
- _SLang_Compile_Line_Num_Info = save_compile_line_num_info;
-#endif
-
- if (SLang_Error) return -1;
- return 0;
-}
-
-SLang_Load_Type *SLallocate_load_type (char *name)
-{
- SLang_Load_Type *x;
-
- if (NULL == (x = (SLang_Load_Type *)SLmalloc (sizeof (SLang_Load_Type))))
- return NULL;
- memset ((char *) x, 0, sizeof (SLang_Load_Type));
-
- if (name == NULL) name = "";
-
- x->name = SLang_create_slstring (name);
- if (x->name == NULL)
- {
- SLfree ((char *) x);
- return NULL;
- }
- return x;
-}
-
-void SLdeallocate_load_type (SLang_Load_Type *x)
-{
- if (x != NULL)
- {
- SLang_free_slstring (x->name);
- SLfree ((char *) x);
- }
-}
-
-typedef struct
-{
- char *string;
- char *ptr;
-}
-String_Client_Data_Type;
-
-static char *read_from_string (SLang_Load_Type *x)
-{
- String_Client_Data_Type *data;
- char *s, *s1, ch;
-
- data = (String_Client_Data_Type *)x->client_data;
- s1 = s = data->ptr;
-
- if (*s == 0)
- return NULL;
-
- while ((ch = *s) != 0)
- {
- s++;
- if (ch == '\n')
- break;
- }
-
- data->ptr = s;
- return s1;
-}
-
-int SLang_load_string (char *string)
-{
- SLang_Load_Type *x;
- String_Client_Data_Type data;
- int ret;
-
- if (string == NULL)
- return -1;
-
- /* Grab a private copy in case loading modifies string */
- if (NULL == (string = SLang_create_slstring (string)))
- return -1;
-
- /* To avoid creating a static data space for every string loaded,
- * all string objects will be regarded as identical. So, identify
- * all of them by ***string***
- */
- if (NULL == (x = SLallocate_load_type ("***string***")))
- {
- SLang_free_slstring (string);
- return -1;
- }
-
- x->client_data = (VOID_STAR) &data;
- x->read = read_from_string;
-
- data.ptr = data.string = string;
- if (-1 == (ret = SLang_load_object (x)))
- SLang_verror (SLang_Error, "called from eval: %s", string);
-
- SLang_free_slstring (string);
- SLdeallocate_load_type (x);
- return ret;
-}
-
-typedef struct
-{
- char *buf;
- FILE *fp;
-}
-File_Client_Data_Type;
-
-char *SLang_User_Prompt;
-static char *read_from_file (SLang_Load_Type *x)
-{
- FILE *fp;
- File_Client_Data_Type *c;
-
- c = (File_Client_Data_Type *)x->client_data;
- fp = c->fp;
-
- if ((fp == stdin) && (SLang_User_Prompt != NULL))
- {
- fputs (SLang_User_Prompt, stdout);
- fflush (stdout);
- }
-
- return fgets (c->buf, MAX_FILE_LINE_LEN, c->fp);
-}
-
-/* Note that file could be freed from Slang during run of this routine
- * so get it and store it !! (e.g., autoloading)
- */
-int (*SLang_Load_File_Hook) (char *);
-int SLang_load_file (char *f)
-{
- File_Client_Data_Type client_data;
- SLang_Load_Type *x;
- char *name, *buf;
- FILE *fp;
-
- if (SLang_Load_File_Hook != NULL)
- return (*SLang_Load_File_Hook) (f);
-
- if (f == NULL) name = "<stdin>"; else name = f;
-
- name = SLang_create_slstring (name);
- if (name == NULL)
- return -1;
-
- if (NULL == (x = SLallocate_load_type (name)))
- {
- SLang_free_slstring (name);
- return -1;
- }
-
- buf = NULL;
-
- if (f != NULL)
- fp = fopen (f, "r");
- else
- fp = stdin;
-
- if (fp == NULL)
- SLang_verror (SL_OBJ_NOPEN, "Unable to open %s", name);
- else if (NULL != (buf = SLmalloc (MAX_FILE_LINE_LEN + 1)))
- {
- client_data.fp = fp;
- client_data.buf = buf;
- x->client_data = (VOID_STAR) &client_data;
- x->read = read_from_file;
-
- (void) SLang_load_object (x);
- }
-
- if ((fp != NULL) && (fp != stdin))
- fclose (fp);
-
- SLfree (buf);
- SLang_free_slstring (name);
- SLdeallocate_load_type (x);
-
- if (SLang_Error)
- return -1;
-
- return 0;
-}
-
-int SLang_guess_type (char *t)
-{
- char *p;
- register char ch;
- int modifier = 0;
-
- if (*t == '-') t++;
- p = t;
-
-#if SLANG_HAS_FLOAT
- if (*p != '.')
- {
-#endif
- modifier = 0;
- while ((*p >= '0') && (*p <= '9')) p++;
- if (t == p) return (SLANG_STRING_TYPE);
- if ((*p == 'x') && (p == t + 1)) /* 0x?? */
- {
- modifier |= 8;
- p++;
- while (ch = *p,
- ((ch >= '0') && (ch <= '9'))
- || (((ch | 0x20) >= 'a') && ((ch | 0x20) <= 'f'))) p++;
- }
-
- /* Now look for UL, LU, UH, HU, L, H modifiers */
- while ((ch = *p) != 0)
- {
- ch |= 0x20;
- if (ch == 'h') modifier |= 1;
- else if (ch == 'l') modifier |= 2;
- else if (ch == 'u') modifier |= 4;
- else break;
- p++;
- }
- if ((1|2) == (modifier & (1|2))) /* hl present */
- return SLANG_STRING_TYPE;
-
- if (ch == 0)
- {
- if ((modifier & 0x7) == 0) return SLANG_INT_TYPE;
- if (modifier & 4)
- {
- if (modifier & 1) return SLANG_USHORT_TYPE;
- if (modifier & 2) return SLANG_ULONG_TYPE;
- return SLANG_UINT_TYPE;
- }
- if (modifier & 1) return SLANG_SHORT_TYPE;
- if (modifier & 2) return SLANG_LONG_TYPE;
- return SLANG_INT_TYPE;
- }
-
- if (modifier) return SLANG_STRING_TYPE;
-#if SLANG_HAS_FLOAT
- }
-
- /* now down to double case */
- if (*p == '.')
- {
- p++;
- while ((*p >= '0') && (*p <= '9')) p++;
- }
- if (*p == 0) return(SLANG_DOUBLE_TYPE);
- if ((*p != 'e') && (*p != 'E'))
- {
-# if SLANG_HAS_COMPLEX
- if (((*p == 'i') || (*p == 'j'))
- && (p[1] == 0))
- return SLANG_COMPLEX_TYPE;
-# endif
- if (((*p | 0x20) == 'f') && (p[1] == 0))
- return SLANG_FLOAT_TYPE;
-
- return SLANG_STRING_TYPE;
- }
-
- p++;
- if ((*p == '-') || (*p == '+')) p++;
- while ((*p >= '0') && (*p <= '9')) p++;
- if (*p != 0)
- {
-# if SLANG_HAS_COMPLEX
- if (((*p == 'i') || (*p == 'j'))
- && (p[1] == 0))
- return SLANG_COMPLEX_TYPE;
-# endif
- if (((*p | 0x20) == 'f') && (p[1] == 0))
- return SLANG_FLOAT_TYPE;
-
- return SLANG_STRING_TYPE;
- }
- return SLANG_DOUBLE_TYPE;
-#else
- return SLANG_STRING_TYPE;
-#endif /* SLANG_HAS_FLOAT */
-}
-
-static int hex_atoul (unsigned char *s, unsigned long *ul)
-{
- register unsigned char ch;
- register unsigned long value;
- register int base;
-
- s++; /* skip the leading 0 */
-
- /* look for 'x' which indicates hex */
- if ((*s | 0x20) == 'x')
- {
- base = 16;
- s++;
- if (*s == 0)
- {
- SLang_Error = SL_SYNTAX_ERROR;
- return -1;
- }
- }
- else base = 8;
-
- value = 0;
- while ((ch = *s++) != 0)
- {
- char ch1 = ch | 0x20;
- switch (ch1)
- {
- default:
- SLang_Error = SL_SYNTAX_ERROR;
- break;
-
- case 'u':
- case 'l':
- case 'h':
- *ul = value;
- return 0;
-
- case '8':
- case '9':
- if (base != 16) SLang_Error = SL_SYNTAX_ERROR;
- /* drop */
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- ch1 -= '0';
- break;
-
- case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- if (base != 16) SLang_Error = SL_SYNTAX_ERROR;
- ch1 = (ch1 - 'a') + 10;
- break;
- }
- value = value * base + ch1;
- }
- *ul = value;
- return 0;
-}
-
-/* Note: These routines do not check integer overflow. I would use the C
- * library functions atol and atoul but some implementations check overflow
- * and some do not. The following implementations provide a consistent
- * behavior.
- */
-unsigned long SLatoul (unsigned char *s)
-{
- int sign;
- unsigned long value;
-
- if (*s == '-') sign = -1;
- else
- {
- sign = 1;
- if (*s == '+') s++;
- }
-
- if (*s == '0')
- {
- if (-1 == hex_atoul (s, &value))
- return (unsigned long) -1;
- }
- else
- {
- while (WHITE_CHAR == CHAR_CLASS(*s))
- s++;
-
- value = 0;
- while (DIGIT_CHAR == CHAR_CLASS(*s))
- {
- value = value * 10 + (unsigned long) (*s - '0');
- s++;
- }
- }
-
- if (sign == -1)
- value = (unsigned long)-1L * value;
-
- return value;
-}
-
-long SLatol (unsigned char *s)
-{
- while (WHITE_CHAR == CHAR_CLASS(*s))
- s++;
-
- if (*s == '-')
- {
- long value = (long) SLatoul (s+1);
- return -value;
- }
- return (long) SLatoul (s);
-}
-
-int SLatoi (unsigned char *s)
-{
- return (int) SLatol (s);
-}
-
-static char *check_byte_compiled_token (char *buf)
-{
- unsigned int len_lo, len_hi, len;
-
- len_lo = (unsigned char) *Input_Line_Pointer++;
- if ((len_lo < 32)
- || ((len_hi = (unsigned char)*Input_Line_Pointer++) < 32)
- || ((len = (len_lo - 32) | ((len_hi - 32) << 7)) >= MAX_TOKEN_LEN))
- {
- SLang_doerror ("Byte compiled file appears corrupt");
- return NULL;
- }
-
- SLMEMCPY (buf, Input_Line_Pointer, len);
- buf += len;
- Input_Line_Pointer += len;
- *buf = 0;
- return buf;
-}
-
-void _SLcompile_byte_compiled (void)
-{
- unsigned char type;
- _SLang_Token_Type tok;
- char buf[MAX_TOKEN_LEN];
- char *ebuf;
- unsigned int len;
-
- memset ((char *) &tok, 0, sizeof (_SLang_Token_Type));
-
- while (SLang_Error == 0)
- {
- top_of_switch:
- type = (unsigned char) *Input_Line_Pointer++;
- switch (type)
- {
- case '\n':
- case 0:
- if (NULL == (Input_Line = LLT->read(LLT)))
- {
- Input_Line_Pointer = Input_Line = NULL;
- return;
- }
- Input_Line_Pointer = Input_Line;
- goto top_of_switch;
-
- case LINE_NUM_TOKEN:
- case CHAR_TOKEN:
- case UCHAR_TOKEN:
- case SHORT_TOKEN:
- case USHORT_TOKEN:
- case INT_TOKEN:
- case UINT_TOKEN:
- case LONG_TOKEN:
- case ULONG_TOKEN:
- if (NULL == check_byte_compiled_token (buf))
- return;
- tok.v.long_val = atol (buf);
- break;
-
- case COMPLEX_TOKEN:
- case FLOAT_TOKEN:
- case DOUBLE_TOKEN:
- if (NULL == check_byte_compiled_token (buf))
- return;
- tok.v.s_val = buf;
- break;
-
- case ESC_STRING_TOKEN:
- if (NULL == (ebuf = check_byte_compiled_token (buf)))
- return;
- tok.v.s_val = buf;
- if (expand_escaped_string (buf, buf, ebuf, &len))
- {
- tok.hash = len;
- type = _BSTRING_TOKEN;
- }
- else
- {
- tok.hash = _SLstring_hash ((unsigned char *)buf, (unsigned char *)buf + len);
- type = STRING_TOKEN;
- }
- break;
-
- case TMP_TOKEN:
- case DEFINE_TOKEN:
- case DEFINE_STATIC_TOKEN:
- case DEFINE_PRIVATE_TOKEN:
- case DEFINE_PUBLIC_TOKEN:
- case DOT_TOKEN:
- case STRING_TOKEN:
- case IDENT_TOKEN:
- case _REF_TOKEN:
- case _DEREF_ASSIGN_TOKEN:
- case _SCALAR_ASSIGN_TOKEN:
- case _SCALAR_PLUSEQS_TOKEN:
- case _SCALAR_MINUSEQS_TOKEN:
- case _SCALAR_TIMESEQS_TOKEN:
- case _SCALAR_DIVEQS_TOKEN:
- case _SCALAR_BOREQS_TOKEN:
- case _SCALAR_BANDEQS_TOKEN:
- case _SCALAR_PLUSPLUS_TOKEN:
- case _SCALAR_POST_PLUSPLUS_TOKEN:
- case _SCALAR_MINUSMINUS_TOKEN:
- case _SCALAR_POST_MINUSMINUS_TOKEN:
- case _STRUCT_ASSIGN_TOKEN:
- case _STRUCT_PLUSEQS_TOKEN:
- case _STRUCT_MINUSEQS_TOKEN:
- case _STRUCT_TIMESEQS_TOKEN:
- case _STRUCT_DIVEQS_TOKEN:
- case _STRUCT_BOREQS_TOKEN:
- case _STRUCT_BANDEQS_TOKEN:
- case _STRUCT_POST_MINUSMINUS_TOKEN:
- case _STRUCT_MINUSMINUS_TOKEN:
- case _STRUCT_POST_PLUSPLUS_TOKEN:
- case _STRUCT_PLUSPLUS_TOKEN:
- if (NULL == (ebuf = check_byte_compiled_token (buf)))
- return;
- tok.v.s_val = buf;
- tok.hash = _SLstring_hash ((unsigned char *)buf, (unsigned char *)ebuf);
- break;
-
- default:
- break;
- }
- tok.type = type;
-
- (*_SLcompile_ptr) (&tok);
- }
-}
-
-static int escape_string (unsigned char *s, unsigned char *smax,
- unsigned char *buf, unsigned char *buf_max,
- int *is_escaped)
-{
- unsigned char ch;
-
- *is_escaped = 0;
- while (buf < buf_max)
- {
- if (s == smax)
- {
- *buf = 0;
- return 0;
- }
-
- ch = *s++;
- switch (ch)
- {
- default:
- *buf++ = ch;
- break;
-
- case 0:
- *buf++ = '\\';
- if (buf < buf_max) *buf++ = 'x';
- if (buf < buf_max) *buf++ = '0';
- if (buf < buf_max) *buf++ = '0';
- *is_escaped = 1;
- break; /* return 0; */
-
- case '\n':
- *buf++ = '\\';
- if (buf < buf_max) *buf++ = 'n';
- *is_escaped = 1;
- break;
-
- case '\r':
- *buf++ = '\\';
- if (buf < buf_max) *buf++ = 'r';
- *is_escaped = 1;
- break;
-
- case 0x1A: /* ^Z */
- *buf++ = '\\';
- if (buf < buf_max) *buf++ = 'x';
- if (buf < buf_max) *buf++ = '1';
- if (buf < buf_max) *buf++ = 'A';
- *is_escaped = 1;
- break;
-
- case '\\':
- *buf++ = ch;
- if (buf < buf_max) *buf++ = ch;
- *is_escaped = 1;
- break;
- }
- }
- _SLparse_error ("String too long to byte-compile", NULL, 0);
- return -1;
-}
-
-static FILE *Byte_Compile_Fp;
-static unsigned int Byte_Compile_Line_Len;
-
-static int bytecomp_write_data (char *buf, unsigned int len)
-{
- char *err = "Write Error";
-
- if ((Byte_Compile_Line_Len + len + 1) >= MAX_FILE_LINE_LEN)
- {
- if (EOF == fputs ("\n", Byte_Compile_Fp))
- {
- SLang_doerror (err);
- return -1;
- }
- Byte_Compile_Line_Len = 0;
- }
-
- if (EOF == fputs (buf, Byte_Compile_Fp))
- {
- SLang_doerror (err);
- return -1;
- }
- Byte_Compile_Line_Len += len;
- return 0;
-}
-
-static void byte_compile_token (_SLang_Token_Type *tok)
-{
- unsigned char buf [MAX_TOKEN_LEN + 4], *buf_max;
- unsigned int len;
- char *b3;
- int is_escaped;
- unsigned char *s;
-
- if (SLang_Error) return;
-
- buf [0] = (unsigned char) tok->type;
- buf [1] = 0;
-
- buf_max = buf + sizeof(buf);
- b3 = (char *) buf + 3;
-
- switch (tok->type)
- {
- case LINE_NUM_TOKEN:
- case CHAR_TOKEN:
- case SHORT_TOKEN:
- case INT_TOKEN:
- case LONG_TOKEN:
- sprintf (b3, "%ld", tok->v.long_val);
- break;
-
- case UCHAR_TOKEN:
- case USHORT_TOKEN:
- case UINT_TOKEN:
- case ULONG_TOKEN:
- sprintf (b3, "%lu", tok->v.long_val);
- break;
-
- case _BSTRING_TOKEN:
- s = (unsigned char *) tok->v.s_val;
- len = (unsigned int) tok->hash;
-
- if (-1 == escape_string (s, s + len,
- (unsigned char *)b3, buf_max,
- &is_escaped))
- return;
-
- buf[0] = ESC_STRING_TOKEN;
- break;
-
- case BSTRING_TOKEN:
- if (NULL == (s = SLbstring_get_pointer (tok->v.b_val, &len)))
- return;
-
- if (-1 == escape_string (s, s + len,
- (unsigned char *)b3, buf_max,
- &is_escaped))
- return;
- buf[0] = ESC_STRING_TOKEN;
- break;
-
- case STRING_TOKEN:
- s = (unsigned char *)tok->v.s_val;
-
- if (-1 == escape_string (s, s + strlen ((char *)s),
- (unsigned char *)b3, buf_max,
- &is_escaped))
- return;
-
- if (is_escaped)
- buf[0] = ESC_STRING_TOKEN;
- break;
-
- /* a _SCALAR_* token is attached to an identifier. */
- case _DEREF_ASSIGN_TOKEN:
- case _SCALAR_ASSIGN_TOKEN:
- case _SCALAR_PLUSEQS_TOKEN:
- case _SCALAR_MINUSEQS_TOKEN:
- case _SCALAR_TIMESEQS_TOKEN:
- case _SCALAR_DIVEQS_TOKEN:
- case _SCALAR_BOREQS_TOKEN:
- case _SCALAR_BANDEQS_TOKEN:
- case _SCALAR_PLUSPLUS_TOKEN:
- case _SCALAR_POST_PLUSPLUS_TOKEN:
- case _SCALAR_MINUSMINUS_TOKEN:
- case _SCALAR_POST_MINUSMINUS_TOKEN:
- case DOT_TOKEN:
- case TMP_TOKEN:
- case DEFINE_TOKEN:
- case DEFINE_STATIC_TOKEN:
- case DEFINE_PRIVATE_TOKEN:
- case DEFINE_PUBLIC_TOKEN:
- case FLOAT_TOKEN:
- case DOUBLE_TOKEN:
- case COMPLEX_TOKEN:
- case IDENT_TOKEN:
- case _REF_TOKEN:
- case _STRUCT_ASSIGN_TOKEN:
- case _STRUCT_PLUSEQS_TOKEN:
- case _STRUCT_MINUSEQS_TOKEN:
- case _STRUCT_TIMESEQS_TOKEN:
- case _STRUCT_DIVEQS_TOKEN:
- case _STRUCT_BOREQS_TOKEN:
- case _STRUCT_BANDEQS_TOKEN:
- case _STRUCT_POST_MINUSMINUS_TOKEN:
- case _STRUCT_MINUSMINUS_TOKEN:
- case _STRUCT_POST_PLUSPLUS_TOKEN:
- case _STRUCT_PLUSPLUS_TOKEN:
- strcpy (b3, tok->v.s_val);
- break;
-
- default:
- b3 = NULL;
- }
-
- if (b3 != NULL)
- {
- len = strlen (b3);
- buf[1] = (unsigned char) ((len & 0x7F) + 32);
- buf[2] = (unsigned char) (((len >> 7) & 0x7F) + 32);
- len += 3;
- }
- else len = 1;
-
- (void) bytecomp_write_data ((char *)buf, len);
-}
-
-int SLang_byte_compile_file (char *name, int method)
-{
- char file [1024];
-
- (void) method;
- if (strlen (name) + 2 >= sizeof (file))
- {
- SLang_verror (SL_INVALID_PARM, "Filename too long");
- return -1;
- }
- sprintf (file, "%sc", name);
- if (NULL == (Byte_Compile_Fp = fopen (file, "w")))
- {
- SLang_verror(SL_OBJ_NOPEN, "%s: unable to open", file);
- return -1;
- }
-
- Byte_Compile_Line_Len = 0;
- if (-1 != bytecomp_write_data (".#", 2))
- {
- _SLcompile_ptr = byte_compile_token;
- (void) SLang_load_file (name);
- _SLcompile_ptr = _SLcompile;
-
- (void) bytecomp_write_data ("\n", 1);
- }
-
- if (EOF == fclose (Byte_Compile_Fp))
- SLang_doerror ("Write Error");
-
- if (SLang_Error)
- {
- SLang_verror (0, "Error processing %s", name);
- return -1;
- }
- return 0;
-}
-
-int SLang_generate_debug_info (int x)
-{
- int y = Default_Compile_Line_Num_Info;
- Default_Compile_Line_Num_Info = x;
- return y;
-}
diff --git a/mdk-stage1/slang/sltypes.c b/mdk-stage1/slang/sltypes.c
deleted file mode 100644
index 05b8741b1..000000000
--- a/mdk-stage1/slang/sltypes.c
+++ /dev/null
@@ -1,966 +0,0 @@
-/* Basic type operations for S-Lang */
-/* Copyright (c) 1992, 1996, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#if SLANG_HAS_FLOAT
-# include <math.h>
-#endif
-
-#define SL_APP_WANTS_FOREACH /* for String_Type */
-#include "slang.h"
-#include "_slang.h"
-
-int SLpop_string (char **s) /*{{{*/
-{
- char *sls;
-
- *s = NULL;
-
- if (-1 == SLang_pop_slstring (&sls))
- return -1;
-
- if (NULL == (*s = SLmake_string (sls)))
- {
- SLang_free_slstring (sls);
- return -1;
- }
-
- SLang_free_slstring (sls);
- return 0;
-}
-
-/*}}}*/
-
-int SLang_pop_slstring (char **s) /*{{{*/
-{
- return SLclass_pop_ptr_obj (SLANG_STRING_TYPE, (VOID_STAR *)s);
-}
-
-/*}}}*/
-
-/* if *data != 0, string should be freed upon use. */
-int SLang_pop_string(char **s, int *data) /*{{{*/
-{
- if (SLpop_string (s))
- return -1;
-
- *data = 1;
- return 0;
-}
-
-/*}}}*/
-
-int _SLang_push_slstring (char *s)
-{
- if (0 == SLclass_push_ptr_obj (SLANG_STRING_TYPE, (VOID_STAR)s))
- return 0;
-
- SLang_free_slstring (s);
- return -1;
-}
-
-int _SLpush_alloced_slstring (char *s, unsigned int len)
-{
- if (NULL == (s = _SLcreate_via_alloced_slstring (s, len)))
- return -1;
-
- return _SLang_push_slstring (s);
-}
-
-int SLang_push_string (char *t) /*{{{*/
-{
- if (t == NULL)
- return SLang_push_null ();
-
- if (NULL == (t = SLang_create_slstring (t)))
- return -1;
-
- return _SLang_push_slstring (t);
-}
-
-/*}}}*/
-
-int _SLang_dup_and_push_slstring (char *s)
-{
- if (NULL == (s = _SLstring_dup_slstring (s)))
- return SLang_push_null ();
-
- return _SLang_push_slstring (s);
-}
-
-
-/* This function _always_ frees the malloced string */
-int SLang_push_malloced_string (char *c) /*{{{*/
-{
- int ret;
-
- ret = SLang_push_string (c);
- SLfree (c);
-
- return ret;
-}
-
-/*}}}*/
-
-#if 0
-static int int_int_power (int a, int b)
-{
- int r, s;
-
- if (a == 0) return 0;
- if (b < 0) return 0;
- if (b == 0) return 1;
-
- s = 1;
- if (a < 0)
- {
- if ((b % 2) == 1) s = -1;
- a = -a;
- }
-
- /* FIXME: Priority=low
- * This needs optimized
- */
- r = 1;
- while (b)
- {
- r = r * a;
- b--;
- }
- return r * s;
-}
-#endif
-
-static int
-string_string_bin_op_result (int op, unsigned char a, unsigned char b,
- unsigned char *c)
-{
- (void) a;
- (void) b;
- switch (op)
- {
- default:
- return 0;
-
- case SLANG_PLUS:
- *c = SLANG_STRING_TYPE;
- break;
-
- case SLANG_GT:
- case SLANG_GE:
- case SLANG_LT:
- case SLANG_LE:
- case SLANG_EQ:
- case SLANG_NE:
- *c = SLANG_CHAR_TYPE;
- break;
- }
- return 1;
-}
-
-static int
-string_string_bin_op (int op,
- unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp, unsigned int nb,
- VOID_STAR cp)
-{
- char *ic;
- char **a, **b, **c;
- unsigned int n, n_max;
- unsigned int da, db;
-
- (void) a_type;
- (void) b_type;
-
- if (na == 1) da = 0; else da = 1;
- if (nb == 1) db = 0; else db = 1;
-
- if (na > nb) n_max = na; else n_max = nb;
-
- a = (char **) ap;
- b = (char **) bp;
- for (n = 0; n < n_max; n++)
- {
- if ((*a == NULL) || (*b == NULL))
- {
- SLang_verror (SL_VARIABLE_UNINITIALIZED, "String element[%u] not initialized for binary operation", n);
- return -1;
- }
- a += da; b += db;
- }
-
- a = (char **) ap;
- b = (char **) bp;
- ic = (char *) cp;
- c = NULL;
-
- switch (op)
- {
- case SLANG_DIVIDE:
- case SLANG_MINUS:
- default:
- return 0;
-
- case SLANG_PLUS:
- /* Concat */
- c = (char **) cp;
- for (n = 0; n < n_max; n++)
- {
- if (NULL == (c[n] = SLang_concat_slstrings (*a, *b)))
- goto return_error;
-
- a += da; b += db;
- }
- break;
-
- case SLANG_NE:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (0 != strcmp (*a, *b));
- a += da;
- b += db;
- }
- break;
- case SLANG_GT:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (strcmp (*a, *b) > 0);
- a += da;
- b += db;
- }
- break;
- case SLANG_GE:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (strcmp (*a, *b) >= 0);
- a += da;
- b += db;
- }
- break;
- case SLANG_LT:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (strcmp (*a, *b) < 0);
- a += da;
- b += db;
- }
- break;
- case SLANG_LE:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (strcmp (*a, *b) <= 0);
- a += da;
- b += db;
- }
- break;
- case SLANG_EQ:
- for (n = 0; n < n_max; n++)
- {
- ic [n] = (strcmp (*a, *b) == 0);
- a += da;
- b += db;
- }
- break;
- }
- return 1;
-
- return_error:
- if (c != NULL)
- {
- unsigned int nn;
- for (nn = 0; nn < n; nn++)
- {
- SLang_free_slstring (c[nn]);
- c[nn] = NULL;
- }
- for (nn = n; nn < n_max; nn++)
- c[nn] = NULL;
- }
- return -1;
-}
-
-static void string_destroy (unsigned char unused, VOID_STAR s)
-{
- (void) unused;
- SLang_free_slstring (*(char **) s);
-}
-
-static int string_push (unsigned char unused, VOID_STAR sptr)
-{
- (void) unused;
- return SLang_push_string (*(char **) sptr);
-}
-
-static int string_cmp (unsigned char unused, VOID_STAR ap, VOID_STAR bp, int *c)
-{
- char *a, *b;
- (void) unused;
-
- a = *(char **) ap;
- b = *(char **) bp;
- if (a != b)
- {
- if (a == NULL) *c = -1;
- else if (b == NULL) *c = 1;
- else *c = strcmp (a, b);
- return 0;
- }
- *c = 0;
- return 0;
-}
-
-static int string_to_int (unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp)
-{
- char **s;
- unsigned int i;
- int *b;
-
- (void) a_type;
- (void) b_type;
-
- s = (char **) ap;
- b = (int *) bp;
- for (i = 0; i < na; i++)
- {
- if (s[i] == NULL) b[i] = 0;
- else b[i] = s[i][0];
- }
- return 1;
-}
-
-struct _SLang_Foreach_Context_Type
-{
- char *string;
- unsigned int n;
-};
-
-static SLang_Foreach_Context_Type *
-string_foreach_open (unsigned char type, unsigned int num)
-{
- char *s;
- SLang_Foreach_Context_Type *c;
-
- (void) type;
- if (num != 0)
- {
- SLang_verror (SL_NOT_IMPLEMENTED,
- "'foreach using' form not supported by String_Type");
- SLdo_pop_n (num + 1);
- return NULL;
- }
- if (-1 == SLang_pop_slstring (&s))
- return NULL;
-
- c = (SLang_Foreach_Context_Type *)SLmalloc (sizeof (SLang_Foreach_Context_Type));
- if (c == NULL)
- {
- SLang_free_slstring (s);
- return NULL;
- }
-
- memset ((char *) c, 0, sizeof (SLang_Foreach_Context_Type));
- c->string = s;
-
- return c;
-}
-
-static void string_foreach_close (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- (void) type;
- if (c == NULL) return;
- SLang_free_slstring (c->string);
- SLfree ((char *) c);
-}
-
-static int string_foreach (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- char ch;
-
- (void) type;
- ch = c->string[c->n];
- if (ch == 0)
- return 0; /* done */
-
- c->n += 1;
-
- if (-1 == SLclass_push_int_obj (SLANG_INT_TYPE, ch))
- return -1;
-
- return 1;
-}
-
-int _SLstring_list_push (_SLString_List_Type *p)
-{
- unsigned int num;
- int inum;
- SLang_Array_Type *at;
- char **buf;
-
- if ((buf = p->buf) == NULL)
- return SLang_push_null ();
-
- num = p->num;
- inum = (int) num;
-
- if (num == 0) num++;
- if (num != p->max_num)
- {
- if (NULL == (buf = (char **)SLrealloc ((char *) buf, sizeof (char *) * num)))
- {
- _SLstring_list_delete (p);
- return -1;
- }
- p->max_num = num;
- p->buf = buf;
- }
-
- if (NULL == (at = SLang_create_array (SLANG_STRING_TYPE, 0, (VOID_STAR) buf, &inum, 1)))
- {
- _SLstring_list_delete (p);
- return -1;
- }
- p->buf = NULL;
- _SLstring_list_delete (p);
- return SLang_push_array (at, 1);
-}
-
-int _SLstring_list_init (_SLString_List_Type *p, unsigned int max_num, unsigned int delta_num)
-{
- if (NULL == (p->buf = (char **) SLmalloc (max_num * sizeof (char *))))
- return -1;
-
- p->max_num = max_num;
- p->num = 0;
- p->delta_num = delta_num;
- return 0;
-}
-
-int _SLstring_list_append (_SLString_List_Type *p, char *s)
-{
- if (s == NULL)
- {
- _SLstring_list_delete (p);
- return -1;
- }
-
- if (p->max_num == p->num)
- {
- char **b;
- unsigned int max_num = p->num + p->delta_num;
- b = (char **)SLrealloc ((char *)p->buf, max_num * sizeof (char *));
- if (b == NULL)
- {
- _SLstring_list_delete (p);
- SLang_free_slstring (s);
- return -1;
- }
- p->buf = b;
- p->max_num = max_num;
- }
-
- p->buf[p->num] = s;
- p->num++;
- return 0;
-}
-
-void _SLstring_list_delete (_SLString_List_Type *p)
-{
- if (p->buf != NULL)
- {
- unsigned int i, imax;
- char **buf = p->buf;
- imax = p->num;
- for (i = 0; i < imax; i++)
- SLang_free_slstring (buf[i]);
- SLfree ((char *)buf);
- p->buf = NULL;
- }
-}
-
-/* Ref type */
-int SLang_pop_ref (SLang_Ref_Type **ref)
-{
- return SLclass_pop_ptr_obj (SLANG_REF_TYPE, (VOID_STAR *)ref);
-}
-
-/* Note: This is ok if ptr is NULL. Some routines rely on this behavior */
-int _SLang_push_ref (int is_global, VOID_STAR ptr)
-{
- SLang_Ref_Type *r;
-
- if (ptr == NULL)
- return SLang_push_null ();
-
- r = (SLang_Ref_Type *) SLmalloc (sizeof (SLang_Ref_Type));
- if (r == NULL) return -1;
-
- r->is_global = is_global;
- r->v.nt = (SLang_Name_Type *) ptr;
-
- if (-1 == SLclass_push_ptr_obj (SLANG_REF_TYPE, (VOID_STAR) r))
- {
- SLfree ((char *) r);
- return -1;
- }
- return 0;
-}
-
-static void ref_destroy (unsigned char type, VOID_STAR ptr)
-{
- (void) type;
- SLfree ((char *) *(SLang_Ref_Type **)ptr);
-}
-
-void SLang_free_ref (SLang_Ref_Type *ref)
-{
- SLfree ((char *) ref);
-}
-
-static int ref_push (unsigned char type, VOID_STAR ptr)
-{
- SLang_Ref_Type *ref;
-
- (void) type;
-
- ref = *(SLang_Ref_Type **) ptr;
-
- if (ref == NULL)
- return SLang_push_null ();
-
- return _SLang_push_ref (ref->is_global, (VOID_STAR) ref->v.nt);
-}
-
-int SLang_assign_to_ref (SLang_Ref_Type *ref, unsigned char type, VOID_STAR v)
-{
- SLang_Object_Type *stkptr;
- SLang_Class_Type *cl;
-
- cl = _SLclass_get_class (type);
-
- /* Use apush since this function is passing ``array'' bytes rather than the
- * address of the data. I need to somehow make this more consistent. To
- * see what I mean, consider:
- *
- * double z[2];
- * char *s = "silly";
- * int i;
- *
- * SLang_assign_to_ref (ref, SLANG_INT_TYPE, &i);
- * SLang_assign_to_ref (ref, SLANG_STRING_TYPE, &s);
- * SLang_assign_to_ref (ref, SLANG_COMPLEX_TYPE, z);
- *
- * That is, all external routines that take a VOID_STAR argument need to
- * be documented such that how the function should be called with the
- * various class_types.
- */
- if (-1 == (*cl->cl_apush) (type, v))
- return -1;
-
- stkptr = _SLStack_Pointer;
- if (0 == _SLang_deref_assign (ref))
- return 0;
-
- if (stkptr != _SLStack_Pointer)
- SLdo_pop ();
-
- return -1;
-}
-
-static char *ref_string (unsigned char type, VOID_STAR ptr)
-{
- SLang_Ref_Type *ref;
-
- (void) type;
- ref = *(SLang_Ref_Type **) ptr;
- if (ref->is_global)
- {
- char *name, *s;
-
- name = ref->v.nt->name;
- if ((name != NULL)
- && (NULL != (s = SLmalloc (strlen(name) + 2))))
- {
- *s = '&';
- strcpy (s + 1, name);
- return s;
- }
-
- return NULL;
- }
- return SLmake_string ("Local Variable Reference");
-}
-
-static int ref_dereference (unsigned char unused, VOID_STAR ptr)
-{
- (void) unused;
- return _SLang_dereference_ref (*(SLang_Ref_Type **) ptr);
-}
-
-static int ref_cmp (unsigned char type, VOID_STAR a, VOID_STAR b, int *c)
-{
- SLang_Ref_Type *ra, *rb;
-
- (void) type;
-
- ra = *(SLang_Ref_Type **)a;
- rb = *(SLang_Ref_Type **)b;
-
- if (ra == NULL)
- {
- if (rb == NULL) *c = 0;
- else *c = -1;
- return 0;
- }
- if (rb == NULL)
- {
- *c = 1;
- return 0;
- }
-
- if (ra->v.nt == rb->v.nt)
- *c = 0;
- else *c = strcmp (ra->v.nt->name, rb->v.nt->name);
- return 0;
-}
-
-
-SLang_Name_Type *SLang_pop_function (void)
-{
- SLang_Ref_Type *ref;
- SLang_Name_Type *f;
-
- if (SLang_peek_at_stack () == SLANG_STRING_TYPE)
- {
- char *name;
-
- if (-1 == SLang_pop_slstring (&name))
- return NULL;
-
- if (NULL == (f = SLang_get_function (name)))
- {
- SLang_verror (SL_UNDEFINED_NAME, "Function %s does not exist", name);
- SLang_free_slstring (name);
- return NULL;
- }
- SLang_free_slstring (name);
- return f;
- }
-
- if (-1 == SLang_pop_ref (&ref))
- return NULL;
-
- f = SLang_get_fun_from_ref (ref);
- SLang_free_ref (ref);
- return f;
-}
-
-/* This is a placeholder for version 2 */
-void SLang_free_function (SLang_Name_Type *f)
-{
- (void) f;
-}
-
-/* NULL type */
-int SLang_push_null (void)
-{
- return SLclass_push_ptr_obj (SLANG_NULL_TYPE, NULL);
-}
-
-int SLang_pop_null (void)
-{
- SLang_Object_Type obj;
- return _SLang_pop_object_of_type (SLANG_NULL_TYPE, &obj, 0);
-}
-
-static int null_push (unsigned char unused, VOID_STAR ptr_unused)
-{
- (void) unused; (void) ptr_unused;
- return SLang_push_null ();
-}
-
-static int null_pop (unsigned char type, VOID_STAR ptr)
-{
- (void) type;
-
- if (-1 == SLang_pop_null ())
- return -1;
-
- *(char **) ptr = NULL;
- return 0;
-}
-
-/* Implement foreach (NULL) using (whatever) to do nothing. This is useful
- * because suppose that X is a list but is NULL in some situations. Then
- * when it is NULL, we want foreach(X) to do nothing.
- */
-static SLang_Foreach_Context_Type *
-null_foreach_open (unsigned char type, unsigned int num)
-{
- (void) type;
- SLdo_pop_n (num + 1);
- return (SLang_Foreach_Context_Type *)1;
-}
-
-static void null_foreach_close (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- (void) type;
- (void) c;
-}
-
-static int null_foreach (unsigned char type, SLang_Foreach_Context_Type *c)
-{
- (void) type;
- (void) c;
- return 0;
-}
-
-static int null_to_bool (unsigned char type, int *t)
-{
- (void) type;
- *t = 0;
- return SLang_pop_null ();
-}
-
-/* AnyType */
-int _SLanytype_typecast (unsigned char a_type, VOID_STAR ap, unsigned int na,
- unsigned char b_type, VOID_STAR bp)
-{
- SLang_Class_Type *cl;
- SLang_Any_Type **any;
- unsigned int i;
- unsigned int sizeof_type;
-
- (void) b_type;
-
- any = (SLang_Any_Type **) bp;
-
- cl = _SLclass_get_class (a_type);
- sizeof_type = cl->cl_sizeof_type;
-
- for (i = 0; i < na; i++)
- {
- if ((-1 == (*cl->cl_apush) (a_type, ap))
- || (-1 == SLang_pop_anytype (&any[i])))
- {
- while (i != 0)
- {
- i--;
- SLang_free_anytype (any[i]);
- any[i] = NULL;
- }
- return -1;
- }
- ap = (VOID_STAR)((char *)ap + sizeof_type);
- }
-
- return 1;
-}
-
-int SLang_pop_anytype (SLang_Any_Type **any)
-{
- SLang_Object_Type *obj;
-
- *any = NULL;
-
- if (NULL == (obj = (SLang_Object_Type *) SLmalloc (sizeof (SLang_Object_Type))))
- return -1;
-
- if (-1 == SLang_pop (obj))
- {
- SLfree ((char *) obj);
- return -1;
- }
- *any = (SLang_Any_Type *)obj;
- return 0;
-}
-
-/* This function will result in an object that is represented by the
- * anytype object.
- */
-int SLang_push_anytype (SLang_Any_Type *any)
-{
- return _SLpush_slang_obj ((SLang_Object_Type *)any);
-}
-
-/* After this call, the stack will contain an Any_Type object */
-static int anytype_push (unsigned char type, VOID_STAR ptr)
-{
- SLang_Any_Type *obj;
-
- /* Push the object onto the stack, then pop it back off into our anytype
- * container. That way, any memory managing associated with the type
- * will be performed automatically. Another way to think of it is that
- * pushing an Any_Type onto the stack will create another copy of the
- * object represented by it.
- */
- if (-1 == _SLpush_slang_obj (*(SLang_Object_Type **)ptr))
- return -1;
-
- if (-1 == SLang_pop_anytype (&obj))
- return -1;
-
- /* There is no need to reference count the anytype objects since every
- * push results in a new anytype container.
- */
- if (-1 == SLclass_push_ptr_obj (type, (VOID_STAR) obj))
- {
- SLang_free_anytype (obj);
- return -1;
- }
-
- return 0;
-}
-
-static void anytype_destroy (unsigned char type, VOID_STAR ptr)
-{
- SLang_Object_Type *obj;
-
- (void) type;
- obj = *(SLang_Object_Type **)ptr;
- SLang_free_object (obj);
- SLfree ((char *) obj);
-}
-
-void SLang_free_anytype (SLang_Any_Type *any)
-{
- if (any != NULL)
- anytype_destroy (SLANG_ANY_TYPE, (VOID_STAR) &any);
-}
-
-static int anytype_dereference (unsigned char unused, VOID_STAR ptr)
-{
- (void) unused;
- return _SLpush_slang_obj (*(SLang_Object_Type **) ptr);
-}
-
-/* SLANG_INTP_TYPE */
-static int intp_push (unsigned char unused, VOID_STAR ptr)
-{
- (void) unused;
- return SLclass_push_int_obj (SLANG_INT_TYPE, **(int **)ptr);
-}
-
-static int intp_pop (unsigned char unused, VOID_STAR ptr)
-{
- (void) unused;
- return SLang_pop_integer (*(int **) ptr);
-}
-
-static int undefined_push (unsigned char t, VOID_STAR p)
-{
- (void) t; (void) p;
- if (SLang_Error == 0)
- SLang_Error = SL_VARIABLE_UNINITIALIZED;
- return -1;
-}
-
-int _SLregister_types (void)
-{
- SLang_Class_Type *cl;
-
- /* A good compiler should optimize this code away. */
- if ((sizeof(short) != SIZEOF_SHORT)
- || (sizeof(int) != SIZEOF_INT)
- || (sizeof(long) != SIZEOF_LONG)
- || (sizeof(float) != SIZEOF_FLOAT)
- || (sizeof(double) != SIZEOF_DOUBLE))
- SLang_exit_error ("S-Lang Library not built properly. Fix SIZEOF_* in config.h and recompile");
-
- if (-1 == _SLclass_init ())
- return -1;
-
- /* Undefined Type */
- if (NULL == (cl = SLclass_allocate_class ("Undefined_Type")))
- return -1;
- (void) SLclass_set_push_function (cl, undefined_push);
- (void) SLclass_set_pop_function (cl, undefined_push);
- if (-1 == SLclass_register_class (cl, SLANG_UNDEFINED_TYPE, sizeof (int),
- SLANG_CLASS_TYPE_SCALAR))
- return -1;
- /* Make Void_Type a synonym for Undefined_Type. Note that this does
- * not mean that Void_Type represents SLANG_VOID_TYPE. Void_Type is
- * used by array_map to indicate no array is to be created.
- */
- if (-1 == SLclass_create_synonym ("Void_Type", SLANG_UNDEFINED_TYPE))
- return -1;
-
- if (-1 == _SLarith_register_types ())
- return -1;
-
- /* SLANG_INTP_TYPE */
- if (NULL == (cl = SLclass_allocate_class ("_IntegerP_Type")))
- return -1;
- (void) SLclass_set_push_function (cl, intp_push);
- (void) SLclass_set_pop_function (cl, intp_pop);
- if (-1 == SLclass_register_class (cl, SLANG_INTP_TYPE, sizeof (int),
- SLANG_CLASS_TYPE_SCALAR))
- return -1;
-
- /* String Type */
-
- if (NULL == (cl = SLclass_allocate_class ("String_Type")))
- return -1;
- (void) SLclass_set_destroy_function (cl, string_destroy);
- (void) SLclass_set_push_function (cl, string_push);
- cl->cl_foreach_open = string_foreach_open;
- cl->cl_foreach_close = string_foreach_close;
- cl->cl_foreach = string_foreach;
- cl->cl_cmp = string_cmp;
- if (-1 == SLclass_register_class (cl, SLANG_STRING_TYPE, sizeof (char *),
- SLANG_CLASS_TYPE_PTR))
- return -1;
-
- /* ref Type */
- if (NULL == (cl = SLclass_allocate_class ("Ref_Type")))
- return -1;
- cl->cl_dereference = ref_dereference;
- cl->cl_push = ref_push;
- cl->cl_destroy = ref_destroy;
- cl->cl_string = ref_string;
- cl->cl_cmp = ref_cmp;
- if (-1 == SLclass_register_class (cl, SLANG_REF_TYPE,
- sizeof (SLang_Ref_Type *),
- SLANG_CLASS_TYPE_PTR))
- return -1;
-
- /* NULL Type */
-
- if (NULL == (cl = SLclass_allocate_class ("Null_Type")))
- return -1;
- cl->cl_push = null_push;
- cl->cl_pop = null_pop;
- cl->cl_foreach_open = null_foreach_open;
- cl->cl_foreach_close = null_foreach_close;
- cl->cl_foreach = null_foreach;
- cl->cl_to_bool = null_to_bool;
- if (-1 == SLclass_register_class (cl, SLANG_NULL_TYPE, sizeof (char *),
- SLANG_CLASS_TYPE_SCALAR))
- return -1;
-
- /* AnyType */
- if (NULL == (cl = SLclass_allocate_class ("Any_Type")))
- return -1;
- (void) SLclass_set_push_function (cl, anytype_push);
- (void) SLclass_set_destroy_function (cl, anytype_destroy);
- cl->cl_dereference = anytype_dereference;
- if (-1 == SLclass_register_class (cl, SLANG_ANY_TYPE, sizeof (VOID_STAR),
- SLANG_CLASS_TYPE_PTR))
- return -1;
-
- if (-1 == _SLang_init_bstring ())
- return -1;
-
- if ((-1 == SLclass_add_typecast (SLANG_STRING_TYPE, SLANG_INT_TYPE, string_to_int, 0))
- || (-1 == SLclass_add_binary_op (SLANG_STRING_TYPE, SLANG_STRING_TYPE, string_string_bin_op, string_string_bin_op_result)))
- return -1;
-
- return 0;
-}
-
diff --git a/mdk-stage1/slang/slutty.c b/mdk-stage1/slang/slutty.c
deleted file mode 100644
index 636c1bb90..000000000
--- a/mdk-stage1/slang/slutty.c
+++ /dev/null
@@ -1,596 +0,0 @@
-/* slutty.c --- Unix Low level terminal (tty) functions for S-Lang */
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-#include "slinclud.h"
-
-#include <signal.h>
-/* sequent support thanks to Kenneth Lorber <keni@oasys.dt.navy.mil> */
-/* SYSV (SYSV ISC R3.2 v3.0) provided by iain.lea@erlm.siemens.de */
-
-#if defined (_AIX) && !defined (_ALL_SOURCE)
-# define _ALL_SOURCE /* so NBBY is defined in <sys/types.h> */
-#endif
-
-#include <sys/time.h>
-#include <sys/types.h>
-
-#ifdef SYSV
-# include <fcntl.h>
-# ifndef CRAY
-# include <sys/termio.h>
-# include <sys/stream.h>
-# include <sys/ptem.h>
-# include <sys/tty.h>
-# endif
-#endif
-
-#ifdef __BEOS__
-/* Prototype for select */
-# include <net/socket.h>
-#endif
-
-#include <sys/file.h>
-
-#ifndef sun
-# include <sys/ioctl.h>
-#endif
-
-#ifdef __QNX__
-# include <sys/select.h>
-#endif
-
-#include <sys/stat.h>
-#include <errno.h>
-
-#if defined (_AIX) && !defined (FD_SET)
-# include <sys/select.h> /* for FD_ISSET, FD_SET, FD_ZERO */
-#endif
-
-#ifndef O_RDWR
-# include <fcntl.h>
-#endif
-
-#include "slang.h"
-#include "_slang.h"
-
-int SLang_TT_Read_FD = -1;
-int SLang_TT_Baud_Rate;
-
-#ifdef HAVE_TERMIOS_H
-# if !defined(HAVE_TCGETATTR) || !defined(HAVE_TCSETATTR)
-# undef HAVE_TERMIOS_H
-# endif
-#endif
-
-#ifndef HAVE_TERMIOS_H
-
-# if !defined(CBREAK) && defined(sun)
-# ifndef BSD_COMP
-# define BSD_COMP 1
-# endif
-# include <sys/ioctl.h>
-# endif
-
-typedef struct
- {
- struct tchars t;
- struct ltchars lt;
- struct sgttyb s;
- }
-TTY_Termio_Type;
-#else
-# include <termios.h>
-typedef struct termios TTY_Termio_Type;
-#endif
-
-static TTY_Termio_Type Old_TTY;
-
-#ifdef HAVE_TERMIOS_H
-typedef struct
-{
- unsigned int key;
- unsigned int value;
-} Baud_Rate_Type;
-
-static Baud_Rate_Type Baud_Rates [] =
-{
-#ifdef B0
- {B0, 0},
-#endif
-#ifdef B50
- {B50, 50},
-#endif
-#ifdef B75
- {B75, 75},
-#endif
-#ifdef B110
- {B110, 110},
-#endif
-#ifdef B134
- {B134, 134},
-#endif
-#ifdef B150
- {B150, 150},
-#endif
-#ifdef B200
- {B200, 200},
-#endif
-#ifdef B300
- {B300, 300},
-#endif
-#ifdef B600
- {B600, 600},
-#endif
-#ifdef B1200
- {B1200, 1200},
-#endif
-#ifdef B1800
- {B1800, 1800},
-#endif
-#ifdef B2400
- {B2400, 2400},
-#endif
-#ifdef B4800
- {B4800, 4800},
-#endif
-#ifdef B9600
- {B9600, 9600},
-#endif
-#ifdef B19200
- {B19200, 19200},
-#endif
-#ifdef B38400
- {B38400, 38400},
-#endif
-#ifdef B57600
- {B57600, 57600},
-#endif
-#ifdef B115200
- {B115200, 115200},
-#endif
-#ifdef B230400
- {B230400, 230400},
-#endif
- {0, 0}
-};
-
-static void
-set_baud_rate (TTY_Termio_Type *tty)
-{
-#ifdef HAVE_CFGETOSPEED
- unsigned int speed;
- Baud_Rate_Type *b, *bmax;
-
- if (SLang_TT_Baud_Rate)
- return; /* already set */
-
- speed = (unsigned int) cfgetospeed (tty);
-
- b = Baud_Rates;
- bmax = b + (sizeof (Baud_Rates)/sizeof(Baud_Rates[0]));
- while (b < bmax)
- {
- if (b->key == speed)
- {
- SLang_TT_Baud_Rate = b->value;
- return;
- }
- b++;
- }
-#else
- (void) tty;
-#endif
-}
-
-#endif /* HAVE_TERMIOS_H */
-
-#ifdef HAVE_TERMIOS_H
-# define GET_TERMIOS(fd, x) tcgetattr(fd, x)
-# define SET_TERMIOS(fd, x) tcsetattr(fd, TCSADRAIN, x)
-#else
-# ifdef TCGETS
-# define GET_TERMIOS(fd, x) ioctl(fd, TCGETS, x)
-# define SET_TERMIOS(fd, x) ioctl(fd, TCSETS, x)
-# else
-# define X(x,m) &(((TTY_Termio_Type *)(x))->m)
-# define GET_TERMIOS(fd, x) \
- ((ioctl(fd, TIOCGETC, X(x,t)) || \
- ioctl(fd, TIOCGLTC, X(x,lt)) || \
- ioctl(fd, TIOCGETP, X(x,s))) ? -1 : 0)
-# define SET_TERMIOS(fd, x) \
- ((ioctl(fd, TIOCSETC, X(x,t)) ||\
- ioctl(fd, TIOCSLTC, X(x,lt)) || \
- ioctl(fd, TIOCSETP, X(x,s))) ? -1 : 0)
-# endif
-#endif
-
-static int TTY_Inited = 0;
-static int TTY_Open = 0;
-
-#ifdef ultrix /* Ultrix gets _POSIX_VDISABLE wrong! */
-# define NULL_VALUE -1
-#else
-# ifdef _POSIX_VDISABLE
-# define NULL_VALUE _POSIX_VDISABLE
-# else
-# define NULL_VALUE 255
-# endif
-#endif
-
-int SLang_init_tty (int abort_char, int no_flow_control, int opost)
-{
- TTY_Termio_Type newtty;
-
- SLsig_block_signals ();
-
- if (TTY_Inited)
- {
- SLsig_unblock_signals ();
- return 0;
- }
-
- TTY_Open = 0;
-
- if ((SLang_TT_Read_FD == -1)
- || (1 != isatty (SLang_TT_Read_FD)))
- {
-#ifdef O_RDWR
-# ifndef __BEOS__ /* I have been told that BEOS will HANG if passed /dev/tty */
- if ((SLang_TT_Read_FD = open("/dev/tty", O_RDWR)) >= 0)
- {
- TTY_Open = 1;
- }
-# endif
-#endif
- if (TTY_Open == 0)
- {
- SLang_TT_Read_FD = fileno (stderr);
- if (1 != isatty (SLang_TT_Read_FD))
- {
- SLang_TT_Read_FD = fileno (stdin);
- if (1 != isatty (SLang_TT_Read_FD))
- {
- fprintf (stderr, "Failed to open terminal.");
- return -1;
- }
- }
- }
- }
-
- SLang_Abort_Char = abort_char;
-
- /* Some systems may not permit signals to be blocked. As a result, the
- * return code must be checked.
- */
- while (-1 == GET_TERMIOS(SLang_TT_Read_FD, &Old_TTY))
- {
- if (errno != EINTR)
- {
- SLsig_unblock_signals ();
- return -1;
- }
- }
-
- while (-1 == GET_TERMIOS(SLang_TT_Read_FD, &newtty))
- {
- if (errno != EINTR)
- {
- SLsig_unblock_signals ();
- return -1;
- }
- }
-
-#ifndef HAVE_TERMIOS_H
- newtty.s.sg_flags &= ~(ECHO);
- newtty.s.sg_flags &= ~(CRMOD);
- /* if (Flow_Control == 0) newtty.s.sg_flags &= ~IXON; */
- newtty.t.t_eofc = 1;
- if (abort_char == -1) SLang_Abort_Char = newtty.t.t_intrc;
- newtty.t.t_intrc = SLang_Abort_Char; /* ^G */
- newtty.t.t_quitc = 255;
- newtty.lt.t_suspc = 255; /* to ignore ^Z */
- newtty.lt.t_dsuspc = 255; /* to ignore ^Y */
- newtty.lt.t_lnextc = 255;
- newtty.s.sg_flags |= CBREAK; /* do I want cbreak or raw????? */
-#else
-
- /* get baud rate */
-
- newtty.c_iflag &= ~(ECHO | INLCR | ICRNL);
-#ifdef ISTRIP
- /* newtty.c_iflag &= ~ISTRIP; */
-#endif
- if (opost == 0) newtty.c_oflag &= ~OPOST;
-
- set_baud_rate (&newtty);
-
- if (no_flow_control) newtty.c_iflag &= ~IXON; else newtty.c_iflag |= IXON;
-
- newtty.c_cc[VEOF] = 1;
- newtty.c_cc[VMIN] = 1;
- newtty.c_cc[VTIME] = 0;
- newtty.c_lflag = ISIG | NOFLSH;
- if (abort_char == -1) SLang_Abort_Char = newtty.c_cc[VINTR];
- newtty.c_cc[VINTR] = SLang_Abort_Char; /* ^G */
- newtty.c_cc[VQUIT] = NULL_VALUE;
- newtty.c_cc[VSUSP] = NULL_VALUE; /* to ignore ^Z */
-#ifdef VDSUSP
- newtty.c_cc[VDSUSP] = NULL_VALUE; /* to ignore ^Y */
-#endif
-#ifdef VLNEXT
- newtty.c_cc[VLNEXT] = NULL_VALUE; /* to ignore ^V ? */
-#endif
-#ifdef VSWTCH
- newtty.c_cc[VSWTCH] = NULL_VALUE; /* to ignore who knows what */
-#endif
-#endif /* NOT HAVE_TERMIOS_H */
-
- while (-1 == SET_TERMIOS(SLang_TT_Read_FD, &newtty))
- {
- if (errno != EINTR)
- {
- SLsig_unblock_signals ();
- return -1;
- }
- }
-
- TTY_Inited = 1;
- SLsig_unblock_signals ();
- return 0;
-}
-
-void SLtty_set_suspend_state (int mode)
-{
- TTY_Termio_Type newtty;
-
- SLsig_block_signals ();
-
- if (TTY_Inited == 0)
- {
- SLsig_unblock_signals ();
- return;
- }
-
- while ((-1 == GET_TERMIOS (SLang_TT_Read_FD, &newtty))
- && (errno == EINTR))
- ;
-
-#ifndef HAVE_TERMIOS_H
- /* I do not know if all systems define the t_dsuspc field */
- if (mode == 0)
- {
- newtty.lt.t_suspc = 255;
- newtty.lt.t_dsuspc = 255;
- }
- else
- {
- newtty.lt.t_suspc = Old_TTY.lt.t_suspc;
- newtty.lt.t_dsuspc = Old_TTY.lt.t_dsuspc;
- }
-#else
- if (mode == 0)
- {
- newtty.c_cc[VSUSP] = NULL_VALUE;
-#ifdef VDSUSP
- newtty.c_cc[VDSUSP] = NULL_VALUE;
-#endif
- }
- else
- {
- newtty.c_cc[VSUSP] = Old_TTY.c_cc[VSUSP];
-#ifdef VDSUSP
- newtty.c_cc[VDSUSP] = Old_TTY.c_cc[VDSUSP];
-#endif
- }
-#endif
-
- while ((-1 == SET_TERMIOS (SLang_TT_Read_FD, &newtty))
- && (errno == EINTR))
- ;
-
- SLsig_unblock_signals ();
-}
-
-void SLang_reset_tty (void)
-{
- SLsig_block_signals ();
-
- if (TTY_Inited == 0)
- {
- SLsig_unblock_signals ();
- return;
- }
-
- while ((-1 == SET_TERMIOS(SLang_TT_Read_FD, &Old_TTY))
- && (errno == EINTR))
- ;
-
- if (TTY_Open)
- {
- while ((-1 == close (SLang_TT_Read_FD))
- && (errno == EINTR))
- ;
-
- TTY_Open = 0;
- SLang_TT_Read_FD = -1;
- }
-
- TTY_Inited = 0;
- SLsig_unblock_signals ();
-}
-
-static void default_sigint (int sig)
-{
- sig = errno; /* use parameter */
-
- SLKeyBoard_Quit = 1;
- if (SLang_Ignore_User_Abort == 0) SLang_Error = SL_USER_BREAK;
- SLsignal_intr (SIGINT, default_sigint);
- errno = sig;
-}
-
-int SLang_set_abort_signal (void (*hand)(int))
-{
- int save_errno = errno;
- SLSig_Fun_Type *f;
-
- if (hand == NULL) hand = default_sigint;
- f = SLsignal_intr (SIGINT, hand);
-
- errno = save_errno;
-
- if (f == (SLSig_Fun_Type *) SIG_ERR)
- return -1;
-
- return 0;
-}
-
-#ifndef FD_SET
-#define FD_SET(fd, tthis) *(tthis) = 1 << (fd)
-#define FD_ZERO(tthis) *(tthis) = 0
-#define FD_ISSET(fd, tthis) (*(tthis) & (1 << fd))
-typedef int fd_set;
-#endif
-
-static fd_set Read_FD_Set;
-
-/* HACK: If > 0, use 1/10 seconds. If < 0, use 1/1000 seconds */
-
-int _SLsys_input_pending(int tsecs)
-{
- struct timeval wait;
- long usecs, secs;
-
- if (TTY_Inited == 0) return -1;
-
- if (tsecs >= 0)
- {
- secs = tsecs / 10;
- usecs = (tsecs % 10) * 100000;
- }
- else
- {
- tsecs = -tsecs;
- secs = tsecs / 1000;
- usecs = (tsecs % 1000) * 1000;
- }
-
- wait.tv_sec = secs;
- wait.tv_usec = usecs;
-
- FD_ZERO(&Read_FD_Set);
- FD_SET(SLang_TT_Read_FD, &Read_FD_Set);
-
- return select(SLang_TT_Read_FD + 1, &Read_FD_Set, NULL, NULL, &wait);
-}
-
-int (*SLang_getkey_intr_hook) (void);
-
-static int handle_interrupt (void)
-{
- if (SLang_getkey_intr_hook != NULL)
- {
- int save_tty_fd = SLang_TT_Read_FD;
-
- if (-1 == (*SLang_getkey_intr_hook) ())
- return -1;
-
- if (save_tty_fd != SLang_TT_Read_FD)
- return -1;
- }
-
- return 0;
-}
-
-unsigned int _SLsys_getkey (void)
-{
- unsigned char c;
-
- if (TTY_Inited == 0)
- {
- int ic = fgetc (stdin);
- if (ic == EOF) return SLANG_GETKEY_ERROR;
- return (unsigned int) ic;
- }
-
- while (1)
- {
- int ret;
-
- if (SLKeyBoard_Quit)
- return SLang_Abort_Char;
-
- if (0 == (ret = _SLsys_input_pending (100)))
- continue;
-
- if (ret != -1)
- break;
-
- if (SLKeyBoard_Quit)
- return SLang_Abort_Char;
-
- if (errno == EINTR)
- {
- if (-1 == handle_interrupt ())
- return SLANG_GETKEY_ERROR;
-
- continue;
- }
-
- break; /* let read handle it */
- }
-
- while (1)
- {
- int status = read(SLang_TT_Read_FD, (char *) &c, 1);
-
- if (status > 0)
- break;
-
- if (status == 0)
- {
- /* We are at the end of a file. Let application handle it. */
- return SLANG_GETKEY_ERROR;
- }
-
- if (errno == EINTR)
- {
- if (-1 == handle_interrupt ())
- return SLANG_GETKEY_ERROR;
-
- if (SLKeyBoard_Quit)
- return SLang_Abort_Char;
-
- continue;
- }
-#ifdef EAGAIN
- if (errno == EAGAIN)
- {
- sleep (1);
- continue;
- }
-#endif
-#ifdef EWOULDBLOCK
- if (errno == EWOULDBLOCK)
- {
- sleep (1);
- continue;
- }
-#endif
-#ifdef EIO
- if (errno == EIO)
- {
- SLang_exit_error ("_SLsys_getkey: EIO error.");
- }
-#endif
- return SLANG_GETKEY_ERROR;
- }
-
- return((unsigned int) c);
-}
-
diff --git a/mdk-stage1/slang/slxstrng.c b/mdk-stage1/slang/slxstrng.c
deleted file mode 100644
index 3f8a4dffa..000000000
--- a/mdk-stage1/slang/slxstrng.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (c) 1992, 1999, 2001 John E. Davis
- * This file is part of the S-Lang library.
- *
- * You may distribute under the terms of either the GNU General Public
- * License or the Perl Artistic License.
- */
-
-/* These routines are simple and inefficient. They were designed to work on
- * SunOS when using Electric Fence.
- */
-
-#include "slang.h"
-#include "_slang.h"
-char *SLstrcpy(register char *aa, register char *b)
-{
- char *a = aa;
- while ((*a++ = *b++) != 0);
- return aa;
-}
-
-int SLstrcmp(register char *a, register char *b)
-{
- while (*a && (*a == *b))
- {
- a++;
- b++;
- }
- if (*a) return((unsigned char) *a - (unsigned char) *b);
- else if (*b) return ((unsigned char) *a - (unsigned char) *b);
- else return 0;
-}
-
-char *SLstrncpy(char *a, register char *b,register int n)
-{
- register char *aa = a;
- while ((n > 0) && *b)
- {
- *aa++ = *b++;
- n--;
- }
- while (n-- > 0) *aa++ = 0;
- return (a);
-}
diff --git a/mdk-stage1/stage1.c b/mdk-stage1/stage1.c
index 47473e9d7..94bb1e0df 100644
--- a/mdk-stage1/stage1.c
+++ b/mdk-stage1/stage1.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (was gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000-2004 Mandriva
*
@@ -121,7 +121,7 @@ static pid_t shell_pid = 0;
static void spawn_shell(void)
{
int fd;
- char * shell_name[] = { "/sbin/sh", NULL };
+ char * shell_name[] = { "/bin/sh", NULL };
log_message("spawning a shell");
@@ -219,22 +219,18 @@ static void spawn_interactive(void)
static void handle_pcmcia(void)
{
char * pcmcia_adapter;
- if (kernel_version() == 2) {
- stg1_error_message("We now use kernel pcmcia support and this won't work with a 2.2 kernel.");
- return;
- }
pcmcia_adapter = pcmcia_probe();
if (!pcmcia_adapter) {
log_message("no pcmcia adapter found");
return;
}
- my_insmod("pcmcia_core", ANY_DRIVER_TYPE, NULL, 0);
- my_insmod(pcmcia_adapter, ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("pcmcia_core", ANY_DRIVER_TYPE, NULL);
+ my_modprobe(pcmcia_adapter, ANY_DRIVER_TYPE, NULL);
/* ds is an alias for pcmcia in recent 2.6 kernels
but we don't have modules.alias in install, so try to load both */
- my_insmod("ds", ANY_DRIVER_TYPE, NULL, 0);
- my_insmod("pcmcia", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("ds", ANY_DRIVER_TYPE, NULL);
+ my_modprobe("pcmcia", ANY_DRIVER_TYPE, NULL);
/* setup a dynamic resource database for non statically mapped PCMCIA sockets */
pcmcia_socket_startup(-1);
@@ -252,8 +248,9 @@ static void handle_hid(void)
entry_list = hid_probe();
for (i = 0; i < entry_list.nb; i++) {
if (entry_list.entries[i].module != NULL)
- my_insmod(entry_list.entries[i].module, ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe(entry_list.entries[i].module, ANY_DRIVER_TYPE, NULL);
}
+ my_modprobe("hid_generic", ANY_DRIVER_TYPE, NULL);
}
@@ -347,39 +344,8 @@ static void method_select_and_prepare(void)
}
#endif
-static enum return_type create_initial_fs_symlinks(char* symlinks)
-{
- FILE *f;
- char buf[5000];
-
- if (scall(!(f = fopen(symlinks, "rb")), "fopen"))
- return RETURN_ERROR;
- while (fgets(buf, sizeof(buf), f)) {
- char oldpath[500], newpath[500];
- buf[strlen(buf)-1] = '\0'; // trim \n
- if (sscanf(buf, "%s %s", oldpath, newpath) != 2) {
- sprintf(oldpath, "%s%s", STAGE2_LOCATION, buf);
- sprintf(newpath, "%s", buf);
- }
- recursiveRemove_if_it_exists(newpath);
- log_message("creating symlink %s -> %s", oldpath, newpath);
- if (scall(symlink(oldpath, newpath), "symlink"))
- return RETURN_ERROR;
- }
- fclose(f);
- return RETURN_OK;
-}
-
void finish_preparing(void)
{
- recursiveRemove("/init");
-
- if (create_initial_fs_symlinks(STAGE2_LOCATION "/usr/share/symlinks") != RETURN_OK)
- stg1_fatal_message("Fatal error finishing initialization.");
-
- /* /tmp/syslog is used by the second init, so it must be copied now, not in stage2 */
- /* we remove it to ensure the old one is not copied over it in stage2 */
-
#ifdef SPAWN_SHELL
if (shell_pid != 0) {
int fd;
@@ -423,7 +389,6 @@ int main(int argc __attribute__ ((unused)), char **argv __attribute__ ((unused))
spawn_shell();
#endif
init_modules_insmoding();
- init_firmware_loader();
init_frontend("Welcome to " DISTRIB_DESCR ", " __DATE__ " " __TIME__);
probe_that_type(VIRTIO_DEVICES, BUS_ANY);
@@ -472,7 +437,7 @@ int main(int argc __attribute__ ((unused)), char **argv __attribute__ ((unused))
if (IS_RESCUE)
return 66; /* ask init to exec new init */
- else
- return 0x35; /* ask init to run stage2 binary */
+
+ return 0;
#endif
}
diff --git a/mdk-stage1/stage1.h b/mdk-stage1/stage1.h
index 96215e9a7..575241323 100644
--- a/mdk-stage1/stage1.h
+++ b/mdk-stage1/stage1.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/stdio-frontend.c b/mdk-stage1/stdio-frontend.c
index f99575bed..8c09330b5 100644
--- a/mdk-stage1/stdio-frontend.c
+++ b/mdk-stage1/stdio-frontend.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -53,7 +53,7 @@ static void get_any_response(void)
while (read(0, &t, 1) > 0);
fcntl(0, F_SETFL, 0);
}
-
+
static int get_int_response(void)
{
char s[50];
@@ -76,7 +76,6 @@ static char * get_string_response(char * initial_string)
/* I won't use a scanf/%s since I also want the null string to be accepted -- also, I want the initial_string */
char s[500];
int i = 0;
- char buf[10];
int b_index = 0;
char b;
@@ -89,7 +88,7 @@ static char * get_string_response(char * initial_string)
strcpy(s, initial_string);
i = strlen(s);
}
-
+
/* from ncurses/tinfo/lib_raw.c:(cbreak) */
tcgetattr(0, &t);
t.c_lflag &= ~ICANON;
@@ -108,7 +107,6 @@ static char * get_string_response(char * initial_string)
if (read(0, &b, 1) > 0) {
if (b_index == 1) {
if (b == 91) {
- buf[b_index] = b;
b_index++;
continue;
}
@@ -131,7 +129,7 @@ static char * get_string_response(char * initial_string)
b_index = 0;
continue;
}
-
+
if (b == 13)
break;
if (b == 127) {
@@ -146,7 +144,6 @@ static char * get_string_response(char * initial_string)
i--;
}
} else if (b == 27) {
- buf[b_index] = b;
b_index++;
} else {
printf("%c", b);
@@ -226,7 +223,7 @@ void update_progression_raw(int current_size)
}
} else
printf("\033[GStatus: [%8d] bytes loaded...", current_size);
-
+
fflush(stdout);
}
@@ -275,7 +272,7 @@ enum return_type ask_from_list_index(char *msg, char ** elems, char ** elems_com
}
if (j == 4)
j = 0;
-
+
if (elems_comments)
elems_comments++;
i++;
@@ -328,7 +325,7 @@ enum return_type ask_from_entries(char *msg, char ** questions, char *** answers
}
if (*answers == NULL)
- *answers = (char **) malloc(sizeof(char *) * i);
+ *answers = (char **) calloc(1, sizeof(char *) * i);
else
already_answers = *answers;
diff --git a/mdk-stage1/sysfs/Makefile b/mdk-stage1/sysfs/Makefile
deleted file mode 100644
index 56bd278dc..000000000
--- a/mdk-stage1/sysfs/Makefile
+++ /dev/null
@@ -1,39 +0,0 @@
- #******************************************************************************
- #
- # Guillaume Cottenceau (gc@mandriva.com)
- # Olivier Blin (blino@mandriva.com)
- #
- # Copyright 2006 Mandriva
- #
- # This software may be freely redistributed under the terms of the GNU
- # public license.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- #*****************************************************************************
-
-# minimal sysfs library ripped from sysfsutils-2.0.0
-
-top_dir = ..
-
-include $(top_dir)/Makefile.common
-
-TARGET = libsysfs.a
-
-all: $(TARGET)
-
-clean:
- rm -f *.o $(TARGET)
-
-FLAGS = -D__linux__ -Wall -Werror -Wno-deprecated-declarations -Os -fomit-frame-pointer -pipe -c -I.. -D_BSD_SOURCE
-
-OBJS = sysfs_attr.o sysfs_utils.o
-
-$(TARGET): $(OBJS)
- ar -cru $@ $^
- ranlib $@
-
-$(OBJS): %.o: %.c
- $(DIET) gcc $(FLAGS) $(INCLUDES) -c $< -o $@
diff --git a/mdk-stage1/sysfs/libsysfs.h b/mdk-stage1/sysfs/libsysfs.h
deleted file mode 100644
index 7bdf54fea..000000000
--- a/mdk-stage1/sysfs/libsysfs.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * libsysfs.h
- *
- * Header Definitions for libsysfs
- *
- * Copyright (C) IBM Corp. 2004-2005
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
-#ifndef _LIBSYSFS_H_
-#define _LIBSYSFS_H_
-
-#include <sys/types.h>
-#include <string.h>
-
-#define SYSFS_FSTYPE_NAME "sysfs"
-#define SYSFS_PROC_MNTS "/proc/mounts"
-#define SYSFS_BUS_NAME "bus"
-#define SYSFS_CLASS_NAME "class"
-#define SYSFS_BLOCK_NAME "block"
-#define SYSFS_DEVICES_NAME "devices"
-#define SYSFS_DRIVERS_NAME "drivers"
-#define SYSFS_MODULE_NAME "module"
-#define SYSFS_NAME_ATTRIBUTE "name"
-#define SYSFS_MOD_PARM_NAME "parameters"
-#define SYSFS_MOD_SECT_NAME "sections"
-#define SYSFS_UNKNOWN "unknown"
-#define SYSFS_PATH_ENV "SYSFS_PATH"
-
-#define SYSFS_PATH_MAX 256
-#define SYSFS_NAME_LEN 64
-#define SYSFS_BUS_ID_SIZE 32
-
-/* mount path for sysfs, can be overridden by exporting SYSFS_PATH */
-#define SYSFS_MNT_PATH "/sys"
-
-enum sysfs_attribute_method {
- SYSFS_METHOD_SHOW = 0x01, /* attr can be read by user */
- SYSFS_METHOD_STORE = 0x02, /* attr can be changed by user */
-};
-
-/*
- * NOTE:
- * 1. We have the statically allocated "name" as the first element of all
- * the structures. This feature is used in the "sorter" function for dlists
- * 2. As is the case with attrlist
- * 3. As is the case with path
- */
-struct sysfs_attribute {
- char name[SYSFS_NAME_LEN];
- char path[SYSFS_PATH_MAX];
- char *value;
- unsigned short len; /* value length */
- enum sysfs_attribute_method method; /* show and store */
-};
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Function Prototypes
- */
-extern int sysfs_get_name_from_path(const char *path, char *name, size_t len);
-
-/* sysfs directory and file access */
-extern void sysfs_close_attribute(struct sysfs_attribute *sysattr);
-extern struct sysfs_attribute *sysfs_open_attribute(const char *path);
-extern int sysfs_read_attribute(struct sysfs_attribute *sysattr);
-extern int sysfs_write_attribute(struct sysfs_attribute *sysattr,
- const char *new_value, size_t len);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _LIBSYSFS_H_ */
diff --git a/mdk-stage1/sysfs/sysfs.h b/mdk-stage1/sysfs/sysfs.h
deleted file mode 100644
index 76754a421..000000000
--- a/mdk-stage1/sysfs/sysfs.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * sysfs.h
- *
- * Internal Header Definitions for libsysfs
- *
- * Copyright (C) IBM Corp. 2003-2005
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
-#ifndef _SYSFS_H_
-#define _SYSFS_H_
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <string.h>
-#include <ctype.h>
-#include <dirent.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <errno.h>
-
-#define safestrcpy(to, from) strncpy(to, from, sizeof(to)-1)
-#define safestrcat(to, from) strncat(to, from, sizeof(to) - strlen(to)-1)
-
-#define safestrcpymax(to, from, max) \
-do { \
- to[max-1] = '\0'; \
- strncpy(to, from, max-1); \
-} while (0)
-
-#define safestrcatmax(to, from, max) \
-do { \
- to[max-1] = '\0'; \
- strncat(to, from, max - strlen(to)-1); \
-} while (0)
-
-extern struct sysfs_attribute *get_attribute(void *dev, const char *name);
-extern struct dlist *read_dir_subdirs(const char *path);
-extern struct dlist *read_dir_links(const char *path);
-extern struct dlist *get_dev_attributes_list(void *dev);
-extern struct dlist *get_attributes_list(struct dlist *alist, const char *path);
-
-/* Debugging */
-#ifdef DEBUG
-#define dprintf(format, arg...) fprintf(stderr, format, ## arg)
-#else
-#define dprintf(format, arg...) do { } while (0)
-#endif
-
-#endif /* _SYSFS_H_ */
diff --git a/mdk-stage1/sysfs/sysfs_attr.c b/mdk-stage1/sysfs/sysfs_attr.c
deleted file mode 100644
index 6d6771188..000000000
--- a/mdk-stage1/sysfs/sysfs_attr.c
+++ /dev/null
@@ -1,241 +0,0 @@
-/*
- * sysfs_dir.c
- *
- * Directory utility functions for libsysfs
- *
- * Copyright (C) IBM Corp. 2003-2005
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
-#include "libsysfs.h"
-#include "sysfs.h"
-
-/**
- * sysfs_close_attribute: closes and cleans up attribute
- * @sysattr: attribute to close.
- */
-void sysfs_close_attribute(struct sysfs_attribute *sysattr)
-{
- if (sysattr) {
- if (sysattr->value)
- free(sysattr->value);
- free(sysattr);
- }
-}
-
-/**
- * alloc_attribute: allocates and initializes attribute structure
- * returns struct sysfs_attribute with success and NULL with error.
- */
-static struct sysfs_attribute *alloc_attribute(void)
-{
- return (struct sysfs_attribute *)
- calloc(1, sizeof(struct sysfs_attribute));
-}
-
-/**
- * sysfs_open_attribute: creates sysfs_attribute structure
- * @path: path to attribute.
- * returns sysfs_attribute struct with success and NULL with error.
- */
-struct sysfs_attribute *sysfs_open_attribute(const char *path)
-{
- struct sysfs_attribute *sysattr = NULL;
- struct stat fileinfo;
-
- if (!path) {
- errno = EINVAL;
- return NULL;
- }
- sysattr = alloc_attribute();
- if (!sysattr) {
- dprintf("Error allocating attribute at %s\n", path);
- return NULL;
- }
- if (sysfs_get_name_from_path(path, sysattr->name,
- SYSFS_NAME_LEN) != 0) {
- dprintf("Error retrieving attrib name from path: %s\n", path);
- sysfs_close_attribute(sysattr);
- return NULL;
- }
- safestrcpy(sysattr->path, path);
- if ((stat(sysattr->path, &fileinfo)) != 0) {
- dprintf("Stat failed: No such attribute?\n");
- sysattr->method = 0;
- free(sysattr);
- sysattr = NULL;
- } else {
- if (fileinfo.st_mode & S_IRUSR)
- sysattr->method |= SYSFS_METHOD_SHOW;
- if (fileinfo.st_mode & S_IWUSR)
- sysattr->method |= SYSFS_METHOD_STORE;
- }
-
- return sysattr;
-}
-
-/**
- * sysfs_read_attribute: reads value from attribute
- * @sysattr: attribute to read
- * returns 0 with success and -1 with error.
- */
-int sysfs_read_attribute(struct sysfs_attribute *sysattr)
-{
- char *fbuf = NULL;
- char *vbuf = NULL;
- ssize_t length = 0;
- long pgsize = 0;
- int fd;
-
- if (!sysattr) {
- errno = EINVAL;
- return -1;
- }
- if (!(sysattr->method & SYSFS_METHOD_SHOW)) {
- dprintf("Show method not supported for attribute %s\n",
- sysattr->path);
- errno = EACCES;
- return -1;
- }
- pgsize = getpagesize();
- fbuf = (char *)calloc(1, pgsize+1);
- if (!fbuf) {
- dprintf("calloc failed\n");
- return -1;
- }
- if ((fd = open(sysattr->path, O_RDONLY)) < 0) {
- dprintf("Error reading attribute %s\n", sysattr->path);
- free(fbuf);
- return -1;
- }
- length = read(fd, fbuf, pgsize);
- if (length < 0) {
- dprintf("Error reading from attribute %s\n", sysattr->path);
- close(fd);
- free(fbuf);
- return -1;
- }
- if (sysattr->len > 0) {
- if ((sysattr->len == length) &&
- (!(strncmp(sysattr->value, fbuf, length)))) {
- close(fd);
- free(fbuf);
- return 0;
- }
- free(sysattr->value);
- }
- sysattr->len = length;
- close(fd);
- vbuf = (char *)realloc(fbuf, length+1);
- if (!vbuf) {
- dprintf("realloc failed\n");
- free(fbuf);
- return -1;
- }
- sysattr->value = vbuf;
-
- return 0;
-}
-
-/**
- * sysfs_write_attribute: write value to the attribute
- * @sysattr: attribute to write
- * @new_value: value to write
- * @len: length of "new_value"
- * returns 0 with success and -1 with error.
- */
-int sysfs_write_attribute(struct sysfs_attribute *sysattr,
- const char *new_value, size_t len)
-{
- int fd;
- int length;
-
- if (!sysattr || !new_value || len == 0) {
- errno = EINVAL;
- return -1;
- }
-
- if (!(sysattr->method & SYSFS_METHOD_STORE)) {
- dprintf ("Store method not supported for attribute %s\n",
- sysattr->path);
- errno = EACCES;
- return -1;
- }
- if (sysattr->method & SYSFS_METHOD_SHOW) {
- /*
- * read attribute again to see if we can get an updated value
- */
- if ((sysfs_read_attribute(sysattr))) {
- dprintf("Error reading attribute\n");
- return -1;
- }
- if ((strncmp(sysattr->value, new_value, sysattr->len)) == 0 &&
- (len == sysattr->len)) {
- dprintf("Attr %s already has the requested value %s\n",
- sysattr->name, new_value);
- return 0;
- }
- }
- /*
- * open O_WRONLY since some attributes have no "read" but only
- * "write" permission
- */
- if ((fd = open(sysattr->path, O_WRONLY)) < 0) {
- dprintf("Error reading attribute %s\n", sysattr->path);
- return -1;
- }
-
- length = write(fd, new_value, len);
- if (length < 0) {
- dprintf("Error writing to the attribute %s - invalid value?\n",
- sysattr->name);
- close(fd);
- return -1;
- } else if ((unsigned int)length != len) {
- dprintf("Could not write %zd bytes to attribute %s\n",
- len, sysattr->name);
- /*
- * since we could not write user supplied number of bytes,
- * restore the old value if one available
- */
- if (sysattr->method & SYSFS_METHOD_SHOW) {
- length = write(fd, sysattr->value, sysattr->len);
- close(fd);
- return -1;
- }
- }
-
- /*
- * Validate length that has been copied. Alloc appropriate area
- * in sysfs_attribute. Verify first if the attribute supports reading
- * (show method). If it does not, do not bother
- */
- if (sysattr->method & SYSFS_METHOD_SHOW) {
- if (length != sysattr->len) {
- sysattr->value = (char *)realloc
- (sysattr->value, length);
- sysattr->len = length;
- safestrcpymax(sysattr->value, new_value, length);
- } else {
- /*"length" of the new value is same as old one */
- safestrcpymax(sysattr->value, new_value, length);
- }
- }
-
- close(fd);
- return 0;
-}
-
diff --git a/mdk-stage1/sysfs/sysfs_utils.c b/mdk-stage1/sysfs/sysfs_utils.c
deleted file mode 100644
index a0354a8f8..000000000
--- a/mdk-stage1/sysfs/sysfs_utils.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * sysfs_utils.c
- *
- * System utility functions for libsysfs
- *
- * Copyright (C) IBM Corp. 2003-2005
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
-#include "libsysfs.h"
-#include "sysfs.h"
-
-/**
- * sysfs_get_name_from_path: returns last name from a "/" delimited path
- * @path: path to get name from
- * @name: where to put name
- * @len: size of name
- */
-int sysfs_get_name_from_path(const char *path, char *name, size_t len)
-{
- char tmp[SYSFS_PATH_MAX];
- char *n = NULL;
-
- if (!path || !name || len == 0) {
- errno = EINVAL;
- return -1;
- }
- memset(tmp, 0, SYSFS_PATH_MAX);
- safestrcpy(tmp, path);
- n = strrchr(tmp, '/');
- if (n == NULL) {
- errno = EINVAL;
- return -1;
- }
- if (*(n+1) == '\0') {
- *n = '\0';
- n = strrchr(tmp, '/');
- if (n == NULL) {
- errno = EINVAL;
- return -1;
- }
- }
- n++;
- safestrcpymax(name, n, len);
- return 0;
-}
diff --git a/mdk-stage1/thirdparty.c b/mdk-stage1/thirdparty.c
index 247b7e1f9..78bbf485a 100644
--- a/mdk-stage1/thirdparty.c
+++ b/mdk-stage1/thirdparty.c
@@ -1,6 +1,6 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
- * Olivier Blin (oblin@mandriva.com)
+ * Guillaume Cottenceau (gc)
+ * Olivier Blin (oblin)
*
* Copyright 2005 Mandriva
*
@@ -68,7 +68,7 @@ static enum return_type thirdparty_choose_device(char ** device, int probe_only)
#endif
floppy_dev = floppy_device();
- if (strstr(floppy_dev, "/dev/") == floppy_dev) {
+ if (floppy_dev && strstr(floppy_dev, "/dev/") == floppy_dev) {
floppy_dev = floppy_dev + 5;
}
if (floppy_dev)
@@ -132,7 +132,7 @@ static enum return_type thirdparty_choose_device(char ** device, int probe_only)
return results;
}
- if (streq(*device, floppy_dev)) {
+ if (floppy_dev && streq(*device, floppy_dev)) {
/* a floppy is selected, don't try to list partitions */
return RETURN_OK;
}
@@ -244,7 +244,7 @@ static void thirdparty_load_pcitable(const char *modules_location)
char pcitable_filename[100];
FILE * f = NULL;
- sprintf(pcitable_filename, "%s/pcitable", modules_location);
+ snprintf(pcitable_filename, sizeof(pcitable_filename), "%s/pcitable", modules_location);
if (!(f = fopen(pcitable_filename, "rb"))) {
log_message("third_party: no external pcitable found");
return;
@@ -333,7 +333,7 @@ static enum return_type thirdparty_autoload_modules(const char *modules_location
entry++;
}
if (!entry || !*entry) {
- enum insmod_return ret = my_insmod(module, ANY_DRIVER_TYPE, options, 0);
+ enum insmod_return ret = my_modprobe(module, ANY_DRIVER_TYPE, options);
if (ret != INSMOD_OK) {
log_message("\t%s (marfile): failed", module);
stg1_error_message("Insmod %s (marfile) failed.", module);
diff --git a/mdk-stage1/thirdparty.h b/mdk-stage1/thirdparty.h
index 3995954e3..1c2ac2a05 100644
--- a/mdk-stage1/thirdparty.h
+++ b/mdk-stage1/thirdparty.h
@@ -1,6 +1,6 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
- * Olivier Blin (oblin@mandriva.com)
+ * Guillaume Cottenceau (gc)
+ * Olivier Blin (oblin)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/tools.c b/mdk-stage1/tools.c
index 95064f095..2e27688ea 100644
--- a/mdk-stage1/tools.c
+++ b/mdk-stage1/tools.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -148,65 +148,6 @@ enum return_type copy_file(char * from, char * to, void (*callback_func)(int ove
}
}
-enum return_type recursiveRemove(char *file)
-{
- struct stat sb;
-
- if (lstat(file, &sb) != 0) {
- log_message("failed to stat %s: %d", file, errno);
- return RETURN_ERROR;
- }
-
- /* only descend into subdirectories if device is same as dir */
- if (S_ISDIR(sb.st_mode)) {
- char * strBuf = alloca(strlen(file) + 1024);
- DIR * dir;
- struct dirent * d;
-
- if (!(dir = opendir(file))) {
- log_message("error opening %s: %d", file, errno);
- return RETURN_ERROR;
- }
- while ((d = readdir(dir))) {
- if (!strcmp(d->d_name, ".") || !strcmp(d->d_name, ".."))
- continue;
-
- strcpy(strBuf, file);
- strcat(strBuf, "/");
- strcat(strBuf, d->d_name);
-
- if (recursiveRemove(strBuf) != 0) {
- closedir(dir);
- return RETURN_ERROR;
- }
- }
- closedir(dir);
-
- if (rmdir(file)) {
- log_message("failed to rmdir %s: %d", file, errno);
- return RETURN_ERROR;
- }
- } else {
- if (unlink(file) != 0) {
- log_message("failed to remove %s: %d", file, errno);
- return RETURN_ERROR;
- }
- }
- return RETURN_OK;
-}
-
-enum return_type recursiveRemove_if_it_exists(char *file)
-{
- struct stat sb;
-
- if (lstat(file, &sb) != 0) {
- /* if file doesn't exist, simply return OK */
- return RETURN_OK;
- }
-
- return recursiveRemove(file);
-}
-
enum return_type mount_compressed_image(char *compressed_image, char *location_mount)
{
if (lomount(compressed_image, location_mount, NULL, 1)) {
@@ -272,14 +213,7 @@ int try_mount(char * dev, char * location)
char device_fullname[50];
snprintf(device_fullname, sizeof(device_fullname), "/dev/%s", dev);
- if (my_mount(device_fullname, location, "ext4", 0) == -1 &&
- my_mount(device_fullname, location, "vfat", 0) == -1 &&
- my_mount(device_fullname, location, "ntfs", 0) == -1 &&
- my_mount(device_fullname, location, "reiserfs", 0) == -1 &&
- my_mount(device_fullname, location, "reiser4", 0) == -1 &&
- my_mount(device_fullname, location, "jfs", 0) == -1 &&
- my_mount(device_fullname, location, "xfs", 0) == -1 &&
- my_mount(device_fullname, location, "iso9660", 0) == -1) {
+ if (my_mount(device_fullname, location, "auto", 0) == -1) {
return 1;
}
@@ -292,8 +226,8 @@ int get_disks(char *** names, char *** models)
char ** ptr;
int count = 0;
- my_insmod("ide_disk", ANY_DRIVER_TYPE, NULL, 0);
- my_insmod("sd_mod", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("ide_disk", ANY_DRIVER_TYPE, NULL);
+ my_modprobe("sd_mod", ANY_DRIVER_TYPE, NULL);
get_medias(DISK, names, models, BUS_ANY);
@@ -313,8 +247,8 @@ int get_cdroms(char *** names, char *** models)
char ** ptr;
int count = 0;
- my_insmod("ide_cd_mod", ANY_DRIVER_TYPE, NULL, 0);
- my_insmod("sr_mod", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("ide_cd_mod", ANY_DRIVER_TYPE, NULL);
+ my_modprobe("sr_mod", ANY_DRIVER_TYPE, NULL);
get_medias(CDROM, names, models, BUS_ANY);
@@ -332,7 +266,7 @@ char * floppy_device(void)
{
char ** names, ** models;
int fd;
- my_insmod("floppy", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("floppy", ANY_DRIVER_TYPE, NULL);
fd = open("/dev/fd0", O_RDONLY|O_NONBLOCK);
if (fd != -1) {
char drivtyp[17];
@@ -352,10 +286,10 @@ char * floppy_device(void)
close(fd);
}
log_message("seems that you don't have a regular floppy drive");
- my_insmod("sd_mod", ANY_DRIVER_TYPE, NULL, 0);
+ my_modprobe("sd_mod", ANY_DRIVER_TYPE, NULL);
get_medias(FLOPPY, &names, &models, BUS_ANY);
if (names && *names)
return asprintf_("/dev/%s", *names);
else
- return "/dev/fd0";
+ return NULL;
}
diff --git a/mdk-stage1/tools.h b/mdk-stage1/tools.h
index 9c87528cf..87c0c1d49 100644
--- a/mdk-stage1/tools.h
+++ b/mdk-stage1/tools.h
@@ -1,6 +1,6 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -24,14 +24,11 @@
#define _TOOLS_H_
#include <stdlib.h>
-#include "bootsplash.h"
int image_has_stage2();
enum return_type create_IMAGE_LOCATION(char *location_full);
int ramdisk_possible(void);
enum return_type copy_file(char * from, char * to, void (*callback_func)(int overall));
-enum return_type recursiveRemove(char *file);
-enum return_type recursiveRemove_if_it_exists(char *file);
enum return_type preload_mount_compressed_fd(int compressed_fd, int image_size, char *image_name, char *location_mount);
enum return_type mount_compressed_image(char *compressed_image, char *location_mount);
enum return_type mount_compressed_image_may_preload(char *image_name, char *location_mount, int preload);
diff --git a/mdk-stage1/pci-resource/update-pci-ids.pl b/mdk-stage1/update-pci-ids.pl
index c6653a735..1b084ea80 100755
--- a/mdk-stage1/pci-resource/update-pci-ids.pl
+++ b/mdk-stage1/update-pci-ids.pl
@@ -6,13 +6,13 @@ use MDK::Common;
my %t = (
- network => 'network/main|gigabit|tokenring|wireless|pcmcia',
+ network => 'network/main|gigabit|pcmcia|virtual|wireless',
medias_ide => 'disk/ide',
- medias_other => 'disk/scsi|hardware_raid|sata bus/firewire',
+ medias_other => 'disk/scsi|hardware_raid|sata|virtual bus/firewire',
);
foreach my $type (keys %t) {
- my @modules = chomp_(`perl ../../kernel/modules.pl pci_modules4stage1 "$t{$type}"`)
+ my @modules = chomp_(`perl ../kernel/modules.pl pci_modules4stage1 "$t{$type}"`)
or die "unable to get PCI modules";
print "#ifndef DISABLE_".uc($type)."
diff --git a/mdk-stage1/pcmcia-resource/update-pcmcia-ids.pl b/mdk-stage1/update-pcmcia-ids.pl
index 67e0ca9a7..9eb25c66e 100755
--- a/mdk-stage1/pcmcia-resource/update-pcmcia-ids.pl
+++ b/mdk-stage1/update-pcmcia-ids.pl
@@ -25,7 +25,7 @@ my %t = (
);
foreach my $type (keys %t) {
- my @modules = chomp_(`perl ../../kernel/modules.pl pci_modules4stage1 "$t{$type}"`)
+ my @modules = chomp_(`perl ../kernel/modules.pl pci_modules4stage1 "$t{$type}"`)
or die "unable to get PCMCIA modules";
print "#ifndef DISABLE_".uc($type)."
diff --git a/mdk-stage1/usb-resource/update-usb-ids.pl b/mdk-stage1/update-usb-ids.pl
index 9d6ca1cfc..1ea45f9df 100755
--- a/mdk-stage1/usb-resource/update-usb-ids.pl
+++ b/mdk-stage1/update-usb-ids.pl
@@ -4,7 +4,7 @@ use lib '../kernel';
use strict;
use MDK::Common;
-my @modules = chomp_(`perl ../../kernel/modules.pl pci_modules4stage1 "bus/usb"`)
+my @modules = chomp_(`perl ../kernel/modules.pl pci_modules4stage1 "bus/usb"`)
or die "unable to get USB controller modules";
print "char *usb_controller_modules[] = {
";
@@ -13,7 +13,7 @@ print "};
unsigned int usb_controller_modules_len = sizeof(usb_controller_modules) / sizeof(char *);
";
-@modules = chomp_(`perl ../../kernel/modules.pl pci_modules4stage1 "network/usb disk/usb"`)
+@modules = chomp_(`perl ../kernel/modules.pl pci_modules4stage1 "network/usb disk/usb"`)
or die "unable to get USB modules";
print "char *usb_modules[] = {
diff --git a/mdk-stage1/url.c b/mdk-stage1/url.c
index 788b44081..14f1e25d6 100644
--- a/mdk-stage1/url.c
+++ b/mdk-stage1/url.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -398,9 +398,10 @@ char *str_ftp_error(int error)
}
-static int _http_download_file(char * hostname, char * remotename, int * size, char * proxyprotocol, char * proxyname, char * proxyport, int recursion)
+static int _http_download_file(char * hostport, char * remotename, int * size, char * proxyprotocol, char * proxyname, char * proxyport, int recursion)
{
char * buf;
+ char * hostname = strdup(hostport);
char headers[4096];
char * nextChar = headers;
int statusCode;
@@ -418,8 +419,15 @@ static int _http_download_file(char * hostname, char * remotename, int * size, c
http_server_name = proxyname;
http_server_port = atoi(proxyport);
} else {
- http_server_name = hostname;
- http_server_port = 80;
+ char *port = strchr(hostname, ':');
+ if (port) {
+ *port = '\0';
+ http_server_name = hostname;
+ http_server_port = atoi(++port);
+ } else {
+ http_server_name = hostname;
+ http_server_port = 80;
+ }
}
log_message("HTTP: connecting to server %s:%i (%s)",
@@ -430,6 +438,7 @@ static int _http_download_file(char * hostname, char * remotename, int * size, c
sock = socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
if (sock < 0) {
+ free(hostname);
return FTPERR_FAILED_CONNECT;
}
@@ -439,6 +448,7 @@ static int _http_download_file(char * hostname, char * remotename, int * size, c
if (connect(sock, (struct sockaddr *) &destPort, sizeof(destPort))) {
close(sock);
+ free(hostname);
return FTPERR_FAILED_CONNECT;
}
@@ -446,6 +456,7 @@ static int _http_download_file(char * hostname, char * remotename, int * size, c
: asprintf_("GET %s HTTP/1.0\r\nHost: %s\r\n\r\n", remotename, hostname);
write(sock, buf, strlen(buf));
+ free(hostname);
/* This is fun; read the response a character at a time until we:
diff --git a/mdk-stage1/url.h b/mdk-stage1/url.h
index 3f5071ebb..2c80e4432 100644
--- a/mdk-stage1/url.h
+++ b/mdk-stage1/url.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
diff --git a/mdk-stage1/usb-resource/Makefile b/mdk-stage1/usb-resource/Makefile
deleted file mode 100644
index 9c192920c..000000000
--- a/mdk-stage1/usb-resource/Makefile
+++ /dev/null
@@ -1,25 +0,0 @@
- #******************************************************************************
- #
- # $Id$
- #
- # Guillaume Cottenceau (gc@mandriva.com)
- #
- # Copyright 2000 Mandriva
- #
- # This software may be freely redistributed under the terms of the GNU
- # public license.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- #*****************************************************************************
-
-
-all: usb-ids.h
-
-usb-ids.h: /usr/share/ldetect-lst/usbtable.gz update-usb-ids.pl
- perl update-usb-ids.pl > $@ || rm -f $@
-
-clean:
- rm -f usb-ids.h
diff --git a/mdk-stage1/utils.c b/mdk-stage1/utils.c
index 1ef3632e3..6ad3a8f6f 100644
--- a/mdk-stage1/utils.c
+++ b/mdk-stage1/utils.c
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -21,6 +21,7 @@
#include <unistd.h>
#include <ctype.h>
#include <dirent.h>
+#include <sys/sysinfo.h>
#include <sys/utsname.h>
#include "utils.h"
@@ -83,16 +84,19 @@ int line_counts(const char * buf) {
int total_memory(void)
{
int value;
-
- /* drakx powered: use /proc/kcore and rounds every 4 Mbytes */
- value = 4 * ((int)((float)file_size("/proc/kcore") / 1024 / 1024 / 4 + 0.5));
+ struct sysinfo sys_info;
+ if (sysinfo(&sys_info) < 0) {
+ log_perror("sysinfo");
+ return 0;
+ }
+ value = sys_info.totalram * sys_info.mem_unit / 1024 / 1024;
log_message("Total Memory: %d Mbytes", value);
return value;
}
/* pixel's */
-void * memdup(void *src, size_t size)
+void * _memdup(void *src, size_t size)
{
void * r;
r = malloc(size);
@@ -128,7 +132,7 @@ char ** list_directory(char * direct)
if (dp)
closedir(dp);
tmp[i] = NULL;
- return memdup(tmp, sizeof(char*) * (i+1));
+ return _memdup(tmp, sizeof(char*) * (i+1));
}
@@ -144,16 +148,6 @@ int string_array_length(char ** a)
return i;
}
-int kernel_version(void)
-{
- struct utsname val;
- if (uname(&val)) {
- log_perror("uname failed");
- return -1;
- }
- return charstar_to_int(val.release + 2);
-}
-
char * asprintf_(const char *msg, ...)
{
int n;
@@ -172,14 +166,6 @@ char * asprintf_(const char *msg, ...)
return strdup("");
}
-int scall_(int retval, char * msg, char * file, int line)
-{
- char tmp[5000];
- sprintf(tmp, "%s(%s:%d) failed", msg, file, line);
- if (retval)
- log_perror(tmp);
- return retval;
-}
void lowercase(char *s)
{
@@ -189,3 +175,17 @@ void lowercase(char *s)
i++;
}
}
+
+char *my_dirname(char *path) {
+ char *p = strrchr (path, '/');
+ char *tmp;
+ int len;
+ if (!p)
+ return path;
+ len = p-path+1;
+ tmp = malloc(len);
+ strncpy(tmp, path, len-1);
+ tmp[len-1] = '\0';
+ return tmp;
+}
+
diff --git a/mdk-stage1/utils.h b/mdk-stage1/utils.h
index ba926066a..b8a77b0ad 100644
--- a/mdk-stage1/utils.h
+++ b/mdk-stage1/utils.h
@@ -1,5 +1,5 @@
/*
- * Guillaume Cottenceau (gc@mandriva.com)
+ * Guillaume Cottenceau (gc)
*
* Copyright 2000 Mandriva
*
@@ -22,14 +22,12 @@ off_t file_size(const char * path);
char * cat_file(const char * file, struct stat * s);
int line_counts(const char * buf);
int total_memory(void);
-void * memdup(void *src, size_t size);
+void * _memdup(void *src, size_t size);
void add_to_env(char * name, char * value);
char ** list_directory(char * direct);
int string_array_length(char ** a);
-int kernel_version(void);
char * asprintf_(const char *msg, ...);
-int scall_(int retval, char * msg, char * file, int line);
-#define scall(retval, msg) scall_(retval, msg, __FILE__, __LINE__)
+char *my_dirname(char *path);
void lowercase(char *s);
#define ptr_begins_static_str(pointer,static_str) (!strncmp(pointer,static_str,sizeof(static_str)-1))
diff --git a/mdk-stage1/wireless.c b/mdk-stage1/wireless.c
index ca0387fce..2fde04f84 100644
--- a/mdk-stage1/wireless.c
+++ b/mdk-stage1/wireless.c
@@ -1,7 +1,9 @@
/*
- * Olivier Blin (oblin@mandriva.com)
+ * Olivier Blin (oblin)
+ * Martin Whitaker (martinw)
*
* Copyright 2005 Mandriva
+ * Copyright 2020 Mageia
*
* This software may be freely redistributed under the terms of the GNU
* public license.
@@ -16,7 +18,9 @@
#include <sys/types.h>
#include <sys/socket.h>
#include <errno.h>
+#include <signal.h>
#include <stdio.h>
+#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <linux/types.h>
@@ -29,11 +33,10 @@
#include "utils.h"
#include "wireless.h"
-static int wireless_ioctl(int socket, const char *ifname, int request, struct iwreq *wrq);
-static int wireless_set_mode_managed(int socket, const char *ifname);
-static int wireless_disable_key(int socket, const char *ifname);
-static int wireless_set_restricted_key(int socket, const char *ifname, const char *key);
-static int wireless_set_essid(int socket, const char *ifname, const char *essid);
+#define WPA_SUPPLICANT_CONF "/etc/wpa_supplicant.conf"
+#define WPA_SUPPLICANT_CTRL "/var/run/wpa_supplicant"
+#define WPA_SUPPLICANT_LOG "/var/log/wpa_supplicant.log"
+#define WPA_SUPPLICANT_PID "/var/run/wpa_supplicant.pid"
int wireless_open_socket()
{
@@ -57,104 +60,101 @@ int wireless_is_aware(int socket, const char *ifname)
return wireless_ioctl(socket, ifname, SIOCGIWNAME, &wrq) == 0;
}
-static int wireless_set_mode_managed(int socket, const char *ifname)
-{
- struct iwreq wrq;
-
- wrq.u.mode = IW_MODE_INFRA; /* managed */
-
- return wireless_ioctl(socket, ifname, SIOCSIWMODE, &wrq) == 0;
-}
-
-static int wireless_set_essid(int socket, const char *ifname, const char *essid)
-{
- struct iwreq wrq;
-
- wrq.u.essid.flags = 1;
- wrq.u.essid.pointer = (void *) essid;
- wrq.u.essid.length = strlen(essid) + 1;
-
- return wireless_ioctl(socket, ifname, SIOCSIWESSID, &wrq) == 0;
-}
-
-static int wireless_disable_key(int socket, const char *ifname)
-{
- struct iwreq wrq;
-
- wrq.u.data.flags = IW_ENCODE_DISABLED;
- wrq.u.data.pointer = NULL;
- wrq.u.data.length = 0;
-
- return wireless_ioctl(socket, ifname, SIOCSIWENCODE, &wrq) == 0;
-}
-
-static int wireless_set_restricted_key(int socket, const char *ifname, const char *key)
-{
- struct iwreq wrq;
- char real_key[IW_ENCODING_TOKEN_MAX];
- int key_len = 0;
- unsigned int tmp;
-
- while (sscanf(key + 2*key_len, "%2X", &tmp) == 1)
- real_key[key_len++] = (char) tmp;
-
- wrq.u.data.flags = IW_ENCODE_RESTRICTED;
- wrq.u.data.pointer = (char *) real_key;
- wrq.u.data.length = key_len;
-
- return wireless_ioctl(socket, ifname, SIOCSIWENCODE, &wrq) == 0;
-}
-
enum return_type configure_wireless(const char *ifname)
{
enum return_type results;
- char * questions[] = { "ESSID", "WEP key", NULL };
- char * questions_auto[] = { "essid", "wep_key" };
+ char * security[] = { "No security", "WEP", "WPA/WPA2 Personal", NULL };
+ char * security_auto[] = { "none", "wep", "wpa_psk", NULL };
+ char * choice = NULL;
+ char * message = NULL;
+ char * questions[] = { "ESSID", "", NULL };
+ char * questions_auto[] = { "essid", "" };
+ char * key_mgmt = NULL;
static char ** answers = NULL;
- int wsock = wireless_open_socket();
+ FILE * fd;
+ char cmd[256];
+ int status;
+ int wsock = wireless_open_socket();
if (!wireless_is_aware(wsock, ifname)) {
log_message("interface %s doesn't support wireless", ifname);
wireless_close_socket(wsock);
return RETURN_OK;
}
+ wireless_close_socket(wsock);
- results = ask_from_entries_auto("Please enter your wireless settings. "
- "The ESSID is your wireless network identifier. "
- "The WEP key must be entered in hexadecimal, without any separator.",
- questions, &answers, 32, questions_auto, NULL);
+ results = ask_from_list_auto("Please select your wireless security mode.",
+ security, &choice, "wireless_security", security_auto);
if (results != RETURN_OK) {
- wireless_close_socket(wsock);
return RETURN_BACK;
}
- if (!wireless_set_mode_managed(wsock, ifname)) {
- stg1_error_message("unable to set mode Managed on device \"%s\": %s", ifname, strerror(errno));
- wireless_close_socket(wsock);
- return RETURN_ERROR;
+ if (streq(choice, security[2])) {
+ message = "Please enter your wireless settings. "
+ "The ESSID is your wireless network identifier. "
+ "The passphrase must be a string of between 8 and 63 ASCII characters.";
+ questions[1] = "passphrase";
+ questions_auto[1] = "wpa_psk";
+ key_mgmt = "WPA-PSK";
+ } else if (streq(choice, security[1])) {
+ message = "Please enter your wireless settings. "
+ "The ESSID is your wireless network identifier. "
+ "The WEP key must be either a string of 10 or 26 hexadecimal digits, without any separators, "
+ "or a string of 5 or 13 ASCII characters enclosed in double quote marks (e.g. \"12345\").";
+ questions[1] = "WEP key";
+ questions_auto[1] = "wep_key";
+ key_mgmt = "NONE";
+ } else {
+ message = "Please enter your wireless settings. "
+ "The ESSID is your wireless network identifier.";
+ questions[1] = NULL;
+ questions_auto[1] = NULL;
+ key_mgmt = "NONE";
+ }
+ results = ask_from_entries_auto(message, questions, &answers, 32, questions_auto, NULL);
+ if (results != RETURN_OK) {
+ return RETURN_BACK;
}
- if (answers[1] && !streq(answers[1], "")) {
- log_message("setting WEP key \"%s\" on device \"%s\"", answers[1], ifname);
- if (!wireless_set_restricted_key(wsock, ifname, answers[1])) {
- stg1_error_message("unable to set WEP key \"%s\" on device \"%s\": %s", answers[1], ifname, strerror(errno));
- return RETURN_ERROR;
- }
- } else {
- log_message("disabling WEP key on device \"%s\"", ifname);
- if (!wireless_disable_key(wsock, ifname)) {
- stg1_error_message("unable to disable WEP key on device \"%s\": %s", ifname, strerror(errno));
- return RETURN_ERROR;
+ fd = fopen(WPA_SUPPLICANT_PID, "r");
+ if (fd) {
+ unsigned pid = 0;
+ unsigned count = fscanf(fd, "%u", &pid);
+ fclose(fd);
+ if (count == 1 && pid > 1) {
+ log_message("terminating wpa_supplicant (pid %u)", pid);
+ kill(pid, SIGQUIT);
+ sleep(1);
}
}
- /* most devices perform discovery when ESSID is set, it needs to be last */
- log_message("setting ESSID \"%s\" on device \"%s\"", answers[0], ifname);
- if (!wireless_set_essid(wsock, ifname, answers[0])) {
- stg1_error_message("unable to set ESSID \"%s\" on device \"%s\": %s", answers[0], ifname, strerror(errno));
+ fd = fopen(WPA_SUPPLICANT_CONF, "w");
+ if (fd == NULL) {
+ stg1_error_message("unable to create " WPA_SUPPLICANT_CONF ": %s", strerror(errno));
+ return RETURN_ERROR;
+ }
+ fprintf(fd, "ctrl_interface=" WPA_SUPPLICANT_CTRL "\n");
+ fprintf(fd, "ap_scan=1\n");
+ fprintf(fd, "network={\n");
+ fprintf(fd, " key_mgmt=%s\n", key_mgmt);
+ fprintf(fd, " scan_ssid=1\n");
+ fprintf(fd, " ssid=\"%s\"\n", answers[0]);
+ if (streq(choice, security[2])) {
+ fprintf(fd, " psk=\"%s\"\n", answers[1]);
+ } else if (streq(choice, security[1])) {
+ fprintf(fd, " wep_key0=%s\n", answers[1]);
+ }
+ fprintf(fd, "}\n");
+ fclose(fd);
+
+ snprintf(cmd, sizeof(cmd), "/usr/sbin/wpa_supplicant -D nl80211,wext -B -i %s -c %s -f %s -P %s",
+ ifname, WPA_SUPPLICANT_CONF, WPA_SUPPLICANT_LOG, WPA_SUPPLICANT_PID);
+ log_message("running %s", cmd);
+ status = system(cmd);
+ if (status != 0) {
+ stg1_error_message("unable to start wpa_supplicant daemon for interface \"%s\": %d", ifname, status);
return RETURN_ERROR;
}
- wireless_close_socket(wsock);
return RETURN_OK;
}
diff --git a/mdk-stage1/wireless.h b/mdk-stage1/wireless.h
index 3e5bb7790..7443f5c99 100644
--- a/mdk-stage1/wireless.h
+++ b/mdk-stage1/wireless.h
@@ -1,5 +1,5 @@
/*
- * Olivier Blin (oblin@mandriva.com)
+ * Olivier Blin (oblin)
*
* Copyright 2005 Mandriva
*
diff --git a/mdk-stage1/zlibsupport.c b/mdk-stage1/zlibsupport.c
index ecbe7a5ef..2b171e72d 100644
--- a/mdk-stage1/zlibsupport.c
+++ b/mdk-stage1/zlibsupport.c
@@ -11,23 +11,210 @@
#include <stdlib.h>
#include <unistd.h>
#include <sys/mman.h>
+#include <stdio.h>
+#include <errno.h>
#include "zlibsupport.h"
+#define CONFIG_USE_LIBLZMA
#ifdef CONFIG_USE_ZLIB
#include <zlib.h>
+#ifdef CONFIG_USE_LIBLZMA
+#include <lzma.h>
-void *grab_contents(gzFile *gzfd, unsigned long *size)
+typedef struct lzma_file {
+ uint8_t buf[1<<14];
+ lzma_stream strm;
+ FILE *fp;
+ lzma_bool eof;
+} lzma_FILE;
+#else
+typedef unsigned char lzma_bool;
+typedef int lzma_ret;
+#define LZMA_OK 0
+#endif
+
+typedef enum xFile_e {
+ XF_NONE,
+ XF_GZIP,
+ XF_XZ,
+ XF_FAIL
+} xFile_t;
+
+typedef struct xFile_s {
+ xFile_t type;
+ lzma_bool eof;
+ union {
+ gzFile gz;
+#ifdef CONFIG_USE_LIBLZMA
+ lzma_FILE *xz;
+#endif
+ } f;
+ FILE *fp;
+} xFile;
+
+#ifdef CONFIG_USE_LIBLZMA
+static lzma_FILE *lzma_open(lzma_ret *lzma_error, FILE *fp)
+{
+ lzma_ret *ret = lzma_error;
+ lzma_FILE *lzma_file;
+ lzma_stream tmp = LZMA_STREAM_INIT;
+
+ lzma_file = calloc(1, sizeof(*lzma_file));
+
+ lzma_file->fp = fp;
+ lzma_file->eof = 0;
+ lzma_file->strm = tmp;
+
+ *ret = lzma_auto_decoder(&lzma_file->strm, -1, 0);
+
+ if (*ret != LZMA_OK) {
+ (void) fclose(lzma_file->fp);
+ free(lzma_file);
+ return NULL;
+ }
+ return lzma_file;
+}
+
+static ssize_t lzma_read(lzma_ret *lzma_error, lzma_FILE *lzma_file, void *buf, size_t len)
+{
+ lzma_ret *ret = lzma_error;
+ lzma_bool eof = 0;
+
+ if (!lzma_file)
+ return -1;
+ if (lzma_file->eof)
+ return 0;
+
+ lzma_file->strm.next_out = buf;
+ lzma_file->strm.avail_out = len;
+ for (;;) {
+ if (!lzma_file->strm.avail_in) {
+ lzma_file->strm.next_in = (uint8_t *)lzma_file->buf;
+ lzma_file->strm.avail_in = fread(lzma_file->buf, 1, sizeof(lzma_file->buf), lzma_file->fp);
+ if (!lzma_file->strm.avail_in)
+ eof = 1;
+ }
+ *ret = lzma_code(&lzma_file->strm, LZMA_RUN);
+ if (*ret == LZMA_STREAM_END) {
+ lzma_file->eof = 1;
+ return len - lzma_file->strm.avail_out;
+ }
+ if (*ret != LZMA_OK)
+ return -1;
+ if (!lzma_file->strm.avail_out)
+ return len;
+ if (eof)
+ return -1;
+ }
+}
+#endif
+
+static xFile xOpen(int fd, const char *filename) {
+ xFile xF = {XF_FAIL, 0, {NULL}, NULL};
+ lzma_ret ret = LZMA_OK;
+ unsigned char buf[8];
+
+ if (fd == -1 && filename != NULL)
+ if ((fd = open(filename, O_RDONLY)) < 0)
+ return xF;
+ if (read(fd, buf, sizeof(buf)) < 0)
+ return xF;
+ lseek(fd, 0, SEEK_SET);
+ if (filename != NULL) {
+ close(fd);
+ fd = -1;
+ }
+ if (buf[0] == 0xFD && buf[1] == '7' && buf[2] == 'z' &&
+ buf[3] == 'X' && buf[4] == 'Z' && buf[5] == 0x00)
+ xF.type = XF_XZ;
+ else if (buf[0] == 0x1F && buf[1] == 0x8B)
+ xF.type = XF_GZIP;
+ else
+ xF.type = XF_NONE;
+
+ switch(xF.type) {
+ case XF_GZIP:
+ xF.f.gz = (fd == -1 && filename != NULL) ? gzopen(filename, "rb") : gzdopen(fd, "rb");
+ if(xF.f.gz == NULL)
+ xF.type = XF_FAIL;
+ break;
+ case XF_NONE:
+ xF.fp = (fd == -1 && filename != NULL) ? fopen(filename, "rb") : fdopen(fd, "rb");
+ break;
+#ifdef CONFIG_USE_LIBLZMA
+ case XF_XZ:
+ xF.fp = (fd == -1 && filename != NULL) ? fopen(filename, "rb") : fdopen(fd, "rb");
+ if(xF.fp == NULL)
+ xF.type = XF_FAIL;
+ if(xF.type == XF_NONE || xF.type == XF_FAIL) break;
+ xF.f.xz = lzma_open(&ret, xF.fp);
+ if(ret != LZMA_OK)
+ xF.type = XF_FAIL;
+ break;
+#endif
+ default:
+ break;
+ }
+
+ return xF;
+}
+
+static int xClose(xFile *xF) {
+ int ret = -1;
+ switch(xF->type) {
+ case XF_GZIP:
+ ret = gzclose(xF->f.gz);
+ break;
+#ifdef CONFIG_USE_LIBLZMA
+ case XF_XZ:
+ lzma_end(&xF->f.xz->strm);
+ free(xF->f.xz);
+#endif
+ case XF_NONE:
+ ret = fclose(xF->fp);
+ break;
+ default:
+ break;
+ }
+ return ret;
+}
+
+static ssize_t xRead(xFile *xF, lzma_ret *ret, void *buf, size_t len) {
+ ssize_t sz;
+ switch(xF->type) {
+ case XF_GZIP:
+ sz = gzread(xF->f.gz, buf, len);
+ xF->eof = gzeof(xF->f.gz);
+ break;
+#ifdef CONFIG_USE_LIBLZMA
+ case XF_XZ:
+ sz = lzma_read(ret, xF->f.xz, buf, len);
+ xF->eof = xF->f.xz->eof;
+ break;
+#endif
+ case XF_NONE:
+ sz = fread(buf, 1, len, xF->fp);
+ xF->eof = feof(xF->fp);
+ break;
+ default:
+ sz = -1;
+ break;
+ }
+ return sz;
+}
+
+void *grab_contents(xFile *xF, unsigned long *size)
{
unsigned int max = 16384;
- void *buffer = malloc(max);
- int ret;
+ void *buffer = calloc(1, max);
+ lzma_ret ret;
if (!buffer)
return NULL;
*size = 0;
- while ((ret = gzread(gzfd, buffer + *size, max - *size)) > 0) {
+ while ((ret = xRead(xF, &ret, buffer + *size, max - *size)) > 0) {
*size += ret;
if (*size == max) {
void *p;
@@ -49,31 +236,17 @@ out_err:
return NULL;
}
-void *grab_fd(int fd, unsigned long *size)
-{
- gzFile gzfd;
-
- gzfd = gzdopen(fd, "rb");
- if (!gzfd)
- return NULL;
-
- /* gzclose(gzfd) would close fd, which would drop locks.
- Don't blame zlib: POSIX locking semantics are so horribly
- broken that they should be ripped out. */
- return grab_contents(gzfd, size);
-}
-
/* gzopen handles uncompressed files transparently. */
void *grab_file(const char *filename, unsigned long *size)
{
- gzFile gzfd;
+ xFile xF;
void *buffer;
- gzfd = gzopen(filename, "rb");
- if (!gzfd)
+ xF = xOpen(-1, filename);
+ if (xF.type == XF_FAIL)
return NULL;
- buffer = grab_contents(gzfd, size);
- gzclose(gzfd);
+ buffer = grab_contents(&xF, size);
+ xClose(&xF);
return buffer;
}
diff --git a/perl-install/.gitattributes b/perl-install/.gitattributes
new file mode 100644
index 000000000..d5b5e4c1c
--- /dev/null
+++ b/perl-install/.gitattributes
@@ -0,0 +1 @@
+unused export-ignore
diff --git a/perl-install/.perl_checker b/perl-install/.perl_checker
index b4ad7dc0c..ba1263215 100644
--- a/perl-install/.perl_checker
+++ b/perl-install/.perl_checker
@@ -1,71 +1,6 @@
-AutoLoader
-Carp
-Carp::Heavy
-Compress::Zlib
-Config::IniFiles
-Cwd
-Data::DumpXML
-Data::DumpXML::Parser
-Date::Manip
-Digest::MD5
-Encode
-File::Copy::Recursive
-File::Find
-File::FnMatch
-File::Glob
-File::Path
-File::Temp
-Gtk2::Gdk::Keysyms
-Gtk2::Helper
-Gtk2::Pango
-Gtk2::SimpleList
-I18N::Langinfo
-IO::Handle
-IO::Select
-IO::Socket::INET
-IPC::Open2
-Image::Magick
-Libconf
-Libconf::Glueconf::NUT::Ups_conf
-Libconf::Glueconf::Samba::Smb_conf
-Libconf::Templates::Generic::KeyValueSections
-Libconf::Templates::Samba
-Locale::gettext
-Net::DBus
-Net::DBus::Binding::Watch
-Net::LDAP
-RS::Handy
-Scalar::Util
-Sys::Syslog
-Term::ReadKey
-Time::HiRes
-Time::ZoneInfo
-URI::Escape
-XML::LibXML
-XML::LibXML::Boolean
-XML::LibXML::Common
-XML::LibXML::Literal
-XML::LibXML::NodeList
-XML::LibXML::Number
-XML::Parser
-base
-constant
-encoding
-feature
handle_configs
-move
-open
-overload
-printer::cups
-printer::hpoj
-printer::main
-printer::printerdrake
scanner
-urpm::dudf
+Net::DBus::Service
urpm::ldap
urpm::parallel_ka_run
urpm::parallel_ssh
-utf8
-warnings
-warnings::register
-bytes
diff --git a/perl-install/Makefile b/perl-install/Makefile
index 00b513f06..0fe946485 100644
--- a/perl-install/Makefile
+++ b/perl-install/Makefile
@@ -23,11 +23,12 @@ clean:
for i in $(DIRS) share/po install/help/po install/share/po; do $(MAKE) -C $$i clean; done;:
rm -rf auto drakxtools*.tar* *.bak
find . -name "*~" -o -name ".#*" -o -name "TAGS" -o -name "*.old" | xargs rm -f
+ rm -rf $(PACKAGE)-$(PKGVERSION)*
check_pms_encoding:
@for i in $(ALLPMS); do charset=ascii; grep -q 'use utf8' $$i && charset=utf8; iconv -f $$charset -t $$charset $$i >/dev/null || { echo "bad $$charset character in $$i"; exit 1; }; done
-check: check_pms_encoding
+check_full: check_pms_encoding
perl -I. -Mlang -e 'lang::check'
check2:
@@ -52,21 +53,22 @@ install_pms stage2 full_stage2:
mo_files : $(MOFILES)
# rules to build tarball
-localcopy: clean
- rm -rf $(PACKAGE)-$(PKGVERSION)*
+dist: tar
+
+tar: clean
+ rm -rf $(PACKAGE)*.tar* $(PACKAGE)-$(PKGVERSION)
mkdir -p $(PACKAGE)-$(PKGVERSION)/tools
- svn export -q -rBASE . $(PACKAGE)-$(PKGVERSION)/perl-install
- for i in $(OTHERS); do svn export -q ../$$i $(PACKAGE)-$(PKGVERSION)/$$i; done
+ (cd ..; git archive HEAD "perl-install/" $(OTHERS) kernel/list_modules.pm Makefile.config) | tar xC $(PACKAGE)-$(PKGVERSION)
rm -rf $(PACKAGE)-$(PKGVERSION)/perl-install/{install,unused,list_modules.pm}
cp -f ../kernel/list_modules.pm $(PACKAGE)-$(PKGVERSION)/perl-install
cd $(PACKAGE)-$(PKGVERSION)/perl-install ; mv -f Makefile.drakxtools Makefile
@make nuke_perl
-
-localdist: tar
-
-tar: localcopy
- tar cfY $(PACKAGE)-$(PKGVERSION).tar.lzma $(PACKAGE)-$(PKGVERSION)
+ tar cfa $(PACKAGE)-$(PKGVERSION).tar.xz $(PACKAGE)-$(PKGVERSION)
rm -rf $(PACKAGE)-$(PKGVERSION)
+ $(info $(PACKAGE)-$(PKGVERSION).tar.xz is ready)
+
+tag:
+ git tag -a $(VERSION) -m "$(VERSION)"
# rules to build a distributable rpm
@@ -84,3 +86,8 @@ check_perl_checker:
rm -f share/po/libDrakX.pot install/share/po/DrakX.pot
@make -C share/po libDrakX.pot
@make -C install/share/po DrakX.pot
+
+list_firmwares.pm:
+ ../tools/find-drivers-needing-nonfree-firmware
+
+.PHONY: list_firmwares.pm
diff --git a/perl-install/Makefile.config b/perl-install/Makefile.config
index 68ddecdec..b522c643e 100644
--- a/perl-install/Makefile.config
+++ b/perl-install/Makefile.config
@@ -1,21 +1,20 @@
# -*- Makefile -*-
-VERSION:=12.49
+VERSION:=18.69
SUDO = sudo
TMPDIR = /tmp
-SO_FILES = c/blib/arch/auto/c/c.so
+SO_FILES = c/blib/arch/auto/c/c.so
# PMS_DIRS is used only in drakxtools
PMS_DIRS = c diskdrake harddrake interactive modules partition_table resize_fat security fs fs/remote
PMS = *.pm $(PMS_DIRS:%=%/*.pm) install/*.pm install/help/*.pm install/commands install/install2
-STANDALONEPMS_ = adduserdrake bootloader-config display_help diskdrake drakauth drakboot drakbug drakbug_report drakclock drakedm drakdvb drakfont drakhelp drakperm draksec draksound draksplash drakupdate_fstab drakups drakxservices drakxtv fileshareset finish-install harddrake2 localedrake logdrake lsnetdrake notify-x11-free-driver-switch remove-unused-packages scannerdrake service_harddrake service_harddrake_confirm
+STANDALONEPMS_ = adduserdrake bootloader-config display_help display_release_notes.pl diskdrake drakauth drakautologin drakboot drakbug drakbug_report drakclock drakedm drakdvb drakfont drakhelp drakperm draksec draksound drakupdate_fstab drakups drakxservices drakxtv fileshareset finish-install harddrake2 localedrake logdrake lsnetdrake notify-x11-free-driver-switch remove-unused-packages scannerdrake service_harddrake service_harddrake_confirm
STANDALONEPMS = $(STANDALONEPMS_:%=standalone/%)
ALLPMS = $(PMS) $(STANDALONEPMS)
PERL = perl
-LOCALFILES = $(patsubst %, ../tools/%,serial_probe/serial_probe xhost+)
-DIRS = c resize_fat #po
+LOCALFILES = $(patsubst %, ../tools/%,serial_probe/serial_probe)
+DIRS = c resize_fat #po
CFLAGS = -Wall
override CFLAGS += -pipe
-
diff --git a/perl-install/Makefile.drakxtools b/perl-install/Makefile.drakxtools
index ccbc8c0e0..431f3a85d 100644
--- a/perl-install/Makefile.drakxtools
+++ b/perl-install/Makefile.drakxtools
@@ -3,9 +3,9 @@ include Makefile.config
.PHONY: install
-INLIBDEST_DIRS = c resize_fat xf86misc
-HAVEINST_DIRS = share/po standalone/po standalone/interactive_http standalone/menu
-DIRS = $(INLIBDEST_DIRS) $(HAVEINST_DIRS) harddrake printer ../tools/serial_probe standalone/menu
+INLIBDEST_DIRS = c resize_fat
+HAVEINST_DIRS = share/po standalone/po standalone/interactive_http standalone/menu standalone/polkit
+DIRS = $(INLIBDEST_DIRS) $(HAVEINST_DIRS) harddrake ../tools/serial_probe
NAME = libDrakX
XSETUPLEVEL=40
XSETUPLEVEL_HARDDRAKE=00
@@ -16,6 +16,7 @@ DATADIR = $(PREFIX)/usr/share
ICONSDIR= $(DATADIR)/icons
BINDEST = $(PREFIX)/usr/bin
SBINDEST = $(PREFIX)/usr/sbin
+LIBEXECDEST = $(PREFIX)/usr/libexec
ETCDEST = $(PREFIX)/etc/gtk
LIBDEST = $(LIBDIR)/$(NAME)
PIXDIR = $(DATADIR)/$(NAME)/pixmaps
@@ -30,27 +31,39 @@ $(DIRS):
install:
perl -pi -e "s/\"VER\"(; # version)/\"$(VERSION)\"\1/" standalone.pm
- mkdir -p $(BINDEST) $(ETCDEST) $(SBINDEST) $(DATADIR)/{applications,harddrake,pixmaps,icons/{large,mini},autostart} $(PIXDIR) $(INITDIR) $(MENUDIR)
+ mkdir -p $(BINDEST) $(ETCDEST) $(SBINDEST) $(DATADIR)/{applications,harddrake,pixmaps,icons/{large,mini},autostart} $(PIXDIR) $(INITDIR) $(MENUDIR) $(LIBEXECDEST)
install -d $(INLIBDEST_DIRS:%=$(LIBDEST)/%)
install $(STANDALONEPMS) standalone/convert $(SBINDEST)
install -s ../tools/rpcinfo-flushed ../tools/serial_probe/serial_probe $(SBINDEST)
- ln -s XFdrake $(SBINDEST)/Xdrakres
ln -s fileshareset $(SBINDEST)/filesharelist
mv -f $(SBINDEST)/lsnetdrake $(BINDEST)
mv -f $(SBINDEST)/drakbug $(BINDEST)
mv -f $(SBINDEST)/drakdvb $(BINDEST)
mv -f $(SBINDEST)/drakhelp $(BINDEST)
mv -f $(SBINDEST)/display_help $(BINDEST)
+ mv -f $(SBINDEST)/display_release_notes.pl $(BINDEST)
mv -f $(SBINDEST)/localedrake $(BINDEST)
+ # All the things handled by polkit
+ mv -f $(SBINDEST)/drak{autologin,auth,boot,clock,font,perm,sec,ups,xservices} $(LIBEXECDEST)
+ mv -f $(SBINDEST)/logdrake $(LIBEXECDEST)/draklog
+ mv -f $(SBINDEST)/drakedm $(LIBEXECDEST)/drakdm
+ mv -f $(SBINDEST)/harddrake2 $(LIBEXECDEST)/drakhardware
+ mv -f $(SBINDEST)/scannerdrake $(LIBEXECDEST)/drakscanner
+ # diskdrake is called by the drakdisk wrapper
+ mv -f $(SBINDEST)/diskdrake $(LIBEXECDEST)
+ install -D standalone/drakdisk $(LIBEXECDEST)
+
install -m 644 *.pm $(LIBDEST)
for i in $(PMS_DIRS); do install -d $(LIBDEST)/$$i ; install -m 644 $$i/*.pm $(LIBDEST)/$$i/;done
install -m 644 pixmaps/*.* $(PIXDIR)
install -m 644 share/*.rc $(DATADIR)/$(NAME)
+ install -m 644 share/*.css $(DATADIR)/$(NAME)
install -d $(PREFIX)/etc/security
echo 'RESTRICT=yes' > $(PREFIX)/etc/security/fileshare.conf
+ install -D standalone/drakdoc $(BINDEST)/
install -D standalone/finish-install.xsetup $(PREFIX)/etc/X11/xsetup.d/$(XSETUPLEVEL)finish-install.xsetup
install -D standalone/notify-x11-free-driver-switch.xsetup $(PREFIX)/etc/X11/xsetup.d/$(XSETUPLEVEL_HARDDRAKE)notify-x11-free-driver-switch.xsetup
install -d $(PREFIX)/etc/sysconfig
@@ -68,23 +81,28 @@ install:
mv $(LIBDEST)/icons/localedrake-32.png $(ICONSDIR)/localedrake.png
mv $(LIBDEST)/icons/localedrake-48.png $(ICONSDIR)/large/localedrake.png
mv $(LIBDEST)/icons/localedrake-16.png $(ICONSDIR)/mini/localedrake.png
- rmdir $(LIBDEST)/icons/harddrake2/menu
+ rm -rf $(LIBDEST)/icons/harddrake2/menu
install -m 644 standalone/menu/*.desktop $(DATADIR)/applications
mv $(LIBDEST)/icons/harddrake2/ $(DATADIR)/pixmaps/
mv $(SBINDEST)/convert $(DATADIR)/harddrake
mv $(SBINDEST)/service_harddrake $(DATADIR)/harddrake/
mv $(SBINDEST)/notify-x11-free-driver-switch $(DATADIR)/harddrake/
- ln -s {XFdrake,$(SBINDEST)/drakx11}
- ln -s {diskdrake,$(SBINDEST)/drakdisk}
- ln -s {drakclock,$(SBINDEST)/clock.pl}
- ln -s {harddrake2,$(SBINDEST)/drakhardware}
- ln -s {keyboarddrake,$(SBINDEST)/drakkeyboard}
- ln -s {localedrake,$(BINDEST)/draklocale}
- ln -s {logdrake,$(SBINDEST)/draklog}
- ln -s {mousedrake,$(SBINDEST)/drakmouse}
- ln -s {scannerdrake,$(SBINDEST)/drakscanner}
+ # Better public names
+ mv $(BINDEST)/localedrake $(BINDEST)/draklocale
+ # Compatibility names/links
+ # (ideally everything would be in /usr/bin...)
+ ln -s ../bin/drakdm $(SBINDEST)/drakedm
+ ln -s ../bin/drakdisk $(SBINDEST)/diskdrake
+ ln -s ../bin/drakhardware $(SBINDEST)/harddrake2
+ ln -s ../bin/drakscanner $(SBINDEST)/scannerdrake
+ ln -s drakclock $(BINDEST)/clock.pl
+ ln -s draklocale $(BINDEST)/localedrake
+ ln -s draklog $(BINDEST)/logdrake
check:
rm -f share/po/libDrakX.pot standalone/po/libDrakX-standalone.pot
@make -C share/po libDrakX.pot
- @make -C standalone/po libDrakX-standalone.pot \ No newline at end of file
+ @make -C standalone/po libDrakX-standalone.pot
+
+../tools/rpcinfo-flushed:
+ cd ../tools; gcc -Wall $(shell pkg-config libtirpc --cflags --libs) rpcinfo-flushed.c -o rpcinfo-flushed
diff --git a/perl-install/NEWS b/perl-install/NEWS
index 2bc66bcac..22339bd87 100644
--- a/perl-install/NEWS
+++ b/perl-install/NEWS
@@ -1,7 +1,2478 @@
+- use task-plasma-minimal instead of task-plasma5-minimal
+- fix bugs in any::sessions() (mga#33738)
+
+Version 18.69 - 07 June 2025
+- Updated translations
+- drakautologin now detects and manage Wayland sessions (mga#33738)
+- bytes_heavy.pl was merged into bytes.pm
+- Agafari-16 console font support was dropped from kbd
+- fix glob for svg pixbuf loader
+- Don't use mdadm --chunk option when creating level 1 RAID (mga#33767)
+- Detect legacy (non-PCI) Intel SST audio DSP devices (mga#33145)
+- install rpm's /usr/lib/rpm/sysusers.sh to stage2 image by default
+- Drop i586 bits
+
+Version 18.68 - 28 April 2024
+- Updated translations
+
+Version 18.67 - 5 January 2024
+
+- Updated translations
+
+Version 18.66 - 19 August 2023
+
+Version 18.65 - 11 July 2023
+
+- diskdrake: remove deprecated GtkPaned:handle-size style property (mga#32063)
+- add ntfs3 to isFat_or_NTFS()
+- sync list of modules needing firmware with kernel-desktop-6.4.2-2.mga9
+- Sync list_modules with kernel 6.4
+
+Version 18.64 - 24 June 2023
+
+- Updated translations
+
+Version 18.63 - 6 June 2023
+
+- rescue: mount efivars in chroot on UEFI systems (mga#31844)
+- Updated translations
+- Fix total_memory() by using sysinfo()
+- Add nvidia-newfeature.ko to nvidia modules supported list
+- drakclock: set to checked if ntpd is started.
+
+Version 18.62 - 28 April 2023
+
+- Update file list for changes in Adwaita icon locations
+
+Version 18.61 - 28 April 2023
+
+- service_harddrake: add nvidia470.ko to nvidia driver module list
+- Updated translations
+
+Version 18.60 - 17 April 2023
+
+- Manage isodumper with draksec
+- Updated translations
+
+Version 18.59 - 14 April 2023
+
+- Don't force pavucontrol when there is already pavucontrol-qt in plasma-desktop enviroment
+- Updated translations
+
+Version 18.58 - 8 April 2023
+
+- Modify draksound GUI to add support for switching to pipewire.
+
+Version 18.57 - 29 March 2023
+
+- Recognize new kernel 6.0 drivers
+- Updated translations
+
+Version 18.56 - 9 February 2023
+
+- update list of kernel modules needing firmware
+- Recognize new kernel 5.19 drivers
+- Recognize new kernel 6.0 drivers
+- Recognize new kernel 6.1 drivers
+
+Version 18.55 - 18 January 2023
+
+- diskdrake: fix partitions not being displayed initially on systems with a
+ single disk (mga#31396)
+
+Version 18.52 - 3 December 2022
+
+- run_program:
+ o add optional callback when waiting for program to terminate
+ * this allows GUI applications to respond to check-alive pings (mga#31105)
+ o add helper routine to terminate/kill a process
+- make installer routines for selecting a mirror and downloader available
+ for use by draklive-install
+- use better algorithm for determining nearest mirror (uses urpmi::mirrors)
+- finish-install:
+ o when renaming a user, update the name in any network config files
+ o detect and adapt to systems using NetworkManager
+- updated translations
+
+Version 18.51 - 29 October 2022
+
+- drakboot: ensure efivars are mounted before installing a UEFI bootloader (mga#31008)
+
+Version 18.50 - 17 September 2022
+
+- drakboot: add options to change the rEFInd background (mga#28073)
+
+Version 18.49.1 - 9 June 2022
+
+- lsnetdrake: do not crash if nmap or nmblookup are not installed (mga#12579)
+
+Version 18.49 - 8 June 2022
+
+- Recognize new kernel 5.17 drivers
+- Recognize new kernel 5.18 drivers
+
+Version 18.45 - 21 February 2021
+
+- Fix step-categories color to make it visible in the installer (mga#28375)
+- updated translations
+
+Version 18.43 - 31 January 2021
+
+- updated translations
+- drakboot: don't remove os-prober before user makes choice (mga#28223)
+
+Version 18.42 - 26 January 2021
+
+- updated translations
+- when running monitor-edid, don't use --try-in-console as
+ it can cause a GNOME session to die (mga#28124)
+- prefer using UUID for mmcblk and nvme devices (mga#28111)
+- service_harddrake:
+ o support switching between free and proprietary drivers when
+ using Live ISOs with persistence
+
+Version 18.40 - 11 January 2021
+
+- updated translations
+- drakbug_report:
+ o fail quietly when trying journalctl for system log
+- fix handling of TYPE"64bit" flags when reading rpmsrate
+- Fix syntax of 51-mageia-resume.conf (mga#28055)
+
+Version 18.39 - 04 January 2021
+
+- translations update
+
+Version 18.38 - 29 December 2020
+
+- drakboot:
+ o fix false detection of GRUB2 when installed in ESP but not in /boot (mga#27816)
+ o add option to configure rEFInd to not use EFI NVRAM (mga#27838)
+- diskdrake:
+ o fix adding parts to extended partition on hybrid ISO (mga#27862)
+ o erase iso9660 signature when clearing hybrid ISO disk (mga#27864)
+ o restrict line length when displaying base device info
+ to avoid excessive window expansion (mga#27882)
+- drakbug_report:
+ o also try journalctl for system log
+ o include draklive-install.log
+
+Version 18.37 - 5 December 2020
+
+- recognize more rtw88_*
+- recognize new kernel 5.10 drivers
+
+Version 18.36 - 25 November 2020
+
+- fix compiling tools/rpcinfo-flushed with glibc-2.32
+
+Version 18.35 - 20 November 2020
+
+- diskdrake:
+ o fix crash when a mdadm RAID array has been created outside diskdrake using
+ raw devices (mga#26707)
+- remove-unused-packages:
+ o disable timeout - it can corrupt the rpm database (mga#27580)
+- drakhardware:
+ o fix hardware support package detection (mga#27122)
+
+Version 18.34 - 14 September 2020
+
+- drakservices:
+ o include systemd sockets and timers
+- drakscanner:
+ o fix enabling saned (systemd socket, not xinetd)
+- drakboot:
+ o keep timeout value when it's 0 (mga#27158)
+- recognize new kernel 5.9 drivers
+
+Version 18.33 - 19 August 2020
+
+- fix failure to update grub2 config when service_harddrake attempts to
+ add/remove the nokmsboot option
+- add --plain to systemctl list-units, else it adds some characters at
+ the beginning of the line since systemd 246 (mga#27046)
+- recognize new kernel 5.5 - 5.8 drivers
+
+Version 18.32 - 27 June 2020
+
+- diskdrake: fix a crash when a disk has a filesystem directly without a
+ partition table (mga#26849)
+- drakboot:
+ o detect GRUB2 if it is installed in \EFI\BOOT
+ o fix switching between GRUB2 and rEFInd when installed in \EFI\BOOT
+
+Version 18.31 - 18 June 2020
+
+- drakboot: add option to install GRUB2 bootloader in \EFI\BOOT (mga#24282)
+- diskdrake: remove partition from /etc/crypttab when deleted (mga#25891)
+
+Version 18.28 - 29 May 2020
+
+- drakboot: don't die in write_grub2 if grub.cfg doesn't exist (mga#26676)
+- translation updates
+
+Version 18.27.1 - 8 May 2020
+
+- bootloader:
+ fix typo x86 -> x64 for matching 64bit grub2-efi(x86-64)
+
+Version 18.27 - 1 May 2020
+
+- diskdrake:
+ o it's now possible to set labels on exfat
+- drakboot:
+ o do not try to enable non existing acpi service
+ o rename /boot/efi as /boot/EFI if needed (mga#22395)
+- fix services::running_systemd()
+- service_harddrake: recognise noxconf boot command line option
+ (disables creation of xorg.conf, allowing X server to configure itself)
+- cache results from detect_devices::getInputDevices()
+ (significantly speeds up service_harddrake, and hence Live ISO boot)
+
+Version 18.26 - 20 March 2020
+
+- diskdrake:
+ o add minimal support for exFAT
+- drakboot: copy instead of renaming grub.cfg (mga#25542)
+- remove no more existing modules from various/crypto
+ (so that rescue system display less "module xxx not found")
+
+Version 18.25 - 18 March 2020
+
+- update list for modules needing firmware
+- recognize new kernel 5.2 - 5.5 drivers
+- diskdrake:
+ o add support for F2FS
+ o enable to inspect NILFS2 formated partitions
+ o enable to resize NILFS2
+ o enable to resize XFS even if not on LVM
+ o enhanced internal doc
+ o make reformating nilfs2 fses to work
+ o support adding partitions to Live ISOs on USB sticks (mga#25224)
+- drakfont:
+ o don't crash when fonts.cache-1 to delete doesn't exist anymore (mga#21086)
+- drakboot: initial support for setting up uefi on aarch64
+
+Version 18.21 - 23 June 2019
+
+- update left-background for Mageia 7 final
+
+Version 18.20 - 18 June 2019
+
+- translation updates
+- update list for modules needing firmware
+- recognize 8821ce (mga#24605)
+
+Version 18.18 - 20 May 2019
+
+- translation updates
+
+Version 18.17 - 12 May 2019
+
+- drakautologin: add new functions get_session_file and get_session_file_with_extension
+
+Version 18.16 - 11 May 2019
+
+- Mageia 7 Artwork
+- drakautologin: add session support for lightdm
+- update list of modules needing firmware
+
+Version 18.15 - 3 May 2019
+
+- recognize new kernel 5.1 drivers
+
+Version 18.13 - 21 April 2019
+
+- diskdrake: speed up partition table read and write (mga#15752)
+- localedrake: store country code in /etc/locale.conf (mga#24671)
+- diskdrake: fix resize of encrypted partitions (mga#22032)
+- translation updates
+
+Version 18.11 - 16 March 2019
+
+- recognize new kernel 5.0 drivers
+- translation updates
+
+Version 18.10 - 3 Feb 2019
+
+- translation updates
+
+Version 18.9 - 17 Dec 2018
+
+- drakboot:
+ o only prefer rEFInd if it is installed in the root fs (mga#23944)
+ o support 32-bit UEFI with 64-bit O/S
+- desktop kernels are now PAE, for PTI security fixes to work properly,
+ so if cpu is not supporting it, install the desktop586 kernel
+- translation updates
+
+Version 18.7 - 27 Nov 2018
+
+- drakdm: fix DM preference when none is selected (don't default to XDM)
+- fix some DE name/capitalisation inconsistencies (mga#23634 + others)
+
+Version 18.5 - 19 Nov 2018
+
+- recognize new kernel 4.1[89] drivers
+
+Version 18.4 - 4 Nov 2018
+
+- adapt drakdm and set_autologin for display-manager service, not prefdm (mga#22593)
+- translation updates
+
+Version 18.3 - 12 Oct 2018
+
+- drakboot:
+ o handle extra white space when reading rEFInd config file
+ o don't simplify label when writing rEFInd config file
+
+Version 18.2 - 5 Oct 2018
+
+- drakboot:
+ o add support for the rEFInd boot manager (mga#15153)
+ o include the "Mageia" entry in the gub2 Default choices (mga#23393)
+- mdadm raid:
+ o raid10 can be created with just 2 disks as a high-performance raid1
+ o raid10: use layout f2 with 2 disks for performance
+ o raid6 can be used with 3 disks and up
+- finish-install: remove current media before adding online media (mga#19742)
+- recognize smartpqi driver (mga#23305)
+- service_harddrake: recognize new nvidia390 driver
+
+Version 17.98 - 22 June 2018
+
+- recognize new kernel 4.1[5-7] drivers
+
+Version 17.97 - 5 June 2018
+
+- harddrake2:
+ o don't list HDA "input" devices as keyboards (mga#9986)
+- drakboot:
+ o read/write extlinux.conf in U-Boot backend for ARM
+ o build initrd for ARM arch
+ o create /usr/lib/linux symlink for devicee tree files
+ o add specific boot options for Raspberry Pi serial console, I/O scheduler, CMA
+
+Version 17.96 - 13 March 2018
+
+- drakboot: detect 32-bit UEFI GRUB2 bootloader when probing
+- remove leftover debug message when listing systemd services
+- translation updates
+
+Version 17.95 - 10 February 2018
+
+- recognize more new kernel-4.14 drivers
+
+Version 17.93 - 19 January 2018
+
+- bootloader:
+ o Combine bootloader perImageAppend and default_append keys
+ (mga#21263, mga#21250)
+ o Fix drakboot video mode selection when using grub2 (mga#21246)
+ o Fix parsing of grub2 menu entries to support 16-bit mode (mga#21247).
+- diskdrake:
+ o ensure device major/minor numbers are reread after writing the
+ partition table (mga#22032)
+- iwlwifi-agn-ucode is renamed to iwlwifi-firmware (mga#22316)
+- update list of modules needing firmware
+- sync with kernel 4.14
+
+Version 17.90 - 18 September 2017
+
+- drakboot:
+ o better read back config
+ o fix undefined labels when eg: Xen is installed (mga#19014)
+ drakboot crashed with "undefined value for mandatory argument 'text''
+
+Version 17.88 - 7 July 2017
+
+- translation updates
+
+Version 17.85 - 22 June 2017
+
+- don't overwrite custom grub2 settings when updating (mga#20596)
+- recognize 8812au (mga#21043)
+
+Version 17.84 - 5 June 2017
+
+- translation updates
+
+Version 17.83 - 4 June 2017
+
+- drakclock:
+ o fix crash introduced in 17.77 (mga#20956)
+- translation updates
+
+Version 17.82 - 6 May 2017
+
+- drakboot:
+ o add "please wait" message when running update-grub2
+- service_harddrake:
+ o require reboot if nokmsboot option changed (mga#20455).
+
+Version 17.80 - 3 May 2017
+
+- updated DE selection and advertising artwork for Mageia 6
+
+Version 17.79 - 26 April 2017
+
+- updated translation snapshot
+
+Version 17.77 - 4 April 2017
+
+- diskdrake:
+ o don't require a BIOS boot partition when performing an upgrade (mga#20338)
+ o make partitioning more robust with "Use entire disk" option (mga#20619):
+ * add safety net for informing the kernel after writing a DOS partition
+ table.
+ * speed up proc_partitions::compare() and avoid unwanted udev events.
+ o force reinitialisation of partition suggestions after wiping disk
+ (mga#20621)
+- various fixes to do_pkgs during Live installs (mga#20620):
+ o fix do_pkgs_standalone::are_installed() for Live install
+ o fix do_pkgs_standalone::remove() for Live install
+ o fix fast path for do_pkgs::ensure_is_installed()
+- drakclock:
+ o fix the display of the clock (mga#11776)
+
+Version 17.75 - 17 March 2017
+
+- diskdrake:
+ o allow a BIOS boot partition to be located on any disk (mga#20161)
+ o ensure kernel is informed when a MBR partition table is cleared
+ o clearing GPT partitions:
+ * delay thus fix clearing GPT partitions (mga#20264)
+ ("failed to del partition #1 on /dev/...")
+ * don't send separate events to the kernel about removing/adding GPT partitions,
+ just tell it to reread the whole newly cleared & allocated partition table
+ o tell the kernel all actions at once on GPT partitions instead of telling it
+ separatly about removing partitions A, B & C, then adding partition E, F &G
+
+Version 17.74 - 9 March 2017
+
+- recognize LXQt (Razor-qt is now LXQt)
+- fix Enlightenment (e21) recognition
+
+Version 17.73 - 8 March 2017
+
+- recognize new kernel-4.8 drivers
+
+Version 17.72 - 25 February 2017
+
+- inhibit udisks2 when running drakdisk (mga#20247)
+- explicitely probe LVMs in live install (mga#14699)
+- exclude x11-driver-video-vmware from unneeded packages (mga#19979)
+- partitioning_wizard:
+ o allow a BIOS boot partition to be located on any disk (mga#20161)
+ o fix auto-allocation of BIOS boot partitions (mga#20161, mga#19888)
+ o don't suggest mountpoint for ESP when doing a legacy boot install (mga#20164)
+- diskdrake:
+ o fix bugs in sync'ing the kernel's partition table cache (mga#20074)
+ o detect and handle DOS "Empty" partition types (mga#20074)
+- sync nonfree firmware list with kernel-4.9
+
+Version 17.71 - 18 January 2017
+
+- partitioning_wizard:
+ o fix bug in detecting whether a BIOS boot partition is required (mga#19935)
+- fix inserting extended partition in the middle
+
+Version 17.69 - 12 January 2017
+
+- bootloader:
+ o disable audit logging as it floods the logs
+- diskdrake:
+ o fix exception when clearing all partitions on !UEFI (mga#20083)
+- recognize new kernel-4.9 drivers
+- rely on Gtk+ for checking if we can connect to Xserver (mga#19498)
+ (meaning relying on xwayland under Wayland)
+
+Version 17.65 - 12 December 2016
+
+- drakboot:
+ o describe what skipping os-prober does (mga#18538)
+ o show generic help too when using grub2
+
+Version 17.63 - 9 December 2016
+
+- drakedm:
+ o allow disabling autologin on LXDM (mga#17616)
+
+Version 17.60 - 15 November 2016
+
+- diskdrake:
+ o fix being unable to format a newly part (mga#19172)
+ o offer to format unmounted parts that have a defined mount point
+
+Version 17.59 - 8 November 2016
+
+- any.pm: Fix support of plasma under X and wayland in running_window_manager()
+- mygtk3:
+ o adapt to WebKit2 for disabling context menu (eg: in mcc)
+
+Version 17.58 - 24 October 2016
+
+- drakboot:
+ o make kernel server default if installed
+ (we were only checking for long dead flavors such as enterprise, ...)
+
+Version 17.56 - 19 September 2016
+
+- detect ovirt too (mga#19308)
+- fix gtk+3.22 regression (mga#19406)
+- sync nonfree firmware list with kernel-4.7
+
+Version 17.54 - 13 August 2016
+
+- drakautologin:
+ o add support for LXDM (mga#17616)
+ o add support for SDDM (mga#17913)
+- drakedm:
+ o translate SDDM instead of KDM
+- filesharelist:
+ o fix checking package is installed (mga#13353)
+ o fix Samba package name (samba-server -> samba)
+- harddrake2:
+ o em28xx drives TV cards, not webcam (mga#18995)
+
+Version 17.53 - 31 July 2016
+
+- diskdrake:
+ o first usable sector is LBA34 for GPT
+ o respect used scheme when clearing a disk
+ (ie do not switch from gpt to dos scheme on small disk)
+- drakboot:
+ o fix .old backup for grub2's grub.cfg
+- authentication: add support for sha256/sha512 and default to sha512
+
+Version 17.52 - 17 July 2016
+
+- drakboot:
+ o fix not being able to edit default grub2 cmdline (mga#18952)
+
+Version 17.51 - 12 July 2016
+
+- diskdrake:
+ o don't offer to format RAID or BIOS boot partition
+ o fix clearing an already filled GPT disk
+ o make clear a BIOS boot partition cannot have a mount point
+ o make error about BIOS boot partition more explicit about
+ its purpose and that it must be created (mga#18923)
+
+Version 17.50 - 8 July 2016
+
+- diskdrake:
+ o display a wait message when adding a PV to VG
+
+Version 17.49 - 6 July 2016
+
+- diskdrake:
+ o GPT: prevent geometry issue on last partition (mga#18666, mga#17796)
+- recognize new kernel-4.7 drivers
+
+Version 17.48 - 4 July 2016
+
+- diskdrake:
+ o do not offer to check for bad blocks on btrfs (mga#12393)
+ o do not warn about no bootloader can boot LVM as grub2 can (mga#9426)
+ o do not warn about no bootloader can boot RAID[^1] as grub2 can (mga#11324)
+ o enable bad blocks checking on JFS
+- drakboot:
+ o allow installing grub2 on XFS /
+ o make clear grub2 is installed on ESP under UEFI
+- finish-install:
+ o drop reload-dm hack
+ o drop gnome-reboot hack
+
+Version 17.47 - 30 June 2016
+
+- recognize some missing wireless drivers (mga#16768)
+- diskdrake:
+ o fix being able to create vfat on UEFI (mga#15698)
+
+Version 17.46 - 24 June 2016
+
+- drakboot:
+ o do not alter /etc/default/grub on kernel updates, only when running
+ drakboot (mga#18783)
+
+Version 17.45 - 24 June 2016
+
+- diskdrake:
+ o keep UUID when formatting btrfs (mga#18673)
+
+Version 17.44 - 24 June 2016
+
+- diskdrake:
+ o fix preserving UUID when formatting jfs/nilfs/xfs
+- drakboot:
+ o add a "Do not touch ESP or MBR" option (mga#18770)
+ o do not offer to pick the disk where to install grub2 on UEFI
+ o filter GPT disks w/o a BIOS boot part (mga#18770)
+ o warn if grub2 is not installed on MBR/ESP
+
+Version 17.42 - 22 June 2016
+
+- drakboot:
+ o add support for encrypted grub2 passwords (mga#15930)
+ o grub2: do not overwrite ESP if not installing on it (mga#15583)
+ o grub2: fix setting default entry when in a submenu (mga#18560)
+
+Version 17.41 - 20 June 2016
+
+- drakboot:
+ o fix the grub2 post-install check (mga#18739)
+
+Version 17.40 - 20 June 2016
+
+- drakboot:
+ o ensure we've the right grub2 flavor (mga#18739)
+
+Version 17.39 - 18 June 2016
+
+- diskdrake:
+ o fix ESP tagging in some cases
+
+Version 17.38 - 16 June 2016
+
+- diskdrake:
+ o fix offering to create a GRUB_BIOS partition in custom mode (mga#18656)
+ o fix inverted test when checking need for a GRUB_BIOS partition (mga#18704)
+
+Version 17.37 - 12 June 2016
+
+- diskdrake:
+ o try harder to guess if we need a GRUB_BIOS partition (mga#18656)
+
+Version 17.36 - 11 June 2016
+
+- diskdrake:
+ o add a GRUB_BIOS partition if needed (mga#18656)
+ o MBR limit really is 2TiB, not 4, so use GPT for disks > 2TiB
+
+Version 17.34 - 6 June 2016
+
+- drakboot:
+ o enable to (un)install os-prober (mga#16010, mga#18538)
+ o fix reading back last grub2 entry
+ o only overwrite GRUB_CMDLINE_LINUX_DEFAULT on first install (mga#18112)
+ o only overwrite install.sh when actually installing boot loader (mga#17455)
+ o set GRUB_DEFAULT + GRUB_SAVEDEFAULT (mga#9627, mga#16059)
+ o stop offering grub legacy & lilo on new installs (mga#18583)
+- running commands as user:
+ o fix the fallback when the helper didn't provide the real UID (mga#18288)
+ o guess the right user after the switch to polkit (mga#18288)
+
+Version 17.33 - 27 May 2016
+
+- list all drivers needing a proprietary driver
+- localedrake:
+ o install the right IM packages on Plasma when using fcitx
+
+Version 17.30 - 7 May 2016
+
+- install nonfree firmware for amdgpu, i915, nouveau
+
+Version 17.29 - 4 May 2016
+
+- localedrake:
+ o install the right IM packages on Plasma
+- harddrake2:
+ o don't class Logitech wired kbd+mouse as unknown (mga#3510)
+
+Version 17.28 - 26 April 2016
+
+- recognize new kernel-4.6 drivers
+
+Version 17.25 - 1 April 2016
+
+- diskdrake:
+ o fix detecting nvme devices as block devices
+ o fix displaying partitions when there's only one disk
+ (and the resulting crash: mga#18076)
+
+Version 17.24 - 23 March 2016
+
+- use systemd-detect-virt for detecting virtualization technology
+
+Version 17.22 - 21 March 2016
+
+- display_help:
+ o port from WebKit1 to WebKit2 (mga#15031)
+
+Version 17.20 - 18 March 2016
+
+- diskdrake:
+ o fix partitions not initially displayed (mga#17564)
+
+Version 17.19 - 24 February 2016
+
+- detect nvme devices as block devices (mga#17743)
+- detect partitions on nvme devices (mga#17743)
+- enable to use WebKit2 with mygtk3
+- drakboot:
+ o partial fix for removing kernel from grub2 config (mga#16268)
+
+Version 17.18.1 - 10 February 2016
+
+- drakboot:
+ o add support for grub2-text too (mga#9431)
+- library (for draklive-install):
+ o check ESP has the right fs type (mga#16246)
+ o check that ESP mount point actually is an ESP
+
+Version 17.16 - 25 January 2016
+
+- detect_devices:
+ o fix a crash on non x86
+
+Version 17.15 - 16 January 2016
+
+- diskdrake:
+ o fix crash (mga#17484)
+
+Version 17.12 - 2 January 2016
+
+- misc cleanups
+- diskdrake:
+ o auto fill LV name from mntpnt (mga#5407)
+ o suggest "lv_foo" instead of just "foo" for LVname
+- drakboot:
+ o skip swap in the list of partitions (mga#15767)
+ o split drakautologin from drakboot (mga#7160)
+- draksound:
+ o drop support for ISApnp sound cards
+ o drop support for picking an arbitrary driver
+ o drop support for switching between OSS <-> ALSA
+ o make troubleshooting not an advanced setting
+
+Version 17.8 - 22 December 2015
+
+- recognize new kernel-4.3 drivers
+- use sddm instead of kdm
+- use task-plasma5 instead of task-kde4
+
+Version 17.3 - 4 December 2015
+
+- recognize new kernel-4.3 drivers
+- drakboot:
+ o fix lightdm support after upstream config file change
+
+Version 17.1 - 27 August 2015
+
+- recognize new kernel-4.1 drivers
+
+Version 16.104 - 13 June 2015
+
+- diskdrake:
+ o prevent errors when telling kernel to reread partition table
+
+Version 16.103 - 4 June 2015
+
+- drakfont:
+ o fix moving fonts (mga#16074)
+- diskdrake, partitioning_wizard:
+ o only use current disk when auto partitioning, wiping disk,
+ using free space (mga#16055)
+
+Version 16.102 - 29 May 2015
+
+- diskdrake:
+ o ignore special 'Packard_Bell' and 'Push_Button_Reset' partitions (mga#15999)
+ o run udevadm settle after actions that trigger device reload (mga#15999)
+- harddrake2:
+ o set min width for left panel (mga#16026)
+
+Version 16.101 - 25 May 2015
+
+- library (for draklive-install):
+ o fix not always suggesting /boot/ESP mount point (mga#15689)
+- diskdrake:
+ o set pt_type according to fs_type before flag cases (mga#16029)
+- localedrake:
+ o fix reading back IM config (mga#15761)
+
+Version 16.99 - 20 May 2015
+
+- diskdrake:
+ o display cosmetics when reading back GPT partitions
+ o fix mnt point for FAT partitions on GTP (mga#15987)
+ o set the proper GUID for FAT partitions on GPT
+- drakboot:
+ o do not detect grub2 on UEFI when there's no bootloader
+ o fix default grub2 kernel parameters (mga#15984)
+
+Version 16.98 - 19 May 2015
+
+- all tools:
+ o fix banner icon being cliped (mga#12358)
+- drakfont:
+ o fix crash (mga#13627)
+ o fix crash with --windows_import (mga9347)
+ o fix an error with --testing (mga#13363)
+- localedrake:
+ o don't try to install non existant scim-googlepinyin (mga#6681)
+
+Version 16.97 - 18 May 2015
+
+- library (for draklive-install):
+ o enables to get raw available space (mga15257)
+
+Version 16.96 - 17 May 2015
+
+- library (for draklive-install):
+ o fix regression refusing FAT for ESP (mga#15962)
+
+Version 16.95 - 14 May 2015
+
+- library (for draklive-install):
+ o fix a crash after "insufficient space" error (mga#15919)
+- diskdrake:
+ o fix a gtk+3 regression crash with --dav (mga#13204)
+
+Version 16.94 - 10 May 2015
+
+- remove_unused_packages():
+ * dont remove crda, iw, wireless-regdb, usb_modeswitch, usb_modeswitch-data
+ (they are needed to be able to support hotplugged wireless hw)
+ this also fixes mga#15875 that got broken by mga#10647
+
+Version 16.93 - 9 May 2015
+
+- drakboot:
+ o do use vga value for grub2
+ o fix setting default grub2 entry
+
+Version 16.92 - 9 May 2015
+
+- drakx-net:
+ o recognize r8723bs (mga#15874)
+- diskdrake:
+ o do not set noauto for /boot/EFI (mga#15627)
+- drakboot:
+ o add a dedicate step for grub2 (mga#9627)
+ o backup grub2 files before configuring
+- harddrake2:
+ o fix detecting AHCI as SATA (mga#9992)
+ o fix detecting some memory chips (mga#5810)
+ o fix not listing uvccideo managed devices as wecams (mga#9992)
+
+Version 16.90 - 28 April 2015
+
+- localedrake:
+ o write input methods to /etc/locale.conf (mga#15464)
+- run vgchange before updating the list of LVMs, not after, and even if not
+ in install (should help with mga#7578).
+
+Version 16.89 - 25 April 2015
+
+- Ignore special partitions on mmc (mga#15759)
+
+Version 16.88 - 25 April 2015
+
+- ensure country/timezone locale is kept when removing unused locale
+ packages (mga#3723)
+
+Version 16.87 - 22 April 2015
+
+- partitioning_wizard:
+ o improve the display box (mga#15728)
+
+Version 16.86 - 20 April 2015
+
+- bootloader:
+ o dont override 'splash' and/or 'quiet' when adding 'noiswmd' (mga#15666)
+- partitioning_wizard:
+ o use the windows partition with the most available space on current
+ disk, not the last one across all disks (mga#15589)
+ o suggest up to 20GB/20% of the windows partition (whichever is larger),
+ previously 6GB/10% (mga#15589)
+ o hide empty space < 2MB, we have such holes due to alignment (mga#15733)
+- ugtk2, ugtk3, harddrake2:
+ o do not "restore" mouse cursor on the root window, we haven't set it to
+ 'wait' since 2005 and this causes a crash if we don't own it (mga#15729).
+- speed up reading of flags from GPT partition table (mga#15621).
+
+Version 16.85 - 15 April 2015
+
+- reuse ESP with "use free space" in live (mga#15690)
+
+Version 16.84 - 14 April 2015
+
+- drakboot:
+ o do not pass useless parameters to grub2 under UEFI (mga#15692)
+ o fix kernel booting in blind mode (mga#15291)
+
+Version 16.82 - 13 April 2015
+
+- diskdrake:
+ o detect Lenovo recovery & 'SYSTEM_DRV' as such (mga#1371)
+ o do add a ESP if it was removed by "Clear All"
+ o ignore ESP for "use free space on MS"
+- drakboot:
+ o default to GRUB_DISABLE_RECOVERY=falss for 'failsafe' entry (mga#15675)
+
+Version 16.81 - 12 April 2015
+
+- dont force 'p' for dmraid partitions, it's conditional depending
+ on device naming like dmraid, kpartx and kernel handles it
+- diskdrake:
+ o don't guess a drive letter for ESP partitions
+
+Version 16.80 - 9 April 2015
+
+- diskdrake:
+ o don't guess a drive letter for recovery partitions (mga15636)
+- drakboot:
+ o check there's still some place on /boot with grub2 too
+ o generate core.img for UEFI
+ o fix detecting grub2 on UEFI
+ o write /boot/grub2/install.sh like for grub instead of drakboot.conf
+
+Version 16.79 - 7 April 2015
+
+- drakboot:
+ o keep vga= parameter when switching to grub2 (mga#9888)
+
+Version 16.78 - 7 April 2015
+
+- drakboot:
+ o fix installing grub2 on MBR (mga#15640)
+ (regression introduced in 16.76)
+
+Version 16.77 - 7 April 2015
+
+- bootloader:
+ o add 'noiswmd' to kernel command line to manage isw_ bios
+ fakeraids with dmraid for now (instead of mdadm) (mga#11289, mga#14330)
+ o allow btrfs for / without separate /boot with grub2 (mga#15374)
+- partitioning wizard:
+ o do not offer to select RAID as it result in a crash (mga#5800)
+
+Version 16.76 - 3 April 2015
+
+- drakboot:
+ o fix grub2 rescue (mga#13408, mga#13901)
+ o log grub2-install failures (mga#15439)
+- diskdrake:
+ o really try to detect recovery partitions on GPT
+
+Version 16.75 - 30 March 2015
+
+- diskdrake:
+ o better fix for fail to read too corrupted partition table
+ o fix getting ESP with "use free space":
+ make sure to not override /boot/EFI mount point with /media/win_X
+ o make sure to check for existing ESP on all disks
+ o relax checks for ESP
+ o try to detect recovery partitions on GPT
+- stage2:
+ o revert changes made in 16.70 for a better fix to mga#13894
+
+Version 16.74 - 27 March 2015
+
+- diskdrake (GPT):
+ o fix retrieving ntfs partitions as ntfs-3g instead of ntfs
+ o really fix retrieving swap partition type
+
+Version 16.73 - 27 March 2015
+
+- diskdrake (GPT):
+ o fix creating RAID devices (mga#15400)
+ o fix "I cannot read the partition table of device XXX, it is too corrupted"
+ o fix retrieving LVM/RAID/swap partition type
+ o fix tagging lvm/raid as "linux filesystem"
+ o fix tagging ntfs-3g as "linux filesystem"
+ o fix tagging swap as "linux filesystem"
+
+Version 16.71 - 25 March 2015
+
+- diskdrake:
+ o fix retrieving ESP partition type on GPT (mga#15366)
+ o log which GPT partition we fail to add/del
+ o set proper GUID to ESP partitions with GPT layout
+- bump max_nb() to 131 to cover mdadm managed imsm and ddf1 bios
+ fakeraids (containers defaults to >= 127 and partitions <=126)
+
+Version 16.70 - 21 March 2015
+
+- better fix for the scrollbar in the package installation details
+ window (Martin Whitaker, mga#13894)
+
+Version 16.69 - 20 March 2015
+
+- efi partitioning fixes from tv
+- diskdrake & package install gtk fixes from Martin Whitaker
+
+Version 16.68 - 17 March 2015
+
+- drakboot:
+ o log mkinitrd faillures (mga#9201)
+- fix mis-detecting some mobile broadband modems (mga#12492)
+
+Version 16.66 - 5 March 2015
+
+- diskdrake:
+ o add "nofail" option to "foreign" mountpoints to avoid unwanted recovery mode (#10179)
+
+Version 16.63 - 27 February 2015
+
+- diskdrake:
+ o fix too wide buttons (mga#12422, mga#13471, mga#14839, mga#15379)
+
+Version 16.62 - 19 February 2015
+
+- diskdrake (mga#12422, mga#11988, mga#14839, mga#15272, mga#15264):
+ o use an horizontal scrolling bar when needed
+ o workaround too wide togglebuttons with empty label with gtk+3 and/or Adwaita
+- library (for draklive-install):
+ o use a vertical scrolling bar when needed (mga#15272)
+
+Version 16.56 - 10 February 2015
+
+- service_harddrake:
+ * add support for the new nvidia340 driver (mga#15255)
+ * drop references to old unsupported nVidia drivers
+
+Version 16.55 - 9 February 2015
+
+- drakclock: Ensure that /etc/localtime is a symlink (mga#14888)
+- users: Make sure to restart accounts-daemon after adding users (mga#15113, mga#14476)
+- i18n: Write the desired console font to /etc/vconsole.conf
+- i18n: Use the x-distro /etc/locale.conf file instead of /etc/sysconfig/i18n
+- drakedm: Do not use ancient dm init script to restart DM
+
+Version 16.53 - 6 February 2015
+
+- switch from oxygen-gtk to Adwaita theme
+
+Version 16.52 - 5 February 2015
+
+- libDrakX/fsedit.pm: new "simple" partitioning scheme
+ o create separate /home only when more than 50G are available
+ o in such case, / is 6/19th of the available space up to 50G,
+ swap is 1/19th up to 4G and /home is the rest (12/19th)
+ o https://ml.mageia.org/l/arc/dev/2014-12/msg00330.html
+- recognize new kernel-3.19 drivers
+- fix GPT initialization on empty disk
+
+Version 16.50 - 9 January 2015
+
+- add UEFI support
+
+Version 16.49 - 20 December 2014
+
+- recognize new kernel-3.18 drivers (mga#14799)
+
+Version 16.47 - 5 December 2014
+
+- drakboot:
+ o do not crash if fstab contains a bind mount on a file (mga#14657)
+
+Version 16.46 - 25 November 2014
+
+- harddrake:
+ o recognize e17/lxde/mate/razor (mga#12495, Luc Menut)
+- split drakbug support in its own module (mga#14565)
+
+Version 16.44 - 23 October 2014
+
+- fix drakxservices not showing all services due to systemctl output change
+- draksound
+ o adapt to the switch to systemd for spawning PulseAudio
+
+Version 16.42 - 18 September 2014
+
+- only allow GRUB2 when booting on btrfs
+- don't include display_installer_help in drakxtools, it can not run outside
+ install
+
+Version 16.41 - 31 August 2014
+
+- add packages to wanted_hardware_packages list to prevent them being removed:
+ * b43-fwcutter, b43-openfwwf, atmel-firmware, speedtouch-firmware
+ * zd1211-firmware, isdn4k-utils, rfkill, x11-driver-input-wacom
+- allow /boot on btrfs
+- recognize new kernel-3.17 drivers
+
+Version 16.39 - 17 August 2014
+
+- mygtk3:
+ o add support for gtkset() on 'ComboBoxText' widgets for drakpxelinux
+- recognize new kernel-3.16 drivers
+- switch uid/gid boundary to 1000+
+
+Version 16.37 - 3 July 2014
+
+- diskdrake:
+ o improve fs sorting in combo box (mga#13640)
+
+Version 16.36 - 1 July 2014
+
+- hide /boot/efi check for now (mga#13638)
+- fix not being able to select packages when list contains only one (mga#13492)
+
+Version 16.34 - 26 June 2014
+
+- do_pkgs:
+ o fix a warning in mousedrake
+- drakclock:
+ o fix crash on clicking "Cancel" after TZ selection (mga#13534)
+ o fix loosing TZ choice when canceling TZ selection (mga#13534)
+- drakfont:
+ o fix installing fonts (Frdric Buclin, mga#11849)
+
+Version 16.33 - 18 June 2014
+
+- stop creating some /dev entries that are managed by udev
+
+Version 16.32 - 15 June 2014
+
+- recognize new kernel-3.15 drivers
+
+Version 16.30 - 4 June 2014
+
+- add some POD documentation
+- drop (broken) support for Alpha, PPC, Sparc & IA64
+- fix detecting some UPS devices (mga#13424)
+- drakbug:
+ o fix some package names after the mdv->mga fork
+- localedrake:
+ o stop configuring HAL
+ o update locales list
+
+Version 16.28 - 28 April 2014
+
+- recognize new kernel-3.14 drivers
+
+Version 16.27 - 18 February 2014
+
+- nuke create_link_source(), as we haven't supported building against an
+ unprepared source for ages, and currently also can trigger wrong symlinks
+ when kernel-source is installed before for example kernel-linus as found
+ out during QA for mga#12518 and debugging the issue on irc
+
+Version 16.26.8 - 4 February 2014
+
+- harddrake:
+ o fix untranslated "Help" entry in menu (mga#12497)
+
+Version 16.26.7 - 25 January 2014
+
+- do not exec pkexec but run it so it has a parent process to fix double fork
+ issues mga#11184 mga#12364
+
+Version 16.26.1 - 20 January 2014
+
+- diskdrake:
+ o increase back minimum partition width for Oxygen (mga#11977)
+
+Version 16.26 - 20 January 2014
+
+- diskdrake:
+ o fix sizing partition widgets
+ o revert minimum partition width to its pre-gtk3 value
+
+Version 16.23 - 16 January 2014
+
+- dont remove pulseaudio-module-bluetooth (mga#12323)
+- fix a rpmdrake crash (mga#12331)
+
+Version 16.22 - 15 January 2014
+
+- services:
+ o use --no-block with chkconfig and systemctl enable to prevent systemd reload
+ and potential crash (especially during first/live boot)
+- harddrake:
+ o fix detecting some wireless devices as scanners (mga#9895)
+ o fix random order of fields with perl-5.18
+
+Version 16.21 - 13 January 2014
+
+- diskdrake:
+ o do not propose check bad blocks for btrfs (Manuel Hiebel, mga#10116)
+ o increase minimum partition width for Oxygen (mga#11977)
+ (if not enough, we will disable labels on partitions buttons again)
+- drakboot:
+ o add minimal/experimental lightdm autologin support (mga#11746)
+- harddrake, logdrake:
+ o fix menu accelerators
+- --version option:
+ o display mga copyright too (mga#10289)
+
+Version 16.18 - 28 December 2013
+
+- detecting input devices:
+ o display the real accessed /dev/input/eventX file (mga#8232)
+ o do not crash if /dev/input/eventX doesn't exist (mga#10296)
+ o do not fill logs with "Cannot open /dev/input/eventX" (mga#8232)
+- draksec:
+ o use expanders for clarity
+
+Version 16.17 - 20 December 2013
+
+- drakfont:
+ o fix a crash (mga#12057)
+
+Version 16.16 - 16 December 2013
+
+- fix a drakx crash (mga#6031)
+
+Version 16.15 - 12 December 2013
+
+- workaround a gtk+3 issue resulting in blacked embbeded tools with some
+ locales (eg: pl/uk) (mga#11969)
+
+Version 16.13 - 10 December 2013
+
+- localedrake:
+ o fix crash when selecting an input method (mga#11939)
+
+Version 16.12 - 9 December 2013
+
+- partitioning wizard:
+ o log failures (mga#11924)
+ o workaround a crash (mga#11924)
+
+Version 16.11 - 6 December 2013
+
+- fix a crash in rpmdrake when package list is empty (mga#11901)
+
+Version 16.8 - 5 December 2013
+
+- prevent drakxtools-backend to require Glib::Object::Introspection (mga#11842)
+
+Version 16.7 - 5 December 2013
+
+- diskdrake:
+ o fix a crash when creating partitions (mga#11876)
+
+Version 16.6 - 4 December 2013
+
+- fix blue background behind left panel text (mga#11866)
+ (for not yet released gtk3 mcc)
+
+Version 16.5 - 3 December 2013
+
+- diskdrake:
+ o detect eMMc block devices (Luc Menut, mga#11812)
+ o fix a crash in partitioning wizard (mga#11820)
+ o show labels on partition buttons again but ellipsized (mga#11858)
+
+Version 16.4 - 2 December 2013
+
+- fix banners not being blue anymore with Oxygen-gtk theme (kbo#328270)
+- diskdrake:
+ o fix diskdrake colorized partition tabs with Adwaita (bgo#719624)
+
+Version 16.3 - 30 November 2013
+
+- harddrake:
+ o fix starting after draksound drop OSS/ALSA switch
+
+Version 16.2 - 29 November 2013
+
+- diskdrake:
+ o fix dialog keeping growing when switching tabs (mga#11822):
+ move partition labels to toolips
+- draksound:
+ o do not offer to switch to OSS
+ o do not offer to switch to another driver if there's none
+ o do not offer to pick a random driver when we've a default one
+- finish-install:
+ o no more run urpmi.update when adding media
+ (uneeded with urpmi-7.27+)
+- mygtk3 layer:
+ o add support for RadioMenuItems for rpmdrake
+- ugtk3 layer:
+ o make shrinking window work again (eg: draknfs)
+
+Version 16.1 - 28 November 2013
+
+- mcc:
+ o restore galaxy RC file, thus fixing left panel text color (mga#11773)
+ o fix Gtk2 banners' text position (mga#11778)
+- Banners:
+ o align text to left instead of centering it
+ o text is rendered as blue again
+- diskdrake:
+ o prevent looping forever when sizing partition tabs
+- logdrake:
+ o fix Gtk3::TextView::get_window() passed too few parameters (mga#11807)
+
+Version 16.0 - 23 November 2013
+
+- switch from Gtk+-2 to Gtk+-3:
+ o Banners: most themes work OK but Oxygen-gtk3...
+ o diskdrake: most themes work OK but Oxygen-gtk3...
+ o drakclock cannot temporary changes the clock
+ o notifications work again for net_applet
+- detect_devices:
+ fix ids to be numeric
+- drakxservices:
+ o simplify: just use tooltips for service descriptions"
+- drakclock:
+ o assume chrony rather than ntp when neither is installed
+- draksec:
+ o make sure to restart polkitd after writing rules
+ o support polkit rules editing for permissions overrides
+
+Version 15.73.1 - 19 November 2013
+
+- add chrony support to drakclock mga#11092
+
+Version 15.73 - 12 November 2013
+
+- polkit: fix wrappers to properly escape arguments when calling the binary
+
+Version 15.72 - 9 November 2013
+
+- dont remove radeon-firmware or any network related firmwares as we dont
+ know when some hw gets plugged that needs it
+
+Version 15.68 - 14 October 2013
+
+- fix path to urpmi.update (so it works without mgaonline installed mga#11125)
+- recognize new kernel-3.12 drivers
+- wrap more standalone tools in polkit (mga#11125, mga#11418)
+
+Version 15.67 - 10 October 2013
+
+- recognize new kernel-3.11 drivers
+
+Version 15.66 - 3 October 2013
+
+- HW detection:
+ o fix detecting some soft RAID (mga#11139 and the like)
+ o detect wifi cards managed by ssb driver (mga#9378)
+- remove symlinks during install that are now handled in drakx-kbd-mouse-x11
+- diskdrake:
+ o enable to format already formated btrfs partitions (mga#11256)
+- use polkit for authorisation (mga#11125)
+- drakauth:
+ o fix ldap configuration (mga#10005)
+- ensure files are installed for nfs (mga#10301)
+
+Version 15.57 - 16 July 2013
+
+- adapt to latest btrfs utils for resizing
+
+Version 15.56 - 16 July 2013
+
+- detect wifi cards managed by bcma driver (mga#9378)
+- detect new kernel-3.10 drivers
+
+Version 15.55 - 12 June 2013
+
+- drakfirewall: fix config not applied (#9941)
+- drakboot:
+ o fix displaying need to install acpi* packages when they're already installed
+ o read/save choosen default entry
+- finish-install:
+ kbluetooth is replaced by bluedevil, (#10082)
+- harddrake2:
+ o detect more radio devices
+
+Version 15.54 - 17 May 2013
+
+- fix offering to install shorewall & shorewall-ipv6 when already installed
+
+Version 15.53 - 15 May 2013
+
+- logdrake:
+ o fix rsyslog<->syslog-ng install loop (mga#10086)
+
+Version 15.51 - 13 May 2013
+
+- drop support for fetching release-notes.ARCH.html
+- finish-install: enable Nonfree/Tainted repositories if a package
+ having a matching name is installed (#8379)
+- detect_devices: check for phy80211 sysfs directory as well to detect
+ wireless devices
+
+Version 15.50 - 7 May 2013
+
+- harddrake service:
+ o do not disable bluetooth service if adapter disappears
+ (for example if disabled by Fn keys)
+ systemd will automatically disable the service if needed
+ o install ethernet/wireless packages when a new device is detected,
+ this shoud help for Broadcom devices
+
+Version 15.47 - 30 April 2013
+
+- skip comments in /etc/crypttab (Colin, mga#9905)
+
+Version 15.46 - 29 April 2013
+
+- logdrake:
+ o ensure syslog-daemon is installed (stopgap to full journal support)
+
+Version 15.45 - 27 April 2013
+
+- diskdrake:
+ o only allow 'acl' option for extX & reiserfs (mga#9884)
+- drakboot:
+ o try harder to get a label for other OSes (mga#9849,9681)
+
+Version 15.44 - 23 April 2013
+
+- diskdrake:
+ o fix a crash when reloading partition table (mga#9838)
+ o fix a crash when trying to create a encrypted LVM partition (mga#9837)
+
+Version 15.42 - 21 April 2013
+
+- diskdrake (mga#5661):
+ o ensure LVMs on top of dmcrypt are activated after unlocking
+ o fix UI redraw issue after unlocking dmcrypt partition
+
+Version 15.41 - 21 April 2013
+
+- popup dialog confirming to quit when clicking "X" (mga#8476):
+ o do not enable it by default
+ o enable apps to enable it on demand
+- updated translations
+
+Version 15.40 - 19 April 2013
+
+- diskdrake (mga#5661):
+ o fix losing crypt key when detecting LVMs on top of dmcrypt
+ o fix losing crypt key when re-reading partition tables
+- drakauth:
+ o 'nss-pam-ldapd' obsoletes 'pam_ldap' (mga#9769)
+- drakups:
+ o do not rely on legacy initscript for install test (mga#9474)
+
+Version 15.37 - 9 April 2013
+
+- library:
+ o fix detecting some USB devices due to not reporting their class (mga#9674)
+- finish-install:
+ o configure urpmi media even if local media are configured, and only if
+ online media are not setup (for live, mga #8379#c7)
+- diskdrake:
+ o allow to choose btrfs in normal mode (mga#65)
+- harddrake:
+ o fix displayed PCI/USB ids (spot in mga#9674)
+ o list HID USB devices with keyboards
+
+Version 15.36 - 6 April 2013
+
+- library (for draklive-install):
+ o bind mount /run in chroot, thus fixing dracut runs (Dave Hodgins, mga#9213)
+- drakboot:
+ o fix other Mga OS names in menu (mga#8710)
+
+Version 15.35 - 5 April 2013
+
+- diskdrake:
+ o fix removing LVM entries when saving /etc/fstab (mga#5811)
+- drakboot:
+ o assume grub2.cfg is UTF-8 encoded
+ o read back xen conf from grub2
+ o set entries type when reading back grub2 conf, thus fixing
+ switching back to grub-legacy (mga#9563)
+- draksound
+ o update draksound troubleshooting text (mga#4162)
+
+Version 15.33 - 4 April 2013
+
+- bootloader-config:
+ o fix adding bogus bootloader entries (root=/dev/) when silently
+ failing to lookup / partition (mga#8717)
+ o try harder to lookup / partition y looking at mounted points (mga#8717)
+
+Version 15.32 - 31 March 2013
+
+- fix detecting Xen hard disks (mga#9546)
+
+Version 15.31 - 21 March 2013
+
+- do not show notification bubble in net_applet as they make it to
+ segfault (mga#9102)
+- recognize more webcam & bluetooth devices (might help mga#5841)
+
+Version 15.28 - 21 March 2013
+
+- bootloader-config:
+ o do not build initrd if no bootloader is detected and
+ --no-initd argument is supplied
+- diskdrake:
+ o actually preserve UUID when formatting (mga#9428)
+- drakauth:
+ o install nss-pam-ldapd instead of nss_ldap (mga#9375)
+
+Version 15.27 - 12 March 2013
+
+- fix mounting NFS server (Derek Jennings, mga#207)
+- drakboot:
+ o install grub2-efi instead of grub2 if using UEFI (mga#8886)
+
+Version 15.26 - 5 March 2013
+
+- include display_installer_help
+
+Version 15.25 - 5 March 2013
+
+- finish-install:
+ o prevent displaying twice release notes
+
+Version 15.24.1 - 1 March 2013
+
+- harddrake:
+ o add nvidia304 to service_harddrake (Luc Menut, mga #9216)
+
+Version 15.24 - 28 February 2013
+
+- drakboot:
+ o allow installing grub2 on a partition (mga#8742)
+ o try harder not to have duplicate stuff on grub2 cmd line
+
+Version 15.23 - 27 February 2013
+
+- drakboot:
+ o fix detecting grub2 if there's a remaining grub-legacy signature
+ o read more of grub2 config
+ o read & save timeout value (mga#8850)
+ o set default parameters in grub2 config (mga#9177)
+
+Version 15.21 - 26 February 2013
+
+- bootloader-config:
+ o add proper support for grub2 (detectloader, ...)
+- drakboot:
+ o add basic support for reading back grub2 config
+ o read & write /boot/grub2/drakboot.conf
+ o prevent installing grub2 somewhere else than MBR
+- always bypass blkid cache (the cache only includes a subset of the data we need)
+
+Version 15.19 - 16 January 2013
+
+- update translations
+- do not bypass blkid cache
+
+Version 15.14 - 17 December 2012
+
+- ugtk2: use new exceptions management
+- drakboot:
+ o fix installing grub2 from live session (blino)
+
+Version 15.13 - 15 December 2012
+
+- fix checking grub2 installation (mga#8390)
+
+Version 15.12 - 14 December 2012
+
+- "enhance" fake grub2 conf reading (mga#8366)
+
+Version 15.11 - 13 December 2012
+
+- interactive layer:
+ o fix quitting app when closing "advanced" dialog (mga#1812)
+- mygtk2 layer:
+ o add register_main_window() for tracking main windows
+ o popup a dialog confirming to quit when clicking "X" (mga#1812)
+- drakboot:
+ o install grub2 if needed
+
+Version 15.10 - 11 December 2012
+
+- revert rosa crap that breaks generating initrd (mga#8357)
+
+Version 15.9 - 11 December 2012
+
+- library:
+ o if a partition has been manually formated, don't offer to format
+ it again (for draklive-install, mga#7822)
+
+Version 15.3 - 9 December 2012
+
+- finish-install:
+ o fix a crash by lazy loading services when needed
+ (Dave Hodgins, mga#8335)
+
+Version 15.2 - 7 December 2012
+
+- drakboot:
+ o add fake grub2 conf reading
+
+Version 15.1 - 7 December 2012
+
+- add basic support for grub2 (mga#416)
+ (based on rosa work but fixed and completed)
+
+Version 14.50 - 6 November 2012
+
+- adapt to new reboot path
+- include FIRMWARE packages from Cards+ in detected graphical drivers,
+ not to remove radeon-firmware if a matching card is present (#6438, #7641)
+
+Version 14.47 - 12 October 2012
+
+- diskdrake:
+ o offer resizing NTFS again (broken by ntfsprogs -> ntfs-3g switch)
+- drakclock:
+ o do not crash if timezones cannot be listed (mga#6787)
+- drakfont:
+ o fix a crash
+ o fix ttmkfdir path
+
+Version 14.45 - 20 September 2012
+
+- do not crash when trying to guess homedir before running another
+ process (mga#7403)
+- drakfont:
+ o fix moving font files with space in their names (mga#2689)
+- harddrake2:
+ o remove useless "Autodetect printers" option
+
+Version 14.44 - 14 September 2012
+
+- drakbug:
+ o fix preselecting "RPM package" (Manuel Hiebel, mga#7380)
+- finish-install:
+ o advertize new doc license & licenser (mga#7347)
+
+Version 14.43 - 4 September 2012
+
+- fix crashing when a banner icon doesn't exist (mga#5223)
+- recognize new drivers:
+ o input: hid-aureal synaptics_usb
+ o wifi: qmi_wwan, mwifiex_usb
+
+Version 14.40 - 3 September 2012
+
+- boodloader:
+ o ensure initrds used in combination with kernels with vga= arguments
+ are regenerated when needed
+- adapt to usbfs death
+- drakxservices:
+ o fix checking systemd presence after systemd merge of subpackages
+
+Version 14.33 - 7 August 2012
+
+- autologin:
+ o support lxdm & slim too (#3715, Derek Jennings)
+ o install autologin for lxdm & slim too
+- drakboot:
+ o do not crash if trying to build initrd from unknown partitions (mga#4290)
+ o do not crash if a foreign partition is not mounted (mga#6966)
+ o install acpi & acpid at once
+- drakxservices:
+ o when listing services ensure disabled services that can be enabled are
+ shown (mga#6843)
+
+Version 14.31 - 24 July 2012
+
+- drakauth: don't update UsePAM option in sshd configuration
+- diskdrake: install nfs-utils instead of nfs-utils-clients
+ (#6570, merged back in nfs-utils)
+
+Version 14.21 - 11 May 2012
+
+- harddrake2: allow writing 0 as module option, and forbid options
+ with spaces (#5839, from Colin)
+- export res_init function to perl lib
+
+Version 14.20 - 6 May 2012
+
+- diskdrake:
+ o drop support for reiser4 (mga#5680)
+- harddrake service:
+ o do not disable cpufreq on non-laptops
+ o remove double apmd check
+
+Version 14.16 - 29 April 2012
+
+- harddrake service:
+ o use non-blocking mode for service restart (mga#4772)
+
+Version 14.11 - 25 April 2012
+
+- finish-install: make sure sbin is added to PATH
+- harddrake:
+ o list "zc3xx" driven as webcams (mga#5449)
+- interactive::curses:
+ o make sure ranges are always within limits (mga#646)
+- ensure swap partition is activated in dracut (e.g. for swap on LVM, RAID etc)
+- drakboot:
+ o display mountpoint if available, and size+fs_type if we have nothing
+ else (mga#5460)
+- diskdrake:
+ o do not set fs_type to ext4 for raw LVM/RAID/LUKS
+ o detect LVM on top on Encrypted partitions (mga#5330)
+- drakxservices:
+ o systemd support (mga#3253, mga#3740, mga#4910, mga#5122)
+
+Version 14.3 - 7 April 2012
+
+- diskdrake:
+ o fix partition numbering on GPT (mga#3091)
+
+Version 14.2 - 5 April 2012
+
+- harddrake service:
+ o cpufreq performance governor is no longer a module
+ o reduce default timeout from 10 to 2mn (mga#4772)
+
+Version 14.1 - 23 March 2012
+
+- drakauth:
+ o fix actually displaying "Domain Windows for authentication"
+- drakboot:
+ o use "splash" on the kernel command line vs. "splash=silent" as per upstream
+ code (e.g. plymouth, systemd and others)
+ o support the "quiet" kernel command line argument to hide kernel text
+- drakbug, draksec, drakxhelp, logdrake:
+ o fix displaying "Mageia"
+- harddrake:
+ o fix detecting bluetooth devices
+
+Version 13.93 - 12 March 2012
+
+- fix mgaapplet crashing on live migration when there's a new major version of
+ perl (mga#3042)
+- reduce resident memory of net_applet (5Mb aka 11%) & mgapplet (7Mb aka 14%)
+
+Version 13.92 - 11 March 2012
+
+- english message improvement (mga#456)
+- diskdrake:
+ o fix error on removing LVs
+ o fix resizing LVs (mga#4666)
+
+Version 13.89.1 - 02 March 2012
+
+- service_harddrake:
+ o recognize XZ compressed proprietary driver modules properly (mga#4767)
+
+Version 13.86 - 29 February 2012
+
+- load 'xts' module for crypted fses (Dave Hodgins, mga#3749)
+- recognize more HID drivers (mga#4129)
+
+Version 13.81 - 13 February 2012
+
+- localedrake:
+ o add hime
+ o remove chinput, kinput2, oxim, xcin
+- make drakclock systemd compatible
+- fix crashing on parsing garbaged DMI info (mga#4329)
+- diskdrake:
+ o use better cipher for encrypted fses (mga#3092)
+
+Version 13.79 - 25 January 2012
+
+- silent failure to extract gz modules (for rescue)
+- diskdrake:
+ o better default name for new VG (vg-mga, vg-mga1, ...
+ instead of vg-0, vg-1, ...)
+
+Version 13.77 - 23 January 2012
+
+- add support for XZ modules
+- diskdrake:
+ o enable to set LV names when not in expert mode
+ o enable to set label on btrfs & nilfs fses as well as on swap
+ o preserve UUID when reformatting a nilfs fs
+ o report back error from lvm2
+ o suggest better LV names based on the mount point rather than numbers
+
+Version 13.74 - 24 December 2011
+
+- version sync with stage2
+
+Version 13.73 - 24 December 2011
+
+- drakboot:
+ o display partition labels in list instead of just disk names in "boot
+ device" choice
+ o display partition labels when adding a foreign OS
+- harddrake: fix missing names (mga#3745)
+- interactive::curses: default to 80x25 (fixes serial)
+- dont force init=/bin/systemd (#3856, already fixed in svn by blino)
+
+Version 13.72.1 - 11 December 2011
+
+- fix $HOME for all when runing as another user instead of root (mga#287)
+- harddrake: fix crash after mismerge (mga#3696)
+
+Version 13.72 - 10 December 2011
+
+- drakhelp: make it work somewhat despite lack of doc
+- prevent net_applet to crash on notifications without icons (mga#2876)
+- harddrake:
+ o do not display some bluetooth stuff as unknown (mga#1460)
+ o prevent detecting some soft modems as scanners (mga#2753)
+
+Version 13.71 - 04 December 2011
+
+- service_harddrake:
+ o better notification message when the driver has been automatically
+ switched
+ o show a correct warning message when a proprietary driver is loaded while
+ a free driver is configured
+ o fix driver switch failing to alter xorg.conf when the Driver line doesn't
+ contain default whitespacing (reported by Barry Jackson)
+
+Version 13.70.2 - 27 November 2011
+
+- fix crashing on creating temp file if temp dir doesn't exist (mga#1396)
+
+Version 13.70.1 - 22 November 2011
+
+- drakbug:
+ o do not keep around the segfaulted process once we collected all needed data
+ when running drakbug
+ o regroup misc data in bugzilla
+
+Version 13.70 - 22 November 2011
+
+- drakbug:
+ o report the gtk+ theme in use (#3414) which explain some crashes (eg: #2679)
+ o include better C traces in reports (mga#3415)
+ o remove top of traces that is inside bug handler from report
+ o no more run GDB (too late & faster)
+- Add initial Systemd support
+- sync with kernel-3.1.0-1.mga2
+ * add hid devices:
+ hid-keytouch, hid-uclogic
+ * add sas/raid driver:
+ isci
+ * add sound devices:
+ snd-lola, snd-firewire-speakers snd-isight, snd-usb-6fire
+ * add usb/storage:
+ ums-eneub6250, ums-realtek
+ * add wireless drivers:
+ brcmsmac, rtl8187se, rtusb, rtl8192se, rtl8192cu, rtl8192de
+
+Version 13.63 - 07 September 2011
+
+- finish-install:
+ o "Multi languages" => "Multiple languages" (mga#1011)
+- diskdrake:
+ o always align partitions to start at megabyte boundaries to avoid
+ performance issues with drives with 4k physical sectors (mga#1215)
+
+Version 13.61 - 01 August 2011
+
+- disdrake:
+ o spaces are not allowed between options in /etc/fstab (#2271)
+- drakfont:
+ o rename Ooo as LibreOffice (#461)
+ o enable support for LibreOffice/gs/... only if available (#461)
+- fix bootloader entries names
+
+Version 13.60 - 27 July 2011
+
+- any.pm:
+ o Add lxsession to the wm list, and add lxde-logout as the
+ ask_window_manager_to_logout command (mga#1395)
+ o share some kernel check's code for drakx-net (#1266)
+
+Version 13.59 - 14 June 2011
+
+- fix libnotify API ( mga #1780)
+
+Version 13.58 - 26 May 2011
+
+- update translations
+- fix top banner
+
+Version 13.55 - 20 May 2011
+
+- finish-install: do not try to replace home path for device files
+ after live install (#1148)
+- add ums-* (USB mass storage) modules in disk/usb category
+
+Version 13.54 - 19 May 2011
+
+- draksound:
+ o Robustify the PulseAudio configs (don't try and write files if they
+ do not exists. Doing so previously would result in blank files that then
+ causes problems when installing PulseAudio as the "config" files are not
+ overwritten properly which can result in broken PA startup)
+ o Remove the "Enable 5.1..." option. This is now done via card profiles
+ in native GUIs for GNOME and KDE (or pavucontrol)
+ o Remove the "Enable user switching..." option as it relies on HAL
+ which is deprecated.
+- scannerdrake: use skanlite instead of kooka
+- any.pm: fix faces icons paths (mga#1315)
+- fix reading security level with new msec (mga#332)
+
+Version 13.52 - 14 May 2011
+
+- diskdrake: disbale encryption option for /boot
+- match partitions when one of them as device_alias to the device of the other
+ one (Fixes Mageia bug #1041)
+
+Version 13.51 - 12 May 2011
+
+- harddrake: update icons
+
+Version 13.50 - 06 May 2011
+
+- bind more pciutils/libldetect for stage1
+- localedrake:
+ o use proper locales-XX packages for Albanian (#1036)
+
+Version 13.49 - 26 April 2011
+
+- add sdhci-pci to card-reader list
+- add xhci-hcd (usb3 support)
+- replace Mageia Linux with Mageia
+- fix fd leak in EVIOCGBIT code
+- fix the bugzilla url generated by drakbug by changing 'classificaiton=Mageia'
+ to 'product=Mageia' (mga#831)
+- service_harddrake:
+ o load new drivers or ask for reboot also if the driver is switched due to
+ a hardware change instead of an ldetect-lst change
+ o show yes/no buttons instead of ok/cancel when asking about running a
+ config tool
+ o show a dialog about having to use nokmsboot if we couldn't automatically
+ reconfigure the boot loader (e.g. when booted directly from a foreign
+ bootloader) (Mageia bug #893)
+
+Version 13.48 - 17 April 2011
+
+- service_harddrake:
+ o adapt splash handling for plymouth (for showing dialogs)
+ o add/remove nokmsboot boot option if needed
+ o ask for a reboot after a driver switch if needed, and load the new driver
+ if no reboot is needed
+ o do not switch a display driver if speedboot has already started X server,
+ in that case simply disable speedboot for next boot
+- add nokmsboot boot option also if the bootloader is installed after setting
+ up a conflicting display driver (e.g. draklive-install)
+
+Version 13.47
+- modify a string in partitioning_wizard.pm to be more grammatically correct
+ (spotted by Sigrid Carrera, on mageia-i18n ML)
+- update modules list needed for md raid456 and dm-raid 4/5/6 target
+
+- arm/mips support
+- use EVIOCGBIT ioctl instead of parsing /proc/bus/input/devices
+
+- finish-install: touch reload-dm lock file
+ (used in live systems to restart gdm with new defaults )
+
+Version 13.43
+
+- Change text to grey
+- Remove mandriva occurencies
+- Rename $mandrake_release and mandrake_release_info() functions
+- cpufreq: add support for Athlon/Phenom II processors (#58477)
+- handle new drivers:
+ o ethernet: cx82310_eth
+ o 10g ethernet: bna, pch_gbe, stmmac
+ o modem: ft1000
+ o usb storage: keucr, uas
+ o wifi: ath6kl, bcm_wimax, brcm80211, carl9170, r8712u
+
+Version 13.39 - 24 November 2010
+- fix use of arrays as a reference
+- install static device symlinks under /lib/udev/devices (Andrey Borzenkov)
+
+Version 13.35 - 22 June 2010
+
+- add scrollbar to partitioning wizard if needed
+- user management: focus on first entry in dialog, root password if
+ superuser is asked, user real name otherwise (#54910)
+- timezone.pm: change India default timezone name from Asia/Calcutta to
+ Asia/Kolkata (#59715)
+- timezone/mirror.pm: change Brazil/East entries to America/Sao_Paulo,
+ Brazil/East is the deprecated/old time zone name
+
+Version 13.34 - 5 June 2010
+
+- drakauth:
+ o fix installing lib64sasl2-plug-gssapi instead of
+ libsasl2-plug-gssapi on 64bit machines when 32bit media are
+ available (#57728)
+- harddrake:
+ o fix displaying encoded reason
+ o fix translating reasons for 2nd stage warning
+- localedrake:
+ o fix listing locales only providing UTF8 metadata (#59634, Herton
+ Ronaldo Krzesinski)
+ o further fix listing locales (#58543)
+
+Version 13.33 - 4 June 2010
+
+- lookup major:minor of devices outside $::prefix
+- display lock icon for not enabled dmcrypt too
+- disable dmcrypt before deleting partition, evin if inside lvm/raid
+- fix loading of btrfs module
+
+Version 13.32 - 2 June 2010
+
+- don't lose mountpoint if suggested partition was swap (#59510)
+- copy all devices to target
+
+Version 13.31 - 26 May 2010
+
+- service_harddrake: reconfigure X server after distro upgrades when video
+ driver has changed (#53753)
+
+Version 13.30 - 26 May 2010
+
+- task-kde3-minimal is dead, and there is now task-gnome-minimal
+- do not remove important networking packages even if they seem unused (#49668)
+
+Version 13.29 - 24 May 2010
+
+- display_release_notes.pl: don't use ::isInstall to position the release not
+ window on top of everything (doesn't work on the Ones), use
+ any::set_wm_hints_if_needed instead (#59155)
+- handle raid metadata version
+- force raid metadata to be 0.90 if /boot is on raid 1
+- fix detection of /var partition
+- fix raid 0 to be handled as raid
+
+Version 13.28 - 19 May 2010
+
+- display_help: allow scripts to close window, for first time wizard
+ (by default webkit only allows it for first page in history or for
+ pages opened by DOM, requires webkit-1.2.0-3mdv2010.1)
+- always set resume= when a swap is available, regardless of its size (#34681)
+
+Version 13.26 - 17 May 2010
+
+- enable acl by default on ext2/3/4 fs
+- enable user_xattr on home for ext2 too
+- allow setting acl option in diskdrake
+- default to defaultFS in LVM, not ext2
+
+Version 13.25 - 11 May 2010
+
+- bugfix for draklive-install: use "short" locale name when matching
+ locales-* packages to detect unused locales (fixes bug #44270)
+- diskdrake:
+ o don't ask to reboot after resize if not needed
+ o do not ask to reboot after resizing LUKS if not mounted
+- workaround mapper/* being symlinks in dmraid support
+
+Version 13.24 - 9 May 2010
+
+- devices:
+ o get major/minor of device mapper correctly now that they are links
+- fix creation of device mapper devices in fs::any::prepare_minimal_root
+ (this fixes initrd creation from one if using lvm)
+
+Version 13.23 - 30 April 2010
+
+- diskdrake:
+ o fix the crypto mountpoint checks for the create case
+ o partially fix resize of active encrypted volumes
+ o fix race when creating encrypted partition out of install
+
+Version 13.22 - 29 April 2010
+
+- diskdrake:
+ o correctly set mountpoint on included partition, not encrypted one
+ o refuse to have /boot encrypted
+
+Version 13.21 - 27 April 2010
+
+- finish-install:
+ o wait for network-up before trying to configure it (blino)
+- diskdrake:
+ o do not warn about data loss when changing type of unformatted partition
+ o do not write partition table after creation if not needed
+ o handle deleting encrypted partitions
+ o display lock icon on encrypted partitions
+ o fix loading of dmcrypt info now that /dev/mapper/* are symlinks
+ o fix creating encrypted LVM
+ o fix display of non unlocked encrypted partitions
+ o re-use existing strings
+
+Version 13.20 - 21 April 2010
+
+- diskdrake:
+ o allow resizing empty FAT (#58770)
+ o offer encryption in a more visible way when creating a partition
+ o remove cryptoloop from diskdrake interface and transparently use dm-crypt
+ o support having dm-crypt partition with non default FS
+ o do not display dm-crypt partitions in separate tab, display included
+ partition directly in-place
+
+Version 13.19 - 13 April 2010
+
+- service_harddrake:
+ o remove 'Disable "dri"' from xorg.conf if nouveau is being used
+- drakxservices:
+ o translate more service descriptions (#46640)
+- detect "Rack Mount" Chassis as server
+- diskdrake:
+ o use device label even if it was not changed (#47456)
+ o allow resizing btrfs
+ o allow creating btrfs and nilfs2
+- drakboot
+ o remove "restricted" option from general advanced options (wasn't doing
+ anything with grub, and wasn't really useful with lilo)
+ o add per-boot-entry "lock" checkbox in advanced options to be able to
+ protect booting these entries with a password
+
+Version 13.15 - 17 March 2010
+
+- include 'mpt2sas' SCSI driver (#57833)
+- add mdadm raid10 support
+- package display_release_notes.pl so that "release notes" button works in Ones
+ & Flash live media (#58199) (broken since version 12.48 - 7 September 2009)
+- harddrake:
+ o identify HECI controllers as system devices (#58215)
+
+Version 13.12 - 25 February 2010
+
+- handle new drivers:
+ o webcam: stv06xx (#53940)
+- run_program:
+ use home and logname of user we are dropping privileges to, not 501
+- harddrake:
+ o display info about cores
+ o do not display 2 decades old CPU bugs
+ o try harder to match webcams (#53940)
+- detect_devices:
+ o fix merging PCI devices info from sysfs which resulted in
+ ill-informed devices matching (#57711)
+
+Version 13.11 - 10 February 2010
+
+- add support for asturian (#56990)
+- drakboot:
+ o fix crypted password detection
+
+Version 13.10 - 4 February 2010
+
+- handle new drivers:
+ o ATA: pata_atp867x, pata_piccolo, pata_rdc
+ o DVB: dvb-usb-ec168, dvb-usb-friio, earth-pt1
+ o ISDN: avmfritz, mISDNinfineon, netjet, speedfax, w6692
+ o network: vmxnet3
+ o radio: radio-miropcm20, radio-usb-si470x
+ o RAID: 3w-sas, hpsa, pmcraid
+ o SCSI: be2iscsi, bfa, pm8001, vmw_pvscsi
+ o TV: cx25821, saa7164
+ o wifi: r8187se, r8192_pci, r8192u_usb, rt2800pci, vt6655_stage, vt6656_stage
+- drakboot:
+ o default to always crypt grub passwords
+ o ensure /boot/grub/menu.lst permissions are 0600 since it can
+ contains a password
+ o fix support for crypted grub passwords
+
+Version 13.9 - 4 February 2010
+
+- drakboot:
+ o add support for crypted grub passwords
+ o always display security settings
+ o allow timeout to be '0'
+
+Version 13.5 - 26 January 2010
+
+- drakboot:
+ o fix reading security level
+ o enable to set bootloader password in high security level
+- harddrake
+ o detect "Hitachi" & "Maxtor" vendors for more hard discs
+ o fix displaying empty info for USB discs
+ o fix detecting firewire controllers with newer kernels
+ o guess real vendor names for SCSI discs like we do for IDE devices
+- booloader:
+ o fix bootloader entry name for rc kernels
+ o remove mnb from bootloader entry name like we do for mdv
+- diskdrake:
+ o support ddf1 dmraid
+
+Version 13.4 - 7 January 2010
+
+- installation mount points: reset unknown partitions types to default
+ fs (ext4) instead of hardcoded ext3
+- detect_devices:
+ o fix detecting pcmcia serial devices
+- diskdrake:
+ o show Ext4 instead of Ext3 in the gtk filesystems button box
+- harddrake:
+ o fix detecting some cameras
+
+Version 13.2 - 14 December 2009
+
+- fix creating devices
+ (really "fix handling hdX/sdX devices (#53107)")
+
+Version 13.1 - 10 December 2009
+
+- diskdrake
+ o fix setting volume label instead of MBR's one for FAT fses (#52853)
+- localedrake
+ o drop support for configuring KDE3
+ o fix configuring ibus (#56130, #56311)
+ o install 'ibus-qt4' if configuring ibus under KDE4 (#56311)
+
+Version 13.0 - 1 December 2009
+
+- bugfix for draklive-install: use ::prefix in pkgs::remove_unused_packages
+- devices detection:
+ o fix reading USB details (#55690)
+ o fix SCSI driver module name
+ o fix sysfs device path from usb devices
+- partitioning wizard:
+ o unmount swap too when unmounting all partitions
+ o do not suggest Windows mountpoint for mounted partitions
+ (breaks install if the Win partition is the installer media)
+ o suggest non-removable disks first
+- harddrake:
+ o do not display bogus "0" ids for hard disks
+ o fix detecting some mice
+- bootloader:
+ o do not add removable drives as "Windows" entry in bootloader
+ o do not pass deprecated --ifneeded option anymore to mkinitrd
+- detect better invalid dos partition table (fixes a crash in harddrake)
+- mygtk2:
+ o allow labels to be set selectable
+- diskdrake:
+ o allow copying disk and partition infos (#55886)
+- localedrake:
+ o do not warn about already installed packages when run as user
+
+Version 12.78 - 18 November 2009
+
+- kill draksplash
+- bootloader-config:
+ o fix migrating swap to UUID
+- drakboot
+ o remove CONSOLE_LOGO support
+ o rework UI layout to account for CONSOLE_LOGO support removal
+- diskdrake:
+ o allow to convert ext2/3 to ext4 but do not enable flags
+ o don't request ntfs-3g on target not yet installed system if we are
+ run inside draklive-install (#55160)
+ o fix detecting hidden partitions as recovery
+ o fix handling hdX/sdX devices (#53107)
+- display_help:
+ o handle window.close() events (#55099)
+ o hide Gtk+ "close" button when displaying first time wizard that
+ now has a HTML "close" button again
+- harddrake:
+ o use actual package name to check for libalsa-plugins-pulseaudio
+ availability instead of using the name of a provide
+- partitioning wizard:
+ o only display Help button in install
+
+Version 12.77 - 30 October 2009
+
+- harddrake service: do not try to reconfigure xorg driver and crash
+ if /etc/X11/xorg does not exist (breaks One startup)
+- bootloader suggestion fixes (to fix removal of vga= option when
+ updating with the installer):
+ o make sure we use long name when adding second kernel with same
+ extension than preferred one
+ o do not add again kernels that are already in bootloader config file
+ o add vga= option for kernels that are not the preferred one as well
+ o remove previous linux-nonfb entries (like done for failsafe),
+ not to add them twice or more
+
+Version 12.74.2 - 29 October 2009
+
+- notify-x11-free-driver-switch, service_harddrake:
+ o explain why xorg driver was reconfigured
+
+Version 12.74.1 - 29 October 2009
+
+- service_harddrake:
+ o fix detecting nvidia71xx and nvidia96xx nvidia proprietary driver
+ when checking if current xorg driver still supports current card
+
+Version 12.74 - 28 October 2009
+
+- partitioning wizard (Windows resize):
+ o fix partition size computing (fixing pixel/sectors ratio)
+ o improve default resizing suggestion:
+ * try to keep at least 1GB free for Windows
+ * try to use from 6GB to 10% free space for Linux
+ o use same windows partition size suggestion for gtk and text installs
+ o really ensure keeping free space for Linux partition
+ o really ensure keeping free space for Windows partition
+- service_harddrake:
+ o auto reconfigure x11 only on first time default driver have changed
+ o do not auto reconfigure if more than one graphic card
+ o do not reconfigure to default driver if driver is not installed
+ o enable to disable reconfiguring to default driver through
+ /etc/sysconfig/harddrake2/service.conf
+ o fix detecting nvidia proprietary driver when checking if current
+ xorg driver still supports current card (#54943)
+ o reconfigure X11 driver if current X11 driver is neither one of
+ currently supported driver for the card for drivers other than ATI
+ & NVidia too (eg: poulsbo)
+
+Version 12.72 - 27 October 2009
+
+- drakboot:
+ o drop support for --splash
+- service_harddrake:
+ o explain why we switch driver in explanations
+ o reconfigure X11 driver if current X11 driver is neither one of
+ currently supported driver for the card, nor a legacy driver
+ ('fbdev' or 'vesa') (#53753)
+
+Version 12.71 - 23 October 2009
+
+- cpufreq: load e_powersaver for VIA C7 (#41377)
+
+Version 12.70 - 22 October 2009
+
+- curses backend: do not crash when resuming interface
+
+Version 12.68 - 19 October 2009
+
+- avoid error messages when using lvm in draklive-install (#36415)
+- partitioning wizard:
+ o use mandriva logo on blue background for mandriva partition
+ o fix option selection when using keyboard
+
+Version 12.67 - 18 October 2009
+
+- service_harddrake: allow to force screen resolution using
+ RESOLUTION_WANTED=XxY in /etc/sysconfig/harddrake2/service.conf
+- partitioning wizard:
+ o use a different color for newly created partition
+ o add legend for the colors
+ o display mount point if known
+ o display ext2 like ext3/4
+ o allow setting new windows size with keyboard (#54691)
+ o use available space
+
+Version 12.66 - 15 October 2009
+
+- finish-install: do not offer to configure 3D desktop if none is
+ installed (requires drak3d >= 1.27)
+- mount windows partitions under /media instead of /mnt (#53392)
+- partitioning wizard:
+ o initialize correctly labels for windows resizing
+ o fix labels for windows resizing when getting back to the screen
+ o offer to resize last big enough windows partition instead
+ of the first one, until user can chose
+- resize disk graphical description when resizing diskdrake
+
+Version 12.65 - 14 October 2009
+
+- partitioning wizard:
+ o allow using existing partition on all disks (#54478)
+ o reduce drawings height
+ o fix windows resize width
+- use UTF-8 for zh_TW (#53976)
+- bootloader:
+ o use initrd-2.6.30.2-xen-5mdv.img instead of initrd-xen-2.6.30.2-xen-5mdv.img
+ o do not link /boot/vmlinuz to xen while allowing a unversioned /boot/vmlinuz-xen
+
+Version 12.64 - 12 October 2009
+
+- run_program layer:
+ o keep a copy of the X11 cookie
+ o try harder to drop privileges
+- partitioning wizard:
+ o put back "previous" button on actions (#54475)
+ o fix typo in message
+ o fix testing interactive::gtk in standalone mode
+ o fix displaying help
+- drakups
+ o fix crash (#54399)
+
+Version 12.63 - 9 October 2009
+
+- drakboot:
+ o fix displaying arrows
+
+Version 12.62 - 9 October 2009
+
+- autologin/desktop configuration (shared code):
+ o fix guessing dm name from lookupdm
+ o abort configuration if dm install fails
+
+Version 12.61 - 8 October 2009
+
+- partitioning_wizard:
+ o do not fail when a windows partition is corrupted
+ o add separator between solutions
+ o give more space between header and solutions
+ o prevent cursor to go under needed size because of rounding
+ o chose windows resizing when clicking on the resize handle (not perfect)
+ o improve resizing captions layout
+- autologin/desktop configuration (shared code):
+ o fix /etc/X11/lookupdm usage during install (for default dm selection)
+ o use gdm for xfce4 and LXDE
+
+Version 12.59 - 7 October 2009
+
+- add back ram devices support (used by draklive)
+- do not set mountpoints for rescue partitions (#53504)
+- factorize default FS definition
+- switch to ext4 by default
+
+Version 12.58 - 5 October 2009
+
+- display_help
+ o block right click contextual menu
+ o do not display "Help" title for first time wizard
+
+Version 12.57 - 5 October 2009
+
+- drakboot:
+ o fix crash on clicking Up/Down buttons (#54077)
+
+Version 12.56 - 30 September 2009
+
+- harddrake:
+ o better check for PCI Express capability
+ o nicer display of PCI Express name
+
+Version 12.55 - 23 September 2009
+
+- harddrake:
+ o display PCI revision (#42576)
+ o report if devices are PCI or PCI Express (#28479)
+
+Version 12.54 - 23 September 2009
+
+- drakboot:
+ o don't detect disks if we are not in bootloader or splash mode
+- autologin/desktop configuration (drakboot/finish-install):
+ o when detecting default desktop, use first session
+ (instead of using hacks with dm config files)
+ o guess display manager from /etc/sysconfig/desktop,
+ or default session, or /etc/X11/lookupdm
+ o read autologin settings from /etc/sysconfig/autologin as fallback
+ o read kdm config file only if kdm is to be used
+ o always ensure dm is installed before configuring autologin/desktop
+ o test display manager instead of desktop when configuring autologin
+ o always write /etc/sysconfig/desktop
+ o write DISPLAYMANAGER in /etc/sysconfig/desktop too
+ o only write dm conf files if they exist before
+
+Version 12.53 - 22 September 2009
+
+- drakxtools_http:
+ o use LSB-compliant init script
+- drakboot:
+ o use stock icons for up & down buttons in order to pack them
+ horizontaly so that we fit in default sizing(#53703)
+- drakhelp
+ o fix check for missing help
+- diskdrake
+ o suggest a LVM name and refuse empty or existing one (#53769)
+ o prefer UUID on VirtIO too
+ o don't consider lvm named md* as raid (#53767)
+ o allow resizing ext4
+- fix touchscreen module list
+- list asix module in network/usb group
+
+Version 12.51 - 8 September 2009
+
- display_help
o new small webkit based browser for rendering help and for FTW
- harddrake:
- o fix detecting some memory card readers as unknown
+ o fix detecting some memory card readers as unknown
o allow to skip XFdrake framebuffer setup (and thus splash removal)
if SETUP_FB is set to "no" in /etc/sysconfig/harddrake2/service.conf
(requires drakx-kbd-mouse-x11 >= 0.79)
@@ -75,7 +2546,7 @@ Version 12.45 - 18 August 2009
Version 12.44 - 13 August 2009
- fix parsing dmidecode output (broken since we use dmidecode-2.10,
- aka since November 24 2008)
+ aka since November 24 2008) (#50106)
- localedrake
o add "English (South Africa)" (#51057)
- fix window creation (#52812)
@@ -142,7 +2613,7 @@ Version 12.30 - 21 April 2009
- add a basic testsuite (ensuring it compiles) in order to prevent
future crashes like #50009
- diskdrake:
- o display a progress bar while formating an ext4 partition
+ o display a progress bar while formatting an ext4 partition
o render ext4 partition as red like ext3 ones
- finish-install:
o ensure ntp package is installed when configuring ntp
diff --git a/perl-install/PORTING b/perl-install/PORTING
new file mode 100644
index 000000000..68f3d5e9f
--- /dev/null
+++ b/perl-install/PORTING
@@ -0,0 +1,4 @@
+This file list the API changes done in mageia:
+
+The function mandrake_release_info() is now called mageia_release_info().
+The function mandrake_release is now called mageia_release().
diff --git a/perl-install/any.pm b/perl-install/any.pm
index 46482b852..ab93036dc 100644
--- a/perl-install/any.pm
+++ b/perl-install/any.pm
@@ -9,6 +9,7 @@ use strict;
use common;
use detect_devices;
use partition_table;
+use fs::proc_partitions;
use fs::type;
use lang;
use run_program;
@@ -19,7 +20,7 @@ use fs;
use c;
sub facesdir() {
- "$::prefix/usr/share/mdk/faces/";
+ "$::prefix/usr/share/mga/faces/";
}
sub face2png {
my ($face) = @_;
@@ -81,6 +82,7 @@ sub create_user {
? ('-l', $u->{name}, $u->{rename_from})
: $u->{name}));
symlink($u->{home}, $symlink_home_from) if $symlink_home_from;
+ eval { run_program::rooted($::prefix, 'systemctl', 'try-restart', 'accounts-daemon.service') };
}
my (undef, undef, $uid, $gid, undef, undef, undef, $home) = getpwnam($u->{name});
@@ -116,11 +118,10 @@ sub install_acpi_pkgs {
my $acpi = bootloader::get_append_with_key($b, 'acpi');
my $use_acpi = !member($acpi, 'off', 'ht');
if ($use_acpi) {
- $do_pkgs->ensure_is_installed('acpi', '/usr/bin/acpi', $::isInstall);
- $do_pkgs->ensure_is_installed('acpid', '/usr/sbin/acpid', $::isInstall);
+ $do_pkgs->ensure_files_are_installed([ [ qw(acpi acpi) ], [ qw(acpid acpid) ] ], $::isInstall);
}
require services;
- services::set_status($_, $use_acpi, $::isInstall) foreach qw(acpi acpid);
+ services::set_status($_, $use_acpi, $::isInstall) foreach qw(acpid);
}
sub setupBootloaderBeforeStandalone {
@@ -130,12 +131,13 @@ sub setupBootloaderBeforeStandalone {
my $allow_fb = listlength(cat_("/proc/fb"));
my $cmdline = cat_('/proc/cmdline');
my $vga_fb = first($cmdline =~ /\bvga=(\S+)/);
- my $quiet = $cmdline =~ /\bsplash=silent\b/;
- setupBootloaderBefore($do_pkgs, $b, $all_hds, $fstab, $keyboard, $allow_fb, $vga_fb, $quiet);
+ my $splash = $cmdline =~ /\bsplash\b/;
+ my $quiet = $cmdline =~ /\bquiet\b/;
+ setupBootloaderBefore($do_pkgs, $b, $all_hds, $fstab, $keyboard, $allow_fb, $vga_fb, $splash, $quiet);
}
sub setupBootloaderBefore {
- my ($do_pkgs, $bootloader, $all_hds, $fstab, $keyboard, $allow_fb, $vga_fb, $quiet) = @_;
+ my ($do_pkgs, $bootloader, $all_hds, $fstab, $keyboard, $allow_fb, $vga_fb, $splash, $quiet) = @_;
require bootloader;
#- auto_install backward compatibility
@@ -144,12 +146,6 @@ sub setupBootloaderBefore {
$bootloader->{message_text} = delete $bootloader->{message};
}
- #- remove previous ide-scsi lines
- bootloader::modify_append($bootloader, sub {
- my ($_simple, $dict) = @_;
- @$dict = grep { $_->[1] ne 'ide-scsi' } @$dict;
- });
-
if (cat_("/proc/cmdline") =~ /mem=nopentium/) {
bootloader::set_append_with_key($bootloader, mem => 'nopentium');
}
@@ -174,15 +170,19 @@ sub setupBootloaderBefore {
bootloader::set_append_simple($bootloader, 'noresume');
} elsif (bootloader::get_append_simple($bootloader, 'noresume')) {
} else {
- my ($MemTotal) = cat_("/proc/meminfo") =~ /^MemTotal:\s*(\d+)/m;
if (my ($biggest_swap) = sort { $b->{size} <=> $a->{size} } grep { isSwap($_) } @$fstab) {
- log::l("MemTotal: $MemTotal < ", $biggest_swap->{size} / 2);
- if ($MemTotal < $biggest_swap->{size} / 2) {
- bootloader::set_append_with_key($bootloader, resume => fs::wild_device::from_part('', $biggest_swap));
- }
+ my $biggest_swap_dev = fs::wild_device::from_part('', $biggest_swap);
+ bootloader::set_append_with_key($bootloader, resume => $biggest_swap_dev);
+ mkdir_p("$::prefix/etc/dracut.conf.d");
+ output("$::prefix/etc/dracut.conf.d/51-mageia-resume.conf", qq(add_device+=" $biggest_swap_dev "\n));
}
}
+ #- set nokmsboot if a conflicting driver is configured.
+ if (-x "$::prefix/sbin/display_driver_helper" && !run_program::rooted($::prefix, "/sbin/display_driver_helper", "--is-kms-allowed")) {
+ bootloader::set_append_simple($bootloader, 'nokmsboot');
+ }
+
#- check for valid fb mode to enable a default boot with frame buffer.
my $vga = $allow_fb && (!detect_devices::matching_desc__regexp('3D Rage LT') &&
!detect_devices::matching_desc__regexp('Rage Mobility [PL]') &&
@@ -203,12 +203,25 @@ sub setupBootloaderBefore {
);
#- propose the default fb mode for kernel fb, if bootsplash is installed.
- my $need_fb = $do_pkgs->are_installed('bootsplash');
+ my $need_fb = -e "$::prefix/usr/share/bootsplash/scripts/make-boot-splash";
bootloader::suggest($bootloader, $all_hds,
vga_fb => ($force_vga || $vga && $need_fb) && $vga_fb,
+ splash => $splash,
quiet => $quiet);
+ if (is_uefi()) {
+ if (my @esp = grep { $_->{mntpoint} eq '/boot/EFI' } @$fstab) {
+ $bootloader->{removable} = $esp[0]{is_removable};
+ }
+ } else {
+ if (my $root_part = fs::get::root($fstab)) {
+ $bootloader->{removable} = $root_part->{is_removable};
+ }
+ }
+ $bootloader->{default_to_no_probe} = 1 if $bootloader->{removable};
+
$bootloader->{keytable} ||= keyboard::keyboard2kmap($keyboard);
+ log::l("setupBootloaderBefore end");
}
sub setupBootloader {
@@ -223,7 +236,11 @@ sub setupBootloader {
setupBootloader__boot_bios_drive($in, $b, $all_hds->{hds}) or goto general;
{
local $::Wizard_finished = 1 if $::isStandalone;
- setupBootloader__entries($in, $b, $all_hds, $fstab) or goto general;
+ if (bootloader::main_method($b->{method}) eq 'grub2') {
+ setupBootloader__grub2($in, $b, $all_hds, $fstab) or goto general;
+ } else {
+ setupBootloader__entries($in, $b, $all_hds, $fstab) or goto general;
+ }
}
1;
}
@@ -234,7 +251,9 @@ sub setupBootloaderUntilInstalled {
my $before = fs::fstab_to_string($all_hds);
setupBootloader($in, $b, $all_hds, $fstab, $security) or $in->exit;
if ($before ne fs::fstab_to_string($all_hds)) {
- #- for /tmp using tmpfs when "clean /tmp" is chosen
+ #- ovitters: This fstab comparison was needed for optionally
+ #- setting up /tmp using tmpfs. That code was removed. Not removing
+ #- this code as I'm not sure if something still relies on this
fs::write_fstab($all_hds);
}
} while !installBootloader($in, $b, $all_hds);
@@ -243,9 +262,10 @@ sub setupBootloaderUntilInstalled {
sub installBootloader {
my ($in, $b, $all_hds) = @_;
return if detect_devices::is_xbox();
- install_bootloader_pkgs($in->do_pkgs, $b);
- eval { run_program::rooted($::prefix, 'echo | lilo -u') } if $::isInstall && !$::o->{isUpgrade} && -e "$::prefix/etc/lilo.conf" && glob("$::prefix/boot/boot.*");
+ return 1 if arch() =~ /arm/;
+
+ install_bootloader_pkgs($in->do_pkgs, $b);
retry:
eval {
@@ -274,11 +294,6 @@ Assign a new Volume ID?", $dev)))) {
$in->ask_warn('', [ N("Installation of bootloader failed. The following error occurred:"), $err ]);
return;
}
- } elsif (arch() =~ /ppc/) {
- if (detect_devices::get_mac_model() !~ /IBM/) {
- my $of_boot = bootloader::dev2yaboot($b->{boot});
- $in->ask_warn('', N("You may need to change your Open Firmware boot-device to\n enable the bootloader. If you do not see the bootloader prompt at\n reboot, hold down Command-Option-O-F at reboot and enter:\n setenv boot-device %s,\\\\:tbxi\n Then type: shut-down\nAt your next boot you should see the bootloader prompt.", $of_boot));
- }
}
1;
}
@@ -290,7 +305,7 @@ sub setupBootloader_simple {
require bootloader;
bootloader::ensafe_first_bios_drive($hds)
- || $b->{bootUnsafe} || arch() =~ /ppc/ or return 1; #- default is good enough
+ || $b->{bootUnsafe} or return 1; #- default is good enough
if (arch() !~ /ia64/) {
setupBootloader__mbr_or_not($in, $b, $hds, $fstab) or return 0;
@@ -306,8 +321,7 @@ sub setupBootloader_simple {
sub setupBootloader__boot_bios_drive {
my ($in, $b, $hds) = @_;
- if (arch() =~ /ppc/ ||
- !is_empty_hash_ref($b->{bios})) {
+ if (!is_empty_hash_ref($b->{bios})) {
#- some bios mapping already there
return 1;
} elsif (bootloader::mixed_kind_of_disks($hds) && $b->{boot} =~ /\d$/) { #- on a partition
@@ -318,7 +332,7 @@ sub setupBootloader__boot_bios_drive {
log::l("_ask_boot_bios_drive");
my $hd = $in->ask_from_listf('', N("You decided to install the bootloader on a partition.
-This implies you already have a bootloader on the hard drive you boot (eg: System Commander).
+This implies you already have a bootloader on the hard disk drive you boot (eg: System Commander).
On which drive are you booting?"), \&partition_table::description, $hds) or return 0;
log::l("mixed_kind_of_disks chosen $hd->{device}");
@@ -326,19 +340,24 @@ On which drive are you booting?"), \&partition_table::description, $hds) or retu
1;
}
+sub _ask_mbr_or_not {
+ my ($in, $default, @l) = @_;
+ $in->ask_from_({ title => N("Bootloader Installation"),
+ interactive_help_id => 'setupBootloaderBeginner',
+ },
+ [
+ { label => N("Where do you want to install the bootloader?"), title => 1 },
+ { val => \$default, list => \@l, format => sub { $_[0][0] }, type => 'list' },
+ ]
+ );
+ $default;
+}
+
sub setupBootloader__mbr_or_not {
my ($in, $b, $hds, $fstab) = @_;
log::l("setupBootloader__mbr_or_not");
- if (arch() =~ /ppc/) {
- if (defined $partition_table::mac::bootstrap_part) {
- $b->{boot} = $partition_table::mac::bootstrap_part;
- log::l("set bootstrap to $b->{boot}");
- } else {
- die "no bootstrap partition - yaboot.conf creation failed";
- }
- } else {
my $floppy = detect_devices::floppy();
my @l = (
@@ -355,25 +374,19 @@ sub setupBootloader__mbr_or_not {
);
my $default = find { $_->[1] eq $b->{boot} } @l;
- $in->ask_from_({ title => N("Bootloader Installation"),
- interactive_help_id => 'setupBootloaderBeginner',
- },
- [
- { label => N("Where do you want to install the bootloader?"), title => 1 },
- { val => \$default, list => \@l, format => sub { $_[0][0] }, type => 'list' },
- ]
- );
+ if (!$::isInstall) {
+ $default = _ask_mbr_or_not($in, $default, @l);
+ }
my $new_boot = $default->[1];
#- remove bios mapping if the user changed the boot device
delete $b->{bios} if $new_boot && $new_boot ne $b->{boot};
$b->{boot} = $new_boot or return;
- }
1;
}
sub setupBootloader__general {
- my ($in, $b, $all_hds, $fstab, $security) = @_;
+ my ($in, $b, $all_hds, $fstab, $_security) = @_;
return if detect_devices::is_xbox();
my @method_choices = bootloader::method_choices($all_hds);
@@ -381,65 +394,57 @@ sub setupBootloader__general {
my $prev_enable_apic = my $enable_apic = !bootloader::get_append_simple($b, 'noapic');
my $prev_enable_lapic = my $enable_lapic = !bootloader::get_append_simple($b, 'nolapic');
my $prev_enable_smp = my $enable_smp = !bootloader::get_append_simple($b, 'nosmp');
- my $prev_clean_tmp = my $clean_tmp = any { $_->{mntpoint} eq '/tmp' } @{$all_hds->{special} ||= []};
my $prev_boot = $b->{boot};
my $prev_method = $b->{method};
$b->{password2} ||= $b->{password} ||= '';
$::Wizard_title = N("Boot Style Configuration");
- if (arch() !~ /ppc/) {
- my (@boot_devices, %boot_devices);
+ my (@boot_devices, %boot_devices);
+ if (is_uefi()) {
+ @boot_devices = 'ESP';
+ %boot_devices = (ESP => N("EFI System Partition"));
+ } else {
foreach (bootloader::allowed_boot_parts($b, $all_hds)) {
my $dev = "/dev/$_->{device}";
push @boot_devices, $dev;
- $boot_devices{$dev} = $_->{info} ? "$dev ($_->{info})" : $dev;
+ my $name = $_->{mntpoint} || $_->{info} || $_->{device_LABEL};
+ unless ($name) {
+ $name = formatXiB($_->{size}*512) . " " if $_->{size};
+ $name .= $_->{fs_type};
+ }
+ $boot_devices{$dev} = $name ? "$dev ($name)" : $dev;
}
+ }
- $in->ask_from_({ #messages => N("Bootloader main options"),
- title => N("Bootloader main options"),
- interactive_help_id => 'setupBootloader',
- }, [
+ $in->ask_from_({ #messages => N("Bootloader main options"),
+ title => N("Bootloader main options"),
+ interactive_help_id => 'setupBootloader',
+ }, [
#title => N("Bootloader main options"),
{ label => N("Bootloader"), title => 1 },
- { label => N("Bootloader to use"), val => \$b->{method}, list => \@method_choices, format => \&bootloader::method2text },
- if_(arch() !~ /ia64/,
- { label => N("Boot device"), val => \$b->{boot}, list => \@boot_devices, format => sub { $boot_devices{$_[0]} } },
- ),
+ { label => N("Bootloader to use"), val => \$b->{method},
+ list => \@method_choices, format => \&bootloader::method2text },
+ { label => N("Boot device"), val => \$b->{boot}, list => \@boot_devices, allow_empty_list => 1,
+ format => sub { $boot_devices{$_[0]} } },
{ label => N("Main options"), title => 1 },
{ label => N("Delay before booting default image"), val => \$b->{timeout} },
- { text => N("Enable ACPI"), val => \$force_acpi, type => 'bool' },
+ { text => N("Enable ACPI"), val => \$force_acpi, type => 'bool', advanced => 1 },
{ text => N("Enable SMP"), val => \$enable_smp, type => 'bool', advanced => 1 },
- { text => N("Enable APIC"), val => \$enable_apic, type => 'bool', advanced => 1, disabled => sub { !$enable_lapic } },
+ { text => N("Enable APIC"), val => \$enable_apic, type => 'bool', advanced => 1,
+ disabled => sub { !$enable_lapic } },
{ text => N("Enable Local APIC"), val => \$enable_lapic, type => 'bool', advanced => 1 },
- if_($security >= 4 || $b->{password} || $b->{restricted},
+ { label => N("Security"), title => 1 },
{ label => N("Password"), val => \$b->{password}, hidden => 1,
validate => sub {
- my $ok = $b->{password} eq $b->{password2} or $in->ask_warn('', [ N("The passwords do not match"), N("Please try again") ]);
- my $ok2 = !($b->{password} && $b->{method} eq 'grub-graphic') or $in->ask_warn('', N("You can not use a password with %s", bootloader::method2text($b->{method})));
+ my $ok = $b->{password} eq $b->{password2}
+ or $in->ask_warn('', [ N("The passwords do not match"), N("Please try again") ]);
+ my $ok2 = !($b->{password} && $b->{method} eq 'grub-graphic')
+ or $in->ask_warn('', N("You cannot use a password with %s",
+ bootloader::method2text($b->{method})));
$ok && $ok2;
} },
{ label => N("Password (again)"), val => \$b->{password2}, hidden => 1 },
- { text => N("Restrict command line options"), val => \$b->{restricted}, type => "bool", text => N("restrict"),
- validate => sub { my $ok = !$b->{restricted} || $b->{password} or $in->ask_warn('', N("Option ``Restrict command line options'' is of no use without a password")); $ok } },
- ),
- { text => N("Clean /tmp at each boot"), val => \$clean_tmp, type => 'bool', advanced => 1 },
]) or return 0;
- } else {
- $b->{boot} = $partition_table::mac::bootstrap_part;
- $in->ask_from_({ messages => N("Bootloader main options"),
- title => N("Bootloader main options"),
- interactive_help_id => 'setupYabootGeneral',
- }, [
- { label => N("Bootloader to use"), val => \$b->{method}, list => \@method_choices, format => \&bootloader::method2text },
- { label => N("Init Message"), val => \$b->{'init-message'} },
- { label => N("Boot device"), val => \$b->{boot}, list => [ map { "/dev/$_" } (map { $_->{device} } (grep { isAppleBootstrap($_) } @$fstab)) ] },
- { label => N("Open Firmware Delay"), val => \$b->{delay} },
- { label => N("Kernel Boot Timeout"), val => \$b->{timeout} },
- { label => N("Enable CD Boot?"), val => \$b->{enablecdboot}, type => "bool" },
- { label => N("Enable OF Boot?"), val => \$b->{enableofboot}, type => "bool" },
- { label => N("Default OS?"), val => \$b->{defaultos}, list => [ 'linux', 'macos', 'macosx', 'darwin' ] },
- ]) or return 0;
- }
#- remove bios mapping if the user changed the boot device
delete $b->{bios} if $b->{boot} ne $prev_boot;
@@ -471,19 +476,110 @@ sub setupBootloader__general {
($enable_lapic ? \&bootloader::set_append_simple : \&bootloader::remove_append_simple)->($b, 'lapic');
}
- if ($prev_clean_tmp != $clean_tmp) {
- if ($clean_tmp && !fs::get::has_mntpoint('/tmp', $all_hds)) {
- push @{$all_hds->{special}}, { device => 'none', mntpoint => '/tmp', fs_type => 'tmpfs' };
- } else {
- @{$all_hds->{special}} = grep { $_->{mntpoint} ne '/tmp' } @{$all_hds->{special}};
- }
- }
-
if (bootloader::main_method($prev_method) eq 'lilo' &&
bootloader::main_method($b->{method}) eq 'grub') {
log::l("switching for lilo to grub, ensure we don't read lilo.conf anymore");
renamef("$::prefix/etc/lilo.conf", "$::prefix/etc/lilo.conf.unused");
}
+ if ($prev_method eq 'refind' && $b->{method} ne 'refind') {
+ log::l("switching from rEFInd, ensure we don't detect refind as the active boot method");
+ renamef("$::prefix/boot/refind_linux.conf", "$::prefix/boot/refind_linux.conf.unused");
+ }
+ if ($b->{method} eq 'refind') {
+ if (bootloader::main_method($prev_method) eq 'grub2') {
+ #- grub2 doesn't provide any entries we can use, so revert to the defaults
+ %$b = ();
+ setupBootloaderBeforeStandalone($in->do_pkgs, $b, $all_hds, $fstab);
+ $b->{method} = 'refind';
+ $b->{boot} = 'ESP';
+ undef $b->{default};
+ }
+ setupBootloader__refind($in, $b, $fstab);
+ } else {
+ 1;
+ }
+}
+
+sub setupBootloader__refind {
+ my ($in, $b, $fstab) = @_;
+
+ my $already_in_refind = -e "$::prefix/boot/EFI/EFI/refind/refind.conf";
+ my $already_in_default = -e "$::prefix/boot/EFI/EFI/BOOT/refind.conf";
+ my $already_installed = $already_in_refind || $already_in_default;
+
+ my $update_esp = !$already_installed;
+ my $as_default = $already_in_default || $b->{removable};
+
+ if (!defined $b->{banner_path}) {
+ #- We haven't yet read any existing configuration, either because we are doing a clean
+ #- install or because we are switching from a different bootloader. Try to read it now.
+ #- Even if we are doing a clean install, rEFInd may already be installed in the ESP.
+ bootloader::read_refind_config($b);
+ }
+
+ my $use_nvram = $b->{use_nvram};
+ my $banner_path = $b->{banner_path};
+ my $banner_scale = $b->{banner_scale};
+ my $banner_type = $banner_path eq 'refind_banner.png' ? 'banner'
+ : $banner_path eq 'mageia_theme.png' ? 'theme'
+ : 'custom';
+ $in->ask_from_(
+ {
+ title => N("Bootloader Configuration"),
+ interactive_help_id => 'setupBootloader',
+ },
+ [
+ { label => N("Install Options"), title => 1, },
+ { text => N("Install or update rEFInd in the EFI system partition"),
+ val => \$update_esp, type => 'bool', disabled => sub { !$already_installed } },
+ { text => N("Install in /EFI/BOOT (removable device or workaround for some BIOSs)"),
+ val => \$as_default, type => 'bool', disabled => sub { !$update_esp } },
+ { text => N("Configure rEFInd to store its variables in the EFI NVRAM"),
+ val => \$use_nvram, type => 'bool' },
+ { label => N("Background"), title => 1, },
+ { val => \$banner_type, type => 'combo', list => [ 'banner', 'theme', 'custom' ],
+ format => sub {
+ my ($choice) = @_;
+ +{
+ 'banner' => N("rEFInd banner"),
+ 'theme' => N("Mageia theme"),
+ 'custom' => N("Custom"),
+ }->{$choice};
+ },
+ changed => sub {
+ if ($banner_type eq 'banner') {
+ $banner_path = 'refind_banner.png';
+ $banner_scale = 'noscale';
+ } elsif ($banner_type eq 'theme') {
+ $banner_path = 'mageia_theme.png';
+ $banner_scale = 'fillscreen';
+ }
+ }
+ },
+ { val => \$banner_path, type => 'entry', disabled => sub { $banner_type ne 'custom' } },
+ { val => \$banner_scale, type => 'combo', list => [ 'noscale', 'fillscreen' ],
+ format => sub {
+ my ($choice) = @_;
+ +{
+ 'noscale' => N("No scaling"),
+ 'fillscreen' => N("Scale to fit"),
+ }->{$choice};
+ }
+ },
+ ]
+ ) or return 0;
+
+ if ($update_esp) {
+ $b->{install_mode} = $as_default ? 'as_default' : 'as_refind';
+ } else {
+ $b->{install_mode} = $as_default ? 'no_install' : 'nvram_only';
+ }
+ $b->{use_nvram} = $use_nvram;
+ $b->{banner_path} = $banner_path;
+ $b->{banner_scale} = $banner_scale;
+ if (my @esp = grep { $_->{mntpoint} eq '/boot/EFI' } @$fstab) {
+ $b->{esp_device} = $esp[0]{real_device} || fs::wild_device::from_part('', $esp[0]);
+ }
1;
}
@@ -503,22 +599,29 @@ sub setupBootloader__entries {
my %root_descr = map {
my $info = delete $hd_infos{$_->{rootDevice}};
my $dev = "/dev/$_->{device}";
- my $info_ = $info ? "$dev ($info)" : $dev;
+ my $hint = $info || $_->{info} || $_->{device_LABEL};
+ my $info_ = $hint ? "$dev ($hint)" : $dev;
($dev => $info_, fs::wild_device::from_part('', $_) => $info_);
} @$fstab;
my @l;
- if ($e->{type} eq "image") {
+ if ($b->{method} eq 'refind') {
+ @l = (
+ { label => N("Label"), val => \$e->{label} },
+ { label => N("Append"), val => \$append },
+ { label => N("Video mode"), val => \$vga, list => [ '', Xconfig::resolution_and_depth::bios_vga_modes() ],
+ format => \&Xconfig::resolution_and_depth::to_string, advanced => 1 },
+ );
+ } elsif ($e->{type} eq "image") {
@l = (
{ label => N("Image"), val => \$e->{kernel_or_dev}, list => [ map { "/boot/$_" } bootloader::installed_vmlinuz() ], not_edit => 0 },
-{ label => N("Root"), val => \$e->{root}, list => [ map { fs::wild_device::from_part('', $_) } @$fstab ], format => sub { $root_descr{$_[0]} } },
+{ label => N("Root"), val => \$e->{root}, list => [ map { fs::wild_device::from_part('', $_) } grep { !isSwap($_) } @$fstab ], format => sub { $root_descr{$_[0]} } },
{ label => N("Append"), val => \$append },
if_($e->{xen},
{ label => N("Xen append"), val => \$e->{xen_append} }
),
- if_(arch() !~ /ppc|ia64/,
+ if_($b->{password}, { label => N("Requires password to boot"), val => \$e->{lock}, type => "bool" }),
{ label => N("Video mode"), val => \$vga, list => [ '', Xconfig::resolution_and_depth::bios_vga_modes() ], format => \&Xconfig::resolution_and_depth::to_string, advanced => 1 },
-),
{ label => N("Initrd"), val => \$e->{initrd}, list => [ map { if_(/^initrd/, "/boot/$_") } all("$::prefix/boot") ], not_edit => 0, advanced => 1 },
{ label => N("Network profile"), val => \$netprofile, list => [ sort(uniq('', $netprofile, network::network::netprofile_list())) ], advanced => 1 },
);
@@ -527,26 +630,16 @@ sub setupBootloader__entries {
{ label => N("Root"), val => \$e->{kernel_or_dev}, list => [ map { "/dev/$_->{device}" } @$fstab, detect_devices::floppies() ] },
);
}
- if (arch() !~ /ppc/) {
+ if ($b->{method} ne 'refind') {
@l = (
{ label => N("Label"), val => \$e->{label} },
@l,
{ text => N("Default"), val => \$default, type => 'bool' },
);
- } else {
- unshift @l, { label => N("Label"), val => \$e->{label}, list => ['macos', 'macosx', 'darwin'] };
- if ($e->{type} eq "image") {
- @l = ({ label => N("Label"), val => \$e->{label} },
- (@l[1..2], { label => N("Append"), val => \$append }),
- { label => N("NoVideo"), val => \$e->{novideo}, type => 'bool' },
- { text => N("Default"), val => \$default, type => 'bool' }
- );
- }
}
-
$in->ask_from_(
{
- interactive_help_id => arch() =~ /ppc/ ? 'setupYabootAddEntry' : 'setupBootloaderAddEntry',
+ interactive_help_id => 'setupBootloaderAddEntry',
callbacks => {
complete => sub {
$e->{label} or $in->ask_warn('', N("Empty label not allowed")), return 1;
@@ -569,17 +662,22 @@ sub setupBootloader__entries {
my $Add = sub {
my @labels = map { $_->{label} } @{$b->{entries}};
my ($e, $prefix);
- if ($in->ask_from_list_('', N("Which type of entry do you want to add?"),
- [ N_("Linux"), arch() =~ /sparc/ ? N_("Other OS (SunOS...)") : arch() =~ /ppc/ ?
- N_("Other OS (MacOS...)") : N_("Other OS (Windows...)") ]
- ) eq "Linux") {
+ if ($b->{method} eq 'refind') {
+ $e = { type => 'image',
+ kernel_or_dev => '/boot/vmlinuz',
+ root => '/dev/' . fs::get::root($fstab)->{device}, #- assume a good default.
+ };
+ $prefix = "linux";
+ } elsif ($in->ask_from_list_('', N("Which type of entry do you want to add?"),
+ [ N_("Linux"), N_("Other OS (Windows...)") ]
+ ) eq "Linux") {
$e = { type => 'image',
root => '/dev/' . fs::get::root($fstab)->{device}, #- assume a good default.
};
$prefix = "linux";
} else {
$e = { type => 'other' };
- $prefix = arch() =~ /sparc/ ? "sunos" : arch() =~ /ppc/ ? "macos" : "windows";
+ $prefix = "windows";
}
$e->{label} = $prefix;
for (my $nb = 0; member($e->{label}, @labels); $nb++) {
@@ -600,9 +698,9 @@ sub setupBootloader__entries {
my $Up = sub {
my ($e) = @_;
my @entries = @{$b->{entries}};
- my ($index) = grep { $entries[$_]->{label} eq $e->{label} } 0..$#entries;
+ my ($index) = grep { $entries[$_]{label} eq $e->{label} } 0..$#entries;
if ($index > 0) {
- (@{$b->{entries}}->[$index - 1], @{$b->{entries}}->[$index]) = (@{$b->{entries}}->[$index], @{$b->{entries}}->[$index - 1]);
+ ($b->{entries}[$index - 1], $b->{entries}[$index]) = ($b->{entries}[$index], $b->{entries}[$index - 1]);
}
1;
};
@@ -610,21 +708,33 @@ sub setupBootloader__entries {
my $Down = sub {
my ($e) = @_;
my @entries = @{$b->{entries}};
- my ($index) = grep { $entries[$_]->{label} eq $e->{label} } 0..$#entries;
+ my ($index) = grep { $entries[$_]{label} eq $e->{label} } 0..$#entries;
if ($index < $#entries) {
- (@{$b->{entries}}->[$index + 1], @{$b->{entries}}->[$index]) = (@{$b->{entries}}->[$index], @{$b->{entries}}->[$index + 1]);
+ ($b->{entries}[$index + 1], $b->{entries}[$index]) = ($b->{entries}[$index], $b->{entries}[$index + 1]);
}
1;
};
my @prev_entries = @{$b->{entries}};
+
+ #- the rEFInd configuration file just provides alternative kernel command lines
+ #- so we only want to display entries that relate to the default kernel.
+ if ($b->{method} eq 'refind') {
+ @{$b->{entries}} =
+ grep {
+ my $pb = $_->{type} ne 'image' || $_->{kernel_or_dev} ne '/boot/vmlinuz';
+ log::l("dropping bootloader entry $_->{label} because it is not needed by rEFInd") if $pb;
+ !$pb;
+ } @{$b->{entries}};
+ }
+
if ($in->ask_from__add_modify_remove(N("Bootloader Configuration"),
N("Here are the entries on your boot menu so far.
You can create additional entries or change the existing ones."), [ {
format => sub {
my ($e) = @_;
ref($e) ?
- ($b->{default} eq $e->{label} ? " * " : " ") . "$e->{label} ($e->{kernel_or_dev})" :
+ ($b->{default} eq $e->{label} ? " * " : " ") . "$e->{label} ($e->{kernel_or_dev})" :
translate($e);
}, list => $b->{entries},
} ], Add => $Add, Modify => $Modify, Remove => $Remove, Up => $Up, Down => $Down)) {
@@ -635,52 +745,214 @@ You can create additional entries or change the existing ones."), [ {
}
}
+sub setupBootloader__grub2 {
+ my ($in, $b, $_all_hds, $_fstab) = @_;
+
+ # update entries (so that we can display their list below):
+ my $error;
+ # grub2-update can take many minutes on some systems (mga#18538)
+ # FIXME: change the message to be more informative
+ my $_w = $in->wait_message(N("Please wait"), N("Please wait"));
+ run_program::rooted($::prefix, 'update-grub2', '2>', \$error) or die "update-grub2 failed: $error";
+ undef $_w;
+
+ # read grub2 auto-generated entries (instead of keeping eg: grub/lilo ones):
+ my $b2 = bootloader::read_grub2();
+
+ # get default parameters:
+ my $append = $b->{perImageAppend} || bootloader::get_grub2_append($b2);
+ my $default = $b2->{default};
+
+ require Xconfig::resolution_and_depth;
+
+ require network::network; #- to list network profiles
+ my $vga = Xconfig::resolution_and_depth::from_bios($b->{default_vga});
+ my $os_prober = $in->do_pkgs->is_installed('os-prober', '/usr/bin/os-prober') && !$b->{default_to_no_probe};
+
+ my $res = $in->ask_from_(
+ {
+ title => N("Bootloader Configuration"),
+ interactive_help_id => 'setupBootloaderAddEntry',
+ },
+ [
+ { label => N("Default"), val => \$default,
+ list => [ map { $_->{label} } @{$b2->{entries}} ] },
+ { label => N("Append"), val => \$append },
+ { label => N("Video mode"), val => \$vga, list => [ '', Xconfig::resolution_and_depth::bios_vga_modes() ],
+ format => \&Xconfig::resolution_and_depth::to_string, advanced => 1 },
+ { text => N("Do not touch ESP or MBR"), val => \$b->{no_esp_or_mbr}, type => 'bool', advanced => 1,
+ validate => sub {
+ $b->{no_esp_or_mbr} and $in->ask_warn(N("Warning"),
+ N("Not installing on ESP or MBR means that the installation is not bootable unless chain loaded from another OS!"));
+ 1;
+ },
+ },
+ { text => N("Probe Foreign OS"), val => \$os_prober, type => 'bool',
+ help => N("Unselect this option to stop grub2 scanning for other operating systems, which will prevent them from being included in the grub2 boot menu. The option may also be unselected after installation, removing the other operating systems from the grub2 boot menu, but reducing the time needed for installing kernel updates"),
+ },
+ if_(is_uefi(),
+ { text => N("Install in /EFI/BOOT (removable device or workaround for some BIOSs)"),
+ val => \$b->{removable}, type => 'bool' },
+ ),
+ ]);
+ if ($res) {
+ $b->{entries} = $b2->{entries};
+ $b->{default} = $default;
+ $b->{default_vga} = ref($vga) ? $vga->{bios} : $vga;
+ $b->{perImageAppend} = $append;
+ if ($os_prober) {
+ $in->do_pkgs->ensure_is_installed('os-prober', '/usr/bin/os-prober');
+ } else {
+ $in->do_pkgs->remove('os-prober');
+ }
+ 1;
+ } else {
+ '';
+ }
+}
+
+sub get_session_file {
+ my ($desktop) = @_;
+ my @dir_wm = qw(xsessions wayland-sessions);
+ my $xsession_file;
+ foreach my $dwm (@dir_wm) {
+ my $xs_file = find {
+ my %xsession = read_gnomekderc($_, 'Desktop Entry');
+ $xsession{Name} =~ s/\s+//g;
+ $xsession{Name} eq ${desktop};
+ } glob("$::prefix/usr/share/$dwm/*.desktop");
+ $xsession_file = $xs_file unless $xsession_file;
+ }
+ $xsession_file =~ s!\.[^.]+$!!;
+ $xsession_file =~ s!.*/!!;
+ $xsession_file ||= $desktop;
+ return $xsession_file;
+}
+
+sub get_session_file_with_extension {
+ return get_session_file(@_) . '.desktop';
+}
+
+sub available_dms() {
+ my @l;
+ foreach (glob("$::prefix/usr/share/X11/dm.d/*.conf")) {
+ my %dm = getVarsFromSh($_);
+ push @l, $dm{EXEC} if $dm{EXEC} && -x "$::prefix/$dm{EXEC}";
+ }
+ @l;
+}
+
sub get_autologin() {
my %desktop = getVarsFromSh("$::prefix/etc/sysconfig/desktop");
my $gdm_file = "$::prefix/etc/X11/gdm/custom.conf";
- my $kdm_file = common::read_alternative('kdm4-config');
- my $desktop = $desktop{DESKTOP} || (! -e $kdm_file && -e $gdm_file ? 'GNOME' : 'KDE4');
- my $autologin = do {
- if (($desktop{DISPLAYMANAGER} || $desktop) eq 'GNOME') {
- my %conf = read_gnomekderc($gdm_file, 'daemon');
- text2bool($conf{AutomaticLoginEnable}) && $conf{AutomaticLogin};
- } else { # KDM / MdkKDM
- my %conf = read_gnomekderc($kdm_file, 'X-:0-Core');
- text2bool($conf{AutoLoginEnable}) && $conf{AutoLoginUser};
- }
- };
- { autologin => $autologin, desktop => $desktop };
+ my $sddm_file = "$::prefix/etc/sddm.conf";
+ my $lightdm_conffile = "$::prefix/etc/lightdm/lightdm.conf.d/50-mageia-autologin.conf";
+ my $lxdm_conffile = "$::prefix/etc/lxdm/lxdm.conf";
+ my $autologin_file = "$::prefix/etc/sysconfig/autologin";
+ my $desktop = $desktop{DESKTOP} || first(sessions());
+ my %desktop_to_dm = (
+ GNOME => 'gdm',
+ Plasma => 'sddm',
+ Xfce => 'lightdm',
+ LXDE => 'lxdm',
+ );
+ my $dm =
+ basename(readlink("$::prefix/etc/systemd/system/display-manager.service")) =~ s/(.*)\.service/$1/r ||
+ $desktop_to_dm{$desktop} ||
+ basename(first(available_dms()));
+
+ my $autologin_user;
+ if ($dm eq "gdm") {
+ my %conf = read_gnomekderc($gdm_file, 'daemon');
+ $autologin_user = text2bool($conf{AutomaticLoginEnable}) && $conf{AutomaticLogin};
+ } elsif ($dm eq "sddm") {
+ my %conf = read_gnomekderc($sddm_file, 'Autologin');
+ $autologin_user = $conf{User};
+ } elsif ($dm eq "lightdm") {
+ my %conf = read_gnomekderc($lightdm_conffile, 'Seat:*');
+ $autologin_user = text2bool($conf{'#dummy-autologin'}) && $conf{"autologin-user"};
+ } elsif ($dm eq "lxdm") {
+ my %conf = read_gnomekderc($lxdm_conffile, 'base');
+ $autologin_user = $conf{autologin};
+ $autologin_user =~ s/^.//;
+ } else {
+ my %conf = getVarsFromSh($autologin_file);
+ $autologin_user = text2bool($conf{AUTOLOGIN}) && $conf{USER};
+ }
+
+ { user => $autologin_user, desktop => $desktop, dm => $dm };
+}
+
+sub is_standalone_autologin_needed {
+ my ($dm) = @_;
+ return member($dm, qw(slim xdm));
}
sub set_autologin {
- my ($do_pkgs, $o_user, $o_wm) = @_;
- log::l("set_autologin $o_user $o_wm");
- my $autologin = bool2text($o_user);
+ my ($do_pkgs, $autologin, $o_auto) = @_;
+ log::l("set_autologin $autologin->{user} $autologin->{desktop}");
+ my $do_autologin = bool2text($autologin->{user});
+
+ $autologin->{dm} ||= 'xdm';
+ $do_pkgs->ensure_is_installed($autologin->{dm}, undef, $o_auto)
+ or return;
+ if ($autologin->{user} && is_standalone_autologin_needed($autologin->{dm})) {
+ $do_pkgs->ensure_is_installed('autologin', '/usr/bin/startx.autologin', $o_auto)
+ or return;
+ }
- #- Configure KDM / MDKKDM
- eval { common::update_gnomekderc_no_create(common::read_alternative('kdm4-config'), 'X-:0-Core' => (
- AutoLoginEnable => $autologin,
- AutoLoginUser => $o_user,
- )) };
+ #- Configure SDDM
+ my $sddm_conffile = "$::prefix/etc/sddm.conf";
+ eval { common::update_gnomekderc_no_create($sddm_conffile, 'Autologin' => (
+ Session => get_session_file_with_extension($autologin->{desktop}),
+ User => $autologin->{user},
+ )) } if -e $sddm_conffile;
#- Configure GDM
- eval { update_gnomekderc("$::prefix/etc/X11/gdm/custom.conf", daemon => (
- AutomaticLoginEnable => $autologin,
- AutomaticLogin => $o_user,
- )) };
-
+ my $gdm_conffile = "$::prefix/etc/X11/gdm/custom.conf";
+ eval { update_gnomekderc($gdm_conffile, daemon => (
+ AutomaticLoginEnable => $do_autologin,
+ AutomaticLogin => $autologin->{user},
+ )) } if -e $gdm_conffile;
+
+ #- Configure LIGHTDM
+ my $lightdm_conffile = "$::prefix/etc/lightdm/lightdm.conf.d/50-mageia-autologin.conf";
+ eval { update_gnomekderc($lightdm_conffile, 'Seat:*' => (
+ '#dummy-autologin' => $do_autologin,
+ 'autologin-user' => $autologin->{user},
+ 'autologin-session' => get_session_file($autologin->{desktop}),
+ )) } if -e $lightdm_conffile;
+
+ #- Configure LXDM
+ my $lxdm_conffile = "$::prefix/etc/lxdm/lxdm.conf";
+ eval { update_gnomekderc($lxdm_conffile, 'base' => (
+ 'autologin' => $autologin->{user} ? '@' . $autologin->{user} : ''
+ ));
+ if ($autologin->{user} && $autologin->{desktop} && !member($autologin->{desktop}, qw(default failsafe))) {
+ update_gnomekderc($lxdm_conffile, $autologin->{user} => (
+ 'user' => $autologin->{user},
+ 'session' => get_session_file($autologin->{desktop}),
+ )) } } if -e $lxdm_conffile;
+
+ #- Configure XDM
my $xdm_autologin_cfg = "$::prefix/etc/sysconfig/autologin";
- if (member($o_wm, 'KDE', 'KDE4', 'GNOME')) {
- unlink $xdm_autologin_cfg;
- } else {
- $do_pkgs->ensure_is_installed('autologin', '/usr/bin/startx.autologin') if $o_user;
+ if (is_standalone_autologin_needed($autologin->{dm})) {
setVarsInShMode($xdm_autologin_cfg, 0644,
- { USER => $o_user, AUTOLOGIN => bool2yesno($o_user), EXEC => '/usr/bin/startx.autologin' });
+ { USER => $autologin->{user}, AUTOLOGIN => bool2yesno($autologin->{user}), EXEC => '/usr/bin/startx.autologin' });
+ } else {
+ unlink $xdm_autologin_cfg;
}
- if ($o_user) {
- my $home = (getpwnam($o_user))[7];
- set_window_manager($home, $o_wm);
+ my $sys_conffile = "$::prefix/etc/sysconfig/desktop";
+ my %desktop = getVarsFromSh($sys_conffile);
+ $desktop{DESKTOP} = $autologin->{desktop};
+ $desktop{DISPLAYMANAGER} = $autologin->{dm};
+ setVarsInSh($sys_conffile, \%desktop);
+ symlinkf("/usr/lib/systemd/system/$autologin->{dm}.service", "$::prefix/etc/systemd/system/display-manager.service");
+
+ if ($autologin->{user}) {
+ my $home = (getpwnam($autologin->{user}))[7];
+ set_window_manager($home, $autologin->{desktop});
}
}
sub set_window_manager {
@@ -701,10 +973,6 @@ sub set_window_manager {
$l{DESKTOP} = $wm;
setVarsInSh("$p_home/.desktop", \%l);
}
- my $sys_conffile = "$::prefix/etc/sysconfig/desktop";
- my %desktop = getVarsFromSh($sys_conffile);
- $desktop{DESKTOP} = $wm;
- setVarsInSh($sys_conffile, \%desktop);
}
sub rotate_log {
@@ -726,7 +994,7 @@ sub writeandclean_ldsoconf {
my @l = chomp_(cat_($file));
my @default = ('/lib', '/usr/lib'); #- no need to have /lib and /usr/lib in ld.so.conf
- my @suggest = ('/usr/X11R6/lib', '/usr/lib/qt3/lib'); #- needed for upgrade where package renaming can cause this to disappear
+ my @suggest = ('/usr/lib/qt3/lib'); #- needed for upgrade where package renaming can cause this to disappear
if (arch() =~ /x86_64/) {
@default = map { $_, $_ . '64' } @default;
@@ -775,9 +1043,15 @@ sub ask_user {
ask_user_and_root($in, undef, $users, $security, %options);
}
+sub is_xguest_installed() {
+ -e "$::prefix/etc/security/namespace.d/xguest.conf";
+}
+
sub ask_user_and_root {
my ($in, $superuser, $users, $security, %options) = @_;
+ my $xguest = is_xguest_installed();
+
$options{needauser} ||= $security >= 3;
my @icons = facesnames();
@@ -805,7 +1079,7 @@ sub ask_user_and_root {
require authentication;
my $validate_name = sub {
$u->{name} or $in->ask_warn('', N("Please give a user name")), return;
- $u->{name} =~ /^[a-z]+?[a-z0-9_-]*?$/ or $in->ask_warn('', N("The user name must contain only lower cased letters, numbers, `-' and `_'")), return;
+ $u->{name} =~ /^[a-z]+[a-z0-9_-]*$/ or $in->ask_warn('', N("The user name must start with a lower case letter followed by only lower cased letters, numbers, `-' and `_'")), return;
length($u->{name}) <= 32 or $in->ask_warn('', N("The user name is too long")), return;
defined getpwnam($u->{name}) || member($u->{name}, map { $_->{name} } @$users) and $in->ask_warn('', N("This user name has already been added")), return;
'ok';
@@ -815,18 +1089,21 @@ sub ask_user_and_root {
my $id = $u->{$field} or return 'ok';
my $name = $field eq 'uid' ? N("User ID") : N("Group ID");
$id =~ /^\d+$/ or $in->ask_warn('', N("%s must be a number", $name)), return;
- $id >= 500 or $in->ask_yesorno('', N("%s should be above 500. Accept anyway?", $name)) or return;
+ $id >= 1000 or $in->ask_yesorno('', N("%s should be above 1000. Accept anyway?", $name)) or return;
'ok';
};
my $ret = $in->ask_from_(
{ title => N("User management"),
interactive_help_id => 'addUser',
if_($::isInstall && $superuser, cancel => ''),
- focus_first => 1,
}, [
$superuser ? (
+ if_(0,
+ { text => N("Enable guest account"), val => \$xguest, type => 'bool', advanced => 1 },
+ ),
{ label => N("Set administrator (root) password"), title => 1 },
{ label => N("Password"), val => \$superuser->{password}, hidden => 1, alignment => 'right', weakness_check => 1,
+ focus => sub { 1 },
validate => sub { authentication::check_given_password($in, $superuser, 2 * $security) } },
{ label => N("Password (again)"), val => \$superuser->{password2}, hidden => 1, alignment => 'right' },
) : (),
@@ -837,8 +1114,10 @@ sub ask_user_and_root {
),
{ label => N("Real name"), val => \$u->{realname}, alignment => 'right', focus_out => sub {
$u->{name} ||= lc(Locale::gettext::iconv($u->{realname}, "utf-8", "ascii//TRANSLIT"));
- $u->{name} =~ s/[^a-zA-Z0-9_-]//g; # drop any charcter that would break login program
- } },
+ $u->{name} =~ s/[^a-zA-Z0-9_-]//g; # drop any character that would break login program
+ },
+ focus => sub { !$superuser },
+ },
{ label => N("Login name"), val => \$u->{name}, list => \@suggested_names, alignment => 'right',
not_edit => 0, validate => $validate_name },
@@ -848,13 +1127,21 @@ sub ask_user_and_root {
{ label => N("Shell"), val => \$u->{shell}, list => [ shells() ], advanced => 1 },
{ label => N("User ID"), val => \$u->{uid}, advanced => 1, validate => sub { $validate_uid_gid->('uid') } },
{ label => N("Group ID"), val => \$u->{gid}, advanced => 1, validate => sub { $validate_uid_gid->('gid') } },
- if_($security > 3,
+ if_($security >= 1,
+ { label => N("Extra Groups:"), advanced => 1, title => 1 },
map {
- { label => $_, val => \$groups{$_}, text => $high_security_groups{$_}, type => 'bool' };
+ { label => $_, val => \$groups{$_}, text => $high_security_groups{$_}, type => 'bool', advanced => 1 };
} keys %high_security_groups,
),
],
);
+
+ if ($xguest && !is_xguest_installed()) {
+ $in->do_pkgs->ensure_is_installed('xguest', '/etc/security/namespace.d/xguest.conf');
+ } elsif (!$xguest && is_xguest_installed()) {
+ $in->do_pkgs->remove('xguest') or return;
+ }
+
$u->{groups} = [ grep { $groups{$_} } keys %groups ];
push @$users, $u if $u->{name};
@@ -863,7 +1150,12 @@ sub ask_user_and_root {
}
sub sessions() {
- split(' ', run_program::rooted_get_stdout($::prefix, '/usr/sbin/chksession', '-l'));
+ my @l;
+ my @dir_wm = qw(xsessions wayland-sessions);
+ foreach my $dwm (@dir_wm) {
+ push @l, map { s/.desktop$//; basename($_) } glob("$::prefix/usr/share/$dwm/*.desktop");
+ }
+ @l;
}
sub sessions_with_order() {
my %h = map { /(.*)=(.*)/ } split(' ', run_program::rooted_get_stdout($::prefix, '/usr/sbin/chksession', '-L'));
@@ -871,20 +1163,32 @@ sub sessions_with_order() {
}
sub urpmi_add_all_media {
- my ($in, $o_previous_release) = @_;
+ my ($in, $o_previous_release, $o_mirror_url) = @_;
- my $binary = find { whereis_binary($_, $::prefix) } 'gurpmi.addmedia', 'urpmi.addmedia' or return;
+ $o_mirror_url = undef if $o_mirror_url eq '$MIRRORLIST';
+
+ my $binary = find { whereis_binary($_, $::prefix) } if_(check_for_xserver(), 'gurpmi.addmedia'), 'urpmi.addmedia';
+ if (!$binary) {
+ log::l("urpmi.addmedia not found!");
+ return;
+ }
#- configure urpmi media if network is up
require network::tools;
- return if !network::tools::has_network_connection();
+ if (!network::tools::has_network_connection()) {
+ log::l("no network connexion!");
+ return;
+ }
+ # First remove all media:
+ run_program::rooted($::prefix, 'urpmi.removemedia', '-a');
+ # Then add online media:
my $wait;
- my @options = ('--distrib', '--mirrorlist', '$MIRRORLIST');
+ my @options = $o_mirror_url ? ( '--distrib', $o_mirror_url) : ('--distrib', '--mirrorlist', '$MIRRORLIST');
if ($binary eq 'urpmi.addmedia') {
$wait = $in->wait_message(N("Please wait"), N("Please wait, adding media..."));
} elsif ($in->isa('interactive::gtk')) {
push @options, '--silent-success';
- mygtk2::flush();
+ mygtk3::flush();
}
my $reason = join(',', $o_previous_release ?
@@ -894,7 +1198,45 @@ sub urpmi_add_all_media {
local $ENV{URPMI_ADDMEDIA_REASON} = $reason;
my $log_file = '/root/drakx/updates.log';
- run_program::rooted($::prefix, $binary, '>>', $log_file, '2>>', $log_file, @options);
+ my $val = run_program::rooted($::prefix, $binary, '>>', $log_file, '2>>', $log_file, @options);
+
+ undef $wait;
+ $val;
+}
+
+sub urpmi_set_downloader {
+ my ($in, $urpm, $downloader) = @_;
+
+ if ($urpm->{global_config}{downloader} ne $downloader) {
+ my $binary = $downloader eq 'aria2' ? 'aria2c' : $downloader;
+ if ($in->do_pkgs->ensure_binary_is_installed($downloader, $binary, 1)) {
+ log::l("Setting urpmi downloader to '$downloader'");
+ $urpm->{global_config}{downloader} = $downloader;
+ urpm::media::write_config($urpm);
+ } else {
+ return;
+ }
+ }
+ 1;
+}
+
+sub format_wm {
+ my ($wm) = @_;
+ return {
+ cinnamon => 'Cinnamon',
+ enlightenment => 'Enlightenment',
+ 'gnome-classic' => 'GNOME Classic',
+ gnome => 'GNOME',
+ i3 => 'I3',
+ 'i3-with-shmlog' => 'I3 with shmlog',
+ lxqt => 'LxQt',
+ mate => 'Mate',
+ openbox => 'OpenBox',
+ 'plasma-mediacenter' => 'Plasma Mediacenter',
+ '01plasma' => 'Plasma',
+ sugar => 'Sugar',
+ xfce => 'Xfce',
+ }->{$wm};
}
sub autologin {
@@ -915,7 +1257,7 @@ sub autologin {
messages => N("I can set up your computer to automatically log on one user.") },
[ { text => N("Use this feature"), val => \$use_autologin, type => 'bool' },
{ label => N("Choose the default user:"), val => \$o->{autologin}, list => \@users, disabled => sub { !$use_autologin } },
- { label => N("Choose the window manager to run:"), val => \$o->{desktop}, list => \@wm, disabled => sub { !$use_autologin } } ]
+ { label => N("Choose the window manager to run:"), val => \$o->{desktop}, list => \@wm, disabled => sub { !$use_autologin }, format => \&format_wm } ]
);
delete $o->{autologin} if !$use_autologin;
} else {
@@ -927,38 +1269,33 @@ sub display_release_notes {
my ($in, $release_notes) = @_;
if (!$in->isa('interactive::gtk')) {
$in->ask_from_({ title => N("Release Notes"),
- messages => $release_notes, #formatAlaTeX(messages::main_license()),
+ messages => $release_notes,
}, [ {} ]);
return;
}
- # workaround too small fonts:
- $release_notes =~ s!(<head>)!$1 <style type="text/css">
- body { font-family: sans-serif; font-size: 13px }
- table { font-family: sans-serif; font-size: 13px }
- </style>!x;
-
- require Gtk2::WebKit;
- require ugtk2;
- ugtk2->import(':all');
- require mygtk2;
- mygtk2->import('gtknew');
- my $view = gtknew('WebKit_View', no_popup_menu => 1);
- $view->load_html_string($release_notes, '/');
+ require Gtk3::WebKit2;
+ Gtk3::WebKit2->import;
+ require ugtk3;
+ ugtk3->import(':all');
+ require mygtk3;
+ mygtk3->import('gtknew');
+ my $view = gtknew('WebKit2_WebView', no_popup_menu => 1);
+ $view->load_html($release_notes, '/');
- my $w = ugtk2->new(N("Release Notes"), transient => $::main_window, modal => 1, pop_it => 1);
+ my $w = ugtk3->new(N("Release Notes"), transient => $::main_window, modal => 1, pop_it => 1);
gtkadd($w->{rwindow},
- gtkpack_(Gtk2::VBox->new,
- 1, create_scrolled_window(ugtk2::gtkset_border_width($view, 5),
+ gtkpack_(Gtk3::VBox->new,
+ 1, create_scrolled_window(ugtk3::gtkset_border_width($view, 5),
[ 'never', 'automatic' ],
),
0, gtkpack(create_hbox('end'),
gtknew('Button', text => N("Close"),
- clicked => sub { Gtk2->main_quit })
+ clicked => sub { Gtk3->main_quit })
),
),
);
- mygtk2::set_main_window_size($w->{rwindow});
+ mygtk3::set_main_window_size($w->{rwindow});
$w->{real_window}->grab_focus;
$w->{real_window}->show_all;
$w->main;
@@ -979,7 +1316,7 @@ sub get_release_notes {
my $d = find { -e "$_/$file" } glob_("/usr/share/doc/*-release-*");
$d && cat_("$d/$file");
}
- } "release-notes$ext", 'release-notes.' . arch() . $ext);
+ } "release-notes$ext", 'release-notes.' . $ext);
# we do not handle links:
$release_notes =~ s!<a href=".*?">(.*?)</a>!$1!g;
@@ -989,26 +1326,22 @@ sub get_release_notes {
sub run_display_release_notes {
my ($release_notes) = @_;
output('/tmp/release_notes.html', $release_notes);
+ local $ENV{LC_ALL} = $::o->{locale}{lang} || 'C';
run_program::raw({ detach => 1 }, '/usr/bin/display_release_notes.pl');
}
sub acceptLicense {
- my ($in, $google) = @_;
+ my ($in) = @_;
require messages;
my $release_notes = get_release_notes($in);
my $r = $::testing ? 'Accept' : 'Refuse';
- my $license = join("\n\n\n",
- messages::main_license($google, $google),
- messages::warning_about_patents(),
- if_($google, messages::google_provisions()));
-
$in->ask_from_({ title => N("License agreement"),
focus_first => 1,
cancel => N("Quit"),
- messages => formatAlaTeX($license),
+ messages => formatAlaTeX(messages::main_license()),
interactive_help_id => 'acceptLicense',
callbacks => { ok_disabled => sub { $r eq 'Refuse' } },
},
@@ -1033,7 +1366,7 @@ sub reboot() {
$o->exit;
} else {
# when refusing license in finish-install:
- exec("/sbin/reboot");
+ exec("/bin/reboot");
}
}
@@ -1067,25 +1400,22 @@ sub selectLanguage_install {
}
my $non_utf8 = 0;
- my $utf8_forced;
add2hash($common, { cancel => '',
focus_first => 1,
- advanced_messages => formatAlaTeX(N("Mandriva Linux can support multiple languages. Select
+ advanced_messages => formatAlaTeX(N("%s can support multiple languages. Select
the languages you would like to install. They will be available
-when your installation is complete and you restart your system.")),
- advanced_label => N("Multi languages"),
+when your installation is complete and you restart your system.", N("Mageia"))),
+ advanced_label => N("Multiple languages"),
+ advanced_title => N("Select Additional Languages"),
});
$in->ask_from_($common, [
{ val => \$lang, separator => '|',
if_($using_images, image2f => sub { $name2l{$_[0]} =~ /^[a-z]/ && "langs/lang-$name2l{$_[0]}" }),
format => sub { $_[0] =~ /(.*\|)(.*)/ ? $1 . lang::l2name($2) : lang::l2name($_[0]) },
- list => \@langs, sort => !$in->isa('interactive::gtk'), changed => sub {
- #- very special cases for langs which do not like UTF-8
- $non_utf8 = $lang =~ /\bzh_TW/i if !$utf8_forced;
- }, focus_out => sub { $langs->{$listval2val->($lang)} = 1 } },
- { val => \$non_utf8, type => 'bool', text => N("Old compatibility (non UTF-8) encoding"),
- advanced => 1, changed => sub { $utf8_forced = 1 } },
+ list => \@langs, sort => !$in->isa('interactive::gtk'),
+ focus_out => sub { $langs->{$listval2val->($lang)} = 1 } },
+ { val => \$non_utf8, type => 'bool', text => N("Old compatibility (non UTF-8) encoding"), advanced => 1 },
{ val => \$langs->{all}, type => 'bool', text => N("All languages"), advanced => 1 },
map {
{ val => \$langs->{$_->[0]}, type => 'bool', disabled => sub { $langs->{all} },
@@ -1120,7 +1450,7 @@ sub selectLanguage_standalone {
]);
$locale->{utf8} = !$non_utf8;
lang::set($locale);
- Gtk2->set_locale if $in->isa('interactive::gtk');
+ c::init_setlocale() if $in->isa('interactive::gtk');
lang::lang_changed($locale) if $old_lang ne $locale->{lang};
}
@@ -1164,7 +1494,7 @@ sub selectCountry {
$in->ask_from_(
{ title => N("Country / Region"),
messages => N("Please choose your country"),
- interactive_help_id => 'misc-params.html#drakxid-selectCountry',
+ interactive_help_id => 'selectCountry.html',
if_(@best, advanced_messages => N("Here is the full list of available countries")),
advanced_label => @best ? N("Other Countries") : N("Advanced"),
},
@@ -1190,44 +1520,64 @@ sub set_login_serial_console {
substInFile { s/^s$port:.*//; $_ = $line if eof } "$::prefix/etc/inittab";
}
-sub report_bug {
- my (@other) = @_;
-
- sub header { "
+sub header { "
********************************************************************************
* $_[0]
********************************************************************************";
- }
+}
+
+sub fdisk() {
+ my @devs = grep { !m!^/dev/(loop|ram)\d+! && !/\d$/ } map { "/dev/$_->{dev}" } fs::proc_partitions::read_raw();
+ `fdisk -l @devs`;
+
+}
+
+sub report_bug {
+ my (@other) = @_;
join '', map { chomp; "$_\n" }
header("lspci"), detect_devices::stringlist(),
+ header("hid_devices"), (map { sprintf("%-16s: %s", $_->{driver} || "unknown", $_->{description}) } c::hid_probe()),
+ header("input devices"), cat_("/proc/bus/input/devices"),
+ header("libinput devices"), `libinput list-devices`,
header("pci_devices"), cat_("/proc/bus/pci/devices"),
- header("dmidecode"), `dmidecode`,
- header("fdisk"), arch() =~ /ppc/ ? `pdisk -l` : `fdisk -l`,
+ header("dmidecode"), arch() =~ /86/ ? `dmidecode` : (),
+ header("fdisk"), fdisk(),
header("scsi"), cat_("/proc/scsi/scsi"),
header("/sys/bus/scsi/devices"), -d '/sys/bus/scsi/devices' ? `ls -l /sys/bus/scsi/devices` : (),
header("lsmod"), cat_("/proc/modules"),
header("cmdline"), cat_("/proc/cmdline"),
header("pcmcia: stab"), cat_("$::prefix/var/lib/pcmcia/stab") || cat_("$::prefix/var/run/stab"),
- header("usb"), cat_("/proc/bus/usb/devices"),
+ header("usb"), cat_("/sys/kernel/debug/usb/devices"),
header("partitions"), cat_("/proc/partitions"),
+ header("PVs"), `pvs`,
+ header("VGs"), `vgs`,
+ header("LVs"), `lvs`,
+ header("dmsetup info"), `dmsetup info`,
+ header("dmsetup table"), `dmsetup table`,
+ header("dmsetup ls"), `dmsetup ls`,
header("cpuinfo"), cat_("/proc/cpuinfo"),
- header("syslog"), cat_("/tmp/syslog") || cat_("$::prefix/var/log/syslog"),
+ header("syslog"), cat_("/tmp/syslog") || cat_("$::prefix/var/log/syslog") || `journalctl -q -D $::prefix/var/log/journal -b`,
header("Xorg.log"), cat_("/var/log/Xorg.0.log"),
header("monitor_full_edid"), monitor_full_edid(),
header("stage1.log"), cat_("/tmp/stage1.log") || cat_("$::prefix/root/drakx/stage1.log"),
header("ddebug.log"), cat_("/tmp/ddebug.log") || cat_("$::prefix/root/drakx/ddebug.log"),
header("install.log"), cat_("$::prefix/root/drakx/install.log"),
+ header("draklive-install.log"), cat_("/tmp/draklive-install.log") || cat_("$::prefix/root/drakx/draklive-install.log"),
header("fstab"), cat_("$::prefix/etc/fstab"),
header("modprobe.conf"), cat_("$::prefix/etc/modprobe.conf"),
header("lilo.conf"), cat_("$::prefix/etc/lilo.conf"),
header("grub: menu.lst"), join('', map { s/^(\s*password)\s+(.*)/$1 xxx/; $_ } cat_("$::prefix/boot/grub/menu.lst")),
header("grub: install.sh"), cat_("$::prefix/boot/grub/install.sh"),
header("grub: device.map"), cat_("$::prefix/boot/grub/device.map"),
+ header("grub2: grub"), cat_("$::prefix/etc/default/grub"),
+ header("grub2: grub.cfg"), join('', map { s/^(\s*password_pbkdf2)\s+grub.pbkdf2.*/$1 xxx/; $_ } cat_("$::prefix/boot/grub2/grub.cfg")),
+ header("grub2: install.sh"), cat_("$::prefix/boot/grub2/install.sh"),
header("xorg.conf"), cat_("$::prefix/etc/X11/xorg.conf"),
header("urpmi.cfg"), cat_("$::prefix/etc/urpmi/urpmi.cfg"),
header("modprobe.preload"), cat_("$::prefix/etc/modprobe.preload"),
header("sysconfig/i18n"), cat_("$::prefix/etc/sysconfig/i18n"),
+ header("locale.conf"), cat_("$::prefix/etc/locale.conf"),
header("/proc/iomem"), cat_("/proc/iomem"),
header("/proc/ioport"), cat_("/proc/ioports"),
map_index { even($::i) ? header($_) : $_ } @other;
@@ -1274,7 +1624,7 @@ Allowing this will permit users to simply click on \"Share\" in konqueror and na
nfs => [ 'nfs-utils', 'nfs-server',
N("NFS: the traditional Unix file sharing system, with less support on Mac and Windows.")
],
- smb => [ 'samba-server', 'smb',
+ smb => [ 'samba', 'smb',
N("SMB: a file sharing system used by Windows, Mac OS X and many modern Linux systems.")
],
);
@@ -1290,7 +1640,7 @@ Allowing this will permit users to simply click on \"Share\" in konqueror and na
}
foreach (keys %types) {
my ($pkg, $service, $_descr) = @{$types{$_}};
- my $file = "/etc/init.d/$service";
+ my $file = "/usr/lib/systemd/system/${service}.service";
if ($l{$_}) {
$in->do_pkgs->ensure_is_installed($pkg, $file) or return;
services::start($service);
@@ -1322,16 +1672,17 @@ You can use userdrake to add a user to this group.")
}
sub monitor_full_edid() {
- return if $::noauto;
+ return if $::noauto || $::local_install;
- devices::make('zero');
my ($vbe, $edid);
{
# prevent warnings in install's logs:
local $ENV{LC_ALL} = 'C';
+ # don't use --try-in-console as it can cause a GNOME session to die (mga#28124)
+ # with most DMs the DE is running in vt1, so it does nothing anyway
run_program::raw({ timeout => 20 },
'monitor-edid', '>', \$edid, '2>', \$vbe,
- '-v', '--perl', if_($::isStandalone, '--try-in-console'));
+ '-v', '--perl');
}
if ($::isInstall) {
foreach (['edid', \$edid], ['vbe', \$vbe]) {
@@ -1353,7 +1704,7 @@ sub monitor_full_edid() {
# FIXME: is buggy regarding multiple sessions
sub running_window_manager() {
- my @window_managers = qw(ksmserver kwin gnome-session icewm wmaker afterstep fvwm fvwm2 fvwm95 mwm twm enlightenment xfce blackbox sawfish olvwm fluxbox compiz drakx-matchbox-window-manager);
+ my @window_managers = qw(drakx-matchbox-window-manager ksmserver kwin kwin_x11 kwin_wayland gnome-session icewm wmaker afterstep fvwm fvwm2 fvwm95 mwm twm enlightenment xfce4-session blackbox sawfish olvwm fluxbox compiz lxsession);
foreach (@window_managers) {
my @pids = fuzzy_pidofs(qr/\b$_\b/) or next;
@@ -1377,10 +1728,12 @@ sub ask_window_manager_to_logout {
'kwin' => "dcop kdesktop default logout",
'gnome-session' => "gnome-session-save --kill",
'icewm' => "killall -QUIT icewm",
+ 'xfce4-session' => "xfce4-session-logout --logout",
+ 'lxsession' => "lxde-logout",
);
my $cmd = $h{$wm} or return;
if (member($wm, 'ksmserver', 'kwin', 'gnome-session') && $> == 0) {
- #- we can not use dcop when we are root
+ #- we cannot use dcop when we are root
if (my $user = $ENV{USERHELPER_UID} && getpwuid($ENV{USERHELPER_UID})) {
$cmd = "su $user -c '$cmd'";
} else {
@@ -1420,11 +1773,11 @@ sub ask_for_X_restart {
if (!$wm) {
# no window manager, ctrl-alt-del may not be supported, but we still have to restart X..
$in->ask_okcancel('', N("You need to logout and back in again for changes to take effect. Press OK to logout now."), 1) or return;
- system('killall X');
+ system('killall', 'Xorg');
}
else {
$in->ask_okcancel('', N("You need to log out and back in again for changes to take effect"), 1) or return;
- ask_window_manager_to_logout_then_do($wm, $pid, 'killall X');
+ ask_window_manager_to_logout_then_do($wm, $pid, 'killall Xorg');
}
}
@@ -1480,7 +1833,7 @@ sub configure_time_more {
my $tz_prefix = timezone::get_timezone_prefix();
local $ENV{TZ} = ':' . $tz_prefix . '/' . $timezone->{timezone};
- $in->ask_from_({ interactive_help_id => 'misc-params#drakxid-configureTimezoneGMT',
+ $in->ask_from_({ interactive_help_id => 'configureTimezoneUTC',
title => N("Date, Clock & Time Zone Settings"),
}, [
{ label => N("Date, Clock & Time Zone Settings"), title => 1 },
@@ -1515,4 +1868,158 @@ sub enable_x_screensaver() {
run_program::run("xset", "s", "reset");
}
+=item ask_url($in, $o_url)
+
+Asks URL of the mirror
+
+=cut
+
+sub ask_url {
+ my ($in, $o_url) = @_;
+
+ my $url = $o_url;
+ $in->ask_from_({ messages => N("URL of the mirror?"), focus_first => 1 }, [
+ { val => \$url,
+ validate => sub {
+ if ($url =~ m!^(https?|ftp)://!) {
+ 1;
+ } else {
+ $in->ask_warn('', N("URL must start with ftp:// or http:// or https://"));
+ 0;
+ }
+ } } ]) && $url;
+}
+
+=item ask_mirror($in, $type, $o_url)
+
+Retrieves list of mirrors and offers to pick one
+
+=cut
+
+sub ask_mirror {
+ my ($in, $type, $o_url) = @_;
+
+ require mirror;
+
+ my $mirrors = eval {
+ my $_w = $in->wait_message('', N("Contacting %s web site to get the list of available mirrors...", N("Mageia")));
+ mirror::list($in->{product_id}, $type);
+ };
+ my $err = $@;
+ if (!$mirrors) {
+ $in->ask_warn('', N("Failed contacting %s web site to get the list of available mirrors", N("Mageia")) . "\n$err");
+ return ask_url($in, $o_url);
+ }
+
+ my $give_url = { country => '-', host => 'URL' };
+
+ my $mirror;
+ if ($o_url) {
+ $mirror = (find { $_->{url} eq $o_url } @$mirrors) || $give_url;
+ } else {
+ #- use current time zone to select best mirror
+ require urpm::mirrors;
+ my $urpm = $in->{packages} || { log => \&log::l };
+ urpm::mirrors::add_proximity_and_sort($urpm, $mirrors);
+ $mirror = @$mirrors[0] || $give_url;
+ }
+ $in->ask_from_({ messages => N("Choose a mirror from which to get the packages"),
+ cancel => N("Cancel"),
+ }, [ { separator => '|',
+ format => \&mirror::mirror2text,
+ list => [ @$mirrors, $give_url ],
+ val => \$mirror,
+ },
+ ]) or return;
+
+ my $url;
+ if ($mirror eq $give_url) {
+ $url = ask_url($in, $o_url) or goto &ask_mirror;
+ } else {
+ $url = $mirror->{url};
+ }
+ $url =~ s!/main/?$!!;
+ log::l("chosen mirror: $url");
+ $url;
+}
+
+=item ask_mirror_and_downloader($in, $options, $o_downloader_only)
+
+Asks whether to automatically select the mirror (using $MIRRORLIST) or use
+one specified by the user. Also asks whether to use the default downloader
+or to use one specified by the user.
+
+Default values are supplied and user-entered values are returned in $options
+which should be a reference to a hash containing the following fields:
+
+=over 4
+
+=item * B<mirror_url>: the currently selected mirror URL ('$MIRRORLIST' for automatic selection)
+
+=item * B<downloader>: the currently selected downloader (undefined when using the default downloader)
+
+=back
+
+If $o_downloader_only is true, the mirror selection choice is not displayed.
+
+=cut
+
+sub ask_mirror_and_downloader {
+ my ($in, $options, $o_downloader_only) = @_;
+
+ my $mirror_url = $options->{mirror_url} || '';
+ my $downloader = $options->{downloader} || 'default';
+
+ my $mirror_choice = $mirror_url eq '$MIRRORLIST' ? 'automatic' : 'specific';
+
+ my $enable_aria2 = $::isInstall || $in->do_pkgs->is_installed('aria2', '/usr/bin/aria2c');
+ my $enable_curl = $::isInstall || $in->do_pkgs->is_installed('curl', '/usr/bin/curl');
+ my $enable_wget = $::isInstall || $in->do_pkgs->is_installed('wget', '/usr/bin/wget');
+
+ $in->ask_from_(
+ {
+ },
+ [
+ if_(!$o_downloader_only,
+ { label => N("Mirror choice"), val => \$mirror_choice,
+ type => 'combo', list => [ 'automatic', 'specific' ],
+ format => sub {
+ my ($choice) = @_;
+ +{
+ 'automatic' => N("Automatic"),
+ 'specific' => N("Specific"),
+ }->{$choice};
+ },
+ },
+ ),
+ { label => N("Downloader"), val => \$downloader,
+ type => 'combo', list => [ 'default', 'aria2', 'curl', 'wget' ],
+ format => sub {
+ my ($choice) = @_;
+ +{
+ 'default' => N("Default"),
+ if_($enable_aria2, 'aria2' => 'aria2'),
+ if_($enable_curl, 'curl' => 'curl'),
+ if_($enable_wget, 'wget' => 'wget'),
+ }->{$choice};
+ },
+ },
+ ]
+ ) or return;
+
+ if ($mirror_choice eq 'automatic') {
+ $mirror_url = '$MIRRORLIST';
+ } elsif ($mirror_url eq '$MIRRORLIST') {
+ $mirror_url = undef;
+ }
+ if ($downloader eq 'default') {
+ $downloader = undef;
+ }
+
+ $options->{mirror_url} = $mirror_url;
+ $options->{downloader} = $downloader;
+
+ 1;
+}
+
1;
diff --git a/perl-install/authentication.pm b/perl-install/authentication.pm
index 452a0667a..55491edfb 100644
--- a/perl-install/authentication.pm
+++ b/perl-install/authentication.pm
@@ -1,8 +1,8 @@
-package authentication; # $Id$
+package authentication;
use common;
-my ($authentication) = @_;
+my $authentication;
sub kinds {
my $no_para = @_ == 0;
@@ -47,13 +47,15 @@ my %kind2nsswitch = (
winbind => ['winbind'],
);
+my $lib = get_libdir();
+
my %kind2packages = (
local => [],
SmartCard => [ 'castella-pam' ],
- LDAP => [ 'openldap-clients', 'nss_ldap', 'pam_ldap', 'autofs', 'nss_updatedb' ],
- KRB5 => [ 'nss_ldap', 'pam_krb5', 'libsasl2-plug-gssapi', 'nss_updatedb' ],
+ LDAP => [ 'openldap-clients', 'nss-pam-ldapd', 'autofs', 'nss_updatedb' ],
+ KRB5 => [ 'nss-pam-ldapd', 'pam_krb5', "${lib}sasl2-plug-gssapi", 'nss_updatedb' ],
NIS => [ 'ypbind', 'autofs' ],
- winbind => [ 'samba-winbind', 'nss_ldap', 'pam_krb5', 'libsasl2-plug-gssapi' ],
+ winbind => [ 'samba-winbind', 'nss-pam-ldapd', 'pam_krb5', "${lib}sasl2-plug-gssapi" ],
);
@@ -64,7 +66,7 @@ sub kind2description_raw {
LDAP => [ N("LDAP:"), N("Tells your computer to use LDAP for some or all authentication. LDAP consolidates certain types of information within your organization."), ],
NIS => [ N("NIS:"), N("Allows you to run a group of computers in the same Network Information Service domain with a common password and group file."), ],
winbind => [ N("Windows Domain:"), N("Winbind allows the system to retrieve information and authenticate users in a Windows domain."), ],
- KRB5 => [ N("Kerberos 5 :"), N("With Kerberos and Ldap for authentication in Active Directory Server "), ],
+ KRB5 => [ N("Kerberos 5 :"), N("With Kerberos and LDAP for authentication in Active Directory Server "), ],
);
join('', map { $_ ? qq($_->[0]\n$_->[1]) : '' } map { $kind2description{$_} } @kinds);
}
@@ -96,9 +98,6 @@ sub ask_parameters {
if ($kind eq 'LDAP') {
$authentication->{LDAPDOMAIN} ||= domain_to_ldap_domain($net->{resolv}{DOMAINNAME});
- #$authentication->{anonymous} = "0";
- #$authentication->{cafile} = "0";
- #$authentication->{nssgrp} = "0";
$authentication->{ccreds} = 1;
# this package must be installed for 'Fetch DN' button to actually work
@@ -111,10 +110,10 @@ sub ask_parameters {
{},
{ label => N("LDAP Server"), val => \$authentication->{LDAP_server} },
{ label => N("Base dn"), val => \$authentication->{LDAPDOMAIN} },
- { val => N("Fetch base Dn "), type => button , clicked_may_quit => sub { $authentication->{LDAPDOMAIN} = fetch_dn($authentication->{LDAP_server}); 0 } },
+ { val => N("Fetch base Dn "), type => 'button' , clicked_may_quit => sub { $authentication->{LDAPDOMAIN} = fetch_dn($authentication->{LDAP_server}); 0 } },
{},
{ text => N("Use encrypt connection with TLS "), val => \$authentication->{cafile}, type => 'bool' },
- { val => N("Download CA Certificate "), type => button , disabled => sub { !$authentication->{cafile} }, clicked_may_quit => sub { $authentication->{file} = add_cafile(); 0 } },
+ { val => N("Download CA Certificate "), type => 'button' , disabled => sub { !$authentication->{cafile} }, clicked_may_quit => sub { $authentication->{file} = add_cafile(); 0 } },
{ text => N("Use Disconnect mode "), val => \$authentication->{ccreds}, type => 'bool' },
{ text => N("Use anonymous BIND "), val => \$authentication->{anonymous}, type => 'bool' , advanced => 1 },
@@ -154,7 +153,7 @@ sub ask_parameters {
my %level = (
1 => N("Use local file for users information"),
- 2 => N("Use Ldap for users information"),
+ 2 => N("Use LDAP for users information"),
);
$in->ask_from('', N(" "),
@@ -166,10 +165,10 @@ my %level = (
{},
{ label => N("LDAP Server"), val => \$authentication->{LDAP_server}, disabled => sub { $authentication->{nsskrb} eq "1" } },
{ label => N("Base dn"), val => \$authentication->{LDAPDOMAIN} , disabled => sub { $authentication->{nsskrb} eq "1" } },
- { val => N("Fecth base Dn "), type => button , clicked_may_quit => sub { $authentication->{LDAPDOMAIN} = fetch_dn($authentication->{LDAP_server}); 0 }, disabled => sub { $authentication->{nsskrb} eq "1" } },
+ { val => N("Fetch base DN "), type => 'button' , clicked_may_quit => sub { $authentication->{LDAPDOMAIN} = fetch_dn($authentication->{LDAP_server}); 0 }, disabled => sub { $authentication->{nsskrb} eq "1" } },
{},
{ text => N("Use encrypt connection with TLS "), val => \$authentication->{cafile}, type => 'bool',, disabled => sub { $authentication->{nsskrb} eq "1" } },
- { val => N("Download CA Certificate "), type => button , disabled => sub { !$authentication->{cafile} }, clicked_may_quit => sub { $authentication->{file} = add_cafile(); 0 } },
+ { val => N("Download CA Certificate "), type => 'button' , disabled => sub { !$authentication->{cafile} }, clicked_may_quit => sub { $authentication->{file} = add_cafile(); 0 } },
{ text => N("Use anonymous BIND "), val => \$authentication->{anonymous}, type => 'bool', disabled => sub { $authentication->{nsskrb} eq "1" } },
{ label => N("Bind DN "), val => \$authentication->{LDAP_binddn}, disabled => sub { !$authentication->{anonymous} } },
{ label => N("Bind Password "), val => \$authentication->{LDAP_bindpwd}, disabled => sub { !$authentication->{anonymous} } },
@@ -273,6 +272,8 @@ sub get() {
my $authentication = {
blowfish => to_bool($system_auth =~ /\$2a\$/),
md5 => to_bool($system_auth =~ /md5/),
+ sha256 => to_bool($system_auth =~ /sha256/),
+ sha512 => to_bool($system_auth =~ /sha512/),
shadow => to_bool($system_auth =~ /shadow/),
};
@@ -326,7 +327,6 @@ sub set_raw {
my $pam_modules = $kind2pam_kind{$kind} or log::l("kind2pam_kind does not know $kind");
$pam_modules ||= [];
- sshd_config_UsePAM(@$pam_modules > 0);
set_pam_authentication($pam_modules, $authentication->{ccreds});
my $nsswitch = $kind2nsswitch{$kind} or log::l("kind2nsswitch does not know $kind");
@@ -335,7 +335,7 @@ sub set_raw {
if ($kind eq 'local') {
-output($conf_file, <<EOF);
+ output($conf_file, <<EOF);
auth=Local File
server=none
realm=none
@@ -348,8 +348,8 @@ EOF
configure_nss_ldap($authentication);
-output($conf_file, <<EOF);
-auth=Ldap Directory
+ output($conf_file, <<EOF);
+auth=LDAP Directory
server=$authentication->{LDAP_server}
realm=$authentication->{LDAPDOMAIN}
EOF
@@ -363,7 +363,7 @@ EOF
configure_krb5_for_AD($authentication);
configure_nss_ldap($authentication);
-output($conf_file, <<EOF);
+ output($conf_file, <<EOF);
auth=Kerberos 5
server=$authentication->{AD_server}
realm=$authentication->{AD_domain}
@@ -372,7 +372,7 @@ EOF
} elsif ($kind eq 'NIS') {
my $domain = $net->{network}{NISDOMAIN};
my $NIS_server = $authentication->{NIS_server};
- $domain || $NIS_server ne "broadcast" or die N("Can not use broadcast with no NIS domain");
+ $domain || $NIS_server ne "broadcast" or die N("Cannot use broadcast with no NIS domain");
my $t = $domain ?
($NIS_server eq 'broadcast' ?
"domain $domain broadcast" :
@@ -395,14 +395,12 @@ EOF
run_program::rooted($::prefix, 'service', 'ypbind', 'restart');
});
-output($conf_file, <<EOF);
+ output($conf_file, <<EOF);
auth=$kind
server=$NIS_server
realm=$domain
EOF
-# } elsif ($kind eq 'winbind' || $kind eq 'AD' && $authentication->{subkind} eq 'winbind') {
-
} elsif ($kind eq 'winbind') {
my $domain = uc $authentication->{WINDOMAIN};
@@ -421,11 +419,11 @@ EOF
$when_network_is_up->(sub {
run_program::raw({ root => $::prefix, sensitive_arguments => 1 },
- #'net', 'join', $domain, '-U', $authentication->{winuser} . '%' . $authentication->{winpass});
+ #'net', 'join', $domain, '-U', $authentication->{winuser} . '%' . $authentication->{winpass});
'echo', '"', 'net', 'join', $domain, '-U', $authentication->{winuser} . '%' . $authentication->{winpass}, '"');
});
-output($conf_file, <<EOF);
+ output($conf_file, <<EOF);
auth=Windows NT4 Domain
server= none
realm=$domain
@@ -455,8 +453,8 @@ EOF
run_program::rooted($::prefix, 'service', 'winbind', 'restart');
});
-#FIXME: perhaps save the defaults values ?
-output($conf_file, <<EOF);
+ #FIXME: perhaps save the defaults values ?
+ output($conf_file, <<EOF);
auth=Windows Active Directory Domain
server= none
realm=$realm
@@ -483,11 +481,9 @@ sub pam_format_line {
sub get_raw_pam_authentication() {
my %before_deny;
foreach (cat_("$::prefix/etc/pam.d/system-auth")) {
- #my ($type, $control, $module, @para) = split;
my ($type, $_control, $other) = /(\S+)\s+(\[.*?\]|\S+)\s+(.*)/;
my ($module, @para) = split(' ', $other);
if ($module = pam_module_from_path($module)) {
- #$before_deny{$type}{$module} = \@para if $control eq 'sufficient' && member($module, pam_modules());
$before_deny{$type}{$module} = \@para if member($module, pam_modules());
}
}
@@ -528,25 +524,18 @@ sub pam_sufficient_line {
sub set_pam_authentication {
- #my (@authentication_kinds) = @_;
- my ($authentication_kinds, $ccreds) = @_;
+ my ($authentication_kinds, $o_ccreds) = @_;
my %special = (
- #auth => [ difference2(\@authentication_kinds,, [ 'mount' ]) ],
- #account => [ difference2(\@authentication_kinds, [ 'castella', 'mount' ]) ],
- #password => [ intersection(\@authentication_kinds, [ 'ldap', 'krb5' ]) ],
auth => [ difference2($authentication_kinds,, [ 'mount' ]) ],
account => [ difference2($authentication_kinds, [ 'castella', 'mount', 'ccreds' ]) ],
password => [ intersection($authentication_kinds, [ 'ldap', 'krb5', 'ccreds' ]) ],
);
my %before_first = (
- #auth => member('mount', @authentication_kinds) ? pam_format_line('auth', 'required', 'pam_mount') : '',
auth => member('mount', @$authentication_kinds) ? pam_format_line('auth', 'required', 'pam_mount') : '',
session =>
- #intersection(\@authentication_kinds, [ 'winbind', 'krb5', 'ldap' ])
intersection($authentication_kinds, [ 'winbind', 'krb5', 'ldap' ])
? pam_format_line('session', 'optional', 'pam_mkhomedir', 'skel=/etc/skel/', 'umask=0022') :
- #member('castella', @authentication_kinds)
member('castella', @$authentication_kinds)
? pam_format_line('session', 'optional', 'pam_castella') : '',
);
@@ -559,7 +548,6 @@ sub set_pam_authentication {
);
substInFile {
- #my ($type, $control, $module, @para) = split;
my ($type, $control, $other) = /(\S+)\s+(\[.*?\]|\S+)\s+(.*)/;
my ($module, @para) = split(' ', $other);
if ($module = pam_module_from_path($module)) {
@@ -583,16 +571,15 @@ sub set_pam_authentication {
(map { [ "pam_$_" ] } @$ask),
);
push @{$l[-1]}, @para_for_last;
- #$_ = join('', map { pam_format_line($type, 'sufficient', @$_) } @l);
- ### $_ = join('', map { pam_format_line($type, sufficient($ccreds, $_->[0], $type), @$_) } @l);
- $_ = join('', map { pam_sufficient_line($ccreds, $type, @$_) } @l);
+
+ $_ = join('', map { pam_sufficient_line($o_ccreds, $type, @$_) } @l);
if ($control eq 'required') {
#- ensure a pam_deny line is there. it will be added below
($module, @para) = ('pam_deny');
}
- if ($type eq 'auth' && $ccreds) {
+ if ($type eq 'auth' && $o_ccreds) {
$_ .= pam_format_line('auth', '[default=done]', 'pam_ccreds', 'action=validate use_first_pass');
$_ .= pam_format_line('auth', '[default=done]', 'pam_ccreds', 'action=store');
$_ .= pam_format_line('auth', '[default=bad]', 'pam_ccreds', 'action=update');
@@ -602,7 +589,7 @@ sub set_pam_authentication {
if (member($module, 'pam_deny', 'pam_permit')) {
$_ .= pam_format_line($type, $control,
- $type eq 'account' && $ccreds ? 'pam_permit' : 'pam_deny');
+ $type eq 'account' && $o_ccreds ? 'pam_permit' : 'pam_deny');
}
if (my $s = delete $before_first{$type}) {
$_ = $s . $_;
@@ -617,14 +604,11 @@ sub set_pam_authentication {
}
sub set_nsswitch_priority {
- #my (@kinds) = @_;
my ($kinds, $connected) = @_;
my @known = qw(nis ldap winbind compat);
substInFile {
if (my ($database, $l) = /^(\s*(?:passwd|shadow|group|automount):\s*)(.*)/) {
my @l = difference2([ split(' ', $l) ], \@known);
- # $_ = $database . join(' ', uniq('files', @kinds, @l)) . "\n";
- #}
$_ = $database . join(' ', uniq('files', @$kinds, @l)) . "\n";
}
if (/^\s*(?:passwd|group):/) {
@@ -667,7 +651,7 @@ sub read_ldap_conf() {
my %conf = map {
s/^\s*#.*//;
if_(_after_read_ldap_line($_) =~ /(\S+)\s+(.*)/, $1 => $2);
- } cat_("$::prefix/etc/ldap.conf");
+ } cat_("$::prefix/etc/nslcd.conf");
\%conf;
}
@@ -687,7 +671,7 @@ sub update_ldap_conf {
$_ .= _pre_write_ldap_line("$cmd $val\n");
}
}
- } "$::prefix/etc/ldap.conf";
+ } "$::prefix/etc/nslcd.conf";
}
sub configure_krb5_for_AD {
@@ -711,12 +695,12 @@ sub configure_krb5_for_AD {
$uc_domain = {
kdc = $authentication->{AD_server}:88
admin_server = $authentication->{AD_server}:749
- default_domain = $authentication->{DNS_domain}
+ default_domain = $authentication->{AD_domain}
}
EOF
domain_realm => <<EOF,
- .$authentication->{DNS_domain} = $uc_domain
- $authentication->{DNS_domain} = $uc_domain
+ .$authentication->{AD_domain} = $uc_domain
+ $authentication->{AD_domain} = $uc_domain
EOF
kdc => <<'EOF',
profile = /etc/kerberos/krb5kdc/kdc.conf
@@ -798,18 +782,6 @@ sub krb5_conf_update {
}
-sub sshd_config_UsePAM {
- my ($UsePAM) = @_;
- my $sshd = "$::prefix/etc/ssh/sshd_config";
- -e $sshd or return;
-
- my $val = "UsePAM " . bool2yesno($UsePAM);
- substInFile {
- $val = '' if s/^#?UsePAM.*/$val/;
- $_ .= "$val\n" if eof && $val;
- } $sshd;
-}
-
sub query_srv_names {
my ($domain) = @_;
@@ -827,7 +799,7 @@ sub enable_shadow() {
sub salt {
my ($nb) = @_;
require devices;
- open(my $F, devices::make("urandom")) or die "missing urandom";
+ open(my $F, "/dev/urandom") or die "missing urandom";
my $s; read $F, $s, $nb;
$s = pack("b8" x $nb, unpack "b6" x $nb, $s);
$s =~ tr|\0-\x3f|0-9a-zA-Z./|;
@@ -840,9 +812,23 @@ sub user_crypted_passwd {
require utf8;
utf8::encode($u->{password}); #- we don't want perl to do "smart" things in crypt()
- crypt($u->{password},
- !$authentication || $authentication->{blowfish} ? '$2a$08$' . salt(60) :
- $authentication->{md5} ? '$1$' . salt(8) : salt(2));
+ # Default to sha512
+ $authentication = { sha512 => 1 } unless $authentication;
+
+ my $salt;
+ if ($authentication->{blowfish}) {
+ $salt = '$2a$08$' . salt(60);
+ } elsif ($authentication->{md5}) {
+ $salt = '$1$' . salt(8);
+ } elsif ($authentication->{sha256}) {
+ $salt = '$5$' . salt(32);
+ } elsif ($authentication->{sha512}) {
+ $salt = '$6$' . salt(64);
+ } else {
+ $salt = salt(2);
+ }
+
+ crypt($u->{password}, $salt);
} else {
$u->{pw} || '';
}
@@ -886,15 +872,14 @@ sub pack_passwd {
}
sub add_cafile() {
- my $file;
my $in = interactive->vnew;
- $file = $in->ask_filename({ title => N("Select file") }) or return;
+ $in->ask_filename({ title => N("Select file") }) or return;
}
sub auth() {
my $in = interactive->vnew;
$in->ask_from('', N(" "), [
- { label => N("Domain Windows for authentication : " , $authentication->{WINDOMAIN}) },
+ { label => N("Domain Windows for authentication : ") . $authentication->{WINDOMAIN} },
{},
{ label => N("Domain Admin User Name"), val => \$authentication->{winuser} },
{ label => N("Domain Admin Password"), val => \$authentication->{winpass}, hidden => 1 },
@@ -913,7 +898,6 @@ sub list_domains() {
}
sub get_server_for_domain {
my $smb = fs::remote::smb->new;
- my %domains;
foreach my $server ($smb->find_servers) {
return $server->{name} if $server->{group} == $_[0];
}
@@ -928,28 +912,26 @@ sub fetch_dn {
sub configure_nss_ldap {
my ($authentication) = @_;
- #my $authentication->{domain} = $authentication->{LDAPDOMAIN} || do {
- # my $s = run_program::rooted_get_stdout($::prefix, 'ldapsearch', '-x', '-h', $authentication->{LDAP_server}, '-b', '', '-s', 'base', '+');
- # first($s =~ /namingContexts: (.+)/);
- #} or log::l("no ldap domain found on server $authentication->{LDAP_server}"), return;
update_ldap_conf(
- host => $authentication->{LDAP_server},
+ uri => $authentication->{cafile} eq '1' ? "ldaps://" . $authentication->{LDAP_server} . "/" : "ldap://" . $authentication->{LDAP_server} . "/",
base => $authentication->{LDAPDOMAIN},
);
if ($authentication->{nssgrp} eq '1') {
update_ldap_conf(
- nss_base_shadow => $authentication->{nss_shadow} . "?sub",
- nss_base_passwd => $authentication->{nss_pwd} . "?sub",
- nss_base_group => $authentication->{nss_grp} . "?sub",
+ 'base shadow' => $authentication->{nss_shadow},
+ 'base passwd' => $authentication->{nss_pwd},
+ 'base group' => $authentication->{nss_grp},
+ scope => "sub",
);
} else {
update_ldap_conf(
- nss_base_shadow => $authentication->{LDAPDOMAIN} . "?sub",
- nss_base_passwd => $authentication->{LDAPDOMAIN} . "?sub",
- nss_base_group => $authentication->{LDAPDOMAIN} . "?sub",
+ 'base shadow' => $authentication->{LDAPDOMAIN},
+ 'base passwd' => $authentication->{LDAPDOMAIN},
+ 'base group' => $authentication->{LDAPDOMAIN},
+ scope => "sub",
);
}
if ($authentication->{anonymous} eq '1') {
@@ -962,7 +944,7 @@ sub configure_nss_ldap {
if ($authentication->{cafile} eq '1') {
update_ldap_conf(
ssl => "on",
- tls_checkpeer => "yes",
+ tls_reqcert => "allow",
tls_cacertfile => $authentication->{file},
);
}
diff --git a/perl-install/bootloader.pm b/perl-install/bootloader.pm
index 79bfb545a..d1d757c3d 100644
--- a/perl-install/bootloader.pm
+++ b/perl-install/bootloader.pm
@@ -1,4 +1,4 @@
-package bootloader; # $Id$
+package bootloader;
use diagnostics;
use strict;
@@ -19,11 +19,73 @@ use partition_table::raw;
use run_program;
use modules;
-#-#####################################################################################
-#- Functions
-#-#####################################################################################
-my $vmlinuz_regexp = 'vmlinuz|win4lin';
+=head1 SYNOPSYS
+
+B<bootloader> enables to configure various boot loaders (LILO, GRUB Legacy, GRUB2, ...)
+
+Example of usage:
+
+ $all_hds = fsedit::get_hds();
+ fs::get_raw_hds('', $all_hds);
+ fs::get_info_from_fstab($all_hds);
+ $fstab = [ fs::get::fstab($all_hds) ];
+ $bootloader = bootloader::read($all_hds);
+ (...)
+ bootloader::action($bootloader, 'write', $all_hds);
+
+A particular bootloader is handled in separate typical functions that can be called by action() by /sbin/bootloader-config:
+
+
+=head1 VFS aka how to support a bootloader
+
+Most of the code is generic.
+
+A particular bootloader implementation/support is done through a couple functions:
+
+=over 4
+
+=item * read_FOOBAR()
+
+read the config file(s) of the FOOBAR bootloader, returning a $bootloader object
+
+=item * install_FOOBAR($bootloader, $all_hds)
+
+usually call write_FOOBAR() & install_raw_FOOBAR() if existing, aka:
+
+=over 4
+
+=item * updating config files
+
+=item * then reinstalling the bootloader
+
+=back
+
+=item * install_raw_FOOBAR()
+
+Optionnal: Low level installation of the stage1 of the bootloader, usually embedding it in MBR or on ESP, ... (eg: running lilo or /boot/grub*/install.sh)
+
+=item * write_FOOBAR($bootloader, $all_hds)
+
+update the config files, ie when a kernel was installed or removed.
+when_config_changed_FOOBAR() is called right after in case something is needed when config is done (eg: lilo needs to be reinstalled)
+
+=item * when_config_changed_FOOBAR()
+
+Run needed action when config has changed or when initrds were regenerated, ...
+Usually nothing for intelligent bootloaders such as grub-legacy or grub2.
+But eg: lilo needs to rewrite its stage1 (thus it needs to rerun lilo).
+
+=back
+
+=head1 Functions
+
+=over
+
+=cut
+
+my $vmlinuz_regexp = 'vmlinu[xz]|win4lin|uImage';
my $decompose_vmlinuz_name = qr/((?:$vmlinuz_regexp).*?)-(\d+\.\d+.*)/;
+my $liblinux_path = '/usr/lib/linux';
sub expand_vmlinuz_symlink {
my ($vmlinuz) = @_;
@@ -43,21 +105,21 @@ sub vmlinuz2kernel_str {
{
basename => $basename,
version => $version,
- $version =~ /(.*)-(\D.*)-(\d+(mdk|mdv|mnb))$/ ? #- eg: 2.6.22.5-server-1mdv
+ $version =~ /([\d.]*)-(\D.*)-((\d+|0\.rc\d+.*)\.mga.*)$/ ? #- eg: 3.0.0-1.mga2
(ext => $2, version_no_ext => "$1-$3") :
- $version =~ /(.*md[kv])-?(.*)/ ? #- (old) eg: 2.6.17-13mdventerprise
+ $version =~ /(.*mga)-?(.*)/ ? #- (old) eg: 2.6.17-13mdventerprise
(ext => $2, version_no_ext => $1) : (version_no_ext => $version),
};
}
sub kernel_str2short_name {
my ($kernel) = @_;
- $kernel->{ext} =~ /^xen/ ? 'xen' : $kernel->{basename};
+ $kernel->{basename};
}
sub basename2initrd_basename {
my ($basename) = @_;
- $basename =~ s!vmlinuz-?!!; #- here we do not use $vmlinuz_regexp since we explictly want to keep all that is not "vmlinuz"
+ $basename =~ s!(vmlinu[zx]|uImage)-?!!; #- here we do not use $vmlinuz_regexp since we explicitly want to keep all that is not "vmlinuz"
'initrd' . ($basename ? "-$basename" : '');
}
sub kernel_str2vmlinuz_long {
@@ -68,6 +130,10 @@ sub kernel_str2initrd_long {
my ($kernel) = @_;
basename2initrd_basename(kernel_str2short_name($kernel)) . '-' . $kernel->{version} . '.img';
}
+sub kernel_str2liblinux_long {
+ my ($kernel) = @_;
+ $liblinux_path . '-' . $kernel->{version};
+}
sub kernel_str2vmlinuz_short {
my ($kernel) = @_;
if ($kernel->{use_long_name}) {
@@ -84,6 +150,9 @@ sub kernel_str2initrd_short {
basename2initrd_basename(kernel_str2short_name($kernel)) . '.img';
}
}
+sub kernel_str2liblinux_short() {
+ $liblinux_path;
+}
sub kernel_str2label {
my ($kernel, $o_use_long_name) = @_;
@@ -91,7 +160,7 @@ sub kernel_str2label {
_sanitize_ver($kernel);
} else {
my $short_name = kernel_str2short_name($kernel);
- $short_name eq 'vmlinuz' ? 'linux' : $short_name;
+ $kernel->{ext} =~ /^xen/ ? 'xen' : ($short_name eq 'vmlinuz' ? 'linux' : $short_name);
}
}
@@ -106,22 +175,44 @@ sub get_label {
undef;
}
+=item mkinitrd($kernel_version, $bootloader, $entry, $initrd)
+
+Regenerates kernel's initrd.
+
+=cut
+
sub mkinitrd {
my ($kernel_version, $bootloader, $entry, $initrd) = @_;
- $::testing || -e "$::prefix/$initrd" and return $initrd;
+ my $dir = dirname($initrd);
+ if ($::testing) {
+ log::l("Skipping initrd generation: testing mode");
+ return $initrd;
+ } elsif (-e "$::prefix/$initrd") {
+ log::l("Skipping initrd generation: already exists");
+ return $initrd;
+ } elsif ($initrd =~ /\(hd/) {
+ log::l("Skipping initrd generation: unrecognized partition");
+ return $initrd;
+ } elsif (!-d "$::prefix/$dir") {
+ log::l("Skipping initrd generation: dir doesn't exist (probably !mounted foreign part)");
+ return $initrd;
+ }
# for /boot on dos partitions when installing on loopback file on dos partition
my $loop_boot = fs::loopback::prepare_boot();
modules::load('loop');
my @options = (
- if_($::isInstall, "-v"), "-f", $initrd, "--ifneeded", $kernel_version,
+ if_($::isInstall, "-v"), "-f", $initrd, $kernel_version,
if_($entry->{initrd_options}, split(' ', $entry->{initrd_options})),
);
- if (!run_program::rooted($::prefix, 'mkinitrd', @options)) {
+
+ my $err;
+ if (!run_program::rooted($::prefix, 'mkinitrd', '2>', \$err, @options)) {
unlink("$::prefix/$initrd");
- die "mkinitrd failed:\n(mkinitrd @options)";
+ log::explanations("mkinitrd failed:\n(mkinitrd @options)\nError: <$err>");
+ die "mkinitrd failed:\n(mkinitrd @options)\nError: $err";
}
add_boot_splash($initrd, $entry->{vga} || $bootloader->{vga});
@@ -130,6 +221,13 @@ sub mkinitrd {
-e "$::prefix/$initrd" && $initrd;
}
+=item rebuild_initrd($kernel_version, $bootloader, $entry, $initrd)
+
+Saves the old initrd then regenerate it.
+If it fails, restore the old initrd.
+
+=cut
+
sub rebuild_initrd {
my ($kernel_version, $bootloader, $entry, $initrd) = @_;
@@ -161,11 +259,25 @@ sub add_boot_splash {
sub update_splash {
my ($bootloader) = @_;
+ my %real_initrd_entries;
foreach (@{$bootloader->{entries}}) {
- add_boot_splash($_->{initrd}, $_->{vga} || $bootloader->{vga}) if $_->{initrd};
+ if ($_->{initrd} && $_->{vga}) {
+ my $initrd = expand_symlinks($_->{initrd});
+ $real_initrd_entries{$initrd} = $_;
+ }
+ }
+ foreach (values %real_initrd_entries) {
+ log::l("add boot splash to $_->{initrd}\n");
+ add_boot_splash($_->{initrd}, $_->{vga} || $bootloader->{vga});
}
}
+=item read($all_hds)
+
+Reads bootloader config by calling the proper read_XYZ function.
+
+=cut
+
sub read {
my ($all_hds) = @_;
my $fstab = [ fs::get::fstab($all_hds) ];
@@ -173,7 +285,7 @@ sub read {
my $f = $bootloader::{"read_$main_method"} or die "unknown bootloader method $main_method (read)";
my $bootloader = $f->($fstab);
- cleanup_entries($bootloader);
+ cleanup_entries($bootloader) if $main_method ne 'refind';
# handle raid-extra-boot (lilo)
my @devs = $bootloader->{boot};
@@ -184,11 +296,21 @@ sub read {
@devs = split(',', $bootloader->{'raid-extra-boot'});
}
+ #- if $bootloader->{boot} is undefined, @devs contains a single undef element
my ($type) = map {
- if (m!/fd\d+$!) {
+ if (is_uefi()) {
+ if (-e "$::prefix/boot/refind_linux.conf") {
+ 'refind';
+ } elsif (-f "$::prefix/boot/EFI/EFI/mageia/grub" . uefi_type() . ".efi" ||
+ $main_method eq 'grub2' && $bootloader->{removable} && -f "$::prefix/boot/EFI/EFI/BOOT/BOOT" . uc(uefi_type()) . ".EFI") {
+ 'grub2';
+ } else {
+ ()
+ }
+ } elsif (m!/fd\d+$!) {
warn "not checking the method on floppy, assuming $main_method is right\n";
$main_method;
- } elsif (member($main_method, qw(yaboot cromwell silo))) {
+ } elsif (member($main_method, qw(cromwell uboot))) {
#- not checking, there's only one bootloader anyway :)
$main_method;
} elsif (my $type = partition_table::raw::typeOfMBR($_)) {
@@ -198,20 +320,114 @@ sub read {
} @devs;
if ($type eq $main_method) {
+ return $bootloader if read_($bootloader);
+ }
+ }
+}
+
+sub read_ {
+ my ($bootloader) = @_;
my @prefered_entries = map { get_label($_, $bootloader) } $bootloader->{default}, 'linux';
if (my $default = find { $_ && $_->{type} eq 'image' } (@prefered_entries, @{$bootloader->{entries}})) {
$bootloader->{default_options} = $default;
$bootloader->{perImageAppend} ||= $default->{append};
log::l("perImageAppend is now $bootloader->{perImageAppend}");
+ $bootloader->{default_vga} ||= $default->{vga};
+ log::l("default_vga is now $bootloader->{default_vga}");
} else {
$bootloader->{default_options} = {};
}
return $bootloader;
+}
+
+
+=item is_grub2_already_crypted($password)
+
+Returns whether grub2 password is already encrypted or not
+
+=cut
+
+sub is_grub2_already_crypted {
+ my ($password) = @_;
+ $password =~ /grub.pbkdf2.sha512/;
+}
+
+=item read_grub2 ($o_fstab)
+
+Read back GRUB2 config
+
+=cut
+
+sub read_grub2() {
+ my %bootloader = read_grub2_install_sh() if -e get_grub2_install_sh();
+ return if is_empty_hash_ref(\%bootloader) & !-s "$::prefix/boot/grub2/grub.cfg";
+ my %h = getVarsFromSh("$::prefix/etc/default/grub");
+ $bootloader{timeout} = $h{GRUB_TIMEOUT};
+ # keep suggested perImageAppend and default_vga on first run (during installer) or when migrating from grub-legacy or lilo:
+ my ($vga, $other) = partition { /^vga=/ } split(' ', $h{GRUB_CMDLINE_LINUX_DEFAULT});
+ $bootloader{perImageAppend} ||= join(' ', @$other) if @$other;
+ $bootloader{default_vga} ||= $vga->[0] =~ /vga=(.*)/ && $1 if @$vga;
+ $bootloader{entries} = [];
+ my $entry;
+ my $f = "$::prefix/boot/grub2/grub.cfg";
+ my @menus;
+ foreach (cat_utf8($f)) {
+ next if /^#/;
+ if (/menuentry\s+['"]([^']+)["']/) {
+ $entry = { label => $1, real_label => join('>', @menus, $1) };
+ } elsif (/linux(?:16)?\s+([^-]\S+)\s+(.*)?/ || /module\s+(\S+vmlinu\S+)\s+(.*)?/) {
+ $entry->{type} = 'image';
+ @$entry{qw(kernel_or_dev append)} = ($1, $2);
+ my ($vga, $other) = partition { /^vga=/ } split(' ', $entry->{append});
+ if (@$vga) {
+ $entry->{vga} = $vga->[0] =~ /vga=(.*)/ && $1;
+ $entry->{append} = join(' ', @$other);
+ }
+ } elsif (/initrd(?:16)?\s+(\S+)/ || /module\s+(\S+initrd\S+)\s+(.*)?/) {
+ $entry->{initrd} = $1;
+ } elsif (/submenu\s+['"]([^']+)["']/) {
+ push @menus, $1;
+ } elsif (/^\s*}/) {
+ if ($entry) {
+ push @{$bootloader{entries}}, $entry;
+ undef $entry;
+ } else {
+ pop @menus;
+ }
}
}
+
+ # get default entry:
+ foreach (run_program::rooted_get_stdout($::prefix, qw(grub2-editenv list))) {
+ $bootloader{default} = $1 if /saved_entry=(.*)/;
+ $bootloader{default} =~ s/.*>//; # strip full menu entry path
+ }
+
+ # Get password prior to run update-grub2:
+ $bootloader{password} = { getVarsFromSh(get_grub2_users()) }->{GRUB2_PASSWORD};
+
+ $bootloader{method} = cat_($f) =~ /set theme=.*maggy/ ? 'grub2-graphic' : 'grub2';
+ \%bootloader;
}
+sub read_grub2_install_sh() {
+ my $s = cat_(get_grub2_install_sh());
+ my %h;
+ if ($s =~ m!(/dev/\S+)!m) {
+ $h{boot} = $1;
+ }
+ $h{no_esp_or_mbr} = $s =~ m!--grub-setup=/bin/true!;
+ $h{removable} = $s =~ m!--removable!;
+ %h;
+}
+
+=item read_grub($fstab)
+
+Reads back Grub Legacy config.
+
+=cut
+
sub read_grub {
my ($fstab) = @_;
@@ -228,10 +444,22 @@ sub read_grub {
$bootloader;
}
-# adapts device.map (aka $grub2dev) when for example hda is now sda
-# nb:
-# - $boot_part comes from /boot/grub/install.sh "root (hd...)" line
-# - $grub2dev is /boot/grub/device.map
+
+=item _may_fix_grub2dev($fstab, $grub2dev, $boot_part)
+
+Adapts device.map (aka $grub2dev) when for example hda is now sda.
+nb:
+
+=over 4
+
+=item * $boot_part comes from C</boot/grub/install.sh> C<root (hd...)> line
+
+=item * $grub2dev is C</boot/grub/device.map>
+
+=back
+
+=cut
+
sub _may_fix_grub2dev {
my ($fstab, $grub2dev, $boot_part) = @_;
@@ -258,6 +486,12 @@ sub _may_fix_grub2dev {
$grub2dev->{$hd_grub} = $real_boot_dev;
}
+=item read_grub_install_sh() {
+
+Reads "config" from /boot/grub/install.sh (mainly used partitions)
+
+=cut
+
sub read_grub_install_sh() {
my $s = cat_("$::prefix/boot/grub/install.sh");
my %h;
@@ -323,6 +557,24 @@ sub _parse_grub_menu_lst() {
%b;
}
+
+=item is_already_crypted($password)
+
+Returns whether grub password is already encrypted or not
+
+=cut
+
+sub is_already_crypted {
+ my ($password) = @_;
+ $password =~ /^--md5 (.*)/;
+}
+
+=item read_grub_menu_lst($fstab, $grub2dev)
+
+Read config from /boot/grub/menu.lst
+
+=cut
+
sub read_grub_menu_lst {
my ($fstab, $grub2dev) = @_;
@@ -339,7 +591,7 @@ sub read_grub_menu_lst {
$e->{keep_verbatim} = 1 unless $e->{kernel_or_dev};
} elsif ($e->{initrd}) {
my $initrd;
- eval { $initrd = grub2file($e->{initrd}, $grub2dev, $fstab, $e)};
+ eval { $initrd = grub2file($e->{initrd}, $grub2dev, $fstab, $e) };
if ($initrd) {
$e->{initrd} = $initrd;
} else {
@@ -358,7 +610,7 @@ sub read_grub_menu_lst {
$e->{append} = join(' ', grep { !/^BOOT_IMAGE=/ } split(' ', $e->{append}));
$e->{root} = $1 if $e->{append} =~ s/root=(\S*)\s*//;
eval { $e->{kernel_or_dev} = grub2file($kernel, $grub2dev, $fstab, $e) };
- $e->{keep_verbatim} = 1 unless $e->{kernel_or_dev} && dirname($e->{kernel_or_dev}) eq '/boot';
+ $e->{keep_verbatim} = 1 if !$e->{kernel_or_dev} || dirname($e->{kernel_or_dev}) ne '/boot';
}
my ($vga, $other) = partition { /^vga=/ } split(' ', $e->{append});
if (@$vga) {
@@ -378,42 +630,122 @@ sub read_grub_menu_lst {
\%b;
}
-sub yaboot2dev {
- my ($of_path) = @_;
- find { dev2yaboot($_) eq $of_path } map { "/dev/$_->{dev}" } fs::proc_partitions::read_raw();
+sub _parse_extlinux_conf() {
+ my $global = 1;
+ my ($e, %b);
+
+ my $f = "$::prefix/boot/extlinux/extlinux.conf";
+ -e $f or return;
+
+ foreach (cat_utf8($f)) {
+ chomp;
+ s/^\s*//; s/\s*$//;
+ next if /^#/ || /^$/;
+ my ($keyword, $v) = split('[ \t=]+', $_, 2) or
+ warn qq(unknown line in $f: "$_"\n), next;
+
+ $keyword = lc($keyword);
+
+ if ($keyword eq 'label') {
+ push @{$b{entries}}, $e = { label => $v };
+ $global = 0;
+ } elsif ($global) {
+ $b{$keyword} = $v;
+ } else {
+ if ($keyword eq 'kernel') {
+ $e->{type} = 'image';
+ $e->{kernel_or_dev} = $v;
+ } else {
+ $e->{$keyword} = $v;
+ }
+ }
+ }
+
+ %b;
+}
+
+sub read_uboot() {
+ my %b = _parse_extlinux_conf();
+
+ $b{method} = 'uboot';
+ $b{timeout} //= 30;
+
+ my $is_raspberry = cat_("/proc/device-tree/model") =~ /^Raspberry Pi/;
+ if ($is_raspberry) {
+ $b{perImageAppend} //= "8250.nr_uarts=1 console=ttyS0,115200 console=tty1 elevator=deadline cma=256M\@512M";
+ }
+
+ $b{perImageAppend} //= $b{entries}[0]{append};
+
+ \%b;
+}
+
+=item read_refind ($fstab)
+
+Read back rEFInd config + C</boot/refind_linux.conf>
+
+=cut
+
+sub read_refind() {
+ my %bootloader = (entries => []);
+ foreach (cat_utf8("$::prefix/boot/refind_linux.conf")) {
+ next if /^#/;
+ my ($label, $append) = /"(.*)"\s*"(.*)"/;
+ my $root = $1 if $append =~ s/root=(\S*)\s*//;
+ my $vga = $1 if $append =~ s/vga=(\S*)\s*//;
+ if ($label && $root) {
+ push @{$bootloader{entries}}, {
+ type => 'image',
+ kernel_or_dev => '/boot/vmlinuz',
+ label => $label,
+ root => $root,
+ append => $append,
+ vga => $vga
+ };
+ }
+ }
+ $bootloader{method} = 'refind';
+ read_refind_config(\%bootloader);
+ \%bootloader;
}
-# assumes file is in /boot
-# to do: use yaboot2dev for files as well
-#- example of of_path: /pci@f4000000/ata-6@d/disk@0:3,/initrd-2.6.8.1-8mdk.img
-sub yaboot2file {
- my ($of_path) = @_;
-
- if ($of_path =~ /,/) {
- "$::prefix/boot/" . basename($of_path);
+sub read_refind_config {
+ my ($bootloader) = @_;
+
+ #- These are the rEFInd default values.
+ $bootloader->{use_nvram} = 1;
+ $bootloader->{banner_path} = '';
+ $bootloader->{banner_scale} = 'noscale';
+
+ if (-r "$::prefix/boot/EFI/EFI/refind/refind.conf") {
+ read_refind_conf($bootloader, "$::prefix/boot/EFI/EFI/refind/refind.conf");
+ } elsif (-r "$::prefix/boot/EFI/EFI/BOOT/refind.conf") {
+ read_refind_conf($bootloader, "$::prefix/boot/EFI/EFI/BOOT/refind.conf");
} else {
- yaboot2dev($of_path);
+ #- This is the preferred value if rEFInd is not yet installed,
+ $bootloader->{banner_path} = 'refind_banner.png';
}
}
-sub read_silo() {
- my $bootloader = read_lilo_like("/boot/silo.conf", sub {
- my ($f) = @_;
- "/boot$f";
- });
- $bootloader->{method} = 'silo';
- $bootloader;
+sub read_refind_conf {
+ my ($bootloader, $config_file) = @_;
+ foreach (cat_utf8($config_file)) {
+ if ($_ =~ /^\s*use_nvram\s+(false|off|0)/) {
+ $bootloader->{use_nvram} = 0;
+ } elsif ($_ =~ /^\s*banner\s+(\S*)/) {
+ $bootloader->{banner_path} = $1;
+ } elsif ($_ =~ /^\s*banner_scale\s+(\S*)/) {
+ $bootloader->{banner_scale} = $1;
+ }
+ }
}
+
+# FIXME: actually read back previous conf
sub read_cromwell() {
- my %b;
- $b{method} = 'cromwell';
- \%b;
-}
-sub read_yaboot() {
- my $bootloader = read_lilo_like("/etc/yaboot.conf", \&yaboot2file);
- $bootloader->{method} = 'yaboot';
- $bootloader;
+ +{ method => 'cromwell' };
}
+
+
sub read_lilo() {
my $bootloader = read_lilo_like("/etc/lilo.conf", sub { $_[0] });
@@ -518,7 +850,7 @@ sub suggest_onmbr {
if (my $type = partition_table::raw::typeOfMBR($hd->{device})) {
if (member($type, qw(dos dummy empty))) {
$unsafe = 0;
- } elsif (!member($type, qw(lilo grub))) {
+ } elsif (!member($type, qw(lilo grub grub2))) {
$onmbr = 0;
}
log::l("bootloader::suggest_onmbr: type $type, onmbr $onmbr, unsafe $unsafe");
@@ -526,16 +858,41 @@ sub suggest_onmbr {
($onmbr, $unsafe);
}
-# list of places where we can install the bootloader
+
+=item allowed_boot_disks($bootloader, $all_hds)
+
+Returns list of disks where we can install the bootloader when not in UEFI mode
+(accounting for misssing BIOS boot partitions on GPT disks)
+in UEFI mode, grub2 automatically look for the ESP).
+
+=cut
+
+sub allowed_boot_disks {
+ my ($all_hds) = @_;
+ # GPT disks w/o a BIOS boot partition do not have free space for grub2 to embed:
+ grep { $_->{pt_table_type} ne 'gpt' ||
+ any { isBIOS_GRUB($_) } map { partition_table::get_normal_parts($_) } $_;
+ } @{$all_hds->{hds}};
+}
+
+=item allowed_boot_parts($bootloader, $all_hds)
+
+Returns list of places where we can install the bootloader when not in UEFI mode
+(in UEFI mode, grub2 automatically look for the ESP).
+
+=cut
+
sub allowed_boot_parts {
my ($bootloader, $all_hds) = @_;
(
- @{$all_hds->{hds}}, # MBR
+ allowed_boot_disks($all_hds), # MBR
if_($bootloader->{method} =~ /lilo/,
grep { $_->{level} eq '1' } @{$all_hds->{raids}}
),
- (grep { !isFat_or_NTFS($_) } fs::get::fstab($all_hds)), # filesystems except those who do not leave space for our bootloaders
+ (if_(main_method($bootloader->{method}) ne 'grub2',
+ grep { !isFat_or_NTFS($_) } fs::get::fstab($all_hds)), # filesystems except those who do not leave space for our bootloaders
+ ),
detect_devices::floppies(),
);
}
@@ -567,7 +924,7 @@ sub add_entry {
my $to_add = $v;
my $label = $v->{label};
- for (my $i = 0; $i < 10;) {
+ for (my $i = 0; $i < 100;) {
my $conflicting = get_label($label, $bootloader);
$to_add->{label} = $label;
@@ -638,18 +995,6 @@ sub _do_the_symlink {
or cp_af("$::prefix/boot/$long_name", "$::prefix$link");
}
-sub cmp_kernel_versions {
- my ($va, $vb) = @_;
- my $rel_a = $va =~ s/-(.*)$// && $1;
- my $rel_b = $vb =~ s/-(.*)$// && $1;
- ($va, $vb) = map { [ split /[.-]/ ] } $va, $vb;
- my $r = 0;
- mapn_ {
- $r ||= $_[0] <=> $_[1];
- } $va, $vb;
- $r || $rel_a <=> $rel_b || $rel_a cmp $rel_b;
-}
-
# for lilo & xen
sub get_mbootpack_filename {
my ($entry) = @_;
@@ -710,18 +1055,14 @@ sub add_kernel {
#- perImageAppend contains resume=/dev/xxx which we don't want
@$dict = grep { $_->[0] ne 'resume' } @$dict;
}
- if (-e "$::prefix/sbin/udev" && cmp_kernel_versions($kernel_str->{version_no_ext}, '2.6.8') >= 0) {
- log::l("it is a recent kernel, so we remove any existing devfs= kernel option to enable udev");
- @$dict = grep { $_->[0] ne 'devfs' } @$dict;
- }
$v->{append} = pack_append($simple, $dict);
}
- #- new versions of yaboot do not handle symlinks
- $b_nolink ||= arch() =~ /ppc/;
-
$b_nolink ||= $kernel_str->{use_long_name};
+ #- do not link /boot/vmlinuz to xen
+ $b_nolink ||= $v->{xen};
+
my $vmlinuz_long = kernel_str2vmlinuz_long($kernel_str);
my $initrd_long = kernel_str2initrd_long($kernel_str);
$v->{kernel_or_dev} = "/boot/$vmlinuz_long";
@@ -732,19 +1073,35 @@ sub add_kernel {
$v->{initrd} = mkinitrd($kernel_str->{version}, $bootloader, $v, "/boot/$initrd_long");
}
+ my $liblinux_long = kernel_str2liblinux_long($kernel_str);
+ if (-d "$::prefix$liblinux_long") {
+ $v->{liblinux} = $v->{fdtdir} = $liblinux_long;
+ }
+
if (!$b_nolink) {
$v->{kernel_or_dev} = '/boot/' . kernel_str2vmlinuz_short($kernel_str);
- _do_the_symlink($bootloader, $v->{kernel_or_dev}, $vmlinuz_long);
+ _do_the_symlink($bootloader, $v->{kernel_or_dev}, $vmlinuz_long);
if ($v->{initrd}) {
$v->{initrd} = '/boot/' . kernel_str2initrd_short($kernel_str);
- _do_the_symlink($bootloader, $v->{initrd}, $initrd_long);
+ _do_the_symlink($bootloader, $v->{initrd}, $initrd_long);
+ }
+
+ if ($v->{liblinux}) {
+ $v->{liblinux} = kernel_str2liblinux_short();
+ _do_the_symlink($bootloader, $v->{liblinux}, basename($liblinux_long));
}
}
add_entry($bootloader, $v);
}
+=item rebuild_initrds($bootloader)
+
+Rebuilds all initrds
+
+=cut
+
sub rebuild_initrds {
my ($bootloader) = @_;
@@ -860,7 +1217,12 @@ sub set_append_netprofile {
$e->{append} = pack_append($simple, $dict);
}
-# used when a bootloader $entry has been modified (eg: $entry->{vga})
+=item configure_entry($bootloader, $entry)
+
+Used when a bootloader $entry has been modified (eg: $entry->{vga})
+
+=cut
+
sub configure_entry {
my ($bootloader, $entry) = @_;
$entry->{type} eq 'image' or return;
@@ -878,26 +1240,18 @@ sub get_kernels_and_labels_before_kernel_remove {
map { kernel_str2label($_) => $_ } get_kernel_labels(\@kernels);
}
-sub get_kernels_and_labels {
- my ($b_prefer_24) = @_;
- get_kernel_labels([ installed_vmlinuz() ], $b_prefer_24);
+sub get_kernels_and_labels() {
+ get_kernel_labels([ installed_vmlinuz() ]);
}
sub get_kernel_labels {
- my ($kernels, $b_prefer_24) = @_;
+ my ($kernels) = @_;
my @kernels_str =
- sort { cmp_kernel_versions($b->{version_no_ext}, $a->{version_no_ext}) }
+ sort { common::cmp_kernel_versions($b->{version_no_ext}, $a->{version_no_ext}) }
grep { -d "$::prefix/lib/modules/$_->{version}" }
map { vmlinuz2kernel_str($_) } @$kernels;
- if ($b_prefer_24) {
- my ($kernel_24, $other) = partition { $_->{ext} eq '' && $_->{version} =~ /^\Q2.4/ } @kernels_str;
- @kernels_str = (@$kernel_24, @$other);
- }
-
- $kernels_str[0]{ext} = '';
-
my %labels;
foreach (@kernels_str) {
if ($labels{$_->{ext}}) {
@@ -906,6 +1260,9 @@ sub get_kernel_labels {
$labels{$_->{ext}} = 1;
}
}
+
+ $kernels_str[0]{ext} = '';
+
@kernels_str;
}
@@ -913,20 +1270,12 @@ sub short_ext {
my ($kernel_str) = @_;
my $short_ext = {
- 'i586-up-1GB' => 'i586',
- 'i686-up-4GB' => '4GB',
'xen0' => 'xen',
}->{$kernel_str->{ext}};
$short_ext || $kernel_str->{ext};
}
-# deprecated, only for compatibility (nov 2007)
-sub sanitize_ver {
- my ($_name, $kernel_str) = @_;
- _sanitize_ver($kernel_str);
-}
-
sub _sanitize_ver {
my ($kernel_str) = @_;
@@ -934,27 +1283,25 @@ sub _sanitize_ver {
$name = '' if $name eq 'vmlinuz';
my $v = $kernel_str->{version_no_ext};
- if ($v =~ s/-\d+\.mm\././) {
- $name = join(' ', grep { $_ } $name, 'multimedia');
- }
- $v =~ s!md[kv]$!!;
+ $v =~ s!(md[kv]|mnb)$!!;
$v =~ s!-0\.(pre|rc)(\d+)\.!$1$2-!;
my $return = join(' ', grep { $_ } $name, short_ext($kernel_str), $v);
- length($return) < 30 or $return =~ s!secure!sec!;
- length($return) < 30 or $return =~ s!enterprise!ent!;
- length($return) < 30 or $return =~ s!multimedia!mm!;
-
$return;
}
-# for lilo
+=item suggest_message_text($bootloader)
+
+Provides a description text for Lilo
+
+=cut
+
sub suggest_message_text {
my ($bootloader) = @_;
- if (!$bootloader->{message} && !$bootloader->{message_text} && arch() !~ /ia64/) {
+ if (!$bootloader->{message} && !$bootloader->{message_text}) {
my $msg_en =
#-PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
N_("Welcome to the operating system chooser!
@@ -964,7 +1311,7 @@ wait for default boot.
");
my $msg = translate($msg_en);
- #- use the english version if more than 40% of 8bits chars
+ #- use the English version if more than 40% of 8bits chars
#- else, use the translation but force a conversion to ascii
#- to be sure there won't be undisplayable characters
if (int(grep { $_ & 0x80 } unpack "c*", $msg) / length($msg) > 0.4) {
@@ -982,45 +1329,28 @@ sub suggest {
my $root_part = fs::get::root($fstab);
my $root = isLoopback($root_part) ? '/dev/loop7' : fs::wild_device::from_part('', $root_part);
my $boot = fs::get::root($fstab, 'boot')->{device};
- #- PPC xfs module requires enlarged initrd
- my $xfsroot = $root_part->{fs_type} eq 'xfs';
my $mbr;
- # If installing onto an USB drive, put the mbr there, else on the first non removable drive
+ # If installing onto an USB drive, put the MBR there, else on the first non removable drive
if ($root_part->{is_removable}) {
$mbr = fs::get::part2hd($root_part, $all_hds);
} else {
- $mbr = find { !$_->{is_removable} } @{$all_hds->{hds}};
+ $mbr = find { !$_->{is_removable} } allowed_boot_disks($all_hds);
}
my ($onmbr, $unsafe) = $bootloader->{crushMbr} ? (1, 0) : suggest_onmbr($mbr);
- add2hash_($bootloader, arch() =~ /ppc/ ?
- {
- defaultos => "linux",
- entries => [],
- 'init-message' => "Welcome to Mandriva Linux!",
- delay => 30, #- OpenFirmware delay
- timeout => 50,
- enableofboot => 1,
- enablecdboot => 1,
- if_(detect_devices::get_mac_model() =~ /IBM/,
- boot => "/dev/sda1",
- ),
- xfsroot => $xfsroot,
- } :
+ add2hash_($bootloader,
{
bootUnsafe => $unsafe,
entries => [],
timeout => $onmbr && 10,
nowarn => 1,
- if_(arch() !~ /ia64/,
boot => "/dev/" . ($onmbr ? $mbr->{device} : $boot),
map => "/boot/map",
compact => 1,
'large-memory' => 1,
color => 'black/cyan yellow/cyan',
'menu-scheme' => 'wb:bw:wb:bw'
- ),
});
suggest_message_text($bootloader);
@@ -1033,13 +1363,23 @@ sub suggest {
}
my @kernels = get_kernels_and_labels() or die "no kernel installed";
+ log::l("found kernels: ", join(', ', map { $_->{version} } @kernels));
+
+ my %old_kernels = map { vmlinuz2version($_->{kernel_or_dev}) => 1 } @{$bootloader->{entries}};
+ @kernels = grep { !$old_kernels{$_->{version}} } @kernels;
+
+ #- remove existing failsafe and linux-nonfb, do not care if the previous one was modified by the user?
+ #- but only if we are going to add new ones.
+ @{$bootloader->{entries}} = grep { !member($_->{label}, qw(failsafe linux-nonfb)) } @{$bootloader->{entries}}
+ if @kernels;
foreach my $kernel (@kernels) {
my $e = add_kernel($bootloader, $kernel,
{
root => $root,
- if_($options{vga_fb} && $kernel->{ext} eq '', vga => $options{vga_fb}), #- using framebuffer
- if_($options{vga_fb} && $options{quiet}, append => "splash=silent"),
+ if_($options{vga_fb}, vga => $options{vga_fb}), #- using framebuffer
+ if_($options{vga_fb} && $options{splash}, append => "splash noiswmd audit=0"),
+ if_($options{quiet}, append => "splash quiet noiswmd audit=0"),
});
if ($options{vga_fb} && $e->{label} eq 'linux') {
@@ -1047,26 +1387,15 @@ sub suggest {
}
}
- #- remove existing failsafe, do not care if the previous one was modified by the user?
- @{$bootloader->{entries}} = grep { $_->{label} ne 'failsafe' } @{$bootloader->{entries}};
-
add_kernel($bootloader, $kernels[0],
- { root => $root, label => 'failsafe', append => 'failsafe' });
+ { root => $root, label => 'failsafe', append => 'failsafe noiswmd audit=0' })
+ if @kernels;
- if (arch() =~ /ppc/) {
- #- if we identified a MacOS partition earlier - add it
- if (defined $partition_table::mac::macos_part) {
- add_entry($bootloader,
- {
- type => "macos",
- kernel_or_dev => $partition_table::mac::macos_part
- });
- }
- } elsif (arch() !~ /ia64/) {
#- search for dos (or windows) boot partition. Do not look in extended partitions!
my @windows_boot_parts =
grep { $_->{active}
- && isFat_or_NTFS($_) && member(fs::type::fs_type_from_magic($_), 'vfat', 'ntfs', 'ntfs-3g')
+ && isFat_or_NTFS($_) && member(fs::type::fs_type_from_magic($_), qw(vfat ntfs ntfs-3g))
+ && !$_->{is_removable}
&& !isRecovery($_);
}
map { @{$_->{primary}{normal}} } @{$all_hds->{hds}};
@@ -1080,9 +1409,8 @@ sub suggest {
makeactive => 1,
});
} @windows_boot_parts;
- }
- my @preferred = map { "linux-$_" } 'p3-smp-64GB', 'secure', 'enterprise', 'smp', 'i686-up-4GB';
+ my @preferred = map { "linux-$_" } 'server';
if (my $preferred = find { get_label($_, $bootloader) } @preferred) {
$bootloader->{default} ||= $preferred;
}
@@ -1090,14 +1418,31 @@ sub suggest {
$bootloader->{method} ||= first(method_choices($all_hds, 1), # best installed
method_choices($all_hds, 0)); # or best if no valid one is installed
+ $bootloader->{perImageAppend} = $bootloader->{entries}[0]{append};
+ $bootloader->{default_vga} = $options{vga_fb};
+
if (main_method($bootloader->{method}) eq 'grub') {
+ my %processed_entries = {};
foreach my $c (find_other_distros_grub_conf($fstab)) {
- add_entry($bootloader, {
- type => 'grub_configfile',
- label => $c->{name},
- kernel_or_dev => "/dev/$c->{bootpart}{device}",
- configfile => $c->{grub_conf},
- });
+ my %h = (
+ type => 'grub_configfile',
+ label => $c->{name},
+ kernel_or_dev => "/dev/$c->{bootpart}{device}",
+ configfile => $c->{grub_conf},
+ );
+ if ($c->{root}) {
+ my $key = "$c->{name} - $c->{linux} - $c->{initrd}";
+ next if $processed_entries{$key};
+ $processed_entries{$key} = 1;
+ add_entry($bootloader, {
+ %h,
+ linux => $c->{linux},
+ initrd => $c->{initrd},
+ root => $c->{root},
+ });
+ } else {
+ add_entry($bootloader, \%h);
+ }
}
}
}
@@ -1118,6 +1463,7 @@ sub config_files() {
lilo => '/etc/lilo.conf',
grub => '/boot/grub/menu.lst',
grub_install => '/boot/grub/install.sh',
+ uboot => '/boot/extlinux/extlinux.conf',
);
map_each {
@@ -1130,26 +1476,53 @@ sub method2text {
my ($method) = @_;
+{
'lilo-menu' => N("LILO with text menu"),
+ 'grub2-graphic' => N("GRUB2 with graphical menu"),
+ 'grub2' => N("GRUB2 with text menu"),
'grub-graphic' => N("GRUB with graphical menu"),
'grub-menu' => N("GRUB with text menu"),
- 'yaboot' => N("Yaboot"),
- 'silo' => N("SILO"),
+ 'refind' => N("rEFInd with graphical menu"),
+ 'uboot' => N("U-Boot/Extlinux with text menu"),
}->{$method};
}
+
+=item method_choices_raw($b_prefix_mounted)
+
+Returns list of bootloaders.
+
+method_choices_raw(1) will return the list of installed boot loaders.
+
+method_choices_raw(0) will return the list of all boot loaders supported by drakboot.
+
+Returns: ("grub2", "grub2-graphic")
+
+=cut
+
sub method_choices_raw {
my ($b_prefix_mounted) = @_;
detect_devices::is_xbox() ? 'cromwell' :
- arch() =~ /ppc/ ? 'yaboot' :
- arch() =~ /ia64/ ? 'lilo' :
- arch() =~ /sparc/ ? 'silo' :
- (
- if_(!$b_prefix_mounted || whereis_binary('grub', $::prefix),
+ arch() =~ /arm/ ? 'uboot' :
+ if_(!$b_prefix_mounted || whereis_binary('grub2-reboot', $::prefix),
+ 'grub2-graphic', 'grub2'),
+ if_(uefi_type() eq kernel_uefi_type() && (!$b_prefix_mounted || whereis_binary('refind-install', $::prefix)), 'refind'),
+ # only grub2 & rEFInd work on UEFI:
+ # lilo & grub-legacy do not suppport new ext4/xfs format and are unmainted so only allow them on upgrade:
+ if_(!is_uefi() && !($::isInstall && !$::o->{isUpgrade} || $::isLiveInstall), (
+ if_(!$b_prefix_mounted || whereis_binary('grub', $::prefix) && -f "$::prefix/boot/grub/install.sh",
'grub-graphic', 'grub-menu'),
- if_(!$b_prefix_mounted || whereis_binary('lilo', $::prefix),
+ if_(!$b_prefix_mounted || whereis_binary('lilo', $::prefix) && -f "$::prefix/etc/lilo.conf",
'lilo-menu'),
- );
+ ));
}
+
+=item method_choices($all_hds, $b_prefix_mounted)
+
+Returns list of supported bootloaders according to what is detected.
+
+Like method_choices_raw(), the $b_prefix_mounted parameter enables to return the list of either installed supported methods or the list of all supported boot loaders.
+
+=cut
+
sub method_choices {
my ($all_hds, $b_prefix_mounted) = @_;
my $fstab = [ fs::get::fstab($all_hds) ];
@@ -1158,11 +1531,20 @@ sub method_choices {
my $have_dmraid = find { fs::type::is_dmraid($_) } @{$all_hds->{hds}};
grep {
- !(/lilo/ && (isLoopback($root_part) || $have_dmraid))
- && !(/grub/ && isRAID($boot_part))
- && !(/grub-graphic/ && cat_("/proc/cmdline") =~ /console=ttyS/);
+ !(/lilo/ && (isLoopback($root_part) || $have_dmraid)) # LILO doesn't work fake raid
+ && (/grub2/ || $boot_part->{fs_type} ne 'btrfs') # Only grub2 works on btrfs
+ && !(/grub2?-graphic/ && cat_("/proc/cmdline") =~ /console=ttyS/); # No Gfx mode on console
} method_choices_raw($b_prefix_mounted);
}
+
+=item main_method_choices($b_prefix_mounted)
+
+Returns list of supported bootloaders, not distinging text/gfx mode.
+
+Like method_choices_raw(), the $b_prefix_mounted parameter enables to return the list of either installed supported methods or the list of all supported boot loaders.
+
+=cut
+
sub main_method_choices {
my ($b_prefix_mounted) = @_;
uniq(map { main_method($_) } method_choices_raw($b_prefix_mounted));
@@ -1185,125 +1567,59 @@ sub keytable {
-r "$::prefix/$f" && $f;
}
-
-sub create_link_source() {
- #- we simply do it for all kernels :)
- #- so this can be used in %post of kernel and also of kernel-source
- foreach (all("$::prefix/usr/src")) {
- my ($version) = /^linux-(\d+\.\d+.*)/ or next;
- foreach (glob("$::prefix/lib/modules/$version*")) {
- -d $_ or next;
- log::l("creating symlink $_/build");
- symlink "/usr/src/linux-$version", "$_/build";
- log::l("creating symlink $_/source");
- symlink "/usr/src/linux-$version", "$_/source";
- }
- }
-}
-
-sub dev2yaboot {
- my ($dev) = @_;
-
- devices::make("$::prefix$dev"); #- create it in the chroot
-
- my $of_dev;
- run_program::rooted_or_die($::prefix, "/usr/sbin/ofpath", ">", \$of_dev, $dev);
- chomp($of_dev);
- log::l("OF Device: $of_dev");
- $of_dev;
-}
-
sub check_enough_space() {
my $e = "$::prefix/boot/.enough_space";
output $e, 1; -s $e or die N("not enough room in /boot");
unlink $e;
}
-sub write_yaboot {
+sub install_uboot {
my ($bootloader, $all_hds) = @_;
+ write_uboot($bootloader, $all_hds);
+ when_config_changed_uboot($bootloader);
+}
- my $fstab = [ fs::get::fstab($all_hds) ];
-
- my $file2yaboot = sub {
- my ($part, $file) = fs::get::file2part($fstab, $_[0]);
- dev2yaboot('/dev/' . $part->{device}) . "," . $file;
- };
-
- #- do not write yaboot.conf for old-world macs
- my $mac_type = detect_devices::get_mac_model();
- return if $mac_type =~ /Power Macintosh/;
-
- $bootloader->{prompt} ||= $bootloader->{timeout};
-
- if ($bootloader->{message_text}) {
- eval { output("$::prefix/boot/message", $bootloader->{message_text}) }
- and $bootloader->{message} = '/boot/message';
- }
-
- my @conf;
+sub _write_extlinux_conf {
+ my ($bootloader, $_all_hds) = @_;
if (!get_label($bootloader->{default}, $bootloader)) {
log::l("default bootloader entry $bootloader->{default} is invalid, choosing another one");
$bootloader->{default} = $bootloader->{entries}[0]{label};
}
- push @conf, "# yaboot.conf - generated by DrakX/drakboot";
- push @conf, "# WARNING: do not forget to run ybin after modifying this file\n";
- push @conf, "default=" . make_label_lilo_compatible($bootloader->{default}) if $bootloader->{default};
- push @conf, sprintf('init-message="\n%s\n"', $bootloader->{'init-message'}) if $bootloader->{'init-message'};
- if ($bootloader->{boot}) {
- push @conf, "boot=$bootloader->{boot}";
- push @conf, "ofboot=" . dev2yaboot($bootloader->{boot}) if $mac_type !~ /IBM/;
- } else {
- die "no bootstrap partition defined.";
- }
+ my @conf;
+ push @conf, "# File generated by DrakX/drakboot";
+ push @conf, "default " . $bootloader->{default} if $bootloader->{default};
+ push @conf, "timeout " . $bootloader->{timeout} if $bootloader->{timeout};
+ # needed to show boot menu and enable timeout
+ push @conf, "menu title Boot Menu" if $bootloader->{timeout};
- push @conf, map { "$_=$bootloader->{$_}" } grep { $bootloader->{$_} } (qw(delay timeout), if_($mac_type !~ /IBM/, 'defaultos'));
- push @conf, "install=/usr/lib/yaboot/yaboot";
- if ($mac_type =~ /IBM/) {
- push @conf, 'nonvram';
- } else {
- push @conf, 'magicboot=/usr/lib/yaboot/ofboot';
- push @conf, grep { $bootloader->{$_} } qw(enablecdboot enableofboot);
- }
foreach my $entry (@{$bootloader->{entries}}) {
+ push @conf, "\nlabel $entry->{label}";
+ push @conf, " kernel $entry->{kernel_or_dev}";
+ push @conf, " initrd $entry->{initrd}" if $entry->{initrd};
+ push @conf, " fdtdir $entry->{fdtdir}" if $entry->{fdtdir};
- if ($entry->{type} eq "image") {
- push @conf, "$entry->{type}=" . $file2yaboot->($entry->{kernel_or_dev});
- my @entry_conf;
- push @entry_conf, "label=" . make_label_lilo_compatible($entry->{label});
- push @entry_conf, "root=$entry->{root}";
- push @entry_conf, "initrd=" . $file2yaboot->($entry->{initrd}) if $entry->{initrd};
- #- xfs module on PPC requires larger initrd - say 6MB?
- push @entry_conf, "initrd-size=6144" if $bootloader->{xfsroot};
- push @entry_conf, qq(append=" $entry->{append}") if $entry->{append};
- push @entry_conf, grep { $entry->{$_} } qw(read-write read-only);
- push @conf, map { "\t$_" } @entry_conf;
- } else {
- my $of_dev = dev2yaboot($entry->{kernel_or_dev});
- push @conf, "$entry->{type}=$of_dev";
- }
+ my @append;
+ push @append, "root=" . $entry->{root} if $entry->{root};
+ push @append, $entry->{append} if $entry->{append};
+ push @conf, " append " . join(' ', @append) if @append;
}
- my $f = "$::prefix/etc/yaboot.conf";
- log::l("writing yaboot config to $f");
- renamef($f, "$f.old");
- output($f, map { "$_\n" } @conf);
+
+ my $f = "$::prefix/boot/extlinux/extlinux.conf";
+ log::l("writing extlinux config to $f");
+ renamef($f, $f . '.old');
+ output_with_perm($f, 0600, map { "$_\n" } @conf);
}
-sub install_yaboot {
+sub write_uboot {
my ($bootloader, $all_hds) = @_;
- log::l("Installing boot loader...");
- write_yaboot($bootloader, $all_hds);
- when_config_changed_yaboot($bootloader);
+ _write_extlinux_conf($bootloader, $all_hds);
}
-sub when_config_changed_yaboot {
- my ($bootloader) = @_;
- $::testing and return;
- if (defined $partition_table::mac::new_bootstrap) {
- run_program::run("hformat", $bootloader->{boot}) or die "hformat failed";
- }
- my $error;
- run_program::rooted($::prefix, "/usr/sbin/ybin", "2>", \$error) or die "ybin failed: $error";
+
+sub when_config_changed_uboot {
+ my ($_bootloader) = @_;
+ #- do not do anything
}
sub install_cromwell {
@@ -1316,7 +1632,7 @@ sub write_cromwell {
}
sub when_config_changed_cromwell {
my ($_bootloader) = @_;
- log::l("XBox/Cromwell - nothing to do...");
+ #- do not do anything
}
sub simplify_label {
@@ -1375,9 +1691,17 @@ sub write_lilo {
my @conf;
- #- normalize: RESTRICTED is only valid if PASSWORD is set
- delete $bootloader->{restricted} if !$bootloader->{password};
+ #- normalize: RESTRICTED and MANDATORY are only valid if PASSWORD is set
+ if ($bootloader->{password}) {
+ # lilo defaults to mandatory, use restricted by default to have
+ # the same behaviour as with grub
+ $bootloader->{restricted} = 1;
+ } else {
+ delete $bootloader->{mandatory} if !$bootloader->{password};
+ delete $bootloader->{restricted} if !$bootloader->{password};
+ }
foreach my $entry (@{$bootloader->{entries}}) {
+ delete $entry->{mandatory} if !$entry->{password} && !$bootloader->{password};
delete $entry->{restricted} if !$entry->{password} && !$bootloader->{password};
}
if (get_append_with_key($bootloader, 'console') =~ /ttyS(.*)/) {
@@ -1392,7 +1716,7 @@ sub write_lilo {
push @conf, "# WARNING: do not forget to run lilo after modifying this file\n";
push @conf, "default=" . make_label_lilo_compatible($bootloader->{default}) if $bootloader->{default};
push @conf, map { $_ . '=' . $quotes_if_needed->($bootloader->{$_}) } grep { $bootloader->{$_} } qw(boot root map install serial vga keytable raid-extra-boot menu-scheme vmdefault);
- push @conf, grep { $bootloader->{$_} } qw(linear geometric compact prompt nowarn restricted static-bios-codes large-memory);
+ push @conf, grep { $bootloader->{$_} } qw(linear geometric compact prompt mandatory nowarn restricted static-bios-codes large-memory);
push @conf, "append=" . $quotes->($bootloader->{append}) if $bootloader->{append};
push @conf, "password=" . $bootloader->{password} if $bootloader->{password}; #- also done by msec
push @conf, "timeout=" . round(10 * $bootloader->{timeout}) if $bootloader->{timeout};
@@ -1426,6 +1750,7 @@ sub write_lilo {
push @entry_conf, "append=" . $quotes->($append) if $append;
push @entry_conf, "vga=$entry->{vga}" if $entry->{vga};
push @entry_conf, grep { $entry->{$_} } qw(read-write read-only optional);
+ push @entry_conf, "mandatory" if $entry->{lock};
} else {
delete $entry->{unsafe} if $entry->{table}; #- we can't have both
push @entry_conf, map { "$_=$entry->{$_}" } grep { $entry->{$_} } qw(table boot-as);
@@ -1446,7 +1771,7 @@ sub write_lilo {
}
}
push @entry_conf, "password=$entry->{password}" if $entry->{password};
- push @entry_conf, grep { $entry->{$_} } qw(restricted vmwarn vmdisable);
+ push @entry_conf, grep { $entry->{$_} } qw(mandatory vmwarn vmdisable);
push @conf, map { "\t$_" } @entry_conf;
}
@@ -1496,7 +1821,7 @@ sub install_raw_lilo {
sub when_config_changed_lilo {
my ($bootloader) = @_;
- if (!$::testing && arch() !~ /ia64/ && $bootloader->{method} =~ /lilo/) {
+ if (!$::testing && $bootloader->{method} =~ /lilo/) {
log::l("Installing boot loader on $bootloader->{boot}...");
install_raw_lilo($bootloader->{force_lilo_answer});
}
@@ -1579,8 +1904,14 @@ sub write_grub_device_map {
(map_index { "(hd$::i) /dev/$_->{device}\n" } @$sorted_hds));
}
-# parses things like "(hd0,4)/boot/vmlinuz"
-# returns: ("hd0", 4, "boot/vmlinuz")
+=item parse_grub_file($grub_file)
+
+Parses things like C<(hd0,4)/boot/vmlinuz>
+
+Returns: ("hd0", 4, "boot/vmlinuz")
+
+=cut
+
sub parse_grub_file {
my ($grub_file) = @_;
my ($grub_dev, $rel_file) = $grub_file =~ m!\((.*?)\)/?(.*)! or return;
@@ -1588,8 +1919,14 @@ sub parse_grub_file {
($hd, $part, $rel_file);
}
-# takes things like "(hd0,4)/boot/vmlinuz"
-# returns: ("/dev/sda5", "boot/vmlinuz")
+=item grub2dev_and_file($grub_file, $grub2dev, $o_block_device)
+
+Takes things like C<(hd0,4)/boot/vmlinuz>
+
+Returns: ("/dev/sda5", "boot/vmlinuz")
+
+=cut
+
sub grub2dev_and_file {
my ($grub_file, $grub2dev, $o_block_device) = @_;
my ($hd, $part, $rel_file) = parse_grub_file($grub_file) or return;
@@ -1598,16 +1935,34 @@ sub grub2dev_and_file {
my $device = '/dev/' . ($part eq '' ? $grub2dev->{$hd} : devices::prefix_for_dev($grub2dev->{$hd}) . $part);
$device, $rel_file;
}
-# takes things like "(hd0,4)/boot/vmlinuz"
-# returns: "/dev/sda5"
+
+=item grub2devd($grub_file, $grub2dev, $o_block_device)
+
+Takes things like C<(hd0,4)/boot/vmlinuz>
+
+Returns: "/dev/sda5"
+
+=cut
+
sub grub2dev {
my ($grub_file, $grub2dev, $o_block_device) = @_;
first(grub2dev_and_file($grub_file, $grub2dev, $o_block_device));
}
-# replaces
-# - "/vmlinuz" with "/boot/vmlinuz" when "root" or "rootnoverify" is set for the entry
-# - "(hdX,Y)" in "(hdX,Y)/boot/vmlinuz..." by appropriate path if possible/needed
+=item grub2file($grub_file, $grub2dev, $fstab, $o_entry)
+
+Replaces
+
+=over 4
+
+=item * C</vmlinuz> with C</boot/vmlinuz> when "root" or "rootnoverify" is set for the entry
+
+=item * C<(hdX,Y)> in C<(hdX,Y)/boot/vmlinuz...> by appropriate path if possible/needed
+
+=back
+
+=cut
+
sub grub2file {
my ($grub_file, $grub2dev, $fstab, $o_entry) = @_;
@@ -1657,6 +2012,170 @@ sub update_copy_in_boot {
}
}
+sub crypt_grub_password {
+ my ($password) = @_;
+ require IPC::Open2;
+ local $ENV{LC_ALL} = 'C';
+ my ($his_out, $his_in);
+ my $cmd = ($::prefix ? "chroot $::prefix " : "") . "/sbin/grub-md5-crypt";
+
+ my $pid = IPC::Open2::open2($his_out, $his_in, $cmd);
+
+ my ($line, $res);
+ while (sysread($his_out, $line, 100)) {
+ if ($line =~ /Password/i) {
+ syswrite($his_in, "$password\n");
+ } else {
+ $res = $line;
+ }
+ }
+ waitpid($pid, 0);
+ my $status = $? >> 8;
+ die "failed to encrypt password (status=$status)" if $status != 0;
+ chomp_($res);
+}
+
+sub get_grub2_first_entry {
+ my ($bootloader) = @_;
+ # set default parameters:
+ my ($entry) = grep { $_->{kernel_or_dev} =~ /vmlin/ } @{$bootloader->{entries}};
+ $entry;
+}
+
+sub get_grub2_append {
+ my ($bootloader) = @_;
+ # get default parameters from first entry:
+ my ($entry) = get_grub2_first_entry($bootloader);
+ my $append = $entry->{append};
+ if (my $vga = $entry->{vga} || $bootloader->{vga}) {
+ $append .= " vga=$vga";
+ }
+ $append =~ s/root=\S+//g;
+ $append =~ s/\bro\b//g;
+ $append =~ s/\s+/ /g;
+ $append;
+}
+
+sub crypt_grub2_password {
+ my ($password) = @_;
+ require IPC::Open2;
+ local $ENV{LC_ALL} = 'C';
+ my ($his_out, $his_in);
+ my $pid = IPC::Open2::open2($his_out, $his_in, "$::prefix/bin/grub2-mkpasswd-pbkdf2");
+
+ my ($line, $res);
+ while (sysread($his_out, $line, 100)) {
+ if ($line =~ /enter.*password:/i) {
+ syswrite($his_in, "$password\n");
+ } else {
+ chomp($line);
+ $res .= $line if $line;
+ }
+ }
+ $res =~ s/^PBKDF2 hash of your password is //;
+ waitpid($pid, 0);
+ my $status = $? >> 8;
+ die "failed to encrypt password (status=$status)" if $status != 0;
+ chomp_($res);
+}
+
+sub write_grub2_sysconfig {
+ my ($bootloader, $_all_hds, $o_backup_extension) = @_;
+
+ # Set password prior to run update-grub2:
+ my $pw_f = get_grub2_users();
+ if ($bootloader->{password}) {
+ if (!is_grub2_already_crypted($bootloader->{password})) {
+ $bootloader->{password} = crypt_grub2_password($bootloader->{password});
+ }
+ output_with_perm($pw_f, 0600, "GRUB2_PASSWORD=$bootloader->{password}");
+ } else {
+ unlink($pw_f);
+ }
+
+ my $f = "$::prefix/etc/default/grub";
+ my %conf = getVarsFromSh($f);
+
+ my $append = $bootloader->{perImageAppend} || get_grub2_append($bootloader);
+ my $vga = $bootloader->{default_vga};
+ $append .= " vga=$vga" if $append !~ /vga=/ && $vga && $vga ne "normal";
+
+ $conf{GRUB_CMDLINE_LINUX_DEFAULT} = $append;
+ $conf{GRUB_GFXPAYLOAD_LINUX} = 'auto' if is_uefi();
+ $conf{GRUB_DISABLE_RECOVERY} = 'false'; # for 'failsafe' entry
+ $conf{GRUB_DEFAULT} //= 'saved'; # for default entry but do not overwrite user choice
+ $conf{GRUB_SAVEDEFAULT} //= 'true'; # for default entry but do not overwrite user choice
+ # special case so that setVarsInSh() doesn't emit the line when timeout is 0
+ $conf{GRUB_TIMEOUT} = $bootloader->{timeout} eq 0 ? "0 " : $bootloader->{timeout};
+ renamef($f, $f . ($o_backup_extension || '.old'));
+ setVarsInSh($f, \%conf);
+}
+
+sub write_grub2_default_entry {
+ my ($bootloader, $_all_hds, $o_backup_extension) = @_;
+
+ my $default = $bootloader->{default};
+ # menu entry must be identified by its full path. eg: "submenu1>submenu2>title":
+ if (my $def = find { $_->{label} eq $bootloader->{default} } @{$bootloader->{entries}}) {
+ $default = $def->{real_label} if $def->{real_label};
+ }
+
+ # set default entry:
+ eval {
+ my $f2 = "$::prefix/boot/grub2/grubenv";
+ cp_af($f2, $f2 . ($o_backup_extension || '.old'));
+ my $error;
+ run_program::rooted($::prefix, 'grub2-set-default', '2>', \$error, $default) or die "grub2-set-default failed: $error";
+ };
+ if (my $err = $@) {
+ log::l("error while running grub2-set-default: $err");
+ }
+}
+
+sub write_grub2 {
+ my ($bootloader, $o_all_hds, $o_backup_extension) = @_;
+ my $error;
+
+ write_grub2_sysconfig($bootloader, $o_all_hds, $o_backup_extension);
+
+ my $f1 = "$::prefix/boot/grub2/grub.cfg";
+ #- we won't just rename as grub2-mkconfig (more likely os-prober) may fail:
+ cp_af($f1, $f1 . '.old') if -e $f1;
+ #- don't use the update-grub2 script here, it hangs when run by service_harddrake
+ #- during boot because it causes systemd to try to start a user session
+ run_program::rooted($::prefix, 'grub2-mkconfig', '2>', \$error, '-o', '/boot/grub2/grub.cfg') or die "grub2-mkconfig failed: $error";
+ log::l("grub2-mkconfig logs: $error");
+
+ write_grub2_default_entry($bootloader, $o_all_hds, $o_backup_extension);
+ check_enough_space();
+}
+
+sub get_grub2_users() {
+ "$::prefix/boot/grub2/user.cfg";
+}
+
+sub get_grub2_install_sh() {
+ "$::prefix/boot/grub2/install.sh";
+}
+
+sub write_grub2_install_sh {
+ my ($bootloader, $o_backup_extension) = @_;
+ my $f = get_grub2_install_sh();
+ my $boot = $bootloader->{boot};
+ my @options;
+ if (is_uefi()) {
+ if ($bootloader->{no_esp_or_mbr}) {
+ push @options, qw(--bootloader-id=tmp --no-nvram);
+ } elsif ($bootloader->{removable}) {
+ push @options, '--removable';
+ }
+ } else {
+ @options = $bootloader->{no_esp_or_mbr} ? ('--grub-setup=/bin/true', $boot) : $boot;
+ }
+ renamef($f, $f . ($o_backup_extension || '.old'));
+ output_with_perm($f, 0755, join(' ', 'grub2-install', @options));
+}
+
sub write_grub {
my ($bootloader, $all_hds, $o_backup_extension) = @_;
@@ -1688,7 +2207,7 @@ sub write_grub {
$bootloader->{terminal} ||= "--timeout=" . ($bootloader->{timeout} || 0) . " console serial";
} elsif ($bootloader->{method} eq 'grub-graphic') {
my $bin = '/usr/sbin/grub-gfxmenu';
- if ($bootloader->{gfxmenu} eq '' && -x "$::prefix/usr/sbin/grub-gfxmenu") {
+ if ($bootloader->{gfxmenu} eq '' && -x "$::prefix$bin") {
my $locale = $::o->{locale} || do { require lang; lang::read() };
run_program::rooted($::prefix, $bin, '--lang', $locale->{lang}, '--update-gfxmenu');
$bootloader->{gfxmenu} ||= '/boot/gfxmenu';
@@ -1699,10 +2218,21 @@ sub write_grub {
delete $bootloader->{gfxmenu};
}
+ my $format = sub { map { "$_ $bootloader->{$_}" } @_ };
+
{
my @conf;
- push @conf, map { "$_ $bootloader->{$_}" } grep { $bootloader->{$_} } qw(timeout color password serial shade terminal viewport background foreground);
+ if ($bootloader->{password}) {
+ if (!is_already_crypted($bootloader->{password})) {
+ my $encrypted = crypt_grub_password($bootloader->{password});
+ $bootloader->{password} = "--md5 $encrypted";
+ }
+ }
+
+ push @conf, $format->(grep { defined $bootloader->{$_} } qw(timeout));
+ push @conf, $format->(grep { $bootloader->{$_} } qw(color password serial shade terminal viewport background foreground));
+
push @conf, map { $_ . ' ' . $file2grub->($bootloader->{$_}) } grep { $bootloader->{$_} } qw(gfxmenu);
eval {
@@ -1728,7 +2258,18 @@ sub write_grub {
if_($entry->{'read-write'}, 'rw'),
if_($vga && $vga ne "normal", "vga=$vga"));
push @conf, "module " . $_ foreach @{$entry->{modules} || []};
- push @conf, join(' ', $entry->{xen} ? 'module' : 'initrd', $file2grub->($entry->{initrd})) if $entry->{initrd};
+ if ($entry->{initrd}) {
+ # split partition from initrd path and place
+ # it to a separate 'root' entry.
+ # Grub2's mkconfig takes initrd entry 'as is',
+ # but grub2 fails to load smth like '(hd0,1)/boot/initrd' taken from grub-legacy
+ my $initrd_path = $file2grub->($entry->{initrd});
+ if ($initrd_path =~ /^(\([^\)]+\))/) {
+ push @conf, "root $1";
+ $initrd_path =~ s/^(\([^\)]+\))//;
+ }
+ push @conf, join(' ', $entry->{xen} ? 'module' : 'initrd', $initrd_path);
+ }
} else {
my $dev = eval { device_string2grub($entry->{kernel_or_dev}, \@legacy_floppies, \@sorted_hds) };
if (!$dev) {
@@ -1737,7 +2278,9 @@ sub write_grub {
}
push @conf, $title;
push @conf, grep { $entry->{$_} } 'lock';
- push @conf, join(' ', $entry->{rootnoverify} ? 'rootnoverify' : 'root', $dev);
+ if ($entry->{type} ne 'grub_configfile' || $entry->{configfile} !~ /grub\.cfg/ || !$entry->{root}) {
+ push @conf, join(' ', $entry->{rootnoverify} ? 'rootnoverify' : 'root', $dev);
+ }
if ($entry->{table}) {
if (my $hd = fs::get::device2part($entry->{table}, \@sorted_hds)) {
@@ -1752,8 +2295,12 @@ sub write_grub {
push @conf, map_each { "map ($::b) ($::a)" } %{$entry->{mapdrive}};
}
push @conf, "makeactive" if $entry->{makeactive};
- if ($entry->{type} eq 'grub_configfile') {
+ # grub.cfg is grub2 config, can't use it as configfile for grub-legacy
+ if ($entry->{type} eq 'grub_configfile' && $entry->{configfile} !~ /grub\.cfg/) {
push @conf, "configfile $entry->{configfile}";
+ } elsif ($entry->{linux}) {
+ push @conf, "root $entry->{root}", "kernel $entry->{linux}";
+ push @conf, "initrd $entry->{initrd}" if $entry->{initrd};
} else {
push @conf, "chainloader +1";
}
@@ -1762,7 +2309,7 @@ sub write_grub {
my $f = "$::prefix/boot/grub/menu.lst";
log::l("writing grub config to $f");
renamef($f, $f . ($o_backup_extension || '.old'));
- output($f, map { "$_\n" } @conf);
+ output_with_perm($f, 0600, map { "$_\n" } @conf);
}
{
my $f = "$::prefix/boot/grub/install.sh";
@@ -1820,6 +2367,26 @@ sub restore_previous_MBR_bootloader {
output($dev, scalar cat_(_dev_to_MBR_backup($dev)));
}
+sub install_grub2 {
+ my ($bootloader, $all_hds) = @_;
+ write_grub2($bootloader, $all_hds);
+ write_grub2_install_sh($bootloader, '.old');
+ install_raw_grub2();
+}
+
+sub install_raw_grub2() {
+ my $error;
+ my $f = '/boot/grub2/install.sh';
+ my ($right_dir, $bad_dir) = ("$::prefix/boot/EFI/EFI/", "$::prefix/boot/EFI/efi/");
+ if (-e $bad_dir && ! -e $right_dir) {
+ renamef($bad_dir, $right_dir);
+ }
+ if (!run_program::rooted($::prefix, "sh", "2>", \$error, $f)) {
+ log::explanations("grub2-install failed:\n(" . cat_($f) . ")\nError: <$error>");
+ die "grub2-install failed: $error";
+ }
+}
+
sub install_grub {
my ($bootloader, $all_hds) = @_;
@@ -1852,6 +2419,11 @@ sub install_raw_grub() {
run_program::rooted($::prefix, "sh", "2>", \$error, '/boot/grub/install.sh') or die "grub failed: $error";
}
+sub when_config_changed_grub2 {
+ my ($_bootloader) = @_;
+ #- do not do anything
+}
+
sub when_config_changed_grub {
my ($_bootloader) = @_;
#- do not do anything
@@ -1859,6 +2431,187 @@ sub when_config_changed_grub {
update_copy_in_boot($_) foreach glob($::prefix . boot_copies_dir() . '/*.link');
}
+sub write_refind {
+ my ($bootloader, $_all_hds, $o_backup_extension) = @_;
+
+ my @config;
+
+ foreach my $entry (@{$bootloader->{entries}}) {
+ if ($entry->{type} eq 'image' && $entry->{kernel_or_dev} eq '/boot/vmlinuz') {
+ my $vga = $entry->{vga} || $bootloader->{vga};
+ my $boot_params = join(' ',
+ "root=$entry->{root}",
+ $entry->{append},
+ if_($entry->{'read-write'}, 'rw'),
+ if_($vga && $vga ne "normal", "vga=$vga")
+ );
+ push @config, '"' . $entry->{label} . '" "' . $boot_params . '"';
+ }
+ }
+ if (@config) {
+ my $f = "$::prefix/boot/refind_linux.conf";
+ log::l("writing rEFInd config to $f");
+ renamef($f, $f . ($o_backup_extension || '.old'));
+ output_with_perm($f, 0600, map { "$_\n" } @config);
+ check_enough_space();
+ } else {
+ log::l("config has no entries - rEFInd config file not written");
+ }
+
+ my $default_kernel = readlink("$::prefix/boot/vmlinuz");
+ if ($default_kernel) {
+ if ($bootloader->{use_nvram}) {
+ write_refind_previous_boot_var($default_kernel);
+ } else {
+ write_refind_previous_boot_file($default_kernel, "$::prefix/boot/EFI/EFI/refind");
+ write_refind_previous_boot_file($default_kernel, "$::prefix/boot/EFI/EFI/BOOT");
+ }
+ }
+}
+
+sub write_refind_previous_boot_var {
+ my ($kernel) = @_;
+ my ($efivars, $already_mounted) = mount_efivars();
+ my $previous_boot = "$efivars/PreviousBoot-36d08fa7-cf0b-42f5-8f14-68df73ed3740";
+ run_program::run('chattr', '-i', $previous_boot) if -e $previous_boot;
+ if (open(my $efivar, '>:raw', $previous_boot)) {
+ require Encode;
+ log::l("writing rEFInd PreviousBoot variable");
+ print $efivar "\x07\x00\x00\x00";
+ print $efivar Encode::encode('UTF16-LE', $kernel);
+ print $efivar "\x00\x00";
+ close($efivar);
+ } else {
+ log::l("failed to write rEFInd PreviousBoot variable: $@ ($!)");
+ }
+ run_program::run('umount', $efivars) if !$already_mounted;
+}
+
+sub write_refind_previous_boot_file {
+ my ($kernel, $base_path) = @_;
+ return if ! -e "$base_path/refind.conf" || ! mkdir_p("$base_path/vars");
+ if (open(my $f, '>:raw', "$base_path/vars/PreviousBoot")) {
+ require Encode;
+ log::l("writing rEFInd $base_path/vars/PreviousBoot file");
+ print $f Encode::encode('UTF16-LE', "Boot boot\\$kernel");
+ print $f "\x00\x00";
+ close($f);
+ } else {
+ log::l("failed to write rEFInd $base_path/vars/PreviousBoot file");
+ }
+}
+
+sub install_refind {
+ my ($bootloader, $all_hds) = @_;
+
+ if ($bootloader->{install_mode} ne 'no_install') {
+ my (@options, $error);
+ if ($bootloader->{install_mode} eq 'as_default') {
+ $bootloader->{esp_device} or die "ESP device is unknown";
+ push @options, '--usedefault';
+ push @options, $bootloader->{esp_device};
+ #- refind_install uses lower case file names. If a default bootloader was previously
+ #- created with an upper case file name, Linux won't overwrite it.
+ my $default_fn = "$::prefix/boot/EFI/EFI/BOOT/BOOT" . uc(uefi_type()) . ".EFI";
+ unlink($default_fn) if -e $default_fn;
+ } elsif ($bootloader->{install_mode} eq 'nvram_only') {
+ push @options, '--nvramonly';
+ }
+ run_program::rooted($::prefix, '/sbin/refind-install', '2>', \$error, @options)
+ or die "refind-install failed: $error";
+ }
+
+ #- This file is not used by rEFInd itself. It just defines the paths to the image
+ #- files used for the standard banner choices.
+ my %h = getVarsFromSh("$::prefix/etc/sysconfig/refind");
+
+ my $banner_source;
+ if ($bootloader->{banner_path} eq 'refind_banner.png') {
+ $banner_source = "$::prefix" . $h{REFIND_BANNER};
+ } elsif ($bootloader->{banner_path} eq 'mageia_theme.png') {
+ $banner_source = "$::prefix" . $h{MAGEIA_THEME};
+ }
+ if (defined $banner_source && ! (-f $banner_source && -r $banner_source)) {
+ log::l("$banner_source does not exist or is not readable");
+ $bootloader->{banner_path} = '';
+ $bootloader->{banner_scale} = 'noscale';
+ undef $banner_source;
+ }
+
+ #- Try both possible locations for the main config file.
+ modify_refind_config($bootloader, $banner_source, "$::prefix/boot/EFI/EFI/refind");
+ modify_refind_config($bootloader, $banner_source, "$::prefix/boot/EFI/EFI/BOOT");
+
+ write_refind($bootloader, $all_hds);
+}
+
+sub modify_refind_config {
+ my ($bootloader, $banner_source, $esp_dir) = @_;
+
+ my $config_file = "$esp_dir/refind.conf";
+ return if ! -f $config_file || ! -w $config_file;
+
+ my $use_nvram = $bootloader->{use_nvram} ? 'true' : 'false';
+
+ my $banner_path = $bootloader->{banner_path};
+ cp_f($banner_source, "$esp_dir/$banner_path") if (defined $banner_source);
+
+ my $banner_scale = $bootloader->{banner_scale};
+
+ my @config;
+
+ my %done;
+ foreach (cat_utf8($config_file)) {
+ if ($_ =~ /^#?use_nvram\s/) {
+ if (! $done{use_nvram}) {
+ push @config, "use_nvram $use_nvram\n" ;
+ $done{use_nvram} = 1;
+ }
+ } elsif ($_ =~ /^#?banner\s/) {
+ if (! $done{banner_path}) {
+ if ($banner_path eq '') {
+ push @config, "#banner my_banner.png\n";
+ } else {
+ push @config, "banner $banner_path\n";
+ }
+ $done{banner_path} = 1;
+ }
+ } elsif ($_ =~ /^#?banner_scale\s/) {
+ if (! $done{banner_scale}) {
+ push @config, "banner_scale $banner_scale\n";
+ $done{banner_scale} = 1;
+ }
+ } else {
+ push @config, $_;
+ }
+ }
+
+ if (@config) {
+ log::l("writing rEFInd config to $config_file");
+ renamef($config_file, $config_file . '.old');
+ output_with_perm($config_file, 0600, @config);
+ } else {
+ log::l("config has no entries - rEFInd config file not written");
+ }
+}
+
+sub when_config_changed_refind {
+ my ($_bootloader) = @_;
+ #- do not do anything
+}
+
+=item action($bootloader, $action, @para)
+
+Calls the C<$action> function with @para parameters:
+
+ $actions->($bootloader, @para)
+
+If needed, the function name will be resolved to call a boot loader specific function (eg: for LILO/GRUB/...)
+
+This Swiss army knife function is heavily used by eg /sbin/bootloader-config
+
+=cut
+
sub action {
my ($bootloader, $action, @para) = @_;
@@ -1867,30 +2620,104 @@ sub action {
$f->($bootloader, @para);
}
+=item install($bootloader, $all_hds)
+
+Writes back the boot loader config. Calls the proper write_XYZ() function.
+
+=cut
+
sub install {
my ($bootloader, $all_hds) = @_;
- if (my $part = fs::get::device2part($bootloader->{boot}, [ fs::get::fstab($all_hds) ])) {
- die N("You can not install the bootloader on a %s partition\n", $part->{fs_type})
- if $part->{fs_type} eq 'xfs';
- }
- $bootloader->{keytable} = keytable($bootloader->{keytable});
+ my ($efivars, $already_mounted) = mount_efivars() if is_uefi();
+
+ $bootloader->{keytable} = keytable($bootloader->{keytable}) if $bootloader->{method} eq 'lilo';
action($bootloader, 'install', $all_hds);
+
+ run_program::run('umount', $efivars) if is_uefi() && !$already_mounted;
+}
+
+sub get_grub2_pkg() {
+ my ($prefix, $pkg);
+ if (is_uefi()) {
+ my %convert = (ia32 => 'i386', aa64 => 'arm64', x64 => 'x86_64');
+ my %pkgs = (ia32 => 'x86-32', aa64 => 'aarch-64', x64 => 'x86-64');
+ $prefix = $convert{uefi_type()} . "-efi";
+ $pkg = "grub2-efi(" . $pkgs{uefi_type()} . ")";
+ } else {
+ $prefix = 'i386-pc';
+ $pkg = 'grub2';
+ }
+ ($prefix, $pkg);
}
sub ensure_pkg_is_installed {
my ($do_pkgs, $bootloader) = @_;
+ my %suppl = (
+ # method => [ 'pkg_name', 'file_to_test' ],
+ 'grub-graphic' => [ qw(mageia-gfxboot-theme /usr/share/gfxboot/themes/Mageia/boot/message) ],
+ 'grub2-graphic' => [ qw(grub2-mageia-theme /boot/grub2/themes/maggy/theme.txt) ],
+ );
my $main_method = main_method($bootloader->{method});
- if ($main_method eq 'grub' || $main_method eq 'lilo') {
+ if ($main_method eq 'grub2') {
+ my ($prefix, $pkg) = get_grub2_pkg();
+ $do_pkgs->ensure_is_installed($pkg, "/usr/lib/grub/$prefix/ext2.mod", 1) or return 0;
+ } elsif ($main_method eq 'refind') {
+ $do_pkgs->ensure_is_installed('refind', '/sbin/refind-install', 1) or return 0;
+ } elsif (member($main_method, qw(grub grub2 lilo))) {
$do_pkgs->ensure_binary_is_installed($main_method, $main_method, 1) or return 0;
- if ($bootloader->{method} eq 'grub-graphic') {
- $do_pkgs->ensure_is_installed('mandriva-gfxboot-theme', '/usr/share/gfxboot/themes/Mandriva/boot/message', 1) or return 0;
- }
+ }
+ # Install gfx theme if needed:
+ if (my $pkg = $suppl{$bootloader->{method}}) {
+ $do_pkgs->ensure_is_installed(@$pkg, 1) or return 0;
}
1;
}
+sub parse_grub2_config {
+ my ($l, $grubcfg, $part) = @_;
+
+ my ($linux, $menuentry, $root, $root_dev, $initrd);
+
+ foreach (cat_($grubcfg)) {
+ chomp;
+ if (/^menuentry\s+['"]([^']+)["']/) {
+ if ($menuentry && $root) {
+ my $parttype = partition_table::raw::typeOfMBR($root_dev);
+ if ((!$parttype || $parttype eq "empty") && $linux) {
+ push @$l, { menuentry => $menuentry, bootpart => $part, root => $root, linux => $linux, initrd => $initrd, grub_conf => $grubcfg };
+ }
+ }
+ $menuentry = $1;
+ $root = $linux = undef;
+ } elsif (/set root='(\([^\)]+\))'/) {
+ $root = $1;
+
+ if ($root =~ /\(([^,]+),msdos(\d+)\)/) {
+ my $dev_title = "/" . $1;
+ my $part_num = $2;
+ my $dec_part_num = $part_num-1;
+ $dev_title =~ s!hd!dev/sd!;
+ $dev_title =~ tr/0123456789/abcdefghi/;
+
+ $root_dev = $part_num ? $dev_title . $part_num : $dev_title;
+ $root =~ s/msdos$part_num/$dec_part_num/;
+ }
+ } elsif (/^\s+linux\s+(.+)/) {
+ $linux = $1;
+ } elsif (/^\s+initrd\s+(.+)/) {
+ $initrd = $1;
+ }
+ }
+}
+
+=item find_other_distros_grub_conf($fstab)
+
+Returns a list of other distros' grub.conf
+
+=cut
+
sub find_other_distros_grub_conf {
my ($fstab) = @_;
@@ -1909,6 +2736,15 @@ sub find_other_distros_grub_conf {
my $f = find { -e "$handle->{dir}$bootdir/$_" } 'grub.conf', 'grub/menu.lst' or next;
push @l, { bootpart => $part, bootdir => $bootdir, grub_conf => "$bootdir/$f" };
}
+ foreach my $bootdir ('', '/boot', '/boot/grub', '/boot/grub2') {
+ my $f = find { -e "$handle->{dir}$bootdir/$_" } 'grub.cfg' or next;
+ my $parttype = partition_table::raw::typeOfMBR($part->{device});
+ if (!$parttype || $parttype eq "empty") {
+ parse_grub2_config(\@l, "$handle->{dir}/$bootdir/$f", $part);
+ } else {
+ push @l, { bootpart => $part, bootdir => $bootdir, grub_conf => "$bootdir/$f" };
+ }
+ }
if (my $f = common::release_file($handle->{dir})) {
my $h = common::parse_release_file($handle->{dir}, $f, $part);
$h->{name} = $h->{release};
@@ -2005,10 +2841,14 @@ sub update_for_renumbered_partitions {
} $main_method ? $main_method : ('lilo', 'grub');
if (intersection(\@needed, [ map { $_->{name} } @changed_configs ])) {
- $in->ask_warn('', N("The bootloader can not be installed correctly. You have to boot rescue and choose \"%s\"",
+ $in->ask_warn('', N("The bootloader cannot be installed correctly. You have to boot rescue and choose \"%s\"",
N("Re-install Boot Loader")));
}
1;
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/bootsplash.pm b/perl-install/bootsplash.pm
deleted file mode 100644
index ef89fc330..000000000
--- a/perl-install/bootsplash.pm
+++ /dev/null
@@ -1,261 +0,0 @@
-package bootsplash;
-
-use common;
-use Xconfig::resolution_and_depth;
-
-
-my $themes_dir = "/usr/share/bootsplash/themes";
-my $themes_config_dir = "/etc/bootsplash/themes";
-my $sysconfig_file = "/etc/sysconfig/bootsplash";
-my $bootsplash_scripts = "/usr/share/bootsplash/scripts";
-my $default_theme = 'Mandrivalinux';
-our $default_thumbnail = '/usr/share/libDrakX/pixmaps/nosplash_thumb.png';
-our @resolutions = uniq(map { "$_->{X}x$_->{Y}" } Xconfig::resolution_and_depth::bios_vga_modes());
-
-sub get_framebuffer_resolution() {
- require bootloader;
- require fsedit;
- my $all_hds = fsedit::get_hds();
- fs::get_info_from_fstab($all_hds);
- my $bootloader = bootloader::read($all_hds);
- my $x_res = Xconfig::resolution_and_depth::from_bios($bootloader->{default_options}{vga});
- $x_res ?
- ($x_res->{X} . 'x' . $x_res->{Y}, 1) :
- (first(@resolutions), 0);
-}
-
-sub themes_read_sysconfig {
- my ($res) = @_;
- my %theme = (
- name => $default_theme,
- enabled => 1,
- keep_logo => 1
- );
- if (-r $::prefix . $sysconfig_file) {
- local $_;
- foreach (cat_($::prefix . $sysconfig_file)) {
- /^SPLASH=no/ and $theme{enabled} = 0;
- /^THEME=(.*)/ && -f theme_get_image_for_resolution($1, $res) and $theme{name} = $1;
- /^LOGO_CONSOLE=(.*)/ and $theme{keep_logo} = $1 ne "no";
- }
- }
- \%theme;
-}
-
-sub theme_get_image_for_resolution {
- my ($theme, $res) = @_;
- $::prefix . $themes_dir . '/' . $theme . '/images/bootsplash-' . $res . ".jpg";
-}
-
-sub theme_get_config_for_resolution {
- my ($theme, $res) = @_;
- $::prefix . $themes_config_dir . '/' . $theme . '/config/bootsplash-' . $res . ".cfg";
-}
-
-sub theme_exists_for_resolution {
- my ($theme, $res) = @_;
- -f theme_get_image_for_resolution($theme, $res) && -f theme_get_config_for_resolution($theme, $res);
-}
-
-sub themes_list() {
- grep { !/^\./ && -d $::prefix . $themes_dir . '/' . $_ } sort(all($::prefix . $themes_dir));
-}
-
-sub themes_list_for_resolution {
- my ($res) = @_;
- grep { theme_exists_for_resolution($_, $res) } themes_list();
-}
-
-sub switch {
- my ($theme) = @_;
- if ($::testing) {
- print "enabling bootsplash theme $theme\n";
- } else {
- #- theme scripts will update SPLASH value in sysconfig file
- system($::prefix . $bootsplash_scripts . '/switch-themes', $theme);
- }
-}
-
-sub remove() {
- if ($::testing) {
- print "disabling bootsplash theme\n";
- } else {
- system($::prefix . $bootsplash_scripts . '/remove-theme');
- }
-}
-
-sub set_logo_console {
- my ($keep_logo) = @_;
- my $logo_console = $keep_logo ? 'theme' : 'no';
- substInFile { s/^LOGO_CONSOLE=.*/LOGO_CONSOLE=$logo_console/ } $::prefix . $sysconfig_file;
-}
-
-sub create_path {
- my ($file) = @_;
- mkdir_p(dirname($file));
-}
-
-sub theme_set_image_for_resolution {
- my ($name, $res, $source_image) = @_;
- my $dest_image = theme_get_image_for_resolution($name, $res);
- create_path($dest_image);
- #- Append an exclamation point to the geometry to force the image size to exactly the size you specify.
- system('convert', '-geometry', $res . '!', $source_image, $dest_image);
- system($::prefix . $bootsplash_scripts . '/rewritejpeg', $dest_image);
-}
-
-sub theme_read_config_for_resolution {
- my ($theme, $res) = @_;
- my $file = theme_get_config_for_resolution($theme, $res);
- my $contents = cat_($file);
- my ($pb_x1, $pb_y1, $pb_x2, $pb_y2, $pbg_c, $ptransp) = $contents =~ /^box\s+silent\s+noover\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(#\w{6})(\w{2})/m;
- my ($tb_x1, $tb_y1, $tb_x2, $tb_y2, $tc, $transp) = $contents =~ /^box\s+noover\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(#\w{6})(\w{2})/m;
- my ($pc1, $pc2, $pc3, $_pc4) = $contents =~ /^box\s+silent\s+inter\s+\d+\s+\d+\s+\d+\s+\d+\s+(#\w+)\s+(#\w+)\s+(#\w+)\s+(#\w+)/m;
- my ($text_color) = $contents =~ /^text_color=0x(\w+)/m;
- my $gradient;
- if ($pc1 eq $pc2) {
- $gradient = 'vertical';
- $pc2 = $pc3;
- }
- { pc1 => $pc1, pc2 => $pc2, gradient => $gradient, transp => hex $transp, ptransp => hex $ptransp,
- tb_x => $tb_x1, tb_y => $tb_y1, tb_w => $tb_x2 - $tb_x1, tb_h => $tb_y2 - $tb_y1, tc => $tc, pbg_c => $pbg_c,
- px => $pb_x1, pw => $pb_x2 - $pb_x1, py => $pb_y1, ph => $pb_y2 - $pb_y1,
- getVarsFromSh($file), text_color => "#$text_color" };
-}
-
-sub theme_write_config_for_resolution {
- my ($name, $res, $conf) = @_;
-
- my $config = theme_get_config_for_resolution($name, $res);
- create_path($config);
- my $jpeg = theme_get_image_for_resolution($name, $res);
-
- # progress/text rectangles border/inter coordinates
- my ($pb_x1, $pb_x2, $pb_y1, $pb_y2) = ($conf->{px}, $conf->{px} + $conf->{pw}, $conf->{py}, $conf->{py} + $conf->{ph});
- my ($pi_y1, $pi_y2) = ($pb_y1 + 1, $pb_y2 - 1);
- my ($tb_x1, $tb_y1, $tb_x2, $tb_y2) = ($conf->{tb_x}, $conf->{tb_y}, $conf->{tb_x} + $conf->{tb_w}, $conf->{tb_y} + $conf->{tb_h});
- my ($tx, $ty, $tw, $th) = ($tb_x1 + 10, $tb_y1 + 5, $conf->{tb_w} - 20 , $conf->{tb_h} - 10);
- my ($ti_x1, $ti_x2, $ti_y1, $ti_y2) = ($tb_x1 - 1, $tb_x2 + 1, $tb_y1 + 1, $tb_y2 + 1);
- my ($pc1, $pc2, $pc3, $pc4);
- if ($conf->{gradient} eq 'vertical') {
- ($pc1, $pc2, $pc3, $pc4) = ($conf->{pc1}, $conf->{pc1}, $conf->{pc2}, $conf->{pc2});
- } else {
- ($pc1, $pc2, $pc3, $pc4) = ($conf->{pc1}, $conf->{pc2}, $conf->{pc1}, $conf->{pc2});
- }
- if (!$pc1) { ($pc1, $pc2, $pc3, $pc4) = ('#ffffff', '#ffffff', '#000000', '#000000') }
- my $ptransp = sprintf '%02x', $conf->{ptransp};
- my $transp = sprintf '%02x', $conf->{transp};
- $conf->{pbg_c} ||= '#aaaaaa';
- $conf->{tc} ||= '#ffffff';
- my $text_color = $conf->{text_color} ? "0x$conf->{text_color}" : '0xaaaaaa';
- $text_color =~ s/#//;
- output($config,
- qq(# This is the configuration file for the $res bootsplash picture
-# this file is necessary to specify the coordinates of the text box on the
-# splash screen.
-
-# config file version
-version=3
-
-# should the picture be displayed?
-state=1
-
-# fgcolor is the text forground color.
-# bgcolor is the text background (i.e. transparent) color.
-fgcolor=$conf->{fgcolor}
-bgcolor=$conf->{bgcolor}
-
-# (tx, ty) are the (x, y) coordinates of the text window in pixels.
-# tw/th is the width/height of the text window in pixels.
-tx=$tx
-ty=$ty
-tw=$tw
-th=$th
-
-# ttf message output parameters
-text_x=$conf->{text_x}
-text_y=$conf->{text_y}
-text_size=$conf->{text_size}
-text_color=$text_color
-
-# name of the picture file (full path recommended)
-jpeg=$jpeg
-silentjpeg=$jpeg
-
-progress_enable=1
-
-# background
-# b(order) or i(nter)
-box silent noover $pb_x1 $pb_y1 $pb_x2 $pb_y2 $conf->{pbg_c}$ptransp
-# progress bar
-box silent inter $pb_x1 $pi_y1 $pb_x1 $pi_y2 $pc1 $pc2 $pc3 $pc4
-box silent $pb_x1 $pi_y1 $pb_x2 $pi_y2 $pc1 $pc2 $pc3 $pc4
-# black border (top, bottom, left, right)
-box silent $pb_x1 $pb_y1 $pb_x2 $pb_y1 #313234
-box silent $pb_x1 $pb_y2 $pb_x2 $pb_y2 #889499
-box silent $pb_x1 $pb_y1 $pb_x1 $pb_y2 #313234
-box silent $pb_x2 $pb_y1 $pb_x2 $pb_y2 #889499
-
-# text box
-box noover $tb_x1 $tb_y1 $tb_x2 $tb_y2 $conf->{tc}$transp
-# black border (top, bottom, left, right)
-box $ti_x1 $tb_y1 $ti_x1 $ti_y2 #313234
-box $tb_x1 $tb_y1 $ti_x2 $tb_y1 #313234
-box $ti_x2 $ti_y1 $ti_x2 $ti_y2 #889499
-box $tb_x1 $ti_y2 $ti_x2 $ti_y2 #889499
-
-overpaintok=1
-
-LOGO_CONSOLE=$conf->{LOGO_CONSOLE}
-));
-}
-
-sub rectangle2xywh {
- my ($rect) = @_;
-
- my $x = min($rect->[0]{X} , $rect->[1]{X});
- my $y = min($rect->[0]{Y} , $rect->[1]{Y});
- my $w = abs($rect->[0]{X} - $rect->[1]{X});
- my $h = abs($rect->[0]{Y} - $rect->[1]{Y});
- ($x, $y, $w, $h);
-}
-
-sub xywh2rectangle {
- my ($x, $y, $w, $h) = @_;
- [ { X => $x, Y => $y }, { X => $x+$w, Y => $y+$h } ];
-}
-
-sub distance {
- my ($p1, $p2) = @_;
- sqr($p1->{X} - $p2->{X}) + sqr($p1->{Y} - $p2->{Y});
-}
-
-sub farthest {
- my ($point, @others) = @_;
- my $dist = 0;
- my $farthest;
- foreach (@others) {
- my $d = distance($point, $_);
- if ($d >= $dist) {
- $dist = $d;
- $farthest = $_;
- }
- }
- $farthest;
-}
-
-sub nearest {
- my ($point, @others) = @_;
- my $dist;
- my $nearest;
- foreach (@others) {
- my $d = distance($point, $_);
- if (! defined $dist || $d < $dist) {
- $dist = $d;
- $nearest = $_;
- }
- }
- $nearest;
-}
-
-1;
diff --git a/perl-install/c.pm b/perl-install/c.pm
index f1904ebc4..8312c0d79 100644
--- a/perl-install/c.pm
+++ b/perl-install/c.pm
@@ -1,4 +1,4 @@
-package c; # $Id$
+package c;
use vars qw($AUTOLOAD);
@@ -7,13 +7,42 @@ use MDK::Common;
sub AUTOLOAD() {
$AUTOLOAD =~ /::(.*)/ or return;
- my @l = eval { &{$c::stuff::{$1}} };
+ my $fct = $1;
+ my @l = eval { &{$c::stuff::{$fct}} };
if (my $err = $@) {
$err =~ /Undefined subroutine &main::/ ?
- die("can not find function $AUTOLOAD\n" . backtrace()) :
- die($err);
+ die("cannot find function $AUTOLOAD\n" . backtrace()) :
+ die("$fct: " . $err);
}
wantarray() ? @l : $l[0];
}
1;
+
+
+=head1 SYNOPSYS
+
+The C module is glue code between the Perl & the C worlds that enable drakx to:
+
+=over
+
+=item *
+
+access various C libraries, mainly libldetect
+
+=item *
+
+bind some C functions (eg: syslog(), ...)
+
+=item *
+
+implement in C some helper functions
+
+=back
+
+It is autogenerated from perl-install/c/stuff.xs.pl.
+One needs to run "perl Makefile.PL"
+
+It's used quite a lot by L<detect_devices>.
+
+=cut
diff --git a/perl-install/c/Makefile.PL b/perl-install/c/Makefile.PL
index 8cb2524c9..f776d27f2 100644..100755
--- a/perl-install/c/Makefile.PL
+++ b/perl-install/c/Makefile.PL
@@ -12,7 +12,7 @@ my $pcmcia_probe_o = "/usr/$lib/drakx-installer-binaries/pcmcia_probe.o";
WriteMakefile(
'NAME' => 'stuff',
- 'OPTIMIZE' => '-Os',
+ 'OPTIMIZE' => '-Os -Wall',
'MAKEFILE' => 'Makefile_c',
'OBJECT' => "stuff.o " . (-e $pcmcia_probe_o && " $pcmcia_probe_o"),
'VERSION_FROM' => 'stuff.pm', # finds $VERSION
diff --git a/perl-install/c/README b/perl-install/c/README
deleted file mode 100644
index 2453a5121..000000000
--- a/perl-install/c/README
+++ /dev/null
@@ -1 +0,0 @@
-md5.c, md5_crypt.c and md5.h are taken from pam (dir modules/pam_pwdb)
diff --git a/perl-install/c/stuff.pm b/perl-install/c/stuff.pm
index 37e0c9a3b..72b5b0bd3 100644
--- a/perl-install/c/stuff.pm
+++ b/perl-install/c/stuff.pm
@@ -1,4 +1,4 @@
-package c::stuff; # $Id$
+package c::stuff;
use strict;
use vars qw($VERSION @ISA);
diff --git a/perl-install/c/stuff.xs.pl b/perl-install/c/stuff.xs.pl
index 66971600d..1a148b497 100644..100755
--- a/perl-install/c/stuff.xs.pl
+++ b/perl-install/c/stuff.xs.pl
@@ -36,14 +36,9 @@ print '
#include <net/route.h>
#include <netinet/in.h>
#include <linux/sockios.h>
-
-// for ethtool structs:
-typedef unsigned long long u64;
-typedef __uint32_t u32;
-typedef __uint16_t u16;
-typedef __uint8_t u8;
-
#include <linux/ethtool.h>
+#include <linux/input.h>
+#include <execinfo.h>
// for UPS on USB:
# define HID_MAX_USAGES 1024
@@ -93,6 +88,18 @@ void log_perror(const char *msg) {
log_message("%s: %s", msg, strerror(errno));
}
+HV* common_pciusb_hash_init(struct pciusb_entry *e) {
+ HV *rh = (HV *)sv_2mortal((SV *)newHV());
+ hv_store(rh, "vendor", 6, newSViv(e->vendor), 0);
+ hv_store(rh, "subvendor", 9, newSViv(e->subvendor), 0);
+ hv_store(rh, "id", 2, newSViv(e->device), 0);
+ hv_store(rh, "subid", 5, newSViv(e->subdevice), 0);
+ hv_store(rh, "driver", 6, newSVpv(e->module ? e->module : "unknown", 0), 0);
+ hv_store(rh, "description", 11, newSVpv(e->text, 0), 0);
+ hv_store(rh, "pci_bus", 7, newSViv(e->pci_bus), 0);
+ hv_store(rh, "pci_device", 10, newSViv(e->pci_device), 0);
+ return rh;
+}
';
@@ -104,6 +111,31 @@ int length_of_space_padded(char *str, int len) {
return len;
}
+PedPartitionFlag string_to_pedpartflag(char*type) {
+ PedPartitionFlag flag = 0;
+ if (!strcmp(type, "ESP")) {
+ flag = PED_PARTITION_ESP;
+ } else if (!strcmp(type, "BIOS_GRUB")) {
+ flag = PED_PARTITION_BIOS_GRUB;
+ } else if (!strcmp(type, "LVM")) {
+ flag = PED_PARTITION_LVM;
+ } else if (!strcmp(type, "RAID")) {
+ flag = PED_PARTITION_RAID;
+ } else {
+ printf("set_partition_flag: unknown type: %s\n", type);
+ }
+ return flag;
+}
+
+int is_recovery_partition(PedPartition*part) {
+ /* FIXME: not sure everything is covered ... */
+ return ped_partition_get_flag(part, PED_PARTITION_HPSERVICE) // HP-UX service partition
+ || ped_partition_get_flag(part, PED_PARTITION_MSFT_RESERVED) // Microsoft Reserved Partition -> LDM metadata, ...
+ || ped_partition_get_flag(part, PED_PARTITION_DIAG) // ==> PARTITION_MSFT_RECOVERY (Windows Recovery Environment)
+ || ped_partition_get_flag(part, PED_PARTITION_APPLE_TV_RECOVERY)
+ || ped_partition_get_flag(part, PED_PARTITION_HIDDEN);
+}
+
MODULE = c::stuff PACKAGE = c::stuff
';
@@ -164,7 +196,7 @@ init_setlocale()
setlocale(LC_NUMERIC, "C"); /* otherwise eval "1.5" returns 1 in fr_FR for example */
char *
-setlocale(category, locale = 0)
+setlocale(category, locale = NULL)
int category
char * locale
@@ -252,21 +284,43 @@ void
usleep(microseconds)
unsigned long microseconds
+
+char*
+get_pci_description(int vendor_id,int device_id)
+
+void
+hid_probe()
+ PPCODE:
+ struct hid_entries entries = hid_probe();
+ int i;
+
+ EXTEND(SP, entries.nb);
+ for (i = 0; i < entries.nb; i++) {
+ struct hid_entry *e = &entries.entries[i];
+ HV *rh = (HV *)sv_2mortal((SV *)newHV());
+ hv_store(rh, "description", 11, newSVpv(e->text, 0), 0);
+ hv_store(rh, "driver", 6, newSVpv(e->module, 0), 0);
+ PUSHs(newRV((SV *)rh));
+ }
+ hid_entries_free(&entries);
+
void
pci_probe()
PPCODE:
- //proc_pci_path = "/tmp/pci";
struct pciusb_entries entries = pci_probe();
- char buf[2048];
int i;
EXTEND(SP, entries.nb);
for (i = 0; i < entries.nb; i++) {
struct pciusb_entry *e = &entries.entries[i];
- snprintf(buf, sizeof(buf), "%04x\t%04x\t%04x\t%04x\t%d\t%d\t%d\t%d\t%s\t%s\t%s\t%s",
- e->vendor, e->device, e->subvendor, e->subdevice, e->pci_domain, e->pci_bus, e->pci_device, e->pci_function,
- pci_class2text(e->class_id), e->class, e->module ? e->module : "unknown", e->text);
- PUSHs(sv_2mortal(newSVpv(buf, 0)));
+ HV * rh = common_pciusb_hash_init(e);
+ hv_store(rh, "pci_domain", 10, newSViv(e->pci_domain), 0);
+ hv_store(rh, "pci_function", 12, newSViv(e->pci_function), 0);
+ hv_store(rh, "pci_revision", 12, newSViv(e->pci_revision), 0);
+ hv_store(rh, "is_pciexpress", 13, newSViv(e->is_pciexpress), 0);
+ hv_store(rh, "nice_media_type", 15, newSVpv(e->class, 0), 0);
+ hv_store(rh, "media_type", 10, newSVpv(pci_class2text(e->class_id), 0), 0);
+ PUSHs(newRV((SV *)rh));
}
pciusb_free(&entries);
@@ -281,9 +335,11 @@ usb_probe()
for (i = 0; i < entries.nb; i++) {
struct pciusb_entry *e = &entries.entries[i];
struct usb_class_text class_text = usb_class2text(e->class_id);
- snprintf(buf, sizeof(buf), "%04x\t%04x\t%s|%s|%s\t%s\t%s\t%d\t%d",
- e->vendor, e->device, class_text.usb_class_text, class_text.usb_sub_text, class_text.usb_prot_text, e->module ? e->module : "unknown", e->text, e->pci_bus, e->pci_device);
- PUSHs(sv_2mortal(newSVpv(buf, 0)));
+ snprintf(buf, sizeof(buf), "%s|%s|%s", class_text.usb_class_text, class_text.usb_sub_text, class_text.usb_prot_text);
+ HV * rh = common_pciusb_hash_init(e);
+ hv_store(rh, "usb_port", 8, newSViv(e->usb_port), 0);
+ hv_store(rh, "media_type", 10, newSVpv(buf, 0), 0);
+ PUSHs(newRV((SV *)rh));
}
pciusb_free(&entries);
@@ -294,14 +350,14 @@ dmi_probe()
//dmidecode_file = "../../soft/ldetect-lst/test/dmidecode.Laptop.Sony-Vaio-GRX316MP";
struct dmi_entries entries = dmi_probe();
- char buf[2048];
int i;
EXTEND(SP, entries.nb);
for (i = 0; i < entries.nb; i++) {
- snprintf(buf, sizeof(buf), "%s\t%s",
- entries.entries[i].module, entries.entries[i].constraints);
- PUSHs(sv_2mortal(newSVpv(buf, 0)));
+ HV * rh = (HV *)sv_2mortal((SV *)newHV());
+ hv_store(rh, "driver", 6, newSVpv(entries.entries[i].module, 0), 0);
+ hv_store(rh, "description", 11, newSVpv(entries.entries[i].constraints, 0), 0);
+ PUSHs(newRV((SV *)rh));
}
dmi_entries_free(entries);
@@ -323,6 +379,9 @@ get_usb_ups_name(int fd)
int
+res_init()
+
+int
isNetDeviceWirelessAware(device)
char * device
CODE:
@@ -482,7 +541,41 @@ strftime(fmt, sec, min, hour, mday, mon, year, wday = -1, yday = -1, isdst = -1)
}
}
+#define BITS_PER_LONG (sizeof(long) * 8)
+#define NBITS(x) ((((x)-1)/BITS_PER_LONG)+1)
+#define OFF(x) ((x)%BITS_PER_LONG)
+#define BIT(x) (1UL<<OFF(x))
+#define LONG(x) ((x)/BITS_PER_LONG)
+#define test_bit(bit, array) ((array[LONG(bit)] >> OFF(bit)) & 1)
+void
+EVIocGBitKey (char *file)
+ PPCODE:
+ int fd;
+ int i;
+ long bitmask[NBITS(KEY_MAX)];
+
+ fd = open (file, O_RDONLY);
+ if (fd < 0) {
+ warn("Cannot open %s: %s\n", file, strerror(errno));
+ return;
+ }
+
+ if (ioctl (fd, EVIOCGBIT(EV_KEY, sizeof (bitmask)), bitmask) < 0) {
+ perror ("ioctl EVIOCGBIT failed");
+ close (fd);
+ return;
+ }
+
+ close (fd);
+ for (i = NBITS(KEY_MAX) - 1; i > 0; i--)
+ if (bitmask[i])
+ break;
+
+ for (; i >= 0; i--) {
+ EXTEND(sp, 1);
+ PUSHs(sv_2mortal(newSViv(bitmask[i])));
+ }
char *
kernel_version()
@@ -506,8 +599,10 @@ get_iso_volume_ids(int fd)
lseek(fd, 16 * ISOFS_BLOCK_SIZE, SEEK_SET);
if (read(fd, &voldesc, sizeof(struct iso_primary_descriptor)) == sizeof(struct iso_primary_descriptor)) {
if (voldesc.type[0] == ISO_VD_PRIMARY && !strncmp(voldesc.id, ISO_STANDARD_ID, sizeof(voldesc.id))) {
- XPUSHs(sv_2mortal(newSVpv(voldesc.volume_id, length_of_space_padded(voldesc.volume_id, sizeof(voldesc.volume_id)))));
- XPUSHs(sv_2mortal(newSVpv(voldesc.application_id, length_of_space_padded(voldesc.application_id, sizeof(voldesc.application_id)))));
+ size_t vol_id_len = length_of_space_padded(voldesc.volume_id, sizeof(voldesc.volume_id));
+ size_t app_id_len = length_of_space_padded(voldesc.application_id, sizeof(voldesc.application_id));
+ XPUSHs(vol_id_len != -1 ? sv_2mortal(newSVpv(voldesc.volume_id, vol_id_len)) : newSVpvs(""));
+ XPUSHs(app_id_len != -1 ? sv_2mortal(newSVpv(voldesc.application_id, app_id_len)) : newSVpvs(""));
}
}
@@ -515,16 +610,38 @@ get_iso_volume_ids(int fd)
print '
+TYPEMAP: <<HERE
+PedDisk* T_PTROBJ
+HERE
+
+
+
+int
+set_partition_flag(PedDisk *disk, int part_number, char * type)
+ CODE:
+ RETVAL = 0;
+ PedPartition* part = ped_disk_get_partition(disk, part_number);
+ if (!part) {
+ printf("set_partition_flag: failed to find partition\n");
+ } else {
+ PedPartitionFlag flag = string_to_pedpartflag(type);
+ if (flag) {
+ RETVAL = ped_partition_set_flag(part, flag, 1);
+ }
+ }
+ OUTPUT:
+ RETVAL
+
+
const char *
get_disk_type(char * device_path)
CODE:
PedDevice *dev = ped_device_get(device_path);
RETVAL = NULL;
if(dev) {
- PedDisk* disk = ped_disk_new(dev);
- if(disk) {
- RETVAL = disk->type->name;
- ped_disk_destroy(disk);
+ PedDiskType* type = ped_disk_probe(dev);
+ if(type) {
+ RETVAL = type->name;
}
}
OUTPUT:
@@ -536,133 +653,176 @@ get_disk_partitions(char * device_path)
PedDevice *dev = ped_device_get(device_path);
if(dev) {
PedDisk* disk = ped_disk_new(dev);
- PedPartition *part = NULL;
- if(disk)
- part = ped_disk_next_partition(disk, NULL);
+ PedPartition *part = NULL, *first_part = NULL;
+ int count = 1;
+ if(!disk)
+ return;
+ first_part = part = ped_disk_next_partition(disk, NULL);
while(part) {
- if(part->num != -1) {
- char desc[4196];
- char *path = ped_partition_get_path(part);
- sprintf(desc, "%d ", part->num);
- sprintf(desc+strlen(desc), "%s ", path);
- free(path);
- if(part->fs_type)
- strcat(desc, part->fs_type->name);
- if(part->type == 0x0)
- strcat(desc, " normal");
- else {
- if(part->type & PED_PARTITION_LOGICAL)
- strcat(desc, " logical");
- if(part->type & PED_PARTITION_EXTENDED)
- strcat(desc, " extended");
- if(part->type & PED_PARTITION_FREESPACE)
- strcat(desc, " freespace");
- if(part->type & PED_PARTITION_METADATA)
- strcat(desc, " metadata");
- if(part->type & PED_PARTITION_PROTECTED)
- strcat(desc, " protected");
- }
- sprintf(desc+strlen(desc), " (%lld,%lld,%lld)", part->geom.start, part->geom.end, part->geom.length);
- XPUSHs(sv_2mortal(newSVpv(desc, 0)));
+ part = ped_disk_next_partition(disk, part);
+ count++;
+ }
+ EXTEND(SP, count);
+ part = first_part;
+ while(part) {
+ if(part->num == -1) {
+ part = ped_disk_next_partition(disk, part);
+ continue;
}
+ char *path = ped_partition_get_path(part);
+ char *flag = "";
+ if (ped_partition_get_flag(part, PED_PARTITION_ESP)) {
+ flag = "ESP";
+ } else if (ped_partition_get_flag(part, PED_PARTITION_BIOS_GRUB)) {
+ flag = "BIOS_GRUB";
+ } else if (ped_partition_get_flag(part, PED_PARTITION_LVM)) {
+ flag = "LVM";
+ } else if (ped_partition_get_flag(part, PED_PARTITION_RAID)) {
+ flag = "RAID";
+ } else if (is_recovery_partition(part)) {
+ flag = "RECOVERY";
+ }
+ HV * rh = (HV *)sv_2mortal((SV *)newHV());
+ hv_store(rh, "part_number", 11, newSViv(part->num), 0);
+ hv_store(rh, "real_device", 11, newSVpv(path, 0), 0);
+ hv_store(rh, "start", 5, newSViv(part->geom.start), 0);
+ hv_store(rh, "size", 4, newSViv(part->geom.length), 0);
+ hv_store(rh, "pt_type", 7, newSViv(0xba), 0);
+ hv_store(rh, "flag", 4, newSVpv(flag, 0), 0);
+ free(path);
+ if(part->fs_type)
+ hv_store(rh, "fs_type", 7, newSVpv(part->fs_type->name, 0), 0);
+ PUSHs(newRV((SV *)rh));
part = ped_disk_next_partition(disk, part);
}
- if(disk)
- ped_disk_destroy(disk);
+ ped_disk_destroy(disk);
}
-int
-set_disk_type(char * device_path, const char * type_name)
+PedDisk*
+disk_open(char * device_path, const char * type_name = NULL)
CODE:
PedDevice *dev = ped_device_get(device_path);
- RETVAL = 0;
+ RETVAL = NULL;
if(dev) {
- PedDiskType* type = ped_disk_type_get(type_name);
- if(type) {
- PedDisk* disk = ped_disk_new_fresh(dev, type);
- if(disk) {
- RETVAL = ped_disk_commit(disk);
- ped_disk_destroy(disk);
+ if(type_name) {
+ PedDiskType* type = ped_disk_type_get(type_name);
+ if(type) {
+ RETVAL = ped_disk_new_fresh(dev, type);
}
+ } else {
+ RETVAL = ped_disk_new(dev);
}
}
OUTPUT:
RETVAL
int
-disk_delete_all(char * device_path)
+disk_delete_all(PedDisk* disk)
CODE:
- PedDevice *dev = ped_device_get(device_path);
RETVAL = 0;
- if(dev) {
- PedDisk* disk = ped_disk_new(dev);
- if(disk) {
- RETVAL = ped_disk_delete_all(disk);
- if(RETVAL)
- RETVAL = ped_disk_commit(disk);
- ped_disk_destroy(disk);
- }
+ if (ped_disk_delete_all(disk)) {
+ RETVAL = 1;
}
OUTPUT:
RETVAL
int
-disk_del_partition(char * device_path, int part_number)
+disk_del_partition(PedDisk* disk, int part_number)
CODE:
- PedDevice *dev = ped_device_get(device_path);
RETVAL = 0;
- if(dev) {
- PedDisk* disk = ped_disk_new(dev);
- if(disk) {
- PedPartition* part = ped_disk_get_partition(disk, part_number);
- if(!part) {
- printf("disk_del_partition: failed to find partition\n");
- } else {
- RETVAL=ped_disk_delete_partition(disk, part);
- if(RETVAL) {
- RETVAL = ped_disk_commit(disk);
- } else {
- printf("del_partition failed\n");
- }
+ PedPartition* part = ped_disk_get_partition(disk, part_number);
+ if(!part) {
+ printf("disk_del_partition: failed to find partition\n");
+ } else {
+ RETVAL = ped_disk_delete_partition(disk, part);
+ }
+ OUTPUT:
+ RETVAL
+
+int
+disk_add_partition(PedDisk* disk, double start, double length, const char * fs_type)
+ CODE:
+ RETVAL=0;
+ PedGeometry* geom = ped_geometry_new(disk->dev, (long long)start, (long long)length);
+ PedPartition* part = ped_partition_new (disk, PED_PARTITION_NORMAL, ped_file_system_type_get(fs_type), (long long)start, (long long)start+length-1);
+ PedConstraint* constraint = ped_constraint_new_from_max(geom);
+ if(!part) {
+ printf("ped_partition_new failed\n");
+ } else {
+ RETVAL = ped_disk_add_partition (disk, part, constraint);
+ }
+ ped_geometry_destroy(geom);
+ ped_constraint_destroy(constraint);
+ OUTPUT:
+ RETVAL
+
+int
+disk_commit(PedDisk *disk)
+ CODE:
+ RETVAL = 0;
+ /* As done in ped_disk_commit(), open the device here, so that the underlying
+ file descriptor is not closed between the call to ped_disk_commit_to_dev()
+ and the call to ped_disk_commit_to_os(). This avoids unwanted udev events. */
+ if (ped_device_open(disk->dev)) {
+ if (ped_disk_commit_to_dev(disk)) {
+ RETVAL = 1;
+ if (ped_disk_commit_to_os(disk)) {
+ RETVAL = 2;
}
- ped_disk_destroy(disk);
}
+ ped_device_close(disk->dev);
}
+ ped_disk_destroy(disk);
OUTPUT:
RETVAL
int
-disk_add_partition(char * device_path, double start, double length, const char * fs_type)
+tell_kernel_to_reread_partition_table(char * device_path)
CODE:
PedDevice *dev = ped_device_get(device_path);
RETVAL=0;
if(dev) {
PedDisk* disk = ped_disk_new(dev);
- if(disk) {
- PedGeometry* geom = ped_geometry_new(dev, (long long)start, (long long)length);
- PedPartition* part = ped_partition_new (disk, PED_PARTITION_NORMAL, ped_file_system_type_get(fs_type), (long long)start, (long long)start+length-1);
- PedConstraint* constraint = ped_constraint_new_from_max(geom);
- if(!part) {
- printf("ped_partition_new failed\n");
- } else
- RETVAL = ped_disk_add_partition (disk, part, constraint);
- if(RETVAL) {
- RETVAL = ped_disk_commit(disk);
- } else {
- printf("add_partition failed\n");
- }
- ped_geometry_destroy(geom);
- ped_constraint_destroy(constraint);
+ if (disk) {
+ if (ped_disk_commit_to_os (disk))
+ RETVAL=1;
ped_disk_destroy(disk);
}
}
OUTPUT:
RETVAL
+#define BACKTRACE_DEPTH 20
+
+
+char*
+C_backtrace()
+ CODE:
+ static char buf[1024];
+ int nAddresses, i;
+ unsigned long idx = 0;
+ void * addresses[BACKTRACE_DEPTH];
+ char ** symbols = NULL;
+ nAddresses = backtrace(addresses, BACKTRACE_DEPTH);
+ symbols = backtrace_symbols(addresses, nAddresses);
+ if (symbols == NULL) {
+ idx += sprintf(buf+idx, "ERROR: Retrieving symbols failed.\n");
+ } else {
+ /* dump stack trace */
+ for (i = 0; i < nAddresses; ++i)
+ idx += sprintf(buf+idx, "%d: %s\n", i, symbols[i]);
+ }
+ RETVAL = strdup(buf);
+ OUTPUT:
+ RETVAL
+
+
+
+
';
@macros = (
- [ qw(int S_IFCHR S_IFBLK S_IFIFO KDSKBENT K_NOSUCHMAP NR_KEYS MAX_NR_KEYMAPS BLKRRPART TIOCSCTTY
+ [ qw(int S_IFCHR S_IFBLK S_IFIFO S_IFMT KDSKBENT K_NOSUCHMAP NR_KEYS MAX_NR_KEYMAPS BLKRRPART TIOCSCTTY
HDIO_GETGEO LOOP_GET_STATUS
MS_MGC_VAL O_WRONLY O_RDWR O_CREAT O_NONBLOCK F_SETFL F_GETFL WNOHANG
VT_ACTIVATE VT_WAITACTIVE VT_GETSTATE
@@ -695,4 +855,3 @@ print '
PROTOTYPES: DISABLE
';
-
diff --git a/perl-install/common.pm b/perl-install/common.pm
index 3eb223cd5..508e6b31f 100644
--- a/perl-install/common.pm
+++ b/perl-install/common.pm
@@ -1,4 +1,4 @@
-package common; # $Id$
+package common;
use MDK::Common;
use diagnostics;
@@ -10,11 +10,16 @@ use run_program;
use Exporter;
our @ISA = qw(Exporter);
-our @EXPORT = qw($SECTORSIZE N P N_ check_for_xserver files_exist formatTime MB formatXiB get_parent_uid is_running makedev mandrake_release mandrake_release_info removeXiBSuffix require_root_capability setVirtual set_alternative set_l10n_sort set_permissions to_utf8 translate unmakedev);
+our @EXPORT = qw($SECTORSIZE N P N_ check_for_xserver files_exist formatTime MB formatXiB get_libdir get_parent_uid is_running is_uefi kernel_uefi_type makedev mageia_release mageia_release_info mount_efivars removeXiBSuffix require_root_capability setVirtual set_alternative set_l10n_sort set_permissions to_utf8 translate uefi_type unmakedev);
# perl_checker: RE-EXPORT-ALL
push @EXPORT, @MDK::Common::EXPORT;
+=head1 SYNOPSYS
+
+B<common> re-export L<MDK::Common> and offers a couple widely used functions.
+
+=cut
$::prefix ||= ""; # no warning
@@ -23,24 +28,55 @@ $::prefix ||= ""; # no warning
#-#####################################################################################
our $SECTORSIZE = 512;
-#-#####################################################################################
-#- Functions
-#-#####################################################################################
+=head1 Functions
-sub P {
- my ($s_singular, $s_plural, $nb, @para) = @_;
- sprintf(translate($s_singular, $s_plural, $nb), @para);
-}
+=head2 Translating
+
+=over
+
+=item N($format, ...)
+
+translate a message by calling gettext(). eg:
+
+ N("Summary")
+ N("File %s is on %s", "/etc/passwd", "/dev/sda2")
+
+It must B<not> be used called before L<ugtk3> is initialized, otherwise the gettext is not forced to UTF-8.
+
+=cut
sub N {
my ($s, @para) = @_;
sprintf(translate($s), @para);
}
+
+=item N_($format, @param)
+
+Similar to C<N()>, but message is not actually translated.
+It tags the message as translatable so that it will end in the
+translation catalogs.
+
+In order for the message to be translated, C<translate()> must be called
+before using the message.
+
+=cut
+
sub N_ { $_[0] }
+=item P($s_singular, $s_plural, $nb, @extra_para)
-sub makedev { ($_[0] << 8) | $_[1] }
-sub unmakedev { $_[0] >> 8, $_[0] & 0xff }
+Similar to C<N()>, but two messages are provided: one for the singular case, one for the
+plural case. At runtime, a number is provided in order to choose the message to use.
+eg:
+
+ P("%d package", "%d packages", $nb, $nb)
+
+=cut
+
+sub P {
+ my ($s_singular, $s_plural, $nb, @para) = @_;
+ sprintf(translate($s_singular, $s_plural, $nb), @para);
+}
sub translate_real {
my ($s, $o_plural, $o_nb) = @_;
@@ -54,29 +90,68 @@ sub translate_real {
}
# when utf8 pragma is in use, Locale::gettext() returns an utf8 string not tagged as such:
c::set_tagged_utf8($s2) if !utf8::is_utf8($s2) && utf8::is_utf8($s);
- return $s2 if $s ne $s2 && $s2 ne $o_plural;
+ return $s2 if !member($s2, $s, $o_plural);
}
# didn't lookup anything or locale is "C":
$s2;
}
+=item remove_translate_context($string)
+
+Remove an ala-KDE context message. eg:
+
+ "_: this is verb\nOpen"
+ "_: Keep these entry short\nNetworking"
+
+=cut
+
sub remove_translate_context {
my ($s) = @_;
#- translation with context, kde-like
- $s =~ s/^_:.*\n//;
+ $s =~ s/^_:.*(?:\n)?//g;
$s;
}
+=item translate($string)
+
+Translate the message according to the current locale.
+The string is B<not> tagged as translatable and will B<not> end in
+translations catalogs.
+
+perl_checker only extracts strings tagged by C<N()>, C<N_()> or C<P()>.
+
+=cut
+
sub translate {
my $s = translate_real(@_);
- $::one_message_has_been_translated ||= join(':', (caller(1))[1,2]); #- see mygtk2.pm
+ $::one_message_has_been_translated ||= join(':', (caller(1))[1,2]); #- see mygtk3.pm
remove_translate_context($s);
}
+=back
+
+=head2 Conversion
+
+=over
+
+=item from_utf8($s)
+
+Convert an UTF-8 string into current locale's encoding.
+
+=cut
+
sub from_utf8 {
my ($s) = @_;
Locale::gettext::iconv($s, "utf-8", undef); #- undef = locale charmap = nl_langinfo(CODESET)
}
+
+=item to_utf8($s)
+
+The reverse of C<from_utf8()>: convert a string from current locale's encoding to UTF-8.
+Also make sure the string is properly tagged as UTF-8 as concerning Perl
+
+=cut
+
sub to_utf8 {
my ($s) = @_;
my $str = Locale::gettext::iconv($s, undef, "utf-8"); #- undef = locale charmap = nl_langinfo(CODESET)
@@ -84,10 +159,15 @@ sub to_utf8 {
$str;
}
-#- This is needed because text printed by Gtk2 will always be encoded
-#- in UTF-8;
-#- we first check if LC_ALL is defined, because if it is, changing
-#- only LC_COLLATE will have no effect.
+=item set_l10n_sort()
+
+This is needed because text printed by L<Gtk3> will always be encoded
+in UTF-8;
+we first check if LC_ALL is defined, because if it is, changing
+only LC_COLLATE will have no effect.
+
+=cut
+
sub set_l10n_sort() {
my $collation_locale = $ENV{LC_ALL};
if (!$collation_locale) {
@@ -109,16 +189,51 @@ sub setVirtual {
sub nonblock {
my ($F) = @_;
- fcntl($F, c::F_SETFL(), fcntl($F, c::F_GETFL(), 0) | c::O_NONBLOCK()) or die "can not fcntl F_SETFL: $!";
+ fcntl($F, c::F_SETFL(), fcntl($F, c::F_GETFL(), 0) | c::O_NONBLOCK()) or die "cannot fcntl F_SETFL: $!";
}
-#- return a size in sector
-#- ie MB(1) is 2048 sectors, which is 1MB
+=item makedev($major, $minor)
+
+Given major and minor device IDs, makedev() combines these to return a device ID
+(eg for mknod())
+
+=cut
+
+sub makedev { ($_[0] << 8) | $_[1] }
+
+=item unmakedev($device_id)
+
+The reverse of C<makedev()>: given a device ID, it will return both major and minor device IDs.
+
+=cut
+
+sub unmakedev { $_[0] >> 8, $_[0] & 0xff }
+
+=item MB($suffixed_number)
+
+return a size in sector
+ie C<MB(1)> is 2048 sectors, which is 1MB
+
+eg:
+
+ MB("10") => 20480
+
+=cut
+
sub MB {
my ($nb_MB) = @_;
$nb_MB * 2048;
}
+=item removeXiBSuffix($string)
+
+Remove the XiB suffix and return the number. eg:
+
+ "10k" => 10240
+ "2M" => 2097152
+
+=cut
+
sub removeXiBSuffix {
local $_ = shift;
@@ -128,6 +243,20 @@ sub removeXiBSuffix {
/(\d+)\s*TB?$/i and return $1 * 1024 * 1024 * 1024 * 1024;
$_;
}
+
+=item formatXiB($number [, $base])
+
+The reverse of C<removeXiBSuffix()>, returns a nicely human size. eg:
+
+ 2097152 => "2MB"
+
+The optional parameter enables to provide the unit size (default is one).
+eg for a 2000 512 sized sectors:
+
+ formatXiB(2000, 512)
+
+=cut
+
sub formatXiB {
my ($newnb, $o_newbase) = @_;
my $newbase = $o_newbase || 1;
@@ -154,7 +283,9 @@ sub formatXiB {
sub formatTime {
my ($s, $m, $h) = gmtime($_[0]);
if ($h) {
- sprintf "%02d:%02d", $h, $m;
+ sprintf
+ #-PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+ N("%02d:%02d", $h, $m);
} elsif ($m > 1) {
N("%d minutes", $m);
} elsif ($m == 1) {
@@ -200,6 +331,12 @@ sub formatError {
&MDK::Common::String::formatError($err);
}
+=item group_by($f, @list)
+
+Group the elements of @list in array references according to the $f comparison function.
+
+=cut
+
sub group_by(&@) {
my $f = shift;
@_ or return;
@@ -216,7 +353,14 @@ sub group_by(&@) {
@l;
}
-# Group the list by n. Returns a reference of lists of length n
+=item group_n_lm($n, @list)
+
+Group the list by n. Returns a reference of lists of length n
+
+See also C<group_by2(LIST)> from L<MDK::Common::DataStructure>
+
+=cut
+
sub group_n_lm {
my $n = shift;
my @l;
@@ -224,6 +368,12 @@ sub group_n_lm {
@l;
}
+=item join_lines(@strings)
+
+Concatenate adjacent strings if laters begin with spaces.
+
+=cut
+
sub join_lines {
my @l;
my $s;
@@ -248,7 +398,7 @@ sub read_alternative {
sub set_alternative {
my ($command, $executable) = @_;
- #- check the existance of $executable as an alternative for $command
+ #- check the existence of $executable as an alternative for $command
#- (is this needed???)
run_program::rooted_get_stdout($::prefix, 'update-alternatives', '--display', $command) =~ /^\Q$executable /m or return;
@@ -261,13 +411,31 @@ sub files_exist { and_(map { -f "$::prefix$_" } @_) }
sub open_file {
my ($file) = @_;
my $F;
- open($F, $file) ? $F : do { log::l("Can not open $file: $!"); undef };
+ open($F, $file) ? $F : do { log::l("Cannot open $file: $!"); undef };
}
+=item secured_file($f)
+
+A wrapper around c::is_secure_file().
+
+Callers should probably just use C<mkstemp()> in /tmp.
+=cut
+
+# FIXME: callers should just use mkstemp in /tmp instead of relying on $TMPDIR || $ENV{HOME}/tmp
+# or we should just move the choice of directory from callers to here:
+# my $tmpdir = find { -d $_ } $ENV{TMPDIR}, "$ENV{HOME}/tmp", "$::prefix/tmp";
sub secured_file {
my ($f) = @_;
- c::is_secure_file($f) or die "can not ensure a safe $f";
+ my $d = dirname($f);
+ if (! -d $d) {
+ mkdir_p($d);
+ if ($d =~ /^$ENV{HOME}/) {
+ my ($user) = grep { $_->[7] eq $ENV{HOME} } list_passwd();
+ chown($user->[2], $user->[3], $d);
+ }
+ }
+ c::is_secure_file($f) or die "cannot ensure a safe $f";
$f;
}
@@ -332,6 +500,20 @@ sub is_running {
}
}
+=back
+
+=head2 Release files
+
+=over
+
+=item parse_release_file($prefix, $f, $part)
+
+Parses the $f release file in $prefix from the $part device.
+
+Returns a hash containing C<release>, C<version>, C<release_file>, C<part> & C<arch> fields.
+
+=cut
+
sub parse_release_file {
my ($prefix, $f, $part) = @_;
chomp(my $s = cat_("$prefix$f"));
@@ -339,19 +521,31 @@ sub parse_release_file {
my $arch = $s =~ s/\s+for\s+(\S+)// && $1;
log::l("find_root_parts found $part->{device}: $s for $arch" . ($f !~ m!/etc/! ? " in special release file $f" : ''));
{ release => $s, version => $version,
- release_file => $f, part => $part, arch => $arch };
+ release_file => $f, part => $part, 'arch' => $arch };
}
+=item release_file($o_dir)
+
+Returns the release file name.
+
+=cut
+
sub release_file {
my ($o_dir) = @_;
- my @names = ('mandrakelinux-release', 'mandrake-release', 'conectiva-release', 'release', 'redhat-release', 'fedora-release', 'SuSE-release');
+ my @names = ('mageia-release', 'mandriva-release', 'mandrakelinux-release', 'mandrake-release', 'conectiva-release', 'release', 'redhat-release', 'fedora-release', 'SuSE-release');
find { -r "$o_dir$_" } (
(map { "/root/drakx/$_.upgrading" } @names),
(map { "/etc/$_" } @names),
);
}
-sub mandrake_release_info() {
+=item mageia_release_info()
+
+Parses C</etc/product.id> and returns a hash.
+
+=cut
+
+sub mageia_release_info() {
parse_LDAP_namespace_structure(cat_('/etc/product.id'));
}
@@ -361,45 +555,81 @@ sub parse_LDAP_namespace_structure {
\%h;
}
-sub mandrake_release {
+=item mageia_release($o_dir)
+
+returns the content of Mageia release file from given directory (optional).
+
+=cut
+
+sub mageia_release {
my ($o_dir) = @_;
my $f = release_file($o_dir);
$f && chomp_(cat_("$o_dir$f"));
}
+=back
+
+=head2 Misc
+
+=over
+
+
+=item get_parent_uid()
+
+Returns UID of the parent process.
+
+=cut
+
sub get_parent_uid() {
cat_('/proc/' . getppid() . '/status') =~ /Uid:\s*(\d+)/ ? $1 : undef;
}
-sub wrap_command_for_root {
- my ($name, @args) = @_;
- ([ 'consolehelper', $name ], @args);
-}
+=item require_root_capability()
+
+Ensure we are running as root.
+
+=cut
sub require_root_capability() {
return if $::testing || !$>; # we're already root
- my ($command, @args) = wrap_command_for_root($0, @ARGV);
- exec { $command->[0] } $command->[1], @args or die N("command %s missing", $command->[0]);
-
- # still not root ?
- die "you must be root to run this program" if $>;
+ die "you must be root to run this program";
}
+=item check_for_xserver()
+
+Test if we have access to X11.
+This eg enables interactive to use the proper backend (either text mode or
+GUI)
+
+=cut
+
sub check_for_xserver() {
if (!defined $::xtest) {
$::xtest = 0;
eval {
- require xf86misc::main;
- $::xtest = xf86misc::main::Xtest($ENV{DISPLAY});
+ require Gtk3;
+ Gtk3->import;
+ $::xtest = Gtk3::init_check();
} if $ENV{DISPLAY};
}
return $::xtest;
}
-#- special unpack
-#- - returning an array refs for each element like "s10"
-#- - handling things like s10* at the end of the format
+=item unpack_with_refs($format, $s)
+
+special unpack:
+
+=over 4
+
+=item * returning an array refs for each element like C<s10>
+
+=item * handling things like C<s10*> at the end of the format
+
+=back
+
+=cut
+
sub unpack_with_refs {
my ($format, $s) = @_;
my $initial_format = $format;
@@ -419,6 +649,12 @@ sub unpack_with_refs {
@r;
}
+=item md5file(@files)
+
+Returns the MD5 signatures of @files in list context or signature of the first one in scalar context.
+
+=cut
+
#- used in userdrake and mdkonline
sub md5file {
require Digest::MD5;
@@ -478,4 +714,83 @@ sub update_gnomekderc_no_create {
}
}
+sub get_libdir() {
+ arch() =~ /x86_64/ ? "lib64" : "lib";
+}
+
+=item is_uefi()
+
+Checks if we are on an uefi system
+
+=cut
+
+sub is_uefi() { -e "/sys/firmware/efi" }
+
+=item kernel_uefi_type()
+
+Returns the short name of the UEFI machine type supported by the kernel stub loader
+
+=cut
+
+sub kernel_uefi_type() {
+ my $arch = arch();
+ if ($arch eq 'aarch64') {
+ return 'aa64';
+ }
+ $arch =~ /i.86/ ? 'ia32' : 'x64';
+}
+
+=item uefi_type()
+
+Returns the UEFI machine type short name
+
+=cut
+
+sub uefi_type() {
+ if (arch() eq 'aarch64') {
+ return 'aa64';
+ }
+ if (-e '/sys/firmware/efi/fw_platform_size') {
+ cat_('/sys/firmware/efi/fw_platform_size') =~ /32/ ? 'ia32' : 'x64';
+ } else {
+ 'none';
+ }
+}
+
+=item mount_efivars()
+
+Ensures the efivarfs pseudo-filesystem is mounted in the default location
+and returns the mount point and whether it was already mounted.
+
+=cut
+
+sub mount_efivars {
+ my $mount_point = "$::prefix/sys/firmware/efi/efivars";
+ my $already_mounted = cat_("$::prefix/proc/mounts") =~ /\s$mount_point\s/;
+ run_program::run('mount', '-t', 'efivarfs', 'none', $mount_point) if !$already_mounted;
+ ($mount_point, $already_mounted);
+}
+
+=item cmp_kernel_versions($va, $vb)
+
+Compare two kernel versions
+
+=cut
+
+sub cmp_kernel_versions {
+ my ($va, $vb) = @_;
+ my $rel_a = $va =~ s/-(.*)$// && $1;
+ my $rel_b = $vb =~ s/-(.*)$// && $1;
+ ($va, $vb) = map { [ split /[.-]/ ] } $va, $vb;
+ my $r = 0;
+ mapn_ {
+ $r ||= $_[0] <=> $_[1];
+ } $va, $vb;
+ $r || $rel_a <=> $rel_b || $rel_a cmp $rel_b;
+}
+
+=back
+
+=cut
+
1;
diff --git a/perl-install/cpufreq.pm b/perl-install/cpufreq.pm
index 5468e45ae..bbcf56700 100644
--- a/perl-install/cpufreq.pm
+++ b/perl-install/cpufreq.pm
@@ -74,15 +74,6 @@ sub probe_gsx() {
find_pci_device([ 0x1078, 0x0100 ], [ 0x1078, 0x0002 ], [ 0x1078, 0x0000 ]);
}
-sub probe_powerpc() {
- arch() =~ /ppc/ && any {
- member($_->{motherboard}, ('PowerBook3,4', 'PowerBook3,5', 'PowerBook4,1', 'PowerBook3,2', 'MacRISC3')) &&
- # Kernel contains a special case for the supported 750FX,
- # not sure if the cpu name can be used, so use same test as kernel
- first($_->{revision} =~ /\bpvr\s+(\d+)\b/) == 7000;
- } get_cpus();
-}
-
sub probe_p4() {
any {
get_vendor($_) eq "Intel" && (
@@ -109,9 +100,11 @@ sub probe_powernow_k7() {
sub probe_powernow_k8() {
any {
- get_vendor($_) eq "AMD" &&
- $_->{'cpu family'} == 15 &&
- ($_->{'power management'} =~ /\bfid\b/ || has_flag($_, 'fid')); # frequency ID control
+ get_vendor($_) eq "AMD" && (
+ ($_->{'cpu family'} == 15 && ($_->{'power management'} =~ /\bfid\b/ || has_flag($_, 'fid'))) # frequency ID control)
+ ||
+ $_->{'cpu family'} == 16 && ($_->{'power management'} =~ /\bhwpstate\b/) # support for Athlon/Phenom II processors (#58477))
+ );
} get_cpus();
}
@@ -123,6 +116,15 @@ sub probe_longhaul() {
} get_cpus();
}
+sub probe_e_powersaver() {
+ any {
+ get_vendor($_) eq "Centaur" &&
+ has_flag($_, 'est') &&
+ $_->{'cpu family'} == 6 &&
+ member($_->{model}, 10, 13);
+ } get_cpus();
+}
+
sub probe_longrun() {
any {
get_vendor($_) eq "Transmeta" &&
@@ -146,6 +148,7 @@ my @modules = (
[ "powernow-k7", \&probe_powernow_k7 ],
[ "powernow-k8", \&probe_powernow_k8 ],
[ "longhaul", \&probe_longhaul ],
+ [ "e_powersaver", \&probe_e_powersaver ],
[ "longrun", \&probe_longrun ],
);
@@ -154,11 +157,11 @@ sub find_driver() {
$m && $m->[0];
}
-my @governor_modules = map { "cpufreq_$_" } qw(performance powersave conservative ondemand);
+my @governor_modules = map { "cpufreq_$_" } qw(powersave conservative ondemand);
sub get_modules() {
my $module;
- if (probe_powerpc() || ($module = find_driver())) {
+ if ($module = find_driver()) {
return if_($module, $module), @governor_modules;
}
();
diff --git a/perl-install/dbus_object.pm b/perl-install/dbus_object.pm
index dc9df0d54..5c59de7e0 100644
--- a/perl-install/dbus_object.pm
+++ b/perl-install/dbus_object.pm
@@ -44,20 +44,20 @@ sub safe_call_method {
@ret;
}
-sub set_gtk2_watch {
+sub set_gtk3_watch {
my ($o) = @_;
- set_gtk2_watch_helper($o->{bus});
+ set_gtk3_watch_helper($o->{bus});
}
-sub set_gtk2_watch_helper {
+sub set_gtk3_watch_helper {
my ($bus) = @_;
$bus->{connection}->set_watch_callbacks(sub {
my ($con, $watch) = @_;
my $flags = $watch->get_flags;
require Net::DBus::Binding::Watch;
- require Gtk2::Helper;
+ require Gtk3::Helper;
if ($flags & &Net::DBus::Binding::Watch::READABLE) {
- Gtk2::Helper->add_watch($watch->get_fileno, 'in', sub {
+ Gtk3::Helper->add_watch($watch->get_fileno, 'in', sub {
$watch->handle(&Net::DBus::Binding::Watch::READABLE);
$con->dispatch;
1;
diff --git a/perl-install/detect_devices.pm b/perl-install/detect_devices.pm
index 6042b29e5..48dadadbb 100644
--- a/perl-install/detect_devices.pm
+++ b/perl-install/detect_devices.pm
@@ -1,4 +1,4 @@
-package detect_devices; # $Id$
+package detect_devices;
use diagnostics;
use strict;
@@ -8,6 +8,7 @@ use vars qw($pcitable_addons $usbtable_addons);
#- misc imports
#-######################################################################################
use log;
+use MDK::Common; # help perl_checker
use common;
use devices;
use run_program;
@@ -15,6 +16,39 @@ use modules;
use c;
use feature 'state';
+
+=head1 SYNOPSYS
+
+The B<detect_devices> modules offers a high level API for detecting devices.*
+It mostly relies on the L<c> modules for gluing libldetect back into the Perl world, and thus
+being able to enumerate DMI/HID/PCI/USB devices.
+
+Other devices are mostly detected through C</proc> & C</sys>.
+
+Then the L<list_modules> enables to map modules into categories such as:
+
+=over 4
+
+=item * C<network/ethernet,>
+
+=item * C<network/wireless,>
+
+=item * C<network/wifi,>
+
+=item * C<disk/sata,>
+
+=item * C<disk/scsi,>
+
+=item * ...
+
+=back
+
+This enables to detect a category by mapping drivers to categories.
+
+=head1 Listing block devices
+
+=cut
+
#-#####################################################################################
#- Globals
#-#####################################################################################
@@ -24,6 +58,14 @@ my %serialprobe;
#- Functions
#-######################################################################################
+=over
+
+=item get()
+
+Returns a list of all block devices (IDE, SCSI, SATA, virtual, RAID, ...)
+
+=cut
+
sub get() {
#- Detect the default BIOS boot harddrive is kind of tricky. We may have IDE,
#- SCSI and RAID devices on the same machine. From what I see so far, the default
@@ -32,7 +74,7 @@ sub get() {
#- 2. The first SCSI device if SCSI exists. Or
#- 3. The first RAID device if RAID exists.
- getIDE(), getSCSI(), getVirtIO(), getDAC960(), getCompaqSmartArray(), getATARAID();
+ getIDE(), getSCSI(), getMmcBlk(), getNVMe(), getXenBlk(), getVirtIO(), getDAC960(), getCompaqSmartArray();
}
sub hds() { grep { may_be_a_hd($_) } get() }
sub tapes() { grep { $_->{media_type} eq 'tape' } get() }
@@ -53,16 +95,22 @@ sub floppies {
require modules;
state @fds;
state $legacy_already_detected;
+
+ $o_not_detect_legacy_floppies = 1 if arch() =~ /arm/;
+
if (!$o_not_detect_legacy_floppies && !$legacy_already_detected) {
$legacy_already_detected = 1;
- eval { modules::load("floppy") if $::isInstall };
+ if ($::isInstall) {
+ eval { modules::load("floppy") };
+ system(qw(udevadm settle)) if !$@;
+ }
#- do not bother probing /dev/fd0 and loading floppy device uselessly,
#- it takes time and it is already done by boot process (if not in install):
#- /dev/fd0 is created by start_udev (/etc/udev/devices.d/default.nodes)
#- then hal probes /dev/fd0 and triggers floppy module loading through kernel's kmod
if (any { (split)[1] eq 'fd' } cat_("/proc/devices")) {
@fds = map {
- my $info = c::floppy_info(devices::make("fd$_"));
+ my $info = c::floppy_info("/dev/fd$_");
if_($info && $info ne '(null)', { device => "fd$_", media_type => 'fd', info => $info });
} qw(0 1);
}
@@ -120,10 +168,11 @@ sub complete_usb_storage_info {
if (my $e = find { !$_->{found} && $_->{usb_vendor} == $usb->{vendor} && $_->{usb_id} == $usb->{id} } @usb) {
my $host = get_sysfs_usbpath_for_block($e->{device});
if ($host) {
- $e->{info} = chomp_(cat_("/sys/block/$e->{device}/$host/../serial"));
+ my $file = "/sys/block/$host/../serial";
+ $e->{info} = chomp_(cat_($file)) if -e $file;
$e->{usb_description} = join('|',
- chomp_(cat_("/sys/block/$e->{device}/$host/../manufacturer")),
- chomp_(cat_("/sys/block/$e->{device}/$host/../product")));
+ chomp_(cat_("/sys/block/$host/../manufacturer")),
+ chomp_(cat_("/sys/block/$host/../product")));
}
local $e->{found} = 1;
$e->{"usb_$_"} ||= $usb->{$_} foreach keys %$usb;
@@ -169,7 +218,7 @@ sub get_sysfs_field_from_link {
sub get_sysfs_usbpath_for_block {
my ($device) = @_;
- my $host = readlink("/sys/block/$device/device");
+ my $host = readlink("/sys/block/$device");
$host =~ s!/host.*!!;
$host;
}
@@ -180,10 +229,17 @@ sub get_scsi_driver {
foreach (@l) {
next if $_->{driver};
my $host = get_sysfs_usbpath_for_block($_->{device});
- $_->{driver} = get_sysfs_field_from_link("/sys/block/$_->{device}/$host", 'driver');
+ require list_modules;
+ $_->{driver} = list_modules::filename2modname(get_sysfs_field_from_link("/sys/block/$host", 'driver'));
}
}
+=item getSCSI()
+
+Returns a list of all SCSI device.
+
+=cut
+
sub getSCSI() {
my $dev_dir = '/sys/bus/scsi/devices';
@@ -215,7 +271,7 @@ sub getSCSI() {
}
warn("cannot get info for device ($_)"), next if !$device;
- my $usb_dir = readlink("$node/device") =~ m!/usb! && "$node/device/../../../..";
+ my $usb_dir = readlink($dir) =~ m!/usb! && "$dir/../../../..";
my $get_usb = sub { chomp_(cat_("$usb_dir/$_[0]")) };
my $get = sub {
@@ -224,15 +280,20 @@ sub getSCSI() {
$s;
};
- # Old hp scanners report themselves as "Processor"s
+ # Old HP scanners report themselves as "Processor"s
# (see linux/include/scsi/scsi.h and sans-find-scanner.1)
my $raw_type = $scsi_types[$get->('type')];
my $media_type = ${{ st => 'tape', sr => 'cdrom', sd => 'hd', sg => 'generic' }}{substr($device, 0, 2)} ||
$raw_type =~ /Scanner|Processor/ && 'scanner';
- push @l, { info => $get->('vendor') . ' ' . $get->('model'), host => $host, channel => $channel, id => $id, lun => $lun,
- description => join('|', $get->('vendor'), $get->('model')),
+ my ($vendor, $model) = ($get->('vendor'), $get->('model'));
+ my ($v, $m) = _get_hd_vendor($model);
+ if ($v && $m) {
+ ($vendor, $model) = ($v, $m);
+ }
+ push @l, { info => $vendor . ' ' . $model, host => $host, channel => $channel, id => $id, lun => $lun,
+ description => join('|', $vendor, $model),
bus => 'SCSI', media_type => $media_type, device => $device,
$usb_dir ? (
usb_vendor => hex($get_usb->('idVendor')), usb_id => hex($get_usb->('idProduct')),
@@ -254,13 +315,15 @@ sub getSCSI() {
}
-my %eide_hds = (
+my %hd_vendors = (
"ASUS" => "Asus",
+ "ATA Maxtor" => "Maxtor",
"CD-ROM CDU" => "Sony",
"CD-ROM Drive/F5D" => "ASUSTeK",
"Compaq" => "Compaq",
"CONNER" => "Conner Peripherals",
"IBM" => "IBM",
+ "INTEL" => "Intel",
"FUJITSU" => "Fujitsu",
"HITACHI" => "Hitachi",
"Lite-On" => "Lite-On Technology Corp.",
@@ -281,6 +344,21 @@ my %eide_hds = (
"WDC" => "Western Digital Corp.",
);
+# return ($vendor, $model)
+sub _get_hd_vendor {
+ my ($info) = @_;
+ foreach my $name (keys %hd_vendors) {
+ next if !$name;
+ return ($hd_vendors{$name}, $2) if $info =~ /^$name(-|\s)*(.*)/;
+ }
+ return ("Hitachi", $info) if $info =~ /^HD[ST][0-9]/;
+}
+
+=item getIDE()
+
+Returns a list of all IDE device.
+
+=cut
sub getIDE() {
my @idi;
@@ -290,15 +368,12 @@ sub getIDE() {
#- Great. 2.2 kernel, things are much easier and less error prone.
foreach my $d (sort @{[glob_('/proc/ide/hd*')]}) {
- cat_("$d/driver") =~ /ide-scsi/ and next; #- already appears in /proc/scsi/scsi
my $t = chomp_(cat_("$d/media"));
my $type = ${{ disk => 'hd', cdrom => 'cdrom', tape => 'tape', floppy => 'fd' }}{$t} or next;
my $info = chomp_(cat_("$d/model")) || "(none)";
my $num = ord(($d =~ /(.)$/)[0]) - ord 'a';
- my ($vendor, $model) = map {
- if_($info =~ /^$_(-|\s)*(.*)/, $eide_hds{$_}, $2);
- } keys %eide_hds;
+ my ($vendor, $model) = _get_hd_vendor($info);
my $host = $num;
($host, my $id) = divide($host, 2);
@@ -318,13 +393,17 @@ sub block_devices() {
: map { $_->{dev} } do { require fs::proc_partitions; fs::proc_partitions::read_raw() };
}
+=item getCompaqSmartArray()
+
+Returns a list of all CCISS devices (Compaq Smart Array).
+
+=cut
+
sub getCompaqSmartArray() {
my (@idi, $f);
foreach ('array/ida', 'cpqarray/ida', 'cciss/cciss') {
- my $prefix = "/proc/driver/$_"; #- kernel 2.4 places it here
- $prefix = "/proc/$_" if !-e "${prefix}0"; #- kernel 2.2
-
+ my $prefix = "/proc/driver/$_";
my ($name) = m|/(.*)|;
for (my $i = 0; -r ($f = "${prefix}$i"); $i++) {
my @raw_devices = cat_($f) =~ m|^\s*($name/.*?):|gm;
@@ -358,32 +437,55 @@ sub getDAC960() {
values %idi;
}
-sub getATARAID() {
- my %l;
- foreach (syslog()) {
- my ($device) = m|^\s*(ataraid/d\d+):| or next;
- $l{$device} = { info => 'ATARAID block device', media_type => 'hd', device => $device, bus => 'ataraid' };
- log::l("ATARAID: $device");
- }
- values %l;
+=item getXenBlk()
+
+Returns a list of all Xen block devices (C</dev/xvd*>).
+
+=cut
+
+sub getXenBlk() {
+ -d '/sys/bus/xen/devices' or return;
+ map {
+ s/block://;
+ { device => basename($_), info => "Xen block device", media_type => 'hd', bus => 'xen' };
+ } glob("/sys/block/xvd*");
}
+=item getVirtIO()
+
+Returns a list of all VirtIO block devices (/dev/C<vd*>).
+
+=cut
+
sub getVirtIO() {
-d '/sys/bus/virtio/devices' or return;
map {
- { device => basename($_), info => "VirtIO block device", media_type => 'hd', bus => 'virtio' }
+ { device => basename($_), info => "VirtIO block device", media_type => 'hd', bus => 'virtio' };
}
glob("/sys/bus/virtio/devices/*/block/*");
}
-# cpu_name : arch() =~ /^alpha/ ? "cpu " :
-# arch() =~ /^ppc/ ? "processor" : "vendor_id"
+sub getMmcBlk() {
+ -d '/sys/bus/mmc/devices' or return;
+ map {
+ { device => basename($_), info => "MMC block device", media_type => 'hd', bus => 'mmc' };
+ }
+ glob("/sys/bus/mmc/devices/*/block/*");
+}
-# cpu_model : arch() =~ /^alpha/ ? "cpu model" :
-# arch() =~ /^ppc/ ? "cpu " : "model name"
+sub getNVMe() {
+ -d '/sys/class/nvme' or return;
+ map {
+ { device => basename($_), info => "NVMe block device", media_type => 'hd', bus => 'pci_express' };
+ }
+ glob("/sys/block/nvme*");
+}
+
+=item getCPUs()
-# cpu_freq = arch() =~ /^alpha/ ? "cycle frequency [Hz]" :
-# arch() =~ /^ppc/ ? "clock" : "cpu MHz"
+Returns a list of all CPUs.
+
+=cut
sub getCPUs() {
my (@cpus, $cpu);
@@ -403,15 +505,20 @@ sub ix86_cpu_frequency() {
cat_('/proc/cpuinfo') =~ /cpu MHz\s*:\s*(\d+)/ && $1;
}
+=item probe_category($category)
+
+Returns a list of devices which drivers are in the asked category. eg:
+
+ my @eth_cards = probe_category('network/ethernet');
+
+=cut
+
sub probe_category {
my ($category) = @_;
require list_modules;
my @modules = list_modules::category2modules($category);
- if_($category =~ /sound/ && arch() =~ /ppc/ && get_mac_model() !~ /IBM/,
- { driver => 'snd_powermac', description => 'Macintosh built-in' },
- ),
grep {
if ($category eq 'network/isdn') {
my $b = $_->{driver} =~ /ISDN:([^,]*),?([^,]*)(?:,firmware=(.*))?/;
@@ -438,7 +545,10 @@ sub isTVcardConfigurable { member($_[0]{driver}, qw(bttv cx88 saa7134)) }
sub getTVcards() { probe_category('multimedia/tv') }
sub getInputDevices() {
+ state @input_devices;
+ return @input_devices if @input_devices;
my (@devices, $device);
+ my $event;
foreach (cat_('/proc/bus/input/devices')) {
if (/^I:/) {
$device = {};
@@ -490,14 +600,25 @@ sub getInputDevices() {
#- B: KEY=1c43 0 70000 0 0 0 0 0 0 0 0 #=> BTN_LEFT BTN_RIGHT BTN_MIDDLE TOOL_PEN TOOL_RUBBER TOOL_FINGER TOOL_MOUSE TOUCH STYLUS STYLUS2
#- B: ABS=100 3000003 #=> X Y PRESSURE DISTANCE MISC
+ #I: Bus=0003 Vendor=049f Product=0024 Version=0001
+ #N: Name="Compaq Compaq Numeric Keypad"
+ #P: Phys=usb-0000:00:03.2-2/input0
+ #S: Sysfs=/class/input/input7
+ #H: Handlers=kbd event3
+ #B: EV=120003
+ #B: KEY=10000 7 ff800000 7ff febeffdf ffefffff ffffffff fffffffe
+ #B: LED=1f
+
$device->{Synaptics} = $descr eq 'SynPS/2 Synaptics TouchPad';
$device->{ALPS} = $descr =~ m!^AlpsPS/2 ALPS!;
$device->{Elantech} = $descr eq 'ETPS/2 Elantech Touchpad';
+ $device->{Numpad} = $descr =~ /Numeric Keypad/;
} elsif (/H: Handlers=(.*)/) {
my @l = split(' ', $1);
$device->{driver} = $l[0]; #- keep it for compatibility
$device->{Handlers} = +{ map { (/^(.*?)\d*$/ ? $1 : $_, $_) } split(' ', $1) };
+ $event = $device->{Handlers}{event};
} elsif (/S: Sysfs=(.+)/) {
$device->{sysfs_path} = $1;
} elsif (/P: Phys=(.*)/) {
@@ -520,15 +641,23 @@ sub getInputDevices() {
#- KEY=30000 0 0 0 0 0 0 0 0 #=> BTN_LEFT BTN_RIGHT
#- KEY=70000 0 0 0 0 0 0 0 0 #=> BTN_LEFT BTN_RIGHT BTN_MIDDLE
#- KEY=1f0000 0 0 0 0 0 0 0 0 #=> BTN_LEFT BTN_RIGHT BTN_MIDDLE BTN_SIDE BTN_EXTRA
- my $KEY = hex($1);
- $device->{SIDE} = 1 if $KEY & (1 << 0x13);
+ if (!$> && ! -f "/dev/input/$event") {
+ devices::make("/dev/input/$event");
+ }
+ if (-r "/dev/input/$event") {
+ my @KEYS = c::EVIocGBitKey("/dev/input/$event");
+ $device->{SIDE} = 1 if $KEYS[0] & (1 << 0x13);
+ } else {
+ my $KEY = hex($1);
+ $device->{SIDE} = 1 if $KEY & (1 << 0x13);
+ }
} elsif (/^\s*$/) {
push @devices, $device if $device;
undef $device;
}
}
- @devices;
+ @input_devices = @devices;
}
sub getInputDevices_and_usb() {
@@ -548,11 +677,20 @@ sub serialPort2text {
$_[0] =~ /ttyS(\d+)/ ? "$_[0] / COM" . ($1 + 1) : $_[0];
}
+=back
+
+=head1 Network
+
+=over
+
+=cut
+
sub getSerialModem {
- my ($modules_conf, $o_mouse) = @_;
+ my ($_modules_conf, $o_mouse) = @_;
my $mouse = $o_mouse || {};
$mouse->{device} = readlink "/dev/mouse";
- my $serdev = arch() =~ /ppc/ ? "macserial" : "serial";
+ my $serdev = "serial";
+
eval { modules::load($serdev) };
my @modems;
@@ -567,13 +705,16 @@ sub getSerialModem {
}
my @devs = pcmcia_probe();
foreach my $modem (@modems) {
- #- add an alias for macserial on PPC
- $modules_conf->set_alias('serial', $serdev) if arch() =~ /ppc/ && $modem->{device};
foreach (@devs) { $_->{device} and $modem->{device} = $_->{device} }
}
@modems;
}
+=item getModem()
+
+Return list of modems (serial, WinModems)
+=cut
+
our $detect_serial_modem = 1;
sub getModem {
my ($modules_conf) = @_;
@@ -622,6 +763,12 @@ sub getECI() {
grep { member(sprintf("%04x%04x%04x%04x", $_->{vendor}, $_->{id}, $_->{subvendor}, $_->{subid}), @ids) } usb_probe();
}
+=item get_xdsl_usb_devices()
+
+Return list of xDSL devices.
+
+=cut
+
sub get_xdsl_usb_devices() {
my @bewan = detect_devices::getBewan();
$_->{driver} = $_->{bus} eq 'USB' ? 'unicorn_usb_atm' : 'unicorn_pci_atm' foreach @bewan;
@@ -633,6 +780,12 @@ sub get_xdsl_usb_devices() {
@usb, @bewan, @eci;
}
+=item is_lan_interface($device)
+
+Is it a LAN interface (blacklist some interfaces (PPP, ...)?
+
+=cut
+
sub is_lan_interface {
#- we want LAN like interfaces here (eg: ath|br|eth|fddi|plip|ra|tr|usb|wlan).
#- there's also bnep%d for bluetooth, bcp%d...
@@ -647,6 +800,12 @@ sub is_lan_interface {
$_[0] !~ /^(?:hso|ippp|isdn|plip|ppp|pan)/;
}
+=item is_useful_interface($device)
+
+Is it a usefull interface (blacklist some interfaces (loopback, sit, wifi, ...)?
+
+=cut
+
sub is_useful_interface {
#- sit0 which is *always* created by net/ipv6/sit.c, thus is always created since net.agent loads ipv6 module
#- wifi%d are created by 3rdparty/hostap/hostap_hw.c (pseudo statistics devices, #14523)
@@ -655,6 +814,12 @@ sub is_useful_interface {
$_[0] !~ /^(?:lo|sit0|wifi|wmaster|ax|rose|nr|bce|scc)/;
}
+=item is_wireless_interface($device)
+
+Is it a WiFi interface?
+
+=cut
+
sub is_wireless_interface {
my ($interface) = @_;
#- some wireless drivers don't always support the SIOCGIWNAME ioctl
@@ -662,9 +827,17 @@ sub is_wireless_interface {
#- wlan-ng (prism2_*) need some special tweaks to support it
#- use sysfs as fallback to detect wireless interfaces,
#- i.e interfaces for which get_wireless_stats() is available
- c::isNetDeviceWirelessAware($interface) || -e "/sys/class/net/$interface/wireless";
+ c::isNetDeviceWirelessAware($interface)
+ || -e "/sys/class/net/$interface/wireless"
+ || -e "/sys/class/net/$interface/phy80211";
}
+=item get_all_net_devices()
+
+Returns list of all network devices
+
+=cut
+
sub get_all_net_devices() {
#- we need both detection schemes since:
#- get_netdevices() use the SIOCGIFCONF ioctl that does not list interfaces that are down
@@ -675,22 +848,56 @@ sub get_all_net_devices() {
);
}
+=item get_lan_interfaces()
+
+Returns list of all LAN devices
+
+=cut
+
sub get_lan_interfaces() { grep { is_lan_interface($_) } get_all_net_devices() }
+
+=item get_net_interfaces()
+
+Returns list of all useful network devices
+
+=cut
+
sub get_net_interfaces() { grep { is_useful_interface($_) } get_all_net_devices() }
+
+=item get_wireless_interface()
+
+Returns list of all Wireless devices
+
+=cut
+
sub get_wireless_interface() { find { is_wireless_interface($_) } get_lan_interfaces() }
+=item is_bridge_interface($interface)
+
+Is it a bridge?
+
+=cut
+
sub is_bridge_interface {
my ($interface) = @_;
-f "/sys/class/net/$interface/bridge/bridge_id";
}
+=back
+
+=head1 Enumerating devices
+
+=over
+
+=cut
+
sub get_ids_from_sysfs_device {
my ($dev_path) = @_;
my $dev_cat = sub { chomp_(cat_("$dev_path/$_[0]")) };
my $usb_root = -f "$dev_path/bInterfaceNumber" && "../" || -f "$dev_path/idVendor" && "";
my $is_pcmcia = -f "$dev_path/card_id";
my $sysfs_ids;
- my $bus = get_sysfs_field_from_link($dev_path, "bus");
+ my $bus = get_sysfs_field_from_link($dev_path, "subsystem");
#- FIXME: use $bus
if ($is_pcmcia) {
$sysfs_ids = { modalias => $dev_cat->('modalias') };
@@ -708,7 +915,7 @@ sub get_ids_from_sysfs_device {
if ($bus eq 'pci') {
my $device = basename(readlink $dev_path);
my @ids = $device =~ /^(.{4}):(.{2}):(.{2})\.(.+)$/;
- @{$sysfs_ids}{qw(pci_domain pci_bus pci_device pci_function)} = map { hex($_) } @ids if @ids;
+ @$sysfs_ids{qw(pci_domain pci_bus pci_device pci_function)} = map { hex($_) } @ids if @ids;
}
}
$sysfs_ids;
@@ -724,10 +931,6 @@ sub device_matches_sysfs_device {
device_matches_sysfs_ids($device, get_ids_from_sysfs_device($dev_path));
}
-#sub getISDN() {
-# mapgrep(sub {member (($_[0] =~ /\s*(\w*):/), @netdevices), $1 }, split(/\n/, cat_("/proc/net/dev")));
-#}
-
sub getUPS() {
# MGE serial PnP devices:
(map {
@@ -742,7 +945,7 @@ sub getUPS() {
# USB UPSs;
(map { ($_->{name} = $_->{description}) =~ s/.*\|//; $_ }
map {
- if ($_->{description} =~ /^American Power Conversion\|Back-UPS/ && $_->{driver} eq 'usbhid') {
+ if ($_->{description} =~ /Back-UPS/ && $_->{driver} eq 'usbhid') {
#- FIXME: should not be hardcoded, use $_->{sysfs_device} . */usb:(hiddev\d+)
#- the device should also be assigned to the ups user
$_->{port} = "/dev/hiddev0";
@@ -799,35 +1002,58 @@ sub add_addons {
@l;
}
+sub get_pci_sysfs_path {
+ my ($l) = @_;
+ sprintf('%04x:%02x:%02x.%d', $l->{pci_domain}, $l->{pci_bus}, $l->{pci_device}, $l->{pci_function});
+}
+
+
my (@pci, @usb);
+
sub pci_probe__real() {
add_addons($pcitable_addons, map {
- my %l;
- @l{qw(vendor id subvendor subid pci_domain pci_bus pci_device pci_function media_type nice_media_type driver description)} = split "\t";
- $l{$_} = hex $l{$_} foreach qw(vendor id subvendor subid);
- $l{bus} = 'PCI';
- $l{sysfs_device} = sprintf('/sys/bus/pci/devices/%04x:%02x:%02x.%d', $l{pci_domain}, $l{pci_bus}, $l{pci_device}, $l{pci_function});
- \%l;
+ my $l = $_;
+ $l->{bus} = 'PCI';
+ $l->{sysfs_device} = '/sys/bus/pci/devices/' . get_pci_sysfs_path($l);
+ $l;
} c::pci_probe());
}
+
+=item pci_probe()
+
+Cache the result of C<c::pci_probe()> and return the list of items in the PCI devices.
+
+=cut
+
sub pci_probe() {
- @pci = pci_probe__real() if !@pci;
+ state $done;
+ if (!$done) {
+ @pci = pci_probe__real() if !@pci;
+ foreach (@pci) {
+ $_->{nice_bus} = $_->{is_pciexpress} ? "PCI Express" : "PCI";
+ }
+ }
@pci;
}
sub usb_probe__real() {
- -e "/proc/bus/usb/devices" or return;
+ -e "/sys/kernel/debug/usb/devices" or return;
add_addons($usbtable_addons, map {
- my %l;
- @l{qw(vendor id media_type driver description pci_bus pci_device)} = split "\t";
- $l{media_type} = join('|', grep { $_ ne '(null)' } split('\|', $l{media_type}));
- $l{$_} = hex $l{$_} foreach qw(vendor id);
- $l{sysfs_device} = "/sys/class/usb_device/usbdev$l{pci_bus}.$l{pci_device}/device";
- $l{bus} = 'USB';
- \%l;
+ my $l = $_;
+ $l->{media_type} = join('|', grep { $_ ne '(null)' } split('\|', $l->{media_type}));
+ $l->{sysfs_device} = "/sys/bus/usb/devices/$l->{pci_bus}-" . ($l->{usb_port} + 1);
+ $l->{bus} = 'USB';
+ $l;
} c::usb_probe());
}
+
+=item usb_probe()
+
+Cache the result of C<c::usb_probe()> and return the list of items in the USB devices.
+
+=cut
+
sub usb_probe() {
if ($::isStandalone && @usb) {
@usb;
@@ -836,6 +1062,12 @@ sub usb_probe() {
}
}
+=item firewire_probe()
+
+Return list of Firewire controllers
+
+=cut
+
sub firewire_probe() {
my $dev_dir = '/sys/bus/ieee1394/devices';
my @l = map {
@@ -875,6 +1107,12 @@ sub firewire_probe() {
@l;
}
+=item pcmcia_controller_probe()
+
+Return list of PCMCIA controllers
+
+=cut
+
sub pcmcia_controller_probe() {
my ($controller) = probe_category('bus/pcmcia');
if (!$controller && !$::testing && !$::noauto && arch() =~ /i.86/) {
@@ -884,6 +1122,12 @@ sub pcmcia_controller_probe() {
$controller;
}
+=item pcmcia_probe()
+
+Return list of PCMCIA devices (eg: Ethernet PCMCIA cards, ...)
+
+=cut
+
sub pcmcia_probe() {
require modalias;
require modules;
@@ -891,8 +1135,8 @@ sub pcmcia_probe() {
map {
my $dir = "$dev_dir/$_";
my $get = sub { chomp_(cat_("$dir/$_[0]")) };
- my $class_dev = first(glob_("$dir/tty*"));
- my $device = $class_dev && get_sysfs_field_from_link($dir, basename($class_dev));
+ my $class_dev = first(glob_("$dir/tty/tty*"));
+ my $device = $class_dev && basename($class_dev);
my $modalias = $get->('modalias');
my $driver = get_sysfs_field_from_link($dir, 'driver');
#- fallback on modalias result
@@ -911,20 +1155,61 @@ sub pcmcia_probe() {
} all($dev_dir);
}
-my $dmi_probe;
+=item dmi_probe()
+
+Cache the result of c::dmi_probe() (aka C<dmidecode>) and return the list of items in the DMI table
+
+=cut
+
sub dmi_probe() {
- $dmi_probe ||= [ map {
- /(.*?)\t(.*)/ && { bus => 'DMI', driver => $1, description => $2 };
- } $> ? () : c::dmi_probe() ];
+ state $dmi_probe;
+ return if arch() !~ /86/;
+ $dmi_probe ||= $> ? [] : [ c::dmi_probe() ];
@$dmi_probe;
}
+=item acpi_probe()
+
+Return list of devices that are only discoverable via ACPI
+
+=cut
+
+my %acpi_device_info = (
+ "80860F28" => { vendor => 0x8086, id => 0x0f28, description => 'Intel Corporation|Bay Trail SST Audio DSP',
+ nice_media_type => 'Audio device', driver => 'snd_sof_acpi_intel_byt' },
+ "808622A8" => { vendor => 0x8086, id => 0x22a8, description => 'Intel Corporation|Cherry Trail SST Audio DSP',
+ nice_media_type => 'Audio device', driver => 'snd_sof_acpi_intel_byt' },
+ "INT3438" => { vendor => 0x8086, id => 0x3438, description => 'Intel Corporation|Broadwell SST Audio DSP',
+ nice_media_type => 'Audio device', driver => 'snd_sof_acpi_intel_bdw' }
+);
+
+sub acpi_probe() {
+ my $dev_dir = '/sys/bus/acpi/devices';
+ my @l;
+ foreach (glob("$dev_dir/*")) {
+ my $dev_name = basename($_);
+ my ($prefix, $suffix) = split(':', $dev_name);
+ my $e = $acpi_device_info{$prefix};
+ if ($e) {
+ add2hash($e, { bus => 'ACPI', sysfs_device => "$dev_dir/$dev_name" });
+ push @l, $e;
+ }
+ }
+ @l;
+}
+
+=item probeall()
+
+Returns a list of all PCI/USB/Firewire/PCMCIA/DMI/HID devices.
+It's usually called through a higher level filtering function.
+
+=cut
+
# pcmcia_probe provides field "device", used in network.pm
-# => probeall with $probe_type is unsafe
sub probeall() {
return if $::noauto;
- pci_probe(), usb_probe(), firewire_probe(), pcmcia_probe(), dmi_probe(), getInputDevices_and_usb();
+ pci_probe(), usb_probe(), firewire_probe(), pcmcia_probe(), dmi_probe(), acpi_probe(), getInputDevices_and_usb();
}
sub probeall_update_cache() {
return if $::noauto;
@@ -991,7 +1276,7 @@ sub syslog() {
}
sub get_mac_model() {
- my $mac_model = cat_("/proc/device-tree/model") || die "Can not open /proc/device-tree/model";
+ my $mac_model = cat_("/proc/device-tree/model") || die "Cannot open /proc/device-tree/model";
log::l("Mac model: $mac_model");
$mac_model;
}
@@ -1006,33 +1291,31 @@ sub hasSMP() {
(any { /^processor\s*:\s*(\d+)/ && $1 > 0 } cat_('/proc/cpuinfo')) ||
any { /\bProcessor #(\d+)\s+(\S*)/ && $1 > 0 && $2 ne 'invalid' } syslog();
}
-sub hasPCMCIA() { $::o->{pcmcia} } #- because /proc/pcmcia seems not to be present on 2.4 at least (or use /var/run/stab)
+sub hasPCMCIA() { $::o->{pcmcia} }
my (@dmis, $dmidecode_already_runned);
+=item dmidecode()
+
+Return list of DMI categories from DMI table
+
+=cut
# we return a list b/c several DMIs have the same name:
sub dmidecode() {
return @dmis if $dmidecode_already_runned;
return if $>;
- my ($ver, @l) = run_program::get_stdout('dmidecode');
-
- my $tab = "\t";
-
- my ($major, $minor) = $ver =~ /(\d+)\.(\d+)/;
+ my ($_ver, @l) = arch() =~ /86/ ? run_program::get_stdout('dmidecode') : ();
- if ($major > 2 || $major == 2 && $minor >7) {
- #- new dmidecode output is less indented
- $tab = '';
- #- drop header
- shift @l while @l && $l[0] ne "\n";
- }
+ #- drop header
+ shift @l while @l && $l[0] ne "\n";
foreach (@l) {
- if (/^$tab\t(.*)/) {
+ next if /TRUNCATED/;
+ if (/^\t(.*)/) {
$dmis[-1]{string} .= "$1\n";
- $dmis[-1]{$1} = $2 if /^$tab\t(.*): (.*)$/;
- } elsif (my ($s) = /^$tab(.*)/) {
+ $dmis[-1]{$1} = $2 if /^\t(.*): (.*)$/;
+ } elsif (my ($s) = /^(.*)/) {
next if $s =~ /^$/ || $s =~ /\bDMI type \d+/;
$s =~ s/ Information$//;
push @dmis, { name => $s };
@@ -1041,13 +1324,25 @@ sub dmidecode() {
$dmidecode_already_runned = 1;
@dmis;
}
+
+=item dmi_detect_memory($category)
+
+Return only one category from DMI table
+
+=cut
+
sub dmidecode_category {
my ($cat) = @_;
my @l = grep { $_->{name} eq $cat } dmidecode();
wantarray() ? @l : $l[0] || {};
}
-#- size in MB
+=item dmi_detect_memory()
+
+Return RAM size in MB according to DMI table
+
+=cut
+
sub dmi_detect_memory() {
my @l1 = map { $_->{'Enabled Size'} =~ /(\d+) MB/ && $1 } dmidecode_category('Memory Module');
my @l2 = map { $_->{'Form Factor'} =~ /^(SIMM|SIP|DIP|DIMM|FB-DIMM|RIMM|SODIMM|SRIMM)$/ &&
@@ -1056,6 +1351,18 @@ sub dmi_detect_memory() {
max(sum(@l1), sum(@l2));
}
+=back
+
+=head1 Test helpers
+
+=over
+
+=item computer_info()
+
+Analyse "Chassis" & "Bios" in dmidecode output and return a hash of flags/values (isLaptop, isServer, BIOS_Year)
+
+=cut
+
sub computer_info() {
my $Chassis = dmidecode_category('Chassis')->{Type} =~ /(\S+)/ && $1;
@@ -1065,16 +1372,50 @@ sub computer_info() {
+{
isLaptop => member($Chassis, 'Portable', 'Laptop', 'Notebook', 'Hand Held', 'Sub Notebook', 'Docking Station'),
- isServer => member($Chassis, 'Pizza Box', 'Main Server Chassis', 'Blade'),
+ isServer => member($Chassis, 'Pizza Box', 'Main Server Chassis', 'Rack Mount Chassis', 'Blade'),
if_($BIOS_Year, BIOS_Year => $BIOS_Year),
};
}
-#- try to detect a laptop, we assume pcmcia service is an indication of a laptop or
-#- the following regexp to match graphics card apparently only used for such systems.
+=item isLaptop()
+
+try to detect a laptop. We assume the following is an indication of a laptop:
+
+=over 4
+
+=item *
+
+pcmcia service
+
+=item *
+
+C<computer_info()> (really C<dmidecode>) telling us it's a laptop
+
+=item *
+
+ACPI lid button
+
+=item *
+
+a regexp to match graphics card apparently only used for such systems.
+
+=item *
+
+Mobility CPU
+
+=item *
+
+having Type as Laptop in some device
+
+=item *
+
+Intel ipw2100/2200/3945 Wireless
+
+=back
+
+=cut
+
sub isLaptop() {
- arch() =~ /ppc/ ?
- get_mac_model() =~ /Book/ :
computer_info()->{isLaptop}
|| glob_("/sys/bus/acpi/devices/PNP0C0D:*") #- ACPI lid button
|| (matching_desc__regexp('C&T.*655[45]\d') || matching_desc__regexp('C&T.*68554') ||
@@ -1088,11 +1429,17 @@ sub isLaptop() {
|| (any { member($_->{driver}, qw(ipw2100 ipw2200 ipw3945)) } pci_probe());
}
+=item isServer()
+
+Is it a server?
+
+=cut
+
sub isServer() {
computer_info()->{isServer}
|| (any { $_->{Type} =~ /ECC/ } dmidecode_category('Memory Module'))
|| dmidecode_category('System Information')->{Manufacturer} =~ /Supermicro/i
- || dmidecode_category('System Information')->{'Product Name'} =~ /NetServer|Proliant|PowerEdge|eServer|IBM System x/i
+ || dmidecode_category('System Information')->{'Product Name'} =~ /NetServer|Proliant|PowerEdge|eServer|IBM System x|ThinkServer/i
|| matching_desc__regexp('LSI Logic.*SCSI')
|| matching_desc__regexp('MegaRAID')
|| matching_desc__regexp('NetServer')
@@ -1100,58 +1447,189 @@ sub isServer() {
}
sub BIGMEM() {
- arch() !~ /x86_64|ia64/ && $> == 0 && dmi_detect_memory() > 4 * 1024;
+ arch() !~ /x86_64/ && $> == 0 && dmi_detect_memory() > 4 * 1024;
+}
+
+sub is_arm_openrd_client() {
+ to_bool(cat_('/proc/cpuinfo') =~ /OpenRD Client/);
}
-sub is_i586() {
- my $cpuinfo = cat_('/proc/cpuinfo');
- $cpuinfo =~ /^cpu family\s*:\s*(\d+)/m && $1 < 6 ||
- $cpuinfo =~ /^model name\s*:\s*Transmeta.* TM5800/m || # mdvbz#37866
- !has_cpu_flag('cmov');
+sub is_arm_versatile() {
+ to_bool(cat_('/proc/cpuinfo') =~ /ARM-Versatile/);
+}
+
+sub is_arm_efikamix() {
+ to_bool(cat_('/proc/cpuinfo') =~ /Efika MX/);
}
sub is_xbox() {
any { $_->{vendor} == 0x10de && $_->{id} == 0x02a5 } pci_probe();
}
+=item virt_technology()
+
+Returns the virtualization technology (eg: kvm, oracle, ...)
+
+=cut
+
+sub virt_technology() {
+ state $tech;
+ $tech ||= chomp_(run_program::get_stdout('systemd-detect-virt'));
+}
+
+=item is_hyperv()
+
+Are we running under Hyper-V hypervisor?
+
+=cut
+
+sub is_hyperv() {
+ virt_technology() eq 'microsoft';
+}
+
+=item is_qemu()
+
+Are we running under Qemu hypervisor?
+
+=cut
+
+sub is_qemu() {
+ member(virt_technology(), qw(kvm qemu));
+}
+
+=item is_virtualbox()
+
+Are we running under VirtualBox hypervisor?
+
+=cut
+
sub is_virtualbox() {
- any { $_->{driver} eq 'vboxadd' } detect_devices::pci_probe();
+ virt_technology() eq 'oracle';
}
+=item is_vmware()
+
+Are we running under VMware hypervisor?
+
+=cut
+
sub is_vmware() {
- any { $_->{driver} =~ /Card:VMware/ } detect_devices::pci_probe();
+ virt_technology() eq 'vmware';
}
+=item is_netbook_nettop()
+
+Is it a NetBook?
+
+=cut
+
sub is_netbook_nettop() {
my @cpus = getCPUs();
(any { $_->{'model name'} =~ /(\bIntel\(R\) Atom\(TM\)\B)/i } @cpus) ||
(any { $_->{'model name'} =~ /(\bIntel\(R\) Celeron\(R\) M processor\b|\bVIA C7-M Processor\b|\bGeode\(TM\)\B)/i && $_->{'cpu MHz'} < 1500 } @cpus);
}
+=item has_low_resources()
+
+Is it a low resource machine?
+
+=cut
+
sub has_low_resources() {
availableRamMB() < 100 || arch() =~ /i.86/ && ix86_cpu_frequency() < 350;
}
+=item need_light_desktop()
+
+Does it need a light desktop (netbook or low resources machine)?
+
+=cut
+
sub need_light_desktop() {
has_low_resources() || is_netbook_nettop();
}
+=item has_cpu_flag($flag)
+
+Does CPU has this flag
+
+=cut
+
sub has_cpu_flag {
my ($flag) = @_;
cat_('/proc/cpuinfo') =~ /^flags.*\b$flag\b/m;
}
+=item sub matching_types()
+
+Returns a hash of flags (laptop, hyperv, touchpad, 64bit, wireless, ...)
+
+=cut
+
sub matching_types() {
+{
- laptop => isLaptop(),
- 'touchpad' => hasTouchpad(),
'64bit' => to_bool(arch() =~ /64/),
+ hyperv => is_hyperv(),
+ laptop => isLaptop(),
+ numpad => hasNumpad(),
+ touchpad => hasTouchpad(),
+ qemu => is_qemu(),
+ virtualbox => is_virtualbox(),
+ vmware => is_vmware(),
wireless => to_bool(get_wireless_interface() || probe_category('network/wireless')),
};
}
+=item sub hasCPUMicrocode()
+
+Does CPU need microcode updates?
+
+=cut
+
+sub hasCPUMicrocode() {
+ state $hasCPUMicrocode;
+ if (!defined $hasCPUMicrocode) {
+ $hasCPUMicrocode = to_bool(find { 'microcode' } modules::loaded_modules());
+ }
+ return $hasCPUMicrocode;
+}
+
+=item sub hasCPUFreq()
+
+Does CPU support cpufreq?
+
+=cut
+
+sub hasCPUFreq() {
+ require cpufreq;
+ to_bool(cpufreq::get_modules())
+ || cat_('/proc/cpuinfo') =~ /AuthenticAMD/ && arch() =~ /x86_64/
+ || cat_('/proc/cpuinfo') =~ /model name.*Intel\(R\) Core\(TM\)2 CPU/;
+}
+
+=item sub hasWacom()
+
+is there a Wacom tablet?
+
+=cut
+
sub hasWacom() { find { $_->{vendor} == 0x056a || $_->{driver} =~ /wacom/ } usb_probe() }
-sub hasTouchpad() { any { $_->{Synaptics} || $_->{ALPS} || $_->{Elantech} } getInputDevices() };
+
+=item sub hasTouchpad()
+
+is there a touchpad?
+
+=cut
+
+sub hasTouchpad() { any { $_->{Synaptics} || $_->{ALPS} || $_->{Elantech} } getInputDevices() }
+
+=item sub hasNumpad()
+
+is there a numeric pad?
+
+=cut
+
+sub hasNumpad() { any { $_->{Numpad} } getInputDevices() }
sub usbWacom() { grep { $_->{vendor} eq '056a' } getInputDevices() }
sub usbKeyboards() { grep { $_->{media_type} =~ /\|Keyboard/ } usb_probe() }
@@ -1162,6 +1640,7 @@ sub has_53c94() { find { /53c94/ } all_files_rec("/proc/device-tree") }
sub usbKeyboard2country_code {
my ($usb_kbd) = @_;
my ($F, $tmp);
+ # FIXME: usbfs is dead! we should poke somewhere in /sys/ !!!!
sysopen($F, sprintf("/proc/bus/usb/%03d/%03d", $usb_kbd->{pci_bus}, $usb_kbd->{pci_device}), 0) and
sysseek $F, 0x28, 0 and
sysread $F, $tmp, 1 and
@@ -1216,18 +1695,18 @@ sub hasMousePS2 {
my $t; sysread(tryOpen($_[0]) || return, $t, 256) != 1 || $t ne "\xFE";
}
-sub probeall_unavailable_modules {
+sub probeall_unavailable_modules() {
map {
my $driver = $_->{driver};
$driver !~ /:/ &&
!member($driver, 'hub', 'unknown', 'amd64_agp') &&
!modules::module_is_available($driver) ?
$driver :
- ();
+ @{[]};
} probeall();
}
-sub probeall_dkms_modules {
+sub probeall_dkms_modules() {
my @unavailable_modules = probeall_unavailable_modules() or return;
require modalias;
my $dkms_modules = modalias::parse_file_modules($::prefix . "/usr/share/ldetect-lst/dkms-modules.alias");
@@ -1274,6 +1753,14 @@ sub suggest_mount_point {
$name;
}
+=back
+
+=head1 SEE ALSO
+
+See L<hardware_detection> for the overall view.
+
+=cut
+
1;
#- Local Variables:
diff --git a/perl-install/devices.pm b/perl-install/devices.pm
index f94362770..7ac79dcce 100644
--- a/perl-install/devices.pm
+++ b/perl-install/devices.pm
@@ -1,4 +1,4 @@
-package devices; # $Id$
+package devices;
use diagnostics;
use strict;
@@ -28,7 +28,7 @@ sub set_loop {
my $dev = find_free_loop();
if ($o_encrypt_key && $o_encryption) {
- eval { modules::load('cryptoloop', 'cbc', if_(arch() =~ /i.86/, 'aes-i586'), if_( arch() =~ /x86_64/, 'aes-x86_64'), 'aes_generic') };
+ eval { modules::load('cryptoloop', list_modules::category2modules('various/crypto')) };
my $cmd = "losetup -p 0 -e $o_encryption $dev $file";
log::l("calling $cmd");
open(my $F, "|$cmd");
@@ -52,22 +52,9 @@ sub find_compressed_image {
undef;
}
-sub get_dynamic_major {
- my ($name) = @_;
- cat_('/proc/devices') =~ /^(\d+) \Q$name\E$/m && $1;
-}
-
sub init_device_mapper() {
require modules;
eval { modules::load('dm-mod') };
- make('urandom');
- my $control = '/dev/mapper/control';
- if (! -e $control) {
- my ($major) = get_dynamic_major('misc') or return;
- my ($minor) = cat_('/proc/misc') =~ /(\d+) device-mapper$/m or return;
- mkdir_p(dirname($control));
- syscall_('mknod', $control, c::S_IFCHR() | 0600, makedev($major, $minor)) or die "mknod $control failed: $!";
- }
}
sub entry {
@@ -77,6 +64,10 @@ sub entry {
if (/^0x([\da-f]{3,4})$/i) {
$type = c::S_IFBLK();
($major, $minor) = unmakedev(hex $1);
+ } elsif (/^ram(.*)/) {
+ $type = c::S_IFBLK();
+ $major = 1;
+ $minor = $1 eq '' ? 1 : $1;
} elsif (m|^rd/c(\d+)d(\d+)(p(\d+))?|) {
# dac 960 "rd/cXdXXpX"
$type = c::S_IFBLK();
@@ -87,62 +78,20 @@ sub entry {
$type = c::S_IFBLK();
$major = ($1 eq 'ida' ? 72 : 104) + $2;
$minor = 16 * $3 + ($4 || 0);
- } elsif (m,(ataraid)/d(\d+)(?:p(\d+))?,) {
- # ATA raid "ataraid/d0{p1}"
- $type = c::S_IFBLK();
- $major = 114;
- $minor = 16 * $1 + ($2 || 0);
} elsif (my ($prefix, $nb) = /(.*?)(\d+)$/) {
- my $f = ${{"fd" => sub { c::S_IFBLK(), 2, 0 },
- "hidbp-mse-" => sub { c::S_IFCHR(), 10, 32 },
- "lp" => sub { c::S_IFCHR(), 6, 0 },
- "usb/lp" => sub { c::S_IFCHR(), 180, 0 },
- "input/event" => sub { c::S_IFCHR(), 13, 64 },
- "loop" => sub { c::S_IFBLK(), 7, 0 },
+ my $f = ${{
"md" => sub { c::S_IFBLK(), 9, 0 },
- "nst" => sub { c::S_IFCHR(), 9, 128 },
- "sr" => sub { c::S_IFBLK(), 11, 0 },
- "tty" => sub { c::S_IFCHR(), 4, 0 },
- "ttyS" => sub { c::S_IFCHR(), 4, 64 },
"ubd/" => sub { c::S_IFBLK(), 98, 0 },
- "dm-" => sub { c::S_IFBLK(), get_dynamic_major('device-mapper'), 0 },
}}{$prefix};
- if($f) {
+ if ($f) {
($type, $major, $minor) = $f->();
$minor += $nb;
}
}
unless ($type) {
($type, $major, $minor) =
- @{ ${{"aztcd" => [ c::S_IFBLK(), 29, 0 ],
- "bpcd" => [ c::S_IFBLK(), 41, 0 ],
- "cdu31a" => [ c::S_IFBLK(), 15, 0 ],
- "cdu535" => [ c::S_IFBLK(), 24, 0 ],
- "cm206cd" => [ c::S_IFBLK(), 32, 0 ],
- "gscd" => [ c::S_IFBLK(), 16, 0 ],
- "mcd" => [ c::S_IFBLK(), 23, 0 ],
- "mcdx" => [ c::S_IFBLK(), 20, 0 ],
- "mem" => [ c::S_IFCHR(), 1, 1 ],
- "optcd" => [ c::S_IFBLK(), 17, 0 ],
- "kbd" => [ c::S_IFCHR(), 11, 0 ],
- "psaux" => [ c::S_IFCHR(), 10, 1 ],
+ @{ ${{
"atibm" => [ c::S_IFCHR(), 10, 3 ],
- "random" => [ c::S_IFCHR(), 1, 8 ],
- "urandom" => [ c::S_IFCHR(), 1, 9 ],
- "sbpcd" => [ c::S_IFBLK(), 25, 0 ],
- "sjcd" => [ c::S_IFBLK(), 18, 0 ],
- "tty" => [ c::S_IFCHR(), 5, 0 ],
- "input/mice"
- => [ c::S_IFCHR(), 13, 63 ],
- "adbmouse" => [ c::S_IFCHR(), 10, 10 ], #- PPC
- "vcsa" => [ c::S_IFCHR(), 7, 128 ],
- "zero" => [ c::S_IFCHR(), 1, 5 ],
- "null" => [ c::S_IFCHR(), 1, 3 ],
-
- "initrd" => [ c::S_IFBLK(), 1, 250 ],
- "console" => [ c::S_IFCHR(), 5, 1 ],
- "systty" => [ c::S_IFCHR(), 4, 0 ],
- "lvm" => [ c::S_IFBLK(), 109, 0 ],
}}{$_} || [] };
}
# Lookup non listed devices in /sys
@@ -154,8 +103,8 @@ sub entry {
} elsif (-e "/sys/block/$_/dev") {
$sysdev = "/sys/block/$_/dev";
$type = c::S_IFBLK();
- } elsif (/(.+)(\d+)$/ && -e "/sys/block/$1/$2/dev") {
- $sysdev = "/sys/block/$_/dev";
+ } elsif (/^(.+)(\d+)$/ && -e "/sys/block/$1/$_/dev") {
+ $sysdev = "/sys/block/$1/$_/dev";
$type = c::S_IFBLK();
}
($major, $minor) = split(':', chomp_(cat_($sysdev)));
@@ -169,6 +118,16 @@ sub entry {
}
}
}
+ # Try to access directly the device
+ # Now device mapper devices are links and do not appear in /proc or /sys
+ unless ($type) {
+ if (-e "/dev/$_") {
+ my (undef, undef, $mode, undef, undef, undef, $rdev, undef) = stat("/dev/$_");
+ ($major, $minor) = unmakedev($rdev);
+ $type = $mode & c::S_IFMT();
+ }
+ }
+
$type or internal_error("unknown device $_");
($type, $major, $minor);
}
@@ -198,7 +157,7 @@ sub make($) {
sub simple_partition_scan {
my ($part) = @_;
- $part->{device} =~ /([hs]d[a-z])(\d+)$/;
+ $part->{device} =~ /((?:[hsv]|xv)d[a-z]|mmcblk|(nvme\d+n)\d+p)(\d+)$/;
}
sub part_number {
my ($part) = @_;
@@ -211,23 +170,23 @@ sub part_prefix {
sub prefix_for_dev {
my ($dev) = @_;
- $dev . ($dev =~ /\d$/ || $dev =~ m!mapper/! ? 'p' : '');
+ $dev . ($dev =~ /\d$/ ? 'p' : '');
}
sub should_prefer_UUID {
my ($dev) = @_;
- $dev =~ /^(hd|sd)/;
+ $dev =~ /^((?:[hsv]|xv)d|mmcblk|nvme)/;
}
sub symlink_now_and_register {
my ($if_struct, $of) = @_;
my $if = $if_struct->{device};
- #- add a specific udev script, we can't do it with a udev rule,
+ #- add a static udev device node, we can't do it with a udev rule,
#- eg, ttySL0 is a symlink created by a daemon
- output_with_perm("$::prefix/etc/udev/devices.d/$of.nodes", 0644, "L $of $if\n");
+ symlinkf($if, "$::prefix/usr/lib/udev/devices/$of");
- symlinkf($if, "$::prefix/dev/$of");
+ symlinkf($if, "/dev/$of");
}
diff --git a/perl-install/diskdrake/dav.pm b/perl-install/diskdrake/dav.pm
index 6a7ae8770..9036596b3 100644
--- a/perl-install/diskdrake/dav.pm
+++ b/perl-install/diskdrake/dav.pm
@@ -1,4 +1,4 @@
-package diskdrake::dav; # $Id$
+package diskdrake::dav;
use diagnostics;
use strict;
@@ -33,7 +33,7 @@ points, select \"New\".")) },
sub create {
my ($in, $all_hds) = @_;
- my $dav = { fs_type => 'davfs2' };
+ my $dav = { fs_type => 'davfs2', mntpoint => 'none' };
ask_server($in, $dav, $all_hds) or return;
push @{$all_hds->{davs}}, $dav;
config($in, $dav, $all_hds);
@@ -103,8 +103,8 @@ sub options {
sub remove {
my ($in, $dav, $all_hds) = @_;
- if ($in->ask_yesorno(N("Warning"), N("Are you sure you want to delete this mountpoint?"))) {
- @{$all_hds->{davs}} = grep($_->{mntpoint} ne $dav->{mntpoint}, @{$all_hds->{davs}});
+ if ($in->ask_yesorno(N("Warning"), N("Are you sure you want to delete this mount point?"))) {
+ @{$all_hds->{davs}} = grep { $_->{mntpoint} ne $dav->{mntpoint} } @{$all_hds->{davs}};
return 1;
}
return;
diff --git a/perl-install/diskdrake/diskdrake.html b/perl-install/diskdrake/diskdrake.html
deleted file mode 100644
index cba732084..000000000
--- a/perl-install/diskdrake/diskdrake.html
+++ /dev/null
@@ -1,139 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
-<html>
- <head>
- <title>DiskDrake</title>
- </head>
- <body bgcolor="#ffffff">
-
-<center>
-<table width=80% border=0 cellpadding=10 cellspacing=10>
-<tr>
-<td bgcolor=#ffffff>
-
- <p>
- <img src="images/diskdrake1-def.jpg" alt="diskdrake logo" width=400 height=100>
- <p>
-
- <H2>I- What's it?</H2>
-
- The purpose of the DiskDrake project is to make easier the hard disk
- partitionning. It is graphical, simple and powerful. The license is
- the GPL (General Public License).
- <BR>
- Different skill levels will be available (newbie, advanced user, expert).
- <BR>
- It's written entirely in Perl and Perl/Gtk. It uses resize_fat which is
- a perl rewrite of the work of Andrew Clausen (libresize).
- <P>
- DiskDrake is a project from Mandrakesoft, the company behind the popular
- <a href="http://www.linux-mandrake.com">Linux-Mandrake</a>
- operating-system.
- <P>
- A <A href="http://www.eatel.net/~john/diskdrake/faq.html">FAQ</A> is in construction.
-
- <H2>II - What's available now</H2>
-
- DiskDrake should be usable now...
-
- it can:
- <UL>
- <LI> create partitions
- <LI> delete partitions
- <LI> change type of partition
- <LI> format partitions
- <LI> assign a mount point (<IMG SRC="/images/updated.gif" ALT="updated"><SMALL>(21/07/99)</SMALL> propose a list
- of classic mount points and verify the mount point is valid)
- <LI> mount partitions
- <LI> resize fat partitions
- <LI> resize partitions (when not caring loosing its data)
- <LI> clear partition table
- <LI> auto allocation (usefull for install)
- <LI> write fstab
- </UL>
-
-with nice contextual menu (shortcuts available, but dangerous as all actions are
-available, whereas with the contextual menu these actions are hidden. This will
-change)
-
- <P><IMG SRC="/images/updated.gif" ALT="updated"><SMALL>(25/07/99)</SMALL>
- A new Expert button appear now. It toggles between
- expert and normal mode. Some changes in information displayed:
- <UL>
- <LI> when you click (or focus) the drive tab (eg: hda), you get
- information about your drive: size, geometry
- (cylinders/sectors/heads number), type (eg: IBM DDRS-39130D), and bus/id.
- In normal mode you have only the size.
- <LI> the windows drive letter (eg: C: D: ...)
- <LI> the `start sector' information from normal mode, it still appears in
- expert mode
- <LI> the start&end cylinder of each partition is now displayed in expert
- mode
- <LI> the type is displayed numerically in expert mode
- </UL>
-
- <P><IMG SRC="/images/updated.gif" ALT="updated"><SMALL>(25/07/99)</SMALL>
- The mount point in the `Create' window and `Change type' window is now a
- combo box. It lets you choose between classical mount points (/ /usr /var
- ...) but with already allocated mount points removed.
-
- <H2>III - Actual developpment</H2>
-
- We need people!!!
-
- <UL>
- <LI><B>Tests</B> and remove bugs (no known yet :)
- <LI>integrate ext2resize (which has been release in version 1.0.0 <IMG
- SRC="/images/updated.gif" ALT="updated"><SMALL>(26/07/99)</SMALL>)
- <LI>add possibility to move partition without loosing data (by copying all
- data) <IMG SRC="/images/updated.gif" ALT="updated">
- <LI>Improve the look
- <LI>Add a text-only version
- <LI>Help text, tutorial...
- <LI>Internationalization
- <LI>Add some features...
- <LI>Packaging (rpm, deb, slp...)
- </UL>
-
- <H2>IV- ScreenShot</H2>
-
- Warning: features was the main focus, so don't be too hard :)
-
- <P>
- <CENTER><IMG SRC="1.gif"></IMG></CENTER>
- <CENTER>DiskDrake main interface</CENTER>
-
- <BR>
- <CENTER><IMG SRC="3.gif"></IMG></CENTER>
- <CENTER>create dialog box</CENTER>
-
- <H2>V - Contacts</H2>
-
- A Mailing List has been created to allow developpers to discuss about DiskDrake.<BR>
-
- <P>
- Send a mail to: <A HREF="mailto:sympa@linux-mandrake.com">sympa@linux-mandrake.com</A>
-
- <BR>Put in the subject: subscribe diskdrake
- <BR>When you're subscribed, send your messages to: <A HREF="mailto:diskdrake@linux-mandrake.com">diskdrake@linux-mandrake.com</A>
-
- <P>Otherwise you can contact directly the <A HREF="mailto:pixel@linux-mandrake.com">project leader</A>.
-
- <H2>VI - Download</H2>
-
- Warning: You must have <a href="http://www.perl.com/CPAN/modules/by-module/Gtk/Gtk-Perl-0.5121.tar.gz">Gtk-Perl</a>.
- You can get the rpm from the <a href="http://linux-mandrake.com/cooker/">Cooker</a> distribution.
-
- <P>You also need perl version 5.00503 or better
-
- <P> Here you can find the plain tgz or a rpm:
- <a href="ftp://ftp.phys.ttu.edu/pub/mandrake-devel/contrib/others/diskdrake/">diskdrake</a> (Other mirrors in <a href="http://linux-mandrake.com/cooker/">Cooker</a>)
-
-</td>
-</tr>
-</table>
-<p>
-<a href="/en/fpowerpack.php3"><img src="/images/mandrake6.0-loop.gif" width=468 height=60 alt="Mandrake 6.0 PowerPack"></a>
-</center>
- </body>
- <address><a href="mailto:pixel@linux-mandrake.com"></a></address>
-</html>
diff --git a/perl-install/diskdrake/hd_gtk.pm b/perl-install/diskdrake/hd_gtk.pm
index 6622c3f90..ed3955ea7 100644
--- a/perl-install/diskdrake/hd_gtk.pm
+++ b/perl-install/diskdrake/hd_gtk.pm
@@ -1,11 +1,11 @@
-package diskdrake::hd_gtk; # $Id$
+package diskdrake::hd_gtk;
use diagnostics;
use strict;
use common;
-use mygtk2 qw(gtknew);
-use ugtk2 qw(:helpers :wrappers :create);
+use mygtk3 qw(gtknew);
+use ugtk3 qw(:helpers :wrappers :create);
use partition_table;
use fs::type;
use detect_devices;
@@ -16,21 +16,19 @@ use log;
use fsedit;
use feature qw(state);
-my ($width, $height, $minwidth) = (400, 50, 5);
+my ($width, $height, $minwidth) = (400, 50, 16);
my ($all_hds, $in, $do_force_reload, $current_kind, $current_entry, $update_all);
my ($w, @notebook, $done_button);
-=begin
-
=head1 SYNOPSYS
-struct {
+ struct {
string name # which is displayed in tab of the notebook
bool no_auto # wether the kind can disappear after creation
string type # one of { 'hd', 'raid', 'lvm', 'loopback', 'removable', 'nfs', 'smb', 'dmcrypt' }
hd | hd_lvm | part_raid[] | part_dmcrypt[] | part_loopback[] | raw_hd[] val
-
+
#
widget main_box
widget display_box
@@ -38,12 +36,21 @@ struct {
widget info_box
} current_kind
-part current_entry
+ part current_entry
-notebook current_kind[]
+ notebook current_kind[]
=cut
+sub load_theme() {
+ my $css = "/usr/share/libDrakX/diskdrake.css";
+ -r $css or $css = dirname(__FILE__) . "/../diskdrake.css";
+ -r $css or $css = dirname(__FILE__) . "/../share/diskdrake.css";
+ my $pl = Gtk3::CssProvider->new;
+ $pl->load_from_path($css);
+ Gtk3::StyleContext::add_provider_for_screen(Gtk3::Gdk::Screen::get_default(), $pl, Gtk3::STYLE_PROVIDER_PRIORITY_APPLICATION);
+}
+
sub main {
($in, $all_hds, $do_force_reload) = @_;
@@ -51,33 +58,32 @@ sub main {
local $in->{grab} = 1;
- $w = ugtk2->new(N("Partitioning"));
- $::main_window = $w->{real_window} if !$::isEmbedded && !$::isInstall;
- my $rc = "/usr/share/libDrakX/diskdrake.rc";
- -r $rc or $rc = dirname(__FILE__) . "/../diskdrake.rc";
- -r $rc or $rc = dirname(__FILE__) . "/../share/diskdrake.rc";
- Gtk2::Rc->parse($rc);
+ $w = ugtk3->new(N("Partitioning"));
+ mygtk3::register_main_window($w->{real_window}) if !$::isEmbedded && !$::isInstall;
+
+ load_theme();
+ $w->{window}->signal_connect('style-updated' => \&load_theme);
# TODO
# is_empty_array_ref($all_hds->{raids}) or raid::stopAll;
# updateLoopback();
gtkadd($w->{window},
- gtkpack_(Gtk2::VBox->new(0,7),
+ gtkpack_(Gtk3::VBox->new(0,7),
0, gtknew(($::isInstall ? ('Title1', 'label') : ('Label_Left', 'text'))
=> N("Click on a partition, choose a filesystem type then choose an action"),
# workaround infamous 6 years old gnome bug #101968:
- width => mygtk2::get_label_width()
+ width => mygtk3::get_label_width()
),
- 1, (my $notebook_widget = Gtk2::Notebook->new),
+ 1, (my $notebook_widget = Gtk3::Notebook->new),
0, (my $per_kind_action_box = gtknew('HButtonBox', layout => 'edge')),
- 0, (my $per_kind_action_box2 = gtknew('HButtonBox', layout => 'end')),
- 0, Gtk2::HSeparator->new,
+ 0, Gtk3::HSeparator->new,
0, (my $general_action_box = gtknew('HBox', spacing => 5)),
),
);
my ($lock, $initializing) = (undef, 1);
$update_all = sub {
+ my ($o_refresh_gui) = @_;
state $not_first;
return if $initializing && $not_first;
$not_first = 1;
@@ -86,10 +92,15 @@ sub main {
partition_table::assign_device_numbers($_) foreach fs::get::hds($all_hds);
create_automatic_notebooks($notebook_widget);
general_action_box($general_action_box);
- per_kind_action_box($per_kind_action_box, $per_kind_action_box2, $current_kind);
+ per_kind_action_box($per_kind_action_box, $current_kind);
current_kind_changed($in, $current_kind);
current_entry_changed($current_kind, $current_entry);
$lock = 0;
+ if ($o_refresh_gui) {
+ my $new_page = $o_refresh_gui > 1 ? $notebook_widget->get_current_page : 0;
+ $notebook_widget->set_current_page(-1);
+ $notebook_widget->set_current_page($new_page);
+ }
};
create_automatic_notebooks($notebook_widget);
@@ -98,15 +109,33 @@ sub main {
$current_entry = '';
$update_all->();
});
- # ensure partitions bar is properlyz size on first display:
+ # ensure partitions bar is properly sized on first display:
$notebook_widget->signal_connect(realize => $update_all);
$w->sync;
+ # add a bogus tab so that gtk+ displayed everything when there's only one disk:
+ $notebook_widget->prepend_page(Gtk3::Label->new, Gtk3::Label->new);
+ $notebook_widget->set_current_page(0);
+ # there's always at least one child (at least a button for create a new part on empty discs):
+ my @children = $current_kind->{display_box} ? $current_kind->{display_box}->get_children : ();
+ # workaround for $notebook_widget being realized too early:
+ if (!@children ||!$done_button) {
+ $notebook_widget->set_current_page(-1);
+ $notebook_widget->set_current_page(0);
+ undef $initializing;
+ $update_all->(2);
+ }
+ undef $initializing;
+ # remove bogus tab we added just to be sure gtk+ displayed everything:
+ $notebook_widget->remove_page(0);
+ # restore position when there's several disks:
+ $notebook_widget->set_current_page(0);
$done_button->grab_focus;
- $in->ask_from_list_(N("Read carefully"), N("Please make a backup of your data first"),
- [ N_("Exit"), N_("Continue") ], N_("Continue")) eq N_("Continue") or return
- if $::isStandalone;
+ if (!$::testing) {
+ $in->ask_from_list_(N("Read carefully"), N("Please make a backup of your data first"),
+ [ N_("Exit"), N_("Continue") ], N_("Continue")) eq N_("Continue") or return
+ if $::isStandalone;
+ }
- undef $initializing;
$w->main;
}
@@ -118,18 +147,29 @@ sub try {
sub try_ {
my ($name, $f, @args) = @_;
+ my $dm_active_before = ($current_entry && $current_entry->{dm_active} && $current_entry->{dm_name});
my $v = eval { $f->($in, @args, $all_hds) };
if (my $err = $@) {
+ warn $err, "\n", backtrace() if $in->isa('interactive::gtk');
$in->ask_warn(N("Error"), formatError($err));
}
+ my $refresh = 0;
if ($v eq 'force_reload') {
$all_hds = $do_force_reload->();
+ $refresh = 1;
}
- $current_entry = '' if !diskdrake::interactive::is_part_existing($current_entry, $all_hds);
- $update_all->();
+ if (!diskdrake::interactive::is_part_existing($current_entry, $all_hds)) {
+ $current_entry = '';
+ } elsif (!$dm_active_before && $current_entry->{dm_active} && $current_entry->{dm_name}) {
+ if (my $mapped_part = fs::get::device2part("mapper/$current_entry->{dm_name}", $all_hds->{dmcrypts})) {
+ $current_entry = $mapped_part;
+ $refresh = 2;
+ }
+ }
+ $update_all->($refresh);
- Gtk2->main_quit if $v && member($name, 'Done');
+ Gtk3->main_quit if $v && member($name, 'Done');
}
sub get_action_box_size() {
@@ -143,26 +183,26 @@ sub add_kind2notebook {
my ($notebook_widget, $kind) = @_;
die if $kind->{main_box};
- $kind->{display_box} = gtkset_size_request(Gtk2::HBox->new(0,0), $width, $height);
- $kind->{action_box} = gtkset_size_request(Gtk2::VBox->new(), get_action_box_size());
- $kind->{info_box} = Gtk2::VBox->new(0,0);
+ $kind->{display_box} = gtkset_size_request(Gtk3::HBox->new(0,0), $width, $height);
+ $kind->{action_box} = gtkset_size_request(Gtk3::VBox->new, get_action_box_size());
+ $kind->{info_box} = Gtk3::VBox->new(0,0);
my $box =
- gtkpack_(Gtk2::VBox->new(0,7),
- 0, $kind->{display_box},
+ gtkpack_(Gtk3::VBox->new(0,7),
+ 0, create_scrolled_window($kind->{display_box}, [ 'automatic', 'never' ]),
0, filesystems_button_box(),
1, $kind->{info_box});
$kind->{main_box} = gtknew('HBox', spacing => 5, children => [
1, $box,
0, $kind->{action_box},
]);
- ugtk2::add2notebook($notebook_widget, $kind->{name}, $kind->{main_box});
+ ugtk3::add2notebook($notebook_widget, $kind->{name}, $kind->{main_box});
push @notebook, $kind;
$kind;
}
sub interactive_help() {
if ($::isInstall) {
- $in->display_help({ interactive_help_id => 'diskdrake' }, $w);
+ $in->display_help({ interactive_help_id => 'diskdrake' });
} else {
require run_program;
run_program::raw({ detach => 1 }, 'drakhelp', '--id', 'diskdrake');
@@ -182,28 +222,25 @@ sub general_action_box {
N_("Done"));
my $box_end = gtknew('HButtonBox', layout => 'end', spacing => 5);
foreach my $s (@actions) {
- my $button = Gtk2::Button->new(translate($s));
+ my $button = Gtk3::Button->new(translate($s));
$done_button = $button if $s eq 'Done';
gtkadd($box_end, gtksignal_connect($button, clicked => sub { try($s) }));
}
gtkadd($box, $box_start, $box_end);
}
sub per_kind_action_box {
- my ($box, $box2, $kind) = @_;
- $_->destroy foreach $box->get_children, $box2->get_children;
-
- $kind->{type} =~ /hd|lvm/ or return;
+ my ($box, $kind) = @_;
+ $_->destroy foreach $box->get_children;
- foreach my $s (diskdrake::interactive::hd_possible_actions_base($in, kind2hd($kind), $all_hds)) {
+ my @actions = (if_($kind->{type} =~ /hd|lvm/, diskdrake::interactive::hd_possible_actions_base($in)),
+ diskdrake::interactive::hd_possible_actions_extra($in));
+ foreach my $s (@actions) {
gtkadd($box,
- gtksignal_connect(Gtk2::Button->new(translate($s)),
- clicked => sub { try($s, kind2hd($kind)) }));
- }
- foreach my $s (diskdrake::interactive::hd_possible_actions_extra($in, kind2hd($kind), $all_hds)) {
- gtkadd($box2,
- gtksignal_connect(Gtk2::Button->new(translate($s)),
+ gtksignal_connect(Gtk3::Button->new(translate($s)),
clicked => sub { try($s, kind2hd($kind)) }));
}
+ # make sure a big translations window to resize (as by default all buttons have the same size):
+ $box->set_child_non_homogeneous($_, Glib::TRUE), "\n" foreach $box->get_children;
}
sub per_entry_action_box {
my ($box, $kind, $entry) = @_;
@@ -212,18 +249,18 @@ sub per_entry_action_box {
if ($entry) {
my @buttons = map {
my $s = $_;
- my $w = Gtk2::Button->new(translate($s));
+ my $w = Gtk3::Button->new(translate($s));
$w->signal_connect(clicked => sub { try($s, kind2hd($kind), $entry) });
$w;
} diskdrake::interactive::part_possible_actions($in, kind2hd($kind), $entry, $all_hds);
- gtkadd($box, create_scrolled_window(gtkpack__(Gtk2::VBox->new(), @buttons), undef, 'none')) if @buttons;
+ gtkadd($box, create_scrolled_window(gtkpack__(Gtk3::VBox->new, @buttons), undef, 'none')) if @buttons;
} else {
my $txt = !$::isStandalone && fsedit::is_one_big_fat_or_NT($all_hds->{hds}) ?
N("You have one big Microsoft Windows partition.
I suggest you first resize that partition
(click on it, then click on \"Resize\")") : N("Please click on a partition");
- gtkpack($box, gtktext_insert(Gtk2::TextView->new, $txt));
+ gtkpack($box, gtktext_insert(Gtk3::TextView->new, $txt));
}
}
@@ -238,21 +275,16 @@ sub per_entry_info_box {
}
gtkpack($box, gtkadd(gtkcreate_frame(N("Details")),
gtknew('HBox', border_width => 5, children_loose => [
- gtkset_alignment(gtkset_justify(Gtk2::Label->new($info), 'left'), 0, 0) ])));
+ gtkset_alignment(gtkset_justify(gtknew('Label', selectable => 1, text => $info), 'left'), 0, 0) ])));
}
sub current_kind_changed {
my ($_in, $kind) = @_;
+ return if !$kind->{display_box};
$_->destroy foreach $kind->{display_box}->get_children;
-
- my $v = $kind->{val};
- my @parts =
- $kind->{type} eq 'raid' ? grep { $_ } @$v :
- $kind->{type} eq 'dmcrypt' ? @$v :
- $kind->{type} eq 'loopback' ? @$v : fs::get::hds_fstab_and_holes($v);
- my $totalsectors =
- $kind->{type} =~ /raid|dmcrypt|loopback/ ? sum(map { $_->{size} } @parts) : $v->{totalsectors};
+ my @parts = kind2parts($kind);
+ my $totalsectors = kind2sectors($kind, @parts);
create_buttons4partitions($kind, $totalsectors, @parts);
}
@@ -279,26 +311,39 @@ sub create_automatic_notebooks {
$may_add->(hd2kind($_)) foreach @{$all_hds->{hds}};
$may_add->(lvm2kind($_)) foreach @{$all_hds->{lvms}};
$may_add->(raid2kind()) if @{$all_hds->{raids}};
- $may_add->(dmcrypt2kind()) if @{$all_hds->{dmcrypts}};
$may_add->(loopback2kind()) if @{$all_hds->{loopbacks}};
- @notebook = grep_index {
- my $b = $_->{marked} or $notebook_widget->remove_page($::i);
- $b;
+ my $i = 0;
+ @notebook = grep {
+ if ($_->{marked}) {
+ $i++;
+ 1;
+ } else {
+ $notebook_widget->remove_page($i);
+ 0;
+ }
} @notebook;
- @notebook or $in->ask_warn(N("Error"), N("No hard drives found")), $in->exit(1);
+ @notebook or $in->ask_warn(N("Error"), N("No hard disk drives found")), $in->exit(1);
}
################################################################################
# parts: helpers
################################################################################
sub create_buttons4partitions {
- my ($kind, $totalsectors, @parts) = @_;
+ my ($kind, $totalsectors, @all_parts) = @_;
+
+ if ($w->{window}->get_window) {
+ my $windowwidth = $w->{window}->get_allocated_width;
+ $windowwidth = $::real_windowwidth if $windowwidth <= 1;
+ $width = $windowwidth - first(get_action_box_size()) - 25;
+ }
- $width = first($w->{window}->window->get_size) - first(get_action_box_size()) - 25 if $w->{window}->window;
+ my @parts = grep { $_->{size} > MB(2) || !isEmpty($_) } @all_parts;
my $ratio = $totalsectors ? ($width - @parts * $minwidth) / $totalsectors : 1;
- while (1) {
+ my $i = 1;
+ while ($i < 30) {
+ $i++;
my $totalwidth = sum(map { $_->{size} * $ratio + $minwidth } @parts);
$totalwidth <= $width and last;
$ratio /= $totalwidth / $width * 1.1;
@@ -312,9 +357,15 @@ sub create_buttons4partitions {
};
foreach my $entry (@parts) {
- my $info = $entry->{mntpoint} || $entry->{device_LABEL};
+ if (isRawLUKS($entry) && $entry->{dm_active}) {
+ my $p = find { $entry->{dm_name} eq $_->{dmcrypt_name} } @{$all_hds->{dmcrypts}};
+ $entry = $p if $p;
+ }
+ my $info = $entry->{mntpoint} || $entry->{device_LABEL} || '';
$info .= "\n" . ($entry->{size} ? formatXiB($entry->{size}, 512) : N("Unknown")) if $info;
- my $w = Gtk2::ToggleButton->new_with_label($info) or internal_error('new_with_label');
+ my $w = ($info ? Gtk3::ToggleButton->new_with_label($info) : Gtk3::ToggleButton->new) or internal_error('new_with_label');
+ $info and $w->get_child->set_ellipsize('end');
+ $w->set_tooltip_text($info);
$w->signal_connect(clicked => sub {
$current_button != $w or return;
current_entry_changed($kind, $entry);
@@ -338,12 +389,15 @@ sub create_buttons4partitions {
last;
}
});
- my @colorized_fs_types = qw(ext3 ext4 xfs swap vfat ntfs ntfs-3g);
+ if (isLUKS($entry) || isRawLUKS($entry)) {
+ $w->set_image(gtknew("Image", file => "security-strong"));
+ }
+ my @colorized_fs_types = qw(ext3 ext4 xfs swap vfat ntfs ntfs-3g exfat);
$w->set_name("PART_" . (isEmpty($entry) ? 'empty' :
$entry->{fs_type} && member($entry->{fs_type}, @colorized_fs_types) ? $entry->{fs_type} :
'other'));
$w->set_size_request($entry->{size} * $ratio + $minwidth, 0);
- gtkpack__($kind->{display_box}, $w);
+ gtkpack($kind->{display_box}, $w);
if ($current_entry && fsedit::are_same_partitions($current_entry, $entry)) {
$set_current_button->($w);
$w->grab_focus;
@@ -356,7 +410,7 @@ sub create_buttons4partitions {
# disks: helpers
################################################################################
sub current_hd() {
- $current_kind->{type} =~ /hd|lvm/ or die 'current_hd called but $current_kind is not an hd ('.$current_kind->{type}.')';
+ $current_kind->{type} =~ /hd|lvm/ or die 'current_hd called but $current_kind is not an hd (' . $current_kind->{type} . ')';
$current_kind->{val};
}
sub current_part() {
@@ -375,17 +429,17 @@ sub hd2kind {
}
sub filesystems_button_box() {
- my @types = (N_("Ext3"), N_("XFS"), N_("Swap"), arch() =~ /sparc/ ? N_("SunOS") : arch() eq "ppc" ? N_("HFS") : N_("Windows"),
+ my @types = (N_("Ext4"), N_("XFS"), N_("Swap"), N_("Windows"),
N_("Other"), N_("Empty"));
my %name2fs_type = (Ext3 => 'ext3', Ext4 => 'ext4', 'XFS' => 'xfs', Swap => 'swap', Other => 'other', "Windows" => 'vfat', HFS => 'hfs');
- gtkpack(Gtk2::HBox->new(),
+ gtkpack(Gtk3::HBox->new,
map {
my $t = $name2fs_type{$_};
my $w = gtknew('Button', text => translate($_), widget_name => 'PART_' . ($t || 'empty'),
tip => N("Filesystem types:"),
clicked => sub { try_('', \&createOrChangeType, $t, current_hd(), current_part()) });
- $w->can_focus(0);
+ $w->set_can_focus(0);
$w;
} @types);
}
@@ -417,6 +471,21 @@ sub createOrChangeType {
}
}
+sub kind2parts {
+ my ($kind) = @_;
+ my $v = $kind->{val};
+ my @parts =
+ $kind->{type} eq 'raid' ? grep { $_ } @$v :
+ $kind->{type} eq 'loopback' ? @$v : fs::get::hds_fstab_and_holes($v);
+ @parts;
+}
+
+sub kind2sectors {
+ my ($kind, @parts) = @_;
+ my $v = $kind->{val};
+ $kind->{type} =~ /raid|loopback/ ? sum(map { $_->{size} } @parts) : $v->{totalsectors};
+}
+
################################################################################
# lvms: helpers
################################################################################
@@ -432,11 +501,9 @@ sub raid2kind() {
{ type => 'raid', name => 'raid', val => $all_hds->{raids} };
}
-################################################################################
-# loopbacks: helpers
-################################################################################
-sub dmcrypt2kind() {
- { type => 'dmcrypt', name => 'dmcrypt', val => $all_hds->{dmcrypts} };
+sub raid2real_kind {
+ my ($raid) = @_;
+ { type => 'raid', name => 'raid', val => $raid };
}
################################################################################
diff --git a/perl-install/diskdrake/interactive.pm b/perl-install/diskdrake/interactive.pm
index 56ff98934..59e79782c 100644
--- a/perl-install/diskdrake/interactive.pm
+++ b/perl-install/diskdrake/interactive.pm
@@ -1,9 +1,11 @@
-package diskdrake::interactive; # $Id$
+package diskdrake::interactive;
use diagnostics;
use strict;
use utf8;
+use lib qw(/usr/lib/libDrakX); # for perl_checker
+use MDK::Common; # for perl_checker
use common;
use fs::type;
use fs::loopback;
@@ -20,19 +22,16 @@ use raid;
use any;
use log;
-
-=begin
-
=head1 SYNOPSYS
-struct part {
+ struct part {
int active # one of { 0 | 0x80 } x86 only, primary only
int start # in sectors
int size # in sectors
int pt_type # 0x82, 0x83, 0x6 ...
string fs_type # 'ext2', 'nfs', ...
string type_name # 'Linux RAID', 'Linux Logical Volume Manager', ...
-
+
int part_number # 1 for hda1...
string device # 'hda5', 'sdc1' ...
string device_LABEL # volume label. LABEL=xxx or /dev/disk/by-label/xxx can be used in fstab instead of the device
@@ -42,7 +41,7 @@ struct part {
bool prefer_device # should the {device} be used in fstab
bool faked_device # false if {device} is a real device, true for nfs/smb/dav/none devices. If the field does not exist, we do not know
bool device_LABEL_changed # true if device_LABEL is different from the one on the disk
-
+
string rootDevice # 'sda', 'hdc' ... (can also be a VG_name)
string real_mntpoint # directly on real /, '/tmp/hdimage' ...
string mntpoint # '/', '/usr' ...
@@ -51,32 +50,32 @@ struct part {
string encrypt_key # [0-9A-Za-z./]{20,}
string comment # comment to have in fstab
string volume_label #
-
+
bool is_removable # is the partition on a removable drive
bool isMounted
-
+
bool isFormatted
bool notFormatted
# isFormatted means the device is formatted
# !isFormatted && notFormatted means the device is not formatted
# !isFormatted && !notFormatted means we do not know which state we're in
-
+
string raid # for partitions of type isRawRAID and which isPartOfRAID, the raid device
string lvm # partition used as a PV for the VG with {lvm} as VG_name #-#
loopback loopback[] # loopback living on this partition
-
+
string dmcrypt_key
string dm_name
bool dm_active
-
+
# internal
string real_device # '/dev/loop0', '/dev/loop1' ... (used for encrypted loopback)
-
+
# internal CHS (Cylinder/Head/Sector)
int start_cyl, start_head, start_sec, end_cyl, end_head, end_sec,
}
-struct part_allocate inherits part {
+ struct part_allocate inherits part {
int maxsize # in sectors (alike "size")
int min_hd_size # in sectors (do not allocate if the drive is smaller than the given size)
int ratio #
@@ -84,44 +83,44 @@ struct part_allocate inherits part {
string parts # for creating raid partitions. eg: 'foo bar' where 'foo' and 'bar' are mntpoint
}
-struct part_raid inherits part {
+ struct part_raid inherits part {
string chunk-size # in KiB, usually '64'
string level # one of { 0, 1, 4, 5, 'linear' }
string UUID
-
+
part disks[]
-
+
# invalid: active, start, rootDevice, device_windobe?, CHS
}
-struct part_dmcrypt inherits part {
+ struct part_dmcrypt inherits part {
string dmcrypt_name
-
+
# rootDevice is special here: it is the device hosting the dm
}
-struct part_loopback inherits part {
+ struct part_loopback inherits part {
string loopback_file # absolute file name which is relative to the partition
part loopback_device # where the loopback file live
-
+
# device is special here: it is the absolute filename of the loopback file.
-
+
# invalid: active, start, rootDevice, device_windobe, CHS
}
-struct part_lvm inherits part {
+ struct part_lvm inherits part {
# invalid: active, start, device_windobe, CHS
string lv_name
}
-struct partition_table_elem {
+ struct partition_table_elem {
part normal[] #
part extended # the main/next extended
part raw[4] # primary partitions
}
-struct geom {
+ struct geom {
int heads
int sectors
int cylinders
@@ -129,14 +128,14 @@ struct geom {
int start # always 0, forget it
}
-struct hd {
+ struct hd {
int totalsectors # size in sectors
string device # 'hda', 'sdc' ...
string device_alias # 'cdrom', 'floppy' ...
string media_type # one of { 'hd', 'cdrom', 'fd', 'tape' }
string capacity # contain of the strings of { 'burner', 'DVD' }
string info # name of the hd, eg: 'QUANTUM ATLAS IV 9 WLS'
-
+
bool readonly # is it allowed to modify the partition table
bool getting_rid_of_readonly_allowed # is it forbidden to write because the partition table is badly handled, or is it because we MUST not change the partition table
bool isDirty # does it need to be written to the disk
@@ -147,37 +146,37 @@ struct hd {
# - add an extended partition which is the first extended partition
list allPartitionsRenumbered # used to update bootloader configuration
int bus, id
-
+
bool is_removable # is it a removable drive
-
+
partition_table_elem primary
partition_table_elem extended[]
-
+
geom geom
-
+
# internal
string prefix # for some RAID arrays device=>c0d0 and prefix=>c0d0p
string file # '/dev/hda' ...
}
-struct hd_lvm inherits hd {
+ struct hd_lvm inherits hd {
int PE_size # block size (granularity, similar to cylinder size on x86)
string VG_name # VG name
-
+
part_lvm disks[]
-
+
# invalid: bus, id, extended, geom
}
-struct raw_hd inherits hd {
+ struct raw_hd inherits hd {
string fs_type # 'ext2', 'nfs', ...
string mntpoint # '/', '/usr' ...
string options # 'defaults', 'noauto'
-
+
# invalid: isDirty, will_tell_kernel, rebootNeeded, primary, extended
}
-struct all_hds {
+ struct all_hds {
hd hds[]
hd_lvm lvms[]
part_raid raids[]
@@ -188,7 +187,7 @@ struct all_hds {
raw_hd smbs[]
raw_hd davs[]
raw_hd special[]
-
+
# internal: if fstab_to_string($all_hds) eq current_fstab then no need to save
string current_fstab
}
@@ -286,16 +285,19 @@ sub Done {
$in->ask_yesorno(N("Quit without saving"), N("Quit without writing the partition table?"), 1) or return;
}
}
+ foreach (@{$all_hds->{raids}}) {
+ raid::make($all_hds->{raids}, $_);
+ }
if (!$::isInstall) {
my $new = fs::fstab_to_string($all_hds);
- if ($new ne $all_hds->{current_fstab} && $in->ask_yesorno(N("Confirmation"), N("Do you want to save /etc/fstab modifications"), 1)) {
+ if ($new ne $all_hds->{current_fstab} && $in->ask_yesorno(N("Confirmation"), N("Do you want to save the /etc/fstab modifications?"), 1)) {
$all_hds->{current_fstab} = $new;
fs::write_fstab($all_hds);
}
update_bootloader_for_renumbered_partitions($in, $all_hds);
if (any { $_->{rebootNeeded} } @{$all_hds->{hds}}) {
- $in->ask_warn(N("Partitioning"), N("You need to reboot for the partition table modifications to take place"));
+ $in->ask_warn(N("Partitioning"), N("You need to reboot for the partition table modifications to take effect"));
tell_wm_and_reboot();
}
}
@@ -320,7 +322,7 @@ sub hd_possible_actions_base {
sub hd_possible_actions_extra {
my ($_hd) = @_;
- $::expert ? N_("Toggle to normal mode") : N_("Toggle to expert mode");
+ $::expert ? N_("Normal mode") : N_("Expert mode");
}
@@ -332,7 +334,7 @@ sub hd_possible_actions {
sub hd_possible_actions_interactive {
my ($_in, $_hd, $_all_hds) = @_;
- &hd_possible_actions, N_("Hard drive information");
+ &hd_possible_actions, N_("Hard disk drive information");
}
sub Clear_all {
@@ -351,22 +353,23 @@ sub Clear_all {
$hd->{getting_rid_of_readonly_allowed} = 0; #- we don't need this flag anymore
fsedit::partition_table_clear_and_initialize($all_hds->{lvms}, $hd, $in);
}
+ fsedit::init_mntpnt_suggestions($all_hds, $hd, 1);
}
sub Auto_allocate {
my ($in, $hd, $all_hds) = @_;
- my $suggestions = partitions_suggestions($in) or return;
+ my $suggestions = partitions_suggestions($in, $all_hds, $hd) or return;
my %all_hds_ = %$all_hds;
$all_hds_{hds} = [ sort { $a == $hd ? -1 : 1 } fs::get::hds($all_hds) ];
- eval { fsedit::auto_allocate(\%all_hds_, $suggestions) };
+ eval { fsedit::auto_allocate(\%all_hds_, $suggestions, $hd) };
if ($@) {
$@ =~ /partition table already full/ or die;
$in->ask_warn("", [
N("All primary partitions are used"),
- N("I can not add any more partitions"),
+ N("I cannot add any more partitions"),
N("To have more partitions, please delete one to be able to create an extended partition"),
]);
}
@@ -392,6 +395,10 @@ sub Hd_info {
# per-part actions
################################################################################
+sub is_LVM_resizable {
+ my ($part) = @_;
+ member($part->{fs_type}, qw(btrfs ext3 ext4 nilfs2 reiserfs xfs));
+}
sub part_possible_actions {
my ($_in, $hd, $part, $all_hds) = @_;
$part or return;
@@ -402,8 +409,8 @@ sub part_possible_actions {
N_("Type") => '!isBusy && $::expert && (!readonly || $part->{pt_type} == 0x83)',
N_("Options") => '!isSwap($part) && !isNonMountable && $::expert',
N_("Label") => '!isNonMountable && $::expert && fs::format::canEditLabel($part)',
- N_("Resize") => '!isBusy && !readonly && !isSpecial || isLVM($hd) && LVM_resizable',
- N_("Format") => '!isBusy && !isRawLVM && !isPartOfLVM && (!readonly && ($::expert || $::isStandalone) || fs::type::isRawLUKS($part))',
+ N_("Resize") => '!isBusy && !readonly && !isSpecial || isLVM($hd) && is_LVM_resizable',
+ N_("Format") => '!isBusy && isFormatable && (!readonly && ($::expert || $::isStandalone) || fs::type::isRawLUKS($part))',
N_("Mount") => '!isBusy && (hasMntpoint || isSwap) && maybeFormatted && ($::expert || $::isStandalone)',
N_("Add to RAID") => '!isBusy && isRawRAID && (!isSpecial || isRAID)',
N_("Add to LVM") => '!isBusy && isRawLVM',
@@ -421,7 +428,6 @@ sub part_possible_actions {
my %macros = (
readonly => '$hd->{readonly}',
hasMntpoint => '$part->{mntpoint}',
- LVM_resizable => 'member($part->{fs_type}, qw(reiserfs xfs ext3 ext4))',
canModifyRAID => 'isPartOfRAID($part) && !isMounted(fs::get::device2part($part->{raid}, $all_hds->{raids}))',
);
if (isEmpty($part)) {
@@ -436,16 +442,20 @@ sub part_possible_actions {
$cond =~ s/$k/qq(($v))/e;
}
$cond =~ s/(^|[^:\$]) \b ([a-z]\w{3,}) \b ($|[\s&\)])/$1 . $2 . '($part)' . $3/exg;
- eval $cond;
+ my $res = eval $cond;
+ if (my $err = $@) {
+ warn "ERROR: Bogus condition for '$actions{$_}': $err\n";
+ }
+ $res;
} @$actions_names;
}
}
sub View {
- my ($in, $hd, $part, $all_hds) = @_;
+ my ($in, $_hd, $part, $_all_hds) = @_;
my $handle = any::inspect($part, $::prefix);
if ($handle) {
- $in->ask_directory({'directory'=>$handle->{dir}});
+ $in->ask_directory({ 'directory' => $handle->{dir} });
} else {
$in->ask_warn(N("Error"), N("Failed to mount partition"));
}
@@ -465,7 +475,7 @@ sub Create {
$part->{mntpoint} = '' if !$do_suggest_mount_point;
} else {
$part->{size} = $part->{maxsize};
- fs::type::suggest_fs_type($part, 'ext3');
+ fs::type::suggest_fs_type($part, defaultFS());
}
if (isLVM($hd)) {
lvm::suggest_lv_name($hd, $part);
@@ -478,6 +488,8 @@ sub Create {
my $type_name = fs::type::part2type_name($part);
my $mb_size = to_Mb($part->{size});
my $has_startsector = ($::expert || arch() !~ /i.86/) && !isLVM($hd);
+ my $use_dmcrypt;
+ my $requested_type;
$in->ask_from(N("Create a new partition"), '',
[
@@ -491,22 +503,43 @@ sub Create {
{ label => N("Filesystem type: "), val => \$type_name, list => [ fs::type::type_names($::expert, $hd) ],
sort => 0, if_($::expert, gtk => { wrap_width => 2 }, do_not_ellipsize => 1) },
{ label => N("Mount point: "), val => \$part->{mntpoint}, list => [ fsedit::suggestions_mntpoint($all_hds), '' ],
+ if_(isLVM($hd), changed => sub {
+ undef $part->{lv_name};
+ lvm::suggest_lv_name($hd, $part);
+ }), type => 'combo', not_edit => 0,
disabled => sub { my $p = fs::type::type_name2subpart($type_name); isSwap($p) || isNonMountable($p) }, type => 'combo', not_edit => 0,
},
if_($::expert && $hd->hasExtended,
{ label => N("Preference: "), val => \$primaryOrExtended, list => [ '', "Extended", "Primary", if_($::expert, "Extended_0x85") ] },
),
- if_($::expert && isLVM($hd),
+ if_(isLVM($hd),
{ label => N("Logical volume name "), val => \$part->{lv_name}, list => [ qw(root swap usr home var), '' ], sort => 0, not_edit => 0 },
),
+ { label => N("Encrypt partition"), type => 'bool', val => \$use_dmcrypt, disabled => sub { $part->{mntpoint} eq "/boot" } },
+ { label => N("Encryption key "), val => \$part->{dmcrypt_key}, disabled => sub { !$use_dmcrypt }, hidden => 1, weakness_check => 1 },
+ { label => N("Encryption key (again)"), val => \$part->{dmcrypt_key2}, disabled => sub { !$use_dmcrypt }, hidden => 1 },
], complete => sub {
$part->{size} = from_Mb($mb_size, min_partition_size($hd), $max - $part->{start}); #- need this to be able to get back the approximation of using MB
- put_in_hash($part, fs::type::type_name2subpart($type_name));
$do_suggest_mount_point = 0 if !$part->{mntpoint};
+ put_in_hash($part, fs::type::type_name2subpart($type_name));
$part->{mntpoint} = '' if isNonMountable($part);
$part->{mntpoint} = 'swap' if isSwap($part);
fs::mount_options::set_default($part, ignore_is_removable => 1);
+ # if user asked to encrypt the partition, use dm-crypt and create requested fs inside
+ if ($use_dmcrypt) {
+ my $err;
+ $err = N("The encryption keys do not match") unless $part->{dmcrypt_key} eq $part->{dmcrypt_key2};
+ $err = N("Missing encryption key") unless $part->{dmcrypt_key};
+ if ($err) {
+ $in->ask_warn(N("Error"), $err);
+ return 1;
+ }
+ $requested_type = $type_name;
+ $type_name = 'Encrypted';
+ }
+
+ put_in_hash($part, fs::type::type_name2subpart($type_name));
check($in, $hd, $part, $all_hds) or return 1;
$migrate_files = need_migration($in, $part->{mntpoint}) or return 1;
@@ -517,7 +550,7 @@ sub Create {
};
if (my $err = $@) {
if ($err =~ /raw_add/ && $hd->hasExtended && !$hd->{primary}{extended}) {
- $in->ask_warn(N("Error"), N("You can not create a new partition
+ $in->ask_warn(N("Error"), N("You cannot create a new partition
(since you reached the maximal number of primary partitions).
First remove a primary partition and create an extended partition."));
return 0;
@@ -530,9 +563,26 @@ First remove a primary partition and create an extended partition."));
},
) or return;
+ if ($use_dmcrypt) {
+ write_partitions($in, $hd) or return;
+ # Initialize it and format it
+ dmcrypt_format($in, $hd, $part, $all_hds);
+ my $p = find { $part->{dm_name} eq $_->{dmcrypt_name} } @{$all_hds->{dmcrypts}};
+ my $p2 = fs::type::type_name2subpart($requested_type);
+ $p->{fs_type} = $p2->{fs_type};
+ $p->{type_name} = $requested_type;
+ $p->{mntpoint} = $part->{mntpoint};
+ $part->{mntpoint} = '';
+ if ($::isStandalone) {
+ fs::format::check_package_is_installed_format($in->do_pkgs, $p->{fs_type}) or log::l("Missing package");
+ }
+ _format_raw($in, $p, $all_hds, isRawLVM($p));
+ }
+
warn_if_renumbered($in, $hd);
if ($migrate_files eq 'migrate') {
+ # FIXME check encrypt case
format_($in, $hd, $part, $all_hds) or return;
migrate_files($in, $hd, $part);
fs::mount::part($part);
@@ -541,6 +591,11 @@ First remove a primary partition and create an extended partition."));
sub Delete {
my ($in, $hd, $part, $all_hds) = @_;
+ if (fs::type::isLUKS($part)) {
+ my $p = find { $_->{dm_name} eq $part->{dmcrypt_name} } partition_table::get_normal_parts($hd);
+ RemoveFromDm($in, $hd, $p, $all_hds);
+ $part = $p;
+ }
if (isRAID($part)) {
raid::delete($all_hds->{raids}, $part);
} elsif (isLVM($hd)) {
@@ -555,9 +610,6 @@ sub Delete {
delete $part->{loopback_device}{loopback} if @$l == 0;
fsedit::recompute_loopbacks($all_hds);
} else {
- if (arch() =~ /ppc/) {
- undef $partition_table::mac::bootstrap_part if isAppleBootstrap($part) && ($part->{device} = $partition_table::mac::bootstrap_part);
- }
partition_table::remove($hd, $part);
warn_if_renumbered($in, $hd);
}
@@ -569,11 +621,15 @@ sub Type {
my $warned;
my $warn = sub {
$warned = 1;
- ask_alldatawillbelost($in, $part, N_("After changing type of partition %s, all data on this partition will be lost"));
+ if (maybeFormatted($part)) {
+ ask_alldatawillbelost($in, $part, N_("After changing type of partition %s, all data on this partition will be lost"));
+ } else {
+ 1;
+ }
};
- #- for ext2, warn after choosing as ext2->ext3 can be achieved without loosing any data :)
- $part->{fs_type} eq 'ext2' || $part->{fs_type} =~ /ntfs/ or $warn->() or return;
+ #- for ext2/ext3, warn after choosing as ext2->ext3 and ext*->ext4 can be achieved without loosing any data :)
+ member($part->{fs_type}, qw(ext2 ext3)) || $part->{fs_type} =~ /ntfs/ or $warn->() or return;
my @types = fs::type::type_names($::expert, $hd);
@@ -590,7 +646,7 @@ sub Type {
my $type = $type_name && fs::type::type_name2subpart($type_name);
- if (member($type->{fs_type}, qw(ext2 ext3 ext4))) {
+ if ($part->{fs_type} eq 'ext2' && $type->{fs_type} eq 'ext3') {
my $_w = $in->wait_message(N("Please wait"), N("Switching from %s to %s", 'ext2', $type->{fs_type}));
if (run_program::run("tune2fs", "-j", devices::make($part->{device}))) {
put_in_hash($part, $type);
@@ -600,8 +656,13 @@ sub Type {
fs::format::disable_forced_fsck($part->{device});
return;
}
+ } elsif (member($part->{fs_type}, qw(ext2 ext3)) && $type->{fs_type} eq 'ext4') {
+ # FIXME enable some nice flags
+ put_in_hash($part, $type);
+ return;
} elsif ($type->{fs_type} =~ /ntfs/ && $part->{fs_type} =~ /ntfs/) {
if ($type->{fs_type} eq 'ntfs-3g') {
+ local $::prefix = ''; # For draklive-install
$in->do_pkgs->ensure_binary_is_installed('ntfs-3g', 'mount.ntfs-3g') or return;
}
put_in_hash($part, $type);
@@ -616,10 +677,10 @@ sub Type {
}
sub Label {
- my ($in, $_hd, $part) = @_;
+ my ($in, $hd, $part) = @_;
my $new_label = $part->{device_LABEL} || "";
- write_partitions($in, $_hd) or return;
+ write_partitions($in, $hd) or return;
$in->ask_from(N("Set volume label"),
maybeFormatted($part) ?
@@ -630,10 +691,10 @@ sub Label {
{ label => N("Label:"), val => \$new_label } ]) or return;
fs::format::check_package_is_installed_label($in->do_pkgs, $part->{fs_type}) or return;
+ $part->{prefer_device_LABEL} = to_bool($part->{device_LABEL}) && !isLVM($part);
return if $new_label eq $part->{device_LABEL};
$part->{device_LABEL} = $new_label;
$part->{device_LABEL_changed} = 1;
- $part->{prefer_device_LABEL} = to_bool($part->{device_LABEL}) && !isLVM($part);
fs::format::clean_label($part);
fs::format::write_label($part);
}
@@ -654,7 +715,7 @@ sub Mount_point {
callbacks => {
complete => sub {
!isPartOfLoopback($part) || $mntpoint or $in->ask_warn(N("Error"),
-N("Can not unset mount point as this partition is used for loop back.
+N("Cannot unset mount point as this partition is used for loop back.
Remove the loopback first")), return 1;
$part->{mntpoint} eq $mntpoint || check_mntpoint($in, $mntpoint, $part, $all_hds) or return 1;
$migrate_files = need_migration($in, $mntpoint) or return 1;
@@ -696,10 +757,36 @@ sub Mount_point_raw_hd {
$part->{mntpoint} = $mntpoint;
}
+#- side-effects: mounts the fs
+sub _get_dir_for_online_resize {
+ my ($part) = @_;
+ my $dir = "/tmp/tmp_resize_" . $part->{fs_type} . ".$$";
+ if ($part->{isMounted}) {
+ $dir = ($::prefix || '') . $part->{mntpoint};
+ } else {
+ mkdir_p($dir);
+ fs::mount::mount(devices::make($part->{device}), $dir, $part->{fs_type});
+ }
+ return $dir;
+}
+
+sub _set_min_size_from_avail_space {
+ my ($part, $min) = @_;
+ if (defined(my $free = fs::df($part))) {
+ $$min = max($$min, $part->{size} - $free);
+ }
+}
+
sub Resize {
my ($in, $hd, $part) = @_;
- my (%nice_resize);
- my ($min, $max) = (min_partition_size($hd), max_partition_resize($hd, $part));
+ my (%nice_resize, $online_resize);
+ my $low_part = $part;
+
+ if (isLUKS($part)) {
+ $low_part = find { $_->{dm_name} eq $part->{dmcrypt_name} } partition_table::get_normal_parts($hd);
+ }
+
+ my ($min, $max) = (min_partition_size($hd), max_partition_resize($hd, $low_part));
if (maybeFormatted($part)) {
# here we may have a non-formatted or a formatted partition
@@ -714,7 +801,7 @@ sub Resize {
$nice_resize{fat} = resize_fat::main->new($part->{device}, devices::make($part->{device}));
$min = max($min, $nice_resize{fat}->min_size);
$max = min($max, $nice_resize{fat}->max_size);
- } elsif (member($part->{fs_type}, qw(ext2 ext3))) { # resize2fs is known to be broken regarding extents with ext4
+ } elsif (member($part->{fs_type}, qw(ext2 ext3 ext4))) {
write_partitions($in, $hd) or return;
require diskdrake::resize_ext2;
if ($nice_resize{ext2} = diskdrake::resize_ext2->new($part->{device}, devices::make($part->{device}))) {
@@ -722,6 +809,9 @@ sub Resize {
} else {
delete $nice_resize{ext2};
}
+ } elsif ($part->{fs_type} eq 'f2fs') {
+ $min = $part->{size}; #- ensure the user can only increase
+ $nice_resize{f2fs} = 1;
} elsif ($part->{fs_type} =~ /ntfs/) {
write_partitions($in, $hd) or return;
require diskdrake::resize_ntfs;
@@ -730,17 +820,27 @@ sub Resize {
$min = $nice_resize{ntfs}->min_size or delete $nice_resize{ntfs};
} elsif ($part->{fs_type} eq 'reiserfs') {
write_partitions($in, $hd) or return;
+ $nice_resize{reiserfs} = 1;
if ($part->{isMounted}) {
- $nice_resize{reiserfs} = 1;
$min = $part->{size}; #- ensure the user can only increase
- } elsif (defined(my $free = fs::df($part))) {
- $nice_resize{reiserfs} = 1;
- $min = max($min, $part->{size} - $free);
+ } else {
+ _set_min_size_from_avail_space($part, \$min);
}
- } elsif ($part->{fs_type} eq 'xfs' && isLVM($hd) && $::isStandalone && $part->{isMounted}) {
+ } elsif ($part->{fs_type} eq 'xfs') {
$min = $part->{size}; #- ensure the user can only increase
- $nice_resize{xfs} = 1;
+ $online_resize = $part->{fs_type};
+ } elsif (member($part->{fs_type}, qw(btrfs nilfs2))) {
+ $online_resize = $part->{fs_type};
+ }
+
+ # Btrf, nilfs2 && XFS only support online resizing
+ # (Ext3/4 too but we can resize it offline so we don't care - though growing online is interesting)
+ if ($online_resize) {
+ write_partitions($in, $hd) or return;
+ $nice_resize{$online_resize} = 1;
+ _set_min_size_from_avail_space($part, \$min);
}
+
#- make sure that even after normalizing the size to cylinder boundaries, the minimun will be saved,
#- this save at least a cylinder (less than 8Mb).
$min += partition_table::raw::cylinder_size($hd);
@@ -749,7 +849,7 @@ sub Resize {
#- for these, we have tools to resize partition table
#- without losing data (or at least we hope so :-)
if (%nice_resize) {
- ask_alldatamaybelost($in, $part, N_("All data on this partition should be backed-up")) or return;
+ ask_alldatamaybelost($in, $part, N_("All data on this partition should be backed up")) or return;
} else {
ask_alldatawillbelost($in, $part, N_("After resizing partition %s, all data on this partition will be lost")) or return;
}
@@ -769,8 +869,8 @@ sub Resize {
$part->{size} == $size and return;
my $oldsize = $part->{size};
- $part->{size} = $size;
- $hd->adjustEnd($part);
+ $low_part->{size} = $part->{size} = $size;
+ $hd->adjustEnd($low_part);
undef $@;
my $_b = before_leaving { $@ and $part->{size} = $oldsize };
@@ -779,12 +879,19 @@ sub Resize {
my ($write_partitions) = @_;
if (isLVM($hd)) {
- lvm::lv_resize($part, $oldsize);
+ lvm::lv_resize($low_part, $oldsize);
} else {
- partition_table::will_tell_kernel($hd, resize => $part);
- partition_table::adjust_local_extended($hd, $part);
+ if ($write_partitions && isLUKS($part)) {
+ run_program::run('cryptsetup', 'luksClose', $part->{dmcrypt_name}) or die("Failed to resize partition, maybe it is mounted");
+ }
+ partition_table::will_tell_kernel($hd, resize => $low_part);
+ partition_table::adjust_local_extended($hd, $low_part);
partition_table::adjust_main_extended($hd);
- write_partitions($in, $hd) or return if $write_partitions && %nice_resize;
+ write_partitions($in, $hd) or return if $write_partitions && (%nice_resize || isLUKS($part));
+ if ($write_partitions && isLUKS($part)) {
+ require fs::dmcrypt;
+ fs::dmcrypt::open_part([], $low_part);
+ }
}
1;
};
@@ -807,9 +914,29 @@ filesystem checks will be run on your next boot into Microsoft Windows®"));
} elsif ($nice_resize{reiserfs}) {
log::l("reiser resize to $part->{size} sectors");
run_program::run_or_die('resize_reiserfs', '-f', '-q', '-s' . int($part->{size}/2) . 'K', devices::make($part->{device}));
- } elsif ($nice_resize{xfs}) {
- #- happens only with mounted LVM, see above
- run_program::run_or_die("xfs_growfs", $part->{mntpoint});
+ } elsif ($online_resize) {
+ my $dir = _get_dir_for_online_resize($part);
+ my @cmd;
+ if ($nice_resize{btrfs}) {
+ # FIXME: only works for a FS on a single device. Multi-device FS would need to specify the device to enlarge
+ @cmd = (qw(btrfs filesystem resize), $part->{size}*512, $dir);
+ } elsif ($nice_resize{nilfs2}) {
+ @cmd = ('nilfs-resize', devices::make($part->{device}), $part->{size}*512);
+ } elsif ($nice_resize{xfs}) {
+ @cmd = ("xfs_growfs", $dir);
+ } else {
+ die("I don't know how to proceed");
+ }
+ if (!run_program::run(@cmd)) {
+ $nice_resize{$part->{fs_type}} = undef;
+ }
+ # umount after online resize if it was mounted on demand:
+ if (!$part->{isMounted}) {
+ fs::mount::umount($dir);
+ unlink($dir);
+ }
+ } elsif ($nice_resize{f2fs}) {
+ run_program::run_or_die("resize.f2fs", devices::make($part->{device}));
}
if (%nice_resize) {
@@ -817,11 +944,12 @@ filesystem checks will be run on your next boot into Microsoft Windows®"));
} else {
set_isFormatted($part, 0);
partition_table::verifyParts($hd) if !isLVM($hd);
- $part->{mntpoint} = '' if isNonMountable($part); #- mainly for ntfs, which we can not format
+ $part->{mntpoint} = '' if isNonMountable($part); #- mainly for ntfs, which we cannot format
}
$adjust->(0) if $size < $oldsize;
}
+
sub Format {
my ($in, $hd, $part, $all_hds) = @_;
format_($in, $hd, $part, $all_hds);
@@ -844,7 +972,7 @@ sub dmcrypt_open {
my ($in, $_hd, $part, $all_hds) = @_;
$part->{dm_name} ||= do {
my $s = $part->{device};
- $s =~ s/[^\w]/_/g;
+ $s =~ s/\W/_/g;
"crypt_$s";
};
@@ -856,11 +984,26 @@ sub dmcrypt_open {
hidden => 1, focus => sub { 1 } } ]) or return;
}
- eval { fs::dmcrypt::open_part($all_hds->{dmcrypts}, $part) };
+ eval { require fs::dmcrypt; fs::dmcrypt::open_part($all_hds->{dmcrypts}, $part) };
if ($@) {
delete $part->{dmcrypt_key};
die(($? >> 8) == 255 ? N("Invalid key") : $@);
}
+ detect_lvms_on_dmcrypt($all_hds);
+}
+
+# Detect LVMs on top of dmcrypt
+sub detect_lvms_on_dmcrypt {
+ my ($all_hds) = @_,
+ require File::Temp;
+ require fs::dmcrypt;
+ my (undef, $tmp_file) = File::Temp::mkstemp('/tmp/crypttab.XXXXXXX');
+ fs::dmcrypt::save_crypttab_($all_hds, $tmp_file);
+ require lvm;
+ lvm::detect_during_install();
+ $all_hds->{lvms} = [ fsedit::lvms($all_hds) ];
+ fs::dmcrypt::read_crypttab_($all_hds, $tmp_file);
+ rm_rf($tmp_file);
}
sub Add2RAID {
@@ -883,6 +1026,7 @@ sub Add2RAID {
sub Add2LVM {
my ($in, $hd, $part, $all_hds) = @_;
my $lvms = $all_hds->{lvms};
+ my @lvm_names = map { $_->{VG_name} } @$lvms;
write_partitions($in, $_) or return foreach isRAID($part) ? @{$all_hds->{hds}} : $hd;
my $lvm = $in->ask_from_listf_(N("Add to LVM"), N("Choose an existing LVM to add to"),
@@ -891,11 +1035,27 @@ sub Add2LVM {
require lvm;
if (!ref $lvm) {
# create new lvm
- # FIXME: when mdv2006 is out: remove the question mark from the dialog title
- my $name = $in->ask_from_entry(N("LVM name?"), N("LVM name?")) or return;
+ my $n; my $str = "vg-mga";
+ while (member("$str$n", @lvm_names)) {
+ $n++;
+ }
+
+ my $name = "$str$n";
+ $in->ask_from_({ title => N("LVM name"),
+ messages => N("Enter a name for the new LVM volume group"),
+ focus_first => 1,
+ ok_disabled => sub { !$name },
+ validate => sub {
+ member($name, @lvm_names) or return 1;
+ $in->ask_warn(N("Error"), N("\"%s\" already exists", $name));
+ return 0;
+ } },
+ [ { label => N("LVM name"), val => \$name } ]) or return;
+
$lvm = new lvm($name);
push @$lvms, $lvm;
}
+ my $_w = $in->wait_message(N("Please wait"), N("Setting up LVM"));
raid::make($all_hds->{raids}, $part) if isRAID($part);
lvm::check($in->do_pkgs) if $::isStandalone;
lvm::add_to_VG($part, $lvm);
@@ -910,6 +1070,7 @@ sub RemoveFromRAID {
}
sub RemoveFromDm {
my ($_in, $_hd, $part, $all_hds) = @_;
+ require fs::dmcrypt;
fs::dmcrypt::close_part($all_hds->{dmcrypts}, $part);
}
sub RemoveFromLVM {
@@ -939,14 +1100,14 @@ sub Loopback {
write_partitions($in, $hd) or return;
- my $handle = any::inspect($real_part) or $in->ask_warn(N("Error"), N("This partition can not be used for loopback")), return;
+ my $handle = any::inspect($real_part) or $in->ask_warn(N("Error"), N("This partition cannot be used for loopback")), return;
my ($min, $max) = (1, fs::loopback::getFree($handle->{dir}, $real_part));
$max = min($max, 1 << (31 - 9)) if $real_part->{fs_type} eq 'vfat'; #- FAT does not handle file size bigger than 2GB
my $part = { maxsize => $max, size => 0, loopback_device => $real_part, notFormatted => 1 };
if (!fsedit::suggest_part($part, $all_hds)) {
$part->{size} = $part->{maxsize};
- fs::type::suggest_fs_type($part, 'ext3');
+ fs::type::suggest_fs_type($part, defaultFS());
}
delete $part->{mntpoint}; # we do not want the suggested mntpoint
@@ -976,7 +1137,7 @@ sub Loopback {
}
sub Options {
- my ($in, $hd, $part, $all_hds) = @_;
+ my ($in, $_hd, $part, $_all_hds) = @_;
my @simple_options = qw(users noauto username= password=);
@@ -1010,27 +1171,6 @@ sub Options {
if (($options->{usrquota} || $options->{grpquota}) && !$::isInstall) {
$in->do_pkgs->ensure_binary_is_installed('quota', 'quotacheck');
}
- if ($options->{encrypted}) {
- # modify $part->{options} for the check
- local $part->{options};
- fs::mount_options::pack($part, $options, $unknown);
- if (!check($in, $hd, $part, $all_hds)) {
- $options->{encrypted} = 0;
- } elsif (!$part->{encrypt_key} && !isSwap($part)) {
- if (my ($encrypt_key, $encrypt_algo) = choose_encrypt_key($in, $options, '')) {
- $options->{'encryption='} = $encrypt_algo;
- $part->{encrypt_key} = $encrypt_key;
- } else {
- $options->{encrypted} = 0;
- }
- }
- #- don't be sure of anything
- set_isFormatted($part, 0);
- $part->{notFormatted} = 0;
- } else {
- delete $options->{'encryption='};
- delete $part->{encrypt_key};
- }
}) or return;
fs::mount_options::pack($part, $options, $unknown);
@@ -1040,20 +1180,20 @@ sub Options {
{
no strict;
- *{'Toggle to normal mode'} = sub() { $::expert = 0 };
- *{'Toggle to expert mode'} = sub() { $::expert = 1 };
+ *{'Normal mode'} = sub() { $::expert = 0 };
+ *{'Expert mode'} = sub() { $::expert = 1 };
*{'Clear all'} = \&Clear_all;
*{'Auto allocate'} = \&Auto_allocate;
*{'Mount point'} = \&Mount_point;
*{'Modify RAID'} = \&ModifyRAID;
*{'Add to RAID'} = \&Add2RAID;
*{'Remove from RAID'} = \&RemoveFromRAID;
- *{'Use'} = \&dmcrypt_open;
+ *{Use} = \&dmcrypt_open;
*{'Remove from dm'} = \&RemoveFromDm;
*{'Add to LVM'} = \&Add2LVM;
*{'Remove from LVM'} = \&RemoveFromLVM;
*{'Use for loopback'} = \&Loopback;
- *{'Hard drive information'} = \&Hd_info;
+ *{'Hard disk drive information'} = \&Hd_info;
}
@@ -1072,7 +1212,7 @@ sub modifyRAID {
$in->ask_from(N("Options"), '',
[
{ label => N("device"), val => \$new_device, list => [ $md_part->{device}, raid::free_mds($raids) ], sort => 0 },
-{ label => N("level"), val => \$md_part->{level}, list => [ qw(0 1 4 5 6 linear) ] },
+{ label => N("level"), val => \$md_part->{level}, list => [ qw(0 1 4 5 6 10 linear) ] },
{ label => N("chunk size in KiB"), val => \$md_part->{'chunk-size'} },
],
) or return;
@@ -1104,7 +1244,8 @@ sub ask_alldatawillbelost {
}
sub partitions_suggestions {
- my ($in) = @_;
+ my ($in, $all_hds, $hd) = @_;
+ fsedit::init_mntpnt_suggestions($all_hds, $hd);
my $t = $::expert ?
$in->ask_from_list_(N("Partitioning Type"), N("What type of partitioning?"), [ keys %fsedit::suggestions ]) :
'simple';
@@ -1144,7 +1285,7 @@ sub check {
sub check_rebootNeeded {
my ($_in, $hd) = @_;
- $hd->{rebootNeeded} and die N("You'll need to reboot before the modification can take place");
+ $hd->{rebootNeeded} and die N("You'll need to reboot before the modification can take effect");
}
sub write_partitions {
@@ -1157,24 +1298,21 @@ sub write_partitions {
partition_table::write($hd) if !$::testing;
check_rebootNeeded($in, $hd) if !$b_skip_check_rebootNeeded;
# fix resizing's failures due to udev's race when writing the partition table
- run_program::run('udevadm', 'settle') unless $::isInstall;
+ run_program::run('udevadm', 'settle');
1;
}
sub ensure_we_have_encrypt_key_if_needed {
my ($in, $part) = @_;
- if ($part->{options} =~ /encrypted/ && !$part->{encrypt_key}) {
- my ($options, $_unknown) = fs::mount_options::unpack($part);
- $part->{encrypt_key} = choose_encrypt_key($in, $options, 'skip_encrypt_algo') or return;
- } elsif (fs::type::isRawLUKS($part)) {
+ if (fs::type::isRawLUKS($part)) {
$part->{dmcrypt_key} ||= choose_encrypt_key($in, {}, 'skip_encrypt_algo') or return;
}
1;
}
sub dmcrypt_format {
- my ($in, $hd, $part, $all_hds) = @_;
+ my ($in, $_hd, $part, $_all_hds) = @_;
my $_wait = $in->wait_message(N("Please wait"), N("Formatting partition %s", $part->{device}));
require fs::dmcrypt;
fs::dmcrypt::format_part($part);
@@ -1196,12 +1334,18 @@ sub format_ {
if ($::isStandalone) {
fs::format::check_package_is_installed_format($in->do_pkgs, $part->{fs_type}) or return;
}
- if ($::expert && !member($part->{fs_type}, 'reiserfs', 'reiser4', 'xfs', 'hfs', 'ntfs', 'ntfs-3g')) {
- $part->{toFormatCheck} = $in->ask_yesorno(N("Confirmation"), N("Check bad blocks?"));
+ _format_raw($in, $part, $all_hds);
+}
+
+sub _format_raw {
+ my ($in, $part, $all_hds, $o_skip) = @_;
+ if ($::expert && isBlockCheckable($part)) {
+ $part->{toFormatCheck} = $in->ask_yesorno(N("Confirmation"), N("Check for bad blocks?"));
}
$part->{isFormatted} = 0; #- force format;
+ # Wait for the newly created device to appear before formatting it
my ($_w, $wait_message) = $in->wait_message_with_progress_bar;
- fs::format::part($all_hds, $part, $wait_message);
+ fs::format::part($all_hds, $part, $wait_message) if !$o_skip;
1;
}
@@ -1279,23 +1423,17 @@ sub format_part_info {
$info .= N("Volume label: ") . "$part->{device_LABEL}\n" if $part->{device_LABEL};
$info .= N("UUID: ") . "$part->{device_UUID}\n" if $::expert && $part->{device_UUID};
$info .= N("DOS drive letter: %s (just a guess)\n", $part->{device_windobe}) if $part->{device_windobe};
- if (arch() eq "ppc") {
- my $pType = $part->{pType};
- $pType =~ s/[^A-Za-z0-9_]//g;
- $info .= N("Type: ") . $pType . ($::expert ? sprintf " (0x%x)", $part->{pt_type} : '') . "\n";
- if (defined $part->{pName}) {
- my $pName = $part->{pName};
- $pName =~ s/[^A-Za-z0-9_]//g;
- $info .= N("Name: ") . $pName . "\n";
- }
- } elsif (isEmpty($part)) {
+ if (isEmpty($part)) {
$info .= N("Empty") . "\n";
} else {
$info .= N("Type: ") . (fs::type::part2type_name($part) || $part->{fs_type}) . ($::expert ? sprintf " (0x%x)", $part->{pt_type} : '') . "\n";
}
$info .= N("Start: sector %s\n", $part->{start}) if $::expert && !isSpecial($part) && !isLVM($hd);
- $info .= N("Size: %s", formatXiB($part->{size}, 512));
- $info .= sprintf " (%s%%)", int 100 * $part->{size} / $hd->{totalsectors} if $hd->{totalsectors};
+ if ($hd->{totalsectors}) {
+ $info .= N("Size: %s (%s%% of disk)", formatXiB($part->{size}, 512), int 100 * $part->{size} / $hd->{totalsectors});
+ } else {
+ $info .= N("Size: %s", formatXiB($part->{size}, 512));
+ }
$info .= N(", %s sectors", $part->{size}) if $::expert;
$info .= "\n";
$info .= N("Cylinder %d to %d\n", $part->{start} / $hd->cylinder_size, ($part->{start} + $part->{size} - 1) / $hd->cylinder_size) if ($::expert || isEmpty($part)) && !isSpecial($part) && !isLVM($hd) && $hd->cylinder_size;
@@ -1304,10 +1442,13 @@ sub format_part_info {
$info .= N("Not formatted\n") if !$part->{isFormatted} && $part->{notFormatted};
$info .= N("Mounted\n") if $part->{isMounted};
$info .= N("RAID %s\n", $part->{raid}) if isPartOfRAID($part);
- if (fs::type::isRawLUKS($part)) {
- $info .= N("Encrypted") . ($part->{dm_active} && $part->{dm_name} ? N(" (mapped on %s)", $part->{dm_name}) :
- $part->{dm_name} ? N(" (to map on %s)", $part->{dm_name}) :
- N(" (inactive)")) . "\n";
+ if (fs::type::isRawLUKS($part) || fs::type::isLUKS($part)) {
+ $info .= N("Encrypted") . "\n";
+ if (fs::type::isRawLUKS($part)) {
+ $info .= ($part->{dm_active} && $part->{dm_name} ? N(" (mapped on %s)", $part->{dm_name}) :
+ $part->{dm_name} ? N(" (to map on %s)", $part->{dm_name}) :
+ N(" (inactive)")) . "\n";
+ }
}
if (isPartOfLVM($part)) {
$info .= sprintf "LVM %s\n", $part->{lvm};
@@ -1352,6 +1493,8 @@ sub format_hd_info {
$info .= N("LVM-disks %s\n", join ", ", map { $_->{device} } @{$hd->{disks}}) if isLVM($hd) && $hd->{disks};
$info .= N("Partition table type: %s\n", $1) if $::expert && ref($hd) =~ /_([^_]+)$/;
$info .= N("on channel %d id %d\n", $hd->{channel}, $hd->{id}) if $::expert && exists $hd->{channel};
+ # restrict the length of the lines
+ $info =~ s/(.{60}).*/$1.../mg;
$info;
}
diff --git a/perl-install/diskdrake/removable.pm b/perl-install/diskdrake/removable.pm
index a4d225475..f3b73ed4b 100644
--- a/perl-install/diskdrake/removable.pm
+++ b/perl-install/diskdrake/removable.pm
@@ -1,4 +1,4 @@
-package diskdrake::removable; # $Id$
+package diskdrake::removable;
use diagnostics;
use strict;
diff --git a/perl-install/diskdrake/resize_ext2.pm b/perl-install/diskdrake/resize_ext2.pm
index 9bf113f90..a09cdb542 100644
--- a/perl-install/diskdrake/resize_ext2.pm
+++ b/perl-install/diskdrake/resize_ext2.pm
@@ -1,4 +1,4 @@
-package diskdrake::resize_ext2; # $Id$
+package diskdrake::resize_ext2;
use diagnostics;
use strict;
diff --git a/perl-install/diskdrake/resize_ntfs.pm b/perl-install/diskdrake/resize_ntfs.pm
index c6364fec6..db591e968 100644
--- a/perl-install/diskdrake/resize_ntfs.pm
+++ b/perl-install/diskdrake/resize_ntfs.pm
@@ -5,7 +5,7 @@ use strict;
use run_program;
use common;
-
+# perl_checker: require interactive
sub new {
my ($type, $_device, $dev) = @_;
@@ -13,16 +13,16 @@ sub new {
}
sub check_prog {
- my ($in) = @_;
- #- ensure_binary_is_installed checks binary chrooted, whereas we run the binary non-chrooted (pb for Mandriva One)
- $::isInstall || whereis_binary('ntfsresize') || $in->do_pkgs->ensure_binary_is_installed('ntfsprogs', 'ntfsresize');
+ my ($in) = @_; # perl_checker: $in = interactive->new
+ #- ensure_binary_is_installed checks binary chrooted, whereas we run the binary non-chrooted (pb for Mageia One)
+ $::isInstall || whereis_binary('ntfsresize') || $in->do_pkgs->ensure_binary_is_installed('ntfs-3g', 'ntfsresize');
}
sub min_size {
my ($o) = @_;
my $r;
run_program::run('ntfsresize', '>', \$r, '-f', '-i', $o->{dev}) or die "ntfsresize failed:\n$r\n";
- $r =~ /minimal size: (\d+) KiB/ && $1 * 2;
+ $r =~ /You might resize at (\d+) bytes or / && $1 / 512;
}
sub resize {
diff --git a/perl-install/diskdrake/smbnfs_gtk.pm b/perl-install/diskdrake/smbnfs_gtk.pm
index f7e064b00..b2417ce83 100644
--- a/perl-install/diskdrake/smbnfs_gtk.pm
+++ b/perl-install/diskdrake/smbnfs_gtk.pm
@@ -1,4 +1,4 @@
-package diskdrake::smbnfs_gtk; # $Id$
+package diskdrake::smbnfs_gtk;
use diagnostics;
use strict;
@@ -9,8 +9,8 @@ use common;
use interactive;
use fs::remote::smb;
use fs::remote::nfs;
-use mygtk2 qw(gtknew gtkset);
-use ugtk2 qw(:helpers :wrappers :create);
+use mygtk3 qw(gtknew gtkset);
+use ugtk3 qw(:helpers :wrappers :create);
my ($all_hds, $in, $tree_model, $current_entry, $current_leaf, %icons);
@@ -19,7 +19,7 @@ sub main {
my ($kind) = $type eq 'smb' ? smb2kind() : nfs2kind();
$kind->check($in) or return;
- my $w = ugtk2->new(N("Partitioning"));
+ my $w = ugtk3->new(N("Partitioning"));
add_smbnfs($w->{window}, $kind);
$w->{rwindow}->set_default_size(400, 300) if $w->{rwindow}->can('set_default_size');
@@ -42,7 +42,7 @@ sub try_ {
$in->ask_warn(N("Error"), formatError($err));
}
update($kind);
- Gtk2->main_quit if member($name, 'Cancel', 'Done');
+ Gtk3->main_quit if member($name, 'Cancel', 'Done');
}
sub raw_hd_options {
@@ -87,7 +87,7 @@ sub per_entry_action_box {
: gtknew('Label', text => "");
} group_by2(@l);
- gtkadd($box, gtknew('HBox', children_loose => [ @buttons]));
+ gtkadd($box, gtknew('HBox', children_loose => \@buttons));
}
sub done {
@@ -127,14 +127,14 @@ sub import_tree {
my ($kind, $info_box) = @_;
my (%servers_displayed, %wservers, %wexports);
- $tree_model = Gtk2::TreeStore->new("Gtk2::Gdk::Pixbuf", "Glib::String");
- my $tree = Gtk2::TreeView->new_with_model($tree_model);
+ $tree_model = Gtk3::TreeStore->new("Gtk3::Gdk::Pixbuf", "Glib::String");
+ my $tree = Gtk3::TreeView->new_with_model($tree_model);
$tree->get_selection->set_mode('browse');
- my $col = Gtk2::TreeViewColumn->new;
- $col->pack_start(my $pixrender = Gtk2::CellRendererPixbuf->new, 0);
+ my $col = Gtk3::TreeViewColumn->new;
+ $col->pack_start(my $pixrender = Gtk3::CellRendererPixbuf->new, 0);
$col->add_attribute($pixrender, 'pixbuf', 0);
- $col->pack_start(my $texrender = Gtk2::CellRendererText->new, 1);
+ $col->pack_start(my $texrender = Gtk3::CellRendererText->new, 1);
$col->add_attribute($texrender, 'text', 1);
$tree->append_column($col);
@@ -161,7 +161,7 @@ sub import_tree {
return @l if !$@;
if ($server->{username}) {
- $in->ask_warn('', N("Can not login using username %s (bad password?)", $server->{username}));
+ $in->ask_warn('', N("Cannot login using username %s (bad password?)", $server->{username}));
fs::remote::smb::remove_bad_credentials($server);
} else {
if (my @l = fs::remote::smb::authentications_available($server)) {
@@ -194,7 +194,7 @@ sub import_tree {
my $path = $tree_model->get_path($node);
$tree->expand_row($path, 0);
- foreach ($find_exports->($wservers{$tree_model->get_path_str($node)} || return)) { #- can not die here since insert_node provoque a tree_select_row before the %wservers is filled
+ foreach ($find_exports->($wservers{$tree_model->get_path_str($node)} || return)) { #- cannot die here since insert_node provoque a tree_select_row before the %wservers is filled
my $s = $kind->to_string($_);
my $w = $tree_model->append_set($node, [ 0 => export_icon(find_fstab_entry($kind, $_)),
1 => $s ]);
@@ -208,7 +208,7 @@ sub import_tree {
gtksignal_connect($search,
clicked => sub {
$add_server->($_) foreach sort { $a->{name} cmp $b->{name} } $kind->find_servers;
- gtkset($search, text => N("Search new servers"));
+ gtkset($search, text => N("Search for new servers"));
}));
}
@@ -226,10 +226,10 @@ sub import_tree {
$current_entry = find_fstab_entry($kind, $wexports{$tree_model->get_path_str($curr)} || die(''), 'add');
} else {
if (!$tree_model->iter_has_child($curr)) {
- gtkset_mousecursor_wait($tree->window);
- ugtk2::flush();
+ gtkset_mousecursor_wait($tree->get_window);
+ ugtk3::flush();
$add_exports->($curr);
- gtkset_mousecursor_normal($tree->window);
+ gtkset_mousecursor_normal($tree->get_window);
}
$current_entry = undef;
}
@@ -249,7 +249,7 @@ sub add_smbnfs {
gtknew('VBox', spacing => 7, children => [
1, gtknew('HBox', spacing => 7, children_loose => [
gtkset($kind->{display_box}, width => 200),
- $kind->{info_box}]),
+ $kind->{info_box} ]),
0, $kind->{action_box},
]);
diff --git a/perl-install/do_pkgs.pm b/perl-install/do_pkgs.pm
index a40eb66a7..ba9283000 100644
--- a/perl-install/do_pkgs.pm
+++ b/perl-install/do_pkgs.pm
@@ -1,4 +1,22 @@
-package do_pkgs; # $Id$
+package do_pkgs;
+
+=head1 SYNOPSYS
+
+B<do_pkgs> enables to install packages (through urpmi) from our tools.
+It works both during installer and in standalone tools by using dedicate sub packages (B<do_pkgs_standalone> and B<do_pkgs_during_install>), both relying onrelying on do_pkgs_common.
+
+
+=head1 Functions
+
+=over
+
+=cut
+
+=item do_pkgs($in)
+
+Returns a new B<do_pkgs> object from a L<interactive> object.
+
+=cut
sub do_pkgs {
my ($in) = @_;
@@ -9,10 +27,18 @@ sub do_pkgs {
package do_pkgs_common;
use common;
+=item ensure_is_installed($do, $pkg, $o_file, $b_auto)
+
+Makes sure that the $pkg package is installed.
+If $o_file is provided, the already installed check is I<way> faster.
+If $b_auto is set, (g)urpmi will not ask any questions.
+
+=cut
+
sub ensure_is_installed {
my ($do, $pkg, $o_file, $b_auto) = @_;
- if ($o_file ? -e "$::prefix$o_file" : $do->is_installed($pkg)) {
+ if ($do->is_installed($pkg, $o_file)) {
return 1;
}
@@ -31,6 +57,15 @@ sub ensure_is_installed {
1;
}
+=item ensure_are_installed($do, $pkgs, $b_auto)
+
+Makes sure that the packages listed in $pkgs array ref are installed.
+If $b_auto is set, (g)urpmi will not ask any questions.
+
+It's quite costly, so it's better to use the B<ensure_files_are_installed> instead.
+
+=cut
+
sub ensure_are_installed {
my ($do, $pkgs, $b_auto) = @_;
@@ -50,6 +85,14 @@ sub ensure_are_installed {
1;
}
+=item ensure_binary_is_installed($do, $pkg, $binary, $b_auto)
+
+Makes sure that the $pkg package is installed.
+$binary is looked for in $PATH. If not found, the package is installed.
+If $b_auto is set, (g)urpmi will not ask any questions.
+
+=cut
+
sub ensure_binary_is_installed {
my ($do, $pkg, $binary, $b_auto) = @_;
@@ -68,11 +111,28 @@ sub ensure_binary_is_installed {
1;
}
-# takes a list of [ "package", "file" ] and installs package if file is not there
+sub _find_file {
+ my ($file) = @_;
+ if ($file =~ m!/!) {
+ -e "$::prefix$file";
+ } else {
+ # assume it's a binary to search in $PATH:
+ whereis_binary($file, $::prefix);
+ }
+}
+
+=item ensure_files_are_installed($do, $pkgs, $b_auto)
+
+Takes a list of [ "package", "file" ] and installs package if file is not there.
+If $b_auto is set, (g)urpmi will not ask any questions.
+
+=cut
+
sub ensure_files_are_installed {
my ($do, $pkgs, $b_auto) = @_;
- my @not_installed = map { my ($package, $file) = @{$_}; -e "$::prefix$file"?():$package } @{$pkgs};
+ my @not_installed = map { my ($package, $file) = @$_; if_(!_find_file($file), $package) } @$pkgs;
+ return 1 if !@not_installed;
$do->in->ask_okcancel(N("Warning"), N("The following packages need to be installed:\n") . join(', ', @not_installed), 1)
or return if !$b_auto && $do->in;
@@ -88,6 +148,12 @@ sub ensure_files_are_installed {
1;
}
+=item ensure_is_installed_if_available($do, $pkg, $file) = @_;
+
+Install $pkg if $file is not present and if $pkg is actually known to urpmi.
+
+=cut
+
sub ensure_is_installed_if_available {
my ($do, $pkg, $file) = @_;
if (-e "$::prefix$file" || $::testing) {
@@ -97,20 +163,48 @@ sub ensure_is_installed_if_available {
}
}
+=item is_available($do, $name)
+
+=item are_available($do, @names)
+
+Returns name(s) of package(s) that are available (aka known to urpmi).
+This is somewhat costly (needs to parse urpmi synthesis...)
+
+=cut
+
sub is_available {
my ($do, $name) = @_;
$do->are_available($name);
}
+=item is_installed($do, $name)
+
+=item are_installed($do, @names)
+
+Returns name(s) of package(s) that are already installed on the system.
+This is less costly (needs to query RPM DB)
+
+=cut
+
sub is_installed {
- my ($do, $name) = @_;
- $do->are_installed($name);
+ my ($do, $name, $o_file) = @_;
+ $o_file ? -e "$::prefix$o_file" : $do->are_installed($name);
}
-#- takes something like "ati-kernel"
-#- returns:
-#- - the various ati-kernel-2.6.XX-XXmdk available for the installed kernels
-#- - dkms-ati if available
+=item check_kernel_module_packages($do, $base_name)
+
+Takes something like C<ati-kernel> and returns:
+
+=over 4
+
+=item * the various C<ati-kernel-3.Y.XX-ZZmga> available for the installed kernels
+
+=item * C<dkms-ati> if available
+
+=back
+
+=cut
+
sub check_kernel_module_packages {
my ($do, $base_name) = @_;
@@ -119,7 +213,7 @@ sub check_kernel_module_packages {
'dkms-' . $base_name,
map { $base_name . '-kernel-' . bootloader::vmlinuz2version($_) } bootloader::installed_vmlinuz()
);
- @rpms = $do->are_available(@test_rpms);
+ my @rpms = $do->are_available(@test_rpms);
@rpms = $do->are_installed(@test_rpms) if !@rpms;
@rpms or return;
@@ -135,6 +229,12 @@ use common;
our @ISA = qw(do_pkgs_common);
+=item new($type, $in)
+
+Returns a C<do_pkg> object.
+
+=cut
+
sub new {
my ($type, $in) = @_;
@@ -233,16 +333,16 @@ sub install {
return 1;
}
+ my @wrapper = $::isLiveInstall && $::prefix ? ('chroot', $::prefix) : ();
my @options = ('--allow-medium-change', '--auto', '--no-verify-rpm', '--expect-install', @l);
my $ret;
if (check_for_xserver() && -x '/usr/bin/gurpmi') {
- $ret = system('gurpmi', @options) == 0;
+ $ret = system(@wrapper, 'gurpmi', @options) == 0;
} else {
my $_wait = $do->in && $do->in->wait_message(N("Please wait"), N("Installing packages..."));
$do->in->suspend if $do->in;
log::explanations("installing packages @l");
- #- --expect-install added in urpmi 4.6.11
- $ret = system('urpmi', '--gui', @options) == 0;
+ $ret = system(@wrapper, 'urpmi', @options) == 0;
$do->in->resume if $do->in;
}
$ret;
@@ -278,8 +378,9 @@ sub are_installed {
my @l2;
my $query_all = (any { /\*/ } @l) ? 'a' : '';
- run_program::run('/bin/rpm', '>', \@l2, '-q' . $query_all, '--qf', "%{name}\n", @l); #- do not care about the return value
- $query_all ? chomp_(@l2) : intersection(\@l, [ chomp_(@l2) ]); #- can not return directly @l2 since it contains things like "package xxx is not installed"
+ my $rooted = $::isLiveInstall && $::prefix ? { root => $::prefix } : {};
+ run_program::raw($rooted, '/bin/rpm', '>', \@l2, '-q' . $query_all, '--qf', "%{name}\n", @l); #- do not care about the return value
+ $query_all ? chomp_(@l2) : intersection(\@l, [ chomp_(@l2) ]); #- cannot return directly @l2 since it contains things like "package xxx is not installed"
}
sub remove {
@@ -287,7 +388,8 @@ sub remove {
my $_wait = $do->in && $do->in->wait_message(N("Please wait"), N("Removing packages..."));
$do->in->suspend if $do->in;
log::explanations("removing packages @l");
- my $ret = system('rpm', '-e', @l) == 0;
+ my @wrapper = $::isLiveInstall && $::prefix ? ('chroot', $::prefix) : ();
+ my $ret = system(@wrapper, 'rpm', '-e', @l) == 0;
$do->in->resume if $do->in;
$ret;
}
@@ -296,3 +398,7 @@ sub remove_nodeps {
my ($do, @l) = @_;
remove($do, '--nodeps', @l) == 0;
}
+
+=back
+
+=cut
diff --git a/perl-install/drakbug.pm b/perl-install/drakbug.pm
new file mode 100644
index 000000000..ded09d5d2
--- /dev/null
+++ b/perl-install/drakbug.pm
@@ -0,0 +1,45 @@
+package drakbug;
+
+use c;
+use strict;
+use common qw(backtrace if_);
+
+
+sub bug_handler {
+ my ($error, $is_signal) = @_;
+
+ # exceptions in eval are OK:
+ return if $error && $^S ne '0' && !$is_signal;
+
+ # exceptions with "\n" are normal ways to quit:
+ if (!$is_signal && eval { $error eq MDK::Common::String::formatError($error) }) {
+ warn $error;
+ exit(255);
+ }
+
+ # we want the full backtrace:
+ if ($is_signal) {
+ my $ctrace = c::C_backtrace();
+ $ctrace =~ s/0:.*(\d+:[^:]*Perl_sighandler)/$1/sig;
+ $error .= "\nGlibc's trace:\n$ctrace\n";
+ }
+ $error .= "Perl's trace:\n" . common::backtrace() if $error;
+
+ my $progname = $0;
+
+ # do not loop if drakbug crashes and do not complain about wizcancel:
+ if ($progname =~ /drakbug/ || $error =~ /wizcancel/ || !-x '/usr/bin/drakbug') {
+ warn $error;
+ exit(1);
+ }
+ $progname =~ s|.*/||;
+ exec('drakbug', if_($error, '--error', $error), '--incident', $progname);
+ c::_exit(1);
+}
+
+if (!$ENV{DISABLE_DRAKBUG}) {
+ $SIG{SEGV} = sub { bug_handler(@_, 1) };
+ $SIG{__DIE__} = \&bug_handler;
+}
+
+1;
diff --git a/perl-install/fs.pm b/perl-install/fs.pm
index 535769d22..76cce10e7 100644
--- a/perl-install/fs.pm
+++ b/perl-install/fs.pm
@@ -1,4 +1,4 @@
-package fs; # $Id$
+package fs;
use diagnostics;
use strict;
@@ -49,27 +49,6 @@ sub read_fstab {
$options = 'defaults' if $options eq 'rw'; # clean-up for mtab read
- if ($fs_type eq 'supermount') {
- log::l("dropping supermount");
- $options = join(",", grep {
- if (/fs=(.*)/) {
- $fs_type = $1;
-
- #- with supermount, the type could be something like ext2:vfat
- #- but this can not be done without supermount, so switching to "auto"
- $fs_type = 'auto' if $fs_type =~ /:/;
-
- 0;
- } elsif (/dev=(.*)/) {
- $dev = $1;
- 0;
- } elsif ($_ eq '--') {
- 0;
- } else {
- 1;
- }
- } split(',', $options));
- }
s/\\040/ /g foreach $mntpoint, $dev, $options;
if ($fs_type eq 'ext4') {
@@ -165,7 +144,7 @@ sub get_major_minor {
eval {
my (undef, $major, $minor) = devices::entry($_->{device});
($_->{major}, $_->{minor}) = ($major, $minor);
- } if !$_->{major};
+ };
}
}
@@ -198,7 +177,7 @@ sub merge_info_from_fstab {
my @l = grep {
if ($uniq) {
my $part = fs::get::mntpoint2part($_->{mntpoint}, $fstab);
- !$part || fs::get::is_same_hd($part, $_); #- keep it only if it is the mountpoint AND the same device
+ !$part || fs::get::is_same_hd($part, $_); #- keep it only if it is the mount point AND the same device
} else {
1;
}
@@ -230,13 +209,16 @@ sub prepare_write_fstab {
$comment ||= "# Entry for /dev/$_->{device} :\n" if $device =~ /^(UUID|LABEL)=/;
my $real_mntpoint = $_->{mntpoint} || ${{ '/tmp/hdimage' => '/mnt/hd' }}{$_->{real_mntpoint}};
- mkdir_p("$o_prefix$real_mntpoint") if $real_mntpoint =~ m|^/|;
+ if (!member('bind', split(',', $_->{options}))) {
+ mkdir_p("$o_prefix$real_mntpoint") if $real_mntpoint =~ m|^/|;
+ }
my $mntpoint = fs::type::carry_root_loopback($_) ? '/initrd/loopfs' : $real_mntpoint;
+ my $needed_to_boot = member($_->{mntpoint}, fs::type::directories_needed_to_boot());
my ($freq, $passno) =
exists $_->{freq} ?
($_->{freq}, $_->{passno}) :
- isTrueLocalFS($_) && !$_->{dmcrypt_name} && $_->{options} !~ /encryption=/ && (!$_->{is_removable} || member($_->{mntpoint}, fs::type::directories_needed_to_boot())) ?
+ isTrueLocalFS($_) && !$_->{dmcrypt_name} && $_->{options} !~ /encryption=/ && (!$_->{is_removable} || $needed_to_boot) ?
(1, $_->{mntpoint} eq '/' ? 1 : fs::type::carry_root_loopback($_) ? 0 : 2) :
(0, 0);
@@ -246,6 +228,9 @@ sub prepare_write_fstab {
$new{$mntpoint} = 1;
my $options = $_->{options} || 'defaults';
+ if (($_->{is_removable} || member($_->{fs_type}, qw(ntfs ntfs-3g))) && !$needed_to_boot && $_->{options} !~ /nofail/) {
+ $options .= ',nofail';
+ }
if ($_->{fs_type} eq 'cifs' && $options =~ /password=/ && !$b_keep_credentials) {
require fs::remote::smb;
@@ -319,7 +304,7 @@ sub set_removable_mntpoints {
my %names;
foreach (@{$all_hds->{raw_hds}}) {
my $name = detect_devices::suggest_mount_point($_) or next;
- $name eq 'zip' || $name eq 'cdrom' and next;
+ member($name, qw(zip cdrom)) and next;
my $s = ++$names{$name};
$_->{mntpoint} ||= "/media/$name" . ($s == 1 ? '' : $s);
diff --git a/perl-install/fs/any.pm b/perl-install/fs/any.pm
index 0d8b3ba7d..ce4de2ca3 100644
--- a/perl-install/fs/any.pm
+++ b/perl-install/fs/any.pm
@@ -1,11 +1,15 @@
-package fs::any; # $Id$
+package fs::any;
use diagnostics;
use strict;
+use c;
use common;
use fsedit;
+use fs::get;
use fs::mount_point;
+use fs::type;
+use run_program;
sub get_hds {
my ($all_hds, $fstab, $manual_fstab, $partitioning_flags, $skip_mtab, $o_in) = @_;
@@ -58,21 +62,26 @@ sub set_cdrom_symlink {
my $alias = basename($_->{mntpoint}) or next;
log::l("using alias $alias for $_->{device}");
$_->{device_alias} = $alias;
- symlink($_->{device}, "/dev/$alias") if $::prefix; # do create the symlink to have it during install (otherwise fs::wild_device::from_part will give a non accessible device)
- symlink($_->{device}, "$::prefix/dev/$alias");
+ symlink($_->{device}, "/dev/$alias");
}
}
sub check_hds_boot_and_root {
- my ($all_hds, $fstab) = @_;
+ my ($all_hds, $fstab, $isUpgrade, $o_match_all_hardware) = @_;
fs::get::root_($fstab) or die "Oops, no root partition";
- if (arch() =~ /ppc/ && detect_devices::get_mac_generation() =~ /NewWorld/) {
- die "Need bootstrap partition to boot system!" if !(defined $partition_table::mac::bootstrap_part);
- }
-
- if (arch() =~ /ia64/ && !fs::get::has_mntpoint("/boot/efi", $all_hds)) {
- die N("You must have a FAT partition mounted in /boot/efi");
+ return if $o_match_all_hardware || $::local_install;
+
+ if (is_uefi()) {
+ if (!fs::get::has_mntpoint("/boot/EFI", $all_hds)) {
+ die N("You must have a ESP FAT32 partition mounted in /boot/EFI");
+ }
+ } else {
+ # if we are doing an upgrade, the user may still be using a legacy bootloader
+ return if $isUpgrade;
+ if (is_boot_bios_part_needed($all_hds)) {
+ die N("You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. Please create one before continuing.");
+ }
}
}
@@ -81,31 +90,24 @@ sub create_minimal_files() {
qw(dev etc etc/profile.d etc/rpm etc/sysconfig etc/sysconfig/console
etc/sysconfig/network-scripts etc/sysconfig/console/consolefonts
etc/sysconfig/console/consoletrans
- home mnt tmp var var/tmp var/lib var/lib/rpm var/lib/urpmi);
+ home mnt run tmp var var/tmp var/lib var/lib/rpm var/lib/urpmi);
mkdir "$::prefix/$_", 0700 foreach qw(root root/tmp root/drakx);
-
- devices::make("$::prefix/dev/null");
- chmod 0666, "$::prefix/dev/null";
}
-sub prepare_minimal_root {
- my ($all_hds) = @_;
+sub prepare_minimal_root() {
- fs::any::create_minimal_files();
+ create_minimal_files();
+ # ensure we've all needed devices, for bootloader install and mkinitrd:
+ run_program::run('mount', '--bind', '/dev', "$::prefix/dev");
+ run_program::run('mount', '--bind', '/run', "$::prefix/run");
eval { fs::mount::mount('none', "$::prefix/proc", 'proc') };
eval { fs::mount::mount('none', "$::prefix/sys", 'sysfs') };
- eval { fs::mount::usbfs($::prefix) };
-
- #- needed by lilo
- if (-d '/dev/mapper' && !$::local_install) {
- my @vgs = map { $_->{VG_name} } @{$all_hds->{lvms}};
- -e "/dev/$_" and cp_af("/dev/$_", "$::prefix/dev") foreach 'mapper', @vgs;
- }
+ eval { fs::mount::sys_kernel_debug($::prefix) };
}
-sub getAvailableSpace {
- my ($fstab, $o_skip_mounted) = @_;
+sub getNeededMinSpace {
+ my ($n) = @_;
#- make sure of this place to be available for installation, this could help a lot.
#- currently doing a very small install use 36Mb of postinstall-rpm, but installing
@@ -113,9 +115,15 @@ sub getAvailableSpace {
#- 65mb may be a good choice to avoid almost all problem of insuficient space left...
my $minAvailableSize = 65 * sqr(1024);
+ max(0.1 * $n, $minAvailableSize);
+}
+
+sub getAvailableSpace {
+ my ($fstab, $o_skip_mounted, $o_skip_min_space) = @_;
+
my $n = !$::testing && !$o_skip_mounted && getAvailableSpace_mounted($::prefix) ||
getAvailableSpace_raw($fstab) * 512 / 1.07;
- $n - max(0.1 * $n, $minAvailableSize);
+ $o_skip_min_space ? $n : $n - getNeededMinSpace($n);
}
sub getAvailableSpace_mounted {
@@ -139,4 +147,30 @@ sub getAvailableSpace_raw {
die "missing root partition";
}
+=head3 is_boot_bios_part_needed($all_hds)
+
+Returns whether a Boot BIOS Partition is needed
+
+Returns true if all of the following are true:
+ - legacy boot (not UEFI)
+ - all disks are (or will be) GPT
+ - no disks have a BIOS boot partition
+
+=cut
+
+sub is_boot_bios_part_needed {
+ my ($all_hds) = @_;
+ # never needed for UEFI boot
+ return if is_uefi();
+ # do we already have one?
+ my @parts = map { partition_table::get_normal_parts($_) } fs::get::hds($all_hds);
+ return if any { isBIOS_GRUB($_) } @parts;
+ # do we have any non-GPT disks?
+ foreach my $hd (@{$all_hds->{hds}}) {
+ my $type = $hd->{pt_table_type} || partition_table::default_type($hd);
+ return if $type ne 'gpt';
+ }
+ 1;
+}
+
1;
diff --git a/perl-install/fs/dmcrypt.pm b/perl-install/fs/dmcrypt.pm
index d79464c35..a78a495d1 100644
--- a/perl-install/fs/dmcrypt.pm
+++ b/perl-install/fs/dmcrypt.pm
@@ -1,4 +1,4 @@
-package fs::dmcrypt; # $Id: $
+package fs::dmcrypt;
use diagnostics;
use strict;
@@ -11,12 +11,28 @@ use fs::type;
use fs::get;
use run_program;
+=head1 SYNOPSYS
+
+Manage encrypted file systems using cryptsetup
+
+=head1 Functions
+
+=over
+
+=cut
+
sub _crypttab() { "$::prefix/etc/crypttab" }
+=item init()
+
+Load kernel modules and init device mapper.
+
+=cut
+
sub init() {
whereis_binary('cryptsetup') or die "cryptsetup not installed";
- eval { modules::load('dm-crypt', 'cbc', 'sha256_generic', if_(arch() =~ /i.86/, 'aes-i586'), if_( arch() =~ /x86_64/, 'aes-x86_64'), 'aes_generic') };
+ eval { modules::load('dm-crypt', list_modules::category2modules('various/crypto')) };
devices::init_device_mapper();
1;
}
@@ -25,25 +41,38 @@ sub _ensure_initialized() {
$initialized++ or init();
}
-sub read_crypttab {
- my ($all_hds) = @_;
+sub read_crypttab_ {
+ my ($all_hds, $crypttab) = @_;
- -e _crypttab() or return;
+ -e $crypttab or return;
my @raw_parts = grep { fs::type::isRawLUKS($_) } fs::get::really_all_fstab($all_hds);
- foreach (cat_(_crypttab())) {
+ foreach (cat_($crypttab)) {
+ next if /^#/;
my ($dm_name, $dev) = split;
my $raw_part = fs::get::device2part($dev, \@raw_parts)
or log::l("crypttab: unknown device $dev for $dm_name"), next;
$raw_part->{dm_name} = $dm_name;
+ _get_existing_one_with_state($raw_part);
}
}
-sub save_crypttab {
+=item read_crypttab($all_hds)
+
+Read /etc/crypttab
+
+=cut
+
+sub read_crypttab {
my ($all_hds) = @_;
+ read_crypttab_($all_hds, _crypttab());
+}
+
+sub save_crypttab_ {
+ my ($all_hds, $crypttab) = @_;
my @raw_parts = grep { $_->{dm_name} } fs::get::really_all_fstab($all_hds) or return;
@@ -57,7 +86,18 @@ sub save_crypttab {
if (eof) {
$_ .= join('', map { "$_ $names{$_}\n" } sort keys %names);
}
- } _crypttab();
+ } $crypttab;
+}
+
+=item save_crypttab($all_hds)
+
+Save /etc/crypttab
+
+=cut
+
+sub save_crypttab {
+ my ($all_hds) = @_;
+ save_crypttab_($all_hds, _crypttab());
}
sub format_part {
@@ -65,9 +105,9 @@ sub format_part {
my $tmp_key_file = "/tmp/.dmcrypt_key-$$";
common::with_private_tmp_file($tmp_key_file, $part->{dmcrypt_key}, sub {
- _run_or_die('luksFormat', '--batch-mode', devices::make($part->{device}), $_[0]);
+ _run_or_die('--cipher=aes-xts-benbi', '--key-size=512', 'luksFormat', '--batch-mode', devices::make($part->{device}), $_[0]);
});
- fs::format::after_formatting($part, 1);
+ fs::format::after_formatting($part);
}
sub open_part {
@@ -78,10 +118,17 @@ sub open_part {
_run_or_die('luksOpen', devices::make($part->{device}),
$part->{dm_name}, '--key-file', $_[0]);
});
+ run_program::run('udevadm', 'settle');
+
+ push @$dmcrypts, _get_existing_one_with_state($part);
+}
+
+sub _get_existing_one_with_state {
+ my ($part) = @_;
my $active_dmcrypt = _parse_dmsetup_table($part->{dm_name},
run_program::get_stdout('dmsetup', 'table', $part->{dm_name}));
- push @$dmcrypts, _get_existing_one([$part], $active_dmcrypt);
+ _get_existing_one([$part], $active_dmcrypt);
}
sub close_part {
@@ -89,7 +136,12 @@ sub close_part {
my $dm_part = fs::get::device2part("mapper/$part->{dm_name}", $dmcrypts);
_run_or_die('luksClose', devices::make($dm_part->{device}));
$part->{dm_active} = 0;
- @$dmcrypts = grep { $_ != $dm_part } @$dmcrypts;
+ @$dmcrypts = grep { $_ != $dm_part } @$dmcrypts;
+ # remove partition from /etc/crypttab when deleted (mga#25891)
+ substInFile {
+ my ($name, $_dev) = split;
+ undef $_ if $name eq $part->{dm_name};
+ } _crypttab();
}
sub _run_or_die {
@@ -108,8 +160,11 @@ sub get_existing {
sub _get_existing_one {
my ($fstab, $active_dmcrypt) = @_;
+ my $p = fs::wild_device::to_subpart("/dev/mapper/$active_dmcrypt->{name}");
+
my $part = { device => "mapper/$active_dmcrypt->{name}", size => $active_dmcrypt->{size},
- options => 'noatime', dmcrypt_name => $active_dmcrypt->{name} };
+ options => 'noatime', dmcrypt_name => $active_dmcrypt->{name},
+ major => $p->{major}, minor => $p->{minor} };
if (my $raw_part = find { fs::get::is_same_hd($active_dmcrypt, $_) } @$fstab) {
$part->{rootDevice} = $raw_part->{device};
@@ -123,8 +178,10 @@ sub _get_existing_one {
put_in_hash($part, $type);
}
fs::type::set_isFormatted($part, to_bool($part->{fs_type}));
-
- $part->{fs_type} or fs::type::set_fs_type($part, 'ext3');
+
+ unless (fs::type::cannotBeMountable($part)) {
+ $part->{fs_type} or fs::type::set_fs_type($part, defaultFS());
+ }
log::l("dmcrypt: found $part->{device} type $part->{fs_type} with rootDevice $part->{rootDevice}");
@@ -144,7 +201,7 @@ sub _parse_dmsetup_table {
}
sub active_dm() {
- run_program::run('udevadm', 'settle') unless $::isInstall;
+ run_program::run('udevadm', 'settle');
map {
my $name = s/(.*?):\s*// && $1;
@@ -152,4 +209,8 @@ sub active_dm() {
} run_program::get_stdout('dmsetup', 'table');
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/fs/dmraid.pm b/perl-install/fs/dmraid.pm
index fa06e05e9..7a279abc7 100644
--- a/perl-install/fs/dmraid.pm
+++ b/perl-install/fs/dmraid.pm
@@ -1,4 +1,4 @@
-package fs::dmraid; # $Id$
+package fs::dmraid;
use diagnostics;
use strict;
@@ -14,23 +14,54 @@ use fs::wild_device;
use run_program;
+=head1 SYNOPSYS
+
+Manage fake RAIDs using dmraid
+
+=head1 Functions
+
+=over
+
+=item init()
+
+Load kernel modules, init device mapper then scan for fake RAIDs.
+
+=cut
+
sub init() {
whereis_binary('dmraid') or die "dmraid not installed";
eval { modules::load('dm-mirror', 'dm-zero') };
devices::init_device_mapper();
if ($::isInstall) {
- call_dmraid('-ay');
+ foreach my $name (call_dmraid('-s', '-c', '-i')) {
+ chomp($name);
+ log::l("got: $name");
+ call_dmraid('-ay', '-i', '--rm_partitions', '-p', $name);
+ run_program::run('/sbin/kpartx', '-u', '-a', '/dev/mapper/' . $name);
+ }
}
1;
}
-#- call_dmraid is overloaded when debugging, see the end of this file
+=item call_dmraid($option, @args)
+
+Runs dmraid with $option & @args.
+It is overloaded when debugging, see the end of this file.
+
+=cut
+
sub call_dmraid {
my ($option, @args) = @_;
run_program::get_stdout('dmraid', $option, @args);
}
+=item check($in)
+
+Ensures dmraid is installed. If yes, calls init().
+
+=cut
+
sub check {
my ($in) = @_;
@@ -39,13 +70,36 @@ sub check {
1;
}
+=item _raid_devices_raw()
+
+Get the real VG names, needed for ddf1, and safer than begins_with for raid10
+
+=cut
+
sub _raid_devices_raw() {
+ log::l("_raid_devices_raw");
+ my %vgs;
+ my %pv2vg = map {
+ chomp();
+ log::l("got: $_");
+ my %l; @l{qw(name size stride level status subsets devs spares)} = split(':');
+ $vgs{$l{name}} = 1 if defined $l{spares};
+ if (/freeing device "(.*)", path "(.*)"/ && defined $vgs{$1}) {
+ log::l("$2 => $1");
+ $2 => $1;
+ }
+ } call_dmraid(qw(-d -s -c -c));
+
map {
chomp;
log::l("got: $_");
my %l; @l{qw(pv format vg level status size)} = split(':');
+ if (defined $l{size} && defined $l{vg} && defined $pv2vg{$l{pv}} && !defined $vgs{$l{vg}}) {
+ log::l("using $pv2vg{$l{pv}} instead of $l{vg}");
+ $l{vg} = $pv2vg{$l{pv}};
+ }
if_(defined $l{size}, \%l);
- } call_dmraid('-r', '-c', '-c');
+ } call_dmraid(qw(-r -c -c));
}
sub _raid_devices() {
@@ -92,6 +146,12 @@ sub _sets() {
@sets;
}
+=item vgs()
+
+Returns the list of VGs corresponding to dmraid
+
+=cut
+
sub vgs() {
map {
my $dev = "mapper/$_->{name}";
@@ -100,7 +160,12 @@ sub vgs() {
#- device should exist, created by dmraid(8) using libdevmapper
#- if it doesn't, we suppose it's not in use
- if_(-e "/dev/$dev", $vg);
+ if (-e "/dev/$dev") {
+ $vg;
+ } else {
+ log::l("ignoring $dev as /dev/$dev doesn't exist");
+ ();
+ }
} grep {
if ($_->{status} eq 'ok') {
@@ -112,11 +177,15 @@ sub vgs() {
} _sets();
}
-# the goal is to handle migration from /dev/mapper/xxx1 to /dev/mapper/xxxp1,
-# as used by initrd/nash.
-# dmraid has been patched to follow xxxp1 device names.
-# so until the box has rebooted on new initrd/dmraid, we must cope with /dev/mapper/xxx1 device names
-# (cf #44182)
+=item migrate_device_names ($vg)
+
+Handles migration from /dev/mapper/xxx1 to /dev/mapper/xxxp1, as used by initrd/nash.
+dmraid has been patched to follow xxxp1 device names.
+So until the box has rebooted on new initrd/dmraid, we must cope with /dev/mapper/xxx1 device names
+(cf mdk#44182)
+
+=cut
+
sub migrate_device_names {
my ($vg) = @_;
@@ -132,6 +201,14 @@ sub migrate_device_names {
}
}
+=back
+
+=head1 Debugging
+
+If $ENV{DRAKX_DEBUG_DMRAID} is set, debugging dmraid is done.
+The C<call_dmraid()> function is overloaded and will spit out warnings.
+=cut
+
if ($ENV{DRAKX_DEBUG_DMRAID}) {
eval(<<'EOF');
my %debug_data = (
diff --git a/perl-install/fs/format.pm b/perl-install/fs/format.pm
index e50cf492a..1fa90c29e 100644
--- a/perl-install/fs/format.pm
+++ b/perl-install/fs/format.pm
@@ -1,4 +1,4 @@
-package fs::format; # $Id$
+package fs::format;
use diagnostics;
use strict;
@@ -10,28 +10,57 @@ use fs::type;
use fs::loopback;
use log;
+=head1 SYNOPSYS
+
+B<fs::format> enables to format filesystems.
+
+=head1 Variables
+
+=over
+
+=item %cmds
+
+Commands to format filesystem:
+
+For each filesystem, list: [ package_name, command_to_use, options_to_use ]
+
+=cut
+
my %cmds = (
ext2 => [ 'e2fsprogs', 'mkfs.ext2', '-F' ],
ext3 => [ 'e2fsprogs', 'mkfs.ext3', '-F' ],
- ext4 => [ 'e2fsprogs', 'mkfs.ext4', '-F' ], # FIXME: enable more options once we've better mkfs support
+ ext4 => [ 'e2fsprogs', 'mkfs.ext4', '-F' ],
+ f2fs => [ 'f2fs-tools', 'mkfs.f2fs', '-f' ],
reiserfs => [ 'reiserfsprogs', 'mkfs.reiserfs', '-ff' ],
- reiser4 => [ 'reiser4progs', 'mkfs.reiser4', '-f', '-y' ],
xfs => [ 'xfsprogs', 'mkfs.xfs', '-f', '-q' ],
jfs => [ 'jfsutils', 'mkfs.jfs', '-f' ],
hfs => [ 'hfsutils', 'hformat' ],
- dos => [ 'dosfstools', 'mkdosfs' ],
- vfat => [ 'dosfstools', 'mkdosfs', '-F', '32' ],
- swap => [ 'util-linux-ng', 'mkswap' ],
- ntfs => [ 'ntfsprogs', 'mkntfs', '--fast' ],
- 'ntfs-3g' => [ 'ntfsprogs', 'mkntfs', '--fast' ],
+ dos => [ 'dosfstools', 'mkfs.fat' ],
+ vfat => [ 'dosfstools', 'mkfs.fat', '-F', '32' ],
+ exfat => [ 'exfatprogs', 'mkfs.exfat' ],
+ swap => [ 'util-linux', 'mkswap' ],
+ ntfs => [ 'ntfs-3g', 'mkfs.ntfs', '--fast' ],
+ 'ntfs-3g' => [ 'ntfs-3g', 'mkfs.ntfs', '--fast' ],
+ btrfs => [ 'btrfs-progs', 'mkfs.btrfs', '-f' ],
+ nilfs2 => [ 'nilfs-utils', 'mkfs.nilfs2', '-f' ],
);
-my %LABELs = ( #- option, length, handled_by_mount
+
+=item %LABELs
+
+mkfs option to use in order to set the label + label specs.
+
+For each filesystem, list: [ option, max_length, handled_by_mount ]
+
+=cut
+
+my %LABELs = (
ext2 => [ '-L', 16, 1 ],
ext3 => [ '-L', 16, 1 ],
ext4 => [ '-L', 16, 1 ],
+ exfat => [ '-L', 16, 1 ],
+ f2fs => [ '-l', 16, 1 ],
reiserfs => [ '-l', 16, 1 ],
- reiser4 => [ '-L', 16, 1 ],
xfs => [ '-L', 12, 1 ],
jfs => [ '-L', 16, 1 ],
hfs => [ '-l', 27, 0 ],
@@ -40,26 +69,67 @@ my %LABELs = ( #- option, length, handled_by_mount
swap => [ '-L', 15, 1 ],
ntfs => [ '-L', 128, 0 ],
'ntfs-3g' => [ '-L', 128, 0 ],
+ btrfs => [ '-L', 256, 1 ],
+ nilfs2 => [ '-L', 16, 1 ],
);
-my %edit_LABEL = ( # package, command, option
-# If option is defined, run <command> <option> <label> <device>
-# If no option, run <command> <device> <label>
+=item %edit_LABEL
+
+Commands to set the file system label.
+
+For each filesystem, list: [ package, command, option ]
+
+If option is defined, run <command> <option> <label> <device>
+
+If no option, run <command> <device> <label>
+
+=cut
+
+my %edit_LABEL = ( #
ext2 => [ 'e2fsprogs', 'tune2fs', '-L' ],
ext3 => [ 'e2fsprogs', 'tune2fs', '-L' ],
ext4 => [ 'e2fsprogs', 'tune2fs', '-L' ],
reiserfs => [ 'reiserfsprogs', 'reiserfstune', '-l' ],
-# reiser4
xfs => [ 'xfsprogs', 'xfs_admin', '-L' ],
jfs => [ 'jfsutils', 'jfs_tune', '-L' ],
# hfs
- dos => [ 'dosfstools', 'dosfslabel' ],
- vfat => [ 'dosfstools', 'dosfslabel' ],
-# swap => [ 'util-linux-ng', 'mkswap' ],
- ntfs => [ 'ntfsprogs', 'ntfslabel' ],
- 'ntfs-3g' => [ 'ntfsprogs', 'ntfslabel' ],
+ dos => [ 'mtools', 'mlabel', '-i' ],
+ exfat => [ 'exfatprogs', 'tune.exfat', '-L' ],
+ vfat => [ 'mtools', 'mlabel', '-i' ],
+ swap => [ 'util-linux', 'swaplabel', '-L' ],
+ ntfs => [ 'ntfs-3g', 'ntfslabel' ],
+ 'ntfs-3g' => [ 'ntfs-3g', 'ntfslabel' ],
+ btrfs => [ 'btrfs-progs', 'btrfs', 'filesystem', 'label' ],
+ nilfs2 => [ 'nilfs-utils', 'nilfs-tune', '-L' ],
);
+=item %preserve_UUID
+
+For each filesystem, list: [ option, max_length, handled_by_mount ]
+
+Those are used in order to preserve UUID on fs where we couldn't enforce it while formatting.
+
+=cut
+
+my %preserve_UUID = ( # package, command
+ jfs => [ 'jfsutils', 'jfs_tune', ],
+ xfs => [ 'xfsprogs', 'xfs_admin' ],
+ nilfs2 => [ 'nilfs-utils', 'nilfs-tune' ],
+);
+
+
+=back
+
+=head1 Functions
+
+=over
+
+=item package_needed_for_partition_type($part)
+
+Return the package needed for that partition's type.
+
+=cut
+
sub package_needed_for_partition_type {
my ($part) = @_;
my $l = $cmds{$part->{fs_type}} or return;
@@ -75,14 +145,14 @@ sub check_package_is_installed_format {
my ($do_pkgs, $fs_type) = @_;
my ($pkg, $binary) = @{$cmds{$fs_type} || return};
- whereis_binary($binary) || $do_pkgs->ensure_binary_is_installed($pkg, $binary); #- ensure_binary_is_installed checks binary chrooted, whereas we run the binary non-chrooted (pb for Mandriva One)
+ whereis_binary($binary) || $do_pkgs->ensure_binary_is_installed($pkg, $binary); #- ensure_binary_is_installed checks binary chrooted, whereas we run the binary non-chrooted (pb for Mageia One)
}
sub check_package_is_installed_label {
my ($do_pkgs, $fs_type) = @_;
my ($pkg, $binary) = @{$edit_LABEL{$fs_type} || return};
- whereis_binary($binary) || $do_pkgs->ensure_binary_is_installed($pkg, $binary); #- ensure_binary_is_installed checks binary chrooted, whereas we run the binary non-chrooted (pb for Mandriva One)
+ whereis_binary($binary) || $do_pkgs->ensure_binary_is_installed($pkg, $binary); #- ensure_binary_is_installed checks binary chrooted, whereas we run the binary non-chrooted (pb for Mageia One)
}
sub canEditLabel {
@@ -90,6 +160,12 @@ sub canEditLabel {
to_bool($edit_LABEL{$part->{fs_type}});
}
+=item part($all_hds, $part, $wait_message)
+
+Frontend to part_raw()
+
+=cut
+
sub part {
my ($all_hds, $part, $wait_message) = @_;
if (isRAID($part)) {
@@ -103,8 +179,15 @@ sub part {
$wait_message->(N("Formatting partition %s", $part->{device})) if $wait_message;
part_raw($part, $wait_message);
}
+ undef $part->{toFormat};
}
+=item write_label($part)
+
+Set the label on the filesystem hold in $part.
+
+=cut
+
sub write_label {
my ($part) = @_;
@@ -118,7 +201,12 @@ sub write_label {
my $dev = $part->{real_device} || $part->{device};
my ($_pkg, $cmd, @first_options) = @{$edit_LABEL{$part->{fs_type}} || die N("I do not know how to set label on %s with type %s", $part->{device}, $part->{fs_type})};
my @args;
- if (defined $first_options[0]) {
+ if ($cmd eq 'mlabel') {
+ @args = ($cmd, @first_options, devices::make($dev), '::' . $part->{device_LABEL});
+ } elsif ($cmd eq 'btrfs') {
+ # btrfs needs reverse ordering
+ @args = ($cmd, @first_options, devices::make($dev), $part->{device_LABEL});
+ } elsif (defined $first_options[0]) {
@args = ($cmd, @first_options, $part->{device_LABEL}, devices::make($dev));
} else {
@args = ($cmd, devices::make($dev), $part->{device_LABEL});
@@ -127,6 +215,36 @@ sub write_label {
delete $part->{device_LABEL_changed};
}
+sub write_btrfs_uuid {
+ my ($UUID, $dev) = @_;
+ $dev = devices::make($dev);
+ my $status = system("echo y|btrfstune -U $UUID $dev") == 0;
+ die "failed to set UUID to '$UUID' on $dev (status=$status)" if !$status;
+}
+
+=item sub option_to_preserve_UUID_while_formating($part, $fs_type)
+
+Return the options needed to preserve UUID while formating
+
+=cut
+
+sub option_to_preserve_UUID_while_formating {
+ my ($part, $fs_type) = @_;
+ if (member($fs_type, qw(swap ext2 ext3 ext4))) {
+ return '-U', $part->{device_UUID} if $part->{device_UUID};
+ } elsif ($fs_type eq 'reiserfs') {
+ return '-u', $part->{device_UUID} if $part->{device_UUID};
+ }
+ return ();
+}
+
+=item part_raw($part, $wait_message)
+
+Actually format the $part partition disk. $wait_message is only used when formating ext3/4.
+If not set, ext[3-4] will be formated without any progression bar, like other fses...
+
+=cut
+
sub part_raw {
my ($part, $wait_message) = @_;
@@ -153,13 +271,8 @@ sub part_raw {
push @options, '-l', 'bootstrap';
}
- # Preserve UUID
- if (member($fs_type, 'swap', 'ext2', 'ext3', 'ext4')) {
- push @options, '-U', $part->{device_UUID} if $part->{device_UUID};
- } elsif ($fs_type eq 'reiserfs') {
- push @options, '-u', $part->{device_UUID} if $part->{device_UUID};
- }
-
+ push @options, option_to_preserve_UUID_while_formating($part, $fs_type);
+
if ($part->{device_LABEL}) {
push @options, @{$LABELs{$fs_type}}[0], $part->{device_LABEL};
}
@@ -176,13 +289,8 @@ sub part_raw {
delete $part->{device_LABEL_changed};
- # Preserve UUID on fs where we couldn't enforce it while formatting
- if ($fs_type eq 'jfs') {
- run_program::raw('jfs_tune', '-U', devices::make($dev));
- } elsif ($fs_type eq 'xfs') {
- run_program::raw('xfs_admin', '-U', devices::make($dev));
- }
-
+ preserve_UUID_after_format($dev, $part, $fs_type);
+
if (member($fs_type, qw(ext3 ext4))) {
disable_forced_fsck($dev);
}
@@ -190,6 +298,28 @@ sub part_raw {
after_formatting($part);
}
+=item preserve_UUID_after_format($dev, $part, $fs_type)
+
+Preserve UUID on fs where we couldn't enforce it while formatting
+
+=cut
+
+sub preserve_UUID_after_format {
+ my ($dev, $part, $fs_type) = @_;
+ if (my $uuid_cmd = $preserve_UUID{$fs_type}) {
+ my (undef, $cmd) = @$uuid_cmd;
+ run_program::raw({}, $cmd, '-U', $part->{device_UUID}, devices::make($dev)) if $cmd;
+ } elsif ($fs_type eq 'btrfs' && $part->{device_UUID}) {
+ write_btrfs_uuid($part->{device_UUID}, $dev);
+ }
+}
+
+=item after_formatting($part)
+
+Misc post formating tags (rereading UUID & setting state)
+
+=cut
+
sub after_formatting {
my ($part) = @_;
@@ -199,6 +329,12 @@ sub after_formatting {
set_isFormatted($part, 1);
}
+=item mkfs_ext3($wait_message, @args)
+
+Display a progression bar whike formating ext3/4
+
+=cut
+
sub mkfs_ext3 {
my ($wait_message, @args) = @_;
@@ -215,6 +351,12 @@ sub mkfs_ext3 {
return close($F);
}
+=item disable_forced_fsck($dev)
+
+Disable automatic fsck on extX (infinite number of mounts & duration between 2 fsck runs)
+
+=cut
+
sub disable_forced_fsck {
my ($dev) = @_;
run_program::run("tune2fs", "-c0", "-i0", devices::make($dev));
@@ -225,7 +367,7 @@ sub clean_label {
if ($part->{device_LABEL}) {
my $fs_type = $part->{fs_type};
if ($LABELs{$fs_type}) {
- my ($option, $length, $handled_by_mount) = @{$LABELs{$fs_type}};
+ my ($_option, $length, $handled_by_mount) = @{$LABELs{$fs_type}};
if (length $part->{device_LABEL} > $length) {
my $short = substr($part->{device_LABEL}, 0, $length);
log::l("shortening LABEL $part->{device_LABEL} to $short");
@@ -261,7 +403,7 @@ sub formatMount_part {
}
#- setting user_xattr on /home (or "/" if no /home)
- if (!$part->{isMounted} && member($part->{fs_type}, qw(ext3 ext4))
+ if (!$part->{isMounted} && member($part->{fs_type}, qw(ext2 ext3 ext4))
&& ($part->{mntpoint} eq '/home' ||
!fs::get::has_mntpoint('/home', $all_hds) && $part->{mntpoint} eq '/')) {
run_program::run('tune2fs', '-o', 'user_xattr', devices::make($part->{real_device} || $part->{device}));
@@ -286,5 +428,8 @@ sub formatMount_all {
};
}
+=back
+
+=cut
1;
diff --git a/perl-install/fs/get.pm b/perl-install/fs/get.pm
index d98ccb2c7..00c807738 100644
--- a/perl-install/fs/get.pm
+++ b/perl-install/fs/get.pm
@@ -1,4 +1,4 @@
-package fs::get; # $Id$
+package fs::get;
use diagnostics;
use strict;
@@ -11,6 +11,17 @@ use fs;
use common;
use log;
+
+=head1 SYNOPSYS
+
+B<fs::get>
+
+=head1 Functions
+
+=over
+
+=cut
+
sub empty_all_hds() {
{ hds => [], lvms => [], raids => [], dmcrypts => [], loopbacks => [], raw_hds => [], nfss => [], smbs => [], davs => [], special => [] };
}
@@ -22,7 +33,7 @@ sub fstab {
sub really_all_fstab {
my ($all_hds) = @_;
my @l = fstab($all_hds);
- @l, @{$all_hds->{raw_hds}}, @{$all_hds->{nfss}}, @{$all_hds->{smbs}}, @{$all_hds->{davs}};
+ @l, (grep { !$_->{is_removable} } @{$all_hds->{raw_hds}}), @{$all_hds->{nfss}}, @{$all_hds->{smbs}}, @{$all_hds->{davs}};
}
sub fstab_and_holes {
@@ -51,7 +62,12 @@ sub hds {
(@{$all_hds->{hds}}, @{$all_hds->{lvms}});
}
-#- get all normal partition including special ones as found on sparc.
+=item hds_fstab(@hds)
+
+Get all normal partition.
+
+=cut
+
sub hds_fstab {
map { partition_table::get_normal_parts($_) } @_;
}
@@ -119,6 +135,15 @@ sub has_mntpoint {
my ($mntpoint, $all_hds) = @_;
mntpoint2part($mntpoint, [ really_all_fstab($all_hds) ]);
}
+
+sub root_from_mounted() {
+ foreach (`df -P`) {
+ next if m!^[^/]!; # ignore tootfs
+ my ($fs, undef, undef, undef, undef, $mntpnt) = split(/\s+/);
+ return $fs if $mntpnt eq '/';
+ }
+}
+
sub root_ {
my ($fstab, $o_boot) = @_;
$o_boot && mntpoint2part("/boot", $fstab) || mntpoint2part("/", $fstab);
@@ -144,7 +169,10 @@ sub is_same_hd {
} else {
$hd1->{device_LABEL} && $hd2->{device_LABEL} && $hd1->{device_LABEL} eq $hd2->{device_LABEL}
|| $hd1->{device_UUID} && $hd2->{device_UUID} && $hd1->{device_UUID} eq $hd2->{device_UUID}
- || $hd1->{device} && $hd2->{device} && $hd1->{device} eq $hd2->{device};
+ || $hd1->{device} && $hd2->{device} && $hd1->{device} eq $hd2->{device}
+ || $hd1->{device} && $hd2->{device_alias} && $hd1->{device} eq $hd2->{device_alias}
+ || $hd1->{device_alias} && $hd2->{device} && $hd1->{device_alias} eq $hd2->{device}
+ || $hd1->{device_alias} && $hd2->{device_alias} && $hd1->{device_alias} eq $hd2->{device_alias};
}
}
@@ -153,4 +181,8 @@ sub mntpoint_prefixed {
$::prefix . $part->{mntpoint};
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/fs/loopback.pm b/perl-install/fs/loopback.pm
index 572c79f67..8d0c729ec 100644
--- a/perl-install/fs/loopback.pm
+++ b/perl-install/fs/loopback.pm
@@ -1,4 +1,4 @@
-package fs::loopback; # $Id$
+package fs::loopback;
use diagnostics;
use strict;
@@ -86,7 +86,7 @@ sub getFree {
}
#- returns the size of the loopback file if it already exists
-#- returns -1 is the loopback file can not be used
+#- returns -1 is the loopback file cannot be used
sub verifFile {
my ($dir, $file, $part) = @_;
-e "$dir$file" and return -s "$dir$file";
diff --git a/perl-install/fs/mount.pm b/perl-install/fs/mount.pm
index f7bea2ae4..6afaa9260 100644
--- a/perl-install/fs/mount.pm
+++ b/perl-install/fs/mount.pm
@@ -1,4 +1,4 @@
-package fs::mount; # $Id$
+package fs::mount;
use diagnostics;
use strict;
@@ -35,8 +35,8 @@ sub mount {
$fs or log::l("not mounting $dev partition"), return;
{
- my @fs_modules = qw(ext3 ext4 hfs jfs nfs ntfs romfs reiserfs ufs xfs vfat);
- my @types = (qw(ext2 proc sysfs usbfs usbdevfs iso9660 devfs devpts auto ntfs-3g), @fs_modules);
+ my @fs_modules = qw(btrfs ext3 ext4 f2fs hfs jfs nilfs2 nfs ntfs romfs reiserfs ufs xfs vfat);
+ my @types = (qw(ext2 proc sysfs iso9660 devpts auto ntfs-3g), @fs_modules);
push @types, 'smb', 'cifs', 'davfs2' if !$::isInstall;
@@ -83,6 +83,7 @@ sub mount {
push @mount_opt, 'ro' if $b_rdonly;
$o_wait_message->(N("Mounting partition %s", $dev)) if $o_wait_message;
+ modules::load("fuse") if $::isInstall && $fs eq 'ntfs-3g' && ! -e '/dev/fuse';
run_program::run('mount', '-t', $fs, $dev, $where, if_(@mount_opt, '-o', join(',', @mount_opt))) or die N("mounting partition %s in directory %s failed", $dev, $where);
}
@@ -125,7 +126,7 @@ sub umount {
run_program::run('umount', '2>', \$err, $mntpoint) or die N("error unmounting %s: %s", $mntpoint, common::to_utf8($err));
};
- substInFile { $_ = '' if /(^|\s)$mntpoint\s/ } '/etc/mtab'; #- do not care about error, if we can not read, we will not manage to write... (and mess mtab)
+ substInFile { $_ = '' if /(^|\s)$mntpoint\s/ } '/etc/mtab'; #- do not care about error, if we cannot read, we will not manage to write... (and mess mtab)
}
sub part {
@@ -160,8 +161,6 @@ sub part {
set_loop($part);
$options = join(',', grep { !/^(encryption=|encrypted$|loop$)/ } split(',', $options)); #- we take care of this, don't let it mount see it
} elsif (isLoopback($part)) {
- #- mount will take care, but we must help it
- devices::make("loop$_") foreach 0 .. 7;
$options = join(',', uniq('loop', split(',', $options))); #- ensure the loop options is used
} elsif ($part->{options} =~ /encrypted/) {
log::l("skip mounting $part->{device} since we do not have the encrypt_key");
@@ -222,16 +221,15 @@ sub umount_all {
log::l("unmounting all filesystems");
foreach (sort { $b->{mntpoint} cmp $a->{mntpoint} }
- grep { $_->{mntpoint} && !$_->{real_mntpoint} } @$fstab) {
+ grep { $_->{mntpoint} && !$_->{real_mntpoint} || isSwap($_) } @$fstab) {
umount_part($_);
}
}
-sub usbfs {
+sub sys_kernel_debug {
my ($prefix) = @_;
- my $fs = cat_('/proc/filesystems') =~ /usbfs/ ? 'usbfs' : 'usbdevfs';
- mount('none', "$prefix/proc/bus/usb", $fs);
+ mount('none', "$prefix/sys/kernel/debug/usb", 'debugfs');
}
1;
diff --git a/perl-install/fs/mount_options.pm b/perl-install/fs/mount_options.pm
index 1413fc8a6..0b63f7260 100644
--- a/perl-install/fs/mount_options.pm
+++ b/perl-install/fs/mount_options.pm
@@ -1,4 +1,4 @@
-package fs::mount_options; # $Id$
+package fs::mount_options;
use diagnostics;
use strict;
@@ -35,14 +35,14 @@ sub unpack {
reiserfs => [ 'notail' ],
);
push @{$per_fs{$_}}, 'usrquota', 'grpquota' foreach 'ext2', 'ext3', 'ext4', 'xfs';
+ push @{$per_fs{$_}}, 'acl' foreach 'ext2', 'ext3', 'ext4', 'reiserfs';
while (my ($fs, $l) = each %per_fs) {
- $part->{fs_type} eq $fs || $part->{fs_type} eq 'auto' && member($fs, @auto_fs) or next;
+ member($part->{fs_type}, $fs, 'auto') && member($fs, @auto_fs) or next;
$non_defaults->{$_} = 1 foreach @$l;
}
$non_defaults->{relatime} = 1 if isTrueLocalFS($part) || $part->{fs_type} eq 'ntfs-3g';
- $non_defaults->{encrypted} = 1;
my $defaults = { reverse %$non_defaults };
my %options = map { $_ => '' } keys %$non_defaults;
@@ -103,6 +103,7 @@ sub pack_ {
}
sub pack {
my ($part, $options, $unknown) = @_;
+ $unknown =~ s/ /,/g;
$part->{options} = pack_($part, $options, $unknown) || 'defaults';
noreturn();
}
@@ -110,39 +111,38 @@ sub pack {
# update me on each util-linux new release:
sub help() {
(
-
- 'encrypted' => N("Use an encrypted file system"),
+ 'acl' => N("Enable POSIX Access Control Lists"),
'flush' => N("Flush write cache on file close"),
'grpquota' => N("Enable group disk quota accounting and optionally enforce limits"),
- 'noatime' => N("Do not update inode access times on this file system
+ 'noatime' => N("Do not update inode access times on this filesystem
(e.g, for faster access on the news spool to speed up news servers)."),
'relatime' => N("Update inode access times on this filesystem in a more efficient way
(e.g, for faster access on the news spool to speed up news servers)."),
'noauto' => N("Can only be mounted explicitly (i.e.,
-the -a option will not cause the file system to be mounted)."),
+the -a option will not cause the filesystem to be mounted)."),
- 'nodev' => N("Do not interpret character or block special devices on the file system."),
+ 'nodev' => N("Do not interpret character or block special devices on the filesystem."),
'noexec' => N("Do not allow execution of any binaries on the mounted
-file system. This option might be useful for a server that has file systems
+filesystem. This option might be useful for a server that has filesystems
containing binaries for architectures other than its own."),
'nosuid' => N("Do not allow set-user-identifier or set-group-identifier
bits to take effect. (This seems safe, but is in fact rather unsafe if you
have suidperl(1) installed.)"),
- 'ro' => N("Mount the file system read-only."),
+ 'ro' => N("Mount the filesystem read-only."),
- 'sync' => N("All I/O to the file system should be done synchronously."),
+ 'sync' => N("All I/O to the filesystem should be done synchronously."),
- 'users' => N("Allow every user to mount and umount the file system."),
+ 'users' => N("Allow every user to mount and umount the filesystem."),
- 'user' => N("Allow an ordinary user to mount the file system."),
+ 'user' => N("Allow an ordinary user to mount the filesystem."),
'usrquota' => N("Enable user disk quota accounting, and optionally enforce limits"),
@@ -187,7 +187,6 @@ sub set_default {
if (!$opts{ignore_is_removable} && $part->{is_removable}
&& !member($part->{mntpoint}, fs::type::directories_needed_to_boot())
&& (!$part->{fs_type} || $part->{fs_type} eq 'auto' || $part->{fs_type} =~ /:/)) {
- $options->{supermount} = 0; #- always disable supermount
$part->{fs_type} = 'auto';
$options->{flush} = 1 if $part->{media_type} ne 'cdrom';
}
@@ -205,10 +204,10 @@ sub set_default {
#- noatime on laptops (do not wake up the hd)
#- otherwise relatime (wake up the hd less often / better performances)
#- Do not update inode access times on this
- #- file system (e.g, for faster access on the
+ #- filesystem (e.g, for faster access on the
#- news spool to speed up news servers).
$options->{relatime} = $options->{noatime} = 0;
- $options->{detect_devices::isLaptop() ? 'noatime': 'relatime'} = 1 if !$opts{force_atime};
+ $options->{ detect_devices::isLaptop() ? 'noatime' : 'relatime' } = 1 if !$opts{force_atime};
}
if ($part->{fs_type} eq 'nfs') {
put_in_hash($options, {
@@ -225,7 +224,7 @@ sub set_default {
}) if $part->{is_removable};
put_in_hash($options, {
- 'umask=0' => $opts{security} <= 1,
+ 'umask=0' => $opts{security} <= 1 && !isESP($part),
'iocharset=' => $opts{iocharset}, 'codepage=' => $opts{codepage},
});
}
@@ -241,6 +240,9 @@ sub set_default {
$options->{notail} = 1;
$options->{user_xattr} = 1;
}
+ if (member($part->{fs_type}, qw(ext2 ext3 ext4))) {
+ $options->{acl} = 1;
+ }
if (isLoopback($part) && !isSwap($part)) { #- no need for loop option for swap files
$options->{loop} = 1;
}
diff --git a/perl-install/fs/mount_point.pm b/perl-install/fs/mount_point.pm
index 4d4880f5d..56f2405e9 100644
--- a/perl-install/fs/mount_point.pm
+++ b/perl-install/fs/mount_point.pm
@@ -1,4 +1,4 @@
-package fs::mount_point; # $Id$
+package fs::mount_point;
use diagnostics;
use strict;
@@ -13,16 +13,21 @@ sub guess_mount_point {
my %l = (
'/' => 'etc/fstab',
'/boot' => 'vmlinuz',
+ '/boot' => 'vmlinux',
+ '/boot' => 'uImage',
'/tmp' => '.X11-unix',
'/usr' => 'src',
- '/var' => 'catman',
+ '/var' => 'spool',
);
my $handle = any::inspect($part, $prefix) or return;
my $d = $handle->{dir};
my $mnt = find { -e "$d/$l{$_}" } keys %l;
$mnt ||= (stat("$d/.bashrc"))[4] ? '/root' : '/home/user' . ++$$user if -e "$d/.bashrc";
- $mnt ||= (any { -d $_ && (stat($_))[4] >= 500 && -e "$_/.bashrc" } glob_($d)) ? '/home' : '';
+ $mnt ||= (any { -d $_ && (stat($_))[4] >= 1000 && -e "$_/.bashrc" } glob_($d)) ? '/home' : '';
+ # Keep uid 500 here for guesswork, but base it on .bash_history to increase
+ # changes it's a real user.
+ $mnt ||= (any { -d $_ && (stat($_))[4] >= 500 && -e "$_/.bash_history" } glob_($d)) ? '/home' : '';
($mnt, $handle);
}
@@ -41,30 +46,32 @@ sub suggest_mount_points {
#- try to find other mount points via fstab
fs::merge_info_from_fstab($fstab, $handle->{dir}, $uniq, 'loose') if $mnt eq '/';
}
+ # reuse existing ESP under UEFI:
+ my @ESP = if_(is_uefi(), grep { isESP($_) } @$fstab);
+ if (@ESP) {
+ $ESP[0]{mntpoint} = '/boot/EFI';
+ delete $ESP[0]{unsafeMntpoint};
+ }
$_->{mntpoint} and log::l("suggest_mount_points: $_->{device} -> $_->{mntpoint}") foreach @$fstab;
}
sub suggest_mount_points_always {
my ($fstab) = @_;
- my @win = grep { isFat_or_NTFS($_) && maybeFormatted($_) && !$_->{is_removable} && $_->{pt_type} != 0x12 } @$fstab;
+ my @ESP = if_(is_uefi(), grep { isESP($_) && maybeFormatted($_) && !$_->{is_removable} } @$fstab);
+ if (@ESP) {
+ $ESP[0]{mntpoint} = "/boot/EFI";
+ }
+ my @win = grep { isnormal_Fat_or_NTFS($_) && !$_->{isMounted} && maybeFormatted($_) && !$_->{is_removable} } @$fstab;
log::l("win parts: ", join ",", map { $_->{device} } @win) if @win;
if (@win == 1) {
- #- Suggest /boot/efi on ia64.
- $win[0]{mntpoint} = arch() =~ /ia64/ ? "/boot/efi" : "/mnt/windows";
+ $win[0]{mntpoint} = "/media/windows";
} else {
my %w; foreach (@win) {
my $v = $w{$_->{device_windobe}}++;
- $_->{mntpoint} = $_->{unsafeMntpoint} = "/mnt/win_" . lc($_->{device_windobe}) . ($v ? $v+1 : ''); #- lc cuz of StartOffice(!) cf dadou
+ $_->{mntpoint} = $_->{unsafeMntpoint} = "/media/win_" . lc($_->{device_windobe}) . ($v ? $v+1 : ''); #- lc cuz of StartOffice(!) cf dadou
}
}
-
- my @sunos = grep { $_->{pt_type} == 2 } @$fstab; #- take only into account root partitions.
- if (@sunos) {
- my $v = '';
- map { $_->{mntpoint} = $_->{unsafeMntpoint} = "/mnt/sunos" . ($v && ++$v) } @sunos;
- }
- #- a good job is to mount SunOS root partition, and to use mount point described here in /etc/vfstab.
}
sub validate_mount_points {
@@ -80,8 +87,8 @@ sub validate_mount_points {
$m{$m} and die N("Duplicate mount point %s", $m);
$m{$m} = 1;
- #- in case the type does not correspond, force it to ext3
- fs::type::set_fs_type($_, 'ext3') if !isTrueFS($_) && !isOtherAvailableFS($_);
+ #- in case the type does not correspond, force it to default fs (ext4 currently)
+ fs::type::set_fs_type($_, defaultFS()) if !isTrueFS($_) && !isOtherAvailableFS($_);
}
1;
}
diff --git a/perl-install/fs/partitioning.pm b/perl-install/fs/partitioning.pm
index ab2b6733a..18fa7e114 100644
--- a/perl-install/fs/partitioning.pm
+++ b/perl-install/fs/partitioning.pm
@@ -1,16 +1,18 @@
-package fs::partitioning; # $Id$
+package fs::partitioning;
use diagnostics;
use strict;
use common;
use fs::format;
+use fs::get;
use fs::type;
sub guess_partitions_to_format {
my ($fstab) = @_;
+ my $root_part = fs::get::root($fstab);
foreach (@$fstab) {
- $_->{mntpoint} = "swap" if isSwap($_);
+ $_->{mntpoint} = "swap" if isSwap($_) && ($_->{rootDevice} eq $root_part->{rootDevice} || !$_->{is_removable} && !$root_part->{is_removable});
$_->{mntpoint} or next;
add2hash_($_, { toFormat => $_->{notFormatted} }) if $_->{fs_type}; #- eg: do not set toFormat for isRawRAID (0xfd)
@@ -45,14 +47,14 @@ sub choose_partitions_to_format {
$in->ask_from_(
{ messages => N("Choose the partitions you want to format"),
interactive_help_id => 'formatPartitions',
- advanced_messages => N("Check bad blocks?"),
+ advanced_messages => N("Check for bad blocks?"),
},
[ map {
my $e = $_;
({
text => partition_table::description($e), type => 'bool',
val => \$e->{toFormatTmp}
- }, if_(!isLoopback($_) && !member($_->{fs_type}, 'reiserfs', 'xfs', 'jfs'), {
+ }, if_(!isLoopback($_) && isBlockCheckable($_), {
text => partition_table::description($e), type => 'bool', advanced => 1,
disabled => sub { !$e->{toFormatTmp} },
val => \$e->{toFormatCheck}
diff --git a/perl-install/fs/partitioning_wizard.pm b/perl-install/fs/partitioning_wizard.pm
index 3aa93cdd3..6e77f3eff 100644
--- a/perl-install/fs/partitioning_wizard.pm
+++ b/perl-install/fs/partitioning_wizard.pm
@@ -1,4 +1,4 @@
-package fs::partitioning_wizard; # $Id$
+package fs::partitioning_wizard;
use diagnostics;
use strict;
@@ -11,13 +11,29 @@ use fs::type;
use fs::mount_point;
use partition_table;
use partition_table::raw;
+use partition_table::dos;
+use POSIX qw(ceil);
+
+
+=head1 SYNOPSYS
+
+B<fs::partitioning_wizard> implements the partitioning wizard.
+
+=head1 Functions
+
+=over
+
+=item from_Mb($mb, $min, $max)
+
+This function is used to convert back to sectors count the size of
+a partition ($mb) given from the interface (on Resize or Create).
+modified to take into account a true bounding with min and max.
+Unit of $mb is mega bytes, min and max are in sectors.
+
+=cut
-#- unit of $mb is mega bytes, min and max are in sectors, this
-#- function is used to convert back to sectors count the size of
-#- a partition ($mb) given from the interface (on Resize or Create).
-#- modified to take into account a true bounding with min and max.
sub from_Mb {
- my ($mb, $min, $max) = @_;
+ emy ($mb, $min, $max) = @_;
$mb <= to_Mb($min) and return $min;
$mb >= to_Mb($max) and return $max;
MB($mb);
@@ -28,15 +44,28 @@ sub to_Mb {
}
sub partition_with_diskdrake {
- my ($in, $all_hds, $fstab, $manual_fstab, $partitions, $partitioning_flags, $skip_mtab) = @_;
- my $ok;
+ my ($in, $all_hds, $fstab, $manual_fstab, $_partitions, $partitioning_flags, $skip_mtab) = @_;
+ my $ok;
+
+ # The classic installer sets $skip_mtab to either undef or 1. The live
+ # installer sets it to 'skip_mtab'. If $skip_mtab is not set, this has
+ # already been done by fs::any::get_hds.
+ if ($skip_mtab eq 'skip_mtab') {
+ fs::mount_point::suggest_mount_points_always($fstab);
+ }
do {
$ok = 1;
my $do_force_reload = sub {
+ require File::Temp;
+ require fs::dmcrypt;
+ my (undef, $tmp_file) = File::Temp::mkstemp('/tmp/crypttab.XXXXXXX');
+ fs::dmcrypt::save_crypttab_($all_hds, $tmp_file);
my $new_hds = fs::get::empty_all_hds();
fs::any::get_hds($new_hds, $fstab, $manual_fstab, $partitioning_flags, $skip_mtab, $in);
%$all_hds = %$new_hds;
+ fs::dmcrypt::read_crypttab_($all_hds, $tmp_file);
+ rm_rf($tmp_file);
$all_hds;
};
require diskdrake::interactive;
@@ -45,43 +74,59 @@ sub partition_with_diskdrake {
diskdrake::interactive::main($in, $all_hds, $do_force_reload);
}
my @fstab = fs::get::fstab($all_hds);
-
+
unless (fs::get::root_(\@fstab)) {
$ok = 0;
$in->ask_okcancel(N("Partitioning"), N("You must have a root partition.
-For this, create a partition (or click on an existing one).
+To accomplish this, create a partition (or click on an existing one).
Then choose action ``Mount point'' and set it to `/'"), 1) or return;
}
+
if (!any { isSwap($_) } @fstab) {
$ok &&= $in->ask_okcancel('', N("You do not have a swap partition.\n\nContinue anyway?"));
}
- if (arch() =~ /ia64/ && !fs::get::has_mntpoint("/boot/efi", $all_hds)) {
- $in->ask_warn('', N("You must have a FAT partition mounted in /boot/efi"));
+ if (is_uefi()) {
+ my $part = fs::get::has_mntpoint("/boot/EFI", $all_hds);
+ if (!$part || !isESP($part)) {
+ $in->ask_warn('', N("You must have a ESP FAT32 partition mounted in /boot/EFI"));
$ok = '';
+ }
+ } else {
+ if (fs::any::is_boot_bios_part_needed($all_hds)) {
+ $in->ask_warn('', N("You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. Please create one before continuing."));
+ $ok = '';
+ }
}
} until $ok;
1;
}
sub partitionWizardSolutions {
- my ($in, $all_hds, $all_fstab, $manual_fstab, $partitions, $partitioning_flags, $skip_mtab) = @_;
+ my ($in, $all_hds, $all_fstab, $manual_fstab, $partitions, $partitioning_flags, $skip_mtab, $o_target) = @_;
my $hds = $all_hds->{hds};
- my $fstab = [ fs::get::fstab($all_hds) ];
+ my $fstab;
+ my $full_fstab = [ fs::get::fstab($all_hds) ];
+ if ($o_target) {
+ $hds = [ $o_target ];
+ $fstab = [ grep { $_->{rootDevice} eq $o_target->{device} } fs::get::fstab($all_hds) ];
+ } else {
+ $fstab = $full_fstab;
+ }
+
my @wizlog;
my (%solutions);
- my $min_linux = MB(400);
- my $max_linux = MB(2000);
+ my $min_linux = MB(600);
my $min_swap = MB(50);
- my $max_swap = MB(300);
my $min_freewin = MB(100);
+ fsedit::init_mntpnt_suggestions($all_hds, $o_target);
# each solution is a [ score, text, function ], where the function retunrs true if succeeded
my @hds_rw = grep { !$_->{readonly} } @$hds;
- my @hds_can_add = grep { $_->can_add } @hds_rw;
+ my @hds_can_add = grep { $_->{type} ne 'hd' || $_->can_add } @hds_rw;
if (fs::get::hds_free_space(@hds_can_add) > $min_linux) {
- $solutions{free_space} = [ 30, N("Use free space"), sub { fsedit::auto_allocate($all_hds, $partitions); 1 } ];
+ $solutions{free_space} = [ 30, N("Use free space"), sub { fsedit::auto_allocate($all_hds, $partitions, $o_target); 1 } ];
} else {
push @wizlog, N("Not enough free space to allocate new partitions") . ": " .
(@hds_can_add ?
@@ -91,67 +136,88 @@ sub partitionWizardSolutions {
if (my @truefs = grep { isTrueLocalFS($_) } @$fstab) {
#- value twice the ext2 partitions
- $solutions{existing_part} = [ 20 + @truefs + @$fstab, N("Use existing partitions"), sub { fs::mount_point::ask_mount_points($in, $fstab, $all_hds) } ];
+ $solutions{existing_part} = [ 20 + @truefs + @$fstab, N("Use existing partitions"), sub { fs::mount_point::ask_mount_points($in, $full_fstab, $all_hds) } ];
} else {
push @wizlog, N("There is no existing partition to use");
}
- my @fats = grep { $_->{fs_type} eq 'vfat' } @$fstab;
- fs::df($_) foreach @fats;
- if (my @ok_forloopback = sort { $b->{free} <=> $a->{free} } grep { $_->{free} > $min_linux + $min_swap + $min_freewin } @fats) {
- $solutions{loopback} =
- [ -10 - @fats, N("Use the Microsoft Windows® partition for loopback"),
- sub {
- my ($s_root, $s_swap);
- my $part = $in->ask_from_listf('', N("Which partition do you want to use for Linux4Win?"), \&partition_table::description, \@ok_forloopback) or return;
- $max_swap = $min_swap + 1 if $part->{free} - $max_swap < $min_linux;
- $in->ask_from('', N("Choose the sizes"), [
- { label => N("Root partition size in MB: "), val => \$s_root, min => to_Mb($min_linux), max => to_Mb(min($part->{free} - $max_swap, $max_linux)), type => 'range' },
- { label => N("Swap partition size in MB: "), val => \$s_swap, min => to_Mb($min_swap), max => to_Mb($max_swap), type => 'range' },
- ]) or return;
- push @{$part->{loopback}},
- { fs_type => 'ext3', loopback_file => '/lnx4win/linuxsys.img', mntpoint => '/', size => $s_root * 2048, loopback_device => $part, notFormatted => 1 },
- { fs_type => 'swap', loopback_file => '/lnx4win/swapfile', mntpoint => 'swap', size => $s_swap * 2048, loopback_device => $part, notFormatted => 1 };
- fsedit::recompute_loopbacks($all_hds);
- 1;
- } ];
- } else {
- push @wizlog, N("There is no FAT partition to use as loopback (or not enough space left)") .
- (@fats ? "\nFAT partitions:" . join('', map { "\n $_->{device} $_->{free} (" . ($min_linux + $min_swap + $min_freewin) . ")" } @fats) : '');
- }
-
-
- if (my @ok_for_resize_fat = grep { isFat_or_NTFS($_) && !fs::get::part2hd($_, $all_hds)->{readonly}
- && !isRecovery($_) } @$fstab) {
- $solutions{resize_fat} =
- [ 20 - @ok_for_resize_fat, N("Use the free space on a Microsoft Windows® partition"),
- sub {
- my $part = $in->ask_from_listf_raw({ messages => N("Which partition do you want to resize?"),
- interactive_help_id => 'resizeFATChoose',
- }, \&partition_table::description, \@ok_for_resize_fat) or return;
- my $hd = fs::get::part2hd($part, $all_hds);
- my $resize_fat = eval {
- my $pkg = $part->{fs_type} eq 'vfat' ? do {
- require resize_fat::main;
- 'resize_fat::main';
- } : do {
- require diskdrake::resize_ntfs;
- 'diskdrake::resize_ntfs';
- };
- $pkg->new($part->{device}, devices::make($part->{device}));
- };
- $@ and die N("The FAT resizer is unable to handle your partition,
-the following error occurred: %s", formatError($@));
- my $min_win = do {
- my $_w = $in->wait_message(N("Resizing"), N("Computing the size of the Microsoft Windows® partition"));
- $resize_fat->min_size;
- };
- #- make sure that even after normalizing the size to cylinder boundaries, the minimun will be saved,
- #- this save at least a cylinder (less than 8Mb).
- $min_win += partition_table::raw::cylinder_size($hd);
-
- $part->{size} > $min_linux + $min_swap + $min_freewin + $min_win or die N("Your Microsoft Windows® partition is too fragmented. Please reboot your computer under Microsoft Windows®, run the ``defrag'' utility, then restart the Mandriva Linux installation.");
- $in->ask_okcancel('', formatAlaTeX(
+ if (my @ok_for_resize_fat = grep { isnormal_Fat_or_NTFS($_) && !fs::get::part2hd($_, $all_hds)->{readonly}
+ && $_->{size} > $min_linux + $min_swap + $min_freewin } @$fstab) {
+ @ok_for_resize_fat = map {
+ my $part = $_;
+ my $hd = fs::get::part2hd($part, $all_hds);
+ my $resize_fat = eval {
+ my $pkg = $part->{fs_type} eq 'vfat' ? do {
+ require resize_fat::main;
+ 'resize_fat::main';
+ } : do {
+ require diskdrake::resize_ntfs;
+ 'diskdrake::resize_ntfs';
+ };
+ $pkg->new($part->{device}, devices::make($part->{device}));
+ };
+ if ($@) {
+ log::l("The FAT resizer is unable to handle $part->{device} partition%s", formatError($@));
+ undef $part;
+ }
+ if ($part) {
+ my $min_win = eval {
+ my $_w = $in->wait_message(N("Resizing"), N("Computing the size of the Microsoft Windows® partition"));
+ $resize_fat->min_size + $min_freewin;
+ };
+ if ($@) {
+ log::l("The FAT resizer is unable to get minimal size for $part->{device} partition %s", formatError($@));
+ undef $part;
+ } else {
+ my $min_linux_all = $min_linux + $min_swap;
+ #- make sure that even after normalizing the size to cylinder boundaries, the minimun will be saved,
+ #- this save at least a cylinder (less than 8Mb).
+ $min_win += partition_table::raw::cylinder_size($hd);
+
+ if ($part->{size} <= $min_linux_all + $min_win) {
+# die N("Your Microsoft Windows® partition is too fragmented. Please reboot your computer under Microsoft Windows®, run the ``defrag'' utility, then restart the %s installation.", N("Mageia"));
+ undef $part;
+ } else {
+ $part->{resize_fat} = $resize_fat;
+ $part->{min_win} = $min_win;
+ $part->{min_linux} = $min_linux_all;
+ #- try to keep at least 1GB free for Windows
+ #- try to use from 20GB to 20% free space for Linux
+ my $suggested_size = max(
+ $part->{min_win} + 1 * MB(1024),
+ min(
+ $part->{size} - int(0.2 * ($part->{size} - $part->{min_win})),
+ $part->{size} - 20 * MB(1024),
+ ),
+ );
+ $part->{req_size} = max(min($suggested_size, $part->{size} - $part->{min_linux}), $part->{min_win});
+ }
+ }
+ }
+ $part || ();
+ } @ok_for_resize_fat;
+ if (@ok_for_resize_fat) {
+ $solutions{resize_fat} =
+ [ 20 - @ok_for_resize_fat, N("Use the free space on a Microsoft Windows® partition"),
+ sub {
+ my $part;
+ if (!$in->isa('interactive::gtk')) {
+ $part = $in->ask_from_listf_raw({ messages => N("Which partition do you want to resize?"),
+ interactive_help_id => 'resizeFATChoose',
+ }, \&partition_table::description, \@ok_for_resize_fat) or return;
+ $part->{size} > $part->{min_linux} + $part->{min_win} or die N("Your Microsoft Windows® partition is too fragmented. Please reboot your computer under Microsoft Windows®, run the ``defrag'' utility, then restart the %s installation.", N("Mageia"));
+ } else {
+ my @selected = grep {
+ $_->{selected_for_resize} &&
+ $o_target->{device} eq $_->{rootDevice}; # Not needed but let's be safe
+ } @ok_for_resize_fat;
+ my $nb_parts = @selected;
+ die N("Failed to find the partition to resize (%d choices)", $nb_parts) unless $nb_parts == 1;
+ $part = $selected[0];
+ }
+ my $resize_fat = $part->{resize_fat};
+ my $hd = fs::get::part2hd($part, $all_hds);
+ $in->ask_okcancel('', formatAlaTeX(
#-PO: keep the double empty lines between sections, this is formatted a la LaTeX
N("WARNING!
@@ -164,54 +230,66 @@ Be careful: this operation is dangerous. If you have not already done so, you fi
When sure, press %s.", N("Next")))) or return;
- my $mb_size = to_Mb($part->{size});
- $in->ask_from(N("Partitionning"), N("Which size do you want to keep for Microsoft Windows® on partition %s?", partition_table::description($part)), [
- { label => N("Size"), val => \$mb_size, min => to_Mb($min_win), max => to_Mb($part->{size} - $min_linux - $min_swap), type => 'range' },
- ]) or return;
-
- my $oldsize = $part->{size};
- $part->{size} = from_Mb($mb_size, $min_win, $part->{size});
-
- $hd->adjustEnd($part);
-
- eval {
- my $_w = $in->wait_message(N("Resizing"), N("Resizing Microsoft Windows® partition"));
- $resize_fat->resize($part->{size});
- };
- if (my $err = $@) {
- $part->{size} = $oldsize;
- die N("FAT resizing failed: %s", formatError($err));
- }
-
- $in->ask_warn('', N("To ensure data integrity after resizing the partition(s),
+ my $oldsize = $part->{size};
+ if (!$in->isa('interactive::gtk')) {
+ my $mb_size = to_Mb($part->{req_size});
+ my $max_win = $part->{size} - $part->{min_linux};
+ $in->ask_from(N("Partitionning"), N("Which size do you want to keep for Microsoft Windows® on partition %s?", partition_table::description($part)), [
+ { label => N("Size"), val => \$mb_size, min => to_Mb($part->{min_win}), max => to_Mb($max_win), type => 'range' },
+ ]) or return;
+ $part->{req_size} = from_Mb($mb_size, $part->{min_win}, $part->{max_win});
+ }
+ $part->{size} = $part->{req_size};
+
+ $hd->adjustEnd($part);
+
+ eval {
+ my $_w = $in->wait_message(N("Resizing"), N("Resizing Microsoft Windows® partition"));
+ $resize_fat->resize($part->{size});
+ };
+ if (my $err = $@) {
+ $part->{size} = $oldsize;
+ die N("FAT resizing failed: %s", formatError($err));
+ }
+
+ $in->ask_warn('', N("To ensure data integrity after resizing the partition(s),
filesystem checks will be run on your next boot into Microsoft Windows®")) if $part->{fs_type} ne 'vfat';
- set_isFormatted($part, 1);
- partition_table::will_tell_kernel($hd, resize => $part); #- down-sizing, write_partitions is not needed
- partition_table::adjust_local_extended($hd, $part);
- partition_table::adjust_main_extended($hd);
+ set_isFormatted($part, 1);
+ partition_table::will_tell_kernel($hd, resize => $part); #- down-sizing, write_partitions is not needed
+ partition_table::adjust_local_extended($hd, $part);
+ partition_table::adjust_main_extended($hd);
- fsedit::auto_allocate($all_hds, $partitions);
- 1;
- } ];
+ fsedit::auto_allocate($all_hds, $partitions, $hd);
+ 1;
+ }, \@ok_for_resize_fat ];
+ }
} else {
push @wizlog, N("There is no FAT partition to resize (or not enough space left)");
}
if (@$fstab && @hds_rw) {
$solutions{wipe_drive} =
- [ 10, fsedit::is_one_big_fat_or_NT($hds) ? N("Remove Microsoft Windows®") : N("Erase and use entire disk"),
+ [ 10, fsedit::is_one_big_fat_or_NT($hds) ? N("Remove Microsoft Windows®") : N("Erase and use entire disk"),
sub {
- my $hd = $in->ask_from_listf_raw({ messages => N("You have more than one hard drive, which one do you install linux on?"),
- title => N("Partitioning"),
- interactive_help_id => 'takeOverHdChoose',
- },
- \&partition_table::description, \@hds_rw) or return;
+ my $hd;
+ if (!$in->isa('interactive::gtk')) {
+ $hd = $in->ask_from_listf_raw({ messages => N("You have more than one hard disk drive, which one do you want the installer to use?"),
+ title => N("Partitioning"),
+ interactive_help_id => 'takeOverHdChoose',
+ },
+ \&partition_table::description, \@hds_rw) or return;
+ } else {
+ $hd = $o_target;
+ }
$in->ask_okcancel_({ messages => N("ALL existing partitions and their data will be lost on drive %s", partition_table::description($hd)),
title => N("Partitioning"),
interactive_help_id => 'takeOverHdConfirm' }) or return;
fsedit::partition_table_clear_and_initialize($all_hds->{lvms}, $hd, $in);
- fsedit::auto_allocate($all_hds, $partitions);
+ # FIXME: reread all_hds:
+ # re add suggestions if needed (as we might just have erased eg Boot BIOS partition):
+ fsedit::init_mntpnt_suggestions($all_hds, $hd, 1);
+ fsedit::auto_allocate($all_hds, $partitions, $hd);
1;
} ];
}
@@ -223,18 +301,14 @@ filesystem checks will be run on your next boot into Microsoft Windows®")) if $
}
$solutions{fdisk} =
- [ -10, N("Use fdisk"), sub {
+ [ -10, N("Use fdisk"), sub {
$in->enter_console;
foreach (@$hds) {
print "\n" x 10, N("You can now partition %s.
When you are done, do not forget to save using `w'", partition_table::description($_));
print "\n\n";
my $pid = 0;
- if (arch() =~ /ppc/) {
- $pid = fork() or exec "pdisk", devices::make($_->{device});
- } else {
- $pid = fork() or exec "fdisk", devices::make($_->{device});
- }
+ $pid = fork() or exec "fdisk", devices::make($_->{device});
waitpid($pid, 0);
}
$in->leave_console;
@@ -247,43 +321,326 @@ When you are done, do not forget to save using `w'", partition_table::descriptio
sub warn_reboot_needed {
my ($in) = @_;
- $in->ask_warn(N("Partitioning"), N("You need to reboot for the partition table modifications to take place"));
+ $in->ask_warn(N("Partitioning"), N("You need to reboot for the partition table modifications to take effect"));
}
-sub main {
- my ($o, $all_hds, $fstab, $manual_fstab, $partitions, $partitioning_flags, $skip_mtab, $b_nodiskdrake) = @_;
+sub create_display_box {
+ my ($kind, $resize, $fill_empty, $button) = @_;
+
+ # Hide empty space < 2MB, wehave such holes due to alignment
+ my @parts = grep { $_->{size} > MB(2) || !isEmpty($_) } diskdrake::hd_gtk::kind2parts($kind);
+
+ my $totalsectors = diskdrake::hd_gtk::kind2sectors($kind, @parts);
+
+ my $width = 520;
+ my $minwidth = 40;
- my %solutions = partitionWizardSolutions($o, $all_hds, $fstab, $manual_fstab, $partitions, $partitioning_flags, $skip_mtab);
+ my $display_box = ugtk3::gtkset_size_request(Gtk3::HBox->new(0,0), -1, 26);
+ $display_box->set_spacing(1);
- delete $solutions{diskdrake} if $b_nodiskdrake;
+ my $sep_count = @parts - 1;
+ #- ratio used to compute initial partition pixel width (each partition should be > min_width)
+ #- though, the pixel/sectors ratio cannot be the same for all the partitions
+ my $initial_ratio = $totalsectors ? ($width - @parts * $minwidth - $sep_count) / $totalsectors : 1;
- my @solutions = sort { $b->[0] <=> $a->[0] } values %solutions;
+ my $vbox = Gtk3::VBox->new;
- my @sol = grep { $_->[0] >= 0 } @solutions;
+ my $desc;
- log::l('' . "solutions found: " . join('', map { $_->[1] } @sol) .
- " (all solutions found: " . join('', map { $_->[1] } @solutions) . ")");
+ if ($resize) {
+ my %resizable_parts;
+ foreach my $entry (@$resize) {
+ # selected_for_resize may have been set on another disk, clear it
+ $entry->{selected_for_resize} = 0;
+ $resizable_parts{$entry->{device}} = $entry;
+ }
+ # find resizable parts on this disk
+ my @choices = grep { $resizable_parts{$_->{device}} } @parts;
+ my @sorted_resize = sort {
+ $a->{size} - $a->{req_size} <=> $b->{size} - $b->{req_size};
+ } @choices;
+ $sorted_resize[-1]{selected_for_resize} = 1;
+ }
+
+ foreach my $entry (@parts) {
+ my $part_info = Gtk3::Label->new($entry->{device_LABEL});
+ my @colorized_fs_types = qw(ext2 ext3 ext4 xfs swap vfat ntfs ntfs-3g);
+ my $part_widget = Gtk3::EventBox->new;
+ $entry->{width} = int($entry->{size} * $initial_ratio) + $minwidth;
+ if ($resize && $entry->{selected_for_resize}) {
+ my $ratio;
+ my $update_ratio = sub { $ratio = $entry->{width} / $entry->{size} };
+ $update_ratio->();
+
+ $part_widget->set_name("PART_vfat");
+ $part_info->set_size_request(ceil($ratio * $entry->{min_win}), 0);
+
+ my $mdv_widget = gtkadd(gtkset_name(Gtk3::EventBox->new, "PART_new"),
+ gtkset_size_request(gtknew("Image", file => "small-logo"),
+ $ratio * MB(600), 0));
+
+ my $hpane = Gtk3::HPaned->new;
+ $hpane->pack1($part_widget, 1, 0);
+ $hpane->pack2($mdv_widget, 1, 0);
+ $hpane->set_position(ceil($ratio * $entry->{req_size}));
+ ugtk3::gtkset_size_request($hpane, $entry->{width}, 0);
+ ugtk3::gtkpack__($display_box, $hpane);
+
+ my $add_part_size_info = sub {
+ my ($name, $label) = @_;
+ ugtk3::gtkpack__($desc,
+ gtkadd(gtkset_name(Gtk3::EventBox->new, $name),
+ Gtk3::Label->new(" " x 4)),
+ gtkset_size_request(gtkset_alignment($label, 0, 0.5),
+ 150, 20));
+ };
+ $desc = Gtk3::HBox->new(0,0);
+
+ my $win_size_label = Gtk3::Label->new;
+ $add_part_size_info->("PART_vfat", $win_size_label);
+
+ my $mdv_size_label = Gtk3::Label->new;
+ $add_part_size_info->("PART_new", $mdv_size_label);
+
+ my $update_size_labels = sub {
+ $win_size_label->set_label(" Windows (" . formatXiB($entry->{req_size}, 512) . ")");
+ $mdv_size_label->set_label(" Mageia (" . formatXiB($entry->{size} - $entry->{req_size}, 512) . ")");
+ 0;
+ };
+ my $update_req_size = sub {
+ $entry->{req_size} = int($hpane->get_position / $ratio);
+ $update_size_labels->();
+ };
+ my $button_activate = sub {
+ $button->activate;
+ 0;
+ };
+ $hpane->signal_connect('size-allocate' => sub {
+ my (undef, $alloc) = @_;
+ $entry->{width} = $alloc->{width};
+ $update_ratio->();
+ 0;
+ });
+ $update_size_labels->();
+ $hpane->signal_connect('motion-notify-event' => $update_req_size);
+ $hpane->signal_connect('move-handle' => $update_req_size);
+ $hpane->signal_connect('button-press-event' => $button_activate);
+ $vbox->signal_connect('button-press-event' => $button_activate);
+ $button->signal_connect('focus-in-event' => sub {
+ $hpane->grab_focus;
+ 0;
+ });
+ } else {
+ if ($fill_empty && isEmpty($entry)) {
+ $part_info = gtknew("Image", file => "small-logo");
+ $part_widget->set_name("PART_new");
+ } else {
+ $part_widget->set_name("PART_" . (isEmpty($entry) ? 'empty' :
+ $entry->{fs_type} && member($entry->{fs_type}, @colorized_fs_types) ? $entry->{fs_type} :
+ 'other'));
+ }
+ $part_widget->set_size_request($entry->{width}, 0);
+ ugtk3::gtkpack($display_box, $part_widget);
+ }
+ $part_widget->add($part_info);
+ }
+ unless ($resize || $fill_empty) {
+ my @types = (N_("Ext2/3/4"), N_("XFS"), N_("Swap"), N_("Windows"),
+ N_("Other"), N_("Empty"));
+ my %name2fs_type = ('Ext2/3/4' => 'ext3', 'XFS' => 'xfs', Swap => 'swap', Other => 'other', "Windows" => 'vfat', HFS => 'hfs');
+ $desc = ugtk3::gtkpack(Gtk3::HBox->new,
+ map {
+ my $t = $name2fs_type{$_};
+ my $ev = Gtk3::EventBox->new;
+ my $w = Gtk3::Label->new(translate($_));
+ $ev->add($w);
+ $ev->set_name('PART_' . ($t || 'empty'));
+ $ev;
+ } @types);
+ }
+
+ $vbox->add($display_box);
+ $vbox->add($desc) if $desc;
+
+ $vbox;
+}
+
+sub display_choices {
+ my ($o, $contentbox, $mainw, %solutions) = @_;
+ my @solutions = sort { $solutions{$b}[0] <=> $solutions{$a}[0] } keys %solutions;
+ my @sol = grep { $solutions{$_}[0] >= 0 } @solutions;
+
+ log::l('' . "solutions found: " . join(', ', map { $solutions{$_}[1] } @sol) .
+ " (all solutions found: " . join(', ', map { $solutions{$_}[1] } @solutions) . ")");
@solutions = @sol if @sol > 1;
log::l("solutions: ", int @solutions);
- @solutions or $o->ask_warn(N("Partitioning"), N("I can not find any room for installing")), die 'already displayed';
+ @solutions or $o->ask_warn(N("Partitioning"), N("I cannot find any room for installing")), die 'already displayed';
+
+ log::l('HERE: ', join(',', map { $solutions{$_}[1] } @solutions));
+
+ $contentbox->foreach(sub { $contentbox->remove($_[0]) });
+
+ $mainw->{kind}{display_box} ||= create_display_box($mainw->{kind});
+ ugtk3::gtkpack2__($contentbox, $mainw->{kind}{display_box});
+ ugtk3::gtkpack__($contentbox, gtknew('Label',
+ text => N("The DrakX Partitioning wizard found the following solutions:"),
+ alignment => [0, 0]));
+
+ my $choicesbox = gtknew('VBox');
+ my $oldbutton;
+ my $sep;
+ foreach my $s (@solutions) {
+ my $item;
+ my $vbox = gtknew('VBox');
+ my $button = gtknew('RadioButton', child => $vbox);
+ if ($s eq 'free_space') {
+ $item = create_display_box($mainw->{kind}, undef, 1);
+ } elsif ($s eq 'resize_fat') {
+ $item = create_display_box($mainw->{kind}, $solutions{$s}[3], undef, $button);
+ } elsif ($s eq 'existing_part') {
+ } elsif ($s eq 'wipe_drive') {
+ $item = Gtk3::EventBox->new;
+ my $b2 = gtknew("Image", file => "small-logo");
+ $item->add($b2);
+ $item->set_size_request(520,26);
+ $item->set_name("PART_new");
+ } elsif ($s eq 'diskdrake') {
+ } else {
+ log::l($s);
+ next;
+ }
+ ugtk3::gtkpack($vbox,
+ gtknew('Label',
+ text => $solutions{$s}[1],
+ alignment => [0, 0]));
+ ugtk3::gtkpack($vbox, $item) if defined($item);
+ $button->join_group($oldbutton) if $oldbutton;
+ $oldbutton = $button;
+ $button->signal_connect('toggled', sub { $mainw->{sol} = $solutions{$s} if $_[0]->get_active });
+ ugtk3::gtkpack2__($choicesbox, $button);
+ $sep = gtknew('HSeparator');
+ ugtk3::gtkpack2__($choicesbox, $sep);
+ }
+ $choicesbox->remove($sep);
+ ugtk3::gtkadd($contentbox, $choicesbox);
+ $mainw->{sol} = $solutions{@solutions[0]};
+}
+
+sub main {
+ my ($o, $all_hds, $fstab, $manual_fstab, $partitions, $partitioning_flags, $skip_mtab, $b_nodiskdrake) = @_;
- log::l('HERE: ', join(',', map { $_->[1] } @solutions));
my $sol;
- $o->ask_from_({
- title => N("Partitioning"),
- interactive_help_id => 'doPartitionDisks',
- },
- [
- { label => N("The DrakX Partitioning wizard found the following solutions:"), title => $::isInstall },
- { val => \$sol, list => \@solutions, format => sub { $_[0][1] }, type => 'list' },
- ]);
+
+ if ($o->isa('interactive::gtk')) {
+ require mygtk3;
+ mygtk3->import(qw(gtknew));
+ require ugtk3;
+ ugtk3->import(qw(:wrappers));
+
+ my $mainw = ugtk3->new(N("Partitioning"), %$o, if__($::main_window, transient => $::main_window));
+ $mainw->{box_allow_grow} = 1;
+
+ mygtk3::set_main_window_size($mainw->{rwindow});
+
+ require diskdrake::hd_gtk;
+ diskdrake::hd_gtk::load_theme();
+
+ my $mainbox = Gtk3::VBox->new;
+
+ my @kinds = map { diskdrake::hd_gtk::hd2kind($_) } sort { $a->{is_removable} <=> $b->{is_removable} } @{ $all_hds->{hds} };
+ #push @kinds, diskdrake::hd_gtk::raid2real_kind($_) foreach @{$all_hds->{raids}};
+ push @kinds, map { diskdrake::hd_gtk::lvm2kind($_) } @{$all_hds->{lvms}};
+
+ my $hdchoice = Gtk3::HBox->new;
+
+ my $hdchoicelabel = Gtk3::Label->new(N("Here is the content of your disk drive "));
+
+ my $combobox = Gtk3::ComboBoxText->new;
+ foreach (@kinds) {
+ my $info = $_->{val}{info} || $_->{val}{device};
+ $info =~ s|^(?:.*/)?(.{24}).*|$1|;
+ $info .= " (" . formatXiB($_->{val}{totalsectors}, 512) . ")" if $_->{val}{totalsectors};
+ $combobox->append_text($info);
+ }
+ $combobox->set_active(0);
+
+ ugtk3::gtkpack2__($hdchoice, $hdchoicelabel);
+ $hdchoice->add($combobox);
+
+ ugtk3::gtkpack2__($mainbox, $hdchoice);
+
+ my $contentbox = Gtk3::VBox->new(0, 12);
+
+ my $scroll = Gtk3::ScrolledWindow->new;
+ $scroll->set_policy('automatic', 'automatic'),
+ my $vp = Gtk3::Viewport->new;
+ $vp->set_shadow_type('none');
+ $vp->add($contentbox);
+ $scroll->add($vp);
+ $mainbox->add($scroll);
+
+ my $kind = $kinds[$combobox->get_active];
+ my %solutions = partitionWizardSolutions($o, $all_hds, $fstab, $manual_fstab, $partitions, $partitioning_flags, $skip_mtab, diskdrake::hd_gtk::kind2hd($kind));
+ delete $solutions{diskdrake} if $b_nodiskdrake;
+ $mainw->{kind} = $kind;
+ display_choices($o, $contentbox, $mainw, %solutions);
+
+ $combobox->signal_connect("changed", sub {
+ my $curr = $kinds[$combobox->get_active];
+ return if !$curr;
+ $mainw->{kind} = $curr;
+ my %solutions = partitionWizardSolutions($o, $all_hds, $fstab, $manual_fstab, $partitions, $partitioning_flags, $skip_mtab, diskdrake::hd_gtk::kind2hd($mainw->{kind}));
+ delete $solutions{diskdrake} if $b_nodiskdrake;
+ display_choices($o, $contentbox, $mainw, %solutions);
+ $mainw->{window}->show_all;
+ });
+
+ my @more_buttons = (
+ if_($::isInstall,
+ [ gtknew('Install_Button',
+ text => N("Help"),
+ clicked => sub { interactive::gtk::display_help($o, {interactive_help_id => 'doPartitionDisks' }) }),
+ undef, 1 ]),
+ );
+ my $buttons_pack = $mainw->create_okcancel(N("Next"), undef, '', @more_buttons);
+ $mainbox->pack_end($buttons_pack, 0, 0, 0);
+ ugtk3::gtkadd($mainw->{window}, $mainbox);
+ $mainw->{window}->show_all;
+
+ $mainw->main;
+
+ $sol=$mainw->{sol};
+ } else {
+ my %solutions = partitionWizardSolutions($o, $all_hds, $fstab, $manual_fstab, $partitions, $partitioning_flags, $skip_mtab);
+
+ delete $solutions{diskdrake} if $b_nodiskdrake;
+
+ my @solutions = sort { $b->[0] <=> $a->[0] } values %solutions;
+
+ my @sol = grep { $_->[0] >= 0 } @solutions;
+ log::l('' . "solutions found: " . join(', ', map { $_->[1] } @sol) .
+ " (all solutions found: " . join(', ', map { $_->[1] } @solutions) . ")");
+ @solutions = @sol if @sol > 1;
+ log::l("solutions: ", int @solutions);
+ @solutions or $o->ask_warn(N("Partitioning"), N("I cannot find any room for installing")), die 'already displayed';
+ log::l('HERE: ', join(',', map { $_->[1] } @solutions));
+ $o->ask_from_({
+ title => N("Partitioning"),
+ interactive_help_id => 'doPartitionDisks',
+ },
+ [
+ { label => N("The DrakX Partitioning wizard found the following solutions:"), title => $::isInstall },
+ { val => \$sol, list => \@solutions, format => sub { $_[0][1] }, type => 'list' },
+ ]);
+ }
log::l("partitionWizard calling solution $sol->[1]");
my $ok = eval { $sol->[2]->() };
if (my $err = $@) {
if ($err =~ /wizcancel/) {
$_->destroy foreach $::WizardTable->get_children;
} else {
+ log::l("Partitioning failed: $err");
$o->ask_warn('', N("Partitioning failed: %s", formatError($err)));
}
}
@@ -291,4 +648,8 @@ sub main {
1;
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/fs/proc_partitions.pm b/perl-install/fs/proc_partitions.pm
index 566f9ee70..ea714ca5b 100644
--- a/perl-install/fs/proc_partitions.pm
+++ b/perl-install/fs/proc_partitions.pm
@@ -1,4 +1,4 @@
-package fs::proc_partitions; # $Id$
+package fs::proc_partitions;
use common;
@@ -6,8 +6,12 @@ use common;
sub read_raw() {
my (undef, undef, @all) = cat_("/proc/partitions");
grep {
- $_->{size} != 1 && # skip main extended partition
- $_->{size} != 0x3fffffff; # skip cdroms (otherwise stops cd-audios)
+ $_->{size} != 1 && # skip main extended partition
+ $_->{size} != 0x3fffffff && # skip cdroms (otherwise stops cd-audios)
+ $_->{dev} !~ /mmcblk\d+[^p]/; # only keep partitions like mmcblk0p0
+ # not mmcblk0rpmb or mmcblk0boot0 as they
+ # are not in the partition table and
+ # things will break (mga#15759)
} map {
my %l;
@l{qw(major minor size dev)} = split;
@@ -16,7 +20,7 @@ sub read_raw() {
}
sub read {
- my ($hds) = @_;
+ my ($hds, $o_ignore_fstype) = @_;
my @all = read_raw();
my ($parts, $_disks) = partition { $_->{dev} =~ /\d$/ && $_->{dev} !~ /^(sr|scd)/ } @all;
@@ -36,7 +40,7 @@ sub read {
$part->{size} *= 2; # from KB to sectors
$part->{start} = $prev_part ? $prev_part->{start} + $prev_part->{size} : 0;
require fs::type;
- put_in_hash($part, fs::type::type_subpart_from_magic($part));
+ put_in_hash($part, fs::type::type_subpart_from_magic($part)) if !$o_ignore_fstype;
$prev_part = $part;
delete $part->{dev}; # cleanup
}
@@ -50,7 +54,7 @@ sub compare {
my @l1 = partition_table::get_normal_parts($hd);
- my @l2 = grep { $_->{rootDevice} eq $hd->{device} } &read([$hd]);
+ my @l2 = grep { $_->{rootDevice} eq $hd->{device} } &read([$hd], 1);
#- /proc/partitions includes partition with type "empty" and a non-null size
#- so add them for comparison
@@ -61,7 +65,7 @@ sub compare {
log::l("not using /proc/partitions because of the presence of solaris extended partition"); #- cf #33866
} else {
die sprintf(
- "/proc/partitions does not agree with drakx %d != %d:\n%s\n", $len1, $len2,
+ "/proc/partitions does not agree with drakx %d != %d for %s:\n%s\n", $len1, $len2, $hd->{device},
"/proc/partitions: " . join(", ", map { "$_->{device} ($_->{rootDevice})" } @l2));
}
}
diff --git a/perl-install/fs/remote.pm b/perl-install/fs/remote.pm
index ea22a04af..ea5944a25 100644
--- a/perl-install/fs/remote.pm
+++ b/perl-install/fs/remote.pm
@@ -1,4 +1,4 @@
-package fs::remote; # $Id$
+package fs::remote;
use strict;
use diagnostics;
diff --git a/perl-install/fs/remote/davfs.pm b/perl-install/fs/remote/davfs.pm
index 5df0fe771..890530cb9 100644
--- a/perl-install/fs/remote/davfs.pm
+++ b/perl-install/fs/remote/davfs.pm
@@ -1,4 +1,4 @@
-package fs::remote::davfs; # $Id: smb.pm 231184 2007-10-24 14:36:29Z pixel $
+package fs::remote::davfs;
use strict;
use diagnostics;
@@ -6,7 +6,7 @@ use diagnostics;
use common;
use fs::mount_options;
-sub secrets_file { "$::prefix/etc/davfs2/secrets" }
+sub secrets_file() { "$::prefix/etc/davfs2/secrets" }
sub fstab_entry_to_credentials {
my ($part) = @_;
@@ -14,7 +14,7 @@ sub fstab_entry_to_credentials {
my ($options, $unknown) = fs::mount_options::unpack($part);
my %h = map { $_ => delete $options->{"$_="} } qw(username password);
foreach (qw(username password)) {
- $h{$_} = 'nobody' if !$h{$_};
+ $h{$_} ||= 'nobody';
}
$h{mntpoint} = $part->{mntpoint} or return;
fs::mount_options::pack_($part, $options, $unknown), \%h;
@@ -25,7 +25,7 @@ sub save_credentials {
@$credentials or return;
output_with_perm(secrets_file(), 0600,
- map { to_double_quoted($_->{mntpoint}, $_->{username}, $_->{password}, $_->{comment}) . "\n" } @$credentials);
+ map { to_double_quoted($_->{mntpoint}, $_->{username}, $_->{password}) . "\n" } @$credentials);
}
sub mountpoint_credentials_save {
@@ -45,7 +45,7 @@ sub mountpoint_credentials_save {
}
-sub read_credentials_raw {
+sub read_credentials_raw() {
from_double_quoted(cat_(secrets_file()));
}
@@ -66,12 +66,12 @@ sub from_double_quoted {
my ($file) = @_;
my @l;
my @lines = split("\n",$file);
- foreach (@lines){
+ foreach (@lines) {
my ($mnt, $user, $pass, $comment);
if (/^\s*(#.*)?$/) {
$comment = $1;
} else {
- if(/^(?:"((?:\\.|[^"])*)"|((?:\\.|[^"\s#])+))\s+(?:"((?:\\.|[^"])*)"|((?:\\.|[^"\s#])+))(?:\s+(?:"((?:\\.|[^"])*)"|((?:\\.|[^"\s#])+)))?(?:\s*|\s*(#.*))?$/) {
+ if (/^(?:"((?:\\.|[^"])*)"|((?:\\.|[^"\s#])+))\s+(?:"((?:\\.|[^"])*)"|((?:\\.|[^"\s#])+))(?:\s+(?:"((?:\\.|[^"])*)"|((?:\\.|[^"\s#])+)))?(?:\s*|\s*(#.*))?$/) {
$mnt = "$1$2";
$mnt =~ s/\\(.)/$1/g;
$user = "$3$4";
@@ -83,7 +83,7 @@ sub from_double_quoted {
die "bad entry $_";
}
}
- push @l, {'mntpoint'=>$mnt, 'username'=>$user, 'password'=>$pass, 'comment'=>$comment};
+ push @l, { 'mntpoint' => $mnt, 'username' => $user, 'password' => $pass, 'comment' => $comment };
}
@l;
}
diff --git a/perl-install/fs/remote/nfs.pm b/perl-install/fs/remote/nfs.pm
index 816c152a5..f7a98cb69 100644
--- a/perl-install/fs/remote/nfs.pm
+++ b/perl-install/fs/remote/nfs.pm
@@ -1,10 +1,11 @@
-package fs::remote::nfs; # $Id$
+package fs::remote::nfs;
use strict;
use diagnostics;
use common;
use fs::remote;
+use network::tools;
use log;
our @ISA = 'fs::remote';
@@ -28,34 +29,36 @@ sub to_dev_raw {
sub check {
my ($_class, $in) = @_;
- $in->do_pkgs->ensure_binary_is_installed('nfs-utils-clients', 'showmount') or return;
+ $in->do_pkgs->ensure_files_are_installed([ [ qw(nfs-utils showmount) ] , [ qw(nmap nmap) ] ]);
require services;
- services::start_not_running_service('portmap');
+ services::start_not_running_service('rpcbind');
services::start('nfs-common'); #- TODO: once nfs-common is fixed, it could use start_not_running_service()
1;
}
sub find_servers {
- open(my $F2, "rpcinfo-flushed -b mountd 2 |");
- open(my $F3, "rpcinfo-flushed -b mountd 3 |");
-
- common::nonblock($F2);
- common::nonblock($F3);
- my $domain = chomp_(`domainname`);
- my ($s, %servers);
- my $quit;
- while (!$quit) {
- $quit = 1;
- sleep 1;
- while ($s = <$F2> || <$F3>) {
- $quit = 0;
- my ($ip, $name) = $s =~ /(\S+)\s+(\S+)/ or log::explanations("bad line in rpcinfo output"), next;
- $name =~ s/\.$//;
- $domain && $name =~ s/\Q.$domain\E$//
- || $name =~ s/^([^.]*)\.local$/$1/;
- $servers{$ip} ||= { ip => $ip, if_($name ne '(unknown)', name => $name) };
+ my @hosts;
+ my %servers;
+ my @routes = cat_("/proc/net/route");
+ @routes = reverse(@routes) if common::cmp_kernel_versions(c::kernel_version(), "2.6.39") >= 0;
+ foreach (@routes) {
+ if (/^(\S+)\s+([0-9A-F]+)\s+([0-9A-F]+)\s+[0-9A-F]+\s+\d+\s+\d+\s+(\d+)\s+([0-9A-F]+)/) {
+ my $net = network::tools::host_hex_to_dotted($2);
+ my $gateway = $3;
+ # get the netmask in binary and remove leading zeros
+ my $mask = unpack('B*', pack('h*', $5));
+ $mask =~ s/^0*//;
+ push @hosts, $net . "/" . length($mask) if $gateway eq '00000000' && $net ne '169.254.0.0';
}
+ }
+ # runs the nmap command on the local subnet
+ my $cmd = "/usr/bin/nmap -p 111 --open --system-dns -oG - " . (join ' ',@hosts);
+ open my $FH, "$cmd |" or die "Could not perform nmap scan - $!";
+ foreach (<$FH>) {
+ my ($ip, $name) = /^H\S+\s(\S+)\s+\((\S*)\).+Port/ or next;
+ $servers{$ip} ||= { ip => $ip, name => $name || $ip };
}
+ close $FH;
values %servers;
}
diff --git a/perl-install/fs/remote/smb.pm b/perl-install/fs/remote/smb.pm
index acdf0d7cf..d440fc174 100644
--- a/perl-install/fs/remote/smb.pm
+++ b/perl-install/fs/remote/smb.pm
@@ -1,4 +1,4 @@
-package fs::remote::smb; # $Id$
+package fs::remote::smb;
use strict;
use diagnostics;
diff --git a/perl-install/fs/type.pm b/perl-install/fs/type.pm
index 1933f33f3..141d5b5e2 100644
--- a/perl-install/fs/type.pm
+++ b/perl-install/fs/type.pm
@@ -1,4 +1,4 @@
-package fs::type; # $Id$
+package fs::type;
use diagnostics;
use strict;
@@ -6,11 +6,20 @@ use strict;
use common;
use devices;
+=head1 SYNOPSYS
+
+B<fs::type> enables to perform various tests on filesystem types.
+
+=head1 Functions
+
+=over
+
+=cut
our @ISA = qw(Exporter);
our @EXPORT = qw(
- isEmpty isExtended isTrueLocalFS isTrueFS isDos isSwap isOtherAvailableFS isRawLVM isRawRAID isRAID isLVM isMountableRW isNonMountable isPartOfLVM isPartOfRAID isPartOfLoopback isLoopback isMounted isBusy isSpecial isApple isAppleBootstrap isWholedisk isFat_or_NTFS isRecovery
- maybeFormatted set_isFormatted
+ isBlockCheckable isEmpty isExtended isFormatable isTrueLocalFS isTrueFS isDos isSwap isOtherAvailableFS isRawLVM isRawRAID isRawLUKS isRAID isLVM isLUKS isMountableRW isNonMountable isPartOfLVM isPartOfRAID isPartOfLoopback isLoopback isMounted isBusy isSpecial isApple isAppleBootstrap isBIOS_GRUB isESP isFat_or_NTFS isnormal_Fat_or_NTFS isRecovery
+ maybeFormatted set_isFormatted defaultFS
);
@@ -23,22 +32,19 @@ my (%type_name2pt_type, %type_name2fs_type, %fs_type2pt_type, %pt_type2fs_type,
0x83 => 'ext2', 'Linux native',
0x83 => 'ext3', 'Journalised FS: ext3',
0x83 => 'ext4', 'Journalised FS: ext4',
- 0x83 => 'reiserfs', 'Journalised FS: ReiserFS',
-if_(arch() =~ /ppc|i.86|ia64|x86_64/,
- 0x83 => 'xfs', 'Journalised FS: XFS',
+ 0x83 => 'btrfs', 'Journalised FS: Btrfs',
+(is_uefi() ?
+ (0xef => 'vfat', 'EFI System Partition') :
+ ('BIOS_GRUB' => 'BIOS_GRUB', 'BIOS boot or Empty partition')
),
-if_(arch() =~ /ppc|i.86|x86_64/,
+if_(arch() =~ /i.86|x86_64/,
+ 0x83 => 'xfs', 'Journalised FS: XFS',
0x83 => 'jfs', 'Journalised FS: JFS',
-),
-if_(arch() =~ /i.86|ia64|x86_64/,
0x0b => 'vfat', 'FAT32',
0x07 => 'ntfs-3g', 'NTFS-3G',
0x07 => 'ntfs', 'NTFS',
-),
-if_(arch() =~ /ppc/,
- 0x401 => '', 'Apple Bootstrap',
- 0x402 => 'hfs', 'Apple HFS Partition',
- 0x41 => '', 'PPC PReP Boot',
+ 0x07 => 'ntfs3', 'NTFS3',
+ 0x07 => 'exfat', 'exFAT',
),
],
@@ -56,20 +62,7 @@ if_(arch() =~ /ppc/,
],
other => [
- if_(arch() =~ /^ia64/,
- 0x100 => '', 'Various',
-), if_(arch() =~ /^ppc/,
- 0x401 => 'apple', 'Apple Partition',
-), if_(arch() =~ /^sparc/,
- 0x01 => 'ufs', 'SunOS boot',
- 0x02 => 'ufs', 'SunOS root',
- 0x03 => '', 'SunOS swap',
- 0x04 => 'ufs', 'SunOS usr',
- 0x05 => '', 'Whole disk',
- 0x06 => 'ufs', 'SunOS stand',
- 0x07 => 'ufs', 'SunOS var',
- 0x08 => 'ufs', 'SunOS home',
-), if_(arch() =~ /^i.86|x86_64/,
+ if_(arch() =~ /^i.86|x86_64/,
0x01 => 'vfat', 'FAT12',
0x02 => '', 'XENIX root',
0x03 => '', 'XENIX usr',
@@ -96,9 +89,7 @@ if_(arch() =~ /ppc/,
0x39 => '', 'Plan 9',
0x3c => '', 'PartitionMagic recovery',
0x40 => '', 'Venix 80286',
-if_(arch() !~ /ppc/,
0x41 => '', 'PPC PReP Boot',
-),
0x42 => '', 'SFS',
0x4d => '', 'QNX4.x',
0x4e => '', 'QNX4.x 2nd part',
@@ -119,9 +110,9 @@ if_(arch() !~ /ppc/,
0x75 => '', 'PC/IX',
0x80 => '', 'Old Minix',
0x81 => '', 'Minix / old Linux',
- if_(!$::isInstall,
- 0x83 => 'reiser4', 'Journalised FS: Reiser4',
- ),
+ 0x83 => 'f2fs', 'Journalised FS: F2FS',
+ 0x83 => 'reiserfs', 'Journalised FS: ReiserFS',
+ 0x83 => 'nilfs2', 'Journalised FS: NILFS2',
0x84 => '', 'OS/2 hidden C: drive',
0x86 => '', 'NTFS volume set (0x86)',
0x87 => '', 'NTFS volume set (0x87)',
@@ -153,7 +144,6 @@ if_(arch() !~ /ppc/,
0xe4 => '', 'SpeedStor (FAT-16)',
0xeb => 'befs', 'BeOS fs',
0xee => '', 'EFI GPT',
- 0xef => 'vfat', 'EFI (FAT-12/16/32)',
0xf0 => '', 'Linux/PA-RISC boot',
0xf4 => '', 'SpeedStor (large part.)',
0xf2 => '', 'DOS secondary',
@@ -183,12 +173,12 @@ if_(arch() !~ /ppc/,
sub type_names {
my ($expert, $o_hd) = @_;
my @l = @{$type_names{important}};
- push @l, @{$type_names{non_fs_type}};
+ push @l, grep { $_ ne 'Encrypted' } @{$type_names{non_fs_type}};
push @l, sort @{$type_names{other}} if $expert;
- if ($o_hd && !$o_hd->use_pt_type) {
- warn "$_ => $type_name2fs_type{$_}\n" foreach @l;
+ # not show partition types which have no associated filesystem for LVM LV:
+ if ($o_hd && isLVM($o_hd)) {
@l = grep { $type_name2fs_type{$_} } @l;
- @l = uniq_ { $type_name2fs_type{$_[0]} } @l;
+ @l = uniq_ { $type_name2fs_type{$_} } @l;
(@l, @{$type_names{non_fs_type}});
} else {
@l;
@@ -273,9 +263,10 @@ sub fs_type_from_magic {
sub call_blkid {
my ($part) = @_;
+ # IMPORTANT: Always use the -p argument with blkid. See r7324 commit msg
my %h = map {
if_(/(.*?)=(.*)/, $1 => $2);
- } run_program::get_stdout('blkid', '2>', '/dev/null', '-o', 'udev', '-p', devices::make($part->{device}));
+ } run_program::get_stdout_raw({ timeout => 30 }, 'blkid', '2>', '/dev/null', '-o', 'udev', '-p', devices::make($part->{device}));
\%h;
}
@@ -301,6 +292,7 @@ sub type_subpart_from_magic {
}
if ($p) {
+ $p->{fs_type} = '' if $part->{pt_type} eq 'BIOS_GRUB' && $p->{fs_type} ne 'iso9660';
$part->{fs_type_from_magic} = $p->{fs_type};
$p->{device_LABEL} = $ids->{ID_FS_LABEL} if $ids->{ID_FS_LABEL};
$p->{device_UUID} = $ids->{ID_FS_UUID} if $ids->{ID_FS_UUID};
@@ -309,38 +301,78 @@ sub type_subpart_from_magic {
$p;
}
-sub true_local_fs_types() { qw(ext3 ext2 ext4 reiserfs reiser4 xfs jfs) }
+# helpers
+sub defaultFS() { 'ext4' }
+sub true_local_fs_types() { qw(btrfs ext3 ext2 ext4 f2fs reiserfs xfs jfs) }
-sub isEmpty { !$_[0]{fs_type} && $_[0]{pt_type} == 0 }
-sub isEfi { arch() =~ /ia64/ && $_[0]{pt_type} == 0xef }
-sub isWholedisk { arch() =~ /^sparc/ && $_[0]{pt_type} == 5 }
-sub isExtended { arch() !~ /^sparc/ && ($_[0]{pt_type} == 5 || $_[0]{pt_type} == 0xf || $_[0]{pt_type} == 0x85) }
+sub isEmpty { !$_[0]{fs_type} && !$_[0]{pt_type} }
+sub isBIOS_GRUB { $_[0]{pt_type} eq 'BIOS_GRUB' }
+sub isESP { $_[0]{pt_type} == 0xef && member($_[0]{fs_type}, qw(fat32 vfat)) }
+sub isExtended { $_[0]{pt_type} == 5 || $_[0]{pt_type} == 0xf || $_[0]{pt_type} == 0x85 }
+sub isBlockCheckable { !member($_[0]{fs_type}, qw(btrfs hfs ntfs ntfs-3g reiserfs xfs)) }
sub isRawLVM { $_[0]{pt_type} == 0x8e || $_[0]{type_name} eq 'Linux Logical Volume Manager' }
sub isRawRAID { $_[0]{pt_type} == 0xfd || $_[0]{type_name} eq 'Linux RAID' }
sub isRawLUKS { $_[0]{type_name} eq 'Encrypted' }
sub isSwap { $_[0]{fs_type} eq 'swap' }
-sub isDos { arch() !~ /^sparc/ && ${{ 1 => 1, 4 => 1, 6 => 1 }}{$_[0]{pt_type}} }
-sub isFat_or_NTFS { member($_[0]{fs_type}, 'vfat', 'ntfs', 'ntfs-3g') }
+sub isDos { ${{ 1 => 1, 4 => 1, 6 => 1 }}{$_[0]{pt_type}} }
+sub isFat_or_NTFS { member($_[0]{fs_type}, qw(vfat ntfs ntfs3 ntfs-3g)) }
+sub isnormal_Fat_or_NTFS { grep { isFat_or_NTFS($_) && !isESP($_) && !isRecovery($_) } @_ }
sub isApple { $_[0]{pt_type} == 0x401 && defined $_[0]{isDriver} }
sub isAppleBootstrap { $_[0]{pt_type} == 0x401 && defined $_[0]{isBoot} }
sub isRecovery {
- isFat_or_NTFS($_[0]) && ($_[0]{type_name} eq 'Hidden' ||
+ isFat_or_NTFS($_[0]) && ($_[0]{type_name} =~ /^Hidden/ ||
+ $_[0]{pt_type} == 0x12 || # "Compaq diagnostics"
member($_[0]{device_LABEL} ,
- # Extracted from /usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi
- # Hopefuly we'll ask to hal/udev someday
- 'RECOVERY', 'PQSERVICE', 'HP_RECOVERY', 'Recovery Partition', 'DellUtility', 'DellRestore', 'IBM_SERVICE', 'SERVICEV001', 'SERVICEV002')
- )
+ # Extracted from /usr/lib/udev/rules.d/80-udisks2.rules
+ # Hopefuly we'll ask to udev/udisk2 someday
+ # generated by grep Recovery /usr/lib/udev/rules.d/80-udisks2.rules :
+ qw(Recovery RECOVERY Lenovo_Recovery HP_RECOVERY Recovery_Partition DellUtility DellRestore IBM_SERVICE SERVICEV001 SERVICEV002 SYSTEM_RESERVED System_Reserved WINRE_DRV DIAGS IntelRST),
+ # gathered over the years (Hald, mga#1371, mga#15999):
+ qw(PQSERVICE Packard_Bell Push_Button_Reset SYSTEM_DRV))
+ );
}
-sub isTrueFS { isTrueLocalFS($_[0]) || member($_[0]{fs_type}, qw(nfs)) }
+=item isTrueLocalFS($part)
+
+Like isTrueFS(), to make a distinction between ext3/reiserfs/... and NFS
+ => allow /home on NFS
+
+=cut
+
+sub isTrueFS { isTrueLocalFS($_[0]) || $_[0]{fs_type} eq 'nfs' }
+
+=item isTrueFS($part)
+
+Is is a general purpose file system with the right Unix properties
+
+=cut
+
sub isTrueLocalFS { member($_[0]{fs_type}, true_local_fs_types()) }
-sub isOtherAvailableFS { isEfi($_[0]) || isFat_or_NTFS($_[0]) || member($_[0]{fs_type}, 'ufs', 'hfs', 'iso9660') } #- other OS that linux can access its filesystem
+=item isOtherAvailableFS($part)
+
+Is it another OS that linux can access its filesystem
+
+=cut
+
+sub isOtherAvailableFS { isESP($_[0]) || isFat_or_NTFS($_[0]) || member($_[0]{fs_type}, 'ufs', 'hfs', 'iso9660', 'nilfs2', 'exfat') }
sub isMountableRW { (isTrueFS($_[0]) || isOtherAvailableFS($_[0])) && $_[0]{fs_type} ne 'ntfs' }
sub cannotBeMountable {
my ($part) = @_;
- isRawRAID($part) || isRawLUKS($part) || isRawLVM($part);
+ isRawRAID($part) || isRawLUKS($part) || isRawLVM($part) || isBIOS_GRUB($part);
+}
+
+=item isFormatable($part)
+
+Is not a special sg that cannot be mounted/formatted (parts of RAID/LVM, BIOS_GRUB). Basically the reverse of cannotBeMountable().
+
+=cut
+
+sub isFormatable {
+ my ($part) = @_;
+ !cannotBeMountable($part);
}
+
sub isNonMountable {
my ($part) = @_;
cannotBeMountable($part) || $part->{fs_type} eq 'ntfs' && !$part->{isFormatted} && $part->{notFormatted};
@@ -349,15 +381,21 @@ sub isNonMountable {
sub isPartOfLVM { defined $_[0]{lvm} }
sub isPartOfRAID { defined $_[0]{raid} }
sub isPartOfLoopback { defined $_[0]{loopback} }
-sub isRAID { $_[0]{device} =~ /^md/ }
+sub isRAID { $_[0]{device} =~ /^md/ && defined $_[0]{level} }
sub isUBD { $_[0]{device} =~ /^ubd/ } #- should be always true during an $::uml_install
sub isLVM { $_[0]{VG_name} || $_[0]{lv_name} }
+sub isLUKS { defined $_[0]{dmcrypt_name} }
sub isLoopback { defined $_[0]{loopback_file} }
sub isMounted { $_[0]{isMounted} }
sub isBusy { isMounted($_[0]) || isPartOfRAID($_[0]) || isPartOfLVM($_[0]) || $_[0]{dm_active} || isPartOfLoopback($_[0]) }
sub isSpecial { isRAID($_[0]) || isLVM($_[0]) || isLoopback($_[0]) || isUBD($_[0]) }
-#- not for partitions, but for hds:
+=item is_dmraid($hd)
+
+Check that a disk (not a partition) is in a fake/soft RAID
+
+=cut
+
sub is_dmraid { $_[0]{bus} =~ /^dmraid_/ }
sub can_be_this_fs_type {
@@ -382,24 +420,37 @@ sub set_isFormatted {
delete $part->{fs_type_from_magic};
}
-#- do this before modifying $part->{fs_type}
+=item check($fs_type, $_hd, $part)
+
+Called before before modifying $part->{fs_type}
+
+=cut
+
sub check {
my ($fs_type, $_hd, $part) = @_;
- $fs_type eq "jfs" && $part->{size} < MB(16) and die N("You can not use JFS for partitions smaller than 16MB");
- $fs_type eq "reiserfs" && $part->{size} < MB(32) and die N("You can not use ReiserFS for partitions smaller than 32MB");
+ $fs_type eq "jfs" && $part->{size} < MB(16) and die N("You cannot use JFS for partitions smaller than 16MB");
+ $fs_type eq "reiserfs" && $part->{size} < MB(32) and die N("You cannot use ReiserFS for partitions smaller than 32MB");
+ $fs_type eq "btrfs" && $part->{size} < MB(256) and die N("You cannot use btrfs for partitions smaller than 256MB");
}
sub guessed_by_mount() {
grep { $_ && !/nodev/ } chomp_(cat_('/etc/filesystems'));
}
-sub directories_needed_to_boot() {
+sub directories_needed_to_boot_not_ESP() {
qw(/ /usr /var /boot /tmp);
}
+sub directories_needed_to_boot() {
+ directories_needed_to_boot_not_ESP(), '/boot/EFI';
+}
sub carry_root_loopback {
my ($part) = @_;
any { $_->{mntpoint} eq '/' } @{$part->{loopback} || []};
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/fs/wild_device.pm b/perl-install/fs/wild_device.pm
index afc59b4ee..ff5a32253 100644
--- a/perl-install/fs/wild_device.pm
+++ b/perl-install/fs/wild_device.pm
@@ -1,8 +1,8 @@
-package fs::wild_device; # $Id$
+package fs::wild_device;
use diagnostics;
use strict;
-
+use devices;
use common;
@@ -11,13 +11,13 @@ sub analyze {
if ($dev =~ m!^/u?dev/(.*)!) {
'dev', $dev;
- } elsif ($dev !~ m!^/! && (-e "/dev/$dev" || -e "$::prefix/dev/$dev")) {
+ } elsif ($dev !~ m!^/! && (-e "/dev/$dev" || -e "/dev/$dev")) {
'dev', "/dev/$dev";
} elsif ($dev =~ /^LABEL=(.*)/) {
'label', $1;
} elsif ($dev =~ /^UUID=(.*)/) {
'uuid', $1;
- } elsif ($dev eq 'none' || $dev eq 'rootfs') {
+ } elsif (member($dev, qw(none rootfs))) {
'virtual';
} elsif ($dev =~ m!^(\S+):/(\w|$)!) {
'nfs';
@@ -40,11 +40,11 @@ sub to_subpart {
$part->{device_UUID} = $val;
} elsif ($kind eq 'dev') {
my %part = (faked_device => 0);
- if (my $rdev = (stat "$::prefix$dev")[6]) {
+ if (my $rdev = (stat "$dev")[6]) {
($part{major}, $part{minor}) = unmakedev($rdev);
}
- my $symlink = readlink("$::prefix$dev");
+ my $symlink = $dev !~ m!mapper/! ? readlink("$dev") : undef;
$dev =~ s!/u?dev/!!;
if ($symlink && $symlink !~ m!^/!) {
@@ -67,7 +67,7 @@ sub to_subpart {
return \%part;
}
} else {
- if ($dev =~ m!^/! && -f "$::prefix$dev") {
+ if ($dev =~ m!^/! && -f "$dev") {
#- it must be a loopback file or directory to bind
} else {
log::l("part_from_wild_device_name: unknown device $dev");
diff --git a/perl-install/fsedit.pm b/perl-install/fsedit.pm
index b3acb649a..d209b0196 100644
--- a/perl-install/fsedit.pm
+++ b/perl-install/fsedit.pm
@@ -1,8 +1,9 @@
-package fsedit; # $Id$
+package fsedit;
use diagnostics;
use strict;
use vars qw(%suggestions);
+use feature 'state';
#-######################################################################################
#- misc imports
@@ -22,32 +23,53 @@ use fs;
# min_hd_size: only suggest this partition if the hd size is bigger than that
%suggestions = (
N_("simple") => [
- { mntpoint => "/", size => MB(300), fs_type => 'ext3', ratio => 10, maxsize => MB(12300) },
- { mntpoint => "swap", size => MB(128), fs_type => 'swap', ratio => 1, maxsize => MB(4000) },
- { mntpoint => "/home", size => MB(300), fs_type => 'ext3', ratio => 8, min_hd_size => MB(8000) },
+ { mntpoint => "/", size => MB(300), fs_type => defaultFS(), ratio => 6, maxsize => MB(51500) },
+ { mntpoint => "swap", size => MB(256), fs_type => 'swap', ratio => 1, maxsize => MB(4096) },
+ { mntpoint => "/home", size => MB(300), fs_type => defaultFS(), ratio => 12, min_hd_size => MB(51200) },
], N_("with /usr") => [
- { mntpoint => "/", size => MB(250), fs_type => 'ext3', ratio => 1, maxsize => MB(8000) },
+ { mntpoint => "/", size => MB(250), fs_type => defaultFS(), ratio => 1, maxsize => MB(8000) },
{ mntpoint => "swap", size => MB(64), fs_type => 'swap', ratio => 1, maxsize => MB(4000) },
- { mntpoint => "/usr", size => MB(300), fs_type => 'ext3', ratio => 4, maxsize => MB(8000) },
- { mntpoint => "/home", size => MB(100), fs_type => 'ext3', ratio => 3, min_hd_size => MB(7000) },
+ { mntpoint => "/usr", size => MB(300), fs_type => defaultFS(), ratio => 4, maxsize => MB(8000) },
+ { mntpoint => "/home", size => MB(100), fs_type => defaultFS(), ratio => 3, min_hd_size => MB(10000) },
], N_("server") => [
- { mntpoint => "/", size => MB(150), fs_type => 'ext3', ratio => 1, maxsize => MB(8000) },
+ { mntpoint => "/", size => MB(150), fs_type => defaultFS(), ratio => 1, maxsize => MB(8000) },
{ mntpoint => "swap", size => MB(64), fs_type => 'swap', ratio => 2, maxsize => MB(4000) },
- { mntpoint => "/usr", size => MB(300), fs_type => 'ext3', ratio => 4, maxsize => MB(8000) },
- { mntpoint => "/var", size => MB(200), fs_type => 'ext3', ratio => 3 },
- { mntpoint => "/home", size => MB(150), fs_type => 'ext3', ratio => 3, min_hd_size => MB(7000) },
- { mntpoint => "/tmp", size => MB(150), fs_type => 'ext3', ratio => 2, maxsize => MB(4000) },
+ { mntpoint => "/usr", size => MB(300), fs_type => defaultFS(), ratio => 4, maxsize => MB(8000) },
+ { mntpoint => "/var", size => MB(200), fs_type => defaultFS(), ratio => 3 },
+ { mntpoint => "/home", size => MB(150), fs_type => defaultFS(), ratio => 3, min_hd_size => MB(10000) },
+ { mntpoint => "/tmp", size => MB(150), fs_type => defaultFS(), ratio => 2, maxsize => MB(4000) },
],
);
-foreach (values %suggestions) {
- if (arch() =~ /ia64/) {
- @$_ = ({ mntpoint => "/boot/efi", size => MB(50), pt_type => 0xef, ratio => 1, maxsize => MB(150) }, @$_);
+my %bck_suggestions = %suggestions;
+
+sub init_mntpnt_suggestions {
+ my ($all_hds, $o_target, $o_force) = @_;
+
+ my $device = $o_target ? $o_target->{device} : 'all';
+ state $last_device;
+ return if $device eq $last_device && !$o_force;
+ $last_device = $device;
+
+ #- If installing on a removable device, assume that the user wants that device to be self-bootable.
+ my $is_removable = $o_target && $o_target->{is_removable};
+ my @fstab = $is_removable ? partition_table::get_normal_parts($o_target) : fs::get::fstab($all_hds);
+
+ my $mntpoint;
+ # only suggests /boot/EFI if there's not already one:
+ require fs::any;
+ if (is_uefi()) {
+ if (!any { isESP($_) } @fstab) {
+ $mntpoint = { mntpoint => "/boot/EFI", size => MB(100), pt_type => 0xef, ratio => 1, maxsize => MB(300) };
+ }
+ }
+ foreach (keys %suggestions) {
+ $suggestions{$_} = [ if_($mntpoint, $mntpoint), @{$bck_suggestions{$_}} ];
}
}
my @suggestions_mntpoints = (
"/var/ftp", "/var/www", "/boot", '/usr/local', '/opt',
- arch() =~ /sparc/ ? "/mnt/sunos" : arch() =~ /ppc/ ? "/mnt/macos" : "/mnt/windows",
+ "/mnt/windows",
);
#-######################################################################################
@@ -60,11 +82,11 @@ sub recompute_loopbacks {
}
sub raids {
- my ($hds) = @_;
+ my ($hds, $raw_hds) = @_;
my @parts = fs::get::hds_fstab(@$hds);
- my @l = grep { isRawRAID($_) } @parts or return [];
+ my @l = grep { isRawRAID($_) } ( @parts, @$raw_hds ) or return [];
log::l("looking for raids in " . join(' ', map { $_->{device} } @l));
@@ -175,6 +197,20 @@ sub get_hds {
foreach my $hd (@drives) {
$hd->{readonly} = $flags->{readonly};
+ #- We only create RAID components in disk partitions, but users may have used
+ #- mdadm directly to create them on raw disk devices. Detect that now, before
+ #- looking for a partition table (which is likely to fail badly - mga#26707).
+ if (my $type = fs::type::type_subpart_from_magic($hd)) {
+ if (isRawRAID($type)) {
+ #- Add the necessary information to the raw device to allow the RAID
+ #- array to be properly characterised in diskdrake.
+ put_in_hash($hd, $type);
+ $hd->{size} = $hd->{totalsectors};
+ push @raw_hds, $hd;
+ next;
+ }
+ }
+
eval { partition_table::raw::test_for_bad_drives($hd) if !$flags->{no_bad_drives} };
if (my $err = $@) {
log::l("test_for_bad_drives returned $err");
@@ -191,7 +227,7 @@ sub get_hds {
if ($flags->{clearall} || member($hd->{device}, @{$flags->{clear} || []})) {
my $lvms = []; #- temporary one, will be re-created later in get_hds()
- partition_table_initialize($lvms, $hd, $o_in);
+ partition_table_clear_and_initialize($lvms, $hd, $o_in);
} else {
my $handle_die_and_cdie = sub {
if (my $type = fs::type::type_subpart_from_magic($hd)) {
@@ -226,7 +262,7 @@ sub get_hds {
die sprintf(q(bad dmraid (missing partition %s), you may try rebooting install with option "nodmraid"), $p->{device});
}
} else {
- fs::proc_partitions::compare($hd) if !detect_devices::is_xbox() && arch() ne 'ppc';
+ fs::proc_partitions::compare($hd) if !detect_devices::is_xbox();
}
}
} sub {
@@ -244,7 +280,7 @@ sub get_hds {
#- already handled in cdie handler above
} elsif ($handle_die_and_cdie->()) {
} elsif ($o_in && $o_in->ask_yesorno(N("Error"),
-N("I can not read the partition table of device %s, it's too corrupted for me :(
+N("I cannot read the partition table of device %s, it's too corrupted for me :(
I can try to go on, erasing over bad partitions (ALL DATA will be lost!).
The other solution is to not allow DrakX to modify the partition table.
(the error is %s)
@@ -266,6 +302,9 @@ Do you agree to lose all the partitions?
my @parts = partition_table::get_normal_parts($hd);
+ # fix installer failures due to udev's race when run too early:
+ run_program::run('udevadm', 'settle');
+
# checking the magic of the filesystem, do not rely on pt_type
foreach (@parts) {
if (my $type = fs::type::type_subpart_from_magic($_)) {
@@ -285,7 +324,7 @@ Do you agree to lose all the partitions?
}
#- detect raids before LVM allowing LVM on raid
- my $raids = raids(\@hds);
+ my $raids = raids(\@hds, \@raw_hds);
my $all_hds = { %{ fs::get::empty_all_hds() }, hds => \@hds, raw_hds => \@raw_hds, lvms => [], raids => $raids };
$all_hds->{lvms} = [ lvms($all_hds) ];
@@ -294,6 +333,8 @@ Do you agree to lose all the partitions?
# must be done after getting major/minor
$all_hds->{dmcrypts} = [ dmcrypts($all_hds) ];
+ # allow lvm on dmcrypt
+ $all_hds->{lvms} = [ lvms($all_hds) ];
$_->{faked_device} = 0 foreach fs::get::fstab($all_hds);
@@ -319,7 +360,7 @@ sub is_one_big_fat_or_NT {
sub computeSize {
- my ($part, $best, $all_hds, $suggestions) = @_;
+ my ($part, $best, $all_hds, $suggestions, $o_target) = @_;
my $max = $part->{maxsize} || $part->{size};
return min($max, $best->{size}) unless $best->{ratio};
@@ -334,7 +375,7 @@ sub computeSize {
1;
} else { 0 } } @$suggestions;
- my $free_space = $best->{hd} && $free_space{$best->{hd}} || sum(values %free_space);
+ my $free_space = $o_target && $free_space{$o_target->{device}} || $best->{hd} && $free_space{$best->{hd}} || sum(values %free_space);
my $cylinder_size_maxsize_adjusted;
my $tot_ratios = 0;
@@ -365,7 +406,7 @@ sub computeSize {
}
sub suggest_part {
- my ($part, $all_hds, $o_suggestions) = @_;
+ my ($part, $all_hds, $o_suggestions, $o_target) = @_;
my $suggestions = $o_suggestions || $suggestions{server} || $suggestions{simple};
#- suggestions now use {fs_type}, but still keep compatibility
@@ -375,10 +416,11 @@ sub suggest_part {
my $hd = fs::get::part2hd($part, $all_hds);
my $hd_size = $hd && $hd->{totalsectors}; # nb: no $hd if $part is /dev/mdX
- my $has_swap = any { isSwap($_) } fs::get::fstab($all_hds);
+ my @fstab = $hd->{is_removable} ? partition_table::get_normal_parts($hd) : fs::get::fstab($all_hds);
+ my $has_swap = any { isSwap($_) } @fstab;
my @local_suggestions =
- grep { !$_->{mntpoint} && !$_->{VG_name} || !fs::get::has_mntpoint($_->{mntpoint}, $all_hds) || isSwap($_) && !$has_swap }
+ grep { $::auto_install || !$_->{mntpoint} && !$_->{VG_name} || !fs::get::has_mntpoint($_->{mntpoint}, $all_hds) || isSwap($_) && !$has_swap }
grep { !$_->{min_hd_size} || !$hd_size || $_->{min_hd_size} <= $hd_size }
grep { !$_->{hd} || $_->{hd} eq $part->{rootDevice} }
@$suggestions;
@@ -402,7 +444,7 @@ sub suggest_part {
$part->{mntpoint} = $best->{mntpoint};
fs::type::set_type_subpart($part, $best) if !isTrueFS($best) || !isTrueFS($part);
- $part->{size} = computeSize($part, $best, $all_hds, \@local_suggestions);
+ $part->{size} = computeSize($part, $best, $all_hds, \@local_suggestions, $o_target);
foreach ('options', 'lv_name', 'encrypt_key', 'primaryOrExtended',
'device_LABEL', 'prefer_device_LABEL', 'device_UUID', 'prefer_device_UUID', 'prefer_device') {
$part->{$_} = $best->{$_} if $best->{$_};
@@ -426,29 +468,25 @@ sub check_mntpoint {
$mntpoint =~ m|[\x7f-\xff]| and cdie N("Mount points should contain only alphanumerical characters");
fs::get::mntpoint2part($mntpoint, [ grep { $_ ne $part } fs::get::really_all_fstab($all_hds) ]) and die N("There is already a partition with mount point %s\n", $mntpoint);
- if ($mntpoint eq "/" && isRAID($part) && !fs::get::has_mntpoint("/boot", $all_hds)) {
- my $md_part = fs::get::device2part($part->{raid}, $all_hds->{raids});
- cdie N("You've selected a software RAID partition as root (/).
+ if ($mntpoint eq "/" && (isLUKS($part) || isRawLUKS($part)) && !fs::get::has_mntpoint("/boot", $all_hds)) {
+ cdie N("You've selected an encrypted partition as root (/).
No bootloader is able to handle this without a /boot partition.
-Please be sure to add a /boot partition") if $md_part->{level} ne '1'; # lilo handles / on RAID1
+Please be sure to add a separate /boot partition");
}
- #- NB: if the LV doesn't exist, lv_nb_pvs returns 0
- die N("You can not use the LVM Logical Volume for mount point %s since it spans physical volumes", $mntpoint)
- if $mntpoint eq '/boot' && isLVM($part) && lvm::lv_nb_pvs($part) > 1;
- cdie N("You've selected the LVM Logical Volume as root (/).
-The bootloader is not able to handle this when the volume spans physical volumes.
-You should create a /boot partition first") if $mntpoint eq "/" && isLVM($part) && lvm::lv_nb_pvs($part) != 1 && !fs::get::has_mntpoint("/boot", $all_hds);
+ if ($mntpoint eq "/boot" && (isLUKS($part) || isRawLUKS($part))) {
+ die N("You cannot use an encrypted filesystem for mount point %s", "/boot");
+ }
cdie N("This directory should remain within the root filesystem")
if member($mntpoint, qw(/root));
die N("This directory should remain within the root filesystem")
if member($mntpoint, qw(/bin /dev /etc /lib /sbin /mnt /media));
- die N("You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount point\n")
+ die N("You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount point\n")
if !isTrueLocalFS($part) && $mntpoint eq '/';
- die N("You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount point\n")
- if !isTrueFS($part) && member($mntpoint, '/home', fs::type::directories_needed_to_boot());
- die N("You can not use an encrypted file system for mount point %s", $mntpoint)
+ die N("You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount point\n") . $mntpoint
+ if !isTrueFS($part) && member($mntpoint, '/home', fs::type::directories_needed_to_boot_not_ESP());
+ die N("You cannot use an encrypted filesystem for mount point %s", $mntpoint)
if $part->{options} =~ /encrypted/ && member($mntpoint, qw(/ /usr /var /boot));
local $part->{mntpoint} = $mntpoint;
@@ -473,15 +511,16 @@ sub add {
}
sub allocatePartitions {
- my ($all_hds, $to_add) = @_;
+ my ($all_hds, $to_add, $o_hd) = @_;
my @to_add = @$to_add;
foreach my $part_ (fs::get::holes($all_hds, 'non_readonly')) {
my ($start, $size, $dev) = @$part_{"start", "size", "rootDevice"};
+ next if $o_hd && (($o_hd->{device} || $o_hd->{VG_name}) ne $dev);
my ($part, $suggested);
while ($suggested = suggest_part($part = { start => $start, size => 0, maxsize => $size, rootDevice => $dev },
- $all_hds, \@to_add)) {
+ $all_hds, \@to_add, $o_hd)) {
my $hd = fs::get::part2hd($part, $all_hds);
add($hd, $part, $all_hds, { primaryOrExtended => $part->{primaryOrExtended} });
$size -= $part->{size} + $part->{start} - $start;
@@ -492,11 +531,18 @@ sub allocatePartitions {
}
sub auto_allocate {
- my ($all_hds, $o_suggestions) = @_;
+ my ($all_hds, $o_suggestions, $o_target) = @_;
my $before = listlength(fs::get::fstab($all_hds));
+ #- Make sure we don't finish with more than one /boot/EFI mount point
+ if (is_uefi()) {
+ delete $_->{mntpoint} foreach grep { $_->{mntpoint} eq '/boot/EFI' } fs::get::fstab($all_hds);
+ }
+
+ auto_allocate_bios_boot_parts($all_hds, $o_target) if !is_uefi();
+
my $suggestions = $o_suggestions || $suggestions{simple};
- allocatePartitions($all_hds, $suggestions);
+ allocatePartitions($all_hds, $suggestions, $o_target);
if ($o_suggestions) {
auto_allocate_raids($all_hds, $suggestions);
@@ -518,6 +564,28 @@ sub auto_allocate {
die N("Nothing to do");
}
}
+
+ #- Don't suggest mount points on other drives when installing on a removable disk
+ return if $o_target && $o_target->{is_removable};
+
+ my @fstab = fs::get::fstab($all_hds);
+ fs::mount_point::suggest_mount_points_always(\@fstab);
+}
+
+sub auto_allocate_bios_boot_parts {
+ my ($all_hds, $o_hd) = @_;
+ foreach my $hd (@{$all_hds->{hds}}) {
+ # skip if not the selected device
+ next if $o_hd && ($o_hd->{device} ne $hd->{device});
+ # skip non-GPT disks
+ next if ($hd->{pt_table_type} || partition_table::default_type($hd)) ne 'gpt';
+ # check if a BIOS boot partition already exists
+ my @parts = map { partition_table::get_normal_parts($_) } $hd;
+ next if any { isBIOS_GRUB($_) } @parts;
+ # try to allocate a BIOS boot partition
+ my $suggest = { mntpoint => "", size => MB(1), pt_type => 'BIOS_GRUB', ratio => 1, maxsize => MB(2) };
+ allocatePartitions($all_hds, [ $suggest ], $hd);
+ }
}
sub auto_allocate_raids {
@@ -586,14 +654,15 @@ sub change_type {
1;
}
+=item partition_table_clear_and_initialize($lvms, $hd, $o_in, $o_type, $b_warn) = @_;
+
+wrapper around partition_table::initialize() but which also create a singleton VG
+automatically (so that it's easier for the user)
+
+=cut
+
sub partition_table_clear_and_initialize {
my ($lvms, $hd, $o_in, $o_type, $b_warn) = @_;
- $hd->clear_existing;
- partition_table_initialize($lvms, $hd, $o_in, $o_type, $b_warn);
-}
-
-sub partition_table_initialize {
- my ($lvms, $hd, $o_in, $b_warn, $o_type) = @_;
partition_table::initialize($hd, $o_type);
if ($hd->isa('partition_table::lvm')) {
if ($b_warn && $o_in) {
diff --git a/perl-install/handle_configs.pm b/perl-install/handle_configs.pm
index 7d6e5c6e9..97011f1f6 100644
--- a/perl-install/handle_configs.pm
+++ b/perl-install/handle_configs.pm
@@ -1,6 +1,5 @@
package handle_configs;
-# $Id$
use diagnostics;
use strict;
diff --git a/perl-install/harddrake/TODO b/perl-install/harddrake/TODO
deleted file mode 100644
index 29c28cb77..000000000
--- a/perl-install/harddrake/TODO
+++ /dev/null
@@ -1,169 +0,0 @@
--*- outline -*-
-
-* drakxtools
-** drakxtools* need XF-{75,100}fonts that requires XFree86
-
-* Harddrake TODO:
-** ui
-*** more usb mice infos
-*** enable the user to force a module (isa, isapnp, ...)
-*** print "(not loaded)" if module isn't loaded
-*** add bus_position to make unique id in ui (check it does not confuse hw service)
-*** cdrom (must be done by diskdrake):
-**** ide-scsi / ide-cd switch (humm, the future (aka 2.6.x kernel) is ide-cd only)
-*** use fbgtk+2 when booting on fbcon for smoother GUI => interactive::fbgtk
-*** help:
-**** print fields in black and their description in blue as for information fields
-*** check there's at least one config option before showing the "condigure module" button
-*** s/module/driver/ ?
-** fixes
-*** configure at boot-time (hw hooks shared by both harddrake & drakx ?):
- all /etc/modules aliases
-**** usb-interfaces (or rewrite usb service in perl for speed)
-**** switch nvidia/nv in /etc/X11/XF86Config
- if [[ -e /lib/modules/`uname -r`/kernel/drivers/video/NVdriver ]]; then
- perl -pi -e 's!Driver "nv.*"!Driver "nvidia"!g;s!#HARDDRAKE (Load.*glx)!\1!g' /etc/X11/XF86Config-4
- else
- perl -pi -e 's!Driver "nv.*"!Driver "nv"!g;s!(Load.*glx)!#HARDDRAKE \1!g' /etc/X11/XF86Config-4
- fi
-*** non needed stuff to run X must be posponed after X11 startup
-**** eg: scanner/audio/printer/floppy/cdrom/tape/tv/webcam/joystick/ ...
-** packaging : separate version for harddrake & drakxtool
-** configurators
-*** new cd burner: offer to install cdrecord and one of its gui frontends
-*** new dvd driver : offer to install xine||mplayer
-*** draksound :
-**** add a dialog so that the user choose its wavetable.
-**** list all availables drivers, defaulting to first alternative, prepending old one with '*'
-**** add 'ALSA/OSS': tag to modules list
-** detect engine:
-*** detect isapnp devices
-*** set more field for fscking 0x0000:0x0000 usb controllers
-
-** move all drakx tools into just a small one-liner that uses real <tool>.pm
- so that harddrake and mcc reduces their memory usage pattern and
- be faster (the next fast step will be to use perl6/parrot)
-
- drawback : this would level down quite a lot the global mcc/harddrake robustness
-
-** check there're enough parameters in module config
-** for to send a message for unknown hardware to install@mandrakesoft.com
-
- Subject: [UNKNOW HARDWARE] or a new other ml
- -> do you konw how to configure it under linux ?
- -> description
-
-
-* ####################################################################
-* ####################################################################
-
-* / no hope / useless :
-** enable a string to be passed as detector; in that case, do ourself the =~
-** alter detect_devices in order to only probe one time
-** detect *ALL* mouses if more than one (mousedrake?)
-
-** deeper data structure in Mandrake 9.2 ?
-
- "Mass storage" => (Floppy,
- Disk,
- Cdrom,
- Tape)
-
- "Network" => (Ethernetcard,
- Modem,
- Isdn)
- "Multimedia" => (Videocard,
- Tvcard,
- Soundcard,
- Webcam)
- "System" => (Bridge,
- Cpu,
- Memory)
-
-
- "Publishing" => (Printer,
- Scanner)
-
- "Pointing" => (Mouse,
- Joystick)
-
- "Buses" => (Ideinterface,
- Scsiinterface,
- Usbinterface,
- );
-
- "Unknown/Others",
-
-* ####################################################################
-
-* Suggestions
-** various
-Subject: Re: [Cooker] Optional ALSA Support for SB Live!
-From: Fabrice FACORAT <f.faber@netcourrier.com>
-To: cooker@linux-mandrake.com
-In-Reply-To: <m2ofhvtpaq.fsf@vador.mandrakesoft.com>
-References: <20020311051222.47DC087CA5@yavin.mandrax.org>
- <m2ofhvtpaq.fsf@vador.mandrakesoft.com>
-Date: 11 Mar 2002 11:12:31 +0100
-Message-Id: <1015841551.3895.31.camel@bastard.localdomain>
-
-Le lun 11/03/2002 à 10:41, Thierry Vignaud a écrit :
-
-> > In Mandrake 8.1 rerunning Harddrake post-setup would switch over
-> > to ALSA (which supports MIDI synth), however in 8.2 the only way to
-> > get ALSA support is to manually edit the modules.conf file. This
-> > would be disasterous for someone who isn't familar with
-> > modules.conf, but had been instructed on the mandrake-expert/newbie
-> > lists (as many had been) to simply rerun Harddrake on the sound card
-> > to get ALSA (and hence MIDI synth support).
->
-> give me the result of lspcidrake -f -v so that i switch your card
-> from oss to alsa.
-
-no please.
-just one month ago you switch SBLive from Alsa to OSS ( cause drakX
-set it as OSS and harddrake as Alsa ).
-There were also a discussion concerning the fact that Alsa doesn't
-support emu-tools and so all available options.
-Last but not least, several peoples report pbs with Alsa ( is sound is
-too high you have disturbances ). So someone is going to ask you for
-OSS as it want to use some features os SBLive, etc ...
-
-To my mind the best way for this ( but too late for 8.2 ) will be to
-have a tool called soundrake. Thanks to this tools, you choose at the
-beginning if you want to use OSS or alsa and then try to correctly
-configure your sound card. This tool should be able to work in
-embended mo in harddrake or harddrake2 ( infos concerning this so long
-awaiting harddrake 2 ? ).
-
-In order to make this tool be a perfect tool, it should be able to
-advice user concerning the advantage and the disadvantage of each
-driver ( indeed alsa sometimes is better than OSS as it support full
-duplex and wave mixing on more sound cards ).
-It's also disturbing is harddrake set alsa by default and XrakX set
-OSS by default as sometimes by lanching harddrake ( just to see what
-happen ) you lose ( or seems to lose ) your sound card ( mute mixer )
-
-For example :
-+ launch harddrake
-+ use autodetection : yes/no
-+ if auto detects enable, it detects a SBLive.
-+ explanations text concerning the fact that :
- if I use OSS I will be able to use sounds effects, live drive and
-others things ( AC-3 passthrough ) thanks to the emu10k1-tools packages
-( available on CD sets and installable via Software Manager )
- if I use Alsa, I won't be able to use emu10k1-tools but at the
-contrary I will be able to use midi software as alsa module support midi
-+ ask user which one he wants to use : OSS / Alsa ?
-+ set the sound card drivers and modules.conf according to user wishes
-+ <mode= dream> if I select OSS, installed emu10k1-tools and provide a
-GUI to configure them </mode = dream>
-+ <mode= dream> if I select Alsa unmute at least PCM and Vol or display
-a warning saying that by default Alsa mute everything ( configure alsa
-service so that it save mixer settings )
-+ test the sound ( mandrake sound theme )
-+ do you hear something ?
-+ yes -> your sound card have been properly set.
-+ if no -> try the others drivers set or send lspcidrake -v to
-somebody@somewhere.org to check for support for your sound card
-+ Do you ahave another sound card ?
diff --git a/perl-install/harddrake/autoconf.pm b/perl-install/harddrake/autoconf.pm
index dadf133c7..fba5078cd 100644
--- a/perl-install/harddrake/autoconf.pm
+++ b/perl-install/harddrake/autoconf.pm
@@ -3,7 +3,7 @@ package harddrake::autoconf;
use common;
sub xconf {
- my ($modules_conf, $o, $o_skip_fb_setup) = @_;
+ my ($modules_conf, $o, $o_skip_fb_setup, $o_resolution_wanted) = @_;
log::l('automatic XFree configuration');
@@ -12,8 +12,10 @@ sub xconf {
my $do_pkgs = do_pkgs_standalone->new;
$o->{raw_X} = Xconfig::default::configure($do_pkgs);
+ my $old_x = { if_($o_resolution_wanted, resolution_wanted => $o_resolution_wanted) };
+
require Xconfig::main;
- Xconfig::main::configure_everything_auto_install($o->{raw_X}, $do_pkgs, {}, { allowFB => listlength(cat_("/proc/fb")), skip_fb_setup => $o_skip_fb_setup });
+ Xconfig::main::configure_everything_auto_install($o->{raw_X}, $do_pkgs, $old_x, { allowFB => listlength(cat_("/proc/fb")), skip_fb_setup => $o_skip_fb_setup });
#- always disable compositing desktop effects when configuring a new video card
require Xconfig::glx;
@@ -22,10 +24,43 @@ sub xconf {
modules::load_category($modules_conf, 'various/agpgart');
}
+sub setup_ethernet_device {
+ my ($in, $device) = @_;
+
+ require network::connection;
+ require network::connection::ethernet;
+ require network::connection::wireless;
+ my @connection_types = qw(network::connection::ethernet network::connection::wireless);
+ my @all_connections = map { $_->get_connections(automatic_only => 1) } @connection_types;
+ my $interface = network::connection::ethernet::device_to_interface($device)
+ or return;
+ my $connection = find { $_->get_interface eq $interface } @all_connections
+ or return;
+
+ require network::connection_manager;
+ my $net = {};
+ network::network::read_net_conf($net);
+ my $cmanager = network::connection_manager->new($in, $net);
+ $cmanager->set_connection($connection);
+
+ # this will installed required packages
+ $cmanager->setup_connection;
+}
+
sub network_conf {
- my ($obj) = @_;
- require network::network;
- network::network::easy_dhcp($obj->{net}, $obj->{modules_conf});
+ my ($modules_conf, $in, $added) = @_;
+ $modules_conf->remove_alias_regexp('^(wlan|eth)[0-9]*$');
+ modules::load_category($modules_conf, 'network/main|gigabit|usb|wireless|firewire|pcmcia');
+
+ setup_ethernet_device($in, $_) foreach @{$added || {}};
+
+ require network::connection::ethernet;
+ network::connection::ethernet::configure_eth_aliases($modules_conf);
+ require network::rfswitch;
+ network::rfswitch::configure();
+ require network::shorewall;
+ network::shorewall::update_interfaces_list();
+ $modules_conf->write;
}
sub mouse_conf {
@@ -44,6 +79,11 @@ sub pcmcia {
sub bluetooth {
my ($enable) = @_;
+ # do not disable bluetooth service if adapter disappears
+ # (for example if disabled by Fn keys)
+ # systemd will automatically disable the service if needed
+ return if !$enable;
+
#- FIXME: make sure these packages are installed when needed
# if ($enable) {
# require do_pkgs;
@@ -73,8 +113,6 @@ sub laptop {
# }
require services;
services::set_status("apmd", -e "/proc/apm");
- services::set_status("cpufreq", $on_laptop);
- services::set_status("apmd", $on_laptop);
services::set_status("laptop-mode", $on_laptop);
services::set_status("numlock", !$on_laptop);
}
diff --git a/perl-install/harddrake/check_snd.pl b/perl-install/harddrake/check_snd.pl
index dfa007b80..4721bed40 100755
--- a/perl-install/harddrake/check_snd.pl
+++ b/perl-install/harddrake/check_snd.pl
@@ -10,7 +10,7 @@ use list_modules;
my @listed_modules = @{$list_modules::l{multimedia}{sound}};
my @drivers = (keys %harddrake::sound::oss2alsa, keys %harddrake::sound::alsa2oss);
-my @alternatives = uniq map { @{$_} } values %harddrake::sound::oss2alsa, values %harddrake::sound::alsa2oss;
+my @alternatives = uniq map { @$_ } values %harddrake::sound::oss2alsa, values %harddrake::sound::alsa2oss;
# check harddrake::sound's data structures're coherent
print "unknown alternative drivers : [", join(', ', difference2(\@alternatives, \@drivers)), "]\n";
diff --git a/perl-install/harddrake/data.pm b/perl-install/harddrake/data.pm
index c9bea4e1e..8d4d4de21 100644
--- a/perl-install/harddrake/data.pm
+++ b/perl-install/harddrake/data.pm
@@ -12,7 +12,7 @@ our ($version, $sbindir, $bindir) = ("10", "/usr/sbin", "/usr/bin");
my @devices = (detect_devices::probeall(), detect_devices::getSCSI());
foreach my $dev (@devices) {
- # normalize device IDs for devices cthat came from mouse.pm:
+ # normalize device IDs for devices that came from mouse.pm:
next if !defined $dev->{Synaptics};
foreach my $field (qw(vendor id subvendor subid)) {
next if !defined $dev->{$field};
@@ -24,7 +24,7 @@ foreach my $dev (@devices) {
sub unknown() {
grep { $_->{media_type} !~ /BRIDGE|class\|Mouse|DISPLAY|Hub|MEMORY_RAM|MULTIMEDIA_(VIDEO|AUDIO|OTHER)|NETWORK|Printer|SERIAL_(USB|SMBUS)|STORAGE_(IDE|OTHER|RAID|SCSI)|SYSTEM_(OTHER|SDHCI)|tape|UPS/
&& !member($_->{driver}, qw(cpia_usb cyber2000fb forcedeth ibmcam megaraid mod_quickcam nvnet ohci1394 ov511 ov518_decomp scanner ultracam usbvideo usbvision))
- && $_->{driver} !~ /^ISDN|Mouse:USB|Removable:zip|class\|Mouse|sata|www.linmodems.org/
+ && $_->{driver} !~ /^ISDN|Mouse:USB|Removable:zip|class\|Mouse|sata|www.linmodems.org|kbd|mouse|sysrq|usbhid/
&& $_->{type} ne 'network'
&& $_->{description} !~ /Alcatel|ADSL Modem/;
} @devices;
@@ -62,7 +62,8 @@ our @tree =
string => N("SATA controllers"),
icon => "ide_hd.png",
configurator => "",
- detector => sub { f(grep { $_->{driver} !~ /^pata/ } detect_devices::probe_category('disk/sata')) },
+ detector => sub { f(grep { $_->{driver} !~ /^pata/ } detect_devices::probe_category('disk/sata')),
+ f(grep { $_->{description} =~ /AHCI/ } @devices) },
checked_on_boot => 1,
},
@@ -101,7 +102,7 @@ our @tree =
string => N("Firewire controllers"),
icon => "usb.png",
configurator => "",
- detector => sub { f(grep { $_->{driver} =~ /ohci1394/ } @devices) },
+ detector => sub { f(grep { $_->{driver} =~ /firewire_ohci|ohci1394/ } @devices) },
checked_on_boot => 1,
},
@@ -155,7 +156,7 @@ our @tree =
string => N("Bridges and system controllers"),
icon => "memory.png",
configurator => "",
- detector => sub { f(grep { $_->{media_type} =~ /BRIDGE|MEMORY_RAM|SYSTEM_(OTHER|SDHCI)|MEMORY_OTHER|SYSTEM_PIC/
+ detector => sub { f(grep { $_->{media_type} =~ /BRIDGE|MEMORY_RAM|SYSTEM_(OTHER|SDHCI)|MEMORY_OTHER|SYSTEM_PIC|COMMUNICATION_OTHER/
|| $_->{description} =~ /Parallel Port Adapter/;
} @devices) },
checked_on_boot => 0,
@@ -302,7 +303,7 @@ our @tree =
require list_modules;
my @modules = list_modules::category2modules('multimedia/sound');
f(grep { $_->{media_type} =~ /MULTIMEDIA_AUDIO|PROCESSOR_CO/ || member($_->{driver}, @modules)
- || $_->{description} =~ /PC Speaker/ } @devices);
+ || $_->{description} =~ /^\|?HDA |PC Speaker/ } @devices);
},
checked_on_boot => 1,
},
@@ -315,7 +316,7 @@ our @tree =
detector => sub {
require list_modules;
my @modules = (list_modules::category2modules('multimedia/webcam'), 'Removable:camera');
- f(grep { $_->{media_type} =~ /MULTIMEDIA_VIDEO|Video\|Video Control/ && $_->{bus} ne 'PCI'
+ f(grep { $_->{media_type} =~ /MULTIMEDIA_VIDEO|Video\|Video Control|Imaging|Camera/ && $_->{bus} ne 'PCI'
|| member($_->{driver}, @modules) || $_->{driver} =~ /^gpsca/ } @devices);
},
# managed by hotplug:
@@ -384,7 +385,7 @@ our @tree =
string => N("Bluetooth devices"),
icon => "hw_network.png",
configurator => "",
- detector => sub { f(detect_devices::probe_category('bus/bluetooth')) },
+ detector => sub { f(detect_devices::probe_category('bus/bluetooth')), f(grep { $_->{description} =~ /Bluetooth Dongle/ } @devices) },
checked_on_boot => 1,
},
@@ -399,7 +400,8 @@ our @tree =
f(grep {
$_->{media_type} && $_->{media_type} =~ /^NETWORK/
|| $_->{type} && $_->{type} eq 'network'
- || member($_->{driver}, @net_modules);
+ || member($_->{driver}, @net_modules)
+ || $_->{description} =~ /WLAN/;
} @devices);
},
checked_on_boot => 1,
@@ -410,7 +412,7 @@ our @tree =
string => N("Modem"),
icon => "modem.png",
configurator => "$sbindir/drakconnect",
- detector => sub { f(detect_devices::getModem($modules_conf)) },
+ detector => sub { f(detect_devices::getModem($modules_conf)), f(grep { $_->{description} =~ /SoftModem/ } @devices) },
# we do not check these b/c this need user interaction (auth, ...):
checked_on_boot => 0,
},
@@ -432,7 +434,7 @@ our @tree =
string => N("Memory"),
icon => "hw-memory.png",
configurator => "",
- detector => sub { grep { member($_->{name}, 'Cache', 'Memory Module') } detect_devices::dmidecode() },
+ detector => sub { grep { member($_->{name}, 'Cache', 'Memory Module') || $_->{name} eq 'Memory Device' && $_->{Size} ne 'No Module Installed' } detect_devices::dmidecode() },
checked_on_boot => 0,
},
@@ -475,9 +477,9 @@ our @tree =
icon => "hw-keyboard.png",
configurator => "$sbindir/keyboarddrake",
detector => sub {
- f(grep { $_->{description} =~ /Keyboard/i || $_->{media_type} =~ /Subclass\|Keyboard/i ||
+ f(grep { $_->{description} =~ /Keyboard/i || $_->{media_type} =~ /Keyboard/i ||
# USB devices are filtered out since we already catch them through probeall():
- $_->{bus} ne 'usb' && $_->{driver} =~ /^event|kbd/ && $_->{description} !~ /PC Speaker/;
+ $_->{bus} ne 'usb' && $_->{driver} =~ /^event|kbd|^usbhid/ && $_->{description} !~ /PC Speaker/;
} @devices);
},
checked_on_boot => 0,
@@ -498,7 +500,7 @@ our @tree =
icon => "hw_mouse.png",
configurator => "$sbindir/mousedrake",
detector => sub {
- f(grep { $_->{driver} =~ /^Mouse:|^Tablet:/ || $_->{media_type} =~ /class\|Mouse/ ||
+ f(grep { $_->{driver} =~ /^Mouse:|^Tablet:|^mouse/ || $_->{media_type} =~ /class\|Mouse/ ||
# USB devices are filtered out since we already catch them through probeall():
$_->{bus} ne 'usb' && $_->{Handlers}{mouse};
} @devices);
@@ -570,9 +572,7 @@ sub custom_id {
N("cpu # ") . $device->{processor} . ": " . $device->{'model name'} :
$device->{"Socket Designation"} ?
"$device->{name} (" . $device->{"Socket Designation"} . ")" :
- $device->{name} ? $device->{name} :
- (($device->{description}) ? $device->{description} :
- (($device->{Vendor}) ? $device->{Vendor} : $str)));
+ $device->{name} || $device->{description} || $device->{Vendor} || $str);
}
1;
diff --git a/perl-install/harddrake/sound.pm b/perl-install/harddrake/sound.pm
index f556d4603..cdf24c219 100644
--- a/perl-install/harddrake/sound.pm
+++ b/perl-install/harddrake/sound.pm
@@ -1,14 +1,4 @@
package harddrake::sound;
-# lists filled with Danny Tholen help, enhanced by Thierry Vignaud
-#
-# No ALSA for OSS's
-# o isa cards: msnd_pinnacle, pas2,
-# o pci cards: ad1889, sam9407
-# No OSS for ALSA's
-# o pci cards: snd_als4000, snd_es968, snd_hdsp
-# o isa cards: snd_azt2320, snd_cs4231, snd_cs4236,
-# snd_dt0197h, snd_korg1212, snd_rme32
-# o pcmcia cards: snd_vxp440 snd_vxpocket
# TODO:
# o ensure sound is not user (either dsp/midi/sequencer/mixer)
@@ -22,193 +12,18 @@ use list_modules;
use detect_devices;
use log;
-
-our %alsa2oss =
- (
- if_(arch() =~ /ppc/, "snd_powermac" => [ "dmasound_pmac" ]),
- if_(arch() =~ /sparc/,
- "snd_sun_amd7930" => [ "unknown" ],
- "snd_sun_cs4231" => [ "unknown" ],
- "snd_sun_dbri" => [ "unknown" ],
- ),
- "snd_ad1816a" => [ "ad1816" ], # isa
- "snd_ad1848" => [ "ad1848", "pss" ], # isa
- "snd_ad1889" => [ "ad1889" ],
- "snd_ali5451" => [ "trident" ],
- "snd_als100" => [ "sb" ], # isa
- "snd_als300" => [ "unknown" ],
- "snd_als4000" => [ "unknown" ],
- "snd_aoa" => [ "unknown" ],
- "snd_asihpi" => [ "unknown" ],
- "snd_atiixp" => [ "unknown" ],
- "snd_au8810" => [ "unknown" ],
- "snd_au8820" => [ "unknown" ],
- "snd_au8830" => [ "unknown" ],
- "snd_audigyls" => [ "unknown" ], # pci, renamed as snd_ca0106
- "snd_azt2320" => [ "unknown" ], # isa
- "snd_azt3328" => [ "unknown" ], # isa
- "snd_azx" => [ "unknown" ],
- "snd_bt87x" => [ "btaudio" ],
- "snd_ca0106" => [ "unknown" ], # pci
- "snd_cmi8330" => [ "sb" ], # isa
- "snd_cmi8788" => [ "unknown" ], # pci
- "snd_cmipci" => [ "cmpci" ],
- "snd_cs4231" => [ "unknown" ], # isa
- "snd_cs4232" => [ "cs4232" ], # isa
- "snd_cs4236" => [ "ad1848" ], # isa
- "snd_cs4281" => [ "cs4281" ],
- "snd_cs46xx" => [ "cs46xx" ],
- "snd_cs5530" => [ "unknown" ],
- "snd_cs5535audio" => [ "unknown" ],
- "snd_darla20" => [ "unknown" ],
- "snd_darla24" => [ "unknown" ],
- "snd_dt0197h" => [ "unknown" ], # isa
- "snd_dt019x" => [ "unknown" ], # isa
- "snd_echo3g" => [ "unknown" ],
- "snd_emu10k1" => [ "audigy", "emu10k1" ],
- "snd_emu10k1x" => [ "unknown" ],
- "snd_ens1370" => [ "es1370" ],
- "snd_ens1371" => [ "es1371" ],
- "snd_es1688" => [ "sb" ], # isa
- "snd_es18xx" => [ "sb" ], # isa
- "snd_es1938" => [ "esssolo1" ],
- "snd_es1968" => [ "maestro" ], # isa
- "snd_es968" => [ "sb" ],
- "snd_fm801" => [ "forte" ],
- "snd_gina20" => [ "unknown" ],
- "snd_gina24" => [ "unknown" ],
- "snd_gina3g" => [ "unknown" ],
- "snd_gusclassic" => [ "gus" ], # isa
- "snd_gusextreme" => [ "gus" ], # isa
- "snd_gusmax" => [ "gus" ], # isa
- "snd_hda_intel" => [ "unknown" ],
- "snd_hdspm" => [ "unknown" ],
- "snd_hdsp" => [ "unknown" ],
- "snd_ice1712" => [ "unknown" ], # isa
- "snd_ice1724" => [ "unknown" ], # isa
- "snd_indi" => [ "unknown" ], # pci
- "snd_indigo" => [ "unknown" ], # pci
- "snd_indigodj" => [ "unknown" ], # pci
- "snd_indigoio" => [ "unknown" ], # pci
- "snd_intel8x0" => [ "ali5455", "i810_audio", "nvaudio" ],
- "snd_interwave" => [ "gus" ], # isa
- "snd_interwave_stb" => [ "unknown" ], # isa
- "snd_korg1212" => [ "unknown" ], # isa
- "snd_layla20" => [ "unknown" ],
- "snd_layla24" => [ "unknown" ],
- "snd_layla3g" => [ "unknown" ],
- "snd_maestro3" => [ "maestro3" ],
- "snd_mia" => [ "unknown" ],
- "snd_mixart" => [ "unknown" ],
- "snd_mona" => [ "unknown" ],
- "snd_mpu401" => [ "mpu401" ],
- "snd_nm256" => [ "nm256_audio" ],
- "snd_opl3sa2" => [ "opl3", "opl3sa", "opl3sa2" ], # isa
- "snd_opti92x_ad1848" => [ "unknown" ], # isa
- "snd_opti92x_cs4231" => [ "unknown" ], # isa
- "snd_opti93x" => [ "mad16" ],
- "snd_pcxhr" => [ "unknown" ], # pci
- "snd_riptide" => [ "unknown" ],
- "snd_rme32" => [ "unknown" ], # isa
- "snd_rme96" => [ "rme96xx" ], # pci
- "snd_rme9652" => [ "rme96xx" ], # pci
- "snd_sb16" => ["sscape", "sb"],
- "snd_sb8" => [ "sb" ],
- "snd_sbawe" => [ "awe_wave" ],
- "snd_sgalaxy" => [ "sgalaxy" ], # isa
- "snd_sonicvibes" => [ "sonicvibes" ],
- "snd_sscape" => [ "sscape" ], # isa
- "snd_trident" => [ "trident" ],
- "snd_usb_audio" => [ "audio" ], # usb
- "snd_usb_caiaq" => [ "unknown" ],
- "snd_usb_usx2y" => [ "unknown" ],
- "snd_via82xx" => [ "via82cxxx_audio" ],
- "snd_vx222" => [ "unknown" ],
- "snd_vxp440" => [ "unknown" ], # pcmcia
- "snd_vxpocket" => [ "unknown" ], # pcmcia
- "snd_wavefront" => [ "wavefront" ], # isa
- "snd_ymfpci" => [ "ymfpci" ],
- );
-
-
-our %oss2alsa =
- (
- if_(arch() =~ /ppc/, "dmasound_pmac" => [ "snd_powermac" ]),
- "ad1816" => [ "snd_ad1816a" ],
- "ad1848" => [ "snd_ad1848", "snd_cs4236" ],
- "ad1889" => [ "snd_ad1889" ],
- "ali5455" => [ "snd_intel8x0" ],
- "audigy" => [ "snd_emu10k1" ],
- "audio" => [ "snd_usb_audio" ], # usb
- "awe_wave" => [ "snd_sbawe" ],
- "btaudio" => [ "snd_bt87x" ],
- "cmpci" => [ "snd_cmipci" ],
- "cs4232" => [ "snd_cs4232" ],
- "cs4281" => [ "snd_cs4281" ],
- "cs46xx" => [ "snd_cs46xx" ],
- "emu10k1" => [ "snd_emu10k1" ],
- "es1370" => [ "snd_ens1370" ],
- "es1371" => [ "snd_ens1371" ],
- "esssolo1" => [ "snd_es1938" ],
- "forte" => [ "snd_fm801" ],
- "gus" => ["snd_interwave", "snd_gusclassic", "snd_gusmax", "snd_gusextreme"],
- "i810_audio" => [ "snd_intel8x0" ],
- "ice1712" => [ "snd_ice1712" ],
- "mad16" => [ "snd_opti93x" ],
- "maestro" => [ "snd_es1968" ],
- "maestro3" => [ "snd_maestro3" ],
- "mpu401" => [ "snd_mpu401" ],
- "msnd_pinnacle" => [ "unknown" ],
- "nm256_audio" => [ "snd_nm256" ],
- "nvaudio" => [ "snd_intel8x0" ],
- "opl3" => [ "snd_opl3sa2" ],
- "opl3sa" => [ "snd_opl3sa2" ],
- "opl3sa2" => [ "snd_opl3sa2" ],
- "pas2" => [ "unknown" ],
- "pss" => [ "snd_ad1848" ],
- "rme96xx" => [ "snd_rme96", "snd_rme9652" ],
- "sam9407" => [ "unknown" ],
- "sb" => [ "snd_als100", "snd_cmi8330", "snd_es1688", "snd_es18xx", "snd_es968", "snd_sb8", "snd_sb16" ],
- "sgalaxy" => [ "snd_sgalaxy" ],
- "sonicvibes" => [ "snd_sonicvibes" ],
- "sscape" => [ "snd_sb16", "snd_sscape" ],
- "trident" => [ "snd_ali5451", "snd_trident" ],
- "via82cxxx_audio" => [ "snd_via82xx" ],
- "wavefront" => [ "snd_wavefront" ],
- "ymfpci" => [ "snd_ymfpci" ],
- );
-
-my @blacklist = qw(cs46xx cs4281);
-my $blacklisted = 0;
-
-sub is_user_switching_enabled() {
- my $output = run_program::get_stdout('polkit-action', '--action',
- 'org.freedesktop.hal.device-access.sound');
- my ($val) = $output =~ /default_inactive: (.*)/;
- to_bool($val eq 'no');
-}
-
-sub set_user_switching {
- my ($val) = @_;
- if ($val) {
- run_program::get_stdout('polkit-action', '--reset-defaults',
- 'org.freedesktop.hal.device-access.sound');
- } else {
- run_program::get_stdout('polkit-action', '--set-defaults-inactive',
- 'org.freedesktop.hal.device-access.sound', 'yes');
- }
-}
-
-
-sub is_pulseaudio_enabled() {
+sub is_pulseaudio_enabled {
+ my ($in) = @_;
my $soundprofile = common::read_alternative('soundprofile');
- $soundprofile =~ /pulse$/;
+ return $in->do_pkgs->is_installed('task-pulseaudio') && $soundprofile =~ /pulse$/;
}
sub set_pulseaudio {
my ($val) = @_;
my $alterative = '/etc/sound/profiles/' . ($val ? 'pulse' : 'alsa');
+ return if ! -d $alterative;
+
common::symlinkf_update_alternatives('soundprofile', $alterative);
# (cg) This config file will eventually be dropped, but it is still needed for now
@@ -226,159 +41,520 @@ sub set_pulseaudio {
}
-my $pa_defaultsconfig_file = "$::prefix/etc/pulse/default.pa";
+my $pa_startup_scriptfile = "$::prefix/etc/pulse/default.pa";
sub is_pulseaudio_glitchfree_enabled() {
- return -f $pa_defaultsconfig_file &&
- cat_($pa_defaultsconfig_file) !~ /^load-module\s+module-(udev|hal)-detect\s+tsched=0/m;
+ return -f $pa_startup_scriptfile &&
+ cat_($pa_startup_scriptfile) !~ /^load-module\s+module-(udev|hal)-detect\s+tsched=0/m;
}
sub set_pulseaudio_glitchfree {
my ($val) = @_;
+
+ return if ! -f $pa_startup_scriptfile;
+
substInFile {
if ($val) {
s/^(load-module\s+module-(udev|hal)-detect)\s+tsched=0/$1/;
} else {
s/^(load-module\s+module-(udev|hal)-detect).*/$1 tsched=0/;
}
- } $pa_defaultsconfig_file;
+ } $pa_startup_scriptfile;
}
-my $pa_client_conffile = "$::prefix/etc/pulse/client.conf";
+sub is_pipewire_wireplumber_enabled {
+ my ($in) = @_;
+ return $in->do_pkgs->is_installed('pipewire') && $in->do_pkgs->is_installed('wireplumber');
+}
-sub set_PA_autospan {
- my ($val) = @_;
- $val = 'autospawn = ' . bool2yesno($val) . "\n";
- my $done;
- substInFile {
- if (/^autospawn\s*=/) {
- $_ = $val;
- $done = 1;
+sub is_pipewire_media_session_enabled {
+ my ($in) = @_;
+ return $in->do_pkgs->is_installed('pipewire') && $in->do_pkgs->is_installed('pipewire-media-session');
+}
+
+sub rooted {
+ run_program::rooted($::prefix, @_);
+}
+
+sub unload { modules::unload(@_) if $::isStandalone }
+
+sub load {
+ my ($modules_conf, $name) = @_;
+ modules::load_and_configure($modules_conf, $name) if $::isStandalone;
+}
+
+sub _pidof {
+ my ($name) = @_;
+ rooted('/usr/bin/pidof', $name);
+}
+
+# return the pid of a running command
+sub _pidof_pid {
+ my ($name) = @_;
+ my ($pid) = chomp_(run_program::rooted_get_stdout($::prefix, '/usr/bin/pidof', $name));
+
+ return $pid;
+}
+
+# return the username of a running command
+sub _user_pid {
+ my ($name) = @_;
+ my ($pid) = _pidof_pid($name);
+ my $user;
+
+ if ($pid) {
+ ($user) = chomp_(run_program::rooted_get_stdout($::prefix, '/usr/bin/ps', '-o', 'uname=', '-p', $pid));
+ }
+
+ return $user;
+}
+
+# stop pulseaudio for the running user
+sub stop_pulseaudio {
+ my ($pulseaudio_user) = _user_pid('/usr/bin/pulseaudio');
+
+ if ($pulseaudio_user) {
+ if (-x $::prefix . '/usr/bin/pulseaudio') {
+ rooted('/usr/bin/su', '-l', $pulseaudio_user, '-c', '/usr/bin/pulseaudio --kill');
}
- } $pa_client_conffile;
- append_to_file($pa_client_conffile, $val) if !$done;
+ }
+
+ # try stopping again (in case the /usr/bin/pulseaudio process is still running, but the executable no longer available)
+ my ($pulseaudio_user) = _user_pid('/usr/bin/pulseaudio');
+ if ($pulseaudio_user) {
+ my ($pulseaudio_pid) = _pidof_pid('/usr/bin/pulseaudio');
+ if ($pulseaudio_pid) {
+ rooted('/usr/bin/su', '-l', $pulseaudio_user, '-c', '/usr/bin/kill -TERM ' . $pulseaudio_pid);
+ }
+ }
+ return $pulseaudio_user;
}
+# stop pipewire services for the running user
+sub stop_pipewire {
+ my ($pipewire_user) = _user_pid('/usr/bin/pipewire');
-my $pulse_config_file = "$::prefix/etc/pulse/daemon.conf";
+ if ($pipewire_user) {
+ rooted('/usr/bin/systemctl', '--machine=' . $pipewire_user . '@.host', '--user', 'stop', 'pipewire-pulse.service', 'pipewire-pulse.socket', 'pipewire.service', 'pipewire.socket');
+ }
-sub is_5_1_in_pulseaudio_enabled() {
- my ($val) = (cat_($pulse_config_file) =~ /^default-sample-channels\s*=\s*(\d+)/m); #^
- $val ||= 2;
- $val == 6;
+ return $pipewire_user;
}
-sub set_5_1_in_pulseaudio {
- my ($val) = @_;
- $val = 'default-sample-channels = ' . ($val ? 6 : 2) . "\n";
- my $done;
- substInFile {
- if (/^default-sample-channels\s*=/) {
- $_ = $val;
- $done = 1;
+# start pulseaudio for the specified user
+sub start_pulseaudio {
+ my ($pulseaudio_user) = @_;
+
+ if ($pulseaudio_user) {
+ rooted('/usr/bin/su', '-l', $pulseaudio_user, '-c', '/usr/bin/pulseaudio --start');
+ }
+}
+
+# start pipewire services for the specified user
+sub start_pipewire {
+ my ($pipewire_user) = @_;
+
+ if ($pipewire_user) {
+ rooted('/usr/bin/systemctl', '--machine=' . $pipewire_user . '@.host', '--user', 'start', 'pipewire.socket', 'pipewire.service', 'pipewire-pulse.socket', 'pipewire-pulse.service');
+ }
+}
+
+# stop wireplumber services for the running user
+sub stop_wireplumber {
+ my ($pipewire_user) = _user_pid('/usr/bin/wireplumber');
+
+ if ($pipewire_user) {
+ rooted('/usr/bin/systemctl', '--machine=' . $pipewire_user . '@.host', '--user', 'stop', 'wireplumber.service');
+ }
+
+ return $pipewire_user;
+}
+
+# start wireplumber
+sub start_wireplumber {
+ my ($pipewire_user) = @_;
+
+ if ($pipewire_user) {
+ rooted('/usr/bin/systemctl', '--machine=' . $pipewire_user . '@.host', '--user', 'start', 'wireplumber.service');
+ }
+}
+
+# stop pipewire-media-session services for the running user
+sub stop_pipewire_media_session {
+ my ($pipewire_user) = _user_pid('/usr/bin/pipewire-media-session');
+
+ if ($pipewire_user) {
+ rooted('/usr/bin/systemctl', '--machine=' . $pipewire_user . '@.host', '--user', 'stop', 'pipewire-media-session.service');
+ }
+
+ return $pipewire_user;
+}
+
+# start pipewire-media-session services for the specified user
+sub start_pipewire_media_session {
+ my ($pipewire_user) = @_;
+
+ if ($pipewire_user) {
+ rooted('/usr/bin/systemctl', '--machine=' . $pipewire_user . '@.host', '--user', 'start', 'pipewire-media-session.service');
+ }
+}
+
+sub configure_pipewire_wireplumber {
+ my ($in) = @_;
+ my ($pipewire_wp_user);
+
+ # preserve pulseaudio user
+ my ($pulseaudio_user) = _user_pid('/usr/bin/pulseaudio');
+
+ # stop pipewire and pipewire-media-session services (if any) before removing any packages
+ # and preserve pipewire-media-session user
+ $pipewire_wp_user = stop_pipewire_media_session();
+ stop_pipewire();
+
+ my $plasma_installed = $in->do_pkgs->is_installed('plasma-desktop');
+ my @pkgs = (
+ 'task-pipewire',
+ 'wireplumber',
+ );
+ if (!$in->do_pkgs->is_installed('pavucontrol-qt')) {
+ if ($plasma_installed) {
+ push(@pkgs, 'pavucontrol-qt');
+ }
+ else {
+ push(@pkgs, 'pavucontrol');
+ }
+ }
+
+
+ my $required_installed = $in->do_pkgs->ensure_are_installed(
+ \@pkgs
+ );
+
+ if (!$required_installed)
+ {
+ $in->ask_warn(N("Couldn't install the required packages"),
+ N("Please check the repositories are correctly configured")
+ );
+ return;
+ }
+
+ set_pulseaudio(0);
+
+ # first of all disabling what has to be disabled to avoid conflicts
+ if ($in->do_pkgs->is_installed('pipewire-media-session')) {
+ rooted('/usr/bin/systemctl', '--global', 'disable', 'pipewire-media-session.service');
+ }
+
+ if ($in->do_pkgs->is_installed('pipewire')) {
+ foreach ('pipewire.socket', 'pipewire.service') {
+ rooted('/usr/bin/systemctl', '--global', 'enable', $_);
}
- } $pulse_config_file;
- append_to_file($pulse_config_file, $val) if !$done;
+ }
+
+ if ($in->do_pkgs->is_installed('pipewire-pulseaudio')) {
+ foreach ('pipewire-pulse.socket', 'pipewire-pulse.service') {
+ rooted('/usr/bin/systemctl', '--global', 'enable', $_);
+ }
+ }
+
+ if ($in->do_pkgs->is_installed('wireplumber')) {
+ rooted('/usr/bin/systemctl', '--global', 'enable', 'wireplumber.service');
+ }
+
+
+ # stop pulseaudio process if still floating after the switch
+ stop_pulseaudio();
+
+ if ($pulseaudio_user) {
+ # restart pipewire and wireplumber with the same user as initial pulseaudio
+ start_pipewire($pulseaudio_user);
+ start_wireplumber($pulseaudio_user);
+ }
+ else {
+ if ($pipewire_wp_user) {
+ # restart pipewire and wireplumber with the same user as pipewire-media-session
+ start_pipewire($pipewire_wp_user);
+ start_wireplumber($pipewire_wp_user);
+ }
+ }
+
+ #Plasma tricks
+ if ($plasma_installed) {
+ $in->do_pkgs->ensure_is_installed('kpipewire');
+ }
}
+sub configure_pipewire_media_session {
+ my ($in) = @_;
+ my ($pipewire_ms_user);
+
+ # preserve pulseaudio user
+ my ($pulseaudio_user) = _user_pid('/usr/bin/pulseaudio');
-sub rooted { run_program::rooted($::prefix, @_) }
+ # stop pipewire and wireplumber services (if any) before removing any package
+ # and preserve wireplumber user
+ $pipewire_ms_user = stop_wireplumber();
+ stop_pipewire();
-sub unload { modules::unload(@_) if $::isStandalone || $blacklisted }
-sub load {
- my ($modules_conf, $name) = @_;
- modules::load_and_configure($modules_conf, $name) if $::isStandalone || $blacklisted;
+ my $plasma_installed = $in->do_pkgs->is_installed('plasma-desktop');
+ my @pkgs = (
+ 'task-pipewire',
+ 'pipewire-media-session',
+ );
+ if (!$in->do_pkgs->is_installed('pavucontrol-qt')) {
+ if ($plasma_installed) {
+ push(@pkgs, 'pavucontrol-qt');
+ }
+ else {
+ push(@pkgs, 'pavucontrol');
+ }
+ }
+
+ my $required_installed = $in->do_pkgs->ensure_are_installed(
+ \@pkgs
+ );
+
+ if (!$required_installed)
+ {
+ $in->ask_warn(N("Couldn't install the required packages"),
+ N("Please check the repositories are correctly configured")
+ );
+ return;
+ }
+
+ set_pulseaudio(0);
+
+ # first of all disabling what has to be disabled to avoid conflicts
+ if ($in->do_pkgs->is_installed('wireplumber')) {
+ rooted('/usr/bin/systemctl', '--global', 'disable', 'wireplumber.service');
+ }
+
+ if ($in->do_pkgs->is_installed('pipewire')) {
+ foreach ('pipewire.socket', 'pipewire.service') {
+ rooted('/usr/bin/systemctl', '--global', 'enable', $_);
+ }
+ }
+
+ if ($in->do_pkgs->is_installed('pipewire-pulseaudio')) {
+ foreach ('pipewire-pulse.socket', 'pipewire-pulse.service') {
+ rooted('/usr/bin/systemctl', '--global', 'enable', $_);
+ }
+ }
+
+ if ($in->do_pkgs->is_installed('pipewire-media-session')) {
+ rooted('/usr/bin/systemctl', '--global', 'enable', 'pipewire-media-session.service');
+ }
+
+ # stop pulseaudio process if still floating after the switch
+ stop_pulseaudio();
+
+ if ($pulseaudio_user) {
+ # restart pipewire and wireplumber with the same user as initial pulseaudio
+ start_pipewire($pulseaudio_user);
+ start_pipewire_media_session($pulseaudio_user);
+ }
+ else {
+ if ($pipewire_ms_user) {
+ # restart pipewire and wireplumber with the same user as pipewire-media-session
+ start_pipewire($pipewire_ms_user);
+ start_pipewire_media_session($pipewire_ms_user);
+ }
+ }
+
+ #Plasma tricks
+ if ($plasma_installed) {
+ $in->do_pkgs->ensure_is_installed('kpipewire');
+ }
}
-sub get_alternative {
- my ($driver) = @_;
- my $list = $alsa2oss{$driver} || $oss2alsa{$driver};
- $list ? @$list : "unknown";
+sub disable_all_pipewire {
+ my ($in) = @_;
+
+ if ($in->do_pkgs->is_installed('wireplumber')) {
+ rooted('/usr/bin/systemctl', '--global', 'disable', 'wireplumber.service');
+ }
+
+ if ($in->do_pkgs->is_installed('pipewire-media-session')) {
+ rooted('/usr/bin/systemctl', '--global', 'disable', 'pipewire-media-session.service');
+ }
+
+ if ($in->do_pkgs->is_installed('pipewire-pulseaudio')) {
+ foreach ('pipewire-pulse.socket', 'pipewire-pulse.service') {
+ rooted('/usr/bin/systemctl', '--global', 'disable', $_);
+ }
+ }
+
+ if ($in->do_pkgs->is_installed('pipewire')) {
+ foreach ('pipewire.socket', 'pipewire.service') {
+ rooted('/usr/bin/systemctl', '--global', 'disable', $_);
+ }
+ }
}
-sub do_switch {
- my ($in, $modules_conf, $old_driver, $new_driver, $index) = @_;
- return if $old_driver eq $new_driver;
- my $_wait = $in->wait_message(N("Please wait"), N("Please Wait... Applying the configuration"));
- log::explanations("removing old $old_driver\n");
- if ($::isStandalone) {
- rooted("service sound stop") unless $blacklisted;
- rooted("service alsa stop") if $old_driver =~ /^snd_/ && !$blacklisted;
- unload($old_driver); # run_program("/sbin/modprobe -r $driver"); # just in case ...
- }
- $modules_conf->remove_module($old_driver);
- configure_one_sound_slot($modules_conf, $index, $new_driver);
- $modules_conf->write;
- if ($new_driver =~ /^snd_/) { # new driver is an alsa one
- $in->do_pkgs->ensure_binary_is_installed(qw(alsa-utils alsactl), 1);
- $in->do_pkgs->ensure_binary_is_installed(qw(aoss aoss), 1);
- rooted("service alsa start") if $::isStandalone && !$blacklisted;
- rooted("/sbin/chkconfig --add alsa") if $::isStandalone;
- load($modules_conf, $new_driver) if $::isStandalone; # service alsa is buggy
- } else { rooted("/sbin/chkconfig --del alsa") }
- log::explanations("loading new $new_driver\n");
- rooted("/sbin/chkconfig --add sound"); # just in case ...
- rooted("service sound start") if $::isStandalone && !$blacklisted;
+sub configure_pulseaudio {
+ my ($in) = @_;
+
+ # preserve pipewire running user
+ my ($pipewire_user) = _user_pid('/usr/bin/pipewire');
+
+ # stop pipewire, wireplumber and pipewire-media-session services (if any) before removing any packages
+ my ($wireplumber_user) = stop_wireplumber();
+ my ($pipewire_media_session_user) = stop_pipewire_media_session();
+ my ($pipewire_user_preserve) = stop_pipewire();
+
+ # now packages
+ $in->do_pkgs->remove('pipewire-alsa');
+
+ my $plasma_installed = $in->do_pkgs->is_installed('plasma-desktop');
+ my @pkgs = 'task-pulseaudio';
+ if (!$in->do_pkgs->is_installed('pavucontrol-qt')) {
+ if ($plasma_installed) {
+ push(@pkgs, 'pavucontrol-qt');
+ }
+ else {
+ push(@pkgs, 'pavucontrol');
+ }
+ }
+
+ my $required_installed = $in->do_pkgs->ensure_are_installed(
+ \@pkgs
+ );
+
+ if (!$required_installed)
+ {
+ $in->ask_warn(N("Couldn't install the required packages"),
+ N("Please check the repositories are correctly configured")
+ );
+
+ # restore previous pipewire (if any) processes if something goes wrong with pulseaudio installation
+ if ($pipewire_user_preserve) {
+ start_pipewire($pipewire_user_preserve);
+ }
+
+ if ($wireplumber_user) {
+ start_wireplumber($wireplumber_user);
+ }
+
+ if ($pipewire_media_session_user) {
+ start_pipewire_media_session($pipewire_media_session_user);
+ }
+
+ return;
+ }
+
+
+ # disable all the pipewire stuff before managing packages
+ disable_all_pipewire($in);
+
+ # start pulseaudio with same pipewire preserved user
+ if ($pipewire_user) {
+ start_pulseaudio($pipewire_user);
+ }
}
-sub switch {
+sub config {
my ($in, $modules_conf, $device) = @_;
my $driver = $device->{current_driver} || $device->{driver};
- foreach (@blacklist) { $blacklisted = 1 if $driver eq $_ }
- my @alternative = $driver ne 'unknown' ? get_alternative($driver) : ();
- unless ($driver eq $device->{driver} || member($device->{driver}, @alternative)) {
- push @alternative, get_alternative($device->{driver}), $device->{driver};
- }
- if (@alternative) {
- my $new_driver = $driver;
+ my @alternative = $driver ne $device->{driver} ? $device->{driver} : ();
+ if ($driver eq "unknown") {
+ $in->ask_warn(N("No known driver"),
+ N("There's no known driver for your sound card (%s)",
+ $device->{description}));
+ } else {
push @alternative, $driver;
my %des = modules::category2modules_and_description('multimedia/sound');
- my $is_pulseaudio_enabled = is_pulseaudio_enabled();
- my $is_pulseaudio_glitchfree_enabled = is_pulseaudio_glitchfree_enabled();
- my $is_5_1_in_pulseaudio_enabled = is_5_1_in_pulseaudio_enabled();
- my $is_user_switching = is_user_switching_enabled();
-
- my $old_value = $is_pulseaudio_enabled;
+ my $is_pulseaudio_enabled_val = is_pulseaudio_enabled($in);
+ my $is_pulseaudio_glitchfree_enabled_val = is_pulseaudio_glitchfree_enabled();
+
+ my $audiosystem = 'None';
+ if ($is_pulseaudio_enabled_val && $is_pulseaudio_glitchfree_enabled_val) {
+ $audiosystem = 'PulseAudioGF';
+ } elsif ($is_pulseaudio_enabled_val) {
+ $audiosystem = 'PulseAudio';
+ } elsif (is_pipewire_wireplumber_enabled($in) || _pidof('/usr/bin/wireplumber')) {
+ $audiosystem = 'PipeWireWP';
+ } elsif (is_pipewire_media_session_enabled($in) || _pidof('/usr/bin/pipewire-media-session')) {
+ $audiosystem = 'PipeWireMS';
+ }
my $write_config = sub {
- set_pulseaudio($is_pulseaudio_enabled);
- set_pulseaudio_glitchfree($is_pulseaudio_glitchfree_enabled);
- set_PA_autospan($is_pulseaudio_enabled);
- set_5_1_in_pulseaudio($is_5_1_in_pulseaudio_enabled);
- set_user_switching($is_user_switching);
- if ($is_pulseaudio_enabled) {
- $in->do_pkgs->ensure_is_installed('alsa-plugins-pulseaudio', '/usr/'
- . (arch() =~ /x86_64/ ? 'lib64' : 'lib')
- . '/alsa-lib/libasound_module_pcm_pulse.so');
+ if ($audiosystem eq 'None') {
+ #### ALSA alone
+ disable_all_pipewire($in);
+ set_pulseaudio(0);
+ set_pulseaudio_glitchfree(0);
+ # TODO check if adding autospawn = no to /etc/pulse/client.conf is needed
+ } elsif ($audiosystem eq 'PulseAudio') {
+ #### PulseAudio
+ configure_pulseaudio($in);
+ set_pulseaudio(1);
+ set_pulseaudio_glitchfree(0);
+ my $lib = get_libdir();
+ $in->do_pkgs->ensure_is_installed($lib . 'alsa-plugins-pulseaudio',
+ '/usr/' . $lib . '/alsa-lib/libasound_module_pcm_pulse.so');
+ } elsif ($audiosystem eq 'PulseAudioGF') {
+ #### PulseAudio with Glitch-Free mode
+ configure_pulseaudio($in);
+ set_pulseaudio(1);
+ set_pulseaudio_glitchfree(1);
+ my $lib = get_libdir();
+ $in->do_pkgs->ensure_is_installed($lib . 'alsa-plugins-pulseaudio',
+ '/usr/' . $lib . '/alsa-lib/libasound_module_pcm_pulse.so');
+ } elsif ($audiosystem eq 'PipeWireWP') {
+ #### PipeWire with WirePlumber
+ configure_pipewire_wireplumber($in);
+ } elsif ($audiosystem eq 'PipeWireMS') {
+ #### PipeWire with PipeWire Media Session
+ configure_pipewire_media_session($in);
+ } else {
+ #### Unmanaged value
+ #TODO Error here
}
- if ($old_value ne $is_pulseaudio_enabled) {
- require any;
- any::ask_for_X_restart($in);
- }
+
+ $in->ask_warn('', N("You need to reboot for changes to take effect")) if $::isStandalone;
+
};
+ my $warn_both = ($in->do_pkgs->is_installed('pipewire') && $in->do_pkgs->is_installed('pulseaudio') && (-e $::prefix . '/etc/systemd/user/sockets.target.wants/pipewire.socket' || -e $::prefix . '/etc/systemd/user/sockets.target.wants/pipewire.service')) ?
+ N("Warning: both pulseaudio and pipewire are installed and can conflict each other. Please fix your config by applying a choice") :
+ "";
+
+ my $is_pipewire_available = $in->do_pkgs->is_available('task-pipewire');
+ my $warn_pipewire_unavailable = !$is_pipewire_available ?
+ N("Warning: task-pipewire is not available in any media sources, so only pulseaudio could be set up. Please fix your repo configuration.") :
+ "";
+
+ my @service_list = (
+ 'None',
+ 'PulseAudio',
+ 'PulseAudioGF',
+ );
+ if ($is_pipewire_available) {
+ push @service_list, 'PipeWireWP';
+ push @service_list, 'PipeWireMS';
+ }
my @common = (
- get_any_driver_entry($in, $modules_conf, $driver, $device),
- {
- text => N("Enable PulseAudio"),
- type => 'bool', val => \$is_pulseaudio_enabled,
- },
- {
- text => N("Enable 5.1 sound with Pulse Audio"),
- type => 'bool', val => \$is_5_1_in_pulseaudio_enabled,
- disabled => sub { !$is_pulseaudio_enabled },
- },
{
- text => N("Enable user switching for audio applications"),
- type => 'bool', val => \$is_user_switching,
+ label => N("Select the sound server"),
+ title => 1,
},
{
- text => N("Use Glitch-Free mode"),
- type => 'bool', val => \$is_pulseaudio_glitchfree_enabled,
- disabled => sub { !$is_pulseaudio_enabled },
+ val => \$audiosystem,
+ list => \@service_list,
+ format => sub {
+ my ($choice) = @_;
+ +{
+ 'None' => N("None"),
+ 'PulseAudio' => N("PulseAudio"),
+ 'PulseAudioGF' => N("PulseAudio with Glitch-Free mode"),
+ 'PipeWireWP' => N("PipeWire with WirePlumber"),
+ 'PipeWireMS' => N("PipeWire with PipeWire Media Session"),
+ }->{$choice};
+ },
+ type => 'list',
},
{
advanced => 1,
@@ -386,13 +562,21 @@ sub switch {
clicked => sub { run_program::run('reset_sound') }
},
{
- advanced => 1,
- val => N("Trouble shooting"), disabled => sub {},
+ val => N("Troubleshooting"), disabled => sub {},
clicked => sub { &trouble($in) }
},
);
- if ($new_driver eq 'unknown') {
+ my @messages = ("<b><i>" . $device->{description} . "</i></b>",
+ N("Your card uses the <b>\"%s\"</b> driver\n", $driver));
+
+ if ($warn_both) {
+ push @messages, ("<b>" . $warn_both . "</b>");
+ }
+ if (!$is_pipewire_available) {
+ push @messages, "<b>" . $warn_pipewire_unavailable . "</b>";
+ }
+ if ($driver eq 'unknown') {
if ($in->ask_from_({
title => N("No alternative driver"),
messages => N("There's no known OSS/ALSA alternative driver for your sound card (%s) which currently uses \"%s\"",
@@ -403,127 +587,68 @@ sub switch {
$write_config->();
}
} elsif ($in->ask_from_({ title => N("Sound configuration"),
- messages =>
- N("Here you can select an alternative driver (either OSS or ALSA) for your sound card (%s).",
- $device->{description}) .
- #-PO: here the first %s is either "OSS" or "ALSA",
- #-PO: the second %s is the name of the current driver
- #-PO: and the third %s is the name of the default driver
- N("\n\nYour card currently use the %s\"%s\" driver (default driver for your card is \"%s\")", ($driver =~ /^snd_/ ? "ALSA " : "OSS "), $driver, $device->{driver}),
- interactive_help => sub {
- N("OSS (Open Sound System) was the first sound API. It's an OS independent sound API (it's available on most UNIX(tm) systems) but it's a very basic and limited API.
-What's more, OSS drivers all reinvent the wheel.
-
-ALSA (Advanced Linux Sound Architecture) is a modularized architecture which
-supports quite a large range of ISA, USB and PCI cards.\n
-It also provides a much higher API than OSS.\n
-To use alsa, one can either use:
-- the old compatibility OSS api
-- the new ALSA api that provides many enhanced features but requires using the ALSA library.
-");
- },
+ interactive_help_id => 'soundConfig',
+ messages => \@messages
},
- [
- {
- label => N("Driver:"), val => \$new_driver, list => \@alternative, default => $new_driver, sort =>1,
- allow_empty_list => 1,
- format => sub { my ($drv) = @_;
- $drv eq 'unknown' ? $drv :
- sprintf(($des{$drv} ? "$des{$drv} (%s [%s])"
- : "%s [%s]"), $drv, $drv =~ /^snd_/ ? 'ALSA' : 'OSS');
- }
- },
- @common,
- ]))
+ \@common,
+ ))
{
$write_config->();
- return if $new_driver eq $device->{current_driver};
- log::explanations("switching audio driver from '" . $device->{current_driver} . "' to '$new_driver'\n");
- $in->ask_warn(N("Warning"), N("The old \"%s\" driver is blacklisted.\n
-It has been reported to oops the kernel on unloading.\n
-The new \"%s\" driver will only be used on next bootstrap.", $device->{current_driver}, $new_driver)) if $blacklisted;
- do_switch($in, $modules_conf, $device->{current_driver}, $new_driver, $device->{sound_slot_index});
- $device->{current_driver} = $new_driver;
}
- } elsif ($driver =~ /^Bad:/) {
- $driver =~ s/^Bad://;
- $in->ask_warn(N("No open source driver"),
- N("There's no free driver for your sound card (%s), but there's a proprietary driver at \"%s\".",
- $device->{description}, $driver));
- } elsif ($driver eq "unknown") {
- $in->ask_from(N("No known driver"),
- N("There's no known driver for your sound card (%s)",
- $device->{description}),
- [ get_any_driver_entry($in, $modules_conf, $driver, $device) ]);
}
- end:
}
-sub config {
- my ($in, $modules_conf, $device) = @_;
- switch($in, $modules_conf, $device);
-}
-
-
sub trouble {
my ($in) = @_;
- $in->ask_warn(N("Sound trouble shooting"),
+ $in->ask_warn(N("Sound troubleshooting"),
formatAlaTeX(
#-PO: keep the double empty lines between sections, this is formatted a la LaTeX
- N("The classic bug sound tester is to run the following commands:
+ N("Below are some basic tips to help debug audio problems, but for accurate and up-to-date tips and tricks, please see:
+https://wiki.mageia.org/en/Support:DebuggingSoundProblems
-- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card uses
-by default
-- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it
-currently uses
-- \"/sbin/lsmod\" will enable you to check if its module (driver) is
-loaded or not
+- General Recommendation: Enable PulseAudio. If you have opted to not to use PulseAudio, we would strongly advise you enable it. For the vast majority of desktop use cases, PulseAudio is the recommended and best supported option.
-- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will
-tell you if sound and alsa services are configured to be run on
-initlevel 3
-- \"aumix -q\" will tell you if the sound volume is muted or not
-- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.
-")));
-}
+- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and \"pavucontrol\" (generic) will launch graphical applications to allow you to view your sound devices and adjust volume levels
-sub get_any_driver_entry {
- my ($in, $modules_conf, $driver, $device) = @_;
- return () if $::isInstall;
- +{
- advanced => 1,
- val => N("Let me pick any driver"), disabled => sub {},
- clicked => sub {
- my $old_driver = $driver;
- if ($in->ask_from(N("Choosing an arbitrary driver"),
- formatAlaTeX(
- #-PO: keep the double empty lines between sections, this is formatted a la LaTeX
- N("If you really think that you know which driver is the right one for your card
-you can pick one in the above list.
-
-The current driver for your \"%s\" sound card is \"%s\" ", $device->{description}, $driver)),
- [
- { label => N("Driver:"), val => \$driver, list => [ category2modules("multimedia/sound") ], type => 'combo', default => $driver, sort =>1, separator => '|' },
- ]
- )) {
- do_switch($in, $modules_conf, $old_driver, $driver, $device->{sound_slot_index});
- goto end;
- }
- }
- };
+
+- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.
+
+
+- \"pactl stat\" will check that you can connect to the PulseAudio daemon correctly.
+
+
+- \"pactl list sink-inputs\" will tell you which programs are currently playing sound via PulseAudio.
+
+
+- \"systemctl status osspd.service\" will tell you the current state of the OSS Proxy Daemon. This is used to enable sound from legacy applications which use the OSS sound API. You should install the \"ossp\" package if you need this functionality.
+
+
+- \"pacmd ls\" will give you a LOT of debug information about the current state of your audio.
+
+
+- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver your card uses by default.
+
+
+- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound related kernel modules (drivers) are loaded.
+
+
+- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA mixer controls for first sound card
+
+
+- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are currently using the sound card directly (normally this should only show PulseAudio)
+")));
}
sub configure_one_sound_slot {
my ($modules_conf, $index, $driver) = @_;
$modules_conf->set_sound_slot("sound-slot-$index", $driver);
$modules_conf->set_options($driver, "xbox=1") if $driver eq "snd_intel8x0" && detect_devices::is_xbox();
- $modules_conf->set_options('snd-ac97-codec', "power_save=1") if $driver =~ /^snd/ && detect_devices::isLaptop()
- && arch() !~ /mips/;
+ $modules_conf->set_options('snd-ac97-codec', "power_save=1") if $driver =~ /^snd/ && detect_devices::isLaptop();
}
sub configure_sound_slots {
@@ -531,7 +656,7 @@ sub configure_sound_slots {
my $altered = 0;
each_index {
my $default_driver = $modules_conf->get_alias("sound-slot-$::i");
- if (!member($default_driver, get_alternative($_->{driver}), $_->{driver})) {
+ if (!member($default_driver, $_->{driver})) {
$altered ||= $default_driver;
configure_one_sound_slot($modules_conf, $::i, $_->{driver});
}
diff --git a/perl-install/harddrake/v4l.pm b/perl-install/harddrake/v4l.pm
index 7711c250a..bd7c649bb 100644
--- a/perl-install/harddrake/v4l.pm
+++ b/perl-install/harddrake/v4l.pm
@@ -473,7 +473,7 @@ sub config {
if ($in->ask_from("BTTV configuration", N("For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-detect the rights parameters.
-If your card is misdetected, you can force the right tuner and card types here. Just select your tv card parameters if needed."),
+If your card is misdetected, you can force the right tuner and card types here. Just select your TV card parameters if needed."),
[
{ label => N("Card model:"), val => \$conf{card}, list => [ keys %cards_list ], default => -1, sort =>1, separator => '|' },
{ label => N("Tuner type:"), val => \$conf{tuner}, list => [keys %tuners_lst], format => sub { $tuners_lst{$_[0]} }, sort => 1, separator => '|' },
@@ -483,7 +483,7 @@ If your card is misdetected, you can force the right tuner and card types here.
$conf{card} = $cards_list{$conf{card}};
if (my $options = join(' ', if_($driver eq 'bttv', 'radio=' . ($conf{radio} ? 1 : 0)), map { if_($conf{$_} ne -1, "$_=$conf{$_}") } qw(card pll tuner gbuffers))) {
log::l(qq([harddrake::v4l] set "$options" options for $driver));
-# log::explanations("modified file /etc/modules.conf ($options)") if $::isStandalone;
+# log::explanations("modified file /etc/modprobe.conf ($options)") if $::isStandalone;
$modules_conf->set_options($driver, $options);
}
return 1;
diff --git a/perl-install/install/Makefile b/perl-install/install/Makefile
index 8ba717d65..69b46e7be 100644
--- a/perl-install/install/Makefile
+++ b/perl-install/install/Makefile
@@ -15,15 +15,20 @@ all: xs
clean xs:
make -C .. $@
+dist: tar
+
tar:
rm -rf $(PRODUCT)*.tar* $(PRODUCT)-$(VERSION)
- mkdir -p $(PRODUCT)-$(VERSION)
- svn export -q -rBASE .. $(PRODUCT)-$(VERSION)/perl-install
- svn export -q -rBASE ../../tools $(PRODUCT)-$(VERSION)/tools
- svn export -q -rBASE ../../kernel $(PRODUCT)-$(VERSION)/kernel
- cp ../../Makefile.config $(PRODUCT)-$(VERSION)/
- tar cfY $(PRODUCT)-$(VERSION).tar.lzma $(PRODUCT)-$(VERSION)
+ mkdir -p $(PRODUCT)-$(VERSION)/perl-install/install/share/
+ (cd ../..; git archive HEAD kernel perl-install tools Makefile.config) | tar xC $(PRODUCT)-$(VERSION)
+ rm -fr $(PRODUCT)-$(VERSION)/perl-install/standalone/po
+ svn export svn://svn.mageia.org/svn/packages/cauldron/meta-task/current/SOURCES $(PRODUCT)-$(VERSION)/perl-install/install/share/meta-task
+ tar cfa $(PRODUCT)-$(VERSION).tar.xz $(PRODUCT)-$(VERSION)
rm -rf $(PRODUCT)-$(VERSION)
+ $(info $(PRODUCT)-$(VERSION).tar.xz is ready)
+
+tag:
+ git tag -a $(VERSION) -m "$(VERSION)"
install:
$(MAKE) full_stage2
@@ -32,39 +37,48 @@ install:
install_pms:
[ -d $(DEST) ] || ../../tools/mdkinst_stage2_tool --uncompress $(STAGE2_DEST)
- for i in `perl -ne 's/sub (\w+?)_?(\(\))? {.*/$$1/ and print' commands.pm` sync; do ln -sf commands $(DEST)/usr/bin/$$i; done
+# commands implemented in perl:
+ for i in `perl -ne 's/sub (\w+?)_?(\(\))? \{.*/$$1/ and print' commands.pm` sync; do if [ ! -x $(DEST)/usr/bin/$$i ]; then ln -sf commands $(DEST)/usr/bin/$$i; fi; done
+# install & clean perl modules:
install -d $(DESTREP4PMS)
cd .. ; for i in $(PMS); do \
dest=$(DESTREP4PMS)/`dirname $$i`; \
install -d $$dest; \
- perl -pe 's/#[-+].*//; $$_ = "\n" if (/^=(head|begin)/ .. /^=cut/) || /use (diagnostics|strict|vars|warnings)/' $$i > $(DESTREP4PMS)/$$i; \
+ perl -pe 's/#[-+].*//; $$_ = "\n" if (/^=(back|begin|head|item|over|pod)/ .. /^=cut/) || /use (diagnostics|strict|vars|warnings)/' $$i > $(DESTREP4PMS)/$$i; \
done
- cp ../share/*.rc share/*.rc $(DESTREP4PMS)
chmod a+x $(DESTREP4PMS)/install/install2
chmod a+x $(DESTREP4PMS)/install/commands
get_needed_files: xs
+# generate installer system:
+ mkdir -p $(DEST)/{usr/,}{,s}bin
+ mkdir -p $(DEST)/etc
+ for dir in /lib /lib64; do [[ -d $$dir ]] && mkdir -p $(DEST){,/usr}$$dir; done || :
+ /usr/lib/dracut/modules.d/30convertfs/convertfs.sh $(DEST)
REP4PMS=$(REP4PMS) ../../tools/install-xml-file-list share/list.xml $(DEST)
chmod u-s -R $(DEST) # for mount/umount
share/generate-xlocales $(DEST)
- mv -f $(DEST)/usr/$(LIB)/*.so* $(DEST)/$(LIB)
../../tools/simplify-drakx-modules $(DEST)/usr/*/*/*/utf8_heavy.pl
perl -I.. -Mlang -e 'symlink "UTF-8", "$(DEST)/usr/share/locale/$$_" foreach lang::list_langs()'
+# various needed soft links (eg for ndiswrapper):
perl -ane 'symlink "$$F[1]", "$(DEST)$$F[0]"' share/aliases
+# default shell:
ifeq (ia64,$(ARCH))
ln -sf bash $(DEST)/bin/sh
else
ln -sf ash $(DEST)/bin/sh
endif
+# X11 font caches:
mkfontdir $(DEST)/usr/share/fonts
fc-cache -f $(DEST)/usr/share/fonts
+# drakx translations:
$(MAKE) -C ../share/po install SUDO= LOCALEDIR=$(DEST)/usr/share/locale_special
$(MAKE) -C help/po install SUDO= LOCALEDIR=$(DEST)/usr/share/locale_special
$(MAKE) -C share/po install SUDO= LOCALEDIR=$(DEST)/usr/share/locale_special
@@ -75,6 +89,7 @@ endif
full_stage2:
$(MAKE) stage2
+ @if [ "$${DEBUG_INSTALL+xxx}" ]; then make dont_run_directly_stage2; else : ; fi
$(MAKE) compress
compress:
@@ -82,14 +97,14 @@ compress:
stage2:
rm -rf $(DEST)
- mkdir -p $(DEST)
+ mkdir -p $(DEST)/usr
$(MAKE) get_needed_files
$(MAKE) install_pms
dont_run_directly_stage2:
[ -d $(DEST) ] || ../../tools/mdkinst_stage2_tool --uncompress $(STAGE2_DEST)
- echo -e '#!/bin/sh\n\nexec /usr/bin/busybox sh' > $(DEST)/usr/bin/runinstall2.sh
- chmod a+x $(DEST)/usr/bin/runinstall2.sh
+ install -m 755 share/runinstall2.sh share/gdb-inst $(DEST)/usr/bin/
+ [ -n $$DEBUG_INSTALL_LANG ] && perl -pi -e '$$_ = "loadkeys '$$DEBUG_INSTALL_LANG'\n$$_" if / sh/' $(DEST)/usr/bin/runinstall2.sh
ln -sf runinstall2.sh $(DEST)/usr/bin/runinstall2
trace_stage2:
diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS
index 6817cab7d..9a6552f2a 100644
--- a/perl-install/install/NEWS
+++ b/perl-install/install/NEWS
@@ -1,3 +1,3164 @@
+- use task-plasma-minimal instead of task-plasma5-minimal
+- use mutter with X11 backend
+- Create /etc while creating installer system
+- Adapt to latest gdk-pixbuf changes and use glycin to load images
+- fix bugs in any::sessions() (mga#33738)
+
+Version 18.69 - 07 June 2025
+- Updated translations
+- bytes_heavy.pl was merged into bytes.pm
+- Agafari-16 console font support was dropped from kbd
+- fix glob for svg pixbuf loader
+- Don't use mdadm --chunk option when creating level 1 RAID (mga#33767)
+- Detect legacy (non-PCI) Intel SST audio DSP devices (mga#33145)
+- install rpm's /usr/lib/rpm/sysusers.sh to stage2 image by default
+- Drop i586 bits
+
+Version 18.68 - 28 April 2024
+- Adapt to rpm-4.19.1
+- Fix debug build
+- Updated translations
+
+Version 18.67 - 5 January 2024
+
+- Fix grub2-efi package name on aarch64 (mga#32686)
+- Updated translations
+
+Version 18.66 - 19 August 2023
+
+- Revert change of default DHCP client to dhcpcd (mga#30938)
+
+Version 18.65 - 11 July 2023
+
+- add ntfs3 to isFat_or_NTFS()
+- sync list of modules needing firmware with kernel-desktop-6.4.2-2.mga9
+- Sync list_modules with kernel 6.4
+
+Version 18.64 - 24 June 2023
+
+- Change default DHCP client to dhcpcd (mga#30938)
+- Updated translations
+
+Version 18.63 - 6 June 2023
+
+- rescue: mount efivars in chroot on UEFI systems (mga#31844)
+- Updated translations
+- Fix total_memory() by using sysinfo()
+- Add nvidia-newfeature.ko to nvidia modules supported list
+- drakclock: set to checked if ntpd is started.
+
+Version 18.62 - 28 April 2023
+
+- Update file list for changes in Adwaita icon locations
+
+Version 18.61 - 28 April 2023
+
+- Include ModemManager and NetworkManager in Networking services category
+- Updated translations
+
+Version 18.60 - 17 April 2023
+
+- New artwork for Mageia 9
+
+Version 18.59 - 14 April 2023
+
+- Don't force pavucontrol when there is already pavucontrol-qt in plasma-desktop enviroment
+- Updated translations
+
+Version 18.58 - 8 April 2023
+
+- Modify draksound GUI to add support for switching to pipewire
+
+Version 18.57 - 29 March 2023
+
+- Use OK/Cancel as button names when asking whether to retry
+ after failing to add on-line media
+- Recognize new kernel 6.0 drivers
+- Updated translations
+
+Version 18.56 - 9 February 2023
+
+- Recognize new kernel 5.19 drivers
+- Recognize new kernel 6.0 drivers
+- Recognize new kernel 6.1 drivers
+
+Version 18.54 - 6 January 2023
+
+- Apply workaround to fix display of release notes (mga#31294)
+
+Version 18.53 - 29 December 2022
+
+- Add openssl config file needed when running cryptsetup (mga#31315)
+- updated translations
+
+Version 18.52 - 3 December 2022
+
+- support https URLs for online media
+- allow user to specify the downloader used for online supplementary media
+- allow user to specify a specific mirror and downloader when applying updates
+ at the end of installation
+- updated translations
+
+Version 18.51 - 29 October 2022
+
+- Include rpm & rpmdb to allow database to be converted to sqlite (mga#31024)
+- Adapt to WebKit2 4.1
+- bootloader: ensure efivars are mounted before installing a UEFI bootloader (mga#31008)
+
+Version 18.50 - 17 September 2022
+
+- bootloader: don't remove existing failsafe/nonfb entries on upgrade
+ if we aren't replacing them with new ones
+- bootloader: add options to change the rEFInd background (mga#28073)
+- Update the list of drivers that need a nonfree firmware against kernel-5.18
+
+Version 18.49 - 8 June 2022
+
+- Adapt to perl 5.28
+- package installation:
+ o retry downloading packages in case of error (mga#28539)
+- Recognize new kernel 5.17 drivers
+- Recognize new kernel 5.18 drivers
+
+Version 18.48 - 17 January 2022
+
+- Enable to alter default downloader (mga#28539)
+ eg: " downloader=wget"
+
+Version 18.47 - 30 October 2021
+
+- Adapt to xserver-21.1
+- Debug mode:
+ o Adapt to the fact that gdb-11.1 uses guile-3
+ o Adapt to gdb-11.1 (missing scm files)
+ o Add a wrapper to easily debug Xorg
+
+Version 18.46 - 6 June 2021
+
+- Adjust to x11-data-xkbdata-2.32
+- Adapt to gdk_pixbuf 2.42.6
+
+Version 18.45 - 21 february 2021
+
+- Fix step-categories color to make it visible in the installer (mga#28375)
+- Adjust logo colours on left background
+- translation updates
+
+Version 18.44 - 14 February 2021
+
+- Set left background to release and improve colours
+
+Version 18.43 - 31 January 2021
+
+- updated translations
+- bootloader: don't remove os-prober before user makes choice (mga#28223)
+
+Version 18.42 - 26 January 2021
+
+- updated translations
+- prefer using UUID for mmcblk and nvme devices (mga#28111)
+
+Version 18.41 - 11 January 2021
+
+- Artwork for Mageia 8
+- Left background set to rc1
+
+Version 18.40 - 11 January 2021
+
+- updated translations
+- fix handling of TYPE"64bit" flags when reading rpmsrate
+ o ensure 32-bit packages are not pre-selected on 64-bit systems
+
+Version 18.39 - 04 January 2021
+
+- Update translations
+- disable timeout when installing updates (mga#27981)
+ o this can take a long time when there are many updates
+
+Version 18.38 - 29 December 2020
+
+- bootloader:
+ o fix false detection of GRUB2 when installed in ESP but not in /boot,
+ which caused boot method to default to non-graphical GRUB2 (mga#27816)
+ o add option to configure rEFInd to not use EFI NVRAM (mga#27838)
+- partitioning:
+ o erase iso9660 signature when clearing hybrid ISO disk (mga#27864)
+ o restrict line length when displaying base device info
+ to prevent window extending off screen (mga#27882)
+- support https in media URL (mga#27776)
+
+Version 18.37 - 5 December 2020
+
+- recognize more rtw88_*
+- recognize new kernel 5.10 drivers
+- sync list for modules needing firmware with kernel 5.9
+
+Version 18.35 - 20 November 2020
+
+- partitioning:
+ o do not mount ESP with umask=0 under UEFI (mga#27415)
+ o fix "partition table is too corrupt for me" error when a mdadm RAID array
+ has been created outside Mageia tools using raw devices (mga#26707)
+ o include tools for exfat
+
+Version 18.34 - 14 September 2020
+
+- services:
+ o include systemd sockets and timers
+- bootloader:
+ o keep timeout value when it's 0 (mga#27158)
+- recognize new kernel 5.9 drivers
+
+Version 18.33 - 19 August 2020
+
+- recognize new kernel 5.5 - 5.8 drivers
+- support loading auto_install file from https url
+- report.bug:
+ o log data about LVM
+ o log data about dmsetup
+
+Version 18.31 - 18 June 2020
+
+- restore flat list option for individual package selection
+- add option to install GRUB2 bootloader in \EFI\BOOT (mga#24282)
+- improved behaviour when installing on a removable device (mga#26761)
+ o only use swap partitions on that device
+ o default to installing bootloader on that device
+ (in \EFI\BOOT for UEFI bootloaders)
+ o default to not including other OSs in GRUB2 boot menu
+- fix free space calculation when auto-allocating partitions
+
+Version 18.30 - 9 June 2020
+
+- don't show hardware in summary screen when match_all_hardware flag is set
+
+Version 18.29 - 6 June 2020
+
+- partitioning: exclude ISO installer medium from available disks (mga#26714)
+
+Version 18.28 - 29 May 2020
+
+- bootloader: don't die in write_grub2 if grub.cfg doesn't exist (mga#26676)
+- translation updates
+
+Version 18.27.1 - 8 May 2020
+
+- bootloader:
+ fix typo x86 -> x64 for matching 64bit grub2-efi(x86-64)
+
+Version 18.27 - 1 May 2020
+
+- bootloader config:
+ o do not try to enable non existing acpi service
+ o rename /boot/efi as /boot/EFI if needed (mga#22395)
+- partitioning:
+ o it's now possible to set labels on exfat
+- select only once needed fs tools
+
+Version 18.26 - 20 March 2020
+
+- bootloader config: copy instead of renaming grub.cfg (mga#25542)
+- install dmsetup when encrypting "/" (thus workarounding unbootable minimal
+ system as dracut's crypt module depends on it)
+- partitioning:
+ o add minimal support for exFAT
+
+Version 18.25 - 18 March 2020
+
+- adjust debug build to current python
+- partitioning:
+ o enable to inspect NILFS2 formated partitions
+ o enable to install on F2FS formated partitions
+ o enable to resize NILFS2
+ o enable to resize XFS during install
+ o fix online resizing not always umounting fs after resizing
+- recognize new kernel 5.5 drivers
+
+Version 18.24 - 15 March 2020
+
+- fix tracking of installed packages (mga#26284)
+- include plugin for supporting Windows 10 NTFS "Compact OS"
+- drakx-in-chroot:
+ o skip disk ESP & BIOS boot partition checks
+- partitioning:
+ o make reformating nilfs2 fses to work
+- sync list for modules needing firmware with kernel 5.5
+- write ISO label and date to installer log
+
+Version 18.23 - 25 January 2020
+
+- adapt to libinput-1.15.0
+- recognize new kernel 5.3 drivers
+
+Version 18.22 - 13 September 2019
+
+- adapt to libinput 1.4
+- adjust to new rpm-mageia-setup
+- new Gtk3 needs GdkPixdata-2.0
+
+Version 18.21 - 23 June 2019
+
+- update left-background for Mageia 7 final
+
+Version 18.20 - 18 June 2019
+
+- translation updates
+- update list for modules needing firmware
+- recognize 8821ce (mga#24605)
+
+Version 18.19 - 27 May 2019
+
+- preselect Core 32bit media on 32-bit EFI platforms
+- include all of /usr/lib/udev/hwdb.d (mga#20327)
+
+Version 18.18 - 20 May 2019
+
+- translation updates
+
+Version 18.16 - 11 May 2019
+
+- Mageia 7 Artwork
+- add AMD PCIe MP2 I2C detection
+
+Version 18.15 - 3 May 2019
+
+- recognize new kernel 5.1 drivers
+
+Version 18.14 - 26 April 2019
+
+- include libinput model quirks rules (mga#20327)
+
+Version 18.13 - 21 April 2019
+
+- partitioning: speed up partition table read and write (mga#15752)
+- preserve existing locale settings on upgrade (mga#24671)
+- store country code in /etc/locale.conf (mga#24671)
+- don't automatically change time zone on upgrade (mga#24670)
+- partitioning: fix resize of encrypted partitions (mga#22032)
+- translation updates
+
+Version 18.12 - 16 March 2019
+
+- don't preselect Nonfree 32bit media (mga#23927)
+- fix paths to Adwaita icons (changed in adwaita-icon-theme)
+
+Version 18.11 - 16 March 2019
+
+- recognize new kernel 5.0 drivers
+- fix screen layout when the framebuffer is > 1024x768 (mga#23904)
+- translation updates
+
+Version 18.10 - 3 Feb 2019
+
+- skip setupSCSI step when run with --local_install (mga#24278)
+- don't install nonfree graphics drivers when not wanted (mga#24172)
+- don't select default bootloader when building Live ISOs
+- improve exitInstall message (mga#24046)
+- translation updates
+
+Version 18.9 - 17 Dec 2018
+
+- avoid resetting keyboard layout at end of formatting step (mga#23877)
+- bootloader:
+ o only prefer rEFInd if it is installed in the root fs (mga#23944)
+ o support 32-bit UEFI with 64-bit O/S
+- translation updates
+
+Version 18.8.1 - 1 Dec 2018
+
+- desktop kernels are now PAE, for PTI security fixes to work properly,
+ so if cpu is not supporting it, install the desktop586 kernel
+- dont select server kernel anymore on 32bit x86 with RAM > 3.8GB
+
+Version 18.8 - 28 Nov 2018
+
+- only install radeon-firmware if needed (mga#23911)
+- sync list of drivers needing a firmware with kernel 4.19
+
+Version 18.7 - 27 Nov 2018
+
+- bootloader: display "ESP" in summary under UEFI
+- check DM really is installed, not just present in /usr/share/X11.dm.d
+- packages selection:
+ o open-vm-tools is handled through rpmsrate
+
+Version 18.6 - 21 Nov 2018
+
+- fix DM preference when none is selected (don't default to XDM)
+- fix some DE name/capitalisation inconsistencies (mga#23634 + others)
+- remove version from Enlightenment DE name strings (mga#19341)
+
+Version 18.5 - 19 Nov 2018
+
+- bootloader: ignore GPT disk w/o BIOS boot part (mga#23844) in automatic mode
+- recognize new kernel 4.1[89] drivers
+
+Version 18.4 - 4 Nov 2018
+
+- adapt set_autologin for display-manager service, not prefdm (mga#22593)
+- drakx-in-chroot:
+ o allow monitor-edid to be suppressed in post-install scriptlets
+- translation updates
+
+Version 18.3 - 15 Oct 2018
+
+- drakboot: add support for the rEFInd boot manager (mga#15153)
+- include Encode::Unicode module (needed by bootloader::write_refind)
+
+Version 18.1 - 14 September 2018
+
+- drakx-in-chroot:
+ o do not run monitor-edid with drakx-in-chroot (timeout)
+- fix regression due to rpm-4.14.2 where drakx report pkgs failing to install
+ (mga#23531)
+
+Version 18.0 - 25 August 2018
+
+- mdadm raid:
+ o raid10 can be created with just 2 disks as a high-performance raid1
+ o raid10: use layout f2 with 2 disks for performance
+ o raid6 can be used with 3 disks and up
+- remove current media before adding online media for updates (mga#19742)
+- bootloader: include the "Mageia" entry in the gub2 Default choices (mga#23393)
+- include mode modules for Encode (mga#23481)
+
+Version 17.99 - 9 August 2018
+
+- adapt to libinput 1.12 RC1
+- adapt to perl 5.28
+- recognize smartpqi driver (mga#23305)
+
+Version 17.98 - 22 June 2018
+
+- recognize new kernel 4.1[5-7] drivers
+
+Version 17.97 - 5 June 2018
+
+- libinput-list-devices is no more
+
+Version 17.96 - 13 March 2018
+
+- support ChooseMedia in auto-install interactiveSteps
+- fix spurious error messages when installing network driver packages
+- translation updates
+
+Version 17.95 - 10 February 2018
+
+- include sensors in udev's HWDB
+- debug mode:
+ o include rpm & urpmi tools
+- recognize more new kernel-4.14 drivers
+
+Version 17.94 - 9 February 2018
+
+- add input rules from new systemd (mga#21886)
+- debug mode:
+ o adjust for python-3.6
+ o include chroot & partprobe too
+- fix including libinput tool
+- fix local install on systems without usb
+
+Version 17.93 - 19 January 2018
+
+- sync with kernel 4.14
+- include more input HWDB entries
+- diskdrake:
+ o ensure device major/minor numbers are reread after writing the
+ partition table (mga#22032)
+ o ensure soft links in /dev/disk/by-uuid are updated so that valid
+ UUIDs are embedded in the initrd (mga#22059)
+
+Version 17.92 - 4 January 2018
+
+- fix perl escaping causing commands to not get linked
+- fix some error handling in mdkinst_stage2_tool
+
+Version 17.91 - 4 October 2017
+
+- do not include libnss3 anymore as rpm now uses OpenSSL
+- do not include some hwdb files from uneeded pkgs
+
+Version 17.90 - 18 September 2017
+
+- bootloader:
+ o better read back config
+ o fix undefined labels when eg: Xen is installed (mga#19014)
+ crash with "undefined value for mandatory argument 'text''
+
+Version 17.89 - 7 September 2017
+
+- include part of udev's hwdb (mga#20327)
+- adapt to perl-5.26
+- adapt to URPM-5.14 (using perl native ints)
+
+Version 17.88 - 7 July 2017
+
+- translation updates
+
+Version 17.87 - 25 June 2017
+
+- left background image for Mageia 6 final
+
+Version 17.86 - 23 June 2017
+
+- increase the default window size of the installer to 1024x768 (mga#20624)
+
+Version 17.85 - 22 June 2017
+
+- don't overwrite custom grub2 settings when upgrading (mga#20596)
+- recognize 8812au (mga#21043)
+
+Version 17.84 - 5 June 2017
+
+- translation updates
+
+Version 17.83 - 4 June 2017
+
+- log output of libinput-list-devices in report.bug (mga#20327)
+- translation updates
+
+Version 17.82 - 6 May 2017
+
+- add "please wait" message when running update-grub2
+
+Version 17.81 - 5 May 2017
+
+- fix missing "Configure Supplemental Installation Media" screen (mga#20484)
+
+Version 17.80 - 3 May 2017
+
+- updated DE selection and advertising artwork for Mageia 6
+
+Version 17.79 - 26 April 2017
+
+- updated translation snapshot
+
+Version 17.78 - 4 April 2017
+
+- new left background for Mageia 6 rc
+
+Version 17.77 - 4 April 2017
+
+- partitioning:
+ o don't require a BIOS boot partition when performing an upgrade (mga#20338)
+ o make partitioning more robust with "Use entire disk" option (mga#20619):
+ * add safety net for informing the kernel after writing a DOS partition
+ table.
+ * speed up proc_partitions::compare() and avoid unwanted udev events.
+ o force reinitialisation of partition suggestions after wiping disk
+ (mga#20621)
+- various fixes to do_pkgs during Live installs (mga#20620):
+ o fix do_pkgs_standalone::are_installed() for Live install
+ o fix do_pkgs_standalone::remove() for Live install
+ o fix fast path for do_pkgs::ensure_is_installed()
+
+Version 17.76 - 24 March 2017
+
+- installer options handling:
+ o ignore case for options line in previous releases
+ o fix default value for 'compssListLevel' (mga#20551)
+ (both being post mga5 regression)
+
+Version 17.75 - 17 March 2017
+
+- partitioning:
+ o fix too big window due to too big translations (mga#20360)
+ o allow a BIOS boot partition to be located on any disk (mga#20161)
+ o ensure kernel is informed when a MBR partition table is cleared
+ o clearing GPT partitions:
+ * delay thus fix clearing GPT partitions (mga#20264)
+ ("failed to del partition #1 on /dev/...")
+ * don't send separate events to the kernel about removing/adding GPT partitions,
+ just tell it to reread the whole newly cleared & allocated partition table
+ o tell the kernel all actions at once on GPT partitions instead of telling it
+ separatly about removing partitions A, B & C, then adding partition E, F &G
+
+Version 17.74 - 9 March 2017
+
+- update translations (e17 -> e21)
+
+Version 17.73 - 8 March 2017
+
+- debug mode:
+ o add example how to include debuginfo
+ o make it work with gdb-7.12
+ o preset keyboard if DEBUG_INSTALL_LANG is set during build
+- list input & HID devices in report.bug (mga#20327)
+- recognize new kernel-4.8 drivers
+
+Version 17.72 - 25 February 2017
+
+- partitioning:
+ o allow a BIOS boot partition to be located on any disk (mga#20161)
+ o fix auto-allocation of BIOS boot partitions (mga#20161, mga#19888)
+ o don't suggest mountpoint for ESP when doing a legacy boot install (mga#20164)
+ o fix bugs in sync'ing the kernel's partition table cache (mga#20074)
+ o detect and handle DOS "Empty" partition types (mga#20074)
+- sync nonfree firmware list with kernel-4.9
+- use SHA-512 instead of blowfish as the default password encryption (mga#20342)
+
+Version 17.71 - 18 January 2017
+
+- partitioning_wizard:
+ o fix bug in detecting whether a BIOS boot partition is required (mga#19935)
+- fix inserting extended partition in the middle
+
+Version 17.70 - 17 January 2017
+
+- new left background for Mageia 6
+
+Version 17.69 - 12 January 2017
+
+- bootloader:
+ o disable audit logging as it floods the logs
+- partitioning:
+ o fix exception when clearing all partitions on !UEFI (mga#20083)
+- recognize new kernel-4.9 drivers
+
+Version 17.68 - 14 December 2016
+
+- fix progress bar on i586 (mga#19930)
+
+Version 17.67 - 13 December 2016
+
+- fix a crash introduced in 17.66
+
+Version 17.66 - 13 December 2016
+
+- fix more i586 problems with int64 (mga#19933, mga#19930)
+
+Version 17.65 - 12 December 2016
+
+- bootloader configuration:
+ o describe what skipping os-prober does (mga#18538)
+ o show generic help too when using grub2
+- fix i586 installation broken by int64 (mga#19895)
+
+Version 17.64 - 11 December 2016
+
+- more int64 init (mga#19895)
+
+Version 17.63 - 9 December 2016
+
+- force use of int64 for installed package size on i586 (mga#19895)
+
+Version 17.62 - 1 December 2016
+
+- left background for Mageia 6 sta2
+- add grub2-editenv in list.xml
+
+Version 17.61 - 26 November 2016
+
+- screenshots:
+ o use scrot instead of fb2png as the later doesn't work with vesa (mga#19810)
+
+Version 17.60 - 15 November 2016
+
+- partitioning:
+ o fix being unable to format a newly part (mga#19172)
+ o offer to format unmounted parts that have a defined mount point
+
+Version 17.58 - 24 October 2016
+
+- bootloader configuration:
+ o make kernel server default if installed
+ (we were only checking for long dead flavors such as enterprise, ...)
+- fix build with latest URPM aka include perl-Math-Int64 (mga#19640)
+
+Version 17.57 - 21 September 2016
+
+- use new CSS syntax for font (mga#19430)
+
+Version 17.56 - 19 September 2016
+
+- detect ovirt too (mga#19308)
+- fix gtk+3.22 regression (mga#19406)
+- sync nonfree firmware list with kernel-4.7
+
+Version 17.55 - 13 August 2016
+
+- New left background for Mageia 6 RC
+
+Version 17.54 - 13 August 2016
+
+- autologin/desktop configuration (shared code):
+ o add support for LXDM (mga#17616)
+ o add support for SDDM (mga#17913)
+
+Version 17.53 - 31 July 2016
+
+- bootloader configuration:
+ o fix .old backup for grub2's grub.cfg
+- partitioning:
+ o first usable sector is LBA34 for GPT
+ o respect used scheme when clearing a disk
+ (ie do not switch from gpt to dos scheme on small disk)
+
+Version 17.52 - 17 July 2016
+
+- do not preinstall mageia-gfxboot-theme
+- bootloader configuration:
+ o fix not being able to edit default grub2 cmdline (mga#18952)
+
+Version 17.51 - 12 July 2016
+
+- fix starting spice-vdagentd
+- partitioning:
+ o auto_inst: fix clearing an already filled GPT disk
+ o don't offer to format RAID or BIOS boot partition
+ o make clear a BIOS boot partition cannot have a mount point
+ o make error about BIOS boot partition more explicit about
+ its purpose and that it must be created (mga#18923)
+
+Version 17.50 - 8 July 2016
+
+- include pvs/vgs/lvs symlinks
+- partitioning:
+ o display a wait message when adding a PV to VG
+- libvirt integration:
+ o start spice-vdagent{d,} (Qemu guest agent)
+
+Version 17.49 - 6 July 2016
+
+- autoinst:
+ e enable to set several swap partitions (mga#9874)
+ o enable to select media (mga#12299)
+- partitioning:
+ o GPT: prevent geometry issue on last partition (mga#18666, mga#17796)
+ o restrict fdisk -l output to useful disks
+- recognize new kernel-4.7 drivers
+- try to get patch from ext[2-4] removable media instead of just ext2
+
+Version 17.48 - 4 July 2016
+
+- bootloader configuration:
+ o allow installing grub2 on XFS /
+ o make clear grub2 is installed on ESP under UEFI
+ o make sure we only offer lilo/grub choice on upgrades only
+- partitioning:
+ o do not offer to check for bad blocks on btrfs (mga#12393)
+ o do not warn about no bootloader can boot LVM as grub2 can (mga#9426)
+ o do not warn about no bootloader can boot RAID[^1] as grub2 can (mga#11324)
+ o enable bad blocks checking on JFS
+- summary:
+ o add help link for sound (mga#11824)
+
+Version 17.47 - 30 June 2016
+
+- partitioning:
+ o fix being able to create vfat on UEFI (mga#15698)
+- recognize some missing wireless drivers (mga#16768)
+- users:
+ o offer again to add user to admin group (mga#17720)
+
+Version 17.46 - 24 June 2016
+
+- library:
+ o enable compssUsers.pl to pick the right lsb-core-lib(64) flavor
+
+Version 17.45 - 24 June 2016
+
+- partitioning:
+ o keep UUID when formatting btrfs (mga#18673)
+
+Version 17.44 - 24 June 2016
+
+- bootloader configuration:
+ o add a "Do not touch ESP or MBR" option (mga#18770)
+ o do not offer to pick the disk where to install grub2 on UEFI
+ o filter GPT disks w/o a BIOS boot part (mga#18770)
+ o warn if grub2 is not installed on MBR/ESP
+- logs:
+ o fix found kernel names
+ o log if were running under UEFI
+- partitioning:
+ o fix preserving UUID when formatting jfs/nilfs/xfs
+- package selection:
+ o display a wait dialog when choosing custom choice (mga#11041)
+- summary:
+ o sort service categories, putting "Other" at end (mga#6286)
+
+Version 17.43 - 22 June 2016
+
+- summary:
+ o fix not listing some services (mga#17288)
+ o fix updating firewall status after configuration (mga#17288)
+
+Version 17.42 - 22 June 2016
+
+- bootloader configuration:
+ o add support for crypted grub2 passwords (mga#15930)
+ o grub2: do not overwite ESP if not installing on it (mga#15583)
+ o grub2: fix setting default entry when in a submenu (mga#18560)
+
+Version 17.41 - 20 June 2016
+
+- bootloader:
+ o fix the grub2 post-install check (mga#18739)
+
+Version 17.40 - 20 June 2016
+
+- bootloader:
+ o ensure we've the right grub2 flavor (mga#18739)
+- no more include vmmouse driver
+
+Version 17.39 - 18 June 2016
+
+- partitioning:
+ o fix ESP tagging in some cases
+- services:
+ o update service category lists
+
+Version 17.38 - 16 June 2016
+
+- partitioning:
+ o fix offering to create a GRUB_BIOS partition in custom mode (mga#18656)
+ o fix inverted test when checking need for a GRUB_BIOS partition (mga#18704)
+
+Version 17.37 - 12 June 2016
+
+- partitioning:
+ o try harder to guess if we need a GRUB_BIOS partition (mga#18656)
+- rename desktop image KDE -> Plasma (mga#18687)
+
+Version 17.36.1 - 11 June 2016
+
+- fix selecting Plasma (mga#18687)
+
+Version 17.36 - 11 June 2016
+
+- do not override bootloader on upgrade (mga#18638)
+- fix running with nss 3.24
+- debug build:
+ o gdb needs python3 instead of python2 (and guile as well)
+ o fix loadkeys in debug mode on tty1
+ o include cfdisk too
+- partitioning:
+ o add a GRUB_BIOS partition if needed (mga#18656)
+ o MBR limit really is 2TiB, not 4, so use GPT for disks > 2TiB
+
+Version 17.35.1 - 7 June 2016
+
+- fix selecting grub2 on !UEFI
+
+Version 17.35 - 7 June 2016
+
+- fix selecting grub2-efi on UEFI (mga#18646)
+
+Version 17.34.1 - 6 June 2016
+
+- fix displaying release notes with WebKit2
+
+Version 17.34 - 6 June 2016
+
+- bootloader:
+ o enable to (un)install os-prober (mga#16010, mga#18538)
+ o fix reading back last grub2 entry
+ o only overwrite GRUB_CMDLINE_LINUX_DEFAULT on first install (mga#18112)
+ o only overwrite install.sh when actually installing boot loader (mga#17455)
+ o set GRUB_DEFAULT + GRUB_SAVEDEFAULT (mga#9627, mga#16059)
+ o stop offering grub legacy & lilo on new installs (mga#18583)
+
+Version 17.33 - 27 May 2016
+
+- adjust to latest gdb
+- list all drivers needing a proprietary driver
+- only use vesa on x86
+
+Version 17.32 - 17 May 2016
+
+- remove KDE occurrence after revert of the previous commit
+
+Version 17.31 - 9 May 2016
+
+- replace last KDE occurence with Plasma
+- left background for sta1
+- list all drivers needing a proprietary driver
+- install the right IM packages on Plasma when using fcitx
+
+Version 17.30 - 7 May 2016
+
+- install nonfree firmware for amdgpu, i915, nouveau
+- CSD:
+ o make corners round like gtk+/Adwaita does
+ o nicer decoration
+
+Version 17.29 - 4 May 2016
+
+- install the right IM packages on Plasma
+- make CSD support available to forked processes (mga#18332)
+
+Version 17.28 - 26 April 2016
+
+- adapt to new brltty
+- drop support for MIPS
+- fix detecting running under Qemu
+- fix installing packages when having a numeric pad
+- recognize new kernel-4.6 drivers
+
+Version 17.27 - 23 April 2016
+
+- add 'qemu' flag for rpmsrate
+- exclude 2 Xorg libraries on ARM
+
+Version 17.26.1 - 8 April 2016
+
+- just ignore kernel options
+- drakx-in-chroot:
+ o enable to control strace behaviour
+
+Version 17.26 - 3 April 2016
+
+- add minimal CSD support (mga#17702)
+
+Version 17.25 - 1 April 2016
+
+- partitioning:
+ o fix detecting nvme devices as block devices
+ o fix displaying partitions when there's only one disk
+ (and the resulting crash: mga#18076)
+
+Version 17.24 - 23 March 2016
+
+- fix build on ia32
+- add 'virtualbox' & 'vmware' flags for rpmsrate
+- use systemd-detect-virt for detecting virtualization technology
+
+Version 17.23 - 22 March 2016
+
+- do not include twice webkit2gtk library
+- prevent usrmove files to remain
+- remove swrast (too big just to fix a gtk+ warning...)
+
+Version 17.21 - 21 March 2016
+
+- load evdev (thus fixing a crash)
+- load psmouse (it is now modular)
+- use WebKit2 instead of WebKit1 for displaying help content (mga#15031)
+
+Version 17.20 - 18 March 2016
+
+- prevent slow boot on first boot (mga#16684)
+- partitioning:
+ o fix partitions not initially displayed (mga#17564)
+
+Version 17.19 - 24 February 2016
+
+- detect nvme devices as block devices (mga#17743)
+- detect partitions on nvme devices (mga#17743)
+
+Version 17.18.1 - 10 February 2016
+
+- bootloader:
+ o add support for grub2-text too (mga#9431)
+- partitioning:
+ o check ESP has the right fs type (mga#16246)
+ o check that ESP mount point actually is an ESP
+
+Version 17.17 - 29 January 2016
+
+- fix hidden cursor (mga#17470)
+
+Version 17.16 - 21 January 2016
+
+- Add ARM support in perl-install
+- options:
+ o silent a warning bout BOOT_IMAGE option
+- partitioning:
+ o fix crash (mga#17484)
+
+Version 17.14 - 11 January 2016
+
+- do not warn about kernel options when parsing drakx options
+- include libinput udev helpers (mga#17470)
+
+Version 17.13 - 9 January 2016
+
+- regressions from 17.11:
+ o fix ignoring options from isolinux
+ o fix parsing stage1's automatic option (mga#17441)
+- silent a perl-5.22 warning
+
+Version 17.12 - 2 January 2016
+
+- bootloader:
+ o log found kernels (mga#16128)
+ o skip swap in the list of partitions (mga#15767)
+- partitioning:
+ o auto fill LV name from mntpnt (mga#5407)
+ o suggest "lv_foo" instead of just "foo" for LVname
+- summary:
+ o drop support for ISApnp sound cards
+- fix a message (mga#15414)
+- misc cleanups
+
+Version 17.11 - 1 January 2016
+
+- make report.bug.xz more reproducible
+- misc cleanups
+- drakx-in-chroot:
+ o use GetOpt::Long for options
+ (thus allowing eg "--flang fr" instead of just "--flang=fr")
+
+Version 17.10 - 24 December 2015
+
+- use mutter instead of matchbox (fix black screen)
+
+Version 17.9 - 24 December 2015
+
+- include 60-evdev.rules instead of no more existing 60-keyboard.rules
+- silent gtk+ warnings about swrast driver
+
+Version 17.8 - 22 December 2015
+
+- recognize new kernel-4.3 drivers
+
+Version 17.7.1 - 17 December 2015
+
+- include one more file for new X.org wrapper (mga#17348)
+
+Version 17.7 - 17 December 2015
+
+- adapt to new X.org wrapper (mga#17348)
+
+Version 17.6 - 12 December 2015
+
+- drakx-in-chroot:
+ o fix running with xserver-1.18
+
+Version 17.5 - 8 december 2015
+
+- more substitution for task-plasma5
+- use sddm instead of kdm
+
+Version 17.4 - 6 December 2015
+
+- use task-plasma5-minimal instead of task-kde4-minimal
+
+Version 17.3 - 4 December 2015
+
+- recognize new kernel-4.3 drivers
+
+Version 17.2 - 26 November 2015
+
+- left background for Mageia 6 dev1
+
+Version 17.1 - 27 August 2015
+
+- recognize new kernel-4.1 drivers
+
+Version 17.0 - 24 June 2015
+
+- adapt to pango 1.37.x
+- adapt to perl-5.22
+- switch from evdev+synaptics to libinput driver
+
+Version 16.105 - 15 June 2015
+
+- really fix urpmi media when installing from USB (mga#5690)
+
+Version 16.104 - 13 June 2015
+
+- diskdrake:
+ o prevent errors when telling kernel to reread partition table
+
+Version 16.103 - 4 June 2015
+
+- partitioning wizard:
+ o only use current disk when auto partitioning, wiping disk,
+ using free space (mga#16055)
+
+Version 16.102 - 29 May 2015
+
+- diskdrake:
+ o ignore special 'Packard_Bell' and 'Push_Button_Reset' partitions (mga#15999)
+ o run udevadm settle after actions that trigger device reload (mga#15999)
+
+Version 16.101 - 25 May 2015
+
+- do not die if network cannot be started for updates (mga#8819),
+ just log the faillure and offer to either retry or abort
+- do not offer to add a CD-ROM as supplement media (mga#13671)
+- fix urpmi media when installing from USB (mga#5690)
+- locale setting
+ o fix reading back IM config (mga#15761)
+- partitioning:
+ o set pt_type according to fs_type before flag cases (mga#16029)
+
+Version 16.100 - 20 May 2015
+
+- add online media at installation end (mga#8819)
+
+Version 16.99 - 20 May 2015
+
+- bootloader:
+ o do not detect grub2 on UEFI when there's no bootloader
+ o fix default grub2 kernel parameters (mga#15984)
+- partitioning:
+ o display cosmetics when reading back GPT partitions
+ o fix mnt point for FAT partitions on GTP (mga#15987)
+ o set the proper GUID for FAT partitions on GPT
+- don't try to install non existant scim-googlepinyin (mga#6681)
+
+Version 16.97 - 18 May 2015
+
+(just to be sure draklive-install fix for mga15257 doesn't break anything)
+
+Version 16.96 - 17 May 2015
+
+- partitioning:
+ o fix regression refusing FAT for ESP (mga#15962)
+
+Version 16.95 - 14 May 2015
+
+- better dialog title (mga#9648)
+- partitioning:
+ o fix a crash after "insufficient space" error (mga#15919)
+
+Version 16.93 - 9 May 2015
+
+- bootloader:
+ o do use vga value for grub2
+ o fix setting default grub2 entry
+
+Version 16.92 - 9 May 2015
+
+- bootloader:
+ o add a dedicate step for grub2 (mga#9627)
+ o always log update-grub2 output (mga#15857)
+ o backup grub2 files before configuring
+- log grub2 install.sh in report.bug like for grub (mga#15857)
+- networking:
+ o recognize r8723bs (mga#15874)
+- partitioning:
+ o do not set noauto for /boot/EFI (mga#15627)
+
+Version 16.91 - 3 May 2015
+
+- final left-background
+
+Version 16.90 - 28 April 2015
+
+- localedrake:
+ o write input methods to /etc/locale.conf (mga#15464)
+- run vgchange before updating the list of LVMs, not after, and even if not
+ in install (should help with mga#7578).
+
+Version 16.89 - 25 April 2015
+
+- Ignore special partitions on mmc (mga#15759)
+
+Version 16.87 - 21 April 2015
+
+- partitioning:
+ o improve the display box (mga#15728)
+
+Version 16.86 - 20 April 2015
+
+- bootloader:
+ o dont override 'splash' and/or 'quiet' when adding 'noiswmd' (mga#15666)
+- partitioning:
+ o use the windows partition with the most available space on current
+ disk, not the last one across all disks (mga#15589)
+ o suggest up to 20GB/20% of the windows partition (whichever is larger),
+ previously 6GB/10% (mga#15589)
+ o hide empty space < 2MB, we have such holes due to alignment (mga#15733)
+- speed up reading of flags from GPT partition table (mga#15621).
+
+Version 16.84 - 14 April 2015
+
+- bootloader config:
+ o do not pass useless parameters to grub2 under UEFI (mga#15692)
+ o fix kernel booting in blind mode (mga#15291)
+
+Version 16.83 - 13 April 2015
+
+- enable firmware raids with dmraid/kpartx like we do on
+ live medias and on fully installed systems
+
+Version 16.82 - 13 April 2015
+
+- partitioning:
+ o detect Lenovo recovery & 'SYSTEM_DRV' as such (mga#1371)
+ o do add a ESP if it was removed by "Clear All"
+ o ignore ESP for "use free space on MS"
+- bootloader config:
+ o default to GRUB_DISABLE_RECOVERY=falss for 'failsafe' entry (mga#15675)
+
+Version 16.81 - 12 April 2015
+
+- add kpartx for dmraid activation
+- fix upgrade when package's in several media (mga#15350)
+ (need URPM-5.06 too)
+- support loading patches from NTFS USB keys
+- partitioning:
+ o don't guess a drive letter for ESP partitions
+
+Version 16.80 - 9 April 2015
+
+- bootloader config:
+ o check there's still some place on /boot with grub2 too
+ o generate core.img for UEFI
+ o fix detecting grub2 on UEFI
+ o write /boot/grub2/install.sh like for grub instead of drakboot.conf
+- log grub2 config in report.bug like for grub/lilo
+- partitionning:
+ o don't guess a drive letter for recovery partitions (mga15636)
+
+Version 16.79 - 7 April 2015
+
+- bootloader config:
+ o keep vga= parameter when switching to grub2 (mga#9888)
+
+Version 16.78 - 7 April 2015
+
+- bootloader:
+ o fix installing grub2 on MBR (mga#15640)
+ (regression introduced in 16.76)
+
+Version 16.77 - 7 April 2015
+
+- bootloader:
+ o add 'noiswmd' to kernel command line to manage isw_ bios
+ fakeraids with dmraid for now (instead of mdadm) (mga#11289, mga#14330)
+ o allow btrfs for / without separate /boot with grub2 (mga#15374)
+- partitioning wizard:
+ o do not offer to select RAID as it result in a crash (mga#5800)
+
+Version 16.76 - 3 April 2015
+
+- bootloader config:
+ o log grub2-install failures (mga#15439)
+- partitionning:
+ o log fdisk -l output before/after partitionning
+ o really try to detect recovery partitions on GPT
+
+Version 16.75 - 30 March 2015
+
+- partitionning:
+ o better fix for fail to read too corrupted partition table
+ o fix getting ESP with "use free space":
+ make sure to not override /boot/EFI mount point with /media/win_X
+ o make sure to check for existing ESP on all disks
+ o relax checks for ESP
+ o try to detect recovery partitions on GPT
+
+Version 16.74 - 27 March 2015
+
+- GPT partitionning:
+ o fix retrieving ntfs partitions as ntfs-3g instead of ntfs
+ o really fix retrieving swap partition type
+
+Version 16.73 - 27 March 2015
+
+- GPT partitionning:
+ o fix creating RAID devices (mga#15400)
+ (regression from 16.33)
+ o fix "I cannot read the partition table of device XXX, it is too corrupted"
+ o fix retrieving LVM/RAID/swap partition type
+ o fix retrieving ntfs partitions as ntfs-3g instead of ntfs
+ o fix tagging lvm/raid as "linux filesystem"
+ o fix tagging ntfs-3g as "linux filesystem"
+ o fix tagging swap as "linux filesystem"
+- tell users to ignore Gtk3 warnings
+
+Version 16.72 - 26 March 2015
+
+- fix a crash in auto install (mga#15573)
+
+Version 16.71 - 25 March 2015
+
+- bump max_nb() to 131 to cover mdadm managed imsm and ddf1 bios
+ fakeraids (containers defaults to >= 127 and partitions <=126)
+- partitionning:
+ o fix retrieving ESP partition type on GPT (mga#15366)
+ o log which GPT partition we fail to add/del
+ o set proper GUID to ESP partitions with GPT layout
+- pre-install grub2-efi on UEFI
+
+Version 16.69 - 20 March 2015
+
+- efi partitioning fixes from tv
+- diskdrake & package install gtk fixes from Martin Whitaker
+
+Version 16.68 - 17 March 2015
+
+- fix mis-detecting some mobile broadband modems (mga#12492)
+- add 'deploops' option for debugging (mga#15350)
+- log mkinitrd faillures (mga#9201)
+
+Version 16.67 - 5 March 2015
+
+- auto_install:
+ o ignore firmwares within draklive
+ o log step errors
+- drakx-in-chroot:
+ o unbreak draklive
+
+Version 16.66 - 5 March 2015
+
+- diskdrake:
+ o add "nofail" option to "foreign" mountpoints to avoid unwanted recovery mode (#10179)
+
+Version 16.65 - 27 February 2015
+
+- Mageia 5 RC
+- include udev rule for Synaptics
+
+Version 16.64 - 27 February 2015
+
+- partitioning:
+ o add missing button icons (mga#15264)
+
+Version 16.63 - 27 February 2015
+
+- partitioning:
+ o fix too wide buttons (mga#12422, mga#13471, mga#14839, mga#15379)
+
+Version 16.62 - 19 February 2015
+
+- partitioning (mga#12422, mga#11988, mga#14839, mga#15272, mga#15264):
+ o use an horizontal scrolling bar when needed
+ o use a vertical scrolling bar when needed (mga#15272)
+ o workaround too wide togglebuttons with empty label with gtk+3 and/or Adwaita
+
+Version 16.61 - 18 February 2015
+
+- ensure we install radeon-firmware too if needed (mga#15203)
+
+Version 16.60 - 18 February 2015
+
+- ensure we install kernel-firmware-nonfree if needed (mga#15203)
+
+Version 16.59 - 18 February 2015
+
+- bug:
+ o display a nicer message when no removable medium is found (mga#14435)
+
+Version 16.57 - 11 February 2015
+
+- fix taking screenshots on UEFI 24bit bpp framebuffer (mga#13684)
+
+Version 16.55 - 9 February 2015
+
+- drakclock: Ensure that /etc/localtime is a symlink (mga#14888)
+- users: Make sure to restart accounts-daemon after adding users (mga#15113)
+- finish-install: Ensure i18n settings are loaded
+- Create a symlink instead a hard copy to localtime see issue #14888
+- i18n: Write the desired console font to /etc/vconsole.conf
+- i18n: Use the x-distro /etc/locale.conf file instead of /etc/sysconfig/i18n
+- drakedm: Don't run ancient dm init script (which no longer exists)
+- Update traslations
+
+Version 16.54 - 6 February 2015
+
+- fix left background size
+
+Version 16.53 - 6 February 2015
+
+- switch from oxygen-gtk to Adwaita theme
+ o remove oxygen-gtk
+ o add missing icons (mga#13673, mga#14355, mga#14840, mga#14844)
+ o add libpixbufloader-svg.so for Adwaita svg icons
+ o add gtk.css
+
+Version 16.52 - 5 February 2015
+
+- default to GPT on disks larger than 4TB, not LVM
+- fix GPT initialization on empty disk
+- fix failure to delete partitions after switching to GPT
+- fix stage2 loading graphical installer in efi mode
+
+Version 16.51 - 3 February 2015
+
+- Mageia 5 beta 3
+- recognize new kernel-3.19 drivers
+
+Version 16.50 - 9 January 2015
+
+- initial uefi support
+
+Version 16.49 - 31 December 2014
+
+- translation updates
+- refer to MageiaWelcome instead of to something we do not have (mga#10901)
+- drakx-in-chroot:
+ o pre-create /dev/null & co before mounting devtmpfs
+- recognize new kernel-3.18 drivers (mga#14799)
+
+Version 16.48 - 16 December 2014
+
+- Mageia 5 artwork integration (with beta2 mention on left-background)
+- do not load hyper-v modules (already done by udev in stage1)
+
+Version 16.47 - 5 December 2014
+
+- do not crash loading stage2 in Virtual PC (mga#14117)
+- bootloader config:
+ o do not crash if fstab contains a bind mount on a file (mga#14657)
+
+Version 16.45 - 26 October 2014
+
+- drakx-in-chroot:
+ o pre-create /dev/null & co again (for draklive)
+- fix selecting of uneeded locales (mga#3723)
+
+Version 16.44 - 23 October 2014
+
+- drakx-in-chroot:
+ o document --stage2-update in --help
+ o mount /dev -o ro
+ o try harder to umount everything when sg went havroc
+
+Version 16.43 - 20 October 2014
+
+- drakx-in-chroot:
+ o adapt to the fact that stage2 expects a /dev fully populated by udev
+- package installation:
+ o adapt to URPM-5
+ o rename "no_suggests" option as "no_recommends"
+
+Version 16.42 - 18 September 2014
+
+- only allow GRUB2 when booting on btrfs
+
+Version 16.41 - 31 August 2014
+
+- adapt to latest systemd
+- allow /boot on btrfs
+- recognize new kernel-3.17 drivers
+
+Version 16.40 - 22 August 2014
+
+- adwaita-gtk3-theme no longer provides a settings.ini file
+- log X.org server logs when it fails to start up (mga#13471, ...)
+- recognize hyper-v paravirtual network driver
+
+Version 16.39 - 17 August 2014
+
+- recognize new kernel-3.16 drivers
+
+Version 16.38 - 22 July 2014
+
+- Mageia 5 alpha 2 left background
+
+Version 16.37 - 3 July 2014
+
+- fix /etc/fstab writing (mga#13114, also reported by Joseph Wang)
+- partitioning:
+ o improve fs sorting in combo box (mga#13640)
+
+Version 16.36 - 1 July 2014
+
+- hide /boot/efi check for now (mga#13638)
+
+Version 16.35 - 29 June 2014
+
+- Mageia 5 alpha 1 left background
+- let udev handle floppies
+
+Version 16.33 - 18 June 2014
+
+- stop creating some /dev entries that are managed by udev
+
+Version 16.32 - 15 June 2014
+
+- include platform driver autoload udev rules
+- recognize new kernel-3.15 drivers
+
+Version 16.31.1 - 6 June 2014
+
+- include udev rule for VMmouse
+
+Version 16.31 - 6 June 2014
+
+- xorg config:
+ o rely on evdev/udev for input devices
+ o Wacom tablets should work better
+ (we now load the wacom driver again)
+ o Synaptics touchpads should now work during install (mga#11524)
+
+Version 16.30 - 4 June 2014
+
+- adapt to perl-5.20
+- add some POD documentation
+- do not unavailable kernel-xbox
+- drop (broken) support for Alpha, PPC, Sparc & IA64
+- locale setting
+ o stop configuring HAL
+ o update locales list
+
+Version 16.29 - 3 May 2014
+
+- gnome-icon-theme is now adwaita-icon-theme
+
+Version 16.28 - 28 April 2014
+
+- recognize new kernel-3.14 drivers
+
+Version 16.27 - 18 February 2014
+
+- fix crash when choosing a RTL language (mga#12793)
+- Ensure uid/gid extraction works when adding users via summary page
+ (fixes chown'ing user to root when adding existing user on upgrade mga#12375)
+
+Version 16.26.6 - 23 January 2014
+
+- fix hidden icon in individual package selection (mga#12397)
+
+Version 16.26.5 - 22 January 2014
+
+- release notes dialog:
+ o fix untranslated button
+
+Version 16.26.4 - 22 January 2014
+
+- debug image:
+ o add a warning about QWERTY keyboard
+- help dialogs:
+ o do warn on first screenshot (mga#11176)
+ o fix lost help screenshots (mga#11176)
+
+Version 16.26.3 - 21 January 2014
+
+- help dialogs:
+ o do not warn if a screenshot already has been taked (mga#11176)
+
+Version 16.26.2 - 20 January 2014
+
+- left background for final release of Mageia 4
+
+Version 16.26.1 - 20 January 2014
+
+- partitioning:
+ o increase back minimum partition width for Oxygen (mga#11977)
+
+Version 16.26 - 20 January 2014
+
+- fix detecting if basesystem is installed (mga#10722)
+ thus fixing "basesystem package not selected"
+- partitioning:
+ o fix sizing partition widgets
+ o fix not moving window (mga#11790, mga#11988, mga#11977)
+ o revert minimum partition width to its pre-gtk3 value
+ o show labels on partition buttons
+
+Version 16.25 - 19 January 2014
+
+- add Mageia 4 desktop images
+
+Version 16.24 - 18 January 2014
+
+- help dialogs:
+ o make screenshots work (mga#11176)
+ o fix untranslated button & title (mga#9828)
+
+Version 16.23 - 16 January 2014
+
+- partitioning:
+ o do not show labels on partition buttons (mga#11988)
+
+Version 16.22 - 15 January 2014
+
+- partitioning:
+ o fix "No GSettings schemas are installed on the system" error when
+ inspecting partitions (mga#12279)
+- services:
+ o use --no-block with chkconfig and systemctl enable to prevent systemd reload
+ and potential crash (especially during first/live boot)
+
+Version 16.21 - 13 January 2014
+
+- partitioning:
+ o do not propose check bad blocks for btrfs (Manuel Hiebel, mga#10116)
+ o increase minimum partition width for Oxygen (mga#11977)
+ (if not enough, we will disable labels on partitions buttons again)
+- revert back to matchbox instead of mutter as it doesn't fix
+ diskdrake issues (mga#11977)
+ (thus fixing missing window decorations (mga#12218))
+
+Version 16.20 - 6 January 2014
+
+- Mageia 4 artwork
+
+Version 16.19 - 4 January 2014
+
+- Mageia 4 RC left background
+
+Version 16.17 - 20 December 2013
+
+- media step:
+ o hint that nonfree is needed if a CPU needs a microcode
+- install:
+ o fix pausing installing while displaying release notes
+- drakx-in-chroot:
+ o advise to install xephyr if missing
+- use mutter instead of matchbox in order to try to workaround
+ diskdrake issues (mga#11790, mga#11988, ...)
+ as a side effect, stage2 shrinks by 3Mb...
+
+Version 16.14 - 10 December 2013
+
+- Mageia 4 beta 2 left background
+
+Version 16.13 - 10 December 2013
+
+- fix crash when selecting an input method (mga#11939)
+
+Version 16.10 - 6 December 2013
+
+- package group selection:
+ o make bottom buttons always available
+ (by puting the scrolling window only around the package group check boxes)
+
+Version 16.9 - 6 December 2013
+
+- fix retrieving network info from stage2 after dracut migration (mga#11504)
+
+Version 16.7 - 5 December 2013
+
+- partitioning:
+ o fix a crash when creating partitions (mga#11876)
+
+Version 16.6 - 4 December 2013
+
+- fix blue background behind left panel text (mga#11866)
+
+Version 16.5 - 3 December 2013
+
+- partitioning:
+ o detect eMMc block devices (Luc Menut, mga#11812)
+ o fix a crash in partitioning wizard (mga#11820)
+ o show labels on partition buttons again but ellipsized (mga#11858)
+
+Version 16.4 - 2 December 2013
+
+- fix partitioning wizard moving the main window to left (mga#11790)
+- fix titles not being blue anymore
+
+Version 16.2 - 29 November 2013
+
+- no more run urpmi.update when adding media
+ (uneeded with urpmi-7.27+)
+
+Version 16.1 - 28 November 2013
+
+- fix a warning: include dialog-warning-symbolic
+- fix left panel text being black instead of white (mga#11792)
+- fix calling "child1_shrink" via package "Gtk3::HPaned" (mga#11797)
+- fix using old toolbar API that is no more available (mga#11791)
+- wrap too big labels in summary dialog (mga#11793)
+
+Version 16.0 - 23 November 2013
+
+- switch from Gtk+-2 to Gtk+-3:
+ o Banners: most themes work OK but Oxygen-gtk3...
+ o diskdrake: most themes work OK but Oxygen-gtk3...
+- detect_devices:
+ fix ids to be numeric
+- drakx-in-chroot:
+ o add --depth in order to force 16bit colors mode
+
+Version 15.73.1 - 19 November 2013
+
+- debug image:
+ o include enough python in order to generate a stack trace from within stage2
+ o fix passing arguments from drakx-in-chroot
+- do not compile/include xhost+ anymore (unused for years)
+- log why updates were not applied
+
+Version 15.73 - 12 November 2013
+
+- polkit: fix wrappers to properly escape arguments when calling the binary
+
+Version 15.72.2 - 11 November 2013
+
+- properly escape $$UID
+- use $$UID instead of $$(id -u)
+
+Version 15.72.1 - 9 November 2013
+
+- fix typo in last Makefile change
+
+Version 15.72 - 9 November 2013
+
+- use /usr/libexec/drakrpm-addmedia directly in stage2 (colin, #11319)
+- debug image:
+ o add missing python modules for latest gdb
+ o fix building with latest gdb
+
+Version 15.71 - 8 November 2013
+
+- do not use automatically gdm for xfce
+- do not include anymore packdrake module
+
+Version 15.70 - 3 November 2013
+
+- Mageia 4 beta 1 left background
+
+Version 15.69 - 29 October 2013
+
+- adapt to a dracut based stage1
+
+Version 15.68.1 - 14 October 2013
+
+- adapt to latest mdadm
+
+Version 15.68 - 14 October 2013
+
+- drop /etc/termcap as it's no longer part of our build
+- make urpmi install check more reliable (polkit related path change mga#11125)
+- recognize new kernel-3.12 drivers
+
+Version 15.67 - 10 October 2013
+
+- log when user reject applying updates (mga#11319)
+- recognize new kernel-3.11 drivers
+
+Version 15.66 - 3 October 2013
+
+- include another network interface name udev rule (mga#10947)
+- diskdrake:
+ o enable to format already formated btrfs partitions (mga#11256)
+
+Version 15.65 - 28 September 2013
+
+- mageia 4 alpha 3 left background
+- fix detecting some soft RAID (mga#11139 and the like)
+
+Version 15.64 - 4 September 2013
+
+- rebuild
+
+Version 15.63 - 4 September 2013
+
+- revert multi selection for desktops
+
+Version 15.62 - 3 September 2013
+
+- Mageia 4 alpha 2 left background
+- updated translations for desktop install
+- add Independently install Desktop environments
+- install open-vm-tools on VMware hypervisor
+
+Version 15.61 - 8 August 2013
+
+- include network interface name udev rule (mga#10947)
+
+Version 15.60 - 4 August 2013
+
+- Mageia 4 alpha 1 left background
+
+Version 15.59 - 4 August 2013
+
+- add missing re.so for utf8_heavy.pl (mga#10893)
+- detect wifi cards managed by ssb driver (mga#9378)
+
+Version 15.58 - 19 July 2013
+
+- fix a lang pixmap (mga#10795)
+
+Version 15.57 - 16 July 2013
+
+- adapt to latest btrfs utils for resizing
+
+Version 15.56 - 16 July 2013
+
+- bootloader:
+ o fix displaying need to install acpi* packages when they're already installed
+ o read/save choosen default entry
+- detect wifi cards managed by bcma driver (mga#9378)
+- detect new kernel-3.10 drivers
+
+Version 15.54 - 17 May 2013
+
+- do not enable legacy sysvinit scripts that no longer exist (mga#10084)
+- do not enable to pick xguest (mga#9750)
+- fix offering to install shorewall & shorewall-ipv6 when already installed
+- media step:
+ o hint that nonfree is needed if a driver needs a nonfree firmware
+ o preselect nonfree if needed
+
+Version 15.52 - 15 May 2013
+
+- fix displaying release notes while installing (mga#10087)
+
+Version 15.51 - 13 May 2013
+
+- drop support for fetching release-notes.ARCH.html
+- enable Nonfree/Tainted repositories when adding update media if a
+ package having a matching name is installed (similar to #8379)
+- detect_devices: check for phy80211 sysfs directory as well to detect
+ wireless devices
+
+Version 15.49 - 2 May 2013
+
+- fix displaying ads (mga#9939)
+
+Version 15.48 - 1 May 2013
+
+- include mount options in auto_inst.pl
+- install 'basesystem-minimal' instead of 'basesystem' prior to add extra media
+ thus fixing "basesystem package not selected" (mga#9611)
+- make xdm installation automatic in auto_inst mode (mga#9875)
+
+Version 15.47 - 30 April 2013
+
+- include more partition fields in auto_inst.pl (mga#9784)
+- skip comments in /etc/crypttab (Colin, mga#9905)
+- services:
+ o list 'shorewall-ipv6' along 'shorewall'
+
+Version 15.45 - 27 april 2013
+
+- fix doble logging of 'filesystem' installation (mga#7758)
+- install shorewall-ipv6 along shorewall (mga#9401)
+- bootloader:
+ o try harder to get a label for other OSes (mga#9849,9681)
+- partitioning:
+ o only allow 'acl' option for extX & reiserfs (mga#9884)
+
+Version 15.44 - 23 april 2013
+
+- partitioning:
+ o fix a crash when reloading partition table (mga#9838)
+ o fix a crash when trying to create a encrypted LVM partition (mga#9837)
+
+Version 15.43 - 22 april 2013
+
+- prepare final release: left background
+
+Version 15.42 - 21 April 2013
+
+- partitioning (mga#5661):
+ o ensure LVMs on top of dmcrypt are activated after unlocking
+ o fix UI redraw issue after unlocking dmcrypt partition
+
+Version 15.41 - 21 April 2013
+
+- add support for new help
+- updated translations
+
+Version 15.40 - 19 April 2013
+
+- authentication:
+ o 'nss-pam-ldapd' obsoletes 'pam_ldap' (mga#9769)
+- partitioning (mga#5661):
+ o fix losing crypt key when detecting LVMs on top of dmcrypt
+ o fix losing crypt key when re-reading partition tables
+
+Version 15.39 - 15 April 2013
+
+- bump min size for spliting /home fs (Eugeni, mga#3189):
+ o from 8 to 12Gb if simple partitioning
+ o from 7 to 10Gb if /usr is split or for servers
+
+Version 15.38 - 14 April 2013
+
+- Mageia 3 RC banner
+
+Version 15.37 - 9 April 2013
+
+- library:
+ o fix detecting some USB devices due to not reporting their class (mga#9674)
+- partitioning:
+ o allow to choose btrfs in normal mode (mga#65)
+
+Version 15.36 - 6 April 2013
+
+- bind mount /run in chroot, thus fixing dracut runs (Dave Hodgins, mga#9213)
+- bootloader:
+ o fix other Mga OS names in menu (mga#8710)
+
+Version 15.35 - 5 April 2013
+
+- bootloader:
+ o assume grub2.cfg is UTF-8 encoded
+ o read back more conf from grub2
+ o set entries type when reading back grub2 conf, thus fixing
+ switching back to grub-legacy (mga#9563)
+- fix finding translated help (mga#9619)
+
+Version 15.34 - 4 April 2013
+
+- force loading NSS modules (mga#9326)
+- log ignored dmraid devices (might help mga#9467)
+- drakx-in-chroot:
+ o always copy /etc/resolv.conf again
+
+Version 15.33 - 4 April 2013
+
+- drakx-in-chroot:
+ o do not copy /etc/resolv.conf in chroot if not using either remote
+ display or remote repository (thus fixing goup lookups, mga#9326)
+
+Version 15.32 - 31 March 2013
+
+- fix detecting Xen hard disks (mga#9546)
+
+Version 15.31 - 25 March 2013
+
+- recognize more webcam & bluetooth devices (might help mga#5841)
+
+Version 15.30 - 25 March 2013
+
+- Mageia 3 new design
+
+Version 15.29 - 22 March 2013
+
+- Mageia 3 beta 4 background
+
+Version 15.28 - 21 March 2013
+
+- do not disable module autoloading (mga#9428)
+- bootloader-config:
+ o do not build initrd if no bootloader is detected and
+ --no-initd argument is supplied
+- authentication:
+ o install nss-pam-ldapd instead of nss_ldap (mga#9375)
+- partitioning:
+ o actually preserve UUID when formatting (mga#9428)
+
+Version 15.27 - 12 March 2013
+
+- bootloader:
+ o install grub2-efi instead of grub2 if using UEFI (mga#8886)
+- fix permissions of help displayer (mga#9340)
+- fix dialogs popup with drakx-in-chroot
+
+Version 15.26 - 5 March 2013
+
+- include display_installer_help
+- show all errors at once at end of installation
+
+Version 15.25 - 5 March 2013
+
+- fork displaying help, thus workarounding a webkit segfault (mga#9124)
+- prevent displaying twice release notes
+
+Version 15.24.1 - 2 March 2013
+
+- rebuild with updated list_modules
+
+Version 15.24 - 28 February 2013
+
+- bootloader:
+ o allow installing grub2 on a partition (mga#8742)
+ o try harder not to have duplicate stuff on grub2 cmd line
+- do not put entry for CD/DVD in /etc/fstab (mga#7657)
+
+Version 15.23 - 27 February 2013
+
+- bootloader:
+ o fix detecting grub2 if there's a remaining grub-legacy signature
+ o read more of grub2 config
+ o read & save timeout value (mga#8850)
+ o set default parameters in grub2 config (mga#9177)
+- do not attempt to use gurpmi.addmedia or gurpmi if in text mode
+
+Version 15.22 - 26 February 2013
+
+- Mageia 3 beta 3 left background
+
+Version 15.21 - 26 February 2013
+
+- summary:
+ o prevent installing grub2 somewhere else than MBR
+ o read & write /boot/grub2/drakboot.conf
+ o suggests MBR by default for grub2 too (Manuel Hiebel, #8851)
+- always bypass blkid cache (the cache only includes a subset of the data we need)
+
+Version 15.20 - 21 January 2013
+
+- use modprobe instead of insmod (mga#8676)
+
+Version 15.19 - 14 January 2013
+
+- Mageia 3 beta 2 left background
+
+Version 15.18 - 5 January 2013
+
+- include more utils for raid (mga#8484)
+
+Version 15.17 - 28 December 2012
+
+- do not bypass blkid cache
+- include kmod's modprobe
+- drakx-in-chroot:
+ o export blkid cache
+
+Version 15.16 - 28 December 2012
+
+- adapt to new help layout (mga#5634)
+
+Version 15.15 - 24 December 2012
+
+- drakx-in-chroot:
+ o add --strace option, enabling to pinpoint missing modules
+- include missing module for upcasing UTF-8 characters (mga#8475)
+- media step:
+ o prevent selecting an update medium without its parent medium
+
+Version 15.14 - 17 December 2012
+
+- ugtk2: use new exceptions management
+- fix installing grub2 from live session (blino)
+
+Version 15.13 - 15 December 2012
+
+- fix checking grub2 installation (mga#8390)
+
+Version 15.12 - 14 December 2012
+
+- "enhance" fake grub2 conf reading (mga#8366)
+- time steps in logs
+- media step:
+ o fix dialogs title
+ o show which media are disabled when offering to pick supplementary ones
+
+Version 15.11 - 13 December 2012
+
+- install grub2 if needed
+- media choice step:
+ o display tooltips describing media
+
+Version 15.10 - 11 December 2012
+
+- revert rosa crap that breaks generating initrd (mga#8357)
+
+Version 15.9 - 11 December 2012
+
+- fix network set up for adding network media if not up by stage1
+ (aka DVD/CD case, mga#8282)
+- partitioning:
+ o if a partition has been manually formated, don't offer to format
+ it again (mga#7822)
+
+Version 15.8 - 11 December 2012
+
+- fix installing basesystem prior to adding a supplementary network
+ medium
+
+Version 15.7 - 10 December 2012
+
+- media choice step:
+ o blacklist unwanted media instead of whitelisting wanted ones
+ (fix dual cd where media names are not the regular ones)
+ o no media is a critical error
+- updates step:
+ o add all media instead of only update ones (mga#7959)
+
+Version 15.6 - 10 December 2012
+
+- language choise:
+ o change title of of "Multiple languages" dialog box from "Please Choose A
+ Language To Use" to "Select Additional Languages" (mga#7648)
+- set font familly & size system wide, thus fixing font size in gurpmi
+ & release notes (mga#67)
+
+Version 15.5 - 10 December 2012
+
+- recognize new drivers:
+ o input: hid-sensor-hub
+ o PHY: at803x
+
+Version 15.4 - 9 December 2012
+
+- put grub-legacy before grub2
+
+Version 15.2 - 7 December 2012
+
+- add fake gru2 conf reading
+- skip media screen in auto install
+
+Version 15.1 - 7 December 2012
+
+- add basic support for grub2 (mga#416)
+ (based on rosa work but fixed and completed)
+
+Version 15.0 - 6 December 2012
+
+- enable to skip keyboard step with keyboard option
+- enable to enable other media
+ (such as 'nonfree', 'tainted' which are disabled by default)
+
+Version 14.52 - 4 December 2012
+
+- Mageia 3 beta 1 left background
+- fix missing command links (mga#8289)
+- fix initializing urpm object (mga#8160)
+- fix offering "selecting individual packages" when pressing "previous" after
+ selecting package groups
+
+Version 14.51 - 16 November 2012
+
+- retrieve package descriptions from XML meta-data instead of from huge hdlists
+ (fix not displaying packages description in network installs) (mga#549)
+- fix a crash when pressing "previous" after selecting package groups
+
+Version 14.50.1 - 15 November 2012
+
+- include Parse::EDID for monitor-parse-edid (mga#8076)
+
+Version 14.50 - 6 November 2012
+
+- prevent a horizontal scrollbar to appear in some dialogs (mga#7374)
+
+Version 14.49 - 3 November 2012
+
+- Mageia 3 alpha 3 banner
+- prefer real binaries over the lightweight perl wrappers
+- convert filesystem for usrmove during upgrades
+- show a 'please wait' dialog while processing usrmove
+
+Version 14.48 - 22 October 2012
+
+- fix detecting if udev is already running
+- include FIRMWARE packages from Cards+ in detected graphical drivers,
+ to install radeon-firmware during install (#6438, #7641)
+- properly generate stage2 with a usrmove-esque fs layout
+
+Version 14.47 - 12 October 2012
+
+- offer resizing NTFS again (broken by ntfsprogs -> ntfs-3g switch)
+
+Version 14.46.3 - 5 October 2012
+
+- load 'microcode' asynchronously, preventing big wait when not supported
+ (mga#7671)
+
+Version 14.46.2 - 3 October 2012
+
+- adapt to latest dash-static
+- fix comment in license text
+
+Version 14.46.1 - 2 October 2012
+
+- fix build with latest pango
+
+Version 14.46 - 27 September 2012
+
+- left background for Mageia 3 alpha 2
+
+Version 14.45 - 20 September 2012
+
+- load fuse module automatically when trying to mount NTFS-3G (mga#5685)
+
+Version 14.44.1 - 16 September 2012
+
+- add spacing between license paragraphs
+
+Version 14.44 - 14 September 2012
+
+- adapt to xserver 1.13
+- advertize new doc license & licenser (mga#7347)
+- install cpupower instead of cpufreq
+- package group selection:
+ o remove "select all" button (not as usefull as "unselect all" & it
+ takes too much place when translated)
+
+Version 14.43 - 4 September 2012
+
+- compress report with xz instead of gzip
+- fix crash when clicking previous in minimal install step (mga#7345)
+- include swaplabel (mga#7334)
+
+Version 14.42 - 4 September 2012
+
+- load 'aesni_intel' crypto module for newer Intel CPUs (mga#7333)
+- recognize new drivers:
+ o input: hid-aureal synaptics_usb
+ o wifi: qmi_wwan, mwifiex_usb
+
+Version 14.41 - 3 September 2012
+
+- include back Ia Ora files for matchbox (mga#6451)
+
+Version 14.40 - 3 September 2012
+
+- prevent going further if some transactions failed (mga#7016)
+- summary: fix displayed network type (mga#4959)
+
+Version 14.39 - 3 September 2012
+
+- rely on stage1 for mounting /dev
+
+Version 14.38 - 2 September 2012
+
+- Mageia 3 alpha 1 banner
+
+Version 14.37 - 1 September 2012
+
+- Fix prefix checking in foreign partition check (mkinitrd)
+- More logging on why initrd generation is skipped
+
+Version 14.36 - 30 August 2012
+
+- adapt to urpmi-7.5
+
+Version 14.35 - 30 August 2012
+
+- adapt to usbfs death
+
+Version 14.34 - 30 August 2012
+
+- adapt to perl-5.16.1
+- services:
+ o fix checking systemd presence after systemd merge of subpackages
+
+Version 14.32 - 28 July 2012
+
+- package group selection:
+ o add a scrollbar
+ (due to Oxygen theme eating more space than Ia Ora one)
+ o add "select all" & "unselect all" buttons
+- stop fixing the raid udev rule now that it has been fixed
+
+Version 14.31 - 24 July 2012
+
+- adapt to latest GDB
+- adapt to latest systemd/udevd
+- adapt to /usr move
+- nfs install: install nfs-utils instead of nfs-utils-clients
+ (#6570, merged back in nfs-utils)
+
+Version 14.30 - 23 June 2012
+
+- show all errors at once when setting media
+- fix settings 'suggests' properly according to 'no_suggests'
+ (aka default to suggests enabled)
+ regression intoduced in 14.23
+
+Version 14.29 - 17 June 2012
+
+- adapt to perl-URPM >= 4.2
+
+Version 14.28 - 11 June 2012
+
+- fix upgrade with rpm-4.10.0
+- really fix build with brltty-4.3
+
+Version 14.27 - 7 June 2012
+
+- debug mode:
+ o do not start udev twice
+ o just start the installer if one quits the shell
+ o spawn a shell like in regular mode
+- fix build with brltty-4.3
+
+Version 14.26 - 5 June 2012
+
+- fix detecting if Xorg started successfully
+
+Version 14.25 - 4 June 2012
+
+- fix fallbacking on curses install aka abort gtk install startup if X
+ failed to start
+- switch from Ia Ora to Oxygen Gtk theme
+- use proper design from original author
+
+Version 14.24 - 31 May 2012
+
+- adapt to latest xkb
+- fix build with perl-5.16.0
+
+Version 14.23.1 - 29 May 2012
+
+- include newly needed module
+
+Version 14.23 - 28 May 2012
+
+- do not create /dev/ entries created by udev
+- kill last remanents of kernel-2.4.x support
+- package group selection:
+ o remember minimal install values when clicking "previous"
+- packages installation:
+ o add support for 'justdb' option
+ o enable to go fast with 'tune-rpm'...
+- partitioning:
+ o first attempt at supporting XenBlk discs
+ o reduce blkid timeout to 30 seconds (mga#5979)
+- refactoring
+
+Version 14.22 - 15 May 2012
+
+- final banner
+- fix detecting if adding update media succeeded
+- authentication:
+ o don't update UsePAM option in sshd configuration
+
+Version 14.21 - 11 May 2012
+
+- export res_init function to perl lib
+
+Version 14.20.1 - 10 May 2012
+
+- drakx-in-chroot: unmount /dev in chroot
+
+Version 14.20 - 6 May 2012
+
+- bind mount /dev inside chroot rather than copy nodes (mga#5730)
+
+Version 14.19 - 3 May 2012
+
+- fix displaying urpmi fatal errors (mga#5725)
+
+Version 14.18 - 2 May 2012
+
+- add missing libfuse.so.2 for mount.ntfs-3g (#5685)
+
+Version 14.17 - 30 April 2012
+
+- fix noarch handling/search on 64bit as they're in 32 and 64 bit
+ media and in some cases it may return the not-installed rpm while the other is.
+- autoinstall:
+ o fix rebooting on autoinstall by using a "wider" regexp (otherwise udevd was
+ not found by fuzzy_pidofs) and gives some time to udevd process to disappear.
+ o don't try to unmount /dev as it's still used by other processes
+ o allow to set urpm curl options in order to be able to make curl quiet
+ when running an autoinstall in text mode. This can be set throught
+ the new option "curl_options" in the auto_inst file.
+ o use quiet mode by default when downloading VERSION and auto_inst file
+- partitioning:
+ o drop support for reiser4 (mga#5680)
+
+Version 14.16 - 29 April 2012
+
+- add btrfsck
+- partitioning:
+ o forbid having /boot as btrfs (mga#5627)
+
+Version 14.15 - 27 april 2012
+
+- partitioning:
+ o fix partitions not being shown after clicking on "Reload partition table"
+ (mga#3260)
+ o run udevadm in installer too
+ (might fix unnecessary reboot (mga#4439))
+
+Version 14.14 - 26 april 2012
+
+- Mageia 2 RC banner
+
+Version 14.13 - 25 April 2012
+
+- include needed symlinks for ndiswrapper (mdv#44416)
+
+Version 14.12 - 25 April 2012
+
+- update desktops images
+
+Version 14.11 - 25 April 2012
+
+- fix offering desktop choice (DVD has task-kde4-minimal instead of task-kde4)
+ (mga#5574)
+- partitioning:
+ o do not set fs_type to ext4 for raw LVM/RAID/LUKS
+ o detect LVM on top on Encrypted partitions (mga#5330)
+- services:
+ o systemd support (mga#3253, mga#3740, mga#4910, mga#5122)
+- partitioning wizard:
+ o fix removing several notebook pages
+ o reuse code from hd_gtk, fixes display of "Use free space" solution
+
+Version 14.10 - 23 April 2012
+
+- do not offer to upgrade mdv 201[1-9] (mga#5004)
+- do not try to update KDE3 to KDE4 anymore
+- individual package selection:
+ o fix a crash
+ o honor "no suggests" option (mga#3467)
+
+Version 14.9 - 23 April 2012
+
+- include missing perl modules (mga#5528)
+
+Version 14.8 - 20 April 2012
+
+- partitioning wizard:
+ o do not crash on selecting a RAID device
+ o fix displaying empty info about RAID devices
+ o fix listing RAID devices
+
+Version 14.7 - 19 April 2012
+
+- fix a crash when package state is empty (mga#5487)
+- fix not offering to upgrade RAID installs (mga#4902)
+ (udev was enabling RAIDs early but leaved them in inactive mode
+ due to not yet loaded personality modules)
+- when selecting where ro install bootloader, display mountpoint if
+ available, and size+fs_type if we have nothing (mga#5460)
+
+Version 14.6 - 18 April 2012
+
+- individual package selection:
+ o fix "invisible" lock icon (mga#5424)
+ o show again package descriptions (mga#549)
+- package installation:
+ o fix assuming "no" to continue on bad signatures once "do not ask
+ again" has been checked in
+ o offer to not ask again about missing packages
+ o unselect already suggested packages when performing a minimal
+ install if "no suggests" option was chosen (mga#5209)
+
+Version 14.5 - 12 April 2012
+
+- fix color for menu categories
+- add missing udev programs needed for persistant storage rules.
+
+Version 14.4 - 12 April 2012
+
+- fix quiet option for bootloader
+- install btrfs-progs if needed (mga#5274)
+- make sure ranges are always within limits in text mode (mga#646)
+- allow generation of host-only initrd during install
+- include persistant storage udev rules needed to see new uuids during install
+
+Version 14.3 - 7 April 2012
+
+- Mageia 2 beta 3 banner
+- diskdrake:
+ o fix partition numbering on GPT (mga#3091)
+
+Version 14.2 - 5 April 2012
+
+- add boot splash to initrd only once
+- log install settings (mga#3467 & mga#5209)
+- do not set security level to its own value on upgrade (mga#5147)
+- do not crash if msec isn't installed
+- do not offer to select the security level in summary if msec is not installed
+- text installer:
+ o include "screen" terminfo (mga#4894)
+
+Version 14.1 - 23 March 2012
+
+- better "bootloader" message (mga#484)
+- fix displaying "Mageia" in some messages
+
+Version 14.0 - 13 March 2012
+
+- disk install: handle bogus ISOs when looking for install image (mga#4919)
+- step column: hide so called "bootlader" step since we do _not_ actually
+ install bootloader at this stage but later in summary (mga#484)
+- make "Preparing bootloader" less intimidating (mga#484)
+
+Version 13.95 - 13 March 2012
+
+- recognize more HID drivers (mga#4905)
+
+Version 13.94 - 13 March 2012
+
+- actually use new installer help
+
+Version 13.93 - 12 March 2012
+
+- recognize c67x00, imx21-hcd, fhci, isp1362-hcd, oxu210hp-hcd & renesas-usbhs
+ USB host drivers (mga#4905)
+- use lxdm for LXDE
+
+Version 13.92 - 11 March 2012
+
+- explain why acpi, acpid & mageia-gfxboot-theme packages are selected
+- install more packages earlier (shorewall & mandi), preventing useless
+ installing steps later at summary stage
+- partitioning:
+ o fix error on removing LVs
+ o fix resizing LVs (mga#4666)
+
+Version 13.91.1 - 08 March 2012
+
+- add a wrapper for running GDB in installer a simpler way
+
+Version 13.91 - 08 March 2012
+
+- Mageia 2 beta 2 banner
+- summary:
+ o list mandi with iptables* & shorewall in services
+ o list dm, mdadm, messagebus, microcode_ctl, netconsole & partmon services in system
+ o list network, network-auth, network-up & resolvconf into new 'networking' category
+- debug build:
+ o don't run directly stage2
+ o include busybox
+ o include needed python files for GDB
+ o start udev since we fork a shell prior to running stage2
+
+Version 13.90 - 06 March 2012
+
+- fix crashing if we failed to initialize Curses
+- fix double segfault when text installer fails to init
+- fix stopping udev
+- set geometry for text installer
+
+Version 13.89 - 02 March 2012
+
+- fix RAID udev rule
+
+Version 13.88 - 02 March 2012
+
+- install mdadm for fake RAID too (mga#4750)
+
+Version 13.87 - 01 March 2012
+
+- include more udev rules for RAID (mga#4750)
+
+Version 13.86 - 01 March 2012
+
+- include libdmraid-events-isw.so for dmraid (mga#4750)
+- tty stty are needed for text mode installer (mga#2038)
+
+Version 13.85 - 26 February 2012
+
+- load 'xts' module for crypted fses (Dave Hodgins, mga#3749)
+
+Version 13.84 - 24 February 2012
+
+- recognize more HID drivers (mga#4129)
+
+Version 13.83 - 19 February 2012
+
+- log more stuff regarding packages installation (mga#4565)
+
+Version 13.82 - 14 February 2012
+
+- Mageia 2 beta 1 banner
+
+Version 13.81 - 13 February 2012
+
+- diskdrake:
+ o use better cipher for encrypted fses (mga#3092)
+
+Version 13.80 - 26 January 2012
+
+- kill old gtk+ warnings that confuse people
+- include back urpmi translations
+- do not display errors when loading a driver that is already loaded (mga#1146)
+
+Version 13.78 - 24 January 2012
+
+- log packages selected b/c of HW, fs, install method, ...
+- summary:
+ o list shorewall with iptables* in services
+- diskdrake:
+ o better default name for new VG (vg-mga, vg-mga1, ...
+ instead of vg-0, vg-1, ...)
+
+Version 13.77 - 23 January 2012
+
+- diskdrake:
+ o allow using nilfs2 during install
+ o enable to set label on btrfs & nilfs fses as well as on swap
+ o preserve UUID when reformatting a nilfs fs
+- do not install shorewall & mandi if firefwall is not configured
+
+Version 13.76 - 20 January 2012
+
+- add support for XZ modules
+- faster & safer waiting for end of USB modules
+- include gtk20 translations (caps lock & the like)
+- diskdrake:
+ o enable to set LV names when not in expert mode
+ o report back error from lvm2
+ o suggest better LV names based on the mount point rather than numbers
+
+Version 13.75.1 - 19 January 2012
+
+- fix mounting /dev/pts & /dev/shm
+- include DM/MD udev rules so that install on LVM works again
+- drakx-in-chroot:
+ o add support for --gdb
+
+Version 13.75 - 29 December 2011
+
+- stop udev at end of install
+- Mageia 2 Alpha 3 banner
+
+Version 13.74.1 - 29 December 2011
+
+- rebuild with updated list_modules.pm for kernel-3.2.0-0.rc7.2.mga2
+
+Version 13.74 - 24 December 2011
+
+- use udev
+- call udevadm in installer too
+- do not hardcode systemd default through kernel command line, it
+ should be easily overridable by just picking the proper init package
+- include xfs_freeze (needed for setup grub on XFS, mga#1536)
+- interactive::curses: default to 80x25 (fixes serial)
+
+Version 13.73 - 11 December 2011
+
+- Mageia 2 Alpha 2 banner
+
+Version 13.69 - 14 November 2011
+
+- fix testing network (missing Net::Ping)
+
+Version 13.68 - 10 November 2011
+
+- Mageia 2 Alpha 1 banner
+
+Version 13.67 - 07 November 2011
+
+- Add initial systemd support
+
+Version 13.66 - 20 October 2011
+
+- fix missing "Mageia" instances
+- include png loader from gdk_pixbuf2.0_0-loaders-png15
+
+Version 13.65 - 19 September 2011
+
+- only favor packages with mga extension, we don't have packages with mdv or
+ mnb in release tag
+- always favor packages with 'mga' extension when upgrading anything else
+ than Mageia
+- install perl-Hal-Cdroms for urpmi when needed
+- default to systemd (through "init=/bin/systemd")
+- offer not to ask again about bad signatures
+
+Version 13.64 - 08 September 2011
+
+- install more packages earlier (acpi{,d}, dhcp client, firewall & bootloader
+ stuff), preventing useless installing steps later at summary stage & also
+ fixing "program not found: grub-gfxmenu" error message while installing
+- only retrieve release notes once during installation
+- util-linux-ng was renamed util-linux (fix installation error)
+
+Version 13.63 - 07 September 2011
+
+- better microcode_ctl management
+- fix cpufreq detection corrupting other types
+- install cpufreq on more cases
+
+Version 13.62 - 22 August 2011
+
+- always align partitions to start at megabyte boundaries to avoid
+ performance issues with drives with 4k physical sectors (mga#1215)
+- add support to detect if CPU microcode is upgradable in order to
+ install microcode_ctl
+
+Version 13.61.1 - 05 August 2011
+
+- do not crash if there's no mirror cache to erase
+- "Multi languages" => "Multiple languages" (mga#1011)
+
+Version 13.61 - 01 August 2011
+
+- clear the mirror cache before upgrading (#1557)
+- fix bootloader entries names
+- fix build with perl-5.14.x
+- detect (at least some (eg: Compaq USB numpad) (#1099)
+- detect machines needing cpufreq
+- spaces are not allowed between options in /etc/fstab (#2271)
+
+Version 13.58 - 27 May 2011
+
+- fix default level being 'standard' when /etc/security/msec/security.conf
+ doesn't containt BASE_LEVEL
+ (broken since msec config file format was gratuitously changed)
+
+Version 13.57 - 25 May 2011
+
+- update translations
+- update design for final release
+
+Version 13.56 - 24 May 2011
+
+- forbid selecting kernel-server if not having PAE since PAE support is
+ mandatory for kernel-server (#1414)
+
+Version 13.54 - 19 May 2011
+
+- advertize LibreOffice instead of OpenOffice.org (mga#1323)
+- fix build with brltty-4.2-1.mga1
+- fix reading security level with new msec (mga#332)
+
+Version 13.53 - 16 May 2011
+
+- left background for RC
+
+Version 13.52 - 14 May 2011
+
+- disable encryption option for /boot
+- match partitions when one of them as device_alias to the device of the other one
+
+Version 13.50 - 06 May 2011
+
+- use proper locales-XX packages for Albanian (#1036)
+
+Version 13.49 - 25 May 2011
+- add nokmsboot boot option also if the bootloader is installed after setting
+ up a conflicting display driver (e.g. draklive-install)
+- embed more of unicore, fixes \d on strings collected from Gtk2 (#39)
+- add sdhci-pci to card-reader list
+- add xhci-hcd (usb3 support)
+
+Version 13.47
+- update modules list needed for md raid456 and dm-raid 4/5/6 target
+
+Version 13.46
+
+- new design for beta1
+- update temporary piece of design
+
+Version 13.45
+
+- fix incorrect meta-task directory, it should be an svn:externals
+- switch from scim to ibus
+
+Version 13.44
+
+- clean installer design for Mageia
+
+Version 13.43
+
+- handle new drivers:
+ o ethernet: cx82310_eth
+ o 10g ethernet: bna, pch_gbe, stmmac
+ o modem: ft1000
+ o usb storage: keucr, uas
+ o wifi: ath6kl, bcm_wimax, brcm80211, carl9170, r8712u
+
+Version 13.42
+
+- alpha1 banner
+
+Version 13.41
+
+- correct licence management and remove Google one
+
+Version 13.40
+
+- new version for Mageia
+- fix building with new libX11
+- fix building with xserver-1.9
+- include missing perl modules (#60720)
+
+Version 13.39 - 5 August 2010
+
+- adapt to gtk and gdk change in 2.22
+- adapt to perl-5.12
+
+Version 13.38 - 2 July 2010
+
+- create symlink for /etc/pki to have it usable in stage2
+
+Version 13.37 - 2 July 2010
+
+- accept https URL in install::http
+- include ca-bundle.crt
+
+Version 13.36 - 30 June 2010
+
+- final banner
+
+Version 13.35 - 22 June 2010
+
+- user management: focus on first entry in dialog, root password if
+ superuser is asked, user real name otherwise (#54910)
+- auto_install: when distrib media contains selected_names list, apply
+ it only to the concerned media, and not to previously added media
+
+Version 13.33 - 4 June 2010
+
+- lookup major:minor of devices outside $::prefix
+- display lock icon for not enabled dmcrypt too
+- disable dmcrypt before deleting partition, evin if inside lvm/raid
+- don't crash when starting stage2 with an RTL locale
+- fix loading of btrfs module
+
+Version 13.32 - 2 June 2010
+
+- copy all devices to target
+
+Version 13.31 - 28 May 2010
+
+- update banner to RC2
+- don't lose mountpoint if suggested partition was swap (#59510)
+
+Version 13.30 - 26 May 2010
+
+- final banner
+
+Version 13.29 - 24 June 2010
+
+- fix detection of /var partition
+- force raid metadata to be 0.90 if /boot is on raid 1
+- fix raid 0 to be handled as raid
+
+Version 13.27 - 18 May 2010
+
+- always set resume= when a swap is available, regardless of its size (#34681)
+- update banner
+
+Version 13.26 - 17 May 2010
+
+- enable acl by default on ext2/3/4 fs
+- enable user_xattr on home for ext2 too
+- allow setting acl option in diskdrake
+- default to defaultFS in LVM, not ext2
+- don't ask to reboot after resize if not needed
+- do not ask to reboot after resizing LUKS if not mounted
+- workaround mapper/* being symlinks in dmraid support
+
+Version 13.24 - 9 May 2010
+
+- include btrfs and crc32c modules in install (#59068)
+- include /etc/netconfig (needed by mount.nfs)
+- diskdrake:
+ o fix the crypto mountpoint checks for the create case
+ o fix resize of active encrypted volumes
+
+Version 13.22 - 29 April 2010
+
+- diskdrake:
+ o correctly set mountpoint on included partition, not encrypted one
+ o refuse to have /boot encrypted
+ o enable gtk-button-images to have the lock displayed during install
+
+Version 13.21 - 27 April 2010
+
+- diskdrake:
+ o allow resizing empty FAT (#58770)
+ o offer encryption in a more visible way when creating a partition
+ o remove cryptoloop from diskdrake interface and transparently use dm-crypt
+ o support having dm-crypt partition with non default FS
+ o do not display dm-crypt partitions in separate tab, display included
+ partition directly in-place
+ o do not warn about data loss when changing type of unformatted partition
+ o display lock icon on encrypted partitions
+ o fix loading of dmcrypt info now that /dev/mapper/* are symlinks
+ o fix creating encrypted LVM
+- install plymouth if / is encrypted, to ask for password
+- beta2 banner
+
+Version 13.19 - 14 April 2010
+
+- detect "Rack Mount" Chassis as server
+- diskdrake:
+ o use device label even if it was not changed (#47456)
+ o allow creating and resizing btrfs
+
+Version 13.18 - 2 April 2010
+
+- compute dependencies on full list of packages from rpmsrate levels instead
+ of doing it individually. This avoids getting kdm in GNOME install.
+
+Version 13.17 - 31 March 2010
+
+- services management:
+ o translate more service descriptions (#46640)
+- detect "Rack Mount" Chassis as server
+- use device label even if it was not changed (#47456)
+
+Version 13.16 - 19 March 2010
+
+- bootloader:
+ o do not apply bootloader settings before giving user the option to change
+ them (#57471)
+
+Version 13.15 - 17 March 2010
+
+- summary:
+ o enhanced services status message (#58194)
+
+Version 13.14 - 3 March 2010
+
+- devices:
+ o handle creation of mmcblk devices (useful on Efika MX)
+- alpha3
+
+Version 13.13 - 28 February 2010
+
+- handle new SCSI driver: mpt2sas (#57833)
+- detect_devices:
+ o fix merging PCI devices info from sysfs which resulted in
+ ill-informed devices matching (#57711)
+
+Version 13.11 - 10 February 2010
+
+- add support for asturian (#56990)
+- partitioning wizard:
+ o display lvm/dmraid name in combo box
+ o allow reusing existing partitions in lvm
+ o fix a crash on empty disk
+ o fix using empty dmraid
+- drakboot:
+ o fix crypted password detection
+ o fix invocation of grub-md5-crypt from within installer (#57461)
+
+Version 13.10 - 4 February 2010
+
+- handle new drivers:
+ o ATA: pata_atp867x, pata_piccolo, pata_rdc
+ o DVB: dvb-usb-ec168, dvb-usb-friio, earth-pt1
+ o ISDN: avmfritz, mISDNinfineon, netjet, speedfax, w6692
+ o network: vmxnet3
+ o radio: radio-miropcm20, radio-usb-si470x
+ o RAID: 3w-sas, hpsa, pmcraid
+ o SCSI: be2iscsi, bfa, pm8001, vmw_pvscsi
+ o TV: cx25821, saa7164
+ o wifi: r8187se, r8192_pci, r8192u_usb, rt2800pci, vt6655_stage, vt6656_stage
+- bootloader configuration:
+ o add support for crypted grub passwords
+ o always display security settings
+ o allow timeout to be '0'
+ o default to always crypt grub passwords
+ o ensure /boot/grub/menu.lst permissions are 0600 since it can
+ contains a password
+- partitioning wizard:
+ o offer to install on dmraid (instead of crashing if no other disk)
+ o offer to install on existing lvm
+
+Version 13.8 - 3 February 2010
+
+- fixed logo
+
+Version 13.7 - 2 February 2010
+
+- alpha2 logo
+
+Version 13.6 - 1 February 2010
+
+- do not ask for bootloader location (still available in summary)
+- try to get better initial estimation of install time
+- fix bootloader entry name for rc kernels
+- remove mnb from bootloader entry name like we do for mdv
+- support ddf1 dmraid
+
+Version 13.4 - 7 January 2010
+
+- alpha1 logo
+- detect_devices:
+ o fix detecting pcmcia serial devices
+
+Version 13.3 - 21 December 2009
+
+- mount points: reset unknown partitions types to default
+ fs (ext4) instead of hardcoded ext3
+- diskdrake: show Ext4 instead of Ext3 in the gtk filesystems button box
+- include /usr/share/X11/xkb/rules/base.lst (do we need xorg.* ?)
+
+Version 13.2 - 14 December 2009
+
+- fix creating devices
+ (really "fix handling hdX/sdX devices (#53107)")
+
+Version 13.1 - 10 December 2009
+
+- fix crash introduced by 'do not stay chdired in /mnt/var/cache/urpmi'
+- locale setting
+ o drop support for configuring KDE3
+ o fix configuring ibus (#56130, #56311)
+ o install 'ibus-qt4' if configuring ibus under KDE4 (#56311)
+- partitioning wizard:
+ o fix setting volume label instead of MBR's one for FAT fses (#52853)
+
+Version 13.0 - 1 December 2009
+
+- do not offer to upgrade/install in restore mode
+- fix detecting hidden partitions as recovery
+- allow to convert ext2/3 to ext4 but do not enable flags
+- fix using stdin and stdout in builtin dd command
+- devices detection:
+ o fix reading USB details (#55690)
+ o fix SCSI driver module name
+- partitioning wizard:
+ o unmount swap too when unmounting all partitions
+ o do not suggest Windows mountpoint for mounted partitions
+ (breaks install if the Win partition is the installer media)
+ o suggest non-removable disks first
+- do not stay chdired in /mnt/var/cache/urpmi when download fails
+ (workaround urpmi bug)
+- bootloader:
+ o do not add removable drives as "Windows" entry in bootloader
+- fix adding additional media with type media_cfg (for auto_install)
+
+Version 12.77 - 30 October 2009
+
+- fallback on most generic kernel if the suitable one is not available
+ (only kernel-desktop586-latest is available on Dual ISO for i586)
+
+Version 12.76 - 30 October 2009
+
+- test existence of /usr/share/bootsplash/scripts/make-boot-splash
+ file instead of install status of bootsplash package to enable vga
+ in bootloader
+ (package check is not working during upgrade on x86_64)
+
+Version 12.75 - 30 October 2009
+
+- bootloader suggestion fixes (to fix removal of vga= option when
+ updating with the installer):
+ o make sure we use long name when adding second kernel with same
+ extension than preferred one
+ o do not add again kernels that are already in bootloader config file
+ o add vga= option for kernels that are not the preferred one as well
+ o remove previous linux-nonfb entries (like done for failsafe),
+ not to add them twice or more
+
+Version 12.74.1 - 29 October 2009
+
+- disable X11 support for dpms
+
+Version 12.74 - 28 October 2009
+
+- partitioning wizard (Windows resize):
+ o fix partition size computing (fixing pixel/sectors ratio)
+ o improve default resizing suggestion:
+ * try to keep at least 1GB free for Windows
+ * try to use from 6GB to 10% free space for Linux
+ o use same windows partition size suggestion for gtk and text installs
+ o really ensure keeping free space for Linux partition
+ o really ensure keeping free space for Windows partition
+
+Version 12.73 - 28 October 2009
+
+- final banner for 2010
+
+Version 12.72 - 27 October 2009
+
+- fix ftp URL parsing when using user + pass (#49898)
+
+Version 12.71 - 23 October 2009
+
+- minimal install: install packages with higher rpmsrate level only
+ (level 5, and not level 4 + 5) when suggests are disabled
+ (it was only done for truly minimal install before)
+- cpufreq: load e_powersaver for VIA C7 (#41377)
+
+Version 12.70 - 22 October 2009
+
+- curses backend: do not crash when resuming interface
+- minimal install: install packages with higher rpmsrate level only
+ (level 5, and not level 4 + 5)
+
+Version 12.69 - 21 October 2009
+
+- user management:
+ o enable to install/deinstall xguest
+
+Version 12.68 - 19 October 2009
+
+- fix raid initialisation during install (#54706)
+- fix raid detection during install (#54706)
+- allow to set preferred packages list in auto_install
+ (comma-separated list in $o->{preferred_packages})
+- partitioning wizard:
+ o use mandriva logo on blue background for mandriva partition
+ o fix option selection when using keyboard
+
+Version 12.67 - 18 October 2009
+
+- partitioning wizard:
+ o use a different color for newly created partition
+ o add legend for the colors
+ o display mount point if known
+ o display ext2 like ext3/4
+ o allow setting new windows size with keyboard (#54691)
+ o use available space
+
+Version 12.66 - 15 October 2009
+
+- mount windows partitions under /media instead of /mnt (#53392)
+- partitioning wizard:
+ o initialize correctly labels for windows resizing
+ o fix labels for windows resizing when getting back to the screen
+ o offer to resize last big enough windows partition instead
+ of the first one, until user can chose
+
+Version 12.65 - 14 October 2009
+
+- do not call obsolete Xconfig::default::config_keyboard function (#54541)
+- improve button layout while installing
+- partitioning wizard:
+ o allow using existing partition on all disks (#54478)
+ o reduce drawings height
+ o fix windows resize width
+- make sure suggests are disabled in truly minimal install
+- do not attempt to configure autologin if CAT_X is not selected
+- use UTF-8 for zh_TW (#53976)
+- enable using newly created raid devices (#54295)
+
+Version 12.64 - 12 October 2009
+
+- partitioning wizard:
+ o put back "previous" button on actions (#54475)
+ o fix typo in message
+ o fix testing interactive::gtk in standalone mode
+ o fix displaying help
+
+Version 12.63 - 9 October 2009
+
+- bootloader configuration:
+ o fix displaying arrows
+
+Version 12.62 - 9 October 2009
+
+- autologin/desktop configuration (shared code):
+ o fix guessing dm name from lookupdm
+ o abort configuration if dm install fails
+
+Version 12.61 - 8 October 2009
+
+- partitioning_wizard:
+ o do not fail when a windows partition is corrupted
+ o add separator between solutions
+ o give more space between header and solutions
+ o prevent cursor to go under needed size because of rounding
+ o chose windows resizing when clicking on the resize handle (not perfect)
+ o improve resizing captions layout
+- autologin/desktop configuration (shared code):
+ o fix /etc/X11/lookupdm usage during install (for default dm selection)
+ o use gdm for xfce4 and LXDE
+
+Version 12.60.1 - 7 October 2009
+
+- use FileHandle before XML::Parser, else XML::Parser breaks if
+ File::Sync is used...
+- include File::Sync in install
+
+Version 12.60 - 7 October 2009
+
+- RC2 banner
+
+Version 12.59 - 07 October 2009
+
+- do not set mountpoints for rescue partitions (#53504)
+- switch to ext4 by default
+
+Version 12.58 - 05 October 2009
+
+- better describe what usernames we allow (#44783)
+- rewrite partitioning wizard to look better in gtk (not perfect yet)
+
+Version 12.54 - 23 September 2009
+
+- autologin/desktop configuration (shared code):
+ o when detecting default desktop, use first session
+ (instead of using hacks with dm config files)
+ o guess display manager from /etc/sysconfig/desktop,
+ or default session, or /etc/X11/lookupdm
+ o read autologin settings from /etc/sysconfig/autologin as fallback
+ o read kdm config file only if kdm is to be used
+ o always ensure dm is installed before configuring autologin/desktop
+ o test display manager instead of desktop when configuring autologin
+ o always write /etc/sysconfig/desktop
+ o write DISPLAYMANAGER in /etc/sysconfig/desktop too
+ o only write dm conf files if they exist before
+- autologin/desktop configuration (installer specific):
+ o allow to specify display manager in $o->{dm}
+ o use shared code to read autologin settings (and thus get default dm)
+
+Version 12.53 - 22 September 2009
+
+- include usb.ids
+- don't consider lvm named md* as raid (#53767)
+- allow resizing ext4
+
+Version 12.52 - 15 September 2009
+
+- RC1 logo
- allow to set preferred kernel extension in $o->{kernel_extension}
Version 12.49 - 8 September 2009
@@ -114,7 +3275,7 @@ Version 12.33 - 23 April 2009
Version 12.32 - 23 April 2009
- fix cdrom path in urpmi.cfg for dual arch ISOs
-- advanced partitionning step:
+- advanced partitioning step:
o fix displaying help at install time
Version 12.31 - 22 April 2009
@@ -135,7 +3296,7 @@ Version 12.30 - 21 April 2009
to kde4 upgrade is now done
- fix checking for kde3 (which is now in /opt)
- diskdrake:
- o display a progress bar while formating an ext4 partition
+ o display a progress bar while formatting an ext4 partition
o do not run udevadm in install mode
o render ext4 partition as red like ext3 ones
@@ -463,7 +3624,7 @@ Version 11.77 - 15 January 2008
Version 11.76 - 18 December 2008
-- partitionning:
+- partitioning:
o use sysfs in order to discover major/minor for SCSI like devices
since they're dynamic with kernel-2.6.28+
- adapt to cooker: librpm4.6 uses libnss3 which needs its modules
@@ -474,7 +3635,7 @@ Version 11.75 - 17 December 2008
(since the default in xorg has changed)
- handle new driver:
o network: sxg, w35und
-- partitionning:
+- partitioning:
o kernel-2.6.28+ supports more than 15 partitions on SATA & SCSI devices
Version 11.74 - 16 December 2008
@@ -638,7 +3799,7 @@ Version 11.47 - 17 September 2008
- handle new driver:
o ethernet: jme
-- partitionning step
+- partitioning step
o handle partitions encrypted with cryptsetup
o fix file system type drop down list showing most types as "..." in
"Change partition type" dialog in expert mode due to ellipsizing
@@ -666,7 +3827,7 @@ Version 11.43 - 16 September 2008
- fix displaying current security level in GUI
(regression introduced on 2008-08-29)
- increase default window height b/c of package selection step
-- refresh partitionning step
+- refresh partitioning step
- size most labels (workaround infamous 6 years old gnome bug #101968)
(eg: in advanced language selection)
- update icons for packages/services selection
@@ -718,7 +3879,7 @@ Version 11.38 - 8 September 2008
- do not size radio button that have a label thus preventing uneeded horizontal
scrollbars to appear
-- partitionning step
+- partitioning step
o fix file system type drop down list showing most types as "..." in expert
mode due to ellipsizing (#43611)
o fix too large partition bar (#43073)
@@ -767,7 +3928,7 @@ Version 11.30 - 1 September 2008
- fix alignment of check buttons
- fix size of right aligned labels
- fix sizing radio buttons' labels (infamous 6 years old gnome bug #101968)
-- further improvements to the "bootloader", "desktop" & "partitionning" steps
+- further improvements to the "bootloader", "desktop" & "partitioning" steps
- prevent big combo boxes to cause an horizontall scrollbar to appear by
using the "ellipsize" property
- remove "Generate auto install floppy" & "Save packages selection"
@@ -836,7 +3997,7 @@ Version 11.21 - 21 August 2008
box in english lang (#41103)
- do not set $HOME while installing packages (#18088)
- install proper qtX package for gcin
-- partitionning step
+- partitioning step
o ensure we initialize only once but at least one, thus fixing crash
when embedded or in installer (#43011)
diff --git a/perl-install/install/any.pm b/perl-install/install/any.pm
index ea31266ba..4ea2ce45d 100644
--- a/perl-install/install/any.pm
+++ b/perl-install/install/any.pm
@@ -1,4 +1,4 @@
-package install::any; # $Id$
+package install::any;
use strict;
@@ -8,6 +8,7 @@ our @EXPORT_OK = qw(addToBeDone);
#-######################################################################################
#- misc imports
#-######################################################################################
+use feature 'state';
use common;
use run_program;
use fs::type;
@@ -22,8 +23,24 @@ use lang;
use any;
use log;
+=head1 SYNOPSYS
+
+Misc installer specific functions
+
+=head1 Functions
+
+=over
+
+=cut
+
our @advertising_images;
+=item drakx_version($o)
+
+Returns DrakX version as stored in C<install/stage2/VERSION> file
+
+=cut
+
sub drakx_version {
my ($o) = @_;
@@ -38,13 +55,25 @@ sub dont_run_directly_stage2() {
readlink("/usr/bin/runinstall2") eq "runinstall2.sh";
}
+=item is_network_install($o)
+
+Is it a network install?
+
+=cut
+
sub is_network_install {
my ($o) = @_;
member($o->{method}, qw(ftp http nfs));
}
+=item spawnShell()
+
+Starts a shell on tty2
+
+=cut
+
sub spawnShell() {
- return if $::local_install || $::testing || dont_run_directly_stage2();
+ return if $::local_install || $::testing;
my $shellpid_file = '/var/run/drakx_shell.pid';
return if -e $shellpid_file && -d '/proc/' . chomp_(cat_($shellpid_file));
@@ -54,7 +83,8 @@ sub spawnShell() {
return;
}
- $ENV{DISPLAY} ||= ":0"; #- why not :pp
+ #- why not :pp
+ $ENV{DISPLAY} ||= ":0" if $::o->{interactive} eq "gtk";
local *F;
sysopen F, "/dev/tty2", 2 or log::l("cannot open /dev/tty2 -- no shell will be provided: $!"), goto cant_spawn;
@@ -82,6 +112,12 @@ cant_spawn:
c::_exit(1);
}
+=item getAvailableSpace($o)
+
+Returns available space
+
+=cut
+
sub getAvailableSpace {
my ($o) = @_;
fs::any::getAvailableSpace($o->{fstab});
@@ -91,7 +127,7 @@ sub preConfigureTimezone {
my ($o) = @_;
require timezone;
- #- can not be done in install cuz' timeconfig %post creates funny things
+ #- cannot be done in install cuz' timeconfig %post creates funny things
add2hash($o->{timezone}, timezone::read()) if $o->{isUpgrade};
$o->{timezone}{timezone} ||= timezone::bestTimezone($o->{locale}{country});
@@ -99,8 +135,29 @@ sub preConfigureTimezone {
my $utc = every { !isFat_or_NTFS($_) } @{$o->{fstab}};
my $ntp = timezone::ntp_server();
add2hash_($o->{timezone}, { UTC => $utc, ntp => $ntp });
+
+ #- Make the timezone available to urpm::mirrors.
+ write_installer_timezone($o->{timezone});
}
+=item write_installer_timezone($timezone)
+
+Writes a minimal version of $timezone to /etc/sysconfig/clock for use by urpm::mirrors
+
+=cut
+
+sub write_installer_timezone {
+ my ($timezone) = @_;
+ mkdir_p('/etc/sysconfig/');
+ setVarsInSh('/etc/sysconfig/clock', { ZONE => $timezone->{timezone} });
+}
+
+=item ask_suppl_media_method($o)
+
+Enables to add supplementary media
+
+=cut
+
sub ask_suppl_media_method {
my ($o) = @_;
our $suppl_already_asked;
@@ -113,18 +170,18 @@ sub ask_suppl_media_method {
Do you have a supplementary installation medium to configure?",
- "\n\n\n" . join(",\n\n", map { "- $_->{name}" } install::media::allMediums($o->{packages}))));
+ "\n\n\n" . join(",\n\n", map { "- $_->{name}" . ($_->{ignore} ? " (disabled)" : '') } install::media::allMediums($o->{packages}))));
my %l = my @l = (
'' => N("None"),
- 'cdrom' => N("CD-ROM"),
'http' => N("Network (HTTP)"),
'ftp' => N("Network (FTP)"),
'nfs' => N("Network (NFS)"),
);
- $o->ask_from(
- '', $msg,
+ $o->ask_from_({ messages => $msg,
+ interactive_help_id => 'add_supplemental_media',
+ },
[ {
val => \my $suppl,
list => [ map { $_->[0] } group_by2(@l) ],
@@ -137,8 +194,13 @@ Do you have a supplementary installation medium to configure?",
$suppl;
}
-#- if the supplementary media is networked, but not the main one, network
-#- support must be installed and network started.
+=item prep_net_suppl_media($o)
+
+If the supplementary media is networked, but not the main one, network
+support must be installed and network started.
+
+=cut
+
sub prep_net_suppl_media {
my ($o) = @_;
@@ -146,11 +208,16 @@ sub prep_net_suppl_media {
return if our $net_suppl_media_configured && network::tools::has_network_connection();
$net_suppl_media_configured = 1;
- # needed so that one can install basesystem before adding suppl network media:
- install::media::configure_media($o->{packages});
- #- install basesystem now
- $o->do_pkgs->ensure_is_installed('basesystem', undef, 1);
+ # needed so that one can install basesystem-minimal before adding suppl network media:
+ install::media::update_media($o->{packages});
+ require urpm::media;
+ urpm::media::configure($o->{packages});
+ #- install basesystem-minimal now
+ $o->do_pkgs->ensure_is_installed('basesystem-minimal', undef, 1);
+
+ # in case of no network install:
+ $o->{net} ||= {};
require network::netconnect;
network::netconnect::real_main($o->{net}, $o, $o->{modules_conf});
require install::interactive;
@@ -158,69 +225,14 @@ sub prep_net_suppl_media {
sleep(3);
}
-sub ask_url {
- my ($in, $o_url) = @_;
-
- my $url = $o_url;
- $in->ask_from_({ messages => N("URL of the mirror?"), focus_first => 1 }, [
- { val => \$url,
- validate => sub {
- if ($url =~ m!^(http|ftp)://!) {
- 1;
- } else {
- $in->ask_warn('', N("URL must start with ftp:// or http://"));
- 0;
- }
- } } ]) && $url;
-}
-sub ask_mirror {
- my ($o, $type, $o_url) = @_;
-
- require mirror;
-
- my $mirrors = eval {
- my $_w = $o->wait_message('', N("Contacting Mandriva Linux web site to get the list of available mirrors..."));
- mirror::list($o->{product_id}, $type);
- };
- my $err = $@;
- if (!$mirrors) {
- $o->ask_warn('', N("Failed contacting Mandriva Linux web site to get the list of available mirrors") . "\n$err");
- return ask_url($o, $o_url);
- }
-
- my $give_url = { country => '-', host => 'URL' };
-
- my $mirror = $o_url ? (find { $_->{url} eq $o_url } @$mirrors) || $give_url
- #- use current time zone to select best mirror
- : mirror::nearest($o->{timezone}{timezone}, $mirrors);
-
- $o->ask_from_({ messages => N("Choose a mirror from which to get the packages"),
- cancel => N("Cancel"),
- }, [ { separator => '|',
- format => \&mirror::mirror2text,
- list => [ @$mirrors, $give_url ],
- val => \$mirror,
- },
- ]) or return;
-
- my $url;
- if ($mirror eq $give_url) {
- $url = ask_url($o, $o_url) or goto &ask_mirror;
- } else {
- $url = $mirror->{url};
- }
- $url =~ s!/main/?$!!;
- log::l("chosen mirror: $url");
- $url;
-}
-
sub ask_suppl_media_url {
my ($o, $method, $o_url) = @_;
- if ($method eq 'ftp' || $method eq 'http') {
- install::any::ask_mirror($o, 'distrib', $o_url);
- } elsif ($method eq 'cdrom') {
- 'cdrom://';
+ if (member($method, qw(ftp http))) {
+ preConfigureTimezone($o);
+ any::ask_mirror_and_downloader($o, $o->{options}, 'downloader_only');
+ $o->{packages}{options}{downloader} = $o->{options}{downloader};
+ any::ask_mirror($o, 'distrib', $o_url);
} elsif ($method eq 'nfs') {
my ($host, $dir) = $o_url ? $o_url =~ m!nfs://(.*?)(/.*)! : ();
$o->ask_from_(
@@ -242,6 +254,14 @@ sub ask_suppl_media_url {
"nfs://$host$dir";
} else { internal_error("bad method $method") }
}
+
+
+=item selectSupplMedia($o)
+
+Offers to add a supplementary media. If yes, ask which mirror to use, ...
+
+=cut
+
sub selectSupplMedia {
my ($o) = @_;
my $url;
@@ -250,7 +270,7 @@ sub selectSupplMedia {
my $method = ask_suppl_media_method($o) or return;
#- configure network if needed
- if (!scalar keys %{$o->{net}{ifcfg}} && $method !~ /^(?:cdrom|disk)/ && !$::local_install) {
+ if (!scalar keys %{$o->{net}{ifcfg}} && $method !~ /^(?:disk)/ && !$::local_install) {
prep_net_suppl_media($o);
}
@@ -296,6 +316,15 @@ sub selectSupplMedia {
goto ask_url;
}
+=item load_rate_files($o)
+
+Loads the package rates file (C<rpmsrate>) as well as the C<compssUsers.pl>
+file which contains the package groups GUI.
+
+Both files came from the C<meta-task> package.
+
+=cut
+
sub load_rate_files {
my ($o) = @_;
#- must be done after getProvides
@@ -308,31 +337,241 @@ sub load_rate_files {
defined $o->{compssUsers} or die "Can't read compssUsers.pl file, aborting installation\n";
}
+sub _core_medium() { N("Core Release") }
+
+sub _tainted_medium() { N("Tainted Release") }
+
+sub _nonfree_medium() { N("Nonfree Release") }
+
+# FIXME: move me in ../any.pm or in harddrake::*, might be needed by rpmdrake/harddrake:
+sub is_firmware_needed_ {
+ my ($o) = @_;
+ require list_firmwares;
+ my @l = map { $_->{driver} } detect_devices::probeall();
+ my @need = intersection(\@l, \@list_firmwares::modules_with_nonfree_firmware);
+ log::l("the following driver(s) need nonfree firmware(s): " . join(', ', @need)) if @need;
+
+ require pkgs;
+ my @xpkgs = pkgs::detect_graphical_drivers($o->do_pkgs, undef, 'firmware-only');
+ log::l("the following nonfree firmware(s) are needed for X.org: " . join(', ', @xpkgs)) if @xpkgs;
+
+ my $need_microcode = detect_devices::hasCPUMicrocode();
+ log::l("nonfree firmware is needed for the CPU (microcode)") if $need_microcode;
+
+ if_(@need, 'kernel-firmware-nonfree'), @xpkgs, if_($need_microcode, 'microcode');
+}
+
+=item is_firmware_needed($o)
+
+Is a firmware needed by some HW?
+
+=cut
+
+sub is_firmware_needed {
+ my ($o) = @_;
+ state $res;
+ $res = is_firmware_needed_($o) if !defined $res;
+ $res;
+}
+
+sub msg_if_firmware_needed {
+ my ($o) = @_;
+ return if !is_firmware_needed($o);
+ join("\n",
+ # FIXME: actually can be proprietary drivers (same medium eventually):
+ N("Some hardware on your machine needs some non free firmwares in order for the free software drivers to work."),
+ N("You should enable \"%s\"", _nonfree_medium()),
+ );
+}
+
+=item enable_nonfree_media($medium)
+
+Enable a disabled Nonfree medium.
+
+=cut
+
+sub enable_nonfree_media {
+ my ($medium) = @_;
+ return if $medium->{name} !~ /Nonfree/ || $medium->{name} =~ /32bit/ || !$medium->{ignore};
+ log::l("preselecting $medium->{name}");
+ $medium->{temp_enabled} = 1;
+}
+
+=item enable_core_32bit_media($medium)
+
+Enable a disabled Core 32bit medium.
+
+=cut
+
+sub enable_core_32bit_media {
+ my ($medium) = @_;
+ return if $medium->{name} !~ /Core/ || $medium->{name} !~ /32bit/ || !$medium->{ignore};
+ log::l("preselecting $medium->{name}");
+ $medium->{temp_enabled} = 1;
+}
+
+=item media_screen($o)
+
+Lists available media with their status (enabled/disabled).
+Suggests to enable Nonfree media if needed.
+
+=cut
+
+sub media_screen {
+ my ($o) = @_;
+
+ my $urpm = $o->{packages};
+ # FIXME:
+ # - nice info
+ # - ignore already failed media (such as 32bit media on NFS)
+ # - detect if non-free/tainted were selected previously / are now needed
+ # rpm -qa |grep tainted/non-free
+ # - use red color in that case (gtk+ version? interactive::gtk version?)
+ # - present media as trees (eg 3 main branches (core/nonfree/tainted and sub medium below (release/updates/...)
+ # - enable to add media from the media screen
+ # - introduce 'mandatory' keyword for guessing media that can *not* be disabled
+ my %descriptions = (
+ 'Core Release' => N("\"%s\" contains the various pieces of the systems and its applications", _core_medium()),
+ 'Nonfree Release' => N("\"%s\" contains non free software.\n", _nonfree_medium()) . " " .
+ N("It also contains firmwares needed for certain devices to operate (eg: some ATI/AMD graphic cards, some network cards, some RAID cards, ...)"),
+ 'Tainted Release' => N("\"%s\" contains software that can not be distributed in every country due to software patents.", _tainted_medium()) . " " .
+ N("It also contains software from \"%s\" rebuild with additional capabilities.", _core_medium()),
+ );
+
+ my $nonfree_is_needed = is_firmware_needed($o);
+
+ $o->ask_from_({ messages => join("\n",
+ N("Here you can enable more media if you want."),
+ msg_if_firmware_needed($o)
+ ),
+ interactive_help_id => 'media_selection',
+ focus_first => sub { 1 } }, [
+ map {
+ my $medium = $_;
+ $medium->{temp_enabled} = !$medium->{ignore};
+ my $name = $medium->{name};
+ my ($distribconf, $medium_path) = @{$_->{mediacfg}};
+ my @media_types = split(':', $distribconf->getvalue($medium_path, 'media_type'));
+ my $parent = $distribconf->getvalue($distribconf->getvalue($medium_path, 'updates_for'), 'name');
+ my $non_regular_medium = intersection(\@media_types, [ qw(backports debug source testing) ]);
+ enable_nonfree_media($medium) if $nonfree_is_needed && !$non_regular_medium;
+ enable_core_32bit_media($medium) if arch() eq 'x86_64' && uefi_type() eq 'ia32' && !$non_regular_medium;
+ $non_regular_medium ? () :
+ +{
+ val => \$medium->{temp_enabled}, type => 'bool', text => $name,
+ help => $medium->{update} ? N("This medium provides package updates for medium \"%s\"", $parent) : $descriptions{$name},
+ # 'Core Release' cannot be unselected:
+ disabled => sub {
+ state $parent_media = $parent && urpm::media::name2medium($urpm, $parent);
+ $name =~ /^(?:Core|Main) Release$/ || $parent_media ? !$parent_media->{temp_enabled} : 0;
+ },
+ };
+ } @{$urpm->{media}},
+ ]);
+}
+
+sub enable_choosen_media {
+ my ($o) = @_;
+ my $urpm = $o->{packages};
+
+ # is there some media to enable?
+ my $todo;
+ foreach my $medium (@{$urpm->{media}}) {
+ if ($medium->{temp_enabled} == $medium->{ignore}) {
+ $medium->{ignore} = !$medium->{temp_enabled};
+ if (!$medium->{ignore}) {
+ delete $medium->{ignore};
+ log::l("Medium '$medium->{name}' needs to be updated to be usable");
+ urpm::media::select_media($urpm, $medium->{name});
+ $todo = 1;
+ }
+ }
+ delete $medium->{temp_enabled};
+ }
+ return if !$todo;
+ urpm::media::update_media($urpm, allow_failures => 1, nolock => 1, noclean => 1,
+ callback => \&urpm::download::sync_logger
+ );
+}
+
+=item setPackages($o)
+
+=over 4
+
+=item * Initialize urpmi
+
+=item * Retrieves media.cfg
+
+=item * Offers to add supplementary media (according to the install method)
+
+=item * Offers to enable some disabled media
+
+=item * Ensure we have a kernel and basesystem
+
+=item * Flags package rates
+
+=item * Select default packages according to the computer
+
+=back
+
+=cut
+
sub setPackages {
my ($o) = @_;
+ my $urpm;
require install::pkgs;
{
- $o->{packages} = install::pkgs::empty_packages($o->{keep_unrequested_dependencies});
+ #- clean shared regions very early
+ # (update_media will open rpmdb for listing existing pubkeys,
+ # which may fail when rpm version mistmatches between drakx & chrooted env)
+ install::pkgs::clean_rpmdb_shared_regions();
+ $urpm = $o->{packages} = install::pkgs::empty_packages($o->{keep_unrequested_dependencies});
my $media = $o->{media} || [ { type => 'media_cfg', url => 'drakx://media' } ];
+ my ($suppl_method, $copy_rpms_on_disk);
- my ($suppl_method, $copy_rpms_on_disk) = install::media::get_media($o, $media, $o->{packages});
+ {
+ install::pkgs::start_pushing_error();
+ ($suppl_method, $copy_rpms_on_disk) = install::media::get_media($o, $media, $urpm);
- if ($suppl_method) {
- 1 while $o->selectSupplMedia;
+ if ($suppl_method) {
+ 1 while $o->selectSupplMedia;
+ }
+ install::media::update_media($urpm);
+ install::pkgs::popup_errors();
}
- install::media::configure_media($o->{packages});
- install::media::adjust_paths_in_urpmi_cfg($o->{packages});
+ install::pkgs::start_pushing_error();
+
+ # in auto-install mode, we enforce selected media, else we respect media.cfg's default:
+ if ($::auto_install && !is_empty_array_ref($o->{enabled_media})) {
+ # respect enabled/disabled media selection:
+ foreach my $medium (@{$urpm->{media}}) {
+ $medium->{temp_enabled} = member($medium->{name}, @{$o->{enabled_media}});
+ }
+ }
+ media_screen($o) if !$::auto_install || member('chooseMedia', @{$::o->{interactiveSteps}});
+ enable_choosen_media($o);
+ my @choosen_media = map { $_->{name} } grep { !$_->{ignore} } @{$urpm->{media}};
+ log::l("choosen media: ", join(', ', @choosen_media));
+ die "no choosen media" if !@choosen_media;
+
+ # actually read synthesis now we have all the ones we want:
+ require urpm::media;
+ urpm::media::configure($urpm);
+
+ install::pkgs::popup_errors();
+
+ install::media::adjust_paths_in_urpmi_cfg($urpm);
log::l('urpmi completely set up');
#- open rpm db according to right mode needed
- $o->{packages}{rpmdb} ||= install::pkgs::rpmDbOpen('rebuild_if_needed');
+ $urpm->{rpmdb} ||= install::pkgs::rpmDbOpen('rebuild_if_needed');
{
my $_wait = $o->wait_message('', N("Looking at packages already installed..."));
- install::pkgs::selectPackagesAlreadyInstalled($o->{packages});
+ install::pkgs::selectPackagesAlreadyInstalled($urpm);
}
remove_package_for_upgrade($o);
@@ -341,15 +580,16 @@ sub setPackages {
#- always try to select basic kernel (else on upgrade, kernel will never be updated provided a kernel is already
#- installed and provides what is necessary).
- my $kernel_pkg = install::pkgs::bestKernelPackage($o->{packages}, $o->{match_all_hardware});
- install::pkgs::selectPackage($o->{packages}, $kernel_pkg, 1);
- if ($o->{isUpgrade} && $o->{packages}{sizes}{dkms}) {
- my $devel_kernel_pkg = "$1-devel-latest" if $kernel_pkg =~ /(.*)-latest/;
+ my $kernel_pkg = install::pkgs::bestKernelPackage($urpm, $o->{match_all_hardware});
+ install::pkgs::selectPackage($urpm, $kernel_pkg, 1);
+ if ($o->{isUpgrade} && $urpm->{sizes}{dkms} && $kernel_pkg =~ /(.*)-latest/) {
+ my $devel_kernel_pkg = "$1-devel-latest";
log::l("selecting $devel_kernel_pkg (since dkms was installed)");
- install::pkgs::select_by_package_names($o->{packages}, [ $devel_kernel_pkg], 1);
+ install::pkgs::select_by_package_names($urpm, [ $devel_kernel_pkg ], 1);
}
- install::pkgs::select_by_package_names_or_die($o->{packages}, ['basesystem'], 1);
+ install::pkgs::select_by_package_names_or_die($urpm, default_bootloader(), 1) if !$o->{isUpgrade} && !$o->{match_all_hardware};
+ install::pkgs::select_by_package_names_or_die($urpm, ['basesystem'], 1);
my $rpmsrate_flags_was_chosen = $o->{rpmsrate_flags_chosen};
@@ -365,18 +605,17 @@ sub setPackages {
}
if ($o->{isUpgrade}) {
- {
- my $_w = $o->wait_message('', N("Finding packages to upgrade..."));
- install::pkgs::selectPackagesToUpgrade($o->{packages});
- }
- if ($o->{packages}{sizes}{'kdebase-progs'}) {
- log::l("selecting task-kde (since kdebase-progs was installed)");
- install::pkgs::select_by_package_names($o->{packages}, ['task-kde']);
- }
- upgrade_kde3_to_kde4($o);
+ my $_w = $o->wait_message('', N("Finding packages to upgrade..."));
+ install::pkgs::selectPackagesToUpgrade($urpm);
}
}
+=item remove_package_for_upgrade($o)
+
+Removes packages that must be uninstalled prior to upgrade
+
+=cut
+
sub remove_package_for_upgrade {
my ($o) = @_;
my $extension = $o->{upgrade_by_removing_pkgs_matching};
@@ -399,15 +638,11 @@ sub remove_package_for_upgrade {
log::l("Removing packages took: ", formatTimeRaw(time() - $time));
}
-sub upgrade_kde3_to_kde4 {
- my ($o) = @_;
- if ((-e "$::prefix/usr/bin/kicker" || -e "$::prefix/opt/kde3/bin/kicker")
- && !install::pkgs::packageByName($o->{packages}, 'task-kde3')) {
- log::l("kde3 installed, but task-kde3 not available so can't upgrade correctly");
- log::l("ok, continuing anyway, but forcing install of task-kde4");
- install::pkgs::select_by_package_names($o->{packages}, ['task-kde4']);
- }
-}
+=item count_files($dir)
+
+Returns the number of files in $dir
+
+=cut
sub count_files {
my ($dir) = @_;
@@ -509,6 +744,7 @@ sub rpmsrate_always_flags {
log::l("activation light desktop mode (for low resources systems or netbook/nettops)");
$rpmsrate_flags_chosen->{LIGHT} = 1;
}
+ # FIXME: to be updated!!!
$rpmsrate_flags_chosen->{'3D'} = 1 if
$o->{match_all_hardware} ||
detect_devices::matching_desc__regexp('Matrox.* G[245][05]0') ||
@@ -534,20 +770,54 @@ sub rpmsrate_always_flags {
$rpmsrate_flags_chosen;
}
+sub default_bootloader() {
+ require bootloader;
+ my (undef, $p) = bootloader::get_grub2_pkg();
+ if (is_uefi()) {
+ log::l("defaulting to grub2-efi");
+ } else {
+ log::l("defaulting to grub2");
+ }
+ [ $p ];
+}
+
+=item default_packages($o)
+
+Selects default packages to install according to configuration (FS, HW, ...)
+
+=cut
+
sub default_packages {
my ($o) = @_;
my @l;
- push @l, "brltty" if cat_("/proc/cmdline") =~ /brltty=/;
- push @l, "nfs-utils-clients" if $o->{method} eq "nfs";
- push @l, "mdadm" if !is_empty_array_ref($o->{all_hds}{raids});
- push @l, "lvm2" if !is_empty_array_ref($o->{all_hds}{lvms});
- push @l, "cryptsetup" if !is_empty_array_ref($o->{all_hds}{dmcrypts});
- push @l, "dmraid" if any { fs::type::is_dmraid($_) } @{$o->{all_hds}{hds}};
- push @l, 'cpufreq' if cat_('/proc/cpuinfo') =~ /AuthenticAMD/ && arch() =~ /x86_64/
- || cat_('/proc/cpuinfo') =~ /model name.*Intel\(R\) Core\(TM\)2 CPU/;
- push @l, 'apmd' if -e "/proc/apm";
- push @l, detect_devices::probe_name('Pkg');
+ sub add_n_log {
+ my ($reason, @packages) = @_;
+ if (@packages) {
+ log::l("selecting " . join(',', @packages) . " because of $reason");
+ push @l, @packages;
+ }
+ }
+
+ add_n_log("/proc/cmdline=~/brltty=/", "brltty") if cat_("/proc/cmdline") =~ /brltty=/;
+ add_n_log("method==nfs", "nfs-utils") if $o->{method} eq "nfs";
+ add_n_log("have RAID", "mdadm") if !is_empty_array_ref($o->{all_hds}{raids});
+ add_n_log("have LVM", "lvm2") if !is_empty_array_ref($o->{all_hds}{lvms});
+ add_n_log("have crypted DM", qw(cryptsetup dmsetup)) if !is_empty_array_ref($o->{all_hds}{dmcrypts});
+ add_n_log("some disks are fake RAID", qw(mdadm dmraid)) if any { fs::type::is_dmraid($_) } @{$o->{all_hds}{hds}};
+ add_n_log("CPU needs microcode", "microcode_ctl") if detect_devices::hasCPUMicrocode();
+ add_n_log("either CPU or GFX needs firmware", is_firmware_needed($o)) if is_firmware_needed($o);
+ add_n_log("CPU needs cpupower", 'cpupower') if detect_devices::hasCPUFreq();
+ add_n_log("APM support needed", 'apmd') if -e "/proc/apm";
+ add_n_log("needed by hardware", detect_devices::probe_name('Pkg'));
+ my @ltmp = map { $_->{BOOTPROTO} eq 'dhcp' ? $_->{DHCP_CLIENT} || 'dhcp-client' : () } values %{$o->{net}{ifcfg}};
+ add_n_log("needed by networking", @ltmp) if @ltmp;
+ # will get auto selected at summary stage for bootloader:
+ add_n_log("needed later at summary stage", qw(acpi acpid));
+ # will get auto selected at summary stage for firewall:
+ add_n_log("needed for firewall/security", qw(shorewall shorewall-ipv6 mandi-ifw));
+ # only needed for CDs/DVDs installations:
+ add_n_log("method='cdrom'", 'perl-Hal-Cdroms') if $o->{method} eq 'cdrom';
my $dmi_BIOS = detect_devices::dmidecode_category('BIOS');
my $dmi_Base_Board = detect_devices::dmidecode_category('Base Board');
@@ -557,16 +827,16 @@ sub default_packages {
modules::append_to_modules_loaded_at_startup_for_all_kernels('acerhk');
}
- push @l, 'quota' if any { $_->{options} =~ /usrquota|grpquota/ } @{$o->{fstab}};
- push @l, uniq(grep { $_ } map { fs::format::package_needed_for_partition_type($_) } @{$o->{fstab}});
- push @l, 'ntfs-3g' if any { $_->{fs_type} eq 'ntfs-3g' } @{$o->{fstab}};
+ add_n_log("some fs is mounted with quota options", 'quota') if any { $_->{options} =~ /usrquota|grpquota/ } @{$o->{fstab}};
+ @ltmp = uniq(grep { $_ } map { fs::format::package_needed_for_partition_type($_) } @{$o->{fstab}});
+ add_n_log("needed by some fs", @ltmp) if @ltmp;
# handle locales with specified scripting:
my @languages = map { s/\@.*//; $_ } lang::langsLANGUAGE($o->{locale}{langs});
my @locale_pkgs = map { URPM::packages_providing($o->{packages}, 'locales-' . $_) } @languages;
unshift @l, uniq(map { $_->name } @locale_pkgs);
- @l;
+ uniq(@l);
}
sub mark_skipped_packages {
@@ -639,6 +909,13 @@ sub kdemove_desktop_file {
}
}
+sub log_system_info {
+ my ($o) = @_;
+ log::l("second stage install running (", drakx_version($o), ")");
+ log::l(sprintf("Virtualization=%s", detect_devices::virt_technology() || "none"));
+ log::l(sprintf("Is UEFI=%s", bool2yesno(is_uefi())));
+}
+
#-###############################################################################
#- auto_install stuff
@@ -654,9 +931,9 @@ sub g_auto_install {
my $o = {};
require install::pkgs;
- $o->{default_packages} = install::pkgs::selected_leaves($::o->{packages});
+ $o->{default_packages} = [ sort @{ install::pkgs::selected_leaves($::o->{packages}) } ];
- my @fields = qw(mntpoint fs_type size);
+ my @fields = qw(fs_type hd level mntpoint options parts size VG_name);
$o->{partitions} = [ map {
my %l; @l{@fields} = @$_{@fields}; \%l;
} grep {
@@ -672,6 +949,9 @@ sub g_auto_install {
#- deep copy because we're modifying it below
$o->{users} = $b_respect_privacy ? [] : [ @{$o->{users} || []} ];
+ # remember selected media:
+ local $o->{enabled_media} = [ map { $_->{name} } grep { !$_->{ignore} } @{$::o->{packages}{media}} ];
+
my @user_info_to_remove = (
if_($b_respect_privacy, qw(realname pw)),
qw(oldu oldg password password2),
@@ -706,9 +986,6 @@ sub getAndSaveAutoInstallFloppies {
eval { modules::load('loop') };
- if (arch() =~ /ia64/) {
- #- nothing yet
- } else {
my $mountdir = "$::prefix/root/aif-mount"; -d $mountdir or mkdir $mountdir, 0755;
my $param = 'kickstart=floppy ' . generate_automatic_stage1_params($o);
@@ -716,7 +993,7 @@ sub getAndSaveAutoInstallFloppies {
{
my $dev = devices::set_loop($img) or log::l("couldn't set loopback device"), return;
- find { eval { fs::mount::mount($dev, $mountdir, $_, 0); 1 } } qw(ext2 vfat) or return;
+ find { eval { fs::mount::mount($dev, $mountdir, $_, 0); 1 } } qw(ext2 vfat ntfs-3g) or return;
if (-e "$mountdir/menu.lst") {
# hd_grub boot disk is different than others
@@ -751,7 +1028,6 @@ sub getAndSaveAutoInstallFloppies {
}
rmdir $mountdir;
$img;
- }
}
@@ -781,7 +1057,7 @@ sub loadO {
my $o;
foreach (removable_media__early_in_install()) {
my $dev = devices::make($_->{device});
- foreach my $fs (arch() =~ /sparc/ ? 'romfs' : ('ext2', 'vfat')) {
+ foreach my $fs (qw(ext4 vfat ntfs-3g)) {
eval { fs::mount::mount($dev, '/mnt', $fs, 'readonly'); 1 } or next;
if (my $abs_f = find { -e $_ } "/mnt/$f", "/mnt/$f.pl") {
$o = loadO_($O, $abs_f);
@@ -887,10 +1163,11 @@ sub generate_automatic_stage1_params {
$method = $1; #- in stage1, FTP via HTTP proxy is available through FTP config, not HTTP
@ks = (server => $2, directory => $3);
} elsif ($o->{method} eq 'ftp') {
+ require install::ftp;
my @l = install::ftp::parse_ftp_url($ENV{URLPREFIX});
@ks = (server => $l[0], directory => $l[1], user => $l[2], pass => $l[3]);
} elsif ($o->{method} eq 'nfs') {
- cat_("/proc/mounts") =~ m|(\S+):(\S+)\s+/tmp/media| or internal_error("can not find nfsimage");
+ cat_("/proc/mounts") =~ m|(\S+):(\S+)\s+/tmp/media| or internal_error("cannot find nfsimage");
@ks = (server => $1, directory => $2);
}
@ks = (method => $method, @ks);
@@ -923,7 +1200,7 @@ sub generate_automatic_stage1_params {
sub find_root_parts {
my ($fstab, $prefix) = @_;
- grep { $_->{release} =~ /\b(mandrake|mandrakelinux|mandriva|conectiva)\b/i }
+ grep { $_->{release} =~ /\b(mandrake|mandrakelinux|mandriva|conectiva|mageia)\b/i }
_find_root_parts($fstab, $prefix);
}
@@ -998,7 +1275,7 @@ sub migrate_device_names {
goto found_one;
}
- #- we can not find one and only one matching hd
+ #- we cannot find one and only one matching hd
my @from_fstab_not_handled = map { @$_ } @from_fstab_per_hds;
log::l("we still do not know what to do with: " . join(' ', map { $_->{device} } @from_fstab_not_handled));
@@ -1215,9 +1492,10 @@ sub screenshot_dir__and_move() {
if (-e $dir0 && ! -e '/root/non-chrooted-marker.DrakX') {
($dir0, 'nowarn'); #- it occurs during pkgs install when we are chrooted
} elsif (-e $dir1) {
- if (-e "$dir2/DrakX-screenshots") {
- cp_af("$dir2/DrakX-screenshots", $dir1);
- rm_rf("$dir2/DrakX-screenshots");
+ my $path = "$dir2/DrakX-screenshots";
+ if (-e $path) {
+ cp_af($path, $dir1);
+ rm_rf($path);
}
$dir1;
} else {
@@ -1231,11 +1509,14 @@ sub take_screenshot {
my ($base_dir, $nowarn) = screenshot_dir__and_move();
my $dir = "$base_dir/DrakX-screenshots";
if (!-e $dir) {
- mkdir $dir or $in->ask_warn('', N("Can not make screenshots before partitioning")), return;
+ mkdir $dir or $in->ask_warn('', N("Cannot make screenshots before partitioning")), return;
}
my $nb = 1;
$nb++ while -e "$dir/$nb.png";
- system("fb2png /dev/fb0 $dir/$nb.png 0");
+ run_program::run('scrot', "$dir/$nb.png");
+
+ # help doesn't remember warning has been shown (one shot processes):
+ $warned ||= -e "$dir/2.png";
if (!$warned && !$nowarn) {
$warned = 1;
@@ -1274,27 +1555,39 @@ sub remove_advertising() {
}
sub disable_user_view() {
- substInFile { s/^UserView=.*/UserView=true/ } "$::prefix/etc/kde/kdm/kdmrc";
substInFile { s/^Browser=.*/Browser=0/ } "$::prefix/etc/X11/gdm/custom.conf";
+ #TODO: Needed for sddm ?
}
sub set_security {
my ($o) = @_;
require security::various;
+ return if !-x "$::prefix/usr/sbin/msec";
security::level::set($o->{security});
security::various::config_security_user($::prefix, $o->{security_user});
}
sub write_fstab {
my ($o) = @_;
- fs::write_fstab($o->{all_hds}, $::prefix)
- if !$::local_install && (!$o->{isUpgrade} || $o->{isUpgrade} =~ /redhat|conectiva/ || $o->{migrate_device_names});
+ return if $::local_install || $o->{isUpgrade} && $o->{isUpgrade} !~ /redhat|conectiva/ && !$o->{migrate_device_names};
+ fs::write_fstab($o->{all_hds}, $::prefix);
}
-sub adjust_files_mtime_to_timezone() {
- #- to ensure linuxconf does not cry against those files being in the future
- #- to ensure fc-cache works correctly on fonts installed after reboot
+=item adjust_files_mtime_to_timezone() {
+Fixes mtime of a couple important files according to timezone in order to:
+
+=over 4
+
+=item * to ensure linuxconf does not cry against those files being in the future
+
+=item * to ensure fc-cache works correctly on fonts installed after reboot
+
+=back
+
+=cut
+
+sub adjust_files_mtime_to_timezone() {
my $timezone_shift = run_program::rooted_get_stdout($::prefix, 'date', '+%z');
my ($h, $m) = $timezone_shift =~ /\+(..)(..)/ or return;
my $now = time() - ($h * 60 + $m * 60) * 60;
@@ -1390,4 +1683,8 @@ sub configure_pcmcia {
run_program::run("/lib/udev/pcmcia-socket-startup");
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/install/commands.pm b/perl-install/install/commands.pm
index 4f19a1a2d..79f49b980 100644
--- a/perl-install/install/commands.pm
+++ b/perl-install/install/commands.pm
@@ -1,11 +1,11 @@
-package install::commands; # $Id$
+package install::commands;
#-########################################################################
#- This file implement many common shell commands:
-#- true, false, cat, which, dirname, basename, rmdir, lsmod, grep, tr,
+#- true, false, cat, which, dirname, basename, rmdir, grep, tr,
#- mount, mkdir, mknod, ln, rm, chmod, chown, swapon,
#- swapoff, ls, cp, ps, dd, head, tail, strings, hexdump, more,
-#- modprobe, route, df, kill, lspci, lssbus, dmesg, sort, du,
+#- route, df, kill, lspci, lssbus, dmesg, sort, du,
#-########################################################################
use diagnostics;
@@ -37,8 +37,7 @@ sub false() { exit 1 }
sub cat { @ARGV = @_; print while <> }
sub dirname_ { print dirname(@_), "\n" }
sub basename_ { print basename(@_), "\n" }
-sub rmdir_ { foreach (@_) { rmdir $_ or die "rmdir: can not remove $_\n" } }
-sub lsmod() { print "Module Size Used by\n"; cat("/proc/modules") }
+sub rmdir_ { foreach (@_) { rmdir $_ or die "rmdir: cannot remove $_\n" } }
sub which {
ARG: foreach (@_) { foreach my $c (split /:/, $ENV{PATH}) { -x "$c/$_" and print("$c/$_\n"), next ARG } }
}
@@ -97,7 +96,7 @@ sub rm {
if (!-l $_ && -d $_) {
$rec or die "$_ is a directory\n";
&$rm(glob_($_));
- rmdir $_ or die "can not remove directory $_: $!\n";
+ rmdir $_ or die "cannot remove directory $_: $!\n";
} else { unlink $_ or die "rm of $_ failed: $!\n" }
}
};
@@ -160,7 +159,7 @@ sub ls {
@_ == 1 && -d $_[0] and @_ = glob_($_[0]);
foreach (sort @_) {
if ($l) {
- my @s = lstat or warn("can not stat file $_\n"), next;
+ my @s = lstat or warn("cannot stat file $_\n"), next;
formline(
"@<<<<<<<<< @<<<<<<< @<<<<<<< @>>>>>>>> @>>>>>>>>>>>>>>> @*\n",
rights($s[2]), getpwuid $s[4] || $s[4], getgrgid $s[5] || $s[5],
@@ -208,21 +207,21 @@ sub dd {
my $u = "usage: dd [-h] [-p] [if=<file>] [of=<file>] [bs=<number>] [count=<number>]\n";
my ($help, $percent) = getopts(\@_, qw(hp));
die $u if $help;
- my %h = (if => *STDIN, of => *STDOUT, bs => 512, count => undef);
+ my %h = (if => \*STDIN, of => \*STDOUT, bs => 512, count => undef);
foreach (@_) {
/(.*?)=(.*)/ && exists $h{$1} or die $u;
$h{$1} = $2;
}
local (*IF, *OF); my ($tmp, $nb, $read);
- ref($h{if}) eq 'GLOB' ? (*IF = $h{if}) : sysopen(IF, $h{if}, 0) || die "error: can not open file $h{if}\n";
- ref($h{of}) eq 'GLOB' ? (*OF = $h{of}) : sysopen(OF, $h{of}, c::O_CREAT()|c::O_WRONLY()) || die "error: can not open file $h{of}\n";
+ ref($h{if}) eq 'GLOB' ? (*IF = $h{if}) : sysopen(IF, $h{if}, 0) || die "error: cannot open file $h{if}\n";
+ ref($h{of}) eq 'GLOB' ? (*OF = $h{of}) : sysopen(OF, $h{of}, c::O_CREAT()|c::O_WRONLY()) || die "error: cannot open file $h{of}\n";
$h{bs} = removeXiBSuffix($h{bs});
for ($nb = 0; !$h{count} || $nb < $h{count}; $nb++) {
printf "\r%02.1d%%", 100 * $nb / $h{count} if $h{count} && $percent;
- $read = sysread(IF, $tmp, $h{bs}) or ($h{count} ? die "error: can not read block $nb\n" : last);
- syswrite(OF, $tmp) or die "error: can not write block $nb\n";
+ $read = sysread(IF, $tmp, $h{bs}) or ($h{count} ? die "error: cannot read block $nb\n" : last);
+ syswrite(OF, $tmp) or die "error: cannot write block $nb\n";
$read < $h{bs} and $read = 1, last;
}
print STDERR "\r$nb+$read records in\n";
@@ -233,7 +232,7 @@ sub head_tail {
my ($h, $n) = getopts(\@_, qw(hn));
$h || @_ < to_bool($n) and die "usage: $0 [-h] [-n lines] [<file>]\n";
$n = $n ? shift : 10;
- my $fh = @_ ? common::open_file($_[0]) || die "error: can not open file $_[0]\n" : *STDIN;
+ my $fh = @_ ? common::open_file($_[0]) || die "error: cannot open file $_[0]\n" : *STDIN;
if ($0 eq 'head') {
local $_;
@@ -276,9 +275,9 @@ sub hexdump {
sub more {
@ARGV = @_;
require devices;
- my $tty = devices::make('tty');
+ my $tty = '/dev/tty';
my $n = 0;
- open(my $IN, $tty) or die "can not open $tty\n";
+ open(my $IN, $tty) or die "cannot open $tty\n";
local $_;
while (<>) {
if (++$n == 25) {
@@ -290,15 +289,6 @@ sub more {
}
}
-sub modprobe {
- my ($h) = getopts(\@_, qw(h));
- $h || @_ == 0 and die "usage: modprobe <module> [options]\n";
- my $name = shift;
- require modules;
- list_modules::load_default_moddeps();
- modules::load_with_options([ $name ], { $name => join(' ', @_) });
-}
-
sub route {
@_ == 0 or die "usage: route\nsorry, no modification handled\n";
my ($titles, @l) = cat_("/proc/net/route");
@@ -373,7 +363,7 @@ sub dmesg() { print cat_("/tmp/syslog") }
sub sort {
my ($n, $h) = getopts(\@_, qw(nh));
$h and die "usage: sort [-n] [<file>]\n";
- my $fh = @_ ? common::open_file($_[0]) || die "error: can not open file $_[0]\n" : *STDIN;
+ my $fh = @_ ? common::open_file($_[0]) || die "error: cannot open file $_[0]\n" : *STDIN;
if ($n) {
print(sort { $a <=> $b } <$fh>);
} else {
@@ -411,8 +401,11 @@ sub bug {
my $in = interactive::stdio->new;
require install::any;
+ my @devs = install::any::removable_media__early_in_install();
+ @devs or die "You need to plug a removable medium (USB key, floppy, ...)\n";
+
$part = $in->ask_from_listf('', "Which device?", \&partition_table::description,
- [ install::any::removable_media__early_in_install() ] ) or return;
+ \@devs) or return;
}
warn "putting file report.bug on $part->{device}\n";
diff --git a/perl-install/install/ftp.pm b/perl-install/install/ftp.pm
index 292fd2d3d..c69cdab25 100644
--- a/perl-install/install/ftp.pm
+++ b/perl-install/install/ftp.pm
@@ -1,4 +1,4 @@
-package install::ftp; # $Id$
+package install::ftp;
use Net::FTP;
diff --git a/perl-install/install/gtk.pm b/perl-install/install/gtk.pm
index f58c02317..f878e42d9 100644
--- a/perl-install/install/gtk.pm
+++ b/perl-install/install/gtk.pm
@@ -1,10 +1,10 @@
-package install::gtk; # $Id$
+package install::gtk;
use diagnostics;
use strict;
-use ugtk2;
-use mygtk2;
+use ugtk3;
+use mygtk3;
use common;
use lang;
use devices;
@@ -14,6 +14,7 @@ use detect_devices;
#-INTERN CONSTANT
#-#####################################################################################
+# FIXME: either drop 'doc' option or convert this to CSS!
#- if we're running for the doc team, we want screenshots with
#- a good B&W contrast: we'll override values of our theme
my $theme_overriding_for_doc = q(style "galaxy-default"
@@ -53,13 +54,15 @@ widget "*logo*" style "background-logo"
);
#------------------------------------------------------------------------------
-sub load_rc {
+sub load_css {
my ($o, $name) = @_;
my $f = $name;
- -r $name or $f = find { -r $_ } map { "$_/themes-$name.rc" } ("share", $ENV{SHARE_PATH}, dirname(__FILE__) . '/..');
+ -r $name or $f = find { -r $_ } map { "$_/themes-$name.css" } ("share", $ENV{SHARE_PATH}, dirname(__FILE__) . '/..');
if ($f) {
- Gtk2::Rc->parse_string($o->{doc} ? $theme_overriding_for_doc : scalar cat_($f));
+ my $pl = Gtk3::CssProvider->new;
+ $pl->load_from_data($o->{doc} ? $theme_overriding_for_doc : scalar cat_($f));
+ Gtk3::StyleContext::add_provider_for_screen(Gtk3::Gdk::Screen::get_default(), $pl, Gtk3::STYLE_PROVIDER_PRIORITY_APPLICATION);
}
}
@@ -67,20 +70,21 @@ sub load_rc {
sub load_font {
my ($o) = @_;
- if (lang::text_direction_rtl()) {
- Gtk2::Widget->set_default_direction('rtl');
+ if (defined($::WizardWindow) && lang::text_direction_rtl()) {
+ Gtk3::Widget::set_default_direction('rtl');
my ($x, $y) = $::WizardWindow->get_position;
my ($width) = $::WizardWindow->get_size;
$::WizardWindow->move($::rootwidth - $width - $x, $y);
}
- Gtk2::Rc->parse_string(q(
-style "default-font"
-{
- font_name = ") . lang::l2pango_font($o->{locale}{lang}) . q("
-}
-widget "*" style "default-font"
-
+ my $font = lang::l2pango_font($o->{locale}{lang});
+ my $s = qq(gtk-font-name = $font);
+ my $pl = Gtk3::CssProvider->new;
+ $pl->load_from_data(sprintf("GtkWindow { %s }", lang::l2css_font($o->{locale}{lang})));
+ Gtk3::StyleContext::add_provider_for_screen(Gtk3::Gdk::Screen::get_default(), $pl, Gtk3::STYLE_PROVIDER_PRIORITY_APPLICATION);
+ # FIXME: this should be done in /mnt too for forked app such as gurpmi{,.addmedia} (mga#67):
+ output("/.config/gtk-3.0/settings.ini", qq([Settings]
+$s
));
}
@@ -95,13 +99,12 @@ my $root_window;
sub install_theme {
my ($o) = @_;
- load_rc($o, $o->{theme} ||= default_theme($o));
+ load_css($o, $o->{theme} ||= default_theme($o));
load_font($o);
my $win = gtknew('Window', widget_name => 'background', title => 'root window');
$win->set_type_hint('desktop'); # for matchbox window manager
$win->realize;
- mygtk2::set_root_window_background_with_gc($win->style->bg_gc('normal'));
$root_window = $win;
}
@@ -160,7 +163,8 @@ sub create_steps_window {
],
)
);
-
+
+ $root_window->set_position('GTK_WIN_POS_CENTER_ALWAYS');
$root_window->show_all;
}
@@ -172,7 +176,7 @@ sub update_steps_position {
exists $steps{steps}{$_} or next;
if ($o->{steps}{$_}{entered} && !$o->{steps}{$_}{done}) {
# we need to flush the X queue since else we got a temporary Y position of -1 when switching locales:
- mygtk2::flush(); #- for auto_installs which never go through the Gtk2 main loop
+ mygtk3::flush(); #- for auto_installs which never go through the Gtk3 main loop
$o->{steps_widget}->move_selection($steps{steps}{$_}{text});
if ($last_step) {
@@ -182,14 +186,19 @@ sub update_steps_position {
}
$last_step = $_;
}
- mygtk2::flush(); #- for auto_installs which never go through the Gtk2 main loop
+ mygtk3::flush(); #- for auto_installs which never go through the Gtk3 main loop
}
#------------------------------------------------------------------------------
sub init_gtk {
my ($o) = @_;
- symlink("/tmp/stage2/etc/$_", "/etc/$_") foreach qw(gtk-2.0 pango fonts);
+ symlink("/tmp/stage2/etc/$_", "/etc/$_") foreach qw(gtk-3.0 pango fonts);
+
+ # Custom _global_ CSS:
+ mkdir_p("/.config/gtk-3.0"); # TODO/FIXME: set ENV{HOME} ?
+ # FIXME: this should be done in /mnt too for forked app such as gurpmi{,.addmedia} (mga#67):
+ symlinkf('/usr/lib/libDrakX/gtk.css', '/.config/gtk-3.0/gtk.css');
if ($o->{vga16}) {
#- inactivate antialias in VGA16 because it makes fonts look worse
@@ -202,18 +211,19 @@ q(<fontconfig>
$ENV{FONTCONFIG_FILE} = '/tmp/fonts.conf';
}
- Gtk2->init;
- Gtk2->set_locale;
+ Gtk3->init;
+ c::init_setlocale();
}
#------------------------------------------------------------------------------
sub init_sizes {
my ($o) = @_;
- ($::rootwidth, $::rootheight) = (Gtk2::Gdk->screen_width, Gtk2::Gdk->screen_height);
+ ($::rootwidth, $::rootheight) = (Gtk3::Gdk::Screen::width, Gtk3::Gdk::Screen::height);
$::stepswidth = $::rootwidth <= 640 ? 0 : 196;
- ($::logowidth, $::logoheight) = $::rootwidth <= 640 ? (0, 0) : (800, 75);
($o->{windowwidth}, $o->{windowheight}) = ($::rootwidth - $::stepswidth, $::rootheight);
- ($::real_windowwidth, $::real_windowheight) = (576, 465);
+ # Adapt the window size to available screen width and height.
+ $::real_windowwidth = $::rootwidth > 800 ? 800 : 576;
+ $::real_windowheight = $::rootheight > 600 ? 633 : 465;
}
sub handle_unsafe_mouse {
@@ -231,54 +241,39 @@ sub handle_unsafe_mouse {
sub special_shortcuts {
my (undef, $event) = @_;
- my $d = ${{ $Gtk2::Gdk::Keysyms{F2} => 'screenshot', $Gtk2::Gdk::Keysyms{Home} => 'restart' }}{$event->keyval};
+ my $d = ${{ Gtk3::Gdk::KEY_F2 => 'screenshot', Gtk3::Gdk::KEY_Home => 'restart' }}{$event->keyval};
if ($d eq 'screenshot') {
+ # FIXME: should handle the fact it doesn't work when chrooted by urpmi during transaction:
install::any::take_screenshot($::o);
} elsif ($d eq 'restart' && member('control-mask', @{$event->state}) && member('mod1-mask', @{$event->state})) {
log::l("restarting install");
- ugtk2->exit(0x35);
+ ugtk3->exit(0x35);
}
0;
}
#------------------------------------------------------------------------------
sub createXconf {
- my ($file, $mouse_type, $mouse_dev, $_wacom_dev, $Driver) = @_;
-
- $mouse_type = 'IMPS/2' if $mouse_type eq 'vboxmouse';
- symlinkf(devices::make($mouse_dev), "/dev/mouse") if $mouse_dev ne 'none';
-
- #- needed for imlib to start on 8-bit depth visual.
- symlink("/tmp/stage2/etc/imrc", "/etc/imrc");
- symlink("/tmp/stage2/etc/im_palette.pal", "/etc/im_palette.pal");
+ my ($file, $Driver) = @_;
#- remove "error opening security policy file" warning
symlink("/tmp/stage2/etc/X11", "/etc/X11");
-if ($Driver) {
- my ($mouse_driver, $mouse_protocol) = detect_devices::is_vmware() ? qw(vmmouse auto) : ('mouse', $mouse_type);
- output($file, sprintf(<<'END', $mouse_driver, $mouse_protocol, $Driver, $Driver eq 'fbdev' ? '"default"' : '"800x600" "640x480"'));
-Section "ServerFlags"
- Option "AutoAddDevices" "False"
-EndSection
+ return if !$Driver;
-Section "Files"
- FontPath "/usr/share/fonts:unscaled"
+ # grub2-efi init framebuffer in 1024x768, we must stay in sync or loading fails
+ my $resolution = $Driver eq 'fbdev' ? is_uefi() ? '"1024x768"' : '"default"' : '"800x600" "640x480"';
+ # efi framebuffer wants 24 bit
+ my $depth = is_uefi() ? '24' : '16';
+ output($file, qq(Section "ServerFlags"
EndSection
-Section "InputDevice"
- Identifier "Keyboard"
- Driver "keyboard"
- Option "XkbModel" "pc105"
- Option "XkbLayout" "us"
+Section "Module"
+ Disable "glx"
EndSection
-Section "InputDevice"
- Identifier "Mouse"
- Driver "%s"
- Option "Protocol" "%s"
- Option "Device" "/dev/mouse"
- Option "ZAxisMapping" "4 5"
+Section "Files"
+ FontPath "/usr/share/fonts:unscaled"
EndSection
Section "Monitor"
@@ -289,17 +284,17 @@ EndSection
Section "Device"
Identifier "device"
- Driver "%s"
+ Driver "$Driver"
EndSection
Section "Screen"
Identifier "screen"
Device "device"
Monitor "monitor"
- DefaultColorDepth 16
+ DefaultColorDepth $depth
Subsection "Display"
- Depth 16
- Modes %s
+ Depth $depth
+ Modes $resolution
EndSubsection
EndSection
@@ -310,12 +305,8 @@ Section "ServerLayout"
Option "OffTime" "0"
Identifier "layout"
Screen "screen"
- InputDevice "Mouse" "CorePointer"
- InputDevice "Keyboard" "CoreKeyboard"
EndSection
-
-END
- }
+));
}
1;
diff --git a/perl-install/install/help/Makefile b/perl-install/install/help/Makefile
index cca58ff11..54fee2180 100644
--- a/perl-install/install/help/Makefile
+++ b/perl-install/install/help/Makefile
@@ -1,7 +1,7 @@
help:
@if [ ! -d doc ]; then \
echo "Checking out doc stuff now ..."; \
- cvs -d :ext:cvs.mandriva.com:/cooker co doc/manualB/{entities,manuals,modules}; \
+ cvs -d :ext:svn.mageia.org:/cauldron co doc/manualB/{entities,manuals,modules}; \
else \
echo "Updating doc stuff now ..."; \
cd doc ; cvs update manualB/{entities,manuals,modules}; \
diff --git a/perl-install/install/help/help.pm b/perl-install/install/help/help.pm
index 15304280e..e2e5e8f06 100644
--- a/perl-install/install/help/help.pm
+++ b/perl-install/install/help/help.pm
@@ -8,11 +8,11 @@ push @::textdomains, 'DrakX-help';
# IMPORTANT: Do not edit this File - It is automatically generated
# from the manuals !!!
-# Write a mail to <documentation@mandriva.com> if
+# Write a mail to <contact@mageia.org> if
# you want it changed.
sub acceptLicense() {
N("Before continuing, you should carefully read the terms of the license. It
-covers the entire Mandriva Linux distribution. If you agree with all the
+covers the entire Mageia distribution. If you agree with all the
terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"
button will reboot your computer.", N("Accept"), N("Quit"));
}
@@ -54,7 +54,7 @@ security), choose the desired user and window manager, then click on
\"%s\". If you're not interested in this feature, uncheck the \"%s\" box.", N("User name"), N("Accept user"), N("Next"), N("Advanced"), N("Next"), N("Do you want to use this feature?"));
}
sub ask_mntpoint_s() {
- N("Listed here are the existing Linux partitions detected on your hard drive.
+ N("Listed here are the existing Linux partitions detected on your hard disk drive.
You can keep the choices made by the wizard, since they are good for most
common installations. If you make any changes, you must at least define a
root partition (\"/\"). Do not choose too small a partition or you will not
@@ -64,40 +64,40 @@ separate partition, you will also need to create a \"/home\" partition
Each partition is listed as follows: \"Name\", \"Capacity\".
-\"Name\" is structured: \"hard drive type\", \"hard drive number\",
+\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",
\"partition number\" (for example, \"hda1\").
-\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and
-\"sd\" if it is a SCSI hard drive.
+\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and
+\"sd\" if it is a SCSI hard disk drive.
-\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE
-hard drives:
+\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE
+hard disk drives:
- * \"a\" means \"master hard drive on the primary IDE controller\";
+ * \"a\" means \"master hard disk drive on the primary IDE controller\";
- * \"b\" means \"slave hard drive on the primary IDE controller\";
+ * \"b\" means \"slave hard disk drive on the primary IDE controller\";
- * \"c\" means \"master hard drive on the secondary IDE controller\";
+ * \"c\" means \"master hard disk drive on the secondary IDE controller\";
- * \"d\" means \"slave hard drive on the secondary IDE controller\".
+ * \"d\" means \"slave hard disk drive on the secondary IDE controller\".
-With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means
+With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means
\"second lowest SCSI ID\", etc.");
}
sub chooseCd() {
- N("The Mandriva Linux installation is distributed on several CD-ROMs. If a
+ N("The Mageia installation is distributed on several CD-ROMs. If a
selected package is located on another CD-ROM, DrakX will eject the current
CD and ask you to insert the required one. If you do not have the requested
CD at hand, just click on \"%s\", the corresponding packages will not be
-installed.", N("Cancel"));
+installed.", N("Mageia"), N("Cancel"));
}
sub choosePackages() {
N("It's now time to specify which programs you wish to install on your system.
-There are thousands of packages available for Mandriva Linux, and to make it
+There are thousands of packages available for Mageia, and to make it
simpler to manage, they have been placed into groups of similar
applications.
-Mandriva Linux sorts package groups in four categories. You can mix and
+Mageia sorts package groups in four categories. You can mix and
match applications from the various categories, so a ``Workstation''
installation can still have applications from the ``Server'' category
installed.
@@ -159,10 +159,10 @@ right to let you know the purpose of that package.
!! If a server package has been selected, either because you specifically
chose the individual package or because it was part of a group of packages,
you'll be asked to confirm that you really want those servers to be
-installed. By default Mandriva Linux will automatically start any installed
+installed. By default Mageia will automatically start any installed
services at boot time. Even if they are safe and have no known issues at
the time the distribution was shipped, it is entirely possible that
-security holes were discovered after this version of Mandriva Linux was
+security holes were discovered after this version of Mageia was
finalized. If you do not know what a particular service is supposed to do or
why it's being installed, then click \"%s\". Clicking \"%s\" will install
the listed services and they will be started automatically at boot time. !!
@@ -226,7 +226,7 @@ best suits your needs.");
sub configureX_chooser() {
N("X (for X Window System) is the heart of the GNU/Linux graphical interface
on which all the graphical environments (KDE, GNOME, AfterStep,
-WindowMaker, etc.) bundled with Mandriva Linux rely upon.
+WindowMaker, etc.) bundled with Mageia rely upon.
You'll see a list of different parameters to change to get an optimal
graphical display.
@@ -309,39 +309,39 @@ want to check \"%s\" if your machine is to act as a server, or if you were
not successful in getting the display configured.", N("No"));
}
sub doPartitionDisks() {
- N("You now need to decide where you want to install the Mandriva Linux
-operating system on your hard drive. If your hard drive is empty or if an
+ N("You now need to decide where you want to install the Mageia
+operating system on your hard disk drive. If your hard disk drive is empty or if an
existing operating system is using all the available space you will have to
-partition the drive. Basically, partitioning a hard drive means to
+partition the drive. Basically, partitioning a hard disk drive means to
logically divide it to create the space needed to install your new
-Mandriva Linux system.
+Mageia system.
-Because the process of partitioning a hard drive is usually irreversible
+Because the process of partitioning a hard disk drive is usually irreversible
and can lead to data losses, partitioning can be intimidating and stressful
for the inexperienced user. Fortunately, DrakX includes a wizard which
simplifies this process. Before continuing with this step, read through the
rest of this section and above all, take your time.
-Depending on the configuration of your hard drive, several options are
+Depending on the configuration of your hard disk drive, several options are
available:
* \"%s\". This option will perform an automatic partitioning of your blank
drive(s). If you use this option there will be no further prompts.
* \"%s\". The wizard has detected one or more existing Linux partitions on
-your hard drive. If you want to use them, choose this option. You will then
+your hard disk drive. If you want to use them, choose this option. You will then
be asked to choose the mount points associated with each of the partitions.
The legacy mount points are selected by default, and for the most part it's
a good idea to keep them.
- * \"%s\". If Microsoft Windows is installed on your hard drive and takes
+ * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes
all the space available on it, you will have to create free space for
GNU/Linux. To do so, you can delete your Microsoft Windows partition and
data (see ``Erase entire disk'' solution) or resize your Microsoft Windows
FAT or NTFS partition. Resizing can be performed without the loss of any
data, provided you've previously defragmented the Windows partition.
Backing up your data is strongly recommended. Using this option is
-recommended if you want to use both Mandriva Linux and Microsoft Windows on
+recommended if you want to use both Mageia and Microsoft Windows on
the same computer.
Before choosing this option, please understand that after this
@@ -350,13 +350,13 @@ than when you started. You'll have less free space under Microsoft Windows
to store your data or to install new software.
* \"%s\". If you want to delete all data and all partitions present on
-your hard drive and replace them with your new Mandriva Linux system, choose
+your hard disk drive and replace them with your new Mageia system, choose
this option. Be careful, because you will not be able to undo this operation
after you confirm.
!! If you choose this option, all data on your disk will be deleted. !!
- * \"%s\". This option appears when the hard drive is entirely taken by
+ * \"%s\". This option appears when the hard disk drive is entirely taken by
Microsoft Windows. Choosing this option will simply erase everything on the
drive and begin fresh, partitioning everything from scratch.
@@ -367,7 +367,8 @@ drive. Be careful -- it is a powerful but dangerous choice and you can very
easily lose all your data. That's why this option is really only
recommended if you have done something like this before and have some
experience. For more instructions on how to use the DiskDrake utility,
-refer to the ``Managing Your Partitions'' section in the ``Starter Guide''.", N("Use free space"), N("Use existing partition"), N("Use the free space on the Microsoft Windows® partition"), N("Erase entire disk"), N("Remove Microsoft Windows®"), N("Custom disk partitioning"));
+refer to the ``Managing Your Partitions'' section in the ``Starter Guide''.",
+N("Mageia"), N("Use free space"), N("Use existing partition"), N("Use the free space on the Microsoft Windows® partition"), N("Erase entire disk"), N("Remove Microsoft Windows®"), N("Custom disk partitioning"));
}
sub exitInstall() {
N("There you are. Installation is now complete and your GNU/Linux system is
@@ -421,13 +422,13 @@ will not be able to recover it.
Click on \"%s\" when you're ready to format the partitions.
Click on \"%s\" if you want to choose another partition for your new
-Mandriva Linux operating system installation.
+Mageia operating system installation.
Click on \"%s\" if you wish to select partitions which will be checked for
bad blocks on the disk.", N("Next"), N("Previous"), N("Advanced"));
}
sub installUpdates() {
- N("By the time you install Mandriva Linux, it's likely that some packages will
+ N("By the time you install Mageia, it's likely that some packages will
have been updated since the initial release. Bugs may have been fixed,
security issues resolved. To allow you to benefit from these updates,
you're now able to download them from the Internet. Check \"%s\" if you
@@ -437,7 +438,7 @@ updated packages later.
Choosing \"%s\" will display a list of web locations from which updates can
be retrieved. You should choose one near to you. A package-selection tree
will appear: review the selection, and press \"%s\" to retrieve and install
-the selected package(s), or \"%s\" to abort.", N("Yes"), N("No"), N("Yes"), N("Install"), N("Cancel"));
+the selected package(s), or \"%s\" to abort.", N("Mageia"), N("Yes"), N("No"), N("Yes"), N("Install"), N("Cancel"));
}
sub miscellaneous() {
N("At this point, DrakX will allow you to choose the security level you desire
@@ -447,7 +448,7 @@ exposed to the Internet. The trade-off that a higher security level is
generally obtained at the expense of ease of use.
If you do not know what to choose, keep the default option. You'll be able
-to change it later with the draksec tool, which is part of Mandriva Linux
+to change it later with the draksec tool, which is part of Mageia
Control Center.
Fill the \"%s\" field with the e-mail address of the person responsible for
@@ -455,21 +456,21 @@ security. Security messages will be sent to that address.", N("Security Administ
}
sub partition_with_diskdrake() {
N("At this point, you need to choose which partition(s) will be used for the
-installation of your Mandriva Linux system. If partitions have already been
+installation of your Mageia system. If partitions have already been
defined, either from a previous installation of GNU/Linux or by another
-partitioning tool, you can use existing partitions. Otherwise, hard drive
+partitioning tool, you can use existing partitions. Otherwise, hard disk drive
partitions must be defined.
-To create partitions, you must first select a hard drive. You can select
+To create partitions, you must first select a hard disk drive. You can select
the disk for partitioning by clicking on ``hda'' for the first IDE drive,
``hdb'' for the second, ``sda'' for the first SCSI drive and so on.
-To partition the selected hard drive, you can use these options:
+To partition the selected hard disk drive, you can use these options:
- * \"%s\": this option deletes all partitions on the selected hard drive
+ * \"%s\": this option deletes all partitions on the selected hard disk drive
- * \"%s\": this option enables you to automatically create ext3 and swap
-partitions in the free space of your hard drive
+ * \"%s\": this option enables you to automatically create ext4 and swap
+partitions in the free space of your hard disk drive
\"%s\": gives access to additional features:
@@ -485,21 +486,21 @@ using this option. Please be careful and remember that it does not always
work.
* \"%s\": discards all changes and reloads the partition table that was
-originally on the hard drive.
+originally on the hard disk drive.
* \"%s\": un-checking this option will force users to manually mount and
unmount removable media such as floppies and CD-ROMs.
* \"%s\": use this option if you wish to use a wizard to partition your
-hard drive. This is recommended if you do not have a good understanding of
+hard disk drive. This is recommended if you do not have a good understanding of
partitioning.
* \"%s\": use this option to cancel your changes.
* \"%s\": allows additional actions on partitions (type, options, format)
-and gives more information about the hard drive.
+and gives more information about the hard disk drive.
- * \"%s\": when you are finished partitioning your hard drive, this will
+ * \"%s\": when you are finished partitioning your hard disk drive, this will
save your changes back to disk.
When defining the size of a partition, you can finely set the partition
@@ -516,44 +517,39 @@ When a partition is selected, you can use:
* Ctrl-m to set the mount point
-To get information about the different file system types available, please
+To get information about the different filesystem types available, please
read the ext2FS chapter from the ``Reference Manual''.
-
-If you are installing on a PPC machine, you will want to create a small HFS
-``bootstrap'' partition of at least 1MB which will be used by the yaboot
-bootloader. If you opt to make the partition a bit larger, say 50MB, you
-may find it a useful place to store a spare kernel and ramdisk images for
-emergency boot situations.", N("Clear all"), N("Auto allocate"), N("More"), N("Save partition table"), N("Restore partition table"), N("Rescue partition table"), N("Reload partition table"), N("Removable media auto-mounting"), N("Wizard"), N("Undo"), N("Toggle between normal/expert mode"), N("Done"));
+", N("Clear all"), N("Auto allocate"), N("More"), N("Save partition table"), N("Restore partition table"), N("Rescue partition table"), N("Reload partition table"), N("Removable media auto-mounting"), N("Wizard"), N("Undo"), N("Toggle between normal/expert mode"), N("Done"));
}
sub resizeFATChoose() {
- N("More than one Microsoft partition has been detected on your hard drive.
+ N("More than one Microsoft partition has been detected on your hard disk drive.
Please choose the one which you want to resize in order to install your new
-Mandriva Linux operating system.
+Mageia operating system.
Each partition is listed as follows: \"Linux name\", \"Windows name\"
\"Capacity\".
-\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",
+\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",
\"partition number\" (for example, \"hda1\").
-\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and
-\"sd\" if it is a SCSI hard drive.
+\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and
+\"sd\" if it is a SCSI hard disk drive.
-\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE
-hard drives:
+\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE
+hard disk drives:
- * \"a\" means \"master hard drive on the primary IDE controller\";
+ * \"a\" means \"master hard disk drive on the primary IDE controller\";
- * \"b\" means \"slave hard drive on the primary IDE controller\";
+ * \"b\" means \"slave hard disk drive on the primary IDE controller\";
- * \"c\" means \"master hard drive on the secondary IDE controller\";
+ * \"c\" means \"master hard disk drive on the secondary IDE controller\";
- * \"d\" means \"slave hard drive on the secondary IDE controller\".
+ * \"d\" means \"slave hard disk drive on the secondary IDE controller\".
-With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means
+With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means
\"second lowest SCSI ID\", etc.
-\"Windows name\" is the letter of your hard drive under Windows (the first
+\"Windows name\" is the letter of your hard disk drive under Windows (the first
disk or partition is called \"C:\").");
}
sub selectCountry() {
@@ -566,22 +562,22 @@ sub selectInstallClass() {
found on your machine.
DrakX now needs to know if you want to perform a new installation or an
-upgrade of an existing Mandriva Linux system:
+upgrade of an existing Mageia system:
* \"%s\". For the most part, this completely wipes out the old system.
However, depending on your partitioning scheme, you can prevent some of
your existing data (notably \"home\" directories) from being over-written.
-If you wish to change how your hard drives are partitioned, or to change
-the file system, you should use this option.
+If you wish to change how your hard disk drives are partitioned, or to change
+the filesystem, you should use this option.
* \"%s\". This installation class allows you to update the packages
-currently installed on your Mandriva Linux system. Your current partitioning
+currently installed on your Mageia system. Your current partitioning
scheme and user data will not be altered. Most of the other configuration
steps remain available and are similar to a standard installation.
-Using the ``Upgrade'' option should work fine on Mandriva Linux systems
+Using the ``Upgrade'' option should work fine on Mageia systems
running version \"8.1\" or later. Performing an upgrade on versions prior
-to Mandriva Linux version \"8.1\" is not recommended.", N("Install"), N("Upgrade"));
+to Mageia version \"8.1\" is not recommended.", N("Install"), N("Upgrade"));
}
sub selectKeyboard() {
N("Depending on the language you chose (), DrakX will automatically select a
@@ -616,7 +612,7 @@ the tree view and \"%s\" in the Advanced section.
About UTF-8 (unicode) support: Unicode is a new character encoding meant to
cover all existing languages. However full support for it in GNU/Linux is
-still under development. For that reason, Mandriva Linux's use of UTF-8 will
+still under development. For that reason, Mageia's use of UTF-8 will
depend on the user's choices:
* If you choose a language with a strong legacy encoding (latin1
@@ -692,14 +688,14 @@ OS installed on your machine.
* if a GRUB or LILO boot sector is found, it'll replace it with a new one.
-If DrakX can not determine where to place the boot sector, it'll ask you
+If DrakX cannot determine where to place the boot sector, it'll ask you
where it should place it. Generally, the \"%s\" is the safest place.
Choosing \"%s\" will not install any boot loader. Use this option only if you
know what you're doing.", N("First sector of drive (MBR)"), N("Skip"));
}
sub setupDefaultSpooler() {
N("Now, it's time to select a printing system for your computer. Other
-operating systems may offer you one, but Mandriva Linux offers two. Each of
+operating systems may offer you one, but Mageia offers two. Each of
the printing systems is best suited to particular types of configuration.
* \"%s\" -- which is an acronym for ``print, do not queue'', is the choice
@@ -720,7 +716,7 @@ emulate a \"lpd\" server, make sure you turn on the \"cups-lpd\" daemon.
options and for managing the printer.
If you make a choice now, and later find that you do not like your printing
-system you may change it by running PrinterDrake from the Mandriva Linux
+system you may change it by running PrinterDrake from the Mageia
Control Center and clicking on the \"%s\" button.", N("pdq"), N("pdq"), N("CUPS"), N("CUPS"), N("Expert"));
}
sub setupSCSI() {
@@ -729,7 +725,7 @@ also scan for one or more PCI SCSI cards on your system. If a SCSI card is
found, DrakX will automatically install the appropriate driver.
Because hardware detection is not foolproof, DrakX may fail in detecting
-your hard drives. If so, you'll have to specify your hardware by hand.
+your hard disk drives. If so, you'll have to specify your hardware by hand.
If you had to manually specify your PCI SCSI adapter, DrakX will ask if you
want to configure options for it. You should allow DrakX to probe the
@@ -785,7 +781,7 @@ the card if you feel the configuration is wrong.
* \"%s\": if you wish to configure your Internet or local network access,
you can do so now. Refer to the printed documentation or use the
-Mandriva Linux Control Center after the installation has finished to benefit
+Mageia Control Center after the installation has finished to benefit
from full in-line help.
* \"%s\": allows to configure HTTP and FTP proxy addresses if the machine
@@ -802,23 +798,23 @@ firewall settings.
* \"%s\": if you wish to change your bootloader configuration, click this
button. This should be reserved to advanced users. Refer to the printed
documentation or the in-line help about bootloader configuration in the
-Mandriva Linux Control Center.
+Mageia Control Center.
* \"%s\": through this entry you can fine tune which services will be run
on your machine. If you plan to use this machine as a server it's a good
idea to review this setup.", N("Configure"), N("Keyboard"), N("Country / Region"), N("Configure"), N("More"), N("Timezone"), N("Configure"), N("Mouse"), N("Sound card"), N("TV card"), N("Configure"), N("ISDN card"), N("Configure"), N("Graphical Interface"), N("Configure"), N("Network"), N("Proxies"), N("Security Level"), N("Firewall"), N("Bootloader"), N("Services"));
}
sub takeOverHdChoose() {
- N("Choose the hard drive you want to erase in order to install your new
-Mandriva Linux partition. Be careful, all data on this drive will be lost
+ N("Choose the hard disk drive you want to erase in order to install your new
+Mageia partition. Be careful, all data on this drive will be lost
and will not be recoverable!");
}
sub takeOverHdConfirm() {
N("Click on \"%s\" if you want to delete all data and partitions present on
-this hard drive. Be careful, after clicking on \"%s\", you will not be able
-to recover any data and partitions present on this hard drive, including
+this hard disk drive. Be careful, after clicking on \"%s\", you will not be able
+to recover any data and partitions present on this hard disk drive, including
any Windows data.
Click on \"%s\" to quit this operation without losing data and partitions
-present on this hard drive.", N("Next ->"), N("Next ->"), N("<- Previous"));
+present on this hard disk drive.", N("Next ->"), N("Next ->"), N("<- Previous"));
}
diff --git a/perl-install/install/help/help_xml2pm.pl b/perl-install/install/help/help_xml2pm.pl
index 742bd9b78..e0402fd6c 100755
--- a/perl-install/install/help/help_xml2pm.pl
+++ b/perl-install/install/help/help_xml2pm.pl
@@ -46,7 +46,7 @@ EOF
foreach my $id (keys %{$helps{$lang}}) {
# warn "Writing id=$id in lang=$lang\n";
$base->{$id} or warn "$lang:$id doesn't exist in english\n", next;
- print $F qq(# DO NOT BOTHER TO MODIFY HERE, SEE:\n# cvs.mandriva.com:/cooker/$dir/$lang/drakx-chapter.xml\n);
+ print $F qq(# DO NOT BOTHER TO MODIFY HERE, SEE:\n# svn.mageia.org:/cauldron/$dir/$lang/drakx-chapter.xml\n);
print_in_PO($F, $base->{$id}[0], $helps{$lang}{$id}[0]);
}
}
diff --git a/perl-install/install/help/po/.gitignore b/perl-install/install/help/po/.gitignore
new file mode 100644
index 000000000..cd1f2c943
--- /dev/null
+++ b/perl-install/install/help/po/.gitignore
@@ -0,0 +1 @@
+*.mo
diff --git a/perl-install/install/help/po/.tx/config b/perl-install/install/help/po/.tx/config
new file mode 100644
index 000000000..1e41c0d04
--- /dev/null
+++ b/perl-install/install/help/po/.tx/config
@@ -0,0 +1,8 @@
+[main]
+host = https://www.transifex.com
+
+[o:MageiaLinux:p:mageia:r:drakx_help]
+file_filter = <lang>.po
+source_file = DrakX-help.pot
+source_lang = en
+type = PO
diff --git a/perl-install/install/help/po/DrakX-help.pot b/perl-install/install/help/po/DrakX-help.pot
index a06e6d296..48524b132 100644
--- a/perl-install/install/help/po/DrakX-help.pot
+++ b/perl-install/install/help/po/DrakX-help.pot
@@ -20,7 +20,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -84,7 +84,7 @@ msgstr ""
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -94,31 +94,31 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -129,12 +129,12 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
+"There are thousands of packages available for Mageia, and to make "
"it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -214,10 +214,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -310,7 +310,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -408,39 +408,39 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -449,7 +449,7 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
+"your hard disk drive and replace them with your new Mageia system, "
"choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
@@ -457,7 +457,7 @@ msgid ""
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -564,7 +564,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -573,7 +573,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -596,7 +596,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -612,21 +612,21 @@ msgstr ""
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -642,21 +642,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -673,14 +673,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -721,34 +715,34 @@ msgstr ""
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -768,23 +762,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
+"currently installed on your Mageia system. Your current "
"partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -825,7 +819,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
+"still under development. For that reason, Mageia's use of UTF-8 "
"will\n"
"depend on the user's choices:\n"
"\n"
@@ -931,7 +925,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -942,7 +936,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -963,7 +957,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -990,7 +984,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1052,7 +1046,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
+"Mageia Control Center after the installation has finished to "
"benefit\n"
"from full in-line help.\n"
"\n"
@@ -1070,7 +1064,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1095,8 +1089,8 @@ msgstr ""
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1104,12 +1098,12 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
#: ../help.pm:872
diff --git a/perl-install/install/help/po/af.po b/perl-install/install/help/po/af.po
index d3fc94ce1..66b9f7757 100644
--- a/perl-install/install/help/po/af.po
+++ b/perl-install/install/help/po/af.po
@@ -15,6 +15,7 @@ msgstr ""
"PO-Revision-Date: 2005-04-21 17:33+0200\n"
"Last-Translator: Dirk van der Walt <dirkvanderwalt@webmail.co.za>\n"
"Language-Team: Afrikaans\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -22,15 +23,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Voordat u voortgaan, lees asb die lisensieterme noukeurig deur. Dit dek\n"
-"die hele Mandriva Linux distribusie. Indien u saamstem met al die\n"
+"die hele Mageia distribusie. Indien u saamstem met al die\n"
"voorwaardes daarin, merk die \"%s\" boksie. Indien nie, kan u op die\n"
"\"%s\" knoppie druk om teherlaai."
@@ -139,7 +140,8 @@ msgstr "Wil u hierdie funksie gebruik?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -149,24 +151,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Hier is 'n lys van die bestaande Linux partisies wat opgespoor is.\n"
@@ -203,13 +209,13 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Die Mandriva Linux installasie is versprei oor 'n aantal CD-ROMs.DrakX\n"
+"Die Mageia installasie is versprei oor 'n aantal CD-ROMs.DrakX\n"
"weet wanneer 'n gekose pakket op 'n ander CD-ROM is. DrakX sal in so\n"
"geval die huidige CD uitskop en aandui watter een benodig word."
@@ -217,12 +223,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -273,12 +278,12 @@ msgid ""
"megabytes."
msgstr ""
"Nou moet u spesifiseer watter programme u op die rekenaar wil\n"
-"installeer. Daar is duisende pakkette beskikbaar vir Mandriva Linux, en\n"
+"installeer. Daar is duisende pakkette beskikbaar vir Mageia, en\n"
"om alles meer eenvoudig te maak, is die pakkette gegroepeer onder\n"
"groepe van selfde tipe programme.\n"
"\n"
"Die groepe is so saamgestel dat dit saamval met die tipe gebruik van u\n"
-"rekenaar. Mandriva Linux het vier vooraf gespesifseerde installasies\n"
+"rekenaar. Mageia het vier vooraf gespesifseerde installasies\n"
"beskikbaar. Dink aan hierdie tipes as houers met verskillende pakkette.\n"
"U kan wel uit die verskillende houers, verskillende pakkette kies.\n"
"Dus kan u \"Werkstasie\" ook programme uit die \"Ontwikkeling\"\n"
@@ -345,10 +350,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -378,7 +383,7 @@ msgstr ""
"\n"
"Indien u 'n diensprogram kies, of dit nou deel is van 'n groepe pakkette of\n"
"'n enkel een, sal u gevra word om die installasie daarvan te bevestig.\n"
-"Mandriva Linux sal by verstek alle bediener-programme afskop nadat u die\n"
+"Mageia sal by verstek alle bediener-programme afskop nadat u die\n"
"rekenaar aangeskakel het. Hierdie bediener-programme is verpak sonder\n"
"enige probleme bekend. Dit kon intussen verander het, nadat sekuriteits-"
"gate\n"
@@ -502,7 +507,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -670,39 +675,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -711,15 +720,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -732,11 +741,11 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Op hierdie tydstip moet u besluit waar op die hardeskyf u Mandriva Linux\n"
+"Op hierdie tydstip moet u besluit waar op die hardeskyf u Mageia\n"
"wil installeer. Indien u 'n leë hardeskyf het, of indien 'n bestaande\n"
"bedryfstelsel al die beskikbare spasie gebruik, sal u partisies moet\n"
"skep. Om 'n partisie te skep veroorsaak dat u die hardeskyf logies\n"
-"verdeel, om spasie te skep vir u nuwe Mandriva Linux bedryfstelsel.\n"
+"verdeel, om spasie te skep vir u nuwe Mageia bedryfstelsel.\n"
"\n"
"Indien u 'n onervare gebruiker is, kan die skep van partisies vreemd en\n"
"intimiderend wees.\n"
@@ -766,14 +775,14 @@ msgstr ""
"geskied\n"
"sonner verlies van data, mits u die partisie gedefragmenteer het.Ons beveel "
"ten sterkste aan dat u 'n rugsteun maak van u data. Hierdie is\n"
-"die beste metode indien u beide Mandriva Linux en Microsoft Windows op die\n"
+"die beste metode indien u beide Mageia en Microsoft Windows op die\n"
"rekenaar wil gebruik.\n"
"\n"
"Neem tog kennis dat dit die beskikbare oop spasie in Microsoft Windows sal\n"
"verminder, aangesien ons plek moet maak vir Linux op die hardeskyf.\n"
"\n"
" * \"%s\": Indien u alle data op alle partisies op u hardeskyf wil uitwis,\n"
-"en dit dan vervang met Mandriva Linux, kan u hierdie opsie kies.\n"
+"en dit dan vervang met Mageia, kan u hierdie opsie kies.\n"
"Wees versigtig die opsie is onomkeerbaar!\n"
"\n"
" !! Net weer waarsku: alle data op die skyf sal vernietig word. !! \n"
@@ -910,7 +919,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -941,7 +950,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -953,7 +962,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Teen die tyd wat u Mandriva Linux installeer, is dit hoogs waarskynlik\n"
+"Teen die tyd wat u Mageia installeer, is dit hoogs waarskynlik\n"
"dat van die pakkette intussen opgedateer is. Foute kom reggestel wees,\n"
"of sekuriteits probleme is dalk opgelos. Om voordeel hieruit te put, kan\n"
"u hulle nou van die Internet aflaai. Merk \"%s\" indien u 'n werkende\n"
@@ -974,7 +983,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -987,8 +996,7 @@ msgstr ""
"dit algemene gebruik op die rekenaar moeiliker maak.\n"
"\n"
"Indien u onseker is oor wat om te kies, bly by die verstek opsie. U\n"
-"kan altyd later die vlak verander deur draksec in die Mandriva Linux "
-"Control\n"
+"kan altyd later die vlak verander deur draksec in die Mageia Control\n"
"Center te grbruik.\n"
"\n"
"Die \"%s\" veld kan boodskappe stuur na 'n gekose persoon wat\n"
@@ -1001,24 +1009,27 @@ msgid "Security Administrator"
msgstr "Sekuriteits-admin:"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1034,21 +1045,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1065,17 +1078,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Nou moet u asseblief besluit watter partisie(s) u gaan gebruik vir die\n"
-"installasie van u Mandriva Linux rekenaar.Indien die partisies reeds\n"
+"installasie van u Mageia rekenaar.Indien die partisies reeds\n"
"geskep is gedurende 'n vorige GNU/Linux installasie of deur 'n ander\n"
"partisie-program, kan u hulle gebruik.Indien nie, moet u eerstens\n"
"partisies skep.\n"
@@ -1088,7 +1095,7 @@ msgstr ""
"\n"
" * \"%s\": hierdie opsie wis alle partisies op die gekose skyf uit.\n"
"\n"
-" * \"%s\": hierdie opsie sal outomaties 'ext3' en 'swap' partisies in die\n"
+" * \"%s\": hierdie opsie sal outomaties 'ext4' en 'swap' partisies in die\n"
"vrye spasie op die hardeskyf skep.\n"
"\n"
"\"%s\": gee u toegang tot verdere keuses:\n"
@@ -1138,11 +1145,6 @@ msgstr ""
"Om inligting rakende die verskillende beskikbare lêerstelsels te bekom, "
"lees\n"
"asseblief die ext2FS hoofstuk in die \"Reference Manual\".\n"
-"\n"
-"Indien u op 'n PPC masjien installeer, sal u 'n klien HFS 'bootstrap'\n"
-"partisie van ten minste 1MB wil skep. Dit sal deur 'yaboot' herlaai-\n"
-" stelsel gebruik word. Maak dit bietjie groter vir spaar 'kernel' en\n"
-"'ramdisk' beelde vir hulp in nood situasies."
#: ../help.pm:526
#, c-format
@@ -1180,41 +1182,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Skakel tussen normale/kenner modus"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Ons het meer as een Microsoft-partisie op u hardeskyf gevind.\n"
"Kies dan nou die een wie se grootte u wil verander, om plek te maak\n"
-"vir u nuwe Mandriva Linux bedryfstelsel.\n"
+"vir u nuwe Mageia bedryfstelsel.\n"
"\n"
"Elke partisie is as volg gelys: \"Linux-naam\", \"Windows-naam\"\n"
"\"Kapasiteit\".\n"
@@ -1263,29 +1271,29 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Hierdie stap word slegs gedoen indien ou GNU/Linux partisies op die\n"
"rekenaar gevind is.\n"
"\n"
"DrakX moet nou weet of u 'n nuwe installasie of 'n opgradering van 'n\n"
-"bestaande Mandriva Linux wil doen:\n"
+"bestaande Mageia wil doen:\n"
"\n"
" * \"%s\": Hierdie deel word grootliks gebruik vir 'n hele nuwe "
"installasie.\n"
@@ -1294,7 +1302,7 @@ msgstr ""
"van u partisies se data wil behou.\n"
"\n"
" * \"%s\": hierdie tipe installasie laat u toe om pakkette op te dateer\n"
-"wat deel uitmaak van u huidige Mandriva Linux installasie. Die partisies\n"
+"wat deel uitmaak van u huidige Mageia installasie. Die partisies\n"
"en gebruiker se data bly onveranderd. Ander stappe is baie dieselfde as\n"
"'n normale installasie.\n"
"\n"
@@ -1353,8 +1361,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1514,7 +1521,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1539,7 +1546,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1560,11 +1567,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Dit is nou tyd om u drukkerstelsel te kies. Ander bedryfstelsels sal\n"
-"seker net een aan u bied, maar Mandriva Linux gee twee. Elk van hulle\n"
+"seker net een aan u bied, maar Mageia gee twee. Elk van hulle\n"
"is beter as die ander in sekere gevalle.\n"
"\n"
" * \"%s\" -- wat vir \"print, do not queue\" staan. Kies dit indien u\n"
@@ -1583,7 +1590,7 @@ msgstr ""
"opsies te keis en drukkers te bestuur.\n"
"\n"
"Sou u die keuse nou, later wil verander, gaan gerus na 'PrinterDrake'\n"
-"in die 'Mandriva Linux Control Center' en klik op die \"Kenner\" knoppie."
+"in die 'Mageia Control Center' en klik op die \"Kenner\" knoppie."
#: ../help.pm:768
#, c-format
@@ -1608,7 +1615,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1690,8 +1697,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1708,7 +1714,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1781,13 +1787,13 @@ msgid "Graphical Interface"
msgstr "Grafiese koppelvlak"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Kies die hardeskyf wat u wil wis, om u nuwe Mandriva Linux\n"
+"Kies die hardeskyf wat u wil wis, om u nuwe Mageia\n"
"te kan installeer. Wees tog versigtig, alle huidige data op daardie\n"
"partisie sal vernietig word!"
@@ -1795,12 +1801,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Klik op \"%s\" sou u al die data an al die partisies wat tans op hierdie\n"
"hardeskyf is wil uitwis. Wees versigtig! Na u \"%s\" geklik het, sal u nie\n"
diff --git a/perl-install/install/help/po/am.po b/perl-install/install/help/po/am.po
index 7ceedce4f..4d4d94e65 100644
--- a/perl-install/install/help/po/am.po
+++ b/perl-install/install/help/po/am.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2004-06-01 03:36+0100\n"
"Last-Translator: Alemayehu <alemayehu@gmx.at>\n"
"Language-Team: Amharic <am-translate@geez.org>\n"
+"Language: am\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -18,7 +19,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -82,7 +83,8 @@ msgstr "ይህንን ሁኔታ መጠቀም ይፈልጋሉ?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -92,31 +94,35 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -127,12 +133,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -212,10 +217,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -308,7 +313,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -406,39 +411,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -447,15 +456,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -562,7 +571,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -571,7 +580,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -594,7 +603,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -610,21 +619,24 @@ msgstr "የደህንነት ተቆጣጣሪ"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -640,21 +652,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -671,14 +685,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -719,34 +727,40 @@ msgstr ""
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -766,23 +780,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -823,8 +837,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -929,7 +942,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -940,7 +953,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -961,7 +974,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -988,7 +1001,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1050,8 +1063,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1068,7 +1080,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1093,8 +1105,8 @@ msgstr "ንድፋዊ እይታ"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1102,12 +1114,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
#: ../help.pm:872
diff --git a/perl-install/install/help/po/ar.po b/perl-install/install/help/po/ar.po
index 7d6029330..308fda099 100644
--- a/perl-install/install/help/po/ar.po
+++ b/perl-install/install/help/po/ar.po
@@ -14,6 +14,7 @@ msgstr ""
"PO-Revision-Date: 2005-03-03 01:06+0300\n"
"Last-Translator: Ossama M. Khayat <okhayat@yahoo.com>\n"
"Language-Team: Arabic <support@arabeyes.org>\n"
+"Language: ar\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -22,10 +23,10 @@ msgstr ""
"3\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -131,7 +132,8 @@ msgstr "هل تريد استخدام هذه الميزة؟"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -141,24 +143,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"في الأعلى ستجد تجزيئات لينكس الموجودة والتي عثر عليها على القرص الصلب الخاص "
@@ -191,9 +197,9 @@ msgstr ""
"يعني \"ثاني أقل معرف SCSI\"، الخ."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -208,12 +214,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -333,7 +338,7 @@ msgid "Truly minimal install"
msgstr "تثبيت مصغّر جداً"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -346,10 +351,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -508,11 +513,11 @@ msgstr ""
"يناسب احتياجاتك أكثر."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -684,41 +689,45 @@ msgstr ""
"بشكل صحيح."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -727,15 +736,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -914,7 +923,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -933,7 +942,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -961,9 +970,9 @@ msgstr ""
"الكتل السّيئة على القرص."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -988,7 +997,7 @@ msgstr ""
"الحزم المختارة، أو \"%s\" لإلغاء التّحديث."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -997,7 +1006,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1023,24 +1032,27 @@ msgid "Security Administrator"
msgstr "مدير الأمن"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1056,21 +1068,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1087,14 +1101,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"عند هذه النقطة، تحتاج لاختيار أي التجزيئات ستستخدم\n"
"لتثبيت نظام ماندريبا لينكس. إن كانت التجزيئات بالفعل\n"
@@ -1110,7 +1118,7 @@ msgstr ""
"\n"
" * \"%s\": هذا الخيار يحذف كل التجزيئات على القرص الصّلب المحدّد\n"
"\n"
-" * \"%s\": هذا الخيار يمكّنك من إنشاء تجزيئات ext3 والذّاكرة البديلة آليّاً\n"
+" * \"%s\": هذا الخيار يمكّنك من إنشاء تجزيئات ext4 والذّاكرة البديلة آليّاً\n"
"في المساحة الشّاغرة لقرصك الصّلب\n"
"\n"
" * %s: يعطي حقّ الوصول إلى مزايا إضافيّة:\n"
@@ -1161,13 +1169,6 @@ msgstr ""
"\n"
"لتحصل على معلومات حول أنواع أنظمة الملفّات المختلفة المتوفّرة، رجاءً\n"
"اقرا فَصْل ext2FS من ``الدّليل المرجعي``.\n"
-"\n"
-"إن كنت تقوم بالتّثبيت على ماكينة PPC، ستحتاج أن تنشئ تجزيء HFS\n"
-"``bootstrap`` صغير بحجم 1 ميجابايت على الأقلّ والذي سيستخدم بواسطة مُحمّل "
-"الإقلاع yaboot.\n"
-"إن اخترت أن تجعل التجزيء أكبر قليلاً، لنقل 50 ميجابايت، قد تجده\n"
-"مفيد لتخزين نواة احتياطية وصور ramdisk من أجل\n"
-"أوضاع الإقلاع الطّارئة."
#: ../help.pm:526
#, c-format
@@ -1205,36 +1206,42 @@ msgid "Toggle between normal/expert mode"
msgstr "التغيير إلى الوضع العادي/وضع الخبير"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"تمّ اكتشاف أكثر من تجزيء ميكروسوفت على قرصك الصّلب.\n"
@@ -1280,29 +1287,29 @@ msgstr ""
"بالبلدان."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"يتم تنشيط هذه الخطوة فقط إذا عُثر على تجزيء جنو/لينكس موجود\n"
"على ماكينتك.\n"
@@ -1364,7 +1371,7 @@ msgstr ""
"ستبدل وضع لوحة المفاتيح بين الحروف اللاتينية والغير لاتينية."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1380,8 +1387,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1561,7 +1567,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1585,10 +1591,10 @@ msgstr ""
"إن كنت تعرف ماذا تفعل."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1609,7 +1615,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"الآن، حان وقت اختيار نظام الطباعة لحاسبك. قد توفّر أنظمة التشغيل الأخرى\n"
@@ -1662,7 +1668,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1743,8 +1749,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1761,7 +1766,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1851,10 +1856,10 @@ msgid "Graphical Interface"
msgstr "الواجهة الرسومية"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"اختر القرص الصلب الذي تريد محوه لتثبيت تجزيء\n"
@@ -1865,12 +1870,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"اضغط \"%s\" إن كنت تريد حذف كل التجزيئات الموجودة على القرص\n"
"الصلب. خذ حذرك، بعد ضغطك لزر \"%s\" لن تتمكن من استعادة\n"
diff --git a/perl-install/install/help/po/ast.po b/perl-install/install/help/po/ast.po
new file mode 100644
index 000000000..4478b0e7a
--- /dev/null
+++ b/perl-install/install/help/po/ast.po
@@ -0,0 +1,1138 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-09-12 12:22+0200\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Language-Team: Asturian (https://app.transifex.com/MageiaLinux/teams/9361/"
+"ast/)\n"
+"Language: ast\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../help.pm:14
+#, c-format
+msgid ""
+"Before continuing, you should carefully read the terms of the license. It\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
+"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
+"button will reboot your computer."
+msgstr ""
+
+#: ../help.pm:20
+#, c-format
+msgid ""
+"GNU/Linux is a multi-user system which means each user can have his or her\n"
+"own preferences, own files and so on. But unlike \"root\", who is the\n"
+"system administrator, the users you add at this point will not be "
+"authorized\n"
+"to change anything except their own files and their own configurations,\n"
+"protecting the system from unintentional or malicious changes which could\n"
+"impact on the system as a whole. You'll have to create at least one regular\n"
+"user for yourself -- this is the account which you should use for routine,\n"
+"day-to-day usage. Although it's very easy to log in as \"root\" to do\n"
+"anything and everything, it may also be very dangerous! A very simple\n"
+"mistake could mean that your system will not work any more. If you make a\n"
+"serious mistake as a regular user, the worst that can happen is that you'll\n"
+"lose some information, but you will not affect the entire system.\n"
+"\n"
+"The first field asks you for a real name. Of course, this is not mandatory\n"
+"-- you can actually enter whatever you like. DrakX will use the first word\n"
+"you type in this field and copy it to the \"%s\" one, which is the name\n"
+"this user will enter to log onto the system. If you like, you may override\n"
+"the default and change the user name. The next step is to enter a password.\n"
+"From a security point of view, a non-privileged (regular) user password is\n"
+"not as crucial as the \"root\" password, but that's no reason to neglect it\n"
+"by making it blank or too simple: after all, your files could be the ones\n"
+"at risk.\n"
+"\n"
+"Once you click on \"%s\", you can add other users. Add a user for each one\n"
+"of your friends, your father, your sister, etc. Click \"%s\" when you're\n"
+"finished adding users.\n"
+"\n"
+"Clicking the \"%s\" button allows you to change the default \"shell\" for\n"
+"that user (bash by default).\n"
+"\n"
+"When you're finished adding users, you'll be asked to choose a user who\n"
+"will be automatically logged into the system when the computer boots up. If\n"
+"you're interested in that feature (and do not care much about local\n"
+"security), choose the desired user and window manager, then click on\n"
+"\"%s\". If you're not interested in this feature, uncheck the \"%s\" box."
+msgstr ""
+
+#: ../help.pm:54
+#, c-format
+msgid "User name"
+msgstr ""
+
+#: ../help.pm:54
+#, c-format
+msgid "Accept user"
+msgstr ""
+
+#: ../help.pm:54
+#, c-format
+msgid "Do you want to use this feature?"
+msgstr ""
+
+#: ../help.pm:57
+#, c-format
+msgid ""
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
+"You can keep the choices made by the wizard, since they are good for most\n"
+"common installations. If you make any changes, you must at least define a\n"
+"root partition (\"/\"). Do not choose too small a partition or you will not\n"
+"be able to install enough software. If you want to store your data on a\n"
+"separate partition, you will also need to create a \"/home\" partition\n"
+"(only possible if you have more than one Linux partition available).\n"
+"\n"
+"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
+"\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
+"\"partition number\" (for example, \"hda1\").\n"
+"\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
+"\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
+"\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
+"\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
+"\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
+"\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
+"\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
+"\"second lowest SCSI ID\", etc."
+msgstr ""
+
+#: ../help.pm:88
+#, c-format
+msgid ""
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
+"selected package is located on another CD-ROM, DrakX will eject the current\n"
+"CD and ask you to insert the required one. If you do not have the requested\n"
+"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
+"installed."
+msgstr ""
+
+#: ../help.pm:95
+#, c-format
+msgid ""
+"It's now time to specify which programs you wish to install on your system.\n"
+"There are thousands of packages available for Mageia, and to make it\n"
+"simpler to manage, they have been placed into groups of similar\n"
+"applications.\n"
+"\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
+"match applications from the various categories, so a ``Workstation''\n"
+"installation can still have applications from the ``Server'' category\n"
+"installed.\n"
+"\n"
+" * \"%s\": if you plan to use your machine as a workstation, select one or\n"
+"more of the groups in the workstation category.\n"
+"\n"
+" * \"%s\": if you plan on using your machine for programming, select the\n"
+"appropriate groups from that category. The special \"LSB\" group will\n"
+"configure your system so that it complies as much as possible with the\n"
+"Linux Standard Base specifications.\n"
+"\n"
+" Selecting the \"LSB\" group will ensure 100%%-LSB compliance\n"
+"of the system. However, if you do not select the \"LSB\" group you will\n"
+"still have a system which is nearly 100%% LSB-compliant.\n"
+"\n"
+" * \"%s\": if your machine is intended to be a server, select which of the\n"
+"more common services you wish to install on your machine.\n"
+"\n"
+" * \"%s\": this is where you will choose your preferred graphical\n"
+"environment. At least one must be selected if you want to have a graphical\n"
+"interface available.\n"
+"\n"
+"Moving the mouse cursor over a group name will display a short explanatory\n"
+"text about that group.\n"
+"\n"
+"You can check the \"%s\" box, which is useful if you're familiar with the\n"
+"packages being offered or if you want to have total control over what will\n"
+"be installed.\n"
+"\n"
+"If you start the installation in \"%s\" mode, you can deselect all groups\n"
+"and prevent the installation of any new packages. This is useful for\n"
+"repairing or updating an existing system.\n"
+"\n"
+"If you deselect all groups when performing a regular installation (as\n"
+"opposed to an upgrade), a dialog will pop up suggesting different options\n"
+"for a minimal installation:\n"
+"\n"
+" * \"%s\": install the minimum number of packages possible to have a\n"
+"working graphical desktop.\n"
+"\n"
+" * \"%s\": installs the base system plus basic utilities and their\n"
+"documentation. This installation is suitable for setting up a server.\n"
+"\n"
+" * \"%s\": will install the absolute minimum number of packages necessary\n"
+"to get a working Linux system. With this installation you will only have a\n"
+"command-line interface. The total size of this installation is about 65\n"
+"megabytes."
+msgstr ""
+
+#: ../help.pm:149 ../help.pm:591
+#, c-format
+msgid "Upgrade"
+msgstr ""
+
+#: ../help.pm:149
+#, c-format
+msgid "With basic documentation"
+msgstr ""
+
+#: ../help.pm:149
+#, c-format
+msgid "Truly minimal install"
+msgstr ""
+
+#: ../help.pm:152
+#, c-format
+msgid ""
+"If you choose to install packages individually, the installer will present\n"
+"a tree containing all packages classified by groups and subgroups. While\n"
+"browsing the tree, you can select entire groups, subgroups, or individual\n"
+"packages.\n"
+"\n"
+"Whenever you select a package on the tree, a description will appear on the\n"
+"right to let you know the purpose of that package.\n"
+"\n"
+"!! If a server package has been selected, either because you specifically\n"
+"chose the individual package or because it was part of a group of packages,\n"
+"you'll be asked to confirm that you really want those servers to be\n"
+"installed. By default Mageia will automatically start any installed\n"
+"services at boot time. Even if they are safe and have no known issues at\n"
+"the time the distribution was shipped, it is entirely possible that\n"
+"security holes were discovered after this version of Mageia was\n"
+"finalized. If you do not know what a particular service is supposed to do "
+"or\n"
+"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
+"the listed services and they will be started automatically at boot time. !!\n"
+"\n"
+"The \"%s\" option is used to disable the warning dialog which appears\n"
+"whenever the installer automatically selects a package to resolve a\n"
+"dependency issue. Some packages depend on others and the installation of\n"
+"one particular package may require the installation of another package. The\n"
+"installer can determine which packages are required to satisfy a dependency\n"
+"to successfully complete the installation.\n"
+"\n"
+"The tiny floppy disk icon at the bottom of the list allows you to load a\n"
+"package list created during a previous installation. This is useful if you\n"
+"have a number of machines that you wish to configure identically. Clicking\n"
+"on this icon will ask you to insert the floppy disk created at the end of\n"
+"another installation. See the second tip of the last step on how to create\n"
+"such a floppy."
+msgstr ""
+
+#: ../help.pm:183
+#, c-format
+msgid "Automatic dependencies"
+msgstr ""
+
+#: ../help.pm:185
+#, c-format
+msgid ""
+"This dialog is used to select which services you wish to start at boot\n"
+"time.\n"
+"\n"
+"DrakX will list all services available on the current installation. Review\n"
+"each one of them carefully and uncheck those which are not needed at boot\n"
+"time.\n"
+"\n"
+"A short explanatory text will be displayed about a service when it is\n"
+"selected. However, if you're not sure whether a service is useful or not,\n"
+"it is safer to leave the default behavior.\n"
+"\n"
+"!! At this stage, be very careful if you intend to use your machine as a\n"
+"server: you probably do not want to start any services which you do not "
+"need.\n"
+"Please remember that some services can be dangerous if they're enabled on a\n"
+"server. In general, select only those services you really need. !!"
+msgstr ""
+
+#: ../help.pm:209
+#, c-format
+msgid ""
+"GNU/Linux manages time in GMT (Greenwich Mean Time) and translates it to\n"
+"local time according to the time zone you selected. If the clock on your\n"
+"motherboard is set to local time, you may deactivate this by unselecting\n"
+"\"%s\", which will let GNU/Linux know that the system clock and the\n"
+"hardware clock are in the same time zone. This is useful when the machine\n"
+"also hosts another operating system.\n"
+"\n"
+"The \"%s\" option will automatically regulate the system clock by\n"
+"connecting to a remote time server on the Internet. For this feature to\n"
+"work, you must have a working Internet connection. We recommend that you\n"
+"choose a time server located near you. This option actually installs a time\n"
+"server which can be used by other machines on your local network as well."
+msgstr ""
+
+#: ../help.pm:213
+#, c-format
+msgid "Hardware clock set to GMT"
+msgstr ""
+
+#: ../help.pm:213
+#, c-format
+msgid "Automatic time synchronization"
+msgstr ""
+
+#: ../help.pm:223
+#, c-format
+msgid ""
+"Graphic Card\n"
+"\n"
+" The installer will normally automatically detect and configure the\n"
+"graphic card installed on your machine. If this is not correct, you can\n"
+"choose from this list the card you actually have installed.\n"
+"\n"
+" In the situation where different servers are available for your card,\n"
+"with or without 3D acceleration, you're asked to choose the server which\n"
+"best suits your needs."
+msgstr ""
+
+#: ../help.pm:234
+#, c-format
+msgid ""
+"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
+"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
+"\n"
+"You'll see a list of different parameters to change to get an optimal\n"
+"graphical display.\n"
+"\n"
+"Graphic Card\n"
+"\n"
+" The installer will normally automatically detect and configure the\n"
+"graphic card installed on your machine. If this is not correct, you can\n"
+"choose from this list the card you actually have installed.\n"
+"\n"
+" In the situation where different servers are available for your card,\n"
+"with or without 3D acceleration, you're asked to choose the server which\n"
+"best suits your needs.\n"
+"\n"
+"\n"
+"\n"
+"Monitor\n"
+"\n"
+" Normally the installer will automatically detect and configure the\n"
+"monitor connected to your machine. If it is not correct, you can choose\n"
+"from this list the monitor which is connected to your computer.\n"
+"\n"
+"\n"
+"\n"
+"Resolution\n"
+"\n"
+" Here you can choose the resolutions and color depths available for your\n"
+"graphics hardware. Choose the one which best suits your needs (you will be\n"
+"able to make changes after the installation). A sample of the chosen\n"
+"configuration is shown in the monitor picture.\n"
+"\n"
+"\n"
+"\n"
+"Test\n"
+"\n"
+" Depending on your hardware, this entry might not appear.\n"
+"\n"
+" The system will try to open a graphical screen at the desired\n"
+"resolution. If you see the test message during the test and answer \"%s\",\n"
+"then DrakX will proceed to the next step. If you do not see it, then it\n"
+"means that some part of the auto-detected configuration was incorrect and\n"
+"the test will automatically end after 12 seconds and return you to the\n"
+"menu. Change settings until you get a correct graphical display.\n"
+"\n"
+"\n"
+"\n"
+"Options\n"
+"\n"
+" This steps allows you to choose whether you want your machine to\n"
+"automatically switch to a graphical interface at boot. Obviously, you may\n"
+"want to check \"%s\" if your machine is to act as a server, or if you were\n"
+"not successful in getting the display configured."
+msgstr ""
+
+#: ../help.pm:291
+#, c-format
+msgid ""
+"Monitor\n"
+"\n"
+" Normally the installer will automatically detect and configure the\n"
+"monitor connected to your machine. If it is not correct, you can choose\n"
+"from this list the monitor which is connected to your computer."
+msgstr ""
+
+#: ../help.pm:298
+#, c-format
+msgid ""
+"Resolution\n"
+"\n"
+" Here you can choose the resolutions and color depths available for your\n"
+"graphics hardware. Choose the one which best suits your needs (you will be\n"
+"able to make changes after the installation). A sample of the chosen\n"
+"configuration is shown in the monitor picture."
+msgstr ""
+
+#: ../help.pm:306
+#, c-format
+msgid ""
+"In the situation where different servers are available for your card, with\n"
+"or without 3D acceleration, you're asked to choose the server which best\n"
+"suits your needs."
+msgstr ""
+
+#: ../help.pm:311
+#, c-format
+msgid ""
+"Options\n"
+"\n"
+" This steps allows you to choose whether you want your machine to\n"
+"automatically switch to a graphical interface at boot. Obviously, you may\n"
+"want to check \"%s\" if your machine is to act as a server, or if you were\n"
+"not successful in getting the display configured."
+msgstr ""
+
+#: ../help.pm:319
+#, c-format
+msgid ""
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
+"existing operating system is using all the available space you will have to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
+"logically divide it to create the space needed to install your new\n"
+"Mageia system.\n"
+"\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
+"and can lead to data losses, partitioning can be intimidating and stressful\n"
+"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
+"simplifies this process. Before continuing with this step, read through the\n"
+"rest of this section and above all, take your time.\n"
+"\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
+"available:\n"
+"\n"
+" * \"%s\". This option will perform an automatic partitioning of your blank\n"
+"drive(s). If you use this option there will be no further prompts.\n"
+"\n"
+" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
+"be asked to choose the mount points associated with each of the partitions.\n"
+"The legacy mount points are selected by default, and for the most part it's\n"
+"a good idea to keep them.\n"
+"\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
+"all the space available on it, you will have to create free space for\n"
+"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
+"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
+"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
+"data, provided you've previously defragmented the Windows partition.\n"
+"Backing up your data is strongly recommended. Using this option is\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
+"the same computer.\n"
+"\n"
+" Before choosing this option, please understand that after this\n"
+"procedure, the size of your Microsoft Windows partition will be smaller\n"
+"than when you started. You'll have less free space under Microsoft Windows\n"
+"to store your data or to install new software.\n"
+"\n"
+" * \"%s\". If you want to delete all data and all partitions present on\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
+"this option. Be careful, because you will not be able to undo this "
+"operation\n"
+"after you confirm.\n"
+"\n"
+" !! If you choose this option, all data on your disk will be deleted. !!\n"
+"\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
+"Microsoft Windows. Choosing this option will simply erase everything on the\n"
+"drive and begin fresh, partitioning everything from scratch.\n"
+"\n"
+" !! If you choose this option, all data on your disk will be lost. !!\n"
+"\n"
+" * \"%s\". Choose this option if you want to manually partition your hard\n"
+"drive. Be careful -- it is a powerful but dangerous choice and you can very\n"
+"easily lose all your data. That's why this option is really only\n"
+"recommended if you have done something like this before and have some\n"
+"experience. For more instructions on how to use the DiskDrake utility,\n"
+"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
+msgstr ""
+
+#: ../help.pm:377
+#, c-format
+msgid "Use existing partition"
+msgstr ""
+
+#: ../help.pm:370
+#, c-format
+msgid "Use the free space on the Microsoft Windows® partition"
+msgstr ""
+
+#: ../help.pm:370
+#, c-format
+msgid "Erase entire disk"
+msgstr ""
+
+#: ../help.pm:380
+#, c-format
+msgid ""
+"There you are. Installation is now complete and your GNU/Linux system is\n"
+"ready to be used. Just click on \"%s\" to reboot the system. Do not forget\n"
+"to remove the installation media (CD-ROM or floppy). The first thing you\n"
+"should see after your computer has finished doing its hardware tests is the\n"
+"boot-loader menu, giving you the choice of which operating system to start.\n"
+"\n"
+"The \"%s\" button shows two more buttons to:\n"
+"\n"
+" * \"%s\": enables you to create an installation floppy disk which will\n"
+"automatically perform a whole installation without the help of an operator,\n"
+"similar to the installation you've just configured.\n"
+"\n"
+" Note that two different options are available after clicking on that\n"
+"button:\n"
+"\n"
+" * \"%s\". This is a partially automated installation. The partitioning\n"
+"step is the only interactive procedure.\n"
+"\n"
+" * \"%s\". Fully automated installation: the hard disk is completely\n"
+"rewritten, all data is lost.\n"
+"\n"
+" This feature is very handy when installing on a number of similar\n"
+"machines. See the Auto install section on our web site for more\n"
+"information.\n"
+"\n"
+" * \"%s\"(*): saves a list of the packages selected in this installation.\n"
+"To use this selection with another installation, insert the floppy and\n"
+"start the installation. At the prompt, press the [F1] key, type >>linux\n"
+"defcfg=\"floppy\"<< and press the [Enter] key.\n"
+"\n"
+"(*) You need a FAT-formatted floppy. To create one under GNU/Linux, type\n"
+"\"mformat a:\", or \"fdformat /dev/fd0\" followed by \"mkfs.vfat\n"
+"/dev/fd0\"."
+msgstr ""
+
+#: ../help.pm:412
+#, c-format
+msgid "Generate auto-install floppy"
+msgstr ""
+
+#: ../help.pm:405
+#, c-format
+msgid "Replay"
+msgstr ""
+
+#: ../help.pm:405
+#, c-format
+msgid "Automated"
+msgstr ""
+
+#: ../help.pm:405
+#, c-format
+msgid "Save packages selection"
+msgstr ""
+
+#: ../help.pm:408
+#, c-format
+msgid ""
+"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
+"reformat some of them and erase any data they contain. To do so, please\n"
+"select those partitions as well.\n"
+"\n"
+"Please note that it's not necessary to reformat all pre-existing\n"
+"partitions. You must reformat the partitions containing the operating\n"
+"system (such as \"/\", \"/usr\" or \"/var\") but you do not have to "
+"reformat\n"
+"partitions containing data that you wish to keep (typically \"/home\").\n"
+"\n"
+"Please be careful when selecting partitions. After the formatting is\n"
+"completed, all data on the selected partitions will be deleted and you\n"
+"will not be able to recover it.\n"
+"\n"
+"Click on \"%s\" when you're ready to format the partitions.\n"
+"\n"
+"Click on \"%s\" if you want to choose another partition for your new\n"
+"Mageia operating system installation.\n"
+"\n"
+"Click on \"%s\" if you wish to select partitions which will be checked for\n"
+"bad blocks on the disk."
+msgstr ""
+
+#: ../help.pm:437
+#, c-format
+msgid ""
+"By the time you install Mageia, it's likely that some packages will\n"
+"have been updated since the initial release. Bugs may have been fixed,\n"
+"security issues resolved. To allow you to benefit from these updates,\n"
+"you're now able to download them from the Internet. Check \"%s\" if you\n"
+"have a working Internet connection, or \"%s\" if you prefer to install\n"
+"updated packages later.\n"
+"\n"
+"Choosing \"%s\" will display a list of web locations from which updates can\n"
+"be retrieved. You should choose one near to you. A package-selection tree\n"
+"will appear: review the selection, and press \"%s\" to retrieve and install\n"
+"the selected package(s), or \"%s\" to abort."
+msgstr ""
+
+#: ../help.pm:450
+#, c-format
+msgid ""
+"At this point, DrakX will allow you to choose the security level you desire\n"
+"for your machine. As a rule of thumb, the security level should be set\n"
+"higher if the machine is to contain crucial data, or if it's to be directly\n"
+"exposed to the Internet. The trade-off that a higher security level is\n"
+"generally obtained at the expense of ease of use.\n"
+"\n"
+"If you do not know what to choose, keep the default option. You'll be able\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
+"Control Center.\n"
+"\n"
+"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
+"security. Security messages will be sent to that address."
+msgstr ""
+
+#: ../help.pm:461
+#, c-format
+msgid "Security Administrator"
+msgstr ""
+
+#: ../help.pm:464
+#, c-format
+msgid ""
+"At this point, you need to choose which partition(s) will be used for the\n"
+"installation of your Mageia system. If partitions have already been\n"
+"defined, either from a previous installation of GNU/Linux or by another\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
+"partitions must be defined.\n"
+"\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
+"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
+"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
+"\n"
+"To partition the selected hard disk drive, you can use these options:\n"
+"\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
+"\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
+"\n"
+"\"%s\": gives access to additional features:\n"
+"\n"
+" * \"%s\": saves the partition table to a floppy. Useful for later\n"
+"partition-table recovery if necessary. It is strongly recommended that you\n"
+"perform this step.\n"
+"\n"
+" * \"%s\": allows you to restore a previously saved partition table from a\n"
+"floppy disk.\n"
+"\n"
+" * \"%s\": if your partition table is damaged, you can try to recover it\n"
+"using this option. Please be careful and remember that it does not always\n"
+"work.\n"
+"\n"
+" * \"%s\": discards all changes and reloads the partition table that was\n"
+"originally on the hard disk drive.\n"
+"\n"
+" * \"%s\": un-checking this option will force users to manually mount and\n"
+"unmount removable media such as floppies and CD-ROMs.\n"
+"\n"
+" * \"%s\": use this option if you wish to use a wizard to partition your\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
+"partitioning.\n"
+"\n"
+" * \"%s\": use this option to cancel your changes.\n"
+"\n"
+" * \"%s\": allows additional actions on partitions (type, options, format)\n"
+"and gives more information about the hard disk drive.\n"
+"\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
+"save your changes back to disk.\n"
+"\n"
+"When defining the size of a partition, you can finely set the partition\n"
+"size by using the Arrow keys of your keyboard.\n"
+"\n"
+"Note: you can reach any option using the keyboard. Navigate through the\n"
+"partitions using [Tab] and the [Up/Down] arrows.\n"
+"\n"
+"When a partition is selected, you can use:\n"
+"\n"
+" * Ctrl-c to create a new partition (when an empty partition is selected)\n"
+"\n"
+" * Ctrl-d to delete a partition\n"
+"\n"
+" * Ctrl-m to set the mount point\n"
+"\n"
+"To get information about the different filesystem types available, please\n"
+"read the ext2FS chapter from the ``Reference Manual''.\n"
+msgstr ""
+
+#: ../help.pm:526
+#, c-format
+msgid "Save partition table"
+msgstr ""
+
+#: ../help.pm:526
+#, c-format
+msgid "Restore partition table"
+msgstr ""
+
+#: ../help.pm:526
+#, c-format
+msgid "Rescue partition table"
+msgstr ""
+
+#: ../help.pm:526
+#, c-format
+msgid "Removable media auto-mounting"
+msgstr ""
+
+#: ../help.pm:526
+#, c-format
+msgid "Wizard"
+msgstr ""
+
+#: ../help.pm:526
+#, c-format
+msgid "Undo"
+msgstr ""
+
+#: ../help.pm:526
+#, c-format
+msgid "Toggle between normal/expert mode"
+msgstr ""
+
+#: ../help.pm:536
+#, c-format
+msgid ""
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
+"Please choose the one which you want to resize in order to install your new\n"
+"Mageia operating system.\n"
+"\n"
+"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
+"\"Capacity\".\n"
+"\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
+"\"partition number\" (for example, \"hda1\").\n"
+"\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
+"\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
+"\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
+"\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
+"\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
+"\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
+"\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
+"\"second lowest SCSI ID\", etc.\n"
+"\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
+"disk or partition is called \"C:\")."
+msgstr ""
+
+#: ../help.pm:567
+#, c-format
+msgid ""
+"\"%s\": check the current country selection. If you're not in this country,\n"
+"click on the \"%s\" button and choose another. If your country is not in "
+"the\n"
+"list shown, click on the \"%s\" button to get the complete country list."
+msgstr ""
+
+#: ../help.pm:572
+#, c-format
+msgid ""
+"This step is activated only if an existing GNU/Linux partition has been\n"
+"found on your machine.\n"
+"\n"
+"DrakX now needs to know if you want to perform a new installation or an\n"
+"upgrade of an existing Mageia system:\n"
+"\n"
+" * \"%s\". For the most part, this completely wipes out the old system.\n"
+"However, depending on your partitioning scheme, you can prevent some of\n"
+"your existing data (notably \"home\" directories) from being over-written.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
+"\n"
+" * \"%s\". This installation class allows you to update the packages\n"
+"currently installed on your Mageia system. Your current partitioning\n"
+"scheme and user data will not be altered. Most of the other configuration\n"
+"steps remain available and are similar to a standard installation.\n"
+"\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
+"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
+"to Mageia version \"8.1\" is not recommended."
+msgstr ""
+
+#: ../help.pm:594
+#, c-format
+msgid ""
+"Depending on the language you chose (), DrakX will automatically select a\n"
+"particular type of keyboard configuration. Check that the selection suits\n"
+"you or choose another keyboard layout.\n"
+"\n"
+"Also, you may not have a keyboard which corresponds exactly to your\n"
+"language: for example, if you are an English-speaking Swiss native, you may\n"
+"have a Swiss keyboard. Or if you speak English and are located in Quebec,\n"
+"you may find yourself in the same situation where your native language and\n"
+"country-set keyboard do not match. In either case, this installation step\n"
+"will allow you to select an appropriate keyboard from a list.\n"
+"\n"
+"Click on the \"%s\" button to be shown a list of supported keyboards.\n"
+"\n"
+"If you choose a keyboard layout based on a non-Latin alphabet, the next\n"
+"dialog will allow you to choose the key binding which will switch the\n"
+"keyboard between the Latin and non-Latin layouts."
+msgstr ""
+
+#: ../help.pm:612
+#, c-format
+msgid ""
+"The first step is to choose your preferred language.\n"
+"\n"
+"Your choice of preferred language will affect the installer, the\n"
+"documentation, and the system in general. First select the region you're\n"
+"located in, then the language you speak.\n"
+"\n"
+"Clicking on the \"%s\" button will allow you to select other languages to\n"
+"be installed on your workstation, thereby installing the language-specific\n"
+"files for system documentation and applications. For example, if Spanish\n"
+"users are to use your machine, select English as the default language in\n"
+"the tree view and \"%s\" in the Advanced section.\n"
+"\n"
+"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
+"cover all existing languages. However full support for it in GNU/Linux is\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
+"depend on the user's choices:\n"
+"\n"
+" * If you choose a language with a strong legacy encoding (latin1\n"
+"languages, Russian, Japanese, Chinese, Korean, Thai, Greek, Turkish, most\n"
+"iso-8859-2 languages), the legacy encoding will be used by default;\n"
+"\n"
+" * Other languages will use unicode by default;\n"
+"\n"
+" * If two or more languages are required, and those languages are not using\n"
+"the same encoding, then unicode will be used for the whole system;\n"
+"\n"
+" * Finally, unicode can also be forced for use throughout the system at a\n"
+"user's request by selecting the \"%s\" option independently of which\n"
+"languages were been chosen.\n"
+"\n"
+"Note that you're not limited to choosing a single additional language. You\n"
+"may choose several, or even install them all by selecting the \"%s\" box.\n"
+"Selecting support for a language means translations, fonts, spell checkers,\n"
+"etc. will also be installed for that language.\n"
+"\n"
+"To switch between the various languages installed on your system, you can\n"
+"launch the \"localedrake\" command as \"root\" to change the language used\n"
+"by the entire system. Running the command as a regular user will only\n"
+"change the language settings for that particular user."
+msgstr ""
+
+#: ../help.pm:650
+#, c-format
+msgid "Espanol"
+msgstr ""
+
+#: ../help.pm:643
+#, c-format
+msgid "Use Unicode by default"
+msgstr ""
+
+#: ../help.pm:646
+#, c-format
+msgid ""
+"Usually, DrakX has no problems detecting the number of buttons on your\n"
+"mouse. If it does, it assumes you have a two-button mouse and will\n"
+"configure it for third-button emulation. The third-button mouse button of a\n"
+"two-button mouse can be obtained by simultaneously clicking the left and\n"
+"right mouse buttons. DrakX will automatically know whether your mouse uses\n"
+"a PS/2, serial or USB interface.\n"
+"\n"
+"If you have a 3-button mouse without a wheel, you can choose a \"%s\"\n"
+"mouse. DrakX will then configure your mouse so that you can simulate the\n"
+"wheel with it: to do so, press the middle button and move your mouse\n"
+"pointer up and down.\n"
+"\n"
+"If for some reason you wish to specify a different type of mouse, select it\n"
+"from the list provided.\n"
+"\n"
+"You can select the \"%s\" entry to chose a ``generic'' mouse type which\n"
+"will work with nearly all mice.\n"
+"\n"
+"If you choose a mouse other than the default one, a test screen will be\n"
+"displayed. Use the buttons and wheel to verify that the settings are\n"
+"correct and that the mouse is working correctly. If the mouse is not\n"
+"working well, press the space bar or [Return] key to cancel the test and\n"
+"you will be returned to the mouse list.\n"
+"\n"
+"Occasionally wheel mice are not detected automatically, so you will need to\n"
+"select your mouse from a list. Be sure to select the one corresponding to\n"
+"the port that your mouse is attached to. After selecting a mouse and\n"
+"pressing the \"%s\" button, a mouse image will be displayed on-screen.\n"
+"Scroll the mouse wheel to ensure that it is activating correctly. As you\n"
+"scroll your mouse wheel, you will see the on-screen scroll wheel moving.\n"
+"Test the buttons and check that the mouse pointer moves on-screen as you\n"
+"move your mouse about."
+msgstr ""
+
+#: ../help.pm:684
+#, c-format
+msgid "with Wheel emulation"
+msgstr ""
+
+#: ../help.pm:684
+#, c-format
+msgid "Universal | Any PS/2 & USB mice"
+msgstr ""
+
+#: ../help.pm:687
+#, c-format
+msgid ""
+"Please select the correct port. For example, the \"COM1\" port under\n"
+"Windows is named \"ttyS0\" under GNU/Linux."
+msgstr ""
+
+#: ../help.pm:684
+#, c-format
+msgid ""
+"A boot loader is a little program which is started by the computer at boot\n"
+"time. It's responsible for starting up the whole system. Normally, the boot\n"
+"loader installation is totally automated. DrakX will analyze the disk boot\n"
+"sector and act according to what it finds there:\n"
+"\n"
+" * if a Windows boot sector is found, it will replace it with a GRUB/LILO\n"
+"boot sector. This way you'll be able to load either GNU/Linux or any other\n"
+"OS installed on your machine.\n"
+"\n"
+" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
+"\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
+"where it should place it. Generally, the \"%s\" is the safest place.\n"
+"Choosing \"%s\" will not install any boot loader. Use this option only if "
+"you\n"
+"know what you're doing."
+msgstr ""
+
+#: ../help.pm:745
+#, c-format
+msgid ""
+"Now, it's time to select a printing system for your computer. Other\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
+"the printing systems is best suited to particular types of configuration.\n"
+"\n"
+" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
+"if you have a direct connection to your printer, you want to be able to\n"
+"panic out of printer jams, and you do not have networked printers. (\"%s\"\n"
+"will handle only very simple network cases and is somewhat slow when used\n"
+"within networks.) It's recommended that you use \"pdq\" if this is your\n"
+"first experience with GNU/Linux.\n"
+"\n"
+" * \"%s\" stands for `` Common Unix Printing System'' and is an excellent\n"
+"choice for printing to your local printer or to one halfway around the\n"
+"planet. It's simple to configure and can act as a server or a client for\n"
+"the ancient \"lpd\" printing system, so it's compatible with older\n"
+"operating systems which may still need print services. While quite\n"
+"powerful, the basic setup is almost as easy as \"pdq\". If you need to\n"
+"emulate a \"lpd\" server, make sure you turn on the \"cups-lpd\" daemon.\n"
+"\"%s\" includes graphical front-ends for printing or choosing printer\n"
+"options and for managing the printer.\n"
+"\n"
+"If you make a choice now, and later find that you do not like your printing\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
+"Control Center and clicking on the \"%s\" button."
+msgstr ""
+
+#: ../help.pm:768
+#, c-format
+msgid "pdq"
+msgstr ""
+
+#: ../help.pm:724
+#, c-format
+msgid "CUPS"
+msgstr ""
+
+#: ../help.pm:724
+#, c-format
+msgid "Expert"
+msgstr ""
+
+#: ../help.pm:771
+#, c-format
+msgid ""
+"DrakX will first detect any IDE devices present in your computer. It will\n"
+"also scan for one or more PCI SCSI cards on your system. If a SCSI card is\n"
+"found, DrakX will automatically install the appropriate driver.\n"
+"\n"
+"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
+"\n"
+"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
+"want to configure options for it. You should allow DrakX to probe the\n"
+"hardware for the card-specific options which are needed to initialize the\n"
+"adapter. Most of the time, DrakX will get through this step without any\n"
+"issues.\n"
+"\n"
+"If DrakX is not able to probe for the options to automatically determine\n"
+"which parameters need to be passed to the hardware, you'll need to manually\n"
+"configure the driver."
+msgstr ""
+
+#: ../help.pm:789
+#, c-format
+msgid ""
+"\"%s\": if a sound card is detected on your system, it'll be displayed\n"
+"here. If you notice the sound card is not the one actually present on your\n"
+"system, you can click on the button and choose a different driver."
+msgstr ""
+
+#: ../help.pm:794
+#, c-format
+msgid ""
+"As a review, DrakX will present a summary of information it has gathered\n"
+"about your system. Depending on the hardware installed on your machine, you\n"
+"may have some or all of the following entries. Each entry is made up of the\n"
+"hardware item to be configured, followed by a quick summary of the current\n"
+"configuration. Click on the corresponding \"%s\" button to make the change.\n"
+"\n"
+" * \"%s\": check the current keyboard map configuration and change it if\n"
+"necessary.\n"
+"\n"
+" * \"%s\": check the current country selection. If you're not in this\n"
+"country, click on the \"%s\" button and choose another. If your country\n"
+"is not in the list shown, click on the \"%s\" button to get the complete\n"
+"country list.\n"
+"\n"
+" * \"%s\": by default, DrakX deduces your time zone based on the country\n"
+"you have chosen. You can click on the \"%s\" button here if this is not\n"
+"correct.\n"
+"\n"
+" * \"%s\": verify the current mouse configuration and click on the button\n"
+"to change it if necessary.\n"
+"\n"
+" * \"%s\": if a sound card is detected on your system, it'll be displayed\n"
+"here. If you notice the sound card is not the one actually present on your\n"
+"system, you can click on the button and choose a different driver.\n"
+"\n"
+" * \"%s\": if you have a TV card, this is where information about its\n"
+"configuration will be displayed. If you have a TV card and it is not\n"
+"detected, click on \"%s\" to try to configure it manually.\n"
+"\n"
+" * \"%s\": you can click on \"%s\" to change the parameters associated with\n"
+"the card if you feel the configuration is wrong.\n"
+"\n"
+" * \"%s\": by default, DrakX configures your graphical interface in\n"
+"\"800x600\" or \"1024x768\" resolution. If that does not suit you, click on\n"
+"\"%s\" to reconfigure your graphical interface.\n"
+"\n"
+" * \"%s\": if you wish to configure your Internet or local network access,\n"
+"you can do so now. Refer to the printed documentation or use the\n"
+"Mageia Control Center after the installation has finished to benefit\n"
+"from full in-line help.\n"
+"\n"
+" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
+"you're installing on is to be located behind a proxy server.\n"
+"\n"
+" * \"%s\": this entry allows you to redefine the security level as set in a\n"
+"previous step ().\n"
+"\n"
+" * \"%s\": if you plan to connect your machine to the Internet, it's a good\n"
+"idea to protect yourself from intrusions by setting up a firewall. Consult\n"
+"the corresponding section of the ``Starter Guide'' for details about\n"
+"firewall settings.\n"
+"\n"
+" * \"%s\": if you wish to change your bootloader configuration, click this\n"
+"button. This should be reserved to advanced users. Refer to the printed\n"
+"documentation or the in-line help about bootloader configuration in the\n"
+"Mageia Control Center.\n"
+"\n"
+" * \"%s\": through this entry you can fine tune which services will be run\n"
+"on your machine. If you plan to use this machine as a server it's a good\n"
+"idea to review this setup."
+msgstr ""
+
+#: ../help.pm:809
+#, c-format
+msgid "TV card"
+msgstr ""
+
+#: ../help.pm:809
+#, c-format
+msgid "ISDN card"
+msgstr ""
+
+#: ../help.pm:858
+#, c-format
+msgid "Graphical Interface"
+msgstr ""
+
+#: ../help.pm:861
+#, c-format
+msgid ""
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
+"and will not be recoverable!"
+msgstr ""
+
+#: ../help.pm:866
+#, c-format
+msgid ""
+"Click on \"%s\" if you want to delete all data and partitions present on\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
+"any Windows data.\n"
+"\n"
+"Click on \"%s\" to quit this operation without losing data and partitions\n"
+"present on this hard disk drive."
+msgstr ""
+
+#: ../help.pm:872
+#, c-format
+msgid "Next ->"
+msgstr ""
+
+#: ../help.pm:872
+#, c-format
+msgid "<- Previous"
+msgstr ""
diff --git a/perl-install/install/help/po/az.po b/perl-install/install/help/po/az.po
index 9a9dd57e1..48844f4d9 100644
--- a/perl-install/install/help/po/az.po
+++ b/perl-install/install/help/po/az.po
@@ -14,6 +14,7 @@ msgstr ""
"PO-Revision-Date: 2005-03-31 14:21+0200\n"
"Last-Translator: Mətin Əmirov <metin@karegen.com>\n"
"Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
+"Language: az\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -24,12 +25,12 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Davam etmədən əvvəl, diqqətlə lisenziyanın qaydalarını oxumalısınız. O,\n"
-"bütün Mandriva Linux distribusiyasını əhatə edir. Əgər lisenziyadakı bütün\n"
+"bütün Mageia distribusiyasını əhatə edir. Əgər lisenziyadakı bütün\n"
"qaydalarla razısınızsa, qutusunu \"%s\" işarələyin. Əgər razı deyilsəniz, "
"sadəcə olaraq kompüterinizi bağlayın."
@@ -140,7 +141,8 @@ msgstr "Bu xüsusiyyəti istifadə etmək istəyirsiniz?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -150,24 +152,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Burada sürücünüzdə tapılan Linuks bölmələri sıralanıb.\n"
@@ -205,15 +211,15 @@ msgstr ""
"\"b\"nin mə'nası \"ikinci ən düşük SCSİ ID\"dir, vs..."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux qurulumu müxtəlif CD-lər üstündə gəlir. DrakX\n"
+"Mageia qurulumu müxtəlif CD-lər üstündə gəlir. DrakX\n"
"seçili paketlərin hansı CD'də olduğunu bilir ona görə də lazım olanda\n"
"hazırkı CD-ni çıxardıb sizdən lazım olan CD-ni daxil etməyi istəyəcək.\n"
"Əgər əlinizin altında istənən CD yoxdursa \"%s\" düyməsinə basın və istənən\n"
@@ -223,12 +229,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -279,11 +284,11 @@ msgid ""
"megabytes."
msgstr ""
"İndi sisteminizə qurmaq istədiyiniz proqramları müəyyən etmə vaxtıdır.\n"
-"Mandriva Linux daxilində minlərcə proqram mövcuddur və idarələrinin\n"
+"Mageia daxilində minlərcə proqram mövcuddur və idarələrinin\n"
"asan olması üçün onlar bənzər paketlər qruplarına ayrılıblar.\n"
"\n"
"Paketlər sisteminizin xüsusui istifadə sahəsinə görə qruplanıb.\n"
-"Mandriva Linuxda dörd əvvəldən müəyyən edilmiş qurulum növü mövcuddur.\n"
+"Mageiada dörd əvvəldən müəyyən edilmiş qurulum növü mövcuddur.\n"
"Yalnız siz bu qrupları yenə də qarışdıra bilərsiniz və istədiyiniz əlavə.\n"
"proqramları seçə bilərsiniz. Misal üçün ''İş Stansiyası'' qurulumu\n"
"``İnkişaf'' qurulumundakı proqramları daxil edə bilər.\n"
@@ -353,10 +358,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -388,8 +393,7 @@ msgstr ""
"verici\n"
"seçilsə, sizə bu vericini həqiqətən də qurmaq istədiyinizi soruşan və "
"sizdən\n"
-"təsdiq istəyən pəncərə göstəriləcək. Əsas olaraq Mandriva Linux bütün "
-"qurulu\n"
+"təsdiq istəyən pəncərə göstəriləcək. Əsas olaraq Mageia bütün qurulu\n"
"olan xidmətləri açılışda fəal edir. Distribusiyanın çıxdığı vaxt onların "
"bilinən heç bir\n"
"xətası ya da təhlükəli yanı olmasa da, mümkündür ki, müəyyən vaxt sonra\n"
@@ -400,7 +404,7 @@ msgstr ""
"xidmət sisteminizə qurulacaq və sisteminizin açılışında fəal hala "
"gətiriləcək.\n"
"Qeyd: Xidmətlərin açılışda fəal olub olmamasını qurulum bitdikdən sonra da\n"
-"Mandriva Linux İdarə Mərkəzindən quraşdıra bilərsiniz!!\n"
+"Mageia İdarə Mərkəzindən quraşdıra bilərsiniz!!\n"
"\n"
"\"%s\" seçimi, bir proqramı seçdiyiniz zaman qurulum proqramının o proqram "
"ilə\n"
@@ -537,7 +541,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -592,7 +596,7 @@ msgid ""
"not successful in getting the display configured."
msgstr ""
"X (X Pəncərə Sistemi) GNU/Linuks qrafiki ara üzünün qəlbidir.\n"
-"Mandriva Linuxla bərabər gələn qrafiki mühitlərin hamısı (KDE, \n"
+"Mageiala bərabər gələn qrafiki mühitlərin hamısı (KDE, \n"
"GNOME, AfterStep, WindowMaker, vs.) buna bağlıdır.\n"
"\n"
"Optimal görünüşü almaq üçün sizə dəyişdiriləcək fərqli parametrlər\n"
@@ -712,39 +716,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -753,15 +761,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -774,10 +782,10 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Bu nöqtədə Mandriva Linuxi sabit diskinizdə haraya quracağınıza\n"
+"Bu nöqtədə Mageiai sabit diskinizdə haraya quracağınıza\n"
"qərar verəcəksiniz. Əgər diskiniz boş isə və ya bir başqa sistem\n"
-"bütün yeri doldurmuş isə, o zaman diskinizdə Mandriva Linux üçün\n"
-"yer açmalısınız. Bölmələndirmə əsasən diskinizdə Mandriva Linuxu\n"
+"bütün yeri doldurmuş isə, o zaman diskinizdə Mageia üçün\n"
+"yer açmalısınız. Bölmələndirmə əsasən diskinizdə Mageiau\n"
"qurmaqməntiqi sürücülər yaratmaqdan ibarətdir.\n"
"\n"
"Ümumiyyətlə bölmələndirmənin təsiri geri dönülməzdir və mə'lumat\n"
@@ -812,8 +820,7 @@ msgstr ""
"'Scandisk' və\n"
"'Defraq' əmrlərinin icra edilməsinir. Eyni zamanda mə'lumatlarınızın ehtiyat "
"nüsxəsini almayı\n"
-"da qətiyyən unutmayın. Kompüteriniz üstündə həm Mandriva Linux həm də "
-"Microsoft\n"
+"da qətiyyən unutmayın. Kompüteriniz üstündə həm Mageia həm də Microsoft\n"
"Windows ƏS'lərini işlətmək istəyirsinizsə bu seçənəyi seçin. Unutmayın ki "
"Microsoft\n"
"Windows bölmənizin böyüklüyünü Windows altında da bəzi (PartitionMagic) "
@@ -825,7 +832,7 @@ msgstr ""
"bölməniz əvvəlkindən daha kiçik olacaq.\n"
"\n"
" * \"%s\": əgər sisteminizdəki bütün mövcud bölmələri silmək və yerinə\n"
-"Mandriva Linux sistemini qurmaq istəyirsinizsə bu seçənəyi seçin.\n"
+"Mageia sistemini qurmaq istəyirsinizsə bu seçənəyi seçin.\n"
"Diqqətli olun, ona görə ki seçiminizi təsdiqlədikdən sonra geri ala "
"bilməyəcəksiniz.\n"
"\n"
@@ -972,7 +979,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -995,7 +1002,7 @@ msgstr ""
"\n"
"Bölmələri şəkilləndirməyə hazır olanda \"%s\" düyməsini basın.\n"
"\n"
-"Yeni Mandriva Linux sisteminizi qurmaq üçün başqa bölmə seçmək\n"
+"Yeni Mageia sisteminizi qurmaq üçün başqa bölmə seçmək\n"
"istəyirsinizsə \"%s\" düyməsinə basın.\n"
"\n"
"Üstündəki xəsərli blokların yoxlanmasını istədiyiniz bölmələri seçmək\n"
@@ -1004,7 +1011,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1016,7 +1023,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Mandriva Linuxu qurduğunuz vaxtda çox güman ki bə'zi paketlər \n"
+"Mageiau qurduğunuz vaxtda çox güman ki bə'zi paketlər \n"
"ilk çıxışlarından sonra yenilənmiş ola bilər. Bunlarla bir çox xəta "
"düzəldilmiş\n"
"ya da təhlükəsizlik qüvvətləndirilmiş ola bilər. Bu yeniləmələrdən istifadə\n"
@@ -1040,7 +1047,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1064,21 +1071,24 @@ msgstr "Təhlükəsizlik İdarəçisi"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1094,21 +1104,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1125,16 +1137,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Bu nöqtədə siz Mandriva Linux yüklənəcək bölmə(lər)i seçməlisiniz. Əgər\n"
+"Bu nöqtədə siz Mageia yüklənəcək bölmə(lər)i seçməlisiniz. Əgər\n"
"bölmələr əvvəldən mövcuddursa (sistemdə əvvəllər qurulu olan GNU/Linuks \n"
"bölmələri və ya başqa bölmələndirmə vasitələri ilə hazırladığınız "
"bölmələr),\n"
@@ -1150,7 +1156,7 @@ msgstr ""
" * \"%s\": Bu seçim seçili sabit disk üstündəki bütün bölmələri silər\n"
"\n"
" * \"%s\": Bu seçim sizə avtomatik olaraq sabit diskinizin boş sahəsində\n"
-"ext3 və dəyiş-toqquş sahəsi yaratma imkanı verəcək\n"
+"ext4 və dəyiş-toqquş sahəsi yaratma imkanı verəcək\n"
"\n"
"\"%s\": Əlavə xüsusiyyətlərə yetişmə imkanı verir\n"
"\n"
@@ -1207,12 +1213,6 @@ msgstr ""
"Fərqli fayl sistem növləri haqqında daha ətraflı mə'lumat üçün, xahiş "
"edirik,\n"
"``Reference Manual'' kitabının ext2FS bölümünü oxuyun.\n"
-"\n"
-"Əgər PPC kompüterdə qurulum aparırsınızsa, ən az 1 MBlıq balaca bir HFS \n"
-"``bootstrap'' bölməsini yaboot açılış yükləyicisi üçün seçmək "
-"istəyəcəksiniz.\n"
-"Əgər daha çox yeriniz varsa, məsələn 50 MB, onda bütün kernel və ramdisk \n"
-"açılış əkslərinizi təcili hallar üçün burada saxlaya bilərsiniz."
#: ../help.pm:526
#, c-format
@@ -1252,38 +1252,44 @@ msgstr "Normal modla mütəxəssis modu arasında keç"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Sürücünüzdə bir və ya daha çox Microsoft bölməsi tapıldı.\n"
-"Xahiş edirik, Mandriva Linuxi qurmaq üçün onlardan hansını\n"
+"Xahiş edirik, Mageiai qurmaq üçün onlardan hansını\n"
"yenidən ölçüləndirmək istədiyinizi seçin.\n"
"\n"
"Hər bölmə bu cür sıralanıb; \"Linuks adı\",\"Windows adı\"\n"
@@ -1332,28 +1338,28 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Bu addım, yalnız sisteminizdə daha əvvəldən qurulu olan GNU/Linuks bölməsi\n"
"tapılanda fəal olur.\n"
"\n"
-"DrakX indi mövcud Mandriva Linux sisteminizi yeniləmək mi, yoxsa yenidən\n"
+"DrakX indi mövcud Mageia sisteminizi yeniləmək mi, yoxsa yenidən\n"
"qurmaq mı istədiyinizi bilməlidir.\n"
"\n"
" * \"%s\": Bu seçim köhnə sistemi tamamilə siləcək. Əgər sabit "
@@ -1363,13 +1369,12 @@ msgstr ""
"bu seçimi seçin. Yalnız, bölmələndirmə sxeminizdən aslı olaraq bə'zi mövcud\n"
"mə'lumatlarınızın üstündən yazılmasının qabağını ala bilərsiniz.\n"
"\n"
-" * \"%s\": Hazırkı Mandriva Linux sisteminizdə qurulu olan paketləri "
-"yeniləmə\n"
+" * \"%s\": Hazırkı Mageia sisteminizdə qurulu olan paketləri yeniləmə\n"
"imkanı verir. Qurulum hazırkı bölmələmə sxemi və istifadəçi mə'lumat və "
"sənədlərinə\n"
"dəyməyəcək və dəyişdirməyəcək. Digər qurulum addımlarının çoxu isə standart\n"
"qurulumdakının eynisi olacaq. Bu seçimi \"8.1\" versiyasından əvvəlki "
-"Mandriva Linuxlarda\n"
+"Mageialarda\n"
"tədbiq etmək uyğun görülmür."
#: ../help.pm:594
@@ -1428,8 +1433,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1576,7 +1580,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1605,7 +1609,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1626,12 +1630,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"İndi kompüteriniz üçün çap sistemini seçmə vaxtı gəldi. Digər ƏS'ləri sizə "
"bir\n"
-"dənəsini təqdim edə bilərlər, yalnız Mandriva Linux ikisini təqdim edir.\n"
+"dənəsini təqdim edə bilərlər, yalnız Mageia ikisini təqdim edir.\n"
"Hər çap sistemi xüsusi quraşdırma növləri üçün uyğundur.\n"
"\n"
" * \"%s\" -- bu seçim``çap et, növbəyə alma'' mə'nasına gəlir.\n"
@@ -1676,7 +1680,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1756,8 +1760,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1774,7 +1777,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1863,11 +1866,11 @@ msgstr "Qrafiki Ara Üz"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Yeni Mandriva Linux'izi qurmaq üçün silmək istədiyiniz sürücünü seçin.\n"
+"Yeni Mageia'izi qurmaq üçün silmək istədiyiniz sürücünü seçin.\n"
"Diqqətli olun, sürücüdəki bütün mə'lumatlar silinəcək\n"
"və geri gəlməyəcək!"
@@ -1875,12 +1878,14 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Sürücüdəki bütün mə'lumatları və bölmələri silmək üçün\n"
"\"%s\" düyməsinə basın. Diqqətli olun,\"%s\" düyməsinə basdıqdan sonra\n"
diff --git a/perl-install/install/help/po/be.po b/perl-install/install/help/po/be.po
index d8ff97db8..265ccde90 100644
--- a/perl-install/install/help/po/be.po
+++ b/perl-install/install/help/po/be.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2000-09-24 12:30 +0100\n"
"Last-Translator: Alexander Bokovoy <ab@avilink.net>\n"
"Language-Team: be\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -18,7 +19,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -82,7 +83,8 @@ msgstr "Вы жадаеце выкарыстоўваць aboot?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -92,31 +94,35 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -127,12 +133,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -212,10 +217,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -308,7 +313,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -406,39 +411,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -447,15 +456,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -562,7 +571,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -571,7 +580,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -594,7 +603,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -610,21 +619,24 @@ msgstr "Сістэмнае адміністраваньне"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -640,21 +652,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -671,14 +685,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -719,34 +727,40 @@ msgstr "Звычайны рэжым"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -766,23 +780,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -823,8 +837,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -929,7 +942,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -940,7 +953,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -961,7 +974,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -988,7 +1001,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1050,8 +1063,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1068,7 +1080,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1093,8 +1105,8 @@ msgstr "Запуск X пры старце сістэмы"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1102,12 +1114,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
#: ../help.pm:872
diff --git a/perl-install/install/help/po/bg.po b/perl-install/install/help/po/bg.po
index 9ed880dde..ed19a7912 100644
--- a/perl-install/install/help/po/bg.po
+++ b/perl-install/install/help/po/bg.po
@@ -14,6 +14,7 @@ msgstr ""
"PO-Revision-Date: 2004-09-15 13:27+0200\n"
"Last-Translator: Boyan Ivanov <boyan17@bulgaria.com>\n"
"Language-Team: Bulgarian <dict@linux.zonebg.com>\n"
+"Language: bg\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -24,14 +25,13 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Преди да продължите, трябва внимателно да прочетете условията на лиценза. "
"Той\n"
-"покрива цялата Mandriva Linux дистрибуция, и, ако сте съгласни с всички "
-"условия\n"
+"покрива цялата Mageia дистрибуция, и, ако сте съгласни с всички условия\n"
"в него, сложете отметка на \"%s\".Ако не сте съгласни,просто спрете "
"компютъра си."
@@ -137,7 +137,8 @@ msgstr "Искате ли да използвате тази особеност?
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -147,24 +148,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"По-горе са изброени засечените Linux дялове съществуващи\n"
@@ -205,13 +210,13 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Инсталацията на Mandriva Linux е разположена на няколко CDROM-а. DrakX\n"
+"Инсталацията на Mageia е разположена на няколко CDROM-а. DrakX\n"
"знае дали избран пакет не се намира на друг CDROM,така че ще извади "
"текущото\n"
"CD и ще ви остави да вкарате това, от което има нужда."
@@ -220,12 +225,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -276,7 +280,7 @@ msgid ""
"megabytes."
msgstr ""
"Сега е моментът да определите кои програми искате да бъдат инсталирани на\n"
-"системата ви. В Mandriva Linux дистрибуцията има хиляди пакети, но не е\n"
+"системата ви. В Mageia дистрибуцията има хиляди пакети, но не е\n"
"задължително да ги знаете наизуст.\n"
"\n"
"Ако извършвате стандартна инстлация от CDROM, първо ще бъдете попитани кои\n"
@@ -346,10 +350,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -385,11 +389,10 @@ msgstr ""
"\n"
"!! Ако е избран сървърен пакет, било то умишлено или защото е част от цяла\n"
"група, ще бъдете помолени за потвърждение, че наистина искате този сървър\n"
-"да бъде инсталиран. В Mandriva Linux, всички сървъри тръгват по "
-"подразбиране\n"
+"да бъде инсталиран. В Mageia, всички сървъри тръгват по подразбиране\n"
"при зареждане.Даже ако са сигурни и нямат известни проблеми, когато\n"
"дистрибуцията се разпространява, може да се случи така, че да се появят\n"
-"дупки в сигурността, след като версията на Mandriva Linux е завършена. Ако\n"
+"дупки в сигурността, след като версията на Mageia е завършена. Ако\n"
"не знаете за какво служи определена услуга или защо е инсталирана, цъкнете\n"
"\"Не\". С цъкане на \"Да\" ще инсталирате изброени услуги и те ще бъдат\n"
"стартирани автоматично по подразбиране. !!\n"
@@ -497,7 +500,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -600,39 +603,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -641,15 +648,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -664,12 +671,12 @@ msgid ""
msgstr ""
"В този момент трябва изберете къде на твърдия си диска да инсталирате "
"вашата\n"
-"Mandriva Linux операционна система. Ако твърдият ви диск е празен или друга\n"
+"Mageia операционна система. Ако твърдият ви диск е празен или друга\n"
"операционна система използва цялото пространство, ще трябва да го "
"разделите.\n"
"Казано простичко, разделянето на твърдия диск се състои в логическо "
"разделяне\n"
-"цел да се създаде място за инсталация на новата Mandriva Linux система.\n"
+"цел да се създаде място за инсталация на новата Mageia система.\n"
"\n"
"Тъй като процесът на разделяне обикновено е необратим, разделянето може да\n"
"изглежда плашещ и стряскащ, ако сте неопитен потребител. Слава Богу, има\n"
@@ -678,7 +685,7 @@ msgstr ""
"с ръководството и не бързайте.\n"
"\n"
"Ако пускате инсталацията в Експертен режим, ще бъдете въведени в DiskDrake,\n"
-"разделящия инструмент на Mandriva Linux, който ви позволява да донастроите\n"
+"разделящия инструмент на Mageia, който ви позволява да донастроите\n"
"дяловете си. Вижте главата DiskDrake от ръководството. От инсталационния\n"
"интерфейс можете да използвате магьосниците, като натиснете бутона\n"
"\"Магьосник\" на диалога.\n"
@@ -706,7 +713,7 @@ msgstr ""
"решенията \"Изтрий целия диск\" или \"Екпертен режим\") или да промените\n"
"големината на Microsoft Windows дяла. Промяната на големината може да бъде\n"
"извършена без загуба на данни. Това решение се препоръчва, ако искате\n"
-"едновременно Mandriva Linux и Microsoft Windows на един и същи компютър.\n"
+"едновременно Mageia и Microsoft Windows на един и същи компютър.\n"
"\n"
" Преди да изберете тази опция, моля, разберете, че след тази процедура,\n"
"големината на Microsoft Windows дяла ще бъде по-малка, отколкото преди "
@@ -716,7 +723,7 @@ msgstr ""
"инсталира на нов софтуер.\n"
"\n"
" * \"%s\": ако искате да изтриете всички данни и дялове, които\n"
-"съществуват на вашия твърд диск и да ги замените с новата Mandriva Linux\n"
+"съществуват на вашия твърд диск и да ги замените с новата Mageia\n"
"система, изберете тази опция. Бъдете внимателни с това решения, защото няма\n"
"да можете да върнете обратно избора си, след като потвърдите.\n"
"\n"
@@ -860,7 +867,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -890,7 +897,7 @@ msgstr ""
"\n"
"Цъкнете \"Отказ\", ако искате да изберете други дялове за инсталация на "
"новата\n"
-"си Mandriva Linux операционна система.\n"
+"си Mageia операционна система.\n"
"\n"
"Цъкнете \"Напредничав\", ако искате да изберете дялове, които да бъдат\n"
"проверени за лоши блокове от диска."
@@ -898,7 +905,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -921,7 +928,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -948,21 +955,24 @@ msgstr "Администратор по защита:"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -978,21 +988,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1009,18 +1021,12 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"В този момент трябва да изберете кой дялове да бъдат използвани за "
"инсталация\n"
-"на вашата Mandriva Linux система. Ако дяловете вече са определени, дали от\n"
+"на вашата Mageia система. Ако дяловете вече са определени, дали от\n"
"предишна инсталация на GNU/Linux или от друг инструмент за разделяне, "
"можете\n"
"да използвате съществуващите далове. В противен случай трябва да определите\n"
@@ -1077,13 +1083,6 @@ msgstr ""
" * Ctrl-d, за да изтриете дял;\n"
"\n"
" * Ctrl-m, за да установите точка на монтиране.\n"
-"\n"
-"Ако инсталите на PPC машина, сигурно ще искате да създадете малък HFS\n"
-"\"bootstrap\" дял от поне 1 МБ, който ще бъде използват от boot loader-ът\n"
-"yaboot. Ако смятате да направите дяла по-голям, например 50 МБ, можете да "
-"го\n"
-"намерите за полезно място, където да съхранявате някое ядро или image на\n"
-"ramdisk в случай на извънредни ситуации."
#: ../help.pm:526
#, c-format
@@ -1123,40 +1122,46 @@ msgstr "Премини в нормален/експертен режим"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Беше засечен повече от един Microsoft Windows дял\n"
"на твърдия ви диска. Изберете този, чиято дължина искате да промените, за "
"да\n"
-"инсталирате Mandriva Linux операционна система.\n"
+"инсталирате Mageia операционна система.\n"
"\n"
"\n"
"За информация, всеки дял е изброен както следва: \"Linux име\", \"Windows име"
@@ -1204,23 +1209,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1282,8 +1287,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1413,7 +1417,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1424,7 +1428,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1445,7 +1449,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Дойде времето да изберете система за печат за вашия компютър.Другите\n"
@@ -1498,7 +1502,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1563,8 +1567,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1581,7 +1584,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1606,25 +1609,27 @@ msgstr "Графичен интерфейс"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Изберете твърдия диск, който искате да изтриете, за да\n"
-"инсталирам новия ви Mandriva Linux дял. Внимание, всички данни на него ще "
-"бъдат загубени\n"
+"инсталирам новия ви Mageia дял. Внимание, всички данни на него ще бъдат "
+"загубени\n"
"и няма да могат да се възстановят."
#: ../help.pm:866
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Цъкнете на \"%s\", ако искате да изтриете всички данни и\n"
"дялове съществуващи на този твърд диск. Внимание, след цъкане на \"%s\", "
diff --git a/perl-install/install/help/po/bn.po b/perl-install/install/help/po/bn.po
index e70e6351a..3aa3fd073 100644
--- a/perl-install/install/help/po/bn.po
+++ b/perl-install/install/help/po/bn.po
@@ -13,16 +13,17 @@ msgstr ""
"PO-Revision-Date: 2005-03-19 23:18+0600\n"
"Last-Translator: Samia <mailsamia2001@yahoo.com>\n"
"Language-Team: Bangla <mdk-translation@bengalinux.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -135,7 +136,8 @@ msgstr "এই সুবিধাটি কি আপনি ব্যবহা
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -145,24 +147,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"আপনার হার্ড ড্রাইভে বর্তমানে নিম্নলিখিত লিনাক্স পার্টিশনগুলো বিদ্যমান।\n"
@@ -198,9 +204,9 @@ msgstr ""
"\"দ্বিতীয় সর্বনিম্ন SCSI ID\", ইত্যাদি।"
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -219,12 +225,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -275,11 +280,10 @@ msgid ""
"megabytes."
msgstr ""
"এখন আপনাকে নির্বাচন করতে হবে আপনি কোন কোন প্রোগ্রাম সিস্টেমে ইনস্টল করতে চান।\n"
-"Mandriva Linux এর জন্য কয়েক হাজার প্যাকেজ রয়েছে, এবং ব্যাবস্থাপনার সুবিধার্থে "
-"সেগুলোকে\n"
+"Mageia এর জন্য কয়েক হাজার প্যাকেজ রয়েছে, এবং ব্যাবস্থাপনার সুবিধার্থে সেগুলোকে\n"
"অ্যাপ্লিকেশনের ধরন অনুযায়ী ভাগ করা হয়েছে।\n"
"\n"
-"Mandriva Linux সব প্যাকেজগ্রুপসমূহ চারটি শ্রেণীতে ভাগ করে। আপনি বিভিন্ন শ্রেণীর\n"
+"Mageia সব প্যাকেজগ্রুপসমূহ চারটি শ্রেণীতে ভাগ করে। আপনি বিভিন্ন শ্রেণীর\n"
"অ্যাপ্লিকেশনমিলিয়ে ও মিশিয়ে ইনস্টল করতে পারেন, যেমন একটি ``Workstation''\n"
"ইনস্টলেশনে আপনি ''Server'' শ্রেণী থেকে অ্যাপ্লিকেশন ইনস্টল\n"
"করতে পারেন।\n"
@@ -361,10 +365,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -482,7 +486,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -602,39 +606,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -643,15 +651,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -740,7 +748,7 @@ msgstr ""
# সাম
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -759,7 +767,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -778,17 +786,17 @@ msgstr ""
"\n"
"পার্টিশন ফরম্যাট শুরু করতে \"%s\" চাপুন।\n"
"\n"
-"আপনার নতুন Mandriva Linux অপারেটিং সিস্টেম ইনস্টেশনের জন্য আপনি যদি অন্য একটি "
-"পার্টিশন নির্বাচন করতে, তবে \"%s\" ক্লিক করুন।\n"
+"আপনার নতুন Mageia অপারেটিং সিস্টেম ইনস্টেশনের জন্য আপনি যদি অন্য একটি পার্টিশন "
+"নির্বাচন করতে, তবে \"%s\" ক্লিক করুন।\n"
"\n"
"যদি আপনি পার্টিশনের জন্য ডিস্কের খারাপ ব্লক সনাক্ত করাতে চান তাহলে \"%s\" ক্লিক "
"করুন।"
# সাম
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -800,7 +808,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"আপনি যখন Mandriva Linux ইনস্টল করবেন, সম্ভবত প্রথম রিলিজ থেকে কিছু\n"
+"আপনি যখন Mageia ইনস্টল করবেন, সম্ভবত প্রথম রিলিজ থেকে কিছু\n"
"প্যাকেজ আপডেট হয়ে গেছে। কোন সাধারন বা নিরাপত্তা ত্রুটি সমাধান করা হয়েছে।\n"
"আপনাকে এই সুবিধাগুলি দেয়ার লক্ষ্যে এই আপডেটগুলো ইন্টারনেট থেকে ডাউনলোড\n"
"করার সুযোগ দেয়া হয়েছে। যদি আপনার সক্রিয় ইন্টারনেট সংযোগ থাকে, \"%s\" চেক\n"
@@ -814,7 +822,7 @@ msgstr ""
# সাম
# নিরাপত্তা স্তর
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -823,7 +831,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -835,7 +843,7 @@ msgstr ""
"হয়। নিরাপত্তা যত বেশী, ব্যবহারের স্বাচ্ছন্দ্য তত কমে যায়।\n"
"\n"
"আপনি যদি নিশ্চিত না হন কোন অপশনটি রাখবেন তবে ডিফল্ট অপশনটিই রাখুন।\n"
-"পরবর্তীতে আপনি এটি draksec টুল (যেটি Mandriva Linux নিয়ন্ত্রন কেন্দ্রের একটি অংশ)\n"
+"পরবর্তীতে আপনি এটি draksec টুল (যেটি Mageia নিয়ন্ত্রন কেন্দ্রের একটি অংশ)\n"
"দিয়ে পরিবর্তন করতে পারবেন।\n"
"\n"
"\"%s\" ক্ষেত্রটিতে যিনি নিরাপত্তার দায়িত্বে নিয়োজিত তার ই-মেইল অ্যাড্রেস দিন।\n"
@@ -848,24 +856,27 @@ msgstr "সিকিউরিটি এ্যডমিনিস্ট্রে
# সাম
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -881,21 +892,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -912,16 +925,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"এই সময়ে আপনাকে Mandriva Linux যে পার্টিশনে ইনস্টল হবে তা নির্বাচন\n"
+"এই সময়ে আপনাকে Mageia যে পার্টিশনে ইনস্টল হবে তা নির্বাচন\n"
"করতে হবে। যদি আগে থেকেই পার্টিশন তৈরী থাকে, (GNU/Linux এর পুর্বের\n"
"কোন ইনস্টলেশনের কারনে বা অন্য কোন পার্টিশন টুল দিয়ে তৈরী করা) আপনি\n"
"সেগুলো ব্যবহার করতে পারেন। অন্যথায় হার্ডড্রাইভ পার্টিশন তৈরী করতে হবে।\n"
@@ -934,7 +941,7 @@ msgstr ""
"\n"
" * \"%s\": এই অপশনটি নির্বাচিত ড্রাইভের সব পার্টিশন মুছে দিবে\n"
"\n"
-" * \"%s\": এই অপশনটি আপনার হার্ডড্রাইভের খালি অংশে স্বয়ংক্রিয়ভাবে ext3 এবং\n"
+" * \"%s\": এই অপশনটি আপনার হার্ডড্রাইভের খালি অংশে স্বয়ংক্রিয়ভাবে ext4 এবং\n"
"swap পার্টিশন তৈরী করতে দিবে।\n"
"\n"
"\"%s\": আরও ফিচার ব্যবহার করার সুযোগ দেয়:\n"
@@ -982,12 +989,6 @@ msgstr ""
"\n"
"বিদ্যমান ফাইল সিস্টেমের ধরন সম্পর্কে জানতে হলে \"Reference Manual\" এর\n"
"ext2FS অধ্যায়টি পড়ুন।\n"
-"\n"
-"আপনি যদি PPC মেশিনে ইনস্টল করেন, তাহলে আপনাকে yaboot বুটলোডারের\n"
-"ব্যবহারের জন্য একটি ছোট অন্তত ১ এমবি এর HFS \"বুটস্ট্র্যাপ\" পার্টিশন তৈরী করতে "
-"হবে।\n"
-"আপনি যদি পার্টিশনটি আরও বড় করতে চান, যেমন ৫০ MB, আপনি কোন জরুরী বুট সমস্যার\n"
-"জন্য একটি আলাদা কার্নেল এবং ramdisk তৈরী করে এই পার্টিশনে রাখতে পারেন।"
#: ../help.pm:526
#, c-format
@@ -1024,39 +1025,78 @@ msgstr ""
msgid "Toggle between normal/expert mode"
msgstr "সাধারণ/দক্ষ মোডের মধ্যে পরিবর্তন"
+# সাম:
+# secondary = সহকারী?
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
+"আপনার হার্ড ড্রাইভে বর্তমানে নিম্নলিখিত লিনাক্স পার্টিশনগুলো বিদ্যমান।\n"
+"আপনি উইজার্ড কর্তৃক বাছাইকৃত সেটিংসমূহ রাখতে পারেন কারণ বেশীরভাগ\n"
+"সাধারণ ইনস্টলেশনের ক্ষেত্রে এটিই যথেষ্ট। যদি পরিবর্তন করতে চান, আপনাকে অন্তত একটি\n"
+"রুট পার্টিশন তৈরী করতে হবে (\"/\")। পার্টিশনের সাইজ খুব ছোট না হওয়া জরুরী, কারন\n"
+"অন্যথা আপনি যথেষ্ট সফ্টওয়্যার ইনস্টল করতে পারবেন না। আপনার তথ্যসমূহ আলাদা\n"
+"পার্টিশনে রাখতে চাইলে, আপনাকে আরও একটি \"/home\" পার্টিশন তৈরী করতে হবে\n"
+"(যা কিনা একাধিক লিনাক্স পার্টিশন থাকলেই সম্ভব)।\n"
+"\n"
+"পার্টিশনগুলো তালিকায় এভাবে দেখানো হয়েছে: \"নাম\", \"ধারণক্ষমতা\".\n"
+"\n"
+"\"নাম\" এর কাঠামো হচ্ছে: \"হার্ড ড্রাইভের ধরন\", \"হার্ড ড্রাইভ নাম্বার\",\n"
+"\"পার্টিশন নাম্বার\" (যেমন, \"hda1\").\n"
+"\n"
+"যদি আপনার হার্ড ড্রাইভটি IDE হার্ড ড্রাইভ হলে \"হার্ড ড্রাইভের ধরন\" হবে \"hd\", "
+"আর\n"
+" SCSI হার্ড ড্রাইভ হলে হবে \"sd\"।\n"
+"\n"
+"\"হার্ড ড্রাইভ নাম্বার\", হচ্ছে \"hd\" বা \"sd\" এর পরের একটি অক্ষর। IDE হার্ড "
+"ড্রাইভের\n"
+"জন্য:\n"
+"\n"
+" * \"a\" অর্থ \"প্রাথমিক IDE কনট্রোলারে মাস্টার হার্ড ড্রাইভ\";\n"
+"\n"
+" * \"b\" অর্থ \"প্রাথমিক IDE কনট্রোলারে স্লেভ হার্ড ড্রাইভ\";\n"
+"\n"
+" * \"c\" অর্থ \"সহকারী IDE কনট্রোলারে মাস্টার হার্ড ড্রাইভ\";\n"
+"\n"
+" * \"d\" অর্থ \"সহকারী IDE কনট্রোলারে স্লেভ হার্ড ড্রাইভ\".\n"
+"\n"
+"SCSI হার্ড ড্রাইভের জন্য, \"a\" অর্থ \"সর্বনিম্ন SCSI ID\", \"b\" অর্থ\n"
+"\"দ্বিতীয় সর্বনিম্ন SCSI ID\", ইত্যাদি।"
#: ../help.pm:567
#, c-format
@@ -1078,23 +1118,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
# সাম
@@ -1153,8 +1193,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1261,7 +1300,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1271,10 +1310,10 @@ msgstr ""
# সাম
# emulate = এমুলেট?
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1295,11 +1334,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"এখন সময় আপনার কম্পিউটারের জন্য একটি প্রিন্টিং সিস্টেম নির্বাচন করার। অনান্য\n"
-"অপারেটিং সিস্টেম আপনাকে একটি অপশন দিতে পারে কিন্তু Mandriva Linux দেবে দুটি।\n"
+"অপারেটিং সিস্টেম আপনাকে একটি অপশন দিতে পারে কিন্তু Mageia দেবে দুটি।\n"
"প্রিন্টিং সিস্টেমগুলো বিভিন্ন কনফিগারেশনের জন্য প্রযোজ্য।\n"
"\n"
" * \"%s\" -- অর্থ হচ্ছে \"প্রিন্ট করো, সারিতে রাখবেনা\". এটি নির্বাচন করুন যদি "
@@ -1326,8 +1365,7 @@ msgstr ""
"ইন্টারফেস রয়েছে।\n"
"\n"
"আপনার বাছাইকৃত প্রিন্টিং সিস্টেমটি যদি আপনার পরে পছন্দ না হয়,\n"
-"তবে আপনি Mandriva Linux নিয়ন্ত্রন কেন্দ্র থেকে PrinterDrake চালিয়ে ও \"%s\" বাটন "
-"ক্লিক\n"
+"তবে আপনি Mageia নিয়ন্ত্রন কেন্দ্র থেকে PrinterDrake চালিয়ে ও \"%s\" বাটন ক্লিক\n"
"করে তা বদল করতে পারেন।"
#: ../help.pm:768
@@ -1355,7 +1393,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1436,8 +1474,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1454,7 +1491,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1477,10 +1514,10 @@ msgid "Graphical Interface"
msgstr "গ্রাফিকাল ইন্টারফেস"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"হার্ড ড্রাইভ বেছে নিন যেটি আপনি আপনার নতুন ম্যান্ড্রিব লিনাক্স পার্টিশন ইনস্টল করার "
@@ -1492,12 +1529,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"যদি এই হার্ড ড্রাইভে থাকা সব ডাটা এবং পার্টিশন মুছে ফেলতে চান তাহলে আপনি\n"
"\"%s\"তে ক্লিক করুন। সাবধান, \"%s\"তে ক্লিক করার পর, উইন্ডোজ ডাটাসহ,\n"
diff --git a/perl-install/install/help/po/br.po b/perl-install/install/help/po/br.po
index a52857b45..62a4b0104 100644
--- a/perl-install/install/help/po/br.po
+++ b/perl-install/install/help/po/br.po
@@ -1,6 +1,6 @@
# DrakX e Brezhoneg.
# Copyright (C) 1999-2005 Mandriva
-# Thierry Vignaud <tvignaud@mandriva.com>, 1999-2005
+# Thierry Vignaud <thierry.vignaud.com>, 1999-2005
# Jañ-Mai Drapier <jan-mai.drapier@mail.dotcom.fr>, 1999-2000
#
msgid ""
@@ -9,7 +9,7 @@ msgstr ""
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
"PO-Revision-Date: 2006-04-06 19:37+0200\n"
-"Last-Translator: Thierry Vignaud <tvignaud@mandriva.com>\n"
+"Last-Translator: Thierry Vignaud <thierry.vignaud.com>\n"
"Language-Team: Brezhoneg <ofisk@wanadoo.fr>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -20,7 +20,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -84,7 +84,7 @@ msgstr "Mennout a rit implijout an arc'hwel-mañ ?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -94,31 +94,31 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -129,12 +129,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -214,10 +213,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -318,7 +317,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -416,39 +415,39 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -457,15 +456,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -572,7 +570,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -581,7 +579,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -604,7 +602,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -620,21 +618,21 @@ msgstr "Melestradur an surentez"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -650,21 +648,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -681,14 +679,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -729,34 +721,34 @@ msgstr "Tremen er mod boas/mailh"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -776,23 +768,22 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -833,8 +824,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -941,7 +931,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -952,7 +942,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -973,7 +963,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1000,7 +990,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1062,8 +1052,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1080,7 +1069,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1105,8 +1094,8 @@ msgstr "Ketal Kevregañ"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1114,12 +1103,12 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
#: ../help.pm:872
diff --git a/perl-install/install/help/po/bs.po b/perl-install/install/help/po/bs.po
index ba6cbe384..9e40d9b94 100644
--- a/perl-install/install/help/po/bs.po
+++ b/perl-install/install/help/po/bs.po
@@ -12,23 +12,24 @@ msgstr ""
"PO-Revision-Date: 2005-02-26 11:13+0100\n"
"Last-Translator: Vedran Ljubovic <vljubovic@smartnet.ba>\n"
"Language-Team: Bosanski <lokal@lugbih.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.3\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Prije nego što nastavimo, trebate pažljivo pročitati uvjete licence. Ona\n"
-"pokriva cijelu Mandriva Linux distribuciju. Ako se slažete sa svim\n"
+"pokriva cijelu Mageia distribuciju. Ako se slažete sa svim\n"
"uvjetima u njoj, izaberite opciju \"%s\". Ako ne, klikom na \"%s\" ćete\n"
"restartovati vaš računar."
@@ -138,7 +139,8 @@ msgstr "Da li želite koristiti ovu mogućnost?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -148,24 +150,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Ovdje su navedene Linux particije koje već postoje na vašem hard disku.\n"
@@ -202,15 +208,15 @@ msgstr ""
"je \"drugi najniži SCSI ID\", itd."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux instalacija se prostire na nekoliko CDova. Ako je neki\n"
+"Mageia instalacija se prostire na nekoliko CDova. Ako je neki\n"
"paket smješten na drugom CDu, DrakX će izbaciti trenutni CD i zamoliti vas\n"
"da ubacite neki drugi po potrebi. Ako nemate potreban CD pri ruci,\n"
"samo kliknite na \"%s\", odgovarajući paketi neće biti instalirani."
@@ -219,12 +225,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -275,12 +280,12 @@ msgid ""
"megabytes."
msgstr ""
"Sada je vrijeme da izaberete koje programe želite instalirati na vaš\n"
-"sistem. Za Mandriva Linux su dostupne hiljade paketa, pa da bi\n"
+"sistem. Za Mageia su dostupne hiljade paketa, pa da bi\n"
"njihovo upravljanje bilo lakše, organizovani su u grupe slične\n"
"primjene.\n"
"\n"
"Paketi su sortirani u grupe ovisno o tipičnoj namjeni vašeg računara.\n"
-"U Mandriva Linuxu date su četiri predefinisane kategorije. Možete\n"
+"U Mageiau date su četiri predefinisane kategorije. Možete\n"
"miješati i poklapati programe iz raznih grupa, pa tako instalacija ``Radna\n"
"stanica'' može sadržavati programe iz grupe ``Programiranje''.\n"
"\n"
@@ -347,7 +352,7 @@ msgid "Truly minimal install"
msgstr "Stvarno minimalna instalacija"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -360,10 +365,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -393,11 +398,11 @@ msgstr ""
"\n"
"!! Ako izaberete neki serverski paket, zato što ste specifično izabrali taj\n"
"paket ili zato što je on dio grupe paketa, bićete zamoljeni da potvrdite da\n"
-"zaista želite da taj server bude instaliran. Mandriva Linux obično\n"
+"zaista želite da taj server bude instaliran. Mageia obično\n"
"automatski pokreće sve instalirane servise prilikom pokretanja sistema.\n"
"Čak i ako su sigurni i nemaju poznatih problema u trenutku pakovanja\n"
"distribucije, sasvim je moguće da su neke sigurnosne rupe otkrivene\n"
-"nakon što je dovršena ova verzija Mandriva Linuxa. Ako niste sigurni\n"
+"nakon što je dovršena ova verzija Mageiaa. Ako niste sigurni\n"
"čemu tačno služi taj paket ili zašto ga treba instalirati, kliknite na \"%s"
"\".\n"
"Klikom na \"%s\" instalirate navedene servise i oni će biti automatski\n"
@@ -529,11 +534,11 @@ msgstr ""
"vašim potrebama."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -589,7 +594,7 @@ msgid ""
msgstr ""
"X (skraćeno od X Window System) je srce GNU/Linux grafičkog interfejsa\n"
"o kojem ovise sve grafičke okoline (KDE, GNOME, AfterStep,\n"
-"WindowMaker itd.) uključene u Mandriva Linux.\n"
+"WindowMaker itd.) uključene u Mageia.\n"
"\n"
"Biće vam predstavljena lista različitih parametara koje možete promijeniti\n"
"da biste dobili optimalan grafički prikaz.\n"
@@ -704,41 +709,45 @@ msgstr ""
"podešavanjem ekrana."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -747,15 +756,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -768,12 +777,12 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Na ovom mjestu trebate izabrati gdje želite instalirati Mandriva Linux\n"
+"Na ovom mjestu trebate izabrati gdje želite instalirati Mageia\n"
"operativni sistem na vašem hard disku. Ako je disk prazan ili ako postojeći\n"
"operativni sistem koristi sav prostor na njemu, potrebno je da ga\n"
"particionirate. U biti, particioniranje hard diska predstavlja logičko\n"
"organiziranje kako bi se stvorio prostor za instaliranje vašeg novog\n"
-"Mandriva Linux sistema.\n"
+"Mageia sistema.\n"
"\n"
"Pošto su efekti particioniranja obično nepovratni, i mogu voditi do gubitka\n"
"podataka na eventualnom postojećem operativnom sistemu, particioniranje\n"
@@ -805,7 +814,7 @@ msgstr ""
"podataka, pod uslovom da prethodno defragmentirate Windows particiju\n"
"i da ona koristi FAT format. Backupovanje vaših podataka je strogo\n"
"preporučeno. Ova mogućnost je preporučena ako namjeravate koristiti i\n"
-"Mandriva Linux i Microsoft Windows na istom računaru.\n"
+"Mageia i Microsoft Windows na istom računaru.\n"
"\n"
" Prije izbora ove opcije, molim da imate na umu da će, nakon ove\n"
"procedure, veličina vaše Microsoft Windows particije biti manja nego\n"
@@ -939,7 +948,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -958,7 +967,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -980,15 +989,15 @@ msgstr ""
"Kliknite na \"%s\" kada budete spremni za formatiranje particija.\n"
"\n"
"Kliknite na \"%s\" ako želite da izaberete druge particije za instalaciju\n"
-"vašeg novog Mandriva Linux operativnog sistema.\n"
+"vašeg novog Mageia operativnog sistema.\n"
"\n"
"Kliknite na \"%s\" da izaberete particije koje želite provjeriti radi\n"
"loših blokova."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1000,7 +1009,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Kada završite instalaciju Mandriva Linuxa, moguće je da su neki paketi\n"
+"Kada završite instalaciju Mageiaa, moguće je da su neki paketi\n"
"ažurirani od zadnjeg izdanja. Moguće je da su ispravljeni bugovi ili\n"
"rješena neka sigurnosna pitanja. Ako želite iskoristiti ova unaprjeđenja,\n"
"možete ih sada dobaviti sa Interneta. Izaberite \"%s\" ako imate ispravnu\n"
@@ -1013,7 +1022,7 @@ msgstr ""
"instalirate izabrane pakete, ili \"%s\" za prekid."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1022,7 +1031,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1035,7 +1044,7 @@ msgstr ""
"jednostavnosti korištenja.\n"
"\n"
"Ako ne znate šta izabrati, zadržite ponuđenu opciju. Možete promijeniti\n"
-"nivo sigurnosti naknadno koristeći program draksec iz Mandriva Linux\n"
+"nivo sigurnosti naknadno koristeći program draksec iz Mageia\n"
"Kontrolnog centra.\n"
"\n"
"Polje \"%s\" obavještava sistem o korisniku koji će biti odgovoran za\n"
@@ -1047,24 +1056,27 @@ msgid "Security Administrator"
msgstr "Sigurnosni administrator"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1080,21 +1092,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1111,17 +1125,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Sada trebate izabrati koje particije želite koristiti za instalaciju vašeg\n"
-"Mandriva Linux sistema. Ako su particije već definisane, iz prijašnje\n"
+"Mageia sistema. Ako su particije već definisane, iz prijašnje\n"
"GNU/Linux instalacije ili nekim drugim alatom za particioniranje, možete\n"
"koristiti postojeće particije. U suprotnom, sada morate definisati\n"
"particije vašeg hard diska.\n"
@@ -1135,7 +1143,7 @@ msgstr ""
"\n"
" * \"%s\": ova opcija briše sve particije na izabranom hard disku\n"
"\n"
-" * \"%s\": ova opcija vam omogućuje da automatski napravite ext3\n"
+" * \"%s\": ova opcija vam omogućuje da automatski napravite ext4\n"
"i swap particije u slobodnom prostoru vašeg hard diska\n"
"\n"
"\"%s\" omogućuje pristup dodatnim mogućnostima:\n"
@@ -1186,12 +1194,6 @@ msgstr ""
"\n"
"Da biste dobili informacije o raznim tipovima datotečnog sistema koji\n"
"su dostupni, pročitajte poglavlje o ext2FS iz ''Referentnog priručnika''.\n"
-"\n"
-"Ako instalirate na PPC računar, trebate napraviti malu HFS ''bootstrap''\n"
-"particiju od najmanje 1 MB koju će koristiti yaboot bootloader. Ako se\n"
-"odlučite da ovu particiju učinite nešto većom, npr. 50 MB, primjetićete\n"
-"da je ona korisno mjesto za čuvanje rezervnog kernela ili ramdisk slika\n"
-"za hitne slučajeve."
#: ../help.pm:526
#, c-format
@@ -1229,41 +1231,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Prekidač normalnog/ekspertnog moda"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Na vašem hard disku ustanovljeno je više od jedne Microsoft particije.\n"
"Molim izaberite onu koju želite smanjiti kako biste instalirali vaš\n"
-"Mandriva Linux operativni sistem.\n"
+"Mageia operativni sistem.\n"
"\n"
"Svaka particija je navedena ovako: \"Linux ime\", \"Windows ime\",\n"
"\"Kapacitet\".\n"
@@ -1305,35 +1313,35 @@ msgstr ""
"listu svih država."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Ovaj korak se aktivira samo ako je na vašem računaru pronađena postojeća\n"
"GNU/Linux particija.\n"
"\n"
"DrakX sada treba znati da li želite izvršiti novu instalaciju ili\n"
-"nadogradnju postojećeg Mandriva Linux sistema:\n"
+"nadogradnju postojećeg Mageia sistema:\n"
"\n"
" * \"%s\". Najčešće ovo će u potpunosti obrisati stari sistem. Ipak,\n"
"ovisno o vašoj šemi particioniranja, možete spriječiti da neki od vaših\n"
@@ -1342,14 +1350,14 @@ msgstr ""
"datotečni sistem, trebate koristiti ovu opciju.\n"
"\n"
" * \"%s\". Ova vrsta instalacije vam omogućuje da ažurirate pakete\n"
-"koji su trenutno instalirani na vašem Mandriva Linux sistemu. Vaša trenutna\n"
+"koji su trenutno instalirani na vašem Mageia sistemu. Vaša trenutna\n"
"šema particioniranja i korisnički podaci neće biti izmijenjeni. Većina\n"
"ostalih koraka konfiguracije ostaju kao što jesu, slično običnoj "
"instalaciji.\n"
"\n"
-"Opcija ''Nadogradi'' bi trebala raditi ispravno na Mandriva Linux sistemima\n"
+"Opcija ''Nadogradi'' bi trebala raditi ispravno na Mageia sistemima\n"
"koji koriste verziju \"8.1\" ili kasniju. Obavljanje nadogradnje na ranijim\n"
-"verzijama Mandriva Linuxa, prije verzije \"8.1\", nije preporučeno."
+"verzijama Mageiaa, prije verzije \"8.1\", nije preporučeno."
#: ../help.pm:594
#, c-format
@@ -1391,7 +1399,7 @@ msgstr ""
"prebaciti tastaturu između latiničnog i ne-latiničnog rasporeda."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1407,8 +1415,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1448,7 +1455,7 @@ msgstr ""
"\n"
"O UTF-8 (Unicode) podršci. Unicode je novi način kodiranja znakova čiji\n"
"je cilj da obuhvati sve postojeće jezike. Ipak puna podrška za njega pod\n"
-"GNU/Linuxom je još uvijek u razvoju. Iz tog razloga, Mandriva Linux će ga\n"
+"GNU/Linuxom je još uvijek u razvoju. Iz tog razloga, Mageia će ga\n"
"koristiti ovisno o drugim izborima korisnika:\n"
"\n"
" * Ako izaberete jezike sa raširenim starim kodiranjem (latin1 jezici, "
@@ -1586,7 +1593,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1609,10 +1616,10 @@ msgstr ""
"šta radite."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1633,11 +1640,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Sada je vrijeme da izaberete sistem štampe za vaš računar. Drugi\n"
-"operativni sistemi vam možda nude jedan, ali Mandriva Linux nudi\n"
+"operativni sistemi vam možda nude jedan, ali Mageia nudi\n"
"dva. Svaki od ovih sistema je najbolji za određenu vrstu konfiguracije.\n"
"\n"
"* \"%s\" -- skraćeno za ``štampaj i nemoj stavljati u red'' (print, do not\n"
@@ -1664,7 +1671,7 @@ msgstr ""
"\n"
"Ako sada napravite izbor, pa kasnije zaključite da vam se ne sviđa izabrani\n"
"sistem štampe, možete ga promijeniti pokretanjem PrinterDrake iz\n"
-"Mandriva Linux Kontrolnog centra i klikanjem na dugme \"%s\"."
+"Mageia Kontrolnog centra i klikanjem na dugme \"%s\"."
#: ../help.pm:768
#, c-format
@@ -1689,7 +1696,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1771,8 +1778,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1789,7 +1795,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1841,7 +1847,7 @@ msgstr ""
"\n"
"* \"%s\": ako želite, možete podesiti vaš Internet pristup ili pristup\n"
"lokalnoj mreži. Pogledajte štampanu dokumentaciju ili koristite\n"
-"Mandriva Linux Kontrolni centar nakon što je završena instalacija\n"
+"Mageia Kontrolni centar nakon što je završena instalacija\n"
"kako biste koristili ugrađenu pomoć. \n"
" * \"%s\": omogućuje vam da podesite adrese HTTP i FTP proxyja ako\n"
"se računar na koji instalirate nalazi iza proxy servera.\n"
@@ -1856,7 +1862,7 @@ msgstr ""
"* \"%s\": ako želite promijeniti postavke bootloadera, kliknite na to\n"
"dugme. Ovo bi trebalo biti rezervisano za napredne korisnike. Pogledajte\n"
"štampanu dokumentaciju ili pomoć za bootloader konfiguraciju uključenu\n"
-"u Mandriva Linux Kontrolni centar.\n"
+"u Mageia Kontrolni centar.\n"
"\n"
"* \"%s\": ovdje možete fino podešavati koji servisi će biti pokrenuti\n"
"na vašem računaru. Ako planirate koristiti ovaj računar kao server,\n"
@@ -1878,26 +1884,28 @@ msgid "Graphical Interface"
msgstr "Grafički interfejs"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Izaberite hard disk koji želite obrisati kako biste instalirali vašu novu\n"
-"Mandriva Linux particiju. Budite pažljivi, svi podaci koji se nalaze na\n"
+"Mageia particiju. Budite pažljivi, svi podaci koji se nalaze na\n"
"njemu će biti izgubljeni i neće se moći vratiti!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Kliknite na \"%s\" ako želite obrisati sve podatke i particije koje\n"
"su prisutne na ovom hard disku. Budite oprezni, jer nakon klikanja na\n"
diff --git a/perl-install/install/help/po/ca.po b/perl-install/install/help/po/ca.po
index 28043785f..ed1b8b6be 100644
--- a/perl-install/install/help/po/ca.po
+++ b/perl-install/install/help/po/ca.po
@@ -1,38 +1,41 @@
-# translation of ca.po to Catalan
-# translation of DrakX.po to Catalan
-# Copyright (C) 2000-2004, 2005 Free Software Foundation, Inc.
-# Softcatala, softcatala.org, 2000-2003
-# Albert Astals Cid <astals11@terra.es>, 2003-2004, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
+# Davidmp <medipas@gmail.com>, 2024
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: ca\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2005-09-13 23:24+0200\n"
-"Last-Translator: Albert Astals Cid <astals11@terra.es>\n"
-"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: Davidmp <medipas@gmail.com>, 2024\n"
+"Language-Team: Catalan (https://app.transifex.com/MageiaLinux/teams/9361/"
+"ca/)\n"
+"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
-"Plural-Forms: nplurals=2; plural=n!=1;\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Abans de continuar, llegiu atentament les clàusules de la llicència. "
"Cobreix\n"
-"tota la distribució Mandriva Linux. Si esteu d'acord amb tots els termes de "
-"la\n"
-"llicència, feu clic al quadre \"%s\"; si no, prémer el botó \"%s\"\n"
-"reiniciarà el vostre ordinador."
+"tota la distribució de Mageia. Si esteu d'acord en tots els termes de la\n"
+"llicència, feu clic al quadre %s; si no, si premeu el botó %s\n"
+"es reiniciarà l'ordinador."
#: ../help.pm:20
#, c-format
@@ -75,77 +78,73 @@ msgid ""
"\"%s\". If you're not interested in this feature, uncheck the \"%s\" box."
msgstr ""
"El GNU/Linux és un sistema multiusuari; això vol dir que cada usuari pot\n"
-"tenir les seves pròpies preferències, els seus propis fitxers, etc. Podeu "
-"llegir\n"
-"la ``Guia d'iniciació''\n"
-" per aprendre més coses sobre els sistemes\n"
-"multiusuari. Però, a diferència del \"root\", que és l'administrador del "
+"tenir les pròpies preferències, els propis fitxers, etc. Podeu llegir-ne\n"
+"la Guia d'iniciació\n"
+"per aprendre més coses sobre els sistemes\n"
+"multiusuari. Però, a diferència de root (arrel), que és l'administrador del "
"sistema,\n"
-"als usuaris que afegiu aquí no se'ls permetrà modificar res tret dels seus "
+"als usuaris que afegiu aquí no se'ls permetrà modificar res tret dels "
"propis\n"
-"fitxers i configuracions, protegint així el sistema de canvis, intencionats "
-"o no, \n"
-" que tenen efecte sobre tot el sistema . Cal que us creeu, com a mínim, un "
+"fitxers i configuracions, i així el sistema es protegeix de canvis, "
+"intencionats o no, \n"
+"que tenen efecte sobre tot el sistema . Cal que us creeu, com a mínim, un "
"usuari\n"
-"normal, i és aquest compte el que heu d'utilitzar per a l'ús quotidià. Tot i "
-"que\n"
-"és molt fàcil entrar com a \"root\" per a tot, també pot ser molt perillós: "
-"la més\n"
+"normal, i és aquest compte el que heu d'usar per a l'ús quotidià. Tot i que\n"
+"és molt fàcil entrar com a arrel per a tot, també pot ser molt perillós: la "
+"més\n"
"petita errada podria significar que el sistema deixés de funcionar. Si "
"cometeu\n"
"una errada greu com a usuari normal el pitjor que pot passar és que perdeu\n"
-"algunes daDES, però sense afectar a tot el sistema.\n"
-"\n"
-"Primer, heu d'introduir el vostre nom real. Per suposat, això no és "
-"obligatori,\n"
-"ja que podeu introduir el que vulgueu. DrakX agafarà la primera paraula\n"
-"que heu introduït en aquest camp i la copiarà en el camp \"%s\", que serà "
-"el\n"
-"nom que utilitzarà aquest usuari per entrar al sistema (ho podeu canviar si\n"
+"algunes dades, però sense que això afecti tot el sistema.\n"
+"\n"
+"Primer, heu d'introduir el nom real. Per descomptat, això no és obligatori,\n"
+"ja que podeu introduir-hi el que vulgueu. El DrakX agafarà la primera "
+"paraula\n"
+"que heu introduït en aquest camp i la copiarà al camp %s, que serà el\n"
+"nom que usarà aquest usuari per entrar al sistema (ho podeu canviar si\n"
"voleu). Després cal que introduïu una contrasenya. Des del punt de vista de\n"
"la seguretat, una contrasenya d'un usuari no privilegiat (habitual) no és "
"tan\n"
-"important com la del \"root\" des del punt de vista de la seguretat, però no "
-"hi\n"
-"ha cap raó per menystenir-la, deixant-la en blanc o fent-la massa senzilla: "
+"important com la d'arrel des del punt de vista de la seguretat, però no hi\n"
+"ha cap raó per menystenir-la deixant-la en blanc o fent-la massa senzilla: "
"al\n"
-"cap i a la fi, els vostres fitxers poden estar en joc.\n"
+"cap i a la fi, els vostres fitxers poden estar en risc.\n"
"\n"
-"Un cop hagueu fet clic a \"%s\" podreu afegir altres usuaris. Afegiu-ne un\n"
-"per a tothom que hagi de fer servir l'ordinador. Feu clic a \"%s\" quan "
-"hagueu\n"
-"acabat d'afegir-ne.\n"
+"Un cop hàgiu fet clic a %s podreu afegir-hi altres usuaris. Afegiu-ne un\n"
+"per a cada persona que hagi de fer servir l'ordinador. Feu clic a %s quan "
+"hàgiu\n"
+"acabat.\n"
"\n"
-"Feu clic al botó \"%s\" per canviar l'intèrpret d'ordres (\"shell\") per "
-"defecte\n"
+"Feu clic al botó %s per canviar l'intèrpret d'ordres (shell) per defecte\n"
"(bash) de l'usuari seleccionat. \n"
"\n"
-"Quan hagueu acabat d'afegir usuaris, se us proposarà decidir quin usuari\n"
-"entrarà automàticament en el sistema en arrencar l'ordinador. Si us\n"
+"Quan hàgiu acabat d'afegir-hi usuaris, se us proposarà decidir quin usuari\n"
+"entrarà automàticament al sistema en arrencar l'ordinador. Si us\n"
"interessa aquesta característica (i no us importa gaire la seguretat "
"local), \n"
-"trieu l'usuari i el gestor de finestres desitjat i feu clic a \"%s\".\n"
-"Si no hi esteu interessat, desactiveu el quadre \"%s\"."
+"trieu l'usuari i el gestor de finestres desitjat i feu clic a %s.\n"
+"Si no hi esteu interessats, desactiveu el quadre %s."
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Nom d'usuari"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Accepta l'usuari"
#: ../help.pm:54
#, c-format
msgid "Do you want to use this feature?"
-msgstr "Voleu utilitzar aquesta característica?"
+msgstr "Voleu usar aquesta funció?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -155,24 +154,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Aquestes són les particions de Linux existents que s'han detectat al disc "
@@ -181,65 +184,59 @@ msgstr ""
"adequades\n"
"per a les instal·lacions més habituals. Si hi feu algun canvi, com a mínim "
"heu\n"
-"de definir una partició arrel (\"/\"). No trieu una partició massa petita "
+"de definir una partició d'arrel (/). No trieu una partició massa petita "
"perquè\n"
"no podríeu instal·lar-hi prou programari. Si voleu emmagatzemar les dades en "
"una\n"
-"altra partició, us caldrà crear una partició \"/home\" (això només serà "
+"altra partició, us caldrà crear una partició /home (això només serà "
"possible\n"
"si hi ha més d'una partició de Linux disponible).\n"
"\n"
-"Cada partició està identificada d'aquesta manera: \"Nom\", \"Capacitat\".\n"
+"Cada partició està identificada d'aquesta manera: nom, capacitat.\n"
"\n"
-"\"Nom\" es compon de: \"tipus d'unitat de disc\", \"número d'unitat de disc"
-"\",\n"
-"\"número de la partició\" (per exemple, \"hda1\").\n"
+"El nom es compon del tipus d'unitat de disc, el número d'unitat de disc i\n"
+"el número de la partició (per exemple, hda1).\n"
"\n"
-"El \"Tipus d'unitat de disc\" és \"hd\" si la vostre unitat de disc és IDE i "
-"\"sd\" si és SCSI.\n"
+"El tipus d'unitat de disc és hd si la unitat de disc és IDE i sd si és "
+"SCSI.\n"
"\n"
-"El \"Número de la unitat de disc\" és sempre una lletra després d'\"hd\" o "
-"\"sd\".\n"
+"El número de la unitat de disc és sempre una lletra després d'hd o sd.\n"
"Per a unitats de disc IDE:\n"
"\n"
-" * \"a\" significa \"unitat de disc mestra en el controlador IDE primari\",\n"
+" * \"a\" significa 'unitat de disc mestra al controlador IDE primari',\n"
"\n"
-" * \"b\" significa \"unitat de disc esclava en el controlador IDE primari"
-"\",\n"
+" * \"b\" significa 'unitat de disc esclava al controlador IDE primari',\n"
"\n"
-" * \"c\" significa \"unitat de disc mestra en el controlador IDE secundari"
-"\",\n"
+" * \"c\" significa 'unitat de disc mestra al controlador IDE secundari',\n"
"\n"
-" * \"d\" significa \"unitat de disc esclava en el controlador IDE secundari"
-"\".\n"
+" * \"d\" significa 'unitat de disc esclava al controlador IDE secundari'.\n"
"\n"
-"Amb unitats de disc SCSI, una \"a\" significa \"ID SCSI més baixa\",\n"
-"una \"b\" significa \"segona ID SCSI més baixa\", etc."
+"Amb unitats de disc SCSI, una a significa 'ID SCSI més baixa',\n"
+"una b significa 'segona ID SCSI més baixa', etc."
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"La instal·lació del Mandriva Linux està repartida en diversos CD-ROM. Si\n"
-"un dels paquets escollits està en un altre CD-ROM, DrakX expulsarà el CD\n"
+"La instal·lació del Mageia està repartida en diversos CD-ROM. Si\n"
+"un dels paquets triats és en un altre CD-ROM, el DrakX expulsarà el CD\n"
"actual i us demanarà que n'inseriu un altre. Si no teniu el CD necessari a\n"
-"mà, premeu \"%s\" i els paquets corresponents no s'instal·laran."
+"mà, premeu %s i els paquets corresponents no s'instal·laran."
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -290,25 +287,25 @@ msgid ""
"megabytes."
msgstr ""
"Ha arribat el moment d'indicar els programes que voleu instal·lar en el\n"
-"sistema. Mandriva Linux té milers de paquets, i per facilitar-ne la\n"
+"sistema. Mageia té milers de paquets, i per a facilitar-ne la\n"
"gestió s'han distribuït en grups d'aplicacions similars.\n"
"\n"
-"Mandriva Linux agrupa els paquets en quatre categories. Podeu mesclar i fer\n"
+"Mageia agrupa els paquets en quatre categories. Podeu mesclar i fer\n"
"coincidir aplicacions de grups diversos, de manera que una instal·lació\n"
-"d'``Estació de treball'' pot perfectament tenir instal·lades aplicacions\n"
-"de la categoria ``Servidor'' \n"
+"d'«Estació de treball» pot perfectament tenir instal·lades aplicacions\n"
+"de la categoria «Servidor» \n"
+"\n"
" * \"%s\": si voleu utilitzar l'ordinador com a estació de treball,\n"
"seleccioneu un o més grups de la categoria estació de treball.\n"
"\n"
-" * \"%s\": si penseu utilitzar la vostra màquina per programar, escolliu\n"
-"els grups adients d'aquesta categoria. El grup especial \"LSB\"\n"
+" * \"%s\": si penseu utilitzar la vostra màquina per a programar, escolliu\n"
+"els grups adients d'aquesta categoria. El grup especial «LSB»\n"
"configurarà el vostre sistema per tal que compleixi tant com sigui\n"
-"possible amb les especificacions Linux Standard Base.\n"
+"possible les especificacions Linux Standard Base.\n"
"\n"
-" Seleccionar el grup \"LSB\" també instal·larà un kernel \"2.4\",\n"
-"en comptes del \"2.6\". Això es fa per assegurar que els sistema\n"
-"compleixi al 100%% amb LSB. Si no seleccioneu el grup \"LSB\"\n"
-"encara tindreu un sistema que compleix la LSB quasi al 100%%.\n"
+" Si seleccioneu el grup «LSB» s'assegura que els sistema\n"
+"compleix al 100%% amb LSB. Si no seleccioneu el grup «LSB»\n"
+"encara tindreu un sistema que compleix la LSB gairebé al 100%%.\n"
"\n"
" * \"%s\": si l'ordinador s'ha d'utilitzar com a servidor, seleccioneu\n"
"quins dels serveis més habituals voleu instal·lar\n"
@@ -320,28 +317,29 @@ msgstr ""
"Si moveu el cursor per sobre d'un nom de grup veureu una breu explicació\n"
"d'aquest grup.\n"
"\n"
-"Podeu marcar la casella \"%s\", que és útil si esteu familiaritzat amb els\n"
-"diversos paquets o si voleu tenir un control total sobre el que "
+"Podeu marcar la casella «%s», que és útil si esteu familiaritzats amb els\n"
+"diversos paquets o si voleu tenir un control total sobre allò que "
"s'instal·larà.\n"
"\n"
-"Si heu començat la instal·lació en el mode \"%s\", podeu desseleccionar \n"
+"Si comenceu la instal·lació en el mode «%s», podeu desseleccionar \n"
"tots els grups si voleu evitar que s'instal·li cap paquet nou. Això és\n"
"útil per reparar o actualitzar un sistema existent.\n"
+"\n"
"Si desseleccioneu tots els grups quan estigueu fent una\n"
"instal·lació normal (i no una actualització), se us presentarà un diàleg \n"
"proposant-vos diferents opcions per a una instal·lació mínima:\n"
"\n"
-" * \"%s\": instal·la els mínims paquets necessaris per tenir un\n"
+" * «%s»: instal·la els mínims paquets necessaris per a tenir un\n"
"entorn gràfic funcional\n"
"\n"
-" * \"%s\": instal·la el sistema base i les utilitats bàsiques amb la seva\n"
-"documentació. Aquesta instal·lació és adequada per configurar un servidor;\n"
+" * «%s»: instal·la el sistema base i les utilitats bàsiques amb la seva\n"
+"documentació. Aquesta instal·lació és adequada per a configurar un "
+"servidor;\n"
"\n"
-" * \"%s\": instal·la el nombre mínim de paquets necessari per aconseguir un\n"
+" * «%s»: instal·la el nombre mínim de paquets necessari per a aconseguir un\n"
"sistema Linux operatiu, només amb una interfície de línia d'ordres. Aquesta\n"
"instal·lació ocupa uns 65 MB."
-#
#: ../help.pm:149 ../help.pm:591
#, c-format
msgid "Upgrade"
@@ -352,11 +350,10 @@ msgstr "Actualitza"
msgid "With basic documentation"
msgstr "Amb la documentació bàsica"
-#
#: ../help.pm:149
#, c-format
msgid "Truly minimal install"
-msgstr "Instal·lació mínima real"
+msgstr "Instal·lació realment mínima"
#: ../help.pm:152
#, c-format
@@ -372,10 +369,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -404,19 +401,19 @@ msgstr ""
"Cada cop que seleccioneu un paquet de l'arbre, apareixerà una descripció a \n"
"la dreta que us informarà de la finalitat del paquet.\n"
"\n"
-"!! Si heu seleccionat un paquet de servidor, intencionadament o perquè\n"
+"Atenció! Si heu seleccionat un paquet de servidor, intencionadament o "
+"perquè\n"
"formava part d'un grup, se us demanarà que confirmeu si realment voleu\n"
-"instal·lar aquests servidors. Per defecte, Mandriva Linux "
-"iniciaràautomàticament qualsevol servidor durant l'arrencada. Tot i que\n"
+"instal·lar aquests servidors. Per defecte, Mageia iniciarà \n"
+"automàticament qualsevol servidor durant l'arrencada. Tot i que\n"
"siguin segurs i no tinguin cap problema conegut quan es publica la\n"
"distribució, és totalment possible que es descobreixin forats de seguretat\n"
-"després que aquesta versió de Mandriva Linux quedi finalitzada.\n"
-"Si no sabeu què se suposa que fa un servei en particular, o per què s'està\n"
-"instal·lant, feu clic a \"%s\". Per defecte, si feu clic a \"%s\" els "
-"serveis\n"
-"llistats s'instal·laran i s'iniciaran automàticament durant l'arrencada. !!\n"
+"després que aquesta versió de Mageia quedi acabada.\n"
+"Si no sabeu què se suposa que fa un servei particular, o per què s'està\n"
+"instal·lant, feu clic a %s. Per defecte, si feu clic a %s els serveis\n"
+"llistats s'instal·laran i s'iniciaran automàticament durant l'arrencada.\n"
"\n"
-"L'opció \"%s\" s'utilitza per inhabilitar el diàleg d'advertència que\n"
+"L'opció %s s'usa per inhabilitar el diàleg d'advertència que\n"
"apareix quan l'instal·lador selecciona automàticament un paquet per "
"resoldre\n"
"dependències. Alguns paquets estan relacionats els uns amb els\n"
@@ -425,15 +422,15 @@ msgstr ""
"calen\n"
"per satisfer una dependència i completar la instal·lació satisfactòriament.\n"
"\n"
-"La diminuta icona d'un disquet al peu de la llista us permet carregar una\n"
+"La icona diminuta d'un disquet al peu de la llista us permet carregar una\n"
"llista de paquets creada en una instal·lació anterior. Això és útil si "
"teniu\n"
"un cert nombre d'ordinadors que voleu configurar de manera idèntica. Si feu\n"
-"clic a aquesta icona se us demanarà que inseriu un disquet creat "
+"clic en aquesta icona se us demanarà que inseriu un disquet creat "
"anteriorment\n"
"al final d'una altra instal·lació. Vegeu el segon suggeriment de l'últim "
"pas\n"
-"per saber com crear aquest disquet."
+"per a saber com crear aquest disquet."
#: ../help.pm:183
#, c-format
@@ -463,22 +460,21 @@ msgstr ""
"En aquest diàleg escollireu els serveis que voleu que s'iniciïn durant "
"l'arrencada.\n"
"\n"
-"DrakX farà una llista de tots els serveis disponibles en la instal·lació "
+"El DrakX farà una llista de tots els serveis disponibles a la instal·lació "
"actual.\n"
-"Reviseu-los amb cura i desmarqueu aquells que no siguin necessaris durant "
+"Reviseu-los amb cura i desmarqueu els que no siguin necessaris durant "
"l'arrencada.\n"
"\n"
"Podeu obtenir una explicació breu sobre un servei si el seleccioneu. Si no\n"
-"esteu segur de la utilitat d'un servei, el més segur és deixar el "
-"comportament\n"
+"teniu clara la utilitat d'un servei, el més segur és deixar el comportament\n"
"per defecte.\n"
"\n"
-"!! Aneu especialment amb cura en aquest pas si penseu utilitzar l'ordinador "
+"Atenció! Aneu especialment amb cura en aquest pas si penseu usar l'ordinador "
"com\n"
"a servidor: segurament no voldreu iniciar serveis que no necessiteu.\n"
"Recordeu que hi ha diversos serveis que poden ser perillosos si s'habiliten\n"
"en un servidor. En general, seleccioneu només els serveis que realment "
-"necessiteu. !!"
+"necessiteu."
#: ../help.pm:209
#, c-format
@@ -496,26 +492,24 @@ msgid ""
"choose a time server located near you. This option actually installs a time\n"
"server which can be used by other machines on your local network as well."
msgstr ""
-"GNU/Linux gestiona l'hora en GMT (Greenwich Mean Time) i el tradueix a\n"
+"El GNU / Linux gestiona l'hora en GMT (Greenwich Mean Time) i el tradueix a\n"
"l'hora local d'acord amb la zona horària seleccionada. Si el rellotge de la\n"
-"placa base indica l'hora local, podeu desactivar-ho desseleccionant \"%s\", "
-"i\n"
-"això informarà a GNU/Linux que el rellotge del sistema i el rellotge del\n"
+"placa base indica l'hora local, podeu desactivar-ho desmarcant %s, i\n"
+"això informarà al GNU / Linux que el rellotge del sistema i el rellotge del\n"
"maquinari són a la mateixa zona horària. Això és convenient quan la màquina\n"
"també té instal·lat un altre sistema operatiu.\n"
"\n"
-"L'opció \"%s\" regularà automàticament l'hora connectant-se a un servidor\n"
+"L'opció %s regularà automàticament l'hora connectant-se a un servidor\n"
"horari remot d'Internet. Per tal que funcioni aquesta funció us caldrà "
"tenir\n"
-"connexió a Internet. És millor triar un servidor que estigui ubicat a prop\n"
-"vostre. De fet, aquesta opció instal·la un servidor d'hora que altres "
-"màquines\n"
-"de la vostra xarxa local també podran utilitzar."
+"connexió a Internet. És millor triar un servidor que estigui ubicat a prop.\n"
+"De fet, aquesta opció instal·la un servidor d'hora que altres màquines\n"
+"de la vostra xarxa local també podran usar."
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Rellotge de maquinari establert a GMT"
#: ../help.pm:213
#, c-format
@@ -539,7 +533,7 @@ msgstr ""
"\n"
" Normalment, l'instal·lador detectarà automàticament i configurarà la\n"
"targeta gràfica que tingueu instal·lada a l'ordinador. Si no fos així, la\n"
-"podeu seleccionar d'aquesta llista.\n"
+"podeu seleccionar en aquesta llista.\n"
"\n"
" Cas que hi hagi diferents servidors per a la targeta, amb o sense\n"
"acceleració 3D, se us demanarà que trieu el servidor que us sigui\n"
@@ -550,7 +544,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -604,9 +598,9 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
-"X (per sistema X Window) és el cor de la interfície gràfica de GNU/Linux\n"
+"X (el sistema X Window) és el cor de la interfície gràfica de GNU / Linux\n"
"de què depenen tots els entorns gràfics (KDE, GNOME, AfterStep, \n"
-"WindowMaker, etc.) que venen amb Mandriva Linux.\n"
+"WindowMaker, etc.) que venen amb Mageia.\n"
"\n"
"Veureu una relació de diferents paràmetres que podeu canviar per aconseguir\n"
"una visualització gràfica òptima.\n"
@@ -614,11 +608,11 @@ msgstr ""
"Targeta gràfica\n"
"\n"
" Normalment, l'instal·lador detectarà i configurarà automàticament la\n"
-"targeta gràfica instal·lada a l'ordinador. Si no fos així, podeu escollir\n"
-"de la llista la targeta que realment tingueu instal·lada.\n"
+"targeta gràfica instal·lada a l'ordinador. Si no fos així, podeu triar a\n"
+"la llista la targeta que realment tingueu instal·lada.\n"
"\n"
" En cas que hi hagi diferents servidors disponibles per a la vostra\n"
-"targeta, amb o sense acceleració 3D, se us demanarà que escolliu el que\n"
+"targeta, amb acceleració 3D o sense, se us demanarà que trieu el que\n"
"més us convingui.\n"
"\n"
"\n"
@@ -634,7 +628,7 @@ msgstr ""
"Resolució\n"
"\n"
" Aquí podeu triar les resolucions i profunditats de color disponibles per\n"
-"al vostre maquinari. Trieu la que us vagi més bé (tot i que podreu\n"
+"al maquinari. Trieu la que us vagi més bé (tot i que podreu\n"
"canviar-la després de la instal·lació). Al monitor veureu una mostra de la\n"
"configuració triada.\n"
"\n"
@@ -642,21 +636,21 @@ msgstr ""
"\n"
"Prova\n"
"\n"
-" Depenent del maquinari aquesta entrada pot no aparèixer.\n"
+" Segons el maquinari aquesta entrada pot no aparèixer.\n"
"\n"
" El sistema intentarà obrir una pantalla gràfica amb la resolució\n"
-"desitjada. Si podeu veure el missatge durant la prova i responeu \"%s\",\n"
-"DrakX passarà al pas següent. Si no el podeu veure, vol dir que la\n"
+"desitjada. Si podeu veure el missatge durant la prova i responeu %s,\n"
+"el DrakX passarà al pas següent. Si no el podeu veure, vol dir que la\n"
"configuració detectada automàticament no era del tot correcta i la prova\n"
-"finalitzarà automàticament al cap de 12 segons, portant-vos de nou al menú.\n"
-"Canvieu els paràmetres fins que obtingueu una pantalla gràfica correcta.\n"
+"acabarà automàticament al cap de 12 segons, i us tornarà al menú.\n"
+"Canvieu els paràmetres fins que obtingueu una visulització correcta.\n"
"\n"
"\n"
"\n"
"Opcions\n"
"\n"
" Aquí podeu decidir si voleu que l'ordinador canviï automàticament a una\n"
-"interfície gràfica en arrencar. Òbviament, voldreu activar \"%s\" si\n"
+"interfície gràfica en arrencar. Òbviament, voldreu activar %s si\n"
"l'ordinador ha d'actuar com a servidor, o si no heu aconseguit\n"
"configurar la pantalla."
@@ -688,7 +682,7 @@ msgstr ""
"Resolució\n"
"\n"
" Aquí podeu triar les resolucions i profunditats de color disponibles per\n"
-"al vostre maquinari. Trieu la que us vagi més bé (tot i que podreu\n"
+"al maquinari. Trieu la que us vagi més bé (tot i que podreu\n"
"canviar-la després de la instal·lació). Al monitor veureu una mostra de la\n"
"configuració triada."
@@ -700,7 +694,7 @@ msgid ""
"suits your needs."
msgstr ""
"En cas que hi hagi diferents servidors disponibles per a la vostra\n"
-"targeta, amb o sense acceleració 3D, se us demanarà que escolliu\n"
+"targeta, amb o sense acceleració 3D, se us demanarà que trieu\n"
"el servidor que més us convingui."
#: ../help.pm:311
@@ -716,45 +710,49 @@ msgstr ""
"Opcions\n"
"\n"
" Aquí podeu decidir si voleu que l'ordinador canviï automàticament a una\n"
-"interfície gràfica en arrencar. Òbviament, activareu \"%s\" si l'ordinador\n"
+"interfície gràfica en arrencar. Òbviament, activareu %s si l'ordinador\n"
"ha de ser un servidor, o si no heu pogut configurar la pantalla."
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -763,15 +761,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -785,77 +783,78 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Ara és quan heu de decidir en quin lloc del vostre disc dur voleu\n"
-"instal·lar el sistema operatiu Mandriva Linux. Si el disc és buit,\n"
-"o si un sistema operatiu existent n'utilitza tot l'espai disponible,\n"
+"instal·lar el sistema operatiu Mageia. Si el disc és buit,\n"
+"o si un sistema operatiu existent n'usa tot l'espai disponible,\n"
"us caldrà particionar-lo. Bàsicament, particionar un disc dur\n"
"consisteix a dividir-lo de manera lògica per crear espai on\n"
-"instal·lar el nou sistema Mandriva Linux.\n"
+"instal·lar el nou sistema.\n"
"\n"
"Atès que els efectes d'aquest procés solen ser irreversibles i poden\n"
-"implicar pèrdua de dades si ja teniu un sistema operatiu instal·lat, el\n"
-"particionament us pot espantar si sou un usuari sense experiència.\n"
-"Per sort, DrakX inclou un auxiliar que simplifica aquest procés.\n"
+"implicar pèrdua de dades si ja teniu un sistema operatiu instal·lat,\n"
+"fer particions us pot espantar si sou un usuari sense experiència.\n"
+"Per sort, el DrakX inclou un auxiliar que simplifica aquest procés.\n"
"Abans de continuar, però, llegiu la resta d'aquesta secció i,\n"
"sobre tot, preneu-vos el temps que calgui.\n"
"\n"
-"Segons la configuració del vostre disc dur, hi ha diverses opcions\n"
+"Segons la configuració del disc dur, hi ha diverses opcions\n"
"possibles:\n"
"\n"
-" * \"%s\": aquesta opció particionarà automàticament les unitats buides.\n"
+" * %s: aquesta opció particionarà automàticament les unitats buides.\n"
"Amb aquesta opció no se us farà cap pregunta més.\n"
"\n"
-" * \"%s\": l'auxiliar ha detectat una o més particions de Linux al vostre\n"
-"disc dur. Si voleu utilitzar-les, escolliu aquesta opció. Se us demanarà\n"
+" * %s: l'auxiliar ha detectat una o més particions de Linux al\n"
+"disc dur. Si voleu usar-les, trieu aquesta opció. Se us demanarà\n"
"que trieu els punts de muntatge associats a cadascuna de les particions.\n"
"Els punts de muntatge existents se seleccionen per defecte, i en la\n"
"majoria dels casos és bona idea conservar-los.\n"
"\n"
-" * \"%s\" Si teniu el Microsoft Windows instal·lat al disc dur i n'ocupa\n"
-"tot l'espai disponible, caldrà crear espai lliure per a GNU/Linux. Per\n"
+" * %s: si teniu el Microsoft Windows instal·lat al disc dur i n'ocupa\n"
+"tot l'espai disponible, caldrà crear espai lliure per a GNU / Linux. Per\n"
"fer-ho, podeu suprimir la partició i les dades del Windows\n"
-"(consulteu la solució ``Esborrar completament el disc'') o canviar\n"
+"(consulteu la solució Esborrar completament el disc) o canviar\n"
"la mida de la partició FAT o NTFS de Windows. Aquest canvi de mida\n"
"es pot dur a terme sense cap pèrdua de dades, sempre que la\n"
"partició de Windows hagi estat desfragmentada prèviament.\n"
-"És molt recomanable, fer una còpia de seguretat de les dades.\n"
-"Aquesta opció és la més recomanable si voleu utilitzar tant\n"
-"Mandriva Linux com Microsoft Windows al mateix ordinador.\n"
+"És molt recomanable fer una còpia de seguretat de les dades.\n"
+"Aquesta opció és la més recomanable si voleu usar tant\n"
+"Mageia com Microsoft Windows al mateix ordinador.\n"
"\n"
" Abans de decidir-vos per aquesta opció, penseu que en acabar la partició\n"
-"de Microsoft Windows serà més petita que anteriorment. Tindreu menys espai\n"
+"de Microsoft Windows serà més petita que abans. Tindreu menys espai\n"
"lliure a Microsoft Windows per emmagatzemar-hi dades o instal·lar-hi més "
"programari.\n"
"\n"
-" *\"%s\": si voleu suprimir totes les dades i particions que teniu al disc\n"
-"dur i substituir-les pel sistema Mandriva Linux, podeu escollir aquesta\n"
+" *%s: si voleu suprimir totes les dades i particions que teniu al disc\n"
+"dur i substituir-les pel sistema Mageia, podeu triar aquesta\n"
"opció. Aneu amb compte, però, perquè, un cop la confirmeu, no podreu\n"
"fer-vos enrere.\n"
"\n"
-" ¡¡ Si trieu aquesta opció, totes les dades del disc s'esborraran !!.\n"
+" Atenció! Si trieu aquesta opció, totes les dades del disc s'esborraran.\n"
"\n"
-" *\"%s\": aquesta opció apareix quan el disc dur està completament ple\n"
-"per Microsoft Windows. Escollir aquest opció esborrarà tot el contingut del "
+" *%s: aquesta opció apareix quan el disc dur està completament ocupat\n"
+"pel Microsoft Windows. Triar aquest opció esborrarà tot el contingut del "
"disc i\n"
-"començarà de nou, particionant des de zero.\n"
-" ¡¡ Si trieu aquesta opció, totes les dades del disc s'esborraran !!.\n"
+"començarà de nou i es faran les particions des de zero.\n"
+" Atenció! Si trieu aquesta opció, totes les dades del disc s'esborraran.\n"
"\n"
-" * \"%s\": si voleu particionar el disc dur manualment, podeu triar aquesta\n"
+" * %s: si voleu fer les particions del disc dur manualment, podeu triar "
+"aquesta\n"
"opció. Aneu amb compte: és una opció molt potent però també perillosa, ja\n"
-"que podeu perdre fàcilment totes les dades. Per tant, aquesta opció només "
+"que podeu perdre'n fàcilment totes les dades. Per tant, aquesta opció només "
"és\n"
"recomanable si heu fet abans alguna cosa similar i teniu una mica\n"
"d'experiència. Trobareu més instruccions sobre la utilitat DiskDrake a la\n"
-"secció ``Gestió de les particions'' de la ``Guia d'iniciació''."
+"secció Gestió de les particions de la Guia d'iniciació."
#: ../help.pm:377
#, c-format
msgid "Use existing partition"
-msgstr "Utilitza les particions existents"
+msgstr "Usa les particions existents"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Usa l'espai lliure a la partició Microsoft Windows®"
#: ../help.pm:370
#, c-format
@@ -899,63 +898,64 @@ msgid ""
"\"mformat a:\", or \"fdformat /dev/fd0\" followed by \"mkfs.vfat\n"
"/dev/fd0\"."
msgstr ""
-"Ja ho teniu. S'ha completat la instal·lació i el vostre sistema GNU/Linux\n"
-"està preparat per fer-se servir. Simplement premeu \"%s\" per reiniciar el\n"
+"Ja ho teniu. S'ha completat la instal·lació i el sistema GNU / Linux\n"
+"està preparat per funcionar. Simplement premeu %s per reiniciar el\n"
"sistema. No oblideu treure la font d'instal·lació (CD-ROM o disquet).\n"
-"La primera cosa que veureu, després que l'ordinador hagi finalitzat les\n"
+"La primera cosa que veureu, després que l'ordinador hagi acabat les\n"
"comprovacions de maquinari, és el menú del carregador d'arrencada, que us\n"
"deixa triar el sistema operatiu amb què voleu iniciar.\n"
"\n"
-"El botó \"%s\" mostra dos botons més per:\n"
+"El botó %s mostra dos botons més:\n"
"\n"
-" * \"%s\": per crear un disquet d'instal·lació que realitzarà\n"
+" * %s: per crear un disquet d'instal·lació que farà\n"
"automàticament una instal·lació completa sense l'ajuda d'un operador,\n"
"semblant a la instal·lació que acabeu de configurar.\n"
"\n"
" Tingueu en compte que hi ha dues opcions diferents després de fer clic al "
"botó:\n"
"\n"
-" * \"%s\". Aquesta és una instal·lació parcialment automatitzada; el pas\n"
-"de particionament és l'únic procediment interactiu.\n"
+" * %s: aquesta és una instal·lació parcialment automatitzada; el pas\n"
+"de fer les particions és l'únic procediment interactiu.\n"
"\n"
-" * \"%s\". Instal·lació completament automatitzada: el disc dur es\n"
+" * %s: instal·lació completament automatitzada: el disc dur es\n"
"reescriu completament i totes les dades es perden.\n"
"\n"
-" Aquesta característica és força útil quan es fa una instal·lació a un\n"
+" Aquesta característica és força útil quan es fa una instal·lació en un\n"
"cert nombre d'ordinadors similars. En trobareu més informació a la secció\n"
"d'instal·lació automàtica del nostre lloc web.\n"
"\n"
-" * \"%s\": desa una llista dels paquets seleccionats en aquesta\n"
-"instal·lació. Per utilitzar aquesta selecció en una altra instal·lació,\n"
+" * %s: desa una llista dels paquets seleccionats en aquesta\n"
+"instal·lació. Per usar aquesta selecció en una altra instal·lació,\n"
"inseriu el disquet i inicieu la instal·lació. A l'indicador, premeu la\n"
-"tecla F1, i escriviu >>linux defcfg=\"floppy\"<< i premeu la tecla [Enter].\n"
+"tecla F1, i escriviu >>linux defcfg=\"floppy\"<< i premeu la tecla de "
+"retorn.\n"
"\n"
-"(*) Cal un disquet formatejat amb FAT. Per crear-ne un a GNU/Linux, \n"
-"escriviu \"mformat a:\", o \"fdformat /dev/fd0\" seguit de\n"
+"(*) Cal un disquet formatat amb FAT. Per crear-ne un a GNU / Linux, \n"
+"escriviu \"mformat a:\" o \"fdformat /dev/fd0\" seguit de\n"
"\"mkfs.vfat /dev/fd0\"."
#: ../help.pm:412
#, c-format
msgid "Generate auto-install floppy"
-msgstr "Genera un disquet per a la instal·lació automàtica"
+msgstr "Genera un disquet per a instal·lació automàtica"
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Repeteix"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Automatitzat"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Desa la selecció de paquets"
#: ../help.pm:408
-#, fuzzy, c-format
+#, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -974,38 +974,35 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
msgstr ""
-"Per poder utilitzar les particions que s'acaben de definir cal formatar-les\n"
-"(la formatació consisteix a crear-hi un sistema de fitxers).\n"
-"\n"
-"En aquest punt, potser voldreu tornar a formatar algunes de les particions\n"
-"existents per eliminar les dades que contenen. Si és així, seleccioneu\n"
-"també aquestes particions.\n"
+"Si heu triat la reutilització d'algunes de les particions de GNU / Linux,\n"
+"potser voleu reformatar-ne algunes i esborrar les dades que contenen.\n"
+"Per a fer-ho, seleccioneu també aquestes particions.\n"
"\n"
"Tingueu en compte que no cal tornar a formatar totes les particions que ja\n"
"existien; heu de tornar a formatar les particions que continguin el sistema\n"
-"operatiu (com ara \"/\", \"/usr\" o \"/var\"), però no les que contenen\n"
-"dades que voleu conservar (habitualment, \"/home\").\n"
+"operatiu (com ara /, /usr o /var), però no les que contenen\n"
+"dades que voleu conservar (habitualment /home).\n"
"\n"
-"Aneu amb compte en seleccionar les particions; després de la formatació,\n"
+"Aneu amb compte a l'hora de seleccionar les particions; després de la "
+"formatació,\n"
"totes les dades s'hauran suprimit i no en podreu recuperar cap.\n"
"\n"
-"Feu clic a \"%s\" quan estigueu a punt per formatar les particions.\n"
+"Feu clic a %s quan estigueu a punt per formatar les particions.\n"
"\n"
-"Feu clic a \"%s\" si voleu seleccionar una altra partició per instal·lar\n"
-"el nou sistema Mandriva Linux.\n"
+"Feu clic a %s si voleu seleccionar una altra partició per instal·lar\n"
+"el nou sistema Mageia.\n"
"\n"
-"Feu clic a \"%s\" si voleu seleccionar particions on cercar-hi blocs "
-"defectuosos."
+"Feu clic a %s si voleu seleccionar particions on cercar-hi blocs defectuosos."
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1017,17 +1014,18 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Ara esteu instal·lant Mandriva Linux, és probable que alguns paquets\n"
+"En el moment d'instal·lar Mageia, és probable que alguns paquets\n"
"hagin estat actualitzats des de la data de llançament. Alguns errors poden\n"
-"haver estat resolts, i problemes de seguretat poden estar ja corregits.\n"
+"haver estat resolts, i alguns problemes de seguretat poden estar ja "
+"corregits.\n"
"Per beneficiar-vos d'aquestes actualitzacions, les podeu baixar d'Internet.\n"
-"Trieu \"%s\" si teniu una connexió a Internet operativa, o \"%s\" si\n"
+"Marqueu %s si teniu una connexió a Internet operativa, o bé %s si\n"
"preferiu instal·lar-les més tard.\n"
"\n"
-"Si trieu \"%s\" apareixerà una llista de llocs des d'on podeu baixar les\n"
-"actualitzacions. Escolliu la ubicació més propera. Aleshores, apareixerà\n"
-"un arbre de selecció de paquets: comproveu la selecció i premeu \"%s\" per\n"
-"baixar i instal·lar els paquets seleccionats, o \"%s\" per abandonar."
+"Si trieu %s apareixerà una llista de llocs des d'on podeu baixar les\n"
+"actualitzacions. Trieu la ubicació més propera. Aleshores, apareixerà\n"
+"un arbre de selecció de paquets: comproveu la selecció i premeu %s per\n"
+"baixar i instal·lar els paquets seleccionats, o bé %s per sortir-ne."
#: ../help.pm:450
#, c-format
@@ -1039,7 +1037,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1051,11 +1049,11 @@ msgstr ""
"Tanmateix, un nivell alt de seguretat sovint comporta una disminució de la\n"
"facilitat d'ús.\n"
"\n"
-"Si no sabeu quin escollir, deixeu l'opció per defecte.. Podreu canviar\n"
+"Si no sabeu quin triar, deixeu l'opció per defecte.. Podreu canviar\n"
"el nivell de seguretat més tard amb l'eina draksec del\n"
-"Centre de Control Mandriva Linux.\n"
+"Centre de Control Mageia.\n"
"\n"
-"Ompliu el camp \"%s\" amb l'adreça electrònica de la persona responsable\n"
+"Ompliu el camp %s amb l'adreça electrònica de la persona responsable\n"
"de la seguretat. Els missatges de seguretat s'enviaran a aquesta adreça."
#: ../help.pm:461
@@ -1067,21 +1065,24 @@ msgstr "Administrador de seguretat"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1097,21 +1098,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1128,107 +1131,93 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Ara és quan heu de decidir quina(es) partició(ns) voleu utilitzar per\n"
-"instal·lar el sistema Mandriva Linux. Si ja s'han definit les particions\n"
-"en una instal·lació anterior de GNU/Linux o mitjançant una altra eina de\n"
-"particionament, podeu utilitzar les particions existents. En cas contrari,\n"
-"s'han de definir particions al disc dur.\n"
+"Ara és quan heu de decidir quines particions voleu usar per\n"
+"instal·lar el sistema Mageia. Si ja s'han definit les particions\n"
+"en una instal·lació anterior de GNU / Linux o mitjançant una altra eina de\n"
+"partiment, podeu usar les particions existents. En cas contrari,\n"
+"cal definir particions al disc dur.\n"
"\n"
"Per crear particions, primer heu de seleccionar un disc dur. Podeu\n"
-"seleccionar el disc que s'ha de particionar fent clic a ``hda'' per a la\n"
-"primera unitat IDE, ``hdb'' per a la segona, ``sda'' per a la primera "
-"unitat\n"
+"seleccionar el disc que s'ha de particionar fent clic a hda per a la\n"
+"primera unitat IDE, hdb per a la segona, sda per a la primera unitat\n"
"SCSI, etc.\n"
"\n"
-"Per particionar el disc dur seleccionat, podeu utilitzar aquestes opcions:\n"
+"Per particionar el disc dur seleccionat, podeu usar aquestes opcions:\n"
"\n"
-" * \"%s\": aquesta opció suprimeix totes les particions que hi ha al\n"
+" * %s: aquesta opció suprimeix totes les particions que hi ha al\n"
"disc dur seleccionat.\n"
"\n"
-" * \"%s\": aquesta opció us permet crear automàticament les particions\n"
-"ext3 i d'intercanvi en l'espai lliure del disc dur.\n"
+" * %s: aquesta opció us permet crear automàticament les particions\n"
+"ext4 i d'intercanvi en l'espai lliure del disc dur.\n"
"\n"
-"\"%s\": dóna accés a funcions addicionals:\n"
+"*%s: dóna accés a funcions addicionals:\n"
"\n"
-" * \"%s\": desa la taula de particions en un disquet. És útil per a una\n"
+" * %s: desa la taula de particions en un disquet. És útil per a una\n"
"recuperació posterior de la taula de particions si fos necessari. És molt\n"
-"recomanable que efectueu aquesta operació.\n"
+"recomanable que feu aquesta operació.\n"
"\n"
-" * \"%s\": permet restaurar d'un disquet una taula de particions que hi\n"
+" * %s: permet restaurar d'un disquet una taula de particions que hi\n"
"hagueu desat prèviament.\n"
"\n"
-" * \"%s\": si la taula de particions està malmesa, podeu provar de\n"
-"recuperar-la utilitzant aquesta opció. Aneu amb compte i recordeu que no\n"
+" * %s: si la taula de particions està malmesa, podeu provar de\n"
+"recuperar-la usant aquesta opció. Aneu amb compte i recordeu que no\n"
"sempre funciona.\n"
"\n"
-" * \"%s\": descarta tots els canvis fets i torna a carregar la taula\n"
+" * %s: descarta tots els canvis fets i torna a carregar la taula\n"
"de particions original.\n"
"\n"
-" * \"%s\": si desseleccioneu aquesta opció fareu que els usuaris hagin\n"
+" * %s: si desseleccioneu aquesta opció fareu que els usuaris hagin\n"
"de muntar i desmuntar manualment les unitats de suports extraïbles, com ara\n"
"els disquets i els CD-ROM.\n"
"\n"
-" * \"%s\": utilitzeu aquesta opció si voleu utilitzar un auxiliar per\n"
-"particionar el vostre disc dur. Es recomana que l'utilitzeu si no teniu\n"
-"sòlids coneixements sobre particionament.\n"
+" * %s: useu aquesta opció si voleu un auxiliar per\n"
+"particionar el disc dur. Es recomana que l'useu si no teniu\n"
+"coneixements sòlids sobre particions.\n"
"\n"
-" * \"%s\": utilitzeu aquesta opció per cancel·lar els canvis.\n"
+" * %s: useu aquesta opció per cancel·lar els canvis.\n"
"\n"
-" * \"%s\": permet accions addicionals en les particions (tipus,\n"
+" * %s: permet accions addicionals en les particions (tipus,\n"
"opcions, format) i dóna més informació sobre el disc dur.\n"
"\n"
-" * \"%s\": quan hagueu acabat de particionar el disc dur, aquesta opció\n"
+" * %s: quan hàgiu acabat de partir el disc dur, aquesta opció\n"
"desarà els canvis al disc.\n"
"\n"
"En definir la mida d'una partició, podeu acabar d'afinar-la mitjançant\n"
-"les tecles de fletxa del teclat.\n"
+"les tecles de fletxes del teclat.\n"
" \n"
"Nota: podeu accedir a qualsevol opció mitjançant el teclat. Moveu-vos per\n"
-"les particions amb les tecles Tab i Fletxa amunt/Fletxa avall.\n"
-"\n"
-"Quan seleccioneu una partició, podeu utilitzar:\n"
+"les particions amb les tecles Tab i Fletxa amunt / Fletxa avall.\n"
"\n"
-" * Ctrl+c per crear una nova partició (quan se n'ha seleccionat una de "
-"buida)\n"
+"Quan seleccioneu una partició, podeu usar el següent:\n"
"\n"
-" * Ctrl+d per suprimir una partició\n"
+" * Ctrl+c per crear una partició nova (quan se n'ha seleccionat una de "
+"buida).\n"
"\n"
-" * Ctrl+m per definir el punt de muntatge\n"
+" * Ctrl+d per suprimir una partició.\n"
"\n"
-"Per a més informació sobre els diferents sistemes de fitxers disponibles,\n"
-"llegiu el capítol sobre ext2FS del ``Manual de Referència''.\n"
+" * Ctrl+m per definir el punt de muntatge.\n"
"\n"
-"Si esteu fent la instal·lació en un ordinador PPC, voldreu crear una\n"
-"petita partició ``bootstrap'' HFS d'un mínim d'1 MB per a ús del carregador\n"
-"d'arrencada yaboot. Si decidiu fer-la una mica més gran, per exemple de\n"
-"50 MB, us serà d'utilitat per emmagatzemar un nucli de recanvi i imatges\n"
-"del disc RAM per a situacions d'emergència durant l'arrencada."
+"Per a més informació sobre els diversos sistemes de fitxers disponibles,\n"
+"llegiu el capítol sobre ext2FS del Manual de Referència.\n"
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Desa la taula de particions"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Recupera la taula de particions"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Rescata la taula de particions"
-#
#: ../help.pm:526
#, c-format
msgid "Removable media auto-mounting"
@@ -1237,12 +1226,12 @@ msgstr "Muntatge automàtic dels dispositius extraïbles"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Auxiliar"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Desfés"
#: ../help.pm:526
#, c-format
@@ -1252,69 +1241,72 @@ msgstr "Commuta entre els modes normal i expert"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"S'ha detectat més d'una partició de Microsoft a la unitat de disc.\n"
-"Si us plau, trieu quina d'elles voleu redimensionar per instal·lar el nou\n"
-"sistema operatiu Mandriva Linux.\n"
+"Si us plau, trieu quina voleu canviar de mida per instal·lar-hi el nou\n"
+"sistema operatiu Mageia.\n"
"\n"
-"Cada partició està identificada d'aquesta manera: \"Nom Linux\",\n"
-"\"Nom Windows\" \"Capacitat\".\n"
+"Cada partició està identificada d'aquesta manera: nom de Linux,\n"
+"nom de Windows, capacitat.\n"
"\n"
-"\"Nom Linux\" es compon de: \"tipus d'unitat de disc dur\",\n"
-"\"número d'unitat de disc dur\", \"número de la partició\"\n"
-"(per exemple, \"hda1\").\n"
+"El Nom Linux es compon del tipus d'unitat de disc dur,\n"
+"el número d'unitat de disc dur i el número de la partició\n"
+"(per exemple: hda1).\n"
"\n"
-"\"Tipus d'unitat de disc dur\" és \"hd\" si la vostre unitat de disc dur és\n"
-"IDE i \"sd\" si és SCSI.\n"
+"El tipus d'unitat de disc dur és hd si la unitat de disc dur és\n"
+"IDE i sd si és SCSI.\n"
"\n"
-"\"Número de la unitat de disc dur\" és sempre una lletra després d'\"hd\" o\n"
-"\"sd\". Amb unitats de disc IDE:\n"
+"El número de la unitat de disc dur és sempre una lletra després d'hd o\n"
+"bé sd. Amb unitats de disc IDE:\n"
"\n"
-" * \"a\" significa \"unitat de disc mestra en el controlador IDE primari\",\n"
+" * «a» significa 'unitat de disc mestra al controlador IDE primari',\n"
"\n"
-" * \"b\" significa \"unitat de disc esclava en el controlador IDE primari"
-"\",\n"
+" * «b» significa 'unitat de disc esclava al controlador IDE primari',\n"
"\n"
-" * \"c\" significa \"unitat de disc mestra en el controlador IDE secundari"
-"\",\n"
+" * «c» significa 'unitat de disc mestra al controlador IDE secundari',\n"
"\n"
-" * \"d\" significa \"unitat de disc esclava en el controlador IDE secundari"
-"\".\n"
+" * «d» significa 'unitat de disc esclava al controlador IDE secundari'.\n"
"\n"
-"Amb les unitats de disc SCSI, una \"a\" significa \"ID SCSI més baixa\",\n"
-"una \"b\" significa \"segona ID SCSI més baixa\", etc.\n"
+"Amb les unitats de disc SCSI, una a significa 'ID SCSI més baixa',\n"
+"una b significa 'segona ID SCSI més baixa', etc.\n"
"\n"
-"\"Nom Windows\" és la lletra de la vostra unitat de disc sota Windows (el\n"
-"primer disc o partició s'anomena \"C:\")."
+"El nom de Windows és la lletra de la vostra unitat de disc a Windows (el\n"
+"primer disc o partició s'anomena C:)."
#: ../help.pm:567
#, c-format
@@ -1324,9 +1316,9 @@ msgid ""
"the\n"
"list shown, click on the \"%s\" button to get the complete country list."
msgstr ""
-"\"%s\": comproveu que la selecció del país és correcta. Si no sou a\n"
-"aquest país, feu clic al botó \"%s\" i seleccioneu-ne un altre.\n"
-"Si el vostre país no és a la primera llista, feu clic al botó \"%s\" per\n"
+"%s: comproveu que la selecció del país és correcta. Si no sou en\n"
+"aquest país, feu clic al botó %s i seleccioneu-ne un altre.\n"
+"Si el país no és a la primera llista, feu clic al botó %s per\n"
"obtenir una llista de països completa."
#: ../help.pm:572
@@ -1336,48 +1328,48 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
-"Aquest pas només s'activa si s'ha trobat una partició GNU/Linux antiga\n"
-"al vostre ordinador.\n"
+"Aquest pas només s'activa si s'ha trobat una partició GNU / Linux existent\n"
+"a l'ordinador.\n"
"\n"
-"DrakX necessita saber si voleu realitzar una instal·lació nova o\n"
-"una actualització d'un sistema Mandriva Linux existent:\n"
+"El DrakX necessita saber si voleu fer una instal·lació nova o bé\n"
+"una actualització d'un sistema Mageia existent:\n"
"\n"
-" * \"%s\": aquesta opció destrueix gairebé del tot el sistema antic. Si\n"
+" * %s: aquesta opció destrueix gairebé del tot el sistema existent. Si\n"
"voleu canviar les particions dels discs durs, o el sistema de fitxers,\n"
-"heu d'utilitzar aquesta opció. No obstant això, i depenent de l'esquema de\n"
-"particionament que tingueu, podeu evitar que part de les dades existents\n"
-"(per exemple els directoris \"home\") se sobreescriguin.\n"
+"heu d'usar aquesta opció. No obstant això, i depenent de l'esquema de\n"
+"particions que tingueu, podeu evitar que part de les dades existents\n"
+"(per exemple els directoris home) se sobreescriguin.\n"
"\n"
-" * \"%s\": aquest tipus d'instal·lació us permet actualitzar els paquets\n"
-"que ja estan instal·lats al sistema Mandriva Linux. L'esquema de\n"
-"particionament actual i les dades d'usuari no queden afectades. La\n"
+" * %s: aquest tipus d'instal·lació us permet actualitzar els paquets\n"
+"que ja estan instal·lats al sistema Mageia. L'esquema de\n"
+"particions actual i les dades d'usuari no queden afectades. La\n"
"majoria de les altres fases de configuració queden disponibles, de\n"
"manera similar a una instal·lació estàndard.\n"
"\n"
-"L'opció “Actualitza” ha de funcionar correctament en sistemes Mandriva\n"
-"Linux amb la versió \"8.1\" o posteriors. No es recomana realitzar una\n"
-"actualització en versions de Mandriva Linux anteriors a la \"8.1\"."
+"L'opció Actualitza hauria de funcionar correctament en sistemes Mandriva\n"
+"Linux amb la versió 8.1 o posteriors. No es recomana fer una\n"
+"actualització en versions de Mandriva anteriors a la 8.1."
#: ../help.pm:594
-#, fuzzy, c-format
+#, c-format
msgid ""
"Depending on the language you chose (), DrakX will automatically select a\n"
"particular type of keyboard configuration. Check that the selection suits\n"
@@ -1396,28 +1388,26 @@ msgid ""
"dialog will allow you to choose the key binding which will switch the\n"
"keyboard between the Latin and non-Latin layouts."
msgstr ""
-"DrakX seleccionarà automàticament la configuració de teclat correcta\n"
-"segons l'idioma que hagueu escollit a Secció. Comproveu que la selecció\n"
-"us vagi bé o escolliu una altra configuració de teclat.\n"
-"\n"
-"Tanmateix, pot ser que tingueu un teclat que no correspongués exactament al\n"
-"vostre idioma: per exemple, si sou un suís que parla anglès, potser teniu "
-"un\n"
-"teclat suís. O, si parleu anglès però viviu al Quebec, us podeu trobar en "
-"la\n"
-"mateixa situació i el vostre teclat no coincidirà amb el vostre idioma. En\n"
-"tots dos casos, aquesta fase de la instal·lació us permetrà triar un teclat\n"
+"El DrakX seleccionarà automàticament la configuració de teclat correcta\n"
+"segons la llengua que hàgiu triat. Comproveu que la selecció\n"
+"us vagi bé o trieu una altra configuració de teclat.\n"
+"\n"
+"Tanmateix, pot ser que tingueu un teclat que no correspongui exactament\n"
+"amb la llengua: per exemple, si sou un suís que parla anglès, potser teniu\n"
+"un teclat suís. O, si parleu anglès però viviu al Quebec, us podeu trobar\n"
+"en la mateixa situació i el teclat no coincidirà amb la llengua. En tots "
+"dos\n"
+"casos, aquesta fase de la instal·lació us permetrà triar un teclat\n"
"adequat d'una llista.\n"
"\n"
-"Feu clic al botó \"%s\" per veure la llista completa de teclats "
-"disponibles.\n"
+"Feu clic al botó %s per veure la llista completa de teclats disponibles.\n"
"\n"
"Si trieu una disposició de teclat basada en un alfabet no llatí, el diàleg\n"
-"següent us permetrà escollir la tecla que servirà per canviar entre les\n"
+"següent us permetrà triar la tecla que servirà per canviar entre les\n"
"configuracions llatina i no llatina."
#: ../help.pm:612
-#, fuzzy, c-format
+#, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1433,8 +1423,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1460,43 +1449,43 @@ msgid ""
"by the entire system. Running the command as a regular user will only\n"
"change the language settings for that particular user."
msgstr ""
-"L'idioma preferit que trieu afectarà a l'idioma de la documentació,\n"
-"l'instal·lador i a tot el sistema en general. Seleccioneu primer la\n"
-"regió on us trobeu i després l'idioma que parleu.\n"
+"El primer pas consisteix a triar la llengua preferida.\n"
+"\n"
+"La llengua que trieu afectarà la llengua de la documentació,\n"
+"l'instal·lador i tot el sistema en general. Seleccioneu primer la\n"
+"regió on us trobeu i després la llengua que parleu.\n"
"\n"
-"Si feu clic al botó \"%s\" podreu seleccionar altres idiomes que vulgueu\n"
-"instal·lar a la vostra estació de treball. S'instal·laran els fitxers\n"
-"d'idioma específics de la documentació i de les aplicacions. Per exemple,\n"
+"Si feu clic al botó %s podreu seleccionar altres llengües que vulgueu\n"
+"instal·lar a l'estació de treball. S'instal·laran els fitxers de llengua\n"
+"específics de la documentació i de les aplicacions. Per exemple,\n"
"si heu de tenir usuaris espanyols a l'ordinador, podeu triar l'anglès com a\n"
-"idioma per defecte a la vista d'arbre i marcar \"%s\" a la secció Avançat.\n"
+"llengua per defecte a la vista d'arbre i %s a la secció Avançat.\n"
"\n"
-"En quant al suport UTF-8 (unicode): Unicode és una nova codificació de\n"
-"caràcters que cobreix tots els idiomes existents. El suport complet a\n"
-"GNU/Linux encara està sota desenvolupament. Per aquesta raó, Mandriva Linux\n"
+"Quant al suport UTF-8 (unicode): Unicode és una codificació nova de\n"
+"caràcters que cobreix totes les llengües existents. El suport complet a\n"
+"GNU / Linux encara està en desenvolupament. Per aquesta raó, Mageia\n"
"l'usarà o no depenent de les opcions que esculli l'usuari:\n"
"\n"
-" * Si escolliu un idioma amb una codificació existent forta(idiomes\n"
-"llatins, rus, japonès, xinès, coreà, thai, grec, turc, la majoria dels\n"
-"idiomes iso-8859-2), la codificació existent s'usarà per defecte;\n"
+" * Si trieu una llengua amb una codificació existent forta (llengües\n"
+"llatines, rus, japonès, xinès, coreà, thai, grec, turc, la majoria de les\n"
+"llengües iso-8859-2), la codificació existent s'usarà per defecte.\n"
"\n"
-" * La resta d'idiomes usaran unicode per defecte;\n"
+" * La resta de llengües usaran unicode per defecte.\n"
"\n"
-" * Si s'instal·len dos o més idiomes i aquests idiomes no usen la mateixa\n"
-"codificació, llavors s'usarà unicode per tot el sistema;\n"
+" * Si s'instal·len dues o més llengües i no usen la mateixa\n"
+"codificació, llavors s'usarà unicode per a tot el sistema.\n"
"\n"
-" * Finalment, es pot forçar l'ús de unicode si s'escull la opció\"%s\"\n"
-"independentment dels idiomes escollits.\n"
+" * Finalment, es pot forçar l'ús d'unicode si es tria la opció %s\n"
+"independentment de les llengües triades.\n"
"\n"
-"Noteu que no esteu limitats a escollir només un idioma addicional. Podeu\n"
-"triar diversos idiomes addicionals, i fins i tot instal·lar-los tots\n"
-"activant la casella \"%s\". Si habiliteu un idioma esteu instal·lant les\n"
-"traduccions, els tipus de lletra, els verificadors ortogràfics, etc. "
-"d'aquest idioma.\n"
+"Noteu que no esteu limitats a escollir només una llengua addicional. Podeu\n"
+"triar-ne diverses, i fins i tot instal·lar-les totes activant la casella\n"
+"%s. Si habiliteu una llengua n'esteu instal·lant les\n"
+"traduccions, els tipus de lletra, els verificadors ortogràfics, etc.\n"
"\n"
-"Per passar d'un dels idiomes a un altre, podeu executar com a \"root\"\n"
-"l'ordre \"/usr/sbin/localedrake\" per canviar l'idioma de tot el sistema. "
-"Si\n"
-"l'executeu com a usuari normal, només es canviarà l'idioma d'aquest\n"
+"Per passar d'una llengua a una altra, podeu executar com a arrel\n"
+"l'ordre /usr/sbin/localedrake per canviar la llengua de tot el sistema.\n"
+"Si l'executeu com a usuari normal, només es canviarà la d'aquest\n"
"usuari concret."
#: ../help.pm:650
@@ -1507,10 +1496,10 @@ msgstr "Espanyol"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Usa unicode per defecte"
#: ../help.pm:646
-#, fuzzy, c-format
+#, c-format
msgid ""
"Usually, DrakX has no problems detecting the number of buttons on your\n"
"mouse. If it does, it assumes you have a two-button mouse and will\n"
@@ -1545,32 +1534,34 @@ msgid ""
"Test the buttons and check that the mouse pointer moves on-screen as you\n"
"move your mouse about."
msgstr ""
-"DrakX generalment detecta el nombre de botons que té el vostre ratolí.\n"
+"El DrakX generalment detecta el nombre de botons que té el ratolí.\n"
"Si no pot, assumeix que teniu un ratolí de dos botons i el configurarà per\n"
-"emular el tercer botó. Es pot ``prémer' ' el tercer botó d'un ratolí de dos\n"
-"botons fent clic simultàniament als botons dret i esquerre. DrakX\n"
-"detectarà automàticament si el ratolí utilitza la interfície PS/2, sèrie o "
-"USB.\n"
+"emular el tercer botó. Es pot prémer el tercer botó d'un ratolí de dos\n"
+"botons fent clic simultàniament als botons dret i esquerre. El DrakX\n"
+"detectarà automàticament si el ratolí usa la interfície PS/2, sèrie o USB.\n"
"\n"
"En cas que tingueu un ratolí de 3 botons sense rodeta, podeu escollir\n"
-"\"%s\". DrakX configurarà el ratolí per tal de simular la rodeta,\n"
+"%s. El DrakX configurarà el ratolí per tal de simular la rodeta,\n"
"per fer-ho premeu el botó central i moveu el ratolí a dalt i a baix.\n"
"\n"
"Si per alguna raó voleu especificar un altre tipus de ratolí,\n"
"seleccioneu-lo a la llista.\n"
"\n"
-"Si escolliu un ratolí diferent del ratolí per defecte, es mostrarà una\n"
-"pantalla de prova. Utilitzeu els botons i la roda per verificar que la\n"
+"Podeu seleccionar l'entrada %s per a triar un ratolí de tipus\n"
+"genèric, que funcionarà amb gairebé qualsevol ratolí.\n"
+"\n"
+"Si trieu un ratolí diferent del ratolí per defecte, es mostrarà una\n"
+"pantalla de prova. Useu els botons i la roda per verificar que la\n"
"configuració és correcta i que el ratolí funciona bé. Si el ratolí no\n"
-"funciona bé, premeu la barra d'espai o la tecla [Intro] per cancel·lar la\n"
+"funciona bé, premeu la barra d'espai o la tecla de retorn per cancel·lar la\n"
"prova i tornar a la llista.\n"
"\n"
-"De vegaDES, la roda del ratolí no es detecta automàticament. En aquest cas,\n"
+"De vegades, la roda del ratolí no es detecta automàticament. En aquest cas,\n"
"haureu de seleccionar-lo a la llista. Assegureu-vos de triar el que\n"
-"correspon al port a què esta connectat el ratolí. Després de seleccionar un\n"
-"ratolí i prémer el botó \"%s\", a la pantalla apareixerà un ratolí. Mogueu "
-"la\n"
-"roda del ratolí per assegurar-vos que s'ha activat correctament, comprovant\n"
+"correspon al port on està connectat el ratolí. Després de seleccionar un\n"
+"ratolí i prémer el botó %s, a la pantalla apareixerà un ratolí. Moveu la\n"
+"roda del ratolí per assegurar-vos que s'ha activat correctament, i "
+"comproveu\n"
"que es mou també a la pantalla; després comproveu els botons i que el "
"cursor\n"
"de la pantalla es mou quan moveu el ratolí."
@@ -1591,11 +1582,11 @@ msgid ""
"Please select the correct port. For example, the \"COM1\" port under\n"
"Windows is named \"ttyS0\" under GNU/Linux."
msgstr ""
-"Si us plau, seleccioneu el port correcte. Per exemple, el port \"COM1\" a\n"
-"Windows s'anomena \"ttyS0\" a GNU/Linux."
+"Si us plau, seleccioneu el port correcte. Per exemple, el port COM1 a\n"
+"Windows s'anomena ttyS0 a GNU / Linux."
#: ../help.pm:684
-#, fuzzy, c-format
+#, c-format
msgid ""
"A boot loader is a little program which is started by the computer at boot\n"
"time. It's responsible for starting up the whole system. Normally, the boot\n"
@@ -1608,33 +1599,35 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
"know what you're doing."
msgstr ""
-"LILO i GRUB són carregadors d'arrencada de GNU/Linux. Normalment,\n"
-"aquesta fase es realitza de manera totalment automàtica. DrakX analitzarà\n"
-"el sector d'arrencada del disc i actuarà conforme al que hi trobi:\n"
+"Un carregador d'arrencada és un petit programa que l'ordinador executa\n"
+"durant l'arrencada. És l'encarregat d'iniciar tot el sistema. Normalment, \n"
+"la instal·lació del carregador d'arrencada es fa de manera \n"
+"totalment automàtica. El DrakX analitzarà el sector d'arrencada del disc \n"
+"i actuarà conforme al que hi trobi:\n"
"\n"
-" * si troba un sector d'arrencada del Windows, el reemplaçarà amb un sector\n"
-"d'arrencada de GRUB/LILO. D'aquesta manera podreu carregar GNU/Linux\n"
-"o un altre SO.\n"
+" * si troba un sector d'arrencada de Windows, el reemplaçarà amb un sector\n"
+"d'arrencada de GRUB/LILO. D'aquesta manera podreu carregar GNU / Linux\n"
+"o bé un altre SO.\n"
"\n"
-" * si troba un sector d'arrencada grub o LILO, el reemplaçarà amb un nou.\n"
+" * si troba un sector d'arrencada GRUB o LILO, el reemplaçarà amb un de "
+"nou.\n"
"\n"
-"Si no pot prendre una decisió, DrakX us preguntarà on ha de col·locar el\n"
-"carregador d'arrencada. Normalment, \"%s\" és el lloc més segur. Si "
-"escolliu\n"
-"\"%s\" no s'instal·larà cap carregador d'arrencada. Utilitzeu-lo només si\n"
-"sabeu que esteu fent."
+"Si no pot prendre una decisió, el DrakX us preguntarà on ha de col·locar el\n"
+"carregador d'arrencada. Normalment, %s és el lloc més segur. Si escolliu\n"
+"%s no s'instal·larà cap carregador d'arrencada. Trieu-ho només si\n"
+"sabeu què feu."
#: ../help.pm:745
-#, fuzzy, c-format
+#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1655,38 +1648,37 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
-"Ara cal seleccionar el sistema d'impressió del vostre ordinador. Altres\n"
-"sistemes operatius us poden oferir un, però el Mandriva Linux n'ofereix\n"
+"Ara cal seleccionar el sistema d'impressió de l'ordinador. Altres\n"
+"sistemes operatius us en poden oferir un, però el Mageia n'ofereix\n"
"dos. Cada sistema d'impressió és el més convenient per a un tipus de\n"
"configuració determinat.\n"
"\n"
-" * \"%s\", acrònim de \"print, do not queue\" (imprimeix, no facis cua), és\n"
+" * %s, acrònim de «print, do not queue» (imprimeix, no facis cua), és\n"
"la millor opció si teniu una connexió directa amb la impressora i voleu\n"
"evitar els embussos a l'hora d'imprimir, i no teniu impressores de xarxa.\n"
-"(\"%s\" només gestionarà xarxes molt senzilles i és una mica lenta quan\n"
-"s'usa en xarxa.) Escolliu \"pdq\" si és la vostra primera incursió\n"
-"en GNU/Linux.\n"
+"(%s només gestionarà xarxes molt senzilles i és una mica lenta quan\n"
+"s'usa en xarxa.) Escolliu pdq si és la vostra primera incursió\n"
+"a GNU / Linux.\n"
"\n"
-" * \"%s\" `` Common Unix Printing System'', Sistema d'impressió comú de\n"
-"Unix, és una elecció excel·lent tant si voleu imprimir a la vostra\n"
+" * %s, «Common Unix Printing System» (sistema d'impressió comú\n"
+"d'Unix), és una elecció excel·lent tant si voleu imprimir a la\n"
"impressora local com a l'altra punta del món. És senzilla de configurar i\n"
-"pot actuar com a servidor o client per a l'antic sistema d'impressió \"lpd"
-"\"\n"
+"pot actuar com a servidor o client per a l'antic sistema d'impressió lpd\n"
"i, per tant, és compatible amb sistemes operatius antics que encara\n"
"necessitin serveis d'impressió. És força potent, però la configuració "
"bàsica\n"
-"és gairebé tan senzilla com la de \"pdq\". Si necessiteu emular un servidor\n"
-"\"lpd\", heu d'habilitar el dimoni \"cups-lpd\". \"%s\" inclou frontals\n"
-"gràfics per a la impressió o per escollir les opcions d'impressió\n"
-"i per gestionar la impressora.\n"
+"és gairebé tan senzilla com la de pdq. Si necessiteu emular un servidor\n"
+"lpd, heu d'habilitar el dimoni cups-lpd. %s inclou interfícies\n"
+"gràfiques per a la impressió o per a triar les opcions d'impressió\n"
+"i per a gestionar la impressora.\n"
"\n"
"Si ara feu una tria, i després veieu que el sistema d'impressió no us\n"
"agrada, podeu canviar-lo executant el PrinterDrake des del Centre de "
-"control\n"
-"de Mandriva Linux i fent clic al botó Expert."
+"Control\n"
+"de Mageia i fent clic al botó %s."
#: ../help.pm:768
#, c-format
@@ -1696,7 +1688,7 @@ msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
@@ -1711,7 +1703,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1723,41 +1715,40 @@ msgid ""
"which parameters need to be passed to the hardware, you'll need to manually\n"
"configure the driver."
msgstr ""
-"Primer, DrakX detectarà qualsevol dispositiu IDE en l'ordinador. També\n"
-"cercarà una o més targetes SCSI PCI. Si troba una targeta SCSI, DrakX\n"
+"Primer, el DrakX detectarà qualsevol dispositiu IDE a l'ordinador. També\n"
+"cercarà una o més targetes SCSI PCI. Si troba una targeta SCSI, el DrakX\n"
"instal·larà automàticament el controlador adequat.\n"
"\n"
-"Com que la detecció de maquinari no és infal·lible, pot ser que DrakX no "
+"Com que la detecció de maquinari no és infal·lible, pot ser que el DrakX no "
"trobi\n"
-"els discos durs; si és així, caldrà que indiqueu el vostre maquinari "
-"manualment.\n"
+"els discos durs; si és així, caldrà que indiqueu el maquinari manualment.\n"
"\n"
-"Si heu de seleccionar l'adaptador SCSI PCI manualment, DrakX us preguntarà "
-"si\n"
-"voleu configurar-ne les opcions. Convé que deixeu que DrakX comprovi\n"
+"Si heu de seleccionar l'adaptador SCSI PCI manualment, el DrakX us "
+"preguntarà si\n"
+"voleu configurar-ne les opcions. Convé que deixeu que el DrakX comprovi\n"
"el maquinari per saber les opcions específiques de la targeta que calen per "
"inicialitzar\n"
-"l'adaptador. La majoria de vegaDES, DrakX realitzarà aquest pas sense "
+"l'adaptador. La majoria de vegades, el DrakX farà aquest pas sense "
"problemes.\n"
"\n"
-"Si DrakX no pot comprovar les opcions per determinar automàticament els "
+"Si el DrakX no pot comprovar les opcions per determinar automàticament els "
"paràmetres\n"
"que s'han de passar al maquinari, us caldrà configurar el controlador "
"manualment."
#: ../help.pm:789
-#, fuzzy, c-format
+#, c-format
msgid ""
"\"%s\": if a sound card is detected on your system, it'll be displayed\n"
"here. If you notice the sound card is not the one actually present on your\n"
"system, you can click on the button and choose a different driver."
msgstr ""
-"\"%s\": si es detecta una targeta de so al vostre sistema, es mostra aquí.\n"
+"%s: si es detecta una targeta de so al sistema, es mostra aquí.\n"
"Si veieu que la targeta de so que es mostra no és la que realment teniu al\n"
-"sistema, podeu fer clic al botó i seleccionar un altre programa de control."
+"sistema, podeu fer clic al botó i seleccionar un altre controlador."
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1797,8 +1788,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1815,77 +1805,79 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
"idea to review this setup."
msgstr ""
-"Com a revisió, DrakX presentarà un resum de la informació que\n"
+"Com a revisió, el DrakX presentarà un resum de la informació que\n"
"té sobre el vostre sistema. Segons el maquinari instal·lat, podeu\n"
"tenir algunes o totes les entrades següents. Cada entrada consta\n"
"de l'element de configuració que cal configurar, seguit d'un breu\n"
"resum de la configuració actual.\n"
-"Feu clic al botó \"%s\" corresponent per canviar-ho.\n"
+"Feu clic al botó %s corresponent per canviar-ho.\n"
"\n"
-" * \"%s\": comproveu la configuració actual del mapa de teclat i\n"
+" * %s: comproveu la configuració actual del mapa de teclat i\n"
"canvieu-la si és necessari.\n"
"\n"
-" * \"%s\": comproveu la selecció actual de país. Si no sou a aquest\n"
-"país, feu clic al botó \"%s\" i escolliu-ne un altre. Si el vostre\n"
-"país no és a la primera llista que es mostra, feu clic al botó \"%s\"\n"
+" * %s: comproveu la selecció actual de país. Si no sou a aquest\n"
+"país, feu clic al botó %s i escolliu-ne un altre. Si el vostre\n"
+"país no és a la primera llista que es mostra, feu clic al botó %s\n"
"per obtenir una llista de països completa.\n"
"\n"
-" * \"%s\": per defecte, DrakX dedueix la vostra zona horària en\n"
-"funció del país que hagueu escollit. Aquí podeu fer clic al botó \"%s\"\n"
-"si no fos correcta.\n"
+" * %s: per defecte, el DrakX dedueix la zona horària en\n"
+"funció del país que hàgiu triat. Aquí podeu fer clic al botó %s\n"
+"si no és correcta.\n"
"\n"
-" * \"%s\": comproveu la configuració actual del ratolí i feu clic al\n"
+" * %s: comproveu la configuració actual del ratolí i feu clic al\n"
"botó per canviar-la si fos necessari.\n"
"\n"
-" * \"%s\": feu clic al botó \"%s\" per obrir l'auxiliar de configuració\n"
-"de la impressora. Consulteu el capítol corresponent de la ``Guia d'\n"
-"iniciació'' per tenir més informació sobre la configuració d'una nova\n"
-"impressora. Aquesta interfície és similar a la utilitzada durant la\n"
-"instal·lació.\n"
-"\n"
-" * \"%s\": si es detecta una targeta de so al vostre sistema, es\n"
+" * %s: si es detecta una targeta de so al sistema, es\n"
"mostra aquí. Si veieu que que no és la que realment teniu al sistema,\n"
"podeu fer clic al botó per triar un altre controlador.\n"
"\n"
-" * \"%s\": per defecte, DrakX configura la vostra interfície\n"
-"gràfica a una resolució de \"800x600\" or \"1024x768\". Si no us\n"
-"va bé, feu clic a \"%s\" per reconfigurar la interfície gràfica.\n"
-"\n"
-" * \"%s\": si es detecta una targeta de TV al sistema, es mostra\n"
-"aquí. Si en teniu una però no és detectada, feu clic a \"%s\" per\n"
+" * %s: si es detecta una targeta de TV al sistema, es mostra\n"
+"aquí. Si en teniu una però no és detectada, feu clic a %s per\n"
"intentar configurar-la manualment.\n"
"\n"
-" * \"%s\": si es detecta una targeta XDSI al sistema, es mostra\n"
-"aquí. Podeu fer clic a \"%s\" per canviar els paràmetres associats\n"
-"amb la targeta.\n"
+" * %s: feu clic al botó %s per a canviar els paràmetres associats\n"
+"amb la targeta si penseu que la configuració no és correcta.\n"
+"\n"
+" * %s: per defecte, el DrakX configura la vostra interfície\n"
+"gràfica a una resolució de 800x600 o bé 1024x768. Si no us\n"
+"va bé, feu clic a %s per reconfigurar la interfície gràfica.\n"
+"\n"
+" * %s: si voleu configurar ara l'accés a Internet o a la xarxa local.\n"
+"Adreceu-vos a la documentació impresa o feu servir el Centre de Control\n"
+"de Mageia un cop acabada la instal·lació per a gaudir de l'ajuda en\n"
+"línia completa.\n"
"\n"
-" * \"%s\": si voleu configurar ara l'accés a Internet o a la xarxa local.\n"
+" * %s: permet la configuració de les adreces dels servidors intermediaris\n"
+"HTTP i FTP si la màquina que esteu configurant és darrere d'un servidor\n"
+"intermediari.\n"
"\n"
-" * \"%s\": aquesta entrada un permet redefinir el nivell de seguretat\n"
-"definit en un pas anterior ().\n"
+" * %s: aquesta opció us permet redefinir el nivell de seguretat definit\n"
+"en un pas anterior ().\n"
"\n"
-" * \"%s\": si teniu previst connectar-vos a Internet, és bona idea\n"
-"protegir-vos d'intrusions instal·lant un tallafocs. Consulteu-ne\n"
-"els detalls a la secció corresponent de la ``Guia d'iniciació''.\n"
+" * %s: si teniu previst connectar-vos a Internet, és bona idea\n"
+"protegir-vos d'intrusions instal·lant un tallafoc. Consulteu-ne\n"
+"els detalls a la secció corresponent de la Guia d'iniciació.\n"
"\n"
-" * \"%s\": si voleu canviar la configuració del carregador d'arrencada,\n"
-"feu clic a aquest botó. Es recomana que això només ho facin els usuaris\n"
-"avançats.\n"
+" * %s: si voleu canviar la configuració del carregador d'arrencada,\n"
+"feu clic en aquest botó. Es recomana que això només ho facin els usuaris\n"
+"avançats. Adreceu-vos a la documentació impresa o bé l'ajuda en línia\n"
+"sobre la configuració del carregador d'arrencada del Centre de Control\n"
+"de Mageia.\n"
"\n"
-" * \"%s\": aquí podreu acabar d'ajustar els serveis que s'executaran\n"
-"en el vostre ordinador. Si teniu previst utilitzar aquesta màquina com\n"
+" * %s: aquí podreu acabar d'ajustar els serveis que s'executaran\n"
+"a l'ordinador. Si teniu previst usar aquesta màquina com\n"
"a servidor, és aconsellable que reviseu aquesta configuració."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "Targeta XDSI"
+msgstr "Targeta de TV"
#: ../help.pm:809
#, c-format
@@ -1900,31 +1892,33 @@ msgstr "Interfície gràfica"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Escolliu el disc dur que voleu buidar per instal·lar la nova partició\n"
-"Mandriva Linux. Aneu amb compte, totes les dades actuals es perdran i no\n"
+"Trieu el disc dur que voleu buidar per instal·lar-hi la nova partició\n"
+"Mageia. Aneu amb compte, totes les dades actuals es perdran i no\n"
"es podran recuperar!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
-"Feu clic a \"%s\" si voleu suprimir totes les dades i particions\n"
+"Feu clic a %s si voleu suprimir totes les dades i particions\n"
"que hi ha en aquest disc dur. Aneu amb compte perquè, un cop\n"
-"hagueu fet clic a \"%s\", no podreu recuperar cap dada ni partició\n"
-"del disc, incloent les dades del Windows.\n"
+"hàgiu fet clic a %s, no podreu recuperar cap dada ni partició\n"
+"del disc, incloses les dades de Windows.\n"
"\n"
-"Feu clic a \"%s\" per aturar aquesta operació sense perdre cap dada\n"
+"Feu clic a %s per aturar aquesta operació sense perdre cap dada\n"
"ni partició d'aquest disc."
#: ../help.pm:872
@@ -1936,121 +1930,3 @@ msgstr "Següent ->"
#, c-format
msgid "<- Previous"
msgstr "<- Anterior"
-
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "\"%s\": feu clic al botó \"%s\" per obrir l'auxiliar de configuració de "
-#~ "la\n"
-#~ "impressora. Consulteu el capítol corresponent de la ``Guia d'iniciació''\n"
-#~ "per tenir més informació en quant a la configuració de noves "
-#~ "impressores.\n"
-#~ "La interfície que apareix és similar a la que s'utilitza durant la "
-#~ "instal·lació."
-
-#, fuzzy
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Aquesta és la decisió més important quant a la seguretat del vostre "
-#~ "sistema\n"
-#~ "GNU/Linux: heu d'introduir la contrasenya de l'usuari \"root\". El \"root"
-#~ "\"\n"
-#~ "és l'administrador del sistema i és l'únic autoritzat a fer "
-#~ "actualitzacions,\n"
-#~ "afegir usuaris, canviar la configuració del tot el sistema, etc. En "
-#~ "poques\n"
-#~ "paraules, el \"root\" ho pot fer tot! És per això que heu d'escollir una\n"
-#~ "contrasenya que sigui difícil d'endevinar; DrakX us avisarà si és massa\n"
-#~ "fàcil. Com veieu, podeu optar per no introduir cap contrasenya, però us\n"
-#~ "aconsellem vivament que no ho feu. GNU/Linux és tan vulnerable als "
-#~ "errors\n"
-#~ "de l'operador com qualsevol altre sistema operatiu. Com que l'usuari\n"
-#~ "\"root\" pot superar totes les limitacions i esborrar accidentalment "
-#~ "totes\n"
-#~ "les dades de qualsevol partició com a conseqüència d'accedir-hi sense\n"
-#~ "precaucions, és molt important que sigui difícil esdevenir \"root\".\n"
-#~ "\n"
-#~ "La contrasenya ha de ser una mescla de caràcters alfanumèrics i, com a\n"
-#~ "mínim, de 8 caràcters de longitud. No apunteu enlloc la contrasenya de\n"
-#~ "\"root\" ja que és molt fàcil comprometre el sistema si ho feu.\n"
-#~ "\n"
-#~ "Tot i això, no feu la contrasenya massa llarga o complicada perquè heu "
-#~ "de\n"
-#~ "poder recordar-la!\n"
-#~ "\n"
-#~ "La contrasenya no es mostrarà per pantalla quan la teclegeu. Per tant,\n"
-#~ "haureu d'escriure-la dues vegades per reduir la probabilitat d'errors en\n"
-#~ "l'escriptura. Si, malauradament, feu el mateix error dues vegaDES, "
-#~ "haureu\n"
-#~ "d'usar aquesta contrasenya ``incorrecta'' el primer cop que us "
-#~ "connecteu.\n"
-#~ "\n"
-#~ "Si voleu que aquest ordinador sigui controlat per un servidor\n"
-#~ "d'autenticació, feu clic al botó \"%s\".\n"
-#~ "\n"
-#~ "Si la vostra xarxa usa els serveis d'autenticació LDAP, NIS o Windows\n"
-#~ "Domain, seleccioneu l'adient per a \"%s\" . Si no sabeu quin utilitzar,\n"
-#~ "pregunteu-ho al vostre administrador de xarxa.\n"
-#~ "\n"
-#~ "Si teniu problemes per recordar les contrasenyes, si l'ordinador mai no "
-#~ "es\n"
-#~ "connectarà a Internet o si confieu absolutament en tothom que utilitza\n"
-#~ "l'ordinador, podeu triar tenir \"%s\"."
-
-#~ msgid "authentication"
-#~ msgstr "autenticació"
diff --git a/perl-install/install/help/po/cs.po b/perl-install/install/help/po/cs.po
index f180471f9..60d039484 100644
--- a/perl-install/install/help/po/cs.po
+++ b/perl-install/install/help/po/cs.po
@@ -12,23 +12,24 @@ msgstr ""
"PO-Revision-Date: 2005-09-19 00:26+0200\n"
"Last-Translator: Michal Bukovjan <bukm@centrum.cz>\n"
"Language-Team: Czech <cs@li.org>\n"
+"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: KBabel 1.10.2\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Předtím, než budete pokračovat, přečtěte si pozorně licenční podmínky. Ty\n"
-"se vztahují k celé distribuci Mandriva Linux a pokud s nimi souhlasíte,\n"
+"se vztahují k celé distribuci Mageia a pokud s nimi souhlasíte,\n"
"klepněte na tlačítko \"%s\". Pokud ne, klepněte na tlačítko \"%s \" a "
"počítač bude restartován."
@@ -129,7 +130,8 @@ msgstr "Chcete použít tuto vlastnost?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -139,24 +141,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Zde je vypsán seznam již existujících detekovaných oddílů na pevném disku.\n"
@@ -191,15 +197,15 @@ msgstr ""
"nejmenší SCSI ID\" atd."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Distribuce Mandriva Linux je složena z několika CD. Instalační program ví,\n"
+"Distribuce Mageia je složena z několika CD. Instalační program ví,\n"
"na kterém disku je umístěn jaký balíček a v případě potřeby vysune CD a "
"vyžádá\n"
"si výměnu CD za požadované. Pokud nemáte požadované CD po ruce, klikněte\n"
@@ -209,12 +215,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -266,7 +271,7 @@ msgid ""
msgstr ""
"V této chvíli je možné vybrat, které programy chcete nainstalovat na váš "
"systém.\n"
-"Mandriva Linux obsahuje tisíce balíčků s programy a pro snadnější orientaci\n"
+"Mageia obsahuje tisíce balíčků s programy a pro snadnější orientaci\n"
"byly rozděleny do skupin, které sdružují podobné aplikace.\n"
"\n"
"Balíčky jsou rozděleny do skupin, které odpovídají tomu, jak je nejčastěji\n"
@@ -338,7 +343,7 @@ msgid "Truly minimal install"
msgstr "Opravdu minimální instalace"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -351,10 +356,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -386,7 +391,7 @@ msgstr ""
"!! Pokud se nachází mezi vybranými balíčky serverové programy, ať už "
"vybrané\n"
"záměrně nebo jako součást skupiny, zobrazí se dotaz na to,\n"
-"zda opravdu chcete tyto servery nainstalovat. V distribuci Mandriva Linux\n"
+"zda opravdu chcete tyto servery nainstalovat. V distribuci Mageia\n"
"jsou tyto servery spuštěny při startu systému. I když v době vydání "
"distribuce\n"
"nejsou známy žádné bezpečnostní problémy, mohou se vyskytnout později.\n"
@@ -514,11 +519,11 @@ msgstr ""
"nejvíce vyhovující vašim potřebám."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -574,7 +579,7 @@ msgid ""
msgstr ""
"X (X Window System) je srdcem grafického rozhraní pro GNU/Linux, které\n"
"využívají dodávané grafické prostředí (KDE, GNOME, AfterStep, WindowMaker) "
-"se systémem Mandriva Linux.\n"
+"se systémem Mageia.\n"
"\n"
"Nyní bude zobrazen seznam různých parametrů, které je možné změnit pro\n"
"dosažení optimálního grafického zobrazení\n"
@@ -690,41 +695,45 @@ msgstr ""
"kartu."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -733,15 +742,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -755,10 +764,10 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"V tomto bodě si musíte rozhodnout, na které diskové oddíly budete\n"
-"instalovat nový operační systém Mandriva Linux. Pokud je disk prázdný\n"
+"instalovat nový operační systém Mageia. Pokud je disk prázdný\n"
"nebo existující operační systém používá celý disk, je nutné ho rozdělit.\n"
"Rozdělení disku spočívá ve vytvoření volného prostoru pro instalaci\n"
-"systému Mandriva Linux.\n"
+"systému Mageia.\n"
"\n"
"Protože rozdělení disku je nenávratná operace, je to velmi nebezpečná\n"
"akce pro ty uživatele, kteří nemají žádné zkušenosti.\n"
@@ -787,7 +796,7 @@ msgstr ""
"oddíl ve\n"
"Windows defragmentovali. Je doporučeno zazálohovat vaše data. Tento postup\n"
"je doporučený, pokud chcete na disku provozovat současně systém\n"
-"Mandriva Linux i Microsoft Windows.\n"
+"Mageia i Microsoft Windows.\n"
"\n"
" Před výběrem této volby si prosím uvědomte, že velikost oddílu s "
"Microsoft\n"
@@ -795,7 +804,7 @@ msgstr ""
"uložení dat nebo instalaci programů do Microsoft Windows.\n"
"\n"
" * \"%s\": pokud chcete smazat veškerá data a všechny oddíly na disku\n"
-"a použít je pro instalaci systému Mandriva Linux, vyberte toto řešení.\n"
+"a použít je pro instalaci systému Mageia, vyberte toto řešení.\n"
"Zde postupujte opatrně, po výběru již není možné vzít tuto volbu zpět.\n"
"\n"
" !! Pokud zvolíte tuto možnost, všechna data na disku budou ztracena.!!\n"
@@ -923,7 +932,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -942,7 +951,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -966,16 +975,16 @@ msgstr ""
"\n"
"Pokud je vše připraveno pro formátování, klepněte na \"%s\".\n"
"\n"
-"Pokud chcete vybrat jiné oddíly pro instalaci systému Mandriva Linux,\n"
+"Pokud chcete vybrat jiné oddíly pro instalaci systému Mageia,\n"
"klepněte na \"%s\" \n"
"\n"
"Klepnutím na \"%s\" můžete vybrat, které oddíly budou otestovány\n"
"na vadné bloky."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -987,7 +996,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Pokaždé, když instalujete distribuci Mandriva Linux, je možné, že některé\n"
+"Pokaždé, když instalujete distribuci Mageia, je možné, že některé\n"
"balíčky byly od vydání distribuce aktualizovány. Mohly to být opravy chyb\n"
"či řešení možných bezpečnostních problémů. Pokud chcete využít právě\n"
"této nabídky, je možné tyto balíčky nyní stáhnout z Internetu. Zvolte \"%s"
@@ -1003,7 +1012,7 @@ msgstr ""
"a instalace vybraných balíčků. Akci můžete přerušit klepnutím na \"%s\"."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1012,7 +1021,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1037,24 +1046,27 @@ msgid "Security Administrator"
msgstr "Správce zabezpečení"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1070,21 +1082,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1101,18 +1115,12 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"V této chvíli je potřeba určit, který(é) oddíl(y) budou použity pro "
"instalaci\n"
-"systému Mandriva Linux. Pokud byly oddíly již jednou definovány, buď\n"
+"systému Mageia. Pokud byly oddíly již jednou definovány, buď\n"
"z předchozí instalace GNU/Linux nebo jiným programem na rozdělení disku,\n"
"je možné použít právě tyto oddíly. Jinak musí být oddíly nově definovány.\n"
"\n"
@@ -1178,12 +1186,6 @@ msgstr ""
"\n"
"Více informací o jednotlivých druzích souborových systémů naleznete\n"
"v kapitole o ext2fs v \"Referenční příručce\".\n"
-"\n"
-"Pokud instalujete na počítač PPC, je potřeba vytvořit malý oddíl HFS,\n"
-"tzv. \"bootstrap\" o minimální velikosti 1MB, který bude použit pro zavaděč\n"
-"Yaboot. Pokud vytvoříte tento oddíl větší, např. 50 MB, je to dobré místo "
-"pro\n"
-"uložení ramdisku a jádra pro situace záchrany disku."
#: ../help.pm:526
#, c-format
@@ -1221,42 +1223,48 @@ msgid "Toggle between normal/expert mode"
msgstr "Přepne mezi normální/expertním režimem"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Instalační program nalezl na disku více než jeden oddíl s Microsoft "
"Windows.\n"
"Prosím vyberte si jeden z nich, který je potřeba pro novu instalaci systému\n"
-"Mandriva Linux zmenšit.\n"
+"Mageia zmenšit.\n"
"\n"
"Každý oddíl je zobrazen následovně: \"Pojmenování v Linuxu\",\n"
"\"Název ve Windows\", \"Velikost\".\n"
@@ -1299,35 +1307,35 @@ msgstr ""
"klepněte na tlačítko \"%s\" a získáte kompletní seznam zemí."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Tento krok se objeví pouze tehdy, pokud je na vašem počítači nalezen starší\n"
"oddíl GNU/Linuxu.\n"
"\n"
"Instalační program potřebuje vědět, zda má provést instalaci nebo pouze\n"
-"aktualizaci existujícího systému Mandriva Linux.\n"
+"aktualizaci existujícího systému Mageia.\n"
"\n"
" * \"%s\": Nejběžnější volba, provede kompletní výmaz starého systému.\n"
"V závislosti na rozvržení oddílů vašeho starého systému je však možné\n"
@@ -1336,7 +1344,7 @@ msgstr ""
"souborový systém, použijte tuto volbu.\n"
"\n"
" * \"%s\": tato volba provede aktualizaci balíčků instalovaných na vašem\n"
-"systému Mandriva Linux. Aktuální rozmístění diskových oddílů a uživatelská\n"
+"systému Mageia. Aktuální rozmístění diskových oddílů a uživatelská\n"
"data zůstanou zachována. Bude ale provedena většina konfiguračních kroků,\n"
"stejně jako při instalaci.\n"
"\n"
@@ -1388,7 +1396,7 @@ msgstr ""
"rozložení klávesnice mezi latinkou a vámi zvoleným rozložením."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1404,8 +1412,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1587,7 +1594,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1612,10 +1619,10 @@ msgstr ""
"instalace žádného zavaděče. Použijte to pouze tehdy, pokud víte, co děláte."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1636,12 +1643,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Zde si můžete vybrat tiskový systém, který budete používat. Jiné OS "
"nabízejí\n"
-"jeden, Mandriva Linux nabízí dva. Každý z nich je vhodnější pro různé typy\n"
+"jeden, Mageia nabízí dva. Každý z nich je vhodnější pro různé typy\n"
"konfigurací.\n"
"\n"
" * \"%s\" - což znamená 'print, do not queue' a je vhodný tehdy, pokud máte\n"
@@ -1691,7 +1698,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1772,8 +1779,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1790,7 +1796,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1840,7 +1846,7 @@ msgstr ""
" * \"%s\": pokud chcete nyní nastavit připojení k Internetu nebo k lokální\n"
"síti, klepnutím na tlačítko se spustí průvodce. Plnou dokumentaci naleznete\n"
"v tištěné příručce, případně můžete po instalaci využít ovládací centrum\n"
-"Mandriva Linux, kde rovněž naleznete kompletní nápovědu.\n"
+"Mageia, kde rovněž naleznete kompletní nápovědu.\n"
"\n"
" * \"%s\": umožňuje nastavit adresu HTTP a FTP proxy, což je užitečné,\n"
"pokud se počítač nachází za firewallem.\n"
@@ -1857,7 +1863,7 @@ msgstr ""
" * \"%s\": pokud chcete změnit nastavení zavaděče, můžete to provést\n"
"klepnutím na toto tlačítko. Změny by měly provádět pouze zkušení uživatelé.\n"
"Více informací lze nalézt v tištěné dokumentaci nebo online nápověde\n"
-"v ovládacím centru Mandriva Linux.\n"
+"v ovládacím centru Mageia.\n"
"\n"
" * \"%s\": zde si můžete konkrétně určit, které služby budou na vašem "
"počítači\n"
@@ -1880,25 +1886,27 @@ msgid "Graphical Interface"
msgstr "Grafické rozhraní"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Vyberte disk, který chcete smazat pro instalaci oddílu Mandriva Linux.\n"
+"Vyberte disk, který chcete smazat pro instalaci oddílu Mageia.\n"
"Pamatujte na to, že všechna data budou ztracena a nelze je již obnovit!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Klepněte na \"%s\", pokud chcete smazat všechna data a oddíly na tomto\n"
"pevném disku. Buďte opatrní, po odklepnutí tlačítka \"%s\" nelze obnovit "
diff --git a/perl-install/install/help/po/cy.po b/perl-install/install/help/po/cy.po
index f7403cd07..64e34acb4 100644
--- a/perl-install/install/help/po/cy.po
+++ b/perl-install/install/help/po/cy.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2006-03-08 19:38-0000\n"
"Last-Translator: Rhoslyn Prys <post@meddal.com>\n"
"Language-Team: Cymraeg <post@meddal.com>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -19,15 +20,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n == 2) ? 1 : 0;\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Cyn parhau dylech ddarllen amodau'r drwydded yn ofalus. Mae'n ymwneud\n"
-"â holl ddosbarthiad Mandriva Linux. Os ydych yn cytuno â'r holl amodau,\n"
+"â holl ddosbarthiad Mageia. Os ydych yn cytuno â'r holl amodau,\n"
"cliciwch flwch \"%s\". Os nad, bydd clicio ar y botwm \"%s\" yn\n"
"ail gychwyn eich cyfrifiadur."
@@ -135,7 +136,8 @@ msgstr "Ydych chi eisiau defnyddio'r nodwedd?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -145,24 +147,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Dyma'r rhaniadau Linux sydd wedi canfod ar eich disg caled.\n"
@@ -173,15 +179,15 @@ msgstr ""
"fidicon"
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mae gosodiad Mandriva Linux i'w gael ar nifer o CD-ROMau. Mae DrakX\n"
+"Mae gosodiad Mageia i'w gael ar nifer o CD-ROMau. Mae DrakX\n"
"yn gwybod os yw pecyn penodol wedi ei leoli ar CD-ROM arall a bydd yn bwrw\n"
"allan y CD cyfredol a gofyn am y llall. Os nad yw'r CD angenrheidiol "
"gennych\n"
@@ -191,12 +197,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -247,11 +252,11 @@ msgid ""
"megabytes."
msgstr ""
"Mae'n amser penderfynu pa raglenni rydych am eu gosod ar eich\n"
-"system. Mae yna filoedd o becynnau ar gael ar gyfer Mandriva Linux, ond\n"
+"system. Mae yna filoedd o becynnau ar gael ar gyfer Mageia, ond\n"
"i'w gwneud hi'n haws eu rheoli maent wedi cael eu gosod mewn grwpiau\n"
"o raglenni tebyg.\n"
"\n"
-"Mae Mandriva Linux wedi trefnu'r grwpiau pecynnau i bedwar categori. Mae\n"
+"Mae Mageia wedi trefnu'r grwpiau pecynnau i bedwar categori. Mae\n"
"modd dewis a dethol rhaglenni o'r categorïau gwahanol, fel bo \"Man Gwaith"
"\"\n"
"yn medru cael rhaglenni o'r categori \"Gweinydd\".\n"
@@ -315,7 +320,7 @@ msgid "Truly minimal install"
msgstr "Gosodiad lleiaf posibl"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -328,10 +333,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -361,11 +366,11 @@ msgstr ""
"\n"
"!! Os oes pecyn gweinydd wedi ei ddewis, yn fwriadol neu am ei fod yn rhan\n"
"o grwp cyfan, bydd angen i chi gadarnhau eich bod eisiau i'r gweinyddion\n"
-"gael eu gosod. Ym Mandriva Linux mae unrhyw weinydd sydd wedi ei\n"
+"gael eu gosod. Ym Mageia mae unrhyw weinydd sydd wedi ei\n"
"osod yn cael ei gychwyn fel rhagosodiad wrth gychwyn. Hyd yn oed os ydynt\n"
"yn ddiogel a doedd dim materion pryder pan gafodd y dosbarthiad ei ryddhau,\n"
"mae'n bosibl i fylchau diogelwch gael eu darganfod wedi i'r fersiwn hwn o\n"
-"Mandriva Linux gael ei gwblhau. Os nad ydych yn gwybod beth mae\n"
+"Mageia gael ei gwblhau. Os nad ydych yn gwybod beth mae\n"
"gwasanaeth arbennig i fod i'w wneud na pham mae wedi ei osod, yna\n"
"cliciwch\"%s\". Bydd clicio \"%s\" yn gosod y gwasanaethau hynny a\n"
"byddant yncael eu cychwyn yn awtomatig drwy ragosodiad!!\n"
@@ -488,11 +493,11 @@ msgstr ""
"ar eich cyfer."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -548,7 +553,7 @@ msgid ""
msgstr ""
"X (sef X Window System) yw calon rhyngwyneb graffigol GNU/Linux a'r\n"
"hyn mae'r holl amgylcheddau graffigol (KDE, Gnome, AterStep,\n"
-"WindowMaker, etc) sy'n dod gyda Mandriva Linux yn dibynnu arno.\n"
+"WindowMaker, etc) sy'n dod gyda Mageia yn dibynnu arno.\n"
"\n"
"Byddwch yn derbyn rhestr o baramedrau gwahanol i'w newid i gael\n"
"y dangosiad graffigol gorau:\n"
@@ -661,41 +666,45 @@ msgstr ""
"llwyddiannus yn cael eich dangosydd i ffurfweddu'n gywir."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -704,15 +713,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -726,7 +735,7 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Mae angen i chi nawr ddewis lle ar eich disg caled i osod eich system\n"
-"weithredu Mandriva Linux. Os yw eich disg caled yn wag neu os oes\n"
+"weithredu Mageia. Os yw eich disg caled yn wag neu os oes\n"
"yna system weithredol eisoes yn cymryd yr holl le sydd ar gael, bydd\n"
"angen i chi greu rhaniadau arno. Yn y bôn, mae rhannu disg caled yn\n"
"golygu ei rhannu'n rhesymegol i greu lle i osod eich system Mandriva\n"
@@ -758,14 +767,14 @@ msgstr ""
"Mae modd ail lunio maint y rhaniad heb golli data cyn belled eich bod wedi\n"
"dad-ddarnio rhaniad Windows ac mae'n defnyddio fformat Windows.\n"
"Argymhellir cadw data wrth gefn hefyd. Argymhellir gwneud hyn os ydych\n"
-"am ddefnyddio Mandriva Linux a Microsoft Windows ar yr un cyfrifiadur.\n"
+"am ddefnyddio Mageia a Microsoft Windows ar yr un cyfrifiadur.\n"
"\n"
" Cyn gwneud y dewis hwn, cofiwch y bydd maint eich rhaniad Microsoft\n"
"Windows yn llai nag yw ar hyn o bryd ar ol dilyn y drefn yma. Bydd gennych\n"
"llai o le yn Microsoft Windows i gadw data neu i osod meddalwedd newydd\n"
"\n"
" * \"%s\" os ydych am ddileu'r holl ddata a rhaniadau presennol ar\n"
-"eich disg caled a'u cyfnewid am system Mandriva Linux, yna dewiswch\n"
+"eich disg caled a'u cyfnewid am system Mageia, yna dewiswch\n"
"hwn. Byddwch yn ofalus wrth wneud hyn gan na fydd modd troi nôl\n"
"ar ôl cadarnhau.\n"
"\n"
@@ -889,7 +898,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -908,7 +917,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -930,15 +939,15 @@ msgstr ""
"Cliciwch \"%s\" pan ydych yn barod i fformatio rhaniadau.\n"
"\n"
"Cliciwch \"%s\" os ydych am ddewis rhaniad arall ar gyfer eich gosodiad\n"
-"Mandriva Linux newydd\n"
+"Mageia newydd\n"
"\n"
"Cliciwch \"%s\" os ydych am ddewis rhaniadau i'w gwirio am flociau\n"
"gwallus ar y ddisg."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -950,7 +959,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Erbyn i chi osod Mandriva Linux, mae'n debygol y bydd rhai \n"
+"Erbyn i chi osod Mageia, mae'n debygol y bydd rhai \n"
"pecynnau wedi eu diweddaru ers y rhyddhad cychwynnol. Bydd rhai \n"
"gwallau wedi eu cywiro a materion diogelwch wedi eu datrys. I ganiatáu\n"
"i chi fanteisio ar hyn mae cynnig i chi eu llwytho i lawr o'r rhyngrwyd.\n"
@@ -963,7 +972,7 @@ msgstr ""
"\"%s\" i estyn a gosod y pecynnau hynny neu \"%s\" i beidio."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -972,7 +981,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -998,24 +1007,27 @@ msgid "Security Administrator"
msgstr "Cyfrinair Gweinyddwr"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1031,21 +1043,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1062,17 +1076,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Yn awr mae angen i chi ddewis pa raniadau i'w defnyddio ar gyfer gosodiad\n"
-"eich system Mandriva Linux. Os oes rhaniadau wedi eu diffinio eisoes, un\n"
+"eich system Mageia. Os oes rhaniadau wedi eu diffinio eisoes, un\n"
"ai drwy osodiad blaenorol o GNU/Linux neu gan offeryn rhannu arall, mae\n"
"modd i chi ddefnyddio'r rhaniadau presennol. Os nad, rhaid i' rhaniadau'r\n"
"ddisg caled gael eu diffinio.\n"
@@ -1133,14 +1141,6 @@ msgstr ""
"I dderbyn gwybodaeth am yr amrywiol systemau ffeil sydd ar gael, darllenwch "
"y\n"
" pennawd ar ext2fs yn y ``Reference Manual''.\n"
-"\n"
-"Os ydych yn gosod ar beiriant PPC, bydd angen i chi greu \"ymlwythwr\" \n"
-" bychan o leiaf 1MB o faint, fydd yn cael ei ddefnyddio gan ymlwythwr "
-"yaboot.\n"
-"Os ydych yn dewis gwneud y rhaniad rhywfaint yn fwy, dyweder tua 50MB, yna\n"
-"gall fod yn le defnyddiol i gadw cnewyllyn sbâr a delweddau ramdisk ar "
-"gyfer\n"
-" sefyllfaoedd cychwyn argyfyngus!"
#: ../help.pm:526
#, c-format
@@ -1178,41 +1178,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Amnewid rhwng modd arferol/arbenigol"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Mae mwy nag un rhaniad Microsoft wedi ei ganfod ar eich disg caled.\n"
"Dewiswch ba un rydych am newid ei faint er mwyn gosod eich\n"
-"system weithredu Mandriva Linux newydd\n"
+"system weithredu Mageia newydd\n"
"\n"
"Mae pob rhaniad wedi ei restri fel hyn: \"Enw Linux\", \"Enw Windows\",\n"
"\"Maint\".\n"
@@ -1253,35 +1259,35 @@ msgstr ""
"cliciwch \"%s\" i edrych ar y rhestr gyflawn."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Mae'r cam hwn yn cael ei weithredu os oes hen raniad GNU/Linux wedi\n"
"ei ganfod ar y cyfrifiadur.\n"
"\n"
"Bydd DrakX angen gwybod a ydych am osod o'r newydd neu uwchraddio\n"
-"system Mandriva Linux presennol.\n"
+"system Mageia presennol.\n"
"\n"
" *\"%s\" Ar y cyfan, mae hwn yn tynnu'r hen system gyfan oddi ar eich\n"
"cyfrifiadur. Er hynny, yn ddibynnol ar eich trefn rhannu, mae modd atal\n"
@@ -1291,13 +1297,13 @@ msgstr ""
"system ffeil, dylech ddewis hwn.\n"
"\n"
" *\"%s\": Mae'r dosbarth gosod hwn yn caniatáu i chi ddiweddaru'r\n"
-"pecynnau sydd wedi eu gosod ar eich system Mandriva Linux. Bydd eich\n"
+"pecynnau sydd wedi eu gosod ar eich system Mageia. Bydd eich\n"
"rhaniadau presenol a'ch data personol yn cael eu cadw. Bydd y rhan fwyaf\n"
"o'r camau ffurfweddu ar gael fel gyda'r gosod arferol.\n"
"\n"
-"Dylai defnyddio \"Diweddaru\" weithio'n iawn ar systemau Mandriva Linux\n"
+"Dylai defnyddio \"Diweddaru\" weithio'n iawn ar systemau Mageia\n"
"sy'n rhedeg systemau \"8.1\" neu'n ddiweddarach. Nid yw uwchraddio\n"
-"fersiynau cyn Mandriva Linux \"8.1\" yn cael ei gymeradwyo."
+"fersiynau cyn Mageia \"8.1\" yn cael ei gymeradwyo."
#: ../help.pm:594
#, c-format
@@ -1344,7 +1350,7 @@ msgstr ""
"bysellfwrdd rhwng cynlluniau Lladin ac an-Lladin."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1360,8 +1366,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1402,7 +1407,7 @@ msgstr ""
"Ynghylch cefnogaeth UTF-8 (unicode): Amgodiad nod newydd yw Unicode\n"
"sydd i gynnwys pob iaith. Er hynny, mae cefnogaeth i bob iaith o fewn\n"
"GNU/Linux yn dal yn cael ei ddatblygu Oherwydd hynn mae defnydd\n"
-"Mandriva Linux o UTF-8 yn ddibynnol ar ddewis y defnyddiwr:\n"
+"Mageia o UTF-8 yn ddibynnol ar ddewis y defnyddiwr:\n"
"\n"
" * Os ydych yn dewis iaith gyda hen amgodiad cryf (ieithoedd lladin1\n"
"Rwsieg, Siapanëeg, Tsieinëeg, Corëeg, Thai, Groeg, Twrceg, y rhan\n"
@@ -1543,7 +1548,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1566,10 +1571,10 @@ msgstr ""
" dewis \"%s\" yn gosod cychwynnydd. Dim ond ar gyfer y gwybodus."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1590,7 +1595,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Yma byddwn yn dewis system argraffu i'ch cyfrifiadur ei ddefnyddio. Efallai\n"
@@ -1645,7 +1650,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1728,8 +1733,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1746,7 +1750,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1795,7 +1799,7 @@ msgstr ""
" \n"
" * \"%s\": os ydych am ffurfweddu eich mynediad i'r Rhyngrwyd neu\n"
"eich rhwydwaith lleol, mae modd gwneud hynny. Darllenwch y deunydd\n"
-"ysgrifenedig neu ddefnyddio Canolfan Reoli Mandriva Linux wedi i'r gosod\n"
+"ysgrifenedig neu ddefnyddio Canolfan Reoli Mageia wedi i'r gosod\n"
"orffen i fanteisio ar gymorth ar-lein llawn.\n"
"\n"
" * \"%s\": os ydych am ffurfweddu cyfeiriadau dirprwyol HTTP ac FTP os\n"
@@ -1812,7 +1816,7 @@ msgstr ""
" * \"%s\": os hoffech newid ffurfweddiad eich cychwynnwr\n"
"cliciwch y botwm yma. Ar gyfer defnyddwyr profiadol. Darllenwch y\n"
"deunydd ysgrifenedig neu'r cymorth ar-lein am ffurfweddiad\n"
-"cychwynwyr yng Nghanolfan Rheoli Mandriva Linux.\n"
+"cychwynwyr yng Nghanolfan Rheoli Mageia.\n"
"\n"
" *\"%s\": yma bydd modd i chi wneud man newidiadau i'r\n"
"gwasanaethau sy'n cael eu rhedeg ar eich cyfrifiadur. Os ydych yn\n"
@@ -1835,26 +1839,28 @@ msgid "Graphical Interface"
msgstr "Rhyngwyneb Graffigol"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Dewiswch y ddisg galed rydych am ei ddileu er mwy n gosod eich rhaniad\n"
-"Mandriva Linux newydd. Byddwch ofalus, bydd yr holl ddata sydd arno'n\n"
+"Mageia newydd. Byddwch ofalus, bydd yr holl ddata sydd arno'n\n"
"cael ei ddileu ac ni fydd modd ei adfer!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Cliciwch \"%s\" os ydych am ddileu'r holl ddata a rhaniadau sy'n bresennol\n"
"ar y disg. Byddwch ofalus, wedi i chi glicio \"%s\" ni fydd modd i chi\n"
diff --git a/perl-install/install/help/po/da.po b/perl-install/install/help/po/da.po
index fa7f9e60f..6126805cb 100644
--- a/perl-install/install/help/po/da.po
+++ b/perl-install/install/help/po/da.po
@@ -15,6 +15,7 @@ msgstr ""
"PO-Revision-Date: 2006-03-05 18:46+0100\n"
"Last-Translator: Keld Simonsen <keld@rap.dk>\n"
"Language-Team: <da@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -22,17 +23,17 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Før du går videre bør du læse betingelserne i licensen omhyggeligt. Den "
-"omfatter hele Mandriva Linux distributionen. Hvis du er enig i alle "
-"betingelserne i den, så klik på '%s'-boksen. Hvis ikke, så vil klikning på "
-"\"%s\"-knappen genstarte din maskine."
+"omfatter hele Mageia distributionen. Hvis du er enig i alle betingelserne i "
+"den, så klik på '%s'-boksen. Hvis ikke, så vil klikning på \"%s\"-knappen "
+"genstarte din maskine."
#: ../help.pm:20
#, c-format
@@ -110,9 +111,9 @@ msgstr ""
"Når du er færdig med at tilføje brugere, vil du blive spurgt om at vælge en "
"bruger som automatisk kan logge ind på systemet når maskinen startes op. "
"Hvis du er interesseret i denne facilitet (og ikke kærer dig synderligt om "
-"lokal sikkerhed), så vælg den ønskede bruger og vindueshåndtering og klik '%"
-"s'. Hvis du ikke er interesseret i denne facilitet, så afmarkér boksen med '%"
-"s'."
+"lokal sikkerhed), så vælg den ønskede bruger og vindueshåndtering og klik "
+"'%s'. Hvis du ikke er interesseret i denne facilitet, så afmarkér boksen med "
+"'%s'."
#: ../help.pm:54
#, c-format
@@ -132,7 +133,8 @@ msgstr "Ønsker du at bruge denne facilitet?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -142,24 +144,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Her er listet de eksisterende Linux-partitioner genkendt på din disk. Du kan "
@@ -191,30 +197,29 @@ msgstr ""
"osv."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux installationen bliver distribueret på flere cdrom-er. Hvis en "
-"valgt pakke ligger på en anden cdrom, vil DrakX udskyde den nuværende cd og "
-"bede dig om at isætte den forespurgte cd. Hvis du ikke har den forespurgte "
-"cd ved hånden, så klik bare på '%s' - de tilsvarende pakker vil da ikke "
-"blive installerede."
+"Mageia installationen bliver distribueret på flere cdrom-er. Hvis en valgt "
+"pakke ligger på en anden cdrom, vil DrakX udskyde den nuværende cd og bede "
+"dig om at isætte den forespurgte cd. Hvis du ikke har den forespurgte cd ved "
+"hånden, så klik bare på '%s' - de tilsvarende pakker vil da ikke blive "
+"installerede."
#: ../help.pm:95
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -265,11 +270,11 @@ msgid ""
"megabytes."
msgstr ""
"Det er nu tid til at angive hvilke pakker du vil installere på dit system. "
-"Der er tusindvis af pakker til dit Mandriva Linux system, og for at gøre det "
-"nemmere at håndtere dem er pakkerne blevet placeret i grupper af lignende "
+"Der er tusindvis af pakker til dit Mageia system, og for at gøre det nemmere "
+"at håndtere dem er pakkerne blevet placeret i grupper af lignende "
"programmer.\n"
"\n"
-"Mandriva Linux opdeler pakkegrupper i fire kategorier. Du kan vælge og vrage "
+"Mageia opdeler pakkegrupper i fire kategorier. Du kan vælge og vrage "
"programmer fra de forskellige grupper, så en installation af "
"'Arbejdsstation' kan også have programmer fra 'Udvikling'-kategorien "
"installeret.\n"
@@ -336,7 +341,7 @@ msgid "Truly minimal install"
msgstr "Virkeligt minimale installation"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -349,10 +354,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -383,13 +388,13 @@ msgstr ""
"!! Når en server-pakke er blevet valgt, enten fordi du specielt valgte den "
"individuelle pakke, eller fordi den var en del af en gruppe af pakker, vil "
"du blive spurgt om at bekræfte at du virkelig ønsker at installere disse "
-"servere. Som standard under Mandriva Linux bliver installerede servere "
-"startet op ved opstart af maskinen. Selvom de er sikre og ikke har nogen "
-"kendte problemer på udgivelsestidspunktet for distributionen, er det absolut "
-"muligt at sikkerhedshuller blev opdaget efter at denne version af Mandriva "
-"Linux blev færdiggjort. Hvis du ikke véd hvad en bestemt tjeneste vil gøre "
-"eller hvorfor den skal installeres, så klik '%s' her. Et klik med '%s' her "
-"vil installere de nævnte servere og de vil blive startet automatisk under "
+"servere. Som standard under Mageia bliver installerede servere startet op "
+"ved opstart af maskinen. Selvom de er sikre og ikke har nogen kendte "
+"problemer på udgivelsestidspunktet for distributionen, er det absolut muligt "
+"at sikkerhedshuller blev opdaget efter at denne version af Mandriva Linux "
+"blev færdiggjort. Hvis du ikke véd hvad en bestemt tjeneste vil gøre eller "
+"hvorfor den skal installeres, så klik '%s' her. Et klik med '%s' her vil "
+"installere de nævnte servere og de vil blive startet automatisk under "
"opstarten!!\n"
"\n"
"'%s'-valget deaktiverer advarselsdialogen, som vises hver gang "
@@ -510,11 +515,11 @@ msgstr ""
"bedst opfylder dine behov."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -570,7 +575,7 @@ msgid ""
msgstr ""
"X (for X Window System) er hjertet af GNU/Linux' grafiske grænseflade som "
"alle de grafiske miljøer (KDE, GNOME, AfterStep, WindowMaker, mv.) der "
-"kommer sammen med Mandriva Linux afhænger af.\n"
+"kommer sammen med Mageia afhænger af.\n"
"\n"
"Du vil se en liste med forskellige parametre der kan ændres for at få den "
"bedst mulige grafiske fremvisning:\n"
@@ -684,41 +689,45 @@ msgstr ""
"konfigureret."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -727,15 +736,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -748,11 +757,11 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Nu skal du vælge hvor på din harddisk du vil installere dit Mandriva Linux-"
+"Nu skal du vælge hvor på din harddisk du vil installere dit Mageia-"
"operativsystem. Hvis disken er tom eller et eksisterende operativsystem "
"bruger alt pladsen på den, bliver du nødt til at partitionere drevet. "
"Partitionering vil sige at diskdrevet opdeles i logiske dele for at lave den "
-"plads der behøves til at installere dit nye Mandriva Linux-system.\n"
+"plads der behøves til at installere dit nye Mageia-system.\n"
"\n"
"Da partitioneringen af en disk normalt ikke kan fortrydes og kan føre til "
"tab af data, kan det godt være frustrerende og stressende for uøvede "
@@ -778,8 +787,8 @@ msgstr ""
"Windows-FAT- eller NTFS-partition. Størrelsesændringen kan fortages uden tab "
"af data, hvis du i forvejen har defragmenteret Windows-partitionen. Det "
"anbefales på det kraftigste at du laver en sikkerhedskopi først. Denne "
-"mulighed anbefales hvis du vil bruge både Mandriva Linux og Microsoft "
-"Windows på samme maskine.\n"
+"mulighed anbefales hvis du vil bruge både Mageia og Microsoft Windows på "
+"samme maskine.\n"
"\n"
" Før du vælger denne løsning, bør du forstå at størrelsen på din Microsoft "
"Windows partition vil blive mindre end da du startede. Du vil have mindre "
@@ -787,9 +796,9 @@ msgstr ""
"nyt programmel.\n"
"\n"
" * '%s': Hvis du vil slette alle data på alle partitioner på denne disk og "
-"erstatte dem med dit nye Mandriva Linux-system, kan du vælge denne mulighed. "
-"Vær forsigtig, for du vil ikke være i stand til at fortryde denne handling "
-"efter at du har sagt ja.\n"
+"erstatte dem med dit nye Mageia-system, kan du vælge denne mulighed. Vær "
+"forsigtig, for du vil ikke være i stand til at fortryde denne handling efter "
+"at du har sagt ja.\n"
"\n"
" !! Hvis du bruger denne mulighed vil alle eksisterende data på din disk "
"gå tabt. !!\n"
@@ -917,7 +926,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -936,7 +945,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -957,15 +966,15 @@ msgstr ""
"Klik på '%s' når du er klar til at formatere partitionerne.\n"
"\n"
"Klik på '%s' hvis du ønsker at vælge andre partitioner til at installere dit "
-"nye Mandriva Linux operativsystem.\n"
+"nye Mageia operativsystem.\n"
"\n"
"Klik på '%s' for at vælge partitioner som du ønsker at tjekke for dårlige "
"blokke."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -977,13 +986,12 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"På det tidspunkt hvor du installerer Mandriva Linux er det sandsynligt at "
-"nogen af pakkerne er blevet opdaterede siden den oprindelige udgivelse. Fejl "
-"er måske blevet rettet, og sikkerhedsproblemer måske løst. Det er nu muligt "
-"for dig at hente disse ned fra internettet for at disse opdateringer kan "
-"komme dig til gode. Vælg '%s' hvis du har en fungerende internet- "
-"forbindelse eller '%s' hvis du foretrækker at installere opdaterede pakker "
-"senere.\n"
+"På det tidspunkt hvor du installerer Mageia er det sandsynligt at nogen af "
+"pakkerne er blevet opdaterede siden den oprindelige udgivelse. Fejl er måske "
+"blevet rettet, og sikkerhedsproblemer måske løst. Det er nu muligt for dig "
+"at hente disse ned fra internettet for at disse opdateringer kan komme dig "
+"til gode. Vælg '%s' hvis du har en fungerende internet- forbindelse eller "
+"'%s' hvis du foretrækker at installere opdaterede pakker senere.\n"
"\n"
"Valg af '%s' viser en liste af netsteder hvorfra opdateringer kan hentes. Du "
"bør vælge en der er nær ved dig. Så vil et træ med pakkevalg blive vist: "
@@ -991,7 +999,7 @@ msgstr ""
"eller '%s' for at afbryde."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1000,7 +1008,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1025,24 +1033,27 @@ msgid "Security Administrator"
msgstr "Sikkerhedsadministrator"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1058,21 +1069,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1089,18 +1102,12 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Nu skal du vælge hvilke partitioner som skal bruges til installering af dit "
-"Mandriva Linux system. Hvis partitionerne allerede er blevet defineret, "
-"enten fra en tidligere installation af GNU/Linux eller med et andet "
+"Mageia system. Hvis partitionerne allerede er blevet defineret, enten fra en "
+"tidligere installation af GNU/Linux eller med et andet "
"partitioneringsværktøj, kan du bruge de eksisterende partitioner. Ellers "
"skal disk-partitionerne defineres først.\n"
"\n"
@@ -1161,12 +1168,6 @@ msgstr ""
"\n"
"For at få information om de forskellige tilgængelige filsystemstyper kan du "
"læse kapitlet ext2fs i 'Referencemanualen'.\n"
-"\n"
-"Hvis du er i gang med at installere på en PPC-maskine skal du lave en lille "
-"HFS-'bootstrap'-partition på mindst 1 MB til Yaboot-systemstarteren. Hvis du "
-"vælger at lave partitionen en smule større, f.eks. 50 MB kan den være nyttig "
-"til at gemme en ekstra kerne og ramdisk-billede for nødsituationer ved "
-"opstart."
#: ../help.pm:526
#, c-format
@@ -1204,41 +1205,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Skift mellem normal og ekspert-tilstand"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Mere end én Microsoft Windows partition er blevet genkendt på dit diskdrev. "
"Vælg den som du ønsker at ændre størrelse på for at kunne installere dit nye "
-"Mandriva Linux operativsystem.\n"
+"Mageia operativsystem.\n"
"\n"
"Hver partition er listet som følger: 'Linux navn', 'Windows navn', "
"'Kapacitet'.\n"
@@ -1279,35 +1286,35 @@ msgstr ""
"der vistes, så klik på '%s'-knappen for at få den komplette liste over lande."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Dette trin bliver kun aktiveret hvis der bliver fundet en eksisterende\n"
"GNU/Linux partition på din maskine.\n"
"\n"
"DrakX skal nu vide om du vil udføre en ny installation eller en opgradering\n"
-"af et eksisterende Mandriva Linux-system.\n"
+"af et eksisterende Mageia-system.\n"
"\n"
" * \"%s\": Dette vil stort sét slette hele det gamle system. Dog kan du "
"afhængigt af din partitionsopsætning forhindre at nogen af dine ekisterende "
@@ -1316,14 +1323,14 @@ msgstr ""
"bør du bruge denne mulighed.\n"
"\n"
" * \"%s\": Denne installationsklasse lader dig opgradere pakkene som er "
-"installeret på dit nuværende Mandriva Linux-system. Din nuværende "
+"installeret på dit nuværende Mageia-system. Din nuværende "
"partitionsopsætning og brugerdata bliver ikke berørt. De fleste andre "
"konfigurationstrin forbliver tilgængelige, i lighed med en "
"standardinstallation.\n"
"\n"
-"\"Opgradér\"-valget bør fungere fint på Mandriva Linux-systemer som kører "
-"version '8.1' eller nyere. Udførelse af Opgradér på versioner tidligere end "
-"Mandriva Linux '8.1' er ikke anbefalet."
+"\"Opgradér\"-valget bør fungere fint på Mageia-systemer som kører version "
+"'8.1' eller nyere. Udførelse af Opgradér på versioner tidligere end Mageia "
+"'8.1' er ikke anbefalet."
#: ../help.pm:594
#, c-format
@@ -1362,7 +1369,7 @@ msgstr ""
"vil skifte mellem den latinske og den ikke-latinske udlægning."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1378,8 +1385,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1419,8 +1425,8 @@ msgstr ""
"\n"
"Om UTF-8 (ISO 10646)-understøttelse. ISO 10646 er en ny tegnkodning som er "
"beregnet til at dække alle eksiterende sprog. Dog er fuld understøttelse for "
-"dette i GNU/Linux stadig under udvikling. Af denne årsag vil Mandriva Linux' "
-"brug af UTF-8 afhænge af brugerens valg:\n"
+"dette i GNU/Linux stadig under udvikling. Af denne årsag vil Mageia' brug af "
+"UTF-8 afhænge af brugerens valg:\n"
"\n"
" * Hvis du vælger et sprog som har en lang tradition for tegnkodning (latin1 "
"sprog, russisk, japansk, kinesisk, koreansk, thai, græsk, tyrkisk, de fleste "
@@ -1555,7 +1561,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1579,10 +1585,10 @@ msgstr ""
"du véd hvad du gør."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1603,7 +1609,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Nu er det tid til at vælge et udskrivningssystem for din maskine. Andre "
@@ -1655,7 +1661,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1735,8 +1741,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1753,7 +1758,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1796,13 +1801,13 @@ msgstr ""
"hvis du synes at konfigurationen er forkert.\n"
"\n"
" * \"%s\": Som standard vil DrakX opsætte din grafiske grænseflade i "
-"opløsningen 800x600 eller 1024x768. Hvis dette ikke passer dig, så klik på '%"
-"s'-knappen for at ændre på opsætningen.\n"
+"opløsningen 800x600 eller 1024x768. Hvis dette ikke passer dig, så klik på "
+"'%s'-knappen for at ændre på opsætningen.\n"
"\n"
" * \"%s\": Hvis du ønsker at konfigurere din adgang til internet eller "
"lokalnet, kan du gøre dette nu. Kig i den trykte dokumentation eller brug "
-"Mandriva Linux Kontrolcenter efter installationen er afsluttet for at drage "
-"nytte af den fulde indbyggede vejledning. \n"
+"Mageia Kontrolcenter efter installationen er afsluttet for at drage nytte af "
+"den fulde indbyggede vejledning. \n"
"\n"
" * \"%s\": lader dig konfigurere HTTP- og FTP-proxyadresser, hvis maskinen, "
"du installerer på, skal placeres bag en proxyserver.\n"
@@ -1818,7 +1823,7 @@ msgstr ""
" * \"%s\": Hvis du vil ændre på konfigurationen for opstartsindlæseren, så "
"klik på denne knap. Dette bør forbeholdes avancerede brugere. Kig i den "
"trykte dokumentation eller i den indbyggede hjælp om konfiguration af "
-"opstartsindlæser i Mandriva Linux Kontrolcenter.\n"
+"opstartsindlæser i Mageia Kontrolcenter.\n"
"\n"
" * \"%s\": her kan du fininstille hvilke tjenester som skal startes på din "
"maskine. Hvis du skal bruge maskinen som server er det en god idé at "
@@ -1840,13 +1845,13 @@ msgid "Graphical Interface"
msgstr "Grafisk grænseflade"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Vælg det diskdrev som du vil slette for at installere din nye Mandriva Linux "
+"Vælg det diskdrev som du vil slette for at installere din nye Mageia "
"partition. Vær forsigtig, alle data som er på denne partition vil gå tabt og "
"vil ikke kunne genskabes!"
@@ -1854,12 +1859,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Klik på '%s' hvis du ønsker at slette alle data og partitioner der ligger på "
"dette diskdrev. Vær omhyggelig, efter klik på '%s' vil du ikke være i stand "
diff --git a/perl-install/install/help/po/de.po b/perl-install/install/help/po/de.po
index 300e8c2b2..cccce7edf 100644
--- a/perl-install/install/help/po/de.po
+++ b/perl-install/install/help/po/de.po
@@ -1,46 +1,40 @@
-# translation of de.po to deutsch
-# translation of DrakX-de.po to deutsch
-# translation of de.po to Deutsch
-# translation of DrakX-de.po to german
-# german translation of the MandrivaInstaller.
-# Copyright (C) 2000-2003 Mandriva S.A.
-# Stefan Siegel <siegel@linux-mandrake.com>, 2000, 2001, 2002, 2003.
-# Sebastian Deutscher <sebastian_deutscher@web.de>, 2003,2004.
-# Gerhard Ortner <gerhard.ortner@aon.at>, 2003, 2004.
-# Roy Steuber <roysteuber@mittweida-net.de>, 2004.
-# Marcus Fischer <i18n@marcusfischer.com>, 2004.
-# Frank Köster <frank@dueppel13.de>, 2004, 2005.
-# Ronny Standtke <Ronny.Standtke@gmx.de>, 2003, 2004.
-# Ronny Standtke <Ronny.Standtke@gmx.net>, 2004, 2005.
-# Nicolas Bauer <webmaster@mandrakeusers.de>, 2005.
-# Frank Koester <frank@dueppel13.de>, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
+# psyca, 2024
+#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-de\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2005-09-20 17:12+0200\n"
-"Last-Translator: Frank Koester <frank@dueppel13.de>\n"
-"Language-Team: deutsch\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: psyca, 2024\n"
+"Language-Team: German (https://app.transifex.com/MageiaLinux/teams/9361/"
+"de/)\n"
+"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Lesen Sie bitte aufmerksam die Lizenz, bevor Sie fortfahren. Sie umfasst\n"
-"die gesamte Mandriva Linux Distribution. Sollten Sie nicht in allen Punkten\n"
-"zustimmen, betätigen Sie bitte die Schaltfläche „%s“, um die Installation\n"
-"abzubrechen. Um mit der Installation fortzufahren, betätigen Sie die\n"
-"Schaltfläche „%s“."
+"die gesamte Mageia Distribution. Sollten Sie in allen Punkten\n"
+"zustimmen, betätigen Sie bitte die Schaltfläche „%s“. Wenn nicht wird ein\n"
+"Betätigen der Schaltfläche „%s“ ihren Computer neu starten."
#: ../help.pm:20
#, c-format
@@ -125,12 +119,12 @@ msgstr ""
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Benutzername"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Benutzer akzeptieren"
#: ../help.pm:54
#, c-format
@@ -140,7 +134,8 @@ msgstr "Möchten Sie diese Möglichkeit nutzen?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -150,24 +145,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Sie erhalten die Liste, der auf Ihren Festplatten gefundenen GNU/Linux\n"
@@ -201,36 +200,31 @@ msgstr ""
"Bei SCSI-Platten steht „a“ für „niedrigste SCSI-ID“, „b“ für\n"
"„zweitniedrigste SCSI-ID“, etc."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Die Mandriva Linux-Distribution wird auf mehreren CD-ROMs ausgeliefert. Es\n"
-"kann daher vorkommen, dass DrakX Pakete von anderen, als der\n"
-"Installations-CD-ROM installieren will. In diesem Fall wird es die aktuelle\n"
-"CD auswerfen und nach einer anderen fragen. Wenn Sie dieses CD nicht haben,\n"
-"klicken Sie einfach auf „%s“. Die entsprechenden Pakete werden in dem Fall\n"
-"nicht installiert."
-
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
+"Die Mageia-Distribution wird auf mehreren CD-ROMs ausgeliefert. Wenn\n"
+"ein ausgewähltes Paket sich auf einer anderen CD-ROM befindet, wird DrakX\n"
+"die aktuelle CD-ROM auswerfen und nach einer anderen fragen. Wenn Sie diese\n"
+"nicht zur Hand haben sollten, betätigen Sie die Schaltfläche „%s“, die "
+"entsprechenden\n"
+"Pakete werden dann nicht installiert."
+
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -280,25 +274,27 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"Nun ist es Zeit sich zu entscheiden, welche Programme Sie auf Ihrem Rechner\n"
-"installieren wollen. Es gibt tausende von Paketen für Mandriva Linux, und\n"
-"Sie müssen sie nicht alle auswendig kennen.\n"
+"Nun ist es Zeit sich zu entscheiden, welche Programme Sie auf Ihrem Rechner "
+"installieren wollen.\n"
+"Es gibt tausende von Paketen für Mageia, und um die Verwaltung zu "
+"vereinfachen sind diese, zusammen mit ähnlichen Anwendungen, in Kategorien "
+"sortiert.\n"
"\n"
-"Die Pakete sind nach ihrer Verwendung in vier Kategorien eingeteilt. Sie\n"
+"Die Pakete sind in vier Kategorien eingeteilt. Sie\n"
"können Pakete aus verschiedenen Kategorien nach Belieben mischen, sodass\n"
"beispielsweise eine „Workstation“-Installation auch Bestandteile einer\n"
"„Server“-Installation aufweisen kann.\n"
"\n"
" * „%s“: Falls Ihr Rechner als Arbeitsplatzrechner verwendet werden soll,\n"
-"markieren Sie eine oder mehrere Gruppen.\n"
+"markieren Sie eine oder mehrere Gruppen dieser Kategorie.\n"
"\n"
" * „%s“: Falls Sie mit Ihrem Rechner programmieren wollen, sollten Sie\n"
"diese Gruppe markieren. Die spezielle Gruppe „LSB“ wird Ihr System\n"
"möglichst eng an den Vorgaben der Linux Standard Base ausrichten.\n"
"\n"
-" Die Auswahl der „LSB“-Gruppe bewirkt auch, dass der Kernel „2.4“\n"
-"anstelle des standardmäßigen Kernel „2.6“ installiert wird, um die 100%%ige\n"
-"Einhaltung der-LSB-Bedingungen zu garantieren. Allerdings erhalten Sie auch\n"
+" Die Auswahl der „LSB“-Gruppe bewirkt auch, eine 100%%ige\n"
+"Einhaltung der-LSB-Bedingungen des Systems zu garantieren. Allerdings "
+"erhalten Sie auch\n"
"ohne die Auswahl der „LSB“-Gruppe ein nahezu 100%%ig LSB-konformes System.\n"
"\n"
" * „%s“: Wenn Ihre Maschine ein Server werden soll, können Sie hier die\n"
@@ -321,19 +317,22 @@ msgstr ""
"Hierdurch werden nur bereits installierte Pakete aktualisiert oder\n"
"repariert.\n"
"\n"
-"Wenn Sie bei einer normalen Installation alle Gruppen de-markieren\n"
+"Wenn Sie bei einer normalen Installation (im Gegensatz zu einem Upgrade) "
+"alle Gruppen de-markieren\n"
"erscheint ein Dialog, der Ihnen verschiedene Optionen für eine\n"
"Minimal-Installation anbietet:\n"
"\n"
-" * „%s“ Installiert eine rudimentäre grafische Oberfläche;\n"
+" * „%s“ Installiert eine minimale Anzahl an Paketen um mindestens eine "
+"funktionale grafische Oberfläche zu erhalten;\n"
"\n"
" * „%s“ Installiert das Basissystem zuzüglich grundlegender Werkzeuge\n"
"inklusive deren Dokumentation. Dies ist die sinnvollste Wahl für eine\n"
"Serverinstallation.\n"
"\n"
-" * „%s“ Sie erhalten eine komplett „nackte“ 65MB große\n"
-"GNU/Linux-Distribution. Es versteht sich von selbst, dass das nur eine\n"
-"Kommandozeileninstallation sein kann."
+" * „%s“ Installiert das absolute Minimum an Paketen die nötig sind um ein "
+"funktionierendes Linux System zu erhalten. Mit dieser Installation erhalten "
+"Sie nur eine Kommandozeile. Die gesamte Größe dieser Installation beträgt um "
+"die 65 Megabyte."
#: ../help.pm:149 ../help.pm:591
#, c-format
@@ -350,8 +349,6 @@ msgstr "Mit minimaler Dokumentation (Empfohlen)"
msgid "Truly minimal install"
msgstr "Minimal-Installation"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:152
#, c-format
msgid ""
@@ -366,10 +363,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -396,31 +393,38 @@ msgstr ""
"Pakete\n"
"auswählen.\n"
"\n"
-"Wenn Sie ein Paket auswählen, erscheint rechts eine kurze Beschreibung.\n"
+"Wenn Sie ein Paket auswählen, erscheint rechts eine kurze Beschreibung, "
+"damit Sie den Zweck des Pakets in Erfahrung bringen können.\n"
"\n"
-"!! Es kommt vor, dass Server- und Dienst-Pakete angewählt wurden - entweder\n"
-"absichtlich, oder als Paket einer ganzen Gruppe; sollte das der Fall sein,\n"
-"werden Sie nun gefragt, ob Sie diese wirklich installiert haben wollen.\n"
-"Unter Mandriva Linux werden installierte Server und Dienste automatisch "
-"beim\n"
+"!! Wenn ein Server-Paket angewählt wurde, entweder\n"
+"absichtlich oder als Paket einer ganzen Gruppe, \n"
+"werden Sie gefragt, ob Sie dieses wirklich installiert haben wollen.\n"
+"Unter Mageia werden installierte Dienste automatisch beim\n"
"Betriebssystemstart gestartet. Selbst wenn zum Zeitpunkt, als die\n"
"Distribution zusammengestellt wurde, keine Sicherheitslücken oder Fehler in\n"
"diesen Paketen bekannt waren, ist natürlich nicht auszuschließen, dass\n"
"später solche Fehler gefunden werden. Sollten Sie also nicht wissen, wovon\n"
"hier die Rede ist, wählen Sie sicherheitshalber lieber „%s“. Falls Sie mit\n"
-"„%s“ antworten, werden die Dienste und Server installiert und stehen Ihnen\n"
+"„%s“ antworten, werden die aufgelisteten Dienste installiert und stehen "
+"Ihnen\n"
"nach der Installation standardmäßig zur Verfügung. !!\n"
"\n"
-"Die Option „%s“ unterdrückt nur die Warnungen, die erscheinen, wenn das\n"
+"Die Option „%s“ unterdrückt die Warnungen, die erscheinen, wenn das\n"
"Installationsprogramm Pakete automatisch markiert, um Paketabhängigkeiten\n"
"aufzulösen, wenn Sie ein Paket auswählen. Einige Pakete hängen von der\n"
"Existenz anderer Pakete ab und die Installation eines Pakets mag die\n"
-"Installation eines anderen voraussetzen. Das Installprogramm ist in der\n"
-"Lage, diese Abhängigkeiten zu erkennen und zu erfüllen.\n"
+"Installation eines anderen voraussetzen. Das Installationsprogramm ist in "
+"der\n"
+"Lage, diese Abhängigkeiten zu erkennen um die Installation vollständig "
+"durchzuführen.\n"
"\n"
"Das kleine Diskettensymbol am unteren Rand der Liste ermöglicht es Ihnen,\n"
"die während einer vorangegangenen Installation gespeicherte Paketauswahl\n"
-"erneut zu verwenden. Durch Betätigen der Schaltfläche öffnen Sie einen\n"
+"erneut zu verwenden. Dies ist nützlich, wenn Sie eine eine größere Anzahl "
+"an\n"
+"Systemen zu installieren haben, welche identisch eingerichtet werden "
+"sollen.\n"
+"Durch Betätigen der Schaltfläche öffnen Sie einen\n"
"Dialog, der Sie auffordert, die Diskette einzulegen, die die Auswahl der\n"
"früheren Installation enthält. Um zu erfahren, wie Sie diese Diskette\n"
"erstellen, lesen Sie bitte den zweiten Tipp des vorangegangenen\n"
@@ -503,7 +507,7 @@ msgstr ""
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Die Hardware-Uhr ist auf GMZ gestellt"
#: ../help.pm:213
#, c-format
@@ -533,14 +537,12 @@ msgstr ""
"und ohne 3D-Beschleunigung, werden Sie gebeten, den zu wählen, der Ihren\n"
"Bedürfnissen am besten entspricht."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:234
#, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -594,65 +596,6 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
-"X (das X Window System) ist das Herz der grafischen Benutzeroberfläche von\n"
-"GNU/Linux. Es bildet die Grundlage für die Vielzahl grafischer\n"
-"Benutzerumgebungen, die Mandriva Linux Ihnen anbietet (wie etwa KDE, GNOME,\n"
-"AfterStep oder WindowMaker).\n"
-"\n"
-"Sie erhalten eine Liste möglicher Parameter, mit deren Hilfe Sie die\n"
-"Grafikausgabe ändern können:\n"
-"\n"
-"Grafikkarte\n"
-"\n"
-" DrakX erkennt normalerweise automatisch Ihre Grafikkarte und richtet sie\n"
-"entsprechend ein. Sollten dabei Probleme auftreten, können Sie in der hier\n"
-"aufgeführten Liste Ihr Modell auswählen.\n"
-"\n"
-" Falls für Ihre Karte verschiedene Server zur Verfügung stehen, etwa mit\n"
-"und ohne 3D-Beschleunigung, werden Sie gebeten, den zu wählen, der Ihren\n"
-"Bedürfnissen am besten entspricht.\n"
-"\n"
-"\n"
-"\n"
-"Monitor\n"
-"\n"
-" DrakX erkennt normalerweise automatisch Ihren Monitor. Sollten dabei\n"
-"Probleme auftreten, können Sie in der hier aufgeführten Liste Ihr Modell\n"
-"auswählen.\n"
-"\n"
-"\n"
-"\n"
-"Auflösung\n"
-"\n"
-" Sie können hier Auflösung und Farbtiefe für Ihre Hardware wählen.\n"
-"Entscheiden Sie sich, welche Variante Ihren Wünschen am ehesten entspricht\n"
-"(Sie können diese Angaben natürlich nach der Installation noch ändern).\n"
-"Anhand des abgebildeten Monitors können Sie sich einen sofortigen Eindruck\n"
-"bilden.\n"
-"\n"
-"\n"
-"\n"
-"Test\n"
-"\n"
-" Je nach Hardware kann es sein, dass dieser Eintrag nicht erscheint.\n"
-"\n"
-" DrakX versucht eine Testbild mit denen von Ihnen gewünschten\n"
-"Einstellungen zu öffnen. Falls Sie während des Tests einen Dialog sehen, in\n"
-"dem Sie gefragt werden, ob sie die getroffenen Einstellungen behalten\n"
-"wollen, antworten Sie mit „%s“, damit DrakX mit dem nächsten\n"
-"Installationsschritt fortfährt. Sollten Sie die Nachricht nicht sehen,\n"
-"bedeutet das, dass eine oder mehrere getroffene Einstellungen nicht korrekt\n"
-"sind. Nach 12 Sekunden sollten Sie wieder das Installationsmenü sehen. Sie\n"
-"können nun die Einstellungen ändern, bis Sie das Testbild sehen.\n"
-"\n"
-"\n"
-"\n"
-"Optionen\n"
-"\n"
-" Sie können direkt bei Betriebssystemstart die grafische Umgebung\n"
-"aktivieren. Durch Betätigen der Schaltfläche „%s“ wird in eine reine\n"
-"Textumgebung gestartet. Das ist sinnvoll für Server oder wenn Sie bei dem\n"
-"Versuch die grafische Umgebung zu konfigurieren erfolglos waren."
#: ../help.pm:291
#, c-format
@@ -714,44 +657,46 @@ msgstr ""
"Textumgebung gestartet. Das ist sinnvoll für Server oder wenn Sie bei dem\n"
"Versuch die grafische Umgebung zu konfigurieren erfolglos waren."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -760,15 +705,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -781,69 +726,6 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Sie müssen nun entscheiden, wo auf Ihrer Festplatte Ihr Mandriva Linux\n"
-"System installiert werden soll. Sofern alles leer ist bzw. ein\n"
-"Betriebssystem alles belegt, muss die Festplatte neu partitioniert werden.\n"
-"Prinzipiell besteht das Partitionieren der Festplatte darin, den\n"
-"Plattenplatz so aufzuteilen, dass Ihr Mandriva Linux darauf installiert\n"
-"werden kann.\n"
-"\n"
-"Da dieser Schritt normalerweise irreversibel ist und auch zu Datenverlusten\n"
-"führen kann, haben manche unerfahrenen Benutzer Hemmungen, diesen Schritt\n"
-"auszuführen. Glücklicherweise enthält DrakX einen Assistenten, der den\n"
-"Prozess sehr vereinfacht. Lesen Sie dennoch vor Beginn im Handbuch die\n"
-"entsprechenden Passagen und lassen Sie sich Zeit mit der Entscheidung.\n"
-"\n"
-"Abhängig vom aktuellen Zustand Ihrer Festplatte haben Sie verschiedene\n"
-"Alternativen:\n"
-"\n"
-" * „%s“: Dies führt einfach dazu, dass Ihre leere(n) Festplatte(n)\n"
-"automatisch partitioniert werden; Sie müssen sich also um nichts weiter\n"
-"kümmern.\n"
-"\n"
-" * „%s“: Der Assistent hat eine oder mehrere existierende Linux-Partitionen\n"
-"auf Ihrer Platte gefunden. Wählen Sie diese Schaltfläche, falls Sie sie\n"
-"behalten wollen. Sie werden dann gebeten, die Einhängpunkte der Partitionen\n"
-"anzugeben. Als Vorgabe erhalten Sie die Einhängpunkte der gefundenen\n"
-"Distribution, normalerweise ist es nicht nötig diese zu ändern.\n"
-"\n"
-" * „%s“: Falls der gesamte Plattenplatz aktuell für Microsoft Windows™\n"
-"verschwendet ist, müssen Sie für GNU/Linux Platz schaffen. Um dies zu\n"
-"erreichen, können Sie entweder Ihre Microsoft Windows™ Partition(en)\n"
-"samt Daten löschen (siehe „Komplette Platte löschen“) oder Ihre Microsoft\n"
-"Windows NTFS oder FAT Partition verkleinern. Letzteres geht ohne\n"
-"Datenverlust, vorausgesetzt Sie haben ihre Windows Partition(en) vorher\n"
-"defragmentiert. Dennoch sollten Sie vor diesem Schritt eine Sicherungskopie\n"
-"Ihrer Daten auf einem anderem Medium als der zu verändernden Festplatte\n"
-"vornehmen. Sie sollten diese Variante wählen, falls Sie beide\n"
-"Betriebssysteme (Microsoft Windows und Mandriva Linux) nebeneinander nutzen\n"
-"wollen.\n"
-"\n"
-" Bevor Sie sich für diese Variante entscheiden, sei hier noch einmal\n"
-"betont, dass das bedeutet, Sie haben weniger Platz für Microsoft Windows\n"
-"als momentan.\n"
-"\n"
-" * „%s“: Falls Sie alle Daten Ihrer Platte verlieren, und sie durch Ihr\n"
-"neues Mandriva Linux System ersetzen wollen, wählen Sie diese Schaltfläche.\n"
-"Beachten Sie, dass dieser Schritt nicht rückgängig gemacht werden kann.\n"
-"\n"
-" !! Wenn Sie diese Variante wählen, werden alle Ihre Daten auf der Platte\n"
-"gelöscht! !!\n"
-"\n"
-" * „%s“: Diese Option erscheint, wenn der gesamte Platz von Microsoft\n"
-"Windows eingenommen wird. Bei der Auswahl der Option wird einfach der\n"
-"gesamte Inhalt der Platte gelöscht und neu partitioniert.\n"
-"\n"
-" !! Wenn Sie diese Variante wählen, werden alle Ihre Daten auf der Platte\n"
-"gelöscht! !!\n"
-"\n"
-" * „%s“: Wenn Sie Ihre Festplatte selbst von Hand partitionieren wollen,\n"
-"dann können Sie diese Option wählen. Seien Sie bitte sehr sorgfältig, wenn\n"
-"Sie diese Lösung wählen, da Sie zwar alle möglichen Einstellungen\n"
-"vornehmen, aber gleichzeitig auch sehr leicht Daten verlieren können. Diese\n"
-"Option ist nur geeignet, wenn Sie wissen, was Sie tun. Um zu erfahren, wie\n"
-"Sie DiskDrake verwenden können, lesen Sie bitte das Kapitel „Ihre\n"
-"Partitionen verwalten“ im „Starter Handbuch“."
#: ../help.pm:377
#, c-format
@@ -853,7 +735,7 @@ msgstr "Verwende existierende Partition(en)"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Den freien Platz auf der Microsoft-Windows®-Partition nutzen"
#: ../help.pm:370
#, c-format
@@ -943,20 +825,18 @@ msgstr "Erstellen einer Autoinstallations-Diskette"
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Erneut durchführen"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Automatisch"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Paketauswahl speichern"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:408
#, c-format
msgid ""
@@ -977,39 +857,39 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
msgstr ""
-"Sie erhalten hier die Möglichkeit bereits existierende Partitionen neu zu\n"
-"formatieren, um die darauf vorhandenen Daten zu löschen. Markieren Sie\n"
-"diese einfach ebenfalls in der Liste.\n"
+"Wenn Sie auswählen bereits existierende GNU/Linux Partitionen zu verwenden,\n"
+"möchten Sie diese möglicherweise neu formatieren, um die darauf "
+"vorhandenen \n"
+"Daten zu löschen. Markieren Sie diese Partitionen einfach ebenfalls in der "
+"Liste.\n"
"\n"
"Es sei angemerkt, dass nicht alle Partitionen neu formatiert werden müssen.\n"
"Sie sollten normalerweise nur die Partitionen neu formatieren, die\n"
"Systemdateien, jedoch keine Privatdaten enthalten (etwa „/“, „/usr“ oder\n"
-"„/var“). Partitionen wie etwa „/home“ sollten Sie normalerweise nicht neu\n"
+"„/var“). Partitionen wie etwa „/home“ müssen Sie normalerweise nicht neu\n"
"formatieren.\n"
"\n"
"Seien Sie sorgfältig bei der Auswahl der Partitionen. Nach dem Formatieren\n"
"sind alle zuvor darauf existierenden Daten unwiederbringlich verloren.\n"
"\n"
-"Wenn Sie alle Einstellungen vorgenommen haben, betätigen Sie die\n"
-"Schaltfläche „%s“, um mit dem Formatieren der Partitionen zu beginnen.\n"
+"Betätigen Sie die Schaltfläche „%s“, um mit dem Formatieren der \n"
+"Partitionen zu beginnen.\n"
"\n"
"Betätigen Sie „%s“, wenn Sie eine andere Partition für Ihr neues\n"
-"Mandriva Linux vorgesehen haben.\n"
+"Mageia Betriebssystem vorgesehen haben.\n"
"\n"
-"Betätigen Sie die Schaltfläche „%s“, falls Sie Partitionen auf defekte\n"
-"Blöcke untersuchen wollen."
+"Betätigen Sie „%s“, falls Sie Partitionen auswählen möchten, um diese auf \n"
+"defekte Blöcke zu untersuchen."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1021,25 +901,24 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Es ist sehr wahrscheinlich, dass zum Zeitpunkt Ihrer Mandriva Linux\n"
-"Installation bereits einige Pakete aktualisiert wurden, etwa da noch Fehler\n"
-"entdeckt und beseitigt wurden oder da in Paketen Sicherheitslücken entdeckt\n"
-"wurden, für die bereits Lösungen existieren. Um von diesen aktualisierten\n"
-"Paketen Gebrauch zu machen, wird Ihnen nun angeboten, diese aus dem\n"
-"Internet nachzuladen. Betätigen Sie die Schaltfläche „%s“, wenn Sie einen\n"
-"Internetzugang haben, um die Pakete zu installieren, andernfalls betätigen\n"
-"Sie die Schaltfläche „%s“. Sie können diese Pakete natürlich auch jederzeit\n"
-"nach der Installation noch installieren.\n"
+"Es ist sehr wahrscheinlich, dass zum Zeitpunkt Ihrer Mageia\n"
+"Installation bereits einige Pakete aktualisiert wurden, etwa weil Fehler "
+"beseitigt \n"
+"oder Sicherheitslücken behoben wurden.\n"
+"Um von diesen aktualisierten Paketen Gebrauch zu machen, \n"
+"wird Ihnen nun angeboten, diese aus dem Internet nachzuladen. \n"
+"Betätigen Sie die Schaltfläche „%s“, wenn Sie einen\n"
+"Internetzugang haben, andernfalls betätigen Sie die Schaltfläche „%s“ falls "
+"Sie\n"
+"diese später installieren möchten.\n"
"\n"
"Betätigen der Schaltfläche „%s“ zeigt Ihnen eine Liste von Servern, von\n"
"denen Sie die Aktualisierungen herunterladen können. Wählen Sie einen in\n"
"Ihrer Nähe. Sie erhalten dann einen Paketauswahldialog: Kontrollieren Sie\n"
"die Auswahl und bestätigen Sie diese durch Betätigen von „%s“. Die Pakete\n"
"werden nun angefordert und installiert. Sollten Sie das nicht wünschen,\n"
-"betätigen Sie einfach die Schaltfläche „%s“."
+"betätigen Sie die Schaltfläche „%s“."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:450
#, c-format
msgid ""
@@ -1050,52 +929,54 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
"security. Security messages will be sent to that address."
msgstr ""
"Nun ist es an der Zeit, mittels DrakX die gewünschte Sicherheitsebene für\n"
-"Ihr System festzulegen. Als Faustregel sollte hier dienen: Je zugänglicher\n"
-"die Maschine ist und je kritischer die auf ihr gesicherten Daten sind,\n"
-"desto höher sollte die Sicherheitsebene sein. Andererseits geht die\n"
+"Ihr System festzulegen. Als Faustregel sollte hier dienen: Je kritischer die "
+"auf ihr gesicherten Daten sind oder wenn diese direkt mit dem Internet "
+"verbunden ist, desto höher sollte die Sicherheitsebene sein. Andererseits "
+"geht die\n"
"gewonnene Sicherheit zulasten der Benutzerfreundlichkeit und Einfachheit.\n"
"\n"
"Sollten Sie sich an dieser Stelle nicht sicher sein, so behalten Sie die\n"
"Standardeinstellung bei. Sie können die Ebene später noch mittels draksec\n"
-"im Mandriva Linux Control Center anpassen.\n"
+"im Mageia Kontrollzentrum anpassen.\n"
"\n"
"Das Feld „%s“ dient dazu, dem System mitzuteilen, wer für die Sicherheit\n"
-"dieses Rechners verantwortlich ist. An dieses Kennzeichen/diese E-Mail\n"
-"Adresse werden sicherheitsrelevante Informationen per E-Mail versandt."
+"dieses Rechners verantwortlich ist. An die dort angegebene E-Mail Adresse "
+"werden sicherheitsrelevante Informationen versandt."
#: ../help.pm:461
#, c-format
msgid "Security Administrator"
msgstr "Sicherheitsadministrator:"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:464
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1111,21 +992,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1142,106 +1025,24 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Sie müssen nun entscheiden, auf welche(n) Partition(en) Ihr neues Mandriva\n"
-"Linux System installiert werden soll. Falls bereits Partitionen existieren\n"
-"(etwa von einer früheren Installation von GNU/Linux oder durch das Erzeugen\n"
-"mit einem anderen Partitionierungswerkzeug), können Sie diese verwenden.\n"
-"Anderenfalls müssen Sie Partitionen definieren.\n"
-"\n"
-"Um Partitionen zu erzeugen müssen Sie erst eine Festplatte wählen. Sie\n"
-"können die Platte wählen in dem Sie „hda“ für die erste IDE-Platte wählen,\n"
-"„sda“ für die erste SCSI-Platte, usw.\n"
-"\n"
-"Um die gewählte Platte zu partitionieren stehen folgende Möglichkeiten zur\n"
-"Verfügung:\n"
-"\n"
-" * „%s“: Betätigen dieser Schaltfläche löscht alle Partitionen auf der\n"
-"markierten Festplatte.\n"
-"\n"
-" * „%s“: Dieser Punkt aktiviert die automatische ext3- und\n"
-"Swap-Partitionen-Erstellung im ungenutzten Bereich Ihrer Festplatte.\n"
-"\n"
-"„%s“: bietet Zugriff auf weitere Möglichkeiten:\n"
-"\n"
-" * „%s“: Sie können hiermit Ihre aktuelle Partitionstabelle auf Diskette\n"
-"speichern.\n"
-"\n"
-" * „%s“: Mit dieser Schaltfläche können Sie eine vorher auf Diskette\n"
-"gesicherte Partitionstabelle wieder herstellen.\n"
-"\n"
-" * „%s“: Sollte Ihre Partitionstabelle zerstört worden sein, können Sie\n"
-"versuchen, mit dieser Schaltfläche eine Restaurierung vorzunehmen. Seien\n"
-"Sie vorsichtig! Es ist nicht unwahrscheinlich, dass dieser Versuch fehl\n"
-"schlägt.\n"
-"\n"
-" * „%s“: Alle Änderungen verwerfen und mit der ursprünglichen\n"
-"Partitionstabelle neu beginnen.\n"
-"\n"
-" * „%s“: Entfernen dieser Markierung führt dazu, dass die Anwender\n"
-"hinterher die Wechselmedien manuell ein- und aushängen müssen.\n"
-"\n"
-" * „%s“: Falls Sie keine Ahnung haben wie Sie die Festplatte partitionieren\n"
-"sollen, wählen Sie diese Schaltfläche. Sie überlassen damit die gesamte\n"
-"Arbeit unserem Assistenten, der mittels „Abra Kadabra“™ Ihre Platte\n"
-"partitioniert.\n"
-"\n"
-" * „%s“: Mit dieser Schaltfläche können Sie alle Einstellungen rückgängig\n"
-"machen.\n"
-"\n"
-" * „%s“: Anbieten bzw. Maskieren von Zusatzmöglichkeiten.\n"
-"\n"
-" * „%s“: Nachdem Sie das Partitionieren Ihrer Festplatte beendet haben,\n"
-"aktivieren Sie diese Schaltfläche, um Ihre Änderungen zu speichern.\n"
-"\n"
-"Wenn Sie die Größe einer Partition festlegen wollen, können Sie die\n"
-"Feineinstellungen mit den Rechts- / Links-Pfeiltasten Ihrer Tastatur\n"
-"vornehmen.\n"
-"\n"
-"Information: Sie können alle Einstellungen per Tastatur vornehmen. Mittels\n"
-"[Tab] und den Hoch-/Runter-Pfeiltasten können Sie sich bewegen.\n"
-"\n"
-"Wenn eine Partition ausgewählt ist, können Sie mittels:\n"
-"\n"
-" * Strg-C - eine neue Partition erstellen (wenn Sie auf einer leeren\n"
-"Partition sind)\n"
-"\n"
-" * Strg-D - die Partition löschen\n"
-"\n"
-" * Strg-M - den Einhängpunkt festlegen.\n"
-"\n"
-"Um mehr Informationen über die verschiedenen Dateisystemtypen zu erhalten,\n"
-"lesen Sie bitte das Kapitel ext2FS in der „Referenz“.\n"
-"\n"
-"Falls Sie die Installation auf einem PPC-Rechner vornehmen, sollten Sie\n"
-"eine mindestens 1MB, große HFS Start-Partition für den\n"
-"Betriebssystemstarter yaboot erstellen. Wenn Sie diese Partition etwas\n"
-"größer dimensionieren, etwa 50MB, haben Sie einen geeigneten Platz, um\n"
-"einen Rettungskern samt RamDisk abzulegen, um in Notfällen starten zu\n"
-"können."
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Partitionstabelle speichern"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Partitionstabelle wiederherstellen"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Partitionstabelle retten"
#: ../help.pm:526
#, c-format
@@ -1251,55 +1052,60 @@ msgstr "Wechselmedien automatisch einhängen"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Assistent"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Rückgängig machen"
#: ../help.pm:526
#, c-format
msgid "Toggle between normal/expert mode"
msgstr "In den Normal-Modus wechseln"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
-"Es wurde mehr als eine Windows-Partition gefunden. Wählen Sie bitte, welche\n"
-"Sie verkleinern wollen, um Platz für Ihr neues Mandriva Linux zu schaffen.\n"
+"Es wurde mehr als eine Windows-Partition auf Ihrem Laufwerk gefunden.\n"
+"Wählen Sie bitte, welche Sie verkleinern wollen, um Platz für Ihr neues "
+"Mageia Betriebssystem zu schaffen.\n"
"\n"
"Die Partitionen werden folgendermaßen aufgelistet: „Linux-Name“,\n"
"„Windows-Name“, „Kapazität“.\n"
@@ -1307,7 +1113,7 @@ msgstr ""
"„Linux-Name“ hat folgende Struktur: „Festplattentyp“, „Festplattennummer“,\n"
"„Partitionsnummer“ (etwa „hda1“).\n"
"\n"
-"„Festplattentyp“ ist „hd“, falls Ihre Platte eine IDE/ATAPI-Platte ist, und\n"
+"„Festplattentyp“ ist „hd“, falls Ihre Platte eine IDE-Platte ist, und\n"
"„sd“, wenn es sich um eine SCSI-Platte handelt.\n"
"\n"
"„Festplattennummer“ ist immer der Buchstabe hinter dem Festplattentyp. Bei\n"
@@ -1321,11 +1127,12 @@ msgstr ""
"\n"
" * „d“ ist „Slave-Platte am sekundären IDE-Controller“;\n"
"\n"
-"Bei SCSI-Platten steht „a“ für „niedrigste SCSI-ID“, „b“ für\n"
-"„zweitniedrigste SCSI-ID“, etc.\n"
+"Bei SCSI-Platten steht „a“ für die „niedrigste SCSI-ID“, „b“ für\n"
+"die „zweitniedrigste SCSI-ID“, etc.\n"
"\n"
-"„Windows-Name“ ist der Buchstabe, den die Partition (vermutlich) unter\n"
-"Windows erhalten würde (die erste Partition der ersten Platte heißt „C:“)."
+"„Windows-Name“ ist der Buchstabe, den die Partition unter\n"
+"Windows erhalten würde (das erste Laufwerk oder die erste Partition heißt "
+"„C:“)."
#: ../help.pm:567
#, c-format
@@ -1340,8 +1147,6 @@ msgstr ""
"„%s“ und wählen Sie den richtigen. Ist Ihr Staat nicht in der Liste, können\n"
"Sie über die Schaltfläche „%s“ eine vollständigere Liste erzwingen."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:572
#, c-format
msgid ""
@@ -1349,45 +1154,45 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Dieser Schritt wird nur aufgerufen, wenn mindestens eine GNU/Linux\n"
"Partition auf Ihren Festplatten gefunden wird.\n"
"\n"
"DrakX fragt Sie nun nach der gewünschten Installationsart. Sie haben die\n"
-"Wahl zwischen einer Aktualisierung einer bereits vorhandenen\n"
-"Mandriva Linux-Version oder einer kompletten Neuinstallation:\n"
+"Wahl zwischen einer kompletten Neuinstallation oder der Aktualisierung einer "
+"bereits vorhandenen Mageia-Version :\n"
"\n"
-" * „%s“: Entfernt komplett ältere Versionen von Mandriva Linux, die noch\n"
-"installiert sind - um genau zu sein, können Sie je nach aktuellem Inhalt\n"
-"Ihrer Platte auch einige ältere Linux- oder anderweitige Partitionen\n"
-"unangetastet behalten. Diese Installationsart ist gut, wenn Sie die\n"
+" * „%s“: Entfernt vollständig ältere Versionen, die noch\n"
+"installiert sind. Abhängig vom Partitionsschema Ihres Laufwerks können Sie "
+"das Überschreiben einiger Ihrer bestehenden Dateien (vor allem der \"home\" "
+"Verzeichnisse) verhindern. Diese Installationsart ist gut, wenn Sie die\n"
"Partitionseinteilung auf Ihrer Festplatte sowieso ändern oder das benutzte\n"
-"Dateisystem austauschen wollen\n"
+"Dateisystem austauschen wollen.\n"
"\n"
-" * „%s“: Mit dieser Variante können Sie eine existierende Mandriva Linux\n"
+" * „%s“: Mit dieser Variante können Sie eine existierende Mageia\n"
"Version aktualisieren. Die Partitionstabellen sowie die persönlichen\n"
"Verzeichnisse der Anwender bleiben erhalten. Alle anderen\n"
"Installationsschritte werden wie bei einer Installation ausgeführt.\n"
"\n"
-"Aktualisierungen von Mandriva Linux „8.1“ oder neueren Systemen sollten\n"
-"problemlos funktionieren. Ältere Versionen von Mandriva Linux sollten Sie\n"
+"Aktualisierungen von Mageia „8.1“ oder neueren Systemen sollten\n"
+"problemlos funktionieren. Ältere Versionen von Mageia sollten Sie\n"
"nicht zu aktualisieren versuchen."
#: ../help.pm:594
@@ -1428,8 +1233,6 @@ msgstr ""
"Tastenkombination Sie zwischen dem von Ihnen gewählten und dem lateinischen\n"
"Layout umschalten wollen."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:612
#, c-format
msgid ""
@@ -1447,8 +1250,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1476,44 +1278,49 @@ msgid ""
msgstr ""
"Als ersten Schritt wählen Sie bitte die gewünschte Sprache.\n"
"\n"
-"Wählen Sie Ihre bevorzugte Sprache für den Installationsvorgang und\n"
-"Systemlaufzeit. Wählen Sie zuerst die Region, in der Sie sich befinden,\n"
+"Diese Auswahl betrifft die Sprache des Installationsvorgangs, der "
+"Dokumentetion und das gesamte System. Wählen Sie zuerst die Region, in der "
+"Sie sich befinden,\n"
"anschließend die Sprache, die Sie sprechen.\n"
"\n"
-"Durch Betätigen der Schaltfläche „%s“ erhalten Sie die Möglichkeit, weitere\n"
-"Sprachen auf Ihrem Rechner zu installieren, um diese später verwenden zu\n"
-"können. Wollen Sie etwa Spaniern muttersprachlichen Zugang zu Ihrem System\n"
+"Durch Betätigen der Schaltfläche „%s“ erhalten Sie die Möglichkeit, weitere "
+"Sprachen auszuwählen, welche auf Ihrem System für die Dokumentationen und "
+"Anwendungen installiert werden sollen. Wollen Sie etwa Spaniern "
+"muttersprachlichen Zugang zu Ihrem System\n"
"erlauben, wählen Sie Deutsch als Hauptsprache in der Liste und im\n"
"Fortgeschrittenen-Bereich „%s“.\n"
"\n"
"Zur UTF-8 (Unicode) Unterstützung: Unicode ist ein Zeichenkodierung, die\n"
"die existierenden Kodierungen ablösen soll und die Zeichen aller\n"
"existierender Sprachen beinhalten. Komplette Unterstützung in GNU/Linux ist\n"
-"leider immer noch nicht gegeben. Daher verwendet Mandriva Linux diese\n"
+"leider immer noch nicht gegeben. Daher verwendet Mageia diese\n"
"Kodierung nur auf Wunsch des Anwenders:\n"
"\n"
-" * Falls Sie eine Sprache nutzen, die eine gut unterstütztes Kodierung\n"
-"verwendet (Sprachen mit Lateinischen Zeichen, Russisch, Griechisch,\n"
-"Japanisch, Chinesisch, Koreanisch, Thailändisch), wird standardmäßig das\n"
+" * Falls Sie eine Sprache nutzen, die eine gut unterstützte Kodierung\n"
+"verwendet (Sprachen mit lateinischen Zeichen - latin1, Russisch, Japanisch, "
+"Chinesisch, Koreanisch, Thailändisch, Griechisch, Türkisch, die meisten "
+"ISO-8859-2 Sprachen), wird standardmäßig die\n"
"klassische Kodierung beibehalten;\n"
"\n"
" * Alle anderen Sprachen verwenden standardmäßig Unicode;\n"
"\n"
-" * Fall Sie zwei oder mehr Sprachen verwenden wollen, die unterschiedliche\n"
-"klassische Kodierungen verwenden, wird ebenfalls Unicode verwendet;\n"
+" * Falls Sie zwei oder mehr Sprachen verwenden wollen, die unterschiedliche\n"
+"klassische Kodierungen verwenden, wird ebenfalls Unicode für das gesamte "
+"System verwendet;\n"
"\n"
" * Schlussendlich kann Unicode vom Anwender auch für Sprachen mit\n"
-"klassischer Kodierung ausgewählt werden, indem er den Punkt „%s“ markiert.\n"
+"klassischer Kodierung festgelegt werden, indem er den Punkt „%s“ markiert.\n"
"\n"
-"Sie sind nicht auf eine weitere Sprache begrenzt. Sie können so viele\n"
-"auswählen, wie Sie wollen, ja sogar alle, indem Sie die Schaltfläche „%s“\n"
+"Beachten Sie, dass Sie nicht auf eine weitere Sprache begrenzt sind. Sie "
+"können so viele zusätzliche Sprachen auswählen, wie Sie wollen oder sogar "
+"alle Sprachen indem Sie die Schaltfläche „%s“\n"
"verwenden. Das Auswählen einer Sprache beeinflusst die installierten\n"
"Übersetzungen der Programme, Schriften, Rechtschreibkorrekturen, etc.\n"
"\n"
"Um die Spracheinstellungen des ganzen Systems zwischen verschiedenen\n"
"Sprachen umzuschalten, starten Sie einfach „localedrake“ unter dem\n"
-"privilegierten Kennzeichen „root“. Wollen Sie die Einstellungen nur für ein\n"
-"Kennzeichen ändern starten Sie denselben Befehl mit eben diesem\n"
+"privilegierten Kennzeichen „root“. Wollen Sie die Einstellungen nur für "
+"einen Zugang ändern starten Sie denselben Befehl mit eben diesem\n"
"Kennzeichen."
#: ../help.pm:650
@@ -1524,10 +1331,8 @@ msgstr "Spanisch"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Standardmäßig Unicode benutzen"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:646
#, c-format
msgid ""
@@ -1606,8 +1411,6 @@ msgstr "mit Mausrad Emulation"
msgid "Universal | Any PS/2 & USB mice"
msgstr "Universal | Alle PS/2 & USB-Mäuse"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:687
#, c-format
msgid ""
@@ -1617,8 +1420,6 @@ msgstr ""
"Wählen Sie bitte den richtigen Anschluss. So ist etwa der unter Windows\n"
"„COM1“ genannte Anschluss in GNU/Linux unter „ttyS0“ erreichbar."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:684
#, c-format
msgid ""
@@ -1633,7 +1434,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1659,13 +1460,11 @@ msgstr ""
"kein Starter installiert. Verwenden Sie diese Möglichkeit nur, wenn Sie\n"
"genau wissen was Sie tun."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:745
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1686,12 +1485,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Hier können Sie das Drucksystem für Ihren Rechner wählen. Andere\n"
-"Betriebssysteme bieten Ihnen nur eines, bei Mandriva Linux können Sie\n"
-"zwischen zwei verschiedenen wählen. jedes dieser Systeme ist für eine\n"
+"Betriebssysteme bieten Ihnen nur eines, bei Mageia können Sie\n"
+"zwischen zwei verschiedenen wählen. Jedes dieser Systeme ist für eine\n"
"bestimmte Konfiguration des Systems am besten geeignet.\n"
"\n"
" * „%s“ -- Es steht für „print, do not queue“ (engl. für „Drucken ohne\n"
@@ -1707,14 +1506,14 @@ msgstr ""
"Drucker drucken, wie auf einem Drucker, der an einem Server auf der anderen\n"
"Seite der Welt hängt. Es ist einfach zu bedienen und kann sowohl als Server\n"
"als auch als Klient für das alte „lpd“-Drucksystem verwendet werden - Es\n"
-"ist somit rückwärtskompatibel. Es ist sehr mächtig, in seiner\n"
+"ist somit rückwärtskompatibel zu älteren Betriebssystemen welche "
+"möglicherweise Druckerdienste benötigen. Es ist sehr mächtig, in seiner\n"
"Grundeinstellung verhält es sich jedoch genau wie „pdq“. Wenn Sie einen\n"
"„lpd“ Server benötigen, müssen Sie einfach nur den „cups-lpd“ Dämon\n"
"starten. „%s“ bietet grafische Konfigurations- und Druckmenüs.\n"
"\n"
"Sie können diese Wahl später immer wieder ändern, indem Sie PrinterDrake\n"
-"aus dem Mandriva Linux Control Center starten und dort die Schaltfläche „%"
-"s“\n"
+"aus dem Mageia Kontrollzentrum starten und dort die Schaltfläche „%s“\n"
"betätigen."
#: ../help.pm:768
@@ -1725,15 +1524,13 @@ msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
msgid "Expert"
msgstr "Expertenmodus"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:771
#, c-format
msgid ""
@@ -1742,7 +1539,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1774,8 +1571,6 @@ msgstr ""
"Adapter erhalten haben oder von den Web-Seiten des Hardware-Anbieters\n"
"(sofern Sie einen WWW-Zugang haben)."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:789
#, c-format
msgid ""
@@ -1787,10 +1582,8 @@ msgstr ""
"angezeigt. Sollte die von DrakX getroffene Auswahl nicht korrekt sein,\n"
"betätigen Sie einfach die Schaltfläche, um sie zu korrigieren."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1830,8 +1623,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1848,87 +1640,17 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
"idea to review this setup."
msgstr ""
-"Nun bekommen Sie eine Zusammenfassung verschiedener Informationen Ihres\n"
-"Systems. Je nach vorhandener Hardware sehen Sie hier (oder eben nicht) die\n"
-"folgende Einträge. Jeder Eintrag besteht aus einem konfigurierbaren Gerät\n"
-"gefolgt vom dessen aktuellen Zustand. Durch Betätigen der Schaltfläche „%s“\n"
-"können Sie diesen ändern.\n"
-"\n"
-" * „%s“: Kontrollieren Sie die aktuelle Tastaturvorgabe und wählen Sie die\n"
-"Schaltfläche, falls Sie die Vorgabe ändern wollen.\n"
-"\n"
-" * „%s“: Kontrollieren Sie, ob die Auswahl des Staates, in dem Sie sich\n"
-"befinden korrekt ist. Falls nicht, betätigen Sie bitte die Schaltfläche\n"
-"„%s“ und wählen Sie den richtigen. Ist Ihr Staat nicht in der Liste, können\n"
-"Sie über die Schaltfläche „%s“ eine vollständigere Liste erzwingen.\n"
-"\n"
-" * „%s“: DrakX versucht die Zeitzone anhand des gewählten Staates zu\n"
-"setzen. Sollte diese Auswahl nicht korrekt sein können Sie durch Betätige\n"
-"der Schaltfläche „%s“ Ihre lokale Zeitzone setzen.\n"
-"\n"
-" * „%s“: Kontrollieren Sie die konfigurierte Maus und betätigen Sie, falls\n"
-"notwendig, die Schaltfläche.\n"
-"\n"
-" * „%s“: Durch Anwahl der Schaltfläche „%s“ startet den Druckerassistenten.\n"
-"Weitere Informationen zu diesem Assistenten erhalten Sie im Drucker-Kapitel\n"
-"des „Starter Handbuch“. Das dort vorgestellte Programm entspricht dem\n"
-"während der Installation angebotenen.\n"
-"\n"
-" * „%s“: Falls eine Soundkarte in Ihrem Rechner gefunden wurde, wird sie\n"
-"hier angezeigt. Sollte die von DrakX getroffene Auswahl nicht korrekt sein,\n"
-"betätigen Sie einfach die Schaltfläche, um sie zu korrigieren.\n"
-"\n"
-" * „%s“: Falls eine TV-Karte in Ihrem Rechner gefunden wurde, wird sie hier\n"
-"angezeigt. Falls Sie eine TV-Karte besitzen, die hier nicht richtig erkannt\n"
-"wurde, können Sie versuchen, diese manuell einzurichten. Betätigen Sie\n"
-"einfach die Schaltfläche „%s“.\n"
-"\n"
-" * „%s“: Falls eine ISDN Karte in Ihrem Rechner gefunden wurde, wird sie\n"
-"hier angezeigt. Durch Anwahl der Schaltfläche „%s“ können Sie die Parameter\n"
-"ändern.\n"
-"\n"
-" * „%s“: DrakX richtet Ihre Grafikumgebung normalerweise in der Auflösung\n"
-"„800×600“ bzw. „1024×768“ ein. Sollte Ihnen das nicht zusagen, können Sie\n"
-"es durch betätigen der Schaltfläche „%s“ ändern.\n"
-"\n"
-" * „%s“: Falls Sie Ihren Internetzugang oder Ihr lokales Netzwerk nun\n"
-"einrichten wollen, können Sie das hier tun. Lesen Sie sich dazu die\n"
-"gedruckte Dokumentation durch oder benutzen Sie das Mandriva Linux Control\n"
-"Center nachdem die Installation beendet ist.\n"
-"\n"
-" * „%s“: Hier können Sie HTTP- und FTP-Proxyadressen eintragen falls Ihre\n"
-"Maschine die Verbindung über einen Proxyserver abwickelt.\n"
-"\n"
-" * „%s“: Dieser Eintrag ermöglicht es Ihnen, die Sicherheitsebene Ihres\n"
-"Systems zu ändern, die Sie in einem früheren Installationsschritt ()\n"
-"gewählt haben.\n"
-"\n"
-" * „%s“: Falls Sie Ihren Rechner mit dem Internet verbinden wollen, ist es\n"
-"sinnvoll sich vor ungebetenen Eindringlingen durch Einrichten einer\n"
-"Firewall zu schützen. Weitere Informationen erhalten Sie im „Starter\n"
-"Handbuch“.\n"
-"\n"
-" * „%s“: Falls Sie die Konfiguration Ihres Betriebssystemstarters\n"
-"(„Bootloader“) ändern wollen, wählen Sie diese Schaltfläche. Es sei\n"
-"angemerkt, dass dieser Punkt sich an fortgeschrittenere Nutzer richtet.\n"
-"Hilfe finden Sie in der gedruckten Dokumentation oder im integrierten\n"
-"Hilfeteil des Mandriva Linux Control Center.\n"
-"\n"
-" * „%s“: Sie können hier die Dienste wählen, die ab dem Start von\n"
-"Mandriva Linux zur Verfügung gestellt werden sollen. Wollen Sie den Rechner\n"
-"als Server verwenden, sollten Sie unbedingt einen Blick auf diese Liste\n"
-"werfen."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "ISDN-Karte"
+msgstr "TV-Karte"
#: ../help.pm:809
#, c-format
@@ -1940,31 +1662,29 @@ msgstr "ISDN-Karte"
msgid "Graphical Interface"
msgstr "Grafikumgebung"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Bitte wählen Sie die Festplatte, die Sie löschen wollen, um Ihr neues\n"
-"Mandriva Linux zu installieren. Bedenken Sie dabei, dass alle Daten auf\n"
+"Mageia zu installieren. Bedenken Sie dabei, dass alle Daten auf\n"
"dieser Platte nach diesem Schritt unwiederbringlich verloren sind!"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Betätigen Sie die Schaltfläche „%s“, wenn Sie alle Partitionen und die\n"
"darauf befindlichen Daten löschen wollen. Bedenken Sie, dass Sie nach\n"
@@ -1982,123 +1702,3 @@ msgstr "Weiter ->"
#, c-format
msgid "<- Previous"
msgstr "<- Zurück"
-
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "„%s“: Durch Anwahl der Schaltfläche „%s“ startet den Druckerassistenten.\n"
-#~ "Weitere Informationen zu diesem Assistenten erhalten Sie im Drucker-"
-#~ "Kapitel\n"
-#~ "des „Starter Handbuch“. Das dort vorgestellte Programm entspricht dem\n"
-#~ "während der Installation angebotenen."
-
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/de/drakx-chapter.xml
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Dies ist der wichtigste Punkt in der Absicherung Ihres neuen\n"
-#~ "GNU/Linux-Systems: Sie müssen das Passwort für „root“ eingeben. „root“ "
-#~ "ist\n"
-#~ "der Systemadministrator. Er ist der einzige der berechtigt ist, neue\n"
-#~ "Software zu installieren, Systemdateien zu ändern oder neue\n"
-#~ "Benutzer anzulegen. Kurz gesagt: „root“ darf alles! Daher müssen\n"
-#~ "Sie auch ein Passwort auswählen, was nicht leicht zu erraten ist; DrakX\n"
-#~ "teilt Ihnen mit, wenn das Passwort zu einfach ist. Sie sehen, dass es "
-#~ "auch\n"
-#~ "möglich ist, kein Passwort zu vergeben. Wir raten Ihnen jedoch dringend\n"
-#~ "davon ab! GNU/Linux ist genauso anfällig für Fehler wie jedes andere \n"
-#~ "Betriebssystem. »root« hat keine Beschränkungen. Er könnte beispielsweise\n"
-#~ "unbeabsichtigterweise alle Daten auf allen Partitionen löschen. Also "
-#~ "sollte\n"
-#~ "es schwierig gemacht werden, „root“ zu werden!\n"
-#~ "\n"
-#~ "Das Passwort sollte eine Mischung aus alphanumerischen Zeichen sein und\n"
-#~ "mindestens acht Zeichen lang. Es sollte niemals irgendwo aufgeschrieben\n"
-#~ "werden.\n"
-#~ "\n"
-#~ "Machen Sie das Passwort aber nicht zu lang oder zu kompliziert: Sie "
-#~ "sollten\n"
-#~ "es sich ohne großen Aufwand merken können.\n"
-#~ "\n"
-#~ "Bei der Eingabe des Passwortes wird nichts angezeigt. Um ein "
-#~ "Verschreiben\n"
-#~ "bei dieser „Blindeingabe“ zu vermeiden müssen Sie das Passwort zweimal\n"
-#~ "eingeben - ein Tippfehler beim ersten Versuch könnte sonst zu einem "
-#~ "Problem\n"
-#~ "werden, da Sie anschließend das „falsche“ Passwort bei der Verbindung "
-#~ "mit\n"
-#~ "dem System eingeben müssten.\n"
-#~ "\n"
-#~ "Wenn Sie wollen, dass der Zugang zu diesem Rechner über einen\n"
-#~ "Authentifizierungsserver verwaltet wird, betätigen Sie die Schaltfläche\n"
-#~ "„%s“.\n"
-#~ "\n"
-#~ "Falls in Ihrem Netzwerk LDAP, NIS oder PDC zur Authentifizierung "
-#~ "verwendet\n"
-#~ "wird, wählen Sie bitte den entsprechenden Menüpunkt für „%s“. Falls Sie "
-#~ "nicht\n"
-#~ "wissen, welches Protokoll Sie verwenden sollen, fragen Sie Ihren\n"
-#~ "Netzwerkadministrator.\n"
-#~ "\n"
-#~ "Wenn Sie Probleme haben, sich Passwörter zu merken, oder Ihr Computer "
-#~ "nie\n"
-#~ "mit dem Internet verbunden wird und Sie allen Benutzern Ihres Computers\n"
-#~ "absolut vertrauen, können Sie die Option „%s“ wählen."
-
-#~ msgid "authentication"
-#~ msgstr "Authentifizierung"
diff --git a/perl-install/install/help/po/el.po b/perl-install/install/help/po/el.po
index 86768d4ce..7e352e7a6 100644
--- a/perl-install/install/help/po/el.po
+++ b/perl-install/install/help/po/el.po
@@ -1,38 +1,43 @@
-# translation of DrakX-el.po to Greek
-# Greek translation for drakfloppy.
-# Copyright (C) 2001,2003 Free Software Foundation, Inc.
-# Thanos Kyritsis <djart@hellug.gr>, 2001.
-# Νίκος Νύκταρης (Nick Niktaris) <niktarin@yahoo.com>, 2003
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
+# Dimitrios Glentadakis <dglent@free.fr>, 2025
+#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-el\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2004-09-15 13:28+0200\n"
-"Last-Translator: Νίκος Νύκταρης (Nick Niktaris) <niktarin@yahoo.com>\n"
-"Language-Team: Greek <nls@tux.hellug.gr>\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: Dimitrios Glentadakis <dglent@free.fr>, 2025\n"
+"Language-Team: Greek (https://app.transifex.com/MageiaLinux/teams/9361/el/)\n"
+"Language: el\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.0.1\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, fuzzy, c-format
+#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
-"\n"
-" Linux\n"
-" Αποδοχή\n"
-"."
+"Πριν συνεχίσετε θα πρέπει να διαβάσετε προσεκτικά τους όρους της άδειας "
+"χρήσης.\n"
+"Καλύπτουν ολόκληρη την διανομή Mageia. Αν συμφωνείτε, επιλέξτε το πλαίσιο "
+"\"%s\" , \n"
+"διαφορετικά, πιέζοντας το κουμπί \"%s\" θα γίνει επανεκκίνηση του υπολογιστή."
#: ../help.pm:20
-#, fuzzy, c-format
+#, c-format
msgid ""
"GNU/Linux is a multi-user system which means each user can have his or her\n"
"own preferences, own files and so on. But unlike \"root\", who is the\n"
@@ -71,63 +76,86 @@ msgid ""
"security), choose the desired user and window manager, then click on\n"
"\"%s\". If you're not interested in this feature, uncheck the \"%s\" box."
msgstr ""
-"Linux χρήστης χρήστης\n"
-"\n"
-" χρήστης\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" χρήστης\n"
-"\n"
-"\n"
-"\n"
-" χρήστης\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Χρήστης\n"
-" χρήστης\n"
-" εξ' ορισμού\n"
-" χρήστης\n"
-"\n"
-" απλό\n"
-"\n"
-"\n"
-" Αποδοχή χρήστης Προσθήκη χρήστης\n"
-"\n"
-" Επόμενο\n"
-"\n"
-" Για Προχωρημένους εξ' ορισμού\n"
-" χρήστης εξ' ορισμού\n"
-"\n"
-" Πότε χρήστης\n"
-"\n"
-"\n"
-" χρήστης Επόμενο\n"
-" Ολοκληρώθηκε\n"
-"."
+"GNU/Linux είναι ένα σύστημα πολλαπλών χρηστών, που σημαίνει ότι κάθε "
+"χρήστης\n"
+"μπορεί να έχει τις δικές του προτιμήσεις, τα δικά του αρχεία κλπ. Όμως, εν "
+"αντιθέσει με\n"
+"τον χρήστη \"root\", ο οποίος είναι ο διαχειριστής του συστήματος, οι "
+"χρήστες που προσθέτετε\n"
+"εδώ, δεν θα είναι εξουσιοδοτημένοι να αλλάξουν οτιδήποτε εκτός από τα δικά "
+"τους αρχεία\n"
+"και διαμορφώσεις, προστατεύοντας έτσι το σύστημα από ακούσιες ή κακόβουλες "
+"αλλαγές\n"
+"που θα μπορούσαν να επηρεάσουν ολόκληρο το σύστημα. Θα πρέπει να "
+"δημιουργήσετε\n"
+"τουλάχιστον έναν τυπικό χρήστη για τον εαυτό σας -- αυτός είναι ο "
+"λογαριασμός που θα πρέπει\n"
+"να χρησιμοποιείτε για καθημερινή χρήση. Αν και είναι πολύ εύκολο να "
+"συνδεθείτε ως \"root\"\n"
+"και να κάνετε τα πάντα, μπορεί επίσης να είναι και πολύ επικίνδυνο! Ένα πολύ "
+"απλό λάθος\n"
+"θα μπορούσε να θέσει και εκτός λειτουργίας το σύστημά σας. Αν κάνετε ένα "
+"σοβαρό λάθος ως\n"
+"τυπικός χρήστης, το χειρότερο που μπορεί να συμβεί είναι να χάσετε μερικές "
+"πληροφορίες,\n"
+"αλλά δεν θα επηρεάσετε ολόκληρο το σύστημα.\n"
+"\n"
+"Στο πρώτο πεδίο σας ζητείται το πραγματικό σας όνομα. Φυσικά, αυτό δεν είναι "
+"υποχρεωτικό\n"
+"-- μπορείτε να εισάγετε το όνομα που επιθυμείτε. Το DrakX θα χρησιμοποιήσει "
+"την πρώτη λέξη\n"
+"που πληκτρολογείτε σε αυτό το πεδίο και θα την αντιγράψει στο πεδίο \"%s\", "
+"το οποίο είναι το όνομα\n"
+"που θα χρησιμοποιεί αυτός ο χρήστης για να συνδεθεί στο σύστημα. Εάν θέλετε, "
+"μπορείτε να παρακάμψετε\n"
+"την προεπιλογή αυτή και να αλλάξετε το όνομα χρήστη. Το επόμενο βήμα αφορά "
+"τον κωδικό πρόσβασης.\n"
+"Από άποψη ασφάλειας, ο κωδικός πρόσβασης ενός μη προνομιούχου (τυπικού) "
+"χρήστη δεν είναι τόσο κρίσιμος\n"
+"όσο ο κωδικός πρόσβασης του διαχειριστή \"root\", αλλά αυτό δεν είναι λόγος "
+"να τον παραμελήσετε, αφήνοντάς τον\n"
+"κενό ή πολύ απλό γιατί μπορεί να θέσετε σε κίνδυνο τα αρχεία του "
+"συγκεκριμένου χρήστη.\n"
+"\n"
+"Με κλικ στο κουμπί \"%s\", μπορείτε να προσθέσετε άλλους χρήστες. Προσθέστε "
+"έναν χρήστη\n"
+"για κάθε έναν πχ από τους φίλους σας, τον πατέρα σας, την αδερφή σας κλπ. "
+"Κάντε κλικ\n"
+"στο \"%s\" όταν τελειώσετε την προσθήκη χρηστών.\n"
+"\n"
+"Κάνοντας κλικ στο κουμπί \"%s\", μπορείτε να αλλάξετε το προεπιλεγμένο "
+"\"κέλυφος\" για τον χρήστη\n"
+"(το προκαθορισμένο κέλυφος είναι το bash).\n"
+"\n"
+"Όταν τελειώσετε με την προσθήκη χρηστών, θα σας ζητηθεί να επιλέξετε έναν "
+"χρήστη\n"
+"που θα συνδέεται αυτόματα στο σύστημα κατά την εκκίνηση του υπολογιστή.\n"
+"Εάν σας ενδιαφέρει αυτή η δυνατότητα (και δεν ανησυχείτε ιδιαίτερα για την "
+"τοπική ασφάλεια),\n"
+"επιλέξτε τον επιθυμητό χρήστη και τον διαχειριστή παραθύρων και στη "
+"συνέχεια, κάντε κλικ στο \"%s\".\n"
+"Εάν δεν σας ενδιαφέρει αυτή η δυνατότητα, αποεπιλέξτε το πλαίσιο \"%s\"."
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Όνομα χρήστη"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Αποδοχή χρήστη"
#: ../help.pm:54
#, c-format
msgid "Do you want to use this feature?"
-msgstr "Θέλετε να χρησιμοποιήσετε αυτή τη λειτουργία;"
+msgstr "Θέλετε να χρησιμοποιήσετε αυτήν την λειτουργία;"
#: ../help.pm:57
-#, fuzzy, c-format
+#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -137,79 +165,96 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
-"Linux ανιχνεύθηκε\n"
-"\n"
-"\n"
-" Ολοκληρώθηκε\n"
-"\n"
-"\n"
-" Linux\n"
-"\n"
-" Όνομα\n"
+"Παρατίθενται εδώ οι υπάρχουσες κατατμήσεις Linux που ανιχνεύθηκαν στον "
+"σκληρό σας δίσκο.\n"
+"Μπορείτε να διατηρήσετε τις επιλογές που έκανε ο οδηγός, καθώς είναι "
+"κατάλληλες για τις\n"
+"περισσότερες τυπικές εγκαταστάσεις. Εάν κάνετε αλλαγές, πρέπει τουλάχιστον "
+"να ορίσετε\n"
+"μια κατάτμηση root (\"/\"). Μην επιλέξετε μια πολύ μικρή κατάτμηση, διότι "
+"δεν θα μπορέσετε\n"
+"να εγκαταστήσετε αρκετές εφαρμογές. Εάν θέλετε να αποθηκεύσετε τα δεδομένα "
+"σας\n"
+"σε ξεχωριστή κατάτμηση, θα χρειαστεί επίσης να δημιουργήσετε μια κατάτμηση "
+"\"/home\"\n"
+"(εφικτό μόνον εάν έχετε περισσότερες από μία κατατμήσεις Linux διαθέσιμες).\n"
"\n"
-" Όνομα\n"
+"Κάθε κατάτμηση παρατίθεται ως εξής: \"Όνομα\", \"Χωρητικότητα\".\n"
"\n"
+"Το \"Όνομα\" έχει τη δομή: \"τύπος σκληρού δίσκου\", \"αριθμός σκληρού "
+"δίσκου\",\n"
+"\"αριθμός κατάτμησης\" (για παράδειγμα, \"hda1\").\n"
"\n"
-" IDE\n"
+"Ο \"Τύπος του σκληρού δίσκου\" είναι \"hd\" εάν ο σκληρός σας δίσκος είναι "
+"IDE και\n"
+"\"sd\" εάν είναι SCSI.\n"
"\n"
+"Ο \"Αριθμός σκληρού δίσκου\" είναι πάντα ένα γράμμα μετά το \"hd\" ή το "
+"\"sd\".\n"
+"Για τους IDE σκληρούς δίσκους:\n"
"\n"
-" IDE\n"
+" * \"a\" σημαίνει \"κύριος σκληρός δίσκος στον κύριο ελεγκτή IDE\".\n"
"\n"
+" * \"b\" σημαίνει \"δευτερεύων σκληρός δίσκος στον κύριο ελεγκτή IDE\".\n"
"\n"
-" πρωτεύουσα IDE\n"
+" * \"c\" σημαίνει \"κύριος σκληρός δίσκος στον δευτερεύοντα ελεγκτή IDE\".\n"
"\n"
-" πρωτεύουσα IDE\n"
+" * \"d\" σημαίνει \"δευτερεύων σκληρός δίσκος στον δευτερεύοντα ελεγκτή "
+"IDE\".\n"
"\n"
-" δευτερεύουσα IDE\n"
-"\n"
-" δευτερεύουσα IDE\n"
-"\n"
-"\n"
-"."
+"Για τους σκληρούς δίσκους SCSI, το \"a\" σημαίνει \"χαμηλότερο SCSI ID\", το "
+"\"b\"\n"
+"σημαίνει \"δεύτερο χαμηλότερο SCSI ID\", κλπ."
#: ../help.pm:88
-#, fuzzy, c-format
+#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Η εγκατάσταση του Mandriva Linux είναι μοιρασμένο σε αρκετά CD-ROM. Το \n"
-"DrakX ξέρει αν ένα επιλεγμένο πακέτο υπάρχει σε άλλο CD-ROM, θα εξάγει το \n"
-"τρέχον CD και θα ζητήσει να εισάγετε ένα άλλο όταν αυτό θα χρειαστεί."
+"Η εγκατάσταση της Mageia διανέμεται σε περισσότερα CD-ROM.\n"
+"Εάν ένα επιλεγμένο πακέτο βρίσκεται σε άλλο CD-ROM, το DrakX θα εξαγάγει\n"
+"το τρέχον CD και θα σας ζητήσει να εισαγάγετε το απαιτούμενο. Εάν δεν το "
+"έχετε\n"
+"στη διάθεσή σας, απλώς κάντε κλικ στο \"%s\"· τα πακέτα που αντιστοιχούν δεν "
+"θα εγκατασταθούν."
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -259,56 +304,76 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"\n"
-" Linux\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Linux\n"
-"\n"
-"\n"
-" Σταθμός Εργασίας\n"
-" Ανάπτυξη\n"
-"\n"
-" Σταθμός Εργασίας\n"
-"\n"
-"\n"
-"\n"
-" Ανάπτυξη\n"
-"\n"
-"\n"
-" Εξυπηρετητής εξυπηρετητής\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Μετακίνηση σε εξέλιξη Ομάδα εργασίας:\n"
-" Ομάδα εργασίας:\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" εξυπηρετητής\n"
-"\n"
-"\n"
-" Linux\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Αναβάθμιση\n"
-" νέο\n"
-"."
+"Τώρα θα πρέπει να προσδιορίσετε ποια προγράμματα θέλετε να εγκαταστήσετε\n"
+"στο σύστημά σας. Υπάρχουν χιλιάδες διαθέσιμα πακέτα για τη Mageia,\n"
+"τα οποία είναι κατηγοριοποιημένα σε ομάδες εφαρμογών για να διευκολυνθεί η "
+"διαχείρισή τους.\n"
+"\n"
+"Η Mageia ταξινομεί τις ομάδες πακέτων σε τέσσερις κατηγορίες. Μπορείτε να "
+"συνδυάσετε\n"
+"και να ταιριάξετε εφαρμογές μεταξύ των κατηγοριών ούτως ώστε μια εγκατάσταση "
+"«Σταθμού Εργασίας»\n"
+"να μπορεί να περιλαμβάνει εφαρμογές από την κατηγορία «Διακομιστής».\n"
+"\n"
+" * \"%s\": αν σκοπεύετε να χρησιμοποιήσετε το μηχάνημά σας ως σταθμό "
+"εργασίας, επιλέξτε\n"
+"μία ή περισσότερες ομάδες από την κατηγορία σταθμού εργασίας.\n"
+"\n"
+"* \"%s\": αν σκοπεύετε να χρησιμοποιήσετε το μηχάνημά σας για "
+"προγραμματισμό, επιλέξτε\n"
+"τις κατάλληλες ομάδες από αυτήν την κατηγορία. Η ειδική ομάδα \"LSB\" θα "
+"ρυθμίσει\n"
+"το σύστημά σας κατά τρόπο ώστε να συμμορφώνεται όσο το δυνατόν περισσότερο\n"
+"με τις προδιαγραφές του Linux Standard Base.\n"
+"\n"
+" Η επιλογή της ομάδας \"LSB\" θα διασφαλίσει 100%% συμμόρφωση του "
+"συστήματος με το LSB.\n"
+"Ωστόσο, ακόμα και αν δεν επιλέξετε την ομάδα \"LSB\", θα έχετε εξίσου ένα "
+"σύστημα που είναι\n"
+"σχεδόν 100%% συμμορφωμένο με το LSB.\n"
+"* \"%s\": αν το μηχάνημά σας προορίζεται για διακομιστή, επιλέξτε ποιες από "
+"τις\n"
+"πιο κοινές υπηρεσίες θέλετε να εγκαταστήσετε στο μηχάνημά σας.\n"
+"\n"
+"* \"%s\": εδώ θα επιλέξετε το προτιμώμενο γραφικό περιβάλλον σας.\n"
+"Πρέπει να επιλέξετε τουλάχιστον ένα εάν θέλετε να έχετε διαθέσιμη γραφική "
+"διεπαφή.\n"
+"\n"
+"Μετακινώντας τον δρομέα του ποντικιού πάνω από το όνομα μιας ομάδας,\n"
+"θα εμφανιστεί ένα σύντομο επεξηγηματικό κείμενο για την ομάδα αυτή.\n"
+"\n"
+"Μπορείτε να επιλέξετε το πλαίσιο \"%s\", το οποίο είναι χρήσιμο αν είστε "
+"εξοικειωμένοι\n"
+"με τα προσφερόμενα πακέτα ή αν θέλετε να έχετε πλήρη έλεγχο για το τι θα "
+"εγκατασταθεί.\n"
+"\n"
+"Αν ξεκινήσετε την εγκατάσταση σε λειτουργία \"%s\", μπορείτε να "
+"αποεπιλέξετε\n"
+"όλες τις ομάδες και να αποτρέψετε την εγκατάσταση νέων πακέτων.\n"
+"Αυτό είναι χρήσιμο για την επιδιόρθωση ή την ενημέρωση μιας υπάρχουσας "
+"εγκατάστασης.\n"
+"\n"
+"Αν αποεπιλέξετε όλες τις ομάδες κατά την πραγματοποίηση μιας τυπικής "
+"εγκατάστασης\n"
+"(αντί αυτήν της αναβάθμισης), θα εμφανιστεί ένα παράθυρο διαλόγου "
+"προτείνοντας\n"
+"διάφορες επιλογές για μια ελάχιστη εγκατάσταση:\n"
+"\n"
+"* \"%s\": εγκαθιστά τον ελάχιστο αριθμό πακέτων που είναι απαραίτητα για να "
+"έχετε ένα\n"
+"λειτουργικό γραφικό περιβάλλον.\n"
+"\n"
+"* \"%s\": εγκαθιστά το βασικό σύστημα μαζί με βασικά εργαλεία και την "
+"τεκμηρίωσή τους.\n"
+"Αυτή η εγκατάσταση είναι κατάλληλη για τη ρύθμιση ενός διακομιστή.\n"
+"\n"
+"* \"%s\": θα εγκαταστήσει τον απόλυτα ελάχιστο αριθμό πακέτων που "
+"απαιτούνται\n"
+"για να έχετε ένα λειτουργικό σύστημα Linux. Με αυτού του τύπου την "
+"εγκατάσταση θα έχετε\n"
+"μόνο μια διεπαφή γραμμής εντολών. Το συνολικό μέγεθος αυτής της "
+"εγκατάστασης\n"
+"είναι περίπου 65 MB."
#: ../help.pm:149 ../help.pm:591
#, c-format
@@ -316,17 +381,17 @@ msgid "Upgrade"
msgstr "Αναβάθμιση"
#: ../help.pm:149
-#, fuzzy, c-format
+#, c-format
msgid "With basic documentation"
-msgstr "Με την βασική τεκμηρίωση (συνιστάται!)"
+msgstr "Με την βασική τεκμηρίωση"
#: ../help.pm:149
-#, fuzzy, c-format
+#, c-format
msgid "Truly minimal install"
-msgstr "Ελάχιστη Εγκατάσταση"
+msgstr "Πραγματικά ελάχιστη εγκατάσταση"
#: ../help.pm:152
-#, fuzzy, c-format
+#, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -339,10 +404,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -362,47 +427,64 @@ msgid ""
"another installation. See the second tip of the last step on how to create\n"
"such a floppy."
msgstr ""
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" εξυπηρετητής\n"
-" Ομάδα εργασίας:\n"
-"\n"
-" εξ' ορισμού Linux\n"
-"\n"
-"\n"
-" Linux\n"
-"\n"
-" Όχι Ναι\n"
-"\n"
-" εξ' ορισμού\n"
-"\n"
-" απενεργοποίηση\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"."
+"Αν επιλέξετε να εγκαταστήσετε πακέτα μεμονωμένα, ο εγκαταστάτης θα σας\n"
+"παρουσιάσει ένα δέντρο που περιέχει όλα τα πακέτα ταξινομημένα κατά ομάδες\n"
+"και υποομάδες. Κατά την περιήγησή σας στο δέντρο, μπορείτε να επιλέξετε "
+"ολόκληρες\n"
+"ομάδες, υποομάδες ή μεμονωμένα πακέτα.\n"
+"\n"
+"Κάθε φορά που επιλέγετε ένα πακέτο στο δέντρο, θα εμφανίζεται μια περιγραφή "
+"στα δεξιά\n"
+"για να σας ενημερώνει σχετικά με το συγκεκριμένο πακέτο.\n"
+"\n"
+"!! Αν έχει επιλεγεί κάποιο πακέτο εξυπηρετητή, είτε επειδή το επιλέξατε "
+"εσείς είτε επειδή\n"
+"ήταν μέρος μιας ομάδας πακέτων, θα σας ζητηθεί να επιβεβαιώσετε την "
+"εγκατάσταση\n"
+"αυτών των εξυπηρετητών. Εξ ορισμού, η Mageia θα ξεκινήσει αυτόματα "
+"οποιαδήποτε\n"
+"εγκατεστημένη υπηρεσία κατά την εκκίνηση του συστήματος. Ακόμα και αν είναι "
+"ασφαλείς\n"
+"και δεν υπάρχουν γνωστοποιημένα προβλήματα κατά την κυκλοφορία της "
+"διανομής,\n"
+"είναι πιθανό να ανακαλύφθηκαν προβλήματα ασφαλείας μετά την ολοκλήρωση "
+"αυτής\n"
+"της έκδοσης της Mageia. Αν δεν γνωρίζετε τι ακριβώς κάνει μια συγκεκριμένη "
+"υπηρεσία\n"
+"και γιατί εγκαθίσταται, τότε κάντε κλικ στο \"%s\". Κάνοντας κλικ στο \"%s\" "
+"θα εγκαταστήσετε\n"
+"τις υπηρεσίες στο κατάστιχο και αυτές θα ξεκινήσουν αυτόματα κατά την "
+"εκκίνηση του συστήματος. !!\n"
+"\n"
+"Η επιλογή \"%s\" χρησιμοποιείται για να απενεργοποιηθεί το προειδοποιητικό "
+"μήνυμα που εμφανίζεται\n"
+"κάθε φορά που ο εγκαταστάτης επιλέγει αυτόματα ένα πακέτο για την επίλυση "
+"μιας εξάρτησης.\n"
+"Ορισμένα πακέτα εξαρτώνται από άλλα και η εγκατάσταση ενός συγκεκριμένου "
+"πακέτου μπορεί\n"
+"να απαιτεί την εγκατάσταση κάποιου άλλου πακέτου. Ο εγκαταστάτης μπορεί να "
+"προσδιορίσει\n"
+"ποια πακέτα απαιτούνται για να καλύψουν μια εξάρτηση και να ολοκληρώσει "
+"επιτυχώς την εγκατάσταση.\n"
+"\n"
+"Το μικρό εικονίδιο δισκέτας στη βάση του κατάστιχου σας επιτρέπει να "
+"φορτώσετε ένα κατάστιχο πακέτων\n"
+"που δημιουργήθηκε σε μια προηγούμενη εγκατάσταση. Αυτό είναι χρήσιμο αν "
+"έχετε αρκετούς υπολογιστές\n"
+"που θέλετε να διαμορφώσετε με τον ίδιο τρόπο. Κάνοντας κλικ σε αυτό το "
+"εικονίδιο, θα σας ζητηθεί\n"
+"να εισαγάγετε την δισκέτα που δημιουργήθηκε στο τέλος μιας άλλης "
+"εγκατάστασης.\n"
+"Δείτε τη δεύτερη συμβουλή του τελευταίου βήματος για το πώς να δημιουργήσετε "
+"μια τέτοια δισκέτα."
#: ../help.pm:183
#, c-format
msgid "Automatic dependencies"
-msgstr ""
+msgstr "Αυτόματες εξαρτήσεις"
#: ../help.pm:185
-#, fuzzy, c-format
+#, c-format
msgid ""
"This dialog is used to select which services you wish to start at boot\n"
"time.\n"
@@ -421,24 +503,30 @@ msgid ""
"Please remember that some services can be dangerous if they're enabled on a\n"
"server. In general, select only those services you really need. !!"
msgstr ""
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" εξ' ορισμού\n"
-"\n"
-"\n"
-" εξυπηρετητής\n"
-"\n"
-" εξυπηρετητής\n"
-"!"
+"Αυτός ο διάλογος χρησιμοποιείται για να επιλέξετε τις υπηρεσίες θέλετε\n"
+"να ξεκινούν κατά την εκκίνηση.\n"
+"\n"
+"Το DrakX θα εμφανίσει όλες τις διαθέσιμες υπηρεσίες στην τρέχουσα "
+"εγκατάσταση.\n"
+"Εξετάστε προσεκτικά καθεμία από αυτές και αποεπιλέξτε όσες δεν χρειάζονται "
+"κατά την εκκίνηση.\n"
+"\n"
+"Όταν επιλέγετε μια υπηρεσία, θα εμφανίζεται ένα σύντομο επεξηγηματικό "
+"κείμενο. Ωστόσο,\n"
+"αν δεν είστε σίγουρος-η αν μια υπηρεσία είναι χρήσιμη ή όχι, είναι πιο "
+"ασφαλές να το αφήσετε ως έχει.\n"
+"\n"
+"!! Σε αυτό το στάδιο, να είστε πολύ προσεκτικός-η αν σκοπεύετε να "
+"χρησιμοποιήσετε τον υπολογιστή\n"
+"σας ως διακομιστή: λογικά δεν θέλετε να ξεκινούν υπηρεσίες που δεν "
+"χρειάζεστε.\n"
+"Να θυμάστε ότι ορισμένες υπηρεσίες μπορεί να είναι επικίνδυνες αν είναι "
+"ενεργοποιημένες\n"
+"σε έναν διακομιστή. Γενικά, επιλέξτε μόνο τις υπηρεσίες που πραγματικά "
+"χρειάζεστε. !!"
#: ../help.pm:209
-#, fuzzy, c-format
+#, c-format
msgid ""
"GNU/Linux manages time in GMT (Greenwich Mean Time) and translates it to\n"
"local time according to the time zone you selected. If the clock on your\n"
@@ -453,31 +541,36 @@ msgid ""
"choose a time server located near you. This option actually installs a time\n"
"server which can be used by other machines on your local network as well."
msgstr ""
-"Linux\n"
-"\n"
-"\n"
-" HardDrake Linux\n"
-"\n"
-" Τομέας Windows \n"
-"\n"
-"\n"
-" εξυπηρετητής Διαδίκτυο\n"
-" Διαδίκτυο\n"
-" εξυπηρετητής\n"
-" εξυπηρετητής."
+"Το GNU/Linux διαχειρίζεται τον χρόνο σε GMT (Greenwich Mean Time) και τον\n"
+"μεταφράζει σε τοπική ώρα σύμφωνα με τη ζώνη ώρας που έχετε επιλέξει.\n"
+"Αν η ώρα στη μητρική σας κάρτα είναι ρυθμισμένη στην τοπική ώρα,\n"
+"μπορείτε να απενεργοποιήσετε αυτήν την επιλογή αποεπιλέγοντας το \"%s\",\n"
+"το οποίο θα ενημερώσει το GNU/Linux ότι η ώρα του συστήματος και της "
+"μητρικής κάρτας\n"
+"είναι στην ίδια ζώνη ώρας. Αυτό είναι χρήσιμο επίσης όταν περισσότερα "
+"λειτουργικά\n"
+"συστήματα είναι εγκατεστημένα στο μηχάνημα.\n"
+"\n"
+"Η επιλογή \"%s\" θα ρυθμίσει αυτόματα την ώρα του συστήματος μέσω ενός "
+"απομακρυσμένου\n"
+"διακομιστή ώρας στο διαδίκτυο. Αυτό απαιτεί μια διαδικτυακή σύνδεση.\n"
+"Συνιστάται η επιλογή ενός διακομιστή ώρας που βρίσκεται κοντά σας.\n"
+"Αυτή η επιλογή εγκαθιστά στην πραγματικότητα έναν διακομιστή ώρας, ο οποίος "
+"μπορεί\n"
+"να χρησιμοποιηθεί και από άλλες μηχανές στο τοπικό σας δίκτυο."
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Το ρολόι του υλικού είναι ρυθμισμένο σε ώρα GMT"
#: ../help.pm:213
-#, fuzzy, c-format
+#, c-format
msgid "Automatic time synchronization"
-msgstr "Αυτόματος συγχρονισμός ώρας (χρήση NTP)"
+msgstr "Αυτόματος συγχρονισμός της ώρας"
#: ../help.pm:223
-#, fuzzy, c-format
+#, c-format
msgid ""
"Graphic Card\n"
"\n"
@@ -489,22 +582,22 @@ msgid ""
"with or without 3D acceleration, you're asked to choose the server which\n"
"best suits your needs."
msgstr ""
+"Κάρτα γραφικών\n"
"\n"
+"Ο εγκαταστάτης θα εντοπίσει και θα ρυθμίσει αυτόματα την κάρτα γραφικών\n"
+"που είναι εγκατεστημένη στο μηχάνημά σας. Σε περίπτωση που η επιλογή\n"
+"δεν είναι σωστή, μπορείτε να επιλέξετε από αυτό το κατάστιχο την κάρτα σας.\n"
"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" εξυπηρετητής\n"
-"."
+"Σε περίπτωση που διατίθενται διαφορετικοί διακομιστές για την κάρτα σας,\n"
+"με ή χωρίς επιτάχυνση 3D, θα σας ζητηθεί να επιλέξετε τον διακομιστή\n"
+"που ταιριάζει καλύτερα στις ανάγκες σας."
#: ../help.pm:234
-#, fuzzy, c-format
+#, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -558,60 +651,72 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
-"Σύστημα Linux\n"
-"\n"
-" Linux\n"
-"\n"
-"\n"
+"Το X (X Window System) είναι η καρδιά του γραφικού περιβάλλοντος\n"
+"του GNU/Linux, στην οποία βασίζονται όλα τα γραφικά περιβάλλοντα\n"
+"(KDE, GNOME, AfterStep, WindowMaker, κ.λπ.) που περιλαμβάνονται στη Mageia.\n"
"\n"
+"Θα δείτε ένα κατάστιχο με διάφορες παραμέτρους ώστε να επιτύχετε\n"
+"την βέλτιστη γραφική απεικόνιση.\n"
"\n"
+"Κάρτα γραφικών\n"
"\n"
+" Ο εγκαταστάτης συνήθως ανιχνεύει και ρυθμίζει αυτόματα την κάρτα "
+"γραφικών\n"
+"που είναι εγκατεστημένη στον υπολογιστή σας. Αν η ανίχνευση δεν είναι "
+"σωστή,\n"
+"μπορείτε να επιλέξετε την σωστή κάρτα από το κατάστιχο.\n"
"\n"
+" Στην περίπτωση που υπάρχουν διαφορετικοί διαθέσιμοι εξυπηρετητές για την "
+"κάρτα σας,\n"
+"με ή χωρίς επιτάχυνση 3D, θα σας ζητηθεί να επιλέξετε αυτόν που θεωρείτε τον "
+"πιο κατάλληλο.\n"
"\n"
"\n"
"\n"
-" εξυπηρετητής\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Οθόνη\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Ανάλυση\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Δοκιμή\n"
+"Οθόνη\n"
"\n"
+" Κανονικά, ο εγκαταστάτης θα ανιχνεύσει και θα ρυθμίσει αυτόματα την "
+"οθόνη.\n"
+"Αν η ανίχνευση δεν είναι σωστή, μπορείτε να επιλέξετε την σωστή οθόνη από το "
+"κατάστιχο.\n"
"\n"
-" Ναι\n"
"\n"
"\n"
+"Ανάλυση \n"
+" Εδώ μπορείτε να επιλέξετε τις διαθέσιμες αναλύσεις και βάθη χρώματος για\n"
+"το γραφικό σας υλικό. Επιλέξτε αυτήν που ταιριάζει καλύτερα στις ανάγκες "
+"σας\n"
+"(μπορείτε να την αλλάξετε και μετά την εγκατάσταση). Μια προεπισκόπηση\n"
+"της επιλεγμένης διαμόρφωσης εμφανίζεται στην εικόνα της οθόνης.\n"
"\n"
"\n"
"\n"
+"Δοκιμή \n"
+" Ανάλογα με το υλικό σας, αυτή η επιλογή μπορεί να μην εμφανιστεί.\n"
"\n"
+" Το σύστημα θα προσπαθήσει να ανοίξει μια γραφική οθόνη στη ζητούμενη "
+"ανάλυση.\n"
+"Αν δείτε το δοκιμαστικό μήνυμα κατά τη διάρκεια της δοκιμής και απαντήσετε "
+"\"%s\",\n"
+"τότε το DrakX θα προχωρήσει στο επόμενο βήμα. Αν δεν το δείτε, αυτό "
+"σημαίνει\n"
+"ότι κάποιο μέρος της αυτόματης διαμόρφωσης ήταν λανθασμένο και η δοκιμή\n"
+"θα τερματιστεί αυτόματα μετά από 12 δευτερόλεπτα, επιστρέφοντάς σας στο "
+"μενού.\n"
+"Αλλάξτε τις ρυθμίσεις μέχρι να επιτύχετε την σωστή γραφική απεικόνιση.\n"
"\n"
-" Επιλογές\n"
"\n"
"\n"
+"Επιλογές\n"
"\n"
-" Όχι εξυπηρετητής\n"
-"."
+" Σε αυτό το στάδιο, μπορείτε να επιλέξετε αν θέλετε το σύστημά σας να\n"
+"μεταβαίνει αυτόματα σε γραφικό περιβάλλον κατά την εκκίνηση.\n"
+"Προφανώς, μπορεί να θέλετε να επιλέξετε \"%s\" αν ο υπολογιστής σας\n"
+"προορίζεται να λειτουργήσει ως διακομιστής ή αν δεν καταφέρατε\n"
+"να ρυθμίσετε σωστά την οθόνη."
#: ../help.pm:291
-#, fuzzy, c-format
+#, c-format
msgid ""
"Monitor\n"
"\n"
@@ -621,12 +726,13 @@ msgid ""
msgstr ""
"Οθόνη\n"
"\n"
-"\n"
-"\n"
-"."
+" Κανονικά, ο εγκαταστάτης θα εντοπίσει και θα ρυθμίσει αυτόματα\n"
+"την οθόνη που είναι συνδεδεμένη στο μηχάνημά σας. Αν δεν κάνει την\n"
+"σωστή επιλογή, μπορείτε να επιλέξετε από αυτό το κατάστιχο την\n"
+"οθόνη που είναι συνδεδεμένη στον υπολογιστή σας."
#: ../help.pm:298
-#, fuzzy, c-format
+#, c-format
msgid ""
"Resolution\n"
"\n"
@@ -637,24 +743,25 @@ msgid ""
msgstr ""
"Ανάλυση\n"
"\n"
-"\n"
-"\n"
-"\n"
-"."
+" Εδώ μπορείτε να επιλέξετε τις διαθέσιμες αναλύσεις και τα βάθη χρώματος\n"
+"για το γραφικό σας υλικό. Επιλέξτε αυτό που ταιριάζει καλύτερα στις ανάγκες "
+"σας\n"
+"(θα μπορείτε να κάνετε αλλαγές μετά την εγκατάσταση).\n"
+"Ένα δείγμα της επιλεγμένης διαμόρφωσης εμφανίζεται στην εικόνα της οθόνης."
#: ../help.pm:306
-#, fuzzy, c-format
+#, c-format
msgid ""
"In the situation where different servers are available for your card, with\n"
"or without 3D acceleration, you're asked to choose the server which best\n"
"suits your needs."
msgstr ""
-"\n"
-" εξυπηρετητής\n"
-"."
+"Στην περίπτωση που υπάρχουν διαθέσιμοι διαφορετικοί διακομιστές\n"
+"για την κάρτα σας, με ή χωρίς επιτάχυνση 3D, θα σας ζητηθεί να επιλέξετε\n"
+"τον διακομιστή που εξυπηρετεί καλύτερα τις ανάγκες σας."
#: ../help.pm:311
-#, fuzzy, c-format
+#, c-format
msgid ""
"Options\n"
"\n"
@@ -663,48 +770,54 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
+"Επιλογές\n"
"\n"
-"\n"
-" Όχι\n"
-" εξυπηρετητής\n"
-"."
+" Σε αυτό το στάδιο, μπορείτε να επιλέξετε αν θέλετε το σύστημά σας να\n"
+"μεταβαίνει αυτόματα σε γραφικό περιβάλλον κατά την εκκίνηση.\n"
+"Προφανώς, μπορεί να θέλετε να επιλέξετε \"%s\" αν ο υπολογιστής σας\n"
+"προορίζεται να λειτουργήσει ως διακομιστής ή αν δεν καταφέρατε\n"
+"να ρυθμίσετε σωστά την οθόνη."
#: ../help.pm:319
-#, fuzzy, c-format
+#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -713,15 +826,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -734,77 +847,99 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"\n"
-" Linux\n"
-"\n"
-"\n"
-" νέο\n"
-" Linux\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" χρήστης\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" ανιχνεύθηκε\n"
-" Linux\n"
-"\n"
-" εξ' ορισμού\n"
-"\n"
-"\n"
-" Τομέας Windows Τομέας Windows \n"
-"\n"
-" Linux Διαγραφή\n"
-" Τομέας Windows \n"
-" Τομέας Windows Αλλαγή μεγέθους\n"
-"\n"
-" Τομέας Windows \n"
-"\n"
-" Linux Τομέας Windows \n"
-"\n"
-"\n"
-" Τομέας Windows \n"
-"\n"
-" Τομέας Windows νέο\n"
-"\n"
-" Διαγραφή\n"
-" νέο Linux\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Λίστα Αφαίρεσης Τομέας Windows \n"
-" Όλα\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Προσαρμοσμένο\n"
-"\n"
-"\n"
-" Ολοκληρώθηκε\n"
-"\n"
-"\n"
-"."
+"Τώρα πρέπει να αποφασίσετε πού θέλετε να εγκαταστήσετε το λειτουργικό\n"
+"σύστημα Mageia στον σκληρό σας δίσκο. Αν ο σκληρός σας δίσκος είναι κενός\n"
+"ή αν ένα υπάρχον λειτουργικό σύστημα χρησιμοποιεί όλον τον διαθέσιμο χώρο,\n"
+"θα χρειαστεί να τον διαμερίσετε. Βασικά, η κατάτμηση ενός σκληρού δίσκου "
+"σημαίνει\n"
+"την λογική διαίρεσή του για την δημιουργία του απαραίτητου χώρου για την "
+"εγκατάσταση\n"
+"του νέου σας συστήματος Mageia.\n"
+"\n"
+"Επειδή η διαδικασία της κατάτμησης ενός σκληρού δίσκου είναι συνήθως μη "
+"αναστρέψιμη\n"
+"και μπορεί να οδηγήσει σε απώλεια δεδομένων, μπορεί να φανεί τρομακτική και "
+"αγχωτική\n"
+"για έναν άπειρο χρήστη. Ευτυχώς, το DrakX περιλαμβάνει έναν οδηγό που "
+"απλοποιεί\n"
+"αυτήν την διαδικασία. Πριν προχωρήσετε σε αυτό το βήμα, διαβάστε προσεκτικά\n"
+"την υπόλοιπη ενότητα και, πάνω απ’ όλα, πάρτε τον χρόνο σας.\n"
+"\n"
+"Ανάλογα με τη διαμόρφωση του σκληρού σας δίσκου, υπάρχουν διάφορες "
+"διαθέσιμες επιλογές:\n"
+"\n"
+" *.\"%s\". Αυτή η επιλογή θα εκτελέσει αυτόματη κατάτμηση των κενών σας "
+"δίσκων.\n"
+"Αν επιλέξετε αυτήν την επιλογή, δεν θα εμφανιστούν περαιτέρω προτροπές.\n"
+"\n"
+" *.\"%s\". Ο οδηγός έχει εντοπίσει μία ή περισσότερες υπάρχουσες κατατμήσεις "
+"Linux\n"
+"στον σκληρό σας δίσκο. Αν θέλετε να τις χρησιμοποιήσετε, επιλέξτε αυτήν την "
+"επιλογή.\n"
+"Στη συνέχεια, θα σας ζητηθεί να επιλέξετε τα σημεία προσάρτησης που "
+"σχετίζονται\n"
+"με κάθε κατάτμηση. Τα κληρονομημένα σημεία προσάρτησης είναι ήδη επιλεγμένα\n"
+"και ως επί το πλείστον είναι καλή ιδέα να τα διατηρήσετε.\n"
+"\n"
+" *.\"%s\". Αν τα Microsoft Windows είναι εγκατεστημένα στον σκληρό σας "
+"δίσκο\n"
+"και καταλαμβάνουν όλον τον διαθέσιμο χώρο, θα χρειαστεί να δημιουργήσετε\n"
+"ελεύθερο χώρο για το GNU/Linux. Για να το κάνετε αυτό, μπορείτε είτε να "
+"διαγράψετε\n"
+"την κατάτμηση των Microsoft Windows και όλα τα δεδομένα της\n"
+"(δείτε την επιλογή ``Διαγραφή ολόκληρου του δίσκου\") είτε να αλλάξετε το "
+"μέγεθος\n"
+"της κατάτμησης FAT ή NTFS των Windows. Η αλλαγή μεγέθους μπορεί να γίνει\n"
+"χωρίς απώλεια δεδομένων, εφόσον έχετε προηγουμένως εκτελέσει ανασυγκρότηση\n"
+"του δίσκου στα Windows. Συνιστάται να δημιουργήσετε αντίγραφα ασφαλείας\n"
+"των δεδομένων σας πριν προχωρήσετε. Αυτή η επιλογή προτείνεται αν θέλετε\n"
+"να χρησιμοποιείτε και την Mageia και τα Windows στον ίδιο υπολογιστή.\n"
+"\n"
+" Πριν επιλέξετε αυτήν την επιλογή, κατανοήστε ότι μετά την διαδικασία "
+"αυτή,\n"
+"το μέγεθος της κατάτμησης των Windows θα είναι μικρότερο, οπότε θα έχετε\n"
+"λιγότερο ελεύθερο χώρο για αποθήκευση δεδομένων ή εγκατάσταση νέου "
+"λογισμικού.\n"
+"\n"
+" * \"%s\". Αν θέλετε να διαγράψετε όλα τα δεδομένα και όλες τις κατατμήσεις\n"
+"που υπάρχουν στον σκληρό σας δίσκο και να τον αντικαταστήσετε πλήρως με το "
+"νέο σας\n"
+"σύστημα Mageia, επιλέξτε αυτήν την επιλογή. Προσέξτε διότι δεν θα μπορείτε "
+"να αναιρέσετε\n"
+"αυτήν την διαδικασία μόλις την επιβεβαιώσετε.\n"
+"\n"
+" !! Αν επιλέξετε αυτήν την επιλογή, όλα τα δεδομένα στον δίσκο σας θα "
+"διαγραφούν.!!\n"
+"\n"
+" * \"%s\". Αυτή η επιλογή εμφανίζεται όταν ο σκληρός σας δίσκος "
+"καταλαμβάνεται\n"
+"εξ ολοκλήρου από τα Microsoft Windows. Αν την επιλέξετε, όλα τα δεδομένα\n"
+"στον δίσκο θα διαγραφούν και η διαδικασία εγκατάστασης θα ξεκινήσει από την "
+"αρχή\n"
+"με νέα κατάτμηση.\n"
+"\n"
+" !! Αν επιλέξετε αυτήν την επιλογή, όλα τα δεδομένα στον δίσκο σας θα "
+"χαθούν. !!\n"
+"\n"
+" * \"%s\". Επιλέξτε αυτήν την επιλογή αν θέλετε να διαμερίσετε χειροκίνητα "
+"τον σκληρό σας δίσκο.\n"
+"Προσοχή, αυτή είναι μια ισχυρή αλλά επικίνδυνη επιλογή και μπορεί πολύ "
+"εύκολα\n"
+"να οδηγήσει σε οριστική απώλεια όλων των δεδομένων σας.\n"
+"Συνιστάται μόνο αν έχετε προηγούμενη εμπειρία με διαμερίσεις δίσκων.\n"
+"Για περισσότερες οδηγίες σχετικά με τη χρήση του εργαλείου DiskDrake,\n"
+"ανατρέξτε στην ενότητα ``Διαχείριση των κατατμήσεών σας\" στον ``Οδηγό "
+"Εκκίνησης\"."
#: ../help.pm:377
-#, fuzzy, c-format
+#, c-format
msgid "Use existing partition"
-msgstr "Χρήση υπαρχουσών κατατμήσεων"
+msgstr "Χρήση μιας υπάρχουσας κατάτμησης"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Χρήση του ελεύθερου χώρου στην κατάτμηση Microsoft Windows®"
#: ../help.pm:370
#, c-format
@@ -812,7 +947,7 @@ msgid "Erase entire disk"
msgstr "Διαγραφή ολόκληρου του δίσκου"
#: ../help.pm:380
-#, fuzzy, c-format
+#, c-format
msgid ""
"There you are. Installation is now complete and your GNU/Linux system is\n"
"ready to be used. Just click on \"%s\" to reboot the system. Do not forget\n"
@@ -848,58 +983,76 @@ msgid ""
"\"mformat a:\", or \"fdformat /dev/fd0\" followed by \"mkfs.vfat\n"
"/dev/fd0\"."
msgstr ""
-"Linux\n"
-" Επόμενο\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Για Προχωρημένους\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Επαναφόρτωση\n"
-"\n"
-"\n"
-" Αυτόματο\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Αποθήκευση\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Linux\n"
+"Η εγκατάσταση ολοκληρώθηκε και το σύστημά σας GNU/Linux είναι\n"
+"έτοιμο προς χρήση. Απλώς κάντε κλικ στο \"%s\" για να επανεκκινήσετε το "
+"σύστημα.\n"
+"Μην ξεχάσετε να αφαιρέσετε το μέσο εγκατάστασης (CD-ROM ή δισκέτα).\n"
+"Το πρώτο πράγμα που θα δείτε αφού ο υπολογιστής σας ολοκληρώσει τις δοκιμές "
+"υλικού\n"
+"είναι το μενού εκκίνησης, το οποίο σας δίνει την επιλογή του λειτουργικού "
+"συστήματος που θέλετε να εκκινήσετε.\n"
+"\n"
+"Το κουμπί \"%s\" εμφανίζει δύο ακόμα κουμπιά για να:\n"
+"\n"
+" * \"%s\": σας επιτρέπει να δημιουργήσετε μια δισκέτα εγκατάστασης η οποία "
+"θα\n"
+"εκτελέσει αυτόματα μια ολόκληρη εγκατάσταση χωρίς τη βοήθεια ενός χειριστή,\n"
+"παρομοίως με την εγκατάσταση που μόλις διαμορφώσατε.\n"
+"\n"
+" Σημειώστε ότι υπάρχουν δύο διαφορετικές επιλογές αφού κάνετε κλικ σε "
+"αυτό\n"
+"το κουμπί:\n"
+"\n"
+" * \"%s\". Αυτή είναι μια ημι-αυτοματοποιημένη εγκατάσταση. Το βήμα της "
+"κατάτμησης\n"
+"είναι η μόνη διαδραστική διαδικασία.\n"
+"\n"
+" * \"%s\". Πλήρως αυτοματοποιημένη εγκατάσταση: ο σκληρός δίσκος "
+"ξαναγράφεται εντελώς,\n"
+"όλα τα δεδομένα χάνονται.\n"
+"\n"
+" Αυτή η δυνατότητα είναι πολύ χρήσιμη όταν εγκαθιστάτε σε πολλές "
+"παρόμοιες\n"
+"μηχανές. Δείτε την ενότητα Auto install στην ιστοσελίδα μας για "
+"περισσότερες\n"
+"πληροφορίες.\n"
+"\n"
+" * \"%s\"(*): αποθηκεύει μια λίστα από τα πακέτα που επιλέχθηκαν σε αυτήν "
+"την εγκατάσταση.\n"
+"Για να χρησιμοποιήσετε αυτήν την επιλογή με άλλη εγκατάσταση, εισαγάγετε τη "
+"δισκέτα και\n"
+"ξεκινήστε την εγκατάσταση. Στην προτροπή, πατήστε το πλήκτρο [F1], "
+"πληκτρολογήστε >>linux\n"
+"defcfg=\"floppy\"<< και πατήστε το πλήκτρο [Enter].\n"
+"\n"
+"(*) Χρειάζεστε μια δισκέτα διαμορφωμένη σε FAT. Για να δημιουργήσετε μία σε "
+"GNU/Linux,\n"
+"πληκτρολογήστε \"mformat a:\", ή \"fdformat /dev/fd0\" ακολουθούμενο από "
+"\"mkfs.vfat\n"
+"/dev/fd0\"."
#: ../help.pm:412
-#, fuzzy, c-format
+#, c-format
msgid "Generate auto-install floppy"
msgstr "Δημιουργία δισκέτας αυτόματης εγκατάστασης"
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Επανάληψη"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Αυτοματοποιημένος"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Αποθήκευση της επιλογής των πακέτων"
#: ../help.pm:408
-#, fuzzy, c-format
+#, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -918,40 +1071,45 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
msgstr ""
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Επόμενο\n"
-"\n"
-" Προηγούμενο\n"
-" νέο Linux\n"
-"\n"
-" Για Προχωρημένους\n"
-"."
+"Αν επιλέξατε να επαναχρησιμοποιήσετε κάποιες παλιές κατατμήσεις GNU/Linux, "
+"ίσως θέλετε να\n"
+"τις επαναμορφοποιήσετε και να διαγράψετε τα δεδομένα που περιέχουν. Για να "
+"το κάνετε, παρακαλώ\n"
+"επιλέξτε και αυτές τις κατατμήσεις.\n"
+"\n"
+"Σημειώστε ότι δεν είναι απαραίτητο να επαναμορφοποιήσετε όλες τις "
+"προϋπάρχουσες\n"
+"κατατμήσεις. Πρέπει να επαναμορφοποιήσετε τις κατατμήσεις που περιέχουν το "
+"λειτουργικό\n"
+"σύστημα (όπως \"/\", \"/usr\" ή \"/var\"), αλλά δεν χρειάζεται να "
+"επαναμορφοποιήσετε\n"
+"κατατμήσεις που περιέχουν δεδομένα που θέλετε να διατηρήσετε (συνήθως \"/"
+"home\").\n"
+"\n"
+"Παρακαλώ να είστε προσεκτικοί κατά την επιλογή των κατατμήσεων. Μετά την "
+"ολοκλήρωση της μορφοποίησης,\n"
+"όλα τα δεδομένα στις επιλεγμένες κατατμήσεις θα διαγραφούν και δεν θα "
+"μπορείτε να τα ανακτήσετε.\n"
+"\n"
+"Κάντε κλικ στο \"%s\" όταν είστε έτοιμοι να μορφοποιήσετε τις κατατμήσεις.\n"
+"\n"
+"Κάντε κλικ στο \"%s\" αν θέλετε να επιλέξετε άλλη κατάτμηση για την "
+"εγκατάσταση του νέου\n"
+"λειτουργικού συστήματος Mageia.\n"
+"\n"
+"Κάντε κλικ στο \"%s\" αν επιθυμείτε να επιλέξετε κατατμήσεις οι οποίες θα "
+"ελεγχθούν για\n"
+"κατεστραμμένα μπλοκ στον δίσκο."
#: ../help.pm:437
-#, fuzzy, c-format
+#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -963,20 +1121,25 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Linux\n"
-"\n"
-"\n"
-" Διαδίκτυο\n"
-" Ναι Διαδίκτυο Όχι\n"
-"\n"
-"\n"
-" Ναι\n"
-"\n"
-" Εγκατάσταση\n"
-" Άκυρο."
+"Μέχρι τη στιγμή που θα εγκαταστήσετε τη Mageia, είναι πιθανό\n"
+"να έχουν γίνει κάποιες ενημερώσεις σε πακέτα από την αρχική έκδοση.\n"
+"Μπορεί να έχουν διορθωθεί σφάλματα και να έχουν επιλυθεί ζητήματα\n"
+"ασφαλείας. Για να μπορέσετε να επωφεληθείτε από αυτές τις ενημερώσεις,\n"
+"μπορείτε να τις λάβετε από το διαδίκτυο. Επιλέξτε \"%s\" αν έχετε μια "
+"λειτουργική\n"
+"σύνδεση στο διαδίκτυο, ή \"%s\" αν προτιμάτε να εγκαταστήσετε τα ενημερωμένα "
+"πακέτα αργότερα.\n"
+"\n"
+"Η επιλογή \"%s\" θα εμφανίσει μια λίστα με τοποθεσίες ιστού από τις οποίες "
+"μπορούν\n"
+"να ληφθούν ενημερώσεις. Θα πρέπει να επιλέξετε μία που να είναι κοντά σας.\n"
+"Θα εμφανιστεί ένα δέντρο επιλογής πακέτων: εξετάστε την επιλογή και πατήστε "
+"\"%s\"\n"
+"για να λάβετε και να εγκαταστήσετε το επιλεγμένο πακέτο(α), ή \"%s\" για να "
+"το ακυρώσετε."
#: ../help.pm:450
-#, fuzzy, c-format
+#, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -985,46 +1148,57 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
"security. Security messages will be sent to that address."
msgstr ""
-"επίπεδο\n"
-" επίπεδο\n"
-"\n"
-" Διαδίκτυο επίπεδο\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" εξ' ορισμού."
+"Σε αυτό το σημείο, το DrakX θα σας επιτρέψει να επιλέξετε το επίπεδο "
+"ασφαλείας\n"
+"που επιθυμείτε για το μηχάνημά σας. Ως γενικός κανόνας, το επίπεδο "
+"ασφαλείας\n"
+"θα πρέπει να είναι υψηλότερο εάν το μηχάνημα πρόκειται να περιέχει κρίσιμα "
+"δεδομένα\n"
+"ή να εκτίθεται απευθείας στο Διαδίκτυο. Ένα υψηλότερο επίπεδο ασφαλείας "
+"επιτυγχάνεται\n"
+"γενικά σε βάρος της ευκολίας χρήσης.\n"
+"\n"
+"Εάν δεν ξέρετε τι να επιλέξετε, κρατήστε την προεπιλεγμένη επιλογή.\n"
+"Θα μπορείτε να την αλλάξετε αργότερα με το εργαλείο draksec,\n"
+"που είναι μέρος του Κέντρου Ελέγχου Mageia.\n"
+"\n"
+"Συμπληρώστε το πεδίο «%s» με τη διεύθυνση ηλεκτρονικού ταχυδρομείου\n"
+"του υπεύθυνου για την ασφάλεια. Τα μηνύματα ασφαλείας θα αποστέλλονται\n"
+"σε αυτήν τη διεύθυνση."
#: ../help.pm:461
-#, fuzzy, c-format
+#, c-format
msgid "Security Administrator"
-msgstr "Διαχειριστής Ασφαλείας:"
+msgstr "Διαχειριστής ασφαλείας"
#: ../help.pm:464
-#, fuzzy, c-format
+#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1040,21 +1214,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1071,247 +1247,267 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
+"Σε αυτό το σημείο, πρέπει να επιλέξετε ποιες κατατμήσεις θα χρησιμοποιηθούν\n"
+"για την εγκατάσταση του συστήματος Mageia. Εάν έχουν ήδη οριστεί οι "
+"κατατμήσεις,\n"
+"είτε από προηγούμενη εγκατάσταση του GNU/Linux είτε από κάποιο άλλο εργαλείο "
+"κατάτμησης,\n"
+"μπορείτε να χρησιμοποιήσετε τις υπάρχουσες κατατμήσεις.\n"
+"Διαφορετικά, πρέπει να ορίσετε τις κατατμήσεις του σκληρού δίσκου.\n"
"\n"
-" Linux\n"
-" Linux\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" IDE\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Άλλα\n"
-"\n"
-" Αποθήκευση\n"
-"\n"
-"\n"
-"\n"
-" Επαναφορά\n"
-"\n"
-"\n"
-"\n"
-"\n"
+"Για την δημιουργία των κατατμήσεων, πρέπει πρώτα να επιλέξετε έναν σκληρό "
+"δίσκο.\n"
+"Μπορείτε να επιλέξετε τον δίσκο για κατάτμηση κάνοντας κλικ στο ``hda'' για "
+"τον πρώτο IDE δίσκο,\n"
+"στο ``hdb'' για τον δεύτερο, ``sda'' για τον πρώτο SCSI δίσκο κ.ο.κ.\n"
"\n"
+"Για την κατάτμηση του επιλεγμένου σκληρού δίσκου, μπορείτε να "
+"χρησιμοποιήσετε τις εξής επιλογές:\n"
"\n"
+" * \"%s\": αυτή η επιλογή διαγράφει όλες τις κατατμήσεις στον επιλεγμένο "
+"σκληρό δίσκο.\n"
"\n"
+" * \"%s\": αυτή η επιλογή σας επιτρέπει να δημιουργήσετε αυτόματα "
+"κατατμήσεις ext4 και swap\n"
+"στον ελεύθερο χώρο του σκληρού σας δίσκου.\n"
"\n"
+"\"%s\": παρέχει πρόσβαση σε επιπλέον λειτουργίες:\n"
"\n"
-" μετά βίας\n"
+" * \"%s\": αποθηκεύει τον πίνακα κατατμήσεων σε μια δισκέτα. Χρήσιμο για "
+"μελλοντική επαναφορά\n"
+"του πίνακα κατατμήσεων εάν χρειαστεί. Συνιστάται ανεπιφύλακτα να εκτελέσετε "
+"αυτό το βήμα.\n"
"\n"
+" * \"%s\": επιτρέπει την επαναφορά ενός προηγουμένως αποθηκευμένου πίνακα "
+"κατατμήσεων από μια δισκέτα.\n"
"\n"
+" * \"%s\": εάν ο πίνακας κατατμήσεων είναι κατεστραμμένος, μπορείτε να "
+"προσπαθήσετε να τον ανακτήσετε\n"
+"χρησιμοποιώντας αυτήν την επιλογή. Παρακαλώ να είστε προσεκτικοί, καθώς δεν "
+"λειτουργεί πάντα.\n"
"\n"
-" Οδηγός\n"
+" * \"%s\": ακυρώνει όλες τις αλλαγές και επαναφορτώνει τον αρχικό πίνακα "
+"κατατμήσεων του σκληρού δίσκου.\n"
"\n"
+" * \"%s\": αποεπιλέγοντας αυτήν την επιλογή, οι χρήστες θα πρέπει να "
+"προσαρτούν\n"
+"και να αποπροσαρτούν χειροκίνητα τα αφαιρούμενα μέσα, όπως δισκέτες και CD-"
+"ROM.\n"
"\n"
+" * \"%s\": χρησιμοποιήστε αυτήν την επιλογή εάν θέλετε να χρησιμοποιήσετε "
+"έναν οδηγό\n"
+"για την κατάτμηση του σκληρού σας δίσκου. Συνιστάται εάν δεν έχετε καλή "
+"κατανόηση\n"
+"της λειτουργίας κατάτμησης.\n"
"\n"
-" Αναίρεση\n"
+" * \"%s\": χρησιμοποιήστε αυτήν την επιλογή για να ακυρώσετε τις αλλαγές "
+"σας.\n"
"\n"
+" * \"%s\": επιτρέπει επιπλέον ενέργειες στις κατατμήσεις (τύπος, επιλογές, "
+"μορφοποίηση)\n"
+"και παρέχει περισσότερες πληροφορίες για τον σκληρό δίσκο.\n"
"\n"
+" * \"%s\": όταν ολοκληρώσετε την κατάτμηση του σκληρού σας δίσκου, αυτή η "
+"επιλογή\n"
+"θα αποθηκεύσει τις αλλαγές σας στον δίσκο.\n"
"\n"
+"Κατά τον ορισμό του μεγέθους μιας κατάτμησης, μπορείτε να καθορίσετε\n"
+"με ακρίβεια το μέγεθός της χρησιμοποιώντας τα πλήκτρα βέλους του "
+"πληκτρολογίου σας.\n"
"\n"
+"Σημείωση: μπορείτε να επιλέξετε οποιαδήποτε επιλογή χρησιμοποιώντας το "
+"πληκτρολόγιο.\n"
+"Περιηγηθείτε στις κατατμήσεις χρησιμοποιώντας το [Tab] και τα βέλη [Πάνω/"
+"Κάτω].\n"
"\n"
-" Ολοκληρώθηκε\n"
+"Όταν μια κατάτμηση είναι επιλεγμένη, μπορείτε να χρησιμοποιήσετε:\n"
"\n"
+" * Ctrl-c για να δημιουργήσετε μια νέα κατάτμηση (όταν έχει επιλεγεί μια "
+"κενή κατάτμηση).\n"
"\n"
-" Πότε\n"
+" * Ctrl-d για να διαγράψετε μια κατάτμηση.\n"
"\n"
+" * Ctrl-m για να ορίσετε το σημείο προσάρτησης.\n"
"\n"
-"\n"
-" Ολοκληρώθηκε\n"
-"\n"
-" Πότε\n"
-"\n"
-" νέο\n"
-"\n"
-" Διαγραφή\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" HFS\n"
-"\n"
-"\n"
-"\n"
-"."
+"Για να λάβετε πληροφορίες σχετικά με τους διαθέσιμους τύπους συστημάτων "
+"αρχείων,\n"
+"παρακαλώ διαβάστε το κεφάλαιο ext2FS από το ``Εγχειρίδιο Αναφοράς''.\n"
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Αποθήκευση του πίνακα κατάτμησης"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Επαναφορά του πίνακα κατάτμησης"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Διάσωση του πίνακα της κατάτμησης"
#: ../help.pm:526
-#, fuzzy, c-format
+#, c-format
msgid "Removable media auto-mounting"
-msgstr "Αυτόματη σύνδεση αποσπώμενων μονάδων"
+msgstr "Αυτόματη προσάρτηση του αφαιρουμένου μέσου"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Οδηγός"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Αναίρεση"
#: ../help.pm:526
-#, fuzzy, c-format
+#, c-format
msgid "Toggle between normal/expert mode"
-msgstr "Αλλαγή σε κανονικό τρόπο λειτουργίας"
+msgstr "Εναλλαγή μεταξύ τυπικής/προχωρημένης λειτουργίας"
#: ../help.pm:536
-#, fuzzy, c-format
+#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
-"Περισσότερες των μία κατατμήσεις Windows βρέθηκαν στον δίσκο σας. Παρακαλώ \n"
-"επιλέξτε ποια θέλετε να συρρικνώσετε για να εγκαταστήσετε το Mandriva "
-"Linux.\n"
+"Έχουν εντοπιστεί περισσότερες από μία κατατμήσεις Microsoft στον σκληρό σας "
+"δίσκο.\n"
+"Παρακαλώ επιλέξτε την κατάτμηση που θέλετε να αλλάξετε μέγεθος για να "
+"εγκαταστήσετε\n"
+"το νέο σας λειτουργικό σύστημα Mageia.\n"
"\n"
-"Κάθε κατάτμηση αναφέρεται ως: \"Όνομα Linux\", \"Όνομα Windows\"\n"
+"Κάθε κατάτμηση παρατίθεται ως εξής: \"Όνομα Linux\", \"Όνομα Windows\", "
"\"Χωρητικότητα\".\n"
"\n"
-"Το όνομα Linux σημαίνει τα εξής: \"Τύπος δίσκου\",\"αριθμός δίσκου\",\n"
-"\"αριθμός κατάτμησης για παράδειγμα, \"hda1\").\n"
-"\n"
-"Ο \"Τύπος δίσκου\" είναι \"hd\" εάν πρόκειται για δίσκο IDE και \"sd\" \n"
-"για SCSI δίσκο.\n"
-"\n"
-"Ο \" αριθμός δίσκου\"είναι πάντα ένα γράμμα μετά το \"hd\" ή \"sd\". Για\n"
-"τους IDE δίσκους: \n"
+"\"Δομή του \"Ονόματος Linux\": \"Τύπος σκληρού δίσκου\", \"Αριθμός σκληρού "
+"δίσκου\", \"Αριθμός κατάτμησης\" (π.χ., hda1).\n"
"\n"
-" * \"a\" είναι ο \"master δίσκος στον πρώτο ελεγκτή IDE\",\n"
+"Ο \"Τύπος σκληρού δίσκου\" είναι \"hd\" αν είναι IDE σκληρός δίσκος και "
+"\"sd\" αν είναι SCSI σκληρός δίσκος.\n"
"\n"
-" * \"b\" είναι ο \"slave δίσκος στον πρώτο ελεγκτή IDE\",\n"
+"\"Αριθμός σκληρού δίσκου: Πρόκειται πάντα για ένα γράμμα μετά το hd ή το "
+"sd.\n"
"\n"
-" * \"c\" είναι ο \"master δίσκος στον δεύτερο ελεγκτή IDE\",\n"
+"Για IDE σκληρούς δίσκους:\n"
+" - \"a\" κύριος δίσκος στον πρωτεύοντα IDE ελεγκτή.\n"
+" - \"b\" βοηθητικός δίσκος στον πρωτεύοντα IDE ελεγκτή.\n"
+" - \"c\" κύριος δίσκος στον δευτερεύοντα IDE ελεγκτή.\n"
+" - \"d\" βοηθητικός δίσκος στον δευτερεύοντα IDE ελεγκτή.\n"
"\n"
-" * \"d\" είναι ο \"slave δίσκος στον δεύτερο ελεγκτή IDE\".\n"
+"Για SCSI σκληρούς δίσκους:\n"
+" -\"a\" ο δίσκος με το χαμηλότερο SCSI ID.\n"
+" - \"b\" ο δίσκος με το δεύτερο χαμηλότερο SCSI ID, κ.ο.κ.\n"
"\n"
-"Για δίσκους SCSI, \"a\" είναι ο πρώτος δίσκος, \"b\" είναι ο δεύτερος "
-"δίσκος\n"
-" κλπ...\n"
-"\n"
-"Το \"Όνομα Windows\" είναι το γράμμα της κατάτμησης όπως φαίνεται από τα\n"
-"Windows (ο πρώτος δίσκος ή κατάτμηση λέγεται \"C:\")."
+"- Όνομα Windows:\n"
+" Είναι το γράμμα που αντιστοιχεί στον σκληρό δίσκο στα Windows (ο πρώτος "
+"δίσκος ή η πρώτη κατάτμηση ονομάζεται \"C:\")."
#: ../help.pm:567
-#, fuzzy, c-format
+#, c-format
msgid ""
"\"%s\": check the current country selection. If you're not in this country,\n"
"click on the \"%s\" button and choose another. If your country is not in "
"the\n"
"list shown, click on the \"%s\" button to get the complete country list."
msgstr ""
-"\"Χώρα\": ελέγξτε την επιλογή χώρας. Αν δεν είστε σε αυτή τη χώρα,\n"
-"κάντε κλικ στο πλήκτρο και επιλέξτε μια άλλη."
+"«%s»: ελέγξτε την τρέχουσα επιλογή χώρας. Αν δεν βρίσκεστε σε αυτήν τη χώρα,"
+"κάντε κλικ στο κουμπί «%s» και επιλέξτε άλλη. Αν η χώρα σας δεν υπάρχει "
+"στοκατάστιχο, κάντε κλικ στο κουμπί «%s» για να δείτε το πλήρες κατάστιχο "
+"χωρών."
#: ../help.pm:572
-#, fuzzy, c-format
+#, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
-"ενεργοποίηση τώρα Linux\n"
-"\n"
-"\n"
-" νέο\n"
-" Linux\n"
-"\n"
-" Εγκατάσταση\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Αναβάθμιση\n"
-" Linux\n"
-" χρήστης\n"
-"\n"
-"\n"
-" Αναβάθμιση Linux\n"
-" εκτελείται Αναβάθμιση\n"
-" Linux."
+"Αυτό το βήμα ενεργοποιείται μόνο αν έχει εντοπιστεί υπάρχουσα κατάτμηση\n"
+"GNU/Linux στον υπολογιστή σας.\n"
+"\n"
+"Το DrakX χρειάζεται τώρα να γνωρίζει αν επιθυμείτε να πραγματοποιήσετε μια\n"
+"νέα εγκατάσταση ή μια αναβάθμιση ενός υπάρχοντος συστήματος Mageia:\n"
+"\n"
+" * \"%s\". Στις περισσότερες περιπτώσεις, αυτή η επιλογή διαγράφει πλήρως το "
+"παλιό σύστημα.\n"
+"Ωστόσο, ανάλογα με το υπάρχον σχήμα κατάτμησης, μπορείτε να αποτρέψετε τη "
+"διαγραφή\n"
+"ορισμένων δεδομένων σας (ιδίως των προσωπικών καταλόγων home).\n"
+"Αν επιθυμείτε να αλλάξετε τον τρόπο κατάτμησης των σκληρών σας δίσκων ή να "
+"τροποποιήσετε\n"
+"το σύστημα αρχείων, θα πρέπει να επιλέξετε αυτήν την επιλογή.\n"
+"\n"
+" * \"%s\". Αυτή η κλάση εγκατάστασης σας επιτρέπει να ενημερώσετε τα πακέτα\n"
+"που είναι ήδη εγκατεστημένα στο Mageia σύστημά σας.\n"
+"Το υπάρχον σχήμα κατάτμησης και τα προσωπικά δεδομένα σας δεν θα "
+"τροποποιηθούν.\n"
+"Τα περισσότερα από τα υπόλοιπα βήματα ρύθμισης παραμένουν διαθέσιμα\n"
+"και είναι παρόμοια με αυτά μιας κανονικής εγκατάστασης.\n"
+"\n"
+"Η χρήση της επιλογής \"Αναβάθμιση\" συνιστάται μόνο για συστήματα Mageia "
+"έκδοσης 8.1 ή νεότερης.Η αναβάθμιση από παλαιότερες εκδόσεις του Mageia δεν "
+"συνιστάται."
#: ../help.pm:594
-#, fuzzy, c-format
+#, c-format
msgid ""
"Depending on the language you chose (), DrakX will automatically select a\n"
"particular type of keyboard configuration. Check that the selection suits\n"
@@ -1330,24 +1526,32 @@ msgid ""
"dialog will allow you to choose the key binding which will switch the\n"
"keyboard between the Latin and non-Latin layouts."
msgstr ""
-"εξ' ορισμού\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Άλλα\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"."
+"Ανάλογα με τη γλώσσα που επιλέξατε (), το DrakX θα επιλέξει αυτόματα\n"
+"έναν συγκεκριμένο τύπο ρύθμισης πληκτρολογίου.\n"
+"Ελέγξτε αν η επιλογή σας εξυπηρετεί ή επιλέξτε μια διαφορετική διάταξη "
+"πληκτρολογίου.\n"
+"\n"
+"Επίσης, μπορεί να μην έχετε πληκτρολόγιο που να αντιστοιχεί ακριβώς στη "
+"γλώσσα σας\n"
+"για παράδειγμα, αν είστε Ελβετός που μιλάει αγγλικά, μπορεί να έχετε "
+"ελβετικό πληκτρολόγιο.\n"
+"Ή αν μιλάτε αγγλικά και βρίσκεστε στο Κεμπέκ, μπορεί να βρεθείτε σε παρόμοια "
+"κατάσταση,\n"
+"όπου η μητρική σας γλώσσα και η χώρα στην οποία αντιστοιχεί το πληκτρολόγιό "
+"σας δεν ταιριάζουν.\n"
+"Σε κάθε περίπτωση, αυτό το βήμα της εγκατάστασης σάς επιτρέπει να επιλέξετε "
+"κατάλληλο\n"
+"πληκτρολόγιο από μια λίστα.\n"
+"\n"
+"Κάντε κλικ στο κουμπί «%s» για να εμφανιστεί η λίστα με τα υποστηριζόμενα "
+"πληκτρολόγια.\n"
+"\n"
+"Αν επιλέξετε διάταξη πληκτρολογίου που βασίζεται σε μη λατινικό αλφάβητο,\n"
+"το επόμενο παράθυρο διαλόγου θα σας επιτρέψει να ορίσετε το πλήκτρο που\n"
+"θα αλλάζει τη διάταξη μεταξύ λατινικής και μη λατινικής."
#: ../help.pm:612
-#, fuzzy, c-format
+#, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1363,8 +1567,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1390,38 +1593,66 @@ msgid ""
"by the entire system. Running the command as a regular user will only\n"
"change the language settings for that particular user."
msgstr ""
-"\n"
-"\n"
-"\n"
-"\n"
-" Για Προχωρημένους\n"
-"\n"
-"\n"
-" Ισπανία\n"
-" εξ' ορισμού Για Προχωρημένους\n"
-"\n"
-"\n"
-"\n"
-" Επόμενο\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" χρήστης\n"
-" χρήστης."
+"Το πρώτο βήμα είναι να επιλέξετε τη γλώσσα της προτίμησής σας.\n"
+"\n"
+"Η επιλογή γλώσσας επηρεάζει τον εγκαταστάτη, την τεκμηρίωση και\n"
+"γενικά ολόκληρο το σύστημα. Πρώτα επιλέξτε την περιοχή στην οποία\n"
+"βρίσκεστε και στη συνέχεια τη γλώσσα που μιλάτε.\n"
+"\n"
+"Κάνοντας κλικ στο κουμπί «%s», μπορείτε να επιλέξετε και άλλες γλώσσες\n"
+"για εγκατάσταση στον σταθμό εργασίας σας, ώστε να εγκατασταθούν τα "
+"αντίστοιχα\n"
+"αρχεία για την τεκμηρίωση του συστήματος και τις εφαρμογές.\n"
+"Για παράδειγμα, αν το σύστημά σας πρόκειται να χρησιμοποιηθεί και από\n"
+"ισπανόφωνους χρήστες, επιλέξτε τα αγγλικά ως προεπιλεγμένη γλώσσα\n"
+"από την προβολή δέντρου και το «%s» στην ενότητα για προχωρημένους.\n"
+"\n"
+"Σχετικά με την υποστήριξη UTF-8 (Unicode):\n"
+"Το Unicode είναι μια νέα κωδικοποίηση χαρακτήρων που αποσκοπεί στην κάλυψη\n"
+"όλων των γλωσσών. Ωστόσο, η πλήρης υποστήριξή του στο GNU/Linux εξακολουθεί\n"
+"να βρίσκεται υπό ανάπτυξη. Για τον λόγο αυτό, η χρήση του UTF-8 στο Mageia\n"
+"εξαρτάται από τις επιλογές του χρήστη:\n"
+"\n"
+" * Αν επιλέξετε μια γλώσσα με ισχυρή υποστήριξη παλαιότερης κωδικοποίησης\n"
+"(όπως οι λατινικές γλώσσες με latin1, τα ρωσικά, ιαπωνικά, κινεζικά, "
+"κορεατικά,\n"
+"ταϊλανδέζικα, ελληνικά, τουρκικά, οι περισσότερες γλώσσες του iso-8859-2),\n"
+"θα χρησιμοποιηθεί αυτή η παλαιότερη κωδικοποίηση από προεπιλογή.\n"
+"\n"
+" * Άλλες γλώσσες θα χρησιμοποιούν το Unicode από προεπιλογή.\n"
+"\n"
+" * Αν απαιτούνται δύο ή περισσότερες γλώσσες και αυτές δεν χρησιμοποιούν\n"
+"την ίδια κωδικοποίηση, τότε θα χρησιμοποιηθεί το Unicode για ολόκληρο το "
+"σύστημα.\n"
+"\n"
+" * Τέλος, μπορείτε να επιβάλετε τη χρήση του Unicode σε όλο το σύστημα "
+"επιλέγοντας\n"
+"την επιλογή «%s», ανεξαρτήτως των γλωσσών που έχουν επιλεγεί.\n"
+"\n"
+"Σημειώστε ότι δεν περιορίζεστε στην επιλογή μιας μόνο επιπλέον γλώσσας.\n"
+"Μπορείτε να επιλέξετε περισσότερες ή ακόμα και να τις εγκαταστήσετε όλες,\n"
+"ενεργοποιώντας το πεδίο «%s».\n"
+"Η υποστήριξη για μια γλώσσα περιλαμβάνει μεταφράσεις, γραμματοσειρές,\n"
+"ορθογραφικούς ελέγχους κ.λπ.\n"
+"\n"
+"Για να αλλάξετε τη γλώσσα του συστήματος μεταξύ των γλωσσών που έχουν "
+"εγκατασταθεί,\n"
+"μπορείτε να εκτελέσετε την εντολή localedrake ως root.\n"
+"Αυτό θα αλλάξει τη γλώσσα σε ολόκληρο το σύστημα. Εκτελώντας την εντολή ως\n"
+"απλός χρήστης, η αλλαγή θα ισχύει μόνο για τον συγκεκριμένο λογαριασμό."
#: ../help.pm:650
#, c-format
msgid "Espanol"
-msgstr ""
+msgstr "Ισπανικά"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Χρήση του Unicode ως προεπιλογή"
#: ../help.pm:646
-#, fuzzy, c-format
+#, c-format
msgid ""
"Usually, DrakX has no problems detecting the number of buttons on your\n"
"mouse. If it does, it assumes you have a two-button mouse and will\n"
@@ -1456,40 +1687,55 @@ msgid ""
"Test the buttons and check that the mouse pointer moves on-screen as you\n"
"move your mouse about."
msgstr ""
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" σειριακό\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" εξ' ορισμού\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" Με ροδάκι ανιχνεύθηκε\n"
-"\n"
-"\n"
-" Επόμενο\n"
-" ενεργοποίηση τώρα\n"
-"\n"
-"\n"
-"."
+"Συνήθως, το DrakX δεν αντιμετωπίζει πρόβλημα στον εντοπισμό του αριθμού\n"
+"των κουμπιών του ποντικιού σας. Αν δεν τα καταφέρει, θα υποθέσει ότι "
+"διαθέτετε\n"
+"ποντίκι δύο κουμπιών και θα το ρυθμίσει για εξομοίωση τρίτου κουμπιού.\n"
+"Το τρίτο κουμπί σε ένα ποντίκι δύο κουμπιών μπορεί να προσομοιωθεί πατώντας\n"
+"ταυτόχρονα το αριστερό και το δεξί κουμπί. Το DrakX θα αναγνωρίσει αυτόματα\n"
+"αν το ποντίκι σας χρησιμοποιεί διεπαφή PS/2, σειριακή ή USB.\n"
+"\n"
+"Αν έχετε ποντίκι με 3 κουμπιά χωρίς τροχό κύλισης, μπορείτε να επιλέξετε\n"
+"ένα ποντίκι τύπου «%s». Το DrakX θα το ρυθμίσει έτσι ώστε να μπορείτε να\n"
+"προσομοιώσετε τον τροχό κύλισης: για να το κάνετε αυτό, πατήστε το μεσαίο "
+"κουμπί\n"
+"και μετακινήστε τον δείκτη του ποντικιού πάνω και κάτω.\n"
+"\n"
+"Αν για οποιονδήποτε λόγο επιθυμείτε να καθορίσετε διαφορετικό τύπο "
+"ποντικιού,\n"
+"επιλέξτε τον από την παρεχόμενη λίστα.\n"
+"\n"
+"Μπορείτε να επιλέξετε την καταχώριση «%s» για να χρησιμοποιήσετε έναν\n"
+"«γενικό» τύπο ποντικιού, ο οποίος λειτουργεί με σχεδόν όλα τα ποντίκια.\n"
+"\n"
+"Αν επιλέξετε ποντίκι διαφορετικό από το προεπιλεγμένο, θα εμφανιστεί οθόνη "
+"δοκιμής.\n"
+"Χρησιμοποιήστε τα κουμπιά και τον τροχό για να ελέγξετε ότι οι ρυθμίσεις "
+"είναι σωστές\n"
+"και ότι το ποντίκι λειτουργεί κανονικά. Αν το ποντίκι δεν λειτουργεί σωστά,\n"
+"πατήστε το πλήκτρο διαστήματος ή το πλήκτρο [Enter] για να ακυρώσετε\n"
+"τη δοκιμή και θα επιστρέψετε στη λίστα ποντικιών.\n"
+"\n"
+"Ορισμένες φορές τα ποντίκια με τροχό δεν εντοπίζονται αυτόματα, οπότε θα "
+"χρειαστεί\n"
+"να επιλέξετε το ποντίκι σας από τη λίστα. Βεβαιωθείτε ότι επιλέγετε αυτό "
+"που\n"
+"αντιστοιχεί στη θύρα στην οποία είναι συνδεδεμένο το ποντίκι σας.\n"
+"Αφού επιλέξετε ένα ποντίκι και πατήσετε το κουμπί «%s», θα εμφανιστεί\n"
+"μια εικόνα ποντικιού στην οθόνη. Κυλήστε τον τροχό για να βεβαιωθείτε\n"
+"ότι ανταποκρίνεται σωστά. Καθώς γυρίζετε τον τροχό, θα βλέπετε και τον\n"
+"τροχό στην οθόνη να κινείται. Δοκιμάστε και τα κουμπιά και ελέγξτε ότι\n"
+"ο δείκτης κινείται στην οθόνη όταν μετακινείτε το ποντίκι."
#: ../help.pm:684
-#, fuzzy, c-format
+#, c-format
msgid "with Wheel emulation"
-msgstr "Προσομοίωση Κουμπιών"
+msgstr "με προσομοίωση τροχού"
#: ../help.pm:684
#, c-format
msgid "Universal | Any PS/2 & USB mice"
-msgstr ""
+msgstr "Γενικό | Οποιοδήποτε PS/2 & USB ποντίκι"
#: ../help.pm:687
#, c-format
@@ -1498,7 +1744,7 @@ msgid ""
"Windows is named \"ttyS0\" under GNU/Linux."
msgstr ""
"Παρακαλώ επιλέξτε την κατάλληλη θύρα. Για παράδειγμα,\n"
-"η\"COM1\" στα Windows ονομάζεται \"ttyS0\" στο GNU/Linux."
+"η \"COM1\" στα Windows ονομάζεται \"ttyS0\" στο GNU/Linux."
#: ../help.pm:684
#, c-format
@@ -1514,18 +1760,42 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
"know what you're doing."
msgstr ""
+"Ένας φορτωτής εκκίνησης (boot loader) είναι ένα μικρό πρόγραμμα που "
+"εκτελείται\n"
+"από τον υπολογιστή κατά την εκκίνηση. Είναι υπεύθυνος για την εκκίνηση\n"
+"ολόκληρου του συστήματος. Συνήθως, η εγκατάσταση του φορτωτή εκκίνησης\n"
+"γίνεται εντελώς αυτόματα. Το DrakX θα αναλύσει τον τομέα εκκίνησης του "
+"δίσκου\n"
+"και θα ενεργήσει ανάλογα με το τι θα εντοπίσει εκεί:\n"
+"\n"
+" * Αν εντοπιστεί τομέας εκκίνησης των Windows, θα αντικατασταθεί με έναν "
+"τομέα εκκίνησης\n"
+"GRUB ή LILO. Με αυτόν τον τρόπο, θα μπορείτε να εκκινήσετε είτε το GNU/"
+"Linux\n"
+"είτε οποιοδήποτε άλλο λειτουργικό σύστημα είναι εγκατεστημένο στον "
+"υπολογιστή σας.\n"
+"\n"
+" * Αν εντοπιστεί τομέας εκκίνησης GRUB ή LILO, θα αντικατασταθεί με έναν "
+"νέο.\n"
+"\n"
+"Αν το DrakX δεν μπορεί να προσδιορίσει πού να εγκαταστήσει τον τομέα "
+"εκκίνησης,\n"
+"θα σας ρωτήσει πού θέλετε να τον τοποθετήσει. Γενικά, η επιλογή «%s» είναι η "
+"ασφαλέστερη.\n"
+"Η επιλογή «%s» δεν εγκαθιστά κανέναν φορτωτή εκκίνησης.\n"
+"Επιλέξτε την μόνο αν γνωρίζετε τι κάνετε."
#: ../help.pm:745
-#, fuzzy, c-format
+#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1546,58 +1816,70 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
-"Άλλο\n"
-" Linux\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" απλό\n"
-"\n"
-" Linux\n"
-"\n"
-" CUPS Εκτύπωση Σύστημα\n"
-"\n"
-" απλό εξυπηρετητής\n"
-"\n"
-"\n"
-" εξυπηρετητής\n"
-" CUPS\n"
-"\n"
-"\n"
-"\n"
-"\n"
-" εκτελείται\n"
-"."
+"Τώρα είναι η στιγμή να επιλέξετε ένα σύστημα εκτύπωσης για τον υπολογιστή "
+"σας.\n"
+"Άλλα λειτουργικά συστήματα ενδέχεται να σας προσφέρουν ένα μόνο,\n"
+"αλλά το Mageia προσφέρει δύο. Κάθε ένα από τα συστήματα εκτύπωσης\n"
+"είναι καλύτερα προσαρμοσμένο σε συγκεκριμένα είδη ρυθμίσεων.\n"
+"\n"
+" * «%s» -- που είναι ακρωνύμιο του «print, do not queue» (εκτύπωση χωρίς "
+"ουρά),\n"
+"είναι η κατάλληλη επιλογή αν έχετε άμεση σύνδεση με τον εκτυπωτή σας,\n"
+"θέλετε να μπορείτε να διακόπτετε την εκτύπωση σε περίπτωση εμπλοκής χαρτιού\n"
+"και δεν έχετε εκτυπωτές στο δίκτυο.\n"
+" * Το «%s» μπορεί να χειριστεί μόνο πολύ απλές περιπτώσεις δικτύωσης\n"
+"και είναι σχετικά αργό όταν χρησιμοποιείται μέσω δικτύου.\n"
+"Συνιστάται να χρησιμοποιήσετε το pdq αν αυτή είναι η πρώτη σας εμπειρία με "
+"το GNU/Linux.\n"
+"\n"
+" * «%s» σημαίνει Common Unix Printing System και είναι εξαιρετική επιλογή\n"
+"είτε εκτυπώνετε σε τοπικό εκτυπωτή είτε σε κάποιον στην άλλη άκρη του "
+"κόσμου.\n"
+"Είναι εύκολο στη ρύθμιση και μπορεί να λειτουργήσει ως διακομιστής ή "
+"πελάτης\n"
+"για το παλαιότερο σύστημα εκτύπωσης lpd, οπότε είναι συμβατό με παλαιότερα\n"
+"λειτουργικά συστήματα που ίσως εξακολουθούν να χρειάζονται υπηρεσίες "
+"εκτύπωσης.\n"
+"Αν και αρκετά ισχυρό, η βασική ρύθμιση είναι σχεδόν τόσο εύκολη όσο και με "
+"το pdq.\n"
+"Αν χρειάζεται να προσομοιώσετε διακομιστή τύπου lpd, φροντίστε να "
+"ενεργοποιήσετε\n"
+"τον δαίμονα cups-lpd. Το «%s» περιλαμβάνει γραφικές διεπαφές για εκτύπωση,\n"
+"επιλογή ρυθμίσεων εκτυπωτή και διαχείριση εκτυπωτών.\n"
+"\n"
+"Αν κάνετε τώρα μια επιλογή και αργότερα διαπιστώσετε ότι δεν σας ικανοποιεί "
+"το σύστημα\n"
+"εκτύπωσης που χρησιμοποιείτε, μπορείτε να το αλλάξετε εκτελώντας το "
+"PrinterDrake\n"
+"από το Κέντρο Ελέγχου του Mageia και κάνοντας κλικ στο κουμπί «%s»."
#: ../help.pm:768
#, c-format
msgid "pdq"
-msgstr ""
+msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
msgid "Expert"
-msgstr "Εξπέρ"
+msgstr "Ειδήμονας"
#: ../help.pm:771
-#, fuzzy, c-format
+#, c-format
msgid ""
"DrakX will first detect any IDE devices present in your computer. It will\n"
"also scan for one or more PCI SCSI cards on your system. If a SCSI card is\n"
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1609,39 +1891,36 @@ msgid ""
"which parameters need to be passed to the hardware, you'll need to manually\n"
"configure the driver."
msgstr ""
-"IDE\n"
-" PCI\n"
-"\n"
-"\n"
-"\n"
-" PCI Ναι\n"
-" Όχι\n"
-"\n"
-" ανιχνεύθηκε\n"
-" Επόμενο Επόμενο\n"
-"\n"
+"Το DrakX θα εντοπίσει πρώτα οποιεσδήποτε συσκευές IDE υπάρχουν\n"
+"τον υπολογιστή σας. Θα σαρώσει επίσης για μία ή περισσότερες κάρτες\n"
+"PCI SCSI στο σύστημά σας. Αν εντοπιστεί κάρτα SCSI, το DrakX θα\n"
+"εγκαταστήσει αυτόματα τον κατάλληλο οδηγό.\n"
"\n"
-" PCI\n"
+"Επειδή ο εντοπισμός υλικού δεν είναι πάντοτε αλάνθαστος, είναι πιθανό το "
+"DrakX\n"
+"να αποτύχει να εντοπίσει τους σκληρούς σας δίσκους. Σε αυτή την περίπτωση,\n"
+"θα χρειαστεί να καθορίσετε το υλικό σας με το χέρι.\n"
"\n"
+"Αν χρειάστηκε να ορίσετε χειροκίνητα τον PCI SCSI προσαρμογέα σας,\n"
+"το DrakX θα σας ρωτήσει αν θέλετε να ρυθμίσετε επιλογές για αυτόν.\n"
+"Συνιστάται να επιτρέψετε στο DrakX να ελέγξει το υλικό για τις επιλογές που\n"
+"απαιτούνται για την αρχικοποίηση της κάρτας. Τις περισσότερες φορές,\n"
+"το DrakX θα ολοκληρώσει αυτό το βήμα χωρίς προβλήματα.\n"
"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"."
+"Αν το DrakX δεν μπορέσει να εντοπίσει αυτόματα τις απαραίτητες παραμέτρους\n"
+"για το υλικό, θα χρειαστεί να ρυθμίσετε τον οδηγό χειροκίνητα."
#: ../help.pm:789
-#, fuzzy, c-format
+#, c-format
msgid ""
"\"%s\": if a sound card is detected on your system, it'll be displayed\n"
"here. If you notice the sound card is not the one actually present on your\n"
"system, you can click on the button and choose a different driver."
msgstr ""
-"ανιχνεύθηκε\n"
-"\n"
-"\n"
-"."
+"«%s»: αν εντοπιστεί κάρτα ήχου στο σύστημά σας, θα εμφανιστεί εδώ.\n"
+"Αν παρατηρήσετε ότι η κάρτα ήχου που εμφανίζεται δεν είναι αυτή που\n"
+"υπάρχει πραγματικά στο σύστημα, μπορείτε να κάνετε κλικ στο κουμπί\n"
+"και να επιλέξετε διαφορετικό οδηγό."
#: ../help.pm:794
#, c-format
@@ -1684,8 +1963,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1702,58 +1980,137 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
"idea to review this setup."
msgstr ""
+"Ως ανασκόπηση, το DrakX θα σας παρουσιάσει μια σύνοψη των πληροφοριών\n"
+"που έχει συγκεντρώσει σχετικά με το σύστημά σας. Ανάλογα με το υλικό που "
+"είναι\n"
+"εγκατεστημένο στον υπολογιστή σας, ενδέχεται να δείτε μερικές ή όλες από "
+"τις\n"
+"παρακάτω καταχωρίσεις. Κάθε καταχώριση αποτελείται από το στοιχείο υλικού\n"
+"που πρέπει να ρυθμιστεί και μια σύντομη περίληψη της τρέχουσας ρύθμισης.\n"
+"Κάντε κλικ στο αντίστοιχο κουμπί «%s» για να κάνετε αλλαγές.\n"
+"\n"
+" * «%s»: ελέγξτε την τρέχουσα ρύθμιση του πληκτρολογίου και αλλάξτε την αν "
+"χρειάζεται.\n"
+"\n"
+" * «%s»: ελέγξτε την τρέχουσα επιλογή χώρας. Αν δεν βρίσκεστε σε αυτή τη "
+"χώρα,\n"
+"κάντε κλικ στο κουμπί «%s» και επιλέξτε άλλη. Αν η χώρα σας δεν εμφανίζεται "
+"στη λίστα,\n"
+"κάντε κλικ στο κουμπί «%s» για να δείτε την πλήρη λίστα χωρών.\n"
+"\n"
+" * «%s»: από προεπιλογή, το DrakX προσδιορίζει τη ζώνη ώρας με βάση τη χώρα "
+"που επιλέξατε.\n"
+"Μπορείτε να κάνετε κλικ στο κουμπί «%s» αν αυτό δεν είναι σωστό.\n"
+"\n"
+" * «%s»: ελέγξτε την τρέχουσα ρύθμιση του ποντικιού και κάντε αλλαγές αν "
+"χρειάζεται.\n"
+"\n"
+" * «%s»: αν εντοπιστεί κάρτα ήχου στο σύστημά σας, θα εμφανιστεί εδώ.\n"
+"Αν παρατηρήσετε ότι δεν είναι η σωστή, μπορείτε να κάνετε κλικ στο κουμπί "
+"και να επιλέξετε διαφορετικό οδηγό.\n"
+"\n"
+" * «%s»: αν έχετε κάρτα τηλεόρασης, οι πληροφορίες ρύθμισής της θα "
+"εμφανιστούν εδώ.\n"
+"Αν δεν εντοπιστεί, κάντε κλικ στο «%s» για να προσπαθήσετε να την ρυθμίσετε "
+"χειροκίνητα.\n"
+"\n"
+" * «%s»: μπορείτε να κάνετε κλικ στο «%s» για να αλλάξετε τις παραμέτρους "
+"της κάρτας,\n"
+"αν θεωρείτε ότι η ρύθμιση είναι λανθασμένη.\n"
+"\n"
+" * «%s»: από προεπιλογή, το DrakX ρυθμίζει το γραφικό περιβάλλον σε ανάλυση "
+"«800x600»\n"
+"ή «1024x768». Αν αυτό δεν σας εξυπηρετεί, κάντε κλικ στο «%s» για να "
+"επαναρυθμίσετε τη γραφική διεπαφή.\n"
+"\n"
+" * «%s»: αν επιθυμείτε να ρυθμίσετε τη σύνδεση στο διαδίκτυο ή σε τοπικό "
+"δίκτυο, μπορείτε να το κάνετε τώρα.\n"
+"Συμβουλευτείτε την έντυπη τεκμηρίωση ή χρησιμοποιήστε το Κέντρο Ελέγχου του "
+"Mageia μετά\n"
+"την εγκατάσταση για αναλυτική βοήθεια.\n"
+"\n"
+" * «%s»: σας επιτρέπει να ρυθμίσετε τις διευθύνσεις διαμεσολαβητή (proxy) "
+"για HTTP και FTP,\n"
+"αν ο υπολογιστής σας βρίσκεται πίσω από διακομιστή μεσολάβησης.\n"
+"\n"
+" * «%s»: αυτή η καταχώριση σας επιτρέπει να επανακαθορίσετε το επίπεδο "
+"ασφαλείας,\n"
+"όπως είχε οριστεί σε προηγούμενο βήμα ().\n"
+"\n"
+" * «%s»: αν σκοπεύετε να συνδέσετε τον υπολογιστή σας στο διαδίκτυο,\n"
+"είναι καλή ιδέα να προστατευτείτε από εισβολές ρυθμίζοντας τείχος προστασίας "
+"(firewall).\n"
+"Δείτε τη σχετική ενότητα του «Οδηγού Ξεκινήματος» για λεπτομέρειες σχετικά\n"
+"με τη ρύθμιση του τείχους προστασίας.\n"
+"\n"
+" * «%s»: αν επιθυμείτε να αλλάξετε τις ρυθμίσεις του φορτωτή εκκίνησης "
+"(bootloader),\n"
+"κάντε κλικ σε αυτό το κουμπί. Αυτή η ενέργεια προτείνεται μόνο για "
+"προχωρημένους χρήστες.\n"
+"Συμβουλευτείτε την έντυπη τεκμηρίωση ή τη σχετική ενσωματωμένη βοήθεια στο "
+"Κέντρο Ελέγχου του Mageia.\n"
+"\n"
+" * «%s»: από αυτή την καταχώριση μπορείτε να ρυθμίσετε λεπτομερώς ποιες "
+"υπηρεσίες\n"
+"θα εκτελούνται στον υπολογιστή σας. Αν σκοπεύετε να χρησιμοποιήσετε αυτό το "
+"σύστημα\n"
+"ως διακομιστή, είναι καλό να ελέγξετε προσεκτικά αυτές τις ρυθμίσεις."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "Εσωτερική κάρτα ISDN"
+msgstr "Κάρτα τηλεόρασης"
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "ISDN card"
-msgstr "Εσωτερική κάρτα ISDN"
+msgstr "Κάρτα ISDN"
#: ../help.pm:858
-#, fuzzy, c-format
+#, c-format
msgid "Graphical Interface"
msgstr "Γραφικό περιβάλλον"
#: ../help.pm:861
-#, fuzzy, c-format
+#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Επιλέξτε τον δίσκο που θέλετε να διαγράψετε για να εγκαταστήσετε \n"
-"την νέα κατάτμηση Mandriva Linux. ΠΡΟΣΟΧΗ: Όλα τα δεδομένα θα διαγραφούν\n"
-"και θα είναι αδύνατη η επαναφορά τους!"
+"Επιλέξτε τον σκληρό δίσκο που θέλετε να διαγράψετε για να εγκαταστήσετε\n"
+"τη νέα κατάτμηση Mageia. Προσέξτε, όλα τα δεδομένα σε αυτόν τον δίσκο\n"
+"θα χαθούν και δεν θα είναι ανακτήσιμα!"
#: ../help.pm:866
-#, fuzzy, c-format
+#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
-"Κάντε κλικ στο \"Επόμενο ->\" εάν θέλετε να διαγράψετε όλα τα δεδομένα\n"
-"τις κατατμήσεις που βρίσκονται στον σκληρό σας δίσκο. Προσοχή μετά\n"
-"που θα κλικ στο \"Επόμενο ->\"δεν θα μπορείτε να ανακτήσετε τα δεδομένα\n"
-"και τις κατατμήσεις που βρίσκονται στον δίσκο μαζί και τα Windows\n"
-" Επόμενο\n"
+"Κάντε κλικ στο «%s» αν θέλετε να διαγράψετε όλα τα δεδομένα και τις "
+"κατατμήσεις\n"
+"που υπάρχουν σε αυτόν τον σκληρό δίσκο. Προσοχή: μετά το πάτημα του «%s»,\n"
+"δεν θα μπορείτε να ανακτήσετε κανένα από τα δεδομένα και τις κατατμήσεις "
+"που\n"
+"βρίσκονταν σε αυτόν τον δίσκο, συμπεριλαμβανομένων των δεδομένων των "
+"Windows.\n"
"\n"
-"Κάντε κλικ στο \"<- Προηγούμενο\" για να τερματίσετε τη λειτουργία αυτή\n"
-"χωρίς να χάσετε τα δεδομένα και τις κατατμήσεις σας στο δίσκο."
+"Κάντε κλικ στο «%s» για να ακυρώσετε αυτή τη διαδικασία χωρίς να χαθούν\n"
+"δεδομένα και κατατμήσεις από αυτόν τον σκληρό δίσκο."
#: ../help.pm:872
#, c-format
@@ -1764,109 +2121,3 @@ msgstr "Επόμενο ->"
#, c-format
msgid "<- Previous"
msgstr "<- Προηγούμενο"
-
-#, fuzzy
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "Εκτυπωτής Όχι Εκτυπωτής\n"
-#~ "\n"
-#~ " νέο\n"
-#~ "."
-
-#, fuzzy
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Linux\n"
-#~ " Root\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ " Linux\n"
-#~ "\n"
-#~ "\n"
-#~ " σημαντικό\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ " εξυπηρετητής Για Προχωρημένους\n"
-#~ "\n"
-#~ " LDAP NIS Τομέας Windows Τομέας\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ " Όχι Διαδίκτυο\n"
-#~ "."
-
-#, fuzzy
-#~ msgid "authentication"
-#~ msgstr "Πιστοποίηση"
diff --git a/perl-install/install/help/po/eo.po b/perl-install/install/help/po/eo.po
index 2ddfabe20..24b9180c0 100644
--- a/perl-install/install/help/po/eo.po
+++ b/perl-install/install/help/po/eo.po
@@ -12,23 +12,24 @@ msgstr ""
"PO-Revision-Date: 2007-03-14 18:27+0100\n"
"Last-Translator: Vilhelmo Lutermano <vlutermano@free.fr>\n"
"Language-Team: <eo@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Antaŭ ol daŭrigi, legu zorge la patent-regulojn. Ili kovras la tutan\n"
"eldonaĵon de Mandriva Linukso. Se vi konsentas kun ĉiuj reguloj, kiujn\n"
-"la teksto enhavas, alklaku la keston \"%s\". Se ne, alklakante la butonon \"%"
-"s\"\n"
+"la teksto enhavas, alklaku la keston \"%s\". Se ne, alklakante la butonon "
+"\"%s\"\n"
"restartigos vian komputilon."
#: ../help.pm:20
@@ -135,7 +136,8 @@ msgstr "Ĉu vi deziras uzi tiun funkcion?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -145,24 +147,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Ĉi tie estas listigitaj la ekzistantaj linuksaj subdiskoj detektitaj sur via "
@@ -199,16 +205,15 @@ msgstr ""
"\"dua plej malalta SCSI-ID\", ktp."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"La instalado de Mandriva Linux estas eldonita sur pluraj KD-ROM-oj. Se "
-"elektita\n"
+"La instalado de Mageia estas eldonita sur pluraj KD-ROM-oj. Se elektita\n"
"pakaĵo troviĝas sur alia KD-ROM-o, DrakX elĵetos la aktualan KD kaj petos "
"vin enigi\n"
"la postulatan. Se vi ne havas la postulatan kompaktdiskon ĉemane,\n"
@@ -219,12 +224,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -294,8 +298,8 @@ msgstr ""
"konfiguros vian sistemon tiel ke ĝi kongruas kiom eble plej kun la\n"
"agordoj de Linux Standard Base.\n"
"\n"
-" Selekto de la grupo \"LSB\" instalos ankaŭ la seriojn de la kerno \"2.4"
-"\",\n"
+" Selekto de la grupo \"LSB\" instalos ankaŭ la seriojn de la kerno "
+"\"2.4\",\n"
"anstataŭ la defaŭltan \"2.6\". Tio estas por certigi centelcentan LSB-"
"kongruecon\n"
"de la sistemo. Tamen, se vi ne selektas la grupon \"LSB\", vi ja\n"
@@ -353,7 +357,7 @@ msgid "Truly minimal install"
msgstr "Vere minimuma instalado"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -366,10 +370,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -402,12 +406,12 @@ msgstr ""
"individuan pakaĵon\n"
"aŭ ĉar ĝi estis parto de grupo da pakaĵoj,\n"
"vi estos petata konfirmi ke vi vere deziras ke la serviloj estu\n"
-"instalitaj. Defaŭlte, Mandriva Linux aŭtomate startigos ĉiajn instalitajn\n"
+"instalitaj. Defaŭlte, Mageia aŭtomate startigos ĉiajn instalitajn\n"
"servojn ĉe startotempo. Eĉ se ili estas sekuraj kaj ne havas iajn konatajn "
"problemojn\n"
"kiam la eldonaĵo estis sendita, tute eblas ke sekureco-truoj estis "
"malkovritaj\n"
-"post kiam tiu ĉi versio de Mandriva Linux estis finita. Se vi ne scias kiun\n"
+"post kiam tiu ĉi versio de Mageia estis finita. Se vi ne scias kiun\n"
"apartan servon ĝi donas aŭ kial ĝi estas instalata, tiam alklaku \"%s\".\n"
"Alklakante \"%s\" instalos la listigitajn servojn, kiaj ili estos\n"
"aŭtomate startigataj ĉe la starto de la sistemo.!!\n"
@@ -537,11 +541,11 @@ msgstr ""
"plej bone taŭgas por viaj bezonoj."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -598,7 +602,7 @@ msgstr ""
"X (por X-fenestra sistemo) estas la koro de la GNU/Linuksa grafika "
"interfaco\n"
"sur kiu funkcias ĉiuj grafikaj medioj (KDE, GNOME, AfterStep,\n"
-"WindowMaker, ktp) kiuj venas kun Mandriva Linux.\n"
+"WindowMaker, ktp) kiuj venas kun Mageia.\n"
"\n"
"Vi vidos liston de diversaj parametroj ŝanĝeblaj por akiri plej bonan\n"
"grafikan vidigon.\n"
@@ -716,41 +720,45 @@ msgstr ""
"sukcesis konfiguri la grafikan interfacon."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -759,15 +767,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -961,7 +969,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -980,7 +988,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1004,15 +1012,15 @@ msgstr ""
"Alklaku \"%s\" kiam vi pretas formati la subdiskojn.\n"
"\n"
"Alklaku \"%s\" se vi deziras elekti alian subdiskon por instali vian nova\n"
-"Mandriva Linux-mastrum-sistemon.\n"
+"Mageia-mastrum-sistemon.\n"
"\n"
"Alkalku \"%s\" se vi deziras selekti subdiskojn kiuj estu kontrolataj por "
"malbonaj blokoj sur la disko."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1037,7 +1045,7 @@ msgstr ""
"la selektitajn pakaĵo(j)n, aŭ \"%s\" por ĉesigi."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1046,7 +1054,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1071,24 +1079,27 @@ msgid "Security Administrator"
msgstr "Sekurec-mastrumanto"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1104,21 +1115,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1135,14 +1148,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Nun vi devas elekti kiuj subdisko(j) estu uzata(j) por instalado\n"
"de via Mandriva-Linuksa sistemo. Se jam estas difinitaj subdiskoj,\n"
@@ -1158,7 +1165,7 @@ msgstr ""
"\n"
" * \"%s\": tiu opcio forviŝas ĉiujn subdiskojn sur la selektita fiksdisko.\n"
"\n"
-" * \"%s\": Tiu opcio ebligas vin krei aŭtomate subdiskojn de ext3 kaj swap\n"
+" * \"%s\": Tiu opcio ebligas vin krei aŭtomate subdiskojn de ext4 kaj swap\n"
"en la libera spaco de via fiksdisko\n"
"\n"
"\"%s\": donas aliron al kromaj eblecoj:\n"
@@ -1209,13 +1216,6 @@ msgstr ""
"\n"
"Por akiri informojn pri la diversaj haveblaj dosier-sistem-tipoj, bonvolu\n"
"legi la ĉapitron ext2FS en la ''Referenca Manlibro''.\n"
-"\n"
-"Se vi instalas sur PPC-maŝinon, vi deziros krei malgrandan HFS-\n"
-"''praŝargo''-subdiskon de almenaŭ 1 MB kiu uzotas de la yaboot-\n"
-"startigilo. Se vi volas iomete pligrandigi tiun subdiskon, ni diru 50 MB, "
-"vi\n"
-"povas ankaŭ uzi ĝin por stoki tie kromajn kerno- kaj ramdisk-bildojn por\n"
-"paneaj situacioj de startigo."
#: ../help.pm:526
#, c-format
@@ -1253,36 +1253,42 @@ msgid "Toggle between normal/expert mode"
msgstr "Ŝanĝu inter normala/fakula reĝimo"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Pli ol unu Microsoft-subdisko estas detektitaj sur via fiksdisko.\n"
@@ -1329,29 +1335,29 @@ msgstr ""
"la videbla listo, alklaku la butonon \"%s\" por havigi la kompletan liston."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Tiu ĉi paŝo estas aktiva nur se ekzistanta GNU/Linuksa subdisko estas "
"trovita\n"
@@ -1416,7 +1422,7 @@ msgstr ""
"klavaron inter la latina kaj la nelatinaj arangoj."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1432,8 +1438,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1478,7 +1483,7 @@ msgstr ""
"por\n"
"kovri ĉiujn ekzistantajn lingvojn. Tamen, plena subteno por ĝi en GNU/Linux "
"estas\n"
-"daŭre sub evoluigo. Pro tio, la uzo de UTF-8 fare de Mandriva Linux\n"
+"daŭre sub evoluigo. Pro tio, la uzo de UTF-8 fare de Mageia\n"
"dependos de la elektoj kiujn faras la uzulo:\n"
"\n"
" * Se vi elektas lingvon kun forte tradiciaj kodaĵoj (lingvoj de latin1,\n"
@@ -1620,7 +1625,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1646,10 +1651,10 @@ msgstr ""
"scias kion vi faras."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1670,7 +1675,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Nun estas tempo por elekti pressistemon por via komputilo. Aliaj "
@@ -1730,7 +1735,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1815,8 +1820,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1833,7 +1837,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1930,10 +1934,10 @@ msgid "Graphical Interface"
msgstr "Grafika interfaco"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Elektu la fiksdiskon kiun vi deziras forviŝi por instali vian novan\n"
@@ -1945,12 +1949,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Alklaku \"%s\" se vi deziras forviŝi ĉiujn datenojn kaj subdiskojn kiuj "
"troviĝas sur\n"
diff --git a/perl-install/install/help/po/es.po b/perl-install/install/help/po/es.po
index 0fea72058..d1ac36b90 100644
--- a/perl-install/install/help/po/es.po
+++ b/perl-install/install/help/po/es.po
@@ -15,6 +15,7 @@ msgstr ""
"PO-Revision-Date: 2005-04-24 11:46+0200\n"
"Last-Translator: José Manuel Pérez <jmprodu@hotmail.com>\n"
"Language-Team: Español <es@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -24,15 +25,15 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Antes de continuar, debería leer cuidadosamente los términos de la\n"
-"licencia. La misma cubre a toda la distribución Mandriva Linux. Si está de\n"
+"licencia. La misma cubre a toda la distribución Mageia. Si está de\n"
"acuerdo con todos los términos en la misma, haga clic en el botón \"%s\".\n"
"Si no, haga clic en el botón \"%s\" lo que reiniciará su computadora."
@@ -140,7 +141,8 @@ msgstr "¿Desea usar esta característica?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -150,24 +152,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Aquí se listan las particiones Linux existentes que se detectaron en su\n"
@@ -208,15 +214,15 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"La instalación de Mandriva Linux se distribuye en varios CD-ROM. Si un\n"
+"La instalación de Mageia se distribuye en varios CD-ROM. Si un\n"
"paquete seleccionado se encuentra en otro CD-ROM, DrakX expulsará el CD\n"
"corriente y le pedirá que inserte el necesario. Si no tiene el CD necesario\n"
"a mano, simplemente haga clic sobre \"%s\", no se instalarán los paquetes\n"
@@ -228,12 +234,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -284,12 +289,11 @@ msgid ""
"megabytes."
msgstr ""
"Ahora es el momento de especificar los programas que desea instalar en su\n"
-"sistema. Hay miles de paquetes disponibles para Mandriva Linux, y para "
-"hacer\n"
+"sistema. Hay miles de paquetes disponibles para Mageia, y para hacer\n"
"más simple el manejo de los paquetes, los mismos se han puesto en grupos de\n"
"aplicaciones similares.\n"
"\n"
-"Mandriva Linux clasifica los grupos de paquetes en cuatro categorías. Puede\n"
+"Mageia clasifica los grupos de paquetes en cuatro categorías. Puede\n"
"mezclar y hacer coincidir aplicaciones de varias categorías, por lo que una\n"
"instalación de \"Estación de trabajo\" puede tener instaladas aplicaciones\n"
"de la categoría \"Desarrollo\".\n"
@@ -358,7 +362,7 @@ msgstr "Instalación realmente mínima"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -371,10 +375,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -409,11 +413,11 @@ msgstr ""
"seleccionó específicamente el paquete individual o porque el mismo era\n"
"parte de un grupo de paquetes, se le pedirá que confirme que realmente\n"
"desea que se instalen esos servidores. De manera predeterminada,\n"
-"Mandriva Linux iniciará automáticamente todos los servicios instalados al\n"
+"Mageia iniciará automáticamente todos los servicios instalados al\n"
"momento del arranque. Aunque estos son seguros y no tienen problemas\n"
"conocidos al momento en que se publicó la distribución, es muy posible que\n"
"se descubran vulnerabilidades en la seguridad luego que se terminó con esta\n"
-"versión de Mandriva Linux. Si no sabe que es lo que se supone que hace un\n"
+"versión de Mageia. Si no sabe que es lo que se supone que hace un\n"
"servicio o la razón por la cual se está instalando, entonces haga clic\n"
"sobre \"%s\". Si hace clic sobre \"%s\" se instalarán todos los servicios\n"
"listados y los mismos se iniciarán automáticamente al momento del arranque.\n"
@@ -548,11 +552,11 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -608,7 +612,7 @@ msgid ""
msgstr ""
"X (por \"X Window System\") es el corazón de la interfaz gráfica de\n"
"GNU/Linux en el que se apoyan todos los entornos gráficos (KDE, GNOME,\n"
-"AfterStep, WindowMaker, etc.) que se incluyen con Mandriva Linux.\n"
+"AfterStep, WindowMaker, etc.) que se incluyen con Mageia.\n"
"\n"
"Se le presentará la lista de parámetros diferentes a cambiar para obtener\n"
"una presentación gráfica óptima.\n"
@@ -734,41 +738,45 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -777,15 +785,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -799,11 +807,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Ahora necesita elegir el lugar de su disco rígido donde se instalará su\n"
-"sistema operativo Mandriva Linux. Si su disco rígido está vacío o si un\n"
+"sistema operativo Mageia. Si su disco rígido está vacío o si un\n"
"sistema operativo existente está utilizando todo el espacio disponible,\n"
"necesitará particionar el disco. Básicamente, particionar un disco rígido\n"
"consiste en dividirlo lógicamente para crear espacio para instalar su\n"
-"sistema Mandriva Linux nuevo.\n"
+"sistema Mageia nuevo.\n"
"\n"
"Debido a que el proceso de particionado de un disco rígido por lo general\n"
"es irreversible y puede llevar a pérdida de datos, el particionado puede\n"
@@ -833,7 +841,7 @@ msgstr ""
"realizar sin la pérdida de datos, siempre y cuando Usted haya\n"
"desfragmentado con anterioridad la partición Windows. Es altamente\n"
"recomendable hacer una copia de respaldo de sus datos. Se recomienda usar\n"
-"esta solución si desea utilizar tanto Mandriva Linux como Microsoft Windows\n"
+"esta solución si desea utilizar tanto Mageia como Microsoft Windows\n"
"en la misma computadora.\n"
"\n"
" Antes de elegir esta opción, por favor comprenda que después de este\n"
@@ -843,7 +851,7 @@ msgstr ""
"\n"
" * \"%s\". Si desea borrar todos los datos y todas las particiones\n"
"presentes en su disco rígido y reemplazarlos con su nuevo sistema\n"
-"Mandriva Linux, seleccione esta opción. Tenga cuidado con esta solución ya\n"
+"Mageia, seleccione esta opción. Tenga cuidado con esta solución ya\n"
"que no podrá revertir su elección después de confirmarla.\n"
"\n"
" !! Si elige esta opción, se perderán todos los datos en su disco. !!\n"
@@ -974,7 +982,7 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -993,7 +1001,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1016,7 +1024,7 @@ msgstr ""
"Haga clic sobre \"%s\" cuando esté listo para formatear las particiones.\n"
"\n"
"Haga clic sobre \"%s\" si desea elegir otra partición para la instalación\n"
-"de su sistema operativo Mandriva Linux nuevo.\n"
+"de su sistema operativo Mageia nuevo.\n"
"\n"
"Haga clic sobre \"%s\" si desea seleccionar las particiones del disco en\n"
"las que se buscarán bloques defectuosos."
@@ -1024,9 +1032,9 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1038,7 +1046,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Es probable que cuando instale Mandriva Linux algunos paquetes se hayan\n"
+"Es probable que cuando instale Mageia algunos paquetes se hayan\n"
"actualizado desde la publicación inicial. Se pueden haber corregido errores\n"
"y solucionado problemas de seguridad. Para permitir que Usted se beneficie\n"
"de estas actualizaciones, ahora las puede descargar desde la Internet.\n"
@@ -1054,7 +1062,7 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1063,7 +1071,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1077,7 +1085,7 @@ msgstr ""
"\n"
"Si no sabe cual elegir, mantenga la opción predeterminada. Podrá cambiarla\n"
"más adelante con la herramienta draksec, que es parte del Centro de Control\n"
-"de Mandriva Linux.\n"
+"de Mageia.\n"
"\n"
"Complete el campo \"%s\" con la dirección de correo electrónico de la\n"
"persona responsable de la seguridad. Los mensajes relativos a la seguridad\n"
@@ -1091,24 +1099,27 @@ msgstr "Administrador de seguridad"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1124,21 +1135,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1155,17 +1168,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Ahora necesita elegir qué particiones se utilizarán para la instalación de\n"
-"su sistema Mandriva Linux. Si ya se han definido particiones, ya sea por\n"
+"su sistema Mageia. Si ya se han definido particiones, ya sea por\n"
"una instalación previa de GNU/Linux o con otra herramienta de particionado,\n"
"puede utilizarlas. De lo contrario, se deben definir particiones en el\n"
"disco rígido.\n"
@@ -1181,7 +1188,7 @@ msgstr ""
" * \"%s\": esta opción borra todas las particiones sobre el disco\n"
"seleccionado.\n"
"\n"
-" * \"%s\": esta opción le permite crear particiones ext3 y swap\n"
+" * \"%s\": esta opción le permite crear particiones ext4 y swap\n"
"automáticamente en el espacio libre de su disco rígido.\n"
"\n"
"\"%s\": le da acceso a características adicionales:\n"
@@ -1235,12 +1242,6 @@ msgstr ""
"Para obtener información sobre los distintos tipos de sistemas de archivos\n"
"disponibles, por favor lea el capítulo acerca de ext2FS del \"Manual de\n"
"Referencia\".\n"
-"\n"
-"Si está instalando en una máquina PPC, querrá crear una pequeña partición\n"
-"HFS de \"bootstrap\" de al menos 1 MB que será utilizada por el cargador de\n"
-"arranque yaboot. Si opta por hacer la partición un poco más grande, digamos\n"
-"50 MB, puede ver que es un lugar útil para almacenar un núcleo y ramdisk\n"
-"alternativos para arrancar en situaciones de emergencia."
#: ../help.pm:526
#, c-format
@@ -1280,41 +1281,47 @@ msgstr "Cambiar entre el modo normal/experto"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Se ha detectado más de una partición Microsoft Windows en su disco rígido.\n"
"Por favor, elija aquella a la cual desea cambiar el tamaño para poder\n"
-"instalar su sistema operativo Mandriva Linux nuevo.\n"
+"instalar su sistema operativo Mageia nuevo.\n"
"\n"
"Cada partición se lista como sigue: \"Nombre Linux\", \"Nombre Windows\",\n"
"\"Capacidad\".\n"
@@ -1364,35 +1371,35 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Este paso se activa sólo si se encontró una partición GNU/Linux existente\n"
"en su máquina.\n"
"\n"
"DrakX ahora necesita saber si desea realizar una instalación nueva o una\n"
-"actualización de un sistema Mandriva Linux existente:\n"
+"actualización de un sistema Mageia existente:\n"
"\n"
" * \"%s\". En gran parte, esta opción borrará por completo el sistema\n"
"anterior. Sin embargo, dependiendo de su esquema de particiones, puede\n"
@@ -1401,17 +1408,15 @@ msgstr ""
"particionan sus discos, debería usar esta opción.\n"
"\n"
" * \"%s\": Esta clase de instalación le permite actualizar los paquetes que\n"
-"en este momento están instalados en su sistema Mandriva Linux. No se "
-"alteran\n"
+"en este momento están instalados en su sistema Mageia. No se alteran\n"
"las particiones corrientes de sus discos ni los datos de los usuarios. La\n"
"mayoría de los otros pasos de configuración permanecen disponibles y son\n"
"similares a una instalación estándar.\n"
"\n"
"El uso de la opción \"Actualizar\" debería funcionar sin problemas para los\n"
-"sistemas Mandriva Linux que corren la versión \"8.1\" o una posterior. No "
-"se\n"
+"sistemas Mageia que corren la versión \"8.1\" o una posterior. No se\n"
"recomienda realizar una actualización sobre versiones anteriores a\n"
-"Mandriva Linux versión \"8.1\"."
+"Mageia versión \"8.1\"."
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
@@ -1456,7 +1461,7 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1472,8 +1477,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1514,7 +1518,7 @@ msgstr ""
"Acerca del soporte UTF-8 (Unicode): Unicode es una codificación nueva de\n"
"caracteres que pretende cubrir todos los idiomas existentes. Sin embargo,\n"
"el soporte completo para Unicode bajo GNU/Linux todavía está en desarrollo.\n"
-"Por esta razón, Mandriva Linux lo usará o no dependiendo de las elecciones\n"
+"Por esta razón, Mageia lo usará o no dependiendo de las elecciones\n"
"del usuario:\n"
"\n"
" * Si elige un idioma con codificación legada fuerte (idiomas latin1, ruso,\n"
@@ -1662,7 +1666,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1689,10 +1693,10 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1713,12 +1717,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Ahora es el momento de seleccionar un sistema de impresión para su\n"
"computadora. Otros sistemas operativos pueden ofrecerle uno, pero\n"
-"Mandriva Linux le ofrece dos. Cada uno de los sistemas de impresión es más\n"
+"Mageia le ofrece dos. Cada uno de los sistemas de impresión es más\n"
"adecuado para tipos de configuración particulares.\n"
"\n"
" * \"%s\" - \"print, do not queue\" (imprimir sin poner en cola) es la\n"
@@ -1741,7 +1745,7 @@ msgstr ""
"\n"
"Si hace una elección ahora y más tarde encuentra que a Usted no le gusta su\n"
"sistema de impresión, puede cambiarlo ejecutando PrinterDrake desde el\n"
-"Centro de Control de Mandriva Linux y haciendo clic sobre el botón \"%s\"."
+"Centro de Control de Mageia y haciendo clic sobre el botón \"%s\"."
#: ../help.pm:768
#, c-format
@@ -1768,7 +1772,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1856,8 +1860,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1874,7 +1877,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1926,7 +1929,7 @@ msgstr ""
"\n"
" * \"%s\": si desea configurar ahora el acceso a la Internet o a su red\n"
"local, puede hacerlo ahora. Consulte la documentación impresa o utilice el\n"
-"Centro de Control de Mandriva Linux luego que finalizó la instalación para\n"
+"Centro de Control de Mageia luego que finalizó la instalación para\n"
"aprovechar la ayuda en línea completa.\n"
"\n"
" * \"%s\": permite configurar las direcciones de los proxy HTTP y FTP si la\n"
@@ -1945,7 +1948,7 @@ msgstr ""
"haga clic sobre este botón. Esto debería estar reservado para los usuarios\n"
"avanzados. Consulte la documentación impresa o la ayuda en línea acerca de\n"
"la configuración del cargador de arranque en el Centro de Control de\n"
-"Mandriva Linux.\n"
+"Mageia.\n"
"\n"
" * \"%s\": por medio de esta entrada podrá tener un control fino sobre qué\n"
"servicios correrán en su máquina. Si planifica utilizar esta máquina como\n"
@@ -1969,14 +1972,14 @@ msgstr "Interfaz gráfica"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/es/drakx-chapter.xml
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Elija la unidad de disco que desea borrar para instalar su partición\n"
-"Mandriva Linux nueva. Tenga cuidado, ¡se perderán todos los datos presentes\n"
+"Mageia nueva. Tenga cuidado, ¡se perderán todos los datos presentes\n"
"en dicha unidad de disco y no se podrán recuperar!."
# DO NOT BOTHER TO MODIFY HERE, SEE:
@@ -1985,12 +1988,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Haga clic sobre \"%s\" si desea borrar todos los datos y particiones\n"
"presentes en esta unidad de disco. Tenga cuidado, luego de hacer clic sobre\n"
diff --git a/perl-install/install/help/po/et.po b/perl-install/install/help/po/et.po
index 51a2bb227..5346876da 100644
--- a/perl-install/install/help/po/et.po
+++ b/perl-install/install/help/po/et.po
@@ -11,6 +11,7 @@ msgstr ""
"PO-Revision-Date: 2009-03-23 16:08+0100\n"
"Last-Translator: Marek Laane <bald@starman.ee>\n"
"Language-Team: Estonian <linux-ee@lists.eenet.ee>\n"
+"Language: et\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -18,15 +19,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Enne jätkamist lugege hoolikalt läbi litsentsileping. See kehtib kogu\n"
-"Mandriva Linuxi distributsiooni kohta. Kui Te kõigi selle tingimustega\n"
+"Mageiai distributsiooni kohta. Kui Te kõigi selle tingimustega\n"
"nõus olete, märkige ära kast \"%s\". Kui Teile aga miski ei meeldi, siis\n"
"klõps nupule \"%s\" sooritab arvuti taaskäivitamise."
@@ -72,7 +73,8 @@ msgid ""
msgstr ""
"GNU/Linux on mitmekasutajasüsteem, mis tähendab, et igal kasutajal\n"
"võivad olla oma eelistused, failid jne. Kuid erinevalt administraatorist\n"
-"pole kasutajal õigust muuta midagi muud kui vaid omaenda faile ja seadistusi.\n"
+"pole kasutajal õigust muuta midagi muud kui vaid omaenda faile ja "
+"seadistusi.\n"
"Te peaksite looma ka endale vähemalt ühe tavakasutaja konto, millele sisse\n"
"logida igapäevategevuseks. Kuigi võib olla vägagi praktiline logida iga "
"päev\n"
@@ -102,8 +104,8 @@ msgstr ""
"Klõps nupule \"%s\" võimaldab muuta kasutajale määratavat shelli\n"
"(vaikimisi on see bash).\n"
"\n"
-"Kui olete kasutajate lisamise lõpetanud, palutakse Teil valida kasutaja, "
-"kel on\n"
+"Kui olete kasutajate lisamise lõpetanud, palutakse Teil valida kasutaja, kel "
+"on\n"
"õigus logida süsteemi automaatselt, kui arvuti käivitub. Kui see võimalus\n"
"Teile huvi pakub (ja kohalik turvalisus muret ei valmista), valige "
"meelepärane\n"
@@ -129,7 +131,8 @@ msgstr "Kas soovite seda lubada?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -139,24 +142,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Ülal on toodud kõik Teie kõvakettal olemasolevad Linuxi partitsioonid.\n"
@@ -165,7 +172,8 @@ msgstr ""
"partitsioonide puhul võib tekkida raskusi piisava hulga tarkvara "
"paigaldamisel.\n"
"Kasutajate jaoks on sageli mõistlik luua eraldi \"/home\" partitsioon.\n"
-"(Seda mõistagi juhul, kui saate kasutada rohkem kui üht Linuxi partitsiooni.)\n"
+"(Seda mõistagi juhul, kui saate kasutada rohkem kui üht Linuxi "
+"partitsiooni.)\n"
"\n"
"Iga partitsiooni juures on toodud abiinfona \"Nimi\" ja \"Mahutavus\".\n"
"\n"
@@ -188,15 +196,15 @@ msgstr ""
"SCSI ketaste puhul on \"a\" esimene, \"b\" teine ja nii edasi."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linuxi paigalduspaketid on jagatud mitme CD vahel.\n"
+"Mageiai paigalduspaketid on jagatud mitme CD vahel.\n"
"DrakX suudab ära tunda, kui valitud pakett asub muul CD-l,\n"
"ning väljastab siis seesoleva CD ja palub sisestada selle,\n"
"mida parajasti vaja läheb.\n"
@@ -204,15 +212,14 @@ msgstr ""
"ning vastavat tarkvara ei paigaldata."
#: ../help.pm:95
-#, c-format
+#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -263,7 +270,7 @@ msgid ""
"megabytes."
msgstr ""
"Nüüd on aeg valida rakendused, mida soovite oma süsteemi paigaldada.\n"
-"Mandriva Linux pakub tuhandeid pakette ja mõistagi ei eelda keegi,\n"
+"Mageia pakub tuhandeid pakette ja mõistagi ei eelda keegi,\n"
"et Te neid kõiki juba ette tunneksite.\n"
"\n"
"Paketid on rühmitatud gruppidesse vastavalt nende kasutusalale.\n"
@@ -332,7 +339,7 @@ msgid "Truly minimal install"
msgstr "Tõeliselt minimaalne paigaldus"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -345,10 +352,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -379,12 +386,10 @@ msgstr ""
"NB! Kui tahtlikult või seetõttu, et asi kuulus gruppi,\n"
"on valitud mõni serveripakett, palutakse Teilt kinnitust,\n"
"et Te ikka tõesti soovite neid servereid paigaldada.\n"
-"Mandriva Linux käivitab kõik paigaldatud serverid vaikimisi alglaadimise "
-"ajal.\n"
+"Mageia käivitab kõik paigaldatud serverid vaikimisi alglaadimise ajal.\n"
"Isegi kui nad olid turvalised ja teadaolevalt probleemivabad ajal,\n"
"mis valmis distributsioon, võib kergesti juhtuda,\n"
-"et pärast Mandriva Linuxi praeguse versiooni valmimist leiti neist "
-"turvaauke.\n"
+"et pärast Mageiai praeguse versiooni valmimist leiti neist turvaauke.\n"
"Kui Te ei tea, mida konkreetne teenus pakub või miks see üldse "
"paigaldatakse,\n"
"klõpsake nupul \"%s\", sest klõps nupul \"%s\" paigaldab loetletud serverid\n"
@@ -437,7 +442,8 @@ msgstr ""
"Kui Te ei ole aga kindel, kas teenus on kasulik või mitte, on mõistlik\n"
"jätta kehtima vaikevalik (olgu see siis lubav või mitte).\n"
"\n"
-"NB! Kui kavatsete oma süsteemi kasutada serverina, olge eriti tähelepanelik:\n"
+"NB! Kui kavatsete oma süsteemi kasutada serverina, olge eriti "
+"tähelepanelik:\n"
"tõenäoliselt ei soovi Te käivitada mittevajalikke teenuseid. Pidage meeles,\n"
"et mõned teenused võivad serveris kasutatuna olla isegi ohtlikud. Üldiselt\n"
"tasub valida ainult neid teenuseid, mida Teil tõesti vaja läheb."
@@ -505,11 +511,11 @@ msgstr ""
"kõige enam vastab."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -565,7 +571,7 @@ msgid ""
msgstr ""
"X (ehk X Window System) kujutab endast GNU/Linuxi graafilise "
"kasutajaliidese\n"
-"tuuma ja südant, millele toetuvad kõik Mandriva Linuxiga kaasas käivad\n"
+"tuuma ja südant, millele toetuvad kõik Mageiaiga kaasas käivad\n"
"graafilised töökeskkonnad (KDE, GNOME, AfterStep, WindowMaker jne).\n"
"\n"
"Siin näidatakse Teile tervet nimekirja parameetreid, mida saab muuta,\n"
@@ -686,41 +692,45 @@ msgstr ""
"on tegutseda serverina või kui Teid ei kippunud seadistamise ajal edu saatma."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -729,15 +739,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -750,12 +760,12 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Olete jõudnud punkti, kus peate otsustama, kuhu täpselt Mandriva Linux\n"
+"Olete jõudnud punkti, kus peate otsustama, kuhu täpselt Mageia\n"
"oma kõvakettal paigaldada. Kui kõvaketas on tühi või mõni muu\n"
"operatsioonisüsteem seda täielikult kasutab, on vaja see osadeks jagada\n"
"ehk partitsioneerida.\n"
"Partitsioneerimine on tegevus, mille käigus tekitatakse kettale loogilised\n"
-"piirkonnad Teie uue Mandriva Linuxi süsteemi paigaldamiseks.\n"
+"piirkonnad Teie uue Mageiai süsteemi paigaldamiseks.\n"
"\n"
"Kuna kõvaketta jagamine on pöördumatu protsess, siis peab kogemusteta\n"
"kasutaja olema iseäranis ettevaatlik! Selle tegevuse lihtsustamiseks ja\n"
@@ -785,7 +795,7 @@ msgstr ""
"defragmenteerinud. Siiski ei tule kindlasti kahjuks ka andmetest varukoopia\n"
"valmistamine... See lahendus on soovitatav, kui tahate kasutada ühes "
"arvutis\n"
-"nii Mandriva Linuxit kui Microsoft Windowsit.\n"
+"nii Mageiait kui Microsoft Windowsit.\n"
"\n"
" Enne selle valiku kasuks otsustamist pidage silmas, et kirjeldatud "
"protseduuri\n"
@@ -795,19 +805,20 @@ msgstr ""
"paigaldamiseks.\n"
"\n"
" * \"%s\": kui soovite kustutada kõik andmed ja partitsioonid, mis\n"
-"kõvakettal parajasti on, ning asendada need uue Mandriva Linuxi süsteemiga, "
-"on\n"
+"kõvakettal parajasti on, ning asendada need uue Mageiai süsteemiga, on\n"
"see õige valik. Aga tasub olla ettevaatlik, sest pärast selle valiku "
"langetamist\n"
"tagasiteed enam ei ole...\n"
"\n"
-" NB! Kui valite selle võimaluse, kaotate kõik kõvakettal olevad andmed. !!\n"
+" NB! Kui valite selle võimaluse, kaotate kõik kõvakettal olevad "
+"andmed. !!\n"
"\n"
" * \"%s\": see puhastab kõvaketta senistest andmetest ja\n"
"käivitab uue paigaldusprotsessi, luues kõik partitsioonid uuesti. Kaovad ka\n"
"kõik kettal olnud andmed.\n"
"\n"
-" NB! Kui valite selle võimaluse, kaotate kõik kõvakettal olevad andmed. !!\n"
+" NB! Kui valite selle võimaluse, kaotate kõik kõvakettal olevad "
+"andmed. !!\n"
"\n"
" * \"%s\": valige see, kui soovite ise kontrollida kõvaketta jagamist.\n"
"Kuid olge ettevaatlik - see on küll võimas, aga ohte sisaldav\n"
@@ -903,8 +914,8 @@ msgstr ""
">>linux defcfg=\"floppy\"<< ja vajutades seejärel klahvi [Enter].\n"
"\n"
"(*) Teil läheb vaja FAT-vorminduses disketti. Sellise loomiseks GNU/Linuxi\n"
-"keskkonnas andke käsureal korraldus \"mformat a:\" või \"fdformat /dev/fd0"
-"\"\n"
+"keskkonnas andke käsureal korraldus \"mformat a:\" või \"fdformat /dev/"
+"fd0\"\n"
"ning seejärel \"mkfs.vfat /dev/fd0\"."
#: ../help.pm:412
@@ -928,7 +939,7 @@ msgid "Save packages selection"
msgstr "Paketivaliku salvestamine"
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -947,7 +958,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -969,16 +980,16 @@ msgstr ""
"\n"
"Klõpsake \"%s\", kui olete vormindamiseks valmis.\n"
"\n"
-"Klõpsake \"%s\", kui soovite valida oma uue Mandriva Linuxi süsteemi\n"
+"Klõpsake \"%s\", kui soovite valida oma uue Mageiai süsteemi\n"
"paigaldamiseks mõne muu partitsiooni.\n"
"\n"
"Klõpsake \"%s\", kui soovite valida partitsioone, millel kontrollitaks\n"
"vigaste plokkide olemasolu."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -990,7 +1001,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"On tõenäoline, et praegu, kui Te paigaldate Mandriva Linuxit, on mõned\n"
+"On tõenäoline, et praegu, kui Te paigaldate Mageiait, on mõned\n"
"paketid jõudnud pärast väljalaset juba uuenduskuuri üle elada. Mõnes on ära\n"
"parandatud paar väiksemat viga, mõnes turvaprobleemid. Et võiksite neist\n"
"uuendustest tulu lõigata, on Teil nüüd võimalik need Internetist alla "
@@ -1008,7 +1019,7 @@ msgstr ""
"paigaldada, või \"%s\", kui Te ei soovi seda teha."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1017,7 +1028,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1030,8 +1041,7 @@ msgstr ""
"enamasti kasutamise mõnevõrra keerukamaks.\n"
"\n"
"Kui Te ei tea, mida valida, jätke kehtima vaikimisi pakutud valik. Hiljem\n"
-"saate turvataset muuta Mandriva Linuxi juhtimiskeskuses abivahendiga "
-"Draksec.\n"
+"saate turvataset muuta Mageiai juhtimiskeskuses abivahendiga Draksec.\n"
"\n"
"Väli \"%s\" on mõeldud süsteemi turvalisuse eest vastutava kasutaja\n"
"teavitamiseks. Turvalisusega seotud teated saadetakse sellele aadressile."
@@ -1042,24 +1052,27 @@ msgid "Security Administrator"
msgstr "Turvahaldur"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1075,21 +1088,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1106,16 +1121,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Nüüd peate valima partitsiooni(d), kuhu soovite Mandriva Linuxi paigaldada.\n"
+"Nüüd peate valima partitsiooni(d), kuhu soovite Mageiai paigaldada.\n"
"Kui need on juba olemas kas GNU/Linuxi varasema paigalduse või mõne muu\n"
"kettajagamisvahendi tegevuse tulemusena, võite kasutada olemasolevaid\n"
"partitsioone. Vastasel juhul tuleb need luua.\n"
@@ -1185,12 +1194,6 @@ msgstr ""
"\n"
"Lähemat infot erinevate failisüsteemitüüpide kohta leiab \"Süvateadmiste\n"
"käsiraamatu\" (\"Reference Manual\") peatükist \"Linuxi failisüsteem\".\n"
-"\n"
-"Kui paigaldamine toimub PPC-masinas, tuleks luua vähemalt 1MB suurune\n"
-"väike HFS \"bootstrap\"-partitsioon, mida kasutab alglaadur yaboot. Kui Te\n"
-"aga teete selle partitsiooni natukene suuremaks (näiteks nii umbes 50MB),\n"
-"on see päris hea koht, kuhu hädaolukorraks paigutada tagavarakernel\n"
-"ja ramdisk-laadepildid."
#: ../help.pm:526
#, c-format
@@ -1228,40 +1231,46 @@ msgid "Toggle between normal/expert mode"
msgstr "Tava- ja ekspertrežiimi lülitamine"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Teie arvuti kõvakettal on rohkem kui üks Microsoft Windowsi partitsioon.\n"
-"Palun valige välja see, mille suurust soovite Mandriva Linuxi jaoks muuta.\n"
+"Palun valige välja see, mille suurust soovite Mageiai jaoks muuta.\n"
"\n"
"Teie abistamiseks on igal partitsioonil näidatud \"Nimi Linuxis\", \"Nimi "
"Windowsis\" ja \"Mahutavus\".\n"
@@ -1302,35 +1311,35 @@ msgstr ""
"riikide täisnimekirja."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Seda sammu on vaja ainult siis, kui masinas leiti varasem\n"
"GNU/Linuxi partitsioon.\n"
"\n"
"DrakX soovib nüüd teada, kas tahate paigaldada uue süsteemi või uuendada\n"
-"olemasolevat Mandriva Linuxi süsteemi:\n"
+"olemasolevat Mageiai süsteemi:\n"
"\n"
" * \"%s\": üldiselt pühib see vana süsteemi täielikult minema. Kui\n"
"soovite muuta praeguseid partitsioone või failisüsteemi, siis võiks seda "
@@ -1339,13 +1348,12 @@ msgstr ""
"ülekirjutamise eest päästa.\n"
"\n"
" * \"%s\": see paigaldamisviis võimaldab uuendada praegu olemasolevasse\n"
-"Mandriva Linuxi süsteemi paigaldatud pakette. Kettajagamisskeemi ega "
-"kasutajate\n"
+"Mageiai süsteemi paigaldatud pakette. Kettajagamisskeemi ega kasutajate\n"
"andmeid ei muudeta. Enamik seadistussamme on kasutatavad sarnaselt "
"tavapärasele\n"
"paigaldamisele.\n"
"\n"
-"Võimalus \"Uuendus\" peaks toimima edukalt Mandriva Linuxi süsteemides\n"
+"Võimalus \"Uuendus\" peaks toimima edukalt Mageiai süsteemides\n"
"alates versioonist 8.1. Uuenduse proovimist varasemate versioonide peal\n"
"me siiski ei soovita."
@@ -1385,7 +1393,7 @@ msgstr ""
"mitte-ladina asetusega klaviatuuri."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1401,8 +1409,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1440,7 +1447,7 @@ msgstr ""
"\n"
"Mõni sõna UTF-8 (unicode) toetuse kohta. Unicode on uus kodeering, mis\n"
"peaks hõlmama kõiki keeli. Selle täielik toetus ei ole GNU/Linuxis\n"
-"siiski veel täielikult teostatud. Seetõttu lähtub Mandriva Linux selle\n"
+"siiski veel täielikult teostatud. Seetõttu lähtub Mageia selle\n"
"kasutamisel või mittekasutamisel järgmistest asjaoludest:\n"
"\n"
" * Kui valite keele, mis üldreeglina kasutab muud kodeeringut (latin1 \n"
@@ -1574,7 +1581,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1596,10 +1603,10 @@ msgstr ""
"VÄGA TÄPSELT teate, mida teete!"
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1620,12 +1627,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Siin saate valida oma arvuti trükkimissüsteemi. Teised "
"operatsioonisüsteemid\n"
-"võivad Teile pakkuda vaid üht süsteemi, kuid Mandriva Linuxi puhul saate\n"
+"võivad Teile pakkuda vaid üht süsteemi, kuid Mageiai puhul saate\n"
"valida tervelt kahe seast.\n"
"\n"
" * \"%s\" - mis tähendab \"trüki kohe\" (\"print, do not queue\") - tuleks "
@@ -1650,7 +1657,7 @@ msgstr ""
"trükkimiseks või printeri seadistamiseks.\n"
"\n"
"Kui leiate hiljem, et siinkohal langetatud valik polnud vahest kõige parem,\n"
-"siis saate seda muuta Mandriva Linuxi juhtimiskeskuses PrinterDrake abil,\n"
+"siis saate seda muuta Mageiai juhtimiskeskuses PrinterDrake abil,\n"
"klõpsates seal nupule \"%s\"."
#: ../help.pm:768
@@ -1676,7 +1683,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1721,7 +1728,7 @@ msgstr ""
"Teie teada tegelikult on, klõpsake nuppu ja valige uus draiver."
#: ../help.pm:794
-#, c-format
+#, fuzzy, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1761,8 +1768,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1779,7 +1785,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1822,8 +1828,7 @@ msgstr ""
" * \"%s\": Kui soovite kohe seadistada juurdepääsu Internetti või\n"
"kohtvõrku, saate seda teha nupule klõpsates. Täpsemalt kõnelevad\n"
"võrgu seadistustest distributsiooniga kaasas olevad trükised või\n"
-"Mandriva Linuxi juhtimiskeskuse abimaterjalid."
-"\n"
+"Mageiai juhtimiskeskuse abimaterjalid.\n"
" * \"%s\": siin saab määrata HTTP ja FTP puhverserveri aadressid,\n"
"kui Teie masin asub puhverserveri taga.\n"
"\n"
@@ -1836,7 +1841,7 @@ msgstr ""
"\n"
" * \"%s\": kui soovite muuta alglaaduri seadistusi, klõpsake\n"
"sellele nupule. See on mõeldud siiski vaid kogenud kasutajatele.\n"
-"Täpsemat infot leiab käsiraamatust või Mandriva Linuxi juhtimiskeskusest.\n"
+"Täpsemat infot leiab käsiraamatust või Mageiai juhtimiskeskusest.\n"
"\n"
" * \"%s\": saate täpselt kontrollida, millised teenused Teie\n"
"süsteemis töötavad. Kui kavatsete kasutada oma masinat serverina, kuluks\n"
@@ -1858,13 +1863,13 @@ msgid "Graphical Interface"
msgstr "Graafiline kasutajaliides"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Valige kõvaketas, mida soovite puhastada oma uue Mandriva Linuxi\n"
+"Valige kõvaketas, mida soovite puhastada oma uue Mageiai\n"
"paigaldamiseks. Ettevaatust, kõik sellel leiduvad andmed hävitatakse\n"
"ja neid ei saa enam taastada."
@@ -1872,12 +1877,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Valige \"%s\", kui soovite kustutada kõik sellel kettal asuvad\n"
"partitsioonid. Ettevaatust, pärast \"%s\" klõpsamist ei ole enam\n"
diff --git a/perl-install/install/help/po/eu.po b/perl-install/install/help/po/eu.po
index f25f4049e..e2b20246e 100644
--- a/perl-install/install/help/po/eu.po
+++ b/perl-install/install/help/po/eu.po
@@ -1,7 +1,7 @@
# translation of eu.po to EUSKARA
# translation of DrakX-eu.po to EUSKARA
# translation of DrakX-eu.po to basque
-# EUSKARA: Mandriva Linux translation.
+# EUSKARA: Mageia translation.
# Copyright (C) 2002,2003, 2004, 2005 Free Software Foundation, Inc.
# Iñigo Salvador Azurmendi <xalba@euskalnet.net>, 2001-2002,2003,2004, 2005.
# Hizkuntza Politikarako Sailburuordetza <hizpol@ej-gv.es>, 2004.
@@ -11,25 +11,26 @@ msgstr ""
"Project-Id-Version: DrakX-eu\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2005-12-31 14:02+0100\n"
-"Last-Translator: Iñigo Salvador Azurmendi <xalba@euskalnet.net>\n"
+"PO-Revision-Date: 2014-10-05 15:08+0100\n"
+"Last-Translator: Egoitz Rodriguez Obieta <egoitzro@gmail.com>\n"
"Language-Team: EUSKARA <itzulpena@euskalgnu.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
+"X-Generator: Poedit 1.5.7\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
-"Aurrera jarraitu aurretik lizentziaren baldintzak arretaz irakurri. \n"
-"Mandriva Linux banaketa osoa hartzen du. Baldintza guztiekin ados \n"
+"Aurrera jarraitu aurretik lizentziaren baldintzak arretaz irakurri.\n"
+"Mageia banaketa osoa hartzen du. Baldintza guztiekin ados\n"
"bazaude, hautatu \"%s\" laukia. Onartzen ez badituzu, \"%s\" botoian klik\n"
"egin eta ordenagailua berrabiaraziko da."
@@ -116,12 +117,12 @@ msgstr ""
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Erabiltzaile izena"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Erabiltzailea onartu"
#: ../help.pm:54
#, c-format
@@ -133,7 +134,8 @@ msgstr "Eginbide hau erabili nahi duzu?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -143,24 +145,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Hemen dituzu zure disko zurrunean detektatutako Linux partizioak.\n"
@@ -203,13 +209,13 @@ msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux instalazioa zenbait CD-ROMetan banatuta dago. \n"
+"Mageia instalazioa zenbait CD-ROMetan banatuta dago. \n"
"Hautatutako pakete bat beste CD-ROM batean badago, DrakX-k du\n"
"uneko CDa egotziko eta behar den CDa sartzeko eskatuko dizu.\n"
"Eskatzen zaizun CDa ez badaukazu eskura, sakatu \"%s\",\n"
@@ -218,15 +224,14 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manual/literal/drakx/eu/drakx-help.xml
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -277,10 +282,10 @@ msgid ""
"megabytes."
msgstr ""
"Sisteman zein programa instalatu nahi dituzun zehazteko garaia da.\n"
-"Mandriva Linux-erako milaka pakete dituzu erabilgarri, eta kudeaketa\n"
+"Mageia-erako milaka pakete dituzu erabilgarri, eta kudeaketa\n"
"errazteko, antzeko aplikazioen multzotan kokatu dira.\n"
"\n"
-"Mandriva Linux-ek pakete multzoak lau kategoriatan antolatzen ditu.\n"
+"Mageia-ek pakete multzoak lau kategoriatan antolatzen ditu.\n"
"Kategoria anitzetako aplikazioak nahastu eta bateratu ditzakezu, honela\n"
"\"Lanpostua\" instalazio batek \"Zerbitzari\" kategoriako aplikazioak\n"
"instalatuta izan ditzake.\n"
@@ -362,10 +367,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -397,10 +402,10 @@ msgstr ""
"Zerbitzari pakete bat hautatu bada, pakete hori zehazki hautatu duzulako\n"
"edo pakete-talde bateko zati zelako, zerbitzari horiek instalatu nahi "
"dituzula\n"
-" berresteko eskatuko zaizu. Lehenespenez Mandriva Linux-ek instalatutako\n"
+" berresteko eskatuko zaizu. Lehenespenez Mageia-ek instalatutako\n"
"edozein zerbitzu abioan automatikoki abiaraziko du. Nahiz eta seguruak\n"
" diren eta arazo ezagunik ez duten banaketa kaleratzeko garaian, guztiz\n"
-" posible da Mandriva Linux bertsio hau amaitu eta gero segurtasun zuloak\n"
+" posible da Mageia bertsio hau amaitu eta gero segurtasun zuloak\n"
" aurkitu izana. Ez badakizu zerbitzu zehatz batek zer egiten duen edo "
"zergatik\n"
" instalatu den, klikatu \"%s\". \"%s \" klikatzeak zerrendatutako "
@@ -500,7 +505,7 @@ msgstr ""
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Hardware-erlojua GMT-an jarri "
#: ../help.pm:213
#, c-format
@@ -535,7 +540,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -590,7 +595,7 @@ msgid ""
"not successful in getting the display configured."
msgstr ""
"X (X Window sistema) GNU/Linux-en interfaze grafikoaren bihotza da,\n"
-" Mandriva Linux-ekin bildutako ingurune grafiko guztiek (KDE, Gnome,\n"
+" Mageia-ekin bildutako ingurune grafiko guztiek (KDE, Gnome,\n"
"Afterstep, WindowMaker...) erabiltzen dutena.\n"
"\n"
"Bistaratze grafiko optimoa lortzeko aldatu daitekeen parametro zerrenda\n"
@@ -713,39 +718,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -754,15 +763,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -775,11 +784,11 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Hona iritsita, Mandriva Linux sistema eragilea disko zurrunean non\n"
+"Hona iritsita, Mageia sistema eragilea disko zurrunean non\n"
"instalatu aukeratu behar duzu. Zure disko zurruna hutsik badago edo\n"
"lehendik dagoen sistema eragile batek leku erabilgarri guztia betetzen\n"
"badu, diska zatikatu beharko duzu. Disko zurruna zatikatzea, funtsean, \n"
-"diskoa logikoki zatitzea da, Mandriva Linux sistema berria instalatzeko\n"
+"diskoa logikoki zatitzea da, Mageia sistema berria instalatzeko\n"
"behar den lekua sortzeko.\n"
"\n"
"Disko zurruna zatikatzeko prozesua normalean itzulbiderik gabea denez\n"
@@ -810,7 +819,7 @@ msgstr ""
" edo NTFS partizioei neurria aldatu. Neurri aldaketa datu galerarik gabe\n"
"gauzatu daiteke baldin eta aurretik Windows partizioa desfragmentatu\n"
" baduzu. Oso gomendagarria da datuen babeskopiak egitea. Aukera hau\n"
-" erabiltzea gomendatzen da Mandriva Linux eta Microsoft Windows, biak,\n"
+" erabiltzea gomendatzen da Mageia eta Microsoft Windows, biak,\n"
" konputagailu berean erabili nahi badituzu.\n"
"\n"
" Aukera hau hautatu aurretik, ulertu ezazu prozedura honen ondoren,\n"
@@ -819,7 +828,7 @@ msgstr ""
"zure datuak gorde edo software berria instalatzeko.\n"
"\n"
" * \"%s\": Disko zurrunean dauden datu eta partizio guztiak ezabatu eta \n"
-"Mandriva Linux sistema berriarekin ordeztu nahi badituzu, hautatu aukera\n"
+"Mageia sistema berriarekin ordeztu nahi badituzu, hautatu aukera\n"
" hau. Kontuz, berretsi ondoren ezingo baituzu eragiketa desegin.\n"
"\n"
" !! Aukera hau hautatzen baduzu, diskoko datu guztiak ezabatuko dira. !!\n"
@@ -846,7 +855,7 @@ msgstr "Erabili lehendik dagoen partizioa"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Microsoften Windows-eko ® partizioko espazio librea erabili ezazu"
#: ../help.pm:370
#, c-format
@@ -937,17 +946,17 @@ msgstr "Sortu auto-instalazioko disketea"
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Errepikatu"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Automatizatuta"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Pakete-hautaketa gorde ezazu"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manual/literal/drakx/eu/drakx-help.xml
@@ -971,7 +980,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -992,8 +1001,7 @@ msgstr ""
"\n"
"Klikatu \"%s\" partizioak eratzeko prest zaudenean.\n"
"\n"
-"Klikatu \"%s\" Mandriva Linux sistema eragile berria instalatzeko beste "
-"partizio\n"
+"Klikatu \"%s\" Mageia sistema eragile berria instalatzeko beste partizio\n"
" bat aukeratu nahi baduzu.\n"
"\n"
"Klikatu \"%s\" diskoan hondatutako blokeak aurkitzeko egiaztatuko diren\n"
@@ -1004,7 +1012,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1016,7 +1024,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Mandriva Linux instalatzen duzunerako, litekeena da pakete batzuk\n"
+"Mageia instalatzen duzunerako, litekeena da pakete batzuk\n"
"hasierako argitalpenetik aldatu izana. Baliteke akatsak zuzendu eta \n"
"segurtasun arazoak konpondu izatea. Eguneratzeez baliatu ahal izan\n"
"zaitezen, orain, Internetetik jaitsi ditzakezu. Markatu \"%s\" dabilen "
@@ -1041,7 +1049,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1054,7 +1062,7 @@ msgstr ""
"ezartzean, normalean erabilera erraztasuna galtzen da.\n"
"\n"
"Zer aukeratu ez badakizu, hautatu aukera lehenetsia. Gero aldatu \n"
-"ahal izango duzu draksec tresnarekin, Mandriva Linux Aginte Gunearen\n"
+"ahal izango duzu draksec tresnarekin, Mageia Aginte Gunearen\n"
"zati bat.\n"
"\n"
"Bete \"%s\" eremua segurtasun arduradunaren postaE helbidearekin.\n"
@@ -1071,21 +1079,24 @@ msgstr "Segurtasun-administratzailea"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1101,21 +1112,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1132,16 +1145,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Orain, Mandriva Linux sistema instalatzeko zein partizio erabiliko\n"
+"Orain, Mageia sistema instalatzeko zein partizio erabiliko\n"
"d(ir)en aukeratu behar duzu. Partizioak jadanik definituta badaude,\n"
"(GNU/Linux-en aurreko instalazio batek edo beste partizio-tresna batek\n"
"definituta), lehendik dauden partizioak erabil ditzakezu. Bestela, disko \n"
@@ -1158,7 +1165,7 @@ msgstr ""
" * \"%s\": aukera honek hautatutako disko zurruneko partizio guztiak \n"
"ezabatzen ditu\n"
"\n"
-" * \"%s\": aukera honekin automatikoki sor ditzakezu ext3 eta\n"
+" * \"%s\": aukera honekin automatikoki sor ditzakezu ext4 eta\n"
"swap partizioak disko zurruneko leku librean\n"
"\n"
"\"%s\": eginbide gehiagotarako aukera ematen du:\n"
@@ -1211,27 +1218,21 @@ msgstr ""
"\n"
"Erabil daitezkeen fitxategi-sistema desberdinei buruzko informazioa\n"
"lortzeko, irakurri ``Erreferentzia Eskuliburuko'' ext2FS kapitulua.\n"
-"\n"
-"PPC makina batean instalatu behar baduzu, gutxienez 1 Mbko HFS\n"
-"``bootstrap'' partizio txiki bat sortzea komeni zaizu, yaboot\n"
-"abioko kargatzaileak erabil dezan. Partizioa handixeagoa egitea hautatzen \n"
-"baduzu, adibidez 50 MBkoa, leku egokia izan daiteke ordezko nukleo bat\n"
-"eta ramdisk imajinak biltegiratzeko emergentziazko abioa egin ahal izateko."
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Partizio taula gorde"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Partizio taula berritu"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Partizio taula berrezkuratu"
#: ../help.pm:526
#, c-format
@@ -1241,12 +1242,12 @@ msgstr "Euskarri aldagarriak automuntatzea"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Morroia"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Desegin"
#: ../help.pm:526
#, c-format
@@ -1258,38 +1259,44 @@ msgstr "Aldatu modu normalera/aditu modura"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Microsoft partizio bat baino gehiago aurkitu dira zure disko zurrunean.\n"
-"Hautatu zeinen tamaina aldatu nahi duzun, Mandriva Linux sistema\n"
+"Hautatu zeinen tamaina aldatu nahi duzun, Mageia sistema\n"
"berria instalatu ahal izateko.\n"
"\n"
"Partizioak honela azaltzen dira: \"Linux izena\", \"Windows izena\"\n"
@@ -1343,43 +1350,43 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Zure makinan GNU/Linux partizio zahar bat aurkitzen bada bakarrik\n"
"aktibatzen da urrats hau.\n"
"\n"
"DrakX-k orain jakin behar du instalazio berri bat egin behar duzun edo\n"
-"lehendik dagoen Mandriva Linux sistema baten bertsioa berritu nahi duzun:\n"
+"lehendik dagoen Mageia sistema baten bertsioa berritu nahi duzun:\n"
"\n"
" * \"%s\": Zatirik handienean, sistema zaharra guztiz ezabatzen du. \n"
"Disko zurruneko partizio-banaketa aldatu nahi baduzu, edo fitxategi-sistema\n"
"aldatu, erabili aukera hau. Nolanahi ere, zure partizio-eskemaren arabera,\n"
"lehendik dauden datu batzuk gainidaztea saihestu dezakezu.\n"
"\n"
-" * \"%s\" instalazio-mota honek unean Mandriva Linux sisteman \n"
+" * \"%s\" instalazio-mota honek unean Mageia sisteman \n"
"instalatuta dituzun paketeak eguneratzeko aukera ematen du. Uneko \n"
"partizio-eskema eta erabiltzaile-datuak ez dira aldatzen. Bestelako \n"
"konfigurazio-urrats gehienak erabilgarri mantentzen dira, instalazio\n"
"estandarretan bezalatsu.\n"
"\n"
-"``Bertsio-berritu'' aukerak ondo funtzionatu behar luke Mandriva Linux\n"
-"sistemaren \"8.1\" bertsioetan edo berriagoetan. Mandriva Linux-en \"8.1\" \n"
+"``Bertsio-berritu'' aukerak ondo funtzionatu behar luke Mageia\n"
+"sistemaren \"8.1\" bertsioetan edo berriagoetan. Mageia-en \"8.1\" \n"
"baino bertsio zaharragoetan ez da gomendatzen Bertsio-berritzea."
# DO NOT BOTHER TO MODIFY HERE, SEE:
@@ -1442,8 +1449,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1485,8 +1491,7 @@ msgstr ""
"UTF-8 (unicode) euskarriari buruz: Unicode karaktere kodeketa berri bat da,\n"
"existitzen diren hizkuntza guztiak hartu nahi dituena. Hala ere, "
"berarentzako\n"
-"erabateko euskarria oraindik garatzen ari da GNU/Linux-en, Mandriva Linux-"
-"en\n"
+"erabateko euskarria oraindik garatzen ari da GNU/Linux-en, Mageia-en\n"
"UTF-8 erabilera erabiltzailearen hautaketen araberakoa da:\n"
"\n"
" * Jatorrizko kodeketa ahaltsua duen hizkuntza bat aukeratzen baduzu \n"
@@ -1522,7 +1527,7 @@ msgstr "Gaztelania"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Modu lehenetsian Erabili Unikodea"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manual/literal/drakx/eu/drakx-help.xml
@@ -1629,7 +1634,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1658,7 +1663,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1679,12 +1684,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Inprimatzeko sistema bat hautatzeko unea da orain.Eeste sistema eragile \n"
-"batzuk bakarra eskainiko dizute, baina Mandriva Linux-ek bi eskaintzen "
-"ditu.\n"
+"batzuk bakarra eskainiko dizute, baina Mageia-ek bi eskaintzen ditu.\n"
"Inprimaketa sistema bakoitza egokiago da konfigurazio mota batzuetarako.\n"
"\n"
" * \"%s\" -- ``print, do not queue'' esapidearen akronimoa da, eta aukera\n"
@@ -1705,7 +1709,7 @@ msgstr ""
"hautatzeko eta inprimagailua kudeatzeko interfaze grafikoak ditu.\n"
"\n"
"Hautapena orain egiten baduzu, eta beranduago ohartzen bazara zure\n"
-" inprimaketa sistema ez zaizula guztoko Mandriva Linux Aginte Guneko\n"
+" inprimaketa sistema ez zaizula guztoko Mageia Aginte Guneko\n"
" PrintDrake exekutatuz eta \"%s\" botoian klik eginez alda zenezake."
#: ../help.pm:768
@@ -1716,7 +1720,7 @@ msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
@@ -1733,7 +1737,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1776,7 +1780,7 @@ msgstr ""
"botoian klik egin eta beste gidari bat hauta dezakezu."
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1816,8 +1820,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1834,7 +1837,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1863,11 +1866,6 @@ msgstr ""
" * \"%s\": egiaztatu uneko sagu konfigurazioa eta klikatu botoia aldatzea\n"
"beharrezka bada.\n"
"\n"
-" * \"%s\": \"%s\" botoian klikatzeak inprimagailu konfigurazio morroia\n"
-"irekiko du. Kontsultatu ``Hasiberrien Gida''n dagokion atala inprimagailu\n"
-"berri bat nola ezarri jakiteko. Bertan azaldutako interfazea instalazioan\n"
-" erabiltzen denaren antzekoa da.\n"
-"\n"
" * \"%s\": zure sisteman soinu txartel bat detektatzen bada, hemen\n"
" bistaratuko da. Bistaratutako soinu-txartela zure sisteman instalatuta "
"dagoena ez dela Ikusten baduzu, botoian klikatu eta beste gidari bat\n"
@@ -1902,20 +1900,17 @@ msgstr ""
"\n"
" * \"%s\": abio zamatzailearen konfigurazioa aldatu nahi baduzu, klikatu\n"
"botoi hontan. Erabiltzaile aurreratuek bakarrik erabili behar lukete. Jo\n"
-"inprimatutako dokumentaziora edo Mandriva Linux Aginte Guneko\n"
+"inprimatutako dokumentaziora edo Mageia Aginte Guneko\n"
" abio-zamatzailearen konfigurazioari buruzko lerroko laguntzara.\n"
"\n"
" * \"%s\": sarrera honen bitartez zehatz doitu dezakezu zure makinan\n"
"zein zerbitzu exekutatuko diren. Makina hau zerbitzari moduan erabiltzeko\n"
-"asmoa badaukazu ona litzateke ezarpen hau errepasatzea.zure makinan zein "
-"zerbitzu exekutatuko diren doitasunez \n"
-"kontrola dezakezu hemendik. Makina hau zerbitzari gisa erabiltzeko asmoa \n"
-"baduzu, konfigurazio hau berrikustea komeni zaizu."
+"asmoa badaukazu ona litzateke ezarpen hau errepasatzea."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "ISDN txartela"
+msgstr "TB txartela"
#: ../help.pm:809
#, c-format
@@ -1932,11 +1927,11 @@ msgstr "Interfaze grafikoa"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Hautatu Mandriva Linux partizio berria instalatu ahal izateko ezabatu nahi\n"
+"Hautatu Mageia partizio berria instalatu ahal izateko ezabatu nahi\n"
"duzun disko zurruna. Kontuz ibili, unitate horretako datu guztiak galdu\n"
"egingo dira eta ezin izango dira berreskuratu!"
@@ -1946,12 +1941,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Sakatu \"%s\" disko zurrun honetako datu eta partizio guztiak \n"
"ezabatu nahi badituzu. Kontuz ibili, \"%s\" sakatu ondoren \n"
@@ -1971,117 +1968,3 @@ msgstr "Hurrengoa ->"
#, c-format
msgid "<- Previous"
msgstr "<- Aurrekoa"
-
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "\"%s\": \"%s\" botoian klik eginda inprimagailuak konfiguratzeko morroia\n"
-#~ "irekiko da. Begiratu \"Starter Guide\"/\"Hasiberrien Gida\"-n dagokion\n"
-#~ "kapitulua inprimagailu berria nola ezarri jakiteko. Gure eskuliburuan \n"
-#~ "aurkeztutako interfazea instalazio garaian erabilitakoaren antzekoa da."
-
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manual/literal/drakx/eu/drakx-help.xml
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Hau da erabaki puntu garrantzitsuena zure GNU/Linux sistemaren\n"
-#~ " segurtasunerako: \"root\" pasahitza idatzi behar duzu. \"Root\" sistema\n"
-#~ " administratzailea da eta berak bakarrik dauka sistema eguneratu,\n"
-#~ " erabiltzaileak erantsi, konfigurazio orokorra aldatu eta "
-#~ "horrelakoetarako\n"
-#~ " baimena. Labur esateko, \"root\"ek guztia egin dezake! Horregatik "
-#~ "aukeratu\n"
-#~ "behar duzu asmatzeko zaila den pasahitza. DrakX-k esango dizu aukeratzen\n"
-#~ "duzun pasahitza errazegia den. Ikus dezakezunez ez zaude pasahitz bat\n"
-#~ "sartzera behartuta, baino biziki gomendatzen dizugu horrelakorik ez "
-#~ "egitea.\n"
-#~ "GNU/Linux, erabilzaileen akatsetara beste edozein sistema eragilek adina\n"
-#~ " joera dauka. \"root\"-ek muga guztiak gaindi ditzakeenez eta nahi gabe\n"
-#~ " partizioetako datu guztiak ezaba ditzakeenez beraietara behar bezain\n"
-#~ "kontuz ez sartzeagatik, garrantzi handia dauka \"root\" gisa sartzea\n"
-#~ "zaila izatea.\n"
-#~ "\n"
-#~ "Pasahitzak karaktere alfanumerikoen nahasketa izan behar luke, gutxienez\n"
-#~ "8 karakterekoa. Ez idatzi inon \"root\" pasahitza - zure sistema "
-#~ "arriskuan\n"
-#~ "jartzea izugarri errazten du.\n"
-#~ "\n"
-#~ "Oharra - ez egin pasahitza luzeegia edo konplexuegia, gero zuk "
-#~ "gogoratzeko\n"
-#~ "modukoa izan behar baitu!\n"
-#~ "\n"
-#~ "Pasahitza ez da pantailan bistaratuko zuk idatzi bitartean. Tekleatzean\n"
-#~ "egindako akatsak saihesteko, pasahitza bi aldiz idatzi beharko duzu.\n"
-#~ "Akats tipografiko bera bil aldiz egiten baduzu, pasahitz ``oker'' hori "
-#~ "erabili\n"
-#~ " beharko duzu \"root\" bezela konektatzen zaren lehen aldian.\n"
-#~ "\n"
-#~ "Ordenagailu honen sarbidea autentifikazio-zerbitzari batek kontrolatzea\n"
-#~ "nahi baduzu, egin klik \"%s\" botoian.\n"
-#~ "\n"
-#~ "Zure sareak LDAP, NIS, edo PDC Windows domeinuen autentifikazio\n"
-#~ " zerbitzuak erabiltzen baditu, hautatu \"%s\"ri dagokiona. Zein erabili "
-#~ "ez\n"
-#~ " badakizu, galdetu sare-administratzaileari.\n"
-#~ "\n"
-#~ "Pasahitzak gogoratzeko arazoak badituzu, edo zure ordenagailua inoiz ez\n"
-#~ " bada Internetera konektatuta egongo eta konfiantza osoa baduzu\n"
-#~ " ordenagailua erabiltzen duten guztiengan, \"%s\" hauta dezakezu."
-
-#~ msgid "authentication"
-#~ msgstr "egiaztatzea"
diff --git a/perl-install/install/help/po/fa.po b/perl-install/install/help/po/fa.po
index c778554a3..220fd90a2 100644
--- a/perl-install/install/help/po/fa.po
+++ b/perl-install/install/help/po/fa.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2005-02-26 06:31+0100\n"
"Last-Translator: Abbas Izad <abbasizad@hotmail.com>\n"
"Language-Team: Persian\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -17,10 +18,10 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -132,7 +133,8 @@ msgstr "آیا می‌خواهید از این قابلیت استفاده کن
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -142,24 +144,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"قسمت‌بندی‌های لینوکس شناسائی شده‌ی موجود بر دیسک شما در اینجا فهرست شده‌اند.\n"
@@ -191,9 +197,9 @@ msgstr ""
"\"دومین کمترین شناسه SCSI\"، و غیره."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -201,20 +207,19 @@ msgid ""
msgstr ""
"نصب لینوکس ماندریبا در چند سی‌دی پخش شده است. اگر بسته انتخاب شده بر روی\n"
"سی‌دی دیگری قرار دارد DrakX سی‌دی کنونی را بیرون زده و از شما میخواهد که\n"
-"سی‌دی خواسته شده را داخل کنید. اگر آن سی‌دی مورد تقاضا را ندارید فقط بر روی \"%"
-"s\"\n"
+"سی‌دی خواسته شده را داخل کنید. اگر آن سی‌دی مورد تقاضا را ندارید فقط بر روی "
+"\"%s\"\n"
"کلیک کنید و بسته‌های مربوطه نصب نخواهند شد."
#: ../help.pm:95
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -285,8 +290,8 @@ msgstr ""
"از آن رده انتخاب کنید. گروه مخصوص \"LSB\" سیستمتان را طوری پیکربندی\n"
"خواهد کرد تا هر چه بیشتر با مقررات پایه استاندارد لینوکس مطابقت داشته باشد.\n"
"\n"
-" انتخاب گروه \"LSB\" همچنین سریال هسته \"2.4\" را نیز بجای پیش فرض \"2.6"
-"\" \n"
+" انتخاب گروه \"LSB\" همچنین سریال هسته \"2.4\" را نیز بجای پیش فرض "
+"\"2.6\" \n"
"نصب خواهد کرد. این برای اطمینان ۱۰۰٪٪-مطابقت سیستم است. هر چند، اگر گروه\n"
"\"LSB\" را انتخاب نکنید سیستمی خواهید داشت که تقریبا ۱۰۰٪٪ LSB-تطبیق دارد.\n"
"\n"
@@ -339,7 +344,7 @@ msgid "Truly minimal install"
msgstr "کوچکترین نصب واقعی"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -352,10 +357,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -519,11 +524,11 @@ msgstr ""
"سؤال خواهد شد."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -696,41 +701,45 @@ msgstr ""
"پیکربندی نمایشگر خود موفق نبوده‌اید."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -739,15 +748,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -924,7 +933,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -943,7 +952,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -972,9 +981,9 @@ msgstr ""
"را انتخاب کنید بر %s کلیک کنید."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1000,7 +1009,7 @@ msgstr ""
"دریافت و نصب بسته‌های انتخاب شده، یا \"%s\" را برای ترک فشار دهید."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1009,7 +1018,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1035,24 +1044,27 @@ msgid "Security Administrator"
msgstr "مدیر امنیت"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1068,21 +1080,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1099,14 +1113,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"در این نقطه، شما مجبور به انتخاب قسمت‌بندی(های) که برای نصب سیستم لینوکس \n"
"ماندریبا استفاده خواهد شد هستید.اگر قسمت‌بندی‌هایی که یا از یک نصب قبلی \n"
@@ -1123,7 +1131,7 @@ msgstr ""
" * \"%s\": این گزینه تمام قسمت‌بندی‌های روی دیسک انتخاب شده را حذف می‌کند\n"
"\n"
" * \"%s\": این گزینه بر روی فضای آزاد دیسک شما بطور خودکار قسمت‌بندی‌های\n"
-"ext3 و حافظه مبادله را ایجاد می‌کند\n"
+"ext4 و حافظه مبادله را ایجاد می‌کند\n"
"\n"
"\"%s\": دسترسی به قابلیت‌های دیگر را فراهم می‌سازد\n"
"\n"
@@ -1173,12 +1181,6 @@ msgstr ""
"\n"
"برای دریافت اطلاعات درباره انواع سیستم پرونده موجود، لطفاً فصل ext2FS \n"
"را از ` دستورالعمل مرجع'' بخوانید.\n"
-"\n"
-"اگر شما بر یک ماشین PPC نصب می‌کنید، شما باید یک قسمت‌بندی کوچک HFS \n"
-"``bootstrap'' حداقل ۱ مگابایت که برای بارگذار آغازگر yaboot\n"
-"استفاده می‌شود را ایجاد کنید اگر شما بطور اختیاری آن قسمت‌بندی را بزرگتر\n"
-"بسازید، مثلاً ۵۰ مگابایت، شما آن را برای انبار یک هسته یدک و تصاویر ramdisk\n"
-"در شرایط آغازگری اضطراری مفید خواهید یافت."
#: ../help.pm:526
#, c-format
@@ -1216,36 +1218,42 @@ msgid "Toggle between normal/expert mode"
msgstr "تعویض بین حالت عادی/کارشناسی"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"بیش از یک قسمت‌بندی مایکروسافت بر دیسک شما شناسایی شده است. \n"
@@ -1293,29 +1301,29 @@ msgstr ""
"کامل کشورها کلیک کنید."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"این گام فقط در صورتی که یک قسمت‌بندی قدیمی لینوکس/گنو بر ماشین شما پیدا شود\n"
"فعال می‌گردد. \n"
@@ -1374,7 +1382,7 @@ msgstr ""
"و غیر لاتین تعویض کنید خواهد داد."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1390,8 +1398,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1572,7 +1579,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1595,10 +1602,10 @@ msgstr ""
"استفاده کنید."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1619,7 +1626,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"اکنون زمان آن رسیده است که سیستم چاپ را بر روی رایانه خود انتخاب کنید. "
@@ -1678,7 +1685,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1761,8 +1768,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1779,7 +1785,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1870,10 +1876,10 @@ msgid "Graphical Interface"
msgstr "واسط گرافیکی"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"دستگاه دیسکی را که می‌خواهید برای نصب قسمت‌بندی جدید لینوکس ماندریبا\n"
@@ -1884,12 +1890,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"اگر می‌خواهید تمام داده‌ها و قسمت‌بندی‌های موجود بر این دیسک را حذف کنید \n"
"بر \"%s\" کلیک نمایید. دقت کنید که بعد از کلیک بر \"%s\"، دیگر نمی‌توانید\n"
diff --git a/perl-install/install/help/po/fi.po b/perl-install/install/help/po/fi.po
index 32ca05778..8f2f5d961 100644
--- a/perl-install/install/help/po/fi.po
+++ b/perl-install/install/help/po/fi.po
@@ -1,39 +1,35 @@
-# DrakX-fi - Finnish Translation
-#
-# Copyright (C) 2002,2003, 2004, 2005 Free Software Foundation, Inc.
-# Copyright (C) 2002 Mandriva
-# Matias Griese <mahagr@utu.fi>, 2001.
-# Taisto Kuikka <69319@batman.jypoly.fi>, 2003,2004.
-# Esa Linna <denzo@mbnet.fi>, 2004.
-# Thomas Backlund <tmb@mandrake.org>, 2002, 2003, 2004, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-fi - LE2005 Release\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2005-04-03 20:59+0300\n"
-"Last-Translator: Thomas Backlund <tmb@mandrake.org>\n"
-"Language-Team: Finnish <fi@li.org>\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>, 2024\n"
+"Language-Team: Finnish (https://app.transifex.com/MageiaLinux/teams/9361/"
+"fi/)\n"
+"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
-"Ennen jatkamista sinun pitäisi lukea huolellisesti lisenssin ehdot.\n"
-"Lisenssi kattaa koko Mandriva Linux jakelun. Jos hyväksyt kaikki\n"
-"ehdot, valitse \"%s\" valinta. Jos et hyväksy ehtoja, painamalla \n"
-"\"%s\" painiketta tietokoneesi käynnistyy uudestaan."
#: ../help.pm:20
#, c-format
@@ -92,8 +88,8 @@ msgstr ""
"kirjoittaa mitä tahansa. DrakX kopioi ensimmäisen kirjoittamasi sanan\n"
"kenttään \"%s\". Tämä on se nimi jolla kyseinen käyttäjä kirjautuu\n"
"järjestelmään. Voit muuttaa sitä halutessasi. Sinun pitää myös syöttää\n"
-"salasana. Tavallisen käyttäjän salasana ei ole niin kriittinen kuin \"root"
-"\"\n"
+"salasana. Tavallisen käyttäjän salasana ei ole niin kriittinen kuin "
+"\"root\"\n"
"-käyttäjän turvallisuusnäkökulmasta, mutta tämä ei ole syy tietoturvan\n"
"laiminlyömiseen: Onhan kysymys tiedostojesi turvasta.\n"
"\n"
@@ -130,7 +126,8 @@ msgstr "Haluatko käyttää tätä ominaisuutta?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -140,24 +137,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Tässä on listaus olemassa olevista tunnistetuista Linux-osioista\n"
@@ -195,28 +196,22 @@ msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linuxin asennus koostuu useasta CD-ROM-levystä. DrakX tietää,\n"
-"onko valittu paketti toisella CD:llä ja osaa syöttää nykyisen levyn ulos\n"
-"ja pyytää sinua asettamaan oikean levyn tarvittaessa. Jos sinulla ei ole\n"
-"kyseistä CD-levyä käytettävissä, klikkaa vain \"%s\", ja kyseiset paketit\n"
-"ei asenneta."
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -266,64 +261,6 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"Nyt on aika valita mitä ohjelmia haluat asentaa järjestelmääsi. Tarjolla\n"
-"on tuhansia paketteja Mandriva Linux jakelussa, ja pakettien\n"
-"hallinnan helpottamiseksi ne on koottu samanlaisten ohjelmistojen\n"
-"ryhmiin.\n"
-"\n"
-"Paketit on ryhmitelty ryhmiin koneesi käyttötarkoituksen mukaisesti.\n"
-"Mandriva Linux sisältää neljä eri ennakkoon määriteltyä asennustapaa.\n"
-"Voit verrata asennustapoja pakettiryhmiin. Voit tietysti asentaa paketteja\n"
-"eri ryhmistä niin halutessasi, joten ``Työasema''-asennus voi sisältää\n"
-"ohjelmia esimerkiksi ``Kehitysympäristö''-ryhmästä.\n"
-"\n"
-" * \"%s\": Jos aiot käyttää konettasi työasemana, valitse yksi tai useampi\n"
-" ohjelma tästä ryhmästä.\n"
-"\n"
-" * \"%s\": Jos konettasi aiotaan käyttää ohjelmakehitykseen, valitse yksi "
-"tai\n"
-"useampi haluttu paketti tästä ryhmästä. Erillinen \"LSB\" ryhmä asettaa\n"
-"järjestelmäsi seuraamaan Linux Standard Base määritykset \n"
-"mahdollisimman tarkoin.\n"
-"\n"
-" Valitsemalla \"LSB\" ryhmää asentaa myös \"2.4\" sarjan ytimet, vakiona\n"
-"olevien \"2.6\" sarjan ytimien sijasta. Tämä jotta varmistetaan 100%% LSB-\n"
-"yhteensopivuutta järjestelmässä. Huomioi, vaikka jätät \"LSB\" ryhmää\n"
-"valitsematta, sinulla on kummiskin järjestelmä joka on melkein 100%%\n"
-"\"LSB\"-yhteensopiva.\n"
-"\n"
-" * \"%s\": Jos koneesi on tarkoitettu toimimaan palvelimena' valitse yksi "
-"tai\n"
-"useampi haluttu palvelu tai palvelinohjelma tästä ryhmästä.\n"
-"\n"
-" * \"%s\": täältä valitset haluamasi graafisen ympäristön. Ainakin yksi "
-"pitää\n"
-"olla valittu jos haluat graafisen työaseman!\n"
-"\n"
-"Jos siirrät hiiren kohdistinta ryhmänimen yläpuolella, lyhyt selostus "
-"ryhmän\n"
-"sisällöstä tulee näkyviin. Jos poistat kaikki ryhmävalinnat kun teet \n"
-"tavallisen asennuksen (päivityksen sijasta), esille tulee dialogi, joka \n"
-"ehdottaa kolmea eri optiota vähimmäisasennukseen:\n"
-"\n"
-" * \"%s\": asenna vain tarvittavat paketit, joilla saat toimivan graafisen\n"
-"työpöydän;\n"
-"\n"
-" * \"%s\": asentaa perusjärjestelmän ja perustyökalut sekä niiden\n"
-"dokumentaatiot. Tämä valinta sopii palvelinasennukseen;\n"
-"\n"
-" * \"%s\": asentaa ainoastaan tarvittavat osat saadaksesi toimivan\n"
-"komentorivipohjaisen Linux-järjestelmän. Tämä asennus vie vain noin \n"
-"65 Mt tilaa.\n"
-"\n"
-"Voit valita \"%s\" jos tarjolla olevat paketit ovat tuttuja sinulle tai jos "
-"haluat\n"
-"täydellisen hallinnan asennettaviin paketteihin.\n"
-"\n"
-"Jos aloitit asennuksen \"%s\"-tilassa, voit poistaa kaikkien ryhmien "
-"valinnat\n"
-"välttääksesi uusien pakettien asentamisen. Tämä on hyödyllistä jos haluat\n"
-"korjata tai päivittää olemassa olevaa järjestelmää."
#: ../help.pm:149 ../help.pm:591
#, c-format
@@ -335,7 +272,6 @@ msgstr "Päivitä"
msgid "With basic documentation"
msgstr "Perusdokumentaation kanssa"
-# Asennuksen sivuvalikko
#: ../help.pm:149
#, c-format
msgid "Truly minimal install"
@@ -355,10 +291,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -378,39 +314,6 @@ msgid ""
"another installation. See the second tip of the last step on how to create\n"
"such a floppy."
msgstr ""
-"Jos valitsit mahdollisuuden valita yksittäisiä paketteja, sinulle\n"
-"näytetään hakemistopuu, jossa kaikki paketit ovat luokiteltuina\n"
-"ryhmien ja alaryhmien mukaan. Kun selaat puuta, voit valita koko\n"
-"ryhmät, alaryhmät tai yksittäiset paketit.\n"
-"\n"
-"Kun valitset paketin hakemistopuussa, sen kuvaus näkyy oikean-\n"
-"puoleisessa ikkunassa, jotta tietäisit paketin tarkoituksen.\n"
-"\n"
-"!! Jos palvelinpaketti on valittu, joko tarkoituksella tai koska se kuului\n"
-"johonkin valitsemaasi ryhmään, sinulta pyydetään vahvistusta,\n"
-"haluatko varmasti asentaa palvelimen. Oletuksena Mandriva Linux\n"
-"käynnistää jokaisen asennetun palvelin koneen käynnistyksen\n"
-"yhteydessä. Vaikka ne ovat turvallisia eikä niillä ole tunnettuja\n"
-"ongelmia jakelun julkaisuajankohtana, niistä voi löytyä turvallisuus-\n"
-"reikiä jakelun valmistumisen jälkeen. Jos et tiedä mihin joku tietty\n"
-"palvelu on tarkoitettu, tai miksi sitä asennetaan, paina \"%s\". Jos\n"
-"painat \"%s\" listatut palvelut asennetaan sekä käynnistetään\n"
-"automaattisesti oletuksena koneen käynnistyksessä !!\n"
-"\n"
-"Optio \"%s\" estää virhedialogin\n"
-"joka ilmestyy joka kerta kun asennusohjelma automaattisesti\n"
-"valitsee paketin riippuvuuksien täyttämiseksi. Jotkut paketit sisältävät\n"
-"riippuvuuksia jotka vaativat että joku toinen paketti on jo asennettu\n"
-"ennen kuin se voidaan asentaa. Asennusohjelma osaa itse huolehtia\n"
-"siitä että nämä riippuvuudet on täytetty jotta asennus valmistuisi\n"
-"onnistuneesti.\n"
-"\n"
-"Listan alla olevalla levykkeen kuvakkeella voit hakea pakettilistan\n"
-"joka on luotu edellisessä asennuksessa. Tämä on hyödyllistä jos\n"
-"sinulla on monta konetta joihin haluat suorittaa samanlaisen asennuksen.\n"
-"Jos painat tätä kuvaketta, sinua pyydetään asettamaan levyke joka on\n"
-"luotu toisen asennuksen lopussa. Katso edellisen vaiheen toisesta\n"
-"vihjeestä, miten luot sellaisen levykkeen."
#: ../help.pm:183
#, c-format
@@ -522,7 +425,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -576,57 +479,6 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
-"X (eli X Ikkunointijärjestelmä) on GNU/Linuxin graafisen käyttöliittymän\n"
-"sydän jota kaikki graafiset ympäristöt (KDE, Gnome, AfterStep,\n"
-"WindowMaker jne.), jotka seuraavat Mandriva Linuxin mukana,\n"
-"käyttävät alustanaan.\n"
-"\n"
-"Sinulle näytetään lista eri parametreista joita voit asettaa saadaksesi\n"
-"optimaalisen graafisen näytön:\n"
-"\n"
-"Näytönohjain\n"
-"\n"
-" Asennusohjelma yleensä tunnistaa ja asettaa koneeseesi asennetun\n"
-"näytönohjaimen. Mikäli tämä ei onnistunut, voit itse valita oikean mallin\n"
-"listasta omistamasi korttisi mukaisesti.\n"
-"\n"
-" Mikäli eri palvelimia on käytettävissä kortillesi, 3D tuella vai ilman,\n"
-"sinua pyydetään valitsemaan palvelin joka parhaiten vastaa tarpeitasi.\n"
-"\n"
-"\n"
-"\n"
-"Näyttö\n"
-"\n"
-" Asennusohjelma normaalisti tunnistaa ja asettaa koneeseesi liitetyn\n"
-"näytön automaattisesti. Jos tunnistus epäonnistuu voit valita oikean\n"
-"näytön listasta.\n"
-"\n"
-"\n"
-"\n"
-"Näyttötila\n"
-"\n"
-" Tässä voit valita näyttötilan ja värisyvyyden jota laitteistosi tukee.\n"
-"Valitse se joka parhaiten vastaa tarpeitasi (voit tietysti vaihtaa sitä\n"
-"asennuksen jälkeenkin). Malli valitusta asetuksesta näytetään näytössä.\n"
-"\n"
-"\n"
-"\n"
-"Testi\n"
-"\n"
-" Järjestelmä yrittää avata graafisen tilan halutussa näyttötilassa.\n"
-"Jos näet viestin testauksen aikana ja vastaat \"%s\", DrakX jatkaa\n"
-"seuraavaan vaiheeseen. Jos et näe viestiä, se tarkoittaa että jokin osa\n"
-"automaattisesti tunnistetusta asetuksesta oli virheellistä, ja testi\n"
-"loppuu automaattisesti 12 sekunnin jälkeen, jolloin pääset takaisin\n"
-"asetusvalikkoon. Muuta asetuksia kunnes saat oikean graafisen näytön.\n"
-"\n"
-"\n"
-"\n"
-"Optiot\n"
-"\n"
-" Täällä voit valita haluatko järjestelmän automaattisesti käynnistävän\n"
-"graafisen käyttöliittymän. Luonnollisesti valitset \"%s\" jos koneesi\n"
-"toimii palvelimena tai jos et pystynyt määrittämään toimivaa graafista tilaa."
#: ../help.pm:291
#, c-format
@@ -689,39 +541,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -730,15 +586,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -751,65 +607,6 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Nyt sinun pitää valita miten haluat asentaa Mandriva Linux käyttö-\n"
-"järjestelmän kiintolevyllesi. Jos kiintolevysi on tyhjä, tai nykyinen\n"
-"käyttöjärjestelmäsi käyttää siltä kaiken vapaan tilan, sinun pitää osioida\n"
-"se. Käytännössä osiointi tarkoittaa kiintolevyn loogista jakamista\n"
-"osiin tehdäksesi tilaa Mandriva Linux-järjestelmän asennukselle.\n"
-"\n"
-"Koska osiointiprosessin muutoksia ei yleensä voi peruuttaa, ja se voi\n"
-"johtaa tietojen häviämiseen jos toinen käyttöjärjestelmä on jo asennettuna,\n"
-"osiointi voi olla pelottavaa ja stressaavaa jos olet kokematon käyttäjä.\n"
-"Onneksi DrakX sisältää velhon, joka yksinkertaistaa tämän prosessin.\n"
-"Ennen kuin aloitat, lue nämä ohjeet rauhassa.\n"
-"\n"
-"Riippuen kiintolevyasetuksistasi, tarjolla on useita eri vaihtoehtoja:\n"
-"\n"
-" * \"%s\": tämä vaihtoehto suorittaa vapaana olevan tilan\n"
-"automaattisen osioinnon. Sinulta ei kysytä mitään muuta.\n"
-"\n"
-" * \"%s\": velho on tunnistanut olemassa olevat\n"
-"Linux-osiot. Jos haluat käyttää niitä, valitse tämä vaihtoehto. Sinua\n"
-"pyydetään seuraavaksi valitsemaan osioiden liitospisteet. Ennestään\n"
-"käytettyjä liitoskohtia ehdotetaan oletuksena ja yleensä niitä ei kannata\n"
-"muuttaa.\n"
-"\n"
-" * \"%s\": jos Microsoft Windows on\n"
-"asennettu kiintolevyllesi ja se vie kaiken tilan, sinun pitää luoda vapaata\n"
-"tilaa Linuxille. Tehdäksesi tämän voit joko poistaa Windows-osion (katso\n"
-"``Tyhjennä koko levy''-vaihtoehto) tai muuttaa FAT-osion kokoa. Osion\n"
-"koon muuttaminen voidaan tehdä ilman tietojen hävittämistä, kunhan olet\n"
-"eheyttänyt sen ja se käyttää FAT-tiedostojärjestelmää. Tietojen varmistus\n"
-"on kuitenkin suotavaa. Tämä vaihtoehto on suositeltu jos haluat käyttää\n"
-"Mandriva Linuxia ja Microsoft Windowsia samassa koneessa.\n"
-"\n"
-" Ennen kuin valitset tämän vaihtoehdon, sinun pitää ymmärtää että tämän\n"
-"toimenpiteen jälkeen Windows-osiosi on pienempi kuin tällä hetkellä.\n"
-"Sinulla tulee olemaan vähemmän vapaata tilaa Windowsille, johon voit\n"
-"tallentaa tietojasi tai asentaa uusia ohjelmia.\n"
-"\n"
-" * \"%s\": valitse tämä jos haluat poistaa kaikki tiedot\n"
-"ja osiot ja asentaa Mandriva Linux -järjestelmäsi niiden tilalle. Ole\n"
-"varovainen tämän valinnan kanssa, koska et pysty peruuttamaan\n"
-"valintaasi kun olet hyväksynyt tämän toimenpiteen.\n"
-"\n"
-" !! Jos valitset tämän vaihtoehdon, kaikki tiedot kiintolevylläsi "
-"tuhoutuu !!\n"
-"\n"
-" * \"%s\": tämä vaihtoehto näkyy ainoastaan jos koko kovalevysi on\n"
-"Microsoft Windowsin käytössä. Tämä yksinkertaisesti poistaa kaikki\n"
-"tiedot kiintolevyltä ja aloittaa puhtaalta levyltä osioimalla kaikki alusta\n"
-"asti. Kaikki tiedot kiintolevylläsi tuhoutuu.\n"
-"\n"
-" !! Jos valitset tämän vaihtoehdon, kaikki tiedot kiintolevylläsi "
-"tuhoutuu !!\n"
-"\n"
-" * \"%s\": valitse tämä vaihtoehto, jos haluat itse\n"
-"määrittää kiintolevysi osioinnin. Ole varovainen - tämä on tehokas mutta\n"
-"vaarallinen vaihtoehto. Voit helposti menettää kaikki tietosi. Eli,\n"
-"älä käytä tätä vaihtoehtoa, jos et tiedä tarkalleen mitä teet. Jos haluat\n"
-"lisätietoja DiskDrake työkalun käytöstä, katso osaa ``Managing Your \n"
-"Partitions'' osiota ``Starter Guidessa''."
#: ../help.pm:377
#, c-format
@@ -936,38 +733,16 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
msgstr ""
-"Kaikki vasta määritellyt osiot täytyy alustaa käyttöä varten (alustaminen\n"
-"tarkoittaa tiedostojärjestelmän luomista).\n"
-"\n"
-"Samalla voit haluta alustaa uudelleen myös olemassaolevia osioita\n"
-"poistaaksesi kaiken niissä olevan tiedon. Jos haluat haluat tehdä niin,\n"
-"valitse myös ne osiot.\n"
-"\n"
-"Huomaa, että sinun ei ole pakko alustaa kaikkia jo olemassa olevia\n"
-"osioita. Sinun pitää alustaa ne osiot, joilla käyttöjärjestelmä\n"
-"sijaitsee (kuten \"/\", \"/usr\" ja \"/var\"), mutta voit säilyttää osiot,\n"
-"joilla henkilökohtaiset tiedostosi sijaitsevat (tavallisesti \"/home\").\n"
-"\n"
-"Ole huolellinen osioita valitessasi. Alustamisen jälkeen kaikki tieto\n"
-"valituilla osioilla on poissa eikä niiden palauttaminen enää onnistu.\n"
-"\n"
-"Valitse \"%s\" kun olet valmis alustamaan osiot.\n"
-"\n"
-"Valitse \"%s\", jos haluat valita toisen osion Mandriva Linuxin\n"
-"asentamiseen.\n"
-"\n"
-"Valitse \"%s\", jos haluat valita osiot, jotka tarkistetaan\n"
-"levyllä olevien viallisten lohkojen varalta."
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -979,18 +754,6 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Tässä vaiheessa, kun asennat Mandriva Linuxia, on todennäköistä että\n"
-"jotkut paketit on päivitetty alkujulkaisun jälkeen. Joitakin virheitä voi "
-"olla\n"
-"korjattu ja turvallisuusaukkoja paikattu. Hyödyntääksesi näitä päivityksiä,\n"
-"sinulla on nyt mahdollisuus hakea ne Internetistä. Valitse \"%s\" jos\n"
-"sinulla on toimiva Internet yhteys, tai \"%s\" jos haluat asentaa\n"
-"päivitykset myöhemmin.\n"
-"\n"
-"Valitsemalla \"%s\" sinulle näytetään lista päivityspalvelimista.\n"
-"Valitse lähin palvelin. Sen jälkeen sinulle näytetään lista päivityksistä:\n"
-"tarkista valinnat ja paina \"%s\" jolloin paketit haetaan ja\n"
-"asennetaan, tai \"%s\" poistuaksesi päivityksestä."
#: ../help.pm:450
#, c-format
@@ -1002,25 +765,12 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
"security. Security messages will be sent to that address."
msgstr ""
-"Tässä vaiheessa DrakX antaa sinun valita tietokoneellesi sopivan\n"
-"turvatason. Yleisesti mitä enemmän tärkeää tietoa on tallennettu\n"
-"koneellesi, tai jos se on kytketty Internetiin, sitä korkeampi turvatason\n"
-"pitäisi olla. Huomaa kuitenkin, että korkeampi turvallisuustaso\n"
-"saavutetaan yleensä käytettävyyden kustannuksella.\n"
-"\n"
-"Jos et tiedä mitä valita, käytä oletuksena olevaa vaihtoehtoa. Voit\n"
-"myöhemmin vaihtaa turvatason Mandriva Ohjauskeskuksesta löytyvällä\n"
-"draksec-työkalulla.\n"
-"\n"
-"\"%s\" asetus kertoo järjestelmälle käyttäjän, joka vastaa turvasta.\n"
-"Turvaan liittyvät viestit lähetetään hänelle kyseiseen "
-"sähköpostiosoitteeseen."
#: ../help.pm:461
#, c-format
@@ -1031,21 +781,24 @@ msgstr "Tietoturvan ylläpitäjä:"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1061,21 +814,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1092,86 +847,9 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Tässä vaiheessa sinun pitää määrittää mitkä osiot käytetään Mandriva Linux\n"
-"-järjestelmäsi asennuksessa. Jos osioita on jo määritelty, joko\n"
-"edellisestä GNU/Linux-asennuksesta tai jonkun toisen osiointityökalun\n"
-"tekeminä, niin voit käyttää olemassa olevia osioita. Muussa tapauksissa\n"
-"osiot pitää luoda.\n"
-"\n"
-"Luodaksesi osioita, sinun pitää ensin valita kiintolevy. Voit valita "
-"osioitavan\n"
-"levyn painamalla 'hda' ensimmäiselle IDE-levylle, 'hdb' toiselle, 'sda'\n"
-"ensimmäiselle SCSI-levylle ja niin edelleen.\n"
-"\n"
-"Osioidaksesi valitun levyn voit valita näistä vaihtoehdoista:\n"
-"\n"
-" * \"%s\": tämä toiminto poistaa kaikki osiot kiintolevyllä\n"
-"\n"
-" * \"%s\": tämä toiminto luo automaattisesti\n"
-"tarvittavat ext3-osiot ja sivutusosion levyn tyhjästä tilasta\n"
-"\n"
-"\"%s\": näyttää seuraavat lisätoiminnot:\n"
-"\n"
-" * \"%s\": tallentaa osiotaulun levykkeelle. Tämä on\n"
-"hyödyllinen levyke, jos pitää palauttaa osiotaulu. Suosittelemme\n"
-"tämän levykkeen tekoa\n"
-"\n"
-" * \"%s\": palauttaa aikaisemmin tallennetun osiotaulun\n"
-"levykkeeltä\n"
-"\n"
-" * \"%s\": jos osiotaulusi on viottunut, voit kokeilla sen\n"
-"korjaamista tällä toiminnolla. Ole varovainen, ja muista että tämä\n"
-"voi epäonnistua\n"
-"\n"
-" * \"%s\": hylkää kaikki tekemäsi muutokset ja\n"
-"palauta alkuperäinen osiotaulu\n"
-"\n"
-" * \"%s\": tämän valinnan\n"
-"poistaminen pakottaa käyttäjät itse liittämään ja irrottamaan\n"
-"vaihdettavat levyt, esim. levykkeet ja CD-levyt\n"
-"\n"
-" * \"%s\": valitse tämä vaihtoehto jos haluat velhon osioimaan\n"
-"kiintolevysi. Tämä on suositeltua sinulle jos osiointi ei ole tuttua\n"
-"\n"
-" * \"%s\": tämä vaihtoehto poistaa tekemäsi muutokset\n"
-"\n"
-" * \"%s\": sallii lisätoimintoja\n"
-"osioille (tyyppi, optiot, formaatti) ja näyttää lisätietoja\n"
-"\n"
-" * \"%s\": kun kiintolevyn osiointi on valmis, tämä toiminto\n"
-"tallentaa tekemäsi muutokset levylle ja jatkaa asennusta.\n"
-"\n"
-"Kun määrität osion kokoa, voit hienosäätää kokoa käyttämällä\n"
-"näppäimistön nuolinäppäimiä.\n"
-"\n"
-"Huom!: Voit myös käyttää kaikkia toimintoja näppäimistöllä. Siirry\n"
-"osioiden ja toimintojen välillä käyttämällä [Tab] ja [Ylös/Alas] näppäimiä.\n"
-"\n"
-"Kun osio tai tyhjä tila on valittu voit käyttää:\n"
-"\n"
-" * Ctrl-C luodaksesi uuden osion (kun tyhjä tila on valittu)\n"
-"\n"
-" * Ctrl-D poistaaksesi osion\n"
-"\n"
-" * Ctrl-M valitaksesi liitospisteen\n"
-"\n"
-"Saadaksesi lisätietoja käytettävissä olevista tiedostojärjestelmistä,\n"
-"lue lisää ``Reference Manual'':sta osasta ext2FS.\n"
-"\n"
-"Jos olet asentamassa PPC-koneelle, sinun pitää luoda pieni HFS\n"
-"``bootstrap''-osio kooltaan vähintään 1Mt, joka tulee Yaboot\n"
-"käynnistyslataajan käyttöön. Jos päätät tehdä osiosta vähän suuremman,\n"
-"esim. 50Mt, on hyvä ajatus asentaa ylimääräinen ydin ja ramdisk-kuva\n"
-"virhetilanteiden käynnistystarpeeseen."
#: ../help.pm:526
#, c-format
@@ -1211,67 +889,42 @@ msgstr "Vaihda vakio-/asiantuntijatilan välillä"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
-"Useampi kuin yksi Microsoft-osio on löydetty kiintolevyltäsi. Ole hyvä\n"
-"ja valitse osio jonka kokoa haluat muuttaa asentaaksesi uuden\n"
-"Mandriva Linux -käyttöjärjestelmäsi.\n"
-"\n"
-"Jokainen osio on lueteltu seuraavasti: \"Linux nimi\", Windows nimi\", \"Koko"
-"\".\n"
-"\n"
-"\"Linux nimi\" rakenne on seuraava: \"kiintolevytyyppi\". \"kiintolevynumero"
-"\", \n"
-"\"osionumero\" (esim. \"hda1\").\n"
-"\n"
-"\"kiintolevytyyppi\" on \"hd\" jos kiintolevysi on IDE-tyyppinen ja \"sd\" "
-"jos\n"
-"se on SCSI-tyyppinen.\n"
-"\n"
-"\"kiintolevynumero\" on aina kirjain \"hd\":n tai \"sd\":n perässä.\n"
-"IDE-kiintolevyille: \n"
-"\n"
-" * \"a\" tarkoittaa \"isäntälevy ensisijaisella IDE ohjaimella\";\n"
-"\n"
-" * \"b\" tarkoittaa \"orjalevy ensisijaisella IDE ohjaimella\";\n"
-"\n"
-" * \"c\" tarkoittaa \"isäntälevy toissijaisella IDE ohjaimella\";\n"
-"\n"
-" * \"d\" tarkoittaa \"orjalevy toissijaisella IDE ohjaimella\";\n"
-"\n"
-"SCSI kiintolevyillä \"a\" tarkoittaa \"pienin SCSI ID\", \"b\" tarkoittaa\n"
-"\"toiseksi pienin SCSI ID\", jne.\n"
-"\n"
-"\"Windows nimi\" on Windowsissa näkyvä osiota vastaava kirjain\n"
-"(ensimmäinen osio on \"C:\", seuraava \"D:\" jne.)."
#: ../help.pm:567
#, c-format
@@ -1292,44 +945,24 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
-"Tämä vaihe asennuksesta näytetään ainoastaan jos vanha GNU/Linux-\n"
-"osio on löydetty koneestasi.\n"
-"\n"
-"DrakX haluaa nyt tietää, haluatko suorittaa uuden asennuksen vai vanhan\n"
-"Mandriva Linux -järjestelmän päivityksen:\n"
-"\n"
-" * \"%s\": oletuksena tämä tapa poistaa vanhan asennuksen. Jos haluat\n"
-"muuttaa miten kiintolevysi on osioitu tai vaihtaa tiedostojärjestelmää, "
-"sinun\n"
-"kannattaa valita tämä vaihtoehto. Riippuen nykyisestä osioinnistasi, voit\n"
-"ehkä valita niin ettei kaikkia tietojasi hävitetä.\n"
-"\n"
-" * \"%s\": tämä vaihtoehto sallii sinun päivittää paketteja\n"
-"nykyisessä Mandriva Linux -järjestelmässäsi. Nykyistä osiointiasi\n"
-"eikä käyttäjien tietoja muuteta. Suurin osa muista asennuksen\n"
-"vaiheista on käytössäsi niin kuin ne ovat vakioasennuksessa.\n"
-"\n"
-"``Päivitä''-ominaisuuden pitäisi toimia Mandriva Linux\n"
-"-järjestelmän versiosta \"8.1\" eteenpäin. Vanhemman version\n"
-"kuin \"8.1\" päivittämistä ei suositella."
#: ../help.pm:594
#, c-format
@@ -1388,8 +1021,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1415,44 +1047,6 @@ msgid ""
"by the entire system. Running the command as a regular user will only\n"
"change the language settings for that particular user."
msgstr ""
-"Ensimmäinen askel on valita toivottu kieli.\n"
-"\n"
-"Valitsemasi oletuskieli päättää minkä kielinen dokumentaatio\n"
-"asennetaan, kuten myös asennusohjelman ja järjestelmän\n"
-"kielen. Valitse ensin missä asut ja sitten mitä kieltä käytät.\n"
-"\n"
-"Valitsemalla \"%s\" saat mahdollisuuden valita\n"
-"myös muita kieliä asennettavaksi työasemallesi. Muiden kielten\n"
-"valitseminen asentaa kielikohtaiset tiedostot järjestelmän\n"
-"dokumentoinnista ja ohjelmistoista. Esimerkiksi jos sinulla\n"
-"koneessasi espanjalaisia käyttäjiä, valitse suomi (tai englanti)\n"
-"pääkieleksi ja lisäasetusten puolelta \"%s\".\n"
-"\n"
-"Tietoja UTF-8 (unicode) tuesta: Unicode on uusi kirjasinten \n"
-"määrittelytapa joka on määrä kattaa kaikki olemassa olevat kielet.\n"
-"Huomaa etttä täysi tuki GNU/Linuxissa on viellä työn alla. Tästä syystä\n"
-"Mandriva Linuxin UTF-8 käyttö riippuu käyttäjän valinnasta:\n"
-"\n"
-" * Jos valitset kielen jossa on vahva \"vanhanaikainen\" kirjasinmäärittely\n"
-"(latin1 kielet, Venäjä, Japani, Kiina, Korea, Thai, Kreikka, Turkki, suurin "
-"osa\n"
-"iso-8859-2 kielet), \"vanhanaikainen koodaus käytettään oletuksena.\n"
-"\n"
-" * Muut kielet käyttävät unicode oletuksena.\n"
-"\n"
-" * Jos kaksi (tai enemmän) kieltä tarvitaan, ja ne eivät käytä samaa\n"
-"koodausta, käytetään unicode koko järjestelmälle.\n"
-"\n"
-" * Viimeisenä, voit myös pakottaa järjestelmän käyttämään Unicodea \n"
-"(UTF-8) valitsemalla \"%s\"\n"
-"\n"
-"Huomaa, että voit valita useita ylimääräisiä kieliä tai jopa kaikki\n"
-"valitsemalla \"%s\". Kielituen valinta tarkoittaa käännösten,\n"
-"kirjasinten, oikolukuohjelmien jne. asentamista kyseiselle kielelle.\n"
-"\n"
-"Vaihtaaksesi eri kielten välillä voit suorittaa \"/usr/bin/localedrake\"\n"
-"\"root\"-käyttäjänä, jolloin vaihdat koko järjestelmän kieltä, tai\n"
-"tavallisena käyttäjänä, jolloin vaihdat vain sen käyttäjän vakiokielen."
#: ../help.pm:650
#, c-format
@@ -1561,7 +1155,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1587,7 +1181,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1608,37 +1202,9 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
-"Nyt on aika valita tulostusjärjestelmä tietokoneellesi. Muut "
-"käyttöjärjestelmät\n"
-"saattavat tarjota sinulle yhden järjestelmän, mutta Mandriva Linux tarjoaa\n"
-"kaksi. Kukin tulostusjärjestelmä sopii parhaiten tietyille asetuksille.\n"
-"\n"
-" * \"%s\" -- joka tarkoittaa ``tulosta, älä jonota'' (print, do not "
-"queue).\n"
-"Tämä on sopiva valinta jos sinulla on suora yhteys tulostimeesi ja haluat\n"
-"mahdollisuuden 'hätäkatkaisuun' jos tulostin menee tukkoon, eikä sinulla\n"
-"ole verkkoon liitettyjä tulostimia. (\"%s\" tukee ainoastaan "
-"yksinkertaisimpia\n"
-"verkkoasetelmia ja on hidas verkkokäyttöön.) Valitse \"pdq\" jos tämä on\n"
-"ensimmäinen GNU/Linux tuttavuutesi.\n"
-"\n"
-" * \"%s\" -- ``Common Unix Printing System'', eli Yleinen Unix Tulostus-\n"
-"järjestelmä, on mainio tulostettaessa paikalliseen tulostimeen tai\n"
-"vaikkapa maapallon toiselle puolelle. Se on yksinkertainen järjestelmä\n"
-"ja voi toimia tulostuspalvelimena tai asiakkaana vanhalle \"lpd\"-\n"
-"tulostusjärjestelmälle. Näin ollen, se on yhteensopiva vanhempien\n"
-"järjestelmien kanssa. Se on monitaitoinen, mutta perusasetuksen\n"
-"teko on melkein yhtä helppoa kuin \"pdq\". Jos tarvitset \"lpd\"-palvelimen\n"
-"emulointia, sinun pitää käynnistää \"cups-lpd\" -demoni. \"%s\"\n"
-"sisältää graafisen käyttöliittymän jota voidaan käyttää tulostamiseen\n"
-"tai asetuksien tekoon.\n"
-"\n"
-"Jos teet valinnan nyt, ja myöhemmin huomaat ettet pidä nykyisestä\n"
-"tulostusjärjestelmästä voit muuttaa valintaasi Mandrivan Ohjauskeskuksesta\n"
-"löytyvässä PrinterDrakessa valitsemalla \"%s\"-painikkeen."
#: ../help.pm:768
#, c-format
@@ -1663,7 +1229,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1705,7 +1271,7 @@ msgstr ""
"ajurin."
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1745,8 +1311,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1763,78 +1328,17 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
"idea to review this setup."
msgstr ""
-"DrakX näyttää yhteenvedon laitteistoasi koskevista tiedoista\n"
-"jotka se on kerännyt. Asennetusta laitteistosta riippuen, näet joitakin\n"
-"tai kaikki seuraavista tietueista. Jokainen tietue koostuu asetettavasta\n"
-"laitteesta ja lyhyestä selostuksesta laitteen asetuksien nykytilasta.\n"
-"Paina tietuetta vastaavaa \"%s\" painiketta jos haluat muuttaa sitä.\n"
-"\n"
-" * \"%s\": tarkista näppäinasettelu ja vaihda sitä tarvittaessa.\n"
-"\n"
-" * \"%s\": tarkista maa-asetukset. Jos et ole maassa, joka on valittu,\n"
-"paina \"%s\"-painiketta ja valitse oikea. Jos maasi ei ole\n"
-"listassa paina \"%s\"-painiketta, jolloin näet listan kaikista maista.\n"
-"\n"
-" * \"%s\": DrakX oletuksena arvioi aikavyöhykkeesi riippuen\n"
-"siitä, minkä kielen olet valinnut. Jos tämä ei ole oikea, voit muuttaa sitä\n"
-"painamalla \"%s\".\n"
-"\n"
-" * \"%s\": tarkista nykyiset hiiriasetukset ja muuta niitä tarvittaessa.\n"
-"\n"
-" * \"%s\": painamalla \"%s\"-painiketta avaat tulostuksen\n"
-"asetusvelhon. Lue lisää asiaa koskevasta luvusta ``Aloitusoppaasta''\n"
-"saadaksesi lisätietoa miten asettaa uusi tulostin. Käyttöliittymä\n"
-"joka oppaassa esitetään on vastaava kuin se jota käytetään asennuksen\n"
-"aikana.\n"
-"\n"
-" * \"%s\": jos äänikortti on tunnistettu järjestelmässäsi, se\n"
-"näytetään täällä. Jos huomaat että näytetty äänikortti ei vastaa sitä\n"
-"joka on asennettu koneeseesi, voit nappia painamalla valita toisen\n"
-"ajurin.\n"
-"\n"
-" * \"%s\": jos TV-kortti on tunnistettu järjestelmässäsi, se\n"
-"näytetään täällä. Jos sinulla on TV-kortti eikä sitä ole tunnistettu,\n"
-"voit painaa \"%s\" ja yrittää asettaa sen itse.\n"
-"\n"
-" * \"%s\": paina \"%s\" jos haluat muuttaa parametreja joka\n"
-"koskee korttia jaka mielestäsi on väärin asetettu.\n"
-"\n"
-" * \"%s\": oletuksena DrakX asettaa graafisen\n"
-"käyttöliittymäsi käyttämään \"800x600\" tai \"1024x768\" näyttötilaa.\n"
-"Jos tämä ei sovi sinulle, paina \"%s\" muuttaaksesi asetuksia.\n"
-"\n"
-" * \"%s\": jos haluat asettaa Internet- tai paikallisverkkoasetuksesi,\n"
-"voit tehdä sen nyt. Katso ohjekirjasta, tai käytä Mandriva Linux\n"
-"Ohjauskeskus asennuksen jälkeen hyödyntääksesi sisäiset ohjeet.\n"
-"\n"
-" * \"%s\": sallii sinua asettamaan HTTP ja FTP välityspalvelimia jos\n"
-"asentamasi kone on välitysåpalvelimen takana.\n"
-"\n"
-" * \"%s\": tässä voit muuttaa asennuksen alussa asettamaasi\n"
-"turvatasoa jos haluat.\n"
-"\n"
-" * \"%s\": Jos aiot yhdistää koneesi Internetiin, kannattaa\n"
-"suojautua verkon vaaroilta asettamalla palomuuri. Katso\n"
-"``Aloitusoppaasta'' tätä aihetta vastaavaa lukua saadaksesi lisätietoa\n"
-"palomuurin asetuksista.\n"
-"\n"
-" * \"%s\": jos haluat muuttaa käynnistyslataajan asetuksia,\n"
-"paina vastaavaa nappia. Tätä ei kannata muuttaa jos et ole asiantuntija.\n"
-"\n"
-" * \"%s\": täällä voit määrittää mitä palveluja järjestelmässäsi\n"
-"toimii. Jos aiot käyttää tätä konetta palvelimena, kannattaa nämä\n"
-"asetukset tarkistaa."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "ISDN-kortti"
+msgstr ""
#: ../help.pm:809
#, c-format
@@ -1849,24 +1353,23 @@ msgstr "Graafinen käyttöliittymä"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Valitse kiintolevy, jonka haluat tyhjentää uudelle Mandriva Linux\n"
-"-asennusosiolle. Ole varovainen, koska kaikki asemalla oleva tieto\n"
-"tuhoutuu eikä ole enää palautettavissa!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Valitse \"%s\" jos haluat tuhota kaiken tällä kiintolevyllä olevan\n"
"tiedon sekä osiot. Ole varovainen, sillä valittuasi \"%s\"\n"
@@ -1886,114 +1389,3 @@ msgstr "Seuraava ->"
#, c-format
msgid "<- Previous"
msgstr "<- Edellinen"
-
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "\"%s\": painamalla \"%s\" painiketta avautuu tulostimen\n"
-#~ "asetusvelho. Katso tätä vastaava lukua ``Aloitusoppaasta'' saadaksesi\n"
-#~ "lisätietoa miten asetat uuden tulostimen. Oppaassa näytetty\n"
-#~ "käyttöliittymä on vastaava kuin asennuksen aikana käytetty."
-
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Tämä on tärkein päätös joka koskee GNU/Linux-järjestelmäsi "
-#~ "turvallisuutta:\n"
-#~ "sinun pitää syöttää \"root\" salasana. \"Root\" on järjestelmän "
-#~ "ylläpitäjä\n"
-#~ "ja ainoa, jolla on oikeudet päivittää järjestelmää, lisätä käyttäjiä, "
-#~ "muuttaa\n"
-#~ "järjestelmän asetuksia jne. Lyhyesti, \"root\" voi tehdä mitä vain! "
-#~ "Tämän\n"
-#~ "vuoksi sinun pitää valita salasana joka on vaikea arvata - DrakX kertoo\n"
-#~ "sinulle jos salasana on liian helppo. Kuten huomaat, voit jättää "
-#~ "salasanan\n"
-#~ "syöttämättä, mutta suosittelemme ettet tee niin, ainakin yhdestä syystä:\n"
-#~ "GNU/Linux on yhtä altis käyttäjän virheille kuin muutkin "
-#~ "käyttöjärjestelmät.\n"
-#~ "Koska \"root\" voi ohittaa kaikki rajoitukset ja vahingossa poistaa "
-#~ "kaikki\n"
-#~ "tiedot osioilta on tärkeää, että on vaikea päästä \"root\"-käyttäjäksi.\n"
-#~ "\n"
-#~ "Salasanan pitäisi koostua kirjaimista ja numeroista sekä olla vähintään\n"
-#~ "8 merkkiä pitkä. Älä koskaan kirjoita \"root\" salasanaa paperille - se\n"
-#~ "tekisi järjestelmään murtautumisesta liian helppoa.\n"
-#~ "\n"
-#~ "Älä myöskään valitse liian pitkää tai monimutkaista salasanaa koska "
-#~ "sinun\n"
-#~ "pitää itse muistaa se ongelmitta.\n"
-#~ "\n"
-#~ "Salasanaa ei näytetä kun syötät sitä ja tästä syystä sinun pitää syöttää\n"
-#~ "se kahdesti, jolla pyritään ehkäisemään kirjoitusvirheitä. Jos "
-#~ "sattumalta\n"
-#~ "teet saman kirjoitusvirheen kahdesti, joudut käyttämään tätä ``väärää''\n"
-#~ "salasanaa ensimmäisessä sisäänkirjautumisessa.\n"
-#~ "\n"
-#~ "Jos haluat että pääsyä tähän koneeseen hallitaan tunnistuspalvelimen\n"
-#~ "kautta, paina \"%s\"-painiketta.\n"
-#~ "\n"
-#~ "Jos verkkosi käyttää LDAP, NIS tai PDC Windows verkkoalueen\n"
-#~ "tunnistuspalvelua, valitse oikea \"%s\" vaihtoehto.\n"
-#~ "Jos sinulla ei ole tietoa, kysy verkon ylläpitäjältä.\n"
-#~ "\n"
-#~ "Jos sinulla on ongelmia muistaa salasanoja, jos koneesi ei ole\n"
-#~ "yhteydessä Internetiin tai jos uskot kaikkiin koneesi käyttäjiin,\n"
-#~ "voit valita \"%s\"."
-
-#~ msgid "authentication"
-#~ msgstr "tunnistustapa"
diff --git a/perl-install/install/help/po/fr.po b/perl-install/install/help/po/fr.po
index b4e51dd81..b6db93b4a 100644
--- a/perl-install/install/help/po/fr.po
+++ b/perl-install/install/help/po/fr.po
@@ -1,5 +1,5 @@
# translation of DrakX-fr.po to Français
-# Translation file of Mandriva Linux graphic install
+# Translation file of Mageia graphic install
# Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006 Mandriva
#
# Veuillez ne pas mettre à jour ce fichier à moins d'être
@@ -61,7 +61,7 @@
# Pablo Saratxaga <pablo@mandriva.com>, 2001, 2005.
# KAtiOS <katios@nolabel.net>, 2001.
# Guillaume Cottenceau <gc@mandriva.com>, 2001-2002.
-# Thierry Vignaud <tvignaud@mandriva.com>, 2001-2004.
+# Thierry Vignaud <thierry.vignaud.com>, 2001-2004.
# Christophe Combelles <ccomb@free.fr>, 2002,2003.
# Adrien REZER <monsieurdidi@free.fr>, 2003.
# RICHARD Nicolas <richardnicolas22@yahoo.fr>, 2004.
@@ -75,13 +75,14 @@ msgstr ""
"Project-Id-Version: DrakX-fr\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2008-09-24 15:29+0200\n"
-"Last-Translator: Christophe Berthelé <cpjc@free.fr>\n"
-"Language-Team: French <cooker-i18n@mandrivalinux.org>\n"
+"PO-Revision-Date: 2013-04-25 17:02+0100\n"
+"Last-Translator: Yann Ciret <mageia@zamiz.net>\n"
+"Language-Team: French <i18n-fr@ml.mageia.org>\n"
+"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
+"X-Generator: Poedit 1.5.5\n"
"Plural-Forms: nplurals=2;plural=(n>1);\n"
# DO NOT BOTHER TO MODIFY HERE, SEE:
@@ -90,13 +91,13 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Avant d'aller plus loin, il est fortement recommandé de lire attentivement\n"
"les termes et conditions d'utilisation de la licence. Celle-ci régit\n"
-"l'ensemble de la distribution Mandriva Linux. Si vous en acceptez tous les\n"
+"l'ensemble de la distribution Mageia. Si vous en acceptez tous les\n"
"termes, cochez la case « %s », sinon, cliquez sur le bouton « %s » pour\n"
"redémarrer votre ordinateur."
@@ -195,7 +196,8 @@ msgstr "Voulez-vous utiliser cette fonctionnalité ?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -205,24 +207,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"La liste présentée plus haut identifie les partitions GNU/Linux détectées\n"
@@ -244,7 +250,8 @@ msgstr ""
"Le « type de disque dur » correspond à hd si votre disque est IDE. Pour un\n"
"disque SCSI, vous lirez « sd ».\n"
"\n"
-"Le « numéro du disque » est toujours listé après le « hd » ou « sd ». Pour les\n"
+"Le « numéro du disque » est toujours listé après le « hd » ou « sd ». Pour "
+"les\n"
"disques durs IDE :\n"
"\n"
" * « a » signifie « disque primaire maître sur le premier contrôleur IDE »;\n"
@@ -266,14 +273,13 @@ msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Les paquetages requis à l'installation de Mandriva Linux sont distribués "
-"sur\n"
+"Les paquetages requis à l'installation de Mageia sont distribués sur\n"
"plusieurs CD-ROM. Si un paquetage requis se trouve sur un autre CD-ROM,\n"
"DrakX éjectera celui présent dans le lecteur et vous demandera d'insérer le\n"
"CD-ROM approprié. Si vous ne possédez pas le CD demandé, cliquez tout\n"
@@ -286,12 +292,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -342,11 +347,11 @@ msgid ""
"megabytes."
msgstr ""
"C'est maintenant le moment de choisir les paquetages qui seront installés\n"
-"sur votre système. Sachez que Mandriva Linux contient plusieurs milliers de\n"
+"sur votre système. Sachez que Mageia contient plusieurs milliers de\n"
"paquetages à installer, et ces paquetages ont été rangés par groupes chacun\n"
"correspondant à un usage particulier de l'ordinateur.\n"
"\n"
-"Mandriva Linux range ces groupes en quatre catégories. Vous pouvez mélanger\n"
+"Mageia range ces groupes en quatre catégories. Vous pouvez mélanger\n"
"des groupes de plusieurs catégories de sorte qu'« une station de travail »\n"
"peut toujours proposer des applications pour la catégorie « Serveur ».\n"
"\n"
@@ -355,15 +360,14 @@ msgstr ""
"\n"
" * « %s » : si votre système doit être utilisé pour la programmation,\n"
"choisissez les groupes désirés. Le groupe spécial « LSB » configurera votre\n"
-"système de manière à ce qu'il corresponde le plus possible avec la Linux\n"
-"Standard Base.\n"
+"système de manière à ce qu'il corresponde le plus possible\n"
+"aux spécifications Linux Standard Base.\n"
"\n"
-" Si vous choisissez le groupe « LSB », cela assurera\n"
-"une compatibilité LSB maximale. Cependant, si vous ne sélectionnez pas ce\n"
-"groupe « LSB » vous aurez quand même un système presque entièrement\n"
-"compatible LSB.\n"
+" Si vous choisissez le groupe « LSB », cela assurera une compatibilité\n"
+"LSB maximale. Cependant, si vous ne sélectionnez pas ce groupe « LSB »\n"
+"vous aurez quand même un système presque entièrement compatible LSB.\n"
"\n"
-" * « %s » : enfin, si votre système doit fonctionner en tant que serveur,\n"
+" * « %s » : si votre système doit fonctionner en tant que serveur,\n"
"vous pourrez sélectionner les services que vous voulez installer.\n"
"\n"
" * « %s » : ce groupe vous permettra de déterminer quel environnement\n"
@@ -373,8 +377,8 @@ msgstr ""
"En plaçant votre souris au-dessus d'un nom de groupe, vous verrez\n"
"apparaître une courte description de ce groupe.\n"
"\n"
-"Vous pouvez enfin cocher l'option « %s ». Cette option est à utiliser si\n"
-"vous connaissez exactement le paquetage désiré ou si vous voulez avoir le\n"
+"Vous pouvez cocher l'option « %s ». Cette option est à utiliser si vous\n"
+"connaissez exactement le paquetage désiré ou si vous voulez avoir le\n"
"contrôle total de votre installation.\n"
"\n"
"Si vous avez démarré l'installation en mode « %s », vous pouvez\n"
@@ -426,10 +430,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -449,7 +453,7 @@ msgid ""
"another installation. See the second tip of the last step on how to create\n"
"such a floppy."
msgstr ""
-"Enfin, si vous avez choisi de sélectionner individuellement les paquetages\n"
+"Si vous avez choisi de sélectionner individuellement les paquetages\n"
"à installer, DrakX vous présentera un arbre contenant tous les paquetages,\n"
"classés par groupes et sous-groupes. En navigant à travers l'arbre, vous\n"
"pouvez sélectionner des groupes, des sous-groupes ou des paquetages\n"
@@ -459,14 +463,14 @@ msgstr ""
"apparaît à droite.\n"
"\n"
"!! Si un paquetage serveur a été sélectionné, vous devrez confirmer que\n"
-"vous voulez vraiment que celui-ci soit installé. Sous Mandriva Linux , par\n"
+"vous voulez vraiment que celui-ci soit installé. Sous Mageia , par\n"
"défaut, tous les services installés sont lancés au démarrage. Malgré tous\n"
"les efforts investis pour vous livrer une distribution Linux sécurisée, il\n"
"est possible que certaines failles de sécurité affectent les serveurs\n"
"installés au-delà de la date de publication. Si vous ne savez pas\n"
"précisément à quoi sert un service en particulier ou pourquoi il est\n"
-"installé, cliquez sur « %s ». En cliquant sur « %s », le serveur sera\n"
-"installé et le service rendu disponible au démarrage. !!\n"
+"installé, cliquez sur « %s ». En cliquant sur « %s », les services listés\n"
+"seront installés et rendus disponible au démarrage. !!\n"
"\n"
"L'option « %s » désactive les avertissements qui apparaissent à chaque fois\n"
"que l'installeur sélectionne un nouveau paquetage. Parfois, pour qu'un\n"
@@ -598,7 +602,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -654,7 +658,7 @@ msgid ""
msgstr ""
"X (pour le système X Window) est le coeur de votre interface graphique sous\n"
"GNU/Linux. Tous les environnements graphiques (KDE, GNOME, WindowMaker\n"
-"etc.) présents sur Mandriva Linux dépendent de X.\n"
+"etc.) présents sur Mageia dépendent de X.\n"
"\n"
"Il vous sera présenté une liste de divers paramètres à changer pour obtenir\n"
"un affichage optimal :\n"
@@ -673,10 +677,10 @@ msgstr ""
"\n"
"Moniteur\n"
"\n"
-" Le programme d'installation détecte et configure automatiquement les\n"
-"moniteurs connectés à votre unité centrale. Si ce n'est pas le cas, vous\n"
-"pouvez choisir dans cette liste le moniteur que vous utilisez\n"
-"effectivement.\n"
+" Normalement le programme d'installation détecte et configure\n"
+"automatiquement les moniteurs connectés à votre machine. Si ce\n"
+"n'est pas le cas, vous pouvez choisir dans cette liste le moniteur que\n"
+"vous utilisez effectivement.\n"
"\n"
"\n"
"\n"
@@ -685,7 +689,7 @@ msgstr ""
" Vous pouvez choisir ici la résolution et nombre de couleurs parmi celles\n"
"disponibles pour votre matériel. Choisissez la configuration optimale pour\n"
"votre utilisation (vous pourrez néanmoins modifier cela après\n"
-"l'installation). Un échantillon de la configuration choisie apparaît dans\n"
+"l'installation). Un exemple de la configuration choisie apparaît dans\n"
"le dessin du moniteur.\n"
"\n"
"\n"
@@ -698,14 +702,15 @@ msgstr ""
"choisie. Si vous pouvez voir le message pendant le test, et répondez\n"
"« %s », alors DrakX passera à l'étape suivante. Si vous ne pouvez pas voir\n"
"de message, cela signifie que vos paramètres sont incompatibles, et le test\n"
-"se terminera automatiquement après 12 secondes. Changez la configuration\n"
-"jusqu'à obtenir un affichage correct lors du test.\n"
+"se terminera automatiquement après 12 secondes et vous ramènera au\n"
+"menu. Changez la configuration jusqu'à obtenir un affichage correct lors\n"
+"du test.\n"
"\n"
"\n"
"\n"
"Options\n"
"\n"
-" Vous pourrez également choisir ici de démarrer l'interface graphique au\n"
+" Vous pourrez choisir ici de démarrer l'interface graphique au\n"
"lancement de la machine. Il est préférable de choisir « %s » si vous êtes\n"
"en train d'installer un serveur, ou si vous n'avez pas réussi à configurer\n"
"l'écran correctement."
@@ -783,39 +788,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -824,15 +833,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -846,38 +855,38 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Cette étape vous permet de déterminer précisément l'emplacement de votre\n"
-"installation de Mandriva Linux. Si votre disque est vide ou utilisé par un\n"
+"installation de Mageia. Si votre disque est vide ou utilisé par un\n"
"autre système d'exploitation, vous devrez repartitionner votre disque.\n"
"Partitionner un disque désigne l'opération consistant à le diviser\n"
-"précisément afin de créer un espace pour votre installation.\n"
+"logiquement afin de créer un espace pour votre installation.\n"
"\n"
-"Comme les effets du partitionnement sont irréversibles (l'ensemble du\n"
-"disque est effacé), le partitionnement est généralement intimidant et\n"
-"stressant pour un utilisateur inexpérimenté. Heureusement, un assistant a\n"
-"été prévu à cet effet. Avant de commencer, lisez le reste de ce document et\n"
-"surtout, prenez votre temps.\n"
+"Comme les effets du partitionnement sont généralement irréversibles, \n"
+"le partitionnement est généralement intimidant et stressant pour un\n"
+"utilisateur inexpérimenté. Heureusement, un assistant a été prévu à cet\n"
+"effet. Avant de commencer, lisez le reste de ce document et surtout, \n"
+"prenez votre temps.\n"
"\n"
"Selon la configuration de votre disque, plusieurs options sont "
"disponibles :\n"
"\n"
"\n"
-" * « %s » : cette option tentera simplement de partitionner automatiquement\n"
-"l'espace inutilisé sur votre disque. Il n'y aura pas d'autre question.\n"
+" * « %s » : cette option tentera de partitionner automatiquement l'espace\n"
+"inutilisé sur votre disque. Il n'y aura pas d'autre question.\n"
"\n"
" * « %s » : l'assistant a détecté une ou plusieurs partitions Linux\n"
-"existant sur votre disque. Si vous voulez les utiliser, choisissez cette\n"
+"existantes sur votre disque. Si vous voulez les utiliser, choisissez cette\n"
"option. Il vous sera alors demandé de choisir les points de montage\n"
"associés à chacune des partitions. Les anciens points de montage sont\n"
"sélectionnés par défaut, et vous devriez généralement les garder.\n"
"\n"
" * « %s » : si Microsoft Windows est installé sur votre disque et en prend\n"
-"toute la place vous devez faire de la place pour votre installation\n"
+"toute la place, vous devez faire de la place pour votre installation\n"
"GNU/Linux. Pour ce faire, vous pouvez tout effacer (voir « effacer tout le\n"
"disque ») ou vous pouvez redimensionner la partition Windows FAT ou NTFS.\n"
"Le redimensionnement peut être effectué sans pertes de données, à condition\n"
"que vous ayez préalablement défragmenté la partition Windows. Une\n"
"sauvegarde de vos données ne fera pas de mal non plus. Cette solution est\n"
-"recommandée pour faire cohabiter Mandriva Linux et Microsoft Windows sur le\n"
+"recommandée pour faire cohabiter Mageia et Microsoft Windows sur le\n"
"même ordinateur.\n"
"\n"
" Avant de choisir cette option, il faut comprendre qu'après cette\n"
@@ -887,20 +896,21 @@ msgstr ""
"\n"
" * « %s » : si vous voulez effacer toutes les données et les applications\n"
"installées sur votre système et les remplacer par votre nouveau système\n"
-"Mandriva Linux, choisissez cette option. Soyez prudent, car ce choix est\n"
-"irréversible et permanent. Il vous sera impossible de retrouver vos données\n"
-"effacées.\n"
+"Mageia, choisissez cette option. Soyez prudent, car ce choix est\n"
+"irréversible et permanent une fois confirmé. Il vous sera impossible de\n"
+"retrouver vos données effacées.\n"
"\n"
" !! En choisissant cette option, l'ensemble du contenu de votre disque\n"
"sera détruit. !!\n"
"\n"
-" * « %s » : ce choix apparaît lorsque l'intégralité du disque dur est occupé\n"
+" * « %s » : ce choix apparaît lorsque l'intégralité du disque dur est "
+"occupé\n"
"par Microsoft Windows. Choisir cette option effacera tout simplement ce que\n"
"contient le disque et recommencera à zéro. Toutes les données et les\n"
"programmes présents sur le disque seront effacés.\n"
"\n"
" !! En choisissant cette option, l'ensemble de votre disque sera effacé\n"
-"!!\n"
+"et les données perdues. !!\n"
"\n"
" * « %s » : permet de partitionner manuellement votre disque. Soyez\n"
"prudent, car bien que plus puissante, cette option est dangereuse. Vous\n"
@@ -961,7 +971,7 @@ msgid ""
"\"mformat a:\", or \"fdformat /dev/fd0\" followed by \"mkfs.vfat\n"
"/dev/fd0\"."
msgstr ""
-"Votre installation de Mandriva Linux est maintenant terminée et votre\n"
+"Votre installation de Mageia est maintenant terminée et votre\n"
"système est prêt à être utilisé. Cliquez sur « %s » pour le redémarrer.\n"
"N'oubliez pas de retirer la source d'installation(CD-ROM ou disquette).\n"
"La première chose que vous verrez alors, après que l'ordinateur ait \n"
@@ -1035,7 +1045,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1055,7 +1065,7 @@ msgstr ""
"Cliquez sur « %s » lorsque vous êtes prêt à formater les partitions.\n"
"\n"
"Cliquez sur « %s » pour choisir une autre partition où installer votre\n"
-"nouveau système d'exploitation Mandriva Linux.\n"
+"nouveau système d'exploitation Mageia.\n"
"\n"
"Cliquez sur « %s » si vous désirez sélectionner des partitions pour une\n"
"vérification des secteurs défectueux (« Bad Blocks »)."
@@ -1065,7 +1075,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1077,7 +1087,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Au moment où vous installez Mandriva Linux, il est possible que certains\n"
+"Au moment où vous installez Mageia, il est possible que certains\n"
"paquetages aient été mis à jour depuis la sortie du produit. Des bogues ont\n"
"pu être corrigés, et des problèmes de sécurité résolus. Pour vous permettre\n"
"de bénéficier de ces mises à jour, il vous est maintenant proposé de les\n"
@@ -1100,7 +1110,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1115,7 +1125,7 @@ msgstr ""
"\n"
"Si vous ne savez pas quel niveau choisir, gardez la sélection par défaut.\n"
"Vous pourrez le modifier ultérieurement avec l'outil draksec, qui se trouve\n"
-"dans le Centre de Contrôle Mandriva Linux\n"
+"dans le Centre de Contrôle Mageia.\n"
"\n"
"Remplissez le champ « %s » avec l'adresse électronique de l'utilisateur qui\n"
"sera responsable de la sécurité. Les messages de sécurité lui seront\n"
@@ -1130,21 +1140,24 @@ msgstr "Administrateur sécurité"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1160,21 +1173,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1191,20 +1206,14 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"À cette étape, vous devez sélectionner quelle partition sera utilisée pour\n"
-"votre système Mandriva Linux. Si votre disque est déjà partitionné, soit "
-"par\n"
+"votre système Mageia. Si votre disque est déjà partitionné, soit par\n"
"une autre installation GNU/Linux ou par un autre outil de partitionnement,\n"
-"vous pourrez les utiliser. Sinon, les partitions devront être créées.\n"
+"vous pourrez utiliser les partitions existantes. Sinon, elles devront être "
+"créées.\n"
"\n"
"Pour créer une partition, vous devez d'abord sélectionner le disque à\n"
"utiliser. Vous pouvez le sélectionner en cliquant sur « hda » pour le\n"
@@ -1215,16 +1224,16 @@ msgstr ""
"options suivantes :\n"
"\n"
" * « %s » : cette option effacera toutes les partitions sur le disque\n"
-"sélectionné;\n"
+"sélectionné ;\n"
"\n"
-" * « %s » : cette option permet de créer un système de ficher ext3 et\n"
-"« Swap » dans l'espace libre sur votre disque;\n"
+" * « %s » : cette option permet de créer des partitions ext4 et\n"
+"« swap » dans l'espace libre sur votre disque ;\n"
"\n"
"« %s » : permet d'accéder à des fonctionnalités supplémentaires :\n"
"\n"
" * « %s » : sauvegarde la table de partition sur un disque amovible. Cette\n"
"option s'avère particulièrement pratique pour réparer des partitions\n"
-"endommagées. Il est fortement recommandé de procéder ainsi;\n"
+"endommagées. Il est fortement recommandé de procéder ainsi ;\n"
"\n"
" * « %s » : permet de restaurer une table de partition sauvegardée au\n"
"préalable sur une disquette.\n"
@@ -1233,21 +1242,23 @@ msgstr ""
"de la récupérer avec ces options. Soyez prudent et sachez que cela ne\n"
"fonctionne pas à coup sûr.\n"
"\n"
-" * « %s » : écarte les changements et charge la table de partition initiale;\n"
+" * « %s » : annule les changements et charge la table de partition "
+"initiale ;\n"
"\n"
" * « %s » : en cochant cette case, les CD-ROM et disquettes (et autres\n"
-"supports) seront chargés automatiquement.\n"
+"supports amovibles) seront chargés automatiquement.\n"
"\n"
" * « %s » : utilisez cette option si vous souhaitez utiliser un assistant\n"
"pour partitionner votre disque. Cette option est particulièrement\n"
"recommandée si vous faites vos premiers pas avec les partitions.\n"
"\n"
-" * « %s » : utilisez cette option pour annuler vos changements;\n"
+" * « %s » : utilisez cette option pour annuler vos changements ;\n"
"\n"
" * « %s » : permet des actions supplémentaires sur les partitions (type,\n"
-"options, format) et donne plus d'informations;\n"
+"options, format) et donne plus d'informationssur le disque ;\n"
"\n"
-" * « %s » : une fois le partitionnement terminé, ce bouton vous permettra de\n"
+" * « %s » : une fois le partitionnement terminé, ce bouton vous permettra "
+"de\n"
"sauvegarder vos changements sur le disque.\n"
"\n"
"Lorsque vous définissez la taille d'une partition, vous pouvez choisir\n"
@@ -1255,25 +1266,21 @@ msgstr ""
"clavier.\n"
"\n"
"Note : vous pouvez atteindre toutes les options en utilisant le clavier.\n"
-"Naviguer avec les flèches et [Tab].\n"
+"Naviguer avec les flèches [haut/bas] et [Tab].\n"
"\n"
"Une fois la partition sélectionnée, vous pouvez utiliser :\n"
"\n"
" * Ctrl-c pour créer un nouvelle partition (lorsqu'une partition vide est\n"
-"sélectionnée;\n"
+"sélectionnée ;\n"
"\n"
-" * Ctrl-d pour effacer une partition;\n"
+" * Ctrl-d pour effacer une partition ;\n"
"\n"
-" * Ctrl-m pour définir le « mount point »\n"
+" * Ctrl-m pour définir le « point de montage »\n"
"\n"
-"Pour obtenir plus d'information sur les systèmes de fichiers, veuillez lire\n"
-"sur le système de fichier ext2FS dans « Manuel de Référence ».\n"
-"\n"
-"Si vous installez sur un poste PPC, vous devrez créer une petite partition\n"
-"HFS « bootstrap » d'au moins 1 Mo qui sera utilisée par le chargeur de\n"
-"démarrage (« bootloader ») yaboot. Si vous optez pour une partition plus\n"
-"grande, disons 50Mo, vous trouverez utile d'y placer des noyaux et des\n"
-"images « ramdisk » accessibles en cas de problème."
+"Pour obtenir plus d'informations sur les systèmes de fichiers, veuillez "
+"lire\n"
+"le chapitre sur le système de fichier ext2FS dans le « Manuel de\n"
+"Référence ».\n"
#: ../help.pm:526
#, c-format
@@ -1315,67 +1322,75 @@ msgstr "Basculer entre les modes expert et normal"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Plus d'une partition Windows a été détectée sur votre disque dur. Veuillez\n"
-"choisir celle que vous choisissez pour votre nouvelle installation de\n"
-"Mandriva Linux.\n"
+"choisir celle que vous voulez redimensionner pour votre nouvelle "
+"installation\n"
+"de Mageia.\n"
"\n"
-"Chaque partition est identifiée comme suit : « Nom Linux », « Nom Windows »,\n"
+"Chaque partition est identifiée comme suit : « Nom Linux », « Nom "
+"Windows »,\n"
"« Capacité ».\n"
"\n"
-"Le « Nom » est structuré ainsi : « type de disque dur », « numéro du disque\n"
-"dur », « numéro de partition ». Par exemple, « hda1 ».\n"
+"Le « Nom Linux » est structuré ainsi : « type de disque dur », « numéro du\n"
+"disque dur », « numéro de partition ». Par exemple, « hda1 ».\n"
"\n"
"Le « Type de disque dur » correspond à « hd » si votre disque est IDE. Pour "
"un\n"
-"disque SCSI, vous lirez « sd ».\n"
+"disque SCSI, vous aurez « sd ».\n"
"\n"
-"Le numéro du disque est toujours listé après le « hd » ou « fd ». Pour les\n"
+"Le numéro du disque est toujours listé après le « hd » ou « sd ». Pour les\n"
"disques IDE :\n"
"\n"
-" * « a » signifie « disque primaire maître sur le premier contrôleur IDE »;\n"
+" * « a » signifie « disque maître sur le premier contrôleur IDE »;\n"
"\n"
-" * « b » signifie « disque primaire esclave sur le premier contrôleur\n"
+" * « b » signifie « disque esclave sur le premier contrôleur\n"
"IDE »;\n"
"\n"
-" * « c » indique « disque primaire maître sur le second contrôleur IDE »;\n"
+" * « c » indique « disque maître sur le second contrôleur IDE »;\n"
"\n"
-" * « d » signifie « disque primaire esclave sur le second contrôleur IDE »;\n"
+" * « d » signifie « disque esclave sur le second contrôleur IDE »;\n"
"\n"
-"Avec les disques SCSI, le « a » indique le plus petit SCSI ID, et ainsi de\n"
+"Avec les disques SCSI, le « a » indique le plus petit ID SCSI, et ainsi de\n"
"suite.\n"
"\n"
-"« Nom Windows » c'est la lettre assignée à votre disque, (le premier\n"
-"disque ou partition « C: »)"
+"Le « Nom Windows » est la lettre assignée à votre disque sous\n"
+"Windows (le premier disque ou partition est appelé « C: »)."
#: ../help.pm:567
#, c-format
@@ -1399,30 +1414,30 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Cette étape ne s'affichera que si une partition GNU/Linux a été détectée\n"
"sur votre disque dur.\n"
"\n"
"DrakX doit maintenant savoir si vous désirez lancer une « Installation » ou "
"une\n"
-"« Mise à jour » d'un système Mandriva Linux déjà installé :\n"
+"« Mise à jour » d'un système Mageia déjà installé :\n"
"\n"
" * « %s » : remplace l'ancien système. Cependant, selon votre table de\n"
"partition, vous pourrez éviter l'effacement de vos données existantes\n"
@@ -1431,14 +1446,13 @@ msgstr ""
"vous devriez utiliser cette option.\n"
"\n"
" * « %s » : cette classe d'installation vous permet de mettre à jour\n"
-"seulement les paquetages qui composent votre système Mandriva Linux. Elle\n"
+"seulement les paquetages qui composent votre système Mageia. Elle\n"
"conserve les partitions existantes, ainsi que la configuration des\n"
"utilisateurs. La plupart des autres étapes d'une installation classique\n"
"sont accessibles.\n"
"\n"
"La mise à jour devrait fonctionner correctement pour les systèmes\n"
-"Mandriva Linux à partir de la version « 8.1 ». Essayer de lancer une mise à\n"
-"jour sur les versions antérieures à « 8.1 » n'est pas recommandé."
+"Mageia à partir de la version « 2 »."
#: ../help.pm:594
#, c-format
@@ -1497,8 +1511,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1535,24 +1548,24 @@ msgstr ""
"choisissant des langues supplémentaires, le programme vous installera toute\n"
"la documentation et les applications nécessaires à l'utilisation de ces\n"
"langues. Par exemple, si vous prévoyez d'accueillir des utilisateurs\n"
-"d'Espagne sur votre machine, choisissez le français comme langue principale\n"
+"espagnols sur votre machine, choisissez le français comme langue principale\n"
"dans l'arborescence, et « %s », dans la section avancée.\n"
"\n"
"À propos de l'encodage UTF-8 (unicode) : Unicode est un nouveau système\n"
-"d'encodage des caractères censé couvrir tous les langues existantes.\n"
+"d'encodage des caractères censé couvrir toutes les langues existantes.\n"
"Cependant son intégration dans GNU/Linux est encore imparfaite. Pour cette\n"
-"raison, Mandriva Linux l'utilisera ou non selon les critères suivants :\n"
+"raison, Mageia l'utilisera ou non selon les critères suivants :\n"
"\n"
" * Si vous choisissez une langue avec un encodage ayant une longue histoire\n"
"(langues associées à « latin1 », Russe, Japonais, Chinois, Coréen, Thaï,\n"
"Grec, Turc, et la plupart des langues « iso-8859-2 »), l'encodage\n"
-"historique sera utilisé;\n"
+"historique sera utilisé ;\n"
"\n"
-" * Les autres langues entraîneront l'utilisation d'unicode par défaut;\n"
+" * Les autres langues entraîneront l'utilisation d'unicode par défaut ;\n"
"\n"
" * Si vous demandez l'installation de plus d'une langue, et que ces langues\n"
"n'utilisent pas le même encodage, alors unicode sera utilisé pour tout le\n"
-"système;\n"
+"système ;\n"
"\n"
" * Enfin, unicode peut aussi être utilisé quelque soit votre configuration\n"
"des langues à utiliser, en sélectionnant l'option « %s ».\n"
@@ -1565,7 +1578,7 @@ msgstr ""
"Pour passer d'une langue à l'autre, vous pouvez lancer l'utilitaire\n"
"« /usr/sbin/localedrake » en tant que « root » pour changer la langue\n"
"utilisée dans tout le système ; connectez-vous en simple utilisateur pour\n"
-"ne changer que la langue de cet utilisateur."
+"changer la langue uniquement pour cet utilisateur."
#: ../help.pm:650
#, c-format
@@ -1682,7 +1695,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1710,7 +1723,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1731,40 +1744,39 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
-"Maintenant, il faut choisir un système d'impression pour votre ordinateur. "
-"D'autres\n"
-"systèmes d'exploitation en offrent un, mais Mandriva Linux en propose deux. "
-"Chaque système\n"
-"d'impression convient le mieux à un type différent de configuration.\n"
+"Maintenant, il faut choisir un système d'impression pour votre ordinateur.\n"
+"D'autres systèmes d'exploitation en offrent un, mais Mageia en propose\n"
+"deux. Chaque système d'impression convient mieux à un type différent\n"
+"de configuration.\n"
"\n"
" * « %s » - qui veut dire « print, do not queue », (ou, impression sans\n"
"passer par la file d'attente) est un bon choix si votre imprimante est\n"
"branchée directement sur votre poste, que vous voulez pouvoir arrêter\n"
"l'impression directement en cas de problème et que vous n'avez pas\n"
-"d'imprimante réseau. « %s » prendra en charge des configurations simples en "
-"réseau, mais\n"
-"les performances sont plutôt mauvaises dans ces cas. Choisissez «pdq» si "
-"vous\n"
-"débutez sous GNU/Linux.\n"
+"d'imprimante réseau. « %s » prendra en charge des configurations simples\n"
+"en réseau, mais les performances sont plutôt mauvaises dans ces cas.\n"
+"Choisissez « pdq » si vous débutez sous GNU/Linux.\n"
"\n"
" * « %s » - « Common Unix Printing System », est fabuleux autant pour une\n"
"imprimante locale que pour imprimer à l'autre bout du monde. C'est simple\n"
-"et il peut agir comme un serveur ou un client avec l'ancien système "
-"d'impression « lpd », de ce fait il est compatible avec les anciens\n"
-" systèmes d'exploitations qui nécessitent encore un service d'impression. Il "
-"s'agit d'un outil très puissant et les\n"
-"configurations de base sont aussi simples que « pdq ». Pour émuler un serveur "
-"« lpd », lancez le démon (« daemon ») « cups-lpq ». « %s » qui offre une "
-"interface graphique simple pour imprimer sur et administrer les "
-"imprimantes.\n"
-"\n"
-"Si vous choisissez votre système d'impression maintenant et que par la suite "
-"vous n'en êtes pas content, vous pourrez le changer\n"
-"ultérieurement en lançant PrinterDrake depuis le Centre de contrôle\n"
-"Mandriva Linux en cliquant sur le bouton « %s »."
+"à configurer et il peut agir comme un serveur ou un client avec l'ancien\n"
+"système d'impression « lpd ». De ce fait il est compatible avec les anciens\n"
+" systèmes d'exploitations qui nécessitent encore un service d'impression. "
+"Il\n"
+"s'agit d'un outil très puissant et les configurations de base sont aussi "
+"simples\n"
+"que « pdq ». Pour émuler un serveur « lpd », lancez le démon (« daemon »)\n"
+"« cups-lpq ». « %s » offre une interface graphique simple pour imprimer,\n"
+"choisir les options d'impression et administrer les imprimantes.\n"
+"\n"
+"Si vous choisissez votre système d'impression maintenant et que par la "
+"suite\n"
+"vous n'en êtes pas content, vous pourrez le changer ultérieurement en\n"
+"lançant PrinterDrake depuis le Centre de contrôle Mageia en cliquant sur le\n"
+"bouton « %s »."
#: ../help.pm:768
#, c-format
@@ -1791,7 +1803,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1876,8 +1888,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1894,7 +1905,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1913,7 +1924,7 @@ msgstr ""
"ne se trouve pas dans la première liste, cliquez sur « %s » pour avoir la\n"
"liste complète.\n"
"\n"
-" * « %s » : DrakX, par défaut, configure le fuseau horaire selon le pays\n"
+" * « %s » : par défaut, DrakX configure le fuseau horaire selon le pays\n"
"dans lequel vous vous trouvez. Cliquez sur le bouton « %s » si ce n'est pas\n"
"le bon.\n"
"\n"
@@ -1930,8 +1941,8 @@ msgstr ""
"détectée, cliquez sur « %s » pour la configurer à la main.\n"
"\n"
" * « %s » : si une carte RNIS (ISDN) est détectée, elle apparaîtra ici.\n"
-"Vous pouvez cliquer sur le bouton « %s » pour en modifier les paramètres si\n"
-"vous estimez que la configuration actuelle est inexacte.\n"
+"Vous pouvez cliquer sur le bouton « %s » pour en modifier les paramètres\n"
+"si vous estimez que la configuration actuelle est inexacte.\n"
"\n"
" * « %s » : par défaut, DrakX configure votre interface graphique avec une\n"
"résolution de « 800x600 » ou « 1024x768 ». Si cela ne vous convient pas,\n"
@@ -1940,12 +1951,11 @@ msgstr ""
"\n"
" * « %s » : si vous souhaitez configurer votre accès Internet ou réseau\n"
"local dès maintenant. Lisez la documentation fournie ou exécutez\n"
-"le Centre de Contrôle Mandriva Linux après l'installation pour avoir droit à "
-"une\n"
+"le Centre de Contrôle Mageia après l'installation pour avoir droit à une\n"
"aide complète en ligne.\n"
"\n"
" * « %s » : permet de configurer les adresses proxy HTTP et FTP si la\n"
-"machine que vous installez se trouve derrière un serveur proxy.\n"
+"machine que vous installez se trouve derrière un serveur mandataire.\n"
"\n"
" * « %s » : il vous est ici proposé de redéfinir votre niveau de sécurité\n"
"tel que défini dans une étape précédente ().\n"
@@ -1958,7 +1968,7 @@ msgstr ""
" * « %s » : si vous souhaitez changer la configuration par défaut de votre\n"
"chargeur de démarrage. À réserver aux utilisateurs expérimentés. Lisez la\n"
"documentation fournie ou l'aide en ligne sur la configuration de chargeur\n"
-"de démarrage présente dans le Centre de Contrôle Mandriva Linux.\n"
+"de démarrage présente dans le Centre de Contrôle Mageia.\n"
"\n"
" * « %s » : vous pourrez ici contrôler finement les services disponibles\n"
"sur votre machine. Si vous envisagez de monter un serveur, c'est une bonne\n"
@@ -1984,13 +1994,13 @@ msgstr "Interface graphique"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Choisissez le disque dur à effacer pour installer votre partition\n"
-"GNU/Linux. Soyez prudent, toute l'information stockée sur le disque sera\n"
-"détruite."
+"Choisissez le disque dur à effacer pour installer votre nouvelle partition\n"
+"Mageia. Soyez prudent, toute les informations stockées sur le disque\n"
+"seront détruites."
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/fr/drakx-chapter.xml
@@ -1998,12 +2008,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Cliquez sur « %s » si vous voulez vraiment effacer toute l'information et\n"
"les partitions. Soyez prudent, après avoir cliqué sur « %s », vous ne\n"
diff --git a/perl-install/install/help/po/fur.po b/perl-install/install/help/po/fur.po
index 3bd881a4f..86dfc776d 100644
--- a/perl-install/install/help/po/fur.po
+++ b/perl-install/install/help/po/fur.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2004-06-28 17:41+0200\n"
"Last-Translator: Andrea Gracco <graccoandrea@tin.it>\n"
"Language-Team: furlan <gft@freelists.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -20,7 +21,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -84,7 +85,8 @@ msgstr "Vuelistu doprâ cheste fature?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -94,31 +96,35 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -129,12 +135,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -214,10 +219,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -310,7 +315,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -408,39 +413,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -449,15 +458,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -564,7 +573,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -573,7 +582,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -596,7 +605,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -612,21 +621,24 @@ msgstr ""
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -642,21 +654,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -673,14 +687,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -721,34 +729,40 @@ msgstr ""
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -768,23 +782,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -825,8 +839,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -931,7 +944,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -942,7 +955,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -963,7 +976,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -990,7 +1003,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1052,8 +1065,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1070,7 +1082,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1095,8 +1107,8 @@ msgstr ""
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1104,12 +1116,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
#: ../help.pm:872
diff --git a/perl-install/install/help/po/ga.po b/perl-install/install/help/po/ga.po
index b44bf9724..d2e402780 100644
--- a/perl-install/install/help/po/ga.po
+++ b/perl-install/install/help/po/ga.po
@@ -9,6 +9,7 @@ msgstr ""
"PO-Revision-Date: 2005-09-12 18:04+0200\n"
"Last-Translator: Alastair McKinstry <mckinstry@computer.org>\n"
"Language-Team: Irish <ga@li.org>\n"
+"Language: ga\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -17,7 +18,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -81,7 +82,8 @@ msgstr "An mian leat an gné seo a úsáid?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -91,31 +93,35 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -126,12 +132,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -211,10 +216,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -307,7 +312,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -405,39 +410,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -446,15 +455,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -561,7 +570,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -570,7 +579,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -593,7 +602,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -609,21 +618,24 @@ msgstr "Riarthóir Slándála"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -639,21 +651,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -670,14 +684,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -718,34 +726,40 @@ msgstr ""
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -765,23 +779,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -822,8 +836,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -928,7 +941,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -939,7 +952,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -960,7 +973,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -987,7 +1000,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1049,8 +1062,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1067,7 +1079,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1092,8 +1104,8 @@ msgstr "Comhéadan Grafach"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1101,12 +1113,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
#: ../help.pm:872
diff --git a/perl-install/install/help/po/gl.po b/perl-install/install/help/po/gl.po
index 4e4e20a9c..7354ed534 100644
--- a/perl-install/install/help/po/gl.po
+++ b/perl-install/install/help/po/gl.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2006-07-08 20:57+0100\n"
"Last-Translator: Leandro Regueiro <leandro.regueiro@gmail.com>\n"
"Language-Team: <gl@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -18,15 +19,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Antes de continuar, debe ler atentamente os termos da licenza. Esta\n"
-"licenza cobre toda a distribución Mandriva Linux. Se está de acordo\n"
+"licenza cobre toda a distribución Mageia. Se está de acordo\n"
"con tódolos termos que contén, marque o cadro \"%s\". Se non o está,\n"
"prema no botón \"%s\" e reiniciarase o seu ordenador."
@@ -127,7 +128,8 @@ msgstr "Desexa usar esta funcionalidade?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -137,24 +139,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"As particións listadas aquí son as particións Linux existentes detectadas\n"
@@ -190,15 +196,15 @@ msgstr ""
"significa \"segundo ID SCSI menor\", etc."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"A instalación de Mandriva Linux distribúese en varios CD-ROMs. Se un\n"
+"A instalación de Mageia distribúese en varios CD-ROMs. Se un\n"
"paquete dos seleccionados está noutro CD-ROM, DrakX expulsará o CD\n"
"actual e diralle que insira o CD requirido. Se non ten o CD requirido a "
"man,\n"
@@ -208,12 +214,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -264,11 +269,11 @@ msgid ""
"megabytes."
msgstr ""
"Agora terá que especificar que programas desexa instalar no seu sistema.\n"
-"Hai milleiros de paquetes dispoñibles para Mandriva Linux, e para facer que\n"
+"Hai milleiros de paquetes dispoñibles para Mageia, e para facer que\n"
"sexa máis sinxelo manexalos, puxéronse en grupos de aplicacións "
"semellantes.\n"
"\n"
-"Mandriva Linux ordena os grupos de paquetes en catro categorías. Vostede\n"
+"Mageia ordena os grupos de paquetes en catro categorías. Vostede\n"
"pode mesturar aplicacións de varias categorías, de xeito que unha "
"instalación\n"
"``Estación de Traballo'' poida ter instaladas aplicacións da categoría "
@@ -335,7 +340,7 @@ msgid "Truly minimal install"
msgstr "Instalación mínima de verdade"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -348,10 +353,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -382,10 +387,10 @@ msgstr ""
"!!Se se selecciona un paquete de servidor, xa sexa porque vostede elixiu\n"
"dito paquete ou porque é parte dun grupo de paquetes, pediráselle que\n"
"confirme que desexa instalar estes servidores. De maneira predeterminada\n"
-"Mandriva Linux iniciará automáticamente ó arrincar o sistema tódolos\n"
+"Mageia iniciará automáticamente ó arrincar o sistema tódolos\n"
"servicios instalados. Incluso se son seguros e non tiñan ningún problema\n"
"coñecido cando se fixo a distribución, é posible que se descubriran buratos\n"
-"de seguridade despois de que se rematara esta versión de Mandriva Linux.\n"
+"de seguridade despois de que se rematara esta versión de Mageia.\n"
"Se non sabe que fai un determinado servicio ou por que se vai instalar,\n"
"prema en \"%s\". Se preme en \"%s\" instalaranse os servicios listados e\n"
"iniciaranse automáticamente ó arrincar o sistema!!\n"
@@ -511,11 +516,11 @@ msgstr ""
"necesidades."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -571,7 +576,7 @@ msgid ""
msgstr ""
"As X (por X Window System) son o corazón da interface gráfica de\n"
"GNU/Linux do que dependen tódolos ambientes gráficos (KDE, GNOME,\n"
-"AfterStep, WindowMaker, etc.) proporcionados por Mandriva Linux.\n"
+"AfterStep, WindowMaker, etc.) proporcionados por Mageia.\n"
"\n"
"Vostede verá unha lista dos diferentes parámetros que se poden\n"
"cambiar para obter unha visualización gráfica óptima.\n"
@@ -687,41 +692,45 @@ msgstr ""
"coma un servidor, ou se non tivo éxito configurando o sistema gráfico."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -730,15 +739,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -752,11 +761,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Agora ten que decidir onde quere instalar o sistema operativo\n"
-"Mandriva Linux no disco duro. Se o seu disco duro está baleiro, ou se\n"
+"Mageia no disco duro. Se o seu disco duro está baleiro, ou se\n"
"outro sistema operativo está usando todo o espacio dispoñible, terá que\n"
"particionalo. Básicamente, particionar un disco duro consiste en dividilo\n"
"lóxicamente para crear o espacio necesario para instalar o seu novo\n"
-"sistema Mandriva Linux.\n"
+"sistema Mageia.\n"
"\n"
"Debido a que o proceso de particionamento é normalmente irreversible\n"
"e pode provocar perdas de datos, o particionamento pode intimidar e\n"
@@ -786,7 +795,7 @@ msgstr ""
"pode levarse a cabo sen a perda de ningún dato, con tal que\n"
"desfragmente previamente a partición Windows. É moi recomendable\n"
"que faga unha copia de seguridade dos seus datos. Recoméndase\n"
-"usar esta opción se desexa usar Mandriva Linux e Microsoft\n"
+"usar esta opción se desexa usar Mageia e Microsoft\n"
"Windows no mesmo ordenador.\n"
"\n"
" Antes de escoller esta opción, debe comprender que despois deste\n"
@@ -795,7 +804,7 @@ msgstr ""
"para almacenar os seus datos ou para instalar novo software.\n"
"\n"
" * \"%s\". Se desexa eliminar tódolos datos e as particións presentes no\n"
-"seu disco duro e remprazalas polo seu novo sistema Mandriva Linux, elixa\n"
+"seu disco duro e remprazalas polo seu novo sistema Mageia, elixa\n"
"esta opción. Teña coidado, porque non poderá desfacer esta operación\n"
"despois de que confirme.\n"
"\n"
@@ -924,7 +933,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -943,7 +952,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -966,15 +975,15 @@ msgstr ""
"Prema en \"%s\" cando estea preparado para formatar as particións.\n"
"\n"
"Prema en \"%s\" se desexa elixir outra partición para a instalación do seu\n"
-"novo sistema operativo Mandriva Linux.\n"
+"novo sistema operativo Mageia.\n"
"\n"
"Prema en \"%s\" se desexa seleccionar as particións nas que se realizarán\n"
"comprobacións de bloques erróneos."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -986,7 +995,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Cando instale Mandriva Linux é probable que algúns paquetes se\n"
+"Cando instale Mageia é probable que algúns paquetes se\n"
"actualizaran dende a publicación inicial. Pode ser que se solucionaran "
"erros,\n"
"e se resolveran problemas de seguridade. Para beneficiarse destas\n"
@@ -1001,7 +1010,7 @@ msgstr ""
"seleccionado(s), ou en \"%s\" para abortar."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1010,7 +1019,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1024,7 +1033,7 @@ msgstr ""
"\n"
"Se non sabe cal escoller, deixe a opción predeterminada. Poderá\n"
"cambiala máis tarde ca ferramenta draksec, a cal é parte do Centro de\n"
-"Control de Mandriva Linux.\n"
+"Control de Mageia.\n"
"\n"
"Complete o campo \"%s\" co enderezo de correo-e (e-mail) da persoa\n"
"responsable da seguridade. As mensaxes de seguridade enviaranse a\n"
@@ -1036,24 +1045,27 @@ msgid "Security Administrator"
msgstr "Administrador de Seguridade"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1069,21 +1081,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1100,17 +1114,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Neste punto cómpre que escolla que partición(s) se van usar para a\n"
-"instalación do seu sistema Mandriva Linux. Se as particións xa se\n"
+"instalación do seu sistema Mageia. Se as particións xa se\n"
"crearon, xa sexa nunha instalación anterior de GNU/Linux ou con\n"
"outra ferramenta de particionamento, poderá usar as particións\n"
"existentes. Se non é así, débense crear as particións no disco duro.\n"
@@ -1126,7 +1134,7 @@ msgstr ""
"seleccionado\n"
"\n"
" * \"%s\": esta opción permítelle crear automáticamente particións\n"
-"ext3 e swap no espacio baleiro do disco duro\n"
+"ext4 e swap no espacio baleiro do disco duro\n"
"\n"
"\"%s\": dálle acceso a funcionalidades adicionais:\n"
"\n"
@@ -1176,13 +1184,6 @@ msgstr ""
"\n"
"Para obter información sobre os diferentes tipos de sistemas de ficheiros\n"
"dispoñibles, lea o capítulo sobre ext2FS do ``Manual de Referencia''.\n"
-"\n"
-"Se está instalando nunha máquina PPC, quererá crear unha pequena\n"
-"partición HFS para ``bootstrap'' de como mínimo 1MB a cal vai ser usada\n"
-"polo cargador de arrinque yaboot. Se opta por facer a partición un pouco\n"
-"máis grande, digamos de 50MB, podería darse conta de que é un sitio útil\n"
-"para almacenar un kernel de reserva e imaxes ramdisk para situacións de\n"
-"arrinques de emerxencia."
#: ../help.pm:526
#, c-format
@@ -1220,41 +1221,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Cambiar entre modo normal/experto"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Detectouse máis dunha partición Microsoft no seu disco duro. Elixa a que\n"
"quere redimensionar para poder instalar o seu novo sistema operativo\n"
-"Mandriva Linux.\n"
+"Mageia.\n"
"\n"
"Cada partición está listada do seguinte xeito: \"Nome en Linux\",\n"
"\"Nome en Windows\", \"Capacidade\".\n"
@@ -1295,35 +1302,35 @@ msgstr ""
"que se amosa, prema no botón \"%s\" para obter a lista completa de países."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Este paso actívase só se se atopou algunha partición GNU/Linux na súa\n"
"máquina.\n"
"\n"
"DrakX necesita saber se desexa facer unha nova instalación ou\n"
-"unha actualización dun sistema Mandriva Linux xa existente:\n"
+"unha actualización dun sistema Mageia xa existente:\n"
"\n"
" * \"%s\". A maioría das veces, isto destrúe completamente o sistema\n"
"antigo. Sen embargo, dependendo de como sexa o seu esquema de\n"
@@ -1333,15 +1340,15 @@ msgstr ""
"o sistema de ficheiros, debe usar esta opción.\n"
"\n"
" * \"%s\". Esta clase de instalación permítelle actualiza-los paquetes que\n"
-"están instalados agora mesmo no seu sistema Mandriva Linux. Non se\n"
+"están instalados agora mesmo no seu sistema Mageia. Non se\n"
"modificarán nin o esquema de particionamento actual nin os datos dos\n"
"usuarios. A maior parte dos outros pasos de configuración estarán\n"
"dispoñibles e serán semellantes ós dunha instalación estándar.\n"
"\n"
"O uso da opción ``Actualizar'' debería funcionar ben en sistemas con\n"
-"Mandriva Linux versión \"8.1\" ou posteriores. Non se recomenda levar\n"
+"Mageia versión \"8.1\" ou posteriores. Non se recomenda levar\n"
"a cabo actualizacións en versións anteriores á versión \"8.1\" de\n"
-"Mandriva Linux."
+"Mageia."
#: ../help.pm:594
#, c-format
@@ -1381,7 +1388,7 @@ msgstr ""
"teclado cambie entre unha disposición Latina e unha non Latina."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1397,8 +1404,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1441,7 +1447,7 @@ msgstr ""
"Acerca do soporte de UTF-8 (unicode): Unicode é unha nova codificación de\n"
"caracteres pensada para cubrir tódalas linguas existentes. Sen embargo o\n"
"soporte completo para ela en GNU/Linux ainda se está desenvolvendo. Por\n"
-"esta razón, o uso de UTF-8 en Mandriva Linux dependerá das eleccións do\n"
+"esta razón, o uso de UTF-8 en Mageia dependerá das eleccións do\n"
"usuario:\n"
"\n"
" * Se selecciona unha lingua cunha codificación fortemente asociada\n"
@@ -1581,7 +1587,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1605,10 +1611,10 @@ msgstr ""
"opción só se sabe o que está facendo."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1629,12 +1635,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Agora é a hora de seleccionar un sistema de impresión para o seu\n"
"ordenador. Pode ser que outros sistemas operativos lle ofrezan un, pero\n"
-"Mandriva Linux ofrécelle dous. Cada un dos sistemas de impresión está\n"
+"Mageia ofrécelle dous. Cada un dos sistemas de impresión está\n"
"máis adaptado a determinados tipos de configuración.\n"
"\n"
" * \"%s\" -- que é un acrónimo de ``print, do not queue'' (imprime, non o\n"
@@ -1658,7 +1664,7 @@ msgstr ""
"\n"
"Se elixe un agora, e máis tarde se da conta de que non lle gusta o seu\n"
"sistema de impresión poderá cambialo executando PrinterDrake dende o\n"
-"Centro de Control de Mandriva Linux e premendo no botón \"%s\"."
+"Centro de Control de Mageia e premendo no botón \"%s\"."
#: ../help.pm:768
#, c-format
@@ -1683,7 +1689,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1768,8 +1774,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1786,7 +1791,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1834,7 +1839,7 @@ msgstr ""
"\n"
" * \"%s\": se desexa configurar o seu acceso á Internet ou a unha rede\n"
"local, pode facelo agora. Consulte a documentación impresa ou use o\n"
-"Centro de Control de Mandriva Linux despois de rematar a instalación para\n"
+"Centro de Control de Mageia despois de rematar a instalación para\n"
"sacar partido da axuda en liña.\n"
"\n"
" * \"%s\": permítelle configurar os enderezos do proxy HTTP e FTP no\n"
@@ -1875,26 +1880,28 @@ msgid "Graphical Interface"
msgstr "Interface Gráfica"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Elixa o disco duro que desexa borrar para poder crear a súa nova partición\n"
-"Mandriva Linux. Teña tino, porque se perderán tódolos datos da unidade e\n"
+"Mageia. Teña tino, porque se perderán tódolos datos da unidade e\n"
"non se poderán volver recuperar!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Prema en \"%s\" se desexa eliminar tódolos datos e particións presentes\n"
"neste disco duro. Teña tino, despois de premer en \"%s\", non poderá\n"
diff --git a/perl-install/install/help/po/he.po b/perl-install/install/help/po/he.po
index 511569046..4bea8e723 100644
--- a/perl-install/install/help/po/he.po
+++ b/perl-install/install/help/po/he.po
@@ -18,6 +18,7 @@ msgstr ""
"PO-Revision-Date: 2008-02-01 20:34+0200\n"
"Last-Translator: \n"
"Language-Team: Hebrew <he@li.org>\n"
+"Language: he\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -25,10 +26,10 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -133,7 +134,8 @@ msgstr "האם להפעיל אפשרות זו?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -143,24 +145,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"להלן רשומות מחיצות הלינוקס שזוהו בכונן הקשיח שלך. \n"
@@ -197,9 +203,9 @@ msgstr ""
"היא הכונן השני מתחתית סולם ה-SCSI ID וכן הלאה."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -214,12 +220,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -340,7 +345,7 @@ msgid "Truly minimal install"
msgstr "התקנה מינימלית באמת"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -353,10 +358,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -514,11 +519,11 @@ msgstr ""
"תלת-מימד, תוצג לך אפשרות לבחור את השרת שמתאים באופן הטוב ביותר לצרכיך."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -682,41 +687,45 @@ msgstr ""
"התצוגה כראוי בשלב ההתקנה."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -725,15 +734,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -916,7 +925,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -935,7 +944,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -961,9 +970,9 @@ msgstr ""
"יש להקיש על \"%s\" אם ברצונך לבחור מחיצות שיבדקו למציאת קטעים פגועים בכונן."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -988,7 +997,7 @@ msgstr ""
"כדי להוריד ולהתקין את החבילות שנבחרו או \"%s\" כדי לבטל את הפעולה."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -997,7 +1006,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1023,24 +1032,27 @@ msgid "Security Administrator"
msgstr "מנהל אבטחה"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1056,21 +1068,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1087,14 +1101,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"בשלב זה, עליך לבחור היכן תותקן מערכת מנדריבה לינוקס בכונן הקשיח\n"
"שלך. אם כבר הוגדרו מחיצותמתאימות, בין אם על ידי התקנה קודמת\n"
@@ -1111,7 +1119,7 @@ msgstr ""
"\n"
" * \"%s\": אפשרות זו תמחק את כל המחיצות המוגדרות בכונן הקשיח\n"
"\n"
-" * \"%s\": אפשרות זו מאפשרת לך ליצור באופן אוטומטי מחיצתext3\n"
+" * \"%s\": אפשרות זו מאפשרת לך ליצור באופן אוטומטי מחיצתext4\n"
"ומחיצת החלפה בשטח הפנוי של הכונן הקשיח שלך\n"
"\n"
"\"%s\": מאפשר לך לבחור באפשרויות נוספות:\n"
@@ -1202,36 +1210,42 @@ msgid "Toggle between normal/expert mode"
msgstr "מעבר בין מצבי רגיל\"מומחה "
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"יותר ממחיצה אחת של מיקרוסופט זוהתה בכונן הקשיח שלך.\n"
@@ -1275,29 +1289,29 @@ msgstr ""
"עליך ללחוץ על הכפתור \"%s\" לרשימה מורחבת."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"שלב זה מופעל רק כאשר זוהתה מחיצת גנו/לינוקס קיימת במחשבך.\n"
"\n"
@@ -1358,7 +1372,7 @@ msgstr ""
"לבחור את צרוף המקשים שיאפשר לך להחליף בין פריסות שונות."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1374,8 +1388,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1419,8 +1432,8 @@ msgstr ""
"של מנדריבה-לינוקס ב-UTF-8 יהיה תלוי בהגדרות המשתמש:\n"
"\n"
" * אם נבחרה שפה שהשימוש בקידוד הישן שלה נפוץ (לדוגמה שפות עם latin1, רוסית,\n"
-"יפנית, סינית, קוריאנית, תאילנדית, יוונית, תורכית ורוב השפות שמשתמשות ב-iso-"
-"8859-2)\n"
+"יפנית, סינית, קוריאנית, תאילנדית, יוונית, תורכית ורוב השפות שמשתמשות ב-"
+"iso-8859-2)\n"
"יעשה שימוש בקידוד הישן כברירת מחדל;\n"
"\n"
" * עבור שפות אחרות יעשה שימוש ביוניקוד כברירת מחדל;\n"
@@ -1534,8 +1547,8 @@ msgid ""
"Please select the correct port. For example, the \"COM1\" port under\n"
"Windows is named \"ttyS0\" under GNU/Linux."
msgstr ""
-"נא לבחור את היציאה הנכונה. לדוגמה, יציאה \"COM1\" תחת Windows תקרא, \"ttyS0"
-"\"\n"
+"נא לבחור את היציאה הנכונה. לדוגמה, יציאה \"COM1\" תחת Windows תקרא, "
+"\"ttyS0\"\n"
"תחת GNU/Linux."
#: ../help.pm:684
@@ -1552,7 +1565,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1576,10 +1589,10 @@ msgstr ""
"מנהל אתחול. יש לבחור באפשרות זו רק במקרה שידועות לך ההשלכות."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1600,7 +1613,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"כעת עליך לבחור מנגנון הדפסה במערכת. מערכות הפעלה אחרות אפשרו לך\n"
@@ -1650,7 +1663,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1734,8 +1747,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1752,7 +1764,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1837,10 +1849,10 @@ msgid "Graphical Interface"
msgstr "ממשק גרפי"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"עליך לבחור את הכונן הקשיח שברצונך למחוק על מנת לפנות מקום\n"
@@ -1851,12 +1863,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"עליך ללחוץ על %s אם ברצונך למחוק את כל המחיצות והמידע על כונן קשיח\n"
"זה. זהירות: אחרי לחיצה על \"%s\" אין דרך לשחזר את המחיצות והמידע\n"
diff --git a/perl-install/install/help/po/hi.po b/perl-install/install/help/po/hi.po
index e27e2bf00..f44d14888 100644
--- a/perl-install/install/help/po/hi.po
+++ b/perl-install/install/help/po/hi.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2004-04-04 21:54+0530\n"
"Last-Translator: धनञ्जय शर्मा (Dhananjaya Sharma) <dysxhi@yahoo.co.in>\n"
"Language-Team: हिन्दी (Hindi) <dysxhi@yahoo.co.in>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -17,10 +18,10 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -100,8 +101,8 @@ msgstr ""
"\n"
"जब आप \"%s\" पर क्लिक करते है, तब आप अन्य उपयोगकर्ताओं को जोड़ सकते है। अपने मित्रों में "
"से\n"
-"हर एक के लिए, एक उपयोगकर्ता को जोड़ें । उदाहरण हेतु अपने पिता या अपनी बहन के लिए । \"%"
-"s\"\n"
+"हर एक के लिए, एक उपयोगकर्ता को जोड़ें । उदाहरण हेतु अपने पिता या अपनी बहन के लिए । "
+"\"%s\"\n"
"पर क्लिक करें जब आप उपयोगकर्ताओं का जोड़ना समाप्त कर लें ।\n"
"\n"
"\"%s\" बटन पर क्लिक करके आप डिफ़ाल्ट \"shell\" को उस उपयोगकर्ता के लिए\n"
@@ -132,7 +133,8 @@ msgstr "क्या आप इस लक्षण का उपयोग कर
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -142,24 +144,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"आपकी हार्ड डिस्क पर खोजे गये विद्यमान लिनक्स विभाजनों की यह सूची है । \n"
@@ -169,8 +175,8 @@ msgstr ""
" चयन ना करें अन्यथा आप इस पर अधिक सॉफ़्टवेयर को संसाधित नहीं कर पायेगें । यदि आप अपनी\n"
"सूचनाओं को एक अलग विभाजन पर सुरक्षित रखने चाहते है, तो आपको एक होम \"/home\" विभाजन "
"का \n"
-"भी निर्माण करना होगा (तभी सम्भव है यदि आपके पास एक से अधिक लिनक्स विभाजन उपलब्ध हो)"
-"।\n"
+"भी निर्माण करना होगा (तभी सम्भव है यदि आपके पास एक से अधिक लिनक्स विभाजन उपलब्ध "
+"हो)।\n"
"\n"
"प्रत्येक विभाजन निम्न तौर पर सूचीबद्ध है: \"नाम\", \"क्षमता\"।\n"
"\n"
@@ -199,7 +205,7 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -213,12 +219,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -346,10 +351,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -519,7 +524,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -694,39 +699,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -735,15 +744,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -850,7 +859,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -859,7 +868,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -882,7 +891,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -898,21 +907,24 @@ msgstr "सुरक्षा प्रबंधक"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -928,21 +940,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -959,14 +973,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -1005,36 +1013,42 @@ msgid "Toggle between normal/expert mode"
msgstr "सामान्य/विशेषज्ञ विधा के मध्य में आना-जाना"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"आपकी हार्ड डिस्क पर एक से अधिक माइक्रोसाफ़्ट विभाजनों को खोजा गया है । \n"
@@ -1087,23 +1101,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1144,8 +1158,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1252,7 +1265,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1279,7 +1292,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1300,7 +1313,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1327,7 +1340,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1395,8 +1408,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1413,7 +1425,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1436,10 +1448,10 @@ msgid "Graphical Interface"
msgstr "सचित्र इन्टरफ़ेस"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"उस हार्ड ड्राइव का चयन करें जिसे आप अपने नवीन मैनड्रिव लिनक्स विभाजन के संसाधन के लिए \n"
@@ -1450,12 +1462,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"\"%s\" पर क्लिक करें, यदि आप इस हार्ड ड्राइव पर स्थित सभी सूचनाओं व विभाजनों को\n"
"मिटाना चाहते है । सावधान रहें, \"%s\" पर क्लिक करने के उपरान्त, \n"
diff --git a/perl-install/install/help/po/hr.po b/perl-install/install/help/po/hr.po
index df3f98d3a..aacd0c630 100644
--- a/perl-install/install/help/po/hr.po
+++ b/perl-install/install/help/po/hr.po
@@ -9,23 +9,24 @@ msgstr ""
"PO-Revision-Date: 2005-01-04 21:25+CET\n"
"Last-Translator: auto\n"
"Language-Team: Croatian <lokalizacija@linux.hr>\n"
+"Language: hr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;;\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;;\n"
"X-Generator: TransDict server\n"
#: ../help.pm:14
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Prije nastavka trebate pažljivo pročitati stavke licence. Ona\n"
-"pokriva cijelu Mandriva Linux distribuciju, i ako se ne slažete u svim\n"
+"pokriva cijelu Mageia distribuciju, i ako se ne slažete u svim\n"
"stavkama sadržanih u njoj, kliknite na \"Odbij\" gumb koji će automatski\n"
"završiti instalaciju. Za nastavak instalacije, kliknite na\n"
"\"Prihvati\" gumb."
@@ -123,7 +124,8 @@ msgstr "Da li želite koristiti aboot?"
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -133,24 +135,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Gore su popisane postojeće Linux particije pronađene na\n"
@@ -195,13 +201,13 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux instalacija je proširena na nekoliko CDROMova. DrakX\n"
+"Mageia instalacija je proširena na nekoliko CDROMova. DrakX\n"
"zna ukoliko se odabrani paket nalazi na drugom CDROMu i izbaciti će\n"
"trenutni CD i pitati vas da ubacite drugi koji je potreban."
@@ -209,12 +215,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -355,10 +360,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -398,14 +403,12 @@ msgstr ""
"grupi,\n"
"bit ćete upitani da potvrdite da li želite stvarno instalirati te "
"poslužitelje.\n"
-"Kod Mandriva Linuxa, svi instalirani poslužitelji se pokreću prilikom "
-"podizanja\n"
+"Kod Mageiaa, svi instalirani poslužitelji se pokreću prilikom podizanja\n"
"sustava. Čak iako su sigurni, bez poznatih problema u vrijeme izlaska "
"distribucije,\n"
"može se dogoditi da se otkriju sigurnosne rupe nakon zgotovljenja ove "
"inačice\n"
-"Mandriva Linuxa. Ako ne znate što bi pojedini servis trebao raditi ili "
-"zašto \n"
+"Mageiaa. Ako ne znate što bi pojedini servis trebao raditi ili zašto \n"
"se instalira, pritisnite \"Ne\". Pritiskanjem na \"Da\"instalirat će se "
"navedeni\n"
"servisi i pokretat će se automatski. !!\n"
@@ -540,7 +543,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -645,39 +648,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -686,15 +693,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -708,12 +715,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"U ovom trenutku, trebate izabrati gdje ćete instalirati vaš\n"
-"Mandriva Linux operativni sustav na vašem tvrdom disku. Ukoliko je prazan "
-"ili \n"
+"Mageia operativni sustav na vašem tvrdom disku. Ukoliko je prazan ili \n"
"ako postojeći operativni sustav koristi čitav prostor na disku, trebate ga\n"
"particionirati. Jednostavno, particioniranje hard diska sastoji se od\n"
"logičkog dijeljenja kako bi napravili prostor za instalaciju vašeg novog\n"
-"Mandriva Linux sustava.\n"
+"Mageia sustava.\n"
"\n"
"Zato što su posljedice procesa particioniranja obično nepovratne,\n"
"particioniranje može biti strašno i stresno ukoliko ste korisnik bez "
@@ -722,7 +728,7 @@ msgstr ""
"upute i uzmite vremena koliko vam je potrebno.\n"
"\n"
"Ako ste pokrenuli instalaciju u modu za stručnjake, ući ćete u DiskDrake,\n"
-"Mandriva Linuxov alat za particioniranje, s kojim možete fino podešavati\n"
+"Mageiaov alat za particioniranje, s kojim možete fino podešavati\n"
"particije. Pogledajte DiskDrake odjeljak u ``User Guide''.\n"
"Iz sučelja instalacije možete koristiti čarobnjake koji su ovdje opisani\n"
"pritiskom na \"Čarobnjak\" dugme.\n"
@@ -745,7 +751,7 @@ msgstr ""
" * \"Obriši cijeli disk\": ukoliko želite obrisati sve podatke i sve "
"particije\n"
"koje postoje na vašem hard disku i zamjeniti ih sa\n"
-"vašim novim Mandriva Linux sustavom, možete izabrati ovu opciju. Budite\n"
+"vašim novim Mageia sustavom, možete izabrati ovu opciju. Budite\n"
"pažljivi sa ovim rješenjem, nećete moći\n"
"povratiti vaš izbor nakon potvrde.\n"
"\n"
@@ -760,7 +766,7 @@ msgstr ""
"Microsoft Windows particije. Mijenjanje veličine može se obaviti bez\n"
"gubitka bilo kakvih podataka, ako prethodno defragmentirate Windows "
"particiju.\n"
-"Ovo rješenje je preporučeno ukoliko želite koristiti zajedno Mandriva Linux\n"
+"Ovo rješenje je preporučeno ukoliko želite koristiti zajedno Mageia\n"
"i Microsoft Windows-e na istom računalu.\n"
"\n"
" Prije izabiranja ovog rješenja, molimo shvatite da će veličina vaše "
@@ -910,7 +916,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -936,7 +942,7 @@ msgstr ""
"Pritisnite na \"U redu\" kada ste spremni za formatiranje particije.\n"
"\n"
"Pritisnite na \"Odustani\" kada želite izabrati druge particije za\n"
-"instalaciju vašeg novog Mandriva Linux operativnog sustava.\n"
+"instalaciju vašeg novog Mageia operativnog sustava.\n"
"\n"
"Pritisnite na \"Napredno\" ako želite izabrati particije koje će biti\n"
"provjeravane radi loših blokova (bad blocks)."
@@ -944,7 +950,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -956,7 +962,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Dok instalirate Mandriva Linux, moguće je da su neki paketi već nadograđeni\n"
+"Dok instalirate Mageia, moguće je da su neki paketi već nadograđeni\n"
"od prvotne inačice. Neki bugovi su možda uklonjeni, i sigurnost poboljšana.\n"
"Da bi iskoristili prednosti tih nadogradnji, predloženo vam je da ih\n"
"skinete s Interneta. Izaberite \"Da\" ako ste povezani s Internetom, ili \"Ne"
@@ -979,7 +985,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1005,21 +1011,24 @@ msgstr "Udaljeno administriranje"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1035,21 +1044,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1066,18 +1077,12 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"U ovoj točki instalacije, trebate izabrati koje partiticije ćete koristiti "
"za\n"
-"instalaciju vašeg novog Mandriva Linux sustava. Ukoliko su\n"
+"instalaciju vašeg novog Mageia sustava. Ukoliko su\n"
"particije već definirane (iz prethodne instalacije GNU/Linux-a ili iz\n"
"drugih particijskih alata), možete koristiti postojeće particije. Inače,\n"
"moraju biti definirane.\n"
@@ -1137,12 +1142,6 @@ msgstr ""
"\n"
"Za informacije o raznim dostupnim datotečnim sustavima, pročitajte ext2fs\n"
"poglavlje u ``Reference Manual''\n"
-"\n"
-"Ukoliko instalirate na PPC računalo, željet ćete napraviti malu HFS\n"
-"'bootstrap' particiju od najmanje 1MB koju će koristiti\n"
-"yaboot bootloader. Ukoliko se odlučite za pravljenje malo veće \n"
-"particije, recimo 50MB, možete ju pronaći korisnom za stavljanje\n"
-"dodatnog kernela i ramdisk slike u slučaju nužde."
#: ../help.pm:526
#, c-format
@@ -1182,40 +1181,46 @@ msgstr "Prebaci u normalni mod"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Više od jedne Microsoft Windows particije su pronađene\n"
"na vašem hard disku. Molimo izaberite jednu kojoj želite promjeniti "
"veličinu\n"
-"kako bi instalirali vaš novi Mandriva Linux operativni sustav.\n"
+"kako bi instalirali vaš novi Mageia operativni sustav.\n"
"\n"
"Svaka je particija popisana kako slijedi; \"Linux ime\", \"Windows ime\"\n"
"\"Kapacitet\".\n"
@@ -1260,23 +1265,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1327,8 +1332,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1464,7 +1468,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1475,7 +1479,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1496,12 +1500,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Ovdje biramo sustav za ispis za vaše računalo. Drugi OSovi možda nude "
"jedan,\n"
-"ali Mandriva Linux nudi tri.\n"
+"ali Mageia nudi tri.\n"
"\n"
" * \"pdq\", što znači ``print, do not queue'' (ispiši, bez stavljanja u "
"red), je\n"
@@ -1559,7 +1563,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1647,8 +1651,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1665,7 +1668,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1690,24 +1693,26 @@ msgstr "X kod pokretanja sustava"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Izaberite hard disk kojeg želite obrisati kako bi instalirali vašu\n"
-"novu Mandriva Linux particiju. Budite pažljivi, svi postojeći podaci\n"
+"novu Mageia particiju. Budite pažljivi, svi postojeći podaci\n"
"biti će izgubljen i neće se moći povratiti!"
#: ../help.pm:866
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Izaberite \"U redu\" ukoliko želite obrisati sve podatke i\n"
"postojeće particije na navedenom tvrdom disku. Budite pažljivi, nakon\n"
diff --git a/perl-install/install/help/po/hu.po b/perl-install/install/help/po/hu.po
index abcd40f56..dd53fab85 100644
--- a/perl-install/install/help/po/hu.po
+++ b/perl-install/install/help/po/hu.po
@@ -12,6 +12,7 @@ msgstr ""
"PO-Revision-Date: 2006-03-05 14:45+0100\n"
"Last-Translator: Arpad Biro\n"
"Language-Team: Hungarian\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -19,15 +20,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Mielőtt továbblépne, olvassa át alaposan a licencegyezményt, amely az\n"
-"egész Mandriva Linux disztribúcióra érvényes. Ha elfogadja az abban\n"
+"egész Mageia disztribúcióra érvényes. Ha elfogadja az abban\n"
"szereplő feltételeket, akkor jelölje be a(z) \"%s\" opciót.\n"
"Ha nem fogadja el valamelyik feltételt, akkor kattintson a(z)\n"
"\"%s\" gombra - ezzel újraindítja a számítógépet."
@@ -131,7 +132,8 @@ msgstr "Szeretné használni ezt a lehetőséget?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -141,24 +143,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Itt láthatók a lemezen talált, már létező linuxos partíciók.\n"
@@ -194,16 +200,15 @@ msgstr ""
"SCSI-azonosító\", ..."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"A Mandriva Linux telepítőanyag több CD-n helyezkedik el. Ha egy "
-"kiválasztott\n"
+"A Mageia telepítőanyag több CD-n helyezkedik el. Ha egy kiválasztott\n"
"csomag egy másik CD-n található, akkor a telepítő kiadja az\n"
"aktuális CD-t, és megkéri Önt, hogy helyezze be a megfelelőt.\n"
"Ha a szóban forgó lemez nincs kéznél, akkor kattintson a(z) \"%s\" gombra,\n"
@@ -213,12 +218,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -269,10 +273,10 @@ msgid ""
"megabytes."
msgstr ""
"Most meg kell adnia, mely programokat kívánja telepíteni a rendszerére.\n"
-"Több ezer program létezik Mandriva Linuxhoz; a kezelésük megkönnyítése\n"
+"Több ezer program létezik Mageiahoz; a kezelésük megkönnyítése\n"
"érdekében a programok (hasonlóság alapján) csoportokba lettek sorolva.\n"
"\n"
-"A Mandriva Linux rendszerben négy előredefiniált csomagkategória van\n"
+"A Mageia rendszerben négy előredefiniált csomagkategória van\n"
"meghatározva. A különböző kategóriákban levő csomagok keverhetők is,\n"
"tehát egy \"Munkaállomás\" típusú telepítés tartalmazhat olyan\n"
"alkalmazásokat is, amelyek csak a \"Kiszolgáló\" kategóriában vannak\n"
@@ -339,7 +343,7 @@ msgid "Truly minimal install"
msgstr "Valóban minimális telepítés"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -352,10 +356,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -386,7 +390,7 @@ msgstr ""
"Ha kiszolgálócsomagok is ki lettek választva - akár közvetlenül, akár\n"
"bizonyos csoportok tagjaként -, a telepítő megerősítést kér Öntől arra\n"
"vonatkozóan, hogy valóban telepíteni kívánja-e azon kiszolgálószoftvereket.\n"
-"A Mandriva Linux rendszerben alapértelmezésben az összes feltelepített\n"
+"A Mageia rendszerben alapértelmezésben az összes feltelepített\n"
"szolgáltatás elindításra kerül a rendszer indulásakor. Még ha azok\n"
"biztonságosak is illetve nem rendelkeznek ismert problémákkal, akkor is\n"
"előfordulhat, hogy utóbb biztonsági problémák merülnek fel velük\n"
@@ -517,11 +521,11 @@ msgstr ""
"illetve a nélkül -, akkor kiválaszthatja az Önnek leginkább megfelelőt."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -576,7 +580,7 @@ msgid ""
"not successful in getting the display configured."
msgstr ""
"Az X (teljes néven: X Window System) a Linux grafikus felületét nyújtó\n"
-"rendszer. A Mandriva Linuxban levő grafikus környezetek (KDE, GNOME,\n"
+"rendszer. A Mageiaban levő grafikus környezetek (KDE, GNOME,\n"
"AfterStep, WindowMaker, ...) ezen grafikus rendszert használják.\n"
"\n"
"Egy listát fog látni az elérhető paraméterekről, amelyekkel optimalizálható\n"
@@ -695,41 +699,45 @@ msgstr ""
"lehetőséget érdemes választani."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -738,15 +746,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -759,12 +767,11 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Ebben a lépésben kell megadni, hogy a Mandriva Linux telepítése a "
-"merevlemez\n"
+"Ebben a lépésben kell megadni, hogy a Mageia telepítése a merevlemez\n"
"melyik részére történjen. Ha a lemez még teljesen üres, vagy a korábban\n"
"telepített operációs rendszer(ek) miatt nincs elég szabad hely, akkor újra\n"
"kell partícionálni a lemezt. A partícionálás a lemezterület logikai\n"
-"újrafelosztását jelenti - erre a Mandriva Linux telepítéséhez szükséges\n"
+"újrafelosztását jelenti - erre a Mageia telepítéséhez szükséges\n"
"hely létrehozása érdekében van szükség.\n"
"\n"
"A partícionálás veszélyes művelet. Hiba esetén adatvesztéssel járhat\n"
@@ -796,7 +803,7 @@ msgstr ""
"Az átméretezés végrehajtható a lemezen levő adatok\n"
"elvesztése nélkül - feltéve, hogy azt megelőzően töredezettségmentesítve\n"
"lett a kérdéses partíció. Javasolt továbbá az adatok mentése is.\n"
-"Ezen módszer a javasolt abban az esetben, ha a Mandriva Linuxot és a\n"
+"Ezen módszer a javasolt abban az esetben, ha a Mageiaot és a\n"
"Windowst ugyanazon a gépen szeretné használni.\n"
"\n"
"Ha ezt a lehetőséget választja, ne feledkezzen meg arról, hogy ennek\n"
@@ -901,7 +908,7 @@ msgstr ""
"\n"
"Ez a lehetőség jól használható akkor, amikor nagyobb számú azonos gépre\n"
"kell a rendszert feltelepíteni. Az automatikus telepítéssel\n"
-"kapcsolatban a Mandriva Linux honlapján találhatók további információk.\n"
+"kapcsolatban a Mageia honlapján találhatók további információk.\n"
"\n"
" - \"%s\"(*): elmenti a telepítés során\n"
"kiválasztott csomagok listáját. Ha egy újabb telepítés alkalmával fel\n"
@@ -937,7 +944,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -956,7 +963,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -978,15 +985,15 @@ msgstr ""
"Kattintson a(z) \"%s\" gombra a formázások megkezdéséhez.\n"
"\n"
"Kattintson a(z) \"%s\" gombra, ha más partícióra szeretné telepíteni a\n"
-"Mandriva Linux operációs rendszert.\n"
+"Mageia operációs rendszert.\n"
"\n"
"Kattintson a(z) \"%s\" gombra, ha bizonyos partíciókat ellenőriztetni\n"
"kíván (hibás blokkok keresése)."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -998,7 +1005,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Lehetséges, hogy amikor Ön a Mandriva Linux rendszert telepíti, már\n"
+"Lehetséges, hogy amikor Ön a Mageia rendszert telepíti, már\n"
"frissítésre kerültek bizonyos csomagok a rendszer kiadása óta.\n"
"Elképzelhető, hogy bizonyos hibák ki lettek javítva, illetve\n"
"hogy meg lettek oldva bizonyos felmerült biztonsági problémák. Ezeket\n"
@@ -1015,7 +1022,7 @@ msgstr ""
"csomagokat telepíteni, akkor a(z) \"%s\" gombot nyomja le."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1024,7 +1031,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1037,7 +1044,7 @@ msgstr ""
"\n"
"Ha nem biztos benne, hogy mit volna érdemes választani, akkor válassza\n"
"az alapértelmezés szerinti lehetőséget. A biztonsági szint később is\n"
-"módosítható a Mandriva Linux Vezérlőközpontban elérhető \"draksec\"\n"
+"módosítható a Mageia Vezérlőközpontban elérhető \"draksec\"\n"
"eszközzel.\n"
"\n"
"A(z) \"%s\" mezőben megadandó a biztonságért felelős személy email-címe.\n"
@@ -1049,24 +1056,27 @@ msgid "Security Administrator"
msgstr "Biztonsági adminisztrátor"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1082,21 +1092,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1113,16 +1125,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Ebben a lépésben kell kiválasztani a Mandriva Linux rendszer telepítéséhez\n"
+"Ebben a lépésben kell kiválasztani a Mageia rendszer telepítéséhez\n"
"használni kívánt partíciókat. Ha a kívánt partíciók már létre lettek hozva\n"
"(egy korábbi Linux-telepítés vagy valamilyen partícionálási segédprogram\n"
"által), akkor felhasználhatók a már létező partíciók. Ha viszont még nem\n"
@@ -1236,41 +1242,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Váltás a normál és a szakértői módok közt"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Egynél több microsoftos partíció van a lemezen.\n"
"Válassza ki azt, amelyiket át szeretné méretezni, hogy a\n"
-"Mandriva Linux feltelepíthető legyen.\n"
+"Mageia feltelepíthető legyen.\n"
"\n"
"A partíciólista a következő mezőket tartalmazza: \"linuxos név\",\n"
"\"windowsos név\", \"kapacitás\".\n"
@@ -1314,34 +1326,34 @@ msgstr ""
"kattintson a(z) \"%s\" gombra a teljes országlista megjelenítéséhez."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Erre a lépésre csak akkor kerül sor, ha a gépen már van linuxos partíció.\n"
"\n"
"Most közölnie kell a telepítővel, hogy új telepítést szeretne-e végezni\n"
-"vagy pedig egy meglevő Mandriva Linux-rendszert kíván frissíteni:\n"
+"vagy pedig egy meglevő Mageia-rendszert kíván frissíteni:\n"
"\n"
" - \"%s\": a korábbi rendszer felülírásra kerül. Attól függően, hogy\n"
"milyen partíciók találhatók a gépen, bizonyos partíciók (például a\n"
@@ -1349,13 +1361,13 @@ msgstr ""
"megőrizhetők. Ha szeretné módosítani a merevlemezek partícionálását\n"
"vagy a fájlrendszereket, akkor ezt a lehetőséget használja.\n"
"\n"
-" - \"%s\": lehetővé teszi egy korábbi Mandriva Linux-telepítés\n"
+" - \"%s\": lehetővé teszi egy korábbi Mageia-telepítés\n"
"csomagjainak frissítését. A merevlemezek partícionálása változatlanul\n"
"marad, a felhasználók adatai sem módosulnak. A többi beállítási lépés közül\n"
"a legtöbb elérhető lesz - a folyamat hasonló a normál telepítéshez.\n"
"\n"
"Frissítés használata akkor javasolt, ha a számítógépen\n"
-"Mandriva Linux 8.1 vagy újabb kiadás van."
+"Mageia 8.1 vagy újabb kiadás van."
#: ../help.pm:594
#, c-format
@@ -1397,7 +1409,7 @@ msgstr ""
"majd a latin és a nem-latin kiosztások közt lehet váltani."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1413,8 +1425,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1457,7 +1468,7 @@ msgstr ""
"Az UTF-8 (Unicode) szabvány támogatásáról: A Unicode egy új\n"
"karakterkódolási szabvány az összes létező nyelv lefedésére.\n"
"A Linux alatti teljes támogatása még fejlesztés alatt áll.\n"
-"A Mandriva Linux UTF-8-használatát befolyásolják a felhasználó\n"
+"A Mageia UTF-8-használatát befolyásolják a felhasználó\n"
"által végzett beállítások:\n"
"\n"
" - ha olyan nyelvet választ, amelyhez erősen kapcsolódik egy\n"
@@ -1602,7 +1613,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1628,10 +1639,10 @@ msgstr ""
"akkor használja, ha biztos abban, hogy ezt szeretné."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1652,11 +1663,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Itt lehet nyomtatórendszert választani a gép számára. Más operációs\n"
-"rendszerekben általában csak egy van, a Mandriva Linuxban viszont kettő is.\n"
+"rendszerekben általában csak egy van, a Mageiaban viszont kettő is.\n"
"Mindkettőnek megvannak a maga előnyei bizonyos környezetben használva.\n"
"\n"
" - \"%s\": \"print, do not queue\", azaz sorba tevés nélkül történő\n"
@@ -1681,7 +1692,7 @@ msgstr ""
"\n"
"Telepítés után lehetősége lesz a nyomtatórendszer lecserélésére (ha mégsem\n"
"felel meg az itt kiválasztott) - ehhez a PrinterDrake programot kell\n"
-"elindítani a Mandriva Linux Vezérlőközpontban, majd rá kell kattintani a(z)\n"
+"elindítani a Mageia Vezérlőközpontban, majd rá kell kattintani a(z)\n"
"\"%s\" gombra."
#: ../help.pm:768
@@ -1707,7 +1718,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1787,8 +1798,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1805,7 +1815,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1856,7 +1866,7 @@ msgstr ""
"\n"
" - \"%s\": ha be szeretné állítani az internet vagy a helyi hálózat\n"
"elérését most, akkor kattintson a gombra. Információkat a nyomtatott\n"
-"dokumentációból szerezhet, vagy telepítés után a Mandriva Linux\n"
+"dokumentációból szerezhet, vagy telepítés után a Mageia\n"
"Vezérlőközpontban.\n"
"\n"
" - \"%s\": lehetővé teszi a HTTP- és FTP-proxyk beállítását arra az\n"
@@ -1873,7 +1883,7 @@ msgstr ""
"beállításait, kattintson a megfelelő gombra. Elsősorban a komolyabb\n"
"ismeretekkel rendelkező felhasználóknak javasolt. Információkat a\n"
"nyomtatott dokumentációból szerezhet, vagy telepítés után a\n"
-"Mandriva Linux Vezérlőközpontban a rendszerindítónál.\n"
+"Mageia Vezérlőközpontban a rendszerindítónál.\n"
"\n"
" - \"%s\": itt részletesen beállítható, hogy mely\n"
"szolgáltatások legyenek működtetve a gépen. Ha kiszolgálóként szeretné\n"
@@ -1895,26 +1905,28 @@ msgid "Graphical Interface"
msgstr "Grafikus felület"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Válassza ki azt a lemezt, amelyet törölni szeretne a\n"
-"Mandriva Linux-partíció létrehozásához. Figyelem: a lemezen\n"
+"Mageia-partíció létrehozásához. Figyelem: a lemezen\n"
"található adatok elvesznek, és később nem nyerhetők vissza!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Kattintson a(z) \"%s\" gombra, ha a lemezen található összes adatot\n"
"és partíciót törölni szeretné. Figyelem! A(z) \"%s\" gomb megnyomása\n"
diff --git a/perl-install/install/help/po/id.po b/perl-install/install/help/po/id.po
index be1d4a1da..4f1442552 100644
--- a/perl-install/install/help/po/id.po
+++ b/perl-install/install/help/po/id.po
@@ -1,4 +1,4 @@
-# Instalator Grafis Mandriva Linux
+# Instalator Grafis Mageia
# Copyright (C) 1999 Mandriva
# Budi Rachmanto <rac@mandrivalinux.org>, 2001-2003
# Linux Indonesia <http://www.linux.or.id>, 1999-2001
@@ -20,6 +20,7 @@ msgstr ""
"PO-Revision-Date: 2006-03-11 10:45+0700\n"
"Last-Translator: Willy Sudiarto Raharjo <willysr@gmail.com>\n"
"Language-Team: Indonesia <mdk-id@yahoogroups.com>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -27,15 +28,15 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Bacalah lisensi sebelum melanjutkan. Lisensi mencakup seluruh distribusi\n"
-"Mandriva Linux. Jika Anda setuju dengan semua pasal di dalamnya, klik\n"
+"Mageia. Jika Anda setuju dengan semua pasal di dalamnya, klik\n"
"kotak \"%s\". Jika tidak, klik pada tombol \"%s\" akan mereboot komputer "
"Anda."
@@ -140,7 +141,8 @@ msgstr "Apakah Anda ingin menggunakan fitur ini?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -150,27 +152,32 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
-"Berikut adalah daftar partisi Linux yang terdeteksi pada hard drive Anda.\n"
+"Berikut adalah daftar partisi Linux yang terdeteksi pada hard disk drive "
+"Anda.\n"
"Anda dapat memakai pilihan yg dibuatkan, karena itu baik untuk installasi\n"
"umum. Bila Anda mengubah pilihan, setidaknya Anda perlu mendefinisikan\n"
"partisi root (\"/\"). Jangan pilih partisi yang terlalu kecil agar dapat\n"
@@ -181,37 +188,37 @@ msgstr ""
"\n"
"Setiap partisi terdaftar sebagai: \"Nama\", \"Kapasitas\".\n"
"\n"
-"\"Nama\" berstruktur: \"tipe hard drive\", \"nomor hard drive\",\n"
+"\"Nama\" berstruktur: \"tipe hard disk drive\", \"nomor hard disk drive\",\n"
"\"nomor partisi\" (misalnya \"hda1\").\n"
"\n"
-"\"Tipe hard drive\" adalah \"hd\" untuk drive IDE dan \"sd\" untuk drive "
-"SCSI.\n"
+"\"Tipe hard disk drive\" adalah \"hd\" untuk drive IDE dan \"sd\" untuk "
+"drive SCSI.\n"
"\n"
"\"Nomor Hard Drive\", selalu berupa huruf setelah \"hd\" atau \"sd\". Bila "
"berupa IDE, maka:\n"
"\n"
-" *\"a\" berarti \"hard drive master pada kontroller IDE primer\",\n"
+" *\"a\" berarti \"hard disk drive master pada kontroller IDE primer\",\n"
"\n"
-" *\"b\" berarti \"hard drive slave pada kontroler IDE primer\",\n"
+" *\"b\" berarti \"hard disk drive slave pada kontroler IDE primer\",\n"
"\n"
-" *\"c\" berarti \"hard drive master pada kontroler IDE sekunder\",\n"
+" *\"c\" berarti \"hard disk drive master pada kontroler IDE sekunder\",\n"
"\n"
-" *\"d\" berarti \"hard drive slave pada kontroler IDE sekunder\",\n"
+" *\"d\" berarti \"hard disk drive slave pada kontroler IDE sekunder\",\n"
"\n"
"Pada drive SCSI, \"a\" adalah \"ID SCSI terkecil\", \"b\" adalah\"ID SCSI "
"terkecil kedua\", dan seterusnya."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Installasi Mandriva Linux didistribusikan pada beberapa CDROM. DrakX tahu "
-"jika paket\n"
+"Installasi Mageia didistribusikan pada beberapa CDROM. DrakX tahu jika "
+"paket\n"
"terpilih berada di CDROM lain dan akan mengeluarkan CD yang ada untuk "
"kemudian\n"
"meminta Anda memasukkan CD yg diperlukan. Jika Anda tidak memiliki CD yang "
@@ -222,12 +229,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -279,12 +285,10 @@ msgid ""
msgstr ""
"Sekarang waktunya untuk menentukan program yang akan diinstal. Terdapat "
"ribuan \n"
-"pada Mandriva Linux, dan untuk mempermudah, mereka telah diletakkan pada "
-"grup \n"
+"pada Mageia, dan untuk mempermudah, mereka telah diletakkan pada grup \n"
"aplikasi yang sejenis.\n"
"\n"
-"Mandriva Linux mengurutkan paket dalam empat kategori. Anda bisa "
-"menggabungkan \n"
+"Mageia mengurutkan paket dalam empat kategori. Anda bisa menggabungkan \n"
"menyesuaikan aplikasi dari berbagai kategori, sehingga installasi "
"``Workstation''\n"
"tetap dapat memiliki aplikasi pada installasi ``Server''\n"
@@ -353,7 +357,7 @@ msgid "Truly minimal install"
msgstr "Installasi paling minimal"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -366,10 +370,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -401,10 +405,9 @@ msgstr ""
"!! Jika paket server terpilih dengan sengaja atau karena merupakan bagian "
"suatu\n"
"grup besar, akan ada pertanyaan konfirmasi installasi paket tersebut. Pada\n"
-"Mandriva Linux, secara default semua server terinstal dijalankan saat boot.\n"
+"Mageia, secara default semua server terinstal dijalankan saat boot.\n"
"Meski aman saat distribusi diluncurkan, ada kemungkinan lubang keamanan\n"
-"ditemukan setelah versi Mandriva Linux ini selesai. Jika Anda tidak tahu "
-"apa\n"
+"ditemukan setelah versi Mageia ini selesai. Jika Anda tidak tahu apa\n"
"yang dilakukan oleh suatu layanan atau mengapa ia diinstal, klik \"%s\".\n"
"Jika Anda menekan \"%s\" layanan terdaftar akan diinstal dan akan "
"dijalankan\n"
@@ -543,11 +546,11 @@ msgstr ""
"Anda."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -603,7 +606,7 @@ msgid ""
msgstr ""
"X (untuk X Window System) adalah jantung dari interface grafis GNU/Linux\n"
"yang diperlukan oleh semua lingkungan grafis (KDE, GNOME, AfterStep,\n"
-"WindowMaker, dll.) yang dibundel pada Mandriva Linux.\n"
+"WindowMaker, dll.) yang dibundel pada Mageia.\n"
"\n"
"Anda akan melihat daftar parameter yang berbeda untuk merubah untuk "
"mendapatkan\n"
@@ -731,41 +734,45 @@ msgstr ""
"tidak berhasil mendapatkan konfigurasi tampilan."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -774,15 +781,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -797,11 +804,10 @@ msgid ""
msgstr ""
"Sekarang Anda harus menentukan dimana Anda hendak menginstall sistem "
"operasi\n"
-"Mandriva Linux pada harddisk Anda. Jika harddisk Anda kosong atau jika "
-"sebuah\n"
+"Mageia pada harddisk Anda. Jika harddisk Anda kosong atau jika sebuah\n"
"sistem operasi menggunakan semua tempat, Anda harus mempartisi drive.\n"
"Pada dasarnya, mempartisi harddisk berarti membaginya secara logical\n"
-"untuk membuat ruang yang diperlukan sistem Mandriva Linux baru Anda.\n"
+"untuk membuat ruang yang diperlukan sistem Mageia baru Anda.\n"
"\n"
"Karena proses partisi harddisk biasanya tidak bisa dikembalikan dan bisa \n"
"mengacu pada kehilangan data, partisi bisa menegangkan dan membuat stress\n"
@@ -838,8 +844,7 @@ msgstr ""
"dengan sebelumnya Anda sudah mendefrag partisi Windows.\n"
"Membackup data sangat disarankan. Penggunaan opsi ini sangat "
"direkomendasikan jika Anda\n"
-"ingin menggunakan Mandriva Linux dan Microsoft Windows pada komputer yang "
-"sama.\n"
+"ingin menggunakan Mageia dan Microsoft Windows pada komputer yang sama.\n"
"\n"
" Sebelum memilih opsi ini, harap dipahami bahwa setelah prosedur ini, "
"ukuran partisi \n"
@@ -851,8 +856,8 @@ msgstr ""
"\n"
" * \"%s\". Jika Anda hendak menghapus seluruh data dan semua partisi yang "
"ada pada harddisk\n"
-"Anda dan menggantinya dengan sistem Mandriva Linux yang baru, pilih opsi "
-"ini. Hati-hati, karena\n"
+"Anda dan menggantinya dengan sistem Mageia yang baru, pilih opsi ini. Hati-"
+"hati, karena\n"
"Anda tidak bisa membatalkan opsi ini setelah Anda mengkonfirmasikan.\n"
"\n"
" !! Jika Anda memilih opsi ini, semua data pada harddisk Anda akan "
@@ -986,7 +991,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -1005,7 +1010,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1027,15 +1032,15 @@ msgstr ""
"Klik pada \"%s\" ketika Anda siap memformat partisi.\n"
"\n"
"Klik pada \"%s\" jika Anda hendak memilih partisi lain untuk \n"
-"installasi sistem operasi Mandriva Linux baru Anda.\n"
+"installasi sistem operasi Mageia baru Anda.\n"
"\n"
"Klik pada \"%s\" jika Anda hendak memilih partisi yang hendak \n"
"diperiksa untuk block rusak pada disk."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1047,7 +1052,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Saat Mandriva Linux diinstal, mungkin beberapa paket telah diupdate sejak\n"
+"Saat Mageia diinstal, mungkin beberapa paket telah diupdate sejak\n"
"rilis awal. Beberapa kesalahan mungkin telah diperbaiki / masalah keamanan\n"
"dipecahkan. Untuk memanfaatkan update ini Anda dapat men-download-nya dari\n"
"Internet. Pilih \"%s\" jika Anda memiliki koneksi Internet, atau \"%s\" "
@@ -1060,7 +1065,7 @@ msgstr ""
"tekan \"%s\" untuk mengambil/menginstall paket atau \"%s\" untuk membatalkan."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1069,7 +1074,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1082,7 +1087,7 @@ msgstr ""
"\n"
"Jika Anda tidak tahu apa yang akan dipilih, gunakan opsi default. Anda\n"
"mampu mengubahnya menggunakan perkakas draksec, yang merupakan bagian\n"
-"dari dari Pusat Kontrol Mandriva Linux.\n"
+"dari dari Pusat Kontrol Mageia.\n"
"\n"
"Isi bagian \"%s\" dengan alamat email dari orang yang bertanggung jawab\n"
"atas keaman. Pesan keamanan akan dikirimkan pada alamat tersebut."
@@ -1093,24 +1098,27 @@ msgid "Security Administrator"
msgstr "Administrator Keamanan"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1126,21 +1134,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1157,17 +1167,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Saat ini, Anda harus memilih partisi yang akan digunakan untuk installasi\n"
-"sistem Mandriva Linux Anda. Jika partisi telah didefinisikan, baik dari\n"
+"sistem Mageia Anda. Jika partisi telah didefinisikan, baik dari\n"
"installasi GNU/Linux sebelumnya atau melalui perkakas partisi lainnya,\n"
"Anda bisa menggunakan partisi yang ada. Jika tidak, partisi harddisk \n"
"harus didefinisikan.\n"
@@ -1180,7 +1184,7 @@ msgstr ""
"\n"
" * \"%s\": opsi ini menghapus seluruh partisi pada drive terpilih\n"
"\n"
-" * \"%s\": opsi ini memungkinkan Anda membuat partisi ext3 dan swap\n"
+" * \"%s\": opsi ini memungkinkan Anda membuat partisi ext4 dan swap\n"
"secara otomatis pada ruang kosong dari hard disk Anda.\n"
"\n"
"\"%s\": memberi akses pada fitur tambahan:\n"
@@ -1230,11 +1234,6 @@ msgstr ""
"\n"
"Untuk mendapatkan informasi tentang jenis sistem file yang ada, \n"
"silahkan membaca bab ext2FS dari ``Referensi Manual''.\n"
-"\n"
-"Jika Anda menginstall pada komputer PPC, Anda harus membuat partisi\n"
-"``bootstrap'' HFS kecil paling tidak 1 MB yang akan digunakan oleh\n"
-"bootloader yaboot. Jika Anda membuatnya lebih besar, misalkan 50MB\n"
-"Anda bisa menyimpan kernel dan citra ramdisk untuk situasi darurat."
#: ../help.pm:526
#, c-format
@@ -1272,66 +1271,75 @@ msgid "Toggle between normal/expert mode"
msgstr "Ubah ke modus normal/ahli"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Terdapat lebih dari satu partisi Microsoft yang terdeteksi pada harddisk\n"
"Anda. Pilih partisi yang hendak Anda ubah ukurannya untuk installasi sistem\n"
-"operasi Mandriva Linux.\n"
+"operasi Mageia.\n"
"\n"
"Tiap partisi terdaftar sebagai: \"Nama Linux\",\"Nama windows\",\"Kapasitas"
"\".\n"
"\n"
-"\"Nama Linux\" berstruktur: \"tipe hard drive\", \"nomor hard drive\",\n"
+"\"Nama Linux\" berstruktur: \"tipe hard disk drive\", \"nomor hard disk drive"
+"\",\n"
"\"nomor partisi\" (misalnya \"hda1\").\n"
"\n"
-"\"Tipe hard drive\" adalah \"hd\" bila drive bertipe IDE dan \"sd\" jika\n"
+"\"Tipe hard disk drive\" adalah \"hd\" bila drive bertipe IDE dan \"sd\" "
+"jika\n"
"berupa drive SCSI.\n"
"\n"
"\"Nomor Hard Drive\", selalu berupa huruf setelah \"hd\" atau \"sd\". Jika\n"
"berupa IDE, maka:\n"
"\n"
-" * \"a\" berarti \"hard drive master pada kontroller IDE primer\",\n"
+" * \"a\" berarti \"hard disk drive master pada kontroller IDE primer\",\n"
"\n"
-" * \"b\" berarti \"hard drive slave pada kontroler IDE primer\",\n"
+" * \"b\" berarti \"hard disk drive slave pada kontroler IDE primer\",\n"
"\n"
-" * \"c\" berarti \"hard drive master pada kontroler IDE sekunder\",\n"
+" * \"c\" berarti \"hard disk drive master pada kontroler IDE sekunder\",\n"
"\n"
-" * \"d\" berarti \"hard drive slave pada kontroler IDE sekunder\",\n"
+" * \"d\" berarti \"hard disk drive slave pada kontroler IDE sekunder\",\n"
"\n"
"Pada drive SCSI, \"a\" berarti \"ID SCSI terkecil, \"b\" berarti \"ID SCSI\n"
"terkecil kedua\", dst.\n"
"\n"
-"\"Nama windows\" adalah huruf hard drive Anda pada Windows (disk pertama\n"
+"\"Nama windows\" adalah huruf hard disk drive Anda pada Windows (disk "
+"pertama\n"
"pada partisi disebut \"C:\")."
#: ../help.pm:567
@@ -1347,34 +1355,34 @@ msgstr ""
"klik tombol \"%s\" untuk mendapatkan daftar lengkap."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Tahap ini hanya aktif jika partisi GNU/Linux lama ditemukan.\n"
"\n"
"DrakX perlu tahu Anda ingin melakukan installasi baru atau upgrade sistem\n"
-"Mandriva Linux yang sudah ada:\n"
+"Mageia yang sudah ada:\n"
"\n"
"* \"%s\": Untuk sebagian besar bagian, opsi ini menghapus sistem lama.\n"
"Namun, bergantung pada skema partisi Anda, Anda bisa mencegah data Anda\n"
@@ -1383,11 +1391,11 @@ msgstr ""
"harus menggunakan opsi ini.\n"
"\n"
"* \"%s\": Kelas installasi ini akan mengupdate paket yang terinstall\n"
-"pada sistem Mandriva Linux Anda. Skema partisi dan data pengguna Anda\n"
+"pada sistem Mageia Anda. Skema partisi dan data pengguna Anda\n"
"tidak akan diubah. Sebagian besar langkah konfigurasi yang tersisa\n"
"serupa pada installasi standar.\n"
"\n"
-"Menggunakan opsi ``Upgrade'' seharusnya berjalan pada Mandriva Linux\n"
+"Menggunakan opsi ``Upgrade'' seharusnya berjalan pada Mageia\n"
"versi \"8.1\" keatas. Melakukan upgrade pada versi sebelum \"8.1\"\n"
"tidak dianjurkan."
@@ -1430,7 +1438,7 @@ msgstr ""
"antara layout Latin dan non-Latin."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1446,8 +1454,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1488,7 +1495,7 @@ msgstr ""
"Tentang dukungan UTF-8 (unicode): Unicode adalah enkoding karakter yang\n"
"baru yang ditujukan untuk mencakup seluruh bahasa yang ada. Namun \n"
"dukungan penuh pada GNU/Linux sedang dalam pengembangan. Untuk alasan\n"
-"tersebut, penggunaan UTF-8 pada Mandriva Linux bergantung pada pilihan\n"
+"tersebut, penggunaan UTF-8 pada Mageia bergantung pada pilihan\n"
"pengguna:\n"
"\n"
" * Jika Anda memilih menggunakan bahasa dengan enkoding yang kuat (bahasa\n"
@@ -1623,7 +1630,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1646,10 +1653,10 @@ msgstr ""
"jika Anda tahu apa yang Anda lakukan."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1670,11 +1677,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Sekarang, waktunya memilih sistem pencetakan untuk komputer Anda. Sistem\n"
-"operasi lain mungkin menawarkan satu, tetapi Mandriva Linux menawarkan dua.\n"
+"operasi lain mungkin menawarkan satu, tetapi Mageia menawarkan dua.\n"
"Setiap sistem pencetakan sesuai untuk jenis konfigurasi tertentu.\n"
"\n"
" * \"%s\" - yang merupakan akronim untuk ``print, tidak ada antrian'',\n"
@@ -1720,7 +1727,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1801,8 +1808,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1819,7 +1825,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1870,7 +1876,7 @@ msgstr ""
"\n"
" * \"%s\": jika Anda hendak mengkonfigurasi akses jaringan Internet\n"
"atau lokal Anda, Anda bisa melakukannya sekarang. Lihat dokumentasi\n"
-"cetak atau gunakan Pusat Kontrol Mandriva Linux setelah installasi\n"
+"cetak atau gunakan Pusat Kontrol Mageia setelah installasi\n"
"selesai untuk mengambil keuntungan dari bantuannya.\n"
"\n"
" * \"%s\": mengijinkan Anda mengkonfigurasi alamat proxy HTTP dan\n"
@@ -1887,7 +1893,7 @@ msgstr ""
" * \"%s\": jika Anda hendak merubah konfigurasi bootloader Anda, klik\n"
"tombol ini. Opsi ini ditujukan untuk pengguna tingkat lanjut. Lihat\n"
"dokumentasi cetak atau bantuan tentang konfigurasi bootloader pada \n"
-"Pusat Kontrol Mandriva Linux.\n"
+"Pusat Kontrol Mageia.\n"
"\n"
" * \"%s\": melalui daftar ini Anda bisa menentukan layanan apa yang\n"
"akan dijalankan pada komputer Anda. Jika Anda berencana untuk memakai\n"
@@ -1910,13 +1916,13 @@ msgid "Graphical Interface"
msgstr "Antarmuka Grafis"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Pilih harddrive yang akan dihapus untuk menginstall partisi Mandriva Linux\n"
+"Pilih harddrive yang akan dihapus untuk menginstall partisi Mageia\n"
"baru Anda. Hati-hati, semua data pada drive ini akan hilang dan\n"
"tidak dapat dikembalikan seperti semula!"
@@ -1924,12 +1930,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Klik pada \"%s\" jika Anda ingin menghapus semua data dan partisi yang ada\n"
"pada harddisk ini. Hati-hati, setelah mengklik \"%s\" Anda tidak dapat\n"
diff --git a/perl-install/install/help/po/is.po b/perl-install/install/help/po/is.po
index 5707eeda9..eafd3f1a2 100644
--- a/perl-install/install/help/po/is.po
+++ b/perl-install/install/help/po/is.po
@@ -1,6 +1,6 @@
# translation of DrakX.po to
# translation of DrakX.po to Icelandic
-# Translation file for Mandriva Linux graphic install, DrakX
+# Translation file for Mageia graphic install, DrakX
# Copyright (C) 1999,2003, 2005, 2006 Free Software Foundation, Inc.
# Copyright (C) 1999 Mandriva
# Jóhann Þorvarðarson <johann.torvardarson@lais.is>, 1999-2000.
@@ -16,6 +16,7 @@ msgstr ""
"PO-Revision-Date: 2006-03-07 18:42+0000\n"
"Last-Translator: Pjetur G. Hjaltason <pjetur@pjetur.net>\n"
"Language-Team: <is@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -23,15 +24,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Áður en þú heldur áfram, ættir þú að lesa vandlega leyfisskilmálana. Þeir\n"
-"taka yfir alla Mandriva Linux dreifinguna. Ef þú er samþykk(ur) öllum þeim\n"
+"taka yfir alla Mageia dreifinguna. Ef þú er samþykk(ur) öllum þeim\n"
"skilmálum sem þar standa, krossaðu þá við í \"%s\" reitinn, ef ekki\n"
"smelltu þá á \"%s\" hnappinn sem mun endurræsa tölvuna þína."
@@ -134,7 +135,8 @@ msgstr "Viltu nota þennan eiginleika?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -144,24 +146,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Hér er listi af núverandi Linux disksneiðum sem fundust á disknum.\n"
@@ -198,15 +204,15 @@ msgstr ""
"\"næst-lægsta SCSI ID\", o.s.frv."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux uppsetningunni er dreift á nokkra geisladiska. Ef valinn\n"
+"Mageia uppsetningunni er dreift á nokkra geisladiska. Ef valinn\n"
"pakki er á öðrum geisladiski, þá mun DrakX spýta út núverandi diski\n"
"og biðja þig um að setja inn rétta diskinn. Ef þú hefur ekki rétta diskinn "
"við\n"
@@ -217,12 +223,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -274,10 +279,10 @@ msgid ""
msgstr ""
"Nú er tími til að skilgreina hvaða forrit þú vilt að séu sett upp á kerfinu "
"þínu.\n"
-"Það eru þúsundir pakka til fyrir Mandriva Linux, og til að einfalda\n"
+"Það eru þúsundir pakka til fyrir Mageia, og til að einfalda\n"
"umsjón pakkanna hafa þeir verið flokkaðir í hópa af svipuðum forritum.\n"
"\n"
-"Mandriva Linux skiptir pökkunum í fjóra flokka. Þú getur blandað saman\n"
+"Mageia skiptir pökkunum í fjóra flokka. Þú getur blandað saman\n"
"pökkum úr mismunandi flokkum svo að ``Vinnustöðvar'' uppsetning\n"
"getur innihaldið forrit úr ``Miðlara'' flokknum.\n"
"\n"
@@ -343,7 +348,7 @@ msgid "Truly minimal install"
msgstr "Alger lágmarksuppsetning"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -356,10 +361,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -390,8 +395,7 @@ msgstr ""
"!! Ef miðlara-pakki hefur verið valinn, annað hvort af því að þú valdir "
"stakan\n"
"pakka eða hann var hluti af hóp, verður þú beðinn um að staðfesta að\n"
-"þú viljir fá þessa miðlara uppsetta. Sjálfgefið mun Mandriva Linux ræsa "
-"allar\n"
+"þú viljir fá þessa miðlara uppsetta. Sjálfgefið mun Mageia ræsa allar\n"
"uppsettar þjónustur og miðlara við kerfisræsingu. Jafnvel þó að þeir séu\n"
"öruggir og engar þekktar villur þegar kerfinu var dreift þá er möguleiki að\n"
"öryggisholur hafi uppgötvast eftir að gengið var frá þessari útgáfu af\n"
@@ -521,11 +525,11 @@ msgstr ""
" miðlara sem best hentar þínum þörfum."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -581,7 +585,7 @@ msgid ""
msgstr ""
"X (sem stendur fyrir X-glugga-kerfið) er grunnur myndræna viðmótsins\n"
"á GNU/Linux. Á því eru byggð öll gluggakerfin (KDE, GNOME, AfterStep,\n"
-"WindowMaker, o.s.frv. ) sem fylgja Mandriva Linux.\n"
+"WindowMaker, o.s.frv. ) sem fylgja Mageia.\n"
"\n"
"Þú sérð lista af mismunandi breytum til að stilla bestu myndgæði.\n"
"\n"
@@ -694,41 +698,45 @@ msgstr ""
"grafíska skjákortið/upplausnina/skjáinn... rétt."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -737,15 +745,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -758,11 +766,11 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Nú verður þú að ákveða hvar þú vilt setja upp Mandriva Linux\n"
+"Nú verður þú að ákveða hvar þú vilt setja upp Mageia\n"
"stýrikerfið á diskinn þinn. Ef diskurinn þinn er tómur eða núverandi\n"
"stýrikerfi er að nota allt plássið á disknum, þá verður þú að\n"
"Endursníða diskinn. Að sníða diskinn þýðir að skipta disknum\n"
-"í hluta sem þörf er á til að setja upp Mandriva Linux kerfið.\n"
+"í hluta sem þörf er á til að setja upp Mageia kerfið.\n"
"\n"
"Af því að skipting disks í sneiðar er venjulega óafturkræf aðgerð\n"
"og getur leitt til að þú tapir gögnum, þá getur þetta verið erfið og\n"
@@ -799,7 +807,7 @@ msgstr ""
"til að geyma gögn og setja upp hugbúnað.\n"
"\n"
" * \"%s\". Ef þú vilt eyða öllum gögnum og disksneiðum sem nú eru\n"
-"á disknum og skipta þeim út með nýju Mandriva Linux stýrikerfi, veldu\n"
+"á disknum og skipta þeim út með nýju Mageia stýrikerfi, veldu\n"
"þennan valkost. Farðu varlega, því þú getur ekki afturkallað þessar\n"
"breytingar eftir að þú hefur staðfest þær.\n"
"\n"
@@ -929,7 +937,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -948,7 +956,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -969,16 +977,16 @@ msgstr ""
"\n"
"Smelltu á \"%s\" þegar þú ert tilbúinn, og vilt forsníða disksneiðarnar.\n"
"\n"
-"Smelltu á \"%s\" ef þú vilt velja aðra disksneið fyrir nýja Mandriva Linux\n"
+"Smelltu á \"%s\" ef þú vilt velja aðra disksneið fyrir nýja Mageia\n"
"stýrikerfið þitt.\n"
"\n"
"Smelltu á \"%s\" ef þú vilt velja disksneiðar sem verða skoðaðar\n"
"sérstaklega m.t.t. galla á diskblokkum."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -990,7 +998,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Þegar þú setur upp Mandriva Linux er líklegt að sumir pakkar hafi verið\n"
+"Þegar þú setur upp Mageia er líklegt að sumir pakkar hafi verið\n"
"uppfærðir frá upphaflegri útgáfu. Villur hafa verið lagfærðar, og\n"
"öryggisvandamál leyst. Til að nýta ykkur þessar uppfærslur, þá getið\n"
"þið sótt þær nú um Internetið. Krossaðu við \"%s\" ef þú hefur nú\n"
@@ -1002,7 +1010,7 @@ msgstr ""
"til að sækja og setja upp valda pakka, eða \"%s\" til að hætta við."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1011,7 +1019,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1024,7 +1032,7 @@ msgstr ""
"vél og gögnum verður óþjálli.\n"
"\n"
"Ef þú veist ekki hvað á að velja, notaðu þá sjálfgefið öryggisstig. Þú\n"
-"getur breytt því seinna með draksec tólinu, sem er hluti af Mandriva Linux\n"
+"getur breytt því seinna með draksec tólinu, sem er hluti af Mageia\n"
"stjórnborðinu.\n"
"\n"
"Fylltu út í svæðið \"%s\" með netfangi þess aðila sem er ábyrgur fyrir\n"
@@ -1036,24 +1044,27 @@ msgid "Security Administrator"
msgstr "Öryggisfulltrúi"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1069,21 +1080,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1100,16 +1113,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Hér þarft þú að ákveða hvaða disksneið þú vilt nota fyrir Mandriva Linux\n"
+"Hér þarft þú að ákveða hvaða disksneið þú vilt nota fyrir Mageia\n"
"stýrikerfið. Ef disksneiðar hafa þegar verið skilgreindar, annað hvort\n"
"frá fyrri uppsetningu á GNU/Linux, eða af öðru forriti til að stilla\n"
"disksneiðar, þá getur þú notað þær. Annars verður þú að skilgreina\n"
@@ -1124,7 +1131,7 @@ msgstr ""
"\n"
" * \"%s\": þessi valkostur eyðir öllum disksneiðum á disknum\n"
"\n"
-" * \"%s\": þessi valkostur býr sjálfkrafa til ext3 og diskminnis-sneið\n"
+" * \"%s\": þessi valkostur býr sjálfkrafa til ext4 og diskminnis-sneið\n"
"á lausu plássi á disknum.\n"
"\n"
"\"%s\": gefur þér aðgang að aukavalkostum:\n"
@@ -1173,12 +1180,6 @@ msgstr ""
"\n"
"Til að fá upplýsingar um mismunandi skráakerfi, vinsamlega lestu\n"
"kaflann um ext2FS í ``Reference Manual''.\n"
-"\n"
-"Ef þú ert að setja upp á PPC tölvu, þá ættir þú að búa til litla HFS\n"
-"``ræsi-disksneið'' sem er að minnsta kosti 1M. Þessi disksneið\n"
-"verður notuð af yaboot ræsistjóranum. Ef þú gerir disksneiðina\n"
-"svolítið stærri t.d. 50MB þá er það góður staður til að geyma auka\n"
-"kjarna og ræsidisk-ímyndir fyrir óvæntar uppákomur."
#: ../help.pm:526
#, c-format
@@ -1217,41 +1218,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Víxla milli venjulegs/sérfræðings-hams"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Fleiri en ein Microsoft disksneið hefur fundist á disknum.\n"
"Vinsamlega veldu hverri þeirra þú vilt breyta stærðinni á til að geta sett\n"
-"upp nýja Mandriva Linux stýrikerfið.\n"
+"upp nýja Mageia stýrikerfið.\n"
"\n"
"Hver sneið á listanum inniheldur \"Linux nafn\", \"Windows nafn\" \"Diskrýmd"
"\".\n"
@@ -1292,35 +1299,35 @@ msgstr ""
"smelltu þá á \"%s\" hnappinn til að sjá heildalista landa."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Þetta skref er aðeins virkjað ef GNU/Linux disksneið hefur fundist á\n"
"tölvunni þinni.\n"
"\n"
"DrakX þarf nú að vita hvort þú vilt setja upp nýtt kerfi eða hvort þú\n"
-"vilt uppfæra uppsett Mandriva Linux kerfi:\n"
+"vilt uppfæra uppsett Mageia kerfi:\n"
"\n"
" * \"%s\". Þetta þurkar að mestu út gamla kerfið. En þó fer það\n"
"svolítið eftir diskssneiðum sem þú hefur sett upp, þá getur þú\n"
@@ -1329,13 +1336,13 @@ msgstr ""
"skráakerfinu, þá ættir þú að velja þennan valkost.\n"
"\n"
" * \"%s\". Þessi uppsetning leyfir þér að uppfæra pakkana sem nú\n"
-"eru uppsettir á Mandriva Linux kerfinu þínu. Disksneiðum og gögnum\n"
+"eru uppsettir á Mageia kerfinu þínu. Disksneiðum og gögnum\n"
"verður ekki breytt. Flest uppsetningarþrep eru enn aðgengileg\n"
"og eru svipuð venjulegri uppfærslu.\n"
"\n"
-"Að nota ``Uppfærslu'' aðgerðina ætti að virka vel á Mandriva Linux\n"
+"Að nota ``Uppfærslu'' aðgerðina ætti að virka vel á Mageia\n"
"kerfum sem eru að keyra útgáfu \"8.1\" eða nýrri. Ekki er mælt með\n"
-"uppfærslu á eldri útgáfum en Mandriva Linux \"8.1\"."
+"uppfærslu á eldri útgáfum en Mageia \"8.1\"."
#: ../help.pm:594
#, c-format
@@ -1375,7 +1382,7 @@ msgstr ""
"sem víxlar til og frá latneska lyklaborðinu."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1391,8 +1398,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1572,7 +1578,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1596,10 +1602,10 @@ msgstr ""
"það aðeins ef þú veist hvað þú ert að gera."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1620,11 +1626,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Nú er komið að því að setja upp prentkerfi fyrir tölvuna þína. Önnur\n"
-"stýrikerfis bjóða þér kannski upp á eitt, en Mandriva Linux býður tvö.\n"
+"stýrikerfis bjóða þér kannski upp á eitt, en Mageia býður tvö.\n"
"Hvort þeirra hefur sína kosti\n"
"\n"
" * \"%s\" -- sem er skammstöfun fyrir ``prenta ekki biðröð'' \n"
@@ -1646,7 +1652,7 @@ msgstr ""
"prentaraval og stjórnun á prentara.\n"
"\n"
"Hvað sem þú velur núna, þá getur þú breytt prentkerfinu með því að\n"
-"keyra PrinterDrake frá Mandriva Linux stjórnborðinu og smella á \"%s\"\n"
+"keyra PrinterDrake frá Mageia stjórnborðinu og smella á \"%s\"\n"
"hnappinn."
#: ../help.pm:768
@@ -1672,7 +1678,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1752,8 +1758,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1770,7 +1775,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1853,26 +1858,28 @@ msgid "Graphical Interface"
msgstr "Myndrænt viðmót"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Veldu diskinn sem þú vilt hreinsa allt af til að setja upp nýja\n"
-"Mandriva Linux disksneið. Varúð, öllum gögnum á disknum verður\n"
+"Mageia disksneið. Varúð, öllum gögnum á disknum verður\n"
"eytt, og það er ekki hægt að sækja þau aftur!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Smelltu á \"%s\" ef þú vilt eyða öllum gögnum og disksneiðum\n"
"á þessum disk. Varúð! Eftir að þú hefur smellt á \"%s\", getur\n"
diff --git a/perl-install/install/help/po/it.po b/perl-install/install/help/po/it.po
index 9253a9ae5..3d1c9fd98 100644
--- a/perl-install/install/help/po/it.po
+++ b/perl-install/install/help/po/it.po
@@ -17,6 +17,7 @@ msgstr ""
"PO-Revision-Date: 2006-02-03 21:33+0100\n"
"Last-Translator: Andrea Celli <a.celli@caltanet.it>\n"
"Language-Team: Italian <kde-i18n-it@kde.org>\n"
+"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -24,15 +25,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Prima di proseguire dovresti leggere con attenzione le condizioni d'uso che\n"
-"riguardano l'intera distribuzione Mandriva Linux. Se sei d'accordo con\n"
+"riguardano l'intera distribuzione Mageia. Se sei d'accordo con\n"
"tutti i termini della licenza clicca sul pulsante \"%s\". In caso contrario\n"
"ti basterà un clic sul pulsante \"%s\" per riavviare il computer."
@@ -136,7 +137,8 @@ msgstr "Vuoi sfruttare questa possibilità?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -146,24 +148,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"In alto puoi vedere l'elenco delle partizioni Linux individuate sul\n"
@@ -203,15 +209,15 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"La distribuzione Mandriva Linux è suddivisa su più CD-ROM. Se uno dei\n"
+"La distribuzione Mageia è suddivisa su più CD-ROM. Se uno dei\n"
"pacchetti selezionati si trova su un CD-ROM diverso da quello attualmente\n"
"inserito nel lettore, DrakX provvederà a espellerlo e a chiedervi di\n"
"inserire quello corretto. Se non avete a portata di mano il CD richiesto,\n"
@@ -224,12 +230,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -281,7 +286,7 @@ msgid ""
msgstr ""
"Adesso è il momento di indicare i programmi che volete siano installati sul\n"
"vostro sistema. Ci sono migliaia di pacchetti disponibili per\n"
-"Mandriva Linux, e sono stati suddivisi in gruppi in base al loro campo di\n"
+"Mageia, e sono stati suddivisi in gruppi in base al loro campo di\n"
"utilizzo, in modo da facilitarne la gestione.\n"
"\n"
"I gruppi sono a loro volta suddivisi in quattro categorie. Potete\n"
@@ -357,7 +362,7 @@ msgstr "Installazione veramente minimale"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -370,10 +375,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -405,11 +410,11 @@ msgstr ""
"!! Se avete selezionato un pacchetto che offre un servizio come server\n"
"(intenzionalmente, oppure perché faceva parte di un gruppo), vi verrà\n"
"chiesta conferma per la sua effettiva installazione. Come opzione\n"
-"predefinita, in Mandriva Linux tutti i servizi installati vengono attivati\n"
+"predefinita, in Mageia tutti i servizi installati vengono attivati\n"
"automaticamente all'avvio. Sebbene si tratti di servizi sicuri ed esenti da\n"
"problemi noti al momento del rilascio della distribuzione, non è escluso\n"
"che possano essere scoperte falle di sicurezza al loro interno dopo la\n"
-"pubblicazione di questa versione di Mandriva Linux. Quindi, se non avete\n"
+"pubblicazione di questa versione di Mageia. Quindi, se non avete\n"
"idea di cosa faccia un particolare servizio o del perché debba essere\n"
"installato, cliccate su \"%s\". Scegliendo \"%s\", invece, i servizi\n"
"elencati saranno installati e attivati in automatico all'avvio del sistema.\n"
@@ -550,11 +555,11 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -610,7 +615,7 @@ msgid ""
msgstr ""
"X (abbreviazione per \"X Window System\") è il cuore dell'interfaccia\n"
"grafica di GNU/Linux, sul quale sono basati tutti gli ambienti grafici\n"
-"inclusi in Mandriva Linux (KDE, GNOME, AfterStep, WindowMaker, etc.).\n"
+"inclusi in Mageia (KDE, GNOME, AfterStep, WindowMaker, etc.).\n"
"\n"
"Vi verrà mostrata una lista dei parametri da configurare in modo da avere\n"
"la miglior visualizzazione possibile:\n"
@@ -736,41 +741,45 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -779,15 +788,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -801,12 +810,12 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"A questo punto dovete scegliere in quali punti del vostro disco rigido\n"
-"installare il sistema operativo Mandriva Linux. Se il disco è vuoto, o se\n"
+"installare il sistema operativo Mageia. Se il disco è vuoto, o se\n"
"tutto lo spazio disponibile è occupato da un altro sistema operativo già\n"
"installato, allora dovrete creare o modificare le partizioni. In breve,\n"
"partizionare un disco rigido consiste nel suddividerlo logicamente in più\n"
"zone in maniera da creare lo spazio necessario all'installazione di\n"
-"Mandriva Linux.\n"
+"Mageia.\n"
"\n"
"Dato che gli effetti del partizionamento sono di solito irreversibili, e\n"
"possono causare la perdita di dati, questa operazione può intimidire e\n"
@@ -837,7 +846,7 @@ msgstr ""
"dati, a patto che prima di procedere la partizione Windows sia stata\n"
"deframmentata. Vi consigliamo caldamente di fare comunque una copia di\n"
"sicurezza dei vostri dati. Questa è la soluzione consigliata se desiderate\n"
-"usare sia Mandriva Linux che Microsoft Windows sullo stesso computer.\n"
+"usare sia Mageia che Microsoft Windows sullo stesso computer.\n"
"\n"
" Prima di scegliere questa opzione, tenete presente che le dimensioni\n"
"della partizione su cui risiede Windows saranno ridotte rispetto a quelle\n"
@@ -846,7 +855,7 @@ msgstr ""
"\n"
" * \"%s\": se desiderate cancellare tutti i dati e tutte le partizioni\n"
"presenti sul vostro disco rigido e rimpiazzarli con il vostro nuovo sistema\n"
-"Mandriva Linux, potete selezionare questa opzione. Fate molta attenzione,\n"
+"Mageia, potete selezionare questa opzione. Fate molta attenzione,\n"
"perché dopo aver dato conferma non potrete più tornare indietro.\n"
"\n"
" !! Se scegliete questa opzione tutti i dati sul vostro disco saranno\n"
@@ -985,7 +994,7 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -1004,7 +1013,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1026,7 +1035,7 @@ msgstr ""
"Cliccate su \"%s\" quando siete pronti ad avviare la formattazione.\n"
"\n"
"Cliccate su \"%s\" se desiderate installare il vostro nuovo sistema\n"
-"operativo Mandriva Linux su partizioni diverse da quelle selezionate.\n"
+"operativo Mageia su partizioni diverse da quelle selezionate.\n"
"\n"
"Cliccate su \"%s\" se desiderate selezionare alcune delle partizioni\n"
"affinché venga controllata la presenza di eventuali blocchi danneggiati su\n"
@@ -1035,9 +1044,9 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1049,7 +1058,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"È molto probabile che, al momento in cui installate Mandriva Linux, alcuni\n"
+"È molto probabile che, al momento in cui installate Mageia, alcuni\n"
"pacchetti siano stati aggiornati rispetto alla versione iniziale;\n"
"potrebbero essere stati corretti degli errori, o risolti eventuali problemi\n"
"relativi alla sicurezza. Per permettervi di beneficiare di questi\n"
@@ -1068,7 +1077,7 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1077,7 +1086,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1092,7 +1101,7 @@ msgstr ""
"\n"
"Se non sapete quale scelta fare, utilizzate l'impostazione predefinita.\n"
"Potrete comunque cambiare in seguito il livello di sicurezza usando\n"
-"draksec, uno strumento del Mandriva Linux Control Center.\n"
+"draksec, uno strumento del Mageia Control Center.\n"
"\n"
"Nel campo \"%s\" inserite l'indirizzo email dell'utente che sarà\n"
"responsabile per la sicurezza: tutti i messaggi relativi alla sicurezza\n"
@@ -1106,24 +1115,27 @@ msgstr "Amministratore per la sicurezza"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1139,21 +1151,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1170,17 +1184,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"A questo punto, dovete decidere quali partizioni devono essere usate per\n"
-"l'installazione del vostro sistema Mandriva Linux. Se sono già state\n"
+"l'installazione del vostro sistema Mageia. Se sono già state\n"
"definite delle partizioni, grazie a una precedente installazione di\n"
"GNU/Linux o usando un altro programma di partizionamento, potete utilizzare\n"
"quelle. In caso contrario, sarà necessario creare o modificare le\n"
@@ -1197,7 +1205,7 @@ msgstr ""
" * \"%s\": questa opzione cancella tutte le partizioni presenti sul disco\n"
"selezionato.\n"
"\n"
-" * \"%s\": vi permette di creare automaticamente partizioni ext3 e di swap\n"
+" * \"%s\": vi permette di creare automaticamente partizioni ext4 e di swap\n"
"nello spazio libero presente sul vostro disco rigido.\n"
"\n"
"\"%s\": permette di accedere a ulteriori funzionalità:\n"
@@ -1251,13 +1259,6 @@ msgstr ""
"\n"
"Per ulteriori informazioni in merito ai diversi tipi di filesystem\n"
"disponibili, consultate il capitolo ext2FS del ''Manuale di riferimento''.\n"
-"\n"
-"Se state effettuando l'installazione su una macchina PPC, sarà meglio\n"
-"creare una piccola partizione HFS di ''bootstrap'' di almeno 1 MB, che\n"
-"verrà utilizzata dal bootloader yaboot. Se decidete di creare una\n"
-"partizione più grande, diciamo sui 50 MB, essa potrebbe rappresentare un\n"
-"utile deposito in cui conservare un kernel di riserva e immagini di avvio\n"
-"da utilizzare in caso di emergenza."
#: ../help.pm:526
#, c-format
@@ -1297,41 +1298,47 @@ msgstr "Scambio tra modo normale e esperto"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Sul vostro disco rigido è stata individuata più di una partizione\n"
"Microsoft. Scegliete quella che deve essere ridimensionata in modo da poter\n"
-"installare il vostro nuovo sistema operativo Mandriva Linux.\n"
+"installare il vostro nuovo sistema operativo Mageia.\n"
"\n"
"Ogni partizione è elencata in questo modo: \"nome Linux\", \"nome Windows\"\n"
"\"Dimensione\".\n"
@@ -1377,35 +1384,35 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Questo passo viene eseguito soltanto se sulla vostra macchina viene trovata\n"
"una partizione GNU/Linux preesistente.\n"
"\n"
"A questo punto DrakX ha bisogno di sapere se intendete effettuare una nuova\n"
-"installazione o un aggiornamento di un sistema Mandriva Linux esistente:\n"
+"installazione o un aggiornamento di un sistema Mageia esistente:\n"
"\n"
" * \"%s\": nella maggior parte dei casi cancella completamente il vecchio\n"
"sistema. Tuttavia, in base allo schema di partizionamento usato, potete\n"
@@ -1415,14 +1422,14 @@ msgstr ""
"\n"
" * \"%s\": questo tipo di installazione vi permette di effettuare un\n"
"semplice aggiornamento dei pacchetti già installati sul vostro sistema\n"
-"Mandriva Linux. Tutte le partizioni attuali del disco rigido vengono\n"
+"Mageia. Tutte le partizioni attuali del disco rigido vengono\n"
"conservate, come pure le configurazioni e i dati individuali degli utenti.\n"
"La maggior parte degli altri passi relativi alla configurazione restano\n"
"disponibili, come per una installazione normale.\n"
"\n"
"L'opzione \"Aggiornamento\" non dovrebbe comportare difficoltà per sistemi\n"
-"Mandriva Linux a partire dalla versione \"8.1\", mentre non è consigliabile\n"
-"utilizzarla per aggiornare versioni di Mandriva Linux precedenti la \"8.1\"."
+"Mageia a partire dalla versione \"8.1\", mentre non è consigliabile\n"
+"utilizzarla per aggiornare versioni di Mageia precedenti la \"8.1\"."
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
@@ -1469,7 +1476,7 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1485,8 +1492,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1530,7 +1536,7 @@ msgstr ""
"Riguardo al supporto UTF-8 (Unicode): Unicode è un nuovo standard per la\n"
"codifica dei caratteri, progettato per supportare tutte le lingue\n"
"esistenti. Il suo supporto su GNU/Linux è ancora in fase di sviluppo, e per\n"
-"questo motivo la sua attivazione su Mandriva Linux dipenderà dalle scelte\n"
+"questo motivo la sua attivazione su Mageia dipenderà dalle scelte\n"
"effettuate dall'utente:\n"
"\n"
" * se scegliete lingue fortemente legate alle vecchie codifiche (lingue del\n"
@@ -1679,7 +1685,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1707,10 +1713,10 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1731,12 +1737,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Qui potrete scegliere il sistema di stampa da usare con il vostro computer;\n"
-"altri sistemi operativi ve ne offrono uno, ma Mandriva Linux ve ne offre "
-"ben\n"
+"altri sistemi operativi ve ne offrono uno, ma Mageia ve ne offre ben\n"
"due. Ciascuno di essi è adatto a un particolare tipo di configurazione.\n"
"\n"
" * \"%s\" -- che sta per \"\"print, do not queue\"\" (\"stampa, non mettere\n"
@@ -1760,7 +1765,7 @@ msgstr ""
"\n"
"Se fate una scelta adesso e successivamente cambiate idea, potrete sempre\n"
"scegliere un diverso sistema di stampa avviando PrinterDrake dal\n"
-"Mandriva Linux Control Center e cliccando sul pulsante \"%s\"."
+"Mageia Control Center e cliccando sul pulsante \"%s\"."
#: ../help.pm:768
#, c-format
@@ -1787,7 +1792,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1878,8 +1883,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1896,7 +1900,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1950,7 +1954,7 @@ msgstr ""
"\n"
" * \"%s\": se desiderate configurare l'accesso a Internet o a una rete\n"
"locale potete farlo adesso. Consultate la documentazione stampata, oppure\n"
-"utilizzate il Mandriva Linux Control Center una volta terminata\n"
+"utilizzate il Mageia Control Center una volta terminata\n"
"l'installazione per avere a vostra disposizione un aiuto in linea completo.\n"
"\n"
" * \"%s\": vi permette di configurare gli indirizzi di proxy HTTP e FTP,\n"
@@ -1968,7 +1972,7 @@ msgstr ""
" * \"%s\": cliccate su questo pulsante per cambiare la configurazione del\n"
"bootloader. Questa opzione dovrebbe essere utilizzata solo dagli utenti più\n"
"esperti. Consultate la documentazione stampata o l'aiuto in linea del\n"
-"Mandriva Linux Control Center riguardo la configurazione del bootloader.\n"
+"Mageia Control Center riguardo la configurazione del bootloader.\n"
"\n"
" * \"%s\": qui potrete stabilire in dettaglio quali servizi saranno\n"
"attivati sul vostro sistema. Se pensate di utilizzare il computer come\n"
@@ -1992,14 +1996,14 @@ msgstr "Interfaccia grafica"
# DO NOT BOTHER TO MODIFY HERE, SEE:
# cvs.mandriva.com:/cooker/doc/manualB/modules/it/drakx-chapter.xml
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Scegli il disco rigido che vuoi cancellare per poter preparare le nuove\n"
-"partizioni per Mandriva Linux. Attenzione! tutti i dati sul disco andranno\n"
+"partizioni per Mageia. Attenzione! tutti i dati sul disco andranno\n"
"perduti e non saranno più recuperabili!"
# DO NOT BOTHER TO MODIFY HERE, SEE:
@@ -2008,12 +2012,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Clicca sul pulsante \"%s\" se vuoi cancellare tutte le partizioni e\n"
"i dati presenti su questo disco rigido. Stai attento, dopo aver\n"
diff --git a/perl-install/install/help/po/ja.po b/perl-install/install/help/po/ja.po
index d9bd3b3a6..765b07786 100644
--- a/perl-install/install/help/po/ja.po
+++ b/perl-install/install/help/po/ja.po
@@ -13,6 +13,7 @@ msgstr ""
"PO-Revision-Date: 2007-03-03 08:00+0900\n"
"Last-Translator: Yukiko Bando <ybando@k6.dion.ne.jp>\n"
"Language-Team: Japanese <cooker-i18n@mandrivalinux.org>\n"
+"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -20,14 +21,14 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
-"先に進む前にライセンスをよくお読みください。これは Mandriva Linux\n"
+"先に進む前にライセンスをよくお読みください。これは Mageia\n"
"全体に適用されます。すべての項目に同意する場合は「%s」を押してください。\n"
"そうでない場合は「%s」をクリックしてコンピュータを再起動してください。"
@@ -123,7 +124,8 @@ msgstr "この機能を使いますか?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -133,24 +135,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"ハードドライブ内で検出した既存の Linux パーティションのリストです。\n"
@@ -183,15 +189,15 @@ msgstr ""
"\"second lowest SCSI ID\" を意味します。"
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux のインストールは数枚の CD-ROM から行います。\n"
+"Mageia のインストールは数枚の CD-ROM から行います。\n"
"選択したパッケージが別の CD-ROM の中にあると、DrakX は現在の CD を\n"
"イジェクトして別の CD を入れるよう促します。\n"
"指示された CD をお持ちでない場合は「%s」をクリックしてください。"
@@ -200,12 +206,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -255,11 +260,11 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"ここではインストールするプログラムを選びます。Mandriva Linux には数千\n"
+"ここではインストールするプログラムを選びます。Mageia には数千\n"
"ものパッケージが用意されています。それらは管理しやすいように類似した\n"
"アプリケーションごとにグループ化されています 。\n"
"\n"
-"Mandriva Linux ではこのグループをさらに四つのカテゴリに分類しています。\n"
+"Mageia ではこのグループをさらに四つのカテゴリに分類しています。\n"
"パッケージの選択に際しては、複数のカテゴリからグループを選ぶことができ\n"
"ます。例えば「ワークステーション」としてのインストールに「サーバ」\n"
"カテゴリのグループを加えることもできます。\n"
@@ -324,7 +329,7 @@ msgid "Truly minimal install"
msgstr "極小インストール"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -337,10 +342,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -369,7 +374,7 @@ msgstr ""
"\n"
"注意!! 選択したグループにサーバ用のパッケージが含まれていたり、あるいは\n"
"個別にそれを選択すると、本当にインストールしてよいか確認を求めます。\n"
-"Mandriva Linux のデフォルトの設定では、インストールされたサービスはすべて\n"
+"Mageia のデフォルトの設定では、インストールされたサービスはすべて\n"
"起動時に自動的に開始されます。ディストリビューションがリリースされた時点\n"
"で既知の問題がなく安全だとされていても、リリース後にセキュリティホールが\n"
"発見される可能性はあります。\n"
@@ -492,11 +497,11 @@ msgstr ""
"目的に適したサーバを選んでください。"
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -551,7 +556,7 @@ msgid ""
"not successful in getting the display configured."
msgstr ""
"X (X ウィンドウシステム) は GNU/Linux のグラフィカルインターフェースの\n"
-"中心となる部分で、Mandriva Linux に収録されている様々なグラフィカル環境\n"
+"中心となる部分で、Mageia に収録されている様々なグラフィカル環境\n"
"(KDE, GNOME, AfterStep, WindowMaker など) はすべてこれに依存しています。\n"
"\n"
"最適なグラフィック表示を得るために調整可能な設定項目がいくつかあります。\n"
@@ -657,41 +662,45 @@ msgstr ""
"できなかった場合は、「%s」を選んでください。"
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -700,15 +709,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -721,10 +730,10 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"ここでは Mandriva Linux をハードドライブのどこにインストールするかを\n"
+"ここでは Mageia をハードドライブのどこにインストールするかを\n"
"選択します。ハードドライブが空であったり既存の OS がすべての領域を使用\n"
"している場合は、パーティションを設定しなければなりません。\n"
-"基本的に、Mandriva Linux をインストールするには、ハードドライブを\n"
+"基本的に、Mageia をインストールするには、ハードドライブを\n"
"論理分割して領域を確保することが必要です。\n"
"\n"
"パーティションの設定は、たいていの場合復元不可能なうえ、データの消失に\n"
@@ -751,7 +760,7 @@ msgstr ""
"Microsoft Windows の FAT または NTFS パーティションのサイズを変更します。\n"
"サイズ変更は、Windows のパーティションがあらかじめデフラグ (最適化) されて\n"
"いれば、データを失うことなく実行できます。(必ずデータのバックアップを\n"
-"しておいてください) Mandriva Linux と Microsoft Windows を両方使う場合は\n"
+"しておいてください) Mageia と Microsoft Windows を両方使う場合は\n"
"このオプションを選んでください。(Windows を消去する場合は次を参照して\n"
"ください: ディスク全体を消去)\n"
"\n"
@@ -761,7 +770,7 @@ msgstr ""
"注意してください。\n"
"\n"
" * %s: ハードドライブのすべてのデータとパーティション\n"
-"を削除し Mandriva Linux システムに入れ替える場合はこのオプションを選んで\n"
+"を削除し Mageia システムに入れ替える場合はこのオプションを選んで\n"
"ください。確認後は取り消しできませんので十分注意してください。\n"
"\n"
" !! このオプションを選ぶとディスク上の全データが消去されます !!\n"
@@ -883,7 +892,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -902,7 +911,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -921,16 +930,16 @@ msgstr ""
"パーティションをフォーマットする準備ができたら「%s」をクリックしてくださ"
"い。\n"
"\n"
-"Mandriva Linux を別のパーティションに新規にインストールする場合は\n"
+"Mageia を別のパーティションに新規にインストールする場合は\n"
"「%s」をクリックしてください。\n"
"\n"
"ディスクの不良ブロックを検証するパーティションを選ぶには\n"
"「%s」をクリックしてください。"
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -942,7 +951,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Mandriva Linux のリリース後に、バグの修正、あるいはセキュリティ問題を解決\n"
+"Mageia のリリース後に、バグの修正、あるいはセキュリティ問題を解決\n"
"するために更新されたパッケージがあるかもしれません。これらのパッケージを\n"
"インターネットからダウンロードしてシステムを更新することができます。既に\n"
"インターネットに接続していれば「%s」にチェックを入れてください。\n"
@@ -954,7 +963,7 @@ msgstr ""
"場合は「%s」を押してください。"
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -963,7 +972,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -975,7 +984,7 @@ msgstr ""
"しかしセキュリティレベルを高くすると一般的には使い勝手が悪くなります。\n"
"\n"
"何を選択してよいか分からない場合はデフォルトのままにしておいてください。\n"
-"設定は後で変更できます。Mandriva Linux コントロールセンターには draksec\n"
+"設定は後で変更できます。Mageia コントロールセンターには draksec\n"
"というそのためのツールが用意されています。\n"
"\n"
"%s にセキュリティ管理者のメールアドレスを入力してください。\n"
@@ -987,24 +996,27 @@ msgid "Security Administrator"
msgstr "セキュリティ管理者"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1020,21 +1032,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1051,16 +1065,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"ここでは Mandriva Linux をインストールするパーティションを選びます。\n"
+"ここでは Mageia をインストールするパーティションを選びます。\n"
"以前にインストールした GNU/Linux システムが残っていたり、別のツールを\n"
"使って既にパーティションが定義されている場合は、既存のパーティションを\n"
"利用することができます。そうでない場合はハードドライブのパーティションを\n"
@@ -1074,7 +1082,7 @@ msgstr ""
"\n"
" * %s: 選択したドライブのすべてのパーティションを削除する\n"
"\n"
-" * %s: ハードドライブの空き領域に自動的に ext3 と swap を\n"
+" * %s: ハードドライブの空き領域に自動的に ext4 と swap を\n"
"作成する\n"
"\n"
"%s: ここから拡張機能を利用できます:\n"
@@ -1124,11 +1132,6 @@ msgstr ""
"\n"
"使用可能な他のファイルシステムについては、Reference Manual の\n"
"'ext2FS' の章をお読みください。\n"
-"\n"
-"PPC マシンにインストールする場合は最低 1 MB の HFS bootstrap \n"
-"パーティションを作成してください。yaboot ブートローダが使用します。\n"
-"このパーティションをもう少し大きくしておくと (例えば 50 MB くらい)、\n"
-"スペアカーネルや緊急ブート用の ramdisk イメージを保存するのに利用できます。"
#: ../help.pm:526
#, c-format
@@ -1166,40 +1169,46 @@ msgid "Toggle between normal/expert mode"
msgstr "標準/エキスパートモードの切り替え"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"ハードドライブに Microsoft のパーティションがいくつか検出されました。\n"
-"Mandriva Linux をインストールするためにリサイズするパーティションを\n"
+"Mageia をインストールするためにリサイズするパーティションを\n"
"選んでください。\n"
"\n"
"パーティションは次のように表示されます: \"Linux name\", \"Windows name\"\n"
@@ -1241,35 +1250,34 @@ msgstr ""
"「%s」をクリックするとすべての国名リストが表示されます。"
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"このステップは既存の GNU/Linux パーティションが検出されたときにのみ表示\n"
"されます。\n"
"\n"
-"DrakX は既存の Mandriva Linux システムを更新するかそれとも新規にインストー"
-"ル\n"
+"DrakX は既存の Mageia システムを更新するかそれとも新規にインストール\n"
"するかを尋ねます:\n"
"\n"
" * %s: 基本的には古いシステムを完全に消去してしまいます。\n"
@@ -1277,10 +1285,10 @@ msgstr ""
"\"home\" ディレクトリ) を残すことができます。パーティションの設定やファイル\n"
"システムを変更される場合はこのオプションをお使いください。\n"
"\n"
-" * %s: これは既に Mandriva Linux にインストールされている\n"
+" * %s: これは既に Mageia にインストールされている\n"
"パッケージをアップデートします。現在のパーティションの設定やユーザデータは\n"
"変更されません。その他の設定の大部分は標準のインストールと同様に行えます。\n"
-"「アップグレード」は Mandriva Linux のバージョンが \"8.1\" 以降であれば\n"
+"「アップグレード」は Mageia のバージョンが \"8.1\" 以降であれば\n"
"問題ないはずです。\"8.1\" より古いバージョンにはお勧めできません。"
#: ../help.pm:594
@@ -1316,7 +1324,7 @@ msgstr ""
"切り替えるキーを指定できます。"
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1332,8 +1340,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1372,7 +1379,7 @@ msgstr ""
"\n"
"ユニコード (UTF-8) サポートについて: ユニコードは世界中のすべての言語を\n"
"カバーします。しかしながら、GNU/Linux 環境でのユニコードサポートはまだ開発\n"
-"途上にあります。そのため、Mandriva Linux ではユーザの選択に応じてその使用を\n"
+"途上にあります。そのため、Mageia ではユーザの選択に応じてその使用を\n"
"制限しています:\n"
"\n"
" * レガシーなエンコードを使用する言語 (latin1/ロシア語/日本語/中国語/\n"
@@ -1502,7 +1509,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1525,10 +1532,10 @@ msgstr ""
"このオプションは意味をよく理解されている場合以外は選ばないでください。"
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1549,11 +1556,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"ここでは、コンピュータの印刷システムを選択します。他の OS には一種類しか\n"
-"ありませんが、Mandriva Linux には二種類の印刷システムがあります。それぞれ\n"
+"ありませんが、Mageia には二種類の印刷システムがあります。それぞれ\n"
"利点と欠点がありますので、より適したものを選んでください。\n"
"\n"
" * %s - 'Print, Do not Queue (印刷する。キューはしない)' の略。\n"
@@ -1571,7 +1578,7 @@ msgstr ""
"ください。「%s」には印刷/プリンタオプションの選択/プリンタの管理などの\n"
"ためのグラフィカルフロントエンドがあります。\n"
"\n"
-"選択した印刷システムを後で変更する場合は、Mandriva Linux コントロール\n"
+"選択した印刷システムを後で変更する場合は、Mageia コントロール\n"
"センターの PrinterDrake で「%s」をクリックしてください。"
#: ../help.pm:768
@@ -1597,7 +1604,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1678,8 +1685,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1696,7 +1702,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1742,7 +1748,7 @@ msgstr ""
"は「%s」をクリックして設定し直してください。\n"
"\n"
" * %s: インターネットとローカルネットワークの設定。\n"
-"マニュアルを参照するか、もしくはインストール完了後に Mandriva Linux\n"
+"マニュアルを参照するか、もしくはインストール完了後に Mageia\n"
"コントロールセンターのヘルプに従って行ってください。\n"
"\n"
" * %s: あなたのマシンがプロキシサーバの背後にあれば\n"
@@ -1757,7 +1763,7 @@ msgstr ""
"\n"
" * %s: ブートローダの設定を変更するときはこのボタンを\n"
"押してください。(注意:これは上級者向きです) 印刷されたドキュメントまたは\n"
-"Mandriva Linux コントロールセンターのブートローダに関するヘルプを参照して\n"
+"Mageia コントロールセンターのブートローダに関するヘルプを参照して\n"
"ください。\n"
"\n"
" * %s: ここではどのサービスを有効にするかを細かく設定できます。\n"
@@ -1779,13 +1785,13 @@ msgid "Graphical Interface"
msgstr "グラフィカルインターフェース"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Mandriva Linux をインストールするためにフォーマットするハードドライブを\n"
+"Mageia をインストールするためにフォーマットするハードドライブを\n"
"選んでください。注意: このドライブのデータはすべて失われ、回復すること\n"
"はできません。"
@@ -1793,12 +1799,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"このハードドライブのすべてのデータとパーティションを削除する場合は\n"
"「%s」をクリックしてください。\n"
diff --git a/perl-install/install/help/po/ko.po b/perl-install/install/help/po/ko.po
index b5d240bf3..b1aa3c2ff 100644
--- a/perl-install/install/help/po/ko.po
+++ b/perl-install/install/help/po/ko.po
@@ -12,6 +12,7 @@ msgstr ""
"PO-Revision-Date: 2002-09-09 09:08+0900\n"
"Last-Translator: Jaegeum Cze <baedaron@hanafos.com>\n"
"Language-Team: Korean <beadaron@hanafos.com>\n"
+"Language: ko\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -21,7 +22,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -89,7 +90,8 @@ msgstr "aboot를 사용하시겠습니까?"
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -99,24 +101,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"선택된 하드디스크상의 기존 리눅스 파티션이 위에 열거되어 있습니다.\n"
@@ -157,7 +163,7 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -172,12 +178,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -294,10 +299,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -404,7 +409,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -508,39 +513,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -549,15 +558,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -764,7 +773,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -796,7 +805,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -819,7 +828,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -846,21 +855,24 @@ msgstr "보안 관리자 (로그인 또는 이메일)"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -876,21 +888,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -907,14 +921,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"이제 어느 파티션이 맨드리바 리눅스의 설치용으로 사용되어야 할지를\n"
"선택해야 합니다. 이전에 다른 GNU/리눅스를 설치한 적이 있거나, 다른 파티션\n"
@@ -967,13 +975,6 @@ msgstr ""
" ○ 「Ctrl + d」: 파티션 삭제하기.\n"
"\n"
" ○ 「Ctrl + m」: 마운트 위치 지정하기.\n"
-"\n"
-"만약 PPC 컴퓨터에서 설치하고 있는 중이라면, YABOOT 부트로더가 사용할 최소 "
-"1MB\n"
-"의 HFS 「부트스트랩」파티션을 만들 필요가 있습니다. 만약 그 파티션을 보다 크"
-"게\n"
-"(가령, 50MB) 만들면, 응급 상황시에 사용할 여분의 커널과 램디스크 이미지를\n"
-"저장할 수 있는 유용한 장소가 될 것입니다."
#: ../help.pm:526
#, c-format
@@ -1013,34 +1014,40 @@ msgstr "일반 모드로 전환"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"둘 이상의 MS 윈도우즈 파티션이 디스크상에서 발견되었습니다.\n"
@@ -1089,23 +1096,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1156,8 +1163,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1288,7 +1294,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1299,7 +1305,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1320,7 +1326,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1347,7 +1353,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1436,8 +1442,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1454,7 +1459,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1479,8 +1484,8 @@ msgstr "시작시 바로 X 실행"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"맨드리바 리눅스 파티션을 만들기 위해서 삭제할 하드디스클르 선택하세요.\n"
@@ -1491,12 +1496,14 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"이 하드디스크상의 모든 데이터와 파티션을 삭제하려면, 「확인」을 누르세요.\n"
"!!주의하세요!!일단 「확인」을 누르게 되면, MS 윈도우즈 데이털르 포함하여 이 "
diff --git a/perl-install/install/help/po/ky.po b/perl-install/install/help/po/ky.po
index 75d7197a8..61f9a2c4b 100644
--- a/perl-install/install/help/po/ky.po
+++ b/perl-install/install/help/po/ky.po
@@ -11,21 +11,22 @@ msgstr ""
"PO-Revision-Date: 2005-04-20 20:27+0500\n"
"Last-Translator: Nurlan Borubaev <nurlan@tamga.info>\n"
"Language-Team: Kyrgyz\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.3\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Мындан ары улантуу үчүн сиз лицензия шартын көңүл коюп окууңуз керек.\n"
-"Ал Mandriva Linux'тун бардык дистрибутивдерине таратылат. Эгер сиз анын\n"
+"Ал Mageia'тун бардык дистрибутивдерине таратылат. Эгер сиз анын\n"
"ичиндеги бардык шарттарга көнбөсөңүз, \"%s\" рамкасын тандаңыз. Андай\n"
"болбосо, \"%s\" баскычын бассаңыз сиздин компьютер кайра жүктөлөт."
@@ -128,7 +129,8 @@ msgstr "Мындай мүмкүнчүлүктү каалайсызбы?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -138,24 +140,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Жогорудагы тизме сиздин катуу дискиңиздеги табылган Linux бөлүмдөрү.\n"
@@ -191,15 +197,15 @@ msgstr ""
"ал эми \"b\" болсо \"second lowest SCSI ID\", ж.д.у.с. экендигин берет"
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux орнотулушу бир нече CD-ROMго бөлүнүп жайгаштырылган. Эгерде\n"
+"Mageia орнотулушу бир нече CD-ROMго бөлүнүп жайгаштырылган. Эгерде\n"
"тандалган пакет башка CD-ROMдо жатса, DrakX учурдагы CDни чыгарып\n"
"керектелип жаткан тийишүү CDни салууңузду сурайт. Эгерде Сизде тийиштүү\n"
"CD кол алдыңызда жок болсо, жөн гана \"%s\" түймөсүн чертиңиз, бул учурда\n"
@@ -209,12 +215,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -265,12 +270,11 @@ msgid ""
"megabytes."
msgstr ""
"Эми системаңызга кайсы программаларды орнотууну кааларыңызды аныктоого\n"
-"убакыт келип жетти. Mandriva Linux менен кошо миңдеген пакеттер сунуш "
-"кылынат,\n"
+"убакыт келип жетти. Mageia менен кошо миңдеген пакеттер сунуш кылынат,\n"
"тандоону жеңилдетүү үчүн алар жакындыгынакарата топторго бөлүнгөн.\n"
"\n"
"Пакеттер машинаңыздын колдонуу спецификасына дал келе тургандай\n"
-"болуп топторго иреттелген. Mandriva Linux'та пакетер төрт категория\n"
+"болуп топторго иреттелген. Mageia'та пакетер төрт категория\n"
"боюнча иреттелет. Сиз ар түрдүү категорияларда жайгашкан тиркемелерди\n"
"аралаштырып же айкалыштыра аласыз, мисалы ``Иш станциясы'' орнотуу варианты\n"
"``Иштеп түзүү'' категорясындагы тиркемелерди да камтышы мүмкүн.\n"
@@ -349,10 +353,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -382,11 +386,11 @@ msgstr ""
"\n"
"!! Эгерде кандайдыр бир сервердик пакет тандалса, сиз аны атайын\n"
"тандасаңыз же ал башка пакеттин бөлүгү болсо, сиз аны чынында эле\n"
-"ал серверлерди орнотууну каалагандыгыңызды сурайт. Mandriva Linux\n"
+"ал серверлерди орнотууну каалагандыгыңызды сурайт. Mageia\n"
"бардык орнотулган серверлерлерди жүктөө убагында алдынала ишке\n"
"киргизилет. Дистрибутив чыгарылып жаткан убакта алар коопсуздук\n"
"боюнча белгилүү проблемалары жок болгону менен, аларда бул\n"
-"Mandriva Linux версиясы чыгарылгандан кийин да, кооптуу болгон\n"
+"Mageia версиясы чыгарылгандан кийин да, кооптуу болгон\n"
"жылчыктар табылышы мүмкүн. Эгер сиз берилген кызмат эмне үчүн\n"
"колдонорун жана эмне иш кыларын билбесеңиз \"%s\" басыңыз.\n"
"Эгер сиз \"%s\" бассаңыз тизмедеги бардык кызматтар орнотулуп\n"
@@ -516,7 +520,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -571,7 +575,7 @@ msgid ""
"not successful in getting the display configured."
msgstr ""
"X (X Window системасы үчүн) GNU/Linux графикалык интерфейсинин\n"
-"жүрөгү, анын негизинде Mandriva Linux-ка кирген бардык графикалык\n"
+"жүрөгү, анын негизинде Mageia-ка кирген бардык графикалык\n"
"чөйрөлөр (KDE, GNOME, AfterStep, WindowMaker, ж.б.д.у.с.) иштейт.\n"
"\n"
"Оптималдык графикалык көрүнүштү алуу үчүн, сизге ар түрдүү\n"
@@ -687,39 +691,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -728,15 +736,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -749,11 +757,11 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Бул кадамда, Mandriva Linux аркеттер системасын сиздин катуу дисктин\n"
+"Бул кадамда, Mageia аркеттер системасын сиздин катуу дисктин\n"
"кайсы жерине орнотууну чечүүңүзгө туура келет. Эгер сиздин катуу диск бош\n"
"болсо же орнотулган аракеттери системасы дисктин бардыгын ээлесе, сизге\n"
"дискиңизди кайра бөлүүгө туура келет. Негизинен дискти бөлүү сиздин\n"
-"жаңы Mandriva Linux системасын орнотуу үчүн дисктен логикалык түрдө\n"
+"жаңы Mageia системасын орнотуу үчүн дисктен логикалык түрдө\n"
"орун бөлүүдө турат.\n"
"\n"
"Эгерде дискте орнотулган аракеттер системасы болсо, дискти бөлүү кайра\n"
@@ -779,7 +787,7 @@ msgstr ""
"Windows FAT же NTFS бөлүмдөрүнүн өлчөмдөрүн өзгөртсөңүз болот.\n"
"Өлчөмүн өзгөртүү процессин маалыматтарды жоготпой жасаса да болот, өзгөчө\n"
"Windows бөлүмү дефрагментация кылынгандан кийин. Маалыматтарыңыздын\n"
-"резервдик копиясын түзүү көптөн-көп сунуш кылынат.Эгер сиз Mandriva Linux\n"
+"резервдик копиясын түзүү көптөн-көп сунуш кылынат.Эгер сиз Mageia\n"
"жана Microsoft Windows бир компьютерде колдонгуңуз келсе, бул опцияны\n"
"тандаңыз.\n"
"\n"
@@ -788,7 +796,7 @@ msgstr ""
"берилиштерин жана жаңы программаларды орнотуу үчүн бош орун азыраак болот.\n"
"\n"
" * \"%s\" эгер сиз катуу дискиңиздеги бардык маалыматтарды жоготуп ордуна\n"
-"Mandriva Linux орнотууну кааласаңыз, бул опцияны тандаңыз. Бул чечимди\n"
+"Mageia орнотууну кааласаңыз, бул опцияны тандаңыз. Бул чечимди\n"
"тандоодо этият болуңуз, себеби муну тастыктаган соң бардыгын мурда\n"
"болгондой кылып калыбына келтире албайсыз.\n"
"\n"
@@ -934,7 +942,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -959,7 +967,7 @@ msgstr ""
"\n"
"Бөлүмдөрдү форматтого даяр болгондон кийин \"%s\" баскычын басыңыз.\n"
"\n"
-"Эгер сиз Mandriva Linux системасын башка бөлүмгө орноткуңуз келсе \"%s\"\n"
+"Эгер сиз Mageia системасын башка бөлүмгө орноткуңуз келсе \"%s\"\n"
"баскычын басыңыз.\n"
"\n"
"Эгер сиз начар делген блокторду (bad blocks) текшерүүгө бөлүмдөрдү\n"
@@ -968,7 +976,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -980,7 +988,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Mandriva Linux орнотуу убагында баштапкы релиздин кээ бир пакеттерин\n"
+"Mageia орнотуу убагында баштапкы релиздин кээ бир пакеттерин\n"
"жаңы чыкандары менен жаңыласаңыз жакшы болот. Кээ бир багдар\n"
"оңдолушу жана коопсуздук проблемалары чечилиши мүмкүн. Бул\n"
"жаңылоолордон пайда алуу үчүн аларды сиз азыр Интернеттен жүктөп\n"
@@ -1003,7 +1011,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1031,21 +1039,24 @@ msgstr "Коопсуздук администратору"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1061,21 +1072,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1092,14 +1105,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -1138,38 +1145,75 @@ msgid "Toggle between normal/expert mode"
msgstr "Нормалдык/эксперттик режимдерин алмаштыруу"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
+"Жогорудагы тизме сиздин катуу дискиңиздеги табылган Linux бөлүмдөрү.\n"
+"Сиз аны уста жасагандай калтырсаңыз болот, анткени ал бардык кадимки\n"
+"инсталляциялар үчүн жарактуу. Эгер сиз кандайдыр бир өзгөртүүлөрдү\n"
+"киргизсеңиз, анда жок эле дегенде түпкү-root (\"/\") бөлүмү болушу керек.\n"
+"Анын көлөмүн өтө эле кичине кылбаңыз, антсеңиз сиз жетиштүү сандагы\n"
+"программалык жабдууларды орното албай каласыз. Эгер сиз өзүңүздүн\n"
+"берилиштерңизди башка бөлүмдө сактооңуз келсе, сизге \"/home\"\n"
+"бөлүмүн да түзүүгө туура келет (бирден көп Linux бөлүмдөрү бар\n"
+"учурда гана мүмкүн).\n"
+"\n"
+"Ар бир бөлүм төмөнкүдөй санап көрсөтүлгөн: \"Аты\", \"Көлөмү\".\n"
+"\n"
+"\"Аты\": \"катуу дисктин тиби\", \"катуу дисктин номери\",\n"
+"\"бөлүм номери\" (мисалы, \"hda1\") катары структураланган.\n"
+"\n"
+"\"Катуу дисктин тиби\": \"hd\"-эгер сиздин катуу диск IDE болсо\n"
+"\"sd\"-эгер ал SCSI болсо.\n"
+"\n"
+"\"Катуу дискти номери\" дайыма тамга жана \"hd\" же \"sd\" уландысы.\n"
+"IDE катуу дисктери үчүн:\n"
+"\n"
+" * \"a\" \"биринчи IDE контроллеринин master катуу дискин\" түшүндүрөт;\n"
+"\n"
+" * \"b\" \"биринчи IDE контроллеринин slave катуу дискин\" түшүндүрөт;\n"
+"\n"
+" * \"c\" \"экинчи IDE контроллеринин master катуу дискин\" түшүндүрөт;\n"
+"\n"
+" * \"d\" \"экинчи IDE контроллеринин slave катуу дискин\" түшүндүрөт;\n"
+"\n"
+"SCSI катуу дисктери үчүн , \"a\" болсо \"lowest SCSI ID\" экендигин,\n"
+"ал эми \"b\" болсо \"second lowest SCSI ID\", ж.д.у.с. экендигин берет"
#: ../help.pm:567
#, c-format
@@ -1187,23 +1231,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1244,8 +1288,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1352,7 +1395,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1363,7 +1406,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1384,7 +1427,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1411,7 +1454,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1473,8 +1516,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1491,7 +1533,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1516,8 +1558,8 @@ msgstr "Графикалык интерфейс"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1525,12 +1567,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
#: ../help.pm:872
diff --git a/perl-install/install/help/po/lt.po b/perl-install/install/help/po/lt.po
index c773dab12..4863a095e 100644
--- a/perl-install/install/help/po/lt.po
+++ b/perl-install/install/help/po/lt.po
@@ -9,17 +9,18 @@ msgstr ""
"PO-Revision-Date: 2000-12-23 13:50+0200\n"
"Last-Translator: Mykolas Norvai­as <Myka@centras.lt>\n"
"Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
+"Language: lt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%"
-"100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n"
+"%100<10 || n%100>=20) ? 1 : 2);\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -83,7 +84,8 @@ msgstr "Ar nori naudoti aboot?"
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -93,24 +95,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Aukščiau yra sąrašas Linux skirsnių, kuriuos pavyko rasti tavo\n"
@@ -157,7 +163,7 @@ msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -168,12 +174,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -253,10 +258,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -362,7 +367,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -460,39 +465,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -501,15 +510,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -523,10 +532,10 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Dabar tu turi nuspręsti, kurioje savo kietojo disko vietoje nori įdiegti\n"
-"Mandriva Linux operacijų sistemą. Jei jis yra tuščias arba jau esanti\n"
+"Mageia operacijų sistemą. Jei jis yra tuščias arba jau esanti\n"
"operacijų sistema naudoja visą vietą jame, tau reikės sudalinti jį. Kietojo\n"
"disko sudalinimas į skirsnius tiesiog yra jo logiškas padalinimas taip, kad\n"
-"atsirastų laisvos vietos įdiegti tavo naujajai Mandriva Linux sistemai.\n"
+"atsirastų laisvos vietos įdiegti tavo naujajai Mageia sistemai.\n"
"\n"
"\n"
"Kadangi sudalinimo skirsniais padariniai dažniausiai yra negrįžtami,\n"
@@ -557,8 +566,8 @@ msgstr ""
"\n"
"* Išvalyti visą diską: jei tu nori sunaikinti visus duomenis ir skirsnius, "
"esančius kietajame diske, ir pakeisti juos\n"
-" nauja Mandriva Linux sistema, gali pasirinkti šį variantą. Būk atsargus su "
-"šiuo sprendimu, nes jei sutiksi,\n"
+" nauja Mageia sistema, gali pasirinkti šį variantą. Būk atsargus su šiuo "
+"sprendimu, nes jei sutiksi,\n"
" nebegalėsi apsigalvoti ir sugrįžti.\n"
"\n"
"\n"
@@ -570,7 +579,7 @@ msgstr ""
"sprendimus) arba pakeisti Windows skirsnio\n"
" dydį. Dydžio pakeitimas gali būti atliktas be duomenų praradimo. Šis "
"sprendimas yra rekomenduojamas, jei\n"
-" tu nori naudoti tiek Mandriva Linux, tiek Microsoft Windows tame pačiame "
+" tu nori naudoti tiek Mageia, tiek Microsoft Windows tame pačiame "
"kompiuteryje.\n"
"\n"
"\n"
@@ -681,7 +690,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -710,12 +719,12 @@ msgstr ""
"\n"
"\n"
"Spausk \"Atšaukti\", jei nori pasirinkti kitus skirsnius, į kuriuos įdiegti\n"
-"Mandriva Linux sistemą."
+"Mageia sistemą."
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -738,7 +747,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -754,21 +763,24 @@ msgstr "Nutolusio lpd spausdintuvo nuostatos"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -784,21 +796,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -815,14 +829,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Dabar tu turi pasirinkti, kuriuos skirsnius naudoti tavo naujai Mandriva "
"Linux \n"
@@ -934,40 +942,46 @@ msgstr "Pakeisti į normalų režimą"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Tavo kietajame diske buvo aptiktas vienas ar daugiau Microsoft Windows\n"
"skirsnis. Prašom pasirinkti, kurio iš jų dydį nori pakeisti, kad įdiegtum "
"savo\n"
-"naująją Mandriva Linux operacijų sistemą.\n"
+"naująją Mageia operacijų sistemą.\n"
"\n"
"\n"
"Tavo žiniai, kiekvienas skirsnis sąraše užrašomas pavidalu \"Linux "
@@ -1023,23 +1037,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1080,8 +1094,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1188,7 +1201,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1199,7 +1212,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1220,7 +1233,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1247,7 +1260,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1335,8 +1348,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1353,7 +1365,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1378,24 +1390,26 @@ msgstr "X paleidžiant"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Pasirink kietąjį diską, kurį nori ištuštinti, kad įdiegtum naują\n"
-"Mandriva Linux sistemą. Būk atsargus, visi duomenys, esantys jame, bus\n"
+"Mageia sistemą. Būk atsargus, visi duomenys, esantys jame, bus\n"
"prarasti, ir jų nebebus įmanoma atkurti."
#: ../help.pm:866
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Spausk \"Gerai\", jei nori ištrinti visus duomenis ir skirsnius, esančius\n"
"šiame kietajame diske. Būk atsargus, kai paspausi \"Gerai\", tu nebegalėsi\n"
diff --git a/perl-install/install/help/po/ltg.po b/perl-install/install/help/po/ltg.po
index 5046c22fb..9f7c78800 100644
--- a/perl-install/install/help/po/ltg.po
+++ b/perl-install/install/help/po/ltg.po
@@ -15,16 +15,16 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Pyrms turpynuot, jiusim vajadzātu uzmaneigi izlaseit licencis vīnuošonūs. "
"Tei nūsadz\n"
-"vysu Mandriva Linux distribuceju. Ja jius napīkreitit vysim tuos "
+"vysu Mageia distribuceju. Ja jius napīkreitit vysim tuos "
"nūteikumiem,\n"
"puorbaudit \"%s\" kasti, nūspīdit pūgu \"%s\",\n"
"lai jiusu dators puorstarteitu."
@@ -88,7 +88,7 @@ msgstr "Vai vēlaties izmantot aboot?"
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -98,24 +98,24 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Augstāk ir uzskaitītas eksistējošās Linux sadaļas, kas ir atrastas uz jūsu\n"
@@ -152,13 +152,13 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux instalācija ir sadalīta pa dažiem CD-ROM diskiem. DrakX\n"
+"Mageia instalācija ir sadalīta pa dažiem CD-ROM diskiem. DrakX\n"
"zin, vai izvēlētā pakotne atrodas uz cita CD-ROM diska, izvirzīs pašreizējo\n"
"kompaktdisku un palūgs ievietot citu pēc nepieciešamības."
@@ -166,12 +166,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -251,10 +250,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -359,7 +358,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -465,39 +464,39 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -506,15 +505,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -527,11 +525,11 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Pošlaik jiusim ir juoizavielej, kur iz cītuo diska instalēt Mandriva Linux\n"
+"Pošlaik jiusim ir juoizavielej, kur iz cītuo diska instalēt Mageia\n"
"opereituojsistemu. Ja disks ir tukšs voi cyta opereituojsistema aizjam vysu\n"
"vītu iz diska, jiusim byus juoveic diska sadaleišona. Eisumā, cītuo diska\n"
"sadaleišona nūzeimej tū sadaleit logiskuos daļuos, lai izveiduotu vītu\n"
-"Mandriva Linux sistemys instaleišonai.\n"
+"Mageia sistemys instaleišonai.\n"
"\n"
"Sakarā ar tū, ka diska sadaleišonys process parasti ir naatgrīzenisks,\n"
"napīredziejušam lītuotuojam tys var byut napateikams i stresa pylns.\n"
@@ -560,7 +558,7 @@ msgstr ""
"\n"
"* Izdzēst visu disku: ja vēlaties izdzēst visus uz diska esošos datus un "
"sadaļas un aizstāt tās ar jaunu\n"
-" Mandriva Linux sistēmu, varat izvēlēties šo opciju. Esiet uzmanīgi, "
+" Mageia sistēmu, varat izvēlēties šo opciju. Esiet uzmanīgi, "
"izvēloties šo risinājumu, jo pēc\n"
" apstiprināšanas jūs vairs nevarēsit atteikties no šīs izvēles.\n"
"\n"
@@ -573,7 +571,7 @@ msgstr ""
"vai izmainīt Microsoft\n"
" Windows sadaļas izmēru. Sadaļas izmēru var izmainīt bez datu zaudēšanas. "
"Šis risinājums ir ieteicams, ja\n"
-" jūs savā datorā vēlaties izmantot gan Mandriva Linux, gan Microsoft "
+" jūs savā datorā vēlaties izmantot gan Mageia, gan Microsoft "
"Windows.\n"
"\n"
"\n"
@@ -682,7 +680,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -706,12 +704,12 @@ msgstr ""
"Noklikšķiniet \"Labi\", kad esat gatavi formatēt sadaļas.\n"
"\n"
"Noklikšķiniet \"Atcelt\", ja jūs gribat izvēlēties citas sadaļas, kur\n"
-"instalēt jauno Mandriva Linux operētājsistēmu."
+"instalēt jauno Mageia operētājsistēmu."
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -734,7 +732,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -758,21 +756,21 @@ msgstr "Drošības administrators:"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -788,21 +786,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -819,16 +817,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Pašlaik jums ir jāizvēlas, kurā(s) diska sadaļā(s) instalēt Mandriva Linux\n"
+"Pašlaik jums ir jāizvēlas, kurā(s) diska sadaļā(s) instalēt Mageia\n"
"operētājsistēmu. Ja sadaļas jau ir izveidotas (agrākas GNU/Linux "
"instalēšanas\n"
"laikā vai ar citu diska sadalīšanas rīku), jūs varat izmantot esošās "
@@ -934,39 +926,39 @@ msgstr "Pārslēgt normālajā režīmā"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Uz jūsu cietā diska ir atrasta vairāk nekā viena Microsoft Windows sadaļa.\n"
"Lūdzu izvēlieties to sadaļu, kuras izmēru jūs vēlaties izmainīt, lai\n"
-"instalētu jauno Mandriva Linux operētājsistēmu.\n"
+"instalētu jauno Mageia operētājsistēmu.\n"
"\n"
"\n"
"Jūsu zināšanai, katra sadaļa ir uzskaitīta šādā veidā: \"Linux nosaukums\",\n"
@@ -1013,23 +1005,22 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1083,8 +1074,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1191,7 +1181,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1202,7 +1192,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1223,7 +1213,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1250,7 +1240,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1333,8 +1323,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1351,7 +1340,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1376,24 +1365,24 @@ msgstr "X pēc startēšanas"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Norādiet cieto disku, ko vēlaties izdzēst, lai izveidotu jaunu\n"
-"Mandriva Linux sadaļu. Esiet uzmanīgi, jo visi diskā esošie dati\n"
+"Mageia sadaļu. Esiet uzmanīgi, jo visi diskā esošie dati\n"
"pazudīs un nebūs atjaunojami."
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Nūspīdit \"%s\", ja gribit izdzēst vysus datus i\n"
"sadalis, kurys atsarūn iz ituo cītuo diska. Esit uzmaneigi, piec \"%s\" "
diff --git a/perl-install/install/help/po/lv.po b/perl-install/install/help/po/lv.po
index a48bdfd2a..1e45799d9 100644
--- a/perl-install/install/help/po/lv.po
+++ b/perl-install/install/help/po/lv.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2002-09-27 17:45+0200\n"
"Last-Translator: Raivo Saars <spaiks@inbox.lv>\n"
"Language-Team: Latvian <ll10nt@listes.murds.lv>\n"
+"Language: lv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -20,13 +21,13 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Pirms turpināt, Jums vajadzētu uzmanīgi izlasīt licences vienošanos. Tā "
"nosedz\n"
-"visu Mandriva Linux distribūciju, un ja Jūs nepiekrītat visiem noteikumiem,\n"
+"visu Mageia distribūciju, un ja Jūs nepiekrītat visiem noteikumiem,\n"
"nospiediet uz pogas \"Noraidīt\", kas nekavējoties pārtrauks instalāciju. "
"Lai turpinātu\n"
"instalācijas procesu, nospiediet pogu \"Pieņemt\"."
@@ -90,7 +91,8 @@ msgstr "Vai vēlaties izmantot aboot?"
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -100,24 +102,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Augstāk ir uzskaitītas eksistējošās Linux sadaļas, kas ir atrastas uz jūsu\n"
@@ -154,13 +160,13 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux instalācija ir sadalīta pa dažiem CD-ROM diskiem. DrakX\n"
+"Mageia instalācija ir sadalīta pa dažiem CD-ROM diskiem. DrakX\n"
"zin, vai izvēlētā pakotne atrodas uz cita CD-ROM diska, izvirzīs pašreizējo\n"
"kompaktdisku un palūgs ievietot citu pēc nepieciešamības."
@@ -168,12 +174,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -253,10 +258,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -361,7 +366,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -464,39 +469,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -505,15 +514,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -526,11 +535,11 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Pašlaik jums ir jāizvēlas, kur uz cietā diska instalēt Mandriva Linux\n"
+"Pašlaik jums ir jāizvēlas, kur uz cietā diska instalēt Mageia\n"
"operētājsistēmu. Ja disks ir tukšs vai cita operētājsistēma aizņem visu\n"
"vietu uz diska, jums būs jāveic diska sadalīšana. Īsumā, cietā diska\n"
"sadalīšana nozīmē to sadalīt loģiskās daļās, lai izveidotu vietu\n"
-"Mandriva Linux sistēmas instalēšanai.\n"
+"Mageia sistēmas instalēšanai.\n"
"\n"
"\n"
"Sakarā ar to, ka diska sadalīšanas process parasti ir neatgriezenisks,\n"
@@ -559,8 +568,8 @@ msgstr ""
"\n"
"* Izdzēst visu disku: ja vēlaties izdzēst visus uz diska esošos datus un "
"sadaļas un aizstāt tās ar jaunu\n"
-" Mandriva Linux sistēmu, varat izvēlēties šo opciju. Esiet uzmanīgi, "
-"izvēloties šo risinājumu, jo pēc\n"
+" Mageia sistēmu, varat izvēlēties šo opciju. Esiet uzmanīgi, izvēloties šo "
+"risinājumu, jo pēc\n"
" apstiprināšanas jūs vairs nevarēsit atteikties no šīs izvēles.\n"
"\n"
"\n"
@@ -572,8 +581,7 @@ msgstr ""
"vai izmainīt Microsoft\n"
" Windows sadaļas izmēru. Sadaļas izmēru var izmainīt bez datu zaudēšanas. "
"Šis risinājums ir ieteicams, ja\n"
-" jūs savā datorā vēlaties izmantot gan Mandriva Linux, gan Microsoft "
-"Windows.\n"
+" jūs savā datorā vēlaties izmantot gan Mageia, gan Microsoft Windows.\n"
"\n"
"\n"
" Pirms izvēlaties šo risinājumu, ņemiet vērā, ka Microsoft Windows sadaļas "
@@ -681,7 +689,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -705,12 +713,12 @@ msgstr ""
"Noklikšķiniet \"Labi\", kad esat gatavi formatēt sadaļas.\n"
"\n"
"Noklikšķiniet \"Atcelt\", ja jūs gribat izvēlēties citas sadaļas, kur\n"
-"instalēt jauno Mandriva Linux operētājsistēmu."
+"instalēt jauno Mageia operētājsistēmu."
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -733,7 +741,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -757,21 +765,24 @@ msgstr "Drošības administrators:"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -787,21 +798,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -818,16 +831,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Pašlaik jums ir jāizvēlas, kurā(s) diska sadaļā(s) instalēt Mandriva Linux\n"
+"Pašlaik jums ir jāizvēlas, kurā(s) diska sadaļā(s) instalēt Mageia\n"
"operētājsistēmu. Ja sadaļas jau ir izveidotas (agrākas GNU/Linux "
"instalēšanas\n"
"laikā vai ar citu diska sadalīšanas rīku), jūs varat izmantot esošās "
@@ -933,39 +940,45 @@ msgstr "Pārslēgt normālajā režīmā"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Uz jūsu cietā diska ir atrasta vairāk nekā viena Microsoft Windows sadaļa.\n"
"Lūdzu izvēlieties to sadaļu, kuras izmēru jūs vēlaties izmainīt, lai\n"
-"instalētu jauno Mandriva Linux operētājsistēmu.\n"
+"instalētu jauno Mageia operētājsistēmu.\n"
"\n"
"\n"
"Jūsu zināšanai, katra sadaļa ir uzskaitīta šādā veidā: \"Linux nosaukums\",\n"
@@ -1012,23 +1025,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1082,8 +1095,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1190,7 +1202,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1201,7 +1213,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1222,7 +1234,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1249,7 +1261,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1332,8 +1344,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1350,7 +1361,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1375,24 +1386,26 @@ msgstr "X pēc startēšanas"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Norādiet cieto disku, ko vēlaties izdzēst, lai izveidotu jaunu\n"
-"Mandriva Linux sadaļu. Esiet uzmanīgi, jo visi diskā esošie dati\n"
+"Mageia sadaļu. Esiet uzmanīgi, jo visi diskā esošie dati\n"
"pazudīs un nebūs atjaunojami."
#: ../help.pm:866
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Nospiediet \"Labi\", ja vēlaties izdzēst visus datus un\n"
"sadaļas, kas atrodas uz šī cietā diska. Esiet uzmanīgi, pēc \"Labi\" "
diff --git a/perl-install/install/help/po/mk.po b/perl-install/install/help/po/mk.po
index fc3e164de..0b6d3065b 100644
--- a/perl-install/install/help/po/mk.po
+++ b/perl-install/install/help/po/mk.po
@@ -15,6 +15,7 @@ msgstr ""
"PO-Revision-Date: 2006-09-19 23:36-0700\n"
"Last-Translator: Zoran Dimovski <zoki.dimovski@gmail.com>\n"
"Language-Team: Macedonian\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -22,15 +23,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural= n==1 || n%10==1 ? 0 : 1\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Пред да продолжите, внимателно прочитајте ѓи условите на лиценцата. Таа\n"
-"ја покрива целата дистрибуција на „Mandriva Linux“, Aко се согласувате\n"
+"ја покрива целата дистрибуција на „Mageia“, Aко се согласувате\n"
"со сите услови во неа, штиклирајте „%s“. Доколку не се согласувате со\n"
"лиценцата притиснете на „%s“ и вашиот компјутер ќе се рестартира."
@@ -138,7 +139,8 @@ msgstr "Дали сакате да ja користите оваа опција?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -148,24 +150,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Горе се наведени постоечките „Linux“ партиции што се откриени на вашиот "
@@ -200,15 +206,15 @@ msgstr ""
"втор најнизок „SCSI ID“, итн."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Инсталацијата на „Mandriva Linux“ се дистрибуира на повеќе CD-а. Ако некој\n"
+"Инсталацијата на „Mageia“ се дистрибуира на повеќе CD-а. Ако некој\n"
"избран паќет се наоѓа на друго CD, „DrakX“ ќе го исфрли моменталното\n"
"и ќе побара од вас да го внесете потребното CD. Ако потребното CD не ви е\n"
"при рака, само притиснете на „%s“ и соодветниот пакет нема да\n"
@@ -218,12 +224,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -275,11 +280,10 @@ msgid ""
msgstr ""
"Сега треба да изберете кои програми сакате да се инсталираат на вашиот "
"систем.\n"
-"Постојат илјадници пакети за „Mandriva Linux“, и за да полесно се снајдете\n"
+"Постојат илјадници пакети за „Mageia“, и за да полесно се снајдете\n"
"тие се поделени во групи со слични апликации.\n"
"\n"
-"„Mandriva Linux“ ги дели групите на пакети во четири категории. Може да "
-"избирате\n"
+"„Mageia“ ги дели групите на пакети во четири категории. Може да избирате\n"
"и да мешате паќети од различни категории, така што инсталација на „Работна "
"станица“\n"
"може да има инсталирано и апликации од категоријата „Сервер“.\n"
@@ -353,7 +357,7 @@ msgid "Truly minimal install"
msgstr "Искрено минимална инсталација"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -366,10 +370,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -400,16 +404,16 @@ msgstr ""
"!! Ако е избран серверски пакет, дали вие го имате изберено пакетот или\n"
"затоа што е дел од цела група, ќе бидете запрашани да потврдите дали "
"навистина\n"
-"сакате да се инсталираат тие сервери. Како стандард, во „Mandriva Linux“, "
-"сите инсталирани\n"
+"сакате да се инсталираат тие сервери. Како стандард, во „Mageia“, сите "
+"инсталирани\n"
"сервиси автоматски ќе видат вклучени при подигнување. Дури и ако тие се "
"безбедни\n"
"и немаат проблеми во време на излегување на дистрибуцијата, може да се "
"случи\n"
"да бидат откриени безбедносни дупки по излегувањето на оваа верзија на "
-"„Mandriva Linux“. \n"
-"Ако не знаете што прави одреден сервис или зошто се инсталира, притиснете „%"
-"s“.\n"
+"„Mageia“. \n"
+"Ако не знаете што прави одреден сервис или зошто се инсталира, притиснете "
+"„%s“.\n"
"Со притискање на „%s“ ќе се инсталираат излистаните сервиси и тие\n"
"автоматски ќе се вклучуваат при подигнување. !!\n"
"\n"
@@ -541,11 +545,11 @@ msgstr ""
"најмногу одговара на вашите потреби."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -601,7 +605,7 @@ msgid ""
msgstr ""
"X (за „X Window System“) е срцето на графичкиот изглед на „GNU/Linux“\n"
"на кој се изградени сите графички околини („KDE“, „GNOME“, „AfterStep“,\n"
-"„WindowMaker“, и.т.н.) вградени во „Mandriva Linux“\n"
+"„WindowMaker“, и.т.н.) вградени во „Mageia“\n"
"\n"
"Ќе видите листа со различни параметри кои можете да ги менувате\n"
"за да добиете оптимален графички приказ.\n"
@@ -641,8 +645,8 @@ msgstr ""
"Зависно вашиот хардвер, овој внес може и да не се појави.\n"
"\n"
" Системот ќе се обиде да отвори графичкиот екран со бараната\n"
-"резолуција. Ако можете да ја прочитате прикажаната пораката и одговорете „%"
-"s“,\n"
+"резолуција. Ако можете да ја прочитате прикажаната пораката и одговорете "
+"„%s“,\n"
"тогаш „DrakX“ ќе продолжи со следниот чекор. Ако не можете да ја прочитате "
"пораката,\n"
"тогаш нешто не е во ред со конфигурацијата на автоматската детекција и\n"
@@ -721,41 +725,45 @@ msgstr ""
"графичкиот приказ."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -764,15 +772,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -786,11 +794,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Сега треба да одлучите каде на вашиот диск сакате да се инсталира\n"
-"оперативниот систем „Mandriva Linux“. Ако вашиот хард диск е празен\n"
+"оперативниот систем „Mageia“. Ако вашиот хард диск е празен\n"
"или сето достапно место го користи постоечки оперативен систем, треба\n"
"да го партиционирате дискот. Во основа, партиционирање на хард диск значи\n"
"логичка поделба за создавање на простор потребен за инсталирање на\n"
-"вашиот нов „Mandriva Linux“ систем.\n"
+"вашиот нов „Mageia“ систем.\n"
"\n"
"Бидејќи процесот на партиционирање на хард дискот вообичаено е "
"нереверзибилен\n"
@@ -805,8 +813,8 @@ msgstr ""
"Во зависност од конфигурацијата на вашиот хард диск, достапни се\n"
"повеќе опции:\n"
"\n"
-" * „%s“: оваа опција ќе изведе автоматско партиционирање на празниот(те) диск"
-"(ови).\n"
+" * „%s“: оваа опција ќе изведе автоматско партиционирање на празниот(те) "
+"диск(ови).\n"
"Ако ја користете оваа опција, понатаму нема да сте запрашувани.\n"
"\n"
" * „%s“: волшебникот детектирал една или повеќе постоечки „Linux“ партиции\n"
@@ -833,7 +841,7 @@ msgstr ""
"оваа опција\n"
"се препорачува ако на вашиот компјутер сакате да ѓи користите и двата "
"оперативни системи,\n"
-"и „Mandriva Linux“ и „Microsoft Windows“.\n"
+"и „Mageia“ и „Microsoft Windows“.\n"
"\n"
" Пред да ја изберете оваа опција треба да знаете дека по ова „Microsoft "
"Windows“\n"
@@ -843,8 +851,7 @@ msgstr ""
"\n"
" * „%s“: ако сакате да ги избришете сите податоци и сите партиции присутни "
"на\n"
-"вашиот диск и да ги замените со вашиот нов „Mandriva Linux“ систем, изберете "
-"ја\n"
+"вашиот диск и да ги замените со вашиот нов „Mageia“ систем, изберете ја\n"
"оваа опција. Внимавајте, откако ќе потврдите оваа операција не може да\n"
"биде вратена.\n"
"\n"
@@ -867,8 +874,8 @@ msgstr ""
"правено\n"
"вакво нешто и имате малку искуство. За повеќе инструкции како да ја "
"користите\n"
-"алатката „DiskDrake“, обратете се на секцијата „Менаџирање на вашите партиции"
-"„ во\n"
+"алатката „DiskDrake“, обратете се на секцијата „Менаџирање на вашите "
+"партиции„ во\n"
"„Почетен водич“."
#: ../help.pm:377
@@ -983,7 +990,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -1002,7 +1009,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1025,15 +1032,15 @@ msgstr ""
"Ако сте подготвени да ги форматирате партициите, притиснете „%s“.\n"
"\n"
"Ако сакате да изберете друга партиција за системска инсталација на\n"
-"вашиот нов оперативен систем „Mandriva Linux“, притиснете на „%s“.\n"
+"вашиот нов оперативен систем „Mageia“, притиснете на „%s“.\n"
"\n"
"Ако сакате да изберете партиции за проверка на лоши блокови на дискот,\n"
"притиснете на „%s“."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1045,7 +1052,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Додека го инсталирате „Mandriva Linux“, најверојанто е дека некои пакети\n"
+"Додека го инсталирате „Mageia“, најверојанто е дека некои пакети\n"
"веќе имаат надградби од првичното издание. Можеби се поправени грешки,\n"
"решени се безбедносни проблеми. За да придобиете од овие надградби,\n"
"сега може да ги преземете од Интернет. Ако имате функционална интернет\n"
@@ -1059,7 +1066,7 @@ msgstr ""
"пакети притиснете на „%s“. Во спротивно, притиснете на „%s“."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1068,7 +1075,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1083,7 +1090,7 @@ msgstr ""
"Ако не знаете што да изберете, задржете ја дадената опција. Нивото на "
"сигурност\n"
"ќе можете подоцна да го смените со алатката „draksec“, која е дел од\n"
-"Конгролниот центар на „Mandriva Linux“.\n"
+"Конгролниот центар на „Mageia“.\n"
"\n"
"Пополнете го полето „%s“ со адресата na е-пошта на личноста која е\n"
"одговорна за сигурноста. Сигурносните пораки ќе се праќаат на таа адреса."
@@ -1094,24 +1101,27 @@ msgid "Security Administrator"
msgstr "Администратор за сигурност"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1127,21 +1137,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1158,19 +1170,12 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Во овој момент треба да изберете која партициja или партиции ќе ги користите "
"за\n"
-"инсталација на системот „Mandriva Linux“. Ако партициите се веќе "
-"дефинирани,\n"
+"инсталација на системот „Mageia“. Ако партициите се веќе дефинирани,\n"
"од претходна инсталација на „GNU/Linux“ или од друга алатка за поделба на "
"дискот,\n"
"може да ги користите веќе постоечките партиции. Во спротивно, партициите\n"
@@ -1184,7 +1189,7 @@ msgstr ""
"\n"
" * „%s“: оваа опција ги брише сите партиции на избраниот хард диск\n"
"\n"
-" * „%s“: оваа опција ви овозможува автоматски да создадете „ext3“ и „swap“\n"
+" * „%s“: оваа опција ви овозможува автоматски да создадете „ext4“ и „swap“\n"
"партиции во слободниот простор од вашиот хард диск\n"
"\n"
"„%s“: ви дава пристап до додатни карактеристики: \n"
@@ -1235,15 +1240,6 @@ msgstr ""
"\n"
"За да добиете информации за различните типови на датотечни системи,\n"
"прочитајте го одделот за „ext2FS“ од „Упатство за употреба“.\n"
-"\n"
-"Ако инсталирате на „PPC“ машина, ќе сакате да создадете мала „HFS "
-"bootstrap“\n"
-"партиција од барем 1МБ, која ќе се користи од подигнувачот „yaboot“. Ако "
-"сакате\n"
-"да ја направите партицијата малку поголема, на пример 50МБ, тоа може да "
-"биде\n"
-"корисно како место за чување резервен кернел и „ramdisk“ слики за итни "
-"случаи."
#: ../help.pm:526
#, c-format
@@ -1281,41 +1277,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Префрлање помеѓу нормален/експертски режим"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"На вашиот диск е пронајдено повеќе од една „Microsoft“ партиција.\n"
"Изберете ја онаа што сакате да ја намалите/зголемите за да го\n"
-"инсталирате вашиот нов „Mandriva Linux“ оперативен систем.\n"
+"инсталирате вашиот нов „Mageia“ оперативен систем.\n"
"\n"
"Секоја партиција е излистана со: „Linux име“, „Windows име“\n"
"„Капацитет“.\n"
@@ -1355,35 +1357,35 @@ msgstr ""
"добиете комплетната листа на држави."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Овој чекор се активира само ако на вашиот компјутер претходно е\n"
"пронајдена постоечка „GNU/Linux“ партиција.\n"
"\n"
"„DrakX“ треба да знае дали сакате да извршите нова инсталација или\n"
-"надградба на постоечкиот „Mandriva Linux“ систем:\n"
+"надградба на постоечкиот „Mageia“ систем:\n"
"\n"
" * „%s“: Во најголем број случаеви, ова комплетно го брише стариот систем.\n"
"Сепак, зависно од шемата на делење на дискот, можете да спречите некои\n"
@@ -1394,17 +1396,16 @@ msgstr ""
"\n"
" * „%s“: Оваа класа на инсталација ви овозможува да ги надградите пакетите "
"кои\n"
-"се тековно инсталирани на вашиот „Mandriva Linux“ систем. Вашата тековна "
-"шема на\n"
+"се тековно инсталирани на вашиот „Mageia“ систем. Вашата тековна шема на\n"
"поделба на дискот и корисничките податоци нема да бидат променети. Повеќето "
"од\n"
"останатите конфигурациски чекори остануваат достапни и се слични со "
"стандардната\n"
"инсталацијата.\n"
"\n"
-"Користењето на опцијата „Надгради“ работи одлично на „Mandriva Linux“ "
-"системи кои имаат\n"
-"верзија „8.1“ или понова. Извршување на надградба на „Mandriva Linux“ верзии "
+"Користењето на опцијата „Надгради“ работи одлично на „Mageia“ системи кои "
+"имаат\n"
+"верзија „8.1“ или понова. Извршување на надградба на „Mageia“ верзии "
"постари\n"
"од верзија „8.1“ е строго непрепорачлива."
@@ -1447,7 +1448,7 @@ msgstr ""
"меѓу Латински и не-Латински распоред."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1463,8 +1464,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1505,9 +1505,9 @@ msgstr ""
"\n"
"За „UTF-8“ (повеќекодна) подршка: Повеќекодната подршка е ново кодирање\n"
"на знаци наменето да ги покрие сите постоечки јазици. Но, комплетна подршка\n"
-"во „GNU/Linux“ е сеуште во развој. Поради оваа причина, употребата на „UTF-"
-"8“ во\n"
-"„Mandriva Linux“ ќе зависи од изборот на корисникот:\n"
+"во „GNU/Linux“ е сеуште во развој. Поради оваа причина, употребата на "
+"„UTF-8“ во\n"
+"„Mageia“ ќе зависи од изборот на корисникот:\n"
"\n"
" * Ако изберете јазик со силно наследно кодирање („latin1“ јазици,\n"
"Руски, Јапонски, Кинески, Корејски, Тајландски, Грчки, Турски, повеќето\n"
@@ -1651,7 +1651,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1679,10 +1679,10 @@ msgstr ""
"само ако знаете што правите."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1703,11 +1703,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Сега е време да го изберете системот за печатење за вашиот компјутер.\n"
-"Други оперативни системи може да ви понудат еден, „Mandriva Linux“ нуди\n"
+"Други оперативни системи може да ви понудат еден, „Mageia“ нуди\n"
"два. Секој од системите за печатење најдобро одговара со одредени\n"
"типови на конфигурација.\n"
"\n"
@@ -1730,7 +1730,7 @@ msgstr ""
"\n"
"Ако сега се одлучите за избор и подоцна не ви се допаѓа вашиот\n"
"систем за печатење, можете да го промените со вклучување на\n"
-"„PrinterDrake“ од контролниот центар на „Mandriva Linux“\n"
+"„PrinterDrake“ од контролниот центар на „Mageia“\n"
"со протискање на копчето „%s“."
#: ../help.pm:768
@@ -1756,7 +1756,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1846,8 +1846,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1864,7 +1863,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1919,7 +1918,7 @@ msgstr ""
"мрежа,\n"
"можете да го направите тоа. Информирајте се од испечатената документација "
"или\n"
-"по инсталацијата користете го Контролниот центар на „Mandriva Linux“ за да\n"
+"по инсталацијата користете го Контролниот центар на „Mageia“ за да\n"
"добиете комплетна помош.\n"
"\n"
" * \"%s\": ви дозволува да конфигурирате адреси за „HTTP“ и „FTP“ адреси, "
@@ -1940,7 +1939,7 @@ msgstr ""
" * \"%s\": ако сакате да ја промените конфигурацијата на подигнувачот,\n"
"притиснете на ова копче. Ова би требало да се зачува за напредни корисници.\n"
"Информирајте се од испечатената документација или од вградената помош за\n"
-"подигнувачот во Контролниот центар на „Mandriva Linux“.\n"
+"подигнувачот во Контролниот центар на „Mageia“.\n"
"\n"
" * \"%s\": преку овој внес може да поставете кои сервиси ќе се вклучуваат\n"
"при вклучување на вашата машина. Ако планирате да ја користите како сервер,\n"
@@ -1962,26 +1961,28 @@ msgid "Graphical Interface"
msgstr "Графички интерфејс"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Изберете го дискот што сакате да го избришете за да ја инсталирате новата\n"
-"„Mandriva Linux“ партиција. Внимавајте, сите податоци на него ќе бидат\n"
+"„Mageia“ партиција. Внимавајте, сите податоци на него ќе бидат\n"
"изгубени и нема да може да се вратат!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Ако сакате да ги избришете сите податоци и партиции што се наоѓаат\n"
"на овој диск, притиснете на „%s“. Внимавајте, откако ќе притиснете\n"
diff --git a/perl-install/install/help/po/mn.po b/perl-install/install/help/po/mn.po
index 4b9953e10..a0a7aed9f 100644
--- a/perl-install/install/help/po/mn.po
+++ b/perl-install/install/help/po/mn.po
@@ -12,6 +12,7 @@ msgstr ""
"PO-Revision-Date: 2004-01-02 00:35+0100\n"
"Last-Translator: Sanlig Badral <Badral@openmn.org>\n"
"Language-Team: Mongolian <openmn-core@lists.sf.net>\n"
+"Language: mn\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -22,7 +23,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -86,7 +87,8 @@ msgstr "Та энэ чанарыг ашиглахыг хүсэж байна уу
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -96,24 +98,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"вы вы вы вы вы г вы г бол Нэр г г Нэр бол төрөл г г г Erfitt төрөл бол бол г "
@@ -126,7 +132,7 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -140,12 +146,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -233,10 +238,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -337,7 +342,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -444,39 +449,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -485,15 +494,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -607,7 +616,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -616,7 +625,7 @@ msgstr "Бүх г г вы вы г бол Та вы вы г г вы г с вы г
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -639,7 +648,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -655,21 +664,24 @@ msgstr "Хамгаалалт:"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -685,21 +697,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -716,14 +730,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -764,34 +772,40 @@ msgstr "Ердийн/мэргэжлийн горимын хооронд шилж
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"вы ямх шинэ г бол нэр Цонхнууд нэр г г г нэр бол төрөл г г г Erfitt төрөл "
@@ -817,23 +831,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"бол г вы шинэ г\n"
" с вы вы аас г\n"
@@ -879,8 +893,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -988,7 +1001,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1002,7 +1015,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1023,7 +1036,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"с Бусад вы туг аас аас г\n"
@@ -1053,7 +1066,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1115,8 +1128,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1133,7 +1145,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1173,8 +1185,8 @@ msgstr ""
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1182,12 +1194,14 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr "с вы с вы Цонхнууд г с."
#: ../help.pm:872
diff --git a/perl-install/install/help/po/ms.po b/perl-install/install/help/po/ms.po
index 7048066f9..ec4e83d26 100644
--- a/perl-install/install/help/po/ms.po
+++ b/perl-install/install/help/po/ms.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2006-02-19 14:09+0800\n"
"Last-Translator: Sharuzzaman Ahmat Raslan <sharuzzaman@myrealbox.com>\n"
"Language-Team: Malay <translation-team-ms@lists.sourceforge.net>\n"
+"Language: ms\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -18,7 +19,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr "dalam off."
@@ -86,7 +87,8 @@ msgstr "Anda mahu memadam masukan ini dari buku telefon?"
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -96,24 +98,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"on on Nama Nama dan\n"
@@ -125,7 +131,7 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -136,12 +142,11 @@ msgstr "on on dan."
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -229,10 +234,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -330,7 +335,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -441,39 +446,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -482,15 +491,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -614,7 +623,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -623,7 +632,7 @@ msgstr "fail on dan on on on on."
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -646,7 +655,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -662,21 +671,24 @@ msgstr "Pentadbir Domain:"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -692,21 +704,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -723,14 +737,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"on dan on\n"
" on\n"
@@ -786,34 +794,40 @@ msgstr "normal"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"on dalam Tetingkap dan\n"
@@ -838,23 +852,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"on\n"
" keluar fail on\n"
@@ -898,8 +912,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1006,7 +1019,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1020,7 +1033,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1041,7 +1054,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Lain-lain\n"
@@ -1071,7 +1084,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1133,8 +1146,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1151,7 +1163,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1191,8 +1203,8 @@ msgstr "Konfigurasi (X) Antaramuka Grafikal"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr "dalam on dan!"
@@ -1200,12 +1212,14 @@ msgstr "dalam on dan!"
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr "on dan on on dan on Tetingkap on dan on."
#: ../help.pm:872
diff --git a/perl-install/install/help/po/mt.po b/perl-install/install/help/po/mt.po
index 7c8f9ec10..bd5e0e9ea 100644
--- a/perl-install/install/help/po/mt.po
+++ b/perl-install/install/help/po/mt.po
@@ -18,15 +18,15 @@ msgstr ""
"X-Generator: KBabel 1.3.1\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Qabel tkompli int mitlub taqra sew it-termini ta' din il-liċenzja. Hija\n"
-"tkopri d-distribuzzjoni sħiħa ta' Mandriva Linux. Jekk taqbel mat-termini\n"
+"tkopri d-distribuzzjoni sħiħa ta' Mageia. Jekk taqbel mat-termini\n"
"kollha tagħha, agħfas il-buttuna \"%s\". Jekk ma taqbilx, agħfas \"%s\" "
"biex\n"
"tirributja l-kompjuter."
@@ -123,7 +123,7 @@ msgstr "Trid tuża din il-faċilità?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -133,24 +133,24 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Hawn issib il-partizzjonijiet ta' Linux li nstabu fuq id-diska. Tista' \n"
@@ -182,15 +182,15 @@ msgstr ""
"Fuq diski SCSI, \"a\" hija d-diska bl-iżjed ID baxx, \"b\" hija t-tieni, eċċ."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"L-installazzjoni ta' Mandriva Linux hija maqsuma fuq diversi CD-ROMs. Jekk\n"
+"L-installazzjoni ta' Mageia hija maqsuma fuq diversi CD-ROMs. Jekk\n"
"pakkett qiegħed fuq CD-ROM oħra, DrakX jiftaħ is-CDROM u jitolbok iddaħħal "
"is-\n"
"CD li jmiss. Jekk m'għandekx dik is-CD tista' tikklikkja \"%s\" u l-pakketti "
@@ -201,12 +201,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -257,11 +256,11 @@ msgid ""
"megabytes."
msgstr ""
"Issa wasal il-mument fejn tagħżel liema programmi tixtieq tinstalla fuq\n"
-"is-sistema tiegħek. Hemm eluf ta' pakketti disponibbli għal Mandriva Linux,\n"
+"is-sistema tiegħek. Hemm eluf ta' pakketti disponibbli għal Mageia,\n"
"u biex ikun iżjed faċli timmaniġġjahom, qegħdin imqassmin fi gruppi ta'\n"
"programmi simili.\n"
"\n"
-"Mandriva Linux iqassam il-gruppi ta' pakketti fi tlett kategoriji. Tista' \n"
+"Mageia iqassam il-gruppi ta' pakketti fi tlett kategoriji. Tista' \n"
"tagħżel u tħallat programmi minn diversi kategoriji, jiġifieri "
"installazzjoni\n"
"\"workstation\" tista' tinkludi programmi mis-sezzjoni \"server\", eċċ.\n"
@@ -323,7 +322,7 @@ msgid "Truly minimal install"
msgstr "Installazzjoni assolutament minima"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -336,10 +335,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -368,7 +367,7 @@ msgstr ""
"li tgħidlek għal xiex jintuża dak il-pakkett.\n"
"!! Jekk pakkett ta' server jiġi installat intenzjonalment jew għax jifforma\n"
"parti minn grupp, int tintalab tikkonferma jekk verament tridx lill dawn\n"
-"is-servizzi jiġu nstallati. Fil-Mandriva Linux, is-servizzi li tinstalla "
+"is-servizzi jiġu nstallati. Fil-Mageia, is-servizzi li tinstalla "
"jiġu\n"
"mtella' awtomatikament meta tixgħel. Għalkemm dawn kienu siguri u ma kien "
"fihom\n"
@@ -498,11 +497,11 @@ msgstr ""
"ħtiġijietek l-aħjar."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -557,7 +556,7 @@ msgid ""
"not successful in getting the display configured."
msgstr ""
"X (għal Sistema X Window) huwa l-qalb ta' l-interfaċċja grafika GNU/Linux\n"
-"li fuqu huma bbażati l-ambjenti grafiċi kollha inklużi ma' Mandriva Linux "
+"li fuqu huma bbażati l-ambjenti grafiċi kollha inklużi ma' Mageia "
"(KDE,\n"
"GNOME, AfterStep, WindowMaker, eċċ).\n"
"\n"
@@ -670,41 +669,41 @@ msgstr ""
"server, jew jekk ma rnexxielekx tissettja l-X sew."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -713,15 +712,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -735,12 +733,12 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"F'dan il-punt int trid tagħżel fejn, fuq il-ħard disk, trid tinstalla s-\n"
-"sistema operattiva Mandriva Linux. Jekk il-ħard disk huwa vojt, jew jekk\n"
+"sistema operattiva Mageia. Jekk il-ħard disk huwa vojt, jew jekk\n"
"hemm sistema operattiva qed tokkupaha kollha, l-ewwel trid toħloq \n"
"partizzjonijiet. Bażikament, il-partizzjonijiet tal-ħard disk jaqsmu d-"
"diska\n"
"f'partijiet biex ikun hemm sezzjonijiet fejn tiġi nstallata s-sistema ġdida\n"
-"Mandriva Linux.\n"
+"Mageia.\n"
"\n"
"Peress li l-effett ta' partizzjonament tal-ħard disk m'humiex riversibbli,\n"
"u jista' jwassal għal telf ta' informazzjoni, dan il-proċess jista' jidher\n"
@@ -903,7 +901,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -922,7 +920,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -945,15 +943,15 @@ msgstr ""
"Agħfas \"%s\" meta tkun lest biex tifformattja l-partizzjonijiet.\n"
"\n"
"Agħfas \"%s\" jekk trid tagħżel partizzjoni oħra għas-sistema ġdida\n"
-"Mandriva Linux.\n"
+"Mageia.\n"
"\n"
"Agħfas \"%s\" biex tagħżel partizzjonijiet biex jiġu ċċekkjati għal blokki\n"
"ħżiena fuq id-diska."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -965,7 +963,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Fid-data meta tinstalla l-Mandriva Linux, aktarx ikunu ġew aġġornati xi\n"
+"Fid-data meta tinstalla l-Mageia, aktarx ikunu ġew aġġornati xi\n"
"pakketti minn meta ġiet pubblikata. Xi żbalji jistgħu ikunu ġew irranġati,\n"
"u problemi ta' sigurtà ġew riżolti. Sabiex tibbenifika minn dawn l-\n"
"aġġornamenti, jaqbillek tniżżilhom minn fuq l-internet. Agħżel \"%s\" jekk\n"
@@ -979,7 +977,7 @@ msgstr ""
"agħfas \"%s\" biex tniżżilhom u tinstallahom jew \"%s\" biex twaqqaf."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -988,7 +986,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1003,7 +1001,7 @@ msgstr ""
"\n"
"Jekk ma tafx liema tagħżel, żomm l-għażla impliċita. Tkun tista' tibdel dan\n"
"il-livell iżjed 'il quddiem bl-għodda draksex, li jifforma parti miċ-Ċentru\n"
-"ta' Kontroll Mandriva Linux.\n"
+"ta' Kontroll Mageia.\n"
"\n"
"Imla' l-kaxxa \"%s\" bl-indirizz tal-imejl tal-persuna responsabbli mis-"
"sigurtà.\n"
@@ -1015,24 +1013,24 @@ msgid "Security Administrator"
msgstr "Amministratur tas-sigurtà"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1048,21 +1046,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1079,17 +1077,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"F'dan il-punt trid tagħżel liema partizzjoni(jiet) se jintużaw għall-\n"
-"installazzjoni tas-sistema Mandriva Linux. Jekk diġà ġew definiti xi\n"
+"installazzjoni tas-sistema Mageia. Jekk diġà ġew definiti xi\n"
"partizzjonijiet, jew minn installazzjoni preċedenti ta' GNU/Linux jew minn\n"
"għodda ta' partizzjonament oħra, tista' tuża l-partizzjonijiet eżistenti.\n"
"Altrimenti, l-partizzjonijiet tal-ħard disk iridu jiġu definiti.\n"
@@ -1105,7 +1097,7 @@ msgstr ""
"mill-ħard disk magħżula.\n"
"\n"
" * \"%s\": din l-għażla awtomatikament toħloqlok partizzjonijiet\n"
-"ext3 u swap fl-ispazju vojt tad-diska.\n"
+"ext4 u swap fl-ispazju vojt tad-diska.\n"
"\n"
" * \"%s\" jagħtik aċċess għal iżjed faċilitajiet:\n"
"\n"
@@ -1156,11 +1148,6 @@ msgstr ""
"\n"
"Biex tikseb iżjed informazzjoni dwar il-filesystems differenti disponibbli,\n"
"jekk jogħġbok aqra l-kapitlu ext2fs fil-Manwal ta' Referenza.\n"
-"\n"
-"Jekk qed tinstalla fuq kompjuter PPC, tkun trid toħloq partizzjoni żgħira\n"
-"HFS \"bootstrap\", ta' l-inqas 1MB, li tintuża mill-bootloader yaboot. Jekk\n"
-"tiddeċiedi li tagħmlu ftit ikbar, ngħidu aħna 50MB, tista' ssibu post utli\n"
-"fejn tqiegħed kernel u ramdisk \"spare\" għal emerġenzi."
#: ../help.pm:526
#, c-format
@@ -1198,41 +1185,41 @@ msgid "Toggle between normal/expert mode"
msgstr "Aqleb bejn modalità normali u esperta"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Instabu iżjed minn partizzjoni waħda tal-Microsoft fuq il-ħard disk. Jekk \n"
"jogħġbok agħżel liema minnhom trid iċċekken biex tinstalla s-sistema \n"
-"operattiva Mandriva Linux.\n"
+"operattiva Mageia.\n"
"\n"
"Kull partizzjoni hija mmarkata hekk: \"Isem tal-Linux\", \"Isem fil-Windows"
"\",\n"
@@ -1276,35 +1263,34 @@ msgstr ""
"fil-lista' agħfas il-buttuna \"%s\" għal lista sħiħa ta' pajjiżi."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Dan il-pass jiġi attivat biss jekk instabet partizzjoni eżistenti GNU/Linux\n"
"fuq il-kompjuter.\n"
"\n"
"DrakX issa għandu bżonn ikun jaf jekk tridx tagħmel installazzjoni ġdida\n"
-"jew aġġornament tas-sistema eżistenti Mandriva Linux:\n"
+"jew aġġornament tas-sistema eżistenti Mageia:\n"
"\n"
" * \"%s\". Fil-parti l-kbira, din tħassar is-sistema antika għal kollox.\n"
"Però, skond l-iskema ta' partizzjonijiet, tista' ma tħallix ċerti \n"
@@ -1313,7 +1299,7 @@ msgstr ""
"fajls, għandek tagħżel din l-għażla.\n"
"\n"
" * \"%s\". Din il-klassi ta' installazzjoni tħallik taġġorna l-pakketti\n"
-"installati bħalissa fuq is-sistema Mandriva Linux. Il-partizzjonijiet "
+"installati bħalissa fuq is-sistema Mageia. Il-partizzjonijiet "
"eżistenti\n"
"u d-data tal-utenti ma jintmessux. Ħafna mill-passi l-oħra tal-"
"konfigurazzjoni\n"
@@ -1322,7 +1308,7 @@ msgstr ""
"L-użu tal-għażla \"Aġġorna\" għandha taħdem tajjeb fuq sistemi Mandriva "
"Linux\n"
"minn verżjoni \"8.1\" 'il fuq. Mhux rakkomandat li tagħmel aġġornament ta'\n"
-"sistema Mandriva Linux qabel 8.1."
+"sistema Mageia qabel 8.1."
#: ../help.pm:594
#, c-format
@@ -1360,7 +1346,7 @@ msgstr ""
"u mhux Latin."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1376,8 +1362,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1420,7 +1405,7 @@ msgstr ""
"tal-karattri intenzjonata biex tipprovdi sapport għal-lingwi kollha. Però \n"
"s-sapport għaliha fil-Linux għadu qed jiġi żviluppat. Għalhekk, l-użu tal-"
"UTF-8\n"
-"fil-Mandriva Linux jiddependi mill-għażla tal-utent:\n"
+"fil-Mageia jiddependi mill-għażla tal-utent:\n"
"\n"
"* Jekk tagħżel lingwa b'ħafna sapport eżistenti f'kodifika oħra (eż, "
"lingwi \n"
@@ -1561,7 +1546,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1585,10 +1570,10 @@ msgstr ""
"x'qed tagħmel."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1609,11 +1594,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Issa wasal il-waqt li tagħżel sistema ta' printjar għall-kompjuter tiegħek.\n"
-"Sistemi operattivi oħra joffrulek waħda, Mandriva Linux jagħtik tnejn.\n"
+"Sistemi operattivi oħra joffrulek waħda, Mageia jagħtik tnejn.\n"
"Kull waħda minn dawn is-sistema hija idejali għal ċirkostanzi differenti.\n"
" * \"%s\" - li jfisser \"printja minngħajr kju\", hija l-aħjar għażla\n"
"jekk għandek konnessjoni diretta mal-printer, trid il-faċilità li twaqqaf\n"
@@ -1633,7 +1618,7 @@ msgstr ""
"\n"
"Jekk tagħmel għażla issa, u wara tiskopri li ma togħġbokx din is-sistema,\n"
"tista' tibdilha billi tħaddem PrinterDrake miċ-ċentru tal-kontroll ta' \n"
-"Mandriva Linux u tikklikkja l-buttuna \"%s\"."
+"Mageia u tikklikkja l-buttuna \"%s\"."
#: ../help.pm:768
#, c-format
@@ -1658,7 +1643,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1738,8 +1723,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1756,7 +1740,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1803,7 +1787,7 @@ msgstr ""
"\n"
" * \"%s\": jekk tixtieq tikkonfigura l-aċċess għall-internet jew network\n"
"lokali tista tagħmel dan issa. Irreferi għad-dokumentazzjoni stampata jew\n"
-"uża ċ-Ċentru tal-Kontroll Mandriva Linux wara li tlesti l-installazzjoni "
+"uża ċ-Ċentru tal-Kontroll Mageia wara li tlesti l-installazzjoni "
"biex\n"
"tikseb għajnuna online sħiħa.\n"
"\n"
@@ -1826,7 +1810,7 @@ msgstr ""
"din il-buttuna. Dan għandu jsir minn utenti avvanzati biss. Irreferi għad-\n"
"dokumentazzjoni stampata, jew l-għajnuna online dwar il-konfigurazzjoni "
"tal-\n"
-"bootloader fiċ-Ċentru tal-Kontroll Mandriva Linux.\n"
+"bootloader fiċ-Ċentru tal-Kontroll Mageia.\n"
"\n"
" * \"%s\": permezz ta' dan l-element tista' tirfina liema servizzi se \n"
"jitħaddmu fuq il-kompjuter. Jekk qed tippjana li tuża l-kompjuter bħala \n"
@@ -1848,26 +1832,26 @@ msgid "Graphical Interface"
msgstr "Interfaċċja grafika"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Agħżel liema ħard disk trid tħassar biex tinstalla l-partizzjonijiet tal-\n"
-"Mandriva Linux fuqha. Oqgħod attent, l-informazzjoni kollha fuq din id-\n"
+"Mageia fuqha. Oqgħod attent, l-informazzjoni kollha fuq din id-\n"
"diska jintilef u ma jkunx jista' jinġab lura!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Klikkja fuq \"%s\" jekk trid tħassar l-informazzjoni u partizzjonijiet \n"
"kollha li hemm fuq dan il-ħard disk. Oqgħod attent, wara li tagħfas \"%s\"\n"
diff --git a/perl-install/install/help/po/nb.po b/perl-install/install/help/po/nb.po
index d331947f4..2efa2febd 100644
--- a/perl-install/install/help/po/nb.po
+++ b/perl-install/install/help/po/nb.po
@@ -1,46 +1,41 @@
-# translation of nb.po to Norwegian Bokmål
-# translation of nb.po to Norsk Bokmål
-# translation of DrakX-nb.po to Norwegian Bokmål
-# KTranslator Generated File
-# Translation file of Mandriva Linux graphic install
-# Copyright (C) 1999 Mandriva
-# Terje Bjerkelia <terje@bjerkelia.com>, 1999-2000.
-# Andreas Bergstrøm <abergstr@halden.net>, 2000.
-# Kenneth Rørvik <kenneth@argon.no-ip.com>, 2003.
-# Per Øyvind Karlsen <peroyvind@sintrax.net>, 2003, 2004.
-# Keld Simonsen <keld@dkuug.dk>, 2004.
-# Per Øyvind Karlsen <peroyvind@mandrivalinux.org>, 2004, 2005.
-# Eskild Hustvedt <eskild@goldenfiles.com>, 2004.
-# Eskild Hustvedt <zerodogg@skolelinux.no>, 2004, 2005.
-# Per Øyvind Karlsen <pkarlsen@mandriva.com>, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
+# Karl Morten Ramberg <karl.m.ramberg@gmail.com>, 2024
+#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: nb\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2005-09-21 23:11+0200\n"
-"Last-Translator: Per Øyvind Karlsen <pkarlsen@mandriva.com>\n"
-"Language-Team: Norwegian Bokmål <cooker-i18n@mandrivalinux.com>\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: Karl Morten Ramberg <karl.m.ramberg@gmail.com>, 2024\n"
+"Language-Team: Norwegian Bokmål (https://app.transifex.com/MageiaLinux/"
+"teams/9361/nb/)\n"
+"Language: nb\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
-"Før du går videre bør du lese betingelsene i lisensen nøye. Den dekker hele\n"
-"Mandriva Linux-distribusjonen. Hvis du er enig med alle betingelsene,\n"
-"sjekk av \"%s\"-boksen- Hvis ikke, så vil det år trykke på '%s'k-knappen "
-"starte\n"
-"maskinen din på nytt."
+"Før du fortsetter, bør du lese vilkårene for lisensen nøye. Den\n"
+"dekker hele Mageia-distribusjonen. Hvis du er enig i alle\n"
+"vilkårene den inneholder, merk av for \"%s\"-boksen. Hvis ikke, klikk på "
+"\"%s\"\n"
+"knappen vil starte datamaskinen på nytt."
#: ../help.pm:20
#, c-format
@@ -131,12 +126,12 @@ msgstr ""
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Brukernavn"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Godta bruker"
#: ../help.pm:54
#, c-format
@@ -146,7 +141,8 @@ msgstr "Ønsker du å bruke denne finessen?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -156,24 +152,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Her er de eksisterende Linux-partisjonene som ble oppdaget på din harddisk.\n"
@@ -214,27 +214,27 @@ msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux-installasjonen er spredd ut over flere CD-ROMer. \n"
-"Hvis en valgt pakke er på en annen CDROM, vil DrakX løse ut den nåværende\n"
-"CD og be deg sette i en den rette CDen som kreves. Hvis du ikke har den som\n"
-"trengs nå, bare klikk på «%s», pakken(e) vil da ikke bli installert."
+"Mageia-installasjonen er distribuert på flere CD-ROM-er. Hvis en\n"
+"valgt pakke er plassert på en annen CD-ROM, vil DrakX løse ut strømmen\n"
+"CD og ber deg sette inn den nødvendige. Hvis du ikke har den forespurte\n"
+"CD for hånden, bare klikk på \"%s\", de tilsvarende pakkene vil ikke\n"
+"installeres."
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -284,62 +284,62 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"Det er nå på tide å spesifisere hvilke programmer du ønsker å installere på\n"
-"systemet ditt. Det er tusenvis av pakker tilgjengelig for Mandriva Linux, "
-"for\n"
-"å gjøre det enklere å håndtere pakkene så har de blitt plassert i grupper "
-"med\n"
-"lignende applikasjoner.\n"
+"Det er nå på tide å spesifisere hvilke programmer du ønsker å installere på "
+"systemet ditt.\n"
+"Det er tusenvis av pakker tilgjengelig for Mageia, og for å lage det\n"
+"enklere å administrere, de har blitt plassert i grupper med lignende\n"
+"applikasjoner..\n"
+"\n"
+"Mageia sorterer pakkegrupper i fire kategorier. Du kan blande og\n"
+"matche applikasjoner fra de forskjellige kategoriene, så en "
+"\"arbeidsstasjon\"\n"
+"installasjonen kan fortsatt ha applikasjoner fra kategorien ``Server''\n"
+"installert.\n"
"\n"
-"Pakkene er delt inn i grupper som svarer til forskjellig typisk bruk av din "
-"maskin.\n"
-"Mandriva Linux har fire forhåndsdefinerte installasjoner tilgjengelig.\n"
-"Du kan mikse og matche applikasjoner fra forskjellige grupper, så en\n"
-"``Arbeidsstasjon''-installasjon kan fortsatt ha applikasjoner fra\n"
-"``Utvikling''-gruppa installert.\n"
+" * \"%s\": if you plan to use your machine as a workstation, select one or\n"
+"more of the groups in the workstation category.\n"
"\n"
-" * \"%s\": hvis du planlagger å bruke din maskin som arbeidsstasjon, velg\n"
-"en eller flere av applikasjonene som er i arbeidsstasjon-gruppen.\n"
+" * \"%s\": if you plan on using your machine for programming, select the\n"
+"appropriate groups from that category. The special \"LSB\" group will\n"
+"configure your system so that it complies as much as possible with the\n"
+"Linux Standard Base specifications.\n"
"\n"
-" * \"%s\": hvis du planlegger å bruke maskinen til programmering, velg\n"
-"ønskede grupper fra den kategorien. Den spesielle «LSB»-gruppen vil\n"
-"sette opp systemet ditt slik at den samsvarer mest mulig med\n"
-"Linux Standard Base spesifikasjonene.\n"
+" Selecting the \"LSB\" group will ensure 100%%-LSB compliance\n"
+"of the system. However, if you do not select the \"LSB\" group you will\n"
+"still have a system which is nearly 100%% LSB-compliant.\n"
"\n"
-" * \"%s\": hvis maskinen skal brukes som tjener, velg hvilke av de mer "
-"vanlige\n"
-"tjenestene som du ønsker installert på din maskin.\n"
+" * \"%s\": if your machine is intended to be a server, select which of the\n"
+"more common services you wish to install on your machine.\n"
"\n"
-" * \"%s\": det er her du kan velge ditt ønskede grafiske miljø. Du\n"
-"må velge minst ett hvis du ønsker å ha ett grafisk grensesnitt "
-"tilgjengelig.\n"
+" * \"%s\": this is where you will choose your preferred graphical\n"
+"environment. At least one must be selected if you want to have a graphical\n"
+"interface available.\n"
+"\n"
+"Moving the mouse cursor over a group name will display a short explanatory\n"
+"text about that group.\n"
"\n"
-"Ved å flytte musepekeren over et gruppenavn vil en kort forklarende tekst\n"
-"dukke opp over den gruppen.\n"
+"You can check the \"%s\" box, which is useful if you're familiar with the\n"
+"packages being offered or if you want to have total control over what will\n"
+"be installed.\n"
"\n"
-"Du kan merke av i «%s»-boksen, som er nyttig hvis du er kjent med\n"
-"pakkene som blir tilbudt, ellr du vil ha total kontroll over hva som vil "
-"bli\n"
-"installert.\n"
-"Hvis du starter installasjonen i «%s»-modus trenger du ikke å velge noen "
-"grupper\n"
-"og hindre installasjon av alle nye pakker. Dette er nyttig for å reparere\n"
-"eller oppdatere et allerede installert system.\n"
+"If you start the installation in \"%s\" mode, you can deselect all groups\n"
+"and prevent the installation of any new packages. This is useful for\n"
+"repairing or updating an existing system.\n"
"\n"
-"Hvis du ikke velger noen grupper når du utfører en normal installasjon (i\n"
-"motsetning til en oppgradering) vil en dialogboks dukke opp og foreslå\n"
-"forskjellige valg for en minimal installasjon:\n"
+"If you deselect all groups when performing a regular installation (as\n"
+"opposed to an upgrade), a dialog will pop up suggesting different options\n"
+"for a minimal installation:\n"
"\n"
-"* \"%s\": installer et minimum av pakker som trengs for å ha et fungerende\n"
-"grafisk skrivebord.\n"
+" * \"%s\": install the minimum number of packages possible to have a\n"
+"working graphical desktop.\n"
"\n"
-" * \"%s\": installerer basesystemet pluss standard verktøy og dokumentasjon\n"
-"for disse. Denne installasjonen passer til å sette opp en server.\n"
+" * \"%s\": installs the base system plus basic utilities and their\n"
+"documentation. This installation is suitable for setting up a server.\n"
"\n"
-" * \"%s\" vil installere det absolutte minimum som er nødvendig for å få\n"
-"Linux systemet opp og gå. Med denne installasjonen så vil du\n"
-"kun ha et kommandolinje-grensesnitt. Denne installasjonen er på rundt 65 "
-"megabyte."
+" * \"%s\": will install the absolute minimum number of packages necessary\n"
+"to get a working Linux system. With this installation you will only have a\n"
+"command-line interface. The total size of this installation is about 65\n"
+"megabytes."
#: ../help.pm:149 ../help.pm:591
#, c-format
@@ -370,10 +370,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -393,43 +393,47 @@ msgid ""
"another installation. See the second tip of the last step on how to create\n"
"such a floppy."
msgstr ""
-"Hvis du fortalte installasjonsrutinen at du ønsket å velge enkeltpakker,\n"
-"så vil du få se ett tre som innholder alle pakkene sortert etter grupper\n"
-"og undergrupper. Når du blar gjennom treet, kan du velge grupper, \n"
-"undergrupper eller individuelle pakker.\n"
-"\n"
-"Når du velger en pakke i treet, vil en beskrivelse dukke opp til høyre\n"
-"side for å la deg vite hva pakkens hensikt er.\n"
-"\n"
-"!! Hvis en tjenerpakke har blitt valgt, enten på grunn av at du valgte den "
-"spesifikt\n"
-"eller fordi den var medlem av en gruppe pakker, vil du bli bedt om å "
-"bekrefte at du\n"
-"virkelig ønsker å installere de valgte tjenerne.\n"
-"Som standard i Mandriva Linux vil alle installerte tjenere bli startet ved "
-"oppstart.\n"
-"Selv om de er sikre og ikke har noen kjente sikkerhetshull når denne "
-"distribusjonen\n"
-"ble sluppet,\n"
-"så kan det være at sikkerhetshull ble oppdaget etter at denne versjonen\n"
-"av Mandriva Linux ble sluppet. Hvis du ikke vet hva en type tjener gjør, "
-"eller\n"
-"hvorfor den blir installert, klikk «%s».\n"
-"«%s» vil installere de listede tjenerene og de vil bli\n"
-"startet automatisk som standard under oppstart. !!\n"
-"\n"
-"«%s»-valget er brukt for å deaktivere advarselsdialogen som vises\n"
-"når installasjonen automatisk velger en pakke for å løse avhengigheter.\n"
-"Noen pakker er avhengig av at andre pakker er installert.\n"
-"Installasjonsprogrammet kan finne ut hvilke pakker som trengs for å\n"
-"oppfylle avhengigheten til en pakke for å utføre en vellykket installasjon.\n"
-"\n"
-"Det lille diskett-ikonet på bunnen av denne listen lar deg laste en\n"
-"pakkeliste lagd under en tidligere installasjon. Dette er nyttig hvis du\n"
-"har flere maskiner som du vil sette opp identisk. Ved å klikke på dette\n"
-"ikonet vil du bli bedt om å sette inn disketten laget ved slutten av\n"
-"en annen installasjon. Se det andre tipset i det siste steget om hvordan du\n"
-"kan lage en slik diskett."
+"Hvis du velger å installere pakker individuelt, vil installasjonsprogrammet "
+"vises\n"
+"et tre som inneholder alle pakker klassifisert etter grupper og "
+"undergrupper. Mens\n"
+"Når du blar gjennom treet, kan du velge hele grupper, undergrupper eller "
+"enkeltpersoner\n"
+"pakker.\n"
+"\n"
+"Hver gang du velger en pakke i treet, vil en beskrivelse vises på\n"
+"høyre side som viser deg formålet med den pakken.\n"
+"\n"
+"!! Hvis en serverpakke er valgt, enten fordi du spesifikt\n"
+"valgte den individuelle pakken eller fordi den er en del av en gruppe av "
+"pakker,\n"
+"vil du bli bedt om å bekrefte at du virkelig vil at disse pakkene skal "
+"installeres. Som standard vil Mageia automatisk starte alle installerte\n"
+"tjenester ved oppstart. Selv om de er trygge og ikke har noen kjente "
+"problemer på\n"
+"den tiden distribusjonen ble sendt, er det fullt mulig at\n"
+"sikkerhetshull ble oppdaget etter at denne versjonen av Mageia ble utgitt. "
+"Hvis du ikke vet hva en bestemt tjeneste skal gjøre eller\n"
+"hvorfor det blir installert, klikk deretter \"%s\". Ved å klikke på \"%s\" "
+"installeres\n"
+"de listede tjenestene, og de vil startes automatisk ved oppstart. !!\n"
+"\n"
+"Alternativet \"%s\" brukes til å deaktivere advarselsdialogen som vises\n"
+"når installasjonsprogrammet automatisk velger en pakke for å løse et\n"
+"avhengighetsproblem. Noen pakker avhenger av andre og installasjonen av\n"
+"én bestemt pakke kan kreve installasjon av en annen pakke. De\n"
+"installasjonsprogrammet kan bestemme hvilke pakker som kreves for å "
+"tilfredsstille en avhengighet for å fullføre installasjonen.\n"
+"\n"
+"Det lille diskettikonet nederst på listen lar deg laste inn en\n"
+"pakkeliste opprettet under en tidligere installasjon. Dette er nyttig hvis "
+"du\n"
+"har en rekke maskiner som du ønsker å konfigurere identisk. Klikker\n"
+"på dette ikonet vil du be deg om å sette inn disketten som ble opprettet på "
+"slutten av\n"
+"en annen installasjon. Se det andre tipset i det siste trinnet om hvordan du "
+"oppretter\n"
+"en slik diskett."
#: ../help.pm:183
#, c-format
@@ -512,7 +516,7 @@ msgstr ""
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Maskinvareklokke satt til GMT"
#: ../help.pm:213
#, c-format
@@ -550,7 +554,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -604,72 +608,64 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
-"X (for X Window System) er hjertet i GNU/Linux sitt grafiske grensesnitt "
-"som\n"
-"alle de grafiske miljøene (KDE, GNOME Afterstep, Windowmaker osv.)\n"
-"som følger med Mandriva Linux er avhengige av.\n"
+"X (for X Window System) er hjertet i GNU/Linux grafiske grensesnitt\n"
+"der alle de grafiske miljøene (KDE, GNOME, AfterStep,\n"
+"WindowMaker, etc.) sammen med Mageia stole på.\n"
"\n"
-"Du vil få en liste med forkjellige parametre som kan forandres for å få et\n"
-"optimalt grafisk grensesnitt: \n"
+"Du vil se en liste over forskjellige parametere som skal endres for å få en "
+"optimal\n"
+"grafisk visning.\n"
"\n"
-"Skjermkort\n"
+"Grafikkort\n"
"\n"
-" Installasjonsrutinen kan vanligvis automatisk oppdage og sette opp\n"
-"skjermkortet som er installert i din maskin. Dersom dette ikke er tilfellet, "
-"kan\n"
-"du velge det kortet du faktisk har installert, fra denne listen.\n"
+"Installasjonsprogrammet vil normalt automatisk oppdage og konfigurere\n"
+"grafikkortet installert på maskinen din. Hvis dette ikke er riktig, kan du\n"
+"velg fra denne listen kortet du faktisk har installert.\n"
"\n"
-" I tilfelle det er flere tjenere tilgjengelig for ditt kort, med eller "
-"uten\n"
-"3D-akselerasjon, vil du så kunne velge den tjeneren som best passer\n"
-"dine behov.\n"
+"I situasjonen der forskjellige servere er tilgjengelige for kortet ditt,\n"
+"med eller uten 3D-akselerasjon, blir du bedt om å velge hvilken server\n"
+"passer best til dine behov.\n"
"\n"
"\n"
"\n"
-"Skjerm\n"
+"Overvåk\n"
"\n"
-" Installasjonsrutinen kan normalt automatisk oppdage og sette opp "
-"skjermen\n"
-"som er koblet til din maskin. Hvis dette ikke er korrekt, kan du velge "
-"skjermen du\n"
-"faktisk har fra listen.\n"
+"Normalt vil installasjonsprogrammet automatisk oppdage og konfigurere\n"
+"monitor koblet til maskinen din. Hvis det ikke er riktig, kan du velge\n"
+"fra denne listen skjermen som er koblet til datamaskinen.\n"
"\n"
"\n"
"\n"
"Oppløsning\n"
"\n"
-" Her kan du velge hvilke oppløsninger og fargedybder du vil bruke fra de "
-"som\n"
-"er tilgjengelige for din maskinvare. Velg den kombinasjonen som best passer\n"
-"dine behov (Du kan forandre dette etter installasjon). En prøve av det "
-"valgte\n"
-"oppsettet vil vises i skjermen.\n"
+"Her kan du velge oppløsninger og fargedybder som er tilgjengelige for din\n"
+"grafikk maskinvare. Velg den som best passer dine behov (det vil du være\n"
+"kan gjøre endringer etter installasjonen). Et utvalg av de utvalgte\n"
+"konfigurasjonen vises på monitorbildet.\n"
"\n"
"\n"
"\n"
"Test\n"
"\n"
-" Avhengig av din maskinvare vil denne oppføringen kanskje ikke vises.\n"
+"Avhengig av maskinvaren din, kan det hende at denne oppføringen ikke vises.\n"
"\n"
-" systemet vil forsøke å starte en grafisk skjerm med den valgte\n"
-"oppløsningen. Dersom du kan se meldingen som vises under testen og \n"
-"svarer \"%s\" vil DrakX fortsette til neste trinn. Hvis du ikke kan se "
-"meldingen\n"
-"betyr det at en del av oppsettet er gal, og testen vil avsluttes etter 12\n"
-"sekunder. Du vil da bli tatt tilbake til menyen. Forandre innstillingene til "
-"du får\n"
-"et oppsett som fungerer. \n"
+"Systemet vil prøve å åpne en grafisk skjerm på ønsket\n"
+"oppløsning. Hvis du ser testmeldingen under testen og svarer \"%s\",\n"
+"så vil DrakX gå videre til neste trinn. Hvis du ikke ser det, så det\n"
+"betyr at en del av den automatisk oppdagede konfigurasjonen var feil og\n"
+"testen avsluttes automatisk etter 12 sekunder og returnerer deg til\n"
+"meny. Endre innstillinger til du får en korrekt grafisk visning.\n"
"\n"
"\n"
"\n"
-"Valg\n"
+"Alternativer\n"
"\n"
-" Her kan du velge om du vil at maskinen automatisk skal starte det "
-"grafiske\n"
-"grensesnittet når maskinen starter. Du vil selvsagt ønske å sjekke av for \"%"
-"s\"\n"
-"dersom maskinen skal fungere som en tjener, eller om du ikke fikk satt opp\n"
-"det grafiske grensesnittet riktig."
+"Disse trinnene lar deg velge om du vil at maskinen skal gjøre det\n"
+"automatisk bytte til et grafisk grensesnitt ved oppstart. Det er klart du "
+"kan\n"
+"ønsker å sjekke \"%s\" om maskinen din skal fungere som en server, eller om "
+"du var det\n"
+"ikke lykkes med å få skjermen konfigurert."
#: ../help.pm:291
#, c-format
@@ -735,39 +731,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -776,15 +776,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -797,79 +797,63 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Du må nå avgjøre hvor du ønsker å installere Mandriva Linux-"
-"operativsystemet\n"
-"på din harddisk. Hvis din harddisk er tom, eller et eksisterende\n"
-"operativsystem benytter all plassen som er tilgjengelig, vil du bli nødt til "
-"å\n"
-"ompartisjonere disken. Partisjonering av en harddisk vil si å dele den inn "
-"i\n"
-"logiske enheter for å skape plassen som trengs for å installere ditt nye\n"
-"Mandriva Linux-system.\n"
-"\n"
-"Ettersom partisjoneringsprosessen ikke kan tilbakestilles, og kan føre til "
-"tapte\n"
-"data hvis det allerede finnes et operativsystem på disken, kan "
-"partisjonering\n"
-"virke skremmendes dersom du er en uerfaren bruker. Heldigvis har DrakX en\n"
-"veiviser som forenkler denne prosessen. Før du fortsetter installasjonen, "
-"bør\n"
-"du lese gjennom resten av denne teksten, og ikke minst: Ta deg god tid.\n"
-"\n"
-"Avhengig av ditt harddiskoppsett, er flere valg tilgjengelige:\n"
-"\n"
-" *«%s»: dette valget utfører automatisk partisjonering av dine\n"
-"harddisker. Dersom du velger dette, vil det ikke ble stilt flere spørsmål.\n"
-"\n"
-" * «%s»: veiviseren har funnet en eller flere linux-partisjoner på "
-"harddisken\n"
-"din. Hvis du vil bruke disse, velg dette valget. Du vil bli spurt om å angi\n"
-"monteringspunkter for hver partisjon. De allerede oppsatte "
-"monteringspunktene\n"
-"er valgt som standard, og det er normalt lurt å beholde disse.\n"
-"\n"
-" * \"%s\": hvis Microsoft Windows er installert på din harddisk, og tar all "
-"tilgjengelig\n"
-"plass, må du lage ledig plass for GNU/Linux. For å oppnå dette, kan du enten "
-"slette\n"
-"hele Microsoft Windows-partisjonen med tilhørende data (Se ``Slett hele "
-"disken''-valget),\n"
-"eller forandre størrelsen på din Microsoft Windows FAT- eller NTFS-"
-"partisjon.\n"
-"Forandring av diskstørrelse kan utføres uten tap av data forutsatt at du "
-"har\n"
-"defragmentert Windows-partisjonen. Det anbefales sterkt at du tar \n"
-"sikkerhetskopi av dine data. Dette valget er anbefalt, dersom du ønsker \n"
-"å kjøre både Mandriva Linux og Microsoft Windows på samme maskin.\n"
-"\n"
-" Før du velger dette valget, må du være klar over at størrelsen på din\n"
-"Microsoft Windows-partisjon vil være mindre enn når du startet. Du vil \n"
-"dermed ha mindre ledig plass under Microsoft Windows til å lagre data \n"
-"og installere programvare på.\n"
-"\n"
-" * \"%s\": hvis du ønsker å slette alle partisjoner og data, og erstatte dem "
-"med ditt\n"
-"nye Mandriva Linux-system, så velg dette valget. Vær forsiktig, du vil ikke "
-"kunne gjøre\n"
-"om dette etter at du har bekreftet valget.\n"
-"\n"
-" !! Hvis du velger dette valget, vil alle data på harddisken bli "
-"slettet. !!\n"
-"\n"
-" * \"%s\": dette vil enkelt og greit slette alt fra harddisken og starte en "
-"ny partisjonering\n"
-"fra bunn av. Alle data på harddisken vil bli tapt.\n"
-"\n"
-" !! Hvis du velger dette valget, vil du miste alle data på harddisken. !!\n"
-"\n"
-" * \"%s\": velg dette dersom du vil partisjonere disken manuelt.\n"
-"Vær forsiktig -- dette er en kraftig, men farlig operasjon, og du kan lett "
-"miste alle\n"
-"dine eksisterende data. Derfor er dette valget kun anbefalt dersom du har "
-"gjort\n"
-"dette før, og har en del erfaring. For mer veiledning i bruk av DiskDrake-"
-"verktøyet\n"
-"se kapittelet ``Managing Your Partitions''-seksjonen i ``Starter Guide''."
+"Du må nå bestemme hvor på harddisken du vil installere Mageia "
+"operativsystemet. Hvis harddisken er tom eller hvis et eksisterende "
+"operativsystem bruker all tilgjengelig plass må du partisjonere enheten. I "
+"utgangspunktet betyr partisjonering av en harddisk  logisk å dele den for å "
+"skape plassen som trengs for å installere den nye Mageia systemet.\n"
+"\n"
+"Fordi prosessen med å partisjonere en harddisk vanligvis er irreversibel og "
+"kan føre til tap av data, kan partisjoneringen være skremmende og stressende "
+"for en uerfarne bruker. Heldigvis inkluderer DrakX en veiviser som forenkler "
+"denne prosessen. Før du fortsetter med dette trinnet, les gjennom resten av "
+"denne delen og fremfor alt, ta deg god tid.\n"
+"\n"
+"Avhengig av konfigurasjonen av harddisken, er det flere alternativer "
+"tilgjengelig: \n"
+" * \"%s\". Dette alternativet vil utføre en automatisk partisjonering av den "
+"tomme delen disk(er). Hvis du bruker dette alternativet vil det ikke være "
+"flere spørsmål.\n"
+" * \"%s\". Veiviseren har oppdaget en eller flere eksisterende Linux-"
+"partisjoner på harddisken din. Hvis du vil bruke dem, velg dette "
+"alternativet. Du vil da bli bedt om å velge monteringspunktene knyttet til "
+"hver enkelt av partisjonene.\n"
+"De eldre monteringspunktene er valgt som standard, og for det meste er det "
+"det en god idé å beholde dem.\n"
+"* \"%s\". Hvis Microsoft Windows er installert på harddisken og tar all "
+"plassen som er tilgjengelig på den, må du frigjøre ledig plass forGNU/Linux. "
+"For å gjøre det kan du slette Microsoft Windows-partisjonen og data (se "
+"løsningen ``Slett hele disken'') eller endre størrelsen på Microsoft "
+"Windows\n"
+"FAT- eller NTFS-partisjon. Endre størrelse kan utføres uten tap av data, "
+"forutsatt at du tidligere har defragmentert Windows-partisjonen.\n"
+"\n"
+"Det anbefales på det sterkeste å sikkerhetskopiere dataene dine. Å bruke "
+"dette alternativet anbefales hvis du vil bruke både Mageia og Microsoft "
+"Windows på samme datamaskin.\n"
+"\n"
+"Før du velger dette alternativet, vennligst forstå at det etter denne "
+"prosedyren, vil størrelsen på Microsoft Windows-partisjonen være mindre enn "
+"da du startet. Du vil ha mindre ledig plass under Microsoft Windows til å "
+"lagre dataene dine eller for å installere ny programvare.\n"
+"\n"
+" * \"%s\". Hvis du ønsker å slette alle data og alle partisjoner som finnes "
+"på harddisken og erstatte dem med ditt nye Mageia-system, velg dette "
+"alternativet. Vær forsiktig, for du vil ikke kunne angre denne operasjonen "
+"etter at du har bekreftet.\n"
+"\n"
+" !! Hvis du velger dette alternativet, vil alle data på disken slettes. !!\n"
+" * \"%s\". Dette alternativet vises når harddisken er fullstendig tatt av "
+"Microsoft Windows. Å velge dette alternativet vil ganske enkelt slette alt.\n"
+"\n"
+" !! Hvis du velger dette alternativet, vil alle data på disken gå tapt. !!\n"
+"\n"
+" * \"\"%s. Velg dette alternativet hvis du vil manuelt partisjonere disken. "
+"Vær forsiktig - det er et kraftig, men farlig valg, og du kan veldig fort "
+"miste alle dataene dine. Derfor kan dette alternativet egentlig bare "
+"anbefales hvis du har gjort noe slikt før og har erfaring. For flere "
+"instruksjoner om hvordan du bruker DiskDrake-verktøyet, Se avsnittet "
+"``Administrere partisjonene dine'' i ``Starter Guide''."
#: ../help.pm:377
#, c-format
@@ -879,7 +863,7 @@ msgstr "Bruk eksisterende partisjon"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Bruk den ledige plassen på Microsoft Windows®-partisjonen"
#: ../help.pm:370
#, c-format
@@ -941,8 +925,8 @@ msgstr ""
" * «%s»: Dette er en delvis automatisert installasjon. Partisjonering er\n"
"den eneste interaktive prosedyren.\n"
"\n"
-" * «%s»: Dette er en fullstendig automatisert installasjon: harddisken vil "
-"bli\n"
+" * «%s»: Dette er en fullstendig automatisert installasjon: harddisken "
+"vil bli\n"
"helt overskrevet, og alle data vil bli overskrevet.\n"
"\n"
" Denne funksjonen er nyttig når du skal installere et antall identiske "
@@ -970,17 +954,17 @@ msgstr "Generer autoinstallasjonsdiskett"
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Spill på nytt"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Automatisert"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Lagre pakkevalg"
#: ../help.pm:408
#, c-format
@@ -1002,39 +986,37 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
msgstr ""
-"Hvis du valgte å bruke noen gamle GNU/Linux-partisjoner, kan det\n"
-" hende du ønsker å omformatere enkelte\n"
-"eksisterende partisjoner for å slette data på disse. Hvis du ønsker å\n"
-"gjøre dette, kan du velge disse partisjonene også.\n"
-"(å formatere betyr å opprette ett filsystem)\n"
+"Hvis du velger å gjenbruke eldre GNU/Linux-partisjoner, kan det være lurt å "
+"re- formatere de på nytt og slett alle data de inneholder. For å gjøre det, "
+"velg disse partisjonene også.\n"
"\n"
-"Legg merke til at det ikke er nødvendig å formatere alle eksisterende\n"
-"partisjoner. Du må reformatere partisjonene som skal innholde\n"
-"operativsystemet (som «/», «/usr» eller «/var»), men du trenger ikke\n"
-"å omformatere partisjoner som inneholder data du vil beholde\n"
-"(typisk «/home»).\n"
+"Vær oppmerksom på at det ikke er nødvendig å re-formatere alle eksisterende\n"
+"partisjoner. Du må formatere partisjonene som inneholder operativsystemet "
+"(som \"/\", \"/usr\" eller \"/var\"), men du trenger ikke å formatere på "
+"nytt partisjoner som inneholder data du ønsker å beholde (vanligvis \"/"
+"home\").\n"
"\n"
-"Vær forsiktig når du velger partisjoner. Etter formatering vil alle data\n"
-"på de valgte partisjonene bli slettet uten at du kan hente dataene\n"
-"tilbake.\n"
+"Vær forsiktig når du velger partisjoner. Etter formateringen er fullført, "
+"vil alle data på de valgte partisjonene bli slettet og du vil ikke kunne "
+"gjenopprette den.\n"
"\n"
-"Klikk «%s» når du er klar til å formatere partisjonene.\n"
+"Klikk på \"%s\" når du er klar til å formatere partisjonene.\n"
"\n"
-"Klikk «%s» om du vil velge andre partisjoner for din nye\n"
-"Mandriva Linux-operativsysteminstallasjon. \n"
+"Klikk på \"%s\" hvis du vil velge en annen partisjon for din nye "
+"Installasjon av Mageia operativsystemet.\n"
"\n"
-"Klikk på «%s» hvis du ønsker å velge partisjoner som skal sjekkes for\n"
-"ødelagte blokker på disken."
+"Klikk på \"%s\" hvis du ønsker å velge partisjoner som skal sjekkes for "
+"dårlige blokker på disken."
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1046,17 +1028,17 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Når du installerer Mandriva Linux, er det sannsynlig at enkelte pakker\n"
-"er blitt oppdatert siden denne versjonen ble sluppet. Noen feil kan ha\n"
-"blitt fikset, eller sikkerhetsproblemer løst. For at du skal få utnytte\n"
-"disse forbedringene kan du nå laste dem ned fra internett. Kryss av «%s»\n"
-"dersom du har en fungerende internettforbindelse, eller «%s» dersom\n"
-"du heller vil installere oppdateringene senere.\n"
-"\n"
-"Når du velger «%s» får du en liste over tjenere som oppdateringene kan\n"
-"lastes ned fra. Velg en som er nærmest deg. Et pakkevalgstre vil da\n"
-"dukke opp. Gå gjennom valgene, og klikk «%s» for å hente og installere\n"
-"de(n) valgte pakkene(ne), eller «%s» for å avbryte."
+"Før du installerer Mageia, er det sannsynlig at noen pakker har blitt "
+"oppdatert siden den første utgivelsen. Feil kan ha blitt fikset, "
+"sikkerhetsproblemer løst. For å la deg dra nytte av disse oppdateringene, "
+"kan du nå laste dem ned fra Internett. Sjekk \"%s\" hvis du\n"
+"har en fungerende Internett-tilkobling, eller \"\"%s hvis du foretrekker å "
+"installere oppdaterte pakker senere.\n"
+"\n"
+"Hvis du velger \"%s\" vil du vise en liste over nettplasseringer som "
+"oppdateringer kan fra bli hentet. Du bør velge en nær deg. Et tre for "
+"pakkevalg vil vises: gå gjennom utvalget, og trykk \"%s\" for å hente og "
+"installere den(ne) valgte pakken(e), eller \"%s\" for å avbryte."
#: ../help.pm:450
#, c-format
@@ -1068,25 +1050,24 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
"security. Security messages will be sent to that address."
msgstr ""
-"På dette punktet vil DrakX la deg velge sikkerhetsnivået som er ønsket for\n"
-"maskinen. Som en tommelfingerregel bør sikkerhetsnivået settes høyere,\n"
-"hvis maskinen skal ha viktige data lagret der, eller hvis den skal være\n"
-"direkte tilgjengelig på internettet. Men, et høyere sikkerhetsnivå går \n"
-"gjerne på bekostning av brukervennligheten.\n"
-"\n"
-"Hvis du ikke vet hva du skal velge, behold standardvalget. Du vil kunne\n"
-"endre sikkerhetsnivået senere med verktøyet draksec fra Mandriva Linux\n"
+"På dette tidspunktet lar DrakX deg velge sikkerhetsnivået du ønsker\n"
+"for maskinen din. Som en tommelfingerregel bør sikkerhetsnivået settes "
+"høyere hvis maskinen skal inneholde kritiske data, eller om den skal være "
+"direkte eksponert mot Internett. Avveiningen om et høyere sikkerhetsnivå er "
+"vanligvis oppnådd på bekostning av brukervennlighet.\n"
+"\n"
+"Hvis du ikke vet hva du skal velge, beholder du standardalternativet. Du vil "
+"kunne endre det senere med draksec-verktøyet, som er en del av Mageia "
"Kontrollsenter.\n"
"\n"
-"'%s'-feltet kan informere systemet om den bruker på systemet som\n"
-"vil være ansvarlig for sikkerheten. Sikkerhetsbeskjeder vil bli sendt til\n"
-"denne adressen."
+"Fyll \"%s\"-feltet med e-postadressen til den ansvarlige for sikkerhet. "
+"Sikkerhetsmeldinger vil bli sendt til den adressen."
#: ../help.pm:461
#, c-format
@@ -1097,21 +1078,24 @@ msgstr "Sikkerhetsadministrator"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1127,21 +1111,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1158,109 +1144,96 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"På dette punktet må du velge hvilke partisjon(er) som skal brukes til å\n"
-"installere ditt nye Mandriva Linux-system på. Hvis partisjoner allerede har\n"
-"blitt definert enten fra en tidligere installasjon av GNU/Linux eller fra et "
+"På dette tidspunktet må du velge hvilken(e) partisjon(er) som skal brukes "
+"til\n"
+"installasjonen av ditt Mageia-system. Hvis partisjoner allerede har vært\n"
+"definert, enten fra en tidligere installasjon av GNU/Linux eller av et "
"annet\n"
-"partisjoneringsverktøy, kan du bruke eksisterende partisjoner. I andre\n"
-"tilfeller må harddiskpartisjoner defineres.\n"
+"partisjoneringsverktøy, kan du bruke eksisterende partisjoner. Ellers må "
+"disk\n"
+"partisjoner defineres.\n"
"\n"
-"For å opprette partisjoner må du først velge en harddisk. Du kan velge disk\n"
-"for partisjonering ved å klikke på ``hda'' for den første IDE-disken,\n"
-"``hdb'' for den andre eller ``sda'' for den første SCSI-disken osv.\n"
+"For å lage partisjoner må du først velge en harddisk. Du kan velge disken "
+"for partisjonering ved å klikke på ``hda'' for den første IDE-stasjonen,"
+"``hdb'' for den andre, ``sda'' for den første SCSI-stasjonen og så videre.\n"
"\n"
-"For å partisjonere den valgte harddisken kan du bruke disse valgene:\n"
+"For å partisjonere den valgte harddisken kan du bruke disse alternativene:\n"
"\n"
-" * \"%s\": dette valget sletter alle partisjoner tilgjengelig på den valgte "
-"harddisken.\n"
+"* \"%s\": dette alternativet sletter alle partisjoner på den valgte "
+"harddisken\n"
"\n"
-" * \"%s\": dette valget lar deg automatisk opprette ext3 og\n"
-"swappartisjoner på din harddisk's ledige plass.\n"
+"* \"%s\": dette alternativet lar deg automatisk opprette ext4 og bytte\n"
+"partisjoner i den ledige plassen på harddisken\n"
"\n"
-"\"%s\": gir deg tilgang til ekstra finesser:\n"
+"\"%s\": gir tilgang til tilleggsfunksjoner:\n"
"\n"
-" * \"%s\":lagrer partisjonstabellen din på en diskett. Nyttig hvis "
-"partisjonen\n"
-"trengs å gjenopprettes senere. Det anbefales på det sterkeste at du utfører "
-"dette trinn.\n"
+"* \"%s\": lagrer partisjonstabellen til en diskett. Nyttig for senere "
+"gjenoppretting av partisjonstabell om nødvendig. Det anbefales på det "
+"sterkeste at du utfører dette trinnet.\n"
"\n"
-" * \"%s\": gir deg muligheten til å gjenopprette en tidligere lagret "
-"partisjonstabell\n"
-"fra en diskett.\n"
+"* \"%s\": lar deg gjenopprette en tidligere lagret partisjonstabell fra en "
+"diskett.\n"
"\n"
-" * \"%s\": hvis partisjonstabellen din er skadet kan du forsøke å redde den "
-"ved å\n"
-"bruke dette valget. Vær forsiktig og husk at det kan gå galt.\n"
+"* \"%s\": hvis partisjonstabellen din er skadet, kan du prøve å gjenopprette "
+"den\n"
+"ved å bruke dette alternativet. Vær forsiktig og husk at det ikke alltid "
+"fungerer\n"
"\n"
-" * \"%s\": ignorerer alle forandringer og laster inn harddiskens "
-"opprinnelige\n"
-"partisjonstabell på nytt.\n"
+"* \"%s\": forkaster alle endringer og laster inn partisjonstabellen som var\n"
+"opprinnelig på harddisken.\n"
"\n"
-" * \"%s\": ved å sjekke vekk dette valget, så vil brukere bli nødt til å "
-"manuelt montere\n"
-"og avmontere flyttbare medium som disketter og CDer.\n"
+"* \"%s\": fjerner du merket for dette alternativet tvinges brukere til å "
+"montere, og manuelt\n"
+"demonter flyttbare medier som disketter og CD-ROMer.\n"
"\n"
-" * \"%s\": bruk dette valget om du vil bruke en veiviser for å partisjonere\n"
-"harddisken din. Dette er anbefalt om du ikke har gode nok kunnskaper om\n"
+"* \"%s\": bruk dette alternativet hvis du ønsker å bruke en veiviser for å "
+"partisjonere\n"
+"harddisken din. Dette anbefales hvis du ikke har god forståelse for "
"partisjonering.\n"
"\n"
-" * \"%s\": du kan bruke dette valget til å forkaste endringene dine.\n"
-"\n"
-" * \"%s\": gir deg ekstra valg under partisjoneringen (type, instillinger, "
-"format)\n"
-"og gir deg mere informasjon om harddisken.\n"
+"* \"%s\": bruk dette alternativet for å avbryte endringene.\n"
"\n"
-" * \"%s\": når du er ferdig med å partisjonere harddisken din, så bruk dette "
-"valget\n"
-"for å lagre endringene dine på disken.\n"
+"* \"%s\": tillater flere handlinger på partisjoner (type, alternativer, "
+"format) og gir mer informasjon om harddisken.\n"
"\n"
-"Når du definerer størrelsen på en partisjon, så kan du finjustere størrelsen "
-"med\n"
-"piltastene på tastaturet ditt.\n"
+"* \"%s\": når du er ferdig med å partisjonere harddisken, vil dette\n"
+"lagre endringene tilbake til disken.\n"
"\n"
-"Merk: du kan nå valgene ved å bruke tastaturet. . Naviger gjennom "
-"partisjonene ved å bruke [Tab] og [Opp/Ned]-piltastene.\n"
+"Når du definerer størrelsen på en partisjon, kan du fint angi partisjonen\n"
+"størrelse ved å bruke piltastene på tastaturet.\n"
"\n"
-"Når en partisjon er valgt kan du bruke:\n"
+"Merk: du kan nå alle alternativer ved å bruke tastaturet. Naviger gjennom\n"
+"partisjoner ved å bruke [Tab] og [Opp/Ned]-pilene.\n"
"\n"
-" * Ctrl-c for å opprette en ny partisjon (når en tom partisjon er valgt).\n"
+"Når en partisjon er valgt, kan du bruke:\n"
"\n"
-" * Ctrl-d for å slette en partisjon.\n"
+"* Ctrl-c for å opprette en ny partisjon (når en tom partisjon er valgt)\n"
"\n"
-" * Ctrl-m for å sette monteringspunktet.\n"
+"* Ctrl-d for å slette en partisjon\n"
"\n"
-"For å få informasjon om de forskjellige filsystemene som er tilgjengelige,\n"
-"vennlist les ext2FS-kapittelet fra ``Reference Manual''.\n"
+"* Ctrl-m for å angi monteringspunktet\n"
"\n"
-"Hvis du installerer på en PPC-maskin, så vil du nok lage en liten\n"
-"HFS-'bootstrap-partisjon' på minst en megabyte for bruk av\n"
-"yaboot-oppstartslasteren. Hvis du ønsker å lage partisjonen litt større,\n"
-"la oss si 50 MB, så kan du lagre en ekstra kjerne og ramdiskbilde for "
-"nødsituasjoner."
+"For å få informasjon om de forskjellige filsystemtypene som er "
+"tilgjengelige, vennligst\n"
+"les ext2FS-kapittelet fra ``Reference Manual''.\n"
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Lagre partisjonstabell"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Gjenopprett partisjonstabell"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Redningspartisjonstabell"
#: ../help.pm:526
#, c-format
@@ -1270,12 +1243,12 @@ msgstr "Automontering av fjernbart media"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Veiviser"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Angre"
#: ../help.pm:526
#, c-format
@@ -1285,66 +1258,72 @@ msgstr "Skift mellom normal-/ekspert-modus"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
-"Mer enn en Microsoft Windows-partisjon har blitt oppdaget på harddisken "
-"din.\n"
-"Velg den du ønsker å endre størrelsen på for å installere ditt nye\n"
-"Mandriva Linux-operativsystem.\n"
+"Mer enn én Microsoft-partisjon har blitt oppdaget på harddisken.\n"
+"Vennligst velg den du vil endre størrelsen på for å installere det nye\n"
+"Operativsystemet Mageia.\n"
"\n"
-"Hver partisjon er listet som følger: \"Linux-navn\",\n"
-" \"Windows-navn\", \"Kapasitet\".\n"
+"Hver partisjon er oppført som følger: \"Linux-navn\", \"Windows-navn\"\n"
+"\"Kapasitet\".\n"
"\n"
-"\"Linux-navn\" er kodet som følger: \"harddisktype\", \"harddisknummer\",\n"
-"\"partisjonsnummer\" (f.eks., \"hda1\").\n"
+"\"Linux-navn\" er strukturert: \"harddiskstasjonstype\", "
+"\"harddiskstasjonsnummer\",\n"
+"\"partisjonsnummer\" (for eksempel \"hda1\").\n"
"\n"
-"\"Harddisktype\" er \"hd\" hvis harddisken din er en IDE harddisk og\n"
-"\"sd\" hvis det er en SCSI harddisk.\n"
+"\"Harddisk drive type\" er \"hd\" hvis harddisken din er en IDE-harddisk og\n"
+"\"sd\" hvis det er en SCSI-harddisk.\n"
"\n"
-"\"Harddisknummer\" er alltid en bokstav etter \"hd\" eller \"sd\". Med\n"
-"IDE-harddisker:\n"
+"\"Harddisknummer\" er alltid en bokstav etter \"hd\" eller \"sd\". Med IDE\n"
+"harddisker:\n"
"\n"
-" * \"a\" betyr \"master-harddisk på primær IDE kontroller\",\n"
+"* \"a\" betyr \"hovedharddisk på den primære IDE-kontrolleren\";\n"
"\n"
-" * \"b\" betyr \"slave-harddisk på primær IDE kontroller\",\n"
+"* \"b\" betyr \"slave-harddisk på den primære IDE-kontrolleren\";\n"
"\n"
-" * \"c\" betyr \"master-harddisk på sekundær IDE kontroller\",\n"
+"* \"c\" betyr \"hovedharddisk på den sekundære IDE-kontrolleren\";\n"
"\n"
-" * \"d\" betyr \"slave-harddisk på sekundær IDE kontroller\".\n"
+"* \"d\" betyr \"slave-harddisk på den sekundære IDE-kontrolleren\".\n"
"\n"
-"Med SCSI-harddisker betyr en \"a\" en \"primær harddisk\", en \"b\" betyr "
-"\"sekundær harddisk\", osv.\n"
+"Med SCSI-harddisker betyr en \"a\" \"laveste SCSI-ID\", en \"b\" betyr\n"
+"\"nest laveste SCSI ID\" osv.\n"
"\n"
"\"Windows-navn\" er bokstaven på harddisken din under Windows (den første\n"
-"disken eller partisjonen er kalt \"C:\")."
+"disk eller partisjon kalles \"C:\")."
#: ../help.pm:567
#, c-format
@@ -1366,46 +1345,50 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
-"Dette trinnet blir bare aktivert dersom det blir funnet en eksisterende\n"
-"GNU/Linux-partisjon på maskinen din.\n"
-"\n"
-"DrakX trenger nå å vite om du vil utføre en ny installasjon eller en "
-"oppgradering\n"
-"av et eksisterende Mandriva Linux-system:\n"
-"\n"
-" * «%s»: Dette vil stort sett slette hele det gamle systemet. Dersom du\n"
-"ønsker å forandre hvordan harddiskene blir partisjonert, eller forandre på\n"
-"filsystemene, bør du velge dette. Men avhengig av hvordan du partisjonerer "
-"kan\n"
-"du avverge at noen av de gamle dataene blir overskrevet.\n"
-"\n"
-" * «%s»: Denne installasjonsklassen lar deg oppgradere pakkene som\n"
-"er installert på ditt nåværende Mandriva Linux-system. Dine nåværende\n"
-"partisjonsoppdelinger og brukerdata blir ikke berørt. De fleste andre "
-"oppsettstrinn\n"
-"forblir tilgjengelige, i likhet med en standard installasjon.\n"
-"\n"
-"«Oppgrader»-valget bør fungere fint på Mandriva Linux systemer som kjører\n"
-"versjon «8.1» eller nyere. Oppgradering av versjoner tidligere enn «8.1» er\n"
-" ikke anbefalt. "
+"Dette trinnet aktiveres bare hvis en eksisterende GNU/Linux-partisjon har "
+"blitt\n"
+"funnet på maskinen din.\n"
+"\n"
+"DrakX trenger nå å vite om du vil utføre en ny installasjon eller en\n"
+"oppgradering av et eksisterende Mageia-system:\n"
+"\n"
+"* \"%s\". For det meste utsletter dette det gamle systemet fullstendig.\n"
+"Avhengig av partisjoneringsskjemaet ditt kan du imidlertid forhindre noen "
+"av\n"
+"dine eksisterende data (spesielt \"hjemmekataloger\") fra å bli "
+"overskrevet.\n"
+"Hvis du ønsker å endre hvordan harddiskstasjonene er partisjonert, eller å "
+"endre\n"
+"filsystemet, bør du bruke dette alternativet.\n"
+"\n"
+"* \"%s\". Denne installasjonsklassen lar deg oppdatere pakkene\n"
+"installert på ditt Mageia-system. Din nåværende partisjonering\n"
+"skjema og brukerdata vil ikke bli endret. Det meste av den andre "
+"konfigurasjonen\n"
+"trinn forblir tilgjengelige og ligner på en standardinstallasjon.\n"
+"\n"
+"Å bruke alternativet \"Oppgradering\" bør fungere fint på Mageia-systemer\n"
+"kjører versjon \"8.1\" eller nyere. Utføre en oppgradering på tidligere "
+"versjoner\n"
+"til Mageia versjon \"8.1\" anbefales ikke."
#: ../help.pm:594
#, c-format
@@ -1464,8 +1447,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1493,46 +1475,48 @@ msgid ""
msgstr ""
"Det første trinnet er å velge ditt foretrukne språk.\n"
"\n"
-"Ditt valg av foretrukket språk vil påvirke språket til dokumentasjonen,\n"
-"installasjonsrutinen og systemet generelt. Velg først regionen du befinner\n"
-"deg i, og deretter språket du bruker.\n"
+"Ditt valg av foretrukket språk vil påvirke installasjonsprogrammet\n"
+"dokumentasjon og systemet generelt. Velg først regionen du er i, deretter "
+"språket du snakker.\n"
"\n"
-"Om du klikker på «%s»-knappen får du mulighet til å velge andre\n"
-"språk som du ønsker å installere på din arbeidsstasjon. Du installerer da\n"
-"samtidig de språkspesifikke filene for systemdokumentasjon og\n"
-"applikasjoner. Hvis du ønsker norsk som standardspråk, men også\n"
-"ønsker å tilrettelegge for spanske brukere på maskinen, kan du velge\n"
-"norsk som standardspråk i trevisningen, og «%s» i det avanserte avsnitt.\n"
+"Ved å klikke på \"%s\"-knappen kan du velge andre språksom skal\n"
+"installeres på arbeidsstasjonen din, og installerer derved de "
+"språkspesifikke\n"
+"filer for systemdokumentasjon og applikasjonene. For eksempel hvis spanske\n"
+"brukere skal bruke maskinen din, velg engelsk som standardspråk på\n"
+"trevisningen og \"%s\" i Avansert-delen.\n"
"\n"
-"Om UTF-8 (ISO 10646) støtte. ISO 10646 er en ny tegnsettskoding det\n"
-"er ment til å dekke alle eksisterende språk. Men full støtte for det i GNU/"
-"Linux er\n"
-"stadig under utvikling. Av denne grunnen vil Mandriva Linux bruke det\n"
-"eller ei avhengig av brukerens valg:\n"
+"Om UTF-8 (unicode) støtte: Unicode er en ny tegnkoding ment å\n"
+"dekker alle eksisterende språk. Men full støtte for det i GNU/Linux er\n"
+"fortsatt under utvikling. Av den grunn vil Mageias bruk av UTF-8\n"
+"avhenger av brukerens valg:\n"
"\n"
-" * Hvis du velger et språk med sterk binding til gammel kodnng (latin1-\n"
+"* Hvis du velger et språk med en sterk eldre koding (latin1\n"
"språk, russisk, japansk, kinesisk, koreansk, thai, gresk, tyrkisk, de "
"fleste\n"
-"ISO-8859-2-språk) vil den gamle kodingen bli brukt som standard;\n"
+"iso-8859-2 språk), vil den eldre kodingen brukes som standard;\n"
"\n"
-"Andre språk vil bruke ISO 10646 som standard;\n"
+"* Andre språk vil bruke unicode som standard;\n"
"\n"
-" * Hvis to eller flere språk er krevd, og ikke disse språk bruker samme "
-"koding,\n"
-"vil ISO 10646 bli brukt for hele systemet;\n"
+"* Hvis to eller flere språk kreves, og disse språkene ikke brukes\n"
+"den samme kodingen, så vil unicode brukes for hele systemet;\n"
"\n"
-" * Endelig kan ISO 10646 også bli påtvunget systemet ved brukervalg\n"
-"ved å velge '%s'-valget uavhengig av hvilke språk som er valgt.\n"
+"* Til slutt kan unicode også tvinges til bruk i hele systemet på en\n"
+"brukerens forespørsel ved å velge alternativet \"%s\" uavhengig av hvilket\n"
+"språk som ble valgt.\n"
"\n"
-"Legg merke til at du ikke er begrenset til et enkelt tilleggsspråk. Du\n"
-"kan velge flere, eller til og med alle ved å sjekke av i «%s»-boksen.\n"
-"Valg av språkstøtte betyr at oversettelser, skrifttyper, stavekontroller,\n"
-"osv. for språket også vil bli installert.\n"
+"Merk at du ikke er begrenset til å velge ett enkelt ekstra språk. Du\n"
+"kan velge flere, eller til og med installere dem alle ved å velge \"%s\"-"
+"boksen.\n"
+"Å velge støtte for et språk betyr oversettelser, fonter, stavekontroller,\n"
+"etc. vil også bli installert for det språket.\n"
"\n"
-"For å bytte mellom de installerte språkene på systemet, kan du starte\n"
-"programmet «/usr/sbin/localedrake» som «root» for å bytte språket som\n"
-"systemet bruker. Dersom dette programmet kjøres under en vanlig bruker,\n"
-"vil bare språket for denne brukeren endres."
+"For å bytte mellom de forskjellige språkene som er installert på systemet "
+"ditt, kan du\n"
+"start \"localedrake\"-kommandoen som \"root\" for å endre språket som "
+"brukes\n"
+"av hele systemet. Å kjøre kommandoen som en vanlig bruker vil bare\n"
+"endre språkinnstillingene for den aktuelle brukeren."
#: ../help.pm:650
#, c-format
@@ -1542,7 +1526,7 @@ msgstr "Spansk"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Bruk Unicode som standard"
#: ../help.pm:646
#, c-format
@@ -1649,7 +1633,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1680,7 +1664,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1701,36 +1685,37 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
-"Nå er det på tide å velge utskriftsystemet for din maskin. Andre\n"
-"operativsystemer tilbyr kanskje en, men Mandriva Linux tilbyr to.\n"
-"Hvert av systemene er best for et spesiell type oppsett.\n"
-"\n"
-" * «%s» -- som står for ``print, do not queue'', er valget hvis du har en\n"
-"direkte tilkobling til din printer og du vil ha muligheten til å flykte fra\n"
-"printerkræsj, og du ikke har nettverksskrivere. («%s» vil bare håndtere\n"
-"veldig enkle nettverkstilfeller og er nogenlunde treg for nettverk.) Det er\n"
-"anbefalt at du bruker «pdq» hvis dette er din første erfaring med GNU/Linux.\n"
-"\n"
-" * «%s» står for ``Common Unix Printing System'', er perfekt til å skrive "
-"til\n"
-"din egen lokale skriver, og også til skrivere på andre siden av kloden.\n"
-"Den er simpel og kan opptrå som både skriver og klient for det "
-"forhistoriske\n"
-"«lpd»-utskriftssystemet, så den er kompatibel med de eldre operativsystemer\n"
-"som fortsatt trenger utskriftstjenester. Selv om den er ganske kraftig, så "
-"er\n"
-"basisoppsettet nesten like enkelt som «pdq». Hvis du trenger å emulere en\n"
-"«lpd»-tjener, må du slå på «cups-lpd»-tjenesten. «%s» inkluderer et grafisk "
-"grensesnitt for utskrift eller oppsett av skriver og styring av skriver.\n"
-"\n"
-"Hvis du gjør et valg nå, og så senere finner ut at du ikke liker ditt "
-"utskriftssystem,\n"
-"så kan du endre det ved å kjøre PrinterDrake fra Mandriva Linux "
-"Kontrollsenter og\n"
-"klikke på «%s»-knappen. "
+"Nå er det på tide å velge et utskriftssystem for datamaskinen. Andre\n"
+"operativsystemer kan tilby deg ett, men Mageia tilbyr to. Hver av\n"
+"utskriftssystemene er best egnet til bestemte typer konfigurasjoner.\n"
+"\n"
+"* \"%s\" -- som er et akronym for \"skriv ut, ikke kø\" er valget\n"
+"hvis du har en direkte tilkobling til skriveren din, og du vil kunne\n"
+"panikk avbryte skriverstopp, og ikke har nettverksskrivere. (\"%s\"\n"
+"vil kun håndtere svært enkle nettverkstilfeller og er noe treg når den "
+"brukes\n"
+"innenfor et nettverk.) Det anbefales at du bruker \"pdq\" hvis dette er din\n"
+"første erfaring med GNU/Linux.\n"
+"\n"
+"* \"%s\" står for `` Common Unix Printing System'' og er et utmerket\n"
+"valg for utskrift til din lokale skriver eller til en annen skriver "
+"halvveis rundt\n"
+"verden. Den er enkel å konfigurere og kan fungere som en server eller klient "
+"for\n"
+"det gamle \"lpd\"-utskriftssystemet, så det er kompatibelt med eldre\n"
+"operativsystemer som fortsatt trenger utskriftstjenester. Det er kraftfult. "
+"Grunnoppsettet er nesten like enkelt som \"pdq\". Hvis du trenger detkan "
+"du \n"
+"emulere en \"lpd\"-server, sørg for at du slår på \"cups-lpd\"-demonen.\n"
+"\"%s\" inkluderer grafiske frontender for utskrift eller valg av skriver\n"
+"alternativer og for å administrere skriveren.\n"
+"\n"
+"Hvis du tar et valg nå, og senere finner ut at du ikke liker "
+"utskriftssystemet kan du endre det ved å kjøre PrinterDrake fra Mageia\n"
+"Kontrollsenter og klikk på \"%s\"-knappen."
#: ../help.pm:768
#, c-format
@@ -1740,7 +1725,7 @@ msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
@@ -1755,7 +1740,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1799,7 +1784,7 @@ msgstr ""
"å velge en annen driver."
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1839,8 +1824,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1857,92 +1841,87 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
"idea to review this setup."
msgstr ""
-"Som en oppsummering vil DrakX gi deg en oversikt over informasjon som\n"
-"den har om systemet ditt. Avhengig av installert maskinvare, kan du ha et\n"
-"eller flere av de følgende punktene. Hvert punkt består av en overskrift "
-"fulgt\n"
-"av en kort oppsummering av det nåværende oppsettet. Klikk på\n"
-"den korresponderende «%s»-knappen for å endre på det.\n"
-"\n"
-" * «%s»: sjekk ditt gjeldende tastaturoppsett og endre om nødvendig.\n"
-"\n"
-" * «%s»: sjekk ditt gjeldende valg av land. Hvis du ikke er i dette landet,\n"
-"klikk på «%s»-knappen og velg et annet land. Hvis landet ditt ikke er i\n"
-"den først viste listen, klikk «%s»-knappen for å få en fullstendig liste over "
-"land.\n"
-"\n"
-" ' «%s»\": som standard bestemmer DrakX din tidssone ut i fra hvilket land "
-"du\n"
-"har valgt. Du kan klikke på «%s»-knappen her om dette ikke er korrekt.\n"
-"\n"
-" * «%s» :sjekk det gjeldende museoppsettet og klikk på knappen for å endre\n"
-"om nødvendig.\n"
-"\n"
-" * «%s»: ved å klikke på «%s»-knappen åpnes skriveroppsett-veiviseren.\n"
-"Konsulter det tilhørende kapittelet i oppstartsguiden for mer\n"
-"informasjon om hvordan en skriver kan settes opp. Grensesnittet som er vist\n"
-"der er likt det som benyttes under installasjonen.\n"
-"\n"
-" * \"%s\": hvis det er funnet et lydkort i ditt system, er det vist her. "
-"Hvis du\n"
-"finner ut at lydkortet som er vist ikke stemmer overens med det som faktisk "
-"er\n"
-"installert i din maskin, kan du klikke på knappen og velge en annen driver.\n"
-"\n"
-" * «%s»: hvis du har ett TV-kort, dette er der informasjonen om oppsettet til "
-"det\n"
-"vil blir vist. Hvis du har et TV-kort og det ikke er oppdaget, klikk på «%s»\n"
-"for å forsøke å sette det opp manuelt\n"
-"\n"
-" * «%s»: Du kan klikke på «%s» for å forandre parameterene til kortet hvis du\n"
-"syntes at oppsettet er feil.\n"
-"\n"
-" * «%s»: Vanligvis setter DrakX opp ditt grafiske grensesnitt i\n"
-"«800x600» eller «1024x768» oppløsning. Hvis det ikke er det du vil ha\n"
-"klikk på «%s« for å sette opp ditt grafiske grensesnitt.\n"
-"\n"
-" * «%s»: hvis du vil sette opp din internett- eller lokale "
-"nettverkstilkobling\n"
-"kan du gjøre det nå. Sjekk den utskrevne dokumentasjonen eller bruk\n"
-"Mandriva Linux Kontrollsenter etter at installasjonen er ferdig for å\n"
-"få full hjelp med oppsettet.\n"
-"\n"
-" * «%s»: lar deg sette opp HTTP og FTP mellomtjener-adresser hvis maskinen\n"
-"du installerer på er bak en mellomtjener.\n"
-"\n"
-" * «%s»: dette valget lar deg omdefinere sikkerhetsnivået som ble satt i et "
-"tidligere\n"
-"steg ().\n"
-"\n"
-" * «%s»: hvis du planlegger å koble din maskin til internett er det en god "
-"idé\n"
-"å beskytte deg selv fra inntrengere ved å sette opp en brannmur. Se den\n"
-"korresponderende seksjonen i ``Starter Guiden\" for detaljer om brannmur\n"
-"innstillinger.\n"
-"\n"
-" * «%s»: dersom du ønsker å endre ditt oppstartslaster-oppsett, klikk på "
+"Som en gjennomgang vil DrakX presentere et sammendrag av informasjonen den "
+"har samlet inn\n"
+"om systemet ditt. Avhengig av maskinvaren som er installert på maskinen din, "
+"kan du\n"
+"kan ha noen eller alle av følgende oppføringer. Hver oppføring består av\n"
+"maskinvareelement som skal konfigureres, etterfulgt av et kort sammendrag av "
+"gjeldende\n"
+"konfigurasjon. Klikk på den tilsvarende \"%s\"-knappen for å gjøre "
+"endringen.\n"
+"\n"
+"* \"%s\": sjekk gjeldende tastaturkartkonfigurasjon og endre den hvis\n"
+"nødvendig.\n"
+"\n"
+"* \"%s\": kontroller gjeldende landvalg. Hvis du ikke vil ha dette\n"
+"landet, klikk på \"%s\"-knappen og velg et annet. Hvis landet ditt\n"
+"ikke er i listen som vises, klikk på \"%s\"-knappen for å få den komplette\n"
+"landliste.\n"
+"\n"
+"* \"%s\": som standard utleder DrakX tidssonen din basert på landet\n"
+"du har valgt. Du kan klikke på \"%s\"-knappen hvis dette ikke er\n"
+"korrekt.\n"
+"\n"
+"* \"%s\": bekreft gjeldende musekonfigurasjon og klikk på knappen\n"
+"for å endre den om nødvendig.\n"
+"\n"
+"* \"%s\": hvis det oppdages et lydkort på systemet ditt, vil det vises\n"
+"her. Hvis lydkortet ikke er det som faktisk finnes på\n"
+"systemet ditt, kan du klikke på knappen og velge en annen driver.\n"
+"\n"
+"* \"%s\": hvis du har et TV-kort, vises informasjon om\n"
+"konfigurasjonen her. Hvis du har et TV-kort og det ikke\n"
+"oppdages, klikk på \"%s\" for å prøve å konfigurere den manuelt.\n"
+"\n"
+"* \"%s\": du kan klikke på \"%s\" for å endre parameterne knyttet til\n"
+"kortet hvis du mener at konfigurasjonen er feil.\n"
+"\n"
+"* \"%s\": som standard konfigurerer DrakX ditt grafiske grensesnitt i\n"
+"\"800x600\" eller \"1024x768\" oppløsning. Hvis det ikke passer deg, klikk "
+"videre\n"
+"\"%s\" for å rekonfigurere det grafiske grensesnittet ditt.\n"
+"\n"
+"* \"%s\": hvis du ønsker å konfigurere Internett- eller "
+"lokalnettverkstilgang,\n"
+"du kan gjøre det nå. Se den trykte dokumentasjonen eller bruk\n"
+"Mageia Control Center etter at installasjonen er fullført.\n"
+"\n"
+"* \"%s\": lar deg konfigurere HTTP- og FTP-proxy-adresser hvis maskinen\n"
+"du installerer på skal være plassert bak en proxy-server.\n"
+"\n"
+"* \"%s\": denne oppføringen lar deg omdefinere sikkerhetsnivået som angitt i "
+"en\n"
+"forrige trinn ().\n"
+"\n"
+"* \"%s\": hvis du planlegger å koble maskinen til Internett, er det en god\n"
+"idé å beskytte deg selv mot inntrenging ved å sette opp en brannmur. "
+"Konsultere\n"
+"den tilsvarende delen av ``Starter Guide'' for detaljer om\n"
+"brannmurinnstillinger.\n"
+"\n"
+"* \"%s\": hvis du ønsker å endre oppstartslasterkonfigurasjonen, klikk på "
"denne\n"
-"knappen. Dette er kun for avanserte brukere. Sjekk den utskrevne "
-"dokumentasjonen\n"
-"eller innebygd hjelp om oppstartslaster-oppsettet i Mandriva Linux "
-"Kontrollsenter.\n"
+"knappen. Dette er forbeholdt avanserte brukere. Se den trykte\n"
+"dokumentasjon eller in-line hjelpen om oppstartslasterkonfigurasjon i\n"
+"Mageia kontrollsenter.\n"
"\n"
-" * «%s»: igjennom dette valget kan du finjustere hvilke tjenester som skal "
-"kjøre på din\n"
-"maskin. Hvis du planlegger å bruke maskinen som en tjener er det en god ide "
-"å se\n"
-"igjennom dette."
+"* \"%s\": gjennom denne oppføringen kan du finjustere hvilke tjenester som "
+"skal kjøres\n"
+"på maskinen din. Hvis du planlegger å bruke denne maskinen som en server, er "
+"det en god\n"
+"idé å vurdere dette oppsettet."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "ISDN-kort"
+msgstr "TV-kort"
#: ../help.pm:809
#, c-format
@@ -1957,25 +1936,26 @@ msgstr "Grafisk grensesnitt"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Velg den harddisken du ønsker å slette for å installere din nye\n"
-"Mandriva Linux-partisjon. Vær forsiktig, alle data på denne partisjonen vil "
-"gå tapt\n"
+"Velg harddisken du vil slette for å installere den nye\n"
+"Mageia partisjon. Vær forsiktig, alle data på denne stasjonen vil gå tapt\n"
"og vil ikke kunne gjenopprettes!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Klikk på \"%s\" hvis du ønsker å slette alle data og partisjoner på denne\n"
"harddisken. Vær forsiktig, etter at du har klikket på \"%s\" vil du ikke\n"
@@ -1994,113 +1974,3 @@ msgstr "Neste ->"
#, c-format
msgid "<- Previous"
msgstr "<- Forrige"
-
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "«%s»: Klikk på «%s»-knappen for å åpne skriverveiviseren.\n"
-#~ "Konsulter det korresponderende kapitlet i oppstartsguiden for mer\n"
-#~ "informasjon om hvordan du setter opp en skriver. Grensesnittet som\n"
-#~ "brukes her er tilsvarende det som benyttes under installasjon."
-
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Dette er det mest kritisike valget med hensyn til sikkerheten på ditt\n"
-#~ "GNU/Linux-system: du må skrive inn «root»-passordet. «Root» er\n"
-#~ "systemadministratoren og er den eneste som er autorisert til å gjøre\n"
-#~ "oppdateringer, legge til brukere, endre på generellt oppsett, etc.\n"
-#~ "Kort sagt, «root» kan gjøre alt! Derfor er det viktig at du velger et\n"
-#~ "root-passord som er vanskelig å gjette -- DrakX vil si i fra hvis det er\n"
-#~ "for enkelt. Som du ser, så kan du velge å ikke skrive inn noe passord,\n"
-#~ "men det er noe vi anbefaler på det sterkeste å ikke gjøre. Man kan lage\n"
-#~ "feil på GNU/Linux så lett som på ethvert annet operativsystem.\n"
-#~ "Siden «root» kan omgå alle begrensninger og ved uhell kan slette\n"
-#~ "alle data på en partisjon ved ubetenksomt bare å røre partisjonene selv,\n"
-#~ "så er det viktig å gjøre det vanskelig å bli «root».\n"
-#~ "\n"
-#~ "Passordet bør være en blanding av alfanummeriske tegn og være på minst 8\n"
-#~ "tegn. Aldri skriv ned «roo»\"-passordet -- det gjør det for enkelt å bryte "
-#~ "seg\n"
-#~ "inn på systemet ditt. \n"
-#~ "\n"
-#~ "Uansett -- du bør ikke lage passordet for langt og komplisert siden du "
-#~ "må \n"
-#~ "være i stand til å huske det uten altfor mye trøbbel.\n"
-#~ "\n"
-#~ "Passordet vil ikke bli vist på skjermen når du skriver det. Dermed må du\n"
-#~ "skrive inn passordet to ganger for å minske sjansen for å skrive feil. "
-#~ "Hvis\n"
-#~ "du klarer å skrive passordet feil to ganger, så må dette ``feilaktige'' "
-#~ "passordet\n"
-#~ "bli brukt første gang du logger inn.\n"
-#~ "\n"
-#~ "Hvis du ønsker å autentisere deg via en autentiserings-tjener, klikk på\n"
-#~ "«%s»-knappen.\n"
-#~ "\n"
-#~ "Hvis nettverket ditt bruker enten LDAP-, NIS- eller PDC Windows-\n"
-#~ "domenepåloggingstjeneste, så velg det tilsvarende til\n"
-#~ "«%s». Har du ingen anelse, så spørr nettverksadministratoren din.\n"
-#~ "\n"
-#~ "Hvis du skulle ha problemer med å huske passord, hvis maskinen din aldri "
-#~ "vil\n"
-#~ "brukes for å koble til internett, eller at du stoler på absolutt alle som "
-#~ "bruker din\n"
-#~ "maskin, så kan du velge «%s»."
-
-#~ msgid "authentication"
-#~ msgstr "autentisering"
diff --git a/perl-install/install/help/po/nl.po b/perl-install/install/help/po/nl.po
index 737d2b48e..e3c6f38e4 100644
--- a/perl-install/install/help/po/nl.po
+++ b/perl-install/install/help/po/nl.po
@@ -1,21 +1,21 @@
-# translation of DrakX-nl.po to Nederlands
-# Dutch translation of DrakX.
-# Copyright (C) 2000, 2005 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva
-# Niels Gras <niels.gras@wanadoo.nl>, 2000.
-# Jeroen ten Berge <j.ten.berge@twinbit.nl>, 2002.
-# Reinout van Schouwen <reinout@cs.vu.nl>, 2002-2005.
-# Peter Bosch <peter.bosch@hccnet.nl>, 2002.
-# Rob Teng <mandrake.tips@free.fr>, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
+#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-nl\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2005-09-20 00:24+0200\n"
-"Last-Translator: Reinout van Schouwen <reinout@cs.vu.nl>\n"
-"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>, 2024\n"
+"Language-Team: Dutch (https://app.transifex.com/MageiaLinux/teams/9361/nl/)\n"
+"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -25,12 +25,12 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Voordat u verdergaat dient u eerst de voorwaarden in de licentie\n"
-"aandachtig te lezen. Zij beslaan de gehele Mandriva Linux distributie.\n"
+"aandachtig te lezen. Zij beslaan de gehele Mageia distributie.\n"
"Indien u akkoord gaat met alle voorwaarden erin kruist u het\n"
"\"%s\"-vakje aan. Zoniet, dan zal het klikken van de \"%s\"-knop\n"
"uw computer herstarten."
@@ -99,7 +99,7 @@ msgstr ""
"Desgewenst kunt u de voorgestelde gebruikersnaam veranderen.\n"
"De volgende stap is het invoeren van een wachtwoord. Het \n"
"wachtwoord van een (gewone) gebruiker zonder privileges is niet zo \n"
-"cruciaal als dat van de \"root\"-gebruiker vanuit veiligheidsperspectief, \n"
+"cruciaal als dat van de \"root\"-gebruiker vanuit beveiligingsperspectief, \n"
"maar dat is geen reden om het te verwaarlozen door het leeg te laten of het\n"
"te eenvoudig te maken: tenslotte staan uw bestanden op het spel.\n"
"\n"
@@ -121,12 +121,12 @@ msgstr ""
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Gebruikersnaam"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Accepteer gebruiker"
#: ../help.pm:54
#, c-format
@@ -136,7 +136,8 @@ msgstr "Wilt u van deze mogelijkheid gebruik maken?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -146,24 +147,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Hier zijn de bestaande Linuxpartities afgebeeld die op uw harde\n"
@@ -201,13 +206,13 @@ msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"De Mandriva Linux-installatie is verdeeld over meerdere CD-ROMs. Als een \n"
+"De Mageia-installatie is verdeeld over meerdere CD-ROMs. Als een \n"
"geselecteerd pakket te vinden is op een andere CD-ROM, zal het \n"
"installatieprogramma de huidige CD uitwerpen en u vragen om de\n"
"correcte CD in te leggen. Mocht u de betreffende CD niet bij de hand "
@@ -216,15 +221,14 @@ msgstr ""
"worden geïnstalleerd."
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -275,11 +279,11 @@ msgid ""
"megabytes."
msgstr ""
"Het is nu tijd om te bepalen welke programma's u op uw systeem\n"
-"wenst te installeren. Er zijn duizenden pakketten beschikbaar voor Mandriva\n"
+"wenst te installeren. Er zijn duizenden pakketten beschikbaar voor Mageia\n"
"Linux, en om het overzichtelijker te maken zijn de pakketten in groepen\n"
"van vergelijkbare toepassingen geplaatst.\n"
"\n"
-"Mandriva Linux sorteert groepen pakketten in vier categorieën.\n"
+"Mageia sorteert groepen pakketten in vier categorieën.\n"
"U kunt de toepassingen uit de verschillende categorieën uitkiezen\n"
"en samenvoegen naar eigen inzicht, zodat een ``Werkstation''-installatie\n"
"nog steeds toepassingen geïnstalleerd kan hebben uit de ``Server''\n"
@@ -365,10 +369,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -400,11 +404,11 @@ msgstr ""
"!! Als een server-pakket geselecteerd is, ofwel omdat u dat pakket\n"
"specifiek gekozen heeft ofwel omdat het onderdeel is van een hele groep\n"
"pakketten, zal u gevraagd worden om te bevestigen dat u deze servers echt\n"
-"wilt installeren. Onder Mandriva Linux worden alle geïnstalleerde servers\n"
+"wilt installeren. Onder Mageia worden alle geïnstalleerde servers\n"
"standaard ingeschakeld tijdens het opstarten. Zelfs wanneer zij veilig\n"
"zijn en geen bekende beveiligingsgebreken hadden op het moment dat de\n"
"distributie werd uitgebracht, kan het gebeuren dat beveiligingsfouten\n"
-"ontdekt worden nadat deze versie van Mandriva Linux afgemaakt werd.\n"
+"ontdekt worden nadat deze versie van Mageia afgemaakt werd.\n"
"Indien u niet weet wat een bepaalde dienst geacht wordt te doen of waarom\n"
"deze geïnstalleerd wordt, klikt u dan \"%s\". Klikken op \"%s\" zal\n"
"de getoonde diensten installeren en ze zullen automatisch worden\n"
@@ -504,7 +508,7 @@ msgstr ""
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Hardware klok staat op GMT"
#: ../help.pm:213
#, c-format
@@ -540,7 +544,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -597,7 +601,7 @@ msgstr ""
"X (voor X Window System) is het hart van de grafische interface van GNU/\n"
"Linux waarvan alle grafische omgevingen (KDE, GNOME, AfterStep, "
"WindowMaker,\n"
-"etc.) die bij Mandriva Linux worden geleverd, afhankelijk zijn.\n"
+"etc.) die bij Mageia worden geleverd, afhankelijk zijn.\n"
"\n"
"U krijgt een lijst te zien van verschillende parameters die u kunt "
"aanpassen\n"
@@ -716,39 +720,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -757,15 +765,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -778,12 +786,12 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Op dit punt dient u te kiezen waar op uw harde schijf u uw Mandriva Linux\n"
+"Op dit punt dient u te kiezen waar op uw harde schijf u uw Mageia\n"
"besturingssysteem wilt installeren. Als uw harde schijf leeg is of als een\n"
"ander besturingssysteem alle beschikbare ruimte inneemt, dan zult u\n"
"de harde schijf moeten partitioneren. Partitioneren houdt in dat u uw harde\n"
"schijf in logische stukken onderverdeelt om ruimte te creëren voor uw\n"
-"nieuwe Mandriva Linux besturingssysteem.\n"
+"nieuwe Mageia besturingssysteem.\n"
"\n"
"Omdat de effecten van het partitioneringsproces over het algemeen niet\n"
"terug te draaien zijn en kan leiden tot gegevensverlies als er reeds een\n"
@@ -816,7 +824,7 @@ msgstr ""
"verlies van enige gegevens, vooropgesteld dat u eerst de Windows-partitie\n"
"gedefragmenteerd heeft. Een reservekopie maken van uw gegevens is\n"
"uitdrukkelijk aangeraden. Deze optie is aanbevolen indien u zowel\n"
-"Mandriva Linux als Microsoft Windows op dezelfde computer wilt gebruiken.\n"
+"Mageia als Microsoft Windows op dezelfde computer wilt gebruiken.\n"
"\n"
" Laat het goed tot u doordringen, voordat u deze optie kiest, dat uw\n"
"Microsoft Windows partitie na afloop van deze procedure minder groot\n"
@@ -825,7 +833,7 @@ msgstr ""
"installeren.\n"
"\n"
" * \"%s\": indien u alle gegevens en alle partities op uw\n"
-"harde schijf wilt verwijderen en vervangen door uw nieuwe Mandriva Linux-\n"
+"harde schijf wilt verwijderen en vervangen door uw nieuwe Mageia-\n"
"systeem, kiest u deze optie. Weest u voorzichtig met deze oplossing omdat u\n"
"na bevestiging deze keuze niet meer ongedaan kunt maken.\n"
"\n"
@@ -856,7 +864,7 @@ msgstr "Een bestaande partitie gebruiken"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Gebruik de vrije ruimte op de Microsoft Windows® partitie"
#: ../help.pm:370
#, c-format
@@ -945,17 +953,17 @@ msgstr "Auto-installatiediskette aanmaken"
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Herhaling"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Geautomatiseerd"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Bewaar pakketselectie"
#: ../help.pm:408
#, c-format
@@ -977,7 +985,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1000,7 +1008,7 @@ msgstr ""
"Klik op \"%s\" wanneer u klaar bent om de partities te formatteren.\n"
"\n"
"Klik op \"%s\" indien u een andere partitie voor uw nieuwe\n"
-"Mandriva Linux besturingssysteem wilt kiezen.\n"
+"Mageia besturingssysteem wilt kiezen.\n"
"\n"
"Klik op \"%s\" indien u partities wenst te selecteren die op\n"
"onleesbare blokken gecontroleerd moeten worden."
@@ -1008,7 +1016,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1020,7 +1028,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Op het moment dat u Mandriva Linux installeert, is het waarschijnlijk\n"
+"Op het moment dat u Mageia installeert, is het waarschijnlijk\n"
"dat sommige pakketten herzien zijn sinds het moment dat het werd\n"
"uitgebracht. Sommige onvolkomenheden kunnen gerepareerd zijn en\n"
"beveiligingsproblemen opgelost. Om u te kunnen laten profiteren van\n"
@@ -1045,7 +1053,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1060,7 +1068,7 @@ msgstr ""
"\n"
"Als u niet weet wat te kiezen, behoudt u de standaard optie. U zult \n"
"later nog in staat zijn het beveiligingsniveau te veranderen met het\n"
-"draksec-hulpprogramma vanuit het Mandriva Linux Configuratiecentrum.\n"
+"draksec-hulpprogramma vanuit het Mageia Configuratiecentrum.\n"
"\n"
"Vul in het \"%s\"-veld het e-mailadres in van de persoon die\n"
"verantwoordelijk is voor de beveiliging. Beveiligingsmeldingen\n"
@@ -1075,21 +1083,24 @@ msgstr "Beveiligingsbeheerder"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1105,21 +1116,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1136,17 +1149,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Op dit punt dient u te kiezen welke partitie(s) gebruikt zullen worden voor\n"
-"de installatie van uw Mandriva Linux systeem. Indien er reeds partities\n"
+"de installatie van uw Mageia systeem. Indien er reeds partities\n"
"gedefinieerd zijn, van een vorige GNU/Linux installatie of door een\n"
"ander partitioneringsprogramma, kunt u bestaande partities gebruiken.\n"
"In andere gevallen moeten er harde schijf-partities gedefinieerd worden.\n"
@@ -1164,7 +1171,7 @@ msgstr ""
" * \"%s\": deze optie verwijdert alle partities op de\n"
"geselecteerde harde schijf.\n"
"\n"
-" * \"%s\": deze optie creëert automatisch ext3- en swap-\n"
+" * \"%s\": deze optie creëert automatisch ext4- en swap-\n"
"partities in de vrije ruimte op uw harde schijf.\n"
"\n"
" \"%s\": geeft toegang tot extra opties:\n"
@@ -1222,28 +1229,21 @@ msgstr ""
"Voor meer informatie over de verschillende types bestandssystemen die er "
"zijn,\n"
"leest u het hoofdstuk 'ext2FS' van de ``Referentiehandleiding''.\n"
-"\n"
-"In het geval dat u op een PPC computer aan het installeren bent, zult u een "
-"kleine\n"
-"HFS \"bootstrap\"-partitie van tenminste 1MB willen creëren voor gebruik\n"
-"door de yaboot-opstartlader. Indien u liever de partitie wat groter maakt,\n"
-"zeg 50MB, dan vindt u het misschien een nuttige plek om een reserve kernel-\n"
-"en ramdisk beeldbestand in op te slaan voor opstart-noodgevallen."
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Bewaar partitioneringstabel"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Herstel partitioneringstabel"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Red partitioneringstabel"
#: ../help.pm:526
#, c-format
@@ -1253,12 +1253,12 @@ msgstr "Automatische koppeling van verwisselbare media"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Wizard"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Herstel"
#: ../help.pm:526
#, c-format
@@ -1268,38 +1268,44 @@ msgstr "Normale/expert-modus"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Er is meer dan één Microsoft-partitie op uw harde schijf gevonden.\n"
-"Kiest u degene die u wilt verkleinen om uw nieuwe Mandriva Linux\n"
+"Kiest u degene die u wilt verkleinen om uw nieuwe Mageia\n"
"besturingssysteem te kunnen installeren.\n"
"\n"
"Elke partitie wordt getoond als volgt: \"Linux naam\", \"Windows naam\"\n"
@@ -1348,29 +1354,29 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Deze stap activeert slechts wanneer een bestaande GNU/Linux-partitie\n"
"gevonden is op uw computer.\n"
"\n"
"Nu is het noodzakelijk dat u aangeeft of u een nieuwe installatie\n"
-"of een opwaardering van een bestaand Mandriva Linux-systeem\n"
+"of een opwaardering van een bestaand Mageia-systeem\n"
"wilt uitvoeren:\n"
"\n"
" * \"%s\". Dit verwijdert het oude systeem vrijwel volledig.\n"
@@ -1381,17 +1387,15 @@ msgstr ""
"bestandssysteem wenst te wijzigen, dan dient u deze optie te kiezen.\n"
"\n"
" * \"%s\". Deze installatieklasse stelt u in staat de pakketten\n"
-"die momenteel op uw Mandriva Linux-systeem zijn geïnstalleerd te verversen.\n"
+"die momenteel op uw Mageia-systeem zijn geïnstalleerd te verversen.\n"
"Uw huidige partitioneringsschema en gebruikersgegevens worden niet\n"
" veranderd. De meeste andere configuratiestappen blijven beschikbaar,\n"
"zoals bij een gewone installatie.\n"
"\n"
"Het gebruik van de ``Opwaardering''-optie zou prima moeten werken op\n"
-"Mandriva Linux versie \"8.1\" of recenter. Het uitvoeren van een\n"
-"opwaardering op versies eerder dan Mandriva Linux versie \"8.1\" is "
-"afgeraden."
+"Mageia versie \"8.1\" of recenter. Het uitvoeren van een\n"
+"opwaardering op versies eerder dan Mageia versie \"8.1\" is afgeraden."
-# Extra stukje toegevoegd over Nederlandse layout
#: ../help.pm:594
#, c-format
msgid ""
@@ -1451,8 +1455,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1494,7 +1497,7 @@ msgstr ""
"Over UTF-8 (unicode)-ondersteuning: Unicode is een nieuwe tekencodering\n"
"bedoeld om alle bestaande geschreven talen te omvatten. Volledige\n"
"GNU/Linux-ondersteuning ervoor is echter nog in ontwikkeling.\n"
-"Daarom gebruikt Mandriva Linux het al dan niet, afhankelijk van de keuze\n"
+"Daarom gebruikt Mageia het al dan niet, afhankelijk van de keuze\n"
"van de gebruiker:\n"
"\n"
" * Indien u talen kiest met een sterke coderingstraditie (latin1\n"
@@ -1531,7 +1534,7 @@ msgstr "Spaans"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Gebruik standaard Unicode"
#: ../help.pm:646
#, c-format
@@ -1635,7 +1638,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1664,7 +1667,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1685,11 +1688,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Het is nu tijd een afdruksysteem voor uw computer te selecteren. Andere\n"
-"besturingssystemen geven u er wellicht maar één, maar Mandriva Linux\n"
+"besturingssystemen geven u er wellicht maar één, maar Mageia\n"
"biedt er twee. Elk van deze afdruksystemen is het meest geschikt voor\n"
"bepaalde typen configuraties.\n"
"\n"
@@ -1715,8 +1718,7 @@ msgstr ""
"\n"
"Wanneer u nu een keuze maakt en er later achter komt dat uw afdruksysteem\n"
"u niet bevalt dan kunt u het veranderen door PrinterDrake uit te voeren\n"
-"vanuit het Mandriva Linux Configuratiecentrum en op de \"%s\"-knop te "
-"klikken."
+"vanuit het Mageia Configuratiecentrum en op de \"%s\"-knop te klikken."
#: ../help.pm:768
#, c-format
@@ -1726,7 +1728,7 @@ msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
@@ -1741,7 +1743,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1785,7 +1787,7 @@ msgstr ""
"knop klikken en een ander stuurprogramma kiezen."
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1825,8 +1827,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1843,7 +1844,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1870,12 +1871,6 @@ msgstr ""
" * \"%s\": de huidige muisconfiguratie nagaan. Zonodig kunt u op de knop "
"klikken om hem aan te passen.\n"
"\n"
-" * \"%s\": klikken op de \"%s\"-knop zal de\n"
-"printerconfiguratie-wizard openen. Raadpleeg het corresponderende\n"
-"hoofdstuk van de ``Beginnershandleiding'' voor meer informatie over\n"
-"hoe u een nieuwe printer instelt. De in onze handleiding getoonde interface\n"
-"lijkt op degene die tijdens de installatie gebruikt wordt.\n"
-"\n"
" * \"%s\": indien een geluidskaart gevonden is op uw systeem,\n"
"wordt dat hier weergegeven. In het geval dat de aangegeven geluidskaart\n"
"niet degene is die daadwerkelijk aanwezig is in uw computer, dan kunt u\n"
@@ -1896,7 +1891,7 @@ msgstr ""
"\n"
" * \"%s\": Als u uw internettoegang of toegang tot het lokale\n"
"netwerk wilt instellen, kunt u dat nu doen. Raadpleeg de gedrukte\n"
-"documentatie of gebruik het Mandriva Linux Configuratiecentrum nadat\n"
+"documentatie of gebruik het Mageia Configuratiecentrum nadat\n"
"de installatie klaar is om te profiteren van volledige on-line hulp.\n"
"\n"
" * \"%s\": stelt u in staat HTTP- en FTP-proxy adressen te configureren\n"
@@ -1913,16 +1908,16 @@ msgstr ""
" * \"%s\": indien u uw opstartlader-configuratie wenst te \n"
"veranderen, klikt u op deze knop. Alleen aankomen als u een gevorderde\n"
"gebruiker bent. Raadpleeg de gedrukte documentatie of de on-line hulp\n"
-"over de configuratie van een opstartlader in het Mandriva Linux \n"
+"over de configuratie van een opstartlader in het Mageia \n"
"Configuratiecentrum.\n"
" * \"%s\": U bent hier in staat om de diensten die op uw computer\n"
"actief zullen zijn, fijn af te regelen. Indien u deze computer als server\n"
"gaat inzetten dan is het een goed idee om deze instellingen na te lopen."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "Interne ISDN kaart"
+msgstr "TV-kaart"
#: ../help.pm:809
#, c-format
@@ -1937,11 +1932,11 @@ msgstr "Grafische interface"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Kies de harde schijf die u wilt wissen om uw nieuwe Mandriva Linux-\n"
+"Kies de harde schijf die u wilt wissen om uw nieuwe Mageia-\n"
"partitie op te installeren. Wees voorzichtig, alle gegevens die\n"
"op deze schijf staan zullen verloren gaan, en niet terug te halen zijn!"
@@ -1949,12 +1944,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Klik op \"%s\" wanneer u alle gegevens en partities die zich \n"
"op deze harde schijf bevinden, wilt wissen. Wees voorzichtig, want na het\n"
@@ -1974,115 +1971,3 @@ msgstr "Volgende ->"
#, c-format
msgid "<- Previous"
msgstr "<- Vorige"
-
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "\"%s\": klikken op de \"%s\"-knop zal de printerconfiguratie-\n"
-#~ "wizard openen. Raadpleeg het overeenkomstige hoofdstuk uit de "
-#~ "``Beginners-\n"
-#~ "handleiding'' voor meer informatie over het instellen van een nieuwe "
-#~ "printer.\n"
-#~ "De in onze handleiding getoonde interface lijkt sterk op degene gebruikt\n"
-#~ "tijdens de installatie."
-
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Dit is de meest cruciale beslissing voor de beveiliging van uw GNU/Linux\n"
-#~ "systeem: u dient het \"root\"-wachtwoord in te voeren. \"Root\" is de\n"
-#~ "systeembeheerder en is de enige die geautoriseerd is om vernieuwingen "
-#~ "uit\n"
-#~ "te voeren, gebruikers toe te voegen, de algehele systeemconfiguratie te\n"
-#~ "wijzigen, enzovoort. Kortom, \"root\" kan alles doen! Daarom dient u een\n"
-#~ "lastig te raden wachtwoord te kiezen - DrakX vertelt het u als het te \n"
-#~ "makkelijk is. Zoals u kunt zien is het niet verplicht een wachtwoord in "
-#~ "te\n"
-#~ "vullen, maar dit raden wij sterk af. GNU/Linux is net zo gevoelig voor\n"
-#~ "bedieningsfouten als andere besturingssystemen.\n"
-#~ "Omdat \"root\" alle beperkingen kan overschrijden en onbedoeld alle\n"
-#~ "gegevens op partities kan wissen door achteloos deze partities te\n"
-#~ "benaderen, is het belangrijk dat het lastig is om \"root\" te worden.\n"
-#~ "\n"
-#~ "Het wachtwoord behoort een mix van alfanumerieke tekens te zijn en\n"
-#~ "tenminste 8 tekens lang. Schrijf nooit het \"root\"-wachtwoord op -\n"
-#~ "dat maakt het te makkelijk om een systeem te compromitteren.\n"
-#~ "\n"
-#~ "Het addertje onder het gras: maak ook het wachtwoord niet te lang of\n"
-#~ "gecompliceerd omdat u het moet kunnen onthouden!\n"
-#~ "\n"
-#~ "Het wachtwoord zal niet op het scherm getoond worden wanneer u het\n"
-#~ "intypt. Vandaar dat u het wachtwoord tweemaal moet intypen om de kans\n"
-#~ "te verminderen dat u een typfout maakt. Indien u toevallig dezelfde "
-#~ "typfout\n"
-#~ "twee keer maakt, dan zal dit ``incorrecte'' wachtwoord gebruikt moeten\n"
-#~ "worden bij de eerste keer dat u zich aanmeldt als \"root\".\n"
-#~ "\n"
-#~ "Indien u wenst dat de toegang tot deze computer gecontroleerd wordt door\n"
-#~ "een aanmeldingscontrole-server, klik dan op de \"%s\"-knop.\n"
-#~ "\n"
-#~ "Indien uw netwerk LDAP, NIS, of PDC Windows domeinaanmeldingscontrole-\n"
-#~ "diensten gebruikt, selecteer dan de overeenkomende optie\n"
-#~ "als \"%s\". In het geval dat u niet weet welke te kiezen,\n"
-#~ "raadpleeg dan uw netwerkbeheerder.\n"
-#~ "\n"
-#~ "Mocht u het lastig vinden wachtwoorden te onthouden, als uw computer\n"
-#~ "nooit verbonden zal zijn met het internet of als u absoluut iedereen\n"
-#~ "vertrouwt die toegang heeft tot uw computer, kunt u kiezen voor \"%s\"."
-
-#~ msgid "authentication"
-#~ msgstr "aanmeldingscontrole"
diff --git a/perl-install/install/help/po/nn.po b/perl-install/install/help/po/nn.po
index b5f06b4de..69519da74 100644
--- a/perl-install/install/help/po/nn.po
+++ b/perl-install/install/help/po/nn.po
@@ -17,15 +17,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Du bør lesa vilkåra i lisensavtala nøye før du eventuelt held fram.\n"
-"Avtala dekkjer heile Mandriva Linux-distribusjonen. Kryss av for\n"
+"Avtala dekkjer heile Mageia-distribusjonen. Kryss av for\n"
"«%s» berre viss du er einig i alle vilkåra. Elles vil «%s»-knappen\n"
"starta maskina på nytt."
@@ -140,7 +140,7 @@ msgstr "Ønskjer du å bruka denne funksjonen?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -150,24 +150,24 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Her er ei oversikt over Linux-partisjonar på harddisken. Du bør vanlegvis\n"
@@ -202,15 +202,15 @@ msgstr ""
" nest lågaste SCSI-ID, og så vidare."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux-distribusjonen ligg fordelt på fleire plater. Viss ein pakke "
+"Mageia-distribusjonen ligg fordelt på fleire plater. Viss ein pakke "
"ligg på ei anna plate, vert du automatisk bedt om å setja ho i. Berre trykk «%"
"s» om du ikkje har denne plata. Dei aktuelle pakkane vert då ikkje "
"installerte."
@@ -219,12 +219,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -275,7 +274,7 @@ msgid ""
"megabytes."
msgstr ""
"Det må no velja kva program du ønskjer å installera på maskina. Det finst\n"
-"tusenvis av programpakkar for Mandriva Linux, og desse er her ordna i "
+"tusenvis av programpakkar for Mageia, og desse er her ordna i "
"grupper.\n"
"\n"
"Pakkane er grupperte i fire kategoriar, men du kan velja program frå alle\n"
@@ -339,7 +338,7 @@ msgid "Truly minimal install"
msgstr "Heilt minimal installasjon"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -352,10 +351,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -505,11 +504,11 @@ msgstr ""
"kan du velja tenaren som passar best for deg."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -566,7 +565,7 @@ msgstr ""
"X er hjarta i det grafiske grensesnittet til GNU/Linux, og alle dei "
"grafiske\n"
"skrivebordsmiljøa (KDE, GNOME, AfterStep, WindowsMaker, med fleire)\n"
-"som følgjer med Mandriva Linux avheng av X.\n"
+"som følgjer med Mageia avheng av X.\n"
"\n"
"Du vil sjå ei liste over forskjellige innstillingar til det grafiske "
"oppsettet:\n"
@@ -679,41 +678,41 @@ msgstr ""
"eller du før ikkje har klart å setja opp det grafiske oppsettet."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -722,15 +721,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -743,7 +741,7 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"No må du velja kor du vil installera Mandriva Linux på harddisken din. Viss\n"
+"No må du velja kor du vil installera Mageia på harddisken din. Viss\n"
"harddisken er tom, eller viss eit anna operativsystem brukar heile disken,\n"
"må du først partisjonera han. Å partisjonera vil seia å dela opp disken,\n"
"slik at for eksempel kvart operativsystem får sin eigen del.\n"
@@ -771,7 +769,7 @@ msgstr ""
"\n"
"– «%s»: Om Microsoft Windows er installert og tar opp all plass på harddisken "
"din,\n"
-"må du frigjera noko plass til Mandriva Linux. Du kan anten sletta Windows-\n"
+"må du frigjera noko plass til Mageia. Du kan anten sletta Windows-\n"
"partisjonen din (sjå «Slett heile disken»-valet), eller endra storleiken på "
"Windows-\n"
"partisjonen (både FAT- og NTFS-filsystema er støtta). Du vil ikkje mista "
@@ -779,7 +777,7 @@ msgstr ""
"data ved endra storleiken på partisjonen, så lenge du har defragmentert han\n"
"på førehand. Men du bør uansett ta reservekopi av alle dataa. Du bør velja "
"dette\n"
-"valet om du ønskjer å bruka både Mandriva Linux og Microsoft Windows på "
+"valet om du ønskjer å bruka både Mageia og Microsoft Windows på "
"same\n"
"maskina.\n"
"\n"
@@ -790,7 +788,7 @@ msgstr ""
"programvare.\n"
"\n"
"– «%s»: Vel dette om du ønskjer å sletta alle data og alle partisjonar på\n"
-"harddisken din, og installera Mandriva Linux over desse. Ver forsiktig, då "
+"harddisken din, og installera Mageia over desse. Ver forsiktig, då "
"du ikkje\n"
"kan angra denne handlinga.\n"
"\n"
@@ -859,7 +857,7 @@ msgid ""
"\"mformat a:\", or \"fdformat /dev/fd0\" followed by \"mkfs.vfat\n"
"/dev/fd0\"."
msgstr ""
-"Sånn! Installasjonen er no ferdig, og Mandriva Linux er klar til bruk. "
+"Sånn! Installasjonen er no ferdig, og Mageia er klar til bruk. "
"Berre\n"
"trykk «%s» for å starta maskina på nytt. Ikkje gløym å fjerna installasjons\n"
"mediet (CD-ROM-en eller disketten) først. Når maskina er starta opp att,\n"
@@ -876,7 +874,7 @@ msgstr ""
" – «%s»: Heilautomatisk installering. Harddisken vert heilt tømt, og alle\n"
"gamle data går tapt.\n"
"\n"
-" Denne funksjonen er veldig nyttig når du skal installera Mandriva Linux "
+" Denne funksjonen er veldig nyttig når du skal installera Mageia "
"på\n"
" fleire like maskiner. Sjå avsnittet om automatisk installering på "
"nettstaden vår for\n"
@@ -915,7 +913,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -934,7 +932,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -953,15 +951,15 @@ msgstr ""
"\n"
"Trykk «%s» når du er klar til å formatera partisjonane.\n"
"\n"
-"Trykk «%s» om du vil velja ein annan partisjon for Mandriva Linux-systemet.\n"
+"Trykk «%s» om du vil velja ein annan partisjon for Mageia-systemet.\n"
"\n"
"Trykk «%s» om du ønskjer å velja partisjonar å gjennomsøkja etter fysiske "
"feil."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -973,7 +971,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Det har no truleg komme fleire oppdateringar til pakkane i Mandriva Linux\n"
+"Det har no truleg komme fleire oppdateringar til pakkane i Mageia\n"
"sidan denne utgåva vart produsert. Det kan for eksempel vera feil som er\n"
"fiksa, eller tryggleikshol som er tetta. Du kan lasta ned desse "
"oppdateringane\n"
@@ -989,7 +987,7 @@ msgstr ""
"vel «%s» for å avbryta."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -998,7 +996,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1022,24 +1020,24 @@ msgid "Security Administrator"
msgstr "Tryggleiksansvarleg"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1055,21 +1053,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1086,16 +1084,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"No må du velja kva partisjonar du vil installera Mandriva Linux på. Om du "
+"No må du velja kva partisjonar du vil installera Mageia på. Om du "
"allereie har ferdige partisjonar, frå tidlegare installasjonar av GNU/Linux "
"eller av partisjoneringsverktøy, kan du bruka desse. Elles må du laga nye "
"partisjonar.\n"
@@ -1108,7 +1100,7 @@ msgstr ""
"\n"
" – «%s»: Slettar alle partisjonar på harddisken.\n"
"\n"
-" – «%s»: Lagar automatisk ext3- og vekslepartisjonar på den ledige "
+" – «%s»: Lagar automatisk ext4- og vekslepartisjonar på den ledige "
"harddiskplassen.\n"
"\n"
"«%s»: Gjev tilgang til fleire funksjonar:\n"
@@ -1155,11 +1147,6 @@ msgstr ""
"\n"
"Du kan lesa meir om forskjellige filsystem i kapittelet «ext2FS» i "
"referansehandboka.\n"
-"\n"
-"Om du installerer på ei PPC-maskin, bør du laga ein liten HFS-"
-"oppstartslastarpartisjon på minst 1 MiB for yaboot. Vis du lagar partisjonen "
-"større, kanskje 50 MiB, kan du bruka han til å lagra ein ekstra kjerne, og "
-"eventuelt ramdisk-bilete for nødsituasjonar.r"
#: ../help.pm:526
#, c-format
@@ -1197,41 +1184,41 @@ msgid "Toggle between normal/expert mode"
msgstr "Byt mellom normal- og ekspertmodus"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Oppdaga meir enn éin Microsoft-partisjon på harddisken.\n"
"Vel kven av dei du vil endra storleiken på for å installera det nye\n"
-"Mandriva Linux-operativsystemet.\n"
+"Mageia-operativsystemet.\n"
"Kvar partisjon vert vist slik: Linux-namn, Windows-namn, storleik.\n"
"Linuxnamnet er skriven slik: harddisktype, harddisknummer, partisjonsnummer "
"(for eksempel «hda1»).\n"
@@ -1272,23 +1259,22 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1345,8 +1331,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1453,7 +1438,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1464,7 +1449,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1485,7 +1470,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1512,7 +1497,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1577,8 +1562,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1595,7 +1579,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1618,25 +1602,25 @@ msgid "Graphical Interface"
msgstr "Grafisk grensesnitt"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Vel harddisken du ønskjer å sletta for å installera den nye Mandriva Linux-\n"
+"Vel harddisken du ønskjer å sletta for å installera den nye Mageia-\n"
"partisjonen. Alle data på denne stasjonen vil då gå tapt for all framtid."
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Trykk «%s» om du ønskjer å sletta alle data og partisjonar på denne\n"
"harddisken. Ver forsiktig, då du ikkje kan gjenoppretta eventuelle data\n"
diff --git a/perl-install/install/help/po/pa_IN.po b/perl-install/install/help/po/pa_IN.po
index d980feeaf..8bfdd2dad 100644
--- a/perl-install/install/help/po/pa_IN.po
+++ b/perl-install/install/help/po/pa_IN.po
@@ -19,10 +19,10 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -90,7 +90,7 @@ msgstr "ਕੀ ਤੁਸੀਂ ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ ਵਰਤਣੀ ਚ
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -100,31 +100,31 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -140,12 +140,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -225,10 +224,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -321,7 +320,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -439,39 +438,39 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -480,15 +479,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -595,7 +593,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -604,7 +602,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -627,7 +625,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -643,21 +641,21 @@ msgstr "ਸੁਰੱਖਿਆ ਪ੍ਰਬੰਧਕ"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -673,21 +671,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -704,14 +702,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -752,34 +744,34 @@ msgstr "ਸਧਾਰਨ/ਮਾਹਿਰ ਵਿਧੀ ਵਿਚਕਾਰ ਤਬ
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -802,23 +794,22 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -859,8 +850,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -967,7 +957,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -978,7 +968,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -999,7 +989,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1026,7 +1016,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1091,8 +1081,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1109,7 +1098,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1132,10 +1121,10 @@ msgid "Graphical Interface"
msgstr "ਗਰਾਫੀਕਲ ਇੰਟਰਫੇਸ"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"ਤੁਹਾਡਾ ਨਵਾਂ ਮੈਂਡਰਿਵ-ਲੀਨਕਸ ਭਾਗ ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਸਾਫ ਕਰਨ ਵਾਸਤੇ\n"
@@ -1146,12 +1135,12 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"\"%s\" ਤੇ ਕਲਿੱਕ ਕਰੋ ਜੇ ਤੁਸੀਂ ਇਸ ਹਾਰਡ ਡਰਾਈਵ ਤੇ ਸਾਰਾ ਡਾਟਾ ਅਤੇ ਭਾਗ\n"
"ਹਟਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ। ਧਿਆਨ ਰੱਖੋ, \"%s\" ਤੇ ਕਲਿੱਕ ਕਰਨ ਮਗਰੋਂ, ਤੁਸੀਂ ਇਸ ਡਰਾਈਵ\n"
diff --git a/perl-install/install/help/po/pl.po b/perl-install/install/help/po/pl.po
index c789a4000..4c151aeb5 100644
--- a/perl-install/install/help/po/pl.po
+++ b/perl-install/install/help/po/pl.po
@@ -18,23 +18,24 @@ msgstr ""
"PO-Revision-Date: 2005-10-22 14:46+0200\n"
"Last-Translator: Tomasz Bednarski <tomasz.bednarski@mandriva.pl>\n"
"Language-Team: polish <pl@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.10.2\n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%"
-"100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n"
+"%100<10 || n%100>=20) ? 1 : 2);\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Przed kontynuowaniem, należy przeczytać uważnie warunki licencji dotyczącej "
-"całej dystrybucji Mandriva Linux. Jeśli zgadzasz się\n"
+"całej dystrybucji Mageia. Jeśli zgadzasz się\n"
"z wszystkimi warunkami w niej zawartymi, zaznacz opcję \"%s\".\n"
"Jeśli nie kliknij na przycisk \"%s\" w celu ponownego uruchomienia\n"
"komputera."
@@ -136,7 +137,8 @@ msgstr "Czy chcesz wykorzystać tą funkcję?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -146,24 +148,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Powyżej pokazano wykryte na Twoim dysku istniejące partycje linuksowe.\n"
@@ -198,15 +204,15 @@ msgstr ""
"oznacza \"drugi w kolejności ID SCSI\", itd."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Instalacja Mandriva Linux jest rozpowszechniana na kilku płytach CD.\n"
+"Instalacja Mageia jest rozpowszechniana na kilku płytach CD.\n"
"Jeśli wybrany pakiet jest zlokalizowany na innej płycie CD\n"
" instalator wysunie bieżącą płytę CD oraz wyświetli prośbę\n"
"o włożenie wymaganej płyty CD. Jeśli nie posiadasz wymaganej\n"
@@ -217,12 +223,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -273,7 +278,7 @@ msgid ""
"megabytes."
msgstr ""
"Nadszedł czas na określenie, jakie programy mają zostać zainstalowane w\n"
-"systemie. Dla Mandriva Linux są dostępne tysiące pakietów. Aby uczynić\n"
+"systemie. Dla Mageia są dostępne tysiące pakietów. Aby uczynić\n"
"zarządzanie pakietami łatwiejszym, zostały one uporządkowane na podstawie\n"
"podobieństwa aplikacji.\n"
"\n"
@@ -348,7 +353,7 @@ msgid "Truly minimal install"
msgstr "Naprawdę minimalna instalacja"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -361,10 +366,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -395,7 +400,7 @@ msgstr ""
"!! Jeśli zostanie wybrany pakiet serwera, niezależnie czy wybrany został\n"
"w drodze indywidualnego wyboru pakietów, lub też jako pakiet grupy,\n"
"zostanie wyświetlona prośba o potwierdzenie wyboru pakietu serwera\n"
-"przed jego instalacją. W systemie Mandriva Linux, wszystkie zainstalowane\n"
+"przed jego instalacją. W systemie Mageia, wszystkie zainstalowane\n"
"serwery są uruchamiane domyślnie w trakcie\n"
"uruchamiania całego systemu. Nawet jeśli dany pakiet jest uważany\n"
"za bezpieczny i w trakcie instalacji nie są znane żadne problemy z nim\n"
@@ -528,11 +533,11 @@ msgstr ""
"najlepiej odpowiadającego potrzebom użytkownika."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -588,7 +593,7 @@ msgid ""
msgstr ""
"X (od systemu X Window) to serce graficznego interfejsu GNU/Linux,\n"
"z którego korzystają wszystkie środowiska graficzne (KDE, GNOME,\n"
-"AfterStep, WindowMaker, itd.) dostępne w systemie Mandriva Linux.\n"
+"AfterStep, WindowMaker, itd.) dostępne w systemie Mageia.\n"
"\n"
"Zostanie wyświetlona lista różnych parametrów pozwalających\n"
"na zmianę sposobu wyświetlania.\n"
@@ -706,41 +711,45 @@ msgstr ""
"skonfigurować ekranu graficznego."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -749,15 +758,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -771,11 +780,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"W tym etapie instalacji należy określić, gdzie na dysku zostanie\n"
-"zainstalowany system operacyjny Mandriva Linux. Jeśli dysk jest pusty\n"
+"zainstalowany system operacyjny Mageia. Jeśli dysk jest pusty\n"
"lub istniejące systemy operacyjne zajmują całe dostępne miejsce,\n"
"należy podzielić dysk na partycje.\n"
"Partycjonowanie to po prostu logiczny podział twardego dysku na oddzielne\n"
-"obszary w celu zainstalowania systemu Mandriva Linux.\n"
+"obszary w celu zainstalowania systemu Mageia.\n"
"\n"
"Ponieważ efekt partycjonowania jest nieodwracalny, czynność wydaje się\n"
"niebezpieczna i jest stresująca dla niedoświadczonych użytkowników.\n"
@@ -812,7 +821,7 @@ msgstr ""
"\n"
" * \"%s\": Jeśli chcesz usunąć z dysku\n"
"wszystkie dane i wszystkie partycje istniejące na dysku oraz zainstalować\n"
-"w to miejsce nowy system Mandriva Linux, wybierz to rozwiązanie.\n"
+"w to miejsce nowy system Mageia, wybierz to rozwiązanie.\n"
"Pamiętaj, że po zatwierdzeniu tego wyboru nie nie będzie możliwości "
"odwrotu.\n"
"\n"
@@ -919,8 +928,8 @@ msgstr ""
"\n"
"(*) Wymagana jest dyskietka sformatowana z systemem plików FAT. Aby\n"
"utworzyć taką dyskietkę w systemie GNU/Linux, wpisz polecenie\n"
-"\"mformat a:\", lub \"fdformat /dev/fd0\", a następnie \"mkfs.vfat /dev/fd0"
-"\"."
+"\"mformat a:\", lub \"fdformat /dev/fd0\", a następnie \"mkfs.vfat /dev/"
+"fd0\"."
#: ../help.pm:412
#, c-format
@@ -943,7 +952,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -962,7 +971,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -984,15 +993,15 @@ msgstr ""
"Kliknij \"%s\", jeśli już można przystąpić do formatowania partycji.\n"
"\n"
"Kliknij \"%s\", jeśli chcesz wybrać inne partycje dla nowej instalacji\n"
-"Mandriva Linux.\n"
+"Mageia.\n"
"\n"
"Kliknij \"%s\" jeśli chcesz wybrać sprawdzanie niektórych partycji\n"
"w poszukiwaniu uszkodzonych sektorów na dysku."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1004,8 +1013,8 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"W czasie, jaki upłynął od początkowego wydania Mandriva Linux, być może "
-"niektóre pakietyzostały zaktualizowane. Niektóre błędy mogły\n"
+"W czasie, jaki upłynął od początkowego wydania Mageia, być może niektóre "
+"pakietyzostały zaktualizowane. Niektóre błędy mogły\n"
"zostać naprawione, zaś problemy z bezpieczeństwem rozwiązane. Aby\n"
"skorzystać z możliwości aktualizacji, dobrze jest pobrać część danych\n"
"z Internetu. Wybierz \"%s\", jeśli posiadasz działające połączenie\n"
@@ -1018,7 +1027,7 @@ msgstr ""
",aby pobrać i zainstalować wybrane pakiety lub \"%s\", aby anulować."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1027,7 +1036,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1042,7 +1051,7 @@ msgstr ""
"Jeśli nie wiesz co wybrać, użyj domyślnej opcji. Będzie można zmienić "
"poziom\n"
"bezpieczeństwa w późniejszym czasie przy użyciu narzędzia draksec\n"
-"uruchamianego z Centrum Sterowania Mandriva Linux.\n"
+"uruchamianego z Centrum Sterowania Mageia.\n"
"\n"
"Pole \"%s\" może informować system o użytkowniku komputera odpowiedzialnego\n"
"za bezpieczeństwo. Komunikaty bezpieczeństwa będą przesyłane na ten adres."
@@ -1053,24 +1062,27 @@ msgid "Security Administrator"
msgstr "Administrator zabezpieczeń"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1086,21 +1098,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1117,18 +1131,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"W tym etapie instalacji wybierasz partycje, na których będzie instalowany\n"
-"Mandriva Linux. Jeśli partycje istnieją (np. pozostały po poprzedniej "
-"instalacji,\n"
+"Mageia. Jeśli partycje istnieją (np. pozostały po poprzedniej instalacji,\n"
"lub też zostały założone innym narzędziem), to można ich użyć do "
"instalacji.\n"
"W innym przypadku należy je utworzyć.\n"
@@ -1143,7 +1150,7 @@ msgstr ""
" * \"%s\": ta opcja kasuje wszystkie partycje na wybranym dysku.\n"
"\n"
" * \"%s\": ta opcja automatycznie tworzy partycje\n"
-" ext3 oraz swap na wolnej (niespartycjonowanej) przestrzeni na dysku\n"
+" ext4 oraz swap na wolnej (niespartycjonowanej) przestrzeni na dysku\n"
"\n"
" * \"%s\": daje dostęp do dodatkowych opcji:\n"
"\n"
@@ -1195,15 +1202,6 @@ msgstr ""
"\n"
"Aby uzyskać informacje dotyczące różnych dostępnych rodzajów systemów\n"
"plików, należy przeczytać rozdział ext2fs podręcznika.\n"
-"\n"
-"Jeśli instalacja odbywa się na komputerze PPC, system będzie wymagał\n"
-"utworzenia małej partycji HFS \"rozruchowej\" (bootstrap) o wielkości\n"
-"co najmniej 1MB, która będzie używana przez program rozruchowy yaboot.\n"
-"Jeśli chcesz, aby ta partycja była większa, powiedzmy 50 MB, można\n"
-"ją traktować jako użyteczne miejsce np. do przechowywania zapasowego\n"
-"jądra oraz obrazów do uniknięcia skutków ewentualnych awarii "
-"uniemożliwiających\n"
-"rozruch systemu z normalnej partycji."
#: ../help.pm:526
#, c-format
@@ -1241,40 +1239,46 @@ msgid "Toggle between normal/expert mode"
msgstr "Przełącz między trybem zwykłym a zaawansowanym"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Na dysku wykryto więcej niż jedną partycję Windows. Wybierz, którą\n"
-"z nich chcesz zmniejszyć w celu zainstalowania systemu Mandriva Linux\n"
+"z nich chcesz zmniejszyć w celu zainstalowania systemu Mageia\n"
"\n"
"Każda partycja jest określana za pomocą informacji: \"Nazwa linuksowa\",\n"
"\"Nazwa Windows\" i \"Rozmiar\".\n"
@@ -1314,35 +1318,35 @@ msgstr ""
"aby otrzymać pełną listę krajów."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Ten krok jest aktywowany tylko wtedy, jeśli na komputerze została\n"
"znaleziona stara partycja GNU/Linux.\n"
"\n"
"Instalator musi teraz otrzymać informację, czy chcesz przeprowadzić nową\n"
-"instalację, czy też uaktualnić istniejący system Mandriva Linux:\n"
+"instalację, czy też uaktualnić istniejący system Mageia:\n"
"\n"
" * \"%s\": W większości przypadków, ta opcja powoduje całkowite\n"
"usunięcie starego systemu. Jednak w zależności od schematu\n"
@@ -1352,13 +1356,13 @@ msgstr ""
"opcji.\n"
"\n"
" * \"%s\": Ta klasa instalacji umożliwia uaktualnienie pakietów\n"
-"aktualnie zainstalowanych w systemie Mandriva Linux. Twój bieżący\n"
+"aktualnie zainstalowanych w systemie Mageia. Twój bieżący\n"
"schemat partycjonowania oraz dane użytkownika nie zostaną zmienione.\n"
"Większość innych kroków konfiguracyjnych pozostanie dostępna,\n"
"podobnie do instalacji standardowej.\n"
"\n"
"Użycie wersji \"Uaktualnienie\" powinno zadziałać dobrze na systemach\n"
-"Mandriva Linux w wersji \"8.1\" i późniejszych. Przeprowadzanie\n"
+"Mageia w wersji \"8.1\" i późniejszych. Przeprowadzanie\n"
"uaktualnienia z wersji wcześniejszych niż \"8.1\" nie jest zalecane."
#: ../help.pm:594
@@ -1401,7 +1405,7 @@ msgstr ""
"klawiatury z łacińskiego na narodowy."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1417,8 +1421,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1462,7 +1465,7 @@ msgstr ""
"Uwaga dotycząca obsługi UTF-8 (unikodu): Unikod jest nowym kodowaniem\n"
"znaków umożliwiającym równoczesną osługę wszystkich istniejących\n"
"języków. Jednak pełna obsługa tego standardu jest wciąż w trakcie\n"
-"rozwoju w systemach GNU/Linux. Z tego powodu, Mandriva Linux\n"
+"rozwoju w systemach GNU/Linux. Z tego powodu, Mageia\n"
"używa go lub nie w zależności od wyboru użytkownika:\n"
"\n"
"* Po wybraniu języków z często używanym kodowaniem (języki latin1,\n"
@@ -1604,7 +1607,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1630,10 +1633,10 @@ msgstr ""
"wiesz co robisz."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1654,11 +1657,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Nadszedł czas na wybranie systemu drukowania. Inne systemy operacyjne\n"
-"mogą zaoferować jeden, lecz Mandriva Linux oferuje dwa. Każdy z tych\n"
+"mogą zaoferować jeden, lecz Mageia oferuje dwa. Każdy z tych\n"
"systemów wydruku jest najlepszy dla określonego typu konfiguracji.\n"
"\n"
" * \"%s\" oznaczający \"print, do not queue\" (drukuj, nie buforuj),\n"
@@ -1709,7 +1712,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1793,8 +1796,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1811,7 +1813,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1865,7 +1867,7 @@ msgstr ""
"\n"
" * \"%s\": jeśli chcesz skonfigurować połączenie z Internetem lub\n"
"sieć lokalną użyj tej opcji. Zobacz na wydrukowaną dokumentację lub\n"
-"użyj Centrum Sterownia Mandriva Linux po zakończeniu instalacji,\n"
+"użyj Centrum Sterownia Mageia po zakończeniu instalacji,\n"
"aby otrzymać pełną pomoc.\n"
"\n"
" * \"%s\": umożliwia konfigurację adresów pośrednika HTTP i FTP,\n"
@@ -1904,26 +1906,28 @@ msgid "Graphical Interface"
msgstr "Interfejs graficzny"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Wybierz dysk, który chcesz wykasować, by założyć na nim\n"
-"partycję Mandriva Linux. Pamiętaj, że wszystkie dane z tego\n"
+"partycję Mageia. Pamiętaj, że wszystkie dane z tego\n"
"dysku zostaną utracone bez możliwości odzyskania!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Wybierz \"%s\", jeśli chcesz usunąć wszystkie dane i partycje zapisane\n"
"na tym dysku. Pamiętaj, po wybraniu \"%s\", nie będzie\n"
diff --git a/perl-install/install/help/po/pt.po b/perl-install/install/help/po/pt.po
index 470358a0c..80634cae5 100644
--- a/perl-install/install/help/po/pt.po
+++ b/perl-install/install/help/po/pt.po
@@ -1,47 +1,41 @@
-# translation of pt.po to Português
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-# Latest versions of po files are at http://www.mandrivalinux.com/l10n/pt.php3
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
+# Michael Martins, 2024
#
-# Copyright (C) 2000 Mandriva
-#
-# Fernando Moreira <fmoreira@netc.pt>, 1999.
-# Jorge Costa <Jorgercosta@netc.pt>, 2001.
-# José JORGE <jose.jorge@oreka.com>, 2002,2003.
-# Jose Jorge <jjorge@free.fr>, 2003, 2004, 2005.
-# Jose Carlos D. S. Saraiva <jose.d.s.saraiva@clix.pt>, 2004.
-# Zé <mmodem00@netvisao.pt>, 2004, 2005, 2006.
-# Américo José Melo <mmodem00@netvisao.pt>, 2004, 2005.
-# Ze <mmodem00@netvisao.pt>, 2004.
-# José Melo <mmodem00@gmail.com>, 2005.
-# José Melo <mmodme00@gmail.com>, 2005.
-# Jose JORGE <jjorge@free.fr>, 2005.
-# Zé <mmodem00@gmail.com>, 2006, 2007.
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: pt\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2007-02-18 17:17+0000\n"
-"Last-Translator: Zé <mmodem00@gmail.com>\n"
-"Language-Team: Português <pt@li.org>\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: Michael Martins, 2024\n"
+"Language-Team: Portuguese (https://app.transifex.com/MageiaLinux/teams/9361/"
+"pt/)\n"
+"Language: pt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % "
+"1000000 == 0 ? 1 : 2;\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
-"Antes de continuar, deve ler atentamente os termos da licença. A licença\n"
-"cobre toda a distribuição Mandriva Linux. Se concorda com todos os termos\n"
-"presentes, active a caixa \"%s\". Se não concorda, clique no botão \"%s\"\n"
-"para reiniciar o seu computador."
+"Antes de continuar, você deve ler atentamente os termos da licença. Ela\n"
+"cobre toda a distribuição do Mageia. Se você concordar com todos os\n"
+"termos, marque a caixa \"%s\". Caso contrário, clicar no botão \"%s\"\n"
+"reiniciará seu computador."
#: ../help.pm:20
#, c-format
@@ -124,12 +118,12 @@ msgstr ""
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Nome de usuário"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Aceitar o usuário"
#: ../help.pm:54
#, c-format
@@ -139,7 +133,8 @@ msgstr "Deseja usar esta opção?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -149,24 +144,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Aqui estão listadas partições Linux existentes detectadas no seu disco.\n"
@@ -207,27 +206,28 @@ msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"A instalação Mandriva Linux é distribuída em vários CD-ROMs. Se um pacote\n"
-"seleccionado estiver localizado noutro CD-ROM, o DrakX irá ejectar o actual\n"
-"CD e pedir para inserir o CD pedido. Se não tiver o CD em questão à mão,\n"
-"clique apenas em \"%s\", os pacote correspondentes não será instalados."
+"A instalação do Mageia é distribuída em vários CD-ROMs. Se um\n"
+"pacote selecionado estiver localizado em outro CD-ROM, o DrakX irá ejetar\n"
+"o CD atual e solicitar que você insira o CD necessário. Se você não tiver\n"
+"o CD solicitado em mãos, basta clicar em \"%s\", e os pacotes "
+"correspondentes\n"
+"não serão instalados."
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -277,59 +277,51 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"É agora tempo de especificar que programas deseja instalar no seu\n"
-"sistema. Há centenas de pacotes disponíveis para o Mandriva Linux, e para\n"
-" simplificar a gestão, foram colocados em grupos de aplicações similares.\n"
-"\n"
-"O Mandriva Linux classifica os grupos de pacotes em quatro categorias.\n"
-"Pode misturar e combinar aplicações de várias categorias, para que a\n"
-"instalação de uma ``Estação de trabalho'' possa ainda ter aplicações da\n"
-"categoria ``Servidor'' instaladas.\n"
-"\n"
-" * \"%s\": se planeia usar a sua máquina como uma estação de trabalho,\n"
-"escolha um ou mais dos grupos dessa mesma categoria.\n"
-"\n"
-" * \"%s\": se planeia usar a sua máquina para programar, seleccione os\n"
-"grupos apropriados dentro dessa categoria. O grupo especial \"LSB\" irá\n"
-"configurar o seu sistema para que cumpra o mais possível com as \n"
-"especificações Linux Standard Base.\n"
-"\n"
-" Ao seleccionar o grupo \"LSB\" irá também instalar as séries kernel \"2.4"
-"\",\n"
-"em vez do \"2.6\" predefinido. Isto é para garantir concordância 100%%- LSB\n"
-"do sistema. No entanto, se não seleccionar o grupo \"LSB\", terá na mesma\n"
-"um sistema que é 100%% LSB-concordante.\n"
-"\n"
-" * \"%s\": se pretende que a sua máquina seja um servidor, seleccione\n"
-"qual dos serviços comuns deseja instalar.\n"
-"\n"
-" * \"%s\": aqui é onde irá escolher o seu ambiente gráfico preferido. Pelo\n"
-" menos deve ser seleccionado se deseja ter um interface gráfico disponível.\n"
-"\n"
-"Movendo o cursor do rato sobre o nome de um grupo, irá mostrar um breve\n"
-"texto explanatório acerca desse grupo.\n"
-"\n"
-"Pode seleccionar a caixa \"%s\", que é útil se está familiarizado com os\n"
-"pacotes oferecidos ou se quer ter controlo total sobre o que é instalado.\n"
-"\n"
-"Se iniciar a instalação em modo \"%s\", pode desseleccionar todos os\n"
-"grupos e prevenir a instalação de novos pacotes. Isto é útil para reparar\n"
-"ou actualizar um sistema existente.\n"
-"\n"
-"Se desseleccionar todos os grupos quando executa uma instalação regular\n"
-"(em oposição a uma actualização), um diálogo irá aparecer a sugestionar\n"
-"opções diferentes para uma instalação mínima:\n"
-"\n"
-" * \"%s\": instala o número mínimo de pacotes possíveis para ter um\n"
-"ambiente gráfico instalado.\n"
-"\n"
-" * \"%s\": instala o sistema base mais utilidades básicas e a sua\n"
-"documentação. Esta instalação é apropriada para configurar um servidor.\n"
-"\n"
-" * \"%s\": irá instalar o número mínimo absoluto de pacotes necessários\n"
-"para ter um sistema Linux funcional. Com esta instalação irá apenas ter um\n"
-"interface de linha de comandos. O tamanho total desta instalação é cerca\n"
-"de 65 megabytes."
+"Agora é hora de especificar quais programas você deseja instalar em seu "
+"sistema.\n"
+"Existem milhares de pacotes disponíveis para o Mageia, e para simplificar o\n"
+"gerenciamento, eles foram agrupados em categorias de aplicações similares.\n"
+"\n"
+"O Mageia classifica os grupos de pacotes em quatro categorias. Você pode\n"
+"misturar e combinar aplicações das várias categorias, de modo que uma\n"
+"instalação \"Estação de trabalho\" ainda possa ter aplicações da categoria\n"
+"\"Servidor\" instaladas.\n"
+"\n"
+" * \"%s\": se você planeja usar sua máquina como uma estação de trabalho,\n"
+"selecione um ou mais dos grupos na categoria de estação de trabalho.\n"
+"\n"
+" * \"%s\": se você planeja usar sua máquina para programação, selecione os\n"
+"grupos apropriados dessa categoria. O grupo especial \"LSB\" configurará "
+"seu\n"
+"sistema para que ele esteja o mais próximo possível das especificações do\n"
+"Linux Standard Base.\n"
+"\n"
+" Selecionar o grupo \"LSB\" garantirá 100% de conformidade com o\n"
+"LSB do sistema. No entanto, se você não selecionar o grupo \"LSB\", ainda\n"
+"terá um sistema quase 100% compatível com o LSB.\n"
+"\n"
+" * \"%s\": se sua máquina for destinada a ser um servidor, selecione quais\n"
+"dos serviços mais comuns você deseja instalar em sua máquina.\n"
+"\n"
+" * \"%s\": aqui você escolherá seu ambiente gráfico preferido. Pelo menos\n"
+"um deve ser selecionado se você quiser ter uma interface gráfica "
+"disponível.\n"
+"\n"
+"Mover o cursor do mouse sobre um nome de grupo exibirá um texto explicativo "
+"sobre esse grupo.Você pode marcar a caixa \"%s\", que é útil se você estiver "
+"familiarizado com os pacotes oferecidos ou se desejar ter controle total "
+"sobre o que será instalado.Se você iniciar a instalação no modo \"%s\", pode "
+"desmarcar todos os grupos e evitar a instalação de novos pacotes. Isso é "
+"útil para reparar ou atualizar um sistema existente.Se você desmarcar todos "
+"os grupos ao realizar uma instalação regular (em vez de uma atualização), "
+"uma caixa de diálogo será exibida sugerindo diferentes opções para uma "
+"instalação mínima:\"%s\": instala o número mínimo de pacotes possível para "
+"ter uma área de trabalho gráfica funcional.\"%s\": instala o sistema base "
+"mais utilitários básicos e sua documentação. Esta instalação é adequada para "
+"configurar um servidor.\"%s\": instalará o número absoluto mínimo de pacotes "
+"necessários para obter um sistema Linux funcional. Com esta instalação, você "
+"terá apenas uma interface de linha de comando. O tamanho total desta "
+"instalação é de cerca de 65 megabytes."
#: ../help.pm:149 ../help.pm:591
#, c-format
@@ -360,10 +352,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -383,39 +375,52 @@ msgid ""
"another installation. See the second tip of the last step on how to create\n"
"such a floppy."
msgstr ""
-"Se escolheu instalar pacotes individualmente, o instalador irá apresentar\n"
+"Se você optar por instalar pacotes individualmente, o instalador "
+"apresentará\n"
"uma árvore contendo todos os pacotes classificados por grupos e subgrupos.\n"
-"Enquanto pesquisa na árvore, pode seleccionar grupos inteiros, subgrupos,\n"
+"Enquanto navega pela árvore, você pode selecionar grupos inteiros, "
+"subgrupos\n"
"ou pacotes individuais.\n"
"\n"
-"Sempre que seleccionar um pacote na árvore, uma descrição irá aparecer\n"
-"à sua direita para o informar acerca do propósito desse pacote.\n"
-"\n"
-"!! Se um pacote servidor foi seleccionado, ou porque escolheu\n"
-"especificamente o pacote individual ou porque fazia parte de um grupo de\n"
-"pacotes, será-lhe pedido para confirmar que realmente quer que esses\n"
-"servidores sejam instalados. Por omissão o Mandriva Linux irá\n"
-"automaticamente iniciar qualquer serviço instalado no arranque. Mesmo\n"
-"que sejam seguros e não tenham qualquer problema conhecido na altura\n"
-"da saída da distribuição, é bem possível que sejam descobertos 'buracos'\n"
-"na segurança a seguir à finalização desta versão Mandriva Linux. Se não\n"
-"souber que serviço particular é suposto fazer ou porque é instalado, então\n"
-"clique em \"%s\". Ao clicar em \"%s\" irá instalar os serviços listados e\n"
-"serºao iniciados automaticamente no arranque. !!\n"
-"\n"
-"A opção \"%s\" é usada para desactivar o dialogo de aviso que\n"
-"aparece sempre que o instalador escolhe automaticamente um pacote\n"
-"para resolver problemas de dependências. alguns pacotes dependem de\n"
-"outros e a instalação de um determinado pacote pode requerer a instalação\n"
-"de outro pacote. O instalador pode determinar que pacotes são necessários\n"
-"para satisfazer uma dependência para terminar com sucesso a instalação.\n"
-"\n"
-"O pequeno ícone de disquete no fundo desta lista permite-lhe carregar uma\n"
-"lista de pacotes escolhida durante uma instalação anterior. Isto é útil se\n"
-"tiver um número de máquinas que deseja configurar identicamente. Ao\n"
-"clicar neste ícone irá-lhe pedir para inserir uma disquete criada no fim\n"
-"de outra instalação. Veja a segunda dica do último passo sobre como criar\n"
-"essa disquete."
+"Sempre que você selecionar um pacote na árvore, uma descrição aparecerá\n"
+"à direita para informar o propósito desse pacote.\n"
+"\n"
+" !! Se um pacote de servidor for selecionado, seja porque você escolheu\n"
+"especificamente o pacote individual ou porque ele fazia parte de um grupo\n"
+"de pacotes, será solicitado que você confirme se realmente deseja que esses\n"
+"servidores sejam instalados. Por padrão, o Mageia iniciará automaticamente\n"
+"quaisquer serviços instalados durante o tempo de inicialização. Mesmo que\n"
+"eles sejam seguros e não tenham problemas conhecidos na época em que\n"
+"a distribuição foi lançada, é possível que vulnerabilidades de segurança "
+"tenham\n"
+"sido descobertas após a finalização desta versão do Mageia. Se você não "
+"souber\n"
+"o que um serviço específico deve fazer ou por que está sendo instalado, "
+"clique em \"%s\".\n"
+"Clicar em \"%s\" instalará os serviços listados e eles serão iniciados "
+"automaticamente\n"
+"durante o tempo de inicialização. !!\n"
+"\n"
+"A opção \"%s\" é usada para desativar a caixa de diálogo de aviso que "
+"aparece\n"
+"sempre que o instalador seleciona automaticamente um pacote para resolver "
+"um\n"
+"problema de dependência. Alguns pacotes dependem de outros e a instalação "
+"de\n"
+"um pacote específico pode exigir a instalação de outro pacote. O instalador "
+"pode\n"
+"determinar quais pacotes são necessários para satisfazer uma dependência e "
+"concluir\n"
+"a instalação com sucesso.\n"
+"\n"
+"O ícone de disquete pequeno na parte inferior da lista permite carregar uma\n"
+"lista de pacotes criada durante uma instalação anterior. Isso é útil se você "
+"tiver\n"
+"várias máquinas que deseja configurar de maneira idêntica. Clicar nesse "
+"ícone\n"
+"solicitará que você insira o disquete criado ao final de outra instalação. "
+"Consulte\n"
+"a segunda dica do último passo sobre como criar um disquete desse tipo."
#: ../help.pm:183
#, c-format
@@ -491,7 +496,7 @@ msgstr ""
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Relógio do hardware configurado para GMT"
#: ../help.pm:213
#, c-format
@@ -527,7 +532,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -581,62 +586,68 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
-"X (para Sistema X Window) é o coração do interface gráfico GNU/Linux no\n"
-"qual todos os ambientes gráficos (KDE, GNOME, AfterStep, WindowMaker,\n"
-"etc.) fornecidos com o Mandriva Linux, funcionam.\n"
+"X (para o X Window System) é o coração da interface gráfica do GNU/Linux,\n"
+"sobre a qual todos os ambientes gráficos (KDE, GNOME, AfterStep,\n"
+"WindowMaker, etc.) fornecidos com o Mageia dependem.\n"
"\n"
-"Irá ver uma lista de parâmetros diferentes para mudar, para poder\n"
-"ter uma boa apresentação gráfica\n"
+"Você verá uma lista de diferentes parâmetros para ajustar e obter uma "
+"exibição\n"
+"gráfica otimizada.\n"
"\n"
"Placa Gráfica\n"
"\n"
-" O instalador irá normalmente detectar e configurar automaticamente\n"
-"a placa gráfica da sua máquina. Se isto não estiver correcto, pode\n"
-"escolher da lista a placa gráfica que tem instalada.\n"
+"O instalador normalmente detectará e configurará automaticamente a\n"
+"placa gráfica instalada em sua máquina. Se isso não estiver correto, você\n"
+"pode escolher na lista a placa que você realmente tem instalada.\n"
"\n"
-" Se na situação de haver diferentes servidores disponíveis para a sua\n"
-"placa, com ou sem aceleração 3D, será-lhe dado a escolher o servidor\n"
-"que melhor sirva as suas necessidades\n"
+"Na situação em que diferentes drivers estão disponíveis para sua placa, com\n"
+"ou sem aceleração 3D, você será solicitado a escolher o driver que melhor\n"
+"atende às suas necessidades.\n"
"\n"
"\n"
"\n"
"Monitor\n"
"\n"
-" Normalmente o instalador irá automaticamente detectar e configurar o\n"
-"ecrã/monitor ligado á sua máquina. Se não estiver correcto, pode escolher\n"
-"da lista o monitor que está ligado ao seu computador.\n"
+"Normalmente, o instalador detectará e configurará automaticamente o\n"
+"monitor\n"
+"conectado à sua máquina. Se isso não estiver correto, você pode escolher na\n"
+"lista o monitor que está conectado ao seu computador.\n"
"\n"
"\n"
"\n"
"Resolução\n"
"\n"
-" Aqui pode escolher as resoluções e cores disponíveis para o seu\n"
-"material gráfico. Escolha o que melhor sirva as suas necessidades\n"
-"(poderá fazer alterações a seguir à instalação)\n"
-"Um exemplo da configuração escolhida é mostrada no ecrã.\n"
+"Aqui você pode escolher as resoluções e profundidades de cor disponíveis\n"
+"para o seu hardware gráfico. Escolha a que melhor atende às suas "
+"necessidades\n"
+"(você poderá fazer alterações após a instalação). Uma amostra da "
+"configuração\n"
+"escolhida é exibida na imagem do monitor\n"
"\n"
"\n"
"\n"
"Teste\n"
"\n"
-" Dependendo do seu material, esta entrada poderá não apareder.\n"
+" Dependendo do seu hardware, esta opção pode não aparecer.\n"
+"\n"
+" O sistema tentará abrir uma tela gráfica na resolução desejada. Se você\n"
+"ver a mensagem de teste durante o teste e responder \"%s\", então o DrakX\n"
+"prosseguirá para a próxima etapa. Se você não a ver, isso significa que "
+"alguma\n"
+"parte da configuração detecção automática estava incorreta e o teste será\n"
+"automaticamente encerrado após 12 segundos, retornando ao menu. Altere\n"
+"as configurações até obter uma exibição gráfica correta.\n"
+"\n"
"\n"
-" S sistema irá tentar abrir um ecrã gráfico na resolução escolhida.\n"
-"Se conseguir ver a mensagem teste durante o teste e responder \"%s\",\n"
-"então o DrakX irá proceder á etapa seguinte. Se não o vir, então\n"
-"significa que alguma parte da configuração auto detectada está\n"
-"incorrecta e o teste irá acabar automáticamente ao fim de 12 segundos,\n"
-"e retornará ao menu. Mude as configurações até obtenha a correcta\n"
-"disposição gráfica.\n"
"\n"
"\n"
"\n"
"Opções\n"
"\n"
-" Aqui pode escolher se deseja que o computador arranque\n"
-"automáticamente em modo gráfico. De facto, pode querer verificar\n"
-"\"%s\" se a sua máquina é um servidor, ou se não conseguir obter\n"
-"uma boa configuração de ecrã."
+" Esta etapa permite escolher se você deseja que sua máquina mude\n"
+"automaticamente para uma interface gráfica na inicialização. Obviamente,\n"
+"você pode querer marcar \"%s\" se sua máquina for atuar como um servidor\n"
+"ou se não conseguir configurar a exibição corretamente."
#: ../help.pm:291
#, c-format
@@ -703,39 +714,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -744,15 +759,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -765,67 +780,79 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Agora precisa decidir onde deseja instalar o sistema operativo\n"
-"Mandriva Linux no seu disco rígido. Se o seu disco rígido estiver vazio\n"
-"ou, se um sistema operativo existente usa todo o espaço disponível,\n"
-"irá ser preciso particionar o disco. Básicamente, particionar um disco\n"
-"rígido significa dividi-lo de maneira lógica para criar o espaço\n"
-"necessário para instalar o seu novo sistema Mandriva Linux.\n"
-"\n"
-"Como os efeitos da operação de particionamento são geralmente\n"
-"irreversíveis, e pode levar a perda de dados, particionar pode ser\n"
-"intimidante para um utilizador inexperiente. Felizmente, o DrakX tem\n"
-"um assistente que simplifica o processo.Antes de avançar para o\n"
-"próximo passo lê pelo resto da secção e todo o resto, leve o tempo\n"
-"que achar necessário.\n"
-"\n"
-"Dependendo da configuração do disco rígido, várias opções\n"
-"estão disponíveis.\n"
-"\n"
-" * \"%s\". Esta opção irá automaticamente particionar o(s) disco(s)\n"
-"vazio(s). Se usar esta opção, não irão haver mais perguntas.\n"
-"\n"
-" * \"%s\". O assistente detectou uma ou mais partições Linux no disco\n"
-"rígido. Se as deseja usar, escolha esta opção. Será-lhe então pedido\n"
-"para escolher o ponto de montagem associado a cada partição. Os\n"
-"pontos habituais de montagem são seleccionados por omissão, e para\n"
-" a maioria é uma boa ideia mantê-los assim.\n"
-"\n"
-" * \"%s\". Se a Microsoft Windows é instalada no seu disco rígido e \n"
-"utiliza todo o espaço disponível, irá ter que criar espaço livre para o\n"
-"GNU/Linux. Para o fazer, pode apagar a sua partição Microsoft Windows\n"
-"e dados (ver a solução ``Apagar o disco todo'') ou redimensionar a partição\n"
-"FAT ou NTFS do Microsoft Windows. O redimensionamento pode ser feito\n"
-"sem a perda de qualquer dado, desde que previamente tenha desfragmentado\n"
-"a partição Windows. Recomenda-se que faça cópias de segurança.\n"
-"Recomenda-se que use esta opção, se quer usar os dois sistemas\n"
-"operativos, Mandriva Linux e Microsoft Windows no mesmo computador.\n"
-"\n"
-" Antes de escolher esta opção, por favor compreenda que a seguir a este\n"
-"procedimento, o tamanho da partição do seu Microsoft Windows será mais\n"
-"pequeno. Terá menos espaço livre no Microsoft Windows para gravar os\n"
-"seus dados ou instalar novo software.\n"
-"\n"
-" * \"%s\". Se deseja apagar todos os dados e todas as partições presentes\n"
-"no disco rígido e substituí-los pelo seu novo sistema Mandriva Linux,\n"
-"escolha esta opção. Seja cuidadoso, porque não será mais capaz de\n"
-"desfazer esta operação após ter confirmado.\n"
-"\n"
-" !! Se escolher esta opção, todos os dados no disco serão apagados!!\n"
-"\n"
-" * \"%s\": Esta opção aparece quando o disco rígido é inteiramente do\n"
-"sistema Microsoft Windows. Escolher esta opção irá simplesmente apagar\n"
-"tudo no disco e começar de novo a particionar tudo do princípio.\n"
-"\n"
-" !! Se escolher esta opção, todos os dados no disco vai ser perdidos. !!\n"
-"\n"
-" * \"%s\". Escolha esta opção se deseja particionar manualmente o seu\n"
-"disco rígido. Tenha cuidado -- é uma opção potente mas perigosa e pode\n"
-"muito facilmente perder todos os seus dados. É por isso que esta opção\n"
-"é apenas recomendada a alguém que já tenha feito alguma coisa parecida\n"
-"anteriormente e tenha alguma experiência. Para mais instruções em como\n"
-"usar a utilidade DiskDrake, refira-se à secção ``Gerir As Suas Partições''\n"
-"no ``Guia Inicial''."
+"Agora você precisa decidir onde deseja instalar o sistema operacional "
+"Mageia\n"
+"em seu disco rígido. Se o seu disco rígido estiver vazio ou se um sistema\n"
+"operacional existente estiver usando todo o espaço disponível, você terá "
+"que\n"
+"particionar o disco. Basicamente, particionar um disco rígido significa "
+"dividi-lo\n"
+"logicamente para criar o espaço necessário para instalar o novo sistema "
+"Mageia.\n"
+"\n"
+"Como o processo de particionamento de um disco rígido é geralmente "
+"irreversível\n"
+"e pode levar a perdas de dados, o particionamento pode ser intimidante e "
+"estressante\n"
+"para o usuário inexperiente. Felizmente, o DrakX inclui um assistente que "
+"simplifica\n"
+"esse processo. Antes de continuar com esta etapa, leia o restante desta "
+"seção e,\n"
+"acima de tudo, tome seu tempo.\n"
+"\n"
+"Dependendo da configuração do seu disco rígido, várias opções estão "
+"disponíveis:\n"
+"\n"
+" * \"%s\". Esta opção realizará um particionamento automático do(s) seu(s)\n"
+"disco(s) vazio(s). Se você usar esta opção, não haverá mais solicitações.\n"
+"\n"
+" * \"%s\". O assistente detectou uma ou mais partições Linux existentes\n"
+"em seu disco rígido. Se você quiser usá-las, escolha esta opção. Você será\n"
+"então solicitado a escolher os pontos de montagem associados a cada uma\n"
+"das partições. Os pontos de montagem legados são selecionados por padrão e,\n"
+"na maioria das vezes, é uma boa ideia mantê-los.\n"
+"\n"
+" * \"%s\". Se o Microsoft Windows estiver instalado em seu disco rígido e\n"
+"ocupar todo o espaço disponível, você terá que criar espaço livre para o\n"
+"GNU/Linux. Para fazer isso, você pode excluir a partição e os dados do\n"
+"Microsoft Windows (veja a solução ``Apagar todo o disco'') ou redimensionar\n"
+"a partição FAT ou NTFS do Microsoft Windows. O redimensionamento pode ser\n"
+"realizado sem perda de dados, desde que você tenha desfragmentado a\n"
+"partição do Windows anteriormente. É altamente recomendável fazer backup\n"
+"dos seus dados. Usar esta opção é recomendado se você deseja utilizar tanto\n"
+"o Mageia quanto o Microsoft Windows no mesmo computador.\n"
+"\n"
+" Antes de escolher esta opção, por favor, entenda que após este "
+"procedimento,\n"
+"o tamanho da sua partição do Microsoft Windows será menor do que era\n"
+"inicialmente. Você terá menos espaço livre no Microsoft Windows para "
+"armazenar\n"
+"seus dados ou para instalar novos softwares.\n"
+"\n"
+" * \"%s\". Se você deseja excluir todos os dados e todas as partições\n"
+"presentes em seu disco rígido e substituí-los pelo novo sistema Mageia,\n"
+"escolha esta opção. Tenha cuidado, pois você não poderá desfazer esta\n"
+"operação após confirmar.\n"
+"\n"
+" !! Se você escolher esta opção, todos os dados em seu disco serão "
+"excluídos. !!\n"
+"\n"
+" * \"%s\". Esta opção aparece quando o disco rígido é totalmente ocupado\n"
+"pelo Microsoft Windows. Escolher esta opção excluirá tudo no disco e "
+"começará\n"
+"do zero, particionando tudo a partir do início.\n"
+"\n"
+" !! Se você escolher esta opção, todos os dados em seu disco serão "
+"perdidos. !!\n"
+"\n"
+" * \"%s\". Escolha esta opção se você deseja particionar seu disco rígido\n"
+"manualmente. Tenha cuidado -- é uma escolha poderosa, mas perigosa, e você\n"
+"pode facilmente perder todos os seus dados. Por isso, esta opção é "
+"realmente\n"
+"recomendada apenas se você já tiver feito algo semelhante antes e tiver "
+"alguma\n"
+"experiência. Para mais instruções sobre como usar a ferramenta DiskDrake,\n"
+"consulte a seção Gerenciando Suas Partições'' no Guia do Iniciante''."
#: ../help.pm:377
#, c-format
@@ -835,7 +862,7 @@ msgstr "Usar partição existente"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Usar o espaço livre da partição Microsoft Windows®"
#: ../help.pm:370
#, c-format
@@ -922,17 +949,17 @@ msgstr "Gerar disquete auto-instal"
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Replay"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Automático"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Salvar a seleção de pacotes"
#: ../help.pm:408
#, c-format
@@ -954,37 +981,39 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
msgstr ""
-"Se escolher usar algumas partições GNU/Linux, pode querer formatar\n"
-"algumas delas e apagar os dados nelas contidos. Para o fazer, por favor\n"
-"escolha essas partições.\n"
+"Se você optou por reutilizar algumas partições GNU/Linux legadas, pode\n"
+"ser necessário reformatar algumas delas e apagar qualquer dado que\n"
+"contenham. Para fazer isso, selecione essas partições também.\n"
"\n"
-"Por favor note que não é necessário formatar todas a partições já\n"
-"existentes. Tem que formatar as partições que tenham sistemas\n"
-"operativos (tais como \"/\", \"/usr\" ou \"/var\") mas não tem que\n"
-"formatar partições que contenham dados que deseja manter\n"
-"(tipicamente \"/home\").\n"
+"Por favor, observe que não é necessário reformatar todas as partições\n"
+"existentes. Você deve reformatar as partições que contêm o sistema "
+"operacional\n"
+"(como \"/\", \"/usr\" ou \"/var\"), mas não é necessário reformatar as "
+"partições que\n"
+"contêm dados que você deseja manter (tipicamente \"/home\").\n"
"\n"
-"Por favor tenha atenção quando seleccionar as partições. A seguir à\n"
-"formatação estar completa, todos os dados nas partições seleccionadas\n"
-"serão perdidos e não será capaz de os recuperar.\n"
+"Tenha cuidado ao selecionar partições. Após a formatação ser concluída,\n"
+"todos os dados nas partições selecionadas serão excluídos e não será "
+"possível\n"
+"recuperá-los.\n"
"\n"
-"Clique em \"%s\" quando estiver pronto para formatar as partições.\n"
+"Clique em \"%s\" quando estiver pronto para formatar as partições\n"
"\n"
-"Clique em \"%s\" se deseja escolher outra partição para o seu novo\n"
-"sistema operativo Mandriva Linux.\n"
+"Clique em \"%s\" se desejar escolher outra partição para a nova instalação\n"
+"do sistema operacional Mageia.\n"
"\n"
-"Clique em \"%s\" se deseja escolher partições para verificar se\n"
-"fisicamente há blocos defeituosos (\"bad blocks\") no disco."
+"Clique em \"%s\" se desejar selecionar partições que serão verificadas\n"
+"quanto a blocos defeituosos no disco."
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -996,19 +1025,18 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"No momento que instala o Mandriva Linux, é quase certo que alguns\n"
-"pacotes terão sido actualizados desde a distribuição inicial. Alguns\n"
-"erros podem ter sido corrigidos, e problemas de segurança resolvidos.\n"
-"Para lhe permitir beneficiar destas actualizações, está agora apto\n"
-"a fazer a transferi-las da Internet. Escolha \"%s\" se tem uma\n"
-"conexão Internet activa, ou \"%s\" se preferir instalar os\n"
-"pacotes actualizados mais tarde.\n"
-"\n"
-"Ao escolher \"%s\" mostra uma lista das localizações web de onde as\n"
-"actualizações podem ser transferidas. Deve escolher a que estiver\n"
-"mais perto de si. Irá aparecer uma selecção de pacotes em árvore:\n"
-"reveja a selecção, e clique em \"%s\" para transferir e instalar os\n"
-"pacotes seleccionados, ou clique em \"%s\" para abortar."
+"Ao instalar o Mageia, é provável que alguns pacotes tenham sido\n"
+"atualizados desde o lançamento inicial. Bugs podem ter sido corrigidos,\n"
+"questões de segurança resolvidas. Para permitir que você se beneficie\n"
+"dessas atualizações, agora você pode baixá-las da Internet. Marque \"%s\"\n"
+" se você tiver uma conexão com a Internet funcionando, ou \"%s\" se\n"
+"preferir instalar pacotes atualizados mais tarde.\n"
+"\n"
+"Escolher \"%s\" exibirá uma lista de locais na web dos quais as "
+"atualizações\n"
+"podem ser recuperadas. Você deve escolher um próximo a você. Uma árvore\n"
+"de seleção de pacotes aparecerá: revise a seleção e pressione \"%s\"para\n"
+"recuperar e instalar os pacotes selecionados, ou \"%s\" para abortar."
#: ../help.pm:450
#, c-format
@@ -1020,25 +1048,25 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
"security. Security messages will be sent to that address."
msgstr ""
-"Nesta fase, o DrakX irá permitir-lhe escolher o nível de segurança desejado\n"
-"para a sua máquina. Como regra de ouro, o nível de segurança deve ser maior\n"
-"quando a máquina contém informação crucial, ou quando está directamente\n"
-"exposta à internet. Porém, um nível de segurança superior, geralmente é\n"
-"obtido á custa de menos facilidade de uso/manuseamento.\n"
+"Neste ponto, o DrakX permitirá que você escolha o nível de segurança\n"
+"desejado para sua máquina. Como regra geral, o nível de segurança deve ser\n"
+"definido mais alto se a máquina contiver dados cruciais ou se estiver "
+"diretamente\n"
+"exposta à Internet. O compromisso é que um nível de segurança mais alto\n"
+"geralmente é obtido à custa da facilidade de uso.\n"
"\n"
-"Se não sabe o que escolher, deixe o valor predefinido. Poderá alterá-lo\n"
-"mais tarde com a ferramenta draksec, que faz parte do Centro de Controlo\n"
-"Mandriva Linux.\n"
+"Se você não souber o que escolher, mantenha a opção padrão. Você poderá\n"
+"alterá-la posteriormente com a ferramenta draksec, que faz parte do\n"
+"Centro de Controle do Mageia.\n"
"\n"
-"Preencha o campo \"%s\" com o endereço de correio electrónico da pessoa\n"
-"responsável pela segurança. As mensagens de segurança serão enviadas\n"
-"para esse endereço."
+"Preencha o campo \"%s\" com o endereço de e-mail da pessoa responsável\n"
+"pela segurança. Mensagens de segurança serão enviadas para esse endereço."
#: ../help.pm:461
#, c-format
@@ -1049,21 +1077,24 @@ msgstr "Administrador de Segurança"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1079,21 +1110,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1110,102 +1143,98 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Neste fase, precisa escolher que partições vão ser utilizadas para a\n"
-"instalação do seu sistema Mandriva Linux. Se já foram definidas partições,\n"
-"seja por uma instalação anterior do GNU/Linux seja por outra ferramenta de\n"
-"particionamento, pode utilizar-las . Senão, precisa definir partições no\n"
-"disco rígido.\n"
-"\n"
-"Para criar partições, tem primeiro que escolher um disco rígido. Pode\n"
-"escolher o disco que quer particionar clicando em ``hda'' para o primeiro\n"
-"disco IDE, ``hdb'' para o segundo, ``sda'' para o primeiro disco SCSI e\n"
-"por aí adiante.\n"
+"Neste ponto, você precisa escolher quais partições serão usadas para a\n"
+"instalação do seu sistema Mageia. Se as partições já foram definidas, seja\n"
+"a partir de uma instalação anterior do GNU/Linux ou por outra ferramenta\n"
+"de particionamento, você pode usar as partições existentes. Caso contrário,\n"
+"as partições do disco rígido devem ser definidas.\n"
"\n"
-"Para particionar o disco selecionado, pode usar estas opções:\n"
+"Para criar partições, você deve primeiro selecionar um disco rígido. Você\n"
+"pode selecionar o disco para particionamento clicando em ``hda'' para o\n"
+"primeiro disco IDE, ``hdb'' para o segundo, ``sda'' para o primeiro disco "
+"SCSI\n"
+"e assim por diante.\n"
"\n"
-" * \"%s\": esta opção apaga todas as partições do disco seleccionado\n"
+"Para particionar o disco rígido selecionado, você pode usar estas opções:\n"
"\n"
-" * \"%s\": esta opção permite criar automaticamente partições\n"
-"ext3 e partições swap no espaço livre do seu disco\n"
+" * \"%s\": esta opção exclui todas as partições no disco rígido selecionado\n"
"\n"
-"\"%s\": dá acesso para opções adicionais:\n"
+" * \"%s\": esta opção permite criar automaticamente partições ext4 e swap\n"
+"no espaço livre do seu disco rígido\n"
"\n"
-" * \"%s\": grava a tabela das partições para uma disquete. Útil para\n"
-"mais tarde recuperar a tabela das partições, se necessário. É fortemente\n"
-"recomendado que execute este passo.\n"
+"\"%s\": oferece acesso a recursos adicionais:\n"
"\n"
-" * \"%s\": permite restaurar uma tabela de partições anteriormente\n"
-"gravada numa disquete;\n"
+" * \"%s\": salva a tabela de partições em um disquete. Útil para "
+"recuperação\n"
+"da tabela de partições mais tarde, se necessário. Recomenda-se fortemente\n"
+"que você realize esta etapa.\n"
"\n"
-" * \"%s\": se a sua tabela das partições está danificada, pode-a tentar\n"
-"recuperar com esta opção. Por favor esteja atento e lembre-se que isto\n"
-"nem sempre resulta.\n"
+" * \"%s\": permite restaurar uma tabela de partições previamente salva a\n"
+"partir\n"
+"de um disquete.\n"
"\n"
-" * \"%s\": apaga todas as alterações e recarrega a tabela de partições\n"
-"que estava originalmente no disco.\n"
+" * \"%s\": se a tabela de partições estiver danificada, você pode tentar "
+"recuperá-la\n"
+"usando esta opção. Por favor, tenha cuidado e lembre-se de que isso nem\n"
+"sempre\n"
+"funciona.\n"
"\n"
-" * \"%s\": desmarque esta opção para forçar os utilizadores a montar\n"
-"e desmontar manualmente as médias amoviveis como disquetes e CD-ROMs.\n"
+" * \"%s\": descarta todas as alterações e recarrega a tabela de partições "
+"que\n"
+"estava originalmente no disco rígido.\n"
"\n"
-" * \"%s\": use esta opção se deseja usar um assistente para particionar o\n"
-"disco rígido. Isto é recomendado se não tem um bom conhecimento de \n"
-"como se faz um bom particionamento do disco.\n"
+" * \"%s\": esmarcar esta opção forçará os usuários a montar e desmontar\n"
+"manualmente mídias removíveis, como disquetes e CD-ROMs.\n"
"\n"
-" * \"%s\": use esta opção para cancelar as alterações.\n"
+" * \"%s\": use esta opção se você deseja usar um assistente para particionar "
+"seu\n"
+"disco rígido. Isso é recomendado se você não tiver um bom entendimento de\n"
+"particionamento.\n"
"\n"
-" * \"%s\": permite acções suplementares nas partições (tipo, opções,\n"
-"formatar) e dá mais informações sobre o disco rígido.\n"
+" * \"%s\": use esta opção para cancelar suas alterações.\n"
+" \n"
+" * \"%s\": permite ações adicionais em partições (tipo, opções, formato)\n"
+"e fornece mais informações sobre o disco rígido.\n"
"\n"
-" * \"%s\": quando tiver acabado de particionar o seu disco rígido, isto irá\n"
-"gravar as suas alterações no disco.\n"
+" * \"%s\": quando você terminar de particionar seu disco rígido, isso "
+"salvará\n"
+"suas alterações no disco.\n"
"\n"
-"Quando a definir o tamanho de uma partição, pode finalmente configurar\n"
-"o tamanho usando as teclas de setas do seu teclado.\n"
+"Ao definir o tamanho de uma partição, você pode ajustar o tamanho da\n"
+"partição com precisão usando as teclas de seta do teclado.\n"
"\n"
-"Nota: pode chegar a qualquer opção usando o teclado. Navegue através\n"
-"das partições usando as teclas [Tab] e as setas [Subir/Descer].\n"
+"Nota: você pode acessar qualquer opção usando o teclado. Navegue pelas\n"
+"partições usando [Tab] e as setas [Para Cima/Para Baixo].\n"
"\n"
-"Quando uma partição é selecionada, pode usar:\n"
+"Quando uma partição está selecionada, você pode usar:\n"
"\n"
-" * Ctrl-c para criar uma nova partição (quando escolhe uma partição vazia)\n"
+" * Ctrl-c para criar uma nova partição (quando uma partição vazia está\n"
+"selecionada)\n"
"\n"
-" * Ctrl-d para apagar uma partição\n"
+" * Ctrl-d para excluir uma partição\n"
"\n"
" * Ctrl-m para definir o ponto de montagem\n"
"\n"
-"Para obter mais informações acerca dos diferentes tipos de sistemas de\n"
-"ficheiros disponíveis, por favor leia o capítulo ext2FS do ``Manual de\n"
-"Referência''.\n"
-"\n"
-"Se está a instalar numa máquina PPC, irá querer criar umas pequena partição\n"
-"de arranque HFS com pelo menos 1MB, que será usada pelo carregador de\n"
-"arranque yaboot. Se optar por criar uma partição maior, tipo 50MB, pode-lhe\n"
-"ser útil para gravar um kernel e a uma imagem ramdisk para situações de\n"
-"de emergência."
+"Para obter informações sobre os diferentes tipos de sistemas de arquivos\n"
+"disponíveis, consulte o capítulo ext2FS do ``Manual de Referência''.\n"
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Salvar tabela de partições"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Restaurar tabela de partições"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Recuperar tabela de partições"
#: ../help.pm:526
#, c-format
@@ -1215,12 +1244,12 @@ msgstr "Automontagem dos dispositivos amovíveis"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Assistente"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Desfazer"
#: ../help.pm:526
#, c-format
@@ -1230,65 +1259,78 @@ msgstr "Alterna entre os modos normal/perito"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
-"Mais do que uma partição Microsoft foi detectada no seu disco rígido.\n"
-"Por favor escolha qual deseja redimencionar para poder instalar o seu\n"
-"novo sistema operativo Mandriva Linux.\n"
+"Mais de uma partição Microsoft foi detectada no seu disco rígido. Por "
+"favor,\n"
+"escolha a que deseja redimensionar para instalar seu novo sistema "
+"operacional\n"
+"Mageia..\n"
"\n"
-"Cada partição é listada da seguinte maneira: \"Nome Linux\",\n"
-"\"Nome Windows\", \"Capacidade\".\n"
+"Cada partição é listada da seguinte forma: \"Nome do Linux\", \"Nome do "
+"Windows\",\n"
+" \"Capacidade\".\n"
"\n"
-"O \"Nome Linux\" é estruturado: \"tipo de disco rígido\",\n"
-" \"numero de disco\", \"numero da partição\" (por exemplo, \"hda1\").\n"
+"\"Nome do Linux\" é estruturado como: \"tipo de disco rígido\", \"número do "
+"disco rígido\",\n"
+"\"número da partição\" (por exemplo, \"hda1\")\n"
"\n"
-"O \"Tipo de Disco\" é \"hd\" se o disco rígido é IDE e \"sd\" se é um\n"
-"disco rígido SCSI.\n"
+"\"Tipo de disco rígido\" é \"hd\" se o seu disco rígido for IDE e \"sd\" se "
+"for SCSI.\n"
"\n"
-"O \"Numero de disco\" é sempre uma letra depois de \"hd\" ou \"sd\".\n"
-"Com os discos rígidos IDE:\n"
+"\"Número do disco rígido\" é sempre uma letra após \"hd\" ou \"sd\". Com "
+"discos\n"
+"rígidos IDE:\n"
"\n"
-" * \"a\" significa \"disco rígido master no controlador IDE principal\";\n"
+" * \"a\" significa \"disco rígido mestre no controlador IDE primário\";\n"
"\n"
-" * \"b\" significa \"disco rígido slave no controlador IDE principal\";\n"
+" * \"b\" significa \"disco rígido escravo no controlador IDE primário\";\n"
"\n"
-" * \"c\" significa \"disco rígido master no controlador IDE segundario\";\n"
+" * \"c\" significa \"disco rígido mestre no controlador IDE secundário\";\n"
"\n"
-" * \"d\" significa \"disco rígido slave no controlador IDE segundario\";\n"
+" * \"d\" significa \"disco rígido escravo no controlador IDE secundário\"..\n"
"\n"
-"Com os discos rígidos SCSI, um \"a\" significa \"SCSI ID mais baixo\",\n"
-"um \"b\" significa \"segundo SCSI ID mais baixo\", etc.\n"
+"Com discos rígidos SCSI, um \"a\" significa \"ID SCSI mais baixo\", um \"b\" "
+"significa\n"
+"\"segundo ID SCSI mais baixo\", e assim por diante.\n"
"\n"
-"O \"nome Windows\" é a letra do seu disco rígido sob Windows\n"
-"(o primeiro disco ou partição é chamado \"C:\")."
+"\"Nome do Windows\" é a letra do seu disco rígido no Windows (o primeiro "
+"disco\n"
+"ou partição é chamado de \"C:\")."
#: ../help.pm:567
#, c-format
@@ -1309,48 +1351,49 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
-"Este passo só fica disponível se uma partição GNU/Linux existente for\n"
-"encontrada na sua máquina.\n"
-"\n"
-"O DrakX agora precisa saber se deseja fazer uma nova instalação ou uma\n"
-"actualização num sistema Mandriva Linux existente:\n"
-"\n"
-" * \"%s\": Para a maior parte, isto apaga completamente o sistema antigo.\n"
-"No entanto, dependendo no seu esquema de particionamento, pode prevenir\n"
-"que parte dos seus dados existentes (principalmente os directórios \"home"
-"\")\n"
-"sejam substituídos. Se desejar alterar como o particionamento dos seus\n"
-"discos rígidos é feito, ou mudar o seu sistema de ficheiros, deve usar esta "
-"opção.\n"
-"\n"
-" * \"%s\": Este tipo de instalação permite actualizar os pacotes "
-"actualmente\n"
-"instalados no seu sistema Mandriva Linux. O seu actual esquema de\n"
-"particionamento, assim como os dados dos utilizadores não serão alterados.\n"
-"A maior parte dos outros passos da configuração permanece disponível e "
-"similar a uma instalação standard.\n"
-"\n"
-"A opção ``Actualizar'' deverá funcionar correctamente nos sistemas\n"
-"Mandriva Linux versão \"8.1\" ou superior. É desaconselhável actualizar\n"
-"versões anteriores à versão \"8.1\" do Mandriva Linux."
+"Esta etapa é ativada somente se uma partição GNU/Linux existente\n"
+"foi encontrada em sua máquina.\n"
+"\n"
+"O DrakX agora precisa saber se você deseja realizar uma nova instalação\n"
+"ou uma atualização de um sistema Mageia existente:\n"
+"\n"
+" * \"%s\". Na maior parte, isso apaga completamente o sistema antigo.\n"
+"No entanto, dependendo do seu esquema de particionamento, você pode\n"
+"evitar que alguns dos seus dados existentes (notavelmente diretórios "
+"\"home\")\n"
+"sejam sobrescritos. Se você deseja alterar a forma como seus discos rígidos\n"
+"estão particionados ou mudar o sistema de arquivos, deve usar esta opção.\n"
+"\n"
+" * \"%s\". TEsta classe de instalação permite atualizar os pacotes "
+"atualmente\n"
+"instalados em seu sistema Mageia. Seu esquema de particionamento atual e\n"
+"dados de usuário não serão alterados. A maioria das outras etapas de "
+"configuração\n"
+"permanece disponíveis e são semelhantes a uma instalação padrão.\n"
+"\n"
+"Usar a opção ``Atualizar'' deve funcionar bem em sistemas Mageia com a "
+"versão\n"
+"\"8.1\" ou posterior. Realizar uma atualização em versões anteriores à "
+"\"8.1\" do Mageia,\n"
+"não é recomendado."
#: ../help.pm:594
#, c-format
@@ -1405,8 +1448,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1432,46 +1474,52 @@ msgid ""
"by the entire system. Running the command as a regular user will only\n"
"change the language settings for that particular user."
msgstr ""
-"O primeiro passo, é escolher a sua linguagem preferida.\n"
-"\n"
-"A sua escolha da linguagem preferida irá afectar o instalador, a\n"
-"documentação, e o sistema em geral. Primeiro seleccione a região\n"
-"onde está localizado, depois a linguagem que fala.\n"
-"\n"
-"Ao clicar no botão \"%s\" irá permitir-lhe escolher outras linguagens\n"
-"para instalar na sua área de trabalho, consequentemente instalará os\n"
-"ficheiros para a documentação do sistema e aplicações referentes à\n"
-"linguagem especificada . Porexemplo, se utilizadores espanhóis estão\n"
-"para usar a sua máquina, escolha Inglês como linguagem predefinida\n"
-"na vista em árvore e \"%s\" na secção Avançada.\n"
-"\n"
-"Sobre o suporte UTF-8 (unicode): Unicode é uma codificação de caracter\n"
-"feito para cobrir todas as linguagens existentes. No entanto o seu suporte\n"
-"completo em GNU/Linux ainda está a ser desenvolvido. Por essa razão,\n"
-"o uso de UTF-8 em Mandriva Linux depende das escolhas do utilizador:\n"
-"\n"
-" * Se escolher uma linguagem com um forte legado de codificação\n"
-"(linguagens latin1, Russo, Japonês, ChinêsCoreano, Tailandês, grego, turco,\n"
-"maior parte de linguagens iso-8859-2), o legado da codificação será usado\n"
-"por omissão\n"
-"\n"
-" * Outras linguagens irão usar unicode por omissão;\n"
-"\n"
-" * Finalmente, o unicode pode também ser forçado para uso através do\n"
-"por um pedido do utilizador ao selecionar a opção \"%s\",\n"
-"independentemente como as linguagens tenham sido escolhidas.\n"
-"\n"
-"Notar que não está limitado a escolher uma única linguagem adicional.\n"
-"Pode escolher várias, ou até instala-las ao seleccionar a caixa\"%s\".\n"
-"Seleccionar suporte para uma linguagem, quer dizer traduções, fontes,\n"
-"verificadores de ortografia, etc., que será também instalados para essa\n"
-"linguagem.\n"
-"\n"
-"Para trocar entre as várias linguagens instaladas no seu sistema, pode\n"
-"correr o comando \"/usr/sbin/localedrake\" como \"root\" para mudar a\n"
-"linguagem usada por todo o sistema. Correndo o comando como utilizador\n"
-"normal , irá apenas mudar as configurações da linguagem para esse\n"
-"utilizador em particular."
+"O primeiro passo é escolher seu idioma preferido.\n"
+"\n"
+"Sua escolha de idioma preferido afetará o instalador, a documentação e o\n"
+"sistema em geral. Primeiro, selecione a região em que você está localizado\n"
+"e, em seguida, o idioma que você fala.\n"
+"\n"
+"Clicar no botão \"%s\" permitirá que você selecione outros idiomas a serem\n"
+"instalados em sua estação de trabalho, instalando assim os arquivos "
+"específicos\n"
+"para documentação do sistema e aplicativos. Por exemplo, se usuários de\n"
+"espanhol forem usar sua máquina, selecione o inglês como idioma padrão na\n"
+"visualização em árvore e \"%s\" na seção Avançado.\n"
+"\n"
+"Sobre o suporte a UTF-8 (unicode): Unicode é uma nova codificação de "
+"caracteres\n"
+"destinada a cobrir todos os idiomas existentes. No entanto, o suporte "
+"completo a\n"
+"ela no GNU/Linux ainda está em desenvolvimento. Por essa razão, o uso de "
+"UTF-8\n"
+"no Mageia dependerá das escolhas do usuário:\n"
+"\n"
+" * Se você escolher um idioma com uma codificação legada forte (idiomas "
+"latin1,\n"
+"russo, japonês, chinês, coreano, tailandês, grego, turco, a maioria dos "
+"idiomas\n"
+"iso-8859-2), a codificação legada será usada por padrão;\n"
+"\n"
+" * Outros idiomas usarão unicode por padrão;\n"
+"\n"
+" * Se forem necessários dois ou mais idiomas, e esses idiomas não usarem\n"
+"a mesma codificação, então unicode será usado para todo o sistema;\n"
+"\n"
+" * Finalmente, o unicode também pode ser forçado para uso em todo o\n"
+"sistema a pedido do usuário, selecionando a opção \"%s\" independentemente\n"
+"dos idiomas escolhidos.\n"
+"\n"
+"Observe que você não está limitado a escolher um único idioma adicional.\n"
+"Você pode escolher vários ou até mesmo instalá-los todos selecionando a\n"
+"caixa \"%s\". Selecionar o suporte para um idioma significa que traduções,\n"
+"fontes, corretores ortográficos, etc., também serão instalados para esse "
+"idioma.\n"
+"\n"
+"Para alternar entre os vários idiomas instalados em seu sistema, você pode\n"
+"executar o comando \"localedrake\" como \"root\" para mudar o idioma usado\n"
+"por todo o sistema. Executar o comando como um usuário regular alterará\n"
+"apenas as configurações de idioma para esse usuário específico."
#: ../help.pm:650
#, c-format
@@ -1481,7 +1529,7 @@ msgstr "Espanhol"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Usar Unicode por padrão"
#: ../help.pm:646
#, c-format
@@ -1584,7 +1632,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1612,7 +1660,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1633,33 +1681,38 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
-"Agora, é tempo de escolher o sistema de impressão para o seu computador.\n"
-"Outros sistemas operativos podem oferecer um, mas o Mandriva Linux\n"
-"oferece dois. Cada um dos sistemas de impressão é bem servido para tipos\n"
-"particulares de configuração.\n"
-"\n"
-".*.\"%s\" -- que é um anacronismo para ``imprimir, não meter em fila'',\n"
-"é a escolha se tem uma conexão directa à sua impressora e deseja poder\n"
-"parar tudo nos erros de impressão, e não tem impressoras em rede.\n"
-"(\"%s\" só irá gerir os casos mais simples de rede e é algo lento quando\n"
-"usado em redes). Recomenda-se que use \"lpd\" se é a sua primeira\n"
-"experiência com GNU/Linux.\n"
-"\n"
-".*.\"%s\" -- O `` Sistema de Impressão Comum Unix'', é excelente para\n"
-"imprimir para a sua impressora local e também para o outro lado do\n"
-"mundo. É simples e pode agir como servidor ou cliente para o antigo\n"
-"sistema de impressão \"lpd\". Portanto, é compatível com os sistemas\n"
-"anteriores. Pode fazer muitas coisas, mas a configuração de base é\n"
-"quase tão simples como \"lpd\". Se precisa dele para emular um\n"
-"servidor \"lpd\", tem que activar o servidor \"cups-lpd\". \"%s\" tem\n"
-"interfaces gráficos para imprimir ou escolher as opções de impressão.\n"
-"\n"
-"Poderá mudar a sua escolha de sistema após a instalação correndo o\n"
-"PrinterDrake a partir do Centro de Controlo Mandriva Linux e clicando\n"
-"no botão \"%s\"."
+"Agora é hora de selecionar um sistema de impressão para o seu\n"
+"computador. Outros sistemas operacionais podem oferecer apenas\n"
+"um, mas o Mageia oferece dois. Cada um dos sistemas de impressão\n"
+"é mais adequado para determinados tipos de configuração.\n"
+"\n"
+" * \"%s\" -- que é uma sigla para \"print, do not queue\" (imprimir, não\n"
+"enfileirar), é a escolha ideal se você tiver uma conexão direta com sua\n"
+"impressora, quiser poder agir rapidamente em caso de atolamento de\n"
+"papel, e não tiver impressoras em rede. (\"%s\" lida apenas com casos\n"
+" muito simples de rede e é um pouco lento quando usado em redes).\n"
+"Recomenda-se o uso de \"pdq\" se esta for sua primeira experiência com\n"
+"GNU/Linux.\n"
+"\n"
+" * \"%s\" representa o \"Common Unix Printing System\" (Sistema Comum de\n"
+"Impressão Unix) e é uma excelente escolha para imprimir na sua impressora\n"
+"local ou em uma localizada do outro lado do planeta. É simples de "
+"configurar\n"
+"e pode atuar como servidor ou cliente para o antigo sistema de impressão\n"
+"\"lpd\", sendo compatível com sistemas operacionais mais antigos que ainda\n"
+"possam precisar de serviços de impressão. Embora bastante poderoso, a\n"
+"configuração básica é quase tão fácil quanto \"pdq\". Se você precisar "
+"emular\n"
+"um servidor \"lpd\", certifique-se de ativar o daemon \"cups-lpd\".\n"
+"\"%s\" inclui interfaces gráficas para impressão ou escolha de opções de\n"
+"impressora e para gerenciamento da impressora.\n"
+"\n"
+"Se você fizer uma escolha agora e depois perceber que não gosta do sistema\n"
+"de impressão escolhido, você pode alterá-lo executando o PrinterDrake no\n"
+"Centro de Controle do Mageia e clicando no botão \"%s\"."
#: ../help.pm:768
#, c-format
@@ -1669,7 +1722,7 @@ msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
@@ -1684,7 +1737,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1728,7 +1781,7 @@ msgstr ""
"presente no seu sistema, pode clicar no botão e escolher outro controaldor."
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1768,8 +1821,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1786,83 +1838,81 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
"idea to review this setup."
msgstr ""
-"Em revisão, o DrakX irá apresentar um sumário que junta a informação\n"
-"recolhida sobre o seu sistema. Dependendo do material instalado na sua\n"
-" máquina, poderá ter uma ou todas das seguintes entradas.\n"
-"Cada entrada é feita sobre o item de material para ser configurado,\n"
-"seguido de um rápido sumário da corrente configuração.\n"
-"Clica no botão correspondente \"%s\" para fazer as alterações.\n"
-"\n"
-" * \"%s\": verifique a configuração actual do mapa do teclado corrente\n"
-"e mude-a se necessário.\n"
-"\n"
-" * \"%s\": verifique a selecção de país actual. Se não estiver neste país,\n"
-"clique no botão \"%s\" e escolha outro. Se o seu país não aparecer na lista\n"
-"mostrada, clica no botão \"%s\" para obter a lista completa de países.\n"
-"\n"
-" * \"%s\": por omissão, o DrakX escolhe o fuso horário do país\n"
-"escolhido. Pode clicar no botão \"%s\" se esta não é a opção correcta.\n"
-"\n"
-" * \"%s\": verifique a actual configuração do rato e clique no botão para\n"
-"mudar se necessário.\n"
-"\n"
-" * \"%s\": clique no botão \"%s\" para abrir o assistente de configuração\n"
-"de impressoras. Consulte o capítulo correspondente do ``Guia do "
-"Utilizador'',\n"
-"para mais informação sobre como configurar uma nova impressora.\n"
-"O interface apresentado no nosso manual, é similar ao usado na instalação.\n"
-"\n"
-" * \"%s\": se uma placa de som for detectada no seu sistema,será mostrada\n"
-"aqui. SE notar que a placa de som não é actualmente presente no seu\n"
-"sistema, pode clicar no botão para escolher um controlador diferente.\n"
-"\n"
-" * \"%s\": se tem uma placa de TV, é aqui que a informação acerca da\n"
-"configuração é mostrada, Se tem uma placa de TV e não é detectada,\n"
-"clique em \"%s\" para a tentar configurar manualmente.\n"
-"\n"
-" * \"%s\": pode clicar em \"%s\" para mudar os parâmetros associados\n"
-"com a placa se acha que a configuração está errada.\n"
-"\n"
-" * \"%s\": por omissão, o DrakX configura o seu interface gráfico nas\n"
-"resoluções \"800x600\" ou \"1024x768\". Se isso não lhe serve, pode\n"
-"clicar em \"%s\" para configurar o seu interface gráfico.\n"
-"\n"
-" * \"%s\": se deseja configurar a sua Internet ou acesso de rede local\n"
-"pode fazê-lo. Refira-se a documentação impressa ou use o Centro de\n"
-"Controlo do Mandriva Linux a seguir a instalação ter terminado de\n"
-"beneficiar da ajuda incluída.\n"
-"\n"
-" * \"%s\": permite-lhe configurar endereços HTTP e FTP proxy se a máquina\n"
-"onde está a instalar é para ser localizada atrás de um servidor proxy.\n"
-"\n"
-" * \"%s\": esta entrada permite-lhe redefinir o nível de segurança como\n"
-"configurado num passo anterior.\n"
-"\n"
-" * \"%s\": se planeia ligar a sua máquina à Internet, é uma boa ideia\n"
-"proteger-se de intrusões ao configurar uma firewall. Consultar secção\n"
-"correspondente do ``Guia de Utilizador'' para detalhes acerca de como\n"
-"configurar uma firewall.\n"
-"\n"
-" * \"%s\": se deseja mudar a configuração do carregador de arranque,\n"
-"clique nesse botão. Isto deveria ser reservado aos utilizadores\n"
-"avançados.Referira-se à documentação impressa, ou à linha de ajuda\n"
-"sobre a configuração de carregador de arranque (bootloader) no\n"
-"Centro de Controlo Mandriva Linux.\n"
-"\n"
-" * \"%s\": através desta entrada pode ajustar quais os serviços que serão\n"
-"executados na sua máquina. Se planeia configurar esta máquina como\n"
-"um servidor, é uma boa ideia rever a configuração."
+"Como revisão, o DrakX apresentará um resumo das informações que ele\n"
+"coletou sobre o seu sistema. Dependendo do hardware instalado na sua\n"
+"máquina, você poderá ver algumas ou todas as seguintes entradas. Cada\n"
+"entrada é composta pelo item de hardware a ser configurado, seguido por\n"
+"um breve resumo da configuração atual. Clique no botão \"%s\"\n"
+"correspondente para fazer a alteração.\n"
+"\n"
+" * \"%s\": verificar a configuração atual do mapa de teclado e altere-a se\n"
+"necessário.\n"
+"\n"
+" * \"%s\": verifique a seleção atual do país. Se você não estiver neste "
+"país,\n"
+"clique no botão \"%s\" e escolha outro. Se o seu país não estiver na lista\n"
+"exibida, clique no botão \"%s\" para obter a lista completa de países.\n"
+"\n"
+" * \"%s\": padrão, o DrakX deduz seu fuso horário com base no país "
+"escolhido.\n"
+"Você pode clicar no botão \"%s\" aqui se isso não estiver correto\n"
+"\n"
+" * \"%s\": verificar configuração atual do mouse e clique no botão para\n"
+"alterá-la se necessário.\n"
+"\n"
+" * \"%s\": se uma placa de som for detectada no seu sistema, ela será "
+"exibida\n"
+"aqui. Se você notar que a placa de som não é a que está presente no seu\n"
+"sistema, você pode clicar no botão e escolher um driver diferente.\n"
+"\n"
+" * \"%s\": se você tiver uma placa de TV, é aqui que as informações sobre a\n"
+"sua configuração serão exibidas. Se você tiver uma placa de TV e ela não "
+"for\n"
+"detectada, clique em \"%s\" para tentar configurá-la manualmente.\n"
+"\n"
+" * \"%s\": você pode clicar em \"%s\" para alterar os parâmetros associados "
+"à\n"
+"placa se achar que a configuração está errada..\n"
+"\n"
+" * \"%s\": por padrão, o DrakX configura sua interface gráfica em resolução\n"
+"\"800x600\" ou \"1024x768\". Se isso não for adequado para você, clique\n"
+"em \"%s\" para reconfigurar sua interface gráfica.\n"
+"\n"
+" * \"%s\": se desejar configurar seu acesso à Internet ou rede local, você\n"
+"pode fazê-lo agora. Consulte a documentação impressa ou use o Centro\n"
+"de Controle do Mageia após a instalação ter sido concluída para aproveitar\n"
+"a ajuda completa em linha.\n"
+"\n"
+" * \"%s\": permite configurar endereços de proxy HTTP e FTP se a máquina\n"
+"em que você está instalando estiver atrás de um servidor proxy.\n"
+" * \"%s\": esta entrada permite redefinir o nível de segurança configurado\n"
+"em uma etapa anterior .\n"
+"\n"
+" * \"%s\": se você planeja conectar sua máquina à Internet, é uma boa ideia\n"
+"se proteger contra intrusões configurando um firewall. Consulte a seção\n"
+"correspondente do ``Guia de Introdução'' para obter detalhes sobre as\n"
+"configurações de firewall.\n"
+"\n"
+" * \"%s\": se desejar alterar a configuração do carregador de "
+"inicialização,\n"
+"clique neste botão. Isso deve ser reservado para usuários avançados.\n"
+"Consulte a documentação impressa ou a ajuda em linha sobre a configuração\n"
+"do carregador de inicialização no Centro de Controle do Mageia.\n"
+"\n"
+" * \"%s\": através desta entrada, você pode ajustar quais serviços serão\n"
+"executados na sua máquina. Se planeja usar esta máquina como um servidor,\n"
+"é uma boa ideia revisar essa configuração."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "Placa ISDN"
+msgstr "Placa de TV"
#: ../help.pm:809
#, c-format
@@ -1877,24 +1927,27 @@ msgstr "Interface gráfico"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Escolha o disco que deseja apagar para instalar a sua nova partição\n"
-"Mandriva Linux. Tenha cuidado, todos os ficheiros no disco serão\n"
-"perdidos de forma irrecuperável!"
+"Escolha o disco rígido que você deseja apagar para instalar sua nova "
+"partição\n"
+"do Mageia. Cuidado, todos os dados neste disco serão perdidos e não poderão\n"
+"ser recuperados!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Clique em \"%s\" se deseja apagar todos os dados e partições\n"
"presentes neste disco rígido.Tenha cuidado, depois de clicar em \"%s\",\n"
@@ -1913,118 +1966,3 @@ msgstr "Próximo ->"
#, c-format
msgid "<- Previous"
msgstr "<- Anterior"
-
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "\"%s\": ao clicar no botão \"%s\"irá iniciar o assistente de configuração "
-#~ "de\n"
-#~ "impressoras. Consulte o capítulo correspondente no ''Guia do "
-#~ "Utilizador''\n"
-#~ "para obter mais informações sobre como configurar uma nova impressora.\n"
-#~ "O interface apresentado no nosso manual é semelhante ao usado durante\n"
-#~ "a instalação."
-
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Este é o ponto mais crucial de decisão para a segurança do seu sistema\n"
-#~ "GNU/Linux: deve escolher a senha do \"root\". O \"root\" é o "
-#~ "administrador\n"
-#~ "do sistema e é o único utilizador autorizado para fazer actualizações,\n"
-#~ "adicionar utilizadores, mudar a configuração global do sistema, e por aí "
-#~ "a\n"
-#~ " fora. Em poucas palavras, o \"root\" pode fazer tudo! É por isso que "
-#~ "deve\n"
-#~ "escolher uma senha que seja difícil de adivinhar: o DrakX irá-lhe dizer "
-#~ "se\n"
-#~ "a senha que escolheu é muito simples. Como pode ver, não é obrigado a\n"
-#~ "digitar uma senha, mas aconselhamos vivamente a não o fazer.O GNU/Linux\n"
-#~ "é tão propenso ao erro do operador como qualquer outro sistema "
-#~ "operativo.\n"
-#~ "Já que o \"root\" pode ultrapassar todas as limitações e "
-#~ "involuntariamente\n"
-#~ "apagar todos os dados nas partições ao aceder descuidadamente a estas,\n"
-#~ "é muito importante que haja dificuldades em aceder/tornar-se \"root\".\n"
-#~ "\n"
-#~ "A senha deve ser uma mistura de caracteres alfa numéricos e com pelos\n"
-#~ "menos 8 caracteres de comprimento.Nunca aponte a senha do \"root\" --\n"
-#~ "torna demasiado fácil comprometer o seu sistema.\n"
-#~ "\n"
-#~ "Uma advertência: não faça a senha demasiado longa ou muito complicada\n"
-#~ "para que seja capaz de se lembrar dela.\n"
-#~ "\n"
-#~ "A senha não vai ser mostrada no ecrã à medida que a escreve. Para "
-#~ "reduzir\n"
-#~ "a hipótese de ser mal digitado, é necessário que a senha seja digitada "
-#~ "duas\n"
-#~ "vezes. Se lhe acontecer o mesmo erro duas vezes, aí terá que usar essa\n"
-#~ "senha ``incorrecta'' na primeira vez que tentar ligar-se como \"root\".\n"
-#~ "\n"
-#~ "Se deseja um servidor de autenticação para controlar o acesso ao seu\n"
-#~ "computador, clique em \"%s\".\n"
-#~ "\n"
-#~ "Se a sua rede usa seja LDAP, NIS ou a autenticação de serviços para um\n"
-#~ "domínio PDC Windows, seleccione o apropriado para \"%s\".\n"
-#~ "Se não sabe qual usar, deve perguntar ao administrador da sua rede.\n"
-#~ "\n"
-#~ "Se lhe acontecer ter problemas em relembrar senhas, ou se o seu\n"
-#~ "computador nunca for conectado à Internet, se confia em toda a gente que\n"
-#~ "usa o seu computador, aí pode escolher em ter \"%s\"."
-
-#~ msgid "authentication"
-#~ msgstr "Autenticação"
diff --git a/perl-install/install/help/po/pt_BR.po b/perl-install/install/help/po/pt_BR.po
index 11c3151d5..4f0a4a43a 100644
--- a/perl-install/install/help/po/pt_BR.po
+++ b/perl-install/install/help/po/pt_BR.po
@@ -1,46 +1,40 @@
-# translation of pt_BR.po to
-# translation of pt_BR.po to Brazilian Portuguese
-# tradução de DrakX-pt_BR.po para Português do Brasil
-# DRAKX PT_BR PO FILE
-# Copyright (C) 2003, 2004, 2005, 2008 Free Software Foundation, Inc.
-# Lisiane Sztoltz Teixeira <lisiane@mandriva.com>
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-# Andrei Bosco Bezerra Torres <andrei_bosco@yahoo.com.br>, 2000, 2003.
-# Bruno Dorfman Buys <brunobuys@zipmail.com.br>, 2002.
-# Tiago da Cruz Bezerra <tiagocruz18@uol.com.br>,2002 2003, 2004.
-# Ricardo de Castilho <cast_brasil@ig.com.br>, 2003.
-# Carlinhos Cecconi <carlinux@terra.com.br>, 2003, 2004.
-# Deivi Lopes Kuhn <deivikuhn@yahoo.com.br>, 2003, 2004.
-# Cristiano Otto Von Trompczynski <cris@mandriva.com>, 2005.
-# Arthur R. Mello <renato@conectiva.com.br>, 2005.
-# Arthur Renato Mello <renato@conectiva.com.br>, 2005.
-# Felipe Arruda <felipemiguel@gmail.com>, 2008.
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
+# Michael Martins, 2025
+#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: pt_BR\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2008-09-22 14:14-0300\n"
-"Last-Translator: Felipe Arruda <felipemiguel@gmail.com>\n"
-"Language-Team: Brazilian Portuguese <kde-i18n-pt_br@mail.kde.org>\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: Michael Martins, 2025\n"
+"Language-Team: Portuguese (Brazil) (https://app.transifex.com/MageiaLinux/"
+"teams/9361/pt_BR/)\n"
+"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % "
+"1000000 == 0 ? 1 : 2;\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
-"Antes de continuar, você deve ler com atenção os termos da licença. Ela \n"
-"cobre a distribuição Mandriva Linux inteira. Se você concorda com todos os "
-"termos,\n"
-"clique em \"%s\". Se não concordar, clique no botão \"%s\"\n"
+"Antes de continuar, você deve ler atentamente os termos da licença. Ela\n"
+"cobre toda a distribuição Mageia. Se você concordar com todos os\n"
+"termos, marque a caixa \"%s\". Caso contrário, clique no botão \"%s\"\n"
"para reiniciar seu computador."
#: ../help.pm:20
@@ -83,51 +77,49 @@ msgid ""
"security), choose the desired user and window manager, then click on\n"
"\"%s\". If you're not interested in this feature, uncheck the \"%s\" box."
msgstr ""
-"GNU/Linux é um sistema multiusuário, e isto significa que cada usuário pode\n"
-"ter suas próprias preferências, seus próprios arquivos, e assim por diante. "
-"Mas,\n"
-"ao contrário do \"root\", que é o administrador do sistema, os usuários\n"
-"adicionados aqui não terão direito de modificar nada, a não ser seus\n"
-"próprios arquivos e suas próprias configurações, protegendo o sistema \n"
-"contra mudanças involuntárias ou maliciosas, que poderiam impactar no "
-"sistema como um todo. Você deverá criar ao menos uma\n"
-"conta regular para você mesmo - esta é a conta que você deverá usar no seu\n"
-"dia-a-dia. Embora seja muito prático acessar o sistema como \"root\" para "
-"fazer tudo,\n"
-"também pode ser muito perigoso! O menor engano pode fazer com que seu\n"
-"sistema não funcione mais. Como usuário regular, mesmo cometendo um erro\n"
-"sério, o pior que pode acontecer é você perder informação, mas não o "
-"sistema\n"
-"inteiro.\n"
-"\n"
-"Primeiro, você deve digitar o seu nome real. Isto não é obrigatório, é "
-"claro,\n"
-"pois você pode digitar, na verdade, o que você quiser.\n"
-"O DrakX pegará a primeira palavra que você digitou na caixa e colocará\n"
-"no campo \"%s\". Este é o nome que esse usuário específico utilizará para "
-"acessar o sistema. Você pode mudá-lo, caso queira. Depois você deverá\n"
-"digitar uma senha. Uma senha de usuário não-privilegiado (regular) não é "
-"tão\n"
-"crucial quanto a de \"root\", do ponto de vista da segurança. Mas isto não "
-"é\n"
-"razão para negligenciar esta senha, deixando-a em branco ou escolhendo uma\n"
-"muito simples: mais tarde, seus arquivos poderão correr sérios riscos.\n"
-"\n"
-"Clicando em \"%s\" você poderá adicionar outros usuários. Adicione um\n"
-"usuário para cada um dos seus amigos: seu pai ou sua irmã, por exemplo.\n"
-"Depois que terminar de adicionar os usuários, clique em \"%s\".\n"
-"\n"
-"Clicando no botão \"%s\" você poderá mudar o \"shell\" padrão do usuário\n"
-"(o padrão é o bash).\n"
-"\n"
-"Quando você terminar de adicionar usuários, você poderá escolher um usuário\n"
-"para que ele acesse automaticamente o sistema quando o computador for "
-"iniciado.\n"
-"Caso você esteja interessado neste recurso (e não precisar de muita\n"
-"segurança local), escolha o usuário e o gerenciador de janelas,\n"
-"e então clique em \"%s\". Se não estiver interessado neste recurso, "
+"GNU/Linux é um sistema multiusuário, o que significa que cada usuário pode\n"
+"ter suas próprias preferências, seus próprios arquivos, e assim por diante.\n"
+"Mas, ao contrário do \"root\", que é o administrador do sistema, os "
+"usuários\n"
+"que você adicionar neste ponto não terão autorização para alterar nada além\n"
+"de seus próprios arquivos e configurações, protegendo o sistema de mudanças\n"
+"não intencionais ou maliciosas que podem afetar o sistema como um todo.\n"
+"Você precisa criar pelo menos um usuário comum para você mesmo -- essa\n"
+"é a conta que deve ser usada no dia a dia. Embora seja muito\n"
+"fácil entrar como \"root\" para fazer qualquer coisa, isso pode ser muito "
+"perigoso!\n"
+"Um erro simples pode fazer com que seu sistema não funcione mais. Se você\n"
+"cometer um erro sério como usuário comum, o pior que pode acontecer é\n"
+"perder algumas informações, mas não afetará todo o sistema.\n"
+"\n"
+"O primeiro campo pede um nome verdadeiro. Claro, isso não é obrigatório\n"
+"-- você pode realmente digitar o que quiser. O DrakX usa a primeira\n"
+"palavra que você digitar neste campo e a copia para o campo \"%s\",\n"
+"que é o nome que esse usuário usará para fazer login no sistema.\n"
+"Se quiser, você pode substituir o padrão e alterar o nome do usuário.\n"
+"O próximo passo é inserir uma senha. Do ponto de vista de segurança,\n"
+"a senha de um usuário não privilegiado (comum) não é tão crucial quanto\n"
+"a senha do \"root\", mas isso não é motivo para negligenciá-la, deixando\n"
+"em branco ou muito simples: afinal, seus arquivos podem estar em risco.\n"
+"\n"
+"Depois de clicar em \"%s\", você pode adicionar outros usuários. Adicione "
+"um\n"
+"usuário para cada um de seus amigos, seu pai, sua irmã, etc. Clique em "
+"\"%s\"\n"
+"quando terminar de adicionar.\n"
+"\n"
+"Clique no botão \"%s\" para alterar o \"shell\" padrão para esse\n"
+"usuário (bash por padrão).\n"
+"\n"
+"Quando terminar de adicionar os usuários, você será solicitado a escolher "
+"um\n"
+"usuário que será conectado automaticamente ao sistema quando o computador\n"
+"inicializar. Se estiver interessado nesse recurso (e não se importa muito "
+"com a\n"
+"segurança local), escolha o usuário e o gerenciador de janelas desejados, e\n"
+"depois clique em \"%s\". Se não estiver interessado nesse recurso, "
"desmarque\n"
-"a opção \"%s\""
+"a caixa \"%s\"."
#: ../help.pm:54
#, c-format
@@ -137,17 +129,18 @@ msgstr "Nome de usuário"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr "Aceitar o usuário"
+msgstr "Aceitar usuário"
#: ../help.pm:54
#, c-format
msgid "Do you want to use this feature?"
-msgstr "Você quer usar este recurso?"
+msgstr "Deseja usar esta funcionalidade?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -157,87 +150,88 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
-"Aqui estão listadas as partições Linux detectadas no seu disco rígido.\n"
-"Você pode manter as opções feitas pelo assistente, elas são\n"
-"boas para o uso diário. Se você quiser alterar estas opções, você deve ao\n"
-"menos definir uma partição (\"/\"). Não escolha uma partição muito pequena\n"
-"ou você não será capaz de instalar todos os softwares desejados. Se você\n"
-"quiser guardar seus dados em uma partição separada, você precisa escolher\n"
-"uma partição \"/home\" (apenas possível se você tiver mais de \n"
-"uma partição Linux disponível).\n"
+"Aqui estão listadas as partições Linux detectadas em seu disco rígido.\n"
+"Você pode manter as escolhas feitas pelo assistente, pois elas são\n"
+"adequadas para a maioria das instalações comuns. Se fizer alterações,\n"
+"você deve pelo menos definir uma partição raiz (\"/\"). Não escolha uma "
+"partição\n"
+"muito pequena ou você não conseguirá instalar software suficiente. Se\n"
+"quiser armazenar seus dados em uma partição separada, também será\n"
+"necessário criar uma partição \"/home\" (o que só é possível se tiver mais\n"
+"de uma partição Linux disponível).\n"
"\n"
"Cada partição é listada da seguinte forma: \"Nome\", \"Capacidade\".\n"
"\n"
-"\"Nome\" é codificado da seguinte maneira: \"tipo do disco rígido\", "
-"\"número\n"
-"do disco rígido\", \"número da partição\" (por exemplo, \"hda1\").\n"
+"\"Nome\" é estruturado como: \"tipo de disco rígido\", \"número do disco "
+"rígido,\"\n"
+"\"número da partição\" (por exemplo, \"hda1\").\n"
"\n"
+"\"Tipo de disco rígido\" é \"hd\" se seu disco rígido for IDE e \"sd\" se "
+"for SCSI.\n"
"\n"
-"\"Tipo do disco rígido\" é \"hd\" se seu disco rígido for IDE e \"sd\"\n"
-"se ele for um disco rígido SCSI.\n"
-"\n"
-"\n"
-"\"Número do disco rígido\" é sempre uma letra depois de \"hd\" ou \"sd\".\n"
-"Para os discos rígidos IDE:\n"
+"\"Número do disco rígido\" é sempre uma letra após \"hd\" ou \"sd\". Para\n"
+"discos rígidos IDE:\n"
"\n"
-" * \"a\" significa \"disco rígido mestre na controladora IDE primária\",\n"
+" * \"a\" significa \"disco rígido mestre no controlador IDE primário\",\n"
"\n"
-" * \"b\" significa \"disco rígido escravo na controladora IDE primária\",\n"
+" * \"b\" significa \"disco rígido escravo no controlador IDE primário\",\n"
"\n"
-" * \"c\" significa \"disco rígido mestre na controladora IDE secundária\",\n"
+" * \"c\" significa \"disco rígido mestre no controlador IDE secundário\",\n"
"\n"
-" * \"d\" significa \"disco rígido escravo na controladora IDE secundária\",\n"
+" * \"d\" significa \"disco rígido escravo no controlador IDE secundário\",\n"
"\n"
"\n"
-"Com discos rígidos SCSI, um \"a\" significa \"SCSI ID mais baixo\", um \"b\" "
-"significa \"segundo SCSI ID mais baixo\", e assim por diante."
+"Com discos rígidos SCSI, um \"a\" significa \"menor ID SCSI\", um \"b\"\n"
+"significa \"segundo menor ID SCSI\", e assim por diante."
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"O instalador do Mandriva Linux está espalhado em diferentes CD-ROMs.\n"
-"Se o pacote selecionado estiver localizado em outro CD-ROM, O DrakX irá\n"
-"ejetar o CD atual e pedir para você inserir o CD necessário. Se você não "
-"tiver com o CD em mãos, basta clicar em \"%s\", e os pacotes correspondentes "
-"não\n"
-"serão instalados."
+"A instalação do Mageia é distribuída em vários CD-ROMs. Se um\n"
+"pacote selecionado estiver localizado em outro CD-ROM, o DrakX ejeta\n"
+"o CD atual e solicita que você insira o CD necessário. Se não tiver o CD\n"
+"solicitado em mãos, basta clicar em \"%s\", e os pacotes correspondentes\n"
+"não serão instalados."
#: ../help.pm:95
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -287,62 +281,59 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"Agora você deverá especificar quais programas você deseja instalar no\n"
-"sistema. Existem centenas de pacotes disponíveis para o Mandriva Linux, e\n"
-"para facilitar o gerenciamento, os pacotes foram agrupados em grupos de aplicações\n"
-"similares.\n"
+"Agora é hora de especificar quais programas deseja instalar em seu sistema.\n"
+"Existem milhares de pacotes disponíveis para o Mageia, e para simplificar o\n"
+"gerenciamento, eles foram agrupados em categorias de aplicativos similares.\n"
"\n"
-"O Mandriva Linux separou os pacotes em quatro categorias. Você pode\n"
-"misturar as aplicações de outras categorias, assim uma \"Estação de Trabalho\" "
-"pode ter aplicações do grupo \"Servidor\".\n"
+"O Mageia classifica os grupos de pacotes em quatro categorias. Você pode\n"
+"misturar e combinar aplicativos de várias categorias, então uma instalação\n"
+"``Estação de trabalho\" ainda pode ter aplicativos da categoria "
+"``Servidor\"\n"
+"instaladas.\n"
"\n"
-" * \"%s\": Se você planeja usar sua máquina como estação de trabalho,\n"
-"selecione um ou mais dos grupos desta categoria.\n"
+" * \"%s\": se planeja usar sua máquina como uma estação de trabalho,\n"
+"selecione um ou mais dos grupos na categoria de estação de trabalho.\n"
"\n"
-" * \"%s\": Se a máquina será usada para programação, selecione "
-"os pacotes apropriados desta categoria. O grupo especial\n"
-"\"LSB\" irá configurar seus sistema para que ele fique o mais compatível possível\n"
-"com as especificações da Linux Standard Base.\n"
+" * \"%s\": se planeja usar sua máquina para programação, selecione os\n"
+"grupos apropriados dessa categoria. O grupo especial \"LSB\" configura\n"
+"seu sistema para que esteja o mais próximo possível das especificações da\n"
+"Linux Standard Base.\n"
"\n"
-" Selecionar o grupo \"LSB\" garantirá 100%% de compatibilidade com LSB "
-"no\n"
-"sistema. No entanto, se você não selecionar o grupo \"LSB\" você ainda terá\n"
-"um sistema próximo a 100%% de compatibilidade com a LSB.\n"
+" Selecionar o grupo \"LSB\" garante 100%% de conformidade com a\n"
+"LSB do sistema. No entanto, se não selecionar o grupo \"LSB\", ainda\n"
+"terá um sistema quase 100%% compatível com a LSB.\n"
"\n"
-" * \"%s\": se a máquina será um servidor, você poderá escolher quais dos\n"
-"serviços deseja instalar na máquina.\n"
+" * \"%s\": se sua máquina for destinada a ser um servidor, selecione quais\n"
+"dos serviços mais comuns você deseja instalar em sua máquina.\n"
"\n"
-" * \"%s \": este é o grupo em que você escolherá seu ambiente\n"
-"gráfico preferido. Pelo menos um tem que ser selecionado se você quiser\n"
-"uma estação de trabalho com ambiente gráfico.\n"
+" * \"%s\": aqui você escolhe seu ambiente gráfico preferido. Pelo menos\n"
+"um deve ser selecionado se quiser uma interface gráfica disponível.\n"
"\n"
-"Ao mover o ponteiro do mouse sobre um nome de grupo, uma pequena explicação\n"
-"sobre seu conteúdo aparecerá.\n"
+"Mover o cursor do mouse sobre um nome de grupo exibe um texto\n"
+"explicativo sobre esse ele.\n"
"\n"
-"Você pode marcar a caixa \"%s\", ela é útil se você tiver um pouco de "
-"experiência\n"
-"com o nome dos pacotes fornecidos ou se você deseja ter controle total "
-"sobre\n"
-"o que será instalado.\n"
+"Você pode marcar a caixa \"%s\", que é útil se estiver familiarizado com\n"
+"os pacotes oferecidos ou se deseja ter controle total sobre o que é\n"
+"instalado.\n"
"\n"
-"Se você iniciar uma instalação no modo \"%s\", você pode desmarcar todos\n"
-"os grupos e prevenir a instalação de qualquer pacote adicional. Isto é útil "
-"para\n"
-"reparar ou atualizar um sistema já existente.\n"
+"Se você iniciar a instalação no modo \"%s\", pode desmarcar todos os\n"
+"grupos e evitar a instalação de novos pacotes. Isso é útil para reparar\n"
+"ou atualizar um sistema existente.\n"
"\n"
-"Se você não selecionar nenhum grupo ao fazer uma instalação (não uma atualização),\n"
-"uma caixa de diálogo aparecerá propondo diferentes\n"
-"opções para uma instalação mínima:\n"
+"Se você desmarcar todos os grupos ao realizar uma instalação comum\n"
+"(em vez de uma atualização), um diálogo será exibido sugerindo\n"
+"diferentes opções para uma instalação mínima:\n"
"\n"
-" * \"%s\": Instala o mínimo de pacotes possíveis para se ter uma estação\n"
-"de trabalho com ambiente gráfico.\n"
+"* \"%s\": instala o número mínimo de pacotes possível para ter um\n"
+"desktop gráfico funcional.\n"
"\n"
-" * \"%s\": Instala a base do sistema acrescida de utilitários básicos e suas \n"
-"respectivas documentações. Esta Instalação é útil para configurar um servidor.\n"
+"* \"%s\": instala o sistema base, utilitários básicos e sua documentação.\n"
+"Esta instalação é adequada para configurar um servidor.\n"
"\n"
-" * \"%s\": Instala os pacotes mínimos necessários para obter um sistema\n"
-"Linux funcionando. Com esta instalação você terá somente a interface de\n"
-"linha de comando. O tamanho total desta instalação é de 65 megabytes."
+"* \"%s\": instala o número absoluto mínimo de pacotes necessários\n"
+"para obter um sistema Linux funcional. Com esta instalação, você\n"
+"tem apenas uma interface de linha de comando. Esta instalação\n"
+"tem cerca de 65 megabytes."
#: ../help.pm:149 ../help.pm:591
#, c-format
@@ -357,7 +348,7 @@ msgstr "Com documentação básica"
#: ../help.pm:149
#, c-format
msgid "Truly minimal install"
-msgstr "Instalação mínima"
+msgstr "Instalação realmente mínima"
#: ../help.pm:152
#, c-format
@@ -373,10 +364,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -396,41 +387,47 @@ msgid ""
"another installation. See the second tip of the last step on how to create\n"
"such a floppy."
msgstr ""
-"Se você escolheu selecionar pacotes individualmente, será apresentada uma\n"
-"árvore contendo todos os pacotes classificados por grupos e subgrupos.\n"
-"Navegando nesta árvore, você poderá selecionar grupos inteiros, subgrupos\n"
-" ou pacotes individuais.\n"
-"\n"
-"Quando você seleciona um pacote individual na árvore, uma breve \n"
-"descrição sobre o pacote aparecerá na janela da direita.\n"
-"\n"
-"!! Quando um pacote de servidor foi selecionado, intencionalmente ou por\n"
-"ser parte de um grupo, será pedido para que você confirme se realmente "
-"deseja que\n"
-"estes servidores sejam instalados. Por padrão, no Mandriva Linux qualquer\n"
-"serviço instalado será iniciado quando a máquina for iniciada.\n"
-"Mesmo que sejam seguros e não existam quaisquer dúvidas a respeito\n"
-"da distribuição, é possível que brechas de segurança\n"
-"sejam descobertas depois que esta versão do Mandriva Linux foi concluída.\n"
-"Se você não sabe o que um determinado serviço faz ou porque está sendo\n"
-"instalado, clique em \"%s\". Clicando em \"%s\", os serviços listados\n"
-"serão instalados e serão iniciados automaticamente quando o\n"
-"sistema for iniciado!!\n"
-"\n"
-"A opção \"%s\" desabilita a caixa de diálogo com o aviso que aparece quando\n"
-"o instalador seleciona um pacote automaticamente por ter resolvido\n"
-"dependências. Alguns pacotes dependem de outros e a instalação de \n"
-"de um ou mais pacotes pode ser requisitada para que se instale um programa\n"
-"específico. O instalador pode determinar quais pacotes são necessários\n"
-"para satisfazer uma dependência e assim completar a instalação.\n"
-"\n"
-"O pequeno ícone de disco flexível no fim da lista permite gravar a lista\n"
-"de pacotes escolhida durante uma instalação. Isto é útil quando você tiver\n"
-"um número de máquinas que deseja configurar de forma idêntica. Ao clicar\n"
-"neste ícone, será pedido a você que insira um disquete, criado no final de "
-"outra\n"
-"instalação. Veja a segunda dica no último passo sobre\n"
-"como criar esse disquete."
+"Se optar por instalar pacotes individualmente, o instalador apresenta\n"
+"uma árvore contendo todos os pacotes classificados por grupos e subgrupos.\n"
+"Ao navegar pela árvore, você pode selecionar grupos inteiros, subgrupos\n"
+"ou pacotes individuais.\n"
+"\n"
+"Sempre que selecionar um pacote na árvore, uma descrição aparecer à\n"
+"direita para informar o propósito desse pacote.\n"
+"\n"
+" !! Se um pacote de servidor for selecionado, seja porque você escolheu\n"
+"especificamente o pacote individual ou porque ele fazia parte de um grupo\n"
+"de pacotes, é solicitado que você confirme se realmente deseja que esses\n"
+"servidores sejam instalados. Por padrão, o Mageia inicia automaticamente\n"
+"quaisquer serviços instalados durante o tempo de inicialização. Mesmo que\n"
+"eles sejam seguros e não tenham problemas conhecidos na época em que\n"
+"a distribuição foi lançada, é possível que vulnerabilidades de segurança "
+"sejam\n"
+"descobertas após a finalização desta versão do Mageia. Se não souber\n"
+"o que um serviço específico deve fazer ou por que está sendo instalado, "
+"clique\n"
+"em \"%s\". Clicar em \"%s\" instala os serviços listados e inicia esses "
+"serviços\n"
+"automaticamente durante o tempo de inicialização. !!\n"
+"\n"
+"A opção \"%s\" é usada para desativar o diálogo de aviso que aparece\n"
+"sempre que o instalador seleciona automaticamente um pacote para resolver\n"
+"um problema de dependência. Alguns pacotes dependem de outros e a "
+"instalação\n"
+"de um pacote específico pode exigir a instalação de outro pacote. O "
+"instalador\n"
+"pode determinar quais pacotes são necessários para satisfazer uma "
+"dependência\n"
+"e concluir a instalação.\n"
+"\n"
+"O ícone de disquete pequeno na parte inferior da lista, permite carregar "
+"uma\n"
+"lista de pacotes criada durante uma instalação anterior. Isso é útil se você "
+"tem\n"
+"várias máquinas que quer configurar de maneira idêntica. Clicar nesse ícone\n"
+"solicita que você insira o disquete criado no final de outra instalação. "
+"Consulte\n"
+"a segunda dica do último passo sobre como criar um disquete desse tipo."
#: ../help.pm:183
#, c-format
@@ -457,25 +454,22 @@ msgid ""
"Please remember that some services can be dangerous if they're enabled on a\n"
"server. In general, select only those services you really need. !!"
msgstr ""
-"Esta janela é utilizada para selecionar quais serviços você deseja iniciar\n"
-"durante o processo de inicialização (boot) da máquina.\n"
-"\n"
-"O DrakX irá listar todos os serviços disponíveis na instalação atual.\n"
-"Reveja cuidadosamente e desabilite aqueles que não são sempre necessários \n"
-"durante a inicialização.\n"
-"\n"
-"Um pequeno texto de ajuda descrevendo a função do serviço será mostrado \n"
-"quando o mesmo for selecionado. Contudo, caso você não tenha certeza se um \n"
-"serviço é útil ou não, é seguro manter o comportamento padrão.\n"
-"\n"
-"!! Tenha muito cuidado neste passo, caso você pretenda usar sua máquina como "
-"um \n"
-"servidor: você provavelmente vai querer que serviços indesejados não sejam "
-"iniciados.\n"
-"Lembre-se de que vários serviços podem ser perigosos se forem habilitados em "
-"um\n"
-"servidor. Em geral, selecione apenas os serviços que você realmente "
-"precisa. !!"
+"Este diálogo é usado para selecionar quais serviços você quer\n"
+"iniciar automaticamente.\n"
+"\n"
+"O DrakX lista todos os serviços disponíveis na instalação atual. Revise\n"
+"cada um deles com cuidado e desmarque aqueles que não são necessários\n"
+"na inicialização.\n"
+"\n"
+"Um texto explicativo curto é exibido sobre um serviço quando ele for\n"
+"selecionado. No entanto, se não tiver certeza se um serviço é útil ou não,\n"
+"é mais seguro manter o comportamento padrão.\n"
+"\n"
+"!! Nesta etapa, tenha muito cuidado se você pretende usar sua máquina como\n"
+"um servidor: você provavelmente não deseja iniciar nenhum serviço que não\n"
+"seja necessário. Lembre-se de que alguns serviços podem ser perigosos se\n"
+"forem ativados em um servidor. Em geral, selecione apenas os serviços que\n"
+"realmente precisa. !!"
#: ../help.pm:209
#, c-format
@@ -493,31 +487,35 @@ msgid ""
"choose a time server located near you. This option actually installs a time\n"
"server which can be used by other machines on your local network as well."
msgstr ""
-"O GNU/Linux gerencia a hora em GMT (Greenwich Mean Time) e calcula a hora\n"
-"local de acordo com o fuso horário que você escolheu. Se o relógio em sua\n"
-"placa mãe está configurado para o horário local, é possível desativá-lo, "
-"desmarcando\n"
-"\"%s\", permitindo ao GNU/Linux saber que o relógio do hardware e o relógio "
-"do\n"
-"sistema são os mesmos. Isto é útil quando a máquina também tem outro sistema "
-"operacional.\n"
-"\n"
-"A opção \"%s\" irá automaticamente ajustar o relógio, conectando-o a um\n"
-"servidor remoto de hora na Internet. Obviamente, você deve dispor de uma\n"
-"conexão na Internet para isso. Recomendamos que você escolha um servidor de "
-"hora localizado próximo a você, na lista apresentada.\n"
-"Esta opção, na verdade, instala um servidor de hora que poderá ser\n"
-"usado também por outras máquinas de sua rede local."
+"O GNU/Linux gerencia o tempo em GMT (Greenwich Mean Time) e o traduz\n"
+"para o horário local de acordo com o fuso horário que você selecionou. Se o "
+"relógio\n"
+"na sua placa-mãe estiver configurado para o horário local, você pode "
+"desativar\n"
+"isso desmarcando \"%s\", o que informa ao GNU/Linux que o relógio do "
+"sistema\n"
+"e o relógio de hardware estão no mesmo fuso horário. Isso é útil quando a "
+"máquina\n"
+"também hospeda outro sistema operacional.\n"
+"\n"
+"A opção \"%s\" regula automaticamente o relógio do sistema conectando-se a\n"
+"um servidor de horário remoto na internet. Para que este recurso funcione, "
+"você\n"
+"deve ter uma conexão com a internet funcionando. Recomendamos que\n"
+"escolha um servidor de horário localizado próximo a você. Esta opção na\n"
+"verdade instala um servidor de horário que pode ser usado por outras "
+"máquinas\n"
+"na sua rede local também."
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr "Relógio do hardware configurado para GMT"
+msgstr "Relógio de hardware configurado para GMT"
#: ../help.pm:213
#, c-format
msgid "Automatic time synchronization"
-msgstr "Sincronização automática da hora "
+msgstr "Sincronização automática de horário"
#: ../help.pm:223
#, c-format
@@ -534,20 +532,20 @@ msgid ""
msgstr ""
"Placa de vídeo\n"
"\n"
-" O instalador normalmente detecta e configura automaticamente a placa de\n"
-"vídeo instalada em seu computador. Se não for o caso, você pode escolher\n"
-"na lista a placa que você possui atualmente instalada.\n"
+" O instalador normalmente detecta e configurar automaticamente a\n"
+"placa de vídeo instalada em sua máquina. Se isso não estiver correto, você\n"
+"pode escolher na lista a placa que realmente tem instalada.\n"
"\n"
-" Em casos nos quais diferentes servidores são disponíveis para sua placa\n"
-"de vídeo, com ou sem aceleração 3D, você será questionado para escolher\n"
-"um servidor que atenda melhor às suas necessidades."
+" Na situação em que diferentes drivers estão disponíveis para sua placa,\n"
+"com ou sem aceleração 3D, você é solicitado a escolher o driver que\n"
+"melhor atende às suas necessidades."
#: ../help.pm:234
#, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -601,64 +599,64 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
-"X (para X Window System ou Sistema de Janelas X) é o coração da interface "
-"gráfica do GNU/Linux\n"
-"no qual todos os ambientes gráficos (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) fornecidos com o Mandriva Linux se baseiam.\n"
+"X (para X Window System) é o coração da interface gráfica do GNU/Linux,\n"
+"sobre a qual todos os ambientes gráficos (KDE, GNOME, AfterStep,\n"
+"WindowMaker, etc.) fornecidos com o Mageia dependem.\n"
"\n"
-"Você verá uma lista de parâmetros para alterações, para poder\n"
-"obter uma ótima resolução gráfica. \n"
-"Placa de Vídeo\n"
+"É mostrada uma lista de diferentes parâmetros para ajustar e obter uma\n"
+"exibição gráfica otimizada.\n"
"\n"
-" O instalador normalmente poderá detectar e configurar automaticamente \n"
-"a placa de vídeo da sua máquina. Se esta configuração não estiver correta, "
-"você pode\n"
-"escolher na lista a placa correspondente instalada.\n"
+"Placa de vídeo\n"
+"\n"
+" O instalador normalmente detecta e configura automaticamente a\n"
+"placa de vídeo instalada em sua máquina. Se isso não estiver correto, você\n"
+"pode escolher na lista a placa que realmente tem instalada.\n"
"\n"
-" Se existirem diferentes servidores possíveis para a sua placa, com ou "
-"sem\n"
-"aceleração 3D, será oferecido para você escolher o servidor que melhor "
-"atenda as\n"
-"necessidades.\n"
+" Na situação em que diferentes drivers estão disponíveis para sua placa, "
+"com\n"
+"ou sem aceleração 3D, você será solicitado a escolher o driver que melhor\n"
+"atende às suas necessidades.\n"
"\n"
"\n"
"\n"
"Monitor\n"
"\n"
-" O instalador pode normalmente detectar e configurar automaticamente\n"
-"o monitor da sua máquina. Se não for o correto, você pode escolher na\n"
-"lista o monitor que está conectado a seu computador.\n"
+" Normalmente, o instalador detecta e configura automaticamente\n"
+"o monitor conectado à sua máquina. Se isso não estiver correto, você\n"
+"pode escolher na lista o monitor que está conectado ao seu computador.\n"
"\n"
"\n"
"\n"
"Resolução\n"
"\n"
-" Aqui você pode escolher a resolução e a profundidade das cores que seu\n"
-"hardware pode exibir. Escolha a resolução que melhor lhe agrada (você\n"
-"poderá alterá-la após a instalação). Um exemplo da configuração escolhida\n"
-"é mostrada na tela.\n"
+" Aqui você pode escolher as resoluções e profundidades de cor disponíveis\n"
+"para o seu hardware gráfico. Escolha a que melhor atende às suas "
+"necessidades\n"
+"(você pode fazer alterações após a instalação). Uma amostra da configuração\n"
+"escolhida é exibida na imagem do monitor.\n"
"\n"
"\n"
"\n"
"Teste\n"
"\n"
-" Dependendo do seu hardware, esta opção pode não ser mostrada.\n"
+" Dependendo do seu hardware, esta opção pode não aparecer.\n"
"\n"
-" O sistema testará a resolução gráfica escolhida.\n"
-"Se você ver a mensagem durante o teste e responder \"%s\",\n"
-"o DrakX seguirá para a etapa seguinte. Se não puder ver a mensagem,\n"
-"significa que algo na configuração está errado, e o teste vai acabar\n"
-"automaticamente depois de 12 segundos, voltando ao menu. Mude\n"
-"as configurações até obter uma boa resolução gráfica.\n"
+" O sistema tenta abrir uma tela gráfica na resolução desejada.\n"
+"Se vir a mensagem de teste durante o teste e responder \"%s\",\n"
+"então o DrakX prossegue para a próxima etapa. Se não a ver, isso\n"
+"significa que alguma parte da configuração de detecção automática estava\n"
+"incorreta e o teste é automaticamente encerrado após 12 segundos,\n"
+"retornando ao menu. Altere as configurações até obter uma exibição gráfica "
+"correta.\n"
"\n"
"\n"
"\n"
"Opções\n"
"\n"
-" Aqui você pode escolher se deseja que o computador inicie\n"
-"automaticamente em modo gráfico. Obviamente, você vai querer marcar o\n"
-"\"%s\" se a sua máquina é um servidor, ou caso não tenha conseguido obter\n"
-"uma boa configuração de vídeo."
+" Esta etapa permite escolher se deseja que sua máquina mude\n"
+"automaticamente para uma interface gráfica na inicialização. Obviamente,\n"
+"você marcar \"%s\" se sua máquina for atuar como um servidor\n"
+"ou se não conseguir configurar a exibição corretamente."
#: ../help.pm:291
#, c-format
@@ -671,10 +669,9 @@ msgid ""
msgstr ""
"Monitor\n"
"\n"
-" O instalador normalmente detecta e configura automaticamente o\n"
-"monitor conectado ao seu computador. Se a configuração não estiver correta, "
-"escolha \n"
-"na lista o monitor correto que está conectado em seu computador."
+" Normalmente, o instalador detecta e configura automaticamente\n"
+"o monitor conectado à sua máquina. Se isso não estiver correto, você pode\n"
+"escolher na lista o monitor que está conectado ao seu computador."
#: ../help.pm:298
#, c-format
@@ -688,12 +685,11 @@ msgid ""
msgstr ""
"Resolução\n"
"\n"
-" Você pode escolher aqui as resoluções e profundidade de cores disponíveis "
-"para\n"
-"o seu hardware. Escolha as que atendam melhor às suas necessidades (você\n"
-"poderá alterar esta configuração após a instalação). Uma amostra da "
-"configuração\n"
-"será mostrada no monitor."
+" Aqui você pode escolher as resoluções e profundidades de cor disponíveis\n"
+"para o seu hardware gráfico. Escolha a que melhor atende às suas "
+"necessidades\n"
+"(você pode fazer alterações após a instalação). Uma amostra da configuração\n"
+"escolhida é exibida na imagem do monitor."
#: ../help.pm:306
#, c-format
@@ -702,9 +698,9 @@ msgid ""
"or without 3D acceleration, you're asked to choose the server which best\n"
"suits your needs."
msgstr ""
-"No caso de existirem vários servidores disponíveis para a sua placa,\n"
-"com ou sem aceleração 3D, escolha o servidor que melhor se adapta\n"
-"às suas necessidades."
+"Na situação em que diferentes drivers estão disponíveis para sua placa,\n"
+"com ou sem aceleração 3D, você é solicitado a escolher o driver que\n"
+"melhor atende às suas necessidades."
#: ../help.pm:311
#, c-format
@@ -718,47 +714,51 @@ msgid ""
msgstr ""
"Opções\n"
"\n"
-" Aqui você pode escolher se deseja que o computador inicie\n"
-"automaticamente em modo gráfico. Obviamente, você vai querer marcar o\n"
-"\"%s\" se a sua máquina é um servidor, ou caso não tenha conseguido obter\n"
-"uma boa configuração de resolução de vídeo."
+" Esta etapa permite escolher se deseja que sua máquina mude\n"
+"automaticamente para uma interface gráfica na inicialização. Obviamente,\n"
+"você marcar \"%s\" se a sua máquina é um servidor, ou caso\n"
+"não tenha conseguido obter uma boa configuração de resolução de vídeo."
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -767,15 +767,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -788,75 +788,73 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Neste ponto, você precisa escolher onde instalar o seu sistema\n"
-"Mandriva Linux no seu disco rígido. Se seu disco estiver vazio ou se um\n"
-"sistema operacional existente usa todo o espaço disponível, você terá que\n"
-"particioná-lo. Basicamente, particionar um disco rígido consiste em\n"
-"dividi-lo logicamente para criar espaço para o seu novo sistema Mandriva "
-"Linux.\n"
-"\n"
-"Como os efeitos de um processo de particionamento são normalmente\n"
-"irreversíveis, podendo levar à perda de dados do sistema operacional atual,\n"
-"ele pode ser intimidante e estressante para um usuário inexperiente.\n"
-"Felizmente, o DrakX traz um assistente que simplifica este processo. Antes\n"
-"de continuar, leia o restante desta seção, e faça todos os passos\n"
-"com calma.\n"
-"\n"
-"Dependendo da configuração do seu disco rígido, várias soluções podem estar\n"
+"Agora você precisa decidir onde deseja instalar o sistema operacional "
+"Mageia\n"
+"em seu disco rígido. Se o seu disco rígido estiver vazio ou se um sistema\n"
+"operacional existente estiver usando todo o espaço disponível, você deve\n"
+"particionar o disco. Basicamente, particionar um disco rígido significa "
+"dividi-lo\n"
+"logicamente para criar o espaço necessário para instalar o novo sistema "
+"Mageia.\n"
+"\n"
+"Como o processo de particionamento de um disco rígido é geralmente "
+"irreversível\n"
+"e pode levar a perdas de dados, o particionamento pode ser intimidante e "
+"estressante\n"
+"para o usuário inexperiente. Felizmente, o DrakX inclui um assistente que "
+"simplifica\n"
+"esse processo. Antes de continuar com esta etapa, leia o restante desta "
+"seção e,\n"
+"acima de tudo, sem pressa.\n"
+"\n"
+"Dependendo da configuração do seu disco rígido, várias opções estarão "
"disponíveis:\n"
"\n"
-"* \"%s\": esta opção particionará automaticamente seu(s) disco(s) vazio(s).\n"
-"Se você usar esta opção não haverá mais nenhum alerta adicional.\n"
-"\n"
-"* \"%s\": o assistente detectou uma ou mais partições Linux em seu disco\n"
-"rígido. Se você deseja usá-las, escolha esta opção. Será pedido para que "
-"você escolha os pontos de montagem associados\n"
-"a cada uma das partições. Alguns pontos de montagem já existentes serão "
-"selecionados\n"
-"automaticamente, e na maioria das vezes é uma boa idéia mantê-los.\n"
-"\n"
-"* \"%s\": se o Microsoft Windows estiver instalado no seu disco rígido e\n"
-"ocupar todo o espaço disponível, você terá que criar espaço livre para o\n"
-"GNU/Linux. Para fazer isto, você pode remover a sua partição Microsoft "
-"Windows\n"
-"(leia-se: usar a opção 'Apagar disco inteiro') ou redimensionar a sua "
-"partição Microsoft\n"
-"Windows do tipo FAT ou NTFS. O redimensionamento pode ser feito sem a perda "
-"de dados, desde\n"
-"que você tenha desfragmentado previamente sua partição e a mesma esteja\n"
-"formatada em FAT ou NTFS. Recomendamos fortemente o backup de seus\n"
-"dados. Esta solução é útil se você quiser usar o Mandriva Linux e o\n"
-"Microsoft Windows no mesmo computador.\n"
-"\n"
-"Antes de escolher esta solução, compreenda que o tamanho de sua partição\n"
-"Microsoft Windows será menor do que é agora. Isto significa que você terá\n"
-"menos espaço livre no Microsoft Windows para guardar os seus dados ou\n"
-"instalar novos programas.\n"
-"\n"
-"* \"%s\": se você quiser apagar todos os dados e todas as partições\n"
-"existentes no disco rígido e substituí-las pelo seu novo sistema Mandriva "
-"Linux, você pode escolher esta opção. Tenha cuidado, pois\n"
-"você não pode reverter sua escolha após a confirmação.\n"
-"\n"
-"!! Se você escolher esta opção, todos seus dados atuais serão perdidos. !!\n"
-"\n"
-" * \"%s\" Esta opção aparecerá quando seu disco rígido estiver totalmente\n"
-"ocupado pelo Microsoft Windows. Ao escolher esta opção, todo o conteúdo do "
-"seu \n"
-"disco rígido será apagado, sendo assim, todo ele particionado do início.\n"
-"\n"
-" !! Se você escolher esta opção, todo os dados do seu disco rígido serão "
-"perdidos. !!\n"
-"\n"
-"* \"%s\": escolha esta opção se você quiser particionar manualmente o seu\n"
-"disco rígido. Tenha cuidado -- ela é muito poderosa, mas muito perigosa. "
-"Você\n"
-"pode perder todos os seus dados facilmente. Escolha esta solução somente\n"
-"se souber o que está fazendo ou já tiver experiência com particionamento. "
-"Para mais\n"
-"informações de como usar o utilitário DiskDrake, leia a seção 'Gerenciando "
-"suas \n"
-"Partições' do 'Guia do Iniciante'."
+" * \"%s\". Esta opção realiza um particionamento automático do(s) seu(s)\n"
+"disco(s) vazio(s). Se usar esta opção, não há mais solicitações.\n"
+"\n"
+" * \"%s\". O assistente detectou uma ou mais partições Linux existentes\n"
+"em seu disco rígido. Se quiser usá-las, escolha esta opção. Você é\n"
+"solicitado a escolher os pontos de montagem associados a cada uma\n"
+"das partições. Os pontos de montagem legados são selecionados por padrão e,\n"
+"na maioria das vezes, é uma boa ideia mantê-los.\n"
+"\n"
+" * \"%s\". Se o Microsoft Windows estiver instalado em seu disco rígido e\n"
+"ocupar todo o espaço disponível, você deve criar um espaço livre para o\n"
+"GNU/Linux. Para fazer isso, você pode excluir a partição e os dados do\n"
+"Microsoft Windows (veja a solução ``Apagar todo o disco'') ou redimensionar\n"
+"a partição FAT ou NTFS do Microsoft Windows. O redimensionamento pode\n"
+"ser realizado sem perda de dados, desde que tenha desfragmentado a partição\n"
+"do Windows anteriormente. É altamente recomendável fazer backup dos seus\n"
+"dados. Usar esta opção é recomendado se deseja usar tanto o Mageia\n"
+"quanto o Microsoft Windows no mesmo computador.\n"
+"\n"
+" Antes de escolher esta opção, entenda que após este procedimento,\n"
+"o tamanho da sua partição do Microsoft Windows será menor do que era\n"
+"inicialmente. Você terá menos espaço livre no Microsoft Windows para\n"
+"armazenar seus dados ou para instalar novos softwares.\n"
+"\n"
+" * \"%s\". Se deseja excluir todos os dados e todas as partições presentes\n"
+"em seu disco rígido e substituí-los pelo novo sistema Mageia, escolha\n"
+"esta opção. Tenha cuidado, pois você não pode desfazer esta operação\n"
+"após confirmar.\n"
+"\n"
+" !! Se escolher esta opção, todos os dados em seu disco são excluídos. !!\n"
+"\n"
+" * \"%s\". Esta opção aparece quando o disco rígido está totalmente ocupado "
+"pelo\n"
+"Microsoft Windows. Escolher esta opção exclui tudo no disco e começa\n"
+"do zero, particionando tudo a partir do início.\n"
+"\n"
+" !! Se escolher esta opção, todos os dados em seu disco são perdidos. !!\n"
+"\n"
+" * \"%s\". Escolha esta opção se deseja particionar seu disco rígido\n"
+"manualmente. Tenha cuidado -- é uma escolha poderosa, mas perigosa, e\n"
+"você pode facilmente perder todos os seus dados. Por isso, esta opção é\n"
+"realmente recomendada apenas se você já tiver feito algo semelhante\n"
+"antes e tiver alguma experiência. Para mais instruções sobre como usar\n"
+"a ferramenta DiskDrake, consulte a seção ``Gerenciar suas partições'' no\n"
+"``Guia do iniciante''."
#: ../help.pm:377
#, c-format
@@ -866,12 +864,12 @@ msgstr "Usar partição existente"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr "Usar o espaço livre da partição Microsoft Windows®"
+msgstr "Usar o espaço livre na partição do Microsoft Windows®"
#: ../help.pm:370
#, c-format
msgid "Erase entire disk"
-msgstr "Apagar disco inteiro"
+msgstr "Apagar todo o disco"
#: ../help.pm:380
#, c-format
@@ -910,57 +908,56 @@ msgid ""
"\"mformat a:\", or \"fdformat /dev/fd0\" followed by \"mkfs.vfat\n"
"/dev/fd0\"."
msgstr ""
-"E aqui estamos! A instalação agora está completa e o seu GNU/Linux está\n"
-"pronto para ser usado. Clique em \"%s\" para reiniciar o sistema. Não "
-"esqueça\n"
-"de remover a mídia de instalação (CD-ROM ou disquete). A primeira coisa\n"
-"que você deverá ver, após seu computador terminar os testes de hardware,\n"
-"será o menu do gerenciador de inicialização, que fornecerá para você uma "
-"lista de opções, para que você escolha qual sistema\n"
-"operacional iniciar.\n"
-"\n"
-"O botão \"%s\" mostra mais dois botões:\n"
-"\n"
-" * \"%s\": para criar um disco de instalação que automaticamente fará\n"
-"uma instalação completa, sem a ajuda de um operador, semelhante à\n"
-"instalação que você acabou de fazer.\n"
-"\n"
-" Note que duas opções diferentes estão disponíveis depois que você clicar\n"
-"no botão:\n"
-"\n"
-" * \"%s\". É uma instalação parcialmente automática, porque a seção\n"
-"de particionamento (somente esta) permanece interativa.\n"
-"\n"
-" * \"%s\". Completamente automatizada: o disco rígido é completamente\n"
-"reescrito, e todos os dados anteriores serão perdidos.\n"
-"\n"
-" Esta funcionalidade é muito adequada quando se deseja instalar o\n"
-"sistema em um grande número de máquinas semelhantes. Veja a seção\n"
-"de instalação automática do nosso website para mais informações.\n"
-"\n"
-" * \"%s\": salva a seleção de pacotes feita nesta instalação.\n"
-"Para usar esta seleção em outra instalação, insira o disquete e inicie\n"
-"a instalação. No 'prompt', pressione a tecla F1 e digite >> linux\n"
-"defcfg=\"floppy\" << e pressione [Enter].\n"
-"\n"
-"(*) Você precisa de um disquete formatado com FAT. Para criar um pelo\n"
-"GNU/Linux, digite \"mformat a:\", ou \"fdformat /dev/fd0\" seguido por\n"
+"Pronto. A instalação está completa e seu sistema GNU/Linux está pronto\n"
+"para ser usado. Basta clicar em \"%s\" para reiniciar o sistema. Não se\n"
+"esqueça de remover a mídia de instalação (CD-ROM ou pen drive). A primeira\n"
+"coisa que deve ver depois que seu computador terminar os testes de\n"
+"hardware é o menu do gerenciador de inicialização, oferecendo a opção de\n"
+"qual sistema operacional iniciar.\n"
+"\n"
+"O botão \"%s\" exibe mais dois botões para:\n"
+"\n"
+" * \"%s\": permitir criar um disquete de instalação que realiza uma\n"
+"instalação completa automaticamente, sem a ajuda de um operador,\n"
+"semelhante à instalação que você acabou de configurar.\n"
+"\n"
+" Note que duas opções diferentes estão disponíveis após clicar nesse "
+"botão:\n"
+"\n"
+" * \"%s\". Esta é a instalação parcialmente automatizada. A etapa de\n"
+"particionamento é o único procedimento interativo.\n"
+"\n"
+" * \"%s\". Instalação totalmente automatizada: o disco rígido é "
+"completamente\n"
+"regravado, todos os dados são perdidos.\n"
+" \n"
+" Este recurso é muito útil ao instalar em várias máquinas semelhantes. "
+"Veja\n"
+"a seção Instalação automática em nosso site para mais informações.\n"
+"\n"
+" * \"%s\"(*): salva uma lista dos pacotes selecionados nesta instalação.\n"
+"Para usar esta seleção em outra instalação, insira o disco e inicie a\n"
+"instalação. Na solicitação, pressione a tecla [F1], digite\n"
+">>linux defcfg=\"floppy\"<< e pressione a tecla [Enter].\n"
+"\n"
+"(*) Você precisa de um disquete formatado em FAT. Para criar um no\n"
+"GNU/Linux, digite \"mformat a:\", ou \"fdformat /dev/fd0\" seguido de\n"
"\"mkfs.vfat /dev/fd0\"."
#: ../help.pm:412
#, c-format
msgid "Generate auto-install floppy"
-msgstr "Criar disquete de instalação automática"
+msgstr "Gerar disquete de instalação automática"
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr "Replay"
+msgstr "Repetir"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr "Automático"
+msgstr "Automatizada"
#: ../help.pm:405
#, c-format
@@ -987,39 +984,38 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
msgstr ""
-"Se você escolher reutilizar algumas partições GNU/Linux existentes, poderá "
-"reformatar algumas delas e \n"
-"apagar os dados contidos nelas. Se você deseja fazer isto, por favor, "
-"selecione\n"
-"quais partições você deseja formatar.\n"
+"Se optou por reutilizar algumas partições GNU/Linux legadas, pode\n"
+"ser necessário reformatar algumas delas e apagar qualquer dado que\n"
+"contenham. Para fazer isso, selecione essas partições também.\n"
"\n"
-"Note que não é necessário reformatar todas as partições já existentes.\n"
-"Você deve reformatar as partições contendo o sistema operacional\n"
-"(tais como \"/\",\"/usr\" ou \"/var\"), mas você não tem que\n"
-"reformatar as partições contendo dados que você deseja manter\n"
-"(a partição \"/home\" é exemplo típico).\n"
+"Note que não é necessário reformatar todas as partições pré-existentes.\n"
+"Você deve reformatar as partições que contêm o sistema operacional\n"
+"(como \"/\", \"/usr\" ou \"/var\"), mas não é necessário reformatar as "
+"partições que\n"
+"contêm dados que deseja manter (tipicamente \"/home\").\n"
"\n"
-"Tenha cuidado ao selecionar as partições. Após formatá-las, todos os\n"
-"dados serão apagados e não poderão ser recuperados.\n"
+"Tenha cuidado ao selecionar partições. Após a formatação ser concluída,\n"
+"todos os dados nas partições selecionadas serão excluídos e não será "
+"possível\n"
+"recuperá-los.\n"
"\n"
"Clique em \"%s\" quando estiver pronto para formatar as partições.\n"
"\n"
-"Clique em \"%s\" se você desejar escolher outras partições para instalar\n"
-"o seu novo sistema operacional Mandriva Linux.\n"
+"Clique em \"%s\" se quiser escolher outra partição para a nova instalação\n"
+"do sistema operacional Mageia.\n"
"\n"
-"Clique em \"%s\" para selecionar partições as quais você deseja que sejam "
-"verificadas, \n"
-"para a busca por blocos defeituosos."
+"Clique em \"%s\" se quer selecionar partições que serão verificadas\n"
+"quanto a blocos defeituosos no disco."
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1031,19 +1027,17 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Neste momento em que você está instalando o Mandriva Linux, é possível que\n"
-"alguns pacotes tenham sido atualizados após o lançamento inicial. Alguns\n"
-"erros e falhas de seguranças podem ter sido corrigidos. Para poder se\n"
-"beneficiar destas atualizações, você pode fazer o download destes pacotes\n"
-"da Internet. Escolha \"%s\" se você possui uma conexão à Internet\n"
-"funcionando, ou \"%s\" se você preferir instalar os pacotes atualizados\n"
+"Ao instalar o Mageia, é provável que alguns pacotes tenham sido\n"
+"atualizados desde o lançamento inicial. Bugs podem ter sido corrigidos,\n"
+"erros de segurança resolvidos. Para permitir que se beneficie\n"
+"dessas atualizações, você pode baixá-las da internet. Marque \"%s\"\n"
+"se conectado à internet, ou \"%s\" se preferir instalar pacotes atualizados\n"
"mais tarde.\n"
"\n"
-"Escolhendo \"%s\", aparecerá uma lista de locais de onde você poderá pegar\n"
-"as atualizações. Escolha a mais próxima de você. Quando a árvore de\n"
-"seleção de pacotes aparecer, marque o que desejar e pressione \"%s\" para\n"
-"fazer o download e instalar o(s) pacote(s) selecionado(s), ou \"%s\" para\n"
-"interromper."
+"Escolher \"%s\" exibe uma lista de locais na web dos quais as atualizações\n"
+"podem ser baixadas. Você deve escolher um próximo a você. Uma árvore\n"
+"de seleção de pacotes aparece: revise a seleção e pressione \"%s\"para\n"
+"baixar e instalar os pacotes selecionados, ou \"%s\" para cancelar."
#: ../help.pm:450
#, c-format
@@ -1055,51 +1049,53 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
"security. Security messages will be sent to that address."
msgstr ""
-"Neste ponto, o DrakX permite a escolha do nível de segurança desejado para\n"
-"a máquina. Em geral, o nível da segurança deve ser ajustado para o mais alto "
-"possível, \n"
-"se a máquina contiver dados cruciais, ou se for uma máquina exposta\n"
-"diretamente à Internet. Contudo, os níveis mais altos de segurança\n"
-"diminuem a facilidade de uso do computador.\n"
+"Neste ponto, o DrakX permite que você escolha o nível de segurança\n"
+"que deseja para sua máquina. Como regra geral, o nível de segurança deve "
+"ser\n"
+"definido mais alto se a máquina conter dados cruciais ou se for exposta\n"
+"diretamente à internet. A compensação é que um nível de segurança mais alto\n"
+"geralmente é obtido à custa da facilidade de uso.\n"
"\n"
-"Se você não souber o que escolher, fique com a opção padrão. Você poderá\n"
-"trocar o nível de segurança depois usando a ferramenta draksec, no Centro\n"
-"de Controle Mandriva Linux.\n"
+"Se não souber o que escolher, mantenha a opção padrão. Você pode\n"
+"alterar mais tarde com a ferramenta draksec, que faz parte do\n"
+"Centro de Controle Mageia.\n"
"\n"
-"Preencha o campo \"%s\" com o endereço de e-mail da pessoa responsável\n"
-"pela segurança. Assim, mensagens de segurança serão enviadas para esse "
-"endereço."
+"Preencha o campo \"%s\" com o endereço de email da pessoa responsável\n"
+"pela segurança. Mensagens de segurança serão enviadas para esse endereço."
#: ../help.pm:461
#, c-format
msgid "Security Administrator"
-msgstr "Administrador de Segurança"
+msgstr "Administrador de segurança"
#: ../help.pm:464
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1115,21 +1111,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1146,91 +1144,79 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Agora você precisa escolher qual(is) partição(ões) serão usadas para "
-"instalar o\n"
-"seu novo sistema Mandriva Linux. Se as partições já estiverem definidas \n"
-"(através de uma instalação anterior do GNU/Linux ou outro software\n"
-"particionador), você poderá utilizá-las. Caso contrário, as partições\n"
-"devem ser definidas.\n"
+"Neste ponto, você precisa escolher quais partições serão usadas para a\n"
+"instalação do seu sistema Mageia. Se as partições já foram definidas,\n"
+"seja a partir de uma instalação anterior do GNU/Linux ou por outra "
+"ferramenta\n"
+"de particionamento, você pode usar as partições existentes. Caso contrário,\n"
+"as partições do disco rígido devem ser definidas.\n"
"\n"
"Para criar partições, você deve primeiro selecionar um disco rígido. Você\n"
-"pode selecionar o disco clicando em \"hda\" para o primeiro drive IDE,\n"
-"\"hdb\" para o segundo, \"sda\" para o primeiro drive SCSI e assim por\n"
-"diante.\n"
+"pode selecionar o disco para particionamento clicando em ``hda'' para o\n"
+"primeiro disco IDE, ``hdb'' para o segundo, ``sda'' para o primeiro disco "
+"SCSI\n"
+"e assim por diante.\n"
"\n"
-"Para particionar o disco selecionado, você pode usar as seguintes opções:\n"
+"Para particionar o disco rígido selecionado, você pode usar estas opções:\n"
"\n"
-" * \"%s\": esta opção removerá todas as partições do disco rígido "
-"selecionado.\n"
+" * \"%s\": esta opção exclui todas as partições no disco rígido selecionado\n"
"\n"
-" * \"%s\": esta opção permite criar automaticamente partições ext3 e swap "
-"no\n"
-" espaço livre do seu disco rígido.\n"
+" * \"%s\": esta opção permite criar automaticamente partições ext4 e swap\n"
+"no espaço livre do seu disco rígido\n"
"\n"
-"\"%s\": acesso a características adicionais:\n"
+"\"%s\": oferece acesso a funcionalidades adicionais:\n"
"\n"
-" * \"%s\": se você quiser salvar sua tabela de partição em um disquete para\n"
-" poder recuperá-la, você pode usar esta opção. É altamente recomendável\n"
-" utilizá-la.\n"
+" * \"%s\": salva a tabela de partições em um disquete. Útil para "
+"recuperação\n"
+"da tabela de partições mais tarde, se necessário. Recomenda-se fortemente\n"
+"que você realize esta etapa.\n"
"\n"
-" * \"%s\": se você salvou a sua tabela de partição em um disquete de uma\n"
-"instalação anterior, você pode recuperá-la com esta opção.\n"
+" * \"%s\": permite restaurar uma tabela de partições previamente salva a\n"
+"partir de um disquete.\n"
"\n"
-" * \"%s\": se sua tabela de partição estiver danificada, você pode tentar\n"
-"recuperá-la usando esta opção. Tenha cuidado e lembre-se de que isto pode\n"
-"falhar.\n"
+" * \"%s\": se a tabela de partições estiver danificada, você pode tentar\n"
+"recuperá-la usando esta opção. Tenha cuidado e lembre-se de que isso\n"
+"nem sempre funciona.\n"
"\n"
-" * \"%s\": descarta todas as alterações e carrega a tabela de partição que\n"
+" * \"%s\": descarta todas as alterações e recarrega a tabela de partições "
+"que\n"
"estava originalmente no disco rígido.\n"
"\n"
-" * \"%s\": ao desmarcar esta opção, os usuários serão forçados a montar e "
-"desmontar\n"
-" manualmente as mídias removíveis, tais como discos flexíveis e CD-ROMs.\n"
-"\n"
-" * \"%s\": se você desejar utilizar um assistente para particionar o seu\n"
-" disco rígido, você pode usar esta opção. É recomendada caso não tenha\n"
-" conhecimento sobre particionamento.\n"
+" * \"%s\": desmarcar esta opção força os usuários a montar e desmontar\n"
+"manualmente mídias removíveis, como disquetes e CD-ROMs.\n"
"\n"
-" * \"%s\": você pode usar esta opção para cancelar suas alterações.\n"
+" * \"%s\": use esta opção se quer usar um assistente para particionar\n"
+"seu disco rígido. Isso é recomendado se você não tiver um bom\n"
+"entendimento de particionamento.\n"
"\n"
-" * \"%s\": permite ações adicionais nas partições (tipo, opções, formato)\n"
-" e fornece mais informações sobre o disco rígido\n"
+" * \"%s\": use esta opção para cancelar suas alterações.\n"
+" \n"
+" * \"%s\": permite ações adicionais em partições (tipo, opções, formato)\n"
+"e fornece mais informações sobre o disco rígido.\n"
"\n"
-" * \"%s\": quando você terminar de particionar o seu disco rígido, use esta\n"
-" opção para salvar as alterações.\n"
+" * \"%s\": quando terminar de particionar seu disco rígido, isso salva\n"
+"suas alterações no disco.\n"
"\n"
-"Quando definir o tamanho da partição, você pode fazê-lo com as setas\n"
-"direcionais de seu teclado.\n"
-"Nota: você pode utilizar qualquer opção usando o teclado: navegue entre as\n"
-"partições usando [Tab] e as setas [para cima/baixo].\n"
+"Ao definir o tamanho de uma partição, você pode ajustar o tamanho da\n"
+"partição com precisão usando as teclas de seta do teclado.\n"
"\n"
-"Quando a partição estiver selecionada, você pode usar:\n"
+"Nota: você pode acessar qualquer opção usando o teclado. Navegue pelas\n"
+"partições usando [Tab] e as setas [para cima/para baixo].\n"
"\n"
-" * Ctrl-c para criar uma nova partição (quando uma partição vazia estiver\n"
-" selecionada)\n"
+"Quando uma partição é selecionada, você pode usar:\n"
"\n"
-" * Ctrl-d para apagar uma partição\n"
+" * Ctrl-c para criar uma nova partição (quando uma partição vazia é\n"
+"selecionada)\n"
"\n"
-" * Ctrl-m para especificar um ponto de montagem\n"
+" * Ctrl-d para excluir uma partição\n"
"\n"
-"Para mais informações sobre os diferentes tipos de sistemas de arquivos \n"
-"disponíveis, por favor, leia o capítulo sobre ext2FS do \"Manual de "
-"Referência\".\n"
+" * Ctrl-m para definir o ponto de montagem\n"
"\n"
-"Se você está instalando em uma Máquina PPC, você vai precisar criar uma\n"
-"pequena partição \"bootstrap\" HFS de no mínimo 1MB para usar com o \n"
-"gerenciador de boot yaboot. Se você quiser criar uma partição um\n"
-"pouco maior, digamos 50MB, você pode usar o espaço para guardar\n"
-"um kernel extra e uma imagem ramdisk para situações de emergência."
+"Para obter informações sobre os diferentes tipos de sistemas de arquivos\n"
+"disponíveis, consulte o capítulo ext2FS do ``manual de referência''.\n"
#: ../help.pm:526
#, c-format
@@ -1250,7 +1236,7 @@ msgstr "Recuperar tabela de partições"
#: ../help.pm:526
#, c-format
msgid "Removable media auto-mounting"
-msgstr "Montagem automática de mídia removível"
+msgstr "Montagem automática de mídias removíveis"
#: ../help.pm:526
#, c-format
@@ -1265,71 +1251,78 @@ msgstr "Desfazer"
#: ../help.pm:526
#, c-format
msgid "Toggle between normal/expert mode"
-msgstr "Mudar entre modo normal/expert"
+msgstr "Alternar entre modo normal/avançado"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
-"Mais de uma partição Microsoft Windows foi detectada em seu disco\n"
-"rígido. Por favor, escolha a que você quer redimensionar para instalar o "
-"seu\n"
-"novo sistema operacional Mandriva Linux.\n"
+"Mais de uma partição Microsoft foi detectada em seu disco rígido. Escolha a\n"
+"que quer redimensionar para instalar seu novo sistema operacional Mageia.\n"
"\n"
-"Cada partição é listada da seguinte forma: \"Nome Linux\", \"Nome\n"
-"Windows\" \"Capacidade\".\n"
+"Cada partição é listada da seguinte forma: \"nome Linux\", \"nome Windows\"\n"
+"\"capacidade\".\n"
"\n"
-"\"Nome Linux\" é codificado da seguinte maneira: \"tipo do disco rígido\", "
-"\"número do disco rígido\", \"número da partição\" (por exemplo, \"hda1\").\n"
+"\"Nome Linux\" é estruturado como: \"tipo de disco rígido\", \"número do "
+"disco rígido\",\n"
+"\"número da partição\" (por exemplo, \"hda1\").\n"
"\n"
-"\"Tipo do disco rígido\" é \"hd\" se seu disco rígido for IDE e \"sd\"\n"
-"se ele for um disco rígido SCSI.\n"
+"\"Tipo do disco rígido\" é \"hd\" se o seu disco rígido for IDE e \"sd\" se "
+"for SCSI.\n"
"\n"
-"\"Número do disco rígido\" é sempre uma letra depois de \"hd\" ou \"sd\".Com "
-"discos rígidos IDE:\n"
+"\"Número do disco rígido\" é sempre uma letra após \"hd\" ou \"sd\". Com "
+"discos\n"
+"rígidos IDE:\n"
"\n"
-" * \"a\" significa \"disco rígido mestre na controladora IDE primária\",\n"
+" * \"a\" significa \"disco rígido mestre no controlador IDE primário\";\n"
"\n"
-" * \"b\" significa \"disco rígido escravo na controladora IDE primária\",\n"
+" * \"b\" significa \"disco rígido escravo no controlador IDE primário\";\n"
"\n"
-" * \"c\" , \"disco rígido mestre na controladora IDE secundária\",\n"
+" * \"c\" significa \"disco rígido mestre no controlador IDE secundário\";\n"
"\n"
-" * \"d\" , \"disco rígido escravo na controladora IDE secundária\".\n"
+" * \"d\" significa \"disco rígido escravo no controlador IDE secundário\".\n"
"\n"
-"Com discos rígidos SCSI, \"a\" significa \"SCSI ID mais baixo\", um \"b\"\n"
-"significa \"segundo SCSI ID mais baixo\", etc.\n"
+"Com discos rígidos SCSI, um \"a\" significa \"ID SCSI mais baixo\", um "
+"\"b\"\n"
+"significa \"segundo ID SCSI mais baixo\", e assim por diante.\n"
"\n"
-"O \"Nome Windows\" é a letra do seu disco rígido no Windows (o primeiro\n"
-"disco ou partição é chamado \"C:\")."
+"\"Nome Windows\" é a letra do seu disco rígido no Windows (o primeiro disco\n"
+"ou partição é chamado de \"C:\")."
#: ../help.pm:567
#, c-format
@@ -1339,9 +1332,9 @@ msgid ""
"the\n"
"list shown, click on the \"%s\" button to get the complete country list."
msgstr ""
-"\"%s\": confere a seleção do país atual. Se você não está neste país,\n"
-"clique no botão \"%s\" e escolha outro. Se seu país não está na \n"
-"lista mostrada, clique no botão \"%s\" para pegar a lista completa de países."
+"\"%s\": verifique a seleção atual do país. Se não estiver neste país,\n"
+"clique no botão \"%s\" e escolha outro. Se seu país não estiver na lista\n"
+"exibida, clique no botão \"%s\" para obter a lista completa de países."
#: ../help.pm:572
#, c-format
@@ -1350,46 +1343,50 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
-"Este passo só é mostrado quando uma partição antiga do GNU/Linux foi\n"
-"encontrada em seu computador.\n"
-"\n"
-"O DrakX precisa saber agora se você quer executar uma nova instalação\n"
-"ou fazer uma atualização do Mandriva Linux existente no seu sistema:\n"
-"\n"
-" * \"%s\": na maioria das vezes, isto remove completamente o sistema "
-"antigo.\n"
-"Porém, dependendo do seu modo de particionamento, você pode evitar que\n"
-"alguns dos dados existentes sejam sobrescritos (como o diretório \"home\").\n"
-"Se você deseja mudar o particionamento dos seus discos rígidos, ou mudar o "
-"sistema de arquivos, você deve usar esta opção.\n"
-"\n"
-" * \"%s\": este método de instalação lhe permite atualizar os pacotes\n"
-"atualmente instalados em seu sistema Mandriva Linux. Seu esquema\n"
-"atual de particionamento e dados de usuário não serão alterados. A maioria\n"
-"dos outros passos de configuração permanecerão disponíveis, semelhantes a "
-"uma instalação normal.\n"
+"Esta etapa é ativada somente se uma partição GNU/Linux existente\n"
+"for encontrada em sua máquina.\n"
+"\n"
+"O DrakX precisa saber se você deseja realizar uma nova instalação\n"
+"ou uma atualização de um sistema Mageia existente:\n"
+"\n"
+" * \"%s\". Para a maior parte, isso apaga completamente o sistema antigo.\n"
+"No entanto, dependendo do seu esquema de particionamento, você pode\n"
+"evitar que alguns dos seus dados existentes (principalmente diretórios "
+"\"home\")\n"
+"sejam sobrescritos. Se deseja alterar a forma como seus discos rígidos\n"
+"são particionados ou mudar o sistema de arquivos, você deve usar esta "
+"opção.\n"
+"\n"
+" * \"%s\". Esta classe de instalação permite atualizar os pacotes "
+"atualmente\n"
+"instalados em seu sistema Mageia. Seu esquema de particionamento atual e\n"
+"dados de usuário não serão alterados. A maioria das outras etapas de "
+"configuração\n"
+"permanece disponíveis e são semelhantes a uma instalação padrão.\n"
"\n"
-"O uso da opção \"Atualizar\" deve funcionar bem em sistemas Mandriva Linux \n"
-"versão \"8.1\" ou superior. Executar uma atualização de versões anteriores\n"
-"ao Mandriva Linux \"8.1\" não é recomendado."
+"Usar a opção ``Atualizar'' deve funcionar bem em sistemas Mageia com a "
+"versão\n"
+"\"8.1\" ou posterior. Realizar uma atualização em versões anteriores à "
+"\"8.1\" do\n"
+"Mageia, não é recomendada."
#: ../help.pm:594
#, c-format
@@ -1411,23 +1408,24 @@ msgid ""
"dialog will allow you to choose the key binding which will switch the\n"
"keyboard between the Latin and non-Latin layouts."
msgstr ""
-"Dependendo do idioma que você escolheu, o DrakX escolherá uma\n"
-"configuração de teclado particular para você. Selecione esta opção ou\n"
-"escolha um outro layout de teclado.\n"
+"Dependendo do idioma que escolheu (), o DrakX seleciona \n"
+"automaticamente um tipo específico de configuração de teclado. Verifique\n"
+"se a seleção atende às suas necessidades ou escolha outro layout de "
+"teclado.\n"
"\n"
-"Contudo, você pode ter um teclado que não corresponde exatamente\n"
-"ao idioma que você escolheu: por exemplo, se você for um suíço, porém\n"
-"o idioma é o inglês, você pode preferir continuar usando um teclado suíço.\n"
-"Ou se você fala inglês mas mora em Quebec, você pode estar na mesma\n"
-"situação quando sua língua nativa e seu teclado não são os mesmos. Nestes\n"
-"casos, este passo da instalação permitirá que você escolha o teclado "
-"apropriado na lista.\n"
+"Além disso, você pode não ter um teclado que corresponda exatamente ao seu\n"
+"idioma: por exemplo, se você é um suíço que fala inglês, pode ter um "
+"teclado\n"
+"suíço. Ou se fala inglês e está localizado no Quebec, pode encontrar a\n"
+"mesma situação em que seu idioma nativo e o teclado configurado para o país\n"
+"não correspondem. Em ambos os casos, esta etapa de instalação permite que\n"
+"você selecione um teclado apropriado a partir de uma lista.\n"
"\n"
-"Clique em \"%s\" para ver uma lista completa com os teclados disponíveis. \n"
+"Clique no botão \"%s\" para exibir uma lista de teclados suportados.\n"
"\n"
-"Se você escolher um layout baseado em um alfabeto não-latino, o próximo\n"
-"diálogo permitirá que você escolha a tecla que irá vincular a troca entre o\n"
-"teclado latino e o não-latino."
+"Se escolher um layout de teclado baseado em um alfabeto não latino,\n"
+"o próximo diálogo permite que você escolha a combinação de teclas que\n"
+"alterna o teclado entre os layouts latino e não latino."
#: ../help.pm:612
#, c-format
@@ -1446,8 +1444,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1473,54 +1470,51 @@ msgid ""
"by the entire system. Running the command as a regular user will only\n"
"change the language settings for that particular user."
msgstr ""
-"O primeiro passo é escolher o seu idioma preferido.\n"
-"\n"
-"A escolha de seu idioma preferido afetará a documentação do sistema, o "
-"instalador\n"
-"e o sistema em geral. Selecione primeiro a região onde você está localizado\n"
-"e o idioma que você fala.\n"
-"\n"
-"Clicando em \"%s\" você poderá selecionar outros idiomas para serem\n"
-"instalados no seu sistema. Ao selecionar outros idiomas também serão \n"
-"instalados os arquivos específicos para documentação e aplicativos. Por "
-"exemplo, se\n"
-"você pretende adicionar usuários espanhóis na sua máquina, selecione\n"
-"Inglês como idioma padrão na árvore de visualização e \"%s\" na seção\n"
-"Avançado.\n"
-"\n"
-"Sobre o suporte a UTF-8 (unicode): Unicode é o novo conjunto de codificação "
-"de caracteres\n"
-"para todas os idiomas existentes. O suporte completo em GNU/Linux ainda\n"
-"está em desenvolvimento. Por esta razão, o uso dele no Mandriva Linux \n"
-"dependerá da escolha do usuário:\n"
-"\n"
-"* Se você escolher idiomas legados, que possuem uma codificação forte "
-"(idiomas\n"
-"latinos, Russo, Japonês, Chinês, Coreano, Thai, Grego, Turco e a maioria dos "
-"idiomas com iso-8859-2), a codificação legada será usada por padrão;\n"
-"\n"
-"* Outros idiomas usarão o unicode por padrão;\n"
-"\n"
-"* Se dois ou mais idiomas forem requeridos, e tais idiomas não\n"
-"usarem a mesma codificação, então o unicode irá ser usado em todo o "
-"sistema;\n"
-"\n"
-"* Finalmente, o uso do unicode poderá ser forçado para o sistema que o "
-"usuário\n"
-"solicitar, através da opção \"%s\". independente do(s) idioma(s)\n"
-"selecionado(s).\n"
-"\n"
-"Note que você não está limitado a escolher um único idioma. Você pode\n"
-"selecionar vários, ou instalar todos selecionando a opção \"%s\". Selecionar "
-"o suporte para um idioma significa que as traduções, fontes, dicionários e "
-"corretores ortográficos, entre outros itens, serão também instaladas para "
-"este idioma.\n"
-"\n"
-"Para trocar entre os vários idiomas instalados no sistema, você pode\n"
-"executar o comando \"/usr/sbin/localedrake\" como \"root\" para alterar o\n"
-"idioma usado pelo sistema inteiro, e para todos os usuários. Executando o "
-"comando como usuário\n"
-"comum, a mudança apenas afetará o usuário em questão."
+"O primeiro passo é escolher seu idioma preferido.\n"
+"\n"
+"Sua escolha de idioma preferido afeta o instalador, a documentação e o\n"
+"sistema em geral. Primeiro, selecione a região em que você está localizado\n"
+"e, em seguida, o idioma que fala.\n"
+"\n"
+"Clicar no botão \"%s\" permite que você selecione outros idiomas a serem\n"
+"instalados em sua estação de trabalho, instalando assim os arquivos "
+"específicos\n"
+"para documentação do sistema e aplicativos. Por exemplo, se usuários\n"
+"espanhóis forem usar sua máquina, selecione o inglês como idioma padrão na\n"
+"visualização em árvore e \"%s\" na seção Avançado.\n"
+"\n"
+"Sobre o suporte a UTF-8 (unicode): Unicode é uma nova codificação de "
+"caracteres\n"
+"destinada a cobrir todos os idiomas existentes. No entanto, o suporte "
+"completo a\n"
+"ela no GNU/Linux ainda está em desenvolvimento. Por essa razão, o uso de "
+"UTF-8\n"
+"no Mageia depende das escolhas do usuário:\n"
+"\n"
+" * Se você escolher um idioma com uma codificação legada forte (idiomas "
+"latin1,\n"
+"russo, japonês, chinês, coreano, tailandês, grego, turco, a maioria dos "
+"idiomas\n"
+"iso-8859-2), a codificação legada será usada por padrão;\n"
+"\n"
+" * Outros idiomas usarão unicode por padrão;\n"
+"\n"
+" * Se forem necessários dois ou mais idiomas, e eles não usarem\n"
+"a mesma codificação, então unicode será usado para todo o sistema;\n"
+"\n"
+" * Finalmente, o unicode também pode ser forçado para uso em todo o\n"
+"sistema a pedido do usuário, selecionando a opção \"%s\" independentemente\n"
+"dos idiomas escolhidos.\n"
+"\n"
+"Note que você não está limitado a escolher um único idioma adicional.\n"
+"Você pode escolher vários ou até mesmo instalar todos selecionando a\n"
+"caixa \"%s\". Selecionar o suporte para um idioma significa que traduções,\n"
+"fontes, corretores ortográficos, etc., também serão instalados.\n"
+"\n"
+"Para alternar entre os vários idiomas instalados em seu sistema, você pode\n"
+"executar o comando \"localedrake\" como \"root\" para mudar o idioma usado\n"
+"por todo o sistema. Executar o comando como um usuário como\n"
+"altera apenas as configurações de idioma para esse usuário específico."
#: ../help.pm:650
#, c-format
@@ -1530,7 +1524,7 @@ msgstr "Espanhol"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr "Usar Unicode por padrão"
+msgstr "Usar unicode por padrão"
#: ../help.pm:646
#, c-format
@@ -1568,40 +1562,39 @@ msgid ""
"Test the buttons and check that the mouse pointer moves on-screen as you\n"
"move your mouse about."
msgstr ""
-"Normalmente, o DrakX não tem problemas em detectar o número de botões\n"
-"de seu mouse. Caso isto ocorra, ele assume que você tem um mouse\n"
-"de dois botões, e irá configurá-lo para emulação do terceiro botão. O\n"
-"terceiro botão pode ser acionado pressionando simultaneamente os botões\n"
-"esquerdo e direito do mouse. O DrakX saberá automaticamente se a interface\n"
-"é PS/2, serial ou USB.\n"
-"\n"
-"Se você tiver um mouse com 3 botões que não possua roda (wheel), você pode\n"
-"escolher um mouse \"%s\". DrakX irá então configurar seu mouse para que "
-"você\n"
-"possa simular o uso da roda da seguinte maneira: pressione o botão do meio "
-"e\n"
-"mova o ponteiro do seu mouse para cima e para baixo.\n"
-"\n"
-"Se por alguma razão você quiser especificar um tipo diferente de mouse,\n"
-"selecione o tipo da lista.\n"
-"\n"
-"Você pode selecionar a entrada \"%s\" para escolher um tipo de mouse\n"
-"\"genérico\" o qual deve funcionar com todos os mouses novos.\n"
-"\n"
-"Se você escolher um mouse diferente do padrão, uma tela será mostrada.\n"
-"Use os botões e a roda para verificar se as configurações estão corretas\n"
-"e se o mouse está configurado corretamente. Se o mouse não funcionar\n"
-"corretamente, pressione a barra de espaços ou o [Enter] para \n"
-"cancelar o teste e voltar para a lista de escolhas.\n"
-"\n"
-"Ocasionalmente, a roda do mouse (wheel) não será detectada automaticamente,\n"
-"e então você necessitará selecionar seu mouse de uma lista. Escolha\n"
-"corretamente a porta que seu mouse está conectado. Após selecionar\n"
-"um mouse e ter pressionado no botão \"%s\", uma imagem do mouse será\n"
-"mostrada na tela. Mova toda a roda do mouse para assegurar-se de que\n"
-"esteja ativada corretamente. Após verificar o funcionamento da roda\n"
-"do mouse, teste os botões e certifique-se de que o ponteiro do mouse\n"
-"move-se junto com o mesmo."
+"Normalmente, o DrakX não tem problemas para detectar o número de\n"
+"botões do seu mouse. Se houver algum problema, ele assume que você\n"
+"tem um mouse de dois botões e o configura para emulação do terceiro botão.\n"
+"O terceiro botão de um mouse de dois botões pode ser obtido clicando\n"
+"simultaneamente nos botões esquerdo e direito do mouse. O DrakX\n"
+"identifica automaticamente se o seu mouse usa uma interface PS/2, serial\n"
+"ou USB.\n"
+"\n"
+"Se tiver um mouse de 3 botões sem roda, pode escolher um mouse \"%s\".\n"
+"O DrakX configura seu mouse para que você possa simular a roda\n"
+"com ele: para fazer isso, pressione o botão do meio e mova o ponteiro do\n"
+"mouse para cima e para baixo.\n"
+"\n"
+"Se por algum motivo você quer especificar um tipo diferente de mouse,\n"
+"selecione na lista fornecida.\n"
+"\n"
+"Você pode selecionar a entrada \"%s\" para escolher um tipo \"genérico\",\n"
+"que funciona com quase todos os mouses.\n"
+"\n"
+"Se escolher um mouse diferente do padrão, uma tela de teste é\n"
+"exibida. Use os botões e a roda para verificar se as configurações estão\n"
+"corretas e se o mouse está funcionando corretamente. Se o mouse não\n"
+"estiver funcionando bem, pressione a barra de espaço ou a tecla [Enter]\n"
+"para cancelar o teste e você será retornado à lista de mouses.\n"
+"\n"
+"Ocasionalmente, mouses com roda não são detectados automaticamente,\n"
+"então você precisa selecioná-lo a partir de uma lista.\n"
+"Certifique-se de selecionar aquele correspondente à porta à qual seu mouse\n"
+"está conectado. Após selecionar e pressionar o botão \"%s\", uma imagem\n"
+"do mouse é exibida na tela. Role a roda para garantir que ela esteja\n"
+"ativando corretamente. À medida que rola a roda, você vê a roda de\n"
+"rolagem na tela se movendo. Teste os botões e verifique se o ponteiro\n"
+"se move na tela conforme movimenta o mouse."
#: ../help.pm:684
#, c-format
@@ -1619,8 +1612,8 @@ msgid ""
"Please select the correct port. For example, the \"COM1\" port under\n"
"Windows is named \"ttyS0\" under GNU/Linux."
msgstr ""
-"Por favor, selecione a porta correta. Por exemplo, a porta COM1\n"
-"no MS Windows é chamada \"ttyS0\" no GNU/Linux."
+"Selecione a porta correta. Por exemplo, a porta \"COM1\" no\n"
+"Windows, é chamada de \"ttyS0\" no GNU/Linux."
#: ../help.pm:684
#, c-format
@@ -1636,39 +1629,39 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
"know what you're doing."
msgstr ""
-"Um gerenciador de inicialização (ou boot loader) é um pequeno programa que é "
-"mostrado na inicialização (boot)de um computador. Ele é responsável por\n"
-"iniciar todo o sistema. Normalmente, a sua instalação é totalmente "
-"automática.\n"
-"O DrakX irá analisar o setor de boot de seu disco e proceder de acordo com\n"
-"o que for encontrado nele:\n"
-"\n"
-" * se um setor de boot Windows for encontrado, ele será substituído por um\n"
-"setor de boot GRUB/LILO. Desta forma, você será capaz de carregar qualquer\n"
-"sistema GNU/Linux ou qualquer outro sistema operacional instalado em sua "
-"máquina.\n"
-"\n"
-" * se um setor de boot GRUB ou LILO for encontrado, ele será substituído por "
-"um novo.\n"
-"\n"
-"Se o DrakX não puder determinar aonde deverá ser armazenado o setor de "
-"boot,\n"
-"ele irá perguntar para você. Geralmente, o \"%s\" é o lugar mais seguro.\n"
-"Escolhendo \"%s\", nenhum gerenciador de inicialização será instalado. Use "
-"esta opção somente se\n"
-"você souber o que está fazendo."
+"Um gerenciador de inicialização é um pequeno programa que é iniciado\n"
+"pelo computador na inicialização (boot). Ele é responsável por iniciar\n"
+"todo o sistema. Normalmente, a instalação do gerenciador de inicialização\n"
+"é totalmente automatizada. O DrakX analisa o setor de inicialização do\n"
+"disco e age de acordo com o que encontrar:\n"
+"\n"
+" * se um setor de inicialização do Windows for encontrado, ele é "
+"substituído\n"
+"por um setor de inicialização GRUB/LILO. Dessa forma, você pode carregar\n"
+"tanto o GNU/Linux quanto qualquer outro sistema operacional instalado em\n"
+"sua máquina.\n"
+"\n"
+" * se um setor de inicialização GRUB ou LILO for encontrado, ele é "
+"substituído\n"
+"por um novo.\n"
+"\n"
+"Se o DrakX não conseguir determinar onde colocar o setor de inicialização, "
+"ele\n"
+"pergunta onde deve colocá-lo. Geralmente, \"%s\" é o local mais seguro.\n"
+"Escolher \"%s\" não instala nenhum gerenciador de inicialização. Use esta\n"
+"opção somente se souber o que está fazendo."
#: ../help.pm:745
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1689,41 +1682,36 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
-"Aqui você seleciona o sistema de impressão para o seu computador.\n"
-"Outros sistemas operacionais podem oferecer-lhe apenas um, mas o Mandriva\n"
-"Linux oferece dois. Cada um se encaixa melhor em um tipo particular de "
-"configuração.\n"
-"\n"
-" * \"%s\" -- que significa 'print, do not queue' ou 'imprima não deixe na\n"
-"fila', e é a escolha caso você tenha uma conexão direta com sua\n"
-"impressora e você queira ser capaz decorrigir falhas na impressão, e\n"
-"também se você não possuir impressoras em rede. (\"%s\" só funcionará em "
-"redes\n"
-"bem simples e se tornará lento quando usado em redes). É recomendado que vc "
-"use \"pdq\"\n"
-"se este é sua primeira experiência com GNU/Linux.\n"
-"\n"
-" * \"%s\" -- 'Common Unix Printing System' ou 'Sistema de Impressão Comum do "
-"Unix', é excelente para imprimir em\n"
-"sua impressora local e também através do mundo. É simples de se configurar\n"
-"e pode agir como servidor ou cliente para o antigo sistema de impressão \"lpd"
-"\".\n"
-"Por isto, é compatível com os sistemas antigos que podem precisar de "
-"serviços de\n"
-"impressão. Pode fazer vários truques, mas a configuração é quase tão fácil "
-"quanto a\n"
-"do \"pdq\". Se você precisar emular um servidor \"lpd\", você deve ativar o "
-"serviço chamado \"cups-lpd\".\n"
-"\" \"%s\" possui várias interfaces gráficas para selecionar as opções de "
-"impressão ou\n"
-"gerenciar a impressão.\n"
-"\n"
-"Você poderá mudar a sua escolha após a instalação utilizando o\n"
-"PrinterDrake no Centro de Controle Mandriva Linux, e clicando no botão \"%s"
-"\"."
+"Agora é hora de selecionar um sistema de impressão para o seu\n"
+"computador. Outros sistemas operacionais podem oferecer apenas\n"
+"um, mas o Mageia oferece dois. Cada um dos sistemas de impressão\n"
+"é mais adequado para determinados tipos de configuração.\n"
+"\n"
+" * \"%s\" -- que significa ``imprimir, não enfileirar'', é a escolha ideal "
+"se você\n"
+"tiver uma conexão direta com sua impressora, quiser agir\n"
+"rapidamente em caso de atolamento de papel, e não tiver impressoras\n"
+"em rede. (\"%s\" lida apenas com casos muito simples de rede e é um pouco\n"
+"lento quando usado em redes). Recomenda-se o uso de \"pdq\" se esta\n"
+"for sua primeira experiência com GNU/Linux.\n"
+"\n"
+" * \"%s\" significa `` Common Unix Printing System'' e é uma excelente\n"
+"escolha para imprimir na sua impressora local ou em uma localizada do\n"
+"outro lado do planeta. É simples de configurar e pode atuar como servidor\n"
+"ou cliente para o antigo sistema de impressão \"lpd\", sendo compatível\n"
+"com sistemas operacionais mais antigos que ainda possam precisar de\n"
+"serviços de impressão. Embora bastante poderoso, a configuração básica\n"
+"é quase tão fácil quanto \"pdq\". Se precisar emular um servidor \"lpd\",\n"
+"certifique-se de ativar o daemon \"cups-lpd\". \"%s\" inclui interfaces\n"
+"gráficas para impressão ou escolha de opções de impressora e para\n"
+"gerenciamento da impressora.\n"
+"\n"
+"Se fizer uma escolha agora e depois perceber que não gosta do\n"
+"sistema de impressão escolhido, você pode alterá-lo executando\n"
+"o PrinterDrake no Centro de Controle Mageia e clicando no botão \"%s\"."
#: ../help.pm:768
#, c-format
@@ -1738,7 +1726,7 @@ msgstr "CUPS"
#: ../help.pm:724
#, c-format
msgid "Expert"
-msgstr "Expert"
+msgstr "Avançado"
#: ../help.pm:771
#, c-format
@@ -1748,7 +1736,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1760,26 +1748,26 @@ msgid ""
"which parameters need to be passed to the hardware, you'll need to manually\n"
"configure the driver."
msgstr ""
-"O DrakX tentará localizar primeiramente qualquer dispositivo IDE presente "
-"em\n"
-"sua máquina. Ele também tentará encontrar um ou mais placas PCI SCSI. Se o\n"
-"DrakX encontrar um adaptador SCSI ele instalará automaticamente o driver\n"
-"apropriado.\n"
-"\n"
-"Como a detecção do hardware não é à prova de falhas, o DrakX pode falhar ao\n"
-"tentar detectar seus discos. Se isto acontecer, você precisará especificar "
-"seu\n"
-"hardware manualmente. \n"
-"\n"
-"Se você tiver que especificar manualmente o seu adaptador, o DrakX\n"
-"perguntará se você quer especificar opções para ele. Você pode deixar\n"
-"que o DrakX examine o hardware para descobrir as opções. Isto\n"
-"normalmente funciona bem.\n"
-"\n"
-"Se o DrakX não conseguir detectar as opções automaticamente para determinar\n"
-"quais parâmetros são necessários passar ao hardware, você precisará "
-"fornecer\n"
-"configurar o para o driver manualmente."
+"O DrakX primeiro detecta quaisquer dispositivos IDE presentes em seu\n"
+"computador. Ele também busca uma ou mais placas PCI SCSI em seu\n"
+"sistema. Se uma placa SCSI for encontrada, o DrakX instala\n"
+"automaticamente o driver apropriado.\n"
+"\n"
+"Como a detecção de hardware não é infalível, o DrakX pode falhar ao "
+"detectar\n"
+"seus discos rígidos. Se isso ocorrer, você precisa especificar seu hardware\n"
+"manualmente.\n"
+"\n"
+"Se teve que especificar manualmente seu adaptador PCI SCSI, o DrakX\n"
+"pergunta se deseja configurar opções para ele. Você deve permitir que o\n"
+"DrakX faça uma procura no hardware para obter as opções específicas\n"
+"necessárias para inicializar o adaptador. Na maioria das vezes, o DrakX "
+"passa\n"
+"por esta etapa sem problemas.\n"
+"\n"
+"Se o DrakX não conseguir procurar as opções para determinar automaticamente\n"
+"quais parâmetros precisam ser passados para o hardware, será necessário\n"
+"configurar o driver manualmente."
#: ../help.pm:789
#, c-format
@@ -1788,10 +1776,10 @@ msgid ""
"here. If you notice the sound card is not the one actually present on your\n"
"system, you can click on the button and choose a different driver."
msgstr ""
-"\"%s\": se uma placa de som for detectada em seu sistema, ela estará\n"
-"indicada aqui. Se você observar que a placa de som indicada não é a que\n"
-"realmente está presente em seu sistema, você pode clicar no botão e escolher "
-"outro driver."
+"\"%s\": se uma placa de som for detectada em seu sistema, ela será exibida\n"
+"aqui. Se perceber que a placa de som não é a que está realmente\n"
+"presente em seu sistema, você pode clicar no botão e escolher um driver "
+"diferente."
#: ../help.pm:794
#, c-format
@@ -1834,8 +1822,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1852,74 +1839,74 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
"idea to review this setup."
msgstr ""
-"A título de revisão, o DrakX irá resumir em uma lista as informações \n"
-"sobre o seu sistema. Dependendo do hardware instalado, você pode ter\n"
-"algumas ou todas estas entradas. Cada uma delas é um elemento a ser\n"
-"configurado, seguido de um breve resumo da configuração atual.\n"
-"Clique no botão \"%s\" correspondente para fazer alguma alteração.\n"
-"\n"
-" * \"%s\": verifica a configuração atual do mapa de teclado e modifica-a, \n"
-"caso necessário.\n"
+"Como revisão, o DrakX apresenta um resumo das informações que ele\n"
+"coletou sobre seu sistema. Dependendo do hardware instalado em sua\n"
+"máquina, você pode ver algumas ou todas as seguintes entradas. Cada\n"
+"entrada é composta pelo item de hardware a ser configurado, seguido por\n"
+"um breve resumo da configuração atual. Clique no botão \"%s\"\n"
+"correspondente para fazer a alteração.\n"
+"\n"
+" * \"%s\": verifique a configuração atual do mapa de teclado e altere se\n"
+"necessário.\n"
"\n"
-" * \"%s\": verifica a seleção atual de país. Se não estiver neste país, "
-"clique\n"
-"no botão \"%s\" e escolha outro. Se o seu país não estiver nesta lista,\n"
-"clique em \"%s\" para obter a lista completa dos\n"
-"países.\n"
+" * \"%s\": verifique a seleção atual do país. Se não estiver neste país,\n"
+"clique no botão \"%s\" e escolha outro. Se seu país não estiver na lista\n"
+"exibida, clique no botão \"%s\" para obter a lista completa de países.\n"
"\n"
-" * \"%s\": Por padrão, o DrakX deduz seu fuso horário baseado no país\n"
-"escolhido. Pressione o botão \"%s\" para mudar, caso não esteja correto.\n"
+" * \"%s\": padrão, o DrakX deduz seu fuso horário com base no país\n"
+"escolhido. Você pode clicar no botão \"%s\" aqui se isso não estiver "
+"correto.\n"
"\n"
-" * \"%s\": verifique a configuração do mouse atual e mude-a se for "
-"necessário.\n"
+" * \"%s\": verifique a configuração atual do mouse e clique no botão\n"
+"para alterar se necessário.\n"
"\n"
-" * \"%s\": se uma placa de som for detectada no seu sistema, ela\n"
-"será mostrada aqui. Se a placa for diferente daquela que se\n"
-"encontra no seu sistema, clique no botão e escolha a correta.\n"
+" * \"%s\": se uma placa de som for detectada em seu sistema, ela será\n"
+"exibida aqui. Se notar que a placa de som não é a que está presente\n"
+"em seu sistema, você pode clicar no botão e escolher um driver diferente.\n"
"\n"
-" * \"%s\":se uma placa de TV foi detectada no seu sistema, ela será "
-"indicada \n"
-"aqui. Se existe uma placa e ela não foi detectada, clique\n"
-"no botão \"%s\" para tentar configurá-la manualmente.\n"
+" * \"%s\": se tiver uma placa de TV, é aqui que as informações sobre\n"
+"sua configuração são exibidas. Se tiver uma placa de TV e ela não for\n"
+"detectada, clique em \"%s\" para tentar configurá-la manualmente.\n"
"\n"
-" * \"%s\": você pode clicar em \"%s \" para mudar os parâmetros associados\n"
-"com a placa, se você achar que a configuração está incorreta.\n"
+" * \"%s\": você pode clicar em \"%s\" para alterar os parâmetros associados "
+"à\n"
+"placa se achar que a configuração está errada.\n"
"\n"
-" * \"%s\": por padrão, o DrakX configura o seu vídeo com a resolução de "
-"\"800x600\" ou \"1024x768\". Se isto não é o que deseja, clique em\n"
-"\"%s\" para reconfigurar a interface gráfica.\n"
+" * \"%s\": por padrão, o DrakX configura sua interface gráfica em resolução\n"
+"\"800x600\" ou \"1024x768\". Se isso não for adequada para você, clique\n"
+"em \"%s\" para reconfigurar sua interface gráfica.\n"
"\n"
-" * \"%s\": se você deseja configurar a Internet ou o acesso a uma rede\n"
-"local, você pode fazê-lo agora. Verifique a documentação impressa ou use\n"
-"o Centro de Controle Mandriva Linux após a instalação ter terminado para\n"
-"utilizar a ajuda integrada completa.\n"
+" * \"%s\": se quer configurar seu acesso à internet ou rede local, você\n"
+"pode fazê-lo agora. Consulte a documentação impressa ou use o Centro\n"
+"de Controle Mageia após a instalação ser concluída para aproveitar\n"
+"a ajuda completa em tempo real.\n"
"\n"
-" * \"%s\": permite configurar endereços de proxies HTTP e FTP se a máquina\n"
-"que você está instalando utiliza um proxy para usar a internet.\n"
+" * \"%s\": permite configurar endereços de proxy HTTP e FTP se a máquina\n"
+"em que você está instalando estiver atrás de um servidor proxy.\n"
"\n"
-" * \"%s\": aqui você pode redefinir o nível de segurança que escolheu\n"
-"anteriormente.\n"
+" * \"%s\": esta entrada permite redefinir o nível de segurança configurado\n"
+"em uma etapa anterior .\n"
"\n"
-" * \"%s\": se você pretende conectar a sua máquina à Internet, é uma boa\n"
-"idéia protegê-la contra intrusos, configurando um firewall. Veja o capítulo\n"
-"correspondente no \"Guia do Usuário\" para mais detalhes sobre como\n"
-"configurar um firewall.\n"
+" * \"%s\": se planeja conectar sua máquina à internet, é uma boa ideia\n"
+"se proteger contra intrusões configurando um firewall. Consulte a seção\n"
+"correspondente do ``Guia de introdução'' para obter detalhes sobre as\n"
+"configurações de firewall.\n"
"\n"
-" * \"%s\": se você deseja mudar sua configuração do gerenciador de\n"
-"inicialização, clique neste botão. Recomendado apenas para usuários\n"
-"avançados. Veja documentação impressa ou a ajuda integrada, sobre\n"
-"como configurar o gerenciador de inicialização no Centro de Controle\n"
-"do Mandriva Linux.\n"
+" * \"%s\": se quer alterar a configuração do gerenciador de inicialização,\n"
+"clique neste botão. Isso deve ser reservado para usuários avançados.\n"
+"Consulte a documentação exibida ou a ajuda em tempo real sobre a "
+"configuração\n"
+"do gerenciador de inicialização no Centro de Controle Mageia.\n"
"\n"
-" * \"%s\": você poderá escolher aqui quais serviços serão iniciados\n"
-"em sua máquina. Se você pretende usar sua máquina como servidor, é uma\n"
-"boa idéia verificar esta configuração e desativar o que não for necessário."
+" * \"%s\": através desta entrada, você pode ajustar quais serviços serão\n"
+"executados em sua máquina. Se planeja usar esta máquina como um\n"
+"servidor, é uma boa ideia revisar essa configuração."
#: ../help.pm:809
#, c-format
@@ -1939,32 +1926,35 @@ msgstr "Interface gráfica"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Escolha o disco rígido que você quer apagar para instalar sua nova\n"
-"partição Mandriva Linux. Tenha cuidado, pois todos os dados existentes\n"
-"serão perdidos e não poderão ser recuperados!"
+"Escolha o disco rígido que deseja apagar para instalar sua nova partição\n"
+"do Mageia. Cuidado, todos os dados neste disco são perdidos e não podem\n"
+"ser recuperados!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
-"Clique em \"%s\" se você quiser apagar todos os dados e partições \n"
-"existentes neste disco rígido. Tenha cuidado, pois após clicar em \"%s\", \n"
-"você não será capaz de recuperar os dados/partições existentes neste\n"
-"disco rígido, incluindo quaisquer dados do Windows.\n"
+"Clique em \"%s\" se deseja excluir todos os dados e partições presentes\n"
+"neste disco rígido. Cuidado, após clicar em \"%s\", você não pode recuperar\n"
+"nenhum dado ou partição presente neste disco rígido, incluindo quaisquer "
+"dados\n"
+"do Windows.\n"
"\n"
-"Clique em \"%s\" para sair desta operação, sem perder qualquer dado\n"
-"e/ou partição presente neste disco rígido."
+"Clique em \"%s\" para sair desta operação sem perder dados e partições\n"
+"presentes neste disco rígido."
#: ../help.pm:872
#, c-format
@@ -1975,123 +1965,3 @@ msgstr "Próximo ->"
#, c-format
msgid "<- Previous"
msgstr "<- Anterior"
-
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "\"%s\": clique no botão \"%s\" para abrir o assistente de configuração "
-#~ "de\n"
-#~ "impressora. Consulte o capítulo correspondente do \"Guia do Iniciante\" "
-#~ "para\n"
-#~ "mais informações sobre como configurar uma nova impressora. A interface\n"
-#~ "apresentada no manual é similar à utilizada durante a instalação."
-
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Este ponto é crucial para a segurança do seu sistema GNU/Linux: você\n"
-#~ "deverá digitar a senha de \"root\". \"Root\" é o administrador do "
-#~ "sistema,\n"
-#~ "e é o único autorizado a fazer atualizações, adicionar usuários e mudar\n"
-#~ " configurações gerais do computador. Em suma: \"root\" pode fazer tudo! "
-#~ "Por isso\n"
-#~ "você deve escolher uma senha difícil de adivinhar - o DrakX irá avisá-lo "
-#~ "se a senha que você digitar for muito simples. Você pode também escolher "
-#~ "não\n"
-#~ "digitar uma senha, mas nós desaconselhamos fortemente esta opção. O "
-#~ "sistema\n"
-#~ "GNU/Linux é tão vulnerável a erros cometidos pelo operador como qualquer "
-#~ "outro.\n"
-#~ "O \"root\"\n"
-#~ "pode contornar todas as limitações do sistema e desavisadamente apagar \n"
-#~ " todos os dados de uma partição, por exemplo. É muito importante, "
-#~ "portanto, que seja\n"
-#~ "difícil se tornar \"root\".\n"
-#~ "\n"
-#~ "A senha deve ser um mistura de caracteres alfanuméricos, com pelo menos "
-#~ "8 \n"
-#~ "caracteres. Nunca escreva a senha de \"root\" num papel -- isto facilita "
-#~ "para \n"
-#~ " alguém comprometer seu sistema\n"
-#~ "\n"
-#~ "Porém, não faça também uma senha muito complicada e longa, porque você\n"
-#~ " deve ser capaz de lembrá-la!\n"
-#~ "\n"
-#~ "A senha não será mostrada na tela enquanto você digita. Portanto você\n"
-#~ "deverá digitar a senha duas vezes para reduzir a chance de erro. Se "
-#~ "ocorrer\n"
-#~ "de você digitar o mesmo erro duas vezes, você deverá fazer o primeiro "
-#~ "login\n"
-#~ "no sistema com esta senha \"errada\".\n"
-#~ "\n"
-#~ "Se seu acesso a este computador é controlado por um servidor de "
-#~ "autenticação,\n"
-#~ "clique no botão \"%s\".\n"
-#~ "\n"
-#~ "Se sua rede usa o protocolo LDAP, NIS ou autenticação em um PDC Windows,\n"
-#~ "selecione o servidor apropriado em \"%s\". Se você não sabe, pergunte ao "
-#~ "seu\n"
-#~ "administrador de rede.\n"
-#~ "\n"
-#~ "Se você tiver problemas para lembrar de suas senhas, se seu computador "
-#~ "nunca\n"
-#~ " será conectado à internet ou se você confiar em absolutamente todas as\n"
-#~ "pessoas que usam seu computador, você pode escolher usar \"%s\"."
-
-#~ msgid "authentication"
-#~ msgstr "autenticação"
-
diff --git a/perl-install/install/help/po/ro.po b/perl-install/install/help/po/ro.po
index bcf1be5bc..f836a27ea 100644
--- a/perl-install/install/help/po/ro.po
+++ b/perl-install/install/help/po/ro.po
@@ -1,4 +1,4 @@
-# Translation file of Mandriva Linux graphic install
+# Translation file of Mageia graphic install
# Copyright (c) 2000 Mandriva
# Florin Grad <florin@mandriva.com>, 1999-2000
# Dragos Marian Barbu <dragosb@softhome.net>, 2000
@@ -14,6 +14,7 @@ msgstr ""
"Last-Translator: Ovidiu Constantin <ovidiu.constantin@gmx.net>\n"
"Language-Team: Romanian Translators for Free Software <rtfs-project@lists."
"sourceforge.net>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -24,7 +25,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -88,7 +89,8 @@ msgstr "Vreţi să folosiţi această facilitate?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -98,31 +100,35 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -133,12 +139,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -218,10 +223,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -314,7 +319,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -412,39 +417,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -453,15 +462,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -568,7 +577,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -577,7 +586,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -600,7 +609,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -616,21 +625,24 @@ msgstr "Administrator de securitate:"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -646,21 +658,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -677,14 +691,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -725,34 +733,40 @@ msgstr "Schimbă între modul normal/expert"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -772,23 +786,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -829,8 +843,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -937,7 +950,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -948,7 +961,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -969,7 +982,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -996,7 +1009,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1058,8 +1071,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1076,7 +1088,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1101,8 +1113,8 @@ msgstr "Interfaţă grafică"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Alegeţi discul fix pe care doriţi să îl ştergeţi pentru a instala noua "
@@ -1114,12 +1126,14 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Clic pe \"%s\" dacă doriţi ştergerea tuturor datelor şi partiţiilor "
"existente\n"
diff --git a/perl-install/install/help/po/ru.po b/perl-install/install/help/po/ru.po
index e58db2b86..747b19348 100644
--- a/perl-install/install/help/po/ru.po
+++ b/perl-install/install/help/po/ru.po
@@ -1,35 +1,39 @@
-# Translation of DrakX.po to Russian
-# Russian translation of drakX messages
-# Copyright (C) 1999-2003 Mandriva
-# Pavel Maryanov <acid_jack@ukr.net>, 2002,2003, 2005.
-# Alice Lafox <alice@lafox.com.ua>, 2003.
-# Alice Lafox <alice@lafox.net>, 2004, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
+#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2005-09-20 18:19+0300\n"
-"Last-Translator: Pavel Maryanov <acid_jack@ukr.net>\n"
-"Language-Team: Russian <doc@lafox.net>\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>, 2024\n"
+"Language-Team: Russian (https://app.transifex.com/MageiaLinux/teams/9361/"
+"ru/)\n"
+"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || "
+"(n%100>=11 && n%100<=14)? 2 : 3);\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Прежде чем продолжить, вы должны внимательно прочитать условия лицензии.\n"
-"Лицензия распространяется на весь дистрибутив Mandriva Linux. Если вы\n"
+"Лицензия распространяется на весь дистрибутив Mageia. Если вы\n"
"согласны со всеми условиями лицензии, отметьте пункт \"%s\". Если нет -\n"
"нажатие на кнопку \"%s\" приведет к перезагрузке вашего компьютера."
@@ -113,24 +117,23 @@ msgstr ""
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Имя пользователя"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Принять пользователя"
#: ../help.pm:54
#, c-format
msgid "Do you want to use this feature?"
msgstr "Хотите использовать эту возможность?"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -140,24 +143,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Перечисленное выше является существующими разделами Linux, определенными на\n"
@@ -174,7 +181,8 @@ msgstr ""
"\"Название\" разделяется на: \"тип жесткого диска\", \"номер жесткого\n"
"диска\", \"номер раздела\" (например, \"hda1\").\n"
"\n"
-"\"Hard drive type\" это \"hd\", если ваш жесткий диск IDE и \"sd\", если он\n"
+"\"Hard disk drive type\" это \"hd\", если ваш жесткий диск IDE и \"sd\", "
+"если он\n"
"SCSI.\n"
"\n"
"\"Номер жесткого диска\" всегда является буквой после \"hd\" или \"sd\".\n"
@@ -191,35 +199,30 @@ msgstr ""
"Для жестких дисков SCSI, \"a\" означает \"lowest SCSI ID\", а \"b\"\n"
"означает \"second lowest SCSI ID\", и т.д."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Инсталляция Mandriva Linux размещена на нескольких CD-ROMах. Если выбранный\n"
+"Инсталляция Mageia размещена на нескольких CD-ROMах. Если выбранный\n"
"пакет находится на другом CD-ROM, DrakX будет отдавать текущий CD и просить\n"
"вас вставить другой по мере надобности. Если у вас нет требуемого CD под "
"руками,\n"
"просто нажмите \"%s\", тогда соответствующие пакеты не будут устанавливаться."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -270,12 +273,11 @@ msgid ""
"megabytes."
msgstr ""
"Теперь настало время определить, какие программы вы хотите установить в\n"
-"вашу систему. С Mandriva Linux поставляются тысячи пакетов и, для упрощения\n"
+"вашу систему. С Mageia поставляются тысячи пакетов и, для упрощения\n"
"выбора, они разбиты на группы.\n"
"\n"
-"Пакеты сортированы по группам, которые соответствуют специфике\n"
-"использования вашей машины. В Mandriva Linux пакеты сортируются по четырем\n"
-"категориям. Вы можете смешивать и сочетать приложения из различных\n"
+"В Mageia пакеты сортируются по четырем категориям.\n"
+"Вы можете смешивать и сочетать приложения из различных\n"
"категорий, например, вариант установки ``Рабочая станция'' может иметь\n"
"приложения из категории ``Разработка''.\n"
"\n"
@@ -284,7 +286,13 @@ msgstr ""
"рабочей станции.\n"
"\n"
" * \"%s\": если вы собираетесь заняться программированием, выберите\n"
-"соответствующие группы из этой категории.\n"
+"соответствующие группы из этой категории. Специальная группа\n"
+"\"LSB\" настроит систему таким образом, что она будет содержать наиболее "
+"полную\n"
+"спецификацию Стандартной базы Linux.\n"
+" Выбор \"LSB\" группы обеспечит 100%%-LSB совместимость\n"
+"системы. Однако, если вы не выберете группу \"LSB\", вы всё ещё\n"
+"будете иметь систему, которая почти на 100%% LSB-совместима.\n"
"\n"
" * \"%s\": если ваша машина будет работать сервером, выберите какие из\n"
"часто используемых служб вы желаете установить на нее.\n"
@@ -296,7 +304,7 @@ msgstr ""
"При наведении курсора мыши на имя группы будет показываться короткое\n"
"пояснение к данной группе.\n"
"\n"
-"ы можете отметить пункт \"%s\", который очень полезен, если вы хорошо\n"
+"Вы можете отметить пункт \"%s\", который очень полезен, если вы хорошо\n"
"знаете предлагаемые пакеты, или если вы хотите иметь полный контроль над\n"
"тем, что будет устанавливаться.\n"
"\n"
@@ -333,8 +341,6 @@ msgstr "С базовой документацией"
msgid "Truly minimal install"
msgstr "Самая минимальная установка"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:152
#, c-format
msgid ""
@@ -349,10 +355,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -382,10 +388,10 @@ msgstr ""
"\n"
"!! Если был выбран какой-либо серверный пакет, специально или он был частью\n"
"какой-либо группы, вас попросят подтвердить, действительно ли вы желаете\n"
-"установить эти сервера. Под Mandriva Linux все установленные сервера\n"
+"установить эти сервера. Под Mageia все установленные сервера\n"
"запускаются по умолчанию в процессе загрузки. Даже если они безопасны и не\n"
"имеют известных проблем на момент выпуска дистрибутива, в них могут быть\n"
-"обнаружены дыры в безопасности после выпуска данной версии Mandriva Linux.\n"
+"обнаружены дыры в безопасности после выпуска данной версии Mageia.\n"
"Если вы не знаете, зачем нужен данная служба и что она делает, нажмите\n"
"\"%s\". Если вы нажмете \"%s\", тогда все службы из списка будут\n"
"установлены и автоматически запущены при загрузке системы. !!\n"
@@ -408,8 +414,6 @@ msgstr ""
msgid "Automatic dependencies"
msgstr "Автоматические зависимости"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:185
#, c-format
msgid ""
@@ -446,8 +450,6 @@ msgstr ""
"Пожалуйста помните, что некоторые службы потенциально опасны для сервера.\n"
"В общем, оставьте только те службы, которые вам действительно нужны. !!"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:209
#, c-format
msgid ""
@@ -481,15 +483,13 @@ msgstr ""
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Аппаратные часы настроены на время по Гринвичу"
#: ../help.pm:213
#, c-format
msgid "Automatic time synchronization"
msgstr "Автоматическая синхронизация времени"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:223
#, c-format
msgid ""
@@ -513,14 +513,12 @@ msgstr ""
"ускорением и без, вам предложат выбрать, какой сервер больше соответствует\n"
"вашим потребностям."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:234
#, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -576,10 +574,12 @@ msgid ""
msgstr ""
"X (для системы X Window) это сердце графического интерфейса GNU/Linux, на\n"
"базе которого работают все графические среды (KDE, GNOME, AfterStep,\n"
-"WindowMaker, и т.д..), входящие в Mandriva Linux.\n"
+"WindowMaker, и т.д..), входящие в Mageia.\n"
"\n"
"Вам будет представлен список различных параметров для получения\n"
-"оптимального графического отображения: Видеокарта\n"
+"оптимального графического отображения.\n"
+"\n"
+"Видеокарта\n"
"\n"
" Инсталлятор обычно автоматически определяет и настраивает видеокарту,\n"
"установленную в вашей машине. Если это не так, вы можете выбрать в этом\n"
@@ -662,8 +662,6 @@ msgstr ""
"это изменить после инсталляции). Пример выбранной конфигурации отображается\n"
"на мониторе."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:306
#, c-format
msgid ""
@@ -675,8 +673,6 @@ msgstr ""
"и без, вам предложат выбрать, какой сервер больше соответствует вашим\n"
"потребностям."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:311
#, c-format
msgid ""
@@ -694,44 +690,46 @@ msgstr ""
"машина будет работать в качестве сервера или вам не удалось настроить\n"
"графический режим."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -740,15 +738,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -762,11 +760,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"На этом шаге вам прийдется решить, куда вы хотите установить операционную\n"
-"систему Mandriva Linux на вашем жестком диске. Если ваш жесткий диск пуст,\n"
+"систему Mageia на вашем жестком диске. Если ваш жесткий диск пуст,\n"
"или существующая операционная система на нем занимает все дисковое\n"
"пространство, вам прийдется диск переразбить (partition). Разделение диска\n"
"в основном состоит в том, чтобы логически выделить на нем свободное\n"
-"пространство для установки вашей новой системы Mandriva Linux.\n"
+"пространство для установки вашей новой системы Mageia.\n"
"\n"
"Поскольку разделение диска - это обычно необратимый процесс и может\n"
"привести к потере данных, если на диске уже есть установленная операционная\n"
@@ -793,7 +791,7 @@ msgstr ""
"потери данных, особенно если вы предварительно провели дефрагментацию\n"
"раздела Windows. Резервное копирование ваших данных настойчиво\n"
"рекомендуется.. Рекомендуем выбрать эту опцию, если вы собираетесь\n"
-"использовать Mandriva Linux и Microsoft Windows на одном компьютере.\n"
+"использовать Mageia и Microsoft Windows на одном компьютере.\n"
"\n"
" Перед тем, как выбрать эту опцию, вы должны осознать, что размер вашего\n"
"раздела Microsoft Windows станет меньше, чем был. У вас будет меньше\n"
@@ -801,7 +799,7 @@ msgstr ""
"новых программ.\n"
"\n"
" * \"%s\" выберите эту опцию, если вы хотите удалить все данные на всех\n"
-"разделах вашего жесткого диска и заменить их новой системой Mandriva Linux.\n"
+"разделах вашего жесткого диска и заменить их новой системой Mageia.\n"
"Будьте осторожны в этом решении, потому что после подтверждения вы не\n"
"сможете вернуть обратно все как было.\n"
"\n"
@@ -810,7 +808,8 @@ msgstr ""
"\n"
" * \"%s\": эта опция позволит просто удалить всю информацию на диске и\n"
"начать создание разделов диска на пустом месте. Вся информация на вашем\n"
-"диске будет утеряна.\n"
+"диске будет утеряна. Эта опция появляется, если жесткий диск полностьюзанят "
+"Microsoft Windows.\n"
"\n"
" !! Если вы выберете эту опцию, все данные на вашем диске будут потеряны.\n"
"!!\n"
@@ -831,15 +830,13 @@ msgstr "Использовать существующий раздел"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Использовать свободное пространство на разделе Microsoft Windows®"
#: ../help.pm:370
#, c-format
msgid "Erase entire disk"
msgstr "Очистить весь диск"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:380
#, c-format
msgid ""
@@ -915,20 +912,18 @@ msgstr "Создать дискету автоматической устано
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Повторить"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Автоматически"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Сохранить список пакетов"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:408
#, c-format
msgid ""
@@ -949,7 +944,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -974,17 +969,15 @@ msgstr ""
"Нажмите \"%s\", когда будете готовы начать форматирование разделов.\n"
"\n"
"Нажмите \"%s\", если вы хотите выбрать другой раздел для установки\n"
-"Mandriva Linux.\n"
+"Mageia.\n"
"\n"
"Нажмите \"%s\", если хотите выбрать разделы, которые следует проверить на\n"
"сбойные блоки (bad blocks)."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -996,7 +989,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"В данный момент установки Mandriva Linux было бы неплохо обновить некоторые\n"
+"В данный момент установки Mageia было бы неплохо обновить некоторые\n"
"пакеты из исходного релиза. Некоторые баги могут быть уже исправлены и\n"
"решены проблемы безопасности. Чтобы получить пользу от этих обновлений,\n"
"сейчас вы можете загрузить их из Интернет. Нажмите \"%s\", если у вас есть\n"
@@ -1008,8 +1001,6 @@ msgstr ""
"пакетов: просмотрите список и нажмите \"%s\" для получения и установки\n"
"выбранных пакетов, или \"%s\" для отмены."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:450
#, c-format
msgid ""
@@ -1020,7 +1011,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1034,9 +1025,10 @@ msgstr ""
"\n"
"Если вы не знаете что выбрать, оставьте выбор по умолчанию. Вы сможете\n"
"изменить этот уровень безопасности потом с помощью утилиты draksec из\n"
-"Mandriva Linux Control Center.\n"
+"Центра управления Mageia.\n"
"\n"
-"В поле \"%s\" системе указывается пользователь, который будет отвечать за\n"
+"В поле \"%s\" системе указывается пользователь (e-mail), который будет "
+"отвечать за\n"
"безопасность. На этот адрес будут посылаться сообщения по безопасности."
#: ../help.pm:461
@@ -1044,27 +1036,28 @@ msgstr ""
msgid "Security Administrator"
msgstr "Администратор по безопасности"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:464
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1080,21 +1073,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1111,17 +1106,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Здесь вам предложат выбрать, какие разделы будут использоваться для\n"
-"установки вашей системы Mandriva Linux. Если разделы были уже определены\n"
+"установки вашей системы Mageia. Если разделы были уже определены\n"
"ранее, например, предыдущей инсталляцией GNU/Linux или другой утилитой\n"
"разбиения дисков, вы можете воспользоваться существующими разделами. В\n"
"противном случае, разделы жесткого диска должны быть определены.\n"
@@ -1135,7 +1124,7 @@ msgstr ""
"\n"
" * \"%s\": эта опция удаляет все разделы на выбранном жестком диске;\n"
"\n"
-" * \"%s\": эта опция позволяет автоматически создать ext3 и swap разделы на\n"
+" * \"%s\": эта опция позволяет автоматически создать ext4 и swap разделы на\n"
"свободном пространстве вашего жесткого диска.\n"
"\n"
"\"%s\": открывает доступ к дополнительным возможностям:\n"
@@ -1151,7 +1140,8 @@ msgstr ""
"восстановить, используя эту опцию. Пожалуйста, будьте осторожны и помните,\n"
"что это может и не получиться.\n"
"\n"
-" * \"%s\": отменяет все изменения и загружает исходную таблицу разделов.\n"
+" * \"%s\": отменяет все изменения и загружает исходную таблицу разделов,\n"
+"что была в оригинале на жесткий диск.\n"
"\n"
" * \"%s\": если не выбрать эту опцию, то пользователи будут вынуждены\n"
"вручную монтировать и размонтировать съемные носители типа дискет и\n"
@@ -1185,27 +1175,21 @@ msgstr ""
"\n"
"Чтобы получить информацию о различных доступных файловых системах,\n"
"пожалуйста почитайте главу ext2FS из книги ``Справочное руководство''.\n"
-"\n"
-"Если вы производите инсталляцию на PPC машину, вам потребуется создать\n"
-"маленький HFS ``bootstrap'' раздел, не больше 1MB, который будет\n"
-"использоваться загрузчиком yaboot. Если вы решите сделать раздел чуть\n"
-"больше, скажем 50MB, то вы найдете полезное место для хранения spare kernel\n"
-"и ramdisk образов для загрузки в аварийных ситуациях."
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Сохранить таблицу разделов"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Восстановить таблицу разделов"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Исправить таблицу разделов"
#: ../help.pm:526
#, c-format
@@ -1215,56 +1199,60 @@ msgstr "Автомонтирование съемных носителей"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Мастер"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Вернуть"
#: ../help.pm:526
#, c-format
msgid "Toggle between normal/expert mode"
msgstr "Переключение между нормальным/экспертным режимами"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"На вашем жестом диске обнаружено несколько разделов Microsoft. Выберите\n"
"необходимый раздел для изменения его размера с целью установки вашей новой\n"
-"операционной системы Mandriva Linux.\n"
+"операционной системы Mageia.\n"
"\n"
"Каждый раздел перечислен так: \"Linux имя\", \"Windows имя\" \"Размер\".\n"
"\n"
@@ -1291,8 +1279,6 @@ msgstr ""
"\"Windows name\" это буква жесткого диска под Windows (первый диск или\n"
"раздел называется \"C:\")."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:567
#, c-format
msgid ""
@@ -1306,8 +1292,6 @@ msgstr ""
"присутствует в первом показанном списке, нажмите кнопку \"%s\", чтобы\n"
"увидеть полный список."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:572
#, c-format
msgid ""
@@ -1315,29 +1299,29 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Этот шаг появляется только в случае, если на вашей машине найден старый\n"
"раздел GNU/Linux.\n"
"\n"
"DrakX теперь должен узнать, хотите ли вы провести новую установку или\n"
-"обновление существующей системы Mandriva Linux:\n"
+"обновление существующей системы Mageia:\n"
"\n"
" * \"%s\": в большинстве случаев этот вариант приведет к уничтожению старой\n"
"системы. Если вы желаете изменить разделы вашего жесткого диска или\n"
@@ -1346,16 +1330,14 @@ msgstr ""
"от перезаписи некоторые свои данные.\n"
"\n"
" * \"%s\": этот класс установки позволит вам обновить пакеты, установленные\n"
-"в вашей системе Mandriva Linux. Текущая схема разделов диска и\n"
+"в вашей системе Mageia. Текущая схема разделов диска и\n"
"пользовательские данные останутся нетронутыми. Большинство других шагов\n"
"будут доступны, как и при стандартной установке.\n"
"\n"
-"``Обновление'' будет неплохо работать на системах Mandriva Linux начиная с\n"
-"\"8.1\" и выше. Проведение обновления на системах Mandriva Linux старше\n"
+"``Обновление'' будет неплохо работать на системах Mageia начиная с\n"
+"\"8.1\" и выше. Проведение обновления на системах Mageia старше\n"
"\"8.1\" не рекомендуется."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:594
#, c-format
msgid ""
@@ -1394,8 +1376,6 @@ msgstr ""
"алфавите, следующее диалоговое окно позволит вам выбрать сочетание клавиш\n"
"для переключения между латинской и не-латинской раскладками."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:612
#, c-format
msgid ""
@@ -1413,8 +1393,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1440,6 +1419,7 @@ msgid ""
"by the entire system. Running the command as a regular user will only\n"
"change the language settings for that particular user."
msgstr ""
+"Первый шаг - выбор вашего предпочитаемого языка.\n"
"Ваш выбор предпочитаемого языка повлияет на язык документации, сам\n"
"инсталлятор и систему в целом. Выберите сначала регион, в котором вы\n"
"находитесь, затем язык на котором вы говорите.\n"
@@ -1450,9 +1430,10 @@ msgstr ""
"Например, если у вас в системе будут работать пользователи из Испании,\n"
"выберите в дереве English как основной, и \"%s\" в дополнительном разделе.\n"
"\n"
-"О поддержке UTF-8 (unicode): Unicode это новая кодировка, которая включает\n"
+"О поддержке UTF-8 (unicode): Unicode - это новая кодировка, которая "
+"включает\n"
"в себя все существующие языки. Однако ее полная поддержка в GNU/Linux пока\n"
-"находится в стадии разработки. Поэтому Mandriva Linux будет определять\n"
+"находится в стадии разработки. Поэтому Mageia будет определять\n"
"использовать ее или нет в зависимости от выбора пользователя:\n"
"\n"
" * Если вы выбираете языки, которые имеют свою традиционную устоявшуюся\n"
@@ -1474,7 +1455,7 @@ msgstr ""
"шрифтов, проверку орфографии и т.д. для установленных языков.\n"
"\n"
"Для переключения между различными установленными языками в вашей системе вы\n"
-"можете запускать команду \"/usr/sbin/localedrake\" с правами \"root\",\n"
+"можете запускать команду \"localedrake\" с правами \"root\",\n"
"чтобы изменить язык для всей системы. Запуск этой команды с правами\n"
"обычного пользователя позволит изменить настройки языка для данного\n"
"конкретного пользователя."
@@ -1487,10 +1468,8 @@ msgstr "Испанский"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Использовать Unicode по умолчанию"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:646
#, c-format
msgid ""
@@ -1571,8 +1550,6 @@ msgstr "с эмуляцией колесика"
msgid "Universal | Any PS/2 & USB mice"
msgstr "Универсальный |Любая PS/2 & USB мышь"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:687
#, c-format
msgid ""
@@ -1582,8 +1559,6 @@ msgstr ""
"Пожалуйста, выберите правильный порт. Например, порт \"COM1\" под Windows\n"
"называется \"ttyS0\" под GNU/Linux."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:684
#, c-format
msgid ""
@@ -1598,7 +1573,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1619,13 +1594,11 @@ msgstr ""
"начальный загрузчик не будет установлен вообще. Используйте этот вариант\n"
"только если вы знаете, что вы делаете."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:745
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1646,12 +1619,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
-"Теперь пришло время выбрать систему печати для вашего компьютера. Другие OS\n"
-"могут предложить вам одну, а Mandriva Linux предлагает две. Каждая из "
-"систем\n"
+"Теперь пришло время выбрать систему печати для вашего компьютера. Другие ОС\n"
+"могут предложить вам одну, а Mageia предлагает две. Каждая из систем\n"
"является лучшей для определенной конфигурации.\n"
"\n"
" * \"%s\" -- что означает ``печатать, не ставить в очередь'' (``print,\n"
@@ -1674,7 +1646,7 @@ msgstr ""
"\n"
"Если вы сделаете свой выбор сейчас, а позже обнаружите, что система печати\n"
"вам не подходит, вы сможете изменить ее, запустив PrinterDrake из Центра\n"
-"Управления Mandriva Linux и нажав на кнопку \"%s\"."
+"управления Mageia и нажав на кнопку \"%s\"."
#: ../help.pm:768
#, c-format
@@ -1684,15 +1656,13 @@ msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
msgid "Expert"
msgstr "Эксперт"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:771
#, c-format
msgid ""
@@ -1701,7 +1671,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1730,8 +1700,6 @@ msgstr ""
"Если DrakX не в состоянии автоматически определить, какие параметры нужны\n"
"оборудованию, вам прийдется вручную настроить драйвер."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:789
#, c-format
msgid ""
@@ -1744,10 +1712,8 @@ msgstr ""
"тому, что у вас реально есть в системе, вы можете нажать на кнопку и\n"
"выбрать другой драйвер."
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1787,8 +1753,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1805,7 +1770,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1833,11 +1798,6 @@ msgstr ""
" * \"%s\": проверьте текущую конфигурацию мыши и нажмите на кнопку, если\n"
"необходимо что-либо изменить.\n"
"\n"
-" * \"%s\": по нажатию на кнопку \"%s\" откроется мастер настройки принтера.\n"
-"Прочитайте соответствующую главу в книге ``Стартовое руководство\n"
-"пользователя'', чтобы узнать как установить новый принтер. Представленный\n"
-"там интерфейс подобен используемому в процессе установки.\n"
-"\n"
" * \"%s\": если в вашей системе найдена звуковая карта, здесь это будет\n"
"показано. Если вы увидите, что показанная звуковая карта не соответствует\n"
"тому, что у вас реально есть в системе, вы можете нажать на кнопку и\n"
@@ -1857,7 +1817,7 @@ msgstr ""
"\n"
" * \"%s\": если вы хотите настроить доступ в Интернет или локальную сеть\n"
"прямо сейчас. Обратитесь к печатной документации или используйте\n"
-"Центр управления Mandriva Linux после установки чтобы почитать\n"
+"Центр управления Mageia после установки чтобы почитать\n"
"встроенную справку.\n"
"\n"
" * \"%s\": позволяет настроить адреса HTTP и FTP прокси если машина,\n"
@@ -1874,15 +1834,15 @@ msgstr ""
" * \"%s\": если вы желаете изменить конфигурацию начального загрузчика,\n"
"нажмите эту кнопку. Эта опция предназначена для опытных пользователей.\n"
"Обратитесь к печатной документации или встроенной справке о настройке\n"
-"загрузчика в Центре управления Mandriva Linux.\n"
+"загрузчика в Центре управления Mageia.\n"
" * \"%s\": здесь вы сможете проконтролировать какие службы будут запущены\n"
"на вашей машине. Если ваша машина будет сервером, вам стоит проверить эти\n"
"установки."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "карта ISDN"
+msgstr "TV-карта"
#: ../help.pm:809
#, c-format
@@ -1894,31 +1854,29 @@ msgstr "карта ISDN"
msgid "Graphical Interface"
msgstr "Графический Интерфейс"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Выберите жесткий диск, который нужно очистить для инсталляции вашего нового\n"
-"раздела Mandriva Linux. Будьте осторожны, все данные на нем будут потеряны\n"
+"раздела Mageia. Будьте осторожны, все данные на нем будут потеряны\n"
"и их нельзя будет восстановить!"
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Нажмите \"%s\", если вы хотите удалить все данные и разделы на данном\n"
"жестком диске. Будьте осторожны, потому что после нажатия \"%s\" вы не\n"
@@ -1937,121 +1895,3 @@ msgstr "Далее ->"
#, c-format
msgid "<- Previous"
msgstr "<- Назад"
-
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "\"%s\": по нажатию на кнопку \"%s\" откроется мастер настройки принтера.\n"
-#~ "Прочитайте соответствующую главу в книге ``Стартовое руководство\n"
-#~ "пользователя'', чтобы узнать как установить новый принтер. "
-#~ "Представленный\n"
-#~ "там интерфейс подобен используемому в процессе установки."
-
-# DO NOT BOTHER TO MODIFY HERE, SEE:
-# cvs.mandriva.com:/cooker/doc/manualB/modules/ru/drakx-chapter.xml
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Это самое важное решение в деле безопасности вашей системы GNU/Linux: вы\n"
-#~ "должны ввести пароль \"root\". \"Root\" является администратором системы, "
-#~ "и\n"
-#~ "только он имеет право производить обновления, добавлять пользователей,\n"
-#~ "изменять конфигурацию системы и так далее. Короче говоря, \"root\" может\n"
-#~ "все! Вот поэтому вы должны придумать пароль, который трудно подобрать -\n"
-#~ "DrakX сообщит вам, если пароль слишком прост. Как вы видите, можно "
-#~ "вообще\n"
-#~ "не вводить пароль, но мы серьезно советуем вам этого не делать по одной\n"
-#~ "простой причине: не думайте, что если вы загрузили GNU/Linux, то ваши\n"
-#~ "остальные операционные системы защищены от ошибок. Так как \"root\" "
-#~ "может\n"
-#~ "переступить все ограничения и непреднамеренно стереть все данные на\n"
-#~ "разделах диска, обращаясь небрежно с разделами, то очень важно, чтобы "
-#~ "стать\n"
-#~ "\"root\" было трудно.\n"
-#~ "\n"
-#~ "Пароль должен быть сочетанием цифровых и буквенных символов и иметь "
-#~ "длину\n"
-#~ "не менее 8 символов. Никогда не записывайте пароль \"root\" - это делает\n"
-#~ "очень легкой возможность скомпрометировать систему.\n"
-#~ "\n"
-#~ "Одно предостережение -- не делайте пароль слишком длинным или слишком\n"
-#~ "сложным, потому что вы должны его без особых усилий запомнить!\n"
-#~ "\n"
-#~ "Пароль не будет отображаться на экране так же, как вы его вводите. Кроме\n"
-#~ "того, вам прийдется повторить ввод пароля, чтобы предупредить "
-#~ "возможность\n"
-#~ "опечатки. Если случится так, что вы опечатались дважды, тогда этот\n"
-#~ "``неверный'' пароль прийдется использовать при первой загрузке.\n"
-#~ "\n"
-#~ "Если вы желаете, чтобы доступ к этому компьютеру контролировался "
-#~ "сервером\n"
-#~ "аутентификации, нажмите на кнопку \"%s\".\n"
-#~ "\n"
-#~ "Если ваша сеть использует службы аутентификации LDAP, NIS или PDC "
-#~ "Windows\n"
-#~ "Domain выберите соответствующий тип \"%s\". Если не знаете что выбрать,\n"
-#~ "спросите своего администратора сети.\n"
-#~ "\n"
-#~ "Если у вас возникли проблемы с запоминанием паролей, вы можете выбрать\n"
-#~ "опцию \"%s\", если ваш компьютер не будет подключаться к Интернет и если "
-#~ "вы\n"
-#~ "доверяете всем доступ к своей машине."
-
-#~ msgid "authentication"
-#~ msgstr "аутентификация"
diff --git a/perl-install/install/help/po/sc.po b/perl-install/install/help/po/sc.po
index 68a9f4b1f..e23d39d6d 100644
--- a/perl-install/install/help/po/sc.po
+++ b/perl-install/install/help/po/sc.po
@@ -20,7 +20,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -84,7 +84,7 @@ msgstr "Bolis a tenni custa possibilidadi?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -94,31 +94,31 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -129,12 +129,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -214,10 +213,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -310,7 +309,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -408,39 +407,39 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -449,15 +448,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -564,7 +562,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -573,7 +571,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -596,7 +594,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -612,21 +610,21 @@ msgstr "Aministradori de Siguresa"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -642,21 +640,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -673,14 +671,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -721,34 +713,34 @@ msgstr ""
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -768,23 +760,22 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -825,8 +816,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -931,7 +921,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -942,7 +932,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -963,7 +953,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -990,7 +980,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1052,8 +1042,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1070,7 +1059,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1095,8 +1084,8 @@ msgstr "Interfaci Gràfiga"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1104,12 +1093,12 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
#: ../help.pm:872
diff --git a/perl-install/install/help/po/sk.po b/perl-install/install/help/po/sk.po
index 2e5d27081..8289d938a 100644
--- a/perl-install/install/help/po/sk.po
+++ b/perl-install/install/help/po/sk.po
@@ -11,21 +11,22 @@ msgstr ""
"PO-Revision-Date: 2005-09-21 14:03+0100\n"
"Last-Translator: Tibor Pittich <Tibor.Pittich@mandriva.org>\n"
"Language-Team: <i18n@mandrake.sk>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Pred tým než budete pokračovať, mali by ste si pozorne prečítať\n"
-"licenčné podmienky. Pokrývajú celú distribúciu Mandriva Linux\n"
+"licenčné podmienky. Pokrývajú celú distribúciu Mageia\n"
"Ak súhlasíte so všetkými jej bodmi kliknite na tlačidlo \"%s\".\n"
"Ak nesúhlasíte kliknite na tlačidlo \"%s\" a váš počítač bude reštartovaný."
@@ -130,7 +131,8 @@ msgstr "Chcete použiť túto možnosť?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -140,24 +142,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Tu je zoznam oblastí s existujúcimi Linux oddielmi, ktoré boli zdetekované\n"
@@ -193,16 +199,15 @@ msgstr ""
"\"druhé najnižšie SCSI ID\" a tak ďalej."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Inštalácia Mandriva Linuxu je distribuovaná na viacerých CD-ROM diskoch. "
-"DrakX\n"
+"Inštalácia Mageiau je distribuovaná na viacerých CD-ROM diskoch. DrakX\n"
"vie zistiť, ak je vybraný balík umiestnený na inom CD-ROM disku, vysunie\n"
"aktuálne CD a vypýta si od vás to ktoré je práve potrebné. Ak toto CD "
"nemáte, kliknite na \"%s\" a požadovaný balík nebude nainštalovaný."
@@ -211,12 +216,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -267,8 +271,7 @@ msgid ""
"megabytes."
msgstr ""
"Teraz je možné vybrať, ktoré programy chcete nainštalovať na váš systém.\n"
-"Mandriva Linux obsahuje tisíce balčkov s programami. Pre jednoduchšiu "
-"orientáciu\n"
+"Mageia obsahuje tisíce balčkov s programami. Pre jednoduchšiu orientáciu\n"
"boly rozdelené do skupín, ktoré združujú podobné aplikácie.\n"
"\n"
"Balíčky sú rozdelené do skupín, ktoré zodpovedajú tomu, ako ich "
@@ -339,7 +342,7 @@ msgid "Truly minimal install"
msgstr "Skutočne minimálna inštalácia"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -352,10 +355,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -385,13 +388,11 @@ msgstr ""
"\n"
"!! Ak boli vybrané balíky, ktoré sú určené pre server, buď zámerne alebo\n"
"preto že sú súčasťou celej skupiny, budete musieť potvrdiť, či skutočne\n"
-"chcete tieto služby nainštalovať. V prípade Mandriva Linuxu, sú štandardne "
-"všetky\n"
+"chcete tieto služby nainštalovať. V prípade Mageiau, sú štandardne všetky\n"
"nainštalované služby spúšťané pri štarte systému. Aj keď sú bezpečné\n"
"a v čase keď bola distribúcia vydaná neobsahovali žiadne známe problémy\n"
"je možné, že tieto bezpečnostné problémy budú odhalené až po dokončení\n"
-"tejto verzie Mandriva Linuxu. Ak neviete čo jednotlivé servisy znamenajú, "
-"alebo\n"
+"tejto verzie Mageiau. Ak neviete čo jednotlivé servisy znamenajú, alebo\n"
"prečo boli nainštalované tak kliknite na \"%s\". Kliknutím na \"%s\" budú\n"
"vypísané služby nainštalované a automaticky naštartované pri spustení\n"
"systému. !!\n"
@@ -525,11 +526,11 @@ msgstr ""
"požiadavkám."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -585,7 +586,7 @@ msgid ""
msgstr ""
"X (X Window System) je srdcom grafického rozhrania GNU/Linux systému\n"
"spolu so všetkými grafickými prostrediami (KDE, GNOME, AfterStep,\n"
-"WindowMaked, atď.) distribuovanými s Mandriva Linux systémom.\n"
+"WindowMaked, atď.) distribuovanými s Mageia systémom.\n"
"\n"
"Zmenou nasledovných parametrov môžete dosiahnuť optimálne nastavenie\n"
"vášho grafického systému.\n"
@@ -707,41 +708,45 @@ msgstr ""
"rozhranie."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -750,15 +755,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -771,7 +776,7 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Teraz si môžete zvoliť, kam si želáte nainštalovať Mandriva Linux\n"
+"Teraz si môžete zvoliť, kam si želáte nainštalovať Mageia\n"
"na váš disk. Ak je váš disk prázdny alebo ak na ňom\n"
"už existuje operačný systém, ktorý zaberá všetko dostupné miesto, bude\n"
"potrebné ho prerozdeliť. Prerozdeľovanie pozostáva z logického\n"
@@ -810,7 +815,7 @@ msgstr ""
"po predchádzajúcom defragmentovaní Windows oblasti, ak obsahuje FAT "
"súborový\n"
"systém. Je veľmi odporúčané si najprv odzálohovať údaje. Toto riešenie je\n"
-"odporúčané použiť ak si chcete používať spoločne Mandriva Linux aj Microsoft "
+"odporúčané použiť ak si chcete používať spoločne Mageia aj Microsoft "
"Windows\n"
"na jednom počítači.\n"
"\n"
@@ -822,7 +827,7 @@ msgstr ""
"Vaším Microsoft Windows systémom.\n"
"\n"
" * \"%s\": ak si želáte vymazať všetky údaje a všetky oddiely\n"
-"prítomné na vašom pevnom disku a nahradiť ich vašim novým Mandriva Linux\n"
+"prítomné na vašom pevnom disku a nahradiť ich vašim novým Mageia\n"
"systémom, zvoľte si túto voľbu. Buďte opatrní pri tejto možnosti, pretože "
"nebude\n"
"žiadna možnosť zvrátiť vaše rozhodnutie keď ho potvrdíte.\n"
@@ -957,7 +962,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -976,7 +981,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1001,15 +1006,15 @@ msgstr ""
"Kliknite na \"%s\" ak ste pripravený formátovať vybrané oddiely.\n"
"\n"
"Kliknite na \"%s\" ak si chcete zvoliť iné oddiely pre inštaláciu vášho\n"
-"nového Mandriva Linux systému.\n"
+"nového Mageia systému.\n"
"\n"
"Kliknite na \"%s\" ak si chcete vybrať oddiely, ktoré budú kontrolované\n"
"na prítomnosť chybných blokov na disku."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1021,7 +1026,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Po nainštalovaní Mandriva Linux systému je pravdepodobné, že niektoré\n"
+"Po nainštalovaní Mageia systému je pravdepodobné, že niektoré\n"
"balíky ktoré sa nachádzali v distribúcii, nezodpovedajú ich aktuálnym\n"
"verziám. Môžu v nich byť opravené chyby alebo bezpečnostné nedostatky.\n"
"Aby ste mohli tieto opravy aplikovať, budete si ich teraz môcť stiahnuť\n"
@@ -1035,7 +1040,7 @@ msgstr ""
"\"%s\" pre zrušenie."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1044,7 +1049,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1059,7 +1064,7 @@ msgstr ""
"\n"
"Ak si neviete vybrať, ponechajte štandardné nastavenie.Budete ju však\n"
"mať možnosť zmeniť pomocou programu drakcec, ktorý je súčasťou\n"
-"Kontrolného Centra Mandriva Linuxu\n"
+"Kontrolného Centra Mageiau\n"
"\n"
"Do políčka \"%s\" zadajte e-mailovú adresu osoby zodpovednej za\n"
"bezpečnosť vášho PC. Na túto adresu budú zasielané\n"
@@ -1071,24 +1076,27 @@ msgid "Security Administrator"
msgstr "Bezpečnostný administrátor"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1104,21 +1112,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1135,17 +1145,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Na tomto mieste je potrebné aby ste si vybrali oblasti, ktoré budú použité\n"
-"na inštaláciu Mandriva Linuxu. Ak už boli oddiely definované,\n"
+"na inštaláciu Mageiau. Ak už boli oddiely definované,\n"
"napríklad pri predchádzajúcej inštalácii GNU/Linux-u alebo iným nástrojom\n"
"pre správu oblastí, môžete použiť už existujúce oblasti. Inak musia byť\n"
"oblasti teraz definované.\n"
@@ -1160,7 +1164,7 @@ msgstr ""
" * \"%s\": táto voľba vymaže všetky oblasti na vybranom pevnom\n"
"disku\n"
"\n"
-" * \"%s\": táto voľba umožní automatické vytvorenie ext3\n"
+" * \"%s\": táto voľba umožní automatické vytvorenie ext4\n"
"a swap oblasti na voľnom mieste vášho disku\n"
"\n"
" * \"%s\": získate prístup k rozšíreným možnostiam:\n"
@@ -1219,13 +1223,6 @@ msgstr ""
"Pre získanie informácií o iných súborových systémoch, ktoré sú dostupné, "
"prečítajte\n"
"si ext2FS kapitolu z ``Referenčnej príručky''.\n"
-"\n"
-"Ak prevádzate inštaláciu na PPC hardvéri, budete zrejme chcieť vytvoriť malý "
-"HFS\n"
-"``bootstrap'' oddiel veľký aspoň 1MB, ktorý bude môcť používať yaboot\n"
-"zavádzač. Ak sa rozhodnete vytvoriť tento oddiel väčší, povedzme 50MB, môže\n"
-"to byť vhodné miesto pre uloženie jadra a obrazov ramdisku pre výnimočné\n"
-"situácie, ktoré môžu nastať."
#: ../help.pm:526
#, c-format
@@ -1263,41 +1260,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Prepnúť medzi normálnym/expertným režimom"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Bol nájdený viac ako jeden Microsoft oddiel na vašom pevnom disku.\n"
"Vyberte si prosím jeden, ktorý chcete nastaviť pre inštaláciu vášho\n"
-"nového Mandriva Linux operačného systému.\n"
+"nového Mageia operačného systému.\n"
"\n"
"Všetky oddiely sú zobrazené nasledovne: \"Linux meno\", \"Windows meno\",\n"
"\"Kapacita\".\n"
@@ -1340,36 +1343,36 @@ msgstr ""
"získanie kompletného zoznamu."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Tento krok sa aktivuje iba vtedy, ak sú na vašom systéme nájdené staršie\n"
"GNU/Linux oddiely.\n"
"\n"
"DrakX teraz potrebuje vedieť či si želáte vykonať novú inštaláciu alebo "
"aktualizáciu\n"
-"existujúceho Mandriva Linux systému:\n"
+"existujúceho Mageia systému:\n"
"\n"
" * \"%s\": Pomocou tejto voľby môžete kompletne zrušiť váš predchádzajúci\n"
"operačný systém. Ak si želáte zmeniť rozloženie oddielov na vašich diskoch "
@@ -1380,14 +1383,13 @@ msgstr ""
"údajov.\n"
"\n"
" * \"%s\": táto trieda inštalácie vám umožňuje aktualizovať balíky, ktoré\n"
-"sú momentálne nainštalované vo vašom Mandriva Linux systéme. Aktuálne\n"
+"sú momentálne nainštalované vo vašom Mageia systéme. Aktuálne\n"
"rozdelenie oddielov a používateľské údaje nebudú prepísané. Mnohé ostatné "
"kroky\n"
"inštalácie ostanú dostupné, podobne ako pri štandardnej inštalácii.\n"
"\n"
"Použitie voľby ``Aktualizácia'' by malo fungovať správne pre systémy\n"
-"Mandriva Linux \"8.1\" a novšie. Vykonanie Aktualizácie pre staršie verzie "
-"ako\n"
+"Mageia \"8.1\" a novšie. Vykonanie Aktualizácie pre staršie verzie ako\n"
"\"8.1\" nie je odporúčané.\""
#: ../help.pm:594
@@ -1427,7 +1429,7 @@ msgstr ""
"ktorej si budete môcť prepínať medzi latin a ne-latin mapou."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1443,8 +1445,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1624,7 +1625,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1648,10 +1649,10 @@ msgstr ""
"ak naozaj viete čo robíte."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1672,12 +1673,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Teraz nastal čas výberu tlačového systému pre váš počítač. Iné operačné\n"
-"systémy vám poskytujú zvyčajne iba jediný, Mandriva Linux vám poskytuje "
-"dva.\n"
+"systémy vám poskytujú zvyčajne iba jediný, Mageia vám poskytuje dva.\n"
"Kazdý z nich je vhodný pre iný typ konfigurácie.\n"
"\n"
" * \"%s\" - čo znamená ``tlačiť, neukladať do fronty'', je vhodný výber ak\n"
@@ -1700,7 +1700,7 @@ msgstr ""
"nástroje na tlačenie, pre výber tlačiarní alebo ich manažovanie.\n"
"\n"
"Ak neskôr budete chciet svoju voľbu zmeniť alebo budete chcieť odstrániť\n"
-"tlačový systém môžete tak spraviť za pomoci PrinterDrake z Mandriva Linux\n"
+"tlačový systém môžete tak spraviť za pomoci PrinterDrake z Mageia\n"
"Kontrolného centra kliknutím na tlačidlo \"%s\"."
#: ../help.pm:768
@@ -1726,7 +1726,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1807,8 +1807,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1825,7 +1824,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1878,8 +1877,7 @@ msgstr ""
" * \"%s\": ak si teraz želáte nastaviť vaše Internetové pripojenie\n"
"alebo prístup do lokálnej siete. Prezrite si tlačenú dokumentáciu alebo "
"použite\n"
-"Kontrolné centrum Mandriva Linux ak už bude inštalácia ukončená aby ste "
-"mali\n"
+"Kontrolné centrum Mageia ak už bude inštalácia ukončená aby ste mali\n"
"prístup k dokumentácii.\n"
" * \"%s\": vám umožní nastaviť HTTP alebo FTP proxy ak je počítač\n"
"umiestnený za proxy serverom.\n"
@@ -1895,7 +1893,7 @@ msgstr ""
" * \"%s\": ak si želáte zmeniť konfiguráciu zavádzača, kliknite na toto\n"
"tlačidlo. Táto možnosť je rezervovaná pre skúsených používateľov. Prezrite\n"
"si tlačenú dokumentáciu alebo internú dokumentáciu vrámci Kontrolného\n"
-"centra Mandriva Linux.\n"
+"centra Mageia.\n"
"\n"
" * \"%s\": máte možnosť definitívne nastaviť služby, ktoré budú\n"
"spúšťané na vašom počítači. Ak plánujete používať tento počítač ako\n"
@@ -1917,26 +1915,28 @@ msgid "Graphical Interface"
msgstr "Grafické rozhranie"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Vyberte si pevný disk, ktorý chcete vymazať aby ste mohli vytvoriť\n"
-"nový oddiel pre Mandriva Linux. Buďte opatrní, všetky údaje ktoré sa\n"
+"nový oddiel pre Mageia. Buďte opatrní, všetky údaje ktoré sa\n"
"na disku nachádzajú budú odstránené a nebude možné ich obnoviť!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Kliknite na \"%s\" ak si želáte vymazať všetky údaje a oblasti ktoré\n"
"sa nachádzajú na vašom pevnom disku. Buďte opatrní, po kliknutí na\n"
diff --git a/perl-install/install/help/po/sl.po b/perl-install/install/help/po/sl.po
index 77cc5c3a8..71e2dd797 100644
--- a/perl-install/install/help/po/sl.po
+++ b/perl-install/install/help/po/sl.po
@@ -2,23 +2,24 @@
# translation of DrakX-sl.po to Slovenian
# translation of DrakX-sl.po to Slovenščina
# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+#
# Matjaž Kaše <matjaz.kase@g-kabel.si>, 2004.
# Aljoša Ločičnik <aljosa.locicnik@mandrakeprinas.org>, 2005.
# Gregor Pirnaver <gregor.pirnaver@sdm-si.org>, 2002,2004,2005.
-# Jure Repinc <jlp@holodeck1.com>, 2005.
-#
+# Jure Repinc <jlp@holodeck1.com>, 2005, 2009.
msgid ""
msgstr ""
"Project-Id-Version: DrakX-sl\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2009-02-14 21:30+0100\n"
-"Last-Translator: Gregor Pirnaver <gregor.pirnaver@sdm-si.org>\n"
-"Language-Team: <sl@li.org>\n"
+"PO-Revision-Date: 2009-10-03 17:02+0200\n"
+"Last-Translator: Jure Repinc <jlp@holodeck1.com>\n"
+"Language-Team: Slovenian <lugos-slo@lugos.si>\n"
+"Language: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
+"X-Generator: Lokalize 1.0\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || "
"n%100==4 ? 2 : 3);\n"
@@ -26,12 +27,12 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Preden nadaljujete, pozorno preberite pogoje licenčne pogodbe,\n"
-"ki se nanaša na celotno distribucijo Mandriva Linux. Če se strinjate z "
+"ki se nanaša na celotno distribucijo Mageia. Če se strinjate z "
"vsemi\n"
"pogoji licenčne pogodbe, označite okence »%s«. Če se s pogoji pogodbe\n"
"ne strinjate, pa označite okence »%s« in vaš računalnik se bo ponovno zagnal."
@@ -78,7 +79,7 @@ msgid ""
msgstr ""
"GNU/Linux je večuporabniški sistem, kar pomeni, da ima lahko vsak\n"
"uporabnik svoje nastavitve, svoje datoteke itd. Več o tem si lahko\n"
-" preberete v dokumentaciji. Razen sistemskega, »root« upravitelja,\n"
+" preberete v dokumentaciji. Razen sistemskega skrbnika (root),\n"
"uporabniki, ki jih boste dodali, ne bodo imeli dovoljenj, ki so potrebna za\n"
"spreminjanje tistih datotek in nastavitev, ki vplivajo na celoten sistem.\n"
"Tako je sistem zaščiten pred nenamernimi ali zlonamernimi spremembami.\n"
@@ -104,8 +105,8 @@ msgstr ""
"priporočamo,\n"
"da geslo določite in tako zaščitite svoje datoteke in podatke.\n"
"\n"
-"Ko klilnete »%s«, lahko dodate tudi druge navadne uporabnike.\n"
-"Posebene uporabniške račune lahko ustvarite za svoje prijatelje\n"
+"Ko kliknete »%s«, lahko dodate tudi druge navadne uporabnike.\n"
+"Posebne uporabniške račune lahko ustvarite za svoje prijatelje\n"
"in za člane svoje družine.\n"
"\n"
"Ko boste dokončali z dodajanjem uporabniških računov, kliknite »%s«.\n"
@@ -132,12 +133,12 @@ msgstr "Sprejmi uporabnika"
#: ../help.pm:54
#, c-format
msgid "Do you want to use this feature?"
-msgstr "Želite uporabiti to možnost?"
+msgstr "Ali želite uporabiti to možnost?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -147,24 +148,24 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Na seznamu so razdelki za Linux, ki jih je čarovnik zaznal na vašem\n"
@@ -200,28 +201,27 @@ msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Namestitev za Mandriva Linux je shranjena na več zgoščenkah.\n"
-"Če je izbrani paket shranjen na drugi zgoščeniki, bo DrakX izvrgel\n"
-"trenutno in vas pozval, da v pogon vstavite pravo zgoščenko.\n"
-"če prave zgoščenke nimate, kliknite »%s« in željeni paketi ne\n"
+"Namestitev za distribucijo Mageia je shranjena na več nosilcih.\n"
+"Če je izbrani paket shranjen na drugem nosilcu, bo DrakX izvrgel\n"
+"trenutnega in vas pozval, da v pogon vstavite pravi nosilec.\n"
+"Če pravega nosilca nimate, kliknite »%s« in paketi z njega ne\n"
"bodo nameščeni."
#: ../help.pm:95
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -271,7 +271,8 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"Za Mandriva Linux je dostopnih na tisoče različnih programskih paketov.\n"
+"Sedaj je čas za izbiro programov, ki jih želite namestiti na sistem.\n"
+"Za distribucijo Mageia je dostopnih na tisoče različnih programskih paketov.\n"
"Da bi bilo upravljanje s paketi bolj preprosto, so razvrščeni v skupine\n"
"vsebinsko povezanih paketov.\n"
"\n"
@@ -332,7 +333,7 @@ msgstr ""
#: ../help.pm:149 ../help.pm:591
#, c-format
msgid "Upgrade"
-msgstr "Posodobitev "
+msgstr "Posodobitev"
#: ../help.pm:149
#, c-format
@@ -358,10 +359,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -392,9 +393,9 @@ msgstr ""
"\n"
"!! Če izberete paket ali skupino paketov, ki vsebuje strežnik,\n"
"boste morali namestitev takšnega paketa na izrecno vprašanje\n"
-"potrditi. Mandriva Linux namreč kot privzeto vključi vse\n"
+"potrditi. Mageia namreč kot privzeto vključi vse\n"
" nameščene storitve ob zagonu sistema. Čeprav ob izdaji\n"
-"te različice Mandriva Linuxa ni bilo znanih težav v zvezi z varnostjo,\n"
+"te različice Mageia ni bilo znanih težav v zvezi z varnostjo,\n"
"je mogoče, da so bile odkrite varnostne luknje kasneje. Če za \n"
"določeno storitev ne veste, kaj je njena naloga, kliknite »%s« S klikom\n"
"na »%s«bodo nameščene naštete storitve, sistem pa jih bo samodejno\n"
@@ -529,7 +530,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -584,7 +585,7 @@ msgid ""
"not successful in getting the display configured."
msgstr ""
"X (okenski sistem X) je srce grafičnega vmesnika za GNU/Linux\n"
-"na katerega se zanašajo vsa v Mandriva Linux vključena grafična\n"
+"na katerega se zanašajo vsa v distribucijo Mageia vključena grafična\n"
"okolja. (KDE, GNOME, AfterStep, WindowMaker ...)\n"
"\n"
"Prikazal se vam bo seznam različnih vrednosti, ki jih lahko spreminjate,\n"
@@ -698,39 +699,39 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -739,15 +740,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -761,11 +761,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Določite, na katerem delu trdega diska naj bo nameščen operacijski\n"
-"sistem Mandriva Linux. Če je trdi disk prazen ali če na njem nameščeni\n"
+"sistem Mageia. Če je trdi disk prazen ali če na njem nameščeni\n"
"operacijski sistem zaseda celoten prostor, boste morali disk razdeliti na\n"
"posamezne razdelke. Razdeljevanje trdega diska izvede logično\n"
"razdelitev, ki zagotovi potrebni prostor za namestitev operacijskega\n"
-"sistema Mandriva Linux.\n"
+"sistema Mageia.\n"
"\n"
"Trdega diska po izvršenem razdeljevanju običajno ni mogoče povrniti v "
"prejšnje stanje.\n"
@@ -808,7 +808,7 @@ msgstr ""
" nameščanje novih programov v Windows.\n"
"\n"
" * »%s«: Če želite izbrisati vse obstoječe razdelke z vsemi podatki in jih \n"
-"nadomestiti s sistemom Mandriva Linux, izberite to možnost.\n"
+"nadomestiti s sistemom Mageia, izberite to možnost.\n"
"Bodite previdni, ko boste potrdili to izbiro, prejšnjega stanja ne bo več "
"mogoče vzpostaviti.\n"
"\n"
@@ -948,7 +948,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -966,7 +966,7 @@ msgstr ""
"\n"
"Kliknite na »%s«,ko boste pripravljeni na razdeljevanje.\n"
"\n"
-"Kliknite na »%s«, če želite za namestitev sistema Mandriva Linux\n"
+"Kliknite na »%s«, če želite za namestitev sistema Mageia\n"
"izbrati drug razdelek.\n"
"\n"
"Kliknite na »%s«, če želite določiti razdelke, na katerih naj sistem\n"
@@ -975,7 +975,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -988,7 +988,7 @@ msgid ""
"the selected package(s), or \"%s\" to abort."
msgstr ""
"Verjetno so bili od njegove izdaje pa do časa, ko nameščate\n"
-"Mandriva Linux na svoj računalnik, nekateri paketi popravljeni\n"
+"distribucijo Mageia na svoj računalnik, nekateri paketi popravljeni\n"
"ali nadgrajeni z varnostnimi popravki ali z odstranitvijo hroščev.\n"
"Te popravke lahko prenesete z interneta. Če imate vzpostavljeno\n"
"internetno povezavo, označite »%s«, če pa želite namestiti\n"
@@ -1009,7 +1009,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1037,21 +1037,21 @@ msgstr "Upravitelj varnostnih nastavitev"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1067,21 +1067,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1098,17 +1098,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Izbrati morate razdelke, na katere boste namestitli sistem\n"
-"Mandriva Linux. Če ste razdelke že izbrali ob kakšni predhodni\n"
+"Izbrati morate razdelke, na katere boste namestili sistem\n"
+"Mageia. Če ste razdelke že izbrali ob kakšni predhodni\n"
"namestitvi GNU/Linux sistema s kakim drugim orodjem za\n"
"razdeljevanje, lahko uporabite obstoječe razdelke, sicer pa morate\n"
"razdelke trdega diska za namestitev določiti sedaj.\n"
@@ -1121,7 +1115,7 @@ msgstr ""
"\n"
" * »%s«: brisanje vseh razdelkov na izbranem disku\n"
"\n"
-" * »%s«: samodejno ustvarjanje ext3 in izmenjalnih (swap) razdelkov\n"
+" * »%s«: samodejno ustvarjanje ext4 in izmenjalnih (swap) razdelkov\n"
"na prostem delu vašega trdega diska.\n"
"\n"
"»%s«: dostop do dodatnih možnosti:\n"
@@ -1170,12 +1164,6 @@ msgstr ""
"\n"
"Vse nadaljnje informacije o datotečnih sistemih boste našli v\n"
"dokumentaciji.\n"
-"\n"
-"Če Mandriva Linux nameščate na PPC računalnik, morate ustvariti\n"
-"zagonski »bootstrap« razdelek z velikostjo najmanj 1MB, ki ga\n"
-"uporablja zagonski nalagalnik yaboot. Če ta razdelek nekoliko\n"
-"povečate in mu namenite vsaj 50MB, boste nanj lahko shranjevali\n"
-"potrebne datoteke za zasilni zagon sistema."
#: ../help.pm:526
#, c-format
@@ -1195,7 +1183,7 @@ msgstr "Reši tabelo razdelkov"
#: ../help.pm:526
#, c-format
msgid "Removable media auto-mounting"
-msgstr "Samodejno priklapljanje odstranljivih medijev"
+msgstr "Samodejno priklapljanje odstranljivih nosilcev"
#: ../help.pm:526
#, c-format
@@ -1210,44 +1198,44 @@ msgstr "Razveljavi"
#: ../help.pm:526
#, c-format
msgid "Toggle between normal/expert mode"
-msgstr "Preklapljanje med normalnim in izvedenskim načinom"
+msgstr "Preklopi med normalnim in izvedenskim načinom"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Na vašem trdem disku je več kot en razdelek za Windows.\n"
"Izberite razdelek, ki ga želite zmanjšati, da bi pridobili prostor za\n"
-"namestitev sistema Mandriva Linux.\n"
+"namestitev sistema Mageia.\n"
"\n"
"Na seznamu so razdelki s podatki: »Ime v Linuxu«, »Ime v Windows«\n"
"»Velikost« \n"
@@ -1282,7 +1270,7 @@ msgid ""
"the\n"
"list shown, click on the \"%s\" button to get the complete country list."
msgstr ""
-"»%s«:Preverite, katero državo ste izbrali. Če v resnici niste v izbrani "
+"»%s«: Preverite, katero državo ste izbrali. Če v resnici niste v izbrani "
"državi,\n"
"kliknite »%s« in izberite drugo. Če država, v kateri ste, ni prikazana,\n"
"kliknite »%s« za prikaz celotnega seznama držav."
@@ -1294,29 +1282,28 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Ta korak se zažene samo v primeru, da na vašem računalniku že obstaja\n"
"razdelek za GNU/Linux.\n"
"\n"
"Lahko izbirate med novo namestitvijo in med posodobitvijo obstoječega\n"
-"sistema Mandriva Linux.\n"
+"sistema Mageia.\n"
"\n"
" * »%s«: S tem boste obstoječi sistem povsem odstranili. Če želite\n"
"spremeniti razdelitev trdega diska ali datotečni sistem, izberite to\n"
@@ -1329,7 +1316,7 @@ msgstr ""
"podobno kot pri običajni novi namestitvi.\n"
"\n"
"Možnost »Posodobitev« deluje, če imate nameščeno različico\n"
-"sistema Mandriva Linux »8.1« ali novejšo. Posodobitve starejših\n"
+"sistema Mageia »8.1« ali novejšo. Posodobitve starejših\n"
"različic od »8.1« ne priporočamo."
#: ../help.pm:594
@@ -1364,9 +1351,9 @@ msgstr ""
"Kliknite na gumb »%s« in pojavil se bo seznam vseh tipkovnic, ki jih sistem "
"podpira.\n"
"\n"
-"Če ste izbrali tipkovnico, ki temelji na nelatinični abecedi,\n"
+"Če ste izbrali tipkovnico, ki temelji na ne-latinični abecedi,\n"
"lahko v naslednjem koraku določite ukaz, ki vam bo omogočil\n"
-"preklapljanje med latiničnim in nelatiničnim razporedom tipkovnice."
+"preklapljanje med latiničnim in ne-latiničnim razporedom tipkovnice."
#: ../help.pm:612
#, c-format
@@ -1385,8 +1372,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1425,7 +1411,7 @@ msgstr ""
"jezik pa lahko namestite na primer angleščino, tako da izberete »%s« v "
"naprednem načinu.\n"
"\n"
-"Podpora Utf-8 (unicode) Unicode je kodiranje znakov, ki poizkuša\n"
+"Podpora UTF-8 (unicode) Unicode je kodiranje znakov, ki poizkuša\n"
"zagotoviti pravilen prikaz pisav vseh poznanih jezikov. Ker je unicode\n"
" za GNU/Linux še v razvoju, lahko določite, ali naj ga sistem uporablja\n"
"ali ne.\n"
@@ -1455,7 +1441,7 @@ msgstr ""
#: ../help.pm:650
#, c-format
msgid "Espanol"
-msgstr "Angleščina"
+msgstr "Španščina"
#: ../help.pm:643
#, c-format
@@ -1533,7 +1519,7 @@ msgstr ""
#: ../help.pm:684
#, c-format
msgid "with Wheel emulation"
-msgstr "z emulacijo kolesca"
+msgstr "S posnemanjem kolesca"
#: ../help.pm:684
#, c-format
@@ -1563,7 +1549,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1590,7 +1576,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1611,11 +1597,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Izberite sistem za tiskanje. Drugi operacijski sistemi navadno nudijo\n"
-"en sistem, Mandriva Linux pa vam daje na izbiro dva.\n"
+"en sistem, Mageia pa vam daje na izbiro dva.\n"
"Od obeh sistemov je vsak primeren za svojo vrsto namestitve.\n"
"\n"
" * »%s«--je kratica za »print, do not queue« (tiskaj, ne vnesi v čakalno "
@@ -1665,7 +1651,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1746,8 +1732,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1764,13 +1749,13 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
"idea to review this setup."
msgstr ""
-"DrakX bo prikazal pregled informacij, ki jih je zbral o vašem sistemu.\n"
+"DrakX bo prikazal pregled podatkov, ki jih je zbral o vašem sistemu.\n"
" Vrsta in število prikazanih vnosov sta odvisna od strojne opreme, ki je \n"
"priključena v vašem računalniku. Vsak vnos vsebuje ime naprave ali\n"
"storitve ter kratek pregled njenih trenutnih nastavitev. Če želite "
@@ -1842,18 +1827,18 @@ msgstr "ISDN kartica"
#: ../help.pm:858
#, c-format
msgid "Graphical Interface"
-msgstr "Grafični vmesnik"
+msgstr "Grafična kartica"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Izberite trdi disk, ki ga želite izbrisati, da bi dobili prostor za "
"razdelek\n"
-"za Mandriva Linux.\n"
+"za distribucijo Mageia.\n"
"Vsi podatki na izbranem disku bodo izbrisani in jih ne bo mogoče\n"
"obnoviti!"
@@ -1861,12 +1846,12 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Če želite izbrisati vse razdelke na tem disku in vse podatke na njih,\n"
"kliknite na »%s« Pazite, po tem, ko boste kliknili »%s«, razdelkov\n"
diff --git a/perl-install/install/help/po/sq.po b/perl-install/install/help/po/sq.po
index 9fecd0669..d87248cd2 100644
--- a/perl-install/install/help/po/sq.po
+++ b/perl-install/install/help/po/sq.po
@@ -11,6 +11,7 @@ msgstr ""
"PO-Revision-Date: 2004-09-15 13:33+0200\n"
"Last-Translator: Naim Daka <naim70@freesurf.ch>\n"
"Language-Team: Albanian <LL@li.org>\n"
+"Language: sq\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
@@ -20,12 +21,12 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Para se të vazhdoni më tutje, ju duhet ti lexoni termet dhe kushtet për\n"
-"përdorimin e licencës. Kjo mbulon tërë shpërndarjen e Mandriva Linux,\n"
+"përdorimin e licencës. Kjo mbulon tërë shpërndarjen e Mageia,\n"
"nëse ju pajtoheni me këto kushte, klikoni mbi mbi kopsën \"%s\".\n"
"Nëse ju nuk pajtoheni atëher thjeshtë ndaleni komjuterin tuaj."
@@ -132,7 +133,8 @@ msgstr "A dëshironi ta përdorni këtë veçori?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -142,24 +144,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Lista e lartë shënuar identifikon ndrajet Linux të zbuluara në\n"
@@ -198,14 +204,13 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Pakot e nevojshme për Instalimin e Mandriva Linux janë të shpërndara në "
-"shumë\n"
+"Pakot e nevojshme për Instalimin e Mageia janë të shpërndara në shumë\n"
"CDROM-e. Fatëmirësisht, DrakX i njef të gjitha lokacinet e pakove në CDROM-"
"e.\n"
"Ai do ta qetë jashtë CD-në që gjindet në lexuesin e CD-ve, dhe juve do të "
@@ -216,12 +221,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -272,12 +276,12 @@ msgid ""
"megabytes."
msgstr ""
"Tani është momenti që ti zgjedhni pakot që duhet të instalohen në sistemin\n"
-"tuaj. Duhet ta dini se Mandriva Linux përmban me mijëra pako instaluese,\n"
+"tuaj. Duhet ta dini se Mageia përmban me mijëra pako instaluese,\n"
"dhe nuk është me rendësi që ti njifti të gjitha për mendësh.\n"
"\n"
"Pakot janë të radhitura në grupe përkatëse për përdorim të veçant në "
"makinën\n"
-"tuaj. Mandriva Linux posedon katër instalime të përcaktuara. Ju mund të\n"
+"tuaj. Mageia posedon katër instalime të përcaktuara. Ju mund të\n"
"mendoni mbi këto klasa instaluese si kontainer të pakove të ndryshme.\n"
"Ju keni mundësi ti përzini (mix) dhe ti barazoni aplikacionet nga "
"kontainerët\n"
@@ -351,10 +355,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -525,7 +529,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -581,7 +585,7 @@ msgid ""
msgstr ""
"X (për Sistemin Windows X) është zemra e interfacit grafik për GNU/Linux\n"
"në të cilin të gjitha mjediset grafike (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etj.) janë të denguara mbi Mandriva Linux.\n"
+"WindowMaker, etj.) janë të denguara mbi Mageia.\n"
"\n"
"Juve do të ju prezentohet lista e parametrave të ndryshëm për të ndryshuar,\n"
"dhe për të pranuar çfaqjet grafike optimale: Kartelë Grafike\n"
@@ -706,39 +710,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -747,15 +755,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -769,7 +777,7 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Kjo etapë do të ju mundësoj që të përcaktoni me precizitet vendosjen dhe\n"
-"instalimin e Mandriva Linux. Nëse disku i juaj i fortë është zbrazët apo i\n"
+"instalimin e Mageia. Nëse disku i juaj i fortë është zbrazët apo i\n"
"përdorur nga një sistem tjetër eksploatimi, ju duhet ta shpërndani\n"
"diskun tuaj në pjesë. Ndarje e diskut d.m.th. ta shpërndani me precizitet\n"
"që më fund të krijoni një hapësire për instalimin e sistemit Mandriva "
@@ -814,7 +822,7 @@ msgstr ""
"\n"
" * \"%s\": nëse ju dëshironi ti zhdukni të gjitha\n"
"të dhënat dhe aplikacionet e instaluara në sistemin tuaj, dhe ti\n"
-"zëvendësoni me një sistem të ri Mandriva Linux, zgjedheni këtë mundësi.\n"
+"zëvendësoni me një sistem të ri Mageia, zgjedheni këtë mundësi.\n"
"Keni kujDES, sepse kjo mundësi është e pa kthyeshme mbrapa. Është e pa\n"
"mundur të gjindet të dhënat e zhdukura.\n"
"\n"
@@ -959,7 +967,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -980,7 +988,7 @@ msgstr ""
"Klikoni mbi \"%s\" kur ju jeni i gatshëm që ti formatoni ndarjet.\n"
"\n"
"Klikoni mbi \"%s\" nëse ju dëshironi të zgjedhni një ndarje tjetër apo\n"
-"të instaloni një sistemi të ri eksploatues Mandriva Linux.\n"
+"të instaloni një sistemi të ri eksploatues Mageia.\n"
"\n"
"Klikoni mbi \"%s\" nëse ju dëshironi ti zgjedhni ndarjet, për një\n"
"verifikim të sektorëve të dëmtuar në disk."
@@ -988,7 +996,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1000,7 +1008,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Nga momenti kur ju jeni duke instaluar Mandriva Linux, është e mundur që\n"
+"Nga momenti kur ju jeni duke instaluar Mageia, është e mundur që\n"
"disa pako janë azhurnuar prej daljes së atij prodhimi. Disa buge mund\n"
"të korigjohen, njashtu dhe probleme tjera të sigurisë. Për të ju\n"
"mundësuar të përfitoni një azhurnim, do të jenë të propozuara që të\n"
@@ -1024,7 +1032,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1051,21 +1059,24 @@ msgstr "Siguria e Administratorit:"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1081,21 +1092,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1112,17 +1125,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Në këtë etapë ju duhet të zgjedhni se cila(t) ndarje(t) do të përdoret(n)\n"
-"për sistemin tuaj Mandriva Linux. Nëse ndarja e diskut është bërë më heret,\n"
+"për sistemin tuaj Mageia. Nëse ndarja e diskut është bërë më heret,\n"
"nga një instalim tjetër GNU/Linux apo nga nji vegël tjetër ndarëse, ju\n"
"mund të përdorni ndarjet e bëra. Mes tjerash ndarjet duhen të jenë të\n"
"përcaktuara\n"
@@ -1138,7 +1145,7 @@ msgstr ""
" * \"%s\": ky opcion do të zhduk, të gjitha ndarjet në diskun e zgjedhur\n"
"\n"
" * \"%s\": ky opcion mundëson krijimin e një sistemi të skedareve\n"
-"ext3 dhe swap të ndarjeve, në hapësirën e lirë të diskut tuaja\n"
+"ext4 dhe swap të ndarjeve, në hapësirën e lirë të diskut tuaja\n"
"\n"
"\"%s\": mundëson hyrjen në fonksionimin e llogarive:\n"
"\n"
@@ -1188,13 +1195,6 @@ msgstr ""
"\n"
"Për të përfituar më shumë informacione mbi sistemet e skedareve, lexoni mbi\n"
"sistemin e skedareve ext2FS në ``Doracakun referues''.\n"
-"\n"
-"Nëse ju jeni duke instaluar një stacion PPC, ju duhet të krijoni një ndarje\n"
-"të vogël HFS ``bootstrap'' më së paku 1MB, e cila do të përdoret nga "
-"bootloader\n"
-"yaboot. Nëse dëshironi të bëni një ndarje më të madhe, p.sh 50MB, ju duhet\n"
-"të gjeni një vegël për të vendosur bërthamat dhe imazhet ramdisk hyrëse në\n"
-"rastë të ndonji problemi."
#: ../help.pm:526
#, c-format
@@ -1234,39 +1234,45 @@ msgstr "Kalo mes modit normal/ekspert"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Janë gjetur më shumë se një ndarje Windows në diskun tuaj të fort, ju\n"
"lutemi zgjedheni njërin për ta ridimenziunuar, dhe për të instaluar\n"
-"sistemin të ri eksploatues Mandriva Linux.\n"
+"sistemin të ri eksploatues Mageia.\n"
"\n"
"Çdo ndarje është listuar simbas: \"Emri Linux\", \"Emri Windows\"\n"
"\"Kapaciteti\".\n"
@@ -1315,29 +1321,29 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Kjo etapë aktivizohet automatikisht nëse ju posedoni një ndarje të vjetër\n"
"GNU/Linux, në makinën tuaj.\n"
"\n"
"DrakX tani ka nevojë të dijë nëse ju dëshironi të çfaqni një instalim,\n"
-"apo azhurnim të ri, në sistemin ekzistues Mandriva Linux:\n"
+"apo azhurnim të ri, në sistemin ekzistues Mageia:\n"
"\n"
" * \"%s\": Për shumicën e rasteve, ky kompletisht shlyhet nga sistemet\n"
"e vjetra. Nëse ju dëshironi ta ndërroni shpërndarjen e diskut tuaj të "
@@ -1349,16 +1355,15 @@ msgstr ""
"disa të dhëna ekzistuese nga të mbi-zëvendësuarat.\n"
"\n"
" * \"%s\": kjo klasë instaluese ju mundëson azhurnimin e pakove aktuale\n"
-"të instaluara, në sistemin tuaj Mandriva Linux. Skema e ndarjes,\n"
+"të instaluara, në sistemin tuaj Mageia. Skema e ndarjes,\n"
"dhe e të dhënave të përdoruesve, nuk do të ndryshohet. Shumica\n"
"e etapave të tjera konfiguruese mundësojnë një vazhdim, të njëjtë sikur\n"
"tek instalimet standarde.\n"
"\n"
"Duke përdorur mundësinë ``Azhurno'' duhet të funksionoj shumë mirë në "
"sistemin\n"
-"Mandriva Linux ndër versionin \"8.1\" apo më të ri. Tentimi i Azhurnimit të\n"
-"një versioni më të vjetër se versioni Mandriva Linux \"8.1\" nuk "
-"rekomandohet."
+"Mageia ndër versionin \"8.1\" apo më të ri. Tentimi i Azhurnimit të\n"
+"një versioni më të vjetër se versioni Mageia \"8.1\" nuk rekomandohet."
#: ../help.pm:594
#, fuzzy, c-format
@@ -1413,8 +1418,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1570,7 +1574,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1594,7 +1598,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1615,7 +1619,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Këtu, ne e zgjedhim një sistem stampues për kompjuterin tuaj. Sistemet "
@@ -1672,7 +1676,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1753,8 +1757,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1771,7 +1774,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1861,24 +1864,26 @@ msgstr "Interfac Grafikë"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Zgjedheni diskun e fort (hard drive) që dëshironi ta zhdukni, për të\n"
-"instaluar një ndarje të re Mandriva Linux. Keni kujDES, të gjitha të dhënat\n"
+"Zgjedheni diskun e fort (hard disk drive) që dëshironi ta zhdukni, për të\n"
+"instaluar një ndarje të re Mageia. Keni kujDES, të gjitha të dhënat\n"
"do të zhduken, dhe nuk mund të rekuperohen!"
#: ../help.pm:866
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Klikoni mbi \"%s\" nëse ju dëshironi ti zhdukni të dhënat dhe ndarjet në\n"
"diskun tuaj të fort. Keni kujDES, mbasi që të klikoni mbi \"%s\", ju nuk\n"
diff --git a/perl-install/install/help/po/sr.po b/perl-install/install/help/po/sr.po
index c3ed405a2..95516e817 100644
--- a/perl-install/install/help/po/sr.po
+++ b/perl-install/install/help/po/sr.po
@@ -11,23 +11,24 @@ msgstr ""
"PO-Revision-Date: 2004-09-15 13:33+0200\n"
"Last-Translator: Toma Jankovic <tomaja@net.yu>\n"
"Language-Team: Serbian <i18n@mandrake.co.yu>\n"
+"Language: sr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 0.9.6\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#: ../help.pm:14
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Пре него што наставите пажљиво прочитајте услове лиценце. Она\n"
-"покрива целу Mandriva Linux дистрибуцију, и уколико се слажете\n"
+"покрива целу Mageia дистрибуцију, и уколико се слажете\n"
"са свим условима који се налазе у њој, кликните на \"Прихватам\" тастер\n"
"Уколико не прихватате, једноставно искључите \n"
"рачунар."
@@ -136,7 +137,8 @@ msgstr "Да ли желите да користите ову опцију ?"
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -146,24 +148,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Изнад се налази листа постојећих Linux партиција које су детектоване\n"
@@ -207,14 +213,13 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux инсталација се налази на неколико дискова илити CDROM-ова. "
-"DrakX\n"
+"Mageia инсталација се налази на неколико дискова илити CDROM-ова. DrakX\n"
"зна уколико да уколико је селктовани пакет лоциран на другом CDROM-у и "
"избациће\n"
"тренутни CD те тражити од вас да убаците одговарајући."
@@ -223,12 +228,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -279,8 +283,7 @@ msgid ""
"megabytes."
msgstr ""
"Сада је време да одредимо које програме желите да инсталирате на ваш\n"
-"систем. Постоје хиљаде пакета доступних за инсталацију на Mandriva Linux, "
-"и \n"
+"систем. Постоје хиљаде пакета доступних за инсталацију на Mageia, и \n"
"да би их учинили доступнијим, смеђтени су у групе сличних апликација.\n"
"\n"
"Пакети су сортирани у групе у односу на одговарајућу употребу на вашој\n"
@@ -361,10 +364,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -394,7 +397,7 @@ msgstr ""
"\n"
"!! Уколико је сервер пакет изабран случајно или као део\n"
"целе групе, бићете упитани да ли заиста желите да инсталирате\n"
-"понуђене сервере. Под Mandriva Linux-ом, сви инсталирани\n"
+"понуђене сервере. Под Mageia-ом, сви инсталирани\n"
"сервери се стартују по default-у за време подизања система. Чак и ако су "
"сигурни и немају\n"
"познатих безбедносних пропуста до времена изласка дистрибуције, може се "
@@ -537,7 +540,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -593,7 +596,7 @@ msgid ""
msgstr ""
"X (или X Window Систем) је срце GNU/Linux графичког интерфејса\n"
"на који се ослањају сва графичка окружења (KDE, GNOME, AfterStep,\n"
-"WindowMaker, итд.) која се налазе у Mandriva Linux-у.\n"
+"WindowMaker, итд.) која се налазе у Mageia-у.\n"
"\n"
"Биће вам приказана листа са различитим параметрима чијом изменом\n"
"можете добити оптималан графички приказ: Графичка картица\n"
@@ -710,39 +713,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -751,15 +758,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -773,12 +780,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"У овом тренутку, морате да изаберете где ћете инсталирати\n"
-"Mandriva Linux оперативни систем на ваш хард диск. Уколико је празан или\n"
+"Mageia оперативни систем на ваш хард диск. Уколико је празан или\n"
"постојећи оперативни систем користи сав постојећи простор на диску, треба да "
"га\n"
"партиционирате. У основи, партиционирање хард диска се састоји логичког\n"
-"дељења да би обезбедили простор за инсталацију ваш нови Mandriva Linux "
-"систем.\n"
+"дељења да би обезбедили простор за инсталацију ваш нови Mageia систем.\n"
"\n"
"Пошто су ефекти процеса партиционирања обично неповратни,\n"
"партиционирање може бити прилично стресан процес за неискусне кориснике.\n"
@@ -786,7 +792,7 @@ msgstr ""
"журите.\n"
"\n"
"Уколико сте покренули инсталацију у Експерт моду, покренућете\n"
-"DiskDrake, Mandriva Linux-ов алат за партиције, који вам дозвољавав да\n"
+"DiskDrake, Mageia-ов алат за партиције, који вам дозвољавав да\n"
"фино подесите ваше партиције. Погледајте DiskDrake секцију у ``User "
"Guide''.\n"
"Из инсталационог интерфејса, можете користити чаробњаке као што је описано "
@@ -824,7 +830,7 @@ msgstr ""
"дефрагментирате\n"
"Windows партицију из самог Windows-а. Backup података такође није лоша "
"идеја..\n"
-"Ово решење се препоручује уколико желите да користите Mandriva Linux и\n"
+"Ово решење се препоручује уколико желите да користите Mageia и\n"
"Microsoft Windows на истом компјутеру.\n"
"\n"
" Пре него што изаберете ову опцију, морате да разумете да након ове "
@@ -835,7 +841,7 @@ msgstr ""
"\n"
" * \"Брисање цвелог диска\": уколико желите да избришете све податке и све\n"
"партиције који постоје на вашем хард диску и замените их вашим\n"
-"новим Mandriva Linux системом, можете да изаберете ову оцију. Будите\n"
+"новим Mageia системом, можете да изаберете ову оцију. Будите\n"
"пажљивиса овом опцијом, јер нећете бити у могућности\n"
"да повратите старо стање након потврде.\n"
"\n"
@@ -991,7 +997,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1018,7 +1024,7 @@ msgstr ""
"\n"
"Кликните на \"<- Претходно\" ако желите да изаберете другу партицију за свој "
"нови\n"
-"Mandriva Linux систем.\n"
+"Mageia систем.\n"
"\n"
"Кликните на \"Напредно\" уколико желите да изаберете партиције које ће бити "
"проверене\n"
@@ -1027,7 +1033,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1039,7 +1045,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"У време када будете инсталирали Mandriva Linux, врло је могуће да ће неки\n"
+"У време када будете инсталирали Mageia, врло је могуће да ће неки\n"
"пакети бити ажурирани у односу на иницијално издање. Неки багови могу \n"
"бити исправљени, а сигурносни пропусти затворене. Да би могли да користите "
"ове новије верзије\n"
@@ -1065,7 +1071,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1090,21 +1096,24 @@ msgstr "Администратор за сигурност:"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1120,21 +1129,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1151,17 +1162,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"На овој тачки, морате избрати коју партицију(e) желите да користите за\n"
-"инсталацију новог Mandriva Linux система. Уколико су партиције\n"
+"инсталацију новог Mageia система. Уколико су партиције\n"
"већ дефинисане (од предходне инсталације или од стране\n"
"другог алата за партиције), можете да користите постојеће партиције.\n"
"У другим случајевима,\n"
@@ -1225,13 +1230,6 @@ msgstr ""
"Да би добили информације о различитим доступним типовима система, "
"прочитајте\n"
"ext2FS поглавље из ``Упуства''.\n"
-"\n"
-"Уколико радите инсталацију на PPC Машину, можда ћете желети да креирате "
-"малу\n"
-"HFS 'bootstrap' партицију од најмање 1MB за употребу\n"
-"yaboot стартера. Уколико се двоумите да ову партицију направите мало већом,\n"
-"на пример 50MB, можете искористити тај простор за смештање\n"
-"резервног кернела и ramdisk image за стартање у хитним ситуацијама."
#: ../help.pm:526
#, c-format
@@ -1271,39 +1269,45 @@ msgstr "Пређи на нормални мод"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Једна или више Microsoft Windows партиција је детектовано \n"
"на хард диску. Изаберите коју од њих желите да смањите да би инсталирали\n"
-"нови Mandriva Linux оперативни систем.\n"
+"нови Mageia оперативни систем.\n"
"\n"
"Свака партиција је исписана на следећи начин: \"Име Linux-а\",\"Име Windows-а"
"\"\n"
@@ -1351,23 +1355,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Овај корак се активира само у случају да постоји стара GNU/Linux партиција "
"на\n"
@@ -1375,7 +1379,7 @@ msgstr ""
"\n"
"DrakX сада треба да зна да ли желите да изведете чисту инсталацију или "
"ажурирање\n"
-"постојећег Mandriva Linux система:\n"
+"постојећег Mageia система:\n"
"\n"
" * \"Инсталација\": У већини случајева, ова опција комплетно брише стари\n"
"систем. Уколико желите да измените број партиција, или\n"
@@ -1386,7 +1390,7 @@ msgstr ""
"\n"
" * \"Ажурирање\": ова инсталациона класа вам дозвољава да урадите ажурирање "
"пакета\n"
-"на тренутно инсталираном Mandriva Linux систему. Ваша тренутна\n"
+"на тренутно инсталираном Mageia систему. Ваша тренутна\n"
"шема партиција и кориснички подаци се не мењају. Већина других\n"
"конфигурационих корака и даље остаје доступна, слично стандардној "
"инсталацији.\n"
@@ -1394,7 +1398,7 @@ msgstr ""
"Употреба опције ``Ажурирање'' би требало да буде без проблема на Mandriva "
"Linux системима\n"
"од верзије \"8.1\" или новије. Извођење ажурирања на верзијама \n"
-"Mandriva Linux пре \"8.1\" није препоручљиво."
+"Mageia пре \"8.1\" није препоручљиво."
#: ../help.pm:594
#, fuzzy, c-format
@@ -1449,8 +1453,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1606,7 +1609,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1617,7 +1620,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1638,11 +1641,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Сада треба да изаберемо систем за штампање за ваш рачунар. Други OS-ови вам\n"
-"нуде један, али вам Mandriva Linux нуди чак три.\n"
+"нуде један, али вам Mageia нуди чак три.\n"
"\n"
" * \"pdq\" што значи ``print, do not queue'', је избор за оне који имају\n"
"директни конекцију са својим штампачем и желите да избегнете\n"
@@ -1692,7 +1695,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1789,8 +1792,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1807,7 +1809,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1832,8 +1834,8 @@ msgstr "Графички интерфејс"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Изаберите хард диск који желите да избришете да би инсталирали нову Mandriva "
@@ -1845,12 +1847,14 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Кликните на \"Следеће ->\" уколико желите да избришете све податке и \n"
"партиције на овом хард диску.Будите пажљиви, после клика на \"У реду\", ви\n"
diff --git a/perl-install/install/help/po/sr@Latn.po b/perl-install/install/help/po/sr@Latn.po
index 1da6c96d6..2a825542d 100644
--- a/perl-install/install/help/po/sr@Latn.po
+++ b/perl-install/install/help/po/sr@Latn.po
@@ -22,12 +22,12 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Pre nego što nastavite pažljivo pročitajte uslove licence. Ona\n"
-"pokriva celu Mandriva Linux distribuciju, i ukoliko se slažete\n"
+"pokriva celu Mageia distribuciju, i ukoliko se slažete\n"
"sa svim uslovima koji se nalaze u njoj, kliknite na \"Prihvatam\" taster\n"
"Ukoliko ne prihvatate, jednostavno isključite \n"
"računar."
@@ -138,7 +138,7 @@ msgstr "Da li želite da koristite ovu opciju ?"
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -148,24 +148,24 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Iznad se nalazi lista postojećih Linux particija koje su detektovane\n"
@@ -209,13 +209,13 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux instalacija se nalazi na nekoliko diskova iliti CDROM-ova. "
+"Mageia instalacija se nalazi na nekoliko diskova iliti CDROM-ova. "
"DrakX\n"
"zna ukoliko da ukoliko je selktovani paket lociran na drugom CDROM-u i "
"izbaciće\n"
@@ -225,12 +225,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -281,7 +280,7 @@ msgid ""
"megabytes."
msgstr ""
"Sada je vreme da odredimo koje programe želite da instalirate na vaš\n"
-"sistem. Postoje hiljade paketa dostupnih za instalaciju na Mandriva Linux, "
+"sistem. Postoje hiljade paketa dostupnih za instalaciju na Mageia, "
"i \n"
"da bi ih učinili dostupnijim, smeđteni su u grupe sličnih aplikacija.\n"
"\n"
@@ -363,10 +362,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -396,7 +395,7 @@ msgstr ""
"\n"
"!! Ukoliko je server paket izabran slučajno ili kao deo\n"
"cele grupe, bićete upitani da li zaista želite da instalirate\n"
-"ponuđene servere. Pod Mandriva Linux-om, svi instalirani\n"
+"ponuđene servere. Pod Mageia-om, svi instalirani\n"
"serveri se startuju po default-u za vreme podizanja sistema. Čak i ako su "
"sigurni i nemaju\n"
"poznatih bezbednosnih propusta do vremena izlaska distribucije, može se "
@@ -539,7 +538,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -595,7 +594,7 @@ msgid ""
msgstr ""
"X (ili X Window Sistem) je srce GNU/Linux grafičkog interfejsa\n"
"na koji se oslanjaju sva grafička okruženja (KDE, GNOME, AfterStep,\n"
-"WindowMaker, itd.) koja se nalaze u Mandriva Linux-u.\n"
+"WindowMaker, itd.) koja se nalaze u Mageia-u.\n"
"\n"
"Biće vam prikazana lista sa različitim parametrima čijom izmenom\n"
"možete dobiti optimalan grafički prikaz: Grafička kartica\n"
@@ -712,39 +711,39 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -753,15 +752,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -775,11 +773,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"U ovom trenutku, morate da izaberete gde ćete instalirati\n"
-"Mandriva Linux operativni sistem na vaš hard disk. Ukoliko je prazan ili\n"
+"Mageia operativni sistem na vaš hard disk. Ukoliko je prazan ili\n"
"postojeći operativni sistem koristi sav postojeći prostor na disku, treba da "
"ga\n"
"particionirate. U osnovi, particioniranje hard diska se sastoji logičkog\n"
-"deljenja da bi obezbedili prostor za instalaciju vaš novi Mandriva Linux "
+"deljenja da bi obezbedili prostor za instalaciju vaš novi Mageia "
"sistem.\n"
"\n"
"Pošto su efekti procesa particioniranja obično nepovratni,\n"
@@ -788,7 +786,7 @@ msgstr ""
"žurite.\n"
"\n"
"Ukoliko ste pokrenuli instalaciju u Ekspert modu, pokrenućete\n"
-"DiskDrake, Mandriva Linux-ov alat za particije, koji vam dozvoljavaw da\n"
+"DiskDrake, Mageia-ov alat za particije, koji vam dozvoljavaw da\n"
"fino podesite vaše particije. Pogledajte DiskDrake sekciju u ``User "
"Guide''.\n"
"Iz instalacionog interfejsa, možete koristiti čarobnjake kao što je opisano "
@@ -826,7 +824,7 @@ msgstr ""
"defragmentirate\n"
"Windows particiju iz samog Windows-a. Backup podataka takođe nije loša "
"ideja..\n"
-"Ovo rešenje se preporučuje ukoliko želite da koristite Mandriva Linux i\n"
+"Ovo rešenje se preporučuje ukoliko želite da koristite Mageia i\n"
"Microsoft Windows na istom kompjuteru.\n"
"\n"
" Pre nego što izaberete ovu opciju, morate da razumete da nakon ove "
@@ -837,7 +835,7 @@ msgstr ""
"\n"
" * \"Brisanje cvelog diska\": ukoliko želite da izbrišete sve podatke i sve\n"
"particije koji postoje na vašem hard disku i zamenite ih vašim\n"
-"novim Mandriva Linux sistemom, možete da izaberete ovu ociju. Budite\n"
+"novim Mageia sistemom, možete da izaberete ovu ociju. Budite\n"
"pažljivisa ovom opcijom, jer nećete biti u mogućnosti\n"
"da povratite staro stanje nakon potvrde.\n"
"\n"
@@ -994,7 +992,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1021,7 +1019,7 @@ msgstr ""
"\n"
"Kliknite na \"<- Prethodno\" ako želite da izaberete drugu particiju za svoj "
"novi\n"
-"Mandriva Linux sistem.\n"
+"Mageia sistem.\n"
"\n"
"Kliknite na \"Napredno\" ukoliko želite da izaberete particije koje će biti "
"proverene\n"
@@ -1030,7 +1028,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1042,7 +1040,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"U vreme kada budete instalirali Mandriva Linux, vrlo je moguće da će neki\n"
+"U vreme kada budete instalirali Mageia, vrlo je moguće da će neki\n"
"paketi biti ažurirani u odnosu na inicijalno izdanje. Neki bagovi mogu \n"
"biti ispravljeni, a sigurnosni propusti zatvorene. Da bi mogli da koristite "
"ove novije verzije\n"
@@ -1068,7 +1066,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1093,21 +1091,21 @@ msgstr "Administrator za sigurnost:"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1123,21 +1121,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1154,17 +1152,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Na ovoj tački, morate izbrati koju particiju(e) želite da koristite za\n"
-"instalaciju novog Mandriva Linux sistema. Ukoliko su particije\n"
+"instalaciju novog Mageia sistema. Ukoliko su particije\n"
"već definisane (od predhodne instalacije ili od strane\n"
"drugog alata za particije), možete da koristite postojeće particije.\n"
"U drugim slučajevima,\n"
@@ -1230,13 +1222,6 @@ msgstr ""
"Da bi dobili informacije o različitim dostupnim tipovima sistema, "
"pročitajte\n"
"ext2FS poglavlje iz ``Upustva''.\n"
-"\n"
-"Ukoliko radite instalaciju na PPC Mašinu, možda ćete želeti da kreirate "
-"malu\n"
-"HFS 'bootstrap' particiju od najmanje 1MB za upotrebu\n"
-"yaboot startera. Ukoliko se dvoumite da ovu particiju napravite malo većom,\n"
-"na primer 50MB, možete iskoristiti taj prostor za smeštanje\n"
-"rezervnog kernela i ramdisk image za startanje u hitnim situacijama."
#: ../help.pm:526
#, c-format
@@ -1276,39 +1261,39 @@ msgstr "Pređi na normalni mod"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Jedna ili više Microsoft Windows particija je detektovano \n"
"na hard disku. Izaberite koju od njih želite da smanjite da bi instalirali\n"
-"novi Mandriva Linux operativni sistem.\n"
+"novi Mageia operativni sistem.\n"
"\n"
"Svaka particija je ispisana na sledeći način: \"Ime Linux-a\",\"Ime Windows-a"
"\"\n"
@@ -1356,23 +1341,22 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Ovaj korak se aktivira samo u slučaju da postoji stara GNU/Linux particija "
"na\n"
@@ -1380,7 +1364,7 @@ msgstr ""
"\n"
"DrakX sada treba da zna da li želite da izvedete čistu instalaciju ili "
"ažuriranje\n"
-"postojećeg Mandriva Linux sistema:\n"
+"postojećeg Mageia sistema:\n"
"\n"
" * \"Instalacija\": U većini slučajeva, ova opcija kompletno briše stari\n"
"sistem. Ukoliko želite da izmenite broj particija, ili\n"
@@ -1391,7 +1375,7 @@ msgstr ""
"\n"
" * \"Ažuriranje\": ova instalaciona klasa vam dozvoljava da uradite "
"ažuriranje paketa\n"
-"na trenutno instaliranom Mandriva Linux sistemu. Vaša trenutna\n"
+"na trenutno instaliranom Mageia sistemu. Vaša trenutna\n"
"šema particija i korisnički podaci se ne menjaju. Većina drugih\n"
"konfiguracionih koraka i dalje ostaje dostupna, slično standardnoj "
"instalaciji.\n"
@@ -1399,7 +1383,7 @@ msgstr ""
"Upotreba opcije ``Ažuriranje'' bi trebalo da bude bez problema na Mandriva "
"Linux sistemima\n"
"od verzije \"8.1\" ili novije. Izvođenje ažuriranja na verzijama \n"
-"Mandriva Linux pre \"8.1\" nije preporučljivo."
+"Mageia pre \"8.1\" nije preporučljivo."
#: ../help.pm:594
#, fuzzy, c-format
@@ -1454,8 +1438,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1611,7 +1594,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1622,7 +1605,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1643,12 +1626,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Sada treba da izaberemo sistem za štampanje za vaš računar. Drugi OS-ovi "
"vam\n"
-"nude jedan, ali vam Mandriva Linux nudi čak tri.\n"
+"nude jedan, ali vam Mageia nudi čak tri.\n"
"\n"
" * \"pdq\" što znači ``print, do not queue'', je izbor za one koji imaju\n"
"direktni konekciju sa svojim štampačem i želite da izbegnete\n"
@@ -1699,7 +1682,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1796,8 +1779,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1814,7 +1796,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1839,8 +1821,8 @@ msgstr "Grafički interfejs"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Izaberite hard disk koji želite da izbrišete da bi instalirali novu Mandriva "
@@ -1852,12 +1834,12 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Kliknite na \"Sledeće ->\" ukoliko želite da izbrišete sve podatke i \n"
"particije na ovom hard disku.Budite pažljivi, posle klika na \"U redu\", vi\n"
diff --git a/perl-install/install/help/po/sv.po b/perl-install/install/help/po/sv.po
index 37e9030bb..f3ebac4a8 100644
--- a/perl-install/install/help/po/sv.po
+++ b/perl-install/install/help/po/sv.po
@@ -1,39 +1,37 @@
-# DrakX-sv - Swedish Translation
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-# Copyright (C) 2000,2002,2003, 2004, 2005 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva
-# Kenneth Krekula, 2005.
-# Fuad Sabanovic <manijak@telia.com>, 2000.
-# Mattias Dahlberg <voz@home.se>, 2001, 2002.
-# Mattias Newzella <newzella@linux.nu>, 2001, 2002,2003.
-# Magnus Björklöf <bjorklof@nic.fi>, 2003.
-# Lars Westergren <lars.westergren@home.se>, 2003, 2004, 2005.
-# Thomas Backlund <tmb@mandriva.org>, 2004, 2005.
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2024
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-sv - Mandriva 2006 Release\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2005-09-18 21:42+0300\n"
-"Last-Translator: Thomas Backlund <tmb@mandriva.org>\n"
-"Language-Team: Swedish <sv@li.org>\n"
+"PO-Revision-Date: 2024-09-04 17:33+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>, 2024\n"
+"Language-Team: Swedish (https://app.transifex.com/MageiaLinux/teams/9361/"
+"sv/)\n"
+"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Innan du fortsätter bör du noga läsa licensen. Den täcker hela\n"
-"Mandriva Linux-distributionen. Om du samtycker med den,\n"
+"Mageia-distributionen. Om du samtycker med den,\n"
"kryssa i rutan \"%s\". Om du ej samtycker så klicka på \"%s\"\n"
"knappen så kommer installationen avbrytas och din dator att\n"
"startas om."
@@ -120,12 +118,12 @@ msgstr ""
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Användarnamn"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Acceptera användare"
#: ../help.pm:54
#, c-format
@@ -135,7 +133,8 @@ msgstr "Vill du använda den här funktionen?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -145,24 +144,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Listat ovan är de existerande Linux-partitionerna som hittats på\n"
@@ -199,28 +202,27 @@ msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Installationen av Mandriva Linux är utspridd på flera cd-skivor. DrakX\n"
+"Installationen av Mageia är utspridd på flera cd-skivor. DrakX\n"
"vet om ett valt paket finns på en annan cd-skiva och kommer att mata ut\n"
"den aktuella cd:n och be dig sätta in en annan om det blir nödvändigt.\n"
"Om du inte har efterfrågad CD tillgänglig, klicka på \"%s\" så hoppas\n"
"installationen av motsvarande paket över."
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -271,12 +273,12 @@ msgid ""
"megabytes."
msgstr ""
"Det är nu dags att ange vilka program du vill installera på\n"
-"systemet. Det finns flera tusen paket tillgängliga för Mandriva Linux och\n"
+"systemet. Det finns flera tusen paket tillgängliga för Mageia och\n"
"för att det ska bli enklare att hantera paketen har de placerats i grupper\n"
"om liknande program.\n"
"\n"
"Paketen är sorterade i grupper som motsvarar olika användningsområden\n"
-"för din dator. Mandriva Linux har fyra fördefinierade kategorier\n"
+"för din dator. Mageia har fyra fördefinierade kategorier\n"
" tillgängliga. Du kan blanda program från olika kategorier så att \n"
"t ex en arbetsstationsinstallation fortfarande kan ha program från \n"
"kategorin Utveckling installerade.\n"
@@ -293,7 +295,7 @@ msgstr ""
"att program utvecklade på en distribution även\n"
"kommer att fungera på andra distributioner.)\n"
" Om du väljer \"LSB\" gruppen kommer 2.4 kernel serien installeras\n"
-"istället för 2.6 som annars är standard för Mandriva Linux. Detta är\n"
+"istället för 2.6 som annars är standard för Mageia. Detta är\n"
"för att uppfylla LSB stöd maximalt. Om du inte väljer \"LSB\" \n"
"kommer du ändå att ha ett system som är LSB kompatibelt nästan\n"
"till 100%%.\n"
@@ -362,10 +364,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -413,9 +415,8 @@ msgstr ""
"om du har ett antal datorer som skall ha en identisk konfiguration.\n"
"När du klickar på den ikonen kommer du att bli ombedd om att stoppa i\n"
"en diskett som du tidigare skapat vid slutet av en annan\n"
-" installation. Se det andra tipset i det sista steget hur du gör för att "
-"skapa\n"
-" en sådan diskett."
+"installation. Se det andra tipset i det sista steget hur du gör för att\n"
+"skapa en sådan diskett."
#: ../help.pm:183
#, c-format
@@ -490,7 +491,7 @@ msgstr ""
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Hårdvaruklocka satt till GMT"
#: ../help.pm:213
#, c-format
@@ -525,7 +526,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -580,7 +581,7 @@ msgid ""
"not successful in getting the display configured."
msgstr ""
"X (som står för X Window System) är hjärtat i det grafiska gränssnittet\n"
-"i GNU/Linux. Alla grafiska miljöer som följer med Mandriva Linux\n"
+"i GNU/Linux. Alla grafiska miljöer som följer med Mageia\n"
"(KDE, GNOME, AfterStep, WindowMaker osv) är beroende av det\n"
"för att fungera.\n"
"\n"
@@ -704,39 +705,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -745,15 +750,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -770,7 +775,7 @@ msgstr ""
"Linux. Om den är tom eller om ett befintligt operativsystem använder\n"
"allt tillgängligt utrymme behöver du partitionera den. Att partitionera en\n"
"hårddisk går ut på att man delar upp den i logiska enheter för att skapa \n"
-"utrymmen åt det nya Mandriva Linux-systemet.\n"
+"utrymmen åt det nya Mageia-systemet.\n"
"\n"
"Eftersom resultatet av en partitionering vanligtvis inte går att ångra\n"
"kan partitionering kännas skrämmande om du är en ovan användare.\n"
@@ -798,7 +803,7 @@ msgstr ""
"att du nyligen defragmenterat Windows-partitionen och att den använder.\n"
"formatet FAT. Du rekommenderas dock starkt att först säkerhetskopiera \n"
"data från Windows-partitionen. Denna lösning rekommenderas om du vill\n"
-" använda både Mandriva Linux och Microsoft Windows på samma dator.\n"
+" använda både Mageia och Microsoft Windows på samma dator.\n"
"\n"
" Innan du väljer denna lösning måste du vara införstådd med att\n"
" storleken på Microsoft Windows-partitionen kommer att bli mindre\n"
@@ -808,7 +813,7 @@ msgstr ""
"\n"
" * \"%s\": Om du vill ta bort alla data och alla\n"
"partitioner som finns på hårddisken och ersätta dem med ditt nya\n"
-"Mandriva Linux-system, väljer du detta alternativ. Var försiktig med\n"
+"Mageia-system, väljer du detta alternativ. Var försiktig med\n"
"detta alternativ eftersom du kan inte ångra dig efteråt.\n"
"\n"
" !! Om du väljer detta alternativ kommer alla data på disken att tas "
@@ -836,7 +841,7 @@ msgstr "Använd existerande partition"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Använd ledigt utrymme på Microsoft Windows® partitionen"
#: ../help.pm:370
#, c-format
@@ -920,17 +925,17 @@ msgstr "Generera automatisk installationsdiskett"
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Spela igen"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Automatiserad"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Spara paketval"
#: ../help.pm:408
#, c-format
@@ -952,7 +957,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -974,7 +979,7 @@ msgstr ""
"Klicka på \"%s\" när du är redo att formatera partitionerna.\n"
"\n"
"Klicka på \"%s\" om du vill välja andra partitioner att installera ditt\n"
-"nya Mandriva Linux-system på.\n"
+"nya Mageia-system på.\n"
"\n"
"Klicka på \"%s\" för att välja på vilka partitioner du vill leta\n"
"efter felaktiga block."
@@ -982,7 +987,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -994,7 +999,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Sedan denna version av Mandriva Linux gavs ut är det troligt att\n"
+"Sedan denna version av Mageia gavs ut är det troligt att\n"
"några paket har uppdaterats. Fel kan ha rättats till och\n"
"säkerhetsrelaterade problem kan ha lösts. För att du ska kunna ta\n"
"del av dessa uppdateringar ges du nu möjligheten att ladda ner dem\n"
@@ -1018,7 +1023,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1031,7 +1036,7 @@ msgstr ""
"påverkar hur lättanvänd datorn blir.\n"
"Om du inte är säker på vad du ska välja, behåll det förvalda alternativet.\n"
"Du kan ändra det senare med draksec verktyget, vilket är en del av av\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
"Skriv in email adressen till personen som är ansvarig för säkerheten\n"
"i \"%s\" fältet. Säkerhetsmeddelanden kommer att mailas till den\n"
@@ -1046,21 +1051,24 @@ msgstr "Säkerhetsadministratör"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1076,21 +1084,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1107,17 +1117,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Nu måste du välja vilka partitioner som ska användas för installationen av\n"
-"Mandriva Linux-systemet. Om partitioner redan har definierats, antingen\n"
+"Mageia-systemet. Om partitioner redan har definierats, antingen\n"
"från en tidigare installation av GNU/Linux eller av ett annat\n"
"partitionsverktyg, kan du använda dessa. Annars måste hårddiskpartitioner\n"
"definieras.\n"
@@ -1183,26 +1187,21 @@ msgstr ""
"\n"
"För att få information om de olika typerna av filsystem, läs kapitlet\n"
"ext2FS i \"Reference Manual\".\n"
-"\n"
-"Om du installerar på en PPC-dator bör du skapa en en liten HFS-\n"
-"partition (\"bootstrap\") på åtminstone 1 MB. Den kommer att användas av\n"
-"starthanteraren Yaboot. Om du gör partitionen lite större, t ex 50 MB,\n"
-"har du ett bra ställe att lagra en reservkärna och ramdiskar för nödlägen."
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Spara partitionstabellen"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Återställ partitionstabellen"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Rädda partitionstabellen"
#: ../help.pm:526
#, c-format
@@ -1212,12 +1211,12 @@ msgstr "Automatisk montering av flyttningsbar media"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Guide"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Ångra"
#: ../help.pm:526
#, c-format
@@ -1227,39 +1226,45 @@ msgstr "Byt mellan normal/expert läge"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Fler än en Microsoft Windows-partition har hittats på hårddisken.\n"
"Välj vilken av dem du vill ändra storlek på för att kunna installera\n"
-"operativsystemet Mandriva Linux.\n"
+"operativsystemet Mageia.\n"
"\n"
"Varje partition listas som följer: \"Linux-namn\", \"Windows-namn\"\n"
"\"Kapacitet\".\n"
@@ -1308,29 +1313,29 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Detta steg startas endast om en gammal GNU/Linux-partition har hittats\n"
"på datorn.\n"
"\n"
"DrakX behöver veta om du önskar starta en ny installation eller uppdatera\n"
-"ett redan existerande Mandriva Linux-system:\n"
+"ett redan existerande Mageia-system:\n"
"\n"
" * \"%s\" Detta raderar oftast helt det gamla systemet. Om du vill ändra\n"
"hur hårddiskarna är partitionerade eller ändra filsystemet ska du använda\n"
@@ -1341,11 +1346,11 @@ msgstr ""
"\n"
" * \"%s\" detta installationsalternativ uppdaterar de paket som är "
"installerade\n"
-"på ditt Mandriva Linux-system. Dina nuvarande partitioner och dina\n"
+"på ditt Mageia-system. Dina nuvarande partitioner och dina\n"
"användares data kommer inte att förändras. De flesta installationssteg\n"
"kommer att vara tillgängliga precis som på en vanlig installation.\n"
"\n"
-"Uppdateringsalternativet bör fungera utmärkt på Mandriva Linux-system\n"
+"Uppdateringsalternativet bör fungera utmärkt på Mageia-system\n"
"som är version \"8.1\" eller senare. Att göra en uppdatering av tidigare\n"
"versioner än \"8.1\" rekommenderas ej."
@@ -1405,8 +1410,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1484,7 +1488,7 @@ msgstr "Spanska"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Använd Unicode som standard"
#: ../help.pm:646
#, c-format
@@ -1586,7 +1590,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1615,7 +1619,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1636,11 +1640,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Här väljer du vilket skrivarsystem du ska använda. Andra operativsystem\n"
-"erbjuder dig kanske bara ett, men Mandriva erbjuder dig två.\n"
+"erbjuder dig kanske bara ett, men Mageia erbjuder dig två.\n"
"Vilket skrivarsystem som är lämpligast är beroende på vilken \n"
"systemkonfiguration du har.\n"
"\n"
@@ -1664,7 +1668,7 @@ msgstr ""
"\n"
"Om du gör ett val nu och senare kommer fram till att du inte gillar\n"
"skrivarsystemet kan du alltid ändra dig efter installationen genom att\n"
-"använda PrinterdDrake i Mandrivas kontrollcentral, och där klicka på\n"
+"använda PrinterdDrake i Mageias kontrollcentral, och där klicka på\n"
"knappen \"%s\"."
#: ../help.pm:768
@@ -1675,7 +1679,7 @@ msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
@@ -1690,7 +1694,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1728,7 +1732,7 @@ msgstr ""
"i din dator så kan du klicka på knappen för att välja en annan drivrutin."
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1768,8 +1772,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1786,7 +1789,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1797,7 +1800,7 @@ msgstr ""
"installerad så kan du ha några eller alla av de följande kategorierna.\n"
"Varje kategori består av vad som konfigurerats, följt av en enkel\n"
"sammanfattning av aktuell konfigurering.\n"
-"Klicka på motsvarande \"%s\"-knapp för att ändra konfigureringen.\n"
+"Klicka på motsvarande \"%s\"-knapp för att ändra konfigurationen.\n"
"\n"
" * \"%s\": kontrollera aktuella tangentbordsinställning och ändra om\n"
"så önskas.\n"
@@ -1814,11 +1817,6 @@ msgstr ""
" * \"%s\": kontrollera aktuell muskonfiguration och klicka på knappen för\n"
"att ändra den om så önskas.\n"
"\n"
-" * \"%s\": Genom att klicka på knappen \"%s\" så öppnas guiden för\n"
-"konfigurering av skrivare. Läs i motsvarande kapitel i \"Starter Guide\"\n"
-"för mer information om hur man konfigurerar en ny skrivare. Gränssnittet\n"
-"som används liknar det som användes under själva installationen.\n"
-"\n"
" * \"%s\": om ett ljudkort hittats på ditt system så visas det här. Om du\n"
"upptäcker att ljudkortet som visas inte stämmer överens med det som\n"
"i själva verket finns på din dator så kan du klicka på knappen och\n"
@@ -1837,7 +1835,7 @@ msgstr ""
"\n"
" * \"%s\": konfigurera din anslutning till Internet eller ett\n"
"lokalt nätverk. Använd eventuell tryckt dokumentation eller använd\n"
-"Mandriva Linux Control Center efter installationen har slutförts för att\n"
+"Mageia Control Center efter installationen har slutförts för att\n"
"få tillgång till dokumentation och hjälp med inställningar.\n"
"\n"
" * \"%s\" ställa in HTTP- och FTP-proxy inställingar om din\n"
@@ -1853,7 +1851,7 @@ msgstr ""
"\n"
" * \"%s\" ändra konfigurationen av din starthanterare.\n"
" Detta bör endast göras av erfarna användare. \n"
-"Använd tryckt dokumentation eller den inbyggda hjälpen i Mandriva Linux\n"
+"Använd tryckt dokumentation eller den inbyggda hjälpen i Mageia\n"
"Control Center för konfiguration av starthanterare\n"
".\n"
" * \"%s\": här kan du ställa in i detalj vilka tjänster som körs på din\n"
@@ -1861,9 +1859,9 @@ msgstr ""
"se över dessa inställningar."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "ISDN-kort"
+msgstr "TV-kort"
#: ../help.pm:809
#, c-format
@@ -1878,12 +1876,12 @@ msgstr "Grafiskt gränssnitt"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Välj vilken hårddisk du vill radera för att kunna installera din nya\n"
-"Mandriva Linux-partition. Var försiktig, alla data som för tillfället\n"
+"Mageia-partition. Var försiktig, alla data som för tillfället\n"
"finns på partitionen kommer att gå förlorad och kommer inte att kunna \n"
"återställas!"
@@ -1891,12 +1889,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Klicka på \"%s\" om du vill ta bort alla data och alla partitioner som\n"
"finns på denna hårddisk. Var försiktig, efter det att du klickat på \"%s\" \n"
@@ -1915,120 +1915,3 @@ msgstr "Nästa ->"
#, c-format
msgid "<- Previous"
msgstr "<- Föregående"
-
-#~ msgid ""
-#~ "\"%s\": clicking on the \"%s\" button will open the printer "
-#~ "configuration\n"
-#~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for "
-#~ "more\n"
-#~ "information on how to set up a new printer. The interface presented in "
-#~ "our\n"
-#~ "manual is similar to the one used during installation."
-#~ msgstr ""
-#~ "\"%s\": om du klickar på \"%s\" startar skrivarguiden.\n"
-#~ "Se motsvarande kapitel i \"Starter Guide\" för mer information om hur du\n"
-#~ "ska göra för att installera en ny skrivare. Gränssnittet som visas där\n"
-#~ "liknar det som används vid installationen."
-
-#~ msgid ""
-#~ "This is the most crucial decision point for the security of your GNU/"
-#~ "Linux\n"
-#~ "system: you must enter the \"root\" password. \"Root\" is the system\n"
-#~ "administrator and is the only user authorized to make updates, add "
-#~ "users,\n"
-#~ "change the overall system configuration, and so on. In short, \"root\" "
-#~ "can\n"
-#~ "do everything! That's why you must choose a password which is difficult "
-#~ "to\n"
-#~ "guess: DrakX will tell you if the password you chose is too simple. As "
-#~ "you\n"
-#~ "can see, you're not forced to enter a password, but we strongly advise\n"
-#~ "against this. GNU/Linux is just as prone to operator error as any other\n"
-#~ "operating system. Since \"root\" can overcome all limitations and\n"
-#~ "unintentionally erase all data on partitions by carelessly accessing the\n"
-#~ "partitions themselves, it is important that it be difficult to become\n"
-#~ "\"root\".\n"
-#~ "\n"
-#~ "The password should be a mixture of alphanumeric characters and at least "
-#~ "8\n"
-#~ "characters long. Never write down the \"root\" password -- it makes it "
-#~ "far\n"
-#~ "too easy to compromise your system.\n"
-#~ "\n"
-#~ "One caveat: do not make the password too long or too complicated because "
-#~ "you\n"
-#~ "must be able to remember it!\n"
-#~ "\n"
-#~ "The password will not be displayed on screen as you type it. To reduce "
-#~ "the\n"
-#~ "chance of a blind typing error you'll need to enter the password twice. "
-#~ "If\n"
-#~ "you do happen to make the same typing error twice, you'll have to use "
-#~ "this\n"
-#~ "``incorrect'' password the first time you'll try to connect as \"root\".\n"
-#~ "\n"
-#~ "If you want an authentication server to control access to your computer,\n"
-#~ "click on the \"%s\" button.\n"
-#~ "\n"
-#~ "If your network uses either LDAP, NIS, or PDC Windows Domain "
-#~ "authentication\n"
-#~ "services, select the appropriate one for \"%s\". If you do not know "
-#~ "which\n"
-#~ "one to use, you should ask your network administrator.\n"
-#~ "\n"
-#~ "If you happen to have problems with remembering passwords, or if your\n"
-#~ "computer will never be connected to the Internet and you absolutely "
-#~ "trust\n"
-#~ "everybody who uses your computer, you can choose to have \"%s\"."
-#~ msgstr ""
-#~ "Det här är det viktigaste steget för säkerheten i ditt GNU/Linux-system:\n"
-#~ "du ska ange \"root\"-lösenordet. \"root\" är systemets administratör och\n"
-#~ "den enda som har behörighet att göra uppdateringar, lägga till "
-#~ "användare,\n"
-#~ "ändra på systemets övergripande konfiguration, osv. Kort sagt, \"root\" "
-#~ "kan\n"
-#~ "göra allt. Därför måste du välja ett lösenord som är svårt att lista ut.\n"
-#~ "DrakX talar om för dig om du väljer ett lösenord som är för lätt. Som du\n"
-#~ "ser har du möjlighet att inte ange något lösenord alls, men vi avråder "
-#~ "från\n"
-#~ "det. Det är lika lätt att begå misstag i GNU/Linux som i andra "
-#~ "operativsystem.\n"
-#~ "Eftersom \"root\" kan gå förbi alla begränsningar och oavsiktligt radera\n"
-#~ "alla data på partitioner genom att vara oförsiktig är det viktigt att det "
-#~ "är\n"
-#~ "svårt att bli \"root\".\n"
-#~ "\n"
-#~ "Lösenordet bör vara en blandning av numeriska tecken och bokstäver och\n"
-#~ "minst åtta tecken långt. Skriv aldrig ner \"root\"-lösenordet - det\n"
-#~ "ökar risken för ett intrång i systemet.\n"
-#~ "\n"
-#~ "Gör dock inte lösenordet för långt och komplicerat, för du måste\n"
-#~ "kunna komma ihåg det utan allt för mycket besvär.\n"
-#~ "\n"
-#~ "Lösenordet visas inte på skärmen när du skriver in det. Det är därför\n"
-#~ "du får skriva det två gånger, för att undvika att du skriver fel. Om du\n"
-#~ "gör samma skrivfel två gånger måste du använda detta \"felaktiga\"\n"
-#~ "lösenord första gången du loggar in.\n"
-#~ "\n"
-#~ "Tänk på att om du byter språk för tangentbordsinställningar efter att du\n"
-#~ "har skrivit in ditt lösenord så kommer kanske vissa bokstäver eller\n"
-#~ "specialtecken att tolkas annorlunda fast du trycker på exakt samma\n"
-#~ "tangent som tidigare. Detta kan göra det svårt att skriva in lösenordet\n"
-#~ "korrekt eftersom det inte visas på skärmen medan du skriver. Det kan\n"
-#~ "därför vara en god ide att undvika att använda specialtecken i ditt\n"
-#~ "lösenord.\n"
-#~ "\n"
-#~ "Om du önskar att tillgången till denna dator ska kontrolleras av en\n"
-#~ "autentiseringsserver, klicka på knappen \"%s\".\n"
-#~ "\n"
-#~ "Om ditt nätverk använder LDAP, NIS eller en Windows PDC för "
-#~ "autentisering,\n"
-#~ "välj motsvarande för \"%s\". Om du är osäker, fråga\n"
-#~ "din nätverksadministratör.\n"
-#~ "\n"
-#~ "Om du har problem med att komma ihåg lösenord kan du välja att ha\n"
-#~ "\"%s\", om din dator inte kommer att vara uppkopplad mot\n"
-#~ "Internet och du litar på alla som har tillgång till den."
-
-#~ msgid "authentication"
-#~ msgstr "autentisering"
diff --git a/perl-install/install/help/po/ta.po b/perl-install/install/help/po/ta.po
index a7e116bc4..e9e0d3bdf 100644
--- a/perl-install/install/help/po/ta.po
+++ b/perl-install/install/help/po/ta.po
@@ -13,6 +13,7 @@ msgstr ""
"PO-Revision-Date: 2002-09-06 00:35+0800\n"
"Last-Translator: prabu anand <prabu_anand2000@yahoo.com>\n"
"Language-Team: Tamil <tamilinix@yahoogroups.com>\n"
+"Language: ta\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -23,13 +24,13 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"உதவி இன்னமும் மொழிபெயர்கப்படவில்லை. Before continuing, you should read carefully "
"the terms of the license. It\n"
-"covers the whole Mandriva Linux distribution, and if you do not agree with\n"
+"covers the whole Mageia distribution, and if you do not agree with\n"
"all the terms in it, click on the \"Refuse\" button which will immediately\n"
"terminate the installation. To continue with the installation, click on the\n"
"\"Accept\" button."
@@ -120,7 +121,8 @@ msgstr "நீங்கள் இந்த வசதியை பயன்பட
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -130,28 +132,32 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"உதவி இன்னமும் மொழிபெயர்கப்படவில்லை.Listed above are the existing Linux partitions "
-"detected on your hard drive.\n"
+"detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, they are good for most common\n"
"installations. If you make any changes, you must at least define a root\n"
"partition (\"/\"). Do not choose too small a partition or you will not be\n"
@@ -161,37 +167,41 @@ msgstr ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"உதவி இன்னமும் மொழிபெயர்கப்படவில்லை.The Mandriva Linux installation is spread out "
-"over several CD-ROMs. DrakX\n"
+"உதவி இன்னமும் மொழிபெயர்கப்படவில்லை.The Mageia installation is spread out over "
+"several CD-ROMs. DrakX\n"
"knows if a selected package is located on another CD-ROM and will eject the\n"
"current CD and ask you to insert a different one as required"
@@ -199,12 +209,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -256,7 +265,7 @@ msgid ""
msgstr ""
"உதவி இன்னமும் மொழிபெயர்கப்படவில்லை.It is now time to specify which programs you "
"wish to install on your\n"
-"system. There are thousands of packages available for Mandriva Linux, and\n"
+"system. There are thousands of packages available for Mageia, and\n"
"you are not supposed to know them all by heart.\n"
"\n"
"If you are performing a standard installation from a CD-ROM, you will first\n"
@@ -334,10 +343,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -373,10 +382,10 @@ msgstr ""
"\n"
"!! If a server package has been selected, either intentionally or because\n"
"it was part of a whole group, you will be asked to confirm that you really\n"
-"want those servers to be installed. Under Mandriva Linux, any installed\n"
+"want those servers to be installed. Under Mageia, any installed\n"
"servers are started by default at boot time. Even if they are safe and have\n"
"no known issues at the time the distribution was shipped, it may happen\n"
-"that security holes are discovered after this version of Mandriva Linux was\n"
+"that security holes are discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do\n"
"or why it is being installed, then click \"No\". Clicking \"Yes\" will\n"
"install the listed services and they will be started automatically by\n"
@@ -494,7 +503,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -598,39 +607,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -639,15 +652,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -784,7 +797,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -810,7 +823,7 @@ msgstr ""
"Click on \"OK\" when you are ready to format partitions.\n"
"\n"
"Click on \"Cancel\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions that will be checked\n"
"for bad blocks on the disk."
@@ -818,7 +831,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -855,7 +868,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -880,21 +893,24 @@ msgstr "பாதுகாப்பு மேலாளர்(பெயர் அ
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -910,21 +926,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -941,33 +959,29 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"உதவி இன்னமும் மொழிபெயர்கப்படவில்லை.At this point, you need to choose which "
"partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or from another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
" * \"Clear all\": this option deletes all partitions on the selected hard\n"
"drive;\n"
"\n"
" * \"Auto allocate\": this option enables to automatically create \"Ext2\"\n"
-"and swap partitions in free space of your hard drive;\n"
+"and swap partitions in free space of your hard disk drive;\n"
"\n"
" * \"More\": gives access to additional features:\n"
"\n"
@@ -990,7 +1004,8 @@ msgstr ""
"CD-ROMs.\n"
"\n"
" * \"Wizard\": use this option if you wish to use a wizard to partition\n"
-"your hard drive. This is recommended if you do not have a good knowledge of\n"
+"your hard disk drive. This is recommended if you do not have a good "
+"knowledge of\n"
"partitioning;\n"
"\n"
" * \"Undo\": use this option to cancel your changes;\n"
@@ -998,7 +1013,8 @@ msgstr ""
" * \"Toggle to normal/expert mode\": allows additional actions on\n"
"partitions (type, options, format) and gives more information;\n"
"\n"
-" * \"Done\": when you are finished partitioning your hard drive, this will\n"
+" * \"Done\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"Note: you can reach any option using the keyboard. Navigate through the\n"
@@ -1014,12 +1030,6 @@ msgstr ""
"\n"
"To get information about the different filesystem types available, please\n"
"read the ext2fs chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB, which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
#: ../help.pm:526
#, c-format
@@ -1059,65 +1069,76 @@ msgstr "சாதாரனர் முறைமைக்கு மாறு"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"உதவி இன்னமும் மொழிபெயர்கப்படவில்ைல.More than one Microsoft partition has been "
-"detected on your hard drive.\n"
+"detected on your hard disk drive.\n"
"Please choose the one you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
#: ../help.pm:567
@@ -1136,23 +1157,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1204,8 +1225,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1337,7 +1357,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1348,7 +1368,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1369,7 +1389,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1396,7 +1416,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1484,8 +1504,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1502,7 +1521,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1527,8 +1546,8 @@ msgstr "வரைவியல்வழி"
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"உங்கள் கணினியில் மாண்ட்ேரக் லினக்ஸ் இயக்க அமைப்ேபா மட்டும்\n"
@@ -1541,21 +1560,25 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"உதவி இன்னமும் மொழிபெயர்கப்படவில்லை. Click on \"OK\" if you want to delete all "
"data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"OK\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"OK\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"Cancel\" to cancel this operation without losing any data and\n"
-"partitions present on this hard drive."
+"partitions present on this hard disk drive."
#: ../help.pm:872
#, c-format
diff --git a/perl-install/install/help/po/tg.po b/perl-install/install/help/po/tg.po
index 735a34387..c0f17554a 100644
--- a/perl-install/install/help/po/tg.po
+++ b/perl-install/install/help/po/tg.po
@@ -20,21 +20,22 @@ msgstr ""
"PO-Revision-Date: 2005-09-17 16:03+0500\n"
"Last-Translator: Victor Ibragimov <youth_opportunities@tajikngo.org>\n"
"Language-Team: Tajik\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.10\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Пеш аз давомдиҳӣ шумо бояд шартҳои литсензияро бо диққат хонед. Он\n"
-"ба ҳамаи тақсимоти Mandriva Linux паҳн гардидааст. Агар шумо ба\n"
+"ба ҳамаи тақсимоти Mageia паҳн гардидааст. Агар шумо ба\n"
"ҳамаи шартҳои литсензия розӣ бошед, пункти \"%s\"-ро қайд кунед. Агар розӣ\n"
"набошед, танҳо \"%s\" компютери худро хомӯш созед."
@@ -143,7 +144,8 @@ msgstr "Шумо ин хислатро истифрда бурдан мехоҳ
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -153,24 +155,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Дар ин ҷо бахшҳои мавҷудаи Linux, ки дар гардонандаи сахти шумо\n"
@@ -210,15 +216,15 @@ msgstr ""
"дорад, \"b\" маънои\"дуюмин аз поёни SCSI ID\"-ро дорад ва ғайра."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Коргузории Mandriva Linux дар CD-ROM-ҳои мухталиф тақсим шудааст. Агар\n"
+"Коргузории Mageia дар CD-ROM-ҳои мухталиф тақсим шудааст. Агар\n"
"бастаи интихобшуда дар дигар CD-ROM ҷойгир бошад, DrakX диски фишурдаи\n"
"ҷориро ба берун кашида аз шумо вогузории диски талабшударо пурсон мешавад.\n"
"Агар шумо дар даст диски фишурдаи талабшударо надошта бошед, танҳо ба \"%s\" "
@@ -229,12 +235,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -285,12 +290,11 @@ msgid ""
"megabytes."
msgstr ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -357,7 +361,7 @@ msgid "Truly minimal install"
msgstr "Коргузории аз ҳама пастарин"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -370,10 +374,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -405,11 +409,11 @@ msgstr ""
"!! Агар бастаи хидматрасонро интихоб карда бошед, хоҳ барои интихоби муайяни "
"бастаи алоҳида, хоҳ барои он ки вай як қисми гурӯҳӣ баста\n"
"аст, шумо бояд тасдиқ кунед, ки дар ҳақиқат ин хидматрасонҳои\n"
-"коргузоришавандаро истифода бурдан мехоҳед. Дар Mandriva Linux\n"
+"коргузоришавандаро истифода бурдан мехоҳед. Дар Mageia\n"
"ҳамаи хидматрасонҳои коргузоришуда ҳангоми оғозёбӣ ба таври худкор, бо "
"нобаёнӣ сар дода мешаванд. Ҳарчанде, ки онҳо бехатаранд ва муаммоҳои\n"
"маълумро ҳангоми даргиронидан дар тақсимот надоранд, мумкин аст, ки\n"
-"дар бехатарӣ баъди барориши нусхаи хотимавии Mandriva Linux\n"
+"дар бехатарӣ баъди барориши нусхаи хотимавии Mageia\n"
"сӯрохиҳои муайян мешаванд. Агар шумо надонед, ки барои чӣ ин ё он\n"
"хидматрасон лозим аст ё барои чӣ он коргузорӣ мегардад пас ба \"%s\"\n"
"ангушт занед. Бо пахшкунии \"%s\" шумо хидматрасонҳои номбаршударо\n"
@@ -547,11 +551,11 @@ msgstr ""
"хидматрасон пеш аз ҳама ба эҳтиёҷи шумо мувофиқат мекунад."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -607,7 +611,7 @@ msgid ""
msgstr ""
"X (барои системи X Window) ин асоси интерфейси графикии GNU/Linux мебошад,\n"
"ки дар он ҳамаи муҳитҳои графикӣ асос ёфтааст (KDE, GNOME, AfterStep,\n"
-"WindowMaker ва ғайра) ва ба ҳайати Mandriva Linux дохил аст.\n"
+"WindowMaker ва ғайра) ва ба ҳайати Mageia дохил аст.\n"
"\n"
"Ба шумо рӯйхати параметрҳои гуногуне ки ба тағироти гирифтани тасвири\n"
"беҳтарини графикӣ пешбинӣ шудааст, дода мешавад: Корти графикӣ\n"
@@ -738,41 +742,45 @@ msgstr ""
"намоишгари худро танзим карда натавониста бошед."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -781,15 +789,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -803,12 +811,12 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Дар ин қадам шумо бояд дар куҷои гардонандаи сахт ҷойгир кардани\n"
-"системаи омили Mandriva Linux-ро ҳал кунед. Агар гардонандаи сахти\n"
+"системаи омили Mageia-ро ҳал кунед. Агар гардонандаи сахти\n"
"шумо холӣ бошад ё системаи омили ҳозирбуда ҳамаи фазои имконпазирро\n"
"ишғол кунад, ба шумо лозим меояд, ки гардонандаи сахти худро\n"
"бахшбандӣ кунед. Бахшбандикунии гардонандаи сахт асосан аз тақсимоти "
"мантиқии фазои ишғолшуда барои коргузории системаи омилии \n"
-"Mandriva Linux иборат аст.\n"
+"Mageia иборат аст.\n"
"\n"
"Азбаски ҷараёни бахшбандии гардонандаи сахт одатан барнагарданда\n"
"аст ва ба гумшавии додаҳо оварда расониданаш мумкин аст, агар дар "
@@ -850,7 +858,7 @@ msgstr ""
"\n"
" * \"%s\": агар шумо хоҳед, ки ҳамаи додаҳоро дар ҳама қисматҳои\n"
"дар гардонандаи сахти худ мавҷудбударо нобуд созед ва ҷои онҳоро бо системаи "
-"нави Mandriva Linux иваз кунед, ин хосиятро интихоб\n"
+"нави Mageia иваз кунед, ин хосиятро интихоб\n"
"кунед. Эҳтиёт бошед, зеро баъди тасдиқот шумо интихоби худро\n"
"баргардонида наметавонед.\n"
"\n"
@@ -981,7 +989,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -1000,7 +1008,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -1024,15 +1032,15 @@ msgstr ""
"Агар шумо ба шаклбандии бахшҳо тайёр бошед ба \"%s\" ангушт занед.\n"
"\n"
"Агар шумо хоҳед, ки дигар бахшҳоро барои коргузории системаи\n"
-"омилии навъи Mandriva Linux интихоб кунед ба \"%s\" ангушт занед.\n"
+"омилии навъи Mageia интихоб кунед ба \"%s\" ангушт занед.\n"
"\n"
"Агар хоҳед бахшҳоеро, ки дар диск ба мавҷудияти қисмҳои бад\n"
"тафтиш карда шаванд интихоб намоед, ба \"%s\" ангушт занед."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1044,7 +1052,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Ҳангоми коргузории Mandriva Linux хуб мешуд, ки баъзе бастаи\n"
+"Ҳангоми коргузории Mageia хуб мешуд, ки баъзе бастаи\n"
"барномаҳо нав карда шаванд, аз рӯзи барориши ибтидоӣ. Эҳтимолан\n"
"баъзе хатогиҳо ислоҳ шудаанд ва дархостҳо оиди бехтарӣ ҳал шудаанд.\n"
"Барои гирифтани фоида аз ин навсозиҳо, ҳозир ба шумо боркунии онҳо аз "
@@ -1060,7 +1068,7 @@ msgstr ""
"кардани коргузории бозсозӣ пахш кунед."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1069,7 +1077,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1096,24 +1104,27 @@ msgid "Security Administrator"
msgstr "Идоракунандаи Бехатарӣ"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1129,21 +1140,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1160,17 +1173,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Дар ин пункт шумо бояд интихоб намоед, ки кадом бахш(ҳо) барои\n"
-"коргузории системавӣ Mandriva Linux-и шумо истифода бурда мешаванд.\n"
+"коргузории системавӣ Mageia-и шумо истифода бурда мешаванд.\n"
"Агар бахшҳои алоқаи аз коргузории пешинаи GNU/Linux ё аз дигар\n"
"асбоби бахшбандикунӣ муайян шуда бошад, шумо метавонед бахшҳои мавҷударо "
"истифода баред. Дар дигар ҳолат бояд бахшҳои гардонандаи\n"
@@ -1188,7 +1195,7 @@ msgstr ""
"месозад\n"
"\n"
" * \"%s\": ин хосият имконияти ба таври худкор офаридани бахшҳои\n"
-"ext3 ва swap-ро дар фазои холии гардонандаи сахти шумо, медиҳад\n"
+"ext4 ва swap-ро дар фазои холии гардонандаи сахти шумо, медиҳад\n"
"\n"
"\"%s\": хусусиятҳои иловагиро дастрас мекунад:\n"
"\n"
@@ -1240,14 +1247,6 @@ msgstr ""
"\n"
"Барои гирифтани маълумот оиди намудҳои системаи файлии дастрас\n"
"марҳамат карда боби ext2FS-ро аз ``Раҳнамои Муроҷиат'' хонед.\n"
-"\n"
-"Агар шумо дар мошинаи PPC коргузориро иҷро карда бошед, ба шумо\n"
-"лозим меояд, ки бахши хурди HFS ``bootstrap''-ро офаред, ки ақалан 1Мб\n"
-"бошад ва он аз тарафи боркунандаи yaboot истифода бурда мешавад.\n"
-"Агар шумо хоҳед, ки бахшро каме калонтар кунед, масалан 50Мб шумо\n"
-"онро ҷои хеле қуллай барои захиракунии ҳастаи эҳтиётӣ ва симоҳои ramdisk "
-"ҳангоми ҳодисаи боркунии ғайричашмдошт,\n"
-"пайдо хоҳед кард."
#: ../help.pm:526
#, c-format
@@ -1285,41 +1284,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Зомин байни усули мӯътадил/мутахассисӣ"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Дар гардонандаи сахти шумо зиёда аз як бахши Microsoft муайян гардид.\n"
"Марҳамат карда бахшеро, ки барои коргузории системаи нави омили\n"
-"Mandriva Linux андозаи онро тағир додан мехоҳед, интихоб намоед.\n"
+"Mageia андозаи онро тағир додан мехоҳед, интихоб намоед.\n"
"\n"
"Ҳар бахш ба таври зерин ба рӯйхат гирифта мешавад: \"ном дар Linux\",\n"
"\"ном дар Windows\" \"Ғунҷоиш\".\n"
@@ -1364,35 +1369,35 @@ msgstr ""
"дагмаи \"%s\"ангушт зада рӯйхати пураро бинед."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Ин қадам танҳо дар он ҳолате фаъол мегардад, ки дар мошинаи шумо\n"
"бахши кӯҳнаи GNU/Linux пайдо гардад.\n"
"\n"
"DrakX бояд донад, ки оё шумо мехоҳед, ки коргузории навро гузаронед\n"
-"ё системаи Mandriva Linux-и мавҷударо афзоиш диҳед:\n"
+"ё системаи Mageia-и мавҷударо афзоиш диҳед:\n"
"\n"
" * \"%s\": Дар бисёр ҳолатҳо ин вариант ба нобудшавии системаи кӯҳна\n"
"оварда мерасонад. Агар хоҳед, ки бахшҳои гардонандаи сахти худро иваз\n"
@@ -1401,14 +1406,14 @@ msgstr ""
"додаҳои мавҷудаи худро аз бознависӣ захира карда метавонанд.\n"
"\n"
" * \"%s\": ин синфи коргузорӣ ба шумо имконияти авкунии бастаи\n"
-"барномаҳои дар системаи Mandriva Linux-и коргузоришударо медиҳад.\n"
+"барномаҳои дар системаи Mageia-и коргузоришударо медиҳад.\n"
"Нақшаи бахшбандии ҷорӣ ва додаҳои корванд, ивазнашавандаанд.\n"
"Бештари дигар қадамҳо низ дастрас мегарданд, ба монанди коргузории "
"низоммеъёр.\n"
"\n"
-"Интихоби хосияти ``Густариш'' дар системаҳои Mandriva Linux аз нусхаи\n"
+"Интихоби хосияти ``Густариш'' дар системаҳои Mageia аз нусхаи\n"
"\"8.1\" сар карда то охирон хеле хуб хоҳад кор кард. Гузаронидани Густариш\n"
-"дар системаҳои Mandriva Linux болотар аз \"8.1\" маслиҳат дода мешавад."
+"дар системаҳои Mageia болотар аз \"8.1\" маслиҳат дода мешавад."
#: ../help.pm:594
#, c-format
@@ -1449,7 +1454,7 @@ msgstr ""
"ғайри лотинӣ медиҳад."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1465,8 +1470,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1628,7 +1632,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1651,10 +1655,10 @@ msgstr ""
"корандози \"%s\" худборшавро ҷойгир намуд."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1675,11 +1679,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Ҳоло вақте расидааст барои интихоби системаи чопкунӣ барои компютери\n"
-"шумо. Дигар СО ба шумо як намудро пешкаш карда метавонад, Mandriva Linux\n"
+"шумо. Дигар СО ба шумо як намудро пешкаш карда метавонад, Mageia\n"
"бошад, ду намудро. Ҳар яке аз системаҳо барои батанзимдарории\n"
"муайяни беҳтарин мебошад.\n"
"\n"
@@ -1730,7 +1734,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1816,8 +1820,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1834,7 +1837,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1920,26 +1923,28 @@ msgid "Graphical Interface"
msgstr "Интерфейси Графикӣ"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Диски сахтеро, интихоб намоед, ки шумо онро барои офаридани қисми\n"
-"Mandriva Linux дур намудан мехоҳед. Эҳтиёт шавед, ки дар он ҳамаи\n"
+"Mageia дур намудан мехоҳед. Эҳтиёт шавед, ки дар он ҳамаи\n"
"додаҳои мавҷуд буда гум хоҳад шуд ва он барқарор намегардад!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Ба \"%s\" ангушт занед, агар шумо ҳамаи додаҳо ва қисмҳое ки дар ин диски "
"сахт\n"
diff --git a/perl-install/install/help/po/th.po b/perl-install/install/help/po/th.po
index 2c28576b0..fc65aa12e 100644
--- a/perl-install/install/help/po/th.po
+++ b/perl-install/install/help/po/th.po
@@ -10,6 +10,7 @@ msgstr ""
"PO-Revision-Date: 2001-09-10 14:24GMT+7\n"
"Last-Translator: Wachara Chinsettawong <wachara@yahoo.com>\n"
"Language-Team: Thai <th@li.org>\n"
+"Language: th\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -20,7 +21,7 @@ msgstr ""
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
@@ -84,7 +85,8 @@ msgstr "คุณต้องการใช้ aboot หรือไม่"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -94,31 +96,35 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
@@ -129,12 +135,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -214,10 +219,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -310,7 +315,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -408,39 +413,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -449,15 +458,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -564,7 +573,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -573,7 +582,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -596,7 +605,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -612,21 +621,24 @@ msgstr "อ๊อปชั่นของเครื่องพิมพ์แ
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -642,21 +654,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -673,14 +687,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -721,34 +729,40 @@ msgstr "สำหรับผู้ชำนาญ > ปกติ"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -768,23 +782,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -825,8 +839,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -931,7 +944,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -942,7 +955,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -963,7 +976,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -990,7 +1003,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1071,8 +1084,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1089,7 +1101,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1114,11 +1126,11 @@ msgstr "ให้เป็นกราฟฟิคเมื่อเริ่ม
#: ../help.pm:861
#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"เลือก harddisk ที่ต้องการลบและลง Mandriva Linux\n"
+"เลือก harddisk ที่ต้องการลบและลง Mageia\n"
"ควรระวังเป็นอย่างมากดพราะว่าข้อมูลทุกอย่างจะถูกลบ\n"
"และจะไม่สามารถกู้คืนได้"
@@ -1126,12 +1138,14 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"กด \"OK\" ถ้าคุณต้องการลบข้อมูลทั้งหมดบน harddisk นี้\n"
"นี่รวมถึง partitions ทั้งหมดซึ่งรวมถึง Windows ด้วย\n"
diff --git a/perl-install/install/help/po/tl.po b/perl-install/install/help/po/tl.po
index a0b7f9c8d..f90c347f4 100644
--- a/perl-install/install/help/po/tl.po
+++ b/perl-install/install/help/po/tl.po
@@ -11,21 +11,22 @@ msgstr ""
"PO-Revision-Date: 2004-09-15 13:35+0200\n"
"Last-Translator: Arys P. Deloso <arys@deloso.org>\n"
"Language-Team: Filipino <salinpinoy@comitus.net>\n"
+"Language: fil\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.3\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Bago magpatuloy, kailangang basahin ninyong mabuti ang mga nasasaad sa\n"
-"lisensiya. Tinutukoy nito ang kabuoang distribusyon ng Mandriva Linux. Kung\n"
+"lisensiya. Tinutukoy nito ang kabuoang distribusyon ng Mageia. Kung\n"
"kayo ay sumasang-ayon sa lahat ng nasasaad, i-check ang \"%s\" na box.\n"
"Kung hindi, i-click ang \"%s\" na button para i-reboot ang inyong computer."
@@ -141,7 +142,8 @@ msgstr "Gusto ninyong gamitin ang katangian na ito?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -151,28 +153,33 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Nakalista rito ang mga namamalaging partisyon ng Linux na natiktikan sa\n"
-"inyong hard drive. Maaari ninyong itago ang mga pili ng Wizard, dahil sila\n"
+"inyong hard disk drive. Maaari ninyong itago ang mga pili ng Wizard, dahil "
+"sila\n"
"ay mabuti para sa karamihan ng mga karaniwang \"installation\". Kung kayo\n"
"ay gagawa ng mga pagbabago, mag-define dapat kayo ng partisyon ng\n"
"\"root\" (\"/\"). Huwag pumili ng napakaliit na partisyon dahil hindi kayo "
@@ -186,44 +193,44 @@ msgstr ""
"\n"
"Bawat partisyon ay nakalista na sumusunod: \"Pangalan\", \"Capacity\".\n"
"\n"
-"\"Pangalan\" ay naka-structure na: \"uri ng hard drive\", \"bilang ng hard "
-"drive\",\n"
+"\"Pangalan\" ay naka-structure na: \"uri ng hard disk drive\", \"bilang ng "
+"hard drive\",\n"
"\"bilang ng partisyon\" (halimbawa, \"hda1\").\n"
"\n"
-"\"Uri ng hard drive\" ay \"hd\" kung ang inyong hard drive ay isang IDE na "
-"hard drive\n"
-"at \"sd\" kung ito ay isang SCSI na hard drive.\n"
+"\"Uri ng hard disk drive\" ay \"hd\" kung ang inyong hard disk drive ay "
+"isang IDE na hard disk drive\n"
+"at \"sd\" kung ito ay isang SCSI na hard disk drive.\n"
"\n"
-"\"Bilang ng hard drive\" ay palaging titik pagkatapos ng \"hd\" o \"sd\". "
-"Para\n"
-"sa mga IDE na hard drive:\n"
+"\"Bilang ng hard disk drive\" ay palaging titik pagkatapos ng \"hd\" o \"sd"
+"\". Para\n"
+"sa mga IDE na hard disk drive:\n"
"\n"
-" * \"a\" ay nangangahulugang \"master hard drive sa primary IDE controller"
-"\";\n"
+" * \"a\" ay nangangahulugang \"master hard disk drive sa primary IDE "
+"controller\";\n"
"\n"
-" * \"b\" ay nangangahulugang \"slave hard drive sa primary IDE controller"
-"\";\n"
+" * \"b\" ay nangangahulugang \"slave hard disk drive sa primary IDE "
+"controller\";\n"
"\n"
-" * \"c\" ay nangangahulugang \"master hard drive sa secondary IDE controller"
-"\";\n"
+" * \"c\" ay nangangahulugang \"master hard disk drive sa secondary IDE "
+"controller\";\n"
"\n"
-" * \"d\" ay nangangahulugang \"slave hard drive sa secondary IDE controller"
-"\".\n"
+" * \"d\" ay nangangahulugang \"slave hard disk drive sa secondary IDE "
+"controller\".\n"
"\n"
-"Sa mga SCSI na hard drive, ang \"a\" ay nangangahulugang \"pinakamababang "
-"SCSI ID\",\n"
+"Sa mga SCSI na hard disk drive, ang \"a\" ay nangangahulugang "
+"\"pinakamababang SCSI ID\",\n"
"ang \"b\" ay nangangahulugang \"pangalawang pinakamababang SCSI ID\", atbp."
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Ang installation ng Mandriva Linux ay nakahati sa ilang mga CD-ROM.\n"
+"Ang installation ng Mageia ay nakahati sa ilang mga CD-ROM.\n"
"Kung ang napiling package ay nakalagay sa ibang CD-ROM, iluluwa ng DrakX\n"
"ang kasalukuyang CD at ipapasuksok sa inyo ang tamang CD."
@@ -231,12 +238,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -288,11 +294,11 @@ msgid ""
msgstr ""
"Panahon na para piliin kung aling mga program ang nais ninyong i-install sa\n"
"inyong sistema. Mayroong libo-libong mga package na available para sa\n"
-"Mandriva Linux, at upang mas madali itong pangasiwaan, ang mga package\n"
+"Mageia, at upang mas madali itong pangasiwaan, ang mga package\n"
"ay inayos sa mga pangkat ng magkakatulad na mga application.\n"
"\n"
"Ang mga package ay inayos sa mga pangkat na batay sa paggamit ng\n"
-"inyong makina. Inaayos ng Mandriva Linux ang mga pangkat ng mga\n"
+"inyong makina. Inaayos ng Mageia ang mga pangkat ng mga\n"
"package sa apat na kategoriya. Maaari ninyong paghaluhaluin at\n"
"pagbagaybagayin ang mga application mula sa sari-saring kategoriya,\n"
"para ang installation na ``Workstation'' ay maaari pa ring maka-install\n"
@@ -375,10 +381,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -411,11 +417,11 @@ msgstr ""
"!! Kung ang isang package ng server ay napili, dahil kayo ay pumili ng\n"
"bukod na package o kaya iyon ay bahagi ng isang pangkat ng mga package,\n"
"kayo ay tatanungin kung gusto ninyo talagang i-install ang mga server na\n"
-"iyon. Bilang default, sisimulan kaagad ng Mandriva Linux pag-boot ang kahit\n"
+"iyon. Bilang default, sisimulan kaagad ng Mageia pag-boot ang kahit\n"
"anong na-install na mga service. Kahit na sila ay ligtas at walang kilalang "
"mga\n"
"issue nang mailabas ang distribusyon, maaring matuklasan na may butas sa\n"
-"seguridad pagkatapos matapos ang version ng Mandriva Linux na ito. Kung\n"
+"seguridad pagkatapos matapos ang version ng Mageia na ito. Kung\n"
"hindi ninyo nalalaman ang ginagawa ng isang service o bakit ito ini-"
"install,\n"
"i-click ang \"%s\". Ang pagki-click sa \"%s\" ay mag-i-install ng mga "
@@ -563,7 +569,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -619,7 +625,7 @@ msgid ""
msgstr ""
"X (para sa \"X Window System\") ay ang puso ng \"graphical interface\"\n"
"ng GNU/Linux na kung saan lahat ng mga \"graphical environment\" (KDE,\n"
-"GNOME, AfterStep, WindowMaker, atbp.) na kasama sa Mandriva Linux ay\n"
+"GNOME, AfterStep, WindowMaker, atbp.) na kasama sa Mageia ay\n"
"nakaasa.\n"
"\n"
"Ihaharap sa inyo ang isang talaan ng iba-ibang mga parameter na babaguhin\n"
@@ -746,39 +752,43 @@ msgstr ""
#: ../help.pm:319
#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -787,15 +797,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -809,16 +819,16 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Sa puntong ito, kailangan ninyong magpasya kung saan ninyo nais i-install\n"
-"ang Mandriva Linux na \"operating system\" (OS) sa inyong \"hard drive\".\n"
-"Kung ang inyong \"hard drive\" ay walang laman o kung may namamalaging\n"
+"ang Mageia na \"operating system\" (OS) sa inyong \"hard disk drive\".\n"
+"Kung ang inyong \"hard disk drive\" ay walang laman o kung may namamalaging\n"
"\"operating system\" na gumagamit sa lahat ng available na puwang,\n"
"kakailanganin ninyong ipartisyon ang drive. Ang pagpapartisyon ng isang\n"
-"\"hard drive\" ay ginagawa sa pamamagitan ng paghahati-hati nito sa\n"
+"\"hard disk drive\" ay ginagawa sa pamamagitan ng paghahati-hati nito sa\n"
"kaisipan (\"logical\") upang makagawa ng puwang na kinakailangan para\n"
-"ma-install ang inyong bagong sistema ng Mandriva Linux.\n"
+"ma-install ang inyong bagong sistema ng Mageia.\n"
"\n"
"Dahil kadalasan na hindi na mababawi ang paraan ng pagpapartisyon ng\n"
-"hard drive at maaaring magdulot ng pagkawala ng data kung mayroon\n"
+"hard disk drive at maaaring magdulot ng pagkawala ng data kung mayroon\n"
"nang \"operating system\" na naka-install sa drive, ang pagpapartisyon ay\n"
"ay maaaring maging nakakatakot at nakaka-stress kung kayo ay baguhang\n"
"user.Sa kagandahang palad, ang DrakX ay may kalakip na \"wizard\" na\n"
@@ -826,14 +836,16 @@ msgstr ""
"basahin muna ang mga nalalabing bahagi ng section na ito at higit sa\n"
"lahat, huwag magmadali.\n"
"\n"
-"Depende sa confiugration ng inyong hard drive, mayroong ilang mga option:\n"
+"Depende sa confiugration ng inyong hard disk drive, mayroong ilang mga "
+"option:\n"
"\n"
" * \"%s\": ang option na ito ay magsasagawa ng automatic na pagpapartisyon\n"
-"ng inyong walang lamang hard drive. Kung gagamitin ninyon ang option na ito\n"
+"ng inyong walang lamang hard disk drive. Kung gagamitin ninyon ang option na "
+"ito\n"
"hindi na magkakaroon ng iba pang mga \"prompt\".\n"
"\n"
" * \"%s\": natiktikan ng wizard na mayroong isa o mahigit na namamalaging\n"
-"partisyon ng Linux sa inyong \"hard drive\". Kung gusto ninyong gamitin "
+"partisyon ng Linux sa inyong \"hard disk drive\". Kung gusto ninyong gamitin "
"sila,\n"
"piliin ang option na ito. Pagkatapos kayo ay papipiliin ng mga \"mount point"
"\"\n"
@@ -841,8 +853,8 @@ msgstr ""
"na bilang default, at para sa karamihang bahagi isang magandang pagkukuro\n"
"kung gagamitin sila.\n"
"\n"
-" * \"%s\": kung ang Microsoft Windows ay naka-install sa inyong hard drive "
-"at\n"
+" * \"%s\": kung ang Microsoft Windows ay naka-install sa inyong hard disk "
+"drive at\n"
"ginagamit nito lahat ng mayroong puwang dito, kakailanganin ninyong\n"
"gumawa ng libreng puwang para sa GNU/Linux. Para gawin ito, maaari ninyong\n"
"tanggalin ang inyong partisyon ng Microsoft Windows at data (tingnan ang\n"
@@ -851,7 +863,7 @@ msgstr ""
"walang mawawalang data, kung dati na ninyong na-defragment ang partisyon\n"
"ng Windows. Matinding itinatagubilin na i-backup ang inyong data. Ang\n"
"paggamit sa option na ito ay ipinapayo kung nais ninyong gamitin pareho ang\n"
-"Mandriva Linux at Microsoft Windows sa iisang computer.\n"
+"Mageia at Microsoft Windows sa iisang computer.\n"
"\n"
" Bago piliin ang option na ito, pakiunawa na pagkatapos ng paraang ito,\n"
"ang laki ng partisyon ng inyong Microsoft Windows ay magiging mas\n"
@@ -860,8 +872,9 @@ msgstr ""
"inyong data o mag-install ng bagong software.\n"
"\n"
" * \"%s\": kung gusto ninyong tanggalin lahat ng data at mga partisyon\n"
-"na mayroon sa inyong hard drive at palitan sila ng inyong bagong sistema\n"
-"ng Mandriva Linux, piliin ang option na ito. Maging maingat, dahil hindi na\n"
+"na mayroon sa inyong hard disk drive at palitan sila ng inyong bagong "
+"sistema\n"
+"ng Mageia, piliin ang option na ito. Maging maingat, dahil hindi na\n"
"ninyo maaaring bawiin ang inyong pili matapos ninyong patotohanan ito.\n"
"\n"
" !! kung pipiliin ninyo ang option na ito, lahat ng data sa inyong disk "
@@ -878,7 +891,7 @@ msgstr ""
"\n"
" * \"%s\": piliin ang option na ito kung nais ninyong mano-manong "
"ipartisyon\n"
-"ang inyong hard drive. Maging maingat -- ito ay makapangyarihan ngunit\n"
+"ang inyong hard disk drive. Maging maingat -- ito ay makapangyarihan ngunit\n"
"mapanganib na pili at maaaring madali ninyong mawala ang lahat ng\n"
"inyong data. Ito ang dahilan kung bakit ipinapayo lamang ang option na ito\n"
"kung kayo ay nakagawa na dati ng ganito at mayroong karanasan. Para sa\n"
@@ -1012,14 +1025,13 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
msgstr ""
"Kailangang i-format ang kahit anong partisyon na bagong gawa para ito\n"
-"magamit (ang ibig sabihin ng pagfo-format ay paglilikha ng \"file system"
-"\").\n"
+"magamit (ang ibig sabihin ng pagfo-format ay paglilikha ng \"filesystem\").\n"
"\n"
"Sa ngayon, maaari ninyong naisin na i-format muli ang ilang mga mayroon\n"
"nang partisyon para burahin ang nilalamang data nila. Kung nanaisin ninyong\n"
@@ -1038,7 +1050,7 @@ msgstr ""
"I-click ang \"%s\" kung handa na kayong i-format ang mga partisyon.\n"
"\n"
"I-click ang \"%s\" kung gusto ninyong pumili ng ibang partisyon para sa\n"
-"inyong pag-i-install ng bagong Mandriva Linux na \"operating system\".\n"
+"inyong pag-i-install ng bagong Mageia na \"operating system\".\n"
"\n"
"I-click ang \"%s\" kung nais ninyong piliin ang mga partisyon na susuriin\n"
"para sa mga \"bad blocks\" (mga sirang bloke) sa disk."
@@ -1046,7 +1058,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1058,7 +1070,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Pagdating ng panahon na kayo ay nag-i-install ng Mandriva Linux, mas\n"
+"Pagdating ng panahon na kayo ay nag-i-install ng Mageia, mas\n"
"malamang na ilang mga package ay nabago na simula nang naunang\n"
"paglabas. Maaaring inayos ang mga sira (\"bug\"), naresolba ang mga tanong\n"
"sa sequridad. Para pakinabangan ang mga update (pagbabago) na ito ,\n"
@@ -1083,7 +1095,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1109,24 +1121,27 @@ msgid "Security Administrator"
msgstr "Tagapamala ng Seguridad"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1142,21 +1157,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1173,36 +1190,32 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Sa puntong ito, kailangan ninyong piliin kung aling mga partisyon ang\n"
-"gagamitin para sa pag-i-install ng sistema na Mandriva Linux. Kung ang\n"
+"gagamitin para sa pag-i-install ng sistema na Mageia. Kung ang\n"
"mga partisyon ay nai-define na, mula sa dating pag-i-install ng GNU/Linux\n"
"o ng ibang kasangkapang pangpartisyon, maaari ninyong gamiting ang\n"
"mga mayroon nang partisyon. Kung hindi, dapat mag-define ng mga\n"
-"partisyon ng hard drive.\n"
+"partisyon ng hard disk drive.\n"
"\n"
-"Upang makalikha ng mga partisyon, dapat pumili muna kayo ng hard drive.\n"
+"Upang makalikha ng mga partisyon, dapat pumili muna kayo ng hard disk "
+"drive.\n"
"Maaari ninyong piliin ang disk para sa pagpapartisyon sa pamamagitan ng\n"
"pagki-click sa ``hda'' para sa unang IDE na drive, ``hdb'' para sa "
"pangalawa,\n"
"``sda'' para sa unang SCSI na drive at ganon.\n"
"\n"
-"Para ipartisyon ang napiling hard drive, maaari ninyong gamitin ang mga\n"
+"Para ipartisyon ang napiling hard disk drive, maaari ninyong gamitin ang "
+"mga\n"
"option na ito:\n"
"\n"
" * \"%s\": ang option na ito ay magtatanggal ng lahat ng partisyon sa\n"
-"napiling hard drive\n"
+"napiling hard disk drive\n"
"\n"
" * \"%s\": ang option na ito ay hahayaan kayo na automatic na lumikha\n"
-"ng ext3 at swap na partisyon sa libreng puwang ng inyong hard drive\n"
+"ng ext4 at swap na partisyon sa libreng puwang ng inyong hard disk drive\n"
"\n"
"\"%s\": magbibigay daan sa karagdang mga katangian (\"feature\"):\n"
"\n"
@@ -1218,7 +1231,7 @@ msgstr ""
"na hindi iyon parating gumagana.\n"
"\n"
" * \"%s\": babalewalain lahat ng mga pagbabago at kukunin muli ang\n"
-"partition table na nasa hard drive noong una pa.\n"
+"partition table na nasa hard disk drive noong una pa.\n"
"\n"
" * \"%s\": ang pagtatanggal ng check sa option na ito ay magpipilit sa mga\n"
"gumagamit na mano-manong i-mount at i-unmount ang \"removable media\"\n"
@@ -1226,17 +1239,18 @@ msgstr ""
"\n"
" * \"%s\": gamitin ang option na ito kung nais ninyong gumamit ng wizard "
"para\n"
-"i-partisyon ang inyong hard drive. Ito ay nirerekomenda kung kayo ay walang\n"
+"i-partisyon ang inyong hard disk drive. Ito ay nirerekomenda kung kayo ay "
+"walang\n"
"mabuting kaalaman sa pagpapartisyon.\n"
"\n"
" * \"%s\": gamitin ang option na ito para bawiin ang mga pagbabago.\n"
"\n"
" * \"%s\": magpapahintulot ng karagdagang magagawa sa mga partisyon (uri,\n"
", mga option, format) at magbibigay ng mas maraming inpormasyon tungkol\n"
-"sa hard drive.\n"
+"sa hard disk drive.\n"
"\n"
-" * \"%s\": kung kayo ay tapos na sa pagpapartisyon ng inyong hard drive, "
-"ito\n"
+" * \"%s\": kung kayo ay tapos na sa pagpapartisyon ng inyong hard disk "
+"drive, ito\n"
"ay magse-save ng inyong mga pagbabago pabalik sa disk.\n"
"\n"
"Kung inaalam ang laki ng partisyon, maaari ninyong i-set ng mabuti ang laki\n"
@@ -1255,17 +1269,9 @@ msgstr ""
"\n"
" * Ctrl-m para i-set kung saan ilalagay (\"mount point\")\n"
"\n"
-"Para makakuha ng inpormasyon tungkol sa mga iba't-ibang uri ng \"file system"
+"Para makakuha ng inpormasyon tungkol sa mga iba't-ibang uri ng \"filesystem"
"\",\n"
"pakibasa ang kabanata ng ext2FS mula sa ``Reference Manual''.\n"
-"\n"
-"Kung kayo ay nag-i-install sa makina ng PPC, gugustuhin ninyong lumikha ng\n"
-"maliit na partisyon na HFS ``bootstrap'' na may laking hindi liliit sa 1MB "
-"na\n"
-"gagamitin ng yaboot bootloader. Kung pipiliin ninyong mas malaki ang\n"
-"partisyon, mga 50MB, makikita ninyong ito ay kapakipakinabang na lugar\n"
-"sa pag-iimbak ng mga reserbang kernel at mga \"ramdisk image\" para sa\n"
-"panahon ng mahigpit na pangangailangan."
#: ../help.pm:526
#, c-format
@@ -1303,73 +1309,81 @@ msgid "Toggle between normal/expert mode"
msgstr "Lipat sa normal o bihasang mode"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Mahigit sa isang partisyon ng Microsoft ang natiktikan sa inyong hard "
"drive.\n"
"Pakipili kung alin ang gusto ninyong i-resize para ma-install ang inyong\n"
-"bagong \"operating sytem\" na Mandriva Linux.\n"
+"bagong \"operating sytem\" na Mageia.\n"
"\n"
"Bawat partition ay nakalista ng ganito: \"Pangalan ng Linux\",\n"
"\"Pangalan ng Windows\", \"Capacity\".\n"
"\n"
-"\"Pangalan ng Linux name\" ay may istruktura na: \"uri ng hard drive\",\n"
-"\"bilang ng hard drive\",\"bilang ng partisyon\" (halimbawa, \"hda1\").\n"
+"\"Pangalan ng Linux name\" ay may istruktura na: \"uri ng hard disk drive"
+"\",\n"
+"\"bilang ng hard disk drive\",\"bilang ng partisyon\" (halimbawa, "
+"\"hda1\").\n"
"\n"
-"\"Uri ng hard drive\" ay \"hd\" kung ang inyong hard dive ay isang IDE\n"
-"na hard drive at \"sd\" kung iyon ay isang SCSI na hard drive.\n"
+"\"Uri ng hard disk drive\" ay \"hd\" kung ang inyong hard dive ay isang IDE\n"
+"na hard disk drive at \"sd\" kung iyon ay isang SCSI na hard disk drive.\n"
"\n"
-"\"Bilang ng hard drive\" ay palaging titik pagkatapos ng \"hd\" o \"sd\". "
-"Para\n"
-"sa mga IDE na hard drive:\n"
+"\"Bilang ng hard disk drive\" ay palaging titik pagkatapos ng \"hd\" o \"sd"
+"\". Para\n"
+"sa mga IDE na hard disk drive:\n"
"\n"
-" * \"a\" ay nangangahulugang \"master hard drive sa primary IDE controller"
-"\";\n"
+" * \"a\" ay nangangahulugang \"master hard disk drive sa primary IDE "
+"controller\";\n"
"\n"
-" * \"b\" ay nangangahulugang \"slave hard drive sa primary IDE controller"
-"\";\n"
+" * \"b\" ay nangangahulugang \"slave hard disk drive sa primary IDE "
+"controller\";\n"
"\n"
-" * \"c\" ay nangangahulugang \"master hard drive sa secondary IDE controller"
-"\";\n"
+" * \"c\" ay nangangahulugang \"master hard disk drive sa secondary IDE "
+"controller\";\n"
"\n"
-" * \"d\" ay nangangahulugang \"slave hard drive sa secondary IDE controller"
-"\".\n"
+" * \"d\" ay nangangahulugang \"slave hard disk drive sa secondary IDE "
+"controller\".\n"
"\n"
-"Sa mga SCSI na hard drive, ang \"a\" ay nangangahulugang \"pinakamababang "
-"SCSI ID\",\n"
+"Sa mga SCSI na hard disk drive, ang \"a\" ay nangangahulugang "
+"\"pinakamababang SCSI ID\",\n"
"ang \"b\" ay nangangahulugang \"pangalawang pinakamababang SCSI ID\", atbp.\n"
"\n"
-"\"Pangalan ng Windows\" ay ang titik ng inyong hard drive sa ilalim ng "
+"\"Pangalan ng Windows\" ay ang titik ng inyong hard disk drive sa ilalim ng "
"Windows\n"
"(ang unang disk o partisyon ay tinatawag na \"C:\")."
@@ -1393,46 +1407,47 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Ang hakbang na ito pagaganahin lamang kung mayroong nakitang\n"
"partisyon ng GNU/Linux sa inyong makina.\n"
"\n"
"Kailangang malaman ngayon ng DrakX kung gusto ninyong magsagawa\n"
-"ng bagong install o upgrade ng namamalaging Mandriva Linux na sistema:\n"
+"ng bagong install o upgrade ng namamalaging Mageia na sistema:\n"
"\n"
" * \"%s\": Para sa karamihang bahagi, ganap na binubura nito ang lumang\n"
"sistema. Kung nais ninyong baguhin kung paano ang pagpartisyon sa inyong\n"
-"hard drive, o baguhin ang file system, dapat ninyong gamitin ang option na\n"
+"hard disk drive, o baguhin ang filesystem, dapat ninyong gamitin ang option "
+"na\n"
"ito. Subalit, depende sa inyong pakana ng pagpapartisyon, maaari ninyong\n"
"pigilang masulatan ang ilan sa inyong mga namamalaging data.\n"
"\n"
" * \"%s\": ang klase ng pag-i-install na ito ay pahihintulutan kayong i-"
"update\n"
"ang mga package na kasalukuyang naka-install sa inyong sistema ng\n"
-"Mandriva Linux. Ang inyong kasalukuyang pakana ng pagpapartisyon at\n"
+"Mageia. Ang inyong kasalukuyang pakana ng pagpapartisyon at\n"
"data ng gumagamit ay hindi nabago. Karamihan ng ibang mga hakbang sa\n"
"pagko-configure ay mayroon pa rin, katulad ng standard na pag-i-install.\n"
"\n"
"Ang paggamit sa ``Upgrade'' na option ay gagana ng mabuti sa mga sistema\n"
-"ng Mandriva Linux na nagpapatakbo ng version \"8.1\" o pataas. Ang\n"
-"pagsasagawa ng upgrade sa mga version bago ng Mandriva Linux \"8.1\" ay\n"
+"ng Mageia na nagpapatakbo ng version \"8.1\" o pataas. Ang\n"
+"pagsasagawa ng upgrade sa mga version bago ng Mageia \"8.1\" ay\n"
"hindi ipinapayo."
#: ../help.pm:594
@@ -1493,8 +1508,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1536,7 +1550,7 @@ msgstr ""
"Tungkol sa suporta sa UTF-8 (unicode): Ang Unicode ay isang bagong\n"
"\"character encoding\" na nagnanais masakop ang lahat ng namamalaging\n"
"wika. Ang buong suporta dita ng GNU/Linux ay ginagawa pa rin. Sa dahilang\n"
-"ito, gagamitin ito o hindi ng Mandriva Linux depende sa mga pili ng mga\n"
+"ito, gagamitin ito o hindi ng Mageia depende sa mga pili ng mga\n"
"gumagamit:\n"
"\n"
" * Kung kayo ay pipili ng wika na may malakas na \"legacy encoding"
@@ -1689,7 +1703,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1715,7 +1729,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1736,12 +1750,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Panahon na upang pumili ng sistema ng pagpi-print para sa inyong computer.\n"
"Ang ibang mga \"operating system\" (OS) ay mag-aalok lamang ng isa, pero\n"
-"ang Mandriva Linux ay nag-aalok ng dalawa. Bawat isa sa dalawang sistema\n"
+"ang Mageia ay nag-aalok ng dalawa. Bawat isa sa dalawang sistema\n"
"ng pagpi-print na ito ay nababagay sa natatanging uri ng configuration.\n"
"\n"
" * \"%s\" -- na acronym para sa ``print, do not queue'', ang piliin kung "
@@ -1797,7 +1811,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1815,7 +1829,8 @@ msgstr ""
"naaangkop na driver.\n"
"\n"
"Dahil sa hindi perpekto ang pagtiktik sa hardware, ang DrakX ay maaaring\n"
-"mabigo sa pagtitiktik sa inyong mga hard drive. Kung gayon, dapat ninyong\n"
+"mabigo sa pagtitiktik sa inyong mga hard disk drive. Kung gayon, dapat "
+"ninyong\n"
"sabihin ang inyong hardware ng mano-mano.\n"
"\n"
"Kung kinailangan na mano-mano ninyong sabihin ang inyong PCI SCSI adapter,\n"
@@ -1882,8 +1897,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1900,7 +1914,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1999,35 +2013,38 @@ msgid "Graphical Interface"
msgstr "Graphical Interface"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Piliin ang hard drive na inyong gustong burahin upang ma-install ang\n"
-"inyong bagong Mandriva Linux na partisyon. Mag-ingat, lahat ng data\n"
+"Piliin ang hard disk drive na inyong gustong burahin upang ma-install ang\n"
+"inyong bagong Mageia na partisyon. Mag-ingat, lahat ng data\n"
"sa drive na ito ay mawawala at hindi na ito mababawi!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"I-click ang \"%s\" kung gusto ninyong tangalin lahat ng data at partisyon\n"
-"na mayroon sa hard drive na ito. Mag-ingat, pagkatapos ma-click ang\n"
+"na mayroon sa hard disk drive na ito. Mag-ingat, pagkatapos ma-click ang\n"
"\"%s\", hindi na ninyo mababawi ang kahit anong data at mga partisyon\n"
-"na mayroon sa hard drive na ito, kasama ang kahit anong data ng Windows.\n"
+"na mayroon sa hard disk drive na ito, kasama ang kahit anong data ng "
+"Windows.\n"
"\n"
"I-click ang \"%s\" para hindi ituloy ang operasyon na ito na walang "
"mawawlang\n"
-"data at mga partisyon na mayroon sa hard drive na ito."
+"data at mga partisyon na mayroon sa hard disk drive na ito."
#: ../help.pm:872
#, c-format
diff --git a/perl-install/install/help/po/tr.po b/perl-install/install/help/po/tr.po
index 60fb51837..2c48ade09 100644
--- a/perl-install/install/help/po/tr.po
+++ b/perl-install/install/help/po/tr.po
@@ -2,44 +2,43 @@
# Copyright (C) 2000,2003 Free Software Foundation, Inc.
# Copyright (c) 2000 Mandriva
# ############################################
-#
# Ömer Fadıl USTA <omer_fad@hotmail.com> , 1999-2003.
# Tuncay YENİAY <tuncayyeniay@mynet.com>,2002.
# Nazmi Savga <nsavga@doruk.net.tr>,2001.
# Durmuş Celep <durmusc_tr@yahoo.com>,2002.
# Erçin EKER <erc.caldera@gmx.net>, 2003.
-#
# #############################################
-#
+# Atilla ÖNTAŞ <tarakbumba@gmail.com>, 2013.
msgid ""
msgstr ""
"Project-Id-Version: DrakX-tr\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2004-09-15 13:35+0200\n"
-"Last-Translator: Ömer Fadıl USTA <omer_fad@hotmail.com>\n"
-"Language-Team: Turkish <tr@li.org>\n"
+"PO-Revision-Date: 2013-11-28 20:15+0300\n"
+"Last-Translator: Atilla ÖNTAŞ <tarakbumba@gmail.com>\n"
+"Language-Team: Mageia Turkish Translation Team <i18n-tr@ml.mageia.org>\n"
+"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Virtaal 0.7.1\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Devam etmeden önce lisans koşullarını dikkatle okumalısınız. Lisans tüm\n"
-"Mandriva Linux dağıtımını kapsar, bu koşullarını tamamını kabul "
-"ediyorsanız,\n"
+"Mageia dağıtımını kapsar, bu koşullarını tamamını kabul ediyorsanız,\n"
"\"%s\" kutusunu işaretleyiniz aksi halde \"%s\" tuşuna tıklayarak\n"
"makinenizi yeniden başlatabilirsiniz."
#: ../help.pm:20
-#, fuzzy, c-format
+#, c-format
msgid ""
"GNU/Linux is a multi-user system which means each user can have his or her\n"
"own preferences, own files and so on. But unlike \"root\", who is the\n"
@@ -78,49 +77,62 @@ msgid ""
"security), choose the desired user and window manager, then click on\n"
"\"%s\". If you're not interested in this feature, uncheck the \"%s\" box."
msgstr ""
-"GNU/Linux çok kullanıcılı bir sistemdir, yani her kullanıcının kendi\n"
-"tercihleri, kendi dosyaları, v.s. olabilir. Daha fazla bilgi edinmek için\n"
-"\"Kullanıcı Kılavuzu\"nu okuyunuz. Sistem Yöneticisi olan \"root\" dışındaki "
-"kullanıcılar kendi dosyaları ve yapılandırmaları dışında hiçbir\n"
-"şeyi değiştiremezler. Kendiniz için en az bir normal kullanıcı "
-"oluşturmalısınız.\n"
-"Bu hesabı sıradan işler için kullanacaksınız. Sisteminizi \"root\" olarak\n"
-"kullanmak çok pratik gibi görünse de aslında çok tehlikelidir. En küçük bir\n"
-"yanlışlık sisteminizin çalışmamasıyla sonuçlanabilir. Ama normal kullanıcı\n"
-"olarak bir sürü yanlış da yapsanız sadece kendi bilgilerinize zarar vermiş\n"
-"olursunuz, sisteminize zarar veremezsiniz.\n"
-"\n"
-"İl alan gerçek isminizi girmeniz içindir. Tabii ki sorunlu değildir, "
-"herhangi bir\n"
-"şey yazabilirsiniz. DrakX bu bölüme ilk girdiğiniz kelimeyi \"%s\" bölümüne\n"
-"kopyalayacak ki bu sisteme giriş için kullanılacak kullanıcı adıdır. "
-"İsterseniz\n"
-"kullanıcı adını değiştirebilirsiniz. Sonra buraya bir parola gireceksiniz. "
-"Bir\n"
-"normal kullanıcının parolası \"root\" parolası kadar önemli değildir.\n"
-"Fakat bu boş yada basit bir şifre kullanmak için bir gerekçe değildir,\n"
-"sonuç olarak kişisel dosyalarınızı tehlikeye atmış olursunuz.\n"
-"\n"
-"\"%s\"e tıklayarak ile kullanıcı için öntanımlı \"kabuk\"u "
-"değiştirebilirsiniz\n"
-"(öntanımlı olan bash'dir).\n"
-"\n"
-"Kullanıcı eklemeyi tamamladıktan sonra, sistem açıldıktan sonra otomatik\n"
-"giriş yapılacak kullanıcı sorulacaktır. Eğer bu konu ile ilgileniyorsanızı "
-"(ve\n"
-"yerel güvenliğe önem vermiyorsanız), istediğiniz kullanıcıyı ve pencere\n"
-"yöneticisini seçin ve \"%s\"e tıklayın. Eğer bu konu ilginizi çekmiyorsa\n"
-"\"%s\" seçimini kaldırın ve devam edin."
+"GNU/Linux, her kullanıcının kendi ayarlarına, kendi dosyalarına v.b. sahip "
+"olabileceği çok kullanıcılı bir\n"
+"sistemdir. Sistem yöneticisi olan \"kök\" aksine bu noktada eklediğiniz "
+"kullanıcılar kendi\n"
+"dosyaları ve ve kendi yapılandırmaları haricinde herhangi bir şeyi "
+"değiştirme yetkisine sahip\n"
+"olmayacaklardır ki böylece bir bütün olarak sistem istenmeyen veya zararlı "
+"değişikliklerden korunacaktır.\n"
+"Kendiniz için en azından bir normal kullanıcı oluşturmak zorundasınız -- bu, "
+"günlük olarak kullanacağınız\n"
+"hesap olacaktır. Her ne kadar her şeyi yapabilmek için \"kök\" olarak oturum "
+"açabilmeniz mümkünse de\n"
+"bu işlem çok tehlikeli olabilir! Çok basit bir hata sisteminizin bir daha "
+"işlememesine neden olabilir.\n"
+"Normal bir kullanıcı olarak ciddi bir hata yaparsanız en kötü durumda biraz "
+"veri kaybedersiniz;\n"
+"ama bu, tüm sistemi etkilemeyecektir.\n"
+"\n"
+"İlk alan gerçek adınızı sorar. Elbette, bu zorunlu değildir -- ne isterseniz "
+"onu yazabilirsiniz.\n"
+"DrakX yazdığınız ilk sözcüğü alır ve \"%s\" olarak kopyalar. Bu, kullanıcının "
+"oturum açarken\n"
+"gireceği isimdir. İsterseniz öntanımlı olan kullanıcı ismini "
+"değiştirebilirsiniz. Sonraki adım\n"
+"bir parola girmektir. Güvenlik açısından, bir tam yetkilendirilmemiş "
+"(normal) kullanıcı parolası\n"
+"\"kök\" parolası kadar önemli değildir. Ancak, bunu boş geçmek veya çok basit "
+"belirlemek için\n"
+"bir neden yoktur: sonuçta, risk altına girebilecek olan kendi "
+"dosyalarınızdır.\n"
+"\n"
+"\"%s\" üzerine tıkladığınızda, diğer kullanıcıları da ekleyebilirsiniz. "
+"Arkadaşlarınız, babanız, kardeşiniz v.b.\n"
+"her biri için bir kullanıcı ekleyin. Bitirdiğinizde \"%s\" üzerine tıklayın.\n"
+"\n"
+"\"%s\" düğmesine tıklamak o kullanıcı için öntanımlı \"kabuk\"u değiştirmenizi "
+"sağlayacaktır.\n"
+"(Öntanımılı olan bash kabuktur)\n"
+"\n"
+"Kullanıcıları eklemeyi bitirdiğinizde, bilgisayar başladığında kendiliğinden "
+"oturum açacak kullanıcı\n"
+"sorulacaktır. Bu özelliği kullanmak istiyorsanız (ve yerel güvenlik "
+"endişeniz yoksa) istediğiniz\n"
+"kullanıcıyı ve pencere yöneticisini seçin. Sonra \"%s\" üzerine tıklayın. Bu "
+"özelliği kullanmak istemiyorsanız\n"
+"\"%s\" kutusundaki işareti kaldırın."
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Kullanıcı adı"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Kullanıcıyı kabul et"
#: ../help.pm:54
#, c-format
@@ -130,7 +142,7 @@ msgstr "Bu özelliği kullanmak istiyor musunuz?"
#: ../help.pm:57
#, fuzzy, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -140,24 +152,24 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Yukarıdakiler, sabit diskinizde bulunan Linux bölümleridir. Genel kullanım\n"
@@ -201,13 +213,13 @@ msgstr ""
#: ../help.pm:88
#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux kurulum CD'leri bir kaç CD'den oluşur. DrakX seçilen paketin\n"
+"Mageia kurulum CD'leri bir kaç CD'den oluşur. DrakX seçilen paketin\n"
"hangi CD'de olduğunu bilir ve o CD'yi yerleştirmeniz için CD yuvasını açar\n"
"ve size gerekli CD'yi yerleştirmeniz için uyarır."
@@ -215,12 +227,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -271,7 +282,7 @@ msgid ""
"megabytes."
msgstr ""
"Bundan sonra sisteminize hangi uygulamaları kuracağınızı belirteceksiniz.\n"
-"Mandriva Linux sisteminde kullanılabilecek binlerce paket vardır ve onları "
+"Mageia sisteminde kullanılabilecek binlerce paket vardır ve onları "
"hep aklınızda tutamazsınız.\n"
"\n"
"CD'den kurulum yapıyorsanız önce elinizde hangi CD'lerin bulunduğunu\n"
@@ -345,10 +356,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -382,8 +393,8 @@ msgstr ""
"\n"
"<ÖNEMLİ> İster bilerek ister belli bir grubun parçası olarak, sunucu\n"
"bölümünden seçtiğiniz hizmetleri gerçekten kullanıp kullanmak istemediğiniz\n"
-"ayrıca sorulacaktır. Mandriva Linux başlatıldığında kurulu olan hizmetlerin\n"
-"herbiri öntanımlı olarak başlatılır. Onlar Mandriva Linux dağıtıma girerken\n"
+"ayrıca sorulacaktır. Mageia başlatıldığında kurulu olan hizmetlerin\n"
+"herbiri öntanımlı olarak başlatılır. Onlar Mageia dağıtıma girerken\n"
"kılavuzlarından güvenli oldukları anlaşılarak seçilmiş bile olsalar,\n"
"dağıtımdan sonra bir takım güvenlik açıkları keşfedilmiş olabilir.\n"
"Bir hizmetin ne sunduğu hakkında bir fikriniz yoksa ya da neden kurmak\n"
@@ -482,7 +493,7 @@ msgstr ""
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Donanım saati GMT olarak ayarla"
#: ../help.pm:213
#, c-format
@@ -508,7 +519,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -572,6 +583,12 @@ msgid ""
"monitor connected to your machine. If it is not correct, you can choose\n"
"from this list the monitor which is connected to your computer."
msgstr ""
+"Monitör\n"
+"\n"
+" Normalde kurulum aracı makinenize bağlı olan monitörü kendiliğinden "
+"algılar ve yapılandırır.\n"
+"Doğru ayarlama yapılmamışsa, bilgisayarınıza bağlı olan monitörü bu listeden "
+"seçebilirsiniz."
#: ../help.pm:298
#, c-format
@@ -583,6 +600,13 @@ msgid ""
"able to make changes after the installation). A sample of the chosen\n"
"configuration is shown in the monitor picture."
msgstr ""
+"Çözünürlük\n"
+"\n"
+" Burada ekran kartınız için uygun olan çözünürlükleri ve renk "
+"derinliklerini seçebilirsiniz. İhtiyacınıza\n"
+"en uygun olanını seçin (kurulum sonrasında değişiklik yapabilirsiniz). "
+"Seçilen yapılandırma\n"
+"örneği monitör resminde görüntülenir."
#: ../help.pm:306
#, c-format
@@ -591,9 +615,12 @@ msgid ""
"or without 3D acceleration, you're asked to choose the server which best\n"
"suits your needs."
msgstr ""
+"Ekran kartınız için farklı sunucuların mümkün olduğu durumlarda, 3B "
+"hızlandırma etkin veya devredışı,\n"
+"ihtiyaçlarınıza en uygun sunucuyu seçmeniz istenir."
#: ../help.pm:311
-#, fuzzy, c-format
+#, c-format
msgid ""
"Options\n"
"\n"
@@ -602,49 +629,50 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
-"Son olarak açılış sırasında grafik arayüzle başlamak isteyip istemediğiniz\n"
-"sorulacaktır. Yapılandırmanızı denemeyi seçmemiş bile olsanız bu soru yine "
-"de\n"
-"sorulacaktır. Ekranınızı iyi yapılandıramamışsanız ya da makinanızın bir\n"
-"sunucu rolü üstlenmesini seçmişseniz bu soruya \"Hayır\" cevabı vermeniz\n"
-"önerilir."
+"Seçenekler\n"
+"\n"
+" Bu adımlar önyüklemede makinenizin grafiksel arayüze kendiliğinden "
+"geçmesini isteyip istemediğinizi\n"
+"seçmenizi sağlar. Elbette, makineniz bir sunucu olarak çalışacaksa veya "
+"görüntü almayı başaramadıysanız\n"
+"\"%s\" seçeneğini işaretleyebilirsiniz."
#: ../help.pm:319
-#, fuzzy, c-format
+#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -653,15 +681,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -674,69 +701,73 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Bu noktada, Mandriva Linux işletim sisteminizi sabit diskinizde\n"
-"nereye kuracağınızı seçmeniz gerekiyor. Diskiniz boşsa, ya da\n"
-"halihazırda bir işletim sistemi diskin tamamını kullanıyorsa\n"
-"diski bölümlendirmeniz gerekmektedir. Temel olarak, bir diski\n"
-"bölümlendirmek, Mandriva Linux sistemini kurabilmek için onu\n"
-"mantıksal olarak bölmek ve böylece boş alan oluşturmak anlamına\n"
+"Bu noktada, Mageia işletim sisteminizi sabit diskinizde nereye kuracağınızı "
+"seçmeniz\n"
+"gerekiyor. Diskiniz boşsa, ya da halihazırda bir işletim sistemi diskin "
+"tamamını kullanıyorsa\n"
+"diski bölümlendirmeniz gerekmektedir. Temel olarak, bir diski "
+"bölümlendirmek, Mageia sistemini\n"
+"kurabilmek için onu mantıksal olarak bölmek ve böylece boş alan oluşturmak "
+"anlamına\n"
"gelir.\n"
"\n"
-"Bölümlendirme işlemi gerellikle geri alınamaz ve zaten kurulu bir\n"
-"işletim sisteminiz var ise bilgi kaybına yol açabilir. Bu işlem, eğer\n"
-"tecrübesizseniz, korkutucu ve stresli bir iş olabilir. Mandriva Linux,\n"
-"bu işlemi oldukça kolaylaştıran bir sihirbaz sunmaktadır.Başlamadan\n"
-"önce lütfen aşağıdaki okumak için zaman ayrın.\n"
+"Bölümlendirme işlemi genellikle geri alınamaz ve zaten kurulu bir işletim "
+"sisteminiz var ise bilgi kaybına yol\n"
+"açabilir. Bu işlem, eğer tecrübesizseniz, korkutucu ve stresli bir iş "
+"olabilir. Şansınıza, DrakX bu işlemi\n"
+"oldukça kolaylaştıran bir sihirbaz sunmaktadır.Başlamadan önce lütfen "
+"aşağıdaki okumak için zaman ayrın.\n"
"\n"
-"Sabit disk yapınıza bağlı olarak, birkaç seçenek mevcut: \n"
+"Sabit disk yapınıza bağlı olarak, birkaç seçenek mevcuttur: \n"
"\n"
-" * \"%s\": bu seçenek boş sabit disk(ler)iniz üzerinde otomatik "
-"bölümlendirme\n"
-"gerçeklerştirir. Bu seçeneği seçerseniz konu hakkında soru sorulmayacak\n"
+" * \"%s\": Bu seçenek boş sabit disk(ler)iniz üzerinde otomatik bölümlendirme "
+"gerçekleştirir. Bu seçeneği\n"
+"seçerseniz konu hakkında soru sorulmayacaktır.\n"
"\n"
-" * \"%s\" sihirbaz sabit diskiniz üstünde bir ya da daha fazla Linux bölümü\n"
-"buldu. Eğer bunları kullanmak istiyorsanız bu seçeneği kullanın. Sonra ki\n"
-"adımda bu bölümler ile ilişkili bağlama noktaları seçmeniz istenecek.\n"
+" * \"%s\": Sihirbaz sabit diskiniz üstünde bir ya da daha fazla Linux bölümü "
+"buldu. Bunları kullanmak istiyorsanız\n"
+"bu seçeneği kullanın. Sonraki adımda bu bölümler ile ilişkili bağlama "
+"noktaları seçmeniz istenecektir.\n"
"Bağlama noktaları öntanımlı olarak seçilir ve genellikle olduğu gibi "
-"bırakmak\n"
-"en iyisidir.\n"
-"\n"
-" * \"%s\": eğer sisteminizde Microsoft Windows kurulu ve tük disk "
-"kapasitesini\n"
-"kullanıyorsa Linux'un kullanabilmesi için yer açmanız gerekecektir. Bunun "
-"için,\n"
-"Microsoft Window disk bölümünü ve bilgileri silebilir (``Tüm Diski Sil''e "
-"bakın)\n"
-"yada Microsoft Windows FAT bölümünüzü yeniden boyutlandırabilirsiniz. Bu\n"
-"işlem sırasında eğer Windows bölümünüzü birleştirmiş ve biçimi FAT ise\n"
-"herhangi bir veri kaybı yaşamazsınız. Verilerinizi yedeklemeniz şiddetle "
-"önerilir.\n"
-"Eğer aynı bilgisayarda hem Mandriva Linux hem de Windows kullanamk\n"
-"istiyorsanız bu seçeneği seçmeniz önerilir.\n"
-"\n"
-" Bu seçeneği seçmeden önce unutmayın ki işlem tamamlandığında Microsoft\n"
-"Windows disk bölümünüz küçülmüş olacak. Yeni yazılımları yüklemek ya da "
-"kişisel\n"
-"verilerinizi saklamak için Microsoft Windows altında daha az boş alanınız "
-"olacak.\n"
-"\n"
-" * \"%s\": Sabit diskinizde bulunan tüm bilgileri silmek ve yeni bir "
-"Mandriva Linux\n"
-"kurulumu yapmak için bu seçeneği seçin. Lütfen bu seçeneği kullanırken "
-"dikkatli\n"
-"olun, çünkü onayladıktan sonra geri alma şansınız bulunmuyor.\n"
-"\n"
-" !! Eğer bu seçeneği seçerseniz sabit diskinizdeki tüm bilgi "
-"silinecektir. !!\n"
-"\n"
-" * \"%s\": Bu seçenek tüm sabit diski silecek ve disk bölümlerini baştan "
-"oluşturacak.\n"
-"Diskinizdeki tüm bilgiler silinecektir.\n"
-"\n"
-" !! Eğer bu seçeneği seçerseniz sabit diskinizdeki tüm bilgileri "
-"kaybedeceksiniz. !!\n"
-"\n"
-" * \"%s\": Sabit diskinizi kendiniz bölümlendirmek istiyorsanız bu seçeneği "
+"bırakmak en iyisidir.\n"
+"\n"
+" * \"%s\": Sisteminizde Microsoft Windows kurulu ve tüm disk alanını "
+"kullanıyorsa GNU/Linux 'un\n"
+"kullanabilmesi için yer açmanız gerekecektir. Bunun için, Microsoft Window "
+"disk bölümünü ve bilgilerini\n"
+"tümüyle silebilir (``Tüm Diski Sil''e bakın) ya da Microsoft Windows FAT "
+"veya NTFS bölümünüzü yeniden\n"
+"boyutlandırabilirsiniz. Bu işlem sırasında eğer Windows bölümünüzü "
+"birleştirmişseniz herhangi bir veri\n"
+"kaybı yaşamazsınız. Verilerinizi yedeklemeniz şiddetle önerilir. Aynı "
+"bilgisayarda hem Mageia hem de\n"
+"Windows kullanmak istiyorsanız bu seçeneği seçmeniz önerilir.\n"
+"\n"
+" Bu seçeneği seçmeden önce unutmayın ki işlem tamamlandığında Microsoft "
+"Windows\n"
+"disk bölümünüz küçülmüş olacak. Yeni yazılımları yüklemek ya da kişisel "
+"verilerinizi saklamak için\n"
+"Microsoft Windows altında daha az boş alanınız olacaktır.\n"
+"\n"
+" * \"%s\": Sabit diskinizde bulunan tüm bilgileri silmek ve yeni bir Mageia "
+"kurulumu yapmak için\n"
+"bu seçeneği seçin. Lütfen bu seçeneği kullanırken dikkatli olun, çünkü "
+"onayladıktan sonra geri alma\n"
+"şansınız bulunmuyor.\n"
+"\n"
+" !! Eğer bu seçeneği seçerseniz sabit diskinizdeki tüm bilgi silinecektir. "
+"!!\n"
+"\n"
+" * \"%s\": Bu seçenek tüm sabit disk alanı Microsoft Windows tarafından "
+"alınmışsa görüntülenir.\n"
+"Bu seçeneği seçmek basitçe disk üzerindeki herşeyi silecek ve en baştan yeni "
+"bir bölümlendirme\n"
+"oluşturacaktır.\n"
+"\n"
+" !! Eğer bu seçeneği seçerseniz sabit diskinizdeki tüm bilgi silinecektir. "
+"!!\n"
+"\n"
+"* \"%s\": Sabit diskinizi kendiniz bölümlendirmek istiyorsanız bu seçeneği "
"seçin.\n"
"Dikkati olun -- oldukça güçlü bir seçenektir ama veri kaybetmek oldukça "
"kolaydır.\n"
@@ -756,7 +787,7 @@ msgstr "Geçerli bölümlendirmeyi kullan"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Microsoft Windows® bölümündeki boş alan kullanılsın"
#: ../help.pm:370
#, c-format
@@ -801,8 +832,7 @@ msgid ""
"/dev/fd0\"."
msgstr ""
"Buraya kadar geldiyseniz kurulum tamamlanmış ve GNU/Linux sisteminizi\n"
-"kullanmaya hazırsınız demektir. \"TAMAM\" düğmesine tıkladığınızda "
-"sisteminiz\n"
+"kullanmaya hazırsınız demektir. \"TAMAM\" düğmesine tıkladığınızda sisteminiz\n"
"yeniden başlatılacaktır. Hem Windows hem de GNU/Linux kullanımını "
"seçtiyseniz\n"
"makinanızın her açılışında bu sistemlerden biri için tercihinizi\n"
@@ -811,16 +841,14 @@ msgstr ""
"\"Gelişmiş\" düğmesine (Uzman kipinde görünür) tıkladığınızda size iki\n"
"seçenek sunulacaktır:\n"
"\n"
-" * \"Otomatik kurulum disketi oluşturulsun\": yaptığınız kuruluma benzer "
-"bir\n"
+" * \"Otomatik kurulum disketi oluşturulsun\": yaptığınız kuruluma benzer bir\n"
" kurulumu herhangi bir yardım gerekmeksizin otomatik olarak "
"yapılabilmesini\n"
" sağlayacak bir kurulum disketi oluşturabilirsiniz.\n"
"\n"
" Bu seçeneği kullanmaya karar verdiğinizde size iki seçenek sunulacaktır:\n"
"\n"
-" * \"Etkileşimli\": bu sadece disk bölümlemesinin etkileşimli olduğu "
-"yarı\n"
+" * \"Etkileşimli\": bu sadece disk bölümlemesinin etkileşimli olduğu yarı\n"
" otomatik kurulumdur.\n"
"\n"
" * \"Otomatik\": sabit diskin tamamen silinip yeniden yazılması\n"
@@ -833,8 +861,7 @@ msgstr ""
" * \"Paket seçim listesini kaydet\"(*): kurulum sırasında seçtiğiniz\n"
" paketlerin listesi kaydedilir. Bir başka kurulum sırasında disketi\n"
" sürücüye yerleştirdikten sonra [F1] tuşuna bastıktan sonra\n"
-" »linux defcfg=\"floppy\"« yazarak kurulumu yardım ekranına kadar "
-"ilerletin\n"
+" »linux defcfg=\"floppy\"« yazarak kurulumu yardım ekranına kadar ilerletin\n"
"\n"
" (*) Bu seçenek için FAT biçemli bir diskete ihtiyacınız olacak. Bu "
"disketi\n"
@@ -880,7 +907,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -905,7 +932,7 @@ msgstr ""
"\n"
"Bölümleri biçemlendirmeye hazır olduğunuzda \"Tamam\"'a tıklayın.\n"
"\n"
-"Mandriva Linux sisteminizi kurmak isteyeceğiniz başka bölümler de seçmek\n"
+"Mageia sisteminizi kurmak isteyeceğiniz başka bölümler de seçmek\n"
"isterseniz \"İptal\"'e basın.\n"
"\n"
"\"Gelişmiş\" düğmesine tıkladıktan sonra isterseniz, sabit diskinizindeki\n"
@@ -914,7 +941,7 @@ msgstr ""
#: ../help.pm:437
#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -926,7 +953,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Mandriva Linux kurulumunuz sırasında dağıtımdan sonra güncellenmiş bazı "
+"Mageia kurulumunuz sırasında dağıtımdan sonra güncellenmiş bazı "
"paketler, düzeltmeler ve çözümlenmiş güvenlik unsurlarının olup olmadığını "
"internet bağlantınız üzerinden kontrol edip varsa indirip kurabilir. Çalışan "
"bir internet bağlantınız varsa \"Evet\" seçebilir, yoksa \"Hayır\" seçerek "
@@ -947,7 +974,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -972,21 +999,21 @@ msgstr "Güvenlik Yöneticisi"
#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1002,21 +1029,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1033,16 +1060,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Bu noktada, Mandriva Linux işletim sisteminizi sabit diskinizde nereye\n"
+"Bu noktada, Mageia işletim sisteminizi sabit diskinizde nereye\n"
"kuracağınızı seçmeniz gerekiyor. Bölümler önceki bir kurulumda ya da bir\n"
"başka bölümlendirme aracıyla önceden tanımlanmışsa eski bölümlerinizi\n"
"kullanabilirsiniz. Aksi takdirde, sabit disk bölümlerinin tanımlanması\n"
@@ -1113,14 +1134,6 @@ msgstr ""
"Başka dosya sistemleri hakkında bilgi edinmek için \"Başvuru Kılavuzu"
"\"ndaki\n"
"ext2fs bölümünü okuyunuz.\n"
-"\n"
-"Bir PPC makina üzerine kurulum yapıyorsanız, yaboot önyükleyicisi "
-"tarafından\n"
-"kullanılmak üzere en az 1MB lık küçük bir HFS \"önyükleme\" bölümü "
-"oluşturmak\n"
-"isteyeceksiniz. Bu disk bölümünü biraz daha büyük, örneğin 50MB yaparsanız\n"
-"bir yedek çekirdeğin ve kurtarma açılışı gereksinimleri için ramdisk\n"
-"görüntüsünün saklanacağı kullanışlı bir alan elde edebilirsiniz."
#: ../help.pm:526
#, c-format
@@ -1160,37 +1173,37 @@ msgstr "Normal/Uzman kipleri arasında geçiş yap"
#: ../help.pm:536
#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
-"Sabit diskinizde birden fazla Windows bölümü bulundu. Yeni Mandriva Linux\n"
+"Sabit diskinizde birden fazla Windows bölümü bulundu. Yeni Mageia\n"
"işletim sisteminizi kurmak için hangi bölümün boyutunu değiştirmek\n"
"istiyorsunuz?\n"
"\n"
@@ -1242,23 +1255,22 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -1309,8 +1321,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1463,7 +1474,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1494,7 +1505,7 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1515,11 +1526,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Burada kullanacağınız yazdırma sistemini seçeceksiniz. Diğer işletim\n"
-"sistemleri bir seçenek sunarken, Mandriva Linux size iki ayrı seçenek\n"
+"sistemleri bir seçenek sunarken, Mageia size iki ayrı seçenek\n"
"sunmaktadır. İki tip yazdırma sistemide özel yapılandırma türü için en "
"iyidir.\n"
"\n"
@@ -1571,7 +1582,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1640,8 +1651,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1658,7 +1668,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1666,9 +1676,9 @@ msgid ""
msgstr ""
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "ISDN kartı"
+msgstr "TV kartı"
#: ../help.pm:809
#, c-format
@@ -1681,26 +1691,26 @@ msgid "Graphical Interface"
msgstr "Grafiksel Arabirim"
#: ../help.pm:861
-#, fuzzy, c-format
+#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Lütfen yeni Mandriva Linux disk bölümünüzü kurmak için silmek istediğiniz\n"
+"Lütfen yeni Mageia disk bölümünüzü kurmak için silmek istediğiniz\n"
"sabit diski seçin. Üzerindeki tüm verilerin yok olacağını ve geriye dönüşün\n"
"mümkün olmayacağını unutmayın!"
#: ../help.pm:866
-#, fuzzy, c-format
+#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Bu sabit disk üzerindeki tüm verinin ve bölümlerin silinmesini istiyorsanız\n"
"\"%s\" tuşuna tıklayın. Dikkatli olun, \"%s\" tuşuna tıkladıktan\n"
diff --git a/perl-install/install/help/po/uk.po b/perl-install/install/help/po/uk.po
index 7c1550ec4..548f3b3be 100644
--- a/perl-install/install/help/po/uk.po
+++ b/perl-install/install/help/po/uk.po
@@ -1,39 +1,40 @@
# translation of DrakX-uk.po to ukrainian
# translation of DrakX.po to ukrainian
-# $Id: uk.po 26602 2006-04-22 07:43:48Z fwang $
# Copyright (C) 2000,2003, 2004, 2005 Free Software Foundation, Inc.
+#
# Dmytro Kovalov <kov@tokyo.email.ne.jp>, 2000.
# Taras Boychuk <btr1@torba.com>, 2003, 2004.
# Taras Boychuk <btr1@mail.ru>, 2004, 2003.
# Taras Boychuk <btr1@ukrpost.net>, 2004, 2005.
-#
+# Yuri Chornoivan <yurchor@ukr.net>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: DrakX-uk\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
-"PO-Revision-Date: 2005-03-01 01:29+0200\n"
-"Last-Translator: Taras Boychuk <btr1@ukrpost.net>\n"
-"Language-Team: ukrainian <uk@li.org>\n"
+"PO-Revision-Date: 2012-06-29 16:20+0300\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Ukrainian <kde-i18n-uk@kde.org>\n"
+"Language: uk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Lokalize 1.5\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
#: ../help.pm:14
#, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
-"Перш, ніж продовжувати, прочитайте уважно умови ліцензії. Вона\n"
-"стосується всього дистрибутиву Мандріва лінакс. Якщо Ви\n"
-"погоджуєтесь з умовами ліцензії, помітьте \"%s\". Якщо ні,\n"
-"то натисніть \"%s\", щоб перезавантажити комп'ютер."
+"Перш ніж продовжувати, прочитайте уважно умови ліцензії. Вона\n"
+"стосується всього дистрибутива Mageia. Якщо ви\n"
+"погоджуєтесь з умовами ліцензії, позначте пункт «%s». Якщо ні,\n"
+"натисніть «%s», щоб перезавантажити комп'ютер."
#: ../help.pm:20
#, c-format
@@ -77,53 +78,53 @@ msgid ""
msgstr ""
"GNU/Linux - багатокористувацька система, це означає, що кожен з\n"
"користувачів може мати свої власні установки, власні файли, тощо. Щоб\n"
-"більше дізнатися про це, Ви можете прочитати Підручник користувача з\n"
+"більше дізнатися про це, ви можете прочитати Підручник користувача з\n"
"системи. Але на відміну від користувача Root, який є адміністратором\n"
-"системи, користувачі, яких Ви будете створювати на цьому кроці, не\n"
+"системи, користувачі, яких ви будете створювати на цьому кроці, не\n"
"мають права змінювати нічого в системі, крім своїх власних файлів і\n"
-"власної конфігурації. Ви маєте створити рахунок для хоча б одного\n"
-"єдиного користувача - для самого себе. Ви будете користуватися цим\n"
+"власної конфігурації. ви маєте створити рахунок для хоча б одного\n"
+"єдиного користувача - для самого себе. ви будете користуватися цим\n"
"рахунком для того, щоб виконувати щоденні задачі. І хоча це і дуже\n"
"зручно реєструватись в системі як Root, але одночасно це і дуже\n"
"небезпечно! Найменша помилка може призвести до того, що система буде\n"
-"неробочою. Якщо Ви помилитесь як звичайний користувач, Ви можете,\n"
+"неробочою. Якщо ви помилитесь як звичайний користувач, ви можете,\n"
"звичайно, втратити деякі свої дані, але не всю систему.\n"
"\n"
-"Перше поле запитує Ваше справжнє ім'я. Звичайно ж, воно не обов'язкове,\n"
-"Ви можете надрукувати все, що завгодно. DrakX візьме перше слово з цього\n"
-"поля і скопіює його в поле \"%s\", яке є ім'ям користувача, під яким "
+"Перше поле запитує ваше справжнє ім'я. Звичайно ж, воно не обов'язкове,\n"
+"ви можете надрукувати все, що завгодно. DrakX візьме перше слово з цього\n"
+"поля і скопіює його в поле «%s», яке є ім'ям користувача, під яким "
"користувач\n"
-"буде реєструватись у системі. Якщо захочете, Ви можете змінити це ім'я. \n"
-"Потім Вам потрібно ввести пароль. З міркувань безпеки системи пароль\n"
+"буде реєструватись у системі. Якщо захочете, ви можете змінити це ім'я. \n"
+"Потім вам потрібно ввести пароль. З міркувань безпеки системи пароль\n"
"звичайного (не root) користувача не є таким критичним, як пароль \n"
"адміністратора, але все одно немає причин для того, щоб нехтувати ним,\n"
"залишаючи його порожнім або надто простим: врешті-решт, це загрожує\n"
"Вашим власним файлам. \n"
"\n"
-"Після того, як Ви натиснете кнопку \"%s\", Ви можете додати ще багато \n"
+"Після того, як ви натиснете кнопку «%s», ви можете додати ще багато \n"
"інших користувачів. Додайте користувача для кожного з Ваших друзів:\n"
-"для тата й сестри, наприклад. Після того, як Ви закінчили додавати\n"
-"користувачів, натисніть \"%s\".\n"
+"для тата й сестри, наприклад. Після того, як ви закінчили додавати\n"
+"користувачів, натисніть «%s».\n"
"\n"
-"Натиснувши на кнопку \"%s\", Ви зможете змінити типову командну оболонку\n"
+"Натиснувши на кнопку «%s», ви зможете змінити типову командну оболонку\n"
"для кожного користувача (типова оболонка - bash). \n"
"\n"
-"Коли Ви закінчите додавати користувачів, Вам буде запропоновано вибрати\n"
-"користувача, який буде автоматично реєструватися в системі при стартуванні\n"
-"комп'ютера. Якщо така можливість Вас цікавить (і не надто турбує про\n"
+"Коли ви закінчите додавати користувачів, вам буде запропоновано вибрати\n"
+"користувача, який буде автоматично реєструватися в системі при запуску\n"
+"комп'ютера. Якщо така можливість вас цікавить (і не надто турбує про\n"
"локальну безпеку), виберіть користувача і менеджер вікон, тоді натисніть "
"на \n"
-"\"%s\". Якщо Вас така можливість не цікавить, відмініть вибір \"%s\"."
+"«%s». Якщо вас така можливість не цікавить, скасуйте вибір «%s»."
#: ../help.pm:54
#, c-format
msgid "User name"
-msgstr ""
+msgstr "Ім'я користувача"
#: ../help.pm:54
#, c-format
msgid "Accept user"
-msgstr ""
+msgstr "Прийняти користувача"
#: ../help.pm:54
#, c-format
@@ -133,7 +134,8 @@ msgstr "Ви хочете використовувати цю можливіст
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -143,45 +145,49 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Тут перелічені вже існуючі розділи, знайдені на Вашому твердому\n"
-"диску. Ви можете залишити вибір, зроблений Помічником, він підходить\n"
-"для більшості випадків встановлення. Якщо Ви робите якісь зміни, то "
+"диску. ви можете залишити вибір, зроблений Помічником, він підходить\n"
+"для більшості випадків встановлення. Якщо ви робите якісь зміни, то "
"потрібно\n"
"як мінімум створити кореневу файлову систему (/). Не виділяйте\n"
-"для цього занадто малий розділ, бо інакше Ви не зможете встановити\n"
-"всі потрібні Вам програми. Якщо Ви бажаєте зберігати всі свої дані в\n"
+"для цього занадто малий розділ, бо інакше ви не зможете встановити\n"
+"всі потрібні вам програми. Якщо ви бажаєте зберігати всі свої дані в\n"
"окремому розділі, потрібно буде також створити розділ \"/home\" (тільки у\n"
-"випадку, якщо Ви маєте більше одного розділа для Лінакса). \n"
+"випадку, якщо ви маєте більше одного розділу для Linux). \n"
"\n"
"Кожен розділ показано в такому вигляді: \"Назва\", \"Розмір\".\n"
"\n"
-"Назва розшифровується так: \"тип твердого диску\", \"номер твердого\n"
+"Назва розшифровується так: \"тип жорсткого диска\", \"номер твердого\n"
"диску\", \"номер розділу на диску\", (наприклад: \"hda1\").\n"
"\n"
-"\"Тип твердого диску\" - це \"hd\", якщо Ви маєте диск типу IDE, і \"sd\",\n"
-"якщо Ви маєте твердий диск типу SCSI.\n"
+"\"Тип жорсткого диска\" - це \"hd\", якщо ви маєте диск типу IDE, і \"sd\",\n"
+"якщо ви маєте твердий диск типу SCSI.\n"
"\n"
-"\"Номер твердого диску\" - це завжди літера після \"hd\" чи \"sd\". Для\n"
+"\"Номер жорсткого диска\" - це завжди літера після \"hd\" чи \"sd\". Для\n"
"дисків типу IDE це:\n"
"\n"
" * \"a\" - головний диск (master) на першому контролері IDE,\n"
@@ -192,35 +198,33 @@ msgstr ""
"\n"
" * \"d\" - вторинний диск на другому контролері IDE.\n"
"\n"
-"Для SCSI дисків \"a\" означає \"головний диск\", \"b\" - другорядний диск, "
-"і\n"
-"т.д. ..."
+"Для SCSI дисків \"a\" означає \"головний диск\", \"b\" - другорядний диск\n"
+"тощо."
#: ../help.pm:88
#, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Дистрибутив Мандріва лінакс розміщений на кількох компакт-дисках.\n"
+"Дані дистрибутива Mageia розміщено на кількох компакт-дисках.\n"
"Якщо вибраний пакунок знаходиться на іншому диску, DrakX викине \n"
"поточний компакт-диск і попросить вставити потрібний. Якщо у вас немає\n"
-"потрібного диску під руками, просто натисніть \"%s\", пакунок не буде\n"
+"потрібного диску під руками, просто натисніть «%s», пакунок не буде\n"
"встановлено."
#: ../help.pm:95
-#, fuzzy, c-format
+#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -270,59 +274,59 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"Тепер час вибрати, які програми Ви хочете встановити в своїй\n"
-"системі. Мандріва лінакс має тисячі програмних пакунків, і щоб спростити\n"
+"Тепер час вибрати, які програми ви хочете встановити в своїй\n"
+"системі. Mageia має тисячі програмних пакунків, і щоб спростити\n"
"керування ними, пакунки розміщено в групи подібних програм.\n"
"\n"
"Пакунки розсортовано в групи відповідно до способу використання Вашої\n"
-"машини. Мандріва Лінакс має чотири попередньо налаштовані типи\n"
-"встановлення. Ви можете комбінувати і підбирати програми з різних\n"
+"машини. Mageia має чотири попередньо налаштовані типи\n"
+"встановлення. ви можете комбінувати і підбирати програми з різних\n"
"груп, і встановлення типу \"Робоча станція\"' може мати програми із групи\n"
"пакунків \"Розробник\".\n"
"\n"
-" * \"%s\": якщо Ви збираєтесь використовувати свою машину як робочу\n"
+" * «%s»: якщо ви збираєтесь використовувати свою машину як робочу\n"
"станцію, виберіть одну чи більше програм з цієї групи.\n"
"\n"
-" * \"%s\": якщо Ви збираєтесь використовувати цю машину для\n"
+" * «%s»: якщо ви збираєтесь використовувати цю машину для\n"
"програмування, виберіть відповідні пакунки з цієї групи. Спеціальна група\n"
"\"СБЛ\" налаштує систему таким чином, що вона міститиме якнайповнішу\n"
-"специфікацію Стандартної бази Лінакса.\n"
+"специфікацію Стандартної бази Linux.\n"
"\n"
" При виборі групи \"СБЛ\" встановиться ядро серії \"2.4\", на відміну від\n"
"\"2.6\", яке встановлюється типово. Ця зроблено для 100%% впевненості у\n"
-"сумісності з \"СБЛ\". Проте, якщо Ви не виберете групу \"СБЛ\", всеодно\n"
+"сумісності з \"СБЛ\". Проте, якщо ви не виберете групу \"СБЛ\", всеодно\n"
"отримаєте систему майже 100%%-сумісну з \"СБЛ\".\n"
"\n"
-" * \"%s\": якщо машина призначається для використання в якості\n"
-"сервера, виберіть додаткові сервіси, які Ви хочете встановити на своїй\n"
+" * «%s»: якщо машина призначається для використання в якості\n"
+"сервера, виберіть додаткові сервіси, які ви хочете встановити на своїй\n"
"машині.\n"
"\n"
-" * \"%s\": тут Ви можете вибрати графічне середовище собі до вподоби.\n"
-"Виберіть хоча б одне, якщо Ви хочете мати графічний інтерфейс.\n"
+" * «%s»: тут ви можете вибрати графічне середовище собі до вподоби.\n"
+"Виберіть хоча б одне, якщо ви хочете мати графічний інтерфейс.\n"
"\n"
"При пересуванні курсора над назвою групи буде висвічуватися текст із\n"
"коротким поясненням про групу.\n"
"\n"
-"Ви можете помітити \"%s\", що може використовуватися при добрих\n"
-"знаннях пакунків, або якщо Ви хочете мати повний контроль над тим,\n"
+"ви можете помітити «%s», що може використовуватися при добрих\n"
+"знаннях пакунків, або якщо ви хочете мати повний контроль над тим,\n"
"що встановлюєте.\n"
"\n"
-"Якщо Ви почали встановлення в режимі \"%s\", можете зняти вибір усіх\n"
+"Якщо ви почали встановлення в режимі «%s», можете зняти вибір усіх\n"
"груп і не встановлювати жодних нових пакунків. Це можна\n"
"використовувати при відновленні або поновленні системи.\n"
"\n"
-"Якщо Ви зняли вибір усіх груп під час підготовки звичайного\n"
+"Якщо ви зняли вибір усіх груп під час підготовки звичайного\n"
"встановлення (на відміну від поновлення), появиться діалогове\n"
"вікно з різними параметрами для мінімального встановлення:\n"
"\n"
-" * \"%s\":встановити найменшу можливу кількість пакунків, щоб мати\n"
+" * «%s»:встановити найменшу можливу кількість пакунків, щоб мати\n"
"працюючу графічну стільницю.\n"
"\n"
-" * \"%s\": встановлює основну систему плюс основні інструменти і їх\n"
+" * «%s»: встановлює основну систему плюс основні інструменти і їх\n"
"документацію. Цей спосіб використовується для встановлення сервера.\n"
"\n"
-" * \"%s\": встановить абсолютно найменшу кількість пакунків, необхідних,\n"
-"щоб отримати працюючу систему Лінакс. При цьому встановленні Ви\n"
+" * «%s»: встановить абсолютно найменшу кількість пакунків, необхідних,\n"
+"щоб отримати працюючу систему Linux. При цьому встановленні Ви\n"
"будете мати тільки інтерфейс командного рядка. Загальний розмір цього\n"
"встановлення становить біля 65 мегабайтів."
@@ -355,10 +359,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -378,28 +382,28 @@ msgid ""
"another installation. See the second tip of the last step on how to create\n"
"such a floppy."
msgstr ""
-"Якщо Ви вказали програмі встановлення, що хочете мати індивідуальний\n"
-"вибір пакунків, Вам буде показано повне дерево пакунків, зібраних за\n"
-"групами і підгрупами. Переглядаючи дерево, Ви зможете вибрати повні\n"
+"Якщо ви вказали програмі встановлення, що хочете мати індивідуальний\n"
+"вибір пакунків, вам буде показано повне дерево пакунків, зібраних за\n"
+"групами і підгрупами. Переглядаючи дерево, ви зможете вибрати повні\n"
"групи, підгрупи та окремі пакунки.\n"
"\n"
-"Кожного разу, коли Ви вибираєте пакунок в дереві, справа з'являється\n"
+"Кожного разу, коли ви вибираєте пакунок в дереві, справа з'являється\n"
"підказка про призначення пакунка.\n"
"\n"
"!! Якщо було вибрано серверний пакунок, чи то шляхом спеціального\n"
"вибору індивідуального пакунка, чи він є складовою частиною групи\n"
-"пакунків, Вам буде задане запитання, чи Ви справді бажаєте встановити\n"
-"ці сервери. В Мандріва лінакс всі встановлені сервери автоматично\n"
+"пакунків, вам буде задане запитання, чи ви справді бажаєте встановити\n"
+"ці сервери. В Mageia всі встановлені сервери автоматично\n"
"запускаються при завантаженні системи. Навіть, якщо на час придбання\n"
"системи не було відомо жодних проблем з безпекою даних серверів,\n"
"можливо, що після встановлення системи такі проблеми буде виявлено.\n"
-"Якщо Ви не знаєте призначення конкретного сервера або з якою метою\n"
-"його встановлено, натисніть \"%s\". Якщо Ви натиснете \"%s\", буде\n"
+"Якщо ви не знаєте призначення конкретного сервера або з якою метою\n"
+"його встановлено, натисніть «%s». Якщо ви натиснете «%s», буде\n"
"встановлено перелічені сервери і вони будуть стартувати автоматично під\n"
"час завантаження !!\n"
"\n"
-"Параметр \"%s\" використовується, щоб заборонити діалог попередження,\n"
-"який появляється, як тільки програма встановлення автоматично вибирає\n"
+"Параметр «%s» використовується, щоб заборонити показ вікна попередження,\n"
+"яке буде з’являється, щойно програма встановлення автоматично вибирає\n"
"пакунки для задоволення залежностей. Деякі пакунки мають відношення\n"
"до інших так, що встановлення пакунка вимагає, щоб інші програми також були\n"
"встановлені. Програма встановлення може визначити, які пакунки необхідні\n"
@@ -445,14 +449,14 @@ msgstr ""
"запускатися при старті системи.\n"
"\n"
"При виборі служби появляється короткий текст з поясненням про неї.\n"
-"Проте, якщо Ви не впевнені, чи потрібно використовувати якусь службу,\n"
+"Проте, якщо ви не впевнені, чи потрібно використовувати якусь службу,\n"
"залишіть запропонований вибір.\n"
"\n"
-"!! Будьте особливо уважними, якщо Ви збираєтесь використовувати цю\n"
+"!! Будьте особливо уважними, якщо ви збираєтесь використовувати цю\n"
"систему як сервер: можливо, не потрібно стартувати служби, які Вам\n"
"не потрібні. Пам'ятайте, будь ласка, що деякі увімкнені служби можуть\n"
"бути небезпечними на сервері. Одним словом, вибирайте тільки ті служби,\n"
-"які Вам дійсно необхідні. !!"
+"які вам дійсно необхідні. !!"
#: ../help.pm:209
#, c-format
@@ -470,24 +474,24 @@ msgid ""
"choose a time server located near you. This option actually installs a time\n"
"server which can be used by other machines on your local network as well."
msgstr ""
-"GNU/Linux оперує часом по GMT (середній час по Ґрінвічу) і переводить\n"
-"його в місцевий час відповідно до часового поясу, який Ви вказали.\n"
-"Якщо годинник на Вашій материнській платі встановлено в локальний\n"
-"час, Ви можете відмінити \"%s\", що дасть змогу GNU/Linux знати, що\n"
+"GNU/Linux оперує часом GMT (середній час за Гринвічем) і переводить\n"
+"його в місцевий час відповідно до часового поясу, який ви вказали.\n"
+"Якщо годинник на вашій материнській платі встановлено в локальний\n"
+"час, ви можете відмінити «%s», що дасть змогу GNU/Linux знати, що\n"
"системний годинник і апаратний годинник встановлені на один часовий\n"
"пояс. Це використовується, коли машина також може завантажуватися\n"
"в іншу операційну систему.\n"
"\n"
-"Параметр \"%s\" автоматично наводить годинник шляхом під'єднання до\n"
-"віддаленого серверу часу в Інтернеті. Щоб ця можливість працювала, Ви\n"
-"повинні мати працююче з'єднання з Інтернетом. Найкраще вибрати сервер\n"
-"часу, розташований біля Вас. Цей параметр встановлює сервер часу, який\n"
-"також може використовуватися іншими машинами у Вашій місцевій мережі."
+"Параметр «%s» автоматично наводить годинник шляхом під'єднання до\n"
+"віддаленого серверу часу в інтернеті. Щоб ця можливість працювала, Ви\n"
+"повинні мати працююче з'єднання з інтернетом. Найкраще вибрати сервер\n"
+"часу, розташований біля вас. Цей параметр встановлює сервер часу, який\n"
+"також може використовуватися іншими машинами у вашій місцевій мережі."
#: ../help.pm:213
#, c-format
msgid "Hardware clock set to GMT"
-msgstr ""
+msgstr "Апаратний годинник налаштовано на Гринвічський час"
#: ../help.pm:213
#, c-format
@@ -510,19 +514,19 @@ msgstr ""
"Графічна карта\n"
"\n"
" Програма встановлення в нормальному режимі автоматично знаходить\n"
-"і налаштовує графічну карту, встановлену на Вашій машині. Якщо цього не\n"
-"відбувається, Ви можете вибрати із списку карту, яку Ви встановили.\n"
+"і налаштовує графічну карту, встановлену на вашій машині. Якщо цього не\n"
+"відбувається, ви можете вибрати із списку карту, яку ви встановили.\n"
"\n"
-" У випадку, якщо Ваша карта підтримує різні сервери з або без\n"
-"3D-прискорення, Вам буде надана можливість вибрати сервер, який найбільше\n"
-"Вам підходить."
+" У випадку, якщо ваша карта підтримує різні сервери з або без\n"
+"3D-прискорення, вам буде надано можливість вибрати сервер, який найбільше\n"
+"вам підходить."
#: ../help.pm:234
#, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -578,19 +582,19 @@ msgid ""
msgstr ""
"X (для системи X Window) є серцем графічного інтерфейсу GNU/Linux,\n"
"від якого залежать всі графічні середовища (KDE, GNOME, AfterStep,\n"
-"WindowMaker, і т.і.), пов'язані з Мандріва лінакс.\n"
+"WindowMaker тощо), пов'язані з Mageia.\n"
"\n"
-"Вам буде представлено список різних параметрів для налаштування,\n"
+"вам буде представлено список різних параметрів для налаштування,\n"
"щоб отримати оптимальний графічний дисплей.\n"
"\n"
"Графічна карта\n"
"\n"
" Програма встановлення автоматично визначає і налаштовує графічну\n"
-"карту, встановлену в машину. Якщо вона визначена неправильно, Ви можете\n"
+"карту, встановлену в машину. Якщо вона визначена неправильно, ви можете\n"
"вибрати із списку карту, яка дійсно встановлена.\n"
"\n"
-" У випадку, якщо Ваша карта підтримує різні сервери з або без 3D\n"
-"прискоренням, буде запропоновано вибрати сервер, який Вам найбільше\n"
+" У випадку, якщо ваша карта підтримує різні сервери з або без 3D\n"
+"прискоренням, буде запропоновано вибрати сервер, який вам найбільше\n"
"підходить.\n"
"\n"
"\n"
@@ -598,16 +602,16 @@ msgstr ""
"Монітор\n"
"\n"
" Програма встановлення автоматично визначає і налаштовує монітор,\n"
-"під'єднаний до Вашої машини. Якщо це зроблено неправильно, Ви можете\n"
-"вибрати із списку монітор, який дійсно під'єднано до Вашого комп'ютера.\n"
+"під'єднаний до Вашої машини. Якщо це зроблено неправильно, ви можете\n"
+"вибрати із списку монітор, який дійсно під'єднано до вашого комп'ютера.\n"
"\n"
"\n"
"\n"
"Роздільна здатність\n"
"\n"
-" Тут Ви можете вибрати роздільну здатність і кількість кольорів, які\n"
+" Тут ви можете вибрати роздільну здатність і кількість кольорів, які\n"
"підтримує Ваше обладнання. Підберіть величини, які найбільше Вас\n"
-"влаштовують (Ви матимите змогу їх змінити пізніше). Зразок вибраного\n"
+"влаштовують (ви матимете змогу їх змінити пізніше). Зразок вибраного\n"
"налаштування буде показано на моніторі.\n"
"\n"
"\n"
@@ -617,20 +621,20 @@ msgstr ""
" В залежності від обладнання цього пункту може не бути.\n"
"\n"
" Система спробує відкрити графічний екран з вибраною роздільністю.\n"
-"Якщо Ви зможете побачити повідомлення під час тесту і відповісте \"%s\",\n"
-"DrakX перейде до наступного кроку. Якщо Ви не зможете бачити\n"
+"Якщо ви зможете побачити повідомлення під час тесту і відповісте «%s»,\n"
+"DrakX перейде до наступного кроку. Якщо ви не зможете бачити\n"
"повідомлення, це означатиме, що певна частина автоматично визначеної\n"
"конфігурації неправильна, тест автоматично завершиться через 12\n"
-"секунд і Ви повернетесь назад в меню. Змінюйте налаштування, поки\n"
+"секунд і ви повернетесь назад в меню. Змінюйте налаштування, поки\n"
"не отримаєте коректний графічний дисплей.\n"
"\n"
"\n"
"\n"
"Параметри\n"
"\n"
-" Тут Ви можете вибрати, чи хочете Ви, щоб Ваша машина автоматично\n"
+" Тут ви можете вибрати, чи хочете Ви, щоб ваша машина автоматично\n"
"перемикалася в графічний інтерфейс при завантаженні. Зрозуміло, що\n"
-"Ви захочете вибрати \"%s\", якщо Ваша машина є сервером, або якщо Ви\n"
+"ви захочете вибрати «%s», якщо ваша машина є сервером, або якщо Ви\n"
"не змогли успішно налаштувати дисплей."
#: ../help.pm:291
@@ -645,7 +649,7 @@ msgstr ""
"Монітор\n"
"\n"
" Програма встановлення звичайно автоматично виявляє і налаштовує монітор,\n"
-"під'єднаний до Вашої машини. Якщо вона це зробила неправильно, Ви можете\n"
+"під'єднаний до Вашої машини. Якщо вона це зробила неправильно, ви можете\n"
"вибрати правильний монітор з цього списку."
#: ../help.pm:298
@@ -660,8 +664,8 @@ msgid ""
msgstr ""
"Роздільна здатність\n"
"\n"
-" Тут Ви можете вибрати роздільну здатність і глибину кольору.\n"
-"Виберіть величини, які Вас найбільше влаштовують (Ви зможете\n"
+" Тут ви можете вибрати роздільну здатність і глибину кольору.\n"
+"Виберіть величини, які Вас найбільше влаштовують (ви зможете\n"
"їх змінити після встановлення). Зразок вибраного налаштування\n"
"буде показано на моніторі."
@@ -672,8 +676,8 @@ msgid ""
"or without 3D acceleration, you're asked to choose the server which best\n"
"suits your needs."
msgstr ""
-"У випадку, якщо Ваша карта підтримує різні сервери, з або без 3D\n"
-"прискоренням, Вам буде запропоновано вибрати сервер, який Вам\n"
+"У випадку, якщо ваша карта підтримує різні сервери, з або без 3D\n"
+"прискоренням, вам буде запропоновано вибрати сервер, який Вам\n"
"найбільше підходить."
#: ../help.pm:311
@@ -689,46 +693,50 @@ msgstr ""
"Параметри\n"
"\n"
" Тут можна вказати, чи хочете Ви, щоб графічний інтерфейс вмикався\n"
-"автоматично при завантаженні системи. Вам потрібно вибрати \"%s\", якщо\n"
-"Ваша машина буде працювати сервером, або якщо Ви не змогли успішно\n"
+"автоматично при завантаженні системи. вам потрібно вибрати «%s», якщо\n"
+"ваша машина буде працювати сервером, або якщо ви не змогли успішно\n"
"налаштувати дисплей."
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -737,15 +745,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -758,67 +766,67 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"Тепер потрібно вирішити, де саме Ви б хотіли встановити систему\n"
-"Мандріва лінакс на твердому диску. Якщо твердий диск порожній, або\n"
+"Тепер потрібно вирішити, де саме ви б хотіли встановити систему\n"
+"Mageia на твердому диску. Якщо твердий диск порожній, або\n"
"якщо існуюча операційна система використовує весь простір, Вам\n"
"потрібно буде перерозподілити диск. Фактично перерозподіл твердого\n"
"диску полягає в логічному його розділенні, щоб створити місце для\n"
-"встановлення Мандріва Лінакса.\n"
+"встановлення Mageiaа.\n"
"\n"
-"Через те, що процес перерозбиття твердого диску звичайно є\n"
+"Через те, що процес перерозбиття твердого диска звичайно є\n"
"незворотнім і може призвести до втрати даних, якщо іншу операційну\n"
-"систему вже було встановлено, ця операція може бути відлякуючою\n"
-"і стресовою, якщо Ви є недосвідченим користувачем. На щастя, DrakX\n"
+"систему вже було встановлено, ця операція може видатися загрозливою\n"
+"і стресовою, якщо ви є недосвідченим користувачем. На щастя, DrakX\n"
"має помічника, який спрощує цей процес. Перед продовженням цього\n"
"кроку прочитайте до кінця цього розділу і, що головне, приділіть трохи "
"часу.\n"
"\n"
-"В залежності від конфігурації Вашого твердого диску можливі кілька \n"
+"В залежності від конфігурації вашого жорсткого диска можливі кілька \n"
"варіантів продовження:\n"
"\n"
-" * \"%s\". Цей режим виконує автоматичне розбиття на розділи Вашого\n"
-"порожнього диску (дисків). Якщо Ви вибрали цю команду, інших\n"
+" * «%s». Цей режим виконує автоматичне розбиття на розділи Вашого\n"
+"порожнього диску (дисків). Якщо ви вибрали цю команду, інших\n"
"запитань до Вас вже не буде.\n"
"\n"
-" * \"%s\". Помічник виявив один або більше розділів Лінакс на Вашому\n"
-"твердому диску. Якщо Ви хочете використати їх, виберіть цей режим.\n"
-"Тоді Вам буде запропоновано вказати відповідні до кожного розділу точки\n"
+" * «%s». Помічник виявив один або більше розділів Linux на Вашому\n"
+"твердому диску. Якщо ви хочете використати їх, виберіть цей режим.\n"
+"Тоді вам буде запропоновано вказати відповідні до кожного розділу точки\n"
"монтування. Попередні точки монтування будуть показані типово і у\n"
"більшості випадків залишити їх без змін буде прийнятним варіантом.\n"
"\n"
-" * \"%s\". Якщо на Вашому твердому диску встановлено Microsoft Windows\n"
-"і він займає весь простір на ньому, Вам потрібно буде створити вільне\n"
-"місце для Лінакса. Щоб зробити це, Ви можете стерти всі розділи Microsoft\n"
+" * «%s». Якщо на Вашому твердому диску встановлено Microsoft Windows\n"
+"і він займає весь простір на ньому, вам потрібно буде створити вільне\n"
+"місце для Linux. Щоб зробити це, ви можете стерти всі розділи Microsoft\n"
"Windows і дані (дивись команду \"Стерти весь диск\"), або змінити розмір\n"
"розділу Microsoft Windows FAT або NTFS. Зміна розміру буде здійснена\n"
"без втрати будь яких даних, які знаходяться на попередньо\n"
"дефрагментованому розділі Windows. Дуже рекомендується зробити\n"
"резервну копію Ваших даних. Використання цього режиму\n"
-"рекомендується, якщо Ви хочете використовувати Мандріва Лінакс \n"
+"рекомендується, якщо ви хочете використовувати Mageia \n"
"і Майкрософт Віндовс на одному комп'ютері.\n"
"\n"
" Перед вибором цього режиму зрозумійте, що після виконання цієї\n"
"процедури розмір розділу Microsoft Windows стане меншим, ніж до\n"
-"цього. Ви будете мати менше вільного місця у Microsoft Windows на\n"
+"цього. ви будете мати менше вільного місця у Microsoft Windows на\n"
"зберігання даних і встановлення нових програм.\n"
"\n"
-" * \"%s\". Якщо Ви хочете стерти всі дані і всі розділи, які є на твердому\n"
-"диску і замінити їх новою системою Мандріва Лінакс,\n"
+" * «%s». Якщо ви хочете стерти всі дані і всі розділи, які є на твердому\n"
+"диску і замінити їх новою системою Mageia,\n"
"виберіть цей режим. Будьте уважні, бо підтвердивши цей\n"
-"вибір, Ви вже не зможете повернутись назад.\n"
+"вибір, ви вже не зможете повернутись назад.\n"
"\n"
-" !! Якщо Ви виберете цей режим, всі дані на твердому диску будуть "
+" !! Якщо ви виберете цей режим, всі дані на твердому диску будуть "
"видалені. !!\n"
"\n"
-" * \"%s\". Це просто зітре повністю весь диск і почне новий\n"
+" * «%s». Це просто зітре повністю весь диск і почне новий\n"
"поділ на розділи. Всі дані на диску буде втрачено.\n"
"\n"
-"!! Якщо Ви виберете цей режим, всі дані на диску будуть втрачені. !!\n"
+"!! Якщо ви виберете цей режим, всі дані на диску будуть втрачені. !!\n"
"\n"
-" * \"%s\". Виберіть цей режим, якщо Ви хочете вручну перерозподілити\n"
+" * «%s». Виберіть цей режим, якщо ви хочете вручну перерозподілити\n"
"простір на Вашому твердому диску. Однак будьте обережними, це --\n"
-"потужний, але дуже небезпечний вибір, Ви можете дуже легко втратити\n"
-"всі дані. Тому цей режим насправді рекомендується тоді, якщо Ви вже\n"
+"потужний, але дуже небезпечний вибір, ви можете дуже легко втратити\n"
+"всі дані. Тому цей режим насправді рекомендується тоді, якщо ви вже\n"
"щось подібне робили або маєте певний досвід. Для детальнішої інформації,\n"
"як використовувати інструмент DiskDrake, звертайтеся до розділу\n"
"\"Managing Your Partitions\" в \"Starter Guide\"."
@@ -831,7 +839,7 @@ msgstr "Використовувати існуючий розділ"
#: ../help.pm:370
#, c-format
msgid "Use the free space on the Microsoft Windows® partition"
-msgstr ""
+msgstr "Використовувати вільний простір на розділі Microsoft Windows®"
#: ../help.pm:370
#, c-format
@@ -875,38 +883,38 @@ msgid ""
"\"mformat a:\", or \"fdformat /dev/fd0\" followed by \"mkfs.vfat\n"
"/dev/fd0\"."
msgstr ""
-"Ось і все. Встановлення завершене і Ваша система GNU/Linux готова\n"
-"до використання. Просто натисніть \"%s\" для перезавантаження.\n"
-"Не забудьте вийняти носії (КД або дискету). Перше, що Ви побачите\n"
+"Ось і все. Встановлення завершене і ваша система GNU/Linux готова\n"
+"до використання. Просто натисніть «%s» для перезавантаження.\n"
+"Не забудьте вийняти носії (КД або дискету). Перше, що ви побачите\n"
"після завершення системою тестів обладнання, буде меню\n"
-"завантажувача, яке запропонує Вам вибір операційної системи\n"
+"завантажувача, яке запропонує вам вибір операційної системи\n"
"для запуску.\n"
"\n"
-"Кнопка \"%s\"покаже дві інші кнопки:\n"
+"Кнопка «%s»покаже дві інші кнопки:\n"
"\n"
-" * \"%s\": дозволяє створити дискету для встановлення, яка автоматично,\n"
+" * «%s»: дозволяє створити дискету для встановлення, яка автоматично,\n"
"без допомоги оператора виконає все встановлення, подібне до того, яке\n"
-"Ви щойно зробили.\n"
+"ви щойно зробили.\n"
"\n"
" Зауважте, що після натиснення на кнопку будуть можливі два різні\n"
"параметри:\n"
"\n"
-" * \"%s\". Це частково автоматизоване встановлення. В режимі\n"
+" * «%s». Це частково автоматизоване встановлення. В режимі\n"
"діалогу відбувається тільки етап розбиття на розділи.\n"
"\n"
-" * \"%s\". Повністю автоматизоване встановлення: твердий диск\n"
+" * «%s». Повністю автоматизоване встановлення: твердий диск\n"
"повністю перезаписується, всі дані втрачаються.\n"
"\n"
" Цей параметр є дуже зручним при встановленні на багато подібних\n"
"машин. Дивіться розділ Auto install на нашому веб-сайті для детальної\n"
"інформації.\n"
"\n"
-" * \"%s\"(*): зберігає список пакунків, вибраних при цьому встановленні.\n"
+" * «%s»(*): зберігає список пакунків, вибраних при цьому встановленні.\n"
"Щоб використати цей вибір при іншому встановленні, вставте дискету і\n"
"запустіть встановлення. При підказці натисніть клавішу [F1] і введіть\n"
">>linux defcfg=\"floppy\" << і натисніть [Enter].\n"
"\n"
-"(*) Вам потрібно мати дискету у FAT-форматі. Щоб створити таку в\n"
+"(*) вам потрібно мати дискету у FAT-форматі. Щоб створити таку в\n"
"GNU/Linux, введіть \"mformat a:\", або \"fdformat /dev/fd0\", а після цього\n"
"\"mkfs.vfat /dev/fd0\"."
@@ -918,17 +926,17 @@ msgstr "Створити дискету для автоматичного вст
#: ../help.pm:405
#, c-format
msgid "Replay"
-msgstr ""
+msgstr "Повторити"
#: ../help.pm:405
#, c-format
msgid "Automated"
-msgstr ""
+msgstr "Автоматично"
#: ../help.pm:405
#, c-format
msgid "Save packages selection"
-msgstr ""
+msgstr "Зберегти перелік пакунків"
#: ../help.pm:408
#, c-format
@@ -950,39 +958,39 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
msgstr ""
-"Якщо Ви вирішили використовувати деякі з існуючих розділів\n"
+"Якщо ви вирішили використовувати деякі з існуючих розділів\n"
"GNU/Linux, можливо, захочете переформатувати деякі з них\n"
"для того, щоб стерти дані, які на них записані. Якщо Ви\n"
"хочете це зробити, виберіть також розділи, які хочете\n"
"відформатувати.\n"
"\n"
"Зауважте, однак, що не обов'язково форматувати всі розділи, які\n"
-"існували раніше. Ви повинні відформатувати розділи, які містять\n"
+"існували раніше. ви повинні відформатувати розділи, які містять\n"
"операційну систему (такі, як \"/\", \"/usr\" чи \"/var\"), але не мусите\n"
-"форматувати ті розділи, які містять дані, які Ви б хотіли зберегти\n"
+"форматувати ті розділи, які містять дані, які ви б хотіли зберегти\n"
"(типово це розділ \"/home\").\n"
"\n"
"Будьте уважні з вибором розділів. Після форматування всі дані на\n"
"вибраних розділах будуть стерті і їх вже не можна буде відновити.\n"
"\n"
-"Натисніть на \"%s\", коли будете готові приступити до форматування\n"
+"Натисніть на «%s», коли будете готові приступити до форматування\n"
"розділів.\n"
"\n"
-"Натисніть на \"%s\", якщо Ви хочете вибрати інші розділи для\n"
-"того, щоб встановити нову систему Мандріва лінакс.\n"
+"Натисніть на «%s», якщо ви хочете вибрати інші розділи для\n"
+"того, щоб встановити нову систему Mageia.\n"
"\n"
-"Натисніть на \"%s\", якщо Ви хочете вибрати розділи для\n"
+"Натисніть на «%s», якщо ви хочете вибрати розділи для\n"
"перевірки на існування збійних блоків."
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -994,17 +1002,17 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Коли Ви встановлюєте Мандріва лінакс, деякі пакунки можуть\n"
-"бути поновлені з часу виходу дистрибутиву. Можуть бути виправлені\n"
+"Коли ви встановлюєте Mageia, деякі пакунки можуть\n"
+"бути поновлені з часу виходу дистрибутива. Можуть бути виправлені\n"
"помилки, вирішені проблеми безпеки. Щоб мати користь від цих поновлень,\n"
-"зараз Ви можете звантажити їх з Інтернету. Перевірте \"%s\", якщо маєте\n"
-"зв'язок з Інтернетом, або \"%s\", якщо бажаєте встановити поновлені пакунки\n"
+"зараз ви можете звантажити їх з інтернету. Перевірте «%s», якщо маєте\n"
+"зв'язок з інтернетом, або «%s», якщо бажаєте встановити поновлені пакунки\n"
"пізніше.\n"
"\n"
-"Вибравши \"%s\", Ви побачите список адрес, звідки можуть бути взяті\n"
-"поновлення. Вам потрібно вибрати якісь із найближчих до Вас. Появиться\n"
-"дерево вибору пакунків: зробіть вибір і натисніть \"%s\", щоб звантажити\n"
-"і встановити їх, або \"%s\", щоб вийти."
+"Вибравши «%s», ви побачите список адрес, звідки можуть бути взяті\n"
+"поновлення. вам потрібно вибрати якісь із найближчих до вас. Буде показано\n"
+"дерево вибору пакунків: зробіть вибір і натисніть «%s», щоб звантажити\n"
+"і встановити їх, або «%s», щоб вийти."
#: ../help.pm:450
#, c-format
@@ -1016,24 +1024,24 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
"security. Security messages will be sent to that address."
msgstr ""
-"В цьому місці DrakX дасть Вам можливість вибрати рівень безпеки\n"
+"В цьому місці DrakX дасть вам можливість вибрати рівень безпеки\n"
"для Вашої системи. На практиці можна використовувати таке правило:\n"
"рівень безпеки повинен бути вищий, якщо на машині зберігатимуться\n"
-"важливі дані, або якщо вона буде безпосередньо під'єднана до Інтернету.\n"
+"важливі дані, або якщо вона буде безпосередньо під'єднана до інтернету.\n"
"Платою за вищий рівень безпеки у більшості випадків є легкість у\n"
"використанні.\n"
"\n"
-"Якщо Ви не знаєте, на чому зупинитись, залиште все, як є. Ви зможете\n"
+"Якщо ви не знаєте, на чому зупинитись, залиште все, як є. ви зможете\n"
"змінити рівень безпеки пізніше з допомогою інструменту draksec з \n"
-"Центру керування Мандріва.\n"
+"Центру керування Mageia.\n"
"\n"
-"Поле \"%s\" може використовуватися для сповіщення користувача, який\n"
+"Поле «%s» може використовуватися для сповіщення користувача, який\n"
"відповідає за безпеку. Повідомлення відправлятиметься на вказану адресу."
#: ../help.pm:461
@@ -1045,21 +1053,24 @@ msgstr "Адміністратор з безпеки"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1075,21 +1086,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1106,73 +1119,67 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"Зараз Вам потрібно вибрати, які розділи використовувати для встановлення\n"
-"Вашої нової системи Мандріва лінакс. Якщо ці розділи вже були створені\n"
+"Зараз вам потрібно вибрати, які розділи використовувати для встановлення\n"
+"Вашої нової системи Mageia. Якщо ці розділи вже були створені\n"
"при попередньому встановленні системи GNU/Linux, або створені іншою\n"
-"програмою розподілу диску, Ви можете скористатися вже існуючими\n"
+"програмою розподілу диску, ви можете скористатися вже існуючими\n"
"розділами. В іншому випадку потрібно створити розділи на твердому диску.\n"
"\n"
-"Щоб створити розділи, Вам потрібно вибрати твердий диск. Ви можете\n"
+"Щоб створити розділи, вам потрібно вибрати твердий диск. ви можете\n"
"вибрати диск, клацнувши на \"hda\" для першого диску типу IDE,\n"
-"\"hdb\" для другого диску типу IDE, \"sda\", якщо Ви будете встановлювати\n"
+"\"hdb\" для другого диску типу IDE, \"sda\", якщо ви будете встановлювати\n"
"систему на першому диску типу SCSI і так далі.\n"
"\n"
-"Щоб розбити диск на розділи, Ви можете скористатися такими командами:\n"
+"Щоб розбити диск на розділи, ви можете скористатися такими командами:\n"
"\n"
-" * \"%s\": видаляє всі розділи на вибраному твердому диску\n"
+" * «%s»: вилучає всі розділи на вибраному твердому диску\n"
"\n"
-" * \"%s\": ця команда автоматично створить розділи типу ext3 та swap\n"
+" * «%s»: ця команда автоматично створить розділи типу ext4 та swap\n"
"на вільному місці диску\n"
"\n"
-"\"%s\": дає доступ до додаткових параметрів:\n"
+"«%s»: дає доступ до додаткових параметрів:\n"
"\n"
-" * \"%s\": записує таблицю розділів на дискету. Використовується для\n"
+" * «%s»: записує таблицю розділів на дискету. Використовується для\n"
"відновлення таблиці розділів при потребі. Дуже рекомендується виконувати\n"
"цей крок.\n"
"\n"
-" * \"%s\": дає змогу Вам відновити раніше записану таблицю розділів з\n"
+" * «%s»: дає змогу вам відновити раніше записану таблицю розділів з\n"
"дискети.\n"
"\n"
-" * \"%s\": якщо таблиця розділів Вашого диску пошкоджена, Ви можете\n"
+" * «%s»: якщо таблиця розділів вашого диску пошкоджена, ви можете\n"
"спробувати відновити її, скориставшись цією командою. Будь ласка,\n"
"будьте обережними і пам'ятайте, що ця команда не завжди спрацьовує.\n"
"\n"
-" * \"%s\": відмовитися від всіх змін і завантажити таблицю розділів, яка\n"
+" * «%s»: відмовитися від всіх змін і завантажити таблицю розділів, яка\n"
"була на Вашому твердому диску.\n"
"\n"
-" * \"%s\": відміна цього параметра зробить необхідним монтування і\n"
+" * «%s»: відміна цього параметра зробить необхідним монтування і\n"
"розмонтування знімних носіїв - дискети і компакт-диску - користувачами\n"
"вручну.\n"
"\n"
-" * \"%s\": використайте цю команду, якщо Ви хочете, щоб помічник розподілив\n"
-"Ваш диск. Рекомендується, якщо Ви не розумієтесь добре про\n"
+" * «%s»: використайте цю команду, якщо ви хочете, щоб помічник розподілив\n"
+"ваш диск. Рекомендується, якщо ви не розумієтесь добре про\n"
"розподіл диску. \n"
"\n"
-" * \"%s\": використайте цю команду, щоб скасувати всі зміни.\n"
+" * «%s»: використайте цю команду, щоб скасувати всі зміни.\n"
"\n"
-" * \"%s\": дозволити додаткові дії при розбиванні (тип, параметри, формат)\n"
+" * «%s»: дозволити додаткові дії при розбиванні (тип, параметри, формат)\n"
"і отримати більше інформації про твердий диск.\n"
"\n"
-" * \"%s\": ця команда запише зміни на диск після того, як Ви закінчите "
+" * «%s»: ця команда запише зміни на диск після того, як ви закінчите "
"розбиття\n"
-"Вашого твердого диску. \n"
+"вашого жорсткого диска. \n"
"\n"
-"Коли Ви задаєте розмір розділу, можете точніше задати розмір,\n"
+"Коли ви задаєте розмір розділу, можете точніше задати розмір,\n"
"використовуючи клавіші курсора на клавіатурі.\n"
"\n"
-"Примітка: Ви можете виконати будь-яку команду з клавіатури. Переміщайтеся\n"
+"Примітка: ви можете виконати будь-яку команду з клавіатури. Переміщайтеся\n"
"по розділах з допомогою клавіш [Tab] і [Up/Down].\n"
"\n"
-"Коли певний розділ вибрано, Ви можете використовувати:\n"
+"Коли певний розділ вибрано, ви можете використовувати:\n"
"\n"
" * Ctrl-c, щоб створити новий розділ (якщо вибрано порожній розділ)\n"
"\n"
@@ -1180,30 +1187,23 @@ msgstr ""
"\n"
" * Ctrl-m, щоб встановити точку монтування\n"
"\n"
-"Щоб отримати інформацію про різні типи файлових систем, які Ви можете\n"
+"Щоб отримати інформацію про різні типи файлових систем, які ви можете\n"
"створити, прочитайте розділ ext2FS з \"Reference Manual\".\n"
-"\n"
-"Якщо Ви встановлюєте систему на комп'ютер з процесором PPC, можете\n"
-"створити маленький розділ типу HFS для завантаження 'bootstrap'\n"
-"(розміром не менше 1Мб) для завантажувача yaboot. Якщо Ви вирішите\n"
-"створити розділ трохи більшого розміру, скажімо 50Мб, Ви зможете\n"
-"також зберігати на ньому резервне ядро системи та віртуальний диск для\n"
-"аварійних завантажень системи. "
#: ../help.pm:526
#, c-format
msgid "Save partition table"
-msgstr ""
+msgstr "Зберегти таблицю розділів"
#: ../help.pm:526
#, c-format
msgid "Restore partition table"
-msgstr ""
+msgstr "Відновити таблицю розділів"
#: ../help.pm:526
#, c-format
msgid "Rescue partition table"
-msgstr ""
+msgstr "Виправити таблицю розділів"
#: ../help.pm:526
#, c-format
@@ -1213,12 +1213,12 @@ msgstr "Автоматичне монтування змінних носіїв"
#: ../help.pm:526
#, c-format
msgid "Wizard"
-msgstr ""
+msgstr "Майстер"
#: ../help.pm:526
#, c-format
msgid "Undo"
-msgstr ""
+msgstr "Вернути"
#: ../help.pm:526
#, c-format
@@ -1228,51 +1228,57 @@ msgstr "Перемикнути між режимами Експерт/Звича
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
-"На Вашому диску знайдено більше одного розділа Майкрософт.\n"
-"Виберіть, будь ласка, розмір якого з них Ви хотіли б змінити, для\n"
-"того, щоб встановити операційну систем Мандріва лінакс.\n"
+"На Вашому диску знайдено більше одного розділу Microsoft.\n"
+"Виберіть, будь ласка, розмір якого з них ви хотіли б змінити, для\n"
+"того, щоб встановити операційну систем Mageia.\n"
"\n"
-"Кожен розділ подано в такому вигляді: \"Назва в Лінаксі\", \"Назва у\n"
-"Віндовс\", \"Розмір\".\n"
+"Кожен розділ подано в такому вигляді: \"Назва в Linux\", \"Назва у\n"
+"Windows\", \"Розмір\".\n"
"\n"
-"\"Назва в Лінаксі\" подана таким чином: \"тип твердого диску\",\n"
-"\"номер твердого диску\", \"номер розділу на диску\", (наприклад:\n"
+"\"Назва в Linux\" подана таким чином: \"тип твердого диска\",\n"
+"\"номер жорсткого диска\", \"номер розділу на диску\", (наприклад:\n"
"\"hda1\").\n"
"\n"
-"Тип твердого диску\" - це \"hd\", якщо Ви маєте диск типу IDE, і \"sd\",\n"
-"якщо Ви маєте твердий диск типу SCSI.\n"
+"Тип жорсткого диска\" - це \"hd\", якщо ви маєте диск типу IDE, і \"sd\",\n"
+"якщо ви маєте твердий диск типу SCSI.\n"
"\n"
-"\"Номер твердого диску\" - це завжди літера після \"hd\" чи \"sd\". Для\n"
+"\"Номер жорсткого диска\" - це завжди літера після \"hd\" чи \"sd\". Для\n"
"дисків типу IDE це:\n"
"\n"
" * \"a\" - головний диск (master) на першому контролері IDE,\n"
@@ -1287,7 +1293,7 @@ msgstr ""
"і\n"
"т.д. ...\n"
"\n"
-"\"Назва у Віндовс\" - це літера Вашого твердого диску, як Ви її бачите\n"
+"\"Назва у Віндовс\" - це літера вашого жорсткого диска, як ви її бачите\n"
"при роботі у Віндовс (перший диск чи розділ називається \"C:\")."
#: ../help.pm:567
@@ -1298,9 +1304,9 @@ msgid ""
"the\n"
"list shown, click on the \"%s\" button to get the complete country list."
msgstr ""
-"\"%s\": перевірити поточний вибір країни. Якщо Ви знаходитесь не\n"
-"в цій країні, натисніть кнопку \"%s\" і виберіть іншу країну. Якщо Вашої\n"
-"країни немає в першому переліку, натисніть \"%s\", щоб отримати повний\n"
+"«%s»: перевірити поточний вибір країни. Якщо ви знаходитесь не\n"
+"в цій країні, натисніть кнопку «%s» і виберіть іншу країну. Якщо Вашої\n"
+"країни немає в першому переліку, натисніть «%s», щоб отримати повний\n"
"список країн."
#: ../help.pm:572
@@ -1310,44 +1316,44 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
-"Цей крок виконується тільки у випадку, якщо на Вашій машині було\n"
+"Цей крок виконується тільки у випадку, якщо на вашій машині було\n"
"знайдено старий розділ GNU/Linux.\n"
"\n"
-"DrakX зараз потрібно знати, чи Ви хочете виконати нове встановлення,\n"
-"чи поновити існуючу систему Мандріва лінакс:\n"
+"DrakX зараз потрібно знати, чи ви хочете виконати нове встановлення,\n"
+"чи поновити існуючу систему Mageia:\n"
"\n"
-" * \"%s\": В більшій частині це повністю знищує стару систему. Якщо Ви\n"
-"хочете змінити розбиття твердого диску на розділи або змінити файлову\n"
+" * «%s»: В більшій частині це повністю знищує стару систему. Якщо Ви\n"
+"хочете змінити розбиття жорсткого диска на розділи або змінити файлову\n"
"систему, використовуйте цей параметр. Проте в залежності від схеми\n"
-"розбиття на розділи Ви можете оберегти деякі з існуючих даних від\n"
+"розбиття на розділи ви можете оберегти деякі з існуючих даних від\n"
"переписування.\n"
"\n"
-" * \"%s\": цей тип встановлення дозволяє Вам поновити пакунки, вже\n"
-"встановлені на Вашій системі Мандріва лінакс. Ваша існуюча схема\n"
+" * «%s»: цей тип встановлення дозволяє вам поновити пакунки, вже\n"
+"встановлені на вашій системі Mageia. ваша існуюча схема\n"
"розбиття на розділи і дані користувачів не змінюються. Більшість інших\n"
"кроків встановлення залишаються, подібно до стандартного встановлення.\n"
"\n"
"Використання параметра \"Поновлення\" працюватиме на системах з\n"
-"Мандріва лінакс версії \"8.1\" і пізніших. Виконання поновлення версій,\n"
-"попередніх до Мандріва лінакс \"8.1\" не рекомендується."
+"Mageia версії \"8.1\" і пізніших. Виконання поновлення версій,\n"
+"попередніх до Mageia \"8.1\" не рекомендується."
#: ../help.pm:594
#, c-format
@@ -1369,22 +1375,22 @@ msgid ""
"dialog will allow you to choose the key binding which will switch the\n"
"keyboard between the Latin and non-Latin layouts."
msgstr ""
-"В залежності від типової мови, яку Ви вказали у розділі, drakX\n"
+"В залежності від типової мови, яку ви вказали у розділі, drakX\n"
"автоматично вибере певний тип конфігурації клавіатури. Перевірте,\n"
"щоб виділення відповідало Вашому вибору, якщо потрібно, виберіть\n"
"відповідну мапу.\n"
"\n"
-"Проте, може не існувати мапи клавіатури, що точно відповідає Вашій мові:\n"
-"наприклад, якщо Ви англомовний швейцарець, Ви все одно можете\n"
-"забажати користуватись швейцарською мапою. Або, якщо Ви говорите\n"
-"англійською, але живете в Квебеку, Ви потрапляєте в аналогічну\n"
-"ситуацію, коли Ваша рідна мова і мапа клавіатури не співпадають. В\n"
-"таких випадках цей крок встановлення дасть Вам змогу вибрати\n"
+"Проте, може не існувати мапи клавіатури, що точно відповідає вашій мові:\n"
+"наприклад, якщо ви англомовний швейцарець, ви все одно можете\n"
+"забажати користуватись швейцарською мапою. Або, якщо ви говорите\n"
+"англійською, але живете в Квебеку, ви потрапляєте в аналогічну\n"
+"ситуацію, коли ваша рідна мова і мапа клавіатури не співпадають. В\n"
+"таких випадках цей крок встановлення дасть вам змогу вибрати\n"
"відповідну клавіатуру з наданого списку.\n"
"\n"
-"Натисніть кнопку \"%s\", щоб побачити повний список мап клавіатур.\n"
+"Натисніть кнопку «%s», щоб побачити повний список мап клавіатур.\n"
"\n"
-"Якщо Ви вибрали мапу, що основана на нелатинському алфавіті,\n"
+"Якщо ви вибрали мапу, що основана на нелатинському алфавіті,\n"
"наступний діалог дасть змогу вибрати комбінацію клавіш, яка\n"
"перемикатиме клавіатуру між латинською і нелатинською мапами."
@@ -1405,8 +1411,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1434,40 +1439,39 @@ msgid ""
msgstr ""
"Перший крок - вибір мови.\n"
"\n"
-"Ваш вибір мови вплине на мову документації, програми встановлення\n"
-"і систему в цілому. Спочатку виберіть регіон, в якому Ви знаходитесь,\n"
-"потім мову, якою Ви розмовляєте.\n"
+"ваш вибір мови вплине на мову документації, програми встановлення\n"
+"і систему в цілому. Спочатку виберіть регіон, в якому ви знаходитесь,\n"
+"потім мову, якою ви розмовляєте.\n"
"\n"
-"Натиснувши кнопку \"%s\" Ви зможете вибрати інші мови, які можна\n"
-"встановити на Вашій робочій станції, при цьому встановлюються особливі\n"
+"Натиснувши кнопку «%s», ви зможете вибрати інші мови, які можна\n"
+"встановити на вашій робочій станції, при цьому встановлюються особливі\n"
"для мови файли системної документації і програми. Наприклад, якщо\n"
"в системі будуть працювати користувачі з Іспанії, виберіть англійську\n"
-"мову типовою з дерева перегляду і \"%s\" в розділі Додатково.\n"
+"мову типовою з дерева перегляду і «%s» в розділі «Додатково».\n"
"\n"
-"Кілька слів про підтримку UTF-8 (юнікоду): Юнікод - це нове кодування\n"
-"символів, яке вміщує усі мови. Повна підтримка для GNU/Linux все ще\n"
-"знаходиться в стадії розробки. Через це Мандріва лінакс\n"
+"Кілька слів про підтримку UTF-8 (юнікоду): Unicode — це нове кодування\n"
+"символів, яке містить символи всіх мов. Повна підтримка для GNU/Linux\n"
+"все ще перебуває у стадії розробки. Через це Mageia\n"
"використовуватиме його залежно від вибору користувача:\n"
"\n"
-" * Якщо Ви вибрали мови із традиційним кодуванням (мови latin1\n"
+" * Якщо ви вибрали мови із традиційним кодуванням (мови latin1\n"
"Українська, Японська, Китайська, Корейська, Тайська, Грецька,\n"
"Турецька, більшість мов iso-8859-2), це кодування і\n"
"використовуватиметься;\n"
"\n"
" * Інші мови використовуватимуть юнікод типово;\n"
"\n"
-" * Якщо вибирається підтримка двох чи більше мов і вони не\n"
-"використовують однакове кодування, юнікод використовуватиметься\n"
-"для всієї системи;\n"
+" * Якщо вибрано підтримку двох або декількох мов з різним\n"
+"кодуванням, юнікод використовуватиметься для всієї системи;\n"
"\n"
" * Нарешті, незалежно від вибраної мови юнікод також\n"
"використовуватиметься для системи у випадку, якщо користувач\n"
-"вказав \"%s\".\n"
+"вказав «%s».\n"
"\n"
-"Зауважте, що Ви не обмежені вибором однієї додаткової мови. Ви\n"
-"можете вибрати їх кілька або встановити їх всі, вибравши пункт \"%s\".\n"
+"Зауважте, що ви не обмежені вибором однієї додаткової мови. Ви\n"
+"можете вибрати їх кілька або встановити їх всі, вибравши пункт «%s».\n"
"Вибір підтримки мови означає вибір перекладів, шрифтів, перевірку\n"
-"орфографії і т.д.\n"
+"орфографії тощо.\n"
"\n"
"Для перемикання між різними мовами, встановленими в системі, можете\n"
"виконати команду \"/usr/sbin/localedrake\" з правами \"root\", щоб змінити\n"
@@ -1482,7 +1486,7 @@ msgstr "Іспанська"
#: ../help.pm:643
#, c-format
msgid "Use Unicode by default"
-msgstr ""
+msgstr "Типово використовувати Unicode"
#: ../help.pm:646
#, c-format
@@ -1521,24 +1525,24 @@ msgid ""
"move your mouse about."
msgstr ""
"Здебільшого DrakX не має проблем при визначенні кількості кнопок на\n"
-"Вашій миші. Якщо це стається, приймається, що Ви маєте двохкнопкову\n"
+"вашій миші. Якщо це стається, приймається, що ви маєте двохкнопкову\n"
"мишу, і можете сконфігурувати її для емуляції третьої кнопки. Третя\n"
"кнопка на двохкнопковій миші може бути \"натиснута\" одночасним\n"
"натисканням лівої і правої кнопок. DrakX автоматично знатиме, який\n"
-"інтерфейс використовує Ваша миша: PS/2, послідовний чи USB.\n"
+"інтерфейс використовує ваша миша: PS/2, послідовний чи USB.\n"
"\n"
-"У випадку, якщо Ви маєте мишу з трьома кнопками і без коліщатка,\n"
-"можете вибрати мишу \"%s\". DrakX тоді налаштує її так, щоб Ви могли\n"
+"У випадку, якщо ви маєте мишу з трьома кнопками і без коліщатка,\n"
+"можете вибрати мишу «%s». DrakX тоді налаштує її так, щоб ви могли\n"
"симулювати його: для цього натисніть середню кнопку і переміщуйте\n"
"мишу вперед-назад.\n"
"\n"
-"Якщо з певних міркувань Ви хочете задати інший тип миші, виберіть його\n"
+"Якщо з певних міркувань ви хочете задати інший тип миші, виберіть його\n"
"із списку, який пропонується.\n"
"\n"
-"Ви можете вибрати пункт \"%s\", щоб встановити \"загальний\" тип,\n"
+"ви можете вибрати пункт «%s», щоб встановити \"загальний\" тип,\n"
"який працює майже з усіма типами мишок.\n"
"\n"
-"Якщо Ви вибрали мишу, відмінну від запропонованої, буде показано\n"
+"Якщо ви вибрали мишу, відмінну від запропонованої, буде показано\n"
"тестове вікно. Перевірте кнопки і коліщатко, щоб переконатися, що\n"
"миша працює добре. Якщо миша працює неправильно, натисніть\n"
"пробіл або [Return], щоб припинити тест і повернутися в список вибору.\n"
@@ -1546,7 +1550,7 @@ msgstr ""
"Миші з коліщатком деколи не визначаються автоматично, тому Вам\n"
"буде потрібно вибрати мишу із списку. Переконайтеся, що Ви\n"
"вибираєте мишу відповідно до порта, до якого вона під'єднана. Після\n"
-"того, як Ви виберете мишу і натиснете на кнопку \"%s\", на екрані\n"
+"того, як ви виберете мишу і натиснете на кнопку «%s», на екрані\n"
"появиться зображення миші. Покрутіть коліщатко миші, щоб\n"
"переконатися, що воно активізоване правильно. Після того, як Ви\n"
"побачите, що коліщатко на екрані рухається відповідно до коліщатка\n"
@@ -1570,7 +1574,7 @@ msgid ""
"Windows is named \"ttyS0\" under GNU/Linux."
msgstr ""
"Будь ласка, виберіть вірний порт. Наприклад, порт COM1 у MS\n"
-"Windows має назву ttyS0 у GNU/Лінаксі."
+"Windows має назву ttyS0 у GNU/Linux."
#: ../help.pm:684
#, c-format
@@ -1586,7 +1590,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1599,22 +1603,22 @@ msgstr ""
"і відповідно до знайденого на ньому виконає таке:\n"
"\n"
" * якщо знайдено сектор завантаження Windows, він замінить його на\n"
-"сектор завантаження GRUB/LILO. В такий спосіб Ви зможете\n"
+"сектор завантаження GRUB/LILO. В такий спосіб ви зможете\n"
"завантажувати як GNU/Linux, так і іншу ОС.\n"
"\n"
" * якщо знайдено сектор завантаження GRUB або LILO, його буде\n"
"замінено на новий.\n"
"\n"
"Якщо неможливо визначити, DrakX запитає Вас, куди встановити\n"
-"завантажувач. В загальному випадку \"%s\" є найкращим місцем.\n"
-"Вибравши \"%s\", Ви не встановите завантажувач. Використовуйте\n"
+"завантажувач. В загальному випадку «%s» є найкращим місцем.\n"
+"Вибравши «%s», ви не встановите завантажувач. Використовуйте\n"
"це тільки тоді, коли розумієте, що робите."
#: ../help.pm:745
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1635,34 +1639,34 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Зараз настав час вибрати систему друку на Вашому комп'ютері. Інші\n"
-"ОС мають одну систему друку, але Мандріва лінакс пропонує дві.\n"
+"ОС мають одну систему друку, але Mageia пропонує дві.\n"
"Кожна система друку найкраще підходить до різних типів конфігурації.\n"
"\n"
-" * \"%s\" -- який є акронімом для \"друкувати, не ставити в чергу\", є\n"
-"вибором, коли Ви маєте безпосередньо під'єднану друкарку і не\n"
+" * «%s» — який є акронімом для \"друкувати, не ставити в чергу\", є\n"
+"вибором, коли ви маєте безпосередньо під'єднану друкарку і не\n"
"хочете мати проблем із зминанням паперу, і не маєте мережевих\n"
-"друкарок. (\"%s\" керуватиме тільки дуже простими випадками з\n"
+"друкарок. («%s» керуватиме тільки дуже простими випадками з\n"
"мережею і є в деякій мірі повільнішим, ніж використання з мережами).\n"
-"Рекомендується використовувати \"pdq\", якщо це Ваш перший досвід\n"
+"Рекомендується використовувати \"pdq\", якщо це ваш перший досвід\n"
"використання GNU/Linux.\n"
"\n"
-" * \"%s\" - \"Загальна система друку для Лінакс\", є відміннім вибором\n"
+" * «%s» - \"Загальна система друку для Linux\", є відміннім вибором\n"
"для друку на місцеву друкарку або на іншу в будь-якій точці планети.\n"
"Вона проста для налаштування і може працювати як клієнт або сервер\n"
"для старих систем друку \"lpd \", тобто є сумісною з попередніми\n"
"операційними системами, які можуть все ще вимагати сервісів друку.\n"
"Хоч вона і є дуже потужною, загальне встановлення є майже таким\n"
-"самим простим, як і \"pdq\". Якщо Вам потрібно емулювати сервер \"lpd\",\n"
-"переконайтеся, що увімкнена служба \"cups-lpd \". \"%s\" має графічну\n"
-"оболонку для друку або вибору параметрів друкарки і управління нею.\n"
+"самим простим, як і \"pdq\". Якщо вам потрібно емулювати сервер \"lpd\",\n"
+"переконайтеся, що увімкнена служба \"cups-lpd \". «%s» має графічну\n"
+"оболонку для друку або вибору параметрів принтера і управління ним.\n"
" \n"
-"Якщо Ви зараз зробите вибір, а пізніше побачите, що ця система друку\n"
-"Вам не подобається, Ви можете її замінити з допомогою PrinterDrake з\n"
-"Центру керування Мандріва , натиснувши кнопку \"%s\"."
+"Якщо ви зараз зробите вибір, а пізніше побачите, що ця система друку\n"
+"вам не подобається, ви можете її замінити з допомогою PrinterDrake з\n"
+"Центру керування Mageia, натиснувши кнопку «%s»."
#: ../help.pm:768
#, c-format
@@ -1672,7 +1676,7 @@ msgstr "pdq"
#: ../help.pm:724
#, c-format
msgid "CUPS"
-msgstr ""
+msgstr "CUPS"
#: ../help.pm:724
#, c-format
@@ -1687,7 +1691,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1705,16 +1709,16 @@ msgstr ""
"драйвер.\n"
"\n"
"Через те, що визначення заліза не є простим, DrakX може завершити\n"
-"визначення твердих дисків невдало. Якщо таке трапиться, Вам потрібно\n"
+"визначення твердих дисків невдало. Якщо таке трапиться, вам потрібно\n"
"буде ввести тип обладнання вручну.\n"
"\n"
-"Якщо Вам потрібно буде вручну вибирати драйвер, DrakX запитає,\n"
-"чи хочете Ви налаштувати його параметри. Краще, якщо Ви вкажете\n"
+"Якщо вам потрібно буде вручну вибирати драйвер, DrakX запитає,\n"
+"чи хочете ви налаштувати його параметри. Краще, якщо ви вкажете\n"
"DrakX випробувати плату з особливими для неї параметрами, потрібними\n"
"для ініціалізації адаптера. У більшості випадків це працює нормально.\n"
"\n"
"Якщо DrakX не зможе встановити тип параметрів, необхідних для\n"
-"передачі обладнанню, Вам потрібно буде налаштувати драйвер вручну."
+"передачі обладнанню, вам потрібно буде налаштувати драйвер вручну."
#: ../help.pm:789
#, c-format
@@ -1723,12 +1727,12 @@ msgid ""
"here. If you notice the sound card is not the one actually present on your\n"
"system, you can click on the button and choose a different driver."
msgstr ""
-"\"%s\": якщо система визначить звукову карту, її тип буде показано тут.\n"
-"Якщо Ви побачите, що вона не того типу, що дійсно вставлена у Вашій\n"
+"«%s»: якщо система визначить звукову карту, її тип буде показано тут.\n"
+"Якщо ви побачите, що вона не того типу, що дійсно вставлена у Вашій\n"
"системі, можете натиснути кнопку і вибрати інший драйвер."
#: ../help.pm:794
-#, fuzzy, c-format
+#, c-format
msgid ""
"As a review, DrakX will present a summary of information it has gathered\n"
"about your system. Depending on the hardware installed on your machine, you\n"
@@ -1768,8 +1772,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1786,7 +1789,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1796,76 +1799,74 @@ msgstr ""
"про Вашу систему. В залежності від встановленого заліза, у Вас\n"
"повинні бути або всі, або деякі пункти. Кожен пункт може бути\n"
"налаштований, що завершується коротким підсумком про поточну\n"
-"конфігурацію. Натисніть на відповідну \"%s\" кнопку, щоб змінити.\n"
+"конфігурацію. Натисніть на відповідну «%s» кнопку, щоб змінити.\n"
"\n"
-" * \"%s\": перевірити поточну мапу клавіатури і змінити, якщо потрібно.\n"
+" * «%s»: перевірити поточну мапу клавіатури і змінити, якщо потрібно.\n"
"\n"
-" * \"%s\": перевірити вибір країни. Якщо Ви знаходитесь не в цій\n"
-"країні, натисніть кнопку \"%s\" і виберіть іншу. Якщо Вашої країни\n"
-"немає в показаному початковому списку, натисніть кнопку \"%s\",\n"
+" * «%s»: перевірити вибір країни. Якщо ви знаходитесь не в цій\n"
+"країні, натисніть кнопку «%s» і виберіть іншу. Якщо вашої країни\n"
+"немає в показаному початковому списку, натисніть кнопку «%s»,\n"
"щоб отримати повний список країн.\n"
"\n"
-" * \"%s\": типово DrakX визначає часовий пояс на основі країни, яку\n"
-"Ви вибрали. Ви можете натиснути кнопку \"%s\", якщо його визначено\n"
+" * «%s»: типово DrakX визначає часовий пояс на основі країни, яку\n"
+"ви вибрали. ви можете натиснути кнопку «%s», якщо його визначено\n"
"неправильно.\n"
"\n"
-" * \"%s\": перевірте налаштування миші і натисніть на кнопку, щоб\n"
+" * «%s»: перевірте налаштування миші і натисніть на кнопку, щоб\n"
"змінити, якщо необхідно.\n"
"\n"
-" * \"%s\": натиснувши на кнопку \"%s\", Ви викличите Помічника\n"
-"налаштування друкарки. Зверніться до відповідного розділу \"Starter\n"
-"Guide\" для детальнішої інформації про те, як встановити нову\n"
-"друкарку. Інтерфейс, представлений там, є подібним до того, що\n"
-"використовується при встановленні.\n"
-"\n"
-" * \"%s\": якщо у Вашій системі знайдено звукову карту, її буде\n"
-"показано тут. Якщо Ви виявите, що показана звукова карта не є\n"
-"тою, що насправді встановлена у системі, можете натиснути на\n"
+" * «%s»: якщо у вашій системі знайдено звукову карту, її буде\n"
+"показано тут. Якщо ви виявите, що показана звукова карта не є\n"
+"тією, що насправді встановлена у системі, можете натиснути на\n"
"кнопку і вибрати інший драйвер.\n"
"\n"
-" * \"%s\": якщо у Вашій системі знайдено карту ТБ, її має бути показано\n"
-"тут. Якщо ж Ви маєте карту ТБ, але її не знайдено, натисніть \"%s\",\n"
+" * «%s»: якщо у вашій системі знайдено карту ТБ, її має бути показано\n"
+"тут. Якщо ж ви маєте карту ТБ, але її не знайдено, натисніть «%s»,\n"
"щоб спробувати налаштувати її вручну.\n"
"\n"
-" * \"%s\": Ви можете натиснути \"%s\", щоб змінити параметри, пов'язані\n"
+" * «%s»: ви можете натиснути «%s», щоб змінити параметри, пов'язані\n"
"з картою, якщо бачите, що конфігурацію встановлено неправильно.\n"
"\n"
-" * \"%s\": типово DrakX налаштовує графічний інтерфейс з роздільною\n"
+" * «%s»: типово DrakX налаштовує графічний інтерфейс з роздільною\n"
"здатністю \"800x600\" або \"1024x768\". Якщо це Вас не задовольняє,\n"
-"натисніть \"%s\", щоб переналаштувати графічний інтерфейс.\n"
+"натисніть «%s», щоб переналаштувати графічний інтерфейс.\n"
"\n"
-" * \"%s\": Якщо Ви хочете зараз налаштувати доступ до Інтернету\n"
+" * «%s»: Якщо ви хочете зараз налаштувати доступ до інтернету\n"
"або місцевої мережі. Зверніться до друкованої документації, або\n"
-"Центру керування Мандріва після завершення встановлення,\n"
+"Центру керування Mageia після завершення встановлення,\n"
"щоб отримати повну довідку.\n"
"\n"
-" * \"%s\": тут можна налаштувати адреси проксі HTTP і FTP, якщо\n"
-"Ваша машина знаходиться за проксі-сервером.\n"
+" * «%s»: тут можна налаштувати адреси проксі HTTP і FTP, якщо\n"
+"ваша машина знаходиться за проксі-сервером.\n"
"\n"
-" * \"%s\": цей пункт дасть змогу перевизначити рівень безпеки, який\n"
+" * «%s»: цей пункт дасть змогу перевизначити рівень безпеки, який\n"
"встановлено попереднім кроком ().\n"
"\n"
-" * \"%s\": якщо Ви плануєте під'єднати Вашу машину до Інтернету,\n"
+" * «%s»: якщо ви плануєте під'єднати ваш комп’ютер до інтернету,\n"
"хорошою ідеєю є захистися від вторгнення шляхом встановлення\n"
"захисного шлюзу. Зверніться до відповідного розділу \"Starter Guide\"\n"
"для детальнішої інформації про встановлення захисного шлюзу.\n"
"\n"
-" * \"%s\": якщо Ви хочете змінити конфігурацію завантажувача,\n"
-"натисніть цю кнопку. Це зарезервовано для досвідчених користувачів.\n"
+" * «%s»: якщо ви хочете змінити конфігурацію завантажувача,\n"
+"натисніть цю кнопку. Ці налаштування призначено для досвідчених\n"
+"користувачів. Зверніться до паперової документації або вбудованої\n"
+"довідки щодо налаштувань завантажувача у Центрі керування\n"
+"Mageia.\n"
+"\n"
"\n"
-" * \"%s\": тут Ви можете підправити, які служби будуть виконуватися\n"
-"на Вашій машині. Якщо Ви плануєте використовувати цю машину в\n"
-"якості сервера, хорошою ідеєю є переглянути ці налаштування."
+" * «%s»: тут ви можете підправити, які служби будуть виконуватися\n"
+"у вашій системі. Якщо ви плануєте використовувати цю машину як\n"
+"сервер, варто є переглянути ці налаштування."
#: ../help.pm:809
-#, fuzzy, c-format
+#, c-format
msgid "TV card"
-msgstr "Карта ISDN"
+msgstr "ТБ-картка"
#: ../help.pm:809
#, c-format
msgid "ISDN card"
-msgstr "Карта ISDN"
+msgstr "Картка ISDN"
#: ../help.pm:858
#, c-format
@@ -1875,32 +1876,34 @@ msgstr "Графічний інтерфейс"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Виберіть твердий диск, який Ви хочете відформатувати для\n"
-"створення нового розділу Мандріва лінакса. Будьте обережні,\n"
-"всі дані, що знаходяться в цьому розділі, будуть втрачені і їх\n"
+"Виберіть твердий диск, який ви хочете відформатувати для\n"
+"створення нового розділу Mageia. Будьте обережні:\n"
+"всі дані, що знаходяться в цьому розділі, буде втрачено, їх\n"
"неможливо буде відновити!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
-"Натисніть \"%s\", якщо Ви хочете стерти всі дані і розділи на цьому\n"
-"твердому диску. Будьте уважні, після натиснення на \"%s\" Ви\n"
+"Натисніть «%s», якщо ви хочете стерти всі дані і розділи на цьому\n"
+"твердому диску. Будьте уважні, після натиснення на «%s» Ви\n"
"не зможете відновити жодних даних і розділів на цьому твердому\n"
"диску, включаючи також будь-які дані Віндовс.\n"
"\n"
-"Натисніть \"%s\", щоб зупинити цю операцію без втрати даних і\n"
+"Натисніть «%s», щоб зупинити цю операцію без втрати даних і\n"
"розділів, які знаходяться на цьому твердому диску."
#: ../help.pm:872
@@ -1911,7 +1914,7 @@ msgstr "Далі ->"
#: ../help.pm:872
#, c-format
msgid "<- Previous"
-msgstr "<- Попередній"
+msgstr "<- Назад"
#~ msgid ""
#~ "\"%s\": clicking on the \"%s\" button will open the printer "
diff --git a/perl-install/install/help/po/uz.po b/perl-install/install/help/po/uz.po
index 4b53c2dc0..487318fe7 100644
--- a/perl-install/install/help/po/uz.po
+++ b/perl-install/install/help/po/uz.po
@@ -11,21 +11,22 @@ msgstr ""
"PO-Revision-Date: 2006-04-23 12:29+0200\n"
"Last-Translator: Mashrab Kuvatov <kmashrab@uni-bremen.de>\n"
"Language-Team: Uzbek <kmashrab@uni-bremen.de>\n"
+"Language: uz\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.2\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Davom etishdan oldin litsenziyaning shartlarini e'tibor bilan o'qib\n"
-"chiqing. Litsenziya butun Mandriva Linux'ga tegishli. Agar uning barcha\n"
+"chiqing. Litsenziya butun Mageia'ga tegishli. Agar uning barcha\n"
"shartlariga rozi bo'lsangiz, \"%s\"ni tanlang. Agar rozi bo'lmasangiz,\n"
"kompyuterni o'chirib-yoqish uchun \"%s\" tugmasini bosing."
@@ -88,7 +89,8 @@ msgstr "Bu qulaylikdan foydalanishni istaysizmi?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -98,38 +100,41 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux bir nechta kompakt-disklarda tarqatiladi. Agar tanlangan "
-"paket\n"
+"Mageia bir nechta kompakt-disklarda tarqatiladi. Agar tanlangan paket\n"
"boshqa kompakt-diskda joylashgan bo'lsa, DrakX joriy kompakt-diskni\n"
"chiqaradi va tegishlisini qo'yishni so'raydi. Agar so'ralgan kompakt-disk "
"sizda\n"
@@ -139,12 +144,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -224,10 +228,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -325,7 +329,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -428,39 +432,43 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -469,15 +477,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -584,7 +592,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -593,7 +601,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -616,7 +624,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -632,21 +640,24 @@ msgstr "Xavfsizlik boshqaruvchisi"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -662,21 +673,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -693,14 +706,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -741,34 +748,40 @@ msgstr "Odiy/ekspert usuliga o'tish"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -788,23 +801,23 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -845,8 +858,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -953,7 +965,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -964,7 +976,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -985,7 +997,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1012,7 +1024,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1077,8 +1089,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1095,7 +1106,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1120,8 +1131,8 @@ msgstr "Grafik interfeys"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1129,12 +1140,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Bu diskdagi barcha ma'lumotni va diskning barcha qismlarini\n"
"o'chirish uchun \"%s\"ni bosing. Ehtiyot bo'ling, \"%s\"ni bosganingizdan\n"
diff --git a/perl-install/install/help/po/uz@cyrillic.po b/perl-install/install/help/po/uz@cyrillic.po
index 399268a95..c318abb18 100644
--- a/perl-install/install/help/po/uz@cyrillic.po
+++ b/perl-install/install/help/po/uz@cyrillic.po
@@ -17,15 +17,15 @@ msgstr ""
"X-Generator: KBabel 1.11.2\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Давом этишдан олдин лицензиянинг шартларини эътибор билан ўқиб\n"
-"чиқинг. Лицензия бутун Mandriva Linux'га тегишли. Агар унинг барча\n"
+"чиқинг. Лицензия бутун Mageia'га тегишли. Агар унинг барча\n"
"шартларига рози бўлсангиз, \"%s\"ни танланг. Агар рози бўлмасангиз,\n"
"компьютерни ўчириб-ёқиш учун \"%s\" тугмасини босинг."
@@ -88,7 +88,7 @@ msgstr "Бу қулайликдан фойдаланишни истайсизм
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -98,37 +98,37 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux бир нечта компакт-дискларда тарқатилади. Агар танланган "
+"Mageia бир нечта компакт-дискларда тарқатилади. Агар танланган "
"пакет\n"
"бошқа компакт-дискда жойлашган бўлса, DrakX жорий компакт-дискни\n"
"чиқаради ва тегишлисини қўйишни сўрайди. Агар сўралган компакт-диск сизда\n"
@@ -138,12 +138,11 @@ msgstr ""
#, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -223,10 +222,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -324,7 +323,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -427,39 +426,39 @@ msgstr ""
#: ../help.pm:319
#, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -468,15 +467,14 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -583,7 +581,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -592,7 +590,7 @@ msgstr ""
#: ../help.pm:437
#, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -615,7 +613,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -631,21 +629,21 @@ msgstr "Хавфсизлик бошқарувчиси"
#, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -661,21 +659,21 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -692,14 +690,8 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
#: ../help.pm:526
@@ -740,34 +732,34 @@ msgstr "Одий/эксперт усулига ўтиш"
#: ../help.pm:536
#, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the first\n"
"disk or partition is called \"C:\")."
msgstr ""
@@ -787,23 +779,22 @@ msgid ""
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
#: ../help.pm:594
@@ -844,8 +835,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -952,7 +942,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -963,7 +953,7 @@ msgstr ""
#, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -984,7 +974,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
@@ -1011,7 +1001,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1076,8 +1066,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1094,7 +1083,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1119,8 +1108,8 @@ msgstr "График интерфейс"
#: ../help.pm:861
#, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
@@ -1128,12 +1117,12 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n"
+"to recover any data and partitions present on this hard disk drive, including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Бу дискдаги барча маълумотни ва дискнинг барча қисмларини\n"
"ўчириш учун \"%s\"ни босинг. Эҳтиёт бўлинг, \"%s\"ни босганингиздан\n"
diff --git a/perl-install/install/help/po/vi.po b/perl-install/install/help/po/vi.po
index ce556591e..887d001df 100644
--- a/perl-install/install/help/po/vi.po
+++ b/perl-install/install/help/po/vi.po
@@ -11,21 +11,22 @@ msgstr ""
"PO-Revision-Date: 2005-06-02 21:17+0700\n"
"Last-Translator: Larry Nguyen <larry@vnlinux.org>\n"
"Language-Team: <gnomevi-list@lists.sourceforge.net>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Trước khi tiếp tục, hãy đọc kỹ các điều khoản ghi trong bản quyền.\n"
-"Nó bao xuyên suốt toàn bộ phân phối Mandriva Linux. Nếu đồng ý với\n"
+"Nó bao xuyên suốt toàn bộ phân phối Mageia. Nếu đồng ý với\n"
"mọi điều khoản trong đó, nhấn vào hộp kiểm \"%s\". Nếu không, hãy\n"
"nhấn nút \"%s\" để khởi động lại máy tính."
@@ -121,7 +122,8 @@ msgstr "Bạn muốn dùng tính năng này không?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -131,24 +133,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Trên đây là danh sách các phân vùng Linux hiện có trên đĩa cứng của bạn.\n"
@@ -183,15 +189,15 @@ msgstr ""
"thấp thứ nhì\", v.v..."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Việc cài đặt Mandriva Linux được phân phối trên vài đĩa CDROM. Nếu\n"
+"Việc cài đặt Mageia được phân phối trên vài đĩa CDROM. Nếu\n"
"một gói được chọn nằm trên CD khác, DrakX sẽ nhả CD hiện thời và yêu\n"
"cầu bạn nạp CD thích hợp. Nếu không có CD đó, hãy nhấn \"%s\", gói\n"
"tương ứng sẽ không được cài đặt."
@@ -200,12 +206,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -256,12 +261,11 @@ msgid ""
"megabytes."
msgstr ""
"Bây giờ là lúc chỉ ra chương trình nào mà bạn muốn cài đặt vào hệ thống.\n"
-"Hiện có hàng nghìn gói tin dùng cho Mandriva Linux và được tổ chức theo\n"
+"Hiện có hàng nghìn gói tin dùng cho Mageia và được tổ chức theo\n"
"nhóm các ứng dụng giống nhau để dễ dàng quản lý.\n"
"\n"
"Các gói phần mềm được xếp loại theo các nhóm tương ứng với việc sử dụng\n"
-"cụ thể cho máy tính. Mandriva Linux có 4 kiểu cài đặt sẵn với nhiều loại gói "
-"tin.\n"
+"cụ thể cho máy tính. Mageia có 4 kiểu cài đặt sẵn với nhiều loại gói tin.\n"
"Bạn có thể chọn dùng các ứng dụng pha trộn của các kiểu cài đặt này, ví dụ\n"
"như cài đặt kiểu ``Máy trạm'' cùng với việc cài các ứng dụng của kiểu cài\n"
"đặt ``Máy chủ''.\n"
@@ -327,7 +331,7 @@ msgid "Truly minimal install"
msgstr "Cài đặt thật tối thiểu"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -340,10 +344,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -373,7 +377,7 @@ msgstr ""
"\n"
"!! Nếu các gói tin cho server được chọn cố tình hoặc do nó là thành\n"
"phần của một nhóm, bạn sẽ được hỏi để khẳng định là bạn thật sự\n"
-"muốn những server này được cài đặt. Trong Mandriva Linux, bất kỳ\n"
+"muốn những server này được cài đặt. Trong Mageia, bất kỳ\n"
"server đã được cài đặt nào đều chạy vào lúc khởi động theo mặc định.\n"
"Thậm chí được coi là an toàn tại thời điểm phát hành, nó vẫn có thể\n"
"có lỗ hổng bảo mật được phát hiện sau khi phát hành phiên bản Mandriva\n"
@@ -500,11 +504,11 @@ msgstr ""
"cho nhu cầu của bạn."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -560,7 +564,7 @@ msgid ""
msgstr ""
"X (cho hệ thống cửa sổ X) là trái tim của giao diện đồ họa GNU/Linux\n"
"mà trên đó mọi môi trường đồ họa (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) được kết hợp trong Mandriva Linux.\n"
+"WindowMaker, etc.) được kết hợp trong Mageia.\n"
"\n"
"Bạn sẽ được xem danh sách các tham số khác nhau để thay đổi sao\n"
"cho việc hiển thị đồ họa được tối ưu.\n"
@@ -673,41 +677,45 @@ msgstr ""
"thị."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -716,15 +724,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -738,10 +746,10 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Lúc này bạn cần chọn nơi nào trên đĩa cứng sẽ cài đặt hệ điều hành\n"
-"Mandriva Linux. Nếu như đĩa cứng chưa có gì hoặc nếu đã có một hệ\n"
+"Mageia. Nếu như đĩa cứng chưa có gì hoặc nếu đã có một hệ\n"
"điều hành đang sử dụng toàn bộ không gian đĩa, bạn cần thực hiện việc\n"
"phân vùng đĩa. Về cơ bản, việc phân vùng một ổ đĩa cứng là phân chia\n"
-"các ổ lý luận, tạo không gian để cài đặt hệ thống Mandriva Linux mới.\n"
+"các ổ lý luận, tạo không gian để cài đặt hệ thống Mageia mới.\n"
"\n"
"Do kết quả của quá trình phân vùng thường không thay đổi lại được nữa,\n"
"nên việc phân vùng có thể gây sợ hãi và căng thẳng nếu bạn không phải\n"
@@ -768,7 +776,7 @@ msgstr ""
"lập lại kích thước phân vùng của MS Windows mà có thể không bị mất bất\n"
"kỳ dữ liệu nào. Tuy nhiên bạn rất nên thực hiện việc sao lưu dữ liệu trước "
"đã.\n"
-"Nên chọn giải pháp này nếu muốn dùng cả Mandriva Linux và Windows trên\n"
+"Nên chọn giải pháp này nếu muốn dùng cả Mageia và Windows trên\n"
"cùng một máy tính.\n"
"\n"
" Trước khi chọn tùy chọn này, hãy hiểu là sau khi thực hiện cách này,\n"
@@ -777,7 +785,7 @@ msgstr ""
"liệu và cài đặt phần mềm mới.\n"
"\n"
" * \"%s\": nếu muốn xoá toàn bộ dữ liệu và các phân vùng\n"
-"hiện có trên ổ cứng và thay thế bằng hệ thống Mandriva Linux mới,\n"
+"hiện có trên ổ cứng và thay thế bằng hệ thống Mageia mới,\n"
"hãy dùng tùy chọn này. Hãy thận trọng với tùy chọn này vì sẽ không\n"
"thể thay đổi lựa chọn sau khi đã khẳng định.\n"
"\n"
@@ -898,7 +906,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -917,7 +925,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -939,15 +947,15 @@ msgstr ""
"Nhấn lên \"%s\" khi bạn sẵn sàng format các phân vùng.\n"
"\n"
"Nhấn lên \"%s\" nếu muốn chọn một phân vùng khác cho việc\n"
-"cài đặt hệ điều hành Mandriva Linux mới.\n"
+"cài đặt hệ điều hành Mageia mới.\n"
"\n"
"Nhấn lên \"%s\" nếu muốn chọn các phân vùng sẽ được kiểm\n"
"tra các khối bị hỏng trên bề mặt đĩa."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -959,7 +967,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Vào lúc bạn đang cài đặt Mandriva Linux, có thể đã có một số gói tin\n"
+"Vào lúc bạn đang cài đặt Mageia, có thể đã có một số gói tin\n"
"đã được cập nhật kể từ lúc phát hành phiên bản này. Một số lỗi chương\n"
"trình đã được sửa, các vấn đề bảo mật được giải quyết. Để cho bạn\n"
"được hưởng lợi từ các cập nhật này, bây giờ bạn có thể để tải chúng về\n"
@@ -972,7 +980,7 @@ msgstr ""
"đặt những gói được chọn, hoặc nhấn \"%s\" để thôi cập nhật."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -981,7 +989,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1006,24 +1014,27 @@ msgid "Security Administrator"
msgstr "Người Quản Trị Bảo Mật:"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1039,21 +1050,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1070,17 +1083,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Vào lúc này, bạn cần chọn những phân vùng nào sẽ được dùng để cài đặt\n"
-"hệ thống Mandriva Linux. Nếu các phân vùng đã được xác lập từ lần cài\n"
+"hệ thống Mageia. Nếu các phân vùng đã được xác lập từ lần cài\n"
"đặt GNU/Linux trước đó hay được tạo bằng một công cụ phân vùng khác,\n"
"bạn có thể dùng chúng. Nếu chưa có, bạn sẽ sẽ phải thực hiện việc hoạch\n"
"định các phân vùng.\n"
@@ -1094,7 +1101,7 @@ msgstr ""
"\n"
" * \"%s\": để xóa mọi phân vùng có trên đĩa cứng được chọn.\n"
"\n"
-" * \"%s\": cho phép tự động tạo các phân vùng ext3 và swap\n"
+" * \"%s\": cho phép tự động tạo các phân vùng ext4 và swap\n"
"tại không gian trống của đĩa cứng.\n"
"\n"
" * \"%s\" : cho phép thực hiện thêm một số tính năng:\n"
@@ -1142,13 +1149,6 @@ msgstr ""
"\n"
"Để có thêm thông tin về các loại hệ thống tập tin hiện có, hãy đọc chương\n"
"ext2FS ở trong ``Tài liệu Tham khảo''.\n"
-"\n"
-"Nếu đang thực hiện cài đặt trên máy PPC, có thể bạn muốn tạo một phân vùng\n"
-"``bootstrap'' HFS có kích thước ít nhất 1MB để cho trình nạp khởi động\n"
-"yaboot. Nếu lập kích thước phân vùng này lớn hơn một chút (50MB), bạn sẽ "
-"thấy\n"
-"đó là nơi hữu ích để lưu trữ kernel dự phòng và các ảnh ramdisk cho các\n"
-"trường hợp khởi động khẩn cấp."
#: ../help.pm:526
#, c-format
@@ -1186,41 +1186,47 @@ msgid "Toggle between normal/expert mode"
msgstr "Chuyển đổi giữa chế độ bình thường và chuyên gia"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Phát hiện ra có hơn một phân vùng Microsoft Windows trên đĩa cứng.\n"
"Hãy chọn một phân vùng cần lập lại kích thước để cài đặt hệ điều\n"
-"hành Mandriva Linux mới.\n"
+"hành Mageia mới.\n"
"\n"
"Mỗi phân vùng được liệt kê như sau: \"Tên Linux\", \"Tên Windows\"\n"
"\"Dung lượng\".\n"
@@ -1262,35 +1268,35 @@ msgstr ""
"nhấn \"%s\" để xem danh sách đầy đủ các quốc gia."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Bước này chỉ được kích hoạt khi phát hiện thấy một phân vùng GNU/Linux\n"
"đang có sẵn trên máy của bạn.\n"
"\n"
"DrakX cần được biết là bạn muốn thực hiện cài đặt mới hay là nâng cấp\n"
-"hệ thống Mandriva Linux hiện có:\n"
+"hệ thống Mageia hiện có:\n"
"\n"
" * \"%s\": hầu hết các trường hợp, việc này sẽ xóa sạch hệ thống\n"
"cũ. Nếu bạn muốn thay đổi các phân vùng của đĩa cứng, hoặc thay đổi\n"
@@ -1299,13 +1305,13 @@ msgstr ""
"lên ví dụ như thư mục \"home\".\n"
"\n"
" * \"%s\": loại cài đặt này cho phép bạn nâng cấp các gói hiện thời\n"
-"đã cài trên hệ thống Mandriva Linux của bạn. Việc sắp xếp phân vùng\n"
+"đã cài trên hệ thống Mageia của bạn. Việc sắp xếp phân vùng\n"
"hiện thời và dữ liệu không bị thay đổi. Hầu hết các bước cấu hình khác\n"
"vẫn sẵn có để dùng, giống như việc cài đặt chuẩn.\n"
"\n"
-"Tùy chọn ``Nâng cấp'' sẽ hoạt động tốt trên hệ thống Mandriva Linux\n"
+"Tùy chọn ``Nâng cấp'' sẽ hoạt động tốt trên hệ thống Mageia\n"
"phiên bản \"8.1\" hay mới hơn. Không nên thực hiện nâng cấp cho các\n"
-"phiên bản cũ hơn Mandriva Linux \"8.1\" ."
+"phiên bản cũ hơn Mageia \"8.1\" ."
#: ../help.pm:594
#, c-format
@@ -1346,7 +1352,7 @@ msgstr ""
"tổ chức bàn phím giữa La tinh và không phải La tinh."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1362,8 +1368,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1523,7 +1528,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1546,10 +1551,10 @@ msgstr ""
"tùy chọn này khi bạn hiểu rõ việc mình làm."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1570,7 +1575,7 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Đây là lúc chọn hệ thống in ấn dùng cho máy tính này. Các hệ điều\n"
@@ -1595,7 +1600,7 @@ msgstr ""
"\n"
"Nếu bây giờ bạn chọn nhưng sau này lại muốn đổi hệ thống in, bạn có thể\n"
"thực hiện bằng việc chạy PrinterDrake từ Trung Tâm Điều Khiển của\n"
-"Mandriva Linux và nhấn nút \"%s\"."
+"Mageia và nhấn nút \"%s\"."
#: ../help.pm:768
#, c-format
@@ -1620,7 +1625,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1701,8 +1706,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1719,7 +1723,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1766,7 +1770,7 @@ msgstr ""
"\n"
" * \"%s\": Nếu muốn cấu hình truy cập mạng cục bộ hay truy cập\n"
"internet. Tham khảo tài liệu hoặc dùng Trung Tâm Điều Khiển \n"
-"Mandriva Linux để thực hiện sau khi cài đặt xong để có được sự trợ\n"
+"Mageia để thực hiện sau khi cài đặt xong để có được sự trợ\n"
"giúp hoàn chỉnh.\n"
"\n"
" * \"%s\": cho phép cấu hình địa chỉ proxy HTTP và FTP nếu máy tính\n"
@@ -1782,7 +1786,7 @@ msgstr ""
" * \"%s\": nếu muốn thay đổi cấu hình của trình nạp khởi động, hãy\n"
"nhấn nút này. Nên dùng chỉ khi bạn là người dùng thành thạo. Hãy tham\n"
"khảo tài liệu đi kèm hoặc trợ giúp trực tuyến về cấu hình trình nạp khởi\n"
-"động trong Trung Tâm Cấu Hình Mandriva Linux.\n"
+"động trong Trung Tâm Cấu Hình Mageia.\n"
"\n"
" * \"%s\": bạn có thể điều khiển dịch vụ nào sẽ được chạy trên máy\n"
"này. Nếu bạn có kế hoạch dùng máy này làm máy chủ, hãy xem lại\n"
@@ -1804,13 +1808,13 @@ msgid "Graphical Interface"
msgstr "Giao Diện Đồ Họa"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"Hãy chọn ổ cứng mà bạn muốn xoá để cài đặt phân vùng Mandriva Linux\n"
+"Hãy chọn ổ cứng mà bạn muốn xoá để cài đặt phân vùng Mageia\n"
"mới. Hãy thận trọng, mọi dữ liệu có trên đó sẽ bị mất và không thể khôi\n"
"phục lại được !"
@@ -1818,12 +1822,14 @@ msgstr ""
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Nhấn chuột lên \"%s\" nếu muốn xóa mọi dữ liệu và phân vùng hiện có\n"
"trên đĩa cứng này. Hãy thận trọng, sau khi nhấn \"%s\", bạn sẽ không\n"
diff --git a/perl-install/install/help/po/wa.po b/perl-install/install/help/po/wa.po
index a040f08fb..5a1ff1248 100644
--- a/perl-install/install/help/po/wa.po
+++ b/perl-install/install/help/po/wa.po
@@ -13,6 +13,7 @@ msgstr ""
"PO-Revision-Date: 2005-02-24 21:42+0100\n"
"Last-Translator: Pablo Saratxaga <pablo@walon.org>\n"
"Language-Team: Walloon <linux-wa@walon.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -20,15 +21,15 @@ msgstr ""
"X-Generator: KBabel 1.0.2\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"Divant d' aler pus avant, vos dvrîz lére atintivmint l' licince.\n"
-"Ele covere li distribucion Mandriva Linux, si vos estoz d' acoird\n"
+"Ele covere li distribucion Mageia, si vos estoz d' acoird\n"
"avou les termes del licince, clitchîz sol boesse «%s».\n"
"Ôtrumint, clitchîz sol boton «%s» po renonder l' copiutrece."
@@ -133,7 +134,8 @@ msgstr "Voloz vs eployî cisse fonccionålité chal?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -143,24 +145,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"Chal pa dzeur i gn a ene djivêye des pårticions Linux k' i gn a so vosse\n"
@@ -170,7 +176,8 @@ msgstr ""
"Ni prindoz nén ene trop ptite grandeu ôtrumint vos n' pôrîz astaler "
"åjheymint\n"
"des programes, fåte di plaece. Si vos vloz mete vos dnêyes so ene pårticion\n"
-"diferinne, vos dvroz ossu fé ene po «/home» (çou ki vos pôroz fé seulmint si\n"
+"diferinne, vos dvroz ossu fé ene po «/home» (çou ki vos pôroz fé seulmint "
+"si\n"
"vos avoz pus d' ene pårticion del sôre Linux).\n"
"\n"
"Po l' informåcion, tchaeke pårticion est mostrêye come çoula: «no», "
@@ -198,15 +205,15 @@ msgstr ""
"«deujhinme deure plake», evnd..."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"L' astalaedje del distribucion Mandriva Linux si fwait a pårti di\n"
+"L' astalaedje del distribucion Mageia si fwait a pårti di\n"
"sacwantès plakes lazer diferinnes. Si on pacaedje k' a stî tchoezi\n"
"est so ene ôte plake lazer, DrakX frè rexhe li plake k' est el lijheu\n"
"d' plakes lazer eyet vos dmander d' î mete li cene k' i fåt.\n"
@@ -217,12 +224,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -295,8 +301,8 @@ msgstr ""
"ostant ki possibe, les specifiaedjes del «Linux Standard Base».\n"
"\n"
" Tchoezi l' groupe «LSB» astalrè eto les naweas del séreye «2.4»,\n"
-"el plaece do prémetou nawea «2.6». Çoula c' est po-z esse 100%% copatibe avou "
-"LSB. Mins nerén, si vos n' tchoezixhoz nén li groupe «LSB»\n"
+"el plaece do prémetou nawea «2.6». Çoula c' est po-z esse 100%% copatibe "
+"avou LSB. Mins nerén, si vos n' tchoezixhoz nén li groupe «LSB»\n"
"vos ploz tot l' minme aveur on sistinme k' est copatibe LSB cåzu a 100%%.\n"
"\n"
" * «%s»: al fén, si l' såme di l' éndjole c' est d' esse on sierveu,\n"
@@ -350,7 +356,7 @@ msgid "Truly minimal install"
msgstr "Astalåcion vormint minimåle"
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -363,10 +369,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -396,12 +402,12 @@ msgstr ""
"\n"
"!! Si on pacaedje di sierveu a stî tchoezi, soeye-t i en esprès, ou k' i\n"
"fwait pårteye d' on groupe, on vos dmandrè d' acertiner ki vos vloz\n"
-"vormint astaler ces sierveus la. Avou Mandriva Linux tot l' minme ké\n"
+"vormint astaler ces sierveus la. Avou Mageia tot l' minme ké\n"
"sierveu k' a stî astalé est, avou les prémetowès tchuzes, metou en\n"
"alaedje tins di l' enondaedje di l' éndjole. Minme s' i sont seurs\n"
"et k' i gn a nou cnoxhou problinme å moumint ki l' distribucion a stî\n"
"fwaite, i s' pout k' des trôs di såvrité soeyexhe discovrous après ki\n"
-"cisse modêye chal di Mandriva Linux fouxhe fineye. Si vos n' savoz nén çou\n"
+"cisse modêye chal di Mageia fouxhe fineye. Si vos n' savoz nén çou\n"
"k' on siervice dné est supôzé di fé, ou pocwè k' il est astalé, adon\n"
"clitchîz so «%s». Si vos clitchîz so «%s» les siervices mostrés sront\n"
"astalés eyet enondés otomaticmint. !!\n"
@@ -534,11 +540,11 @@ msgstr ""
"tchoezi l' ci ki vs convént l' mî."
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -594,7 +600,7 @@ msgid ""
msgstr ""
"X (po Sistinme di Purneas X) est l' miercour di l' eterface grafike di\n"
"GNU/Linux, ki tos les evironmints grafikes (KDE, Gnome, AfterStep,\n"
-"WindowsMaker, evnd.) ki vnèt avou Mandriva Linux end ont mezåjhe.\n"
+"WindowsMaker, evnd.) ki vnèt avou Mageia end ont mezåjhe.\n"
"\n"
"Vos åroz ene djivêye des diferins parametes a candjî po-z aveur\n"
"voste eterface grafike a l' idêye:\n"
@@ -712,41 +718,45 @@ msgstr ""
"ou si vos n' arivez nén a-z apontyî l' cåte videyo, vos ploz responde «%s»."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -755,15 +765,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -777,11 +787,11 @@ msgid ""
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
"Asteure, vos dvoz tchoezi wice ki vos vloz astaler vosse sistinme\n"
-"d' operance Mandriva Linux so vosse deure plake. Si l' plake est vude,\n"
+"d' operance Mageia so vosse deure plake. Si l' plake est vude,\n"
"ou si les sistinmes d' operance k' i gn a ddja prindèt tote li plaece,\n"
"vos avoz mezåjhe del pårti. Fé on pårtixhaedje d' ene deure plake çoula\n"
"vout dire del pårti lodjicmint po fé del plaece po-z astaler vosse novea\n"
-"sistinme Mandriva Linux.\n"
+"sistinme Mageia.\n"
"\n"
"Come, on côp ki li pårtixhaedje est fwait, on n' sait rivni en erî\n"
"(normålmint), les apurdisses ont sovint sogne ou peu di s' enonder.\n"
@@ -812,7 +822,7 @@ msgstr ""
"Li candjmint d' grandeu des pårticions si pout fé sins piede des dnêyes,\n"
"a condicion del disfragminter d' aprume, eyet kel pårticion soeye ene\n"
"pårticion FAT. C' est hôtmint ricmandé di fé ene copeye di såvrité.\n"
-"Cisse solucions est ricmandêye si vos vloz eployî Mandriva Linux et\n"
+"Cisse solucions est ricmandêye si vos vloz eployî Mageia et\n"
"Microsoft Windows sol minme copiutrece.\n"
"\n"
"Divant di tchoezi cisse solucion, i vos fåt comprinde kel grandeu di vosse\n"
@@ -821,7 +831,7 @@ msgstr ""
"les dnêyes da vosse ou astaler des noveas programes.\n"
"\n"
" * «%s»: si vos vloz disfacer totes les dnêyes k' i gn a\n"
-"so vosse deure plake po mete el plaece li sistinme Mandriva Linux,\n"
+"so vosse deure plake po mete el plaece li sistinme Mageia,\n"
"vos ploz tchoezi cisse tchuze chal.\n"
"Prindoz asteme k' avou cisse solucion chal vos n' pôroz nén rivni en erî\n"
"on côp ki vos avoz acertiné vosse tchuze.\n"
@@ -954,7 +964,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -973,7 +983,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -998,15 +1008,15 @@ msgstr ""
"pårticions.\n"
"\n"
"Clitchîz so «%s» si vos vloz tchoezi ene ôte pårticion po-z astaler\n"
-"vosse novea sistinme d' operance Mandriva Linux.\n"
+"vosse novea sistinme d' operance Mageia.\n"
"\n"
"Clitchîz so «%s» si vos vloz tchoezi les pårticions ki sront\n"
"verifieyes po vey s' i gn a des måvas bloks sol deure plake."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -1018,7 +1028,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"Å moumint ki vos astalez Mandriva Linux, i s' pout bén k' i gn åye\n"
+"Å moumint ki vos astalez Mageia, i s' pout bén k' i gn åye\n"
"des pacaedjes k' ont stî metous a djoû dispoy li moumint do fijhaedje\n"
"del distribucion. Motoit k' des bugs ont stî coridjîs, ou des problinmes\n"
"di såvrité. Por vos profiter di ces metaedjes a djoû, on vs propôze\n"
@@ -1034,7 +1044,7 @@ msgstr ""
"po leyî ouve."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -1043,7 +1053,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -1068,24 +1078,27 @@ msgid "Security Administrator"
msgstr "Manaedjeu pol såvrité"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -1101,21 +1114,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1132,17 +1147,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
"Chal, vos dvoz tchoezi so kéne/kénès pårticion(s) ki vos voloz astaler\n"
-"vosse sistinme Mandriva Linux. Si vos pårticions ont ddja stî fwaites\n"
+"vosse sistinme Mageia. Si vos pårticions ont ddja stî fwaites\n"
"(p. egz. li dierin côp ki vos avoz astalé GNU/Linux ou bén avou ene ôte\n"
"usteye di pårtixhaedje), vos les ploz eployî. Ôtrumint, des pårticions dvèt\n"
"esse defineyes so vosse deure plake. Ça vout dire ki vos alez dispårti\n"
@@ -1159,8 +1168,8 @@ msgstr ""
" * «%s»: cisse tchuze va disfacer totes les pårticions k' i gn a sol "
"tchoezeye deure plake.\n"
"\n"
-" * «%s»: cisse tchuze va fé des pårticions ext3 pol sistinme et ene di swap "
-"e prindant li plaece di libe k' i gn a sol deure plake et carculant "
+" * «%s»: cisse tchuze va fé des pårticions ext4 pol sistinme et ene di "
+"swap e prindant li plaece di libe k' i gn a sol deure plake et carculant "
"otomaticmint li grandeu li meyeuse.\n"
"\n"
"«%s» dene des ôtes tchuzes, pus spepieuses:\n"
@@ -1214,12 +1223,6 @@ msgstr ""
"\n"
"Po-z aveur des informåcions so les diferins sistinmes di fitchîs k' i gn a,\n"
"lijhoz li tchaptrê so «ext2FS» do «Manuel di Referince».\n"
-"\n"
-"Si vos alez astaler sor ene éndjole PPC, motoit ki vos vôroz fé ene pitite "
-"pårticion HFS «d' enondaedje» di 1 Mo å moens po l' eployî avou l' enondrece "
-"«yaboot». Si vos decidez del fé on pô pus grande, par egzimpe 50 Mo, çoula "
-"pôreut fé ene clapante plaece po-z î mete on nawea et ene imådje ramdisk po "
-"des cas d' urdjince k' i gn åreut."
#: ../help.pm:526
#, c-format
@@ -1257,48 +1260,54 @@ msgid "Toggle between normal/expert mode"
msgstr "Candjî pol môde normå/spepieus"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"Pus d' ene pårticion Windows a stî detectêye so vosse deure plake.\n"
"Tchoezixhoz li cene ki vos vloz candjî si grandeu, po-z astaler vosse\n"
-"novea sistinme d'&nbsp;operance Mandriva Linux s' i vs plait.\n"
+"novea sistinme d'&nbsp;operance Mageia s' i vs plait.\n"
"\n"
"Po l' informåcion, tchaeke pårticion est mostrêye come çoula:\n"
"«no Linux», «no Windows», «grandeu».\n"
"\n"
"Li «no Linux» est costrût come çouchal:\n"
-"«sôre del deure plake» + «limero del deure plake» + «limero del pårticion» (par "
-"egzimpe, hd+a+1 --> «hda1»)\n"
+"«sôre del deure plake» + «limero del deure plake» + «limero del "
+"pårticion» (par egzimpe, hd+a+1 --> «hda1»)\n"
"\n"
"Li «sôre del deure plake» est «hd» si vosse deure plake est del sôre IDE,\n"
"oudonbén «sd» si elle est del sôre SCSI.\n"
@@ -1335,35 +1344,35 @@ msgstr ""
"boton «%s» po-z aveur li djivêye en etir di tos les payis del Daegn."
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"Ciste etape est enondêye seulmint si ene viye pårticion GNU/Linux a stî\n"
"trovêye so voste éndjole.\n"
"\n"
"DrakX asteure a mezåjhe di saveur si vos vloz fé ene novele astalåcion\n"
-"oudonbén fé on metaedje a djoû d' on sistinme Mandriva Linux k' i gn a\n"
+"oudonbén fé on metaedje a djoû d' on sistinme Mageia k' i gn a\n"
"ddja sol plake:\n"
"\n"
" * «%s»: çouchal va spotchî ttafwait l' vî sistinme k' i gn\n"
@@ -1374,14 +1383,14 @@ msgstr ""
"ki n' seront nén spotcheyes.\n"
"\n"
" * «%s»: cisse classe d' astalaedje chal vos permete di\n"
-"mete a djoû les pacaedjes k' i gn a so vosse sistinme Mandriva Linux.\n"
+"mete a djoû les pacaedjes k' i gn a so vosse sistinme Mageia.\n"
"Vosse pårtixhaedje est wårdé et les dnêyes des uzeus n' sont nén\n"
"candjeyes. Li plupårt des ôtès etapes d' apontiaedje dimorèt, come\n"
"pol cas d' èn astalaedje sitandård.\n"
"\n"
"Eployî l' tchuze «Metaedje a djoû» rote comifåt po mete a djoû des\n"
-"sistinmes Mandriva Linux modêye «8.1» ou pus nouve. Mins l' fé po\n"
-"des modêyes di Mandriva Linux pus viyes kel «8.1» n' est nén ricmandé."
+"sistinmes Mageia modêye «8.1» ou pus nouve. Mins l' fé po\n"
+"des modêyes di Mageia pus viyes kel «8.1» n' est nén ricmandé."
#: ../help.pm:594
#, c-format
@@ -1423,7 +1432,7 @@ msgstr ""
"l' taprece nén latene."
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1439,8 +1448,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1485,7 +1493,7 @@ msgstr ""
"Åd fwait do sopoirt UTF-8 (unicôde): Unicôde est on novea ecôdaedje\n"
"ki permete di scrire tos les lingaedjes del Daegn. Mins i gn a co des\n"
"sacwès a-z amidrer dins l' sopoirt UTF-8 so GNU/Linux. Vola pocwè\n"
-"Mandriva Linux eployrè UTF-8 ou nén sorlon les tchuzes ki vos djhoz:\n"
+"Mageia eployrè UTF-8 ou nén sorlon les tchuzes ki vos djhoz:\n"
"\n"
" * Si vos tchoezixhoz on lingaedje avou ene foite eritance d' on dné\n"
"ecôdaedje (lingaedjes latin1, rûsse, djaponès, chinwès, corêyin, taylandès\n"
@@ -1628,7 +1636,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1655,10 +1663,10 @@ msgstr ""
"k' vos fjhoz."
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1679,12 +1687,12 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"Chal, vos tchoezixhoz li ké sistinme d' imprimaedje vos vloz eployî\n"
"so vosse copiutrece. Des ôtes sistinmes d' operance k' i gn a\n"
-"vos dnèt onk, mins Mandriva Linux vos lait tchoezi inte deus, tchaeke onk\n"
+"vos dnèt onk, mins Mageia vos lait tchoezi inte deus, tchaeke onk\n"
"estant l' meyeu dins on cas dné.\n"
"\n"
" * «%s» - ki vout dire «print, do not queue» (imprimer sins cawêye), est\n"
@@ -1708,8 +1716,7 @@ msgstr ""
"\n"
"Si vos tchoezixhoz asteure, et ki pus tård vos n' inmez nén vosse sistinme\n"
"d' imprimaedje, vos l' poloz åjheymint candjî avou l' usteye d' apontiaedje\n"
-"des scrireces, a-z enonder a pårti do cinte di contrôle di Mandriva Linux, "
-"tot\n"
+"des scrireces, a-z enonder a pårti do cinte di contrôle di Mageia, tot\n"
"clitchant sol boton «%s»."
#: ../help.pm:768
@@ -1735,7 +1742,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1815,8 +1822,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1833,7 +1839,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1884,7 +1890,7 @@ msgstr ""
"\n"
" * «%s»: Si vos vloz apontyî li rantoele (locåle ou daegnrece),\n"
"clitchîz so ç' boton chal. Lijhoz li documintåcion so papî oudonbén\n"
-"li cene håynåve a pårti do cinte di controle di Mandriva Linux\n"
+"li cene håynåve a pårti do cinte di controle di Mageia\n"
"après l' astalaedje po-z aveur pus di racsegnes.\n"
"\n"
" * «%s»: vos permete d' apontyî les adresses des procsis HTTP eyet FTP\n"
@@ -1901,7 +1907,7 @@ msgstr ""
" * «%s»: si vos vloz candjî l' apontiaedje di l' enondrece\n"
"di l' éndjole. Vos nel duvrîz fé ki si vos estoz seur di vos.\n"
"Lijhoz li documintåcion so l' enondrece dins l' cinte di controle\n"
-"di Mandriva Linux po pus di racsegnes.\n"
+"di Mageia po pus di racsegnes.\n"
"\n"
" * «%s»: vos pôroz controler finmint les kés siervices ki vos vloz\n"
"enonder so voste éndjole. Si vos l' vloz eployî po fé do sierveu c' est\n"
@@ -1923,26 +1929,28 @@ msgid "Graphical Interface"
msgstr "Eterface grafike"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
"Tchoezixhoz li deure plake ki vos vloz disfacer po-z î astaler vosse\n"
-"novele pårticion Mandriva Linux. Prindoz asteme, totes les dnêyes\n"
+"novele pårticion Mageia. Prindoz asteme, totes les dnêyes\n"
"k' i gn a sol deure plake vont esse pierdowes, et vos n' pôroz les rapexhî."
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"Clitchîz so «%s» si vos vloz disfacer totes les dnêyes et totes les\n"
"pårticions k' i gn a so vosse deure plake.\n"
@@ -2034,8 +2042,10 @@ msgstr "<- Di dvant"
#~ "GNU/Linux: vos dvoz dner li scret po «root». «root» est li manaedjeu\n"
#~ "do sistinme eyet l' seu otorijhî a fé des metaedjes a djoû, radjouter\n"
#~ "des uzeus, candjî l' apontiaedje djenerå do sistinme, evnd. Po fé court,\n"
-#~ "«root» pout fé ttafwait! C' est po çoula k' i vs fåt bén tchoezi li scret\n"
-#~ "di «root», onk ki soeye målåjhey a trover - DrakX vos dirè s' il est trop\n"
+#~ "«root» pout fé ttafwait! C' est po çoula k' i vs fåt bén tchoezi li "
+#~ "scret\n"
+#~ "di «root», onk ki soeye målåjhey a trover - DrakX vos dirè s' il est "
+#~ "trop\n"
#~ "åjhey. Come vos l' poloz vey, vos avoz l' tchuze di n' nén dner di "
#~ "scret,\n"
#~ "mins nos nel consians nén; «root» pout tot fé, çoula vout dire eto k' i "
@@ -2063,7 +2073,8 @@ msgstr "<- Di dvant"
#~ "\n"
#~ "Si vosse rantoele eploye li protocole LDAP, NIS ou les dominnes Windows "
#~ "PDC\n"
-#~ "po l' otintifiaedje, tchoezixhoz li moyén d' otintifiaedje corek po «%s».\n"
+#~ "po l' otintifiaedje, tchoezixhoz li moyén d' otintifiaedje corek po "
+#~ "«%s».\n"
#~ "Si vos n' savoz nén, dimandez a l' administreu del rantoele locåle.\n"
#~ "\n"
#~ "Si vos avoz des rujhes po vs rimimbrer les screts, vos ploz tchoezi di\n"
diff --git a/perl-install/install/help/po/zh_CN.po b/perl-install/install/help/po/zh_CN.po
index 7525aa257..fdb983a8b 100644
--- a/perl-install/install/help/po/zh_CN.po
+++ b/perl-install/install/help/po/zh_CN.po
@@ -11,23 +11,24 @@ msgstr ""
"POT-Creation-Date: 2008-09-12 12:22+0200\n"
"PO-Revision-Date: 2006-04-22 15:41+0800\n"
"Last-Translator: Funda Wang <fundawang@linux.net.cn>\n"
-"Language-Team: Mandriva Linux i18n Team <cooker-i18n@mandrivalinux.org>\n"
+"Language-Team: Mageia i18n Team <cooker-i18n@mandrivalinux.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
-"在继续之前, 您应该仔细阅读许可协议的条款。该许可适用于整个 Mandriva Linux发行"
-"版。如果您同意其中的全部条款, 请选中\"%s\"框。如果不同意, 单击\"%s\"按钮将重"
-"新启动您的计算机。"
+"在继续之前, 您应该仔细阅读许可协议的条款。该许可适用于整个 Mageia发行版。如果"
+"您同意其中的全部条款, 请选中\"%s\"框。如果不同意, 单击\"%s\"按钮将重新启动您"
+"的计算机。"
#: ../help.pm:20
#, c-format
@@ -116,7 +117,8 @@ msgstr "您要使用此特性吗?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -126,24 +128,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"在此列出了您硬盘上已有的 Linux\n"
@@ -175,16 +181,16 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux 安装分布于多张 CD-ROM 中。如果选中软件包位于另外的 CD-ROM, "
-"DrakX 将弹出当前\n"
+"Mageia 安装分布于多张 CD-ROM 中。如果选中软件包位于另外的 CD-ROM, DrakX 将弹"
+"出当前\n"
"CD, 并要求您插入所需的正确 CD。如果您手中没有所请求的 CD, 只需单击\"%s\", 就"
"不会安装相应的软件包了。"
@@ -193,12 +199,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -248,11 +253,11 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"现在该指定要在您的系统中安装哪些程序了。Mandriva Linux\n"
+"现在该指定要在您的系统中安装哪些程序了。Mageia\n"
"为您准备了数千个软件包。而为了使管理软件包更加容易, 软件包已经按相似程度分成"
"了多个组。\n"
"\n"
-"Mandriva Linux\n"
+"Mageia\n"
"按四个类别对软件包进行了分类。您可以从不同的类别混合选择应用程序。也就是说, "
"``工作站''中也可以选择安装``服务器''分类中的应用程序。\n"
"\n"
@@ -310,7 +315,7 @@ msgstr "真正的最小安装"
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:152
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you choose to install packages individually, the installer will present\n"
"a tree containing all packages classified by groups and subgroups. While\n"
@@ -323,10 +328,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -354,9 +359,9 @@ msgstr ""
"\n"
"!!\n"
"如果选择了服务器软件包, 不管是您特意选中的, 还是因为该软件包是某组的成员, 您"
-"都需要确认是否真的想要安装这些服务器。默认情况下, Mandriva Linux\n"
+"都需要确认是否真的想要安装这些服务器。默认情况下, Mageia\n"
"会在启动时自动启动已安装的全部服务。尽管在发行版送出时这些服务是安全的, 但完"
-"全有可能在此版本 Mandriva Linux\n"
+"全有可能在此版本 Mageia\n"
"完成后发现了相应软件的安全漏洞。如果您并不知道特定服务的用途, 或者不知道为什"
"么要安装这些服务, 请单击\"%s\"。单击\"%s\"将安装列出的服务, 并且启动时这些服"
"务会被自动启动。\n"
@@ -473,11 +478,11 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:234
-#, c-format
+#, fuzzy, c-format
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -531,7 +536,7 @@ msgid ""
"want to check \"%s\" if your machine is to act as a server, or if you were\n"
"not successful in getting the display configured."
msgstr ""
-"X(代表 X 窗口系统)是 GNU/Linux 图形界面的核心部分。Mandriva Linux\n"
+"X(代表 X 窗口系统)是 GNU/Linux 图形界面的核心部分。Mageia\n"
"附带的所有图形环境(KDE、GNOME、AfterStep、WindowMaker 等)都依赖于该系统。\n"
"\n"
"您将会看到不同的参数列表, 以便进行图形显示选项的更改来达到最佳状态。其中包"
@@ -638,41 +643,45 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -681,15 +690,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -702,11 +711,11 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"在这一步里, 您需要决定您想要将 Mandriva Linux\n"
+"在这一步里, 您需要决定您想要将 Mageia\n"
"操作系统安装到硬盘的何处。如果您的硬盘完全是空的, 或者已有操作系统使用了所有"
"的空间, 您就必须要对硬盘进行分区。粗略的说, 对硬盘进行分区就是将其划分成几个"
"逻辑上不同的部分, 以便创建安装您新的\n"
-"Mandriva Linux 系统所需的空间。\n"
+"Mageia 系统所需的空间。\n"
"\n"
"由于对硬盘进行分区通常是不可恢复的, 并且可能导致数据丢失, 所以对于没有经验的"
"用户来说, 分区是十分危险的操作。所幸的是, DrakX\n"
@@ -729,7 +738,7 @@ msgstr ""
"Microsoft Windows FAT 或 NTFS 分区的大小。更改分区大小通常不会造成任何数据丢"
"失, 但您必须事先对 Windows\n"
"分区进行了磁盘碎片整理。我们强烈推荐您事先备份您的数据。如果您想要在同一台计"
-"算机上使用 Mandriva Linux 和 Microsoft\n"
+"算机上使用 Mageia 和 Microsoft\n"
"Windows, 则推荐使用此选项。\n"
"\n"
" 注意, 在执行这一过程之后, 您原有的 Microsoft Windows 分区将会比先前小一"
@@ -737,7 +746,7 @@ msgstr ""
"下可用来存储数据或安装新软件的剩余空间也会变少。\n"
"\n"
" * \"%s\"。如果您想要删除硬盘上的全部数据和全部分区, 并将其替换为全新的 "
-"Mandriva Linux\n"
+"Mageia\n"
"系统, 请选择此选项。请额外小心, 因为在您确认之后, 此操作无法撤销。\n"
"\n"
" !! 如果您选择了此选项, 您硬盘上的全部数据都将被删除。 !!\n"
@@ -856,7 +865,7 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -875,7 +884,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -893,15 +902,15 @@ msgstr ""
"\n"
"如果您准备好格式化分区了, 请单击\"%s\"。\n"
"\n"
-"如果您想要选择其它分区用于安装 Mandriva Linux 操作系统, 请单击\"%s\"。\n"
+"如果您想要选择其它分区用于安装 Mageia 操作系统, 请单击\"%s\"。\n"
"\n"
"如果您想要选择要检测磁盘上的坏块, 请单击单击\"%s\"。"
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -913,7 +922,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"在您安装 Mandriva Linux\n"
+"在您安装 Mageia\n"
"的这个时候, 很可能有些软件包在发行之后已经更新。有些故障已经被修正, 有些安全"
"问题已经被解决。为了让您能够享用这些更新, 您现在可以从 Internet\n"
"上下载它们。如果您的 Internet 连接已经可以使用, 请选择\"%s\"。如果您愿意以后"
@@ -921,12 +930,12 @@ msgstr ""
"\n"
"\n"
"选择\"%s\"将显示一个清单, 其中列出的地方都提供了更新软件包。您应该选择离您地"
-"理位置较近的镜像。之后会出现一个可以下载的软件包选择树:复查选项, 然后单击\"%"
-"s\"来获取并安装选中的软件包, 要终止请单击\"%s\"。"
+"理位置较近的镜像。之后会出现一个可以下载的软件包选择树:复查选项, 然后单击"
+"\"%s\"来获取并安装选中的软件包, 要终止请单击\"%s\"。"
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -935,7 +944,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -945,8 +954,8 @@ msgstr ""
"包含关键数据, 或者将直接暴露于 Internet\n"
"之下, 则应该设置较高的安全级别。较高的安全级别通常以损失易用性作为代价。\n"
"\n"
-"如果您不知道要选择什么, 请保持默认选项。您可以稍后从 Mandriva Linux 控制中心"
-"的一部分 draksec\n"
+"如果您不知道要选择什么, 请保持默认选项。您可以稍后从 Mageia 控制中心的一部分 "
+"draksec\n"
"来更改安全级别。\n"
"\n"
"请在\"%s\"域中填入要负责安全的人的电子邮件地址。安全信息将被发送到该地址。"
@@ -958,24 +967,27 @@ msgstr "安全管理员"
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -991,21 +1003,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -1022,17 +1036,11 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"在这一步中, 您需要选择要使用哪个或哪些分区来安装您的 Mandriva Linux 系统。如"
-"果已经定义了分区, 不管是先前安装的 GNU/Linux\n"
+"在这一步中, 您需要选择要使用哪个或哪些分区来安装您的 Mageia 系统。如果已经定"
+"义了分区, 不管是先前安装的 GNU/Linux\n"
"还是由其它分区工具划分的, 您都可以使用已有的分区。否则, 必须对硬盘分区进行定"
"义。\n"
"\n"
@@ -1044,7 +1052,7 @@ msgstr ""
"\n"
" * \"%s\": 此选项将删除选中硬盘上的全部分区\n"
"\n"
-" * \"%s\": 此选项可在您硬盘的剩余空间中为您自动创建 ext3 和交换分区\n"
+" * \"%s\": 此选项可在您硬盘的剩余空间中为您自动创建 ext4 和交换分区\n"
"\n"
"\"%s\": 使您可以访问额外特性: \n"
"\n"
@@ -1084,11 +1092,6 @@ msgstr ""
" * Ctrl+M 设定挂载点\n"
"\n"
"要的关于不同的文件系统类型的更多信息, 请查看“参考手册”中 ext2FS 一章。\n"
-"\n"
-"如果您在 PPC 计算机上安装, 您可能需要创建至少 1MB 大小的 HFS“bootstrap”分区, "
-"该分区将用于 yaboot\n"
-"引导程序。如果您创建的分区再稍微大点, 比如说 50MB, 您可能会发现这个分区可用来"
-"存储内核或紧急引导时的虚拟磁盘映像。"
#: ../help.pm:526
#, c-format
@@ -1126,40 +1129,46 @@ msgid "Toggle between normal/expert mode"
msgstr "在正常/专家模式间切换"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"在硬盘上检测到了多个 Microsoft 分区。请选择一个分区改变大小, 以便安装您新\n"
-"的 Mandriva Linux 操作系统。\n"
+"的 Mageia 操作系统。\n"
"\n"
"每个分区都是按“Linux 名称”、“Windows 名称”、“容量”顺序列出的。\n"
"\n"
@@ -1198,47 +1207,46 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"仅当在您的计算机上发现了已有的 GNU/Linux 分区, 才会激活这一步骤。\n"
"\n"
-"DrakX 现在需要知道您是想要执行全新安装, 还是升级已有的 Mandriva Linux 系"
-"统:\n"
+"DrakX 现在需要知道您是想要执行全新安装, 还是升级已有的 Mageia 系统:\n"
"\n"
" *\n"
"\"%s\":总体来说, 这将完全销毁旧系统。但是, 根据您选择的分区方案, 您可以让现"
"有的数据(比如\"主\"目录)免于覆盖。如果您想要更改硬盘的分区方案, 或者更该文件"
"系统, 您就应该使用此选项。\n"
"\n"
-" * \"%s\":这一安装级别允许您更新目前安装在您 Mandriva Linux\n"
+" * \"%s\":这一安装级别允许您更新目前安装在您 Mageia\n"
"系统上的软件包。您的分区方案和用户数据都不会被破坏。绝大多数配置步骤仍然可"
"用, 与标准安装类似。\n"
"\n"
-"使用``升级''选项应该在 \"8.1\" 或更新版本的 Mandriva Linux 系统上工作正常。不"
-"推荐在先于 \"8.1\" 版本的\n"
-"Mandriva Linux 系统上执行升级。"
+"使用``升级''选项应该在 \"8.1\" 或更新版本的 Mageia 系统上工作正常。不推荐在先"
+"于 \"8.1\" 版本的\n"
+"Mageia 系统上执行升级。"
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:594
@@ -1277,7 +1285,7 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1293,8 +1301,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1332,8 +1339,8 @@ msgstr ""
"\n"
"关于 UTF-8 (Unicode) 支持:Unicode 是一种新的字符编码, 该编码可支持所有现存的"
"语言。但是, 在 GNU/Linux 下完全支持\n"
-"Unicode, 仍然在开发和完善中。由此原因, Mandriva Linux 会根据用户的选择是否使"
-"用 UTF-8:\n"
+"Unicode, 仍然在开发和完善中。由此原因, Mageia 会根据用户的选择是否使用 "
+"UTF-8:\n"
"\n"
" * 如果您所选的语言自身有强制性的编码(latin1 语言、俄语、日语、中文、朝鲜语、"
"泰语、希腊语、土耳其语及大多数 iso-8859-2\n"
@@ -1348,9 +1355,9 @@ msgstr ""
"项\"%s\"。\n"
"\n"
"\n"
-"请注意, 系统没有限制您只能选择一种额外的语言。您可以选择多种语言, 甚至选择\"%"
-"s\"框表明您想要安装全部语言。选择支持某种语言, 意味着同时安装该语言的翻译、字"
-"体、拼写检查程序等等。\n"
+"请注意, 系统没有限制您只能选择一种额外的语言。您可以选择多种语言, 甚至选择"
+"\"%s\"框表明您想要安装全部语言。选择支持某种语言, 意味着同时安装该语言的翻"
+"译、字体、拼写检查程序等等。\n"
"\n"
"要在系统中所安装的不同语言之间切换, 请以 \"root\" 身份执行 \"/usr/sbin/"
"localedrake\"\n"
@@ -1462,7 +1469,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1484,10 +1491,10 @@ msgstr ""
# DO NOT BOTHER TO MODIFY HERE, SEE:
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1508,11 +1515,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"现在, 应该为您的计算机选择打印系统了。其它的操作系统也许只提供了一种选择, 但 "
-"Mandriva Linux\n"
+"Mageia\n"
"提供了两种。每种打印系统都能够在不同的配置中大展身手。\n"
"\n"
" * \"%s\" --\n"
@@ -1531,7 +1538,7 @@ msgstr ""
"还包括一个图形界面, 可用来打印或选择打印机选项, 以及管理打印机。\n"
"\n"
"如果您现在进行了选择, 但稍后又发现您并不喜欢所选择的打印系统, 可以轻松修改。"
-"只需从 Mandriva Linux Control Center中选择\n"
+"只需从 Mageia Control Center中选择\n"
"PrinterDrake, 然后单击\"%s\"按钮。"
#: ../help.pm:768
@@ -1557,7 +1564,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1635,8 +1642,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1653,7 +1659,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1691,12 +1697,12 @@ msgstr ""
"\n"
" * \"%s\":如果您觉得检测的配置有错, 可以点击\"%s\"来更改与该卡关联的参数。\n"
"\n"
-" * \"%s\":默认情况下, DrakX 会将您的图形界面配置为 \"800x600\" 或 \"1024x768"
-"\"\n"
+" * \"%s\":默认情况下, DrakX 会将您的图形界面配置为 \"800x600\" 或 "
+"\"1024x768\"\n"
"分辨率。如果这不适合您的话, 请单击\"%s\"重新配置您的图形界面。\n"
"\n"
" * \"%s\":如果您想要配置您的 Internet 或局域网访问, 现在就可以进行。请参考印"
-"刷文档或在安装完成后使用 Mandriva Linux\n"
+"刷文档或在安装完成后使用 Mageia\n"
"Control Center来获得完整的在线帮助。\n"
"\n"
" * \"%s\":如果您所安装的计算机位于代理服务器之后, 这里将允许您配置 HTTP 和 "
@@ -1709,7 +1715,7 @@ msgstr ""
"指南''中的相应章节, 以获得关于防火墙设置的细节。\n"
"\n"
" * \"%s\":如果您想要更改您的引导程序配置, 请单击此按钮。这仅适用于高级用户。"
-"请参考印刷文档或 Mandriva Linux 控制中心中关于引导程序配置的帮助。\n"
+"请参考印刷文档或 Mageia 控制中心中关于引导程序配置的帮助。\n"
"\n"
" * \"%s\":在此您可以精确调整要在您的计算机上运行哪些服务。如果您要将此计算机"
"用作服务器, 那么应该复查这一设置。"
@@ -1730,25 +1736,27 @@ msgid "Graphical Interface"
msgstr "图形界面"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"请选择您为了安装新的 Mandriva Linux 分区想要删除的硬盘分区。\n"
+"请选择您为了安装新的 Mageia 分区想要删除的硬盘分区。\n"
"注意, 该硬盘分区上的所有数据将丢失并且无法恢复!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"如果您想要删除此硬盘上的所有数据和分区, 请单击“%s”。注意, 单击“%s”后, \n"
"您将无法恢复此硬盘上的任何数据或分区(包括任何 Windows 数据)。\n"
@@ -1831,8 +1839,8 @@ msgstr "<- 上一步"
#~ "trust\n"
#~ "everybody who uses your computer, you can choose to have \"%s\"."
#~ msgstr ""
-#~ "要保卫您的 GNU/Linux 系统, 现在是最关键的一步:您需要输入 \"root\" 密码。"
-#~ "\"Root\"\n"
+#~ "要保卫您的 GNU/Linux 系统, 现在是最关键的一步:您需要输入 \"root\" 密"
+#~ "码。\"Root\"\n"
#~ "是系统管理员, 而且是唯一有权进行更新、添加用户、更改泛系统配置等操作的用"
#~ "户。简言之, \"root\"\n"
#~ "可以做任何事!这就是为什么您必须选择难于猜测的密码:如果您的密码太简单了, "
diff --git a/perl-install/install/help/po/zh_TW.po b/perl-install/install/help/po/zh_TW.po
index c671d521f..f95db7e15 100644
--- a/perl-install/install/help/po/zh_TW.po
+++ b/perl-install/install/help/po/zh_TW.po
@@ -23,6 +23,7 @@ msgstr ""
"PO-Revision-Date: 2006-04-06 20:30+0200\n"
"Last-Translator: Shiva Huang <shivahuang@gmail.com>\n"
"Language-Team: Traditional Chinese <zh@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -32,15 +33,15 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
#: ../help.pm:14
-#, c-format
+#, fuzzy, c-format
msgid ""
"Before continuing, you should carefully read the terms of the license. It\n"
-"covers the entire Mandriva Linux distribution. If you agree with all the\n"
+"covers the entire Mageia distribution. If you agree with all the\n"
"terms it contains, check the \"%s\" box. If not, clicking on the \"%s\"\n"
"button will reboot your computer."
msgstr ""
"在繼續之前,您應該仔細的閱讀下面相關版權條款。\n"
-"這包含整個 Mandriva Linux 發行版的版權內容。若是您同意裡面的所有條款,\n"
+"這包含整個 Mageia 發行版的版權內容。若是您同意裡面的所有條款,\n"
"請點選 \"%s\" 按鈕,否則請點選 \"%s\" 按鈕並自動重新開機。"
#: ../help.pm:20
@@ -129,7 +130,8 @@ msgstr "您想要使用這個功能嗎?"
#: ../help.pm:57
#, c-format
msgid ""
-"Listed here are the existing Linux partitions detected on your hard drive.\n"
+"Listed here are the existing Linux partitions detected on your hard disk "
+"drive.\n"
"You can keep the choices made by the wizard, since they are good for most\n"
"common installations. If you make any changes, you must at least define a\n"
"root partition (\"/\"). Do not choose too small a partition or you will not\n"
@@ -139,24 +141,28 @@ msgid ""
"\n"
"Each partition is listed as follows: \"Name\", \"Capacity\".\n"
"\n"
-"\"Name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Name\" is structured: \"hard disk drive type\", \"hard disk drive number"
+"\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard drive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard disk drive is an IDE hard "
+"disk drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". For IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". For "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc."
msgstr ""
"目前所列出來的是硬碟機上偵測到已經存在的 Linux 分割區.\n"
@@ -186,15 +192,15 @@ msgstr ""
"就是指 \"SCSI ID 編號為第二小的那一台硬碟\", 然後依此類推下去."
#: ../help.pm:88
-#, c-format
+#, fuzzy, c-format
msgid ""
-"The Mandriva Linux installation is distributed on several CD-ROMs. If a\n"
+"The Mageia installation is distributed on several CD-ROMs. If a\n"
"selected package is located on another CD-ROM, DrakX will eject the current\n"
"CD and ask you to insert the required one. If you do not have the requested\n"
"CD at hand, just click on \"%s\", the corresponding packages will not be\n"
"installed."
msgstr ""
-"Mandriva Linux 安裝片包含數張光碟片。若所選擇的套件是位於另一張光碟上,\n"
+"Mageia 安裝片包含數張光碟片。若所選擇的套件是位於另一張光碟上,\n"
"DrakeX 會退出現在的光碟且要求您放入所要求的正確光碟片。\n"
"若您沒有要求的光碟在手上的話, 就按下 \"%s\", 對應的套件不會被安裝."
@@ -202,12 +208,11 @@ msgstr ""
#, fuzzy, c-format
msgid ""
"It's now time to specify which programs you wish to install on your system.\n"
-"There are thousands of packages available for Mandriva Linux, and to make "
-"it\n"
+"There are thousands of packages available for Mageia, and to make it\n"
"simpler to manage, they have been placed into groups of similar\n"
"applications.\n"
"\n"
-"Mandriva Linux sorts package groups in four categories. You can mix and\n"
+"Mageia sorts package groups in four categories. You can mix and\n"
"match applications from the various categories, so a ``Workstation''\n"
"installation can still have applications from the ``Server'' category\n"
"installed.\n"
@@ -257,10 +262,10 @@ msgid ""
"command-line interface. The total size of this installation is about 65\n"
"megabytes."
msgstr ""
-"現在是指定那個程式您想要裝在您的系統上. Mandriva Linux 有上千個套件,\n"
+"現在是指定那個程式您想要裝在您的系統上. Mageia 有上千個套件,\n"
"為了簡單管理, 相似性質的應用程式已經被分類到群組裡.\n"
"\n"
-"Mandriva Linux 分類套件群組於四個類別. 你能由不同類別混合與配對應用程式,\n"
+"Mageia 分類套件群組於四個類別. 你能由不同類別混合與配對應用程式,\n"
"所以一個 ``工作站''安裝也能安裝``伺服器''類別安裝的應用程式.\n"
"\n"
" * \"%s\": 如果您計畫用您的機器當作一個工作站, 選擇一個或\n"
@@ -328,10 +333,10 @@ msgid ""
"!! If a server package has been selected, either because you specifically\n"
"chose the individual package or because it was part of a group of packages,\n"
"you'll be asked to confirm that you really want those servers to be\n"
-"installed. By default Mandriva Linux will automatically start any installed\n"
+"installed. By default Mageia will automatically start any installed\n"
"services at boot time. Even if they are safe and have no known issues at\n"
"the time the distribution was shipped, it is entirely possible that\n"
-"security holes were discovered after this version of Mandriva Linux was\n"
+"security holes were discovered after this version of Mageia was\n"
"finalized. If you do not know what a particular service is supposed to do "
"or\n"
"why it's being installed, then click \"%s\". Clicking \"%s\" will install\n"
@@ -442,7 +447,7 @@ msgstr ""
msgid ""
"X (for X Window System) is the heart of the GNU/Linux graphical interface\n"
"on which all the graphical environments (KDE, GNOME, AfterStep,\n"
-"WindowMaker, etc.) bundled with Mandriva Linux rely upon.\n"
+"WindowMaker, etc.) bundled with Mageia rely upon.\n"
"\n"
"You'll see a list of different parameters to change to get an optimal\n"
"graphical display.\n"
@@ -553,41 +558,45 @@ msgstr ""
"您想核對選取 \"%s\"."
#: ../help.pm:319
-#, c-format
+#, fuzzy, c-format
msgid ""
-"You now need to decide where you want to install the Mandriva Linux\n"
-"operating system on your hard drive. If your hard drive is empty or if an\n"
+"You now need to decide where you want to install the Mageia\n"
+"operating system on your hard disk drive. If your hard disk drive is empty "
+"or if an\n"
"existing operating system is using all the available space you will have to\n"
-"partition the drive. Basically, partitioning a hard drive means to\n"
+"partition the drive. Basically, partitioning a hard disk drive means to\n"
"logically divide it to create the space needed to install your new\n"
-"Mandriva Linux system.\n"
+"Mageia system.\n"
"\n"
-"Because the process of partitioning a hard drive is usually irreversible\n"
+"Because the process of partitioning a hard disk drive is usually "
+"irreversible\n"
"and can lead to data losses, partitioning can be intimidating and stressful\n"
"for the inexperienced user. Fortunately, DrakX includes a wizard which\n"
"simplifies this process. Before continuing with this step, read through the\n"
"rest of this section and above all, take your time.\n"
"\n"
-"Depending on the configuration of your hard drive, several options are\n"
+"Depending on the configuration of your hard disk drive, several options are\n"
"available:\n"
"\n"
" * \"%s\". This option will perform an automatic partitioning of your blank\n"
"drive(s). If you use this option there will be no further prompts.\n"
"\n"
" * \"%s\". The wizard has detected one or more existing Linux partitions on\n"
-"your hard drive. If you want to use them, choose this option. You will then\n"
+"your hard disk drive. If you want to use them, choose this option. You will "
+"then\n"
"be asked to choose the mount points associated with each of the partitions.\n"
"The legacy mount points are selected by default, and for the most part it's\n"
"a good idea to keep them.\n"
"\n"
-" * \"%s\". If Microsoft Windows is installed on your hard drive and takes\n"
+" * \"%s\". If Microsoft Windows is installed on your hard disk drive and "
+"takes\n"
"all the space available on it, you will have to create free space for\n"
"GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n"
"data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n"
"FAT or NTFS partition. Resizing can be performed without the loss of any\n"
"data, provided you've previously defragmented the Windows partition.\n"
"Backing up your data is strongly recommended. Using this option is\n"
-"recommended if you want to use both Mandriva Linux and Microsoft Windows on\n"
+"recommended if you want to use both Mageia and Microsoft Windows on\n"
"the same computer.\n"
"\n"
" Before choosing this option, please understand that after this\n"
@@ -596,15 +605,15 @@ msgid ""
"to store your data or to install new software.\n"
"\n"
" * \"%s\". If you want to delete all data and all partitions present on\n"
-"your hard drive and replace them with your new Mandriva Linux system, "
-"choose\n"
+"your hard disk drive and replace them with your new Mageia system, choose\n"
"this option. Be careful, because you will not be able to undo this "
"operation\n"
"after you confirm.\n"
"\n"
" !! If you choose this option, all data on your disk will be deleted. !!\n"
"\n"
-" * \"%s\". This option appears when the hard drive is entirely taken by\n"
+" * \"%s\". This option appears when the hard disk drive is entirely taken "
+"by\n"
"Microsoft Windows. Choosing this option will simply erase everything on the\n"
"drive and begin fresh, partitioning everything from scratch.\n"
"\n"
@@ -617,12 +626,12 @@ msgid ""
"experience. For more instructions on how to use the DiskDrake utility,\n"
"refer to the ``Managing Your Partitions'' section in the ``Starter Guide''."
msgstr ""
-"您需要決定那裡你想要安裝 Mandriva Linux\n"
+"您需要決定那裡你想要安裝 Mageia\n"
"作業系統於那個硬碟. 如果您的硬碟是全新尚未使用或\n"
"已經存在的作業系統正在使用全部可被利用的空間, 您將\n"
"必須進行分割硬碟的動作. 基本上, 分割硬碟的動作包含\n"
"邏輯上劃分它以建立需要的空間來安裝您的新\n"
-"Mandriva Linux 系統.\n"
+"Mageia 系統.\n"
"\n"
"因為分割硬碟的動作程序通常是無法回復的\n"
"且能導致資料遺失, 若您是一位不熟練的使用者,\n"
@@ -648,7 +657,7 @@ msgstr ""
"重新調整 Microsoft Windows FAT 或 NTFS 分割區大小.\n"
"若您已經 defragment(不連續碎片重新整理) Windows 分割\n"
"且它用 FAT 格式.重新調整分割可以被執行於不遺失任何資料\n"
-"資料備份是被強烈建議的. 若您想要使用 Mandriva Linux and Microsoft\n"
+"資料備份是被強烈建議的. 若您想要使用 Mageia and Microsoft\n"
"Windows 於同一台電腦, 使用此選項是被建議的.\n"
"\n"
" 選擇此選項前, 請了解當使用這個過程項目後, Microsoft Windows\n"
@@ -656,7 +665,7 @@ msgstr ""
" Microsoft Windows 來存您的資料與安裝新軟體.\n"
"\n"
" * \"%s\". 如果您想要刪除全部現存於您的硬碟上資料與\n"
-"分割且以您的新 Mandriva Linux 系統替換他們,\n"
+"分割且以您的新 Mageia 系統替換他們,\n"
"選此選項. 但是小心使用, 你將無法於你確認之後\n"
"逆反你的決定.\n"
"\n"
@@ -774,7 +783,7 @@ msgid "Save packages selection"
msgstr ""
#: ../help.pm:408
-#, c-format
+#, fuzzy, c-format
msgid ""
"If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n"
"reformat some of them and erase any data they contain. To do so, please\n"
@@ -793,7 +802,7 @@ msgid ""
"Click on \"%s\" when you're ready to format the partitions.\n"
"\n"
"Click on \"%s\" if you want to choose another partition for your new\n"
-"Mandriva Linux operating system installation.\n"
+"Mageia operating system installation.\n"
"\n"
"Click on \"%s\" if you wish to select partitions which will be checked for\n"
"bad blocks on the disk."
@@ -808,13 +817,13 @@ msgstr ""
"您將不行重新恢復它.\n"
"當您準備好要格式化此分割, 點選 \"%s\".\n"
"\n"
-"若您想選擇另一個分割給您的新的 Mandriva Linux 作業系統安裝, 點選了\"%s\".\n"
+"若您想選擇另一個分割給您的新的 Mageia 作業系統安裝, 點選了\"%s\".\n"
"若您想選擇要被檢查磁碟上壞的區塊的分割, 點選.\"%s\"."
#: ../help.pm:437
-#, c-format
+#, fuzzy, c-format
msgid ""
-"By the time you install Mandriva Linux, it's likely that some packages will\n"
+"By the time you install Mageia, it's likely that some packages will\n"
"have been updated since the initial release. Bugs may have been fixed,\n"
"security issues resolved. To allow you to benefit from these updates,\n"
"you're now able to download them from the Internet. Check \"%s\" if you\n"
@@ -826,7 +835,7 @@ msgid ""
"will appear: review the selection, and press \"%s\" to retrieve and install\n"
"the selected package(s), or \"%s\" to abort."
msgstr ""
-"此時您安裝 Mandriva Linux 時, 或許自從初始釋出的某些套件將有更新.\n"
+"此時您安裝 Mageia 時, 或許自從初始釋出的某些套件將有更新.\n"
"臭蟲或許已經修正了, 安全性問題解決了. 為了允許您從這些更新中\n"
"獲得利益, 您現在可以由網際網路下載他們. 如果您有可用的網際網路連線,\n"
"選取 \"%s\", 或是, 如果您想稍後安裝更新套件, 選取 \"%s\".\n"
@@ -836,7 +845,7 @@ msgstr ""
"被選擇的套件, 或 \"%s\" 以中斷放棄."
#: ../help.pm:450
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, DrakX will allow you to choose the security level you desire\n"
"for your machine. As a rule of thumb, the security level should be set\n"
@@ -845,7 +854,7 @@ msgid ""
"generally obtained at the expense of ease of use.\n"
"\n"
"If you do not know what to choose, keep the default option. You'll be able\n"
-"to change it later with the draksec tool, which is part of Mandriva Linux\n"
+"to change it later with the draksec tool, which is part of Mageia\n"
"Control Center.\n"
"\n"
"Fill the \"%s\" field with the e-mail address of the person responsible for\n"
@@ -856,8 +865,8 @@ msgstr ""
"安全性等級應該設定較高. 權衡之下, 較高的安全性等級換得不容易使用.\n"
"\n"
"如果您不知道選什麼, 保留預設選項. 您將能在稍後用 draksec 工具改變它,\n"
-"draksec 是 Mandriva Linux 控制中心的一部分.用負責安全性的人的 e-mail 地址填"
-"入 \"%s\" 欄位. 安全性訊息將被寄到\n"
+"draksec 是 Mageia 控制中心的一部分.用負責安全性的人的 e-mail 地址填入 \"%s\" "
+"欄位. 安全性訊息將被寄到\n"
"那個位址."
#: ../help.pm:461
@@ -866,24 +875,27 @@ msgid "Security Administrator"
msgstr "安全性管理員:"
#: ../help.pm:464
-#, c-format
+#, fuzzy, c-format
msgid ""
"At this point, you need to choose which partition(s) will be used for the\n"
-"installation of your Mandriva Linux system. If partitions have already been\n"
+"installation of your Mageia system. If partitions have already been\n"
"defined, either from a previous installation of GNU/Linux or by another\n"
-"partitioning tool, you can use existing partitions. Otherwise, hard drive\n"
+"partitioning tool, you can use existing partitions. Otherwise, hard disk "
+"drive\n"
"partitions must be defined.\n"
"\n"
-"To create partitions, you must first select a hard drive. You can select\n"
+"To create partitions, you must first select a hard disk drive. You can "
+"select\n"
"the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n"
"``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n"
"\n"
-"To partition the selected hard drive, you can use these options:\n"
+"To partition the selected hard disk drive, you can use these options:\n"
"\n"
-" * \"%s\": this option deletes all partitions on the selected hard drive\n"
+" * \"%s\": this option deletes all partitions on the selected hard disk "
+"drive\n"
"\n"
-" * \"%s\": this option enables you to automatically create ext3 and swap\n"
-"partitions in the free space of your hard drive\n"
+" * \"%s\": this option enables you to automatically create ext4 and swap\n"
+"partitions in the free space of your hard disk drive\n"
"\n"
"\"%s\": gives access to additional features:\n"
"\n"
@@ -899,21 +911,23 @@ msgid ""
"work.\n"
"\n"
" * \"%s\": discards all changes and reloads the partition table that was\n"
-"originally on the hard drive.\n"
+"originally on the hard disk drive.\n"
"\n"
" * \"%s\": un-checking this option will force users to manually mount and\n"
"unmount removable media such as floppies and CD-ROMs.\n"
"\n"
" * \"%s\": use this option if you wish to use a wizard to partition your\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": use this option to cancel your changes.\n"
"\n"
" * \"%s\": allows additional actions on partitions (type, options, format)\n"
-"and gives more information about the hard drive.\n"
+"and gives more information about the hard disk drive.\n"
"\n"
-" * \"%s\": when you are finished partitioning your hard drive, this will\n"
+" * \"%s\": when you are finished partitioning your hard disk drive, this "
+"will\n"
"save your changes back to disk.\n"
"\n"
"When defining the size of a partition, you can finely set the partition\n"
@@ -930,16 +944,10 @@ msgid ""
"\n"
" * Ctrl-m to set the mount point\n"
"\n"
-"To get information about the different file system types available, please\n"
+"To get information about the different filesystem types available, please\n"
"read the ext2FS chapter from the ``Reference Manual''.\n"
-"\n"
-"If you are installing on a PPC machine, you will want to create a small HFS\n"
-"``bootstrap'' partition of at least 1MB which will be used by the yaboot\n"
-"bootloader. If you opt to make the partition a bit larger, say 50MB, you\n"
-"may find it a useful place to store a spare kernel and ramdisk images for\n"
-"emergency boot situations."
msgstr ""
-"在這個階段, 您需要選擇要用來安裝 Mandriva Linux 系統的分割區.\n"
+"在這個階段, 您需要選擇要用來安裝 Mageia 系統的分割區.\n"
"如果分割區已經被定義了, 不管是從舊有的 GNU/Linux 安裝或是\n"
"另一個處理分割區的工具, 您可以使用原本已經劃分好的分割區.\n"
"否則硬碟分割必須要被定義.\n"
@@ -951,7 +959,7 @@ msgstr ""
"\n"
" * \"%s\": 這個選項刪除在所選的影碟上的全部分割區\n"
"\n"
-" * \"%s\": 這個選項使您自動建立 ext3 與 swap 分割區於您的硬碟上的空白空間\n"
+" * \"%s\": 這個選項使您自動建立 ext4 與 swap 分割區於您的硬碟上的空白空間\n"
"\n"
"\"%s\": 給多加的功能的使用:\n"
"\n"
@@ -969,7 +977,8 @@ msgstr ""
"\n"
" * \"%s\": 如果您想用精靈來分割您的硬碟, 使用這個選項. 如果您沒有對於\n"
"操作分割的好的了解, 這是被建議的.\n"
-"hard drive. This is recommended if you do not have a good understanding of\n"
+"hard disk drive. This is recommended if you do not have a good understanding "
+"of\n"
"partitioning.\n"
"\n"
" * \"%s\": 用這個選項來取消您的變更.\n"
@@ -992,12 +1001,6 @@ msgstr ""
"\n"
"要得到關於不同可用的檔案系統的資訊, 請從 ``Reference Manual (參考手冊)''\n"
"閱讀 ext2FS 章節.\n"
-"\n"
-"如果您正在安裝於一個 PPC 機器, 您將想要建立一個小的 HFS\n"
-"``bootstrap'' 分割至少 1MB 以用於 yaboot 開機載入器. 如果您選擇使分割大一"
-"些,\n"
-"像 50MB, 您或許發現它是一個好用的貯存一個備用核心與 ramdisk\n"
-"影像給緊急使用開機的好地方."
#: ../help.pm:526
#, c-format
@@ -1035,40 +1038,46 @@ msgid "Toggle between normal/expert mode"
msgstr "切換一般/專家模式"
#: ../help.pm:536
-#, c-format
+#, fuzzy, c-format
msgid ""
-"More than one Microsoft partition has been detected on your hard drive.\n"
+"More than one Microsoft partition has been detected on your hard disk "
+"drive.\n"
"Please choose the one which you want to resize in order to install your new\n"
-"Mandriva Linux operating system.\n"
+"Mageia operating system.\n"
"\n"
"Each partition is listed as follows: \"Linux name\", \"Windows name\"\n"
"\"Capacity\".\n"
"\n"
-"\"Linux name\" is structured: \"hard drive type\", \"hard drive number\",\n"
+"\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive "
+"number\",\n"
"\"partition number\" (for example, \"hda1\").\n"
"\n"
-"\"Hard drive type\" is \"hd\" if your hard dive is an IDE hard drive and\n"
-"\"sd\" if it is a SCSI hard drive.\n"
+"\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk "
+"drive and\n"
+"\"sd\" if it is a SCSI hard disk drive.\n"
"\n"
-"\"Hard drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n"
-"hard drives:\n"
+"\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With "
+"IDE\n"
+"hard disk drives:\n"
"\n"
-" * \"a\" means \"master hard drive on the primary IDE controller\";\n"
+" * \"a\" means \"master hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"b\" means \"slave hard drive on the primary IDE controller\";\n"
+" * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n"
"\n"
-" * \"c\" means \"master hard drive on the secondary IDE controller\";\n"
+" * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n"
"\n"
-" * \"d\" means \"slave hard drive on the secondary IDE controller\".\n"
+" * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n"
"\n"
-"With SCSI hard drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n"
+"With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" "
+"means\n"
"\"second lowest SCSI ID\", etc.\n"
"\n"
-"\"Windows name\" is the letter of your hard drive under Windows (the first\n"
+"\"Windows name\" is the letter of your hard disk drive under Windows (the "
+"first\n"
"disk or partition is called \"C:\")."
msgstr ""
"多於一個 Microsoft 分割區已經在您的硬碟上被偵測到. 請選擇您希望要重新調整 大"
-"小的分割以便安裝您的新的 Mandriva Linux 作業系統.\n"
+"小的分割以便安裝您的新的 Mageia 作業系統.\n"
"\n"
"每個分割區都列出了像是: \"Linux 名稱\", \"Windows 名稱\", \"容量\".\n"
"\n"
@@ -1107,45 +1116,45 @@ msgstr ""
"請按下 \"%s\" 按鈕來看完整的國家清單。"
#: ../help.pm:572
-#, c-format
+#, fuzzy, c-format
msgid ""
"This step is activated only if an existing GNU/Linux partition has been\n"
"found on your machine.\n"
"\n"
"DrakX now needs to know if you want to perform a new installation or an\n"
-"upgrade of an existing Mandriva Linux system:\n"
+"upgrade of an existing Mageia system:\n"
"\n"
" * \"%s\". For the most part, this completely wipes out the old system.\n"
"However, depending on your partitioning scheme, you can prevent some of\n"
"your existing data (notably \"home\" directories) from being over-written.\n"
-"If you wish to change how your hard drives are partitioned, or to change\n"
-"the file system, you should use this option.\n"
+"If you wish to change how your hard disk drives are partitioned, or to "
+"change\n"
+"the filesystem, you should use this option.\n"
"\n"
" * \"%s\". This installation class allows you to update the packages\n"
-"currently installed on your Mandriva Linux system. Your current "
-"partitioning\n"
+"currently installed on your Mageia system. Your current partitioning\n"
"scheme and user data will not be altered. Most of the other configuration\n"
"steps remain available and are similar to a standard installation.\n"
"\n"
-"Using the ``Upgrade'' option should work fine on Mandriva Linux systems\n"
+"Using the ``Upgrade'' option should work fine on Mageia systems\n"
"running version \"8.1\" or later. Performing an upgrade on versions prior\n"
-"to Mandriva Linux version \"8.1\" is not recommended."
+"to Mageia version \"8.1\" is not recommended."
msgstr ""
"這個步驟是在您的機器上找到已經存在的 GNU/Linux 分割區才會啟用。\n"
"\n"
-"DrakX 需要知道您是要安裝新的系統或者升級既有的 Mandriva Linux 系統:\n"
+"DrakX 需要知道您是要安裝新的系統或者升級既有的 Mageia 系統:\n"
"\n"
" * \"%s\". 大致來說,這將會完全抹除舊的系統。然而,根據您的分割區配\n"
"置方式,您可以避免部分現存的資料 (例如 \"home\" 之中的目錄) 被完全\n"
"抹除。如果您想要改變您的硬碟分割方式,或改變檔案系統,您應該使用這\n"
"個選項。\n"
"\n"
-" * \"%s\". 這個安裝方式讓您更新目前安裝在您的 Mandriva Linux 中的套\n"
+" * \"%s\". 這個安裝方式讓您更新目前安裝在您的 Mageia 中的套\n"
"件。您目前的分割方式和使用者資料不會被改變。大部分其他的設定步驟仍\n"
"然會出現並且和標準的安裝過程相似。\n"
"\n"
-"使用 ``更新'' 選項應該在 Mandriva Linux 版本 \"8.1\" 或更新的系統上\n"
-"可以正常運作。不建議從 Mandriva Linux 版本 \"8.1\" 或更早的系統進行更新。"
+"使用 ``更新'' 選項應該在 Mageia 版本 \"8.1\" 或更新的系統上\n"
+"可以正常運作。不建議從 Mageia 版本 \"8.1\" 或更早的系統進行更新。"
#: ../help.pm:594
#, c-format
@@ -1181,7 +1190,7 @@ msgstr ""
"按鍵組合以便切換於拉丁與非拉丁鍵盤形式之中。"
#: ../help.pm:612
-#, c-format
+#, fuzzy, c-format
msgid ""
"The first step is to choose your preferred language.\n"
"\n"
@@ -1197,8 +1206,7 @@ msgid ""
"\n"
"About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n"
"cover all existing languages. However full support for it in GNU/Linux is\n"
-"still under development. For that reason, Mandriva Linux's use of UTF-8 "
-"will\n"
+"still under development. For that reason, Mageia's use of UTF-8 will\n"
"depend on the user's choices:\n"
"\n"
" * If you choose a language with a strong legacy encoding (latin1\n"
@@ -1235,8 +1243,7 @@ msgstr ""
"選擇英文當預設語言且在進階部份選擇 \"%s\".\n"
"\n"
"關於 UTF-8 (unicode) 支援:Unicode 是一個新的字元編碼以涵蓋所有存在的語言。\n"
-"然而, 在 GNU/Linux 下完全的支援仍然在開發中. 因為那個原因, Mandriva Linux "
-"的\n"
+"然而, 在 GNU/Linux 下完全的支援仍然在開發中. 因為那個原因, Mageia 的\n"
" UTF-8 使用將根據使用者的選擇而定:\n"
"\n"
" * 如果您選擇一個有偏重傳統編碼的語言 (latin1 語言、俄羅斯文、日文、中文、\n"
@@ -1361,7 +1368,7 @@ msgid ""
"\n"
" * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n"
"\n"
-"If DrakX can not determine where to place the boot sector, it'll ask you\n"
+"If DrakX cannot determine where to place the boot sector, it'll ask you\n"
"where it should place it. Generally, the \"%s\" is the safest place.\n"
"Choosing \"%s\" will not install any boot loader. Use this option only if "
"you\n"
@@ -1380,10 +1387,10 @@ msgstr ""
"您很清楚您在做什麼時才選擇這個選項。"
#: ../help.pm:745
-#, c-format
+#, fuzzy, c-format
msgid ""
"Now, it's time to select a printing system for your computer. Other\n"
-"operating systems may offer you one, but Mandriva Linux offers two. Each of\n"
+"operating systems may offer you one, but Mageia offers two. Each of\n"
"the printing systems is best suited to particular types of configuration.\n"
"\n"
" * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n"
@@ -1404,12 +1411,11 @@ msgid ""
"options and for managing the printer.\n"
"\n"
"If you make a choice now, and later find that you do not like your printing\n"
-"system you may change it by running PrinterDrake from the Mandriva Linux\n"
+"system you may change it by running PrinterDrake from the Mageia\n"
"Control Center and clicking on the \"%s\" button."
msgstr ""
"現在要選擇您的電腦要使用的列印系統. 其他作業系統或許只有提供您一種選擇,\n"
-"但是 Mandriva Linux 這邊提供了兩種選擇. 每一種列印系統是最適合於特別設定型"
-"態.\n"
+"但是 Mageia 這邊提供了兩種選擇. 每一種列印系統是最適合於特別設定型態.\n"
"\n"
" * \"%s\" - 是 ``print, do not queue (列印, 不排隊)'' 之縮寫字, 是當您有一"
"個\n"
@@ -1426,7 +1432,7 @@ msgstr ""
"\"%s\" 提供了圖形的介面前端給列印, 選擇列印的選項, 管理印表機.\n"
"\n"
"如果您現在做出決定, 且您之後發現不喜歡您的列印系統, 您可以藉由從\n"
-"Mandriva Linux 控制中心執行 PrinterDrake 點選 \"%s\" 按鍵改變它."
+"Mageia 控制中心執行 PrinterDrake 點選 \"%s\" 按鍵改變它."
#: ../help.pm:768
#, c-format
@@ -1451,7 +1457,7 @@ msgid ""
"found, DrakX will automatically install the appropriate driver.\n"
"\n"
"Because hardware detection is not foolproof, DrakX may fail in detecting\n"
-"your hard drives. If so, you'll have to specify your hardware by hand.\n"
+"your hard disk drives. If so, you'll have to specify your hardware by hand.\n"
"\n"
"If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n"
"want to configure options for it. You should allow DrakX to probe the\n"
@@ -1527,8 +1533,7 @@ msgid ""
"\n"
" * \"%s\": if you wish to configure your Internet or local network access,\n"
"you can do so now. Refer to the printed documentation or use the\n"
-"Mandriva Linux Control Center after the installation has finished to "
-"benefit\n"
+"Mageia Control Center after the installation has finished to benefit\n"
"from full in-line help.\n"
"\n"
" * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n"
@@ -1545,7 +1550,7 @@ msgid ""
" * \"%s\": if you wish to change your bootloader configuration, click this\n"
"button. This should be reserved to advanced users. Refer to the printed\n"
"documentation or the in-line help about bootloader configuration in the\n"
-"Mandriva Linux Control Center.\n"
+"Mageia Control Center.\n"
"\n"
" * \"%s\": through this entry you can fine tune which services will be run\n"
"on your machine. If you plan to use this machine as a server it's a good\n"
@@ -1568,25 +1573,27 @@ msgid "Graphical Interface"
msgstr "圖形介面"
#: ../help.pm:861
-#, c-format
+#, fuzzy, c-format
msgid ""
-"Choose the hard drive you want to erase in order to install your new\n"
-"Mandriva Linux partition. Be careful, all data on this drive will be lost\n"
+"Choose the hard disk drive you want to erase in order to install your new\n"
+"Mageia partition. Be careful, all data on this drive will be lost\n"
"and will not be recoverable!"
msgstr ""
-"選擇您想要抹除的硬碟來安裝新的 Mandriva Linux 分割. 小心,\n"
+"選擇您想要抹除的硬碟來安裝新的 Mageia 分割. 小心,\n"
"磁碟上全部資料將遺失且將無法挽回!"
#: ../help.pm:866
#, c-format
msgid ""
"Click on \"%s\" if you want to delete all data and partitions present on\n"
-"this hard drive. Be careful, after clicking on \"%s\", you will not be able\n"
-"to recover any data and partitions present on this hard drive, including\n"
+"this hard disk drive. Be careful, after clicking on \"%s\", you will not be "
+"able\n"
+"to recover any data and partitions present on this hard disk drive, "
+"including\n"
"any Windows data.\n"
"\n"
"Click on \"%s\" to quit this operation without losing data and partitions\n"
-"present on this hard drive."
+"present on this hard disk drive."
msgstr ""
"您如果想要刪除在這個硬碟上的全部資料與分割, 點選 \"%s\".\n"
"小心, 點選 \"%s\" 之後, 您將無法挽回任何在這個硬碟上的資料與分割, 包含\n"
diff --git a/perl-install/install/http.pm b/perl-install/install/http.pm
index 1ef8755b3..db111564c 100644
--- a/perl-install/install/http.pm
+++ b/perl-install/install/http.pm
@@ -1,11 +1,8 @@
-package install::http; # $Id$
+package install::http;
use urpm::download;
use common;
-
-# to be killed once callers got fixed
-sub close() {
-}
+use Cwd;
sub getFile {
my ($url, %o_options) = @_;
@@ -15,7 +12,7 @@ sub getFile {
sub parse_http_url {
my ($url) = @_;
- $url =~ m,^(?:http|ftp)://([^/:]+)(?::(\d+))?(/\S*)?$,;
+ $url =~ m,^(?:https?|ftp)://(?:[^:/]+:[^:/]+\@)?([^/:@]+)(?::(\d+))?(/\S*)?$,;
}
sub get_file_and_size_ {
@@ -40,6 +37,7 @@ sub get_file_and_size {
if (!$urpm) {
require install::pkgs;
$urpm = install::pkgs::empty_packages($::o->{keep_unrequested_dependencies});
+ $urpm->{options}{'curl-options'} = '-s';
}
my $cachedir = $urpm->{cachedir} || '/root';
@@ -55,6 +53,7 @@ sub get_file_and_size {
}
my $res = eval { urpm::download::sync_url($urpm, $url, %o_options, dir => $cachedir) };
+
if ($res) {
open(my $f, $file);
(-s $file, $f);
diff --git a/perl-install/install/install2 b/perl-install/install/install2
index a080c0aef..34f215a21 100755
--- a/perl-install/install/install2
+++ b/perl-install/install/install2
@@ -1,8 +1,8 @@
#!/usr/bin/perl
#- PERL_INSTALL_TEST is used to launch stage2 in debug mode
-#- Mandrake Graphic Install $Id$
-#- Copyright (C) 1999/2000 Mandrakesoft (pixel@mandrakesoft.com)
+#- Mandrake Graphic Install
+#- Copyright (C) 1999/2000 Mandrakesoft (pixel)
#-
#- This program is free software; you can redistribute it and/or modify
#- it under the terms of the GNU General Public License as published by
@@ -27,6 +27,9 @@ use install::install2;
$::testing = $ENV{PERL_INSTALL_TEST};
$::isStandalone = 0;
+#- workaround for WebKitGTK bug (mga#31294)
+$ENV{WEBKIT_DISABLE_COMPOSITING_MODE} = 1;
+
install::install2::main(@ARGV);
c::_exit(0);
diff --git a/perl-install/install/install2.pm b/perl-install/install/install2.pm
index 2cd404c37..7f6cbd6fe 100644
--- a/perl-install/install/install2.pm
+++ b/perl-install/install/install2.pm
@@ -1,11 +1,18 @@
-package install::install2; # $Id$
+package install::install2;
use diagnostics;
use strict;
use vars qw($o);
+use Getopt::Long qw(GetOptionsFromArray :config no_auto_abbrev no_getopt_compat pass_through);
BEGIN { $::isInstall = 1 }
+=head1 SYNOPSYS
+
+The installer stage2 real entry point
+
+=cut
+
#-######################################################################################
#- misc imports
#-######################################################################################
@@ -26,19 +33,36 @@ use any;
use log;
use fs;
use fs::any;
-
+use fs::mount;
+use messages;
#-#######################################################################################
-#-$O
-#-the big struct which contain, well everything (globals + the interactive methods ...)
-#-if you want to do a kickstart file, you just have to add all the required fields (see for example
-#-the variable $default)
+=head1 Data Structure
+
+=head2 $O;
+
+$o (or $::o in other modules) is the big struct which contain, well everything:
+
+=over 4
+
+=item * globals
+
+=item * the interactive methods
+
+=item * ...
+
+=back
+
+if you want to do a kickstart file, you just have to add all the required fields (see for example
+the variable $default)
+
+=cut
#-#######################################################################################
$o = $::o = {
# bootloader => { linear => 0, message => 1, timeout => 5, restricted => 0 },
#- packages => [ qw() ],
partitioning => { clearall => 0, eraseBadPartitions => 0, auto_allocate => 0 }, #-, readonly => 0 },
- authentication => { blowfish => 1, shadow => 1 },
+ authentication => { sha512 => 1, shadow => 1 },
locale => { lang => 'en_US' },
#- isUpgrade => 0,
toRemove => [],
@@ -65,7 +89,7 @@ $o = $::o = {
#- eth0 => { DEVICE => "eth0", IPADDR => '1.2.3.4', NETMASK => '255.255.255.128' }
#- },
},
-
+ untranslated_license => messages::main_license_raw(),
#-step : the current one
#-prefix
#-mouse
@@ -76,21 +100,40 @@ $o = $::o = {
};
+=head1 Steps Navigation
+
+=over
+
+=cut
sub installStepsCall {
my ($o, $auto, $fun, @args) = @_;
$fun = "install::steps::$fun" if $auto;
$o->$fun(@args);
}
+
+=item getNextStep($o)
+
+Returns next step
+
+=cut
+
sub getNextStep {
my ($o) = @_;
find { !$o->{steps}{$_}{done} && $o->{steps}{$_}{reachable} } @{$o->{orderedSteps}};
}
#-######################################################################################
-#- Steps Functions
-#- each step function are called with two arguments : clicked(because if you are a
-#- beginner you can force the the step) and the entered number
+
+=back
+
+=head1 Steps Functions
+
+Each step function are called with two arguments : clicked(because if you are a
+beginner you can force the the step) and the entered number
+
+=cut
+
#-######################################################################################
#------------------------------------------------------------------------------
@@ -116,7 +159,7 @@ sub selectMouse {
sub setupSCSI {
my ($auto) = @_;
- installStepsCall($o, $auto, 'setupSCSI');
+ installStepsCall($o, $auto, 'setupSCSI') if !$::local_install;
}
#------------------------------------------------------------------------------
@@ -151,6 +194,15 @@ sub selectInstallClass {
sub doPartitionDisks {
my ($auto) = @_;
$o->{steps}{formatPartitions}{done} = 0;
+ if ($o->{method} eq 'cdrom') {
+ #- Exclude the installer medium from the devices we can install onto.
+ #- This is needed when the installer medium is a USB Flash drive, to
+ #- prevent the user inadvertently overwriting the installer and to
+ #- prevent the installer ESP being used as the installed system ESP
+ # (mga#26714).
+ my $installer_device = $o->{stage2_phys_medium}{device};
+ @{$o->{all_hds}{hds}} = grep { $_->{device} ne $installer_device } @{$o->{all_hds}{hds}};
+ }
installStepsCall($o, $auto, 'doPartitionDisksBefore');
installStepsCall($o, $auto, 'doPartitionDisks');
installStepsCall($o, $auto, 'doPartitionDisksAfter');
@@ -170,13 +222,20 @@ sub formatPartitions {
}
installStepsCall($o, $auto, 'formatMountPartitions') if !$::testing;
+ # Workaround for mga#22059. Because stage2 does not include the udev 60-blocks.rule,
+ # udev does not automatically update the soft links in /dev/disk/by-uuid after we
+ # write the partition table and format the partitions. We need these links to be
+ # updated before we create the initrd. It would be cleaner to fix this with a udev
+ # rule, but for now, use brute force.
+ run_program::run('udevadm', 'trigger', '--type=devices', '--subsystem-match=block');
+
if ($want_root_formated) {
#- we formatted /, ensure /var/lib/rpm is cleaned otherwise bad things can happen
#- (especially when /var is *not* formatted)
eval { rm_rf("$::prefix/var/lib/rpm") };
}
- fs::any::prepare_minimal_root($o->{all_hds});
+ fs::any::prepare_minimal_root();
install::any::screenshot_dir__and_move();
install::any::move_compressed_image_to_disk($o);
@@ -199,7 +258,8 @@ sub choosePackages {
log::l("rpmsrate_flags_chosen's: ", join(' ', sort @flags));
#- check pre-condition that basesystem package must be selected.
- install::pkgs::packageByName($o->{packages}, 'basesystem')->flag_available or die "basesystem package not selected";
+ my $base_pkg = install::pkgs::packageByName($o->{packages}, 'basesystem');
+ $base_pkg->flag_available or $base_pkg->flag_installed or die "basesystem package not selected";
#- check if there are packages that need installation.
$o->{steps}{installPackages}{done} = 0 if $o->{steps}{installPackages}{done} && install::pkgs::packagesToInstall($o->{packages}) > 0;
@@ -287,221 +347,422 @@ sub exitInstall {
installStepsCall($o, $auto, 'exitInstall', getNextStep($::o) eq 'exitInstall');
}
+#-######################################################################################
+
+=head1 Udev Functions
+
+=over
+
+=cut
#-######################################################################################
-#- MAIN
+
+=item start_udev()
+
+=cut
+
+sub start_udev() {
+ return if fuzzy_pidofs('udevd');
+
+ # Start up udev:
+ mkdir_p("/run/udev/rules.d");
+ $ENV{UDEVRULESD} = "/run/udev/rules.d";
+ run_program::run("/usr/lib/systemd/systemd-udevd", "--daemon", "--resolve-names=never");
+ # Coldplug all devices:
+ run_program::run("udevadm", "trigger", "--type=subsystems", "--action=add");
+ run_program::run("udevadm", "trigger", "--type=devices", "--action=add");
+}
+
+=item stop_udev()
+
+=cut
+
+sub stop_udev() {
+ kill 15, fuzzy_pidofs('udevd');
+ sleep(2);
+ fs::mount::umount($_) foreach '/dev/pts', '/dev/shm';
+}
+
#-######################################################################################
-sub main {
-#- $SIG{__DIE__} = sub { warn "DIE " . backtrace() . "\n" };
- $SIG{SEGV} = sub {
- my $msg = "segmentation fault: install crashed (maybe memory is missing?)\n" . backtrace();
- log::l("$msg\n" . backtrace());
- $o->ask_warn('', $msg);
- setVirtual(1);
- require install::steps_auto_install;
- install::steps_auto_install_non_interactive::errorInStep($o, $msg);
- };
- $ENV{PERL_BADLANG} = 1;
- delete $ENV{TERMINFO};
- umask 022;
- $::isWizard = 1;
- $::no_ugtk_init = 1;
+=back
- push @::textdomains, 'DrakX', 'drakx-net', 'drakx-kbd-mouse-x11';
+=head1 Other Functions
+
+=over
+
+=cut
+
+#-######################################################################################
+sub init_local_install {
+ my ($o) = @_;
+ push @::auto_steps,
+# 'selectLanguage', 'selectKeyboard', 'miscellaneous', 'selectInstallClass',
+ 'doPartitionDisks', 'formatPartitions';
+ eval { fs::mount::sys_kernel_debug('') }; #- do it now so that when_load doesn't do it
+ $o->{nomouseprobe} = 1;
+ $o->{mouse} = mouse::fullname2mouse('Universal|Any PS/2 & USB mice');
+}
+
+sub pre_init_brltty() {
+ if (my ($s) = cat_("/proc/cmdline") =~ /brltty=(\S*)/) {
+ my ($driver, $device, $table) = split(',', $s);
+ $table = "text.$table.tbl" if $table !~ /\.tbl$/;
+ log::l("brltty option $driver $device $table");
+ $o->{brltty} = { driver => $driver, device => $device, table => $table };
+ $o->{interactive} = 'curses';
+ $o->{nomouseprobe} = 1;
+ }
+}
+
+sub init_brltty() {
+ symlink "/tmp/stage2/$_", $_ foreach "/etc/brltty";
+ devices::make($_) foreach $o->{brltty}{device};
+ run_program::run("brltty");
+}
+
+sub init_auto_install() {
+ if ($::auto_install =~ /-IP(\.pl)?$/) {
+ my ($ip) = cat_('/tmp/stage1.log') =~ /configuring device (?!lo)\S+ ip: (\S+)/;
+ my $normalized_ip = join('', map { sprintf "%02X", $_ } split('\.', $ip));
+ $::auto_install =~ s/-IP(\.pl)?$/-$normalized_ip$1/;
+ }
+ require install::steps_auto_install;
+ eval { $o = $::o = install::any::loadO($o, $::auto_install) };
+ if ($@) {
+ if ($o->{useless_thing_accepted}) { #- Pixel's hack to be able to fail through
+ log::l("error using auto_install, continuing");
+ undef $::auto_install;
+ } else {
+ install::steps_auto_install_non_interactive::errorInStep($o, "Error using auto_install\n" . formatError($@));
+ }
+ } else {
+ log::l("auto install config file loaded successfully");
+
+ #- normalize for people not using our special scheme
+ foreach (@{$o->{manualFstab} || []}) {
+ $_->{device} =~ s!^/dev/!!;
+ }
+ }
+}
+
+sub step_init {
+ my ($o) = @_;
+ my $o_;
+ while (1) {
+ $o_ = $::auto_install ?
+ install::steps_auto_install->new($o) :
+ $o->{interactive} eq "stdio" ?
+ install::steps_stdio->new($o) :
+ $o->{interactive} eq "curses" ?
+ install::steps_curses->new($o) :
+ $o->{interactive} eq "gtk" ?
+ install::steps_gtk->new($o) :
+ die "unknown install type";
+ $o_ and last;
+
+ log::l("$o->{interactive} failed, trying again with curses");
+ $o->{interactive} = "curses";
+ require install::steps_curses;
+ }
+ $o;
+}
+
+sub read_product_id() {
+ my $product_id = cat__(install::any::getFile_($o->{stage2_phys_medium}, "product.id"));
+ log::l('product_id: ' . chomp_($product_id));
+ $o->{product_id} = common::parse_LDAP_namespace_structure($product_id);
+
+ $o->{meta_class} ||= {
+ One => 'desktop',
+ Free => 'download',
+ Powerpack => 'powerpack',
+ }->{$o->{product_id}{product}} || 'download';
+}
+
+sub sig_segv_handler() {
+ my $msg = "segmentation fault: install crashed (maybe memory is missing?)\n" . backtrace();
+ log::l("$msg\n");
+ # perl_checker: require UNIVERSAL
+ UNIVERSAL::can($o, 'ask_warn') and $o->ask_warn('', $msg);
+ setVirtual(1);
+ require install::steps_auto_install;
+ install::steps_auto_install_non_interactive::errorInStep($o, $msg);
+}
+
+=item read_stage1_net_conf() {
+
+Reads back netork configuration done by stage1 (see L<stages>).
+
+=cut
+
+sub read_stage1_net_conf() {
+ require network::network;
+ #- get stage1 network configuration if any.
+ log::l('found /tmp/network');
+ add2hash($o->{net}{network} ||= {}, network::network::read_conf('/tmp/network'));
+ if (my ($file) = grep { -f $_ } glob_('/tmp/ifcfg-*')) {
+ log::l("found network config file $file");
+ my $l = network::network::read_interface_conf($file);
+ $o->{net}{ifcfg}{$l->{DEVICE}} ||= $l;
+ }
+ my $dsl_device = find { $_->{BOOTPROTO} eq 'adsl_pppoe' } values %{$o->{net}{ifcfg}};
+ if ($dsl_device) {
+ $o->{net}{type} = 'adsl';
+ $o->{net}{net_interface} = $dsl_device->{DEVICE};
+ $o->{net}{adsl} = {
+ method => 'pppoe',
+ device => $dsl_device->{DEVICE},
+ ethernet_device => $dsl_device->{DEVICE},
+ login => $dsl_device->{USER},
+ password => $dsl_device->{PASS},
+ };
+ %$dsl_device = ();
+ } else {
+ $o->{net}{type} = 'lan';
+ $o->{net}{net_interface} = first(values %{$o->{net}{ifcfg}});
+ }
+}
+
+=item parse_args($cfg, $patch)
+
+Parse arguments (which came from either the boot loader command line or its configuration file).
+
+=cut
+
+sub parse_args {
my ($cfg, $patch);
- my %cmdline = map {
- my ($n, $v) = split /=/;
- $n => defined($v) ? $v : 1;
- } split ' ', cat_("/proc/cmdline");
-
- my $opt; foreach (@_) {
- if (/^--?(.*)/) {
- $cmdline{$opt} = 1 if $opt;
- $opt = $1;
- } else {
- $cmdline{$opt} = $_ if $opt;
- $opt = '';
- }
- } $cmdline{$opt} = 1 if $opt;
+ my @cmdline = (@_, map { "--$_" } split ' ', cat_("/proc/cmdline"));
#- from stage1
put_in_hash(\%ENV, { getVarsFromSh('/tmp/env') });
- exists $ENV{$_} and $cmdline{lc($_)} = $ENV{$_} foreach qw(METHOD PCMCIA KICKSTART);
-
- map_each {
- my ($n, $v) = @_;
- my $f = ${{
- lang => sub { $o->{lang} = $v },
- flang => sub { $o->{lang} = $v; push @::auto_steps, 'selectLanguage' },
- langs => sub { $o->{locale}{langs} = +{ map { $_ => 1 } split(':', $v) } },
- method => sub { $o->{method} = $v },
- pcmcia => sub { $o->{pcmcia} = $v },
- vga16 => sub { $o->{vga16} = $v },
- vga => sub { $o->{vga} = $v =~ /0x/ ? hex($v) : $v },
- step => sub { $o->{steps}{first} = $v },
- meta_class => sub { $o->{meta_class} = $v },
- freedriver => sub { $o->{freedriver} = $v },
- no_bad_drives => sub { $o->{partitioning}{no_bad_drives} = 1 },
- nodmraid => sub { $o->{partitioning}{nodmraid} = 1 },
- debug_urpmi => sub { $o->{debug_urpmi} = 1 },
- readonly => sub { $o->{partitioning}{readonly} = $v ne "0" },
- display => sub { $o->{display} = $v },
- askdisplay => sub { print "Please enter the X11 display to perform the install on ? "; $o->{display} = chomp_(scalar(<STDIN>)) },
- security => sub { $o->{security} = $v },
- noauto => sub { $::noauto = 1 },
- testing => sub { $::testing = 1 },
- patch => sub { $patch = 1 },
- defcfg => sub { $cfg = $v },
- newt => sub { $o->{interactive} = "curses" },
- text => sub { $o->{interactive} = "curses" },
- stdio => sub { $o->{interactive} = "stdio" },
- use_uuid => sub { $::no_uuid_by_default = !$v },
- kickstart => sub { $::auto_install = $v },
- local_install => sub { $::local_install = 1 },
- uml_install => sub { $::uml_install = $::local_install = 1 },
- auto_install => sub { $::auto_install = $v },
- simple_themes => sub { $o->{simple_themes} = 1 },
- theme => sub { $o->{theme} = $v },
- doc => sub { $o->{doc} = 1 }, #- will be used to know that we're running for the doc team,
- #- e.g. we want screenshots with a good B&W contrast
- useless_thing_accepted => sub { $o->{useless_thing_accepted} = 1 },
+ exists $ENV{$_} and push @cmdline, sprintf("--%s=%s", lc($_), $ENV{$_}) foreach qw(METHOD PCMCIA KICKSTART);
+
+ GetOptionsFromArray(\@cmdline,
+ $o, # must be 2nd parameter (see http://perldoc.perl.org/Getopt/Long.html#Storing-options-values-in-a-hash)
+ 'keyboard=s' => sub { $o->{keyboard} = $_[1]; push @::auto_steps, 'selectKeyboard' },
+ 'lang=s',
+ 'flang=s' => sub { $o->{lang} = $_[1]; push @::auto_steps, 'selectLanguage' },
+ 'langs=s' => sub { $o->{locale}{langs} = +{ map { $_ => 1 } split(':', $_[1]) } },
+ 'method=s',
+ 'pcmcia=s',
+ 'step=s' => \$o->{steps}{first},
+ 'meta_class=s',
+ 'freedriver=s',
+
+ # fs/block options:
+ no_bad_drives => \$o->{partitioning}{no_bad_drives},
+ nodmraid => \$o->{partitioning}{nodmraid},
+ 'readonly=s' => sub { $o->{partitioning}{readonly} = $_[1] ne "0" },
+ 'use_uuid=s' => sub { $::no_uuid_by_default = !$_[1] },
+
+ # urpmi options:
+ 'debug_urpmi',
+ 'deploops',
+ 'justdb',
+ 'tune-rpm' => sub { $o->{'tune-rpm'} = 'all' },
+ 'downloader=s' => sub { $o->{options}{downloader} = $_[1] },
+
+ # GUI options:
+ 'vga16=s',
+ 'vga=s' => sub { $o->{vga} = $_[1] =~ /0x/ ? hex($_[1]) : $_[1] },
+ 'display=s',
+ askdisplay => sub { print "Please enter the X11 display to perform the install on ? "; $o->{display} = chomp_(scalar(<STDIN>)) },
+ 'newt|text' => sub { $o->{interactive} = "curses" },
+ stdio => sub { $o->{interactive} = "stdio" },
+ 'simple_themes',
+ 'theme=s',
+ 'doc', #- will be used to know that we're running for the doc team,
+ #- e.g. we want screenshots with a good B&W contrast
+
+ 'security=s',
+
+ # auto install options:
+ noauto => \$::noauto,
+ testing => \$::testing,
+ patch => \$patch,
+ 'defcfg=s' => \$cfg,
+ 'auto_install|kickstart=s' => \$::auto_install,
+
+ local_install => \$::local_install,
+ uml_install => sub { $::uml_install = $::local_install = 1 },
+
+ # debugging options:
+ 'useless_thing_accepted',
alawindows => sub { $o->{security} = 0; $o->{partitioning}{clearall} = 1; $o->{bootloader}{crushMbr} = 1 },
- fdisk => sub { $o->{partitioning}{fdisk} = 1 },
- nomouseprobe => sub { $o->{nomouseprobe} = $v },
- updatemodules => sub { $o->{updatemodules} = 1 },
- suppl => sub { $o->{supplmedia} = $v },
- askmedia => sub { $o->{askmedia} = 1 },
- restore => sub { $::isRestore = 1 },
- compsslistlevel => sub { $o->{compssListLevel} = $v },
- }}{lc $n}; &$f if $f;
- } %cmdline;
+ fdisk => \$o->{partitioning}{fdisk},
+ 'nomouseprobe=s',
+ 'updatemodules',
+ 'suppl=s' => \$o->{supplmedia},
+ 'askmedia',
+ restore => \$::isRestore,
+ 'compssListLevel=s' # case is important!
+ );
+
+ ($cfg, $patch);
+}
+
+sub init_env_share() {
if ($::testing) {
$ENV{SHARE_PATH} ||= "/export/install/stage2/live/usr/share";
$ENV{SHARE_PATH} = "/usr/share" if !-e $ENV{SHARE_PATH};
} else {
$ENV{SHARE_PATH} ||= "/usr/share";
}
+}
+
+sub init_path() {
+ #- make sure we do not pick up any gunk from the outside world
+ my $remote_path = "$::prefix/sbin:$::prefix/bin:$::prefix/usr/sbin:$::prefix/usr/bin";
+ $ENV{PATH} = "/usr/bin:/bin:/sbin:/usr/sbin:$remote_path";
+}
+
+sub init_mouse() {
+ eval { $o->{mouse} = mouse::detect($o->{modules_conf}) } if !$o->{mouse} && !$o->{nomouseprobe};
+ mouse::load_modules($o->{mouse});
+}
+
+sub init_modules_conf() {
+ list_modules::load_default_moddeps();
+ require modules::any_conf;
+ require modules::modules_conf;
+ # read back config from stage1:
+ $o->{modules_conf} = modules::modules_conf::read(modules::any_conf::vnew(), '/tmp/modules.conf');
+ modules::read_already_loaded($o->{modules_conf});
+}
+
+sub process_auto_steps() {
+ foreach (@::auto_steps) {
+ if (my $s = $o->{steps}{/::(.*)/ ? $1 : $_}) {
+ $s->{auto} = $s->{hidden} = 1;
+ } else {
+ log::l("ERROR: unknown step $_ in auto_steps");
+ }
+ }
+}
+
+=item process_patch($cfg, $patch)
+
+Handle installer live patches:
+
+=over 4
+
+=item * OEM patch (C<install/patch-oem.pl>)
+
+=item * defcfg (the file indicated by the defcfg option)
+
+=item * patch (C<patch> file)
+
+=back
+
+=cut
+
+sub process_patch {
+ my ($cfg, $patch) = @_;
+ #- oem patch should be read before to still allow patch or defcfg.
+ eval { $o = $::o = install::any::loadO($o, "install/patch-oem.pl"); log::l("successfully read oem patch") };
+ #- patch should be read after defcfg in order to take precedence.
+ eval { $o = $::o = install::any::loadO($o, $cfg); log::l("successfully read default configuration: $cfg") } if $cfg;
+ eval { $o = $::o = install::any::loadO($o, "patch"); log::l("successfully read patch") } if $patch;
+}
+
+#-######################################################################################
+
+=item main()
+
+This is the main function, the installer entry point called by runinstall2:
+
+=over 4
+
+=item * initialization
+
+=item * steps
+
+=back
+
+=cut
+#-######################################################################################
+sub main {
+ $SIG{SEGV} = \&sig_segv_handler;
+ $ENV{PERL_BADLANG} = 1;
+ delete $ENV{TERMINFO};
+ umask 022;
+
+ $::isWizard = 1;
+ $::no_ugtk_init = 1;
+
+ push @::textdomains, 'DrakX', 'drakx-net', 'drakx-kbd-mouse-x11';
+
+ my ($cfg, $patch) = parse_args(@_);
+
+ init_env_share();
undef $::auto_install if $cfg;
$o->{stage2_phys_medium} = install::media::stage2_phys_medium($o->{method});
- log::l("second stage install running (", install::any::drakx_version($o), ")");
+ if (-e '/tmp/media/DATE.txt') {
+ my @mount_entry = grep { m,/tmp/media, } cat_('/proc/mounts');
+ my @mount_fields = split(/ /, $mount_entry[0]);
+ log::l(run_program::get_stdout('blkid', '-s', 'LABEL', $mount_fields[0]));
+ log::l('ISO date: ' . cat_('/tmp/media/DATE.txt'));
+ }
+
+ install::any::log_system_info($o);
- eval { output('/proc/sys/kernel/modprobe', "\n") } if !$::local_install && !$::testing; #- disable kmod
- eval { fs::mount::mount('none', '/sys', 'sysfs', 1) };
eval { touch('/root/non-chrooted-marker.DrakX') }; #- helps distinguishing /root and /mnt/root when we don't know if we are chrooted
if ($::local_install) {
- push @::auto_steps,
-# 'selectLanguage', 'selectKeyboard', 'miscellaneous', 'selectInstallClass',
- 'doPartitionDisks', 'formatPartitions';
- fs::mount::usbfs(''); #- do it now so that when_load doesn't do it
- $o->{nomouseprobe} = 1;
- $o->{mouse} = mouse::fullname2mouse('Universal|Any PS/2 & USB mice');
+ init_local_install($o);
+ } else {
+ start_udev();
+ # load some modules early but asynchronously:
+ run_program::raw({ detach => 1 }, 'modprobe', 'microcode');
}
$o->{prefix} = $::prefix = $::testing ? "/tmp/test-perl-install" : "/mnt";
- mkdir $::prefix, 0755;
+ mkdir $::prefix, 0755 if ! -d $::prefix;
- #- make sure we do not pick up any gunk from the outside world
- my $remote_path = "$::prefix/sbin:$::prefix/bin:$::prefix/usr/sbin:$::prefix/usr/bin:$::prefix/usr/X11R6/bin";
- $ENV{PATH} = "/usr/bin:/bin:/sbin:/usr/sbin:/usr/X11R6/bin:$remote_path";
+ init_path();
eval { install::any::spawnShell() };
- list_modules::load_default_moddeps();
- require modules::any_conf;
- require modules::modules_conf;
- $o->{modules_conf} = modules::modules_conf::read(modules::any_conf::vnew(), '/tmp/modules.conf');
- modules::read_already_loaded($o->{modules_conf});
+ init_modules_conf();
#- done before auto_install is called to allow the -IP feature on auto_install file name
- if (-e '/tmp/network') {
- require network::network;
- #- get stage1 network configuration if any.
- log::l('found /tmp/network');
- add2hash($o->{net}{network} ||= {}, network::network::read_conf('/tmp/network'));
- if (my ($file) = glob_('/tmp/ifcfg-*')) {
- log::l("found network config file $file");
- my $l = network::network::read_interface_conf($file);
- $o->{net}{ifcfg}{$l->{DEVICE}} ||= $l;
- }
- my $dsl_device = find { $_->{BOOTPROTO} eq 'adsl_pppoe' } values %{$o->{net}{ifcfg}};
- if ($dsl_device) {
- $o->{net}{type} = 'adsl';
- $o->{net}{net_interface} = $dsl_device->{DEVICE};
- $o->{net}{adsl} = {
- method => 'pppoe',
- device => $dsl_device->{DEVICE},
- ethernet_device => $dsl_device->{DEVICE},
- login => $dsl_device->{USER},
- password => $dsl_device->{PASS},
- };
- %$dsl_device = ();
- } else {
- $o->{net}{type} = 'lan';
- $o->{net}{net_interface} = first(values %{$o->{net}{ifcfg}});
- }
- }
+ read_stage1_net_conf() if -e '/tmp/network';
#- done after module dependencies are loaded for "vfat depends on fat"
if ($::auto_install) {
- if ($::auto_install =~ /-IP(\.pl)?$/) {
- my ($ip) = cat_('/tmp/stage1.log') =~ /configuring device (?!lo)\S+ ip: (\S+)/;
- my $normalized_ip = join('', map { sprintf "%02X", $_ } split('\.', $ip));
- $::auto_install =~ s/-IP(\.pl)?$/-$normalized_ip$1/;
- }
- require install::steps_auto_install;
- eval { $o = $::o = install::any::loadO($o, $::auto_install) };
- if ($@) {
- if ($o->{useless_thing_accepted}) { #- Pixel's hack to be able to fail through
- log::l("error using auto_install, continuing");
- undef $::auto_install;
- } else {
- install::steps_auto_install_non_interactive::errorInStep($o, "Error using auto_install\n" . formatError($@));
- }
- } else {
- log::l("auto install config file loaded successfully");
-
- #- normalize for people not using our special scheme
- foreach (@{$o->{manualFstab} || []}) {
- $_->{device} =~ s!^/dev/!!;
- }
- }
+ init_auto_install();
+ } else {
+ $o->{interactive} ||= 'gtk';
}
- $o->{interactive} ||= 'gtk' if !$::auto_install;
if ($o->{interactive} eq "gtk" && availableMemory() < 22 * 1024) {
log::l("switching to curses install cuz not enough memory");
$o->{interactive} = "curses";
}
- if (my ($s) = cat_("/proc/cmdline") =~ /brltty=(\S*)/) {
- my ($driver, $device, $table) = split(',', $s);
- $table = "text.$table.tbl" if $table !~ /\.tbl$/;
- log::l("brltty option $driver $device $table");
- $o->{brltty} = { driver => $driver, device => $device, table => $table };
- $o->{interactive} = 'curses';
- $o->{nomouseprobe} = 1;
- }
+ pre_init_brltty();
# perl_checker: require install::steps_gtk
# perl_checker: require install::steps_curses
# perl_checker: require install::steps_stdio
require "install/steps_$o->{interactive}.pm" if $o->{interactive};
+ # psmouse is now modular:
+ eval { modules::load("psmouse") };
+
+ #- FIXME loading evdev should prevent crash of following line
+ eval { modules::load("evdev") };
+
#- needed before accessing floppy (in case of usb floppy)
modules::load_category($o->{modules_conf}, 'bus/usb');
- #- oem patch should be read before to still allow patch or defcfg.
- eval { $o = $::o = install::any::loadO($o, "install/patch-oem.pl"); log::l("successfully read oem patch") };
- #- patch should be read after defcfg in order to take precedance.
- eval { $o = $::o = install::any::loadO($o, $cfg); log::l("successfully read default configuration: $cfg") } if $cfg;
- eval { $o = $::o = install::any::loadO($o, "patch"); log::l("successfully read patch") } if $patch;
+ process_patch($cfg, $patch);
eval { modules::load("af_packet") };
@@ -509,18 +770,10 @@ sub main {
harddrake::sound::configure_sound_slots($o->{modules_conf});
#- need to be after oo-izing $o
- if ($o->{brltty}) {
- symlink "/tmp/stage2/$_", $_ foreach "/etc/brltty";
- devices::make($_) foreach $o->{brltty}{device} ? $o->{brltty}{device} : qw(ttyS0 ttyS1);
- devices::make("vcsa");
- run_program::run("brltty");
- }
+ init_brltty() if $o->{brltty};
#- needed very early for install::steps_gtk
- if (!$::testing) {
- eval { $o->{mouse} = mouse::detect($o->{modules_conf}) } if !$o->{mouse} && !$o->{nomouseprobe};
- mouse::load_modules($o->{mouse});
- }
+ init_mouse() if !$::testing;
#- for auto_install compatibility with old $o->{lang},
#- and also for --lang and --flang
@@ -534,60 +787,41 @@ sub main {
$o->{allowFB} = listlength(cat_("/proc/fb"));
- if (!$::testing) {
- my $product_id = cat__(install::any::getFile_($o->{stage2_phys_medium}, "product.id"));
- log::l('product_id: ' . chomp_($product_id));
- $o->{product_id} = common::parse_LDAP_namespace_structure($product_id);
-
- $o->{meta_class} ||= {
- One => 'desktop',
- Free => 'download',
- Powerpack => 'powerpack',
- }->{$o->{product_id}{product}} || 'download';
- }
+ read_product_id() if !$::testing;
log::l("META_CLASS=$o->{meta_class}");
- $ENV{META_CLASS} = $o->{meta_class}; #- for Ia Ora
- foreach (@::auto_steps) {
- if (my $s = $o->{steps}{/::(.*)/ ? $1 : $_}) {
- $s->{auto} = $s->{hidden} = 1;
- } else {
- log::l("ERROR: unknown step $_ in auto_steps");
- }
- }
+ process_auto_steps();
- my $o_;
- while (1) {
- $o_ = $::auto_install ?
- install::steps_auto_install->new($o) :
- $o->{interactive} eq "stdio" ?
- install::steps_stdio->new($o) :
- $o->{interactive} eq "curses" ?
- install::steps_curses->new($o) :
- $o->{interactive} eq "gtk" ?
- install::steps_gtk->new($o) :
- die "unknown install type";
- $o_ and last;
-
- log::l("$o->{interactive} failed, trying again with curses");
- $o->{interactive} = "curses";
- require install::steps_curses;
- }
- $::o = $o = $o_;
+ $ENV{COLUMNS} ||= 80;
+ $ENV{LINES} ||= 25;
+ $::o = $o = step_init($o);
eval { output('/proc/splash', "verbose\n") };
- #-the main cycle
+ real_main();
+ finish_install();
+}
+
+=item real_main() {
+
+Go through the steps cycle
+
+=cut
+
+sub real_main() {
MAIN: for ($o->{step} = $o->{steps}{first};; $o->{step} = getNextStep($o)) {
$o->{steps}{$o->{step}}{entered}++;
$o->enteringStep($o->{step});
+ my $time = time();
eval {
&{$install::install2::{$o->{step}}}($o->{steps}{$o->{step}}{auto});
};
my $err = $@;
+ log::l("step \"$o->{step}\" took: ", formatTimeRaw(time() - $time));
$o->kill_action;
if ($err) {
+ log::l("step \"$o->{step}\" failed with error: $err");
local $_ = $err;
$o->kill_action;
if (!/^already displayed/) {
@@ -605,6 +839,15 @@ sub main {
last if $o->{step} eq 'exitInstall';
}
+}
+
+=item finish_install() {
+
+Clean up the installer before the final reboot.
+
+=cut
+
+sub finish_install() {
unlink $install::any::compressed_image_on_disk;
install::media::clean_postinstall_rpms();
install::media::log_sizes();
@@ -618,7 +861,8 @@ sub main {
#- make sure failed upgrade will not hurt too much.
install::steps::cleanIfFailedUpgrade($o);
- -e "$::prefix/usr/sbin/urpmi.update" or eval { rm_rf("$::prefix/var/lib/urpmi") };
+ #- drop urpmi DB if urpmi is not installed:
+ -e "$::prefix/usr/sbin/urpmi" or eval { rm_rf("$::prefix/var/lib/urpmi") };
system("chroot", $::prefix, "bash", "-c", $o->{postInstallBeforeReboot}) if $o->{postInstallBeforeReboot};
@@ -628,9 +872,14 @@ sub main {
#- ala pixel? :-) [fpons]
common::sync(); common::sync();
+ stop_udev() if !$::local_install;
log::l("installation complete, leaving");
log::l("files still open by install2: ", readlink($_)) foreach glob_("/proc/self/fd/*");
print "\n" x 80 if !$::local_install;
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/install/interactive.pm b/perl-install/install/interactive.pm
index 3aa66a657..7faa7bdd8 100644
--- a/perl-install/install/interactive.pm
+++ b/perl-install/install/interactive.pm
@@ -1,4 +1,4 @@
-package install::interactive; # $Id$
+package install::interactive;
use diagnostics;
use strict;
diff --git a/perl-install/install/media.pm b/perl-install/install/media.pm
index da8becd7f..149deffc3 100644
--- a/perl-install/install/media.pm
+++ b/perl-install/install/media.pm
@@ -1,4 +1,4 @@
-package install::media; # $Id$
+package install::media;
use strict;
@@ -6,6 +6,9 @@ our @ISA = qw(Exporter);
our @EXPORT_OK = qw(getFile_ getAndSaveFile_ getAndSaveFile_media_info packageMedium);
use common;
+use Data::Dumper;
+# Make sure report.bug are more easily comparable:
+$Data::Dumper::Sortkeys = 1;
use fs::type;
use urpm::download;
use urpm::media;
@@ -42,11 +45,6 @@ use urpm::media;
our $postinstall_rpms = '';
my %mounted_media;
-sub _free_medium_id {
- my ($media) = @_;
- int(@$media);
-}
-
sub allMediums {
my ($packages) = @_;
@@ -63,6 +61,7 @@ sub packageMedium {
my ($packages, $p) = @_;
URPM::pkg2media($packages->{media}, $p) || {};
}
+
sub packagesOfMedium {
my ($packages, $medium) = @_;
@@ -80,16 +79,6 @@ sub path {
($phys_m->{real_mntpoint} || fs::get::mntpoint_prefixed($phys_m)) . $phys_m->{rel_path} . '/' . $f;
}
-sub rel_rpm_file {
- my ($medium, $f) = @_;
- if (my ($arch) = $f =~ m|\.([^\.]*)\.rpm$|) {
- $f = "$medium->{rpmsdir}/$f";
- $f =~ s/%{ARCH}/$arch/g;
- $f =~ s,^/+,,g;
- }
- $f;
-}
-
sub umount_phys_medium {
my ($phys_m) = @_;
@@ -104,6 +93,7 @@ sub umount_phys_medium {
}
$ok;
}
+
sub _mount_phys_medium {
my ($phys_m, $o_rel_file, $b_force_change) = @_;
@@ -170,7 +160,7 @@ sub stage2_phys_medium {
my $user = $ENV{LOGIN} && ($ENV{LOGIN} . ($ENV{PASSWORD} && ":$ENV{PASSWORD}") . '@');
$ENV{URLPREFIX} = "ftp://$user$ENV{HOST}/$ENV{PREFIX}";
}
- if ($method eq 'http' || $method eq 'ftp') {
+ if (member($method, qw(http ftp))) {
{ method => $method, url => $ENV{URLPREFIX} };
} elsif ($method =~ /(.*)-iso$/) {
my $dir_method = $1;
@@ -284,6 +274,7 @@ sub _iso_phys_media {
mntpoint => $mntpoint, rel_path => $rel_path,
};
}
+
sub _get_phys_media_iso {
my ($all_hds, $main_phys_m, $names) = @_;
@@ -296,6 +287,7 @@ sub _get_phys_media_iso {
$m;
} @ISOs;
}
+
sub _look_for_ISO_images {
my ($main_iso) = @_;
@@ -332,6 +324,7 @@ sub _open_file_and_size {
my $fh = common::open_file($f) or return;
$size, $fh;
}
+
sub getFile_ {
my ($phys_m, $f) = @_;
log::l("getFile $f on " . phys_medium_to_string($phys_m) . "");
@@ -339,13 +332,14 @@ sub getFile_ {
my ($_size, $fh) = get_file_and_size($phys_m, $f) or return;
$fh;
}
+
sub get_file_and_size {
my ($phys_m, $f) = @_;
- if ($f =~ m|^http://|) {
+ if ($f =~ m|^https?://|) {
require install::http;
install::http::get_file_and_size($f);
- } elsif (member($phys_m->{method}, qw(ftp http))) {
+ } elsif (member($phys_m->{method}, qw(ftp http https))) {
require install::http;
install::http::get_file_and_size_($f, $phys_m->{url});
} elsif ($f =~ m!^/!) {
@@ -367,6 +361,7 @@ sub getAndSaveFile_ {
my $fh = getFile_($phys_m, $file) or return;
_getAndSaveFile_raw($fh, $local);
}
+
sub _getAndSaveFile_progress {
my ($in_wait, $msg, $phys_m, $file, $local) = @_;
my ($size, $fh) = get_file_and_size($phys_m, $file) or return;
@@ -376,6 +371,7 @@ sub _getAndSaveFile_progress {
_getAndSaveFile_raw($fh, $local);
}
}
+
sub _getAndSaveFile_raw {
my ($fh, $local) = @_;
@@ -386,6 +382,7 @@ sub _getAndSaveFile_raw {
while (<$fh>) { syswrite($F, $_) or unlink($local), die("getAndSaveFile($local): $!") }
1;
}
+
sub _getAndSaveFile_progress_raw {
my ($in_wait, $msg, $size, $fh, $local) = @_;
@@ -393,6 +390,7 @@ sub _getAndSaveFile_progress_raw {
open(my $out, ">$local") or log::l("getAndSaveFile(opening $local): $!"), return;
_print_with_progress($in_wait, $msg, $size, $fh, $out) or unlink($local), die("getAndSaveFile($local): $!");
}
+
sub _print_with_progress {
my ($in_wait, $msg, $size, $in, $out) = @_;
@@ -417,19 +415,12 @@ sub _print_with_progress {
1;
}
-
sub urpmidir() {
my $v = "$::prefix/var/lib/urpmi";
-l $v && !-e $v and unlink $v and mkdir $v, 0755; #- dangling symlink
-w $v ? $v : '/tmp';
}
-sub hdlist_on_disk {
- my ($m) = @_;
-
- urpmidir() . "/hdlist.$m->{fakemedium}.cz";
-}
-
sub _allow_copy_rpms_on_disk {
my ($medium, $hdlists) = @_;
@@ -475,34 +466,33 @@ sub _parse_media_cfg {
}
sub select_only_some_media {
- my ($packages, $selected_names) = @_;
+ my ($media_list, $selected_names) = @_;
my @names = split(',', $selected_names);
- foreach my $m (@{$packages->{media}}) {
+ foreach my $m (@$media_list) {
my $bool = !member($m->{name}, @names);
# workaround urpmi transforming "ignore => ''" or "ignore => 0" into "ignore => 1":
undef $bool if !$bool;
- log::l "disabling '$m->{name}' medium: " . to_bool($bool);
+ log::l("disabling '$m->{name}' medium: " . to_bool($bool));
urpm::media::_tempignore($m, $bool);
# make sure we update un-ignored media (eg: */Testing and the like):
$m->{modified} = 1 if !$bool;
}
}
-sub configure_media {
+sub update_media {
my ($packages) = @_;
urpm::media::update_media($packages, distrib => 1, callback => \&urpm::download::sync_logger) or
log::l('updating media failed');
- urpm::media::configure($packages);
}
sub get_media {
my ($o, $media, $packages) = @_;
- use Data::Dumper;
my ($suppl_CDs, $copy_rpms_on_disk, $phys_m);
foreach (@$media) {
if ($_->{type} eq 'media_cfg') {
$phys_m = url2mounted_phys_medium($o, $_->{url}, 'media_info');
+ local $phys_m->{is_suppl} = $_->{url} ne "drakx://media"; # so that _get_media_url() works
($suppl_CDs, $copy_rpms_on_disk) = get_media_cfg($o, $phys_m, $packages, $_->{selected_names}, $_->{force_rpmsrate});
} elsif ($_->{type} eq 'media') {
$phys_m = url2mounted_phys_medium($o, $_->{url});
@@ -534,8 +524,8 @@ sub adjust_paths_in_urpmi_cfg {
$medium->{url} =~ s!^.*?/media/!$phys_m->{url}/!;
} elsif (member($phys_m->{method}, qw(disk nfs))) {
# use the real mount point:
- if ($medium->{url} =~ m!/tmp/image!) {
- $medium->{url} =~ s!/tmp/image!$phys_m->{mntpoint}!;
+ if ($medium->{url} =~ m!/tmp/image(/media)?!) {
+ $medium->{url} =~ s!/tmp/image(/media)?!$phys_m->{mntpoint}$phys_m->{rel_path}!;
} else {
# just remove $::prefix and we already have the real mount point:
$medium->{url} =~ s!^$::prefix!!;
@@ -631,7 +621,7 @@ sub _get_media_url {
my ($o, $phys_medium) = @_;
my $uri;
if ($phys_medium->{is_suppl}) {
- if (member($phys_medium->{method}, qw(ftp http))) {
+ if (member($phys_medium->{method}, qw(ftp http https))) {
$uri = $phys_medium->{url};
$uri =~ s!/media$!!;
} elsif (member($phys_medium->{method}, qw(cdrom nfs))) {
@@ -640,8 +630,8 @@ sub _get_media_url {
$uri .= "/$arch" if -d "$uri/$arch";
}
} else {
- $uri = $o->{stage2_phys_medium}{url} =~ m!^(http|ftp)://! && $o->{stage2_phys_medium}{url} ||
- $phys_medium->{method} =~ m!^(ftp|http)://! && $phys_medium->{method} || '/tmp/image';
+ $uri = $o->{stage2_phys_medium}{url} =~ m!^(https?|ftp)://! && $o->{stage2_phys_medium}{url} ||
+ $phys_medium->{method} =~ m!^(ftp|https?)://! && $phys_medium->{method} || '/tmp/image';
}
$uri;
}
@@ -658,7 +648,7 @@ sub get_media_cfg {
die "media.cfg not found";
}
- my $suppl_CDs = exists $o->{supplmedia} ? $o->{supplmedia} : $distribconf->{suppl} || 0;
+ my $suppl_CDs = defined $o->{supplmedia} ? $o->{supplmedia} : $distribconf->{suppl} || 0;
my $deselectionAllowed = $distribconf->{askmedia} || $o->{askmedia} || 0;
log::l(Data::Dumper->Dump([ $phys_medium ], [ 'phys_medium' ]));
@@ -668,18 +658,16 @@ sub get_media_cfg {
urpm::media::add_distrib_media($packages, undef, $uri, ask_media => undef); #allmedia => 1
- if (defined $selected_names) {
- select_only_some_media($packages, $selected_names);
- }
+ my @new_media = difference2($packages->{media}, \@media);
+ _associate_phys_media($o->{all_hds}, $phys_medium, \@new_media);
+
+ select_only_some_media(\@new_media, $selected_names) if defined $selected_names;
if ($deselectionAllowed && !@{$packages->{media}}) {
my $allow = _allow_copy_rpms_on_disk($phys_medium, $packages->{media});
$o->ask_deselect_media__copy_on_disk($packages->{media}, $allow && \$o->{copy_rpms_on_disk}) if $allow || @{$packages->{media}} > 1;
}
- my @new_media = difference2($packages->{media}, \@media);
- _associate_phys_media($o->{all_hds}, $phys_medium, \@new_media);
-
log::l("get_media_cfg read " . int(@{$packages->{depslist}}) . " headers");
_get_compsUsers_pl($phys_medium, $force_rpmsrate);
@@ -707,13 +695,13 @@ sub get_standalone_medium {
}
sub _get_medium {
- my ($in_wait, $phys_m, $packages, $m) = @_;
+ my ($_in_wait, $phys_m, $packages, $m) = @_;
!$m->{ignore} or log::l("ignoring packages in $m->{rel_hdlist}"), return;
my $url = _get_media_url({}, $phys_m);
log::l("trying '$url'\n");
- urpm::media::add_medium($packages, $m->{name} || 'Supplementary medium', $url) or $packages->{fatal}(10, N("unable to add medium"));
+ urpm::media::add_medium($packages, $m->{name} || 'Supplementary medium', $url, 0) or $packages->{fatal}(10, N("unable to add medium"));
}
@@ -788,7 +776,7 @@ sub clean_postinstall_rpms() {
sub copy_rpms_on_disk {
my ($o) = @_;
- my $dest_dir = '/var/ftp/pub/Mandrivalinux/media';
+ my $dest_dir = '/var/ftp/pub/Mageialinux/media';
#- don't be afraid, cleanup old RPMs if upgrade
eval { rm_rf("$::prefix$dest_dir") if $o->{isUpgrade} };
mkdir_p("$::prefix$dest_dir");
@@ -838,7 +826,7 @@ sub copy_rpms_on_disk {
sub _get_medium_dir {
my ($phys_m) = @_;
- if ($phys_m->{method} eq 'ftp' || $phys_m->{method} eq 'http' || $phys_m->{method} eq 'cdrom') {
+ if (member($phys_m->{method}, qw(ftp http https cdrom))) {
$phys_m->{url};
} else {
"$phys_m->{mntpoint}$phys_m->{rel_path}";
diff --git a/perl-install/install/pixmaps/cadre-blanc_600.png b/perl-install/install/pixmaps/cadre-blanc_600.png
index 3e765cf59..5069a041c 100644
--- a/perl-install/install/pixmaps/cadre-blanc_600.png
+++ b/perl-install/install/pixmaps/cadre-blanc_600.png
Binary files differ
diff --git a/perl-install/install/pixmaps/cadre-blanc_768.png b/perl-install/install/pixmaps/cadre-blanc_768.png
index 580a7b254..bcaccadd4 100644
--- a/perl-install/install/pixmaps/cadre-blanc_768.png
+++ b/perl-install/install/pixmaps/cadre-blanc_768.png
Binary files differ
diff --git a/perl-install/install/pixmaps/desktop-Custom-big.png b/perl-install/install/pixmaps/desktop-Custom-big.png
index ed4f902ed..37ceb5f69 100644
--- a/perl-install/install/pixmaps/desktop-Custom-big.png
+++ b/perl-install/install/pixmaps/desktop-Custom-big.png
Binary files differ
diff --git a/perl-install/install/pixmaps/desktop-Custom.png b/perl-install/install/pixmaps/desktop-Custom.png
index a374ea5ce..016ce2431 100644
--- a/perl-install/install/pixmaps/desktop-Custom.png
+++ b/perl-install/install/pixmaps/desktop-Custom.png
Binary files differ
diff --git a/perl-install/install/pixmaps/desktop-GNOME-big.png b/perl-install/install/pixmaps/desktop-GNOME-big.png
index f7f121b82..f361a4e3d 100644
--- a/perl-install/install/pixmaps/desktop-GNOME-big.png
+++ b/perl-install/install/pixmaps/desktop-GNOME-big.png
Binary files differ
diff --git a/perl-install/install/pixmaps/desktop-GNOME.png b/perl-install/install/pixmaps/desktop-GNOME.png
index 44cc236df..292206399 100644
--- a/perl-install/install/pixmaps/desktop-GNOME.png
+++ b/perl-install/install/pixmaps/desktop-GNOME.png
Binary files differ
diff --git a/perl-install/install/pixmaps/desktop-KDE-big.png b/perl-install/install/pixmaps/desktop-KDE-big.png
deleted file mode 100644
index af29d912c..000000000
--- a/perl-install/install/pixmaps/desktop-KDE-big.png
+++ /dev/null
Binary files differ
diff --git a/perl-install/install/pixmaps/desktop-KDE.png b/perl-install/install/pixmaps/desktop-KDE.png
deleted file mode 100644
index 69776bef7..000000000
--- a/perl-install/install/pixmaps/desktop-KDE.png
+++ /dev/null
Binary files differ
diff --git a/perl-install/install/pixmaps/desktop-PLASMA5-big.png b/perl-install/install/pixmaps/desktop-PLASMA5-big.png
new file mode 100644
index 000000000..c1096bdf4
--- /dev/null
+++ b/perl-install/install/pixmaps/desktop-PLASMA5-big.png
Binary files differ
diff --git a/perl-install/install/pixmaps/desktop-PLASMA5.png b/perl-install/install/pixmaps/desktop-PLASMA5.png
new file mode 100644
index 000000000..249c164e2
--- /dev/null
+++ b/perl-install/install/pixmaps/desktop-PLASMA5.png
Binary files differ
diff --git a/perl-install/install/pixmaps/empty-banner.png b/perl-install/install/pixmaps/empty-banner.png
index 25b79daa0..2cff55d2f 100644
--- a/perl-install/install/pixmaps/empty-banner.png
+++ b/perl-install/install/pixmaps/empty-banner.png
Binary files differ
diff --git a/perl-install/install/pixmaps/langs/lang-ast.png b/perl-install/install/pixmaps/langs/lang-ast.png
new file mode 100644
index 000000000..d10dc386c
--- /dev/null
+++ b/perl-install/install/pixmaps/langs/lang-ast.png
Binary files differ
diff --git a/perl-install/install/pixmaps/langs/lang-qu.png b/perl-install/install/pixmaps/langs/lang-qu.png
index 53e233cdb..ec688f96d 100644
--- a/perl-install/install/pixmaps/langs/lang-qu.png
+++ b/perl-install/install/pixmaps/langs/lang-qu.png
Binary files differ
diff --git a/perl-install/install/pixmaps/left-background.png b/perl-install/install/pixmaps/left-background.png
index 2b8a82b39..668b994ec 100644
--- a/perl-install/install/pixmaps/left-background.png
+++ b/perl-install/install/pixmaps/left-background.png
Binary files differ
diff --git a/perl-install/install/pixmaps/left-border.png b/perl-install/install/pixmaps/left-border.png
index d97b657db..296f2277b 100644
--- a/perl-install/install/pixmaps/left-border.png
+++ b/perl-install/install/pixmaps/left-border.png
Binary files differ
diff --git a/perl-install/install/pixmaps/left-bottom-corner.png b/perl-install/install/pixmaps/left-bottom-corner.png
index 0825c5a78..df0c8347b 100644
--- a/perl-install/install/pixmaps/left-bottom-corner.png
+++ b/perl-install/install/pixmaps/left-bottom-corner.png
Binary files differ
diff --git a/perl-install/install/pixmaps/left-top-corner.png b/perl-install/install/pixmaps/left-top-corner.png
index 46a8a34e5..df0c8347b 100644
--- a/perl-install/install/pixmaps/left-top-corner.png
+++ b/perl-install/install/pixmaps/left-top-corner.png
Binary files differ
diff --git a/perl-install/install/pixmaps/reload.png b/perl-install/install/pixmaps/reload.png
index 26d503283..baa7b5f9f 100644
--- a/perl-install/install/pixmaps/reload.png
+++ b/perl-install/install/pixmaps/reload.png
Binary files differ
diff --git a/perl-install/install/pixmaps/right-white-background_left_part_600.png b/perl-install/install/pixmaps/right-white-background_left_part_600.png
index 96f9c8f23..e4e514058 100644
--- a/perl-install/install/pixmaps/right-white-background_left_part_600.png
+++ b/perl-install/install/pixmaps/right-white-background_left_part_600.png
Binary files differ
diff --git a/perl-install/install/pixmaps/right-white-background_left_part_768.png b/perl-install/install/pixmaps/right-white-background_left_part_768.png
index 461e5daeb..41f7334c6 100644
--- a/perl-install/install/pixmaps/right-white-background_left_part_768.png
+++ b/perl-install/install/pixmaps/right-white-background_left_part_768.png
Binary files differ
diff --git a/perl-install/install/pixmaps/right-white-background_right_part_600.png b/perl-install/install/pixmaps/right-white-background_right_part_600.png
index 8fb21bc24..0e564b2ae 100644
--- a/perl-install/install/pixmaps/right-white-background_right_part_600.png
+++ b/perl-install/install/pixmaps/right-white-background_right_part_600.png
Binary files differ
diff --git a/perl-install/install/pixmaps/semiselected.png b/perl-install/install/pixmaps/semiselected.png
index 6946dec2e..108b32265 100644
--- a/perl-install/install/pixmaps/semiselected.png
+++ b/perl-install/install/pixmaps/semiselected.png
Binary files differ
diff --git a/perl-install/install/pixmaps/unselected.png b/perl-install/install/pixmaps/unselected.png
index c44237c71..7b4d6be1d 100644
--- a/perl-install/install/pixmaps/unselected.png
+++ b/perl-install/install/pixmaps/unselected.png
Binary files differ
diff --git a/perl-install/install/pkgs.pm b/perl-install/install/pkgs.pm
index 98b976505..a9692e225 100644
--- a/perl-install/install/pkgs.pm
+++ b/perl-install/install/pkgs.pm
@@ -1,6 +1,7 @@
-package install::pkgs; # $Id$
+package install::pkgs;
use strict;
+use feature 'state';
BEGIN {
# needed before "use URPM"
@@ -26,7 +27,6 @@ use fs::any;
use fs::loopback;
use c;
-
#- lower bound on the left ( aka 90 means [90-100[ )
our %compssListDesc = (
5 => N_("must have"),
@@ -38,10 +38,11 @@ our %compssListDesc = (
#- TODO BEFORE TODO
#- size and correction size functions for packages.
-my $B = 1.20873;
-my $C = 4.98663; #- does not take hdlist's into account as getAvailableSpace will do it.
-sub correctSize { $B * $_[0] + $C }
-sub invCorrectSize { ($_[0] - $C) / $B }
+my $B = 120873;
+my $C = 498663; #- does not take hdlist's into account as getAvailableSpace will do it.
+my $D = 100000;
+sub correctSize { ($B * $_[0] + $C) / $D }
+sub invCorrectSize { ($_[0] * $D - $C) / $B }
sub selectedSize {
my ($packages) = @_;
@@ -69,29 +70,78 @@ sub selectedSize {
sub size2time {
my ($x, $max) = @_;
- my $A = 7e-07;
+ my $A = 7e9;
my $limit = min($max * 3 / 4, 9e8);
if ($x < $limit) {
$A * $x;
} else {
$x -= $limit;
- my $B = 6e-16;
- my $C = 15e-07;
+ my $B = 6;
+ my $C = 15e9;
$B * $x ** 2 + $C * $x + $A * $limit;
}
}
-#- search package with given name and compatible with current architecture.
+# Based on Rpmdrake::pkg::extract_header():
+sub get_pkg_info {
+ my ($p) = @_;
+
+ my $urpm = $::o->{packages};
+ my $name = $p->fullname;
+
+ my $medium = URPM::pkg2media($urpm->{media}, $p);
+ my ($local_source, %xml_info_pkgs, $description);
+ my $dir = urpm::file_from_local_url($medium->{url});
+ $local_source = "$dir/" . $p->filename if $dir;
+
+ if (-s $local_source) {
+ log::l("getting information from $dir...");
+ $p->update_header($local_source) and $description = $p->description;
+ log::l("Warning, could not extract header for $name from $medium!") if !$description;
+ }
+ if (!$description) {
+ my $_w = $::o->wait_message(undef, N("Getting package information from XML meta-data..."));
+ if (my $xml_info_file = eval { urpm::media::any_xml_info($urpm, $medium, 'info', undef, urpm::download::sync_logger) }) {
+ require urpm::xml_info;
+ require urpm::xml_info_pkg;
+ log::l("getting information from $xml_info_file");
+ my %nodes = eval { urpm::xml_info::get_nodes('info', $xml_info_file, [ $name ]) };
+ goto header_non_available if $@;
+ put_in_hash($xml_info_pkgs{$name} ||= {}, $nodes{$name});
+ } else {
+ $urpm->{info}(N("No xml info for medium \"%s\", only partial result for package %s", $medium->{name}, $name));
+ }
+ }
+
+ if (!$description && $xml_info_pkgs{$name}) {
+ $description = $xml_info_pkgs{$name}{description};
+ }
+ header_non_available:
+ $description || N("No description");
+}
+
+sub packagesProviding {
+ my ($packages, $name) = @_;
+ grep { $_->is_arch_compat } URPM::packages_providing($packages, $name);
+}
+
+#- search package with given name (and optional ISA) and compatible with current architecture.
#- take the best one found (most up-to-date).
+# FIXME: reuse urpmi higher level code instead!
sub packageByName {
my ($packages, $name) = @_;
- my @l = grep { $_->is_arch_compat && $_->name eq $name } URPM::packages_providing($packages, $name);
+ my $basename = $name =~ s/\(x86-..\)$//r;
+ my @l = sort { $b->id <=> $a->id } grep { $_->name eq $basename } packagesProviding($packages, $name);
my $best;
foreach (@l) {
if ($best && $best != $_) {
- $_->compare_pkg($best) > 0 and $best = $_;
+ if ($best->fullname eq $_->fullname) {
+ $best = $_ if $_->flag_installed;
+ } else {
+ $_->compare_pkg($best) > 0 and $best = $_;
+ }
} else {
$best = $_;
}
@@ -100,14 +150,17 @@ sub packageByName {
$best;
}
+sub _is_kernelServer_needed() {
+ # forbid selecting kernel-server if not having PAE since PAE support is mandatory for kernel-server:
+ return if !detect_devices::has_cpu_flag('pae');
+ arch() =~ /i.86/ && detect_devices::isServer();
+}
+
sub _bestKernel_extensions {
my ($o_match_all_hardware) = @_;
$::o->{kernel_extension} ? $::o->{kernel_extension} :
- $o_match_all_hardware ? (arch() =~ /i.86/ ? '-desktop586' : '-desktop') :
- detect_devices::is_xbox() ? '-xbox' :
- detect_devices::is_i586() ? '-desktop586' :
- arch() =~ /i.86/ && detect_devices::dmi_detect_memory() > 3.8 * 1024 || detect_devices::isServer() ? '-server' :
+ _is_kernelServer_needed() ? '-server' :
'-desktop';
}
@@ -117,6 +170,12 @@ sub bestKernelPackage {
my @preferred_exts = _bestKernel_extensions($o_match_all_hardware);
my @kernels = grep { $_ } map { packageByName($packages, "kernel$_-latest") } @preferred_exts;
+ if (!@kernels) {
+ #- fallback on most generic kernel if the suitable one is not available
+ my @fallback_exts = _bestKernel_extensions('force');
+ @kernels = grep { $_ } map { packageByName($packages, "kernel$_-latest") } @fallback_exts;
+ }
+
log::l("bestKernelPackage (" . join(':', @preferred_exts) . "): " . join(' ', map { $_->name } @kernels) . (@kernels > 1 ? ' (choosing the first)' : ''));
$kernels[0];
@@ -130,7 +189,8 @@ sub packagesToInstall {
log::l("examining packagesToInstall of medium $_->{name}");
push @packages, grep { $_->flag_selected } install::media::packagesOfMedium($packages, $_);
}
- log::l("found " . scalar(@packages) . " packages to install");
+ log::l("found " . scalar(@packages) . " packages to install: " . formatList(5, map { scalar $_->fullname } @packages));
+
@packages;
}
@@ -143,7 +203,8 @@ sub _packageRequest {
#- check for medium selection, if the medium has not been
#- selected, the package cannot be selected.
- !packageMedium($packages, $pkg)->{ignore} or return;
+ my $medium = packageMedium($packages, $pkg);
+ $medium && !$medium->{ignore} or return;
+{ $pkg->id => 1 };
}
@@ -164,7 +225,7 @@ sub packageCallbackChoices {
sub _packageCallbackChoices_ {
my ($urpm, $choices, $virtual_pkg_name) = @_;
- my ($prefer, $_other) = urpm::select::get_preferred($urpm, $choices, '');
+ my ($prefer, $_other) = urpm::select::get_preferred($urpm, $choices, $::o->{preferred_packages});
if (@$prefer) {
@$prefer;
} elsif ($virtual_pkg_name eq 'kernel') {
@@ -227,15 +288,22 @@ sub select_by_package_names_or_die {
}
}
+my @recommended_package_ids;
sub _resolve_requested_and_check {
my ($packages, $state, $requested) = @_;
my @l = $packages->resolve_requested($packages->{rpmdb}, $state, $requested,
- callback_choices => \&packageCallbackChoices, no_suggests => $::o->{no_suggests});
+ callback_choices => \&packageCallbackChoices, no_recommends => $::o->{no_recommends});
+
+ #- keep track of recommended packages so that theys could be unselected if the "no recommends" option is choosen later:
+ if (!is_empty_hash_ref($state->{selected})) {
+ my @new_ids = map { $packages->{depslist}[$_]->id } grep { $state->{selected}{$_}{recommended} } keys %{$state->{selected}};
+ @recommended_package_ids = uniq(@recommended_package_ids, @new_ids);
+ }
my $error;
if (find { !exists $state->{selected}{$_} } keys %$requested) {
- my @rejected = urpm::select::unselected_packages($packages, $state);
+ my @rejected = urpm::select::unselected_packages($state);
$error = urpm::select::translate_why_unselected($packages, $state, @rejected);
log::l("ERROR: selection failed: $error");
}
@@ -283,7 +351,13 @@ sub unselectAllPackages {
my %keep_selected;
log::l("unselecting all packages...");
foreach (@{$packages->{depslist}}) {
- if ($_->flag_base || $_->flag_installed && $_->flag_selected) {
+ my $to_select = $_->flag_base || $_->flag_installed && $_->flag_selected;
+ # unselect recommended packages if minimal install:
+ if ($::o->{no_recommends} && member($_->id, @recommended_package_ids)) {
+ log::l("unselecting recommended package " . $_->name);
+ undef $to_select;
+ }
+ if ($to_select) {
#- keep track of packages that should be kept selected.
$keep_selected{$_->id} = $_;
} else {
@@ -297,6 +371,20 @@ sub unselectAllPackages {
_resolve_requested_and_check($packages, $packages->{state}, \%keep_selected);
}
+
+my (@errors, $push_errors);
+sub start_pushing_error() {
+ $push_errors = 1;
+ undef @errors;
+}
+
+sub popup_errors() {
+ if (@errors) {
+ $::o->ask_warn(undef, N("An error occurred:") . "\n\n" . join("\n", @errors));
+ }
+ undef $push_errors;
+}
+
sub empty_packages {
my ($o_keep_unrequested_dependencies) = @_;
my $packages = urpm->new;
@@ -304,25 +392,39 @@ sub empty_packages {
urpm::set_files($packages, '/mnt');
#- add additional fields used by DrakX.
- @$packages{qw(count media)} = (0, []);
+ $packages->{media} = [];
urpm::args::set_debug($packages) if $::o->{debug_urpmi};
$packages->{log} = \&log::l;
$packages->{info} = \&log::l;
- $packages->{fatal} = $packages->{error} = sub {
+ $packages->{fatal} = sub {
+ log::l("urpmi error: $_[1] ($_[0])\n" . common::backtrace());
+ $::o->ask_warn(undef, N("A fatal error occurred: %s.", "$_[1] ($_[0])"));
+ };
+ $packages->{error} = sub {
log::l("urpmi error: $_[0]");
+ if ($push_errors) {
+ push @errors, @_;
+ return;
+ }
$::o->ask_warn(undef, N("An error occurred:") . "\n\n" . $_[0]);
};
$packages->{root} = $::prefix;
$packages->{prefer_vendor_list} = '/etc/urpmi/prefer.vendor.list';
$packages->{keep_unrequested_dependencies} =
defined($o_keep_unrequested_dependencies) ? $o_keep_unrequested_dependencies : 1;
- $urpm::args::options{force_transactions} = 1;
+ $urpm::args::options{justdb} = $::o->{justdb};
+ urpm::set_tune_rpm($packages, $::o->{'tune-rpm'}) if $::o->{'tune-rpm'};
$::force = 1;
$packages->{options}{ignoresize} = 1;
- $packages->{options}{'priority-upgrade'}; # prevent priority upgrade
+ $packages->{options}{retry} = 3;
+ $packages->{options}{downloader} = $::o->{options}{downloader};
+ # prevent priority upgrade (redundant for now as $urpm->{root} implies disabling it:
+ $packages->{options}{'priority-upgrade'} = undef;
# log $trans->add() faillure; FIXME: should we override *urpm::msg::sys_log?
- $packages->{debug} = \&log::l;
+ $packages->{debug} = $packages->{debug_URPM} = \&log::l;
+ $urpm::args::options{deploops} = $::o->{deploops};
+ $packages->{options}{'curl-options'} = $::o->{curl_options} if $::o->{curl_options};
$packages;
}
@@ -330,7 +432,7 @@ sub empty_packages {
sub readCompssUsers {
my ($file) = @_;
- my $f = common::open_file($file) or log::l("can not find $file: $!"), return;
+ my $f = common::open_file($file) or log::l("cannot find $file: $!"), return;
my ($compssUsers, $gtk_display_compssUsers) = eval join('', <$f>);
if ($@) {
log::l("ERROR: bad $file: $@");
@@ -361,26 +463,35 @@ sub setSelectedFromCompssList {
my ($packages, $rpmsrate_flags_chosen, $min_level, $max_size) = @_;
$rpmsrate_flags_chosen->{TRUE} = 1; #- ensure TRUE is set
my $nb = selectedSize($packages);
- foreach my $p (sort { $b->rate <=> $a->rate } @{$packages->{depslist}}) {
+
+ my %pkgs;
+ foreach my $p (@{$packages->{depslist}}) {
my @flags = $p->rflags;
- next if
+ next if
!$p->rate || $p->rate < $min_level ||
- any { !any { /^!(.*)/ ? !$rpmsrate_flags_chosen->{$1} : $rpmsrate_flags_chosen->{$_} } split('\|\|') } @flags;
-
- #- determine the packages that will be selected when
- #- selecting $p. the packages are not selected.
+ any { !any { /^!(.*)/ ? !$rpmsrate_flags_chosen->{$1} : $rpmsrate_flags_chosen->{$_} } split('\|\|') } @flags;
+ $pkgs{$p->rate} ||= {};
+ $pkgs{$p->rate}{$p->id} = 1 if _packageRequest($packages, $p);
+ }
+ my %pkgswanted;
+ foreach my $level (sort { $b <=> $a } keys %pkgs) {
+ #- determine the packages that will be selected
+ #- the packages are not selected.
my $state = $packages->{state} ||= {};
-
- my ($l, $_error) = _resolve_requested_and_check($packages, $state, _packageRequest($packages, $p) || {});
-
+ foreach my $p (keys %{$pkgs{$level}}) {
+ $pkgswanted{$p} = 1;
+ }
+ my ($l, $_error) = _resolve_requested_and_check($packages, $state, \%pkgswanted);
+
#- this enable an incremental total size.
my $old_nb = $nb;
foreach (@$l) {
$nb += $_->size;
}
if ($max_size && $nb > $max_size) {
+ log::l("disabling selected packages because too big for level $level: $nb > $max_size");
$nb = $old_nb;
- $min_level = $p->rate;
+ $min_level = $level;
$packages->disable_selected($packages->{rpmdb}, $state, @$l);
last;
}
@@ -396,7 +507,7 @@ sub setSelectedFromCompssList {
sub saveSelected {
my ($packages) = @_;
my $state = delete $packages->{state};
- my @l = @{$packages->{depslist}};
+ my @l = @{$packages->{depslist} || []};
my @flags = map { ($_->flag_requested && 1) + ($_->flag_required && 2) + ($_->flag_upgrade && 4) } @l;
[ $packages, $state, \@l, \@flags ];
}
@@ -487,7 +598,7 @@ sub computeGroupSize {
$newSelection{$id} = undef;
my $pkg = $packages->{depslist}[$id];
- my @deps = map { [ $_, keys %{$packages->{provides}{$_} || {}} ] } $pkg->requires_nosense, $pkg->suggests;
+ my @deps = map { [ $_, keys %{$packages->{provides}{$_} || {}} ] } $pkg->requires_nosense, $pkg->recommends_nosense;
foreach (sort { @$a <=> @$b } @deps) { #- sort on number of provides (it helps choosing "b" in: "a" requires both "b" and virtual={"b","c"})
my ($virtual, @choices) = @$_;
if (@choices <= 1) {
@@ -499,7 +610,7 @@ sub computeGroupSize {
if (find { $_->flag_available } @choices_pkgs) {
@choices = (); #- one package is already selected (?)
} else {
- @choices = map { $_->id } packageCallbackChoices($packages, undef, undef, \@choices_pkgs, $virtual);
+ @choices = map { $_->id } packageCallbackChoices($packages, undef, undef, \@choices_pkgs, $virtual, undef);
}
}
push @l2, @choices;
@@ -534,6 +645,27 @@ sub _openInstallLog() {
$LOG;
}
+sub _rebuild_RPM_DB() {
+ if (my $pid = fork()) {
+ waitpid $pid, 0;
+ $? & 0xff00 and die "rebuilding of rpm database failed";
+ } else {
+ log::l("rebuilding rpm database");
+ my $rebuilddb_dir = "$::prefix/var/lib/rpmrebuilddb.$$";
+ if (-d $rebuilddb_dir) {
+ log::l("removing stale directory $rebuilddb_dir");
+ rm_rf($rebuilddb_dir);
+ }
+
+ if (!URPM::DB::rebuild($::prefix)) {
+ log::l("rebuilding of rpm database failed: " . URPM::rpmErrorString());
+ c::_exit(2);
+ }
+
+ c::_exit(0);
+ }
+}
+
sub rpmDbOpen {
my ($b_rebuild_if_needed) = @_;
@@ -541,26 +673,7 @@ sub rpmDbOpen {
my $need_rebuild = $b_rebuild_if_needed && !URPM::DB::verify($::prefix);
- if ($need_rebuild) {
- if (my $pid = fork()) {
- waitpid $pid, 0;
- $? & 0xff00 and die "rebuilding of rpm database failed";
- } else {
- log::l("rebuilding rpm database");
- my $rebuilddb_dir = "$::prefix/var/lib/rpmrebuilddb.$$";
- if (-d $rebuilddb_dir) {
- log::l("removing stale directory $rebuilddb_dir");
- rm_rf($rebuilddb_dir);
- }
-
- if (!URPM::DB::rebuild($::prefix)) {
- log::l("rebuilding of rpm database failed: " . URPM::rpmErrorString());
- c::_exit(2);
- }
-
- c::_exit(0);
- }
- }
+ _rebuild_RPM_DB() if $need_rebuild;
my $db;
if ($db = URPM::DB::open($::prefix)) {
@@ -614,6 +727,7 @@ sub selectPackagesAlreadyInstalled {
my %sizes;
$packages->{rpmdb}->traverse(sub {
my ($p) = @_;
+ $sizes{$p->name} ||= 0;
$sizes{$p->name} += $p->size;
});
$packages->{sizes} = \%sizes;
@@ -644,7 +758,7 @@ sub _filter_packages {
my ($retry, $packages, @packages) = @_;
grep {
if ($_->flag_installed || packageMedium($packages, $_)->{ignore}) {
- if ($_->name eq 'mdv-rpm-summary' && $_->flag_installed) {
+ if ($_->name eq 'mga-rpm-summary' && $_->flag_installed) {
install::pkgs::setup_rpm_summary_translations();
}
$_->free_header;
@@ -671,18 +785,20 @@ sub install {
#- first stage to extract some important information
#- about the selected packages.
- my ($total, $nb);
+ my ($total, $nb) = (0, 0);
foreach my $pkg (@$toInstall) {
$packages{$pkg->id} = $pkg;
$nb++;
- $total += to_int($pkg->size); #- do not correct for upgrade!
+ $total += $pkg->size; #- do not correct for upgrade!
}
log::l("install::pkgs::install $::prefix");
log::l("install::pkgs::install the following: ", join(" ", map { $_->name } values %packages));
URPM::read_config_files();
- URPM::add_macro(join(' ', '__dbi_cdb', URPM::expand('%__dbi_cdb'), 'nofsync'));
+ # force loading libnss*
+ getgrent();
+ URPM::add_macro(join(' ', '__dbi_other', URPM::expand('%__dbi_other'), 'nofsync'));
my $LOG = _openInstallLog();
$packages->{log} = $packages->{info} = $packages->{print} = sub {
@@ -694,7 +810,7 @@ sub install {
#- place (install::steps_gtk.pm,...).
$callback->($packages, user => undef, install => $nb, $total);
- _install_raw($packages, $isUpgrade, $callback, $LOG, 0);
+ my $exit_code = _install_raw($packages, $isUpgrade, $callback, $LOG, 0);
log::l("closing install.log file");
close $LOG;
@@ -705,6 +821,8 @@ sub install {
clean_rpmdb_shared_regions(); #- workaround librpm which is buggy when using librpm rooted and the just installed rooted library
fs::loopback::save_boot($loop_boot);
+
+ $exit_code;
}
sub _unselect_package {
@@ -732,7 +850,7 @@ sub is_package_installed {
}
sub _install_raw {
- my ($packages, $isUpgrade, $callback, $LOG, $noscripts) = @_;
+ my ($packages, $_isUpgrade, $callback, $LOG, $noscripts) = @_;
# prevent warnings in install's logs:
local $ENV{LC_ALL} = 'C';
@@ -743,19 +861,25 @@ sub _install_raw {
# bug present in 2009.0, 2008.1, 2008.0, ... (probably since r11141 aka when switching to rpm-4.2 in URPM-0.83)
local $packages->{options}{script_fd} = fileno $LOG;
- my ($retry, $retry_count);
+ start_pushing_error();
log::l("rpm transactions start");
- my $exit_code = urpm::main_loop::run($packages, $packages->{state}, undef, undef, undef, {
- open_helper => $callback,
+ my ($is_installing, $verify_just_closed);
+ my $exit_code = urpm::main_loop::run($packages, $packages->{state}, undef, undef, {
+ open_helper => sub {
+ &$callback;
+ $is_installing = 0;
+ },
+ verify => $callback,
close_helper => sub {
my ($db, $packages, $_type, $id) = @_;
&$callback;
+ return if !$is_installing; # don't check if it's installed if it's being verified
my $pkg = defined $id && $packages->{depslist}[$id] or return;
print $LOG $pkg->fullname . "\n";
my $check_installed = is_package_installed($db, $pkg);
- if ($pkg->name eq 'mdv-rpm-summary' && $check_installed) {
+ if ($pkg->name eq 'mga-rpm-summary' && $check_installed) {
install::pkgs::setup_rpm_summary_translations();
}
@@ -764,7 +888,11 @@ sub _install_raw {
} else {
log::l($pkg->name . " not installed, " . URPM::rpmErrorString());
}
- }, inst => $callback,
+ },
+ inst => sub {
+ &$callback;
+ $is_installing = 1;
+ },
trans => $callback,
# FIXME: implement already_installed_or_not_installable
bad_signature => sub {
@@ -772,11 +900,15 @@ sub _install_raw {
$msg =~ s/:$/\n\n/m; # FIXME: to be fixed in urpmi after 2008.0 (sic!)
log::l($msg);
log::l($msg2);
- if ($packages->{options}{auto}) {
- 0;
- } else {
- $::o->ask_yesorno(N("Warning"), "$msg\n\n$msg2");
- }
+ return 0 if $packages->{options}{auto};
+ state $do_not_ask;
+ state $answer;
+ return $answer if $do_not_ask;
+ $answer = $::o->ask_from_({ messages => "$msg\n\n$msg2" }, [
+ { val => \$do_not_ask,
+ type => 'bool', text => N("Do not ask again"),
+ },
+ ]);
},
copy_removable => sub {
my ($medium) = @_;
@@ -794,6 +926,11 @@ sub _install_raw {
N("Installation of packages failed:") . "\n\n" . join("\n", @$errors));
}
},
+ completed => sub {
+ if (!$packages->{options}{auto}) {
+ popup_errors();
+ }
+ },
message => sub {
my ($title, $message) = @_;
log::l($message);
@@ -804,6 +941,17 @@ sub _install_raw {
log::l($msg);
$::o->ask_yesorno($title, $msg);
},
+ ask_for_bad_or_missing => sub {
+ my ($_title, $msg) = @_;
+ log::l($msg);
+ state $do_not_ask;
+ state $answer;
+ return $answer if $do_not_ask;
+ $answer = $::o->ask_from_({ messages => $msg }, [
+ { val => \$do_not_ask, type => 'bool', text => N("Do not ask again"),
+ },
+ ]);
+ },
# Uneeded callbacks: success_summary
});
@@ -925,10 +1073,10 @@ sub _remove_raw {
log::l("removing: " . join(' ', @$to_remove));
URPM::read_config_files();
- URPM::add_macro(URPM::expand('__dbi_cdb %__dbi_cdb nofsync'));
+ URPM::add_macro(URPM::expand('__dbi_other %__dbi_other nofsync'));
my $db = open_rpm_db_rw() or die "error opening RPM database: ", URPM::rpmErrorString();
- my $trans = $db->create_transaction($::prefix);
+ my $trans = $db->create_transaction;
#- stuff remove all packages that matches $p, not a problem since $p has name-version-release format.
$trans->remove($_) foreach @$to_remove;
diff --git a/perl-install/install/share/aliases b/perl-install/install/share/aliases
index de852a835..f58e6b9ca 100644
--- a/perl-install/install/share/aliases
+++ b/perl-install/install/share/aliases
@@ -1,3 +1,5 @@
+/etc/ndiswrapper /mnt/etc/ndiswrapper
+/sbin/loadndisdriver /mnt/sbin/loadndisdriver
/bin/gunzip gzip
/usr/bin/install2 ../lib/libDrakX/install/install2
/usr/bin/commands ../lib/libDrakX/install/commands
diff --git a/perl-install/install/share/fonts.tar.bz2 b/perl-install/install/share/fonts.tar.bz2
deleted file mode 100644
index df08d4baf..000000000
--- a/perl-install/install/share/fonts.tar.bz2
+++ /dev/null
Binary files differ
diff --git a/perl-install/install/share/gdb-inst b/perl-install/install/share/gdb-inst
new file mode 100644
index 000000000..8cd7d837e
--- /dev/null
+++ b/perl-install/install/share/gdb-inst
@@ -0,0 +1,24 @@
+#!/bin/sh
+cat <<EOF
+You can now type "run" in order to start the installer from within the debugger.
+If it segfaults, you can:
+- go back to tty2 by pressing Alt+Ctlr+F2.
+- type "gcore" in order to generate a core file
+- type "exit" to go back to the shell.
+- you can then:
+ o either plug a USB key to your physical/virtual machine and copy the
+ core.XXXX file on it
+ o copy it to /mnt if you already passed the partitionning step ;
+ you can later retrieve it from another OS (dual boot) or using guestfish if
+ it's a virtual machine
+
+On a real Mageia system, you can then install the needed debuginfo packages and
+get a proper stack trace with GDB. You would probably need at least the
+following packages:
+ urpmi {glibc,perl{,-Glib,-Gtk2},glib2.0,gtk+2.0}-debuginfo
+
+
+WARNING: that keyboard is in QWERTY mode!!!!
+
+EOF
+exec gdb -q --args perl /usr/bin/install2
diff --git a/perl-install/install/share/generate-xlocales b/perl-install/install/share/generate-xlocales
index 1bf60d549..60607af7b 100755
--- a/perl-install/install/share/generate-xlocales
+++ b/perl-install/install/share/generate-xlocales
@@ -2,7 +2,7 @@
#
# Copyright (C) 2006 Mandriva
# Pablo Saraxtaga <pablo@mandriva.com>
-# Thierry Vignaud <tvignaud@mandriva.com>
+# Thierry Vignaud <thierry.vignaud.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/perl-install/install/share/gtk.css b/perl-install/install/share/gtk.css
new file mode 100644
index 000000000..3befe735c
--- /dev/null
+++ b/perl-install/install/share/gtk.css
@@ -0,0 +1,7 @@
+/* CSD for windows: */
+window, .window-frame {
+ border-width: 1px;
+ border: solid 1px alpha(black, 0.75);
+ border-radius: 7px 7px 0 0;
+}
+
diff --git a/perl-install/install/share/gtkrc b/perl-install/install/share/gtkrc
index ef6923a2c..6d4b2f48c 100644
--- a/perl-install/install/share/gtkrc
+++ b/perl-install/install/share/gtkrc
@@ -1 +1 @@
-gtk-theme-name = "Ia Ora Smooth"
+gtk-theme-name = "oxygen-gtk"
diff --git a/perl-install/install/share/kmap2bkmap b/perl-install/install/share/kmap2bkmap
index 8ac8f5846..9870ef3ef 100755
--- a/perl-install/install/share/kmap2bkmap
+++ b/perl-install/install/share/kmap2bkmap
@@ -8,10 +8,12 @@ my $KMAP_MAGIC = 0x8B39C07F;
BEGIN { @ARGV == 1 or die "usage: kmap2bkmap <keymap>\n" }
# load unicode keymap
-my $unimap = "$ARGV[0]" . ".uni";
+my $unimap = $ARGV[0] . ".uni";
system("sudo loadkeys $unimap") == 0 or die;
-open F, "dumpkeys -n -f |";
-<F> =~ /^keymaps\s+(.*)/ or die;
+open my $F, "dumpkeys -n -f |";
+<$F> =~ /^keymaps\s+(.*)/ or die;
+
+my @keymaps;
foreach (split ',', $1) {
my @l = /(\d+)-(\d+)/;
my ($i, $j) = @l ? @l : ($_,$_);
@@ -21,14 +23,15 @@ foreach (split ',', $1) {
print pack("I", $KMAP_MAGIC);
print map { pack "i", $keymaps[$_] || 0 } 0 .. c::MAX_NR_KEYMAPS()-1;
-foreach (<F>) {
+my @L;
+foreach (<$F>) {
s/\+0x/0x/g;
my ($keycode, $key, undef, @l) = split;
$keycode eq 'keycode' or next;
my $i = 0;
$L[$i++][$key] = hex $_ foreach @l;
}
-close F or die "dumpkeys failed";
+close $F or die "dumpkeys failed";
foreach (@L) {
foreach my $i (0 .. c::NR_KEYS()-1) {
diff --git a/perl-install/install/share/list.xml b/perl-install/install/share/list.xml
index 5a7498625..3c1100d34 100644
--- a/perl-install/install/share/list.xml
+++ b/perl-install/install/share/list.xml
@@ -1,44 +1,45 @@
<list no-arch-libraries="on">
<from expand="binary">
- ash echo
- aria2c cp curl md5sum <!-- needed by urpmi -->
- cpio gzip bzip2
- <if-not ARCH="ppc">
- fdisk
- </if-not>
- <if ARCH="ppc">
- pdisk
- </if>
- insmod modinfo rmmod
+ ash dash.static echo
+ aria2c cp curl md5sum wget <!-- needed by urpmi -->
+ rpm rpmdb <!-- needed to rebuild database -->
+ cpio gzip bzip2 xz
+ grub2-editenv
+ insmod modinfo rmmod modprobe lsmod
+
+ <!-- block device tools -->
+ cryptsetup dmsetup
+ dmraid kpartx
+ fdisk
losetup
- lvm2 mdadm
- mount mount.nfs umount
+ lvm2 lvm lvs pvs vgs mdadm mdmon
+ quotacheck
- <mode copy="dereference">
- usb_id <!-- needed by mouse::detect -->
- </mode>
+ <!-- virtualization integration -->
+ spice-vdagent spice-vdagentd
+ systemd-detect-virt
+ udevadm <!-- needed by mouse::detect & stage2 -->
+
+ <!-- FS tools -->
badblocks
- mkswap
+ mkswap swaplabel
+ mkfs.btrfs btrfs btrfsck fsck.btrfs btrfstune
+ mkfs.exfat tune.exfat
mkfs.ext2 mkfs.ext3 mkfs.ext4 e2fsck tune2fs dumpe2fs resize2fs
-
+ mkfs.f2fs fsck.f2fs resize.f2fs
+ mkfs.fat dosfslabel mlabel
+ mkfs.jfs fsck.jfs jfs_tune
+ mkfs.nilfs2 nilfs-tune nilfs-resize
+ mkfs.ntfs ntfsresize ntfslabel
mkfs.reiserfs resize_reiserfs reiserfstune
- mkfs.xfs xfs_admin
-
- <if ARCH="i.86|x86_64|ia64">
- mkdosfs
- dosfslabel
- mkntfs
- ntfsresize
- ntfslabel
- dmraid
- </if>
- <if ARCH="i.86|x86_64">
- mkfs.jfs fsck.jfs jfs_tune
- </if>
- quotacheck
- cryptsetup dmsetup
+ mkfs.xfs xfs_admin xfs_growfs
+ mount mount.nfs umount
+ xfs_freeze xfs_io <!-- needed for setup grub on XFS formated / -->
+ xfs_db <!-- needed by xfs_admin for setting UUID -->
+
+ tty stty <!-- needed for text mode installer (through unicode_start) -->
setfont kbd_mode
<mode copy="dereference">
@@ -46,56 +47,147 @@
</mode>
xset
xkbcomp setxkbmap
+ libinput
- fb2png
+ scrot <!-- for screenshots -->
perl
- monitor-edid monitor-get-edid-using-vbe monitor-parse-edid monitor-get-edid
+ monitor-edid
+ <if ARCH="i.86|x86_64">
+ monitor-get-edid-using-vbe
+ </if>
+ monitor-parse-edid monitor-get-edid
<filter subst="s!^echo!/bin/echo!">
unicode_start
</filter>
- <if ARCH="i.86|x86_64|ia64">
+ <if ARCH="i.86|x86_64">
dmidecode
</if>
<if ARCH="ia64">
efibootmgr
</if>
- <if ARCH="ppc">
- hattrib hcopy hcd
- hformat hmount humount
- </if>
-
<if set="DEBUG_INSTALL">
- strace bash less ps top gdb
+ strace bash less ps top gdb busybox cfdisk partprobe chroot grep vim-minimal rpm urpmi
</if>
</from>
+<!-- when adding udev rules, think whether they're needed in rescue too
+ (../../../rescue/list.xml) -->
+<from dir="/lib/udev/rules.d">
+ 10-dm.rules
+ 11-dm-lvm.rules
+ 13-dm-disk.rules
+ 50-udev-default.rules <!-- needed for input in X11 -->
+ 60-evdev.rules
+ 60-input-id.rules
+ 60-persistent-input.rules
+ 60-persistent-storage.rules
+ 60-sensor.rules
+ 61-x11-input.rules
+ 63-md-raid-arrays.rules
+ 64-md-raid-assembly.rules
+ 65-libwacom.rules
+ 70-mouse.rules
+ 70-spice-vdagentd.rules
+ 70-touchpad.rules
+ 70-uaccess.rules
+ 75-net-description.rules
+ 80-drivers.rules
+ 80-libinput-device-groups.rules
+ 80-net-setup-link.rules
+ 90-libinput-fuzz-override.rules
+ 95-dm-notify.rules
+</from>
+<from dir="/usr/lib/udev/hwdb.d">
+ <from expand="glob">
+ *.hwdb
+ </from>
+</from>
+
+<from dir="/usr/libexec">
+ Xorg
+ Xorg.wrap
+ <!-- needed by WebKit-4.1.typelib -->
+ webkit2gtk-4.1/WebKitNetworkProcess
+ webkit2gtk-4.1/WebKitWebProcess
+ <!-- glycin-loaders -->
+ glycin-loaders/2+/glycin-image-rs
+ glycin-loaders/2+/glycin-svg
+ <from expand="glob">
+ libinput/libinput-*
+ </from>
+</from>
+
+<from dir="/usr/LIB/imlib2/loaders"> <!-- for scrot/giblib -->
+ argb.so
+ jpeg.so
+ png.so
+ zlib.so
+</from>
+
+<!-- needed by Gtk3 introspection -->
+<from dir="/usr/LIB/girepository-1.0">
+ Atk-1.0.typelib
+ cairo-1.0.typelib
+ freetype2-2.0.typelib <!-- needed by WebKit-4.1.typelib -->
+ Gdk-3.0.typelib
+ GdkPixbuf-2.0.typelib
+ GdkPixdata-2.0.typelib
+ GdkX11-3.0.typelib
+ Gio-2.0.typelib
+ GLib-2.0.typelib
+ GModule-2.0.typelib
+ GObject-2.0.typelib
+ Gtk-3.0.typelib
+ HarfBuzz-0.0.typelib <!-- needed by Pango-1.0.typelib -->
+ JavaScriptCore-4.1.typelib <!-- needed by WebKit-4.1.typelib -->
+ Pango-1.0.typelib
+ Soup-3.0.typelib <!-- needed by WebKit-4.1.typelib -->
+ WebKit2-4.1.typelib
+ xlib-2.0.typelib
+</from>
+
<from dir="/usr/LIB/xorg/modules">
drivers/fbdev_drv.so
+ <if ARCH="i.86|x86_64">
drivers/vesa_drv.so
- extensions/libextmod.so
- input/kbd_drv.so
- input/mouse_drv.so
- input/vmmouse_drv.so
- input/wacom_drv.so
- linux/libfbdevhw.so
- libfb.so
libint10.so
+ </if>
+ input/libinput_drv.so
+ input/wacom_drv.so
+ libfbdevhw.so
libshadow.so
- libvbe.so
</from>
+<from dir="/usr/share/X11/xorg.conf.d">
+ <from expand="glob">
+ *.conf
+ </from>
+</from>
+
+<!-- fix "No GSettings schemas are installed on the system" -->
+<from dir="/usr/share/glib-2.0/schemas">
+ <from expand="glob">
+ gschema*
+ org.gnome.desktop.*
+ </from>
+</from>
+
+<!-- keyboard layouts -->
<from dir="/usr/share/X11/xkb">
<filter subst="s!//.*!!">
geometry/pc
keycodes/aliases
+ keycodes/evdev
keycodes/xfree86
rules/base
- rules/xorg
- rules/xorg.lst
- compat semantics types
+ rules/base.lst
+ <from expand="glob">
+ rules/evdev*
+ </from>
+ compat types
<from expand="glob">
symbols/*
</from>
@@ -112,15 +204,31 @@
TTF/devanagari/raghu.ttf
TTF/lohit/lohit_pa.ttf
TTF/thai/Norasi.ttf
+ TTF/wqy-microhei/wqy-microhei.ttc
</to>
</from>
+<from dir="/usr/share/icons/Adwaita/">
+ index.theme
+ scalable/status/image-missing.svg
+ symbolic/actions/list-add-symbolic.svg
+ symbolic/actions/list-remove-symbolic.svg
+ symbolic/ui/pan-down-symbolic.svg
+ symbolic/ui/pan-end-symbolic-rtl.svg
+ symbolic/ui/pan-end-symbolic.svg
+ symbolic/ui/pan-start-symbolic-rtl.svg
+ symbolic/ui/pan-start-symbolic.svg
+ symbolic/ui/pan-up-symbolic.svg
+</from>
+
+<!-- translations for modules used by drakx -->
<from dir="/usr/share/locale">
<to dir="/usr/share/locale_special">
<from expand="glob">
*/LC_MESSAGES/draksnapshot.mo
*/LC_MESSAGES/drakx-net.mo
*/LC_MESSAGES/drakx-kbd-mouse-x11.mo
+ */LC_MESSAGES/gtk30.mo
*/LC_MESSAGES/urpmi.mo
</from>
</to>
@@ -132,34 +240,54 @@
iso8859-1
</from>
+<from dir="/usr/share/zoneinfo">
+ zone.tab
+</from>
+
<filter command="strip">
<from dir="/LIB">
- libnss_nis.so.2
libnss_files.so.2
libnss_dns.so.2
libresolv.so.2
- ld-linux*.so.2
+ ld-linux*.so.*
+ <!-- needed for mount.ntfs-3g -->
+ libfuse.so.2
+
+ <!-- needed by dmraid -->
+ libdmraid-events-isw.so
+
+ <!-- mutter -->
+ <from expand="glob">
+ mutter-*/plugins/libdefault.so
+ </from>
- <!-- modules used by libnss3 -->
- libfreebl3.so
- libsoftokn3.so
+ <!-- needed fro Gtk3-WebKit2 -->
+ <from expand="glob">
+ libwebkit2gtk-4.1.so.?
+ </from>
+ webkit2gtk-4.1/injected-bundle/libwebkit2gtkinjectedbundle.so
</from>
</filter>
<from>
/etc/urpmi/prefer.vendor.list
/etc/mke2fs.conf
- /etc/e2fsck.conf
+ /etc/netconfig
/etc/fonts/
/etc/passwd
/etc/protocols
- /etc/rpm/macros.d/10manbo.macros
- /etc/rpm/macros.d/20common.macros
- /usr/share/X11/XKeysymDB
- /etc/pango/ARCH/pango.modules
- /usr/LIB/gtk-2.0/*/loaders/libpixbufloader-png.so
- /usr/LIB/gtk-2.0/*/immodules/im-cedilla.so
- /usr/LIB/gtk-2.0/*/engines/libia_ora.so
+
+ <from expand="glob">
+ /usr/LIB/ntfs-3g/*
+ </from>
+
+ <from expand="glob">
+ /usr/share/icu/*/icudt*.dat
+ </from>
+
+<!-- /usr/share/X11/XKeysymDB -->
+ /usr/LIB/libgdk_pixbuf-2.0.so.0
+ /usr/LIB/gtk-3.0/*/immodules/im-cedilla.so
/usr/share/mime/mime.cache
/usr/lib/libDrakX/keyboard.pm
@@ -168,54 +296,152 @@
/usr/lib/libDrakX/Xconfig
/usr/lib/libDrakX/auto/xf86misc
/usr/lib/libDrakX/xf86misc
- /usr/share/libDrakX/pixmaps
<mode copy="keep-links">
/usr/share/doc/installer-help/
</mode>
+ /usr/share/libDrakX/pixmaps
+
/usr/lib/rpm/rpmrc
+ <from expand="glob">
+ /usr/lib/rpm/rpmpopt-*
+ </from>
+ /usr/lib/rpm/sysusers.sh
+ /usr/lib/rpm/mageia/macros
/usr/lib/rpm/macros
- /usr/lib/rpm/manbo/rpmrc
+
+ <!-- glycin-loaders -->
+ /usr/share/glycin-loaders/2+/conf.d/glycin-image-rs.conf
+ /usr/share/glycin-loaders/2+/conf.d/glycin-svg.conf
+
/usr/share/pci.ids
+ /usr/share/usb.ids
/usr/share/locale/UTF-8
/usr/share/terminfo/l/linux
/bin/brltty
- /sbin/mount.ntfs-3g <!-- can not be expanded as binary, not executable for all users -->
+ /sbin/mount.ntfs-3g <!-- cannot be expanded as binary, not executable for all users -->
/sbin/blkid
- /usr/bin/drakx-matchbox-window-manager
- /usr/share/matchbox/mbnoapp.xpm
+ /sbin/mageia-setup-keyboard
+
+ /usr/bin/mutter
+ /usr/share/themes/Adwaita/gtk-3.0/gtk.css
- /lib/udev/pcmcia-socket-startup
/etc/pcmcia/config.opts
+ /etc/pki/tls/certs/ca-bundle.crt
+ /etc/pki/tls/cert.pem
+ /etc/pki/tls/openssl.cnf
+ /etc/crypto-policies/back-ends/opensslcnf.config
+
+ <!-- misc tools needed by some udev rules -->
+ /usr/lib/systemd/systemd-udevd
+ /usr/lib/udev/ata_id
+ /usr/lib/udev/libinput-device-group
+ /usr/lib/udev/libinput-fuzz-extract
+ /usr/lib/udev/libinput-fuzz-to-zero
+ /usr/lib/udev/pcmcia-socket-startup
+ /usr/lib/udev/scsi_id
<from expand="glob">
- <from spaces_in_filename="1">
- /usr/share/themes/Ia Ora*
- </from>
- <from spaces_in_filename="1">
- /usr/share/themes/Ia Ora*/*
- </from>
- <from spaces_in_filename="1">
- /usr/share/themes/Ia Ora*/matchbox/*
+ /usr/share/libinput/*.quirks
+ </from>
+
+ <!-- for GDB: -->
+ <if set="DEBUG_INSTALL">
+ /usr/libexec/gdb
+ <from expand="glob">
+ /usr/include/python3.*/pyconfig-*.h
+ /usr/LIB/libpython3.*so
+ /usr/LIB/python3.*/abc.py
+ /usr/LIB/python3.*/codecs.py
+ /usr/LIB/python3.*/_collections_abc.py
+ /usr/LIB/python3.*/contextlib.py
+ /usr/LIB/python3.*/copy.py
+ /usr/LIB/python3.*/copyreg.py
+ /usr/LIB/python3.*/collections/*.py
+ /usr/LIB/python3.*/enum.py
+ /usr/LIB/python3.*/importlib/*.py
+ /usr/LIB/python3.*/lib-dynload/*opcode*.so
+ /usr/LIB/python3.*/encodings/aliases.py
+ /usr/LIB/python3.*/encodings/__init__.py
+ /usr/LIB/python3.*/encodings/latin_1.py
+ /usr/LIB/python3.*/encodings/utf_8.py
+ /usr/LIB/python3.*/functools.py
+ /usr/LIB/python3.*/genericpath.py
+ /usr/LIB/python3.*/heapq.py
+ /usr/LIB/python3.*/io.py
+ /usr/LIB/python3.*/keyword.py
+ /usr/LIB/python3.*/linecache.py
+ /usr/LIB/python3.*/operator.py
+ /usr/LIB/python3.*/os.py
+ /usr/LIB/python3.*/posixpath.py
+ /usr/LIB/python3.*/reprlib.py
+ /usr/LIB/python3.*/site.py
+ /usr/LIB/python3.*/_sitebuiltins.py
+ /usr/LIB/python3.*/sre_compile.py
+ /usr/LIB/python3.*/sre_constants.py
+ /usr/LIB/python3.*/sre_parse.py
+ /usr/LIB/python3.*/stat.py
+ /usr/LIB/python3.*/sysconfig.py
+ /usr/LIB/python3.*/_sysconfigdata*.py
+ /usr/LIB/python3.*/tokenize.py
+ /usr/LIB/python3.*/token.py
+ /usr/LIB/python3.*/traceback.py
+ /usr/LIB/python3.*/types.py
+ /usr/LIB/python3.*/warnings.py
+ /usr/LIB/python3.*/weakref.py
+ /usr/LIB/python3.*/_weakrefset.py
+ /usr/share/gdb/guile/gdb/*
+ /usr/share/gdb/python/gdb/*
</from>
- <from spaces_in_filename="1">
- /usr/share/themes/Ia Ora*/gtk-2.0/gtkrc
+ /usr/LIB/guile/3.0/ccache/language/scheme/compile-tree-il.go
+ /usr/LIB/guile/3.0/ccache/language/scheme/decompile-tree-il.go
+ /usr/LIB/guile/3.0/ccache/language/scheme/spec.go
+ /usr/LIB/guile/3.0/ccache/language/tree-il.go
+ /usr/LIB/guile/3.0/ccache/rnrs/bytevectors.go
+ /usr/LIB/guile/3.0/ccache/system/foreign.go
+ /usr/share/gdb/guile/gdb/boot.scm
+ /usr/share/gdb/guile/gdb.go
+ /usr/share/guile/3.0/language/bytecode/spec.scm
+ /usr/share/guile/3.0/language/bytecode.scm
+ /usr/share/guile/3.0/language/scheme/compile-tree-il.scm
+ /usr/share/guile/3.0/language/scheme/decompile-tree-il.scm
+ /usr/share/guile/3.0/language/scheme/spec.scm
+ /usr/share/guile/3.0/language/tree-il.scm
+ /usr/share/guile/3.0/language/tree-il/spec.scm
+ /usr/share/guile/3.0/srfi/srfi-9/gnu.scm
+ /usr/share/guile/3.0/system/foreign.scm
+ <from expand="glob">
+ /usr/LIB/guile/3.0/ccache/ice-9/*go
+ /usr/LIB/guile/3.0/ccache/srfi/*.go
+ /usr/LIB/guile/3.0/ccache/system/base/*.go
+ /usr/LIB/guile/3.0/ccache/system/vm/*.go
+ /usr/share/guile/3.0/ice-9/*.scm <!-- for boot-9.scm and its deps -->
+ /usr/share/guile/3.0/rnrs/*.scm
+ /usr/share/guile/3.0/rnrs/*/*.scm
+ /usr/share/guile/3.0/srfi/*
+ /usr/share/guile/3.0/system/base/*.scm
+ /usr/share/guile/3.0/system/vm/*.scm
</from>
- /etc/gtk-2.0/gdk-pixbuf.loaders.*
- /etc/gtk-2.0/gtk.immodules.*
- /etc/brltty/*.ttb
- /etc/brltty/brltty-??.hlp
+ /usr/share/guile/3.0/system/foreign.scm
+ /usr/share/gdb/guile/gdb.go
+ /usr/share/gdb/guile/gdb.scm
+ </if>
+
+ <from expand="glob">
+ /etc/brltty/*/*.ttb
+ /etc/brltty/*/*/*.txt
/LIB/brltty/libbrlttyb??.so
</from>
+ <!-- example how to include debuginfo in stage2:
+ <from expand="command">
+ rpm -ql ldetect-debuginfo drakxtools-backend-debuginfo x11-server-debuginfo |grep -E '.build-id/|\.debug'
+ </from>
+ -->
<from expand="command">
perl -Mlang -I.. -le 'print foreach lang::console_font_files()'
</from>
-
- <if set="DEBUG_INSTALL">
- /etc/termcap
- </if>
</from>
<from dir="/usr/share/ldetect-lst">
@@ -230,13 +456,10 @@
ldetect-lst-modules.alias
</from>
-<from dir="/usr/LIB/pango/*/modules">
- pango-basic-fc.so
- pango-arabic-fc.so
- pango-hangul-fc.so
- pango-hebrew-fc.so
- pango-indic-fc.so
- pango-thai-fc.so
+<from dir="/usr/LIB/device-mapper">
+ <from expand="glob">
+ *.so
+ </from>
</from>
<from dir="/usr/LIB/gconv">
@@ -266,124 +489,165 @@
gconv-modules
</from>
+<!-- For the usrmove -->
+<from>
+ /usr/lib/dracut/modules.d/30convertfs/convertfs.sh
+</from>
+<from expand="binary">
+ find bash ldconfig mv rm cp ln
+</from>
+
<filter subst="/^__END__/ and $_ = '', close ARGV">
<from expand="main-perl">
AutoLoader.pm
- Carp.pm
Carp/Heavy.pm
- Exporter.pm
+ Carp.pm
Exporter/Heavy.pm
- FileHandle.pm
+ Exporter.pm
File/Basename.pm
File/Find.pm
+ FileHandle.pm
File/Path.pm
- File/Spec.pm
- File/Spec/Unix.pm
File/Temp.pm
Getopt/Long.pm
+ IPC/Open2.pm
+ IPC/Open3.pm
+ Net/Cmd.pm
+ Net/Config.pm
+ Net/FTP/A.pm
+ Net/FTP/dataconn.pm
+ Net/FTP/I.pm
+ Net/FTP.pm
+ Net/Netrc.pm
+ Net/Ping.pm
PerlIO.pm
SelectSaver.pm
SelfLoader.pm
Symbol.pm
Tie/Hash.pm
Time/Local.pm
+ XSLoader.pm
base.pm
+ bytes.pm
constant.pm
+ dumpvar.pl
feature.pm
+ integer.pm
locale.pm
+ overload.pm
+ overloading.pm
+ parent.pm
+ strict.pm
+ unicore/To/Uc.pl <!-- needed for uc() on UTF-8 -->
utf8.pm
- utf8_heavy.pl
- unicore/Exact.pl
- unicore/Canonical.pl
- unicore/PVA.pl
- unicore/To/Lower.pl
- unicore/To/Fold.pl
- unicore/To/Upper.pl
- unicore/lib/gc_sc/Word.pl
- unicore/lib/gc_sc/Digit.pl
- dumpvar.pl
+ vars.pm
warnings.pm
warnings/register.pm
- ARCH-linux-thread-multi/File/Glob.pm
- ARCH-linux-thread-multi/auto/File/Glob/Glob.so
- ARCH-linux-thread-multi/Config.pm
- ARCH-linux-thread-multi/Config_git.pl
- ARCH-linux-thread-multi/Config_heavy.pl
- ARCH-linux-thread-multi/Data/Dumper.pm
- ARCH-linux-thread-multi/DynaLoader.pm
- ARCH-linux-thread-multi/Errno.pm
- ARCH-linux-thread-multi/Fcntl.pm
- ARCH-linux-thread-multi/XSLoader.pm
- ARCH-linux-thread-multi/auto/Fcntl/Fcntl.so
- ARCH-linux-thread-multi/IO.pm
- ARCH-linux-thread-multi/IO/File.pm
- ARCH-linux-thread-multi/IO/Handle.pm
- ARCH-linux-thread-multi/IO/Seekable.pm
- ARCH-linux-thread-multi/IO/Select.pm
- ARCH-linux-thread-multi/IO/Socket.pm
- ARCH-linux-thread-multi/IO/Socket/INET.pm
- ARCH-linux-thread-multi/IO/Socket/UNIX.pm
- ARCH-linux-thread-multi/List/Util.pm
- ARCH-linux-thread-multi/Socket.pm
- ARCH-linux-thread-multi/Scalar/Util.pm
- ARCH-linux-thread-multi/_h2ph_pre.ph
- ARCH-linux-thread-multi/asm/unistd.ph
- <if ARCH="ia64">
- ARCH-linux-thread-multi/asm-i386/unistd.ph
- ARCH-linux-thread-multi/asm-x86_64/unistd.ph
- ARCH-linux-thread-multi/asm/break.ph
+ <if set="DEBUG_INSTALL">
+ perl5db.pl
+ Term/ReadLine.pm
</if>
+</from>
+
+<from expand="main-perl-bin">
+ B.pm
+ Config_git.pl
+ Config_heavy.pl
+ Config.pm
+ Cwd.pm
+ Data/Dumper.pm
+ DynaLoader.pm
+ Encode.pm
+ Encode/Alias.pm
+ Encode/Config.pm
+ Encode/Encoding.pm
+ Encode/MIME/Name.pm
+ Encode/Unicode.pm
+ Errno.pm
+ Fcntl.pm
+ File/Glob.pm
+ File/Spec.pm
+ File/Spec/Unix.pm
+ _h2ph_pre.ph
+ IO/File.pm
+ IO/Handle.pm
+ IO.pm
+ IO/Seekable.pm
+ IO/Select.pm
+ IO/Socket/INET.pm
+ IO/Socket.pm
+ IO/Socket/UNIX.pm
+ List/Util.pm
+ POSIX.pm
+ Scalar/Util.pm
+ Socket.pm
+ Storable.pm
+ Time/HiRes.pm
<if ARCH="i.86|x86_64">
- ARCH-linux-thread-multi/asm/unistd_32.ph
- ARCH-linux-thread-multi/asm/unistd_64.ph
+ asm/unistd_32.ph
+ asm/unistd_64.ph
</if>
- ARCH-linux-thread-multi/auto/Data/Dumper/Dumper.so
- ARCH-linux-thread-multi/auto/IO/IO.so
- ARCH-linux-thread-multi/auto/Socket/Socket.so
- ARCH-linux-thread-multi/bits/syscall.ph
- ARCH-linux-thread-multi/bits/wordsize.ph
- ARCH-linux-thread-multi/sys/syscall.ph
- ARCH-linux-thread-multi/syscall.ph
- ARCH-linux-thread-multi/auto/DynaLoader/dl_findfile.al
- ARCH-linux-thread-multi/lib.pm
- ARCH-linux-thread-multi/re.pm
- ARCH-linux-thread-multi/auto/POSIX/autosplit.ix
- ARCH-linux-thread-multi/auto/POSIX/load_imports.al
- ARCH-linux-thread-multi/auto/POSIX/POSIX.so
- ARCH-linux-thread-multi/Cwd.pm
- ARCH-linux-thread-multi/auto/Cwd/Cwd.so
- ARCH-linux-thread-multi/POSIX.pm
- ARCH-linux-thread-multi/Time/HiRes.pm
- ARCH-linux-thread-multi/auto/Time/HiRes/HiRes.so
- bytes.pm
- bytes_heavy.pl <!-- needed by urpm::mirrors -->
- integer.pm
- overload.pm
- strict.pm
- vars.pm
- Net/Cmd.pm
- Net/Config.pm
- Net/FTP.pm
- Net/FTP/A.pm
- Net/FTP/I.pm
- Net/FTP/dataconn.pm
- Net/Netrc.pm
+ asm/unistd.ph
+ auto/B/B.so
+ auto/Cwd/Cwd.so
+ auto/Data/Dumper/Dumper.so
+ auto/Encode/Encode.so
+ auto/Encode/Unicode/Unicode.so
+ auto/Fcntl/Fcntl.so
+ auto/File/Glob/Glob.so
+ auto/IO/IO.so
+ auto/List/Util/Util.so
+ auto/POSIX/POSIX.so
+ auto/re/re.so
+ auto/Socket/Socket.so
+ auto/Storable/Storable.so
+ auto/Time/HiRes/HiRes.so
+ bits/syscall.ph
+ bits/wordsize.ph
+ lib.pm
+ re.pm
+ syscall.ph
+ sys/syscall.ph
+</from>
+
+<from expand="perl-bin">
+ Cairo.pm
+ List/MoreUtils/XS.pm
+ Term/ReadKey.pm
+ XML/LibXML.pm
+ XML/LibXML/AttributeHash.pm
+ XML/LibXML/Error.pm
+ XML/LibXML/NodeList.pm
+ XML/LibXML/Reader.pm
+ XML/LibXML/XPathContext.pm
+ XML/LibXML/Boolean.pm
+ XML/LibXML/Literal.pm
+ XML/LibXML/Number.pm
+ auto/Cairo/Cairo.so
+ auto/List/MoreUtils/XS/XS.so
+ auto/Term/ReadKey/ReadKey.so
+ auto/XML/LibXML/LibXML.so
<if set="DEBUG_INSTALL">
- perl5db.pl
- Term/ReadLine.pm
+ Term/ReadLine/Gnu.pm
+ Term/ReadLine/Gnu/XS.pm
+ auto/Term/ReadLine/Gnu/Gnu.so
+ auto/Term/ReadLine/Gnu/XS/autosplit.ix
</if>
</from>
<from expand="perl">
- packdrake.pm
Config/IniFiles.pm
- MDV/Packdrakeng.pm
+ Exporter/Tiny.pm
+ List/MoreUtils.pm
+ List/MoreUtils/PP.pm
MDV/Distribconf.pm
- String/ShellQuote.pm
- ARCH-linux-thread-multi/Term/ReadKey.pm
- ARCH-linux-thread-multi/auto/Term/ReadKey/ReadKey.so
+ MDV/Packdrakeng.pm
MDV/Snapshot/Common.pm
MDV/Snapshot/Restore.pm
+ Parse/EDID.pm
+ String/ShellQuote.pm
+ Time/ZoneInfo.pm
+ XML/SAX/Exception.pm
urpm.pm
urpm/args.pm
urpm/cdrom.pm
@@ -403,25 +667,28 @@
urpm/signature.pm
urpm/util.pm
urpm/sys.pm
- <if set="DEBUG_INSTALL">
- ARCH-linux-thread-multi/Term/ReadLine/Gnu.pm
- ARCH-linux-thread-multi/Term/ReadLine/Gnu/XS.pm
- ARCH-linux-thread-multi/auto/Term/ReadLine/Gnu/Gnu.so
- ARCH-linux-thread-multi/auto/Term/ReadLine/Gnu/XS/autosplit.ix
- </if>
+ urpm/xml_info.pm
+ urpm/xml_info_pkg.pm
</from>
-<from expand="rpm" matching="m!^/usr/lib/perl5! and !/\.pod$/">
+<from expand="rpm" matching="m!^/usr/(share|LIB)/perl5! and !/\.pod$/">
perl-Curses
perl-Curses-UI
perl-File-FnMatch
- perl-Clone
- perl-Glib
- perl-Gtk2
- perl-Gtk2-WebKit
perl-Locale-gettext
+ <!-- for MDK::Cmmon: -->
+ perl-File-Sync
+ perl-Filesys-Df
perl-MDK-Common
+ <!-- Gtk stack: -->
+ perl-Cairo-GObject
+ perl-Glib
+ perl-Glib-Object-Introspection
+ perl-Gtk3
+ perl-Gtk3-WebKit2
perl-Pango
+ <!-- urpmi stack: -->
+ perl-Clone
perl-URPM
</from>
</filter>
@@ -439,28 +706,49 @@
<from dir="../../tools">
<to dir="/usr/bin" flatten="on">
serial_probe/serial_probe
- xhost+
+ </to>
+</from>
- <mode on-error="ignore">
- ARCH/busybox
- </mode>
+<from dir="../standalone">
+ <to dir="/usr/bin">
+ display_installer_help
+ display_release_notes.pl
</to>
</from>
<from dir="share">
<from expand="tar">
- fonts.tar.bz2
keymaps.tar.bz2
</from>
- <to dir="/usr/bin">
- display_release_notes.pl
- </to>
-
<to dir="/usr/share">
consolefonts symlinks
upgrade
</to>
+
+ <if set="DEBUG_INSTALL">
+ <to dir="/bin">
+ <!-- abusing '<from expand="command">' -->
+ <from expand="command">
+ echo 'gdb -q --args /usr/libexec/Xorg.wrap :0 -allowMouseOpenFail -xf86config /tmp/Xconf vt7 -dpi 75 -nolisten tcp'> share/gdb-x11;
+ chmod +x share/gdb-x11; echo gdb-x11
+ </from>
+ </to>
+ </if>
+
+ <!-- for gtk+3 that needs dbus to be initialized -->
+ <to dir="/etc">
+ <!-- abusing '<from expand="command">' -->
+ <from expand="command">
+ dbus-uuidgen > share/machine-id; echo machine-id
+ </from>
+ </to>
+
+ <!-- custom CSD CSS -->
+ <to dir="/usr/lib/libDrakX"> <!-- /.config/gtk-3.0 is RO -->
+ gtk.css <!-- symlinked in -->
+ </to>
+
</from>
<from dir="../pixmaps">
@@ -477,15 +765,13 @@
*.png
</from>
</to>
-</from>
-
-<from dir="share">
- <to dir="/etc/gtk-2.0/">
- gtkrc
+ <to dir="/usr/lib/libDrakX">
+ <from expand="glob">
+ *.css
+ </from>
</to>
</from>
-
<from dir="pixmaps">
<to dir="/usr/share">
<from expand="glob">
diff --git a/perl-install/install/share/po/.gitignore b/perl-install/install/share/po/.gitignore
new file mode 100644
index 000000000..cd1f2c943
--- /dev/null
+++ b/perl-install/install/share/po/.gitignore
@@ -0,0 +1 @@
+*.mo
diff --git a/perl-install/install/share/po/.tx/config b/perl-install/install/share/po/.tx/config
new file mode 100644
index 000000000..8aa47b976
--- /dev/null
+++ b/perl-install/install/share/po/.tx/config
@@ -0,0 +1,8 @@
+[main]
+host = https://www.transifex.com
+
+[o:MageiaLinux:p:mageia:r:drakx_install]
+file_filter = <lang>.po
+source_file = DrakX.pot
+source_lang = en
+type = PO
diff --git a/perl-install/install/share/po/DrakX.pot b/perl-install/install/share/po/DrakX.pot
index 76e97a7b9..aa1f9ea97 100644
--- a/perl-install/install/share/po/DrakX.pot
+++ b/perl-install/install/share/po/DrakX.pot
@@ -8,47 +8,73 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -57,113 +83,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr ""
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr ""
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr ""
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
+msgid "NFS setup"
msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
msgstr ""
-#: any.pm:187
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr ""
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
+msgid "Core Release"
msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
+msgid "\"%s\" contains non free software.\n"
msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
+#: any.pm:422
#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
msgstr ""
-#: any.pm:334
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr ""
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr ""
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -172,87 +232,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr ""
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr ""
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr ""
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr ""
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr ""
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr ""
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr ""
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr ""
@@ -274,22 +334,22 @@ msgstr ""
msgid "Bringing down the network"
msgstr ""
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr ""
@@ -319,347 +379,410 @@ msgstr ""
msgid "maybe"
msgstr ""
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr ""
-#: pkgs.pm:792
+#: pkgs.pm:405
#, c-format
-msgid "%d installation transactions failed"
+msgid "A fatal error occurred: %s."
msgstr ""
-#: pkgs.pm:793
+#: pkgs.pm:912 pkgs.pm:954
#, c-format
-msgid "Installation of packages failed:"
+msgid "Do not ask again"
msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: pkgs.pm:928
#, c-format
-msgid "Workstation"
+msgid "%d installation transactions failed"
msgstr ""
-#: share/meta-task/compssUsers.pl:15
+#: pkgs.pm:929
#, c-format
-msgid "Office Workstation"
+msgid "Installation of packages failed:"
msgstr ""
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:16
#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+msgid "Workstation"
msgstr ""
#: share/meta-task/compssUsers.pl:18
#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr ""
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr ""
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr ""
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr ""
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr ""
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr ""
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr ""
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr ""
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr ""
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr ""
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr ""
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr ""
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr ""
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr ""
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr ""
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr ""
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr ""
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr ""
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr ""
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr ""
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr ""
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr ""
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr ""
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr ""
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr ""
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr ""
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
+msgid "Plasma Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
+msgid "Xfce Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr ""
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr ""
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr ""
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
+msgid "Mageia Wizards"
msgstr ""
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr ""
@@ -671,7 +794,7 @@ msgid ""
"Continue at your own risk."
msgstr ""
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -687,7 +810,7 @@ msgstr ""
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
+msgid "%s Installation %s"
msgstr ""
#: steps_curses.pm:32
@@ -695,321 +818,325 @@ msgstr ""
msgid "<Tab>/<Alt-Tab> between elements"
msgstr ""
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr ""
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
+msgid "Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr ""
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr ""
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
+msgid "Unselect All"
msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
+msgid "Total size: %d / %d MB"
msgstr ""
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr ""
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr ""
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr ""
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr ""
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr ""
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr ""
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr ""
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr ""
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr ""
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr ""
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr ""
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr ""
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr ""
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr ""
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr ""
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr ""
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr ""
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr ""
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr ""
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr ""
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr ""
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr ""
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr ""
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr ""
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] ""
msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr ""
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr ""
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr ""
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr ""
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr ""
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr ""
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr ""
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr ""
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr ""
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr ""
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1018,32 +1145,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr ""
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr ""
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1052,285 +1164,300 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr ""
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr ""
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr ""
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
+msgid "Plasma"
msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr ""
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr ""
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr ""
-#: steps_interactive.pm:581
+#: steps_interactive.pm:583
#, c-format
-msgid "Install suggested packages"
+msgid "Install recommended packages"
msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr ""
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr ""
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr ""
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr ""
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr ""
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr ""
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr ""
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr ""
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr ""
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
#, c-format
msgid ""
-"You now have the opportunity to download updated packages. These packages\n"
-"have been updated after the distribution was released. They may\n"
-"contain security or bug fixes.\n"
-"\n"
-"To download these packages, you will need to have a working Internet \n"
+"To setup those media, you will need to have a working Internet \n"
"connection.\n"
"\n"
-"Do you want to install the updates?"
+"Do you want to setup the update media?"
msgstr ""
-#: steps_interactive.pm:843
+#: steps_interactive.pm:767
#, c-format
-msgid "%s on %s"
+msgid "That downloader could not be installed"
msgstr ""
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:767 steps_interactive.pm:784
#, c-format
-msgid "Hardware"
+msgid "Retry?"
msgstr ""
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:784
#, c-format
-msgid "Sound card"
+msgid "Failure when adding medium"
msgstr ""
-#: steps_interactive.pm:917
+#: steps_interactive.pm:792
#, c-format
-msgid "Do you have an ISA sound card?"
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:919
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
+msgid "%s on %s"
msgstr ""
-#: steps_interactive.pm:921
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
+msgid "Hardware"
msgstr ""
-#: steps_interactive.pm:929
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr ""
+
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr ""
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr ""
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr ""
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr ""
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr ""
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr ""
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr ""
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr ""
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1338,12 +1465,12 @@ msgid ""
"Do you really want to quit now?"
msgstr ""
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr ""
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr ""
@@ -1438,13 +1565,6 @@ msgid ""
"Users"
msgstr ""
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr ""
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
diff --git a/perl-install/install/share/po/Makefile b/perl-install/install/share/po/Makefile
index 4885b1840..0bbdaf96f 100644
--- a/perl-install/install/share/po/Makefile
+++ b/perl-install/install/share/po/Makefile
@@ -1,6 +1,7 @@
NAME = DrakX
LOCALEDIR = ${prefix}/share/locale
-PMSFILES = *.pm share/meta-task/compssUsers.pl* ../../advertising/*.pl
+METATASK = share/meta-task/compssUsers.pl
+PMSFILES = *.pm $(METATASK) ../../advertising/*.pl
PMSFILES_HERE = $(wildcard $(PMSFILES:%=../../%))
MAIN_PO_FILES = ../../../share/po/libDrakX.pot
@@ -16,14 +17,18 @@ default: $(MOFILES)
update_n_merge: $(NAME).pot merge
-merge:
+merge: $(NAME).pot
for n in $(POFILES); do \
echo "Merging $$n"; \
msgmerge $$n $(NAME).pot > "$$n"t ; \
mv -f "$$n"t $$n ; \
done
-$(NAME).pot: $(PMSFILES_HERE)
+../../$(METATASK):
+ mkdir -p ../../share/meta-task
+ svn cat svn://svn.mageia.org/svn/packages/cauldron/meta-task/current/SOURCES/compssUsers.pl > $@
+
+$(NAME).pot: $(PMSFILES_HERE) ../../$(METATASK)
cd ../.. ; perl_checker -q --generate-pot share/po/.$@ $(PMSFILES)
xgettext $(MAIN_PO_FILES:%=-x %) -o $@ .$@
rm -f .$@
@@ -35,4 +40,8 @@ install: $(MOFILES)
done
clean:
- @rm -rf *.mo $(POFILES:%=%t)
+ @rm -rf *.mo $(POFILES:%=%t) ../../$(METATASK)
+ @rmdir ../../share/meta-task
+
+check:
+ for i in *.po; do msgfmt -c $$i -o /dev/null; done
diff --git a/perl-install/install/share/po/af.po b/perl-install/install/share/po/af.po
index e548a82d2..30facadc5 100644
--- a/perl-install/install/share/po/af.po
+++ b/perl-install/install/share/po/af.po
@@ -1,58 +1,84 @@
-# translation of DrakX-af21-09.po to Afrikaans
-# translation of DrakX-af.po to Afrikaans
-# KTranslator Generated File
-# KTranslator Generated File
-# Copyright (C) 2000,2003, 2004 Free Software Foundation, Inc.
-# Schalk W. Cronjé <schalkc@ntaba.co.za>, 2000.
-# Dirk van der Walt <mandrake@webmail.co.za>, 2003.
-# Dirk van der Walt <dirkvanderwalt@webmail.co.za>, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Dirk van der Walt <dirkvanderwalt@webmail.co.za>, 2004
+# Dirk van der Walt <mandrake@webmail.co.za>, 2003
+# F Wolff <friedel@translate.org.za>, 2019
+# Schalk W. Cronjé <schalkc@ntaba.co.za>, 2000
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-af\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-04-21 17:33+0200\n"
-"Last-Translator: Dirk van der Walt <dirkvanderwalt@webmail.co.za>\n"
-"Language-Team: Afrikaans\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: F Wolff <friedel@translate.org.za>\n"
+"Language-Team: Afrikaans (http://www.transifex.com/MageiaLinux/mageia/"
+"language/af/)\n"
+"Language: af\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.0.2\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Sluit aan by ons!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Maak dit joune!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "U eie keuse!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Kantoorgereedskap"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Tuisvermaak"
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Vir kinders"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Vir familie!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Vir programmeerders!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Dankie!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Wees vry!"
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Beskik u oor nog?"
+msgstr "Is daar verdere aanvullende media?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -60,114 +86,163 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
+"Die volgende media is gevind en sal tydens installasie gebruik word: %s.\n"
+"\n"
+"\n"
+"Het u ’n aanvullende installasiemedium om op te stel?"
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CDROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Netwerk %s"
+msgstr "Netwerk (HTTP)"
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "Netwerk %s"
+msgstr "Netwerk (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
-msgstr ""
+msgstr "Netwerk (NFS)"
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
-msgstr ""
+msgid "NFS setup"
+msgstr "NFS-opstelling"
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr ""
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr "Tik die rekenaarnaam en gids van die NFS-media"
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "Kontak Mandriva Linux se webwerf vir 'n lys van spieëlwebplekke...."
+msgid "Hostname missing"
+msgstr "Rekenaarnaam ontbreek"
-#: any.pm:187
-#, fuzzy, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "Kontak Mandriva Linux se webwerf vir 'n lys van spieëlwebplekke...."
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr "Gids moet met “/” begin"
-#: any.pm:197
+#: any.pm:234
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Kies 'n spieël waar die pakkette verkry kan word"
+msgid "Hostname of the NFS mount ?"
+msgstr "Rekenaarnaam van die NFS-hegpunt?"
-#: any.pm:227
+#: any.pm:235
#, c-format
-msgid "NFS setup"
+msgid "Directory"
+msgstr "Gids"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr "Aanvullend"
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
+"Kan nie ’n pakketlyslêer op dié spieëlwerf kry nie. Maak seker die ligging "
+"is korrek."
-#: any.pm:228
+#: any.pm:325
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Core Release"
msgstr ""
-#: any.pm:232
+#: any.pm:327
#, c-format
-msgid "Hostname missing"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:233
+#: any.pm:329
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:237
+#: any.pm:367
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
+"Sommige hardeware op die rekenaar benodig sekere nievrye fermware vir die "
+"vry sagteware-aandrywers om te werk."
-#: any.pm:238
+#: any.pm:368
#, c-format
-msgid "Directory"
-msgstr "Gids"
+msgid "You should enable \"%s\""
+msgstr "U moet “%s” aktiveer"
-#: any.pm:260
+#: any.pm:419
#, c-format
-msgid "Supplementary"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "“%s” bevat die verskeie dele van die stelsel in die toepassings"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "“%s” bevat nievrye sagteware.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
+"Dit bevat ook fermware wat nodig is vir sekere toestelle om te werk (bv. "
+"sekere ATI/AMD-grafikakaarte, sommige netwerkkaarte, sommige RAID-"
+"kaarte, ...)"
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Kan nie %s op %s vind nie"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"“%s” bevat sagteware wat weens sagtewarepatente nie in alle lande versprei "
+"kan word nie."
-#: any.pm:334
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Dit bevat ook sagteware van “%s” wat herbou is met addisionele "
+"funksionaliteit."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Hier kan mens meer media aktiveer as mens wil."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Dié medium verskaf pakketbywerkings vir medium “%s”"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Ondersoek pakette wat reeds geïnstalleer is..."
+msgstr "Ondersoek pakkette wat reeds geïnstalleer is..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Soek vir pakkette om op te gradeer..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr ""
+msgstr "Verwyder pakkette voor opgradering..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -175,93 +250,92 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Die volgende pakkette moet verwyder word om u rekenaar op te gradeer: %s\n"
+"Die volgende pakkette gaan verwyder word om die rekenaar op te gradeer: %s\n"
"\n"
"\n"
-"Wil u werklik dat ons hulle verwyder?\n"
+"Wil u definitief dié pakkette verwyder?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Fout met die lees van lêer %s"
-#
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Die volgende pakkette geïnstalleer word:\n"
+msgstr "Die volgende skywe is hernoem:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
-msgstr ""
+msgstr "%s (voorheen %s genoem)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
-msgstr ""
+msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
-msgstr "Ftp"
+msgstr "FTP"
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "NFS"
-msgstr "PFS"
+msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Netwerk"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Kies asseblief"
+msgstr "Kies asb. ’n medium"
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Lêer bestaan alreeds. Moet dit gebruik word?"
+msgstr "Lêer bestaan reeds. Oorskryf?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Toegang verbied"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr ""
+msgstr "Slegte NFS-naam"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr ""
+msgstr "Slegte media %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Kan nie skermfoto's neem voor partisie skep nie"
+msgid "Cannot make screenshots before partitioning"
+msgstr "Kan nie skermkiekies neem voor partisies geskep is nie"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "Skermfoto's sal na die installasie beskikbaar wees in %s"
+msgstr "Skermkiekies sal na die installasie beskikbaar wees in %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Besig met installasie"
+msgstr "Installasie"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
-msgstr "Konfigurasie"
+msgstr "Opstelling"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "U moet ook %s formatteer"
@@ -272,8 +346,8 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Sekere hardeware op u rekenaar benodig geslote drywers.\n"
-"U kan inligting hieroorvind by %s"
+"Sekere hardeware op u rekenaar benodig “geslote” aandrywers.\n"
+"U kan inligting hieroor vind by: %s"
#: interactive.pm:22
#, c-format
@@ -285,25 +359,25 @@ msgstr "Netwerk op pad op"
msgid "Bringing down the network"
msgstr "Netwerk op pad af"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Net ’n oomblik. Lêer word afgehaal"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "kon nie medium byvoeg nie"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr ""
+msgstr "Kopieer tans pakkette na die skyf vir latere gebruik"
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Bespeuring aan die gebeur"
+msgstr "Kopiëring onderweg"
#: pkgs.pm:32
#, c-format
@@ -328,281 +402,299 @@ msgstr "oulik"
#: pkgs.pm:36
#, c-format
msgid "maybe"
-msgstr "moontlik"
+msgstr "miskien"
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Kry tans pakketinligting vanaf XML-metadata..."
-#: pkgs.pm:225
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Geen XML-inligting vir medium “%s”, slegs gedeeltelike resultate vir pakket "
+"%s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Geen beskrywing"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
+"Sommige pakkette wat deur %s aangevra is, kan nie geïnstalleer word nie:\n"
+"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "'n Fout het voorgekom"
+msgstr "'n Fout het voorgekom:"
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "’n Ernstige fout het voorgekom: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Moenie weer vra nie"
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "onsuksesvolle installasie"
+msgstr "%d installasietransaksies het misluk"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Installeer pakket %s"
+msgstr "Installasie van pakkette het misluk:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Werkstasie"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Kantoorwerkstasie"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Kantoorprogramme: Woordverwerkers(OpenOffice.org Writer, Kword), spreistate "
-"(OpenOffice.org Calc, Kspread), PDF-sigprogramme, ens."
+"Kantoorprogramme: woordverwerkers( LibreOffice Writer, Kword), sigblaaie "
+"(LibreOffice Calc, Kspread), PDF-kykers, ens."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Kantoorprogramme: Woordverwerkers( kword, abiword), spreistate (kspread, "
-"gnumeric), PDF-sigprogramme, ens."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Speletjiesrekenaar"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "Vermaak: Arkade, Bordspel, Strategie ens."
+msgstr "Vermaak: arkade, bordspel, strategie ens."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimediastasie"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Klank- en videospelers/redigeerders"
+msgstr "Klank- en videospelers/-redigeerders"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internetstasie"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Stel hulpprogramme om e-pos en netnuus te lees en te stuur (mutt, tin) en om "
-"ook die web deur te blaai."
+"Hulpprogramme om e-pos en netnuus te lees en te stuur (mutt, tin) en ook om "
+"die web deur te blaai"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Netwerkrekenaar (kliënt)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Kliëntprogramme vir 'n verkeidenheid protokolle insluitend SSH"
+msgstr "Kliëntprogramme vir 'n verskeidenheid protokolle insluitend SSH"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Nutsprogramme wat u rekenaarkonfigurasie vergemaklik"
+msgstr "Nutsprogramme wat die rekenaaropstelling vergemaklik"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "Konsole Hulpprogramme"
+msgstr "Konsole-hulpprogramme"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr ""
-"Redigeerders. teksverwerkers, instruksiedoppe, lêer-nutsprogramme, terminaal-"
-"programme"
+msgstr "Redigeerders, instruksiedoppe, lêernutsprogramme, terminaal-programme"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Ontwikkeling"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "C en C++ ontwikkelingsprogrammateke, programme en insluitlêers"
+msgstr "C en C++ ontwikkelingsbiblioteke, programme en insluitlêers"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentasie"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Boeke en HOWTO's oor Linux en Vrye Sagteware"
+msgstr "Boeke en HOWTO's oor Linux en Vry Sagteware"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Linux Standard Base. Derdeparty ondersteuning van programme"
+msgstr "Linux Standard Base. Ondersteuning vir derdepartyprogramme"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
-msgstr "Web-bediener"
+msgstr "Webbediener"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "Groep:"
+msgstr ""
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab-bediener"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
-msgstr "Vuurmuur/Netwerkroteerder"
+msgstr "Brandmuur/Netwerkroteerder"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
-msgstr "Internetpoort"
+msgstr "Internetdeurgang"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/Lêer/_Nuut"
+msgstr "Pos/Nuus"
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix e-pos-bediener"
+msgstr "Postfix-posbediener, Inn-nuusbediener"
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "Herstel vanaf CD"
+msgstr "Gidsbediener"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP-bediener"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
-msgstr ""
+msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Domeinnaam en Netwerk-informasie-bediener (DNS/NIS)"
+msgstr "Domeinnaam- en netwerk-inligtingbediener (DNS/NIS)"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Drukkerbediener"
+msgstr "Bediener vir deel van lêers en drukkers"
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Samba-bediener"
+msgstr "NFS-bediener, Samba-bediener"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Databasis"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL of MySQL databasisbediener"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL- en MariaDB-databasisbediener"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
-msgstr "e-Pos"
+msgstr "Pos"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Postfix e-pos-bediener"
+msgstr "Postfix e-posbediener"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL of MySQL databasisbediener"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL- of MariaDB-databasisbediener"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Netwerkrekenaar-bediener"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "NFS, SMB, Instaan- , SSH (Bedieners)"
+msgstr "NFS-bediiener, SMB-bediener, Instaanbediener, SSH-bediener"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr "Grafiese Omgewing"
+msgstr "Grafiese omgewing"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE Werkstasie"
+msgid "Plasma Workstation"
+msgstr "Plasma-werkstasie"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -611,83 +703,128 @@ msgstr ""
"Die K-werkskermomgewing (KDE), die basiese grafiese omgewing met 'n "
"versameling bygaande hulpprogramme"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME-werkstasie"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-"'n Grafiese omgewing met gebruikersvriendelike stel applikasies en "
-"werkskerm-hulpprogramme"
+"’n Grafiese omgewing met gebruikersvriendelike toepassings en werkskerm-"
+"hulpprogramme"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "'n Werkstasie"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Xfce-werkstasie"
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"'n Grafiese omgewing met gebruikersvriendelike stel applikasies en "
+"’n Ligter grafiese omgewing met gebruikersvriendelike toepassings en "
"werkskerm-hulpprogramme"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE-werkstasie"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon-werkstasie"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "’n Grafiese omgewing gebaseer op GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt-werkskerm"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment-werkskerm"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "'n Liggewig, vinnige grafiese omgewing met getroue volgelinge"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE-werkskerm"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "’n Liggewig, vinnige grafiese omgewing"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "Ander Grafiese Werkskerms"
+msgstr "Ander grafiese werkskerms"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm, ens."
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, ens."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Nutsprogramme"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH-bediener"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Webkamera"
+msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Terminal Server Konfigurasie"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Monitor van Netwerk"
+msgstr "Netwerknutsprogramme/monitering"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "<b>Mandriva Store</b>"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Probleme met die konfigurasie van drukker \" %s\"!"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -695,10 +832,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"'n Fout het plaasgevind en ek weet nie hoe om dit veilig te hanteer\n"
+"’n Fout het plaasgevind en ek weet nie hoe om dit veilig te hanteer\n"
"nie. Gaan op u eie risiko voort."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -708,347 +845,356 @@ msgid ""
msgstr ""
"Sekere belangrike pakkette het nie korrek geïnstalleer nie.\n"
"Óf die CDROM-aandrywer óf die CD is foutief.\n"
-"Toets die CD op 'n werkende Linux installasie met \"rpm -qpl media/main/*.rpm"
+"Toets die CD op 'n werkende Linux-installasie met \"rpm -qpl media/main/*.rpm"
"\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Gaan stap '%s' binne\n"
+msgstr "Gaan stap “%s” binne\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux Installasie %s"
+msgid "%s Installation %s"
+msgstr "%s-installasie %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> tussen elemente"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr ""
+msgstr "Xorg-bediener neem lank om te begin. Wag asseblief..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"U stelsel het min hulpbronne beskikbaar. U mag dalk probleme\n"
-"ondervind met die installering\n"
-"van Mandriva Linux. In so 'n geval probeer eerder die teksinstallasie.\n"
-"Daarvoor moet u\n"
-"'F1' druk wanneer u vanaf die CDROM herlaai en dan 'text' op die\n"
-"instruksielyn intik."
+"ondervind met die installering van %s. In so 'n geval probeer\n"
+"eerder die teksinstallasie. Daarvoor moet u “F1” druk wanneer\n"
+"u vanaf die CDROM herlaai en dan “text” op die instruksielyn\n"
+"intik."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr ""
+msgid "Media Selection"
+msgstr "Mediaseleksie"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr ""
+msgid "Install %s Plasma Desktop"
+msgstr "Installeer %s plasmawerkskerm"
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Installeer %s GNOME-werkskerm"
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Minimale installasie"
+msgstr "Eie installasie"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "'n Werkstasie"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Plasma-werkskerm"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "'n Werkstasie"
+msgstr "GNOME-werkskerm"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "'n Werkstasie"
+msgstr "Eie werkskerm"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Hier is ’n voorskou van die “%s”-werkskerm."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Klik op prente vir ’n groter voorskou"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "Kies Pakketgroepe"
+msgstr "Kies pakketgroepe"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Individuele pakket-seleksie"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Totale grootte: %d / %d MB"
+msgid "Unselect All"
+msgstr "Maak seleksie skoon"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Foutiewe pakket"
+msgid "Total size: %d / %d MB"
+msgstr "Totale grootte: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Weergawe: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Grootte: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Belangrikheid: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "U kan nie hierdie pakket selekteer/deselekteer nie"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "deur %s wat soek is"
+msgstr "weens %s wat soek is"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "deur problematiese %s"
+msgstr "weens onvoldoende %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "probeer promosie van %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "om %s te kan behou"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"U kan nie hierdie pakket selekteer nie, omdat daar nie meer spasie "
"beskikbaar is nie"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
-msgstr "Ons gaan die volgende pakette installeer"
+msgstr "Die volgende pakkette gaan geïnstalleer word"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Die volgende pakkette gaan verwyder word"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Hierdie is 'n verpligte pakket. Dit kan nie uitgehaal word nie."
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Hierdie is ’n verpligte pakket. Dit kan nie uitgehaal word nie."
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "U kan nie heirdie pakket verwyder nie. Dis alreeds geïnstalleer"
+msgid "You cannot unselect this package. It is already installed"
+msgstr "U kan nie hierdie pakket verwyder nie. Dit is reeds geïnstalleer."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "U kan nie hierdie pakket deselekteer nie. Dit moet opgradeer word."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "Wys outogeselekteerde pakkette."
+msgstr "Wys outogeselekteerde pakkette"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installasie"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Pakketkeuse"
+msgstr "Laai/stoor seleksie"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Pakketseleksie word opgedateer"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimale installasie"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Sagteware Beheer"
+msgstr "Sagtewarebestuur"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Kies die pakkette wat u wil installeer"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Besig met installasie"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
-msgstr "Geen Detail"
+msgstr "Geen detail"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Tyd oor "
+msgstr "Tyd oor:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Skatting"
+msgstr "(skat tans...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pakket"
msgstr[1] "%d pakkette"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Opsomming"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
-msgstr "Konfigureer"
+msgstr "Opstelling"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "nie gekonfigureer nie"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Kies Pakketgroepe"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
+"Die volgende installasiemedia is gevind.\n"
+"Indien u sommige wil oorslaan, ontmerk hulle nou."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
+"U het die keuse om die inhoud van die CD’s na die hardeskyf te kopieer voor "
+"installasie.\n"
+"Installasie sal dan van die hardeskyf af voortgaan en die pakkette sal "
+"beskikbaar bly wanneer die stelsel volledig geïnstalleer is."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr ""
+msgstr "Kopieer hele CD’s"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "'n Fout het voorgekom"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Kies asseblief u sleutelborduitleg"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Hier is die volle lys van beskikbare lande"
+msgstr "Hier is die volledige lys beskikbare sleutelborde:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Installeer/Opgradeer"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Is hierdie 'n installasie of opgradering?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installasie"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
-msgstr "Opgradeer %s"
+msgstr "Gradeer %s op"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
-msgstr "Enkripsie-sleutel vir %s"
+msgstr "Enkripsiesleutel vir %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Kanselleer installasie. Herlaai die stelsel."
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Besig met installasie"
+msgstr "Nuwe installasie"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Gradeer vorige installasie op (nie aanbeveel nie)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1057,38 +1203,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "IDE word opgestel"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Geen beskikbare 1MB herlaaipartisie nie! Installasie sal voortgaan, maar u "
-"sal herlaaipartisie met DiskDrake moet skep indien u die stelsel wil "
-"herlaai."
-
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Geen beskikbare 1MB herlaaipartisie nie! Installasie sal voortgaan, maar u "
-"sal herlaaipartisie met DiskDrake moet skep indien u die stelsel wil "
-"herlaai."
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1102,162 +1227,204 @@ msgstr ""
"nie\n"
"hieroor beskik nie, druk Kanselleer om installasies vanaf dié CDROM te vermy."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Soek vir beskikbare pakkette"
+msgstr "Soek tans vir beskikbare pakkette..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
+"Die stelsel het nie genoeg plek oor vir installasie of opgradering nie (%dMB "
+"> %dMB)"
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Kies asb. die laai of stoor pakketkeuse op die floppie.\n"
-"Die formaat is dieselfde as outoinstallasie-genereerde floppies."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "Las"
+msgstr "Laai"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Stoor"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Laai lêer"
+msgstr "Slegte lêer"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Kies Pakketgroepe"
+msgstr "Werkskermkeuse"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
+msgstr "Kies gerus die werkskermprofiel vir u werkstasie."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
-msgstr "Geselekteerde grootte is groter as beskikbare spasie."
+msgstr "Geselekteerde grootte is groter as beskikbare spasie"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tipe installasie"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-"U het glad nie 'n groep pakkette gekies nie.\n"
+"U het geen groep pakkette gekies nie.\n"
"Kies asseblief die tipe minimale installasie:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Met X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Installeer pakket %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Installeer aanbevole pakkette"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Met basiese dokumentasie (word aanbeveel!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "Absolute minimale installasie (geen urpmi!)"
+msgstr "Absolute minimale installasie (veral geen urpmi)"
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Berei tans opgradering voor..."
-#: steps_interactive.pm:638
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
-msgstr "Berei installasie voor"
+msgstr "Berei tans installasie voor"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
-msgstr "Installeer pakket %s"
+msgstr "Installeer tans pakket %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "Daar was 'n fout met pakkette:"
+msgstr "Daar was 'n fout met volgorde van pakkette:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Gaan steeds voort?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr ""
+msgstr "Probeer weer"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr ""
+msgstr "Slaan dié pakket oor"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr ""
+msgstr "Slaan alle pakkette van medium “%s” oor"
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Stoor pakketseleksie"
+msgstr "Gaan terug na media- en pakketseleksie"
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Daar was 'n fout met die installasie van die pakkette:"
+msgstr "Daar was ’n fout met installering van pakket %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Post-installasiekonfigurasie"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
+msgstr "Bywerkings"
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Daar is nou geleentheid om media aanlyn op te stel."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Hiermee kan sekuriteitsbywerkings geïnstalleer word."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
msgstr ""
+"Om sulke media op te stel is ’n werkende internetverbinding nodig.\n"
+"\n"
+"Wil u die bywerkingsmedia opstel?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Die volgende pakkette gaan geïnstalleer word"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Probeer weer?"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Fout met byvoeging van medium"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1269,152 +1436,125 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"U het nou 'n geleentheid om opgedateerde pakkette af te laai.Hierdie "
-"pakkette is opgedateer na die distribusie vrygestel is.\n"
-"Hulle mag moontlike sekuriteits-probleme en goggas regstel.\n"
+"U het nou ’n geleentheid om bygewerkte pakkette af te laai. Hierdie "
+"pakkette\n"
+"is opgedateer na die distribusie vrygestel is. Hulle kan "
+"sekuriteitsprobleme\n"
+"en goggas regstel.\n"
"\n"
-"Sou u hulle wil aflaai, benodig u 'n werkende Internetkonneksie.\n"
+"Om hulle af te n laai, is ’n werkende Internetkonneksie nodig.\n"
"\n"
-"Wil u dit nou installeer?"
+"Wil u die bywerkings nou installeer?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s op %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardeware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Klankkaart"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Beskik u oor 'n ISA klankkaart?"
-
-#: steps_interactive.pm:919
-#, fuzzy, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr "Loop \"sndconfig\" na die installasie om u klankkaart te konfigureer"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Geen klankkaart opgespoor nie. Probeer \"harddrake\" na die installasie"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
-msgstr "Grafiese-koppelvlak"
+msgstr "Grafiese koppelvlak"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
-msgstr "Netwerk & Internet"
+msgstr "Netwerk en internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Instaan bedieners"
+msgstr "Instaanbedieners"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "gekonfigureer"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Sekuriteitsvlak"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
-msgstr "Vuurmuur"
+msgstr "Brandmuur"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
-msgstr "ge-aktiveer"
+msgstr "geaktiveer"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
-msgstr "ge-deaktiveer"
+msgstr "gedeaktiveer"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "U het nog nie 'X' opgestel nie. Verlang u dit regtig?"
+msgstr "U het nog nie X opgestel nie. Verlang u dit regtig?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Herlaaistelsel word voorberei..."
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
+msgstr "Net ’n oomblik. Dit kan ’n rukkie neem..."
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Dit wil voorkom of u 'n 'OldWorld' of Onbekende\n"
-"rekenaar het, die yaboot herlaaistelsel sal nie hier werk nie.\n"
-"Ons sal voortgaan met die installasie, maar u sal\n"
-"BootX of 'n ander manier moet gedruik om u rekenaar te selflaai"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"Met hierdie sekuriteitsvlak word toegang na lêers op die Windows partisie "
-"vernou na slegs die administrateur"
+"Met hierdie sekuriteitsvlak word toegang na lêers op die Windows-partisie "
+"beperk tot die administrateur."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Sit 'n leë floppie in aandrywer %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Outoinstallasieskyf word geskep."
+msgstr "Outoinstallasieskyf word tans geskep..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-"Bepaalde stappe is nie afgehandel nie.\n"
+"Sekere stappe is nie afgehandel nie.\n"
"\n"
-"Wil u werklik nou eindig?"
+"Wil u definitief nou afsluit?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Geluk"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Herlaai"
@@ -1430,7 +1570,7 @@ msgstr "Taal"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Lokalisering"
#: steps_list.pm:17
#, c-format
@@ -1451,14 +1591,14 @@ msgstr "Muis"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Hardeskyf-speuring."
+msgstr "Hardeskyfbespeuring"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr ""
+msgstr "Installasieklas"
#: steps_list.pm:23
#, c-format
@@ -1479,28 +1619,28 @@ msgstr "Sekuriteit"
msgid ""
"_: Keep these entry short\n"
"Partitioning"
-msgstr "Partisionering"
+msgstr "Partisies"
#: steps_list.pm:27 steps_list.pm:28
#, c-format
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr ""
+msgstr "Formatering"
#: steps_list.pm:29
#, c-format
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr ""
+msgstr "Pakketseleksie"
#: steps_list.pm:31
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "Besig met installasie"
+msgstr "Installlasie"
#: steps_list.pm:34
#, c-format
@@ -1509,13 +1649,6 @@ msgid ""
"Users"
msgstr "Gebruikers"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Netwerk"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1549,145 +1682,32 @@ msgstr "Dienste"
msgid ""
"_: Keep these entry short\n"
"Updates"
-msgstr ""
+msgstr "Bywerkings"
#: steps_list.pm:48
#, c-format
msgid ""
"_: Keep these entry short\n"
"Exit"
-msgstr "Verlaat"
-
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Stuur lêers..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "U het die volgende bediener(s) gekies: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Hierdie bedieners is aktief by verstek. Sover bekend, het hulle nie "
-#~ "enige\n"
-#~ "sekuriteits-gevare nie. Daar mag wel mettertyd nuwe gevare gevind word.\n"
-#~ "In so geval, moet u tot verseker dat u hulle so gou moontlik updateer.\n"
-#~ "\n"
-#~ "\n"
-#~ "Verlang u nog steeds hierdie dienste?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "'n Werkstasie"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Spieël word gekontak vir die lys van pakkette..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Kon nie die spieëlwebplek %s kontak nie"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Skep outoinstallasieskyf"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Die outomatiese installasie kan ten volle geoutomatiseer\n"
-#~ "word, in daardie geval kan dit die hardeskyf oorskryf!!!\n"
-#~ "(dit is vir die installasie op 'n ander rekenaar).\n"
-#~ "\n"
-#~ "U mag verkies om hierdie installasie elders te herhaal.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Herspeel"
+msgstr "Sluit af"
-#~ msgid "Automated"
-#~ msgstr "Outomaties"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL van die spieëlwerf?"
-#~ msgid "Save packages selection"
-#~ msgstr "Stoor pakketseleksie"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL moet met ftp:// of http:// begin"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Wil u aboot gebruik?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Kontak tans die %s-webwerf vir 'n lys van spieëlwerwe..."
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Die 'aboot' installasie het gefaal. Wil u 'n installasie afwurg al\n"
-#~ "word die eerste partisie vernietig?"
-
-#~ msgid "All"
-#~ msgstr "Alles"
-
-#~ msgid "TV card"
-#~ msgstr "TV-kaart"
-
-#~ msgid "Boot"
-#~ msgstr "Selflaai"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Magtiging"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d pakket, %d MB)"
-#~ msgstr[1] "(%d pakkette, %d MB)"
-
-#~ msgid "%d packages"
-#~ msgstr "%d pakkette"
+#~ "Kon nie die %s-webwerf kontak om die lys beskikbare spieëlwerwe te kry nie"
-#~ msgid "Language"
-#~ msgstr "Taal"
-
-#~ msgid "License"
-#~ msgstr "Lisensie"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Kies installasieklas"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Skatting"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Kies pakkette om te installeer"
-
-#~ msgid "Users"
-#~ msgstr "Gebruikers"
-
-#~ msgid "Networking"
-#~ msgstr "Netwerk"
-
-#~ msgid "Configure X"
-#~ msgstr "Stel X op"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Kan nie die toegang tot die 'kernel'-modules vir hierdie 'kernel' kry "
-#~ "nie. ( lêer %s is soek). Dit beteken normaalweg dat u selflaaiskyf "
-#~ "verskil van die Installasie-media sin ( skep assebleif 'n nuwer disket)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Kies 'n spieëlwerf waar die pakkette verkry kan word"
diff --git a/perl-install/install/share/po/am.po b/perl-install/install/share/po/am.po
index faba94eeb..cc2da325f 100644
--- a/perl-install/install/share/po/am.po
+++ b/perl-install/install/share/po/am.po
@@ -1,51 +1,81 @@
-# Latest versions of po files are at http://www.mandrivalinux.com/l10n/am.php3
-# Copyright (C) 2004 Mandriva SA
-# Alemayehu Gemeda <alemayehu@gmx.at>, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Alemayehu Gemeda <alemayehu@gmx.at>, 2004
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2004-06-01 03:36+0100\n"
-"Last-Translator: Alemayehu <alemayehu@gmx.at>\n"
-"Language-Team: Amharic <am-translate@geez.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Amharic (http://www.transifex.com/MageiaLinux/mageia/language/"
+"am/)\n"
+"Language: am\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "ሌላ አለ?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -54,113 +84,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "ሲዲ-ሮም"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "መረብ"
+msgstr ""
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "መረብ"
+msgstr ""
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
+msgid "NFS setup"
msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "ዶሴ"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
msgstr ""
-#: any.pm:187
+#: any.pm:300
#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
+msgid "Core Release"
msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "ዶሴ"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "መረጃ በ%s መጠቀሚያ ፕሮግራም ላይ"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
-#: any.pm:334
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr ""
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr ""
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -169,87 +233,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%sን በማንበብ ላይ ስህተት ተፈጥሯል"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "የሚከተሉት ጥቅሎች ሊወገዱ ነው"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "መረብ"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "እባክዎ ያለ ሰነድን ይምረጡ"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "ፋይሉ በፊትም ነበር። ልጠቀምበት?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "ፈቃድ አልተሰጠም"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "ፋይል ተጭኗል %s"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr ""
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "በመትከል ላይ"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "ስየማ"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr ""
@@ -271,25 +335,25 @@ msgstr "መረቡን በማቀራረብ ላይ"
msgid "Bringing down the network"
msgstr "መረቡን በማለያየት ላይ"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "የተሻሻለ ዊድጌት ፍጠር"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -316,350 +380,413 @@ msgstr "ጥሩ"
msgid "maybe"
msgstr "ምናልባት"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "ስህተት ተፈጥሯል"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
-msgid "%d installation transactions failed"
-msgstr "%s አልተገኘም"
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
-msgid "Installation of packages failed:"
-msgstr "የ%s ጥቅል በመትከል ላይ"
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
-#, fuzzy, c-format
-msgid "Workstation"
-msgstr "የቅርብ መረብ ምርጫ"
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
-#: share/meta-task/compssUsers.pl:15
+#: pkgs.pm:929
#, c-format
-msgid "Office Workstation"
+msgid "Installation of packages failed:"
msgstr ""
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:16
#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+msgid "Workstation"
msgstr ""
#: share/meta-task/compssUsers.pl:18
#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr ""
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:27
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:30
+#, c-format
msgid "Multimedia station"
-msgstr "የመገናኛ ብዙሃን"
+msgstr ""
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr ""
-#: share/meta-task/compssUsers.pl:33
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:36
+#, c-format
msgid "Internet station"
-msgstr "ፈጣን መልእክት"
+msgstr ""
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-#: share/meta-task/compssUsers.pl:39
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:42
+#, c-format
msgid "Network Computer (client)"
-msgstr "ኮምፒውተር ሳይንስ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr ""
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr ""
-#: share/meta-task/compssUsers.pl:49
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:53
+#, c-format
msgid "Console Tools"
-msgstr "የፋይል መሳሪያዎች"
+msgstr ""
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr ""
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "እድገት"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "ማስረጃ"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr ""
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr ""
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "የመረብ ሰርቨር"
-#: share/meta-task/compssUsers.pl:74
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:80
+#, c-format
msgid "Apache"
-msgstr "መተላለፊያ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "የውይይት መድረክ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:78
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:85
+#, c-format
msgid "Kolab Server"
-msgstr "የሳምባ ተጠሪ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr ""
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr ""
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "አዲስ ፋይል።"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "የመልዕክት ተጠሪ ሚስጢራዊ ቃል ያስፈልጋል"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "በዝርዝር ውስጥ ዶሴ ጨምር"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "የFTP ተጠሪ"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "የዘርፍ ስም ሰርቨር"
+msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "የማተሚያ ሰርቨር"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "የሳምባ ሰርቨር"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "ዳታቤዝ"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr ""
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr ""
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "ፖስታ"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr ""
-#: share/meta-task/compssUsers.pl:126
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:142
+#, c-format
msgid "Network Computer server"
-msgstr "ኮምፒውተር ሳይንስ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr ""
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
+msgid "Plasma Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "ሰሌዳ"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr ""
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:174
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:218
+#, c-format
msgid "Utilities"
-msgstr "ፊሊፒንስ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
msgid "SSH Server"
-msgstr "ስለተጠሪ መረጃ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "ዌብ-ካም"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "ቀዳሚ ተጠሪ ይጠቀም"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Name=መረብ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "<b>የMandriva Linux ባለሞያ</b>"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "የባሕር-መዝገብ እሴት '%s' ወደ '%s' እንደገና መሰየም አልተቻለም።"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -668,7 +795,7 @@ msgid ""
"Continue at your own risk."
msgstr ""
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -684,329 +811,333 @@ msgstr ""
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "የMandriva Linux ተከላ %s"
+msgid "%s Installation %s"
+msgstr "የ%s ተከላ %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr ""
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "አነስተኛ ተከላ"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "ሰሌዳ"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "ሰሌዳ"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "ሰሌዳ"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "የጥቅል ቡድን ምርጫ"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "የነጠላ ጥቅል ምርጫ"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "አጠቃላይ መጠን: %d / %d MB"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "ትክክል ያልሆነ ጥቅል"
+msgid "Total size: %d / %d MB"
+msgstr "አጠቃላይ መጠን: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "ዝርያ: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "መጠን: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "አስፈላጊነት: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "ይህን ጥቅል መምረጥ/አለመምረጥ አይችሉም"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s ባለመገኘቱ ምክንያት"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "%s አጥጋቢ ባለመሆኑ ምክንያት"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%sን ለማስተዋወቅ በመሞከር ላይ"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%sን ለማቆየት"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "የሚከተሉት ጥቅሎች ሊተከሉ ነው"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "የሚከተሉት ጥቅሎች ሊወገዱ ነው"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr ""
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "ይህንን ጥቅል መምረጥ አይችሉም። ቀደም ብሎ ተተክሏል።"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr ""
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr ""
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "ትከል"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "የጥቅል ምርጫ"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "የጥቅል ምርጫ በማሻሻል ላይ"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "አነስተኛ ተከላ"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr ""
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "ለመትከል የሚፈልጉትን ጥቅል ይምረጡ"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "በመትከል ላይ"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "ያለ ዝርዝሮች"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr " ይቀራል"
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "በግምት"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d ጥቅሎች"
-msgstr[1] "%d ጥቅሎች"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "ማጠቃለያ"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "ለውጥ"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "አልተስተካከለም"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "የጥቅል ቡድን ምርጫ"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "ስህተት ተፈጥሯል"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr ""
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "ትከል/አሳድግ"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr ""
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "ትከል"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr ""
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "የ%s ሚስጢራዊ መገልበጫ ቁልፍ"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "በመትከል ላይ"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1015,32 +1146,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDEን በማስተካከል ላይ"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1049,158 +1165,197 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr ""
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "ጫን"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "አስቀምጥ"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "1 ፋይል"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "ኖም"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "የጥቅል ቡድን ምርጫ"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "የተከላው አይነት"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "በX"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "የ%s ጥቅል በመትከል ላይ"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr ""
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr ""
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "ተከላ በማዘጋጀት ላይ"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "የ%s ጥቅል በመትከል ላይ"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr ""
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "ለማንኛውም ቀጥል?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "የጥቅሎችን ምርጫ አስቀምጥ"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "የ%s ጥቅል በመትከል ላይ"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Post-install configuration"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "አሻሻዎች"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "የሚከተሉት ጥቅሎች ሊተከሉ ነው"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1213,121 +1368,97 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s %s ላይ ነው"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "ሀርድዌር"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "የድምፅ ካርድ"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "የISA ድምጽ ካርድ አለዎት?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "ንድፋዊ እይታ"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "መረብ እና ኢንተርኔት"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "ወኪሎች"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "ተስተካክሏል"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "የደህንነት ደረጃ"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "የእሳት ግድግዳ"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "መስራት ጀምሯል"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "መስራት አቁሟል"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "አስጀማሪ በማዘጋጀት ላይ..."
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr ""
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr ""
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1335,12 +1466,12 @@ msgid ""
"Do you really want to quit now?"
msgstr ""
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "እንኳን ደስ ያለዎ!"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "እንደገና ጀምር"
@@ -1435,13 +1566,6 @@ msgid ""
"Users"
msgstr "ተጠቃሚዎች"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "መረብ"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1483,66 +1607,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "ውጣ"
-
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "የቅርብ ጊዜ ፋይሎች"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "ሰሌዳ"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "ከአንጸባራቂ %s ጋር መገናኘት አልተቻለም"
-
-#~ msgid "Save packages selection"
-#~ msgstr "የጥቅሎችን ምርጫ አስቀምጥ"
-
-#, fuzzy
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "ስራ-እቅዱን መሠረዝ ይፈልጋሉ?"
-
-#~ msgid "All"
-#~ msgstr "ሁሉንም"
-
-#~ msgid "TV card"
-#~ msgstr "የቲቪ ካርድ"
-
-#~ msgid "Boot"
-#~ msgstr "ጀምር"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d ጥቅሎች"
-#~ msgstr[1] "%d ጥቅሎች"
-
-#~ msgid "%d packages"
-#~ msgstr "%d ጥቅሎች"
-
-#~ msgid "Language"
-#~ msgstr "ቋንቋ"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "በመትከል ላይ"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "በግምት"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "%d ጥቅሎች"
-
-#~ msgid "Users"
-#~ msgstr "ተጠቃሚዎች"
-
-#~ msgid "Networking"
-#~ msgstr "መረብ"
-
-#~ msgid "Configure X"
-#~ msgstr "Xን ሰይም"
diff --git a/perl-install/install/share/po/ar.po b/perl-install/install/share/po/ar.po
index 5b65e6267..d962bce2c 100644
--- a/perl-install/install/share/po/ar.po
+++ b/perl-install/install/share/po/ar.po
@@ -1,59 +1,81 @@
-# translation of DrakX.po to
-# Amr Fathy <amr10@menanet.net>, 2001.
-# Mohammed Gamal <f2c2001@yahoo.com>, 2002.
-# Youcef Rabah Rahal <rahal@arabeyes.org>, 2004.
-# Ossama M. Khayat <okhayat@yahoo.com>, 2004, 2005.
-# Munzir Taha <munzir@kacst.edu.sa>, 2004.
-# Abdulaziz Al-Arfaj <alarfaj@arabeyes.org>, 2005.
-# Yaser Ammar <linux.uae@gawab.com>, 2009.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-03-25 19:22+0400\n"
-"Last-Translator: Yaser Ammar <linux.uae@gawab.com>\n"
-"Language-Team: Arabic <doc@arabeyes.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Arabic (http://www.transifex.com/MageiaLinux/mageia/language/"
+"ar/)\n"
+"Language: ar\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "سطح مكتبك على وحدة USB"
+msgid "Join Us!"
+msgstr "انضم إلينا!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "توزيعة لينكس ماندريفا مفتوحة المصدر 100%%"
+msgid "Make it yours!"
+msgstr "لتكن ملكك!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "اكتشف لينكس بسهولة مع ماندريفا ون"
+msgid "Your choice!"
+msgstr "اختيارك!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "سطح مكتب لينكس ماندريفا كامل مع الدعم"
+msgid "Office tools"
+msgstr "أدوات مكتبية"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "ماندريفا: توزيعات تلبي احتياجات الجميع"
+msgid "Home entertainment"
+msgstr "الترفيه المنزلي"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "للأطفال"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "للعائلة!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "للمطورين!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "شكرا لك!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "كن حراً!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "هل لديك وسائط إضافيّة أخرى؟"
+msgstr "هل لديك وسائط إضافية أخرى؟"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -61,119 +83,158 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"لقد وُجدت الوسائط التالية وستستخدم خلال التثبيت: %s.\n"
+"لقد تم العثور على الوسائط التالية وستستخدم خلال التثبيت: %s.\n"
"\n"
"\n"
-"هل لديك وسيط تثبيت إضافي لضبطه ؟"
+"هل لديك وسيط تثبيت إضافي لضبطه؟"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "القرص المدمج"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "الشبكة (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "الشبكة (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "الشبكة (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "مسار المرآة؟"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "يجب أن يبدأ المسار بـ http:// أو بـ ftp://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"يجري الاتصال بموقع لينكس ماندريفا للحصول على قائمة بالمرايا المتوفرة..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "فشل الاتصال بموقع لينكس ماندريفا للحصول على قائمة بالمرايا المتوفرة"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "اختر مرآة لتحصيل الحزم"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "تثبيت NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "فضلا أدخل اسم المضيف والدليل لوسائط NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "اسم المضيف غير موجود"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "يجب أن يبدأ الدليل بـ \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "اسم مضيف نقطة وصل NFS ؟"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "الدليل"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "إضافي"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr "لم يمكن العثور على ملف لائحة الحزم على هذه المرآة. تأكد من صحة الموقع."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "مخزن Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "مخزن Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "مخزن Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"بعض قطع العتاد في جهازك تحتاج بعض المكتبات الغير حرة لتتمكن التعاريف الحرة "
+"من العمل."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "يجب أن تفعل \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" يحتوي على مختلف مكونات النظام وتطبيقاته"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" يحتوي على برمجيات غير حرة. \n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"يحتوى أيضا على بعض المكتبات الضرورية لتشغيل قطع عتاد معينة ( على سبيل "
+"المثال: كروت الشاشة ATI/AMD، بعض كروت الشبكة، بعض كروت RAID، ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" يحتوى على برمجيات لا يمكن إعادة نشرها في جميع بقاع العالم بسبب "
+"براءات الاختراع. "
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "يحتوي أيضا على برمجيات من \"%s\" تم إعادة بنائها بإمكانيات إضافية."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "هنا يمكنك تفعيل وسائط أكثر إن أردت."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "هذا الوسيط يوفر تحديثات للبرمجيات للوسيط \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "التعرف على الحزم المثبتة مسبقاً..."
+msgstr "جاري البحث عن الحزم المثبتة مسبقا..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "البحث عن حزم لترقيتها..."
+msgstr "جاري العثور على الحزم التي يمكن ترقيتها... "
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "إزالة الحزم قبيل ترقيتها"
+msgstr "جاري إزالة الحزم قبيل ترقيتها"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -184,89 +245,89 @@ msgstr ""
"ستحذف هذه الحزم للسماح بترقية النظام: %s\n"
"\n"
"\n"
-"هل تريد حذف هذه الحزم فعلاً؟\n"
+"هل تريد حذف هذه الحزم فعلا؟\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "خطأ في قراءة الملف %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "لقد غُيّرت أسماء الأقراص التّالية:"
+msgstr "لقد تم تغيير أسماء الأقراص التالية:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
-msgstr "%s (المسمّى %s سابقاً)"
+msgstr "%s (المسمى %s سابقاً)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "الشبكة"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "فضلا.. اختر أحد الوسائط"
+msgstr "الرجاء اختيار وسيط"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "الملف موجود مسبقاً. هل تريد الكتابة عليه؟"
+msgstr "الملف موجود مسبقا. هل تريد استبداله؟"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
-msgstr "الإذن مرفوض"
+msgstr "تم رفض الإذن"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "اسم NFS غير صالح"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "الوسيط %s سيء"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "لا يمكن عمل لقطات للشاشة قبل التجزئة"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "ستكون لقطات الشاشة موجودة بعد التثبيت في %s"
+msgstr " لقطات الشاشة ستكون متوفرة بعد التثبيت في %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "التثبيت"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "الضبط"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "عليك أيضا تهيئة %s"
@@ -277,43 +338,43 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"بعض العتاد الموجود على جهازك يحتاج إلى مشغلات ``مملوكة'' كي يعمل.\n"
+"بعض العتاد على جهازك يحتاج إلى مشغلات ``مملوكة'' كي يعمل.\n"
"يمكنك إيجاد مزيد من المعلومات عنها في: %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "يجري تشغيل الشبكة"
+msgstr "جاري تشغيل الشبكة"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "يجري إغلاق الشبكة"
+msgstr "جاري إغلاق الشبكة"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "انتظر رجاءً، يجري جلب الملف"
+msgstr "انتظر رجاء، جاري جلب الملف"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "لا يمكن إضافة وسيط"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "نسخ بعض الحزم إلى الأقراص لاستخدامها مستقبلاً"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
-msgstr "يجري النسخ"
+msgstr "جاري النسخ"
#: pkgs.pm:32
#, c-format
msgid "must have"
-msgstr "يجب أن يكون لديك"
+msgstr "ضروري"
#: pkgs.pm:33
#, c-format
@@ -323,19 +384,35 @@ msgstr "مهم"
#: pkgs.pm:34
#, c-format
msgid "very nice"
-msgstr "ظريف جداً"
+msgstr "جيد جدا"
#: pkgs.pm:35
#, c-format
msgid "nice"
-msgstr "ظريف"
+msgstr "جيد"
#: pkgs.pm:36
#, c-format
msgid "maybe"
msgstr "ربما"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "جاري جلب معلومات الحزم من ملف XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"لا توجد معلومات xml للوسيط \"%s\"، إنما توجد معلومات جزئية فقط عن الحزمة %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "وصف غير متوفر"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -344,75 +421,76 @@ msgstr ""
"بعض الحزم التي يتطلبها %s لا يمكن تثبيتها:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "حدث خطأ"
+msgstr "حدث خطأ:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "حدث خطأ فادح: %s"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "لا تسأل مرة أخرى"
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr ""
+msgstr "فشلت عملية تثبيت %d"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "تثبيت الحزمة %s"
+msgstr "فشل تثبيت الحزمة:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "محطة عمل"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
-msgstr "محطّة عمل مكتبية"
+msgstr "محطة عمل مكتبية"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"برامج مكتبية: معالجات كلمات (OpenOffice.org Writer، Kword)، جداول ممتدة "
+"برامج مكتبية: معالجات نصوص (OpenOffice.org Writer، Kword)، جداول ممتدة "
"(OpenOffice.org Calc، Kspread)، برامج عرض pdf، إلخ"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"برامج مكتبية: معالجات كلمات (kword، abiword)، جداول ممتدة (kspread، gnumeric)"
-"، برامج عرض pdf، إلخ"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
-msgstr "محطّة ألعاب"
+msgstr "محطة ألعاب"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "برامج تسلية: ألعاب فيديو، ألعاب لوحات، ألعاب استراتيجية، إلخ"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "محطة وسائط متعدّدة"
+msgstr "محطة وسائط متعددة"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "برامج تحرير/تشغيل فيديو وصوتيات"
+msgstr "برامج تحرير/تشغيل مرئيات وصوتيات"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "محطّة إنترنت"
+msgstr "محطة إنترنت"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -420,206 +498,206 @@ msgid ""
msgstr ""
"مجموعة أدوات لقراءة وإرسال البريد والأخبار (mutt، tin..) ولتصفح الإنترنت"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "جهاز شبكة (عميل)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "عملاء لبروتوكولات مختلفة بما فيها ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "أدوات لتسهيل ضبط حاسوبك"
+msgstr "أدوات لتسهيل ضبط حاسبك"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "أدوات الطرفيّات"
+msgstr "أدوات الطرفيات"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "محررات نصوص، صَدَفات، أدوات ملفات، طرفيات"
+msgstr "محررات نصوص، صدفات، أدوات ملفات، طرفيات"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "تطوير"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "برامج ومكتبات تطوير C و C++ وملفات مضمنة"
+msgstr "مكتبات تطوير خاصة بلغة C وC++، برامج وملفات مضمنة"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "توثيق"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "كتب ودلائل إرشادية حول لينكس والبرامج الحرة"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "القاعدة القياسيّة للينكس (LSB). دعم تطبيقات الطرف الثالث"
+msgstr "القاعدة القياسية للينكس (LSB). دعم تطبيقات الطرف الثالث"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "خادم وب"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "برامج مجموعات"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "خادم Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
-msgstr "جدار ناري/موجِّه"
+msgstr "جدار ناري/روتر"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "بوابة إنترنت"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "بريد/أخبار"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "خادم بريد Postfix، خادم أخبار Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "خادم مجلّدات"
+msgstr "خادم مجلدات"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "خادم FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "خادم أسماء نطاقات ومعلومات شبكة"
+msgstr "خادم أسماء النطاقات ومعلومات الشبكة"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "خادم مشاركة ملفّات وطابعات"
+msgstr "خادم مشاركة الملفات والطابعات"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
-msgstr "خادم NFS، خادم Samba"
+msgstr "خادم NFS، خادم سامبا"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "قواعد بيانات"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "خادم قواعد بيانات PostgreSQL و MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "خادم قواعد بيانات PostgreSQL و MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "وب/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache، Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "البريد"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "خادم بريد Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "خادم قواعد بيانات PostgreSQL أو MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "خادم قواعد بيانات PostgreSQL أو MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "خادم شبكات"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "خادم NFS، خادم SMB، خادم وسيط، خادم ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "بيئات رسومية"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "محطّة عمل كِدي"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"بيئة سطح مكتب كِدي؛ البيئة الرسومية الأساسية مع مجموعة من الأدوات المصاحبة"
+"بيئة سطح مكتب كدي، البيئة الرسومية الأساسية مع مجموعة من الأدوات المصاحبة"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "محطّة عمل جنوم"
+msgstr "محطة عمل جنوم"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -628,66 +706,109 @@ msgstr ""
"بيئة رسومية مع مجموعة من التطبيقات وأدوات سطح المكتب المناسبة للمستخدمين "
"العاديين"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "سطح مكتب كِدي"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"بيئة رسومية مع مجموعة من التطبيقات وأدوات سطح المكتب المناسبة للمستخدمين "
-"العاديين"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "سطح مكتب LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "سطح مكتب LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "أسطح مكتب رسومية أخرى"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm، Window Maker، Enlightenment، Fvwm، إلخ"
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
-msgstr "وسائل"
+msgstr "أدوات"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "خادم SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "خادم الضبط البعيد Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "وسائل الشبكة/المراقبة"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "أدوات مراقبة، محاسبة عمليّات، tcpdump، nmap، ..."
+msgstr "أدوات مراقبة، محاسبة عمليات، tcpdump، nmap، ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "مرشدو ماندريفا"
+msgid "Mageia Wizards"
+msgstr "مرشدو ماجيا"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "مرشدو ضبط الخادم"
@@ -698,10 +819,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"حدث خطأ ولا أعرف كيف أتعامل معه جيدًا،\n"
-"لذا تابع على مسؤوليتك."
+"حدث خطأ ولا أعرف كيف أتعامل معه جيدأ. \n"
+"تابع على مسؤوليتك."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -709,9 +830,9 @@ msgid ""
"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
"\"\n"
msgstr ""
-"لم يتمّ تثبيت بعض الحزم المهمّة بشكل صحيح.\n"
-"إمّا أن محرك الأقراص أو القرص ذاته معطوب.\n"
-"افحص القرص المدمج على حاسوب مثبت باستعمال \"rpm -qpl media/main/*.rpm\"\n"
+"لم يتم تثبيت بعض الحزم المهمة بشكل صحيح.\n"
+"إما أن محرك الأقراص أو القرص ذاته معطوب.\n"
+"افحص القرص المدمج على حاسب مثبت باستعمال \"rpm -qpl media/main/*.rpm\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
@@ -720,224 +841,233 @@ msgstr "الانتقال للخطوة `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "تثبيت لينكس ماندريفا %s"
+msgid "%s Installation %s"
+msgstr "%s تثبيت %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> بين العناصر"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "تشغيل خادم Xorg بطيء، لذا انتظر رجاء"
+msgstr "تشغيل خادم Xorg بطيء. الرجاء الانتظار..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"موارد نظامك قليلة، لذا قد تقابل بعض المشكلات قي تثبيت\n"
-"لينكس ماندريفا. إذا حدث ذلك، فيمكنك تجربة التثبيت النصي بديلاً. ولفعل ذلك،\n"
+"%s. إذا حدث ذلك، فيمكنك تجربة التثبيت النصي كبديل. للقيام بذلك،\n"
"اضغط `F1' عند الإقلاع من القرص المدمج، ثم اكتب `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "تثبيت ماندريفا بسطح مكتب كِدي"
+msgid "Media Selection"
+msgstr "انتقاء الوسائط"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "تثبيت ماندريفا بسطح مكتب جنوم"
+msgid "Install %s Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "تثبيت %s بسطح مكتب جنوم"
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "تثبيت مخصص"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "سطح مكتب كِدي"
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "سطح مكتب جنوم"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "سطح مكتب مخصص"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "هذه معاينة لشكل سطح مكتب %s"
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "اضغط على الصور لكي تراها كبيرة"
+msgstr "اضغط على الصور لتشاهد المعاينة بحجم أكبر"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "انتقاء مجموعات الحزم"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "انتقاء مفرد للحزم"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "الحجم الإجمالي: %d / %d م.ب"
+msgid "Unselect All"
+msgstr "إلغاء اختيار الكل"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "حزمة فاسدة"
+msgid "Total size: %d / %d MB"
+msgstr "الحجم الإجمالي: %d / %d م.ب"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "الإصدار: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "الحجم: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d ك.ب\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "الأهمية: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "لا يمكنك انتقاء/إلغاء انتقاء هذه الحزمة"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "بسبب نقص %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "بسبب عدم إرضاء %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "السعي إلى ترويج %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "من أجل الاحتفاظ بـ %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "لا يمكنك انتقاء هذه الحزمة لأنه لا يوجد مساحة كافية لتثبيتها"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "ستثبت الحزم التالية"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "ستحذف الحزم التالية"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "هذه الحزمة إلزامية؛ لا يمكن إلغاء انتقائها"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "لا يمكن إلغاء انتقاء هذه الحزمة؛ لأنها مثبتة مسبقاً"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "لا يمكنك إلغاء انتقاء هذه الحزمة؛ لأن ترقيتها ضرورية"
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "لا يمكنك إلغاء انتقاء هذه الحزمة. لأن ترقيتها ضرورية"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "إظهار الحزم المنتقاة آليًا"
+msgstr "إظهار الحزم المنتقاة آليا"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "تثبيت"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "تحميل/حفظ الانتقاء"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "تحديث انتقاء الحزم"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
-msgstr "تثبيت مصغّر"
+msgstr "تثبيت مصغر"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "إدارة البرامج"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "اختر الحزم التي تريد تثبيتها"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "التثبيت"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "لا تفاصيل"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "الوقت المتبقي:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
-msgstr "(الحساب التقريبي...)"
+msgstr "(حساب تقديري...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
@@ -945,115 +1075,110 @@ msgstr[0] "لا حزم"
msgstr[1] "حزمة واحدة"
msgstr[2] "حزمتان"
msgstr[3] "%d حزم"
-msgstr[4] "%d حزمة"
-msgstr[5] "%d حزمة"
+msgstr[4] "%d حزم"
+msgstr[5] "%d حزم"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "ملخص"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "اضبط"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "غير مضبوط"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "انتقاء الوسائط"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"عُثر على وسائط التثبيت التالية.\n"
+"تم العثور على وسائط التثبيت التالية.\n"
"إن كنت تريد تخطي بعضها، فيمكنك إلغاء انتقائها الآن."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"لديك الخيار بنسخ محتويات الأقراص المدمجة إلى قرصك الصلب قبل التثبيت.\n"
-"حيئذ، سيكمل التثبيت من القرص الصلب وستبقى الحزم متوفرة حتى يثبت النظام كاملاً."
+"حيئذ، سيكمل التثبيت من القرص الصلب وستبقى الحزم متوفرة حتى يثبت النظام كاملا."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "نسخ الأقراص كاملة"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "حدث خطأ"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "اختر تخطيط لوحة مفاتيحك رجاء"
+msgstr " اختر رجاء تخطيط لوحة مفاتيحك"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "هذه القائمة الكاملة لكلّ لوحات المفاتيح المتاحة:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "تثبيت/ترقية"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "هل هذا تثبيت أم ترقية؟"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "تثبيت"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "ترقية %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
-msgstr "مفتاح التعمية لـ %s"
+msgstr "مفتاح التشفير لـ %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr "إلغاء التثبيت، وإعادة النظام"
+msgstr "إلغاء التثبيت، وإعادة تشغيل النظام"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "تثبيت جديد"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr "ترقية تثبيت سابق (غير مستحسن)"
+msgstr "ترقية تثبيت سابق (لا ينصح به)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1061,43 +1186,24 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"تبين للمثبت أنه لا يمكن ترقية لينكس ماندريفا\n"
-" المثبت عندك بأمان إلى %s\n"
+"تبين للمثبت أنه لا يمكن للنظام السابق\n"
+" أن يرقَّ بأمان لـ %s\n"
" \n"
-" يُنصح بثبيت جديد يحل محل التثبيت السابق\n"
+" ينصح بثبيت جديد يحل محل التثبيت السابق\n"
" \n"
-" تحذير: ينبغي أن تنسخ جميع بياناتك الشخصية احتياطًا قبل اختيار\"تثبيت جديد\""
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
+" تحذير: ينبغي أن تنسخ جميع بياناتك الشخصية قبل اختيار\"تثبيت جديد\""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "ضبط IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"ليس هناك مساحة حرّة لواحد ميجابات من نظام الإقلاع! سوف يستمرّ التّثبيت، لكن "
-"لإقلاع نظامك، سوف تحتاج لإنشاء قسم لنظام الإقلاع في DiskDrake"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"تحتاج إلى إنشاء نظام إقلاع PPC PReP Boot! ستكمل عملية التثبيت، ولكن لإقلاع "
-"نظامك، أنت بحاجة إلى إنشاء لنظام الإقلاع من خلال DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1106,165 +1212,204 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
"غيّر قرصك المدمج!\n"
-"من فضلك أدخل القرص المسّمى \"%s\" في الّسواقة واضغط على موافق عندما تنتهي.\n"
-"إن لم يكن القرص لديك، اضغط على إلغاء لتجّنب التثبيت من هذا القرص."
+"من فضلك أدخل القرص المسمى \"%s\" في السواقة واضغط على موافق عندما تنتهي.\n"
+"إن لم يكن القرص لديك، اضغط على إلغاء لتجنب التثبيت من هذا القرص."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "البحث عن الحزم المتاحة..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
-msgstr "لا توجد مساحة كافية في نظامك للتثبيت أو الترقية (%d > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr "لا توجد مساحة كافية في نظامك للتثبيت أو الترقية (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"اختر حفظ أو تحميل انتقائك للحزم رجاء.\n"
-"النسق مشابه لملفات التثبيت الآلي المولّدة."
+"اختر رجاء حفظ أو تحميل انتقائك للحزم.\n"
+"النسق مشابه للملفات الناتجة عن التثبيت الآلي."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "حمِّل"
+msgstr "تحميل"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
-msgstr "احفظ"
+msgstr "حفظ"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "ملف فاسد"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "كِدي"
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "جنوم"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "انتقاء سطح المكتب"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "بإمكانك اختيار لاحة سطح محطة العمل هذه"
+msgstr "بإمكانك اختيار حساب سطح مكتب الخاص بك."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "الحجم المختار أكبر من المساحة المتاحة"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "نوع التثبيت"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
"لم تختر أي مجموعة من الحزم.\n"
-"رجاء اختر حد التثبيت الأدنى الذي تريده:"
+"اختر رجاء حد التثبيت الأدنى الذي تريده:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "مع X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "تثبيت الحزمة %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "مع وثائق المساعدة الأساسية (مفضّل)"
+msgstr "مع وثائق المساعدة الأساسية (ينصح به)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "حد التثبيت الأدنى الحقيقي (دون urpmi خصوصًا)"
+msgstr "حد التثبيت الأدنى الحقيقي (دون urpmi خصوصا)"
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "التحضير للترقية..."
-#: steps_interactive.pm:638
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
-msgstr "التثبيت يُحضَّر"
+msgstr "التحضير للتثبيت"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "تثبيت الحزمة %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "كان هناك خطأ في ترتيب الحزم:"
+msgstr "حدث خطأ في ترتيب الحزم:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "هل تريد المتابعة على أية حال؟"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "أعد المحاولة"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "تخطّ هذه الحزمة"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "تخطّ جميع الحزم من الوسيط \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "ارجع إلى الوسائط وانتقاء الحزم"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "كان هناك خطأ في تثبيت الحزمة %s"
+msgstr "حدث خطأ في تثبيت الحزمة %s"
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "ضبط ما بعد التثبيت"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "تأكد رجاء من وجود وسائط وحدات التحديث في محرك الأقراص %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "التحديثات"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "ستثبت الحزم التالية"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Retry?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "فشل عند إضافة الوسيط"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1276,154 +1421,127 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"الفرصة أمامك الآن لتنزيل الحزم المحدّثة، فهذه الحزم\n"
-"قد حُدِّثت بعد إصدار التوزيعة، وقد\n"
-"تحتوي على إصلاحات لعِلل أمنية أو برمجية.\n"
+"لديك الآن الفرصة لتنزيل حزم محدثة، فهذه الحزم\n"
+"تم تحديثها بعد إصدار التوزيعة، وقد\n"
+"تحتوي على إصلاحات لعلل أمنية أو برمجية.\n"
"\n"
"لتنزيل هذه الحزم، تحتاج إلى اتصال \n"
"بالإنترنت.\n"
"\n"
"هل تريد تثبيت هذه التحديثات؟"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s على %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "العتاد"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "بطاقة الصوت"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "هل لديك بطاقة صوت ISA؟"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr "شغّل \"alsaconf\" أو \"sndconfig\" بعد التّثبيت لضبط بطاقة الصّوت"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "لم يُعثر على بطاقة صوت. حاول تشغيل \"harddrake\" بعد التثبيت"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "الواجهة الرسومية"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "الشبكة والإنترنت"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "الخوادم الوسيطة"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
-msgstr "مضبوط"
+msgstr "تم ضبطه"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "مستوى الأمن"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "جدار ناري"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
-msgstr "مُنشّط"
+msgstr "مفعلة"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
-msgstr "مُعطّل"
+msgstr "معطلة"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "لم تقم بضبط خادم س (X). هل أنت متأكد أنك تريد ذلك؟"
+msgstr "لم تقم بضبط خادم (X). هل أنت متأكد أنك تريد ذلك؟"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "محمّل الإقلاع يُحضَّر..."
+msgid "Preparing initial startup program..."
+msgstr "تحضير برنامج بدء التشغيل الأولي..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
+msgstr "كن صبورا، ستستغرق العملية بعض الوقت..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"يبدو أن لديك جهازاً مجهولاً أو قديماً جداً، ولن يعمل محمل الإقلاع yaboot مع "
-"نظامك. ستكمل عملية التثبيت، ولكنك بحاجة إلى استخدام BootX أو طريقة ما أخرى "
-"لإقلاع نظامك. مُعطى النواة لنظام الملفات الجذر هو: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"في هذا المستوى الأمني، الوصول إلى الملفّات في قسم وندوز سيكون مقصوراً على "
+"في هذا المستوى الأمني، الوصول إلى الملفات في قسم وندوز سيكون مقصوراً على "
"المدير."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "أدخل قرصًا مرنًا فارغًا في محرك الأقراص %s"
+msgstr "أدخل قرصا مرنا فارغا في محرك الأقراص %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "إنشاء قرص مرن للتثبيت الآلي..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-"بعض الخطوات لم تتم.\n"
+"بعض الخطوات لم تكتمل.\n"
"\n"
-"هل تريد الخروج الآن حقاً؟"
+"هل تريد الخروج الآن حقا؟"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "تهانينا"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
-msgstr "إعادة الحاسوب"
+msgstr "إعادة اﻹقلاع"
#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
#: steps_list.pm:16
@@ -1457,7 +1575,7 @@ msgstr "الفأرة"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "اكتشاف القرص الصّلب"
+msgstr "اكتشاف القرص الصلب"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
@@ -1515,26 +1633,19 @@ msgid ""
"Users"
msgstr "المستخدمون"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "الشبكات"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
"_: Keep these entry short\n"
"Bootloader"
-msgstr "محمّل الإقلاع"
+msgstr "محمل الإقلاع"
#: steps_list.pm:40 steps_list.pm:41
#, c-format
msgid ""
"_: Keep these entry short\n"
"Configure X"
-msgstr "ضبط س (X)"
+msgstr "ضبط (X)"
#: steps_list.pm:42
#, c-format
@@ -1562,54 +1673,24 @@ msgstr "التحديثات"
msgid ""
"_: Keep these entry short\n"
"Exit"
-msgstr "اخرج"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "لقد قررت ترقية نظامك إلى %s وقد تبين وجود كِدي 3.5\n"
-#~ " على نظامك. لا يمكن للمثبت الاحتفاظ بالواجهة كِدي 3.5 مع الترقية، إن اخترت "
-#~ "المواصلة، ستحل كيدي 4 مكان كيدي 3.5، وستفقد إعدادات كِدي الشخصية\n"
-#~ " إن أردت الترقية مع إبقاء كِدي 3.5 والاحتفاظ بإعداداتك الشخصية\n"
-#~ " فقم بإعادة الحاسوب والترقية باستخدام بريمج تحديث ماندريفا."
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "يجري تنزيل الملف %s ..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "الترقية من توزيعة 32 بت إلى 64 بت غير مدعومة"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "الترقية من توزيعة 64 بت إلى 32 بت غير مدعومة"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "لقد اخترت الخوادم التالية: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "هذه الخوادم مُنشّطة افتراضياً، وليس فيها أي مشكلات أمنية\n"
-#~ "معروفة، لكن قد تكتشف بعض المشكلات الجديدة. في تلك الحالة، تأكد من أن\n"
-#~ "تقوم بالترقية في أقرب فرصة ممكنة.\n"
-#~ "\n"
-#~ "\n"
-#~ "هل أنت متأكد أنك تريد تثبيت هذه الخوادم؟\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "سطح مكتب IceWm"
+msgstr "خروج"
+
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "مسار المرآة؟"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "يجب أن يبدأ المسار بـ http:// أو بـ ftp://"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "جاري الاتصال بموقع %s للحصول على قائمة بالمرايا المتوفرة..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr "فشل الاتصال بموقع %s للحصول على قائمة بالمرايا المتوفرة"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "اختر مرآة لتحصيل الحزم"
diff --git a/perl-install/install/share/po/ast.po b/perl-install/install/share/po/ast.po
new file mode 100644
index 000000000..925f65bbb
--- /dev/null
+++ b/perl-install/install/share/po/ast.po
@@ -0,0 +1,1673 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+# enolp <enolp@softastur.org>, 2015-2016,2019-2020,2025
+# Ḷḷumex03, 2014
+# Ḷḷumex03, 2014
+# Softastur <alministradores@softastur.org>, 2009
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: enolp <enolp@softastur.org>, 2015-2016,2019-2020,2025\n"
+"Language-Team: Asturian (http://app.transifex.com/MageiaLinux/mageia/"
+"language/ast/)\n"
+"Language: ast\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr "¡Xúnite a nós!"
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr "Failu de to"
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr "¡La to eleición!"
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr "Ferramientes d'oficina"
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr "Entretenimientu en casa"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Pa la reciella"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "¡Pa la familia!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "¡Pa desendolcadores!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "¡Gracies!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "¡Sé llibre!"
+
+#: any.pm:151
+#, c-format
+msgid "Do you have further supplementary media?"
+msgstr "¿Tienes más medios suplementarios?"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:154
+#, c-format
+msgid ""
+"The following media have been found and will be used during install: %s.\n"
+"\n"
+"\n"
+"Do you have a supplementary installation medium to configure?"
+msgstr ""
+"Atopáronse los medios siguientes ya van usase demientres la instalación: "
+"%s.\n"
+"\n"
+"\n"
+"¿Tienes dalgún mediu suplementariu pa configurar?"
+
+#: any.pm:162
+#, c-format
+msgid "Network (HTTP)"
+msgstr "Rede (HTTP)"
+
+#: any.pm:163
+#, c-format
+msgid "Network (FTP)"
+msgstr "Rede (FTP)"
+
+#: any.pm:164
+#, c-format
+msgid "Network (NFS)"
+msgstr "Rede (NFS)"
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr "Configuración NFS"
+
+#: any.pm:225
+#, c-format
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr "Introduz l'agospiador ya'l direutoriu del mediu NFS"
+
+#: any.pm:229
+#, c-format
+msgid "Hostname missing"
+msgstr "Falta l'agospiador"
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr "El direutoriu ha comenzar per «/»"
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr "¿Cuál ye l'agospiador del montaxe NFS?"
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Direutoriu"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr "Suplementariu"
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
+"Nun se pue atopar la llista de paquetes nesti espeyu. Asegúrate de que la "
+"llocalización ye correuta."
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Edición «Core»"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Edición alteriada"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Edición «Nonfree»"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Dalgunos componentes de la máquina precisen dalgún tipu de firmware que nun "
+"ye llibre pa que los controladores llibres funcionen."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Habríes activar «%s»"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+"«%s» contién dellos componentes de los sistemes ya les sos aplicaciones"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "«%s» contién software que nun ye llibre.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Tamién contién el firmware necesario pa que ciertos preseos funcionen (p. "
+"exem: dalgunes tarxetes gráfiques, RAID, de rede…)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"«%s» contién software que nun se pue distribuyir en tolos países pola mor de "
+"les patentes de software."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Equí pues activar más medios si quies."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Esti mediu forne anovamientos de paquetes pal mediu «%s»"
+
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr "Tán consultándose los paquetes xá instalaos…"
+
+#: any.pm:593
+#, c-format
+msgid "Finding packages to upgrade..."
+msgstr ""
+
+#: any.pm:612
+#, c-format
+msgid "Removing packages prior to upgrade..."
+msgstr "Tán quitándose los paquetes enantes d'anovar…"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:850
+#, c-format
+msgid ""
+"The following packages will be removed to allow upgrading your system: %s\n"
+"\n"
+"\n"
+"Do you really want to remove these packages?\n"
+msgstr ""
+"Van desaniciase los paquetes siguientes pa permitir l'anovamientu del "
+"sistema: %s\n"
+"\n"
+"\n"
+"¿De xuru que quies desaniciar estos paquetes?\n"
+
+#: any.pm:1075
+#, c-format
+msgid "Error reading file %s"
+msgstr "Prodúxose un error al lleer el ficheru «%s»"
+
+#: any.pm:1283
+#, c-format
+msgid "The following disk(s) were renamed:"
+msgstr "Renomáronse los discos siguientes:"
+
+#: any.pm:1285
+#, c-format
+msgid "%s (previously named as %s)"
+msgstr "%s (enantes llamábase «%s»)"
+
+#: any.pm:1342
+#, c-format
+msgid "HTTP"
+msgstr "HTTP"
+
+#: any.pm:1342
+#, c-format
+msgid "FTP"
+msgstr "FTP"
+
+#: any.pm:1342
+#, c-format
+msgid "NFS"
+msgstr "NFS"
+
+#: any.pm:1361 steps_interactive.pm:979
+#, c-format
+msgid "Network"
+msgstr "Rede"
+
+#: any.pm:1365
+#, c-format
+msgid "Please choose a media"
+msgstr "Escueyi un mediu"
+
+#: any.pm:1381
+#, c-format
+msgid "File already exists. Overwrite it?"
+msgstr "El ficheru xá esiste. ¿Quies sobrescribilu?"
+
+#: any.pm:1385
+#, c-format
+msgid "Permission denied"
+msgstr ""
+
+#: any.pm:1433
+#, c-format
+msgid "Bad NFS name"
+msgstr "El nome NFS ye incorreutu"
+
+#: any.pm:1454
+#, c-format
+msgid "Bad media %s"
+msgstr "El mediu «%s» ye incorreutu"
+
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr "Nun se puen facer captures de pantalla enantes de particionar"
+
+#: any.pm:1509
+#, c-format
+msgid "Screenshots will be available after install in %s"
+msgstr ""
+"Les captures de pantalla van tar disponibles dempués de la instalación en "
+"«%s»"
+
+#: gtk.pm:134
+#, c-format
+msgid "Installation"
+msgstr "Instalación"
+
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
+#, c-format
+msgid "Configuration"
+msgstr "Configuración"
+
+#: install2.pm:220
+#, c-format
+msgid "You must also format %s"
+msgstr "Tamién tienes de formatiar «%s»"
+
+#: interactive.pm:16
+#, c-format
+msgid ""
+"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
+"You can find some information about them at: %s"
+msgstr ""
+"Dalgunos componentes del ordenador precisen controladores propietarios pa "
+"funcionar.\n"
+"Pues atopar más información tocante a ellos en: %s"
+
+#: interactive.pm:22
+#, c-format
+msgid "Bringing up the network"
+msgstr "Ta activándose la conexón de rede"
+
+#: interactive.pm:27
+#, c-format
+msgid "Bringing down the network"
+msgstr "Ta desactivándose la conexón de rede"
+
+#: media.pm:397
+#, c-format
+msgid "Please wait, retrieving file"
+msgstr "Espera, ta recibiéndose'l ficheru"
+
+#: media.pm:704
+#, c-format
+msgid "unable to add medium"
+msgstr "nun ye posible amestar el mediu"
+
+#: media.pm:744
+#, c-format
+msgid "Copying some packages on disks for future use"
+msgstr "Tán copiándose dalgunos paquetes nos discos pa usalos nel futuru"
+
+#: media.pm:797
+#, c-format
+msgid "Copying in progress"
+msgstr "Copia en cursu"
+
+#: pkgs.pm:32
+#, c-format
+msgid "must have"
+msgstr "obligatoriu"
+
+#: pkgs.pm:33
+#, c-format
+msgid "important"
+msgstr "importante"
+
+#: pkgs.pm:34
+#, c-format
+msgid "very nice"
+msgstr ""
+
+#: pkgs.pm:35
+#, c-format
+msgid "nice"
+msgstr ""
+
+#: pkgs.pm:36
+#, c-format
+msgid "maybe"
+msgstr ""
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nun hai nenguna descripción"
+
+#: pkgs.pm:290
+#, c-format
+msgid ""
+"Some packages requested by %s cannot be installed:\n"
+"%s"
+msgstr ""
+"Nun se puen instalar dalgunos paquetes solicitaos por «%s»:\n"
+"%s"
+
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
+msgid "An error occurred:"
+msgstr "Prodúxose un error:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Prodúxose un error fatal: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
+
+#: pkgs.pm:929
+#, c-format
+msgid "Installation of packages failed:"
+msgstr "L'aición d'instalar los paquetes falló:"
+
+#: share/meta-task/compssUsers.pl:16
+#, c-format
+msgid "Workstation"
+msgstr "Estación de trabayu"
+
+#: share/meta-task/compssUsers.pl:18
+#, c-format
+msgid "Office Workstation"
+msgstr "Estación ofimática"
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:26
+#, c-format
+msgid "Game station"
+msgstr "Estación de xuegu"
+
+#: share/meta-task/compssUsers.pl:27
+#, c-format
+msgid "Amusement programs: arcade, boards, strategy, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:30
+#, c-format
+msgid "Multimedia station"
+msgstr "Estación multimedia"
+
+#: share/meta-task/compssUsers.pl:31
+#, c-format
+msgid "Sound and video playing/editing programs"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:36
+#, c-format
+msgid "Internet station"
+msgstr "Estación d'internet"
+
+#: share/meta-task/compssUsers.pl:37
+#, c-format
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:42
+#, c-format
+msgid "Network Computer (client)"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:43
+#, c-format
+msgid "Clients for different protocols including ssh"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:49
+#, c-format
+msgid "Tools to ease the configuration of your computer"
+msgstr "Ferramientes p'acencellar la configuración del ordeandor"
+
+#: share/meta-task/compssUsers.pl:53
+#, c-format
+msgid "Console Tools"
+msgstr "Ferramientes de la consola"
+
+#: share/meta-task/compssUsers.pl:54
+#, c-format
+msgid "Editors, shells, file tools, terminals"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
+#, c-format
+msgid "Development"
+msgstr "Desendolcu"
+
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
+msgid "C and C++ development libraries, programs and include files"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
+#, c-format
+msgid "Documentation"
+msgstr "Documentación"
+
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
+msgid "Books and Howto's on Linux and Free Software"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
+#, c-format
+msgid "LSB"
+msgstr "LSB"
+
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
+msgid "Linux Standard Base. Third party applications support"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:79
+#, c-format
+msgid "Web Server"
+msgstr "Sirvidor web"
+
+#: share/meta-task/compssUsers.pl:80
+#, c-format
+msgid "Apache"
+msgstr "Apache"
+
+#: share/meta-task/compssUsers.pl:84
+#, c-format
+msgid "Groupware"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:85
+#, c-format
+msgid "Kolab Server"
+msgstr "Sirvidor Kolab"
+
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
+msgid "Firewall/Router"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
+msgid "Internet gateway"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:92
+#, c-format
+msgid "Mail/News"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:93
+#, c-format
+msgid "Postfix mail server, Inn news server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:97
+#, c-format
+msgid "Directory Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:102
+#, c-format
+msgid "FTP Server"
+msgstr "Sirvidor FTP"
+
+#: share/meta-task/compssUsers.pl:103
+#, c-format
+msgid "ProFTPd"
+msgstr "ProFTPd"
+
+#: share/meta-task/compssUsers.pl:107
+#, c-format
+msgid "DNS/NIS"
+msgstr "DNS/NIS"
+
+#: share/meta-task/compssUsers.pl:108
+#, c-format
+msgid "Domain Name and Network Information Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:112
+#, c-format
+msgid "File and Printer Sharing Server"
+msgstr "Sirvidor pa compartir imprentadores ya ficheros"
+
+#: share/meta-task/compssUsers.pl:113
+#, c-format
+msgid "NFS Server, Samba server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
+msgid "Database"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:123
+#, c-format
+msgid "Web/FTP"
+msgstr "Web/FTP"
+
+#: share/meta-task/compssUsers.pl:124
+#, c-format
+msgid "Apache, Pro-ftpd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:128
+#, c-format
+msgid "Mail"
+msgstr "Corréu electrónicu"
+
+#: share/meta-task/compssUsers.pl:129
+#, c-format
+msgid "Postfix mail server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:134
+#, c-format
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Sirvidor de bases de datos MariaDB o PostgreSQL"
+
+#: share/meta-task/compssUsers.pl:142
+#, c-format
+msgid "Network Computer server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:143
+#, c-format
+msgid "NFS server, SMB server, Proxy server, ssh server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:150
+#, c-format
+msgid "Graphical Environment"
+msgstr "Entornu gráficu"
+
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:153
+#, c-format
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:158
+#, c-format
+msgid "GNOME Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Un entornu gráficu basáu en GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Escritoriu LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Un entronu d'escritoriu basáu en QT y LXDE de nueva xeneración"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Escritoriu Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Escritoriu LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Un entornu gráficu rápidu ya llixeru"
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
+msgid "Other Graphical Desktops"
+msgstr "Otros escritorios gráficos"
+
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:218
+#, c-format
+msgid "Utilities"
+msgstr "Utilidaes"
+
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
+msgid "SSH Server"
+msgstr "Sirvidor SSH"
+
+#: share/meta-task/compssUsers.pl:225
+#, c-format
+msgid "Webmin"
+msgstr "Webmin"
+
+#: share/meta-task/compssUsers.pl:226
+#, c-format
+msgid "Webmin Remote Configuration Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:230
+#, c-format
+msgid "Network Utilities/Monitoring"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:231
+#, c-format
+msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr "Encontos pa Mageia"
+
+#: share/meta-task/compssUsers.pl:236
+#, c-format
+msgid "Wizards to configure server"
+msgstr ""
+
+#: steps.pm:85
+#, c-format
+msgid ""
+"An error occurred, but I do not know how to handle it nicely.\n"
+"Continue at your own risk."
+msgstr ""
+
+#: steps.pm:469
+#, c-format
+msgid ""
+"Some important packages did not get installed properly.\n"
+"Either your cdrom drive or your cdrom is defective.\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
+msgstr ""
+
+#: steps_auto_install.pm:71 steps_stdio.pm:27
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr ""
+
+#: steps_curses.pm:22
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
+
+#: steps_curses.pm:32
+#, c-format
+msgid "<Tab>/<Alt-Tab> between elements"
+msgstr ""
+
+#: steps_gtk.pm:151
+#, c-format
+msgid "Xorg server is slow to start. Please wait..."
+msgstr ""
+
+#: steps_gtk.pm:216
+#, c-format
+msgid ""
+"Your system is low on resources. You may have some problem installing\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
+"press `F1' when booting on CDROM, then enter `text'."
+msgstr ""
+"El sistema tien pocos recursos ya ye posible que tengas dalgún problema\n"
+"demientres la instalación de %s.. Si pasara, pues probar l'instalador per "
+"testu. Pa facelo, primi la tecla «F1» al arrincar el CD-ROM ya introduz "
+"«text»."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Seleición de medios"
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
+msgid "Custom install"
+msgstr ""
+
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Escritoriu Plasma"
+
+#: steps_gtk.pm:281
+#, c-format
+msgid "GNOME Desktop"
+msgstr "Escritoriu GNOME"
+
+#: steps_gtk.pm:282
+#, c-format
+msgid "Custom Desktop"
+msgstr ""
+
+#: steps_gtk.pm:288
+#, c-format
+msgid "Here's a preview of the '%s' desktop."
+msgstr ""
+
+#: steps_gtk.pm:315
+#, c-format
+msgid "Click on images in order to see a bigger preview"
+msgstr ""
+
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
+msgid "Package Group Selection"
+msgstr ""
+
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
+msgid "Individual package selection"
+msgstr "Esbilla individual de paquetes"
+
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr "Deseleicionar too"
+
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr "Tamañu total: %d / %d MB"
+
+#: steps_gtk.pm:425
+#, c-format
+msgid "Version: "
+msgstr "Versión:"
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "Size: "
+msgstr "Tamañu:"
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "%d KB\n"
+msgstr "%d KB\n"
+
+#: steps_gtk.pm:427
+#, c-format
+msgid "Importance: "
+msgstr "Importancia:"
+
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr "Nun pues de/seleicionar esti paquete"
+
+#: steps_gtk.pm:466
+#, c-format
+msgid "due to missing %s"
+msgstr ""
+
+#: steps_gtk.pm:467
+#, c-format
+msgid "due to unsatisfied %s"
+msgstr ""
+
+#: steps_gtk.pm:468
+#, c-format
+msgid "trying to promote %s"
+msgstr ""
+
+#: steps_gtk.pm:469
+#, c-format
+msgid "in order to keep %s"
+msgstr "pa caltener «%s»"
+
+#: steps_gtk.pm:474
+#, c-format
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+"Nun pues instalar esti paquete darréu que nun hai abondu espaciu pa instalalu"
+
+#: steps_gtk.pm:477
+#, c-format
+msgid "The following packages are going to be installed"
+msgstr "Van instalase los paquetes siguientes"
+
+#: steps_gtk.pm:478
+#, c-format
+msgid "The following packages are going to be removed"
+msgstr "Van quitase los paquetes siguientes"
+
+#: steps_gtk.pm:504
+#, c-format
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Esti paquete ye obligatoriu ya nun se pue deseleicionar"
+
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr "Nun pues deseleicionar esti paquete porque xá ta instaláu"
+
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "Nun pues deseleicionar esti paquete, ha anovase"
+
+#: steps_gtk.pm:512
+#, c-format
+msgid "Show automatically selected packages"
+msgstr ""
+
+#: steps_gtk.pm:516
+#, c-format
+msgid "Install"
+msgstr "Instalar"
+
+#: steps_gtk.pm:519
+#, c-format
+msgid "Load/Save selection"
+msgstr ""
+
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
+msgid "Updating package selection"
+msgstr ""
+
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
+msgid "Minimal install"
+msgstr "Instalación mínima"
+
+#: steps_gtk.pm:543
+#, c-format
+msgid "Software Management"
+msgstr "Xestión del software"
+
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
+msgid "Choose the packages you want to install"
+msgstr "Escueyi los paquetes que quies instalar"
+
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
+#, c-format
+msgid "Installing"
+msgstr "Instalando"
+
+#: steps_gtk.pm:590
+#, c-format
+msgid "No details"
+msgstr ""
+
+#: steps_gtk.pm:610
+#, c-format
+msgid "Time remaining:"
+msgstr "Tiempu restante:"
+
+#: steps_gtk.pm:611
+#, c-format
+msgid "(estimating...)"
+msgstr ""
+
+#: steps_gtk.pm:637
+#, c-format
+msgid "%d package"
+msgid_plural "%d packages"
+msgstr[0] "%d paquete"
+msgstr[1] "%d paquetes"
+
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
+#, c-format
+msgid "Summary"
+msgstr "Resume"
+
+#: steps_gtk.pm:713
+#, c-format
+msgid "Configure"
+msgstr "Configurar"
+
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
+msgid "not configured"
+msgstr ""
+
+#: steps_gtk.pm:773 steps_interactive.pm:315
+#, c-format
+msgid ""
+"The following installation media have been found.\n"
+"If you want to skip some of them, you can unselect them now."
+msgstr ""
+"Atopáronse los medios d'instalación siguiente.\n"
+"Si quies saltar dalgún, pues deseleicionalu agora."
+
+#: steps_gtk.pm:789 steps_interactive.pm:321
+#, c-format
+msgid ""
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
+msgstr ""
+"Tienes la opción de copiar el conteníu de los CD nel discu duru enantes de "
+"la instalación.\n"
+"Dempués d'esto, la instalación va siguir dende'l discu duru y los paquetes "
+"van quedar presentes namás que s'instale dafechu'l sistema."
+
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
+msgid "Copy whole CDs"
+msgstr ""
+
+#: steps_interactive.pm:40
+#, c-format
+msgid "An error occurred"
+msgstr "Prodúxose un error"
+
+#: steps_interactive.pm:105
+#, c-format
+msgid "Please choose your keyboard layout"
+msgstr "Escueyi la distribución del tecláu"
+
+#: steps_interactive.pm:109
+#, c-format
+msgid "Here is the full list of available keyboards:"
+msgstr "Equí tienes la llista completa de los teclaos disponibles:"
+
+#: steps_interactive.pm:153
+#, c-format
+msgid "Install/Upgrade"
+msgstr "Instalación/anovamientu"
+
+#: steps_interactive.pm:157
+#, c-format
+msgid "Is this an install or an upgrade?"
+msgstr "¿Ye una instalación o un anovamientu?"
+
+#: steps_interactive.pm:159
+#, c-format
+msgid ""
+"_: This is a noun:\n"
+"Install"
+msgstr "Instalación"
+
+#: steps_interactive.pm:161
+#, c-format
+msgid "Upgrade %s"
+msgstr "Anovamientu de %s"
+
+#: steps_interactive.pm:184
+#, c-format
+msgid "Encryption key for %s"
+msgstr ""
+
+#: steps_interactive.pm:217
+#, c-format
+msgid "Cancel installation, reboot system"
+msgstr ""
+
+#: steps_interactive.pm:218
+#, c-format
+msgid "New Installation"
+msgstr "Instalación nueva"
+
+#: steps_interactive.pm:219
+#, c-format
+msgid "Upgrade previous installation (not recommended)"
+msgstr ""
+
+#: steps_interactive.pm:223
+#, c-format
+msgid ""
+"Installer has detected that your installed Linux system could not\n"
+"safely be upgraded to %s.\n"
+"\n"
+"New installation replacing your previous one is recommended.\n"
+"\n"
+"Warning : you should backup all your personal data before choosing \"New\n"
+"Installation\"."
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "CD/DVD"
+msgstr "CD/DVD"
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:354
+#, c-format
+msgid ""
+"Change your Cd-Rom!\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
+"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
+msgstr ""
+"¡Cambia'l CD-ROM!\n"
+"Inxerta'l discu etiquetáu como «%s» nel llector ya primi «D'acuerdu» cuando "
+"lo faigas.\n"
+"Si nun lu tienes, primi «Encaboxar» pa impidir la instalación dende esti CD-"
+"ROM."
+
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
+msgid "Looking for available packages..."
+msgstr "Tán buscándose los paquetes disponibles…"
+
+#: steps_interactive.pm:380
+#, c-format
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+"Al sistema nun-y queda abondu espaciu pa facer la instalación o "
+"l'anovamientu (%d MB > %d MB)"
+
+#: steps_interactive.pm:428
+#, c-format
+msgid ""
+"Please choose load or save package selection.\n"
+"The format is the same as auto_install generated files."
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Load"
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Save"
+msgstr ""
+
+#: steps_interactive.pm:438
+#, c-format
+msgid "Bad file"
+msgstr ""
+
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr "Plasma"
+
+#: steps_interactive.pm:456
+#, c-format
+msgid "GNOME"
+msgstr "GNOME"
+
+#: steps_interactive.pm:459
+#, c-format
+msgid "Desktop Selection"
+msgstr ""
+
+#: steps_interactive.pm:460
+#, c-format
+msgid "You can choose your workstation desktop profile."
+msgstr ""
+
+#: steps_interactive.pm:552
+#, c-format
+msgid "Selected size is larger than available space"
+msgstr "El tamañu seleicionáu supera l'espaciu disponible"
+
+#: steps_interactive.pm:576
+#, c-format
+msgid "Type of install"
+msgstr "Tipu d'instalación"
+
+#: steps_interactive.pm:577
+#, c-format
+msgid ""
+"You have not selected any group of packages.\n"
+"Please choose the minimal installation you want:"
+msgstr ""
+"Nun seleicionesti nengún grupu de paquetes.\n"
+"Escueyi la instalación mínima que quies:"
+
+#: steps_interactive.pm:582
+#, c-format
+msgid "With X"
+msgstr "Con X"
+
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
+
+#: steps_interactive.pm:584
+#, c-format
+msgid "With basic documentation (recommended!)"
+msgstr ""
+
+#: steps_interactive.pm:585
+#, c-format
+msgid "Truly minimal install (especially no urpmi)"
+msgstr ""
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Ta preparándose l'anovamientu…"
+
+#: steps_interactive.pm:647
+#, c-format
+msgid "Preparing installation"
+msgstr ""
+
+#: steps_interactive.pm:655
+#, c-format
+msgid "Installing package %s"
+msgstr "Ta instalándose'l paquete «%s»"
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "There was an error ordering packages:"
+msgstr "Prodúxose un error al ordenar los paquetes:"
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "Go on anyway?"
+msgstr ""
+
+#: steps_interactive.pm:683
+#, c-format
+msgid "Retry"
+msgstr ""
+
+#: steps_interactive.pm:684
+#, c-format
+msgid "Skip this package"
+msgstr ""
+
+#: steps_interactive.pm:685
+#, c-format
+msgid "Skip all packages from medium \"%s\""
+msgstr ""
+
+#: steps_interactive.pm:686
+#, c-format
+msgid "Go back to media and packages selection"
+msgstr ""
+
+#: steps_interactive.pm:689
+#, c-format
+msgid "There was an error installing package %s."
+msgstr "Prodúxose un error al instalar el paquete «%s»."
+
+#: steps_interactive.pm:708
+#, c-format
+msgid "Post-install configuration"
+msgstr "Configuración de dempués de la instalación"
+
+#: steps_interactive.pm:715
+#, c-format
+msgid "Please ensure the Update Modules media is in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr "Anovamientos"
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Agora tienes la oportunidá de configurar medios en llinia."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Esto permite instalar anovamientos de seguranza."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Pa configurar estos medios vas precisar una conexón a internet\n"
+"que funcione.\n"
+"\n"
+"¿Quies configurar los medios d'anovamientu?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "¿Quies retentalo?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Prodúxose un error al amestar el mediu"
+
+#: steps_interactive.pm:792
+#, c-format
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
+msgstr ""
+"Agora tienes la oportunidá de baxar paquetes anovaos. Estos paquetes\n"
+"anováronse dempués de publicar la distribución ya ye posible que contengan\n"
+"igües de fallos ya parches de seguranza.\n"
+"\n"
+"Pa baxar estos paquetes vas precisar una conexón a internet que\n"
+"funcione.\n"
+"\n"
+"¿Quies instalar los anovamientos?"
+
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
+#, c-format
+msgid "%s on %s"
+msgstr ""
+
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
+#, c-format
+msgid "Hardware"
+msgstr "Hardware"
+
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr "Tarxeta de soníu"
+
+#: steps_interactive.pm:972
+#, c-format
+msgid "Graphical interface"
+msgstr "Interfaz gráfica"
+
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
+msgid "Network & Internet"
+msgstr "Rede ya internet"
+
+#: steps_interactive.pm:991
+#, c-format
+msgid "Proxies"
+msgstr "Proxys"
+
+#: steps_interactive.pm:992
+#, c-format
+msgid "configured"
+msgstr ""
+
+#: steps_interactive.pm:1002
+#, c-format
+msgid "Security Level"
+msgstr "Nivel de seguranza"
+
+#: steps_interactive.pm:1022
+#, c-format
+msgid "Firewall"
+msgstr "Tornafuéu"
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "activated"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "disabled"
+msgstr ""
+
+#: steps_interactive.pm:1041
+#, c-format
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr ""
+
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, c-format
+msgid "Preparing initial startup program..."
+msgstr "Ta preparándose'l programa d'arrinque inicial…"
+
+#: steps_interactive.pm:1073
+#, c-format
+msgid "Be patient, this may take a while..."
+msgstr "Ten paciencia, esta aición pue tardar un tiempu…"
+
+#: steps_interactive.pm:1089
+#, c-format
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+
+#: steps_interactive.pm:1121
+#, c-format
+msgid "Insert a blank floppy in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:1123
+#, c-format
+msgid "Creating auto install floppy..."
+msgstr "Ta creándose'l disquete d'instalación automática…"
+
+#: steps_interactive.pm:1134
+#, c-format
+msgid ""
+"Some steps are not completed.\n"
+"\n"
+"Do you really want to quit now?"
+msgstr ""
+"Dalgunos pasos nun se completaron.\n"
+"\n"
+"¿De xuru que quies colar agora?"
+
+#: steps_interactive.pm:1144
+#, c-format
+msgid "Congratulations"
+msgstr "Norabona"
+
+#: steps_interactive.pm:1147
+#, c-format
+msgid "Reboot"
+msgstr "Reaniciar"
+
+#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
+#: steps_list.pm:16
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Language"
+msgstr "Llingua"
+
+#: steps_list.pm:16 steps_list.pm:23
+#, c-format
+msgid "Localization"
+msgstr "Traducciones"
+
+#: steps_list.pm:17
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"License"
+msgstr "Llicencia"
+
+#: steps_list.pm:18
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Mouse"
+msgstr "Mur"
+
+#: steps_list.pm:19 steps_list.pm:20
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Hard drive detection"
+msgstr ""
+
+#: steps_list.pm:21 steps_list.pm:22
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installation class"
+msgstr "Tipu d'instalación"
+
+#: steps_list.pm:23
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Keyboard"
+msgstr "Tecláu"
+
+#: steps_list.pm:24
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Security"
+msgstr "Seguranza"
+
+#: steps_list.pm:25
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Partitioning"
+msgstr "Particionáu"
+
+#: steps_list.pm:27 steps_list.pm:28
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Formatting"
+msgstr "Formatéu"
+
+#: steps_list.pm:29
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Choosing packages"
+msgstr "Seleición de paquetes"
+
+#: steps_list.pm:31
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installing"
+msgstr "Instalación"
+
+#: steps_list.pm:34
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Users"
+msgstr "Usuarios"
+
+#: steps_list.pm:38 steps_list.pm:39
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Bootloader"
+msgstr "Cargador d'arrinque"
+
+#: steps_list.pm:40 steps_list.pm:41
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Configure X"
+msgstr "Configuración de X"
+
+#: steps_list.pm:42
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Summary"
+msgstr "Resume"
+
+#: steps_list.pm:44 steps_list.pm:45
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Services"
+msgstr "Servicios"
+
+#: steps_list.pm:46
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Updates"
+msgstr "Anovamientos"
+
+#: steps_list.pm:48
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Exit"
+msgstr ""
diff --git a/perl-install/install/share/po/az.po b/perl-install/install/share/po/az.po
index 5e42621d5..cf531fdc8 100644
--- a/perl-install/install/share/po/az.po
+++ b/perl-install/install/share/po/az.po
@@ -1,57 +1,81 @@
-# translation of DrakX-az.po to Azerbaijani
-# translation of DrakX-az.po to Azerbaijani Turkish
-# DrakX-az.po faylının Azərbaycan dilinə tərcüməsi
-# Copyright (C) 2000,2003, 2004 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva
-# Vasif Ismailoglu MD<azerb_linux@hotmail.com> , 2000-2001
-# Mətin Əmirov <metin@karegen.com>, 2001-2003, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Mətin Əmirov <metin@karegen.com>, 2001-2003, 2004
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-az\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-03-31 14:21+0200\n"
-"Last-Translator: Mətin Əmirov <metin@karegen.com>\n"
-"Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Azerbaijani (http://www.transifex.com/MageiaLinux/mageia/"
+"language/az/)\n"
+"Language: az\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Başqası var?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -60,117 +84,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Şəbəkə %s"
+msgstr ""
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "Şəbəkə %s"
+msgstr ""
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
+msgid "NFS setup"
msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
msgstr ""
-"Mövcud əkslərin siyahısını almaq üçün Mandriva Linux səhifəsi ilə təmas "
-"qurulur..."
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Qovluq"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"Mövcud əkslərin siyahısını almaq üçün Mandriva Linux səhifəsi ilə təmas "
-"qurulur..."
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Paketleri almaq üçün bir əks ünvanı seçin"
+msgid "Core Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Qovluq"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "%s, %s üstündə tapıla bilmir"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
-#: any.pm:334
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Qurulu olan paketlər yoxlanır..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Güncəllənəcək paketlar tapılır"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -183,87 +237,87 @@ msgstr ""
"\n"
"Bu paketləri həqiqətən də silmək istəyirsiniz?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%s faylı oxunurkan xəta oldu"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Aşağıdakı paketlər qurulmalıdır:\n"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Şəbəkə"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Xahiş edirik seçin"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Fayl onsuz da mövcuddur. Üstünə yazım?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Səlahiyyət yoxdur"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "%s medyası əlavə edildi"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Bölmələmədən əvvəl görüntü alına bilməz"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Ekran görüntüləri qurulumdan sonra %s mövqeyində olacaqdır"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Qurulur"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Quraşdırma"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Eyni zamanda %s da şəkilləndirilməlidir"
@@ -288,25 +342,25 @@ msgstr "Şəbəkə fəallaşdırılır"
msgid "Bringing down the network"
msgstr "Şəbəkə dayandırılır"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Təsbit etmə fəaliyyətdədir"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -333,82 +387,98 @@ msgstr "ə'la"
msgid "maybe"
msgstr "bəlkə"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "İzahat yoxdur"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Bir xəta oldu"
+msgstr "Xəta baş verdi"
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Ölümcül xəta yarandı: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "Qurulum bacarılmadı"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "%s paketi qurulur"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "İş Stansiyası"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Ofis İş Stansiyası"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"İdarə proqramları: kəlmə işləyənlər (OpenOffice.org Writer, Kword), "
+"İdarə proqramları: kəlmə işləyənlər (LibreOffice Writer, Kword), "
"hesablayıcılar və pdf göstəriciləri, vs."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"İdarə proqramları: kəlmə işləyənlər (kword, abiword), hesablayıcılar və pdf "
-"göstəriciləri, vs."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Oyun stansiyası"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Məzəli proqramlar: arkad, lövhə oyunları, strategiya, vs"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedya stansiyası"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Səs və video çalınması/düzəliş proqramları"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "İnternet stansiyası"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -417,205 +487,205 @@ msgstr ""
"Elektronik məktub və xəbər oxuyucu vasitələr dəstəsi (pine, mutt, tin..) və "
"Veb səyyahları"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Şəbəkə Kompüteri (alıcı)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "SSH daxil bir çox protokolların alıcıları"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Kompüter qurğularını asandlaşdıran vasitələr"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsol Vasitələri"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editorlar, rəflər, fayl vasitələri, terminallar"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "İnkişaf"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C və C++ inkişaf kitabxanaları, proqramları və daxil ediləcək fayllar"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Sənədlər"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Linuks və sərbəst proqram tə'minatı haqqında Kitablar və Howtolar"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standartları Bazası. Üçüncü partiya tə'minat dəstəyi"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Veb Vericisi"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "Qrup"
+msgstr ""
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Vericisi"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Atəş Divarı/İstiqamətləndirici"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "İnternet keçidi"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/Fayl/_Təze"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix poçt vericisi"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "CD'dən Geri Yüklə"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:102
+#, c-format
msgid "FTP Server"
-msgstr "NTP Verici"
+msgstr ""
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "DNS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Domen Adı Vericisi"
+msgstr ""
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Çapçı Vericisi"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Samba vericisi"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Mə'lumat Bazası"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL ya da MySQL mə'lumat bazası vericisi"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Veb/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Poçt"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix poçt vericisi"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL ya da MySQL mə'lumat bazası vericisi"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL ya da MariaDB mə'lumat bazası vericisi"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Şəbəkə Kompüter vericisi"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS vericisi, SMB vericisi, Vəkil vericisi, SSH verici"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Qrafiki Mühit"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE iş stansiyası"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "KDE, əsas qrafiki ara üz və yardımçi proqramlar kolleksiyası"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME iş stansiyası"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -623,68 +693,112 @@ msgid ""
msgstr ""
"İstifadəçi dostu proqram və masa üstü ilə bərabər qrafiki ara üz vasitələri"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Masa üstü"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"İstifadəçi dostu proqram və masa üstü ilə bərabər qrafiki ara üz vasitələri"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Başqa qrafiki ara üzlər"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm, vs."
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Vasitələr"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH Vericisi"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Veb kamerası"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Terminal Server Quraşdırılması"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Şəbəkə İzlənməsi"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "<b>Mandriva Store</b>"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "\"%s\" çapçısı quraşdırıla bilmədi!"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -695,7 +809,7 @@ msgstr ""
"Bir xəta oldu, yalnız necə düzəldiləcəyi bilinmir.\n"
"Davam edin, riski sizə aitdir!"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -715,333 +829,333 @@ msgstr "Başlanğıc addımı `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux Qurulumu %s"
+msgid "%s Installation %s"
+msgstr "%s Qurulumu %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> irəli/geri"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Sizin sisteminizin qaynaqları çatışmır. Qurulum ərzində problem yaşaya "
-"bilərsiniz\n"
-"Bu baş verərsə mətn aracılığı ilə qurulumu sınamalısınız. Bunun üçün "
-"dəCDROMdan başlatdığınız zaman,\n"
-" 'F1'ə basın və 'text' yazaraq enter'ə basın."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Minimal qurulum"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Masa üstü"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Masa üstü"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Masa üstü"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Paket Qruplarının Seçimi"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Fərdi paket seçimi"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Ümumi böyüklük: %d / %d Mb"
+msgid "Unselect All"
+msgstr "Seçili olmayan hamısını"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Xətalı paket"
+msgid "Total size: %d / %d MB"
+msgstr "Ümumi böyüklük: %d / %d Mb"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Buraxılış: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Böyüklük: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Əhəmiyyət:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Bu paketi seçə bilməzsiniz/sistemdən çıxarda bilməzsınız"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s əksik olduğuna görə"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "%s razı qalmadığına görə"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%s irəliləndirməyə çalışılır"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s-i saxlamaq üçün"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Bu paketi seçə bilməzsiniz, çünki qurmaq üçün yer çatmır."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Aşağıdakı paketlər qurulacaq"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Aşağıdakı paketlər sistemdən silinəcəklər"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Bu lazımlı bir paketdir, sistemdən çıxardıla bilməz"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Bu paketi sistemdən çıxarda bilməzsınız. Artıq qurulmuşdur."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Bu paketi sistemdən çıxarda bilməzsiniz. Yenilənməlidir"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Avtomatik seçili paketləri göstər"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Qur"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Seçili olanı qeyd et"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Paket seçkiləri yenilənir"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimal qurulum"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Proqram Tə'minatı İdarəsi"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Qurmaq istədiyiniz paketləri seçin"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Qurulur"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Təfsilatsız"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Qalan müddət"
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Təxmini olaraq hesaplanır"
+msgstr ""
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d paket"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "İcmal"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Qur"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "quraşdırılmayıb"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Paket Qruplarının Seçimi"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Bir xəta oldu"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Xahiş edirik, klaviatura düzülüşünüzü seçin"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Bütün mövcud ölkələrinn siyahısı"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Qurulum/Yeniləmə"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Bu bir qurulum, yoxsa yeniləmədir?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Qur"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s-i yenilə"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s üçün şifrələmə açarı"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Qurulur"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1050,117 +1164,90 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "İDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "İDE qapıları qurulur"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"1 MB bootstrap üçün yer yoxdur! Qurulum davam edəcək, ancaq sisteminizi aça "
-"bilmək üçün DiskDrake'də bootstrap bölməsi yaratmalısınız."
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
msgstr ""
-"1 MB bootstrap üçün yer yoxdur! Qurulum davam edəcək, ancaq sisteminizi aça "
-"bilmək üçün DiskDrake'də bootstrap bölməsi yaratmalısınız."
-#: steps_interactive.pm:369
-#, fuzzy, c-format
+#: steps_interactive.pm:354
+#, c-format
msgid ""
"Change your Cd-Rom!\n"
"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"CD-ROM'u dəyişdirin!\n"
-"\n"
-"Xahiş edirik, \"%s\" adlı CD-ROM'u sürücünüzə yerləşdirin və Oldu düyməsinə "
-"basın.\n"
-"Əgər CD-ROM əlinizdə deyilsə, bu CD-Rom'dan qurmamaq üçün Ləğv Et düyməsinə "
-"basın."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Mövcud olan paketlər axtarılır."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Xahiş edirik, paket seçkilərini disketə qeyd et/disketdən yüklə\n"
-"seçənəyini seçin."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Yüklə"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Qeyd Et"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Səhv fayl"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "İDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Paket Qruplarının Seçimi"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Seçili böyüklük var olandan daha böyükdür"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Qurulum növü"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1169,87 +1256,126 @@ msgstr ""
"Heç bir paket qrupunu seçmədiniz.\n"
"Xahiş edirik, istədiyiniz ən kiçik qurulumu seçin:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X ilə"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s paketi qurulur"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Əsas sənədlərlə birlikdə (məsləhət edilən!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Həqiqətən minimal qurulum (xüsusilə urpmi olmasın)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Qurulum hazırlanır"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s paketi qurulur"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Paketləri istərkən xəta yarandı:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Yenə də davam edək?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Paket seçkilərini qeyd et"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Paketlər qurulurkən bir xəta oldu:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Qurulum sonrası qurğular"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Yeniləmələr"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Aşağıdakı paketlər qurulacaq"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Medium əlavə etmə xətası"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1271,126 +1397,97 @@ msgstr ""
"\n"
"Yeniləmələri qurmaq istəyirsiniz ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%2$s üstündə %1$s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Avadanlıq"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Səs kartı"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Heç İSA səs kartınız var?"
-
-#: steps_interactive.pm:919
-#, fuzzy, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Qurulumdan sonra səs kartınızı qurğulamaq üçün \"sndconfig\" əmrini icra edin"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Səs kartı tapılmadı. Qurulumdan sonra \"harddrake\"ni işə salın"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Qrafiki ara üz"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Şəbəkə və İnternet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Vəkil vericiləri"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "quraşdırılıb"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Təhlükəsizlik Səviyyəsi"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Atəş Divarı"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "fəal"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "qeyri-fəal"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Siz X-i quraşdırmadınız. Bundan əminsinizmi?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Açılış yükləyici hazırlanır"
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Dünyadan kənar yerdən gələn ya da namə'lum\n"
-" sisteminiz var, yaboot açılış yükləyicisi sizin üçün işləməyəcək.\n"
-"Qurulum davam edəcək ancaq kompüterinizi aça bilmək üçün\n"
-" BootX ya da başqa vasitədən istifadə etməlisiniz"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "%s sürücüsünə boş bir disket yerləşdirin"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Avtomatik qurulum disketi hazırlanır"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1401,12 +1498,12 @@ msgstr ""
"\n"
"Həqiqətən də çıxmaq istəyirsiniz?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Təbriklər"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Yenidən başlat"
@@ -1501,13 +1598,6 @@ msgid ""
"Users"
msgstr "İstifadəçilər"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Şəbəkə"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1550,136 +1640,11 @@ msgid ""
"Exit"
msgstr "Çıxış"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Fayllar göndərilir..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Siz aşağıdakı vericiləri seçdiniz: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Bu vericilər əsas olaraq fəal olur. Onların bilinən heç bir "
-#~ "təhlükəsizlik\n"
-#~ "problemləri yoxdur, ancaq bə'zi yeni xətalar tapıla bilər. Belə olsa, "
-#~ "mümükün olan ən yaxın zamanda onları yeniləməlisiniz.\n"
-#~ "\n"
-#~ "\n"
-#~ "Bu vericiləri həqiqətən də qurmaq istəyirsiniz?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Masa üstü"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Əks ünvanına bağlantı qurulur"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "%s əksi ilə rabitə qurula bilmir"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Avtomatik qurulum disketi hazırla"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Avtomatik qurulum tamamilə avtomatikləşdirilə bilər,\n"
-#~ "ancaq bu zaman o bütün sabit diskə əl qoyacaq!!!\n"
-#~ "(bu başqa kompüterdə də sistemi qura bilmək üçündür).\n"
-#~ "\n"
-#~ "Gələcəkdə bu qurulumu təkrarlamaq istəyə bilərsiniz.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Təkrarla"
-
-#~ msgid "Automated"
-#~ msgstr "Avtomatlaşdırılmış"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Paket seçkilərini qeyd et"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "aboot istifadə etmək istəyirsiniz?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "aboot qurulumunda xata, \n"
-#~ "ilk disk bölməsini yox etsə belə yenə də qurulmasını istəyirsiniz?"
-
-#~ msgid "All"
-#~ msgstr "Hamısı"
-
-#~ msgid "TV card"
-#~ msgstr "TV kartı"
-
-#~ msgid "Boot"
-#~ msgstr "Açılış"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Tanıtma"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d paket, %d MB)"
+#~ "Mövcud əkslərin siyahısını almaq üçün %s səhifəsi ilə təmas qurulur..."
-#~ msgid "%d packages"
-#~ msgstr "%d paket"
-
-#~ msgid "Language"
-#~ msgstr "Dil"
-
-#~ msgid "License"
-#~ msgstr "Lisenziya"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Qurulum sinifinin seçimi"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Təxmini olaraq hesaplanır"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Qurulacaq paketlərin seçimi"
-
-#~ msgid "Users"
-#~ msgstr "İstifadəçilər"
-
-#~ msgid "Networking"
-#~ msgstr "Şəbəkə"
-
-#~ msgid "Configure X"
-#~ msgstr "X quraşdırılması"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Çəyirdəyinizə uyğun gələn çəyirdək modullarına yetişilə bilmədi (%s faylı "
-#~ "əksikdir), bu çox vaxt açılış disketinizin Qurulum mediyası ilə "
-#~ "sinxronluq içində olmadığı mə'nasına gəlir (xahiş edirik, yeni disket "
-#~ "yaradın)."
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Paketleri almaq üçün bir əks ünvanı seçin"
diff --git a/perl-install/install/share/po/be.po b/perl-install/install/share/po/be.po
index ed36b1639..21857ccd2 100644
--- a/perl-install/install/share/po/be.po
+++ b/perl-install/install/share/po/be.po
@@ -1,51 +1,84 @@
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) 1999 Mandriva.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
# Alexander Bokovoy <ab@avilink.net>, 2000
# Maryia Davidouskaia <maryia@scientist.com>, 2000
msgid ""
msgstr ""
-"Project-Id-Version: DrakX VERSION\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2000-09-24 12:30 +0100\n"
-"Last-Translator: Alexander Bokovoy <ab@avilink.net>\n"
-"Language-Team: be\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Belarusian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/be/)\n"
+"Language: be\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
+"%100>=11 && n%100<=14)? 2 : 3);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Ці ёсць у вас іншы?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -54,113 +87,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Сетка"
-
-#: any.pm:122
-#, fuzzy, c-format
-msgid "Network (FTP)"
-msgstr "Сетка"
-
-#: any.pm:123
-#, c-format
-msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:163
#, c-format
-msgid "URL of the mirror?"
+msgid "Network (FTP)"
msgstr ""
-#: any.pm:171
+#: any.pm:164
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Network (NFS)"
msgstr ""
-#: any.pm:182
-#, fuzzy, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "Сувязь з люрам для атрымання спісу даступных пакетаў"
-
-#: any.pm:187
-#, fuzzy, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "Сувязь з люрам для атрымання спісу даступных пакетаў"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Выбар люстра для атрымання пакетаў"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr ""
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr ""
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr ""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr ""
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Каталёг"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:300
+#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
-msgstr "Не знойздены праграмы\n"
+msgstr ""
-#: any.pm:334
-#, fuzzy, c-format
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
msgid "Looking at packages already installed..."
-msgstr "Вы не можаце адмяніць вылучэнне гэтага пакету. Ён ужо ўсталяваны"
+msgstr ""
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Пошук пакетаў для абнаўлення"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -169,87 +236,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Памылка чытання файлу %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Наступныя пакеты будуць даданы да сістэмы"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "NFS"
-msgstr "ФС"
+msgstr ""
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Сетка"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Калі ласка выбярыце відарыс відэа"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Файл ужо йснуе. Перапісаць?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Адмоўлена ў доступе"
-#: any.pm:1170
-#, fuzzy, c-format
+#: any.pm:1433
+#, c-format
msgid "Bad NFS name"
-msgstr "Бяз назвы"
+msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "Загружаецца файл %s"
+msgstr ""
-#: any.pm:1234
-#, fuzzy, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Дадаць раздзел немагчыма"
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Усталёўваем"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Канфігурацыя"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr ""
@@ -273,25 +340,25 @@ msgstr "Далучэнне да сеткі"
msgid "Bringing down the network"
msgstr "Адлучэнне ад сеткі"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Стварэньне меню ўжо запушчана"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -318,275 +385,291 @@ msgstr "добра"
msgid "maybe"
msgstr "можа быць"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Апісаньне адсутнічае"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Адбылася памылка"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "Усталяванне SILO"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Усталяванне пакету %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:16
+#, c-format
msgid "Workstation"
-msgstr "Канфігурацыя"
-
-#: share/meta-task/compssUsers.pl:15
-#, fuzzy, c-format
-msgid "Office Workstation"
-msgstr "Працоўныя мейсцы"
+msgstr ""
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:18
#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+msgid "Office Workstation"
msgstr ""
-"Офісныя праграмы: працэсары словаў (OpenOffice.org Writer, Kword), "
-"электроныя табліцы, аглядальнікі pdf-файлаў, і г.д."
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Офісныя праграмы: працэсары словаў (kword, abiword), электроныя табліцы, "
-"аглядальнікі pdf-файлаў, і г.д."
+"Офісныя праграмы: працэсары словаў (LibreOffice Writer, Kword), электроныя "
+"табліцы, аглядальнікі pdf-файлаў, і г.д."
-#: share/meta-task/compssUsers.pl:23
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:26
+#, c-format
msgid "Game station"
-msgstr "Аўтэнтыфікацыя"
+msgstr ""
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Забаўляльныя праграмы: аркады, стратэгіі і г.д."
-#: share/meta-task/compssUsers.pl:27
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:30
+#, c-format
msgid "Multimedia station"
-msgstr "Мульцімедыя"
+msgstr ""
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Рэдактары і прайгравальнікі гуку і відэа"
-#: share/meta-task/compssUsers.pl:33
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:36
+#, c-format
msgid "Internet station"
-msgstr "Інтэрнэт"
+msgstr ""
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-#: share/meta-task/compssUsers.pl:39
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:42
+#, c-format
msgid "Network Computer (client)"
-msgstr "Сеткавы прынтэр (TCP/Socket)"
+msgstr ""
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr ""
-#: share/meta-task/compssUsers.pl:45
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:49
+#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Ці жадаеце пратэсціраваць настройкі?"
+msgstr ""
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Кансольныя інструментальныя сродкі"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Рэдактары, абалонкі, тэрміналы"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Распрацоўка"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Бібліятэкі і праграмы для распрацоўкі на С і С++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Дакумэнтацыя"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "нігі і Howto па Linux і Free Software"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr ""
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:79
+#, c-format
msgid "Web Server"
-msgstr "Сервак"
+msgstr ""
-#: share/meta-task/compssUsers.pl:74
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:80
+#, c-format
msgid "Apache"
-msgstr "Шлях:"
+msgstr ""
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "Групы"
+msgstr ""
-#: share/meta-task/compssUsers.pl:78
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:85
+#, c-format
msgid "Kolab Server"
-msgstr "NIS сэервер:"
+msgstr ""
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
msgid "Firewall/Router"
-msgstr "Рэстарт"
+msgstr ""
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
msgid "Internet gateway"
-msgstr "Інтэрнэт"
+msgstr ""
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/Файл/_Стварыць"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "Каталог %s Так"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:102
+#, c-format
msgid "FTP Server"
-msgstr "NIS сэервер:"
+msgstr ""
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr ""
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Імя дамену"
+msgstr ""
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Сервер друку"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "X сэервер"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "База даньняў"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr ""
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr ""
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Пошта"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr ""
-#: share/meta-task/compssUsers.pl:126
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:142
+#, c-format
msgid "Network Computer server"
-msgstr "Сеткавыя інтэрфэйсы"
+msgstr ""
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-#: share/meta-task/compssUsers.pl:133
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:150
+#, c-format
msgid "Graphical Environment"
-msgstr "Абалонка"
+msgstr ""
-#: share/meta-task/compssUsers.pl:135
-#, fuzzy, c-format
-msgid "KDE Workstation"
-msgstr "Канфігурацыя"
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -595,12 +678,12 @@ msgstr ""
"The K Desktop Environment - асноўнае графічнае асяродзе з калекцыяй "
"інструментальных сродкаў"
-#: share/meta-task/compssUsers.pl:140
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:158
+#, c-format
msgid "GNOME Workstation"
-msgstr "Інфармацыя аб памяці"
+msgstr ""
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -609,69 +692,112 @@ msgstr ""
"Графічнае асяродзе са зручным дзеля выкарыстання наборам прыкладанняў і "
"інструментальных сродкаў"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Працоўны стол"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Графічнае асяродзе са зручным дзеля выкарыстання наборам прыкладанняў і "
-"інструментальных сродкаў"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Іншыя графічныя Працоўныя сталы"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Карыснасьці"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
msgid "SSH Server"
-msgstr "NIS сэервер:"
+msgstr ""
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Прылады"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Сістэмнае адміністраваньне"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Канфігурацыя сеткі"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Цэнтар кіраваньня"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Немагчыма выдаліць \"%s\": %s."
+msgstr ""
#: steps.pm:85
#, c-format
@@ -682,7 +808,7 @@ msgstr ""
"Узнікла памылка, якую не атрымліваецца карэктна апрацаваць,\n"
"таму працягвайце на сваю рызыку."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -702,334 +828,340 @@ msgstr "Пераход на крок ‛%s’\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Усталяванне Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Усталяванне %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> паміж элементамі"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"У Вашай сістэме маецца недахоп рэсурсаў, таму магчымы праблемы\n"
-"пры ўсталяванні Mandriva Linux. У гэтым выпадку паспрабуйце тэкставую\n"
+"пры ўсталяванні %s. У гэтым выпадку паспрабуйце тэкставую\n"
"праграму ўсталявання. Для гэтага націсніце ‛F1’ у час загрузкі, а потым\n"
"набярыце ‛text’ і націсніце <ENTER>."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Ахоўнік экрану"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Працоўны стол"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Працоўны стол"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Працоўны стол"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Выбар групы пакетаў"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Асабісты выбар пакетаў"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Агульны памер: %d / %d Мб"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Дрэнны пакет"
+msgid "Total size: %d / %d MB"
+msgstr "Агульны памер: %d / %d Мб"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Вэрсія: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Памер: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr ""
-#: steps_gtk.pm:406
-#, fuzzy, c-format
+#: steps_gtk.pm:427
+#, c-format
msgid "Importance: "
-msgstr "важна"
+msgstr ""
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Вы не можаце вылучаць і адмяняць вылучэнне гэтага пакету"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr ""
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr ""
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr ""
-#: steps_gtk.pm:447
-#, fuzzy, c-format
+#: steps_gtk.pm:469
+#, c-format
msgid "in order to keep %s"
-msgstr "Уласьцівасьці акна"
+msgstr ""
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Вы не можаце выбраць гэты пакет, таму як не хапае месца для яго ўсталявання"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Наступныя пакеты будуць даданы да сістэмы"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Наступныя пакеты будуць выдалены"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Гэта абавязковы пакет, яго вылучэнне нельга адмяніць"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Вы не можаце адмяніць вылучэнне гэтага пакету. Ён ужо ўсталяваны"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Вы не можаце адмяніць вылучэнне гэтага пакету. Яго патрэбна абнавіць"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr ""
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Усталёўка"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Перанесьці вылучэньне"
+msgstr ""
-#: steps_gtk.pm:499
-#, fuzzy, c-format
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
msgid "Updating package selection"
-msgstr "Асабісты выбар пакетаў"
+msgstr ""
-#: steps_gtk.pm:504
-#, fuzzy, c-format
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
msgid "Minimal install"
-msgstr "Ахоўнік экрану"
+msgstr ""
-#: steps_gtk.pm:517
-#, fuzzy, c-format
+#: steps_gtk.pm:543
+#, c-format
msgid "Software Management"
-msgstr "Мэнэджэр сэрвісаў"
+msgstr ""
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Выбар пакетаў для ўсталявання"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Усталёўваем"
-#: steps_gtk.pm:564
-#, fuzzy, c-format
+#: steps_gtk.pm:590
+#, c-format
msgid "No details"
-msgstr "Падрабязнасці"
+msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Засталося часу "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Чакаецца"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d пакетаў"
-msgstr[1] "%d пакетаў"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Агульныя зьвесткі"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Настройка"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
msgid "not configured"
-msgstr "Настроіць панэль"
-
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Выбар групы пакетаў"
+msgstr ""
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Адбылася памылка"
-#: steps_interactive.pm:104
-#, fuzzy, c-format
+#: steps_interactive.pm:105
+#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Калі ласка, абярыце тып клавіятуры"
+msgstr ""
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr ""
-#: steps_interactive.pm:144
-#, fuzzy, c-format
+#: steps_interactive.pm:153
+#, c-format
msgid "Install/Upgrade"
-msgstr "Усталёўваем"
+msgstr ""
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr ""
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Усталёўка"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr ""
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Усталёўваем"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1038,198 +1170,216 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Настройка IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-#: steps_interactive.pm:369
-#, fuzzy, c-format
+#: steps_interactive.pm:354
+#, c-format
msgid ""
"Change your Cd-Rom!\n"
"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"Змяніце ваш Cd-Rom!\n"
-"\n"
-"Калі ласка, устаўце Cd-Rom, пазначаны \"%s\", у ваш дыскавод і націсніце Ок "
-"пасля.\n"
-"Калі вы не маеце яго, націсніце Адмяніць, каб адмяніць усталяванне з гэтага "
-"Cd."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Прагляд даступных пакетаў"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Загрузка"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Захаваць"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Загрузка файла"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Выбар групы пакетаў"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr ""
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr ""
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Усталяванне пакету %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr ""
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr ""
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Падрыхтоўка ўсталяваньня"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Усталяванне пакету %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Атрымалася памылка ўпарадкавання пакетаў:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Усё роўна працягваць?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Асабісты выбар пакетаў"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Атрымалася памылка ўпарадкавання пакетаў:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Настройка пасля ўсталявання"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
-#, fuzzy, c-format
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
msgid "Updates"
msgstr "Аднавіць"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Наступныя пакеты будуць даданы да сістэмы"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1242,121 +1392,97 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s на %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Абсталяваньне"
-#: steps_interactive.pm:897 steps_interactive.pm:914
-#, fuzzy, c-format
-msgid "Sound card"
-msgstr "Праграма гуказапісу"
-
-#: steps_interactive.pm:917
-#, fuzzy, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Ці ёсць у вас іншы?"
-
-#: steps_interactive.pm:919
+#: steps_interactive.pm:958
#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
+msgid "Sound card"
msgstr ""
-#: steps_interactive.pm:921
+#: steps_interactive.pm:972
#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-
-#: steps_interactive.pm:929
-#, fuzzy, c-format
msgid "Graphical interface"
-msgstr "Запуск X пры старце сістэмы"
+msgstr ""
-#: steps_interactive.pm:935 steps_interactive.pm:946
-#, fuzzy, c-format
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
msgid "Network & Internet"
-msgstr "Сеткавы інтэрфейс"
+msgstr ""
-#: steps_interactive.pm:947
-#, fuzzy, c-format
+#: steps_interactive.pm:991
+#, c-format
msgid "Proxies"
-msgstr "Проксі"
+msgstr ""
-#: steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_interactive.pm:992
+#, c-format
msgid "configured"
-msgstr "Настроіць панэль"
+msgstr ""
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Узровень бясьпекі"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "выключаны"
-#: steps_interactive.pm:995
-#, fuzzy, c-format
-msgid "You have not configured X. Are you sure you really want this?"
-msgstr "Меню не было захавана. Ці сапраўды вы жадаеце выйсці?"
-
-#: steps_interactive.pm:1023
+#: steps_interactive.pm:1041
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Падрыхтоўка загрузчыка"
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr ""
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Устаўце дыскету ў дыскавод %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Стварэнне дыскеты для ўсталявання"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1366,12 +1492,12 @@ msgstr ""
"Некаторыя крокі не завершаны.\n"
"Вы сапраўды жадаеце выйсці зараз?"
-#: steps_interactive.pm:1104
-#, fuzzy, c-format
+#: steps_interactive.pm:1144
+#, c-format
msgid "Congratulations"
-msgstr "Прыміце віншаванні!"
+msgstr ""
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Перазагрузка"
@@ -1466,13 +1592,6 @@ msgid ""
"Users"
msgstr "Карыстальнікі"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr ""
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1515,93 +1634,6 @@ msgid ""
"Exit"
msgstr "Выход"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Вызначэнне прыладаў..."
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Працоўны стол"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Сувязь з люрам для атрымання спісу даступных пакетаў"
-
-#, fuzzy
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Немагчыма адчыніць файл %s\n"
-
-#, fuzzy
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Стварэнне дыскеты для ўсталявання"
-
-#, fuzzy
-#~ msgid "Replay"
-#~ msgstr "Граць"
-
-#~ msgid "Automated"
-#~ msgstr "Аўтаматычны"
-
-#, fuzzy
-#~ msgid "Save packages selection"
-#~ msgstr "Асабісты выбар пакетаў"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Вы жадаеце выкарыстоўваць aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Памылка ўсталявання aboot, \n"
-#~ "спрабаваць усталёўваць, негледзячы на магчымасць парушэння першага "
-#~ "разделу?"
-
-#~ msgid "All"
-#~ msgstr "Усё"
-
-#, fuzzy
-#~ msgid "Boot"
-#~ msgstr "Манітор"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Аўтэнтыфікацыя"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d пакетаў"
-#~ msgstr[1] "%d пакетаў"
-
-#~ msgid "%d packages"
-#~ msgstr "%d пакетаў"
-
-#~ msgid "Language"
-#~ msgstr "Выбар мовы"
-
-#, fuzzy
-#~ msgid "License"
-#~ msgstr "Ліхтэнштайн"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Клас усталявання"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Чакаецца"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Выбар пакетаў"
-
-#~ msgid "Users"
-#~ msgstr "Карыстальнікі"
-
-#, fuzzy
-#~ msgid "Networking"
-#~ msgstr "Сетка"
-
-#~ msgid "Configure X"
-#~ msgstr "Настройка X Window"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Выбар люстра для атрымання пакетаў"
diff --git a/perl-install/install/share/po/bg.po b/perl-install/install/share/po/bg.po
index 3434e6e6a..23f160fca 100644
--- a/perl-install/install/share/po/bg.po
+++ b/perl-install/install/share/po/bg.po
@@ -1,59 +1,84 @@
-# translation of DrakX-bg.po to Bulgarian
-# Copyright (C) 2000,2003 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-#
-# Bozhan Boiadzhiev <bozhan@plov.omega.bg>, 2000.
-# Borislav Aleksandrov <B.Aleksandrov@cnsys.bg>, 2003.
-# Boyan Ivanov <boyan17@bulgaria.com>, 2003.
-# Kolio Kolev <kolio_kolev@biotronica.net>, 2009.
+# Translators:
+# Borislav Aleksandrov <B.Aleksandrov@cnsys.bg>, 2003
+# Boyan Ivanov <boyan17@bulgaria.com>, 2003
+# Bozhan Boiadzhiev <bozhan@plov.omega.bg>, 2000
+# Kolio Kolev <kolio_kolev@biotronica.net>, 2009
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-bg\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-03-20 23:42+0200\n"
-"Last-Translator: Kolio Kolev <kolio_kolev@biotronica.net>\n"
-"Language-Team: Bulgarian <Mandriva User Group - Bulgaria <mandriva-"
-"bg@googlegroups.com>>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Georgi Georgiev <georgiev_1994@abv.bg>\n"
+"Language-Team: Bulgarian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/bg/)\n"
+"Language: bg\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 0.3\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Имате ли друг(и) ?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -62,117 +87,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Мрежа %s"
+msgstr ""
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "Мрежа %s"
+msgstr ""
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
+msgid "NFS setup"
msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
msgstr ""
-"Свързване с Mandriva Linux web сайт за получаване на списъка с налични "
-"огледални сървъри..."
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Директория"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"Свързване с Mandriva Linux web сайт за получаване на списъка с налични "
-"огледални сървъри..."
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Изберете огледален сървър,от който да получите пакетите"
+msgid "Core Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Директория"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Не мога да намеря %s на %s"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
-#: any.pm:334
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Търси във вече инсталираните пакети..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Търся пакети за обновяване"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -180,93 +235,93 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Следните пакети ще бъдат изтрити за да се позволи обновяване на системата: %"
-"s\n"
+"Следните пакети ще бъдат изтрити за да се позволи обновяване на системата: "
+"%s\n"
"\n"
"\n"
"Действително ли искате да изтриете тези пакети?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Грешка при четенето на файла %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Следните пакети ще трябва да се инсталират:\n"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Мрежа"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Моля изберете"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Файлът съществува. Да бъде ли презаписан?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Лисват права"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "добавен източник %s"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Не мога да направя моментна \"снимка\" преди разделянето на диска "
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Снимки ще бъдат налични след инсталиране в %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Инсталирам"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Настройка"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Вие трябва също да форматирате %s"
@@ -291,25 +346,25 @@ msgstr "Включвам мрежата"
msgid "Bringing down the network"
msgstr "Изключване на мрежата"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Откриване в прогрес"
+msgstr "Копиране в прогрес"
#: pkgs.pm:32
#, c-format
@@ -336,277 +391,291 @@ msgstr "добър"
msgid "maybe"
msgstr "става"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Без описание"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Появи се грешка"
+msgstr "Появи се грешка:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Получи се непоправима грешка: %s"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Без въпроси отново"
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d инсталационни транзакции пропаднаха"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Инсталиране на пакета %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Работна станция"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Офисна работна станция"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Офис програми: word-процесори (OpenOffice.org Writer, Kword), таблици "
-"(OpenOffice.org Calc, Kspread), преглед на PDF, и т.н."
+"Офис програми: word-процесори (LibreOffice Writer, Kword), таблици "
+"(LibreOffice Calc, Kspread), преглед на PDF, и т.н."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Офис програми: word-процесори (kword, abiword), таблици (kspread, gnumeric), "
-"преглед на PDF, и т.н."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Игрална станция"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Забавни програми: аркадни игри, игри на маса, стратегии и т.н."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Мутимедийна станция"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Програми за пускане/поправяне на звук и видео"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Интернет станция"
-#: share/meta-task/compssUsers.pl:34
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:37
+#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Набор от инструменти за четене и изпращане на поща и новини (pine, mutt, "
-"tin..) и за обикаляне из Мрежата"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Мрежов компютър (клиент)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Клиенти за различни протоколи включително SSH"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Инструменти за улесняване настройката на компютъра ви"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Конзолни инструменти"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Редактори, шелове, файлови инстрименти, терминали"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Разработка"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Библиотеки за разработка на C и C++, програми и include файлове"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Документация"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Книги и HOTWO-та за Linux и свободния софтуер"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr ""
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Web Сървър"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Групуер"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Сървър"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Сървър, Firewall/Рутер"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Интернет gateway"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/Файл/_Нов"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix пощенски сървър"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Сървър с директории"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP сървър"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "FND/NIS"
+msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Име на домейн и Мрежов Информационен Сървър"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Сървър на принтера"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Samba Сървър"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Сървър, Бази-данни"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL или MySQL сървър за бази-данни"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Сървър, Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache и Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Е-поща"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix пощенски сървър"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL или MySQL сървър за бази-данни"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL или MariaDB сървър за бази-данни"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Мрежов компютър, сървър"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS сървър, SMB сървър, Proxy сървър, SSH сървър"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Графична среда"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE работна станция"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -615,12 +684,12 @@ msgstr ""
"The K Desktop Environment, проста среда с колекция от придружаващи "
"инструменти"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Gnome работна станция"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -628,68 +697,112 @@ msgid ""
msgstr ""
"Графична среда с потребителски набор от приложения и desktop инструменти"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "настолен компютър"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Графична среда с потребителски набор от приложения и desktop инструменти"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQT Десктоп"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE Десктоп"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Други графични desktop-и"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm и т.н."
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Помощни програми"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH Сървър"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Webmin Обслужване"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Конфигурация на Терминален Сървър в Mandriva Linux"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Мониторинг на мрежата"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Контролен център на Mandriva Linux"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "ННеуспешна настройка на принтер \"%s\"!"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -700,7 +813,7 @@ msgstr ""
"Появи се грешка, но не знам как да се справя с нея деликатно.\n"
"Можете да продължите на свой риск."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -720,335 +833,338 @@ msgstr "Навлизам в етап `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Инсталация на Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Инсталация на %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> между елементите"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Вашата система е с малки ресурси. Може да имате проблеми с инсталирането\n"
-"на Mandriva Linux. Ако се появи проблем опитайте с текстовата инсалация. "
-"Зацелта,\n"
+"на %s. Ако се появи проблем опитайте с текстовата инсалация. Зацелта,\n"
"натиснете 'F1', когато стартирате от CDROM и въведете 'теьт'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Миминална инсталация"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "настолен компютър"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Plasma Десктоп"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "настолен компютър"
+msgstr "GNOME Десктоп"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "настолен компютър"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Избор на група пакети"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Избиране на пакети един по един"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Обща големина: %d / %d MB"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Лош пакет"
+msgid "Total size: %d / %d MB"
+msgstr "Обща големина: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Версия: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Размер: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d КБ\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Важност:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Не можете да отбележете/деотбележете този пакет"
-#: steps_gtk.pm:444
-#, fuzzy, c-format
+#: steps_gtk.pm:466
+#, c-format
msgid "due to missing %s"
-msgstr "липсва kdesu"
+msgstr ""
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "поради неопределен %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr ""
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr ""
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Не можете да оставите пакета немаркиран, защото нямате място да го "
"инсталирате"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Следните пакети ще бъдат инсталирани"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Следните пакети ще бъдат премахнати"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Това е нужен пакет, не може да бъде немаркиран"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Не можете да оставите този пакет немаркиран. Той вече е инсталиран"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Не можете да изключите този пакет. Той трябва да бъде обновен"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Покажи автоматично отбелязаните пакети"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Инсталирай"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Прочитане/Запис на направения избор"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Обновяване на избора на пакети"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Миминална инсталация"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Управление на софтуер"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Изберете пакетите, които искате да инсталирате"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Инсталирам"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Без подробности"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Оставащо време "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Пресмятане"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d пакета"
-msgstr[1] "%d пакета"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Обобщение"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Настройка"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "не е конфигуриран"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Избор на група пакети"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Появи се грешка"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Моля, изберете подреждане на клавиатурата"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Ето пълен списък на достръпните страни"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Инсталирай/Обнови"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Това нова инсталация ли е или обновяване ?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Инсталирай"
+msgstr "Инсталиране"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Обновява %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Ключ за криптиране на %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Инсталирам"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1057,119 +1173,90 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Настройка на IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Няма свободно място за 1 МБ стартиращо поле ! Инсталацията ще продължи, но, "
-"за да стартирате системата си, ще трябва да създадете стартиращо поле в "
-"DiskDrake"
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
msgstr ""
-"Няма свободно място за 1 МБ стартиращо поле ! Инсталацията ще продължи, но, "
-"за да стартирате системата си, ще трябва да създадете стартиращо поле в "
-"DiskDrake"
-#: steps_interactive.pm:369
-#, fuzzy, c-format
+#: steps_interactive.pm:354
+#, c-format
msgid ""
"Change your Cd-Rom!\n"
"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"Сменете CD-ROM !\n"
-"\n"
-"Моля, сложете CD-ROM озаглавен \"%s\" в устройството и натиснете Ok, когато "
-"сте готови.\n"
-"Ако го нямате, натиснете Отмяна, за да избегнете инсталирането от този CD-"
-"ROM."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Търся налични пакети..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Може изберете зареждане или запис на избора на пакети на флопи.\n"
-"Форматът е същият като auto_install генерираните дискети."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Натовареност"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Запазва"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Зареждане на файл"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Избор на група пакети"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Избраната големина е по-голяма от достъпното пространство"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Тип инсталация"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1178,87 +1265,126 @@ msgstr ""
"Вие не сте избрали никаква група от пакети.\n"
"Моля, изберете минималната инсталация кояти искате:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "С X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Инсталиране на пакета %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "С базова документация (препоръчва се!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Наистина минимална инсталация (особенно без urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Подготвям инсталацията"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Инсталиране на пакета %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Появи се грешка при поръчването на пакетите:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Да продължа ли все пак ?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr ""
+msgstr "Повторен опит"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Запази избор на пакети"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Появи се грешка при инсталиране на пакетите:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "След инсталационна настройка"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Обновяване"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Следните пакети ще бъдат инсталирани"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Грешка при добавяне на източник"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1271,127 +1397,97 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s на %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Хардуер"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Звукова карта"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Имате ли ISA звукова карта?"
-
-#: steps_interactive.pm:919
-#, fuzzy, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Изпълнете \"sndconfig\" след инсталация за да конфигурирате вашата звукова "
-"карта"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Няма открита звукова карта. Опитайте \"harddrake\" след инсталацията"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Графичен интерфайс"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Мрежа и интернет"
-#: steps_interactive.pm:947
-#, fuzzy, c-format
+#: steps_interactive.pm:991
+#, c-format
msgid "Proxies"
-msgstr "Профил "
+msgstr ""
-#: steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_interactive.pm:992
+#, c-format
msgid "configured"
-msgstr "пренастройка"
+msgstr ""
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Ниво на защита"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Защитна стена"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "активирано"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "изключен"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Вие не сте конфигурирали X. Сигурни ли сте, че искате това?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Подготовка на bootloader"
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Изглежда имате старовремска или неизвестна\n"
-"машина, на която yaboot няма да проработи.\n"
-"Инсталацията ще продължи, но ще трябва\n"
-"да иползвате BootX, за да стартирате машината си"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Сложете празна дискета в устройство %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Подготвям дискета с автоматична инсталация"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1402,12 +1498,12 @@ msgstr ""
"\n"
"Наистина ли искате да излезете сега ?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Поздравления"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Престартира"
@@ -1423,7 +1519,7 @@ msgstr "Избор на език"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Регионални настройки (локализация)"
#: steps_list.pm:17
#, c-format
@@ -1502,13 +1598,6 @@ msgid ""
"Users"
msgstr "Потребители"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Мрежа"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1551,134 +1640,12 @@ msgid ""
"Exit"
msgstr "Излез"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Изпращам файлове..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Избрали сте следния(те) сървър(и): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Тези сървъри се активират по подразбиране. Те нямат известни проблеми "
-#~ "със\n"
-#~ "сигурността, но може да се намерят нови. В този случай, ще трябва да сте\n"
-#~ "сигурни, че ще надграждате възможно най-бързо.\n"
-#~ "\n"
-#~ "\n"
-#~ "Наистина ли искате да инсталирате тези сървъри ?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm графична среда"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Свързване с огледалния сървър за получаване на списъка с пакетите"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Не мога да се свръжа с огледален сървър' %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Подготви дискета за автоматична инсталация"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Автоматичната инсталация може да бъде напълно автоматизирана,\n"
-#~ "в такъв случай ще превземе твърдия ви диск !!!\n"
-#~ "(това е за предназначено за инсталиране на друга машина).\n"
-#~ "\n"
-#~ "Може би искате да повторите инсталацията.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Повтори"
-
-#~ msgid "Automated"
-#~ msgstr "Автоматизиран"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Запази избор на пакети"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Искате ли да използвате aboot ?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Грешка при инсталиране на aboot, \n"
-#~ "да се опитам ли да продължа инсталацията дори, ако това унижтожи първия "
-#~ "дял ?"
-
-#~ msgid "All"
-#~ msgstr "Всички"
-
-#~ msgid "TV card"
-#~ msgstr "TV карта"
-
-#~ msgid "Boot"
-#~ msgstr "Зареждане"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Идентификация"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d пакета"
-#~ msgstr[1] "%d пакета"
+#~ "Свързване с %s web сайт за получаване на списъка с налични огледални "
+#~ "сървъри..."
-#~ msgid "%d packages"
-#~ msgstr "%d пакета"
-
-#~ msgid "Language"
-#~ msgstr "Избор на език"
-
-#~ msgid "License"
-#~ msgstr "Лиценз"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Избор на клас инсталация"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Пресмятане"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Пакети за инсталиране"
-
-#~ msgid "Users"
-#~ msgstr "Потребители"
-
-#~ msgid "Networking"
-#~ msgstr "Мрежи"
-
-#~ msgid "Configure X"
-#~ msgstr "Настройка на Х"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Нямам достъп да модулите на ядрото съответстващи на вашият (файл %s "
-#~ "липсва), това означава, че вашето флопи не е синхронизирано с "
-#~ "инсталационният носител (моля направете ново boot флопи)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Изберете огледален сървър,от който да получите пакетите"
diff --git a/perl-install/install/share/po/bn.po b/perl-install/install/share/po/bn.po
index a7eb5d403..92c8a547d 100644
--- a/perl-install/install/share/po/bn.po
+++ b/perl-install/install/share/po/bn.po
@@ -1,56 +1,86 @@
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# Omi Azad <omi@altruists.org>, 2004.
-# Khandakar Mujahidul Islam <suzan@BengaLinux.Org>, 2004.
-# Progga <progga@BengaLinux.Org>, 2004.
-# Jamil Ahmed <jamil@BengaLinux.Org>, 2004, 2005, 2007.
-# Samia <mailsamia2001@yahoo.com>, 2005.
-# Tisa Nafisa <tisa_nafisa@yahoo.com>, 2007.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Jamil Ahmed <jamil@BengaLinux.Org>, 2004-2005,2007
+# Khandakar Mujahidul Islam <suzan@BengaLinux.Org>, 2004
+# Omi Azad <omi@altruists.org>, 2004
+# Progga <progga@BengaLinux.Org>, 2004
+# Samia <mailsamia2001@yahoo.com>, 2005
+# Tisa Nafisa <tisa_nafisa@yahoo.com>, 2007
msgid ""
msgstr ""
-"Project-Id-Version: DrakX HEAD\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2007-02-19 00:44+0600\n"
-"Last-Translator: Tisa Nafisa <tisa_nafisa@yahoo.com>\n"
-"Language-Team: Bangla <mdk-translation@bengalinux.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Bengali (http://www.transifex.com/MageiaLinux/mageia/language/"
+"bn/)\n"
+"Language: bn\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "আপনার কি আরও একটি সম্পুরক মাধ্যম আছে?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -63,113 +93,147 @@ msgstr ""
"\n"
"আপনার কি কনফিগার করার জন্য কোনো সম্পুরক ইনস্টলেশন মিডিয়াম আছে?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "সিডি-রম"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "নেটওয়ার্ক (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "নেটওয়ার্ক (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "নেটওয়ার্ক (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "mirror এর ইউ-আর-এল?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "ইউআরএল অবশ্যই ftp:// অথবা http:// দিয়ে শুরু হবে"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "উপস্থিত মিররের তালিকার জন্য Mandriva Linux-এ সংযুক্ত করা হচ্ছে..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "উপস্থিত মিররের তালিকার জন্য Mandriva Linux-এ যোগাযোগ করতে ব্যর্থ হয়েছে..."
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "আপনি একটি মিরর পছন্দ করুন যেখান থেকে প্যাকেজগুলি নেবেন"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS সেটআপ"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "অনুগ্রহ করে আপনার NFS মিডিয়ার হোস্টনাম এবং ডিরেক্টরী প্রবেশ করান"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "হোস্টনাম পাওয়া যাচ্ছে না"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "ডিরেক্টরী অবশ্যই \"/\" দিয়ে শুরু হবে"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS মাউন্টের জন্য হোস্টনাম ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "ডিরেক্টরি"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "সম্পুরক"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr "এই mirror এ কোন hdlist ফাইল পাওয়া যাচ্ছে না"
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "যে সমস্থ প্যাকেজ ইনস্টল হয়ে আছে সেগুলি পর্যবেক্ষন করা হচ্ছে..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "আপগ্রেড করার জন্য প্যাকেজ খোঁজা হচ্ছে..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "আপগ্রেডের পূর্বে প্যাকেজ মুছে ফেলা হচ্ছে..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -182,87 +246,87 @@ msgstr ""
"\n"
"আপনি কি আসলেই এই প্যাকেজগুলো মুছে ফেলতে চান?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%s ফাইল পড়াতে ত্রুটি"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "নিম্নলিখিত ডিস্কগুলো নামান্তর করা হয়েছে:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (পূর্বের নাম %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "এইচ-টি-টি-পি"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "এফ-টি-পি"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "নেটওয়ার্ক"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "অনুগ্রহ করে একটি মিডিয়া নির্বাচন করুন"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "এই ফাইলটি আগে থেকেই আছে। করব?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "অনুমতি প্রদান করা হয়নি"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "ত্রুটিপূর্ণ NFS নাম"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "অগ্রহণযোগ্য মিডিয়া %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "পার্টিশন করার আগে স্ক্রিনশট তৈরী করা যায়নি"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "%s -এ ইনস্টল করার পরে স্ক্রিনশট পাওয়া যাবে"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr " ইনস্টলেশন"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "কনফিগারেশন"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "আপনাকে অবশ্যই %s-ও ফরম্যাট করতে হবে"
@@ -286,22 +350,22 @@ msgstr "নেটওয়ার্ককে চালু করা হচ্ছে
msgid "Bringing down the network"
msgstr "নেটওয়ার্ককে বন্ধ করা হচ্ছে"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "ভবিষ্যতে ব্যবহারের জন্য ডিস্কে কিছু প্যাকেজ কপি করা হচ্ছে"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "কপি সম্পন্ন হচ্ছে"
@@ -331,82 +395,98 @@ msgstr "সুন্দর"
msgid "maybe"
msgstr "হয়তোবা"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "বিবরণ নেই"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "একটি ত্রুটি সম্পাদিত হয়েছে"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "একটি মারাত্মক ত্রুটি ঘটেছে: %s"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "ইনস্টলেশন বিফল হয়েছে"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "%s প্যাকেজ সমূহ ইনস্টল করা হচ্ছে"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "ওয়ার্কষ্টেশন"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "অফিস ওয়ার্কষ্টেশন"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"অফিস প্রোগ্রামসমূহ: ওয়ার্ডপ্রসেসর (OpenOffice.org Writer, Kword), স্প্রেডসিট "
-"(OpenOffice.org Calc, Kspread), PDF ফাইল প্রদর্শক ইত্যাদী"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"অফিস প্রোগ্রামসমূহ: ওয়ার্ডপ্রসেসর (kword, abiword), স্প্রেডসিট (kspread, gnumeric), "
-"PDF ফাইল প্রদর্শক ইত্যাদী"
+"অফিস প্রোগ্রামসমূহ: ওয়ার্ডপ্রসেসর (LibreOffice Writer, Kword), স্প্রেডসিট "
+"(LibreOffice Calc, Kspread), PDF ফাইল প্রদর্শক ইত্যাদী"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "গেশ ষ্টেশন"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "উদ্দীপনামূলক প্রোগ্রামসমূহ: আর্কেড, বোর্ড, স্ট্রেটেজি, ইত্যাদি"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "মাল্টিমিডিয়া ষ্টেশন"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "সাউন্ড এবং ভিডিও দেখার/এডিট করার প্রোগ্রামসমূহ"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "ইন্টারনেট ষ্টেশন"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -414,205 +494,205 @@ msgid ""
msgstr ""
"মেইল আদানপ্রদান, খবর পড়া এবং ওয়েব ব্রাউজিং (mutt, tin..) এর জন্য কিছু টুলের সেট"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "নেটওয়ার্ক কম্পিউটার (ক্লাইন্ট)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "SSH সহ বিভিন্ন প্রোটকলের জন্য ক্লাইন্টসমূহ"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "আপনার কম্পিউটারের কনফিগারেশন সহজ করার জন্য কিছু টুল"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "কনসল টুল"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "এডিটর, শেল, ফাইল টুল, টার্মিনাল সমূহ"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "ডেভলপমেন্ট"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C এবং C++ ডেভলপমেন্টের লাইব্রেরী, প্রগ্রাম এবং include ফাইলসমূহ"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "ডকুমেন্টেশন"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "লিনাক্স এবং ফ্রী সফটওয়ার সংক্রান্ত বই ও হাউটু (HOWTO)"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "লিনাক্সের সাধারণ আধার। তৃতীয়পক্ষ এপ্লিকেশন সমূহের সাপোর্ট"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "ওয়েব সার্ভার"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "এ্যপাচি"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "গ্রুপওয়্যার"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "কোলাব সার্ভার"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "ফায়ারওয়াল/রাউটার"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "ইন্টারনেট গেটওয়ে"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "মেইল/সংবাদ"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix মেইল সার্ভার, Inn সংবাদ সার্ভার"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "ডিরেক্টরি সার্ভার"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP সার্ভার"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "ডিএনএস/এনআইএস"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "ডোমেইন নেম এবং নেটওয়ার্ক ইনফরমেশন সার্ভার"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "ফাইল এবং প্রিন্টার শেয়ারিং সার্ভার"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS সার্ভার, Samba সার্ভার"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "ডেটাবেস"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL অথবা MySQL ডেটাবেস সার্ভার"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL অথবা MariaDB ডেটাবেস সার্ভার"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "ওয়েব/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "এ্যপাচি, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "মেইল"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix মেইল সার্ভার"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL অথবা MySQL ডেটাবেস সার্ভার"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL অথবা MariaDB ডেটাবেস সার্ভার"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "নেটওয়ার্ক কম্পিউটার সার্ভার"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS সার্ভার, SMB সার্ভার, Proxy সার্ভার, ssh সার্ভার"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "গ্রাফিকাল পরিবেশ"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE ওয়ার্কষ্টেশন"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "K ডেক্সটপ, কিছু সহযোগীমূলক টুলের সমন্বয়ে একটি সাধারণ গ্রাফিকাল পরিবেশ"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "গুহনোম ওয়ার্কষ্টেশন"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -620,65 +700,109 @@ msgid ""
msgstr ""
"ব্যবহারকারীর বন্ধুসূলভ কিছু এপ্লিকেশন এবং ডোক্সটপ টুলের সমন্বয়ে একটি গ্রাফিকাল পরিবেশ"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "IceWm ডেস্কটপ"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"ব্যবহারকারীর বন্ধুসূলভ কিছু এপ্লিকেশন এবং ডোক্সটপ টুলের সমন্বয়ে একটি গ্রাফিকাল পরিবেশ"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "অন্যান্য গ্রাফিকাল ডেক্সটপ"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, ইত্যাদি"
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "ইউটিলিটিসমূহ"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH সার্ভিস"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "ওয়েবমিন"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "ওয়েবমিন দূরবর্তী কনফিগারেশন সার্ভার"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "নেটওয়ার্ক ইউটিলিটিসমূহ/পর্যবেক্ষণ"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "পর্যবেক্ষণ টুলসমূহ, হিসাবরক্ষণ প্রসেস করে, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva উইজার্ডসমূহ"
+msgid "Mageia Wizards"
+msgstr "Mageia উইজার্ডসমূহ"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "সার্ভার কনফিগার করার জন্য উইজার্ডসমূহ"
@@ -693,7 +817,7 @@ msgstr ""
"কিভাবে এটা সন্দরভাবে হ্যান্ডল করবো।\n"
"আপনি নিজের ঝুঁকিতে অগ্রসর হতে পারেন।"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -713,256 +837,255 @@ msgstr "`%s' স্টেপে প্রবেশ করছি\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux ইনস্টলেশন %s"
+msgid "%s Installation %s"
+msgstr "%s ইনস্টলেশন %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "উপাদানগুলোর মধ্যে <Tab>/<Alt-Tab> "
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"আপনার সিস্টেমের রিসোর্স খুব কম। ম্যান্ড্রিব লিনাক্স ইনস্টল করার সময় আপনি সমস্যার "
-"মুখোমুখি\n"
-"হতে পারেন. যদি সেটা ঘটে, তাহলে আপনাকে এর পরিবর্তে টেক্স ইনস্টল করতে হবে। এর "
-"জন্য,\n"
-"যখন সিডিরম থেকে বুট হবে তখন `F1' চাপুন, তারপর `text' লিখুন।"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "সর্বনিম্ন ইনস্টল"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "IceWm ডেস্কটপ"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm ডেস্কটপ"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "IceWm ডেস্কটপ"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "প্যাকেজ গ্রুপ নির্বাচন"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "আলাদাভাবে প্যাকেজ নির্বাচন"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "মোট সাইজ: %d / %d এমবি"
+msgid "Unselect All"
+msgstr "সব কিছু অনির্বাচিতকরণ"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "বাজে প্যাকেজ"
+msgid "Total size: %d / %d MB"
+msgstr "মোট সাইজ: %d / %d এমবি"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "ভার্সন:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "সাইজ:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "প্রাধান্য:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "আপনি এই প্যাকেজটি নির্বাচন/অ-নির্বাচন করতে পারবেন না"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s না থাকার কারনে"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "%s যথেষ্ট না হবার কারনে"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%s প্রচারের চেষ্টা চলছে"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s রাখার কারণে"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"আপনি এই প্যাকেজটি নির্বাচন করতে পারবেননা যেহেতু এটা ইনস্টল করার জন্য যথেষ্ট জায়গা "
"ফাঁকা নেই"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "এই প্যাকেজগুলি ইনস্টল হতে যাচ্ছে"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "এই প্যাকেজগুলি অপসরিত হতে যাচ্ছে"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "এটি একটি বাধ্যতামূলাক প্যাকেজ, এটি কোনভাবেই বাদ দেয়া যাবেনা"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr ""
"আপনি এই প্যাকেজটির অ-নির্বাচন করতে পারবেন না, এটা আগে থেকেই ইনস্টল হয়ে আছে"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "আপনি এই প্যাকেজটি অ-নির্বাচন করতে পারবেন না। এটা অবশ্যই আপগ্রেড হতে হবে"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "সংয়-নির্বাচিত প্যাকেজগুলি দেখাও"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "ইনস্টল"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "নির্বাচনসমূহ লোড/সংরক্ষণ করো"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "প্যাকেজের নির্বাচন আপগ্রেড করা হচ্ছে"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "সর্বনিম্ন ইনস্টল"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "সফটওয়্যার ম্যানেজমেন্ট"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "আপনি যেই প্যাকেজগুলি ইনস্টল করতে চান তা পছন্দ করুন"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "ইনস্টলেশন"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "কোন বিস্তারিত ছাড়া"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "সময় বাকী আছে"
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "নির্ধারণ চলছে"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d প্যাকেজ সমূহ"
-msgstr[1] "%d প্যাকেজ সমূহ"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "সারাংশ"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "কনফিগার"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "কনফিগার করা হয়নি"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "প্যাকেজ গ্রুপ নির্বাচন"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -971,84 +1094,84 @@ msgstr ""
"নিম্নলিখিত ইনস্টলেশন মিডিয়া পাওয়া গেছে।\n"
"যদি আপনি এগুলোর মধ্যকার কিছু এড়িয়ে যেতে চান, তাহলে এখন সেগুলোকে অনির্বাচিত করুন।"
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"ইনস্টলেশনের আগে আপ‌নি সিডির তথ্যসমূহ হার্ডডিস্কে কপি করতে পারেন।\n"
" এরপর হার্ডডিস্ক থেকে ইনস্টলেশন চলতে থাকবে এবং সিস্টেম সম্পূর্ন ইনস্টলেশনের পরও "
"প্যাকেজগুলো রয়ে যাবে।"
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "CD গুলো সম্পুর্ন কপি করো "
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "একটি ত্রুটি সম্পাদিত হয়েছে"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "অনুগ্রহ করে আপনার কীবোর্ড বিন্যাস পছন্দ করুন।"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "এখানে উপস্থিত সমস্ত কীবোর্ডের তালিকা রয়োছে"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "ইনস্টল/আপগ্রড"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "এটা কি একটি ইনস্টলেশন না আপগ্রেড?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "ইনস্টল"
+msgstr " ইনস্টলেশন"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s আপগ্রড করো"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s -এর জন্য এনক্রিপশন কী"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr " ইনস্টলেশন"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1057,36 +1180,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDE কনফিগারেশন চলছে"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"১ মেগাবাইটের bootstrap এর জন্য খালি জায়গা নেই! ইনস্টল অগ্রসর হবে, কিন্তু আপনার "
-"সিস্টেম বুট করার জন্য, আপনাকে DiskDrake থেকে bootstrap পার্টিশন তৈরী করতে হবে"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"আপনাকে একটি PPC PReP Boot বুটস্ট্র্যাপ তৈরী করতে হবে! ইনস্টলেশন অগ্রসর হবে, তবে "
-"আপনার সিস্টেম বুট করার জন্য, DiskDrake এর বুটস্ট্র্যাপ পার্টিশনটি প্রয়োজন"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1099,21 +1203,21 @@ msgstr ""
"ঠিক আছে চাপুন।\n"
"যদি সেটা আপনার না থাকে, এই সিডিরম থেকে ইনস্টলেশন এড়িয়ে যেতে বাতিল চাপুন।"
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "বরাদ্দকৃত প্যাকেজসমূহ খোঁজা হচ্ছে..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"ইনস্টলেশন অথবা সাম্প্রতিকীকরনের জন্য আপনার সিস্টেমে যথেষ্ট পরিমান জায়গা খালি নেই (%"
-"dএমবি > %dএমবি)"
+"ইনস্টলেশন অথবা সাম্প্রতিকীকরনের জন্য আপনার সিস্টেমে যথেষ্ট পরিমান জায়গা খালি নেই "
+"(%dএমবি > %dএমবি)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1122,52 +1226,52 @@ msgstr ""
"অনুগ্রহ করে প্যাকেজ নির্বাচন লোড বা সংরক্ষণ বাছাই করুন।\n"
"এই ফরম্যাটটি auto_install দ্বারা তৈরী ফাইলসমূহের মত।"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "চাপ"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "সংরক্ষণ"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "অগ্রহণযোগ্য ফাইল"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "গুনোম"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "প্যাকেজ গ্রুপ নির্বাচন"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "উপস্থিত জায়গার চাইতে নির্বাচিত সাইজটি অনেক বড়"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "ইনস্টলের ধরণ"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1176,87 +1280,126 @@ msgstr ""
"আপনি প্যাকেজের কোন গ্রুপ নির্বাচন করেননি।\n"
"অনুগ্রহ করে আপনি যে ক্ষুদ্রাকৃতির ইনস্টলেশন চান তা পছন্দ করুন:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X-এর সাথে"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s প্যাকেজ সমূহ ইনস্টল করা হচ্ছে"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "সাধারন নির্দেশিকার সাথে (পরামর্শ দেয়া হচ্ছে!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "এক্কেবারেই ক্ষুদ্র ইনস্টলেশন (বিশেষ করে কোন urpmi ছাড়া)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "ইনস্টলেশনের প্রস্তুতি চলছে"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s প্যাকেজ সমূহ ইনস্টল করা হচ্ছে"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "প্যাকেজগুলো বিন্যস্ত করতে গিয়ে একটি ভুল ছিল:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "তবুও যাব?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "পুনরায় চেষ্টা করো"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "এই প্যাকেজটি এড়িয়ে যাও"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "\"%s\" মাধ্যমের সব প্যাকেজ এড়িয়ে যাও"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "মিডিয়া এবং প্যাকেজের নির্বাচন এ ফিরে যাও"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "%s প্যাকেজ ইনস্টল করতে সমস্যা হয়েছে।"
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "ইনস্টলের পরের কনফিগারেশন"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "অনুগ্রহ করে নিশ্চিত করুন যে সাম্প্রতিক মডিউলগুলো %s ড্রাইভ এ আছে"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "আপডেট"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "এই প্যাকেজগুলি ইনস্টল হতে যাচ্ছে"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "মাধ্যম যোগ করার প্রক্রিয়া বিফল হয়েছে"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1277,110 +1420,80 @@ msgstr ""
"\n"
"আপনি কি ইনস্টল আপডেট করতে চান?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s -এ %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "হার্ডওয়্যার"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "সাউন্ডকার্ড"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "আপনার কি একটি ISA সাউন্ড কার্ড আছে?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"ইনস্টল শেষ হবার পরে সাউন্ড কার্ড কনফিগার করার জন্য \"alsaconf\" অথবা \"sndconfig"
-"\" চালাও"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "কোন সাউন্ডকার্ড সনাক্ত হয়নি, ইনস্টলের পরে \"harddrake\" দিয়ে চেষ্টা করুন"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "গ্রাফিকাল ইন্টারফেস"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "নেটওয়ার্ট এবং ইন্টারনেট"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "প্রক্সিসমূহ"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "কনফিগার করা হয়েছে"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "সিকউরিটি লেভেল"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "ফায়ারওয়াল"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "সক্রিয় হয়েছে"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "অকার্যকর করা হয়েছে"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "আপনি X কনফিগার করেননি। আপনি কি নিশ্চিত এরকমটি চান?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "Bootloader প্রস্তুত করা হচ্ছে..."
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"আপনার মেশিনটি মনে হচ্ছে একটি Oldworld বা অজানা মেশিন, yaboot বুটলোডারটি আপনার "
-"জন্য কাজ করবে না। ইনস্টল এগিয়ে যাবে, কিন্তু আপনার মেশিনকে বুট করার জন্য আপনাকে "
-"BootX বা অন্য কোন কিছু ব্যবহার করতে হবে। root fs এর জন্য কার্নেল প্রেরিত মান হবে: "
-"root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1388,17 +1501,17 @@ msgid ""
msgstr ""
"এই নিরাপত্তা লেভেলে, উইন্ডোজ পার্টিশনের ফাইলে প্রবেশ শুধুমাত্র অ্যাডমিনিস্ট্রেটরের আছে।"
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "%s ড্রাইভে একটি ফাঁকা ফ্লপি ঢোকান"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "সয়ং ইনস্টল ফ্লপি তৈরী করা হচ্ছে..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1409,12 +1522,12 @@ msgstr ""
"\n"
"আপনি কি এখন বের হতে চান?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "স্বাগতম"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "রিবুট"
@@ -1430,7 +1543,7 @@ msgstr "ভাষা"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "স্থানীয়করণ"
#: steps_list.pm:17
#, c-format
@@ -1509,13 +1622,6 @@ msgid ""
"Users"
msgstr "ব্যবহারকারী"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "নেটওয়ার্ক করা"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1558,186 +1664,22 @@ msgid ""
"Exit"
msgstr "বাহির"
-#~ msgid "Downloading file %s..."
-#~ msgstr "%s ফাইল ডাউনলোড করা হচ্ছে..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "আপনি নিম্মলিখিত সার্ভার(গুলো) বেছে নিয়েছেন: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "এই সার্ভারগুলো ডিফল্টভাবেই চালু করা থাকে। তাদের কোন নিরাপত্তা সমস্যা\n"
-#~ "নেই, কিন্তু নতুন কিছুর ক্ষেত্রে তার প্রয়োজন আছে। সেক্ষেত্রে আপনি অবশ্যই সেগুলোকে\n"
-#~ "যত তাড়াতাড়ি সম্ভব আপগ্রেড করার ক্ষেত্রে নিশ্চিত হোন।\n"
-#~ "\n"
-#~ "\n"
-#~ "আপনি কি আসলেই এই সার্ভারগুলো ইনস্টল করতে চান?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "প্লাকার ডেস্কটপ"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "প্যাকেজের তালিকার জন্য মিররের সাথে সংযুক্ত করা হচ্ছে..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "%s মিররের সাথে সংযুক্ত হওয়া গেলনা"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "সয়ংক্রিয় ইনস্টল ফ্লপি প্রস্তুত করো"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "যদি আপনি চান স্বয়ংক্রিয় ইনস্টল পুরোপুরি স্বয়ংক্রয়ভাবে হবে,\n"
-#~ "সেক্ষেত্রে সেটা হার্ড ড্রাইভের কর্তৃত্বে!!\n"
-#~ "(এর মানে হচ্ছে অন্য একটি বাক্সে ইনস্টল)।\n"
-#~ "\n"
-#~ "আপনি তার চেয়ে পুনরায় ইনস্টলেশন চালু করুন।\n"
-
-#~ msgid "Replay"
-#~ msgstr "জবাব"
-
-#~ msgid "Automated"
-#~ msgstr "সয়ংক্রিয়ভাবে"
-
-#~ msgid "Save packages selection"
-#~ msgstr "প্যাকেজের নির্বাচন সংরক্ষণ করে রাখো"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "আপনি কি aboot ব্যবহার করতে চান?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Aboot ইনস্টলে ব্যর্থ হয়েছে,\n"
-#~ "জোর করে ইনস্টলের চেষ্টা করবো যদিও সেটা প্রথম পার্টিশনকে নষ্ট করতে পারে?"
-
-#~ msgid "All"
-#~ msgstr "সকল"
-
-#~ msgid "TV card"
-#~ msgstr "টিভি কার্ড"
-
-#~ msgid "Boot"
-#~ msgstr "বুট"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "অনুমোদন"
-
-#~ msgid "Arkeia"
-#~ msgstr "আরকেইয়া"
-
-#~ msgid "Flatout"
-#~ msgstr "ফ্ল্যাটআউট"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "থ্রিডি"
-
-#~ msgid "CMS"
-#~ msgstr "সিএমএস"
-
-#~ msgid "CRM"
-#~ msgstr "সিআরএম"
-
-#~ msgid "2007 product line"
-#~ msgstr "২০০৭ পণ্য লাইন"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "ইনভিকটাস ফায়ারওয়াল"
-
-#~ msgid "Discovery Live Mode"
-#~ msgstr "লাইভ মডিউল অনুসন্ধান"
-
-#~ msgid "How to register"
-#~ msgstr "কিভাবে রেজিস্টার করবেন"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "আরপিএমড্র্যাক ২"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "Mandriva অনলাইন সেবা"
-
-#~ msgid "New Theme"
-#~ msgstr "নতুন থীম"
-
-#~ msgid "Web 2.0"
-#~ msgstr "ওয়েব ২.০"
-
-#~ msgid "Kaspersky"
-#~ msgstr "ক্যসপারস্কাই"
-
-#~ msgid "LinDVD"
-#~ msgstr "লিনডিভিডি"
-
-#~ msgid "Skype"
-#~ msgstr "স্কাইপ"
-
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Transgaming/Cedega"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d প্যাকেজ সমূহ"
-#~ msgstr[1] "%d প্যাকেজ সমূহ"
-
-#~ msgid "%d packages"
-#~ msgstr "%d প্যাকেজ সমূহ"
-
-#~ msgid "Language"
-#~ msgstr "ভাষা"
-
-#~ msgid "License"
-#~ msgstr "লাইসেন্স"
-
-#~ msgid "Installation class"
-#~ msgstr "ইনস্টলেশনের শ্রেনী"
-
-#~ msgid "Formatting"
-#~ msgstr "ফরম্যাট করা হচ্ছে"
-
-#~ msgid "Choosing packages"
-#~ msgstr "প্যাকেজ পছন্দ করা হচ্ছে"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "mirror এর ইউ-আর-এল?"
-#~ msgid "Users"
-#~ msgstr "ব্যবহারকারী"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "ইউআরএল অবশ্যই ftp:// অথবা http:// দিয়ে শুরু হবে"
-#~ msgid "Networking"
-#~ msgstr "নেটওয়ার্ক করা"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "উপস্থিত মিররের তালিকার জন্য %s-এ সংযুক্ত করা হচ্ছে..."
-#~ msgid "Configure X"
-#~ msgstr "X কনফিগার"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr "উপস্থিত মিররের তালিকার জন্য %s-এ যোগাযোগ করতে ব্যর্থ হয়েছে..."
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "আপনার কার্ণেলের কার্ণেল মডিউলগুলোতে প্রবেশ করতে পারছে না (%s ফাইলটি হারিয়া "
-#~ "গেছে), এর স্বাভাবিক অর্থ হচ্ছে আপনার বুট ফ্লপি ইনস্টলেশন মিডিয়ামের সাথে sync এ "
-#~ "নেই (অনুগ্রহ করে একটি নতুন বুট ফ্লপি তৈরী করুন)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "আপনি একটি মিরর পছন্দ করুন যেখান থেকে প্যাকেজগুলি নেবেন"
diff --git a/perl-install/install/share/po/br.po b/perl-install/install/share/po/br.po
index 6682606b9..597d0c82d 100644
--- a/perl-install/install/share/po/br.po
+++ b/perl-install/install/share/po/br.po
@@ -1,53 +1,84 @@
-# DrakX e Brezhoneg.
-# Copyright (C) 1999-2005 Mandriva
-# Thierry Vignaud <tvignaud@mandriva.com>, 1999-2005
-# Jañ-Mai Drapier <jan-mai.drapier@mail.dotcom.fr>, 1999-2000
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
msgid ""
msgstr ""
-"Project-Id-Version: DrakX 10.2\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-03-30 15:55+0200\n"
-"Last-Translator: Thierry Vignaud <tvignaud@mandriva.com>\n"
-"Language-Team: Brezhoneg <ofisk@wanadoo.fr>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Breton (http://www.transifex.com/MageiaLinux/mageia/language/"
+"br/)\n"
+"Language: br\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1;plural=0\n"
+"Plural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !"
+"=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n"
+"%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > "
+"19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 "
+"&& n % 1000000 == 0) ? 3 : 4);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Deuit ganomp !"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Evideoc'h !"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Ho choaz !"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Ostilhoù burevek"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Evit ho plijadur"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Evit ar vugale"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Evit ar familh !"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Evit an diorroerien "
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Trugarez !"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Bezit dieub !"
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Hag ur vedia all hoc'h eus ?"
+msgstr "Hag ur media all hoc'h eus ?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -56,119 +87,149 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Rouedad (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Rouedad (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Rouedad (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL ar melezour ?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Dao en deus an URL kregiñ gant ftp:// pe http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"O taremprediñ al lec'hienn Mandriva Linux evit kaout roll ar melezouroù "
-"hegerz ..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Sac'het en ur taremprediñ al lec'hienn Mandriva Linux evit kaout roll ar "
-"melezouroù hegerz "
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Dibabit ur melezour da dapout ar pakadoù diwarnañ"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Kefluniadur NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Roit anv ostiz ha renkell ho media NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Mank ar ra anv an ostiz"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
-msgstr ""
+msgstr "Dao en eus anv ur renkell kregiñ gant ur « / »"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Anv ostiz ar marc'hañ NFS ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Renkell"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "A-gresk"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"Ne m'eus ket kavout ur roll pakadoù e-barzh ar melezour-mañ. Kit da wiriañ "
+"N’em eus ket kavout ur roll pakadoù e-barzh ar melezour-mañ. Kit da wiriañ "
"al lec'hiadur-mañ zo mad."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Gwelloc'h e vefe deoc'h bevaat « %s »"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Amañ e c'hellit bevaat mediaoù ouzhpenn ma peus c'hoant"
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Ar vediom-mañ a ginnig pakadoù bremanaet evit ar vediom « %s »"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "O kavout pakadoù zo staliet eo ..."
+msgstr "O klask ar pakadoù staliet ..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "O kavout pakadoù da vremanaat ..."
+msgstr "O klask ar pakadoù da vremanaat ..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "O zilemel ar pakadoù a-raok bremanaat ..."
+msgstr "O tilemel ar pakadoù a-raok bremanaat ..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -176,93 +237,93 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Ar pakadoù a-heul zo war-nes bezañ distaliet evit bremañaat ho reizhiad : %"
-"s\n"
+"Ar pakadoù a-heul zo war-nes bezañ distaliet evit bremanaat ho reizhiad : "
+"%s\n"
"\n"
"\n"
"Ha fellout a ra deoc'h da vat lemel anezho ?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Fazi en ur lenn ar restr %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Adenvelet e oa ar bladenn/pladennoù-mañ :"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (a vez graet %s dioutañ diaraok)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rouedad"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Dibabit ur vedia, mar plij"
+msgstr "Dibabit ur media, mar plij"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Ar restr zo endeo. Rasklañ anezhañ ?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Aotre nac'het"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "N'eo ket un anv NFS mat"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "N'eo ket mat ar vedia %s"
+msgstr "N'eo ket mat ar media %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "N'hellan ket sevel skrammpakeroù a-raok parzhañ"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Skrammpakeroù a vo bet kavet goude staliañ e %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "O staliañ"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Kefluniadur"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Ret eo deoc'h furmadiñ %s ivez"
@@ -284,22 +345,22 @@ msgstr "O lañsañ ar rouedad"
msgid "Bringing down the network"
msgstr "O tizenaouiñ ar rouedad"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Gortozit mar plij, o tigas ar restr"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "n'hell ket bet ouzhpennet ar mediom"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Oc'h eilañ ur bern pakad hag a vo bet implijet diwezhatoc'h"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Oc'h eilañ"
@@ -329,356 +390,417 @@ msgstr "brav"
msgid "maybe"
msgstr "marteze"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "O tegas titouroù ar pakadoù eus an titouroù XML ..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Deskrivadur ebet"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-"Ne m'eus ket gallet staliañ un darn pakad goulennet gant %s :\n"
+"N’em eus ket gallet staliañ un darn pakad goulennet gant %s :\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Ur fazi zo bet :"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Degouezhet ez eus ur fazi sac'hus : %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Na c'houlenn ket adarre"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d gra zo bet sac'het"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
-msgstr "Sac'het et bet staliañ ar pakadoù :"
+msgstr "Sac'het eo bet staliañ ar pakadoù :"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Post labour"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Post labour burevek"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Programmoù burev : skridtreterezhioù (OpenOffice.org Writer, Kword), "
-"logerioù (OpenOffice.org Calc, Kspread), gwelerien PDF, ..."
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programmoù burev : skridtreterezhioù (kword, abiword), logerioù (kspread, "
-"gnumeric), gwelerien PDF, ..."
+"Programmoù burev : skridtreterezhioù (LibreOffice Writer, Kword), logerioù "
+"(LibreOffice Calc, Kspread), gwelerien PDF, ..."
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Arsav c'hoarioù"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Arsav liesvedia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programmoù evit seniñ/aozañ tonioù ha videoù"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Arsav internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Urzhiataer rouedad (kliant)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Pratikoù evit meur a gomennad (da skouer ssh)"
+msgstr "Pratikoù evit meur a gomenad (da skouer ssh)"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Ostilhoù evit kefluniañ hoc'h urzhiataer dre aes"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Ostilhoù letrin"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Aozerien, shelloù, ostilhoù restr, termenelloù"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Diorren"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Teuliadur"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr ""
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Servijer Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Strollant"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Servijer Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Moger tan/Henter"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Dreuzell an Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Posteloù/keleier"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Servijer posteloù Postfix, servijer keleier Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Levr-bloaz"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Servijer FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Servijer DNS ha NIS"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Servijer rennañ restroù ha moullerez"
+msgstr "Servijer rannañ restroù ha moullerez"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Servijer NFS, servijer Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Stlennvon"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Servijer stlennvon PostgreSQL ha MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Servijer stlennvon PostgreSQL ha MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Post"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Servijer postel Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Servijer stlennvon PostgreSQL pe MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Servijer stlennvon PostgreSQL pe MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Servijer rouedad"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Servijer NFS, servijer SMB, servijer proksi, servijer SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Endeo grafikel"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Post burevek KDE"
+msgid "Plasma Workstation"
+msgstr "Post labour Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
-msgstr "An Endro Burev K gant he ostilhoù"
+msgstr "An Endro Burev K gant hec’h ostilhoù"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Post burevek GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Burev LXDE"
+msgid "Xfce Workstation"
+msgstr "Post labour Xfce"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Post burevek MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Post labour Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "An endeo grafikel diwar GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Burev LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Burev Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Burev LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "An endeo grafikel bihan ha buan"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Burevioù c'hrafek all"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, hag all"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Mavegoù"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Servijer SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Servijer Webmin ar gefluniadur a-bell"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Ostilhoù ar rouedad/diwall"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Skozelerien Mandriva"
+msgid "Mageia Wizards"
+msgstr "Skoazellerien Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
-msgstr "Skozelerien evit kefluniañ ar servijer"
+msgstr "Skoazellerien evit kefluniañ ar servijer"
#: steps.pm:85
#, c-format
@@ -689,7 +811,7 @@ msgstr ""
"Degouezhet ez eus ur fazi, hogen n'ouzon ket e verañ naet.\n"
"Kendalc'hit war ho mar."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -705,330 +827,338 @@ msgstr "O kregiñ gant al lankad `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Staliadur Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Staliadur %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> etre elfennoù"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr ""
+msgstr "Goustad eo ar servijer Xorg da loc'hañ. Gortozit mar plij..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Diuzadenn ar media"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Staliañ burev KDE Mandriva"
+msgid "Install %s Plasma Desktop"
+msgstr "Staliañ burev Plasma %s"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Staliañ burev GNOME Mandriva"
+msgid "Install %s GNOME Desktop"
+msgstr "Staliañ burev GNOME %s"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
-msgstr "Staliadur diouzoc'h"
+msgstr "Staliadur diouzhoc'h"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Burev KDE"
+msgid "Plasma Desktop"
+msgstr "Burev Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Burev GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
-msgstr "Burev diouzoc'h"
+msgstr "Burev diouzhoc'h"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Setu ur rakwell eus burev « %s »."
+msgstr "Setu ur rakwel eus burev « %s »."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Klikit war ar skeudennoù evit sell eus ur skeudenn brasoc'h"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Diuzadenn strollad pakadoù"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Diuz pakadoù unan hag unan"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Ment hollek : %d / %d Mo"
+msgid "Unselect All"
+msgstr "Andiuz an holl re"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pakad siek"
+msgid "Total size: %d / %d MB"
+msgstr "Ment hollek : %d / %d Mo"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Stumm : "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Ment : "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d Ko\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Talvoudegezh : "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "N'hellit ket diuz/andiuz ar pakad-mañ"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "peogwir %s zo manket"
+msgstr "peogwir e vank %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "peogwir %s zo manket"
+msgstr "peogwir e vank %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr ""
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "evit mirout %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"N'hellit ket dibab ar pakad-mañ peogwir n'eus ket a-walc'h a egor evit "
"staliañ anezhañ"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Ar pakadoù a-heul zo war-nes bezañ staliet"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Ar pakadoù a-heul zo war-nes bezañ lamet"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Hemañ zo ur pakad ret, n'hell ket bezañ andiuzet"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "N'hellit ket andiuz ar pakad-mañ. Staliet eo endo"
+msgid "You cannot unselect this package. It is already installed"
+msgstr "N'hellit ket andiuz ar pakad-mañ. Staliet eo endeo"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "N'hellit ket andiuz ar pakad-mañ. Ret eo dezhañ bezañ bremanaet"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "Diskouez ar pakadoù a zo dibabet emgefrek"
+msgstr "Diskouez ar pakadoù a zo dibabet emgefreek"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Staliañ"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Kargañ/Enrollañ an dibab"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
-msgstr "O bremañaat diuzadenn ar pakadoù"
+msgstr "O bremanaat diuzadenn ar pakadoù"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Staliadur bihan"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Merañ ar pakadoù"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Dibabit ar pakadoù a vennit staliañ"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "O staliañ"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
-msgstr "Munudoù ebet"
+msgstr "Munud ebet"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Amzer a chom :"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(o vrasjediñ ...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d pakad"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
-msgstr "Evit diverriñ"
+msgstr "Diverradenn"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Kefluniañ"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "n'eo ket kefluniet"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Diuzadenn ar media"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr "Eilañ tout an CDoù"
+msgstr "Eilañ tout ar CDoù"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Ur fazi zo bet"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Dibabit reizhadur ho stokellaoueg mar plij"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Setu eo listenn leun ar stokellaoueg :"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "Staliañ/Bremanaat"
+msgstr "Staliañ/Bremañaat"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Hag ur staliadur pe ur bremanadur eo ?"
+msgstr "Hag ur staliadur pe ur bremañadur eo ?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Staliadur"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Bremanaat %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Alc'hwez enrinegadur evit %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Nulañ ar staliadur ; adloc’hañ an urzhiataer"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Staliadur nevez"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1037,32 +1167,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Kefluniañ IDE"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
+msgid "Configuring CD/DVD"
+msgstr "O kefluniañ CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1074,75 +1189,75 @@ msgstr ""
"\n"
"Lakait el lenner ar Cd-Rom warnañ an diketenn « %s » mar plij ha gwaskit Mat "
"eo da c'houde.\n"
-"Ma n'emañ ket ganeoc'h gwaskit Nullañ evit chom hep staliañ ar Cd-Rom-se."
+"Ma n'emañ ket ganeoc'h gwaskit Nullañ evit chom hep staliañ ar CD-Rom-se."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "O klask ar pakadoù hegerz ..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
-msgstr ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr "N'eus ket egor dieub a-walac'h evit staliañ pe bremanaat (%dMo > %dMo)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Dibabit kargañ pe enrollañ choazh ar pakadoù mar plij.\n"
+"Dibabit kargañ pe enrollañ choaz ar pakadoù mar plij.\n"
"Ar furmad zo hini ar restroù auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Kargañ"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Enrollañ"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "N'eo ket mat ar restr"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Dibab ar burev"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
+msgstr "Amañ e c'hellit dibab ho seurt burev."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Brasoc'h eo ment dibabet evit egor dieub"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Seurt ar staliadur"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1151,87 +1266,126 @@ msgstr ""
"N'eus ket strollad pakadoù dibabet ebet.\n"
"Dibabit ar staliañ vihanañ e fell deoc'h implij mar plij :"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Gant X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "O staliañ ar pakad %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Staliañ ar pakadoù aliet"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Gant un teuliadur bihan (kuzuliet !)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Staliadur bihan gwir (n'eus urpmi ebet)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "O prientiñ ar bremanaat ..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "O prientiñ ar staliadur"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "O staliañ ar pakad %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Ur fazi zo bet en ur rummañ pakadoù :"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Kenderc'hel evelato ?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Adklask"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Tremen e-biou ar pakad-mañ"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "Tremen e-biou pep pakad eud ar vedium « %s »"
+msgstr "Tremen e-biou pep pakad eus ar vediom « %s »"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Distro da ziuzadenn ar pakadoù hag ar media"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Ur fazi zo bet en ur staliañ ar pakad %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Kefluniadur goude staliañ"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
-msgstr "Bremañaat"
+msgstr "Bremanaat"
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
-#: steps_interactive.pm:735
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Ar pakadoù a-heul zo war-nes bezañ staliet"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Adklask ?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Bet ez eus bet ur fazi en ur ouzhpennañ ar mediom"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1243,132 +1397,105 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Moien zo dit da bellkargañ ar pakadoù bremañaet. Bremañaet e oa ar\n"
+"Moaien zo dit da bellgargañ ar pakadoù bremanaet. Bremanaet e oa ar\n"
"pakadoù-mañ goude e oa echu an ingaladur. Gallout a ra kaout difazioù\n"
"surentez pe difazioù bogoù.\n"
"\n"
-"Red eo da gaout ur gevreadenn bev ouzh internet evit staliañ anezho.\n"
+"Ret eo da gaout ur gevreadenn bev ouzh internet evit staliañ anezho.\n"
"\n"
"Mennout a rit staliañ anezho ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s war %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Periantel"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Kartenn gwelet"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Hag ur gartenn gwelet ISA hoc'h eus ?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Seveniñ « alsaconf » pe « sndconfig » goude staliañ evit kefluniañ ho kartenn "
-"klevet"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"N'eus kartenn gwelet kavet ebet. Kargañ « harddrake » goude ar staliadur"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Ketal kevregañ"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Rouedad hag Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proksioù"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "kefluniet"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Live an surentez"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Moger tan"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "bevaatet"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "diweredekaet"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "N'eo ket kefluniet X. Ha fellout a ra deoc'h da vat ober an dra-mañ ?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "O prientiñ ar c'harger loc'hañ ..."
+msgid "Preparing initial startup program..."
+msgstr "O prientiñ ar programm loc'hañ ..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
+msgstr "Gortozit mar plij ; gellout a rafe bezañ hir ..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Lakait ur bladennig gwerc'h el lenner %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "O krouiñ ur bladennig staliañ emgefreek ..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1379,12 +1506,12 @@ msgstr ""
"\n"
"Mennout a rit kuitaat da vat bremañ ?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Brav"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Adlañsañ"
@@ -1400,7 +1527,7 @@ msgstr "Yezh"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Troidigezh"
#: steps_list.pm:17
#, c-format
@@ -1449,7 +1576,7 @@ msgstr "Diogelroez"
msgid ""
"_: Keep these entry short\n"
"Partitioning"
-msgstr "O parzhañ"
+msgstr "Parzhañ"
#: steps_list.pm:27 steps_list.pm:28
#, c-format
@@ -1463,14 +1590,14 @@ msgstr "O furmadiñ"
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr "Choazh ar pakadoù"
+msgstr "Choaz ar pakadoù"
#: steps_list.pm:31
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "O staliañ"
+msgstr "Staliañ"
#: steps_list.pm:34
#, c-format
@@ -1479,13 +1606,6 @@ msgid ""
"Users"
msgstr "Arveriaded"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rouedad"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1505,7 +1625,7 @@ msgstr "Kefluniañ X"
msgid ""
"_: Keep these entry short\n"
"Summary"
-msgstr "Evit diverriñ"
+msgstr "Diverradenn"
#: steps_list.pm:44 steps_list.pm:45
#, c-format
@@ -1519,7 +1639,7 @@ msgstr "Servijoù"
msgid ""
"_: Keep these entry short\n"
"Updates"
-msgstr "Bremañaat"
+msgstr "Bremanaat"
#: steps_list.pm:48
#, c-format
@@ -1528,132 +1648,25 @@ msgid ""
"Exit"
msgstr "Kuitaat"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Oc'h enkargañ ar restr %s ..."
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Burev IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "O taremprediñ ar melezour evit kaout roll ar pakadoù hegerz ..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Ne m'eus ket daremprediñ ar melezour %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Krouiñ ur bladennig staliañ emgefreek"
-
-#~ msgid "Replay"
-#~ msgstr "Adseniñ"
-
-#~ msgid "Automated"
-#~ msgstr "Emgefreek"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Enrollañ diuzadenn an pakadoù"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL ar melezour ?"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Mennout a rit implijout aboot ?"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Dao en deus an URL kregiñ gant ftp:// pe http://"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Fazi en ur staliañ aboot,\n"
-#~ "klask rediañ ar staliadur zoken ma tistruj ar parzhadur kentañ ?"
-
-#~ msgid "All"
-#~ msgstr "Holl"
+#~ "O taremprediñ lec'hienn %s evit kaout roll ar melezourioù hegerz ..."
-#~ msgid "TV card"
-#~ msgstr "Kartenn pellwel"
-
-#~ msgid "Boot"
-#~ msgstr "Lañsañ"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Dilesadur"
-
-#~ msgid "Arkeia"
-#~ msgstr "Arkeia"
-
-#~ msgid "Flatout"
-#~ msgstr "Flatout"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "3D"
-
-#~ msgid "CMS"
-#~ msgstr "CMS"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "Moger tan Invictus"
-
-#~ msgid "How to register"
-#~ msgstr "Penaos enskrivañ ?"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "Rpmdrake 2"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "Servijoù Mandriva enlinenn"
-
-#~ msgid "New Theme"
-#~ msgstr "Giz nevez"
-
-#~ msgid "Web 2.0"
-#~ msgstr "Web 2.0"
-
-#~ msgid "Kaspersky"
-#~ msgstr "Kaspersky"
-
-#~ msgid "LinDVD"
-#~ msgstr "LinDVD"
-
-#~ msgid "Skype"
-#~ msgstr "Skype"
-
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Transgaming/Cedega"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d pakad, %d Mo)"
-
-#~ msgid "%d packages"
-#~ msgstr "%d pakad"
-
-#~ msgid "Language"
-#~ msgstr "Yezh"
-
-#~ msgid "License"
-#~ msgstr "Aotre"
-
-#~ msgid "Installation class"
-#~ msgstr "Renkad ar staliadur"
-
-#~ msgid "Formatting"
-#~ msgstr "O furmadiñ"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Choazh ar pakadoù"
-
-#~ msgid "Users"
-#~ msgstr "Arveriaded"
-
-#~ msgid "Networking"
-#~ msgstr "Rouedad"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr ""
+#~ "Sac'het en ur zaremprediñ lec'hienn %s evit kaout roll ar melezourioù "
+#~ "hegerz "
-#~ msgid "Configure X"
-#~ msgstr "Kefluniañ X"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Dibabit ur melezour da dapout ar pakadoù diwarnañ"
diff --git a/perl-install/install/share/po/bs.po b/perl-install/install/share/po/bs.po
index a7554c53f..baa779ef5 100644
--- a/perl-install/install/share/po/bs.po
+++ b/perl-install/install/share/po/bs.po
@@ -1,58 +1,82 @@
-# translation of bs.po to Bosnian
-# translation of DrakX-bs.po to Bosnian
-# translation of bs.po to Bosanski
-# translation of DrakX-bs.po to Bosanski
-# Copyright (C) 2001, 2003, 2004, 2005, 2006. Free Software Foundation, Inc.
-# Amila Akagić <bono@lugbih.org>, 06. 2001.
-# Vedran Ljubovic <vljubovic@smartnet.ba>, 2002, 2003, 2004, 2005, 2006.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Vedran Ljubovic <vljubovic@smartnet.ba>, 2002-2006
msgid ""
msgstr ""
-"Project-Id-Version: bs\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2006-09-16 10:33+0200\n"
-"Last-Translator: Vedran Ljubovic <vljubovic@smartnet.ba>\n"
-"Language-Team: Bosnian <lokal@linux.org.ba>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Bosnian (http://www.transifex.com/MageiaLinux/mageia/language/"
+"bs/)\n"
+"Language: bs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Imate li neke dodatne medije?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -65,94 +89,57 @@ msgstr ""
"\n"
"Imate li još neke dodatne medije koje želite podesiti?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "sa CDROMa"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Mreža (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Mreža (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Mreža (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL mirrora?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL mora počinjati sa ftp:// ili http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Kontaktiram Mandriva Linux web stranicu da bih saznao listu dostupnih "
-"mirrora..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Nisam uspio kontaktirati Mandriva Linux web stranicu radi liste dostupnih "
-"mirrora"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Izaberite mirror sa kojeg će biti dobavljeni paketi"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Podešavanje NFS-a"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Molim unesite ime računara i direktorij vašeg NFS medija"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr ""
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr ""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Ime računara sa NFS serverom?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Direktorij"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr ""
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -161,23 +148,90 @@ msgstr ""
"Ne mogu pronaći hdlist datoteku na ovom mirroru. Provjerite da li je "
"lokacija ispravna."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Tražim već instalirane pakete..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Pronalazim pakete za unaprjeđenje..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Uklanjam pakete prije unaprjeđenja..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -191,87 +245,87 @@ msgstr ""
"\n"
"Želite li zaista deinstalirati ove pakete?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Greška u čitanju datoteke %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Sljedeći diskovi su preimenovani:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (ranije pod imenom %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Mreža"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Molim izaberite medij"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Datoteka već postoji. Želite li pisati preko nje?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Nemate dozvolu"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Neispravan NFS naziv"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Neispravan medij %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Ne mogu napraviti snimak ekrana prije particioniranja"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Snimanje ekrana će biti dostupno nakon što instalirate u %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalacija"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Podešavanje"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Morate takođe formatirati i %s"
@@ -296,22 +350,22 @@ msgstr "Pokrećem mrežu"
msgid "Bringing down the network"
msgstr "Zaustavljam mrežu"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopiram neke pakete na disk radi buduće upotrebe"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopiranje u toku"
@@ -341,82 +395,98 @@ msgstr "fino"
msgid "maybe"
msgstr "možda"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Bez opisa"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Došlo je do greške"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Došlo je do fatalne greške: %s"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "Instalacija nije uspjela"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Instaliram paket %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Radna stanica"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Uredska radna stanica"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Uredski programi: obrada teksta (OpenOffice.org Write, KWord), tablični "
-"proračun (OpenOffice.org Calc, KSpread), PDF preglednici itd."
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Uredski programi: obrada teksta (kword, abiword), tablični alati (kspread, "
-"gnumeric), pdf preglednici itd."
+"Uredski programi: obrada teksta (LibreOffice Write, KWord), tablični "
+"proračun (LibreOffice Calc, KSpread), PDF preglednici itd."
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Stanica za igru"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Zabavni programi: arkadne igre, stolne igre, strategije itd."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedijalna stanica"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programi za pregled i editovanje zvuka i videa"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet stanica"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -425,193 +495,193 @@ msgstr ""
"Skup alata za čitanje i slanje pošte i news-a (mutt, tin...) i pregledanje "
"Weba"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Mrežni računar (klijent)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klijenti za razne protokole uključujući ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Alati za lakše podešavanje računara"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Alati za konzolu"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editori, shellovi, alati za datoteke, terminali"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Programiranje"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C i C++ biblioteke, programi i include datoteke"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentacija"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Knjige i howto-i na temu Linuxa i slobodnog softvera"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Podrška za programe trećih lica"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Web server"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet gateway"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Mail/News"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix mail server, Inn news server"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Imenički server"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Serveri domenskih imena i mrežnih informacija"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Server za dijeljenje datoteka i štampača"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS server, Samba server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Baze podataka"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Server PostgreSQL ili MySQL baze podataka"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Server PostgreSQL ili MariaDB baze podataka"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Mail"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix mail server"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL ili MySQL baza podataka"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL ili MariaDB baza podataka"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Mrežni server"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS server, SMB server, Proxy server, ssh server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafičko okruženje"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE radna stanica"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -619,12 +689,12 @@ msgid ""
msgstr ""
"K Desktop Environment, osnovno grafičko okruženje sa izborom pratećih alata"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME radna stanica"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -633,66 +703,109 @@ msgstr ""
"Grafička okolina sa skupom korisnički orjentisanih programa i alata za radnu "
"površinu"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "IceWm okruženje"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Grafička okolina sa skupom korisnički orjentisanih programa i alata za radnu "
-"površinu"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Ostale grafičke okoline"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm itd."
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Alati"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH server"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin server za podešavanje sistema"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Mrežni alati i nadzor"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Alati za nadzor, praćenje procesa, tcpdump, nmap..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva čarobnjaci"
+msgid "Mageia Wizards"
+msgstr "Mageia čarobnjaci"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Čarobnjaci (wizardi) za podešavanje serverâ"
@@ -706,7 +819,7 @@ msgstr ""
"Došlo je do greške, ali ne znam kako da postupim u vezi toga.\n"
"Nastavite na vlastiti rizik."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -716,7 +829,7 @@ msgid ""
msgstr ""
"Neki bitni paketi nisu ispravno instalirani.\n"
"Ili je neispravan vaš CD-ROM uređaj ili vaš CD-ROM medij.\n"
-"Možete provjerite medij na računaru sa instaliranim Mandriva Linuxom\n"
+"Možete provjerite medij na računaru sa instaliranim Mageiaom\n"
"koristeći naredbu \"rpm -qpl media/main/*.rpm\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
@@ -726,253 +839,256 @@ msgstr "Prelazim na korak '%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux instalacija %s"
+msgid "%s Installation %s"
+msgstr "%s instalacija %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> između elemenata"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Vašem sistemu ponestaje resursa. Možda imate neki problem sa instalacijom\n"
-"Mandriva Linuxa. Ako se ovo desi, možete pokušati tekstualnu instalaciju. Za "
-"ovo,\n"
+"%sa. Ako se ovo desi, možete pokušati tekstualnu instalaciju. Za ovo,\n"
"pritisnite 'F1' prilikom pokretanja instalacije, zatim unesite riječ 'text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Minimalna instalacija"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "IceWm okruženje"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm okruženje"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "IceWm okruženje"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Izbor grupe paketa"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Izbor pojedinačnih paketa"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Ukupna veličina: %d / %d MB"
+msgid "Unselect All"
+msgstr "Ništa izabrano"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Neispravan paket"
+msgid "Total size: %d / %d MB"
+msgstr "Ukupna veličina: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Verzija: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Veličina: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Značaj: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Ne možete izabrati/isključiti ovaj paket"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "zbog nedostajućeg %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "zbog nezadovoljenog %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "pokušavam promovirati %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "kako biste zadržali %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Ne možete izabrati ovaj paket jer nema dovoljno prostora za njega"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Sljedeći paketi će biti instalirani"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Sljedeći paketi će biti uklonjeni"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ovo je obavezan paket, ne može biti isključen"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Ne možete isključiti ovaj paket. On je već instaliran"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Ne možete isključiti ovaj paket. On mora biti unaprijeđen"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Automatski prikaži izabrane pakete"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalacija"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Učitajte ili snimite izbor paketa"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Ažuriram spisak paketa"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimalna instalacija"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Programi"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Izaberite pakete koje želite instalirati"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instaliram"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Sakrij detalje"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Preostalo vremena "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Procjenjujem"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d paketa"
-msgstr[1] "%d paketa"
-msgstr[2] "%d paketa"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Ukratko"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Podesi"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "nije podešeno"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Izbor grupe paketa"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -981,84 +1097,84 @@ msgstr ""
"Pronađeni su sljedeći instalacioni mediji.\n"
"Ako želite preskočiti neke od njih, možete ih isključiti sada."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Imate mogućnost da kopirate sadržaj CDova na hard disk prije instalacije.\n"
"Zatim će instalacija biti nastavljena sa hard diska, a paketi će ostati "
"dostupni nakon što sistem bude instaliran."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopiraj čitave CDove"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Došlo je do greške"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Molim izaberite raspored vaše tastature"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Ovdje je puna lista svih dostupnih tastatura"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instaliraj/Unaprijedi"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Da li je ovo instalacija ili unaprjeđenje?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instalacija"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Unaprijedi %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Ključ enkripcije za %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Instalacija"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1067,37 +1183,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Podešavam IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Nema dovoljno slobodnog prostora za 1 MB bootstrap! Instalacija će "
-"nastaviti, ali da biste pokrenuli vaš sistem morate kreirati bootstrap "
-"particiju u DiskDrake-u"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Trebate napraviti PPC PReP Boot bootstrap! Instalacija će nastaviti, ali da "
-"biste pokrenuli vaš sistem morate kreirati bootstrap particiju u DiskDrake-u"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1111,19 +1207,19 @@ msgstr ""
"Ako ga nemate, pritisnite \"Odustani\" da preskočite instalaciju sa tog CD-"
"ROMa."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Tražim dostupne pakete..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1132,52 +1228,52 @@ msgstr ""
"Molim izaberite da li ćete učitati ili snimiti izbor paketa.\n"
"Format je isti kao i diskete koje generiše auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Učitaj"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Snimi"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Neispravna datoteka"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Izbor grupe paketa"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Izabrana veličina je veća od slobodnog prostora"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Vrsta instalacije"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1186,87 +1282,126 @@ msgstr ""
"Niste izabrali nijednu grupu paketa\n"
"Molim izaberite vrstu minimalne instalacije koju želite:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Sa grafikom"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instaliram paket %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Sa osnovnom dokumentacijom (preporučeno)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Stvarno minimalna instalacija (posebno bez urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Pripremam instalaciju"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instaliram paket %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Došlo je do greške pri raspoređivanju paketa:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Da nastavim?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Pokušaj ponovo"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Spasi izbor paketa"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Došlo je do greške kod instaliranja paketa:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Post-instalacijsko podešavanje"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Molim provjerite da je medij za ažuriranje u uređaju %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Ažuriranje"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Sljedeći paketi će biti instalirani"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Neuspjeh u dodavanju medija"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1287,111 +1422,80 @@ msgstr ""
"\n"
"Da li želite instalirati ažurirane pakete ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s na %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Zvučna kartica"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Imate li ISA zvučnu karticu?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Pokrenite \"alsaconf\" ili \"sndconfig\" poslije instalacije kako biste "
-"podesili vašu zvučnu karticu"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Nije otkrivena zvučna kartica. Probajte \"harddrake\" poslije instalacije"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafički interfejs"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Mreža i Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxy-ji"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "podešeno"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Sigurnosni nivo"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktiviran"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "isključen"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Niste podesili X. Sigurno želite uraditi ovo?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "Pripremam bootloader..."
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"Izgleda da imate OldWorld ili Unknown računar, yaboot bootloader neće raditi "
-"kod vas. Instalacija će se nastaviti, ali ćete morati koristiti BootX ili "
-"neki drugi način za bootanje vašeg računara. Argument kernela za root fs je: "
-"root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1400,17 +1504,17 @@ msgstr ""
"Na ovom sigurnosnom nivou, pristup datotekama na Windows particijama je "
"dozvoljen samo administratoru."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Ubacite praznu disketu u jedinicu %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Pravim auto instalacijsku disketu..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1421,12 +1525,12 @@ msgstr ""
"\n"
"Da li zaista želite izaći sada?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Čestitamo"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Restartuj"
@@ -1521,13 +1625,6 @@ msgid ""
"Users"
msgstr "Korisnici"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Mreža"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1570,188 +1667,24 @@ msgid ""
"Exit"
msgstr "Izlaz"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Preuzimam datoteku %s..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Izabrali ste sljedeći server (servere): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Serveri će se pokretati automatski prilikom starta računara. Oni nemaju "
-#~ "nikakvih\n"
-#~ "poznatih sigurnosnih propusta, ali možda će propusti biti otkriveni "
-#~ "naknadno. Ako\n"
-#~ "se to desi, morate ih ažurirati što prije bude moguće.\n"
-#~ "\n"
-#~ "\n"
-#~ "Da li zaista želite instalirati ove servere?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm okruženje"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Kontaktiram mirror da bih saznao listu dostupnih paketa..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Ne mogu pristupiti mirroru %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Napravi autoinstalacijsku disketu"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Ova auto instalacija može biti potpuno automatizovana ako želite,\n"
-#~ "u kojem slučaju će hard disk biti prebrisan\n"
-#~ "(ovo je namjenjeno za instaliranje na drugi računar).\n"
-#~ "\n"
-#~ "Možda ćete radije željeti ponoviti instalaciju.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Ponovi"
-
-#~ msgid "Automated"
-#~ msgstr "Automatizovano"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Spasi izbor paketa"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL mirrora?"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Da li želite koristiti aboot?"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL mora počinjati sa ftp:// ili http://"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Greška u instaliranju aboota, \n"
-#~ "da li da pokušam nasilnu instalaciju čak i ako to uništi prvu particiju?"
-
-#~ msgid "All"
-#~ msgstr "Sve"
-
-#~ msgid "TV card"
-#~ msgstr "TV kartica"
-
-#~ msgid "Boot"
-#~ msgstr "Boot"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Metod autentikacije"
-
-#~ msgid "Arkeia"
-#~ msgstr "Arkeia"
-
-#~ msgid "Flatout"
-#~ msgstr "Flatout"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "3D"
-
-#~ msgid "CMS"
-#~ msgstr "CMS"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "2007 product line"
-#~ msgstr "2007 linija proizvoda"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "Invictus Firewall"
-
-#~ msgid "Discovery Live Mode"
-#~ msgstr "Discovery Live režim"
-
-#~ msgid "How to register"
-#~ msgstr "Kako se registrovati"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "Rpmdrake 2"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "Mandriva Online usluge"
+#~ "Kontaktiram %s web stranicu da bih saznao listu dostupnih mirrora..."
-#~ msgid "New Theme"
-#~ msgstr "Nova tema"
-
-#~ msgid "Web 2.0"
-#~ msgstr "Web 2.0"
-
-#~ msgid "Kaspersky"
-#~ msgstr "Kaspersky"
-
-#~ msgid "LinDVD"
-#~ msgstr "LinDVD"
-
-#~ msgid "Skype"
-#~ msgstr "Skype"
-
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Transgaming/Cedega"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d paketa, %d MB)"
-#~ msgstr[1] "(%d paketa, %d MB)"
-#~ msgstr[2] "(%d paketa, %d MB)"
-
-#~ msgid "%d packages"
-#~ msgstr "%d paketa"
-
-#~ msgid "Language"
-#~ msgstr "Jezik"
-
-#~ msgid "License"
-#~ msgstr "Licenca"
-
-#~ msgid "Installation class"
-#~ msgstr "Klasa instalacije"
-
-#~ msgid "Formatting"
-#~ msgstr "Formatiram"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Izbor paketa"
-
-#~ msgid "Users"
-#~ msgstr "Korisnici"
-
-#~ msgid "Networking"
-#~ msgstr "Mreža"
-
-#~ msgid "Configure X"
-#~ msgstr "Podešavanje X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Ne mogu pristupiti kernelskim modulima koji odgovaraju vašem kernelu "
-#~ "(nedostaje datoteka %s), što obično znači da je vaša boot disketa "
-#~ "zastarjela u odnosu na instalacioni medij (napravite noviju boot disketu)"
+#~ "Nisam uspio kontaktirati %s web stranicu radi liste dostupnih mirrora"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Izaberite mirror sa kojeg će biti dobavljeni paketi"
diff --git a/perl-install/install/share/po/ca.po b/perl-install/install/share/po/ca.po
index 560335b8e..28b6d4a83 100644
--- a/perl-install/install/share/po/ca.po
+++ b/perl-install/install/share/po/ca.po
@@ -1,56 +1,84 @@
-# translation of ca.po to Catalan
-# translation of DrakX.po to Catalan
-# Copyright (C) 2000-2004, 2005 Free Software Foundation, Inc.
-# Softcatala, softcatala.org, 2000-2003
-# Albert Astals Cid <astals11@terra.es>, 2003-2004, 2005.
-#
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Francesc Pinyol Margalef, 2012-2013
+# Davidmp <medipas@gmail.com>, 2015-2020,2023
+# Robert Antoni Buj i Gelonch <rbuj@fedoraproject.org>, 2015,2017-2018
+# Robert Antoni Buj i Gelonch <rbuj@fedoraproject.org>, 2015
msgid ""
msgstr ""
-"Project-Id-Version: ca\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-09-13 23:24+0200\n"
-"Last-Translator: Albert Astals Cid <astals11@terra.es>\n"
-"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Davidmp <medipas@gmail.com>, 2015-2020,2023\n"
+"Language-Team: Catalan (http://app.transifex.com/MageiaLinux/mageia/language/"
+"ca/)\n"
+"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
-"Plural-Forms: nplurals=2; plural=n!=1;\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Adheriu-vos-hi!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Feu-lo vostre!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "La vostra tria!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Eines d'oficina"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Oci de la llar"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Per als nens"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Per a la família!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Per als desenvolupadors!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Gràcies!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Sigueu lliures!"
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr ""
+msgstr "Teniu més mitjans suplementaris?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -58,118 +86,163 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
+"S'han trobat els següents mitjans i es faran servir durant la instal·lació: "
+"%s\n"
+"\n"
+"\n"
+"Teniu algun mitjà d'instal·lació suplementari per a configurar?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Xarxa (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Xarxa (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Xarxa (NFS)"
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
-msgstr "URL de la rèplica?"
+msgid "NFS setup"
+msgstr "Configuració NFS"
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr ""
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr "Introduïu el nom d'amfitrió i el directori del vostre mitjà NFS"
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"S'està contactant amb el servidor Mandriva Linux per obtenir la llista de "
-"rèpliques disponibles..."
+msgid "Hostname missing"
+msgstr "Falta el nom d'amfitrió"
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr "El directori ha de començar amb «/»"
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr "Nom d'amfitrió del muntatge NFS?"
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Directori"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr "Addicional"
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"S'està contactant amb el servidor Mandriva Linux per obtenir la llista de "
-"rèpliques disponibles..."
+"No s'ha pogut trobar el llistat dels paquets en aquesta rèplica. Assegureu-"
+"vos que la ubicació és correcta."
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Escolliu una rèplica des de la qual aconseguir els paquets"
+msgid "Core Release"
+msgstr "Core Release"
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
-msgstr ""
+msgid "Tainted Release"
+msgstr "Tainted Release"
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
-msgstr ""
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
+"Algun maquinari de l'ordinador requereix microprogramari no lliure perquè "
+"els controladors lliures funcionin."
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
-msgstr ""
+msgid "You should enable \"%s\""
+msgstr "Hauríeu d'habilitar «%s»"
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
+"«%s» conté els diversos components dels sistemes i les seves aplicacions"
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Directori"
+msgid "\"%s\" contains non free software.\n"
+msgstr "«%s» conté programari no lliure.\n"
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
+"També conté microprogramari necessari per al funcionament d'alguns "
+"dispositius (per exemple: algunes targetes gràfiques ATI/AMD, algunes "
+"targetes de xarxa, algunes targetes RAID, etc.)"
-#: any.pm:295
+#: any.pm:422
#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "No s'ha pogut trobat el fitxer hdlist en aquest rèplica"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"«%s» conté programari que no es pot distribuir a tots els països per culpa "
+"de les patents de programari."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "També conté programari de «%s» recompilat amb capacitats addicionals."
-#: any.pm:334
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Aquí podeu habilitar més mitjans, si ho voleu."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Aquest mitjà proporciona actualitzacions de paquets per al mitjà «%s»"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "S'estan cercant els paquets ja instal·lats..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "S'estan cercant els paquets a actualitzar"
+msgstr "S'estan cercant els paquets a actualitzar..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr ""
+msgstr "S'estan suprimint els paquets abans de l'actualització..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -177,92 +250,92 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Se suprimiran els següents paquets per poder actualitzar el sistema: %s\n"
+"Se suprimiran els paquets següents per poder actualitzar el sistema: %s\n"
"\n"
"\n"
-"Voleu realment suprimir aquests paquets?\n"
+"Realment voleu suprimir aquests paquets?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "S'ha produït un error en llegir el fitxer %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr ""
+msgstr "El(s) següent(s) disc(s) ha(n) estat reanomenat(s):"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
-msgstr ""
+msgstr "%s (abans anomenat %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Xarxa"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Si us plau escolliu"
+msgstr "Escolliu un mitjà"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "El fitxer ja existeix. El voleu sobreescriure?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "S'ha denegat el permís"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Nom NFS incorrecte"
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "s'ha afegit la font %s"
+msgstr "Mitjà incorrecte %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "No es poden fer captures de pantalla abans de fer les particions"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Les captures estaran disponibles després d'instal·lar a %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "S'està instal·lant"
+msgstr "Instal·lació"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configuració"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "També heu de formatar %s"
@@ -274,7 +347,7 @@ msgid ""
"You can find some information about them at: %s"
msgstr ""
"Part del maquinari del vostre ordinador necessita controladors\n"
-"\"registrats\" per poder funcionar. Podeu trobar-ne informació a: %s"
+"«registrats» per poder funcionar. Podeu trobar-ne informació a: %s"
#: interactive.pm:22
#, c-format
@@ -286,25 +359,25 @@ msgstr "S'està activant la xarxa"
msgid "Bringing down the network"
msgstr "S'està desactivant la xarxa"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "S'està recuperant el fitxer"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "no s'ha pogut afegir el mitjà"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr ""
+msgstr "S'estan copiant alguns paquets al disc per a un ús futur"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
-msgstr "Còpia en procés"
+msgstr "Còpia en curs"
#: pkgs.pm:32
#, c-format
@@ -331,278 +404,297 @@ msgstr "bonic"
msgid "maybe"
msgstr "potser"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "S'està obtenint informació del paquet des de les metadades XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"No s'ha trobat informació xml per al mitjà «%s»; només el resultat parcial "
+"per al paquet %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Cap descripció"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
+"Alguns paquets sol·licitats per %s no es poden instal·lar:\n"
+"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "S'ha produït un error"
+msgstr "S'ha produït un error:"
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "S'ha produït un error fatal: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "No tornar a preguntar"
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "Instal·lació fallida"
+msgstr "Han fallat %d transaccions d'instal·lació"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "S'està instal·lant el paquet %s"
+msgstr "La instal·lació de paquets ha fallat:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Estació de treball"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Estació de treball d'oficina"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programes d'ofimàtica: processadors de textos (OpenOffice.org Writer, "
-"Kword), fulls de càlcul (OpenOffice.org Calc, Kspread), visualitzadors pdf, "
-"etc."
+"Programes d'ofimàtica: processadors de textos (LibreOffice Writer, Kword), "
+"fulls de càlcul (LibreOffice Calc, Kspread), visualitzadors PDF, etc."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Programes d'ofimàtica: processadors de textos (kword, abiword), fulls de "
-"càlcul (kspread, gnumeric), visualitzadors pdf, etc."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Estació de jocs"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programes d'entreteniment: acció, jocs de taula, estratègia, etc."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Estació multimèdia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programes de reproducció/edició de so i vídeo"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Estació d'Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Conjunt d'eines per llegir i enviar correu i notícies (mutt, tin...) i per "
-"navegar pel Web"
+"Conjunt d'eines per llegir i enviar correu i notícies (mutt, tin, etc.) i "
+"per navegar pel Web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Ordinador de xarxa (client)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Clients per a diferents protocols, incloent l'ssh"
+msgstr "Clients per a diferents protocols, incloent-hi l'ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Eines per facilitar la configuració de l'ordinador"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Eines de consola"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "Editors, intèrprets d'ordres, eines de fitxer, terminals"
+msgstr "Editors, shells, eines de fitxer, terminals"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Desenvolupament"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Biblioteques de desenvolupament C i C++, programes i fitxers include"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentació"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Llibres i Com es fa... sobre el Linux i el programari lliure"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Base Estàndard de Linux (LSB). Suport a aplicacions de tercers"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Servidor Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Servidor Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Tallafoc/Encaminador"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Passarel·la a Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Correu/Notícies"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Servidor de correu Postfix, Servidor de noticies Inn"
+msgstr "Servidor de correu Postfix, servidor de notícies Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Servidor de directori"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Servidor FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Servidor de Noms de Domini i d'Informació de la Xarxa (DNS/NIS)"
+msgstr "Servidor de noms de domini i d'informació de la xarxa (DNS/NIS)"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Servidor de compartició de fitxers i impressores"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
-msgstr "Servidor NFS, Servidor Samba"
+msgstr "Servidor NFS, servidor Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Base de dades"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Servidor de bases de dades PostgreSQL i MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Servidor de bases de dades PostgreSQL i MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache i Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Correu"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Servidor de correu Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Servidor de bases de dades PostgreSQL o MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Servidor de bases de dades PostgreSQL o MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Servidor d'ordinador de xarxa"
+msgstr "Ordinador de xarxa (servidor)"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "Servidor NFS, Servidor SMB, Servidor Proxy, Servidor SSH"
+msgstr "Servidor NFS, servidor SMB, servidor intermediari, servidor SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Entorn gràfic"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Estació de treball KDE"
+msgid "Plasma Workstation"
+msgstr "Estació de treball Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -611,12 +703,12 @@ msgstr ""
"L'entorn d'escriptori K (KDE), l'entorn gràfic bàsic que inclou diverses "
"eines"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Estació de treball GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -625,67 +717,111 @@ msgstr ""
"Entorn gràfic amb un conjunt d'aplicacions i eines d'escriptori fàcil "
"d'utilitzar"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Escriptori IceWm"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Estació de treball Xfce"
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Entorn gràfic amb un conjunt d'aplicacions i eines d'escriptori fàcil "
-"d'utilitzar"
+"Entorn gràfic més lleuger amb un conjunt d'aplicacions i eines d'escriptori "
+"fàcil d'utilitzar"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Estació de treball MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Estació de treball Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Entorn gràfic basat en GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Escriptori LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Un port QT de propera generació de l'entorn d'escriptori lleuger"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Escriptori Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Un entorn gràfic lleuger i ràpid amb un seguiment dedicat"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Escriptori LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Un entorn gràfic ràpid i lleuger"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Altres escriptoris gràfics"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, etc."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilitats"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Servidor SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr ""
+msgstr "Servidor remot de configuració de Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Utilitats de xarxa/Monitorització"
+msgstr "Utilitats/monitoratge de la xarxa"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr ""
+msgstr "Eines de monitoratge, comptatge de processos, tcpdump, nmap, etc."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Auxiliars de Mandriva"
+msgid "Mageia Wizards"
+msgstr "Auxiliars de Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Auxiliars per configurar el servidor"
@@ -699,18 +835,18 @@ msgstr ""
"S'ha produït un error, però no sé com gestionar-lo correctament.\n"
"Si continueu, és sota la vostra responsabilitat."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Alguns paquets importants no s'han instal·lat correctament.\n"
"La vostra unitat de CD-ROM, o bé el CD-ROM, són defectuosos.\n"
-"Comproveu el CD-ROM en un ordinador instal·lat mitjançant \"rpm -qpl media/"
-"main/*.rpm\"\n"
+"Comproveu el CD-ROM en un ordinador instal·lat mitjançant «rpm -qpl media/"
+"main/*.rpm»\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
@@ -719,336 +855,345 @@ msgstr "S'està entrant en el pas '%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Instal·lació del Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Instal·lació de %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> entre elements"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr ""
+msgstr "El servidor Xorg triga a arrencar. Espereu..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"El vostre sistema està baix de recursos; podeu tenir algun problema en\n"
-"instal·lar el Mandriva Linux. Si això passa, podeu provar d'instal·lar-lo "
-"en\n"
+"instal·lar %s. Si això passa, podeu provar d'instal·lar-lo en\n"
"mode text. Per fer-ho, premeu 'F1' en arrencar des del CD-ROM i escriviu "
"'text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr ""
+msgid "Media Selection"
+msgstr "Selecció de mitjans"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr ""
+msgid "Install %s Plasma Desktop"
+msgstr "Instal·la %s l'escriptori Plasma"
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Instal·la %s l'escriptori GNOME"
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Instal·lació mínima"
+msgstr "Instal·lació personalitzada"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Escriptori IceWm"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Escriptori Plasma"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Escriptori IceWm"
+msgstr "Escriptori GNOME"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Escriptori IceWm"
+msgstr "Escriptori personalitzat"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Aquesta és una vista prèvia de l'escriptori '%s'."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Feu clic a les imatges per a veure una vista prèvia més gran."
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "Selecció del grup de paquets"
+msgstr "Selecció de grups de paquets"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Selecció individual de paquets"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Mida total: %d / %d MB"
+msgid "Unselect All"
+msgstr "Desselecciona-ho tot"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Paquet incorrecte"
+msgid "Total size: %d / %d MB"
+msgstr "Mida total: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versió: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
-msgstr "Mida:"
+msgstr "Mida: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d kB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
-msgstr "Importància:"
+msgstr "Importància: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "No podeu seleccionar/desseleccionar aquest paquet"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "degut a que falten %s"
+msgstr "perquè falten %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "degut a %s no satisfetes"
+msgstr "a causa de la insatisfacció %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr ""
+msgstr "s'està intentant promoure %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
-msgstr "per tal de mantenir %s"
+msgstr "per mantenir %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"No podeu seleccionar aquest paquet perquè no queda prou espai per instal·lar-"
"lo"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Ara s'instal·laran els paquets següents"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
-msgstr "Ara s'eliminaran els paquets següents"
+msgstr "Se suprimiran els paquets següents"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Aquest paquet és obligatori; no es pot desseleccionar"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "No podeu desseleccionar aquest paquet; ja està instal·lat"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "No podeu desseleccionar aquest paquet; s'ha d'actualitzar"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Mostra automàticament els paquets seleccionats"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instal·la"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Carrega/Desa la selecció"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "S'està actualitzant la selecció de paquets"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Commuta entre la llista de paquets jeràrquica i la neta"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Instal·lació mínima"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Gestor de programari"
+msgstr "Gestió de programari"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Escolliu els paquets que voleu instal·lar"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
-msgstr "S'està instal·lant"
+msgstr "Instal·lació"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Sense detalls"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Temps restant "
+msgstr "Temps restant:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "S'està estimant"
+msgstr "(s'està estimant...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d paquet"
msgstr[1] "%d paquets"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Resum"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configura"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
-msgstr "no configurat(da)"
+msgstr "sense configurar"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Selecció del grup de paquets"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
+"S'han trobat els següents mitjans d'instal·lació.\n"
+"Si en voleu ometre alguns, els podeu desseleccionar ara."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
+"Teniu l'opció de copiar el contingut dels CD al disc dur abans de la "
+"instal·lació.\n"
+"Llavors es continuarà des del disc dur i els paquets continuaran disponibles "
+"un cop el sistema estigui instal·lat."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr "Copia els CDs sencers"
+msgstr "Copia els CD sencers"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "S'ha produït un error"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Si us plau, seleccioneu la disposició del vostre teclat"
+msgstr "Seleccioneu la disposició del vostre teclat"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Aquesta és la llista completa de teclats disponibles"
+msgstr "Aquesta és la llista completa de teclats disponibles:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instal·la/Actualitza"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Es tracta d'una instal·lació o d'una actualització?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Instal·la"
+msgstr "Instal·lació"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Actualitza %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Clau de xifratge per a %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Cancel·la la instal·lació, reinicia el sistema"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "S'està instal·lant"
+msgstr "Nova instal·lació"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Actualitza la instal·lació anterior (no recomanable)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1056,39 +1201,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
+"L'instal·lador ha detectat que el vostre Linux instal·lat no es pot "
+"actualitzar a %s de forma segura.\n"
+"\n"
+"Es recomana una nova instal·lació que substitueixi l'anterior.\n"
+"\n"
+"Avís: hauríeu de fer una còpia de seguretat de les vostres dades personals "
+"abans de triar «Nova instal·lació»."
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "S'està configurant l'IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"No hi ha prou espai lliure per un 1MB de bootstrap! La instal·lació "
-"continuarà, però per iniciar el sistema necessitareu crear la partició de "
-"bootstrap amb el DiskDrake"
-
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"No hi ha prou espai lliure per un 1MB de bootstrap! La instal·lació "
-"continuarà, però per iniciar el sistema necessitareu crear la partició de "
-"bootstrap amb el DiskDrake"
+msgid "Configuring CD/DVD"
+msgstr "Configuració de CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1097,79 +1228,80 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
"Canvieu el Cd-Rom!\n"
-"Si us plau, inseriu el CD-ROM etiquetat com \"%s\" a la unitat i després\n"
+"Inseriu el CD-ROM etiquetat com a «%s» a la unitat i després\n"
"premeu D'acord.\n"
"Si no el teniu, premeu Cancel·la per no fer la instal·lació des d'aquest Cd-"
"Rom."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "S'estan cercant els paquets disponibles..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
+"El vostre sistema no té prou espai de disc lliure per a la instal·lació o "
+"actualització (%d MB > %d MB)"
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Si us plau, carregueu o deseu la selecció de paquets en el disquet.\n"
-"El format és el mateix que en els disquets generats d'instal·lació "
-"automàtica."
+"Trieu carregar o desar la selecció de paquets.\n"
+"El format és el mateix que el dels fitxers generats per auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "Càrrega"
+msgstr "Carrega"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Desa"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Fitxer incorrecte"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Selecció del grup de paquets"
+msgstr "Selecció de l'escriptori"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
+msgstr "Podeu triar el vostre perfil d'escriptori d'estació de treball."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "La mida seleccionada és superior a la disponible"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tipus d'instal·lació"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1178,87 +1310,130 @@ msgstr ""
"No heu seleccionat cap grup de paquets.\n"
"Escolliu la instal·lació mínima que voleu:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Amb X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "S'està instal·lant el paquet %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Instal·la els paquets recomanats"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Amb la documentació bàsica (recomanat!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Instal·lació realment mínima (especialment no urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "S'està preparant l'actualització..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "S'està preparant la instal·lació"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "S'està instal·lant el paquet %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "S'ha produït un error en ordenar els paquets:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
-msgstr "Voleu seguir igualment?"
+msgstr "Voleu continuar tanmateix?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr ""
+msgstr "Reintenta"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr ""
+msgstr "Omet aquest paquet"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr ""
+msgstr "Omet tots els paquets del mitjà «%s»"
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Desa la selecció de paquets"
+msgstr "Torna enrere cap a la selecció de mitjans i paquets"
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "S'ha produït un error en instal·lar els paquets:"
+msgstr "S'ha produït un error en la instal·lació del paquet %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Configuració posterior a la instal·lació"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr ""
+msgstr "Assegureu-vos que el mitjà Actualitza Mòduls és a la unitat %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Actualitzacions"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Ara teniu l'oportunitat de configurar mitjans en línia."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Això us permet instal·lar actualitzacions de seguretat."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Per configurar aquests mitjans, us caldrà tenir una connexió a Internet "
+"funcional.\n"
+"\n"
+"Voleu configurar el mitjà d'actualització?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Aquest descarregador no s'ha pogut instal·lar."
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Ho torno a intentar?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Fallada en afegir un mitjà"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1280,131 +1455,99 @@ msgstr ""
"\n"
"Voleu instal·lar les actualitzacions?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s a %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Maquinari"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Targeta de so"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Teniu una targeta de so ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Executeu \"alsacont\" després de la instal·lació per configurar la targeta "
-"de so"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"No s'ha detectat cap targeta de so. Proveu amb \"harddrake\" després de la "
-"instal·lació"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interfície gràfica"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Xarxa i Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Intermediaris"
+msgstr "Servidors intermediaris"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "configurat"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
-msgstr "Nivell de seguretat:"
+msgstr "Nivell de seguretat"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Tallafoc"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "activat"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
-msgstr "inhabilita"
+msgstr "inhabilitat"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "No heu configurat X. Segur que ho voleu així?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "S'està preparant el carregador de l'arrencada..."
+msgid "Preparing initial startup program..."
+msgstr "S'està preparant el programa d'arrencada..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Sembla que teniu un OldWorld o una màquina\n"
-"desconeguda; el carregador d'arrencada yaboot no us funcionarà.\n"
-"La instal·lació continuarà, però us caldrà utilitzar el BootX\n"
-"o algun altre mètode per arrencar l'ordinador"
+msgstr "Tingueu paciència, això pot trigar una estona..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"En quest nivell de seguretat, l'accés a les particions de Windows està "
+"En aquest nivell de seguretat, l'accés a les particions de Windows està "
"restringit a l'administrador."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Inseriu un disquet en blanc a la unitat %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "S'està creant el disquet d'instal·lació automàtica"
+msgstr "S'està creant el disquet d'instal·lació automàtica..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1413,14 +1556,14 @@ msgid ""
msgstr ""
"Alguns passos no s'han completat.\n"
"\n"
-"Segur que voleu sortir ara?"
+"Esteu segur que voleu sortir ara?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Felicitats"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Reinicia"
@@ -1431,12 +1574,12 @@ msgstr "Reinicia"
msgid ""
"_: Keep these entry short\n"
"Language"
-msgstr "Escolliu el vostre idioma"
+msgstr "Llengua"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Localització"
#: steps_list.pm:17
#, c-format
@@ -1464,7 +1607,7 @@ msgstr "Detecció del disc dur"
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr ""
+msgstr "Classe d'instal·lació"
#: steps_list.pm:23
#, c-format
@@ -1485,28 +1628,28 @@ msgstr "Seguretat"
msgid ""
"_: Keep these entry short\n"
"Partitioning"
-msgstr "Particionament"
+msgstr "Particions"
#: steps_list.pm:27 steps_list.pm:28
#, c-format
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr ""
+msgstr "Formatació"
#: steps_list.pm:29
#, c-format
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr ""
+msgstr "Tria de paquets"
#: steps_list.pm:31
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "S'està instal·lant"
+msgstr "Instal·lació"
#: steps_list.pm:34
#, c-format
@@ -1515,13 +1658,6 @@ msgid ""
"Users"
msgstr "Usuaris"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Xarxa"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1534,7 +1670,7 @@ msgstr "Carregador d'arrencada"
msgid ""
"_: Keep these entry short\n"
"Configure X"
-msgstr "Configura l'X"
+msgstr "Configura les X"
#: steps_list.pm:42
#, c-format
@@ -1563,148 +1699,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Surt"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "S'està descarregant el fitxer %s..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Heu seleccionat el(s) servidor(s) següent(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Aquests servidors estan activats per defecte. No tenen cap problema de "
-#~ "seguretat\n"
-#~ "conegut, però se'n podrien trobar de nous. Si fos així, caldrà que els "
-#~ "actualitzeu\n"
-#~ "tan aviat com sigui possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Voleu realment instal·lar aquests servidors?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Escriptori IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "S'està contactant amb la rèplica per obtenir la llista dels paquets "
-#~ "disponibles..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "No es pot contactar amb la rèplica: %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Genera un disquet per a la instal·lació automàtica"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Si ho desitgeu, la instal·lació automàtica es pot\n"
-#~ "automatitzar completament, però en aquest cas\n"
-#~ "prendrà el control del disc dur!\n"
-#~ "(Això està pensat per a la instal·lació en un altre ordinador.)\n"
-#~ "\n"
-#~ "Potser preferireu repetir la instal·lació.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Repeteix"
-
-#~ msgid "Automated"
-#~ msgstr "Automàtica"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Desa la selecció de paquets"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Voleu utilitzar l'aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "S'ha produït un error en instal·lar l'aboot. \n"
-#~ "Voleu intentar igualment la instal·lació encara que això destrueixi la "
-#~ "primera partició?"
-
-#~ msgid "All"
-#~ msgstr "Tot"
-
-#~ msgid "TV card"
-#~ msgstr "Targeta de TV"
-
-#~ msgid "Boot"
-#~ msgstr "Arrencada"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Autenticació"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#, fuzzy
-#~ msgid "Invictus Firewall"
-#~ msgstr "Tallafocs interactiu"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d paquet, %d MB)"
-#~ msgstr[1] "(%d paquets, %d MB)"
-
-#~ msgid "%d packages"
-#~ msgstr "%d paquets"
-
-#~ msgid "Language"
-#~ msgstr "Escolliu el vostre idioma"
-
-#~ msgid "License"
-#~ msgstr "Llicència"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Tipus d'instal·lació"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "S'està estimant"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Paquets a instal·lar"
-
-#~ msgid "Users"
-#~ msgstr "Usuaris"
-
-#~ msgid "Networking"
-#~ msgstr "Xarxa"
-
-#~ msgid "Configure X"
-#~ msgstr "Configura l'X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "No es pot accedir als mòduls del nucli corresponents al vostre nucli (no "
-#~ "s'ha trobat el fitxer %s). Això generalment vol dir que el vostre disquet "
-#~ "d'arrencada no està sincronitzat amb el suport d'instal·lació (si us "
-#~ "plau, creeu un nou disquet d'arrencada)"
diff --git a/perl-install/install/share/po/cs.po b/perl-install/install/share/po/cs.po
index 327a9b26d..c61e02693 100644
--- a/perl-install/install/share/po/cs.po
+++ b/perl-install/install/share/po/cs.po
@@ -1,55 +1,85 @@
-# Translation of cs.po to Czech
-# Copyright (C) 1999,2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Radek Vybiral <Radek.Vybiral@vsb.cz>, 2000, 2001-2003.
-# Michal Bukovjan <bukm@centrum.cz>, 2002-2003, 2004, 2005, 2006, 2007, 2008, 2009.
+# Translators:
+# Appukonrad <appukonrad@gmail.com>, 2013
+# Appukonrad <appukonrad@gmail.com>, 2013-2014
+# Luděk Janča <joelp@email.cz>, 2016-2020,2022-2023
+# fri, 2013,2015-2017,2019-2020
msgid ""
msgstr ""
-"Project-Id-Version: cs\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-09 22:43+0200\n"
-"Last-Translator: Michal Bukovjan <bukm@centrum.cz>\n"
-"Language-Team: Czech <cs@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Luděk Janča <joelp@email.cz>, 2016-2020,2022-2023\n"
+"Language-Team: Czech (http://app.transifex.com/MageiaLinux/mageia/language/"
+"cs/)\n"
+"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n "
+"<= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Připojte se k nám!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Učiňte systém svým!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Dle vašeho výběru!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Kancelářské nástroje"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Domácí zábava"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Pro děti"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Pro rodinu"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Pro vývojáře"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Děkujeme"
-#: any.pm:109
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Svobodu!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Máte ještě nějaké další doplňující zdroje?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -62,93 +92,57 @@ msgstr ""
"\n"
"Chcete nastavit ještě nějaké další doplňující instalační zdroje?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Síť (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Síť (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Síť (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL zrcadla?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL musí začínat na ftp:// nebo http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Kontaktuji web Mandriva Linux pro získání seznamu dostupných zrcadel..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Selhalo kontaktování webu Mandriva Linux pro získání seznamu dostupných "
-"zrcadel"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Zvolte si zrcadlo (mirror) pro stahování balíčků"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Nastavení NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr "Zadejte prosím název počítače a adresář vašeho zařízení NFS"
+msgstr "Zadejte, prosím, název počítače a adresář vašeho zařízení NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Chybí název počítače"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Adresář musí začínat znakem \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Název počítače připojení NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Adresář"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Dodatečný"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -157,23 +151,97 @@ msgstr ""
"Nelze nalézt soubor hdlist na tomto zrcadle. Ujistěte se, že umístění je "
"správné."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Vydání Core"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Vydání Tainted"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Vydání Nonfree"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Některý hardware ve vašem počítači potřebuje nesvobodný firmware, aby "
+"fungovaly svobodné ovladače."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Měli byste povolit \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" obsahuje různé kousky systému a jeho programů"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" obsahuje nesvobodný software.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Obsahuje také firmware potřebný pro funkci určitých zařízení (např.: některé "
+"grafické karty ATI/AMD, některé síťové karty, některé karty RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" obsahuje software, který nemůže být distribuován ve všech zemích "
+"kvůli softwarovým patentům."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Obsahuje také software z \"%s\", znovu sestavený s doplňujícími funkcemi."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Zde můžete, pokud chcete, povolit více zdrojů."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Tyto zdroje poskytují aktualizace balíčků pro \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Prohledávám již instalované balíčky..."
+msgstr "Prohledávají se již nainstalované balíčky..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Vyhledávám balíčky pro aktualizaci..."
+msgstr "Vyhledávají se balíčky pro aktualizaci..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Odstraňují se balíčky před aktualizací..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -186,87 +254,87 @@ msgstr ""
"\n"
"Opravdu chcete odebrat tyto balíčky?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Chyba při čtení souboru %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Následující disk(y) byly přejmenovány:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (předchozí název %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Síť"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Prosím vyberte zdroj"
+msgstr "Vyberte, prosím, zdroj"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Soubor již existuje. Přepsat?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Přístup odepřen"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Chybný název NFS"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Chybný zdroj %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Nelze provést sejmutí obrazovky před rozdělením disků"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Sejmuté obrazovky budou dostupné po instalaci v adresáři %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalace"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Nastavení"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Musíte také naformátovat %s"
@@ -277,36 +345,35 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Některé části vašeho hardware potřebují pro svoji práci 'proprietární' "
-"ovladače.\n"
+"Některý hardware potřebuje pro svoji práci \"proprietární\" ovladače.\n"
"Další informace o těchto ovladačích můžete nalézt na: %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "Startuji síť"
+msgstr "Spouští se síť"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "Zastavuji síť"
+msgstr "Zastavuje se síť"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "Prosím počkejte, získávám soubor"
+msgstr "Prosím počkejte, získává se soubor"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "nelze přidat zdroj"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr "Kopíruji některé balíčky na disky pro budoucí použití"
+msgstr "Kopírují se některé balíčky na disky pro budoucí použití"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Probíhá kopírování"
@@ -336,7 +403,23 @@ msgstr "nedůležité"
msgid "maybe"
msgstr "může se hodit"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Získávají se informace o balíku z popisných dat XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Chybí XML informace pro zdroj \"%s\", pouze částečný výsledek pro balíček %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Žádný popis"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -345,352 +428,398 @@ msgstr ""
"Některé z balíčků vyžádaných od %s nelze nainstalovat:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Nastala chyba:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Vyskytla se fatální chyba: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Více se již neptat"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d instalačních procesů selhalo"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Instalace balíčků selhala:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Pracovní stanice"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Kancelářská stanice"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programy pro kancelář: textové procesory (OpenOffice.org Writer, Kword), "
-"tabulkové procesory (OpenOffice.org Calc, Kspread), prohlížeče PDF a další"
+"Programy pro kancelář: textové procesory (LibreOffice Writer, Kword), "
+"tabulkové procesory (LibreOffice Calc, Kspread), prohlížeče PDF a další"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Programy pro kancelář: textové procesory (KWord, Abiword), tabulkové "
-"procesory (KSpread, Gnumeric), prohlížeče PDF a další"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Hry"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Zábavné programy: deskové hry, strategie, atd."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimediální stanice"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Programy pro přehrávání/editaci zvuku a videa"
+msgstr "Programy pro přehrávání/upravování zvuku a obrazu"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internetová stanice"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Soubor nástrojů pro čtení a posílaní el. pošty a příspěvků do diskusních "
-"skupin (mutt, tin..) a pro prohlížení Webu"
+"Soubor nástrojů pro čtení a posílaní elektronické pošty a příspěvků do "
+"diskusních skupin (mutt, tin..) a pro prohlížení Webu"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Síťový počítač (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klienti pro různé verze protokolu ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Nástroje pro snadnou konfiguraci počítače"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konzolové nástroje"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editory, shelly, souborové nástroje, terminály"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Vývoj"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Knihovny pro vývoj v C a C++, programy a hlavičkové soubory"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentace"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Knihy a Howto o Linuxu a Svobodném Software"
+msgstr "Knihy a praktické rady, jak na to, o Linuxu a Svobodném Software"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Standardní Báze Linuxu (LSB): Podpora aplikací jiných dodavatelů"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Webový server"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Server Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
-msgstr "Firewall/Router"
+msgstr "Firewall/Router (směrovač)"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internetová brána"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Pošta/Diskusní skupiny"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Poštovní server Postfix, server diskusních skupin Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Server adresářových služeb"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Server FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Server pro domény a síťové informace"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Server pro sdílení souborů a tiskáren"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Server NFS, server Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Databáze"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Databázové servery PostgreSQL a MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Databázové servery PostgreSQL a MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache a Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Pošta"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Poštovní server Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Databázové servery PostgreSQL nebo MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Databázové servery PostgreSQL nebo MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Síťový server"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS server, SMB server, Proxy server, SSH server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafické prostředí"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Pracovní stanice s KDE"
+msgid "Plasma Workstation"
+msgstr "Pracovní stanice Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"K Desktop Environment, základní grafické prostředí s kolekcí doprovodných "
+"K Desktop Environment, základní grafické prostředí se sbírkou doprovodných "
"nástrojů"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Pracovní stanice s GNOME"
+msgstr "Pracovní stanice GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
-msgstr ""
-"Grafické prostředí s uživatelsky přívětivým seskupením aplikací a pracovní "
-"plochou"
+msgstr "Grafické prostředí s uživatelsky přívětivou sadou aplikací a nástrojů"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE Desktop"
+msgid "Xfce Workstation"
+msgstr "Pracovní stanice Xfce"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Jednoduché a rychlé grafické prostředí s uživatelsky přívětivou sadou "
-"aplikací a nástrojů"
+"Jednoduché grafické prostředí s uživatelsky přívětivou sadou aplikací a "
+"nástrojů"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Pracovní stanice MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Pracovní stanice Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Grafické prostředí založené na GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Prostředí LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Příští generace Qt lehkého prostředí pracovní plochy"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Pracovní prostředí Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+"Lehké a rychlé grafické prostředí s uživatelsky přívětivou sadou aplikací a "
+"nástrojů"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Prostředí LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Lehké a rychlé grafické prostředí"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "Další grafické desktopy"
+msgstr "Další grafická prostředí"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm a další"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm a další"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Užitečné nástroje"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Server SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Server pro vzdálené nastavení Webminu"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Síťové nástroje/Sledování"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Nástroje pro sledování, evidenci procesů, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Průvodci Mandriva"
+msgid "Mageia Wizards"
+msgstr "Průvodci nastavením distribuce Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Průvodci nastavením serverů"
@@ -701,10 +830,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Stala se chyba, ale nevím, jak jí správně interpretovat.\n"
-"Pokračujte na vlastní riziko."
+"Stala se chyba, ale neví se, jak ji správně vykládat.\n"
+"Pokračujte na vlastní nebezpečí."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -712,265 +841,269 @@ msgid ""
"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
"\"\n"
msgstr ""
-"Některé důležité balíčky nebyly správně nainstalované.\n"
+"Některé důležité balíčky nebyly správně nainstalovány.\n"
"Je možné, že je poškozen CD disk nebo CD-ROM mechanika.\n"
"Zkontrolujete to použitím příkazu \"rpm -qpl media/main/*.rpm\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Začínám krok '%s'\n"
+msgstr "Začíná se krok '%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux Instalace %s"
+msgid "%s Installation %s"
+msgstr "%s instalace %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> mezi prvky"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "Server Xorg startuje delší dobu. Prosím počkejte..."
+msgstr "Server Xorg se spouští delší dobu. Prosím počkejte..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Váš systém má málo systémových prostředků. Při instalaci Mandriva Linuxu se\n"
-"můžete setkat s různými problémy. Pokud se tak stane, zkuste textovou\n"
-"verzi instalačního programu. Ta se spouští tak, že při startu\n"
-"z CD mechaniky stisknete 'F1' a poté napíšete 'text'."
+"Váš systém nemusí mít dostatečné vybavení pro bezproblémovou instalaci %s. V "
+"případě potíží zvolte instalaci v textovém režimu. Pro její spuštění "
+"stiskněte při nabíhání systému z CD klávesu 'F1' a následně napište 'text'."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Výběr zdrojů"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Instalovat pracovní prostředí Mandriva KDE"
+msgid "Install %s Plasma Desktop"
+msgstr "Instalovat %s pracovní plochu Plasma"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Instalovat pracovní prostředí Mandriva GNOME"
+msgid "Install %s GNOME Desktop"
+msgstr "Instalovat %s prostředí GNOME"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Vlastní instalace"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE Desktop"
+msgid "Plasma Desktop"
+msgstr "Pracovní plocha Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
-msgstr "GNOME Desktop"
+msgstr "Prostředí GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
-msgstr "Vlastní desktop"
+msgstr "Vlastní prostředí"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Zde se nachází náhled pracovního prostředí %s."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Klepněte na obrázky, chcete-li vidět větší náhled"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Výběr skupiny balíčků"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Výběr jednotlivých balíčků"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Celková velikost: %d / %d MB"
+msgid "Unselect All"
+msgstr "Zrušit celý výběr"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Špatný balíček"
+msgid "Total size: %d / %d MB"
+msgstr "Celková velikost: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Verze: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Velikost: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Důležitost: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Nemůžete vybrat/nevybrat tento balíček"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "protože chybí %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "díky nesplněné závislosti %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "pokus o postoupení %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "aby bylo zachováno %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Nemůžete vybrat tento balíček, protože pro jeho instalaci není dost místa"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Budou instalovány tyto balíčky"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Budou odebrány tyto balíčky"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Toto je povinný balíček, nemůže být odstraněn"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Nemůžete odznačit tento balíček, je už nainstalovaný"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Tento balíček musí být aktualizován, nemůžete ho odznačit"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Ukázat automaticky vybrané balíčky"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalovat"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Načíst/Uložit výběr"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
-msgstr "Aktualizuji výběr balíčků"
+msgstr "Aktualizuje se výběr balíčků"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Přepnout mezi stromovým a plochým seznamem balíčků"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
-msgstr "Minimální instalace"
+msgstr "Nejmenší instalace"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Správa software"
+msgstr "Správa softwaru"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Vyberte si balíčky, které chcete nainstalovat"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
-msgstr "Instaluji"
+msgstr "Instalace"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Bez podrobností"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Zbývající čas:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
-msgstr "(odhaduji...)"
+msgstr "(odhaduje se...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d balíček"
msgstr[1] "%d balíčky"
msgstr[2] "%d balíčků"
+msgstr[3] "%d balíčků"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Souhrn"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Nastavit"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "nenastaveno"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Výběr zdrojů"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -979,84 +1112,84 @@ msgstr ""
"Byla nalezeny následující instalační zdroje.\n"
"Pokud chcete některé z nich vynechat, můžete je nyní odznačit."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Máte možnost před instalací zkopírovat obsah CD na pevný disk.\n"
"Instalace pak bude pokračovat z pevného disku a balíčky zůstanou dostupné i "
"poté, co je systém plně nainstalován."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopírovat celá CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Stala se chyba"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Vyberte si rozložení vaší klávesnice"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Zde je úplný seznam dostupných klávesnic:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalace/Aktualizace"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Jedná se o instalaci nebo aktualizaci?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instalace"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Aktualizace %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Šifrovací klíč pro %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Zrušit instalaci, restartovat systém"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Nová instalace"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Aktualizace předchozí instalace (nedoporučuje se)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1064,45 +1197,26 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Instalátor zjistil, že váš instalovaný systém Mandriva Linux nemůže být\n"
-"bezpečně povýšen na %s.\n"
+"Instalátor zjistil, že nainstalovaný systém Mageia Linux nemůže \n"
+"být bezpečně povýšen na %s.\n"
"\n"
-"Doporučujeme novou instalaci, která nahradí instalaci stávající.\n"
+"Proto doporučujeme provést novou instalaci a nahradit tak zcela \n"
+"instalaci původní.\n"
"\n"
-"Varování: před volbou \"Nové instalace\" si zazálohujte veškerá vaše\n"
-"osobní data."
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
+"Varování: měli byste zálohovat veškerá data před tím, než \n"
+"spustíte \"Novou instalaci.\""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Nastavuji IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Pro bootstrap není potřebné místo o velikosti 1MB! Instalace může "
-"pokračovat, ale pro spuštění systému musíte vytvořit bootstrap oddíl pomocí "
-"DiskDrake"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Je nutné vytvořit zavedení PPC PReP Boot! Instalace může pokračovat, ale pro "
-"zavedení systému musíte vytvořit zaváděcí oddíl pomocí DiskDrake"
+msgid "Configuring CD/DVD"
+msgstr "Nastavení CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1114,21 +1228,21 @@ msgstr ""
"Prosím vložte CD označené \"%s\" do mechaniky a stiskněte Ok.\n"
"Pokud toto CD nemáte, stiskněte Zrušit a toto CD nebude nainstalováno."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Hledám dostupné balíčky..."
+msgstr "Hledají se dostupné balíčky..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Váš systém nemá dostatek volného místa pro instalaci nebo aktualizaci (%dMB "
"> %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1137,143 +1251,186 @@ msgstr ""
"Vyberte si, zda chcete uložit nebo načíst výběr balíčků.\n"
"Formát je stejný jako u souborů generovaných pomocí auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Načíst"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Uložit"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Chybný soubor"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Výběr pracovního prostředí"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Můžete vybrat profil vašeho pracovního prostředí."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Velikost vybraných balíčků je větší než místo na disku"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Typ instalace"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
"Nevybrali jste žádnou skupinu balíčků.\n"
-"Vyberte si prosím alespoň minimální instalaci:"
+"Vyberte si, prosím, alespoň nejmenší instalaci:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X prostředí"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instaluji balíček %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Instalovat doporučené balíčky"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Základní dokumentace (doporučeno!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "Opravdu minimální instalace (speciálně bez urpmi)"
+msgstr "Opravdu nejmenší instalace (speciálně bez urpmi)"
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Připravuje se povýšení..."
-#: steps_interactive.pm:638
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
-msgstr "Připravuji instalaci"
+msgstr "Připravuje se instalace"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
-msgstr "Instaluji balíček %s"
+msgstr "Instaluje se balíček %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Stala se chyba při řazení balíčků:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Přesto pokračovat?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Zkusit znovu"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Vynechat tento balíček"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Vynechat všechny balíčky ze zdroje \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Vrátit se zpět k výběru zdrojů a balíčků"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Při instalaci balíčku %s nastala chyba."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Probíhá nastavování po instalaci"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-"Ujistěte se prosím, že se médium s aktualizovanými moduly nachází v jednotce "
-"%s"
+"Ujistěte se, prosím, že se médium s aktualizovanými moduly nachází v "
+"jednotce %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Aktualizace"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Nyní máte příležitost nastavit internetová média."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Toto dovolí instalaci bezpečnostních aktualizací."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"K nastavení těchto médií budete potřebovat pracující internetové\n"
+"spojení.\n"
+"\n"
+"Chcete nastavit aktualizační média?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Tento stahovač se nepodařilo nainstalovat"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Opakovat?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Nepodařilo se přidat médium"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1290,135 +1447,104 @@ msgstr ""
"aktualizace nebo opravy chyb.\n"
"\n"
"Chcete-li získat tyto balíčky, musíte mít k dispozici funkční připojení\n"
-"k Internetu.\n"
+"k internetu.\n"
"\n"
"Chcete nainstalovat aktualizace?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s na %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Zvuková karta"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Máte nějakou zvukovou kartu na ISA sběrnici?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Pro nastavení zvukové karty spusťte po instalaci \"alsaconf\" nebo "
-"\"sndconfig\""
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Nebyla nalezena zvuková karta. Zkuste spustit po instalaci \"harddrake\"."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafické rozhraní"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
-msgstr "Síť & Internet"
+msgstr "Síť a internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxy"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "nastaveno"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Úroveň zabezpečení"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
-msgstr "aktivováno"
+msgstr "zapnuto"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "vypnuto"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
"Nemáte nastaveno prostředí X. Chcete jej skutečně ponechat nenastavené?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Připravuji zaváděcí program..."
+msgid "Preparing initial startup program..."
+msgstr "Přípravuje se spouštěcí program..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Prosím o strpení, může to chvíli trvat…"
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Zdá se, že máte počítač OldWorld nebo jiný, neznámý, na kterém nebude "
-"zavaděč Yaboot pracovat. Instalace bude pokračovat, ale budete potřebovat "
-"BootX nebo jiný nástroj pro zavedení systému. Parametr jádra pro kořenový "
-"souborový systém je: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"V této úrovní zabezpečení je přístup k souborům na oddíle s Windows omezena "
+"V této úrovní zabezpečení je přístup k souborům na oddíle s Windows omezen "
"pouze na uživatele administrátor."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Vložte prázdnou disketu do %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Vytvářím disketu pro automatickou instalaci..."
+msgstr "Vytváří se disketa pro automatickou instalaci..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1429,12 +1555,12 @@ msgstr ""
"\n"
"Chcete opravdu nyní skončit?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
-msgstr "Gratulujeme"
+msgstr "Blahopřejeme"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Restartovat"
@@ -1471,7 +1597,7 @@ msgstr "Myš"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Detekce pevných disků"
+msgstr "Zjištění pevných disků"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
@@ -1520,7 +1646,7 @@ msgstr "Výběr balíčků"
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "Instaluji"
+msgstr "Instalace"
#: steps_list.pm:34
#, c-format
@@ -1529,13 +1655,6 @@ msgid ""
"Users"
msgstr "Uživatelé"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Sítě"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1577,28 +1696,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Konec"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Rozhodli jste se aktualizovat váš systém na %s. Na vašem systému bylo "
-#~ "nalezeno\n"
-#~ "prostředí KDE 3.5. Instalátor nemůže prostředí KDE 3.5 při aktualizaci "
-#~ "zachovat. Pokud budete pokračovat,\n"
-#~ "bude prostředí KDE 3 nahrazeno verzí KDE 4 a ztratíte tak svá osobní "
-#~ "nastavení prostředí KDE.\n"
-#~ "Chcete-li provést aktualizaci a zachovat svá osobní nastavení, "
-#~ "restartujte prosím systém\n"
-#~ "a aktualizujte systém pomocí apletu pro aktualizaci distribuce Mandriva."
-
-#~ msgid "Proceed"
-#~ msgstr "Pokračovat"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "získání [%s] selhalo"
diff --git a/perl-install/install/share/po/cy.po b/perl-install/install/share/po/cy.po
index 28c1d15a2..2c8bdb693 100644
--- a/perl-install/install/share/po/cy.po
+++ b/perl-install/install/share/po/cy.po
@@ -1,57 +1,86 @@
-# translation of DrakX-cy.po to Cymraeg
-# Copyright (C) 2003, 2007 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Rhoslyn Prys <rhoslyn.prys@ntlworld.com>, 2003,2004,2005.
-# Rhoslyn Prys <post@meddal.com>, 2007.
+# Translators:
+# ciaran, 2015-2016
+# Rhoslyn Prys, 2009
+# Rhoslyn Prys <post@meddal.com>, 2007
+# Rhoslyn Prys <rhoslyn.prys@ntlworld.com>, 2003-2005
+# Rhoslyn Prys, 2009
msgid ""
msgstr ""
-"Project-Id-Version: Mandriva Linux\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-08-24 19:19-0000\n"
-"Last-Translator: Rhoslyn Prys <rprys@yahoo.com>\n"
-"Language-Team: Cymraeg\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Welsh (http://www.transifex.com/MageiaLinux/mageia/language/"
+"cy/)\n"
+"Language: cy\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Poedit-Language: Welsh\n"
-"X-Poedit-Country: UNITED KINGDOM\n"
-"X-Poedit-SourceCharset: utf-8\n"
-"Plural-Forms: nplurals=2; plural=(n == 2) ? 1 : 0;\n"
-"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != "
+"11) ? 2 : 3;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Eich bwrdd gwaith ar allwedd USB"
+msgid "Join Us!"
+msgstr "Ymunwch â ni!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "Mandriva Linux - y dosbarthiad cod agored 100%%"
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr "Eich dewis chi!"
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr "Offer i'r swyddfa"
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr "Adloniant"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Arbrofi rhwydd gyda Mandriva One"
+msgid "For kids"
+msgstr "I blant"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Bwrdd gwaith Mandriva Linux llawn, gyda chefnogaeth"
+msgid "For family!"
+msgstr "I'r teulu!"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: dosbarthiad ar gyfer angen pawb"
+msgid "For developers!"
+msgstr "I ddatblygwyr!"
-#: any.pm:109
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Diolch!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Byddwch yn rhydd!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Oes gennych unrhyw gyfrwng atodol arall?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -59,122 +88,164 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Mae'r cyfrwng yma wedi ei ganfod a byddant yn cael eu defnyddio gyda'r "
-"gosodiad nesaf: %s \n"
+"Canfuwyd y cyfryngau canlynol a chânt eu defnyddio gyda'r gosodiad nesaf: "
+"%s \n"
"\n"
"\n"
"A oes gennych gyfrwng gosod ychwanegol i'w ffurfweddu?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Rhwydwaith (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Rhwydwaith (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Rhwydwaith (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL y drych?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Rhaid i'r URL gychwyn gyda ftp:// neu http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "Cysylltu â safle gwe Mandriva Linux i estyn y rhestr o ddrychau..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Methwyd cysylltu â safle gwe Mandriva Linux i estyn y rhestr o ddrychau"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Dewiswch ddrych lle mae modd estyn y pecynnau"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
-msgstr "Ffurfweddiad NFS"
+msgstr "Gosodiad NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Rhowch enw'r gwesteiwr a chyfeiriadur eich cyfrwng NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Enw gwesteiwr ar goll"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Rhaid i gyfeiriadur gychwyn gyda \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Enw gwesteiwr arosod NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Cyfeiriadur"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Atodol"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"Methu canfod ffeil hdlist ar y drych. Gwnewch yn siwr fod y lleoliad yn "
+"Methu canfod ffeil rhestr pecynnau ar y drych. Sicrhewch fod y lleoliad yn "
"gywir."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Rhifyn craidd"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Rhifyn cymysg"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Rhifyn cyfyng"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Mae ar galedwedd eich peiriant angen cadarnwedd gyfyng er mwyn i'r gyrwyr "
+"meddalwedd rhydd weithio."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Dylech alluogi \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "Mae \"%s\" yn cynnwys darnau amrywiol o'r system a'i rhaglenni"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "Mae \"%s\" yn cynnwys meddalwedd gyfyng.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Mae hefyd yn cynnwys cadarnwedd sydd ei hangen i rai dyfeisiau weithio (e."
+"e.: rhai cardiau graffeg ATI/AMD, rhai cardiau rhwydwaith, rhai cardiau "
+"RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"Mae \"%s\" yn cynnwys meddalwedd na ellir ei dosbarthu ym mhob gwlad o "
+"ganlyniad i batentau ar feddalwedd."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Mae hefyd yn cynnwys meddalwedd o'r adeiladiad \"%s\" gyda galluoedd "
+"ychwanegol. "
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Yma gallwch alluogi rhagor o gyfryngau os oes angen."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Mae'r cyfrwng hwn yn darparu diweddariadau pecynnau i'r cyfrwng \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Edrych ar becynnau wedi eu gosod yn barod..."
+msgstr "Wrthi'n edrych ar becynnau a osodwyd eisoes..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Canfod pecynnau i'w uwchraddio..."
+msgstr "Wrthi'n canfod pecynnau i'w huwchraddio..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "Tynnu pecynnau cyn diweddaru..."
+msgstr "Wrthi'n tynnu pecynnau cyn diweddaru..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -182,93 +253,92 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Bydd y pecynnau canlynol yn cael eu tynnu i ganiatáu diweddaru eich system: %"
-"s\n"
+"Tynnir y pecynnau canlynol i ganiatáu diweddaru eich system: %s\n"
"\n"
"\n"
-"Ydych chi am dynnu'r pecynnau hyn?\n"
+"Hoffech chi dynnu'r pecynnau hyn?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
-msgstr "Gwall wrth ddarllen ffeil %s"
+msgstr "Gwall darllen ffeil %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Mae'r disg(iau) canlynol wedi eu hail enwi:"
+msgstr "Ailenwyd disg(iau) canlynol:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (ei enw blaenorol oedd %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rhwydwaith"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Dewiswch gyfrwng"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Mae'r ffeil yn bodoli eisoes. Ysgrifennu drosti?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
-msgstr "Caniatâd wedi ei wrthod."
+msgstr "Dim caniatâd."
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Enw NFS gwael"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Cyfrwng %s gwael"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Meth creu lluniau o'r sgrin cyn rhannu"
+msgid "Cannot make screenshots before partitioning"
+msgstr "Meth creu sgrinluniau cyn rhannu"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "Bydd lluniau o'r sgrin ar gael ar ôl gosod yn %s"
+msgstr "Bydd sgrinluniau ar gael ar ôl gosod yn %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Gosod"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
-msgstr "Ffurfweddiad"
+msgstr "Ffurfweddu"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Rhaid fformatio %s hefyd"
@@ -285,29 +355,29 @@ msgstr ""
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "Cychwyn y rhwydwaith"
+msgstr "Wrthi'n cychwyn y rhwydwaith"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "Cau'r rhwydwaith"
+msgstr "Wrthi'n cau'r rhwydwaith"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "Arhoswch, estyn ffeil"
+msgstr "Arhoswch, wrthi'n estyn ffeil"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "methu ychwanegu cyfrwng"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr "Copïo rhai pecynnau ar ddisg ar gyfer defnydd yn y dyfodol"
+msgstr "Wrthi'n copïo rhai pecynnau ar ddisg ar gyfer defnydd yn y dyfodol"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Wrthi'n copïo..."
@@ -337,7 +407,24 @@ msgstr "hyfryd"
msgid "maybe"
msgstr "efallai"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Wrthi'n estyn gwybodaeth am becyn o fetadata XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Dim gwybodaeth xml ar gyfer y cyfrwng \"%s\", dim ond canlyniad rhannol ar "
+"gyfer pecyn %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Dim disgrifiad"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -346,355 +433,402 @@ msgstr ""
"Nid yw'n bosib gosod rhai pecynnau gofynnwyd gan %s:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
-msgstr "Digwyddodd gwall:"
+msgstr "Cododd gwall:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Cododd gwall terfynol:%s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Peidio â gofyn eto"
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "Methodd trafod gosod %d"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Methodd gosod pecynnau:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Gweithfan"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
-msgstr "Gweithfan Swyddfa"
+msgstr "Gweithfan wyddfa"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Rhaglenni swyddfa: prosesydd geiriau (OpenOffice.org Writer, Kword), "
-"taenlenni (OpenOffice.org Calc, Kspread), ddarllenydd pdf, ag ati"
+"Rhaglenni swyddfa: prosesydd geiriau (LibreOffice Writer, Kword), taenlenni "
+"(LibreOffice Calc, Kspread), ddarllenydd pdf, ac ati"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Rhaglenni swyddfa: prosesydd geiriau (Kword, abiword), taenlenni (kspread, "
-"gnumeric), ddarllenydd pdf, ag ati"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Man chwarae"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "Rhaglenni difyrrwch: arcêd, gemau bwrdd, strategaeth, ag ati"
+msgstr "Rhaglenni difyrrwch: arcêd, gemau bwrdd, strategaeth, ac ati"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "Man aml-gyfrwng"
+msgstr "Man amlgyfrwng"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Chwarae sain a fideo/rhaglenni golygu"
+msgstr "Rhaglenni chwarae/golygu sain a fideo"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Man rhyngrwyd"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Casgliad o offer i ddarllen ac anfon e-bost a newyddion (mutt, tin..) ac i "
-"bori'r We"
+"Casgliad o offer i ddarllen ac anfon e-byst a newyddion (mutt, tin..) ac i "
+"bori'r we"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
-msgstr "Cyfrifiadur Rhwydwaith (cleient)"
+msgstr "Cyfrifiadur rhwydwaith (cleient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Cleientiaid ar gyfer protocolau amrywiol yn cynnwys ssh"
+msgstr "Cleientiaid ar gyfer protocolau amrywiol gan gynnwys ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Offer i wneud ffurfweddu'ch cyfrifiadur yn haws"
+msgstr "Offer i ffurfweddu'ch cyfrifiadur yn haws"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "Offer y Consol"
+msgstr "Offer y consol"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Golygyddion, cregyn, offer ffeilio, terfynellau"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
-msgstr "Datblygiad"
+msgstr "Datblygu"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "Llyfrgelloedd datblygiadol C a C++, rhaglenni a ffeiliau cynnwys"
+msgstr "Llyfrgelloedd datblygu C a C++, rhaglenni a ffeiliau cynnwys"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
-msgstr "Dogfennau"
+msgstr "Dogfennaeth"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Llyfrau a Howto's ar Linux a Meddalwedd Rhydd"
+msgstr "Llyfrau a chanllawiau ar gyfer Linux a meddalwedd rydd"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Cefnogaeth i raglenni trydydd parti"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
-msgstr "Gweinydd Gwe"
+msgstr "Gweinydd gwe"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
-msgstr "Grwpwar"
+msgstr "Cylchwedd"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Gweinydd Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
-msgstr "Mur Gwarchod/Llwybrydd"
+msgstr "Mur gwarchod/llwybrydd"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Porth i'r rhyngrwyd"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
-msgstr "E-bost/Newyddion"
+msgstr "E-bost/newyddion"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Gweinydd e-bost Postfix, gweinydd newyddion Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "Cyfeiriadur Gweinydd"
+msgstr "Gweinydd cyfeiriaduron"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Gweinydd FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Gweinydd Enw Parth a Gwybodaeth Rhwydwaith"
+msgstr "Gweinydd enw parth a gwybodaeth rhwydwaith"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Gweinydd Ffeil a Rhannu Argraffydd"
+msgstr "Gweinydd rhannu ffeiliau ac argraffyddion"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Gweinydd NSF, gweinydd Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Cronfa Ddata"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Gweinydd CronfaDdata PostgreSQL a MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Gweinydd CronfaDdata PostgreSQL a MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Gwe/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "E-bost"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Gweinydd e-bost Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Gweinydd cronfa data PostgreSQL neu MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Gweinydd cronfa data PostgreSQL neu MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Gweinydd Cyfrifiadur Rhwydwaith"
+msgstr "Gweinydd cyfrifiadur rhwydwaith"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Gweinydd NFS, gweinydd SMB, gweinydd dirprwyol, gweinydd ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr "Amgylchedd Graffig"
+msgstr "Amgylchedd graffig"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Man Gwaith KDE"
+msgid "Plasma Workstation"
+msgstr "Gweithfan Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"KDE - Amgylchedd Bwrdd gwaith K, yr amgylchedd graffig sylfaenol gyda "
-"chasgliad o offer"
+"KDE - amgylchedd bwrdd gwaith K, yr amgylchedd graffigol sylfaenol a chanddo "
+"gasgliad o offer"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Man Gwaith Gnome"
+msgstr "Gweithfan Gnome"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-"Amgylchedd graffig gyda chasgliad o raglenni ac offer bwrdd gwaith hawdd eu "
-"defnyddio."
+"Amgylchedd graffigol a chanddo gasgliad o raglenni ac offer bwrdd gwaith "
+"hawdd eu defnyddio."
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Bwrdd Gwaith LXDE"
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Amgylchedd graffig ysgafn a chyflym gyda chasgliad o raglenni ac offer bwrdd "
-"gwaith hawdd eu defnyddio."
+"Amgylchedd graffigol ysgafn a chanddo gasgliad o raglenni ac offer bwrdd "
+"gwaith hawdd eu defnyddio"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Gweithfan MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Gweithfan Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Amgylchedd graffigol sy'n seiliedig ar GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Bwrdd gwaith LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Porth QT y genhedlaeth nesaf o'r amgylchedd bwrdd gwaith ysgafn"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+"Amgylchedd graffigol ysgafn a chyflym a chanddo grŵp o ddefnyddwyr ymroddedig"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Bwrdd Gwaith LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Amgylchedd graffigol ysgafn a chyflym"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Byrddau Gwaith Graffigol Eraill"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, ag ati"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, ac ati"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Gwasanaethau"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Gweinydd SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Gweinydd Ffurfweddiad Pell Webmin"
+msgstr "Gweinydd ffurfweddu pell Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Gwasanaethau Rhwydwaith/Monitro"
+msgstr "Gwasanaethau/monitro rhwydwaith"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Offer monitro, cyfrifo prosesau, tcpdunp, nmap..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Dewiniaid Mandriva"
+msgid "Mageia Wizards"
+msgstr "Dewiniaid Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
-msgstr "Dewiniaid i ffurfweddu gweinydd"
+msgstr "Dewiniaid ffurfweddu gweinyddion"
#: steps.pm:85
#, c-format
@@ -705,7 +839,7 @@ msgstr ""
"Digwyddodd gwall ond wn i ddim sut i ddelio ag ef yn dwt.\n"
"Mae'n beryglus i barhau."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -725,341 +859,344 @@ msgstr "Cychwyn cam '%s\"\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Gosod Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Gosod %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> rhwng elfennau"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Mae gweinydd Xorg yn araf ei gychwyn. Arhoswch..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Mae eich system yn brin o adnoddau. Efallai bod gennych broblem wrth osod\n"
-"Mandriva Linux. Os yw hynny'n digwydd, defnyddiwch y gosod testun yn lle\n"
+"%s. Os yw hynny'n digwydd, defnyddiwch y gosod testun yn lle\n"
"hynny. I wneud hynny pwyswch 'F1' wrth gychwyn ar CD-ROM, ac yna teipio "
"'text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Dewis cyfrwng"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Gosod Bwrdd Gwaith Mandriva KDE"
+msgid "Install %s Plasma Desktop"
+msgstr "Gosod bwrdd gwaith %s Plasma"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Gosod Bwrdd Gwaith Mandriva GNOME"
+msgid "Install %s GNOME Desktop"
+msgstr "Gosod bwrdd gwaith %s GNOME"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Gosodiad addasu"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Bwrdd Gwaith KDE"
+msgid "Plasma Desktop"
+msgstr "Bwrdd gwaith Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
-msgstr "Bwrdd Gwaith GNOME"
+msgstr "Bwrdd gwaith GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
-msgstr "Bwrdd Gwaith Addasu"
+msgstr "Bwrdd gwaith addasedig"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Dyma ragolwg o fwrdd gwaith '%s'."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Cliciwch ar y delweddau i weld y rhagolwg yn fwy"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "Dewis Grŵp y Pecyn"
+msgstr "Dewis grŵp o becynnau"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "Dewis pecynnau unigol."
+msgstr "Dewis pecynnau unigol"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Cyfanswm maint: %d / %d MB"
+msgid "Unselect All"
+msgstr "Dad-ddewis popeth"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pecyn gwallus"
+msgid "Total size: %d / %d MB"
+msgstr "Maint cyfan: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Fersiwn:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Maint:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Pwysigrwydd: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Does dim modd i chi ddewis/dad-ddewis y pecyn"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "oherwydd %s coll"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "oherwydd %s annigonol"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "ceisio hyrwyddo %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "er mwyn cadw %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Nid oes modd i chi ddewis y pecyn hwn - does dim lle ar ôl i'w osod"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
-msgstr "Mae'r pecynnau canlynol i'w gosod"
+msgstr "Gosodir y pecynnau canlynol"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
-msgstr "Bydd y pecynnau canlynol yn cael eu tynnu"
+msgstr "Tynnir y pecynnau canlynol"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Mae hwn yn becyn hanfodol, does dim modd ei ddad-ddewis"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Pecyn hanfodol yw hwn, does dim modd ei ddad-ddewis"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Does dim mod dad-ddewis y pecyn, mae wedi ei osod yn barod"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Does dim mod dad-ddewis y pecyn hwn. Rhaid ei ddiweddaru"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Dangoswch y pecynnau dewis awtomatig"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Gosod"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
-msgstr "Llwytho/Cadw'r dewis"
+msgstr "Llwytho/cadw'r dewis"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Diweddaru'r dewis o becynnau"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Gosodiad lleiaf"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Rheoli Meddalwedd"
+msgstr "Rheoli meddalwedd"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Dewiswch y pecynnau yr hoffech chi eu gosod"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Gosod"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Dim manylion"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
-msgstr "Amser yn weddill:"
+msgstr "Amser ar ôl:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(amcangyfrif...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pecyn"
-msgstr[1] "%d pecyn"
+msgstr[1] "%d becyn"
+msgstr[2] "%d o becynnau"
+msgstr[3] "%d o becynnau"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Crynodeb"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Ffurfweddu"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "heb ffurfweddu"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Dewis Cyfrwng"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"Mae'r cyfrwng gosod canlynol wedi ei ganfod.\n"
+"Canfuwyd y cyfryngau gosod canlynol.\n"
"Os hoffech hepgor rhai ohonynt, dad-ddewiswch nhw nawr."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Mae gennych y dewis i gopïo cynnwys y CD ar i'r disg caled cyn gosod "
-"Mandriva Linux.\n"
+"Gallwch gopïo cynnwys y CD i'r disg caled cyn gosod Mageia Linux.\n"
"Bydd yna'n parhau o'r disg caled a bydd y pecynnau ar gael unwaith i'r "
-"system gael ei osod yn gyflawn."
+"system gael ei gosod yn gyflawn."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr "Copïo'r CDau cyfan"
+msgstr "Copïo'r CDs cyfan"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
-msgstr "Digwyddodd gwall"
+msgstr "Cododd gwall"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Dewiswch gynllun eich bysellfwrdd"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Dyma restr lawn o'r bysellfyrddau sydd ar gael:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "Gosod/Diweddaru"
+msgstr "Gosod/diweddaru"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Gosod neu ddiweddaru?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr ""
-"_:Enw yw hwn:\n"
-"Gosod"
+msgstr "Gosod"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Diweddaru %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Allwedd amgryptio ar gyfer %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Atal y gosod, ailgychwyn y system"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
-msgstr "Gosodiad Newydd"
+msgstr "Gosodiad newydd"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Diweddaru'r gosodiad blaenorol (argymell i beidio)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1067,44 +1204,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Mae'r gosodwr wedi canfod nad yw hi'n ddiogel diweddaru eich system \n"
-"Mandriva Linux i %s.\n"
+"Mae'r gosodwr wedi canfod na ellir uwchraddio\n"
+"eich system Linux i %s yn ddiogel.\n"
"\n"
-"Mae gosod o'r newydd yn cael ei argymell.\n"
+"Argymhellir disodli eich system gyda gosodiad newydd.\n"
"\n"
-"Rhybudd : dylech wneud copi wrth gefn o'ch data personol cvyn dewis \"New\n"
-"Installation\"."
+"Rhybudd : dylech gadw copi wrth gefn o'ch holl ddata personol cyn dewis\n"
+"\"Gosodiad newydd\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Ffurfweddu IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Nid oes lle rhydd ar gyfer yr ymlwythwr 1MB! Bydd y gosod yn parhau, ond i "
-"gychwyn y system bydd rhaid i chi greu rhaniad ymlwythwr yn DiskDrake"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Bydd angen i chi greu llwythwr mwdwl PPC PReP Boot! Bydd y gosod yn parhau, "
-"ond i gychwyn y system bydd rhaid i chi greu rhaniad ymlwythwr yn DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1116,21 +1234,21 @@ msgstr ""
"Rhowch y CD-ROM \"%s\" yn eich gyrrwr a chlicio Iawn ar ôl gorffen\n"
"Os nad yw gennych, cliciwch Diddymu i beidio a gosod o'r CD-ROM."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Casglu'r pecynnau sydd ar gael..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Nid oes gan eich system ddigon o le ar gyfer gosod neu ddiweddaru (%dMB > %"
-"dMB)"
+"Nid oes gan eich system ddigon o le ar gyfer gosod neu ddiweddaru (%dMB > "
+"%dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1139,52 +1257,52 @@ msgstr ""
"Dewiswch lwytho neu gadw pecyn dewiswyd.\n"
"Mae'r fformat yr un â ffeiliau cynhyrchwyd drwy auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "Llwyth"
+msgstr "Llwytho"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Cadw"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
-msgstr "Ffeil gwael"
+msgstr "Ffeil wael"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
-msgstr "Dewis Bwrdd Gwaith"
+msgstr "Dewis bwrdd gwaith"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "Dewiswch broffil bwrdd gwaith eich man gwaith."
+msgstr "Dewiswch broffil bwrdd gwaith eich gweithfan."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Mae'r maint a ddewiswyd yn fwy na'r lle ar gael"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
-msgstr "Math o osod"
+msgstr "Math o osodiad"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1193,87 +1311,131 @@ msgstr ""
"Nid ydych wedi dewis grwpiau o becynnau.\n"
"Dewiswch y gosod lleiaf rydych ei eisiau"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
-msgstr "Gyda X"
+msgstr "Gydag X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Gosod pecyn %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Gosod pecynnau a argymhellir"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Gyda dogfennau elfennol (argymell!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Gosod bach iawn (yn arbennig dim urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Wrthi'n paratoi i uwchraddio..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
-msgstr "Paratoi'r gosod"
+msgstr "Wrthi'n paratoi i osod"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
-msgstr "Gosod pecyn %s"
+msgstr "Wrthi'n gosod y pecyn %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "Roedd gwall wrth drefnu pecynnau:"
+msgstr "Bu gwall trefnu pecynnau:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Mynd yn eich blaen beth bynnag?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Ceisio eto"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Hepgor y pecyn"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "Hepgor pob pecyn o gyfrwng \"%s\""
+msgstr "Hepgor pob pecyn o'r cyfrwng \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
-msgstr "Mynd yn ôl at ddewis cyfrwng a phecyn"
+msgstr "Dychwelyd i ddewis cyfryngau a phecynnau"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "Digwyddodd gwall wrth osod pecyn: %s."
+msgstr "Cododd gwall wrth osod pecyn: %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
-msgstr "Ffurfweddiad ôl osod"
+msgstr "Ffurfweddu ar ôl gosod"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr "Gwnewch yn siŵr fod cyfrwng Diweddaru Modiwlau yng ngyrrwr %s"
+msgstr "Sicrhewch fod y cyfrwng diweddaru modiwlau yn y gyrrwr %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Diweddaru"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Cewch osod cyfryngau ar lein."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Mae hyn yn caniatáu gosod diweddariadau diogelwch."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"I osod y cyfryngau hynny, rhaid i chi cael \n"
+"cysylltiad i'r \n"
+"we.\n"
+"\n"
+"Hoffech chi osod y cyfryngau diweddaru?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Gosodir y pecynnau canlynol"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Ceisio eto?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Methu ychwanegu cyfrwng"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1294,129 +1456,99 @@ msgstr ""
"\n"
"Ydych chi am osod y diweddariadau?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s ar %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Caledwedd"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Cerdyn sain"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "A oes gennych gerdyn sain ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Rhedwch \"alsaconf\" neu \"sndconfig\" wedi'r gosodiad i ffurfweddu eich "
-"cerdyn sain"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Heb ganfod cerdyn sain. Ceisiwch \"harddrake\" wedi'r gosodiad"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Rhyngwyneb graffigol"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
-msgstr "Rhwydwaith a'r Rhyngrwyd"
+msgstr "Rhwydwaith a'r rhyngrwyd"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Dirprwyon"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "ffurfweddwyd"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
-msgstr "Lefel Diogelwch"
+msgstr "Lefel diogelwch"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
-msgstr "Mur Cadarn"
+msgstr "Mur gwarchod"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
-msgstr "gweithredwyd"
+msgstr "bywiogwyd"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
-msgstr "anablwyd"
+msgstr "analluogwyd"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Nid ydych wedi ffurfweddu X. Ydych chi'n siŵr eich bod am wneud hyn?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Paratoi cychwynnwr..."
+msgid "Preparing initial startup program..."
+msgstr "Wrthi'n paratoi'r rhaglen cychwyn..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Amynedd, gall hyn gymryd amser..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Mae'n ymddangos fod gennych beiriant OldWorld neu Anhysbys ac ni fydd "
-"cychwynnwr yaboot yn gweithio ar eich cyfer Bydd y gosodiad yn parhau ond "
-"bydd rhaid defnyddio BootX i gychwyn eich peiriant. Ymresymiad y cnewyllyn "
-"ar gyfer y gwraidd yw: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"Ar y lefel diogelwch yma, mae mynedfa i ffeiliau yn rhaniad Windows wedi eu "
-"cyfyngu i'r Gweinyddwr."
+"Ar y lefel diogelwch yma, cyfyngir mynediad at ffeiliau yn y rhaniad Windows "
+"i'r gweinyddwr."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Rhowch ddisg meddal yng ngyrrwr %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Creu disg meddal awto gosod..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1425,17 +1557,17 @@ msgid ""
msgstr ""
"Nid yw rhai camau wedi eu cwblhau.\n"
"\n"
-"Ydych chi wir eisiau gorffen?"
+"Ydych chi wir eisiau gadael yn awr?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Llongyfarchiadau"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
-msgstr "Ail gychwyn"
+msgstr "Ailgychwyn"
#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
#: steps_list.pm:16
@@ -1527,13 +1659,6 @@ msgid ""
"Users"
msgstr "Defnyddwyr"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rhwydweithio"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1574,220 +1699,24 @@ msgstr "Diweddaru"
msgid ""
"_: Keep these entry short\n"
"Exit"
-msgstr "Gorffen"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Rydych wedi penderfynu diweddaru eich system i %s. Mae KDE 3.5 wedi ei "
-#~ "ganfod ar eich system.\n"
-#~ "Nid yw'r gosodwr hwn yn gallu diogelu KDE 3.5 wrth ddiweddaru. Os fyddwch "
-#~ "yn penderfynu parhau, \n"
-#~ "bydd KDE 4 yn cymryd lle KDE 3, a byddwch yn colli eich gosodiadau "
-#~ "ffurfweddi personol yn KDE. \n"
-#~ "I ddiweddaru KDE 3.5 gan gadw eich gosodiadau personol, \n"
-#~ "ail gychwynnwch eich system a diweddaru gan ddefnyddio rhaglennig "
-#~ "diweddaru Mandriva."
-
-#~ msgid "Proceed"
-#~ msgstr "Parhau"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "methodd estyn [%s]"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Llwytho ffeil %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "Nid yw diweddaru o ddosbarthiad 32did i 64did yn cael ei gynnal"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "Nid yw diweddaru o ddosbarthiad 64did i 32did yn cael ei gynnal"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Rydych wedi dewis y gweinydd(wyr) canlynol: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Mae'r gweinyddion canlynol yn cael eu cychwyn drwy ragosodiad. Does\n"
-#~ "ganddynt unrhyw faterion diogelwch hysbys, ond mae'n bosibl i rai ddod "
-#~ "i'r\n"
-#~ "golwg. Os felly rhaid uwchraddio gynted ag y bo modd\n"
-#~ "\n"
-#~ "Ydych chi wir eisiau gosod y gweinyddion hyn?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Bwrdd Gwaith IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Cysylltu â'r drych i estyn y rhestr o becynnau sydd ar gael..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Methu canfod drych: %s."
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Creu disg meddal awto gosod"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Mae modd awtomeiddio'r awto gosod, os hoffech\n"
-#~ "chi, yn yr achos hwnnw bydd yn cymryd drosodd y\n"
-#~ "disg caled!!\n"
-#~ "(mae hyn ar gyfer gosod ar flwch arall).\n"
-#~ "\n"
-#~ "Efallai byddai'n well gennych ai osod y gosodiad.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Ail chwarae"
-
-#~ msgid "Automated"
-#~ msgstr "Awtomeiddwyd"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Cadw'r dewis o becynnau"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Ydych chi eisiau defnyddio aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Gwall gosod aboot, \n"
-#~ "ceisiwch orfodi gosodiad hyd yn oed os yw hynny'n dinistrio'r rhaniad "
-#~ "cyntaf?"
-
-#~ msgid "All"
-#~ msgstr "Popeth"
-
-#~ msgid "TV card"
-#~ msgstr "Cerdyn Teledu"
-
-#~ msgid "Boot"
-#~ msgstr "Cychwyn"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Dilysu"
-
-#~ msgid "Arkeia"
-#~ msgstr "Arkeia"
+msgstr "Gadael"
-#~ msgid "Flatout"
-#~ msgstr "Flatout"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "3D"
-
-#~ msgid "CMS"
-#~ msgstr "CMS"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "2007 product line"
-#~ msgstr "Cynnyrch 2007"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "Mur Cadarn Invictus"
-
-#~ msgid "Discovery Live Mode"
-#~ msgstr "Modd Byw Discovery"
-
-#~ msgid "How to register"
-#~ msgstr "Sut i gofrestru"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "Rpmdrake 2"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "Mandriva Online Services"
-
-#~ msgid "New Theme"
-#~ msgstr "Thema Newydd"
-
-#~ msgid "Web 2.0"
-#~ msgstr "Web 2.0"
-
-#~ msgid "Kaspersky"
-#~ msgstr "Kaspersky"
-
-#~ msgid "LinDVD"
-#~ msgstr "LinDVD"
-
-#~ msgid "Skype"
-#~ msgstr "Skype"
-
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Transgaming/Cedega"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d pecyn, %d MB)"
-#~ msgstr[1] "(%d pecyn, %d MB)"
-
-#~ msgid "%d packages"
-#~ msgstr "%d pecyn"
-
-#~ msgid "Language"
-#~ msgstr "Iaith"
-
-#~ msgid "License"
-#~ msgstr "Trwydded"
-
-#~ msgid "Installation class"
-#~ msgstr "Dosbarth gosod"
-
-#~ msgid "Formatting"
-#~ msgstr "Fformatio"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Dewis pecynnau"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL y drych?"
-#~ msgid "Users"
-#~ msgstr "Defnyddwyr"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Rhaid i'r URL gychwyn gyda ftp:// neu http://"
-#~ msgid "Networking"
-#~ msgstr "Rhwydweithio"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Wrthi'n cysylltu â gwefan %s i estyn y rhestr o ddrychau..."
-#~ msgid "Configure X"
-#~ msgstr "Ffurfweddu X"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr "Methwyd cysylltu â gwefan %s i estyn y rhestr o ddrychau"
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Methu cael mynediad i modiwlau'r cnewyllyn sy'n cyfateb i'ch cnewyllyn "
-#~ "chi (mae ffeil %s ar goll), mae hyn yn golygu, fel arfer, nad yw eich "
-#~ "disg cychwyn yn cydweddu gyda'r cyfrwng Gosod (crëwch ddisg cychwyn "
-#~ "meddal newydd)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Dewiswch ddrych i estyn y pecynnau wrtho"
diff --git a/perl-install/install/share/po/da.po b/perl-install/install/share/po/da.po
index e061fd01b..81487c644 100644
--- a/perl-install/install/share/po/da.po
+++ b/perl-install/install/share/po/da.po
@@ -1,56 +1,83 @@
-# translation of da.po to
-# translation of da.po to Danish
-# Copyright (C) 2000,2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
-# Troels Liebe Bentsen <tlb@iname.com> 2000.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Keld Simonsen <keld@dkuug.dk>, 2000-2003, 2004, 2005, 2007, 2008, 2009.
-# Keld Simonsen <keld@rap.dk>, 2005, 2006.
+# Translators:
+# Keld Simonsen <keld@dkuug.dk>, 2000-2003, 2004-2005,2007-2009
+# Keld Simonsen <keld@rap.dk>, 2005-2006,2010
+# scootergrisen, 2017-2018
msgid ""
msgstr ""
-"Project-Id-Version: da\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-14 17:17+0200\n"
-"Last-Translator: Keld Simonsen <keld@dkuug.dk>\n"
-"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: scootergrisen\n"
+"Language-Team: Danish (http://www.transifex.com/MageiaLinux/mageia/language/"
+"da/)\n"
+"Language: da\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Vær med!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Gør den din!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Dit valg!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Kontorværktøjer"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Hjemmeunderholdning"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Til børn"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Til familjen!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Til udviklere!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Tak!"
-#: any.pm:109
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Vær fri!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Har du andre supplerende medier?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -58,121 +85,162 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"De følgende medier er fundet og vil blive brugt ved installeringen: %s.\n"
+"Følgende medier er fundet og vil blive brugt ved installeringen: %s.\n"
"\n"
"\n"
-"Har du et supplerende installationsmedium, der skal konfigureres?"
-
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "Cd-rom"
+"Har du et supplerende installationsmedie, der skal konfigureres?"
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Netværk (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Netværk (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Netværk (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL på spejlet?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL skal starte med ftp:// eller http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Kontakter Mandriva Linux netsted for at hente listen over tilgængelige spejle"
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Mislykkedes med at kontakte Mandriva Linux netsted for at hente listen over "
-"tilgængelige spejle"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Vælg det spejl hvorfra pakkerne skal hentes"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS-opsætning"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Indtast værtsnavn og katalog for dit NFS-medie"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Værtsmaskinenavn mangler"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Katalog skal begynde med \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Værtsnavn på NFS-monteringen?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Katalog"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Supplerende"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
-msgstr "Kan ikke finde hdlist-fil på dette spejl"
+msgstr ""
+"Kan ikke finde en pakkelistefil på dette spejl. Kontrollér at placeringen er "
+"korrekt."
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core-udgivelse"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted-udgivelse"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree-udgivelse"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Noget hardware på din maskine behøver nogle ikke-frie firmwares for at de "
+"frie softwaredrivere skal kunne virke."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Du bør aktivere \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" indeholder de forskellige dele af systemet og dets programmer"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" indeholder ikke-fri software.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Det indeholder også firmware som er nødvendige for at bestemte enheder kan "
+"fungere (eksempelvis: nogle ATI-/AMD-grafikkort, nogle netværkskort, nogle "
+"RAID-kort, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" indeholder software som ikke kan distribueres i alle lande pga. "
+"softwarepatenter."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Det indeholder software fra \"%s\"-genbygning med yderligere formåenheder."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Her kan du aktivere flere medier hvis du vil."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Dette medie leverer pakkeopdateringer til mediet \"%s\""
-#: any.pm:334
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Leder efter pakker der allerede er installeret..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Leder efter pakker som skal opgraderes"
+msgstr "Leder efter pakker som skal opgraderes..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Fjerner pakker før opgradering..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -180,92 +248,92 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"De følgende pakker vil blive fjernet for at kunne opdatere systemet: %s\n"
+"Følgende pakker vil blive fjernet for at kunne opdatere systemet: %s\n"
"\n"
"\n"
"Ønsker du virkelig at fjerne disse pakker?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Fejl ved læsning af filen %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "De følgende diske blev omdøbt:"
+msgstr "Følgende diske blev omdøbt:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (tidligere kaldet %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Netværk"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Vælg et medie"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Fil eksisterer allerede. Skal den overskrives?"
+msgstr "Fil findes allerede. Skal den overskrives?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Adgang nægtet"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Dårligt NFS-navn"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Dårligt medie %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Kan ikke lave øjebliksbilleder før partitionering"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Øjebliksbilleder vil være tilgængelige efter installation i %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Installation"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfiguration"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Du skal også formatere %s"
@@ -276,7 +344,7 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Noget maskinel på din maskine skal bruge ''proprietære'' drivere for at "
+"Noget hardware på din maskine skal bruge ''proprietære'' drivere for at "
"virke.\n"
"Du kan finde information om dem hos: %s"
@@ -290,22 +358,22 @@ msgstr "Bringer netværket op"
msgid "Bringing down the network"
msgstr "Lukker netværket ned"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "Vent venligt, henter fil"
+msgstr "Vent venligst, henter fil"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "kan ikke tilføje medie"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopierer nogle pakker til disk til fremtidig brug"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopiering udføres"
@@ -313,7 +381,7 @@ msgstr "Kopiering udføres"
#: pkgs.pm:32
#, c-format
msgid "must have"
-msgstr "skal have"
+msgstr "nødvendigt"
#: pkgs.pm:33
#, c-format
@@ -335,359 +403,420 @@ msgstr "rart"
msgid "maybe"
msgstr "måske"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Henter pakkeinformation fra XML-metadata..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr "Ingen xml-info for mediet \"%s\", kun delvist resultat for pakken %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Ingen beskrivelse"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-"Nogen pakker forespurgt af %s kan ikke installeres:\n"
+"Visse pakker forespurgt af %s kan ikke installeres:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
-msgstr "Der er opstået en fejl:"
+msgstr "Der opstod en fejl:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "En fatal fejl skete: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Spørg ikke igen"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d installationstransaktioner mislykkedes"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Installation af pakker mislykkedes:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
-msgstr "Arbejdsstation"
+msgstr "Arbejdsmaskine"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
-msgstr "Kontor-arbejdsstation"
+msgstr "Kontor-arbejdsmaskine"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Kontor-programmer: Tekstbehandling (OpenOffice.org, kword, abiword), "
-"regneark (OpenOffice.org, kspread, gnumeric), pdf-visere, o.lign."
+"Kontor-programmer: Tekstbehandling (LibreOffice tekstbehandler, Kword), "
+"regneark (LibreOffice Regneark, Kspread ), PDF-visere, osv."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Kontor-programmer: Tekstbehandler (kword, abiword), regneark (kspread, "
-"gnumeric), pdf-visere, o.lign."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Spillemaskine"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Underholdnings-programmer: arkade, bræt, strategi, osv."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "Multimedie-station"
+msgstr "Multimediecenter"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Lyd- og video-afspillere og redigeringsværktøjer"
+msgstr "Programmer til afspilning og redigering af lyd og video"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "Internet-station"
+msgstr "Internet-computer"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Værktøjssæt til at læse samt sende post og nyheder (mutt, tin..) , og til at "
+"Værktøjssæt til at læse samt sende post og nyheder (mutt, tin..), og til at "
"browse på nettet"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Netværksmaskine (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Klienter for forskellige protokoller inklusiv ssh"
+msgstr "Klienter for forskellige protokoller inklusive ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Værktøjer til at lette indstillingen af din maskine"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsolværktøjer"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Redigeringsværktøjer, skaller, filværktøjer, terminaler"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Udvikling"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "C og C++ udviklingsbiblioteker, programmer, og include-filer."
+msgstr "Biblioteker, programmer og include-filer til udvikling i C og C++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentation"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Bøger og vejledninger om Linux og Frit Programmel"
+msgstr "Bøger og vejledninger om Linux og fri software"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Understøttelse for tredjeparts-programmer"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Webserver"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
-msgstr "Gruppeprogrammel"
+msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab-server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Brandmur/ruter"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
-msgstr "Internetadgang"
+msgstr "Internet-adgangspunkt"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Post og nyheder"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix postserver, inn nyhedsserver"
+msgstr "Postfix-postserver, Inn-nyhedsserver"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Katalogserver"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP-server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Server for domænenavne (DNS) og netværksinformation (NIS)"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Fil- og Printerdelings-server"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS-server, Samba-server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Database"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL og MySQL database-server"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL- og MariaDB-databaseserver"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache og Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Post"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Postfix postserver"
+msgstr "Postfix-postserver"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL eller MySQL database-server"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL- eller MariaDB-databaseserver"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Netværksmaskine server"
+msgstr "Netværksmaskine-server"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "NFS-vært, SMB-vært, mellemvært (proxy), SSH-vært"
+msgstr "NFS-server, SMB-server, proxy-server, SSH-server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafisk miljø"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE-arbejdsstation"
+msgid "Plasma Workstation"
+msgstr "Plasma-arbejdsstation"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"K Desktop -miljøet, det grundlæggende grafiske miljø, med en vifte af "
-"supplerende værktøjer."
+"K-skrivemiljøet, det grundlæggende grafiske miljø, med en vifte af "
+"supplerende værktøjer"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Gnome-arbejdsstation"
+msgstr "GNOME-arbejdsmaskine"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "Et grafisk miljø med brugervenlig samling af programmer og værktøjer"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE-skrivebord"
+msgid "Xfce Workstation"
+msgstr "Xfce-arbejdsstation"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Et let og hurtigt grafisk miljø med brugervenlig samling af programmer og "
+"Et lettere grafisk miljø med brugervenlige sæt af programmer og "
"skrivebordsværktøjer"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE-arbejdsstation"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon-arbejdsstation"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Et grafisk miljø baseret på GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt-skrivebord"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "En næstegenerations-Qt-port af letvægtsskrivebordsmiljøet"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment-skrivebord"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Et letvægts- og hurtigt grafisk miljø med dedikerede følgere"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE-skrivebord"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Et letvægts- og hurtigt grafisk miljø"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Andre grafiske miljøer"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, osv."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Nytteprogrammer"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH-server"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin ekstern konfigurationsserver"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Nytteprogrammer og overvågning af netværk"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Overvågningsværktøjer, proceskontering, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva konfigurationsprogrammer"
+msgid "Mageia Wizards"
+msgstr "Konfigurationsprogrammer for Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Hjæpeprogrammer til at konfigurere server"
@@ -700,9 +829,9 @@ msgid ""
msgstr ""
"Der opstod en fejl, men jeg ved ikke hvordan den kan håndteres på en\n"
"pæn måde.\n"
-"Fortsæt på eget ansvar!"
+"Fortsæt på eget ansvar."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -722,343 +851,347 @@ msgstr "Går til trin `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux Installation %s"
+msgid "%s Installation %s"
+msgstr "%s Installation %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> mellem elementer"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg-server er langsom at starte. Vent venligst..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Dit system har kun få resurser. Du kan få problemer med at installere\n"
-"Mandriva Linux. Hvis dette sker, kan du prøve en tekst-baseret installation "
-"i stedet\n"
-"Dette gøres ved at trykke 'F1' ved opstart fra cdrommen, og så skrive 'text'."
+"%s. Hvis dette sker, kan du prøve en tekst-baseret installation i stedet.\n"
+"Dette gøres ved at trykke 'F1' ved opstart fra CD-ROM'en, og så skrive "
+"'text'."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Valg af pakkemedie"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Installér Mandriva KDE Skrivebord"
+msgid "Install %s Plasma Desktop"
+msgstr "Installer %s Plasma-skrivebord"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Installér Mandriva GNOME Skrivebord"
+msgid "Install %s GNOME Desktop"
+msgstr "Installér %ss GNOME-skrivebord"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Tilpasset installation"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE skrivebord"
+msgid "Plasma Desktop"
+msgstr "Plasma-skrivebord"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
-msgstr "GNOME skrivebord"
+msgstr "GNOME-skrivebord"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Tilpasset skrivebord"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Her er et smugkig af '%s' skrivebordet."
+msgstr "Her er et smugkig på '%s'-skrivebordet."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Klik på billeder for at se et større smugkig"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Valg af pakkegrupper"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Individuelt pakkevalg"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Total størrelse: %d / %d Mb"
+msgid "Unselect All"
+msgstr "Fravalgte alt"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Dårlig pakke"
+msgid "Total size: %d / %d MB"
+msgstr "Total størrelse: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Version: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Størrelse: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
-msgstr " %d KB\n"
+msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Vigtighed: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Du kan ikke vælge/fravælge denne pakke"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "grundet manglende %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "grundet uopfyldt %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "prøver at forfremme %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "for at beholde %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Du kan ikke vælge denne pakke, da der ikke er nok plads tilbage til at "
"installere den"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
-msgstr "De følgende pakker vil blive installeret"
+msgstr "Følgende pakker vil blive installeret"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
-msgstr "De følgende pakker vil blive afinstalleret"
+msgstr "Følgende pakker vil blive afinstalleret"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Dette er en nødvendig pakke, den kan ikke vælges fra"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Du kan ikke fravælge denne pakke. Den er allerede installeret"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Du kan ikke fravælge denne pakke. Den skal opgraderes"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Vis automatisk valgte pakker"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installér"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
-msgstr "Indlæs eller gem markering"
+msgstr "Indlæs eller gem det markerede"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Opdaterer pakkevalg"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimal installation"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr ""
"Administration\n"
"af programmer"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Vælg pakker som skal installeres"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Installerer"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Ingen detaljer"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
-msgstr "Resterende tid "
+msgstr "Resterende tid:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(beregner...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pakke"
msgstr[1] "%d pakker"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Oversigt"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfigurér"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "ikke konfigureret"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Valg af pakkemedie"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"De følgende installationsmedier er fundet.\n"
-"Hvis du ønsker at overspringe nogen af dem, kan du fravælge dem nu."
+"Følgende installationsmedier er fundet.\n"
+"Hvis du ønsker at springe nogen af dem over, kan du fravælge dem nu."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Du har mulighed for at kopiere indholdet af cd-erne over på disken før "
+"Du har mulighed for at kopiere indholdet af cd'erne over på disken før "
"installation.\n"
"Installationen vil så fortsætte fra disken og pakkerne vil forblive "
"tilgængelige, når systemet er fuldt installeret."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopiér hele cd'er"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
-msgstr "Der er opstået en fejl"
+msgstr "Der opstod en fejl"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Vælg dit tastaturlayout"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Her er den komplette liste over tilgængelige tastaturer:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Installér/Opgradér"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Er dette en nyinstallation eller en opgradering?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installation"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Opgradér %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Krypteringsnøgle for %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Afbryd installation, genstart system"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Ny installation"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr "Opgradér foregående installation (ikke anbefalet)"
+msgstr "Opgradér tidligere installation (ikke anbefalet)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1066,46 +1199,27 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Installationsprogrammet har opdaget at dit installerede Mandriva Linux-"
-"system ikke kunne \n"
-"opgraderes sikkert til %s.\n"
+"Installationsprogrammet har registreret at dit installerede Linux-system "
+"ikke\n"
+"på en sikker måde kunne opgraderes til %s.\n"
"\n"
-"En ny installation som erstatter dit tidligere system anbefales\n"
+"Det anbefales at bruge en ny installation som erstatter din forrige "
+"installation.\n"
"\n"
-"Advarsel : du bør tage en sikkerhedskopi af alle dine personlige data før du "
-"vælger \"Ny\n"
-"Installation\"."
+"Advarsel : du bør sikkerhedskopiere alle dine personlige data inden du "
+"vælger \"Ny installation\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Konfigurerer IDE"
+msgid "Configuring CD/DVD"
+msgstr "Konfigurerer CD/DVD"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Det er ikke plads for 1 MB bootstrap! Installationen vil fortsætte, men for "
-"at starte dit system op, skal du lave en bootstrap partition i DiskDrake"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Du skal lave en PPC PReP Boot bootstrap! Installationen vil fortsætte, men "
-"for at starte dit system op, skal du lave bootstrap-partitionen i DiskDrake"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1114,170 +1228,213 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
"Skift din cdrom!\n"
-"Indsæt cdrom'en med navnet \"%s\" i dit cdrom-drev og tryk på O.k., når det "
+"Indsæt cdrom'en med navnet \"%s\" i dit cdrom-drev, og tryk på Ok når det "
"gjort.\n"
-"Hvis du ikke har den så tryk på Annullér for at undgå installation fra denne "
-"cd."
+"Hvis du ikke har den, så tryk på Annullér for at undgå installation fra "
+"denne cd."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Leder efter tilgængelige pakker"
+msgstr "Leder efter tilgængelige pakker..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Dit system har ikke nok plads tilbage til installation eller opgradering (%"
-"dMB > %dMB)"
+"Dit system har ikke nok plads tilbage til installation eller opgradering "
+"(%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Vælg indlæs eller gem pakkevalg på diskette.\n"
+"Vælg indlæsning eller gemning af pakkevalg.\n"
"Formatet er det samme som for auto_install-genererede filer."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "Belastning"
+msgstr "Indlæs"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Gem"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Dårlig fil"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Valg af skrivebord"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "Du kan vælge profil for skrivebordet for din arbejdsstation: "
+msgstr "Du kan vælge profil for din arbejdsmaskines skrivebord."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Valgt størrelse er større end tilgængelig plads"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Installationstype"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
"Du har ikke valgt nogen gruppe af pakker.\n"
-"Vælg den minimale installation du ønsker"
+"Vælg den minimale installation du ønsker:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Med X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Installerer pakke %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Installer anbefalede pakker"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Med basal dokumentation (anbefalet!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Virkelig minimal installation (specielt ingen urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Forbereder opgradering..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Forbereder installationen"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Installerer pakke %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Der opstod en fejl ved sorteringen af pakkerne:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Fortsæt alligevel?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Prøv igen"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Overspring denne pakke"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Overspring alle pakker fra medie '%s'"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Gå tilbage til valg af medie og pakker"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "Der opstod en fejl ved installeringen af pakke %s"
+msgstr "Der opstod en fejl ved installeringen af pakke %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Konfiguration efter installation"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-"Forsikr dig venligst om at mediet med Opdateringsmodulerne er i drev %s"
+"Forsikr dig venligst om at mediet med opdateringsmodulerne er i drev %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Opdateringer"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Du har nu mulighed for at opsætte onlinemedier."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Dette giver mulighed for at installere sikkerhedsopdateringer."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"For at opsætte de medier, skal du har en\n"
+"internetforbindelse som virker.\n"
+"\n"
+"Vil du opsætte opdateringsmediet?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Følgende pakker vil blive installeret"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Forsøg igen?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Fejl ved tilføjelse af medie"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1292,116 +1449,87 @@ msgstr ""
"Du har nu mulighed for at hente opdaterede pakker som er blevet opdateret\n"
"efter distributionen blev gjort tilgængelig.\n"
"\n"
-"Du vil få sikkerhedsrettelser eller fejlrettelser, men du skal have en\n"
-"internet-opkobling for at fortsætte.\n"
+"Du vil kunne få sikkerhedsrettelser eller fejlrettelser, men du skal have "
+"en\n"
+"internetforbindelse for at fortsætte.\n"
"\n"
"Ønsker du at installere opdateringerne?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s på %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Udstyr"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Lydkort"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Har du et ISA-lydkort?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Kør \"alsaconf\" eller \"sndconfig\" efter installation for at konfigurere "
-"dit lydkort"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Intet lydkort genkendt. Prøv at køre \"harddrake\" efter installation"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafisk grænseflade"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
-msgstr "Netværk og Internet"
+msgstr "Netværk og internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Proxyer "
+msgstr "Proxyer"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "konfigureret"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Sikkerhedsniveau"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Brandmur"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktiveret"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "deaktiveret"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-"Du har ikke konfigureret X. Er du sikker på at du virkelig ønsker dette?"
+"Du har ikke konfigureret X. Er du sikker på, at du virkelig ønsker dette?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Forbereder opstarter..."
+msgid "Preparing initial startup program..."
+msgstr "Forbereder indledende opstartsprogram..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Vær tålmodig, dette kan tage et stykke tid..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Det virker som om du har en OldWorld eller ukendt maskine, yaboot "
-"opstartsindlæseren vil ikke virke for dig. Installationen vil fortsætte, men "
-"du skal bruge BootX eller en anden måde til at starte din maskine. Kernens "
-"parameter for root-filsystemet er: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1410,33 +1538,33 @@ msgstr ""
"I dette er sikkerhedsniveau er adgang til Windows-partitionen forbeholdt "
"administratoren."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Indsæt en tom diskette i drev %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Laver autoinstallations-diskette"
+msgstr "Laver autoinstallations-diskette..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-"Nogen dele af installationen er ikke færdig\n"
+"Visse dele af installationen er ikke færdige.\n"
"\n"
-"Er du sikker på du ønsker du at lukke nu?"
+"Er du sikker på, at du vil afslutte nu?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Tillykke"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Genstart"
@@ -1447,7 +1575,7 @@ msgstr "Genstart"
msgid ""
"_: Keep these entry short\n"
"Language"
-msgstr "Vælg sprog"
+msgstr "Sprog"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
@@ -1473,7 +1601,7 @@ msgstr "Mus"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Harddisk bestemmelse"
+msgstr "Harddisk-bestemmelse"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
@@ -1531,19 +1659,12 @@ msgid ""
"Users"
msgstr "Brugere"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Netværk"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
"_: Keep these entry short\n"
"Bootloader"
-msgstr "Systemopstarter"
+msgstr "Opstartsindlæser"
#: steps_list.pm:40 steps_list.pm:41
#, c-format
@@ -1580,26 +1701,25 @@ msgid ""
"Exit"
msgstr "Afslut"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL på spejlet?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL skal starte med ftp:// eller http://"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr ""
+#~ "Kontakter %s' websted for at hente listen over tilgængelige spejle..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Du har valgt at opgradere dit system til %s. KDE 3.5 blev fundet\n"
-#~ "på dit system. Dette installationsprogram kan ikke bibeholde KDE 3.5 i en "
-#~ "opgradering. Hvis du vælger at fortsætte, \n"
-#~ "vil KDE 4 erstatte KDE 3, og du vil miste dine personlige KDE-"
-#~ "konfigurationsindstillinger. \n"
-#~ "For at opgradere med KDE 3.5 og beholde dine personlige indstillinger, \n"
-#~ "skal du genstarte dit system og opgradere ved brug af Mandriva update "
-#~ "programmet."
-
-#~ msgid "Proceed"
-#~ msgstr "Fortsæt"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "hentning af [%s] mislykkedes"
+#~ "Kunne ikke kontakte %s' websted for at hente listen over tilgængelige "
+#~ "spejle"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Vælg det spejl hvorfra pakkerne skal hentes"
diff --git a/perl-install/install/share/po/de.po b/perl-install/install/share/po/de.po
index d5db7ee7f..e740e5b46 100644
--- a/perl-install/install/share/po/de.po
+++ b/perl-install/install/share/po/de.po
@@ -1,66 +1,89 @@
-# translation of de.po to deutsch
-# Stefan Siegel <siegel@linux-mandrake.com>, 2000, 2001, 2002, 2003.
-# Sebastian Deutscher <sebastian_deutscher@web.de>, 2003,2004.
-# Gerhard Ortner <gerhard.ortner@aon.at>, 2003, 2004.
-# Roy Steuber <roysteuber@mittweida-net.de>, 2004.
-# Marcus Fischer <i18n@marcusfischer.com>, 2004.
-# Frank Köster <frank@dueppel13.de>, 2004, 2005.
-# Ronny Standtke <Ronny.Standtke@gmx.de>, 2003, 2004.
-# Ronny Standtke <Ronny.Standtke@gmx.net>, 2004, 2005.
-# Nicolas Bauer <webmaster@mandrakeusers.de>, 2005.
-# Frank Koester <frank@dueppel13.de>, 2005.
-# Nicolas Bauer <rastafarii@mandrivauer.de>, 2006, 2007.
-# Nicolas Bauer <rastafarii@mandrivauser.de>, 2007.
-# Oliver Burger <oliver@mandrivauser.de>, 2008, 2009.
-# Oliver Burger <oliver.burger@wizard-fire.de>, 2009.
-# german translation of the MandrivaInstaller.
-# Copyright (C) 2000-2003 Mandriva S.A.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+# Ettore Atalan <atalanttore@googlemail.com>, 2014,2018
+# Klaus Christian Harke <k.c.harke@gmx.net>, 2020
+# psyca, 2014-2018,2020,2022
+# Marc Lattemann, 2013
+# Marc Lattemann, 2013
+# Oliver Burger <obgr_seneca@mageia.org>, 2013
+# psyca, 2014
+# user7 <wassipaul@gmx.at>, 2013
+# user7 <wassipaul@gmx.at>, 2013
msgid ""
msgstr ""
-"Project-Id-Version: de\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-09 09:41+0200\n"
-"Last-Translator: Oliver Burger <oliver@mandrivauser.de>\n"
-"Language-Team: deutsch <cooker-i18n@mandrivalinux.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: psyca, 2014-2018,2020,2022\n"
+"Language-Team: German (http://app.transifex.com/MageiaLinux/mageia/language/"
+"de/)\n"
+"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Treten Sie bei!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Passen Sie es Ihren Wünschen an!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Sie haben die Wahl!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Arbeitsplatz Werkzeuge"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Home Entertainment"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Für Kinder"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Für die Familie!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Für Entwickler"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Danke!"
-#: any.pm:109
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Sei Frei!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Haben Sie zusätzliche Medien?"
+msgstr "Haben Sie weitere zusätzliche Medien?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -72,120 +95,161 @@ msgstr ""
"verwendet: %s\n"
"\n"
"\n"
-"Haben Sie noch weitere Installationsmedienzum konfigurieren?"
-
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
+"Haben Sie noch weitere Installationsmedien zu konfigurieren?"
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Netzwerk (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Netzwerk (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Netzwerk (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL der Spiegel?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Die URL muss mit ftp:// oder http:// beginnen"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Kontaktiere Mandriva Linux Web-Server, um eine Liste verfügbarer Pakete zu "
-"erhalten..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Kontaktieren Sie die Mandriva Linux Webseiten, um eine Liste verfügbaren "
-"Mirrors zu erhalten"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Bitte wählen Sie einen Mirror, von dem Sie die Pakete holen wollen."
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
-msgstr "NFS-Einrichtungsetup"
+msgstr "NFS-Einrichtung"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
"Bitte geben Sie den Rechnernamen und das Verzeichnis ihres NFS-Mediums ein"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Hostname fehlt"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Verzeichnis muss mit \"/\" beginnen"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Rechnername der NFS-Einbindung?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Verzeichnis"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Ergänzend"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
-msgstr "Kann die Datei hdlist nicht auf diesem Spiegel finden"
+msgstr "Kann keine Paketliste auf diesem Spiegel-Server finden."
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core-Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted-Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree-Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Ihre Maschine beinhaltet Hardware, die nicht-freie Firmware-Dateien "
+"benötigt, damit die freien Treiber funktionieren."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Sie sollten „%s“ aktivieren"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+"„%s“ enthält die verschiedenen Bestandteile des Systems und seiner "
+"Anwendungen"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "„%s“ enthält nicht-freie Software.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Es enthält auch Firmware-Dateien, die für einige Geräte benötigt werden, um "
+"funktionieren zu können (z.B. einige AMD/ATI-Grafikkarten, einige "
+"Netzwerkkarten, einige RAID-Karten, ...)."
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"„%s“ enthält Software, die aufgrund von Software-Patenten nicht in jedem "
+"Land verbreitet werden darf."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Es enthält auch Software aus „%s“, die mit zusätzlichen Fähigkeiten neu "
+"gebaut wurde."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Sie können hier weitere Medien aktivieren, wenn Sie das wünschen."
-#: any.pm:334
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Dieses Medium enthält Paket-Aktualisierungen für das Medium „%s“"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Suche nach bereits installierten Paketen ..."
+msgstr "Bereits installierte Pakete werden gesucht ..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Finde die zu aktualisierenden Pakete ..."
+msgstr "Zu aktualisierende Pakete werden gesucht ..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "Entferne Pakete vor der Aktualisierung..."
+msgstr "Pakete vor der Aktualisierung entfernen ..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -199,87 +263,87 @@ msgstr ""
"\n"
"Wollen Sie diese Pakete wirklich entfernen?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Fehler beim Lesen der Datei %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Die folgenden Datenträger wurden umbenannt:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (vorher als %s bezeichnet)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Netzwerk"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Bitte wählen Sie ein Medium"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Die Datei existiert bereits. Überschreiben?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Erlaubnis verweigert"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr "Falscher NFS-Name"
+msgstr "Fehlerhafter NFS-Name"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "Mediumfehler %s"
+msgstr "Fehlerhaftes Medium %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Vor der Partitionierung kann ich keine Screenshots machen."
+msgid "Cannot make screenshots before partitioning"
+msgstr "Vor der Partitionierung können keine Screenshots erstellt werden"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "Die Screenshots liegen nach der Installation unter „%s“"
+msgstr "Die Screenshots sind nach der Installation unter „%s“ verfügbar"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Installation"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfiguration"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Sie müssen auch %s formatieren."
@@ -303,22 +367,22 @@ msgstr "Netzwerkverbindung herstellen"
msgid "Bringing down the network"
msgstr "Netzwerkverbindung trennen"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Bitte warten, Datei wird empfangen"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "Es ist nicht möglich, das Medium hinzuzufügen"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Pakete auf die Festplatte speichern für die spätere Verwendung"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Dateien werden kopiert"
@@ -348,84 +412,102 @@ msgstr "angenehm"
msgid "maybe"
msgstr "eventuell"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Paket-Informationen aus den XML-Metadaten beziehen ..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Keine XML-Informationen für das Medium „%s“ vorhanden, es können nur "
+"Teilergebnisse für das Paket %s angegeben werden"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Keine Beschreibung"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-"Einige der Ausgewählten Programme von %s können nicht installiert werden:\n"
+"Einige der ausgewählten Programme von %s können nicht installiert werden:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Ein Fehler ist aufgetreten:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Fataler Fehler aufgetreten: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Nicht erneut fragen"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "%d Installation schlug fehl"
+msgstr "%d Installationstransaktionen schlugen fehl"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Installieren der Pakete ist fehlgeschlagen:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Arbeitsplatzrechner"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Büro-Arbeitsplatz"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Office-Programme: Textverarbeitung (Openoffice.org Writer, KWord), "
-"Tabellenkalkulation (OpenOffice.org Calc, KSpread), PDF-Betrachter, usw."
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Office-Programme: Textverarbeitung (KWord, Abiword), Tabellenkalkulation "
-"(KSpread, Gnumeric), PDF-Betrachter, usw."
+"Office-Programme: Textverarbeitung (LibreOffice Writer, KWord), "
+"Tabellenkalkulation (LibreOffice Calc, KSpread), PDF-Betrachter, usw."
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Spiele-Station"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "Spiele: Arcade-, Brett-, Strategiespiele, usw."
+msgstr "Spiele: Arkade-, Brett-, Strategiespiele, usw."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedia-Station"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Programme, um Sound und Video abzuspielen und zu bearbeiten"
+msgstr "Programme, um Audio und Video abzuspielen und zu bearbeiten"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet-Station"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -434,274 +516,322 @@ msgstr ""
"Programme um E-Mails und News zu lesen und zu versenden (pine, mutt, tin..) "
"und um im Internet zu surfen"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Netzwerk-Computer (Client)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Clients für verschiedene Protokolle, u.a. SSH"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Werkzeuge, die die Konfiguration Ihres Computers erleichtern"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsolen-Werkzeuge"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editoren, Shells, Dateiwerkzeuge, Konsolen"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Entwicklung"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "C und C++ Entwicklungsbibliotheken, Programme und Include-Dateien"
+msgstr "C- und C++-Entwicklungsbibliotheken, Programme und Include-Dateien"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentation"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Bücher und HOWTOs zu GNU/Linux und Freier Software"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux-Standard-Base. Drittanbieterunterstützung"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Webserver"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab-Server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
-msgstr "Firewall / Router"
+msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet-Gateway"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "E-Mail/News"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix Mail-Server, Inn News-Server"
+msgstr "Postfix-Mail-Server, Inn-News-Server"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Verzeichnisdienst"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP-Server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Domänennamen- und Netzwerk-Informations-Server"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Datei- und Druckerserver"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
-msgstr "NFS-Server, Samba Server"
+msgstr "NFS-Server, Samba-Server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Datenbank"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL und MySQL-Datenbankserver"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL- und MariaDB-Datenbankserver"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
-msgstr "Email"
+msgstr "E-Mail"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Postfix Mail-Server"
+msgstr "Postfix-Mail-Server"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL oder MySQL-Datenbankserver"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL- oder MariaDB-Datenbankserver"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Netzwerkrechner-Server"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS-Server, SMB-Server, Proxy-Server, SSH-Server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr "Grafische Arbeitsoberfläche"
+msgstr "Grafische Umgebung"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE-Arbeitsplatz"
+msgid "Plasma Workstation"
+msgstr "Plasma-Arbeitsplatz"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"Die K-Desktop-Umgebung, die Standard-Arbeitsfläche mit einer Sammlung "
-"zugehöriger Programme"
+"Das K Desktop Environment, die grundlegende grafische Umgebung mit einer "
+"Sammlung zugehöriger Programme"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Gnome-Arbeitsplatz"
+msgstr "GNOME-Arbeitsplatz"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-"Eine grafische Umgebung mit anwenderfreundlichen Anwendungen und Werkzeugen"
+"Eine grafische Umgebung mit benutzerfreundlichen Anwendungen und Werkzeugen"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE-Desktop"
+msgid "Xfce Workstation"
+msgstr "Xfce-Arbeitsplatz "
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Eine leichtgewichtige und schnelle grafische Umgebung mit "
-"anwenderfreundlichen Anwendungen und Werkzeugen"
+"Eine schlankere grafische Umgebung mit benutzerfreundlichen Anwendungen und "
+"Werkzeugen"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE-Arbeitsplatz"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon-Arbeitsplatz"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Eine auf GNOME basierende grafische Umbgebung"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt-Desktop"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+"Qt-Portierung der leichtgewichtigen Desktop-Umgebung der nächsten Generation"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment Desktop"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+"Eine schlanke und schnelle grafische Umgebung mit benutzerfreundlichen "
+"Anwendungen und Werkzeugen"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE-Desktop"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Eine leichtgewichtige und schnelle grafische Umgebung"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "Andere grafische Arbeitsflächen"
+msgstr "Andere grafische Oberflächen"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, usw."
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, usw."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Werkzeuge"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH-Server"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Webmin Fernkonfigurationsserver"
+msgstr "Webmin-Fernkonfigurationsserver"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Netzwerkwerkzeuge/-überwachung"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Überwachungswerkzeuge, Prozessverwaltung, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva-Assistenten"
+msgid "Mageia Wizards"
+msgstr "Mageia-Assistenten"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Assistenten zur Servereinrichtung"
@@ -712,16 +842,16 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Es trat ein Fehler auf. Ich weiß jedoch nicht, wie ich damit sinnvoll \n"
-"umgehen soll. Sie können fortfahren, jedoch auf eigenes Risiko!"
+"Es trat ein Fehler auf. Ich weiß jedoch nicht, wie ich damit umgehen soll. "
+"Sie können fortfahren, jedoch auf eigenes Risiko!"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Einige wichtige Pakete wurden nicht richtig installiert. \n"
"Entweder ist Ihr CD-ROM-Laufwerk oder Ihre CD-ROM defekt. \n"
@@ -735,259 +865,263 @@ msgstr "Beginn von Schritt „%s“\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux-Installation %s"
+msgid "%s Installation %s"
+msgstr "%s Installation %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> zwischen den Elementen"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "Xorg Server braucht lange zum Starten. Bitte warten Sie..."
+msgstr "Der Xorg-Server braucht lange zum Starten. Bitte warten Sie ..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Ihr Rechner hat nicht genug Ressourcen. Vermutlich werden bei der \n"
-"Installation Probleme auftreten. In diesem Fall sollten Sie eine \n"
-"Text-Installation versuchen. Drücken Sie dafür <F1> während dem \n"
-"Installationsstart und geben Sie „text“ an der Eingabeaufforderung \n"
-"ein."
+"Ihr System hat nur geringe Ressourcen. Sie werden eventuell Probleme haben, "
+"%s zu installieren.\n"
+"Wenn dies auftritt, können Sie versuchen, Mageia mit einer textbasierten "
+"Benutzerschnittstelle zu installieren. Drücken Sie dafür „F1“, wenn Sie von "
+"der CD-Rom installieren, dann geben Sie „text“ ein."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Auswahl der Installationsmedien"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Installation des Mandriva KDE Desktop"
+msgid "Install %s Plasma Desktop"
+msgstr "Den %s-Plasma-Desktop installieren"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Installation des Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
+msgstr "Den %s-GNOME-Desktop installieren"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
-msgstr "Benutzer Installation"
+msgstr "Benutzerdefinierte Installation"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE-Desktop"
+msgid "Plasma Desktop"
+msgstr "Plasma-Desktop"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME-Desktop"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Benutzerdefinierter Desktop"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Hier sehen Sie eine Vorschau des '%s' Desktops"
+msgstr "Hier sehen Sie eine Vorschau des „%s“-Desktops"
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Klicken Sie auf die Bilder, um größere Vorschauen zu erhalten"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Auswahl der Paketgruppen"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Individuelle Paketauswahl"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Gesamtgröße: %d / %d MB"
+msgid "Unselect All"
+msgstr "Auswahl aufheben"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Ungültiges Paket"
+msgid "Total size: %d / %d MB"
+msgstr "Gesamtgröße: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Version: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Größe: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
-msgstr "%d KB\n"
+msgstr "%d kB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Wichtigkeit: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Sie können dieses Paket nicht auswählen/abwählen."
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "%s fehlt"
+msgstr "da %s fehlt"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "Aufgrund unerfüllter %s"
+msgstr "da %s unerfüllt ist"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "Versuche %s voranzutreiben"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "um %s beizubehalten"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Sie können dieses Paket nicht auswählen, da Sie nicht genug Plattenplatz "
"haben."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Die folgenden Pakete werden installiert"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Die folgenden Pakete werden entfernt"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Dieses Paket ist existenziell, sie können es nicht abwählen!"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr ""
"Sie können dieses Paket nicht aus der Auswahl entfernen. \n"
"Es ist bereits installiert!"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr ""
"Sie können dieses Paket nicht aus der Auswahl entfernen. \n"
"Es muss aktualisiert werden!"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Automatisch markierte Pakete anzeigen"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installation"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Auswahl laden/speichern"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Erneuere Paket Auswahl"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Zwischen hierarchischer und flacher Paketliste wechseln"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimal-Installation"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Software verwalten"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Zu installierende Pakete auswählen"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Installation"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Keine Details"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Verbleibende Zeit "
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
-msgstr "(Schätzen...)"
+msgstr "(schätze...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d Paket"
msgstr[1] "%d Pakete"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Zusammenfassung"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfigurieren"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "Nicht eingerichtet"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Auswahl der Installationsmedien"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -996,12 +1130,12 @@ msgstr ""
"Die folgenden Installationsmedien wurden gefunden.\n"
"Wählen Sie die Medien ab, die Sie überspringen wollen."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Sie haben die Möglichkeit, den Inhalt der CDs vor der Installation auf "
@@ -1009,72 +1143,72 @@ msgstr ""
"fortgeführt und die Softwarepakete bleiben verfügbar, nachdem das System "
"fertig installiert ist."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopiere die CDs"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Ein Fehler ist aufgetreten"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Bitte wählen Sie Ihren Tastaturtyp"
+msgstr "Bitte wählen Sie Ihr Tastaturlayout"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Komplette Liste aller verfügbarer Tastaturlayouts"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Installation/Aktualisierung"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Handelt es sich um eine Installation oder eine Aktualisierung?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installation"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Aktualisiere %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Schlüssel für %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Installation abbrechen, das System neustarten"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Neuinstallation"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr "Vorhergehende Installation aktualisieren (nicht empfohlen)"
+msgstr "Bestehende Installation aktualisieren (nicht empfohlen)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1082,7 +1216,7 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Der Installer hat festgestellt, dass Ihr Mandriva Linux System nicht\n"
+"Das Installationsprogramm hat festgestellt, dass Ihr Linux System nicht\n"
"sicher zu %s aktualisiert werden kann.\n"
"\n"
"Eine Neuinstallation, die Ihre bisherige ersetzt, wird empfohlen.\n"
@@ -1090,37 +1224,17 @@ msgstr ""
"Warnung: Sie sollten all Ihre persönlichen Daten sichern, bevor Sie \"Neu\n"
" Installation\" wählen."
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDE konfigurieren"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Sie haben keinen Platz für die 1 MB große Start-Partition vorgesehen! Die "
-"Installation wird fortgesetzt, Sie müssen jedoch eine Start-Partition mit "
-"DiskDrake erstellen."
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Sie müssen einen PPC PReP Boot Lader erzeugen! Die Installation wird "
-"fortgesetzt, Sie müssen jedoch eine Start-Partition mit DiskDrake erstellen."
+msgid "Configuring CD/DVD"
+msgstr "Konfiguriere CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1132,21 +1246,21 @@ msgstr ""
"Bitte legen Sie die CD-ROM „%s“ in Ihr Laufwerk. Drücken Sie dann auf „OK“.\n"
"Falls Sie sie nicht vorliegen haben, drücken Sie auf „Abbrechen“."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Suche nach vorhandenen Paketen..."
+msgstr "Suche nach verfügbaren Paketen ..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Das System hat für die Installation oder das Update nicht genug freien "
"Speicher (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1156,52 +1270,52 @@ msgstr ""
"gespeichert werden soll. Es handelt sich um das gleiche\n"
"Format, wie die unter „auto_install“ erzeugten Disketten."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "Last"
+msgstr "Laden"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Speichern"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Datei fehlerhaft"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
-msgstr "Auswahl der Desktopumgebung"
+msgstr "Auswahl der Desktop-Umgebung"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Sie haben die Wahl zwischen verschiedenen Desktopprofilen."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Gewünschte Größe übersteigt den verfügbaren Platz"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Installationstyp"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1210,89 +1324,132 @@ msgstr ""
"Sie haben keine Paketgruppe ausgewählt.\n"
"Bitte wählen Sie die minimale Installation, die Sie wünschen."
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
-msgstr "Mit X"
+msgstr "Mit X (grafischem Server)"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Installiere Paket %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Empfohlene Pakete installieren"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Mit minimaler Dokumentation (Empfohlen)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Extrem minimale Installation (ohne „urpmi“)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Die Aktualisierung wird vorbereitet ..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
-msgstr "Bereite Installation vor"
+msgstr "Installation wird vorbereitet"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
-msgstr "Installiere Paket %s"
+msgstr "Paket %s wird installiert"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Bei der Anforderung folgender Pakete trat ein Fehler auf:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Wollen Sie trotzdem fortfahren?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Wiederholen"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Dieses Paket überspringen"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "Überspringe alle Pakete von dem Medium \"%s\""
+msgstr "Alle Pakete vom Medium \"%s\" werden übersprungen"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Zurück zu den Medien und zur Paketauswahl"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "Bei der Installation des Paketes%s trat ein Fehler auf."
+msgstr "Bei der Installation des Paketes %s trat ein Fehler auf."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Bereite weitere Konfiguration vor ..."
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
"Bitte stellen Sie sicher, dass sich das Update-Modul-Medium im Laufwerk %s "
"befindet"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Aktualisierungen"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Sie haben nun die Möglichkeit, Onlinemedien einzurichten."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Dies erlaubt Ihnen Sicherheitsaktualisierungen zu installieren."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Um diese Medien einzurichten benötigen Sie eine funktionierende\n"
+"Internetverbindung.\n"
+"\n"
+"Möchen Sie die Onlinemedien einrichten?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Dieser Downloader konnte nicht installiert werden"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Nochmals versuchen?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Fehler beim Hinzufügen des Mediums"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1305,139 +1462,106 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
"Sie haben nun die Möglichkeit Pakete zu installieren, die seit Erscheinen\n"
-"der Distribution aktualisiert wurden. Es handelt sich um \n"
-"Sicherheitsaktualisierungen und Fehlerkorrekturen.\n"
+"der Distribution aktualisiert wurden. Diese können "
+"Sicherheitsaktualisierungen und Fehlerkorrekturen beinhalten.\n"
"\n"
"Allerdings benötigen Sie dafür eine funktionierende Internetverbindung.\n"
"\n"
"Möchten Sie die Aktualisierungen vornehmen?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s auf %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Soundkarte"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Verfügen Sie über eine ISA-Soundkarte?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Starten Sie „sndconfig“ oder „alsaconf“ nach der Installation, um Ihre "
-"Soundkarte einzurichten."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Es wurde keine Soundkarte gefunden. Versuchen Sie „harddrake“ nach der "
-"Installation."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafikumgebung"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Netzwerk & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Proxies"
+msgstr "Proxys"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "konfiguriert"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Sicherheitsebene"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktiviert"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "deaktiviert"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Sie haben X nicht konfiguriert. Sind Sie sicher?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Bereite Bootloader vor ..."
+msgid "Preparing initial startup program..."
+msgstr "Initiale Systemstartprogramme vorbereiten ..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr "Ein wenig Geduld, dies kann eine Zeit lang brauchen..."
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Sie scheinen einen „OldWorld“ oder unbekannten Rechner zu verwenden. Der "
-"Bootloader „yaboot“ wird daher leider nicht funktionieren. Die Installation "
-"wird fortgesetzt, sie werden jedoch „BootX“ oder etwas ähnliches verwenden "
-"müssen um Ihren Rechner zu starten. Der Kernelparameter für das Root-"
-"Dateisystem ist: root=%s"
+msgstr "Ein wenig Geduld, dies kann einige Zeit dauern ..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"In dieser Sicherheitseinstellung ist der Zugriff auf Datein der "
-"Windowspartition nur dem Administrator erlaubt"
+"In dieser Sicherheitsebene ist der Zugriff auf Dateien der Windows-Partition "
+"nur dem Administrator erlaubt"
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "Legen Sie eine leere Diskette in das %s ein."
+msgstr "Legen Sie eine leere Diskette in das Laufwerk %s ein."
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Erstelle eine Auto-Installationsdiskette"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1448,12 +1572,12 @@ msgstr ""
"\n"
"Wollen Sie DrakX wirklich beenden?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Herzlichen Glückwunsch!"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Neustart"
@@ -1469,7 +1593,7 @@ msgstr "Sprache auswählen"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr "Lokalisation"
+msgstr "Lokalisierung"
#: steps_list.pm:17
#, c-format
@@ -1525,7 +1649,7 @@ msgstr "Partitionierung"
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr "Formatieren"
+msgstr "Formatierung"
#: steps_list.pm:29
#, c-format
@@ -1548,13 +1672,6 @@ msgid ""
"Users"
msgstr "Benutzer"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Netzwerk"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1596,29 +1713,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Verlassen"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Sie haben sich entschieden, Ihr System auf %s zu aktualisieren. Es wurde "
-#~ "ein KDE 3.5 auf Ihrem System erkannt\n"
-#~ "Dieser Installer kann KDE 3.5 in einer Aktualisierung nicht erhalten, "
-#~ "wenn Si forfahren wollen,\n"
-#~ "wird KDE 3.5. durch KDE 4 ersetzt und Sie werden Ihre persönlichen KDE "
-#~ "3.5 Einstellungen verlieren.\n"
-#~ "Um mit KDE 3.5 zu aktualisieren und Ihre persönlichen Einstellungen zu "
-#~ "erhalten, \n"
-#~ "starten Sie Ihr System neu und aktualisieren Sie mit Hilfe von "
-#~ "MandrivaUpdate."
-
-#~ msgid "Proceed"
-#~ msgstr "Fortfahren"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "Holen von [%s] fehlgeschlagen"
diff --git a/perl-install/install/share/po/de_AT.po b/perl-install/install/share/po/de_AT.po
new file mode 100644
index 000000000..eae8db34e
--- /dev/null
+++ b/perl-install/install/share/po/de_AT.po
@@ -0,0 +1,1706 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: German (Austria) (http://www.transifex.com/MageiaLinux/mageia/"
+"language/de_AT/)\n"
+"Language: de_AT\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr "Treten Sie bei!"
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr "Passen Sie es Ihren Wünschen an!"
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr "Sie haben die Wahl!"
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr "Arbeitsplatz Werkzeuge"
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr "Home Entertainment"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Für Kinder"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Für die Familie!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Für Entwickler"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Danke!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Sei Frei!"
+
+#: any.pm:151
+#, c-format
+msgid "Do you have further supplementary media?"
+msgstr "Haben Sie weitere zusätzliche Medien?"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:154
+#, c-format
+msgid ""
+"The following media have been found and will be used during install: %s.\n"
+"\n"
+"\n"
+"Do you have a supplementary installation medium to configure?"
+msgstr ""
+"Folgende Medien wurden gefunden und werden während der Installation "
+"verwendet: %s\n"
+"\n"
+"\n"
+"Haben Sie noch weitere Installationsmedien zu konfigurieren?"
+
+#: any.pm:162
+#, c-format
+msgid "Network (HTTP)"
+msgstr "Netzwerk (HTTP)"
+
+#: any.pm:163
+#, c-format
+msgid "Network (FTP)"
+msgstr "Netzwerk (FTP)"
+
+#: any.pm:164
+#, c-format
+msgid "Network (NFS)"
+msgstr "Netzwerk (NFS)"
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr "NFS-Einrichtung"
+
+#: any.pm:225
+#, c-format
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
+"Bitte geben Sie den Rechnernamen und das Verzeichnis ihres NFS-Mediums ein"
+
+#: any.pm:229
+#, c-format
+msgid "Hostname missing"
+msgstr "Hostname fehlt"
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr "Verzeichnis muss mit \"/\" beginnen"
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr "Rechnername der NFS-Einbindung?"
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Verzeichnis"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr "Ergänzend"
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr "Kann keine Paketliste auf diesem Spiegel-Server finden."
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core-Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted-Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree-Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Ihre Maschine beinhaltet Hardware, die nicht-freie Firmware-Dateien "
+"benötigt, damit die freien Treiber funktionieren."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Sie sollten „%s“ aktivieren"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+"„%s“ enthält die verschiedenen Bestandteile des Systems und seiner "
+"Anwendungen"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "„%s“ enthält nicht-freie Software.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Es enthält auch Firmware-Dateien, die für einige Geräte benötigt werden, um "
+"funktionieren zu können (z.B. einige AMD/ATI-Grafikkarten, einige "
+"Netzwerkkarten, einige RAID-Karten,...)."
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"„%s“ enthält Software, die aufgrund von Software-Patenten nicht in jedem "
+"Land verbreitet werden darf."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Es enthält auch Software aus „%s“, die mit zusätzlichen Fähigkeiten neu "
+"gebaut wurde."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Sie können hier weitere Medien aktivieren, wenn Sie das wünschen."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Dieses Medium enthält Paket-Aktualisierungen für das Medium „%s“"
+
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr "Bereits installierte Pakete werden gesucht ..."
+
+#: any.pm:593
+#, c-format
+msgid "Finding packages to upgrade..."
+msgstr "Zu aktualisierende Pakete werden gesucht..."
+
+#: any.pm:612
+#, c-format
+msgid "Removing packages prior to upgrade..."
+msgstr "Pakete vor der Aktualisierung entfernen..."
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:850
+#, c-format
+msgid ""
+"The following packages will be removed to allow upgrading your system: %s\n"
+"\n"
+"\n"
+"Do you really want to remove these packages?\n"
+msgstr ""
+"Folgende Pakete werden entfernt, um das Aktualisieren Ihres Rechners zu "
+"ermöglichen: %s\n"
+"\n"
+"\n"
+"Wollen Sie diese Pakete wirklich entfernen?\n"
+
+#: any.pm:1075
+#, c-format
+msgid "Error reading file %s"
+msgstr "Fehler beim Lesen der Datei %s"
+
+#: any.pm:1283
+#, c-format
+msgid "The following disk(s) were renamed:"
+msgstr "Die folgenden Datenträger wurden umbenannt:"
+
+#: any.pm:1285
+#, c-format
+msgid "%s (previously named as %s)"
+msgstr "%s (vorher als %s bezeichnet)"
+
+#: any.pm:1342
+#, c-format
+msgid "HTTP"
+msgstr "HTTP"
+
+#: any.pm:1342
+#, c-format
+msgid "FTP"
+msgstr "FTP"
+
+#: any.pm:1342
+#, c-format
+msgid "NFS"
+msgstr "NFS"
+
+#: any.pm:1361 steps_interactive.pm:979
+#, c-format
+msgid "Network"
+msgstr "Netzwerk"
+
+#: any.pm:1365
+#, c-format
+msgid "Please choose a media"
+msgstr "Bitte wählen Sie ein Medium"
+
+#: any.pm:1381
+#, c-format
+msgid "File already exists. Overwrite it?"
+msgstr "Die Datei existiert bereits. Überschreiben?"
+
+#: any.pm:1385
+#, c-format
+msgid "Permission denied"
+msgstr "Erlaubnis verweigert"
+
+#: any.pm:1433
+#, c-format
+msgid "Bad NFS name"
+msgstr "Fehlerhafter NFS-Name"
+
+#: any.pm:1454
+#, c-format
+msgid "Bad media %s"
+msgstr "Fehlerhaftes Medium %s"
+
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr "Vor der Partitionierung können keine Screenshots erstellt werden"
+
+#: any.pm:1509
+#, c-format
+msgid "Screenshots will be available after install in %s"
+msgstr "Die Screenshots sind nach der Installation unter „%s“ verfügbar"
+
+#: gtk.pm:134
+#, c-format
+msgid "Installation"
+msgstr "Installation"
+
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
+#, c-format
+msgid "Configuration"
+msgstr "Konfiguration"
+
+#: install2.pm:220
+#, c-format
+msgid "You must also format %s"
+msgstr "Sie müssen auch %s formatieren."
+
+#: interactive.pm:16
+#, c-format
+msgid ""
+"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
+"You can find some information about them at: %s"
+msgstr ""
+"Einige Hardware-Komponenten Ihres Rechners benötigen „proprietäre“\n"
+"Treiber. Weitere Infos hierzu finden Sie unter: %s"
+
+#: interactive.pm:22
+#, c-format
+msgid "Bringing up the network"
+msgstr "Netzwerkverbindung herstellen"
+
+#: interactive.pm:27
+#, c-format
+msgid "Bringing down the network"
+msgstr "Netzwerkverbindung trennen"
+
+#: media.pm:397
+#, c-format
+msgid "Please wait, retrieving file"
+msgstr "Bitte warten, Datei wird empfangen"
+
+#: media.pm:704
+#, c-format
+msgid "unable to add medium"
+msgstr "Es ist nicht möglich, das Medium hinzuzufügen"
+
+#: media.pm:744
+#, c-format
+msgid "Copying some packages on disks for future use"
+msgstr "Pakete auf die Festplatte speichern für die spätere Verwendung"
+
+#: media.pm:797
+#, c-format
+msgid "Copying in progress"
+msgstr "Dateien werden kopiert"
+
+#: pkgs.pm:32
+#, c-format
+msgid "must have"
+msgstr "unbedingt notwendig"
+
+#: pkgs.pm:33
+#, c-format
+msgid "important"
+msgstr "wichtig"
+
+#: pkgs.pm:34
+#, c-format
+msgid "very nice"
+msgstr "sehr angenehm"
+
+#: pkgs.pm:35
+#, c-format
+msgid "nice"
+msgstr "angenehm"
+
+#: pkgs.pm:36
+#, c-format
+msgid "maybe"
+msgstr "eventuell"
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Paket-Informationen aus den XML-Metadaten beziehen..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Keine XML-Informationen für das Medium „%s“ vorhanden, es können nur "
+"Teilergebnisse für das Paket %s angegeben werden"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Keine Beschreibung"
+
+#: pkgs.pm:290
+#, c-format
+msgid ""
+"Some packages requested by %s cannot be installed:\n"
+"%s"
+msgstr ""
+"Einige der ausgewählten Programme von %s können nicht installiert werden:\n"
+"%s"
+
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
+msgid "An error occurred:"
+msgstr "Ein Fehler ist aufgetreten:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Es ist ein fataler Fehler aufgetreten: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Nicht erneut fragen"
+
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr "%d Installationstransaktionen fehlgeschlagen"
+
+#: pkgs.pm:929
+#, c-format
+msgid "Installation of packages failed:"
+msgstr "Installieren der Pakete ist fehlgeschlagen:"
+
+#: share/meta-task/compssUsers.pl:16
+#, c-format
+msgid "Workstation"
+msgstr "Arbeitsplatzrechner"
+
+#: share/meta-task/compssUsers.pl:18
+#, c-format
+msgid "Office Workstation"
+msgstr "Büro-Arbeitsplatz"
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+"Office-Programme: Textverarbeitung (LibreOffice Writer, KWord), "
+"Tabellenkalkulation (LibreOffice Calc, KSpread), PDF-Betrachter, usw."
+
+#: share/meta-task/compssUsers.pl:26
+#, c-format
+msgid "Game station"
+msgstr "Spiele-Station"
+
+#: share/meta-task/compssUsers.pl:27
+#, c-format
+msgid "Amusement programs: arcade, boards, strategy, etc"
+msgstr "Spiele: Arkade-, Brett-, Strategiespiele, usw."
+
+#: share/meta-task/compssUsers.pl:30
+#, c-format
+msgid "Multimedia station"
+msgstr "Multimedia-Station"
+
+#: share/meta-task/compssUsers.pl:31
+#, c-format
+msgid "Sound and video playing/editing programs"
+msgstr "Programme, um Audio und Video abzuspielen und zu bearbeiten"
+
+#: share/meta-task/compssUsers.pl:36
+#, c-format
+msgid "Internet station"
+msgstr "Internet-Station"
+
+#: share/meta-task/compssUsers.pl:37
+#, c-format
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+"Programme um E-Mails und News zu lesen und zu versenden (pine, mutt, tin..) "
+"und um im Internet zu surfen"
+
+#: share/meta-task/compssUsers.pl:42
+#, c-format
+msgid "Network Computer (client)"
+msgstr "Netzwerk-Computer (Client)"
+
+#: share/meta-task/compssUsers.pl:43
+#, c-format
+msgid "Clients for different protocols including ssh"
+msgstr "Clients für verschiedene Protokolle, u.a. SSH"
+
+#: share/meta-task/compssUsers.pl:49
+#, c-format
+msgid "Tools to ease the configuration of your computer"
+msgstr "Werkzeuge, die die Konfiguration Ihres Computers erleichtern"
+
+#: share/meta-task/compssUsers.pl:53
+#, c-format
+msgid "Console Tools"
+msgstr "Konsolen-Werkzeuge"
+
+#: share/meta-task/compssUsers.pl:54
+#, c-format
+msgid "Editors, shells, file tools, terminals"
+msgstr "Editoren, Shells, Dateiwerkzeuge, Konsolen"
+
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
+#, c-format
+msgid "Development"
+msgstr "Entwicklung"
+
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
+msgid "C and C++ development libraries, programs and include files"
+msgstr "C- und C++-Entwicklungsbibliotheken, Programme und Include-Dateien"
+
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
+#, c-format
+msgid "Documentation"
+msgstr "Dokumentation"
+
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
+msgid "Books and Howto's on Linux and Free Software"
+msgstr "Bücher und HOWTOs zu GNU/Linux und Freier Software"
+
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
+#, c-format
+msgid "LSB"
+msgstr "LSB"
+
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
+msgid "Linux Standard Base. Third party applications support"
+msgstr "Linux-Standard-Base. Drittanbieterunterstützung"
+
+#: share/meta-task/compssUsers.pl:79
+#, c-format
+msgid "Web Server"
+msgstr "Webserver"
+
+#: share/meta-task/compssUsers.pl:80
+#, c-format
+msgid "Apache"
+msgstr "Apache"
+
+#: share/meta-task/compssUsers.pl:84
+#, c-format
+msgid "Groupware"
+msgstr "Groupware"
+
+#: share/meta-task/compssUsers.pl:85
+#, c-format
+msgid "Kolab Server"
+msgstr "Kolab-Server"
+
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
+msgid "Firewall/Router"
+msgstr "Firewall/Router"
+
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
+msgid "Internet gateway"
+msgstr "Internet-Gateway"
+
+#: share/meta-task/compssUsers.pl:92
+#, c-format
+msgid "Mail/News"
+msgstr "E-Mail/News"
+
+#: share/meta-task/compssUsers.pl:93
+#, c-format
+msgid "Postfix mail server, Inn news server"
+msgstr "Postfix-Mail-Server, Inn-News-Server"
+
+#: share/meta-task/compssUsers.pl:97
+#, c-format
+msgid "Directory Server"
+msgstr "Verzeichnisdienst"
+
+#: share/meta-task/compssUsers.pl:102
+#, c-format
+msgid "FTP Server"
+msgstr "FTP-Server"
+
+#: share/meta-task/compssUsers.pl:103
+#, c-format
+msgid "ProFTPd"
+msgstr "ProFTPd"
+
+#: share/meta-task/compssUsers.pl:107
+#, c-format
+msgid "DNS/NIS"
+msgstr "DNS/NIS"
+
+#: share/meta-task/compssUsers.pl:108
+#, c-format
+msgid "Domain Name and Network Information Server"
+msgstr "Domänennamen- und Netzwerk-Informations-Server"
+
+#: share/meta-task/compssUsers.pl:112
+#, c-format
+msgid "File and Printer Sharing Server"
+msgstr "Datei- und Druckerserver"
+
+#: share/meta-task/compssUsers.pl:113
+#, c-format
+msgid "NFS Server, Samba server"
+msgstr "NFS-Server, Samba-Server"
+
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
+msgid "Database"
+msgstr "Datenbank"
+
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL- und MariaDB-Datenbankserver"
+
+#: share/meta-task/compssUsers.pl:123
+#, c-format
+msgid "Web/FTP"
+msgstr "Web/FTP"
+
+#: share/meta-task/compssUsers.pl:124
+#, c-format
+msgid "Apache, Pro-ftpd"
+msgstr "Apache, Pro-ftpd"
+
+#: share/meta-task/compssUsers.pl:128
+#, c-format
+msgid "Mail"
+msgstr "E-Mail"
+
+#: share/meta-task/compssUsers.pl:129
+#, c-format
+msgid "Postfix mail server"
+msgstr "Postfix-Mail-Server"
+
+#: share/meta-task/compssUsers.pl:134
+#, c-format
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL- oder MariaDB-Datenbankserver"
+
+#: share/meta-task/compssUsers.pl:142
+#, c-format
+msgid "Network Computer server"
+msgstr "Netzwerkrechner-Server"
+
+#: share/meta-task/compssUsers.pl:143
+#, c-format
+msgid "NFS server, SMB server, Proxy server, ssh server"
+msgstr "NFS-Server, SMB-Server, Proxy-Server, SSH-Server"
+
+#: share/meta-task/compssUsers.pl:150
+#, c-format
+msgid "Graphical Environment"
+msgstr "Grafische Umgebung"
+
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr "Plasma-Arbeitsplatz"
+
+#: share/meta-task/compssUsers.pl:153
+#, c-format
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+"Das K Desktop Environment, die grundlegende grafische Umgebung mit einer "
+"Sammlung zugehöriger Programme"
+
+#: share/meta-task/compssUsers.pl:158
+#, c-format
+msgid "GNOME Workstation"
+msgstr "GNOME-Arbeitsplatz"
+
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+"Eine grafische Umgebung mit benutzerfreundlichen Anwendungen und Werkzeugen"
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Xfce-Arbeitsplatz "
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+"Eine schlankere grafische Umgebung mit benutzerfreundlichen Anwendungen und "
+"Werkzeugen"
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE-Arbeitsplatz"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon-Arbeitsplatz"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Eine auf GNOME basierende grafische Umbgebung"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt-Desktop"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+"Qt-Portierung der leichtgewichtigen Desktop-Umgebung der nächsten Generation"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment Desktop"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+"Eine schlanke und schnelle grafische Umgebung mit benutzerfreundlichen "
+"Anwendungen und Werkzeugen"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE-Desktop"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Eine leichtgewichtige und schnelle grafische Umgebung"
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
+msgid "Other Graphical Desktops"
+msgstr "Andere grafische Oberflächen"
+
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, usw."
+
+#: share/meta-task/compssUsers.pl:218
+#, c-format
+msgid "Utilities"
+msgstr "Dienstprogramme"
+
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
+msgid "SSH Server"
+msgstr "SSH-Server"
+
+#: share/meta-task/compssUsers.pl:225
+#, c-format
+msgid "Webmin"
+msgstr "Webmin"
+
+#: share/meta-task/compssUsers.pl:226
+#, c-format
+msgid "Webmin Remote Configuration Server"
+msgstr "Webmin-Fernkonfigurationsserver"
+
+#: share/meta-task/compssUsers.pl:230
+#, c-format
+msgid "Network Utilities/Monitoring"
+msgstr "Netzwerkwerkzeuge/-überwachung"
+
+#: share/meta-task/compssUsers.pl:231
+#, c-format
+msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
+msgstr "Überwachungswerkzeuge, Prozessverwaltung, tcpdump, nmap, ..."
+
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr "Mageia-Assistenten"
+
+#: share/meta-task/compssUsers.pl:236
+#, c-format
+msgid "Wizards to configure server"
+msgstr "Assistenten zur Servereinrichtung"
+
+#: steps.pm:85
+#, c-format
+msgid ""
+"An error occurred, but I do not know how to handle it nicely.\n"
+"Continue at your own risk."
+msgstr ""
+"Es trat ein Fehler auf. Ich weiß jedoch nicht, wie ich damit umgehen soll. "
+"Sie können fortfahren, jedoch auf eigenes Risiko!"
+
+#: steps.pm:469
+#, c-format
+msgid ""
+"Some important packages did not get installed properly.\n"
+"Either your cdrom drive or your cdrom is defective.\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
+"\"\n"
+msgstr ""
+"Einige wichtige Pakete wurden nicht richtig installiert. \n"
+"Entweder ist Ihr CD-ROM-Laufwerk oder Ihre CD-ROM defekt. \n"
+"Testen Sie die CD-ROM auf einem Linux-Rechner mittels „rpm -qpl \n"
+"media/main/*.rpm“\n"
+
+#: steps_auto_install.pm:71 steps_stdio.pm:27
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr "Beginn von Schritt „%s“\n"
+
+#: steps_curses.pm:22
+#, c-format
+msgid "%s Installation %s"
+msgstr "%s Installation %s"
+
+#: steps_curses.pm:32
+#, c-format
+msgid "<Tab>/<Alt-Tab> between elements"
+msgstr "<Tab>/<Alt-Tab> zwischen den Elementen"
+
+#: steps_gtk.pm:151
+#, c-format
+msgid "Xorg server is slow to start. Please wait..."
+msgstr "Der Xorg-Server braucht lange zum Starten. Bitte warten Sie..."
+
+#: steps_gtk.pm:216
+#, c-format
+msgid ""
+"Your system is low on resources. You may have some problem installing\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
+"press `F1' when booting on CDROM, then enter `text'."
+msgstr ""
+"Ihr System hat nur geringe Ressourcen. Sie werden eventuell Probleme haben, "
+"%s zu installieren.\n"
+"Wenn dies auftritt, können Sie versuchen, Mageia mit einer textbasierten "
+"Benutzerschnittstelle zu installieren. Drücken Sie dafür „F1“, wenn Sie von "
+"der CD-Rom installieren, dann geben Sie „text“ ein."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Auswahl der Installationsmedien"
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr "Den %s-Plasma-Desktop installieren"
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Den %s-GNOME-Desktop installieren"
+
+#: steps_gtk.pm:259
+#, c-format
+msgid "Custom install"
+msgstr "Benutzerdefinierte Installation"
+
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Plasma-Desktop"
+
+#: steps_gtk.pm:281
+#, c-format
+msgid "GNOME Desktop"
+msgstr "GNOME-Desktop"
+
+#: steps_gtk.pm:282
+#, c-format
+msgid "Custom Desktop"
+msgstr "Benutzerdefinierter Desktop"
+
+#: steps_gtk.pm:288
+#, c-format
+msgid "Here's a preview of the '%s' desktop."
+msgstr "Hier sehen Sie eine Vorschau des „%s“-Desktops"
+
+#: steps_gtk.pm:315
+#, c-format
+msgid "Click on images in order to see a bigger preview"
+msgstr "Klicken Sie auf die Bilder, um größere Vorschauen zu erhalten"
+
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
+msgid "Package Group Selection"
+msgstr "Auswahl der Paketgruppen"
+
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
+msgid "Individual package selection"
+msgstr "Individuelle Paketauswahl"
+
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr "Auswahl aufheben"
+
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr "Gesamtgröße: %d / %d MB"
+
+#: steps_gtk.pm:425
+#, c-format
+msgid "Version: "
+msgstr "Version:"
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "Size: "
+msgstr "Größe:"
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "%d KB\n"
+msgstr "%d kB\n"
+
+#: steps_gtk.pm:427
+#, c-format
+msgid "Importance: "
+msgstr "Wichtigkeit:"
+
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr "Sie können dieses Paket nicht auswählen/abwählen."
+
+#: steps_gtk.pm:466
+#, c-format
+msgid "due to missing %s"
+msgstr "wegen fehlendem %s"
+
+#: steps_gtk.pm:467
+#, c-format
+msgid "due to unsatisfied %s"
+msgstr "wegen nicht erfüllter Abhängigkeit von %s "
+
+#: steps_gtk.pm:468
+#, c-format
+msgid "trying to promote %s"
+msgstr "Es wird versucht, %s voranzubringen"
+
+#: steps_gtk.pm:469
+#, c-format
+msgid "in order to keep %s"
+msgstr "um %s zu behalten"
+
+#: steps_gtk.pm:474
+#, c-format
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+"Sie können dieses Paket nicht auswählen, da Sie nicht genug Plattenplatz "
+"haben."
+
+#: steps_gtk.pm:477
+#, c-format
+msgid "The following packages are going to be installed"
+msgstr "Die folgenden Pakete werden installiert"
+
+#: steps_gtk.pm:478
+#, c-format
+msgid "The following packages are going to be removed"
+msgstr "Die folgenden Pakete werden entfernt"
+
+#: steps_gtk.pm:504
+#, c-format
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Dieses Paket ist existenziell, sie können es nicht abwählen!"
+
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr ""
+"Sie können dieses Paket nicht aus der Auswahl entfernen. \n"
+"Es ist bereits installiert!"
+
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+"Sie können dieses Paket nicht aus der Auswahl entfernen. \n"
+"Es muss aktualisiert werden!"
+
+#: steps_gtk.pm:512
+#, c-format
+msgid "Show automatically selected packages"
+msgstr "Automatisch markierte Pakete anzeigen"
+
+#: steps_gtk.pm:516
+#, c-format
+msgid "Install"
+msgstr "Installieren"
+
+#: steps_gtk.pm:519
+#, c-format
+msgid "Load/Save selection"
+msgstr "Auswahl laden/speichern"
+
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
+msgid "Updating package selection"
+msgstr "Erneuere Paket Auswahl"
+
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Zwischen hierarchischer und flacher Paketliste wechseln"
+
+#: steps_gtk.pm:530
+#, c-format
+msgid "Minimal install"
+msgstr "Minimal-Installation"
+
+#: steps_gtk.pm:543
+#, c-format
+msgid "Software Management"
+msgstr "Software-Verwaltung"
+
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
+msgid "Choose the packages you want to install"
+msgstr "Zu installierende Pakete auswählen"
+
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
+#, c-format
+msgid "Installing"
+msgstr "Wird installiert"
+
+#: steps_gtk.pm:590
+#, c-format
+msgid "No details"
+msgstr "Keine Details"
+
+#: steps_gtk.pm:610
+#, c-format
+msgid "Time remaining:"
+msgstr "Verbleibende Zeit "
+
+#: steps_gtk.pm:611
+#, c-format
+msgid "(estimating...)"
+msgstr "(Schätzen...)"
+
+#: steps_gtk.pm:637
+#, c-format
+msgid "%d package"
+msgid_plural "%d packages"
+msgstr[0] ""
+msgstr[1] ""
+
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
+#, c-format
+msgid "Summary"
+msgstr "Zusammenfassung"
+
+#: steps_gtk.pm:713
+#, c-format
+msgid "Configure"
+msgstr "Einrichten"
+
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
+msgid "not configured"
+msgstr "Nicht eingerichtet"
+
+#: steps_gtk.pm:773 steps_interactive.pm:315
+#, c-format
+msgid ""
+"The following installation media have been found.\n"
+"If you want to skip some of them, you can unselect them now."
+msgstr ""
+"Die folgenden Installationsmedien wurden gefunden.\n"
+"Wählen Sie die Medien ab, die Sie überspringen wollen."
+
+#: steps_gtk.pm:789 steps_interactive.pm:321
+#, c-format
+msgid ""
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
+msgstr ""
+"Sie haben die Möglichkeit, den Inhalt der CDs vor der Installation auf "
+"Festplatte zu kopieren. Die Installation wird dann von Festplatte "
+"fortgeführt und die Softwarepakete bleiben verfügbar, nachdem das System "
+"fertig installiert ist."
+
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
+msgid "Copy whole CDs"
+msgstr "Kopiere die CDs"
+
+#: steps_interactive.pm:40
+#, c-format
+msgid "An error occurred"
+msgstr "Ein Fehler ist aufgetreten"
+
+#: steps_interactive.pm:105
+#, c-format
+msgid "Please choose your keyboard layout"
+msgstr "Bitte wählen Sie Ihr Tastaturlayout"
+
+#: steps_interactive.pm:109
+#, c-format
+msgid "Here is the full list of available keyboards:"
+msgstr "Komplette Liste aller verfügbarer Tastaturlayouts"
+
+#: steps_interactive.pm:153
+#, c-format
+msgid "Install/Upgrade"
+msgstr "Installation/Aktualisierung"
+
+#: steps_interactive.pm:157
+#, c-format
+msgid "Is this an install or an upgrade?"
+msgstr "Handelt es sich um eine Installation oder eine Aktualisierung?"
+
+#: steps_interactive.pm:159
+#, c-format
+msgid ""
+"_: This is a noun:\n"
+"Install"
+msgstr "Installation"
+
+#: steps_interactive.pm:161
+#, c-format
+msgid "Upgrade %s"
+msgstr "Aktualisiere %s"
+
+#: steps_interactive.pm:184
+#, c-format
+msgid "Encryption key for %s"
+msgstr "Schlüssel für %s"
+
+#: steps_interactive.pm:217
+#, c-format
+msgid "Cancel installation, reboot system"
+msgstr "Installation abbrechen, das System neustarten"
+
+#: steps_interactive.pm:218
+#, c-format
+msgid "New Installation"
+msgstr "Neuinstallation"
+
+#: steps_interactive.pm:219
+#, c-format
+msgid "Upgrade previous installation (not recommended)"
+msgstr "Bestehende Installation aktualisieren (nicht empfohlen)"
+
+#: steps_interactive.pm:223
+#, c-format
+msgid ""
+"Installer has detected that your installed Linux system could not\n"
+"safely be upgraded to %s.\n"
+"\n"
+"New installation replacing your previous one is recommended.\n"
+"\n"
+"Warning : you should backup all your personal data before choosing \"New\n"
+"Installation\"."
+msgstr ""
+"Das Installationsprogramm hat festgestellt, dass Ihr Linux System nicht\n"
+"sicher zu %s aktualisiert werden kann.\n"
+"\n"
+"Eine Neuinstallation, die Ihre bisherige ersetzt, wird empfohlen.\n"
+"\n"
+"Warnung: Sie sollten all Ihre persönlichen Daten sichern, bevor Sie \"Neu\n"
+" Installation\" wählen."
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "CD/DVD"
+msgstr "CD/DVD"
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr "Konfiguriere CD/DVD"
+
+#: steps_interactive.pm:354
+#, c-format
+msgid ""
+"Change your Cd-Rom!\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
+"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
+msgstr ""
+"Bitte wechseln Sie die CD!\n"
+"Bitte legen Sie die CD-ROM „%s“ in Ihr Laufwerk. Drücken Sie dann auf „OK“.\n"
+"Falls Sie sie nicht vorliegen haben, drücken Sie auf „Abbrechen“."
+
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
+msgid "Looking for available packages..."
+msgstr "Suche nach verfügbaren Paketen ..."
+
+#: steps_interactive.pm:380
+#, c-format
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+"Das System hat für die Installation oder das Update nicht genug freien "
+"Speicher (%dMB > %dMB)"
+
+#: steps_interactive.pm:428
+#, c-format
+msgid ""
+"Please choose load or save package selection.\n"
+"The format is the same as auto_install generated files."
+msgstr ""
+"Bitte wählen Sie, ob die Paketauswahl geladen oder\n"
+"gespeichert werden soll. Es handelt sich um das gleiche\n"
+"Format, wie die unter „auto_install“ erzeugten Disketten."
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Load"
+msgstr "Laden"
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Save"
+msgstr "Speichern"
+
+#: steps_interactive.pm:438
+#, c-format
+msgid "Bad file"
+msgstr "Datei fehlerhaft"
+
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr "Plasma"
+
+#: steps_interactive.pm:456
+#, c-format
+msgid "GNOME"
+msgstr "GNOME"
+
+#: steps_interactive.pm:459
+#, c-format
+msgid "Desktop Selection"
+msgstr "Desktop-Auswahl"
+
+#: steps_interactive.pm:460
+#, c-format
+msgid "You can choose your workstation desktop profile."
+msgstr "Sie haben die Wahl zwischen verschiedenen Desktopprofilen."
+
+#: steps_interactive.pm:552
+#, c-format
+msgid "Selected size is larger than available space"
+msgstr "Gewünschte Größe übersteigt den verfügbaren Platz"
+
+#: steps_interactive.pm:576
+#, c-format
+msgid "Type of install"
+msgstr "Installationstyp"
+
+#: steps_interactive.pm:577
+#, c-format
+msgid ""
+"You have not selected any group of packages.\n"
+"Please choose the minimal installation you want:"
+msgstr ""
+"Sie haben keine Paketgruppe ausgewählt.\n"
+"Bitte wählen Sie die minimale Installation, die Sie wünschen."
+
+#: steps_interactive.pm:582
+#, c-format
+msgid "With X"
+msgstr "Mit X (grafischem Server)"
+
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Empfohlene Pakete installieren"
+
+#: steps_interactive.pm:584
+#, c-format
+msgid "With basic documentation (recommended!)"
+msgstr "Mit minimaler Dokumentation (Empfohlen)"
+
+#: steps_interactive.pm:585
+#, c-format
+msgid "Truly minimal install (especially no urpmi)"
+msgstr "Extrem minimale Installation (ohne „urpmi“)"
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Die Aktualisierung wird vorbereitet ..."
+
+#: steps_interactive.pm:647
+#, c-format
+msgid "Preparing installation"
+msgstr "Installation wird vorbereitet"
+
+#: steps_interactive.pm:655
+#, c-format
+msgid "Installing package %s"
+msgstr "Paket %s wird installiert"
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "There was an error ordering packages:"
+msgstr "Bei der Anforderung folgender Pakete trat ein Fehler auf:"
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "Go on anyway?"
+msgstr "Wollen Sie trotzdem fortfahren?"
+
+#: steps_interactive.pm:683
+#, c-format
+msgid "Retry"
+msgstr "Wiederholen"
+
+#: steps_interactive.pm:684
+#, c-format
+msgid "Skip this package"
+msgstr "Dieses Paket überspringen"
+
+#: steps_interactive.pm:685
+#, c-format
+msgid "Skip all packages from medium \"%s\""
+msgstr "Alle Pakete vom Medium \"%s\" werden übersprungen"
+
+#: steps_interactive.pm:686
+#, c-format
+msgid "Go back to media and packages selection"
+msgstr "Zurück zu den Medien und zur Paketauswahl"
+
+#: steps_interactive.pm:689
+#, c-format
+msgid "There was an error installing package %s."
+msgstr "Bei der Installation des Paketes %s trat ein Fehler auf."
+
+#: steps_interactive.pm:708
+#, c-format
+msgid "Post-install configuration"
+msgstr "Bereite weitere Konfiguration vor ..."
+
+#: steps_interactive.pm:715
+#, c-format
+msgid "Please ensure the Update Modules media is in drive %s"
+msgstr ""
+"Bitte stellen Sie sicher, dass sich das Update-Modul-Medium im Laufwerk %s "
+"befindet"
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr "Aktualisierungen"
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Sie haben nun die Möglichkeit, Onlinemedien einzurichten."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Dies erlaubt Ihnen, Sicherheitsaktualisierungen zu installieren."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Um diese Medien einzurichten benötigen Sie eine funktionierende\n"
+"Internetverbindung.\n"
+"\n"
+"Möchten Sie die Onlinemedien einrichten?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Dieser Downloader konnte nicht installiert werden"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Nochmals versuchen?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Fehler beim Hinzufügen des Mediums"
+
+#: steps_interactive.pm:792
+#, c-format
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
+msgstr ""
+"Sie haben nun die Möglichkeit, Pakete zu installieren, die seit Erscheinen\n"
+"der Distribution aktualisiert wurden. Diese können "
+"Sicherheitsaktualisierungen und Fehlerkorrekturen beinhalten.\n"
+"\n"
+"Allerdings benötigen Sie dafür eine funktionierende Internetverbindung.\n"
+"\n"
+"Möchten Sie die Aktualisierungen vornehmen?"
+
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
+#, c-format
+msgid "%s on %s"
+msgstr "%s auf %s"
+
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
+#, c-format
+msgid "Hardware"
+msgstr "Hardware"
+
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr "Soundkarte"
+
+#: steps_interactive.pm:972
+#, c-format
+msgid "Graphical interface"
+msgstr "Grafikumgebung"
+
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
+msgid "Network & Internet"
+msgstr "Netzwerk & Internet"
+
+#: steps_interactive.pm:991
+#, c-format
+msgid "Proxies"
+msgstr "Proxys"
+
+#: steps_interactive.pm:992
+#, c-format
+msgid "configured"
+msgstr "konfiguriert"
+
+#: steps_interactive.pm:1002
+#, c-format
+msgid "Security Level"
+msgstr "Sicherheitsebene"
+
+#: steps_interactive.pm:1022
+#, c-format
+msgid "Firewall"
+msgstr "Firewall"
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "activated"
+msgstr "aktiviert"
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "disabled"
+msgstr "deaktiviert"
+
+#: steps_interactive.pm:1041
+#, c-format
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr "Sie haben X nicht konfiguriert. Sind Sie sicher?"
+
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, c-format
+msgid "Preparing initial startup program..."
+msgstr "Initiale Systemstartprogramme vorbereiten..."
+
+#: steps_interactive.pm:1073
+#, c-format
+msgid "Be patient, this may take a while..."
+msgstr "Ein wenig Geduld, dies kann einige Zeit dauern..."
+
+#: steps_interactive.pm:1089
+#, c-format
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+"In dieser Sicherheitsebene ist der Zugriff auf Dateien der Windows-Partition "
+"nur dem Administrator erlaubt"
+
+#: steps_interactive.pm:1121
+#, c-format
+msgid "Insert a blank floppy in drive %s"
+msgstr "Legen Sie eine leere Diskette in das Laufwerk %s ein."
+
+#: steps_interactive.pm:1123
+#, c-format
+msgid "Creating auto install floppy..."
+msgstr "Erstelle eine Auto-Installationsdiskette"
+
+#: steps_interactive.pm:1134
+#, c-format
+msgid ""
+"Some steps are not completed.\n"
+"\n"
+"Do you really want to quit now?"
+msgstr ""
+"Einige Schritte sind noch nicht komplett.\n"
+"\n"
+"Wollen Sie DrakX wirklich beenden?"
+
+#: steps_interactive.pm:1144
+#, c-format
+msgid "Congratulations"
+msgstr "Herzlichen Glückwunsch!"
+
+#: steps_interactive.pm:1147
+#, c-format
+msgid "Reboot"
+msgstr "Neustart"
+
+#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
+#: steps_list.pm:16
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Language"
+msgstr "Sprache auswählen"
+
+#: steps_list.pm:16 steps_list.pm:23
+#, c-format
+msgid "Localization"
+msgstr "Lokalisierung"
+
+#: steps_list.pm:17
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"License"
+msgstr "Lizenz"
+
+#: steps_list.pm:18
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Mouse"
+msgstr "Maus"
+
+#: steps_list.pm:19 steps_list.pm:20
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Hard drive detection"
+msgstr "Festplatten suchen"
+
+#: steps_list.pm:21 steps_list.pm:22
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installation class"
+msgstr "Installationsgruppe"
+
+#: steps_list.pm:23
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Keyboard"
+msgstr "Tastatur"
+
+#: steps_list.pm:24
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Security"
+msgstr "Sicherheit"
+
+#: steps_list.pm:25
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Partitioning"
+msgstr "Partitionierung"
+
+#: steps_list.pm:27 steps_list.pm:28
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Formatting"
+msgstr "Formatierung"
+
+#: steps_list.pm:29
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Choosing packages"
+msgstr "Pakete auswählen"
+
+#: steps_list.pm:31
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installing"
+msgstr "Installation"
+
+#: steps_list.pm:34
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Users"
+msgstr "Benutzer"
+
+#: steps_list.pm:38 steps_list.pm:39
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Bootloader"
+msgstr "Bootloader"
+
+#: steps_list.pm:40 steps_list.pm:41
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Configure X"
+msgstr "X konfigurieren"
+
+#: steps_list.pm:42
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Summary"
+msgstr "Zusammenfassung"
+
+#: steps_list.pm:44 steps_list.pm:45
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Services"
+msgstr "Dienste"
+
+#: steps_list.pm:46
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Updates"
+msgstr "Aktualisierungen"
+
+#: steps_list.pm:48
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Exit"
+msgstr "Verlassen"
diff --git a/perl-install/install/share/po/el.po b/perl-install/install/share/po/el.po
index 44b50130c..576a2a026 100644
--- a/perl-install/install/share/po/el.po
+++ b/perl-install/install/share/po/el.po
@@ -1,60 +1,87 @@
-# translation of DrakX-el.po to Greek
-# Greek translation for drakfloppy.
-# Copyright (C) 2001,2003 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Thanos Kyritsis <djart@hellug.gr>, 2001.
-# Νίκος Νύκταρης (Nick Niktaris) <niktarin@yahoo.com>, 2003.
-# nikos papadopoulos <231036448@freemail.gr>, 2008.
-# Glentadakis Dimitrios <dglent@gmail.com>, 2009.
+# Translators:
+# Dimitrios Glentadakis <dglent@free.fr>, 2022
+# Dimitrios Glentadakis <dglent@gmail.com>, 2009-2016
+# Dimitrios Glentadakis <dglent@gmail.com>, 2009-2016, 2018,2020
+# nikos papadopoulos <231036448@freemail.gr>, 2008
+# Thanos Kyritsis <djart@hellug.gr>, 2001
+# Theofilos Chamalis <theofxam@gmail.com>, 2015
+# Νίκος Νύκταρης (Nick Niktaris) <niktarin@yahoo.com>, 2003
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-el\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-09-13 14:46+0200\n"
-"Last-Translator: Glentadakis Dimitrios <dglent@gmail.com>\n"
-"Language-Team: Greek <i18ngr@lists.hellug.gr>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Dimitrios Glentadakis <dglent@free.fr>, 2022\n"
+"Language-Team: Greek (http://app.transifex.com/MageiaLinux/mageia/language/"
+"el/)\n"
+"Language: el\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 1.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Poedit-Language: Greek\n"
-"X-Poedit-Country: GREECE\n"
-"X-Poedit-SourceCharset: utf-8\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Το προσωπικό σου σύστημα εργασίας σε ένα USB"
+msgid "Join Us!"
+msgstr "Ελάτε μαζί μας!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "Η 100%% ανοιχτού κώδικα, διανομή του Mandriva Linux"
+msgid "Make it yours!"
+msgstr "Κάντε τη δική σας!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Εξερεύνησε το Λίνουξ, εύκολα, με το Mandriva One"
+msgid "Your choice!"
+msgstr "Η επιλογή σας!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Ένα πλήρες σύστημα desktop Mandriva Linux, με υποστήριξη"
+msgid "Office tools"
+msgstr "Εργαλεία γραφείου"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: συστήματα Λίνουξ για όλες τις χρήσεις"
+msgid "Home entertainment"
+msgstr "Οικιακή ψυχαγωγία"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Για τα παιδιά"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Για την οικογένεια!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Για προγραμματιστές!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Ευχαριστούμε!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Ελευθερωθείτε!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Έχεις κάποια επιπλέον συμπληρωματικά μέσα;"
+msgstr "Έχετε άλλα πρόσθετα μέσα ενημέρωσης;"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -62,126 +89,166 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Βρέθηκαν τα ακόλουθα μέσα, και θα χρησιμοποιηθούν κατά την εγκατάσταση: %s.\n"
+"Βρέθηκαν τα ακόλουθα μέσα και θα χρησιμοποιηθούν κατά την εγκατάσταση: %s.\n"
"\n"
"\n"
-"Έχεις κάποιο συμπληρωματικό μέσο εγκατάστασης για ρύθμιση;"
+"Έχετε κάποιο συμπληρωματικό μέσο εγκατάστασης για ρύθμιση;"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Δίκτυο (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Δίκτυο (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Δίκτυο (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Το URL της εναλλακτικής διεύθυνσης;"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Το URL πρέπει να ξεκινά με ftp:// ή http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Σύνδεση με την τοποθεσία της Mandriva Linux, για λήψη της λίστας με τις "
-"εναλλακτικές διευθύνσεις..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Αδυναμία σύνδεσης με την τοποθεσία της Mandriva Linux, για λήψη της λίστας "
-"με τις εναλλακτικές διευθύνσεις"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Επιλέξτε τόπο από τον οποίο θα γίνει η λήψη πακέτων"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Ρύθμιση NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr ""
-"Παρακαλώ, εισήγαγε το hostname (οικοδεσπότη υπολογιστή) και τη διαδρομή του "
-"μέσου NFS"
+msgstr "Παρακαλώ εισάγετε το όνομα υπολογιστή και τη διαδρομή του μέσου NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
-msgstr "Λείπει ο hostname (οικοδεσπότης υπολογιστής)"
+msgstr "Λείπει το όνομα υπολογιστή"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
-msgstr "Ο κατάλογος πρέπει να αρχίζει με \"/\""
+msgstr "Ο κατάλογος πρέπει να αρχίζει με «/»"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
-msgstr "Ο hostname (οικοδεσπότης υπολογιστής) της NFS προσάρτησης ;"
+msgstr "Το όνομα υπολογιστή της προσάρτησης NFS;"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Κατάλογος"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Συμπληρωματικά"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"Δεν βρέθηκε το αρχείο με την λίστα των πακέτων σε αυτόν τον mirror. "
+"Δεν βρέθηκε το αρχείο με την λίστα των πακέτων σε αυτόν τον καθρεπτισμό. "
"Σιγουρευτείτε ότι η τοποθεσία είναι σωστή."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Στο μηχάνημά σας υπάρχει υλικό που απαιτεί μη ελεύθερο firmware ώστε να "
+"λειτουργούν οι οδηγοί ανοιχτού κώδικα. "
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Θα πρέπει να ενεργοποιήσετε το «%s»"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+"Το «%s» περιέχει τα διάφορα τμήματα του συστήματος και τις εφαρμογές του"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "Το «%s» περιέχει μη ελεύθερο λογισμικό.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Επίσης, περιέχει firmware που απαιτούνται για την λειτουργία ορισμένων "
+"συσκευών (πχ: μερικές κάρτες γραφικών ATI/AMD, μερικές κάρτες δικτύου, "
+"μερικές κάρτες RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"Το «%s» περιέχει λογισμικό που δεν μπορεί να διανεμηθεί σε όλες τις χώρες "
+"λόγω περιορισμού των διπλωμάτων ευρεσιτεχνίας."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Επίσης, περιέχει λογισμικό από το «%s» επαναδημιουργημένο με επιπλέον "
+"χαρακτηριστικά."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+"Αν το επιθυμείτε, εδώ μπορείτε να ενεργοποιήσετε περισσότερες πηγές "
+"λογισμικού."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Αυτό το μέσο παρέχει ενημερώσεις πακέτων για το μέσο «%s»"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Ψάχνω για ήδη εγκατεστημένα πακέτα..."
+msgstr "Αναζήτηση στα ήδη εγκατεστημένα πακέτα..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Αναζήτηση πακέτων προς αναβάθμιση..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Αφαίρεση των πακέτων, πριν την αναβάθμιση..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -194,87 +261,87 @@ msgstr ""
"\n"
"Θέλετε πραγματικά να αφαιρέστε αυτά τα πακέτα;\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Σφάλμα κατά την ανάγνωση του αρχείου %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Έγινε αλλαγή των ονομάτων των παρακάτω πακέτων:"
+msgstr "Έγινε μετονομασία των παρακάτω δίσκων:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
-msgstr "%s (προηγουμένως ονομαζόταν %s)"
+msgstr "%s (η προηγούμενη ονομασία ήταν %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Δίκτυο"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Παρακαλώ, επέλεξε ένα μέσο"
+msgstr "Παρακαλώ επιλέξτε ένα μέσο"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Το αρχείο υπάρχει ήδη. Να αντικατασταθεί;"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
-msgstr "Δεν δόθηκε άδεια"
+msgstr "Άρνηση αδείας"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr "Λανθασμένο όνομα NFS"
+msgstr "Μη έγκυρο όνομα NFS"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "Εσφαλμένο μέσο %s"
+msgstr "Μη έγκυρο μέσο %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Αδύνατη η λήψη στιγμιοτύπων πριν από την δημιουργία κατατμήσεων"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "Τα στιγμιότυπα θα είναι διαθέσιμα μετά την εγκατάστασης στο %s"
+msgstr "Τα στιγμιότυπα θα είναι διαθέσιμα μετά την εγκατάσταση στο %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Εγκατάσταση"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Ρύθμιση"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Πρέπει επίσης να μορφοποιήσετε το %s"
@@ -285,37 +352,36 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Ένα μέρος του υλικού σας χρειάζεται ``ιδιόκτητους'' οδηγούς για να "
+"Ένα μέρος του υλικού σας χρειάζεται «ιδιόκτητους» οδηγούς για να "
"λειτουργήσει.\n"
"Μπορείτε να βρείτε σχετικές πληροφορίες στο: %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "Εκκίνηση δικτύου"
+msgstr "Εκκίνηση της διεπαφής δικτύου"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "Διακοπή λειτουργίας δικτύου"
+msgstr "Διακοπή της διεπαφής δικτύου"
-# ????
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "Παρακαλώ περιμένετε, γίνεται αναζήτηση του αρχείου"
+msgstr "Παρακαλώ περιμένετε, γίνεται λήψη του αρχείου"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr "αδυναμία προσθήκης μέσου"
+msgstr "αδυναμία προσθήκης του μέσου"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr "Αντιγραφή κάποιων πακέτων στο δίσκο, για μελλοντική χρήση"
+msgstr "Αντιγραφή κάποιων πακέτων στο δίσκο για μελλοντική χρήση"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Αντιγραφή σε εξέλιξη"
@@ -323,7 +389,7 @@ msgstr "Αντιγραφή σε εξέλιξη"
#: pkgs.pm:32
#, c-format
msgid "must have"
-msgstr "πρέπει να υπάρχει"
+msgstr "υποχρεωτικό"
#: pkgs.pm:33
#, c-format
@@ -333,19 +399,36 @@ msgstr "σημαντικό"
#: pkgs.pm:34
#, c-format
msgid "very nice"
-msgstr "πολύ καλό"
+msgstr "πολύ χρήσιμο"
#: pkgs.pm:35
#, c-format
msgid "nice"
-msgstr "καλό"
+msgstr "χρήσιμο"
#: pkgs.pm:36
#, c-format
msgid "maybe"
msgstr "ίσως"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Λήψη των πληροφοριών του πακέτου από τα μεταδεδομένα XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Δεν βρέθηκαν πληροφορίες xml για το μέσο «%s», μόνον εν μέρει αποτελέσματα "
+"για το πακέτο %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Χωρίς περιγραφή"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -354,352 +437,398 @@ msgstr ""
"Κάποια πακέτα που ζητήθηκαν από το %s, δεν μπορούν να εγκατασταθούν:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
-msgstr "Προκλήθηκε σφάλμα :"
+msgstr "Παρουσιάστηκε ένα σφάλμα :"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Παρουσιάστηκε ένα κρίσιμο σφάλμα: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Να μην ξαναγίνει η ερώτηση"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "Η %d συναλλαγή εγκατάστασης απέτυχε"
+msgstr "%d συναλλαγές εγκατάστασης απέτυχαν"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Η εγκατάσταση των πακέτων απέτυχε :"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
-msgstr "Σταθμός Εργασίας"
+msgstr "Σταθμός εργασίας"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
-msgstr "Σταθμός Εργασίας Γραφείου"
+msgstr "Σταθμός εργασίας γραφείου"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Εργαλεία γραφείου: Επεξεργαστές κειμένου(OpenOffice.org Writer, Kword), "
-"λογιστικά φύλλα (OpenOffice.org Calc, Kspread), αρχεία pdf κλπ"
+"Εργαλεία γραφείου: επεξεργαστές κειμένου (LibreOffice Writer, Kword), "
+"λογιστικών φύλλων (LibreOffice Calc, Kspread), προβολείς pdf, κλπ"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Εργαλεία γραφείου: Επεξεργαστές κειμένου(kword, abiword), λογιστικά φύλλα "
-"(kspread, gnumeric), αρχεία pdf κλπ"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
-msgstr "Σταθμός παιχνιδιών"
+msgstr "Παιχνίδια"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "Διασκέδαση (παιχνίδια)"
+msgstr ""
+"Προγράμματα διασκέδασης: ηλεκτρονικά παιχνίδια, επιτραπέζια, στρατηγικής, κλπ"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "Σταθμός πολυμέσων"
+msgstr "Πολυμέσα"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Προγράμματα αναπαραγωγής και διαχείρισης video και ήχου"
+msgstr "Προγράμματα αναπαραγωγής και επεξεργασίας βίντεο και ήχου"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "Σταθμός Διαδικτύου"
+msgstr "Διαδίκτυο"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
"Εργαλεία για αποστολή και λήψη αλληλογραφίας και ειδήσεων (mutt, tin...) και "
-"περιήγηση στο Διαδίκτυο"
+"για περιήγηση στο διαδίκτυο"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
-msgstr "Υπολογιστής Δικτύου (πελάτης)"
+msgstr "Υπολογιστής δικτύου (πελάτης)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Πελάτες για διαφορετικά πρωτόκολλα συμπεριλαμβανομένου του ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Εργαλεία για διευκόλυνση της ρύθμισης του υπολογιστή σας"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "Εργαλεία Κονσόλας"
+msgstr "Εργαλεία τερματικού"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "Επεξεργαστές κειμένου, κελύφη, εργαλεία αρχείων, τερματικά"
+msgstr "Επεξεργαστές, κελύφη, εργαλεία αρχείων, τερματικά"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Ανάπτυξη"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "Βιβλιοθήκες ανάπτυξης C και C++, προγράμματα και άλλα αρχεία"
+msgstr "Βιβλιοθήκες ανάπτυξης C και C++, προγράμματα και αρχεία ενσωμάτωσης"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Τεκμηρίωση"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Βιβλία και οδηγοί για το Linux και το Ελεύθερο Λογισμικό"
+msgstr "Βιβλία και οδηγίες για το Linux και το ελεύθερο λογισμικό"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Linux Standard Base. Υποστήριξη εφαρμογών τρίτων"
+msgstr "«Linux Standard Base». Υποστήριξη εφαρμογών τρίτων"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
-msgstr "Εξυπηρετητής Ιστοσελίδων"
+msgstr "Εξυπηρετητής ιστού"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
-msgstr "Groupware"
+msgstr "Λογισμικό συνεργασίας"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
-msgstr "Εξυπηρετητής του Kolab"
+msgstr "Εξυπηρετητής Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
-msgstr "Τοίχος Προστασίας/Δρομολογητής"
+msgstr "Τείχος προστασίας/Δρομολογητής"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
-msgstr "Πύλη Διαδικτύου"
+msgstr "Πύλη διαδικτύου"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
-msgstr "Αλληλογραφία/Νέα"
+msgstr "Αλληλογραφία/Ειδήσεις"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix server ταχυδρομείου, Inn server ειδήσεων"
+msgstr "Postfix εξυπηρετητής ταχυδρομείου, εξυπηρετητής ειδήσεων Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "Εξυπηρετητής Καταλόγων"
+msgstr "Εξυπηρετητής καταλόγων"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
-msgstr "Διακομιστής FTP"
+msgstr "Εξυπηρετητής FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Εξυπηρετητής Όνομα Τομέα και Πληροφοριών Δικτύου"
+msgstr "Εξυπηρετητής ονομάτων τομέα και πληροφοριών δικτύου"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Εξυπηρετητής Κοινής Χρήσης Αρχείων και Εκτυπώσεων"
+msgstr "Εξυπηρετητής κοινής χρήσης αρχείων και εκτυπωτών"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Εξυπηρετητής NFS, εξυπηρετητής Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
-msgstr "Βάση Δεδομένων"
+msgstr "Βάση δεδομένων"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL και MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Εξυπηρετητής βάσης δεδομένων PostgreSQL και MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
-msgstr "Web/FTP"
+msgstr "Ιστός/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
-msgstr "Ταχυδρομείο"
+msgstr "Αλληλογραφία"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Εξυπηρετητής ταχυδρομείου Postfix"
+msgstr "Εξυπηρετητής αλληλογραφίας Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Εξυπηρετητής βάσης δεδομένων PostgreSQL ή MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Εξυπηρετητής βάσης δεδομένων PostgreSQL ή MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Εξυπηρετητής δικτύου"
+msgstr "Εξυπηρετητής υπολογιστών δικτύου"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-"εξυπηρετητής NFS, εξυπηρετητής SMB, εξυπηρετητής Proxy, εξυπηρετητής ssh"
+"Εξυπηρετητής NFS, εξυπηρετητής SMB, εξυπηρετητής Proxy, εξυπηρετητής ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr "Γραφικό Περιβάλλον"
+msgstr "Γραφικό περιβάλλον"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Σταθμός εργασίας KDE"
+msgid "Plasma Workstation"
+msgstr "Σταθμός εργασίας Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
-msgstr "Το περιβάλλον γραφείου KDE με μια συλλογή συνοδευτικών εργαλείων"
+msgstr ""
+"Το βασικό περιβάλλον εργασίας KDE με μια συλλογή συνοδευτικών εργαλείων"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Σταθμός Εργασίας Gnome"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
-msgstr "Γραφικό περιβάλλον με φιλικά εργαλεία και εφαρμογές"
+msgstr "Ένα γραφικό περιβάλλον με φιλικά εργαλεία και εφαρμογές"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE Γραφικό Περιβάλλον Εργασίας"
+msgid "Xfce Workstation"
+msgstr "Σταθμός εργασίας Xfce"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr ""
-"Ένα ελαφρύ & γρήγορο γραφικό περιβάλλον με ένα σύνολο φιλικών εργαλείων και "
-"εφαρμογών"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr "Ένα ελαφρύ γραφικό περιβάλλον με φιλικά εργαλεία και εφαρμογές"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Σταθμός Εργασίας MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Σταθμός εργασίας Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Γραφικό περιβάλλον βασισμένο στο GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Περιβάλλον εργασίας LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Μια νέας γενιάς μεταφορά σε Qt του ελαφριού γραφικού περιβάλλοντος"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Επιφάνεια εργασίας Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Ένα ελαφρύ & γρήγορο γραφικό περιβάλλον με αφοσιωμένους οπαδούς "
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Περιβάλλον εργασίας LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Ένα ελαφρύ και γρήγορο γραφικό περιβάλλον"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Άλλα γραφικά περιβάλλοντα"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, κλπ"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, κλπ"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Εργαλεία"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Εξυπηρετητής SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Webmin Server Απομακρυσμένης Ρύθμισης"
+msgstr "Webmin εξυπηρετητής απομακρυσμένης ρύθμισης"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Εργαλεία Δικτύου/Παρακολούθηση"
+msgstr "Εργαλεία δικτύου/εποπτεία δικτύου"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "Εργαλεία παρακολούθησης, απολογισμός διεργασιών, tcpdump, nmap, ..."
+msgstr "Εργαλεία εποπτείας, απολογισμός διεργασιών, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Οδηγοί Ρυθμίσεων Mandriva"
+msgid "Mageia Wizards"
+msgstr "Οδηγοί Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
-msgstr "Οδηγοί για τη ρύθμιση εξυπηρετητή"
+msgstr "Οδηγοί για τη ρύθμιση του εξυπηρετητή"
#: steps.pm:85
#, c-format
@@ -707,368 +836,370 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Προκλήθηκε ένα σφάλμα που δεν ξέρω πώς να το χειριστώ.\n"
+"Παρουσιάστηκε ένα σφάλμα, αλλά δεν ξέρω πώς να το χειριστώ.\n"
"Συνεχίστε με δική σας ευθύνη."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Μερικά σημαντικά πακέτα δεν εγκαταστάθηκαν σωστά.\n"
-"Ο οδηγός CD-ROM ή το CD-ROM είναι ελαττωματικό.\n"
-"Ελέγξτε το CD-ROM σε ένα άλλο σύστημα χρησιμοποιώντας την εντολή \"rpm -qpl "
-"media/main/*.rpm\"\n"
+"Ο οδηγός CD ή το CD είναι ελαττωματικό.\n"
+"Ελέγξτε το CD σε ένα εγκατεστημένο σύστημα χρησιμοποιώντας \" rpm -qpl media/"
+"main/*.rpm \"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Βήμα `%s'\n"
+msgstr "Εκκίνηση του βήματος «%s»\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Εγκατάσταση της Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "%s Εγκατάσταση της %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> Αλλαγή πεδίου"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-"Ο εξυπηρετητής Xorg θέλει χρόνο για να ξεκινήσει. Παρακαλώ περιμένετε..."
+"Ο εξυπηρετητής Xorg χρειάζεται χρόνο για να ξεκινήσει. Παρακαλώ περιμένετε..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Το σύστημά σας δεν έχει αρκετούς πόρους. Μπορεί να αντιμετωπίσετε "
-"προβλήματα\n"
-"στην εγκατάσταση της Mandriva Linux. Εάν συμβεί αυτό, μπορείτε να δοκιμάσετε "
-"την εγκατάσταση κειμένου.\n"
-"Για να γίνει αυτό, πατήστε F1 κατά την εκκίνηση από το CDROM, και μετά "
-"γράψτε `text'."
+"Το σύστημά σας διαθέτει περιορισμένους πόρους. Ίσως συναντήσετε προβλήματα\n"
+"κατά την εγκατάσταση της %s. Αν συμβεί αυτό, μπορείτε να προσπαθήσετε\n"
+"την εγκατάσταση σε λειτουργία κειμένου. Για να το πραγματοποιήσετε, πατήστε "
+"«F1»\n"
+"κατά την εκκίνηση του CD-ROM και εισάγετε «text»."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Επιλογή μέσων"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Εγκατάσταση του Mandriva KDE Desktop"
+msgid "Install %s Plasma Desktop"
+msgstr "Εγκατάσταση του περιβάλλοντος Plasma της %s"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Εγκατάσταση του Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
+msgstr "Εγκατάσταση του περιβάλλοντος GNOME της %s"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Προσαρμοσμένη εγκατάσταση"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE Γραφικό Περιβάλλον Εργασίας"
+msgid "Plasma Desktop"
+msgstr "Επιφάνειας εργασίας Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm Γραφικό Περιβάλλον Εργασίας"
+msgstr "Περιβάλλον εργασίας GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
-msgstr "Προσαρμοσμένο Γραφικό Περιβάλλον Εργασίας"
+msgstr "Προσαρμοσμένο περιβάλλον εργασίας"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Αυτή είναι μία προεπισκόπηση του γραφικού περιβάλλοντος εργασίας '%s'."
+msgstr "Αυτή είναι μια προεπισκόπηση του περιβάλλοντος εργασίας «%s»."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Κάνε κλικ στις εικόνες, για να δεις τη μεγαλύτερη προεπισκόπηση"
+msgstr "Κάντε κλικ στις εικόνες, για να δείτε μια μεγαλύτερη προεπισκόπηση"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "Επιλογή Ομάδων από Πακέτα"
+msgstr "Επιλογή ομάδων πακέτων"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "Επιλογή ξεχωριστών πακέτων"
+msgstr "Επιλογή μεμονωμένων πακέτων"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Συνολικό μέγεθος: %d / %d MB"
+msgid "Unselect All"
+msgstr "Αποεπιλογή όλων"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Λάθος πακέτο"
+msgid "Total size: %d / %d MB"
+msgstr "Συνολικό μέγεθος: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Έκδοση: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Μέγεθος: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Σπουδαιότητα: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
-msgstr "Δεν μπορείτε να επιλέξετε/αποεπιλέξετε αυτό το πακέτο"
+msgid "You cannot select/unselect this package"
+msgstr "Δεν είναι δυνατή η επιλογή/αποεπιλογή του συγκεκριμένου πακέτου"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "λόγω ελλείψεων %s"
+msgstr "λόγω έλλειψης του %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "λόγω μη ικανοποίησης %s"
+msgstr "λόγω μη ικανοποίησης του %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr "προσπάθεια ενίσχυσης του %s"
+msgstr "προσπάθεια προώθησης του %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "για να κρατηθεί το %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-"Δεν μπορείτε να επιλέξετε αυτό το πακέτο διότι δεν υπάρχει αρκετός χώρος"
+"Δεν μπορείτε να επιλέξετε αυτό το πακέτο διότι δεν υπάρχει αρκετός ελεύθερος "
+"χώρος για να το εγκαταστήσετε."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Θα εγκατασταθούν τα παρακάτω πακέτα"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Θα αφαιρεθούν τα παρακάτω πακέτα "
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Αυτό είναι απαιτούμενο πακέτο, δεν μπορεί να αποεπιλεγεί"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Αυτό το πακέτο είναι απαραίτητο, δεν μπορεί να αποεπιλεγεί"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Δεν μπορείτε να αποεπιλέξετε αυτό το πακέτο. Είναι ήδη εγκατεστημένο"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Δεν μπορείτε να αποεπιλέξετε αυτό το πακέτο. Πρέπει να αναβαθμιστεί"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "Αυτόματη προβολή επιλεγμένων πακέτων"
+msgstr "Εμφάνιση των επιλεγμένων πακέτων αυτόματα"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Εγκατάσταση"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
-msgstr "Επιλογή Φόρτωσης/Αποθήκευσης"
+msgstr "Φόρτωση/αποθήκευση της επιλογής"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
-msgstr "Ανανέωση επιλεγμένων πακέτων"
+msgstr "Ενημέρωση της επιλογής των πακέτων"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Εναλλαγή μεταξύ ιεραρχικού και επίπεδου κατάστιχου πακέτων"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
-msgstr "Ελάχιστη Εγκατάσταση"
+msgstr "Ελάχιστη εγκατάσταση"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Διαχείριση Λογισμικού"
+msgstr "Διαχείριση λογισμικού"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Επιλέξτε τα πακέτα που θέλετε να εγκαταστήσετε"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Εγκατάσταση"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Χωρίς λεπτομέρειες"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
-msgstr "Χρόνος που απομένει:"
+msgstr "Εναπομένων χρόνος:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(εκτίμηση...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d πακέτο"
msgstr[1] "%d πακέτα"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
-msgstr "Περίληψη"
+msgstr "Σύνοψη"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Ρύθμιση"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "δεν ρυθμίστηκε"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Επιλογή Μέσου"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
"Βρέθηκαν τα ακόλουθα μέσα εγκατάστασης.\n"
-"Αν θες να παραλειφθούν κάποια από αυτά, μπορείς να τα αποεπιλέξεις τώρα."
+"Αν θέλετε να παραλείψετε κάποια από αυτά, μπορείτε να τα αποεπιλέξετε τώρα."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Έχετε την δυνατότητα να αντιγράψετε το περιεχόμενο των CD στο σκληρό δίσκο "
"πριν την εγκατάσταση.\n"
-"Η οποία θα συνεχιστεί από τον σκληρό δίσκο και τα πακέτα θα μείνουν "
-"διαθέσιμα και μετά το τέλος της εγκατάστασης."
+"Αυτή θα συνεχιστεί από τον σκληρό δίσκο και τα πακέτα θα παραμείνουν "
+"διαθέσιμα και μετά το τέλος της."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr "Αντιγραφή ολόκληρων CD"
+msgstr "Αντιγραφή ολόκληρων των CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
-msgstr "Προκλήθηκε σφάλμα"
+msgstr "Παρουσιάστηκε ένα σφάλμα "
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Παρακαλώ επέλεξε τη διάταξη του πληκτρολογίου σου"
+msgstr "Παρακαλώ επιλέξτε τη διάταξη του πληκτρολογίου σας"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Αυτή είναι η πλήρης λίστα με τα διαθέσιμα πληκτρολόγια:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "Εγκατάσταση/Αναβάθμιση"
+msgstr "Εγκατάσταση/αναβάθμιση"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Πρόκειται για εγκατάσταση ή για αναβάθμιση;"
+msgstr "Επιθυμείτε να κάνετε μια εγκατάσταση ή αναβάθμιση;"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr ""
-"_: Αυτό είναι ένα ουσιαστικό:\n"
-"Εγκατάσταση"
+msgstr "Εγκατάσταση"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
-msgstr "Αναβάθμιση %s"
+msgstr "Αναβάθμιση της %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Κλειδί κρυπτογράφησης για το %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Ακύρωση της εγκατάστασης, επανεκκίνηση του συστήματος"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Νέα εγκατάσταση"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr "Αναβάθμιση προηγούμενης εγκατάστασης (δεν συστήνεται)"
+msgstr "Αναβάθμιση της προηγούμενης εγκατάστασης (δεν συστήνεται)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1076,49 +1207,27 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Το πρόγραμμα εγκατάστασης αποφάνθηκε, ότι το ήδη υπάρχον\n"
-"σύστημα Mandriva Linux, δεν μπορεί να αναβαθμιστεί με ασφάλεια στην έκδοση %"
-"s.\n"
+"Ο εγκαταστάτης εντόπισε ότι το εγκατεστημένο σας σύστημα Mageia Linux δεν "
+"μπορεί\n"
+"να αναβαθμιστεί με ασφάλεια σε %s.\n"
"\n"
-"Προτείνεται να γίνει νέα εγκατάσταση, που θα αντικαταστήσει την "
-"προηγούμενη.\n"
+"Συνιστάται να αντικαταστήσετε την εγκατάστασή σας με μια νέα.\n"
"\n"
-"Προειδοποίηση : θα πρέπει να πάρεις αντίγραφα ασφαλείας από όλα τα προσωπικά "
-"σου\n"
-"δεδομένα και τα έγγραφα πριν επιλέξεις τη \"Νέα Εγκατάσταση\"."
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
+"Προσοχή: θα πρέπει να πάρετε αντίγραφα ασφαλείας όλων των προσωπικών σας "
+"δεδομένων πριν επιλέξετε\n"
+"«Νέα εγκατάσταση»."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Ρύθμιση IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Δεν υπάρχει ελεύθερος χώρος για 1MB bootstrap! Η εγκατάσταση θα συνεχιστεί, "
-"αλλά για να ξεκινήσετε το σύστημά σας, θα χρειαστεί να δημιουργήσετε μια "
-"κατάτμηση bootstrap με το DiskDrake"
+msgid "Configuring CD/DVD"
+msgstr "Διαμόρφωση του CD/DVD"
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Πρέπει να δημιουργήσετε την κατάτμηση έναρξης (PPC PReP Boot bootstrap). Η "
-"εγκατάσταση θα συνεχιστεί, αλλά για να εκκινήσετε το σύστημά σας, θα πρέπει "
-"να δημιουργήσετε την κατάτμηση έναρξης από το DiskDrake"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1127,27 +1236,26 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
"Αλλάξτε το Cd-Rom!\n"
-"\n"
-"Παρακαλώ εισάγετε το Cd-Rom με όνομα \"%s\" στον οδηγό σας και πατήστε "
-"Εντάξει.\n"
-"Εάν δεν το έχετε, πατήστε Ακύρωση για αποφυγή εγκατάστασης από αυτό το Cd-"
-"Rom."
+"Παρακαλώ εισαγάγετε το Cd-Rom με όνομα «%s» στον οδηγό σας και πατήστε "
+"«Εντάξει».\n"
+"Εάν δεν το έχετε, πατήστε «Ακύρωση» για αποφυγή της εγκατάστασης από αυτό το "
+"Cd-Rom."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Ψάχνω για διαθέσιμα πακέτα..."
+msgstr "Αναζήτηση για διαθέσιμα πακέτα..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Το σύστημά σας δεν έχει αρκετό ελεύθερο χώρο για την εγκατάσταση ή την "
"αναβάθμιση (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1155,146 +1263,191 @@ msgid ""
msgstr ""
"Παρακαλώ, επέλεξε τη φόρτωση ή την αποθήκευση της λίστας με τα επιλεγμένα "
"πακέτα.\n"
-"Η μορφή είναι η ίδια με τα αρχεία auto_install (αυτόματης εγκατάστασης)."
+"Η μορφή είναι η ίδια με αυτή της αυτόματης εγκατάστασης (auto_install)."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "Φόρτος"
+msgstr "Φόρτωση"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Αποθήκευση"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
-msgstr "Λανθασμένο αρχείο"
+msgstr "Μη έγκυρο αρχείο"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
-msgstr "Επιλογή Γραφικού Περιβάλλοντος Εργασίας"
+msgstr "Επιλογή περιβάλλοντος εργασίας"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-"Μπορείς να επιλέξεις το προφίλ για το γραφικό περιβάλλον εργασίας του "
-"υπολογιστή σου."
+"Μπορείτε να επιλέξετε το προφίλ για το περιβάλλον εργασίας του υπολογιστή "
+"σας."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Το επιλεγμένο μέγεθος είναι μεγαλύτερο από το διαθέσιμο χώρο"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Τύπος εγκατάστασης"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
"Δεν έχετε επιλέξει κάποια ομάδα πακέτων.\n"
-"Παρακαλώ επιλέξτε την ελάχιστη εγκατάσταση που θέλετε:"
+"Παρακαλώ επιλέξτε την ελάχιστη εγκατάσταση που επιθυμείτε:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Με Χ"
-#: steps_interactive.pm:581, c-format
-msgid "Install suggested packages"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
msgstr "Εγκατάσταση των προτεινόμενων πακέτων"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Με την βασική τεκμηρίωση (συνιστάται!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Πραγματικά ελάχιστη εγκατάσταση (ειδικά χωρίς urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Προετοιμασία της αναβάθμισης..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Προετοιμασία της εγκατάστασης"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Εγκατάσταση του πακέτου %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "Προκλήθηκε σφάλμα κατά την ταξινόμηση των πακέτων:"
+msgstr "Παρουσιάστηκε σφάλμα κατά την ταξινόμηση των πακέτων:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Να συνεχίσω;"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr "Προσπάθησε ξανά"
+msgstr "Προσπάθεια ξανά"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr "Παράβλεψη αυτού του πακέτου"
+msgstr "Παράλειψη αυτού του πακέτου"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "Παράβλεψη όλων των πακέτων από το μέσο \"%s\""
+msgstr "Παράλειψη όλων των πακέτων από το μέσο «%s»"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Επιστροφή στην επιλογή μέσων και πακέτων"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "Προκλήθηκε σφάλμα κατά την εγκατάσταση του πακέτου %s."
+msgstr "Παρουσιάστηκε σφάλμα κατά την εγκατάσταση του πακέτου %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Ρυθμίσεις μετά την εγκατάσταση"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-"Παρακαλώ σιγουρευτείτε ότι το μέσο ενημέρωσης των οδηγών (modules) είναι "
-"μέσα στην συσκευή %s"
+"Παρακαλώ σιγουρευτείτε ότι το μέσο ενημέρωσης των αρθρωμάτων (modules) είναι "
+"μέσα στον οδηγό %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Ενημερώσεις"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+"Σε αυτό το βήμα σας δίδεται η δυνατότητα να προσθέσετε μέσα από το διαδίκτυο."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Αυτό επιτρέπει την εγκατάσταση των ενημερώσεων ασφαλείας."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Για την προσθήκη αυτών των μέσων, απαιτείται μια ενεργή σύνδεση\n"
+"στο διαδίκτυο.\n"
+"\n"
+"Επιθυμείτε την προσθήκη των μέσων ενημέρωσης;"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Αδύνατη η εγκατάσταση του προγράμματος λήψης"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Προσπάθεια ξανά;"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Αποτυχία κατά την προσθήκη του μέσου"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1306,142 +1459,108 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Τώρα έχετε τη δυνατότητα να εγκαταστήσετε πακέτα αναβάθμισης. Αυτά τα\n"
-"πακέτα έχουν αναβαθμιστεί μετά την έκδοση της διανομής. Μπορεί να περιέχουν\n"
-"διορθώσεις σφαλμάτων ή αναβαθμίσεις ασφάλειας.\n"
+"Τώρα έχετε την ευκαιρία να κάνετε λήψη ενημερωμένων πακέτων.\n"
+"Αυτά τα πακέτα έχουν ενημερωθεί μετά την έκδοση της διανομής. Μπορεί να\n"
+"περιέχουν διορθώσεις σφαλμάτων ή ενημερώσεις ασφαλείας.\n"
"\n"
-"Για να κάνετε λήψη αυτών των πακέτων πρέπει να έχετε μια σύνδεση στο "
-"Διαδίκτυο\n"
-"που να λειτουργεί.\n"
+"Για να κάνετε λήψη αυτών των πακέτων πρέπει να έχετε ενεργοποιημένη\n"
+"τη σύνδεση με το διαδίκτυο.\n"
"\n"
-"Θέλετε να εγκαταστήσετε τις αναβαθμίσεις ;"
+"Θέλετε να εγκαταστήσετε τις ενημερώσεις ;"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s σε %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Υλικό"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Κάρτα ήχου"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Έχετε κάρτα ήχου ISA;"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Εκτέλεσε την εντολή \"alsaconf\" ή \"sndconfig\", μετά την εγκατάσταση, για "
-"να ρυθμίσεις την κάρτα ήχου"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Δεν βρέθηκε κάρτα ήχου. Δοκιμάστε το \"harddrake\" μετά την εγκατάσταση"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Γραφικό περιβάλλον"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Δίκτυο & Διαδίκτυο"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Διαμεσολαβητές (proxies)"
+msgstr "Διαμεσολαβητές"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "ρυθμισμένο"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
-msgstr "Επίπεδο Ασφαλείας"
+msgstr "Επίπεδο ασφαλείας"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
-msgstr "Τοίχος Προστασίας"
+msgstr "Τείχος προστασίας"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "ενεργοποιημένο"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "απενεργοποιημένο"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "Δεν έχετε ρυθμίσει το Χ. Είστε βέβαιοι ότι θέλετε να το κάνετε;"
+msgstr "Δεν έχετε ρυθμίσει τον Χ. Είστε σίγουρος/η ότι θέλετε πραγματικά αυτό;"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Προετοιμασία του προγράμματος εκκίνησης..."
+msgid "Preparing initial startup program..."
+msgstr "Προετοιμασία του αρχικού προγράμματος εκκίνησης..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-"Παρακαλώ περιμένετε, η διαδικασία θα διαρκέσει κάποιο χρονικό διάστημα ..."
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Φαίνεται πως έχετε ένα Αρχαίο ή Άγνωστο\n"
-"μηχάνημα, ο yaboot bootloader δεν θα δουλέψει για σας.\n"
-"Η εγκατάσταση θα συνεχιστεί, αλλά\n"
-"θα χρειαστεί να χρησιμοποιήσετε το BootX ή μια άλλη μέθοδο για να ξεκινήσετε "
-"το μηχάνημά σας. Η παράμετρος για το root fs είναι: root=%s"
+msgstr "Παρακαλώ περιμένετε, η διαδικασία μπορεί να διαρκέσει μερικά λεπτά ..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"Σε αυτό το επίπεδο ασφαλείας, η πρόσβαση στα αρχεία στην κατάτμηση των "
-"windows περιορίζεται μόνο για τον διαχειριστή."
+"Σε αυτό το επίπεδο ασφαλείας, μόνο ο διαχειριστής έχει πρόσβαση στα αρχεία "
+"στην κατάτμηση των Windows."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "Εισάγετε άδεια δισκέτα στον οδηγό %s"
+msgstr "Εισάγετε μια άδεια δισκέτα στον οδηγό %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Δημιουργία δισκέτας αυτόματης εγκατάστασης..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1452,12 +1571,12 @@ msgstr ""
"\n"
"Θέλετε σίγουρα να εγκαταλείψετε τώρα;"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Συγχαρητήρια"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Επανεκκίνηση"
@@ -1468,19 +1587,19 @@ msgstr "Επανεκκίνηση"
msgid ""
"_: Keep these entry short\n"
"Language"
-msgstr "Επιλέξτε γλώσσα"
+msgstr "Γλώσσα"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr "Τοπικοποίηση"
+msgstr "Τοπικότητα"
#: steps_list.pm:17
#, c-format
msgid ""
"_: Keep these entry short\n"
"License"
-msgstr "Άδεια Χρήσης"
+msgstr "Άδεια χρήσης"
#: steps_list.pm:18
#, c-format
@@ -1494,14 +1613,14 @@ msgstr "Ποντίκι"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Εντοπισμός δίσκου"
+msgstr "Ανίχνευση σκληρών δίσκων"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr "Κλάση της εγκατάστασης"
+msgstr "Κλάση εγκατάστασης"
#: steps_list.pm:23
#, c-format
@@ -1522,14 +1641,14 @@ msgstr "Ασφάλεια"
msgid ""
"_: Keep these entry short\n"
"Partitioning"
-msgstr "Καταμερισμός"
+msgstr "Διαμερισμός"
#: steps_list.pm:27 steps_list.pm:28
#, c-format
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr "Διαμόρφωση "
+msgstr "Μορφοποίηση "
#: steps_list.pm:29
#, c-format
@@ -1552,33 +1671,26 @@ msgid ""
"Users"
msgstr "Χρήστες"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Δικτύωση"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
"_: Keep these entry short\n"
"Bootloader"
-msgstr "Πρόγρ. εκκίνησης"
+msgstr "Εκκίνηση"
#: steps_list.pm:40 steps_list.pm:41
#, c-format
msgid ""
"_: Keep these entry short\n"
"Configure X"
-msgstr "Ρύθμιση Χ"
+msgstr "Ρύθμιση του Χ"
#: steps_list.pm:42
#, c-format
msgid ""
"_: Keep these entry short\n"
"Summary"
-msgstr "Περίληψη"
+msgstr "Σύνοψη"
#: steps_list.pm:44 steps_list.pm:45
#, c-format
@@ -1600,168 +1712,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Έξοδος"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Αποφασίσατε να αναβαθμίσετε το σύστημα σας σε %s. KDE 3.5\n"
-#~ "ανιχνεύθηκε εγκατεστημένο στο σύστημά σας. Αυτός ο οδηγός εγκατάστασης "
-#~ "δεν μπορεί να διατηρήσει το KDE 3.5 σε κατάσταση αναβάθμισης.\n"
-#~ "Εάν επιθυμείτε να συνεχίσετε, το KDE 4 θα αντικαταστήσει το KDE 3, και θα "
-#~ "χάσετε τις προσωπικές σας ρυθμίσεις KDE. \n"
-#~ "Για να κάνετε την αναβάθμιση διατηρώντας τις προσωπικές σας ρυθμίσεις, \n"
-#~ "παρακαλώ επανεκκινήστε τον υπολογιστή σας και κάντε την αναβάθμιση από "
-#~ "την εφαρμογή ενημέρωσης του συστήματος Mandriva."
-
-#~ msgid "Proceed"
-#~ msgstr "Συνέχεια"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "αποτυχία ανάκτησης του [%s]"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Λήψη αρχείου %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "Η αναβάθμιση της διανομής από 32bit σε 64bit δεν υποστηρίζεται "
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "Η αναβάθμιση της διανομής από 64bit σε 32bit δεν υποστηρίζεται"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Έχετε επιλέξει τους παρακάτω διακομιστές(η): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Αυτοί οι διακομιστές είναι εξ ορισμού ενεργoί. Δεν έχουν κάποιο γνωστό "
-#~ "πρόβλημα\n"
-#~ "ασφάλειας, αλλά μπορούν να βρεθούν νέα. Σε αυτή την περίπτωση βεβαιωθείτε "
-#~ "ότι\n"
-#~ "έχετε εγκαταστήσει την τελευταία έκδοση, το συντομότερο.\n"
-#~ "\n"
-#~ "\n"
-#~ "Είστε βέβαιοι για την εγκατάσταση αυτών των διακομιστών;\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm Desktop"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Σύνδεση με τον τόπο για την λήψη των διαθέσιμων πακέτων..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Αδυναμία επικοινωνίας με την εναλλακτική τοποθεσία %s"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Θέλετε να χρησιμοποιήσετε το aboot;"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Σφάλμα κατά την εγκατάσταση του aboot. \n"
-#~ "Να γίνει ππροσπάθεια βεβιασμένης εγκατάστασης, ακόμα και αν αυτό έχει σαν "
-#~ "αποτέλεσμα την καταστροφή της πρώτης κατάτμησης;"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Δημιουργία δισκέτας αυτόματης εγκατάστασης"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Η αυτόματη εγκατάσταση μπορεί να είναι πλήρως αυτόματη, κατά προτίμηση.\n"
-#~ "Σε αυτή την περίπτωση, θα πάρει τον έλεγχο του σκληρού δίσκου\n"
-#~ "(αυτό είναι χρήσιμο σε περιπτώσεις εγκατάστασης σε άλλο υπολογιστή).\n"
-#~ "\n"
-#~ "Ίσως να προτιμούσες να επαναλάβεις την εγκατάσταση.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Επανάληψη"
-
-#~ msgid "Automated"
-#~ msgstr "Αυτόματο"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Αποθήκευση επιλογής πακέτων"
-
-#~ msgid "All"
-#~ msgstr "Όλα"
-
-#~ msgid "TV card"
-#~ msgstr "Κάρτα TV"
-
-#~ msgid "Boot"
-#~ msgstr "Εκκίνηση"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Πιστοποίηση"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d πακέτο, %d MB)"
-#~ msgstr[1] "(%d πακέτα, %d MB)"
-
-#~ msgid "%d packages"
-#~ msgstr "%d πακέτα"
-
-#~ msgid "Language"
-#~ msgstr "Επιλέξτε γλώσσα"
-
-#~ msgid "License"
-#~ msgstr "Άδεια Χρήσης"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Επιλέξτε εγκατάσταση"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Εκτίμηση"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Επιλογή πακέτων"
-
-#~ msgid "Users"
-#~ msgstr "Χρήστες"
-
-#~ msgid "Networking"
-#~ msgstr "Δικτύωση"
-
-#~ msgid "Configure X"
-#~ msgstr "Ρύθμιση Χ"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Αδυναμία πρόσβασης των αρθρωμάτων που αντιστοιχούν στον πυρήνα σας (το "
-#~ "αρχείο %s λείπει), γενικά αυτό σημαίνει ότι η δισκέτα εκκίνησης δεν είναι "
-#~ "σε συγχρονισμό με το Μέσο εγκατάστασης ( παρακαλώ δημιουργήστε μια νέα "
-#~ "δισκέτα εκκίνησης)"
diff --git a/perl-install/install/share/po/eo.po b/perl-install/install/share/po/eo.po
index 261c04506..3ce0f3461 100644
--- a/perl-install/install/share/po/eo.po
+++ b/perl-install/install/share/po/eo.po
@@ -1,56 +1,82 @@
-# translation of eo.po to Esperanto
-# translation of DrakX-eo.po to
-# Esperanto drakbootdisk
-# Copyright (C) 2000, 2001 Mandriva
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# D. Dale Gulledge <dsplat@rochester.rr.com>, 2000.
-# Vilhelmo Lutermano <vlutermano@free.fr>, 2007.
+# Translators:
+# D. Dale Gulledge <dsplat@rochester.rr.com>, 2000
+# Vilhelmo Lutermano <vlutermano@free.fr>, 2007
msgid ""
msgstr ""
-"Project-Id-Version: eo\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2007-12-29 05:55+0100\n"
-"Last-Translator: Vilhelmo Lutermano <vlutermano@free.fr>\n"
-"Language-Team: Esperanto <eo@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Esperanto (http://www.transifex.com/MageiaLinux/mageia/"
+"language/eo/)\n"
+"Language: eo\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: KBabel 1.11.4\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Ĉu vi havas plian kroman datenportilon?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -63,94 +89,57 @@ msgstr ""
"\n"
"Ĉu vi havas kroman instalan datenportilon por konfiguri? "
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "KD-ROMo"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Reto (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Reto (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Reto (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL de la spegulo?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL devas komenci per ftp:// aŭ http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Mi kontaktas la Mandriva Linuksan retpaĝon por havigi la liston de "
-"disponeblaj speguloj..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Mi malsukcesis kontakti la Mandriva Linuksan retpaĝon por havigi la liston "
-"de disponeblaj speguloj..."
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Elektu spegulon de kiu havigi la pakaĵojn"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS-agordo"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Bonvole enigu la nomon kaj dosierujon de via NSF-datenportilo"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Nomo mankas"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Dosierujo devas komenci per \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Nomo de la NFS surmeto?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Dosierujo"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Kroma"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -159,23 +148,90 @@ msgstr ""
"Mi ne trovas pakaĵlistan dosieron sur tiu spegulo. Certiĝu ke la adreso "
"estas ĝusta."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Rigardante jam instalitajn pakaĵojn..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Trovadas pakaĵojn por promocii"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Mi forigas pakaĵojn antaŭ ol ĝisdatigi..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -188,87 +244,87 @@ msgstr ""
"\n"
"Ĉu vi vere deziras forigi tiujn pakaĵojn?\n"
-#: any.pm:813
-#, fuzzy, c-format
+#: any.pm:1075
+#, c-format
msgid "Error reading file %s"
-msgstr "Mi deŝutas dosieron %s..."
+msgstr ""
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "La sekva(j) disko(j) estas alinomitaj:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (antaŭe nomitaj kiel %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Reto"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Bonvole elektu datenportilon"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Dosiero jam ekzistas. Ĉu surskribi ĝin?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permeso rifuzita"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Malĝusta NFS-nomo"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Malbona datenportilo %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Mi ne povas fari ekranfotojn antaŭ ol subdiskigi"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Ekranfotoj haveblos post instalado en %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalado"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfigurado"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Vi devas ankaŭ formati %s"
@@ -293,22 +349,22 @@ msgstr "Startado de la reto"
msgid "Bringing down the network"
msgstr "Haltas de la reto"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Mi kopias kelkajn pakaĵojn sur diskoj por estonta uzo"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Mi estas kopianta"
@@ -338,7 +394,23 @@ msgstr "agrabla(j)"
msgid "maybe"
msgstr "elbe"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Nenia xml-informo por aŭdvidaĵo \"%s\", nur parta rezulto por pakaĵo %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nenia priskribo"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -347,75 +419,76 @@ msgstr ""
"Kelkaj pakaĵoj bezonataj de %s ne instaleblas:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Eraro okazis"
+msgstr "Eraro okazis:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Okazis fatala eraro: %s."
-#: pkgs.pm:792
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d instal-transakcioj malsukcesis"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Instalanta pakaĵo %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Laborstacio"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Oficeja laborstacio"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Oficejaj programoj: tekstiloj (OpenOffice.org Writer, Verkilo [Kword]), "
-"tabelkalkuliloj (OpenOffice.org Calc, Kspread), PDF-vidigiloj, ktp."
+"Oficejaj programoj: tekstiloj (LibreOffice Writer, Verkilo [Kword]), "
+"tabelkalkuliloj (LibreOffice Calc, Kspread), PDF-vidigiloj, ktp."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Oficej-programoj: tekstiloj (Verkilo [kword], aboword), tabelkalkuliloj "
-"(kspread, gnumeric), pdf-vidigiloj, ktp."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Ludstacio"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Amuz-programoj: arcade, tabuloj [boards], strategio, ktp."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Plurmediaj stacio"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programoj por ludi/prilabori son- kaj video-programojn"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Interreta stacio"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -424,269 +497,314 @@ msgstr ""
"Agordiloj por legi kaj sendi retpoŝt-mesaĝojn kaj novaĵojn (mutt, tin...) "
"kaj por krozi tra la ttt"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Reta computilo (kliento)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klientoj por diversaj protokoloj inklude de ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Iloj por faciligi la konfiguradon de via komputilo"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsoliloj"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Redaktiloj, ŝeloj, dosieriloj, terminaloj"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Programado"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C kaj C++ programadaj bibliotekoj, programoj kaj ĉapdosieroj"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentaro"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Libroj kaj Kielfari pri Linukso kaj libera programaro"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Subteno por triaflankaj aplikaĵoj"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Interret-servilo"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Grupa programaro"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Servilo"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Fajroŝirmilo/enkursigilo"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Interreta kluzo"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Poŝto/Novaĵoj"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix poŝta servilo, Inn novaĵaj servilo"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Dosierujo-servilo"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP Servilo"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Domajn-noma kaj ret-informa servilo"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Dosier- kaj printil-kundivida servilo"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS servilo, Samba servilo"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Datumbazoj"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Datenbaz-serviloj PostgreSQL kaj MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Datenbaz-serviloj PostgreSQL kaj MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "TTT/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Poŝto"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix poŝta servilo"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Datenbaz-servilo PostgreSQL aŭ MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Datenbaz-servilo PostgreSQL aŭ MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Reta computilo (servilo)"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS-servilo, SMB-servilo, prokur-servilo, ssh-servilo"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafika medio"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE Laborstacio"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "La tabula medio K, la baza grafika medio kun kolekto da akompanaj iloj"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Gnoma Laborstacio"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "Grafika medio kun uzfacila aplikaĵaro kaj tabul-iloj"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Labortabulo IceWm"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "Grafika medio kun uzfacila aplikaĵaro kaj tabul-iloj"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Aliaj grafikaj labortabuloj"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, ktp."
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Iloj"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH servilo"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Servilo de fora konfigurado Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Retaj utilaĵoj/monitorado"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Monitoriloj, proces-kalkuliloj, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Sorĉiloj de Mandriva"
+msgid "Mageia Wizards"
+msgstr "Sorĉiloj de Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Sorĉiloj por konfiguri servilon"
@@ -700,7 +818,7 @@ msgstr ""
"Eraro okazis, sed mi ne scias kiel trakti ĝin bone.\n"
"Daŭri je via propra risko."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -720,254 +838,258 @@ msgstr "Eniras paŝon `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Linuks-Mandrejka Instalado %s"
+msgid "%s Installation %s"
+msgstr "%s Instalado %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> inter elementoj"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Via sistemo havas malmulte da risurcoj. Eble vi havos problemojn pri\n"
-"instali Linuks-Mandrejkon. Se tio okazos, vi povos anstataŭ provi tekstan\n"
+"instali %s. Se tio okazos, vi povos anstataŭ provi tekstan\n"
"instaladon. Por ĉi tio, premu `F1' kiam vi startas de KDROM, kaj sekve\n"
"tajpu `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Instalo de la labortablo Mandriva KDE"
+msgid "Media Selection"
+msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Instalo de la labortablo Mandriva GNOME"
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Instalo de la labortablo %s GNOME"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Persona instalado"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Labortabulo IceWm"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Labortabulo IceWm"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Labortabulo IceWm"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Elektado de Pakaĵaj Grupoj"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Elektado de individuaj pakaĵoj"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Tuta grandeco: %d / %d MB"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Malbona pakaĵo"
+msgid "Total size: %d / %d MB"
+msgstr "Tuta grandeco: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versio: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Grandeco: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Graveco: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Vi ne povas elektu/malelektu ĉi tiun pakaĵon"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "pro mankanta %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "pro neplenumita %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "mi provas disponigi %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "por konservi %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Vi ne povas elekti ĉi tiun pakaĵon ĉar ne estas sufiĉe da spaco por instali\n"
"ĝin."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "La sekvaj pakaĵoj estos instalataj"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "La sekvaj pakaĵoj estos malinstalataj"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ĉi tiu estas deviga pakaĵo, vi ne povas malelekti ĝin"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Vi ne povas malelekti ĉi tiun pakaĵon. Ĝi estas jam instalita."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Vi ne povas malelekti ĉi tiun pakaĵon. Ĝi devus esti promociata."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Montru aŭtomate elektitajn pakaĵojn"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalu"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Ŝargi/Konservi selekton"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Ĝisdatigo de pakaĵ-elekto"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimuma instalado"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Programar-mastrumilo"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Elektu la pakaĵojn kiuj vi deziras instali"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instalanta"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Neniaj detaloj"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Tempo restanta "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Taksas"
+msgstr ""
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pakaĵo"
msgstr[1] "%d pakaĵoj"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Resumo"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfiguru"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "ne konfigurita"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Elektado de Pakaĵaj Grupoj"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -976,12 +1098,12 @@ msgstr ""
"La sekva instal-datenportilo(j) estas trovita(j).\n"
"Se vi deziras transsalti kelkajn de ili, vi povas tiujn nun malselekti."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Vi havas la opcion kopii la enhavojn de la KD-oj sur la fiksdiskon antaŭ la "
@@ -989,72 +1111,72 @@ msgstr ""
"Tiam la instalado daŭrigas el la fiksdisko kaj la pakaĵoj restos atingeblaj "
"post kiam la sistemo estos plene instalita."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopii kompletajn KD-ojn"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Eraro okazis"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Bonvole elektu vian klavar-aranĝon"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Jen la kompleta listo de disponeblaj klavaroj"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalado/Ĝisdatigo"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Ĉu tiu ĉi estas instalado aŭ ĝisdatigo?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instalado"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Ĝisdatigu %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Ĉifroŝlosilo por %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Instalado"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1063,36 +1185,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Konfiguras IDE"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Ne libera spaco por 1mb-startparto! La instalado daurigos, sed por startigi "
-"vian sistemon, vi devos krei la startpartan subdiskon en DiskDrake"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Vi devas krei praŝargon PPC PReP Boot! La instalado daŭros, sed por startigi "
-"vian sistemon, vi devas krei la praŝargan subdiskon en DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1107,21 +1210,21 @@ msgstr ""
"kiam vi finos.\n"
"Se vi ne havas ĝin, klaku \"Nuligu\" por eviti la instaladon de ĉi tiu KDROM."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Serĉas haveblajn pakaĵojn"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Via sistemo ne havas sufiĉe da spaco libera por instalado aŭ ĝisdatigo (%dMB "
"> %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1130,54 +1233,52 @@ msgstr ""
"Bonvole elektu ŝargi aŭ konservi pakaĵ-elekton.\n"
" La formato estas la sama kiel dosieroj generitaj per auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Ŝargu"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Konservu"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Malbona dosiero"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Elektado de Pakaĵaj Grupoj"
+msgstr "Grafika medio"
-#: steps_interactive.pm:472
-#, fuzzy, c-format
+#: steps_interactive.pm:460
+#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-"Vi povas elekti profilon de labortablo de via laborejo: KDE, GNOME aŭ "
-"Personigita"
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Elektita grandeco estas pli ampleksa ol disponebla spaco"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Instaltipo"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1186,89 +1287,128 @@ msgstr ""
"Vi ne elektis pakaĵgrupon.\n"
"Bonvole elektu la minimuman instaladon kiun vi deziras:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Kun X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instalanta pakaĵo %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Kun baza dokumentaĵo (rekomendita!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Vere minimuma instalado (precipe ne urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Preparas instaladon"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instalanta pakaĵo %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Estis eraro ordigi pakaĵojn:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Ĉu vi deziras daŭri tamen?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Reprovu"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Transsalti tiun pakaĵon"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Transsalti ĉiujn pakaĵojn de la datenportilo \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Reiru al la datenportilo kaj pakaĵ-selekto"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Estis eraro dum instalado de pakaĵo %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Post-instala konfigurado"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
"Bonvole certiĝu ke la datenportilo por ĝisdatigaj moduloj troviĝas en la "
"aparato %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Ĝisdatigoj"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "La sekvaj pakaĵoj estos instalataj"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Paneo ĉe aldono de portilo"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1289,110 +1429,80 @@ msgstr ""
"\n"
"Ĉu vi deziras instali tiujn ĝisdatigojn?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s sur %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Aparataro"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Sonkarto"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Ĉu vi havas ISA-sonkarton?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Rulu \"alsaconf\" aŭ \"sndconfig\" post instalado por konfiguri vian "
-"sonkarton"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Ne detektis sonkarto. Provu \"harddrake\" post instalado"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafika interfaco"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Reto kaj Interreto"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Prokuraj Serviloj"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "konfigurita"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "sekurnivelo"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Fajromuro (Firewall)"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktiva"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "malebligita"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Vi ne konfiguris X-on. Ĉu vi certas vere voli tion?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "Preparas startŝargilon"
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"Ŝajne vi havas malnovegan aŭ nekonatan maŝinon,la yaboot-startilo ne "
-"funkcios por vi.La instalado daŭrigos, sed vi devosuzi BootX aŭ alian "
-"rimedon por startigi vian maŝinon. La kerno-argumento por la root fs "
-"[dosiersistemo] estas: root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1401,17 +1511,17 @@ msgstr ""
"Sur tiu ĉi sekurec-nivelo, la aliro al dosieroj en la Vindozaj subdiskoj "
"estas limigitaj al la mastrumanto."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Enŝovu malplenan disketon en drajvo %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Kreas aŭtoinstalan disketon"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1422,12 +1532,12 @@ msgstr ""
"\n"
"Ĉu vi vere volas ĉesi nun?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Gratulojn"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Restarto"
@@ -1522,13 +1632,6 @@ msgid ""
"Users"
msgstr "Uzuloj"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Retumado"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1571,80 +1674,26 @@ msgid ""
"Exit"
msgstr "Eliro"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Mi deŝutas dosieron %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "Ĝisdatigo de 32-bita al 64-bita eldono ne estas subtenata"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "Ĝisdatigo de 64-bita al 32-bita eldono ne estas subtenata"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Vi selektis jena(j)n servilo(j)n: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Tiuj serviloj estas enŝaltitaj defaŭlte. Ili havas neniujn konatajn "
-#~ "sekurec-\n"
-#~ "problemojn, sed iuj novaj povas esti trovita. Tiukaze, vi devas certiĝi "
-#~ "por\n"
-#~ "ĝisdatigi kiom eble plej baldaŭ.\n"
-#~ "\n"
-#~ "\n"
-#~ "Ĉu vi vere deziras instali tiujn servilojn?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Labortablo IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Kontaktu la spegulon por havigi la liston de havebla pakaĵoj"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Ne povis kontakti spegulon %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Kreu aŭtoinstalan disketon"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "La meminstalo povas esti plene aŭtomatigita se vi deziras,\n"
-#~ "tiukaze ĝi transprenas la fiksdiskon!!\n"
-#~ "(tio estas farita por instali sur alian aparaton).\n"
-#~ "\n"
-#~ "Vi eble preferas ripeti la instaladon.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Reludu"
-
-#~ msgid "Automated"
-#~ msgstr "Aŭtomata"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL de la spegulo?"
-#~ msgid "Save packages selection"
-#~ msgstr "Konservu la pakaĵ-elekton"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL devas komenci per ftp:// aŭ http://"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Ĉu vi deziras uzi aboot-on?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr ""
+#~ "Mi kontaktas la %s Linuksan retpaĝon por havigi la liston de disponeblaj "
+#~ "speguloj..."
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Eraro daŭre mi instalis \"aboot\",\n"
-#~ "Ĉu mi devus provi perforte instali eĉ se tio detruas la unuan subdiskon?"
+#~ "Mi malsukcesis kontakti la %s Linuksan retpaĝon por havigi la liston de "
+#~ "disponeblaj speguloj..."
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Elektu spegulon de kiu havigi la pakaĵojn"
diff --git a/perl-install/install/share/po/es.po b/perl-install/install/share/po/es.po
index 23c194438..9df789aa3 100644
--- a/perl-install/install/share/po/es.po
+++ b/perl-install/install/share/po/es.po
@@ -1,59 +1,89 @@
-# translation of es.po to Español
-# traducción de DrakX-es.po to Español
-# spanish translation of DrakX
-# Copyright (C) 2000, 2001,2002, 2007 Mandriva S.A.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Fabián Mandelbaum <fmandelbaum@gmail.com>, 2000-2004, 2007.
-# Pablo Saratxaga <pablo@mandriva.com>, 2004, 2006.
-# Jaime Crespo <505201@unizar.es>, 2004, 2005.
-# José Manuel Pérez <jmprodu@hotmail.com>, 2005.
-# Andre Paulo Machado <andre.panm@gmail.com>, 2009.
+# Translators:
+# Miguel, 2013,2015-2016
+# Egoitz Rodriguez <egoitzro@gmail.com>, 2014-2015
+# José Alberto Valle Cid <j.alberto.vc@gmail.com>, 2019-2020,2022
+# Jose Manuel López <joselp@e.email>, 2020
+# Miguel, 2019
+# Miguel Ortega, 2013,2016
+# Miguel, 2016
msgid ""
msgstr ""
-"Project-Id-Version: es\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-08-28 15:06-0300\n"
-"Last-Translator: Andre Paulo Machado <andre.panm@gmail.com>\n"
-"Language-Team: Spanish <es@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: José Alberto Valle Cid <j.alberto.vc@gmail.com>, "
+"2019-2020,2022\n"
+"Language-Team: Spanish (http://app.transifex.com/MageiaLinux/mageia/language/"
+"es/)\n"
+"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 0.3\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? "
+"1 : 2;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Su escritorio en un pendrive USB"
+msgid "Join Us!"
+msgstr "¡Únasenos!"
-#: ../../advertising/IM_free09.pl:1
-#, fuzzy, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "La distribución Mandriva Linux 100% Open Source"
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr "¡Personalícela!"
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr "¡Su elección!"
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr "Herramientas de oficina"
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr "Entretenimiento de hogar"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Explore Linux con facilidad por medio de Mandriva One"
+msgid "For kids"
+msgstr "Para niños"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Un escritorio Mandriva Linux completo, con soporte"
+msgid "For family!"
+msgstr "¡Para la familia!"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: distribuciones para las necesidades de todos"
+msgid "For developers!"
+msgstr "¡Para desarrolladores!"
-#: any.pm:109
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "¡Gracias!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "¡Sea libre!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "¿Tiene algún soporte de instalación suplementario?"
+msgstr "¿Tiene usted otros medios complementarios?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -61,125 +91,163 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Se encontraron los soportes siguientes y se usarán durante la instalación: %"
-"s.\n"
+"Se han encontrado los siguientes medios y serán utilizados durante la "
+"instalación: %s.\n"
"\n"
"\n"
-"¿Tiene algún soporte suplementario que configurar?"
+"¿Tiene otro medio de instalación complementario que configurar?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Red (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Red (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Red (NFS)"
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
-msgstr "¿URL del sitio réplica?"
+msgid "NFS setup"
+msgstr "Configuración NFS"
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "El URL debe empezar con ftp:// o http://"
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr "Por favor, introduzca el nombre de equipo y directorio de su medio NFS"
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Contactando con el sitio web de Mandriva Linux para obtener la lista de las "
-"réplicas disponibles"
+msgid "Hostname missing"
+msgstr "Falta nombre de equipo"
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr "El directorio debe comenzar con \"/\""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr "¿Cuál es el nombre de equipo del montaje NFS?"
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Directorio"
-#: any.pm:187
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr "Complementario"
+
+#: any.pm:300
#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"No se pudo conectar con el sitio web de Mandriva Linux para obtener la lista "
-"de las réplicas disponibles"
+"No se puede encontrar un archivo de lista de paquetes en este espejo. "
+"Asegúrese de que la ubicación sea la correcta."
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Elija un sitio de réplica del cual obtener los paquetes"
+msgid "Core Release"
+msgstr "Core Release"
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
-msgstr "Configuración NFS"
+msgid "Tainted Release"
+msgstr "Tainted Release"
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
-msgstr "Ingrese el nombre de servidor y el directorio de su soporte NFS"
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
-msgstr "Falta el nombre del servidor"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Hardware de su máquina necesita de firmware no libre para que los "
+"controladores de software libre funcionen."
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
-msgstr "El directorio debe empezar con \"/\""
+msgid "You should enable \"%s\""
+msgstr "Debería habilitar \"%s\""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
-msgstr "¿Nombre del servidor del montaje NFS?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" contiene varias piezas de los sistemas y sus aplicaciones"
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Directorio"
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" contiene software no libre.\n"
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
-msgstr "Suplementario"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"También contiene firmware necesario para ciertos dispositivos puedan operar "
+"(ej: algunas tarjetas gráficas ATI/AMD, algunas tarjetas de red, algunas "
+"tarjetas RAID, etc)"
-#: any.pm:295
+#: any.pm:422
#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" contiene software que no puede ser distribuido en todos los países "
+"debido a patentes de software."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
msgstr ""
-"No puedo encontrar el archivo hdlist en este sitio réplica. Asegúrese que la "
-"ubicación es correcta."
+"También contiene software de \"%s\" reconstruido con capacidades adicionales."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Aquí puede habilitar mas medios si así lo desea."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Este medio provee actualizaciones de paquetes para el medio \"%s\""
-#: any.pm:334
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Buscando paquetes ya instalados..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Encontrando los paquetes a actualizar..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "Quitando paquetes antes de actualizar..."
+msgstr "Eliminación de los paquetes antes de la actualización..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -187,97 +255,97 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Se quitarán los paquetes siguientes para permitir actualizar su sistema: %s\n"
+"Los siguientes paquetes serán removidos para permitir la actualización de su "
+"sistema: %s\n"
"\n"
"\n"
-"¿Realmente desea quitar estos paquetes?\n"
+"¿Está seguro de que quiere eliminar estos paquetes?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Error al leer el archivo %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Se renombraron los discos siguientes:"
+msgstr "El o los siguientes discos fueron renombrados:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (antes conocido como %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Red"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Por favor, elija un soporte"
+msgstr "Por favor, elija un medio"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "El archivo ya existe. ¿Desea sobreescribirlo?"
+msgstr "El archivo ya existe. ¿Sobrescribirlo?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permiso denegado"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr "Nombre NFS incorrecto"
+msgstr "Nombre NFS erróneo"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "Soporte %s incorrecto"
+msgstr "Medio erróneo %s "
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "No se pueden realizar instantáneas de pantalla antes del particionado"
+msgid "Cannot make screenshots before partitioning"
+msgstr "No se puede hacer capturas de pantalla antes de particionar"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
-"Luego de la instalación estarán disponibles las instantáneas de pantalla en %"
-"s"
+"Las capturas de pantallas estarán disponibles después de la instalación en %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalación"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configuración"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
-msgstr "También se debe formatear %s"
+msgstr "También debe formatear %s"
#: interactive.pm:16
#, c-format
@@ -285,36 +353,36 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Algún hardware de su computadora necesita controladores \"propietarios\" "
-"para funcionar.\n"
-"Puede encontrar información sobre ellos en: %s"
+"Algún hardware de su equipo necesita controladores ``propietarios\" para "
+"trabajar.\n"
+"Puede encontrar más información sobre ellos en: %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "Levantando la red"
+msgstr "Activando la red"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "Bajando la red"
+msgstr "Desactivando la red"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Por favor espere, recuperando archivo"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr "no se puede añadir media"
+msgstr "no se puede agregar medio"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr "Copiando algunos paquetes en el disco para uso futuro"
+msgstr "Copiar algunos paquetes en disco para su uso futuro"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Copia en curso"
@@ -322,7 +390,7 @@ msgstr "Copia en curso"
#: pkgs.pm:32
#, c-format
msgid "must have"
-msgstr "necesario"
+msgstr "debe tener"
#: pkgs.pm:33
#, c-format
@@ -332,373 +400,438 @@ msgstr "importante"
#: pkgs.pm:34
#, c-format
msgid "very nice"
-msgstr "muy bueno"
+msgstr "muy agradable"
#: pkgs.pm:35
#, c-format
msgid "nice"
-msgstr "bueno"
+msgstr "agradable"
#: pkgs.pm:36
#, c-format
msgid "maybe"
-msgstr "quizás"
+msgstr "tal vez"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Obteniendo información de paquete desde meta datos XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"No hay información xml para el medio \"%s\", sólo un resultado parcial para "
+"el paquete %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Sin descripción"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-"Algunos paquetes que necesita %s no se pueden instalar:\n"
+"Algunos paquetes requeridos por %s no se pueden instalar:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
-msgstr "Ocurrió un error:"
+msgstr "Se produjo un error:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Ocurrió un error fatal: %s"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "No preguntar de nuevo"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "Fallaron %d transacciones de instalación"
+msgstr "Fallaron %d operaciones de instalación"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
-msgstr "La instalación de paquetes falló:"
+msgstr "Falló la instalación de paquetes:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Estación de trabajo"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
-msgstr "Estación de trabajo de Oficina"
-
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Programas de Oficina: procesadores de texto (OpenOffice.org Writer, Kword), "
-"hojas de cálculo (OpenOffice.org Calc, Kspread), visualizadores PDF, etc"
+msgstr "Estación de trabajo de oficina"
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programas de Oficina: procesadores de palabras (kword, abiword), plantillas "
-"de cálculo (kspread, gnumeric), visualizadores PDF, etc"
+"Programas de oficina: procesadores de texto (LibreOffice Writer, Kword), "
+"hojas de cálculo (LibreOffice Calc, Kspread), visores PDF, etc."
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
-msgstr "Estación de Juegos"
+msgstr "Estación de juegos"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "Programas de entretenimiento: arcade, tableros, estrategia, etc"
+msgstr "Programas de diversión: arcade, tableros, estrategia, etc."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "Estación Multimedios"
+msgstr "Estación Multimedia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Programas de reproducción/edición de sonido y vídeo"
+msgstr "Programas de reproducción y edición de sonido y video"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "Estación Internet"
+msgstr "Estación de Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Conjunto de herramientas para leer y enviar correo y noticias (mutt, tin...) "
-"y para navegar por la Web"
+"Conjunto de herramientas para leer y enviar correo y noticias (mutt, tin, "
+"etc) y para navegar por la Web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
-msgstr "Computadora de Red (cliente)"
+msgstr "Computador de red (cliente)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Clientes para los distintos protocolos incluyendo a SSH"
+msgstr "Clientes para diferentes protocolos, incluyendo ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Herramientas para facilitar la configuración de su computadora"
+msgstr "Herramientas para facilitar la configuración de su computador"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "Herramientas para la consola"
+msgstr "Herramientas de consola"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "Editores, shells, manipulación de archivos, terminales"
+msgstr "Editores, consolas, herramientas de archivo, terminales"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Desarrollo"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "Bibliotecas de desarrollo C y C++, programas y archivos *.h"
+msgstr "Bibliotecas de C y C + +, programas y archivos de inclusión"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentación"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Libros y COMOs sobre Linux y Software Libre"
+msgstr "Libros y Howtos sobre Linux y Software Libre"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Linux Standard Base. Soporte de aplicaciones de terceros"
+msgstr "Base estándar de Linux. Soporte de aplicaciones de terceros"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
-msgstr "Servidor web"
+msgstr "Servidor Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
-msgstr "Grupos de trabajo"
+msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Servidor Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
-msgstr "Cortafuegos/Router"
+msgstr "Cortafuegos/Enrutador"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
-msgstr "Pasarela de acceso a Internet"
+msgstr "Puerta de enlace de Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Correo/Noticias"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Servidor de correo Postfix, servidor de noticias Inn"
+msgstr "Servidor de correo Postfix, Servidor de noticias Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "Servidor de directorios"
+msgstr "Servidor de directorio"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Servidor FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Servidor de nombres de dominio y servidor de información de red"
+msgstr "Nombre de dominio y Servidor de Información de Red"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Servidor de archivos e impresión"
+msgstr "Servidor de compartición de archivos e impresoras"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Servidor NFS, servidor Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
-msgstr "Base de Datos"
+msgstr "Bases de datos"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Servidor de base de datos PostgreSQL y MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Servidor de bases de datos PostgreSQL y MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
-msgstr "Apache y Pro-ftpd"
+msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Correo"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Servidor de correo Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Servidor de base de datos PostgreSQL o MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Servidor de bases de datos PostgreSQL o MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Servidor de red"
+msgstr "Servidor de computador de red"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "Servidor NFS, servidor SMB, servidor proxy, servidor SSH"
+msgstr "servidor NFS, servidor SMB, servidor proxy, servidor ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Entorno gráfico"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Estación de trabajo KDE"
+msgid "Plasma Workstation"
+msgstr "Estación de trabajo Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"El K Desktop Environment, el entorno gráfico básico con una colección de "
+"El entorno de escritorio K, el entorno gráfico básico con una colección de "
"herramientas que lo acompañan"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Estación de trabajo GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-"Entorno gráfico con un conjunto de herramientas de escritorio y aplicaciones "
-"amigables"
+"Un entorno gráfico con un conjunto de aplicaciones y herramientas de "
+"escritorio amigables con el usuario"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Escritorio LXDE"
+msgid "Xfce Workstation"
+msgstr "Estación de trabajo Xfce"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Un entorno gráfico ligero y rápido con un conjunto de herramientas de "
-"escritorio y aplicaciones amigables"
+"Un entorno gráfico ligero con un conjunto de aplicaciones y herramientas de "
+"escritorio amigables con el usuario"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Estación de trabajo MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Estación de trabajo Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Un entorno gráfico basado en GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Escritorio LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+"Un puerto QT de siguiente generación del entorno de escritorio lightweight"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Escritorio Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Un entorno gráfico rápido y liviando con un seguimiento dedicado"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Escritorio LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Un entorno gráfico ligero"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "Otros entornos gráficos"
+msgstr "Otros escritorios gráficos"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, etc"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilidades"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Servidor SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Servidor de configuración remota Webmin"
+msgstr "Servidor de Configuración Remota Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Utilidades/Supervisión de red"
+msgstr "Utilidades y monitoreo de red"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "Herramientas de supervisión, control de procesos, tcpdump, nmap, ..."
+msgstr ""
+"Herramientas de supervisión, contabilidad de procesos, tcpdump, nmap, etc."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Asistentes de Mandriva"
+msgid "Mageia Wizards"
+msgstr "Asistentes de Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Asistentes para configurar el servidor"
@@ -709,10 +842,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Ocurrió un error y no se puede resolver de forma adecuada.\n"
+"Se produjo un error, pero no sé manejarlo adecuadamente .\n"
"Continúe bajo su propio riesgo."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -721,351 +854,360 @@ msgid ""
"\"\n"
msgstr ""
"Algunos paquetes importantes no se instalaron correctamente.\n"
-"Puede ser que su lector de CD o su CD de instalación estén defectuosos.\n"
-"Verifique el CD de instalación en un sistema ya existente con el comando:\n"
-" rpm -qpl media/main/*.rpm\n"
+"Puede ser que su unidad de CD-ROM o su disco CD-ROM está defectuoso.\n"
+"Verifica el disco CD-ROM en un equipo instalado con \"rpm -qpl media/main/*."
+"rpm\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Entrando en la etapa '%s'\n"
+msgstr "Entrando al paso `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Instalación de Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "%s Instalación %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
-msgstr "<Tab>/<Alt-Tab> entre elementos"
+msgstr "<Tab>/<Alt-Tab> entre los elementos"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "El servidor Xorg tarda en iniciar. Por favor, espere..."
+msgstr "El servidor Xorg demora en iniciar. Por favor espere..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Su sistema tiene pocos recursos. Puede tener algún problema instalando\n"
-"Mandriva Linux. De ser así, puede intentar una instalación tipo texto.\n"
-"Para ello, presione 'F1' cuando arranque desde el CDROM, e introduzca 'text'."
+"El sistema está bajo en recursos. Es posible que tenga algún problema "
+"instalando\n"
+"%s. Si eso ocurre, puede tratar de una instalación en modo texto. Para "
+"ello,\n"
+"presione 'F1' cuando arranque desde el CD-ROM, luego escriba `texto'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Instalar el escritorio KDE de Mandriva"
+msgid "Media Selection"
+msgstr "Selección de medios"
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr "Instalar Escritorio Plasma %s"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Instalar el escritorio GNOME de Mandriva"
+msgid "Install %s GNOME Desktop"
+msgstr "Instalar escritorio GNOME %s"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Instalación personalizada"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Escritorio KDE"
+msgid "Plasma Desktop"
+msgstr "Escritorio Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Escritorio GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Escritorio personalizado"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Aquí tiene un previsualización del escritorio '%s'."
+msgstr "Aquí hay una vista previa del escritorio '%s'."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Haga clic sobre las imágenes para agrandarlas"
+msgstr "Haga clic en las imágenes para ver una vista previa más grande"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "Selección de grupos de paquetes"
+msgstr "Selección de Grupo de paquetes"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "Selección de paquetes individuales"
+msgstr "Selección individual de paquetes"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Tamaño total: %d / %d MB"
+msgid "Unselect All"
+msgstr "Deseleccionar todas."
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Paquete incorrecto"
+msgid "Total size: %d / %d MB"
+msgstr "Tamaño total: %d/%d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versión: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Tamaño: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Importancia: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
-msgstr "No puede seleccionar/deseleccionar este paquete"
+msgid "You cannot select/unselect this package"
+msgstr "No se puede seleccionar/des-seleccionar este paquete"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "debido a que falta %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "debido a que no se satisfizo %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr "intentando promover a %s"
+msgstr "tratando de promover %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "para mantener %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-"No puede seleccionar este paquete porque no hay espacio suficiente para "
+"No se puede seleccionar el paquete ya que no hay suficiente espacio para "
"instalarlo"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
-msgstr "Se van a instalar los paquetes siguientes"
+msgstr "Los siguientes paquetes se van a instalar"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
-msgstr "Se van a quitar los paquetes siguientes"
+msgstr "Los siguientes paquetes se van a quitar"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Este es un paquete obligatorio, no puede desmarcarlo"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Este es un paquete obligatorio, no puede ser des-seleccionado"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "No puede desmarcar este paquete. Ya está instalado"
+msgid "You cannot unselect this package. It is already installed"
+msgstr "No se puede des-seleccionar este paquete. Ya está instalado"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "No puede desmarcar este paquete. Debe ser actualizado"
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "No se puede des-seleccionar este paquete. Debe ser actualizado"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Mostrar los paquetes seleccionados automáticamente"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalar"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Cargar/Guardar selección"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Actualizando la selección de paquetes"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Alternar entre la lista de paquete jerárquica y plana"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Instalación mínima"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Administración de software"
+msgstr "Administración de Software"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
-msgstr "Elija los paquetes que desea instalar"
+msgstr "Seleccione los paquetes que desea instalar"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instalando"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Sin detalles"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Tiempo restante:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
-msgstr "(estimando...)"
+msgstr "(Estimando...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d paquete"
msgstr[1] "%d paquetes"
+msgstr[2] "%d paquetes"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Resumen"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configurar"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "no configurado"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Selección de soportes"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"Se han encontrado los siguientes soportes de instalación.\n"
-"Si quiere saltarse alguno de ellos, puede deseleccionarlos ahora."
+"Se han encontrado los siguientes medios de instalación.\n"
+"Si desea omitir algunos de ellos, puede desseleccionar algunos ahora."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Tiene la opción de copiar los contenidos de los CD al disco duro antes de la "
-"instalación.\n"
-"La misma continuará desde el disco duro y los paquetes estarán disponibles "
-"una vez que el sistema esté completamente instalado."
+"Usted tiene la opción de copiar el contenido de los CDs a la unidad de disco "
+"duro antes de la instalación.\n"
+"Se continuará desde la unidad de disco duro y los paquetes estarán "
+"disponibles una vez que el sistema esté completamente instalado."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr "Copiar los CD por completo"
+msgstr "Copiar todos los CDs"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
-msgstr "Ocurrió un error"
+msgstr "Se produjo un error"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Por favor, elija el tipo de su teclado"
+msgstr "Por favor, elija la distribución del teclado"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Aquí tiene la lista completa de teclados disponibles:"
+msgstr "Aquí está la lista completa de los teclados disponibles:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "Instalación/Actualización"
+msgstr "Instalar/Actualizar"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "¿Es una instalación o una actualización?"
+msgstr "¿Es esta una instalación o una actualización?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Instalación"
+msgstr ""
+"_: Este es un sustantivo:\n"
+"Instalación"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Actualizar %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
-msgstr "Clave de cifrado para %s"
+msgstr "Llave de cifrado para %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr "Cancelar la instalación, volver a iniciar el sistema"
+msgstr "Cancele la instalación, reinicie el sistema"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
-msgstr "Instalación nueva"
+msgstr "Nueva instalación"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr "Actualizar la instalación previa (no se recomienda)"
+msgstr "Actualizar instalación previa (no recomendado)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1073,45 +1215,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"El instalador detectó que no se puede actualizar con seguridad a su\n"
-"sistema Mandriva Linux ya instalado a la versión %s.\n"
+"Instalador ha detectado que su sistema Linux instalado no\n"
+"puede ser actualizado de manera segura a %s.\n"
"\n"
-"Se recomienda una instalación nueva que reemplace a la anterior.\n"
+"Se recomienda una instalación nueva que sustituya a la anterior.\n"
"\n"
-"¡Atención: debería hacer copia de respaldo de todos sus datos\n"
-"antes de comenzar con la instalación nueva!"
+"Advertencia: debe hacer un respaldo de todos sus datos personales\n"
+"antes de elegir \"Nueva instalación\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Configurando dispositivos IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"¡No hay 1MB de espacio para bootstrap! La instalación continuará, pero para "
-"arrancar su sistema, necesitará crear la partición bootstrap en DiskDrake"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"¡Necesita crear un bootstrap de arranque PReP PPC! La instalación continuará "
-"pero, para arrancar su sistema, necesitará crear la partición bootstrap en "
-"DiskDrake"
+msgid "Configuring CD/DVD"
+msgstr "Configurando CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1119,173 +1241,214 @@ msgid ""
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"¡Cambie su CD-ROM!\n"
-"\n"
-"Por favor, inserte CD-ROM etiquetado \"%s\" en la unidad y pulse Aceptar "
-"cuando lo haya hecho.\n"
-"Si no lo posee, pulse Cancelar para evitar la instalación desde este CD-ROM."
+"¡Cambiar su CD-ROM!\n"
+"Por favor inserte el CD-ROM etiquetado \"%s\" en la unidad y pulse Aceptar "
+"cuando haya terminado.\n"
+"Si no lo tiene, pulse Cancelar para evitar la instalación desde este CD-Rom."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Buscando los paquetes disponibles..."
+msgstr "Buscando paquetes disponibles ..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Su sistema no tiene espacio libre suficiente para la instalación o "
-"actualización (%d MB > %d MB)"
+"Su sistema no dispone de espacio suficiente para la instalación o "
+"actualización (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Por favor, seleccione cargar o guardar la selección de paquetes.\n"
-"El formato es el mismo que el de los archivos generados con la instación "
-"automática."
+"Por favor, elija cargar o guardar la selección de paquetes.\n"
+"El formato es el mismo que los archivos generados por auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Cargar"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Guardar"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Archivo incorrecto"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
-msgstr "Selección del entorno de escritorio"
+msgstr "Selección de escritorio"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "Puede elegir un perfil de escritorio de estación de trabajo."
+msgstr "Usted puede elegir su perfil de escritorio de estación de trabajo."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
-msgstr "El tamaño seleccionado es mayor que el disponible"
+msgstr "El tamaño seleccionado es más grande que el espacio disponible"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
-msgstr "Tipo de instalación."
+msgstr "Tipo de instalación"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-"No ha seleccionado ningún grupo de paquetes\n"
-"Elija por favor la instalación mínima que desea."
+"No ha seleccionado ningún grupo de paquetes.\n"
+"Por favor, elija la instalación mínima que desee:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Con X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instalando el paquete %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Instalar paquetes recomendados"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "Con documentación básica (¡recomendado!)"
+msgstr "Con la documentación básica (¡recomendado!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "Instalación mínima \"en serio\" (especialmente sin urpmi)"
+msgstr "Instalación realmente mínima (especialmente sin urpmi)"
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Preparando actualización..."
-#: steps_interactive.pm:638
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Preparando la instalación"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instalando el paquete %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "Hubo un error al ordenar los paquetes:"
+msgstr "Se ha producido un error al ordenar los paquetes:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
-msgstr "¿Seguir adelante?"
+msgstr "¿Continuar de todos modos?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr "Reintentarlo"
+msgstr "Reintentar"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr "Omitir este paquete"
+msgstr "Saltar este paquete"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "Omitir todos los paquetes del soporte \"%s\""
+msgstr "Omitir todos los paquetes del medio \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
-msgstr "Volver a la selección de paquetes"
+msgstr "Vuelve a la selección de medios y paquetes"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "Hubo un error al instalar el paquete %s."
+msgstr "Se ha producido un error al instalar el paquete %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
-msgstr "Configuración posterior a la instalación"
+msgstr "Configuración post-instalación"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-"Por favor, asegúrese de que el soporte de actualización de módulos está en "
-"la unidad %s"
+"Por favor, asegúrese de que el medio de Módulos de Actualización está en la "
+"unidad %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Actualizaciones"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Ahora tiene la oportunidad de configurar los repositorios en internet."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Esto permite instalar actualizaciones de seguridad."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Para configurar estos repositorios, necesitará una conexión a internet que "
+"funcione.\n"
+"\n"
+"¿Desea configurar los repositorios de actualizaciones?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "No se puede instalar el gestor de descargas"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "¿Reintentar?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Fallo al añadir soporte"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1297,156 +1460,125 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Ahora tiene la oportunidad de bajar paquetes actualizados. Estos paquetes\n"
-"se han actualizado después de que se publicó la distribución. Puede que los\n"
-"mismos contengan correcciones de bugs o de seguridad.\n"
+"Ahora tiene la oportunidad de descargar paquetes actualizados. Estos "
+"paquetes\n"
+"se han actualizado después de la distribución fue lanzada. Pueden contener\n"
+"correcciones de seguridad o de errores.\n"
"\n"
-"Para descargar estos paquetes, necesitará tener una conexión con la\n"
-"Internet que esté funcionando.\n"
+"Para descargar estos paquetes, se necesita tener una conexión a Internet "
+"activa.\n"
"\n"
"¿Desea instalar las actualizaciones?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s en %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Tarjeta de sonido"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "¿Tiene una tarjeta de sonido ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Use \"alsaconf\" o \"sndconfig\" luego de la instalación para configurar su "
-"tarjeta de sonido"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"No se detectó tarjeta de sonido. Pruebe \"harddrake\" luego de la instalación"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interfaz gráfica"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Redes e Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Proxis"
+msgstr "Servidores proxy"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "configurado"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Nivel de seguridad"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Cortafuegos"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "activado"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "deshabilitado"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "No ha configurado a X ¿Está seguro que realmente desea esto?"
+msgstr "No se ha configurado X. ¿Está seguro de que desea esto?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Preparando el cargador de arranque"
+msgid "Preparing initial startup program..."
+msgstr "Preparando el programa de instalación inicial..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr "Sea paciente por favor, pues esto puede tardar un rato."
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Parece que tiene una máquina desconocida o \"Old World\", el gestor de "
-"arranque yaboot no funcionará en la misma.\n"
-"La instalación continuará, pero necesitará\n"
-"utilizar BootX o alguna otra manera para arrancar su máquina. El parámetro "
-"del kernel para el sistema de archvivos raíz es: root=%s"
+msgstr "Sea paciente, esto puede tardar un tiempo..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"En este nivel de seguridad, el acceso a los archivos en la partición Windows "
-"está restringido sólo al administrador."
+"En este nivel de seguridad, el acceso a los archivos en la partición de "
+"Windows está restringido al administrador."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Inserte un disquete en blanco en la unidad %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Creando el disquete de instalación automática"
+msgstr "Creando disquete de instalación automática..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-"Algunas de las etapas no fueron completadas.\n"
+"Algunas pasos no se han completado.\n"
"\n"
-"¿Realmente desea salir ahora?"
+"¿Está seguro que desea salir ahora?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
-msgstr "Felicidades"
+msgstr "Felicitaciones"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Reiniciar"
@@ -1457,7 +1589,9 @@ msgstr "Reiniciar"
msgid ""
"_: Keep these entry short\n"
"Language"
-msgstr "Idioma"
+msgstr ""
+"_: Keep these entry short\n"
+"Idioma"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
@@ -1469,228 +1603,150 @@ msgstr "Localización"
msgid ""
"_: Keep these entry short\n"
"License"
-msgstr "Licencia"
+msgstr ""
+"_: Keep these entry short\n"
+"Licencia"
#: steps_list.pm:18
#, c-format
msgid ""
"_: Keep these entry short\n"
"Mouse"
-msgstr "Ratón"
+msgstr ""
+"_: Keep these entry short\n"
+"Ratón"
#: steps_list.pm:19 steps_list.pm:20
#, c-format
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Detección del disco rígido"
+msgstr ""
+"_: Keep these entry short\n"
+"Detección de disco duro"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr "Clase de instalación"
+msgstr ""
+"_: Keep these entry short\n"
+"Clase de instalación"
#: steps_list.pm:23
#, c-format
msgid ""
"_: Keep these entry short\n"
"Keyboard"
-msgstr "Teclado"
+msgstr ""
+"_: Keep these entry short\n"
+"Teclado"
#: steps_list.pm:24
#, c-format
msgid ""
"_: Keep these entry short\n"
"Security"
-msgstr "Seguridad"
+msgstr ""
+"_: Keep these entry short\n"
+"Seguridad"
#: steps_list.pm:25
#, c-format
msgid ""
"_: Keep these entry short\n"
"Partitioning"
-msgstr "Particionado"
+msgstr ""
+"_: Keep these entry short\n"
+"Particionamiento"
#: steps_list.pm:27 steps_list.pm:28
#, c-format
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr "Formateo"
+msgstr ""
+"_: Keep these entry short\n"
+"Formateo"
#: steps_list.pm:29
#, c-format
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr "Selección de paquetes"
+msgstr ""
+"_: Keep these entry short\n"
+"Selección de paquetes"
#: steps_list.pm:31
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "Instalación"
+msgstr ""
+"_: Keep these entry short\n"
+"Instalación"
#: steps_list.pm:34
#, c-format
msgid ""
"_: Keep these entry short\n"
"Users"
-msgstr "Usuarios"
-
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
+msgstr ""
"_: Keep these entry short\n"
-"Networking"
-msgstr "Red"
+"Usuarios"
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
"_: Keep these entry short\n"
"Bootloader"
-msgstr "Arranque"
+msgstr ""
+"_: Keep these entry short\n"
+"Cargador de arranque"
#: steps_list.pm:40 steps_list.pm:41
#, c-format
msgid ""
"_: Keep these entry short\n"
"Configure X"
-msgstr "Configuración de X"
+msgstr ""
+"_: Keep these entry short\n"
+"Configurar X"
#: steps_list.pm:42
#, c-format
msgid ""
"_: Keep these entry short\n"
"Summary"
-msgstr "Resumen"
+msgstr ""
+"_: Keep these entry short\n"
+"Resumen"
#: steps_list.pm:44 steps_list.pm:45
#, c-format
msgid ""
"_: Keep these entry short\n"
"Services"
-msgstr "Servicios"
+msgstr ""
+"_: Keep these entry short\n"
+"Servicios"
#: steps_list.pm:46
#, c-format
msgid ""
"_: Keep these entry short\n"
"Updates"
-msgstr "Actualizaciones"
+msgstr ""
+"_: Keep these entry short\n"
+"Actualizaciones"
#: steps_list.pm:48
#, c-format
msgid ""
"_: Keep these entry short\n"
"Exit"
-msgstr "Salir"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Decidió actualizar su sistema a %s. Se detectó que Ud. tiene KDE 3.5\n"
-#~ "en su sistema. El instalador no puede preservar KDE 3.5 al actualizar.\n"
-#~ "Si Ud. decide continuar, KDE 4 reemplazará a KDE 3, y perderá la\n"
-#~ "configuración personalizada de KDE. \n"
-#~ "Para actualizar con KDE 3.5 y preservar su configuración, por favor\n"
-#~ "vuelva a iniciar su sistema y actualize utilizando el applet Mandriva "
-#~ "Update."
-
-#~ msgid "Proceed"
-#~ msgstr "Continuar"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "La recuperación de [%s] falló"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Descargando el archivo %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr ""
-#~ "No se soporta la acutalización de una distribución 32 bit a una 64 bit"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr ""
-#~ "No se soporta la actualización de una distribución 64 bit a una 32 bit"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Ha seleccionado los siguientes servidores: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Estos servidores se activan por defecto. No se les conocen problemas de\n"
-#~ "seguridad, pero se pueden encontrar problemas nuevos. En ese caso, debe "
-#~ "asegurarse de\n"
-#~ "actualizarlos tan pronto como sea posible.\n"
-#~ "\n"
-#~ "\n"
-#~ "¿Realmente desea instalar estos servidores?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Escritorio IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Contactando con el sitio de réplica para obtener la lista de los paquetes "
-#~ "disponibles..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "No se puede contactar al sitio de réplica %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Generar un disquete de instalación automática"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "La instalación automática puede automatizarse por completo si lo desea,\n"
-#~ "¡¡en ese caso se adueñará del disco rígido!!\n"
-#~ "(la intención de esto es instalarlo en otro ordenador).\n"
-#~ "\n"
-#~ "Puede preferir reproducir la instalación.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Reproducir"
-
-#~ msgid "Automated"
-#~ msgstr "Automatizada"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Guardar la selección de paquetes"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "¿Desea usar aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Ocurrió un error al instalar aboot, \n"
-#~ "¿desea forzar la instalación incluso si ello implicara la destrucción de "
-#~ "la primera partición?"
+msgstr ""
+"_: Keep these entry short\n"
+"Salida"
diff --git a/perl-install/install/share/po/et.po b/perl-install/install/share/po/et.po
index f90c7dcf3..89849da85 100644
--- a/perl-install/install/share/po/et.po
+++ b/perl-install/install/share/po/et.po
@@ -1,54 +1,83 @@
-# Translation of DrakX.po to Estonian.
-# Copyright (C) 2003 Free Software Foundation, Inc.
-# Riho Kurg <rx@linux.ee>, 1999-2003.
-# Marek Laane <bald@starman.ee>, 2002-2009.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Marek Laane <qiilaq69@gmail.com>, 2015
+# Marek Laane <qiilaq69@gmail.com>, 2015-2016
+# Marek Laane <qiilaq69@gmail.com>, 2018-2020
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-et\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-09-14 16:59+0200\n"
-"Last-Translator: Marek Laane <bald@starman.ee>\n"
-"Language-Team: Estonian <et@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2020-06-18 11:13+0000\n"
+"Last-Translator: Marek Laane <qiilaq69@gmail.com>\n"
+"Language-Team: Estonian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/et/)\n"
+"Language: et\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Kogu töölaud USB-pulgal"
+msgid "Join Us!"
+msgstr "Ühinege meiega!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "100%% vaba tarkvaraga Mandriva Linuxi distributsioon"
+msgid "Make it yours!"
+msgstr "Võtke see omaks!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Linuxi hõlpus tundmaõppimine Mandriva One abil"
+msgid "Your choice!"
+msgstr "Teie valik!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Täielik Mandriva Linuxi töölaud koos kasutajatoega"
+msgid "Office tools"
+msgstr "Kontoritöö vahendid"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: distributsioone igale maitsele ja kõigiks vajadusteks"
+msgid "Home entertainment"
+msgstr "Kodune meelelahutus"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Lastele"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Perele!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Arendajatele!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Täname Teid!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Tundke end vabalt!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Kas Teil on veel paigaldusandmekandjaid?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -61,93 +90,57 @@ msgstr ""
"\n"
"Kas Teil on veel paigaldusandmekandjaid?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Võrk (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Võrk (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Võrk (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Peegli URL?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL-i alguses peab seisma ftp:// või http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Mandriva Linuxi veebisaidilt saadaolevate peeglite nimekirja hankimine..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Ühenduse loomine Mandriva Linuxi veebisaidiga saadaolevate peeglite "
-"nimekirja hankimiseks nurjus"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Valige peegel, millelt lugeda pakettide nimekiri"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS-i seadistamine"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Palun andke NFS-andmekandja masinanimi ja kataloog"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Masinanimi puudub"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Kataloogi alguses peab olema \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS-i andmekandja masinanimi?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Kataloog"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Täiendav"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -156,23 +149,96 @@ msgstr ""
"Tarkvara nimekirja sisaldava faili leidmine sellelt peeglilt nurjus. "
"Kontrollige palun asukohta."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Tuumiktarkvara (core)"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Piirangutega tarkvara (tainted)"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Mittevaba tarkvara (non-free)"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Osa Teie masina riistvarast vajab mittevaba püsivara, et vaba tarkvara "
+"draiverid saaksid korralikult töötada."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Teil tuleks lubada \"%s\" kasutamine"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" sisaldab mitmesugust süsteemile vajalikku tarkvara ja rakendusi"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" sisaldab, nagu nimigi ütleb, mittevaba tarkvara.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Samuti sisaldab see püsivara, mida vajavad oma töös mõningad seadmed (nt. "
+"mõned ATI/AMD graafikakaardid, mõned võrgukaardid, mõned RAID-i kaardid jne.)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" sisaldab tarkvara, mida ei ole tarkvarapatentide tõttu võimalik "
+"kõigis riikides vabalt levitada."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "Samuti sisaldab see lisaomaduste huvides ümber ehitatud \"%s\"."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Siin saab soovi korral lubada rohkemate andmekandjate kasutamist."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "See andmekandja sisaldab \"%s\" uuendusi"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Juba paigaldatud pakettide tuvastamine..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Uuendatavate pakettide otsimine..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Pakettide eemaldamine enne uuendamist..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -185,87 +251,87 @@ msgstr ""
"\n"
"Kas tõesti eemaldada need paketid?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Viga faili %s lugemisel"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Järgmistele ketastele anti uus nimi:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (varem oli %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Võrk"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Palun valige andmekandja"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Fail on juba olemas. Kas kirjutada see üle?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Ligipääs keelatud"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Vigane NFS-i nimi"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Vigane andmekandja %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Ekraanipilte ei saa teha enne partitsioneerimist"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Ekraanipildid asuvad pärast paigaldamist asukohas %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Paigaldamine"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Seadistamine"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Vormindada tuleb ka %s"
@@ -289,22 +355,22 @@ msgstr "Võrgu aktiveerimine"
msgid "Bringing down the network"
msgstr "Võrgu seiskamine"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Palun oodake, tõmmatakse faili"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "andmekandja lisamine nurjus"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Mõningate tarkvarapakettide kopeerimine kettale edasiseks kasutamiseks"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Käib kopeerimine..."
@@ -334,7 +400,23 @@ msgstr "kena"
msgid "maybe"
msgstr "võib olla"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Paketi teabe hankimine XML-metaandmetest..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Andmekandjal \"%s\" puudub XML-info, paketil %s on ainult osaline tulemus"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Kirjeldus puudub"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -343,75 +425,76 @@ msgstr ""
"Mõningaid pakette, mida nõuab %s, ei saa paigaldada:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Tekkis viga:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Tekkis saatuslik viga: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Rohkem ei küsita"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d paigaldamistehingut nurjus"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Pakettide paigaldamine nurjus:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Tööjaam"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Kontori-tööjaam"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Kontoritöö programmid: tekstitöötlus (OpenOffice.org Writer, KWord), "
-"tabelitöötlus (OpenOffice.org Calc, KSpread), PDF-failide näitajad jne"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Kontoritöö programmid: tekstitöötlus (KWord, Abiword), tabelitöötlus "
-"(KSpread, Gnumeric), PDF-failide näitajad jne"
+"Kontoritöö programmid: tekstitöötlus (LibreOffice Writer, KWord), "
+"tabelitöötlus (LibreOffice Calc, KSpread), PDF-failide näitajad jne"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Mänguvahend"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Meelelahutus: põnevus-, laua-, strateegiamängud jne"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimeedia-tööjaam"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Heli ja video mängimine ja redigeerimine"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Interneti-tööjaam"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -420,271 +503,315 @@ msgstr ""
"Valik rakendusi e-posti ja uudiste lugemiseks (mutt, tin...) ning veebi "
"lehitsemiseks"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Võrguarvuti (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Mitme protokolli, sealhulgas ssh kliendid"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Tööriistad süsteemi lihtsamaks haldamiseks"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsoolitööriistad"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Redaktorid, shellid, terminalid, failihaldus"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Arendus"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C ja C++ arendusteegid, rakendused ja päisefailid"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentatsioon"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Raamatud ja HOWTO-d Linuxi ja vabavara kohta"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Kolmandate tootjate rakenduste toetus"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Veebiserver"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Grupitöö"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolabi server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Tulemüür/marsruuter"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "E-post/Uudistegrupid"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfixi e-posti server, Inn uudisteserver"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Kataloogiserver"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP-server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Nimeserver ja võrguteabeserver"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Faili- ja printserver"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS-server, Samba-server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Andmebaasid"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL- ja MySQL-andmebaasiserver"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL- ja MariaDB-andmebaasiserver"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Veeb/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache ja Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "E-post"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfixi e-posti server"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL- või MySQL-andmebaasiserver"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL- või MariaDB-andmebaasiserver"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Võrguserver"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS-, SMB-, SSH-server, puhverserver (proxy)"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Graafiline keskkond"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE tööjaam"
+msgid "Plasma Workstation"
+msgstr "Plasma tööjaam"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "K töölaua keskkond: graafiline töökeskkond ja palju rakendusi"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME tööjaam"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "Graafiline töökeskkond koos kasutajasõbralike rakendustega"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE töölaud"
+msgid "Xfce Workstation"
+msgstr "Xfce tööjaam"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Vähese koormusega ja kiire graafiline töökeskkond koos kasutajasõbralike "
-"rakenduste ja tööriistadega"
+"Kergemat sorti graafiline töökeskkond koos kasutajasõbralike rakendustega"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE tööjaam"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamoni tööjaam"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "GNOME-l põhinev graafiline keskkond"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt töölaud"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Kergemat sorti graafilise töökeskkonna uue põlvkonna Qt-versioon"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenmenti töölaud"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Kergemat sorti kiire graafiline töökeskkond andunud kasutajaskonnaga"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE töölaud"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Kergemat sorti kiire graafiline töökeskkond"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Muud graafilised töölauad"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "WindowMaker, Enlightenment, Fvwm jt"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm jt"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utiliidid"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH-server"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin võrguseadistusserver"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Võrguutiliidid ja võrgu jälgimine"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Jälgimistööriistad, protsesside jälgimine, tcpdump, nmap..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva nõustajad"
+msgid "Mageia Wizards"
+msgstr "Mageia nõustajad"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Serverite seadistamise nõustajad"
@@ -695,10 +822,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Tekkis viga, mida programm ei suuda ise klaarida.\n"
+"Tekkis tõrge, mida programm ei suuda ise klaarida.\n"
"Jätkake omal vastutusel."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -717,251 +844,255 @@ msgstr "Järgmine samm: %s\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linuxi paigaldamine %s"
+msgid "%s Installation %s"
+msgstr "%s paigaldamine: %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> liigub elementide vahel"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorgi server käivitub aeglaselt. Palun oodake..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Teie süsteemil napib ressurse ja paigaldamine ei pruugi õnnestuda.\n"
-"Kui nii juhtub, proovige palun tekstipõhist paigaldamist. Selleks\n"
-"vajutage CD-lt laadimisel F1 ja sisestage \"text\""
+"Teie süsteemil napib ressursse ja %s paigaldamine ei pruugi õnnestuda.\n"
+"Kui nii juhtub, proovige palun tekstipõhist paigaldamist.\n"
+"Selleks vajutage CD-lt laadimisel F1 ja sisestage \"text\"."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Mandriva KDE töölaua paigaldamine"
+msgid "Media Selection"
+msgstr "Andmekandjate valik"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Mandriva GNOME töölaua paigaldamine"
+msgid "Install %s Plasma Desktop"
+msgstr "%s Plasma töölaua paigaldamine"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "%s GNOME töölaua paigaldamine"
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Kohandatud paigaldamine"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE töölaud"
+msgid "Plasma Desktop"
+msgstr "Plasma töölaud"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME töölaud"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Kohandatud töölaud"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Siin näeb '%s' töölaua eelvaatlust."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Klõpsake piltidel suurema eelvaatluse nägemiseks"
+msgstr "Suurema eelvaatluse nägemiseks klõpsake piltidel."
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Paketigruppide valik"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Valik paketthaaval"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Suurus kokku: %d / %d MB"
+msgid "Unselect All"
+msgstr "Tühista kõigi valimine"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Vigane pakett"
+msgid "Total size: %d / %d MB"
+msgstr "Suurus kokku: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versioon: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Suurus: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Tähtsus: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Seda paketti ei saa valida/valimata jätta"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "puuduva %s tõttu"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "rahuldamata %s tõttu"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr "püüan välja pakkuda %s"
+msgstr "püüdes välja pakkuda %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "säilitamaks %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Seda paketti ei saa valida, sest paigaldamiseks napib kettaruumi"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Paigaldamiseks on valitud järgmised paketid"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Eemaldamiseks on valitud järgmised paketid"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "See pakett on kohustuslik"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "See pakett on juba paigaldatud"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Selle paketi peate valima, sest selle uuendamine on kohustuslik"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Automaatselt valitud pakettide näitamine"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Paigalda"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Valiku laadimine/salvestamine"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Paketivaliku uuendamine"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Hierarhilise ja ühetasandilise paketiloendi vahel lülitamine"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimaalne paigaldus"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Tarkvarahaldur"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Valige paketid, mida soovite paigaldada"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Paigaldamine"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Üksikasjadeta"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Aega jäänud:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
-msgstr "(oletus...)"
+msgstr "(arvutatakse...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pakett"
msgstr[1] "%d paketti"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Kokkuvõte"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Seadista"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "seadistamata"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Andmekandjate valik"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -970,84 +1101,84 @@ msgstr ""
"Leiti järgmised paigaldusandmekandjad.\n"
"Kui Te ei soovi mõnda neist kasutada, eemaldage need valikust."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Teil on võimalik kopeerida CD-de sisu enne paigaldamist kõvakettale.\n"
"Seejärel jätkatakse paigaldamist kõvakettalt ning kogu tarkvara on seal "
"kättesaadav ka pärast süsteemi paigaldamist."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopeeri kõik CD-d"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Tekkis viga"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Palun valige klaviatuuriasetus"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "See on saadaolevate klaviatuuriasetuste täielik nimekiri:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Paigaldamine/Uuendamine"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Kas see on paigaldamine või uuendamine?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Paigaldamine"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s uuendamine"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s krüptovõti"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Paigaldamisest loobumine, süsteemi taaskäivitamine"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Uus paigaldus"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Varasema paigalduse uuendamine (ei ole soovitatav)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1055,7 +1186,7 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Paigaldusprogramm leidis, et Teie olemasolevat Mandriva Linuxi süsteemi\n"
+"Paigaldusprogramm leidis, et Teie olemasolevat Mageia Linuxi süsteemi\n"
"ei saa turvaliselt uuendada versioonile %s.\n"
"\n"
"Soovitatav on valida uus paigaldus, mis asendab senise.\n"
@@ -1063,36 +1194,17 @@ msgstr ""
"Hoiatus: Te peaksite varundama kõik oma isiklikud andmed,\n"
"enne kui valite võimaluse \"Uus paigaldus\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "IDE seadistamine"
+msgid "Configuring CD/DVD"
+msgstr "CD/DVD seadistamine"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Ruumi 1MB-se alglaadimisala loomiseks napib! Paigaldamine jätkub, kuid "
-"süsteemi alglaadimiseks tuleb Teil luua DiskDrake abil alglaadimisala."
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Teil tuleb luua PPC PReP Boot alglaadimisala! Paigaldamine jätkub, kuid "
-"süsteemi alglaadimiseks tuleb Teil luua DiskDrake abil alglaadimisala."
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1105,20 +1217,20 @@ msgstr ""
"Palun sisestage CD nimega \"%s\" CD-seadmesse ja klõpsake nupule \"Olgu\".\n"
"Kui Teil sellist ei ole, klõpsake nupule \"Loobu\"."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Saadaolevate pakettide otsimine..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Teie süsteemis ei jagu ruumi paigaldamiseks ega uuendamiseks (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1127,52 +1239,52 @@ msgstr ""
"Valige palun paketivaliku laadimine või salvestamine.\n"
"Vorming on sama, mis automaatpaigaldusega loodud failide puhul."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Laadi"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Salvesta"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Vigane fail"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Töölaua valik"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "Siin saab valida oma arvuti töölauaprofiili: "
+msgstr "Siin saab valida oma arvuti töölauaprofiili."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Valiku suurus ületab saadaolevat kettaruumi"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Paigaldamise tüüp"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1181,87 +1293,130 @@ msgstr ""
"Te ei valinud ühtegi paketigruppi.\n"
"Palun valige meelepärane minimaalne paigaldus:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X'iga"
-#: steps_interactive.pm:581
+#: steps_interactive.pm:583
#, c-format
-msgid "Install suggested packages"
-msgstr "Pakutavate pakettide paigaldamine"
+msgid "Install recommended packages"
+msgstr "Soovitatavate pakettide paigaldamine"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Baasdokumentatsiooniga (soovitatav!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "Tõeliselt minimaalne (eriti just ilma urpmi-ta)"
+msgstr "Tõeliselt minimaalne (isegi urpmi-t ei ole)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Uuendamiseks valmistumine..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Paigaldamiseks valmistumine"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Paketi %s paigaldamine"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Pakettide tellimisel tekkis viga:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Kas ikkagi jätkata?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Proovi uuesti"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Jäta pakett vahele"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Jäta kõik andmekandja \"%s\" paketid vahele"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Tagasi andmekandja ja paketivaliku juurde"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Paketi %s paigaldamisel tekkis viga."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Paigaldamisjärgne seadistamine"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Palun kontrollige, et uuenduste andmekandja on seadmes %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Uuendused"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Nüüd on Teil võimalus määrata võrguandmekandjad."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "See lubab paigaldada turbeuuendusi."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Nende andmekandjate määramiseks peab töötama\n"
+"internetiühendus.\n"
+"\n"
+"Kas soovite määrata uuendamisandmekandjad?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Paigaldamiseks on valitud järgmised paketid"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Kas proovida uuesti?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Andmekandja lisamine nurjus"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1274,138 +1429,106 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
"Teil on nüüd võimalus alla laadida uuendatud pakette. Need on välja lastud\n"
-"pärast Mandriva Linuxi distributsiooni ilmumist ja võivad sisaldada vigade\n"
-"parandusi või turvauuendusi.\n"
+"pärast Mageia distributsiooni ilmumist ja võivad sisaldada vigade\n"
+"parandusi või turbeuuendusi.\n"
"\n"
"Allalaadimiseks peab Teil olema töötav internetiühendus.\n"
"\n"
"Kas soovite uuendusi paigaldada?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s asukohas %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Riistvara"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Helikaart"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Kas Teil on ISA helikaart?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Helikaardi seadistamiseks käivitage pärast paigaldamist \"alsaconf\" või "
-"\"sndconfig\""
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Helikaarti ei leitud. Proovige see leida pärast paigaldamist \"harddrake\" "
-"abil"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Graafiline kasutajaliides"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Kohtvõrk ja internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Puhverserverid"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "seadistatud"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
-msgstr "Turvatase"
+msgstr "Turbetase"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Tulemüür"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktiveeritud"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "keelatud"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Te ei ole seadistanud X'i. Kas Te tõesti ei taha seda teha?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Alglaaduri ettevalmistamine..."
+msgid "Preparing initial startup program..."
+msgstr "Alglaadimisprogrammi ettevalmistamine..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Varuge kannatust, see võib võtta veidi aega..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Paistab, et Teil on OldWorld-i või hoopis tundmatu masin, igatahes alglaadur "
-"yaboot siin ei tööta. Paigaldamine küll jätkub, aga masina käivitamiseks "
-"tuleb Teil kasutada BootX'i või mingit muud nippi. Kerneli argument "
-"juurfailisüsteemi jaoks on root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"Sellel turvatasemel pääseb Windowsi partitsioonil asuvatele failidele ligi "
+"Sellel turbetasemel pääseb Windowsi partitsioonil asuvatele failidele ligi "
"ainult administraator."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Pange palun tühi diskett seadmesse %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Kiirpaigaldusdisketi loomine..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1416,15 +1539,15 @@ msgstr ""
"\n"
"Kas soovite tõesti praegu lõpetada ja väljuda?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Õnnitleme!"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
-msgstr "Taaskäivitus"
+msgstr "Taaskäivita"
#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
#: steps_list.pm:16
@@ -1516,13 +1639,6 @@ msgid ""
"Users"
msgstr "Kasutajad"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Võrk"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1563,155 +1679,28 @@ msgstr "Uuendused"
msgid ""
"_: Keep these entry short\n"
"Exit"
-msgstr "Välju"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Otsustasite uuendada oma süsteemi %s peale. Teie süsteemis leiti KDE "
-#~ "3.5.\n"
-#~ "Paigaldusprogramm ei saa uuendamisel KDE 3.5 säilitada. Kui soovite "
-#~ "jätkata,\n"
-#~ "asendatakse KDE 3 KDE 4-ga ja Te kaotate oma isiklikud KDE seadistused.\n"
-#~ "Kui soovite uuendada nii, et KDE 3.5 ja Teie isiklikud seadistused "
-#~ "säiliks,\n"
-#~ "käivitage oma süsteem uuesti ja sooritage uuendamine Mandriva "
-#~ "uuendusapleti abil."
-
-#~ msgid "Proceed"
-#~ msgstr "Jätka"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "[%s] tõmbamine nurjus"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Faili %s allalaadimine..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr ""
-#~ "Uuendamine 32-bitiselt distributsioonilt 64-bitisele ei ole toetatud"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr ""
-#~ "Uuendamine 64-bitiselt distributsioonilt 32-bitisele ei ole toetatud"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Olete valinud järgmise(d) serveri(d): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Need serverid aktiveeritakse vaikimisi. Pole küll teada, et neil oleks\n"
-#~ "turvaprobleeme, aga nende leidmine tulevikus pole sugugi välistatud.\n"
-#~ "Kui peaks nii minema, kontrollige, et suudate uuenduse võimalikult\n"
-#~ "ruttu hankida.\n"
-#~ "\n"
-#~ "\n"
-#~ "Kas tõesti paigaldada need serverid?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWM töölaud"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Peeglilt pakettide nimekirja lugemine..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Ühendust peegliga %s ei saadud"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Loo kiirpaigaldusdiskett"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Automaatne paigaldamine võib olla ka sedavõrd tegija,\n"
-#~ "et kasutab ära kogu kõvaketta!\n"
-#~ "\n"
-#~ "Võite valida ka lihtsalt paigaldamise kordamise.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Kordamine"
+msgstr "Väljumine"
-#~ msgid "Automated"
-#~ msgstr "Automaatne"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Salvesta paketivalik"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Peegli URL?"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Kas soovite kasutada aboot-i?"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL-i alguses peab seisma ftp:// või http://"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Viga aboot-i paigaldamisel, \n"
-#~ "kas sundida peale, riskides esimese partitsiooni hävinguga?"
-
-#~ msgid "All"
-#~ msgstr "Kõik"
-
-#~ msgid "TV card"
-#~ msgstr "TV kaart"
+#~ "Ühendumine %s veebileheküljega saadaolevate peeglite nimekirja "
+#~ "hankimiseks..."
-#~ msgid "Boot"
-#~ msgstr "Alglaadimine"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Autentimisviis"
-
-#~ msgid "Language"
-#~ msgstr "Keel"
-
-#~ msgid "License"
-#~ msgstr "Litsents"
-
-#~ msgid "Installation class"
-#~ msgstr "Paigaldamismeetod"
-
-#~ msgid "Formatting"
-#~ msgstr "Vormindamine"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Pakettide valik"
-
-#~ msgid "Users"
-#~ msgstr "Kasutajad"
-
-#~ msgid "Networking"
-#~ msgstr "Võrk"
-
-#~ msgid "Configure X"
-#~ msgstr "X'i seadistamine"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Ligipääs Teie kernelile vastavatele kerneli moodulitele ebaõnnestus "
-#~ "(puudub fail %s), mis enamasti tähendab, et Teie alglaadimisdiskett ei "
-#~ "ole sünkroonis paigaldus-andmekandjaga (palun looge uus "
-#~ "alglaadimisdiskett)"
+#~ "Ühendumine %s veebileheküljega saadaolevate peeglite nimekirja "
+#~ "hankimiseks nurjus"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Valige peegel, millelt lugeda pakettide nimekiri"
diff --git a/perl-install/install/share/po/eu.po b/perl-install/install/share/po/eu.po
index 1e80fb0b6..46abe185a 100644
--- a/perl-install/install/share/po/eu.po
+++ b/perl-install/install/share/po/eu.po
@@ -1,55 +1,85 @@
-# translation of DrakX.po to Euskara
-# EUSKARA: Mandriva Linux translation.
-# Copyright (C) 2002,2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Iñigo Salvador Azurmendi <xalba@euskalnet.net>, 2001-2002,2003,2004, 2005, 2006, 2007, 2008, 2009.
-# Hizkuntza Politikarako Sailburuordetza <hizpol@ej-gv.es>, 2004.
+# Translators:
+# Egoitz Rodriguez <egoitzro@gmail.com>, 2014
+# Egoitz Rodriguez <egoitzro@gmail.com>, 2014
+# Egoitz Rodriguez <egoitzro@gmail.com>, 2014-2016
+# Hizkuntza Politikarako Sailburuordetza <hizpol@ej-gv.es>, 2004
+# Iñigo Salvador Azurmendi <xalba@euskalnet.net>, 2005-2009
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-14 19:32+0200\n"
-"Last-Translator: Iñigo Salvador Azurmendi <xalba@euskalnet.net>\n"
-"Language-Team: Basque <kde-i18n-doc@kde.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2020-06-18 00:30+0000\n"
+"Last-Translator: Transifex Bot <>\n"
+"Language-Team: Basque (http://www.transifex.com/MageiaLinux/mageia/language/"
+"eu/)\n"
+"Language: eu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 0.3\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Zure idaztegia USB giltza batean"
+msgid "Join Us!"
+msgstr "Elkartu gurekin!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "100%% iturburu irekia duen Mandriva Linux banaketa"
+msgid "Make it yours!"
+msgstr "Zurea egin ezazu!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Esploratu Linux era errazean Mandriva One-kin"
+msgid "Your choice!"
+msgstr "Zure aukera!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Mandriva Linux idaztegi oso bat, eukarriarekin"
+msgid "Office tools"
+msgstr "Bulegoko tresnak"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: guztientzako beharrak asetzeko banaketak"
+msgid "Home entertainment"
+msgstr "Etxe entretenimendua"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Umeentzat"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Familiarentzat!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Garatzaileentzat!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Eskerrik asko!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Libre izan!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Baduzu beste euskarri osagarririk?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -62,117 +92,154 @@ msgstr ""
"\n"
"Badaukazu konfiguratu beharreko gainerako instalazio euskarririk?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Sarea (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Sarea (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Sarea (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Ispiluaren URL?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL-ak ftp:// edo http:// aurretik izan behar du"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Mandriva Linux web gunearekin konektatzen, ispilu erabilgarrien zerrenda "
-"lortzeko..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Mandriva Linux web gunearekin eskuragarri dauden ispiluen zerrenda lortzeko "
-"harremanak huts egin du"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Aukeratu ispilu bat paketeak bertatik hartzeko"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS ezarpena"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Mesedez sartu zure NFS euskarriaren ostalari izena eta direktorioa"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Ostalari izena falta da"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Direktorioa honekin \"/\" hasi behar da"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS muntaiaren ostalari izena?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Direktorioa"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Osagarria"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr "Ezin aurkitu hdlist fitxategia ispilu honetan"
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Zure makinako hardwareren batek firmwares ez libre batzuk behar ditu lan "
+"egiteko software gidari libreen ordez."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "\"%s\" gaitu dezakezu"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "sistemak eta bere aplikazioak askotariko \"%s\" piezak dauzka"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "%s\"-k software ez librea dauka.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Nolabaiteko tresnek maneiatu behar izandako firmwareak dauzka (adib.: ATI/"
+"AMD-etako grafikoko txartel batzuk, sare-txartel batzuk, RAID txartel "
+"batzuk, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" herrialde bakoitzean software-patenteengatik banatu ezin duten "
+"softwarea dauka."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "\"%s\"-ren softwarea er dauka, birsortzeko gaitasun osagarriekin."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Hemen hedabide gehiago gaitu dezakezu nahi baduzu."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Hedabide honek paketea \"%s\" hedabidetik eguneratzea ematen du"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Instalatutako paketeak bilatzen..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Bertsio berritzeko paketeak bilatzen..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Paketeak ezabatzen bertsioa berritu aurretik..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -185,88 +252,88 @@ msgstr ""
"\n"
"Ziur zaude pakete hauek kendu nahi dituzula?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Errorea %s fitxategia irakurtzean"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Ondoko diskoa(k) berrizendatu egin d(ir)a:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (lehenago %s deitua)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Sarea"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Aukeratu euskarri bat mesedez"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Fitxategia badago lehendik ere. Gainidatzi?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Baimena ukatuta"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "NFS izen okerra"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "%s okerreko euskarria"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Ezin da pantaila-argazkirik egin partizioak egin aurretik"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
"%s(e)n instalazioa egindakoan pantaila-argazkiak erabilgarri egongo dira"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalaketa"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfigurazioa"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "%s ere formateatu behar duzu"
@@ -290,22 +357,22 @@ msgstr "Sarea irekitzen"
msgid "Bringing down the network"
msgstr "Sarea ixten"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Itxoin mesedez, fitxategia eskuratzen"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "euskarria ezin erantsi"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Zenbait pakete diskoetan kopiatzen etorkizunean erabiltzeko"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopiatzen ari da"
@@ -335,7 +402,24 @@ msgstr "baliagarria"
msgid "maybe"
msgstr "beharbada"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "XML meta-datuetatik paketeen informazioa eskuratzen ..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Ez dago \"%s\" euskarriarentzako xml info, soilik emaitza partziala %s "
+"paketearentzako"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Azalpenik ez"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -344,76 +428,77 @@ msgstr ""
"%s-k eskatutako pakete batzuk ezin dira instalatu:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Akats bat gertatu da:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Akats larria gertatu da: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Ez galdetu beriro"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d instaketa eragiketek huts egin dute"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Paketeen instalaketak huts egin du:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Lanpostua"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Bulegoko lanpostua"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Bulego programak: testu-prozetzaileak (OpenOffice.org Writer, Kword), "
-"kalkulu-orriak (OpenOffice.org Calc, Kspread), PDF ikustaileak, etab"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Bulego-lanetako programak: testu prozesatzaileak (kword, abiword), kalkulu "
-"orriak (kspread, gnumeric), pdf erakusleak, etab."
+"Bulego programak: testu-prozetzaileak (LibreOffice Writer, Kword), kalkulu-"
+"orriak (LibreOffice Calc, Kspread), PDF ikustaileak, etab"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Jokoak"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
"Denbora-pasako programak: makina-jokoak, taula-jokoak, estrategiakoak, etab."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Soinua eta bideoa jotzeko/editatzeko programak"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -422,193 +507,193 @@ msgstr ""
"Posta eta berri-taldeetako mezuak (mutt, tin...) irakurtzeko eta bidaltzeko "
"eta Interneten nabigatzeko tresna-multzoa"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Sare-ordenagailua (bezeroa)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Hainbat protokolotako bezeroak, ssh-renak barne"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Zure ordenagailuaren konfigurazioa errazteko tresnak"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Kontsola-tresnak"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editoreak, shell-ak, fitxategi-tresnak, terminalak"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Garapena"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C eta C++ garapen-liburutegiak, programak eta fitxategiak"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentazioa"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Linux eta Software libreari buruzko liburuak eta azalpenak"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Beste batzuek egindako aplikazioen euskarria"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Web zerbitzaria"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Taldelanerako Aplikazioak"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Zerbitzaria"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Suebakia/Bideratzailea"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Interneteko atebidea"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Posta/Berriak"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix posta zerbitzaria, Inn berri zerbitzaria"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Direktorio Zerbitzara"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP Zerbitzaria"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Domeinu Izen eta Sare Informazio Zerbitzaria"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Fitxategi eta Inprimaketa Elkarbanatzeko Zerbitzaria"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS zerbitzaria, Samba zerbitzaria"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Datu-basea"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL eta MySQL Datubase Zerbitzaria"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL eta MariaDB Datubase Zerbitzaria"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Posta"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix posta-zerbitzaria"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL edo MySQL datu-baseen zerbitzaria"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL edo MariaDB datu-baseen zerbitzaria"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Sare-zerbitzaria"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS zerbitzaria, SMB zerbitzaria, Proxy zerbitzaria, ssh zerbitzaria"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Ingurune grafikoa"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE lanpostua"
+msgid "Plasma Workstation"
+msgstr "Plasma Lanpostua"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -616,12 +701,12 @@ msgid ""
msgstr ""
"K Desktop Environment, hainbat tresna dituen oinarrizko ingurune grafikoa"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME lanpostua"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -630,66 +715,111 @@ msgstr ""
"Aplikazio-multzo eta mahaigaineko tresna lagungarri eta atseginak dituen "
"ingurune grafikoa"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE Idaztegia"
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Ingurune grafiko arin eta azkarra aplikazio multzo eta mahaigaineko tresna "
-"erabilerrazak dituena"
+"Aplikazioen eta mahaigain-tresnen sorta erabilerrazarekiko ingurumen argitsu "
+"grafiko bat"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE lanpostua"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon Lanpostua"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "GNOMEn oinarritutako ingurune grafikoa"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt Mahaigaina"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Mahaigaineko ingurune arinaren hurrengo belaunaldiko QT portua"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Ingurune grafiko arin eta azkarra bat eskainita"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE Idaztegia"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Ingurune grafiko arin bat"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Beste mahaigain grafiko batzuk"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
msgstr "Window Maker, Enlightenment, Fvwm, etab."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilitateak"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH zerbitzaria"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin Urruneko Konfigurazio Zerbitzaria"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Sare Utilitateak/Gainbegiraketa"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Gainbegiraketa tresnak, prozesuen kotabilitatea, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Morroiak"
+msgid "Mageia Wizards"
+msgstr "Mageia Morroiak"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Zerbitzaria konfiguratzeko morroiak"
@@ -703,7 +833,7 @@ msgstr ""
"Errore bat gertatu da, baina ez dakit behar bezala maneiatzen.\n"
"Jarraitu zure ardurapean."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -723,251 +853,255 @@ msgstr "`%s'. urratsean sartzen\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux %s instalazioa"
+msgid "%s Installation %s"
+msgstr "%s %s instalazioa"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> elementuz aldatzeko"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg zerbitzariaren hasiera motela da. Itxoin mesedez..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Sistemak baliabide gutxi ditu. Arazoak izan ditzakezu Mandriva Linux \n"
+"Sistemak baliabide gutxi ditu. Arazoak izan ditzakezu %s \n"
"instalatzeko. Horrela bada, testu-instalazioa egiten saia zaitezke. \n"
"Horretarako, sakatu `F1' CD-ROMetik abiaraztean, eta idatzi `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Instalatu Mandriva KDE Idaztegia"
+msgid "Media Selection"
+msgstr "Euskarri hautaketa"
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr "Instalatu %s Plasma Idaztegia"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Instalatu Mandriva GNOME Idaztegia"
+msgid "Install %s GNOME Desktop"
+msgstr "Instalatu %s GNOME Idaztegia"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Instalaketa pertsonalizatua"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE Idaztegia"
+msgid "Plasma Desktop"
+msgstr "Plasma Mahaigaina"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME Idaztegia"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Idaztegia pertsonalizatua"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Hemen duzu '%s' idaztegiaren aurrebista bat."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Klikatu irudietan aurrebista haundiago ikusteko"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Pakete-taldearen hautapena"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Pakete indibidualen hautapena"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Guztizko tamaina: %d / %d MB"
+msgid "Unselect All"
+msgstr "Desautatutako guztiak"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pakete txarra"
+msgid "Total size: %d / %d MB"
+msgstr "Guztizko tamaina: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Bertsioa: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Tamaina: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Garrantzia: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Ezin duzu pakete hau hautatu/desautatu"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s falta delako"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "%s bete gabe dagoelako"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%s jaso nahian"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s gordetzeko"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Ezin duzu pakete hori hautatu: ez dago instalatzeko lekurik"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Ondorengo pakete hauek instalatuko dira"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Ondorengo pakete hauek kenduko dira"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Nahitaezko paketea da, ezin da desautatu"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Ezin duzu pakete hau desautatu. Dagoeneko instalatuta dago"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Ezin duzu pakete hau desautatu. Bertsio berritu egin behar da"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Erakutsi automatikoki hautatutako paketeak"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalatu"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Hautapena Zamatu/Gorde"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Pakete-hautapena eguneratzen"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Gutxieneko instalazioa"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Software kudeaketa"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Aukeratu instalatu nahi dituzun paketeak"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instalatzen"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
-msgstr "Xehetasunik ez"
+msgstr "Xehetasunik gabe"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Geratzen den denbora:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(Kalkulatzen...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "pakete %d"
msgstr[1] "%d pakete"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Laburpena"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfiguratu"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "konfiguratu gabe"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Euskarri hautaketa"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -976,84 +1110,84 @@ msgstr ""
"Ondorengo instalazio euskarriak aurkitu dira.\n"
"Horietako batzuk erabiltzerik nahi ez baduzu, haututik kendu ditzakezu orain."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Instalazio aurretik CD-en edukia disko zurrunera kopiatzeko aukera daukazu.\n"
+"Instalazio aurretik CD-en edukia disko gogorrera kopiatzeko aukera daukazu.\n"
"Disko zurrunetik jarraituko du orduan eta paketeak eskuragarri egongo dira "
"sistema osorik instalatu ondoren."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopiatu CD osoak"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Errore bat izan da"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Aukeratu zure teklatu-diseinua"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Hemen duzu eskuragarri dauden teklatuen zerrenda osoa:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalaketa/Bertsio berritzea"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Instalaketa edo bertsio berritzea da hau?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instalaketa"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s bertsio berritu"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s(r)en enkriptatze-gakoa"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Instalaketa galarazi, sistema berrabiatu"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Instalaketa berria"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Aurreko instalaketa bertsio berritu (ez da gomendatzen)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1061,46 +1195,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Instalatzaileak detektatu du instalatuta duzun Mandriva Linux sistema ezin\n"
-"dela era seguruan %s-ra bertsio berritu.\n"
+"Instalatzaileak detektatu du instalatuta duzun Linux sistema ezin\n"
+"dela era seguruan %s-ren bertsiora berritu.\n"
"\n"
-"Zure aurreko sistema ordezkatuko duen instalaketa berria gomendatzen da.\n"
+"Zure aurreko sistema ordezkatuko duen instalazio berria gomendatzen da.\n"
"\n"
"Erne: zure datu pertsonalen babeskopia egin behar zenuke \"Instalaketa\n"
-"Berria\" aukeratu aurretik\"."
+"Berria\" aukeratu aurretik."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "IDE konfiguratzen"
+msgid "Configuring CD/DVD"
+msgstr "CD/DVD Konfiguratzen"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Ez dago lekurik 1 MBeko bootstrap-a sortzeko! Instalazioak jarraituko du, "
-"baina sistema abiarazteko, bootstrap partizioa sortu beharko duzu DiskDrake-"
-"rekin"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"PPC PReP abiapen bootstrap bat sortu beharko duzu! Instalaketak aurrera "
-"jarraituko du, baino zure sistema abiarazteko, bootstrap partizioa sortu "
-"beharko duzu DiskDrake erabiliz"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1114,21 +1227,21 @@ msgstr ""
"'Ados'.\n"
"Ez badaukazu, sakatu 'Utzi' CD-ROM horretatik instalazioa egin ez dezan."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Pakete erabilgarriak bilatzen..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Zure sistemak ez dauka instalatu edo bertsio berritzeko behar duen lekua (%d "
"MB > %d MB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1137,52 +1250,52 @@ msgstr ""
"Mesedez aukeratu pakete aukeraketa zamatu edo gorde.\n"
"Formatua instalazio automatikoarekin sortutako fitxategiaren berdina da."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Karga"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Gorde"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Okerreko fitxategia"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Idaztegi hautaketa"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Zure lanpostuaren idaztegi profila hautatu dezakezu."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Hautatutako tamaina handiagoa da leku erabilgarria baino"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Instalazio-mota"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1191,87 +1304,129 @@ msgstr ""
"Ez duzu talde edo paketerik hautatuta\n"
"Nahi duzun gutxieneko instalazioa hautatu behar duzu:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
-msgstr "Xrekin"
+msgstr "X-ekin"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s paketea instalatzen"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Gomendaturiko paketeak instalatu"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Oinarrizko dokumentazioarekin (gomendatua)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Instalazio minimo-minimoa (batez ere, urpmi gabe)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Berritzea prestatzen ..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Instalazioa prestatzen"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s paketea instalatzen"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Errore bat izan da paketeak ordenatzean:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Jarraitu hala ere?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Berriro saiatu"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Pakete hau utzi"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "\"%s\" euskarriko pakete guztiak utzi"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Jo atzera euskarri eta pakete hautapenera"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Akatsa gertatu da %s paketea instalatzerakoan."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Instalazio-ondorengo konfigurazioa"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Mesedez egiaztatu Moduluak Eguneratzeko euskarria %s unitatean dagoela"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Eguneraketak"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Orain aukera duzu lerroko baliabideak konfiguratzeko."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Hau segurtasun eguneraketak instalatzeko ahalbidetzen du."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Baliabideak konfiguratzeko, Interneteko konexioa izan behar izango duzu.\n"
+"\n"
+"Konfiguratu nahi dituzu eguneratze baliabideak?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Ondorengo pakete hauek instalatuko dira"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Berriz saiatu?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Ezin izan da euskarria gehitu"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1284,7 +1439,7 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
"Pakete eguneratuak deskarga ditzakezu orain. Pakete hauek\n"
-"eguneratu egin dira banaketaren ondoren. Beharbada\n"
+"eguneratu egin dira banaketa askatu ondoren. Beharbada\n"
"segurtasun edo akatsen konponketak izango dituzte.\n"
"\n"
"Pakete hauek deskargatzeko, Interneteko konexioa izan behar\n"
@@ -1292,112 +1447,80 @@ msgstr ""
"\n"
"Eguneratzeak instalatu nahi dituzu?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s - %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardwarea"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Soinu-txartela"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "ISA soinu-txartela duzu?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Instalazioa egindakoan, exekutatu \"alsaconf\" edo \"sndconfig\" soinu-"
-"txartela konfiguratzeko"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Ez da detektatu soinu-txartelik. Probatu \"harddrake\" instalazioa egin "
-"ondoren"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interfaze grafikoa"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Sarea eta Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxy-ak"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "konfiguratuta"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Segurtasun-maila"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Suebakia"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktibatuta"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "desgaituta"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "X ez duzu konfiguratu. Ziur zaude hori dela egin nahi duzuna?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Abioko kargatzailea prestatzen..."
+msgid "Preparing initial startup program..."
+msgstr "Programaren hasierako abioa prestatzen ..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Pazientzia izan, pixka baterako dauka..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"OldWorld edo makina ezezagun bat daukazula dirudi, yaboot abiozamatzaileak "
-"ez du zurean lanegingo. Instalaketak aurrera jarraituko du, baino BootX edo "
-"abiatzeko beste bide bat erabili beharko duzu zure makina abiarazteko. Erro "
-"fitxategi sistemarentzako nukleo argumentua honakoa da: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1406,17 +1529,17 @@ msgstr ""
"Segurtasun-maila honetan, administratzaileak soilik du Windows partizioko "
"fitxategiak atzitzeko eskubidea."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Sartu diskete huts bat %s unitatean"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Auto-instalazioko disketea sortzen..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1427,12 +1550,12 @@ msgstr ""
"\n"
"Ziur zaude orain irten nahi duzula?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Zorionak"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Berrabiarazi"
@@ -1469,7 +1592,7 @@ msgstr "Sagua"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Disko zurrunen detekzioa"
+msgstr "Disko gogorren detekzioa"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
@@ -1527,13 +1650,6 @@ msgid ""
"Users"
msgstr "Erabiltzaileak"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Saregintza"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1576,65 +1692,25 @@ msgid ""
"Exit"
msgstr "Irten"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Zure sistema %s-ra bertsio berritzea erabaki duzu. KDE 3.5 detektatu da "
-#~ "zure\n"
-#~ "sisteman. Instalatzaile honek ezin du KDE 3.5 mantendu bertsio "
-#~ "berritzean. Jarraitzea erabakitzen baduzu, \n"
-#~ "KDE 4-k KDE 3 ordezkatuko du, eta zure KDE konfiguraketa ezarpen "
-#~ "pertsonalak galduko dituzu.\n"
-#~ "KDE 3.5-ekin bertsio berritu eta zure ezarpen pertsonalak mantentzeko, \n"
-#~ "berrabiatu zure sistema eta bertsio berritu Mandrivaren eguneraketa "
-#~ "appleta erabiliz."
-
-#~ msgid "Proceed"
-#~ msgstr "Jarratiu"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "[%s]-ren berreskuratzeak huts egin du"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "%s fitxategiak jaisten..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr ""
-#~ "32bit-eko banaketa batetik 64bit-ekora bertsio berritzea ez da onartzen"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Ispiluaren URL?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL-ak ftp:// edo http:// aurretik izan behar du"
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "64bit-eko banaketa batetik 32bit-ekora bertsio berritzea ez da onartzen"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
+#~ "%s web gunearekin konektatzen, ispilu erabilgarrien zerrenda lortzeko..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Zerbitzari hau(ek) hautatu d(it)uzu: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Zerbitzari horiek lehenespenez aktibatzen dira. Ez dute segurtasun-"
-#~ "arazo \n"
-#~ "ezagunik, baina berriren bat ager liteke. Horrelakorik gertatuz gero,\n"
-#~ "bertsioa lehenbailehen berritu behar duzu.\n"
-#~ "\n"
-#~ "\n"
-#~ "Ziur zaude zerbitzari hauek instalatu nahi dituzula?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm Idaztegia"
+#~ "%s web gunearekin eskuragarri dauden ispiluen zerrenda lortzeko "
+#~ "harremanak huts egin du"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Aukeratu ispilu bat paketeak bertatik hartzeko"
diff --git a/perl-install/install/share/po/fa.po b/perl-install/install/share/po/fa.po
index 94b2cbcde..95a458a7d 100644
--- a/perl-install/install/share/po/fa.po
+++ b/perl-install/install/share/po/fa.po
@@ -1,53 +1,81 @@
-# translation of DrakX-fa.po to Persian
-# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
-# Abbas Izad <abbasizad@hotmail.com>, 2003, 2004, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Abbas Izad <abbasizad@hotmail.com>, 2003-2005
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-fa\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-02-26 06:31+0100\n"
-"Last-Translator: Abbas Izad <abbasizad@hotmail.com>\n"
-"Language-Team: Persian\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Persian (http://www.transifex.com/MageiaLinux/mageia/language/"
+"fa/)\n"
+"Language: fa\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "آیا رسانه مکمل دیگری دارید؟"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -56,117 +84,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "شبکه (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "شبکه (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr ""
+
+#: any.pm:225
#, c-format
-msgid "URL of the mirror?"
-msgstr "نشانی اینترنتی آینه؟"
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
-#: any.pm:171
+#: any.pm:229
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Hostname missing"
msgstr ""
-#: any.pm:182
+#: any.pm:230
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Directory must begin with \"/\""
msgstr ""
-"در حال تماس گرفتن با وب‌گاه لینوکس ماندریبا برای دریافت لیست پایگاه‌های "
-"آینه‌های موجود..."
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "شاخه"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr "نمیتوان پرونده hdlist را بر این آینه پیدا کرد"
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
msgstr ""
-"در حال تماس گرفتن با وب‌گاه لینوکس ماندریبا برای دریافت لیست پایگاه‌های "
-"آینه‌های موجود..."
-#: any.pm:197
+#: any.pm:327
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "انتخاب آینه‌ای برای گرفتن بسته‌ها"
+msgid "Tainted Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:329
#, c-format
-msgid "NFS setup"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:228
+#: any.pm:367
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:232
+#: any.pm:368
#, c-format
-msgid "Hostname missing"
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:233
+#: any.pm:419
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:237
+#: any.pm:420
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains non free software.\n"
msgstr ""
-#: any.pm:238
+#: any.pm:421
#, c-format
-msgid "Directory"
-msgstr "شاخه"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
-#: any.pm:260
+#: any.pm:422
#, c-format
-msgid "Supplementary"
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
msgstr ""
-#: any.pm:295
+#: any.pm:423
#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "نمیتوان پرونده hdlist را بر این آینه پیدا کرد"
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
-#: any.pm:334
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "بررسی بسته‌های از قبل نصب شده..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "یافتن بسته‌های برای ارتقاء..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -179,87 +237,87 @@ msgstr ""
"\n"
"آیا واقعاً می‌خواهید این بسته‌ها را بردارید؟\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "خطا در خواندن پرونده‌ی %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "دیسک(های) بدنبال تغییر نام داده شده‌اند:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (قبلا نامش %s بود("
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "شبکه"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "لطفاً رسانه‌ای را انتخاب کنید"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "پرونده از قبل وجود دارد. بازنویسی شود؟"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "اجازه داده نشد"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "رسانه بد %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "نمی‌توان قبل از قسمت‌بندی عکس‌صفحه گرفت"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "عکس‌صفحه‌ها بعد از نصب در %s در دسترس خواهند بود"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "نصب کردن"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "پیکربندی"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "باید %s را قالب‌بندی کنید"
@@ -283,22 +341,22 @@ msgstr "بالا آوردن شبکه"
msgid "Bringing down the network"
msgstr "پایین آوردن شبکه"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "کپی کردن در حال انجام است"
@@ -328,351 +386,412 @@ msgstr "خوب"
msgid "maybe"
msgstr "شاید"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "خطائی رخ داد"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "یک خطای مهلک رخ داد: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "نصب شکست خورد"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "نصب کردن بسته‌ی %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "ایستگاه‌کار"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "ایستگاه‌کار دفتری"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"برنامه های دفتری: واژه پردازان (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"برنامه های دفتری: واژه پردازان (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"برنامه‌های دفتری: واژه پردازها ((kword, abiword), برگ‌های حساب (kspread, "
-"gnumeric), نماگرهای pdf و غیره"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "ایستگاه بازی"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "برنامه‌های سرگرمی: آرکید، تخته‌ها، تاکتیکی، غیره"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "ایستگاه چندرسانه‌ای"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "برنامه‌های ویرایش/پخش ویدیو و صوت"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "ایستگاه اینترنت"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr "مجموعه ابزار خواندن و ارسال پست و اخبار (mutt, tin..) و برای مرور وب"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "رایانه‌ی شبکه (کارگیر)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "کارگیرها برای پایان‌نامه‌های گوناگون از جمله ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "ابزارهای برای آسان‌ کردن پیکربندی رایانه‌اتان"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "ابزارهای کنسول"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "ویرایش‌گرها، پوسته‌ها، ابزار پرونده، پایانه‌ها"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "برنامه‌سازی"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "کتابخانه‌های برنامه‌سازی C و C++، برنامه‌ها و پرونده‌های شامل"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "نوشتار"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "کتاب‌ها و چگونگی‌ها در لینوکس و نرم‌افزار آزاد"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "پایه‌ی استاندارد لینوکس. حمایت برنامه‌های شخص سوم"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "کارگزار‌ وب"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "آپاچ"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "گروه افزار"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "کارگزار Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "دیوار‌آتش/مسیریاب"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "دروازه‌ی اینترنت"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "پست/اخبار"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "کارگزار پست Postfix، کارگزار اخبار Inn "
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "کارگزار شاخه"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "کارگزار FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "نام دامنه و کارگزار اطلاعات شبکه"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "کارگزاراشتراک چاپگر و پرونده"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "کارگزار NFS، کارگزار Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "بانک ‌اطلاعات"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "کارگزار پایگاه داده‌ی PostgreSQL و MySQL "
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "کارگزار پایگاه داده‌ی PostgreSQL و MariaDB "
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "پست"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "کارگزار پست Postfix "
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "کارگزار بانک اطلاعاتی PostgreSQL یا MySQL "
+msgid "PostgreSQL or MariaDB database server"
+msgstr "کارگزار بانک اطلاعاتی PostgreSQL یا MariaDB "
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "کارگزار شبکه‌ی رایانه"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "کارگزار NFS , کارگزار SMB , کارگزار Proxy , کارگزار ssh "
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "محیط گرافیکی"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "ایستگاه‌کار KDE "
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "محیط رومیزی K، محیط گرافیکی پایه با مجموعه‌ای از ابزارهای ضمیمه"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "ایستگاه‌کار گنوم"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "محیط گرافیکی کاربر-دوستانه با مجموعه‌ای از برنامه‌ها و ابزارهای رومیزی"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "رومیزی Plucker"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "محیط گرافیکی کاربر-دوستانه با مجموعه‌ای از برنامه‌ها و ابزارهای رومیزی"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "دیگر رومیزی‌های گرافیکی"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm, etc"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "وسایل"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "کارگزار‌ SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "کارگزار پیکربندی از راه دور Webmin "
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "پایشگری/وسایل شبکه"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "ابزار پایشگری، پروسه های حسابداری، tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
+msgid "Mageia Wizards"
msgstr "جادوگران نرم افزار ماندریبا"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "جادوگران برای پیکربندی کارگزار"
@@ -686,7 +805,7 @@ msgstr ""
"خطائی رخ داد، اما نمی‌دانم چگونه آن را بخوبی اداره کنم.\n"
"با مسئولیت خودتان ادامه دهید."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -706,254 +825,254 @@ msgstr "ورود به مرحله‌ی `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "نصب لینوکس ماندریبا %s"
+msgid "%s Installation %s"
+msgstr ""
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> بین عناصر"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"سیستم شما منابع کمی دارد. ممکن است در نصب لینوکس ماندریبا با اشکال برخورد "
-"کنید. \n"
-"اگر این اتفاق رخ داد، می‌توانید نصب متنی را بجایش امتحان کنید. برای این کار، "
-"`F1' را \n"
-"هنگام آغازگری با سی‌دی فشار داده، سپس `text' وارد کنید."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "نصب حداقل"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "رومیزی Plucker"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "رومیزی Plucker"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "رومیزی Plucker"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "گزینش گروه بسته"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "انتخاب بسته‌ی تکی"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "اندازه‌ی کل: %d / %d مگابایت"
+msgid "Unselect All"
+msgstr "همه انتخاب نشده‌اند"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "بسته‌ی خراب"
+msgid "Total size: %d / %d MB"
+msgstr "اندازه‌ی کل: %d / %d مگابایت"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "نسخه: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "اندازه: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d کیلوبایت\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "اهمیت: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "نمی‌توانید این بسته را انتخاب/غیر انتخاب کنید"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "بدلیل فقدان %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "بدلیل عدم ارضای %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "تلاش برای تبلیغ %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "بمنظور نگهداشتن %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"نمی‌توانید این بسته را انتخاب کنید چرا که فضای کافی برای نصب آن باقی نمانده "
"است"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "بسته‌های بدنبال آمده نصب خواهند شد"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "بسته‌های بدنبال آمده برداشته خواهند شد"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "این بسته‌ای ضروری است، نمی‌تواند که گزیده نشود."
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "نمی‌توانید این بسته را انتخاب نکنید. آن از قبل نصب شده است "
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "نمی‌توانید این بسته را انتخاب نکنید. این باید ارتقاء داده شود"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "نشان دادن خودکار بسته‌های انتخاب شده"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "نصب"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "بارگذاری/ذخیره انتخاب"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "بروزسازی مجموعه بسته"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "نصب حداقل"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "مدیریت نرم‌افزار"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "بسته‌هایی را که می‌خواهید نصب کنید انتخاب کنید"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "نصب کردن"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "بدون جزئیات"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "زمان باقیمانده "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "تخمین زدن"
+msgstr ""
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "بسته‌های %d"
+msgstr[1] "بسته‌های %d"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "خلاصه"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "پیکربندی"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "پیکربندی نشده است"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "گزینش گروه بسته"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -962,84 +1081,84 @@ msgstr ""
"رسانه نصب بدنبال آمده یافت شد.\n"
"اگر میخواهید بعضی از آنها را نادیده بگیرید میتوانید آنها را اکنون نگزینید."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"شما میتوانید محتویات سی‌دی‌ها را قبل از نصب بر روی دیسک سخت کپی کنید.\n"
"سپس آن از دیسک سخت ادامه یافته و بسته‌ها وقتی که سیستم کاملا نصب گردید در "
"دسترس خواهند بود."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "کپی کردن تمام سی‌دی‌ها"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "خطائی رخ داد"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "لطفاً طرح صفحه‌کلید خود را انتخاب کنید"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "این لیست کامل صفحه‌کلیدهای در دسترس می‌باشد"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "نصب/ارتقاء"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "آیا این یک نصب است یا یک ارتقاء؟"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "نصب"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "ارتقاء دادن %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "کلید رمزی برای %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "نصب کردن"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1048,36 +1167,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "پیکربندی IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"هیچ فضای آزادی برای ۱ مگابایت تسمه‌ی آغازگری ! نصب ادامه پیدا خواهد کرد، ولی "
-"باید قسمت‌بندی تسمه آغازگری را در DiskDrake ایجاد کنید"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"شما نیاز به ایجاد یک تسمه‌ی آغازگری PPC PReP دارید! نصب ادامه پیدا خواهد کرد، "
-"ولی باید قسمت‌بندی تسمه آغازگری را در DiskDrake ایجاد کنید"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1090,19 +1190,19 @@ msgstr ""
"فشار دهید. \n"
"اگر آن را ندارید، لغو را برای جلوگیری از نصب این سی‌دی-رم فشار دهید."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "جستجو برای بسته‌های موجود..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1111,52 +1211,52 @@ msgstr ""
"لطفاً بارگذاری یا ذخیره‌ی مجموعه بسته را انتخاب کنید.\n"
"قالب همانند پرونده‌های تولید شده‌ی نصب-خودکار است."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "بارگذاری"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "ذخیره"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "پرونده بد"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "گنوم"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "گزینش گروه بسته"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "اندازه‌های انتخاب شده بزرگ‌تر از فضای موجود است"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "نوع نصب"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1165,87 +1265,126 @@ msgstr ""
"هیچ گروه از بسته‌ها را انتخاب نکرده‌اید.\n"
"لطفاً حداقل نصبی را که می‌خواهید انتخاب کنید:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "با X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "نصب کردن بسته‌ی %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "با نوشتارهای پایه (سفارش می‌شود!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "حقیقتاً حداقل نصب (مخصوصاً بدون urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "آماده کردن نصب"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "نصب کردن بسته‌ی %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "خطائی در مرتب کردن بسته‌ها رخ داد:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "ادامه به هر حال؟"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "ذخیره‌ی مجموعه بسته‌ها"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "خطائی هنگام نصب بسته‌ها وجود داشت:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "پیکربندی بعد از نصب"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "بروزسازی‌ها"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "بسته‌های بدنبال آمده نصب خواهند شد"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "ناموفق بودن هنگام اضافه کردن رسانه"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1265,111 +1404,80 @@ msgstr ""
"\n"
"آیا می‌خواهید بروزسازی‌ها را نصب کنید؟"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s بر %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "سخت‌افزار"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "کارت صوتی"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "آیا کارت صوتی ISA دارید؟"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"برای پیکربندی کارت صوتی خود بعد از نصب برنامه‌ی \"sndconfig\" یا \"alsaconf"
-"\" را اجرا کنید"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "هیچ کارت صوتی شناسایی نشد. \"harddrake\" را بعد از نصب امتحان کنید"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "واسط گرافیکی"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "شبکه و اینترنت"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "پراکسی‌ها"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "پیکربندی شده"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "سطح امنیتی"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "دیوارآتش"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "فعال شده"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "از کار افتاده"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "شما ایکس را پیکربندی نکرده‌اید. آیا واقعاً مطمئنید که این را می‌خواهید؟"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "آماده کردن بارگذار آغازگر..."
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"بنظر میرسد که شما یک رایانه‌ی عهد عتیق یا ناشناس دارید، \n"
-"بارگزار آغازگر یابوت برای شما کار نخواهد کرد. \n"
-"این نصب ادامه پیدا خواهد کرد، ولی شما باید \n"
-"از BootX یا طریق دیگری برای آغازگری استفاده کنید. آرگومان هسته برای سیستم "
-"پرونده ریشه: root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1377,17 +1485,17 @@ msgid ""
msgstr ""
"در این سطح امنیتی، دستیابی به پرونده‌های قسمت‌بندی ویندوز محدود به مدیر است."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "یک دیسکچه‌ی خالی را در گرداننده‌ی %s داخل کنید"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "ایجاد کردن دیسکچه‌ی نصب خودکار..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1398,12 +1506,12 @@ msgstr ""
"\n"
"واقعاً می‌خواهید اکنون ترک کنید؟"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "تبریک می‌گوئیم!"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "آغازگری مجدد"
@@ -1498,13 +1606,6 @@ msgid ""
"Users"
msgstr "کاربران"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "شبکه‌کاری"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1547,137 +1648,10 @@ msgid ""
"Exit"
msgstr "خروج"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "فرستادن پرونده‌ها..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "شما کارگزار(های) بدنبال آمده را انتخاب کرده‌اید: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "این کارگزارها در پیش‌فرض فعال شده‌اند. آنها هیچ اشکال امنیتی شناخته شده‌ای\n"
-#~ "ندارند، ولی اشکالات جدید می‌توانند پیدا شوند. در آن صورت شما باید هر چه\n"
-#~ "زودتر آنها را ارتقاء دهید.\n"
-#~ "\n"
-#~ "\n"
-#~ "آیا واقعا می‌خواهید این کارگزارها را نصب کنید؟\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "رومیزی Plucker"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "تماس گرفتن با آینه برای گرفتن لیست بسته‌های موجود..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "نمی‌توان با آینه %s تماس برقرار کرد"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "تولید دیسکچه‌ی نصب خودکار"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "اگر بخواهید نصب خودکار می‌تواند کاملا خودکار عمل کند، \n"
-#~ "که در آن صورت گرداننده‌ی دیسک را در اختیار می‌گیرد!! \n"
-#~ "(این برای نصب بر رایانه دیگری منظور شده است) \n"
-#~ "\n"
-#~ "ممکن است ترجیح دهید نصب را اجرای مجدد کنید.\n"
-
-#~ msgid "Replay"
-#~ msgstr "بازپخش"
-
-#~ msgid "Automated"
-#~ msgstr "خودکار"
-
-#~ msgid "Save packages selection"
-#~ msgstr "ذخیره‌ی مجموعه بسته‌ها"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "آیا می‌خواهید از aboot استفاده کنید؟"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "خطا در نصب aboot, \n"
-#~ "تلاش به اجبار نصب می‌کنید حتی اگر آن اولین قسمت‌بندی را خراب کند؟"
-
-#~ msgid "All"
-#~ msgstr "همه"
-
-#~ msgid "TV card"
-#~ msgstr "کارت تلویزیون"
-
-#~ msgid "Boot"
-#~ msgstr "آغازگری"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "تأیید هویت"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(بسته‌های %d، %d مگابایت)"
-
-#~ msgid "%d packages"
-#~ msgstr "بسته‌های %d"
-
-#~ msgid "Language"
-#~ msgstr "زبان"
-
-#~ msgid "License"
-#~ msgstr "مجوز"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "انتخاب رده‌ی نصب"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "تخمین زدن"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "انتخاب بسته‌ها برای نصب کردن"
-
-#~ msgid "Users"
-#~ msgstr "کاربران"
-
-#~ msgid "Networking"
-#~ msgstr "شبکه‌کاری"
-
-#~ msgid "Configure X"
-#~ msgstr "پیکربندی ایکس"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "نشانی اینترنتی آینه؟"
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "نمی‌توان به ماژول‌های هسته مربوط به هسته‌ی شما (پرونده %s وجود ندارد) "
-#~ "دستیابی یافت، این معمولاً بدین معنی است که دیسکچه‌ی آغازگرتان با رسانه‌ی نصب "
-#~ "هم‌گاهی ندارد (لطفاً دیسکچه‌ی آغازگری جدیدی ایجاد کنید)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "انتخاب آینه‌ای برای گرفتن بسته‌ها"
diff --git a/perl-install/install/share/po/fi.po b/perl-install/install/share/po/fi.po
index f2547a57f..329ee65df 100644
--- a/perl-install/install/share/po/fi.po
+++ b/perl-install/install/share/po/fi.po
@@ -1,62 +1,90 @@
-# DrakX-fi - Finnish Translation
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Copyright (C) 2002,2003, 2004, 2005, 2006, 2008 Free Software Foundation, Inc.
-# Copyright (C) 2002 Mandriva
-#
-#
-# Matias Griese <mahagr@utu.fi>, 2001.
-# Taisto Kuikka <69319@batman.jypoly.fi>, 2003,2004.
-# Esa Linna <denzo@mbnet.fi>, 2004.
-# Thomas Backlund <tmb@mandrake.org>, 2002, 2003, 2004, 2005.
-# Thomas Backlund <tmb@mandriva.org>, 2006, 2008.
-# Anssi Hannula <anssi@mandriva.org>, 2007, 2008.
-# Jani Välimaa <jani.valimaa@gmail.com>, 2009.
+# Translators:
+# Anssi Hannula <anssi@mandriva.org>, 2007-2008
+# Esa Linna <denzo@mbnet.fi>, 2004
+# Jani Välimaa <wally@mageia.org>, 2011
+# wally <wally@mandriva.org>, 2009
+# Kimmo Kujansuu <mrkujansuu@gmail.com>, 2023
+# Matias Griese <mahagr@utu.fi>, 2001
+# Taisto Kuikka <69319@batman.jypoly.fi>, 2003-2004
+# Thomas Backlund <tmb@mandrake.org>, 2002-2005
+# Thomas Backlund <tmb@mandriva.org>, 2006,2008
+# wally <wally@mandriva.org>, 2009
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-fi\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-24 18:58+0300\n"
-"Last-Translator: Jani Välimaa <jani.valimaa@gmail.com>\n"
-"Language-Team: Finnish <cooker-i18n@mandrivalinux.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Kimmo Kujansuu <mrkujansuu@gmail.com>, 2023\n"
+"Language-Team: Finnish (http://app.transifex.com/MageiaLinux/mageia/language/"
+"fi/)\n"
+"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 0.3\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr "Liity meihin!"
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr "Tee siitä omasi!"
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr "Sinun valintasi!"
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr "Tiedostotyökalut"
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr "Kodin viihde"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Työpöytä USB-tikulla"
+msgid "For kids"
+msgstr "Lapsille"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "Mandriva Linux - 100%% vapaan lähdekoodin jakelu"
+msgid "For family!"
+msgstr "Perheelle!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Tutustu Linuxiin helposti Mandriva One:n avulla"
+msgid "For developers!"
+msgstr "Kehittäjäille!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/09_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Käyttäjätuella varustettu täysi Mandriva Linux -jakelu"
+msgid "Thank you!"
+msgstr "Kiitos sinulle!"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/10_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: jakeluja jokaisen tarpeisiin"
+msgid "Be Free!"
+msgstr "Ole vapaa!"
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Onko käytettävissä muita asennuksen lisälevyjä?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -69,93 +97,57 @@ msgstr ""
"\n"
"Onko käytettävissä muita asennusmedioita?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD/DVD-levy"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Verkko (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Verkko (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Verkko (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Peilipalvelimen osoite?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Osoitteen täytyy alkaa etuliitteellä ftp:// tai http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Otetaan yhteys Mandriva Linuxin sivustolle peilipalvelinlistan hakemiseksi..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Yhteydenotto Mandriva Linuxin sivustolle peilipalvelinlistan hakemiseksi "
-"epäonnistui"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Valitse peilipalvelin, jolta paketit haetaan"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS-asetukset"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Syötä NFS-palvelimen nimi ja hakemistopolku"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Palvelimen osoite puuttuu"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Hakemistopolun täytyy alkaa \"/\"-merkillä"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS-palvelimen nimi?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Hakemisto"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Lisämedia"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -164,23 +156,96 @@ msgstr ""
"Peilipalvelimelta ei löydy tiedostolistausta. Varmista tiedostopolun "
"oikeellisuus."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Jotkin tietokoneen laitteet tarvitsevat joitain nonfree laiteohjaimia, jotta "
+"vapaan ohjelmiston ajurit toimisivat."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Sinun pitäisi lisätä \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" sisältää järjestelmien eri osat ja sen sovellukset"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" sisältää nonfree ohjelmistoa.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Sisältää myös tiettyjen laitteiden toimintaan tarvittavat ajurit (esim.: ATI/"
+"AMD-näytönohjaimet, jotkin verkkokortit, jotkin RAID-kortit, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" sisältää ohjelmistoa, joita ei voida levittää kaikissa maissa "
+"patenttien vuoksi."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "Sisältää myös ohjelmiston \"%s\" rakentamiseksi lisäominaisuuksilla."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Täällä voit ottaa käyttöön lisää medioita, jos haluat."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Tämä media tarjoaa pakettien päivityksiä medialle \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Etsitään asennettuja paketteja..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Etsitään paketteja päivitettäväksi..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Poistetaan paketteja ennen päivitystä..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -193,87 +258,87 @@ msgstr ""
"\n"
"Poistetaanko paketit?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Virhe luettaessa tiedostoa %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Seuraavat levyt nimettiin uudelleen:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (ennen: %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Verkko"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Valitse media"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Tiedosto jo olemassa. Korvaa?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Ei oikeuksia"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Virheellinen NFS-nimi"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Virheellinen media %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Kuvakaappauksia ei voida ottaa ennen osiointia"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Kuvakaappaukset löytyvät asennuksen jälkeen hakemistosta %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Asennus"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Asetukset"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Myös %s tulee alustaa"
@@ -297,22 +362,22 @@ msgstr "Käynnistetään verkkoa"
msgid "Bringing down the network"
msgstr "Ajetaan verkkoa alas"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Odota hetki, haetaan tiedostoa"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "median lisääminen epäonnistui"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopioidaan paketteja kovalevylle myöhempään käyttöä varten"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopioidaan"
@@ -342,7 +407,23 @@ msgstr "hyvä"
msgid "maybe"
msgstr "ehkä"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Haetaan pakettien tietoja XML-metatiedoista..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Medialla \"%s\" ei ole XML-tietoja, vain osittainen hakutulos paketille %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Ei kuvausta"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -351,75 +432,76 @@ msgstr ""
"Joitakin paketin %s vaatimia paketteja ei voida asentaa:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Virhe:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Tapahtui ohittamaton virhe: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Älä kysy uudelleen"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d asennustapahtumaa epäonnistui"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Pakettien asennus epäonnistui:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Työasema"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Toimistotyöasema"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Toimisto-ohjelmistot: tekstinkäsittely (OpenOffice.org Writer, Kword), "
-"taulukkolaskenta (OpenOffice.org calc, Kspread), PDF-lukijat jne"
+"Toimisto-ohjelmistot: tekstinkäsittely (LibreOffice Writer, Kword), "
+"taulukkolaskenta (LibreOffice calc, Kspread), PDF-lukijat jne"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Toimisto-ohjelmistot: tekstinkäsittely (kword, abiword), taulukkolaskenta "
-"(kspread, gnumeric), pdf-lukijat jne"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Peliasema"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Viihdeohjelmat: tasohyppely, korttipelit, strategia jne"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimediatyöasema"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Äänen ja videon toisto- ja editointiohjelmat"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet-työasema"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -428,196 +510,196 @@ msgstr ""
"Valikoima työkaluja sähköpostin ja uutisryhmien lukemiseen (mutt, tin...), "
"sekä Internetin selailuun"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Verkkopääte (asiakas)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Asiakasohjelmat eri protokollille (SSH jne.)"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Työkalut, jotka helpottavat tietokoneen asetusten muokkaamista"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Komentorivityökalut"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editorit, komentotulkit, tiedostotyökalut, päätteet"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Kehitysympäristö"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
"Ohjelmat, include-tiedostot ja kehityskirjastot ohjelmointikielille C ja C++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentaatio"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Kirjoja ja ohjeita Linuxista ja vapaan lähdekoodin ohjelmista"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
"Linux Standard Base (LSB)\n"
" - Tuki kolmannen osapuolen ohjelmistoille"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "WWW-palvelin"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab-palvelin"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Palomuuri / Reititin"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internetin yhdyskäytävä"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Sähköposti / Uutiset"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix-sähköpostipalvelin, Inn-uutispalvelin"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Hakemisto-palvelin"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP-palvelin"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS / NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "DNS- ja NIS-palvelin"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Tiedosto- ja tulostuspalvelin"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS-palvelin, Samba-palvelin"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Tietokanta"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL- ja MySQL-tietokantapalvelin"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL- ja MariaDB-tietokantapalvelin"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "WWW / FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache WWW-palvelin ja Pro-ftpd FTP-palvelin"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Sähköposti"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix-sähköpostipalvelin"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL- tai MySQL-tietokantapalvelin"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL- tai MariaDB-tietokantapalvelin"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Verkkotietokone (palvelin)"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS-, SMB-, SSH- ja välityspalvelin"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Graafinen ympäristö"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE-työasema"
+msgid "Plasma Workstation"
+msgstr "Plasma-työasema"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -625,12 +707,12 @@ msgid ""
msgstr ""
"K-työpöytäympäristö. Graafinen perusympäristö ja sen mukana tulevat työkalut"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME-työasema"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -638,66 +720,111 @@ msgid ""
msgstr ""
"Graafinen ympäristö käyttäjäystävällisillä sovelluksilla ja työkaluilla."
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE-työpöytä"
+msgid "Xfce Workstation"
+msgstr "Xfce-työasema"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Kevyt ja nopea, etenkin minikannettaville suunniteltu, graafinen ympäristö "
-"käyttäjäystävällisillä työkaluilla ja työpöytäsovelluksilla."
+"Kevyempi graafinen ympäristö käyttäjäystävällisillä sovelluksilla ja "
+"työkaluilla"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE-työasema"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon-työasema"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "GNOME-pohjainen graafinen ympäristö"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt-työpöytä"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Seuraavan sukupolven QT-portti kevyenä työpöytäympäristönä"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment-työpöytä"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Kevyt ja nopea graafinen ympäristö"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE-työpöytä"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Kevyt ja nopea graafinen ympäristö"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "Muut graafiset työpöytäympäristöt"
+msgstr "Muut graafiset työpöydät"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, FVWM jne."
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, jne"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Työkalut"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH-palvelin"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin etäasetuspalvelin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Verkkotyökalut ja verkon valvonta"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Valvontatyökalut, prosessienhallinta, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandrivan asetusvelhot"
+msgid "Mageia Wizards"
+msgstr "Mageian asetusvelhot"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Velhoja palvelinten asettamiseksi"
@@ -711,13 +838,13 @@ msgstr ""
"Ilmeni virhe, eikä sitä ei voida käsitellä kunnolla.\n"
"Jatka omalla vastuullasi."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Joitakin tärkeistä paketeista ei pystytty asentamaan.\n"
"CD/DVD-asema tai -levy on viallinen.\n"
@@ -731,260 +858,259 @@ msgstr "Siirrytään vaiheeseen %s\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linuxin asennus %s"
+msgid "%s Installation %s"
+msgstr "%sin asennus %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> vaihtaa osaa"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "X.org-palvelin on hidas käynnistää. Odota..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Järjestelmän resurssit ovat lopussa. Mandriva Linuxia asennettaessa\n"
+"Järjestelmän resurssit ovat lopussa. %sia asennettaessa\n"
"voi ilmetä ongelmia. Jos näin tapahtuu, voidaan graafisen asennuksen\n"
"sijaan käyttää tekstipohjaista asennusta. Tekstipohjainen asennus\n"
"käynnistetään painamalla käynnistysruudussa näppäintä F1,\n"
"kirjoittamalla teksti \"text\" ja painamalla Enteriä."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Asennusmedioiden valinta"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Asenna Mandriva KDE-työpöytäympäristöllä"
+msgid "Install %s Plasma Desktop"
+msgstr "Asenna %s Plasma"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Asenna Mandriva GNOME-työpöytäympäristöllä"
+msgid "Install %s GNOME Desktop"
+msgstr "Asenna %s GNOME"
-# Asennuksen sivuvalikko
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Mukautettu asennus"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE-työpöytä"
+msgid "Plasma Desktop"
+msgstr "Plasma-työpöytä"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME-työpöytä"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
-msgstr "Mukautettu"
+msgstr "Mukautettu työpöytä"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "%s-työpöydän esikatselu."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Kuvaa napsauttamalla aukeaa isompi esikatselukuva."
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Pakettiryhmien valinta"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Yksittäisten pakettien valinta"
-# mat
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Koko yhteensä: %d / %d Mt"
+msgid "Unselect All"
+msgstr "Poista valinnat"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Viallinen paketti"
+msgid "Total size: %d / %d MB"
+msgstr "Koko yhteensä: %d / %d Mt"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versio: "
-# mat
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Koko: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d kt\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Tärkeys: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Pakettia ei voida valita tai poistaa"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "puuttuvan riippuvuuden %s vuoksi"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "täyttämättömistä riippuvuuksista %s johtuen"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "yritetään asentaa %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "jotta %s voitaisiin säilyttää"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Pakettia ei voida asentaa, koska levyllä ei ole tarpeeksi tilaa sen "
"asentamiseen"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Seuraavat paketit asennetaan"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Seuraavat paketit poistetaan"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Tämä on pakollinen paketti, sitä ei voida poistaa valinnoista"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Paketin valintaa ei voi poistaa, koska se on jo asennettu"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Paketin valintaa ei voi poistaa, koska se pitää päivittää"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Näytä automaattisesti valitut paketit"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Asenna"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Lataa / tallenna pakettivalinnat"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Päivitetään pakettien valintoja"
-# Asennuksen sivuvalikko
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Vaihda hierarkkisen ja kiinteän pakettilistan välillä"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Vähimmäisasennus"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Ohjelmistojen hallinta"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Valitse asennettavat paketit"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Asennus käynnissä"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Ei yksityiskohtia"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Aikaa jäljellä:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(arvioidaan...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d paketti"
msgstr[1] "%d pakettia"
-# Asennuksen sivuvalikko
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Yhteenveto"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Aseta"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "ei asetettu"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Asennusmedioiden valinta"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -993,84 +1119,84 @@ msgstr ""
"Löydettiin seuraavat asennusmediat.\n"
"Poista median valinta, jos et halua käyttää sitä."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Asennuslevyjen sisältö on mahdollista kopioida kovalevylle ennen asennusta.\n"
"Asennus jatkuu tämän jälkeen kovalevyltä ja paketit ovat käytettävissä myös "
"asennuksen jälkeen."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopioi asennuslevyt"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Ilmeni virhe"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Valitse näppäimistöasettelu"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Lista kaikista käytettävissä olevista näppäimistöistä:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Asennustapa"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Asennus vai päivitys?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Asennus"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Päivitä %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Salausavain %s:lle"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Peruuta asennus ja käynnistä järjestelmä uudelleen"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Uusi asennus"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Päivitä edellinen asennus (ei suositella)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1078,45 +1204,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Nykyistä Mandriva Linux -asennusta ei voida päivittää turvallisesti\n"
-"versioon %s.\n"
+"Asennusohjelma havaitsi, että asennettua Linux-järjestelmää ei voida\n"
+"päivittää turvallisesti versioon %s.\n"
"\n"
"On suositeltavaa suorittaa asennus, joka korvaa edellisen asennuksen.\n"
"\n"
"HUOM! Ota varmuuskopio tärkeistä ja henkilökohtaisista tiedostoista\n"
"ennen kuin valitset \"Uusi asennus\"."
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Etsitään IDE-levyjä"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"1 Mt:n käynnistyslohkoa varten ei löydy vapaata tilaa! Asennusta jatketaan, "
-"mutta käynnistyslohko-osio pitää luoda DiskDrakella järjestelmän "
-"käynnistämiseksi."
+msgid "Configuring CD/DVD"
+msgstr "CD/DVD:n konfigurointi"
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"PPC PReP Boot bootstrap täytyy luoda! Asennusta jatketaan, mutta "
-"käynnistyslohko-osio pitää luoda DiskDrakella järjestelmän käynnistämiseksi."
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1130,21 +1236,21 @@ msgstr ""
"Jos levyä ei ole, valitse \"Peruuta\" ohittaaksesi asennukset kyseiseltä "
"levyltä."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Etsitään saatavilla olevia paketteja..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Järjestelmässä ei ole riittävästi vapaata tilaa asennusta tai päivitystä "
"varten (%dMt > %dMt)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1153,53 +1259,53 @@ msgstr ""
"Lataa tai tallenna pakettien valinta.\n"
"Muotoilu on sama kuin auto_install-toiminnon luomilla tiedostoilla."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Lataa"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Tallenna"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Virheellinen tiedosto"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Työpöydän valinta"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Valitse asennettava työpöytäympäristö."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
"Valittujen pakettien koko on suurempi kuin käytettävissä oleva levytila"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Asennuksen tyyppi"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1208,87 +1314,130 @@ msgstr ""
"Yhtään pakettiryhmää ei ole valittu.\n"
"Valitse haluttu vähimmäisasennus:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Graafisella käyttöliittymällä"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Asennetaan pakettia %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Asenna suositellut paketit"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Perusdokumentaation kanssa (suositeltu!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Vähimmäisasennus (ei edes urpmi:a)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Valmistellaan päivitystä..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Valmistellaan asennusta"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Asennetaan pakettia %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Paketteja järjestettäessä tapahtui virhe:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Jatka?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Yritä uudelleen"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Ohita paketti"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Ohita kaikki paketit medialta \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Siirry takaisin medioiden ja pakettien valintaan"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Paketin %s asentamisessa tapahtui virhe."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Asennuksen jälkeiset toiminnot"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Varmista, että \"Update Modules\"-media on asemassa %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Päivitykset"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Sinulla on nyt mahdollisuus asentaa online-medialla."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Tämä sallii tietoturvapäivitysten asentamisen."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Jotta voit asentaa median, sinulla on oltava toimiva yhteys\n"
+"Internettiin.\n"
+"\n"
+"Haluatko asentaa päivitysmedian?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Lataajaa ei voitu asentaa"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Yritä uudelleen?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Virhe lisättäessä lähdettä"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1308,113 +1457,81 @@ msgstr ""
"\n"
"Asennetaanko päivitykset?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s kohteessa %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Laitteisto"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Äänikortti"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Onko koneessa ISA-väylään liitettävä äänikortti?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Suorita asennuksen jälkeen komento \"alsaconf\" tai \"sndconfig\" "
-"asettaaksesi äänikortin."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Yhtään äänikorttia ei löytynyt. Suorita asennuksen jälkeen komento "
-"\"harddrake2\"."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Graafinen käyttöliittymä"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Verkko ja Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Välityspalvelimet"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "asetettu"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Turvallisuustaso"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Palomuuri"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktivoitu"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "ei käytössä"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
"X-palvelinta ei ole asetettu, haluatko varmasti jättää sen asettamatta?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Valmistellaan käynnistyslatainta..."
+msgid "Preparing initial startup program..."
+msgstr "Valmistellaan käynnistysohjelmaa..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Ole kärsivällinen, valmistelussa voi kestää hetki..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Tietokone on vanhanaikainen tai tuntematon, joten Yaboot-käynnistyslatain ei "
-"toimi. Asennus jatkuu, mutta koneen käynnistämiseen täytyy käyttää BootX:ää "
-"tai jotain muuta keinoa. Ytimen parametrit root-tiedostojärjestelmälle ovat "
-"root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1423,18 +1540,17 @@ msgstr ""
"Tällä turvallisuustasolla pääsy Windows-osion tiedostoihin on rajoitettu "
"pääkäyttäjälle."
-# mat
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Aseta tyhjä levyke levykeasemaan %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Luodaan automaattiasennuslevykettä..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1445,17 +1561,16 @@ msgstr ""
"\n"
"Haluatko todella lopettaa?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Onnittelut"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Käynnistä uudelleen"
-# Asennuksen sivuvalikko
#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
#: steps_list.pm:16
#, c-format
@@ -1546,13 +1661,6 @@ msgid ""
"Users"
msgstr "Käyttäjät"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Verkko"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1560,7 +1668,6 @@ msgid ""
"Bootloader"
msgstr "Käynnistyslatain"
-# Asennuksen sivuvalikko
#: steps_list.pm:40 steps_list.pm:41
#, c-format
msgid ""
@@ -1568,7 +1675,6 @@ msgid ""
"Configure X"
msgstr "X-palvelin"
-# Asennuksen sivuvalikko
#: steps_list.pm:42
#, c-format
msgid ""
@@ -1596,99 +1702,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Lopetus"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Havaittiin KDE 3.5 ja järjestelmää ollaan päivittämässä versioon\n"
-#~ "%s. Asennusohjelma ei kuitenkaan\n"
-#~ "osaa säilyttää KDE:n versiota 3.5 päivityksen yhteydessä.\n"
-#~ "Jos asennusta jatketaan, asennetaan KDE 3:n tilalle KDE 4 ja\n"
-#~ "kaikki KDE:n henkilökohtaiset asetukset menetetään. Jotta\n"
-#~ "järjestelmä voidaan päivittää ja henkilökohtaiset asetukset\n"
-#~ "säilyttää, täytyy tietokone käynnistää uudelleen ja järjestelmä\n"
-#~ "päivittää käyttämällä Mandrivan päivityssovelmaa\n"
-#~ "(Mandriva Update)."
-
-#~ msgid "Proceed"
-#~ msgstr "Jatka"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "[%s] lataaminen epäonnistui"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Haetaan tiedosto %s ..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr ""
-#~ "Päivittäminen 32-bittisestä jakelusta 64-bittiseen jakeluun ei ole tuettu."
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr ""
-#~ "Päivittäminen 64-bittisestä jakelusta 32-bittiseen jakeluun ei ole tuettu."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Olet valinnut seuraavat palvelimet: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Nämä palvelimet otetaan oletuksena käyttöön. Niissä ei ole tunnettuja \n"
-#~ "turvallisuusaukkoja, mutta sellaisia voi löytyä ajan mittaan. Mikäli "
-#~ "niin \n"
-#~ "tapahtuu, sinun pitäisi päivittää kyseiset palvelimet niin nopeasti "
-#~ "kuin \n"
-#~ "suinkin mahdollista.\n"
-#~ "\n"
-#~ "\n"
-#~ "Haluatko todella asentaa nämä palvelimet?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm Työpöytä"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Yhdistetään peilipalvelimeen uusimman pakettilistan saamiseksi..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Yhteyttä peilipalvelimeen %s ei voitu muodostaa"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Luo automaattinen asennuslevyke"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Automaattinen asennus voi olla täysin automatisoitu,\n"
-#~ "jos niin halutaan. Siinä tapauksessa asennus täyttää\n"
-#~ "koko kiintolevyn! (tarkoitettu toisen koneen asentamiseksi),\n"
-#~ "\n"
-#~ "Ehkä haluat mieluummin toistaa asennuksen.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Toista"
-
-#~ msgid "Automated"
-#~ msgstr "Automaattinen"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Tallenna pakettien valinta"
diff --git a/perl-install/install/share/po/fr.po b/perl-install/install/share/po/fr.po
index 44257e9f7..790067f97 100644
--- a/perl-install/install/share/po/fr.po
+++ b/perl-install/install/share/po/fr.po
@@ -1,122 +1,88 @@
-# translation of DrakX-fr.po to Français
-# Translation file of Mandriva Linux graphic install
-# Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006 Mandriva
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Veuillez ne pas mettre à jour ce fichier à moins d'être
-# certain tant de vos traductions que de votre grammaire et
-# de votre orthographe. Ces dernières sont trop souvent
-# approximatives. Elles nécessitent alors des relectures et
-# des corrections qui n'ont d'autre conséquence que de faire
-# perdre du temps à tout le monde (à vous si votre travail est
-# imparfait et aux relecteurs qui doivent rechercher puis corriger
-# vos éventuelles fautes).
-#
-# VEUILLEZ RESPECTER LA TYPOGRAPHIE FRANÇAISE !
-# Les majuscules doivent être accentuées si besoin est. Respectez
-# les espaces nécessaires pour la ponctuation (espace après la virgule et
-# le point, espace insécables avant les points d'interrogation,
-# d'exclamation, les deux-points et le point virgule, espace aussi après
-# le point virgule).
-# N'enlevez pas l'espace qui suit un signe de ponctuation en fin de
-# phrase; vous devez respecter la version originale. Dans ce type de
-# cas, il est extrèmement probable que le programme va afficher
-# quelque chose d'autre à la fin. En enlevant l'espace, vous allez
-# accoller deux mots.
-#
-# ESPACES INSÉCABLES
-# Vous devez utiliser un espace insécable (c'est un espace qui ne peut
-# pas servir de rupture à la ligne) avant le point d'exclamation, le
-# point d'interrogation, le deux-points, le point virgules, et pour les
-# "quantités", entre le nombre et l'unité abbrégée (par exemple "10 g").
-# L'espace normal en ISO et UTF8 est le caractere 0x20 tandis que l'espace
-# insécable est le caractère 0xA0. Sous Emacs en utilisant le po mode
-# livré avec gettext >= 0.10.40-4mdk vous pouvez voir celui-ci avec un
-# fond de couleur spécial. Sous Vi celui-ci est normalement affiché
-# précédé du caractère pipe "|". Pour le taper sous la plupart des
-# éditeurs, vous pouvez utiliser la touche "Compose" puis en tapant
-# deux espaces. Si vous n'avez pas de touche compose, vous pouvez
-# donner cette fonction à la touche "Windows" droite de votre clavier
-# avec la commande suivante :
-# xmodmap -e 'keycode 116 = Multi_key'
-#
-# Les guillemets françaises sont « et » et non ". La guillemet ouvrante
-# « est suivie d'un espace insécable et la guillemet fermante » est
-# précédée du même type d'espace. Pour le taper, vous pouvez utiliser
-# la combinaison Compose < <, et Compose > > (ou alt-z et alt-x).
-#
-# Enfin, traduisez INTELLIGEMMENT et non mot à mot. Certaines traductions
-# n'ont aucun sens en français.
-#
-# MOTS À ÉVITER
-# - application. Ce terme n'étant pas compris par le grand public, il est
-# préférable de le remplacer par le mot "programme".
-#
-# Nous vous remercions de votre compréhension.
-#
-#
-#
-# Stéphane Teletchéa, 2005.
-# David BAUDENS <baudens@mandriva.com>, 1999-2004.
-# David ODIN <odin@mandriva.com>, 2000.
-# Pablo Saratxaga <pablo@mandriva.com>, 2001, 2005.
-# KAtiOS <katios@nolabel.net>, 2001.
-# Guillaume Cottenceau <gc@mandriva.com>, 2001-2002.
-# Thierry Vignaud <tvignaud@mandriva.com>, 2001-2004.
-# Christophe Combelles <ccomb@free.fr>, 2002,2003.
-# Adrien REZER <monsieurdidi@free.fr>, 2003.
-# RICHARD Nicolas <richardnicolas22@yahoo.fr>, 2004.
-# Lecureuil Nicolas <n1c0l4s.l3@wanadoo.fr>, 2004.
-# Teletchéa <steletch@free.fr>, 2004, 2005.
-# Christophe Berthelé <cpjc@free.fr>, 2005, 2006, 2007, 2008, 2009.
-# Didier Hérisson <didier.herisson@angstrom.uu.se>, 2005.
-# Nicolas Lécureuil <neoclust@mandriva.org>, 2005.
-# Christophe Berthelé <berthy@mandriva.org>, 2009.
+# Translators:
+# Charles Monzat <c.monzat@laposte.net>, 2016
+# Charles Monzat <c.monzat@laposte.net>, 2016
+# Eric Barbero <dune06@free.fr>, 2013
+# Eric Barbero <dune06@free.fr>, 2013,2015-2016
+# stroibe974 <sebsweb@gmail.com>, 2018-2020,2022
+# Yves Brungard, 2014
+# Yves Brungard, 2014
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-fr\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-09 15:22+0200\n"
-"Last-Translator: Christophe Berthelé <berthy@mandriva.org>\n"
-"Language-Team: French <cooker-i18n@mandrivalinux.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: stroibe974 <sebsweb@gmail.com>, 2018-2020,2022\n"
+"Language-Team: French (http://app.transifex.com/MageiaLinux/mageia/language/"
+"fr/)\n"
+"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2;plural=(n>1);\n"
+"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % "
+"1000000 == 0 ? 1 : 2;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Rejoignez-nous !"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Pour vous !"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Votre choix !"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Pour la bureautique !"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Pour vos loisirs !"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Pour les enfants !"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Pour toute la famille !"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Pour les développeurs !"
-#: any.pm:109
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Merci !"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Soyez libre !"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Possédez-vous d'autres média supplémentaires ?"
+msgstr "Possédez-vous d'autres médias supplémentaires ?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -124,125 +90,165 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Les média suivants ont été trouvés et seront utilisés pendant "
+"Les médias suivants ont été trouvés et seront utilisés pendant "
"l'installation : %s.\n"
"\n"
"\n"
"Souhaitez-vous configurer un autre média d'installation ?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Réseau (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Réseau (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Réseau (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL du miroir ?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "L'URL doit commencer par ftp:// ou http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Connexion au site Web de Mandriva Linux pour obtenir la liste des serveurs "
-"miroirs disponibles..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Échec de la connexion au site web de Mandriva Linux pour obtenir la liste "
-"des miroirs disponibles"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Choisissez un serveur miroir d'où télécharger les paquetages"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Configuration NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr "Veuillez entrer le nom de machine et le répertoire de votre média NFS"
+msgstr "Veuillez entrer le nom d'hôte et le répertoire de votre média NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
-msgstr "Le nom d'hôte manque"
+msgstr "Il manque le nom d'hôte"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Le répertoire doit commencer par « / »"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Nom d'hôte du montage NFS ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Répertoire"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Supplémentaire"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"Ne peut trouver le fichier de liste de paquets sur ce miroir. Vérifiez que "
-"l'emplacement est correct."
+"Ne peut trouver le fichier de liste des paquetages sur ce miroir. Vérifiez "
+"que l'emplacement est correct."
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Certains matériels sur votre machine peuvent nécessiter des firmwares non\n"
+"libres afin que les pilotes libres puissent fonctionner."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Vous devriez activer « %s »"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+"« %s » contient les différentes parties du système ainsi que ses applications"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "« %s » contient des logiciels non libres.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Il contient également des firmwares nécessaires au bon fonctionnement de "
+"certains périphériques (ex : certaines cartes ATI/AMD, certaines cartes "
+"réseau, certaines cartes RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"« %s » contient des logiciels qui ne peuvent pas être redistribués dans tous "
+"les pays à cause de certains brevets logiciels."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Il contient également des logiciels de « %s » recompilés avec des "
+"fonctionnalités supplémentaires."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Ici vous pouvez activer des médias supplémentaires si vous le désirez."
-#: any.pm:334
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Ce médium fournit les paquets de mise à jour pour le médium « %s »"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Recherche des paquetages déjà installés..."
+msgstr "Recherche des paquetages déjà installés…"
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Recherche des paquetages à mettre à jour..."
+msgstr "Recherche des paquetages à mettre à jour…"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "Suppression des paquetages avant la mise à jour ..."
+msgstr "Suppression des paquetages avant la mise à jour…"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -250,93 +256,93 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Les paquetages suivants seront désinstallés pour permettre la mise à jour : %"
-"s\n"
+"Les paquetages suivants seront désinstallés pour permettre la mise à jour : "
+"%s\n"
"\n"
"\n"
"Souhaitez-vous réellement les désinstaller ?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Erreur lors de la lecture du fichier %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Les disques suivants ont été renommés :"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (précédemment nommé %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Réseau"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Veuillez choisir un média"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Le fichier existe déjà. Voulez-vous l'écraser ?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permission refusée"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Mauvais nom NFS"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Média %s incorrect"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Impossible de faire des captures d'écran avant le partitionnement"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Les captures d'écran seront disponibles après l'installation dans %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Installation"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configuration"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Vous devez aussi formater %s"
@@ -347,37 +353,37 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Certains périphériques présents sur votre système nécessitent des\n"
-"pilotes « propriétaires » pour pouvoir fonctionner. Vous pouvez\n"
-"trouver plus d'informations les concernant ici : %s"
+"Certains périphériques présents sur votre système requièrent des pilotes "
+"« propriétaires » pour pouvoir fonctionner.\n"
+"Vous pouvez trouver plus d'informations les concernant ici : %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "Démarrage de l'interface réseau..."
+msgstr "Démarrage de l'interface réseau"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "Arrêt de l'interface réseau..."
+msgstr "Arrêt de l'interface réseau"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Veuillez patienter, récupération du fichier en cours"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "impossible d'ajouter le média"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
"Copie de certains paquetages sur les disques pour une utilisation future"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Copie en cours"
@@ -407,7 +413,24 @@ msgstr "utile"
msgid "maybe"
msgstr "éventuellement"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Récupération des informations depuis les métadonnées XML…"
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Pas d'info xml pour le média « %s », seulement un résultat partiel pour le "
+"paquetage %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Pas de description"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -416,286 +439,287 @@ msgstr ""
"Certains paquetages requis par %s ne peuvent être installés :\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Une erreur est survenue :"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Une erreur fatale est survenue : %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Ne plus me demander"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d transactions ont échoué"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
-msgstr "L'installation des paquets a échoué :"
+msgstr "L'installation des paquetages a échoué :"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Station de travail"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Poste bureautique"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Programmes pour la bureautique : traitements de texte (OpenOffice.org "
-"Writer, Kword), tableurs (OpenOffice.org Calc, Kspread), visualiseur PDF, etc"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programmes pour la bureautique : traitements de texte (kword, abiword), "
-"tableurs (kspread, gnumeric), visualiseur PDF, etc"
+"Programmes pour la bureautique : traitements de texte (LibreOffice Writer, "
+"Kword), tableurs (LibreOffice Calc, Kspread), visualiseur PDF, etc"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Jeux"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
"Programmes de divertissement : jeux d'arcade, de plateau, de stratégie, etc"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimédia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Programmes pour jouer/éditer du son et de la vidéo"
+msgstr "Programmes de lecture/édition du son et de la vidéo"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
"Ensemble d'outils pour lire et envoyer des courriers électroniques et des "
-"messages de forums (mutt, tin, ...), ainsi que pour naviguer sur Internet"
+"messages de forums (mutt, tin, …), ainsi que pour naviguer sur Internet"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Ordinateur réseau (client)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Clients pour différents protocoles, dont ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Outils pour faciliter la configuration de votre ordinateur"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Utilitaires console"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Éditeurs, interpréteurs, outils fichiers, terminaux"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Développement"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
"Bibliothèques de développement C et C++, programmes et fichiers d'en-tête"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentation"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Livres et Howto's sur Linux et le Logiciel Libre"
+msgstr "Livres et tutoriels sur Linux et le Logiciel Libre"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "« Linux Standard Base ». Support des programmes tiers"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Serveur Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
-msgstr "Groupware"
+msgstr "Logiciel de groupe de travail"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Serveur Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Pare Feu/Routeur"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
-msgstr "Passerelle internet"
+msgstr "Passerelle Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Courriel/Nouvelles"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Serveur de courrier Postfix, serveur de nouvelles lnn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Serveur d'annuaire"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Serveur FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Serveur de noms de domaine et d'information réseaux"
+msgstr "Serveur de nom de domaine et d'information réseau"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Serveur pour partage de fichiers et d'imprimantes"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Serveur NFS, Serveur Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
-msgstr "Base de Données"
+msgstr "Base de données"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Serveurs de bases de données PostgreSQL ou MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Serveur de bases de données PostgreSQL et MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
-msgstr "Apache et Pro-ftpd"
+msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Courriel"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Serveur de courrier Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Serveurs de bases de données PostgreSQL ou MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Serveur de bases de données PostgreSQL ou MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Serveur réseau"
+msgstr "Serveur d'ordinateur réseau"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Serveur NFS, serveur SMB, serveur Proxy (mandataire), serveur SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Environnement graphique"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Station de travail KDE"
+msgid "Plasma Workstation"
+msgstr "Station de travail Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"L'environnement graphique KDE (K Desktop Environment) avec sa collection "
-"d'outils"
+"L'environnement de bureau graphique KDE (K Desktop Environment) avec sa "
+"collection d'outils"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Station de travail GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -704,66 +728,111 @@ msgstr ""
"Un environnement de bureau avec un ensemble de programmes et d'outils "
"intuitifs"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Bureau LXDE"
+msgid "Xfce Workstation"
+msgstr "Environnement Xfce"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Un environnement de bureau léger et rapide avec un ensemble de programmes et "
+"Un environnement de bureau plus léger avec un ensemble de programmes et "
"d'outils intuitifs"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Station de travail MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Station de travail Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Un environnement de bureau basé sur GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Bureau LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Un portage vers Qt de l'environnement de bureau léger"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Bureau Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Un bureau rapide et léger avec une suite d'outils dédiés"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Bureau LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Un environnement graphique léger et rapide"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "Autres Environnements de Bureau"
+msgstr "Autres environnements de bureau"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, etc."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilitaires"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Serveur SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Serveur de configuration distante Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Utilitaires réseau/Surveillance du réseau"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "Outils de surveillance, gestion de processus, tcpdump, nmap, ..."
+msgstr "Outils de surveillance, gestion des processus, tcpdump, nmap, …"
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Assistants Mandriva"
+msgid "Mageia Wizards"
+msgstr "Assistants Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Assistants pour configurer le serveur"
@@ -777,7 +846,7 @@ msgstr ""
"Une erreur est survenue et semble difficile à résoudre correctement.\n"
"Vous pouvez continuer, mais à vos risques et périls."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -785,11 +854,10 @@ msgid ""
"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
"\"\n"
msgstr ""
-"Quelques paquetages importants n'ont pas été correctement installés. Il se\n"
-"peut que le lecteur de CD-ROM ou le CD-ROM lui-même soit défectueux. Vous\n"
-"pouvez vous assurer du bon état de ce dernier en exécutant la commande "
-"suivante\n"
-"sur un ordinateur fonctionnant correctement : « rpm -qpl media/main/*.rpm »\n"
+"Quelques paquetages importants n'ont pas été correctement installés.\n"
+"Il se peut que le lecteur de CD-ROM ou le CD-ROM lui-même soit défectueux.\n"
+"Vous pouvez vous assurer du bon état de ce dernier en exécutant la commande "
+"suivante sur un ordinateur fonctionnel : « rpm -qpl media/main/*.rpm »\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
@@ -798,342 +866,349 @@ msgstr "Démarrage de l'étape « %s »\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Installation de Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "%s Installation %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> entre éléments"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "Le serveur Xorg est lent à démarrer. Veuillez patienter..."
+msgstr "Le serveur Xorg est lent à démarrer. Veuillez patienter…"
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Votre ordinateur dispose de ressources limitées. Vous pouvez rencontrer\n"
-"des problèmes lors de l'installation de Mandriva Linux. Dans ce cas, vous\n"
-"pouvez essayer l'installation en mode texte. Pour cela, appuyez sur la "
-"touche\n"
-"« F1 » après l'amorçage sur CD-ROM puis entrez « text »."
+"Les ressources de votre système sont limitées. Vous pouvez rencontrer des "
+"problèmes\n"
+"lors de l'installation de %s. Si c'est le cas, vous pouvez essayer une "
+"installation en mode texte.\n"
+"Pour cela, appuyez sur « F1 » lors du démarrage sur le CD-ROM, puis entrez « "
+"text »."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Installer le bureau KDE de Mandriva"
+msgid "Media Selection"
+msgstr "Sélection des médias"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Installer le bureau GNOME de Mandriva"
+msgid "Install %s Plasma Desktop"
+msgstr "Installer l'environnement de bureau Plasma %s"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Installer le bureau GNOME %s"
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Installation personnalisée"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Bureau KDE"
+msgid "Plasma Desktop"
+msgstr "Bureau Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Bureau GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Bureau personnalisé"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Voici un aperçu du bureau « %s »."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Veuillez cliquer sur l'image afin d'agrandir l'aperçu"
+msgstr "Cliquez sur l'image afin d'agrandir l'aperçu"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Sélection des groupes de paquetages"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Sélection individuelle des paquetages"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Taille totale : %d / %d Mo"
+msgid "Unselect All"
+msgstr "Désélectionner tout"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Mauvais paquetage"
+msgid "Total size: %d / %d MB"
+msgstr "Taille totale : %d / %d Mo"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Version : "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Taille : "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d Ko\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Importance : "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Vous ne pouvez pas sélectionner/désélectionner ce paquetage"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "parce que %s manque"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "car %s n'est pas résolu"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr "Tentative de promouvoir %s"
+msgstr "tentative de promouvoir %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "afin de conserver %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
-msgstr "Il n'y a pas assez de place pour installer ce paquetage"
+msgstr ""
+"Il n'y a pas assez d'espace disque disponible pour installer ce paquetage"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Les paquetages suivants vont être installés"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Les paquetages suivants vont être désinstallés"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ce paquetage est nécessaire, vous ne pouvez pas le désélectionner"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Vous ne pouvez pas désélectionner ce paquetage. Il est déjà installé"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr ""
-"Vous ne pouvez pas désélectionner ce paquetage, il doit être mis à jour."
+"Vous ne pouvez pas désélectionner ce paquetage, car il doit être mis à jour"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Montrer les paquetages sélectionnés automatiquement"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installation"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Charger/Sauvegarder la sélection"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Mise à jour de la sélection des paquetages"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Basculer entre une liste de paquetages avec ou sans arborescence"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Installation minimale"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Gestion des paquetages"
+msgstr "Gestion des logiciels"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Choisissez les paquetages que vous voulez installer"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Installation"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Pas de détails"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Temps restant :"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
-msgstr "(estimation en cours...)"
+msgstr "(estimation en cours…)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d paquetage"
msgstr[1] "%d paquetages"
+msgstr[2] "%d paquetages"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Résumé"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configurer"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "non configuré"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Sélection des média"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"Les média d'installation suivants ont été trouvés.\n"
+"Les médias d'installation suivants ont été trouvés.\n"
"Si vous ne désirez pas utiliser certains d'entre eux, vous pouvez les "
"désélectionner maintenant."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Vous avez la possibilité de copier le contenu des CDs sur le disque dur "
-"avant l'installation.\n"
+"Vous avez la possibilité de copier le contenu des CD sur le disque dur avant "
+"l'installation.\n"
"Celle-ci s'effectuera alors à partir du disque dur et les paquetages "
"resteront disponibles une fois le système installé."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr "Copier entièrement les CDs"
+msgstr "Copier entièrement les CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Une erreur est survenue"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Veuillez choisir votre type de clavier"
+msgstr "Veuillez choisir votre disposition de clavier"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Voici la liste complète des claviers disponibles :"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Installation/Mise à jour"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Désirez-vous faire une installation ou une mise à jour ?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installation"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Mettre à jour %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Clé de chiffrement pour %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Annuler l'installation, relancer le système"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Nouvelle installation"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr "Mettre à jour la précédente installation (non recommandé)"
+msgstr "Mettre à jour l'installation précédente (non recommandé)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1141,50 +1216,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"L'assistant d'installation a détecté que votre système Mandriva installé\n"
+"L'assistant d'installation a détecté que votre système Linux installé\n"
"ne peut être migré vers %s en toute sécurité.\n"
"\n"
"Une nouvelle installation remplaçant l'ancienne est recommandée.\n"
"\n"
-"Attention, vous devriez sauvegarder vos informations personnelles\n"
+"Attention, vous devriez sauvegarder vos données personnelles\n"
"avant de choisir « Nouvelle installation »."
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Configuration IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Pas de place libre pour la partition d'amorçage (bootstrap) de 1 Mo."
-"L'installation va\n"
-"continuer, mais pour que votre système puisse démarrer, vous aurez besoin "
-"de\n"
-"créer la partition d'amorçage avec DiskDrake."
+msgid "Configuring CD/DVD"
+msgstr "Configuration CD/DVD"
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Pas de place libre pour la partition d'amorçage (PPC PReP Boot bootstrap) de "
-"1 Mo.L'installation va\n"
-"continuer, mais pour que votre système puisse démarrer, vous aurez besoin "
-"de\n"
-"créer la partition d'amorçage avec DiskDrake."
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1195,79 +1245,79 @@ msgstr ""
"Changez de CD-ROM !\n"
"Veuillez insérer le CD-ROM nommé « %s » dans votre lecteur puis cliquez sur "
"« OK ».\n"
-"Si vous ne le possédez pas, cliquez sur « Annuler » afin de ne rien installer "
-"à partir de ce CD-ROM."
+"Si vous ne le possédez pas, cliquez sur « Annuler » afin de ne rien "
+"installer à partir de ce CD-ROM."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Recherche des paquetages disponibles..."
+msgstr "Recherche des paquetages disponibles…"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Votre système n'a pas assez d'espace libre pour installer ou de mettre à "
+"Votre système n'a pas assez d'espace libre pour l'installation ou la mise à "
"jour (%dMo > %dMo)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Veuillez choisir entre le chargement ou la sauvegarde de la\n"
-"sélection des paquetages. Le format est le même que celui de l'installation "
-"automatisée (auto_install)."
+"Veuillez choisir entre le chargement ou la sauvegarde de la sélection des "
+"paquetages.\n"
+"Le format est le même que celui de l'installation automatisée (auto_install)."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Charger"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Sauvegarder"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Mauvais fichier"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Sélection du bureau"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "Vous pouvez choisir un profil de bureau de station de travail ."
+msgstr "Vous pouvez choisir un profil de bureau de station de travail."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "La taille sélectionnée est plus importante que la place disponible"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Type d'installation"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1276,88 +1326,130 @@ msgstr ""
"Vous n'avez sélectionné aucun groupe de paquetages.\n"
"Veuillez choisir l'installation minimale désirée :"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Avec X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Installation du paquetage %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Installer les paquetages recommandés"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Avec la documentation de base (recommandé !)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Installation vraiment minimale (et en particulier pas d'urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Préparation de la mise à jour"
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Préparation de l'installation"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Installation du paquetage %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Erreur lors du tri des paquetages :"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Souhaitez-vous tout de même continuer ?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Ré-essayer"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Ignorer ce paquetage"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Ignorer tous les paquetages du média « %s »"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Retourner à la sélection du média et des paquetages"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Erreur lors de l'installation du paquetage %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Configuration post-installation"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-"Assurez vous que le média de mise à jour des modules est dans le lecteur %s"
+"Assurez-vous que le média de mise à jour des modules est dans le lecteur %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Mises à jour"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Maintenant vous pouvez paramétrer le média en ligne."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Ceci vous permet d'installer les mises à jour de sécurité."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Pour paramétrer ces médias, vous devez disposer d'une connexion Internet.\n"
+"\n"
+"Voulez-vous paramétrer le média de mise à jour ?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Ce gestionnaire de téléchargement n’a pas pu être installé"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Essayer de nouveau ?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Échec lors de l'ajout du dépôt"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1369,124 +1461,91 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Vous avez maintenant la possibilité de télécharger les mises à jour\n"
-"créées depuis la sortie de cette distribution. Il peut y avoir des "
-"correctifs de\n"
+"Vous avez maintenant la possibilité de télécharger les paquetages mis à "
+"jour\n"
+"depuis la sortie de cette distribution. Il peut y avoir des correctifs de\n"
"sécurité ou des résolutions d'anomalies.\n"
"\n"
-"Vous devez avoir une connexion internet pour les télécharger.\n"
+"Vous devez avoir une connexion Internet pour les télécharger.\n"
"\n"
"Souhaitez-vous installer les mises à jour ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s sur %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Matériel"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Carte son"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Possédez-vous une carte son ISA ?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Lancez « alsaconf » ou « sndconfig » après l'installation pour configurer la "
-"carte son"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Aucune carte son détectée. Essayez avec « harddrake » après l'installation"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interface graphique"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Réseau et Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Proxys"
+msgstr "Proxies (serveurs mandataires)"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "configuré"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Niveau de sécurité"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
-msgstr "Pare Feu"
+msgstr "Pare-feu"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "activé"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "désactivé"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-"Vous n'avez pas configuré le serveur d'affichage (X11). Êtes-vous sûr de ce "
-"que vous faites ?"
+"Vous n'avez pas configuré le serveur d'affichage X. Êtes-vous sûr que c'est "
+"ce que vous désirez ?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Préparation du programme d'amorçage..."
+msgid "Preparing initial startup program..."
+msgstr "Préparation du chargeur d'amorçage..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr "Merci d'être patient, cela peut prendre quelques minutes..."
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Il semble que votre machine ne soit pas dotée de l'architecture "
-"« NewWorld ».\n"
-"Le programme d'amorçage « yaboot » ne fonctionnera pas.\n"
-"L'installation va continuer, mais vous aurez besoin de « BootX » ou\n"
-"d'une autre méthode pour démarrer votre machine. Le paramètre pour la racine "
-"du noyau est : root=%s"
+msgstr "Merci d'être patient, cela peut prendre quelques minutes…"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1495,17 +1554,17 @@ msgstr ""
"A ce niveau de sécurité, l'accès aux fichiers de la partition Windows sera "
"restreint à l'administrateur."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Insérez une disquette vierge dans le lecteur %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Création de la disquette d'auto-installation..."
+msgstr "Création de la disquette d'auto-installation…"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1516,12 +1575,12 @@ msgstr ""
"\n"
"Souhaitez-vous vraiment quitter maintenant ?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Félicitations"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Redémarrage"
@@ -1616,13 +1675,6 @@ msgid ""
"Users"
msgstr "Utilisateurs"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Réseau"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1664,28 +1716,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Quitter"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Vous avez choisi de mettre à jour votre système vers %s. KDE 3.5 a été \n"
-#~ "détecté sur votre système. L'installation en mode mise à jour du système "
-#~ "ne permet pas de \n"
-#~ "conserver KDE 3.5. Si vous décidez de poursuivre, KDE 4 remplacera KDE 3 "
-#~ "et vous perdrez\n"
-#~ "les paramètres de votre configuration personnelle. \n"
-#~ "Pour mettre à jour en conservant votre configuration personnelle, "
-#~ "veuillez relancer votre \n"
-#~ "système et effectuez cette opération via l'applet de mise à jour Mandriva."
-
-#~ msgid "Proceed"
-#~ msgstr "Poursuivre"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "échec de récupération de [%s]"
diff --git a/perl-install/install/share/po/fur.po b/perl-install/install/share/po/fur.po
index 551300a3b..e9a83597c 100644
--- a/perl-install/install/share/po/fur.po
+++ b/perl-install/install/share/po/fur.po
@@ -1,52 +1,81 @@
-# translation of DrakX.po to furlan
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# Andrea Gracco <graccoandrea@tin.it>, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Andrea Gracco <graccoandrea@tin.it>, 2004
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2004-06-28 17:41+0200\n"
-"Last-Translator: Andrea Gracco <graccoandrea@tin.it>\n"
-"Language-Team: furlan <gft@freelists.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2020-06-18 00:30+0000\n"
+"Last-Translator: Transifex Bot <>\n"
+"Language-Team: Friulian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/fur/)\n"
+"Language: fur\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -55,113 +84,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Rêt"
+msgstr ""
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "Rêt"
+msgstr ""
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
+msgid "NFS setup"
msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
msgstr ""
-#: any.pm:187
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Cartele"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
+msgid "Core Release"
msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Cartele"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
+#: any.pm:422
#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
msgstr ""
-#: any.pm:334
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr ""
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr ""
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -170,87 +233,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr ""
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr ""
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "NFS"
-msgstr "HFS"
+msgstr ""
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rêt"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Par plasè sielç"
+msgstr ""
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permès dineât"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "font zontade %s"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr ""
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Instale"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configurazion"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr ""
@@ -272,25 +335,25 @@ msgstr ""
msgid "Bringing down the network"
msgstr ""
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Instalazion in vore"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -317,347 +380,410 @@ msgstr ""
msgid "maybe"
msgstr ""
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Al è intravignût un fal"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
-msgid "%d installation transactions failed"
-msgstr "Instalazion falade"
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "A si è verificât un fal fatâl: %s."
-#: pkgs.pm:793
-#, fuzzy, c-format
-msgid "Installation of packages failed:"
-msgstr "Instale atualizazions"
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
-#, fuzzy, c-format
-msgid "Workstation"
-msgstr "Viôt le Configurazion"
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
-#: share/meta-task/compssUsers.pl:15
+#: pkgs.pm:929
#, c-format
-msgid "Office Workstation"
+msgid "Installation of packages failed:"
msgstr ""
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:16
#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+msgid "Workstation"
msgstr ""
#: share/meta-task/compssUsers.pl:18
#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr ""
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:27
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:30
+#, c-format
msgid "Multimedia station"
-msgstr "Multimedia"
+msgstr ""
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr ""
-#: share/meta-task/compssUsers.pl:33
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:36
+#, c-format
msgid "Internet station"
-msgstr "Internazionalizazion"
+msgstr ""
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-#: share/meta-task/compssUsers.pl:39
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:42
+#, c-format
msgid "Network Computer (client)"
-msgstr "Informatiche"
+msgstr ""
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr ""
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr ""
-#: share/meta-task/compssUsers.pl:49
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:53
+#, c-format
msgid "Console Tools"
-msgstr "Console"
+msgstr ""
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr ""
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Svilup"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentazion"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr ""
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr ""
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Server Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr ""
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "Grop"
+msgstr ""
-#: share/meta-task/compssUsers.pl:78
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:85
+#, c-format
msgid "Kolab Server"
-msgstr "Server Web"
+msgstr ""
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr ""
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr ""
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/File/_Gnûf"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "Ferme Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:102
+#, c-format
msgid "FTP Server"
-msgstr "Server NTP"
+msgstr ""
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "NIS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Server Samba"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
msgid "Database"
-msgstr "Database"
+msgstr ""
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr ""
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr ""
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Mail"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr ""
-#: share/meta-task/compssUsers.pl:126
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:142
+#, c-format
msgid "Network Computer server"
-msgstr "Informatiche"
+msgstr ""
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Ambient Grafic"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
+msgid "Plasma Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Desktop"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:150
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
msgid "Other Graphical Desktops"
-msgstr "Desktop grafic"
+msgstr ""
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:174
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:218
+#, c-format
msgid "Utilities"
-msgstr "Filipinis"
+msgstr ""
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Viôt le Configurazion"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "<b>Mandriva Expert</b>"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr ""
@@ -671,7 +797,7 @@ msgstr ""
"Al è intravignût un fal, ma no sai ben cemût gjestîlu.\n"
"Continue a to azard."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -686,330 +812,334 @@ msgid "Entering step `%s'\n"
msgstr ""
#: steps_curses.pm:22
-#, fuzzy, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Centri di Control Mandriva Linux"
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr ""
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Desktop"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Desktop"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Desktop"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr ""
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr ""
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
+msgid "Unselect All"
msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
+msgid "Total size: %d / %d MB"
msgstr ""
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Version: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Dimension: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr ""
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Entitât: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr ""
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "cause cal mancje %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "cause che %s no l'è sodisfat"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "ricercje dal miôr pachet %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "par tignî %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr ""
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr ""
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr ""
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr ""
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr ""
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr ""
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instale"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Selezion dal percors"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr ""
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr ""
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Gjestôr Software"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr ""
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr ""
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr ""
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr ""
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "pachet no cognossût"
-msgstr[1] "pachet no cognossût"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr ""
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configure"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr ""
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Selezion dal percors"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Al è intravignût un fal"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr ""
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr ""
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr ""
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instale"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr ""
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Instale"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1018,32 +1148,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr ""
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr ""
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1052,158 +1167,197 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr ""
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
-#, fuzzy, c-format
+#: steps_interactive.pm:430
+#, c-format
msgid "Load"
-msgstr "Locâl"
+msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Salve"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Salve il file"
+msgstr ""
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr ""
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr ""
-#: steps_interactive.pm:581
+#: steps_interactive.pm:583
#, c-format
-msgid "Install suggested packages"
+msgid "Install recommended packages"
msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr ""
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr ""
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr ""
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr ""
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr ""
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr ""
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr ""
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr ""
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Atualizazions"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Fal te zonte de font"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1216,121 +1370,97 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr ""
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr ""
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr ""
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr ""
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Rêt & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr ""
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr ""
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Nivel di Sigurece"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "disabilitât"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr ""
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr ""
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1338,12 +1468,12 @@ msgid ""
"Do you really want to quit now?"
msgstr ""
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Congratulazions"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Torne a inviâ"
@@ -1438,13 +1568,6 @@ msgid ""
"Users"
msgstr "Utents"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rêt"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1486,22 +1609,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Jessì"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Desktop"
-
-#~ msgid "All"
-#~ msgstr "Ducj"
-
-#~ msgid "TV card"
-#~ msgstr "Schede TV"
-
-#~ msgid "Boot"
-#~ msgstr "Inviament"
-
-#~ msgid "Users"
-#~ msgstr "Utents"
-
-#~ msgid "Networking"
-#~ msgstr "Rêt"
diff --git a/perl-install/install/share/po/ga.po b/perl-install/install/share/po/ga.po
index 4af57a4c9..fc5b98285 100644
--- a/perl-install/install/share/po/ga.po
+++ b/perl-install/install/share/po/ga.po
@@ -1,50 +1,82 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
# Alastair McKinstry <mckinstry@computer.org>, 2002
-#
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-09-12 18:04+0200\n"
-"Last-Translator: Alastair McKinstry <mckinstry@computer.org>\n"
-"Language-Team: Irish <ga@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2020-06-18 00:30+0000\n"
+"Last-Translator: Transifex Bot <>\n"
+"Language-Team: Irish (http://www.transifex.com/MageiaLinux/mageia/language/"
+"ga/)\n"
+"Language: ga\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : "
+"4);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "For kids"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "For family!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "For developers!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/09_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Thank you!"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/10_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Be Free!"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "An bhfuil ceann eile agat?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -53,113 +85,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Líonra (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Líonra (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Líonra (NFS)"
-#: any.pm:165
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr "Cumraigh NFS"
+
+#: any.pm:225
#, c-format
-msgid "URL of the mirror?"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:171
+#: any.pm:229
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Hostname missing"
msgstr ""
-#: any.pm:182
+#: any.pm:230
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Comhadlann"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
msgstr ""
-#: any.pm:187
+#: any.pm:300
#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
+msgid "Core Release"
msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
-msgstr "Cumraigh NFS"
+msgid "Tainted Release"
+msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Comhadlann"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Earráid ag oscailt %s do scríobh: %s"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
-#: any.pm:334
-#, fuzzy, c-format
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
msgid "Looking at packages already installed..."
-msgstr "Roghnaigh pacáistí ..."
+msgstr ""
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Ag cúrdach pacáistí le húasgrádú..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -168,87 +234,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Earráid ag léamh comhad %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Roghnaigh pacáistí ..."
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Líonra"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Roghnaight do theangam le do thoil."
+msgstr ""
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Tá an comhad ann cheana. Forscríobh?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Cead diúltaithe"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "Tá comhad %s lódailte."
+msgstr ""
-#: any.pm:1234
-#, fuzzy, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Ní féidir liom rann eile a cur isteach"
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Suiteáil"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "cumraíocht"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Is gá %s a fhormáidiú freisin"
@@ -270,25 +336,25 @@ msgstr "Ag tosnú suas an ghréasán"
msgid "Bringing down the network"
msgstr "Ag dúnadh síos an ghreasán"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Pointe taca dublach %s"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -315,350 +381,413 @@ msgstr "deas"
msgid "maybe"
msgstr "b'fhéidir"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Gan cur síos"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Tharla earráid"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "Theip ag feistiú"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Ag feistiál pacáiste %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Stáisiún Oibre"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Stáisiún Oibre"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Stáisiún Cluichí"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Stáisiún ilmheánach"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr ""
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Stáisiún Idirlíon"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-#: share/meta-task/compssUsers.pl:39
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:42
+#, c-format
msgid "Network Computer (client)"
-msgstr "Printéir Gréasán (lpd)"
+msgstr ""
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr ""
-#: share/meta-task/compssUsers.pl:45
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:49
+#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "An bhfuil tú ag iarraidh an cumraíocht a thrial?"
+msgstr ""
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Uirlisí Consóil"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr ""
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Forbairt"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Doiciméadú"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr ""
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr ""
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Freastalaí Lín"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Grúpearraí"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Freastalaí Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr ""
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
msgid "Internet gateway"
-msgstr "suimiúil"
+msgstr ""
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Ríomhphost/Nuacht"
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Freastalaí Printéir"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Freastalaí Eolaire"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Freastalaí FTP:"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "DNS/NIS "
+msgstr ""
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Ainm Fearannas"
+msgstr ""
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Freastalaí Printéir"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Freastalaí NIS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Bunachar Sonraí"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Greasan/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Post"
-#: share/meta-task/compssUsers.pl:115
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:129
+#, c-format
msgid "Postfix mail server"
-msgstr "Freastalaí Printéir"
+msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr ""
-#: share/meta-task/compssUsers.pl:126
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:142
+#, c-format
msgid "Network Computer server"
-msgstr "Cláréadan Gréasán"
+msgstr ""
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Timpeallacht Ghrafach"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Stáisiún KDE"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Stáisiún Gnome"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Deasc"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Deasc Graphaicí Eile"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Uirlisí"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Freastalaí SSH"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Seirbishí"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Cumraigh Idirlíon"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Cumraíocht Gréasánú"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Bainteach le hIdirlíon"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Cumraigh printéir"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -669,7 +798,7 @@ msgstr ""
"Ta earraid ann, níl a fhios agam conas é a cheartú.\n"
"Lean ort, ar do phriacal féin."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -685,329 +814,336 @@ msgstr "Ag tosnú ar céim `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Suiteáil Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Suiteáil %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr ""
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Eirigh as Feistiú"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Deasc"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Deasc"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Deasc"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Roghnú Grúpa Pacáistí"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr ""
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Méid iomlán: %d / %d MB"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pacáiste mícheart"
+msgid "Total size: %d / %d MB"
+msgstr "Méid iomlán: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Leagan: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Méid: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Tábhacht: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr ""
-#: steps_gtk.pm:444
-#, fuzzy, c-format
+#: steps_gtk.pm:466
+#, c-format
msgid "due to missing %s"
-msgstr "kdesu ar iarraidh"
+msgstr ""
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr ""
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr ""
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr ""
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr ""
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr ""
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr ""
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr ""
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr ""
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr ""
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Feistiú"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Roghnú Grúpa Pacáistí"
+msgstr ""
-#: steps_gtk.pm:499
-#, fuzzy, c-format
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
msgid "Updating package selection"
-msgstr "Roghnú Grúpa Pacáistí"
+msgstr ""
-#: steps_gtk.pm:504
-#, fuzzy, c-format
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
msgid "Minimal install"
-msgstr "Eirigh as Feistiú"
+msgstr ""
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Bainistíocht Bhogearraí"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr ""
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Ag Feistiú"
-#: steps_gtk.pm:564
-#, fuzzy, c-format
+#: steps_gtk.pm:590
+#, c-format
msgid "No details"
-msgstr "Sonraí"
+msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Am fagtha "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Ag meastú"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d pacáistí"
-msgstr[1] "%d pacáistí"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+msgstr[4] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Coimriú"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Cumraigh"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
msgid "not configured"
-msgstr "Cumraigh"
-
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Roghnú Grúpa Pacáistí"
+msgstr ""
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Tharla earráid"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Roghnaigh leagan amach do mhéarchláir"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr ""
-#: steps_interactive.pm:144
-#, fuzzy, c-format
+#: steps_interactive.pm:153
+#, c-format
msgid "Install/Upgrade"
-msgstr "Feistiúi/Uadgrádaigh"
+msgstr ""
-#: steps_interactive.pm:148
-#, fuzzy, c-format
+#: steps_interactive.pm:157
+#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Feistigh nó uasgrádaigh ?"
+msgstr ""
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Feistiú"
+msgstr "Suiteáil"
-#: steps_interactive.pm:152
-#, fuzzy, c-format
+#: steps_interactive.pm:161
+#, c-format
msgid "Upgrade %s"
-msgstr "Uasgrádaigh"
+msgstr ""
-#: steps_interactive.pm:170
-#, fuzzy, c-format
+#: steps_interactive.pm:184
+#, c-format
msgid "Encryption key for %s"
-msgstr "Ní mar a chéile na pasfhocail"
+msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Suiteáil"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1016,32 +1152,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Ag cumraigh IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1050,158 +1171,197 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Ag curdach do na pacáistí atá ar fáil..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Lód"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Sábháil"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Lódáil comhad"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Roghnú Grúpa Pacáistí"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
-#: steps_interactive.pm:574
-#, fuzzy, c-format
+#: steps_interactive.pm:576
+#, c-format
msgid "Type of install"
-msgstr "Roghnaigh pacáistí a feistiú ..."
+msgstr ""
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Le X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Ag feistiál pacáiste %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr ""
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr ""
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Ag Ullmhaigh feistiú"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Ag feistiál pacáiste %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr ""
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Lean ar aghaidh ar aon nós?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Atriail"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Roghnú Grúpa Pacáistí"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Ag feistiál pacáiste %s"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Cumraíocht Iar-feistú"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Leasuithe"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1214,121 +1374,97 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s ar %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Crua-earraí"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Carta Fuaim"
-#: steps_interactive.pm:917
-#, fuzzy, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "An bhfuil ceann eile agat?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Comhéadan grafach"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Gréasán agus Idirlíon"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Ionadaithe"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "cumraithe"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Leibhéal Slándála"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Bac slándála"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "díchumasaithe"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Ag Ullmhaigh ríomhchlar thosnaithe..."
-
-#: steps_interactive.pm:1024
-#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Cur isteach diosca folamh sa dioscthiomant %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr ""
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1336,12 +1472,12 @@ msgid ""
"Do you really want to quit now?"
msgstr ""
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Comhghairdeas"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Atosaigh"
@@ -1436,13 +1572,6 @@ msgid ""
"Users"
msgstr "Úsáideoirí"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Líonrú"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1484,94 +1613,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Scoir"
-
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Sabháil i gcomhad"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Deasc"
-
-#, fuzzy
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Teip ar glaoch `fork': %s"
-
-#, fuzzy
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Cruthaigh flapach bootáil"
-
-#~ msgid "Replay"
-#~ msgstr "Athlódaigh"
-
-#~ msgid "Automated"
-#~ msgstr "Uathoibríoch"
-
-#, fuzzy
-#~ msgid "Save packages selection"
-#~ msgstr "Roghnú Grúpa Pacáistí"
-
-#, fuzzy
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Céard a theastaíonn uait a dhéanamh?"
-
-#~ msgid "All"
-#~ msgstr "Gach Rud"
-
-#~ msgid "TV card"
-#~ msgstr "Carta Telefís"
-
-#~ msgid "Boot"
-#~ msgstr "Tosú"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Deimniú"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "New Theme"
-#~ msgstr "Téama Nua"
-
-#~ msgid "Skype"
-#~ msgstr "Skype"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d pacáistí"
-#~ msgstr[1] "%d pacáistí"
-
-#~ msgid "%d packages"
-#~ msgstr "%d pacáistí"
-
-#~ msgid "Language"
-#~ msgstr "Roghnaigh do theanga"
-
-#~ msgid "License"
-#~ msgstr "Ceadúnas"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Roghnaigh rang feistiú"
-
-#~ msgid "Formatting"
-#~ msgstr "Formáidiú"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Roghnaigh pacáistí ..."
-
-#~ msgid "Users"
-#~ msgstr "Úsáideoirí"
-
-#~ msgid "Networking"
-#~ msgstr "Líonrú"
-
-#~ msgid "Configure X"
-#~ msgstr "Cumraigh X"
diff --git a/perl-install/install/share/po/gl.po b/perl-install/install/share/po/gl.po
index 098cb6fe0..e55fc30bd 100644
--- a/perl-install/install/share/po/gl.po
+++ b/perl-install/install/share/po/gl.po
@@ -1,55 +1,83 @@
-# translation of DrakX to Galician
-#
-# Jesús Bravo Álvarez (mdk) <jba@pobox.com>, 2001.
-# Leandro Regueiro <leandro.regueiro@gmail.com>, 2004, 2005, 2006, 2008.
-#
-# Proxecto Trasno http://trasno.net
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Alejo Pacín Jul <alejopj@gmail.com>, 2009
+# Jesús Bravo Álvarez (mdk) <jba@pobox.com>, 2001
+# Leandro Regueiro <leandro.regueiro@gmail.com>, 2004-2006,2008
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-gl\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2008-04-13 20:40+0100\n"
-"Last-Translator: Leandro Regueiro <leandro DOT regueiro AT gmail DOT com>\n"
-"Language-Team: Galician <proxecto@trasno.net>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Galician (http://www.transifex.com/MageiaLinux/mageia/"
+"language/gl/)\n"
+"Language: gl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "O seu escritorio nunha chave USB"
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "A distribución de Mandriva Linux 100%% código aberto"
+msgid "For kids"
+msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Explore Linux de forma sinxela con Mandriva One"
+msgid "For family!"
+msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Un escritorio Mandriva Linux completo, son soporte"
+msgid "For developers!"
+msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/09_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: distribucións para as necesidades de cada un"
+msgid "Thank you!"
+msgstr ""
-#: any.pm:109
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Ten soportes suplementarios adicionais?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -62,94 +90,57 @@ msgstr ""
"\n"
"Ten algún soporte de instalación suplementario para configurar?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Rede (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Rede (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Rede (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Cal é o URL do sitio espello?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "O URL debe comezar por ftp:// ou por http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Contactando co sitio web de Mandriva Linux para obte-la lista de sitios "
-"espello dispoñibles..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Fallo ó contactar co sitio web de Mandriva Linux para obte-la lista de "
-"sitios espello dispoñibles"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Escolla un sitio espello dende o que obte-los paquetes"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Configuración de NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Introduza o nome de máquina e o directorio do soporte NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Falta o nome de máquina"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "O directorio debe comezar por \"/\""
-#: any.pm:237
-#, fuzzy, c-format
+#: any.pm:234
+#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Cal é o nome de máquina da montaxe NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Directorio"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
-msgstr ""
+msgstr "Suplementario"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -158,23 +149,90 @@ msgstr ""
"Non se puido atopar un ficheiro de lista de paquetes neste sitio espello.\n"
"Asegúrese de que a localización é a correcta."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Buscando os paquetes que xa están instalados..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Buscando paquetes para actualizar..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Eliminando paquetes antes de actualizar..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -182,93 +240,93 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Vanse eliminar os seguintes paquetes para poder actualiza-lo seu sistema: %"
-"s\n"
+"Vanse eliminar os seguintes paquetes para poder actualiza-lo seu sistema: "
+"%s\n"
"\n"
"\n"
"Desexa eliminar estes paquetes?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Erro ó le-lo ficheiro %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Renomeáronse os seguintes discos:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (chamado anteriormente %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rede"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Escolla un soporte"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "O ficheiro xa existe. ¿Desexa sobreescribilo?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permiso denegado"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Nome NFS incorrecto"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "O soporte %s é incorrecto"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Non se pode captura-la pantalla antes de face-las particións"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Poderanse facer capturas de pantalla despois de instalar en %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalación"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configuración"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Tamén debe formatar %s"
@@ -292,22 +350,22 @@ msgstr "Activando a rede"
msgid "Bringing down the network"
msgstr "Desactivando a rede"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Por favor, agarde, recuperando o ficheiro"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "Incapaz de engadir o soporte"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Copiando algúns paquetes dos discos para un uso posterior"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Copiando"
@@ -337,7 +395,24 @@ msgstr "bo"
msgid "maybe"
msgstr "indiferente"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Non hai información xml do soporte \"%s\", só resultado parcial para o "
+"paquete %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Sen descrición"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -346,75 +421,76 @@ msgstr ""
"Non se pode instalar algúns paquetes solicitados por %s:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Ocorreu un erro"
+msgstr "Ocorreu un erro:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Ocorreu un erro moi grave: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "fallaron %d transaccións de instalación"
+msgstr "Erraron %d transaccións de instalación"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Instalando o paquete %s"
+msgstr "Errou a instalación de paquetes:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Estación de traballo"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Estación de Traballo de Oficina"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programas de oficina: procesadores de texto (OpenOffice.org Writer, Kword), "
-"follas de cálculo (OpenOffice.org Calc, Kspread), visualizadores de pdf, etc"
+"Programas de oficina: procesadores de texto (LibreOffice Writer, Kword), "
+"follas de cálculo (LibreOffice Calc, Kspread), visualizadores de pdf, etc"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Programas de oficina: procesadores de texto (kword, abiword), follas de "
-"cálculo (kspread, gnumeric), visualizadores de pdf, etc"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Estación de xogos"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programas de diversión: arcade, taboleiros, estratexia, etc"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Estación multimedia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programas de reproducción e edición de son e vídeo"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Estación de Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -423,194 +499,194 @@ msgstr ""
"Conxunto de ferramentas para ler e enviar correo-e e novas (mutt, tin...) e "
"para navegar pola Web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Ordenador de Rede (cliente)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Clientes para diferentes protocolos incluíndo ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Ferramentas para facilita-la configuración do ordenador"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Ferramentas de Consola"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editores, shells, ferramentas de ficheiro, terminais"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Desenvolvemento"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
"Bibliotecas de desenvolvemento de C e C++, programas e ficheiros include"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentación"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Libros e Howtos sobre Linux e o Software Libre"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Soporte para aplicacións de terceiros"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Servidor Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Servidor Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Cortalumes/Encamiñador"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Pasarela de Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Correo/Novas"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Servidor de correo Postfix, servidor de novas Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Servidor de Directorio"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Servidor FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Servidor de Nomes de Dominio e Información de Rede"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Servidor de Compartimento de Impresoras e Ficheiros"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Servidor NFS, servidor Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Bases de datos"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Servidores de bases de datos PostgreSQL e MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Servidores de bases de datos PostgreSQL e MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Correo-e"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Servidor de correo Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Servidores de bases de datos PostgreSQL ou MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Servidores de bases de datos PostgreSQL ou MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Servidor de Redes de Ordenadores"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Servidor NFS, servidor SMB, servidor Proxy, servidor ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Ambiente Gráfico"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Estación de Traballo KDE"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -619,12 +695,12 @@ msgstr ""
"O Ambiente de Escritorio KDE, o ambiente gráfico básico cunha colección de "
"ferramentas que o acompañan"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Estación de Traballo GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -633,67 +709,110 @@ msgstr ""
"Un ambiente gráfico cun conxunto de aplicacións amigables e ferramentas de "
"escritorio"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Escritorio IceWm"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Un ambiente gráfico cun conxunto de aplicacións amigables e ferramentas de "
-"escritorio"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Escritorio LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Outros Escritorios Gráficos"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilidades"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Servidor SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Servidor de Configuración Remota Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Monitorización/Utilidades de Rede"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
"Ferramentas de monitorización, accounting de procesos, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Asistentes de Mandriva"
+msgid "Mageia Wizards"
+msgstr "Asistentes de Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Asistentes para configurar o servidor"
@@ -707,7 +826,7 @@ msgstr ""
"Ocorreu un erro, e o programa non sabe como manexalo de\n"
"maneira limpa. Continúe baixo a súa propia responsabilidade."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -727,254 +846,258 @@ msgstr "Chegando ó paso '%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Instalación de Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Instalación de %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> entre elementos"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Ó servidor Xorg lévalle tempo arrincar. Agarde..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"O seu sistema ten poucos recursos. Pode que teña algún problema\n"
-"ó instalar Mandriva Linux. Se iso acontece, pode intenta-la instalación\n"
+"ó instalar %s. Se iso acontece, pode intenta-la instalación\n"
"en modo texto. Para iso, prema 'F1' cando arrinque dende o CDROM,\n"
"e escriba 'text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Selección de Soportes"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Instalar o Escritorio KDE de Mandriva"
+msgid "Install %s Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Instalar o Escritorio GNOME de Mandriva"
+msgid "Install %s GNOME Desktop"
+msgstr "Instalar o Escritorio GNOME de %s"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Instalación personalizada"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Escritorio IceWm"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Escritorio IceWm"
+msgstr "Escritorio GNOME"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Escritorio IceWm"
+msgstr "Escritorio Personalizado"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Aquí ten unha vista previa do escritorio '%s'."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Prema nas imaxes para ter unha vista previa maior"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Selección de Grupos de Paquetes"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Selección individual de paquetes"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Tamaño total: %d / %d MB"
+msgid "Unselect All"
+msgstr "Deseleccionar Todo"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Paquete erróneo"
+msgid "Total size: %d / %d MB"
+msgstr "Tamaño total: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versión: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Tamaño: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Importancia: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Non pode seleccionar/deseleccionar este paquete"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "debido a que falta %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "debido a %s non satisfeitas"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr ""
+msgstr "tratando de promover %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "para manter %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Non pode seleccionar este paquete xa que non hai espacio dabondo para "
"instalalo"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Vanse instala-los seguintes paquetes"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Vanse elimina-los seguintes paquetes"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Este é un paquete obrigatorio, non se pode deseleccionar"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Non pode deseleccionar este paquete. Xa está instalado"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Non pode deseleccionar este paquete. Ten que ser actualizado"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Amosa-los paquetes seleccionados automáticamente"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalar"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Cargar/Gardar a selección"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Actualizando a selección de paquetes"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Instalación mínima"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Xestión do Software"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Escolla os paquetes que desexa instalar"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instalando"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Sen detalles"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Tempo restante "
+msgstr "Tempo restante:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(estimando...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d paquete"
msgstr[1] "%d paquetes"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Resumo"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configurar"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "non configurado"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Selección de Grupos de Paquetes"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -983,12 +1106,12 @@ msgstr ""
"Atopáronse os seguintes soportes de instalación.\n"
"Se desexa saltar algún deles, pode deseleccionalo agora."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Ten a opción de copiar os contidos dos CDs ó disco duro antes da "
@@ -996,72 +1119,72 @@ msgstr ""
"Esta continuará despois dende o disco duro e os paquetes permanecerán "
"dispoñibles unha vez que o sistema xa estea instalado."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Copiar CDs enteiros"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Ocorreu un erro"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Escolla a disposición do seu teclado"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Esta é a lista completa dos teclados dispoñibles"
+msgstr "Esta é a lista completa dos teclados dispoñibles:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalar/Actualizar"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "¿É unha instalación ou unha actualización?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instalación"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Actualizar %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Clave de cifrado para %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Cancelar a instalación, rearrincar o sistema"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Instalación"
+msgstr "Nova Instalación"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Actualizar unha instalación previa (non recomendado)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1070,38 +1193,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Configurando IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Non hai espacio libre para 1MB de bootstrap! A instalación ha continuar, "
-"pero para arrincar o seu sistema, cómpre crear a partición bootstrap en "
-"DiskDrake"
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
msgstr ""
-"Cómpre crear a PPC PReP Boot bootstrap ! A "
-"instalación vai continuar, pero para arrincar o sistema, terá que a "
-"partición bootstrap con DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1113,21 +1215,21 @@ msgstr ""
"Insira o CD-ROM que teña a etiqueta \"%s\" na unidade e prema Aceptar.\n"
"Se non o ten, prema Cancelar para omiti-la instalación deste CD-ROM."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Buscando os paquetes dispoñibles..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"O seu sistema non ten espacio libre dabondo para a instalación ou "
"actualización (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1136,54 +1238,52 @@ msgstr ""
"Elixa cargar ou gardar a selección de paquetes.\n"
"O formato é o mesmo có dos ficheiros xerados por auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Cargar"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Gardar"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Ficheiro erróneo"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Selección de Grupos de Paquetes"
+msgstr "Selección de Escritorio"
-#: steps_interactive.pm:472
-#, fuzzy, c-format
+#: steps_interactive.pm:460
+#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
-"Pode elixir o seu perfil de escritorio de estación de traballo: KDE, GNOME "
-"ou Personalizado"
+msgstr "Pode escoller o seu perfil de escritorio de estación de traballo."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "O tamaño seleccionado é maior có tamaño dispoñible"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tipo de instalación"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1192,88 +1292,127 @@ msgstr ""
"Non seleccionou ningún grupo de paquetes.\n"
"Seleccione a instalación mínima que desexa:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Con X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instalando o paquete %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "Ca documentación básica (¡recomendado!)"
+msgstr "Coa documentación básica (¡recomendado!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Instalación realmente mínima (especialmente sen urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Preparando a instalación"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instalando o paquete %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Houbo un erro ó ordena-los paquetes:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "¿Continuar de tódolos xeitos?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Volver tentar"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Omitir este paquete"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Omitir tódolos paquetes do soporte \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Volver a soportes e selección de paquetes"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Houbo un erro ó instala-ls paquetes %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Configuración trala instalación"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
"Asegúrese de que o soporte de Módulos de Actualización está na unidade %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Actualizacións"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Vanse instala-los seguintes paquetes"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Fallo ó engadi-lo soporte"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1294,112 +1433,80 @@ msgstr ""
"\n"
"Desexa instala-las actualizacións?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s en %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Tarxeta de son"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Ten unha tarxeta de son ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Execute \"alsaconf\" ou \"sndconfig\" despois da instalación para configura-"
-"la tarxeta de son"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Non se detectou ningunha tarxeta de son. Execute \"harddrake\" trala "
-"instalación"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interface Gráfica"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Rede & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxys"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "configurado"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Nivel de Seguridade"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Cortalumes"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "activado"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "desactivado"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Non configurou as X. Está seguro de que desexa isto?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "Preparando o cargador de arrinque..."
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Semella ser que ten unha máquina Descoñecida ou de Tempos Prehistóricos, e o "
-"cargador de arrinque yaboot non ha funcionar nela. A instalación vai "
-"continuar, pero ha ter que usar BootX ou algún outro recurso para arrincar a "
-"máquina. O argumento do kernel para o sistema de ficheiros raíz é: root=%s"
+msgid "Be patient, this may take a while..."
+msgstr "Sexa paciente, isto pode levar un anaco..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1408,17 +1515,17 @@ msgstr ""
"Con este nivel de seguridade, o acceso ós ficheiros da partición Windows "
"está restrinxido ó administrador."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Insira un disquete baleiro na unidade %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Creando un disquete de instalación automática..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1429,12 +1536,12 @@ msgstr ""
"\n"
"Desexa saír agora?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Noraboa"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Reiniciar"
@@ -1529,13 +1636,6 @@ msgid ""
"Users"
msgstr "Usuarios"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rede"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1578,156 +1678,26 @@ msgid ""
"Exit"
msgstr "Sair"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Descargando o ficheiro %s..."
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Cal é o URL do sitio espello?"
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr ""
-#~ "Non está soportada a actualización dende unha distribución de 32 bits a "
-#~ "unha de 64 bits"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "O URL debe comezar por ftp:// ou por http://"
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr ""
-#~ "Non está soportada a actualización dende unha distribución de 64 bits a "
-#~ "unha de 32 bits"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Seleccionou os seguintes servidores: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Estes servidores están activados por defecto. Non teñen ningún problema "
-#~ "de\n"
-#~ "seguridade coñecido, pero pode ser que se lles atopen algúns. Nese caso,\n"
-#~ "debe asegurarse de actualizar tan rápido como sexa posible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Desexa instalar estes servidores?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Escritorio IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Contactando co sitio espello para obte-la lista dos paquetes "
+#~ "Contactando co sitio web de %s para obte-la lista de sitios espello "
#~ "dispoñibles..."
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Non se puido contactar co sitio espello %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Xerar un disquete de instalación automática"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "A instalación automática pode estar moi automatizada\n"
-#~ "se así se desexa, nese caso tomará o control do disco\n"
-#~ "duro (isto está pensado para a instalación noutro equipo).\n"
-#~ "\n"
-#~ "Pode preferir reproducir outra vez a instalación.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Reproducir"
-
-#~ msgid "Automated"
-#~ msgstr "Automatizada"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Garda-la selección de paquetes"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Desexa usar aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Erro ó instalar aboot, \n"
-#~ "desexa probar a forza-la instalación mesmo se iso destrúe a primeira "
-#~ "partición?"
-
-#~ msgid "All"
-#~ msgstr "Todos"
+#~ "Erro ó contactar co sitio web de %s para obte-la lista de sitios espello "
+#~ "dispoñibles"
-#~ msgid "TV card"
-#~ msgstr "Tarxeta de TV"
-
-#~ msgid "Boot"
-#~ msgstr "Arrinque"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Autenticación"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "Cortalumes Invictus"
-
-#, fuzzy
-#~ msgid "New Theme"
-#~ msgstr "Novo tema para Webmin"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d paquete, %d MB)"
-#~ msgstr[1] "(%d paquetes, %d MB)"
-
-#~ msgid "%d packages"
-#~ msgstr "%d paquetes"
-
-#~ msgid "Language"
-#~ msgstr "Lingua"
-
-#~ msgid "License"
-#~ msgstr "Licenza"
-
-#~ msgid "Installation class"
-#~ msgstr "Clase de instalación"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Estimando"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Escollendo os paquetes"
-
-#~ msgid "Users"
-#~ msgstr "Usuarios"
-
-#~ msgid "Networking"
-#~ msgstr "Rede"
-
-#~ msgid "Configure X"
-#~ msgstr "Configura-las X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Non se puido acceder ós módulos do kernel correspondentes ó seu kernel "
-#~ "(falta o ficheiro %s), isto xeralmente significa que o seu disquete de "
-#~ "arrinque non está sincronizado co soporte de Instalación (cree un novo "
-#~ "disquete de arrinque)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Escolla un sitio espello dende o que obte-los paquetes"
diff --git a/perl-install/install/share/po/he.po b/perl-install/install/share/po/he.po
index d5e74f977..d0207a333 100644
--- a/perl-install/install/share/po/he.po
+++ b/perl-install/install/share/po/he.po
@@ -1,61 +1,91 @@
-# translation of DrakX.po to Hebrew
-# Copyright (C) 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
-# This file is distributed under the GNU GPL license.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-#
-# Ram Matityahu <linuxfun@email.com>, 2003.
-# nadav mavor <nadav@mavor.com>, 2003.
-# el-cuco <cuco3001@yahoo.com>, 2003.
-# Diego Iastrubni <iastrubn@actcom.co.il>, 2003.
-# dovix <dovix2003@yahoo.com>, 2004, 2005.
-# Itay Flikier <itayff@gmail.com>, 2005.
-# Dotan Kamber <kamberd@yahoo.com>, 2007, 2008.
+# Translators:
+# Diego Iastrubni <iastrubn@actcom.co.il>, 2003
+# Dotan Kamber <kamberd@yahoo.com>, 2007-2008
+# dovix <dovix2003@yahoo.com>, 2004-2005
+# el-cuco <cuco3001@yahoo.com>, 2003
+# Itay Flikier <itayff@gmail.com>, 2005
+# nadav mavor <nadav@mavor.com>, 2003
+# Omer I.S. <omeritzicschwartz@gmail.com>, 2020-2021
+# Omer I.S. <omeritzicschwartz@gmail.com>, 2020-2021
+# Ram Matityahu <linuxfun@email.com>, 2003
+# Yaron Shahrabani <sh.yaron@gmail.com>, 2020-2021
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2008-09-30 18:23+0200\n"
-"Last-Translator: Dotan Kamber <kamberd@yahoo.com>\n"
-"Language-Team: Hebrew\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2021-08-14 20:20+0000\n"
+"Last-Translator: Omer I.S. <omeritzicschwartz@gmail.com>\n"
+"Language-Team: Hebrew (http://www.transifex.com/MageiaLinux/mageia/language/"
+"he/)\n"
+"Language: he\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % "
+"1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr "הצטרפו אלינו!"
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr "הפכו אותה לשלכם!"
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr "הבחירה שלך!"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "שולחן העבודה שלך במפתח USB"
+msgid "Office tools"
+msgstr "כלים למשרד"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "הפצת מנדריבה לינוקס שהיא 100%% קוד פתוח"
+msgid "Home entertainment"
+msgstr "בידור ביתי"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "בדוק את לינוקס בקלות עם מנדריבה One"
+msgid "For kids"
+msgstr "לילדים"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "שולחן עבודה מלא של מנדריבה לינוקס, עם תמיכה"
+msgid "For family!"
+msgstr "למשפחה!"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "מנדריבה: הפצות לצרכים של כל אחד"
+msgid "For developers!"
+msgstr "למפתחים!"
-#: any.pm:109
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "תודה רבה!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "עִברו לחירות!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "האם יש לך מקורות התקנה נוספים?"
+msgstr "האם יש לך מאגרים נוספים להתקנה?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -63,95 +93,62 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"המקורות הבאים נמצאו ויעשה בהם שימוש במהלך ההתקנה: %s.\n"
+"המאגרים שלהלן נמצאו ויעשה בהם שימוש במהלך ההתקנה: %s.\n"
"\n"
"\n"
-"האם יש לך מקורות נוספים להתקנה שברצונך להגדיר?"
+"האם יש לך אמצעי התקנה נוספים שברצונך להגדיר?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "תקליטור"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "רשת (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "רשת (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "רשת (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "כתובת URL של אתר המראה?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "על הכתובת להתחיל ב-//:ftp או ב-//:http"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "מתחבר לאתר מנדריבה לינוקס בכדי לקבל רשימה של אתרי מראה זמינים..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "כשל בחיבור לאתר מנדריבה לינוקס בכדי לקבל רשימה של אתרי מראה זמינים"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "עליך לבחור את אתר המראה ממנו יורדו החבילות"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "הגדרת NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr "נא להזין את שם המארח ואת התיקיה בה נמצא מקור ה-NFS"
+msgstr "נא לספק את שם המארח ואת תיקיית מאגר NFS שלך"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "שם המארח חסר"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
-msgstr "על התיקיה להתחיל ב=\"/\""
+msgstr "על כל תיקייה להתחיל עם \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "שם המארח של עיגון ה-NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
-msgstr "ספרייה"
+msgstr "תיקייה"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "תוספים"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -159,23 +156,90 @@ msgid ""
msgstr ""
"אין אפשרות למצוא קובץ המכיל רשימת חבילות במקור זה. נא לוודא שהכתובת תקינה."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "כדאי להפעיל את \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "‏\"%s\" מכילה תוכנה שאינה חופשית.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "מאגר זה מספק עדכוני חבילות למאגר \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "מחפש חבילות שכבר מותקנות..."
+msgstr "מתבצע חיפוש חבילות שכבר הותקנו..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "מאתר חבילות שיש לשדרג..."
+msgstr "מתבצע איתור החבילות לשדרוג..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "מסיר חבילות לפני השדרוג..."
+msgstr "מתבצעת הסרת חבילות לפני השדרוג..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -186,92 +250,92 @@ msgstr ""
"החבילות הבאות יוסרו כדי לאפשר את עדכון המערכת: %s\n"
"\n"
"\n"
-"האם באמת ברצונך להסיר חבילות אלה?\n"
+"להסיר חבילות אלו?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "שגיאה בקריאת הקובץ %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "שמות הכוננ(ים) הבאים שונו:"
+msgstr "שמות הכונן/ים הבאים שונו:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (השם הקודם הוא %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "רשת"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "עליך לבחור מקור"
+msgstr "נא לבחור מאגר"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "הקובץ כבר קיים. לשכתב?"
+msgstr "הקובץ כבר קיים. לדרוס אותו?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "הגישה נדחתה"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "שם NFS לא-תקין"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "המקור %s אינו תקין"
+msgstr "מאגר לא תקין %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "אין אפשרות לשמור תמונות מסך לפני חלוקה למחיצות"
+msgid "Cannot make screenshots before partitioning"
+msgstr "לא ניתן לעשות צילומי מסך לפני החלוקה למחיצות"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "ניתן למצוא את תמונות המסך אחרי התקנה ב%s"
+msgstr "אחרי ההתקנה, ניתן למצוא את צילומי המסך תחת %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "התקנה"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
-msgstr "הגדרות"
+msgstr "הגדרה"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
-msgstr "חובה עליך לפרמט גם את %s"
+msgstr "חובה לפרמט גם את %s"
#: interactive.pm:16
#, c-format
@@ -279,8 +343,8 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"חלק מהחומרה במחשב שלך צריכה מנהלי התקן \"לא חופשיים\" כדי לפעול.\n"
-"אפשר למצוא מידע עליהם ב: %s"
+"חלק מהחומרה במחשב שלך זקוקה למנהלי התקנים ״קנייניים״ כדי לפעול.\n"
+"ניתן למצוא מידע עליהם בכתובת: %s"
#: interactive.pm:22
#, c-format
@@ -292,52 +356,67 @@ msgstr "מאתחל את שירותי הרשת"
msgid "Bringing down the network"
msgstr "מוריד את שירותי הרשת"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "נא להמתין, הקובץ מתקבל"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "אין אפשרות להוסיף את אמצעי ההתקנה"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr "מעתיק מספר חבילות על הכוננים לשימוש עתידי"
+msgstr "מספר חבילות על הכוננים מועתקות לשימוש עתידי"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
-msgstr "מעתיק את התקליטור לכונן הקשיח"
+msgstr "העתקה מתבצעת"
#: pkgs.pm:32
#, c-format
msgid "must have"
-msgstr "חייב להיות"
+msgstr "חובה"
#: pkgs.pm:33
#, c-format
msgid "important"
-msgstr "חשוב"
+msgstr "עם חשיבות"
#: pkgs.pm:34
#, c-format
msgid "very nice"
-msgstr "מומלץ מאוד"
+msgstr "מעולה מאוד"
#: pkgs.pm:35
#, c-format
msgid "nice"
-msgstr "מומלץ"
+msgstr "מעולה"
#: pkgs.pm:36
#, c-format
msgid "maybe"
-msgstr "לא הכרחי"
+msgstr "אולי"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr "אין מידע ב-xml למקור \"%s\", תוצאה חלקית בלבד עבור החבילה %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "ללא תיאור"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -346,75 +425,76 @@ msgstr ""
"לא ניתן להתקין חלק מהחבילות המבוקשות על ידי %s:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "חלה שגיאה"
+msgstr "אירעה שגיאה:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "אירעה שגיאה חמורה: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "לא לשאול שוב"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "%d התקנות נכשלו"
+msgstr "%d העברות ההתקנה נכשלו"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "מתקין חבילה %s"
+msgstr "התקנת החבילות נכשלה:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "תחנת עבודה"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "תחנת עבודה משרדית"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"תוכנות משרד: מעבדי תמלילים (כתבן אופן אופיס, Kword), גיליונות אלקטרונים "
-"(גיליון אופן אופיס, Kspread),מציגי pdf, ועוד"
+"תכניות למשרד: מעבדי תמלילים (LibreOffice Writer,‏ Kword), גיליונות אלקטרונים "
+"(LibreOffice Calc,‏ Kspread), מציגי PDF, ועוד"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"תוכנות משרד: מעבדי טקסט (kword, abiword), גיליונות אלקטרונים (kspread, "
-"gnumeric),מציגי pdf, ועוד"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
-msgstr "תחנת עבודה למשחקים"
+msgstr "תחנת משחקים"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "תוכנות לבידור: ארקייד, לוח, אסטרטגיה, ועוד"
+msgstr "תכניות לבידור: ארקייד, לוח, אסטרטגיה, ועוד"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "תחנת עבודה למולטימדיה"
+msgstr "תחנת מולטימדיה"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "תוכנות להשמעה או עריכה של קול ווידאו"
+msgstr "תכניות להשמעה או עריכה של קול ווידאו"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "תחנת עבודה לאינטרנט"
+msgstr "תחנת אינטרנט"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -422,269 +502,314 @@ msgid ""
msgstr ""
"ערכת כלים לקריאה וכתיבת דוא\"ל וחדשות (pine, mutt, tin..) ולגלישה באינטרנט"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "מחשב רשת (לקוח)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "לקוחות לפרוטוקולים שונים כולל ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "כלי עזר לביצוע הגדרות המחשב שלך"
+msgstr "כלים להקלת ההגדרה של מחשבך"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "כלי מסוף"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "עורכים, מעטפות, כלי קבצים, מסופים"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "פיתוח"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "ספריות פיתוח בC וC++, תוכנות וקבצי include"
+msgstr "ספריות, תכניות וגם קבצים לפיתוח ב־C וב־C‏++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
-msgstr "מסמכים"
+msgstr "תיעוד"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "ספרים ומדריכים לשימוש בלינוקס ותוכנה חופשית"
+msgstr "ספרים ומדריכים לשימוש בלינוקס ותכנה חופשית"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "תמיכה בתוכנות צד שלישי. Linux Standard Base"
+msgstr "‏Linux Standard Base. תמיכה ביישומי צד שלישי"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
-msgstr "שרת איחסון אתרים"
+msgstr "שרת רשת"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "עבודה בקבוצה"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "שרת Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "חומת אש/נתב"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "הגנת המערכת בעת חיבור לאינטרנט"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "דואר/קבוצות דיון"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "שרת דואר Postfix, שרת קבוצות דיון Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "שרת ספרייה"
+msgstr "שרת תיקייה"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "שרת FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "שרת שמות מתחם ומידע רשת"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "שרת שיתוף קבצים ומדפסות"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
-msgstr "שרת NFS, שרת סמבה"
+msgstr "שרת NFS, שרת Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
-msgstr "מסדי נתונים"
+msgstr "מסד נתונים"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "שרת מסד נתונים MySQL או PostgreSQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "שרת מסד נתונים MariaDB או PostgreSQL"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "דואר"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "שרת דואר Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "שרת מסד נתונים MySQL או PostgreSQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "שרת מסד נתונים MariaDB או PostgreSQL"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "שרת מחשב רשת"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "שרת NFS, שרת SMB, שרת Proxy, שרת ssh"
+msgstr "שרת NFS, שרת SMB, שרת פרוקסי, שרת מתווך, שרת ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "סביבה גרפית"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "סביבת העבודה KDE"
+msgid "Plasma Workstation"
+msgstr "סביבת שולחן העבודה Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "סביבת שולחן עבודה פופולרית וקלה לשימוש עם מגוון יישומים נלווים"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "סביבת העבודה GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "סביבת שולחן עבודה פופולרית וקלה לשימוש עם מגוון יישומים נלווים"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "שולחן עבודה IceWm"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "סביבת שולחן העבודה Xfce"
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "סביבת שולחן עבודה פופולרית וקלה לשימוש עם מגוון יישומים נלווים"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "סביבת שולחןהעבודה MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "סביבת שולחןהעבודה Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "סביבה גרפית המבוססת על GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "שולחן העבודה LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "שולחן העבודה הקליל בהסבה ל־QT מהדור הבא"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "שולחן העבודה Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "שולחן העבודה LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "סביבות עבודה אחרות"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "סביבות עבודה קלילות כגון Window Maker, Enlightenment, Fvwm, ועוד"
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
-msgstr "תוכנות שרות"
+msgstr "עזרים"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "שרת SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "שרת הגדרה תצורה מרחוק Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "כלי הגדרת וניטור רשת"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "כלי ניטור, בקרת תהליכים, tcpdump , nmap, ..."
+msgstr "צג, כלי ניטור, בקרת תהליכים, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "אשפי מנדריבה"
+msgid "Mageia Wizards"
+msgstr "אשפי Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "אשפים להגדרת השרת שלך"
@@ -698,7 +823,7 @@ msgstr ""
"חלה תקלה, אך איני יודע איך לפתור אותה.\n"
"המשך הפעולה הינו באחריותך בלבד."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -706,348 +831,352 @@ msgid ""
"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
"\"\n"
msgstr ""
-"מספר חבילות חשובות לא הותקנו כראוי.\n"
-"כנראה שיש בעיה בכונן התקליטורים או בתקליטור(י) ההתקנה. יש לבדוק\n"
-"את תקליטור(י) ההתקנה על מחשב מותקן בעזרת \"rpm -qpl media/main/*.rpm\"\n"
+"מספר חבילות חשובות לא הותקנו כהלכה.\n"
+"ייתכן וישנה בעיה בכונן התקליטורים או בתקליטור ההתקנה.\n"
+"יש לבדוק את תקליטור ההתקנה במחשב מותקן באמצעות \"rpm -qpl media/main/*.rpm"
+"\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "נכנס לשלב `%s'\n"
+msgstr "כניסה לשלב „%s”\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "התקנת מנדריבה לינוקס %s"
+msgid "%s Installation %s"
+msgstr "%s התקנה %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> בין רכיבים"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "שרת ה-Xorg מתחיל באטיות, נא להמתין..."
+msgstr "שרת Xorg מופעל לאט. נא להמתין..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"המערכת שלך בעלת משאבים נמוכים. במהלךהתקנת מנדריבה לינוקס עלולות להופיע\n"
-"בעיות. במקרה שכזה, ניתן להתקין בעזרת ממשק טקסטואלי. להתקנה טקסטואלית יש \n"
-"ללחוץ על מקש F1 כאשר מאתחלים מהתקליטור ולהכניס 'text' בשורת הפקודה."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "בחירת מאגר"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "התקנת שולחן העבודה KDE של מנדריבה"
+msgid "Install %s Plasma Desktop"
+msgstr "התקנת %s שולחן העבודה של Plasma"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "התקנת שולחן העבודה GNOME של מנדריבה"
+msgid "Install %s GNOME Desktop"
+msgstr "התקנת %s שולחן העבודה GNOME"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "התקנה מותאמת אישית"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "שולחן עבודה IceWm"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "שולחן העבודה Plasma"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "שולחן עבודה IceWm"
+msgstr "שולחן העבודה GNOME"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "שולחן עבודה IceWm"
+msgstr "שולחן עבודה בהתאמה אישית"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "הנה תצוגה מקדימה של שולחן העבודה %s"
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "יש ללחוץ על התמונה כדי להגדיל את התצוגה המקדימה"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "בחירת קבוצת חבילות לפי נושא"
+msgstr "בחירת קבוצת חבילות"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "בחירת חבילות באופן פרטני"
+msgstr "בחירת חבילות יחידות"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "גודל כללי: %d / %d MB"
+msgid "Unselect All"
+msgstr "ביטול בחירת הכול"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "חבילה פגומה"
+msgid "Total size: %d / %d MB"
+msgstr "גודל כולל: %d / %d מ״ב"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "גרסה: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "גודל: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
-msgstr "%d KB\n"
+msgstr "%d ק״ב\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "חשיבות: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "אי אפשר לבחור/לבטל את החבילה הזו"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "בגלל שחסר %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "עקב תלות שלא מולאה %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr "מנסה לקדם %s"
+msgstr "קידום %s בניסיון"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
-msgstr "בכדי לשמור %s"
+msgstr "על מנת לשמור %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "אי אפשר לבחור בחבילה זו מכיוון שלא נותר מספיק מקום פנוי להתקינה"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "החבילות הבאות עומדות להיות מותקנות"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "החבילות הבאות עומדות להיות מוסרות"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "זוהי חבילה בסיסית, אי אפשר לבטל את בחירתה"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "אין אפשרות לבטל חבילה זו מכיוון שהיא כבר מותקנת"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "לא ניתן לבטל את בחירת חבילה זו, חובה לשדרג אותה"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "הראה חבילות שנבחרו באופן אוטומטי"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "התקנה"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "טעינת/שמירת אזור נבחר"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
-msgstr "עדכון בחירת חבילות"
+msgstr "עדכון החבילות הנבחרות"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
-msgstr "התקנה מינימלית"
+msgstr "התקנה חסכונית"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "תוכנות"
+msgstr "ניהול תוכנה"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
-msgstr "עליך לבחור את החבילות שברצונך להתקין:"
+msgstr "נא לבחור את החבילות שברצונך להתקין"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
-msgstr "מתקין"
+msgstr "התקנה"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "ללא פרטים"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
-msgstr "זמן נותר:"
+msgstr "הזמן שנותר:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
-msgstr "(מעריך...)"
+msgstr "(מתבצע שיערוך...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d חבילה"
msgstr[1] "%d חבילות"
+msgstr[2] "%d חבילות"
+msgstr[3] "%d חבילות"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
-msgstr "סיכום ובדיקת הגדרות"
+msgstr "סיכום"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
-msgstr "הגדרות"
+msgstr "הגדרה"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "לא מוגדר"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "בחירת קבוצת חבילות לפי נושא"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"מקורות התוכנה הבאים זמינים להתקנה.\n"
-"באפשרותך לדלג על חלק מהמקורות על ידי ביטול הסימונים המתאימים."
+"מאגרי ההתקנה שלהלן נמצאו.\n"
+"אם ברצונך לדלג על כמה מהם, ניתן לבטל את סימונם כעת."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"ניתן להעתיק את תכולת התקליטורים לכונן הקשיח לפני תחילת ההתקנה.\n"
"אם אפשרות זו מופעלת, ההתקנה תמשיך מהכונן הקשיח, וכל החבילות מתקליטורי ההתקנה "
"יהיו זמינות אחרי סיום ההתקנה מהכונן הקשיח."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "העתקת תקליטורים שלמים"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
-msgstr "חלה שגיאה"
+msgstr "אירעה שגיאה"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "בשלב זה עליך להגדיר את פרישת המקלדת שלך"
+msgstr "נא לבחור את פריסת המקלדת שלך"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "להלן הרשימה המלאה של המדפסות הזמינות"
+msgstr "להלן רשימת המקלדות הזמינות המלאה:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "התקנה/עדכון"
+msgstr "התקנה/שדרוג"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "האם זו התקנה או שידרוג?"
+msgstr "התקנה או שדרוג?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "התקנה"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
-msgstr "שידרוג %s"
+msgstr "שדרוג %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "מפתח הצפנה עבור %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "ביטול ההתקנה, הפעלת המערכת מחדש"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "התקנה"
+msgstr "התקנה חדשה"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "שדרוג התקנה קודמת (לא מומלץ)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1056,36 +1185,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "מגדיר IDE"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"לא נמצא מקום פנוי עבור bootstrap בגודל 1MB! ההתקנה תמשיך, אבל בכדי לאתחל את "
-"המערכת שלך, יהיה עליך ליצור מחיצת bootstrap באופן ידני בעזרת DiskDrake"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"עליך ליצור PPC PReP Boot bootstrap! ההתקנה תמשיך, אבל בכדי לאתחל את המערכת "
-"יהיה עליך ליצור מחיצת bootstrap באופן ידני בעזרת DiskDrak "
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1093,25 +1203,23 @@ msgid ""
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"יש להחליף תקליטור!\n"
-"\n"
-"עליך להכניס את התקליטור \"%s\" לכונן\n"
-"ולאחר מכן ללחוץ על כפתור \"אישור\". אם תקליטור זה אינו ברשותך,\n"
-"עליך ללחוץ על כפתור \"ביטול\" בכדי לדלג על התקנת חבילות אלו."
+"יש להחליף את התקליטור!\n"
+"נא להכניס את התקליטור בשם \"%s\" לכונן וללחוץ על אישור כשסיימת.\n"
+"אם אינו ברשותך, יש ללחוץ על ביטול כדי למנוע התקנה מתקליטור זה."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "מחפש חבילות זמינות..."
+msgstr "מתבצע חיפוש אחר חבילות זמינות..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
-msgstr "למערכת שלך לא נותר די מקום להתקנה או שדרוג (%dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr "למערכת שלך אין מספיק שטח פנוי להתקנה או לשדרוג (%d מ״ב > %d מ״ב)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1120,53 +1228,52 @@ msgstr ""
"עליך לבחור באם לטעון או לשמור את בחירת החבילות.\n"
"מבנה הקובץ זהה לקובץ auto_install הנוצר באופן אוטומטי."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "הספק"
+msgstr "טעינה"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
-msgstr "שמור"
+msgstr "שמירה"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "קובץ לא-תקין"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "בחירת קבוצת חבילות לפי נושא"
+msgstr "בחירת שולחן עבודה"
-#: steps_interactive.pm:472
-#, fuzzy, c-format
+#: steps_interactive.pm:460
+#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
-"באפשרותך לבחור את מתאר שולחן העבודה של התחנה שלך: KDE, GNOME או מותאם אישית"
+msgstr "אפשר לבחור את פרופיל שולחן העבודה לתחנת העבודה שלך."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "הגודל הנבחר גדול יותר מהמקום הזמין"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "סוג ההתקנה"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1175,87 +1282,129 @@ msgstr ""
"לא נבחרה אף קבוצה של חבילות.\n"
"נא לבחור את ההתקנה המינימלית שברצונך לבצע:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "עם סביבה גרפית (X)"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "מתקין חבילה %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "להתקין את החבילות המומלצות"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "עם מסמכים בסיסיים (מומלץ!)"
+msgstr "עם תיעוד בסיסי (מומלץ!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "התקנה מינימלית אמיתית (בייחוד לא urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "השדרוג בהכנות..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
-msgstr "מכין את ההתקנה"
+msgstr "ההתקנה בהכנות"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
-msgstr "מתקין חבילה %s"
+msgstr "החבילה %s בהליכי התקנה"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "התרחשה שגיאה בסידור חבילות:"
+msgstr "הייתה שגיאה בסידור החבילות:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
-msgstr "האם להמשיך בכל מקרה?"
+msgstr "להמשיך בכל זאת?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr "ניסיון נוסף"
+msgstr "ניסיון חוזר"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr "דלג על חבילה זו"
+msgstr "דילוג על חבילה זו"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "דלג על כל החבילות ממקור \"%s\""
+msgstr "דילוג על כל החבילות ממקור \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
-msgstr "חזרה לבחירת מקורות וחבילות"
+msgstr "חזרה לבחירת מאגרים וחבילות"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "חלה שגיאה בהתקנת החבילה %s"
+msgstr "הייתה שגיאה בהתקנת החבילה %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
-msgstr "מבצע הגדרות לאחר-התקנה"
+msgstr "הגדרה שלאחר ההתקנה"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr "נא לודא שהמקור לעידכונים בכונן %s"
+msgstr "נא לוודא שהמאגר לעדכוני המודולים נמצא בכונן %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "עדכונים"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "כעת אפשר להגדיר את המאגרים המקוונים."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "מאפשר לך להתקין עדכוני אבטחה."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"להגדרת המאגרים הללו, יש צורך בחיבור תקין לאינטרנט.\n"
+"\n"
+"להגדיר את מאגרי העדכון?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "החבילות הבאות עומדות להיות מותקנות"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "לנסות שוב?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "הוספת המאגרים נכשלה"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1271,129 +1420,99 @@ msgstr ""
"ההפצה,\n"
"ועשויות להכיל עדכוני אבטחה ו/או עדכוני תוכנה חשובים.\n"
"\n"
-"להורדת חבילות אלה נדרש חיבור אינטרנט עובד. האם ברצונך לעדכן את המערכת בשלב "
-"זה ?"
+"להורדת חבילות אלה נדרש חיבור אינטרנט עובד. לעדכן את המערכת בשלב זה?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s על %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "חומרה"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "כרטיס קול"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "האם יש לך כרטיס קול ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"עליך להריץ את \"alsaconf\" או \"sndconfig\" אחרי ההתקנה בכדי להגדיר את כרטיס "
-"הקול שלך"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "לא זוהו כרטיסי קול. יש לנסות את האשף \"harddrake\" לאחר ההתקנה"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "ממשק גרפי"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "רשת ואינטרנט"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "שרתים מתווכים"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "מוגדר"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
-msgstr "סף האבטחה המבוקש:"
+msgstr "רמת אבטחה"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "חומת אש"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "פועל"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "מנותק"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "לא הוגדר ממשק גרפי (X). האם אכן ברצונך לבחור אפשרות זו?"
+msgstr "לא הוגדר ממשק גרפי (X). לבחור אפשרות זו?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "מכין את מנהל האתחול..."
+msgid "Preparing initial startup program..."
+msgstr "תכנית ההפעלה הראשונית בהכנות..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
+msgstr "יש להתאזר בסבלנות, זה עלול לקחת זמן..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"נראה כי יש לך מכונת OldWorld או מכונה לא מזוהה, טוען המערכת yaboot לא יעבוד "
-"במקרה זה. ההתקנה תמשך אבל יהיה עליך להשתמש ב-BootX או באמצעי אחר לאתחול "
-"המערכת. משנה גלעין המערכת למערכת קבצי השורש הוא: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
-msgstr "ברמת אבטחה זו, גישה לקבצים במחיצת החלונות תתאפשר רק למנהל המערכת."
+msgstr "ברמת אבטחה זו, הגישה לקבצים במחיצת Windows תוגבל למנהל בלבד."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "נא להכניס תקליטון ריק לכונן %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "יוצר תקליטון הפעלה אוטומטית..."
+msgstr "נוצר תקליטון להתקנה אוטומטית..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1402,14 +1521,14 @@ msgid ""
msgstr ""
"חלק מהשלבים לא הושלמו.\n"
"\n"
-"האם באמת ברצונך לצאת עכשיו?"
+"לצאת עכשיו?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
-msgstr "ברכותינו!"
+msgstr "ברכות"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "הפעלה מחדש"
@@ -1420,19 +1539,19 @@ msgstr "הפעלה מחדש"
msgid ""
"_: Keep these entry short\n"
"Language"
-msgstr "בחירת שפה"
+msgstr "שפה"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr "התאמה למקום"
+msgstr "המקמה"
#: steps_list.pm:17
#, c-format
msgid ""
"_: Keep these entry short\n"
"License"
-msgstr "הסכם משתמש"
+msgstr "רישיון"
#: steps_list.pm:18
#, c-format
@@ -1467,7 +1586,7 @@ msgstr "מקלדת"
msgid ""
"_: Keep these entry short\n"
"Security"
-msgstr "הגדרות אבטחה"
+msgstr "אבטחה"
#: steps_list.pm:25
#, c-format
@@ -1481,7 +1600,7 @@ msgstr "חלוקה למחיצות"
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr "מאתחל"
+msgstr "תבניות"
#: steps_list.pm:29
#, c-format
@@ -1495,7 +1614,7 @@ msgstr "בחירת חבילות"
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "מתקין"
+msgstr "התקנה"
#: steps_list.pm:34
#, c-format
@@ -1504,13 +1623,6 @@ msgid ""
"Users"
msgstr "משתמשים"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "עבודה ברשת"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1530,14 +1642,14 @@ msgstr "הגדרת X"
msgid ""
"_: Keep these entry short\n"
"Summary"
-msgstr "סיכום ובדיקת הגדרות"
+msgstr "סיכום"
#: steps_list.pm:44 steps_list.pm:45
#, c-format
msgid ""
"_: Keep these entry short\n"
"Services"
-msgstr "שרותים"
+msgstr "שירותים"
#: steps_list.pm:46
#, c-format
@@ -1553,78 +1665,14 @@ msgid ""
"Exit"
msgstr "יציאה"
-#~ msgid "Downloading file %s..."
-#~ msgstr "מוריד קובץ %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "שדרוג מהפצת 32ביט להפצת 64ביט אינו נתמך"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "שרוג מהפצת 64ביט להפצת 32 ביט אינו נתמך"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "בחירת החבילות כוללת את השרת(ים) הבא(ים): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "שרתים אלו יופעלו כברירת מחדל. יתכן שאין כרגע בעיות אבטחה ידועות,\n"
-#~ " אך בעיות חדשות עלולות להתגלות מדי פעם. אנו ממליצים על שדרוג תקופתי\n"
-#~ "של תוכנות אלו כדי להגן על המערכת.\n"
-#~ "\n"
-#~ "\n"
-#~ "האם ברצונך להתקין שרתים אלו בשלב זה?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "שולחן עבודה IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "מתחבר לאתר המראה כדי לקבל את רשימת החבילות הזמינות..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "לא יכול להתחבר לאתר המראה %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "בניית תקליטון הפעלה אוטומטית"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "יש באפשרותך לבצע התקנות חוזרות באופן אוטומטי לחלוטין.\n"
-#~ "במקרה זה יימחק כל תוכן הכונן הקשיח!!\n"
-#~ "תכונה זו שימושית להתקנת המערכת על מספר רב של מחשבים.\n"
-#~ "\n"
-#~ "באם אינך רוצה במחיקת כל תוכן הכונן הקשיח יש לבחור במנגנון שחזור ההתקנה.\n"
-
-#~ msgid "Replay"
-#~ msgstr "שחזור התקנה"
-
-#~ msgid "Automated"
-#~ msgstr "אוטומטי"
-
-#~ msgid "Save packages selection"
-#~ msgstr "שמירת בחירת החבילות"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "האם ברצונך להשתמש בaboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "שגיאה בהתקנת aboot,\n"
-#~ "האם לנסות לאלץ את ההתקנה אפילו אם המחיצה הראשונה עלולה להיהרס?"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "הכתובת של אתר המַּראָה?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "על הכתובת להתחיל עם ‏ftp://‎ ‏או ‏‏http://‎"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "יש לבחור אתר מראָה לקבלת החבילות דרכו"
diff --git a/perl-install/install/share/po/hi.po b/perl-install/install/share/po/hi.po
index b1dbe7707..e12aaf06e 100644
--- a/perl-install/install/share/po/hi.po
+++ b/perl-install/install/share/po/hi.po
@@ -1,53 +1,82 @@
-# translation of DrakX-hi.po to हिन्दी, भारत (Hindi, India)
-# Copyright (C) 2003,2004 Free Software Foundation, Inc.
-# धनञ्जय शर्मा (Dhananjaya Sharma) <dysxhi@yahoo.co.in>, 2003, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Panwar108 <caspian7pena@gmail.com>, 2020
+# धनञ्जय शर्मा (Dhananjaya Sharma) <dysxhi@yahoo.co.in>, 2003-2004
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-hi\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2004-04-04 21:54+0530\n"
-"Last-Translator: धनञ्जय शर्मा (Dhananjaya Sharma) <dysxhi@yahoo.co.in>\n"
-"Language-Team: हिन्दी (Hindi) <dysxhi@yahoo.co.in>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2020-07-24 16:08+0000\n"
+"Last-Translator: Panwar108 <caspian7pena@gmail.com>\n"
+"Language-Team: Hindi (http://www.transifex.com/MageiaLinux/mageia/language/"
+"hi/)\n"
+"Language: hi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3\n"
-"Plural-Forms: nplurals=2; plural=(n!=1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "कया आपके पास एक और है ?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -56,117 +85,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "सीडी-रॉम"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "%s नेटवर्क"
+msgstr ""
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "%s नेटवर्क"
+msgstr ""
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
+msgid "NFS setup"
msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
msgstr ""
-"उपलब्ध मिररों की सूची को प्राप्त करने के लिए मैनड्रिव लिनक्स वेब-स्थल से सम्पर्क किया जा "
-"रहा है..."
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "डिरेक्ट्री"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"उपलब्ध मिररों की सूची को प्राप्त करने के लिए मैनड्रिव लिनक्स वेब-स्थल से सम्पर्क किया जा "
-"रहा है..."
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "एक मिरर का चयन करें जहाँ से पैकेजों को प्राप्त करना है"
+msgid "Core Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "डिरेक्ट्री"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "%s को %s पर नहीं पाया जा सका"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
-#: any.pm:334
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "पहिले से संसाधित पैकेजों को देखा जा रहा है..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "उन्नयन के लिये पैकेजों को खोजा जा रहा है..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -179,87 +238,87 @@ msgstr ""
"\n"
"क्या वास्तव में इन पैकेजों को हटाना चाहते है?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%s संचिका को पढ़ने में त्रुटि"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "निम्नलिखित पैकेजों का संसाधन करना आवश्यक है:\n"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "एचटीटीपी"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "एफटीपी"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "एनएफ़एस"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "नेटवर्क"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "कृपया चयन करें"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "फाईल पहले से है पुन बनाएँ"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "अनुमति नहीं है"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "%s माध्यम को जोड़ा गया"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "विभाजनीकरण के पूर्व स्क्रीन-चित्र-माला को नहीं लिया जा सकता है"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "%s में संसाधन के उपरान्त स्क्रीन चित्र-माला उपलब्ध होगी"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "संसाधन हो रहा है"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "संरचना"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "आपको %s को भी एकसार करना चाहिए"
@@ -284,25 +343,25 @@ msgstr "नेटवर्क को लाया जा रहा है"
msgid "Bringing down the network"
msgstr "नेटवर्क को लाया जा रहा है"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "खोज जारी है"
+msgstr "कॉपी किया जा रहा है"
#: pkgs.pm:32
#, c-format
@@ -329,82 +388,96 @@ msgstr "बहुत अच्छा"
msgid "maybe"
msgstr "हो सकता है"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "कोई वर्णन नहीं"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
msgstr "एक त्रुटि हो गयी है"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "एक घातक त्रुटि घटित हुई है: %s "
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d संसाधन क्रिया-कलाप असफ़ल"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "%s पैकेज का संसाधन हो रहा है"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "कार्यकेंद्र"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "ऑफ़िस कार्यकेन्द्र"
-#: share/meta-task/compssUsers.pl:17
-#, fuzzy, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"ऑफ़िस के कार्यक्रम: शब्दसंसाधक (केवर्ड, आबीवर्ड), स्प्रेडशीट (केस्प्रेड, जीन्यूमेरिक), पीडीएफ़ "
-"अवलोक्क, इत्यादि"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"ऑफ़िस के कार्यक्रम: शब्दसंसाधक (केवर्ड, आबीवर्ड), स्प्रेडशीट (केस्प्रेड, जीन्यूमेरिक), पीडीएफ़ "
-"अवलोक्क, इत्यादि"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "खेल स्टेशन"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "मनोरंजक कार्यक्रम: आरकेड, बोर्ड, व्यूह-रचना, इत्यादि "
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "मल्टीमीडीया केन्द्र"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "ध्वनि और वीडीयो के खेलने वाले/संपादन करने वाले कार्यक्रम"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "इन्टरनेट केन्द्र"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -413,205 +486,205 @@ msgstr ""
"विपत्र और समाचारों को पढ़ने और भेजने के लिए (मट, टिन...) और वेब को ब्राउज़ करने के लिए "
"औज़ारों का समूह"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "नेटवर्क कम्प्यूटर (ग्राहक)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "एस०एस०एच० को शामिल करते हुए विभिन्न प्रोटोकॉलों के लिए ग्राहक"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "आपके कम्प्यूटर की संरचना कार्य को सहज बनाने हेतु अनेक औजार"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "कन्सोल के औज़ार"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "अनेकों संपादक, कोश, संचिका औजार, टर्मिनल"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "विकास"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "सी और सी++ विकास लेखागार, कार्यक्रम और इन्क्लूड संचिकायें"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "प्रलेखन"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "लिनक्स और मुक्त सॉफ़्टवेयर पर किताबें और कैसे-करेंअस्तकें"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "एल०एस०बी०"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "लिनक्स मानकीकरण आधार ! त्रितीय पक्ष कार्यक्रमों को समर्थन"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "वेब सर्वर"
-#: share/meta-task/compssUsers.pl:74
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:80
+#, c-format
msgid "Apache"
-msgstr "रास्ता"
+msgstr ""
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "ग्रुपवेयर"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "कोलाब सर्वर"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "अग्नि-भीतिका/रूटर"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "इन्टरनेट गेटवे"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/संचिका (F)/नवीन (_N)"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "पोस्टफ़िक्स विपत्र सर्वर"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "निर्देशिका जिससे पुनःस्थापन करना है"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:102
+#, c-format
msgid "FTP Server"
-msgstr "एन०टी०पी० सर्वर"
+msgstr "एफटीपी सर्वर"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "डीएनएस"
+msgstr ""
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "डोमेन नाम सर्वर"
+msgstr ""
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "प्रिंटर सर्वर"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "सॉबा सर्वर"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "डाटाबेस"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "पोस्टग्रीसीक्यूअल या माईसीक्यूअल डाटाबेस सर्वर"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "वेब/एफ़०टी०पी०"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "आपाचे, प्रो-एफ़०टी०पी०डी०"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "विपत्र"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "पोस्टफ़िक्स विपत्र सर्वर"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr "पोस्टग्रीसीक्यूअल या माईसीक्यूअल डाटाबेस सर्वर"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "नेटवर्क कम्प्यूटर सर्वर"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "एन०एफ़०एस० सर्वर, एस०एम०बी० सर्वर, प्रोक्सी सर्वर, एस०एस०एच० सर्वर"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "सचित्र वातावरण"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "केडीई कार्यकेन्द्र"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "के डेस्कटाप वातावरण, मूलभूत सचित्र वातावरणसंलग्न औजारों के एक समूह के साथ"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "गनोम कार्यकेन्द्र"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -619,68 +692,112 @@ msgid ""
msgstr ""
"एक सचित्र वातावरण, उपयोगकर्ता-मित्रवत कार्यक्रमों के समुच्चय और डेस्कटाप औजारों के साथ"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "डेस्कटाप"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"एक सचित्र वातावरण, उपयोगकर्ता-मित्रवत कार्यक्रमों के समुच्चय और डेस्कटाप औजारों के साथ"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "अन्य सचित्र डेस्कटाप"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "आईसीडब्लूएम, विण्डो मेकर, एनलाइटमेन्ट, एफ़वीडब्लूएम, इत्यादि"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "यूटिलिटीज़"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "एसएसएच सर्वर"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "वेबकैम"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "टर्मिनल सर्वर संरचना"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "नेटवर्क मॉनीट्रिंग"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "<b>मैनड्रिव स्टोर</b>"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "\"%s\" प्रिंटर की संरचना में असफ़ल !"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -692,7 +809,7 @@ msgstr ""
"किया जायें ।\n"
"अपने जोखिम पर जारी रहें । "
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -712,333 +829,333 @@ msgstr "`%s' चरण में प्रवेश \n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "मैनड्रिव लिनक्स संसाधन %s"
+msgid "%s Installation %s"
+msgstr ""
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> इकाईयों के मध्य "
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"आपका सिस्टम साधनों के अभाव से ग्रसित है । मैनड्रिव लिनक्स को संसाधित करने में, \n"
-"आपको कुछ समस्या हो सकती है । यदि ऐसा होता है, तो आप इसके बजाय एक पाठ-संसाधनको करके "
-"देख सकते है, ऐसा करने के लिए, \n"
-"सीडीरॉम से बूट होने के समय `F1' को दबायें, और फ़िर `text' को इन्टर करें ।"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "मीडिया चयन"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "निम्नतम संसाधन"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "डेस्कटाप"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "डेस्कटाप"
+msgstr "GNOME डेस्कटॉप"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "डेस्कटाप"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "पैकेज समूह चयन"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "अलग-अलग पैकेजों का चयन"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "कुल आकार: %d / %d एम०बी०"
+msgid "Unselect All"
+msgstr "सभी को अचयनित करें"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "निकृष्ट पैकेज"
+msgid "Total size: %d / %d MB"
+msgstr "कुल आकार: %d / %d एम०बी०"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "संस्मरण: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "आकार:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d केबी\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "महत्ता: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "आप इस पैकज को चयनित/अचयनित नहीं कर सकते है"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s विलुप्त होने के कारण"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "असन्तुष्ट %s के कारण"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%s को प्रोत्साहित करने का प्रयास"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s को रखने के लिए"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "आप इस पैकज का चयन नहीं कर सकते है क्योंकि और अधिक स्थान संसाधन के लिए नहीं बचा है"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "निम्नलिखित पैकजों का संसाधन होने जा रहा है"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "निम्नलिखित पैकेजों को हटाया जाने वाला है"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "यह एक अति आवश्यक पैकेज है, इसे अचयनित नहीं किया जा सकता है"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "आप इस पैकेज को अचयनित नहीं कर सकते है । इसे पहिले से ही संसाधित किया जा चुका है"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "इस पैकज को अचयनित नहीं करा जा सकता है । इसे उन्नयन किया जाना चाहिए"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "स्वतः चयनित पैकेजों को दिखायें"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "संसाधन"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "पैकेज चयन"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "चयनित पैकेजों का उन्नयन किया जा रहा है"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "निम्नतम संसाधन"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "सॉफ़्टवेयर प्रबंधक"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "उन पैकेजों का चयन करें जिन्हें आप संसाधित करना चाहते है"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "संसाधन हो रहा है"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "कोई विवरण नहीं"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "शेष समय"
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "अनुमान लगाया जा रहा है"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d पैकेज"
-msgstr[1] "%d पैकेज"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "सारांश"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "संरचना"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "संरचित नहीं"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "पैकेज समूह चयन"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "एक त्रुटि हो गयी है"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "कृपया अपने की-बोर्ड खाका का चयन करें ।"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "यह है उपलब्ध देशों की सम्पूर्ण सूची"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "संसाधन/उन्नयन"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "यह एक संसाधन या एक उन्नयन है?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "संसाधन"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "उन्नयन %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s के लिए गूढ़लिखित कुँजी"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "संसाधन हो रहा है"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1047,116 +1164,90 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "आई०डी०ई०"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "आईडीई की संरचना की जा रही है"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"१ एमबी बूटस्ट्रैप के लिए कोई मुक्त स्थान नहीं ! संसाधन जारी रहेगा, परन्तु आपके तंत्र को बूट "
-"करने के लिए, आपको डिस्कड्रैक से एक बूटस्ट्रैप विभाजन का निर्माण करना होगा "
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
msgstr ""
-"१ एमबी बूटस्ट्रैप के लिए कोई मुक्त स्थान नहीं ! संसाधन जारी रहेगा, परन्तु आपके तंत्र को बूट "
-"करने के लिए, आपको डिस्कड्रैक से एक बूटस्ट्रैप विभाजन का निर्माण करना होगा "
-#: steps_interactive.pm:369
-#, fuzzy, c-format
+#: steps_interactive.pm:354
+#, c-format
msgid ""
"Change your Cd-Rom!\n"
"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"अपनी सीडी-रॉम को परिवर्तित करें !\n"
-"\n"
-"कृपया \"%s\" लेबिल वाली सीडी-रॉम को अपनी ड्राइव में डालें और डालने के उपरान्त ठीक को "
-"दबायें ठीक को दबायें ।\n"
-"यदि आपके पास यह नहीं है, तो इस सीडी-रॉम से संसाधन ना करने के लिए निरस्त को दबायें ।"
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "उपलब्ध पैकेजों को खोज़ा जा रहा है..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"कृपया चयन करें कि फ़्लापी पर पैकेजों को अधिभारण या सुरक्षित किया जायें ।\n"
-"इसका प्रारूप स्वतः_संसाधन के लिए निर्मित फ़्लापियों की भांति होता है ।"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "लोड"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "सुरक्षित"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "फ़ाइल लोड करें"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "आई०डी०ई०"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "गनोम"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "पैकेज समूह चयन"
+msgstr "डेस्कटॉप चयन"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "चयनित आकार उपलब्ध स्थान से ज्यादा है"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "संसाधन का प्रकार"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1165,87 +1256,126 @@ msgstr ""
"आपने पैकेजों के किसी भी समूह का चयन नहीं किया है ।\n"
"कृपया कम-से-कम जितना आप चाहते है उतने संसाधन का चयन करें:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "एक्स के साथ"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s पैकेज का संसाधन हो रहा है"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "आधार-भूत प्रलेखन के साथ (संस्तुति की जाती है !)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "वास्तविक निम्नत्तम संसाधन (विशेषकर कोई यू०आर०पी०एम०आई० नहीं)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "संसाधन का निर्माण किया जा रहा है"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s पैकेज का संसाधन हो रहा है"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "पैकेजों के आदेश देने में एक त्रुटि हो गयी है:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "कुछ भी हो जारी रहा जायें?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr ""
+msgstr "पुनः प्रयास करें"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "पैकेजों के चयन को सुरक्षित करें"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "पैकेजों के संसाधन में एक त्रुटि हो गयी है:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "संसाधन-उपरान्त संरचना"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "उन्नयन"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "निम्नलिखित पैकजों का संसाधन होने जा रहा है"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "असफ़लता जब माध्यम को जोड़ा जा रहा था..."
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1266,126 +1396,97 @@ msgstr ""
"\n"
"क्या आप इन अपडेटों को संसाधित करना चाहते है ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s पर %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "हार्डवेयर"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "सांउड कार्ड"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "क्या आपके पास एक आई०एस०ऐ० सांउड कार्ड है?"
-
-#: steps_interactive.pm:919
-#, fuzzy, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr "संसाधन के उपरान्त \"sndconfig\" को अपने साउण्ड कार्ड को संरचित करने के लिए चलायें"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"कोई साउण्ड कार्ड नहीं खोजा जा सका । संसाधन के उपरान्त \"harddrake\" को उपयोग करके देखें"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "सचित्र इन्टरफ़ेस"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "नेटवर्क और इन्टरनेट"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "प्रोक्सियां"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "संरचित"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "सुरक्षा स्तर"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "अग्नि-भीतिका"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "सक्रिय है"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "निष्क्रिय"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "आपने एक्स को संरचित नहीं किया है । क्या आप वास्तव में ऐसा चाहते है?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "बूटलोडर को तैयार किया जा रहा है..."
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"आपके पास लगता है कि एक प्राचीन जगत की या अज्ञात मशीन है,\n"
-"याबूट बूटलोडर आपके लिए कार्य नहीं करेगा ।\n"
-"संसाधन जारी रहेगा, परन्तु आपको अपनी मशीन को बूट करने के लिए, \n"
-"बूट-एक्स या किसी अन्य साधन की आवश्यकता होगी"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr "इस सुरक्षा स्तर में, विण्डो विभाजन में संचिकाओं तक पहुँच सिर्फ़ प्रबंधक को हीप्राप्त है।"
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "%s में एक खाली फ़्लापी डालें"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "स्वतः संसाधन फ़्लापी का निर्माण किया जा रहा है..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1396,12 +1497,12 @@ msgstr ""
"\n"
"क्या आप वास्तव में बाहर निकलना चाहते है?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "बधाई हो"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "रीबूट"
@@ -1417,7 +1518,7 @@ msgstr "भाषा"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "स्थानीयकरण"
#: steps_list.pm:17
#, c-format
@@ -1496,13 +1597,6 @@ msgid ""
"Users"
msgstr "उपयोगकर्ताओ"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "नेटवर्किंग"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1545,141 +1639,6 @@ msgid ""
"Exit"
msgstr "निकास"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "संचिकायें प्रेषित की जा रही..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "आपने निम्नलिखित सर्वर(सर्वरो) का चयन किया है: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "इन सर्वरों को डिफ़ाल्ट के तौर पर सक्रिय किया जाता है । इनमें कोई ज्ञात सुरक्षा-संबंधी "
-#~ "खामी नहीं है,\n"
-#~ "परन्तु कुछ नये दोष मिल सकते है । ऐसी अवस्था में, अति शीघ्र-से-शीघ्र\n"
-#~ "जितना सम्भव हो, आप उनन्यन कर लें।\n"
-#~ "\n"
-#~ "\n"
-#~ "क्या आप वास्तव में इन सर्वरों को संसाधित करना चाहते है?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "डेस्कटाप"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "उपलब्ध पैकेजों की सूची प्राप्त करने के लिए मिरर से सम्पर्क स्थापित किया जा रहा है..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "%s मिरर प्रणाली से संबंध स्थापित करने में असमर्थ"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "स्वतः संसाधान फ़्लापी का निर्माण किया जा रहा है"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "यदि आवश्यकता हो तो स्वतः संसाधन को पूर्णतया स्वचालित बनाया जा सकता है,\n"
-#~ "ऐसी अवस्था में यह हार्ड ड्राइव पर पूर्ण अधिकार कर लेगा !!\n"
-#~ "(यह समान संसाधन को अन्य मशीन पर संसाधित करने के लिए होता है)।\n"
-#~ "\n"
-#~ "आप हो सकता है कि संसाधन को रीप्ले करन चाहते हो।\n"
-
-#~ msgid "Replay"
-#~ msgstr "पुनः चलाना"
-
-#~ msgid "Automated"
-#~ msgstr "स्वचालित"
-
-#~ msgid "Save packages selection"
-#~ msgstr "पैकेजों के चयन को सुरक्षित करें"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "क्या आप ऐबूट का का उपयोग करना चाहते है?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "एक बूट को संसाधित करने में त्रुटि, \n"
-#~ "संसाधन को बलपूर्वक करने का प्रयास करे, चाहे कि प्रथम विभाजन नष्ट हो जायें?"
-
-#~ msgid "All"
-#~ msgstr "सभी"
-
-#~ msgid "TV card"
-#~ msgstr "टीवी कार्ड"
-
-#~ msgid "Boot"
-#~ msgstr "बूट"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "प्रमाणीकरण"
-
-#~ msgid "Gwenview"
-#~ msgstr "ग्वेनव्यू"
-
-#~ msgid "DrakVPN"
-#~ msgstr "ड्रैक वीपीएन"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d पैकेज"
-#~ msgstr[1] "%d पैकेज"
-
-#~ msgid "%d packages"
-#~ msgstr "%d पैकेज"
-
-#~ msgid "Language"
-#~ msgstr "भाषा"
-
-#~ msgid "License"
-#~ msgstr "प्रमाण-पत्र"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "संसाधन प्रकार का चयन करें"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "अनुमान लगाया जा रहा है"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "संसाधन करने हेतु पैकेजों का चयन करें"
-
-#~ msgid "Users"
-#~ msgstr "उपयोगकर्ताओ"
-
-#~ msgid "Networking"
-#~ msgstr "नेटवर्किंग"
-
-#~ msgid "Configure X"
-#~ msgstr "एक्स को संरचित करें"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "आपके कर्नल के अनुरूप कर्नल मॉडयूलो तक नहीं पहुँचा जा सकता है ( %s संचिका विलुप्त है),"
-#~ "इसका सामान्यता अर्थ है कि आपकी बूट फ़्लापी संसाधन माध्यम के साथ ताल-बद्व नहीं है(कृपया "
-#~ "एक और नयी बूट फ़्लापी का निर्माण करें)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "एक मिरर का चयन करें जहाँ से पैकेजों को प्राप्त करना है"
diff --git a/perl-install/install/share/po/hr.po b/perl-install/install/share/po/hr.po
index ed69f8e9c..738f091cc 100644
--- a/perl-install/install/share/po/hr.po
+++ b/perl-install/install/share/po/hr.po
@@ -1,53 +1,82 @@
-# Translation of DrakX to Croatian
-# Copyright (C) Croatian team
-# Translators: Danijel Studen <dstuden@vuka.hr>,Denis Lackovic <delacko@fly.srk.fer.hr>,Jerko Škifić <skific@riteh.hr>,Ljubomir Božić <ljubo108@vip.hr>,Nikola Planinac <>,Robert Vuković <robi@surfer.hr>,Sasa Poznanovic <sasa.poznanovic@vuka.hr>,Vedran Vyroubal <vedran.vyroubal@inet.hr>,Vinko Prelac <vinko@buka.hr>,Vlatko Kosturjak <kost@linux.hr>,Zoran Jankovic <zoran.jankovic@inet.hr>,
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+# Ivica Kolić <ikoli@yahoo.com>, 2018
msgid ""
msgstr ""
-"Project-Id-Version: DrakX 0\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-01-04 21:25+CET\n"
-"Last-Translator: auto\n"
-"Language-Team: Croatian <lokalizacija@linux.hr>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Ivica Kolić <ikoli@yahoo.com>\n"
+"Language-Team: Croatian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/hr/)\n"
+"Language: hr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: TransDict server\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;;\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Pridružite nam se!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Vaš izbor!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Uredski alati"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Za djecu"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Za obitelj!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Za razvijatelje!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Hvala vam!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Budite slobodni!"
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Da li imate još koji?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -55,116 +84,152 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
+"Slijedeći medij je pronađen i biti će korišten tijekom instalacije: %s.\n"
+"\n"
+"\n"
+"Imate li dodatni instalcijski medij za konfigurirati?"
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Mreža"
+msgstr "Mreža (HTTP)"
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "Mreža"
+msgstr "Mreža (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
+msgstr "Mreža (NFS)"
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
msgstr ""
-#: any.pm:165
+#: any.pm:225
#, c-format
-msgid "URL of the mirror?"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:171
+#: any.pm:229
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Hostname missing"
msgstr ""
-#: any.pm:182
+#: any.pm:230
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Directory must begin with \"/\""
+msgstr "Direktorij mora počinjati sa \"/\""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
msgstr ""
-"Kontaktiram Mandriva Linux web site za dobivanje popisa raspoloživih mirrora"
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Direktorij"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr "Dodatak"
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"Kontaktiram Mandriva Linux web site za dobivanje popisa raspoloživih mirrora"
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Izaberite mirror sa kojeg želite skinuti pakete"
+msgid "Core Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
-msgstr ""
+msgid "You should enable \"%s\""
+msgstr "Trebate omogućiti \"%s\""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Direktorij"
+msgid "\"%s\" contains non free software.\n"
+msgstr "%s\" sadrži neslobodni software.\n"
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Ne mogu otvoriti %s: %s\n"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
-#: any.pm:334
-#, fuzzy, c-format
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
msgid "Looking at packages already installed..."
-msgstr "Ne možete odznačiti ovaj paket budući da je već instaliran"
+msgstr ""
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Tražim pakete koje mogu nadograditi"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr ""
+msgstr "Uklanjam paketa prije nadogradnje..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -172,88 +237,93 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
+"Slijedeći paketi će biti uklonjeni da bi dozvolili nadogradnju vašega "
+"sustava: %s\n"
+"\n"
+"\n"
+"Želite li doista ukloniti ove pakete?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Greška prilikom čitanja datoteke %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Slijedeći paketi će biti instalirani"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "NFS"
-msgstr "FS"
+msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Mreža"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Molim odaberite"
+msgstr "Molim izaberite medij"
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Datoteka već postoji. Da li da nju upotrijebim?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Pristup odbijen"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "dodan medij %s"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Ne mogu napraviti screenshotove prije particioniranja"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Screenshotovi će biti raspoloživi poslije instalaciju u %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Instaliram"
+msgstr "Instalacija"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Postavke"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Morate također formatirati %s"
@@ -277,25 +347,25 @@ msgstr "Podižem mrežu"
msgid "Bringing down the network"
msgstr "Onemogućujem mrežu"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Molim pričekajte, primam datoteku"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "nije moguće dodati medij"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr ""
+msgstr "Kopiram neke pakete na diskove za buduću uporabu"
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "detektiran na portu %s"
+msgstr "Kopiranje u tijeku"
#: pkgs.pm:32
#, c-format
@@ -322,277 +392,291 @@ msgstr "lijepo"
msgid "maybe"
msgstr "možda"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Bez opisa"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Pojavila se greška"
+msgstr "Došlo je do greške:"
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Nastupila je kobna pogreška: %s. "
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Ne pitaj ponovo"
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "instalacijske intrukcije"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Instaliram paket %s"
+msgstr "Instalacija paketa nije uspjela:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Radna stanica"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Uredska radna stanica"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Uredski programi: tekst procesori (OpenOffice.org Writer, Kword), tablični "
-"kalkulatori (OpenOffice.org Calc, Kspread), pdf preglednici, itd"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Uredski programi: tekst procesori (kword, abiword), tablični kalkulatori "
-"(kspread, gnumeric), pdf preglednici, itd"
+"Uredski programi: tekst procesori (LibreOffice Writer, Kword), tablični "
+"kalkulatori (LibreOffice Calc, Kspread), pdf preglednici, itd"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Igračka radna stanica"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Zabavni programi: arkade, ploče, strategije, itd"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedijska stanica"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Zvučni i video svirački/uređivački programi"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet stanica"
-#: share/meta-task/compssUsers.pl:34
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:37
+#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Pribor alata za čitanje i slanje mail-a i news-a (pine, mutt, tin..) i za "
-"pregled Web-a"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Mrežno računalo (klijent)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klijenti za razne protokole uključujući ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Alati za lako podešavanje vašeg računala"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konzolni Alati"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Uređivači, ljuske, datotečni alati, terminali"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Razvoj"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C i C++ razvojne biblioteke, programi i uključujuće datoteke"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentacija"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Knjige i Howto-i o Linux-u i slobodnom software-u"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Posljužitelj weba"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:85
+#, c-format
msgid "Kolab Server"
-msgstr "NIS Poslužitelj"
+msgstr "Kolab poslužitelj"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Vatrozid/Ruter"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet gateway"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/Datoteka/_Nova"
+msgstr "Pošta/Novosti"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix mail poslužitelj, Inn news poslužitelj"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Poslužitelj imenika"
-#: share/meta-task/compssUsers.pl:93
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:102
+#, c-format
msgid "FTP Server"
-msgstr "NTP Poslužitelj"
+msgstr "FTP postužitelj"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "DNS/NIS "
+msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Ime Domene i Mrežni Informacijki Poslužitelj (NIS)"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Ispisni poslužitelj"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "NIS Poslužitelj"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Baza podataka"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL ili MySQL poslužitelj baza"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache i Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Pošta"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix poslužitelj pošte"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL ili MySQL poslužitelj baza"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL ili MariaDB poslužitelj baza"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Mrežni računalni poslužitelj"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS poslužitelj, SMB poslužitelj, Proxy poslužitelj, SSH poslužitelj"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafičko Okružje"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE radna stanica"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -600,12 +684,12 @@ msgid ""
msgstr ""
"K Radno Okružje, osnovno grafičko okružje sa kolekcijom pripadajućih alata"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Gnome radna stanica"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -614,69 +698,112 @@ msgstr ""
"Grafička okružja sa korisnički prijateljskim skupom aplikacija i alatima za "
"radno okružje"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Radna površina"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Grafička okružja sa korisnički prijateljskim skupom aplikacija i alatima za "
-"radno okružje"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Grafičko okruženje bazirano na GNOME-u"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt radno okruženje"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE radno okruženje"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Lagano grafičko okruženje"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Druga grafička radna okružja"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm, itd"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, itd."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Pomoćni programi"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
msgid "SSH Server"
-msgstr "NIS Poslužitelj"
+msgstr "SSH poslužitelj"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Servisi"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Prebaci postavke pisača"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Mrežne postavke"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Linux Kontrolni Centar"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr "Mageia čarobnjaci"
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Podešavam pisač \"%s\" ..."
+msgstr "Čarobnjaci za podešavanje poslužitelja"
#: steps.pm:85
#, c-format
@@ -687,7 +814,7 @@ msgstr ""
"Dogodila se greška, ali neznam kako s njom lijepo rukovati.\n"
"Nastavite dalje na vlastiti rizik."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -707,335 +834,341 @@ msgstr "Pokrećem korak `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux instalacija %s"
+msgid "%s Installation %s"
+msgstr "%s instalacija %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> između elemenata"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Vaš sustav je slab na resursima. Možete imati nekih problem prilikom\n"
-"instalacije Mandriva Linux-a. Ukoliko se to desi, možete probati tekstualnu\n"
+"instalacije %s-a. Ukoliko se to desi, možete probati tekstualnu\n"
"instalaciju. Za to, pritisnite `F1' kada podižete CDROM, i unesite `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr ""
+msgid "Media Selection"
+msgstr "Odabir medija"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr ""
+msgid "Install %s Plasma Desktop"
+msgstr "Instaliraj %s Plasma radno okruženje"
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Install %s GNOME radno okruženje"
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Minimalna instalacija"
+msgstr "Prilagođena instalacija"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Radna površina"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Plasma radno okruženje"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Radna površina"
+msgstr "GNOME radno okruženje"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Radna površina"
+msgstr "Prilagođeno radno okruženje"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Odabir grupe paketa"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Individualan odabir paketa"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Ukupna veličina: %d / %d MB"
+msgid "Unselect All"
+msgstr "Odselektiraj sve"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Loš paket"
+msgid "Total size: %d / %d MB"
+msgstr "Ukupna veličina: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Inačica: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Veličina: "
-#: steps_gtk.pm:405
-#, fuzzy, c-format
+#: steps_gtk.pm:426
+#, c-format
msgid "%d KB\n"
-msgstr "Veličina: %d KB\n"
+msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Značaj: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Ne možete označiti/odznačiti ovaj paket"
-#: steps_gtk.pm:444
-#, fuzzy, c-format
+#: steps_gtk.pm:466
+#, c-format
msgid "due to missing %s"
-msgstr "kdesu nedostaje"
+msgstr ""
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "zbog nezadovoljavajućeg %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "odabirem %s izabiranjem datoteka"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "kako bi se zadržalo %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Ne možete označiti ovaj paket budući da nema dovoljno mjesta gdje ga se može "
"instalirati"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Slijedeći paketi će biti instalirani"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Slijedeći paketi će biti uklonjeni"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Budući da je ovo obvezni paket ne možete ga odznačiti"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Ne možete odznačiti ovaj paket budući da je već instaliran"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Ne možete odznačiti ovaj paket budući da ga treba nadograditi"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Prikaži automatski odabrane pakete"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instaliraj"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Premjesti označeno"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Dograđujem izbor paketa"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimalna instalacija"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Upravitelj Softwareom"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Odaberite pakete koje želite instalirati"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instaliram"
-#: steps_gtk.pm:564
-#, fuzzy, c-format
+#: steps_gtk.pm:590
+#, c-format
msgid "No details"
-msgstr "Detalji"
+msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Preostalo vrijeme"
+msgstr "Preostalo vrijeme:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Procjenjujem"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d paketa"
-msgstr[1] "%d paketa"
+msgstr[0] "%d paklet"
+msgstr[1] "%dpaketa"
msgstr[2] "%d paketa"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Sažetak"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Podešavanje"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
msgid "not configured"
-msgstr "ponovno postavi"
+msgstr "nije podešeno"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Odabir grupe paketa"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
+"Slijedeći instalacijski mediji su pronađeni.\n"
+"Ako želite preskočiti nekog od njih, odzančite ih sada."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Pojavila se greška"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Molim, izaberite raspored tipkovnice"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Ovdje je cijeli popis raspoloživih tipkovnica"
+msgstr "Lista svih dostupnih tipkovnica:"
-#: steps_interactive.pm:144
-#, fuzzy, c-format
+#: steps_interactive.pm:153
+#, c-format
msgid "Install/Upgrade"
msgstr "Instaliraj/Nadogradi"
-#: steps_interactive.pm:148
-#, fuzzy, c-format
+#: steps_interactive.pm:157
+#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Da li je ovo instalacija ili nadogradnja?"
+msgstr "Je li ovo instalacija ili nadogradnja?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instaliraj"
-#: steps_interactive.pm:152
-#, fuzzy, c-format
+#: steps_interactive.pm:161
+#, c-format
msgid "Upgrade %s"
-msgstr "Dogradnja"
+msgstr "Nadogradnja %s"
-#: steps_interactive.pm:170
-#, fuzzy, c-format
+#: steps_interactive.pm:184
+#, c-format
msgid "Encryption key for %s"
-msgstr "Enkripcijski ključ"
+msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Otkaži instalaciju, ponovo podigni sustav"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Instaliram"
+msgstr "Nova instalacija"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Nadogradi prethodnu instalaciju (ne preporuča se)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1043,120 +1176,101 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
+"Instalacijski program je otkrio da vaš Linux sustav ne možebiti\n"
+"sigurno nadograđen na %s.\n"
+"\n"
+"Preporuča se nova instalacija koja će zamijeniti prethodnu.\n"
+"\n"
+"Upozorenje: napravite sigurnosnu kopiju vaših osobnih podataka prije nego "
+"izaberete \"Nova\n"
+"instalacija\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Podešavam IDE"
+msgid "Configuring CD/DVD"
+msgstr "Podešavam CD/DVD"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:354
#, c-format
msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Nema slobodnog mjesta za 1 MB bootstrap! Instalacija će nastaviti, ali za "
-"podizanje vašeg sustava, trebati ćete napraviti bootstrap particiju u "
-"DiskDrake-u"
-
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Nema slobodnog mjesta za 1 MB bootstrap! Instalacija će nastaviti, ali za "
-"podizanje vašeg sustava, trebati ćete napraviti bootstrap particiju u "
-"DiskDrake-u"
-
-#: steps_interactive.pm:369
-#, fuzzy, c-format
-msgid ""
"Change your Cd-Rom!\n"
"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"Promjenite vaš Cd-Rom!\n"
-"\n"
-"Ubacite Cd-Rom označen \"%s\" u vaš pogon i pritisnite U redu kada "
-"završite.\n"
-"Ukoliko ga nemate, pritisnite Odustani kako bi izbjegli instalaciju sa ovog "
-"Cd-Rom-a."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Tražim dostupne pakete"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
+"Vaš sustav nema dovoljno prostora za instalaciju ili nadogradnju (%dMB > "
+"%dMB)"
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Molimo izaberite učitivanje ili spremanje izbora paketa na disketu.\n"
-"Format je isto kao auto_install napravljene diskete."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Učitaj"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Spremi"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Učitaj datoteku"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Odabir grupe paketa"
+msgstr "Odabir radnog okruženja"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Izabrana veličina je veća nego raspoloživ prostor"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tip instalacije"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1165,88 +1279,127 @@ msgstr ""
"Niste izabrali niti jednu grupu paketa\n"
"Izaberite minimalnu instalaciju ako želite"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Sa X-ima"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instaliram paket %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Instaliraj preporučene pakete"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Sa osnovnom dokumentacijom (preporučeno!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Stvarno malena instalacija (posebice bez urpmia)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Pripremam nadogradnju..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Pripremam instalaciju"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instaliram paket %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Javila se greška prilikom sortiranja paketa:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Da ipak nastavim?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr ""
+msgstr "Pokušaj ponovno"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr ""
+msgstr "Preskoči ovaj paket"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr ""
+msgstr "Preskoči sve pakete sa medija \"%s\""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Spremi odabir paketa"
+msgstr "Vratite se natrag na medij i izbor paketa"
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Pojavila se greška kod instalacije paketa:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Postava nakon instalacije"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Nadogradnje"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Slijedeći paketi će biti instalirani"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Pokušati ponovno?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Provjeravam ovisnosti..."
+
+#: steps_interactive.pm:792
+#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
"have been updated after the distribution was released. They may\n"
@@ -1257,136 +1410,98 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Imate mogućnost skidanja (downloada) paketa za dogradnju koji su\n"
-"izašli poslije nego što je distribucija postala raspoloživa.\n"
-"\n"
-"Dobit ćete sigurnosne popravke i popravke od grešaka, ali za nastavak\n"
-"trebate imati podešenu Internet vezu.\n"
-"\n"
-"Da li želite instalirati dogradnju?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s na %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Sklopovlje"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Zvučna kartica"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Da li imate ISA zvučnu karticu?"
-
-#: steps_interactive.pm:919
-#, fuzzy, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Pokrenite \"sndconfig\" poslije instalacije za podešavanje vaše zvučne "
-"kartice"
-
-#: steps_interactive.pm:921
+#: steps_interactive.pm:972
#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Nije pronađena zvučna kartica. Probajte \"harddrake\" poslije instalacije"
-
-#: steps_interactive.pm:929
-#, fuzzy, c-format
msgid "Graphical interface"
-msgstr "X kod pokretanja sustava"
+msgstr "Grafičko sučelje"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Mreža i Internet"
-#: steps_interactive.pm:947
-#, fuzzy, c-format
+#: steps_interactive.pm:991
+#, c-format
msgid "Proxies"
-msgstr "Profil: "
+msgstr ""
-#: steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_interactive.pm:992
+#, c-format
msgid "configured"
-msgstr "ponovno postavi"
+msgstr "podešeno"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Sigurnosna Razina"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Vatrozid"
-#: steps_interactive.pm:981
-#, fuzzy, c-format
+#: steps_interactive.pm:1026
+#, c-format
msgid "activated"
-msgstr "Aktiviraj sada"
+msgstr "aktivirano"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "onemogućeno"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr ""
+msgstr "Niste podesili X? jeste li sigurni da to doista želite?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Pripremam bootloader"
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
+msgstr "Budite strpljivi, ovo može potrajati..."
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Čini se da imate OldWorld ili Nepoznato\n"
-" računalo, yaboot bootloader neće moći raditi kod vas.\n"
-"Instalacija će nastaviti, ali ćete morati\n"
-" koristiti BootX da podignete vaše računalo"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Umetnite praznu disketu u pogon %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Pravim auto instalacijsku disketu"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1397,12 +1512,12 @@ msgstr ""
"\n"
"Želite li zaista završiti?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Čestitamo, pobijedili ste!"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Ponovno pokretanje sustava"
@@ -1418,7 +1533,7 @@ msgstr "Jezik"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Lokalizacija"
#: steps_list.pm:17
#, c-format
@@ -1497,13 +1612,6 @@ msgid ""
"Users"
msgstr "Korisnici"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Mreža"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1546,139 +1654,18 @@ msgid ""
"Exit"
msgstr "Izađi"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Šaljem datoteke..."
-
-#, fuzzy
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Izabrali ste slijedeće poslužitelje: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Ti poslužitelji biti će postavljeno aktivirani. Oni nemaju poznatih "
-#~ "sigurnosnih\n"
-#~ "propusta, ali neki novi mogu biti pronađeni. U tom slučaju, morate ga "
-#~ "nadograditi\n"
-#~ "što prije moguće.\n"
-#~ "\n"
-#~ "\n"
-#~ "Da li zaista želite instalirati te poslužitelje?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Radna površina"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Spajam se na mirror kako bih pribavio popis dostupnih paketa"
-
-#, fuzzy
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Ne mogu napraviti fork: %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Napravi auto instalacijsku disketu"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Auto instalacija može biti potpuno automatska ukoliko želite,\n"
-#~ "u tom slučaju će preuzeti hard disk!!\n"
-#~ "(ovo znači za instalaciju na drugo računalo).\n"
-#~ "\n"
-#~ "Možete preferirati da ponovite instalaciju.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Ponovi"
-
-#~ msgid "Automated"
-#~ msgstr "Automatski"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Spremi odabir paketa"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Da li želite koristiti aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Greška prilikom instalacije aboot-a, \n"
-#~ "probati nasilno instalirati iako to može uništiti prvu particiju?"
-
-#~ msgid "All"
-#~ msgstr "Sve"
-
-#~ msgid "TV card"
-#~ msgstr "TV kartica"
-
-#~ msgid "Boot"
-#~ msgstr "Pokretani sustav"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Provjera autentičnosti"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d paketa"
-#~ msgstr[1] "%d paketa"
-#~ msgstr[2] "%d paketa"
-
-#~ msgid "%d packages"
-#~ msgstr "%d paketa"
-
-#~ msgid "Language"
-#~ msgstr "Jezik"
-
-#~ msgid "License"
-#~ msgstr "Licenca"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Odaberite razred instalacije"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Procjenjujem"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Izabir instaliranih paketa"
-
-#~ msgid "Users"
-#~ msgstr "Korisnici"
-
-#~ msgid "Networking"
-#~ msgstr "Mreža"
-
-#~ msgid "Configure X"
-#~ msgstr "Podesi X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Ne mogu pristupiti kernel modulima koji odgovaraju vašem kernelu "
-#~ "(datoteka %s nedostaje), ovo obično znači da vaša disketa za dizanje "
-#~ "sustava nije usklađena sainstalacijskim medijem (napravite noviju boot "
-#~ "disketu)"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL zrcala?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL mora počinjati sa ftp:// ili http://"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Kontaktiram %s web site za dobivanje popisa raspoloživih mirrora"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Izaberite mirror sa kojeg želite skinuti pakete"
diff --git a/perl-install/install/share/po/hu.po b/perl-install/install/share/po/hu.po
index 733dd2de9..bbe0bd763 100644
--- a/perl-install/install/share/po/hu.po
+++ b/perl-install/install/share/po/hu.po
@@ -1,59 +1,87 @@
-# translation of DrakX to Hungarian
-# Copyright (C) 2000-2001,2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Emese Kovacs <emese@gnome.hu>, 2000-2001.
-# Arpad Biro <biro.arpad gmail>, 2000, 2003, 2004, 2005, 2006, 2007.
-# Tamas Szanto <tszanto@mol.hu>, 2001.
-# Gergely Lonyai <aleph@mandriva.org>, 2007,2008,2009.
+# Translators:
+# Arpad Biro <biro.arpad gmail>, 2000,2003-2007
+# Balzamon, 2016
+# Balzamon, 2016
+# alephlg <aleph@mandriva.org>, 2007-2009
+# Laszlo Espadas, 2017
+# Tamas Szanto <tszanto@mol.hu>, 2001
+# Zoltán Siposs <zoltan.siposs@gmail.com>, 2015
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-2010.0\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-09-13 19:43+0100\n"
-"Last-Translator: Gergely Lónyai <aleph@mandriva.org>\n"
-"Language-Team: Hungarian <aleph@mandriva.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Hungarian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/hu/)\n"
+"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Poedit-Language: Hungarian\n"
-"X-Poedit-Country: HUNGARY\n"
-"X-Poedit-SourceCharset: utf-8\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Az Ön munkaasztala egy USB kulcson"
+msgid "Join Us!"
+msgstr "Csatlakozzon!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "A 100%%-ban nyílt forráskódú Mandriva Linux disztribúció"
+msgid "Make it yours!"
+msgstr "Legyen az Öné!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "A Linux könnyed kipróbálása: Mandriva One"
+msgid "Your choice!"
+msgstr "Az Ön választása!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Egy teljes Mandriva Linux munkaasztal, támogatással"
+msgid "Office tools"
+msgstr "Irodai eszközök"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: disztribúciók minden igényre"
+msgid "Home entertainment"
+msgstr "Otthoni szórakoztatás"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Gyerekeknek"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "A családnak!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Fejlesztőknek!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Köszönjük!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Legyen szabad!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Van további kiegészítő adathordozója?"
+msgstr "Van további kiegészítő adathordozó?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -61,113 +89,162 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"A telepítő a következő adathordozókat találta - ezeket fogja használni a telepítéshez: %s.\n"
+"A telepítő a következő adathordozókat találta - ezeket fogja használni a "
+"telepítéshez: %s.\n"
"\n"
"\n"
-"Van beállítandó kiegészítő telepítési adathordozója?"
+"Van beállítandó kiegészítő telepítési adathordozó?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Hálózat (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Hálózat (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Hálózat (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "A tükörkiszolgáló címe?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Az URL-nek ftp:// vagy http:// előtaggal kell kezdődnie"
-
-#: any.pm:182
-#, c-format
-msgid "Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "Kapcsolódás a Mandriva Linux webkiszolgálójához; az elérhető tükörkiszolgálók listájának lekérdezése..."
-
-#: any.pm:187
-#, c-format
-msgid "Failed contacting Mandriva Linux web site to get the list of available mirrors"
-msgstr "Nem sikerült lekérdezni az elérhető tükörkiszolgálók listáját a Mandriva Linux webkiszolgálójától"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Válasszon tükörkiszolgálót, ahonnan letölti a csomagokat"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS-beállítás"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Adja meg az NFS-adathordozó gépnevét és könyvtárát"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Gépnév hiányzik"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "A könyvtárnak \"/\" jellel kell kezdődnie"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Az NFS-csatolás gépneve?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Könyvtár"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Kiegészítő"
-#: any.pm:295
+#: any.pm:300
#, c-format
-msgid "Can't find a package list file on this mirror. Make sure the location is correct."
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr "A tükörkiszolgálón nem található fejléclista"
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core tároló"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted tároló"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nem szabad tároló"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"A számítógépben található néhány eszköznek szüksége van nem szabad firmware-"
+"re annak érdekében, hogy a nyílt forrású meghajtóprogramok működhessenek."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "\"%s\" engedélyezése szükséges."
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+"\"%s\" a rendszer és az alkalmazások különböző összetevőit tartalmazza."
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "A \"%s\" nem szabad szoftvereket tartalmaz.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Különböző eszközök működéséhez szükséges firmware-ket is tartalmaz (pl. ATI/"
+"AMD videokártyák, hálózati kártyák, RAID vezérlők,...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" olyan szoftvereket tartalmaz, amelyek a szoftver-szabadalmak miatt "
+"egyes országokban nem terjeszthetők."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"\"%s\" tárolóból származó szoftvereket is tartalmaz, melyek további "
+"képességekkel lettek újrafordítva."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Itt lehet további adathordozókat engedélyezni."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Ez az adatforrás frissítőcsomagokat tartalmaz a \"%s\" számára."
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "A már telepített csomagok vizsgálata..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "A frissítendő csomagok keresése..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Csomagok eltávolítása a frissítés előtt..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -180,92 +257,90 @@ msgstr ""
"\n"
"Szeretné eltávolítani ezeket a csomagokat?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Hiba a(z) %s fájl olvasása közben"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "A következő lemezek át lettek nevezve:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (korábbi név: %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098
-#: steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Hálózat"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Válasszon egy adatforrást"
+msgstr "Válasszon ki egy adatforrást"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "A fájl már létezik. Felülírja?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Hozzáférés megtagadva"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Helytelen NFS-név"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "\"%s\": hibás adatforrás"
+msgstr "\"%s\": érvénytelen adatforrás"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Partícionálás előtt nem készíthetők képernyőfelvételek"
+msgid "Cannot make screenshots before partitioning"
+msgstr "Particionálás előtt nem készíthetők képernyőfelvételek"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "A képernyőfelvételek a telepítés után itt lesznek elérhetők: %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Telepítés"
-#: gtk.pm:135
-#: share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Beállítás"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
-msgstr "Meg kell formázni ezt is: %s"
+msgstr "Formázni kell ezt is: %s"
#: interactive.pm:16
#, c-format
@@ -286,32 +361,26 @@ msgstr "A hálózatkezelés elindítása"
msgid "Bringing down the network"
msgstr "A hálózatkezelés leállítása"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Kérem várjon, fájl betöltése"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "sikertelen a csomagforrás hozzáadása"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Bizonyos csomagok lemezre másolása későbbi használatra"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Másolás folyamatban"
-# The "Importance" ratings:
-# 5: "must have"
-# 4: "important"
-# 3: "very nice"
-# 2: "nice"
-# 1: "maybe"
#: pkgs.pm:32
#, c-format
msgid "must have"
@@ -335,9 +404,26 @@ msgstr "ajánlott"
#: pkgs.pm:36
#, c-format
msgid "maybe"
-msgstr "opcionális"
+msgstr "tetszőleges"
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Csomaginformációk olvasása az XML meta-adatokból..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Nincs xml információ a \"%s\" adatforráshoz, a %s csomagról csak részleges "
+"információit sikerült szerezni."
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nincs leírás"
-#: pkgs.pm:225
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -346,338 +432,397 @@ msgstr ""
"A(z) %s által kért bizonyos csomagok nem telepíthetők:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Hiba lépett fel:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Végzetes hiba történt: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Ne kérdezze mégegyszer"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d telepítési művelet nem sikerült"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Sikertelen csomagtelepítések:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Munkaállomás"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Irodai munkaállomás"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid "Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets (OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr "Irodai programok: szövegszerkesztők (OpenOffice.org Writer, KWord), táblázatkezelők (OpenOffice.org Calc, KSpread), PDF-megjelenítők, ..."
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
-msgid "Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, gnumeric), pdf viewers, etc"
-msgstr "Irodai programok: szövegszerkesztők (KWord, AbiWord), táblázatkezelők (KSpread, Gnumeric), PDF-nézegetők, ..."
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+"Irodai programok: szövegszerkesztők (LibreOffice Writer, KWord), "
+"táblázatkezelők (LibreOffice Calc, KSpread), PDF-megjelenítők, ..."
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Játékgép"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Játékprogramok: lövöldözős, táblás, stratégiai, ..."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimédiás munkaállomás"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Lejátszó- és szerkesztőprogramok hang- és videóanyagokhoz"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internetes munkaállomás"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
-msgid "Set of tools to read and send mail and news (mutt, tin..) and to browse the Web"
-msgstr "Eszközök levelezéshez, hírkezeléshez (mutt, tin, ...) és a web böngészéséhez"
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+"Eszközök levelezéshez, hírkezeléshez (mutt, tin, ...) és a web böngészéséhez"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Hálózati számítógép (kliens)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Kliensprogramok különféle protokollokhoz (például: ssh)"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Segédprogramok a számítógép beállításához"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Parancssori eszközök"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Szövegszerkesztők, parancsértelmezők, fájlkezelők, terminálprogramok"
-#: share/meta-task/compssUsers.pl:54
-#: share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Fejlesztés"
-#: share/meta-task/compssUsers.pl:55
-#: share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C/C++ fejlesztőkönyvtárak, programok és include-fájlok"
-#: share/meta-task/compssUsers.pl:58
-#: share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentáció"
-#: share/meta-task/compssUsers.pl:59
-#: share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Könyvek és HOGYAN-ok a Linuxról és a szabad szoftverekről"
-#: share/meta-task/compssUsers.pl:63
-#: share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64
-#: share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Külső társaságok alkalmazásainak támogatása."
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Webkiszolgáló"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Csoportmunka-alkalmazás"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab kiszolgáló"
-#: share/meta-task/compssUsers.pl:81
-#: share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Tűzfal/útválasztó (router)"
-#: share/meta-task/compssUsers.pl:82
-#: share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet átjáró"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Levelezés/hírek"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix email kiszolgáló, Inn hírkiszolgáló"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Címtárkiszolgáló"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP kiszolgáló"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "DNS és NIS kiszolgáló"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Fájl- és nyomtatómegosztási kiszolgáló"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS kiszolgáló, Samba kiszolgáló"
-#: share/meta-task/compssUsers.pl:105
-#: share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Adatbázis"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL és MySQL adatbázis kiszolgáló"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL és MariaDB adatbázis kiszolgáló"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Levelezés"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix email kiszolgáló"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL vagy MySQL adatbázis kiszolgáló"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL vagy MariaDB adatbázis kiszolgáló"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Kiszolgáló hálózati számítógépekhez"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS, SMB, proxy és SSH kiszolgáló"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafikus környezet"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE munkaállomás"
+msgid "Plasma Workstation"
+msgstr "Plasma Munkaállomás"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
-msgid "The K Desktop Environment, the basic graphical environment with a collection of accompanying tools"
-msgstr "A K Desktop Environment - az alapvető grafikus környezet - az ahhoz tartozó eszközökkel együtt"
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+"A K Desktop Environment - az alapvető grafikus környezet - az ahhoz tartozó "
+"eszközökkel együtt"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME munkaállomás"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+"Grafikus környezet felhasználóbarát alkalmazásokkal és segédprogramokkal"
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+"Egy könnyedebb grafikus környezet felhasználóbarát alkalmazásokkal és "
+"asztali eszközökkel."
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE munkaállomás"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon munkaállomás"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Egy GNOME-on alapuló grafikus környezet"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt Munkaasztal"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+"A pehelysúlyú munkaasztal-környezet új generációs, QT-ra portolt változata"
+
+#: share/meta-task/compssUsers.pl:184
#, c-format
-msgid "A graphical environment with user-friendly set of applications and desktop tools"
-msgstr "Grafikus környezet felhasználóbarát alkalmazásokkal és segédprogramokkal"
+msgid "Enlightenment Desktop"
+msgstr ""
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Egy könnyű, gyors grafikus környezet"
+
+#: share/meta-task/compssUsers.pl:189
#, c-format
msgid "LXDE Desktop"
msgstr "LXDE munkaasztal"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:191
#, c-format
-msgid "A lightweight & fast graphical environment with user-friendly set of applications and desktop tools"
-msgstr "Egy könnyű és gyors grafikus környezet felhasználóbarát alkalmazásokkal és segédprogramokkal"
+msgid "A lightweight fast graphical environment"
+msgstr "Egy könnyű, gyors grafikus környezet"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Más grafikus környezetek"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "WindowMaker, Enlightenment, Fvwm, ..."
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, stb."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Segédprogramok"
-#: share/meta-task/compssUsers.pl:176
-#: share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH kiszolgáló"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin kiszolgáló távoli beállításhoz"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Hálózati programok/hálózatfigyelés"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Figyelőeszközök, folyamatszámlázás, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva varázslók"
+msgid "Mageia Wizards"
+msgstr "Mageia varázslók"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Varázslók a kiszolgáló beállítására"
@@ -691,12 +836,13 @@ msgstr ""
"Hiba történt, de nem lett megfelelően lekezelve.\n"
"Csak akkor lépjen tovább, ha biztos abban, hogy ez nem fog gondot okozni."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
+"\"\n"
msgstr ""
"Néhány fontos csomag telepítése nem sikerült.\n"
"Ez azt jelenti, hogy a CD-meghajtó vagy a CD hibás.\n"
@@ -704,282 +850,265 @@ msgstr ""
"parancs segítségével tesztelheti le:\n"
"\"rpm -qpl media/main/*.rpm\"\n"
-#: steps_auto_install.pm:71
-#: steps_stdio.pm:27
+#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
msgstr "A következő lépés: \"%s\"\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux telepítés %s"
+msgid "%s Installation %s"
+msgstr "%s telepítés %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt+Tab> lépegetés"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Az Xorg kiszolgáló lassan indul. Kérem várjon..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"A rendszer gyenge erőforrásokkal rendelkezik. Előfordulhat, hogy problémái\n"
-"lesznek a Mandriva Linux telepítésével. Ha így történik, próbálkozzon\n"
+"lesznek a %s telepítésével. Ha így történik, próbálkozzon\n"
"szöveges módú telepítéssel: CD-ről való rendszerindítást követően nyomjon\n"
"\"F1\"-et, majd írja be azt, hogy \"text\"."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "A Mandriva KDE asztalának telepítése"
+msgid "Media Selection"
+msgstr "Adathordozó kiválasztása"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "A Mandriva GNOME asztalának telepítése"
+msgid "Install %s Plasma Desktop"
+msgstr "Plasma Desktop %s telepítése"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "A %s GNOME asztalának telepítése"
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Egyéni telepítés"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE munkaasztal"
+msgid "Plasma Desktop"
+msgstr "Plasma Desktop"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME munkaasztal"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Egyéni munkaasztal"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Így fog kinézni a '%s' munkaasztala."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Kattintson a képre, ha nagyobb méretben szeretné megtekinteni"
-#: steps_gtk.pm:315
-#: steps_interactive.pm:606
-#: steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Csomagcsoportok kiválasztása"
-#: steps_gtk.pm:336
-#: steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Csomagok egyedi kiválasztása"
-#: steps_gtk.pm:360
-#: steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Összméret: %d / %d MB"
+msgid "Unselect All"
+msgstr "Kijelölések megszüntetése"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Hibás csomag"
+msgid "Total size: %d / %d MB"
+msgstr "Összméret: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Verzió: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Méret: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Fontosság: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Ez a csomag nem jelölhető ki illetve nem törölhető a kijelölése"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "\"%s\" hiánya miatt"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "\"%s\" igényei miatt"
-# Francois Pons:
-# This is a message saying that a package is removed (or unselected) because the
-# dependency resolution algorithm needed to remove (or unselect) it when it tried
-# to promote a provide (a package name or property) with a better version, but it
-# failed.
-# "promote": It is a term used to say promotion of a provides (promoting perl for
-# example, is trying to find the best package providing perl and select it).
-# "%s" stands for the property being promoted, generally a simple name.
-# This is not really a failure message but an informative message. It has nothing
-# to do with failure in the sense of the application unable to continue. Urpmi
-# continues by not selecting a package which was selected by a promotion (not
-# asked by the user directly but caused by a package which has been upgraded thus
-# breaking existing packages, the promotion concerns this).
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "a legalkalmasabb \"%s\" keresése"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "\"%s\" megtartása érdekében"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
-msgid "You can not select this package as there is not enough space left to install it"
-msgstr "Nem választhatja ki ezt a csomagot, mert nincs elég hely a merevlemezen."
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+"Nem választhatja ki ezt a csomagot, mert nincs elég hely a merevlemezen."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "A telepítő a következő csomagokat fogja telepíteni:"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "A telepítő a következő csomagokat távolítja el:"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ez egy kötelező csomag, nem lehet megszüntetni a kijelölését"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Nem törölhető ennek a csomagnak a kijelölése, mert már telepítve van"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Nem törölheti ennek a csomagnak a kijelölését. Ez a csomag frissítendő."
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+"Nem törölheti ennek a csomagnak a kijelölését. Ez a csomag frissítendő."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Automatikusan kijelölt csomagok mutatása"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Telepítés"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Kijelölés betöltése/mentése"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "A csomagkiválasztás frissítése"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimális telepítés"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Szoftverkezelés"
-#: steps_gtk.pm:517
-#: steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Válassza ki a telepítendő csomagokat"
-#: steps_gtk.pm:534
-#: steps_interactive.pm:637
-#: steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Telepítés"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Részletek nélkül"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Hátralevő idő:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(becslés...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d csomag"
msgstr[1] "%d csomag"
-#: steps_gtk.pm:668
-#: steps_interactive.pm:801
-#: steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Összefoglalás"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Beállítás"
-#: steps_gtk.pm:704
-#: steps_interactive.pm:797
-#: steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "nincs beállítva"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Adathordozó kiválasztása"
-
-#: steps_gtk.pm:747
-#: steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -988,83 +1117,85 @@ msgstr ""
"A rendszer a következő telepítési adathordozókat találta.\n"
"Ha szeretné kihagyni valamelyiket, távolítsa el annak kijelölését."
-#: steps_gtk.pm:763
-#: steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive before installation.\n"
-"It will then continue from the hard drive and the packages will remain available once the system is fully installed."
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
msgstr ""
-"Lehetősége van arra, hogy a CD-k tartalmát lemásolja a merevlemezre a telepítés előtt.\n"
-"Ez esetben a telepítés a merevlemezről folytatódik, és annak végeztével a csomagok elérhetők maradnak."
+"Lehetősége van arra, hogy a CD-k tartalmát lemásolja a merevlemezre a "
+"telepítés előtt.\n"
+"Ez esetben a telepítés a merevlemezről folytatódik, és annak végeztével a "
+"csomagok elérhetők maradnak."
-#: steps_gtk.pm:765
-#: steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Teljes CD-k másolása"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Hiba lépett fel"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Válasszon billentyűzetkiosztást"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Az elérhető billentyűzetek teljes listája:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Telepítés/frissítés"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Új telepítés vagy frissítés?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Telepítés"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Frissítés: %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Titkosítási kulcs ehhez: %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Telepítés megszakítva, a rendszer újraindul"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Új telepítés"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Előző telepítés frissítése (nem ajánlott)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1072,56 +1203,52 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"A Telepítő olyan előzőleg telepített Mandriva Linux rendszert talált, \n"
-"melyet nem biztonságos frissíteni %s-re.\n"
+"A telepítő észlelte, hogy a már meglévő Linux rendszer\n"
+"nem frissíthető %s-ra.\n"
"\n"
-"Ajánlott egy új telepítéssel lecserélni a régi rendszert.\n"
+"Javasolt új telepítést végezni a régi helyén.\n"
"\n"
-"Figyelem: ha az \"Új telepítést\" választja, akkor ajánlott minden \n"
-"személyes adat előzetes lementése."
+"Figyelem: új telepítés előtt célszerű minden személyes dokumentumról\n"
+"mentést készíteni."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "IDE beállítások"
+msgid "Configuring CD/DVD"
+msgstr "CD/DVD konfigurálása"
-#: steps_interactive.pm:288
-#, c-format
-msgid "No free space for 1MB bootstrap! Install will continue, but to boot your system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr "Nincs elég szabad hely az 1 MB-os betöltőprogramnak. A telepítés folytatható, de a rendszer indításához létre kell hozni egy rendszerindító partíciót a DiskDrake-kel."
-
-#: steps_interactive.pm:293
-#, c-format
-msgid "You'll need to create a PPC PReP Boot bootstrap! Install will continue, but to boot your system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr "Létre kell hozni egy PPC PReP rendszerindítót. A telepítés folytatódik, de a rendszer indításához létre kell hozni a rendszerindítási partíciót a DiskDrake-kel."
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
-"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when done.\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
"Cserélje ki a CD-t a meghajtóban.\n"
"Tegye be a(z) \"%s\" feliratú lemezt, és nyomja meg az \"OK\" gombot.\n"
-"Ha nincs ilyen lemeze, akkor nyomja meg a \"Mégsem\" gombot, így erről a CD-ről nem történik telepítés."
+"Ha nincs ilyen lemeze, akkor nyomja meg a \"Mégsem\" gombot, így erről a CD-"
+"ről nem történik telepítés."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "A rendelkezésre álló csomagok keresése..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
-msgid "Your system does not have enough space left for installation or upgrade (%dMB > %dMB)"
-msgstr "A rendszerben nincs elegendő szabad hely a telepítéshez illetve frissítéshez (%d MB > %d MB)"
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+"A rendszerben nincs elegendő szabad hely a telepítéshez illetve frissítéshez "
+"(%d MB > %d MB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1131,52 +1258,52 @@ msgstr ""
"csomagkijelölést vagy a jelenlegi kijelölést szeretné elmenteni.\n"
"A formátum ugyanaz, mint az automatikus telepítési fájloknál."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Terhelés"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Mentés"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Hibás fájl"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Munkaasztal kiválasztása"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Kiválaszthatja a munkaállomás asztalprofilját."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "A kijelölt összméret nagyobb, mint a rendelkezésre álló hely"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "A telepítés típusa"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1185,88 +1312,132 @@ msgstr ""
"Egyetlen csomagcsoportot sem jelölt ki.\n"
"Válassza ki, milyen fajta minimális telepítést szeretne."
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
-msgstr "X-xel együtt"
+msgstr "X telepítése"
-#: steps_interactive.pm:581
+#: steps_interactive.pm:583
#, c-format
-msgid "Install suggested packages"
-msgstr "Telepítésre javasolt csomagok"
+msgid "Install recommended packages"
+msgstr "Javasolt csomagok telepítése"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Alapvető dokumentációval (javasolt)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Valóban minimális telepítés (urpmi sincs)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Felkészülés a frissítésre..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "A telepítés előkészítése"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s csomag telepítése"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Hiba történt a csomagok rendezésekor:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Kívánja folytatni ettől függetlenül?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Újra"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Ezen csomag kihagyása"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "A(z) \"%s\" adathordozón levő összes csomag kihagyása"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Visszalépés az adathordozó és csomagválasztáshoz"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Hiba történt a(z) %s csomag telepítésekor."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Telepítés utáni beállítások"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr "Tegye be a frissítési modulokat tartalmazó adathordozót a(z) \"%s\" meghajtóba"
+msgstr ""
+"Tegye be a frissítési modulokat tartalmazó adathordozót a(z) \"%s\" "
+"meghajtóba"
-#: steps_interactive.pm:734
-#: steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Frissítések"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Itt a lehetőség online csomagtárolók hozzáadására."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Ezzel lehetséges a biztonsági frissítések telepítése."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Ezen csomagtárolók beállításához működő Internet kapcsolat\n"
+"szükséges.\n"
+"\n"
+"Beállítsuk most a frissítési tárolót?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "A telepítő a következő csomagokat fogja telepíteni:"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Ismét?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Nem sikerült felvenni az adatforrást"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1285,118 +1456,99 @@ msgstr ""
"\n"
"Szeretné feltelepíteni a frissítéseket?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s ezen: %s"
-#: steps_interactive.pm:876
-#: steps_interactive.pm:883
-#: steps_interactive.pm:896
-#: steps_interactive.pm:913
-#: steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardver"
-#: steps_interactive.pm:897
-#: steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Hangkártya"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Van ISA hangkártyája?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid "Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound card"
-msgstr "A hangkártya beállításához futtassa az \"alsaconf\" vagy az \"sndconfig\" programot a telepítés után."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "A telepítő nem talált hangkártyát. Futtassa a \"harddrake\" programot a telepítés után."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafikus felület"
-#: steps_interactive.pm:935
-#: steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Hálózat és internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxyk"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "beállítva"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Biztonsági szint"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Tűzfal"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktiválva"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "kikapcsolva"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Az X grafikus rendszert nem állította be. Biztosan megfelel így?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Rendszerbetöltő előkészítése..."
+msgid "Preparing initial startup program..."
+msgstr "A rendszerindító memóriaképfájl előkészítése..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Egy kis türelmét kérem..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid "You appear to have an OldWorld or Unknown machine, the yaboot bootloader will not work for you. The install will continue, but you'll need to use BootX or some other means to boot your machine. The kernel argument for the root fs is: root=%s"
-msgstr "A gép típusa feltehetően OldWorld vagy ismeretlen, ezért a Yaboot rendszerindító program nem fog működni. A telepítés folytatódik, de a gép indításához BootX-re vagy egyéb módszerre lesz szükség. A gyökér-fájlrendszer kernelparamétere: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
-msgid "In this security level, access to the files in the Windows partition is restricted to the administrator."
-msgstr "Ezen a biztonsági szinten csak a rendszergazda érheti el a windowsos partíción levő fájlokat."
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+"Ezen a biztonsági szinten csak a rendszergazda érheti el a windowsos "
+"partíción levő fájlokat."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Tegyen egy üres floppyt a(z) \"%s\" meghajtóba"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Automatikus telepítőfloppy készítése..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1407,12 +1559,12 @@ msgstr ""
"\n"
"Biztos, hogy ki akar lépni?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Gratulálunk"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Újraindítás"
@@ -1425,8 +1577,7 @@ msgid ""
"Language"
msgstr "Nyelv"
-#: steps_list.pm:16
-#: steps_list.pm:23
+#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
msgstr "Lokalizáció"
@@ -1445,16 +1596,14 @@ msgid ""
"Mouse"
msgstr "Egér"
-#: steps_list.pm:19
-#: steps_list.pm:20
+#: steps_list.pm:19 steps_list.pm:20
#, c-format
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
msgstr "Merevlemez keresése"
-#: steps_list.pm:21
-#: steps_list.pm:22
+#: steps_list.pm:21 steps_list.pm:22
#, c-format
msgid ""
"_: Keep these entry short\n"
@@ -1482,8 +1631,7 @@ msgid ""
"Partitioning"
msgstr "Partícionálás"
-#: steps_list.pm:27
-#: steps_list.pm:28
+#: steps_list.pm:27 steps_list.pm:28
#, c-format
msgid ""
"_: Keep these entry short\n"
@@ -1511,24 +1659,14 @@ msgid ""
"Users"
msgstr "Felhasználók"
-#: steps_list.pm:36
-#: steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Hálózat"
-
-#: steps_list.pm:38
-#: steps_list.pm:39
+#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
"_: Keep these entry short\n"
"Bootloader"
msgstr "Rendszerbetöltő"
-#: steps_list.pm:40
-#: steps_list.pm:41
+#: steps_list.pm:40 steps_list.pm:41
#, c-format
msgid ""
"_: Keep these entry short\n"
@@ -1542,8 +1680,7 @@ msgid ""
"Summary"
msgstr "Összefoglalás"
-#: steps_list.pm:44
-#: steps_list.pm:45
+#: steps_list.pm:44 steps_list.pm:45
#, c-format
msgid ""
"_: Keep these entry short\n"
@@ -1564,93 +1701,26 @@ msgid ""
"Exit"
msgstr "Kilépés"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "A rendszer %s kiadásra frissítését választotta. KDE 3.5 található a "
-#~ "jelenlegi rendszerén. \n"
-#~ "Ez a telepítő nem tudja a KDE 3.5-öt biztonságosan frissíteni. Ha "
-#~ "folytatja ezt a műveletet, \n"
-#~ "akkor a KDE 4 le fogja cserélni a KDE 3.5-öt, de minden személyes KDE "
-#~ "beállítása el fog veszni. \n"
-#~ "A KDE 3.5 frissítéséhez, illetve a személyes adatainak a megőrzéséhez \n"
-#~ "kérjük indítsa el a saját rendszerét, és használja a Mandriva frissítő "
-#~ "alkalmazását."
-#~ msgid "Proceed"
-#~ msgstr "Feldolgozva"
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "hibával [%s] tért vissza"
-#~ msgid "Downloading file %s..."
-#~ msgstr "%s fájl letöltése..."
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "32 bites disztribúcióról 64 bitesre való frissítés nem támogatott"
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "64 bites disztribúcióról 32 bitesre való frissítés nem támogatott"
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "A következő kiszolgálóprogramo(ka)t választotta ki: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Ezek alapértelmezésben aktiválva lesznek. Nem tartozik hozzájuk ismert\n"
-#~ "biztonsági probléma, de később ismertté válhatnak újak. Ha ez "
-#~ "bekövetkezik,\n"
-#~ "akkor frissítést kell végezni minél hamarabb.\n"
-#~ "\n"
-#~ "\n"
-#~ "Biztosan telepíteni szeretné a kiszolgálóprogramo(ka)t?\n"
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm-munkaasztal"
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Kapcsolatfelvétel a tükörkiszolgálóval; az elérhető csomagok listájának "
-#~ "letöltése..."
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Nem sikerült kapcsolódni ehhez a tükörkiszolgálóhoz: %s"
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Automatikus telepítőfloppy készítése"
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "A tükörkiszolgáló címe?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Az URL-nek ftp:// vagy http:// előtaggal kell kezdődnie"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Az automatikus telepítés akár teljesen automatikus is lehet,\n"
-#~ "ebben az esetben az egész merevlemez tartalmát módosíthatja.\n"
-#~ "Elsősorban akkor ajánlott, ha másik gépre is telepíteni kívánja\n"
-#~ "a rendszert.\n"
-#~ "\n"
-#~ "Lehetőség van a telepítés újrajátszására is.\n"
-#~ msgid "Replay"
-#~ msgstr "Újrajátszás"
-#~ msgid "Automated"
-#~ msgstr "Automatikus"
-#~ msgid "Save packages selection"
-#~ msgstr "Csomagösszeállítás mentése"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Szeretné az aboot-ot használni?"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#~ "Kapcsolódás a %s webkiszolgálójához; az elérhető tükörkiszolgálók "
+#~ "listájának lekérdezése..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Hiba az aboot telepítésekor.\n"
-#~ "Próbáljam újra a telepítést akkor is, ha ez esetleg tönkreteszi az első\n"
-#~ "partíciót?"
+#~ "Nem sikerült lekérdezni az elérhető tükörkiszolgálók listáját a %s "
+#~ "webkiszolgálójától"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Válasszon ki egy tükörkiszolgálót a csomagok letöltéséhez!"
diff --git a/perl-install/install/share/po/hy.po b/perl-install/install/share/po/hy.po
new file mode 100644
index 000000000..97d85ac19
--- /dev/null
+++ b/perl-install/install/share/po/hy.po
@@ -0,0 +1,1608 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Armenian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/hy/)\n"
+"Language: hy\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
+msgid "Do you have further supplementary media?"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:154
+#, c-format
+msgid ""
+"The following media have been found and will be used during install: %s.\n"
+"\n"
+"\n"
+"Do you have a supplementary installation medium to configure?"
+msgstr ""
+
+#: any.pm:162
+#, c-format
+msgid "Network (HTTP)"
+msgstr ""
+
+#: any.pm:163
+#, c-format
+msgid "Network (FTP)"
+msgstr ""
+
+#: any.pm:164
+#, c-format
+msgid "Network (NFS)"
+msgstr ""
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr ""
+
+#: any.pm:225
+#, c-format
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
+
+#: any.pm:229
+#, c-format
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr ""
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr ""
+
+#: any.pm:593
+#, c-format
+msgid "Finding packages to upgrade..."
+msgstr ""
+
+#: any.pm:612
+#, c-format
+msgid "Removing packages prior to upgrade..."
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:850
+#, c-format
+msgid ""
+"The following packages will be removed to allow upgrading your system: %s\n"
+"\n"
+"\n"
+"Do you really want to remove these packages?\n"
+msgstr ""
+
+#: any.pm:1075
+#, c-format
+msgid "Error reading file %s"
+msgstr ""
+
+#: any.pm:1283
+#, c-format
+msgid "The following disk(s) were renamed:"
+msgstr ""
+
+#: any.pm:1285
+#, c-format
+msgid "%s (previously named as %s)"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "HTTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "FTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "NFS"
+msgstr ""
+
+#: any.pm:1361 steps_interactive.pm:979
+#, c-format
+msgid "Network"
+msgstr ""
+
+#: any.pm:1365
+#, c-format
+msgid "Please choose a media"
+msgstr ""
+
+#: any.pm:1381
+#, c-format
+msgid "File already exists. Overwrite it?"
+msgstr ""
+
+#: any.pm:1385
+#, c-format
+msgid "Permission denied"
+msgstr ""
+
+#: any.pm:1433
+#, c-format
+msgid "Bad NFS name"
+msgstr ""
+
+#: any.pm:1454
+#, c-format
+msgid "Bad media %s"
+msgstr ""
+
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
+
+#: any.pm:1509
+#, c-format
+msgid "Screenshots will be available after install in %s"
+msgstr ""
+
+#: gtk.pm:134
+#, c-format
+msgid "Installation"
+msgstr ""
+
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
+#, c-format
+msgid "Configuration"
+msgstr "Կոնֆիգուրացիա"
+
+#: install2.pm:220
+#, c-format
+msgid "You must also format %s"
+msgstr ""
+
+#: interactive.pm:16
+#, c-format
+msgid ""
+"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
+"You can find some information about them at: %s"
+msgstr ""
+
+#: interactive.pm:22
+#, c-format
+msgid "Bringing up the network"
+msgstr ""
+
+#: interactive.pm:27
+#, c-format
+msgid "Bringing down the network"
+msgstr ""
+
+#: media.pm:397
+#, c-format
+msgid "Please wait, retrieving file"
+msgstr ""
+
+#: media.pm:704
+#, c-format
+msgid "unable to add medium"
+msgstr ""
+
+#: media.pm:744
+#, c-format
+msgid "Copying some packages on disks for future use"
+msgstr ""
+
+#: media.pm:797
+#, c-format
+msgid "Copying in progress"
+msgstr ""
+
+#: pkgs.pm:32
+#, c-format
+msgid "must have"
+msgstr ""
+
+#: pkgs.pm:33
+#, c-format
+msgid "important"
+msgstr ""
+
+#: pkgs.pm:34
+#, c-format
+msgid "very nice"
+msgstr ""
+
+#: pkgs.pm:35
+#, c-format
+msgid "nice"
+msgstr ""
+
+#: pkgs.pm:36
+#, c-format
+msgid "maybe"
+msgstr ""
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
+#, c-format
+msgid ""
+"Some packages requested by %s cannot be installed:\n"
+"%s"
+msgstr ""
+
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
+msgid "An error occurred:"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
+
+#: pkgs.pm:929
+#, c-format
+msgid "Installation of packages failed:"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:16
+#, c-format
+msgid "Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:18
+#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:26
+#, c-format
+msgid "Game station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:27
+#, c-format
+msgid "Amusement programs: arcade, boards, strategy, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:30
+#, c-format
+msgid "Multimedia station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:31
+#, c-format
+msgid "Sound and video playing/editing programs"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:36
+#, c-format
+msgid "Internet station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:37
+#, c-format
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:42
+#, c-format
+msgid "Network Computer (client)"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:43
+#, c-format
+msgid "Clients for different protocols including ssh"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:49
+#, c-format
+msgid "Tools to ease the configuration of your computer"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:53
+#, c-format
+msgid "Console Tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:54
+#, c-format
+msgid "Editors, shells, file tools, terminals"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
+#, c-format
+msgid "Development"
+msgstr "Ծրագրավորում"
+
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
+msgid "C and C++ development libraries, programs and include files"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
+#, c-format
+msgid "Documentation"
+msgstr "Ձեռնարկ"
+
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
+msgid "Books and Howto's on Linux and Free Software"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
+#, c-format
+msgid "LSB"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
+msgid "Linux Standard Base. Third party applications support"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:79
+#, c-format
+msgid "Web Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:80
+#, c-format
+msgid "Apache"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:84
+#, c-format
+msgid "Groupware"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:85
+#, c-format
+msgid "Kolab Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
+msgid "Firewall/Router"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
+msgid "Internet gateway"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:92
+#, c-format
+msgid "Mail/News"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:93
+#, c-format
+msgid "Postfix mail server, Inn news server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:97
+#, c-format
+msgid "Directory Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:102
+#, c-format
+msgid "FTP Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:103
+#, c-format
+msgid "ProFTPd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:107
+#, c-format
+msgid "DNS/NIS"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:108
+#, c-format
+msgid "Domain Name and Network Information Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:112
+#, c-format
+msgid "File and Printer Sharing Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:113
+#, c-format
+msgid "NFS Server, Samba server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
+msgid "Database"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:123
+#, c-format
+msgid "Web/FTP"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:124
+#, c-format
+msgid "Apache, Pro-ftpd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:128
+#, c-format
+msgid "Mail"
+msgstr "Փոստ"
+
+#: share/meta-task/compssUsers.pl:129
+#, c-format
+msgid "Postfix mail server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:134
+#, c-format
+msgid "PostgreSQL or MariaDB database server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:142
+#, c-format
+msgid "Network Computer server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:143
+#, c-format
+msgid "NFS server, SMB server, Proxy server, ssh server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:150
+#, c-format
+msgid "Graphical Environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:153
+#, c-format
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:158
+#, c-format
+msgid "GNOME Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
+msgid "Other Graphical Desktops"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:218
+#, c-format
+msgid "Utilities"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
+msgid "SSH Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:225
+#, c-format
+msgid "Webmin"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:226
+#, c-format
+msgid "Webmin Remote Configuration Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:230
+#, c-format
+msgid "Network Utilities/Monitoring"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:231
+#, c-format
+msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:236
+#, c-format
+msgid "Wizards to configure server"
+msgstr ""
+
+#: steps.pm:85
+#, c-format
+msgid ""
+"An error occurred, but I do not know how to handle it nicely.\n"
+"Continue at your own risk."
+msgstr ""
+
+#: steps.pm:469
+#, c-format
+msgid ""
+"Some important packages did not get installed properly.\n"
+"Either your cdrom drive or your cdrom is defective.\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
+"\"\n"
+msgstr ""
+
+#: steps_auto_install.pm:71 steps_stdio.pm:27
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr ""
+
+#: steps_curses.pm:22
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
+
+#: steps_curses.pm:32
+#, c-format
+msgid "<Tab>/<Alt-Tab> between elements"
+msgstr ""
+
+#: steps_gtk.pm:151
+#, c-format
+msgid "Xorg server is slow to start. Please wait..."
+msgstr ""
+
+#: steps_gtk.pm:216
+#, c-format
+msgid ""
+"Your system is low on resources. You may have some problem installing\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
+"press `F1' when booting on CDROM, then enter `text'."
+msgstr ""
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
+msgid "Custom install"
+msgstr ""
+
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:281
+#, c-format
+msgid "GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:282
+#, c-format
+msgid "Custom Desktop"
+msgstr ""
+
+#: steps_gtk.pm:288
+#, c-format
+msgid "Here's a preview of the '%s' desktop."
+msgstr ""
+
+#: steps_gtk.pm:315
+#, c-format
+msgid "Click on images in order to see a bigger preview"
+msgstr ""
+
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
+msgid "Package Group Selection"
+msgstr ""
+
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
+msgid "Individual package selection"
+msgstr ""
+
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr ""
+
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr ""
+
+#: steps_gtk.pm:425
+#, c-format
+msgid "Version: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "Size: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "%d KB\n"
+msgstr ""
+
+#: steps_gtk.pm:427
+#, c-format
+msgid "Importance: "
+msgstr ""
+
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr ""
+
+#: steps_gtk.pm:466
+#, c-format
+msgid "due to missing %s"
+msgstr ""
+
+#: steps_gtk.pm:467
+#, c-format
+msgid "due to unsatisfied %s"
+msgstr ""
+
+#: steps_gtk.pm:468
+#, c-format
+msgid "trying to promote %s"
+msgstr ""
+
+#: steps_gtk.pm:469
+#, c-format
+msgid "in order to keep %s"
+msgstr ""
+
+#: steps_gtk.pm:474
+#, c-format
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+
+#: steps_gtk.pm:477
+#, c-format
+msgid "The following packages are going to be installed"
+msgstr ""
+
+#: steps_gtk.pm:478
+#, c-format
+msgid "The following packages are going to be removed"
+msgstr ""
+
+#: steps_gtk.pm:504
+#, c-format
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr ""
+
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr ""
+
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+
+#: steps_gtk.pm:512
+#, c-format
+msgid "Show automatically selected packages"
+msgstr ""
+
+#: steps_gtk.pm:516
+#, c-format
+msgid "Install"
+msgstr ""
+
+#: steps_gtk.pm:519
+#, c-format
+msgid "Load/Save selection"
+msgstr ""
+
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
+msgid "Updating package selection"
+msgstr ""
+
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
+msgid "Minimal install"
+msgstr ""
+
+#: steps_gtk.pm:543
+#, c-format
+msgid "Software Management"
+msgstr ""
+
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
+msgid "Choose the packages you want to install"
+msgstr ""
+
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
+#, c-format
+msgid "Installing"
+msgstr ""
+
+#: steps_gtk.pm:590
+#, c-format
+msgid "No details"
+msgstr ""
+
+#: steps_gtk.pm:610
+#, c-format
+msgid "Time remaining:"
+msgstr ""
+
+#: steps_gtk.pm:611
+#, c-format
+msgid "(estimating...)"
+msgstr ""
+
+#: steps_gtk.pm:637
+#, c-format
+msgid "%d package"
+msgid_plural "%d packages"
+msgstr[0] ""
+msgstr[1] ""
+
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
+#, c-format
+msgid "Summary"
+msgstr ""
+
+#: steps_gtk.pm:713
+#, c-format
+msgid "Configure"
+msgstr ""
+
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
+msgid "not configured"
+msgstr ""
+
+#: steps_gtk.pm:773 steps_interactive.pm:315
+#, c-format
+msgid ""
+"The following installation media have been found.\n"
+"If you want to skip some of them, you can unselect them now."
+msgstr ""
+
+#: steps_gtk.pm:789 steps_interactive.pm:321
+#, c-format
+msgid ""
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
+msgstr ""
+
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
+msgid "Copy whole CDs"
+msgstr ""
+
+#: steps_interactive.pm:40
+#, c-format
+msgid "An error occurred"
+msgstr ""
+
+#: steps_interactive.pm:105
+#, c-format
+msgid "Please choose your keyboard layout"
+msgstr ""
+
+#: steps_interactive.pm:109
+#, c-format
+msgid "Here is the full list of available keyboards:"
+msgstr ""
+
+#: steps_interactive.pm:153
+#, c-format
+msgid "Install/Upgrade"
+msgstr ""
+
+#: steps_interactive.pm:157
+#, c-format
+msgid "Is this an install or an upgrade?"
+msgstr ""
+
+#: steps_interactive.pm:159
+#, c-format
+msgid ""
+"_: This is a noun:\n"
+"Install"
+msgstr ""
+
+#: steps_interactive.pm:161
+#, c-format
+msgid "Upgrade %s"
+msgstr ""
+
+#: steps_interactive.pm:184
+#, c-format
+msgid "Encryption key for %s"
+msgstr ""
+
+#: steps_interactive.pm:217
+#, c-format
+msgid "Cancel installation, reboot system"
+msgstr ""
+
+#: steps_interactive.pm:218
+#, c-format
+msgid "New Installation"
+msgstr ""
+
+#: steps_interactive.pm:219
+#, c-format
+msgid "Upgrade previous installation (not recommended)"
+msgstr ""
+
+#: steps_interactive.pm:223
+#, c-format
+msgid ""
+"Installer has detected that your installed Linux system could not\n"
+"safely be upgraded to %s.\n"
+"\n"
+"New installation replacing your previous one is recommended.\n"
+"\n"
+"Warning : you should backup all your personal data before choosing \"New\n"
+"Installation\"."
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:354
+#, c-format
+msgid ""
+"Change your Cd-Rom!\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
+"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
+msgstr ""
+
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
+msgid "Looking for available packages..."
+msgstr ""
+
+#: steps_interactive.pm:380
+#, c-format
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+
+#: steps_interactive.pm:428
+#, c-format
+msgid ""
+"Please choose load or save package selection.\n"
+"The format is the same as auto_install generated files."
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Load"
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Save"
+msgstr ""
+
+#: steps_interactive.pm:438
+#, c-format
+msgid "Bad file"
+msgstr ""
+
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
+
+#: steps_interactive.pm:456
+#, c-format
+msgid "GNOME"
+msgstr "GNOME"
+
+#: steps_interactive.pm:459
+#, c-format
+msgid "Desktop Selection"
+msgstr ""
+
+#: steps_interactive.pm:460
+#, c-format
+msgid "You can choose your workstation desktop profile."
+msgstr ""
+
+#: steps_interactive.pm:552
+#, c-format
+msgid "Selected size is larger than available space"
+msgstr ""
+
+#: steps_interactive.pm:576
+#, c-format
+msgid "Type of install"
+msgstr ""
+
+#: steps_interactive.pm:577
+#, c-format
+msgid ""
+"You have not selected any group of packages.\n"
+"Please choose the minimal installation you want:"
+msgstr ""
+
+#: steps_interactive.pm:582
+#, c-format
+msgid "With X"
+msgstr ""
+
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
+
+#: steps_interactive.pm:584
+#, c-format
+msgid "With basic documentation (recommended!)"
+msgstr ""
+
+#: steps_interactive.pm:585
+#, c-format
+msgid "Truly minimal install (especially no urpmi)"
+msgstr ""
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
+#, c-format
+msgid "Preparing installation"
+msgstr ""
+
+#: steps_interactive.pm:655
+#, c-format
+msgid "Installing package %s"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "There was an error ordering packages:"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "Go on anyway?"
+msgstr ""
+
+#: steps_interactive.pm:683
+#, c-format
+msgid "Retry"
+msgstr ""
+
+#: steps_interactive.pm:684
+#, c-format
+msgid "Skip this package"
+msgstr ""
+
+#: steps_interactive.pm:685
+#, c-format
+msgid "Skip all packages from medium \"%s\""
+msgstr ""
+
+#: steps_interactive.pm:686
+#, c-format
+msgid "Go back to media and packages selection"
+msgstr ""
+
+#: steps_interactive.pm:689
+#, c-format
+msgid "There was an error installing package %s."
+msgstr ""
+
+#: steps_interactive.pm:708
+#, c-format
+msgid "Post-install configuration"
+msgstr ""
+
+#: steps_interactive.pm:715
+#, c-format
+msgid "Please ensure the Update Modules media is in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr ""
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
+#, c-format
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
+msgstr ""
+
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
+#, c-format
+msgid "%s on %s"
+msgstr ""
+
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
+#, c-format
+msgid "Hardware"
+msgstr ""
+
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr ""
+
+#: steps_interactive.pm:972
+#, c-format
+msgid "Graphical interface"
+msgstr ""
+
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
+msgid "Network & Internet"
+msgstr ""
+
+#: steps_interactive.pm:991
+#, c-format
+msgid "Proxies"
+msgstr ""
+
+#: steps_interactive.pm:992
+#, c-format
+msgid "configured"
+msgstr ""
+
+#: steps_interactive.pm:1002
+#, c-format
+msgid "Security Level"
+msgstr ""
+
+#: steps_interactive.pm:1022
+#, c-format
+msgid "Firewall"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "activated"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "disabled"
+msgstr ""
+
+#: steps_interactive.pm:1041
+#, c-format
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr ""
+
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, c-format
+msgid "Preparing initial startup program..."
+msgstr ""
+
+#: steps_interactive.pm:1073
+#, c-format
+msgid "Be patient, this may take a while..."
+msgstr ""
+
+#: steps_interactive.pm:1089
+#, c-format
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+
+#: steps_interactive.pm:1121
+#, c-format
+msgid "Insert a blank floppy in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:1123
+#, c-format
+msgid "Creating auto install floppy..."
+msgstr ""
+
+#: steps_interactive.pm:1134
+#, c-format
+msgid ""
+"Some steps are not completed.\n"
+"\n"
+"Do you really want to quit now?"
+msgstr ""
+
+#: steps_interactive.pm:1144
+#, c-format
+msgid "Congratulations"
+msgstr ""
+
+#: steps_interactive.pm:1147
+#, c-format
+msgid "Reboot"
+msgstr ""
+
+#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
+#: steps_list.pm:16
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Language"
+msgstr ""
+
+#: steps_list.pm:16 steps_list.pm:23
+#, c-format
+msgid "Localization"
+msgstr ""
+
+#: steps_list.pm:17
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"License"
+msgstr ""
+
+#: steps_list.pm:18
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Mouse"
+msgstr ""
+
+#: steps_list.pm:19 steps_list.pm:20
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Hard drive detection"
+msgstr ""
+
+#: steps_list.pm:21 steps_list.pm:22
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installation class"
+msgstr ""
+
+#: steps_list.pm:23
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Keyboard"
+msgstr ""
+
+#: steps_list.pm:24
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Security"
+msgstr ""
+
+#: steps_list.pm:25
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Partitioning"
+msgstr ""
+
+#: steps_list.pm:27 steps_list.pm:28
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Formatting"
+msgstr ""
+
+#: steps_list.pm:29
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Choosing packages"
+msgstr ""
+
+#: steps_list.pm:31
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installing"
+msgstr ""
+
+#: steps_list.pm:34
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Users"
+msgstr ""
+
+#: steps_list.pm:38 steps_list.pm:39
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Bootloader"
+msgstr ""
+
+#: steps_list.pm:40 steps_list.pm:41
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Configure X"
+msgstr ""
+
+#: steps_list.pm:42
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Summary"
+msgstr ""
+
+#: steps_list.pm:44 steps_list.pm:45
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Services"
+msgstr ""
+
+#: steps_list.pm:46
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Updates"
+msgstr ""
+
+#: steps_list.pm:48
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Exit"
+msgstr ""
diff --git a/perl-install/install/share/po/id.po b/perl-install/install/share/po/id.po
index 2cb3cf3cd..32be4a899 100644
--- a/perl-install/install/share/po/id.po
+++ b/perl-install/install/share/po/id.po
@@ -1,63 +1,92 @@
-# Instalator Grafis Mandriva Linux
-# Copyright (C) 1999 Mandriva
-# Budi Rachmanto <rac@mandrivalinux.org>, 2001-2003
-# Linux Indonesia <http://www.linux.or.id>, 1999-2001
-# Mohammad DAMT <mdamt@cdl2000.com>, 1999-2001
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+# Ahmad Ramadhana <ahmad_ramadhana@yahoo.com.sg>, 2005
# Andy <chandy@indo.net.id>, 1999
+# Bayu Artanto <bayuart@yahoo.com>, 2005
+# erwiensamantha <erwiensamantha@gmail.com>, 2005
+# erwiensamantha <erwiensamantha@gmail.com>, 2005
+# Firdaus <dausnux@gmail.com>, 2005
# Kelana <nk@telkom.net>, 1999
-# Willy Sudiarto Raharjo <willysr@gmail.com>, 2004 - 2007.
-# Erwien Samantha <erwiensamantha@gmail.com>, 2005.
-# Bayu Artanto <bayuart@yahoo.com>, 2005.
-# Ahmad Ramadhana <ahmad_ramadhana@yahoo.com.sg>, 2005.
-# Firdaus <dausnux@gmail.com>, 2005.
-# Sofian <sofianhanafi@yahoo.com>, 2005.
-#
+# Kiki <kiki.syahadat@yahoo.co.id>, 2013-2015
+# Kiki <kiki.syahadat@yahoo.co.id>, 2013
+# Kiki Syahadat <kiki.syahadat@yahoo.co.id, 2012
+# Kiki <kiki.syahadat@yahoo.co.id>, 2013
+# Sofian <sofianhanafi@yahoo.com>, 2005
msgid ""
msgstr ""
-"Project-Id-Version: DrakX 0.1\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2007-10-27 18:51+0700\n"
-"Last-Translator: Willy Sudiarto Raharjo <willysr@gmail.com>\n"
-"Language-Team: Indonesia <mdk-id@yahoogroups.com>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Kiki <kiki.syahadat@yahoo.co.id>\n"
+"Language-Team: Indonesian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/id/)\n"
+"Language: id\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 0.6\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Bergabunglah Bersama Kami!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Buatlah ini milik Anda!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Pilihan Anda!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Peralatan perkantoran"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Hiburan rumah"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Untuk anak-anak"
-#: any.pm:109
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Untuk keluarga!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Untuk developer!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Terima kasih!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Bebaskan!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Apakah Anda memiliki media tambahan lagi?"
+msgstr "Apakah Anda memiliki media bantu lanjutan?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -65,122 +94,164 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Media berikut ditemukan dan akan digunakan selama installasi: %s.\n"
+"Media berikut ditemukan dan akan digunakan selama instalasi: %s.\n"
"\n"
"\n"
-"Apakah Anda memiliki media installasi tambahan untuk dikonfigurasi?"
-
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
+"Apakah Anda memiliki media instalasi bantu untuk dikonfigurasi?"
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Jaringan (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Jaringan (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Jaringan (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL dari mirror?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL harus diawali dengan ftp:// atau http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "Menghubungi situs Mandriva Linux untuk mengambil daftar mirror..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Gagal menghubungi situs Mandriva Linux untuk mengambil daftar mirror yang "
-"tersedia"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Pilih mirror tempat Anda ingin mengambil paket"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
-msgstr "Setup NFS"
+msgstr "Pengaturan NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr "Harap masukkan nama host dan direktori dari media NFS Anda"
+msgstr "Silakan masukkan hostname dan direktori media NFS Anda"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
-msgstr "Nama host tidak ada"
+msgstr "Hostname tidak ada"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Direktori harus dimulai dengan \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
-msgstr "Nama host dari mount NFS ?"
+msgstr "Hostname dari mount NFS ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Direktori"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
-msgstr "Tambahan"
+msgstr "Media bantu"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"Tidak dapat menemukan file daftar paket pada mirror ini. Pastikan lokasinya "
+"Tidak bisa menemukan file daftar paket pada mirror ini. Pastikan lokasinya "
"benar."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Rilis"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Rilis"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Rilis"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Beberapa hardware pada komputer Anda memerlukan beberapa firmwares non free "
+"agar driver free software bisa bekerja."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Anda harus menghidupkan \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" berisi beberapa bagian dari sistem dan aplikasinya"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" berisi software non free.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Juga berisi firmware yang diperlukan untuk device tertentu untuk beroperasi "
+"(misal: beberapa perangkat grafis ATI/AMD, beberapa perangkat jaringan, "
+"beberapa perangkat RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" berisi software yang tidak bisa didistribusikan di setiap negara "
+"karena masalah paten software."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Juga berisi software dari \"%s\" yang dibangun ulang dengan kemampuan "
+"tambahan."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+"Di sini Anda bisa menghidupkan lebih banyak media jika Anda menginginkannya"
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Media ini menyediakan update paket untuk media \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Mencari paket yang sudah terinstall..."
+msgstr "Melihat paket yang sudah terinstall..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Mencari paket untuk diupgrade..."
+msgstr "Menemukan paket untuk diupgrade..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "Menghapus paket-paket sebelum upgrade..."
+msgstr "Menghapus paket sebelum upgrade..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -188,92 +259,92 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Paket berikut akan dihapus agar sistem Anda dapat di-upgrade: %s\n"
+"Paket berikut akan dihapus untuk memungkinkan upgrade sistem Anda: %s\n"
"\n"
"\n"
-"Apakah Anda ingin menghapus paket tersebut?\n"
+"Apakah Anda benar-benar ingin menghapus paket ini?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
-msgstr "Kesalahan membaca file %s"
+msgstr "Error membaca file %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Disk berikut telah diubah namanya:"
+msgstr "Disk berikut telah diubah nama:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (sebelumnya bernama %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
-msgstr "HFS"
+msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Jaringan"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Silahkan pilih media"
+msgstr "Silakan pilih sebuah media"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "File sudah ada. Timpa file ini ?"
+msgstr "File sudah ada. Timpa file ini?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Izin ditolak"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr "Nama NFS yang salah"
+msgstr "Nama NFS salah"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "Media rusak %s"
+msgstr "Media %s rusak"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Tidak bisa membuat screenshot sebelum buat partisi"
+msgid "Cannot make screenshots before partitioning"
+msgstr "Tidak bisa membuat screenshot sebelum mempartisi"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "Screenshot akan tersedia setelah installasi pada %s"
+msgstr "Screenshot akan tersedia setelah install di %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
-msgstr "Installasi"
+msgstr "Instalasi"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfigurasi"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Anda juga harus memformat %s"
@@ -284,35 +355,36 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Beberapa perangkat keras pada komputer Anda memerlukan driver \n"
-"``proprietary'' agar bekerja. Anda bisa mencarinya pada : %s"
+"Beberapa hardware pada komputer Anda memerlukan driver ``proprietari'' untuk "
+"bekerja.\n"
+"Anda bisa menemukan informasinya di: %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "Mengaktifkan jaringan"
+msgstr "Menaikkan jaringan"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "Menonaktifkan jaringan"
+msgstr "Menurunkan jaringan"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Silakan tunggu, mengambil file"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "tidak bisa menambah media"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr "Menyalin beberapa paket pada disk untuk kebutuhan di masa depan"
+msgstr "Menyalin beberapa paket pada disk untuk digunakan di kemudian hari"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Penyalinan sedang berjalan"
@@ -330,7 +402,7 @@ msgstr "penting"
#: pkgs.pm:34
#, c-format
msgid "very nice"
-msgstr "amat bagus"
+msgstr "sangat bagus"
#: pkgs.pm:35
#, c-format
@@ -342,7 +414,23 @@ msgstr "bagus"
msgid "maybe"
msgstr "mungkin"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Mendapatkan informasi paket dari meta-data XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Tidak ada info xml untuk media \"%s\", hanya sebagian hasil untuk paket %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Tidak ada deskripsi"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -351,352 +439,398 @@ msgstr ""
"Beberapa paket yang diminta oleh %s tidak bisa diinstall:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Terjadi kesalahan"
+msgstr "Sebuah error terjadi:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Sebuah error fatal terjadi: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Jangan tanya lagi"
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "transaksi installasi %d gagal"
+msgstr "Transaksi instalasi %d gagal"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Menginstall paket %s"
+msgstr "Instalasi paket gagal:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Workstation"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
-msgstr "Workstation Kantor"
+msgstr "Workstation Perkantoran"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Program office: pengolah kata (OpenOffice.org Writer, Kword), spreadsheet "
-"(OpenOffice.org Calc, Kspread), viewer pdf, dll"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Program office: pengolah kata (kword, abiword), spreadsheet (kspread, "
-"gnumeric), viewer pdf, dll"
+"Program perkantoran: pengolah kata (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), pembaca PDF, dll"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Komputer Game"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Program hiburan: arcade, papan, strategi, dll"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Komputer Multimedia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Program untuk memainkan/mengedit suara dan video"
+msgstr "Program untuk memutar/mengedit suara dan video"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Komputer Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Kumpulan aplikasi untuk membaca dan mengirimkan email dan berita (pine, "
-"mutt, tin..) dan untuk menjelajah Web"
+"Kumpulan peralatan untuk membaca dan mengirim surat dan berita (mutt, tin..) "
+"dan menjelajahi Web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Komputer Jaringan (klien)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Klien untuk berbagai protokol, termasuk ssh"
+msgstr "Klien untuk protokol yang berbeda termasuk ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Aplikasi untuk mempermudah konfigurasi komputer Anda."
+msgstr "Peralatan untuk memudahkan konfigurasi komputer Anda"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "Aplikasi Konsol"
+msgstr "Peralatan Konsol"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "Editor, shell, aplikasi file, terminal"
+msgstr "Editor, shell, peralatan file, terminal"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Pengembangan"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "Pustaka, program, dan file include untuk pengembangan C dan C++"
+msgstr "Librari, program dan file yang disertakan untuk pengembangan C dan C++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentasi"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Buku dan Howto untuk Linux dan Free Software"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Dukungan aplikasi pihak ketiga"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Server Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Server Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Gateway Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
-msgstr "Mail/Berita"
+msgstr "Surat/Berita"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Server mail Postfix, server berita Inn"
+msgstr "Server surat Postfix, server berita Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "Server Direktori"
+msgstr "Server direktori"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Server FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Nama Domain dan Network Information Server"
+msgstr "Server Nama Domain dan Informasi Jaringan"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Server Sharing File dan Printer"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Server NFS, server Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Basis Data"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Server Basis Data PostgreSQL dan MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Server Basis Data PostgreSQL dan MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
-msgstr "Mail"
+msgstr "Surat"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Server mail Postfix"
+msgstr "Server surat Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Server basis data PostgreSQL atau MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Server basis data PostgreSQL atau MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Komputer Server Jaringan"
+msgstr "Server Komputer Jaringan"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "server NFS, SMB, Proxy, dan SSH"
+msgstr "Server NFS, server SMB, server Proxy, server ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr "Mode Grafis"
+msgstr "Lingkungan Grafis"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Workstation KDE"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"K Desktop Environment, lingkungan grafis dasar dengan kumpulan aplikasi yang "
-"menyertainya"
+"K Desktop Environment, lingkungan grafis dasar dengan kumpulan peralatan "
+"yang menyertainya"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Workstation Gnome"
+msgstr "Workstation GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-"Lingkungan grafis dengan kumpulan aplikasi dan aplikasi desktop yang ramah "
-"pengguna"
+"Sebuah lingkungan grafis dengan kumpulan aplikasi dan peralatan desktop yang "
+"mudah digunakan"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Desktop IceWm"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Lingkungan grafis dengan kumpulan aplikasi dan aplikasi desktop yang ramah "
-"pengguna"
+"Lingkungan grafis yang ringan dengan seperangkat aplikasi dan peralatan "
+"desktop yang mudah digunakan"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Lingkungan kerja MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Lingkungan kerja Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Lingkungan grafis berbasis GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Desktop LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Port QT generasi selanjutnya dari lingkungan desktop yang ringan"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Lingkungan grafis yang cepat dan ringan"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Desktop LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Sebuah lingkungan grafis yang cepat dan ringan"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "Desktop Grafis lainnya"
+msgstr "Desktop Grafis Lainnya"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, dsb"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, dsb"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilitas"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Server SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Server Konfigurasi Remote Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Utilitas Jaringan/Pengawasan"
+msgstr "Utilitas/Monitoring Jaringan"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "Aplikasi pengawasan, akuntasi proses, tcpdump, nmap, ..."
+msgstr "Peralatan monitoring, penghitungan proses, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Wizard Mandriva"
+msgid "Mageia Wizards"
+msgstr "Wizard Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Wizard untuk mengkonfigurasi server"
@@ -707,10 +841,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Terjadi kesalahan, tetapi tidak diketahui cara mengatasinya dengan baik.\n"
-"Lanjutkan dengan resiko ditanggung sendiri."
+"Terjadi error yang tidak diketahui cara yang baik untuk menanganinya.\n"
+"Lanjutkan dengan resiko yang Anda tanggung sendiri."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -719,9 +853,9 @@ msgid ""
"\"\n"
msgstr ""
"Beberapa paket penting tidak terinstall dengan benar.\n"
-"Mungkin drive cdrom atau cdromnya yang rusak.\n"
-"Periksa cdrom pada komputer yang sudah terinstal dengan\n"
-"perintah \"rpm -qpl media/main/*.rpm\"\n"
+"Mungkin drive cdrom atau cdrom Anda rusak.\n"
+"Periksa cdrom pada komputer yang sudah terinstall menggunakan \"rpm -qpl "
+"media/main/*.rpm\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
@@ -730,338 +864,345 @@ msgstr "Memasuki langkah `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Installasi Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Instalasi %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
-msgstr "<Tab>/<Alt-Tab> antar elemen"
+msgstr "<Tab>/<Alt-Tab> di antara elemen"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr ""
+msgstr "Server Xorg lambat memulai. Silakan tunggu..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Sumber daya sistem Anda rendah. Anda akan mengalami kesulitan\n"
-"menginstall Mandriva Linux. Jika terjadi, Anda bisa mencoba\n"
-"installasi berbasis teks. Untuk melakukannya, tekan `F1' saat\n"
-"booting pada CDROM, lalu ketikkan `text'."
+"Sistem Anda memiliki sumber daya yang rendah. Anda mungkin menemukan "
+"beberapa\n"
+"masalah instalasi %s. Jika ini terjadi, Anda bisa mencoba instalasi berbasis "
+"teks.\n"
+"Untuk melakukannya, tekan `F1' saat booting pada CDROM, lalu masukkan `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Install Desktop KDE Mandriva"
+msgid "Media Selection"
+msgstr "Pemilihan Media"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Install Desktop GNOME Mandriva"
+msgid "Install %s Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Install Desktop GNOME %s"
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
-msgstr "Installasi kustomisasi"
+msgstr "Instalasi kustomisasi"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Desktop IceWm"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Desktop Plasma"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Desktop IceWm"
+msgstr "Desktop GNOME"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Desktop IceWm"
+msgstr "Desktop kustomisasi"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Ini adalah pratampil desktop '%s'."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Klik pada gambar untuk melihat pratampil lebih besar"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "Pilihan Grup Paket"
+msgstr "Pemilihan Grup Paket"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "Pilih paket individu"
+msgstr "Pemilihan paket individu"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Ukuran total: %d / %d MB"
+msgid "Unselect All"
+msgstr "Jangan pilih Semua"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Paket rusak"
+msgid "Total size: %d / %d MB"
+msgstr "Ukuran total: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versi: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Ukuran: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
-msgstr "Tingkat kepentingan: "
+msgstr "Penting:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Anda tidak bisa memilih/tidak memilih paket ini"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "karena %s hilang"
+msgstr "karena %s tidak ada"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "karena %s tidak terpenuhi"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "mencoba mempromosikan %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "untuk menjaga %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-"Anda tidak bisa memilih paket ini karena tidak ada ruang kosong yang tersisa"
+"Anda tidak bisa memilih paket ini karena tidak ada lagi ruang tersisa untuk "
+"menginstall"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
-msgstr "Paket berikut akan diinstal"
+msgstr "Paket berikut akan diinstall"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Paket berikut akan dihapus"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Ini merupakan paket wajib, tidak bisa dibuang"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Ini adalah paket wajib, tidak bisa tidak dipilih"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "Anda tidak bisa tidak memilih paket ini. Ia sudah terinstall"
+msgid "You cannot unselect this package. It is already installed"
+msgstr "Anda tidak bisa tidak memilih paket ini. Ini sudah terinstall"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Anda tidak bisa tidak memilih paket. Paket harus diupgrade"
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "Anda tidak bisa tidak memilih paket ini. Ini harus diupgrade"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "Tunjukkan paket yang sudah dipilih secara otomatis"
+msgstr "Tunjukkan paket terpilih secara otomatis"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
-msgstr "Instal"
+msgstr "Install"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Pilihan Muat/Simpan"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Mengupdate pilihan paket"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
-msgstr "Installasi minimal"
+msgstr "Instalasi minimal"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Manajemen Perangkat Lunak"
+msgstr "Manajemen Software"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
-msgstr "Pilih paket yang akan diinstal"
+msgstr "Pilih paket yang ingin Anda install"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Menginstall"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
-msgstr "Tanpa Detail"
+msgstr "Tidak ada rincian"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Sisa waktu"
+msgstr "Waktu tersisa:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Memperkirakan"
+msgstr "(memperkirakan...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d paket"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Ringkasan"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
-msgstr "Konfigurasikan"
+msgstr "Konfigurasi"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
-msgstr "tidak dikonfigurasikan"
-
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Pilihan Grup Paket"
+msgstr "tidak terkonfigurasi"
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"Media installasi berikut ditemukan. Jika Anda ingin\n"
-"melewati beberapa, Anda bisa tidak memilihnya sekarang."
+"Media instalasi berikut telah ditemukan.\n"
+"Jika Anda ingin melewati beberapa, Anda bisa tidak memilihnya."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Anda memiliki opsi untuk menyalin isi CD pada hard disk sebelum installasi. "
-"Proses akan dilanjutkan dari hard disk dan paket akantetap tersedia setelah "
-"sistem terinstall."
+"Anda memiliki opsi untuk menyalin isi dari CD ke hard disk sebelum "
+"instalasi.\n"
+"Proses kemudian akan dilanjutkan dari hard disk dan paket akan tetap "
+"tersedia setelah sistem terinstall."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Salin seluruh CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
-msgstr "Terjadi kesalahan"
+msgstr "Sebuah error terjadi"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Pilih layout keyboard Anda"
+msgstr "Silakan pilih layout keyboard Anda"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Berikut daftar keyboard yang tersedia"
+msgstr "Ini adalah daftar lengkap keyboard yang tersedia:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "Instal/Upgrade"
+msgstr "Install/Upgrade"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Installasi atau upgrade?"
+msgstr "Apakah ini instalasi atau upgrade?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Install"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Upgrade %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Kunci enkripsi untuk %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Batalkan instalasi, reboot sistem"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Installasi"
+msgstr "Instalasi Baru"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Upgrade instalasi sebelumnya (tidak direkomendasikan)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1069,37 +1210,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
+"Installer telah mendeteksi bahwa Linux yang terinstall di sistem Anda\n"
+"tidak bisa diupgrade dengan aman ke %s.\n"
+"\n"
+"Instalasi baru untuk menggantikan sistem lama Anda direkomendasikan.\n"
+"\n"
+"Peringatan : Anda harus membackup semua data pribadi Anda sebelum memilih \n"
+"\"Instalasi Baru\"."
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Mengkonfigurasi IDE"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Tidak ada ruang 1MB untuk bootstrap! Installasi akan dilanjutkan, tetapi "
-"untuk boot sistem, Anda perlu membuat partisi bootstrap pada DiskDrake"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Anda harus membuat PPC PReP Boot bootstrap! Installasi akan dilanjutkan, "
-"tetapi untuk boot sistem, Anda perlu membuat partisi bootstrap pada DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1108,169 +1237,212 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
"Ganti Cd-Rom Anda!\n"
-"\n"
-"Masukkan Cd-Rom berlabel \"%s\" pada drive dan tekan Ok. Jika Anda tidak \n"
-"punya, tekan Batal untuk menghindari installasi dari Cd-Rom ini."
+"Silakan masukkan Cd-Rom berlabel \"%s\" ke drive Anda dan tekan Ok "
+"setelahnya.\n"
+"Jika Anda tidak memilikinya, tekan Batal untuk menghindari instalasi dari Cd-"
+"Rom ini."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Mencari paket yang tersedia..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Sistem Anda tidak memilih ruang kosong yang cukup untuk installasi atau "
-"upgrade (%dMB > %dMB)"
+"Sistem Anda tidak memiliki cukup ruang tersisa untuk instalasi atau upgrade "
+"(%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Pilih muat atau simpan pilihan paket.\n"
-"Formatnya sama dengan file auto_install."
+"Silakan pilih muat atau simpan pemilihan paket.\n"
+"Formatnya sama dengan file yang dihasilkan auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "Beban"
+msgstr "Muat"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Simpan"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "File rusak"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Pilihan Grup Paket"
+msgstr "Pemilihan Desktop"
-#: steps_interactive.pm:472
-#, fuzzy, c-format
+#: steps_interactive.pm:460
+#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
-"Anda bisa memilih profil desktop workstation Anda: KDE, GNOME atau Kustom"
+msgstr "Anda bisa memilih profil desktop workstation Anda."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
-msgstr "Ukuran terpilih melebihi ruang yang ada"
+msgstr "Ukuran terpilih lebih besar dari ruang tersedia"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
-msgstr "Tipe installasi"
+msgstr "Tipe install"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-"Anda belum memilih grup paket.\n"
-"Pilih installasi minimal yang Anda inginkan:"
+"Anda belum memilih grup paket apapun.\n"
+"Silakan pilih instalasi minimal yang Anda inginkan:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Dengan X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Menginstall paket %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Install paket-paket yang disarankan"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "Dengan dokumentasi dasar (disarankan!)"
+msgstr "Dengan dokumentasi dasar (direkomendasikan!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "Installasi minimal sesungguhnya (khususnya tanpa urpmi)"
+msgstr "Benar-benar instalasi minimal (terutama tanpa urpmi)"
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Menyiapkan upgrade..."
-#: steps_interactive.pm:638
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
-msgstr "Mempersiapkan installasi"
+msgstr "Menyiapkan instalasi"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Menginstall paket %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "Terdapat kesalahan pengurutan paket:"
+msgstr "Terdapat error mengurut paket:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
-msgstr "Lanjutkan?"
+msgstr "Lanjutkan saja?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr "Ulang kembali"
+msgstr "Coba lagi"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr "Lewati paket ini"
+msgstr "Lewatkan paket ini"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "Lewati semua paket-paket dari media \"%s\""
+msgstr "Lewatkan semua paket dari media \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
-msgstr "Kembali pada media dan pemilihan paket"
+msgstr "Kembali ke pemilihan media dan paket"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "Terdapat kesalahan penginstallan paket %s."
+msgstr "Terdapat error menginstall paket %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
-msgstr "Konfigurasi pasca installasi"
+msgstr "Konfigurasi pasca instalasi"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr "Harap pastikan media Update Modul pada drive %s"
+msgstr "Silakan pastikan bahwa media Modul Update ada di drive %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Update"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Sekarang Anda memiliki kesempatan untuk mengatur media online."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Ini memungkinkan untuk menginstall update keamanan."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Untuk mengatur media tersebut, Anda harus memiliki koneksi\n"
+"internet yang bekerja.\n"
+"\n"
+"Apakah Anda ingin mengatur media update?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Paket berikut akan diinstall"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Coba lagi?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Kesalahan ketika menambahkan media"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1282,138 +1454,107 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Anda kini memiliki kesempatan untuk mendownload paket update. Paket ini\n"
-"telah diupdate setelah distribusi dirilis. Paket mungkin berisi perbaikan\n"
-"keamanan atau kesalahan.\n"
+"Sekarang Anda memiliki kesempatan untuk mendownload paket update. Paket ini\n"
+"telah diupdate setelah distribusi dirilis. Paket ini mungkin\n"
+"berisi perbaikan keamanan atau bug.\n"
"\n"
-"Untuk mendownload paket, Anda perlu koneksi Internet.\n"
+"Untuk mendownload paket ini, Anda memerlukan koneksi Internet.\n"
"\n"
"Apakah Anda ingin menginstall update?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s pada %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
-msgstr "Perangkat Keras"
+msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
-msgstr "Kartu suara"
-
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Apakah Anda memiliki kartu suara ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Jalankan \"sndconfig\" atau \"sndconfig\" setelah installasi untuk "
-"mengkonfigurasi kartu suara Anda"
+msgstr "Perangkat suara"
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Tidak ada kartu suara yang terdeteksi. Coba \"harddrake\" setelah installasi"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Antarmuka grafis"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Jaringan & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Proxy "
+msgstr "Proxy"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "terkonfigurasi"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
-msgstr "Tingkat Keamanan"
+msgstr "Level Keamanan"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
-msgstr "telah diaktifkan"
+msgstr "diaktifkan"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
-msgstr "telah dinonaktifkan"
+msgstr "dimatikan"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "Anda belum mengkonfigurasi X. Apakah Anda yakin?"
+msgstr "Anda belum mengkonfigurasi X. Apakah Anda yakin menginginkan ini?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Mempersiapkan bootloader..."
+msgid "Preparing initial startup program..."
+msgstr "Menyiapkan program startup awal..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
+msgstr "Harap bersabar, ini mungkin akan memakan waktu..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Nampaknya Anda memiliki komputer kuno/tidak dikenal, bootloader yaboot tidak "
-"akan bekerja. Installasi akan dilanjutkan, tetapi Anda harus menggunakan "
-"BootX atau cara lain untuk boot komputer Anda. Argumen kernel untuk fs root "
-"adalah: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"Pada tingkat keamanan ini, akses pada file pada partisi Windows dibatasi "
-"hanya pada administrator."
+"Pada level keamanan ini, akses ke file di dalam partisi Windows terbatas "
+"pada administrator."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "Masukkan disket kosong pada drive %s"
+msgstr "Masukkan floppy kosong ke drive %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Membuat disket installasi otomatis..."
+msgstr "Membuat instalasi otomatis floppy..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1424,15 +1565,15 @@ msgstr ""
"\n"
"Apakah Anda ingin keluar sekarang?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Selamat"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
-msgstr "Boot Ulang"
+msgstr "Reboot"
#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
#: steps_list.pm:16
@@ -1466,14 +1607,14 @@ msgstr "Mouse"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Deteksi hard disk"
+msgstr "Pendeteksian hard drive"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr "Kelas installasi"
+msgstr "Kelas instalasi"
#: steps_list.pm:23
#, c-format
@@ -1494,7 +1635,7 @@ msgstr "Keamanan"
msgid ""
"_: Keep these entry short\n"
"Partitioning"
-msgstr "Pembuatan partisi"
+msgstr "Mempartisi"
#: steps_list.pm:27 steps_list.pm:28
#, c-format
@@ -1508,7 +1649,7 @@ msgstr "Memformat"
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr "Memilih paket-paket"
+msgstr "Memilih paket"
#: steps_list.pm:31
#, c-format
@@ -1524,13 +1665,6 @@ msgid ""
"Users"
msgstr "Pengguna"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Jaringan"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1573,190 +1707,25 @@ msgid ""
"Exit"
msgstr "Keluar"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Mendownload file %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "Upgrade dari distribusi 32bit ke 64bit tidak didukung"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "Upgrade dari distribusi 64bit ke 32bit tidak didukung"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Anda telah memilih server berikut: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Server ini aktif secara default. Mereka tidak memiliki masalah keamanan,\n"
-#~ "tetapi bisa saja ditemukan. Pada kasus tersebut, Anda harus memastikan\n"
-#~ "untuk melakukan upgrade secepat mungkin.\n"
-#~ "\n"
-#~ "\n"
-#~ "Apakah Anda hendak menginstall server ini?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Desktop IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Menghubungi mirror untuk mendapatkan daftar paket yang tersedia..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Tidak dapat menghubungi mirror %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Membuat disket installasi otomatis"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Installasi otomatis dapat dibuat otomatis penuh jika\n"
-#~ "diinginkan, pada kasus ini akan mengambil hard disk!!\n"
-#~ "(ini berarti untuk menginstall pada komputer lain).\n"
-#~ "\n"
-#~ "Anda mungkin memilih untuk mengulangi installasi.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Ulang"
-
-#~ msgid "Automated"
-#~ msgstr "Otomatis"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Simpan pilihan paket"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL dari mirror?"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Apakah Anda ingin menggunakan aboot?"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL harus diawali dengan ftp:// atau http://"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Kesalahan menginstall aboot,\n"
-#~ "paksakan installasi meskipun merusak partisi pertama?"
-
-#~ msgid "All"
-#~ msgstr "Semua"
+#~ "Menghubungi situs web %s untuk mendapatkan daftar mirror yang tersedia..."
-#~ msgid "TV card"
-#~ msgstr "Kartu TV"
-
-#~ msgid "Boot"
-#~ msgstr "Boot"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Otentikasi"
-
-#~ msgid "Arkeia"
-#~ msgstr "Arkeia"
-
-#~ msgid "Flatout"
-#~ msgstr "Flatout"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "3D"
-
-#~ msgid "CMS"
-#~ msgstr "CMS"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "2007 product line"
-#~ msgstr "Jajaran produk 2007"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "Firewall Invictus"
-
-#~ msgid "Discovery Live Mode"
-#~ msgstr "Mode Discovery Live"
-
-#~ msgid "How to register"
-#~ msgstr "Bagaimana mendaftarkan diri"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "Rpmdrake 2"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "Layanan Online Mandriva"
-
-#~ msgid "New Theme"
-#~ msgstr "Tema baru"
-
-#~ msgid "Web 2.0"
-#~ msgstr "Web 2.0"
-
-#~ msgid "Kaspersky"
-#~ msgstr "Kaspersky"
-
-#~ msgid "LinDVD"
-#~ msgstr "LinDVD"
-
-#~ msgid "Skype"
-#~ msgstr "Skype"
-
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Transgaming/Cedega"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d paket, %d MB)"
-#~ msgstr[1] "(%d paket, %d MB)"
-
-#~ msgid "%d packages"
-#~ msgstr "%d paket"
-
-#~ msgid "Language"
-#~ msgstr "Bahasa"
-
-#~ msgid "License"
-#~ msgstr "Lisensi"
-
-#~ msgid "Installation class"
-#~ msgstr "Kelas installasi"
-
-#~ msgid "Formatting"
-#~ msgstr "Memformat"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Memilih paket-paket"
-
-#~ msgid "Users"
-#~ msgstr "Pengguna"
-
-#~ msgid "Networking"
-#~ msgstr "Jaringan"
-
-#~ msgid "Configure X"
-#~ msgstr "Konfigurasi X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Tidak bisa mengakses modul kernel yang berhubungan dengan kernal Anda "
-#~ "(file %s hilang), ini biasanya berarti disket boot tidak sinkron dengan "
-#~ "media installasi (buatlah disket boot baru)"
+#~ "Gagal menghubungi situs web %s untuk mendapatkan daftar mirror yang "
+#~ "tersedia"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Pilih mirror di mana Anda ingin mengambil paket"
diff --git a/perl-install/install/share/po/is.po b/perl-install/install/share/po/is.po
index a52309d80..f291029e3 100644
--- a/perl-install/install/share/po/is.po
+++ b/perl-install/install/share/po/is.po
@@ -1,57 +1,81 @@
-# Icelandic translation of DrakX.po
-# Translation file for Mandriva Linux graphic install, DrakX
-# Copyright (C) 1999,2003, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-#
-# Jóhann Þorvarðarson <johann.torvardarson@lais.is>, 1999-2000.
-# Þórarinn (Tony) R. Einarsson <thori@mindspring.com>, 1999-2000.
-# Pjetur G. Hjaltason <pjetur@pjetur.net>, 2003, 2005, 2006, 2007, 2008, 2009.
+# Translators:
+# Pjetur G. Hjaltason <pjetur@pjetur.net>, 2003,2005-2009
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-03-30 14:04+0000\n"
-"Last-Translator: Pjetur G. Hjaltason <pjetur@pjetur.net>\n"
-"Language-Team: Icelandic <kde-isl@molar.is>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Icelandic (http://www.transifex.com/MageiaLinux/mageia/"
+"language/is/)\n"
+"Language: is\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Vinnustöðin þín á USB lykli"
+msgid "For kids"
+msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "Mandriva uppsetningin með 100%% frjálsum, opnum hugbúnaði"
+msgid "For family!"
+msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Kannaðu Linux með Mandriva One"
+msgid "For developers!"
+msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/09_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Full Mandriva Linux vinnustöð, með þjónustu"
+msgid "Thank you!"
+msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/10_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: dreifingar við allra hæfi"
+msgid "Be Free!"
+msgstr ""
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Hefur þú einhverja aðra aukamiðla?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -64,94 +88,57 @@ msgstr ""
"\n"
"Hefur þú einhverja aðra miðla sem þarf að stilla?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "Geisladrif"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Net (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Net (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Net (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Vefslóð að spegli?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Slóð verður að byrja á ftp:// eða http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Hef samband við Mandriva Linux vefinn til að sækja lista yfir fáanlega "
-"spegla..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Mistókst að tengjast við Mandriva Linux vefinn til að sækja lista yfir "
-"fáanlega spegla"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Veldu spegilvélina þaðan sem á að sækja pakkanna"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS uppsetning"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Sláðu inn vélarnafn og möppu sem inniheldur NFS miðil"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Vélarnafn vantar"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Möppunafn verður að byrja á \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Vélarnafn á NFS tengipunkti?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Mappa"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Aukalegt"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -160,23 +147,90 @@ msgstr ""
"Finn ekki pakkalista-skrá á þessum spegli. Athugaðu hvort staðsetningin sé "
"rétt."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Athuga þegar uppsetta pakka..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Leita að pökkum til að uppfæra..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Fjarlægi pakka áður en uppfærsla hefst..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -189,87 +243,87 @@ msgstr ""
"\n"
"Viltu í alvöru fjarlægja þessa pakka?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Villa við lestur úr skránni %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Eftirfarandi diskar voru endurnefndir:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (áður nefnt %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Net"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Veldu miðil"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Skráin er þegar til. Skrifa yfir hana?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Aðgangi hafnað"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Rangt NFS nafn"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Gallaður miðill %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Get ekki tekið skjámyndir fyrr en disksneiðar hafa verið skilgreindar"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Skjámyndir verða tiltækar eftir uppsetningu í %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Set inn"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Stillingar"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Þú verður einnig að forsníða %s"
@@ -294,22 +348,22 @@ msgstr "Keyri upp netið"
msgid "Bringing down the network"
msgstr "Keyri niður netið"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Bíðið, sæki skrá"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "get ekki bætt við miðli"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Afrita nokkra pakka á diska til notkunar síðar"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Afritun í gangi"
@@ -339,7 +393,24 @@ msgstr "þægilegt"
msgid "maybe"
msgstr "kannski"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Engin XML-info skrá fyrir miðil \"%s\", aðeins takmarkaðar upplýsingar fyrir "
+"pakka %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Engin lýsing til"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -348,75 +419,76 @@ msgstr ""
"Suma pakka sem %s þarfnast, er ekki hægt að setja inn:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Villa kom upp:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Banvæn villa kom upp: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d Innsetningarfærslur brugðust"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Innsetning pakka tókst ekki:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Vinnustöð"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Skrifstofu-vinnustöð"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Skrifstofu forrit: ritvinnsla (OpenOffice.org Writer, Kword), töflureiknar "
-"(OpenOffice.org Calc, Kspread) pdf skoðarar, o.s.frv"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Skrifstofu forrit: ritvinnsla (kword, abiword), töflureiknar (kspread, "
-"gnumeric) pdf skoðarar, o.s.frv"
+"Skrifstofu forrit: ritvinnsla (LibreOffice Writer, Kword), töflureiknar "
+"(LibreOffice Calc, Kspread) pdf skoðarar, o.s.frv"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Leikja-(vinnu)stöð"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Leikjaforrit, skotleikir, borðleikir, herkænskuleikir og fleira"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Margmiðlunar-vinnustöð"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Spila og breyta hljóðskrám og kvikmyndum"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet-vinnustöð"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -425,270 +497,314 @@ msgstr ""
"Tól og tæki til að lesa og senda póst, fréttir (mutt,tin...) og til að "
"flakka á vefnum"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Netbiðlarar"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Biðlarar fyrir ýmsar samskiptareglur þ.m.t ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Tæki til að auðvelda uppsetningu tölvunnar"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Skjától"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Ritlar, skeljar, skráatól, skjáhermar"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Forritun"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C og C++ undirforritasöfn, forrit og lýsingaskrár"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Handbækur"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Bækur og leiðbeiningar um Linux og frjálsan hugbúnað"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Stuðningur fyrir forrit þriðja aðila"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Vefmiðlari"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Hópvinnuforrit"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Miðlari"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Eldveggur/beinir"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet netgátt"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Póstur/Fréttir"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix póstþjónusta, Inn fréttaþjónusta"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Upplýsingaveita"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP Miðlari"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Nafnaþjónustur og net-upplýsingaveitur"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Skráa og prentmiðlari"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS miðlari, Samba miðlari"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Gagnagrunnar"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL og MySQL gagnagrunns-miðlarar"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL og MariaDB gagnagrunns-miðlarar"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Vefur/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Póstur"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix póstþjónusta"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL eða MySQL gagnagrunns-miðlarar"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL eða MariaDB gagnagrunns-miðlarar"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Netþjónustur"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS-þjónusta, SMB-þjónusta, Staðgengils-þjónusta, ssh-þjónusta"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Myndrænt umhverfi"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE Vinnustöð"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "KDE (K Desktop Environment). Gluggastjóri með safni hjálparforrita"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Gnome vinnustöð"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "Gluggastjóri með notendavænum forritum og skjáborðs-tólum"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
#, c-format
msgid "LXDE Desktop"
msgstr "LXDE Skjáborð"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:191
#, c-format
-msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+msgid "A lightweight fast graphical environment"
msgstr ""
-"Létt og hratt gluggaumhverfi með notendavænum forritum og skjáborðs-tólum"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Aðrir gluggastjórar"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, o.s.frv"
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Tól"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH Miðlari"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin, stillingar á fjartengdri tölvu um vef"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Netforrit/Neteftirlit"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Eftirlitstól, vinna með notendur, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Ráðgjafar"
+msgid "Mageia Wizards"
+msgstr "Mageia Ráðgjafar"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Ráðgjafar til að stilla miðlara"
@@ -702,7 +818,7 @@ msgstr ""
"Óþekkt villa kom upp sem ekki er hægt að meðhöndla.\n"
"Haltu áfram á eigin ábyrgð."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -722,253 +838,257 @@ msgstr "Byrja skref `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux uppsetning %s"
+msgid "%s Installation %s"
+msgstr "%s uppsetning %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> milli skrefa"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg miðlari er seinn að ræsa. Bíddu við..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Ef vélin þín er vanbúin að einhverju leyti þá getur þú átt\n"
-"í vandræðum með að setja upp Mandriva Linux.\n"
+"í vandræðum með að setja upp %s.\n"
"Ef svo er, þá gætir þú reynt að nota texta-uppsetningu.\n"
"Til þess að gera það, ýttu á F1 þegar þú ræsir af\n"
"geisladisknum og sláðu síðan inn `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Setja inn Mandriva KDE umhverfi"
+msgid "Media Selection"
+msgstr "Val á miðlum"
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Setja inn Mandriva GNOME umhverfi"
+msgid "Install %s GNOME Desktop"
+msgstr "Setja inn %s GNOME umhverfi"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Sérsniðin uppsetning"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE Skjáborð"
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME Skjáborð"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Sérsniðið Skjáborð"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Hér er forsýn af '%s' skjáborðinu."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Smelltu á myndir til að sjá stærri forsýn"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Val á pakkahóp"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Val á einstökum pökkum"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Heildarstærð: %d / %d MB"
+msgid "Unselect All"
+msgstr "Afvelja allt"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Skemmdur pakki"
+msgid "Total size: %d / %d MB"
+msgstr "Heildarstærð: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Útgáfa: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Stærð: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Mikilvægi: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Þú getur ekki valið/af-valið þennan pakka"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "vegna þess að %s vantar"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "vegna þess að %s er ekki uppfyllt"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "reyni að hækka vægi %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "til þess að halda %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Þú getur ekki valið þennan pakka því það er ekki nægilegt pláss"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Eftirfarandi pakkar verða settir inn"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Eftirfarandi pakkar verða fjarlægðir"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Þessi pakki verður að vera uppsettur, þú getur ekki af-valið hann"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Þú getur ekki af-valið þennan pakka hann er þegar uppsettur"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Þú getur ekki af-valið þennan pakka, það verður að uppfæra hann"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Sýna sjálfvirkt valda pakka"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Setja inn"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Sækja/Vista val"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Uppfæri val á pökkum"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Lágmarks uppsetning"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Hugbúnaðarumsýsla"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Veldu pakkana sem þú vilt setja inn"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Set inn"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Engar upplýsingar"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Tími eftir:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(áætla...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pakki"
msgstr[1] "%d pakkar"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Yfirlit"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Stilla"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "ekki stillt"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Val á miðlum"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -977,12 +1097,12 @@ msgstr ""
"Eftirfarandi uppsetningar-miðlar hafa fundist.\n"
"Ef þú vilt sleppa einhverjum af þeim, þá getur þú af-valið þá núna."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Þú getur valið að afrita innihald geisladiskanna inn á diskinn fyrir "
@@ -990,72 +1110,72 @@ msgstr ""
"Síðan mun uppsetning halda áfram frá disknum og pakkarnir verða til staðar "
"þegar kerfið er að fullu uppsett."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Afrita alla geisladiska"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Villa kom upp"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Veldu lyklaborðs-uppsetningu"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Hér er tæmandi listi af tiltækum lyklaborðum:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Innsetning/Uppfærsla"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Er þetta innsetning eða uppfærsla?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Innsetning"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Uppfæra %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Dulritunar-lykill fyrir %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Hætta við innsetningu, endurræsa kerfi"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Ný Uppsetning"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Uppfæra fyrri uppsetningu (ekki mælt með)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1063,44 +1183,18 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Uppsetningarforritið hefur ályktað að ekki sé hægt með öryggi að uppfæra "
-"Mandriva Linux kerfið þitt í %s.\n"
-"\n"
-"Mælt er með að setja inn nýja uppsetningu sem kemur í stað þeirrar fyrri.\n"
-"\n"
-"Aðvörun : þú ættir að afrita öll persónuleg gögn áður en þú velur \"Ný "
-"Uppsetning\"."
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Uppsetning IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Ekki pláss fyrir 1MB ræsigeira! Uppsetning mun halda áfram, en til að ræsa "
-"kerfið þitt verður þú að búa til ræsi-disksneið með DiskDrake"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Þú þarft að búa til PPC PReP for-ræsingu! Uppsetningin mun halda áfram, en "
-"til að ræsa kerfið, þarft þú að búa til ræsi-disksneið með DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1114,21 +1208,21 @@ msgstr ""
"Ef þú hefur ekki diskinn, ýttu þá að \"Hætta við\" til að sleppa uppsetningu "
"frá þessum diski."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Leita að tiltækum pökkum..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Það er ekki nóg laust pláss fyrir innsetningu eða uppfærslu á kerfinu þínu (%"
-"dMB > %dMB)"
+"Það er ekki nóg laust pláss fyrir innsetningu eða uppfærslu á kerfinu þínu "
+"(%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1137,52 +1231,52 @@ msgstr ""
"Veldu hvort eigi að sækja eða vista pakkaval.\n"
"Sniðið er það sama og á auto_install skrám."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Sækja"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Vista"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Gölluð skrá"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Val á Skjáborði"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Þú getur valið vinnustöðvar-umhverfi (skjáborð)."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Valin stærð er stærri en tiltækt pláss"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tegund uppsetningar"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1191,87 +1285,126 @@ msgstr ""
"Þú hefur ekki valið neina pakkahópa.\n"
"Veldu lágmarksuppsetningu sem þú vilt:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Með X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Set inn pakka %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Með grunn-handbókum (mælt með!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Alger lágmarksuppsetning (ekkert urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Undirbý innsetningu"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Set inn pakka %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Það kom upp villa við að raða pökkum:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Viltu samt halda áfram?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Reyna aftur"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Sleppa þessum pakka"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Sleppa ölum pökkum af miðli \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Fara til baka í val á miðlum og pökkum"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Það kom upp villa við innsetningu pakka %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Lokastillingar"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Staðfestu að Uppfærslu-miðill sé í drifi %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Uppfærslur"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Eftirfarandi pakkar verða settir inn"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Reyna aftur?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Villa þegar miðli var bætt við"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1291,111 +1424,80 @@ msgstr ""
"\n"
"Viltu sækja uppfærslurnar?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s á %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Vélbúnaður"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Hljóðkort"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Er kannski ISA hljóðkort í vélinni?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Keyrðu \"alsaconf\" eða \"sndconfig\" eftir uppsetningu til að stilla "
-"hljóðkortið þitt"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Ekkert hljóðkort fannst. Reyndu að keyra \"harddrake\" eftir uppsetningu"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Myndrænt viðmót"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Staðarnet og Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Sel"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "stillt"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Öryggisþrep"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Eldveggur"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "virkt"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "óvirkt"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Þú hefur ekki sett upp X, ertu viss um að þú viljir þetta?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Set upp ræsistjórann..."
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Verið þolinmóð þetta getur tekið nokkra stund..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Það lítur út fyrir að þú sért að nota OldWorld eða óþekkta vél, yaboot "
-"ræsiforritið mun ekki virka fyrir þig. Uppsetning mun halda áfram en þú "
-"verður að nota BootX eða aðrar leiðir til að ræsa vélina. kjarna-viðfangið "
-"fyrir rótarsneiðina er: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1404,17 +1506,17 @@ msgstr ""
"Í þessu öryggisþrepi er aðgangur að Windows disksneiðum takmarkaður við "
"kerfisstjóra."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Settu tóman diskling í drif %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Bý til diskling fyrir sjálfvirka uppsetningu..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1425,12 +1527,12 @@ msgstr ""
"\n"
"Viltu virkilega hætta núna?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Til hamingju"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Endurræsa"
@@ -1525,13 +1627,6 @@ msgid ""
"Users"
msgstr "Notendur"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Net"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1574,33 +1669,24 @@ msgid ""
"Exit"
msgstr "Hætta"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Vefslóð að spegli?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Slóð verður að byrja á ftp:// eða http://"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Þú hefur ákveðið að uppfæra kerfið þitt í %s. KDE 3.5 hefur fundist á\n"
-#~ "kerfinu þínu. Þetta uppsetningarforrit getur ekki varðveitt KDE 3.5 "
-#~ "uppsetningu.\n"
-#~ "Ef þú velur að halda áfram, þá verður KDE 4 sett upp í stað KDE 3 og "
-#~ "persónulegar\n"
-#~ "stillingar tapast.\n"
-#~ "Til að uppfæra með KDE 3.5, og varðveita persónulegar stillingar, "
-#~ "endurræstu\n"
-#~ "þá tölvuna þína og notaðu Mandriva bakka-uppfærsluforritið."
-
-#~ msgid "Proceed"
-#~ msgstr "Halda áfram"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Sæki skrá %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "Ekki er stutt við uppfærslu frá 32-bita í 64-bita dreifingu"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "Ekki er stutt við uppfærslu frá 64-bita í 32-bita dreifingu"
+#~ "Hef samband við %s vefinn til að sækja lista yfir fáanlega spegla..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr ""
+#~ "Mistókst að tengjast við %s vefinn til að sækja lista yfir fáanlega spegla"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Veldu spegilvélina þaðan sem á að sækja pakkanna"
diff --git a/perl-install/install/share/po/it.po b/perl-install/install/share/po/it.po
index 04ca46e0e..f80751725 100644
--- a/perl-install/install/share/po/it.po
+++ b/perl-install/install/share/po/it.po
@@ -1,59 +1,82 @@
-# translation of it.po to Italian
-# Copyright (C) 2000, 2001 Mandriva S.A.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Paolo Lorenzin <pasusu@tin.it>, 2000.
-# Simone Riccio <s.riccio@aeb-informatica.it>, 2002.
-# Roberto Rosselli Del Turco <rosselli@ling.unipi.it>, 2001, 2002,2003.
-# Marco De Vitis <mdv@spin.it>, 2003.
-# Andrea Celli <andrea.celli@libero.it>, 2003, 2004, 2005, 2006, 2007, 2008, 2009.
-# Giuseppe Levi <giuseppe.levi@email.it>, 2005.
-# Federica De Luca <my_utopia2002@hotmail.com>, 2008.
+# Translators:
+# killer1987 <marcello.anni@alice.it>, 2013-2014
+# Matteo Pasotti <matteo@xquiet.eu>, 2012-2013
msgid ""
msgstr ""
-"Project-Id-Version: it\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-09 19:43+0200\n"
-"Last-Translator: \n"
-"Language-Team: Italian <timl@freelists.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: killer1987 <marcello.anni@alice.it>\n"
+"Language-Team: Italian (http://www.transifex.com/MageiaLinux/mageia/language/"
+"it/)\n"
+"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Unisciti a noi!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Rendila tua!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "La tua scelta!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Strumenti per l'ufficio"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Home entertainment"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Per i bambini"
-#: any.pm:109
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Per la famiglia!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Per gli sviluppatori!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Grazie!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Sentiti libero!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Hai delle altre fonti d'installazione?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -67,95 +90,58 @@ msgstr ""
"\n"
"Disponi di altre fonti di installazione da configurare?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Rete (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Rete (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Rete (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL del mirror?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "L'URL deve iniziare con ftp:// o http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Connessione al sito Mandriva Linux per ricevere l'elenco dei mirror "
-"disponibili..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Impossibile collegarsi al sito Mandriva Linux per ricevere l'elenco dei "
-"mirror disponibili"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Scegli un mirror da cui prelevare i pacchetti"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Configurazione NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
"Immetti il nome dell'host e della directory che userai come supporto NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Manca il nome dell'host"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Una directory deve iniziare con \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Nome dell'host da montare con NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Directory"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Aggiuntivo"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -164,23 +150,99 @@ msgstr ""
"Impossibile trovare su questo mirror il file con l'elenco dei pacchetti. "
"Assicurati che l'indirizzo sia esatto."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Alcuni dispositivi hardware sul tuo elaboratore necessitano di firmware "
+"proprietari affinché il software libero dei driver possa funzionare."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Dovresti abilitare \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" contiene varie parti del sistema e delle sue applicazioni"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" contiene software non libero.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Contiene inoltre firmware necessari al funzionamento di certi dispositivi "
+"(eg: qualche scheda grafica ATI/AMD, qualche scheda di rete, qualche scheda "
+"RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" contiene software che non può essere distribuito in qualsiasi paese a "
+"causa di brevetti software."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Contiene inoltre software da \"%s\" ricostruito con funzionalità aggiuntive."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Qui puoi abilitare più fonti se lo desideri."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+"Questa fonte fornisce aggiornamenti dei pacchetti provenienti da \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Ricerca dei pacchetti già installati..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Ricerca dei pacchetti da aggiornare..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Rimozione dei pacchetti prima di aggiornare..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -194,90 +256,90 @@ msgstr ""
"\n"
"Vuoi davvero rimuoverli?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Errore nel leggere il file %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Questi dischi hanno cambiato nome:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (che prima si chiamava %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rete"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Scegli un supporto"
+msgstr "Scegli una fonte"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Il file esiste già. Lo sovrascrivo?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permesso negato"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Nome NFS non valido"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "Supporto non valido %s"
+msgstr "Fonte non valida %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Impossibile fare degli screenshot prima del partizionamento"
+msgid "Cannot make screenshots before partitioning"
+msgstr "Non è possibile fare schermate prima di partizionamento"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Gli screenshot saranno disponibili in %s dopo l'installazione."
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Installazione"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configurazione"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
-msgstr "E' necessario formattare anche %s"
+msgstr "È necessario formattare anche %s"
#: interactive.pm:16
#, c-format
@@ -298,22 +360,22 @@ msgstr "Attivazione della rete..."
msgid "Bringing down the network"
msgstr "Disattivazione della rete..."
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "Per favore attendere, recupero file in corso"
+msgstr "Attendi, recupero file in corso"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr "impossibile aggiungere il supporto"
+msgstr "impossibile aggiungere la fonte"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Copia di alcuni pacchetti sui dischi per un'utilizzazione futura"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Copia in corso"
@@ -343,7 +405,24 @@ msgstr "utile"
msgid "maybe"
msgstr "forse"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Ottengo le informazioni del pacchetto dai meta-dati XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Mancano informazioni XML per la fonte \"%s\", solo risultati parziali per il "
+"pacchetto %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nessuna descrizione"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -352,270 +431,271 @@ msgstr ""
"Alcuni pacchetti richiesti da %s non possono essere installati:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Si è verificato un errore:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Si è verificato un errore fatale: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Non chiedere più"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d transazioni dell'installazione fallite"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Installazione dei pacchetti non riuscita:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
-msgstr "Workstation"
+msgstr "Postazione di lavoro"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Postazione per lavoro da ufficio"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programmi da ufficio: word-processor (OpenOffice.org Writer, Kword), fogli "
-"elettronici (OpenOffice.org Calc, Kspread), visualizzatori PDF, ecc."
+"Programmi da ufficio: editor di testo (LibreOffice Writer, Kword), fogli "
+"elettronici (LibreOffice Calc, Kspread), visualizzatori PDF, ecc."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Programmi da ufficio: word-processor (kword, abiword), fogli elettronici "
-"(kspread, gnumeric), visualizzatori pdf, ecc."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Computer per giocare"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programmi di svago: arcade, da tavolo, di strategia, ecc."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "Computer multimediale"
+msgstr "Postazione multimediale"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programmi di riproduzione/modifica audio e video"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Postazione Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Gruppo di programmi per leggere e inviare posta e news (mutt, tin...) e per "
+"Gruppo di programmi per leggere, inviare posta e news (mutt, tin...) e per "
"navigare il Web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Computer in rete (client)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Client per vari protocolli, incluso ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Strumenti per semplificare la configurazione del computer"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Programmi da riga di comando"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editor, shell, gestione file, terminali"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Sviluppo"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Librerie di sviluppo, programmi e file \"include\" per C e C++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentazione"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Libri e Howto su Linux e sul Software Libero"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Supporto per applicazioni di terze parti"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Server web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Server Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Gateway per Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Mail/News"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Server di posta Postfix, server di news Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "Directory Server"
+msgstr "Server di Directory"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Server FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Server per Domain Name e Network Information"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Server per la condivisione di file e stampanti"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Server NFS, server Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Database"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Server di database PostgreSQL e MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Server di database PostgreSQL e MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache e Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Posta"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Server di posta Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Server di database PostgreSQL o MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Server di database PostgreSQL o MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Server di rete"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Server NFS, server SMB, server proxy, server SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Ambiente grafico"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Workstation grafica con KDE"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -624,80 +704,125 @@ msgstr ""
"Il K Desktop Environment, l'ambiente grafico di base integrato da una ricca "
"collezione di strumenti"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Workstation grafica con GNOME"
+msgstr "Postazione di lavoro grafica con GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-"Un ambiente grafico con un gruppo di applicazioni user-friendly e strumenti "
-"per il desktop"
+"Un ambiente grafico con un gruppo di applicazioni e di strumenti per il "
+"desktop di facile utilizzo"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Desktop LXDE"
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Un ambiente grafico leggero e veloce dotato di applicazioni user-friendly e "
-"di strumenti per il desktop"
+"Un ambiente grafico più leggero con un set di applicazioni e strumenti per "
+"il desktop pensati per l'utente"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Stazione di lavoro MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Stazione di lavoro Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Un ambiente grafico basato su GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Desktop LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Un port QT di nuova generazione dell'ambiente desktop lightweight"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Un ambiente grafico leggero e veloce con un supporto dedicato"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Desktop LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Un ambiente grafico veloce e leggero"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Altri desktop grafici"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, ecc."
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, etc"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilità"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Server SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Server Webmin per la configurazione remota"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Utilità/Monitoraggio della rete"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Strumenti di monitoraggio, accounting dei processi, tcpdump, nmap,..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Procedure guidate Mandriva"
+msgid "Mageia Wizards"
+msgstr "Assistenti Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Procedure guidate per la configurazione del server"
@@ -711,7 +836,7 @@ msgstr ""
"Si è verificato un errore non gestibile automaticamente.\n"
"Puoi continuare a tuo rischio e pericolo."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -720,7 +845,7 @@ msgid ""
"\"\n"
msgstr ""
"Alcuni pacchetti importanti non sono stati installati correttamente.\n"
-"Il lettore di cdrom o il cdrom sono danneggiati.\n"
+"Il lettore di cdrom o il cdrom possono essere danneggiati.\n"
"Controlla il cdrom su un sistema già installato digitando\n"
" \"rpm -qpl media/main/*.rpm\"\n"
@@ -731,253 +856,258 @@ msgstr "Avvio della fase \"%s\"\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Installazione di Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "%s Installazione %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> muove il cursore"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "Il server Xorg è lento ad avviarsi. Per favore attendere..."
+msgstr "Il server Xorg è lento ad avviarsi. Attendi..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Il sistema ha risorse scarse. Potrebbero verificarsi problemi installando\n"
-"Mandriva Linux. In tal caso, puoi tentare un'installazione testuale. \n"
-"Per farlo, premi \"F1\" all'avvio da CDROM e poi digita \"text\"."
+"Il tuo sistema ha risorse non sufficienti. Potresti avere dei\n"
+"problemi nell'installazione di %s. Se ciò si verifica, puoi\n"
+"provare un'installazione testuale. Per questo, premi `F1' \n"
+"quando si avvia il CD-ROM, quindi digita `text'."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Selezione delle fonti d'installazione"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Installa l'ambiente KDE per Mandriva"
+msgid "Install %s Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Installa l'ambiente GNOME per Mandriva"
+msgid "Install %s GNOME Desktop"
+msgstr "Installa il desktop GNOME %s"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Installazione personalizzata"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Desktop KDE"
+msgid "Plasma Desktop"
+msgstr "Desktop Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Desktop GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Desktop personalizzato"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Ecco l'anteprima del desktop '%s'."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Clicca sulle immagini per ottenere un'anteprima più grande"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Selezione per gruppi di pacchetti"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Selezione individuale dei pacchetti"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Dimensione totale: %d / %d MB"
+msgid "Unselect All"
+msgstr "Deseleziona tutti"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pacchetto non valido"
+msgid "Total size: %d / %d MB"
+msgstr "Dimensione totale: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versione: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Dimensione:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Importanza: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Non puoi selezionare/deselezionare questo pacchetto"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "per la mancanza di %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "perché %s non è soddisfatto"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "Ricerca del miglior pacchetto per %s..."
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "per conservare %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-"Non puoi selezionare questo pacchetto. Non c'è spazio sufficiente per "
+"Non puoi selezionare questo pacchetto perché non c'è spazio sufficiente per "
"installarlo"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "I seguenti pacchetti stanno per essere installati"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "I seguenti pacchetti stanno per essere rimossi"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Questo è un pacchetto indispensabile, non può essere tolto"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Questo è un pacchetto obbligatorio, non puoi deselezionarlo"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "Non si può deselezionare questo pacchetto. È già installato"
+msgid "You cannot unselect this package. It is already installed"
+msgstr "Non puoi deselezionare questo pacchetto. È già installato"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Non si può deselezionare questo pacchetto. Deve essere aggiornato"
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "Non puoi deselezionare questo pacchetto. Deve essere aggiornato"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Mostra i pacchetti selezionati automaticamente"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installa"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Carica/salva selezione"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Aggiornamento scelta pacchetti"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Installazione minimale"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Gestione software"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Scegli i pacchetti che vuoi installare"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Installazione"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Senza dettagli"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Tempo restante:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(stima in corso...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pacchetto"
msgstr[1] "%d pacchetti"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Riepilogo"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configura"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "non configurata"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Selezione delle fonti d'installazione"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -986,85 +1116,85 @@ msgstr ""
"Sono state trovate queste fonti d'installazione.\n"
"Se vuoi ignorarne qualcuna, la puoi deselezionare ora."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Prima dell'installazione, è possibile copiare il contenuto dei CD sul disco "
-"fisso\n"
-"L'installazione continuerà dal disco fisso e i pacchetti resteranno "
-"disponibili anche quando il sistema sarà installato."
+"Hai la possibilità di copiare il contenuto dei CD sul disco rigido prima "
+"dell'installazione.\n"
+"Si proseguirà così dal disco rigido e i pacchetti rimarranno disponibili una "
+"volta che il sistema è completamente installato."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Copia tutti i CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Si è verificato un errore"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Scegli la mappa della tastiera"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Ecco la lista completa delle tastiere disponibili:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Installazione/Aggiornamento"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "È un'installazione o un aggiornamento?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installazione"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Aggiornamento di %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
-msgstr "Chiave di codifica per %s"
+msgstr "Chiave di cifratura per %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Cancella l'installazione, riavvia il sistema"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Nuova Installazione"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Aggiorna l'installazione precedente (Non raccomandato)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1072,45 +1202,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"L'installer ha riscontrato che il tuo sistema Mandriva Linux non può\n"
-" essere aggiornato in modo sicuro a %s.\n"
+"L'installer ha rilevato che il sistema Linux installato non può essere "
+"aggiornato a %s in sicurezza.\n"
"\n"
-"Si raccomanda una nuova installazione che sostituisca la precedente. \n"
+"Raccomandiamo una nuova installazione che sostituisca quella precedente.\n"
"\n"
-"Attenzione : è consigliato un backup di tutti i dati personali \n"
-"prima di scegliere \"Nuova Installazione\"."
+"Attenzione: devi fare una copia di tutti i tuoi dati personali prima di "
+"scegliere \"Nuova installazione\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Sto configurando IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Non c'è spazio libero per un bootstrap di 1MB! L'installazione continua, ma "
-"per avviare il sistema dovrai creare la partizione di bootstrap con DiskDrake"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Devi creare una partizione di avvio \"PPC PReP\"! L'installazione continua, "
-"ma non potrai avviare il sistema, se prima non avrai creato la partizione di "
-"avvio con DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1123,21 +1233,21 @@ msgstr ""
"pronto.\n"
"Se non lo hai, premi Annulla per saltare l'installazione da quel Cd-Rom."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Sto cercando i pacchetti disponibili..."
+msgstr "Ricerca dei pacchetti disponibili..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Sul sistema non è rimasto sufficiente spazio libero per l'installazione o "
"l'aggiornamento (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1146,52 +1256,53 @@ msgstr ""
"Scegli se caricare o salvare la selezione di pacchetti.\n"
"Il formato è lo stesso dei file generati con auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Carica"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Salva"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "File non valido"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Selezione Desktop"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "Puoi scegliere il profilo della tua workstation per il desktop"
+msgstr ""
+"Puoi scegliere il profilo della tua postazione di lavoro per il desktop"
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Lo spazio richiesto è maggiore di quello disponibile"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tipo di installazione"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1200,88 +1311,127 @@ msgstr ""
"Nessun gruppo di pacchetti risulta selezionato .\n"
"Scegli il tipo di installazione minima desiderato:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Con X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Installazione del pacchetto %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Installa i pacchetti consigliati"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Con la documentazione essenziale (raccomandata!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Installazione veramente minimale (in particolare niente urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Preparazione del aggiornamento..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Sto preparando l'installazione"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Installazione del pacchetto %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "C'è un errore nell'ordinamento dei pacchetti:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Vado avanti comunque?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Riprova"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Salta questo pacchetto"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Salta tutti i pacchetti provenienti da \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Torna alla scelta dei pacchetti e delle fonti"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "C'è stato un errore nell'installazione del pacchetto %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Configurazione post installazione"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
"Assicurati che gli \"Update Modules\" siano leggibili dal dispositivo %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Aggiornamenti"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "I seguenti pacchetti stanno per essere installati"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Riprovare?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Errore nell'aggiunta della fonte"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1302,111 +1452,80 @@ msgstr ""
"\n"
"Vuoi installare gli aggiornamenti?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s in %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Scheda audio"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Hai una scheda audio ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Lancia \"alsaconf\" o \"sndconfig\" dopo l'installazione per configurare la "
-"scheda audio"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Nessuna scheda audio rilevata. Prova con \"harddrake\" dopo l'installazione."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interfaccia grafica"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Rete e Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxy"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "configurato"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Livello di sicurezza"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "attivato"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "disabilitato"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Non hai configurato X. Sei sicuro di non volerlo fare?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Preparazione del bootloader..."
+msgid "Preparing initial startup program..."
+msgstr "Sto preparando l'installazione..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr "sii paziente, potrebbe servire un po' di tempo..."
+msgstr "Sii paziente, potrebbe servire un po' di tempo..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Apparentemente disponi di una macchina OldWorld o sconosciuta, il bootloader "
-"yaboot non andrà bene per te.L'installazione continuerà, ma dovrai usare "
-"BootX o qualche altro metodo per avviare il tuo computer. L'argomento da "
-"passare al kernel per il fs radice è: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1415,33 +1534,33 @@ msgstr ""
"A questo livello di sicurezza, l'accesso ai file delle partizioni Windows è "
"riservato all'amministratore."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Inserisci un floppy vuoto nell'unità %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Sto creando il floppy di installazione automatica..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-"Alcune fasi non sono completate.\n"
+"Alcune fasi non sono state completate.\n"
"\n"
"Vuoi veramente interrompere adesso?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Congratulazioni"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Riavvia"
@@ -1536,13 +1655,6 @@ msgid ""
"Users"
msgstr "Utenti"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rete"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1585,28 +1697,25 @@ msgid ""
"Exit"
msgstr "Esci"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL del mirror?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "L'URL deve iniziare con ftp:// o http://"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr ""
+#~ "Contattando il sito web %s per ottenere l'elenco dei mirror disponibili..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Hai deciso di aggiornare a %s questo sistema su cui è stato rilevato KDE "
-#~ "3.5.\n"
-#~ "La procedura d'installazione non può mantenere KDE 3.5 dopo un "
-#~ "aggiornamento.\n"
-#~ "Se prosegui, KDE 4 sostituirà KDE 3 e perderai le tue impostazioni "
-#~ "personali per KDE.\n"
-#~ "Per cambiare versione conservando KDE 3.5 e le tue impostazioni "
-#~ "personali,\n"
-#~ "riavvia il sistema e aggiornalo usando l'applet Mandriva per gli "
-#~ "aggiornamenti."
-
-#~ msgid "Proceed"
-#~ msgstr "Procedi"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "recupero di [%s] non riuscito"
+#~ "È fallito il contatto col sito web %s per ottenere la lista dei mirror "
+#~ "disponibili"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Scegli un mirror da cui recuperare i pacchetti"
diff --git a/perl-install/install/share/po/ja.po b/perl-install/install/share/po/ja.po
index 70f346b2d..8b957a576 100644
--- a/perl-install/install/share/po/ja.po
+++ b/perl-install/install/share/po/ja.po
@@ -1,56 +1,83 @@
-# translation of DrakX.po to Japanese
-# Drakbootdisk Japanese translation
-# Copyright (C) 2000,2003, 2004 Free Software Foundation, Inc.
-# YAMAGATA Hiroo <hiyori13@alum.mit.edu>, 2000.
-# UTUMI Hirosi <utuhiro78@yahoo.co.jp>, 2003, 2004.
-# Yukiko Bando <ybando@k6.dion.ne.jp>, 2004-2009.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# kakurasan <kakurasan@gmail.com>, 2017
+# UTUMI Hirosi <utuhiro78@yahoo.co.jp>, 2003-2004
+# YAMAGATA Hiroo <hiyori13@alum.mit.edu>, 2000
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-ja\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-03-22 21:11+0900\n"
-"Last-Translator: Yukiko Bando <ybando@k6.dion.ne.jp>\n"
-"Language-Team: Japanese <cooker-i18n@mandrivalinux.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: YAMAGATA Hiroo <hiyori13@alum.mit.edu>, 2000\n"
+"Language-Team: Japanese (http://app.transifex.com/MageiaLinux/mageia/"
+"language/ja/)\n"
+"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "ご参加ください!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "あなたのものにしましょう!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "あなたが決めるのです!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "オフィス ツール"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "ホーム エンターテインメント"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "子供にも"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "家族にも!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "開発者にも!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "ありがとうございます!"
-#: any.pm:109
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "自由でいましょう!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "他に補助的なメディアがありますか?"
+msgstr "他に追加するメディアはありますか?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -58,122 +85,163 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"次のインストールメディアを検出しました: %s \n"
+"以下のメディアが検出され、インストールの間に使用されます: %s \n"
"\n"
"\n"
-"他に設定するメディアはありますか?"
-
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
+"他に設定するメディアはありますか?"
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "ネットワーク (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "ネットワーク (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "ネットワーク (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "ミラーの URL"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL は ftp:// または http:// で始まらなければなりません"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "Mandriva Linux のサイトに接続してミラーのリストを取得しています..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Mandriva Linux ウェブサイトへの接続に失敗したため、利用可能なミラーのリストを"
-"取得できませんでした"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "パッケージを取得するミラーを選択"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS の設定"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "NFS メディアのホスト名とディレクトリを入力してください"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "ホスト名がありません"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "ディレクトリは \"/\" で始まらなければなりません"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS マウントのホスト名"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "ディレクトリ"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
-msgstr "補助"
+msgstr "追加のメディア"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"パッケージリストのファイルが見つかりません。ミラーの場所が正しいか確認してく"
+"パッケージ リストのファイルが見つかりません。ミラーの場所が正しいか確認してく"
"ださい。"
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"このマシン上の幾つかのハードウェアにはフリー ソフトウェアのドライバが動作する"
+"ために幾つかの非フリーなファームウェアが必要です。"
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "\"%s\" を有効にしたほうがよいでしょう"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" には各種システムとそのアプリケーションが含まれます"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" には非フリーなソフトウェアが含まれます。\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"これには幾つかのデバイスが動作するために必要なファームウェアも含まれます "
+"(例: 幾つかのATI/AMD グラフィック カード, 幾つかのネットワーク カード, 幾つか"
+"の RAID カード, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" にはソフトウェア特許によりすべての国で配布することができないソフトウェ"
+"アが含まれます。"
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"これには \"%s\" のソフトウェアに追加の機能を有効にしてビルドしたものも含まれ"
+"ます。"
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "ここで必要に応じて追加のメディアを有効にすることができます。"
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "このメディアはメディア \"%s\" に対するパッケージの更新を提供します"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "インストール済みパッケージを探しています..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "更新するパッケージを探しています..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "アップグレードする前にパッケージを削除しています..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -184,90 +252,90 @@ msgstr ""
"システムを更新するため以下のパッケージを削除します: %s\n"
"\n"
"\n"
-"これらのパッケージを削除してよろしいですか?\n"
+"これらのパッケージを削除してよろしいですか?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
-msgstr "ファイル %s を読み込み中にエラー"
+msgstr "ファイル %s の読み込み時にエラーが発生しました"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "次のディスクの名前は変更されました:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (変更前の名前は %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "ネットワーク"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "メディアを選んでください"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "ファイルが既に存在します。上書きしますか?"
+msgstr "ファイルが既に存在します。上書きしますか?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "アクセス許可がありません"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "不正な NFS 名"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "不正なメディア %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "パーティション設定が終わるまでスクリーンショットは撮れません"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
"スクリーンショットは %s にあります。インストール後に利用可能になります。"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "インストール"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "設定"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "%s もフォーマットしてください"
@@ -278,35 +346,36 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"お使いのハードウェアの中にプロプラエタリ・ドライバが必要なものがあります。\n"
+"お使いのハードウェアの中に ``プロプライエタリ'' ドライバが必要なものがありま"
+"す。\n"
"詳しくは以下をご参照ください: %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "ネットワークを確立"
+msgstr "ネットワークを有効にしています"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "ネットワークを切断"
+msgstr "ネットワークを無効にしています"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "ファイルを取得しています。お待ちください。"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "メディアを追加できません"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr "後で利用するためにパッケージをディスクにコピー"
+msgstr "幾つかのパッケージを後で利用するためにディスクにコピーしています"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "コピーしています"
@@ -336,7 +405,23 @@ msgstr "秀"
msgid "maybe"
msgstr "可"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "XML メタ データからパッケージ情報を取得しています..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"メディア %s に XML 情報がないため、パッケージ %s の検索結果は不完全です"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "説明なし"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -345,344 +430,395 @@ msgstr ""
"%s が要求するいくつかのパッケージをインストールできません:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "エラーが発生しました"
+msgstr "エラーが発生しました:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "致命的なエラーが発生しました: %s"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "次回から確認しない"
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d 件のインストールが失敗しました"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "パッケージ %s をインストール"
+msgstr "パッケージのインストールに失敗しました:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "ワークステーション"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
-msgstr "オフィスワークステーション"
+msgstr "オフィス ワークステーション"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"オフィスソフト: ワープロ (OpenOffice.org Writer, Kword), 表計算 (OpenOffice."
-"org Calc, Kspread), PDF ビューアなど"
+"オフィス プログラム: ワープロ (LibreOffice Writer, Kword), 表計算 "
+"(OpenOffice.org Calc, Kspread), PDF ビューアなど"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"オフィスソフト: ワープロ (kword,abiword), 表計算 (kspread,gnumeric), PDF "
-"ビューアなど"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
-msgstr "ゲームステーション"
+msgstr "ゲーム ステーション"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "ゲームプログラム: アーケードゲーム, ボードゲーム, 戦略ゲームなど"
+msgstr "娯楽プログラム: アーケード ゲーム, ボード ゲーム, 戦略ゲームなど"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "マルチメディアステーション"
+msgstr "マルチメディア ステーション"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "サウンドと動画の再生/編集ソフト"
+msgstr "サウンドと動画の再生/編集プログラム"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "インターネットステーション"
+msgstr "インターネット ステーション"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
-msgstr "メールとニュースの送受信用ツール (mutt,tin..) とウェブブラウズ用ツール"
+msgstr ""
+"メールとニュースの送受信用ツール (mutt,tin..) とウェブ ブラウズ用ツール"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "ネットワーク (クライアント)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "ssh などの各種プロトコル用クライアント"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "コンピュータの設定を簡単にするツール"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "コンソールツール"
+msgstr "端末用ツール"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "エディタ, シェル, ファイル関連ツール, ターミナル"
+msgstr "エディタ, シェル, ファイル関連ツール, 端末"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
-msgstr "開発用"
+msgstr "開発パッケージ"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C/C++ の開発ライブラリ, プログラム, include ファイル"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "ドキュメント"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Linux/フリーソフト関連の文書とHowto"
+msgstr "Linux やフリー ソフトウェアの文書と Howto"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Linux Standard Base, サードパーティのアプリケーションをサポート"
+msgstr "Linux Standard Base, サード パーティのアプリケーションをサポート"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Web サーバ"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "グループウェア"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
-msgstr "Kolabサーバ"
+msgstr "Kolab サーバ"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "ファイアウォール/ルータ"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
-msgstr "インターネットゲートウェイ"
+msgstr "インターネット ゲートウェイ"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "メール/ニュース"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix メールサーバ, Inn ニュースサーバ"
+msgstr "Postfix メール サーバ, Inn ニュース サーバ"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "ディレクトリサーバ"
+msgstr "ディレクトリ サーバ"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP サーバ"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "ドメイン名/ネットワークインフォメーションサーバ"
+msgstr "ドメイン名とネットワーク情報のサーバ"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "ファイル/プリンタ共有サーバ"
+msgstr "ファイルとプリンタの共有サーバ"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
-msgstr "NFS サーバ/Samba サーバ"
+msgstr "NFS サーバ, Samba サーバ"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "データベース"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL/MySQLデータベースサーバ"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL や MariaDB のデータベース サーバ"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "メール"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Postfix メールサーバ"
+msgstr "Postfix メール サーバ"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL/MySQL データベースサーバ"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL や MariaDB のデータベース サーバ"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "ネットワークコンピュータサーバ"
+msgstr "ネットワーク コンピュータ サーバ"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS サーバ, SMB サーバ, プロキシサーバ, SSH サーバ"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "グラフィカル環境"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE ワークステーション"
+msgid "Plasma Workstation"
+msgstr "Plasma ワークステーション"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
-msgstr "KDE - さまざまなツールを含む定番グラフィカル環境"
+msgstr "KDE, さまざまなツールを含む基本的なグラフィカル環境"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME ワークステーション"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
-msgstr "使いやすいアプリケーションとデスクトップツールを含むグラフィカル環境"
+msgstr ""
+"ユーザ フレンドリなアプリケーションやデスクトップ ツールを含むグラフィカル環"
+"境"
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Xfce ワークステーション"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+"ユーザ フレンドリなアプリケーションやデスクトップ ツールを含む、より軽量なグ"
+"ラフィカル環境"
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE ワークステーション"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon ワークステーション"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "GNOME に基づいたグラフィカル環境"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt デスクトップ"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "軽量デスクトップ環境の次世代の QT 移植版"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment デスクトップ"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "熱心な支持者を持つ軽量高速なグラフィカル環境"
+
+#: share/meta-task/compssUsers.pl:189
#, c-format
msgid "LXDE Desktop"
msgstr "LXDE デスクトップ"
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
-msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "使いやすいアプリケーションとデスクトップツールを含むグラフィカル環境"
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "軽量高速なグラフィカル環境"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "その他のグラフィカルデスクトップ"
+msgstr "その他のグラフィカル デスクトップ"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm など"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker や Fvwm など"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "ユーティリティ"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH サーバ"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin リモート設定サーバ"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "ネットワークユーティリティ/モニタリング"
+msgstr "ネットワーク ユーティリティ/モニタリング"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "モニタリングツール, プロセス管理, tcpdump, nmap..."
+msgstr "モニタリング ツール, プロセス管理, tcpdump, nmap..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva ウィザード"
+msgid "Mageia Wizards"
+msgstr "Mageia ウィザード"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "サーバ設定ウィザード"
@@ -696,7 +832,7 @@ msgstr ""
"エラーが発生しました。しかし対処する方法がわかりません。\n"
"自己責任で続けてください。"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -715,340 +851,342 @@ msgstr "%s を開始\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux のインストール %s"
+msgid "%s Installation %s"
+msgstr "%s のインストール %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> 項目間を移動"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg サーバの起動には時間がかかります。お待ちください..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"システムのリソースが十分でないため、Mandriva Linux のインストール中に\n"
-"問題が発生する可能性があります。その場合は次の要領でテキストモードによる\n"
+"システムのリソースが十分でないため、%s のインストール中に\n"
+"問題が発生する可能性があります。その場合は次の要領でテキスト モードによる\n"
"インストールを試してみてください。\n"
"CD-ROM から起動 -> F1 を押す -> 'text' と入力"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Mandriva KDE デスクトップをインストール"
+msgid "Media Selection"
+msgstr "メディアの選択"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Mandriva GNOME デスクトップをインストール"
+msgid "Install %s Plasma Desktop"
+msgstr "%s Plasma デスクトップをインストール"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "%s GNOME デスクトップをインストール"
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
-msgstr "カスタムインストール"
+msgstr "カスタム インストール"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE デスクトップ"
+msgid "Plasma Desktop"
+msgstr "Plasma デスクトップ"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME デスクトップ"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
-msgstr "カスタムデスクトップ"
+msgstr "カスタム デスクトップ"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "%s デスクトップのプレビューです。"
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "画像をクリックすると大きなプレビューが表示されます"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "パッケージグループを選択"
+msgstr "パッケージ グループを選択"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "パッケージを個別に選択"
-# Changed "total size" to "total", due to problem of available
-# space on screen.
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "合計: %d/%d MB"
+msgid "Unselect All"
+msgstr "すべて選択解除"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "不正なパッケージ"
+msgid "Total size: %d / %d MB"
+msgstr "合計サイズ: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "バージョン: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "サイズ: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
-msgstr "重要性: "
+msgstr "重要度: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "このパッケージの選択/非選択は変更できません"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s がないために"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "%s が依存を満たしていないために"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%s をアップグレードするために"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s を維持するために"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"このパッケージは選択できません。インストールに必要な空き容量がありません。"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "以下のパッケージをインストールします"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "以下のパッケージを削除します"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "これは必須パッケージです。選択を解除することはできません。"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "このパッケージの選択は解除できません。既にインストールされています。"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "このパッケージの選択は解除できません。アップグレードが必要です。"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "自動的に選択されたパッケージを表示"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "インストール"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "選択を読み込む/保存する"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "パッケージの選択を更新"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "パッケージ一覧の階層表示を切り替える"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "最小インストール"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "ソフトウェアの管理"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "インストールするパッケージを選んでください"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
-msgstr "インストール中"
+msgstr "インストール"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
-msgstr "詳細なし"
+msgstr "詳細を非表示"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "残り時間:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(試算しています...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d 個のパッケージ"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "まとめ"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "設定"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "設定されていません"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "メディアの選択"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"次のインストールメディアを検出しました。\n"
+"次のインストール メディアを検出しました。\n"
"使用しないものがあればここで選択を解除してください。"
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"インストールする前に CD の内容をハードドライブにコピーすることも可能です。\n"
-"そうするとインストーラはハードドライブからインストールを続けます。コピーされ"
+"インストールする前に CD の内容をハード ドライブにコピーすることも可能です。\n"
+"そうするとインストーラはハード ドライブからインストールを続けます。コピーされ"
"たパッケージはインストール完了後も利用できます。"
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "CD 全体をコピー"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "エラーが発生しました"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "キーボードの配列を選んでください"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "利用可能なすべてのキーボードのリスト:"
+msgstr "利用可能なすべてのキーボードの一覧:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "インストール/更新"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "インストールか更新を選んでください"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "インストール"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s を更新"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s の暗号鍵"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "インストールを中止し、システムを再起動"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "新しくインストール"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "既存のシステムをアップグレード (非推奨)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1056,46 +1194,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"インストーラは既にインストールされている Mandriva Linux を\n"
-"安全に %s にアップグレードできませんでした。\n"
+"インストーラはこのインストール済みの Linux システムが無事に %s に\n"
+"アップグレードできなかったことを検出しました。\n"
"\n"
-"アップグレードせずに新しくインストールすることをお勧めします。\n"
+"以前のシステムを置き換えて新しくインストールすることが推奨されます。\n"
"\n"
-"警告: 「新しくインストール」を選択する前に、必ず個人データの\n"
-"バックアップを作成してください。"
+"警告 : \"新しくインストール\" を選択する前にあなた個人のデータをすべてバック"
+"アップしたほうがよいでしょう。"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "IDE を設定"
+msgid "Configuring CD/DVD"
+msgstr "CD/DVD を設定しています"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"1 MB のブートストラップ用の空き容量がありません。インストールを続けますが、シ"
-"ステムを起動するには、DiskDrake でブートストラップパーティションを作成する必"
-"要があります。"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"PPC PReP ブートストラップを作成する必要があります。インストールを続けますが、"
-"システムを起動するには、DiskDrake でブートストラップパーティションを作成する"
-"必要があります。"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1107,21 +1224,21 @@ msgstr ""
"\"%s\" という CD-ROM をドライブに入れて「OK」を押してください。\n"
"お持ちでない場合は「キャンセル」を押してください。"
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "利用可能なパッケージを探しています..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"あなたのシステムにはインストールまたはアップグレードに必要な空き容量がありま"
"せん (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1130,141 +1247,185 @@ msgstr ""
"パッケージの選択を読み込むか保存するかを選んでください。\n"
"形式は auto_install で生成されたファイルと同じです。"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "読み込む"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "保存する"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "不正なファイル"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "デスクトップの選択"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "ワークステーションのデスクトッププロファイルを選択."
+msgstr "ワークステーションのデスクトップ プロファイルを選択できます。"
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "指定されたサイズが空き容量を超えています"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "インストールの種類"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-"パッケージグループが選択されていません。\n"
+"パッケージ グループが選択されていません。\n"
"インストールする最低限のものを選んでください:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X を使う"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "パッケージ %s をインストール"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "推奨パッケージをインストール"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "基本的なドキュメントを入れる (推奨)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "最小限のインストール (urpmi も含まれません)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "アップグレードを準備しています..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "インストールの準備"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
-msgstr "パッケージ %s をインストール"
+msgstr "パッケージ %s をインストールしています"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "パッケージを並べ替え中にエラーが発生:"
+msgstr "パッケージを並べ替え中にエラーが発生しました:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
-msgstr "続けますか?"
+msgstr "続けますか?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "再試行"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "このパッケージを飛ばす"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "メディア %s のすべてのパッケージを飛ばす"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "メディアとパッケージの選択に戻る"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "パッケージ %s のインストール中にエラーが発生しました。"
+msgstr "パッケージ %s のインストール時にエラーが発生しました。"
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "インストール後の設定"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr "更新モジュールメディアがドライブ %s に入っていることを確認してください"
+msgstr ""
+"更新モジュール メディアがドライブ %s に入っていることを確認してください"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "更新"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "ここでオンライン メディアを設定できます。"
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "これはセキュリティ更新をインストール可能にします。"
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"これらのメディアを設定するには、稼働中のインターネット接続が必要となりま"
+"す。\n"
+"\n"
+"更新メディアを設定しますか?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "ダウンローダがインストールできませんでした"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "やり直しますか?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "メディアの追加に失敗しました"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1282,132 +1443,101 @@ msgstr ""
"\n"
"パッケージのダウンロードにはインターネット接続が必要です。\n"
"\n"
-"更新されたパッケージをインストールしますか?"
+"更新されたパッケージをインストールしますか?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%2$s の %1$s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "ハードウェア"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
-msgstr "サウンドカード"
-
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "ISA サウンドカードをお使いですか?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"インストール後に alsaconf か sndconfig を実行してサウンドカードを設定してくだ"
-"さい。"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"サウンドカードが見つかりません。インストール後に harddrake で再度設定を試みて"
-"ください。"
+msgstr "サウンド カード"
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
-msgstr "グラフィカルインターフェース"
+msgstr "グラフィカル インターフェース"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "ネットワークとインターネット"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "プロキシ"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "設定済み"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
-msgstr "セキュリティレベル"
+msgstr "セキュリティ レベル"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "ファイアウォール"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "有効"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "無効"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "X が設定されていません。本当によろしいですか?"
+msgstr "X が設定されていません。本当によろしいですか?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "ブートローダを準備中..."
+msgid "Preparing initial startup program..."
+msgstr "最初に開始するプログラムを準備しています..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr "しばらく時間がかかります。お待ちください。"
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"OldWorld もしくは不明なアーキテクチャのマシンをお使いのようです。このマシンで"
-"は yaboot は動きません。インストールを続けますが、マシンを起動するには、"
-"BootX もしくは他の方法が必要です。'root fs' のカーネル引数は 'root=%s' です。"
+msgstr "しばらく時間がかかります。お待ちください..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"このセキュリティレベルでは、Windows パーティションのファイルへのアクセスが管"
+"このセキュリティ レベルでは、Windows パーティションのファイルへのアクセスが管"
"理者のみに限定されます。"
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "空のフロッピーをドライブ %s に入れてください"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "インストール自動化フロッピーを作成中..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1416,14 +1546,14 @@ msgid ""
msgstr ""
"一部の設定が完了していません。\n"
"\n"
-"本当に終了しますか?"
+"本当に終了しますか?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "おめでとうございます"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "再起動"
@@ -1439,7 +1569,7 @@ msgstr "言語を選択"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr "ローカライゼーション"
+msgstr "言語"
#: steps_list.pm:17
#, c-format
@@ -1460,14 +1590,14 @@ msgstr "マウス"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "ハードドライブを検出"
+msgstr "ハード ドライブの検出"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr "インストールクラス"
+msgstr "インストール クラス"
#: steps_list.pm:23
#, c-format
@@ -1509,7 +1639,7 @@ msgstr "パッケージの選択"
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "インストール中"
+msgstr "インストール"
#: steps_list.pm:34
#, c-format
@@ -1518,19 +1648,12 @@ msgid ""
"Users"
msgstr "ユーザ"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "ネットワーク"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
"_: Keep these entry short\n"
"Bootloader"
-msgstr "ブートローダ"
+msgstr "ブート ローダ"
#: steps_list.pm:40 steps_list.pm:41
#, c-format
@@ -1566,45 +1689,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "終了"
-
-#~ msgid "Proceed"
-#~ msgstr "続行"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "ファイル %s をダウンロード中..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr ""
-#~ "32bit から 64bit ディストリビューションへのアップグレードはサポートされて"
-#~ "いません"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr ""
-#~ "64bit から 32bit ディストリビューションへのアップグレードはサポートされて"
-#~ "いません"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "以下のサーバを選択されました: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "これらのサーバはデフォルトで起動されます。現在、既知のセキュリティ問題\n"
-#~ "はありませんが、新たに発見されるかもしれません。その場合は、できるだけ\n"
-#~ "早急にアップグレードしてください。\n"
-#~ "\n"
-#~ "\n"
-#~ "本当にこれらのサーバをインストールしますか?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm デスクトップ"
diff --git a/perl-install/install/share/po/ka.po b/perl-install/install/share/po/ka.po
new file mode 100644
index 000000000..eaeb48978
--- /dev/null
+++ b/perl-install/install/share/po/ka.po
@@ -0,0 +1,1608 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Georgian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/ka/)\n"
+"Language: ka\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
+msgid "Do you have further supplementary media?"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:154
+#, c-format
+msgid ""
+"The following media have been found and will be used during install: %s.\n"
+"\n"
+"\n"
+"Do you have a supplementary installation medium to configure?"
+msgstr ""
+
+#: any.pm:162
+#, c-format
+msgid "Network (HTTP)"
+msgstr ""
+
+#: any.pm:163
+#, c-format
+msgid "Network (FTP)"
+msgstr ""
+
+#: any.pm:164
+#, c-format
+msgid "Network (NFS)"
+msgstr ""
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr ""
+
+#: any.pm:225
+#, c-format
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
+
+#: any.pm:229
+#, c-format
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr ""
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr ""
+
+#: any.pm:593
+#, c-format
+msgid "Finding packages to upgrade..."
+msgstr ""
+
+#: any.pm:612
+#, c-format
+msgid "Removing packages prior to upgrade..."
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:850
+#, c-format
+msgid ""
+"The following packages will be removed to allow upgrading your system: %s\n"
+"\n"
+"\n"
+"Do you really want to remove these packages?\n"
+msgstr ""
+
+#: any.pm:1075
+#, c-format
+msgid "Error reading file %s"
+msgstr ""
+
+#: any.pm:1283
+#, c-format
+msgid "The following disk(s) were renamed:"
+msgstr ""
+
+#: any.pm:1285
+#, c-format
+msgid "%s (previously named as %s)"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "HTTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "FTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "NFS"
+msgstr ""
+
+#: any.pm:1361 steps_interactive.pm:979
+#, c-format
+msgid "Network"
+msgstr ""
+
+#: any.pm:1365
+#, c-format
+msgid "Please choose a media"
+msgstr ""
+
+#: any.pm:1381
+#, c-format
+msgid "File already exists. Overwrite it?"
+msgstr ""
+
+#: any.pm:1385
+#, c-format
+msgid "Permission denied"
+msgstr ""
+
+#: any.pm:1433
+#, c-format
+msgid "Bad NFS name"
+msgstr ""
+
+#: any.pm:1454
+#, c-format
+msgid "Bad media %s"
+msgstr ""
+
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
+
+#: any.pm:1509
+#, c-format
+msgid "Screenshots will be available after install in %s"
+msgstr ""
+
+#: gtk.pm:134
+#, c-format
+msgid "Installation"
+msgstr ""
+
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
+#, c-format
+msgid "Configuration"
+msgstr "კონფიგურაცია"
+
+#: install2.pm:220
+#, c-format
+msgid "You must also format %s"
+msgstr ""
+
+#: interactive.pm:16
+#, c-format
+msgid ""
+"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
+"You can find some information about them at: %s"
+msgstr ""
+
+#: interactive.pm:22
+#, c-format
+msgid "Bringing up the network"
+msgstr ""
+
+#: interactive.pm:27
+#, c-format
+msgid "Bringing down the network"
+msgstr ""
+
+#: media.pm:397
+#, c-format
+msgid "Please wait, retrieving file"
+msgstr ""
+
+#: media.pm:704
+#, c-format
+msgid "unable to add medium"
+msgstr ""
+
+#: media.pm:744
+#, c-format
+msgid "Copying some packages on disks for future use"
+msgstr ""
+
+#: media.pm:797
+#, c-format
+msgid "Copying in progress"
+msgstr ""
+
+#: pkgs.pm:32
+#, c-format
+msgid "must have"
+msgstr ""
+
+#: pkgs.pm:33
+#, c-format
+msgid "important"
+msgstr ""
+
+#: pkgs.pm:34
+#, c-format
+msgid "very nice"
+msgstr ""
+
+#: pkgs.pm:35
+#, c-format
+msgid "nice"
+msgstr ""
+
+#: pkgs.pm:36
+#, c-format
+msgid "maybe"
+msgstr ""
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
+#, c-format
+msgid ""
+"Some packages requested by %s cannot be installed:\n"
+"%s"
+msgstr ""
+
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
+msgid "An error occurred:"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
+
+#: pkgs.pm:929
+#, c-format
+msgid "Installation of packages failed:"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:16
+#, c-format
+msgid "Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:18
+#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:26
+#, c-format
+msgid "Game station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:27
+#, c-format
+msgid "Amusement programs: arcade, boards, strategy, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:30
+#, c-format
+msgid "Multimedia station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:31
+#, c-format
+msgid "Sound and video playing/editing programs"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:36
+#, c-format
+msgid "Internet station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:37
+#, c-format
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:42
+#, c-format
+msgid "Network Computer (client)"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:43
+#, c-format
+msgid "Clients for different protocols including ssh"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:49
+#, c-format
+msgid "Tools to ease the configuration of your computer"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:53
+#, c-format
+msgid "Console Tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:54
+#, c-format
+msgid "Editors, shells, file tools, terminals"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
+#, c-format
+msgid "Development"
+msgstr "პროგრამირება"
+
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
+msgid "C and C++ development libraries, programs and include files"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
+#, c-format
+msgid "Documentation"
+msgstr "დოკუმენტაცია"
+
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
+msgid "Books and Howto's on Linux and Free Software"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
+#, c-format
+msgid "LSB"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
+msgid "Linux Standard Base. Third party applications support"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:79
+#, c-format
+msgid "Web Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:80
+#, c-format
+msgid "Apache"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:84
+#, c-format
+msgid "Groupware"
+msgstr "Groupware"
+
+#: share/meta-task/compssUsers.pl:85
+#, c-format
+msgid "Kolab Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
+msgid "Firewall/Router"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
+msgid "Internet gateway"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:92
+#, c-format
+msgid "Mail/News"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:93
+#, c-format
+msgid "Postfix mail server, Inn news server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:97
+#, c-format
+msgid "Directory Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:102
+#, c-format
+msgid "FTP Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:103
+#, c-format
+msgid "ProFTPd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:107
+#, c-format
+msgid "DNS/NIS"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:108
+#, c-format
+msgid "Domain Name and Network Information Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:112
+#, c-format
+msgid "File and Printer Sharing Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:113
+#, c-format
+msgid "NFS Server, Samba server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
+msgid "Database"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:123
+#, c-format
+msgid "Web/FTP"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:124
+#, c-format
+msgid "Apache, Pro-ftpd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:128
+#, c-format
+msgid "Mail"
+msgstr "ელფოსტა"
+
+#: share/meta-task/compssUsers.pl:129
+#, c-format
+msgid "Postfix mail server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:134
+#, c-format
+msgid "PostgreSQL or MariaDB database server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:142
+#, c-format
+msgid "Network Computer server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:143
+#, c-format
+msgid "NFS server, SMB server, Proxy server, ssh server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:150
+#, c-format
+msgid "Graphical Environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:153
+#, c-format
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:158
+#, c-format
+msgid "GNOME Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
+msgid "Other Graphical Desktops"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:218
+#, c-format
+msgid "Utilities"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
+msgid "SSH Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:225
+#, c-format
+msgid "Webmin"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:226
+#, c-format
+msgid "Webmin Remote Configuration Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:230
+#, c-format
+msgid "Network Utilities/Monitoring"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:231
+#, c-format
+msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:236
+#, c-format
+msgid "Wizards to configure server"
+msgstr ""
+
+#: steps.pm:85
+#, c-format
+msgid ""
+"An error occurred, but I do not know how to handle it nicely.\n"
+"Continue at your own risk."
+msgstr ""
+
+#: steps.pm:469
+#, c-format
+msgid ""
+"Some important packages did not get installed properly.\n"
+"Either your cdrom drive or your cdrom is defective.\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
+"\"\n"
+msgstr ""
+
+#: steps_auto_install.pm:71 steps_stdio.pm:27
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr ""
+
+#: steps_curses.pm:22
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
+
+#: steps_curses.pm:32
+#, c-format
+msgid "<Tab>/<Alt-Tab> between elements"
+msgstr ""
+
+#: steps_gtk.pm:151
+#, c-format
+msgid "Xorg server is slow to start. Please wait..."
+msgstr ""
+
+#: steps_gtk.pm:216
+#, c-format
+msgid ""
+"Your system is low on resources. You may have some problem installing\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
+"press `F1' when booting on CDROM, then enter `text'."
+msgstr ""
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
+msgid "Custom install"
+msgstr ""
+
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:281
+#, c-format
+msgid "GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:282
+#, c-format
+msgid "Custom Desktop"
+msgstr ""
+
+#: steps_gtk.pm:288
+#, c-format
+msgid "Here's a preview of the '%s' desktop."
+msgstr ""
+
+#: steps_gtk.pm:315
+#, c-format
+msgid "Click on images in order to see a bigger preview"
+msgstr ""
+
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
+msgid "Package Group Selection"
+msgstr ""
+
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
+msgid "Individual package selection"
+msgstr ""
+
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr ""
+
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr ""
+
+#: steps_gtk.pm:425
+#, c-format
+msgid "Version: "
+msgstr "ვერსია:"
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "Size: "
+msgstr "ზომა:"
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "%d KB\n"
+msgstr ""
+
+#: steps_gtk.pm:427
+#, c-format
+msgid "Importance: "
+msgstr ""
+
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr ""
+
+#: steps_gtk.pm:466
+#, c-format
+msgid "due to missing %s"
+msgstr ""
+
+#: steps_gtk.pm:467
+#, c-format
+msgid "due to unsatisfied %s"
+msgstr ""
+
+#: steps_gtk.pm:468
+#, c-format
+msgid "trying to promote %s"
+msgstr ""
+
+#: steps_gtk.pm:469
+#, c-format
+msgid "in order to keep %s"
+msgstr ""
+
+#: steps_gtk.pm:474
+#, c-format
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+
+#: steps_gtk.pm:477
+#, c-format
+msgid "The following packages are going to be installed"
+msgstr ""
+
+#: steps_gtk.pm:478
+#, c-format
+msgid "The following packages are going to be removed"
+msgstr ""
+
+#: steps_gtk.pm:504
+#, c-format
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr ""
+
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr ""
+
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+
+#: steps_gtk.pm:512
+#, c-format
+msgid "Show automatically selected packages"
+msgstr ""
+
+#: steps_gtk.pm:516
+#, c-format
+msgid "Install"
+msgstr ""
+
+#: steps_gtk.pm:519
+#, c-format
+msgid "Load/Save selection"
+msgstr ""
+
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
+msgid "Updating package selection"
+msgstr ""
+
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
+msgid "Minimal install"
+msgstr ""
+
+#: steps_gtk.pm:543
+#, c-format
+msgid "Software Management"
+msgstr "პროგრამათა მენეჯმენტი"
+
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
+msgid "Choose the packages you want to install"
+msgstr ""
+
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
+#, c-format
+msgid "Installing"
+msgstr ""
+
+#: steps_gtk.pm:590
+#, c-format
+msgid "No details"
+msgstr ""
+
+#: steps_gtk.pm:610
+#, c-format
+msgid "Time remaining:"
+msgstr ""
+
+#: steps_gtk.pm:611
+#, c-format
+msgid "(estimating...)"
+msgstr ""
+
+#: steps_gtk.pm:637
+#, c-format
+msgid "%d package"
+msgid_plural "%d packages"
+msgstr[0] ""
+msgstr[1] ""
+
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
+#, c-format
+msgid "Summary"
+msgstr ""
+
+#: steps_gtk.pm:713
+#, c-format
+msgid "Configure"
+msgstr ""
+
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
+msgid "not configured"
+msgstr ""
+
+#: steps_gtk.pm:773 steps_interactive.pm:315
+#, c-format
+msgid ""
+"The following installation media have been found.\n"
+"If you want to skip some of them, you can unselect them now."
+msgstr ""
+
+#: steps_gtk.pm:789 steps_interactive.pm:321
+#, c-format
+msgid ""
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
+msgstr ""
+
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
+msgid "Copy whole CDs"
+msgstr ""
+
+#: steps_interactive.pm:40
+#, c-format
+msgid "An error occurred"
+msgstr ""
+
+#: steps_interactive.pm:105
+#, c-format
+msgid "Please choose your keyboard layout"
+msgstr ""
+
+#: steps_interactive.pm:109
+#, c-format
+msgid "Here is the full list of available keyboards:"
+msgstr ""
+
+#: steps_interactive.pm:153
+#, c-format
+msgid "Install/Upgrade"
+msgstr ""
+
+#: steps_interactive.pm:157
+#, c-format
+msgid "Is this an install or an upgrade?"
+msgstr ""
+
+#: steps_interactive.pm:159
+#, c-format
+msgid ""
+"_: This is a noun:\n"
+"Install"
+msgstr ""
+
+#: steps_interactive.pm:161
+#, c-format
+msgid "Upgrade %s"
+msgstr ""
+
+#: steps_interactive.pm:184
+#, c-format
+msgid "Encryption key for %s"
+msgstr ""
+
+#: steps_interactive.pm:217
+#, c-format
+msgid "Cancel installation, reboot system"
+msgstr ""
+
+#: steps_interactive.pm:218
+#, c-format
+msgid "New Installation"
+msgstr ""
+
+#: steps_interactive.pm:219
+#, c-format
+msgid "Upgrade previous installation (not recommended)"
+msgstr ""
+
+#: steps_interactive.pm:223
+#, c-format
+msgid ""
+"Installer has detected that your installed Linux system could not\n"
+"safely be upgraded to %s.\n"
+"\n"
+"New installation replacing your previous one is recommended.\n"
+"\n"
+"Warning : you should backup all your personal data before choosing \"New\n"
+"Installation\"."
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:354
+#, c-format
+msgid ""
+"Change your Cd-Rom!\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
+"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
+msgstr ""
+
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
+msgid "Looking for available packages..."
+msgstr ""
+
+#: steps_interactive.pm:380
+#, c-format
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+
+#: steps_interactive.pm:428
+#, c-format
+msgid ""
+"Please choose load or save package selection.\n"
+"The format is the same as auto_install generated files."
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Load"
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Save"
+msgstr ""
+
+#: steps_interactive.pm:438
+#, c-format
+msgid "Bad file"
+msgstr ""
+
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
+
+#: steps_interactive.pm:456
+#, c-format
+msgid "GNOME"
+msgstr ""
+
+#: steps_interactive.pm:459
+#, c-format
+msgid "Desktop Selection"
+msgstr ""
+
+#: steps_interactive.pm:460
+#, c-format
+msgid "You can choose your workstation desktop profile."
+msgstr ""
+
+#: steps_interactive.pm:552
+#, c-format
+msgid "Selected size is larger than available space"
+msgstr ""
+
+#: steps_interactive.pm:576
+#, c-format
+msgid "Type of install"
+msgstr ""
+
+#: steps_interactive.pm:577
+#, c-format
+msgid ""
+"You have not selected any group of packages.\n"
+"Please choose the minimal installation you want:"
+msgstr ""
+
+#: steps_interactive.pm:582
+#, c-format
+msgid "With X"
+msgstr ""
+
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
+
+#: steps_interactive.pm:584
+#, c-format
+msgid "With basic documentation (recommended!)"
+msgstr ""
+
+#: steps_interactive.pm:585
+#, c-format
+msgid "Truly minimal install (especially no urpmi)"
+msgstr ""
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
+#, c-format
+msgid "Preparing installation"
+msgstr ""
+
+#: steps_interactive.pm:655
+#, c-format
+msgid "Installing package %s"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "There was an error ordering packages:"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "Go on anyway?"
+msgstr ""
+
+#: steps_interactive.pm:683
+#, c-format
+msgid "Retry"
+msgstr ""
+
+#: steps_interactive.pm:684
+#, c-format
+msgid "Skip this package"
+msgstr ""
+
+#: steps_interactive.pm:685
+#, c-format
+msgid "Skip all packages from medium \"%s\""
+msgstr ""
+
+#: steps_interactive.pm:686
+#, c-format
+msgid "Go back to media and packages selection"
+msgstr ""
+
+#: steps_interactive.pm:689
+#, c-format
+msgid "There was an error installing package %s."
+msgstr ""
+
+#: steps_interactive.pm:708
+#, c-format
+msgid "Post-install configuration"
+msgstr ""
+
+#: steps_interactive.pm:715
+#, c-format
+msgid "Please ensure the Update Modules media is in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr "განახლებები"
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
+#, c-format
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
+msgstr ""
+
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
+#, c-format
+msgid "%s on %s"
+msgstr ""
+
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
+#, c-format
+msgid "Hardware"
+msgstr "მოწყობილობა"
+
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr ""
+
+#: steps_interactive.pm:972
+#, c-format
+msgid "Graphical interface"
+msgstr ""
+
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
+msgid "Network & Internet"
+msgstr "ქსელი და ინტერნეტი"
+
+#: steps_interactive.pm:991
+#, c-format
+msgid "Proxies"
+msgstr ""
+
+#: steps_interactive.pm:992
+#, c-format
+msgid "configured"
+msgstr ""
+
+#: steps_interactive.pm:1002
+#, c-format
+msgid "Security Level"
+msgstr ""
+
+#: steps_interactive.pm:1022
+#, c-format
+msgid "Firewall"
+msgstr "ქსელის დამცავი (Firewall)"
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "activated"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "disabled"
+msgstr ""
+
+#: steps_interactive.pm:1041
+#, c-format
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr ""
+
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, c-format
+msgid "Preparing initial startup program..."
+msgstr ""
+
+#: steps_interactive.pm:1073
+#, c-format
+msgid "Be patient, this may take a while..."
+msgstr ""
+
+#: steps_interactive.pm:1089
+#, c-format
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+
+#: steps_interactive.pm:1121
+#, c-format
+msgid "Insert a blank floppy in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:1123
+#, c-format
+msgid "Creating auto install floppy..."
+msgstr ""
+
+#: steps_interactive.pm:1134
+#, c-format
+msgid ""
+"Some steps are not completed.\n"
+"\n"
+"Do you really want to quit now?"
+msgstr ""
+
+#: steps_interactive.pm:1144
+#, c-format
+msgid "Congratulations"
+msgstr "გილოცავთ"
+
+#: steps_interactive.pm:1147
+#, c-format
+msgid "Reboot"
+msgstr "გადატვირთვა"
+
+#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
+#: steps_list.pm:16
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Language"
+msgstr ""
+
+#: steps_list.pm:16 steps_list.pm:23
+#, c-format
+msgid "Localization"
+msgstr ""
+
+#: steps_list.pm:17
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"License"
+msgstr ""
+
+#: steps_list.pm:18
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Mouse"
+msgstr ""
+
+#: steps_list.pm:19 steps_list.pm:20
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Hard drive detection"
+msgstr ""
+
+#: steps_list.pm:21 steps_list.pm:22
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installation class"
+msgstr ""
+
+#: steps_list.pm:23
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Keyboard"
+msgstr ""
+
+#: steps_list.pm:24
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Security"
+msgstr ""
+
+#: steps_list.pm:25
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Partitioning"
+msgstr ""
+
+#: steps_list.pm:27 steps_list.pm:28
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Formatting"
+msgstr ""
+
+#: steps_list.pm:29
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Choosing packages"
+msgstr ""
+
+#: steps_list.pm:31
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installing"
+msgstr ""
+
+#: steps_list.pm:34
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Users"
+msgstr ""
+
+#: steps_list.pm:38 steps_list.pm:39
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Bootloader"
+msgstr ""
+
+#: steps_list.pm:40 steps_list.pm:41
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Configure X"
+msgstr ""
+
+#: steps_list.pm:42
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Summary"
+msgstr ""
+
+#: steps_list.pm:44 steps_list.pm:45
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Services"
+msgstr ""
+
+#: steps_list.pm:46
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Updates"
+msgstr ""
+
+#: steps_list.pm:48
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Exit"
+msgstr ""
diff --git a/perl-install/install/share/po/ko.po b/perl-install/install/share/po/ko.po
index e07b547da..65b56e66e 100644
--- a/perl-install/install/share/po/ko.po
+++ b/perl-install/install/share/po/ko.po
@@ -1,57 +1,82 @@
-# translation of ko(metanav).po to ahb hong-bae
-# Korean translation of drakbootdisk.
-# Copyright (C) 2001, 2007 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# changes asked by HP people -- pablo 2003-01-23
-#
-# Jaegeum Choe <baedaron@hananet.net>, 2001.
-# meta <hbahn@metq.com>, 2007.
+# Translators:
+# Jaegeum Choe <baedaron@hananet.net>, 2001
+# meta <hbahn@metq.com>, 2007
msgid ""
msgstr ""
-"Project-Id-Version: ko(metanav)\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2007-06-18 14:54+0900\n"
-"Last-Translator: meta <hbahn@metq.com>\n"
-"Language-Team: ahb hong-bae <ko@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Korean (http://www.transifex.com/MageiaLinux/mageia/language/"
+"ko/)\n"
+"Language: ko\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: KBabel 1.11.4\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "For kids"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "For family!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "For developers!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/09_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Thank you!"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/10_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Be Free!"
msgstr ""
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "추가할 미디어가 있습니까?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -64,91 +89,57 @@ msgstr ""
"\n"
"설정할 추가 설치 매체가 있습니까?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "망(HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "망(FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "망(NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "미러사이트의 (URL)주소를 적어주십시오."
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL 주소는 ftp:// 또는 http:// 로 시작되어야 합니다."
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "유효한 미러 목록을 받기 위해 Mandriva Linux 홈페이지에 접속 중..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Mandriva Linux 홈페이지에 접속하여 미러사이트목록을 받는 데 실패했습니다."
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "패키지를 받을 미러 사이트를 선택하시오."
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "망 파일 시스템 (NFS) 구성"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "NFS 매체의 호스트 이름과 디렉토리를 입력해 주십시요."
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "호스트 이름을 찾을 수 없습니다"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "디렉토리는 \"/\"로 시작되어야 합니다."
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "망 파일 시스템(NFS)의 호스트 이름을 설치합니까?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "디렉토리"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "추가"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -156,23 +147,90 @@ msgid ""
msgstr ""
"미러 사이트에서 패키지 리스트를 찾을 수 없습니다. 이 위치에 만드시겠습니까?"
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "이미 설치된 패키지 찾는 중..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "업그레이드할 패키지를 검색중..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "업그레이드된 패키지를 제거하는 중..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -185,87 +243,87 @@ msgstr ""
"\n"
"정말 이 패키지들을 제거 하시겠습니까?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%s 파일을 읽는중 오류가 발생했습니다."
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "다음 디스크이름이 변경되었습니다. :"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (이전 이름은 %s였음.)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP(하이퍼텍스트 전송 규약)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP(파일 전송규약)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS(망 파일 시스템)"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "망"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "매체를 선택하시오"
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "파일이 이미 존재합니다. 덮어쓸까요?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "권한이 없습니다."
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "부정확한 NFS 이름입니다"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "알 수 없는 미디어 %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "파티션을 나누기 전에는 스크린샷을 만들 수 없습니다."
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "스크린샷은 설치 이후에 %s에 위치 할 것입니다."
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "설치중"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "설정"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "%s도 포맷해야 합니다."
@@ -289,25 +347,25 @@ msgstr "망 활성화 중..."
msgid "Bringing down the network"
msgstr "망 해제 중..."
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "추후 사용하기 위해 디스크에 패키지 복사중... "
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "검색 진행 중"
+msgstr "복사 진행중"
#: pkgs.pm:32
#, c-format
@@ -334,351 +392,412 @@ msgstr "좋은 패키지"
msgid "maybe"
msgstr "괜찮은 패키지"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "설명 없음"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "오류 발생"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "설치 실패."
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "%s 패키지 설치중"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "워크스테이션"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "오피스 워크스테이션"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"오피스 프로그램들: 워드프로세서 (OpenOffice.org Writer, Kword), 스프레드쉬트 "
-"(OpenOffice.org Calc, Kspread), PDF 뷰어, 등등"
+"오피스 프로그램들: 워드프로세서 (LibreOffice Writer, Kword), 스프레드쉬트 "
+"(LibreOffice Calc, Kspread), PDF 뷰어, 등등"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"오피스 프로그램들: 워드프로세서 (kword, abiword), 스프레드쉬트 (kspread,"
-"gnumeric), pdf 뷰어, 등등"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "게임 스테이션"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "간단한 게임모음: 아케이드, 보드, 전략 등등"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "멀티미디어 스테이션"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "사운드 및 비디오 연주/편집 프로그램"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "인터넷 스테이션"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr "메일/뉴스를 읽고 보내며 (mutt, tin..) 웹검색을 하기 위한 도구모음"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "망 컴퓨터 (클라이언트)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "SSH를 포함한 여러 프로토콜의 클라이언트"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "쉽게 컴퓨터 설정을 하기 위한 도구"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "콘솔 도구"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "에디터, 쉘, 파일도구, 터미널"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "개발"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C/C++ 개발 라이브러리, 프로그램 및 헤더파일"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "문서"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "리눅스 및 자유 소프트웨어에 대한 서적과 Howto문서"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "리눅스 기본 규격(Linux Standard Base)"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "리눅스 기본 규격. 외부 애플리케이션 지원"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "웹 서버"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "아파치"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "그룹웨어"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab 서버"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "방화벽/라우터"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "인터넷 게이트웨이"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/파일(F)/새로 만들기(_N)"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "포스트픽스 메일 서버"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "디렉토리 서버"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP 서버"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "도메인 이름 서버/망 정보 서버"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "도메인 이름 및 망 정보 서버"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "프린터 서버"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS 서비스, 삼바 서비스"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "데이터베이스"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL 또는 MySQL 데이터베이스 서버"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "웹/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "아파치와 프로FTPD"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "메일"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "포스트픽스 메일 서버"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL 또는 MySQL 데이터베이스 서버"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL 또는 MariaDB 데이터베이스 서버"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "망 컴퓨터 서버"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS 서버, 삼바 서버, 프록시 서버, SSH 서버"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "그래픽 환경"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "K 데스크탑 환경 기반 워크스테이션"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "K Desktop 환경, 여러가지 도구를 수반한 기본 그래픽 환경"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME 워크스테이션"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "사용자 친화적 응용 프로그램들과 데스크탑 도구들을 가진 그래픽 환경"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "IceWm 데스크탑"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "사용자 친화적 응용 프로그램들과 데스크탑 도구들을 가진 그래픽 환경"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "기타 그래픽 데스크탑"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, 윈도우 메이커, 인라이튼먼트, Fvwm, 등등"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "유틸리티"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH 서비스"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "웹민 서비스"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin 원격 설정 서버"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "망 유틸리티들/감시"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "감시 도구, 프로세스 관리, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "맨드리바 제어 센터"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "서버 설정 도우미"
@@ -692,7 +811,7 @@ msgstr ""
"오류가 발생했지만, 처리할 수 없습니다.\n"
"위험을 감수하려면 계속하세요."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -712,253 +831,251 @@ msgstr "%s 단계로 넘어갑니다.\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux 설치 %s"
+msgid "%s Installation %s"
+msgstr "%s 설치 %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> 항목간 이동"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"시스템의 자원이 부족합니다. 맨드리바 리눅스를 설치하는데 \n"
-"일부 문제가 발생할 수도 있습니다.\n"
-"문제가 발생하면 텍스트모드로 재설치하십시오.\n"
-"텍스트 모드 설치는 CDROM으로 부팅후 「F1」을 누르고 「text」를 입력하시면 됩"
-"니다."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "최소 설치"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "IceWm 데스크탑"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm 데스크탑"
+msgstr "데스크톱"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "IceWm 데스크탑"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "패키지 그룹 선택"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "개별 팩키지 선택"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "전체 크기: %d / %d MB"
+msgid "Unselect All"
+msgstr "모든 선택 해제"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "잘못된 팩키지"
+msgid "Total size: %d / %d MB"
+msgstr "전체 크기: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "판"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "크기: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d 킬로 바이트\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "중요도: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "이 패키지를 선택/버림 할 수 없습니다."
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s 가 없음"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "%s 비충족"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%s 를 활성화하기 위해 시도중"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s를 유지하기 위해"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "이 패키지 선택할 수 없음 - 디스크 공간 부족"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "다음 패키지들을 설치합니다."
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "다음 패키지들을 제거합니다."
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "이것은 필수 패키지이므로 제거할 수 없습니다."
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "선택해제할 수 없음 - 이미 설치된 패키지입니다."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "선택해제할 수 없음 - 업그레이드 필."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "자동 선택 패키지들 보기"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "설치"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "열기/저장 선택"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "선택된 패키지 목록 업데이트 중"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "최소 설치"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "소프트웨어 관리"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "설치할 패키지를 선택하시오."
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "설치중"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "상세설명 생략"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "남은 시간 "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "계산 중"
+msgstr ""
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d 패키지"
-msgstr[1] "%d 패키지"
+msgstr[0] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "요약설명"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "설정"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "설정되지 않음"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "패키지 그룹 선택"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -967,84 +1084,84 @@ msgstr ""
"다음 설치 매체를 찾았습니다.\n"
"설치 하지 않으려면 설치해제하십시오."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"설치 전에 하드 드라이브로 CDROM에 있는 컨텐츠를 복사할 수 있습니다.\n"
"그러면 하드 드라이브에 설치한 후에도 패키지는 시스템에 남아서 재설치가 가능합"
"니다."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "전체 CD 복사"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "오류 발생"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "키보드 구성을 선택하시오"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "지원되는 키보드 목록입니다."
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "설치/업그레이드"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "설치합니까 아니면 업그레이드 합니까?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr ""
+msgstr "설치"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "업그레이드 %s"
-#: steps_interactive.pm:170
-#, fuzzy, c-format
+#: steps_interactive.pm:184
+#, c-format
msgid "Encryption key for %s"
-msgstr "암호화 키"
+msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "설치중"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1053,38 +1170,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDE 설정중"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"1MB 부트스트랩 공간 부족! \n"
-"설치는 계속할 수 있지만, 시스템을 부팅하기 위해서는 DiskDrake에서 부트스트랩 "
-"파티션을 만들어야 합니다."
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"PPC PReP Boot 부트스트랩 생성이 필요합니다!\n"
-"설치는 계속할 수 있지만, 시스템을 부팅하기 위해서는 DiskDrake에서 부트스트랩 "
-"파티션을 만들어야 합니다."
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1097,21 +1193,21 @@ msgstr ""
"「%s」라고 쓰여진 CDROM을 드라이브에 넣은 후, 「확인」을 눌러 주세요.\n"
"만약 CDROM을 가지고 있지 않다면, 「취소」를 눌러 추가 설치를 취소하세요."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "유효한 패키지를 찾고 있습니다."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"현재 시스템에는 설치 또는 업그레이드 할만한 충분한 공간이 \n"
"남아있지 않습니다.(%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1120,52 +1216,52 @@ msgstr ""
"패키지 선택목록을 불러올지 혹은 저장할지를 선택하세요.\n"
"형식(포맷)은 자동설치 생성 파일과 동일합니다."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "불러오기"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "저장"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "손상된 파일 혹은 없는 파일입니다."
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "그놈"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "패키지 그룹 선택"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "선택된 용량이 사용할 수 있는 공간보다 큽니다."
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "설치 타입"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1174,87 +1270,126 @@ msgstr ""
"어떤 패키지 그룹도 선택되지 않았습니다.\n"
"패키지 최소설치 이상을 선택하십시오."
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X 포함"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s 패키지 설치중"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "기본 문서 포함(추천!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "최소 설치(특히 urpmi사용안함)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "설치 준비중입니다"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s 패키지 설치중"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "패키지를 정렬하는 중 오류발생:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "계속 진행합니까?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "재시도"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "이 패키지는 설치하지 않고 지나가기"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "\"%s\"에서 모든 패키지를 설치하지 않음"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "미디어나 패키지 선택목록으로 돌아가기"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "다음 패키지 설치중 오류 발생: %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "설치 후 환경설정"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "업데이트 모듈 매체가 %s 드라이브에 있도록 하십시오."
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "업데이트"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "다음 패키지들을 설치합니다."
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1272,113 +1407,80 @@ msgstr ""
"이 패키지들을 다운로드 받으려면 인터넷이 연결되어 있어야 합니다.\n"
"업데이트를 설치 하시겠습니까?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s (%s 컴퓨터)"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "하드웨어"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "사운드 카드"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "ISA 사운드 카드가 있습니까?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"사운드 카드를 설정하려면 설치 후에\n"
-"「alsaconf」 또는 「sndconfig」명령을 실행해주십시요."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"사운드 카드가 발견되지 않았습니다.\n"
-"설치 후에「harddrake」명령을 실행해주십시요."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "시작시 바로 X-Window 실행"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "망과 인터넷"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "프록시"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "재설정되었습니다."
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "보안 등급"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "방화벽"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "활성화"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "금지"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "X 설정이 되지 않았습니다. 설정하시겠습니까?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "부트 로더 준비중"
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"예전 모델이거나 알 수 없는 컴퓨터입니다.\n"
-"yaboot 부트로더는 작동되지 않을 것입니다.\n"
-"설치를 계속 진행하지만, 컴퓨터를 부팅하기 위해서\n"
-"BootX나 또는 몇몇 방법을 써야 될수도 있습니다. \n"
-"root fs를 위한 kernel argument : root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1387,17 +1489,17 @@ msgstr ""
"이 보안 등급에서는 윈도우즈 파티션에서의 파일 접근이 관리자에 의해 제한 됩니"
"다."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "%s 드라이브에 빈 플로피 디스크를 넣으세요"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "자동 설치 플로피 디스크 생성 중"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1408,12 +1510,12 @@ msgstr ""
"\n"
"정말 지금 종료 하시겠습니까?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "축하합니다."
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "다시 시작"
@@ -1429,7 +1531,7 @@ msgstr "언어"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "지역화"
#: steps_list.pm:17
#, c-format
@@ -1508,13 +1610,6 @@ msgid ""
"Users"
msgstr "사용자들"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "망 설정"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1557,145 +1652,22 @@ msgid ""
"Exit"
msgstr "종료"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "파일 전송 중 ..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "다음 서버들이 선택되었습니다: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "이 서버들의 기본 설정은 활성화상태입니다. 알려진 보안 문제는 없지만, 새로"
-#~ "운 문제점이 발견될 수도 있습니다.\n"
-#~ " 그럴 경우에는 가능한 한 신속하게\n"
-#~ "업그레이드해야 합니다.\n"
-#~ "\n"
-#~ "\n"
-#~ "정말로 이 서버들을 설치합니까?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "일터"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "사용할 패키지의 리스트를 미러 사이트에서 받습니다."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "미러사이트 %s에 접속할 수 없습니다"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "자동 설치 플로피 디스크 생성"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "자동 설치는 원한다면 완벽한 자동화가 가능합니다.\n"
-#~ "이럴 경우, 하드 드라이브를 점유해 버립니다!\n"
-#~ "(이것은 또 다른 컴퓨터에 동일하게 설치할 때를 위한 것입니다.)\n"
-#~ "일반적으로 직접 설치하는 것이 좋습니다.\n"
-
-#~ msgid "Replay"
-#~ msgstr "재시도"
-
-#~ msgid "Automated"
-#~ msgstr "자동"
-
-#~ msgid "Save packages selection"
-#~ msgstr "선택된 패키지 목록 저장"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "aboot를 사용하시겠습니까?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "aboot 설치 실패. \n"
-#~ "강제설치합니까? - 첫번째 파티션이 훼손될 수 있습니다."
-
-#~ msgid "All"
-#~ msgstr "모두"
-
-#~ msgid "TV card"
-#~ msgstr "TV 카드"
-
-#~ msgid "Arkeia"
-#~ msgstr "아르케이아"
-
-#~ msgid "Flatout"
-#~ msgstr "플래트아웃(최고속도로)"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "3차원"
-
-#~ msgid "CMS"
-#~ msgstr "CMS"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "2007 product line"
-#~ msgstr "2007 제품 라인"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "인빅투스 방화벽"
-
-#~ msgid "Discovery Live Mode"
-#~ msgstr "Discovery Live Mode"
-
-#~ msgid "How to register"
-#~ msgstr "등록하는 법"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "Rpmdrake 2"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "맨드리바 온라인 서비스"
-
-#~ msgid "New Theme"
-#~ msgstr "새 테마"
-
-#~ msgid "Web 2.0"
-#~ msgstr "웹 2.0"
-
-#~ msgid "Kaspersky"
-#~ msgstr "캐스퍼 스카이(인터넷보안업체)"
-
-#~ msgid "LinDVD"
-#~ msgstr "LinDVD"
-
-#~ msgid "Skype"
-#~ msgstr "스카이프(인터넷 전화)"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "미러사이트의 (URL)주소를 적어주십시오."
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Cedega - 윈도우용 게임 실행기"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL 주소는 ftp:// 또는 http:// 로 시작되어야 합니다."
-#~ msgid "DrakVPN"
-#~ msgstr "드레이크VPN - 가상사설통신망"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "유효한 미러 목록을 받기 위해 %s 홈페이지에 접속 중..."
-#~ msgid "Boot"
-#~ msgstr "부트"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr "%s 홈페이지에 접속하여 미러사이트목록을 받는 데 실패했습니다."
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "사용자 인증"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "패키지를 받을 미러 사이트를 선택하시오."
diff --git a/perl-install/install/share/po/ku.po b/perl-install/install/share/po/ku.po
new file mode 100644
index 000000000..ed7adff7c
--- /dev/null
+++ b/perl-install/install/share/po/ku.po
@@ -0,0 +1,1608 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Kurdish (http://www.transifex.com/MageiaLinux/mageia/language/"
+"ku/)\n"
+"Language: ku\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
+msgid "Do you have further supplementary media?"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:154
+#, c-format
+msgid ""
+"The following media have been found and will be used during install: %s.\n"
+"\n"
+"\n"
+"Do you have a supplementary installation medium to configure?"
+msgstr ""
+
+#: any.pm:162
+#, c-format
+msgid "Network (HTTP)"
+msgstr ""
+
+#: any.pm:163
+#, c-format
+msgid "Network (FTP)"
+msgstr ""
+
+#: any.pm:164
+#, c-format
+msgid "Network (NFS)"
+msgstr ""
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr ""
+
+#: any.pm:225
+#, c-format
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
+
+#: any.pm:229
+#, c-format
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr ""
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr ""
+
+#: any.pm:593
+#, c-format
+msgid "Finding packages to upgrade..."
+msgstr ""
+
+#: any.pm:612
+#, c-format
+msgid "Removing packages prior to upgrade..."
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:850
+#, c-format
+msgid ""
+"The following packages will be removed to allow upgrading your system: %s\n"
+"\n"
+"\n"
+"Do you really want to remove these packages?\n"
+msgstr ""
+
+#: any.pm:1075
+#, c-format
+msgid "Error reading file %s"
+msgstr ""
+
+#: any.pm:1283
+#, c-format
+msgid "The following disk(s) were renamed:"
+msgstr ""
+
+#: any.pm:1285
+#, c-format
+msgid "%s (previously named as %s)"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "HTTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "FTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "NFS"
+msgstr ""
+
+#: any.pm:1361 steps_interactive.pm:979
+#, c-format
+msgid "Network"
+msgstr ""
+
+#: any.pm:1365
+#, c-format
+msgid "Please choose a media"
+msgstr ""
+
+#: any.pm:1381
+#, c-format
+msgid "File already exists. Overwrite it?"
+msgstr ""
+
+#: any.pm:1385
+#, c-format
+msgid "Permission denied"
+msgstr ""
+
+#: any.pm:1433
+#, c-format
+msgid "Bad NFS name"
+msgstr ""
+
+#: any.pm:1454
+#, c-format
+msgid "Bad media %s"
+msgstr ""
+
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
+
+#: any.pm:1509
+#, c-format
+msgid "Screenshots will be available after install in %s"
+msgstr ""
+
+#: gtk.pm:134
+#, c-format
+msgid "Installation"
+msgstr ""
+
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
+#, c-format
+msgid "Configuration"
+msgstr "Ve avakirin"
+
+#: install2.pm:220
+#, c-format
+msgid "You must also format %s"
+msgstr ""
+
+#: interactive.pm:16
+#, c-format
+msgid ""
+"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
+"You can find some information about them at: %s"
+msgstr ""
+
+#: interactive.pm:22
+#, c-format
+msgid "Bringing up the network"
+msgstr ""
+
+#: interactive.pm:27
+#, c-format
+msgid "Bringing down the network"
+msgstr ""
+
+#: media.pm:397
+#, c-format
+msgid "Please wait, retrieving file"
+msgstr ""
+
+#: media.pm:704
+#, c-format
+msgid "unable to add medium"
+msgstr ""
+
+#: media.pm:744
+#, c-format
+msgid "Copying some packages on disks for future use"
+msgstr ""
+
+#: media.pm:797
+#, c-format
+msgid "Copying in progress"
+msgstr ""
+
+#: pkgs.pm:32
+#, c-format
+msgid "must have"
+msgstr ""
+
+#: pkgs.pm:33
+#, c-format
+msgid "important"
+msgstr ""
+
+#: pkgs.pm:34
+#, c-format
+msgid "very nice"
+msgstr ""
+
+#: pkgs.pm:35
+#, c-format
+msgid "nice"
+msgstr ""
+
+#: pkgs.pm:36
+#, c-format
+msgid "maybe"
+msgstr ""
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
+#, c-format
+msgid ""
+"Some packages requested by %s cannot be installed:\n"
+"%s"
+msgstr ""
+
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
+msgid "An error occurred:"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
+
+#: pkgs.pm:929
+#, c-format
+msgid "Installation of packages failed:"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:16
+#, c-format
+msgid "Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:18
+#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:26
+#, c-format
+msgid "Game station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:27
+#, c-format
+msgid "Amusement programs: arcade, boards, strategy, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:30
+#, c-format
+msgid "Multimedia station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:31
+#, c-format
+msgid "Sound and video playing/editing programs"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:36
+#, c-format
+msgid "Internet station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:37
+#, c-format
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:42
+#, c-format
+msgid "Network Computer (client)"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:43
+#, c-format
+msgid "Clients for different protocols including ssh"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:49
+#, c-format
+msgid "Tools to ease the configuration of your computer"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:53
+#, c-format
+msgid "Console Tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:54
+#, c-format
+msgid "Editors, shells, file tools, terminals"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
+#, c-format
+msgid "Development"
+msgstr "Perisandin"
+
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
+msgid "C and C++ development libraries, programs and include files"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
+#, c-format
+msgid "Documentation"
+msgstr "Dokûmantasyon"
+
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
+msgid "Books and Howto's on Linux and Free Software"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
+#, c-format
+msgid "LSB"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
+msgid "Linux Standard Base. Third party applications support"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:79
+#, c-format
+msgid "Web Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:80
+#, c-format
+msgid "Apache"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:84
+#, c-format
+msgid "Groupware"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:85
+#, c-format
+msgid "Kolab Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
+msgid "Firewall/Router"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
+msgid "Internet gateway"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:92
+#, c-format
+msgid "Mail/News"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:93
+#, c-format
+msgid "Postfix mail server, Inn news server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:97
+#, c-format
+msgid "Directory Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:102
+#, c-format
+msgid "FTP Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:103
+#, c-format
+msgid "ProFTPd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:107
+#, c-format
+msgid "DNS/NIS"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:108
+#, c-format
+msgid "Domain Name and Network Information Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:112
+#, c-format
+msgid "File and Printer Sharing Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:113
+#, c-format
+msgid "NFS Server, Samba server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
+msgid "Database"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:123
+#, c-format
+msgid "Web/FTP"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:124
+#, c-format
+msgid "Apache, Pro-ftpd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:128
+#, c-format
+msgid "Mail"
+msgstr "Name"
+
+#: share/meta-task/compssUsers.pl:129
+#, c-format
+msgid "Postfix mail server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:134
+#, c-format
+msgid "PostgreSQL or MariaDB database server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:142
+#, c-format
+msgid "Network Computer server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:143
+#, c-format
+msgid "NFS server, SMB server, Proxy server, ssh server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:150
+#, c-format
+msgid "Graphical Environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:153
+#, c-format
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:158
+#, c-format
+msgid "GNOME Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
+msgid "Other Graphical Desktops"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:218
+#, c-format
+msgid "Utilities"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
+msgid "SSH Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:225
+#, c-format
+msgid "Webmin"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:226
+#, c-format
+msgid "Webmin Remote Configuration Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:230
+#, c-format
+msgid "Network Utilities/Monitoring"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:231
+#, c-format
+msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:236
+#, c-format
+msgid "Wizards to configure server"
+msgstr ""
+
+#: steps.pm:85
+#, c-format
+msgid ""
+"An error occurred, but I do not know how to handle it nicely.\n"
+"Continue at your own risk."
+msgstr ""
+
+#: steps.pm:469
+#, c-format
+msgid ""
+"Some important packages did not get installed properly.\n"
+"Either your cdrom drive or your cdrom is defective.\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
+"\"\n"
+msgstr ""
+
+#: steps_auto_install.pm:71 steps_stdio.pm:27
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr ""
+
+#: steps_curses.pm:22
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
+
+#: steps_curses.pm:32
+#, c-format
+msgid "<Tab>/<Alt-Tab> between elements"
+msgstr ""
+
+#: steps_gtk.pm:151
+#, c-format
+msgid "Xorg server is slow to start. Please wait..."
+msgstr ""
+
+#: steps_gtk.pm:216
+#, c-format
+msgid ""
+"Your system is low on resources. You may have some problem installing\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
+"press `F1' when booting on CDROM, then enter `text'."
+msgstr ""
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
+msgid "Custom install"
+msgstr ""
+
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:281
+#, c-format
+msgid "GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:282
+#, c-format
+msgid "Custom Desktop"
+msgstr ""
+
+#: steps_gtk.pm:288
+#, c-format
+msgid "Here's a preview of the '%s' desktop."
+msgstr ""
+
+#: steps_gtk.pm:315
+#, c-format
+msgid "Click on images in order to see a bigger preview"
+msgstr ""
+
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
+msgid "Package Group Selection"
+msgstr ""
+
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
+msgid "Individual package selection"
+msgstr ""
+
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr ""
+
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr ""
+
+#: steps_gtk.pm:425
+#, c-format
+msgid "Version: "
+msgstr "Guherto: "
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "Size: "
+msgstr "Mezinahî :"
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "%d KB\n"
+msgstr ""
+
+#: steps_gtk.pm:427
+#, c-format
+msgid "Importance: "
+msgstr "Girîngî: "
+
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr ""
+
+#: steps_gtk.pm:466
+#, c-format
+msgid "due to missing %s"
+msgstr ""
+
+#: steps_gtk.pm:467
+#, c-format
+msgid "due to unsatisfied %s"
+msgstr ""
+
+#: steps_gtk.pm:468
+#, c-format
+msgid "trying to promote %s"
+msgstr ""
+
+#: steps_gtk.pm:469
+#, c-format
+msgid "in order to keep %s"
+msgstr ""
+
+#: steps_gtk.pm:474
+#, c-format
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+
+#: steps_gtk.pm:477
+#, c-format
+msgid "The following packages are going to be installed"
+msgstr ""
+
+#: steps_gtk.pm:478
+#, c-format
+msgid "The following packages are going to be removed"
+msgstr ""
+
+#: steps_gtk.pm:504
+#, c-format
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr ""
+
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr ""
+
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+
+#: steps_gtk.pm:512
+#, c-format
+msgid "Show automatically selected packages"
+msgstr ""
+
+#: steps_gtk.pm:516
+#, c-format
+msgid "Install"
+msgstr ""
+
+#: steps_gtk.pm:519
+#, c-format
+msgid "Load/Save selection"
+msgstr ""
+
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
+msgid "Updating package selection"
+msgstr ""
+
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
+msgid "Minimal install"
+msgstr ""
+
+#: steps_gtk.pm:543
+#, c-format
+msgid "Software Management"
+msgstr "Kontrola programan"
+
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
+msgid "Choose the packages you want to install"
+msgstr ""
+
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
+#, c-format
+msgid "Installing"
+msgstr ""
+
+#: steps_gtk.pm:590
+#, c-format
+msgid "No details"
+msgstr ""
+
+#: steps_gtk.pm:610
+#, c-format
+msgid "Time remaining:"
+msgstr ""
+
+#: steps_gtk.pm:611
+#, c-format
+msgid "(estimating...)"
+msgstr ""
+
+#: steps_gtk.pm:637
+#, c-format
+msgid "%d package"
+msgid_plural "%d packages"
+msgstr[0] ""
+msgstr[1] ""
+
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
+#, c-format
+msgid "Summary"
+msgstr ""
+
+#: steps_gtk.pm:713
+#, c-format
+msgid "Configure"
+msgstr ""
+
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
+msgid "not configured"
+msgstr ""
+
+#: steps_gtk.pm:773 steps_interactive.pm:315
+#, c-format
+msgid ""
+"The following installation media have been found.\n"
+"If you want to skip some of them, you can unselect them now."
+msgstr ""
+
+#: steps_gtk.pm:789 steps_interactive.pm:321
+#, c-format
+msgid ""
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
+msgstr ""
+
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
+msgid "Copy whole CDs"
+msgstr ""
+
+#: steps_interactive.pm:40
+#, c-format
+msgid "An error occurred"
+msgstr ""
+
+#: steps_interactive.pm:105
+#, c-format
+msgid "Please choose your keyboard layout"
+msgstr ""
+
+#: steps_interactive.pm:109
+#, c-format
+msgid "Here is the full list of available keyboards:"
+msgstr ""
+
+#: steps_interactive.pm:153
+#, c-format
+msgid "Install/Upgrade"
+msgstr ""
+
+#: steps_interactive.pm:157
+#, c-format
+msgid "Is this an install or an upgrade?"
+msgstr ""
+
+#: steps_interactive.pm:159
+#, c-format
+msgid ""
+"_: This is a noun:\n"
+"Install"
+msgstr ""
+
+#: steps_interactive.pm:161
+#, c-format
+msgid "Upgrade %s"
+msgstr ""
+
+#: steps_interactive.pm:184
+#, c-format
+msgid "Encryption key for %s"
+msgstr ""
+
+#: steps_interactive.pm:217
+#, c-format
+msgid "Cancel installation, reboot system"
+msgstr ""
+
+#: steps_interactive.pm:218
+#, c-format
+msgid "New Installation"
+msgstr ""
+
+#: steps_interactive.pm:219
+#, c-format
+msgid "Upgrade previous installation (not recommended)"
+msgstr ""
+
+#: steps_interactive.pm:223
+#, c-format
+msgid ""
+"Installer has detected that your installed Linux system could not\n"
+"safely be upgraded to %s.\n"
+"\n"
+"New installation replacing your previous one is recommended.\n"
+"\n"
+"Warning : you should backup all your personal data before choosing \"New\n"
+"Installation\"."
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:354
+#, c-format
+msgid ""
+"Change your Cd-Rom!\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
+"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
+msgstr ""
+
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
+msgid "Looking for available packages..."
+msgstr ""
+
+#: steps_interactive.pm:380
+#, c-format
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+
+#: steps_interactive.pm:428
+#, c-format
+msgid ""
+"Please choose load or save package selection.\n"
+"The format is the same as auto_install generated files."
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Load"
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Save"
+msgstr ""
+
+#: steps_interactive.pm:438
+#, c-format
+msgid "Bad file"
+msgstr ""
+
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
+
+#: steps_interactive.pm:456
+#, c-format
+msgid "GNOME"
+msgstr "GNOME"
+
+#: steps_interactive.pm:459
+#, c-format
+msgid "Desktop Selection"
+msgstr ""
+
+#: steps_interactive.pm:460
+#, c-format
+msgid "You can choose your workstation desktop profile."
+msgstr ""
+
+#: steps_interactive.pm:552
+#, c-format
+msgid "Selected size is larger than available space"
+msgstr ""
+
+#: steps_interactive.pm:576
+#, c-format
+msgid "Type of install"
+msgstr ""
+
+#: steps_interactive.pm:577
+#, c-format
+msgid ""
+"You have not selected any group of packages.\n"
+"Please choose the minimal installation you want:"
+msgstr ""
+
+#: steps_interactive.pm:582
+#, c-format
+msgid "With X"
+msgstr ""
+
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
+
+#: steps_interactive.pm:584
+#, c-format
+msgid "With basic documentation (recommended!)"
+msgstr ""
+
+#: steps_interactive.pm:585
+#, c-format
+msgid "Truly minimal install (especially no urpmi)"
+msgstr ""
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
+#, c-format
+msgid "Preparing installation"
+msgstr ""
+
+#: steps_interactive.pm:655
+#, c-format
+msgid "Installing package %s"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "There was an error ordering packages:"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "Go on anyway?"
+msgstr ""
+
+#: steps_interactive.pm:683
+#, c-format
+msgid "Retry"
+msgstr ""
+
+#: steps_interactive.pm:684
+#, c-format
+msgid "Skip this package"
+msgstr ""
+
+#: steps_interactive.pm:685
+#, c-format
+msgid "Skip all packages from medium \"%s\""
+msgstr ""
+
+#: steps_interactive.pm:686
+#, c-format
+msgid "Go back to media and packages selection"
+msgstr ""
+
+#: steps_interactive.pm:689
+#, c-format
+msgid "There was an error installing package %s."
+msgstr ""
+
+#: steps_interactive.pm:708
+#, c-format
+msgid "Post-install configuration"
+msgstr ""
+
+#: steps_interactive.pm:715
+#, c-format
+msgid "Please ensure the Update Modules media is in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr "Rojanekirin"
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
+#, c-format
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
+msgstr ""
+
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
+#, c-format
+msgid "%s on %s"
+msgstr ""
+
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
+#, c-format
+msgid "Hardware"
+msgstr "Kompûter"
+
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr ""
+
+#: steps_interactive.pm:972
+#, c-format
+msgid "Graphical interface"
+msgstr ""
+
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
+msgid "Network & Internet"
+msgstr "Tor & Înternet"
+
+#: steps_interactive.pm:991
+#, c-format
+msgid "Proxies"
+msgstr ""
+
+#: steps_interactive.pm:992
+#, c-format
+msgid "configured"
+msgstr ""
+
+#: steps_interactive.pm:1002
+#, c-format
+msgid "Security Level"
+msgstr ""
+
+#: steps_interactive.pm:1022
+#, c-format
+msgid "Firewall"
+msgstr "Ewlekarî (Firewall) "
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "activated"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "disabled"
+msgstr "Pasîf"
+
+#: steps_interactive.pm:1041
+#, c-format
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr ""
+
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, c-format
+msgid "Preparing initial startup program..."
+msgstr ""
+
+#: steps_interactive.pm:1073
+#, c-format
+msgid "Be patient, this may take a while..."
+msgstr ""
+
+#: steps_interactive.pm:1089
+#, c-format
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+
+#: steps_interactive.pm:1121
+#, c-format
+msgid "Insert a blank floppy in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:1123
+#, c-format
+msgid "Creating auto install floppy..."
+msgstr ""
+
+#: steps_interactive.pm:1134
+#, c-format
+msgid ""
+"Some steps are not completed.\n"
+"\n"
+"Do you really want to quit now?"
+msgstr ""
+
+#: steps_interactive.pm:1144
+#, c-format
+msgid "Congratulations"
+msgstr "Serkeftin"
+
+#: steps_interactive.pm:1147
+#, c-format
+msgid "Reboot"
+msgstr ""
+
+#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
+#: steps_list.pm:16
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Language"
+msgstr ""
+
+#: steps_list.pm:16 steps_list.pm:23
+#, c-format
+msgid "Localization"
+msgstr ""
+
+#: steps_list.pm:17
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"License"
+msgstr ""
+
+#: steps_list.pm:18
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Mouse"
+msgstr ""
+
+#: steps_list.pm:19 steps_list.pm:20
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Hard drive detection"
+msgstr ""
+
+#: steps_list.pm:21 steps_list.pm:22
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installation class"
+msgstr ""
+
+#: steps_list.pm:23
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Keyboard"
+msgstr ""
+
+#: steps_list.pm:24
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Security"
+msgstr ""
+
+#: steps_list.pm:25
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Partitioning"
+msgstr ""
+
+#: steps_list.pm:27 steps_list.pm:28
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Formatting"
+msgstr ""
+
+#: steps_list.pm:29
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Choosing packages"
+msgstr ""
+
+#: steps_list.pm:31
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installing"
+msgstr ""
+
+#: steps_list.pm:34
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Users"
+msgstr ""
+
+#: steps_list.pm:38 steps_list.pm:39
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Bootloader"
+msgstr ""
+
+#: steps_list.pm:40 steps_list.pm:41
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Configure X"
+msgstr ""
+
+#: steps_list.pm:42
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Summary"
+msgstr ""
+
+#: steps_list.pm:44 steps_list.pm:45
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Services"
+msgstr ""
+
+#: steps_list.pm:46
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Updates"
+msgstr ""
+
+#: steps_list.pm:48
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Exit"
+msgstr ""
diff --git a/perl-install/install/share/po/ky.po b/perl-install/install/share/po/ky.po
index 86c966a04..e301184eb 100644
--- a/perl-install/install/share/po/ky.po
+++ b/perl-install/install/share/po/ky.po
@@ -1,55 +1,83 @@
-# translation of DrakX-ky.po to Kyrgyz
-# Copyright (C) 2004,2003, 2005 Free Software Foundation, Inc.
-# Timur Jamakeev <ztimur@mail.ru>, 2003,2004.
-# Nurlan Borubaev <nurlan@tamga.info>, 2005.
-# Ilyas Bakirov <just_ilyas@yahoo.com>, 2008.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Ilyas Bakirov <just_ilyas@yahoo.com>, 2008
+# Nurlan Borubaev <nurlan@tamga.info>, 2005
+# Timur Jamakeev <ztimur@mail.ru>, 2003-2004
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-ky\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-18 19:08+0600\n"
-"Last-Translator: Ilyas Bakirov <just_ilyas@yahoo.com>\n"
-"Language-Team: Kyrgyz\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2020-06-18 00:30+0000\n"
+"Last-Translator: Transifex Bot <>\n"
+"Language-Team: Kyrgyz (http://www.transifex.com/MageiaLinux/mageia/language/"
+"ky/)\n"
+"Language: ky\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Сиздин иш столуңуз USBде"
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "100%% ачык кодду Mandriva Linux дистрибутиви"
+msgid "Home entertainment"
+msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Linux'ту Mandriva One менен аралап үйрөнүү"
+msgid "For kids"
+msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Толук Mandriva Linux иш столу жардам менен"
+msgid "For family!"
+msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: ар бирдин керектеген дистрибутив"
+msgid "For developers!"
+msgstr ""
-#: any.pm:109
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Сизде кийинки кезектеги кошумча алып жүрүүчү барбы?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -62,92 +90,57 @@ msgstr ""
"\n"
"Ырастоолор үчүн кошумча булагы дагы барбы?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Желе (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Желе (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Тармак (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Күзгүсүнүн URL'и?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL ftp:// же http:// менен башталышы керек"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "Бар болгон күзгүлөр тизмесин Mandriva Linux веб сайтындан алынууда..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Бар болгон күзгүлөр тизмесин Mandriva Linux веб сайтындан алынууда "
-"ийгиликсиз айяктады..."
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Пакеттерди алуучу күзгүнү тандаңыз"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS орнотуу"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "NFS топтомунун компьютер атын жана директориясын кириңиз"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Түйюндүн аты көрсөтүлгөн жок"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Директория \"/\" белги менен башталышы керек"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS туташуунун түйюн аты ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Каталог"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Кошумча"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -156,23 +149,90 @@ msgstr ""
"Бул күзгүдө пакеттердин тизмеси атбылган жок. Жайгашуусунун тууралыгын "
"текшериңиз."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Орнотулган пакеттер изделип жатат..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Жаңыланычуу пакеттер изделип жатат..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Жаңылоодон мурда пакеттер өчүрүлүп жатат..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -186,87 +246,87 @@ msgstr ""
"\n"
"Бул пакеттердин алынып ташталуусун каалайсызбы?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%s файлын окуудагы ката"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Төмөнкү диск(тер)дин аты өзгөртүлдү:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (мурунку аты %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Желе"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Алып жүрүүчүнү тандаңыз"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Файл алдагачан бар. Үстүнө кайра жазылсынбы?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Кирүү укугу четке кагылды"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Жаман NFS аты"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "%s жараксыз алып жүрүүчү"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Бөлүмдөрдү жаратууга чейин скриншотторду түзүүгө болбойт"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Орнотуудан кийин скриншоттор %s ичинде болот"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Орнотуу"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Конфигурациялоо"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Сиз %s дагы форматташыңыз керек"
@@ -291,22 +351,22 @@ msgstr "Тармак көтөрүлүүдө"
msgid "Bringing down the network"
msgstr "Тармак өчүрүлүүдө"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Күтө туруңуз, файл жүктөлүп жатат"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "булак кошулган жок"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Кээбир пакеттерди келечекте колдонуу үчүн дискке көчүрүп жатат"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Көчүрүү жүрүүдө"
@@ -336,7 +396,24 @@ msgstr "жакшы"
msgid "maybe"
msgstr "болушу мүмкүн"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"\"%s\" булагында xml-info табылган жок. %s пакети үчүн жарым ганарезультат "
+"алынды"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Баяндалбады"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -345,78 +422,79 @@ msgstr ""
"%s менен талап кылынган кээбир пакеттер орнотула алган жок:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Жаңылыштык орун алды:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Фаталдык ката пайда болду: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d орнотуу транзакциялары ишке ашпады"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Пакеттердин орнотулушу ийгиликсиз аяктады:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Иш станциясы"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Офис станциясы"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Офис программалары: текст процессорлору (OpenOffice.org Writer, Kword), "
-"электрондук таблицалар (OpenOffice.org Calc, Kspread), pdf файлдарын көрүү "
+"Офис программалары: текст процессорлору (LibreOffice Writer, Kword), "
+"электрондук таблицалар (LibreOffice Calc, Kspread), pdf файлдарын көрүү "
"программалары, ж.б."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Офис программалары: текст процессорлору (kword, abiword), электрондук "
-"таблицалар (kspread, gnumeric), pdf файлдарын көрүү программалары, ж.б."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Оюн станциясы"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
"Оюн-зоок программалары: аркада оюндары, тактай оюндары, стратегия оюндары, ж."
"б."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Мультимедиа станциясы"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Үн жана видео ойнотуу/терүү программалары"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Интернет станциясы"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -425,196 +503,196 @@ msgstr ""
"Почтаны жана жаңылыктарды (mutt, tin..) окууга жана жөнөтүүгө, жана вебде "
"иштөөгө арналган куралдар тобу"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Тармак компьютери (клиент)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Ар түрдүү протоколдор клиенттери, ssh да кошулган"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Компьютериңизди жеңил конфигурациялоо куралдары"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Консоль куралдары"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Редакторлор, шелдер, файл куралдары, терминалдар"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Иштеп түзүү"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
"C жана C++ иштеп чыгуу библиотекалары, программалар жана include файлдары"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Документация"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Linux жана Free Software жөнүндөгү китептер жана HOWTOлар"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
"Linux стандарттык базасы. Үчүнчү тараптык иштеп чыгуучулардын тиркемелерин "
"колдоо"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Веб-сервери"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab сервери"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Файрволл/Маршруттагыч"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Интернет дарбазасы"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Почта/Жаңылыктар"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix почта сервери, Inn жаңылыктар сервери"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Каталогдор сервери"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP сервери"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "DNS жана NIS"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Файл жана принтер бөлүшүү сервери"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS сервери, Samba сервери"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Берилиштер базасы"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL жана MySQL берилиштер базасынын сервери"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL жана MariaDB берилиштер базасынын сервери"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Почта"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix почта сервери"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL же MySQL берилиштер базасынын сервери"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL же MariaDB берилиштер базасынын сервери"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Тармак сервери"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS сервери, SMB сервери, Proxy сервери, ssh сервери"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Графикалык чөйрө"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE иш станциясы"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -623,12 +701,12 @@ msgstr ""
"K Desktop Environment - негизги графикалык чөйрө, кошумча куралдар "
"коллекциясы менен"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME иш станциясы"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -637,66 +715,109 @@ msgstr ""
"Колдонуучуга ыңгайлашкан тиркемелерин жана иш столунун кураларын камтыган "
"графикалык чөйрө"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
#, c-format
msgid "LXDE Desktop"
msgstr "LXDE иш столу"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:191
#, c-format
-msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+msgid "A lightweight fast graphical environment"
msgstr ""
-"Колдонуучуга ыңгайлашкан тиркемелерин жана иш столунун кураларын камтыган "
-"графикалык чөйрө"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Башка графикалык иш столдору"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, ж.б. "
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Утилиталар"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH сервери"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin узактан башкаруу сервери"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Тармак аспаптары/Мониторинг"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Мониторинг аспаптар, процесс эсептүүчүлөр, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Усталары"
+msgid "Mageia Wizards"
+msgstr "Mageia Усталары"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Серверди ырастоо усталары"
@@ -710,7 +831,7 @@ msgstr ""
"Жаңылыштык орун алды, бирок мен аны кантип туура иштетүүнү билбейм.\n"
"Мындан ары тобокелге салып өзүңүз улантыңыз."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -730,253 +851,257 @@ msgstr "`%s' кадамына өтүү аракети\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux %s орнотуу"
+msgid "%s Installation %s"
+msgstr "%s %s орнотуу"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> элементтер ортосунда"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg жай башталып жатат. Күтө туруңуз..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Системага жетеринче ресурс жетпей жатат. Mandriva Linux системасын\n"
+"Системага жетеринче ресурс жетпей жатат. %s системасын\n"
"орнотууда проблемалар чыгышы мүмкүн. Андай болсо тексттик режимде\n"
"орнотууну текшерип көрүңүз. Ал үчүн, дисктен жүктөлүп жаткан учурда\n"
"`F1' клавишасын басып `text' сөзүн кириңиз."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Mandriva KDE иш столун орнотуу"
+msgid "Media Selection"
+msgstr "Пакеттердин группасын тандоо"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Mandriva GNOME иш столун орнотуу"
+msgid "Install %s Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "%s GNOME иш столун орнотуу"
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Менчик орнотуу"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE иш столу"
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME иш столу"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Менчик иш столу"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Мына '%s' иш столдун алдын ала көрүнүшү."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Чоң көрүнүштү көрүү үчүн сүрөткө басыңыз"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Пакеттердин группасын тандоо"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Пакеттерди өз алдынча тандоо"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Жалпы көлөмү: %d / %d Мб"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Туура эмес пакет"
+msgid "Total size: %d / %d MB"
+msgstr "Жалпы көлөмү: %d / %d Мб"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Версиясы: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Көлөмү: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d Кб\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Маанилүүлүгү:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Сиз бул пакетти тандап/тандабай албайсыз"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s жоктугунан"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "%s канаатанбагандыгынан"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%s активдештирүү аракети"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s сактоо үчүн"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Сиз бул пакетти тандап алалбайсыз, анткени аны орнотуу үчүн жетеринче бош "
"боштук жок"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Төмөнкү пакеттер орнотуулат"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Төмөнкү пакеттер өчүрүлөт"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Бул орнотууга шарт болгон пакет, пакетти тандап алалбайсыз"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Бул пакетти тандап алалбайсыз. Пакет алда качан орнотулган"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Бул пакетти белгилөөдөн алып салууга болбойт. Ал жаңыланышы керек"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Автоматтык түрдө тандалган пакеттерди көрсөтүү"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Орнотуу"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Тандалгандарды Жүктөө/Сактоо"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Пакеттерди тандоо жаңыланууда"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Минималдык орнотуу"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Пакеттерди башкаруу"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Сиз орнотууну каалаган пакеттерди тандаңыз"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Орнотуу"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Кеңири маалыматсыз"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Калган убакыт:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(болжолдуу убакыт..)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d- пакет"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Жыйынтык"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Конфигурация"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "конфигурацияланбаган"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Пакеттердин группасын тандоо"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -985,12 +1110,12 @@ msgstr ""
"Төмөнкү орнотуу булактары табылды.\n"
"Эгерде кээбирин аттап өтүүнү кааласаңыз, анда аларды тандабай өтүңүз."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Компакт-диск мазмунун орнотуудан мурун компьютер дискине көчүрүп алуу "
@@ -998,72 +1123,72 @@ msgstr ""
"Андан кийин орнотуу компьютер дискинен улантылат жана пакеттер толук "
"системанын орнотулуп бүткөндөн кийин калышат."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "CD дискти толугу менен көчүрүү"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Жаңылыштык орун алды"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Өзүңүздүн алиптакта картасын тандаңыз"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Мүмкүн болгон бардык клавиөлкөлөр тизмеси"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Орнотуу/Жаңылоо"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Бул орнотуубу же жаңылообу?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Орнотуу"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s жаңылоо"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s үчүн шифрлөө ачкычы"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Орнотууну айну, система өчүп жандыруу"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Жаңы орнотуу"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Мурунку орнотууну жаңылоо (сунуш кылынбайт)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1071,45 +1196,18 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Орноткуч учурдагы орнотулган Mandriva Linux системанын %s жаңылоосун\n"
-"толук алалбашы мүмкүн.\n"
-"\n"
-"Учурдагы системаны жаңыдан жаңы версиясы менен орнотуу сунушталат.\n"
-"\n"
-"Эскертүү : \"Жаңы орнотулуш\" тандоодон мурун, бардык жеке\n"
-"маалыматтарды архивдөө менен көчүрүп алышыңыз керек."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDE конфигурацияланууда"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Өз жүктөлүү программасы үчүн жетеринче бош боштук калган жок! Орнотуу "
-"улантылат, бирок системанын жүктөлүшү үчүн DiskDrake менен баштапкы жүктөлүү "
-"бөлүгүн түзүү керек"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"PPC PReP жүктөлүү бөлүгүн түзүү керек! Орнотуу улантылат, бирок системанын "
-"жүктөлүшү үчүн DiskDrake менен баштапкы жүктөлүү бөлүгүн түзүү керек"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1122,21 +1220,21 @@ msgstr ""
"Эгерде сизде жок болсо, анда ушул компакт-дисктен орнотууну айнуу үчүн "
"\"Айнуу\" баскычын басыңыз."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Мүмкүн болгон пакеттер изделүүдө..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Системаңыз орнотууга же жаңылоого жетеринче бош боштукка ээ эмес (%d МБ > %d "
"МБ)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1145,52 +1243,52 @@ msgstr ""
"Жүктөө же пакеттер тандоосун сактоону тандаңыз.\n"
"Файлдар форматы автоматтык орнотууда түзүлгөн файлдар менен окшош."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Жүктөө"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Сактоо"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Туура эмес файл"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Иш столун тандоо"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Иштоо станцияңыздын иш столдун профилин тандап аласыз."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Тандалган өлчөм бар болгон боштуктан чоң"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Орнотуу тиби"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1199,87 +1297,126 @@ msgstr ""
"Эч кандай пакеттер группасы тандалган жок.\n"
"Минималдык орнотуу тибин тандаңыз:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X менен"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s пакети орнотуулууда"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Башкы документация менен (сунушталат!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Чыныгы минималдуу орнотуулуш (атайын urpmi'сиз)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Орнотуу даярдалууда"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s пакети орнотуулууда"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Пакеттерди кабыл алууда ката пайда болду:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Буга карабай улантайынбы?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Кайталоо"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Бул пакетти аттап өтүү"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "\"%s\" ичинен бардык пакеттерди аттап өтүү"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Артка баруу жана орнотууга пакеттерди нандоо"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "%s пакетти орнотууда ката чыкты."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Орнотуулуштан кийинки ырастоолор"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "%s ичинде Update Modules топтомунун бар экендигин текшерип көрүңүз"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Жаңылоолор"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Төмөнкү пакеттер орнотуулат"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Булакты кошуу ийгиликсиздиги"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1300,112 +1437,80 @@ msgstr ""
"\n"
"Пакеттер орнотулсунбу?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s %s'да"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Техникалык жабдуу"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Добуш картасы"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Сизде ISA добуш карточкасы барбы?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Үн картасын ырастоо үчүн орнотуудан кийин \"alsaconf\" же \"sndconfig\" "
-"коммандаларын аткарыңыз"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Эч кандай добуш карточкасы табылган жок. Орнотуудан кийин \"harddrake\" "
-"кайталап көрүңүз"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Графикалык интерфейс"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Тармак жана Интернет"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Проксилер"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "ырасталды"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Коосуздук деңгээли"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Файервол"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "активдештирилди"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "өчүк"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Сиз X'ти ырастаган жоксуз.Чындап ушуну каалайсызбы?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Система жүктөөгүч даярдалууда..."
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Күтө туруңуз, бул бир нече убакытты алышы мүмкүн..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Сиз өтө эски тарыхый же белгисиз машинанын ээси окшойсуз жана 'yaboot' "
-"баштапкы жүктөгүчү машинаңызга иштебеши мүмкүн. Орнотуу улантылат, бирок "
-"системанын жүктөлүшү үчүн 'BootX' же башка жүктөгүч колдонулушу керек. "
-"Ядронун тамырдык файл системанын параметри: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1414,17 +1519,17 @@ msgstr ""
"Бул коопсудук деңгээлде Windows бөлүмүндө жайгашкан файларда жетүү жалгыз "
"гана администраторга уруксат берилген."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "%s ичине бош флоппи дискти киргизиңиз"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Авто орнотуу флоппини түзүү..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1435,12 +1540,12 @@ msgstr ""
"\n"
"Сиз чындап азыр чыгууну каалайсызбы?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Конфигурациялар"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Кайра жүктөө"
@@ -1535,13 +1640,6 @@ msgid ""
"Users"
msgstr "Колдонуучулар"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Тармактар"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1584,111 +1682,24 @@ msgid ""
"Exit"
msgstr "Чыгуу"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "%s чейин системанын жаңылоосун чечтиңиз. KDE 3.5 системаңызда табылды.\n"
-#~ "Буд орноткуч жаңылоодо KDE 3.5'ти сакатабайт. Эгерде орнотууну уланта "
-#~ "берсеңиз, \n"
-#~ "KDE 4 KDE 3'тү алмаштырып салат жана жеке ырастоолоруңуз менен KDE "
-#~ "ырастоолору \n"
-#~ "жоголуп кетет. KDE 3.5'тен жаңылоо жана жеке ырастоолорду сактап калуу "
-#~ "үчүн, \n"
-#~ "системаны кайрадан жүктөп жана Mandriva жаңылоо аплети менен жаңыланым "
-#~ "көрүңүз."
-
-#~ msgid "Proceed"
-#~ msgstr "Аткарылды"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "[%s] чыгаруу ийгиликсиз аякталды"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "%s файлы жүктөөлүп жатат..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "32bit тен 64bit ке жаңылоо мүмкүе эмес"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "64bit тен 32bit ке жаңылоо мүмкүн эмес"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Сиз төмөнкү серверлерди тандадыңыз: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Бул серверлер алдынала жандандырылган болушат. Аларда кандайдыр бир "
-#~ "белгилүү\n"
-#~ "коопсуздук көйгөйлөрү жок, бирок алар табыла элек болушу да мүмкүн. "
-#~ "Мындай\n"
-#~ "учурда сиз аладрды мүмкүн болушунча тезирээк жаңылашыңыз керек.\n"
-#~ "\n"
-#~ "\n"
-#~ "Сиз бул серверлерди орнотууну каалайсызбы?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm иш столу"
-
-#~ msgid "Replay"
-#~ msgstr "Кайталоо"
-
-#~ msgid "Automated"
-#~ msgstr "Автоматтык"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Тандалган пакеттерди сактоо"
-
-#~ msgid "All"
-#~ msgstr "Бардыгы"
-
-#~ msgid "TV card"
-#~ msgstr "ТВ-карта"
-
-#~ msgid "Boot"
-#~ msgstr "Жүктөө"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Аутентификация"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Орнотуу классын тандоо"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Болжолдуу убакыт"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Күзгүсүнүн URL'и?"
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Орнотуу үчүн пакеттерди тандаңыз"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL ftp:// же http:// менен башталышы керек"
-#~ msgid "Users"
-#~ msgstr "Колдонуучулар"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Бар болгон күзгүлөр тизмесин %s веб сайтындан алынууда..."
-#~ msgid "Networking"
-#~ msgstr "Тармактар"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr ""
+#~ "Бар болгон күзгүлөр тизмесин %s веб сайтындан алынууда ийгиликсиз "
+#~ "айяктады..."
-#~ msgid "Configure X"
-#~ msgstr "X конфигурациялоо"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Пакеттерди алуучу күзгүнү тандаңыз"
diff --git a/perl-install/install/share/po/lo.po b/perl-install/install/share/po/lo.po
new file mode 100644
index 000000000..eecbf2229
--- /dev/null
+++ b/perl-install/install/share/po/lo.po
@@ -0,0 +1,1607 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Lao (http://www.transifex.com/MageiaLinux/mageia/language/"
+"lo/)\n"
+"Language: lo\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
+msgid "Do you have further supplementary media?"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:154
+#, c-format
+msgid ""
+"The following media have been found and will be used during install: %s.\n"
+"\n"
+"\n"
+"Do you have a supplementary installation medium to configure?"
+msgstr ""
+
+#: any.pm:162
+#, c-format
+msgid "Network (HTTP)"
+msgstr ""
+
+#: any.pm:163
+#, c-format
+msgid "Network (FTP)"
+msgstr ""
+
+#: any.pm:164
+#, c-format
+msgid "Network (NFS)"
+msgstr ""
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr ""
+
+#: any.pm:225
+#, c-format
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
+
+#: any.pm:229
+#, c-format
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr ""
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr ""
+
+#: any.pm:593
+#, c-format
+msgid "Finding packages to upgrade..."
+msgstr ""
+
+#: any.pm:612
+#, c-format
+msgid "Removing packages prior to upgrade..."
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:850
+#, c-format
+msgid ""
+"The following packages will be removed to allow upgrading your system: %s\n"
+"\n"
+"\n"
+"Do you really want to remove these packages?\n"
+msgstr ""
+
+#: any.pm:1075
+#, c-format
+msgid "Error reading file %s"
+msgstr ""
+
+#: any.pm:1283
+#, c-format
+msgid "The following disk(s) were renamed:"
+msgstr ""
+
+#: any.pm:1285
+#, c-format
+msgid "%s (previously named as %s)"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "HTTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "FTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "NFS"
+msgstr ""
+
+#: any.pm:1361 steps_interactive.pm:979
+#, c-format
+msgid "Network"
+msgstr ""
+
+#: any.pm:1365
+#, c-format
+msgid "Please choose a media"
+msgstr ""
+
+#: any.pm:1381
+#, c-format
+msgid "File already exists. Overwrite it?"
+msgstr ""
+
+#: any.pm:1385
+#, c-format
+msgid "Permission denied"
+msgstr ""
+
+#: any.pm:1433
+#, c-format
+msgid "Bad NFS name"
+msgstr ""
+
+#: any.pm:1454
+#, c-format
+msgid "Bad media %s"
+msgstr ""
+
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
+
+#: any.pm:1509
+#, c-format
+msgid "Screenshots will be available after install in %s"
+msgstr ""
+
+#: gtk.pm:134
+#, c-format
+msgid "Installation"
+msgstr ""
+
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
+#, c-format
+msgid "Configuration"
+msgstr ""
+
+#: install2.pm:220
+#, c-format
+msgid "You must also format %s"
+msgstr ""
+
+#: interactive.pm:16
+#, c-format
+msgid ""
+"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
+"You can find some information about them at: %s"
+msgstr ""
+
+#: interactive.pm:22
+#, c-format
+msgid "Bringing up the network"
+msgstr ""
+
+#: interactive.pm:27
+#, c-format
+msgid "Bringing down the network"
+msgstr ""
+
+#: media.pm:397
+#, c-format
+msgid "Please wait, retrieving file"
+msgstr ""
+
+#: media.pm:704
+#, c-format
+msgid "unable to add medium"
+msgstr ""
+
+#: media.pm:744
+#, c-format
+msgid "Copying some packages on disks for future use"
+msgstr ""
+
+#: media.pm:797
+#, c-format
+msgid "Copying in progress"
+msgstr ""
+
+#: pkgs.pm:32
+#, c-format
+msgid "must have"
+msgstr ""
+
+#: pkgs.pm:33
+#, c-format
+msgid "important"
+msgstr ""
+
+#: pkgs.pm:34
+#, c-format
+msgid "very nice"
+msgstr ""
+
+#: pkgs.pm:35
+#, c-format
+msgid "nice"
+msgstr ""
+
+#: pkgs.pm:36
+#, c-format
+msgid "maybe"
+msgstr ""
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
+#, c-format
+msgid ""
+"Some packages requested by %s cannot be installed:\n"
+"%s"
+msgstr ""
+
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
+msgid "An error occurred:"
+msgstr "ມີຂໍ້ຜິດພາດເກີດຂຶ້ນ:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
+
+#: pkgs.pm:929
+#, c-format
+msgid "Installation of packages failed:"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:16
+#, c-format
+msgid "Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:18
+#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:26
+#, c-format
+msgid "Game station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:27
+#, c-format
+msgid "Amusement programs: arcade, boards, strategy, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:30
+#, c-format
+msgid "Multimedia station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:31
+#, c-format
+msgid "Sound and video playing/editing programs"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:36
+#, c-format
+msgid "Internet station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:37
+#, c-format
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:42
+#, c-format
+msgid "Network Computer (client)"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:43
+#, c-format
+msgid "Clients for different protocols including ssh"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:49
+#, c-format
+msgid "Tools to ease the configuration of your computer"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:53
+#, c-format
+msgid "Console Tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:54
+#, c-format
+msgid "Editors, shells, file tools, terminals"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
+#, c-format
+msgid "Development"
+msgstr "ພັດທະນາໂປຣແກຣມ"
+
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
+msgid "C and C++ development libraries, programs and include files"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
+#, c-format
+msgid "Documentation"
+msgstr "ຄູ່ມື"
+
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
+msgid "Books and Howto's on Linux and Free Software"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
+#, c-format
+msgid "LSB"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
+msgid "Linux Standard Base. Third party applications support"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:79
+#, c-format
+msgid "Web Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:80
+#, c-format
+msgid "Apache"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:84
+#, c-format
+msgid "Groupware"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:85
+#, c-format
+msgid "Kolab Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
+msgid "Firewall/Router"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
+msgid "Internet gateway"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:92
+#, c-format
+msgid "Mail/News"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:93
+#, c-format
+msgid "Postfix mail server, Inn news server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:97
+#, c-format
+msgid "Directory Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:102
+#, c-format
+msgid "FTP Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:103
+#, c-format
+msgid "ProFTPd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:107
+#, c-format
+msgid "DNS/NIS"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:108
+#, c-format
+msgid "Domain Name and Network Information Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:112
+#, c-format
+msgid "File and Printer Sharing Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:113
+#, c-format
+msgid "NFS Server, Samba server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
+msgid "Database"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:123
+#, c-format
+msgid "Web/FTP"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:124
+#, c-format
+msgid "Apache, Pro-ftpd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:128
+#, c-format
+msgid "Mail"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:129
+#, c-format
+msgid "Postfix mail server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:134
+#, c-format
+msgid "PostgreSQL or MariaDB database server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:142
+#, c-format
+msgid "Network Computer server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:143
+#, c-format
+msgid "NFS server, SMB server, Proxy server, ssh server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:150
+#, c-format
+msgid "Graphical Environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:153
+#, c-format
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:158
+#, c-format
+msgid "GNOME Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
+msgid "Other Graphical Desktops"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:218
+#, c-format
+msgid "Utilities"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
+msgid "SSH Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:225
+#, c-format
+msgid "Webmin"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:226
+#, c-format
+msgid "Webmin Remote Configuration Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:230
+#, c-format
+msgid "Network Utilities/Monitoring"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:231
+#, c-format
+msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:236
+#, c-format
+msgid "Wizards to configure server"
+msgstr ""
+
+#: steps.pm:85
+#, c-format
+msgid ""
+"An error occurred, but I do not know how to handle it nicely.\n"
+"Continue at your own risk."
+msgstr ""
+
+#: steps.pm:469
+#, c-format
+msgid ""
+"Some important packages did not get installed properly.\n"
+"Either your cdrom drive or your cdrom is defective.\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
+"\"\n"
+msgstr ""
+
+#: steps_auto_install.pm:71 steps_stdio.pm:27
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr ""
+
+#: steps_curses.pm:22
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
+
+#: steps_curses.pm:32
+#, c-format
+msgid "<Tab>/<Alt-Tab> between elements"
+msgstr ""
+
+#: steps_gtk.pm:151
+#, c-format
+msgid "Xorg server is slow to start. Please wait..."
+msgstr ""
+
+#: steps_gtk.pm:216
+#, c-format
+msgid ""
+"Your system is low on resources. You may have some problem installing\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
+"press `F1' when booting on CDROM, then enter `text'."
+msgstr ""
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
+msgid "Custom install"
+msgstr ""
+
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:281
+#, c-format
+msgid "GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:282
+#, c-format
+msgid "Custom Desktop"
+msgstr ""
+
+#: steps_gtk.pm:288
+#, c-format
+msgid "Here's a preview of the '%s' desktop."
+msgstr ""
+
+#: steps_gtk.pm:315
+#, c-format
+msgid "Click on images in order to see a bigger preview"
+msgstr ""
+
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
+msgid "Package Group Selection"
+msgstr ""
+
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
+msgid "Individual package selection"
+msgstr ""
+
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr ""
+
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr ""
+
+#: steps_gtk.pm:425
+#, c-format
+msgid "Version: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "Size: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "%d KB\n"
+msgstr ""
+
+#: steps_gtk.pm:427
+#, c-format
+msgid "Importance: "
+msgstr ""
+
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr ""
+
+#: steps_gtk.pm:466
+#, c-format
+msgid "due to missing %s"
+msgstr ""
+
+#: steps_gtk.pm:467
+#, c-format
+msgid "due to unsatisfied %s"
+msgstr ""
+
+#: steps_gtk.pm:468
+#, c-format
+msgid "trying to promote %s"
+msgstr ""
+
+#: steps_gtk.pm:469
+#, c-format
+msgid "in order to keep %s"
+msgstr ""
+
+#: steps_gtk.pm:474
+#, c-format
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+
+#: steps_gtk.pm:477
+#, c-format
+msgid "The following packages are going to be installed"
+msgstr ""
+
+#: steps_gtk.pm:478
+#, c-format
+msgid "The following packages are going to be removed"
+msgstr ""
+
+#: steps_gtk.pm:504
+#, c-format
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr ""
+
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr ""
+
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+
+#: steps_gtk.pm:512
+#, c-format
+msgid "Show automatically selected packages"
+msgstr ""
+
+#: steps_gtk.pm:516
+#, c-format
+msgid "Install"
+msgstr ""
+
+#: steps_gtk.pm:519
+#, c-format
+msgid "Load/Save selection"
+msgstr ""
+
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
+msgid "Updating package selection"
+msgstr ""
+
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
+msgid "Minimal install"
+msgstr ""
+
+#: steps_gtk.pm:543
+#, c-format
+msgid "Software Management"
+msgstr "ຈັດການໂປແກມ"
+
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
+msgid "Choose the packages you want to install"
+msgstr ""
+
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
+#, c-format
+msgid "Installing"
+msgstr ""
+
+#: steps_gtk.pm:590
+#, c-format
+msgid "No details"
+msgstr ""
+
+#: steps_gtk.pm:610
+#, c-format
+msgid "Time remaining:"
+msgstr ""
+
+#: steps_gtk.pm:611
+#, c-format
+msgid "(estimating...)"
+msgstr ""
+
+#: steps_gtk.pm:637
+#, c-format
+msgid "%d package"
+msgid_plural "%d packages"
+msgstr[0] ""
+
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
+#, c-format
+msgid "Summary"
+msgstr ""
+
+#: steps_gtk.pm:713
+#, c-format
+msgid "Configure"
+msgstr ""
+
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
+msgid "not configured"
+msgstr ""
+
+#: steps_gtk.pm:773 steps_interactive.pm:315
+#, c-format
+msgid ""
+"The following installation media have been found.\n"
+"If you want to skip some of them, you can unselect them now."
+msgstr ""
+
+#: steps_gtk.pm:789 steps_interactive.pm:321
+#, c-format
+msgid ""
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
+msgstr ""
+
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
+msgid "Copy whole CDs"
+msgstr ""
+
+#: steps_interactive.pm:40
+#, c-format
+msgid "An error occurred"
+msgstr ""
+
+#: steps_interactive.pm:105
+#, c-format
+msgid "Please choose your keyboard layout"
+msgstr ""
+
+#: steps_interactive.pm:109
+#, c-format
+msgid "Here is the full list of available keyboards:"
+msgstr ""
+
+#: steps_interactive.pm:153
+#, c-format
+msgid "Install/Upgrade"
+msgstr ""
+
+#: steps_interactive.pm:157
+#, c-format
+msgid "Is this an install or an upgrade?"
+msgstr ""
+
+#: steps_interactive.pm:159
+#, c-format
+msgid ""
+"_: This is a noun:\n"
+"Install"
+msgstr ""
+
+#: steps_interactive.pm:161
+#, c-format
+msgid "Upgrade %s"
+msgstr ""
+
+#: steps_interactive.pm:184
+#, c-format
+msgid "Encryption key for %s"
+msgstr ""
+
+#: steps_interactive.pm:217
+#, c-format
+msgid "Cancel installation, reboot system"
+msgstr ""
+
+#: steps_interactive.pm:218
+#, c-format
+msgid "New Installation"
+msgstr ""
+
+#: steps_interactive.pm:219
+#, c-format
+msgid "Upgrade previous installation (not recommended)"
+msgstr ""
+
+#: steps_interactive.pm:223
+#, c-format
+msgid ""
+"Installer has detected that your installed Linux system could not\n"
+"safely be upgraded to %s.\n"
+"\n"
+"New installation replacing your previous one is recommended.\n"
+"\n"
+"Warning : you should backup all your personal data before choosing \"New\n"
+"Installation\"."
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:354
+#, c-format
+msgid ""
+"Change your Cd-Rom!\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
+"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
+msgstr ""
+
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
+msgid "Looking for available packages..."
+msgstr ""
+
+#: steps_interactive.pm:380
+#, c-format
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+
+#: steps_interactive.pm:428
+#, c-format
+msgid ""
+"Please choose load or save package selection.\n"
+"The format is the same as auto_install generated files."
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Load"
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Save"
+msgstr ""
+
+#: steps_interactive.pm:438
+#, c-format
+msgid "Bad file"
+msgstr ""
+
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
+
+#: steps_interactive.pm:456
+#, c-format
+msgid "GNOME"
+msgstr ""
+
+#: steps_interactive.pm:459
+#, c-format
+msgid "Desktop Selection"
+msgstr ""
+
+#: steps_interactive.pm:460
+#, c-format
+msgid "You can choose your workstation desktop profile."
+msgstr ""
+
+#: steps_interactive.pm:552
+#, c-format
+msgid "Selected size is larger than available space"
+msgstr ""
+
+#: steps_interactive.pm:576
+#, c-format
+msgid "Type of install"
+msgstr ""
+
+#: steps_interactive.pm:577
+#, c-format
+msgid ""
+"You have not selected any group of packages.\n"
+"Please choose the minimal installation you want:"
+msgstr ""
+
+#: steps_interactive.pm:582
+#, c-format
+msgid "With X"
+msgstr ""
+
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
+
+#: steps_interactive.pm:584
+#, c-format
+msgid "With basic documentation (recommended!)"
+msgstr ""
+
+#: steps_interactive.pm:585
+#, c-format
+msgid "Truly minimal install (especially no urpmi)"
+msgstr ""
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
+#, c-format
+msgid "Preparing installation"
+msgstr ""
+
+#: steps_interactive.pm:655
+#, c-format
+msgid "Installing package %s"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "There was an error ordering packages:"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "Go on anyway?"
+msgstr ""
+
+#: steps_interactive.pm:683
+#, c-format
+msgid "Retry"
+msgstr ""
+
+#: steps_interactive.pm:684
+#, c-format
+msgid "Skip this package"
+msgstr ""
+
+#: steps_interactive.pm:685
+#, c-format
+msgid "Skip all packages from medium \"%s\""
+msgstr ""
+
+#: steps_interactive.pm:686
+#, c-format
+msgid "Go back to media and packages selection"
+msgstr ""
+
+#: steps_interactive.pm:689
+#, c-format
+msgid "There was an error installing package %s."
+msgstr ""
+
+#: steps_interactive.pm:708
+#, c-format
+msgid "Post-install configuration"
+msgstr ""
+
+#: steps_interactive.pm:715
+#, c-format
+msgid "Please ensure the Update Modules media is in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr ""
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
+#, c-format
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
+msgstr ""
+
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
+#, c-format
+msgid "%s on %s"
+msgstr ""
+
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
+#, c-format
+msgid "Hardware"
+msgstr ""
+
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr ""
+
+#: steps_interactive.pm:972
+#, c-format
+msgid "Graphical interface"
+msgstr ""
+
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
+msgid "Network & Internet"
+msgstr ""
+
+#: steps_interactive.pm:991
+#, c-format
+msgid "Proxies"
+msgstr ""
+
+#: steps_interactive.pm:992
+#, c-format
+msgid "configured"
+msgstr ""
+
+#: steps_interactive.pm:1002
+#, c-format
+msgid "Security Level"
+msgstr ""
+
+#: steps_interactive.pm:1022
+#, c-format
+msgid "Firewall"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "activated"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "disabled"
+msgstr ""
+
+#: steps_interactive.pm:1041
+#, c-format
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr ""
+
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, c-format
+msgid "Preparing initial startup program..."
+msgstr ""
+
+#: steps_interactive.pm:1073
+#, c-format
+msgid "Be patient, this may take a while..."
+msgstr ""
+
+#: steps_interactive.pm:1089
+#, c-format
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+
+#: steps_interactive.pm:1121
+#, c-format
+msgid "Insert a blank floppy in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:1123
+#, c-format
+msgid "Creating auto install floppy..."
+msgstr ""
+
+#: steps_interactive.pm:1134
+#, c-format
+msgid ""
+"Some steps are not completed.\n"
+"\n"
+"Do you really want to quit now?"
+msgstr ""
+
+#: steps_interactive.pm:1144
+#, c-format
+msgid "Congratulations"
+msgstr "ຂໍສະແດງຄວາມຍິນດີເດີ້"
+
+#: steps_interactive.pm:1147
+#, c-format
+msgid "Reboot"
+msgstr ""
+
+#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
+#: steps_list.pm:16
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Language"
+msgstr ""
+
+#: steps_list.pm:16 steps_list.pm:23
+#, c-format
+msgid "Localization"
+msgstr ""
+
+#: steps_list.pm:17
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"License"
+msgstr ""
+
+#: steps_list.pm:18
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Mouse"
+msgstr ""
+
+#: steps_list.pm:19 steps_list.pm:20
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Hard drive detection"
+msgstr ""
+
+#: steps_list.pm:21 steps_list.pm:22
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installation class"
+msgstr ""
+
+#: steps_list.pm:23
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Keyboard"
+msgstr ""
+
+#: steps_list.pm:24
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Security"
+msgstr ""
+
+#: steps_list.pm:25
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Partitioning"
+msgstr ""
+
+#: steps_list.pm:27 steps_list.pm:28
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Formatting"
+msgstr ""
+
+#: steps_list.pm:29
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Choosing packages"
+msgstr ""
+
+#: steps_list.pm:31
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installing"
+msgstr ""
+
+#: steps_list.pm:34
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Users"
+msgstr ""
+
+#: steps_list.pm:38 steps_list.pm:39
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Bootloader"
+msgstr ""
+
+#: steps_list.pm:40 steps_list.pm:41
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Configure X"
+msgstr ""
+
+#: steps_list.pm:42
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Summary"
+msgstr ""
+
+#: steps_list.pm:44 steps_list.pm:45
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Services"
+msgstr ""
+
+#: steps_list.pm:46
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Updates"
+msgstr ""
+
+#: steps_list.pm:48
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Exit"
+msgstr ""
diff --git a/perl-install/install/share/po/lt.po b/perl-install/install/share/po/lt.po
index 9c71ee180..dbdfb6e3a 100644
--- a/perl-install/install/share/po/lt.po
+++ b/perl-install/install/share/po/lt.po
@@ -1,52 +1,87 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Moo, 2015
+# Moo, 2015-2016
# Mykolas Norvai-as <Myka@centras.lt>, 2002
-#
+# Tomsonas, 2016
+# Tomsonas, 2016
msgid ""
msgstr ""
-"Project-Id-Version: DrakX VERSION\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2000-12-23 13:50+0200\n"
-"Last-Translator: Mykolas Norvai­as <Myka@centras.lt>\n"
-"Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Lithuanian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/lt/)\n"
+"Language: lt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%"
-"100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < "
+"11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? "
+"1 : n % 1 != 0 ? 2: 3);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr "Prisijunk!"
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr "Biuro įrankiai"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Home entertainment"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "For kids"
+msgstr "Vaikams"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "For developers!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/09_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Thank you!"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/10_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Be Free!"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Ar turi dar vieną?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -54,116 +89,155 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
+"Šios laikmenos buvo rastos ir bus naudojamos įdiegimo metu: %s.\n"
+"\n"
+"\n"
+"Ar turite papildomą įdiegimo laikmeną, kurią norite konfigūruoti?"
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Tinklo interfeisas"
+msgstr "Tinklas (HTTP)"
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "Tinklo interfeisas"
+msgstr "Tinklas (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
+msgstr "Tinklas (NFS)"
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
msgstr ""
-#: any.pm:165
+#: any.pm:225
#, c-format
-msgid "URL of the mirror?"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:171
+#: any.pm:229
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Hostname missing"
msgstr ""
-#: any.pm:182
-#, fuzzy, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
msgstr ""
-"Jungiamasi prie atvaizdžio (mirror), kad gautume prieinamų paketų sąrašą"
-#: any.pm:187
-#, fuzzy, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
msgstr ""
-"Jungiamasi prie atvaizdžio (mirror), kad gautume prieinamų paketų sąrašą"
-#: any.pm:197
+#: any.pm:235
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Pasirink atvaizdį (mirror), iš kurio imti paketus"
+msgid "Directory"
+msgstr "Katalogas"
-#: any.pm:227
+#: any.pm:265
#, c-format
-msgid "NFS setup"
+msgid "Supplementary"
msgstr ""
-#: any.pm:228
+#: any.pm:300
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-#: any.pm:232
+#: any.pm:325
#, c-format
-msgid "Hostname missing"
+msgid "Core Release"
+msgstr "Pagrindinė laida"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
msgstr ""
-#: any.pm:233
+#: any.pm:329
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "Nonfree Release"
+msgstr "Nelaisvoji laida"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
+"Tam kad veiktų laisvosios programinės įrangos tvarkyklės, kai kuri, jūsų "
+"kompiuteryje esanti, aparatinė įranga, reikalauja nelaisvosios programinės "
+"aparatinės įrangos."
-#: any.pm:237
+#: any.pm:368
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "You should enable \"%s\""
+msgstr "Jūs turėtumėte įjungti \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Aplankas"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Adapteris %s: %s"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
-#: any.pm:334
-#, fuzzy, c-format
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Čia, jeigu norite, galite įjungti daugiau laikmenų."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
msgid "Looking at packages already installed..."
-msgstr "Tu negali atžymėti šio paketo. Jis jau yra įdiegtas"
+msgstr "Apžvelgiami jau įdiegti paketai..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Ieškoma atnaujintinų paketų"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -172,87 +246,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
-msgstr "Klaida skaitant bylą %s"
+msgstr "Klaida, skaitant failą %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Ruošiamasi įdiegti šiuos paketus"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
-msgstr ""
+msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Tinklas"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Pasirinkite kitą vardą."
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Jau yra tokia byla. Užrašyti ant jos?"
+msgstr "Failas jau yra. Perrašyti jį?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Priėjimas draudžiamas"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr ""
-#: any.pm:1234
-#, fuzzy, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Aš daugiau negaliu pridėti nė vieno skirsnio"
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
-#: any.pm:1242
-#, fuzzy, c-format
+#: any.pm:1509
+#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "Tu gali pasirinkti kitas kalbas, kurios bus prieinamos po įdiegimo"
+msgstr ""
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Įdiegiama"
+msgstr "Įdiegimas"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Nustatymai"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr ""
@@ -278,25 +352,25 @@ msgstr "Paleidžiamas tinklas"
msgid "Bringing down the network"
msgstr "Išjungiamas tinklas"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Prašome palaukti, gaunamas failas"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "aptiktas prievade %s"
+msgstr "Kopijavimas eigoje"
#: pkgs.pm:32
#, c-format
@@ -323,278 +397,292 @@ msgstr "nuostabu"
msgid "maybe"
msgstr "galbūt"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nėra aprašymo"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Įvyko klaida"
+msgstr "Įvyko klaida:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Įvyko lemtinga klaida: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Kitą kartą nebeklausti"
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d įdiegimo operacijos nepavyko"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Įdiegiamas paketas %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:16
+#, c-format
msgid "Workstation"
-msgstr "KDE darbo stotis"
+msgstr ""
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Biuro darbo stotis"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Biuro programos: tekstų redaktoriai (OpenOffice.org Writer, Kword), "
-"skaičiuoklės (OpenOffice.org Calc, Kspread), pdf peržiūros programos ir pan."
+"Biuro programos: tekstų redaktoriai (LibreOffice Writer, Kword), "
+"skaičiuoklės (LibreOffice Calc, Kspread), pdf peržiūros programos ir pan."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Biuro programos: tekstų redaktoriai (kword, abiword), skaičiuoklės (kspread, "
-"gnumeric), pdf peržiūros programos ir pan."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Žaidimų stotis"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
"Programos pasilinksminimui: lentos, strateginiai, kortų žaidimai ir pan."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedija stotis"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Garso ir vaizdo grojimo/redagavimo programos"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Interneto stotis"
-#: share/meta-task/compssUsers.pl:34
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:37
+#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Rinkinys įrankių skaityti ir siųsti paštą bei naujienas (pine, mutt, tin) ir "
-"naršyti žiniatinklį (WWW)"
-#: share/meta-task/compssUsers.pl:39
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:42
+#, c-format
msgid "Network Computer (client)"
-msgstr "Tinklo Kompiuteris, X klientas"
+msgstr "Tinklo kompiuteris (klientas)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr ""
+msgstr "Įvairių protokolų klientai, įskaitant ssh"
-#: share/meta-task/compssUsers.pl:45
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:49
+#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Ar tu nori išbandyti nustatymus?"
+msgstr ""
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsolės įrankiai"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "Redaktoriai, shell'ai, bylų įrankiai, terminalai"
+msgstr "Redaktoriai, apvalkalai (shells), failų įrankiai, terminalai"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Programavimas"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "C bei C++ kūrimo bibliotekos, programos ir include bylos"
+msgstr "C bei C++ kūrimo bibliotekos, programos ir include failai"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentacija"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Knygos ir HOWTO apie Linux ir Free Software"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr ""
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:79
+#, c-format
msgid "Web Server"
-msgstr "serveris"
+msgstr ""
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Grupinis darbas"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab serveris"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Serveris, Firewall/Routeris"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
msgid "Internet gateway"
-msgstr "Priėjimas prie Interneto"
+msgstr ""
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/Byla/_Nauja"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Serveris, Duomenų bazių"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "Atstatyti iš diskelio"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP serveris"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Domeno vardas"
+msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Spausdinimo serveris"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "NIS serveris"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Serveris, Duomenų bazių"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Serveris, Tinklapių/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr ""
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Paštas"
-#: share/meta-task/compssUsers.pl:115
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:129
+#, c-format
msgid "Postfix mail server"
-msgstr "Serveris, Duomenų bazių"
+msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr ""
-#: share/meta-task/compssUsers.pl:126
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:142
+#, c-format
msgid "Network Computer server"
-msgstr "Serveris, Tinklo Kompiuterio serveris"
+msgstr ""
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr ""
+msgstr "Grafinė aplinka"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE darbo stotis"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -603,12 +691,12 @@ msgstr ""
"The K Desktop Environment, pagrindinė grafinė aplinka su dideliu rinkiniu "
"pritaikytų programų"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Gnome darbo stotis"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -617,69 +705,112 @@ msgstr ""
"Grafinė aplinka su vartotojui draugiškų programų ir darbalaukio įrankių "
"rinkiniu"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Darbastalis"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Grafinė aplinka su vartotojui draugiškų programų ir darbalaukio įrankių "
-"rinkiniu"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Kiti grafiniai darbalaukiai"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "IceWM, Window Maker, Enlightenment, Fvwm ir pan."
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Naudės"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
msgid "SSH Server"
-msgstr "NIS serveris"
+msgstr ""
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "įrenginys"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Interneto konfigūravimas"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Tinklo konfigūravimas"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Prisijungti prie interneto"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Nustatyti spausdintuvą"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -690,7 +821,7 @@ msgstr ""
"Įvyko klaida, bet aš nežinau, kaip su ja gražiai susitvarkyti.\n"
"Tęsk darbą savo paties rizika."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -710,334 +841,339 @@ msgstr "Įeinama į žingsnį „%s“\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux įdiegimas %s"
+msgid "%s Installation %s"
+msgstr "%s įdiegimas %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> tarp elementų"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Tavo sistemoje mažai resursų. Tu gali susidurti su bėdomis, įdiegdamas\n"
-"Mandriva Linux. Jei taip atsitiktų, gali pabandyti tekstinį diegimo būdą:\n"
+"%s. Jei taip atsitiktų, gali pabandyti tekstinį diegimo būdą:\n"
"Kai užsikrauna iš CDROM'o, paspausk `F1', o tada įvesk \"text\"."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
+msgstr "Laikmenos pasirinkimas"
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Išmesti"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Darbastalis"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Darbastalis"
+msgstr "GNOME darbalaukis"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Darbastalis"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Štai \"%s\" darbalaukio peržiūra."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Spustelėkite ant paveikslų, kad pamatytumėte didesnę peržiūrą"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Paketų grupių pasirinkimas"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Atskirų paketų pasirinkimas"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Bendras dydis: %d / %d MB"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Blogas paketas"
+msgid "Total size: %d / %d MB"
+msgstr "Bendras dydis: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versija: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Dydis: "
-#: steps_gtk.pm:405
-#, fuzzy, c-format
+#: steps_gtk.pm:426
+#, c-format
msgid "%d KB\n"
-msgstr "Dydis: %d KB\n"
+msgstr ""
-#: steps_gtk.pm:406
-#, fuzzy, c-format
+#: steps_gtk.pm:427
+#, c-format
msgid "Importance: "
-msgstr "Svarba: %s\n"
+msgstr ""
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Tu negali pažymėti/atžymėti šio paketo"
-#: steps_gtk.pm:444
-#, fuzzy, c-format
+#: steps_gtk.pm:466
+#, c-format
msgid "due to missing %s"
-msgstr "nieko"
+msgstr "dėl trūkstamo %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "dėl nepatenkinto %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "bandau paaukštinti %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s išlaikymui"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Tu negali pasirinkti šio paketo, kadangi nebėra pakankamai vietos jam įdiegti"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Ruošiamasi įdiegti šiuos paketus"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Ruošiamasi pašalinti šiuos paketus"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Tai yra privalomas paketas, jis negali būti atžymėtas"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Tu negali atžymėti šio paketo. Jis jau yra įdiegtas"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Tu negali atžymėti šio paketo. Jis privalo būti atnaujintas"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr ""
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Įdiegti"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Išsaugoti pažymėjimą"
+msgstr ""
-#: steps_gtk.pm:499
-#, fuzzy, c-format
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
msgid "Updating package selection"
-msgstr "Išsaugoti paketų pasirinkimą"
+msgstr ""
-#: steps_gtk.pm:504
-#, fuzzy, c-format
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
msgid "Minimal install"
-msgstr "Išmesti"
+msgstr ""
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Programinės įrangos tvarkyklė"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Pasirink paketus, kuriuos tu nori įdiegti"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Įdiegiama"
-#: steps_gtk.pm:564
-#, fuzzy, c-format
+#: steps_gtk.pm:590
+#, c-format
msgid "No details"
-msgstr "Detalės"
+msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Liko laiko "
+msgstr "Liko laiko:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Skaičiuojama"
+msgstr "(apskaičiuojama...)"
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d paketų"
-msgstr[1] "%d paketų"
-msgstr[2] "%d paketų"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Apibendrinimas"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Nustatyti"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
msgid "not configured"
-msgstr "iš naujo nustatyti"
-
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Paketų grupių pasirinkimas"
+msgstr ""
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Įvyko klaida"
-#: steps_interactive.pm:104
-#, fuzzy, c-format
+#: steps_interactive.pm:105
+#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Prašom pasirinkti klaviatūros išdėstymą"
+msgstr "Prašome pasirinkti savo klaviatūros išdėstymą"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Čia yra galimų klaviatūrų sąrašas"
+msgstr ""
-#: steps_interactive.pm:144
-#, fuzzy, c-format
+#: steps_interactive.pm:153
+#, c-format
msgid "Install/Upgrade"
-msgstr "Įdiegti/Atnaujinti"
+msgstr ""
-#: steps_interactive.pm:148
-#, fuzzy, c-format
+#: steps_interactive.pm:157
+#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Ar tai įdiegimas, ar atnaujinimas?"
+msgstr ""
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Įdiegti"
-#: steps_interactive.pm:152
-#, fuzzy, c-format
+#: steps_interactive.pm:161
+#, c-format
msgid "Upgrade %s"
-msgstr "Atnaujinimas"
+msgstr ""
-#: steps_interactive.pm:170
-#, fuzzy, c-format
+#: steps_interactive.pm:184
+#, c-format
msgid "Encryption key for %s"
-msgstr "Slaptažodžiai nesutampa"
+msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Įdiegiama"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1046,32 +1182,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Nustatome IDE"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1079,163 +1200,206 @@ msgid ""
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"Pakeisk CD!\n"
+"Pakeiskite CD!\n"
"\n"
-"Prašom įkišti CD su užrašu „%s“ į kaupiklį, tada paspausk Gerai.\n"
-"Jei tu jo neturi, spausk Nutraukti, kad išvengtum įdiegimo iš šio CD."
+"Prašome įkišti CD su užrašu „%s“ į kaupiklį, tada paspausti Gerai.\n"
+"Jei jūs jo neturite, spauskite Nutraukti, kad išvengtumėte įdiegimo iš šio "
+"CD."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Ieškomi galimi paketai"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Įkelti"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Išsaugoti"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Įkelti bylą"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Paketų grupių pasirinkimas"
+msgstr "Darbalaukio pasirinkimas"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
+msgstr "Galite pasirinkti savo kompiuterio darbalaukio profilį."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
-#: steps_interactive.pm:574
-#, fuzzy, c-format
+#: steps_interactive.pm:576
+#, c-format
msgid "Type of install"
-msgstr "Pasirink paketą įdiegimui"
+msgstr ""
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-#: steps_interactive.pm:580
-#, fuzzy, c-format
+#: steps_interactive.pm:582
+#, c-format
msgid "With X"
-msgstr "Palauk"
+msgstr ""
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Įdiegiamas paketas %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr ""
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr ""
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Ruošiamas įdiegimas"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Įdiegiamas paketas %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Įvyko klaida, bandant sutvarkyti paketus:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Vis tiek tęsti?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Išsaugoti paketų pasirinkimą"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Įvyko klaida, įdiegiant paketus:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Konfigūracija po įdiegimo"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Atnaujinimai"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Dabar jūs turite galimybę nusistatyti internetinę laikmeną."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Tai leidžia įdiegti saugumo atnaujinimus."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Kad nusistatytumėte laikmenas, jums reikės veikiančio interneto ryšio\n"
+"\n"
+"Ar norite nustatyti atnaujinimų laikmeną?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Ruošiamasi įdiegti šiuos paketus"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Bandyti dar kartą?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Klaida, pridedant laikmeną"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1248,121 +1412,97 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s iš %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
-msgstr "Geležis"
-
-#: steps_interactive.pm:897 steps_interactive.pm:914
-#, fuzzy, c-format
-msgid "Sound card"
-msgstr "Standartinė"
-
-#: steps_interactive.pm:917
-#, fuzzy, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Ar turi dar vieną?"
+msgstr "Aparatinė įranga"
-#: steps_interactive.pm:919
+#: steps_interactive.pm:958
#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
+msgid "Sound card"
msgstr ""
-#: steps_interactive.pm:921
+#: steps_interactive.pm:972
#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-
-#: steps_interactive.pm:929
-#, fuzzy, c-format
msgid "Graphical interface"
-msgstr "X paleidžiant"
+msgstr ""
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Tinklas & Internetas"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Tarpinės stotys (proxies)"
-#: steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_interactive.pm:992
+#, c-format
msgid "configured"
-msgstr "iš naujo nustatyti"
+msgstr ""
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Saugumo lygis"
-#: steps_interactive.pm:977
-#, fuzzy, c-format
+#: steps_interactive.pm:1022
+#, c-format
msgid "Firewall"
-msgstr "Serveris, Firewall/Routeris"
+msgstr "Užkarda"
-#: steps_interactive.pm:981
-#, fuzzy, c-format
+#: steps_interactive.pm:1026
+#, c-format
msgid "activated"
-msgstr "Aktyvus"
+msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "uždraustas"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Ruošiama įkrovos tvarkyklė"
+msgid "Preparing initial startup program..."
+msgstr "Ruošiama pradinės paleisties programa..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
+msgstr "Būkite kantrūs, tai gali šiek tiek užtrukti..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Įdėk tuščią diskelį į kaupiklį %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Kuriamas automatinio įdiegimo diskelis"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1373,15 +1513,15 @@ msgstr ""
"\n"
"Ar tu nori išeiti dabar?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Sveikinimai"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
-msgstr "Perkrauti"
+msgstr "Paleisti iš naujo"
#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
#: steps_list.pm:16
@@ -1394,7 +1534,7 @@ msgstr "Pasirink savo kalbą"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Localizacija"
#: steps_list.pm:17
#, c-format
@@ -1473,13 +1613,6 @@ msgid ""
"Users"
msgstr "Vartotojai"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Tinklai"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1522,104 +1655,10 @@ msgid ""
"Exit"
msgstr "Išeiti"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Išsaugoti į bylą"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Darbastalis"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Jungiamasi prie atvaizdžio (mirror), kad gautume prieinamų paketų sąrašą"
-
-#, fuzzy
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Uždrausti tinklą"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Sukurti automatinio įdiegimo diskelį"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Automatinis įdiegimas reikalui esant gali būti pilnai\n"
-#~ "automatizuotas. Tokiu atveju jis užims visą diską!!\n"
-#~ "(turint omenyje įdiegimą į kitą dėžę).\n"
-#~ "\n"
-#~ "Jūs galbūt norėsite pakartoti įdiegimą.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Parodyti vėl"
-
-#~ msgid "Automated"
-#~ msgstr "Automatinis"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Išsaugoti paketų pasirinkimą"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Ar nori naudoti aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Klaida įdiegiant aboot,\n"
-#~ "bandyti įdiegti priverstinai, net jei tai sunaikintų pirmąjį skirsnį?"
-
-#~ msgid "All"
-#~ msgstr "Visos"
-
-#~ msgid "TV card"
-#~ msgstr "TV plokštė"
-
-#~ msgid "Boot"
-#~ msgstr "Įkelties nustatymai"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Autentikacija"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d paketų"
-#~ msgstr[1] "%d paketų"
-#~ msgstr[2] "%d paketų"
-
-#~ msgid "%d packages"
-#~ msgstr "%d paketų"
-
-#~ msgid "Language"
-#~ msgstr "Pasirink savo kalbą"
-
-#~ msgid "License"
-#~ msgstr "Licencija"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Parink įdiegimo klasę"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Skaičiuojama"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Pasirinkti paketus"
-
-#~ msgid "Users"
-#~ msgstr "Vartotojai"
-
-#~ msgid "Networking"
-#~ msgstr "Tinklai"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Tinklavietės URL?"
-#~ msgid "Configure X"
-#~ msgstr "Nustatyti X"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Pasirinkite tinklavietę, iš kurios gauti paketus"
diff --git a/perl-install/install/share/po/ltg.po b/perl-install/install/share/po/ltg.po
index 69a019c29..57b6878fc 100644
--- a/perl-install/install/share/po/ltg.po
+++ b/perl-install/install/share/po/ltg.po
@@ -1,51 +1,81 @@
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) 2000 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2006-09-24 17:51+0200\n"
-"Last-Translator: Māris Laureckis <marlau@inbox.lv>\n"
-"Language-Team: Latgalian <linux@latgola.lv>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Latgalian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/ltg/)\n"
+"Language: ltg\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
+"2);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Voi jiusim ir papyldus datu nesiejs?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -53,100 +83,63 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Tyka atrosts sekojūšs datu nesiejs, kurs tiks lītuots instalacejis laikā: %"
-"s.\n"
+"Tyka atrosts sekojūšs datu nesiejs, kurs tiks lītuots instalacejis laikā: "
+"%s.\n"
"\n"
"\n"
"Voi jiusim ir papyldus datu nesieji deļ uzstuodeišonys?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Teiklys (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Teiklys (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Teiklys (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Voi spūguļservera URL?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL juosasuoc ar ftp:// voi http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Pīsaslādzu Mandriva Linux teimekļam, lai sajimtu pīejamū spūguļserveru "
-"sarokstu..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Dasasliegšona Mandriva Linux teimekļam cīta naveiksmi, lai sajimtu pīejamū "
-"spūguļserveru sarokstu"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Izavielejit spūguļserveri, nu kura jimt pakūtnis"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS uzstuodeišona"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Lyudzu, īvodit hosta vuordu i jiusu NFS datu nesieja katalogu"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr ""
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr ""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Kaids ir NFS monteišonys hosta vuords?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Katalogs"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr ""
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -155,23 +148,90 @@ msgstr ""
"Iz ituo spūguļservera navar atrast pakūtņu saroksta failu. Puorbaudit, voi "
"atsarūn pareizā vītā."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Mekleju jau īprīkš uzinstaleituos pakūtnis..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Mekleju uzlobuojamuos pakūtnis"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Teik nūdzāstys pakūtnis pyrms atjaunynuošonys..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -184,87 +244,87 @@ msgstr ""
"\n"
"Voi teišom gribit nūjimt ituos pakūtnis?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Kliuda, nūlosūt failu %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Sekojūši diski tika puorsaukti:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (īprīkš tika saukta kai %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Teiklys"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Lyudzu, izavielejit datu nesieju"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Fails jau eksistej. Voi puorrakstēt pa viersu?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Pīeja līgta"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Naveiksmeigs NFS vuords"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Napareizs datu nesiejs %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Navar izveiduot ekrana attālus pyrms sadaļu izveidis"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Ekrana attāli byus pīejami piec instaleišonys %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalaceja"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfiguraceja"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Jiusim ir juoformatej ari %s"
@@ -288,22 +348,22 @@ msgstr "Īdorbynoju teiklu"
msgid "Bringing down the network"
msgstr "Atslādzu teiklu"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Teik kopātys dažys pakūtnis lītuošonai nuokūtnē"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Nūteik kopeišona"
@@ -333,82 +393,98 @@ msgstr "vālams"
msgid "maybe"
msgstr "varbyut"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nav aproksta"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Atkluota kliuda"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Nūtikuse fatala kliuda: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "Instalaceja naizadeve"
+msgstr "%d instalacejis transakcejis naizadeve"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Instaleju pakūtni %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Dorba staceja"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Biroja dators"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Biroja programmys: teksta procesori (OpenOffice.org Writer, Kword), "
-"izkluojlopys (OpenOffice.org Calc, Kspread), PDF skateituoji, u.c."
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Biroja programmys: teksta procesori (kword, abiword), izkluojlopys (kspread, "
-"gnumeric), pdf skateituoji, u.c."
+"Biroja programmys: teksta procesori (LibreOffice Writer, Kword), "
+"izkluojlopys (LibreOffice Calc, Kspread), PDF skateituoji, u.c."
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Spēļu dators"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Izklaidis programmys: arkade, goldaspēlis, strategeja u.c."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedeju dators"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Skanis i video atskaņuošonys/redigeišonys programmys"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Interneta dators"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -417,193 +493,193 @@ msgstr ""
"Reiku komplekts, lai laseitu i syuteitu postu voi jaunumus (mutt, tin..), i "
"puorlyukuotu Puorstaipteiklu"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Teikla dators (klients)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klienti dažaidim protokolim, īskaitūt ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Reiki datora konfigureišonys atvīgluošonai"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsolis reiki"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Redaktori, čaulys, failu reiki, terminali"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Izstruode"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C i C++ izstruodis bibliotekys, programmys i īkļautī faili"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentaceja"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Gruomotys i vaicuojumu par Linux i Breivū programmaturu"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linuks Standarta Bāze. Trešū izstruoduoju aplikaceju atbolsts"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Puorstaipteikla (Web) servers"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab servers"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Gunsmyurs/Maršrutizators"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Interneta vuorteja"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Posts/Jauns"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix posta servers, Inn ziņu servers"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Katalogu Servers"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP servers"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "DNS i NIS servers"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Failu un Printeru Kūplītuošonys servers"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS servers, Samba servers"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Datubāzis"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL i MySQL datubāžu servers"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL i MariaDB datubāžu servers"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Teimeklis/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Posts"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix posta servers"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL voi MySQL datubāžu servers"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL voi MariaDB datubāžu servers"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Teikla datoru servers"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS servers, SMB servers, storpnīkservers (Proxy), ssh servers"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafiskuo vide"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE dorba staceja"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -612,12 +688,12 @@ msgstr ""
"K Desktop Environment, golvonuo grafiskuo vide kūpā ar papyldus reiku "
"kolekceju"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Gnome dorba staceja"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -626,66 +702,109 @@ msgstr ""
"Grafiskuo vide ar lītuotuojam draudzeigu programmu komplektu i dorba "
"viersmys reikim"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "IceWm Dorba viersma"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Grafiskuo vide ar lītuotuojam draudzeigu programmu komplektu i dorba "
-"viersmys reikim"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Cytys grafiskuos dorba viersmys"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm u.c."
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilitys"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH servers"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin attuolynuotuos konfiguracejis servers "
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Teikla utilitys/puorraudzeiba"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Puorraudzeibys reiki, procesu uzskaite, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva paleigi"
+msgid "Mageia Wizards"
+msgstr "Mageia paleigi"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Servera konfiguracejis paleigi"
@@ -699,7 +818,7 @@ msgstr ""
"Nūtyka klaida, bet es nazynu, kai tū korekti apstruoduot.\n"
"Turpynuot iz jiusu poša riska."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -719,254 +838,259 @@ msgstr "Teik uzsuokts sūļs `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux instaleišona %s"
+msgid "%s Installation %s"
+msgstr "%s instaleišona %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> puorīt"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Jiusu sistemai tryukst resursu. Mandriva Linux instaleišonys laikā var\n"
+"Jiusu sistemai tryukst resursu. %s instaleišonys laikā var\n"
"rastīs problemys. Ja tai nūteik, varit pamieginuot teksta režima "
"instaleišonu. Lai tū izdareitu,\n"
"nūspīdit`F1', kod nūteik īluode nu CDROM, tod īvodit `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Minimala instaleišona"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "IceWm Dorba viersma"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm Dorba viersma"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "IceWm Dorba viersma"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Pakūtņu grupu izviele"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Atsevišku pakūtņu izviele"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Kūpejais izmārs: %d / %d MB"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Slykta pakūtne"
+msgid "Total size: %d / %d MB"
+msgstr "Kūpejais izmārs: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Verseja: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Izmārs: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Svareigums: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Jius varit izavielēt/atsateikt nu ituos pakūtnis"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "tryukuma dieļ %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "deļ naapmīrynuojuma %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "teik mieginuots aktivizēt %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "lai saglobuot %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Jius navarit izavielēt itū pakūtni, par tū ka napīteik vītys tuos "
"instaleišonai"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Tiks instaleitys sekojūšys pakūtnis"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Tiks nūjimtys sekojūšys pakūtnis"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Itei ir obligata pakūtne, nu tuos navar atsateikt"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Jius navarit atsateikt nu ituos pakūtnis. Tei jau ir instaleita"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Jius navarit atsateikt nu ituos pakūtnis. Tū ir napīcīšoms uzlobuot"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Paruodeit automatiski izvālātuos pakūtnis"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalēt"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Īluodēt/Saglobuot izviele"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Teik atjaunynuota pakūtņu izviele"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimala instaleišona"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Programmaturys puorvaļdeišona"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Izavielejit pakūtnis, kū gribit instalēt"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Teik instaleits"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Nav detaļu"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Atlykušais laiks"
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Aptuvenais nūviertiejums"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d pakūtnis"
-msgstr[1] "%d pakūtnis"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Kūpsavylkums"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfigurēt"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "nav konfigurāts"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Pakūtņu grupu izviele"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -975,12 +1099,12 @@ msgstr ""
"Atrosti sekojūši instalacejis datu nesieji.\n"
"Ja jius gribit izlaist dažus nu tim, jius tagad varit nūjimt atzeimi nu tim."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Jiusim ir opceja, pyrms instalacejis nūkopēt kompaktdiska saturu uz cītu "
@@ -988,72 +1112,72 @@ msgstr ""
"Taidā veidā turpynuosīs nu cītuo diska un pakūtnis byus pīejamys cikom "
"sistema tiks piļneibā uzinstaleita."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopēt vysu kompaktdisku"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Atkluota kliuda"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Lyudzu izavielejit jiusu klaviaturys izkuortuojumu"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Ite ir pylns pīejamū klaviaturu saroksts"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalēt/Atjaunynuot"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Itei ir instaleišona voi atjaunynuošona?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Instalēt"
+msgstr ""
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Atjaunynuot %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Šifreišonys atslāga deļ %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Instalaceja"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1062,38 +1186,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Teik konfigurāts IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Nav 1MB breivys vītys suokneišonys programmai! Instaleišona turpynuosīs, bet "
-"lai īluodātu sistemu, jiusim vajadzēs izveiduot suokneišonys programmys "
-"diska sadali programmā DiskDrake"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Jiusim vajadzēs izveiduot PPC PReP Boot suokneišonys programmu! Instaleišona "
-"turpynuosīs, bet lai īluodātu sistemu, jiusim vajadzēs izveiduot "
-"suokneišonys programmys diska sadali programmā DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1107,19 +1210,19 @@ msgstr ""
"Ja jiusim nav ituo diska, nūspīdit Atceļt, lai nainstaleitu nu ituo "
"kompaktdiska."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Mekleju pīejamuos pakūtnis"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1128,52 +1231,52 @@ msgstr ""
"Lyudzu izavielejit īluodēt voi saglobuot pakūtņu izvieli.\n"
"Formats ir taids pats, kai ar auto_install generātom failim."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Īluodēt"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Saglobuot"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Napareizs fails"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
-msgstr ""
+msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Pakūtņu grupu izviele"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Izvālātais apjūms ir leluoks nakai pīejamuo vīta"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Instalacejis tips"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1182,87 +1285,126 @@ msgstr ""
"Jius naizavielēt nivīnu pakūtņu grupu.\n"
"Lyudzu, izavielejit minimalū instalaceju, kaidu jius gribit:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Ar X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instaleju pakūtni %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Ar pamatdokumentaceju (īteicams!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Patīši minimala instalaceja (īpaši bez urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Sagataveju instaleišonu"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instaleju pakūtni %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Pakūtņu kuortuošonys laikā atkluota kliuda:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Tūmār turpynuot?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Saglobuot pakūtņu izvieli"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Pakūtņu instaleišonys laikā atkluota kliuda:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Piecinstaleišonys konfigureišona"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Lyudzu, puorsalīcynojit ka Update Modules atsarū īkuortā %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Atjaunynuojumi"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Tiks instaleitys sekojūšys pakūtnis"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1284,112 +1426,82 @@ msgstr ""
"\n"
"Voi jius gribit instalēt atjaunynuojumus?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s iz %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Aparatura"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Skanis karte"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Vai jiusim ir ISA skanis karte?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Piec instaleišonys palaidit \"alsaconf\" voi \"sndconfig\", lai konfigurātu "
-"jiusu skanis karti"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Nav atrosta skanis karte. Piec instaleišonys izmieginit \"harddrake\""
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafiskuo saskarne"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Teiklys & Internets"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Storpnīkserveri"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "konfigurāts"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Drūšeibys leimiņs"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Guņsmyurs"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktivizāts"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "atslāgts"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
"Jiusim nav nūkonfigurāts X servers. Voi jius asot puorlīcynuoti, ka jius tū "
"gribit?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "Sagataveju suokneituoju"
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"Izaver, ka jiusim ir vaca voi nazynomys izceļsmis dators, yaboot "
-"suokneituojs nastruoduos. Instaleišona turpynuosīs, bet jiusim byus "
-"juoizmontoj BootX voi kas cyts, lai īluodātu datoru. Kūdula arguments deļ "
-"root fs ir: root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1398,17 +1510,17 @@ msgstr ""
"Šymā drūšeibys leiminī, pīeeja Windows sadalis failim ir tikai "
"administratoram."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Īlicit tukšu disketi īkuortā %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Sagataveju auto instaleišonys disketi"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1419,12 +1531,12 @@ msgstr ""
"\n"
"Voi tīšom gribit izīt tagad?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Apsveicam"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Puorsuoknēt"
@@ -1440,7 +1552,7 @@ msgstr "Volūdys izviele"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Lokaliziešona"
#: steps_list.pm:17
#, c-format
@@ -1519,13 +1631,6 @@ msgid ""
"Users"
msgstr "Lītuotuoji"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Teikluošona"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1568,187 +1673,25 @@ msgid ""
"Exit"
msgstr "Izīt"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Teik šursyuteiti fail %s..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Jius izavielēt sekojūšu(s) serveri(us): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Itī serveri teik aktivizāti piec nūklusiejuma. Tim nav nikaidu zinomu "
-#~ "drūšeibys\n"
-#~ "tryukumu, bet jauni var tikt atrosti. Taidā gadīnī jiusim nūteikti tī "
-#~ "juoatjaunynoj\n"
-#~ "piec īspiejis uotruok.\n"
-#~ "\n"
-#~ "\n"
-#~ "Voi tīšom gribit instalēt šūs serverus?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm Dorba viersma"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Pīsaslādzu spūguļserveram, lai sajimtu pīejamū pakūtņu sarokstu"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Navar dasavīnuot pi spūguļservera %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Sagatavēt auto instaleišonys disketi"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Ja gribit, automatiskuo instalaceja var byut piļneigi\n"
-#~ "automatizāta, taidā gadīnī tei nūkopēs vysu cītū disku!!\n"
-#~ "(tys ir dūmuots uzstuodēt uz cyta datora).\n"
-#~ "\n"
-#~ "Jius varbyut gribēsit atkuortuot instalaceju.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Atkuortuot"
-
-#~ msgid "Automated"
-#~ msgstr "Automatisks"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Saglobuot pakūtņu izvieli"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Voi spūguļservera URL?"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Voi gribit izmontuot aboot?"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL juosasuoc ar ftp:// voi http://"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Kliuda, instalejūt aboot, \n"
-#~ "voi instalēt pīspīdu kuortā pat tod, ja tiks iznycynuota pyrmuo sadaļa?"
-
-#~ msgid "All"
-#~ msgstr "Vyss"
-
-#~ msgid "TV card"
-#~ msgstr "TV karte"
-
-#~ msgid "Boot"
-#~ msgstr "Suoknēt"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Autentifikaceja"
-
-#~ msgid "Arkeia"
-#~ msgstr "Arkeia"
-
-#~ msgid "Flatout"
-#~ msgstr "Flatout"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "3D"
-
-#~ msgid "CMS"
-#~ msgstr "CMS"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "2007 product line"
-#~ msgstr "2007 produktu lineja"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "Invictus guņsmyurs"
-
-#~ msgid "Discovery Live Mode"
-#~ msgstr "Discovery Dzeivaja reižimā"
-
-#~ msgid "How to register"
-#~ msgstr "Kai pīsaregistrēt"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "Rpmdrake 2"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "Mandriva Tīšsaistis pakolpuojumi"
+#~ "Pīsaslādzu %s teimekļam, lai sajimtu pīejamū spūguļserveru sarokstu..."
-#~ msgid "New Theme"
-#~ msgstr "Jauna tema"
-
-#~ msgid "Web 2.0"
-#~ msgstr "Web 2.0"
-
-#~ msgid "Kaspersky"
-#~ msgstr "Kaspersky"
-
-#~ msgid "LinDVD"
-#~ msgstr "LinDVD"
-
-#~ msgid "Skype"
-#~ msgstr "Skype"
-
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Transgaming/Cedega"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d pakūtnis"
-#~ msgstr[1] "%d pakūtnis"
-
-#~ msgid "%d packages"
-#~ msgstr "%d pakūtnis"
-
-#~ msgid "Language"
-#~ msgstr "Volūdys izviele"
-
-#~ msgid "License"
-#~ msgstr "License"
-
-#~ msgid "Installation class"
-#~ msgstr "Instaleišonys klase"
-
-#~ msgid "Formatting"
-#~ msgstr "Formateišona"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Pakūtņu izviele"
-
-#~ msgid "Users"
-#~ msgstr "Lītuotuoji"
-
-#~ msgid "Networking"
-#~ msgstr "Teikluošona"
-
-#~ msgid "Configure X"
-#~ msgstr "X konfigureišona"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Navar pīkliut kūdula moduļam, atbylstūšim jiusu kūdulam (fails %s nav "
-#~ "atrūnams), parosti tys nūzeimej, ka īluodis diskete nav sinhronizeita ar "
-#~ "instalacejis datu nesieju (lyudzu izveidojit jaunuoku īluodis disketi)"
+#~ "Dasasliegšona %s teimekļam cīta naveiksmi, lai sajimtu pīejamū "
+#~ "spūguļserveru sarokstu"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Izavielejit spūguļserveri, nu kura jimt pakūtnis"
diff --git a/perl-install/install/share/po/lv.po b/perl-install/install/share/po/lv.po
index 60d7638ea..729eb2ee6 100644
--- a/perl-install/install/share/po/lv.po
+++ b/perl-install/install/share/po/lv.po
@@ -1,53 +1,81 @@
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) 2000 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2002-09-27 17:45+0200\n"
-"Last-Translator: Raivo Saars <spaiks@inbox.lv>\n"
-"Language-Team: Latvian <ll10nt@listes.murds.lv>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Latvian (http://www.transifex.com/MageiaLinux/mageia/language/"
+"lv/)\n"
+"Language: lv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
"2);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Vai ir vēl kāds?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -56,117 +84,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Tīkls"
+msgstr ""
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "Tīkls"
+msgstr ""
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
+msgid "NFS setup"
msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
msgstr ""
-"Pieslēdzos Mandriva Linux tīmeklim, lai saņemtu pieejamo spoguļserveru "
-"sarakstu sarakstu..."
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Katalogs"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"Pieslēdzos Mandriva Linux tīmeklim, lai saņemtu pieejamo spoguļserveru "
-"sarakstu sarakstu..."
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Izvēlieties spoguļserveri, no kura ņemt pakotnes"
+msgid "Core Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Katalogs"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Nevar atrast %s uz %s"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
-#: any.pm:334
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Meklēju jau iepriekš uzinstalētās pakotnes..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Meklēju uzlabojamās pakotnes"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -179,87 +237,87 @@ msgstr ""
"\n"
"Vai tiešām vēlaties noņemt šīs pakotnes?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Kļūda, nolasot failu %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Tiks instalētas sekojošas pakotnes"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Tīkls"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Lūdzu izvēlieties"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Fails jau eksistē. Pārrakstīt?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Pieeja liegta"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "pievienoju datu nesēju %s."
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Nevar izveidot ekrāna attēlus pirms sadaļu izveides"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Ekrāna attēli būs pieejami pēc instalēšanas %s."
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Instalēju"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfigurācija"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Jums ir jāformatē arī %s"
@@ -283,25 +341,25 @@ msgstr "Iedarbinu tīklu"
msgid "Bringing down the network"
msgstr "Atslēdzu tīklu"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Notiek noteikšana"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -328,277 +386,291 @@ msgstr "derīga"
msgid "maybe"
msgstr "varbūt"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Atklāta kļūda"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "Instalēšana neizdevās"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Instalēju pakotni %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Darbastacija"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Biroja dators"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Biroja programmas: teksta procesori (OpenOffice.org Writer, Kword), "
-"izklājlapas (OpenOffice.org Calc, Kspread), pdf skatītāji, u.c."
+"Biroja programmas: teksta procesori (LibreOffice Writer, Kword), izklājlapas "
+"(LibreOffice Calc, Kspread), pdf skatītāji, u.c."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Biroja programmas: teksta procesori (kword, abiword), izklājlapas (kspread, "
-"gnumeric), pdf skatītāji, u.c."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Spēļu dators"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Izklaides programmas: arkāde, galdiņspēles, stratēģija u.c."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimēdiju dators"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Skaņas un video atskaņošanas/rediģēšanas programmas"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Interneta dators"
-#: share/meta-task/compssUsers.pl:34
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:37
+#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Rīku komplekts, lai lasītu un sūtītu pastu vai jaunumus (pine, mutt, tin..) "
-"un pārlūkotu Tīmekli"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Tīkla dators (klients)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klienti dažādiem protokoliem, ieskaitot ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Rīki datora konfigurēšanas atvieglošanai"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsoles rīki"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Redaktori, čaulas, failu rīki, termināļi"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Izstrāde"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C un C++ izstrādes bibliotēkas, programmas un include faili"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentācija"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Grāmatas un Howto faili par Linux un Brīvo programmatūru"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Web serveris"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "grupa"
+msgstr ""
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab serveris"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Ugunsmūris/Maršrutizators"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Interneta vārteja"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/Fails/_Jauns"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix pasta serveris"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "Atjanot no CD"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP serveris"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Domēna nosaukumu serveris"
+msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Printera serveris"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Samba serveris"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Datubāzes"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL vai MySQL datubāzu serveris"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Tīmeklis/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Pasts"
-#: share/meta-task/compssUsers.pl:115
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:129
+#, c-format
msgid "Postfix mail server"
-msgstr "Postfix pasta serveris"
+msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL vai MySQL datubāzu serveris"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL vai MariaDB datubāzu serveris"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Tīkla datoru serveris"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS serveris, SMB serveris, Proxy serveris, ssh serveris"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafiskā vide"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE darbastacija"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -606,12 +678,12 @@ msgid ""
msgstr ""
"K Desktop Environment, galvenā grafiskā vide kopā ar papildus rīku kolekciju"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Gnome darbastacija"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -620,69 +692,112 @@ msgstr ""
"Grafiskā vide ar lietotājiem draudzīgu programmu komplektu un darbavirsmas "
"rīkiem"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Darbavirsma"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Grafiskā vide ar lietotājiem draudzīgu programmu komplektu un darbavirsmas "
-"rīkiem"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Citas grafiskās darbavirsmas"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm u.c."
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilites"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH serveris"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Webmin serviss"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Mandriva termināļu servera konfigurācija"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Tīkla konfigurācija"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Linux kontroles centrs"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Konfigurēju printeri \"%s\"..."
+msgstr ""
#: steps.pm:85
#, c-format
@@ -693,7 +808,7 @@ msgstr ""
"Atklāta kļūda, bet es nezinu, kā ar to pareizi apieties.\n"
"Turpiniet, ja vēlaties riskēt."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -713,335 +828,339 @@ msgstr "Uzsāku soli `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux instalēšana %s"
+msgid "%s Installation %s"
+msgstr "%s instalēšana %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> pāriet"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Jūsu sistēmai trūkst resursu. Mandriva Linux instalēšanas laikā var\n"
+"Jūsu sistēmai trūkst resursu. %s instalēšanas laikā var\n"
"rasties problēmas. Ja tā notiek, varat pamēģināt teksta instalēšanu.\n"
"Lai to izdarītu, nospiediet`F1', ka notiek ielāde no CDROM, tad ievadiet\n"
"`text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Minimāla instalēšana"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Darbavirsma"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Darbavirsma"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Darbavirsma"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Pakotņu grupu izvēle"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Atsevišķu pakotņu izvēle"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Kopējais izmērs: %d / %d MB"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Slikta pakotne"
+msgid "Total size: %d / %d MB"
+msgstr "Kopējais izmērs: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versija: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Apjoms: "
-#: steps_gtk.pm:405
-#, fuzzy, c-format
+#: steps_gtk.pm:426
+#, c-format
msgid "%d KB\n"
-msgstr "Apjoms: %d KB\n"
+msgstr ""
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Svarīgums: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Jūs varat izvēlēties/atteikties no šīs pakotnes"
-#: steps_gtk.pm:444
-#, fuzzy, c-format
+#: steps_gtk.pm:466
+#, c-format
msgid "due to missing %s"
-msgstr "trūkstošs kdesu"
+msgstr ""
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr ""
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr ""
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr ""
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Jūs nevarat izvēlēties šo pakotni, jo nepietiek vietas tās instalēšanai"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Tiks instalētas sekojošas pakotnes"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Tiks noņemtas sekojošas pakotnes"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Šī ir obligāta pakotne, no tās nevar atteikties"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Jūs nevarat atteikties no šīs pakotnes. Tā jau ir instalēta"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Jūs nevarat atteikties no šīs pakotnes. To ir nepieciešams uzlabot"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Parādīt automātiski izvēlētās pakotnes"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalēt"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Saglabāt iezīmēto"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Atjaunoju pakotņu izvēli"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimāla instalēšana"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Software Management"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Izvēlieties pakotnes, ko vēlaties instalēt"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instalēju"
-#: steps_gtk.pm:564
-#, fuzzy, c-format
+#: steps_gtk.pm:590
+#, c-format
msgid "No details"
-msgstr "Detaļas"
+msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Atlikušais laiks"
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Aprēķinu"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d pakotnes"
-msgstr[1] "%d pakotnes"
-msgstr[2] "%d pakotnes"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Kopsavilkums"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfigurēt"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
msgid "not configured"
-msgstr "pārkonfigurēt"
-
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Pakotņu grupu izvēle"
+msgstr ""
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Atklāta kļūda"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Lūdzu izvēlieties jūsu tastatūras izkārtojumu"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Šeit ir pilns pieejamo tastatūru saraksts"
+msgstr ""
-#: steps_interactive.pm:144
-#, fuzzy, c-format
+#: steps_interactive.pm:153
+#, c-format
msgid "Install/Upgrade"
-msgstr "Instalēt/Atjaunināt"
+msgstr ""
-#: steps_interactive.pm:148
-#, fuzzy, c-format
+#: steps_interactive.pm:157
+#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Šī ir instalēšana vai atjaunināšana?"
+msgstr ""
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instalēt"
-#: steps_interactive.pm:152
-#, fuzzy, c-format
+#: steps_interactive.pm:161
+#, c-format
msgid "Upgrade %s"
-msgstr "Atjaunināt"
+msgstr ""
-#: steps_interactive.pm:170
-#, fuzzy, c-format
+#: steps_interactive.pm:184
+#, c-format
msgid "Encryption key for %s"
-msgstr "Šifrēšanas atslēga"
+msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Instalēju"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1050,38 +1169,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Konfigurēju IDE"
-
-#: steps_interactive.pm:288
-#, fuzzy, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Nav 1MB brīvas vietas sāknēšanas programmai! Instalēšana turpināsies, bet "
-"lai ielādētu sistēmu, Jums būs nepieciešams izveidot sāknēšanas programmas "
-"disaka sadaļu programmā DiskDrake"
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
msgstr ""
-"Nav 1MB brīvas vietas sāknēšanas programmai! Instalēšana turpināsies, bet "
-"lai ielādētu sistēmu, Jums būs nepieciešams izveidot sāknēšanas programmas "
-"disaka sadaļu programmā DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1094,73 +1192,71 @@ msgstr ""
"Lūdzu ielieciet iekārtā Cd-Rom \"%s\", kad tas ir izdarīts, nospiediet Labi\n"
"Ja jums nav šī diska, nospiediet Atcelt, lai neinstalētu no šī Cd-Rom."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Meklēju pieejamās pakotnes"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Lūdzu izvēlieties ielādēt vai saglabāt pakotnes no/uz disketes.\n"
-"Formāts ir tāds pats, kā ar auto_install ģenerētām disketēm."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Ielādēt"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Saglabāt"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Ielādēt failu"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Pakotņu grupu izvēle"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Izvēlētais apjoms ir lielāks nekā pieejamā vieta"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Instalācijas tips"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1169,88 +1265,127 @@ msgstr ""
"Jūs neizvēlējāties nevienu pakotņu grupu.\n"
"Lūdzu, izvēlieties minimālo instalāciju, kādu vēlaties:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Ar X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instalēju pakotni %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Ar pamatdokumentāciju (ieteicams!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Patiesi minimāla instalācija (īpaši bez urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Sagatavoju instalēšanu"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instalēju pakotni %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Pakotņu kārtošanas laikā atklāta kļūda:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Tomēr turpināt?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Saglabāt pakotņu izvēli"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Pakotņu instalēšanas laikā atklāta kļūda:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Pēcinstalēšanas konfigurēšana"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
-#, fuzzy, c-format
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
msgid "Updates"
msgstr "Atjaunināt"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Tiks instalētas sekojošas pakotnes"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
+#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
"have been updated after the distribution was released. They may\n"
@@ -1261,134 +1396,98 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Jums ir iespēja lejuplādēt atjauninātas pakotnes. Šīs pakotnes tika "
-"izlaistas\n"
-"pēc distribūcijas izlaišanas. Tās var saturēt drošības vai kļūdu labojumus.\n"
-"\n"
-"Lai lejuplādētu šīs pakotnes, Jums jabūt darbojošamies Interneta "
-"savienojumam.\n"
-"\n"
-"Vai Jūs vēlaties instalēt jauninājumus?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s uz %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Dzelži"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Skaņas karte"
-#: steps_interactive.pm:917
+#: steps_interactive.pm:972
#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Vai Jums ir ISA skaņas karte?"
-
-#: steps_interactive.pm:919
-#, fuzzy, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr "Pēc instalēšanas palaidiet \"sndconfig\", lai konfigurētu skaņu karti"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Nav atrasta skaņu karte. Pēc instalēšanas izmēģiniet \"harddrake\""
-
-#: steps_interactive.pm:929
-#, fuzzy, c-format
msgid "Graphical interface"
-msgstr "X pēc startēšanas"
+msgstr ""
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Tīkls & Internets"
-#: steps_interactive.pm:947
-#, fuzzy, c-format
+#: steps_interactive.pm:991
+#, c-format
msgid "Proxies"
-msgstr "Profils: "
+msgstr ""
-#: steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_interactive.pm:992
+#, c-format
msgid "configured"
-msgstr "pārkonfigurēt"
+msgstr ""
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Drošības Līmenis"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Ugunssiena"
-#: steps_interactive.pm:981
-#, fuzzy, c-format
+#: steps_interactive.pm:1026
+#, c-format
msgid "activated"
-msgstr "aktivizēt"
+msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "aizliegts"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Sagatavoju sāknētāju"
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Izskatās, ka Jums ir nezināmas izcelsmes dators,\n"
-"yaboot ielādētājs nedarbosies.\n"
-"Instalēšana turpināsies, bet Jums būs jāizmanto\n"
-"BootX, lai ielādētu datoru"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Ielieciet tukšu disketi iekārtā %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Sagatavoju auto instalēšanas disketi"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1399,12 +1498,12 @@ msgstr ""
"\n"
"Vai tiešām vēlaties iziet tūlīt?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Apsveicam"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Pārstartēt"
@@ -1499,13 +1598,6 @@ msgid ""
"Users"
msgstr "Lietotāji"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Tīkli"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1548,125 +1640,12 @@ msgid ""
"Exit"
msgstr "Iziet"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Nosūtu failus..."
-
-#, fuzzy
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Jūs izvēlējāties sekojošu(s) serveri(us): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Šie serveri tiek aktivizēti pēc noklusēšanas. Tiem nav nekādu zināmu "
-#~ "drošības\n"
-#~ "trūkumu, bet var tikt atrasti kādi jauni. Tādā gadījumā Jums noteikti tie "
-#~ "jāuzlabo\n"
-#~ "pēc iespējas ātrāk.\n"
-#~ "\n"
-#~ "\n"
-#~ "Vai tiešām vēlaties instalēt šos serverus?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Darbavirsma"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Pieslēdzos spoguļserverim, lai saņemtu pieejamo pakotņu sarakstu"
-
-#, fuzzy
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Nevar atdalīt: %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Sagatavot auto instalēšanas disketi"
-
-#~ msgid "Replay"
-#~ msgstr "Atkārtot"
-
-#~ msgid "Automated"
-#~ msgstr "Automātisks"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Saglabāt pakotņu izvēli"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Vai vēlaties izmantot aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Kļūda, instalējot aboot, \n"
-#~ "vai instalēt piespiedu kārtā pat tad, ja tiks iznīcināta pirmā sadaļa?"
-
-#~ msgid "All"
-#~ msgstr "Viss"
-
-#~ msgid "TV card"
-#~ msgstr "TV karte"
-
-#~ msgid "Boot"
-#~ msgstr "Sāknēt"
+#~ "Pieslēdzos %s tīmeklim, lai saņemtu pieejamo spoguļserveru sarakstu "
+#~ "sarakstu..."
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Autentifikācija"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d pakotnes"
-#~ msgstr[1] "%d pakotnes"
-#~ msgstr[2] "%d pakotnes"
-
-#~ msgid "%d packages"
-#~ msgstr "%d pakotnes"
-
-#~ msgid "Language"
-#~ msgstr "Valodas izvēle"
-
-#~ msgid "License"
-#~ msgstr "Licence"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Instalēšanas klases izvēle"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Aprēķinu"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Instalējamo pakotņu izvēle"
-
-#~ msgid "Users"
-#~ msgstr "Lietotāji"
-
-#~ msgid "Networking"
-#~ msgstr "Tīkli"
-
-#~ msgid "Configure X"
-#~ msgstr "X konfigurēšana"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Nevar piekļūt kodola moduļiem, atbilstošiem Jūsu kodolam (fails %s nav "
-#~ "atrodams), parasti tas nozīmē, ka ielādes diskete nav sinhronizēta ar "
-#~ "instalācijas datu nesēju (lūdzu izveidojiet jaunāku ielādes disketi)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Izvēlieties spoguļserveri, no kura ņemt pakotnes"
diff --git a/perl-install/install/share/po/mk.po b/perl-install/install/share/po/mk.po
index 72d49e759..1de56a093 100644
--- a/perl-install/install/share/po/mk.po
+++ b/perl-install/install/share/po/mk.po
@@ -1,58 +1,86 @@
-# translation of DrakX-mk.po to Macedonian
-# Copyright (C) 2002,2003, 2004, 2006 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Danko Ilik <danko@mindless.com>, 2002,2003.
-# Vladimir Stefanov <vladoboss@mt.net.mk>, 2003.
-# Зоран Димовски <zoki@email.com>, 2003.
-# Danko Ilik <danko@on.net.mk>, 2003.
-# Зоран Димовски <decata@mt.net.mk>, 2004.
-# Zoran Dimovski <zoki.dimovski@gmail.com>, 2006.
+# Translators:
+# Danko Ilik <danko@mindless.com>, 2002-2003
+# Danko Ilik <danko@on.net.mk>, 2003
+# Vladimir Stefanov <vladoboss@mt.net.mk>, 2003
+# misterioz <zoki.dimovski@gmail.com>, 2006
+# Зоран Димовски <decata@mt.net.mk>, 2004
+# Зоран Димовски <zoki@email.com>, 2003
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-mk\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2006-09-24 20:39-0700\n"
-"Last-Translator: Zoran Dimovski <zoki.dimovski@gmail.com>\n"
-"Language-Team: Macedonian <mkde-l10n@lists.sourceforge.net>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Macedonian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/mk/)\n"
+"Language: mk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural= n==1 || n%10==1 ? 0 : 1\n"
+"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Дали имате уште додатни медиуми?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -60,125 +88,155 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Пронајдени се следниве медиуми и ќе се користат во текот на инсталацијата: %"
-"s.\n"
+"Пронајдени се следниве медиуми и ќе се користат во текот на инсталацијата: "
+"%s.\n"
"\n"
"\n"
"Дали имате додатен инсталационен медиум за конфигурирање?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Мрежа (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Мрежа (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Мрежа (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL на огледалото?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL-то мора да започнува со „ftp://“ или „http://“"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Контактирање со веб сајтот на Мандрива Линукс за добивање на листата на "
-"огледала..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Не може да се воспостави врска веб страница на „Mandriva Linux“ за да се "
-"добие листата на достапни огледала"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Изберете огледало од кое да се преземат пакетите"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Поставување на „NFS“"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
"Ве молиме внесете го името на домаќинот и директориумот на вашиот „NFS“ "
"медиум"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr ""
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr ""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Име на домаќинот каде е монтиран „NFS“ ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Директориум"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr ""
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr "Не мојажам да ја пронајдам hdlist датотеката на ова огледало"
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Барање пакети што се веќе инсталирањен..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Барање пакети за надградба..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Отстранување на пакети поради надградување..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -192,87 +250,87 @@ msgstr ""
"\n"
"Дали навистина сакате да се избришат овие пакети?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Грешка при читање на датотеката %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Следниве дискови се преименувани:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (претходно именувано како %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Мрежа"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Ве молиме изберете медиум"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Датотеката веќе постои. Да се запише врз неа?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Недозволен пристап"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Лошо „NFS“ име"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Невалиден медиум %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Не можат да се прават снимки на екран пред партицирање"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Екранските снимки ќе бидат достапни по инсталацијата во %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Инсталација"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Конфигурација"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Мора да го форматирате и %s"
@@ -297,22 +355,22 @@ msgstr "Подигање на мрежата"
msgid "Bringing down the network"
msgstr "Спуштање на мрежата"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Копирање на некои пакети на дискот за понатамошна употреба"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Копирањето е во тек"
@@ -342,83 +400,98 @@ msgstr "убаво"
msgid "maybe"
msgstr "можеби"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Нема опис"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Се случи грешка"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Се случи фаталната грешка: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d неуспешни трансакциии на инсталацијата"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Инсталирање на пакетот %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Работна станица"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Канцелариски"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Канцелариски програми: обработка на текст (OpenOffice.org Writer, Kword), "
-"табеларни пресметки (OpenOffice.org Calc, Kspread), прегледувачи на „PDF“ "
-"итн."
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Канцелариски програми: обработка на текст (kword, abiword), табеларни "
-"пресметки (kspread, gnumeric), прегледувачи на „pdf“ итн."
+"Канцелариски програми: обработка на текст (LibreOffice Writer, Kword), "
+"табеларни пресметки (LibreOffice Calc, Kspread), прегледувачи на „PDF“ итн."
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Станица за игри"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Забавни програми: аркадни, на табла, стратегија, итн."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Мултимедијална станица"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Програми за пуштање и уредување на звук и видео"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Интернет станица"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -427,193 +500,193 @@ msgstr ""
"Комплет алатки за читање и пракање е-пошта и вести (mutt, tin..) и "
"прелистување на Интернет"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Мрежен компјутер (клиент)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Клиенти за различни протоколи, вклучувајќи и „ssh“"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Алатки за лесно конфигурирање на вашиот компјутер"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Конзолски алатки"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Уредувачи, школки, алатки за датотеки, терминали"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Развој"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Развивачки датотеки за „C“ и „C++“, програми и „include“ датотеки"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Документација"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Книги и „Како да“ за „Linux“ и слободен софтвер"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "„Linux Standard Base“. Поддршка за апликации од други фирми"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Веб сервер"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Групи"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Сервер"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Интернет gateway"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Пошта/Вести"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "„Postfix“ сервер за пошта, „Inn“ сервер за вести"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Директориумски сервер"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "„FTP“ сервер"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Име на доменот и сервер за мрежни информации"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Сервер за споделување на датотеки и печатач"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "„NFS“ сервер, „Samba“ сервер"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "База на податоци"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "„PostgreSQL“ и „MySQL“ сервер за бази на податоци"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "„PostgreSQL“ и „MariaDB“ сервер за бази на податоци"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Пошта"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix сервер за пошта"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "„PostgreSQL“ или „MySQL“ сервер за бази на податоци"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "„PostgreSQL“ или „MariaDB“ сервер за бази на податоци"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Мрежен компјутер-сервер"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "„NFS“ сервер, „SMB“ сервер, „Proxy“ сервер, „ssh“ сервер"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Графичка околина"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "„KDE“ работна станица"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -622,12 +695,12 @@ msgstr ""
"„К“ работна околина, основната графичка околина со додатна колекција на "
"придружни алатки"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "„GNOME“ работна станица"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -635,65 +708,109 @@ msgid ""
msgstr ""
"Графичка околина со кориснички пакет на алатки и алатки за работната површина"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "„IceWm“ работна површина"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Графичка околина со кориснички пакет на алатки и алатки за работната површина"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Други графички работни околини"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, итн."
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Помошни алатки"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH Сервер"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "„Webmin“"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "„Webmin“ оддалечен сервер за конфигурирање"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Мрежни помошни алатки/надгледување"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Алатки за надгледување, раководење на процеси, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "„Mandriva“ волшебници"
+msgid "Mageia Wizards"
+msgstr "„Mageia“ волшебници"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Волшебници за конфигурирање на сервер"
@@ -707,7 +824,7 @@ msgstr ""
"Се случи грешка, но не знам како добро да се справам со неа.\n"
"Продолжете на сопствен ризик."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -727,255 +844,259 @@ msgstr "Премин на чекор \"%s\"\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux Инсталација %s"
+msgid "%s Installation %s"
+msgstr "%s Инсталација %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> помеѓу елементи"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Вашиот систем е слаб со ресурси. Може да Ви се појават проблеми\n"
-"при инсталирање. Ако тоа се случи, пробајте со текстуална инсталација.\n"
+"при инсталирање %s. Ако тоа се случи, пробајте со текстуална инсталација.\n"
"За тоа, притиснете \"F1\" кога ќе се подигне цедеромот, и потоа внесете\n"
"\"text\"."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Минимална инсталација"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "„IceWm“ работна површина"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "„IceWm“ работна површина"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "„IceWm“ работна површина"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Групна селекција на пакети"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Подделна селекција на пакети"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Вкупна големина: %d / %d MB"
+msgid "Unselect All"
+msgstr "Сите се неселектирани"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Лош пакет"
+msgid "Total size: %d / %d MB"
+msgstr "Вкупна големина: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Верзија:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Големина: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Важност: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Не можете да (не) го изберете овој пакет"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "поради недостасување на %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "поради незадоволување на %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "се обидувам да промовирам %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "за да се задржи %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Не можете да го изберете овој пакет, зашто нема доволно простор да се "
"инсталира"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Ќе бидат инсталирани следниве пакети"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Следниве пакети ќе бидат отстранети"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ова е неопходен пакет, и не може да не се избере"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Не може да не го изберете овој пакет. Веќе е инсталиран"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr ""
"Не можете да не го изберете овој пакет. Тој мора да се надгради (upgrade)"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Прикажи ги автоматски избраните пакети"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Инсталирај"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Вчитај/зачувај избор"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Освежување на изборот на пакети"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Минимална инсталација"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Менаџмент на софтвер"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Изберете ги пакетите што сакате да се инсталираат"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Инсталирање"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Без детали"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Преостанато време "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Проценка"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d пакети"
-msgstr[1] "%d пакети"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Резиме"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Конфигурирај"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "не е конфигурирано"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Групна селекција на пакети"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -984,12 +1105,12 @@ msgstr ""
"Пронајдени се следниве инсталациски медиуми.\n"
"Ако сакате да отстранете некои, можете сега да ги дештиклирате."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Имате опција да ја копирате содржината на CD-ата на дискот, пред самата "
@@ -997,72 +1118,72 @@ msgstr ""
"Потоа, инсталацијата ќе продолжи од хард дискот и пакетите ќе бидат достапни "
"се додека системот е целосно инсталиран."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Копирај ги сите CD-а"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Се случи грешка"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Изберете распоред на тастатура"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Ова е целосна листа на достапни тастатури"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Инсталирај/Надогради"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Дали е ова инсталација или надградба?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Инсталирај"
+msgstr "Инсталација"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Надгради %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Криптирачки клуч за %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Инсталација"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1071,38 +1192,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Конфигурирање на IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Нема слободен простор за bootstrap од 1МБ! Инсталацијата ќе продолжи, но за "
-"да го подигнете Вашиот систем, ќе треба да креирате bootstrap партиција во "
-"DiskDrake"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Треба да креирате „PPC PReP Boot“ подигнување! Инсталацијата ќе продолжи, но "
-"за да го вклучите вашиот систем, ќе треба да креирате партиција за "
-"подигнување во „DiskDrake“"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1115,19 +1215,19 @@ msgstr ""
"Внесете го CD-то со наслов \"%s\" во вашиот уред и притиснете \"Во ред\".\n"
"Ако го немате, притиснете \"Откажи\" за да не инсталирате од ова CD."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Барање достапни пакети..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1136,52 +1236,52 @@ msgstr ""
"Ве молиме изберете „вчитај“ или „зачувај“ го изборот на пакети\n"
"Форматот е ист како за генерирани датотеки од „auto_install“."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Вчитај"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Зачувај"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Лоша датотека"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Групна селекција на пакети"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Избраната големина е поголема од слободниот простор"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Тип на инсталација"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1190,88 +1290,127 @@ msgstr ""
"Не сте избрале ниту една група пакети.\n"
"Изберете ја минималната инсталација што ја сакате:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Со X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Инсталирање на пакетот %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Со основна документација (препорачано!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Вистински минимална инсталација (без urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Подготовка на инсталацијата"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Инсталирање на пакетот %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Се случи грешка во подредувањето на пакетите:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Да продолжиме?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Зачувување на селекцијата пакети"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Се случи грешка во инсталирањето на пакетите:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Пост-инсталациона конфигурација"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
"Ве молиме проверете дали медиумот со модулите за надградување е во уредот %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Надградби"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Ќе бидат инсталирани следниве пакети"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Неуспех при додавање медиум"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1292,112 +1431,80 @@ msgstr ""
"\n"
"Дали сакате да ги инсталирате надградбите?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s на %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Хардвер(машински дел)"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Звучна картичка"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Дали имате ISA звучна картичка?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"По инсталацијата вклучете \"alsaconf\" или \"sndconfig\" за да ја "
-"конфигурирате звучаната картичка"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Не е детектирана звучна картичка. Обидете се со \"harddrake\" по "
-"инсталацијата"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Графички интерфејс"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Мрежа и Интернет"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Прокси"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "конфигурирано"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Ниво на сигурност"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "активиран"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "оневозможено"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Се уште го ш конфигурирано Х. Дали навистина сакаш да го направиш ова?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "Подговтвување на подигачот..."
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"Изгледа дека имате стара или непозната машина, затоа „yaboot“ подигнувачот "
-"нема да работи. Инсталацијата ќе продолжи, но ќе треба да користите „BootX“ "
-"или некои други средства за подигнување на вашата машина. Аргументот на "
-"кернелот за „root fs“ е следниов: root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1406,17 +1513,17 @@ msgstr ""
"Во ова безбедносно ниво, пристап до датотеките кои се наоѓаат на „Windows“ "
"партицијата е дозволен само на администраторот."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Внесете празна дискета во %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Создавање дискета за авто-инсталација..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1427,12 +1534,12 @@ msgstr ""
"\n"
"Дали навистина сакате сега да напуштите?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Честитки"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Рестартирај"
@@ -1527,13 +1634,6 @@ msgid ""
"Users"
msgstr "Корисници"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Мрежа"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1576,185 +1676,25 @@ msgid ""
"Exit"
msgstr "Излез"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Снимање на датотека %s..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Сте ги избрале следниве сервери: %s\n"
-#~ "\n"
-#~ "Овие сервери се активираат автоматски. Тие немаат никакви познати стари\n"
-#~ "сигурносни проблеми, но можно е да се појават нови. Во тој случај, треба "
-#~ "да\n"
-#~ "ги надградите пакетите што е можно побрзо.\n"
-#~ "\n"
-#~ "\n"
-#~ "Дали навистина сакате да ги инсталирате овие сервери?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "„IceWm“ работна површина"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Контактирање со огледалото за добивање листа на достапни пакети..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Не можеше да контактира со другиот %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Генерирање дискета за авто-инсталација"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Автоматската инсталација може да биде целосно автоматска,\n"
-#~ "но во тој случај таа ќе го преземе дискот!!\n"
-#~ "(ова е наменето за инсталирање на друга машина).\n"
-#~ "\n"
-#~ "Можеби претпочитате да ја репризирате (replay) инсталацијата.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Реприза"
-
-#~ msgid "Automated"
-#~ msgstr "Автоматска"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Зачувување на селекцијата пакети"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL на огледалото?"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Дали сакате да го користите aboot?"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL-то мора да започнува со „ftp://“ или „http://“"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Грешка при инсталирање aboot. \n"
-#~ "Да се обидеме со сила, иако тоа може да ја уништи првата партиција?"
-
-#~ msgid "All"
-#~ msgstr "Сите"
-
-#~ msgid "TV card"
-#~ msgstr "ТВ картичка"
-
-#~ msgid "Boot"
-#~ msgstr "Подигање"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Автентикација"
-
-#~ msgid "Arkeia"
-#~ msgstr "Arkeia"
-
-#~ msgid "Flatout"
-#~ msgstr "Flatout"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "3Д"
-
-#~ msgid "CMS"
-#~ msgstr "CMS"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "2007 product line"
-#~ msgstr "производна линија 2007"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "Несовладлив заштитен ѕид"
-
-#~ msgid "Discovery Live Mode"
-#~ msgstr "`"
-
-#~ msgid "How to register"
-#~ msgstr "Како да се регистрирате"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "Rpmdrake 2"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "„Mandriva Online“ сервиси"
+#~ "Контактирање со веб сајтот на %s за добивање на листата на огледала..."
-#~ msgid "New Theme"
-#~ msgstr "Нова тема"
-
-#~ msgid "Web 2.0"
-#~ msgstr "Веб 2.0"
-
-#~ msgid "Kaspersky"
-#~ msgstr "Kaspersky"
-
-#~ msgid "LinDVD"
-#~ msgstr "LinDVD"
-
-#~ msgid "Skype"
-#~ msgstr "Skype"
-
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Transgaming/Cedega"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d пакети"
-#~ msgstr[1] "%d пакети"
-
-#~ msgid "%d packages"
-#~ msgstr "%d пакети"
-
-#~ msgid "Language"
-#~ msgstr "Јазик"
-
-#~ msgid "License"
-#~ msgstr "Лиценца"
-
-#~ msgid "Installation class"
-#~ msgstr "Класа на инсталација"
-
-#~ msgid "Formatting"
-#~ msgstr "Форматирање"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Избирање на пакети"
-
-#~ msgid "Users"
-#~ msgstr "Корисници"
-
-#~ msgid "Networking"
-#~ msgstr "Мрежа"
-
-#~ msgid "Configure X"
-#~ msgstr "Конфигурирај Х"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Нема пристап до модулите на јадрото за Вашето јадро (датотеката %s "
-#~ "недостига). Ова обично значи дека Вашата boot-дискета не е синхронизирана "
-#~ "со инсталациониот медиум (креирајте понова boot-дискета)"
+#~ "Не може да се воспостави врска веб страница на „%s“ за да се добие "
+#~ "листата на достапни огледала"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Изберете огледало од кое да се преземат пакетите"
diff --git a/perl-install/install/share/po/mn.po b/perl-install/install/share/po/mn.po
index 7f8d6a5db..fb259f3e7 100644
--- a/perl-install/install/share/po/mn.po
+++ b/perl-install/install/share/po/mn.po
@@ -1,55 +1,83 @@
-# translation of DrakX.po to Mongolian
-# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
-# Khurelbaatar Lkhagavsuren <hujii247@yahoo.com>, 2003.
-# Khurelbaatar Lkhagvasuren <hujii247@yahoo.com>, 2003.
-# Sanlig Badral <Badral@openmn.org>, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Khurelbaatar Lkhagavsuren <hujii247@yahoo.com>, 2003
+# Khurelbaatar Lkhagvasuren <hujii247@yahoo.com>, 2003
+# Sanlig Badral <Badral@openmn.org>, 2004
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2004-01-02 00:35+0100\n"
-"Last-Translator: Sanlig Badral <Badral@openmn.org>\n"
-"Language-Team: Mongolian <openmn-core@lists.sf.net>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Mongolian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/mn/)\n"
+"Language: mn\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.0.2\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Та ямар нэгэн %s гэсэн харагдалттай юу?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -58,113 +86,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "КД-РОМ"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Сүлжээ"
-
-#: any.pm:122
-#, fuzzy, c-format
-msgid "Network (FTP)"
-msgstr "Сүлжээ"
-
-#: any.pm:123
-#, c-format
-msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:163
#, c-format
-msgid "URL of the mirror?"
+msgid "Network (FTP)"
msgstr ""
-#: any.pm:171
+#: any.pm:164
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Network (NFS)"
msgstr ""
-#: any.pm:182
-#, fuzzy, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "сайт жигсаалт аас."
-
-#: any.pm:187
-#, fuzzy, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "сайт жигсаалт аас."
-
-#: any.pm:197
-#, fuzzy, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Сонгох"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr ""
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr ""
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr ""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr ""
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Лавлах"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:300
+#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
-msgstr "%s: %s-ийг холбож чадахгүй: %s\n"
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
-#: any.pm:334
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr ""
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr ""
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -173,89 +235,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
-#, fuzzy, c-format
+#: any.pm:1075
+#, c-format
msgid "Error reading file %s"
-msgstr "Файл уншихад алдаа\n"
+msgstr ""
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Дараах багцууд суулгагдах гэж байна"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "NFS"
-msgstr "ТЭ"
+msgstr ""
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Сүлжээ"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
msgstr ""
-"Нөөцлөх зөөврийн төхөөрөмжөө\n"
-"сонгоно уу."
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Файл?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Хандалт нурлаа"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Хуваалт үүсгэхийн өмнө агшин дэлгэцүүдийг хийж чадахгүй"
-#: any.pm:1242
-#, fuzzy, c-format
+#: any.pm:1509
+#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "ямх"
+msgstr ""
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Суулгалт"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Тохиргоо"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr ""
@@ -277,25 +337,25 @@ msgstr ""
msgid "Bringing down the network"
msgstr ""
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "ямх"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -322,350 +382,413 @@ msgstr "аятайхан"
msgid "maybe"
msgstr "магадгүй"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Тайлбар алга"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "Суулгалт боломжтой"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Суулгалтын ангилалыг сонгох"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:16
+#, c-format
msgid "Workstation"
-msgstr "LAN Тохируулга"
-
-#: share/meta-task/compssUsers.pl:15
-#, fuzzy, c-format
-msgid "Office Workstation"
-msgstr "Албан газар"
+msgstr ""
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:18
#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+msgid "Office Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:23
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:26
+#, c-format
msgid "Game station"
-msgstr "Тоглоом"
+msgstr ""
-#: share/meta-task/compssUsers.pl:24
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:27
+#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "Зугаа цэнгэл"
+msgstr ""
-#: share/meta-task/compssUsers.pl:27
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:30
+#, c-format
msgid "Multimedia station"
-msgstr "Мультимедиа"
+msgstr ""
-#: share/meta-task/compssUsers.pl:28
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:31
+#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Дуу"
+msgstr ""
-#: share/meta-task/compssUsers.pl:33
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:36
+#, c-format
msgid "Internet station"
-msgstr "Интернэт"
+msgstr ""
-#: share/meta-task/compssUsers.pl:34
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:37
+#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
-msgstr "аас"
+msgstr ""
-#: share/meta-task/compssUsers.pl:39
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:42
+#, c-format
msgid "Network Computer (client)"
-msgstr "Сүлжээ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr ""
-#: share/meta-task/compssUsers.pl:45
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:49
+#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "аас"
+msgstr ""
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:50
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:54
+#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "Засварлагчууд"
+msgstr ""
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Хөгжүүлэл"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "C C"
+msgstr ""
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Баримтжуулалт"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr ""
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr ""
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Стандарт"
+msgstr ""
-#: share/meta-task/compssUsers.pl:73
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:79
+#, c-format
msgid "Web Server"
-msgstr "Вэб"
+msgstr ""
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr ""
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "бүлэг"
+msgstr ""
-#: share/meta-task/compssUsers.pl:78
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:85
+#, c-format
msgid "Kolab Server"
-msgstr "Самба"
+msgstr ""
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr ""
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Интернэт гарц"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/Файл/_Шинэ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Мэйл"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "Сэргээх Илгээгч"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP Сервер"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr ""
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Домэйн Нэрний Сервер"
+msgstr ""
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Хэвлэгч"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Самба"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Өгөгдлийн сан"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr ""
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Мэйл"
-#: share/meta-task/compssUsers.pl:115
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:129
+#, c-format
msgid "Postfix mail server"
-msgstr "Мэйл"
+msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr ""
-#: share/meta-task/compssUsers.pl:126
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:142
+#, c-format
msgid "Network Computer server"
-msgstr "Сүлжээ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:127
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:143
+#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "Итгэмжилэгч"
+msgstr ""
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr ""
-#: share/meta-task/compssUsers.pl:135
-#, fuzzy, c-format
-msgid "KDE Workstation"
-msgstr "KDE"
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:153
+#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
-msgstr "Ажилын талбар аас"
+msgstr ""
-#: share/meta-task/compssUsers.pl:140
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:158
+#, c-format
msgid "GNOME Workstation"
-msgstr "KDE"
+msgstr ""
-#: share/meta-task/compssUsers.pl:141
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
-msgstr "аас"
+msgstr ""
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Ширээний компьютер"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "аас"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
-#: share/meta-task/compssUsers.pl:150
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
msgid "Other Graphical Desktops"
-msgstr "Бусад"
+msgstr ""
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Цонх"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:218
+#, c-format
msgid "Utilities"
-msgstr "Филлипинни"
+msgstr ""
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Вэб дуран"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Терминал Сервер"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Сүлжээ толидох"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Мандрива удирдлагын төв"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "\"%s\" хэвлэгч дээр хэвлэж байна"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -674,14 +797,14 @@ msgid ""
"Continue at your own risk."
msgstr ""
-#: steps.pm:443
-#, fuzzy, c-format
+#: steps.pm:469
+#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
"\"\n"
-msgstr "бол"
+msgstr ""
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
@@ -689,330 +812,334 @@ msgid "Entering step `%s'\n"
msgstr ""
#: steps_curses.pm:22
-#, fuzzy, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Мандрива удирдлагын төв"
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr ""
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
-#, fuzzy, c-format
+#: steps_gtk.pm:216
+#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
-msgstr "бол Та вы текст текст."
+msgstr ""
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Төрөл аас"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Ширээний компьютер"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Ширээний компьютер"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Ширээний компьютер"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
-#, fuzzy, c-format
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
msgid "Package Group Selection"
-msgstr "Пакет Групп"
+msgstr ""
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Тусдаа дан багц сонгох"
-#: steps_gtk.pm:360 steps_interactive.pm:544
-#, fuzzy, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Нийт хэмжээ"
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Тааруухан багц"
+msgid "Total size: %d / %d MB"
+msgstr ""
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Хувилбар: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Хэмжээ: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d КБ\n"
-#: steps_gtk.pm:406
-#, fuzzy, c-format
+#: steps_gtk.pm:427
+#, c-format
msgid "Importance: "
-msgstr "Цонтууд импортлох"
+msgstr ""
-#: steps_gtk.pm:440
-#, fuzzy, c-format
-msgid "You can not select/unselect this package"
-msgstr "Та"
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr ""
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr ""
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr ""
-#: steps_gtk.pm:446
-#, fuzzy, c-format
+#: steps_gtk.pm:468
+#, c-format
msgid "trying to promote %s"
-msgstr "Юу ч үгүй"
+msgstr ""
-#: steps_gtk.pm:447
-#, fuzzy, c-format
+#: steps_gtk.pm:469
+#, c-format
msgid "in order to keep %s"
-msgstr "ямх"
+msgstr ""
-#: steps_gtk.pm:452
-#, fuzzy, c-format
+#: steps_gtk.pm:474
+#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
-msgstr "Та бол зүүн"
+msgstr ""
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Дараах багцууд суулгагдах гэж байна"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr ""
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr ""
-#: steps_gtk.pm:483
-#, fuzzy, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "Та бол"
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr ""
-#: steps_gtk.pm:485
-#, fuzzy, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Та"
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Автоматаар сонгогдсон багцуудыг харуулах"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Суулга"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Пакет"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr ""
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr ""
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr ""
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Сонгохыг хүсэж буй багцаа сонгоно уу"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Суулгалт"
-#: steps_gtk.pm:564
-#, fuzzy, c-format
+#: steps_gtk.pm:590
+#, c-format
msgid "No details"
-msgstr "Үгүй"
+msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Үлдэж буй хугацаа"
+msgstr ""
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "Тааруухан багц"
-msgstr[1] "Тааруухан багц"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Дүгнэлт"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Тохируулах"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr ""
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Пакет Групп"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr ""
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Та гарын байрлалаа сонгоно уу"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "бол бүрэн жигсаалт аас"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr ""
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr ""
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Суулга"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr ""
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Суулгалт"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1021,32 +1148,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "IDE-г тохируулах"
-
-#: steps_interactive.pm:288
-#, fuzzy, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr "Үгүй вы ямх"
-
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr "Үгүй вы ямх"
+msgid "Configuring CD/DVD"
+msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1055,159 +1167,198 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr ""
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
-msgstr "ачаалах бол."
+msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Процессор ачаалж байна"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Хадгалах"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Файлыг ачаалах"
+msgstr ""
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "Гном"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Пакет Групп"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Сонгогдсон хэмжээ нь боломжтой зайнаас их байна"
-#: steps_interactive.pm:574
-#, fuzzy, c-format
+#: steps_interactive.pm:576
+#, c-format
msgid "Type of install"
-msgstr "Төрөл аас"
+msgstr ""
-#: steps_interactive.pm:575
-#, fuzzy, c-format
+#: steps_interactive.pm:577
+#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
-msgstr "Та бүлэг аас вы:"
+msgstr ""
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr ""
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Автоматаар сонгогдсон багцуудыг харуулах"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr ""
-#: steps_interactive.pm:583
-#, fuzzy, c-format
+#: steps_interactive.pm:585
+#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "үгүй"
+msgstr ""
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
-#: steps_interactive.pm:638
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Суулгалтын бэлтгэл"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr ""
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr ""
-#: steps_interactive.pm:670
-#, fuzzy, c-format
+#: steps_interactive.pm:679
+#, c-format
msgid "Go on anyway?"
-msgstr "Очих?"
+msgstr ""
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Хадгалах"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Багцуудыг суулгахад алдаа гарлаа:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Суулгалтын тохируулгыг батал"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
-#, fuzzy, c-format
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
msgid "Updates"
msgstr "Шинэчлэх"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Дараах багцууд суулгагдах гэж байна"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
+#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
"have been updated after the distribution was released. They may\n"
@@ -1217,136 +1368,112 @@ msgid ""
"connection.\n"
"\n"
"Do you want to install the updates?"
-msgstr "Та г вы Интернэт г вы?"
+msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s -д %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Техник хангамж"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Дууны карт"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Та ISA дууны карттай юу?"
-
-#: steps_interactive.pm:919
-#, fuzzy, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr "Ажиллуулах"
-
-#: steps_interactive.pm:921
-#, fuzzy, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Үгүй Reyna"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr ""
-#: steps_interactive.pm:935 steps_interactive.pm:946
-#, fuzzy, c-format
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
msgid "Network & Internet"
-msgstr "Сүлжээ"
+msgstr ""
-#: steps_interactive.pm:947
-#, fuzzy, c-format
+#: steps_interactive.pm:991
+#, c-format
msgid "Proxies"
-msgstr "Польш"
+msgstr ""
-#: steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_interactive.pm:992
+#, c-format
msgid "configured"
-msgstr "Тохируулах"
+msgstr ""
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Хамгаалалтын төвшин"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "хаалттай"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Та Х-г тохируулаагүй байна. Та үүнийг хийхдээ итгэлтэй байна уу?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
-#, fuzzy, c-format
+#: steps_interactive.pm:1121
+#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "Оруулах ямх"
+msgstr ""
-#: steps_interactive.pm:1083
-#, fuzzy, c-format
+#: steps_interactive.pm:1123
+#, c-format
msgid "Creating auto install floppy..."
-msgstr "Үүсгэж байна."
+msgstr ""
-#: steps_interactive.pm:1094
-#, fuzzy, c-format
+#: steps_interactive.pm:1134
+#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
-msgstr "г вы?"
+msgstr ""
-#: steps_interactive.pm:1104
-#, fuzzy, c-format
+#: steps_interactive.pm:1144
+#, c-format
msgid "Congratulations"
-msgstr "Баяр хүргэе!"
+msgstr ""
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Дахин ачаал"
@@ -1441,13 +1568,6 @@ msgid ""
"Users"
msgstr "Хэрэглэгчид"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Сүлжээ"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1489,71 +1609,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Гарах"
-
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Файлууд илгээж байна..."
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Ширээний компьютер"
-
-#, fuzzy
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "жигсаалт аас."
-
-#, fuzzy
-#~ msgid "Save packages selection"
-#~ msgstr "Хадгалах"
-
-#, fuzzy
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "вы?"
-
-#, fuzzy
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr "Алдаа?"
-
-#~ msgid "All"
-#~ msgstr "Бүгд"
-
-#~ msgid "Boot"
-#~ msgstr "Эхлүүлэл"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Баталгаажуулалт"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "Тааруухан багц"
-#~ msgstr[1] "Тааруухан багц"
-
-#~ msgid "Language"
-#~ msgstr "Хэл"
-
-#, fuzzy
-#~ msgid "License"
-#~ msgstr "Лиценз"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Формат"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Сонгох"
-
-#~ msgid "Users"
-#~ msgstr "Хэрэглэгчид"
-
-#~ msgid "Networking"
-#~ msgstr "Сүлжээ"
-
-#, fuzzy
-#~ msgid "Configure X"
-#~ msgstr "Тохируулах"
diff --git a/perl-install/install/share/po/mr.po b/perl-install/install/share/po/mr.po
new file mode 100644
index 000000000..c236ff535
--- /dev/null
+++ b/perl-install/install/share/po/mr.po
@@ -0,0 +1,1608 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Marathi (http://www.transifex.com/MageiaLinux/mageia/language/"
+"mr/)\n"
+"Language: mr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
+msgid "Do you have further supplementary media?"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:154
+#, c-format
+msgid ""
+"The following media have been found and will be used during install: %s.\n"
+"\n"
+"\n"
+"Do you have a supplementary installation medium to configure?"
+msgstr ""
+
+#: any.pm:162
+#, c-format
+msgid "Network (HTTP)"
+msgstr ""
+
+#: any.pm:163
+#, c-format
+msgid "Network (FTP)"
+msgstr ""
+
+#: any.pm:164
+#, c-format
+msgid "Network (NFS)"
+msgstr ""
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr ""
+
+#: any.pm:225
+#, c-format
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
+
+#: any.pm:229
+#, c-format
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr ""
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr ""
+
+#: any.pm:593
+#, c-format
+msgid "Finding packages to upgrade..."
+msgstr ""
+
+#: any.pm:612
+#, c-format
+msgid "Removing packages prior to upgrade..."
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:850
+#, c-format
+msgid ""
+"The following packages will be removed to allow upgrading your system: %s\n"
+"\n"
+"\n"
+"Do you really want to remove these packages?\n"
+msgstr ""
+
+#: any.pm:1075
+#, c-format
+msgid "Error reading file %s"
+msgstr ""
+
+#: any.pm:1283
+#, c-format
+msgid "The following disk(s) were renamed:"
+msgstr ""
+
+#: any.pm:1285
+#, c-format
+msgid "%s (previously named as %s)"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "HTTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "FTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "NFS"
+msgstr ""
+
+#: any.pm:1361 steps_interactive.pm:979
+#, c-format
+msgid "Network"
+msgstr ""
+
+#: any.pm:1365
+#, c-format
+msgid "Please choose a media"
+msgstr ""
+
+#: any.pm:1381
+#, c-format
+msgid "File already exists. Overwrite it?"
+msgstr ""
+
+#: any.pm:1385
+#, c-format
+msgid "Permission denied"
+msgstr ""
+
+#: any.pm:1433
+#, c-format
+msgid "Bad NFS name"
+msgstr ""
+
+#: any.pm:1454
+#, c-format
+msgid "Bad media %s"
+msgstr ""
+
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
+
+#: any.pm:1509
+#, c-format
+msgid "Screenshots will be available after install in %s"
+msgstr ""
+
+#: gtk.pm:134
+#, c-format
+msgid "Installation"
+msgstr ""
+
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
+#, c-format
+msgid "Configuration"
+msgstr ""
+
+#: install2.pm:220
+#, c-format
+msgid "You must also format %s"
+msgstr ""
+
+#: interactive.pm:16
+#, c-format
+msgid ""
+"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
+"You can find some information about them at: %s"
+msgstr ""
+
+#: interactive.pm:22
+#, c-format
+msgid "Bringing up the network"
+msgstr ""
+
+#: interactive.pm:27
+#, c-format
+msgid "Bringing down the network"
+msgstr ""
+
+#: media.pm:397
+#, c-format
+msgid "Please wait, retrieving file"
+msgstr ""
+
+#: media.pm:704
+#, c-format
+msgid "unable to add medium"
+msgstr ""
+
+#: media.pm:744
+#, c-format
+msgid "Copying some packages on disks for future use"
+msgstr ""
+
+#: media.pm:797
+#, c-format
+msgid "Copying in progress"
+msgstr ""
+
+#: pkgs.pm:32
+#, c-format
+msgid "must have"
+msgstr ""
+
+#: pkgs.pm:33
+#, c-format
+msgid "important"
+msgstr ""
+
+#: pkgs.pm:34
+#, c-format
+msgid "very nice"
+msgstr ""
+
+#: pkgs.pm:35
+#, c-format
+msgid "nice"
+msgstr ""
+
+#: pkgs.pm:36
+#, c-format
+msgid "maybe"
+msgstr ""
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
+#, c-format
+msgid ""
+"Some packages requested by %s cannot be installed:\n"
+"%s"
+msgstr ""
+
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
+msgid "An error occurred:"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
+
+#: pkgs.pm:929
+#, c-format
+msgid "Installation of packages failed:"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:16
+#, c-format
+msgid "Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:18
+#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:26
+#, c-format
+msgid "Game station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:27
+#, c-format
+msgid "Amusement programs: arcade, boards, strategy, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:30
+#, c-format
+msgid "Multimedia station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:31
+#, c-format
+msgid "Sound and video playing/editing programs"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:36
+#, c-format
+msgid "Internet station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:37
+#, c-format
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:42
+#, c-format
+msgid "Network Computer (client)"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:43
+#, c-format
+msgid "Clients for different protocols including ssh"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:49
+#, c-format
+msgid "Tools to ease the configuration of your computer"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:53
+#, c-format
+msgid "Console Tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:54
+#, c-format
+msgid "Editors, shells, file tools, terminals"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
+#, c-format
+msgid "Development"
+msgstr "विकास"
+
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
+msgid "C and C++ development libraries, programs and include files"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
+#, c-format
+msgid "Documentation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
+msgid "Books and Howto's on Linux and Free Software"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
+#, c-format
+msgid "LSB"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
+msgid "Linux Standard Base. Third party applications support"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:79
+#, c-format
+msgid "Web Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:80
+#, c-format
+msgid "Apache"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:84
+#, c-format
+msgid "Groupware"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:85
+#, c-format
+msgid "Kolab Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
+msgid "Firewall/Router"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
+msgid "Internet gateway"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:92
+#, c-format
+msgid "Mail/News"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:93
+#, c-format
+msgid "Postfix mail server, Inn news server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:97
+#, c-format
+msgid "Directory Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:102
+#, c-format
+msgid "FTP Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:103
+#, c-format
+msgid "ProFTPd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:107
+#, c-format
+msgid "DNS/NIS"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:108
+#, c-format
+msgid "Domain Name and Network Information Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:112
+#, c-format
+msgid "File and Printer Sharing Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:113
+#, c-format
+msgid "NFS Server, Samba server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
+msgid "Database"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:123
+#, c-format
+msgid "Web/FTP"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:124
+#, c-format
+msgid "Apache, Pro-ftpd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:128
+#, c-format
+msgid "Mail"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:129
+#, c-format
+msgid "Postfix mail server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:134
+#, c-format
+msgid "PostgreSQL or MariaDB database server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:142
+#, c-format
+msgid "Network Computer server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:143
+#, c-format
+msgid "NFS server, SMB server, Proxy server, ssh server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:150
+#, c-format
+msgid "Graphical Environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:153
+#, c-format
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:158
+#, c-format
+msgid "GNOME Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
+msgid "Other Graphical Desktops"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:218
+#, c-format
+msgid "Utilities"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
+msgid "SSH Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:225
+#, c-format
+msgid "Webmin"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:226
+#, c-format
+msgid "Webmin Remote Configuration Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:230
+#, c-format
+msgid "Network Utilities/Monitoring"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:231
+#, c-format
+msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:236
+#, c-format
+msgid "Wizards to configure server"
+msgstr ""
+
+#: steps.pm:85
+#, c-format
+msgid ""
+"An error occurred, but I do not know how to handle it nicely.\n"
+"Continue at your own risk."
+msgstr ""
+
+#: steps.pm:469
+#, c-format
+msgid ""
+"Some important packages did not get installed properly.\n"
+"Either your cdrom drive or your cdrom is defective.\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
+"\"\n"
+msgstr ""
+
+#: steps_auto_install.pm:71 steps_stdio.pm:27
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr ""
+
+#: steps_curses.pm:22
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
+
+#: steps_curses.pm:32
+#, c-format
+msgid "<Tab>/<Alt-Tab> between elements"
+msgstr ""
+
+#: steps_gtk.pm:151
+#, c-format
+msgid "Xorg server is slow to start. Please wait..."
+msgstr ""
+
+#: steps_gtk.pm:216
+#, c-format
+msgid ""
+"Your system is low on resources. You may have some problem installing\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
+"press `F1' when booting on CDROM, then enter `text'."
+msgstr ""
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
+msgid "Custom install"
+msgstr ""
+
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:281
+#, c-format
+msgid "GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:282
+#, c-format
+msgid "Custom Desktop"
+msgstr ""
+
+#: steps_gtk.pm:288
+#, c-format
+msgid "Here's a preview of the '%s' desktop."
+msgstr ""
+
+#: steps_gtk.pm:315
+#, c-format
+msgid "Click on images in order to see a bigger preview"
+msgstr ""
+
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
+msgid "Package Group Selection"
+msgstr ""
+
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
+msgid "Individual package selection"
+msgstr ""
+
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr ""
+
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr ""
+
+#: steps_gtk.pm:425
+#, c-format
+msgid "Version: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "Size: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "%d KB\n"
+msgstr ""
+
+#: steps_gtk.pm:427
+#, c-format
+msgid "Importance: "
+msgstr ""
+
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr ""
+
+#: steps_gtk.pm:466
+#, c-format
+msgid "due to missing %s"
+msgstr ""
+
+#: steps_gtk.pm:467
+#, c-format
+msgid "due to unsatisfied %s"
+msgstr ""
+
+#: steps_gtk.pm:468
+#, c-format
+msgid "trying to promote %s"
+msgstr ""
+
+#: steps_gtk.pm:469
+#, c-format
+msgid "in order to keep %s"
+msgstr ""
+
+#: steps_gtk.pm:474
+#, c-format
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+
+#: steps_gtk.pm:477
+#, c-format
+msgid "The following packages are going to be installed"
+msgstr ""
+
+#: steps_gtk.pm:478
+#, c-format
+msgid "The following packages are going to be removed"
+msgstr ""
+
+#: steps_gtk.pm:504
+#, c-format
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr ""
+
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr ""
+
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+
+#: steps_gtk.pm:512
+#, c-format
+msgid "Show automatically selected packages"
+msgstr ""
+
+#: steps_gtk.pm:516
+#, c-format
+msgid "Install"
+msgstr ""
+
+#: steps_gtk.pm:519
+#, c-format
+msgid "Load/Save selection"
+msgstr ""
+
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
+msgid "Updating package selection"
+msgstr ""
+
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
+msgid "Minimal install"
+msgstr ""
+
+#: steps_gtk.pm:543
+#, c-format
+msgid "Software Management"
+msgstr ""
+
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
+msgid "Choose the packages you want to install"
+msgstr ""
+
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
+#, c-format
+msgid "Installing"
+msgstr ""
+
+#: steps_gtk.pm:590
+#, c-format
+msgid "No details"
+msgstr ""
+
+#: steps_gtk.pm:610
+#, c-format
+msgid "Time remaining:"
+msgstr ""
+
+#: steps_gtk.pm:611
+#, c-format
+msgid "(estimating...)"
+msgstr ""
+
+#: steps_gtk.pm:637
+#, c-format
+msgid "%d package"
+msgid_plural "%d packages"
+msgstr[0] ""
+msgstr[1] ""
+
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
+#, c-format
+msgid "Summary"
+msgstr ""
+
+#: steps_gtk.pm:713
+#, c-format
+msgid "Configure"
+msgstr ""
+
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
+msgid "not configured"
+msgstr ""
+
+#: steps_gtk.pm:773 steps_interactive.pm:315
+#, c-format
+msgid ""
+"The following installation media have been found.\n"
+"If you want to skip some of them, you can unselect them now."
+msgstr ""
+
+#: steps_gtk.pm:789 steps_interactive.pm:321
+#, c-format
+msgid ""
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
+msgstr ""
+
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
+msgid "Copy whole CDs"
+msgstr ""
+
+#: steps_interactive.pm:40
+#, c-format
+msgid "An error occurred"
+msgstr ""
+
+#: steps_interactive.pm:105
+#, c-format
+msgid "Please choose your keyboard layout"
+msgstr ""
+
+#: steps_interactive.pm:109
+#, c-format
+msgid "Here is the full list of available keyboards:"
+msgstr ""
+
+#: steps_interactive.pm:153
+#, c-format
+msgid "Install/Upgrade"
+msgstr ""
+
+#: steps_interactive.pm:157
+#, c-format
+msgid "Is this an install or an upgrade?"
+msgstr ""
+
+#: steps_interactive.pm:159
+#, c-format
+msgid ""
+"_: This is a noun:\n"
+"Install"
+msgstr ""
+
+#: steps_interactive.pm:161
+#, c-format
+msgid "Upgrade %s"
+msgstr ""
+
+#: steps_interactive.pm:184
+#, c-format
+msgid "Encryption key for %s"
+msgstr ""
+
+#: steps_interactive.pm:217
+#, c-format
+msgid "Cancel installation, reboot system"
+msgstr ""
+
+#: steps_interactive.pm:218
+#, c-format
+msgid "New Installation"
+msgstr ""
+
+#: steps_interactive.pm:219
+#, c-format
+msgid "Upgrade previous installation (not recommended)"
+msgstr ""
+
+#: steps_interactive.pm:223
+#, c-format
+msgid ""
+"Installer has detected that your installed Linux system could not\n"
+"safely be upgraded to %s.\n"
+"\n"
+"New installation replacing your previous one is recommended.\n"
+"\n"
+"Warning : you should backup all your personal data before choosing \"New\n"
+"Installation\"."
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:354
+#, c-format
+msgid ""
+"Change your Cd-Rom!\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
+"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
+msgstr ""
+
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
+msgid "Looking for available packages..."
+msgstr ""
+
+#: steps_interactive.pm:380
+#, c-format
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+
+#: steps_interactive.pm:428
+#, c-format
+msgid ""
+"Please choose load or save package selection.\n"
+"The format is the same as auto_install generated files."
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Load"
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Save"
+msgstr ""
+
+#: steps_interactive.pm:438
+#, c-format
+msgid "Bad file"
+msgstr ""
+
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
+
+#: steps_interactive.pm:456
+#, c-format
+msgid "GNOME"
+msgstr "जीनोम"
+
+#: steps_interactive.pm:459
+#, c-format
+msgid "Desktop Selection"
+msgstr ""
+
+#: steps_interactive.pm:460
+#, c-format
+msgid "You can choose your workstation desktop profile."
+msgstr ""
+
+#: steps_interactive.pm:552
+#, c-format
+msgid "Selected size is larger than available space"
+msgstr ""
+
+#: steps_interactive.pm:576
+#, c-format
+msgid "Type of install"
+msgstr ""
+
+#: steps_interactive.pm:577
+#, c-format
+msgid ""
+"You have not selected any group of packages.\n"
+"Please choose the minimal installation you want:"
+msgstr ""
+
+#: steps_interactive.pm:582
+#, c-format
+msgid "With X"
+msgstr ""
+
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
+
+#: steps_interactive.pm:584
+#, c-format
+msgid "With basic documentation (recommended!)"
+msgstr ""
+
+#: steps_interactive.pm:585
+#, c-format
+msgid "Truly minimal install (especially no urpmi)"
+msgstr ""
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
+#, c-format
+msgid "Preparing installation"
+msgstr ""
+
+#: steps_interactive.pm:655
+#, c-format
+msgid "Installing package %s"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "There was an error ordering packages:"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "Go on anyway?"
+msgstr ""
+
+#: steps_interactive.pm:683
+#, c-format
+msgid "Retry"
+msgstr ""
+
+#: steps_interactive.pm:684
+#, c-format
+msgid "Skip this package"
+msgstr ""
+
+#: steps_interactive.pm:685
+#, c-format
+msgid "Skip all packages from medium \"%s\""
+msgstr ""
+
+#: steps_interactive.pm:686
+#, c-format
+msgid "Go back to media and packages selection"
+msgstr ""
+
+#: steps_interactive.pm:689
+#, c-format
+msgid "There was an error installing package %s."
+msgstr ""
+
+#: steps_interactive.pm:708
+#, c-format
+msgid "Post-install configuration"
+msgstr ""
+
+#: steps_interactive.pm:715
+#, c-format
+msgid "Please ensure the Update Modules media is in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr ""
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
+#, c-format
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
+msgstr ""
+
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
+#, c-format
+msgid "%s on %s"
+msgstr ""
+
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
+#, c-format
+msgid "Hardware"
+msgstr ""
+
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr ""
+
+#: steps_interactive.pm:972
+#, c-format
+msgid "Graphical interface"
+msgstr ""
+
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
+msgid "Network & Internet"
+msgstr ""
+
+#: steps_interactive.pm:991
+#, c-format
+msgid "Proxies"
+msgstr ""
+
+#: steps_interactive.pm:992
+#, c-format
+msgid "configured"
+msgstr ""
+
+#: steps_interactive.pm:1002
+#, c-format
+msgid "Security Level"
+msgstr ""
+
+#: steps_interactive.pm:1022
+#, c-format
+msgid "Firewall"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "activated"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "disabled"
+msgstr ""
+
+#: steps_interactive.pm:1041
+#, c-format
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr ""
+
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, c-format
+msgid "Preparing initial startup program..."
+msgstr ""
+
+#: steps_interactive.pm:1073
+#, c-format
+msgid "Be patient, this may take a while..."
+msgstr ""
+
+#: steps_interactive.pm:1089
+#, c-format
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+
+#: steps_interactive.pm:1121
+#, c-format
+msgid "Insert a blank floppy in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:1123
+#, c-format
+msgid "Creating auto install floppy..."
+msgstr ""
+
+#: steps_interactive.pm:1134
+#, c-format
+msgid ""
+"Some steps are not completed.\n"
+"\n"
+"Do you really want to quit now?"
+msgstr ""
+
+#: steps_interactive.pm:1144
+#, c-format
+msgid "Congratulations"
+msgstr ""
+
+#: steps_interactive.pm:1147
+#, c-format
+msgid "Reboot"
+msgstr "पुन्हा सुरु करा (रीबूट)"
+
+#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
+#: steps_list.pm:16
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Language"
+msgstr ""
+
+#: steps_list.pm:16 steps_list.pm:23
+#, c-format
+msgid "Localization"
+msgstr ""
+
+#: steps_list.pm:17
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"License"
+msgstr ""
+
+#: steps_list.pm:18
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Mouse"
+msgstr ""
+
+#: steps_list.pm:19 steps_list.pm:20
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Hard drive detection"
+msgstr ""
+
+#: steps_list.pm:21 steps_list.pm:22
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installation class"
+msgstr ""
+
+#: steps_list.pm:23
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Keyboard"
+msgstr ""
+
+#: steps_list.pm:24
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Security"
+msgstr ""
+
+#: steps_list.pm:25
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Partitioning"
+msgstr ""
+
+#: steps_list.pm:27 steps_list.pm:28
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Formatting"
+msgstr ""
+
+#: steps_list.pm:29
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Choosing packages"
+msgstr ""
+
+#: steps_list.pm:31
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installing"
+msgstr ""
+
+#: steps_list.pm:34
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Users"
+msgstr ""
+
+#: steps_list.pm:38 steps_list.pm:39
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Bootloader"
+msgstr ""
+
+#: steps_list.pm:40 steps_list.pm:41
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Configure X"
+msgstr ""
+
+#: steps_list.pm:42
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Summary"
+msgstr ""
+
+#: steps_list.pm:44 steps_list.pm:45
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Services"
+msgstr ""
+
+#: steps_list.pm:46
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Updates"
+msgstr ""
+
+#: steps_list.pm:48
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Exit"
+msgstr ""
diff --git a/perl-install/install/share/po/ms.po b/perl-install/install/share/po/ms.po
index d3df145dc..4787605dd 100644
--- a/perl-install/install/share/po/ms.po
+++ b/perl-install/install/share/po/ms.po
@@ -1,51 +1,81 @@
-# DrakX Bahasa Melayu (Malay) (ms).
-# Copyright (C) 2003, 2008 Free Software Foundation, Inc.
-# Sharuzzaman Ahmat Raslan <sharuzzaman@myrealbox.com>, 2003, 2008.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Sharuzzaman Ahmat Raslan <sharuzzaman@myrealbox.com>, 2003,2008
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2008-05-01 14:16+0800\n"
-"Last-Translator: Sharuzzaman Ahmat Raslan <sharuzzaman@myrealbox.com>\n"
-"Language-Team: Malay <translation-team-ms@lists.sourceforge.net>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Malay (http://www.transifex.com/MageiaLinux/mageia/language/"
+"ms/)\n"
+"Language: ms\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Masukkan fail lain ke file semasa"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -54,113 +84,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Pelayan Rangkaian"
-
-#: any.pm:122
-#, fuzzy, c-format
-msgid "Network (FTP)"
-msgstr "Pelayan FTP"
-
-#: any.pm:123
-#, fuzzy, c-format
-msgid "Network (NFS)"
-msgstr "Pelayan Rangkaian"
-
-#: any.pm:165
-#, fuzzy, c-format
-msgid "URL of the mirror?"
-msgstr "URL untuk IG"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
msgstr ""
-#: any.pm:182
+#: any.pm:163
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Network (FTP)"
msgstr ""
-#: any.pm:187
+#: any.pm:164
#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+msgid "Network (NFS)"
msgstr ""
-#: any.pm:197
+#: any.pm:224
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr ""
-
-#: any.pm:227
-#, fuzzy, c-format
msgid "NFS setup"
-msgstr "Tetapan Halaman"
+msgstr ""
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:232
-#, fuzzy, c-format
+#: any.pm:229
+#, c-format
msgid "Hostname missing"
-msgstr "Pakej Hilang"
+msgstr ""
-#: any.pm:233
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
msgid "Directory must begin with \"/\""
-msgstr "Nama Direktori mesti dimulakan dengan slash"
+msgstr ""
-#: any.pm:237
-#, fuzzy, c-format
+#: any.pm:234
+#, c-format
msgid "Hostname of the NFS mount ?"
-msgstr "Perkongsian NFS Terlekap"
+msgstr ""
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Direktori"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:300
+#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
-msgstr "Ralat pada baris %d: %s"
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
-#: any.pm:334
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr ""
-#: any.pm:369
-#, fuzzy, c-format
+#: any.pm:593
+#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Mencari pakej untuk dinaiktaraf..."
+msgstr ""
-#: any.pm:388
-#, fuzzy, c-format
+#: any.pm:612
+#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "Ralat berlaku bila mencari pakej untuk dinaiktaraf."
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -169,499 +233,560 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
-#, fuzzy, c-format
+#: any.pm:1075
+#, c-format
msgid "Error reading file %s"
-msgstr "Ralat mengimport fail %s"
+msgstr ""
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Peranti audio berikut telah dikesan."
+msgstr ""
-#: any.pm:1022
-#, fuzzy, c-format
+#: any.pm:1285
+#, c-format
msgid "%s (previously named as %s)"
-msgstr "&Simpan Imej Sebagai"
+msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rangkaian"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Utiliti Media Mudah Alih"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Fail Khas peranti telah wujud dalam gugusan"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Izin ditolak"
-#: any.pm:1170
-#, fuzzy, c-format
+#: any.pm:1433
+#, c-format
msgid "Bad NFS name"
-msgstr "Tetap Nama Imej"
+msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "Media Storan"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr ""
-#: any.pm:1242
-#, fuzzy, c-format
+#: any.pm:1509
+#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "dalam"
+msgstr ""
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Pemasangan sekecil mungkin"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfigurasikan"
-#: install2.pm:168
-#, fuzzy, c-format
+#: install2.pm:220
+#, c-format
msgid "You must also format %s"
-msgstr "Anda mesti masukkan direktori."
+msgstr ""
#: interactive.pm:16
-#, fuzzy, c-format
+#, c-format
msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
-msgstr "on"
+msgstr ""
#: interactive.pm:22
-#, fuzzy, c-format
+#, c-format
msgid "Bringing up the network"
-msgstr "Pelayan Rangkaian Lama"
+msgstr ""
#: interactive.pm:27
-#, fuzzy, c-format
+#, c-format
msgid "Bringing down the network"
-msgstr "Pelayan Rangkaian Lama"
+msgstr ""
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "&Dalam pelayar web"
+msgstr "Penyalinan sedang dilakukan"
#: pkgs.pm:32
-#, fuzzy, c-format
+#, c-format
msgid "must have"
-msgstr "Mesti nyatakan nilai"
+msgstr ""
#: pkgs.pm:33
-#, fuzzy, c-format
+#, c-format
msgid "important"
msgstr ""
-"\n"
-"******************** PENTING ************************\n"
#: pkgs.pm:34
-#, fuzzy, c-format
+#, c-format
msgid "very nice"
-msgstr "Sangat Tinggi"
+msgstr ""
#: pkgs.pm:35
-#, fuzzy, c-format
+#, c-format
msgid "nice"
-msgstr "Bantuan yang mulia"
+msgstr ""
#: pkgs.pm:36
#, c-format
msgid "maybe"
msgstr ""
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Tiada keterangan"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Ralat telah berlaku"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "Pelaksanaan gpg gagal (%d)\n"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Memasang pakej %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "StesyenKerja"
-#: share/meta-task/compssUsers.pl:15
-#, fuzzy, c-format
-msgid "Office Workstation"
-msgstr "Pejabat/Produktiviti"
-
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:18
#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+msgid "Office Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:23
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:26
+#, c-format
msgid "Game station"
-msgstr "Permainan memori"
+msgstr ""
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:27
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:30
+#, c-format
msgid "Multimedia station"
-msgstr "Kekunci Multimedia"
+msgstr ""
-#: share/meta-task/compssUsers.pl:28
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:31
+#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Bunyi dan"
+msgstr ""
-#: share/meta-task/compssUsers.pl:33
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:36
+#, c-format
msgid "Internet station"
-msgstr "Internet Bergrafik"
+msgstr ""
-#: share/meta-task/compssUsers.pl:34
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:37
+#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
-msgstr "dan dan dan"
+msgstr ""
-#: share/meta-task/compssUsers.pl:39
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:42
+#, c-format
msgid "Network Computer (client)"
-msgstr "Klien Pelayan Terminal"
+msgstr ""
-#: share/meta-task/compssUsers.pl:40
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:43
+#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "protokol"
+msgstr ""
-#: share/meta-task/compssUsers.pl:45
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:49
+#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Ujian"
+msgstr ""
-#: share/meta-task/compssUsers.pl:49
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:53
+#, c-format
msgid "Console Tools"
-msgstr "Alatan Pentadbiran"
+msgstr ""
-#: share/meta-task/compssUsers.pl:50
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:54
+#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "Penyunting fail"
+msgstr ""
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Pembangunan"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "Pustaka dan fail selitan untuk Oaf."
+msgstr ""
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentasi"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "dan on dan Bebas"
+msgstr ""
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Asas"
+msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Pelayan Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Pelayan Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
msgid "Firewall/Router"
-msgstr "_Konfigurasikan Firewall"
+msgstr ""
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
msgid "Internet gateway"
-msgstr "Internet Bergrafik"
+msgstr ""
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "Pelayan Berita"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Sistem InterNetNews (INN), pelayan berita Usenet."
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Pelayan Direktori"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Pelayan FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Name=Pelayan Fail Awam"
+msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "(%ld)PELAYAN >>> %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Monitor status Samba"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Pangkalan Data"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Mel"
-#: share/meta-task/compssUsers.pl:115
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:129
+#, c-format
msgid "Postfix mail server"
-msgstr "Pelayan Nama DNS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr ""
-#: share/meta-task/compssUsers.pl:126
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:142
+#, c-format
msgid "Network Computer server"
-msgstr "Pelayan Rangkaian Lama"
+msgstr ""
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-#: share/meta-task/compssUsers.pl:133
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:150
+#, c-format
msgid "Graphical Environment"
-msgstr "Internet Bergrafik"
+msgstr ""
-#: share/meta-task/compssUsers.pl:135
-#, fuzzy, c-format
-msgid "KDE Workstation"
-msgstr "Menu KDE"
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:153
+#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
-msgstr "Desktop Persekitaran asas"
+msgstr ""
-#: share/meta-task/compssUsers.pl:140
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:158
+#, c-format
msgid "GNOME Workstation"
-msgstr "Gnome-Breakout"
+msgstr ""
-#: share/meta-task/compssUsers.pl:141
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
-msgstr "A pengguna dan"
+msgstr ""
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Persekitaran Desktop"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "A pengguna dan"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
-#: share/meta-task/compssUsers.pl:150
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
msgid "Other Graphical Desktops"
-msgstr "Pada Semua Desktop"
+msgstr ""
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utiliti"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
msgid "SSH Server"
-msgstr "Pelayan FTP"
+msgstr ""
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Alatan tetapan pelayan dan klien fax"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Aplet pengawas rangkaian"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Galaxy"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Sila tetapkan pelayan PXE"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -673,349 +798,348 @@ msgstr ""
"dengan baik.\n"
"Teruskan atas risiko anda."
-#: steps.pm:443
-#, fuzzy, c-format
+#: steps.pm:469
+#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
"\"\n"
-msgstr "on"
+msgstr ""
#: steps_auto_install.pm:71 steps_stdio.pm:27
-#, fuzzy, c-format
+#, c-format
msgid "Entering step `%s'\n"
-msgstr "Langkah pertama"
+msgstr ""
#: steps_curses.pm:22
-#, fuzzy, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux Update"
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr ""
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
-#, fuzzy, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Sistem aplet desktop bagi GNOME"
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Kamus Lazim:"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Persekitaran Desktop"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Persekitaran Desktop"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Persekitaran Desktop"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
-#, fuzzy, c-format
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
msgid "Package Group Selection"
-msgstr "Barisatas pilihan (toggle)"
+msgstr ""
-#: steps_gtk.pm:336 steps_interactive.pm:623
-#, fuzzy, c-format
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
msgid "Individual package selection"
-msgstr "Barisatas pilihan (toggle)"
+msgstr ""
-#: steps_gtk.pm:360 steps_interactive.pm:544
-#, fuzzy, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Saiz lajur automatik"
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
-#, fuzzy, c-format
-msgid "Bad package"
-msgstr "Pelihat Pakej"
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr ""
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versi: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Saiz: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr ""
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr ""
-#: steps_gtk.pm:444
-#, fuzzy, c-format
+#: steps_gtk.pm:466
+#, c-format
msgid "due to missing %s"
-msgstr "&Lompat ke hiperlink"
+msgstr "kerana kehilangan %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "kerana ketidakpuasan %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "cuba untuk menaikkan %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "untuk menyimpan %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-#: steps_gtk.pm:455
-#, fuzzy, c-format
+#: steps_gtk.pm:477
+#, c-format
msgid "The following packages are going to be installed"
msgstr ""
-"Untuk memenuhi kebergantungan, %d pakej berikut perlu dipasang:\n"
-"%s\n"
-#: steps_gtk.pm:456
-#, fuzzy, c-format
+#: steps_gtk.pm:478
+#, c-format
msgid "The following packages are going to be removed"
msgstr ""
-"Untuk memenuhi kebergantungan, %d pakej berikut perlu dipasang:\n"
-"%s\n"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr ""
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr ""
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr ""
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr ""
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Pasang"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Barisatas pilihan (toggle)"
+msgstr ""
-#: steps_gtk.pm:499
-#, fuzzy, c-format
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
msgid "Updating package selection"
-msgstr "Barisatas pilihan (toggle)"
+msgstr ""
-#: steps_gtk.pm:504
-#, fuzzy, c-format
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
msgid "Minimal install"
-msgstr "Pasang plugin baru"
+msgstr ""
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Pengurusan Perisian"
-#: steps_gtk.pm:517 steps_interactive.pm:429
-#, fuzzy, c-format
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
msgid "Choose the packages you want to install"
-msgstr "Pilih alatan yang anda hendak guna"
+msgstr ""
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Memasang"
-#: steps_gtk.pm:564
-#, fuzzy, c-format
+#: steps_gtk.pm:590
+#, c-format
msgid "No details"
-msgstr "Maklumat lanjut Susunatur"
+msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Masa Himpun"
+msgstr ""
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "Pelihat Pakej"
-msgstr[1] " Pakej"
+msgstr[0] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Ringkasan"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Buat konfigurasi"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
msgid "not configured"
-msgstr "Tiada"
-
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Barisatas pilihan (toggle)"
+msgstr ""
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
-#, fuzzy, c-format
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
msgid "Copy whole CDs"
-msgstr "Main CD audio"
+msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Ralat telah berlaku"
-#: steps_interactive.pm:104
-#, fuzzy, c-format
+#: steps_interactive.pm:105
+#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Sila pilih jenis logmasuk anda:"
+msgstr ""
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "penuh"
+msgstr ""
-#: steps_interactive.pm:144
-#, fuzzy, c-format
+#: steps_interactive.pm:153
+#, c-format
msgid "Install/Upgrade"
-msgstr "Pasang plugin baru"
+msgstr ""
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr ""
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Katalaluan diperlukan, ini adalah dokumen yang dienkrip"
+msgstr "Pasang"
-#: steps_interactive.pm:152
-#, fuzzy, c-format
+#: steps_interactive.pm:161
+#, c-format
msgid "Upgrade %s"
-msgstr "Naiktaraf"
+msgstr ""
-#: steps_interactive.pm:170
-#, fuzzy, c-format
+#: steps_interactive.pm:184
+#, c-format
msgid "Encryption key for %s"
-msgstr "&Cari Bantuan"
+msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Pemasangan sekecil mungkin"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1024,32 +1148,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, fuzzy, c-format
-msgid "Configuring IDE"
-msgstr "IDE Anjuta"
-
-#: steps_interactive.pm:288
-#, fuzzy, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr "Tidak Install dalam"
+msgid "CD/DVD"
+msgstr ""
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr "Tidak Install dalam"
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1058,160 +1167,197 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-#: steps_interactive.pm:386
-#, fuzzy, c-format
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
msgid "Looking for available packages..."
msgstr ""
-"Tiada penerangan didapati untuk %s.\n"
-"\n"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
-msgstr "on."
+msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Muatan"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Simpan"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Extension &fail:"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Barisatas pilihan (toggle)"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
-#: steps_interactive.pm:574
-#, fuzzy, c-format
+#: steps_interactive.pm:576
+#, c-format
msgid "Type of install"
-msgstr "Jenis per&nomboran:"
+msgstr ""
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-#: steps_interactive.pm:580
-#, fuzzy, c-format
+#: steps_interactive.pm:582
+#, c-format
msgid "With X"
-msgstr "Dengan penghujung:"
+msgstr ""
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Memasang pakej %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
-#, fuzzy, c-format
+#: steps_interactive.pm:584
+#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "asas"
+msgstr ""
-#: steps_interactive.pm:583
-#, fuzzy, c-format
+#: steps_interactive.pm:585
+#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "tidak"
+msgstr ""
-#: steps_interactive.pm:638
-#, fuzzy, c-format
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
+#, c-format
msgid "Preparing installation"
-msgstr "Pemasangan sekecil mungkin"
+msgstr ""
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Memasang pakej %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Tedapat ralat menyusun pakej:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Teruskan juga?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Ulangcuba"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Langkau pakej ini"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Langkau semua pakej dari media \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Kembali ke pemilihan pakej dan media"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Tedapat ralat memasang pakej %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Tetapan pasca pemasangan"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Kemaskini"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Gagal apabila menambah media"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1233,125 +1379,97 @@ msgstr ""
"\n"
"Adakah anda mahu memasang kemaskini tersebut?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s pada %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Perkakasan"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Kad bunyi"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr ""
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Tiada kad bunyi dikesan. Cuba \"harddrake\" selepas pemasangan."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Antaramuka Bergrafik"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Rangkaian & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proksi"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "ditetapkan"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Tahap Keselamatan"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "dimatikan"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "Menyediakan pemuatboot..."
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"Anda kelihatan mempunyai mesin lama atau yang tidak diketahui, pemuat boot "
-"yaboot tidak akan berfungsi untuk anda. Pemasangan akan diteruskan, tetapi "
-"anda perlu menggunakan BootX atau sebarang cara lain untuk memboot mesin "
-"anda. Hujah kernel untuk sistemfail root adalah: root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Masukkan cakera liut kosong dalam pemacu %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Mencipta cakera liut auto pasang..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1359,12 +1477,12 @@ msgid ""
"Do you really want to quit now?"
msgstr ""
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Tahniah"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Boot semula"
@@ -1459,13 +1577,6 @@ msgid ""
"Users"
msgstr "Pengguna"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rangkaian"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1507,62 +1618,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Keluar"
-
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Extension &fail:"
-
-#, fuzzy
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr "default Masuk"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Persekitaran Desktop"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Tidak boleh menghubungi mirror %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Jana cakera liut auto pasang"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Auto pasang boleh dijadikan automatik sepenuhnya jika mahu,\n"
-#~ "dalam keadaan tersebut ia akan mengambilalih pemacu keras!!\n"
-#~ "(ia dimaksudkan untuk memasang pada komputer lain).\n"
-#~ "\n"
-#~ "Anda mungkin mahu untuk mengulang semula pemasangan.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Main semula"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Simpan pilihan pakej"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Anda hendak menggunakan aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Ralat memasang aboot, \n"
-#~ "cuba untuk memaksa pemasangan walaupun jika ia memusnahkan partisyen "
-#~ "pertama?"
diff --git a/perl-install/install/share/po/mt.po b/perl-install/install/share/po/mt.po
index dfe90ea47..8229642f3 100644
--- a/perl-install/install/share/po/mt.po
+++ b/perl-install/install/share/po/mt.po
@@ -1,54 +1,83 @@
-# translation of mt.po to Maltese
-# translation of DrakX-mt.po to Maltese
-# Copyright (C) 2002,2003, 2004 Free Software Foundation, Inc.
-# Ramon Casha <ramon.casha@linux.org.mt>, 2002,2003, 2004.
-# Ramon Casha <rcasha@waldonet.net.mt>, 2003.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Ramon Casha <ramon.casha@linux.org.mt>, 2002-2004
+# Ramon Casha <rcasha@waldonet.net.mt>, 2003
msgid ""
msgstr ""
-"Project-Id-Version: mt\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2004-10-04 18:45+0200\n"
-"Last-Translator: Ramon Casha <ramon.casha@linux.org.mt>\n"
-"Language-Team: Maltese <mt@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Maltese (http://www.transifex.com/MageiaLinux/mageia/language/"
+"mt/)\n"
+"Language: mt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
+"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n==0 || ( n%100>1 && n"
+"%100<11) ? 1 : (n%100>10 && n%100<20 ) ? 2 : 3);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Għandek iżjed sorsi supplimentari?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -57,117 +86,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Network (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Network (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
-msgstr "URL tal-mera?"
+msgid "NFS setup"
+msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
msgstr ""
-"Qed nikkuntattja l-website ta' Mandriva Linux biex nikseb lista tal-mirja "
-"disponibbli"
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Direttorju"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr "Ma nistax insib fajl hdlist fuq din il-mera"
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
msgstr ""
-"Qed nikkuntattja l-website ta' Mandriva Linux biex nikseb lista tal-mirja "
-"disponibbli"
-#: any.pm:197
+#: any.pm:327
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Agħżel mera minn fejn trid iġġib il-pakketti"
+msgid "Tainted Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:329
#, c-format
-msgid "NFS setup"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:228
+#: any.pm:367
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:232
+#: any.pm:368
#, c-format
-msgid "Hostname missing"
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:233
+#: any.pm:419
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:237
+#: any.pm:420
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains non free software.\n"
msgstr ""
-#: any.pm:238
+#: any.pm:421
#, c-format
-msgid "Directory"
-msgstr "Direttorju"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
-#: any.pm:260
+#: any.pm:422
#, c-format
-msgid "Supplementary"
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
msgstr ""
-#: any.pm:295
+#: any.pm:423
#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Ma nistax insib fajl hdlist fuq din il-mera"
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
-#: any.pm:334
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Qed naqra l-pakketti diġà nstallati..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Qed insib pakketti x'naġġorna"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -180,87 +239,87 @@ msgstr ""
"\n"
"Żgur li trid tneħħi dawn il-pakketti?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Problema fil-qari tal-fajl %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "- %s tneħħa\n"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "NFS"
-msgstr "PFS"
+msgstr ""
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Network"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Jekk jogħġbok agħżel wieħed"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Fajl diġà jeżisti. Tuża lilu?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permess miċħud"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "ġie miżjud is-sors %s"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Ma nistax nieħu ritratti tal-iskrin qabel toħloq il-partizzjonijiet"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Ir-ritratti jkunu disponibbli wara l-installazzjoni f' %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Qed ninstalla"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfigurazzjoni"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Trid ukoll tifformattja %s"
@@ -284,25 +343,25 @@ msgstr "Qed intella' n-network"
msgid "Bringing down the network"
msgstr "Qed inniżżel in-network"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Għaddej l-għarfien"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -329,82 +388,98 @@ msgstr "tajjeb"
msgid "maybe"
msgstr "forsi"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Inqalgħet problema"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Inqalgħet problema fatali: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d tranżazzjonijiet ta' installazzjoni fallew"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Qed jinstalla il-pakkett %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Workstation"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Kompjuter tal-Uffiċċju"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Programmi tal-uffiċċju: wordprocessors (OpenOffice.org Writer, Kword), "
-"spreadsheet (OpenOffice.org Calc, Kspread) eċċ"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programmi tal-uffiċċju: wordprocessors (kword, abiword), spreadsheet "
-"(kspread, gnumeric) eċċ"
+"Programmi tal-uffiċċju: wordprocessors (LibreOffice Writer, Kword), "
+"spreadsheet (LibreOffice Calc, Kspread) eċċ"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Logħob"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programmi ta' divertiment: logħob tal-arcaDES, karti, strateġija eċċ"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedja"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programmi għad-daqq u editjar ta' awdjo u video"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -412,193 +487,193 @@ msgid ""
msgstr ""
"Sett għodda biex taqra u tibgħat imejl u \"news\", u biex tibbrawżja l-web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Kompjuter fuq network (klijent)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klijenti għal protokolli differenti, eż. SSH"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Għodda biex tiffaċilita l-konfigurazzjoni tal-kompjuter"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Għodda tal-konsol"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Edituri, shells, għodda tal-fajls, terminals"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Żviluppar"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Libreriji, programmi u fajls għal żviluppar C u C++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentazzjoni"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Kotba u \"HOWTO\" dwar il-Linux u Softwer Ħieles"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Sapport ta' programmi ta' terzi partiti"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Server tal-web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "Grupp"
+msgstr ""
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Server Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Gateway tal-internet"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/File/_Ġdid"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Server tal-imejl Postfix"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "Direttorju minn fejn trid tirrestawra"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Server FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "DNS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Server tal-ismijiet tad-dominji"
+msgstr ""
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Server tal-printer"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Server Samba"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Database"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Server tad-database PostgreSQL jew MySQL"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Imejl"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Server tal-imejl Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Server tad-database PostgreSQL jew MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Server tad-database PostgreSQL jew MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Kompjuter Server tan-Network"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Servers NFS, SMB, Proxy, ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Ambjent Grafiku"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Stazzjon KDE"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -607,79 +682,124 @@ msgstr ""
"K Desktop Environment, l-interfaċċja grafika bażi, b'għażla ta' għodda "
"jakkumpanjawha"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Stazzjon GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "Ambjent grafiku b' għażla ta' programmi u għodda faċli"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Desktop"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "Ambjent grafiku b' għażla ta' programmi u għodda faċli"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Desktops Grafiċi Oħrajn"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm, eċċ"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:218
+#, c-format
msgid "Utilities"
-msgstr "Filippini"
+msgstr ""
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Server SSH"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Webcam"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Konfigurazzjoni tat-Terminal Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Monitoraġġ tan-network"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "<b>Prodotti Mandriva</b>"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Ma stajtx nikkonfigura l-printer \"%s\"!"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -690,7 +810,7 @@ msgstr ""
"Inqalgħet problema, imma ma nafx kif nieħu ħsieba sew.\n"
"Tista' tkompli b'riskju tiegħek"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -710,253 +830,258 @@ msgstr "Dieħel fil-pass \"%s\"\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Installazzjoni Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Installazzjoni %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> bejn l-elementi"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Is-sistema hija nieqsa mir-riżorsi. Jista' jkollok problema biex tinstalla \n"
-"l-Mandriva Linux. Jekk jiġri dan, ipprova installazzjoni testwali. Għal "
-"dan,\n"
+"l-%s. Jekk jiġri dan, ipprova installazzjoni testwali. Għal dan,\n"
"agħfas F1 meta titla' s-CD, imbagħad ittajpja \"text\"."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Installazzjoni minima"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Desktop"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Desktop"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Desktop"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Għażla ta' gruppi ta' pakketti"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Agħżel pakketti individwalment"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Daqs totali: %d / %d MB"
+msgid "Unselect All"
+msgstr "Xejn magħżul"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pakkett ħażin"
+msgid "Total size: %d / %d MB"
+msgstr "Daqs totali: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Verżjoni: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Daqs: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Importanza: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Ma tistax tagħżel/tneħħi dan il-pakkett"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "minħabba %s nieqes"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "minħabba %s mhux sodisfatt"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "qed nipprova nippromwovi %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "sabiex inżomm %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Ma tistax tagħżel dan il-pakkett għax ma fadalx biżżejjed spazju għalih"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Dawn huma l-pakketti li se jiġu nstallati"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Dawn huma l-pakketti li se jiġu mneħħija"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Dan il-pakkett huwa kruċjali, ma jistax jitneħħa"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Ma tistax tneħħi l-għażla minn dan il-pakkett, diġà nstallat."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Ma tistax tneħħi l-għażla minn dan il-pakkett. Irid jiġi aġġornat."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Uri l-pakketti magħżula awtomatikament"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installa"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Għażla ta' pakketti"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Qed naġġorna l-għażla ta' pakketti"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Installazzjoni minima"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Maniġġjar ta' softwer"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Agħżel il-pakketti li trid tinstalla"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Qed ninstalla"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Ebda dettalji"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Ħin li fadal "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Qed nieħu stima"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d pakketti"
-msgstr[1] "%d pakketti"
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Sommarju"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Ikkonfigura"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "mhux konfigurat"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Għażla ta' gruppi ta' pakketti"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -965,81 +1090,81 @@ msgstr ""
"Dawn is-sorsi ta' installazzjoni instabu.\n"
"Jekk trid taqbeż uħud minnhom, tista' tneħħi l-marka issa."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Inqalgħet problema"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Jekk jogħġbok agħżel tqassim tat-tastiera"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Din hi lista sħiħa tat-tastieri disponibbli"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Installa/Aġġorna"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Din hija installazzjoni ġdida jew aġġornament?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installa"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Aġġorna %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Ċifrarju għal %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Qed ninstalla"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1048,36 +1173,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Qed nikkonfigura IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"M'hemmx spazju għal bootstrap ta' 1MB. L-installazzjoni se tkompli, imma "
-"biex tħaddem is-sistema trid toħloq partizzjoni bootstrap f' Diskdrake."
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
msgstr ""
-"M'hemmx spazju għal bootstrap ta' 1MB. L-installazzjoni se tkompli, imma "
-"biex tħaddem is-sistema trid toħloq partizzjoni bootstrap f' Diskdrake."
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1092,73 +1198,71 @@ msgstr ""
"Jekk m'għandekx din id-diska, agħfas \"Ikkanċella\" biex taqbeż il-pakketti "
"li qegħdin fuqha."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Qed insib pakketti disponibbli"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Jekk jogħġbok agħżel \"ikteb\" jew \"aqra\" l-għażla tal-pakketti fuq\n"
-"flopi. Il-format huwa l-istess bħal diski flopi ġenerati bl-auto_install."
-#: steps_interactive.pm:443
-#, fuzzy, c-format
+#: steps_interactive.pm:430
+#, c-format
msgid "Load"
-msgstr "XLoad"
+msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Ikteb"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "fajl veru"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Għażla ta' gruppi ta' pakketti"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Id-daqs tal-għażla huwa ikbar mill-ispazju disponibbli"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tip ta' installazzjoni"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1167,87 +1271,126 @@ msgstr ""
"Għadek m'għażilt ebda grupp ta' pakketti\n"
"Jekk jogħġbok agħżel installazzjoni minima li trid:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Bl-XWindows"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Qed jinstalla il-pakkett %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "B' dokumentazzjoni bażika (rakkomandat)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Installazzjoni verament minima (mingħajr urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Qed nipprepara l-installazzjoni"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Qed jinstalla il-pakkett %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Kien hemm problema fl-ordni tal-pakketti:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Trid tkompli xorta?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Ikteb l-għażla ta' pakketti"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Kien hemm problema fl-installazzjoni tal-pakketti:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Konfigurazzjoni ta' wara l-installazzjoni"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Aġġornamenti"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Dawn huma l-pakketti li se jiġu nstallati"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Problema waqt iż-żieda ta' sors"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1270,112 +1413,80 @@ msgstr ""
"\n"
"Trid tinstalla dawn l-aġġornamenti?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s fuq %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Ħardwer"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Kard awdjo"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Għandek kard tal-awdjo ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Ħaddem \"alsaconf\" jew \"sndconfig\" wara l-installazzjoni biex "
-"tikkonfigura l-kard awdjo."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Ebda kard tal-awdjo ma nstabet. Ipprova ħaddem \"harddrake\" wara l-"
-"installazzjoni"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interfaċċja grafika"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Network u internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxies"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "konfigurat"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Livell ta' sigurtà"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewallr"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "attivat"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "mitfi"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Għadek ma kkonfigurajtx X. Żgur trid hekk?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Qed nipprepara l-bootloader"
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Jidher li għandek magna \"OldWorld\" jew mhux \n"
-"magħrufa. Il-bootloader \"yaboot\" m'hux se jaħdem fuqha. \n"
-"L-installazzjoni se tkompli, imma trid tuża BootX biex \n"
-"ittella' l-Linux."
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1384,17 +1495,17 @@ msgstr ""
"F'dan il-livell ta' sigurtà, l-aċċess għall-fajls fuq il-partizzjoni tal-"
"Windows huwa ristrett għall-amministratur."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Daħħal flopi vojta fid-drajv %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Qed jinħoloq flopi awto-installazzjoni"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1405,12 +1516,12 @@ msgstr ""
"\n"
"Trid toħroġ issa?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Prosit"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Irributja"
@@ -1505,13 +1616,6 @@ msgid ""
"Users"
msgstr "Users"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Networking"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1554,139 +1658,15 @@ msgid ""
"Exit"
msgstr "Oħroġ"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Qed nibgħat fajls..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Int għażilt dan is-server/s: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Dawn is-servers huma attivati impliċitament. M'għandhom ebda problemi "
-#~ "ta'\n"
-#~ "sigurtà magħrufa, imma jistgħu jinstabu ġodda minn żmien għal żmien. "
-#~ "Għalhekk,\n"
-#~ "importanti li żżommhom aġġornati.\n"
-#~ "\n"
-#~ "\n"
-#~ "Żgur li trid tinstalla dawn is-servers?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Desktop"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Qed nikkuntattja l-mera biex nikseb lista tal-pakketti disponibbli"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Ma stajtx nikkuntattja l-mera %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Oħloq flopi awto-installa"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "L-awto-installazzjoni tista' tkun totalment awtomatizzata\n"
-#~ "jekk trid. F'dak il-każ tieħu l-ħard disk kollu!!\n"
-#~ "(dan huwa ntenzjonat għal installazzjoni fuq kompjuter ġdid)\n"
-#~ "\n"
-#~ "Forsi tippreferi tuża \"replay\" tal-installazzjoni.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Replay"
-
-#~ msgid "Automated"
-#~ msgstr "Awtomatizzata"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Ikteb l-għażla ta' pakketti"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Trid tuża \"aboot\"?"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL tal-mera?"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Problema fl-installazzjoni ta' aboot.\n"
-#~ "trid tipprova timponi l-installazzjoni anke jekk tħassar l-ewwel "
-#~ "partizzjoni?"
-
-#~ msgid "All"
-#~ msgstr "Kollha"
-
-#~ msgid "TV card"
-#~ msgstr "Kard TV"
-
-#~ msgid "Boot"
-#~ msgstr "Boot"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Awtentikazzjoni"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d pakketti"
-#~ msgstr[1] "%d pakketti"
+#~ "Qed nikkuntattja l-website ta' %s biex nikseb lista tal-mirja disponibbli"
-#~ msgid "%d packages"
-#~ msgstr "%d pakketti"
-
-#~ msgid "Language"
-#~ msgstr "Agħżel il-lingwa"
-
-#~ msgid "License"
-#~ msgstr "Liċenzja"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Agħżel klassi ta' installazzjoni"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Qed nieħu stima"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Agħżel pakketti biex tinstalla"
-
-#~ msgid "Users"
-#~ msgstr "Users"
-
-#~ msgid "Networking"
-#~ msgstr "Networking"
-
-#~ msgid "Configure X"
-#~ msgstr "Ikkonfigura X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Ma nistax naċċessa moduli tal-kernel li jikkorrispondu għall-kernel (fajl "
-#~ "%s nieqes). Dan normalment ifisser li l-flopi mhuwiex sinkronizzat mal- "
-#~ "installazzjoni. Jekk jogħġbok oħloq flopi ġdida biex tistartja fuqha."
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Agħżel mera minn fejn trid iġġib il-pakketti"
diff --git a/perl-install/install/share/po/nb.po b/perl-install/install/share/po/nb.po
index 3eb538d01..0e7f62aa2 100644
--- a/perl-install/install/share/po/nb.po
+++ b/perl-install/install/share/po/nb.po
@@ -1,68 +1,94 @@
-# translation of nb.po to Norwegian Bokmål
-# translation of nb.po to
-# translation of DrakX-nb.po to
-# KTranslator Generated File
-# Translation file of Mandriva Linux graphic install
-# Copyright (C) 1999 Mandriva
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Terje Bjerkelia <terje@bjerkelia.com>, 1999-2000.
-# Andreas Bergstrøm <abergstr@halden.net>, 2000.
-# Kenneth Rørvik <kenneth@argon.no-ip.com>, 2003.
-# Per Øyvind Karlsen <peroyvind@sintrax.net>, 2003, 2004.
-# Keld Simonsen <keld@dkuug.dk>, 2004, 2007.
-# Per Øyvind Karlsen <peroyvind@mandrivalinux.org>, 2004, 2005.
-# Eskild Hustvedt <eskild@goldenfiles.com>, 2004.
-# Eskild Hustvedt <zerodogg@skolelinux.no>, 2004, 2005.
-# Per Øyvind Karlsen <pkarlsen@mandriva.com>, 2005, 2006.
-# Marius Laache <blakern_@hotmail.com>, 2007.
-# Per Øyvind Karlsen <peroyvind@mandriva.org>, 2007.
-# Olav Dahlum <odahlum@gmail.com>, 2009.
+# Translators:
+# Andreas Bergstrøm <abergstr@halden.net>, 2000
+# Eskild Hustvedt <eskild@goldenfiles.com>, 2004
+# Eskild Hustvedt <zerodogg@skolelinux.no>, 2004-2005
+# Karl Morten Ramberg <karl.m.ramberg@gmail.com>, 2017-2020,2022
+# Keld Simonsen <keld@dkuug.dk>, 2004,2007
+# Kenneth Rørvik <kenneth@argon.no-ip.com>, 2003
+# Marius Laache <blakern_@hotmail.com>, 2007
+# Olav Dahlum <odahlum@gmail.com>, 2009-2010
+# Per Øyvind Karlsen <peroyvind@mandrivalinux.org>, 2004-2005
+# Per Øyvind Karlsen <peroyvind@mandriva.org>, 2007
+# Per Øyvind Karlsen <peroyvind@sintrax.net>, 2003-2004
+# Per Øyvind Karlsen <pkarlsen@mandriva.com>, 2005-2006
+# Stig-Ørjan Smelror <smelror@gmail.com>, 2017
msgid ""
msgstr ""
-"Project-Id-Version: nb\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-08-27 02:44+0200\n"
-"Last-Translator: Olav Dahlum <odahlum@gmail.com>\n"
-"Language-Team: Norwegian Bokmål <cooker-i18n@mandrivalinux.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Karl Morten Ramberg <karl.m.ramberg@gmail.com>, "
+"2017-2020,2022\n"
+"Language-Team: Norwegian Bokmål (http://app.transifex.com/MageiaLinux/mageia/"
+"language/nb/)\n"
+"Language: nb\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Bli med oss!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Gjør det ditt!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Ditt valg!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Kontorverktøy"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Hjemmeunderholdning"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "For barn"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "For familier"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "For utviklere"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Takk!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Vær fri!"
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Har du flere ekstra medier?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -75,94 +101,57 @@ msgstr ""
"\n"
"Har du flere installasjonsmedier å sette opp?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Nettverk (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Nettverk (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Nettverk (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Nettadresse til speilet?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL må starte med ftp:// eller http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Kontakter nettstedet til Mandriva Linux for å få listen over tilgjengelige "
-"speil … "
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Klarte ikke å kontakte nettstedet til Mandriva Linux for å få listen over "
-"tilgjengelige speil"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Velg et speil som pakkene kan hentes fra"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS-oppsett"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Tast inn vertsnavnet og mappen til ditt NFS-medie"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Vertsnavn mangler"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Mappenavnet må starte med \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Vertsnavn til NFS-monteringen ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
-msgstr "Katalog"
+msgstr "Mappe"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Ekstra"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -171,23 +160,98 @@ msgstr ""
"Kan ikke finne pakkelistefil på dette speilet. Kontrollér at adressen er "
"riktig."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Kjerneutgivelse"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Smittetutgivelse"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Ikke-friutgivelse"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Maskinvaren i din maskin trenger enkelte ikke-fri \"firmware\" for at de "
+"frie programvaredriverne skal fungere."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Du bør aktivere \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" inneholder de enkelte delene av systemet og dets applikasjoner"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" inneholder ikke-fri programvare\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Det inneholder også \"firmware\" som kreves for at enkelte enheter skal "
+"fungere. ( feks noen ATI/AMD grafikkort, noen nettverkskort, noen RAID "
+"kort....)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" inneholder programvare som ikke kan distribueres i enkelte land pga "
+"programvarepatenter."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Det inneholder også programvare fra \"%s\" ombygging med tilleggsegenskaper."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Her kan du aktivere flere media hvis du vil."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Dette mediet har pakkeoppdateringer for medium \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Ser på pakker som allerede er installert … "
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Finner pakker som skal oppgraderes … "
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Fjerner pakker før oppgradering … "
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -201,87 +265,87 @@ msgstr ""
" \n"
"Ønsker du å fjerne disse pakkene?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Feil ved lesing av fil %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "De(n) følgende disken(e) fikk nytt navn:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (tidligere kalt %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Nettverk"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Velg et medie"
+msgstr "Velg et medium"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Filen eksisterer allerede. Overskriv?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Adgang nektet"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Ugyldig NFS-navn"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Feil på media %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Jeg kan ikke ta skjembilder før partisjonering."
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Skjermbilder vil være tilgjengelig etter installasjon i %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Installasjon"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Oppsett"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Du må også formatere %s"
@@ -305,22 +369,22 @@ msgstr "Henter opp nettverket"
msgid "Bringing down the network"
msgstr "Tar ned nettverket"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Vennligst vent, henter fil"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "kunne ikke legge til medium"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopiér noen pakker på disken for framtidig bruk"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopiering pågår"
@@ -350,7 +414,22 @@ msgstr "bra"
msgid "maybe"
msgstr "kanskje"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Henter pakkeinformasjon fra XML metadata..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr "Ingen xml-info for mediet «%s», bare delvis resultat for pakke %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Ingen beskrivelse"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -359,270 +438,271 @@ msgstr ""
"Noen pakker krevet av %s kan ikke installeres\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "En feil oppstod:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Det oppsto en kritisk feil: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Ikke spør igjen"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d mislykket installasjonstransaksjon"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Installasjon av pakker feilet:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Arbeidsstasjon"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Kontorarbeidsstasjon"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Kontorstøtteprogrammer: tekstbehandlere (OpenOffice.org Writer, Kword), "
-"regneark (OpenOffice.org Calc, Kspread), PDF-framvisere, etc"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Kontorstøtteprogrammer: tekstbehandlere (kword, abiword), regneark (kspread, "
-"gnumeric), pdf-framvisere etc"
+"Kontorstøtteprogrammer: tekstbehandlere (LibreOffice Writer, Kword), "
+"regneark (LibreOffice Calc, Kspread), PDF-framvisere, etc"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Spillstasjon"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Underholdningsprogrammer: arkade, brettspill, strategi, etc"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimediastasjon"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Lyd- og videoavspilling/redigeringsprogrammer"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internettstasjon"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Sett med verktøy for å lese og sende e-post og njus (mutt, tin..) og til å "
-"surfe på nettet"
+"Et sett med verktøy for å lese og sende e-post og nyheter (mutt, tin..) og "
+"til å surfe på nettet"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Nettverksmaskin (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klienter for forskjellige protokoller inkludert ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Verktøy for å forenkle oppsettet av maskinen din"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsollverktøy"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Tekstprogrammer, skall, filverktøy, terminaler"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Utvikling"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "C- og C++-utviklingsbibliotek, -programmer og include-filer"
+msgstr "C- og C++-utviklingsbibliotek, -programmer og inkluderings-filer"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentasjon"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Bøker og Howto's om Linux og fri programvare"
+msgstr "Bøker og veiledninger om Linux og fri programvare"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Støtte for tredjeparts programvare"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
-msgstr "Webtjener"
+msgstr "Webserver"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Gruppevare"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
-msgstr "Kolab-tjener"
+msgstr "Kolab-server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Brannmur/ruter"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internett-gateway"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
-msgstr "E-post/Njus"
+msgstr "E-post/Nyheter"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix e-posttjener, Inn njustjener"
+msgstr "Postfix e-postserver, Inn nyhetsserver"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "Katalogtjener"
+msgstr "Katalogserver"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
-msgstr "FTP-tjener"
+msgstr "FTP-server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Domenenavn- og nettverksinformasjons-tjener"
+msgstr "Domenenavn- og nettverksinformasjons-server"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Fil- og Skriverdelingstjener"
+msgstr "Fil- og Skriverdelingsserver"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
-msgstr "NFS-Tjener, Samba-tjener"
+msgstr "NFS-server, Samba-server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Database"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL- og MySQL-databasetjener"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL- og MariaDB-databaseserver"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "E-post"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Postfix e-posttjener"
+msgstr "Postfix e-postserver"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL eller MySQL-databasetjener"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL eller MariaDB-databaseserver"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Nettverksmaskintjener"
+msgstr "Nettverksserver"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "NFS-tjener, SMB-tjener, Proxy-tjener, SSH-tjener"
+msgstr "NFS-server, SMB-server, Proxy-server, SSH-server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafisk miljø"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE-arbeidsstasjon"
+msgid "Plasma Workstation"
+msgstr "Plasma arbeidsstasjon"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -631,12 +711,12 @@ msgstr ""
"K Desktop Environment, grunnleggende grafisk miljø med en samling av "
"passende verktøy"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME-arbeidsstasjon"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -645,69 +725,114 @@ msgstr ""
"Et grafisk miljø med et brukervennlig sett av programmer og "
"skrivebordsverktøy"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE-skrivebord"
+msgid "Xfce Workstation"
+msgstr "Xfce Arbeidsstasjon"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Et lettvekts og raskt grafisk miljø med et brukervennlig sett av programmer "
-"og skrivebordsverktøy"
+"Et lettere grafisk miljø med brukervennlige applikasjoner og "
+"skrivebordsverktøy"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE arbeidsstasjon"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon arbeidsstasjon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Et grafisk miljø basert på GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt Skrivebord"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "En neste generasjons QT portering av lettvekts skrivebordsoppsettet"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment Skrivebord"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Et lettvekts raskt grafisk miljø "
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE-skrivebord"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Et lettvekts raskt grafisk miljø"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Andre grafiske skrivebord"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, etc"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Verktøy"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
-msgstr "SSH-tjener"
+msgstr "SSH-server"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Webmin Fjernadministrasjonstjener"
+msgstr "Webmin Fjernadministrasjonsserver"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Nettverks-verktøy/overvåkning"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Overvårkningsverktøy, prosessbokføring, tcpdump, nmap, … "
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva-veivisere"
+msgid "Mageia Wizards"
+msgstr "Mageia-veivisere"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
-msgstr "Veivisere til å sette opp tjener"
+msgstr "Veivisere for å sette opp server"
#: steps.pm:85
#, c-format
@@ -715,17 +840,17 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"En feil oppsto, men jeg vet ikke hvordan jeg skal håndtere dette på en pen "
-"måte.\n"
+"En feil oppsto, men jeg vet ikke hvordan jeg skal håndtere dette på en "
+"korrekt måte.\n"
"Fortsett på eget ansvar."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Noen viktige pakker ble ikke installert ordentlig.\n"
"Det er noe galt med enten den optiske enheten eller CD-ROM-platen.\n"
@@ -734,258 +859,262 @@ msgstr ""
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Entrer trinn `%s'\n"
+msgstr "Går inn i trinn `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux-installasjon %s"
+msgid "%s Installation %s"
+msgstr "%s-installasjon %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> mellom elementene"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "Xorg-tjeneren er treg å starte. Vennligst vent … "
+msgstr "Xorg-serverer er treg til å starte. Vennligst vent … "
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Systemet ditt har lite ressurser. Du kan muligens oppleve noen problemer\n"
-"ved installering av Mandriva Linux. Hvis dette skjer kan du prøve "
-"installasjon i tekstmodus\n"
+"ved installering av %s. Hvis dette skjer kan du prøve installasjon i "
+"tekstmodus\n"
"i stedet. Trykk `F1' ved oppstart av CD-ROM, skriv så `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Medievalg"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Installer Mandriva KDE-skrivebord"
+msgid "Install %s Plasma Desktop"
+msgstr "Innsaller %s Plasma skrivebord"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Installer Mandriva GNOME-skrivebord"
+msgid "Install %s GNOME Desktop"
+msgstr "Installer %s GNOME-skrivebord"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Skreddersydd installasjon"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE-skrivebord"
+msgid "Plasma Desktop"
+msgstr "Plasma skrivebord"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME-skrivebord"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Tilpasset skrivebord"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Her er et forhåndsbilde av '%s'-skrivebordet."
+msgstr "Her er en forhåndsvisning av skrivebordet «%s»."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Klikk på bildene for å se et større forhåndsbilde"
+msgstr "Klikk på bildene for å se en større forhåndsvisning"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Valg pakkegruppe"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Individuelt pakkevalg"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Total størrelse: %d / %d MB"
+msgid "Unselect All"
+msgstr "Velg bort alle"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Ugyldig pakke"
+msgid "Total size: %d / %d MB"
+msgstr "Total størrelse: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versjon: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Størrelse: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Viktighet: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Du kan ikke velge (bort) denne pakken"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "pga. manglende %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "pga. utilfredsstilt %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "prøver å promotere %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "for å beholde %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Du kan ikke velge denne pakken da det ikke er igjen nok plass til å "
"installere den"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Følgende pakker vil bli installert"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Følgende pakker vil bli fjernet"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Dette er en obligatorisk pakke, den kan ikke fjernes"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Du kan ikke fjerne denne pakken. Den er allerede installert"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Du kan ikke fjerne denne pakken. Den må oppgraderes"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Vis automatisk valgte pakker"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installer"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Last inn/lagre utvalg"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Oppdaterer pakkevalg"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Veksle mellom hierarkisk og flat pakkeliste"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimal installasjon"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Programvarehåndtering"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Velg pakkene du ønsker å installere"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Installerer"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Ingen detaljer"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Tid som gjenstår:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(beregner … )"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pakke"
msgstr[1] "%d pakker"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Oppsummering"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Sett opp"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "ikke satt opp"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Velg media"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -994,12 +1123,12 @@ msgstr ""
"Følgende installasjonsmedia har blitt funnet.\n"
"Hvis du vill hoppe over noen av de kan du velge de vekk nå."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Du har valget mellom å kopiere innholdet på CDene til harddisken før "
@@ -1007,72 +1136,72 @@ msgstr ""
"Den vil da fortsette fra harddisken og pakkene vil forbli tilgjengelige når "
"systemet er fullstendig installert."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopiér hele CDer"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "En feil oppstod"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Velg ditt tastaturoppsett"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Her er den komplette listen over tilgjengelige tastatur"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Installer/Oppgrader"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Er dette en installasjon eller en oppgradering?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installér"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Oppgrader %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Krypteringsnøkkel for %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Avbryt installasjonen, start systemet på nytt"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Ny installasjon"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Oppgrader forrige versjon (ikke anbefalt)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1080,46 +1209,24 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Installasjonsprogrammet har oppdaget at du har et Mandriva Linux-system som "
-"ikke kan oppgraderes til %s.<br> <br> En ny installasjon som fjerner den "
-"forrige er anbefalt.<br> <br> Advarsel: du bør sikkerhetskopiere alle dine "
-"personlige data før du velger \"Ny installasjon\".Installasjonsprogrammet "
-"har oppdaget at du har et Mandriva Linux-system som ikke kan oppgraderes til "
-"%s.<br> <br> En ny installasjon som fjerner den forrige er anbefalt.<br> "
-"<br> Advarsel: du bør sikkerhetskopiere alle dine personlige data før du "
-"velger \"Ny installasjon\"."
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Setter opp IDE"
+"Installereren har oppdaget at ditt installerte Linux system ikke kunne bli\n"
+"oppgradert til %s på en sikker måte.\n"
+"Nyinstallering anbefales\n"
+"\n"
+"Advarsel: Du bør ta sikkerhetskopi av alle dine personlige data før "
+"installering. "
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Det er ikke plass for 1 MB bootstrap! Installasjonen vil fortsette, men for "
-"å boote systemet ditt, må du lage en bootstrap-partisjon i DiskDrake"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Du må lage en PPC PReP Boot bootstrap! Installasjonen vil fortsette, men for "
-"å kunne starte systemet ditt vil du måtte opprette en bootstrap-partisjon i "
-"DiskDrake"
+msgid "Configuring CD/DVD"
+msgstr "Setter opp CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1132,21 +1239,21 @@ msgstr ""
"Sett inn CDen merket «%s» i stasjonen og trykk Ok når du er ferdig.\n"
"Hvis du ikke har den, trykk Avbryt for å unngå installasjon fra denne CDen."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Søker etter tilgjengelige pakker"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Systemet har ikke nok gjenværende diskplass for installasjon eller "
-"oppgradering (%dMB > %dMB)"
+"Systemet har ikke nok ledig diskplass for installasjon eller oppgradering "
+"(%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1155,54 +1262,54 @@ msgstr ""
"Velg lagre eller hent pakkevalg.\n"
"Formatet er det samme som for auto_install-genererte filer."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Last inn"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Lagre"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Ødelagt fil"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Skrivebordsvalg"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-"Her kan du velge skrivebordsprofilen for systemet: KDE, GNOME eller "
-"skreddersydd"
+"Her kan du velge skrivebordprofilen for systemet; «KDE», «GNOME» eller "
+"«Skreddersydd»."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Valgt størrelse er større enn tilgjengelig plass"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Type installasjon"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1211,87 +1318,130 @@ msgstr ""
"Du har ikke valgt noen pakkegrupper.\n"
"Velg den minimale installasjonen du ønsker:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Med X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Installerer pakke %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Installer anbefalte pakker"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Med grunnleggende dokumentasjon (anbefalt!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Virkelig minimal installasjon (uten urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Klargjør oppgradering..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Forbereder installasjon"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Installerer pakke %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Det var en feil ved endring av pakkenes rekkefølge:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Fortsett uansett?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Prøv igjen"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Hopp over denne pakken"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Hopp over alle pakker fra media \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Gå tilbake til valg av media og pakker"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Feil under installering av pakke %s"
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Oppsett etter installering"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr "Vennligst forsikre deg om at medie med oppdaterte moduler er i %s"
+msgstr "Forsikre deg om at medie med oppdaterte moduler er i %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Oppdateringer"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Nå har du mulighet til å sette opp online media"
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Dette gjør det mulig å installere oppdateringer"
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"For å sette opp disse media, må du a en aktiv Internet \n"
+"kobling\n"
+"\n"
+".Ønsker du å sette opp media nå?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Den nedlasteren kunne ikke installeres"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Prøve på nytt?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Feil under forsøk på å legge til medium"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1310,112 +1460,82 @@ msgstr ""
"\n"
"Ønsker du å installere oppdateringene?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s på %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Maskinvare"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Lydkort"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Har du et ISA-lydkort?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Kjør «alsaconf» eller «sndconfig» etter installasjonen for å sette opp "
-"lydkortet ditt"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Lydkort ikke oppdaget. Prøv \"harddrake\" etter installasjonen"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafisk grensesnitt"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Nettverk & internett"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Mellomtjenere"
+msgstr "Proxyservere"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "satt opp"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Sikkerhetsnivå"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Brannmur"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktivert"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "deaktiver"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
"Du har ikke satt opp det grafiske grensesnittet Xorg. Er du sikker på at du "
"ikke vil gjøre dette?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Klargjør oppstartslaster … "
+msgid "Preparing initial startup program..."
+msgstr "Forbereder initsialt oppstart program"
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Vennligst vær tålmodig, dette kan ta en stund … "
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Det virker som du har en OldWorld eller ukjent maskin, yaboot-"
-"oppstartslasteren vil ikke virke for deg. Installasjonen vil fortsette, men "
-"du må bruke BootX eller andre måter for å starte din maskin. "
-"Kjerneargumentet for root-filsystemet er: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1424,17 +1544,17 @@ msgstr ""
"I dette sikkerhetsnivået er tilgang til Windows-partisjonen forbeholdt "
"administratoren."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Sett inn en tom diskett i stasjon %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Oppretter diskett for autoinstallasjon … "
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1445,15 +1565,15 @@ msgstr ""
"\n"
"Ønsker du virkelig å avslutte nå?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Gratulerer"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
-msgstr "Restart"
+msgstr "Omstart"
#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
#: steps_list.pm:16
@@ -1545,13 +1665,6 @@ msgid ""
"Users"
msgstr "Brukere"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Nettverk"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1593,34 +1706,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Avslutt"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Du har bestemt deg for å oppgradere systemet ditt til %s. KDE 3.5 ble "
-#~ "oppdaget\n"
-#~ " systemet ditt. Dette installasjonsprogrammet kan ikke ta vare på KDE 3.5 "
-#~ "i en oppgradering. Hvis du velger å fortsette vil KDE 3 byttes ut med KDE "
-#~ "4 og du vil miste alle dine personlige KDE-innstillinger . \n"
-#~ "Vær vennlig å starte systemet på nytt for å oppgradere med Mandrivas "
-#~ "panelverktøy for oppgradering hvis du vil beholde KDE 3.5 og dine "
-#~ "personlige innstillinger.Du har bestemt deg for å oppgradere systemet "
-#~ "ditt til %s. KDE 3.5 ble oppdaget\n"
-#~ " på systemet ditt. Dette installasjonsprogrammet kan ikke ta vare på KDE "
-#~ "3.5 i en oppgradering. Hvis du velger å fortsette vil KDE 3 byttes ut med "
-#~ "KDE 4 og du vil miste alle dine personlige KDE-innstillinger .\n"
-#~ " Vær vennlig å starte systemet på nytt for å oppgradere med Mandrivas "
-#~ "panelverktøy for oppgradering hvis du vil beholde KDE 3.5 og dine "
-#~ "personlige innstillinger."
-
-#~ msgid "Proceed"
-#~ msgstr "Fortsett"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "henting av [%s] feilet"
diff --git a/perl-install/install/share/po/nl.po b/perl-install/install/share/po/nl.po
index 23c93466c..c07830293 100644
--- a/perl-install/install/share/po/nl.po
+++ b/perl-install/install/share/po/nl.po
@@ -1,58 +1,89 @@
-# translation of DrakX.po to Nederlands
-# Dutch translation of DrakX.
-# Copyright (C) 2000, 2005, 2008 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Niels Gras <niels.gras@wanadoo.nl>, 2000.
-# Jeroen ten Berge <j.ten.berge@twinbit.nl>, 2002.
-# Reinout van Schouwen <reinout@gmail.com>, 2002-2009.
-# Peter Bosch <peter.bosch@hccnet.nl>, 2002.
-# Rob Teng <mandrake.tips@free.fr>, 2005, 2008.
+# Translators:
+# Dennis Holierhoek <dennis.hh@hotmail.com>, 2016
+# dragnadh, 2020
+# Jeroen ten Berge <j.ten.berge@twinbit.nl>, 2002
+# Marcel Pol <marcel@timelord.nl>, 2021
+# Marja van Waes, 2023
+# Marja van Waes <marja@mageia.org>, 2013,2015
+# Niels Gras <niels.gras@wanadoo.nl>, 2000
+# Peter Bosch <peter.bosch@hccnet.nl>, 2002
+# Rob Teng <mandrake.tips@free.fr>, 2005,2008
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-10 10:20+0200\n"
-"Last-Translator: Reinout van Schouwen <reinout@gmail.com>\n"
-"Language-Team: Nederlands\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Marja van Waes, 2023\n"
+"Language-Team: Dutch (http://app.transifex.com/MageiaLinux/mageia/language/"
+"nl/)\n"
+"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Uw bureaublad op een USB-stick"
+msgid "Join Us!"
+msgstr "Sluit u bij ons aan"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "De 100%% opensource Mandriva Linux-distributie"
+msgid "Make it yours!"
+msgstr "Maak het u eigen"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Gemakkelijk Linux verkennen met Mandriva One"
+msgid "Your choice!"
+msgstr "Uw keuze"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Een volledig Mandriva Linux-bureaublad, met ondersteuning"
+msgid "Office tools"
+msgstr "Kantoortools"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva-distributies: voor elk wat wils"
+msgid "Home entertainment"
+msgstr "Home-entertainment"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Voor kinderen"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Voor gezinnen"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Voor ontwikkelaars"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Dank u"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Wees Vrij"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Heeft u nog aanvullende media?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -66,119 +97,158 @@ msgstr ""
"\n"
"Heeft u een aanvullend installatiemedium in te stellen?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "cd-rom"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Netwerk (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Netwerk (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Netwerk (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL van de mirror?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL dient te starten met ftp:// of http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Bezig te verbinden met de Mandriva Linux-website om de lijst met beschikbare "
-"mirrors op te halen…"
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Het verbinden met de Mandriva Linux-website om de lijst met beschikbare "
-"mirrors op te halen is mislukt"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Kies een mirror om de pakketten van af te halen"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS-configuratie"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr "Vul de hostnaam en map van uw NFS media in"
+msgstr "Vul de hostnaam en map van uw NFS-media in"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Hostnaam ontbreekt"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Map dient te beginnen met \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Hostnaam van het NFS-koppelpunt?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Map"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Aanvullend"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"Kan hdlist-bestand op deze mirror niet vinden. Controleer of de locatie "
-"klopt."
+"Kan hdlist-bestand op deze spiegelserver niet vinden. Controleer of de "
+"locatie klopt."
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core-uitgave"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted-uitgave"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree-uitgave"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Bepaalde apparatuur in uw machine behoeft niet-vrije firmware alvorens de "
+"vrije stuurprogrammatuur kan werken."
-#: any.pm:334
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "U dient \"%s\" in te schakelen"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" bevat de diverse onderdelen van de systemen en hun programma's"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" bevat niet-vrije software.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Het bevat ook firmware-bestanden welke nodig zijn om bepaalde apparatuur te "
+"laten werken (bijv: bepaalde ATI/AMD-grafische kaarten, bepaalde "
+"netwerkkaarten, bepaalde RAID-kaarten, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" bevat software welke niet in alle landen vrijelijk gedistribueerd kan "
+"worden als gevolg van software patenten."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Het bevat ook software uit \"%s\" welke herbouwd is met additionele "
+"mogelijkheden."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Hier kunt u indien gewenst meerdere media inschakelen."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Dit medium biedt updates voor \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Inventarisatie van reeds geïnstalleerde pakketten…"
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Zoeken naar pakketten om op te waarderen…"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Verwijderen van pakketten vóór opwaardering..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -192,87 +262,87 @@ msgstr ""
"\n"
"Weet u zeker dat u deze pakketten wilt verwijderen?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Fout bij het lezen van bestand %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "De volgende schijf/schijven zijn hernoemd:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (heette voorheen %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Netwerk"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Kies een medium"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Bestand bestaat reeds. Overschrijven?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Toegang geweigerd"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr "Slechte NFS naam"
+msgstr "Slechte NFS-naam"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Ongeldig medium %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Kan geen schermafdruk maken voor het partitioneren"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Schermafdrukken zullen beschikbaar zijn na installatie in %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Installatie"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configuratie"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "U dient tevens %s te formatteren"
@@ -283,7 +353,8 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Sommige hardware op uw computer heeft ''fabrikantsgebonden'' drivers \n"
+"Sommige apparatuur op uw computer heeft ''fabrikantseigen'' "
+"stuurprogramma's \n"
"nodig om te kunnen functioneren. U kunt informatie hierover vinden op: %s"
#: interactive.pm:22
@@ -296,22 +367,22 @@ msgstr "Bezig met opstarten van het netwerk"
msgid "Bringing down the network"
msgstr "Bezig met stoppen van het netwerk"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Even geduld, bestand wordt opgehaald"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "niet in staat medium toe te voegen"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopiëren van enkele pakketten op diskettes voor toekomstig gebruik"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Bezig met kopiëren"
@@ -341,7 +412,23 @@ msgstr "leuk"
msgid "maybe"
msgstr "misschien"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Pakketinformatie wordt uit de XML-metadata geëxtraheerd..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Geen XML-info voor medium ‘%s’, slechts gedeeltelijk resultaat voor pakket %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Geen omschrijving"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -350,75 +437,76 @@ msgstr ""
"Sommige door %s gevraagde pakketten kunnen niet worden geïnstalleerd:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Er is een fout opgetreden:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Er is een fatale fout opgetreden: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Vraag niet nogmaals"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d installatie-transacties mislukt"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Installatie van pakketten mislukt:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Werkstation"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Kantooromgeving"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Kantoorprogramma's: tekstverwerkers (OpenOffice.org Writer, Kword), "
-"rekenbladen (OpenOffice.org Calc, Kspread), PDF-lezers, etc"
+"Kantoorprogramma's: tekstverwerkers (LibreOffice Writer, Kword), rekenbladen "
+"(LibreOffice Calc, Kspread), PDF-lezers, etc"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Kantoorprogramma's: tekstverwerkers (kword, abiword), rekenbladen (kspread, "
-"gnumeric), PDF-lezers, etc"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Game-station"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Amusementsprogramma's: arcade, bordspellen, strategie etc"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedia-station"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Geluids- en video-afspeel- en bewerkingsprogramma's"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet-station"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -427,193 +515,193 @@ msgstr ""
"Verzameling programma's om e-mail en usenet nieuws mee te lezen en te "
"schrijven, en om het Web mee door te bladeren"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Netwerk-computer (client)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Clients voor verschillende protcollen waaronder ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Programma's om de configuratie van uw computer te vergemakkelijken"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Hulpprogramma's voor de opdrachtregel"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editors, shells, bestandsbeheer, terminals"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Ontwikkeling"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C and C++ ontwikkelingsbibliotheken, programma's en include-bestanden"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentatie"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Boeken en Howto's over Linux en Vrije Software"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Linux Standaard-Basis. Ondersteuning voor toepassingen van derden."
+msgstr "Linux Standaard-Basis. Ondersteuning voor programma's van derden."
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Webserver"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab-server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet gateway"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "E-mail/nieuws"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix e-mailserver, Inn newsserver"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Gidsserver"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP-server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Domeinnaam- en Network Information Server"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Gedeelde bestands- en printerserver"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS-server, Samba-server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Database"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL en MySQL database-server"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL en MariaDB database-server"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "E-mail"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix e-mailserver"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL of MySQL database-server"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL of MariaDB database-server"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Netwerk-computer server"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS server, SMB server, Proxy server, ssh server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafische omgeving"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE-werkomgeving"
+msgid "Plasma Workstation"
+msgstr "Plasma-werkstation"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -622,80 +710,127 @@ msgstr ""
"Het K Desktop Environment, de basis-grafische omgeving met een verzameling "
"van bijbehorende programma's"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME-werkomgeving"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-"Een grafische omgeving met gebruikersvriendelijke verzameling toepassingen "
-"en bureaublad-programma's"
+"Een grafische omgeving met gebruikersvriendelijke verzameling programma's en "
+"bureaublad-hulpprogramma's"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE-werkomgeving"
+msgid "Xfce Workstation"
+msgstr "Xfce-werkomgeving"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Een lichtgewicht- en snelle grafische omgeving met gebruiksvriendelijke set "
-"toepassingen en bureaublad-programma's"
+"Een lichtere grafische omgeving met een gebruiksvriendelijke set programma's "
+"en bureaublad-hulpprogramma's"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE-werkomgeving"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon-werkomgeving"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Een op GNOME gebaseerde grafische omgeving"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt-werkomgeving"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Een 'next generation' QT-port van de lichtgewicht grafische omgeving"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment-werkomgeving"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+"Een snelle lichtgewicht grafische omgeving met gebruiksvriendelijke set "
+"programma's en bureaublad-hulpprogramma's"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE-werkomgeving"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Een snelle lichtgewicht grafische omgeving"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Andere grafische omgevingen"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, enz"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Hulpprogramma's"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH-server"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin-server voor configuratie op afstand"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Netwerk-hulpprogramma's/observatie"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Observatieprogramma's, bijhouden van processen, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva-wizards"
+msgid "Mageia Wizards"
+msgstr "Mageia-wizards"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Wizards om server te configureren"
@@ -709,17 +844,17 @@ msgstr ""
"Er is een fout opgetreden waarvoor de juiste afhandeling onbekend is.\n"
"Als u verdergaat, is dit op eigen risico."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Sommige belangrijke pakketen werden niet juist\n"
-"geïnstalleerd. Of uw CD-ROM-speler of uw CD-ROM is defect.\n"
-"Controleer de cdrom op een geïnstalleerde computer met\n"
+"geïnstalleerd. Of uw cd-rom-speler of uw cd-rom is defect.\n"
+"Controleer de cd-rom op een geïnstalleerde computer met\n"
"\"rpm -qpl media/main/*.rpm\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
@@ -729,255 +864,258 @@ msgstr "Overgang naar stap `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux installatie %s"
+msgid "%s Installation %s"
+msgstr "%s Installatie %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> tussen elementen"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "De Xorg-server start langzaam. Even geduld…"
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Uw systeem heeft weinig bronnen beschikbaar. U zou problemen kunnen\n"
-"ondervinden bij het installeren van Mandriva Linux. Als dit gebeurt,\n"
-"kunt u een tekstinstallatie proberen. Om dit te doen, drukt u op `F1'\n"
-"terwijl de CDROM opstart, en dan voert u `text' in."
+"Uw systeem heeft weinig systeembronnen beschikbaar. Het kan zijn dat u "
+"problemen ondervindt bij het installeren van %s. In dat geval kunt u een "
+"tekstinstallatie proberen. Druk 'F1' bij het opstarten van de disc, en toets "
+"dan in: 'text'."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Mediaselectie"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Mandriva KDE-werkomgeving installeren"
+msgid "Install %s Plasma Desktop"
+msgstr "Installeer %s Plasma Desktop"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Mandriva GNOME-werkomgeving installeren"
+msgid "Install %s GNOME Desktop"
+msgstr "Installeer de %s GNOME Desktop"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Aangepaste installatie"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE-werkomgeving"
+msgid "Plasma Desktop"
+msgstr "Plasma-werkomgeving"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Gnome-werkomgeving"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Aangepaste werkomgeving"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Hier is een voorproefje van de '%s'-werkomgeving."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Klik op het beeld voor een grotere versie"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Pakketgroepselectie"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Individuele pakketselectie"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Totale grootte: %d / %d MB"
+msgid "Unselect All"
+msgstr "Alle gedeselecteerd"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Onbruikbaar pakket"
+msgid "Total size: %d / %d MB"
+msgstr "Totale grootte: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versie: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Grootte: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d kB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Belang: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "U kunt dit pakket niet (de)selecteren"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "ten gevolge van ontbrekende %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "ten gevolge van onvoldane %s"
-# Wat wordt hier precies bedoeld?
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "proberen om %s te promoveren"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "om %s te kunnen behouden"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"U kunt dit pakket niet selecteren omdat er te weinig ruimte over is om het "
"te installeren"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "De volgende pakketten zullen geïnstalleerd worden"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "De volgende pakketten zullen gedeïnstalleerd worden"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Dit is een verplicht pakket, het kan niet gedeselecteerd worden"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "U kunt dit pakket niet deselecteren. Het is al geïnstalleerd."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "U kunt dit pakket niet deselecteren. Het moet opgewaardeerd worden."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Automatisch geselecteerde pakketten tonen"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installatie"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Selectie laden/opslaan"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Verversen van pakketselectie"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Wissel tussen hiërarchische en platte lijst van pakketten"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimale installatie"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Softwarebeheer"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Kies de pakketten die u wenst te installeren"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Installeren"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Geen details"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Resterende tijd:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(schatten…)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pakket"
msgstr[1] "%d pakketten"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Overzicht"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configureren"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "niet geconfigureerd"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Mediaselectie"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -986,85 +1124,85 @@ msgstr ""
"De volgende installatiemedia zijn gevonden.\n"
"Indien u sommige wilt overslaan, kunt u ze nu deselecteren."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"U heeft de mogelijkheid om de inhoud van de CD's naar de harde schijf te "
+"U heeft de mogelijkheid om de inhoud van de cd's naar de harde schijf te "
"kopiëren vóór installatie.\n"
"De installatie gaat dan door vanaf de harde schijf en de pakketten blijven "
"beschikbaar zodra het systeem volledig geïnstalleerd is."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Hele cd's kopiëren"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Er is een fout opgetreden"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Kies uw toetsenbord-indeling"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Dit is de volledige lijst van beschikbare toetsenborden:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Installatie/Opwaardering"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Wilt u opwaarderen of een nieuwe installatie uitvoeren?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installatie"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s opwaarderen"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Vercijferingssleutel voor %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Installatie afbreken, systeem herstarten"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Nieuwe installatie"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Bestaande installatie opwaarderen (niet aanbevolen)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1072,48 +1210,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Het installatieprogramma heeft vastgesteld dat het geïnstalleerde Mandriva "
-"Linux-systeem\n"
-"niet veilig bijgewerkt kan worden tot %s.\n"
+"Het installatieprogramma heeft vastgesteld dat uw Linux-systeem niet veilig "
+"kan worden bijgewerkt naar %s.\n"
"\n"
-"Een nieuwe installatie die de bestaande vervangt is aan te raden.\n"
+"Een nieuwe installatie ter vervang van uw vorige wordt aangeraden.\n"
"\n"
-"Waarschuwing: maak veiligheidskopieën van alle persoonlijke gegevens "
-"alvorens\n"
-"\"Nieuwe installatie\" te kiezen."
+"WAARSCHUWING: Maak een eerst een back-up van al uw persoonlijke data voordat "
+"u een nieuwe installatie kiest."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDE-Configuratie"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Er is geen vrije ruimte voor een \"bootstrap\" van 1MB! De installatie zal "
-"doorgaan, maar om uw systeem op te starten zult u de bootstrap partitie in "
-"DiskDrake moeten creëren."
+msgid "CD/DVD"
+msgstr "Cd/dvd"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"U dient een PPC PReP Boot bootstrap aan te maken! Installatie zal verder "
-"gaan, maar om uw systeem op te starten zult u de bootstrappartitie in "
-"DiskDrake moeten creëren."
+msgid "Configuring CD/DVD"
+msgstr "Cd/dvd-configuratie"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1121,28 +1236,28 @@ msgid ""
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"Verwissel uw CD-ROM!\n"
+"Verwissel uw cd-rom!\n"
"\n"
-"Gelieve de CD-ROM met de naam \"%s\" in uw speler te plaatsen en op Ok te "
+"Gelieve de cd-rom met de naam \"%s\" in uw speler te plaatsen en op Ok te "
"klikken wanneer u gereed bent.\n"
-"Als u deze CD niet heeft, klik dan Annuleren om verdere installatie vanaf "
-"deze CD te vermijden."
+"Als u deze cd niet heeft, klik dan Annuleren om verdere installatie vanaf "
+"deze cd te vermijden."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Bezig met zoeken naar beschikbare pakketten"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Uw systeem heeft niet genoeg ruimte over voor installatie of opwaardering (%"
-"dMB > %dMB)"
+"Uw systeem heeft niet genoeg ruimte over voor installatie of opwaardering "
+"(%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1151,52 +1266,52 @@ msgstr ""
"U kunt kiezen of u de pakketselectie wilt laden of opslaan.\n"
"Het formaat is dezelfde als de met auto_install gegenereerde bestanden."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Laden"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Opslaan"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Ongeldig bestand"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "Gnome"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Werkomgevingselectie"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "U kunt de grafische omgeving voor uw werkstation kiezen."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "De geselecteerde grootte is meer dan de beschikbare ruimte"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Type installatie"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1205,87 +1320,130 @@ msgstr ""
"U heeft geen enkele pakketgroep geselecteerd\n"
"Gelieve de minimale installatie die u wenst te kiezen."
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Met X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Bezig met installeren van pakket %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Installeer aangeraden pakketten"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Met basis-documentatie (aanbevolen!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Werkelijk minimale installatie (in het bijzonder geen urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Voorbereiden van de opwaardering..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Bezig met voorbereiden van installatie"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Bezig met installeren van pakket %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Er is een fout opgetreden bij het sorteren van de pakketten:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Toch verdergaan?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Opnieuw proberen"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Dit pakket overslaan"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Alle pakketten van medium ‘%s’ overslaan"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Terug naar media- en pakketselectie"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Er is een fout opgetreden bij het installeren van pakket %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Configuratie na installatiestap"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Zorg ervoor dat de Update Modules-media zich in station %s bevindt"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
-msgstr "Updates"
+msgstr "Herzieningen"
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "U kunt nu online media instellen."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Dat maakt beveiligingsherzieningen installeren mogelijk."
-#: steps_interactive.pm:735
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Om deze media in te stellen, dient uw internetverbinding \n"
+"te werken. \n"
+"\n"
+"Wilt u de updatemedia instellen?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Dat downloadprogramma kon niet geïnstalleerd worden"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Opnieuw proberen?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Medium toevoegen mislukt"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1305,111 +1463,80 @@ msgstr ""
"\n"
"Wenst u de bijgewerkte pakketten te installeren?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s op %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Apparatuur"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Geluidskaart"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Heeft u een ISA geluidskaart?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Voer \"alsaconf\" of \"sndconfig\" na de installatie uit om uw geluidskaart "
-"te configureren"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Geen geluidskaart bespeurd. Probeer \"harddrake\" na de installatie"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafische interface"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Netwerk & internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxy's"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "geconfigureerd"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Beveiligingsniveau"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "geactiveerd"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "uitgeschakeld"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "U heeft X niet geconfigureerd. Weet u zeker dat u dit wilt?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Klaarmaken van opstartlader…"
+msgid "Preparing initial startup program..."
+msgstr "Bezig met voorbereiden van het initiële startprogramma..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Een moment geduld, dit kan even duren…"
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Het heeft er alle schijn van dat u een OldWorld- of Onbekende machine heeft. "
-"De yaboot opstartlader zal voor u niet werken. De installatie zal doorgaan, "
-"maar u zult BootX of een andere methode nodig hebben om uw machine op te "
-"starten. Het argument om aan de kernel mee te geven voor het root-"
-"bestandssysteem is: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1418,33 +1545,33 @@ msgstr ""
"In dit beveiligingsniveau wordt toegang tot de bestanden op de Windows-"
"partitie voorbehouden aan de systeembeheerder."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Plaats een lege diskette in station %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Aanmaken van auto-installatiediskette…"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-"Sommige stappen zijn nog niet voltooid.\n"
+"Enkele stappen zijn nog niet voltooid.\n"
"\n"
"Weet u zeker dat u op dit moment wilt afsluiten?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Gefeliciteerd"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Herstarten"
@@ -1481,7 +1608,7 @@ msgstr "Muis"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Harde schijf-detectie"
+msgstr "Harddisk detectie"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
@@ -1539,13 +1666,6 @@ msgid ""
"Users"
msgstr "Gebruikers"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Netwerktoepassingen"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1587,101 +1707,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Afsluiten"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "U heeft besloten om uw systeem bij te werken naar %s. KDE 3.5 is "
-#~ "gevonden\n"
-#~ "op uw systeem. Dit installatieprogramma kan KDE 3.5 niet behouden bij het "
-#~ "opwaarderen. Als u verdergaat, \n"
-#~ "zal KDE 4 KDE 3 vervangen en zult u uw persoonlijke KDE-configuratie "
-#~ "kwijtraken. \n"
-#~ "Om op te waarderen met KDE 3.5 en uw persoonlijke instellingen te "
-#~ "behouden, \n"
-#~ "gelieve uw systeem te herstarten en op te waarderen met behulp van het "
-#~ "Mandriva-herzieningenapplet."
-
-#~ msgid "Proceed"
-#~ msgstr "Doorgaan"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "ophalen van [%s] mislukt"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Bestand %s wordt gedownload…"
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr ""
-#~ "Opwaarderen van een 32-bit naar een 64-bit-distributie wordt niet "
-#~ "ondersteund"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr ""
-#~ "Opwaarderen van een 64-bit naar een 32-bit-distributie wordt niet "
-#~ "ondersteund"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "U heeft de volgende server(s) geselecteerd: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Deze servers worden standaard geactiveerd. Ze hebben geen bekende\n"
-#~ "veiligheidsproblemen, maar het is mogelijk dat men nieuwe vindt.\n"
-#~ "Zorg er in dat geval voor dat u zo spoedig mogelijk opwaardeert.\n"
-#~ "\n"
-#~ "\n"
-#~ "Weet u zeker dat u deze servers wilt installeren?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm Desktop"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Bezig met verbinden met de mirror om de lijst met beschikbare pakketten "
-#~ "op te halen..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Verbinden met mirror %s is onmogelijk"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Auto-installatiediskette aanmaken"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Desgewenst kan de auto-installatie volledig geautomatiseerd worden,\n"
-#~ "in dat geval zal het de harde schijf overnemen!\n"
-#~ "(Deze functie is bedoeld voor het installeren op een andere machine.)\n"
-#~ "\n"
-#~ "Wellicht geeft u de voorkeur aan het herhalen van de installatie.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Herhalen"
-
-#~ msgid "Automated"
-#~ msgstr "Geautomatiseerd"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Pakketselectie opslaan"
diff --git a/perl-install/install/share/po/nn.po b/perl-install/install/share/po/nn.po
index 3441d399a..42bcbaa3f 100644
--- a/perl-install/install/share/po/nn.po
+++ b/perl-install/install/share/po/nn.po
@@ -1,52 +1,82 @@
-# Translation of DrakX to Norwegian Nynorsk
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Karl Ove Hufthammer <karl@huftis.org>, 2004, 2005, 2006, 2007, 2008, 2009.
+# Translators:
+# Karl Ove Hufthammer <karl@huftis.org>, 2004-2010
+# Stig-Ørjan Smelror <smelror@gmail.com>, 2017
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-08-22 11:03+0200\n"
-"Last-Translator: Karl Ove Hufthammer <karl@huftis.org>\n"
-"Language-Team: Norwegian Nynorsk <i18n-nn@lister.ping.uio.no>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Norwegian Nynorsk (http://www.transifex.com/MageiaLinux/"
+"mageia/language/nn/)\n"
+"Language: nn\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 1.0\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Skrivebordet på ein minnepinne"
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "Mandriva Linux-distribusjonen med 100 %% open kjeldekode"
+msgid "For family!"
+msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Utforsk Linux med Mandriva One"
+msgid "For developers!"
+msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/09_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Eit fullt Mandriva Linux-skrivebord – med brukarstøtte"
+msgid "Thank you!"
+msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/10_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: Distribusjonar for alle behov"
+msgid "Be Free!"
+msgstr ""
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Har du fleire medium?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -59,92 +89,57 @@ msgstr ""
"\n"
"Har du fleire installasjonsmedium du ønskjer å bruka?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Nettverk (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Nettverk (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Nettverk (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Adresse til spegelen?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Adresser må starta med «ftp://» eller «http://»."
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "Kontaktar Mandriva Linux-nettstaden for oversikt over speglar …"
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Klarte ikkje få kontakt med Mandriva Linux-nettstaden for å henta oversikt "
-"over tilgjengelege speglar."
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Vel spegelen du vil installera pakkar frå"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS-oppsett"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Skriv inn vertsnamn og mappe til NFD-media"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Manglar vertsnam"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Mappa må begynna med «/»"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Vertsnamn til NFS-montering:"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Katalog"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Tillegg"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -152,23 +147,90 @@ msgid ""
msgstr ""
"Finn ikkje pakkelistfila på denne spegelen. Sjå til at adressa er rett."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Ser på allereie installerte pakkar …"
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Ser etter pakkar å oppgradera …"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Fjernar pakkar for oppgradering …"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -181,87 +243,87 @@ msgstr ""
"\n"
"Er du sikker på at du vil fjerna pakkane?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Klarte ikkje lesa fila «%s»"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Desse diskane fekk nye namn:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "«%s» (tidlegare namn: «%s»)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Nettverk"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Vel medium"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Fila finst allereie. Vil du skriva over ho?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Nekta løyve"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Ugyldig NFS-namn"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Ugyldig medium: %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Kan ikkje ta skjermbilete før partisjonering"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Skjermbilete vert tilgjengelege i «%s» etter installeringa er ferdig"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Installering"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Oppsett"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Du må òg formatera «%s»"
@@ -285,22 +347,22 @@ msgstr "Koplar til nettverket"
msgid "Bringing down the network"
msgstr "Koplar frå nettverket"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Hentar fil. Vent litt …"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "klarte ikkje leggja til medium"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopierer nokre pakkar til harddisken for seinare bruk"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopierer filer"
@@ -330,7 +392,23 @@ msgstr "kjekt å ha"
msgid "maybe"
msgstr "kanskje"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Ingen XML-informasjon for mediet «%s». Berre delvis resultat for pakken «%s»."
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Inga skildring"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -339,75 +417,76 @@ msgstr ""
"Nokre pakkar som %s krev kan ikkje installerast:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Det oppstod ein feil:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Det oppstod ein kritisk feil: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Ikkje spør igjen"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "feil med %d installasjonstransaksjonar"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Feil ved installering av pakkar:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Arbeidstasjon"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Kontormaskin"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Kontorprogramvare: Teksthandsamarar (OpenOffice.org Writer, Kword), rekneark "
-"(OpenOffice.org Calc, Kspread), PDF-viseprogram, med meir"
+"Kontorprogramvare: Teksthandsamarar (LibreOffice Writer, Kword), rekneark "
+"(LibreOffice Calc, Kspread), PDF-viseprogram, med meir"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Kontorprogramvare: Teksthandsamarar (KWord, AbiWord), rekneark (KSpread, "
-"gnumeric), PDF-viseprogram, med meir"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Spelmaskin"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Moroprogram: Arkadespel, brettspel, strategispel, med meir"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimediemaskin"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Program for vising og redigering av film"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internett-maskin"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -416,205 +495,205 @@ msgstr ""
"Program for lesing og sending av e-post, deltaking i temagrupper og surfing "
"på Internett"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Nettverksmaskin (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klientprogramvare for fleire protokollar, som ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Verktøy for enkelt oppsett av datamaskina"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsollverktøy"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Skriveprogram, skal, filverktøy og terminalprogram."
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Utvikling"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "C og C++-utviklingsbibliotek, program og inkluderingsfiler"
+msgstr "Utviklingsbibliotek, program og deklarasjonsfiler for C og C++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Hjelpetekst"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Bøker og hjelpeoppskrifter for Linux og fri programvare"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base – støtte for tredjepartsprogram"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Vevtenar"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Gruppevare"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab-tenar"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Brannmur/rutar"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internett-portnar"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "E-post og temagrupper"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix e-posttenar og Inn temagruppetenar"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Katalogtenar"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP-tenar"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Domenenamn og nettverksinformasjonstenar."
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Fil- og skrivardeling-tenar"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS-tenar, Samba-tenar"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Database"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL- og MySQL-databasetenar"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL- og MariaDB-databasetenar"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Vev/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "E-post"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix-e-posttenar"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL- eller MySQL-databasetenar"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL- eller MariaDB-databasetenar"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Nettverkstenar"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS-tenar, SMB-tenar, mellomtenar, ssh-tenar"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafisk miljø"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE-arbeidsstasjon"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "Skrivebordsmiljøet KDE, med ei samling tilhøyrande verktøy"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME-arbeidsstasjon"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -622,66 +701,109 @@ msgid ""
msgstr ""
"Eit grafisk skrivebordsmiljø med brukarvenlege program og skrivebordsverktøy"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
#, c-format
msgid "LXDE Desktop"
msgstr "LXDE-skrivebord"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:191
#, c-format
-msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+msgid "A lightweight fast graphical environment"
msgstr ""
-"Eit kjapt og lite ressurskrevande grafisk skrivebordsmiljø med brukarvenlege "
-"program og skrivebordsverktøy"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Andre grafiske skrivebord"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, med fleire"
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Verktøy"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH-tenar"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin-fjernoppsettenar"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Nettverksverktøy og -overvaking"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Overvakingsverktøy, prosesshandsaming, tcpdump, nmap, med meir"
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva-vegvisarar"
+msgid "Mageia Wizards"
+msgstr "Mageia-vegvisarar"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Vegvisarar for tenaroppsett"
@@ -693,7 +815,7 @@ msgid ""
"Continue at your own risk."
msgstr "Det oppstod ein kritisk feil. Hald fram på eige ansvar."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -713,254 +835,257 @@ msgstr "Køyrer steg «%s»\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux-installering %s"
+msgid "%s Installation %s"
+msgstr "%s-installering %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "«Tab»/«Alt + Tab» mellom element"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "X.Org-tenaren tek tid å starta. Vent litt …"
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Du har lite systemressursar, og kan få vanskar med å installera Mandriva "
-"Linux.\n"
+"Du har lite systemressursar, og kan få vanskar med å installera %s Linux.\n"
"Du kan då installera i tekstmodus i staden for. Trykk «F1» ved oppstart av\n"
"CD-plata, og skriv «text» om du ønskjer dette."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Installer Mandriva KDE-skrivebord"
+msgid "Media Selection"
+msgstr "Medieval"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Installer Mandriva GNOME-skrivebord"
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Installer %s GNOME-skrivebord"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Anna installering"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE-skrivebord"
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME-skrivebord"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Sjølvvalt skrivebord"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Slik ser skrivebordsmiljøet %s ut."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Trykk på bileta for å forstørra dei"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Pakkegruppeval"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Direkte pakkeval"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Totalstorleik: %d / %d MiB"
+msgid "Unselect All"
+msgstr "Valde vekk alle"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Ugyldig pakke"
+msgid "Total size: %d / %d MB"
+msgstr "Totalstorleik: %d / %d MiB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versjon: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Storleik: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KiB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Prioritet: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Du kan ikkje velja eller fjerna denne pakken"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "på grunn av manglande «%s»"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "då «%s» ikkje er tilfredsstilt"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "Prøver å prioritera «%s»"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "for å kunna behalda «%s»"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Du kan ikkje velja denne pakken, då det ikkje er nok ledig plass til å "
"installera han."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Desse pakkane vert installerte"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Desse pakkane vert fjerna"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Dette er ein obligatorisk pakke. Du kan ikkje velja han vekk."
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Du kan ikkje velja vekk denne pakken, då han allereie er installert."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Kan ikkje velja vekk pakken. Han må oppgraderast."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Vis automatiske valde pakkar"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installer"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Opna/lagra utval"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Oppdaterer pakkeval"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimal installering"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Programvarehandsaming"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Vel pakkane du ønskjer å installera"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Installerer"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Gøym detaljar"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Tid igjen:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(estimerer …)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pakke"
msgstr[1] "%d pakkar"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Samandrag"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Set opp"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "ikkje sett opp"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Medieval"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -969,12 +1094,12 @@ msgstr ""
"Fann desse installasjonsmedia.\n"
"Om du ikkje ønskjer å bruka alle, kan du velja vekk dei du ikkje treng no."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Du kan velja å kopiera innhaldet på CD-ane til harddisken før "
@@ -982,72 +1107,72 @@ msgstr ""
"Installasjonen vil då helda fram frå harddisken, og pakkane vil vera lett "
"tilgjengeleg òg etter at systemet er installert og sett opp."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopier CD-ane"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Det oppstod ein feil"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Vel tastaturoppsett"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Her er heile lista over tastaturoppsett:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Installer/oppgrader"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Vil du installera eller oppgradera?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installer"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Oppgrader «%s»"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Krypteringsnøkkel for «%s»"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Avbryt installering og start systemet på nytt"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Nyinstallering"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Oppgrader førre installasjon (ikkje tilrådd)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1055,45 +1180,18 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Installasjonsprogrammet har oppdaga at den gamle utgåva av Mandriva Linux "
-"som du har installert ikkje kan trygt oppgraderast til %s.\n"
-"\n"
-"Du bør velja ei nyinstallering, som då vil erstatta den gamle versjonen.\n"
-"\n"
-"Åtvaring: Du bør ta reservekopi av alle personlege data før du vel "
-"«Nyinstallering»."
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Set opp IDE"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Ikkje nok ledig plass for oppstartslastar på 1 MiB. Installasjonen held "
-"fram, men du må sjølv laga ein oppstartslastarpartisjon i DiskDrake."
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Du må laga ein PPC PReP Boot-bootstrap. Installasjonen vil helda fram, men "
-"viss du vil starta systemet, må du først laga bootstrap-partisjonen i "
-"DiskDrake."
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1106,21 +1204,21 @@ msgstr ""
"Set inn plata merkt «%s» og trykk «OK».\n"
"Trykk eventuelt «Avbryt» om du ikkje har denne plata."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Ser etter tilgjengelege pakkar …"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Maskina di har ikkje nok ledig plass for installering eller oppgradering (%d "
"MB > %d MB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1129,52 +1227,52 @@ msgstr ""
"Vel å lagra eller henta pakkeval.\n"
"Formatet er likt det laga av «auto_install»."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Last"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Lagra"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Ugyldig fil"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Skrivebordsval"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Du kan velja skrivebordsmiljø."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Valt storleik er større enn tilgjengeleg plass"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Installasjonstype"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1183,87 +1281,126 @@ msgstr ""
"Du har ikkje valt noko pakkegruppe.\n"
"Vel kva type minimal installasjon du vil ha:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Med X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Installerer pakken «%s»"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Med grunnleggjande hjelpetekstar (tilrådd)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Heilt minimal (òg utan urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Førebur installasjon"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Installerer pakken «%s»"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Det oppstod ein feil ved sortering av pakkar:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Vil du helda fram likevel?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Prøv på nytt"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Hopp over denne pakken"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Hopp over alle pakkar frå mediet «%s»"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Gå tilbake til medie- og pakkevalskjermen"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Det oppstod ein feil ved installering av pakken «%s»."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Oppsett etter installering"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Sjå til at oppdateringsmediet er i stasjon %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Oppdateringar"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Desse pakkane vert installerte"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Prøv på nytt?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Klarte ikkje leggja til nytt medium"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1286,111 +1423,82 @@ msgstr ""
"\n"
"Ønskjer du å installera oppdateringane?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s på %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Maskinvare"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Lydkort"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Har du eit ISA-lydkort?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Køyr «sndconfig» etter installasjonen er ferdig for å setja opp lydkortet."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Fann ingen lydkort. Køyr «harddrake» etter installasjonen er ferdig."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafisk grensesnitt"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Nettverk og Internett"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Mellomtenarar"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "oppsett"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Tryggleiksnivå"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Brannmur"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "påslått"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "avslått"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
"Du har ikkje sett opp det grafiske grensesnittet. Er du sikker på at du "
"ikkje vil ha det?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Førebur oppstartslastar …"
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Ver tålmodig. Dette kan ta ei stund …"
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Oppstartslastaren yaboot vil ikkje fungera, då du har ei OldWorld- eller ei "
-"ukjend maskin. Installeringa vil helda fram, men du må bruka BootX eller ein "
-"annan måte å starta maskina di på. Kjerneargumentet for rotfilsystemet er: "
-"root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1399,17 +1507,17 @@ msgstr ""
"Med dette tryggleiksnivået er det berre administratoren som får tilgang til "
"filer på Windows-partisjonen."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Set inn ein tom diskett i stasjon «%s»"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Lagar diskett for automatisk installasjon …"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1420,12 +1528,12 @@ msgstr ""
"\n"
"Er du sikker på at du vil avslutta?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Gratulerer"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Start på nytt"
@@ -1520,13 +1628,6 @@ msgid ""
"Users"
msgstr "Brukarar"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Nettverk"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1569,106 +1670,24 @@ msgid ""
"Exit"
msgstr "Avslutt"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Du har valt å oppgradera systemet til %s. Du har no KDE 3.5 installert, \n"
-#~ "men installeringsprogrammet kan ikkje ta vare på KDE 3.5 ved "
-#~ "oppgraderinga. Viss du vel å halda fram, \n"
-#~ "vert KDE 3 bytt ut med KDE 4, og du mistar alle KDE-innstillingane "
-#~ "dine. \n"
-#~ "Dersom du heller vil oppgradera KDE 3.5 og ta vare på innstillingane "
-#~ "dine, \n"
-#~ "må du starta maskina på nytt, og så oppgradera med Mandriva-"
-#~ "oppdateringsprogrammet som du finn i systemtrauet."
-
-#~ msgid "Proceed"
-#~ msgstr "Hald fram"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "klarte ikkje henta [%s]"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Lastar ned «%s» …"
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "Oppgradering frå 32 bits til 64 bits er ikkje støtta"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "Oppgradering frå 64 bits til 32 bits er ikkje støtta"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Du har valt desse tenarane: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Tenarane vert slått på som standard. Ingen av dei har nokon kjende "
-#~ "tryggleikshol,\n"
-#~ "men nye hol kan sjølvsagt verta oppdaga i framtida. Du må du i så fall "
-#~ "oppgradera\n"
-#~ "så snart som mogleg.\n"
-#~ "\n"
-#~ "\n"
-#~ "Er du sikker på at du vil installera tenarane?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm-skrivebord"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Kontaktar spegel for oversikt over pakkar …"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Klarte ikkje kontakta spegelen «%s»"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Lag diskett for automatisk installasjon"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Du kan heilautomatisera autoinstalleringa om du ønskjer. Denne vil då "
-#~ "overskriva heile harddisken. (Dette er meint for installering på ei anna "
-#~ "maskin.)\n"
-#~ "\n"
-#~ "Du kan òg velja å køyra gjennom installasjonen på nytt.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Spel av"
-
-#~ msgid "Automated"
-#~ msgstr "Automatisert"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Adresse til spegelen?"
-#~ msgid "Save packages selection"
-#~ msgstr "Lagra pakkeval"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Adresser må starta med «ftp://» eller «http://»."
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Vil du bruka aboot?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Kontaktar %s-nettstaden for oversikt over speglar …"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Feil ved installering av «aboot».\n"
-#~ "Vil du prøva å tvinga gjennom installering, sjølv om det kan øydeleggja "
-#~ "den første partisjonen?"
+#~ "Klarte ikkje få kontakt med %s-nettstaden for å henta oversikt over "
+#~ "tilgjengelege speglar."
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Vel spegelen du vil installera pakkar frå"
diff --git a/perl-install/install/share/po/pa_IN.po b/perl-install/install/share/po/pa_IN.po
index 7290c6ca5..0a96b7c98 100644
--- a/perl-install/install/share/po/pa_IN.po
+++ b/perl-install/install/share/po/pa_IN.po
@@ -1,55 +1,82 @@
-# translation of DrakX.po to Punjabi
-# translation of DrakX.po to Panjabi
-# Copyright (C) 2005 Free Software Foundation, Inc.
-# Kanwaljeet Singh Brar <kanwaljeetbrar@yahoo.co.in>, 2005.
-# Jaswinder Singh Phulewala <jaswinderphulewala@yahoo.com>, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Jaswinder Singh Phulewala <jaswinderphulewala@yahoo.com>, 2005
+# Kanwaljeet Singh Brar <kanwaljeetbrar@yahoo.co.in>, 2005
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-03-27 17:55+0530\n"
-"Last-Translator: Jaswinder Singh Phulewala <jaswinderphulewala@yahoo.com>\n"
-"Language-Team: Punjabi <punlinux-i18n@lists.soruceforge.net>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Panjabi (Punjabi) (India) (http://www.transifex.com/"
+"MageiaLinux/mageia/language/pa_IN/)\n"
+"Language: pa_IN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "ਕੀ ਤੁਹਾਡੇ ਕੋਲ ਅੱਗੇ ਅਨੁਪੂਰਕ ਮਾਧਿਅਮ ਹੈ?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -58,113 +85,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "ਨੈੱਟਵਰਕ (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "ਨੈੱਟਵਰਕ (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "ਪ੍ਰਤਿਬਿੰਬ ਦਾ URL?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr ""
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "ਉਪਲੱਬਧ ਪ੍ਰਤੀਬਿੰਬਾਂ ਦੀ ਸੂਚੀ ਵੇਖਣ ਲਈ ਮੈਂਡਰਿਵ-ਲੀਨਕਸ ਵੈਬ ਸਾਈਟ ਨਾਲ ਸੰਪਰਕ ਜਾਰੀ ਹੈ..."
-
-#: any.pm:187
-#, fuzzy, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "ਉਪਲੱਬਧ ਪ੍ਰਤੀਬਿੰਬਾਂ ਦੀ ਸੂਚੀ ਵੇਖਣ ਲਈ ਮੈਂਡਰਿਵ-ਲੀਨਕਸ ਵੈਬ ਸਾਈਟ ਨਾਲ ਸੰਪਰਕ ਜਾਰੀ ਹੈ..."
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "ਪੈਕੇਜ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਪ੍ਰਤੀਬਿੰਬ ਚੁਣੋ"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr ""
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr ""
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr ""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr ""
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "ਡਾਇਰੈਕਟਰੀ"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr ""
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr "ਇਸ ਪ੍ਰਤੀਬਿੰਬ ਤੇ ਪੈਕੇਜ ਸੂਚੀ ਫਾਇਲ ਨਹੀਂ ਲੱਭ ਸਕੀ। ਜਾਂਚ ਕਰੋ ਕਿ ਸਥਿਤੀ ਠੀਕ ਹੈ।"
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "ਪਹਿਲਾਂ ਇੰਸਟਾਲ ਕੀਤੇ ਪੈਕੇਜਾਂ ਸੀ ਜਾਂਚ ਕਰ ਰਿਹਾ ਹੈ..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "ਨਵੀਨੀਕਰਨ ਲਈ ਪੈਕੇਜਾਂ ਦੀ ਖੋਜ..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -177,87 +238,87 @@ msgstr ""
"\n"
"ਕੀ ਤੁਸੀਂ ਯਕੀਨਨ ਇਹ ਪੈਕੇਜ ਹਟਾਉਣੇ ਚਾਹੁੰਦੇ ਹੋ?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "ਫਾਇਲ %s ਪੜਨ ਵਿੱਚ ਗਲਤੀ"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "ਹੇਠਲੀਆਂ ਡਿਸਕਾਂ ਦੇ ਨਾਂ ਤਬਦੀਲ ਕੀਤੇ ਹਨ:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (ਪਹਿਲਾਂ %s ਨਾਂ ਸੀ)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr ""
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "FTP"
-msgstr "ਵੈਬ/FTP"
+msgstr ""
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "NFS"
-msgstr "PFS"
+msgstr ""
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "ਨੈੱਟਵਰਕ"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "ਕਿਰਪਾ ਕਰਕੇ ਬੈਕਅੱਪ ਲਈ ਮਾਧਿਅਮ ਚੁਣੋ।"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "ਫਾਇਲ ਪਹਿਲਾਂ ਮੌਜੂਦ ਹੈ, ਇਹ ਵਰਤੋ?"
+msgstr ""
-#: any.pm:1122
-#, fuzzy, c-format
+#: any.pm:1385
+#, c-format
msgid "Permission denied"
-msgstr "ਅਧਿਕਾਰ"
+msgstr ""
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "ਵਿਭਾਗੀਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਪਰਦਾ-ਤਸਵੀਰ ਨਹੀਂ ਬਣਾ ਸਕਦਾ"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "ਪਰਦਾ-ਤਸਵੀਰਾਂ %s ਵਿੱਚ ਇੰਸਟਾਲੇਸ਼ਨ ਤੋਂ ਬਾਅਦ ਉਪਲੱਬਧ ਹੋਣਗੀਆਂ"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "ਇੰਸਟਾਲ ਹੋ ਰਹੇ ਹਨ"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "ਸੰਰਚਨਾ"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "ਤੁਹਾਨੂੰ %s ਵੀ ਫਾਰਮਿਟ ਕਰਨਾ ਜਰੂਰੀ ਹੈ"
@@ -281,22 +342,22 @@ msgstr "ਨੈੱਟਵਰਕ ਚਲਾਇਆ ਜਾ ਰਿਹਾ ਹੈ"
msgid "Bringing down the network"
msgstr "ਨੈੱਟਵਰਕ ਬੰਦ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "ਨਕਲ ਜਾਰੀ ਹੈ"
@@ -326,351 +387,412 @@ msgstr "ਵਧੀਆ"
msgid "maybe"
msgstr "ਹੋ ਸਕਦਾ ਹੈ"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "ਕੋਈ ਵੇਰਵਾ ਨਹੀ"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "ਇੱਕ ਗਲਤੀ ਆਈ ਹੈ"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "ਘਾਤਕ ਗਲਤੀ ਆਈ: %s"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d ਇੰਸਟਾਲੇਸ਼ਨ ਸੰਚਾਰ ਅਸਫਲ"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "%s ਪੈਕੇਜ ਇੰਸਟਾਲ ਹੋ ਰਹੀ ਹੈ"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "ਵਰਕਸਟੇਸ਼ਨ"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "ਦਫਤਰ ਵਰਕਸਟੇਸ਼ਨ"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"ਦਫਤਰੀ ਪ੍ਰੋਗਰਾਮ: ਅੱਖਰਕਾਰ (OpenOffice.org Writer, Kword), ਸਾਰਣੀਕਾਰ (OpenOffice."
-"org Calc, Kspread), PDF ਦਰਸ਼ਕ, ਆਦਿ"
+"ਦਫਤਰੀ ਪ੍ਰੋਗਰਾਮ: ਅੱਖਰਕਾਰ (LibreOffice Writer, Kword), ਸਾਰਣੀਕਾਰ (OpenOffice.org "
+"Calc, Kspread), PDF ਦਰਸ਼ਕ, ਆਦਿ"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"ਦਫਤਰੀ ਪ੍ਰੋਗਰਾਮ: ਅੱਖਰਕਾਰ (kword, abiword), ਸਾਰਣੀਕਾਰ (kspread, gnumeric), pdf "
-"ਦਰਸ਼ਕ, ਆਦਿ"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "ਖੇਡ ਸਟੇਸ਼ਨ"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "ਮਨੋਰੰਜਨ ਪ੍ਰੋਗਰਾਮ: ਆਰਕੇਡ, ਬੋਰਡ, ਨੀਤੀ, ਆਦਿ"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "ਮਲਟੀਮੀਡੀਆ ਸਟੇਸ਼ਨ"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "ਸਾਊਂਡ ਅਤੇ ਵੀਡੀਓ ਚਲਾਉਣ/ਸੋਧਣ ਵਾਲੇ ਪ੍ਰੋਗਰਾਮ"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "ਇੰਟਰਨੈੱਟ ਸਟੇਸ਼ਨ"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr "ਪੱਤਰ ਅਤੇ ਖਬਰਾਂ ਪੜਨ ਅਤੇ ਭੇਜਣ ਲਈ (mutt, tin..) ਅਤੇ ਵੈਬ ਝਾਤੀ ਲਈ ਸੰਦਾਂ ਦਾ ਸਮੂਹ"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "ਨੈੱਟਵਰਕ ਕੰਪਿਊਟਰ (ਕਲਾਂਈਟ)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "ssh ਸਮੇਤ ਵੱਖ-ਵੱਖ ਪਰੋਟੋਕਾਲਾਂ ਲਈ ਕਲਾਂਈਟ"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "ਤੁਹਾਡੇ ਕੰਪਿਊਟਰ ਦੀ ਸੰਰਚਨਾ ਸਾਫ ਕਰਨ ਲਈ ਸੰਦ"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "ਕੰਸੋਲ ਸੰਦ"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "ਸੰਪਾਦਕ, ਸ਼ੈੱਲ, ਫਾਇਲ ਸੰਦ, ਟਰਮੀਨਲ"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "ਵਿਕਾਸ"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C ਅਤੇ C++ ਵਿਕਾਸ ਲਾਇਬ੍ਰੇਰੀਆਂ, ਪ੍ਰੋਗਰਾਮ ਅਤੇ ਸ਼ਾਮਿਲ ਫਾਇਲਾਂ"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "ਦਸਤਾਵੇਜ਼"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "ਲੀਨਕਸ ਅਤੇ ਮੁਕਤ ਸਾਫਟਵੇਅਰ ਉੱਪਰ ਕਿਤਾਬਾਂ ਅਤੇ Howto's"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "ਲੀਨਕਸ ਮਿਆਰੀ ਮੁੱਢ। ਤੀਜੀ ਪਾਰਟੀ ਕਾਰਜ ਸਹਿਯੋਗ"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "ਵੈਬ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "ਗਰੁੱਪਵੇਅਰ"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "ਫਾਇਲਵਾਲ/ਰਾਊਟਰ"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "ਇੰਟਰਨੈੱਟ ਗੇਟਵੇ"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "ਪੱਤਰ/ਖਬਰ"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix ਪੱਤਰ ਸਰਵਰ, Inn ਖਬਰ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "ਡਾਇਰੈਕਟਰੀ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "ਡੋਮੇਨ ਨਾਂ ਅਤੇ ਨੈੱਟਵਰਕ ਜਾਣਕਾਰੀ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "ਫਾਇਲ ਅਤੇ ਪ੍ਰਿੰਟਰ ਸ਼ੇਅਰਿੰਗ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS ਸਰਵਰ, ਸਾਂਬਾ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "ਡਾਟਾਬੇਸ "
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL ਅਤੇ MySQL ਡਾਟਾਬੇਸ ਸਰਵਰ"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL ਅਤੇ MariaDB ਡਾਟਾਬੇਸ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "ਵੈਬ/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "ਪੱਤਰ"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix ਪੱਤਰ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL ਜਾਂ MySQL ਡਾਟਾਬੇਸ ਸਰਵਰ"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL ਜਾਂ MariaDB ਡਾਟਾਬੇਸ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "ਨੈੱਟਵਰਕ ਕੰਪਿਊਟਰ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS ਸਰਵਰ, SMB ਸਰਵਰ, ਪਰਾਕਸੀ ਸਰਵਰ, ssh ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "ਗਰਾਫੀਕਲ ਵਾਤਾਵਰਨ"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "ਕੇ ਡੀ ਈ ਵਰਕਸਟੇਸ਼ਨ"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "ਕੇ ਵਿਹੜਾ ਵਾਤਾਵਰਨ, ਸਾਥੀ ਸੰਦਾਂ ਦੇ ਭੰਡਾਰ ਨਾਲ ਮੁੱਢਲਾ ਗਰਾਫਿਕਲ ਵਾਤਾਵਰਨ"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "ਗਨੋਮ ਵਰਕਸਟੇਸ਼ਨ"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "ਉਪਭੋਗੀ-ਅਨੁਕੂਲ ਕਾਰਜ ਸਮੂਹ ਅਤੇ ਵਿਹੜਾ ਸੰਦਾਂ ਨਾਲ ਇੱਕ ਗਰਾਫੀਕਲ ਵਾਤਾਵਰਨ"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "ਵਿਹੜਾ"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "ਉਪਭੋਗੀ-ਅਨੁਕੂਲ ਕਾਰਜ ਸਮੂਹ ਅਤੇ ਵਿਹੜਾ ਸੰਦਾਂ ਨਾਲ ਇੱਕ ਗਰਾਫੀਕਲ ਵਾਤਾਵਰਨ"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "ਹੋਰ ਗਰਾਫੀਕਲ ਵਿਹੜੇ"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm, ਆਦਿ"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "ਸਹੂਲਤਾਂ"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin ਰਿਮੋਟ ਸੰਰਚਨਾ ਸਰਵਰ"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "ਨੈੱਟਵਰਕ ਸਹੂਲਤਾਂ/ਪ੍ਰਬੰਧਨ"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "ਪ੍ਰਬੰਧਨ ਸੰਦ, ਕਾਰਜ ਅਕਾਊਂਟਿੰਗ, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "ਮੈਂਡਰਿਵ-ਸਾਫਟ ਤਖਤੀ"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "ਸਰਵਰ ਸੰਰਚਨਾ ਲਈ ਤਖਤੀ"
@@ -684,7 +806,7 @@ msgstr ""
"ਗਲਤੀ ਹੋਈ ਹੈ, ਪਰ ਮੈਂ ਨਹੀਂ ਜਾਣਦਾ ਕਿ ਇਸ ਦਾ ਕਿਸ ਤਰਾਂ ਪ੍ਰਬੰਧਨ ਕਰਨਾ ਹੈ।\n"
"ਆਪਣੇ ਖਤਰੇ ਤੇ ਜਾਰੀ ਕਰੋ।"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -703,251 +825,252 @@ msgstr "ਪਗ਼ `%s' ਸ਼ੁਰੂ ਹੋ ਰਿਹਾ ਹੈ\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "ਮੈਂਡਰਿਵ-ਲੀਨਕਸ ਇੰਸਟਾਲੇਸ਼ਨ %s "
+msgid "%s Installation %s"
+msgstr ""
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> ਇਕਾਈਆਂ ਵਿੱਚ "
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"ਤੁਹਾਡੇ ਸਿਸਟਮ ਤੇ ਸਰੋਤ ਘੱਟ ਹਨ। ਤੁਹਾਨੂੰ ਮੈਂਡਰਿਵ-ਲੀਨਕਸ ਇੰਸਟਾਲ ਕਰਨ ਸਮੇਂ ਮੁਸ਼ਕਿਲ\n"
-"ਆ ਸਕਦੀ ਹੈ। ਜੇ ਅਜਿਹਾ ਹੋਇਆ, ਤੁਸੀਂ ਪਾਠ ਇੰਸਟਾਲੇਸ਼ਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਇਸ ਲਈ,\n"
-"`F1' ਦਬਾਓ ਜਦੋਂ CDROM ਤੋਂ ਬੂਟ ਕਰਦੇ ਹੋ, ਫਿਰ `ਪਾਠ' ਭਰੋ।"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "ਘੱਟੋ-ਘੱਟ ਇੰਸਟਾਲ"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "ਵਿਹੜਾ"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "ਵਿਹੜਾ"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "ਵਿਹੜਾ"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "ਪੈਕੇਜ ਸਮੂਹ ਚੋਣ"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "ਵੱਖ-ਵੱਖ ਪੈਕੇਜ ਚੋਣ"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "ਕੁੱਲ ਅਕਾਰ: %d / %d ਮੈਬਾ"
+msgid "Unselect All"
+msgstr "ਸਭ ਨਾ-ਚੁਣੋ"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "ਗਲਤ ਪੈਕੇਜ"
+msgid "Total size: %d / %d MB"
+msgstr "ਕੁੱਲ ਅਕਾਰ: %d / %d ਮੈਬਾ"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "ਵਰਜਨ:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "ਅਕਾਰ:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d ਕਿਬਾ\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "ਖਾਸੀਅਤ:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "ਤੁਸੀਂ ਇਹ ਪੈਕੇਜ ਚੁਣ/ਨਾ-ਚੁਣ ਨਹੀਂ ਸਕਦੇ"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s ਗੁੰਮ ਹੋਣ ਕਾਰਨ"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "%s ਲੋੜ ਪੂਰੀ ਨਾ ਹੋਣ ਕਰਕੇ"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%s ਵਰਤੋਂ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s ਰੱਖਣ ਲਈ"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "ਤੁਸੀਂ ਇਹ ਪੈਕੇਜ ਨਹੀਂ ਚੁਣ ਸਕਦੇ ਕਿਉਂਕਿ ਇੱਥੇ ਇਸ ਨੂੰ ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਲੋੜੀਂਦੀ ਥਾਂ ਨਹੀਂ ਹੈ।"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "ਹੇਠਲੇ ਪੈਕੇਜ ਇੰਸਟਾਲ ਹੋ ਰਹੇ ਹਨ"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "ਹੇਠਲੇ ਪੈਕੇਜ ਹਟਾਏ ਜਾ ਰਹੇ ਹਨ"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "ਇਹ ਲਾਜ਼ਮੀ ਪੈਕੇਜ ਹੈ, ਇਸ ਦੀ ਚੋਣ ਨਹੀਂ ਹਟਾਈ ਜਾ ਸਕਦੀ"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "ਤੁਸੀਂ ਇਸ ਪੈਕੇਜ ਦੀ ਚੋਣ ਨਹੀਂ ਹਟਾ ਸਕਦੇ। ਇਹ ਪਹਿਲਾਂ ਹੀ ਇੰਸਟਾਲ ਹੈ।"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "ਤੁਸੀਂ ਇਸ ਪੈਕੇਜ ਦੀ ਚੋਣ ਨਹੀਂ ਹਟਾ ਸਕਦੇ। ਇਸ ਦਾ ਨਵੀਨੀਕਰਨ ਜਰੂਰੀ ਹੈ।"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "ਚੁਣੇ ਪੈਕੇਜ ਸਵੈ ਹੀ ਵਿਖਾਓ"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "ਇੰਸਟਾਲ"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "ਪੈਕੇਜ ਚੋਣ"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "ਪੈਕੇਜ ਚੋਣ ਨਵੀਨੀਕਰਨ ਜਾਰੀ ਹੈ"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "ਘੱਟੋ-ਘੱਟ ਇੰਸਟਾਲ"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "ਸਾਫਟਵੇਅਰ ਪ੍ਰਬੰਧਨ"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਪੈਕੇਜ ਚੁਣੋ"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "ਇੰਸਟਾਲ ਹੋ ਰਹੇ ਹਨ"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "ਕੋਈ ਵੇਰਵਾ ਨਹੀਂ"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "ਬਾਕੀ ਸਮਾਂ"
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "ਅਨੁਮਾਨ ਜਾਰੀ ਹੈ"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d ਪੈਕੇਜ"
-msgstr[1] "%d ਪੈਕੇਜ"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "ਸਾਰ"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "ਸੰਰਚਨਾ"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "ਸੰਰਚਿਤ ਨਹੀਂ"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "ਪੈਕੇਜ ਸਮੂਹ ਚੋਣ"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -956,84 +1079,84 @@ msgstr ""
"ਹੇਠਲੇ ਇੰਸਟਾਲੇਸ਼ਨ ਮਾਧਿਅਨ ਲੱਭੇ ਹਨ।\n"
"ਜੇ ਤੁਸੀਂ ਇਹਨਾਂ ਵਿੱਚੋਂ ਕੁਝ ਛੱਡਣੇ ਚਾਹੁੰਦੇ ਹੋ, ਤੁਸੀਂ ਹੁਣ ਰੱਦ ਕਰ ਸਕਦੇ ਹੋ।"
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"ਤੁਹਾਡੇ ਕੋਲ ਇੰਸਟਾਲੇਸ਼ਨ ਤੋਂ ਪਹਿਲਾਂ CDs ਦੇ ਸੰਖੇਪ ਹਾਰਡ ਡਰਾਈਵ ਤੇ ਨਕਲ ਕਰਨ ਦੀ ਚੋਣ ਹੈ।\n"
"ਇਹ ਫਿਰ ਹਾਰਡ ਡਰਾਈਵ ਤੋਂ ਜਾਰੀ ਕਰੇਗਾ ਅਤੇ ਪੈਕੇਜ ਸਿਸਟਮ ਪੂਰੀ ਤਰਾਂ ਇੰਸਟਾਲ ਹੋਣ ਤੋਂ ਬਾਅਦ ਵੀ ਉਪਲੱਬਧ "
"ਰਹਿਣਗੇ।"
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "ਪੂਰੀ CDs ਨਕਲ ਕਰੋ"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "ਇੱਕ ਗਲਤੀ ਆਈ ਹੈ"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "ਕਿਰਪਾ ਕਰਕੇ ਆਪਣਾ ਕੀਬੋਰਡ ਖਾਕਾ ਚੁਣੋ।"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "ਇੱਥੇ ਉਪਲੱਬਧ ਕੀਬੋਰਡਾਂ ਦੀ ਸੂਚੀ ਹੈ"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "ਇੰਸਟਾਲ/ਨਵੀਨੀਕਰਨ"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "ਕੀ ਇਹ ਇੰਸਟਾਲ ਜਾਂ ਨਵੀਨੀਕਰਨ ਹੈ?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "ਇੰਸਟਾਲ"
+msgstr "ਇੰਸਟਾਲ ਕਰੋ"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "ਨਵੀਨੀਕਰਨ %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s ਲਈ ਇਨਕ੍ਰਿਪਸ਼ਨ ਕੁੰਜੀ"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "ਇੰਸਟਾਲ ਹੋ ਰਹੇ ਹਨ"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1042,36 +1165,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDE ਸੰਰਚਨਾ ਹੋ ਰਹੀ ਹੈ"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"1ਮੈਬਾ ਬੂਟਸਟਰੈਪ ਲਈ ਕੋਈ ਖਾਲੀ ਥਾਂ ਨਹੀਂ ਹੈ! ਇੰਸਟਾਲ ਜਾਰੀ ਰਹੇਗੀ, ਪਰ ਤੁਹਾਡਾ ਸਿਸਟਮ ਬੂਟ ਕਰਨ ਲਈ, "
-"ਤੁਹਾਨੂੰ DiskDrake ਵਿੱਚ ਬੂਟਸਟਰੈਪ ਭਾਗ ਬਣਾਉਣ ਦੀ ਲੋੜ ਪਵੇਗੀ।"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"PPC PReP Boot ਬੂਟਸਟਰੈਪ ਲਈ ਕੋਈ ਖਾਲੀ ਥਾਂ ਨਹੀਂ ਹੈ! ਇੰਸਟਾਲ ਜਾਰੀ ਰਹੇਗੀ, ਪਰ ਤੁਹਾਡਾ ਸਿਸਟਮ ਬੂਟ "
-"ਕਰਨ ਲਈ, ਤੁਹਾਨੂੰ DiskDrake ਵਿੱਚ ਬੂਟਸਟਰੈਪ ਭਾਗ ਬਣਾਉਣ ਦੀ ਲੋੜ ਪਵੇਗੀ।"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1083,73 +1187,71 @@ msgstr ""
"ਕਿਰਪਾ ਕਰਕੇ \"%s\" ਲੇਬਲ ਵਾਲੀ Cd-Rom ਆਪਣੀ ਡਰਾਈਵ ਵਿੱਚ ਪਾਓ ਅਤੇ ਸਮਾਪਤੀ ਤੇ ਠੀਕ ਹੈ ਦਬਾਓ\n"
"ਜੇ ਤੁਹਾਡੇ ਕੋਲ ਇਹ ਨਹੀਂ ਹੈ, ਇਸ Cd-Rom ਤੋਂ ਇੰਸਟਾਲੇਸ਼ਨ ਰੋਕਣ ਲਈ ਰੱਦ ਕਰੋ ਦਬਾਓ।"
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "ਉਪਲੱਬਧ ਪੈਕੇਜ ਲੋਡ ਕਰ ਰਿਹਾ ਹੈ..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"ਕਿਰਪਾ ਕਰਕੇ ਫਲਾਪੀ ਤੇ ਪੈਕੇਜ ਲੋਡ ਜਾਂ ਸੰਭਾਲ ਚੁਣੋ।\n"
-"ਫਾਰਮਿਟ ਫਲਾਪੀਆਂ ਦੁਆਰਾ ਬਣਾਏ auto_install ਵਾਂਗ ਹੈ।"
-#: steps_interactive.pm:443
-#, fuzzy, c-format
+#: steps_interactive.pm:430
+#, c-format
msgid "Load"
-msgstr "ਪੋਲੈਂਡ"
+msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "ਸੰਭਾਲੋ"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "ਅਸਲੀ ਫਾਇਲ"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "ਗਨੋਮ"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "ਪੈਕੇਜ ਸਮੂਹ ਚੋਣ"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "ਚੁਣਿਆ ਅਕਾਰ ਉਪਲੱਬਧ ਥਾਂ ਨਾਲੋਂ ਜਿਆਦਾ ਹੈ"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "ਇੰਸਟਾਲ ਦੀ ਕਿਸਮ"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1158,87 +1260,126 @@ msgstr ""
"ਤੁਸੀਂ ਪੈਕੇਜਾਂ ਦਾ ਕੋਈ ਸਮੂਹ ਨਹੀਂ ਚੁਣਿਆ।\n"
"ਕਿਰਪਾ ਕਰਕੇ ਘੱਟੋ-ਘੱਟ ਇੰਸਟਾਲੇਸ਼ਨ ਚੁਣੋ:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X ਨਾਲ"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s ਪੈਕੇਜ ਇੰਸਟਾਲ ਹੋ ਰਹੀ ਹੈ"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "ਮੁੱਢਲੀ ਦਸਤਾਵੇਜ਼ੀ ਨਾਲ (ਸਿਫਾਰਸ਼ੀ)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "ਯਕੀਨਨ ਘੱਟੋ-ਘੱਟ ਇੰਸਟਾਲ (ਖਾਸ ਤੌਰ ਤੇ urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "ਇੰਸਟਾਲੇਸ਼ਨ ਤਿਆਰੀ ਹੋ ਰਹੀ ਹੈ"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s ਪੈਕੇਜ ਇੰਸਟਾਲ ਹੋ ਰਹੀ ਹੈ"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "ਪੈਕੇਜ ਕ੍ਰਮਬੱਧ ਕਰਨ ਦੌਰਾਨ ਗਲਤੀ:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "ਕਿਸੇ ਤਰਾਂ ਜਾਰੀ ਰੱਖੋ?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "ਪੈਕੇਜ ਚੋਣ ਸੰਭਾਲੋ"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "ਪੈਕੇਜ ਇੰਸਟਾਲ ਕਰਨ ਦੌਰਾਨ ਗਲਤੀ:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "ਪੋਸਟ-ਇੰਸਟਾਲ ਸੰਰਚਨਾ"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "ਨਵਿਨੀਕਰਨ"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "ਹੇਠਲੇ ਪੈਕੇਜ ਇੰਸਟਾਲ ਹੋ ਰਹੇ ਹਨ"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "ਮਾਧਿਅਮ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਅਸਫਲ"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1251,124 +1392,97 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s, %s ਉੱਪਰ"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "ਜੰਤਰ"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "ਸਾਊਂਡ ਕਾਰਡ"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "ਕੀ ਤੁਹਾਡੇ ਕੋਲ ISA ਸਾਊਂਡ ਕਾਰਡ ਹੈ?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr "ਆਪਣੀ ਸਾਊਂਡ ਕਾਰਡ ਸੰਰਚਨਾ ਲਈ ਇੰਸਟਾਲੇਸ਼ਨ ਮਗਰੋਂ \"alsaconf\" ਜਾਂ \"sndconfig\" ਚਲਾਓ"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "ਕੋਈ ਸਾਊਂਡ ਕਾਰਡ ਨਹੀਂ ਲੱਭਿਆ। ਇੰਸਟਾਲੇਸ਼ਨ ਮਗਰੋਂ \"harddrake\" ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "ਗਰਾਫੀਕਲ ਇੰਟਰਫੇਸ"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "ਨੈੱਟਵਰਕ ਤੇ ਇੰਟਰਨੈੱਟ"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "ਪਰਾਕਸੀ"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "ਸੰਰਚਿਤ"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "ਸੁਰੱਖਿਆ ਪੱਧਰ"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "ਫਾਇਰਵਾਲ"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "ਸਰਗਰਮ"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "ਅਯੋਗ"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "ਤੁਸੀਂ X ਸੰਰਚਿਤ ਨਹੀਂ ਕੀਤਾ। ਕੀ ਤੁਸੀਂ ਯਕੀਨਨ ਇਸ ਨੂੰ ਚਾਹੁੰਦੇ ਹੋ?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "ਬੂਟ-ਲੋਡਰ ਤਿਆਰ ਕਰ ਰਿਹਾ ਹੈ..."
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"ਤੁਹਾਡੇ ਕੋਲ ਓਲਡਵਰਡ ਜਾਂ ਅਣਪਛਾਤੀ ਮਸ਼ੀਨ ਲੱਗਦੀ ਹੈ, yaboot ਤੁਹਾਡੇ ਲਈ ਕੰਮ ਨਹੀਂ ਕਰੇਗਾ। ਇੰਸਟਾਲ "
-"ਜਾਰੀ ਰਹੇਗਾ, ਪਰ ਤੁਹਾਨੂੰ ਆਪਣੀ ਮਸ਼ੀਨ ਬੂਟ ਕਰਨ ਲਈ BootX ਜਾਂ ਹੋਰ ਢੰਗ ਵਰਤਣ ਦੀ ਲੋੜ ਪਵੇਗੀ। ਰੂਟ "
-"ਫਾਇਲ ਸਿਸਟਮ ਲਈ ਕਰਨਲ ਆਰਗੂਮੈਂਟ ਹਨ: root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr "ਇਸ ਸੁਰੱਖਿਆ ਪੱਧਰ ਵਿੱਚ, Windows ਭਾਗ ਵਿਚਲੀ ਫਾਇਲਾਂ ਵਰਤਣ ਲਈ ਪ੍ਰਬੰਧਕ ਨੂੰ ਮਨਾਹੀ ਹੈ।"
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "ਡਰਾਈਵ %s ਵਿੱਚ ਖਾਲੀ ਫਲਾਪੀ ਪਾਓ"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "ਸਵੈ ਇੰਸਟਾਲ ਫਲਾਪੀ ਬਣਾ ਰਿਹਾ ਹੈ..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1379,12 +1493,12 @@ msgstr ""
"\n"
"ਕੀ ਤੁਸੀਂ ਹੁਣ ਯਕੀਨਨ ਬਾਹਰ ਜਾਣਾ ਹੈ?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "ਮੁਬਾਰਕਾਂ"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "ਮੁੜ-ਚਾਲੂ"
@@ -1479,13 +1593,6 @@ msgid ""
"Users"
msgstr "ਉਪਭੋਗੀ"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "ਨੈਟਵਰਕਿੰਗ"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1528,116 +1635,10 @@ msgid ""
"Exit"
msgstr "ਬਾਹਰ"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "ਫਾਇਲਾਂ ਭੇਜ ਰਿਹਾ ਹੈ..."
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "ਵਿਹੜਾ"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "ਉਪਲੱਬਧ ਪੈਕੇਜਾਂ ਦੀ ਸੂਚੀ ਵੇਖਣ ਲਈ ਪ੍ਰਤੀਬਿੰਬ ਨਾਲ ਸੰਪਰਕ ਜਾਰੀ ਹੈ..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "ਪ੍ਰਤੀਬਿੰਬ %s ਨਾਲ ਸੰਪਰਕ ਲਈ ਅਸਮਰਥ"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "ਸਵੈ ਇੰਸਟਾਲ ਫਲਾਪੀ ਬਣਾਓ"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "ਜੇ ਚਾਹੁੰਦੇ ਹੋ, ਸਵੈ ਇੰਸਟਾਲ ਪੂਰੀ ਤਰਾਂ ਸਵੈਚਾਲਤ ਹੋ ਸਕਦਾ ਹੈ\n"
-#~ "ਇਸ ਮੁੱਦੇ ਵਿੱਚ ਇਹ ਹਾਰ ਡਰਾਈਵ ਤੇ ਅਧਿਕਾਰ ਲਵੇਗਾ!!\n"
-#~ "(ਇਸ ਦਾ ਮਤਲਬ ਹੈ ਹੋਰ ਬਕਸੇ ਤੇ ਇੰਸਟਾਲੇਸ਼ਨ ਹੋਵੇਗੀ)।\n"
-#~ "\n"
-#~ "ਤੁਸੀਂ ਇੰਸਟਾਲੇਸ਼ਨ ਮੁੜ ਚਲਾਉਣ ਲਈ ਚੁਣ ਸਕਦੇ ਹੋ।\n"
-
-#~ msgid "Replay"
-#~ msgstr "ਮੁੜ-ਚਲਾਓ"
-
-#~ msgid "Automated"
-#~ msgstr "ਸਵੈਚਾਲਤ"
-
-#~ msgid "Save packages selection"
-#~ msgstr "ਪੈਕੇਜ ਚੋਣ ਸੰਭਾਲੋ"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "ਕੀ ਤੁਸੀਂ aboot ਵਰਤਣਾ ਚਾਹੁੰਦੇ ਹੋ?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "aboot ਇੰਸਟਾਲ ਕਰਨ ਵਿੱਚ ਗਲਤੀ, \n"
-#~ "ਇੰਸਟਾਲੇਸ਼ਨ ਮਜਬੂਰ ਕਰੋ ਭਾਵੇਂ ਇਹ ਪਹਿਲਾ ਭਾਗ ਨਕਾਰਾ ਕਰਦਾ ਹੈ?"
-
-#~ msgid "All"
-#~ msgstr "ਸਭ"
-
-#~ msgid "TV card"
-#~ msgstr "TV ਕਾਰਡ"
-
-#~ msgid "Boot"
-#~ msgstr "ਬੂਟ"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "ਪ੍ਰਮਾਣਿਕਤਾ"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d ਪੈਕੇਜ"
-#~ msgstr[1] "%d ਪੈਕੇਜ"
-
-#~ msgid "%d packages"
-#~ msgstr "%d ਪੈਕੇਜ"
-
-#~ msgid "Language"
-#~ msgstr "ਬੋਲੀ"
-
-#~ msgid "License"
-#~ msgstr "ਲਾਈਸੈਂਸ"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "ਇੰਸਟਾਲੇਸ਼ਨ ਸ਼੍ਰੇਣੀਆਂ ਚੁਣੋ"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "ਅਨੁਮਾਨ ਜਾਰੀ ਹੈ"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਪੈਕੇਜ ਚੁਣੋ"
-
-#~ msgid "Users"
-#~ msgstr "ਉਪਭੋਗੀ"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "ਪ੍ਰਤਿਬਿੰਬ ਦਾ URL?"
-#~ msgid "Networking"
-#~ msgstr "ਨੈਟਵਰਕਿੰਗ"
-
-#~ msgid "Configure X"
-#~ msgstr "X ਸੰਰਚਨਾ"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "ਤੁਹਾਡੇ ਕਰਨਲ ਦੇ ਅਨੁਸਾਰੀ ਕਰਨਲ ਮੈਡਿਊਲਾਂ ਤੱਕ ਪਹੁੰਚ ਨਹੀਂ ਸਕਦਾ (ਫਾਇਲ %s ਗੁੰਮ ਹੈ), ਆਮ ਤੌਰ ਤੇ ਇਸ "
-#~ "ਦਾ ਮਤਲਬ ਹੈ ਤੁਹਾਡੀ ਬੂਟ ਫਲਾਪੀ ਇੰਸਟਾਲੇਸ਼ਨ ਮਾਧਿਅਮ ਨਾਲ ਸਮਕਾਲੀ ਨਹੀਂ ਹੈ (ਕਿਰਪਾ ਕਰਕੇ ਨਵੀਂ "
-#~ "ਬੂਟ ਫਲਾਪੀ ਬਣਾਓ)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "ਪੈਕੇਜ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਪ੍ਰਤੀਬਿੰਬ ਚੁਣੋ"
diff --git a/perl-install/install/share/po/pl.po b/perl-install/install/share/po/pl.po
index f033473e0..c25205a7b 100644
--- a/perl-install/install/share/po/pl.po
+++ b/perl-install/install/share/po/pl.po
@@ -1,67 +1,97 @@
-# translation of DrakX.po to
-# Polish translation file
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# tomek, 2005.
-# Paweł Jabłoński <pj@linux-mandrake.com>, 2001,2002.
-# Arkadiusz Lipiec <arkadiusz.lipiec@gazeta.pl>, 2002-2004.
-# Tomasz Bednarski <bednarski@skrzynka.pl>, 2005.
-# Tomasz Bednarski <tomasz.bednarski@mandriva.pl>, 2005.
-# Maciej Walkowiak <m.walkowiak@computer.org>, 2005.
-# Tomasz Bednarski - Mandriva Poland <tomasz.bednarski@mandriva.pl>, 2006, 2007.
-# Tomasz Bednarski Mandriva Poland <tomasz.bednarski@mandriva.pl>, 2006.
-# Mandriva Poland <biuro@mandriva.pl>, 2006.
-# Tomasz Bednarski - Amazis.net <tomasz.bednarski@amazis.pl>, 2007.
-# Tomasz Bednarski - Amazis.net <tomasz.bednarski@mandriva.pl>, 2008.
-# Amazis.net sp. z o.o. - Tomasz Bednarski <tomasz.bednarski@mandriva.pl>, 2008.
-# Amazis.net sp. z o.o. - Tomasz Bednarski <tomasz.bednarski@amazis.pl>, 2009.
+# Translators:
+# Amazis.net sp. z o.o. - Tomasz Bednarski <tomasz.bednarski@amazis.pl>, 2009
+# Amazis.net sp. z o.o. - Tomasz Bednarski <tomasz.bednarski@mandriva.pl>, 2008
+# Daniel Napora <napcok@gmail.com>, 2013,2015
+# Maciej Walkowiak <m.walkowiak@computer.org>, 2005
+# Mandriva Poland <biuro@mandriva.pl>, 2006
+# Paweł Jabłoński <pj@linux-mandrake.com>, 2001-2002
+# Szymon Scholz <szymonscholz@gmail.com>, 2016
+# Tomasz Bednarski - Amazis.net <tomasz.bednarski@amazis.pl>, 2007
+# Tomasz Bednarski - Amazis.net <tomasz.bednarski@mandriva.pl>, 2008
+# Tomasz Bednarski <bednarski@skrzynka.pl>, 2005
+# Tomasz Bednarski - Mandriva Poland <tomasz.bednarski@mandriva.pl>, 2006-2007
+# Tomasz Bednarski Mandriva Poland <tomasz.bednarski@mandriva.pl>, 2006
+# Tomasz Bednarski <tomasz.bednarski@mandriva.pl>, 2005
+# tomek, 2005
+# Szymon Scholz <szymonscholz@gmail.com>, 2016
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-14 08:15+0200\n"
-"Last-Translator: Amazis.net sp. z o.o. - Tomasz Bednarski <tomasz."
-"bednarski@amazis.pl>\n"
-"Language-Team: <pl@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Daniel Napora <napcok@gmail.com>\n"
+"Language-Team: Polish (http://www.transifex.com/MageiaLinux/mageia/language/"
+"pl/)\n"
+"Language: pl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%"
-"100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n"
+"%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n"
+"%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Dołącz do nas!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Uczyń ją swoją!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Twój wybór!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Narzędzia biurowe"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Domowe centrum rozrywki"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Dla dzieci"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Dla rodziny!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Dla developerów!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Dziękujemy!"
-#: any.pm:109
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Bądź wolny!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Czy posiadasz inne dodatkowe nośniki?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -75,93 +105,57 @@ msgstr ""
"\n"
"Czy chcesz skonfigurować dodatkowe nośniki instalacyjne?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Sieć (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Sieć (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Sieć (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Adres URL dla serwera zwierciadlanego?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Adres URL musi zaczynać się od ftp:// lub http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Łączenie ze stroną Mandriva Linux w celu pobrania listy dostępnych "
-"serwerów..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Łączenie ze stroną Mandriva Linux w celu pobrania listy dostępnych serwerów"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Wybierz serwer lustrzany, z którego chcesz pobrać pakiety"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Konfiguracja NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Wprowadź nazwę komputera i katalog nośnika NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Brak nazwy hosta"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Oznaczenie katalogu musi się zaczynać od znaku \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Nazwa komputera udostępniające udziały NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Katalog"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Dodatkowe"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -170,23 +164,96 @@ msgstr ""
"Nie można znaleźć listy pakietów na tym serwerze. Sprawdź poprawność "
"lokalizacji."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Niektóre urządzenia w twoim komputerze wymagają nie-wolnego firmware, aby "
+"wolne sterowniki mogły działać."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Warto włączyć \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" zawiera różne komponenty systemu oraz aplikacje"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" zawiara nie-wolne oprogramowanie.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Zawiera również firmware niezbędne do działania niektórych urządzeń (jak: "
+"niektóre karty ATI/AMD, niektóre karty sieciowe, kontrolery RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" zawiara oprogramowanie, które w niektórych krajach nie może być "
+"dystrybuowane ze względu na patenty."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "Zawiera również oprogramowanie z \"%s\" "
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Możesz włączyć więcej nośników jeśli chcesz."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Ten nośnik zawiera aktualizacje pakietów dla nośnika \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Wyszukiwanie już zainstalowanych pakietów..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Wyszukiwanie pakietów do uaktualnienia..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Usuwanie pakietów w celu wykonania aktualizacji..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -199,87 +266,87 @@ msgstr ""
"\n"
"Czy naprawdę chcesz usunąć te pakiety?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Błąd odczytu pliku %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Zmieniono nazwy następujących dysków:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (wcześniejsza nazwa: %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Sieć"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Proszę wybrać nośnik"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Plik już istnieje. Nadpisać?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Dostęp zabroniony"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Niepoprawna nazwa NFS"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Nieprawidłowy nośnik %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Nie można pobrać zrzutu ekranu przed partycjonowaniem"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Zrzuty ekranu będą dostępne po instalacji w %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalacja"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfiguracja"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Należy także sformatować %s"
@@ -303,22 +370,22 @@ msgstr "Uruchamianie sieci"
msgid "Bringing down the network"
msgstr "Zatrzymywanie sieci"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Proszę czekać. Pobieranie pliku"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "dodanie nośnika było niemożliwe"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopiowanie wybranych pakietów do późniejszego wykorzystania"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopiowanie w toku"
@@ -348,7 +415,24 @@ msgstr "fajny"
msgid "maybe"
msgstr "taki sobie"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Pobieram informacje o pakietach z meta-danych XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Brak pliku z informacjami o programach znajdujących się na nośniku \"%s\". "
+"Wynik dla pakietu %s jest częściowy"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Brak opisu"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -357,75 +441,76 @@ msgstr ""
"Niektóre pakiety wymagane przez %s nie mogą zostać zainstalowane:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Wystąpił błąd:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Wystąpił poważny błąd: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Nie pytaj ponownie"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d transakcji instalacyjnych zakończonych niepowodzeniem"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Instalowanie pakietów nie powiodło się:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Stacja robocza"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Stacja biurowa"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Programy biurowe: procesory tekstu (OpenOffice.org Writer, Kword), arkusze "
-"kalkulacyjne (OpenOffice.org, Kspread), przeglądarki pdf, itd."
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programy biurowe: procesory tekstu (kword, abiword), arkusze kalkulacyjne "
-"(kspread, gnumeric), przeglądarki pdf, itd."
+"Programy biurowe: procesory tekstu (LibreOffice Writer, Kword), arkusze "
+"kalkulacyjne (LibreOffice, Kspread), przeglądarki pdf, itd."
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Stacja rozrywkowa (gry)"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programy rozrywkowe: gry przygodowe, planszowe, strategie, itd."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Stacja multimedialna"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programy do odtwarzania/edycji dźwięku i obrazu"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Stacja internetowa"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -434,193 +519,193 @@ msgstr ""
"Zestaw narzędzi do odczytu i przesyłania poczty i grup dyskusyjnych (mutt, "
"tin...) oraz przeglądania sieci"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Komputer sieciowy (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Programy klienckie dla różnych protokołów włączając ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Narzędzia do łatwego zarządzania komputerem"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Narzędzia konsolowe"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Edytory, powłoki, narzędzia plikowe, terminale"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Programowanie"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Biblioteki programistyczne C i C++, programy i pliki nagłówkowe"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentacja"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Książki i dokumenty HOWTO o Linuksie i Otwartym Oprogramowaniu"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Obsługa aplikacji firm trzecich"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Serwer WWW"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "System do pracy grupowej"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Serwer Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Zapora sieciowa/router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Bramka internetowa"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Poczta/wiadomości"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Serwer pocztowy Postfix, serwer grup Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Serwer katalogowy"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Serwer FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Serwer nazw domenowych i informacji sieciowych"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Serwer udostępniania plików i drukarek"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Serwer NFS, serwer Samby"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Baza danych"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Serwer bazodanowy PostgreSQL i MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Serwer bazodanowy PostgreSQL i MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Poczta"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Serwer pocztowy Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Serwer bazodanowy PostgreSQL i MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Serwer bazodanowy PostgreSQL i MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Serwer sieciowy"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Serwer NIS, serwer SMB, serwer pośrednika, serwer ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Środowisko graficzne"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Stacja KDE"
+msgid "Plasma Workstation"
+msgstr "Stacja Robocza Plazmy"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -629,12 +714,12 @@ msgstr ""
"Środowisko graficzne KDE, podstawowe środowisko graficzne ze zbiorem "
"narzędzi towarzyszących"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Stacja GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -643,66 +728,113 @@ msgstr ""
"Środowisko graficzne z przyjaznym dla użytkownika zbiorem aplikacji i "
"narzędzi graficznych"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Pulpit LXDE"
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+"Lekkie środowisko graficzne z przyjaznym dla użytkownika zbiorem aplikacji i "
+"narzędzi graficznych"
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Pulpit MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Pulpit Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Środowisko graficzne bazujące na Gnome"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Pulpit LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Nowa generacja lekkiego środowiska graficznego przeportowanego na QT"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
msgstr ""
"Lekkie i szybkie środowisko graficzne z przyjaznym dla użytkownika zbiorem "
"aplikacji i narzędzi graficznych"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Pulpit LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Lekkie i szybkie środowisko graficzne"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Inne środowiska graficzne"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, itd."
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, itd."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Narzędzia"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Serwer SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Serwer konfiguracji zdalnej Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Narzędzia sieciowe/monitorowanie"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Narzędzia do monitorowania, księgowania procesów, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Druidy Mandriva"
+msgid "Mageia Wizards"
+msgstr "Druidy Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Druidy do konfiguracji serwera"
@@ -716,7 +848,7 @@ msgstr ""
"Wystąpił jakiś błąd i nie wiadomo, jak poprawnie go obsłużyć.\n"
"Kontynuuj na własną odpowiedzialność."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -736,252 +868,257 @@ msgstr "Przechodzę do kroku `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Instalacja Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Instalacja %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> pomiędzy elementami"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Serwer Xorg rozpoczyna działanie. Proszę czekać..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"System ma mało zasobów. Mogą wystąpić problemy z instalacją.\n"
-"Jeśli tak się dzieje, spróbuj instalacji w trybie tekstowym.\n"
-"Aby tak zrobić, naciśnij F1 podczas startu z CD i wpisz \"text\"."
+"System ma mało zasobów. Mogą wystąpić problemy z instalacją\n"
+"%s. Jeśli tak się dzieje, spróbuj instalacji w trybie tekstowym.\n"
+"Aby tak zrobić, naciśnij F1 podczas startu z CD i wpisz 'text'."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Wybór nośników"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Zainstaluj środowisko graficzne Mandriva KDE"
+msgid "Install %s Plasma Desktop"
+msgstr "Zainstaluj %s Pulpit Plazmy"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Zainstaluj środowisko graficzne Mandriva GNOME"
+msgid "Install %s GNOME Desktop"
+msgstr "Zainstaluj środowisko graficzne %s GNOME"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Instalacja dowolna"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Pulpit KDE"
+msgid "Plasma Desktop"
+msgstr "Pulpit Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Pulpit GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Dowolny pulpit"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Przegląd pulpitu '%s'."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Kliknij obrazek, aby zobaczyć większy podgląd"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Wybór grup pakietów"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Samodzielny wybór pakietów"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Rozmiar: %d / %d MB"
+msgid "Unselect All"
+msgstr "Odznacz wszystko"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Uszkodzony pakiet"
+msgid "Total size: %d / %d MB"
+msgstr "Rozmiar: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Wersja: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Rozmiar: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Ważność: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Nie można zmienić statusu tego pakietu"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "z powodu brakującego %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "na skutek niespełnienia %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "próba aktualizacji wersji %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "w celu utrzymania %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Nie możesz wybrać tego pakietu. Nie ma już miejsca, by go zainstalować"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Zostaną zainstalowane następujące pakiety"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Zostaną usunięte następujące pakiety"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ten pakiet jest wymagany, nie można go pominąć"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Nie można odznaczyć tego pakietu. Został już zainstalowany"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Nie można odznaczyć tego pakietu. Musi zostać zaktualizowany"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Pokaż automatycznie wybrane pakiety"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Zainstaluj"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Wczytanie/Zapis zaznaczenia"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Uaktualnianie listy wybranych pakietów"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimalna instalacja"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Zarządzanie oprogramowaniem"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Wybierz pakiety do zainstalowania"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instalowanie"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Bez szczegółów"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Pozostały czas:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(szacowanie...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "pakiet"
msgstr[1] "%d pakietów"
msgstr[2] "%d pakietów"
+msgstr[3] "%d pakietów"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Różne"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfiguruj"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "nie skonfigurowano"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Wybór nośników"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -990,12 +1127,12 @@ msgstr ""
"Znaleziono poniższe nośniki instalacyjne.\n"
"Jeśli chcesz pominąć któreś z nich, możesz je teraz odznaczyć."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Istnieje możliwość skopiowania przed instalacją zawartości płyt CD na dysk "
@@ -1003,72 +1140,72 @@ msgstr ""
"Instalacja będzie kontynuowana z dysku twardego a skopiowane pakiety będą "
"dostępne po zakończeniu instalacji."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Skopiuj wszystkie płyty CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Wystąpił błąd"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Wybierz układ klawiatury"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Oto pełna lista dostępnych klawiatur:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalacja/Uaktualnienie"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Czy to instalacja czy uaktualnienie?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Zainstaluj"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Uaktualnienie %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Klucz szyfrujący dla %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Anuluj instalację, uruchom komputer ponownie"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Nowa instalacja"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Zaktualizuj istniejącą instalację (nie zalecane)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1076,7 +1213,7 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Instalator wykrył, że obecna instalacja systemu Mandriva Linux nie może\n"
+"Instalator wykrył, że obecna instalacja systemu Mageia nie może\n"
"zostać bezpiecznie zaktualizowana do wersji %s.\n"
"\n"
"Zalecana jest nowa instalacja, która zastąpi poprzednią.\n"
@@ -1084,38 +1221,17 @@ msgstr ""
"Uwaga: wykonaj kopie wszystkich osobistych plików zanim wybierzesz\n"
"opcję \"Nowa instalacja\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Konfiguracja IDE"
+msgid "Configuring CD/DVD"
+msgstr "Konfiguracja CD/DVD"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Brak wolnej przestrzeni na 1MB bootstrap! Instalacja będzie kontynuowana,"
-"lecz aby uruchomić system, należy utworzyć partycję bootstrap za pomocą "
-"programu DiskDrake."
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Konieczne jest utworzenie bootstrap PPC PReP!. Instalacja będzie "
-"kontynuowana, lecz aby uruchomić system, należy utworzyć partycję bootstrap "
-"w programie DiskDrake."
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1128,21 +1244,21 @@ msgstr ""
"Włóż płytę \"%s\" do napędu i naciśnij Ok. Jeśli jej nie posiadasz, naciśnij "
"Anuluj, aby pominąć instalację pakietów z tej płyty."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Wyszukiwanie dostępnych pakietów..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Za mało miejsca na dysku dla przeprowadzenia instalacji lub aktualizacji (%"
-"dMB > %dMB)"
+"Za mało miejsca na dysku dla przeprowadzenia instalacji lub aktualizacji "
+"(%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1152,52 +1268,52 @@ msgstr ""
"Format jest identyczny z dyskiem automatycznej\n"
"instalacji."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Wczytaj"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Zapisz"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Nieprawidłowy plik"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plazma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Wybór pulpitu"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Możesz wybrać profil swojego pulpitu: "
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Wybrany rozmiar przekracza dostępne miejsce"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Typ instalacji"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1206,87 +1322,129 @@ msgstr ""
"Nie wybrano żadnej grupy pakietów.\n"
"Wybierz minimalną żądaną instalację:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Z X Window"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instalowanie pakietu %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Zainstaluj sugerowane pakiety"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Z podstawową dokumentacją (zalecane!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Naprawdę minimalna instalacja (w szczególności bez urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Przygotowywanie aktualizacji..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Przygotowywanie instalacji"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instalowanie pakietu %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Wystąpił błąd porządkowania pakietów:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Kontynuować?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Ponów próbę"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Pomiń ten pakiet"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Pomiń wszystkie pakiety z nośnika \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Wróć do wyboru nośników i pakietów"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Wystąpił błąd podczas instalowania pakietu %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Konfiguracja poinstalacyjna"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Upewnij się, że nośnik Update Modules znajduje się w napędzie %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Aktualizacje"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Teraz masz okazję zainstalować media online."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "To pozwala zainstalować aktualizacje bezpieczeństwa."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"By zainstalować te media, potrzebujesz sprawnego połączenia \n"
+"internetowego.\n"
+"Czy chcesz zainstalować aktualizację tych mediów?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Zostaną zainstalowane następujące pakiety"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Ponowić próbę?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Niepowodzenie podczas dodawania nośnika"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1306,112 +1464,80 @@ msgstr ""
"\n"
"Czy chcesz zainstalować uaktualnienia ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s na %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Sprzęt"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Karta dźwiękowa"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Czy posiadasz kartę dźwiękową ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Uruchom \"alsaconf\" lub \"sndconfig\" po zakończeniu instalacji aby "
-"skonfigurować kartę dźwiękową"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Karta dźwiękowa nie została wykryta. Wypróbuj \"harddrake\" po zakończeniu "
-"instalacji"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interfejs graficzny"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Sieć i Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Serwery pośredniczące"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "skonfigurowano"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Poziom bezpieczeństwa"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Zapora sieciowa"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktywowano"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "wyłączono"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Nie masz skonfigurowanego systemu X Window. Czy na pewno chcesz tego?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
+msgid "Preparing initial startup program..."
msgstr "Przygotowywanie programu rozruchowego..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Proszę o cierpliwość, to może potrwać chwilę..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Prawdopodobnie posiadasz przestarzały (OldWorld)lub też nieznany (Unknown) "
-"komputer. Program rozruchowy yaboot nie będzie działał. Instalacja będzie "
-"kontynuowana, lecz konieczne jest użycie programu BootX, aby uruchomić "
-"komputer. Argument jądra dla głównego systemu plików \"/\": root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1420,17 +1546,17 @@ msgstr ""
"W tym poziomie zabezpieczeń, dostęp do plików na partycji Windows jest "
"ograniczony do administratora."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Włóż pustą dyskietkę do stacji %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Tworzenie dyskietki automatycznej instalacji..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1441,12 +1567,12 @@ msgstr ""
"\n"
"Czy na pewno chcesz teraz zakończyć?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Gratulacje"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Uruchom ponownie"
@@ -1541,13 +1667,6 @@ msgid ""
"Users"
msgstr "Użytkownicy"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Sieć"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1590,28 +1709,22 @@ msgid ""
"Exit"
msgstr "Wyjdź"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Zdecydowałeś się na aktualizację systemu do wersji %s. W Twoim obecnym "
-#~ "systemie \n"
-#~ "wykryto zainstalowane KDE 3.5. Jeżeli zdecydujesz się na aktualizację "
-#~ "instalator nie zaktualizuje KDE 3.5.\n"
-#~ "KDE 3.5 zostanie zastąpione przez KDE 4. W efekcie utracisz osobiste "
-#~ "ustawienia KDE.\n"
-#~ "Aby zaktualizować system i zachować KDE 3.5 z Twoimi osobistymi "
-#~ "ustawieniami,\n"
-#~ "uruchom ponownie komputer i zaktualizuj system używając apletu Mandriva "
-#~ "Update."
-
-#~ msgid "Proceed"
-#~ msgstr "Rozpocznij"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "pobieranie [%s] nie powiodło się"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Adres URL dla serwera zwierciadlanego?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Adres URL musi zaczynać się od ftp:// lub http://"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Łączenie ze stroną %s w celu pobrania listy dostępnych serwerów..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr "Łączenie ze stroną %s w celu pobrania listy dostępnych serwerów"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Wybierz serwer lustrzany, z którego chcesz pobrać pakiety"
diff --git a/perl-install/install/share/po/pt.po b/perl-install/install/share/po/pt.po
index f60a5454b..5989bc4f2 100644
--- a/perl-install/install/share/po/pt.po
+++ b/perl-install/install/share/po/pt.po
@@ -1,69 +1,98 @@
-# translation of pt.po to Português
-# translation of pt.po to
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Latest versions of po files are at http://www.mandrivalinux.com/l10n/pt.php3
-#
-# Copyright (C) 2000 Mandriva
-#
-# Fernando Moreira <fmoreira@netc.pt>, 1999.
-# Jorge Costa <Jorgercosta@netc.pt>, 2001.
-# José JORGE <jose.jorge@oreka.com>, 2002,2003.
-# Jose Jorge <jjorge@free.fr>, 2003, 2004, 2005.
-# Jose Carlos D. S. Saraiva <jose.d.s.saraiva@clix.pt>, 2004.
-# Zé <mmodem00@netvisao.pt>, 2004, 2005, 2006.
-# Américo José Melo <mmodem00@netvisao.pt>, 2004, 2005.
-# Ze <mmodem00@netvisao.pt>, 2004.
-# José Melo <mmodem00@gmail.com>, 2005.
-# José Melo <mmodme00@gmail.com>, 2005.
-# Jose JORGE <jjorge@free.fr>, 2005.
-# Zé <mmodem00@gmail.com>, 2006, 2007, 2008.
-# Zé <ze@mandriva.org>, 2008.
+# Translators:
+# alfalb_mansil, 2014
+# fc2d9c36d73e741383fbbf46a4aac49f_013445b, 2014
+# Fernando Moreira <fmoreira@netc.pt>, 1999
+# Jorge Costa <Jorgercosta@netc.pt>, 2001
+# Jose Carlos D. S. Saraiva <jose.d.s.saraiva@clix.pt>, 2004
+# zecas <jjorge@free.fr>, 2003-2005
+# José JORGE <jose.jorge@oreka.com>, 2002-2003
+# 425fe09b3064b9f906f637fff94056ae_a00ea56 <0fa3588fa89906bfcb3a354600956e0e_308047>, 2015
+# Manuela Silva <mmsrs@sky.com>, 2020
+# Manuela Silva <mmsrs@sky.com>, 2013-2016
+# Manuela Silva <mmsrs@sky.com>, 2021,2023
+# MMSRS, 2015
+# 425fe09b3064b9f906f637fff94056ae_a00ea56 <0fa3588fa89906bfcb3a354600956e0e_308047>, 2015
+# Pedro <simplew8@gmail.com>, 2012
+# Rui <xymarior@yandex.com>, 2018-2019
+# Sérgio Marques <smarquespt@gmail.com>, 2019
+# Zé <ze@mandriva.org>, 2004-2006,2008,2010-2012
msgid ""
msgstr ""
-"Project-Id-Version: pt\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2008-10-02 21:35+0100\n"
-"Last-Translator: Zé <ze@mandriva.org>\n"
-"Language-Team: Português <pt@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Manuela Silva <mmsrs@sky.com>, 2021,2023\n"
+"Language-Team: Portuguese (http://app.transifex.com/MageiaLinux/mageia/"
+"language/pt/)\n"
+"Language: pt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % "
+"1000000 == 0 ? 1 : 2;\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr "Junte-se a Nós!"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "O seu ecrã num dispositivo USB"
+msgid "Make it yours!"
+msgstr "Torne-o seu!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "A distribuição Mandriva Linux 100%% código livre"
+msgid "Your choice!"
+msgstr "A sua escolha!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Explore o Linux facilmente com o Mandriva One"
+msgid "Office tools"
+msgstr "Ferramentas de Escritório"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Um ecrã Mandriva Linux completo, com suporte"
+msgid "Home entertainment"
+msgstr "Entretenimento em Casa"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: distribuições para as necessidades de todos os utilizadores"
+msgid "For kids"
+msgstr "Para os miúdos!"
-#: any.pm:109
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Para a família!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Para os responsáveis pelo desenvolvimento!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Obrigado!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Seja livre!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Tem mais alguma média suplementar?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -76,94 +105,57 @@ msgstr ""
"\n"
"Tem alguma média de instalação suplementar para configurar?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Rede (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Rede (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Rede (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL do espelho?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "O URL deve começar por ftp:// ou http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"A contactar o sítio web Mandriva Linux para obter a lista de espelhos "
-"disponíveis..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Falha ao contactar o sítio web Mandriva Linux para obter a lista de espelhos "
-"disponíveis"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Escolha um espelho para transferir os pacotes"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Configuração NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr "Por favor indique o endereço e o directório da sua média NFS"
+msgstr "Por favor indique o nome da máquina e o directório da sua média NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
-msgstr "Nome do endereço em falta"
+msgstr "Nome da máquina em falta"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "O directório deve começar por \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
-msgstr "Endereço da montagem NFS?"
+msgstr "Nome da máquina da montagem NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Directório"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Suplementar"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -172,23 +164,98 @@ msgstr ""
"Não é possível encontrar o ficheiro hdlist neste espelho. Certifique-se que "
"a localização está correcta."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Lançamento 'Core'"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Lançamento 'Tainted'"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Lançamento 'Nonfree'"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Algum ''hardware'' na sua máquina precisa de ''firmwares'' proprietários "
+"para que os controladores de programas livres funcionem."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Deverá ativar \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" contém as várias partes do seu sistema e das suas aplicações"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" contém programas proprietários.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Também contém 'firmware' necessário para que alguns dispositivos funcionem "
+"(exemplo: algumas placas gráficas ATI/AMD, algumas placas de rede, algumas "
+"placas RAID...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" contém programas que não pode ser distribuídos em alguns países "
+"devido às patentes existentes."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Também contém programas de \"%s\", recriado com capacidades adicionais."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Se desejar, pode ativar aqui mais fontes."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Este disco disponibiliza as atualizações do pacote para \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "A verificar os pacotes já instalados..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "A procurar pacotes para actualizar..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "A remover pacotes antes de actualizar..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -196,93 +263,93 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Os seguintes pacotes serão removidos para poder actualizar o seu sistema: %"
-"s\n"
+"Os seguintes pacotes serão removidos para poder actualizar o seu sistema: "
+"%s\n"
"\n"
"\n"
"Deseja realmente remover estes pacotes ?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Erro ao ler o ficheiro %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Os seguintes discos foram renomeados:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (anteriormente conhecido por %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rede"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Por favor escolha uma média"
+msgstr "Por favor escolha uma fonte"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "O ficheiro já existe. Deseja sobrepôr o ficheiro?"
+msgstr "O ficheiro já existe. Deseja substituir o ficheiro?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permissão negada"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Nome NFS inválido"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "Média danificada %s"
+msgstr "Fonte inválida %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Não é possível capturar imagens do ecrã antes de particionar"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "As capturas de ecrã estarão disponíveis após instalar em %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalação"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configuração"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Deve também formatar %s"
@@ -299,29 +366,29 @@ msgstr ""
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "A ligar a rede"
+msgstr "A ligar rede"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "A desligar a rede"
+msgstr "A desligar rede"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "Por favor aguarde, a obter o ficheiro"
+msgstr "Por favor aguarde, estamos a obter o ficheiro"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "não foi possível adicionar a fonte"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "A copiar alguns pacotes no disco para uso futuro"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Cópia em progresso"
@@ -351,7 +418,24 @@ msgstr "bom"
msgid "maybe"
msgstr "talvez"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "A obter informação do pacote nos meta-dados XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Não há informação xml da fonte \"%s\", apenas um resultado parcial do pacote "
+"%s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nenhuma descrição"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -360,354 +444,400 @@ msgstr ""
"Alguns pacotes pedidos por %s não podem ser instalados:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Ocorreu um erro"
+msgstr "Ocorreu um erro:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Ocorreu um erro fatal: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Não voltar a perguntar"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d transacções de instalação falhadas"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "A instalar o pacote %s"
+msgstr "Instalação dos pacotes falhada:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Estação de Trabalho"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Estação de Trabalho de Escritório"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Programas Office: processadores de texto (OpenOffice.org Writer, Kword), "
-"folhas de cálculo (OpenOffice.org Calc, Kspread), visualizadores PDF, etc"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programas office: processadores de texto (kword, abiword), folhas de cálculo "
-"(kspread, gnumeric), visualizadores pdf, etc"
+"Programas Office: processadores de texto (LibreOffice Writer, Kword), folhas "
+"de cálculo (LibreOffice Calc, Kspread), visualizadores PDF, etc"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Estação de Jogo"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programas de divertimento: arcada, tabuleiros, estratégia, etc"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Estação multimédia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Aplicações de reprodução/edição de som e vídeo"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Estação internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Conjunto de ferramentas para ler e enviar correio electrónico e news (pine, "
-"mutt, tin...) e para navegar na Web"
+"Conjunto de ferramentas para ler e enviar ''e-mail'' e notícias (mutt, "
+"tin...) e para explorar a Web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Computador de Rede (cliente)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Clientes para diferentes protocolos incluindo ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Ferramentas para facilitar a configuração do seu computador"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Ferramentas de Consola"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr ""
"Editores, Linha de Comandos (shell), ferramentas de ficheiros, terminais"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Desenvolvimento"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C e C++ bibliotecas de programação, programas e ficheiros 'include'"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentação"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Livros e Howto's sobre o Linux e Programas Livres"
+msgstr "\"Livros e Como\" sobre o Linux e Programas Livres"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Base Padrão do Linux (LSB). Suporte a aplicações terceiras."
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Servidor Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Servidor Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet gateway"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Correio/Noticias"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Servidor de correio electrónico Postfix , servidor de noticias In"
+msgstr "Servidor de ''e-mail'' Postfix , servidor de noticias Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Servidor de Directório"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Servidor FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Nome do Domínio e Servidor de Informação da Rede"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Servidor de Partilhas de Ficheiros e Impressão"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Servidor NFS, Servidor Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Base de Dados"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Servidor de Base de Dados PostgreSQL e MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Servidores de base de dados - PostgreSQL e MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Correio Electrónico"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Servidor de correio electrónico Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Servidor de Base de Dados PostgreSQL ou MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Servidores de base de dados - PostgreSQL e MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Servidor/Computador de Rede"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "Servidor NFS, servidor SMB, servidor Proxy, servidor SSH"
+msgstr "Servidor NFS, servidor SMB, servidor proxy, servidor SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr "Ambiente Gráfico"
+msgstr "Ambiente gráfico"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Estação de Trabalho KDE"
+msgid "Plasma Workstation"
+msgstr "Plasma Workstation"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"O Ecrã de Trabalho K (KDE), o ambiente gráfico básico com uma colecção de "
-"ferramentas de acompanhamento"
+"K Desktop Environment, ambiente gráfico com uma coleção de ferramentas de "
+"acompanhamento"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Estação de Trabalho GNOME"
+msgstr "GNOME Workstation"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-"Um ambiente gráfico com um conjunto de aplicações amigáveis e ferramentas de "
-"ecrâ"
+"Ambiente gráfico com um conjunto de aplicações e ferramentas de alta "
+"qualidade"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Ecrâ KDE"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Xfce Workstation"
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Um ambiente gráfico com um conjunto de aplicações amigáveis e ferramentas de "
-"ecrâ"
+"Ambiente gráfico mais leve com um conjunto de aplicações e ferramentas "
+"simples"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Estação de Trabalho MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Estação de Trabalho Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Um ambiente gráfico baseado no GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Estação de trabalho LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Ambiente gráfico leve, criado para a próxima geração de Qt"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Estação de trabalho Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Ambiente gráfico leve e rápido com seguidores dedicados"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Ecrâ LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Ambiente gráfico rápido e leve"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Outros Ambientes Gráficos"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, etc."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilidades"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Servidor SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Servidor de Configuração Remota Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Utilidades de Rede/Monitorização"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
"Monitorização de ferramentas, contabilidade de processos, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Assistentes Mandriva"
+msgid "Mageia Wizards"
+msgstr "Assistentes Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Assistentes para configurar o servidor"
@@ -718,363 +848,369 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Ocorreu um erro, mas é possível saber como resolver correctamente.\n"
-"Continue a seu próprio risco."
+"Ocorreu um erro e não nos é possível determinar como o corrigir.\n"
+"Pode continuar, mas poderão surgir problemas."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Alguns pacotes importantes não foram devidamente instalados.\n"
-"O controlador do seu cdrom ou o seu cdrom está defeituoso.\n"
-"Verifique o cdrom num computador com instalação usando \"rpm -qpl media/main/"
+"Pode ser que exista algum problema com o CD ou com a unidade.\n"
+"Verifique se existem erros no CD, executando o comando \"rpm -qpl media/main/"
"*.rpm\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "A entrar na etapa `%s'\n"
+msgstr "A entrar na etapa '%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Instalação Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Instalação %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> entre elementos"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "O servidor Xorg está lento para iniciar. Por favor aguarde..."
+msgstr "O servidor Xorg está a demorar para iniciar. Por favor aguarde..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"O seu sistema é baixo em recursos. Pode ter algum problema ao instalar\n"
-"o Mandriva Linux. Se isso ocorrer, pode tentar uma instalação em modo "
-"texto.\n"
-"Para isso, prima `F1' quando arrancar do CDROM, e depois digite `text'."
+"O seu sistema tem poucos recursos. Pode encontrar problemas ao tentar "
+"instalar %s.\n"
+"Se isso ocorrer, pode tentar uma instalação em modo texto.\n"
+"Para isso, prima 'F1' ao arrancar do CD e depois digite 'text'."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Seleção de fonte"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Instalar Ecrã KDE Mandriva"
+msgid "Install %s Plasma Desktop"
+msgstr "Instalar Plasma Desktop %s"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Instalar Ecrã GNOME Mandriva"
+msgid "Install %s GNOME Desktop"
+msgstr "Instalar GNOME Desktop %s"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Instalação personalizada"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Ecrâ KDE"
+msgid "Plasma Desktop"
+msgstr "Plasma Desktop"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
-msgstr "Ecrâ GNOME"
+msgstr "GNOME Desktop"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Ecrâ Personalizado"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Aqui está uma previsão do ecrã '%s'."
+msgstr "Aqui está uma pré-visualização do ecrã '%s'."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Clique nas imagens para ver uma previsão maior."
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Selecção dos Grupos de Pacotes"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Selecção individual de pacotes"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Tamanho total: %d / %d MB"
+msgid "Unselect All"
+msgstr "Desmarcar Tudo"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pacote danificado"
+msgid "Total size: %d / %d MB"
+msgstr "Tamanho total: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versão: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Tamanho: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Importância: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Não pode seleccionar/desseleccionar este pacote"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "devido a faltar %s"
+msgstr "porque %s está em falta"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "devido a %s insatisfeitas"
+msgstr "porque %s não foi satisfeito"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "a tentar promover %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "para manter %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-"Não pode seleccionar este pacote pois não existe espaço livre para o instalar"
+"Não pode selecionar este pacote porque não existe espaço suficiente para o "
+"instalar"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Os seguintes pacotes irão ser instalados"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Os seguintes pacotes irão ser removidos"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Este é um pacote obrigatório, não pode ser desmarcado"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Este é um pacote obrigatório e não pode ser desmarcado"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "Não pode desmarcar este pacote. Já se encontra instalado"
+msgid "You cannot unselect this package. It is already installed"
+msgstr "Não pode desmarcar este pacote. Já se encontra instalado."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Não pode desmarcar este pacote. Tem que ser actualizado"
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "Não pode desmarcar este pacote. Tem que ser atualizado."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "Mostrar pacotes seleccionados automaticamente"
+msgstr "Mostrar pacotes selecionados automaticamente"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalar"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Carregar/Gravar selecção"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
-msgstr "A actualizar selecção de pacotes"
+msgstr "A atualizar seleção de pacotes"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Alternar entre a lista de pacotes hierárquicos e planos"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Instalação mínima"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Gestão de Programas"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Escolha os pacotes que deseja instalar"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instalação"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Sem detalhes"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Tempo restante:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(a estimar...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pacote"
msgstr[1] "%d pacotes"
+msgstr[2] "%d pacotes"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Sumário"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configurar"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "não configurado"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Selecção de Média"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"A seguinte média de instalação foi encontrada.\n"
-"Se quer evitar alguns deles, pode desmarcá-los agora."
+"As seguintes fontes de instalação foram encontrada.\n"
+"Se quer evitar alguma, pode desmarcá-la agora."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Tem a opção de copiar o conteúdo dos CDs para o disco rígido antes da "
+"Tem a opção de copiar o conteúdo do CD para o disco rígido antes da "
"instalação.\n"
-"Irá continuar a partir do disco rígido e os pacotes irão permanecer "
-"disponíveis assim que o sistema estiver instalado."
+"Continuará a partir do disco rígido e os pacotes permanecerão disponíveis "
+"assim que o sistema estiver instalado."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr "Copiar todos os CDs"
+msgstr "Copiar CDs inteiros"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Ocorreu um erro"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Por favor escolha o tipo de teclado"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Aqui está a lista completa dos teclados disponíveis:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalar/Actualizar"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Isto é uma instalação ou uma actualização?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instalar"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Actualizar %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Senha de encriptação para %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Cancelar instalação, reiniciar o sistema"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Nova Instalação"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Actualizar instalação anterior (não recomendado)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1082,46 +1218,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"O instalador detectou que o seu sistema Mandriva Linux não pode\n"
-"ser seguramente actualizado para o %s.\n"
+"O instalador detetou que o seu sistema Linux instalado não pode\n"
+"ser atualizado com segurança para %s.\n"
"\n"
"Recomenda-se que substitua a sua instalação anterior.\n"
"\n"
-"Aviso: deve salvaguardar todos os seus dados pessoais antes de\n"
-"escolher \"Nova Instalação\"."
+"Aviso: deve efetuar uma cópia de segurança de todos os seus dados pessoais "
+"antes de escolher \"Nova instalação\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "A configurar IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Sem espaço livre para a partição de arranque de 1MB (bootstrap)! A "
-"instalação irá continuar, mas para arrancar o seu sistema, irá precisar de "
-"criar a partição de arranque no DiskDrake"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Irá precisar de criar uma partição de arranque (PPC PReP Boot bootstrap)! A "
-"instalação irá continuar, mas para arrancar o seu sistema, irá precisar de "
-"criar a partição de arranque no DiskDrake"
+msgid "Configuring CD/DVD"
+msgstr "A configurar CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1129,79 +1244,80 @@ msgid ""
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"Mude o seu Cd-Rom!\n"
-"Por favor insira o Cd-Rom \"%s\" no seu dispositivo e prima Ok.\n"
-"Se não tiver este Cd-Rom, prima Cancelar para evitar a instalação deste."
+"Mude o seu CD!\n"
+"Por favor, insira o Cd-Rom \"%s\" na sua unidade e clique em \"Ok\".\n"
+"Se não tiver este CD, clique em \"Cancelar\" para evitar a instalação a "
+"partir deste Cd-Rom."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "A procurar pacotes disponíveis..."
+msgstr "Está à procura de pacotes disponíveis..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"O seu sistema não tem espaço suficiente em disco para instalar ou actualizar "
+"O seu sistema não tem espaço suficiente em disco para instalar ou atualizar "
"(%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Por favor escolha carregar ou gravar uma selecção de pacotes.\n"
-"O formato é o mesmo como o dos ficheiros gerados por auto_install."
+"Por favor escolha carregar ou guardar a seleção de pacotes.\n"
+"O formato é o mesmo dos ficheiros gerados por auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Carregar"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Gravar"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Ficheiro danificado"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Selecção de Ecrã"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Pode escolher o seu perfil de ambiente de trabalho."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
-msgstr "O tamanho seleccionado é maior que o espaço disponível"
+msgstr "O tamanho selecionado é maior do que o espaço disponível"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tipo de instalação"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1210,89 +1326,132 @@ msgstr ""
"Não escolheu qualquer grupo de pacotes.\n"
"Por favor escolha o tipo de instalação mínima que deseja:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Com X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "A instalar o pacote %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Instalar os pacotes recomendados "
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Com documentação básica (recomendado!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Instalação mínima (especialmente sem urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "A preparar a atualização ..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "A preparar instalação"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "A instalar o pacote %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Ocorreu um erro ao ordenar os pacotes:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Continuar mesmo assim?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Tentar novamente"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Saltar este pacote"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "Saltar todos os pacotes da média \"%s\""
+msgstr "Ignorar todos os pacotes da fonte \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Voltar à média e selecção de pacotes"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Ocorreu um erro ao instalar o pacote %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Configuração pós-instalação"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-"Por favor certifique-se que a média Módulos de Actualização está no "
+"Por favor certifique-se de que a fonte Módulos de atualização está no "
"dispositivo %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Actualizações"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Agora tem oportunidade de configurar uma fonte online."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Isto permite instalar as atualizações de segurança."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Para configurar estas fontes, terá de ter uma ligação \n"
+"à Internet a funcionar.\n"
+"\n"
+"Deseja configurar uma fonte de atualização?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Esse downloader não pôde ser instalado"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Repetir?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Falha ao adicionar a fonte"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1304,153 +1463,123 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Tem agora a possibilidade de transferir os pacotes de actualização.\n"
-"Estes pacotes foram actualizados após o lançamento da distribuição.\n"
-"Podem ter correcções de segurança ou de erros.\n"
+"Agora, tem a possibilidade de transferir os pacotes de atualização.\n"
+"Estes pacotes foram atualizados depois do lançamento da distribuição.\n"
+"Estes podem ter correções de segurança ou de erros.\n"
"\n"
-"Para transferir estes pacotes, irá precisar de uma conexão Internet activa.\n"
+"Para transferir estes pacotes, precisará de uma ligação à Internet.\n"
"\n"
-"Deseja instalar as actualizações ?"
+"Deseja instalar as atualizações?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s em %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Material"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Placa de Som"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Tem alguma placa de som ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Execute \"alsaconf\" ou \"sndconfig\" após a instalação para configurar a "
-"sua placa de som"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Nenhuma placa de som detectada. Tente \"harddrake\" após a instalação"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interface gráfico"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Rede e Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxies"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "configurado"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Nível de Segurança"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "activado"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "desactivado"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Não configurou o X. Tem certeza que deseja fazer isto?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "A preparar o carregador de arranque..."
+msgid "Preparing initial startup program..."
+msgstr "A preparar o programa inicial de arranque..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Parece ter uma máquina do Século Passado ou Desconhecida, o carregador de "
-"arranque yaboot não irá funcionar para si. A instalação irá continuar, mas "
-"irá precisar de usar o BootX ou algum outro meio para arrancar a sua "
-"máquina. O argumento do kernel para root fs é: root=%s"
+msgstr "Seja paciente, isto pode demorar algum tempo..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"Neste nível de segurança, o acesso aos ficheiros na partição do Windows é "
+"Neste nível de segurança, o acesso aos ficheiros na partição Windows está "
"limitado ao administrador."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Insira uma disquete vazia no dispositivo %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "A criar disquete de auto-instalação..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-"Alguns passos não estão completos.\n"
+"Algumas etapas não foram concluídas.\n"
"\n"
-"Deseja realmente sair agora?"
+"Deseja mesmo sair agora?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Parabéns"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Reiniciar"
@@ -1461,12 +1590,12 @@ msgstr "Reiniciar"
msgid ""
"_: Keep these entry short\n"
"Language"
-msgstr "Linguagem"
+msgstr "Idioma"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr "Localização"
+msgstr "Tradução"
#: steps_list.pm:17
#, c-format
@@ -1494,7 +1623,7 @@ msgstr "Detecção de discos rígidos"
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr "Classe de instalação"
+msgstr "Classe da instalação"
#: steps_list.pm:23
#, c-format
@@ -1545,13 +1674,6 @@ msgid ""
"Users"
msgstr "Utilizadores"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rede"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1593,60 +1715,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Sair"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Decidiu actualizar o seu sistema para %s. Foi detectado o KDE 3.5 no seu\n"
-#~ "sistema. Este instalador não pode perservar o KDE 3.5 numa actualização. "
-#~ "Se decidir continuar,\n"
-#~ "O KDE 4 irá substituir o KDE 3, e irá perder as suas configurações "
-#~ "pessoais.\n"
-#~ "Para actualizar com o KDE 3.5 e as suas configurações pessoais "
-#~ "perservadas,\n"
-#~ "por favor reinicie o seu sistema e actualize usando a ferramenta de "
-#~ "actualização Mandriva."
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "A transferir o ficheiro %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr ""
-#~ "A actualização de uma distribuição 32bit para uma 64bit não é suportada"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr ""
-#~ "A actualização de uma distribuição 64bit para uma 32bit não é suportada"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Seleccionou o(s) seguinte(s) servidor(es): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Estes servidores são activados por omissão. Não têm qualquer problema\n"
-#~ "de segurança conhecido, mas podem ser encontrados alguns novos "
-#~ "problemas.\n"
-#~ "Nesse caso, deve actualizar o seu sistema assim que possível.\n"
-#~ "\n"
-#~ "\n"
-#~ "Deseja realmente instalar estes servidores?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Ecrã IceWm"
diff --git a/perl-install/install/share/po/pt_BR.po b/perl-install/install/share/po/pt_BR.po
index 264d86ad4..26c679fb7 100644
--- a/perl-install/install/share/po/pt_BR.po
+++ b/perl-install/install/share/po/pt_BR.po
@@ -1,67 +1,98 @@
-# translation of pt_BR.po to Brazilian portuguese
-# translation of pt_BR.po to
-# tradução de DrakX-pt_BR.po para Português do Brasil
-# DRAKX PT_BR PO FILE
-# Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
-# Lisiane Sztoltz Teixeira <lisiane@mandriva.com>
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Andrei Bosco Bezerra Torres <andrei_bosco@yahoo.com.br>, 2000, 2003.
-# Bruno Dorfman Buys <brunobuys@zipmail.com.br>, 2002.
-# Tiago da Cruz Bezerra <tiagocruz18@uol.com.br>,2002 2003, 2004.
-# Ricardo de Castilho <cast_brasil@ig.com.br>, 2003.
-# Carlinhos Cecconi <carlinux@terra.com.br>, 2003, 2004.
-# Deivi Lopes Kuhn <deivikuhn@yahoo.com.br>, 2003, 2004.
-# Cristiano Otto Von Trompczynski <cris@mandriva.com>, 2005.
-# Arthur R. Mello <renato@conectiva.com.br>, 2005.
-# Arthur Renato Mello <renato@conectiva.com.br>, 2005.
-# Felipe Arruda <felipemiguel@gmail.com>, 2006, 2007, 2008.
-# Sergio Rafael Lemke <sergio@mandriva.com.br>, 2009.
+# Translators:
+# Andrei Bosco Bezerra Torres <andrei_bosco@yahoo.com.br>, 2000,2003
+# Arthur Renato Mello <renato@conectiva.com.br>, 2005
+# Arthur R. Mello <renato@conectiva.com.br>, 2005
+# Bruno Dorfman Buys <brunobuys@zipmail.com.br>, 2002
+# Carlinhos Cecconi <carlinux@terra.com.br>, 2003-2004
+# Cristiano Otto Von Trompczynski <cris@mandriva.com>, 2005
+# Deivi Lopes Kuhn <deivikuhn@yahoo.com.br>, 2003-2004
+# Felipe Arruda <felipemiguel@gmail.com>, 2006-2008
+# Gilberto F. da Silva, 2022-2023
+# 3f37d448649cd548fa5a733e33387c2a_dee4ccf, 2014-2019
+# Michael Martins, 2017
+# Michael Martins, 2017,2019,2024
+# Michael Martins, 2019,2024
+# Ricardo de Castilho <cast_brasil@ig.com.br>, 2003
+# Sergio Rafael Lemke <sergio@mandriva.com.br>, 2009-2010
+# Tiago da Cruz Bezerra <tiagocruz18@uol.com.br>,2002 2003, 2004
msgid ""
msgstr ""
-"Project-Id-Version: pt_BR\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-02-16 18:15-0300\n"
-"Last-Translator: Sergio Rafael Lemke <sergio@mandriva.com.br>\n"
-"Language-Team: Brazilian portuguese <en@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Tiago da Cruz Bezerra <tiagocruz18@uol.com.br>,2002 2003, "
+"2004\n"
+"Language-Team: Portuguese (Brazil) (http://app.transifex.com/MageiaLinux/"
+"mageia/language/pt_BR/)\n"
+"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % "
+"1000000 == 0 ? 1 : 2;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Seu desktop em um Pendrive USB"
+msgid "Join Us!"
+msgstr "Junte-se a nós!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "A distribuição Mandriva Linux 100%% open source"
+msgid "Make it yours!"
+msgstr "Faça do seu jeito!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Explore facilmente o Linux com o Mandriva One"
+msgid "Your choice!"
+msgstr "Sua escolha!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Um Desktop Mandriva Linux completo, com suporte"
+msgid "Office tools"
+msgstr "Ferramentas de escritório"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: distribuições para todas as necessidades"
+msgid "Home entertainment"
+msgstr "Entretenimento doméstico"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Para as crianças"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Para a família!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Para os desenvolvedores!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Obrigado!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Seja livre!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Você tem alguma mídia suplementar adicional?"
+msgstr "Tem mais mídias adicionais?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -69,124 +100,163 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"A mídia a seguir foi encontrada e será usada durante a instalação: %s.\n"
+"As seguintes mídias foram encontradas e serão usadas durante a instalação: "
+"%s.\n"
"\n"
"\n"
-"Você deseja configurar alguma mídia suplementar?"
+"Tem alguma mídia de instalação adicional para configurar?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Rede (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Rede (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Rede (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL do Servidor?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL deve começar com ftp:// ou http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Contactando o site do Mandriva Linux para pegar a lista de "
-"servidoresdisponíveis..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Falha contactando o site do Mandriva Linux em busca da lista de servidores "
-"disponíveis"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Escolha um servidor de onde pegar os pacotes "
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Configuração NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr "Por favor, entre o nome do servidor e o diretório da sua mídia NFS"
+msgstr "Insira o nome do host e o diretório de suas mídias NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
-msgstr "Nome da máquina faltando"
+msgstr "Nome do host ausente"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "O diretório deve começar com \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
-msgstr "Nome do servidor do ponto de montagem NFS"
+msgstr "Nome do host da montagem NFS ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Diretório"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Adicional"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"Não encontro uma lista de pacotes neste servidor. Verifique se a localização "
-"está correta."
+"Não foi possível encontrar um arquivo de lista de pacotes neste espelho. "
+"Certifique-se de que o local esteja correto."
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Alguns componentes de hardware em sua máquina necessitam de firmwares não "
+"livres para que os drivers de software livre funcionem."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Você deve ativar \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" contém as várias partes dos sistemas e suas aplicações"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" contém software não livre.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Ela também contém firmwares necessários para o funcionamento de certos "
+"dispositivos (por exemplo: algumas placas de vídeo ATI/AMD, algumas placas "
+"de rede, algumas placas RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" contém software que não pode ser distribuído em todos os países "
+"devido a patentes de software."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Ela também contém software de reconstrução de \"%s\" com recursos adicionais."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Aqui você pode ativar mais mídias, se quiser."
-#: any.pm:334
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Essa mídia fornece atualizações de pacotes para a mídia \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Procurando por pacotes já instalados..."
+msgstr "Verificando pacotes já instalados..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Procurando pacotes para atualizar..."
+msgstr "Encontrando pacotes para atualizar..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Removendo pacotes antes da atualização..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -194,93 +264,93 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Os seguintes pacotes serão removidos para permitir a atualização do seu\n"
+"Os seguintes pacotes serão removidos para permitir a atualização do seu "
"sistema: %s\n"
"\n"
"\n"
-"Você realmente quer remover estes pacotes?\n"
+"Deseja realmente remover estes pacotes?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Erro ao ler o arquivo %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "O(s) seguinte(s) disco(s) foi renomeado:"
+msgstr "O(s) seguinte(s) disco(s) foi(ram) renomeado(s):"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
-msgstr "%s (previamente nomeado como %s)"
+msgstr "%s (anteriormente chamado de %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rede"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "Por favor, escolha uma mídia"
+msgstr "Escolha uma mídia"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "O arquivo já existe. Sobrescrevê-lo?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permissão negada"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr "Nome NFS inválido"
+msgstr "Nome NFS incorreto"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Mídia %s ruim"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Não foi possível capturar telas antes de particionar"
+msgid "Cannot make screenshots before partitioning"
+msgstr "Não é possível fazer capturas de tela antes do particionamento"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "As captura de tela estarão disponíveis depois da instalação em %s"
+msgstr "As capturas de tela estarão disponíveis após a instalação em %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalação"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configuração"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Você também deve formatar %s"
@@ -291,43 +361,44 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Algum hardware no seu computador precisa de drivers 'proprietários' \n"
-"para funcionar. Você pode encontrar informações sobre eles em: %s"
+"Alguns hardwares em seu computador precisam de drivers ``proprietários'' "
+"para funcionar.\n"
+"Você pode encontrar algumas informações sobre eles em: %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "Ativando a rede"
+msgstr "Abrindo a rede"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "Desativando a rede"
+msgstr "Derrubando a rede"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "Por favor aguarde, obtendo o arquivo"
+msgstr "Aguarde, baixando arquivo"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr "incapaz de adicionar mídia"
+msgstr "não foi possível adicionar a mídia"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr "Copiando alguns pacotes em disco para uso posterior"
+msgstr "Copiando alguns pacotes em discos para uso futuro"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
-msgstr "Cópia em progresso"
+msgstr "Cópia em andamento"
#: pkgs.pm:32
#, c-format
msgid "must have"
-msgstr "precisa ter"
+msgstr "deve ter"
#: pkgs.pm:33
#, c-format
@@ -349,362 +420,427 @@ msgstr "bom"
msgid "maybe"
msgstr "talvez"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Obtendo informações do pacote a partir dos metadados XML ..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Nenhuma informação xml para a mídia \"%s\", apenas resultado\n"
+"parcial para o pacote %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Sem descrição"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-"Alguns pacotes requeridos por %s não podem ser instalados:\n"
+"Alguns pacotes solicitados por %s não podem ser instalados:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
-msgstr "Um erro ocorreu:"
+msgstr "Ocorreu um erro:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Ocorreu um erro fatal: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Não pergunte novamente"
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "%d Instalação Falhou"
+msgstr "%d transações de instalação falharam"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
-msgstr "Instalação dos programas falhou:"
+msgstr "Falha na instalação dos pacotes:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
-msgstr "Estação de Trabalho"
+msgstr "Estação de trabalho"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
-msgstr "Estação de Trabalho de Escritório"
+msgstr "Escritório"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programas de escritório: processadores de texto (OpenOffice.org Writer, "
-"Kword), tabelas (OpenOffice.org Calc, Kspread), visualizadores PDF, etc."
+"Programas de escritório: processadores de texto (LibreOffice Writer, Kword), "
+"planilhas (LibreOffice Calc, Kspread), visualizadores de PDF, etc"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Programas de escritório: processadores de texto (Kword, Abiword), tabelas "
-"(Kspread, Gnumeric), visualizadores PDF, etc"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
-msgstr "Estação de Jogos"
+msgstr "Jogos"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "Programas de entretenimento: arcade, tabuleiro, estratégia, etc."
+msgstr "Programas de diversão: arcade, tabuleiros, estratégia, etc"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "Estação de Multimídia"
+msgstr "Multimídia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Programas de edição/reprodução de som e vídeo"
+msgstr "Programas de reprodução/edição de som e vídeo"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "Estação de Internet"
+msgstr "Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Conjunto de ferramentas para ler e enviar mensagens e notícias (mutt, "
-"tin...) e para navegar na Web."
+"Conjunto de ferramentas para ler e enviar email e notícias (mutt, tin...) e "
+"para navegar na web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Computador de rede (cliente)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Clientes para diferentes protocolos, incluindo ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Ferramentas para facilitar a configuração do seu computador"
+msgstr "Ferramentas para facilitar a configuração de seu computador"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "Ferramentas de Console"
+msgstr "Ferramentas de console"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editores, shells, ferramentas de arquivos, terminais"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Desenvolvimento"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "Bibliotecas de desenvolvimento C e C++, programas e arquivos include"
+msgstr "Bibliotecas de desenvolvimento C e C++, programas e arquivos incluídos"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentação"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Livros, documentos e tutoriais sobre Linux e Software Livre"
+msgstr "Livros e tutoriais sobre Linux e Software Livre"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Suporte a aplicativos de terceiros"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
-msgstr "Servidor Web"
+msgstr "Servidor web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Servidor Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
-msgstr "Firewall/Roteador"
+msgstr "Firewall/roteador"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
-msgstr "Gateway Internet"
+msgstr "Gateway de internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
-msgstr "E-mail/Notícias"
+msgstr "Email/notícias"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Servidor de e-mail Postfix, servidor de notícias Inn"
+msgstr "Servidor de email Postfix, servidor de notícias Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "Servidor de Diretório"
+msgstr "Servidor de diretórios"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Servidor FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr ""
-"Servidor de Nomes do Domínio (DNS) e Servidor de Informações de Rede (NIS)"
+msgstr "Servidor de nome de domínio e informações de rede"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Servidor de Compartilhamento de Impressoras e Arquivos"
+msgstr "Servidor de compartilhamento de arquivos e impressoras"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
-msgstr "Servidor NFS, Servidor Samba"
+msgstr "Servidor NFS, servidor samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Banco de dados"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Servidor de banco de dados PostgreSQL e MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Servidor de banco de dados PostgreSQL e MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
-msgstr "E-mail"
+msgstr "Email"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Servidor de e-mail Postfix"
+msgstr "Servidor de email Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Servidor de banco de dados PostgreSQL ou MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Servidor de banco de dados PostgreSQL ou MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Servidor de Rede"
+msgstr "Servidor de computador de rede"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "Servidor NFS, servidor SMB, servidor Proxy, servidor SSH"
+msgstr "Servidor NFS, servidor SMB, servidor proxy, servidor SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr "Ambiente Gráfico"
+msgstr "Ambiente gráfico"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Estação de Trabalho KDE"
+msgid "Plasma Workstation"
+msgstr "Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"O ambiente de trabalho KDE, sua área de trabalho básica acompanhada por uma "
-"coleção extra de ferramentas"
+"O K Desktop Environment, o ambiente gráfico básico com uma coleção de "
+"ferramentas que o acompanham"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Estação de Trabalho GNOME"
+msgstr "GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-"Um ambiente gráfico com um conjunto de aplicativos e ferramentas amigáveis"
+"Um ambiente gráfico com um conjunto de aplicativos e ferramentas de desktop "
+"amigáveis ao usuário"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Ambiente de Trabalho LXDE"
+msgid "Xfce Workstation"
+msgstr "Xfce"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Um ambiente gráfico leve & rápido com uma coleção amigável de programas e "
-"ferramentas de desktop"
+"Um ambiente gráfico mais leve com um conjunto de aplicativos e ferramentas "
+"de desktop amigáveis ao usuário"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Um ambiente gráfico baseado em GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Desktop LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+"A próxima geração do ambiente de desktop leve do Mageia Linux, totalmente "
+"reescrito em Qt"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Desktop Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Um ambiente gráfico leve e rápido com seguidores dedicados"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Desktop LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Um ambiente gráfico leve e rápido"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "Outros ambientes de Área de trabalho"
+msgstr "Outros desktops gráficos"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, etc"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilitários"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Servidor SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Servidor de Configuração Remota Webmin"
+msgstr "Servidor de configuração remota Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Utilitários de Rede/Monitoramento"
+msgstr "Utilitários de rede/monitoramento"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-"Ferramentas de monitoração, contabilização de processos, tcpdump, nmap, ..."
+"Ferramentas de monitoramento, contabilidade de processos, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Assistentes Mandriva"
+msgid "Mageia Wizards"
+msgstr "Assistentes Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Assistentes para configurar o servidor"
@@ -715,364 +851,367 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Um erro ocorreu, mas não é possível tratá-lo.\n"
-"Continue por sua própria conta e risco."
+"Ocorreu um erro, mas não sei como lidar com isso de forma adequada.\n"
+"Continue por sua conta e risco."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Alguns pacotes importantes não foram instalados corretamente.\n"
-" O seu drive de CD-ROM ou o seu CD-ROM estão defeituosos.\n"
-" Verifique o CD-ROM em um computador instalado, usando \"rpm -qpl media/main/"
-"*.rpm\"\n"
+"Ou sua unidade de cdrom ou seu cdrom está com defeito.\n"
+"Verifique o cdrom em um computador usando \"rpm -qpl media/main/*.rpm\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Entrando no passo `%s'\n"
+msgstr "Entrando na etapa `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Instalação do Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Instalação %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
-msgstr "<Tab>/<Alt-Tab> move entre elementos"
+msgstr "<Tab>/<Alt-Tab> entre elementos"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "O servidor Xorg leva algum tempo para iniciar. Favor esperar..."
+msgstr "O servidor Xorg está lento para iniciar. Aguarde..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Seu sistema está com poucos recursos. Você pode ter algum problema na\n"
-"instalação do Mandriva Linux. Se isso ocorrer, você pode tentar instalar "
-"usando o\n"
-"modo texto. Para isso, aperte 'F1' na tela de inicialização e escreva 'text'."
+"Seu sistema está com poucos recursos. Você pode ter algum problema para\n"
+"instalar %s. Se isso ocorrer, você pode tentar uma instalação\n"
+"de texto. Para isso, pressione `F1' ao inicializar no CDROM e digite `text'."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Seleção de mídias"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Instalar Desktop Mandriva KDE"
+msgid "Install %s Plasma Desktop"
+msgstr "Instalar o desktop Plasma %s"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Instalar Desktop Mandriva GNOME"
+msgid "Install %s GNOME Desktop"
+msgstr "Instalar o desktop GNOME %s"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Instalação personalizada"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Desktop KDE"
+msgid "Plasma Desktop"
+msgstr "Desktop Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Desktop GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Desktop personalizado"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "Aqui está uma prévia do desktop '%s'."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Clique nas imagens para ampliar-las"
+msgstr "Clique nas imagens para ver uma pré-visualização maior"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "Seleção de Grupo de Pacotes"
+msgstr "Seleção de grupo de pacotes"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "Seleção individual de pacotes"
+msgstr "Seleção de pacote individual"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Tamanho total: %d / %d MB"
+msgid "Unselect All"
+msgstr "Desmarcar tudo"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pacote defeituoso"
+msgid "Total size: %d / %d MB"
+msgstr "Tamanho total: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versão: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Tamanho: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Importância: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Você não pode selecionar/desmarcar este pacote"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "devido a falta de %s"
+msgstr "devido à falta de %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "devido a %s não-satisfeito(a)"
+msgstr "devido a %s não satisfeito"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "tentando promover %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
-msgstr "a fim de manter %s"
+msgstr "para manter %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-"Você não pode selecionar esse pacote pois não existe espaço livre para "
+"Você não pode selecionar este pacote porque não há espaço suficiente para "
"instalá-lo"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Os seguintes pacotes serão instalados"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Os seguintes pacotes serão removidos"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Esse é um pacote obrigatório, e não pode ser desmarcado"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Esse é um pacote obrigatório, não pode ser desmarcado"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "Você não pode desmarcar esse pacote. Ele já está instalado"
+msgid "You cannot unselect this package. It is already installed"
+msgstr "Você não pode desmarcar este pacote. Ele já está instalado"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Você não pode desmarcar este pacote. Ele precisa ser atualizado"
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "Você não pode desmarcar este pacote. Ele deve ser atualizado"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "Mostrar automaticamente os pacotes selecionados"
+msgstr "Mostrar pacotes selecionados automaticamente"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalar"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
-msgstr "Carregar/Salvar seleção"
+msgstr "Carregar/salvar seleção"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
-msgstr "Atualizando seleção de pacotes"
+msgstr "Atualizando a seleção de pacotes"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Alternar entre a lista de pacotes hierárquica e plana"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Instalação mínima"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Gerenciamento de Software"
+msgstr "Gerenciamento de software"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
-msgstr "Escolha os pacotes que você quer instalar"
+msgstr "Escolha os pacotes que deseja instalar"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instalando"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Sem detalhes"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Tempo restante:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(estimando...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pacote"
msgstr[1] "%d pacotes"
+msgstr[2] "%d pacotes"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Resumo"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configurar"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "não configurado"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Seleção de Mídia"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
"As seguintes mídias de instalação foram encontradas.\n"
-"Se você deseja ignorar alguma delas, você pode desmarcá-las agora."
+"Se quiser pular algumas delas, pode desmarcá-las agora."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Você pode copiar o conteúdo dos CDs para o seu disco rígido antes da "
+"Você tem a opção de copiar o conteúdo dos CDs para o disco rígido antes da "
"instalação.\n"
-"A instalação irá continuar a partir do seu disco rígido e os pacotes "
-"continuarão disponíveis após a instalação ser finalizada."
+"Ele continua a partir do disco rígido e os pacotes permanecem disponíveis "
+"quando o sistema estiver totalmente instalado."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr "Copiar todos os CDs"
+msgstr "Copiar CDs inteiros"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Ocorreu um erro"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Por favor, escolha o layout do seu teclado"
+msgstr "Escolha o layout do seu teclado"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Aqui está a lista completa dos teclados disponíveis:"
+msgstr "Aqui está a lista completa de teclados disponíveis:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "Instalar/Atualizar"
+msgstr "Instalar/atualizar"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Esta é uma instalação ou atualização?"
+msgstr "Isso é uma instalação ou uma atualização?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Instalar"
+msgstr "Instalação"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Atualizar %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Chave de criptografia para %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr "Cancelar instalação, reiniciar o sistema"
+msgstr "Cancelar a instalação, reiniciar o sistema"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
-msgstr "Nova Instalação"
+msgstr "Nova instalação"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr "Atualizar instalação anterior (não recomendado)"
+msgstr "Atualizar a instalação anterior (não recomendado)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1080,47 +1219,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"O instalador detectou que o seu sistema Mandriva Linux pode não ser\n"
-"atualizado com segurança para %s.\n"
+"O instalador detectou que seu sistema Linux instalado não pode\n"
+"ser atualizado com segurança para %s.\n"
"\n"
"É recomendada uma nova instalação substituindo a anterior.\n"
"\n"
-"Atenção: você deve salvar todos os seus dados pessoais antes de escolher "
-"\"Nova\n"
-"Instalação\"."
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
+"Atenção: você deve fazer backup de todos os seus dados pessoais\n"
+"antes de escolher \"Nova instalação\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Configurando IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Sem espaço livre para bootstrap de 1MB! A instalação continuará, mas para "
-"poder iniciar seu sistema você precisará criar uma partição bootstrap no "
-"DiskDrake"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Você precisará criar um PPC PReP Boot bootstrap! O instalador irá continuar, "
-"mas para iniciar seu sistema, você precisa criar uma partição bootstrap no "
-"DiskDrake."
+msgid "Configuring CD/DVD"
+msgstr "Configurando o CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1128,172 +1245,213 @@ msgid ""
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"Mude o seu CD-ROM\n"
-"\n"
-"Por favor, insira o CD-ROM chamado \"%s\" no seu drive e clique em Ok quando "
-"estiver pronto.\n"
-"Se você não o tiver em mãos, clique em Cancelar para evitar a instalação "
-"desse CD-ROM."
+"Troque seu Cd-Rom!\n"
+"Insira o Cd-Rom chamado \"%s\" em sua unidade e pressione\n"
+"Ok quando terminar.\n"
+"Se não tiver, pressione Cancelar para evitar a instalação deste Cd-Rom."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Procurando por pacotes disponíveis..."
+msgstr "Procurando pacotes disponíveis..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Seu sistema não possui espaço suficiente para a instalação ou atualização (%"
-"dMB > %dMB)"
+"Seu sistema não tem espaço suficiente para instalação ou atualização (%dMB > "
+"%dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Por favor, escolha entre carregar ou salvar a seleção de pacotes. \n"
-"O formato é o mesmo que os arquivos gerados pelo auto_install."
+"Escolha carregar ou salvar seleção de pacote.\n"
+"O formato é o mesmo dos arquivos gerados pelo auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Carregar"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Salvar"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
-msgstr "Arquivo corrompido"
+msgstr "Arquivo ruim"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
-msgstr "Seleção de Desktop"
+msgstr "Seleção de desktop"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "Você pode escolher seu perfil de estação de trabalho."
+msgstr "Você pode escolher o perfil de desktop de sua estação de trabalho."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
-msgstr "O tamanho escolhido é maior que o espaço disponível"
+msgstr "O tamanho selecionado é maior que o espaço disponível"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tipo de instalação"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
"Você não selecionou nenhum grupo de pacotes.\n"
-"Por favor, escolha a instalação mínima que deseja:"
+"Escolha a instalação mínima desejada:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Com X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instalando o pacote %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Instalar pacotes recomendados"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "Com documentação básica (recomendado)"
+msgstr "Com documentação básica (recomendado!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "Instalação mínima (sem o uprmi)"
+msgstr "Instalação realmente mínima (especialmente sem urpmi)"
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Preparando atualização..."
-#: steps_interactive.pm:638
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Preparando a instalação"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instalando o pacote %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "Houve um erro durante a ordenação dos pacotes:"
+msgstr "Ocorreu um erro ao solicitar os pacotes:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Continuar mesmo assim?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr "Tentar Novamente"
+msgstr "Tentar novamente"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Pular este pacote"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Pular todos os pacotes da mídia \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
-msgstr "Voltar para a seleção de mídia e de pacotes"
+msgstr "Voltar para a seleção de mídia e pacotes"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "Houve um erro durante a instalação do pacote %s."
+msgstr "Ocorreu um erro ao instalar o pacote %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Configuração pós-instalação"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-"Por favor, certifique-se de que a mídia Atualizar Módulos está no drive %s"
+"Certifique-se de que as mídias dos módulos de atualização estejam na unidade "
+"%s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Atualizações"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Agora você tem a oportunidade de configurar as mídias online."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Isso permite instalar atualizações de segurança."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Para configurar essas mídias, você precisa estar conectado à internet.\n"
+"\n"
+"Deseja configurar as mídias de atualização?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Esse gerenciador de downloads não pôde ser instalado"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Tentar novamente ?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Falha ao adicionar a mídia"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1305,156 +1463,123 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Agora você tem a oportunidade de baixar os pacotes atualizados. Estes "
-"pacotes\n"
-"foram atualizados após o lançamento de sua distribuição. Eles podem conter\n"
-"atualizações de segurança ou correções de falhas.\n"
+"Agora você tem a oportunidade de baixar pacotes atualizados. Esses\n"
+"pacotes foram atualizados após o lançamento da distribuição.\n"
+"Eles podem conter correções de segurança ou bugs.\n"
"\n"
-"Para baixar estes pacotes, você precisa ter uma conexão com a internet\n"
-"funcionando.\n"
+"Para baixar esses pacotes, você precisar estar conectado à internet.\n"
"\n"
-"Você deseja instalar estas atualizações?"
+"Deseja instalar as atualizações?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s em %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Placa de som"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Você tem alguma placa de som ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Execute \"alsaconf\"ou \"sndconfig\" após a instalação para configurar sua "
-"placa de som"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Nenhuma placa de som detectada. Tente o \"harddrake\" após a instalação"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interface gráfica"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
-msgstr "Rede & Internet"
+msgstr "Rede & internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Proxies"
+msgstr "Proxys"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "configurado"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
-msgstr "Nível de Segurança"
+msgstr "Nível de segurança"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "ativado"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "desativado"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "Você não configurou o sistema X. Você quer realmente deixar assim?"
+msgstr "Você não configurou o X. Tem certeza de que realmente deseja isso?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Preparando gerenciador de inicialização"
+msgid "Preparing initial startup program..."
+msgstr "Preparando o programa de inicialização..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr "Aguarde, pode demorar um pouco..."
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Você parece ter uma máquina muito antiga ou desconhecida, e o gerenciador de "
-"inicialização yaboot não funcionará para você. A instalação continuará, mas "
-"você precisará usar o BootX ou outros meios para inicializar sua máquina. O "
-"argumento do kernel para o sistema de arquivos raiz é: root=%s"
+msgstr "Seja paciente, isso pode demorar um pouco..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"Neste nível de segurança, o acesso aos arquivos em partições Windows é "
-"restrita apenas para o administrador."
+"Neste nível de segurança, o acesso aos arquivos na partição do Windows é "
+"restrito ao administrador."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "Insira um disquete vazio no drive %s"
+msgstr "Insira um disquete virgem na unidade %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Criando disquete de instalação automática..."
+msgstr "Criando o disquete de instalação automática..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-"Alguns passos não foram completados.\n"
+"Algumas etapas não foram concluídas.\n"
"\n"
-"Você realmente quer sair agora?"
+"Deseja realmente sair agora?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Parabéns"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Reiniciar"
@@ -1470,7 +1595,7 @@ msgstr "Idioma"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr "Localização"
+msgstr "Idioma"
#: steps_list.pm:17
#, c-format
@@ -1491,7 +1616,7 @@ msgstr "Mouse"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Detecção de discos rígidos"
+msgstr "Detecção de disco rígido"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
@@ -1526,21 +1651,21 @@ msgstr "Particionamento"
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr "Formatando"
+msgstr "Formatação"
#: steps_list.pm:29
#, c-format
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr "Escolhendo pacotes"
+msgstr "Escolha de pacotes"
#: steps_list.pm:31
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "Instalando"
+msgstr "Instalação"
#: steps_list.pm:34
#, c-format
@@ -1549,26 +1674,19 @@ msgid ""
"Users"
msgstr "Usuários"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rede"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
"_: Keep these entry short\n"
"Bootloader"
-msgstr "Inicialização"
+msgstr "Gerenciador de inicialização"
#: steps_list.pm:40 steps_list.pm:41
#, c-format
msgid ""
"_: Keep these entry short\n"
"Configure X"
-msgstr "Configurar X"
+msgstr "Configurar o X"
#: steps_list.pm:42
#, c-format
@@ -1597,63 +1715,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Sair"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Você decidiu atualizar o seu sistema para o %s. O KDE 3.5 foi detectado "
-#~ "no seu sistema.\n"
-#~ "Este instalador não pode preservar o KDE 3.5 durante a atualização. Se "
-#~ "você optar por proceder, \n"
-#~ "o KDE 4 substituirá o KDE 3, e você perderá as configurações pessoais do "
-#~ "KDE. \n"
-#~ "Para atualizar e manter o KDE 3.5 e suas configurações pessoais, por "
-#~ "favor reinicie o seu sistema\n"
-#~ "e faça a tualização utilizando o applet da Mandriva."
-
-#~ msgid "Proceed"
-#~ msgstr "Proceder"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "aquisição de [%s] falhou"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Baixando arquivo %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "A atualização de distribuição 32 bits para 64 bits não é suportada"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "A atualização de distribuição 64 bits para 32 bits não é suportada"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Você selecionou o(s) seguinte(s) servidores(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Estes servidores são ativados por padrão. Eles não possuem nenhuma falha\n"
-#~ "de segurança conhecida, mas pode ocorrer de aparecer alguma nova. Neste\n"
-#~ "caso, você deve atualizá-los o mais cedo possível.\n"
-#~ "\n"
-#~ "\n"
-#~ "Você realmente quer instalar estes servidores?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Ambiente de Trabalho IceWm"
diff --git a/perl-install/install/share/po/ro.po b/perl-install/install/share/po/ro.po
index 2607651a7..e930d0dbe 100644
--- a/perl-install/install/share/po/ro.po
+++ b/perl-install/install/share/po/ro.po
@@ -1,95 +1,83 @@
-# Copyright (c) 1999-2009 Mandriva
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Vă rugăm să nu actualizaţi fișierul, cu excepția cazului în care sînteți
-# sigur de calitatea traducerii dumneavoastră, de gramatică și de ortografie.
-# Acestea din urmă sînt de prea multe ori aproximative.
-# Corectarea lor ulterioară nu are nici un alt rezultat decît acela de
-# pierdere de timp pentru toata lumea.
-#
-# VĂ RUGĂM SĂ RESPECTAȚI SEMNELE DE PUNCTUAȚIE ALE LIMBII ROMÂNE!
-#
-# Nu suprimați spațiul care urmează unui semn de punctuație de sfîrșit de
-# frază; trebuie respectată versiunea originală. În acest caz, este foarte
-# probabil ca programul să afișeze un mesaj la sfîrșit. Suprimînd acel spațiu,
-# cele două cuvintele vor fi afișate legat.
-#
-# Traduceți de manieră INTELIGENTĂ (de ce nu și prin comparație cu alte
-# traduceri ale acestui fișier în alte limbi) și nu cuvînt cu cuvînt. Unele
-# astfel de traduceri nu au nici un sens în limba română.
-#
-# ATENȚIE LA FONTURILE UTILIZATE! Pentru a reda corect diacriticele folosiți
-# disponerea tastaturii românească standard, codarea de caractere UTF-8 și
-# asigurați-vă că fonturile utilizate sînt cu virgulițe, NU CU SEDILE!
-# Exemplu:
-# font incorect (cu sedile): şŞ ţŢ
-# font corect (cu virgule): șȘ țȚ
-#
-# Pentru a vă asigura că folosiți fonturile corecte, vizitați:
-# http://i18n.ro/Fonturi_romanesti/testare
-#
-# Vă mulțumim pentru înțelegere.
-# Echipa de traducători,
-# www.Mandrivausers.ro
-#
-# Traducători de-a lungul timpului:
-#
-#
-# Florin Grad <florin@mandriva.com>, 1999-2000.
-# Dragos Marian Barbu <dragosb@softhome.net>, 2000.
-# Ovidiu Constantin <ovidiu.constantin@gmx.net>, 2002, 2003.
-# Harald Ersch <harald@ersch.ro>,2003.
-# Cosmin Humeniuc <cosmin@mandrivausers.ro>, 2008.
-# Florin Cătălin RUSSEN <cfrussen@yahoo.co.uk>, 2008, 2009.
+# Translators:
+# Dan <djmarian4u@hotmail.com>, 2016
+# Florin Cătălin RUSSEN <cfrussen@yahoo.co.uk>, 2013-2015
msgid ""
msgstr ""
-"Project-Id-Version: DrakX 7.1\n"
-"Report-Msgid-Bugs-To: https://qa.mandriva.com\n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-09-11 21:40+0200\n"
-"Last-Translator: Florin Cătălin RUSSEN <cfrussen@yahoo.co.uk>\n"
-"Language-Team: Romanian <cooker-i18n@mandrivalinux.org >\n"
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Dan <djmarian4u@hotmail.com>\n"
+"Language-Team: Romanian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/ro/)\n"
+"Language: ro\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3;plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?"
-"2:1))\n"
-"X-Poedit-Language: Romanian\n"
-"X-Poedit-Country: ROMANIA\n"
-"X-Poedit-SourceCharset: utf-8\n"
-"X-Generator: Lokalize 0.3\n"
+"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?"
+"2:1));\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr "Alăturați-vă nouă!"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Biroul vostru pe un stic de memorie USB"
+msgid "Make it yours!"
+msgstr "Personalizați după plac!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "Distribuția Mandriva Linux 100%% open source"
+msgid "Your choice!"
+msgstr "Alegerea voastră!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Explorați facil Linux cu Mandriva One"
+msgid "Office tools"
+msgstr "Unelte de birotică"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Un birou Mandriva Linux complet, cu suport"
+msgid "Home entertainment"
+msgstr "Divertisment"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: distribuții pentru necesitățile fiecăruia"
+msgid "For kids"
+msgstr "Pentru copii"
-#: any.pm:109
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Pentru întreaga familie!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Pentru dezvoltatori!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Vă mulțumim!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Fiți liberi!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Mai aveți medii suplimentare?"
+msgstr "Mai aveți și alte medii suplimentare?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -97,125 +85,163 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Următoarele medii au fost găsite și vor fi folosite în timpul instalării: %"
-"s.\n"
+"Următoarele medii au fost găsite și vor fi utilizate în timpul instalării: "
+"%s.\n"
"\n"
"\n"
"Aveți un mediu de instalare suplimentar pe care doriți să-l configurați?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Rețea (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Rețea (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Rețea (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Adresa URL a serverului alternativ?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Adresa URL trebuie să înceapă cu ftp:// sau http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Se contactează situl Mandriva Linux pentru obținerea listei serverelor "
-"alternative disponibile..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Nu s-a putut contacta situl Mandriva Linux pentru obținerea listei "
-"serverelor alternative disponibile..."
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Alegeți un server alternativ de pe care să descărcați pachetele"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Configurare NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Introduceți numele gazdei și directorului mediului NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Lipsește numele gazdei"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Directorul trebuie să înceapă cu \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Numele de gazdă al montajului NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Director"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Suplimentar"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"Nu s-a găsit lista de pachete pe aceast server alternativ. Asigurați-vă că "
+"Nu s-a găsit lista de pachete pe acest server alternativ. Asigurați-vă că "
"adresa este corectă."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Ediția de bază"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Ediția nuanțată"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Ediția proprietară"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Anumite componente materiale din configurația de față necesită un microcod "
+"proprietar pentru funcționarea corectă a piloților."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Ar trebui să activați „%s”"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "„%s” conține diverse părți din sistem și aplicațiile sale"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "„%s” conține aplicații proprietare.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Conține și microcod necesar pentru buna funcționare a anumitor dispozitive "
+"(ex: unele plăci grafice ATI/AMD, unele plăci de rețea, unele plăci "
+"RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"„%s” conține aplicații care nu pot fi distribuite în toate țările din cauza "
+"brevetelor."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Conține și aplicații din „%s” recompilate cu funcționalități suplimentare."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Aici puteți activa mai multe medii dacă doriți."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Acest mediu furnizează actualizări pentru mediul „%s”"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Se caută pachetele deja instalate..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Se caută pachetele de actualizat"
+msgstr "Se caută pachetele de actualizat..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Se înlătură pachetele înainte de actualizare..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -223,96 +249,96 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Următoarele pachete vor fi înlăturate pentru a vă permite actualizarea "
+"Următoarele pachete vor fi înlăturate pentru a permite actualizarea "
"sistemului: %s\n"
"\n"
"\n"
"Chiar doriți înlăturarea acestor pachete?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Eroare la citirea fișierului %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Următoarele discuri au fost redenumite:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (denumit anterior %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rețea"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Alegeți un mediu"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Fișierul există deja. Se spuprascrie?"
+msgstr "Fișierul există deja. Se suprascrie?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permisiune respinsă"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Nume NFS greșit"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "Mediu %s incorect"
+msgstr "Mediu incorect %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Nu se pot face capturi de ecran înainte de partiționare"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Capturile de ecran vor fi disponibile după instalare în %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalare"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configurare"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
-msgstr "De asemenea, trebuie formatat și %s"
+msgstr "Trebuie să formatați și %s"
#: interactive.pm:16
#, c-format
@@ -320,9 +346,9 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Unele componente din calculatoru au nevoie de piloți \"proprietari\" pentru "
-"a funcționa.\n"
-"Informații despre acestea puteți găsi la: %s"
+"Unele componente din calculator au nevoie de piloți „proprietari” pentru a "
+"funcționa.\n"
+"Puteți găsi cîteva informații despre aceștia la: %s"
#: interactive.pm:22
#, c-format
@@ -334,25 +360,25 @@ msgstr "Se pornește rețeaua"
msgid "Bringing down the network"
msgstr "Se oprește rețeaua"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Așteptați, se preia fișierul"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "mediul nu poate fi adăugat"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Se copiază unele pachete pe discuri pentru utilizare ulterioară"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
-msgstr "Se copiază..."
+msgstr "Copiere în curs"
#: pkgs.pm:32
#, c-format
@@ -379,280 +405,297 @@ msgstr "simpatic"
msgid "maybe"
msgstr "eventual"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Se obțin informațiile despre pachet din metadatele XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Nu există informații XML pentru mediul „%s”, numai rezultate parțiale pentru "
+"pachetul %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nici o descriere"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-"Unele din pachetele cerute de %s nu pot fi instalate:\n"
+"Unele pachete cerute de %s nu pot fi instalate:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "S-a produs o eroare:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "A apărut o eroare fatală: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Nu mai întreba"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d operațiuni de instalare eșuate"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Instalarea pachetelor a eșuat:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Stație de lucru"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Calculator de birou"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programe de birotică: procesoare de text (OpenOffice.org Writer, Kword), "
-"calcul tabelar (OpenOffice.org Calc, Kspread), vizualizatoare de fișiere pdf "
-"etc."
+"Programe de birotică: procesoare de text (LibreOffice Writer, Kword), calcul "
+"tabelar (LibreOffice Calc, Kspread), vizualizatoare de fișiere PDF, etc."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Programe de birotică: procesoare de text (kword, abiword), calcul tabelar "
-"(kspread, gnumeric), vizualizatoare de fișiere pdf etc."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
-msgstr "Calculator pentru jocuri"
+msgstr "Stație de jocuri"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programe de amuzament: jocuri de acțiune, table, strategie etc."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Stație multimedia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programe de editare/redare sunet și video"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "Stație Internet"
+msgstr "Stație de Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Set de unelte pentru citire/trimitere poștă și știri (mutt, tin..) și "
-"navigare pe Web"
+"Set de unelte pentru citire/trimitere de poștă și știri (mutt, tin..) și "
+"navigare pe Internet"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
-msgstr "Calculator (client) în rețea"
+msgstr "Calculator în rețea (client)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Clienți pentru diverse protocoale, inclusiv ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Unelete pentru a vă ușura configurarea calculatorului"
+msgstr "Unelte pentru a vă ușura configurarea calculatorului"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "Unelte consolă"
+msgstr "Unelte de consolă"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "Editoare, interpretoare, terminale, unelte fișiere"
+msgstr "Editoare, interpretoare, terminale, unelte de fișiere"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Dezvoltare"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Biblioteci de dezvoltare C și C++, programe și fișiere include"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentație"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Cărți și HowTo despre Linux și programele libere"
+msgstr "Cărți și ghiduri despre Linux și programele libere"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Baza standard Linux. Suport pentru aplicații terțe."
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Server Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
-msgstr "Groupware"
+msgstr "Lucru colaborativ"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Server Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Parafoc/Ruter"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Pasarelă Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Poștă/Știri"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Server de poștă Postfix, server de știri Inn"
+msgstr "Serverul de poștă Postfix, serverul de știri Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Server de anuar"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Server FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Server de nume de domeniu (DNS) și NIS"
+msgstr "Server de DNS și NIS"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Server de fișiere și de partajare a imprimantei"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Server NFS, server Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
-msgstr "Baze de date"
+msgstr "Bază de date"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Server de baze de date MySQL și PostgreSQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Server de baze de date MariaDB și PostgreSQL"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
-msgstr "Poștă"
+msgstr "Poștă electronică"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Server de poștă Postfix"
+msgstr "Serverul de poștă electronică Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Server de baze de date MySQL sau PostgreSQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Serverul de baze de date MariaDB sau PostgreSQL"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Server în rețea"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Server NFS, SMB, Proxy, SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr "Mediu Grafic"
+msgstr "Mediu grafic de lucru"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Stație de lucru KDE"
+msgid "Plasma Workstation"
+msgstr "Stația de lucru Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -660,81 +703,126 @@ msgid ""
msgstr ""
"Mediul de birou K, mediul grafic de bază cu o colecție de unelte asociate"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Stație de lucru Gnome"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "Un mediu grafic cu un set de aplicații prietenoase și unelte de birou"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Birou LXDE"
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Un mediu grafic lejer și rapid cu un set de aplicații prietenoase și unelte "
-"de birou"
+"Un mediu grafic lejer cu un set de unelte de birou și de aplicații "
+"prietenoase"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Stație de lucru MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Stație de lucru Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Un mediu grafic bazat pe GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Birou LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Un port QT de generație nouă a mediului lejer de birou"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Un mediu grafic rapid și lejer cu adepți dedicați"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Birou LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Un mediu grafic lejer și rapid"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Alte medii grafice"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, etc."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utilitare"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Server SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Server de configurare distant Webmin"
+msgstr "Serverul de configurare distantă Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Utilitare rețea/Supraveghere"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Unelte de supraveghere, evidența proceselor, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Asistenți Mandriva"
+msgid "Mageia Wizards"
+msgstr "Asistenții Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
-msgstr "Asistenți de configurare a serverului"
+msgstr "Asistenți pentru configurarea de server"
#: steps.pm:85
#, c-format
@@ -742,10 +830,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"S-a produs o eroare ce nu poate fi interpretată în mod corect.\n"
-"Continuați pe riscul dumneavoastră."
+"S-a produs o eroare, dar nu poate fi interpretată în mod corect.\n"
+"Continuați pe propriul risc."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -754,236 +842,248 @@ msgid ""
"\"\n"
msgstr ""
"Cîteva pachete importante nu s-au instalat corect.\n"
-"Ori aveți o problemă cu unitatea optică sau cu \n"
-"CD-ul propriu-zis. Folosiți comanda \"rpm -qpl media/main/*.rpm\"\n"
-" pentru a verifica CD-ul pe un alt sistem.\n"
+"Ori unitatea ori discul optic este defect.\n"
+"Verificați discul optic pe un alt sistem cu comanda „rpm -qpl media/main/*."
+"rpm”\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Se începe etapa `%s'\n"
+msgstr "Se începe etapa „%s”\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Instalare Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "%s instalare %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> între elemente"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Serverul Xorg este încet la pornire. Așteptați vă rog..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Sistemul are resurse puține. Puteți întîmpina probleme la instalarea\n"
-"Mandriva Linux. Dacă se întîmplă acest lucru, puteți încerca o instalare\n"
-"în mod text. Pentru aceasta, apăsați „F1” cînd demarați de pe CDROM,\n"
-"apoi introduceți „text”."
+"Sistemul are resurse puține. Este posibil să aveți probleme în timpul "
+"instalării %s.\n"
+"În acest caz puteți încerca o instalare în mod text. Pentru aceasta, apăsați "
+"„F1”\n"
+"la pornirea de pe CD-ROM, apoi introduceți „text”."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Instalare de birou Mandriva cu KDE"
+msgid "Media Selection"
+msgstr "Selectare mediu"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Instalare de birou Mandriva cu GNOME"
+msgid "Install %s Plasma Desktop"
+msgstr "Instalează biroul %s Plasma"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Instalează biroul %s GNOME"
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Instalare personalizată"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Birou KDE"
+msgid "Plasma Desktop"
+msgstr "Birou Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Birou GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Birou personalizat"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Iată o previzualizare a biroului '%s'."
+msgstr "Iată o previzualizare a biroului „%s”."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Apăsați pe imagini pentru o previzualizare mai mare"
+msgstr "Apăsați pe imagini ca să le vedeți mai mari"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Selectare grupuri de pachete"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Selectare individuală a pachetelor"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Mărime totală: %d / %d Mo"
+msgid "Unselect All"
+msgstr "Deselectează tot"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pachet defectuos"
+msgid "Total size: %d / %d MB"
+msgstr "Mărime totală: %d / %d Mo"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versiune: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Mărime: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d Ko\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Importanță: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Nu puteți selecta/deselecta acest pachet"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "datorită lipsei lui %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "datorită dependenței %s nesatisfăcute"
+msgstr "datorită dependenței nesatisfăcute %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "se încearcă promovarea lui %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "pentru a păstra %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
-msgstr "Nu aveți destul spațiu pentru a instala acest pachet"
+msgstr ""
+"Nu puteți selecta acest pachet pentru că nu este destul spațiu pentru a-l "
+"instala"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Următoarele pachetele vor instalate"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Următoarele pachete vor fi înlăturate"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Acesta este un pachet indispensabil și nu poate fi deselectat"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Nu puteți deselecta acest pachet. Este deja instalat"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Nu puteți deselecta acest pachet. Trebuie acualizat."
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "Nu puteți deselecta acest pachet. Trebuie actualizat."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Arată pachetele selectate automat"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalare"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Încarcă/Salvează selecția"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Actualizare pachete selectate"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Instalare minimalistă"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Gestionare programe"
+msgstr "Gestionare aplicații"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Alegeți pachetele pe care doriți să le instalați"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Se instalează"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Fără detalii"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Timp rămas: "
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(se estimează...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
@@ -991,27 +1091,22 @@ msgstr[0] "%d pachete"
msgstr[1] "%d pachet"
msgstr[2] "%d pachete"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Sumar"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configurează"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "neconfigurat"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Selectare mediu"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -1020,12 +1115,12 @@ msgstr ""
"Au fost găsite următoarele medii de instalare.\n"
"Dacă doriți să săriți peste unele din ele, le puteți deselecta acum."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Aveți opțiunea să copiați conținutul CD-urilor pe discul dur înainte de "
@@ -1033,72 +1128,72 @@ msgstr ""
"Se va continua de pe discul dur, iar pachetele vor rămîne disponibile după "
"instalarea sistemului."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Copiază CD-urile în întregime"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "S-a produs o eroare"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Alegeți dispunerea tastaturii"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Iată lista tuturor tastaturilor disponibile:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalare/Actualizare majoră"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Este vorba de o instalare sau de o actualizare majoră?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instalare"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Actualizare majoră către %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Cheia de criptare pentru %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Anulează instalarea, repornește sistemul"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Instalare nouă"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Actualizare majoră peste instalarea precedentă (nerecomandat)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1106,46 +1201,27 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Instalatorul a detectat că sistemul Mandriva Linux instalat nu suportă o\n"
-"actualizare majoră în siguranță către %s.\n"
+"Instalatorul a detectat că sistemul Mageia Linux instalat actual nu va "
+"putea\n"
+"fi actualizat în siguranță la %s.\n"
"\n"
-"Se recomandă o instalare nouă, care să înlocuiască pe cea precedentă.\n"
+"Se recomandă o instalare nouă care să o înlocuiască pe cea precedentă.\n"
"\n"
-"Atenție: ar trebui să vă salvgardați datele personale înainte de a alege "
-"\"Instalare nouă\"."
+"Atenție: trebuie să vă faceți o copie de siguranță cu toate datele "
+"personale\n"
+"înainte de a alege \"Instalare nouă\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Se configurează IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Nu este spațiu liber pentru 1Mo de bootstrap. Instalarea va continua, dar "
-"pentru a porni sistemul va trebui să creați o partiție de prepornire "
-"(bootstrap) cu DiskDrake"
+msgid "Configuring CD/DVD"
+msgstr "Configurare CD/DVD"
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Va trebui creat un PPC PReP Boot bootstrap! Instalarea va continua, dar "
-"pentru a porni sistemul va trebui să creați o partiție de prepornire "
-"(bootstrap) cu DiskDrake"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1155,24 +1231,24 @@ msgid ""
msgstr ""
"Schimbați CD-ul!\n"
"\n"
-"Introduceți CD-ul etichetat \"%s\" și apoi apăsați Ok.\n"
+"Introduceți CD-ul etichetat „%s” și apoi apăsați Ok cînd sînteți gata.\n"
"Dacă nu-l aveți, apăsați „Anulează” pentru a evita instalarea de pe acest CD."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Se caută pachetele disponibile..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Sistemul dumneavoastră nu are suficient spațiu pentru o instalare sau "
-"actualizare majoră (%dMo > %dMo)"
+"Sistemul nu dispune de suficient spațiu pentru o instalare sau actualizare "
+"majoră (%dMo > %dMo)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1181,52 +1257,52 @@ msgstr ""
"Alegeți încărcarea sau salvarea selecției de pachete.\n"
"Formatul este același cu fișierele generate de auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Încarcă"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Salvează"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Fișier eronat"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Selectarea biroului"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Puteți alege profilul biroului stației voastre de lucru."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Dimensiunea selectată este mai mare decît spațiul disponibil"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tip de instalare"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1235,86 +1311,130 @@ msgstr ""
"Nu ați selectat nici un grup de pachete.\n"
"Alegeți instalarea minimalistă pe care o doriți:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Cu X11"
-#: steps_interactive.pm:581, c-format
-msgid "Install suggested packages"
-msgstr "Instaează pachetele propuse"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Instalează pachetele recomandate"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Cu documentația de bază (recomandat!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "Instalare cu adevărat minimalistă (în mod expres fără urpmi)"
+msgstr "Instalare cu adevărat minimalistă (special fără urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Se pregătește actualizarea majoră..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Se pregătește instalarea"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Se instalează pachetul %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "S-a produs o eroare la ordonarea pachetelor:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
-msgstr "Să se continuie totuși?"
+msgstr "Să se continue totuși?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Reîncearcă"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Ignoră acest pachet"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "Ignoră toate pachetele din mediul \"%s\""
+msgstr "Ignoră toate pachetele din mediul „%s”"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Înapoi la selectarea mediilor și a pachetelor"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "S-a produs o eroare la instalarea pachetului %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Configurare post-instalare"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Asigurați-vă că mediul cu modulele de actualizare este în unitatea %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Actualizări"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Acum aveți posibilitatea să configurați mediile online."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Aceasta vă permite să instalați actualizările de securitate."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Pentru a configura aceste medii va trebui să aveți o conexiune la\n"
+"Internet funcțională.\n"
+"\n"
+"Sigur doriți să configurați mediile de actualizare?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Următoarele pachetele vor instalate"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Reîncercați?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Adăugare de mediu eșuată"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1335,111 +1455,80 @@ msgstr ""
"\n"
"Doriți să instalați actualizările?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s pe %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Componente materiale"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Placă de sunet"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Aveți o placă de sunet ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Lansați \"alsaconf\" sau \"sndconfig\" după instalare pentru a vă configura "
-"placa de sunet"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Nu s-a detectat nici o placă de sunet. Încercați \"harddrake\" după instalare"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interfață grafică"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
-msgstr "Rețea și Internet"
+msgstr "Rețea & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Servere proxy"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "configurat"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Nivel de securitate"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Parafoc"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "activat"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "dezactivat"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "Nu ați configurat X11. Sînteți sigur că doriți acest lucru?"
+msgstr "Nu ați configurat X11. Sigur doriți acest lucru?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Se pregătește încărcătorul de sistem..."
+msgid "Preparing initial startup program..."
+msgstr "Se pregătește pornirea programului inițial..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Aveți răbdare, va dura ceva timp..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Se pare că posedați o antichitate sau o mașină necunoscută, încărcătorul de "
-"sistem yatboot nu va funcționa. Instalarea va continua, dar va trebui să "
-"utilizați BootX sau alte mijloace pentru a porni sistemul. Argumentul de "
-"nucleu pentru sistemul de fișiere rădăcină este: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1448,17 +1537,17 @@ msgstr ""
"La acest nivel de securitate, accesul la fișierele de pe partiția Windows "
"este permis doar administratorului."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "Introduceți o dischetă goală în perifericul %s"
+msgstr "Introduceți o dischetă goală în unitatea %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Se creează discheta de autoinstalare..."
+msgstr "Se creează discheta de auto-instalare..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1469,15 +1558,15 @@ msgstr ""
"\n"
"Chiar vreți să abandonați acum?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Felicitări"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
-msgstr "Repornire sistem"
+msgstr "Repornește"
#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
#: steps_list.pm:16
@@ -1485,7 +1574,7 @@ msgstr "Repornire sistem"
msgid ""
"_: Keep these entry short\n"
"Language"
-msgstr "Alegere limbă"
+msgstr "Limbă"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
@@ -1504,7 +1593,7 @@ msgstr "Licență"
msgid ""
"_: Keep these entry short\n"
"Mouse"
-msgstr "Șoricel"
+msgstr "Maus"
#: steps_list.pm:19 steps_list.pm:20
#, c-format
@@ -1560,7 +1649,7 @@ msgstr "Alegerea pachetelor"
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "Instalare..."
+msgstr "Instalare"
#: steps_list.pm:34
#, c-format
@@ -1569,13 +1658,6 @@ msgid ""
"Users"
msgstr "Utilizatori"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rețea"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1618,41 +1700,26 @@ msgid ""
"Exit"
msgstr "Ieșire"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Ați decis o actualizare majoră a sistemului către %s. KDE 3.5 a fost "
-#~ "detectat\n"
-#~ "pe sistemul dvs. Instalatorul nu poate păstra KDE 3.5 după actualizare. "
-#~ "Dacă procedați, \n"
-#~ "KDE 4 va înlocui KDE 3 și vă veți pierde parametrii personalizați ai "
-#~ "configurației KDE. \n"
-#~ "Pentro o actualizare majoră cu păstrarea lui KDE 3.5 și a parametrilor "
-#~ "personalizați, \n"
-#~ "reporniți sistemul și lansați actualizarea majoră din miniaplicația de "
-#~ "actualizare Mandriva."
-
-#~ msgid "Proceed"
-#~ msgstr "Procedează"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "preluarea lui [%s] a eșuat"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Se descarcă fișierul %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Adresa URL a serverului alternativ?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Adresa URL trebuie să înceapă cu ftp:// sau http://"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Actualizarea majoră de la o distribuție pe 32 de biți la una pe 64 de "
-#~ "biți nu este suportată."
+#~ "Se contactează situl %s pentru obținerea listei de servere alternative "
+#~ "disponibile ..."
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Actualizarea majoră de la o distribuție pe 64 de biți la una pe 32 de "
-#~ "biți nu este suportată."
+#~ "Nu s-a putut contacta situl %s pentru obținerea listei de servere "
+#~ "alternative disponibile"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Alegeți un server alternativ de pe care să descărcați pachetele"
diff --git a/perl-install/install/share/po/ru.po b/perl-install/install/share/po/ru.po
index fc293a8cb..1d128f22a 100644
--- a/perl-install/install/share/po/ru.po
+++ b/perl-install/install/share/po/ru.po
@@ -1,58 +1,94 @@
-# Translation of DrakX messages to Russian
-# Copyright (C) 1999-2003 Mandriva
-# Pavel Maryanov <acid_jack@ukr.net>, 2002-2009.
-# Alice Lafox <alice@lafox.com.ua>, 2003.
-# Alice Lafox <alice@lafox.net>, 2004, 2005.
-# Alexander Kuzmenkov <rc@mezon.ru>, 2007.
-# akdengi <kazancas@mandriva.ru>, 2008.
-# akdengi <kazancas@gmail.com>, 2008.
-# Alexander Kazancev <kazancas@gmail.com>, 2008.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# akdengi <kazancas@gmail.com>, 2008
+# Alexander Kazancev <kazancas@mandriva.ru>, 2008-2009
+# Alexander Kazancev <kazancas@gmail.com>, 2008
+# Alexander Kuzmenkov <rc@mezon.ru>, 2007
+# AlexL <loginov.alex.valer@gmail.com>, 2016,2018,2023
+# Alice Lafox <alice@lafox.com.ua>, 2003
+# Alice Lafox <alice@lafox.net>, 2004-2005
+# Boris Zhalilo <daviongm@gmail.com>, 2014
+# Анатолий Валерианович <ffox909@mail.ru>, 2014
+# Валентин Сайков <saikov.vb@gmail.com>, 2015
+# Анатолий Валерианович <ffox909@mail.ru>, 2014
+# Victor, 2022
msgid ""
msgstr ""
-"Project-Id-Version: ru\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-07 15:46+0200\n"
-"Last-Translator: Pavel Maryanov <acid_jack@ukr.net>\n"
-"Language-Team: Russian <gnu@mx.ru>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: AlexL <loginov.alex.valer@gmail.com>, 2016,2018,2023\n"
+"Language-Team: Russian (http://app.transifex.com/MageiaLinux/mageia/language/"
+"ru/)\n"
+"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || "
+"(n%100>=11 && n%100<=14)? 2 : 3);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Рабочая система на USB-брелоке"
+msgid "Join Us!"
+msgstr "Присоединяйтесь к нам!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "100%% открытый дистрибутив Mandriva Linux"
+msgid "Make it yours!"
+msgstr "Подстройте систему под себя!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Открой Linux с Mandriva One"
+msgid "Your choice!"
+msgstr "Выбор за Вами!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Полный дистрибутив Mandriva Linux с поддержкой"
+msgid "Office tools"
+msgstr "Офисные инструменты"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: дистрибутив для каждого"
+msgid "Home entertainment"
+msgstr "Домашняя развлекательная система"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Для детей"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Для семьи!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Для разработчиков!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Спасибо!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Будьте свободными!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Есть дополнительный носитель?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -66,94 +102,57 @@ msgstr ""
"\n"
"Если ли дополнительный носитель для настройки?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Сеть (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Сеть (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Сеть (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Адрес зеркала?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Адрес должен начинаться с ftp:// или http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Устанавливается соединение с веб-сайтом Mandriva Linux для загрузки списка "
-"доступных пакетов..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Не удалось соединиться с веб-сайтом Mandriva Linux, чтобы загрузить список "
-"доступных зеркал"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Выберите зеркало, с которого будут загружены пакеты"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Настройка NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Укажите имя компьютера и каталог ресурса NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Не указано имя компьютера"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Имя каталога должно начинаться с \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Имя компьютера для монтирования NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Каталог"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Дополнительный"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -162,23 +161,101 @@ msgstr ""
"Невозможно найти список пакетов на этом зеркале. Проверьте правильность "
"адреса."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Для работы части оборудования на компьютере следует установить "
+"микропрограммы с закрытым кодом, необходимые для работы драйверов с открытым "
+"кодом."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Следует включить «%s»"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "В «%s» содержатся различные части системы и её программ"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "В «%s» содержатся несвободные программы.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Там также содержатся пакеты с микрокодом, необходимым для работы некоторых "
+"устройств (например, некоторых видеокарт ATI/AMD, некоторых сетевых карт, "
+"некоторых карт RAID, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"В \"%s\" содержатся пакеты с программным обеспечением, которое нельзя "
+"свободно распространять в некоторых странах из-за нарушения патентных прав "
+"на это программное обеспечение."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Также в \"%s\" содержатся пакеты, собранные с дополнительными возможностями, "
+"использование которых ограничивается патентами."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Здесь вы можете включить дополнительные хранилища, если это вам нужно."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "В этом источнике содержатся обновления пакетов из источника \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Выполняется поиск установленных пакетов..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Выполняется поиск пакетов для обновления..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Удаляются пакеты перед обновлением..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -191,87 +268,87 @@ msgstr ""
"\n"
"Удалить эти пакеты?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Ошибка при чтении файла %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Следующие диски были переименованы:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (ранее назывался %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Сеть"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Выберите носитель"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Файл уже существует. Переписать его?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Доступ запрещён"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Неверное имя NFS"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Неверный источник %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Невозможно создать скриншоты перед разметкой диска"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "После установки скриншоты будут находиться в каталоге %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Установка"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Настройка"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Также необходимо отформатировать %s"
@@ -282,9 +359,8 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Для нормальной работы некоторых устройств компьютера требуются\n"
-"«несвободные» драйверы.\n"
-"Информация о них доступна на сайте %s"
+"Для работы некоторых устройств компьютера требуются «несвободные» драйверы.\n"
+"Информация о них доступна на сайте: %s"
#: interactive.pm:22
#, c-format
@@ -296,22 +372,22 @@ msgstr "Поднимается сеть"
msgid "Bringing down the network"
msgstr "Опускается сеть"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Подождите, идёт загрузка"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "не удалось добавить источник"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "На диск копируются пакеты для использования в будущем"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Идёт копирование"
@@ -341,7 +417,24 @@ msgstr "желательно"
msgid "maybe"
msgstr "может быть"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Получения данных о пакетах из метаданных XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"для источника «%s» отсутствует xml-info; для пакета %s получен только "
+"частичный результат"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Описания нет"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -350,76 +443,77 @@ msgstr ""
"Некоторые пакеты, запрошенные %s, не могут быть установлены:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Произошла ошибка:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Произошла критическая ошибка: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Больше не спрашивать"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d установочных транзакций не удались"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Не удалось установить пакет:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Рабочая станция"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Офисная рабочая станция"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Офисные программы: текстовые процессоры (OpenOffice.org Writer, Kword), "
-"электронные таблицы (OpenOffice.org Calc, Kspread), программы для просмотра "
-"pdf и т.д."
+"Офисные программы: текстовые процессоры (LibreOffice Writer, Kword), "
+"электронные таблицы (LibreOffice Calc, Kspread), программы для просмотра PDF "
+"и т. д."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Офисные программы: текстовые процессоры (kword, abiword), электронные "
-"таблицы (kspread, gnumeric), программы для просмотра pdf и т.д."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Игровой компьютер"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "Развлекательные программы: аркады, настольные игры, стратегии и т.д."
+msgstr "Развлекательные программы: аркады, настольные игры, стратегии и т. д."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Мультимедийный компьютер"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Программы для воспроизведения/редактирования звука и видео"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "Интернет-компьютер"
+msgstr "Компьютер для Интернета"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -427,207 +521,207 @@ msgid ""
msgstr ""
"Набор программ для работы с корреспонденцией (mutt, tin...) и веб-серфинга"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Сетевой компьютер (клиент)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Клиенты для различных протоколов, включая ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Утилиты для облегчения настройки компьютера"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "Утилиты для консоли"
+msgstr "Инструменты консоли"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Редакторы, командные оболочки, файловые утилиты, терминалы"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Разработка"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Библиотеки для разработки на C и C++, программы и заголовочные файлы"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Документация"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Книги и документация по Linux и свободному программному обеспечению"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Linux Standard Base. Поддержка приложений сторонних разработчиков."
+msgstr "Linux Standard Base. Поддержка приложений сторонних разработчиков"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Веб-сервер"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "ПО для совместной работы"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Сервер Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Файервол/Маршрутизатор"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Интернет-шлюз"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Почта/Новости"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Почтовый сервер Postfix, сервер новостей Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Служба каталогов"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Сервер FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Сервер доменных имен и сетевые информационные службы (NIS)"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Сервер общего доступа к файлам и принтерам"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Сервер NFS, сервер Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "База данных"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Сервер баз данных PostgreSQL и MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Сервер баз данных PostgreSQL и MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Веб/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Почта"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Почтовый сервер Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Сервер баз данных PostgreSQL или MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Сервер баз данных PostgreSQL или MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Сетевой сервер"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Cервер NFS, сервер SMB, прокси-сервер, сервер SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Графическое окружение"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Рабочая станция KDE"
+msgid "Plasma Workstation"
+msgstr "Рабочая станция Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"K Desktop Environment - основная графическая среда с коллекцией "
-"сопроводительных утилит"
+"K Desktop Environment, основная графическая среда с набором сопроводительных "
+"инструментов"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Рабочая станция Gnome"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -636,66 +730,110 @@ msgstr ""
"Графическая среда с удобным для пользователя набором приложений и утилит "
"рабочего стола"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Рабочий стол LXDE"
+msgid "Xfce Workstation"
+msgstr "Рабочая станция Xfce"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Простая и быстрая графическая среда с удобным для пользователя набором "
-"приложений и настольными программами"
+"Более лёгкая графическая среда с удобным набором приложений и инструментов"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Рабочая станция MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Рабочая станция Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Графическое окружение на основе GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Рабочий стол LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Усовершенствованный QT-порт легковесной среды рабочего стола"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Рабочий стол Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Легкая и быстрая графическая среда"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Рабочий стол LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Быстрая и нетребовательная к ресурсам графическая оболочка"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Другие графические рабочие столы"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm и т.п."
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm и т.п."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Утилиты"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Сервер SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Сервер удалённой настройки Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Сетевые утилиты/Мониторинг"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Утилиты мониторинга, учёт процессов, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Мастеры настройки Mandriva"
+msgid "Mageia Wizards"
+msgstr "Мастеры настройки Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Мастеры настройки сервера"
@@ -709,13 +847,13 @@ msgstr ""
"Произошла ошибка, но я не знаю, как её корректно обработать.\n"
"Продолжайте на свой собственный страх и риск."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Некоторые важные пакеты установились некорректно.\n"
"Повреждён привод CDROM или компакт-диск.\n"
@@ -729,252 +867,258 @@ msgstr "Выполняется переход на этап `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Установка Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Установка %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> между элементами"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg-сервер долго запускается. Подождите..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Системе не хватает ресурсов. Во время установки Mandriva Linux могут\n"
+"Системе не хватает ресурсов. Во время установки %s могут\n"
"возникнуть проблемы. В этом случае можно попробовать установку в\n"
"текстовом режиме. Для этого после загрузки с диска нажмите `F1',\n"
"а затем наберите 'text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Выбор источника"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Установить рабочий стол KDE"
+msgid "Install %s Plasma Desktop"
+msgstr "Установить %s рабочий стол Plasma"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Установить рабочий стол GNOME"
+msgid "Install %s GNOME Desktop"
+msgstr "Установить %s рабочий стол GNOME"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Выборочная установка"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Рабочий стол KDE"
+msgid "Plasma Desktop"
+msgstr "Рабочий стол Plasma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Рабочий стол GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Другой рабочий стол"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Это предварительный вид рабочего стола '%s."
+msgstr "Это предварительный вид рабочего стола «%s»."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Щёлкните картинку, чтобы увеличить её"
+msgstr "Нажмите на картинку, чтобы увеличить её"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Выбор групп пакетов"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Выбор отдельных пакетов"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Общий объём: %d / %d МБ"
+msgid "Unselect All"
+msgstr "Снять выделение со всех"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Некорректный пакет"
+msgid "Total size: %d / %d MB"
+msgstr "Общий размер: %d/%d МБ"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Версия:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Размер:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d КБ\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Важность: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Этот пакет нельзя выбрать/отменить"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "из-за отсутствия %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "из-за неудовлетворенных %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "выполняется попытка активизировать %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "чтобы сохранить %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Этот пакет нельзя выбрать, т.к. для его установки не хватает места"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Будут установлены следующие пакеты "
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Будут удалены следующие пакеты "
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Этот пакет является обязательным, его нельзя пропустить"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Этот пакет нельзя убрать, потому что он уже установлен"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Этот пакет нельзя убрать, потому что он должен быть обновлен"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Показывать автоматически выбранные пакеты"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Установить"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Загрузить/Сохранить выбор"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Обновляется выбор пакетов"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Переключение между иерархическим и плоским списком пакетов"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Минимальная установка"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Управление ПО"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Выберите пакеты, которые нужно установить"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Установка"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Убрать подробности"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Оставшееся время:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(вычисляется...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d пакет"
-msgstr[1] "%d пакетов"
+msgstr[1] "%d пакеты"
+msgstr[2] "%d пакеты"
+msgstr[3] "%d пакеты"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Сводка"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Настройка"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "не настроен"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Выбор источника"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -983,12 +1127,12 @@ msgstr ""
"Найдены следующие источники для установки.\n"
"Если нужно пропустить некоторые из них, сейчас с них можно снять флажки."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Содержимое компакт-диска перед установкой можно скопировать на жёсткий "
@@ -996,72 +1140,72 @@ msgstr ""
"После этого установка продолжится с жёсткого диска, и пакеты будут доступны "
"после полной установки системы."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Целиком скопировать компакт-диски"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Произошла ошибка"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Выберите раскладку клавиатуры"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Полный список доступных раскладок:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Установка/Обновление"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Это установка или обновление?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Установка"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Обновление %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Ключ шифрования для %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Отмена установки, перезагрузка системы"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Новая установка"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Обновление предыдущей установки (не рекомендуется)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1069,7 +1213,7 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Установщик обнаружил, что существующая установка Mandriva Linux не\n"
+"Установщик обнаружил, что существующая установка Mageia не\n"
"может быть безопасно обновлена на %s.\n"
"\n"
"Рекомедуется заново установить систему, заменив существующую.\n"
@@ -1078,38 +1222,17 @@ msgstr ""
"выбором \"Новая\n"
"Установка\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Настраивается IDE"
+msgid "Configuring CD/DVD"
+msgstr "Настройка CD/DVD"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Недостаточно свободного места для программы самозагрузки! Установка "
-"продолжится, но для загрузки системы будет необходимо создать раздел "
-"начальной загрузки в DiskDrake"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Необходимо создать загрузочный раздел PPC PReP! Установка продолжится, но "
-"для загрузки системы нужно будет создать раздел начальной загрузки в "
-"DiskDrake"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1123,21 +1246,21 @@ msgstr ""
"Если у вас его нет, нажмите 'Отмена', чтобы отказаться от установки с этого "
"диска."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Поиск доступных пакетов..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"В вашей системе недостаточно свободного дискового пространства для установки "
"или обновления (%d МБ > %d МБ)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1146,52 +1269,52 @@ msgstr ""
"Выберите загрузку или сохранение выбора пакетов.\n"
"Формат файлов такой же, как и у созданных при автоматической установке."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Загрузить"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Сохранить"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Неверный файл"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Выбор рабочего стола"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Можно выбрать профиль настольной среды."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Выбранный размер превышает доступное место"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Тип установки"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1200,87 +1323,129 @@ msgstr ""
"Не была выбрана ни одна группа пакетов.\n"
"Выберите тип минимальной установки:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "С Х-сервером"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Устанавливается пакет %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Установить рекомендуемые пакеты"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "С основной документацией (рекомендуется)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Действительно минимальная установка (даже без urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Подготавливается обновление..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Подготовка к установке"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Устанавливается пакет %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "При загрузке пакетов возникла ошибка:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Всё равно продолжить?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Повторить"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Пропустить этот пакет"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Пропустить все пакеты из источника \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Вернуться к выбору источника и пакетов"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "При установке пакета %s возникла ошибка."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Настройка после установки"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Проверьте наличие носителя 'Update Modules' в устройстве %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Обновления"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Теперь вы можете настроить сетевые хранилища пакетов."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Это дает возможность устанавливать обновления безопасности."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Для настройки хранилищ пакетов вам понадобится работающее\n"
+"интернет соединение.\n"
+"Хотите настроить хранилище пакетов для обновления?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Этот загрузчик не может быть установлен"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Повторить попытку?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Не удалось добавить источник"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1301,112 +1466,80 @@ msgstr ""
"\n"
"Установить эти обновления?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s на %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Оборудование"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Звуковая карта"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Есть ли у вас звуковая карта ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Для настройки звуковой карты запустите после установки утилиту \"alsaconf\" "
-"или \"sndconfig\"."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Звуковая карта не обнаружена. Попробуйте запустить после установки утилиту "
-"\"harddrake\" "
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Графический интерфейс"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Сеть и Интернет"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Прокси"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "настроен"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Уровень безопасности"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Файервол"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "включен"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
-msgstr "выключен"
+msgstr "отключен"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Х-сервер ещё не настроен. Вы точно уверены в своих действиях?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Подготавливается начальный загрузчик..."
+msgid "Preparing initial startup program..."
+msgstr "Подготовка начального загрузчика..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Подождите, это может занять некоторое время..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Похоже, что вы являетесь обладателем очень старой или неизвестной машины, на "
-"которой начальный загрузчик 'yaboot' не будет работать. Установка "
-"продолжится, однако для загрузки придётся использовать загрузчик 'BootX' или "
-"какой-то другой. Параметр ядра для корневой файловой системы: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1415,17 +1548,17 @@ msgstr ""
"На данном уровне безопасности доступ к файлам на разделе Windows разрешён "
"только администратору. "
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Вставьте чистую дискету в дисковод %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Создается дискета автоматической установки..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1434,14 +1567,14 @@ msgid ""
msgstr ""
"Некоторые этапы не завершены.\n"
"\n"
-"Действительно завершить работу?"
+"Вы действительно хотите выйти?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Поздравляем"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Перезагрузка"
@@ -1536,13 +1669,6 @@ msgid ""
"Users"
msgstr "Пользователи"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Сеть"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1584,66 +1710,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Выход"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Вы решили обновить вашу систему до %s. KDE 3.5 обнаружен \n"
-#~ "в вашей системе. Этот установщик не сохраняет KDE 3.5 при обновлении. "
-#~ "Если вы продолжите установку \n"
-#~ "KDE 4 заменит KDE 3 и вы потеряете свою персональную конфигурацию и "
-#~ "настройки KDE. \n"
-#~ "Для обновления с KDE 3.5 и сохранения ваших персональных настроек, \n"
-#~ "перезагрузите вашу систему и обновитесь с помощью аплета обновления "
-#~ "Mandriva."
-
-#~ msgid "Proceed"
-#~ msgstr "Далее"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "не удалось загрузить [%s]"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Загружается файл %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr ""
-#~ "Обновление с 32-разрядного до 64-разрядного дистрибутива не поддерживается"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr ""
-#~ "Обновление с 64-разрядного до 32-разрядного дистрибутива не поддерживается"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Были выбраны следующие серверы: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Эти серверы активированы по умолчанию. На них отсутствуют пакеты с какими-"
-#~ "либо\n"
-#~ "проблемами безопасности, однако некоторые уязвимости ещё могут быть "
-#~ "обнаружены.\n"
-#~ "Поэтому их обязательно нужно обновить как можно скорее.\n"
-#~ "\n"
-#~ "\n"
-#~ "Установить эти серверы?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Рабочий стол IceWm"
diff --git a/perl-install/install/share/po/sc.po b/perl-install/install/share/po/sc.po
index f4ddcf5cf..974b481cb 100644
--- a/perl-install/install/share/po/sc.po
+++ b/perl-install/install/share/po/sc.po
@@ -1,52 +1,81 @@
-# translation of DrakX-sc.po to Sardu
-# Copyright (C) 2005 Free Software Foundation, Inc.
-# Antoni Pistis <antonio.pistis@virgilio.it>, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Antoni Pistis <antonio.pistis@virgilio.it>, 2005
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-sc\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-09-14 11:29+0100\n"
-"Last-Translator: Antoni Pistis <antonio.pistis@virgilio.it>\n"
-"Language-Team: Sardu\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Sardinian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/sc/)\n"
+"Language: sc\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -55,115 +84,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Arretza (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Arretza (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Arretza (NFS)"
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
-msgstr "URL de su sprigu?"
+msgid "NFS setup"
+msgstr "Assètiu NFS"
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
msgstr ""
-"Cuntatu su jassu web de Mandriva Linux po tenni sa lista de is sprigus..."
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Directory"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"Cuntatu su jassu web de Mandriva Linux po tenni sa lista de is sprigus..."
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
+msgid "Core Release"
msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
-msgstr "Assètiu NFS"
+msgid "Tainted Release"
+msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Directory"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
+#: any.pm:422
#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
msgstr ""
-#: any.pm:334
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Càstiu is pakitus jai aposentaus..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Agatu is pakitus po ajorronai..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Srèxinu is pakitus ki dui funt po ajorronai..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -172,87 +233,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Faddina ligendi su file %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Apu arrenominau is discus ki sighint:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (innantis nominau %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Arretza"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Sçobera unu suportu, po praxeri"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Su file esistit jai. Nci scriu apitzus?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permissu dennegau"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "No fait a fai fotografias innantis de pratzidurai"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "As a podi biri is fotografias apustis de s'aposentada in %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Seu aposentendi"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Assètiu"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Depis formatai %s puru"
@@ -276,22 +337,22 @@ msgstr "Alluu s'arretza"
msgid "Bringing down the network"
msgstr "Studu s'arretza"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Còpia in cursu"
@@ -321,347 +382,410 @@ msgstr ""
msgid "maybe"
msgstr ""
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nisçuna descriidura"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Faddina"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Faddina mortali: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d transatzionis de aposentadura faddias"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Sçobera tipu de aposentadura"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Workstation"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr ""
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr ""
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:27
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:30
+#, c-format
msgid "Multimedia station"
-msgstr "Multimedia"
+msgstr ""
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr ""
-#: share/meta-task/compssUsers.pl:33
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:36
+#, c-format
msgid "Internet station"
-msgstr "Intrenatzionallisadura"
+msgstr ""
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-#: share/meta-task/compssUsers.pl:39
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:42
+#, c-format
msgid "Network Computer (client)"
-msgstr "Informàtiga"
+msgstr ""
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr ""
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr ""
-#: share/meta-task/compssUsers.pl:49
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:53
+#, c-format
msgid "Console Tools"
-msgstr "Console"
+msgstr ""
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr ""
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Adelantamentu"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documentadura"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr ""
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Server Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Traballu in Grupu"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Server Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Gateway po Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Curreu/Noas"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Server de curreu Postfix, server de noas Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Server de Directory"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Server FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr ""
+msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Server NFS, server Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Database"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Server po Database PostGreSQL e MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Server po Database PostGreSQL e MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Curreu"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Server de curreu Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Server po Database PostGreSQL e MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Server po Database PostGreSQL e MariaDB"
-#: share/meta-task/compssUsers.pl:126
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:142
+#, c-format
msgid "Network Computer server"
-msgstr "Informàtiga"
+msgstr ""
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Ambienti Gràfigu"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE Workstation"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME Workstation"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "IceWm Desktop"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Atras scrianias gràfigas"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr ""
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Server SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
+msgid "Mageia Wizards"
msgstr ""
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr ""
@@ -675,7 +799,7 @@ msgstr ""
"Faddina. No sciu comenti ndi bessiri beni.\n"
"Sighi a perìgulu tuu."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -691,330 +815,334 @@ msgstr ""
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Aposentadura de Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Aposentadura de %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> intr''e elementus"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Aposentadura minimali"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "IceWm Desktop"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm Desktop"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "IceWm Desktop"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr ""
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Sçoberu pakitus unu a unu"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Mesura totali: %d / %d MB"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pakitu malu"
+msgid "Total size: %d / %d MB"
+msgstr "Mesura totali: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versioni: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Mesura: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Importu: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "No podis scerai/disiscerai custu pakitu"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "ca amancat %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "ca no est satisfatu %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "provu a sçoberai %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "po podi apoderai %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"No podis sçoberai custu pakitu, ca no dui at spàtziu abasta po d'aposentai"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Megu a aposentai is pakitus ki sighint"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Megu a srexinai is pakitus ki sighint"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Custu est unu palitu necessàriu, no fait a du disiscerai"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "No fait a disiscerai custu pakitu. Est jai aposentau"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "No fait a disiscerai custu pakitu. Bolit ajorronau"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Amosta in automàtigu is pakitus sçoberaus"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Aposenta"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Càrriga/Sarva su sçoberu"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Ajorronu su sçoberu de is pakitus"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Aposentadura minimali"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Maniju de is programas"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Sçobera is pakitus ki bolis aposentai"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Seu aposentendi"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Tempus ki abarrat "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Seu carculendi"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d pakitus"
-msgstr[1] "%d pakitus"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Arresùmini"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Assètia"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "no assetiau"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Càrriga/Sarva su sçoberu"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Còpia totu is CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Faddina"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Sçobera su skema de su tecrau"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Innoi sa lista de totu is tecraus a disposta"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Aposenta/Ajorrona"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Est una aposentadura o una ajorronadura?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Aposenta"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Ajorrona %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Crai de cuadura po %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Seu aposentendi"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1023,32 +1151,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Assètiu IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1060,158 +1173,197 @@ msgstr ""
"Intra su Cd-Rom etiketau \"%s\" in su ligidori e craca Ok candu as fatu.\n"
"Ki no du tenis, craca Annudda po scampai s'aposentadura de custu Cd-Rom."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr ""
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Càrriga"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Sarva"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "File malu"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tipu de aposentadura"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Cun X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Amosta in automàtigu is pakitus sçoberaus"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr ""
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr ""
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Apariçu s'aposentadura"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr ""
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Faddina in s'ordinadura de is pakitus:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Sigu comuncas?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Sarva su sçoberu de is pakitus"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Faddina in s'aposentadura de is pakitus:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Assètiu pusti-aposentadura"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Ajorronus"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Megu a aposentai is pakitus ki sighint"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Faddina açungendi su mèdiu."
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1224,121 +1376,97 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s in %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Skeda de Sonu"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Tenis una skeda de sonu ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interfaci Gràfiga"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Arretza & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxy"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "assetiau"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Arrasu de Siguresa"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "abivau"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "disabivau"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "No as assetiau ancora X. Siguru ses ca bolis custu?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "Apariçu su bootloader..."
-
-#: steps_interactive.pm:1024
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Intra unu floppy sbuidu in su trastu %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr ""
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1346,12 +1474,12 @@ msgid ""
"Do you really want to quit now?"
msgstr ""
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Cumprimentus"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Torra a allui"
@@ -1446,13 +1574,6 @@ msgid ""
"Users"
msgstr "Umperadoris"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Arretza"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1495,82 +1616,10 @@ msgid ""
"Exit"
msgstr "Bessi"
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm Desktop"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Cuntatu su sprigu po tenni sa lista de is pakitus a disposta..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "No potzu cuntatai su sprigu %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Crea unu floppy de aposentadura automàtiga"
-
-#~ msgid "Replay"
-#~ msgstr "Faiddu torra"
-
-#~ msgid "Automated"
-#~ msgstr "Automatisau"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Sarva su sçoberu de is pakitus"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Bolis impreai aboot?"
-
-#~ msgid "All"
-#~ msgstr "Totu"
-
-#~ msgid "TV card"
-#~ msgstr "Skeda TV"
-
-#~ msgid "Boot"
-#~ msgstr "Alluidura"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Autentigadura"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#, fuzzy
-#~ msgid "Invictus Firewall"
-#~ msgstr "Interactive firewall"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d pakitus"
-#~ msgstr[1] "%d pakitus"
-
-#~ msgid "%d packages"
-#~ msgstr "%d pakitus"
-
-#~ msgid "Language"
-#~ msgstr "Lìngua"
-
-#~ msgid "License"
-#~ msgstr "Permissu"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Seu carculendi"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Sçobera pakitus de aposentai"
-
-#~ msgid "Users"
-#~ msgstr "Umperadoris"
-
-#~ msgid "Networking"
-#~ msgstr "Arretza"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL de su sprigu?"
-#~ msgid "Configure X"
-#~ msgstr "Assètia X"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Cuntatu su jassu web de %s po tenni sa lista de is sprigus..."
diff --git a/perl-install/install/share/po/sk.po b/perl-install/install/share/po/sk.po
index 4e3c08ac3..012d69bd8 100644
--- a/perl-install/install/share/po/sk.po
+++ b/perl-install/install/share/po/sk.po
@@ -1,53 +1,88 @@
-# Jan Matis <damned@hq.alert.sk>, 2000.
-# Pavol Cvengros <orpheus@hq.alert.sk>, 2000.
-# Michal Holes <Michal@Holes.sk>, 2004,2005.
-# Tibor Pittich <Tibor.Pittich@phuture.sk>, 2002,2003,2004,2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Jajo Pajo, 2016
+# Jajo Pajo, 2016
+# Jan Matis <damned@hq.alert.sk>, 2000
+# Michal Holes <Michal@Holes.sk>, 2004-2005
+# Milan Baša <minkob@mail.t-com.sk>, 2015
+# Pavol Cvengros <orpheus@hq.alert.sk>, 2000
+# Tibor Pittich <Tibor.Pittich@phuture.sk>, 2002-2005
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-09-21 14:03+0100\n"
-"Last-Translator: Tibor Pittich <Tibor.Pittich@mandriva.org>\n"
-"Language-Team: <i18n@mandrake.sk>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Jajo Pajo\n"
+"Language-Team: Slovak (http://www.transifex.com/MageiaLinux/mageia/language/"
+"sk/)\n"
+"Language: sk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n "
+">= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Pridajte sa k nám!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Zosobnite si!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Vaša voľba!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Kancelárske nástroje"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Domáca zábava"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Pre deti"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Pre rodinu"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Pre vývojárov"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Ďakujeme Vám!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Cíťte sa voľný!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Máte ešte nejaké ďalšie doplňujúce médiá?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -55,116 +90,158 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
+"Boli nájdené ďalšie médiá ktoré budú použité počas inštalácie: %s.\n"
+"\n"
+"\n"
+"Máte nejaké doplňujúce médium na konfiguráciu?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Sieť (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Sieť (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Sieť (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL zrkadliaceho servera"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr ""
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Pripájam sa k web stránke Mandriva Linux pre stiahnutie zoznamu zrkadiel..."
-
-#: any.pm:187
-#, fuzzy, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Pripájam sa k web stránke Mandriva Linux pre stiahnutie zoznamu zrkadiel..."
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Vyberte miror, z ktorého si chcete stiahnuť balíky"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Nastavenie NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Zadajte prosím meno hostiteľa a priečinok pre vaše NFS médium"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
-msgstr ""
+msgstr "Chýba meno hostiteľa"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
-msgstr ""
+msgstr "Adresár musí začínať s \"/\" "
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Meno hostiteľa pre NFS bod pripojenia ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
-msgstr "Priečinok"
+msgstr "Adresár"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
-msgstr ""
+msgstr "Doplňujúci"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr "Nie je možné nájsť súbor hdlist na tomto zrkadliacom servery"
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Niektoré hardvérové súčasti na vašom počítači potrebujú nie slobodný (non "
+"free) firmvér na to, aby mohli fungovať niektoré slobodné (free) ovládače. "
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Mali by ste povoliť \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" obsahuje rôzne časti systémov a ich aplikácie "
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" obsahuje nie slobodný (non free) softvér.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Obsahuje tiež firmvér potrebný rôznymi zariadeniami k ich práci (napr. ATI/"
+"AMD grafické karty, niektoré sieťové karty, RAID karty, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" obsahuje softvér ktorý nemôže byť distribuovaný v každej krajine "
+"kvôli softvérovým patentom."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "Tiež obsahuje prebudovaný softvér z \"%s\" s dodatočnými možnosťami."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Tu môžete povoliť ďalšie zdroje ak si prajete."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Tento zdroj poskytuje aktualizácie pre zdroj \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Hľadám balíky, ktoré sú už nainštalované..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Hľadám balíky pre aktualizáciu..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Odstránenie balíkov pred aktualizáciou..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -173,92 +250,92 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
"Nasledovné balíky budú musieť byť odinštalované aby bolo možné vykonať "
-"upgrade vášho systému: %s\n"
+"aktualizáciu vášho systému: %s\n"
"\n"
"\n"
"Chcete naozaj tieto balíky odinštalovať?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
-msgstr "chyba pri čítaní zo súboru %s"
+msgstr "Chyba pri čítaní zo súboru %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Nasledovné disky boli premenované:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (predtým ako %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Sieť"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Vyberte si zdroj"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Súbor už existuje. Prepísať?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Prístup zamietnutý"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Nesprávne NFS meno"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Zlý zdroj %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Nemôžem spraviť kópie obrazovky pred rozdelením disku"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Kópie obrazovky budú po inštalácii dostupné v %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Inštalujem"
+msgstr "Inštalaácia"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfigurácia"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Taktiež musíte naformátovať %s"
@@ -280,24 +357,25 @@ msgstr "Spúšťam prácu so sieťou"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "Ukončuje sa prácu so sieťou"
+msgstr "Ukončuje sa práca so sieťou"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Prosím čakajte, získava sa súbor"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "Nie je možné pridať zdroj"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
+"Prebieha kopírovanie niektorých balíčkov na disk kvôli budúcemu použitiu"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Prebieha kopírovanie"
@@ -327,82 +405,102 @@ msgstr "zaujímavé"
msgid "maybe"
msgstr "možno.."
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Získavanie informácií o balíčku z XML meta-dát..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Žiadne xml informácie pre médium \"%s\", iba čiastočné informácie pre balík "
+"%s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Bez popisu"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
+"Niektoré balíky vyžadované %s nemôžu byť nainštalované:\n"
+"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Vyskytla sa chyba"
+msgstr "Nastala chyba:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Nastala fatálna chyba: %s"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Nepýtať sa znovu"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d inštalačná transakcia zlyhala"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Inštaluje sa balík %s"
+msgstr "Zlyhala inštalácia balíkov:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Pracovná stanica"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Kancelárska stanica"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Kancelárske programy: editory (OpenOffice.org Writer, Kword), tabuľkové "
-"procesory (OpenOffice.org Calc, Kspread), pdf prehliadače, atď"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Kancelárske programy: editory (kword, abiword), tabuľkové procesory "
-"(kspread, gnumeric), pdf prehliadače, atď"
+"Kancelárske programy: editory (LibreOffice Writer, Kword), tabuľkové "
+"procesory (LibreOffice Calc, Kspread), pdf prehliadače, atď"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Hracia stanica"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Zábavne programy: stolové, stratégie, atď"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimediálna stanica"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programy na prehrávanie/editovanie zvuku a videa"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internetová stanica"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -411,193 +509,193 @@ msgstr ""
"Nástroje na čítanie a posielanie emailov a news správ (mutt, tin..) a "
"prehliadanie www"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Sieťovy počítač (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Klientovia pre rôzne protokoly vrátane ssh"
+msgstr "Klienti pre rôzne protokoly vrátane ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Nástroje na jednoduchú konfiguráciu vášho počítača"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konzolové nástroje"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editory, shelly, súborové nástroje, terminály"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Vývojárska"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C a C++ vývojove knižnice, programy a include súbory"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentácia"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Knihy a návody pre Linux a iný voľný softvér"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Aplikačná podpora od tretej strany"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Web server"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Brána k Internetu"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Mail/News"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix poštový systém, Inn news server"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Adresárový server"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Server doménových mien a sieťový informačný server (NIS)"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Súborový a tlačový server"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS server, Samba server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Databázy"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Databázový server PostgreSQL a MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Databázový server PostgreSQL a MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache a Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Mail"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix mail server"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL, alebo MySQL databázový server"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL, alebo MariaDB databázový server"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Sieťový server"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS server, SMB server, Proxy server, SSH server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafické prostredie"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE pracovná stanica"
+msgid "Plasma Workstation"
+msgstr "Pracovná stanica Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -605,76 +703,121 @@ msgid ""
msgstr ""
"K Desktop Enviroment, grafické prostredie s množstvom pribalených programov"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME pracovná stanica"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "Grafické rozhranie s aplikáciami a desktopovými nástrojmi"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Pracovná plocha IceWm"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "Grafické rozhranie s aplikáciami a desktopovými nástrojmi"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr "Odľahčené grafické prostredie s uživateľsky príjemnou sadou aplikácií"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE pracovná stanica"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon pracovná stanica"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Grafické prostredie založené na GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Prostredie LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Ďalšia generácia QT portu odľahčenej grafickej plochy"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Odľahčené rýchle grafické prostredie"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE grafická plocha"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Odľahčené rýchle grafické prostredie"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Iné grafické prostredia"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, atď"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, atď."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Utility"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH server"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Vzdialená konfigurácia servera pomocou Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Sieťové utility/Monitoring"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Monitorovacie nástroje, účtovanie procesov, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Sprievodcovia Mandriva"
+msgid "Mageia Wizards"
+msgstr "Sprievodcovia Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Sprievodcovia pre konfiguráciu servera"
@@ -688,7 +831,7 @@ msgstr ""
"Vyskytla sa chyba a neviem ju úplne vyriešiť.\n"
"Pokračujte na vlastnú zodpovednosť."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -707,254 +850,258 @@ msgstr "Spúšťam krok %s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Inštalácia Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Inštalácia %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> medzi položkami"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr ""
+msgstr "Xorg server štartuje pomaly. Prosím čakajte..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Váš systém má nedostatok prostriedkov. Možno budete mať problémy s\n"
-"inštaláciou Mandriva Linux. Ak sa tak stane, skúste textovú inštaláciu. Pre "
-"jej\n"
-"spustenie stlačte `F1' po naštartovaní z CDROMky a zadajte `text'."
+"inštaláciou %s. Ak sa tak stane, skúste textovú inštaláciu. Pre jej\n"
+"spustenie stlačte `F1' po naštartovaní z CDROM a zadajte `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr ""
+msgid "Media Selection"
+msgstr "Výber zdroja"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Inštalovať %s GNOME gafickú plochu"
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Minimálna inštalácia"
+msgstr "Vlastná inštalácia"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Pracovná plocha IceWm"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Plasma grafická plocha"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Pracovná plocha IceWm"
+msgstr "GNOME pracovná plocha"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Pracovná plocha IceWm"
+msgstr "Vlastná pracovná plocha"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Tu je náhľad pracovnej plochy '%s' "
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Kliknite na obrázky pre zväčšenie"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Výber skupín balíkov"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Osobitná voľba balíkov"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Celková veľkosť: %d / %d MB"
+msgid "Unselect All"
+msgstr "Odznačiť všetky"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Chybný balík"
+msgid "Total size: %d / %d MB"
+msgstr "Celková veľkosť: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Verzia:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Veľkosť:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Dôležitosť:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
-msgstr "Môžete označiť/odznačiť tento balík"
+msgid "You cannot select/unselect this package"
+msgstr "Nemôžete označiť/odznačiť tento balík"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "kôli chýbajúcemu %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "z dôvodu neuspokojenia %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "pokus o povýšenie %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
-msgstr "v prípade zachovania %s"
+msgstr "kvôli zachovaniu %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Nemôžete označiť tento balík pretože na jeho inštaláciu nie je dosť miesta."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Budú nainštalované nasledovné balíky"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Nasledujúce balíky budú odstránené"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Toto je jeden zo základných balíkov, nemôže byť odznačený"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Nemôžete odznačiť tento balík. Je už nainštalovaný"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Nemôžete odznačiť tento balík. Musíte pridať novú verziu"
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "Nemôžete odznačiť tento balík. Musí byť aktualizovaný"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Zobraziť automaticky zvolené balíky"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
-msgstr "Inštalácia"
+msgstr "Inštalovať"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Načítať/Uložiť výber "
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Aktualizácia výberu balíkov"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimálna inštalácia"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Správa softvéru"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Zvoľte balíky, ktoré si želáte nainštalovať"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Inštalujem"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Bez detailov"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Zvyšný čas "
+msgstr "Zostávajúci čas:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Odhadujem"
+msgstr "(odhadujem...)"
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d balíky"
-msgstr[1] "%d balíky"
-msgstr[2] "%d balíky"
+msgstr[0] "%d balíka"
+msgstr[1] "%d balíkov"
+msgstr[2] "%d balíkov"
+msgstr[3] "%d balíkov"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Zhrnutie"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfigurovať"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "nenakonfigurované"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Výber skupín balíkov"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -963,84 +1110,84 @@ msgstr ""
"Nasledovné inštalačné médiá boli nájdené.\n"
"Ak nechcete niektoré z nich použiť, odznačte ich teraz."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Máte možnosť skopírovať obsah CD na pevný disk pred inštaláciou.\n"
"Potom bude inštalácia pokračovať z pevného disku a balíky budú dostupné aj "
"po kompletnej inštalácii."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopírovať kompletné CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Vyskytla sa chyba"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Prosím, zvoľte si typ vašej klávesnice"
+msgstr "Prosím, zvoľte si rozloženie klávesnice"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Tu je úplný zoznam dostupných klávesníc"
+msgstr "Tu je kompletný zoznam dostupných klávesníc:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Inštalácia/Aktualizácia"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Želáte si vykonať inštaláciu alebo aktualizáciu?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Inštalácia"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Aktualizácia %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Kryptovací kľúč pre %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Zrušiť inštaláciu, reštartovať systém"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Inštalujem"
+msgstr "Nová inštalácia"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Aktualizovať predchádzajúcu inštaláciu (nedoporučené)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1048,38 +1195,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
+"Inštalátor zistil že váš nainštalovaný Linuxový systém nemôže\n"
+"byť bezpečne aktualizovaný na %s.\n"
+"\n"
+"Doporučujeme novú inštaláciu, ktorá nahradí predchádzajúcu.\n"
+"\n"
+"Upozornenie: mali by ste si zazálohovať vaše osobné dáta pred tým ako\n"
+" vyberiete \"Nová inštalácia\". "
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Konfigurácia IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Nie je dostatok miesta pre 1MB veľký bootstrap! Inštalácia môže pokračovať, "
-"ale pre spustenie systému musíte vytvoriť oddiel pomocou DiskDrake"
+msgid "Configuring CD/DVD"
+msgstr "Nastavenie CD/DVD"
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Je potrebné vytvoriť PPC PReP spúšťací bootstrap! Inštalácia bude "
-"pokračovať, ale pre spustenie systému musíte vytvoriť bootstrap oddiel "
-"pomocou DiskDrake"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1093,74 +1227,75 @@ msgstr ""
"Ak takýto CD disk nemáte, zvoľte Zrušiť pre zrušenie inštalácie z tohoto CD-"
"ROM disku."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Hľadajú sa dostupné balíky..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
+"Vo vašom systéme nie je dostatok voľného miesta pre inštaláciu alebo "
+"aktualizáciu (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Vyberte si načítanie alebo uloženie výberu balíkov na disketu.\n"
-"Formát je rovnaký ako pre diskety generované automatickou\n"
-"inštaláciou."
+"Vyberte si načítanie alebo uloženie výberu balíkov.\n"
+"Formát je rovnaký ako pre súbory generované ako auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Zaťaženie"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Uložiť"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Zlý súbor"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Výber skupín balíkov"
+msgstr "Výber pracovnej plochy"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
+msgstr "Môžete si vybrať váš profil pracovnej plochy."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Zvolená veľkosť je väčšia ako dostupné miesto"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Typ inštalácie"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1169,88 +1304,130 @@ msgstr ""
"Nebola vybraná žiadna skupina balíkov\n"
"Prosím, zvoľte si typ minimálnej inštalácie, ktorú si želáte vykonať:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "S X Window System"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Inštaluje sa balík %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Inštalovať doporučené balíky"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "So základnou dokumentáciou (doporučené!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Naozaj minimálna inštalácia (bez urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Pripravuje sa aktualizácia..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Pripravuje sa inštalácia"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Inštaluje sa balík %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Chyba pri zoraďovaní zoznamu balíkov:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Napriek tomu pokračovať?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr ""
+msgstr "Opakovať"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr ""
+msgstr "Preskočiť tento balík?"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr ""
+msgstr "Preskočiť všetky balíky zo zdroja \"%s\""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Uložiť výber balíkov"
+msgstr "Vrátiť sa naspäť na výber zdrojov a balíkov"
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Počas inštalácie balíkov sa vyskytla chyba:"
+msgstr "Vyskytla sa chyba počas inštalácie balíka %s "
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Poinštalačná konfigurácia"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr ""
-"Presvečte sa prosím, že médium s aktualizovanými modulmi je v mechanike %s"
+msgstr "Presvedčte sa prosím, že aktualizačný zdroj je v mechanike %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Aktualizácie"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Teraz máte možnosť nastaviť online zdroje."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Toto povolí nainštalovať bezpečnostné aktualizácie."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Pre nastavenie tohoto zdroja budete potrebovať funkčné internetové \n"
+"pripojenie.\n"
+"\n"
+"Chcete nastaviť aktualizačný zdroj?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Budú nainštalované nasledovné balíky"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Opakovať?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Chyba pri pridávaní zdroja"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1271,129 +1448,99 @@ msgstr ""
"\n"
"Želáte si nainštalovať aktualizácie balíčkov?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s na %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardvér"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Zvuková karta"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Máte nejakú ISA zvukovú kartu?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Po inštalácii spustite \"alsaconf\" alebo \"sndconfig\" ak chcete nastaviť "
-"zvukovú kartu"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Zvuková karta nebola nájdená. Skúste \"harddrake\" po inštalácii"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafické rozhranie"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Sieť a Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxy"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "nakonfigurované"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Úroveň bezpečnosti"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktivované"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "zakázané"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Nemáte nakonfigurovaný X Window systém. Ste si istí, že to tak chcete?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Pripravuje sa zavádzač..."
+msgid "Preparing initial startup program..."
+msgstr "Pripravuje sa spúšťací program..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Zdá sa, že máte OldWorld alebo iný neznámy počítač a yaboot zavádzač vám "
-"nebude fungovať. Inštalácia bude pokračovať, ale budete potrebovať použiť "
-"BootX pre štartovanie vášho počítača. Argument pre jadro s umiestnením "
-"koreňového súborového systému je: root=%s"
+msgstr "Buďte trpezlivý, môže to chvíľu trvať..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"Vrámci tejto bezpečnostnej úrovne je prístup k súborom na Windows oblasti "
+"V rámci tejto bezpečnostnej úrovne je prístup k súborom na Windows oblasti "
"umožnený iba pre administrátora."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Vložte čistú disketu do mechaniky %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Pripravuje sa autoinštalačná disketa..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1404,12 +1551,12 @@ msgstr ""
"\n"
"Naozaj chcete teraz skončiť?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Gratulujeme"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Reštart"
@@ -1425,7 +1572,7 @@ msgstr "Jazyk"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Lokalizácia"
#: steps_list.pm:17
#, c-format
@@ -1453,7 +1600,7 @@ msgstr "Detekcia pevného disku"
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr ""
+msgstr "Inštalačná trieda"
#: steps_list.pm:23
#, c-format
@@ -1481,14 +1628,14 @@ msgstr "Rozdelenie diskov"
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr ""
+msgstr "Formátovanie"
#: steps_list.pm:29
#, c-format
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr ""
+msgstr "Výber balíkov"
#: steps_list.pm:31
#, c-format
@@ -1504,13 +1651,6 @@ msgid ""
"Users"
msgstr "Používatelia"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Sieť"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1553,146 +1693,23 @@ msgid ""
"Exit"
msgstr "Koniec"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Sťahovanie súboru %s..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Zvolili ste nasledujúcu službu/služby: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Tieto služby sa spúšťajú implicitne. Momentálne nemajú žiadne známe "
-#~ "bezpečnostné\n"
-#~ "problémy, ale v budúcnosti nejaké môžu byť nájdené. V tom prípade musíte "
-#~ "zabezpečiť\n"
-#~ "upgrade čo najskôr.\n"
-#~ "\n"
-#~ "\n"
-#~ "Naozaj si želáte inštalovať tieto služby?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Pracovná plocha IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Pripájanie k zrkadliacemu serveru a získavanie zoznamu možných balíkov..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Nebolo možné spojiť sa so zrkadliacim serverom %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Príprava auto inštalačnej diskety"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Automatická inštalácia môže byť plne automatizovaná\n"
-#~ "v tom prípade však inštalácia zaberie celý pevný disk.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Zopakovať"
-
-#~ msgid "Automated"
-#~ msgstr "Automatická"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL zrkadliaceho servera?"
-#~ msgid "Save packages selection"
-#~ msgstr "Uložiť výber balíkov"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL musí začínať s ftp:// alebo http://"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Chcete použiť aboot?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Pripájam sa k web stránke %s pre stiahnutie zoznamu zrkadiel..."
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Chyba inštalácie aboot.\n"
-#~ "Skúsiť silovú inštaláciu s možnosťou zničenia prvého oddielu?"
-
-#~ msgid "All"
-#~ msgstr "Všetko"
-
-#~ msgid "TV card"
-#~ msgstr "TV karta"
+#~ "Zlyhalo pripojenie ku web stránke %s pre stiahnutie zoznamu zrkadiel"
-#~ msgid "Boot"
-#~ msgstr "Boot"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Autentifikácia"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#, fuzzy
-#~ msgid "Invictus Firewall"
-#~ msgstr "Interaktívny firewall"
-
-#, fuzzy
-#~ msgid "New Theme"
-#~ msgstr "Nová téma pre webmin"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d balíky"
-#~ msgstr[1] "%d balíky"
-#~ msgstr[2] "%d balíky"
-
-#~ msgid "%d packages"
-#~ msgstr "%d balíky"
-
-#~ msgid "Language"
-#~ msgstr "Jazyk"
-
-#~ msgid "License"
-#~ msgstr "Licencia"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Voľba triedy inštalácie"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Odhadujem"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Výber balíkov"
-
-#~ msgid "Users"
-#~ msgstr "Používatelia"
-
-#~ msgid "Networking"
-#~ msgstr "Sieť"
-
-#~ msgid "Configure X"
-#~ msgstr "Konfigurácia X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Nie je možné načítať moduly pre vaše jadro (súbor %s chýba), toto sa "
-#~ "stáva hlavne vtedy, ak vaša disketa nie je vytvorená pre inštalačné "
-#~ "médium, ktoré používate (vytvorte si prosím novú štartovaciu disketu)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Vyberte zrkadlo, z ktorého si chcete stiahnuť balíky"
diff --git a/perl-install/install/share/po/sl.po b/perl-install/install/share/po/sl.po
index a26a5d019..21b504d5e 100644
--- a/perl-install/install/share/po/sl.po
+++ b/perl-install/install/share/po/sl.po
@@ -1,58 +1,89 @@
-# translation of sl.po to Slovenian
-# Copyright (C) 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Matjaž Kaše <matjaz.kase@g-kabel.si>, 2004.
-# Aljoša Ločičnik <aljosa.locicnik@mandrakeprinas.org>, 2005.
-# Gregor Pirnaver <gregor.pirnaver@sdm-si.org>, 2002,2004,2005.
-# Jure Repinc <jlp@holodeck1.com>, 2005, 2007, 2008, 2009.
-# Matjaž Kaše <matjaz.kase@telemach.net>, 2006.
+# Translators:
+# Aljoša Ločičnik <aljosa.locicnik@mandrakeprinas.org>, 2005
+# Filip Komar <filip.komar@guest.arnes.si>, 2011-2013,2015-2017
+# Filip Komar <filip.komar@guest.arnes.si>, 2018,2020,2023
+# Gregor Pirnaver <gregor.pirnaver@sdm-si.org>, 2002,2004-2005
+# Jure Repinc <jlp@holodeck1.com>, 2005,2007-2009
+# Matjaž Kaše <matjaz.kase@g-kabel.si>, 2004
+# Matjaž Kaše <matjaz.kase@telemach.net>, 2006
+# Rok Kepa <rokkepa@gmail.com>, 2014
msgid ""
msgstr ""
-"Project-Id-Version: sl\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-22 05:40+0200\n"
-"Last-Translator: Jure Repinc <jlp@holodeck1.com>\n"
-"Language-Team: Slovenian <lugos-slo@lugos.si>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Filip Komar <filip.komar@guest.arnes.si>, 2018,2020,2023\n"
+"Language-Team: Slovenian (http://app.transifex.com/MageiaLinux/mageia/"
+"language/sl/)\n"
+"Language: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 0.3\n"
-"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || "
-"n%100==4 ? 2 : 3);\n"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
+"%100==4 ? 2 : 3);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Vaše namizje na USB ključku"
+msgid "Join Us!"
+msgstr "Pridružite se nam!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "100%% odprto-kodna distribucija Mandriva Linux"
+msgid "Make it yours!"
+msgstr "Osvojite jo!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Z Mandriva One je odkrivanje Linuxa preprosto"
+msgid "Your choice!"
+msgstr "Vaša izbira!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Popolno namizje Mandriva Linux, s podporo"
+msgid "Office tools"
+msgstr "Pisarniška orodja"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: distribucije za potrebe vsakogar"
+msgid "Home entertainment"
+msgstr "Domača zabava"
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Za otroke"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Za družino!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Za razvijalce!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Hvala!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Bodite svobodni!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Ali imate še kak dodaten namestitveni vir?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -60,99 +91,62 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Zaznani so bili sledeči viri, ki bodo uporabljeni med namestitvijo: %s.\n"
+"Zaznani so bili naslednji viri, ki bodo uporabljeni med namestitvijo: %s.\n"
"\n"
"\n"
-"Ali imate še kak dodaten vir, ki ga je potrebno nastaviti?"
-
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
+"Ali imate še kak dodaten namestitveni vir, ki ga je potrebno nastaviti?"
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Omrežje (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Omrežje (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Omrežje (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Lokacija zrcalnega strežnika?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Lokacija se mora začeti z ftp:// ali s http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Vzpostavljanje povezave s spletno stranjo Mandriva Linux in pridobivanje "
-"seznama dosegljivih zrcalnih strežnikov ..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Vzpostavljanje povezave s spletno stranjo Mandriva Linux in pridobivanje "
-"seznama dosegljivih zrcalnih strežnikov nista uspela"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Izberite zrcalni strežnik, s katerega želite pridobiti pakete"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Namestitev prek NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Vnesite ime gostitelja in ime mape vašega vira NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Manjka ime gostitelja"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Mapa se mora pričeti z »/«"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Ime gostitelja vira NFS"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Mapa"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Dodatno"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -161,23 +155,98 @@ msgstr ""
"Na tem zrcalnem strežniku ne najdem seznama paketov. Prepričajte se, da je "
"lokacija prava."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Glavni (core) - izdajni"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Patentno zaščiteni (tainted) - izdajni"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Lastniški (nonfree) - izdajni"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Nekateri deli vaše strojne opreme za pravilno delovanje odprtokodnih "
+"gonilnikov potrebujejo lastniško strojno programsko opremo."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Priporočljivo je omogočiti vir »%s«"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+"Vir »%s« vsebuje različne sistemske dele in pripadajočo programsko opremo"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "Vir »%s« vsebuje lastniško programsko opremo.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Vsebuje tudi strojno programsko opremo, ki je potrebna za delovanje "
+"nekaterih naprav (npr.: nekatere grafične kartice ATI/AMD, določene mrežne "
+"kartice, nekatere kartice RAID) …"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"Vir »%s« vsebuje programsko opremo, ki je zaradi patentne zaščite v "
+"nekaterih državah ni možno prosto razširjati."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "Vsebuje tudi pakete iz vira »%s«, a z dodatnimi zmožnostmi."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Tu lahko po želji omogočite več virov."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Ta vir ponuja posodobitve paketov za vir »%s«"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Pregledovanje že nameščenih paketov ..."
+msgstr "Pregledovanje že nameščenih paketov …"
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Iskanje paketov za posodobitev ..."
+msgstr "Iskanje paketov za posodobitev …"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "Odstranjevanje paketov pred posodobitvijo ..."
+msgstr "Odstranjevanje paketov pred posodobitvijo …"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -185,93 +254,93 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Da bi bilo mogoče posodobiti sistem, je treba odstraniti naslednje pakete: %"
-"s\n"
+"Da bi bilo mogoče posodobiti sistem, je treba odstraniti naslednje pakete: "
+"%s\n"
"\n"
"\n"
"Ali naj odstranim navedene pakete?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Napaka pri branju datoteke %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Preimenovani so bili sledeči diski:"
+msgstr "Preimenovani so bili naslednji diski:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (prejšnje ime: %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Omrežje"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Izberite vir"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Datoteka že obstaja. Ali naj jo nadomestim?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Nimate dovoljenja"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Napačno ime NFS"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Neustrezen vir %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Posnetkov zaslona ni mogoče zajeti, dokler disk ni razdeljen"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "Posnetki zaslona bodo po namestitvi v %s"
+msgstr "Po namestitvi bodo posnetki zaslona v %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Namestitev"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Nastavitev"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Formatirati morate tudi %s"
@@ -282,36 +351,36 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Nekateri deli strojne opreme potrebujejo za pravilno delovanje »lastniške« "
-"gonilnike.\n"
-"Nekaj informacij o tem dobite na: %s"
+"Nekateri deli strojne opreme za pravilno delovanje potrebujejo zaprto-kodne "
+"»lastniške« gonilnike.\n"
+"Nekaj podatkov o tem dobite na: %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "Vklapljanje omrežja"
+msgstr "Priklapljanje omrežja"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
msgstr "Izklapljanje omrežja"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "Prosimo, počakajte. Pridobivanje datoteke ..."
+msgstr "Počakajte. Pridobivanje datoteke ..."
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr "ni moč dodati vira"
+msgstr "dodajanje vira ni bilo možno"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopiranje nekaterih paketov na disk, za kasnejšo uporabo"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopiranje poteka"
@@ -341,84 +410,100 @@ msgstr "uporabno"
msgid "maybe"
msgstr "morda"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Pridobivanje informacij o paketu iz metapodatkov XML …"
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr "Za vir »%s« ni metapodatkov, zato rezultati za paket %s niso popolni"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Brez opisa"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-"Ni moč namestiti nekaj paketov, ki jih zahteva %s:\n"
+"Nekaj paketov, ki jih zahteva %s ni mogoče namestiti:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Prišlo je do napake:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Zgodila se je usodna napaka: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Ne sprašuj več"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "%d namestitvenih transakcij je spodletelo"
+msgstr "Spodletelo je %d namestitvenih transakcij"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Nameščanje paketov ni uspelo:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Delovna postaja"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Pisarniška delovna postaja"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Pisarniški programi: urejanje besedila (OpenOffice.org Writer, KWord), "
-"preglednice (OpenOffice.org Calc, KSpread), pregledovalniki PDF, itd"
+"Pisarniški programi: urejavalniki besedil (LibreOffice Writer, KWord), "
+"preglednice (LibreOffice Calc, KSpread), pregledovalniki PDF, itd"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Pisarniški programi: urejanje besedila (KWord, AbiWord), preglednice "
-"(KSpread, Gnumeric), pregledovalniki PDF, itd"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Igralna postaja"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programi za zabavo: arkade, deske, strategije, itd"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Večpredstavnostna postaja"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programi za predvajanje in urejanje zvoka in videa"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internetna postaja"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -427,193 +512,193 @@ msgstr ""
"Zbirka orodij za branje in pošiljanje pošte in pošiljanje v novičarske "
"skupine (mutt, tin ...) ter brskanje po spletu"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Omrežni računalnik (odjemalec)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Odjemalci za različne protokole, vključujoč SSH"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Orodja za lažjo nastavitev računalnika"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konzolna orodja"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Urejevalniki, lupine, datotečna orodja, terminali"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Razvoj"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "Razvojne knjižnice, programi in zaglavne datoteke za C in C++"
+msgstr "Razvojne knjižnice, programi in datoteke z glavami za C in C++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentacija"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Knjige in priročniki o Linuxu in prostem programju"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Standardna osnova Linuxa (LSB). Podpora programom tretjih oseb"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Spletni strežnik"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Skupinsko delo"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Strežnik Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Požarni zid/usmerjevalnik"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internetni prehod (gateway)"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Pošta/novičarske skupine"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Poštni strežnik postfix in novičarski strežnik Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Imeniški strežnik"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Strežnik FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Strežnik imen domen in omrežnih podatkov"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Strežnik za souporabo datotek in tiskalnikov"
+msgstr "Strežnik za skupno rabo datotek in tiskalnikov"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Strežnik NFS, strežnik Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Podatkovna zbirka"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Strežnik podatkovnih baz PostgreSQL in MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Strežnik podatkovnih baz PostgreSQL in MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Splet/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Pošta"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Poštni strežnik Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Strežnik podatkovnih baz PostgreSQL ali MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Strežnik podatkovnih baz PostgreSQL ali MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Omrežni računalnik (strežnik)"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Strežnik NFS, strežnik SMB, posredniški strežnik, strežnik SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafično okolje"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Delovna postaja KDE"
+msgid "Plasma Workstation"
+msgstr "Delovna postaja Plazma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -621,76 +706,124 @@ msgid ""
msgstr ""
"Namizno okolje KDE, moderno grafično okolje z zbirko pripadajočih orodij"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Delovna postaja GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
-msgstr "Grafično okolje z naborom programov in namiznimi orodji"
+msgstr ""
+"Grafično okolje z naborom uporabniku prijaznih programov in namiznimi orodji"
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Delovna postaja Xfce"
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+"Majhno grafično okolje z naborom uporabniku prijaznih programov in namiznimi "
+"orodji"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Delovna postaja MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Delovna postaja Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Grafično okolje osnovano na GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Namizje LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Nova generacija majhnega in hitrega namiznega okolja prenesenega na QT"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Namizje Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Majhno in hitro grafično okolje s predanimi privrženci"
+
+#: share/meta-task/compssUsers.pl:189
#, c-format
msgid "LXDE Desktop"
msgstr "Namizje LXDE"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:191
#, c-format
-msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "Lahko in hitro grafično okolje z naborom programov in namiznimi orodji"
+msgid "A lightweight fast graphical environment"
+msgstr "Majhno in hitro grafično okolje"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Druga grafična namizja"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, FVWM ..."
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, FVWM ..."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Pripomočki"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Strežnik SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Strežnik Webmin za oddaljeno nastavljanje"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Omrežni pripomočki/nadzorovanje"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "Nadzorna orodja, knjigovodstvo procesov, tcpdump, nmap ..."
+msgstr "Nadzorna orodja, knjigovodstvo procesov, tcpdump, nmap …"
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandrivini čarovniki"
+msgid "Mageia Wizards"
+msgstr "Magejini čarovniki"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Čarovniki za nastavitev strežnikov"
@@ -704,7 +837,7 @@ msgstr ""
"Prišlo je do napake, ki je sistem ne zna odpraviti na ustrezen način.\n"
"Nadaljujte na lastno odgovornost."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -713,7 +846,7 @@ msgid ""
"\"\n"
msgstr ""
"Nekateri pomembni paketi niso bili ustrezno nameščeni.\n"
-"Verjetno imate pokvarjen namestitveni nosilec ali pa pogon\n"
+"Verjetno imate poškodovan namestitveni nosilec ali pa pogon\n"
"za branje. Na računalniku, na katerem je nameščen Linux,\n"
"preverite nosilec z ukazom »rpm -qpl media/main/*.rpm«.\n"
@@ -724,227 +857,236 @@ msgstr "Pričetek koraka »%s«\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Namestitev Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Namestitev %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> med elementi"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "Grafični strežnik se zaganja počasi. Prosimo, počakajte ..."
+msgstr "Grafični strežnik se zaganja počasi. Počakajte …"
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Vaš sistem ni zelo zmogljiv. Lahko, da boste imeli pri namestitvi\n"
-"Mandriva Linuxa težave. V tem primeru lahko poskusite z namestitvijo\n"
+"%s težave. V tem primeru lahko poskusite z namestitvijo\n"
"v besedilnem načinu.\n"
"Po zagonu z namestitvenega nosilca pritisnite »F1« in vnesite »text«."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Namizje KDE"
+msgid "Media Selection"
+msgstr "Izbira virov"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Namizje GNOME"
+msgid "Install %s Plasma Desktop"
+msgstr "Namestitev %s namizja Plazma"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Namestitev %s namizja GNOME"
+
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Po meri"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Namizje KDE"
+msgid "Plasma Desktop"
+msgstr "Namizje Plazma"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Namizje GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Namizje po meri"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "To je ogled namizja »%s«."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Kliknite na sliko, da vidite večji ogled"
+msgstr "Kliknite na sliko, da vidite večji predogled"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Izbira skupin paketov"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Izbira posamičnih paketov"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Skupna velikost: %d / %d MiB"
+msgid "Unselect All"
+msgstr "Odstrani izbiro"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Paket je pokvarjen"
+msgid "Total size: %d / %d MB"
+msgstr "Skupna velikost: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Različica: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Velikost: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
-msgstr "%d KiB\n"
+msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Pomembnost: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Tega paketa ne morete izbrati ali izločiti."
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "ker manjka %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "zaradi nezadostitve %s"
+msgstr "zaradi ne-zadostitve %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "poizkušam uveljaviti %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "da bi obdržal %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Tega paketa ne morete izbrati, ker ni dovolj prostora, da bi ga lahko "
"namestili."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Nameščeni bodo naslednji paketi"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Odstranjeni bodo naslednji paketi"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "To je obvezen paket in ga ni mogoče izločiti."
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Tega paketa ne morete izločiti, ker je že nameščen."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Tega paketa ne morete izločiti, ker ga je treba posodobiti."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "Pokaži samodejno izbrane pakete"
+msgstr "Prikaži samodejno izbrane pakete"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Namesti"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
-msgstr "Naloži/shrani izbiro"
+msgstr "Naloži/shrani izbor"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Posodabljanje izbora paketov"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Preklop med hierarhičnim in ploskim pogledom seznama."
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimalna namestitev"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Upravljanje s programi"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Izberite pakete, ki jih želite namestiti"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Nameščanje"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Brez podrobnosti"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Preostali čas:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
-msgstr "(izračunavanje ...)"
+msgstr "(izračunavanje …)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
@@ -953,41 +1095,36 @@ msgstr[1] "%d paketa"
msgstr[2] "%d paketi"
msgstr[3] "%d paketov"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Povzetek"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Nastavitev"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "ni nastavljeno"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Izbira virov"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
"Na voljo so naslednji viri za namestitev.\n"
-"Če želite katerega izmed njih izločiti, to lahko storite sedaj."
+"Če želite, lahko katerega izmed njih sedaj izločite."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Pred namestitvijo lahko vsebino namestitvenih nosilcev prekopirate na trdi "
@@ -995,72 +1132,72 @@ msgstr ""
"V tem primeru bo namestitev potekala s trdega diska, paketi pa bodo ostali "
"na voljo tudi po zaključeni namestitvi."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Prekopiraj vsebino nosilcev"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Prišlo je do napake"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Izberite razpored tipkovnice"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Tu je celoten seznam razpoložljivih tipkovnic:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "Namestitev/posodobitev"
+msgstr "Namestitev/nadgradnja"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Ali želite izvesti namestitev ali nadgradnjo?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Namestitev"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Nadgradnja %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Šifrirni ključ za %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Prekliči namestitev, znova zaženi računalnik"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Nova namestitev"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Nadgradite obstoječo namestitev (ni priporočeno)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1068,46 +1205,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Namestitveni program je zaznal, da obstoječe namestitve Mandriva\n"
-"Linuxa ni moč varno nadgraditi na različico %s.\n"
+"Namestitveni program je zaznal, da obstoječe namestitve\n"
+"Linuxa ni mogoče varno nadgraditi na različico %s.\n"
"\n"
"Priporočena je nova namestitev, ki nadomesti obstoječo.\n"
"\n"
"Opozorilo: Pred nadaljevanjem z novo namestitvijo napravite\n"
"varnostno kopijo vseh osebnih podatkov."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Nastavljanje IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Ni prostora za zapis začetnega nalagalnika (1MB). Namestitev se bo "
-"nadaljevala, vendar morate, da bi sistem po namestitvi lahko zagnali, s "
-"pomočjo orodja DiskDrake ustvariti razdelek za začetno nalaganje."
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Ustvariti morate začetni nalagalnik PPC PReP Boot! Namestitev se bo "
-"nadaljevala, vendar boste morali za zagon sistema s pomočjo DiskDrake "
-"ustvariti razdelek za začetno nalaganje."
+msgid "Configuring CD/DVD"
+msgstr "Nastavljanje enote CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1117,78 +1233,78 @@ msgid ""
msgstr ""
"Zamenjajte nosilec!\n"
"\n"
-"Vstavite namestitveni nosilec z oznako »%s« v pogon in kliknite V redu\n"
+"V pogon vstavite namestitveni nosilec z oznako »%s« in kliknite V redu.\n"
"Če zahtevanega nosilca nimate, kliknite Prekliči, da ga bo namestitev "
"preskočila."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Iskanje razpoložljivih paketov ..."
+msgstr "Iskanje razpoložljivih paketov …"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"Sistem nima dovolj prostora za namestitev ali nadgradnjo (%d MiB > %d MiB)"
+"Sistem nima dovolj prostora za namestitev ali nadgradnjo (%d MB > %d MB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
"Izberite nalaganje ali shranjevanje izbora paketov.\n"
-"Format je enak formatu datotek za samodejno namestitev."
+"Format je enak formatu datotek za samodejno namestitev (auto_install)."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Naloži"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Shrani"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Neustrezna datoteka"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plazma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Izbira namizja"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Tu lahko izberete namizno okolje, ki bo nameščeno."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
-msgstr "Velikost izbora presega prostor, ki je na razpolago."
+msgstr "Velikost izbora presega velikost razpoložljivega prostora."
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Vrsta namestitve"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1197,87 +1313,129 @@ msgstr ""
"Izbrali niste nobene skupine paketov.\n"
"Izbrati morate vsaj minimalno namestitev:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Z grafičnim okoljem"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Nameščanje paketa %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Namesti priporočene pakete"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "Z osnovno dokumentacijo (priporočeno!)"
+msgstr "Z osnovno dokumentacijo (priporočeno)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Zares najmanjša možna namestitev (še posebej brez urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Pripravljanje nadgradnje …"
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Pripravljanje namestitve"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Nameščanje paketa %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Med razvrščanjem paketov je prišlo do napake:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Ali naj kljub temu nadaljujem?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Poskusi znova"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Spusti ta paket"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Spusti vse pakete z nosilca »%s«"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Nazaj na izbiro nosilcev in paketov"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Prišlo je do napake med nameščanjem paketa %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Nastavitev po namestitvi"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Prepričajte se, da je nosilec »Posodobitev modulov« v pogonu %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Posodobitve"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Sedaj je priložnost za nastavitev spletnih virov."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "S tem bo možno namestiti varnostne posodobitve."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Za nastavitev spletnih virov je potrebna delujoča spletna povezava.\n"
+"\n"
+"Ali želite nastaviti spletne posodobitvene vire?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Tega programa za prenos ni bilo možno namestiti"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Poskusi znova?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Napaka pri dodajanju vira"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1289,119 +1447,88 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Imate možnost, da s strežnika prenesete posodobljene pakete. Ti paketi\n"
-"so bili posodobljeni po izdaji distribucije. Vsebujejo varnostne popravke in "
-"popravke napak.\n"
+"Zdaj imate možnost, da s strežnika prenesete posodobljene pakete.\n"
+"Ti paketi so bili posodobljeni po izdaji distribucije. Zelo verjetno "
+"vsebujejo varnostne popravke in popravke napak.\n"
"\n"
"Za namestitev teh paketov morate imeti vzpostavljeno internetno povezavo.\n"
"\n"
"Ali želite namestiti posodobitve?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s na %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Strojna oprema"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Zvočna kartica"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Ali imate zvočno kartico na ISA vodilu?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Za nastavitev zvočne kartice po namestitvi zaženite »alsaconf« ali »sndconfig«."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Ne zaznam zvočne kartice. Po namestitvi jo poskusite nastaviti s pomočjo "
-"»harddrake«."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafična kartica"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Omrežje in internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Posredniški strežniki"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "nastavljeno"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Stopnja varnosti"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Požarni zid"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktivirano"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "onemogočeno"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "Niste nastavili grafičnega strežnika. Ali to zares želite?"
+msgstr "Grafičnega strežnika niste nastavili. Ali to zares želite?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Pripravljanje zagonskega nalagalnika ..."
+msgid "Preparing initial startup program..."
+msgstr "Pripravljanje začetnega zagonskega programa …"
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr "Prosimo, potrpite. To lahko traja dlje časa ..."
+msgstr "Potrpite. To lahko traja dalj časa …"
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Na vašem računalniku zagonski nalagalnik yaboot ne bo deloval.\n"
-"Namestitev se bo nadaljevala, vendar boste morali\n"
-"računalnik zagnati s pomočjo BootX ali na drug način. Nastavitev jedra za "
-"korenski datotečni sistem je: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1410,17 +1537,17 @@ msgstr ""
"Na tej varnostni stopnji je dostop do datotek na razdelku za Windows "
"dovoljen samo skrbniku sistema (root)."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "Vstavite prazno disketo v pogon %s"
+msgstr "V pogon %s vstavite prazno disketo"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Ustvarjanje diskete za samodejno namestitev ..."
+msgstr "Ustvarjanje diskete za samodejno namestitev …"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1431,12 +1558,12 @@ msgstr ""
"\n"
"Ali res želite končati?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Čestitke"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Ponovni zagon"
@@ -1473,14 +1600,14 @@ msgstr "Miška"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Zaznava trdega diska"
+msgstr "Zaznava trdih diskov"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr "Razred namestitve "
+msgstr "Razred namestitve"
#: steps_list.pm:23
#, c-format
@@ -1515,7 +1642,7 @@ msgstr "Formatiranje"
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr "Izbiranje paketov "
+msgstr "Izbiranje paketov"
#: steps_list.pm:31
#, c-format
@@ -1531,13 +1658,6 @@ msgid ""
"Users"
msgstr "Uporabniki"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Omrežje"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1550,7 +1670,7 @@ msgstr "Zagonski nalagalnik"
msgid ""
"_: Keep these entry short\n"
"Configure X"
-msgstr "Grafični strežnik"
+msgstr "Grafično okolje"
#: steps_list.pm:42
#, c-format
@@ -1579,109 +1699,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Izhod"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Izbrali ste posodobitev sistema na %s. Na sistemu je bil zaznan KDE 3.5.\n"
-#~ "Program za nameščanje pri posodobitvi ne more ohraniti KDE 3.5. Če "
-#~ "nadaljujete,\n"
-#~ "bo KDE 3.5 nadomeščen s KDE 4, pri tem pa bodo izgubljene vse osebne "
-#~ "nastavitve\n"
-#~ "za KDE. Da bi posodobili sistem ter ohranili KDE 3.5 in nastavitve zanj, "
-#~ "znova \n"
-#~ "zaženite računalnik in opravite posodobitev z uporabo programčka Mandriva "
-#~ "Update."
-
-#~ msgid "Proceed"
-#~ msgstr "Nadaljuj"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "pridobivanje [%s] ni uspelo"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Prenos datoteke %s ..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "Posodobitev z 32-bitnega na 64-bitni sistem ni podprta"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "Posodobitev s 64-bitnega na 32-bitni sistem ni podprta"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Izbrali ste naslednje strežnike: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Navedeni strežniki se zaženejo samodejno. Trenutno nimajo nobenih znanih\n"
-#~ "varnostnih težav, a lahko odkrijejo nove. V tem primeru je strežnike "
-#~ "potrebno\n"
-#~ "čim prej posodobiti.\n"
-#~ "\n"
-#~ "\n"
-#~ "Ali ste prepričani, da želite namestiti navedene strežnike?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Namizje IceWM"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Vzpostavljanje povezave z zrcalnim strežnikom in pridobivanje seznama "
-#~ "dosegljivih paketov...."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Povezave z zrcalnim strežnikom %s ni mogoče vzpostaviti."
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Ustvari disketo za samodejno namestitev"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Namestitev je lahko povsem samodejna, V tem\n"
-#~ "primeru se uporabi ves trdi disk!!\n"
-#~ "(Takšen način je uporaben, če želite namestitev\n"
-#~ "zagnati na drugem računalniku.)\n"
-#~ "\n"
-#~ "Morda vam bolj ustreza ponovitev namestitve.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Ponovi"
-
-#~ msgid "Automated"
-#~ msgstr "Samodejno"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Shrani izbiro paketov"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Ali želite uporabiti aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Napaka pri namestitvi aboot\n"
-#~ "Ali želite nadaljevati z namestitvijo, čeprav bo s tem prvi razdelek "
-#~ "uničen?"
diff --git a/perl-install/install/share/po/sq.po b/perl-install/install/share/po/sq.po
index 3243e4a36..349c22b1c 100644
--- a/perl-install/install/share/po/sq.po
+++ b/perl-install/install/share/po/sq.po
@@ -1,53 +1,82 @@
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR Free Software Foundation, Inc.
-# Naim Daka <naim70@freesurf.ch>, 2002, 2003.
-#
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Ardit Dani <ardit.dani@gmail.com>, 2014-2017,2019,2021
+# Naim Daka <naim70@freesurf.ch>, 2002-2003
msgid ""
msgstr ""
-"Project-Id-Version: DrakX for MDK 9.2\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2004-09-15 13:33+0200\n"
-"Last-Translator: Naim Daka <naim70@freesurf.ch>\n"
-"Language-Team: Albanian <LL@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2021-01-31 03:49+0000\n"
+"Last-Translator: Ardit Dani <ardit.dani@gmail.com>\n"
+"Language-Team: Albanian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/sq/)\n"
+"Language: sq\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8-bit\n"
+"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Bashkohu me ne!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Bëni atë tuajat!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Zgjedhja juaj!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Vegla zyre"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Argëtim shtëpie "
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Për fëmijët"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Për familjen!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Për zhvilluesit!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Faleminderit!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Ekzisto Lirshëm!"
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "A posedoni ndonjë tjetër?"
+msgstr "A keni media të mëtejshme shtesë?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -55,116 +84,161 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
+"Mediat e mëposhtme janë gjetur dhe do të përdoret gjatë instalimit: %s\n"
+"\n"
+"\n"
+"A keni një media shtesë instalimi për konfigurimin?"
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Rrjeti %s"
+msgstr "Rrjeti (HTTP)"
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "Rrjeti %s"
+msgstr "Rrjeti (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
-msgstr ""
+msgstr "Rrjeti (NFS)"
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
-msgstr ""
+msgid "NFS setup"
+msgstr "Ndërtimi NFS"
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr ""
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr "Ju lutemi shkruani pritësin dhe skedarin tuaj të medias NFS"
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Lidhje në sitin Mandriva Linux për të pranuar listën e lirë të pasqyreve..."
+msgid "Hostname missing"
+msgstr "Pritësi mungon"
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr "Skedari duhet të fillojë me \"/\""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr "Pritësi i montuesit NFS?"
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Repertori"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr "Plotësues"
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"Lidhje në sitin Mandriva Linux për të pranuar listën e lirë të pasqyreve..."
+"Nuk mund të gjeni një dokument listë pakete në këtë pasqyrë. Sigurohuni "
+"vendi është e saktë."
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Zgjedheni një pasqyre nga e cila do ti transferoni pakot"
+msgid "Core Release"
+msgstr "Lëshim Bërthamë"
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
-msgstr ""
+msgid "Tainted Release"
+msgstr "Lëshim Prishur"
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
-msgstr ""
+msgid "Nonfree Release"
+msgstr "Lëshim Jofalas"
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
+"Disa pajisje-elektronikenë kompjuterin tuaj ka nevojë për disa udhzues jo të "
+"lirë në mënyrë që drejtuesit e programevetë lirë të punojnë."
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
-msgstr ""
+msgid "You should enable \"%s\""
+msgstr "Ju duhet të mundësoni \"%s\""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
-msgstr ""
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" përmban pjesë të ndryshme të sistemet dhe aplikimet e saj"
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Repertori"
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" përmban programe jo falas.\n"
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
+"Ai gjithashtu përmban një program nevojshme për pajisje të caktuara për të "
+"vepruar (p.sh: disa karta grafike ATI/AMD, disa kartat e rrjetit, disa karta "
+"RAID, ...)"
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Nuk mund ta gjejë %s në %s"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" përmban programe që nuk mund të shpërndahet në çdo vend për shkak të "
+"patentave të programit."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "Ai gjithashtu përmban program nga \"%s\" rindërtuar me aftësi shtesë."
-#: any.pm:334
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Këtu ju mund të mundësoni më shumë media në qoftë se ju dëshironi."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Ky medium ofron përditësime paketë për të mesëm \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Kërkimi i pakove veqse të instaluara..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Gjetja pakove azhurnuese..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr ""
+msgstr "Heqja paketave para përmirësimit..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -177,88 +251,88 @@ msgstr ""
"\n"
"Me të vërtetë dëshironi ti zhdukni?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Gabim gjatë leximit të skedares %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Pakot e radhitura duhet të instalohen:\n"
+msgstr "Di(s)qet mëposhtme janë riemëruar:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
-msgstr ""
+msgstr "%s (të emëruar më parë si %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rrjeti"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Ju lutemi zgjedheni"
+msgstr "Ju lutemi zgjidhni një media"
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Skedarje është veqse prezente. Përdoreni atë?"
+msgstr "Skedari ekziston. Mbishkruaj atë?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Autorizim i pa pranuar"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr ""
+msgstr "Emër keq NFS"
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "shtuarja e burimit %s"
+msgstr "Media keqe %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "E pa mundur grabitja e ekranit (screenshots) para ndarjeve"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
"Grabitjet e ekranit (screenshots) janë të mundura mbas instalimit në %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
msgstr "Instalimi"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfigurimi"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Ju duhet njashtu ta formatoni %s"
@@ -283,25 +357,25 @@ msgstr "Nisja e rrjetit (network)"
msgid "Bringing down the network"
msgstr "Ndalja e rrjetit (network)"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Ju lutem prisni, rikthim i skedarit"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "e pamundur shtimi instaluesin"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr ""
+msgstr "Kopjimi disa paketa në disqe për përdorim në të ardhmen"
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Zbulimi në vazhdim e sipër"
+msgstr "Kopjimi në progres"
#: pkgs.pm:32
#, c-format
@@ -328,277 +402,297 @@ msgstr "i mirë"
msgid "maybe"
msgstr "ndoshta"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Marrja informacionit paketës nga XML meta-data..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Nuk ka informacion xml për medien \"%s\", vetëm rezultati i pjesshëm për "
+"paketën %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Asnjë përshkrim"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
+"Disa paketa të kërkuara nga %s nuk mund të instalohen:\n"
+"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Një gabim është paraqitur"
+msgstr "Një gabim ndodhi:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Një gabim fatal është paraqitur: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Mos pyesni përsëri"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "Instalimi i transmetimit të %d dështio"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Instalimi i pakove %s"
+msgstr "Instalimi i paketave dështoj:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Stacion punues"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Stacioni Punues në Tryezë"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programe për tryezë: trajtues të teksteve (OpenOffice.org Writer, Kword), "
-"tablues (OpenOffice.org Calc, Kspread), çfaqës pdf, etj."
+"Programe për tryezë: trajtues të teksteve (LibreOffice Writer, Kword), "
+"tablues (LibreOffice Calc, Kspread), çfaqës pdf, etj."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Programe për tryezë: trajtues të teksteve (kword, abiword), tablues "
-"(kspread, gnumeric), çfaqës pdf, etj."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Stacion Lojërash"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programe ahengi: lojë arkade, lojë me stenda, strategji, etj"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Stacion Multimedia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programe për lojëra/botime të zërit dhe videos"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Stacion Interneti"
-#: share/meta-task/compssUsers.pl:34
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:37
+#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Përgjithësia a veglave të leximit, dërgimit të letrave elektronike të "
-"lajmeve (pine, mutt, tin...) dhe për të lundruar në internet."
+"Set mjetesh për të lexuar dhe për të dërguar postë dhe lajme (mutt, tin ..) "
+"dhe të shfletoni Internetin"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Kompjuter Rrjeti (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klient për protokole të ndryshme me përfshirje në ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Vegla për të konfiguruar kompjuterin tuaj"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Vegla në konsolë"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Botues, interpretues, vegla skedaresh, terminale"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Zhvillimi"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Bibloteka ndërtuese e C dhe C++, programe dhe skedare me përfshirje"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentacioni"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Libra dhe Howto's për Linux dhe Softver gratis"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Bazë Standarde e Linux. Përkrahë aplikacione të pjesës së tretë"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Server Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "Grupi"
+msgstr "Grupimi"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Server Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Murë-i-Zjarrtë/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Portë kaluese Interneti"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/Skedare/_E Re"
+msgstr "Postë/Lajme"
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Server i letrave (mail) Postfix"
+msgstr "Postfix server poste, Inn server lajme"
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "Riparoje Nga CD"
+msgstr "Server Skedarësh"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Server FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
-msgstr ""
+msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Server i Emrit (DNS) dhe Server i Informacionit (NIS)"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Server Stampues"
+msgstr "Server Shpërndarës Skedarësh dhe Printeri"
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "Server Samba"
+msgstr "NFS Server, Samba server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Bazë e të dhënave"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Server PostgreSQL apo MySQL i bazës së të dhënave"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL dhe MariaDB Database Server"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Mail"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Server i letrave (mail) Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Server PostgreSQL apo MySQL i bazës së të dhënave"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Server PostgreSQL apo MariaDB i bazës së të dhënave"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Server Kompjuter Rrjeti"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Server NFS, server SMB, server Proxy, server ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Mjedis Grafikë"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Stacioni punues KDE"
+msgid "Plasma Workstation"
+msgstr "Stacionpune Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -606,12 +700,12 @@ msgid ""
msgstr ""
"Mjedisi i Tryezës K, dhe grafiku basic, i mjedisit me koleksionimin e veglave"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Stacioni punues Gnome"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -620,69 +714,113 @@ msgstr ""
"Një mjedis grafikë me përdorues-miqësie, një përgjithësi e palikacioneve dhe "
"vegla në tryezë"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Tryeza"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Stacioni-Punë Xfce"
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Një mjedis grafikë me përdorues-miqësie, një përgjithësi e palikacioneve dhe "
-"vegla në tryezë"
+"Një mjedis më i lehtë grafik me një sërë aplikacionesh dhe vegla mjedisi"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Stacionpune MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Stacionpune Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Një mjedis grafik i bazuar në GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt Desktop"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Një port tjetër QT i brezit të mjedisit të lehtë mjedisi"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Mjedisi Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Një mjedis grafik i lehtë, me një ndjekje të dedikuar"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE Desktop"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Një mjedis grafik i lehtë dhe i shpejtë"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Mjedise të Tjera Grafike në Tryezë"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm, etj."
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr "Krijues Windows, Fvwm, etj"
-#: share/meta-task/compssUsers.pl:174
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:218
+#, c-format
msgid "Utilities"
-msgstr "Filipinet"
+msgstr "Shërbime"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Server SSH"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Webcam"
+msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Konfigurim i Serverit me Terminale Mandriva"
+msgstr "Webmin Konfigurim Serveri Distancë"
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Vështrimi i Rrjetit (Network)"
+msgstr "Rrjeti Vegla/Monitorim"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr ""
+msgstr "Vegla monitorimi, llogaritje procesesh, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Qendra Kontrolluese Mandriva Linux"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr "Udhëzuesi Mageia"
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Dështim gjatë konfigurim të stampuesit %s\"!"
+msgstr "Udhëzuesi për konfigurim serverin"
#: steps.pm:85
#, c-format
@@ -693,7 +831,7 @@ msgstr ""
"Një gabim është paraqitur, dhe me sa duket është vështir të zgjidhet.\n"
"Ju mund të vazhdoni, mirëpo ju jeni përgjegjës për ndonji gabim eventual."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -701,7 +839,7 @@ msgid ""
"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
"\"\n"
msgstr ""
-"Disa pako me rëndësi nuk janë instalur në mënyrë korrekte.\n"
+"Disa paketa me rëndësi nuk janë instalur në mënyrë korrekte.\n"
"Është e mundur që cdrom-i apo lexuesi cdrom të jetë në defekt.\n"
"Verifikoni cdrom-in në një kompjuter të instalur, duke shtypur urdhërin "
"\"rpm -qpl media/main/*.rpm\"\n"
@@ -713,336 +851,344 @@ msgstr "Nisja e etapës `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Instalimi i Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Instalimi i %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab> para /<Alt-Tab> mbrapa"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr ""
+msgstr "Xorg server është i ngadalshëm për të filluar. Ju lutem prisni..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Kompjuteri i juaj posedon sasi të vogël të memorisë. Ju mund të ndesheni me\n"
-"disa probleme gjatë instalimit të Mandriva Linux. Nëse kjo ndodhë, ju\n"
-"mund të vazhdoni në një instalim në modë teksti. Për këtë shtypni mbi\n"
-"`F1' kut të niseni me një nisje të udhëzuar në CDROM, dhe fytni urdhërin "
-"`text'."
+"Kompjuteri juaj posedon sasi të vogël të memorjes. Ju mund të ndesheni me\n"
+"disa probleme gjatë instalimit të %s. Nëse kjo ndodhë, ju\n"
+"mund të vazhdoni në një instalim në modë teksti. Për këtë shtypni `F1' kut "
+"të ndizet në CDROM, dhe shtypni `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr ""
+msgid "Media Selection"
+msgstr "Përzgjedhja Mediave"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr ""
+msgid "Install %s Plasma Desktop"
+msgstr "Instalo %s Mjedisi Plasma"
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Instalo %s Mjedisi GNOME"
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Instalim minimal"
+msgstr "Instalim personalizuar"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Tryeza"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Mjedisi Plasma"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Tryeza"
+msgstr "Mjedisi GNOME"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Tryeza"
+msgstr "Mjedis Personalizuar"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Këtu është një vrojtim i '%s' mjedisit."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Kliko në imazhe për të parë një vrojtim më të madh"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "Zgjedhni Grupet e Pakove"
+msgstr "Përzgjedh Grupet Paketave"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "Zgjedhni pakot individualisht"
+msgstr "Zgjedh pakot individualisht"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Madhësia totale: %d / %d MB"
+msgid "Unselect All"
+msgstr "Gjitha të Çzgjedhurat"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Pako jo e mirë"
+msgid "Total size: %d / %d MB"
+msgstr "Madhësia totale: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versioni: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Madhësia: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Me rëndësi: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Ju nuk mund ti zgjedhni/çzgjedhni këtë pako"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "ka arritur nga mungesa %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "ka arritur gjatë mosmarrëveshjes %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "tentim në gradimin e %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "në urdhër për ta mbajturë %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Nu nuk mund ta zgjidhni këtë pako, sepse nuk ka vend të mjaftueshëm për ta "
"instaluar"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Pakot e radhitura do të instalohen"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Pakot e radhitura do të zhduken"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Kjo është një pako e nevojshme, dhe nuk mund çzgjedhet"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Ju nuk mund ta çzgjedhni këtë pako. Është e instaluar më parë"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Ju nuk mund ti çzgjedhni këtë pako. Duhet të azhurnohet"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Paraqiti automatikisht pakot e zgjedhura"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instalim"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Zgjedhja e pakos"
+msgstr "Ngarko/Ruaj përzgjedhje"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Azhurnimi i pakove të zgjedhura"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Kaloni midis listës hierarkike dhe të paketës së sheshtë"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Instalim minimal"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Menagjuesi Softver"
+msgstr "Administrues Programesh"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Zgjedhi pakot të cilat dëshironi t'instaloni"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instalimi"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Asnjë detaj"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Koha e mbetur"
+msgstr "Koha e mbetur:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Vlerësimi në sipër"
+msgstr "(vlerësim...)"
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d pakot"
-msgstr[1] "%d pakot"
+msgstr[0] "%d paketë"
+msgstr[1] "%d paketat"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Përmbledhje"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfiguroje"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "i pa konfiguruar"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Zgjedhni Grupet e Pakove"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
+"Mënyrat e mëposhtme të instalimit janë gjetur.\n"
+"Nëse doni të kaloni disa prej tyre, ju mund t'i hiqni ato tani."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
+"Ju keni mundësi të kopjoni përmbajtjen e CD-ve në disk para instalimit.\n"
+"Pastaj do të vazhdojë nga disku dhe paketat do të mbeten në dispozicion sapo "
+"sistemi të jetë i instaluar plotësisht."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr ""
+msgstr "Kopjo tërë CDtë"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Një gabim është paraqitur"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Ju lutemi zgjedheni tipin tastierës suaj"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Ja ku është lista komplete e shteteve në disponibilitet"
+msgstr "Këtu është lista e plotë e tastierave në dispozicion:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalo/Azhurno"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Është ky një instalim apo një azhurnim?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Instalim"
+msgstr "Instalimi"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Azhurno %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Çelës i kriptuar për %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Anulo instalimin, rifillo sistemin"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Instalimi"
+msgstr "Instalim i Ri"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Përmirëso instalimin e mëparshme (nuk rekomandohet)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1050,39 +1196,26 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
+"Instaluesi ka zbuluar se sistemi juaj i instaluar Linux nuk ka mundur\n"
+"të përmirësohet në mënyrë të sigurtë %s.\n"
+"\n"
+"Rekomandohet instalimi i ri që zëvendëson të mëparshmin.\n"
+"\n"
+"Kujdes: duhet të ruani të gjitha të dhënat tuaja personale përpara se të "
+"zgjidhni \"Instalim\n"
+"Ri\"."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Konfigurimi i IDE"
+msgid "Configuring CD/DVD"
+msgstr "Konfigurimi CD/DVD"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Nuk ka hepësirë të lirë, për ndarjen me nisje të udhëzuar (bootstrap) me 1MB!"
-"Instalimi do të vazhdoj, ju duhet të krijoni një ndarje me nisje të udhëzuar"
-"(bootstrap) në DiskDrake"
-
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Nuk ka hepësirë të lirë, për ndarjen me nisje të udhëzuar (bootstrap) me 1MB!"
-"Instalimi do të vazhdoj, ju duhet të krijoni një ndarje me nisje të udhëzuar"
-"(bootstrap) në DiskDrake"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1096,74 +1229,75 @@ msgstr ""
"Nëse ju nuk e posedoni, shtypni mbi kopsën Anulo që më në fund të mos "
"instaloni asgjë nga ky Cd-Rom."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Hetim mbi pakot e lira..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
+"Sistemi juaj nuk ka hapësirë të mjaftueshme në dispozicion për instalim ose "
+"azhurnim, (%dMB > %dMB)"
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Ju lutemi zgjedhni ngarkimin apo shpëtimin e pakos së zgjedhur në floppy "
-"disketë.\n"
-"Forma është e njëjtë sikur në disketë me tërheqje të instalimit automatikë."
+"Ju lutemi zgjidhni ngarko ose ruaj përzgjedhjen e paketës.\n"
+"Formati është i njëjtë me skedarët e gjeneruar të auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Ngarko"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Shpëtoje"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Ngarko file"
+msgstr "Skedarë keq"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Zgjedhni Grupet e Pakove"
+msgstr "Përzgjedhje Desktop"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
+msgstr "Ju mund të zgjidhni mjedisin e profilin tuaj të kompjuterit."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Madhësia e zgjedhur është shumë më e gjatë se sa hapësira e lirë"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tipi i instalimit"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1172,87 +1306,130 @@ msgstr ""
"Ju nuk e keni zgjedhur asnjë grup të pakove.\n"
"Ju lutemi zgjedheni një instalim minimal të dëshiruar:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Me X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Instalimi i pakove %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Instalimi paketave rekomanduara"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Me dokumentacion bazues (rekomanduar!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Instalim tejet minimal (në veçanti pa urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Përgatitje përmirësim..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Pregatitje për instalim"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instalimi i pakove %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Një gabim është paraqitur gjatë radhitjes së pakove:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Vazhdo pa marrë parasysh?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr ""
+msgstr "Riprovo"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr ""
+msgstr "Kalo këtë paketë"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr ""
+msgstr "Hiq të gjitha paketat nga mjedisi \"%s\""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Regjistroi pakot e zgjedhura"
+msgstr "Kthehuni tek zgjedhja e instaluesit dhe paketave"
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Një gabim është paraqitur gjatë instalimit të pakove:"
+msgstr "Kishte një gabim instalimi i paketës %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Konfigurimi i postit-instalues"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
+msgstr "Ju lutemi sigurohuni që moduli Përditësimi Moduleve të jetë në disk %s"
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr "Përditësime"
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Ju tani keni mundësinë të krijoni media në internet."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Kjo lejon të instaloni përditësime sigurie."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
msgstr ""
+"Për të krijuar ato media, do të duhet të keni një lidhje internet i \n"
+"funksional.\n"
+"\n"
+"Dëshiron të konfigurosh median e përditësimit?"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:767
#, fuzzy, c-format
-msgid "Updates"
-msgstr "Azhurnimi"
+msgid "That downloader could not be installed"
+msgstr "Pakot e radhitura do të instalohen"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Riprovo?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Dështimi kur shton instaluesin"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1264,136 +1441,109 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Tani keni mundësin që ti shkarkoni azhurnimet e krijuara nga\n"
-"dalja e tyre në përdorim. Është e mundur që të ketë korigjime\n"
+"Tani keni mundësin që të shkarkoni përditësime e krijuara nga\n"
+"dalja e tyre në përdorim. Është e mundur që të ketë korrigjime\n"
"të sigurisë dhe rregullime të problemeve bug.\n"
"\n"
"Për ti transferuar pakot e shënuara, ju duhet të posedoni një lidhje \n"
"me rrjetin internet.\n"
"\n"
-"A dëshironi t'instaloni këto azhurnime ?"
+"A dëshironi të instaloni këto përditësime?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s mbi %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
-msgstr "Hardver"
+msgstr "Pjesë-Elektronike"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Kartelë zëri"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "A posedoni një kartelë zëri ISA?"
-
-#: steps_interactive.pm:919
-#, fuzzy, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Nise \"sndconfig\" mbasë instalimit për ta konfiguruar kartëlën e zërit"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Asnjë kartelë e zbuluar. Provo \"harddrake\" mbasë instalimit"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Interfaci grafik"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Rrjeti & Internet"
-#: steps_interactive.pm:947
-#, fuzzy, c-format
+#: steps_interactive.pm:991
+#, c-format
msgid "Proxies"
-msgstr "Profili "
+msgstr "Proxies"
-#: steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_interactive.pm:992
+#, c-format
msgid "configured"
-msgstr "rikonfiguroje"
+msgstr "konfiguruar"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Nivel i Sigurisë"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Mur i Zjarrt"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktivizuar"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "i nxënë"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
"Ju nuk e keni konfiguruar serverin X. A jeni i sigurt, se e dëshironi këtë?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Pregatitja e bootloader..."
+msgid "Preparing initial startup program..."
+msgstr "Përgatitja programit fillestar për fillimin..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Me sa duket makina juaj posedon një arqitekturë të vjetër apo të pa\n"
-" njoftur, programi për nisje të udhëzuar yabbot nuk do të funksionoj.\n"
-"Dhe instalimi do të vazhdoj më tutje, mirëpo ju\n"
-" duhet të posedoni BootX që ta nisni sistemin tuaj"
+msgstr "Kini durim, kjo mund të marrë pak kohë..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
+"Në këtë nivel të sigurisë, qasja në skedarë në ndarjen e Windows është i "
+"kufizuar nga administratori."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Futni një disketë të zbrazët në lexuesin e disketave %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Krijimi i një diskete auto instaluese..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1404,12 +1554,12 @@ msgstr ""
"\n"
"A dëshironi me të vërtetë ti braktisni tani?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Urime"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Rinise (riboot)"
@@ -1425,7 +1575,7 @@ msgstr "Zgjedheni gjuhën tuaj"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Vendndodhja"
#: steps_list.pm:17
#, c-format
@@ -1446,7 +1596,7 @@ msgstr "Mini"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Zbulim i Diskut të Fortë (Hard drive)"
+msgstr "Zbulim i Diskut të Fortë (Hard disk drive)"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
@@ -1454,6 +1604,8 @@ msgid ""
"_: Keep these entry short\n"
"Installation class"
msgstr ""
+"_: Mbani këto hyrje të shkurtra\n"
+"klasë Instalimi"
#: steps_list.pm:23
#, c-format
@@ -1482,6 +1634,8 @@ msgid ""
"_: Keep these entry short\n"
"Formatting"
msgstr ""
+"_: Mbani këto hyrje të shkurtra\n"
+"Shpërndarja"
#: steps_list.pm:29
#, c-format
@@ -1489,6 +1643,8 @@ msgid ""
"_: Keep these entry short\n"
"Choosing packages"
msgstr ""
+"_: Mbani këto hyrje të shkurtra\n"
+"Zgjedhja paketave"
#: steps_list.pm:31
#, c-format
@@ -1504,13 +1660,6 @@ msgid ""
"Users"
msgstr "Përdoruesit"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Punimi i rrjetit"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1545,6 +1694,8 @@ msgid ""
"_: Keep these entry short\n"
"Updates"
msgstr ""
+"_: Mbani këto hyrje të shkurtra\n"
+"Përditësime"
#: steps_list.pm:48
#, c-format
@@ -1553,135 +1704,24 @@ msgid ""
"Exit"
msgstr "Braktise"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Dërgimi i skedareve..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Ju keni zgjedhur server(et) e radhitur: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Këta server janë të aktivizuar me marrëveshje. Ata nuk kanë ndonji dalje\n"
-#~ "të siguruar, mirëpo probleme të reja mund të paraqiten. Në ato momente\n"
-#~ "ju duhet të jeni i sigurt që ti azhurnoni serverat tuja sa më shpejt.\n"
-#~ "\n"
-#~ "\n"
-#~ "Me të vërtetë dëshironi t'instaloni këta server?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Tryeza"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Transferimi i listës së pasqyreve me pako të lira..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Nuk mundur të kontaktohet pasqyrja %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Krijo një disketë auto instaluese"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Auto instalimi mund të bëhet me instalim të automatizuar, nëse\n"
-#~ "dëshironi, ai do të merë kontrolin mbi diskun tuaj të fort!!\n"
-#~ "(është i përcaktuar për instalimin njodnjë makine tjetër).\n"
-#~ "\n"
-#~ "A dëshironi ta përsëritni instalimin.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Rilexo"
-
-#~ msgid "Automated"
-#~ msgstr "Automatizuar"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL e pasqyrës?"
-#~ msgid "Save packages selection"
-#~ msgstr "Regjistroi pakot e zgjedhura"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL duhet të filloj me http:// ose https://"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "A dëshironi ta përdorni aboot?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Lidhje në sitin %s për të pranuar listën e lirë të pasqyreve..."
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Gabim gjatë instalimit aboot, \n"
-#~ "mundohu me instalim të forcuar, edhe pse ai do ta shkatërroj ndarjen e "
-#~ "parë?"
-
-#~ msgid "All"
-#~ msgstr "Gjitha"
-
-#~ msgid "TV card"
-#~ msgstr "Kartelë TV"
-
-#~ msgid "Boot"
-#~ msgstr "Boot"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Vërtetësimi"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d pakot"
-#~ msgstr[1] "%d pakot"
-
-#~ msgid "%d packages"
-#~ msgstr "%d pakot"
+#~ "Dështoi kontaktuari %s faqen për të marrë listën e pasqyrave në "
+#~ "dispozicion"
-#~ msgid "Language"
-#~ msgstr "Zgjedheni gjuhën tuaj"
-
-#~ msgid "License"
-#~ msgstr "Licenca"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Zgjedhe klasën e instalimit"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Vlerësimi në sipër"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Zgjedhi pakot instaluese"
-
-#~ msgid "Users"
-#~ msgstr "Përdoruesit"
-
-#~ msgid "Networking"
-#~ msgstr "Punimi i rrjetit"
-
-#~ msgid "Configure X"
-#~ msgstr "Konfigurim i X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Nuk mund të hyjë në modulet të cilat i përkasin bërthamës suaj (skedarja %"
-#~ "s mungon), kjo zakonisht do të thotë se disketa juaj me nisje të udhëzuar "
-#~ "nuk sinkronizohet, me burimin instalues (ju lutemi krijoni një disketë të "
-#~ "re)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Zgjedheni një pasqyre nga e cila do ti transferoni pakot"
diff --git a/perl-install/install/share/po/sr.po b/perl-install/install/share/po/sr.po
index 5d3a5df49..9758561d1 100644
--- a/perl-install/install/share/po/sr.po
+++ b/perl-install/install/share/po/sr.po
@@ -1,55 +1,83 @@
-# Cirilicni prevod drakbootdisk.po fajla.
-# Copyright (C) 1997-2003 MandrakeSERBIA.
-# Tomislav Jankovic <tomaja@net.yu>, 2000.
-#
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# tomaja <toma.jankovic@gmail.com>, 2019-2020
+# Tomislav Jankovic <tomaja@net.yu>, 2000
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2004-09-15 13:33+0200\n"
-"Last-Translator: Toma Jankovic <tomaja@net.yu>\n"
-"Language-Team: Serbian <i18n@mandrake.co.yu>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2020-06-23 09:20+0000\n"
+"Last-Translator: tomaja <toma.jankovic@gmail.com>\n"
+"Language-Team: Serbian (http://www.transifex.com/MageiaLinux/mageia/language/"
+"sr/)\n"
+"Language: sr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 0.9.6\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Придружи нам се!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Напавите је својом!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Ваш избор!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Канцеларијски алати"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Кућна забава"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "За децу"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "За породицу!"
-#: any.pm:109
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "За програмере!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Хвала вам!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Буди слободан!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Да ли имате још додатних медија?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -62,94 +90,57 @@ msgstr ""
"\n"
"Да ли имате додатних инсталационих медија које треба подесити?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Мрежа (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Мрежа (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Мрежа (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "УРЛ мирора?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "УРЛ мора почињати са ftp:// или http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Контактирајте Mandriva Linux web сајт да би добили листу доступних mirror-"
-"а..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Неуспешно успостављање везе са Mandriva Linux web сајт ради листе доступних "
-"mirror-а"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Изаберите mirror са ког ћете скинути пакете"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Подешавање NFS-а"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Унесите име домаћина-hostname и директоријум вашег NFS медија"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Недостаје име домаћина-hostname"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Директоријум мора почети са \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Име домаћина-hostname за монтирање NFS ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Директоријум"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Додатни"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -158,23 +149,97 @@ msgstr ""
"Не могу пронађем листу пакета на овом мирору. проверите да ли локација "
"исправна."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Основно Издање"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Непроверено Издање"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "НеСлободно Издање"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Нешто од хардвера на вашој машини захтева неке од власничких firmware-ва да "
+"би драјвери отвореног кода радили."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Треба да уљкучите \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" садржи различите делове система и његових апликација"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" задржи власнички софтвер.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Такође садржи firmware-ове потребне за одређене уређаје да би радили (нпр: "
+"неке ATI/AMD графичке картице, неке мрежне картице, неке RAID картице, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" садржи софтвер који не може да се дистрибуира у сваку земљу услед "
+"софтверских патената."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Такође садржи софтвер са \"%s\" поново креиран са додатним могућностима."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Овде можете пронаћи додатне медије уколико желите."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Овај медиј омогућава надоградњу пакета за медиј \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Тражим већ инсталиране пакете..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Тражим пакете за ажурирање..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Уклањам старе пакете..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -187,87 +252,87 @@ msgstr ""
"\n"
"Да ли заиста желите да уклоните ове пакете?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Грешка код отварања датотека %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Следећи диск(ови) ће бити преименовани:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (раније са именом %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Мрежа"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Изаберите медиј"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Датотека већ постоји. Да ли препишем преко постојеће?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Приступ одбијен"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Погрешно NFS име"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Лош медиј %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Не могу да направим снимак пре партиционирања"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Снимци ће бити доступни након инсталације у %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Инсталација"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Конфигурација"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Морате и %s да форматирате"
@@ -292,22 +357,22 @@ msgstr "Приступам мрежу"
msgid "Bringing down the network"
msgstr "Одступам од мреже"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Сачекајте, добављам пакет"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "не могу да додам медиј"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Копирање неких поакета на дискове ради касније употребе"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Копирање у току"
@@ -337,82 +402,100 @@ msgstr "лепо"
msgid "maybe"
msgstr "можда"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Добављање информација о пакету из XML мета података..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr "Нема xml инфоа за медиј \"%s\", само делимични резултати за пакет %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Без описа"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
+"Неки пакети потребни за %s не могу бити инсталирани:\n"
+"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Хм,појавила се грешка"
+msgstr "Појавила се грешка:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Појавила се фатална грешка: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Не питај ме поново"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "%d инстлациона трансакција није успела"
+msgstr "%d инсталациона трансакција није успела"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Инсталирам пакет %s"
+msgstr "Инсталација пакета није успела:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Радна станица"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Радна(Office) станица"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Office програми: текст процесори (OpenOffice.org Writer, Kword), табеле "
-"(OpenOffice.org Calc, Kspread), pdf прегледници, итд"
+"Office програми: текст процесори (LibreOffice Writer, Kword), табеле "
+"(LibreOffice Calc, Kspread), pdf прегледници, итд"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Office програми: текст процесори (kword, abiword), табеле (kspread, "
-"gnumeric), pdf прегледници, итд"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Станица за игру"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Забавни програми: аркаде, иге на табли, стратегије, итд"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Мултимедијална станица"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Програми за пуштање звука и видеа"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Интернет станица"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -421,193 +504,193 @@ msgstr ""
"Скуп алата за читање и слање ел.поште и вести (mutt, tin..) и за "
"претраживање Интернета"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Мрежни компјутер (клијент)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Клијенти за различите протоколе укључујући и ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Алати за лако конфигурисање компјутера"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Конзолни алати"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "едитори,шелови, алати за датотеке, терминали"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Развојна"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C и C++ развојне библиотеке, програми и пропратне датотеке"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Документација"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Књиге и Како? (Howto's) за Linux и Бесплатни Софтвер"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Линуксова Стандардна База. Подршка за Third party апликаицје"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Веб Сервер"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Софтвер за групни рад"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Сервер"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Сервер, Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Интернет gateway"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Ел.пошта/вести"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix сервер за ел.пошту,Inn сервер за вести "
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Сервер директоријума"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP Сервер"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Име Домена и Мрежни Информациони Сервер"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Фајл Сервер и сервер за дељење штампача"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS Сервер, Samba Сервер"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Сервер,Базе података"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL или MySQL сервер за базу података"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL или MariaDB сервер за базу података"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Сервер, Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Пошта"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix mail сервер"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL или MySQL сервер за базу података"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL или MariaDB сервер за базу података"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Мрежни Сервер"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS сервер, SMB сервер, Proxy сервер, SSH сервер"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Графичко Окружење"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE падна станица"
+msgid "Plasma Workstation"
+msgstr "Плазма Радна станица"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -615,12 +698,12 @@ msgid ""
msgstr ""
"K Десктоп окружење, основно графичко окружење са колекцијом пратећих алата"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Gnome радна станица"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -629,66 +712,111 @@ msgstr ""
"Графичка окружења за сетом корисничк NFS server, SMB server, Proxy server, "
"NFS server, SMB server, Proxy серверих апликација и десктопалата"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "IceWm Десктоп"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Xfce Радна Станица"
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Графичка окружења за сетом корисничк NFS server, SMB server, Proxy server, "
-"NFS server, SMB server, Proxy серверих апликација и десктопалата"
+"Лакше графичко окружење са групом апликација и десктоп алата прилагођених "
+"кориснику"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE Радна станица"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon Радна Станица"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Графичко окружење базирано на GNOME-у"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt Десктоп"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Следећа генерација QT порта лаганог графичког окружења"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment Десктоп"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Лагано брзо графичко окружење са посвећеним праћењем"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE Десктоп"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Лагано брзо графичко окружење"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Други графички десктопови"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr " Window Maker, Enlightenment, Fvwm, итд"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, итд."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Алати"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH Сервер"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin сервер за даљинску контролу"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Мрежни алати/Мониторинг"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Алати за мониторинг, управљање процесима, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Чаробњаци"
+msgid "Mageia Wizards"
+msgstr "Mageia Чаробњаци"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Чаробњаци за подешавање сервера"
@@ -702,7 +830,7 @@ msgstr ""
"Грешка, али незнам како да је разрешим.\n"
"Наставите на ваш ризик!"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -722,254 +850,258 @@ msgstr "Покрећем корак `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux Инсталација %s"
+msgid "%s Installation %s"
+msgstr "%s Инсталација %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> између елемената"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr ""
+msgstr "Xorg сервер је спор при покретању. Сачекајте..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Ваш систем има мањак снаге. Услед тога можете имати проблема при "
"инсталацији\n"
-"Mandriva Linux. Уколико се они појаве, можете пробати текстуалну "
-"инсталацију. Да би то постигли,\n"
+"%s. Уколико се они појаве, можете пробати текстуалну инсталацију. Да би то "
+"постигли,\n"
"притисните `F1' при стартању са CDROM-а, а онда укуцајте `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr ""
+msgid "Media Selection"
+msgstr "Избор Медија"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr ""
+msgid "Install %s Plasma Desktop"
+msgstr "Инсталирај %s Плазма Десктоп"
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Инсталирај %s GNOME Десктоп"
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Минимално инсталирај"
+msgstr "Произвољна инсталација"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "IceWm Десктоп"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Плазма десктоп"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm Десктоп"
+msgstr "GNOME Десктоп"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "IceWm Десктоп"
+msgstr "Произвољни десктоп"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Овде је изглед '%s' десктопа."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Кликни на слику да би видео већи преглед"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Одабир група пакета"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Појединачно бирање пакета"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Укупна величина: %d / %d MB"
+msgid "Unselect All"
+msgstr "Деселектуј Све"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Лош пакет"
+msgid "Total size: %d / %d MB"
+msgstr "Укупна величина: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Верзија: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Величина: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Важност: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Не можете селектовати/деселектовати овај пакет"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "због не постојања %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "због не задовољеног %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "покушавам да прикажем %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "да бих задржао %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Не можете селектовати овај пакет јер нема више слободног простора"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Следећи пакети треба да буду инсталирани"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Следећи пакети ће бити избрисани"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ово је обавезни пакет,и не може бити деселектован"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Можете деселектовати овај пакет јер је већ инсталиран"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Не можете деселектовати овај пакет.Он мора бити ажуриран"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Аутоматски прикажи изабране пакете"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Инсталирај"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Учитај/Сачувај избор"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Ажурирање селекције пакета"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Прeбацивање између хијерархијске и равне листе пакета"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Минимално инсталирај"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Подешавање Софтвера"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Изабери пакете за инсталацију"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Инсталирам"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Без детаља"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Преостало време"
+msgstr "Преостало време:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Процењујем"
+msgstr "(процењујем...)"
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d пакета"
+msgstr[0] "%d пакет"
msgstr[1] "%d пакета"
msgstr[2] "%d пакета"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Сажетак"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Подеси"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "није подешено"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Одабир група пакета"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -978,84 +1110,84 @@ msgstr ""
"Пронађени су следећи инсталациони медији.\n"
"Уколико желите да прескочите неке од њих, деселектујте их сада."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Имате могућност да копирате садржај CD-ова на хард диск пре инсталације.\n"
"Након тога ће инсталција наставити са хард диска а пакети ће остати доступни "
"и када се заврши инсталација."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Копирање целог CDа"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Хм,појавила се грешка"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Изаберите распоред тастатуре"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Овде је представљена цела листа доступних распореда за тастатуре"
+msgstr "Овде је комплетна листа доступних тастатура:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Инсталација/Ажурирање"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Да ли је ово инсталација или ажурирање?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Инсталирај"
+msgstr "Инсталација"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Ажурирање %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Кључ за енкрипцију за %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Прекини инсталацију, рестартуј систем"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Инсталација"
+msgstr "Нова инсталација"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Ажурирање претходне инсталације (није препоручљиво)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1063,38 +1195,26 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
+"Програм за инсталацију је открио да ваш инсталирани Линукс систем не може "
+"безбедно \n"
+"да се надогради на %s.\n"
+"\n"
+"Нова инсталација која ће заменити постојећу се препоручује.\n"
+"\n"
+"Упозорење : требало би да направите резервну копију својих личних података "
+"пре него што изаберете \"Нова инсталација\"."
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Конфигурација IDE"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Нема слободног простора за 1MB bootstrap! Инсталација ђе се наставити, али "
-"да би подигли вашсистем, морађете да креирате bootstrap партицију у "
-"DiskDrake-у"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Морате креирати PPC PReP bootstrap! Инсталација ђе се наставити, али да би "
-"подигли ваш систем, морађете да креирате bootstrap партицију у DiskDrake-у"
+msgid "Configuring CD/DVD"
+msgstr "Подешавање CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1108,21 +1228,21 @@ msgstr ""
"спремни.\n"
"Уколико га немате притисните Поништи."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Тражим пакете"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Ваш систем нема довољно слободног простора за инсталацију или ажурирање "
"система (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1131,52 +1251,52 @@ msgstr ""
"Молим Вас да изаберете учитавање или снимање селекције пакета.\n"
"Формат који се користи је исти као и код auto_install генерисаних фајлова."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Учитај"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Сачувај"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Лош фајл"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr "Плазма"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Одабир група пакета"
+msgstr "Избор Десктопа"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr ""
+msgstr "Можете изабрати ваш десктоп профил."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Селектована величина је веђа од слободног простора"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Тип инсталације"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1185,87 +1305,129 @@ msgstr ""
"Нисте селектовали ниједну групу пакета.\n"
"Изаберите минималну инсталацију коју желите:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Са X-овима"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Инсталирам пакет %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Инсталирај препоручене пакете"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Са основном документацијом (препорука!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Стварно минимална инсталација (посебно без urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Припремам надоградњу..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Припремам инсталацију"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Инсталирам пакет %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Грешка у листи пакета:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Свеједно наставити даље ?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr ""
+msgstr "Покушај поново"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr ""
+msgstr "Прескочи овај пакет"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr ""
+msgstr "Прескочи све пакете са медија \"%s\""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Сачувај селекцију пакета"
+msgstr "Иди назад на медиј и избор пакета"
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Грешка при инсталацији пакета:"
+msgstr "Појавила се грешка при инсталацији пакета%s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Постинсталациона конфигурација"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Проверите да ли се у уређају %s налази медиј за ажурирање модула"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Ажурирање"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Сада имате могућност да подесите online медиј."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Ово омогућава инсталацију сигурносних ажурирања."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Да би подесили те медије, биће вам потребна Интернет \n"
+"конекција.\n"
+"Да ли желите да подесите online медиј?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Следећи пакети треба да буду инсталирани"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Покушај поново?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Грешка при убацивању медија"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1285,111 +1447,80 @@ msgstr ""
"\n"
"да ли желите да инсталирате update-ове ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s на %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Хардвер"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Звучна картица"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Да ли имате ISA звучну картицу?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Покрените \"alsaconf\" или \"sndconfig\" након иснталације да би подесили "
-"своју звучну картицу"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Није детектована звучна картица. Покрените \"harddrake\" након инсталације"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Графички интерфејс"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Мрежа и Интернет"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Проксији"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "подешено"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Ниво сигурности"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Заштитни зид (Firewall)"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "Активирано"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "онемогућено"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Нисте подесили X. Да ли сте сигурни да желите то?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Припремам стартер..."
+msgid "Preparing initial startup program..."
+msgstr "Припрема иницијалног програма за покретање..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Пошто изгледа да имате старомодну или непознату машину, yaboot стартер неђе "
-"радити код вас.Инсталација ће бити настављена, али ћете морати да користите "
-"BootX или нешто друго да би подигли систем. Аргумент кернела заroot fs je: "
-"root=%s"
+msgstr "Будите стрпљиви, ово може потрајати..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1398,17 +1529,17 @@ msgstr ""
"У овом сугурносном нивоу приступ фајловима на Windows партицији је дозвољен "
"само администраторима."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Убаците празну дискету у уређај %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Креирам ауто инсталациони флопи"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1419,12 +1550,12 @@ msgstr ""
"\n"
"Да ли стварно желите да завршите ?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Честитке"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Рестарт"
@@ -1435,12 +1566,12 @@ msgstr "Рестарт"
msgid ""
"_: Keep these entry short\n"
"Language"
-msgstr "Изаберите језик"
+msgstr "Језик"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Локализација"
#: steps_list.pm:17
#, c-format
@@ -1454,7 +1585,7 @@ msgstr "Лиценца"
msgid ""
"_: Keep these entry short\n"
"Mouse"
-msgstr ""
+msgstr "Миш"
#: steps_list.pm:19 steps_list.pm:20
#, c-format
@@ -1475,21 +1606,21 @@ msgstr "Инсталациона класа"
msgid ""
"_: Keep these entry short\n"
"Keyboard"
-msgstr ""
+msgstr "Тастатура"
#: steps_list.pm:24
#, c-format
msgid ""
"_: Keep these entry short\n"
"Security"
-msgstr ""
+msgstr "Сигурност"
#: steps_list.pm:25
#, c-format
msgid ""
"_: Keep these entry short\n"
"Partitioning"
-msgstr ""
+msgstr "Партиционисање"
#: steps_list.pm:27 steps_list.pm:28
#, c-format
@@ -1519,19 +1650,12 @@ msgid ""
"Users"
msgstr "Корисници"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Мрежа"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
"_: Keep these entry short\n"
"Bootloader"
-msgstr ""
+msgstr "Стартер"
#: steps_list.pm:40 steps_list.pm:41
#, c-format
@@ -1552,7 +1676,7 @@ msgstr "Сажетак"
msgid ""
"_: Keep these entry short\n"
"Services"
-msgstr ""
+msgstr "Сервиси"
#: steps_list.pm:46
#, c-format
@@ -1566,185 +1690,25 @@ msgstr "Ажурирање"
msgid ""
"_: Keep these entry short\n"
"Exit"
-msgstr ""
+msgstr "Излаз"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Преузимам фајл %s ..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Ви сте изабрали следеђе сервере: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Ови сервери се активирају по основној поставци. Они немају познатих "
-#~ "сигурносних\n"
-#~ "недостатака, али се ипак могу појавити неки нови. Уколико се то деси, "
-#~ "морате их ажурирати\n"
-#~ "што је пре могуђе.\n"
-#~ "\n"
-#~ "\n"
-#~ "Да ли заиста желите да инсталирате ове сервисе?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm Десктоп"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Кантактирајте mirror за листу могућих пакета"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Не могу да контактирам мирор %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Креирај ауто инсталациону дискету"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Ауто инсталација може бити потпуно аутоматизована уколико желите,\n"
-#~ "у том случају преузеће контролу над хард-диском!!\n"
-#~ "(ово се односи на инсталацију на другој машини).\n"
-#~ "\n"
-#~ "Можда волите да поновите инсталацију.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Понављање"
-
-#~ msgid "Automated"
-#~ msgstr "Аутоматски"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "УРЛ мирора?"
-#~ msgid "Save packages selection"
-#~ msgstr "Сачувај селекцију пакета"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "УРЛ мора почињати са ftp:// или http://"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Да ли желите да користите aboot ?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Контактирајте %s web сајт да би добили листу доступних mirror-а..."
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Грешка при инсталацији aboot-а, \n"
-#~ "Да ли да пробам да инсталирам чак ако то води уништењу прве партиције?"
-
-#~ msgid "All"
-#~ msgstr "Све"
-
-#~ msgid "TV card"
-#~ msgstr "TV катица"
-
-#~ msgid "Boot"
-#~ msgstr "Стартање"
-
-#~ msgid "Arkeia"
-#~ msgstr "Arkeia"
-
-#~ msgid "Flatout"
-#~ msgstr "Flatout"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "3D"
-
-#~ msgid "CMS"
-#~ msgstr "CMS"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "2007 product line"
-#~ msgstr "линија производа 2007"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "Заштитни зид Invictus"
-
-#~ msgid "Discovery Live Mode"
-#~ msgstr "Discovery Livе"
-
-#~ msgid "How to register"
-#~ msgstr "Како се регистровати"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "Rpmdrake 2"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "Mandriva Online сервиси"
-
-#~ msgid "New Theme"
-#~ msgstr "Нова тема"
+#~ "Неуспешно успостављање везе са %s web сајт ради листе доступних mirror-а"
-#~ msgid "Web 2.0"
-#~ msgstr "Веб 2.0"
-
-#~ msgid "Kaspersky"
-#~ msgstr "Касперски"
-
-#~ msgid "LinDVD"
-#~ msgstr "LinDVD"
-
-#~ msgid "Skype"
-#~ msgstr "Skype"
-
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Transgaming/Cedega"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d пакета"
-#~ msgstr[1] "%d пакета"
-#~ msgstr[2] "%d пакета"
-
-#~ msgid "%d packages"
-#~ msgstr "%d пакета"
-
-#~ msgid "Language"
-#~ msgstr "Изаберите језик"
-
-#~ msgid "License"
-#~ msgstr "Лиценца"
-
-#~ msgid "Installation class"
-#~ msgstr "Инсталациона класа"
-
-#~ msgid "Formatting"
-#~ msgstr "Форматирање"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Избор пакета"
-
-#~ msgid "Users"
-#~ msgstr "Корисници"
-
-#~ msgid "Networking"
-#~ msgstr "Мрежа"
-
-#~ msgid "Configure X"
-#~ msgstr "Конфигурисање X-а"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Не могу да приступим кернел модулима који одговарају вашем кернелу (фајл %"
-#~ "s нмедостаје), што генерално значи да ваш boot floppy није синхронизаован "
-#~ "са Инсталационим медијом (креирајте новији boot floppy)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Изаберите mirror са ког ћете скинути пакете"
diff --git a/perl-install/install/share/po/sr@Latn.po b/perl-install/install/share/po/sr@Latn.po
index 66aa046e0..08b2f9242 100644
--- a/perl-install/install/share/po/sr@Latn.po
+++ b/perl-install/install/share/po/sr@Latn.po
@@ -7,49 +7,75 @@ msgid ""
msgstr ""
"Project-Id-Version: DrakX\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
"PO-Revision-Date: 2004-09-15 13:33+0200\n"
"Last-Translator: Toma Jankovic_<tomaja@net.yu>\n"
"Language-Team: Serbian <i18n@mandrake.co.yu>\n"
+"Language: sr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 0.9.6\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
+#, fuzzy, c-format
+msgid "Office tools"
+msgstr "Radna(Office) stanica"
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "For kids"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "For family!"
msgstr ""
-#: any.pm:109
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Da li imate još dodatnih medija?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -62,94 +88,57 @@ msgstr ""
"\n"
"Da li imate dodatnih instalacionih medija koje treba podesiti?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Mreža (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Mreža (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Mreža (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "URL mirora?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL mora počinjati sa ftp:// ili http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Kontaktirajte Mandriva Linux web sajt da bi dobili listu dostupnih mirror-"
-"a..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Neuspešno uspostavljanje veze sa Mandriva Linux web sajt radi liste "
-"dostupnih mirror-a"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Izaberite mirror sa kog ćete skinuti pakete"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Podešavanje NFS-a"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Unesite ime domaćina-hostname i direktorijum vašeg NFS medija"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Nedostaje ime domaćina-hostname"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Direktorijum mora početi sa \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Ime domaćina-hostname za montiranje NFS ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Direktorijum"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Dodatni"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -158,23 +147,90 @@ msgstr ""
"Ne mogu pronađem listu paketa na ovom miroru. proverite da li lokacija "
"ispravna."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Tražim već instalirane pakete..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Tražim pakete za ažuriranje..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Uklanjam stare pakete..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -187,87 +243,87 @@ msgstr ""
"\n"
"Da li zaista želite da uklonite ove pakete?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Greška kod otvaranja datoteka %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Sledeći disk(ovi) će biti preimenovani:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (ranije sa imenom %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Mreža"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Izaberite medij"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Datoteka već postoji. Da li prepišem preko postojeće?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Pristup odbijen"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Pogrešno NFS ime"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Loš medij %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Ne mogu da napravim snimak pre particioniranja"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Snimci će biti dostupni nakon instalacije u %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Instalacija"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfiguracija"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Morate i %s da formatirate"
@@ -292,22 +348,22 @@ msgstr "Pristupam mrežu"
msgid "Bringing down the network"
msgstr "Odstupam od mreže"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopiranje nekih poaketa na diskove radi kasnije upotrebe"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopiranje u toku"
@@ -337,82 +393,98 @@ msgstr "lepo"
msgid "maybe"
msgstr "možda"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Bez opisa"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, fuzzy, c-format
msgid "An error occurred:"
msgstr "Hm,pojavila se greška"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Pojavila se fatalna greška: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d instlaciona transakcija nije uspela"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, fuzzy, c-format
msgid "Installation of packages failed:"
msgstr "Instaliram paket %s"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Radna stanica"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Radna(Office) stanica"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Office programi: tekst procesori (OpenOffice.org Writer, Kword), tabele "
-"(OpenOffice.org Calc, Kspread), pdf preglednici, itd"
+"Office programi: tekst procesori (LibreOffice Writer, Kword), tabele "
+"(LibreOffice Calc, Kspread), pdf preglednici, itd"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Office programi: tekst procesori (kword, abiword), tabele (kspread, "
-"gnumeric), pdf preglednici, itd"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Stanica za igru"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Zabavni programi: arkade, ige na tabli, strategije, itd"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedijalna stanica"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programi za puštanje zvuka i videa"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet stanica"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -421,193 +493,193 @@ msgstr ""
"Skup alata za čitanje i slanje el.pošte i vesti (mutt, tin..) i za "
"pretraživanje Interneta"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Mrežni kompjuter (klijent)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Klijenti za različite protokole uključujući i ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Alati za lako konfigurisanje kompjutera"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konzolni alati"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "editori,šelovi, alati za datoteke, terminali"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Razvojna"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C i C++ razvojne biblioteke, programi i propratne datoteke"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentacija"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Knjige i Kako? (Howto's) za Linux i Besplatni Softver"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux-ova Standardna Baza. Podrška za Third party aplikaicje"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Veb Server"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Softver za grupni rad"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Server, Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet gateway"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "El.pošta/vesti"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix server za el.poštu,Inn server za vesti "
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Server direktorijuma"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP Server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Ime Domena i Mrežni Informacioni Server"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Fajl Server i server za deljenje štampača"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS Server, Samba Server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Server,Baze podataka"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL ili MySQL server za bazu podataka"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL ili MariaDB server za bazu podataka"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Server, Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Pošta"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix mail server"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL ili MySQL server za bazu podataka"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL ili MariaDB server za bazu podataka"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Mrežni Server"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS server, SMB server, Proxy server, SSH server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafičko Okruženje"
-#: share/meta-task/compssUsers.pl:135
-#, c-format
-msgid "KDE Workstation"
-msgstr "KDE padna stanica"
+#: share/meta-task/compssUsers.pl:152
+#, fuzzy, c-format
+msgid "Plasma Workstation"
+msgstr "Radna stanica"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -615,12 +687,12 @@ msgid ""
msgstr ""
"K Desktop okruženje, osnovno grafičko okruženje sa kolekcijom pratećih alata"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Gnome radna stanica"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -629,66 +701,117 @@ msgstr ""
"Grafička okruženja za setom korisničk NFS server, SMB server, Proxy server, "
"NFS server, SMB server, Proxy serverih aplikacija i desktopalata"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
+#, fuzzy, c-format
+msgid "Xfce Workstation"
+msgstr "KDE padna stanica"
+
+#: share/meta-task/compssUsers.pl:165
+#, fuzzy, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+"Grafička okruženja za setom korisničk NFS server, SMB server, Proxy server, "
+"NFS server, SMB server, Proxy serverih aplikacija i desktopalata"
+
+#: share/meta-task/compssUsers.pl:169
+#, fuzzy, c-format
+msgid "MATE Workstation"
+msgstr "Gnome radna stanica"
+
+#: share/meta-task/compssUsers.pl:174
+#, fuzzy, c-format
+msgid "Cinnamon Workstation"
+msgstr "Radna stanica"
+
+#: share/meta-task/compssUsers.pl:175
+#, fuzzy, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Grafičko Okruženje"
+
+#: share/meta-task/compssUsers.pl:179
+#, fuzzy, c-format
+msgid "LXQt Desktop"
+msgstr "IceWm Desktop"
+
+#: share/meta-task/compssUsers.pl:181
+#, fuzzy, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+"Grafička okruženja za setom korisničk NFS server, SMB server, Proxy server, "
+"NFS server, SMB server, Proxy serverih aplikacija i desktopalata"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, fuzzy, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+"Grafička okruženja za setom korisničk NFS server, SMB server, Proxy server, "
+"NFS server, SMB server, Proxy serverih aplikacija i desktopalata"
+
+#: share/meta-task/compssUsers.pl:189
#, fuzzy, c-format
msgid "LXDE Desktop"
msgstr "IceWm Desktop"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:191
#, fuzzy, c-format
-msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+msgid "A lightweight fast graphical environment"
msgstr ""
"Grafička okruženja za setom korisničk NFS server, SMB server, Proxy server, "
"NFS server, SMB server, Proxy serverih aplikacija i desktopalata"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Drugi grafički desktopovi"
-#: share/meta-task/compssUsers.pl:151
-#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+#: share/meta-task/compssUsers.pl:195
+#, fuzzy, c-format
+msgid "Window Maker, Fvwm, etc"
msgstr " Window Maker, Enlightenment, Fvwm, itd"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Alati"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH Server"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin server za daljinsku kontrolu"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Mrežni alati/Monitoring"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Alati za monitoring, upravljanje procesima, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Čarobnjaci"
+msgid "Mageia Wizards"
+msgstr "Mageia Čarobnjaci"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Čarobnjaci za podešavanje servera"
@@ -702,7 +825,7 @@ msgstr ""
"Greška, ali neznam kako da je razrešim.\n"
"Nastavite na vaš rizik!"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -722,226 +845,235 @@ msgstr "Pokrećem korak `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux Instalacija %s"
+msgid "%s Installation %s"
+msgstr "%s Instalacija %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> između elemenata"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Vaš sistem ima manjak snage. Usled toga možete imati problema pri "
"instalaciji\n"
-"Mandriva Linux. Ukoliko se oni pojave, možete probati tekstualnu "
-"instalaciju. Da bi to postigli,\n"
+"%s. Ukoliko se oni pojave, možete probati tekstualnu instalaciju. Da bi to "
+"postigli,\n"
"pritisnite `F1' pri startanju sa CDROM-a, a onda ukucajte `text'."
-#: steps_gtk.pm:238
-#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr ""
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, fuzzy, c-format
+msgid "Media Selection"
+msgstr "Odabir grupa paketa"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
+#, fuzzy, c-format
+msgid "Install %s Plasma Desktop"
+msgstr "IceWm Desktop"
+
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, fuzzy, c-format
msgid "Custom install"
msgstr "Minimalno instaliraj"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, fuzzy, c-format
-msgid "KDE Desktop"
+msgid "Plasma Desktop"
msgstr "IceWm Desktop"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, fuzzy, c-format
msgid "GNOME Desktop"
msgstr "IceWm Desktop"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, fuzzy, c-format
msgid "Custom Desktop"
msgstr "IceWm Desktop"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Odabir grupa paketa"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Pojedinačno biranje paketa"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Ukupna veličina: %d / %d MB"
+msgid "Unselect All"
+msgstr "Deselektuj Sve"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Loš paket"
+msgid "Total size: %d / %d MB"
+msgstr "Ukupna veličina: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Verzija: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Veličina: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Važnost: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Ne možete selektovati/deselektovati ovaj paket"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "zbog ne postojanja %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "zbog ne zadovoljenog %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "pokušavam da prikažem %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "da bih zadržao %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Ne možete selektovati ovaj paket jer nema više slobodnog prostora"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Sledeći paketi treba da budu instalirani"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Sledeći paketi će biti izbrisani"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ovo je obavezni paket,i ne može biti deselektovan"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Možete deselektovati ovaj paket jer je već instaliran"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Ne možete deselektovati ovaj paket.On mora biti ažuriran"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Automatski prikaži izabrane pakete"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Instaliraj"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Učitaj/Sačuvaj izbor"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Ažuriranje selekcije paketa"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimalno instaliraj"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Podešavanje Softvera"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Izaberi pakete za instalaciju"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Instaliram"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Bez detalja"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, fuzzy, c-format
msgid "Time remaining:"
msgstr "Preostalo vreme"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, fuzzy, c-format
msgid "(estimating...)"
msgstr "Procenjujem"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, fuzzy, c-format
msgid "%d package"
msgid_plural "%d packages"
@@ -949,27 +1081,22 @@ msgstr[0] "%d paketa"
msgstr[1] "%d paketa"
msgstr[2] "%d paketa"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Sažetak"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Podesi"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "nije podešeno"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Odabir grupa paketa"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -978,84 +1105,84 @@ msgstr ""
"Pronađeni su sledeći instalacioni mediji.\n"
"Ukoliko želite da preskočite neke od njih, deselektujte ih sada."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Imate mogućnost da kopirate sadržaj CD-ova na hard disk pre instalacije.\n"
"Nakon toga će instalcija nastaviti sa hard diska a paketi će ostati dostupni "
"i kada se završi instalacija."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Kopiranje celog CDa"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Hm,pojavila se greška"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Izaberite raspored tastature"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, fuzzy, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Ovde je predstavljena cela lista dostupnih rasporeda za tastature"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Instalacija/Ažuriranje"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Da li je ovo instalacija ili ažuriranje?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, fuzzy, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Instaliraj"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Ažuriranje %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Ključ za enkripciju za %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, fuzzy, c-format
msgid "New Installation"
msgstr "Instalacija"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1064,37 +1191,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Konfiguracija IDE"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Nema slobodnog prostora za 1MB bootstrap! Instalacija đe se nastaviti, ali "
-"da bi podigli vašsistem, morađete da kreirate bootstrap particiju u "
-"DiskDrake-u"
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Morate kreirati PPC PReP bootstrap! Instalacija đe se nastaviti, ali da bi "
-"podigli vaš sistem, morađete da kreirate bootstrap particiju u DiskDrake-u"
+#: steps_interactive.pm:264
+#, fuzzy, c-format
+msgid "Configuring CD/DVD"
+msgstr "Konfiguracija IDE"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1108,21 +1215,21 @@ msgstr ""
"spremni.\n"
"Ukoliko ga nemate pritisnite Poništi."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Tražim pakete"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Vaš sistem nema dovoljno slobodnog prostora za instalaciju ili ažuriranje "
"sistema (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1131,52 +1238,52 @@ msgstr ""
"Molim Vas da izaberete učitavanje ili snimanje selekcije paketa.\n"
"Format koji se koristi je isti kao i kod auto_install generisanih fajlova."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Učitaj"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Sačuvaj"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Loš fajl"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+msgid "Plasma"
+msgstr "IceWm Desktop"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, fuzzy, c-format
msgid "Desktop Selection"
msgstr "Odabir grupa paketa"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Selektovana veličina je veđa od slobodnog prostora"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Tip instalacije"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1185,87 +1292,126 @@ msgstr ""
"Niste selektovali nijednu grupu paketa.\n"
"Izaberite minimalnu instalaciju koju želite:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Sa X-ovima"
-#: steps_interactive.pm:581
+#: steps_interactive.pm:583
#, fuzzy, c-format
-msgid "Install suggested packages"
+msgid "Install recommended packages"
msgstr "Instaliram paket %s"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Sa osnovnom dokumentacijom (preporuka!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Stvarno minimalna instalacija (posebno bez urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, fuzzy, c-format
+msgid "Preparing upgrade..."
+msgstr "Pripremam starter..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Pripremam instalaciju"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Instaliram paket %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Greška u listi paketa:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Svejedno nastaviti dalje ?"
-#: steps_interactive.pm:674
-#, c-format
+#: steps_interactive.pm:683
+#, fuzzy, c-format
msgid "Retry"
-msgstr ""
+msgstr "Obnovi"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, fuzzy, c-format
msgid "Go back to media and packages selection"
msgstr "Sačuvaj selekciju paketa"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, fuzzy, c-format
msgid "There was an error installing package %s."
msgstr "Greška pri instalaciji paketa:"
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Postinstalaciona konfiguracija"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Proverite da li se u uređaju %s nalazi medij za ažuriranje modula"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Ažuriranje"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Sledeći paketi treba da budu instalirani"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, fuzzy, c-format
+msgid "Retry?"
+msgstr "Obnovi"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1285,111 +1431,80 @@ msgstr ""
"\n"
"da li želite da instalirate update-ove ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s na %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardver"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Zvučna kartica"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Da li imate ISA zvučnu karticu?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Pokrenite \"alsaconf\" ili \"sndconfig\" nakon isntalacije da bi podesili "
-"svoju zvučnu karticu"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Nije detektovana zvučna kartica. Pokrenite \"harddrake\" nakon instalacije"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafički interfejs"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Mreža i Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proksiji"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "podešeno"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Nivo sigurnosti"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Zaštitni zid (Firewall)"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "Aktivirano"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "onemogućeno"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Niste podesili X. Da li ste sigurni da želite to?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "Pripremam starter..."
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, fuzzy, c-format
+msgid "Preparing initial startup program..."
+msgstr "Pripremam instalaciju"
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Pošto izgleda da imate staromodnu ili nepoznatu mašinu, yaboot starter neđe "
-"raditi kod vas.Instalacija će biti nastavljena, ali ćete morati da koristite "
-"BootX ili nešto drugo da bi podigli sistem. Argument kernela zaroot fs je: "
-"root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1398,17 +1513,17 @@ msgstr ""
"U ovom sugurnosnom nivou pristup fajlovima na Windows particiji je dozvoljen "
"samo administratorima."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Ubacite praznu disketu u uređaj %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Kreiram auto instalacioni flopi"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1419,12 +1534,12 @@ msgstr ""
"\n"
"Da li stvarno želite da završite ?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Čestitke"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Restart"
@@ -1519,13 +1634,6 @@ msgid ""
"Users"
msgstr "Korisnici"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Mreža"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1568,6 +1676,137 @@ msgid ""
"Exit"
msgstr "Izlaz"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL mirora?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL mora počinjati sa ftp:// ili http://"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Kontaktirajte %s web sajt da bi dobili listu dostupnih mirror-a..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr ""
+#~ "Neuspešno uspostavljanje veze sa %s web sajt radi liste dostupnih mirror-a"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Izaberite mirror sa kog ćete skinuti pakete"
+
+#~ msgid "KDE Workstation"
+#~ msgstr "KDE padna stanica"
+
+#, fuzzy
+#~ msgid "XFCE Workstation"
+#~ msgstr "KDE padna stanica"
+
+#, fuzzy
+#~ msgid "RazorQT Desktop"
+#~ msgstr "IceWm Desktop"
+
+#~ msgid "Do you have an ISA sound card?"
+#~ msgstr "Da li imate ISA zvučnu karticu?"
+
+#~ msgid ""
+#~ "Run \"alsaconf\" or \"sndconfig\" after installation to configure your "
+#~ "sound card"
+#~ msgstr ""
+#~ "Pokrenite \"alsaconf\" ili \"sndconfig\" nakon isntalacije da bi podesili "
+#~ "svoju zvučnu karticu"
+
+#~ msgid "No sound card detected. Try \"harddrake\" after installation"
+#~ msgstr ""
+#~ "Nije detektovana zvučna kartica. Pokrenite \"harddrake\" nakon instalacije"
+
+#, fuzzy
+#~ msgid "KDE Desktop"
+#~ msgstr "IceWm Desktop"
+
+#~ msgid "KDE"
+#~ msgstr "KDE"
+
+#~ msgid "CD-ROM"
+#~ msgstr "CD-ROM"
+
+#, fuzzy
+#~ msgid ""
+#~ "The Plasma Desktop, the basic graphical environment with a collection of "
+#~ "accompanying tools"
+#~ msgstr ""
+#~ "K Desktop okruženje, osnovno grafičko okruženje sa kolekcijom pratećih "
+#~ "alata"
+
+#~ msgid "IDE"
+#~ msgstr "IDE"
+
+#~ msgid "Preparing bootloader..."
+#~ msgstr "Pripremam starter..."
+
+#, fuzzy
+#~ msgid ""
+#~ "A lightweight & fast graphical environment with user-friendly set of "
+#~ "applications and desktop tools"
+#~ msgstr ""
+#~ "Grafička okruženja za setom korisničk NFS server, SMB server, Proxy "
+#~ "server, NFS server, SMB server, Proxy serverih aplikacija i desktopalata"
+
+#~ msgid ""
+#~ "No free space for 1MB bootstrap! Install will continue, but to boot your "
+#~ "system, you'll need to create the bootstrap partition in DiskDrake"
+#~ msgstr ""
+#~ "Nema slobodnog prostora za 1MB bootstrap! Instalacija đe se nastaviti, "
+#~ "ali da bi podigli vašsistem, morađete da kreirate bootstrap particiju u "
+#~ "DiskDrake-u"
+
+#~ msgid ""
+#~ "You'll need to create a PPC PReP Boot bootstrap! Install will continue, "
+#~ "but to boot your system, you'll need to create the bootstrap partition in "
+#~ "DiskDrake"
+#~ msgstr ""
+#~ "Morate kreirati PPC PReP bootstrap! Instalacija đe se nastaviti, ali da "
+#~ "bi podigli vaš sistem, morađete da kreirate bootstrap particiju u "
+#~ "DiskDrake-u"
+
+#~ msgid ""
+#~ "You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
+#~ "will not work for you. The install will continue, but you'll need to use "
+#~ "BootX or some other means to boot your machine. The kernel argument for "
+#~ "the root fs is: root=%s"
+#~ msgstr ""
+#~ "Pošto izgleda da imate staromodnu ili nepoznatu mašinu, yaboot starter "
+#~ "neđe raditi kod vas.Instalacija će biti nastavljena, ali ćete morati da "
+#~ "koristite BootX ili nešto drugo da bi podigli sistem. Argument kernela "
+#~ "zaroot fs je: root=%s"
+
+#~ msgid "Welcome"
+#~ msgstr "Dobrodošli"
+
+#~ msgid "Select All"
+#~ msgstr "Selektuj Sve"
+
+#~ msgid "Bad package"
+#~ msgstr "Loš paket"
+
+#, fuzzy
+#~ msgid "Preparing boot images..."
+#~ msgstr "Pripremam starter..."
+
+#~ msgid ""
+#~ "_: Keep these entry short\n"
+#~ "Networking"
+#~ msgstr "Mreža"
+
+#~ msgid ""
+#~ "Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
+#~ "gnumeric), pdf viewers, etc"
+#~ msgstr ""
+#~ "Office programi: tekst procesori (kword, abiword), tabele (kspread, "
+#~ "gnumeric), pdf preglednici, itd"
+
#~ msgid "Downloading file %s..."
#~ msgstr "Preuzimam fajl %s ..."
@@ -1610,7 +1849,7 @@ msgstr "Izlaz"
#~ msgid ""
#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
+#~ "in that case it will take over the hard disk drive!!\n"
#~ "(this is meant for installing on another box).\n"
#~ "\n"
#~ "You may prefer to replay the installation.\n"
@@ -1746,10 +1985,10 @@ msgstr "Izlaz"
#~ msgstr "Konfigurisanje X-a"
#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
+#~ "Cannot access kernel modules corresponding to your kernel (file %s is "
#~ "missing), this generally means your boot floppy in not in sync with the "
#~ "Installation medium (please create a newer boot floppy)"
#~ msgstr ""
-#~ "Ne mogu da pristupim kernel modulima koji odgovaraju vašem kernelu (fajl %"
-#~ "s nmedostaje), što generalno znači da vaš boot floppy nije sinhronizaovan "
-#~ "sa Instalacionim medijom (kreirajte noviji boot floppy)"
+#~ "Ne mogu da pristupim kernel modulima koji odgovaraju vašem kernelu (fajl "
+#~ "%s nmedostaje), što generalno znači da vaš boot floppy nije "
+#~ "sinhronizaovan sa Instalacionim medijom (kreirajte noviji boot floppy)"
diff --git a/perl-install/install/share/po/sv.po b/perl-install/install/share/po/sv.po
index cbeddb47b..fb309d782 100644
--- a/perl-install/install/share/po/sv.po
+++ b/perl-install/install/share/po/sv.po
@@ -1,62 +1,93 @@
-# DrakX-sv - Swedish Translation
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Copyright (C) 2000,2002,2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva
-#
-# Kenneth Krekula, 2005.
-# Fuad Sabanovic <manijak@telia.com>, 2000.
-# Mattias Dahlberg <voz@home.se>, 2001, 2002.
-# Mattias Newzella <newzella@linux.nu>, 2001, 2002,2003.
-# Magnus Björklöf <bjorklof@nic.fi>, 2003.
-# Lars Westergren <lars.westergren@home.se>, 2003, 2004, 2005.
-# Thomas Backlund <tmb@mandriva.org>, 2004, 2005, 2006, 2008.
-# Kenneth Krekula <kenneth.krekula@kiruna.se>, 2007.
+# Translators:
+# Fuad Sabanovic <manijak@telia.com>, 2000
+# Kenneth Krekula, 2005
+# Kenneth Krekula <kenneth.krekula@kiruna.se>, 2007
+# Kristoffer Grundström <lovaren@gmail.com>, 2013
+# Kristoffer Grundström <lovaren@gmail.com>, 2013-2016
+# Kristoffer Grundström <lovaren@gmail.com>, 2021-2022
+# Lars Westergren <lars.westergren@home.se>, 2003-2005
+# Magnus Björklöf <bjorklof@nic.fi>, 2003
+# Mattias Dahlberg <voz@home.se>, 2001-2002
+# Mattias Newzella <newzella@linux.nu>, 2001-2003
+# Michael Eklund <willard@null.net>, 2014-2016,2019,2023
+# Thomas Backlund <tmb@mageia.org>, 2011
+# Thomas Backlund <tmb@mandriva.org>, 2004-2006,2008-2009
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-sv\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2008-10-02 21:16+0300\n"
-"Last-Translator: Thomas Backlund <tmb@mandriva.org>\n"
-"Language-Team: Swedish <sv@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Michael Eklund <willard@null.net>, 2014-2016,2019,2023\n"
+"Language-Team: Swedish (http://app.transifex.com/MageiaLinux/mageia/language/"
+"sv/)\n"
+"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr "Anslut dig till oss!"
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr "Gör det ditt!"
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr "Ditt val!"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "Ditt skrivbord på ett USB-minne"
+msgid "Office tools"
+msgstr "Kontorsverktyg"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "Den 100%% öppen källkod baserade Mandriva Linux distributionen"
+msgid "Home entertainment"
+msgstr "Hemunderhållning"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "Utforska Linux enkelt med Mandriva One"
+msgid "For kids"
+msgstr "För barn"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "En komplett Mandriva Linux skrivbordsmiljö, med support"
+msgid "For family!"
+msgstr "För familj!"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva: distributioner för allas behov"
+msgid "For developers!"
+msgstr "För utvecklare!"
-#: any.pm:109
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Tack så mycket!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Var fri!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Har du fler tilläggs-installationskällor?"
+msgstr "Har du fler installationskällor att lägga till?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -64,123 +95,160 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"Följande medier har blivit hittade och kommer att användas under "
-"installationen: %s.\n"
+"Följande media har hittats och kommer att användas under installationen: "
+"%s.\n"
"\n"
"\n"
"Har du några tilläggs-medier du vill konfigurera?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "Cd-rom"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Nätverk (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Nätverk (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Nätverk (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Spegelns URL?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL måste starta med ftp:// eller http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Kontaktar Mandriva Linux webbplats för att hämta listan över tillgängliga "
-"speglar..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Misslyckades kontakta Mandriva Linux webbplats för att hämta listan över "
-"tillgängliga speglar"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Välj en webbplats från vilken du vill hämta paketen"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
-msgstr "NFS konfigurering"
+msgstr "Konfigurera NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr "Ange namn och katalog för ditt NFS medium"
+msgstr "Ange namn och katalog för ditt NFS-media"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Värdnamn saknas"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Katalogen måste börja med \"/\""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
-msgstr "Maskinnamn för NFS anslutning ?"
+msgstr "Värdnamn för NFS-anslutning ?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Katalog"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Tillägg"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
-msgstr "Kan inte hitta hdlist filen på denna spegel"
+msgstr "Kan inte hitta hdlist-filen på denna spegel"
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"En del hårdvaror i din maskin behöver några icke-fria inre mjukvaror för att "
+"de fria drivrutinerna ska kunna fungera."
-#: any.pm:334
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Du borde aktivera \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" innehåller olika delar för systemet och dess program"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" innehåller nonfree-mjukvara.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Det innehåller också programvaror som behövs för att särskilda enheter ska "
+"fungera (t.ex. några grafikkort från ATI/AMD, nätverkskort och RAID-"
+"kort, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" innehåller mjukvara som inte kan distribueras i alla länder på grund "
+"av mjukvarupatent."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "Det innehåller även mjukvara från \"%s\" med extra möjligheter."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Här kan du aktivera fler medier om du vill."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Det här mediet erbjuder paket-uppdateringar för mediet \"%s\""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Söker efter paket som redan är installerade..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Söker efter paket att uppdatera..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Tar bort paket före uppgradering..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -193,87 +261,87 @@ msgstr ""
"\n"
"Vill du verkligen ta bort dessa paket?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
-msgstr "Fel vid läsning av fil %s"
+msgstr "Fel uppstod när filen %s skulle läsas"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "Följande disk(ar) har döpts om:"
+msgstr "Följande disk(ar) döptes om:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
-msgstr "%s (gamla namnet %s)"
+msgstr "%s (hette tidigare %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Nätverk"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Välj media"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Filen finns redan. Skriv över?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Åtkomst nekad"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr "Felaktigt NFS namn"
+msgstr "Felaktigt NFS-namn"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Oanvändbart media %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Kan inte ta skärmdumpar före partitionering"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Skärmdumpar kommer att finnas tillgängliga efter installationen i %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Installation"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Konfiguration"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Du måste också formatera %s"
@@ -284,8 +352,8 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"En del hårdvara i datorn behöver slutna drivrutiner för att\n"
-"fungera. Du kan hitta en del information om dem här: %s"
+"En del hårdvara i datorn behöver patenterade drivrutiner för att\n"
+"fungera. Du hittar en del information om dem här: %s"
#: interactive.pm:22
#, c-format
@@ -297,22 +365,22 @@ msgstr "Startar nätverket"
msgid "Bringing down the network"
msgstr "Stoppar nätverket"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr "Var god vänta, hämtar filen"
+msgstr "Vänligen vänta, hämtar filen"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "kan inte lägga till media"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Kopierar några paket till hårddisken för senare användning"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopiering pågår"
@@ -342,7 +410,23 @@ msgstr "trevligt"
msgid "maybe"
msgstr "tveksamt"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Hämtar paket-information från XML meta-data..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Ingen xml-info för media \"%s\", endast partiellt resultat för paket %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Ingen beskrivning"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -351,75 +435,76 @@ msgstr ""
"Vissa paket som krävs av %s kan inte installeras:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Ett fel inträffade"
+msgstr "Ett fel inträffade:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Ett allvarligt fel inträffade: %s."
-#: pkgs.pm:792
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Fråga inte igen"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d installationstransaktioner misslyckades"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Installerar paket %s"
+msgstr "Installation av paket misslyckades:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Arbetsstation"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Kontorsarbetsstation"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Kontorsprogram: ordbehandlare (OpenOffice.org Writer, Kword), kalkylprogram "
-"(OpenOffice.org Calc, Kspread), PDF-visare, etc"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Kontorsprogram: ordbehandlare (Kword, Abiword), kalkylprogram (Kspread, "
-"Gnumeric), PDF-visare, etc"
+"Kontorsprogram: ordbehandlare (LibreOffice Writer, Kword), kalkylprogram "
+"(LibreOffice Calc, Kspread), PDF-visare, etc"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Spelstation"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Underhållande program: arkad, brädspel, strategi, etc"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimediastation"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Redigerings- och uppspelningsprogram för video och ljud"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internetstation"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -428,193 +513,193 @@ msgstr ""
"En samling verktyg för att läsa och skicka e-post och nyheter (mutt, tin...) "
"och för att utforska Internet"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Nätverksdator (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Klienter för olika protokoll inkluderande SSH"
+msgstr "Klienter för olika protokoll inklusive SSH"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Verktyg för att underlätta konfigurationen av datorn"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsollverktyg"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Editorer, skal, filverktyg, terminaler"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Utveckling"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Utvecklingsbibliotek, program och include-filer för C och C++"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentation"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Böcker och \"Howto's\" om Linux och fri mjukvara"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Stöd för tredjepartsprogram"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Webbserver"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab-server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Brandvägg/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet-gateway"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "E-post/Nyheter"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "E-postservern Postfix, Nyhetsgruppservern Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Katalog-server"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP-server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Domännamnserver och Nätverksinformationsserver"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Fil och Skrivarserver"
+msgstr "Fil och skrivarserver"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
-msgstr "NFS-server, Samba-server"
+msgstr "NFS och Samba-server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Databas"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL- och MySQL-databasserver"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL- och MariaDB-databasserver"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Webb/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "E-post"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "E-postservern Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL- eller MySQL-databasserver"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL- eller MariaDB-databasserver"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Nätverksserver"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS-server, SMB-server, Proxyserver, SSH-server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafisk miljö"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE-arbetsstation"
+msgid "Plasma Workstation"
+msgstr "Arbetsstation för Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -623,12 +708,12 @@ msgstr ""
"K Desktop Environment, den grundläggande grafiska miljön med en samling "
"tillhörande verktyg"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Gnome-arbetsstation"
+msgstr "Arbetsstation för GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -636,65 +721,111 @@ msgid ""
msgstr ""
"Grafisk miljö med en samling användarvänliga program och skrivbordsverktyg"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "KDE Skrivborsmiljö"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Arbetsstation för Xfce"
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Grafisk miljö med en samling användarvänliga program och skrivbordsverktyg"
+"En lättare grafisk miljö med en användarvänlig uppsättning av program och "
+"skrivbordsverktyg"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Arbetsstation för MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Arbetsstation för Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "En grafisk miljö baserad på GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt-skrivbord"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "En nästa generations QT-portering av den lätta skrivbordsmiljön"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment-skrivbord"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "En lättviktig snabb grafisk miljö med ett dedikerat efterföljande"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE-skrivbord"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "En lätt och snabb grafisk miljö"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Andra grafiska skrivbordsmiljöer"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, mfl."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Verktyg"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH-server"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Fjärrkonfigurationsserver"
+msgstr "Fjärrkonfiguration med Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Nätverksverktyg/Övervakning"
+msgstr "Nätverksverktyg/övervakning"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "Övervakningsverkty, processhantering, tcpdump, nmap, ..."
+msgstr "Övervakningsverktyg, processhantering, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Guider"
+msgid "Mageia Wizards"
+msgstr "Mageia-guider"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Guider för att konfigurera servern"
@@ -706,363 +837,368 @@ msgid ""
"Continue at your own risk."
msgstr ""
"Ett fel uppstod och jag vet inte hur det kan hanteras på ett\n"
-"bra sätt. Fortsätt på egen risk."
+"bra sätt.\n"
+"Fortsätt på egen risk."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"Några viktiga paket blev inte installerade ordentligt.\n"
"Antingen är cd-enheten eller cd-skivan trasig.\n"
"Du kan kontrollera cd-skivan på en redan installerad\n"
-"Mandriva Linux-dator med kommandot \"rpm -qpl media/main/*.rpm\".\n"
+"Mageia-dator med kommandot \"rpm -qpl media/main/*.rpm\".\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Påbörjar steg \"%s\"\n"
+msgstr "Går in i steget \"%s\"\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux installation %s"
+msgid "%s Installation %s"
+msgstr "%s Installation %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
-msgstr "<Tab>/<Alt-Tab> mellan element"
+msgstr "<Tab>/<Alt-Tab> mellan elementen"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "Xorg server är långsam i starten. Vänta..."
+msgstr "Xorg-servern är långsam i starten. Vänligen vänta..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Systemet har ont om resurser. Du kan få problem med att installera\n"
-"Mandriva Linux. Om det blir problem kan du prova den textbaserade\n"
+"%s. Om det blir problem kan du prova den textbaserade\n"
"installationen istället. För att göra det tryck F1 när du startar\n"
"från cd-skivan, skriv sedan \"text\"."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Val av media"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Installera Mandriva KDE Skrivbordsmiljö"
+msgid "Install %s Plasma Desktop"
+msgstr "Installera %s Plasma-skrivbordet"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Installera Mandriva GNOME Skrivbordsmiljö"
+msgid "Install %s GNOME Desktop"
+msgstr "Installera %s GNOME-skrivbordet"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Anpassad installation"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE Skrivborsmiljö"
+msgid "Plasma Desktop"
+msgstr "Plasma-skrivbord"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
-msgstr "GNOME Skrivborsmiljö"
+msgstr "GNOME-skrivbord"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
-msgstr "Anpassad Skrivborsmiljö"
+msgstr "Anpassat skrivbord"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Här är en demo av '%s' skrivbord."
+msgstr "Här är en förhandsvisning av '%s'-skrivbordet."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr "Klicka på bilderna för att se en större demo"
+msgstr "Klicka på bilderna för att se en större förhandsvisning"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Val av paketgrupper"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "Välj enskilda paket"
+msgstr "Individuellt paketval"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Total storlek: %d / %d MB"
+msgid "Unselect All"
+msgstr "Avmarkera alla"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Ogiltigt paket"
+msgid "Total size: %d / %d MB"
+msgstr "Total storlek: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Version: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Storlek: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Betydelsegrad: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
-msgstr "Du kan inte välja/välja bort detta paket."
+msgid "You cannot select/unselect this package"
+msgstr "Du kan inte välja/välja bort det här paketet."
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "pga saknande %s"
+msgstr "för att %s saknas"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "på grund av otillräckliga %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "försöker befordra %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "för att behålla %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-"Du kan inte välja detta paket eftersom det inte finns tillräckligt med "
-"utrymme."
+"Du kan inte välja det här paketet eftersom det inte finns tillräckligt med "
+"ledigt utrymme."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Följande paket kommer att installeras"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
-msgstr "Följande paket kommer att tas bort"
+msgstr "De följande paketen kommer att tas bort"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Detta är ett obligatoriskt paket som inte kan väljas bort."
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Det här är ett obligatoriskt paket, det kan inte avmarkeras"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "Du kan inte välja bort detta paket. Det är redan installerat."
+msgid "You cannot unselect this package. It is already installed"
+msgstr "Du kan inte välja bort det här paketet. Det är redan installerat."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Du kan inte välja bort det här paketet. Det måste uppdateras."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Visa automatiskt valda paket"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Installera"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
-msgstr "Ladda/Spara markering"
+msgstr "Ladda/spara val"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Uppdaterar paketval"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Växla mellan hierarkisk och platt paket-lista"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimal installation"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Programhantering"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
-msgstr "Välj paketen som du vill installera"
+msgstr "Välj de paket som du vill installera"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Installerar"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Inga detaljer"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
-msgstr "Återstående tid:"
+msgstr "Tid som återstår:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(uppskattar...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d paketet"
msgstr[1] "%d paket"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Sammanfattning"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Konfigurera"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
-msgstr "Inte inställt"
-
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Val av medium"
+msgstr "inte inställt"
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
"Följande installationskällor har hittats.\n"
-"Du kan välja bort dom du inte önskar använda dig av."
+"Du kan välja bort de du inte vill använda dig av."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"Du har möjligheten att kopiera innehållet på CDn till hårddisk innan "
-"installationen.\n"
-"Installationen kommer att fortsätta från hårddisken och paketen kommer att "
-"fortsätta vara tillgängliga när systemet är färdiginstallerat."
+"Du har möjlighet att kopiera innehållet från CDn till hårddisken innan "
+"installationen påbörjas.\n"
+"Installationen kommer sedan att fortsätta från hårddisken och paketen kommer "
+"fortsättningsvis att vara tillgängliga när systemet är färdiginstallerat."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr "Kopiera hela CD skivor"
+msgstr "Kopiera hela CD-skivor"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Ett fel inträffade"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Välj tangentbordslayout"
+msgstr "Vänligen välj din tangentbordslayout"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Här är hela listan med tillgängliga tangentbord:"
+msgstr "Här är den fullständiga listan över tillgängliga tangentbord:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "Installera/Uppdatera"
+msgstr "Installera/Uppgradera"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Är detta en installation eller en uppdatering?"
+msgstr "Är det här en installation eller en uppgradering?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Installera"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
-msgstr "Uppdatera %s"
+msgstr "Uppgradera %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Krypteringsnyckel för %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr "Avbryt installation, starta om systemet"
+msgstr "Avbryt installationen, starta om systemet"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Ny installation"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Uppgradera tidigare installation (rekommenderas ej)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1070,44 +1206,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Installationsprogrammet har märkt att ditt installerade Mandriva Linux\n"
+"Installationsprogrammet har märkt att ditt installerade Linux\n"
"system inte kan uppgraderas på ett säkert sätt till %s.\n"
"\n"
-"En nu installation som ersätter din tidigare rekommenderas.\n"
+"En ny installation som ersätter din tidigare rekommenderas.\n"
"\n"
-"Varning: du bör säkerhetskopiera alla dina personliga filer förrän du\n"
+"Varning: Du bör säkerhetskopiera alla dina personliga filer innan du\n"
"väljer \"Ny installation\"."
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Konfigurerar IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Inget ledigt utrymme för 1MB bootstrap. Installationen fortsätter, men för "
-"att starta systemet måste du skapa en \"bootstrap\"-partition i Diskdrake."
+msgid "Configuring CD/DVD"
+msgstr "Ställer in CD/DVD"
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Du måste skapa en PPC PRep Bootstrap. Installationen fortsätter, men för att "
-"starta systemet måste du skapa \"bootstrap\"-partitionen i Diskdrake."
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1115,27 +1232,27 @@ msgid ""
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"Byt cd-skiva.\n"
+"Byt CD-skiva.\n"
"\n"
-"Sätt in cd-skivan med namn \"%s\" och klicka på OK.\n"
+"Sätt i CD-skivan med namn \"%s\" och klicka på OK.\n"
"Om du inte har den, klicka på Avbryt för att hoppa över\n"
"den delen av installationen."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Söker efter tillgängliga paket..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Ditt system har inte tillräckligt med utrymme kvar för installation eller "
"uppgradering (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1144,141 +1261,184 @@ msgstr ""
"Välj ladda eller spara paketval.\n"
"Formatet är detsamma som för auto_install-genererade filer."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "Inläsning"
+msgstr "Ladda"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Spara"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
-msgstr "Oanvändbar fil"
+msgstr "Trasig fil"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
-msgstr "Val av skrivbord"
+msgstr "Skrivbordsval"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
-msgstr "Du kan väja din arbetsstationsprofil."
+msgstr "Du kan välja din arbetsstations skrivbordsprofil."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Vald storlek är större än tillgängligt utrymme."
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Installationstyp"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-"Du har inte valt några gruppaket.\n"
-"Välj den minimala installationen du vill ha:"
+"Du har inte valt några paket-grupper.\n"
+"Vänligen välj den minimala installationen som du vill ha:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Med X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Installerar paket %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Installera rekommenderade paket"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Med grundläggande dokumentation (rekommenderas)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Minimal installation (ingen urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Förbereder uppgradering..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Förbereder installation"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Installerar paket %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "Det uppstod ett fel vid sortering av paket:"
+msgstr "Det uppstod ett fel när paketen skulle sorteras:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Fortsätta ändå?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Försök igen"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr "Hoppa över detta paket"
+msgstr "Hoppa över det här paketet"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Hoppa över alla paket från mediet \"%s\""
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Gå tillbaka till media och paketval"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Det uppstod ett fel vid installation av paketet %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
-msgstr "Bearbetar installerade paket"
+msgstr "Konfiguration efter installationen"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr "Kontrollera att media för uppdateringsmoduler finns i enhet %s"
+msgstr ""
+"Vänligen säkerställ att mediet för uppdateringsmoduler finns i enheten %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Uppdateringar"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Du har nu möjlighet att ange online-media"
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Det här tillåter installation av säkerhetsuppdateringar."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"För att ange dessa media behöver du en fungerande internetanslutning.\n"
+"\n"
+"Vill du ange uppdateringsmedia?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Den nerladdningen kunde inte installeras."
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Försök igen?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Fel när media skulle läggas till"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1290,8 +1450,9 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Nu har du möjlighet att ladda hem programuppdateringar. Dessa\n"
-"paket har kommit ut efter att denna distribution släppts. De kan\n"
+"Du har nu möjlighet att ladda hem programuppdateringar. De här\n"
+"paketen\n"
+"har utkommit efter att denna distributionen släpptes. De kan\n"
"innehålla säkerhetsuppdateringar eller felrättningar.\n"
"\n"
"Du behöver en fungerande Internetanslutning för att kunna ladda ner dessa "
@@ -1299,129 +1460,99 @@ msgstr ""
"\n"
"Vill du installera uppdateringarna?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s på %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hårdvara"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Ljudkort"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Har du ett ISA-ljudkort?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Kör \"alsaconf\" eller \"sndconfig\" efter installationen för att "
-"konfigurera ljudkortet."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Inget ljudkort hittades. Prova \"harddrake\" efter installationen."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafiskt gränssnitt"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Nätverk & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Proxyservrar"
+msgstr "Proxy-servrar"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "konfigurerad"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Säkerhetsnivå:"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Brandvägg"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "aktiverad"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "inaktiverad"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Du har inte konfigurerat X. Är du säker på att du vill göra detta?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Förbereder starthanterare..."
+msgid "Preparing initial startup program..."
+msgstr "Förbereder initiellt uppstartsprogram..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Du verkar ha en OldWorld eller okän maskin, yaboot-starthanteraren kommer "
-"inte att fungera Installationen fortsätter, men du behöver använda BootX "
-"eller något liknande för att starta datorn. Kernelargumentet för roten är "
-"root=%s"
+msgstr "Ha tålamod, det här kan ta en stund..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"På den här säkerhetsnivån är tillgång till Windowspartitionen förbehållen "
+"På den här säkerhetsnivån är tillgång till Windowspartitionen begränsad till "
"administratören."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "Sätt in en tom diskett i diskettenhet %s"
+msgstr "Sätt in en tom diskett i enhet %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Skapar automatisk installationsdiskett"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1432,12 +1563,12 @@ msgstr ""
"\n"
"Vill du verkligen avbryta nu?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
-msgstr "Gratulerar"
+msgstr "Grattis"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Starta om"
@@ -1509,7 +1640,7 @@ msgstr "Partitionering"
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr "Formaterar"
+msgstr "Formatering"
#: steps_list.pm:29
#, c-format
@@ -1532,13 +1663,6 @@ msgid ""
"Users"
msgstr "Användare"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Nätverk"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1551,7 +1675,7 @@ msgstr "Starthanterare"
msgid ""
"_: Keep these entry short\n"
"Configure X"
-msgstr "Konfigurera X"
+msgstr "Ställ in X"
#: steps_list.pm:42
#, c-format
@@ -1580,103 +1704,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "Avsluta"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "Du har valt att uppgradera ditt system till %s. KDE 3.5 har hittats på "
-#~ "ditt\n"
-#~ "system. Detta installationsprogram kan inte behålla KDE 3.5 vid en "
-#~ "uppgradering.\n"
-#~ "Om du väljer att fortsätta, kommer KDE 4 att ersätta KDE 3, och du kommer "
-#~ "att\n"
-#~ "förlora dina personliga inställningar.\n"
-#~ "För att uppgradera med KDE 3.5 och behålla dina personliga inställningar, "
-#~ "var\n"
-#~ "vänlig och starta om ditt system och uppgradera med Mandriva "
-#~ "uppdateringsprogram."
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "Laddar ner filen %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "Uppgradering från en 32bit till en 64bit distribution stöds inte."
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "Uppgradering från en 64bit till en 32bit distribution stöds inte."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Du har valt följande server/servrar: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Dessa servrar aktiveras som standard. De har inga kända "
-#~ "säkerhetsproblem,\n"
-#~ "men sådana kan upptäckas. Om så blir fallet måste du se till att "
-#~ "uppdatera\n"
-#~ "dem så snabbt som möjligt.\n"
-#~ "\n"
-#~ "\n"
-#~ "Vill du verkligen installera dessa servrar?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm Skrivborsmiljö"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Kontaktar webbplatsen för att hämta en lista över tillgängliga paket..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Kan inte kontakta spegeln %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Genererar automatisk installationsdiskett"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Automatisk installation kan göras helt automatisk, om så önskas,\n"
-#~ "vilket gör att den tar över hårddisken\n"
-#~ "(syftet är att installera på en annan dator).\n"
-#~ "\n"
-#~ "Du kan tänkas vilja köra samma installation i repris.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Repris"
-
-#~ msgid "Automated"
-#~ msgstr "Automatiserad"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Spara paketval"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Vill du använda aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "Fel vid installationen av aboot.\n"
-#~ "Vill du försöka ändå, fast det kan förstöra den första partitionen?"
diff --git a/perl-install/install/share/po/ta.po b/perl-install/install/share/po/ta.po
index e392ec3c9..50bf04f1b 100644
--- a/perl-install/install/share/po/ta.po
+++ b/perl-install/install/share/po/ta.po
@@ -1,56 +1,81 @@
-# Drak X
-# Copyright (C) 2002 Mandriva
-#
-# NOTE: use UTF-8 only
-#
-# prabu <prabu_anand2000@yahoo.com>, 2002.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# prabu <prabu_anand2000@yahoo.com>, 2002
msgid ""
msgstr ""
-"Project-Id-Version: DrakX 1.0\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2002-09-06 00:35+0800\n"
-"Last-Translator: prabu anand <prabu_anand2000@yahoo.com>\n"
-"Language-Team: Tamil <tamilinix@yahoogroups.com>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Tamil (http://www.transifex.com/MageiaLinux/mageia/language/"
+"ta/)\n"
+"Language: ta\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 0.9.6\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "மேலும் உள்ளனவா?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -59,113 +84,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "சிடி இயக்கி"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "வலையமைப்பு %s"
+msgstr ""
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "வலையமைப்பு %s"
+msgstr ""
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
+msgid "NFS setup"
msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "தற்ேபாதுள்ள இணைப் பதிப்புதளங்களை அறிய மாண்ட்ேரக் இணையதளம் தொடர்புகொள்ளப்படுகிறது"
+msgid "Hostname missing"
+msgstr ""
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "அடைவு"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "தற்ேபாதுள்ள இணைப் பதிப்புதளங்களை அறிய மாண்ட்ேரக் இணையதளம் தொடர்புகொள்ளப்படுகிறது"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "பொதிகளை எங்கிருந்து இறக்க விரும்புகிறீர்கள்"
+msgid "Core Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
+msgid "Tainted Release"
msgstr ""
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "அடைவு"
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:422
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "இதை திறக்க முடியவில்ைல%s: %s\n"
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
-#: any.pm:334
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "ஏற்கனவே நிறுவப்பட்டுள்ள பொதிகள் பார்ைவயிடப்படுகின்றன"
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "மேம்படுத்தப்பட வேண்டிய பொதிகள் அறியப்படுகின்றன"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -174,87 +233,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%s என்ற கோப்ேபா படிப்பதில் பிழை நேர்ந்துள்ளது"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "கிழ்கானும் பொதிகள் நிறுவுவதற்கு தேர்வுச் செய்யப்பட்டுள்ளது"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "வலையமைப்பு"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "தயவுசெய்து ேதர்ந்ெதடுக்கவும்"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "இந்த கோப்பு ஏற்கனவே உள்ளது. பயன்பாடுத்தி கொள்ளலாமா?"
+msgstr ""
-#: any.pm:1122
-#, fuzzy, c-format
+#: any.pm:1385
+#, c-format
msgid "Permission denied"
-msgstr "அனுமதிகள்"
+msgstr ""
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "கெட்ட தகவல்"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "வகிர்தல் முடிவதற்கு முன் திரைவேட்டு எடுக்க முடியாது"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "நிறுவி முடித்தவுடன் திரைவேட்டுகள் %s என்ற அடைவில் கிடைக்கும்"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "நிறுவப்படுகிறது"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "வடிவமைப்புகள்"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "நீங்கள் %s இதனையும் வடிவுட்ட வேண்டும்"
@@ -278,25 +337,25 @@ msgstr "வலையமைப்பாக்கங்கள் ஏற்றப
msgid "Bringing down the network"
msgstr "வலையமைப்பாக்கங்கள் முடக்கப்படுகிறது"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "இன்னும் தேடுதல் நடைபெறுகிறது"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -323,350 +382,413 @@ msgstr "அழகானவை"
msgid "maybe"
msgstr "தேவைப்பட்டால்"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "இவரிக்க வில்லை"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "பிழை நேர்ந்துள்ளது மன்னிக்கவும்"
+msgstr ""
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "நிறுவுதலில் பிழை நேர்ந்துள்ளது"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "%s பொதி நிறுவப்படுகிறது"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "வேலைக்களம்"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "அலுவல் கருவிகள்"
-#: share/meta-task/compssUsers.pl:17
-#, fuzzy, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr "அலுவல் கருவிகள்(விாிதாள், நிகழ்த்தி,வரைபடக் கருவிகள்)"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr "அலுவல் கருவிகள்(விாிதாள், நிகழ்த்தி,வரைபடக் கருவிகள்)"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "விளையாட்டுகள்"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "விளையாட்டுகள்"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "பல்லூடக கணினி"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "பல்லூடக இயக்கிகள்/உருவாக்க நிரல்கள்"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "இணையக் கணினி"
-#: share/meta-task/compssUsers.pl:34
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:37
+#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
-msgstr "நீங்கள் மின்னஞ்சல், மற்றும் இணையத்ைத மேலோட உதவுங்கருவிகள்"
+msgstr ""
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "வலையமைப்புக் கணினி(வேண்டி)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "ssh முதலிய வலையமைப்புக் கருவிகள்"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "உங்கள் கணினியை எளிதாக வடிவமைக்க உதவுங்கருவிகள்"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "முனையக் கருவிகள்"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "முனையம்,தொகுப்பாளர்கள், கோப்பு மேலாளர்கள் மற்றும் ஓடுகள்"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "உருவாக்கம்"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C மற்றும் C++ நூலக நிரல்கள்"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "உதவிநூல்"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "புத்தகங்கள் மற்றும் எப்படிச் செய்வது போன்ற உதவி நூல்"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "LSB- லினக்ஸ் தரக்கட்டுப்பாட்டுக்கு தேவையான நிரல்கள்."
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "இணையத்தள சேவையகம்"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr ""
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "கிரப்"
+msgstr "குரூப்வேர்"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "கோலாப் சேவகன்"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "நெருப்புச்சுவர்/வழிப்படுத்தி"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "இணைய நுழைவாயில்"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/கோப்பு/_புதியது"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "மின்னஞ்சல் பரிமாறி"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "RAID இருந்து நீக்கு"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:102
+#, c-format
msgid "FTP Server"
-msgstr "NTP சேவையகம்"
+msgstr ""
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "DNS/NIS "
+msgstr ""
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "அச்சுப்ெபாறி சேவையகம்"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "ஒலிப் பரிமாறி"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "தரவுதளங்கள்"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL/MySQL தரவுத்தள பரிமாறிகள்"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "இணையதள/கோப்புப் பாிமாற்றம்"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "அப்பாச்சி, ftpd போன்ற பரிமாற்று நிரல்கள்"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "மின்னஞ்சல்"
-#: share/meta-task/compssUsers.pl:115
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:129
+#, c-format
msgid "Postfix mail server"
-msgstr "மின்னஞ்சல் பரிமாறி"
+msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL/MySQL தரவுத்தள பரிமாறிகள்"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL/MariaDB தரவுத்தள பரிமாறிகள்"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "வலையமைப்பக பரிமாறி"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS /சம்பா/பினாமி/ssh பரிமாறிகள்"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "வரைவியல்வழி சூழல்கள்"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Kசாளரமைப்பு பணிக்கணினி"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "Kசாளரமைப்பு- ஓர் பயன்படுத்துவதற்கு எளிதான வரைவியல்வழி மேலாளர்"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "குேனாம் பணிக்கணினி"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "ஓர் பயன்படுத்துவதற்கு எளிதான வரைவியல்வழி மேலாளர்"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "மேசைசெயலி"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "ஓர் பயன்படுத்துவதற்கு எளிதான வரைவியல்வழி மேலாளர்"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "மற்ற வரைவியல்வழி மேலாளர்கள்"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "குேனாம், ஐஸ்விம் ஆகிய பயன்படுத்துவதற்கு எளிதான வரைவியல்வழி மேலாளர்கள்"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "உதவிக்கருவிகள்"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
msgid "SSH Server"
-msgstr "சேவையகம்"
+msgstr ""
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "வலைபடக் கருவி"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "பரிமாறி வடிவமைப்பு"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "வலையமைப்பாக்க வடிவமைப்பு "
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "மாண்ட்ேரக் கட்டுப்பட்டு மையம்"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "அச்சுப்ெபாறி \"%s\" வடிவமைப்பு ெவற்றியடையவில்ைல"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -677,7 +799,7 @@ msgstr ""
"பிழை நேர்ந்துள்ளது மன்னிக்கவும் எனக்கு என்ன செய்வதென்று தெரியவில்ைல\n"
"தொடர்ந்து செல்வது உங்கள் பொறுப்பு"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -697,332 +819,333 @@ msgstr "தற்ேபாது இந்த `%s நிலைக்கு ச
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "மாண்ட்ேரக் லினக்ஸ் நிறுவல் %s"
+msgid "%s Installation %s"
+msgstr ""
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr ""
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"உங்கள் கணினியில் வளங்கள் குறைவாக உள்ளதால்\n"
-"மாண்ட்ேரக் லினக்ஸ் நிறுவுவதில் பிழை ஏற்படலாம். நீங்கள் உரைவழி நிறுவலாம்,\n"
-"சிடியில் நிறுவ தொடங்கும் போது `F1' என அழுத்தி விட்டு, `text'. என அடிக்கவும்"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "குறைந்தபட்ச நிறுவல்"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "மேசைசெயலி"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "மேசைசெயலி"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "மேசைசெயலி"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "பொதிகள் குழுத் தேர்வு"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "தனித்னி பொதியாக தேர்வுச் செய்"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "மெகா பைட்டில் மொத்த அளவு %d / %d"
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "தவறான பொதி"
+msgid "Total size: %d / %d MB"
+msgstr "மெகா பைட்டில் மொத்த அளவு %d / %d"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "வெளியீடு: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "அளவு: "
-#: steps_gtk.pm:405
-#, fuzzy, c-format
+#: steps_gtk.pm:426
+#, c-format
msgid "%d KB\n"
-msgstr "கிலோ பைட்டில் அளவு %d \n"
+msgstr ""
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "முக்கியத்துவம்: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "நீங்கள் இந்த பொதியை தேர்வு/நீக்க முடியாது"
-#: steps_gtk.pm:444
-#, fuzzy, c-format
+#: steps_gtk.pm:466
+#, c-format
msgid "due to missing %s"
-msgstr "kdesu இல்ைல"
+msgstr ""
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr ""
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr ""
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr ""
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "இடமில்ைல என்பதால் நீங்கள் இந்த பொதியைத் தே`ர்வுச் செய்ய முடியாது"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "கிழ்கானும் பொதிகள் நிறுவுவதற்கு தேர்வுச் செய்யப்பட்டுள்ளது"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "கிழ்கானும் பொதிகள் நீக்கப்படுகிறது"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "இது கட்டாய பொதி. இதனை நீக்க முடியாது"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "இந்த பொதியை.நீக்க முடியாது. இது ஏற்கனவே நிறுவப்பட்டள்ளது"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "இந்த பொதியை.நீக்க முடியாது. இது நிகழ்நிலைப்படுத்த வேண்டிய பொதி"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "தானாக தேர்வுச் செய்யப்பட்டுள்ள பொதிகளைக் காட்டு"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "நிறுவு"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "பொதிகள் தேர்வு"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "பொதிகள் தேர்ைவ நிகழ்நிலைப் படுத்து"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "குறைந்தபட்ச நிறுவல்"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "நிரல் மேலாண்மை"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "நிறுவ வேண்டிய பொதிகளை தேர்வுச் செய்யுங்கள் "
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "நிறுவப்படுகிறது"
-#: steps_gtk.pm:564
-#, fuzzy, c-format
+#: steps_gtk.pm:590
+#, c-format
msgid "No details"
-msgstr "விவரங்கள்"
+msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "தேவைப்படும் நேரம்"
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "கணக்கிடப்படுகிறது"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d பொதிகள்"
-msgstr[1] "%d பொதிகள்"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "உரை"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "வடிவமை"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "வடிவமைக்கப்படவில்ைல"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "பொதிகள் குழுத் தேர்வு"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "பிழை நேர்ந்துள்ளது மன்னிக்கவும்"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "தயவுசெய்து உங்கள் விசைப்பலகை இட அமைவைத் தேர்வு செய்க "
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "உங்கள் பயன்பாட்டிற்கு உள்ள விசைப்பலகைகள் அனைத்தும் இங்கே கொடுக்கப்பட்டுள்ளன"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "நிறுவுதுல்/ேமம்படுத்தல்"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "இது நிறுவுதலா அல்லது ேமம்படுத்தலா?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "நிறுவு"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr " %s ேமம்படுத்து"
-#: steps_interactive.pm:170
-#, fuzzy, c-format
+#: steps_interactive.pm:184
+#, c-format
msgid "Encryption key for %s"
-msgstr "மறைக்குறியீட்டுச் சாவி"
+msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "நிறுவப்படுகிறது"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1031,36 +1154,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDE வடிவமைக்கப்படுகிறது..."
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"துவங்குநிரலை நிறுவ இடமில்ைல. நிறுவுதல் தொடரும். ஆனால் உங்கள் லினக்ஸ் இயக்க நிரலை துவக்க "
-"டிரேக்வட்ைட பயன்படுத்துங்கள்"
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
msgstr ""
-"துவங்குநிரலை நிறுவ இடமில்ைல. நிறுவுதல் தொடரும். ஆனால் உங்கள் லினக்ஸ் இயக்க நிரலை துவக்க "
-"டிரேக்வட்ைட பயன்படுத்துங்கள்"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1075,73 +1179,71 @@ msgstr ""
"இந்த சிடி இல்ைலயென்றால் நீக்கு என்ற பொத்தானை கிளிக் செய்தால் இந்த சிடியிலிருந்து நிறுவல் "
"நின்றுவிடும்"
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "இருக்கும் பொதிகள் பார்ைவயிடப்படுகின்றன"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"தயவுசெய்து உங்கள் பொதி தேர்ைவ ஒரு நெகிழ்வட்டில் சேமிக்கவும்.\n"
-"இவ்வாறு சேமிக்கும் முறை தானியங்கி-நிறுவலை ஒத்து இருக்கும்"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "ஏற்றி"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "சேமி"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "கோப்பை ஏற்று"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "குனோம்"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "பொதிகள் குழுத் தேர்வு"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "நீங்கள் தேர்வு செய்துள்ள அளவு, இருக்குமிடத்ைத விட அதிகமாக உள்ளது"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "நிறுவல் முறை"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1150,87 +1252,126 @@ msgstr ""
"நீங்கள் பொதி குழுக்கள் எதனையும் தேர்வு செய்யவில்ைல.\n"
"தயவுசெய்து உங்களுக்கு தேவையானதை தேர்வு செய்யவும்"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X உடன் வரைவியல்வழியிடல பயன்படுத்த இது தேவை"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s பொதி நிறுவப்படுகிறது"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "உதவி நூல்களுடன் (குறைந்தபட்சம் இது தேவை!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "மிகச்சிறிய நிறுவல்(urpmi கூட கிடையாது)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "நிறுவுதல் தொடங்குகிறது"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s பொதி நிறுவப்படுகிறது"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "பொதிகளை அடுக்குவதில் பிழை நேர்ந்துள்ளது"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "தொடர்ந்து செல்லலாமா?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "பொதித் தேர்ைவச் சேமி"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "பொதிகளை நிறுவுவதில் பிழை நேர்ந்துள்ளது"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "நிறுவியபின் சேய்ய வேண்டிய வடிவமைப்புகள்"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "புதுப்பித்தல்கள்"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "கிழ்கானும் பொதிகள் நிறுவுவதற்கு தேர்வுச் செய்யப்பட்டுள்ளது"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1250,122 +1391,97 @@ msgstr ""
"\n"
"இவற்ைற நிறுவ விருப்பமா ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s இல் %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "வன்பொருள்"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "ஒலியட்ைட"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "உங்களிடம் ISA ஒலியட்ைட ஏதேனும் உள்ளனவா?"
-
-#: steps_interactive.pm:919
-#, fuzzy, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr "\"sndconfig\" என்ற நிரல் மூலம் உங்கள் ஒலியட்ைடயை வடிவமைக்க முடியும்"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"ஒலியட்ைட ஏதும் கண்டுபிடிக்க முடியவில்ைல. டிரேக்வன்ெபாருள் மாயாவியை பயன்படுத்துங்கள்"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "வரைவியல்வழி"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "வலையமைப்பும் இணையமும்"
-#: steps_interactive.pm:947
-#, fuzzy, c-format
+#: steps_interactive.pm:991
+#, c-format
msgid "Proxies"
-msgstr "பயனர்குறிப்பு: "
+msgstr ""
-#: steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_interactive.pm:992
+#, c-format
msgid "configured"
-msgstr "மறுவடிவமை"
+msgstr ""
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "பாதுகாப்பு நிலை"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "நெருப்புச்சுவர்"
-#: steps_interactive.pm:981
-#, fuzzy, c-format
+#: steps_interactive.pm:1026
+#, c-format
msgid "activated"
-msgstr "இப்போது துவக்கு"
+msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "முடமாக்கப்பட்டுள்ளது"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "துவங்குநிரலை உருவாக்குகிறேன்..."
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr "தயவுசெய்து நிறுவுவதற்கு ஆங்கிலத்ைத பயன்படுத்துங்கள்"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "வெற்று நெகிழ்வட்ைட %s இயக்கியில் உள்ளிடவும்"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "தானியங்கி நிறுவல்வட்ைட உருவாக்கவும்"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1376,12 +1492,12 @@ msgstr ""
"\n"
"நீங்கள் நிச்சயம் நிறுவுதலை விட்டு வெளியேற விரும்புகிறீர்களா?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "வாழ்த்துக்கள்"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "மறுெதாடக்கம்"
@@ -1476,13 +1592,6 @@ msgid ""
"Users"
msgstr "பயனர்கள்"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "வலையமைப்பு"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1525,134 +1634,6 @@ msgid ""
"Exit"
msgstr "வெளிச்ெசல்"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "கோப்புகளைக் கண்டுபிடி "
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "நீங்கள் கீழ்கானும் ேசவையகங்களை ேதர்வு செய்து உள்ளீர்கள்: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "இந்த ேசவையகங்கள் கொடாநிலையாக துவக்கப்படும். இவற்றில் இவை: \n"
-#~ "வெளியிடப் பட்டபோது பாதுகாப்பு பிரச்சினை ஏதுமில்ைல. ஆனால் பின்னாளில்:\n"
-#~ "கண்டுபிடிக்கப்படலாம்.\n"
-#~ "அப்ேபாது அவற்றுக்கான மாற்றுப் பொதிகளை நிறுவவும்\n"
-#~ "\n"
-#~ "\n"
-#~ "நிங்கள் நிச்சயம் இவற்ைற நிறுவ விரும்புகிறீர்களா?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "மேசைசெயலி"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "இணைப் பதிப்புதளங்களில் தற்ேபாதுள்ள பொதிகளை அறிய இணையதளம் தொடர்புகொள்ளப்படுகிறது"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "தானியங்கி நிறுவல்வட்ைட உருவாக்கவும்"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "தானியங்கி நிறுவல்வட்டின் மூலம் நீங்கள் நிறுவலை ,\n"
-#~ "முழுதும் தானாக நிறுவ வைக்கலாம்,\n"
-#~ "இது இன்னும் பல கணினிகளில் இதே போல் நிறுவ,\n"
-#~ "பயன்படலாம்,\n"
-#~ ",\n"
-#~ "நீங்கள் மீண்டும் ஒருமுறை உங்கள் நிறுவலை மறு இயக்கம் செய்யலாம்,\n"
-
-#~ msgid "Replay"
-#~ msgstr "மறு இயக்கம்"
-
-#~ msgid "Automated"
-#~ msgstr "தானியங்கி"
-
-#~ msgid "Save packages selection"
-#~ msgstr "பொதித் தேர்ைவச் சேமி"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "தயவுசெய்து நிறுவுவதற்கு ஆங்கிலத்ைத பயன்படுத்துங்கள்"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr "தயவுசெய்து நிறுவுவதற்கு ஆங்கிலத்ைத பயன்படுத்துங்கள்"
-
-#~ msgid "All"
-#~ msgstr "அனைத்து"
-
-#~ msgid "TV card"
-#~ msgstr "TV அட்ைட"
-
-#~ msgid "Boot"
-#~ msgstr "துவக்கம்"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "நல்குாிமை"
-
-#~ msgid "Gwenview"
-#~ msgstr "gwen பார்வை"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d பொதிகள்"
-#~ msgstr[1] "%d பொதிகள்"
-
-#~ msgid "%d packages"
-#~ msgstr "%d பொதிகள்"
-
-#~ msgid "Language"
-#~ msgstr "உங்கள் மொழியைத் தேர்வுச் செய்க"
-
-#~ msgid "License"
-#~ msgstr "அனுமதி"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "நிறுவல் வகையைத் தேர்வுச் செய்க"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "கணக்கிடப்படுகிறது"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "நிறுவ வேண்டிய பொதிகளை தேர்வுச் செய்யுங்கள்"
-
-#~ msgid "Users"
-#~ msgstr "பயனர்கள்"
-
-#~ msgid "Networking"
-#~ msgstr "வலையமைப்பு"
-
-#~ msgid "Configure X"
-#~ msgstr "X-ஐ வடிவமைக்கவும்"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "உங்கள் கருவிற்கு இணையான கூறுகளை காணமுடியவில்ைல (%s கோப்ேபா கானவில்ைல), இதற்கு "
-#~ "அர்த்தம் நீங்கள் தவறான நிறுவுதட்ைட பயன்படுத்துகிறீர்கள் (தயவுசெய்து புதிய நிறுவுதட்ைட "
-#~ "உருவாக்குங்கள்)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "பொதிகளை எங்கிருந்து இறக்க விரும்புகிறீர்கள்"
diff --git a/perl-install/install/share/po/tg.po b/perl-install/install/share/po/tg.po
index 15b709fc8..dce57d495 100644
--- a/perl-install/install/share/po/tg.po
+++ b/perl-install/install/share/po/tg.po
@@ -1,62 +1,87 @@
-# translation of DrakX-tg.po to Tajik
-# translation of DrakX-tg.po to Тоҷикӣ
-# Copyright (C) 2001,2002,2003,2004, 2005 Free Software Foundation, Inc.
-# 2004, infoDev, a World Bank organization
-# 2004, Khujand Computer Technologies, Inc.
-# 2004, KCT1, NGO
-# 2005, Youth Opportunities, NGO
-# Abrorova Hiromon, 2004
-# Roger Kovacs <rkovacs@khujand.org>, 2003.
-# Dilshod Marupov <dma165@hotmail.com>, 2003, 2004.
-# Murod Marupov <abdullovich@khujand.org>, 2004.
-# Bahromhon Bobojonov <bahrambabajanov@hotmail.com>, 2004.
-# Victor Ibragimov <youth_opportunities@tajikngo.org>, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Abrorova Hiromon, 2004
+# Bahromhon Bobojonov <bahrambabajanov@hotmail.com>, 2004
+# Dilshod Marupov <dma165@hotmail.com>, 2003-2004
+# Murod Marupov <abdullovich@khujand.org>, 2004
+# Roger Kovacs <rkovacs@khujand.org>, 2003
+# Victor Ibragimov <victor.ibragimov@gmail.com>, 2017
+# Victor Ibragimov <youth_opportunities@tajikngo.org>, 2005
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-tg\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-09-17 16:03+0500\n"
-"Last-Translator: Victor Ibragimov <youth_opportunities@tajikngo.org>\n"
-"Language-Team: Tajik\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Victor Ibragimov <victor.ibragimov@gmail.com>\n"
+"Language-Team: Tajik (http://www.transifex.com/MageiaLinux/mageia/language/"
+"tg/)\n"
+"Language: tg\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Ҳамроҳ шавед!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Соҳиб шавед!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Интихоби шумо!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Абзорҳои ҳуҷҷатнигорӣ"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Дилхушии хонагӣ"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Барои кӯдакон"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Барои оила!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Барои барномасозон!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Ташаккур!"
-#: any.pm:109
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Озод бошед!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Шумо боз дигар расонаи иловагиро доред?"
+msgstr "Шумо боз дигар расонаи иловагӣ доред?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -64,119 +89,163 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
+"Медиаи зерин пайдо шуд ва ҳангоми насб истифода бурда мешавад: %s.\n"
+"\n"
+"\n"
+"Шумо барои танзим кардани насб ягон медиаи иловагӣ доред?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Шабака (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Шабака (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Шабакаи (NFS)"
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
-msgstr "URL-и оина?"
+msgid "NFS setup"
+msgstr "Танзимкунии NFS"
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr ""
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr "Лутфан, номи мизбон ва директорияи медиаи NFS-и худро ворид намоед"
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Барои ба даст даровардани рӯйхати қуттиҳои дастрас пайвастшавӣ ба Mandriva "
-"Linuxweb site ба роҳ монда шудааст..."
+msgid "Hostname missing"
+msgstr "Номи мизбон намерасад"
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr "Директория бояд бо \"/\\” сар карда шавад"
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr "Номи мизбонро барои васли NFS ворид мекунед?"
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Директория"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr "Иловагӣ"
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
msgstr ""
-"Барои ба даст даровардани рӯйхати қуттиҳои дастрас пайвастшавӣ ба Mandriva "
-"Linuxweb site ба роҳ монда шудааст..."
+"Файли рӯйхати бастаҳоро дар ин оина ёфта наметавонад. Мутмаин шавед, ки "
+"ҷойгиршавӣ дуруст аст."
-#: any.pm:197
+#: any.pm:325
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Оинаро интихоб намоед, ки аз он қуттиҳоро гирифта мешавад"
+msgid "Core Release"
+msgstr "Релизи мағз"
-#: any.pm:227
+#: any.pm:327
#, c-format
-msgid "NFS setup"
-msgstr "Танзими NFS"
+msgid "Tainted Release"
+msgstr "Релизи шахсӣ"
-#: any.pm:228
+#: any.pm:329
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
-msgstr ""
+msgid "Nonfree Release"
+msgstr "Релизи пулакӣ"
-#: any.pm:232
+#: any.pm:367
#, c-format
-msgid "Hostname missing"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
+"Якчанд сахтафзор дар компютери шумо сахтафзори ғайри ройгонро талаб мекунад, "
+"то ки драйверҳои нармафзори ройгон тавонанд кор кунанд."
-#: any.pm:233
+#: any.pm:368
#, c-format
-msgid "Directory must begin with \"/\""
-msgstr ""
+msgid "You should enable \"%s\""
+msgstr "Шумо бояд \"%s\"-ро фаъол кунед"
-#: any.pm:237
+#: any.pm:419
#, c-format
-msgid "Hostname of the NFS mount ?"
-msgstr ""
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" дорои қисмҳои гуногуни системаҳо ва барномаҳои он мебошад."
-#: any.pm:238
+#: any.pm:420
#, c-format
-msgid "Directory"
-msgstr "Феҳрист"
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" дорои нармафзори ғайри ройгон мебошад.\n"
-#: any.pm:260
+#: any.pm:421
#, c-format
-msgid "Supplementary"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
msgstr ""
+"Он инчунин дорои нармафзоре мебошад, ки барои кори баъзе дастгоҳҳо зарур аст "
+"(масалан: баъзе кортҳои графикии ATI/AMD, баъзе кортҳои шабакавӣ, баъзе "
+"кортҳои RAID, ва ғайра...)"
-#: any.pm:295
+#: any.pm:422
#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Пайдо кардани файли hdlist дар ин оина нашуда истодааст."
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" дорои нармафзоре мебошад, ки дар баъзе кишварҳо ба сабаби патентҳои "
+"нармафзор пахш карда намешавад."
-#: any.pm:334
+#: any.pm:423
#, c-format
-msgid "Looking at packages already installed..."
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
msgstr ""
-"Ҷустуҷи бастаи барномаҳои аллакай коргузорӣ шуда иҷро шуда истодааст..."
+"Он инчунин дорои нармафзоре аз сохти нави \"%s\" бо қобилиятҳои иловагӣ "
+"мебошад."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Агар хоҳед, метавонед медиаи иловагиро фаъол кунед."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Ин медиа навсозиҳои бастаҳоро барои медиаи \"%s\\” таъмин менамояд"
-#: any.pm:369
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr "Дар ҳоли ҷустуҷӯи бастаҳои насбшуда..."
+
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Ҷустуҷӯи қуттиҳо барои нав намудан иҷро мешавад..."
+msgstr "Дар ҳоли ҷустуҷӯи бастаҳо барои такмил..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr ""
+msgstr "Дар ҳоли тозакунии бастаҳо пеш аз такмил..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -184,96 +253,95 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"Барои имконияти густариши системаи шумо бастаи барномаҳои зерин, хориҷ карда "
-"мешаванд: %s\n"
+"Барои иҷозати такмили системаи шумо, бастаҳои зерин тоза карда мешаванд: %s\n"
"\n"
"\n"
-"Дар ҳақиқат мехоҳед, ки ин бастаи барномаҳоро хориҷ кунед?\n"
+"Шумо дар ҳақиқат мехоҳед, ки бастаҳои зеринро тоза намоед?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
-msgstr "Хатогӣ ҳангоми хониши файл %s"
+msgstr "Хатои хониши файли %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "- %s хориҷ карда шуд\n"
+msgstr "Ном(ҳо)и диск(ҳо)и зерин иваз карда шуд(аанд):"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
-msgstr ""
+msgstr "%s (номи собиқ: %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Шабака"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Илтимос интихоб кунед"
+msgstr "Лутфан, медиаро интихоб намоед"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Файл аллакай вуҷуд дорад. Истифода барем?"
+msgstr "Файл аллакай вуҷуд дорад. Онро аз нав сабт мекунед?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
-msgstr "Рухсат инкор шуд"
+msgstr "Иҷозат нест"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
-msgstr ""
+msgstr "Номи NFS-и нодуруст"
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "миёнаи иловашуда %s"
+msgstr "Медиаи %s нодуруст аст"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Сохтани экранаксҳо пеш аз тақсимкунӣ номумкин"
+msgid "Cannot make screenshots before partitioning"
+msgstr "Таҳия кардани аксҳои экран пеш аз қисмбандӣ ғайриимкон аст"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "ЭкранАксҳо баъд аз коргузориш дар %s дастрас мешаванд"
+msgstr "Аксҳои экран баъд аз насб дар %s дастрас мешаванд"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Коргузорӣ шуда истодааст"
+msgstr "Насбкунӣ"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
-msgstr "Батанзимдарорӣ"
+msgstr "Танзимкунӣ"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
-msgstr "Шумо бояд %s-ро шаклбандӣ намоед"
+msgstr "Шумо инчунин бояд %s-ро формат кунед"
#: interactive.pm:16
#, c-format
@@ -281,39 +349,38 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Якчанд сахтафзор дар компютери шумо барои кор кардан ба ронандаҳои ``худ'' "
-"мӯҳтоҷ аст.\n"
-"Шумо ахборотро оиди онҳо дар %s ёфта метавонед"
+"Барои кори баъзе сахтафзор дар компютери шумо драйверҳои “пулакӣ” лозиманд.\n"
+"Шумо метавонед маълумотро дар бораи онҳо аз ин ҷо гиред: %s"
#: interactive.pm:22
#, c-format
msgid "Bringing up the network"
-msgstr "Шабака оварда мешавад"
+msgstr "Дар ҳоли фаъолсозии шабака"
#: interactive.pm:27
#, c-format
msgid "Bringing down the network"
-msgstr "Шабака фаромада истодааст"
+msgstr "Дар ҳоли ғайифаъолсозии шабака"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Лутфан, интизор шавед, файл бозёбӣ карда мешавад"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "медиаро илова карда наметавонад"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr ""
+msgstr "Нусхабардории баъзе бастаҳо ба диск барои истифодаи оянда"
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Муаяйнкунӣ дар раванди иҷроиш қарор дорад"
+msgstr "Дар ҳоли нусхабардорӣ"
#: pkgs.pm:32
#, c-format
@@ -323,7 +390,7 @@ msgstr "бояд дошта бошад"
#: pkgs.pm:33
#, c-format
msgid "important"
-msgstr "ҳатмӣ"
+msgstr "Ҳатмӣ аст"
#: pkgs.pm:34
#, c-format
@@ -340,362 +407,425 @@ msgstr "хуб"
msgid "maybe"
msgstr "мумкин аст"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Дар ҳоли гирифтани маълумоти баста аз метаиттилооти XML..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Ягон иттилооти xml барои медиаи \"%s\\” вуҷуд надорад, танҳо натиҷаи қисмӣ "
+"барои бастаи %s пайдо шуд"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Тафсилот нест"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
+"Баъзе бастаҳои дархостшуда аз тарафи %s насб карда намешаванд:\n"
+"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Хатогӣ рух дод"
+msgstr "Хатое ба вуҷуд омад:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Хатои ҷиддӣ ба вуҷуд омад: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Дигар напурсед"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr "%d коргузорӣ амалӣ нагардид"
+msgstr "%d интиқоли насбкунӣ иҷро нашуд"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Интихоби синфи коргузорӣ"
+msgstr "Насбкунии бастаҳо иҷро нашуд:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
-msgstr "Истгоҳи корӣ"
+msgstr "Компютери корӣ"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
-msgstr "Истгоҳи Кории Идораӣ"
+msgstr "Компютери кории идорӣ"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Барномаҳои идорӣ: пардозандаҳои матнӣ (OpenOffice.org Writer, Kword), "
-"ҷадвалҳои густурда (OpenOffice.org Calc, Kspread), азназаргузарҳои PDF ва "
+"Барномаҳои ҳуҷҷатнигорӣ: коркарди ҳуҷҷатҳои матнӣ (LibreOffice Writer, "
+"Kword), ҷадвалҳои электронӣ (LibreOffice Calc, Kspread), тамошобини PDF ва "
"ғайра"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Барномаҳои идораӣ: пардозандаи матнӣ (kword, abiword), ҷадвалҳои густурда "
-"(kspread, gnumeric), pdf баррасҳо ва ғайра"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
-msgstr "Истгоҳи бозӣ"
+msgstr "Компютери бозӣ"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
-msgstr "Барномаҳои шавқовар: аркадаҳо, бозиҳои рӯи мизӣ, стратегия ва ғайра"
+msgstr "Барномаҳои дилхушӣ: қаторравоқ, бозиҳои рӯи мизӣ, стратегия ва ғайра"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
-msgstr "Истгоҳи бисёрмуҳита"
+msgstr "Компютери мултимедиа"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
-msgstr "Барномаҳо барои бозикунии/таҳрири овоз ва видео"
+msgstr "Барномаҳо барои бозӣ/коркарди овоз ва видео"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
-msgstr "Истгоҳи Интернет"
+msgstr "Компютери интернетӣ"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
-"Маҷмӯи асбобҳо барои хондан ва фиристодани пост ва ахборот (mutt, tin..) ва "
-"баррасии Web"
+"Маҷмӯи абзорҳо барои хондан ва фиристодани почта ва ахборот (mutt, tin..) ва "
+"тамошо дар Интернет"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
-msgstr "Компютери Шабакавӣ (мизоҷ)"
+msgstr "Компютери шабакавӣ (мизоҷ)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
-msgstr "Мизоҷон барои қарордодҳои гуногун, аз он ҷумла ssh"
+msgstr "Мизоҷон барои протоколҳои гуногун, аз он ҷумла ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
-msgstr "Асбобҳо барои осоннамоии танзими компютери шумо"
+msgstr "Абзорҳо барои осонсозии танзими компютери шумо"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
-msgstr "Асбобҳои Нозиргоҳ"
+msgstr "Абзорҳои консолӣ"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
-msgstr "Муҳаррирон, пардозандаи фармонҳо, асбобҳои файлӣ, поёнаҳо"
+msgstr "Муҳаррирон, пардозгари фармонҳо, абзорҳои файлӣ, терминалҳо"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
-msgstr "Коркард"
+msgstr "Барномарезӣ"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
-msgstr "Китобхонаи коркарди C ва C++, барномаҳо ва файлҳои дохилшаванда"
+msgstr "Китобхонаи барномарезии C ва C++, барномаҳо ва файлҳои дохилшаванда"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
-msgstr "Санадсозӣ"
+msgstr "Ҳуҷҷатҳо"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Китобҳо ва Чӣ тавр дар Linux ва Таъминоти Барномавии Озод"
+msgstr "Китобҳо ва дастурамалҳо барои Linux ва Нармафзори ройгон"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Манбаи Низоммеъёри Linux. Пуштибонии замимаҳои коргардонони сеюм"
+msgstr "Манбаъи стандартии Linux. Дастгирии барномаҳои тарафҳои сеюм"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
-msgstr "Хидматгори Веб"
+msgstr "Сервери веб"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
-msgstr "Groupware"
+msgstr "Нармафзори кори гурӯҳӣ"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
-msgstr "Хидматрасони Kolab"
+msgstr "Сервери Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
-msgstr "Фейрвол/Масиргузор"
+msgstr "Девори оташ/масиргузор"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
-msgstr "Даричаи тадохули Интернет"
+msgstr "Гузаргоҳи Интернетӣ"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
-msgstr "Пост/Ахборот"
+msgstr "Почта/Ахборот"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Хидматрасони постии Postfix, Inn хидматрасони ахборотӣ"
+msgstr "Сервери почтаи Postfix, сервери ахбороти Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
-msgstr "Хидматрасони Феҳрист"
+msgstr "Сервери директория"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
-msgstr "Хидматрасони FTP"
+msgstr "Сервери FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Номи Доменӣ ва Хидматрасони Ахбороти Шабакавӣ"
+msgstr "Номи доменӣ ва сервери иттилооти шабакавӣ"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Хидматрасони Истифодабарандаи Файл ва Чопгар"
+msgstr "Сервери мубодилакунии файлҳо ва принтерҳо"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
-msgstr "Хидматрасони NFS, хидматрасони Samba"
+msgstr "Сервери NFS, сервери Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
-msgstr "Манбаи маълумот"
+msgstr "Пойгоҳи иттилоотӣ"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL ва MySQL Хидматрасони Манбаи Додаҳо"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL ва сервери пойгоҳи иттилоотии MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
-msgstr "Пост"
+msgstr "Почта"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
-msgstr "Хидматрасони пости Postfix"
+msgstr "Сервери почтаи Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Хидматрасони манбаи маълумоти PostgreSQL ё MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL ё сервери пойгоҳи иттилоотии MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
-msgstr "Хидматрасони Компютери Шабакавӣ"
+msgstr "Сервери компютерии шабакавӣ"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
-msgstr "NFS хидматрасон, SMB хидматрасон, Proxy хидматрасон, ssh хидматрасон"
+msgstr "Сервери NFS, сервери SMB, сервери Proxy, сервери ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
-msgstr "Муҳити Графикӣ"
+msgstr "Муҳити графикӣ"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Истгоҳи кории KDE"
+msgid "Plasma Workstation"
+msgstr "Компютерии кории Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"K Муҳити Мизи Корӣ, ин муҳити графикии асосӣ бо маҷмӯи асбобҳои ҳамроҳкунанда"
+"Муҳити мизи кории KDE (The K Desktop Environment), муҳити графикии асосӣ бо "
+"маҷмӯи абзорҳои иловашуда"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
-msgstr "Истгоҳи кории Gnome"
+msgstr "Компютери кории GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
-msgstr ""
-"Муҳити графикӣ бо маҷмӯи замимаҳо ва мизи кории бо корванд иртиботи дӯстона "
-"дошта"
+msgstr "Муҳити графикӣ бо маҷмӯи барномаҳои корбарӣ ва абзорҳои мизи корӣ"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Мизи Кории Ғалатёб"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Муҳити графикӣ бо маҷмӯи замимаҳо ва мизи кории бо корванд иртиботи дӯстона "
-"дошта"
+"Муҳити графикии сабук бо маҷмӯи барномаҳои корбарӣ ва абзорҳои мизи корӣ"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Компютери кории MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Компютери кории Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Муҳити графикӣ дар асоси GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Мизи кории LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Бандари насли нави QT барои муҳити мизи кории сабук"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Муҳити графикии тезкори сабук бо пайгирии муайяншуда"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Мизи кории LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Муҳити графикии тезкори сабук"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
-msgstr "Дигар Мизҳои Кории Графикӣ"
+msgstr "Мизҳои кории графикии дигар"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm, ва ғайра"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr "Барномаи Window Maker, Fvwm ва ғайра"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
-msgstr "Дастгоҳҳо"
+msgstr "Барномаҳои корбарӣ"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
-msgstr "Хидматгори SSH"
+msgstr "Сервери SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Батанзимдарори Хидматрасони Дурдасти Webmin"
+msgstr "Танзими дурдасти сервер тавассути Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Дастгоҳҳои Шабака/Дидабонӣ"
+msgstr "Барномаҳои корбарии шабакавӣ/назоратӣ"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "Дидабонии асбобҳо, ҳисоботи ҷараёнҳо, tcpdump, nmap, ..."
+msgstr "Абзорҳои назоратӣ, коркарди ҳисобҳо, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Устодҳои Mandriva"
+msgid "Mageia Wizards"
+msgstr "Устодҳои Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
-msgstr "Устод барои танзимдарории хидматрасон"
+msgstr "Устодҳо барои танзимкунии сервер"
#: steps.pm:85
#, c-format
@@ -703,11 +833,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Хатогие пайдо шуд, аммо ман намедонам, ки чӣ тавр онро дуруст кор карда "
-"бароям.\n"
+"Хатое ба вуҷуд омад, вале ман намедонам, чӣ тавр бояд ислоҳ карда шавад.\n"
"Мувофиқи таваккали худ давом диҳед."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -715,352 +844,362 @@ msgid ""
"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
"\"\n"
msgstr ""
-"Баъзе бастаи барномаҳои муҳим дуруст коргузорӣ нашудаанд.\n"
-"Ё гардонандаи cdrom ё диски фишурда хароб гаштаанд.\n"
-"Диски дар компютер гузошташударо ба воситаи фармони \"rpm -qpl media/main/*."
-"rpm санҷед\"\n"
+"Баъзе бастаҳои муҳим нодуруст насб карда шудаанд.\n"
+"Эҳтимол аст, ки драйви cdrom ё ин ки cdrom-и шумо вайрон аст.\n"
+"Кори cdrom-ро дар компютери омода ба воситаи фармони \"rpm -qpl media/main/*."
+"rpm\\” санҷед\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Гузориш ба қадами `%s'\n"
+msgstr "Гузариш ба қадами `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Коргузории Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "%s Насбкунӣ %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
-msgstr "<Tab>/<Alt-Tab> байни элементҳо"
+msgstr "Мубодилаи байни унсурҳо тавассути <Tab>/<Alt-Tab>"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr ""
+msgstr "Сервери Xorg барои оғоз суръати суст дорад. Лутфан, интизор шавед..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Дар системи шумо захира кам аст. Ҳангоми коргузорӣ намудани Mandriva Linux "
-"шумо метавонед бо муаммоҳо дучор гардед. Агар ин рӯй диҳад, онгоҳ шумо "
-"метавонед коргузории матниро ба амал оред. Ҳангоми худборкунии CDROM ба`F1' "
-"ангушт занед ва сониян ба `text' дохил шавед."
+"Системаи шумо манбаъҳои кофӣ надорад. Баъзе мушкилиҳои насбкунии %s "
+"метавонанд пайдо шаванд. Агар ягон мушкилӣ пайдо шавад, шумо метавонед "
+"насбкунӣ дар реҷаи матнӣ кӯшиш кунед. Дар ин маврид,\n"
+"ҳангоми роҳандозӣ тавассути CDROM тугмаи `F1'-ро пахш кунед ва ба реҷаи "
+"матнӣ (text) гузаред."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr ""
+msgid "Media Selection"
+msgstr "Интихоби медиа"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr ""
+msgid "Install %s Plasma Desktop"
+msgstr "Насб кардани мизи кории %s Plasma"
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr "Насб кардани мизи кории %s GNOME"
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Коргузории хурдтарин"
+msgstr "Насбкунии фармоишӣ"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Мизи Кории Ғалатёб"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Мизи кории Plasma"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Мизи Кории Ғалатёб"
+msgstr "Мизи кории GNOME"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Мизи Кории Ғалатёб"
+msgstr "Мизи кории фармоишӣ"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Пешнамоиши мизи кории '%s'"
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
-msgstr ""
+msgstr "Барои дидани пешнамоиш дар сурати калонтар, ба тасвирҳо зер кунед"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "Интихоби Гурӯҳи Қуттиҳо"
+msgstr "Интихоби гурӯҳи бастаҳо"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "Интихоби қуттиҳои алоҳида"
+msgstr "Интихоби бастаҳои алоҳида"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Андозаи умумӣ: %d / %d MB"
+msgid "Unselect All"
+msgstr "Лағв кардани интихоби пурра"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Қуттии бад"
+msgid "Total size: %d / %d MB"
+msgstr "Андозаи умумӣ: %d / %d МБ"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
-msgstr "Нусха: "
+msgstr "Версия: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Ҳаҷм: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
-msgstr "%d Кб\n"
+msgstr "%d КБ\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
-msgstr "Ҳатмӣ: "
+msgstr "Муҳиммӣ: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
-msgstr "Шумо интихоб/рад кардани ин бастаи барномаҳоро, карда наметавонед"
+msgid "You cannot select/unselect this package"
+msgstr "Шумо наметавонед, ки ин бастаро интиҳоб/лағв кунед:"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
-msgstr "мувофиқи мавҷуд набудани %s"
+msgstr "ба сабаби мавҷуд набудани %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
-msgstr "аз сабаби %s-и қонеънагашта"
+msgstr "ба сабаби номувофиқати %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr "барои пешравӣ кӯшиш намудан %s"
+msgstr "дар ҳоли коргузории %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
-msgstr "Барои нигоҳ доштани %s"
+msgstr "барои нигоҳ доштани %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
-"Шумо ин қуттиро интихоб карда наметавонед, зеро барои кор гузоштани он ҷой "
-"кофӣнест"
+"Шумо ин бастаро интихоб карда наметавонед, зеро ки барои насб кардан он ҷой "
+"кофӣ нест"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
-msgstr "Қуттиҳои зерин коргузорӣ хоҳад шуд"
+msgstr "Бастаҳои зерин насб карда мешаванд"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
-msgstr "Қуттиҳои навбатӣ бояд хориҷ гардад"
+msgstr "Бастаҳои зерин тоза карда мешаванд"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Ин қуттии зарур мебошад, онро бекор карда намешавад"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Ин бастаи зарур мебошад, лағви интихоби онро бекор карда намешавад"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr ""
-"Шумо интихоби ин бастаи барномаҳоро рад карда наметавонед. Он аллакай "
-"коргузорӣ шудааст"
+"Шумо интихоби ин бастаи барномаҳоро рад карда наметавонед. Он аллакай насб "
+"карда шудааст"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Шумо интихоби ин қуттиро бекор карда наметавонед. он бояд нав гардад"
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+"Шумо интихоби ин бастаро бекор карда наметавонед. Он бояд такмил дода шавад."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "Ба таври автоматӣ қуттиҳои интихобшударо нишон диҳед"
+msgstr "Намоиш додани бастаҳои интихобшуда ба таври худкор"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
-msgstr "Коргузоштан"
+msgstr "Насб кардан"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Интихоби қуттӣ"
+msgstr "Бор кардан/захира кардани интихоб"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
-msgstr "Интихоби қуттиҳо нав карда мешавад"
+msgstr "Навсозии интихоби бастаҳо"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
-msgstr "Коргузории хурдтарин"
+msgstr "Насбкунии камин"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "Идоракунии Нармафзор"
+msgstr "Идоракунии нармафзор"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
-msgstr "Бастаи барномаҳоеро, ки коргузорӣ кардан мехоҳед, интихоб намоед"
+msgstr "Бастаҳоеро, ки мехоҳед насб кунед, интихоб намоед"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
-msgstr "Коргузорӣ шуда истодааст"
+msgstr "Дар ҳоли насбкунӣ"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
-msgstr "Тафсилот нест"
+msgstr "Ягон тафсилот нест"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Вақти боқимонда "
+msgstr "Вақти боқимонда:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Баҳодиҳии тахминӣ"
+msgstr "(баҳодиҳӣ...)"
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d қуттиҳо"
-msgstr[1] "%d қуттиҳо"
+msgstr[0] "%d баста"
+msgstr[1] "%d баста"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
-msgstr "Ҷамбаст"
+msgstr "Ҷамъбаст"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
-msgstr "Танзим додан"
+msgstr "Танзим кардан"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
-msgstr "танзимдода нашуда"
-
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Интихоби Гурӯҳи Қуттиҳо"
+msgstr "танзимнашуда"
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"Расонаҳои коргузории зерин пайдо карда шудаанд.\n"
-"Агар баъзеи онҳоро партофтан хоҳед, онҳоро дар айни замон интихоб накарда "
-"метавонед."
+"Медиаи насбкунии зерин пайдо карда шуд.\n"
+"Агар шумо хоҳед, ки баъзеи онҳоро истифода набаред, интихоби онҳоро лағв "
+"кунед."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
+"Шумо метавонед пеш аз оғози насб муҳтавои дискҳои CD-ро ба диски компютери "
+"худ нусха бардоред.\n"
+"Ҳамин тавр насб аз драйви диски компютерӣ идома дода мешавад ва баъд аз "
+"насби пурра бастаҳо дар система дастрас мешаванд."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
-msgstr ""
+msgstr "Нусхабардории ҳамаи дискҳои CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
-msgstr "Хатогӣ рух дод"
+msgstr "Хатое ба вуҷуд омад"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
-msgstr "Лутфан, ороиши забонакро интихоб кунед"
+msgstr "Лутфан, тарҳбандии клавиатураи худро интихоб кунед"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Дар ин ҷо рӯйхати пурраи забонакҳои имконпазир дода шудааст"
+msgstr "Рӯйхати пурраи клавиатураҳои дастрас:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
-msgstr "Кор гузоштан/Афзоиш додан"
+msgstr "Насбкунӣ/Тақмилдиҳӣ"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "Ин коргузорӣ аст ё навсозӣ?"
+msgstr "Шумо насб мекунед ё такмил медиҳед?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr "Коргузоштан"
+msgstr "Насбкунӣ"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
-msgstr "Афзоиш %s"
+msgstr "Такмилдиҳии %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
-msgstr "Дагмаи рамздошта барои %s"
+msgstr "Калиди рамзгузорӣ барои %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Бекор кардани насб, бозоғозии система"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Коргузорӣ шуда истодааст"
+msgstr "Насби нав"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Такмилдиҳии насби пешакӣ (тавсия дода намешавад)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1068,39 +1207,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
+"Насбкунанда муайян кард, ки системаи Linux-и насбшуда ба %s ба таври бехатар "
+"такмил дода намешавад.\n"
+"\n"
+"Насбкунии нав бо имкони ивазкунии насби пешакӣ тавсия дода мешавад.\n"
+"\n"
+"Огоҳӣ: пеш аз интихоби \"Насби нав\", шумо бояд нусхаи эҳтиётии ҳамаи "
+"маълумоти шахсии худ таҳия кунед."
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "IDE ба танзим дароварда мешавад"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Ҷои холӣ барои барномаи худборшавии 1МБ кофӣ нест! Коргузорӣ давом хоҳад "
-"кард, аммо барои худборшавии систем ба шумо лозим аст, то ки қисми "
-"худборшавии авваларо дар DiskDrake офаред"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Ба шумо лозим аст, ки худборшавии аввали PPC PReP Boot-ро офаред! Коргузорӣ "
-"давом хоҳад кард, аммо барои худборшавии систем ба шумо лозим аст, то ки "
-"қисми худборшавии авваларо дар DiskDrake офаред"
+msgid "Configuring CD/DVD"
+msgstr "Танзимкунии CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1108,169 +1233,213 @@ msgid ""
"done.\n"
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
-"Диски Фишурдаи худро иваз кунед!\n"
-"\n"
-"Марҳамат карда Cd-Rom-и нишонааш \"%s\"-ро ба гардонандаи худ ҷойгир кунед "
-"ва баъд Ok-ро пахш кунед.\n"
-"Агар шумо онро надошта бошед, барои радкунии коргузорӣ аз ин Cd-Rom, Бекор "
-"карданро пахш кунед."
+"Cd-Rom-и зудро иваз кунед!\n"
+"Лутфан, Cd-Rom-ро бо тамғаи \"%s\" ба драйв дарҷ карда, тугмаи ОК-ро пахш "
+"намоед.\n"
+"Агар шумо онро надошта бошед, тугмаи “Бекор кардан”-ро пахш карда, насбкунии "
+"системаро аз драйви Cd-Rom лағв кунед."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Қуттиҳои дастрасшаванда ҷустуҷӯ карда мешавад..."
+msgstr "Дар ҳоли ҷустуҷӯи бастаҳои дастрас..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
+"Системаи шумо барои насбкунӣ ё такмилдиҳӣ фазои кофӣ надорад (%d МБ > %d МБ)"
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Лутфан интихоби кор андохтан ё нигоҳ доштанро дар дискет ба роҳ монед.\n"
-"Шаклбандӣ ҳамон хел аст ҳамчун дискетҳое ки бо auto_install офарида шудааст."
+"Лутфан, интихоби бастаро бор кунед ё захира намоед.\n"
+"Ин формат ба файлҳои таҳияшудаи auto_install монанд аст."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
-msgstr "Боркунӣ"
+msgstr "Бор кардан"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
-msgstr "Нигоҳ доштан"
+msgstr "Захира кардан"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "Пурбокунии файлҳо"
+msgstr "Файли нодуруст"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Интихоби Гурӯҳи Қуттиҳо"
+msgstr "Интихоби мизи корӣ"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
+"Шумо метавонед профили мизи кориро барои компютери кории худ интихоб намоед."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
-msgstr "Андозаи интихобшуда аз ҷои дастрасшуда зиёд аст"
+msgstr "Андозаи интихобшуда аз фазои дастрас зиёд аст"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
-msgstr "Навъи коргузорӣ"
+msgstr "Навъи насбкунӣ"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-"Шумо ягон гурӯҳи қуттиҳоро интихоб накардед.\n"
-"Лутфан, коргузории пастарини дилхоҳатонро интихоб намоед:"
+"Шумо ягон гурӯҳи бастаҳоро интихоб накардед.\n"
+"Лутфан, насбкунии камини дилхоҳатонро интихоб намоед:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
-msgstr "Бо X"
+msgstr "Бо воситаи X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Ба таври автоматӣ қуттиҳои интихобшударо нишон диҳед"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Насб кардани бастаҳои тавсияшуда"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "Бо санадсозии асосӣ (маслиҳат дода мешавад!)"
+msgstr "Бо ҳуҷҷатҳои асосӣ (тавсия дода мешавад!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "Дар ҳақиқат коргузории хурдтарин (алалхусус ғайри urpmi)"
+msgstr "Насбкунии камини ҳақиқӣ (алалхусус бе urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Омодасозии такмил..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
-msgstr "Коргузорӣ тайёр шуда истодааст"
+msgstr "Омодасозии насб"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
-msgstr ""
+msgstr "Насбкунии бастаи %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "Ҳангоми ба даст даровардани қуттиҳо хатогие рӯй дод:"
+msgstr "Ҳангоми дархосткунии бастаҳо хатое ба вуҷуд омад:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
-msgstr "Ба ҳар ҳол давом диҳам?"
+msgstr "Ба ҳар ҳол идома медиҳед?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
-msgstr ""
+msgstr "Аз нав кӯшиш кардан"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr ""
+msgstr "Лағв кардани ин баста"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr ""
+msgstr "Лағв кардани ҳамаи бастаҳо аз медиаи \"%s\""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Интихоби қуттиҳоро нигоҳ доштан"
+msgstr "Бозгашт ба медиа ва интихоби бастаҳо"
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Ҳангоми коргузории қуттиҳо хатогӣ пайдо гардид:"
+msgstr "Ҳангоми насбкунии бастаи %s хатое ба вуҷуд омад."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
-msgstr "Баъд аз пайкарабандӣ коргузорӣ мегардад"
+msgstr "Танзимкунии баъд аз насб"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
+"Лутфан, мутмаин шавед, ки медиаи навсозии модулҳо дар драйви %s мебошад"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Нав кардан"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Акнун шумо барои танзим кардани медиаи онлайн имконият доред."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Ин амал барои насб кардани навсозиҳои амният иҷозат медиҳад."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Барои насб кардани ин медиа, шумо бояд ба Интернет пайваст шавед.\n"
+"\n"
+"Шумо мехоҳед, ки медиаи навсозиро танзим кунед?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Бастаҳои зерин насб карда мешаванд"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Такрор мекунед?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Иловакунии медиа иҷро нашуд"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1282,160 +1451,126 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Акнун шумо имкон доред, то ки қуттиҳои навшударо фаровир намоед. Ин "
-"қуттиҳои\n"
-"мазкур баъди ба амал овардани тақсимот нав карда шуда буд. Онҳо метавонад\n"
-"собитҳоро барои бехатарӣ ё ин ки хатогиҳо дошта бошад.\n"
+"Акнун шумо барои боргирӣ кардани бастаҳои навшуда имконият доред. Ин бастаҳо "
+"баъд аз санаи барориши ин дистрибутив нав карда шудаанд. Онҳо метавонанд "
+"ислоҳоти хатоҳо ва сатҳи амниятро дар бар гиранд.\n"
"\n"
-"Барои ба амал овардани фаровир ба шумо лозим аст, то ки алоқаи ҳозираи "
-"интернетро\n"
-"истифода баред.\n"
+"Барои боргирӣ кардани ин бастаҳо, шумо бояд ба Интернет пайваст шавед.\n"
"\n"
-"Оё шумо хоҳиши коргузорӣ намудани ин навигариҳо ҳастед?"
+"Шумо мехоҳед, ки ин навсозиҳоро насб кунед?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s дар %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Сахтафзор"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
-msgstr "Корти овоздор"
+msgstr "Корти садо"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Шумо карти садои ISA доред?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Барои батанзимдарории корти овозии шумо баъди коргузорӣ \"alsaconf\" ё "
-"\"sndconfig\"-ро корандозӣ намоед"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Корти овозӣ муайян нагардид. \"harddrake\"-ро баъди коргузорӣ кӯшиш намоед"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Интерфейси графикӣ"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Шабака ва Интернет"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
-msgstr "Боваринок"
+msgstr "Проксиҳо"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "танзимшуда"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
-msgstr "Сатҳи Амният"
+msgstr "Сатҳи амният"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
-msgstr "Фейрвол"
+msgstr "Девори оташ"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
-msgstr "фаъолшуда"
+msgstr "фаъол"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "ғайрифаъол"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "Шумо X-ро ба танзим надаровардаед. Шумо дар ҳақиқат инро мехоҳед?"
+msgstr "Шумо сервери X-ро танзим накардед. Оё он ба шумо лозим аст?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Корандози худборшави аввала тайёр мешавад..."
+msgid "Preparing initial startup program..."
+msgstr "Омодасозии оғози ибтидоии барнома..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Зоҳиран шумо World-и Кӯҳна ё мошинаи номаълумро доред, корандози худборшави "
-"yaboot барои шумо кор намекунад. Коргузорӣ давом хоҳад кард, вале шумо бояд "
-"BootX ё ин ки воситаҳои дигарро барои худборшавии мошини худ истифода баред. "
-"Нишонванди ҳаста барои решаи fs ин: root=%s"
+msgstr "Лутфан, интизор шавед, ин метавонад андак вақт гирад..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-"Дар ин сатҳи бехатарӣ дастрасӣ ба файлҳо дар қисматҳои Windows таҳо ба "
-"идоракунанда иҷозат дода мешаванд."
+"Дар ин сатҳи бехатарӣ, дастрасӣ ба файлҳо дар қисматҳои Windows танҳо ба "
+"маъмур иҷозат дода мешавад."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
-msgstr "Дискети холиро ба гардон дохил намоед %s"
+msgstr "Дискетаи холиро ба драйви %s дарҷ кунед"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Диски нарми худкоргузорӣ офарида шуда истодааст..."
+msgstr "Эҷодкунии дискетаи насбкунии худкор..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-"Якчанд марҳила ба итмом нарасидааст.\n"
+"Баъзе қадамҳо иҷро карда нашуданд.\n"
"\n"
-"Шумо дар ҳақиқат баромадан мехоҳед?"
+"Шумо мехоҳед, ки равандро ба анҷом расонед?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
-msgstr "Табрикот"
+msgstr "Табрик мекунем"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
-msgstr "Бозхудборшавӣ"
+msgstr "Бозоғозии система"
#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
#: steps_list.pm:16
@@ -1448,14 +1583,14 @@ msgstr "Забон"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Маҳаллисозӣ"
#: steps_list.pm:17
#, c-format
msgid ""
"_: Keep these entry short\n"
"License"
-msgstr "Лисензия"
+msgstr "Иҷозатнома"
#: steps_list.pm:18
#, c-format
@@ -1469,21 +1604,21 @@ msgstr "Муш"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Муаяйн намудани ронандаи сахт"
+msgstr "Муайянкунии диски компютерӣ"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installation class"
-msgstr ""
+msgstr "Синфи насбкунӣ"
#: steps_list.pm:23
#, c-format
msgid ""
"_: Keep these entry short\n"
"Keyboard"
-msgstr "Забонак"
+msgstr "Клавиатура"
#: steps_list.pm:24
#, c-format
@@ -1497,49 +1632,42 @@ msgstr "Амният"
msgid ""
"_: Keep these entry short\n"
"Partitioning"
-msgstr "Ҷузъбандӣ"
+msgstr "Қисмбандӣ"
#: steps_list.pm:27 steps_list.pm:28
#, c-format
msgid ""
"_: Keep these entry short\n"
"Formatting"
-msgstr ""
+msgstr "Шаклбандӣ"
#: steps_list.pm:29
#, c-format
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr ""
+msgstr "Интихоби бастаҳо"
#: steps_list.pm:31
#, c-format
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "Коргузорӣ шуда истодааст"
+msgstr "Дар ҳоли насб"
#: steps_list.pm:34
#, c-format
msgid ""
"_: Keep these entry short\n"
"Users"
-msgstr "Корвандҳо"
-
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Шабака"
+msgstr "Корбарон"
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
"_: Keep these entry short\n"
"Bootloader"
-msgstr "Корандози худборшав"
+msgstr "Боркунандаи роҳандозӣ"
#: steps_list.pm:40 steps_list.pm:41
#, c-format
@@ -1553,167 +1681,49 @@ msgstr "Танзими X"
msgid ""
"_: Keep these entry short\n"
"Summary"
-msgstr "Ҷамбаст"
+msgstr "Ҷамъбаст"
#: steps_list.pm:44 steps_list.pm:45
#, c-format
msgid ""
"_: Keep these entry short\n"
"Services"
-msgstr "Хидматрасонҳо"
+msgstr "Хидматҳо"
#: steps_list.pm:46
#, c-format
msgid ""
"_: Keep these entry short\n"
"Updates"
-msgstr "Нав кардан"
+msgstr "Навсозиҳо"
#: steps_list.pm:48
#, c-format
msgid ""
"_: Keep these entry short\n"
"Exit"
-msgstr "Хуруҷ"
-
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Файлҳо фиристода шуда истодааст..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Шумо хидматрасон(ҳо)и зеринро интихоб намудаед: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Мувофиқи пешфарз ин хидматрасонҳо фаъол карда шудаанд. Онҳо ягон "
-#~ "муаммоҳои\n"
-#~ "маълуми бо бехатарӣ вобаста бударо надоранд, лекин муаммоҳои нав пайдо "
-#~ "шуда\n"
-#~ "метавонад. Дар ин ҳолат шумо бояд онҳоро бо қадри имкон ба таври фаврӣ "
-#~ "нав\n"
-#~ "намоед.\n"
-#~ "\n"
-#~ "\n"
-#~ "Шумо дар ҳақиқат ин хидматрасонҳоро коргузорӣ карданӣ ҳастед?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Мизи Кории Ғалатёб"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Пайвастшавӣ ба оина барои гирифтани рӯйхати қуттиҳои дастрас иҷро "
-#~ "мешавад..."
+msgstr "Баромад"
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Имконияти пайвастшавӣ бо оинаи %s мавҷуд нест"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL-и оина доред?"
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Дискети коргузории автоматиро офаридан"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL бояд бо ftp:// ё http:// сар карда шавад"
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Мувофиқи хоҳиш коргузории автоматӣ мумкин ба таври\n"
-#~ "пурра автоматикона мешавад\n"
-#~ "дар ин ҳолат он диски сахтро нусхабардорӣ хоҳад намуд!!\n"
-#~ "(ба коргузорӣ намудан ба дигар компютер пешбинӣ шудааст).\n"
-#~ "\n"
-#~ "Мумкин, шумо коргузории такрориро афзалтар шуморед.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Такрор намудан"
-
-#~ msgid "Automated"
-#~ msgstr "Автоматикунонида"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Интихоби қуттиҳоро нигоҳ доштан"
+#~ "Дар ҳоли пайваст бо вебсайти %s барои ба даст овардани рӯйхати оинаҳои "
+#~ "дастрас..."
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Мехоҳед, ки aboot-ро истифода баред?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Хатогии коргузории aboot, \n"
-#~ "бо мақсади тезонидани коргузорӣ кӯшиш намудан, ҳатто агар ин қисми якумро "
-#~ "нобуд созад?"
-
-#~ msgid "All"
-#~ msgstr "Ҳама"
-
-#~ msgid "TV card"
-#~ msgstr "TV корт"
-
-#~ msgid "Boot"
-#~ msgstr "Boot"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Аслшиносӣ"
-
-#~ msgid "Gwenview"
-#~ msgstr "НамоишиGwen"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d қуттиҳо"
-#~ msgstr[1] "%d қуттиҳо"
-
-#~ msgid "%d packages"
-#~ msgstr "%d қуттиҳо"
+#~ "Ҳангоми пайвастшавӣ бо вебсайти %s барои ба даст овардани рӯйхати оинаҳои "
+#~ "дастрас хато ба миён омад"
-#~ msgid "Language"
-#~ msgstr "Забон"
-
-#~ msgid "License"
-#~ msgstr "Лисензия"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Баҳодиҳии тахминӣ"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Барои коргузорӣ қуттиҳоро интихоб намоед"
-
-#~ msgid "Users"
-#~ msgstr "Корвандҳо"
-
-#~ msgid "Networking"
-#~ msgstr "Шабака"
-
-#~ msgid "Configure X"
-#~ msgstr "Танзими X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Иҷозат барои дастёбӣ ба модули ҳаста, ки ба ҳастаи шумо мутобиқат мекунад "
-#~ "(файли %s партофта шудааст), гирифта нашуда истодааст, одатан ин маънои "
-#~ "онро дорад, ки диски нарми худборшавии шумо бо миёнаи Коргузорӣ ҳамзамон "
-#~ "карда нашудааст (марҳамат карда диски нарми худборшавии навтар офаред)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Оинаро барои гирифтани бастаҳо интихоб намоед"
diff --git a/perl-install/install/share/po/th.po b/perl-install/install/share/po/th.po
index 5b325203a..4c13d92bd 100644
--- a/perl-install/install/share/po/th.po
+++ b/perl-install/install/share/po/th.po
@@ -1,53 +1,83 @@
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR Free Software Foundation, Inc.
-# Wachara Chinsettawong <wachara@yahoo.com>, 2001
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Rockers <sumorock@hotmail.com>, 2015
+# Rockers <sumorock@hotmail.com>, 2015
+# Wachara Chinsettawong <wachara@yahoo.com>, 2001
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2001-09-10 14:24GMT+7\n"
-"Last-Translator: Wachara Chinsettawong <wachara@yahoo.com>\n"
-"Language-Team: Thai <th@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Thai (http://www.transifex.com/MageiaLinux/mageia/language/"
+"th/)\n"
+"Language: th\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 0.9.5\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "คุณมีอันอื่นๆอีกหรือไม่?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -56,113 +86,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "ซีดี-รอม"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Network interface"
-
-#: any.pm:122
-#, fuzzy, c-format
-msgid "Network (FTP)"
-msgstr "Network interface"
-
-#: any.pm:123
-#, c-format
-msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:163
#, c-format
-msgid "URL of the mirror?"
+msgid "Network (FTP)"
msgstr ""
-#: any.pm:171
+#: any.pm:164
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Network (NFS)"
msgstr ""
-#: any.pm:182
-#, fuzzy, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "กำลังติดต่อกับมิลเรอร์ไซต์เพื่อหารายการของแพ็คเก็จที่มีให้"
-
-#: any.pm:187
-#, fuzzy, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "กำลังติดต่อกับมิลเรอร์ไซต์เพื่อหารายการของแพ็คเก็จที่มีให้"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "เลือกมิลเรอร์ไซต์ที่จะใช้ในการดาวน์โหลดแพ็คเก็จ"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr ""
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr ""
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr ""
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr ""
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "สารบัญ"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:300
+#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
-msgstr "Adapter %s: %s"
+msgstr ""
-#: any.pm:334
-#, fuzzy, c-format
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
msgid "Looking at packages already installed..."
-msgstr "คุณไม่สามารถไม่เลือกแพกเกจนี้เพราะมันได้ถูกติดตั้งไปแล้ว"
+msgstr ""
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "กำลังหาแพ็คเก็จที่จะทำการอัพเกรด"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -171,87 +235,87 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "มีปัญหากับการอ่านข้อมูลในไฟล์ %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "แพ็คเก็จเหล่านี้กำลังจะถูกติดตั้ง"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "ระบบเครือข่าย"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "กรุณาเลือก"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "ไฟล์มีอยู่แล้ว ต้องการใช้?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "สิทธิการทำงานถูกปฎิเสท"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "อุปกรณ์ที่ถูกเพิ่มเข้ามา %s"
+msgstr ""
-#: any.pm:1234
-#, fuzzy, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "โปรแกรมไม่สามารถเพิ่มพาร์ติชั่นได้อีก"
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
-#: any.pm:1242
-#, fuzzy, c-format
+#: any.pm:1509
+#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "คุณสามารถเลือกภาษาอื่นซึ่งจะสามารถใช้ได้หลังติดตั้ง"
+msgstr ""
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "กำลังติดตั้ง"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "ปรับแต่งค่า"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr ""
@@ -275,25 +339,25 @@ msgstr "ระบบเน็ตเวิร์กกำลังจะทำง
msgid "Bringing down the network"
msgstr "ระบบเน็ตเวิร์กกำลังจะหยุดทำงาน"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "ค้นหาเจอบน port %s"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -320,350 +384,413 @@ msgstr "ดี"
msgid "maybe"
msgstr "อาจจะ"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "ไม่มีคำอธิบายรายละเอียด"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "มีปัญหาเกิดขึ้น"
+msgstr "มีปัญหาเกิกขึ้น:"
-#: pkgs.pm:792
-#, fuzzy, c-format
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
msgid "%d installation transactions failed"
-msgstr "การติดตั้งไม่สำเร็จ"
+msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "กำลังติดตั้งแพ็คเก็จ %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:16
+#, c-format
msgid "Workstation"
-msgstr "Workstation ที่ทำงาน"
+msgstr ""
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Workstation ที่ทำงาน"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:26
#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-
-#: share/meta-task/compssUsers.pl:23
-#, fuzzy, c-format
msgid "Game station"
-msgstr "Workstation ที่ทำงาน"
+msgstr ""
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:27
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:30
+#, c-format
msgid "Multimedia station"
-msgstr "Multimedia - เขียน CD "
+msgstr ""
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr ""
-#: share/meta-task/compssUsers.pl:33
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:36
+#, c-format
msgid "Internet station"
-msgstr "การเชื่อมต่อกับ Internet แบบ sharing"
+msgstr ""
-#: share/meta-task/compssUsers.pl:34
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:37
+#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
-msgstr "เครื่องมือในการอ่านและส่ง mail และ news (pine, mutt, tin..) และท่องอินเตอร์เน็ต"
+msgstr ""
-#: share/meta-task/compssUsers.pl:39
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:42
+#, c-format
msgid "Network Computer (client)"
-msgstr "เครื่องพิมพ์ในระบบ Network (Socket)"
+msgstr ""
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Clients for different protocols including ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "เครืองมือที่ช่วยในการปรับแต่งเครื่องชองคุณให้ง่ายขึ้น"
-#: share/meta-task/compssUsers.pl:49
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:53
+#, c-format
msgid "Console Tools"
-msgstr "ปิด"
+msgstr ""
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr ""
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "พัฒนาซอฟท์แวร์ (Development)"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "คู่มือ"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr ""
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr ""
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr ""
-#: share/meta-task/compssUsers.pl:73
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:79
+#, c-format
msgid "Web Server"
-msgstr "เซิร์ฟเวอร์"
+msgstr ""
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr ""
-#: share/meta-task/compssUsers.pl:77
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:84
+#, c-format
msgid "Groupware"
-msgstr "เวิร์กกรุ๊ป (workgroup)"
+msgstr ""
-#: share/meta-task/compssUsers.pl:78
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:85
+#, c-format
msgid "Kolab Server"
-msgstr "เซิร์ฟเวอร์ NIS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr ""
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
msgid "Internet gateway"
-msgstr "การติดต่อ internet"
+msgstr ""
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/ไฟล์/_ใหม่"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "ชื่อเซิร์ฟเวอร์ของพรินเตอร์"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "เรียกคืนจากแผ่นฟล้อปปี้"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:102
+#, c-format
msgid "FTP Server"
-msgstr "เซิร์ฟเวอร์ NIS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "ใช้ NIS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "ชื่อโดเมน"
+msgstr ""
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "ชื่อเซิร์ฟเวอร์ของพรินเตอร์"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:113
+#, c-format
msgid "NFS Server, Samba server"
-msgstr "เซิร์ฟเวอร์ NIS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "ฐานข้อมูล"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
+msgid "PostgreSQL and MariaDB Database Server"
msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr ""
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr ""
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "จดหมาย"
-#: share/meta-task/compssUsers.pl:115
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:129
+#, c-format
msgid "Postfix mail server"
-msgstr "ชื่อเซิร์ฟเวอร์ของพรินเตอร์"
+msgstr ""
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
msgstr ""
-#: share/meta-task/compssUsers.pl:126
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:142
+#, c-format
msgid "Network Computer server"
-msgstr "เครื่องพิมพ์ในระบบ Network (Socket)"
+msgstr ""
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr ""
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "การทำงานแบบกราฟฟิก"
-#: share/meta-task/compssUsers.pl:135
-#, fuzzy, c-format
-msgid "KDE Workstation"
-msgstr "Workstation ที่ทำงาน"
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:140
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:158
+#, c-format
msgid "GNOME Workstation"
-msgstr "Workstation ที่ทำงาน"
+msgstr ""
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "พื้นที่ทำงาน"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Graphical Desktops อื่นๆ"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "อรรถประโยชน์"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
msgid "SSH Server"
-msgstr "เซิร์ฟเวอร์ NIS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "อุปกรณ์"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "การคอนฟิก Internet"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "การคอนฟิกระบบเน็ตเวิร์ก"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "Control Center"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "การคอนฟิกเครื่องพิมพ์"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -674,7 +801,7 @@ msgstr ""
"มีความผิดพลาดเกิดขึ้น แต่โปรแกรมไม่สามารถแก้ไขได้\n"
"หากทำงานต่ออาจเกิดความเสียหายได้"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -694,331 +821,335 @@ msgstr "เข้าสู่ขั้นตอน `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "การติดตั้งลีนุกซ์-แมนเดรก %s"
+msgid "%s Installation %s"
+msgstr ""
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> ระหว่างตัวเลือก"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"เครื่องของคุณมีทรัพยากรค่อนข้างต่ำคุณอาจมีปัญหาติดตั้ง \n"
-"Mandriva Linux ถ้าเป็นเช่นนั้น กรุณาทดลองติดตั้งแบบ text \n"
+"%s ถ้าเป็นเช่นนั้น กรุณาทดลองติดตั้งแบบ text \n"
"กรุณากด F1 ขณะ boot จาก cdrom แล้วพิมพ์ text"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "ออกจากการติดตั้ง"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "พื้นที่ทำงาน"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "พื้นที่ทำงาน"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "พื้นที่ทำงาน"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "เลือกกลุ่มแพ็คเก็จ"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Individual package selection"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "ขนาดรวม: %d / %d MB "
+msgid "Unselect All"
+msgstr ""
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "แพ็คเก็จชำรุด"
+msgid "Total size: %d / %d MB"
+msgstr "ขนาดรวม: %d / %d MB "
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "เวอร์ชัน:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "ขนาด:"
-#: steps_gtk.pm:405
-#, fuzzy, c-format
+#: steps_gtk.pm:426
+#, c-format
msgid "%d KB\n"
-msgstr "ขนาด: %d KB\n"
+msgstr ""
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "ความสำคัญ:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "คุณไม่สามารถเลือก/ไม่เลือกแพกเกจนี้"
-#: steps_gtk.pm:444
-#, fuzzy, c-format
+#: steps_gtk.pm:466
+#, c-format
msgid "due to missing %s"
-msgstr "ไม่มี kdesu "
+msgstr ""
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr ""
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr ""
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr ""
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "คุณไม่สามารถเลือก package นี้เนื่องจากคุณมีพื้นที่ไม่เพียงพอ"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "แพ็คเก็จเหล่านี้กำลังจะถูกติดตั้ง"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "แพ็คเก็จเหล่านี้กำลังจะถูกลบ"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "นี่คือแพกเกจที่ต้องติดตั้ง ไม่สามารถไม่เลือก"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "คุณไม่สามารถไม่เลือกแพกเกจนี้เพราะมันได้ถูกติดตั้งไปแล้ว"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "คุณไม่สามารถไม่เลือกแพกเกจนี้ มันจำเป็นที่จะต้องถูก upgrade"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr ""
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "ติดตั้ง"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "เลือกกลุ่มแพ็คเก็จ"
+msgstr ""
-#: steps_gtk.pm:499
-#, fuzzy, c-format
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
msgid "Updating package selection"
-msgstr "บันทึกกลุ่มแพ็คเก็จที่เลือก"
+msgstr ""
-#: steps_gtk.pm:504
-#, fuzzy, c-format
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
msgid "Minimal install"
-msgstr "ออกจากการติดตั้ง"
+msgstr ""
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "การบริหารโปรแกรม"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "เลือกแพ็คเก็จที่คุณต้องการติดตั้ง"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "กำลังติดตั้ง"
-#: steps_gtk.pm:564
-#, fuzzy, c-format
+#: steps_gtk.pm:590
+#, c-format
msgid "No details"
-msgstr "รายละเอียด"
+msgstr ""
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "เวลาที่เหลือ "
+msgstr "เวลาที่เหลือ:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "การประเมิน"
+msgstr ""
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "แพ็คเก็จ %d ชุด"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "รวมความ"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "การปรับแต่ง"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
msgid "not configured"
-msgstr "คอนฟิกใหม่"
-
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "เลือกกลุ่มแพ็คเก็จ"
+msgstr ""
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "มีปัญหาเกิดขึ้น"
-#: steps_interactive.pm:104
-#, fuzzy, c-format
+#: steps_interactive.pm:105
+#, c-format
msgid "Please choose your keyboard layout"
-msgstr "คุณต้องการเลือกคีย์บอร์ดเลย์เอ้าท์แบบใด "
+msgstr ""
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "ต่อไปนี้คือ keyboard ที่ใช้ได้"
+msgstr ""
-#: steps_interactive.pm:144
-#, fuzzy, c-format
+#: steps_interactive.pm:153
+#, c-format
msgid "Install/Upgrade"
-msgstr "ติดตั้ง/อัพเกรด "
+msgstr ""
-#: steps_interactive.pm:148
-#, fuzzy, c-format
+#: steps_interactive.pm:157
+#, c-format
msgid "Is this an install or an upgrade?"
-msgstr "นี่เป็นการติดตั้งหรือการอัพเกรด"
+msgstr ""
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "ติดตั้ง"
-#: steps_interactive.pm:152
-#, fuzzy, c-format
+#: steps_interactive.pm:161
+#, c-format
msgid "Upgrade %s"
-msgstr "Update"
+msgstr ""
-#: steps_interactive.pm:170
-#, fuzzy, c-format
+#: steps_interactive.pm:184
+#, c-format
msgid "Encryption key for %s"
-msgstr "รหัสผ่านไม่เหมือนกัน"
+msgstr ""
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "กำลังติดตั้ง"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1027,32 +1158,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "คอนฟิก IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1065,158 +1181,197 @@ msgstr ""
"กรุณาใส่ CD-ROM \"%s\" และกด OK\n"
"ถ้่าคุณไม่มี กรุณากด ยกเลิก (cancel) เพื่อหลีกเลี่ยงการติดตั้งจาก CD-ROM นี้"
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "กำลังหาแพ็คเก็จที่มีอยู่"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "โหลด"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "บันทึก"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "เปิดแฟ้ม"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "เลือกกลุ่มแพ็คเก็จ"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr ""
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr ""
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr ""
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "กำลังติดตั้งแพ็คเก็จ %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr ""
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr ""
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "กำลังเตรียมการติดตั้ง"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "กำลังติดตั้งแพ็คเก็จ %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "มีปัญหาการลำดับของแพ็คเก็จ:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "ทำงานต่อหรือไม่?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "บันทึกกลุ่มแพ็คเก็จที่เลือก"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "มีปัญหาการติดตั้งของแพ็คเก็จ:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "การคอนฟิกหลังการติดตั้ง"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
-#, fuzzy, c-format
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
msgid "Updates"
msgstr "อัพเดท"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "แพ็คเก็จเหล่านี้กำลังจะถูกติดตั้ง"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "เกิดข้อผิดพลาดขณะเพิ่มสื่อ"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1229,121 +1384,97 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s บน %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "ฮาร์ดแวร์"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Sound card"
-#: steps_interactive.pm:917
-#, fuzzy, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "คุณมีอันอื่นๆอีกหรือไม่?"
-
-#: steps_interactive.pm:919
+#: steps_interactive.pm:972
#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-
-#: steps_interactive.pm:929
-#, fuzzy, c-format
msgid "Graphical interface"
-msgstr "ให้เป็นกราฟฟิคเมื่อเริ่มต้น"
+msgstr ""
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "เน็ตเวิร์คกับอินเตอร์เน็ต"
-#: steps_interactive.pm:947
-#, fuzzy, c-format
+#: steps_interactive.pm:991
+#, c-format
msgid "Proxies"
-msgstr "Profile: "
+msgstr ""
-#: steps_interactive.pm:948
-#, fuzzy, c-format
+#: steps_interactive.pm:992
+#, c-format
msgid "configured"
-msgstr "คอนฟิกใหม่"
+msgstr ""
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "ระดับความปลอดภัย"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr ""
-#: steps_interactive.pm:981
-#, fuzzy, c-format
+#: steps_interactive.pm:1026
+#, c-format
msgid "activated"
-msgstr "แอ็คทีฟ"
+msgstr ""
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "ไม่ใช้งาน"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "กำลังเตรียมบูตโหลดเดอร์"
-
-#: steps_interactive.pm:1024
-#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr ""
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "ให้ใส่แผ่นฟล้อปปี้ลงในไดรว์ %s "
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "กำลังเตรียมการติดตั้งลงบน floppy"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1354,12 +1485,12 @@ msgstr ""
"\n"
"คุณต้องการออกจากการติดตั้งจริงๆหรือไม่?"
-#: steps_interactive.pm:1104
-#, fuzzy, c-format
+#: steps_interactive.pm:1144
+#, c-format
msgid "Congratulations"
-msgstr "ขอแสดงความยินดี"
+msgstr "ยินดีด้วย"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr ""
@@ -1454,13 +1585,6 @@ msgid ""
"Users"
msgstr "ผู้ใช้"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "ระบบเครือข่าย"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1503,95 +1627,6 @@ msgid ""
"Exit"
msgstr "เลิกทำงาน"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "บันทึกลงไฟล์"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "พื้นที่ทำงาน"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "กำลังติดต่อกับมิลเรอร์ไซต์เพื่อหารายการของแพ็คเก็จที่มีให้"
-
-#, fuzzy
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "ไม่สามารถ forkได้.%s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "สร้างfloppyสำหรับการติดตั้งแบบออโตเมติก"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "การติดตั้งแบบออโตเมติกสามารถทำงานแบบเต็มรูปแบบหากต้องการ\n"
-#~ "ในกรณีนั้นมันจะใช้ harddisk ทั้งหมด\n"
-#~ "(มันเหมาะกับการติดตั้งบนเครื่องอื่น)\n"
-#~ "คุณอาจอยากกลับไปเริ่มต้นติดตั้งใหม่\n"
-
-#~ msgid "Replay"
-#~ msgstr "เรียกอีกครั้ง"
-
-#~ msgid "Automated"
-#~ msgstr "อัตโนมัติ"
-
-#~ msgid "Save packages selection"
-#~ msgstr "บันทึกกลุ่มแพ็คเก็จที่เลือก"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "คุณต้องการใช้ aboot หรือไม่"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
-#~ msgstr ""
-#~ "การติดตั้ง aboot ล้มเหลว\n"
-#~ "พยายามติดตั้งถึงแม้พาติชั่นแรกอาจจะเสียหาย?"
-
-#~ msgid "All"
-#~ msgstr "ทั้งหมด"
-
-#~ msgid "TV card"
-#~ msgstr "TV card"
-
-#~ msgid "Boot"
-#~ msgstr "บู๊ต"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "การตรวจสอบสิทธิ์การใช้งาน"
-
-#~ msgid "%d packages"
-#~ msgstr "แพ็คเก็จ %d ชุด"
-
-#~ msgid "Language"
-#~ msgstr "เลือกภาษาที่คุณใช้"
-
-#~ msgid "License"
-#~ msgstr "สัญญาอนุญาต"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "เลือกชุดการติดตั้ง"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "การประเมิน"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "เลือกแพ็คเก็จ"
-
-#~ msgid "Users"
-#~ msgstr "ผู้ใช้"
-
-#~ msgid "Networking"
-#~ msgstr "ระบบเครือข่าย"
-
-#~ msgid "Configure X"
-#~ msgstr "คอนฟิกระบบ X"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "เลือกมิลเรอร์ไซต์ที่จะใช้ในการดาวน์โหลดแพ็คเก็จ"
diff --git a/perl-install/install/share/po/tl.po b/perl-install/install/share/po/tl.po
index 5d8e2a714..007d9b0d3 100644
--- a/perl-install/install/share/po/tl.po
+++ b/perl-install/install/share/po/tl.po
@@ -1,53 +1,81 @@
-# translation of DrakX-tl.po to Filipino
-# translation of DrakX.po to Filipino
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# Arys P. Deloso <arys@deloso.org>, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Arys P. Deloso <arys@deloso.org>, 2004
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-tl\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2004-09-15 13:35+0200\n"
-"Last-Translator: Arys P. Deloso <arys@deloso.org>\n"
-"Language-Team: Filipino <salinpinoy@comitus.net>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Tagalog (http://www.transifex.com/MageiaLinux/mageia/language/"
+"tl/)\n"
+"Language: tl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
-#, fuzzy, c-format
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Mayroon ba kayong isa pa?"
+msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -56,117 +84,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
+#: any.pm:162
#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
-#, fuzzy, c-format
msgid "Network (HTTP)"
-msgstr "Network %s"
+msgstr ""
-#: any.pm:122
-#, fuzzy, c-format
+#: any.pm:163
+#, c-format
msgid "Network (FTP)"
-msgstr "Network %s"
+msgstr ""
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
#, c-format
-msgid "URL of the mirror?"
+msgid "NFS setup"
msgstr ""
-#: any.pm:171
+#: any.pm:225
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Please enter the hostname and directory of your NFS media"
msgstr ""
-#: any.pm:182
+#: any.pm:229
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Hostname missing"
msgstr ""
-"Nakikipag-alam sa web site ng Mandriva Linux para makuha ang talaan ng mga "
-"available na mirror..."
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Directory"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
msgstr ""
-"Nakikipag-alam sa web site ng Mandriva Linux para makuha ang talaan ng mga "
-"available na mirror..."
-#: any.pm:197
+#: any.pm:327
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Pumili ng mirror kung saan kukunin ang mga package"
+msgid "Tainted Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:329
#, c-format
-msgid "NFS setup"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:228
+#: any.pm:367
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:232
+#: any.pm:368
#, c-format
-msgid "Hostname missing"
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:233
+#: any.pm:419
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:237
+#: any.pm:420
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains non free software.\n"
msgstr ""
-#: any.pm:238
+#: any.pm:421
#, c-format
-msgid "Directory"
-msgstr "Directory"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
-#: any.pm:260
+#: any.pm:422
#, c-format
-msgid "Supplementary"
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
msgstr ""
-#: any.pm:295
-#, fuzzy, c-format
+#: any.pm:423
+#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Hindi mahanap ang %s sa %s"
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
-#: any.pm:334
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Naghahanap ng mga package na naka-install..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Naghahanap ng mga package na i-a-upgrade..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -180,87 +238,87 @@ msgstr ""
"\n"
"Gusto ninyo ba talagang tanggalin ang mga package na ito?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "May error sa pagbabasa ng file na %s"
-#: any.pm:1020
-#, fuzzy, c-format
+#: any.pm:1283
+#, c-format
msgid "The following disk(s) were renamed:"
-msgstr "- %s ay tinanggal\n"
+msgstr ""
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr ""
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr ""
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "FTP"
-msgstr "gFTP"
+msgstr ""
-#: any.pm:1079
-#, fuzzy, c-format
+#: any.pm:1342
+#, c-format
msgid "NFS"
-msgstr "PFS"
+msgstr ""
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Network"
-#: any.pm:1102
-#, fuzzy, c-format
+#: any.pm:1365
+#, c-format
msgid "Please choose a media"
-msgstr "Pumili ka"
+msgstr ""
-#: any.pm:1118
-#, fuzzy, c-format
+#: any.pm:1381
+#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Mayroon ng file. Gamitin ito?"
+msgstr ""
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Pahintulot ipinagkaila"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
-#, fuzzy, c-format
+#: any.pm:1454
+#, c-format
msgid "Bad media %s"
-msgstr "idinagdag ang medium na %s"
+msgstr ""
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Hindi makagawa ng mga screenshot bago mag-partisyon"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Ang mga screenshot ay magiging available matapos ang install sa %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Nag-i-install"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Configuration"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Dapat ninyo ring i-format ang %s"
@@ -285,25 +343,25 @@ msgstr "Ginagawang \"up\" ang network"
msgid "Bringing down the network"
msgstr "Ginagawang \"down\" ang network"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
-#, fuzzy, c-format
+#: media.pm:797
+#, c-format
msgid "Copying in progress"
-msgstr "Tumatakbo ang pagtitiktik"
+msgstr ""
#: pkgs.pm:32
#, c-format
@@ -330,82 +388,98 @@ msgstr "mainam"
msgid "maybe"
msgstr "baka sakali"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "May \"error\" na nangyari"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "May nangyaring fatal error: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
-#: pkgs.pm:792
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d transaksyong pag-i-install ay nabigo"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Ini-install ang package na %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Workstation"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Pang-opisina na Workstation"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Mga pang-opisinang program: mga wordprocessor (OpenOffice.org Writer, "
-"Kword), mga spreadsheet (OpenOffice.org Calc, Kspread), mga pdf viewer, etc"
+"Mga pang-opisinang program: mga wordprocessor (LibreOffice Writer, Kword), "
+"mga spreadsheet (LibreOffice Calc, Kspread), mga pdf viewer, etc"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Mga pang-opisinang program: mga wordprocessor (kword, abiword), mga "
-"spreadsheet (kspread, gnumeric), mga pdf viewer, etc"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Pang-laro na istasyon"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Mga nakakalibang na program: arcade, mga board game, strategy, etc"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Pang-multimedia na istasyon"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Mga program na pang-play/edit ng tunog, musika at video"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Pang-internet na istasyon"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -414,193 +488,193 @@ msgstr ""
"Kumpol ng mga kagamitang pangbasa at pangsulat ng mail at news (mutt, tin..) "
"at pang-browse ng Web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Network Computer (client)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Mga client para sa iba't-ibang mga protocol kasama ang ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Kagamitang pangpadali ng configuration ng inyong computer"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Kagamitang Pang-Console"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Mga editor, shell, file tool, terminal"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Paglinang (Development)"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "mga C at C++ development library, program at include file"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Dokumentasyon"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Mga Libro at Howto tungkol sa Linux at Free Software"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base. Suporta para sa mga third party application"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Web Server"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Server"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Firewall/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet gateway"
-#: share/meta-task/compssUsers.pl:85
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:92
+#, c-format
msgid "Mail/News"
-msgstr "/File/_Bago"
+msgstr ""
-#: share/meta-task/compssUsers.pl:86
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:93
+#, c-format
msgid "Postfix mail server, Inn news server"
-msgstr "Postfix mail server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:89
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:97
+#, c-format
msgid "Directory Server"
-msgstr "Directory Kung Saan Kukunin ang Ibabalik"
+msgstr ""
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP Server"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr ""
-#: share/meta-task/compssUsers.pl:97
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:107
+#, c-format
msgid "DNS/NIS"
-msgstr "DNS"
+msgstr ""
-#: share/meta-task/compssUsers.pl:98
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:108
+#, c-format
msgid "Domain Name and Network Information Server"
-msgstr "Domain Name Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:101
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:112
+#, c-format
msgid "File and Printer Sharing Server"
-msgstr "Printer Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS server, Samba server"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Database"
-#: share/meta-task/compssUsers.pl:106
-#, fuzzy, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL o MySQL database server"
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Mail"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix mail server"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL o MySQL database server"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL o MariaDB database server"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Network Computer server"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS server, SMB server, Proxy server, ssh server"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Graphical na Kapaligiran"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE Workstation"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -609,12 +683,12 @@ msgstr ""
"Ang K Desktop Environment, ang pinakabatayang graphical environment na may "
"koleksyon ng mga kasabay na kagamitan"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME Workstation"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -623,69 +697,112 @@ msgstr ""
"Isang graphical environment na may kumpol ng mga user-friendly (madaling "
"gamitin) na application at kagamitang pang-desktop"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Desktop"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Isang graphical environment na may kumpol ng mga user-friendly (madaling "
-"gamitin) na application at kagamitang pang-desktop"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Ibang Mga Graphical Desktop"
-#: share/meta-task/compssUsers.pl:151
-#, fuzzy, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Icewm, Window Maker, Enlightenment, Fvwm, etc"
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:218
+#, c-format
msgid "Utilities"
-msgstr "Philippines"
+msgstr ""
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH Server"
-#: share/meta-task/compssUsers.pl:181
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:225
+#, c-format
msgid "Webmin"
-msgstr "Webcam"
+msgstr ""
-#: share/meta-task/compssUsers.pl:182
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:226
+#, c-format
msgid "Webmin Remote Configuration Server"
-msgstr "Configuration ng Terminal Server"
+msgstr ""
-#: share/meta-task/compssUsers.pl:186
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:230
+#, c-format
msgid "Network Utilities/Monitoring"
-msgstr "Pagmo-monitor ng Network"
+msgstr ""
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
-#: share/meta-task/compssUsers.pl:191
-#, fuzzy, c-format
-msgid "Mandriva Wizards"
-msgstr "<b>Mandriva Store</b>"
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
-#: share/meta-task/compssUsers.pl:192
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:236
+#, c-format
msgid "Wizards to configure server"
-msgstr "Nabigong i-configure ang printer na \"%s\"!"
+msgstr ""
#: steps.pm:85
#, c-format
@@ -696,7 +813,7 @@ msgstr ""
"May \"error\" na nangyari, pero hindi ko alam kung paano ayusin\n"
"ng maganda. Mapanganib magpatuloy."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -716,336 +833,340 @@ msgstr "Pumpasok sa hakbang na `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Pag-install ng Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Pag-install ng %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> pagitan ng mga elemento"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Ang inyong sistema mababa sa kakayahan. Maaari kayong magkaproblema\n"
-"sa pag-install ng Mandriva Linux. Kung mangyari ito, maaari ninyong subukan\n"
+"sa pag-install ng %s. Kung mangyari ito, maaari ninyong subukan\n"
"ang \"text install\". Para dito, pindutin ang `F1' kapag nagbo-boot sa "
"CDROM,\n"
"at ipasok ang `text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Maliitang install"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Desktop"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Desktop"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Desktop"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Pagpili ng Pangkat ng mga Package"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Isa-isang pagpili ng package"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Kabuuang laki: %d / %d MB"
+msgid "Unselect All"
+msgstr "Di-nakapili Lahat"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Sirang package"
+msgid "Total size: %d / %d MB"
+msgstr "Kabuuang laki: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Version: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Laki: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Kahalagahan: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Maaari ninyong piliin/di-piliin ang package na ito"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "dahil sa nawawalang %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "dahil sa hindi na-satisfy na %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "sinusubukang i-promote ang %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "para maitago ang %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Hindi ninyo maaaring piliin ang package na ito dahil walang sapat na puwang"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Ang mga sumusunod na package ay ii-install"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Ang mga sumusunod na package ay tatanggalin"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ito ay kinakailangang package, hindi ito maaring di-piliin"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Hindi ninyo maaaring di-piliin ang package na ito. Naka-install na ito"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr ""
"Hindi ninyong maaaring di-piliin ang package na ito. Dapat i-upgrade ito"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Ipakita kaagad ang mga napiling package"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "I-install"
-#: steps_gtk.pm:498
-#, fuzzy, c-format
+#: steps_gtk.pm:519
+#, c-format
msgid "Load/Save selection"
-msgstr "Pagpili ng package"
+msgstr ""
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Ina-update ang pagpili ng package"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Maliitang install"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Pangangasiwa ng Software"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Piliin ang mga package na gusto ninyong i-install"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Nag-i-install"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Walang detalye"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Nalalabing oras "
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Nagkukuro-kuro"
+msgstr ""
-#: steps_gtk.pm:614
-#, fuzzy, c-format
+#: steps_gtk.pm:637
+#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d mga package"
-msgstr[1] "%d mga package"
+msgstr[0] ""
+msgstr[1] ""
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Kabuuan"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Configure"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "hindi na-configure"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Pagpili ng Pangkat ng mga Package"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr ""
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "May \"error\" na nangyari"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Piliin ang inyong layout ng keyboard"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Narito ang buong talaan ng mga available na keyboard"
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "I-install/I-upgrade"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Ito ba ay install o upgrade?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "I-install"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "I-pgrade ang %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Encryption key para sa %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Nag-i-install"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1054,38 +1175,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Kino-configure ang IDE"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Walang puwang para sa 1MB na bootstrap! Magpapatuloy ang install, pero para "
-"ma-boot ang inyong sistema, kailangan ninyong gumawa ng partisyon ng "
-"bootstrap sa DiskDrake"
-#: steps_interactive.pm:293
-#, fuzzy, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
msgstr ""
-"Walang puwang para sa 1MB na bootstrap! Magpapatuloy ang install, pero para "
-"ma-boot ang inyong sistema, kailangan ninyong gumawa ng partisyon ng "
-"bootstrap sa DiskDrake"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1099,73 +1199,71 @@ msgstr ""
"ang Ok pagkatapos. Kung wala kayo nito, pindutin ang Cancel para iwasang\n"
"mag-install mula sa CD-ROM na ito."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Naghahanap ng mga available na package..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
-#, fuzzy, c-format
+#: steps_interactive.pm:428
+#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"Pakipili ang i-load o i-save ang pagpili ng package sa floppy.\n"
-"Ang format ay katulad ng sa mga ginawang auto_install na floppy."
-#: steps_interactive.pm:443
-#, fuzzy, c-format
+#: steps_interactive.pm:430
+#, c-format
msgid "Load"
-msgstr "XLoad"
+msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "I-save"
-#: steps_interactive.pm:451
-#, fuzzy, c-format
+#: steps_interactive.pm:438
+#, c-format
msgid "Bad file"
-msgstr "I-load ang mga file"
+msgstr ""
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Pagpili ng Pangkat ng mga Package"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Ang piniling laki ay mas malaki sa available na puwang"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Uri ng install"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1174,87 +1272,126 @@ msgstr ""
"Wala pa kayong napiling pangkat ng mga package.\n"
"Pakipili ang maliitang pag-i-install na gusto ninyo:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "May X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Ini-install ang package na %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "May pinakabatayang dokumento (inirerekomenda!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Talagang maliitang install (walang urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Inihahanda ang pag-i-install"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Ini-install ang package na %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "May error sa pagsasaayos ng mga package:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Magpatuloy pa rin?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "I-save ang mga piniling package"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "May error sa pag-i-install ng mga package na:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Configuration matapos ang install"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Mga update"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Ang mga sumusunod na package ay ii-install"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Kabiguan kung nagdadagdag ng medium"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1277,113 +1414,81 @@ msgstr ""
"\n"
"Gusto ninyong i-install ang mga update ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s sa %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Sound card"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Mayroon ba kayong ISA na sound card?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Patakbuhin ang \"alsaconf\" o \"sndconfig\" pagkatapos mag-install para i-"
-"configure ang iyong sound card"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Walang natiktikang sound card. Subukan ang \"harddrake\" pagkatapos mag-"
-"install"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Graphical interface"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Network & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Mga Proxy"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "na-configure"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Level ng Seguridad"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Firewall"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "na-activate"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "na-disable"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
"Hindi pa ninyo na-configure ang X. Sigurado kayong gusto ninyong gawin ito?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Inihahanda ang bootloader..."
+msgid "Preparing initial startup program..."
+msgstr ""
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, fuzzy, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Mukhang mayroon kayong OldWorld (makaluma) o Hindi Kilalang\n"
-"makina, hindi gagana ang yaboot para sa inyo.\n"
-"Ang install ay magpapatuloy, ngunit kakailanganin ninyong\n"
-"gamitin ang BootX o ibang paraan para i-boot ang inyong makina"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1392,17 +1497,17 @@ msgstr ""
"Sa level ng seguridad na ito, ang access sa mga file na nasa partisyon ng "
"Windows ay limitado sa tagapangasiwa."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Magsuksok ng blangkong floppy sa drive %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Lumilikha ng auto install floppy..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1413,12 +1518,12 @@ msgstr ""
"\n"
"Gusto ninyo ba talagang sumuko ngayon?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Maligayang bati"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "I-reboot"
@@ -1455,7 +1560,7 @@ msgstr "Mouse"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Pagtitiktik ng hard drive"
+msgstr "Pagtitiktik ng hard disk drive"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
@@ -1513,13 +1618,6 @@ msgid ""
"Users"
msgstr "Users"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Pagne-Network"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1562,144 +1660,12 @@ msgid ""
"Exit"
msgstr "Exit"
-#, fuzzy
-#~ msgid "Downloading file %s..."
-#~ msgstr "Ipinapadala ang mga file..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Pinili ninyo ang mga sumusunod na mga server: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Bilang default, ang mga server ay papaganahin. Wala silang kilalang "
-#~ "problema\n"
-#~ "sa seguridad, pero ilang mga bago ay maaaring makita. Kung gayon, dapat\n"
-#~ "ninyong tiyakin na mag-upgrade ng pinakamaagap.\n"
-#~ "\n"
-#~ "\n"
-#~ "Gusto ninyo talagang i-install ang mga server na ito?\n"
-
-#, fuzzy
-#~ msgid "IceWm Desktop"
-#~ msgstr "Desktop"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Nakikipag-alam sa mirror para makuha nag talaan ng mga available na "
-#~ "package..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Hindi nakayang makipag-alam sa mirror na %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Gumawa ng auto install floppy"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Ang auto install ay maaaring maging talagang\n"
-#~ "automatic kung gugustuhin. Sa ganitong kaso\n"
-#~ "hahawakan nito ang hard drive!! (Ito ay sinadya\n"
-#~ "para sa pag-i-install sa ibang box o makina).\n"
-#~ "\n"
-#~ "Maaari ninyong naising i-replay ang pag-i-install.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Gawin ulit"
-
-#~ msgid "Automated"
-#~ msgstr "Na-automatic"
-
-#~ msgid "Save packages selection"
-#~ msgstr "I-save ang mga piniling package"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Gusto ninyong gamiting ang aboot?"
-
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "May error sa pag-install ng aboot,\n"
-#~ "subukang ipilit ang pag-i-install kahit na sirain nito ang unang "
-#~ "partisyon?"
-
-#~ msgid "All"
-#~ msgstr "Lahat"
-
-#~ msgid "TV card"
-#~ msgstr "TV card"
-
-#~ msgid "Boot"
-#~ msgstr "Boot"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Authentication"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
+#~ "Nakikipag-alam sa web site ng %s para makuha ang talaan ng mga available "
+#~ "na mirror..."
-#, fuzzy
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "%d mga package"
-#~ msgstr[1] "%d mga package"
-
-#~ msgid "%d packages"
-#~ msgstr "%d mga package"
-
-#~ msgid "Language"
-#~ msgstr "Wika"
-
-#~ msgid "License"
-#~ msgstr "Lisensiya"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Piliin ang klase ng pag-i-install"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Nagkukuro-kuro"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Piliin ang mga package na ii-install"
-
-#~ msgid "Users"
-#~ msgstr "Users"
-
-#~ msgid "Networking"
-#~ msgstr "Pagne-Network"
-
-#~ msgid "Configure X"
-#~ msgstr "I-configure ang X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Hindi mapasok ang mga \"kernel module\" na katapat ng inyong kernel (ang "
-#~ "file na %s ay nawawala), nangangahulugang hindi naka-sync ang inyong boot "
-#~ "floppy sa Installation medium (lumikha ng bagong boot floppy)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Pumili ng mirror kung saan kukunin ang mga package"
diff --git a/perl-install/install/share/po/tr.po b/perl-install/install/share/po/tr.po
index 56b390936..22f470bf8 100644
--- a/perl-install/install/share/po/tr.po
+++ b/perl-install/install/share/po/tr.po
@@ -1,65 +1,87 @@
-# translation of DrakX.po to Turkish
+# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
-# ############################################
#
-#
-# #############################################
-# Ömer Fadıl USTA <omer_fad@hotmail.com> , 1999-2003.
-# Tuncay YENİAY <tuncayyeniay@mynet.com>,2002.
-# Nazmi Savga <nsavga@doruk.net.tr>,2001.
-# Durmuş Celep <durmusc_tr@yahoo.com>,2002.
-# Erçin EKER <erc.caldera@gmx.net>, 2003.
-# Atilla ÖNTAŞ <atilla_ontas@hotmail.com>, 2008.
-# Atilla ÖNTAŞ <atilla_ontas@mandriva.org>, 2008.
-# Atilla ÖNTAŞ <atilla_ontas@mandriva.com>, 2009.
-# Atilla ÖNTAŞ <atilla_ontas@mandriva.org>, 2009.
+# Translators:
+# Atilla ÖNTAŞ <atilla_ontas@hotmail.com>, 2008-2016
+# tarakbumba <tarakbumba@gmail.com>, 2013-2014,2016
+# tarakbumba <tarakbumba@gmail.com>, 2013
+# Erçin EKER <erc.caldera@gmx.net>, 2003
+# Fırat Kutlu <firatkutlu@gmail.com>, 2014
+# Muha Aliss <muhaaliss@gmail.com>, 2021
+# Serdar Sağlam <teknomobil@msn.com>, 2019
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-09 21:06+0300\n"
-"Last-Translator: Atilla ÖNTAŞ <atilla_ontas@mandriva.org>\n"
-"Language-Team: Turkish <cooker-i18n@mandrivalinux.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2021-02-20 01:38+0000\n"
+"Last-Translator: Muha Aliss <muhaaliss@gmail.com>\n"
+"Language-Team: Turkish (http://www.transifex.com/MageiaLinux/mageia/language/"
+"tr/)\n"
+"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Lokalize 0.3\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Bize Katılın!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Sizin olsun!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Sizin seçiminiz!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Ofis araçları"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Ev eğlencesi"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Çocuklar için"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Aile için!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Geliştiriciler için!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Teşekkürler!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Özgür olun!"
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Başka tamamlayıcı veri kaynağınız var mı?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -72,94 +94,57 @@ msgstr ""
"\n"
"Yapılandırılacak tamamlayıcı bir veri kaynağınız var mı?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Ağ (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Ağ (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Ağ (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Yansının URL bağlantısı?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL ftp:// veya http:// ile başlamak zorundadır."
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Yansı adreslerini almak için Mandriva Linux web sayfasına bağlantı "
-"kuruluyor..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Yansı adreslerini almak için Mandriva Linux web sayfasına bağlantı kurma "
-"başarısız"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Paketleri alacağınız bir yansı adresi seçiniz"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS kurulumu"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "NFS kaynağı için bir sunucu adı ve dizini giriniz."
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
-msgstr "Sunucu adı yok"
+msgstr "Makine adı yok"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Dizin \"/\" ile başlamalıdır."
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS bağı için sunucu adı?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Dizin"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Tamamlayıcı"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -168,23 +153,95 @@ msgstr ""
"Bu yansı üzerinde paket listesi bulunamadı. Yerinin doğru olduğundan emin "
"olun."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Makinenizdeki bazı donanımların özgür yazılım sürücülerinin çalışması için, "
+"özgür olmayan üretici yazılımına gereksinimi vardır."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "\"%s\" etkinleştirmelisiniz"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" sistemlerin çeşitli parçalarını ve uygulamalarını içerir"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" özgür olmayan yazılım içerir.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Belirli aygıtların çalışması için gereken üretici yazılımlarını da içerir "
+"(örn: bazı ATI/AMD ekran kartları, bazı ağ kartları, bazı RAID kartları, ...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"\"%s\" yazılım patentlerinden dolayı her ülkede dağıtılamayan yazılım içerir."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "İlave yeteneklerle yenilenen \"%s\" adresinden yazılım da içerir."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "İsterseniz burada daha fazla ortam etkinleştirebilirsiniz."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "Bu araç \"%s\" ortamı için paket güncellemelerini sağlar"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Kurulu paketler inceleniyor..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Yükseltilecek paketler bulunuyor"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Yükseltmeye hazırlık olmak üzere paketler kaldırılıyor..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -197,87 +254,87 @@ msgstr ""
"\n"
"Bu paketleri kaldırmak istiyor musunuz?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%s dosyası okunurken hata oluştu"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Şu diskler yeniden adlandırılacak:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (eski adı %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Ağ"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Lütfen bir medya seçin"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Bu dosya zaten var. Üzerine yazılsın mı?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "İzin verilmedi"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Kötü NFS adı"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Kötü veri kaynağı %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Disk bölümlemesi yapılmadan ekran örnekleri alınamaz."
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Ekran örnekleri %s kurulduktan sonra mümkün olacak"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Kurulum"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Yapılandırma"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Ayrıca %s biçemlendirilmelidir"
@@ -301,22 +358,22 @@ msgstr "Ağ bağlanıyor"
msgid "Bringing down the network"
msgstr "Ağ ayrılıyor"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Dosya alınıyor. Lütfen bekleyin"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "ortam eklenemiyor"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Bazı paketler sonradan kullanım için disklere kopyalanıyor"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Kopyalama sürüyor"
@@ -346,7 +403,23 @@ msgstr "güzel"
msgid "maybe"
msgstr "belki"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "XML meta-data'dan paket bilgileri alınıyor..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"\"%s\" ortamı için xml bilgisi yok, yalnız %s paketi için kısmi bir sonuç,"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Tanımlanmamış"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -355,75 +428,76 @@ msgstr ""
"%s tarafından istenen bazı paketler kurulamaz:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Bir hata oluştu:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Bir ölümcül hata oluştu: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Yeniden sorma"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d kurulum yönergesi başarısız oldu"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "Paket kurulumu başarısız oldu:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "İş istasyonu"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Ofis iş istasyonu"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Ofis programları: kelime işlemciler (OpenOffice.org Writer, Kword), "
-"OpenOffice.org Calc, Kspread, pdf göstericiler, vb.."
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Ofis programları: kelime işlemciler (kword, abiword), kspread, gnumeric, pdf "
-"göstericiler, vb.."
+"Ofis programları: kelime işlemciler (LibreOffice Writer, Kword), LibreOffice "
+"Calc, Kspread, pdf göstericiler, vb.."
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Oyun Konsolu"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Eğlence programları: kart oyunları, taktik ve strateji, vb.."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Çoklu ortam konsolu"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Ses ve video çalma/düzenleme uygulamaları"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet konsolu"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -432,205 +506,205 @@ msgstr ""
"E-posta alışverişi ve haber grubu istemci programları (pine, mutt, tin..) ve "
"web istemcileri "
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Ağ Makinası (client)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "ssh içeren diğer ağ öğeleri için protokoller"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Sisteminizin ayarlarını düzenleyecek uygulama"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsol Araçları"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Metin düzenleyiciler, kabuklar, dosya araçları, terminaller"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Geliştirme"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C ve C++ geliştirme kütüphaneleri, programlar ve include dosyaları"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Belgeler"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Serbest Yazılım ve Linux üzerine Kitaplar ve Nasıl belgeleri"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standartları Temeli. Üçüncü parti uygulama desteği"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Web Sunucu"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Grup"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab Sunucu"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Güvenlik Kalkanı/Router"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet ağ geçidi"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Posta/Haber"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix posta sunucu, Inn haber sunucu"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Dizin Sunucusu"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP sunucusu"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Alan adı ve Ağ Bilgileri Sunucusu"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Dosya ve Yazdırma Paylaşım Sunucusu"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS sunucu, Samba sunucu"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Veritabanı"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL veya MySQL veritabanı sunucusu"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL veya MariaDB veritabanı sunucusu"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache ve Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Posta"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix posta sunucu"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL veya MySQL veritabanı sunucusu"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL veya MariaDB veritabanı sunucusu"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Ağ Makinası sunucusu"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS sunucusu, SMB sunucusu, Vekil Sunucu, ssh Sunucu"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafik Ortamı"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE İş istasyonu"
+msgid "Plasma Workstation"
+msgstr "Plasma İş istasyonu"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "KDE Masaüstü Ortamı, temel grafik ortamla birlikte birleşik araçlar"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME İş istasyonu"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -638,66 +712,111 @@ msgid ""
msgstr ""
"Kullanıcı dostu uygulamalar ve masaüstü araçlarına sahip görsel bir ortam "
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "LXDE Masaüstü"
+msgid "Xfce Workstation"
+msgstr "Xfce İş İstasyonu"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
"Kullanıcı dostu uygulamalar ve masaüstü araçlarına sahip hafif bir görsel "
-"ortam"
+"bir ortam "
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE İş istasyonu"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon İş istasyonu"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "GNOME temelli bir grafik ortamı"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt Masaüstü"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "Yeni nesil QT ile derlenmiş hafif masaüstü ortamı"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment Masaüstü"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "Bunlara özgülenmiş hızlı ve hafif bir görsel ortam"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE Masaüstü"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Hafif ve hızlı bir grafiksel ortam"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Diğer Görsel Masaüstleri"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, etc"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, v.b."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Araçlar"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH Sunucu"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin Uzak Yapılandırma Sunucusu"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Ağ Araçları/İzleme"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "İzleme araçları, işlem sayımı, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva Sihirbazları"
+msgid "Mageia Wizards"
+msgstr "Mageia Sihirbazları"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Sunucuyu yapılandırmak için Sihirbazlar"
@@ -711,7 +830,7 @@ msgstr ""
"Bir hata oluştu, ancak sebebi saptanamadı.\n"
"Devam edebilirsiniz, ama risk size ait!"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -731,251 +850,256 @@ msgstr "`%s' adımına başlanıyor\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux Kurulum %s"
+msgid "%s Installation %s"
+msgstr "%s Kurulum %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "gezinmek için <Tab>/<Alt-Tab>"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg sunucusunun başlaması yavaş. Lütfen bekleyin..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Sistem kaynaklarınız kısıtlı. Mandriva Linux'yi kurarken sorunlarınız\n"
+"Sistem kaynaklarınız kısıtlı. %s'yi kurarken sorunlarınız\n"
"olabilir. Bu durum oluşursa, metin tabanlı kurulumu deneyebilirsiniz.\n"
"Bunun için CDROM'dan açtıktan sonra `F1'e basın, ve komut satırına\n"
"`text' yazın."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Mandriva KDE Masüstü'nü Kur"
+msgid "Media Selection"
+msgstr "Paket Grubu Seçimi"
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr "%s Plasma Masaüstünü Kur"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Mandriva GNOME Masüstü'nü Kur"
+msgid "Install %s GNOME Desktop"
+msgstr "%s GNOME Masaüstünü Kur"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Kişisel kurulum"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE Masaüstü"
+msgid "Plasma Desktop"
+msgstr "Plasma Masaüstü"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME Masaüstü"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "Kişisel Masaüstü"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "'%s' masaüstünün ön izlemesini burada görebilirsiniz."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Daha büyük ön izlemeler görebilmek için resim üzerine tıklayın"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Paket Grubu Seçimi"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Tek tek paket seçimi"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Toplam boyut: %d / %d MB"
+msgid "Unselect All"
+msgstr "Tümünü Seçimden Çıkar"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Hatalı paket"
+msgid "Total size: %d / %d MB"
+msgstr "Toplam boyut: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Sürüm: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Boyut: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Önem: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Bu paket seçimlik değildir"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s paketinin kayıplığından"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "%s' den dolayı yetersiz"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "%s yükseltmesi deneniyor"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s'i korumak için"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Yeterli yeriniz kalmadığından bu paketi seçemezsiniz"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Aşağıdaki paketler kurulacaktır"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Aşağıdaki paketler sistemden silinecektir"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Bu zorunlu bir pakettir, seçmemek olmaz"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Bu paketi seçimlerinizden çıkaramazsınız. Zaten kurulmuş."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Bu paketi seçimlerinizden çıkaramazsınız. Yükseltilmek zorunda"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Kendiliğinden seçilen paketleri göster"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Kur"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Seçimi kaydet/yükle"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Paket seçimini güncelleniyor"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Hiyerarşik ve düz paket listesi arasında geçiş yapın"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "En ufak kurulum"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Yazılım Yöneticisi"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Kurmak istediğiniz paketleri seçin"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Kuruluyor"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Ayrıntısız"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Kalan süre :"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(tahminen...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d paket"
+msgstr[0] "%d adet paket"
+msgstr[1] "%d adet paket"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Özet"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Yapılandır"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "yapılandırılmamış"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Paket Grubu Seçimi"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -984,86 +1108,84 @@ msgstr ""
"Şu kurulum medyası bulundu.\n"
"Bu bazılarını geçmek isterseniz, şimdi seçimden çıkarabilirsiniz."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Kurulumdan önce CD'lerin içeriğini sabit diskinize kopyalayabilirsiniz.\n"
-"Sabit diskten kruluma devam edilecek ve paketler sistem tamamen kurulduğunda "
-"da hazır olacaktır."
+"Sabit diskten kuruluma devam edilecek ve paketler sistem tamamen "
+"kurulduğunda da hazır olacaktır."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "CD'lerin tamamını kopyala"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Bir hata oluştu"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Lütfen klavye düzeninizi seçiniz"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Mevcut tüm klavye düzenlerinin listesi:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Kur/Yükselt"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Bu bir yükleme mi yoksa yükseltme mi ?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
-msgstr ""
-"_: This is a noun:\n"
-"Kurulum"
+msgstr "Kurulum"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s Yükselt"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s için Parola"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Kurulumu iptal et, sistemi yeniden başlat"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Yeni Kurulum"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Önceki kurulumu güncelle (önerilmez)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1071,48 +1193,26 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Kurulum aracı, halihazırda kurulu olan Mandriva Linux sisteminizin güvenli "
-"bir\n"
-"
biçimde %s sistemine yükseltilemeyeceğini algıladı.\n"
-"
\n"
-"
Önceki kurulumunuzun yerini alacak yeni bir kurulum önerilir.\n"
-"
\n"
-"
Uyarı: \"Yeni Kurulum\"u seçmeden önce tüm kişisel verilerinizi "
+"Kurulum aracı, halihazırda kurulu olan Mageia sisteminizin güvenli bir\n"
+"biçimde %s sistemine yükseltilemeyeceğini algıladı.\n"
+"\n"
+"Önceki kurulumunuzun yerini alacak yeni bir kurulum önerilir.\n"
+"\n"
+"Uyarı: \"Yeni Kurulum\"u seçmeden önce tüm kişisel verilerinizi "
"yedeklemeniz\n"
-"
önerilir."
+"önerilir."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "IDE yapılandırması"
+msgid "Configuring CD/DVD"
+msgstr "CD/DVD Yapılandırılıyor"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-" 1 MB lık önyükleme bölümünün oluşturulması için disk başlangıcında yeterli "
-"alan yok! Kurulum devam edecektir fakat açılış için DiskDrake'i kullanarak "
-"bir önyükleme disk bölümü oluşturmanız gerekecek"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"PPC PReP Boot ön yükleme alanı oluşturacaksınız! Kurulum devam edecek; ancak "
-"açılış için DiskDrake'i kullanarak bir önyükleme disk bölümü oluşturmanız "
-"gerekecek"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1125,20 +1225,20 @@ msgstr ""
"\"%s\" etiketli Cd-Rom'u sürücüye takın ve TAMAM'a basın.\n"
"Eğer Cd-Rom elinizde yoksa bu Cd-Rom'dan kurmamak için VAZGEÇ'e basın."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Mevcut paketler taranıyor"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Sisteminizde kurulum veya yükseltme için yeterli alan yok (% dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1147,52 +1247,52 @@ msgstr ""
"Lütfen paket seçimini yükle veya kaydete tıklayınız.\n"
"Otomatik kurulum dosyaları ile aynı biçemde oluşturulacaktır."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Yükle"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Kaydet"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Dosya hatalı"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
-msgstr " "
+msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Masaüstü Seçimi"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "İş istasyonu masaüstü profili seçebilirsiniz."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Seçilen boyut boş disk alanından daha büyük"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Kurulum türü"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1201,87 +1301,130 @@ msgstr ""
"Seçilmiş bir paket grubu yok\n"
"Lütfen isteğinize uyan ve en az yer kaplayacak kurulumu seçin:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X ile"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s paketi kuruluyor"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Önerilen paketleri kur"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Temel belgeler olsun (önerilir!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
-msgstr "Gerçekten en küçük kurulum (özellikle urpmi-siz)"
+msgstr "Gerçekten en küçük kurulum (özellikle urpmi yok)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Yükseltme hazırlanıyor..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Kurulum hazırlanıyor"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s paketi kuruluyor"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Paketler düzenlenirken bir hata oluştu:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Yine de devam edilsin mi?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Yeniden Dene"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Bu paketi geç"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "\"%s\" medyasından tüm paketleri geç."
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Medya ve paket seçimine geri dön."
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Paket %s kurulurken bir hata oluştu."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Kurulum sonrası yapılandırma"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Lütfen Update Module medyasının %s sürcüsünde olduğuna emin olun"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Güncellemeler"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Şimdi çevrimiçi ortam ayarlama fırsatınız var."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Bu sayede güvenlik güncellemelerini edinebileceksiniz."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Bu ortamları ayarlamak için çalışan bir İnternet bağlanısına \n"
+"ihtiyacınız var.\n"
+"\n"
+"Güncelleme ortamını ayarlamak istiyor musunuz?"
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Aşağıdaki paketler kurulacaktır"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Yeniden dene?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Ortam eklenirken hata oluştu"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1305,110 +1448,80 @@ msgstr ""
"\n"
"Güncellemeleri kurmak istiyor musunuz ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s üstündeki %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Donanım"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Ses Kartı"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Bir ISA ses kartınız var mı?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Ses kartınızı yapılandırmak için kurulumdan sonra \"sndconfig\" aracını "
-"çalıştırın."
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Ses kartı bulunamadı. Kurulumdan sonra \"harddrake\" ile deneyin."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafiksel arabirim"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Ağ & İnternet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Vekil Sunucular"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "yapılandırıldı"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Güvenlik Seviyesi"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Güvenlik Duvarı"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "etkinleştirilmiş"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "pasifleştirilmiş"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "X'i yapılandırmadınız. Bunu yapmak istediğinizden emin misiniz?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Önyükleyici hazırlanıyor"
+msgid "Preparing initial startup program..."
+msgstr "Birincil başlangıç uygulaması hazırlanıyor..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "Sabredin, bu biraz zaman alabilir..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Çok eski ya da bilinmeyen bir makinaya sahipmişsiniz gibi görünüyor. Yaboot "
-"önyükleyicisi düzgün çalışmayacaktır.Kurulum devam edecek ama bu makinayı "
-"açmak için BootX veya benzeri araçlar kullanmak zorunda kalacaksınız. root "
-"fs için kernel argümanı: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1417,17 +1530,17 @@ msgstr ""
"Bu güvenlik seviyesinde, Windows bölümündeki dosyalara erişim yönetici "
"lehine kısıtlanmıştır."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "%s sürücüsüne boş bir disket yerleştirin"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Otomatik kurulum disketi hazırlanıyor"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1438,12 +1551,12 @@ msgstr ""
"\n"
"Gerçekten çıkmak istiyormusunuz?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Tebrikler"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Yeniden başlat"
@@ -1538,13 +1651,6 @@ msgid ""
"Users"
msgstr "Kullanıcılar"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Ağ"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1587,27 +1693,23 @@ msgid ""
"Exit"
msgstr "Çıkış"
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Yansının URL bağlantı adresi?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "URL bağlantı adresi ftp:// veya http:// ile başlamak zorundadır."
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr "Yansı adreslerini almak için %s web sayfasına bağlantı kuruluyor..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Sisteminizi %s sistemine yükseltmeyi tercih ettiniz. Sisteminizde KDE "
-#~ "3.5\n"
-#~ "
algılandı. Bu kurulum aracı bir yükseltmede KDE 3.5 masaüstünün "
-#~ "özelliklerini 
olduğu gibi koruyamaz. Devam etmeyi seçerseniz,\n"
-#~ "
KDE 4, KDE 3' ün yerini alacak ve kişisel KDE yapılandırma ayarlarınızı "
-#~ "kaybedeceksiniz.\n"
-#~ "
KDE 3.5 ile yükseltmek ve kişisel ayarlarınız saklamak isterseniz,\n"
-#~ "
lütfen sisteminizi yeniden başlatarak Mandriva güncelleme programcığını "
-#~ "kullanmak 
suretiyle yükseltme yapın."
-
-#~ msgid "Proceed"
-#~ msgstr "Onayla"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "[%s] getirilemedi"
+#~ "Yansı adreslerini almak için %s web sayfasına bağlantı kurma başarısız"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Paketleri alacağınız bir yansı adresi seçiniz"
diff --git a/perl-install/install/share/po/uk.po b/perl-install/install/share/po/uk.po
index 4bd188db6..1480930de 100644
--- a/perl-install/install/share/po/uk.po
+++ b/perl-install/install/share/po/uk.po
@@ -1,62 +1,84 @@
-# translation of DrakX.po to ukrainian
-# $Id: uk.po 26602 2006-04-22 07:43:48Z fwang $
-# Copyright (C) 2000,2003, 2004, 2005, 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-#
-# Dmytro Kovalov <kov@tokyo.email.ne.jp>, 2000.
-# Taras Boychuk <btr1@torba.com>, 2003, 2004.
-# Taras Boychuk <btr1@mail.ru>, 2004, 2003.
-# Taras Boychuk <btr1@ukrpost.net>, 2004, 2005.
-# Taras Boychuk <btr0001@ukr.net>, 2008, 2009.
-# Serge A. Ribalchenko <fisher@tpaba.org.ua>, 2008.
-# Yuri Chornoivan <yurchor@ukr.net>, 2008.
+# Translators:
+# Yuri Chornoivan <yurchor@ukr.net>, 2011-2016,2018-2019.
+# Yuri Chornoivan <yurchor@ukr.net>, 2019, 2020, 2022.
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-11 20:38+0300\n"
-"Last-Translator: Taras Boychuk <btr0001@ukr.net>\n"
-"Language-Team: ukrainian <translation@linux.org.ua>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2022-11-21 23:25+0200\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Ukrainian <kde-i18n-uk@kde.org>\n"
+"Language: uk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11"
+" ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100"
+" > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n %"
+" 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"
+"X-Generator: Lokalize 20.12.0\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "Долучайтеся до нас!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "Підлаштуйте систему під себе!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "Вибір за вами!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "Офісні інструменти"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "Домашня розважальна система"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "Для дітей"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Для сім’ї!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Для розробників!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Дякуємо!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "Будьте вільними!"
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "Чи маєте Ви наступні додаткові носії?"
+msgstr "Чи маєте ви доступ до вказаних нижче додаткових носіїв?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -67,120 +89,166 @@ msgstr ""
"Впродовж встановлення знайдено і буде використано наступне джерело: %s.\n"
"\n"
"\n"
-"Чи маєте Ви диск підтримки для налаштування?"
+"Чи маєте ви диск підтримки для налаштування?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Мережа (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Мережа (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Мережа (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Посилання на дзеркало?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Посилання має починатися з ftp:// або http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Зв'язуюсь з веб-сайтом Mandriva Linux, щоб отримати список наявних джерел..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Помилка зв'язку з веб-сайтом Mandriva Linux, щоб отримати список наявних "
-"джерел..."
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Виберіть сервер, з якого звантажити пакунки"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Встановлення NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Введіть назву машини або теку з носієм NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Немає назви машини"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
-msgstr "Тека повинна починатися з \"/\""
+msgstr "Назва каталогу має починатися з «/»"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "Назва комп'ютера для монтування NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
-msgstr "Тека"
+msgstr "Каталог"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Додатковий"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr ""
-"Неможливо знайти перелік пакунків на цьому дзеркалі. Переконайтеся, чи "
-"правильне розташування."
+"На цьому дзеркалі не вдалося знайти перелік пакунків. Переконайтеся, що його "
+"розташування вказано правильно."
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core Release"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted Release"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree Release"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+"Для роботи частини обладнання на вашому комп’ютері слід встановити "
+"мікропрограми з закритим кодом, потрібні для роботи драйверів з відкритим "
+"кодом."
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "Вам слід уможливити встановлення зі сховища «%s»"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+"У сховищі «%s» містяться різноманітні частини операційної системи та її "
+"програм"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+"У сховищі «%s» містяться пакунки з програмним забезпеченням, яке не є "
+"вільним.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"Там також мітяться пакунки з мікрокодом, потрібним для роботи деяких "
+"пристроїв (наприклад деяких відеокарток ATI/AMD, деяких мережевих карток, "
+"деяких карток RAID…)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+"У сховищі «%s» містяться пакунки з програмним забезпеченням, яке не можна "
+"вільно поширювати у деяких країнах через порушення патентних прав на це "
+"програмне забезпечення."
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+"Також у сховищі «%s» містяться пакунки, які зібрано з додатковими "
+"можливостями, використання яких обмежується патентним законодавством."
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "Тут ви можете увімкнути додаткові сховища, якщо це вам потрібно."
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "У цьому сховищі містяться оновлення пакунків зі сховища «%s»"
-#: any.pm:334
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "Переглядається список вже встановлених пакунків..."
+msgstr "Переглядається список вже встановлених пакунків…"
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "Шукаю пакунки для поновлення..."
+msgstr "Шукаємо пакунки для поновлення…"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "Вилучення пакунків перед поновленням..."
+msgstr "Вилучаємо пакунків перед поновленням…"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -189,92 +257,92 @@ msgid ""
"Do you really want to remove these packages?\n"
msgstr ""
"Наступні пакунки будуть вилучені, щоб забезпечити поновлення\n"
-"Вашої системи: %s\n"
+"вашої системи: %s\n"
"\n"
"\n"
"Ви справді хочете вилучити ці пакунки?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Помилка при читанні файла %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Назву наступних дисків було змінено:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (попередня назва %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Мережа"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Будь ласка, виберіть носій"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
-msgstr "Файл вже існує. Переписати?"
+msgstr "Файл вже існує. Перезаписати його?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Доступ заборонено"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Неправильна назва NFS"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "Поганий носій %s"
+msgstr "Пошкоджений носій %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
-msgstr "Не можу робити знімки екрану перед розбиттям на розділи"
+msgid "Cannot make screenshots before partitioning"
+msgstr "Не можна робити знімки екрана перед розбиттям на розділи"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
-msgstr "Знімки екрану стануть можливими після встановлення в %s"
+msgstr "Знімки екрана стануть можливими після встановлення до %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Встановлення"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
-msgstr "Конфігурація"
+msgstr "Налаштовування"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Вам потрібно також відформатувати %s"
@@ -285,10 +353,10 @@ msgid ""
"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
"You can find some information about them at: %s"
msgstr ""
-"Деякі з апаратних засобів на Вашому комп'ютері вимагають драйверів\n"
-"фірм-виготовлювачів для того, щоб працювати правильно. \n"
+"Деякі з апаратних засобів на вашому комп'ютері вимагають драйверів\n"
+"фірм-виробників для того, щоб працювати правильно. \n"
"\n"
-"Ви можете знайти потрібну інформацію про них на: %s"
+"Ви можете знайти потрібну інформацію про них на сторінці %s"
#: interactive.pm:22
#, c-format
@@ -300,22 +368,22 @@ msgstr "Вмикаю мережу"
msgid "Bringing down the network"
msgstr "Вимикаю мережу"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "Зачекайте, перевіряється файл"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "неможливо додати носій"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Копіювання деяких пакунків на диски для пізнішого використання"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Триває копіювання"
@@ -345,294 +413,311 @@ msgstr "гарно"
msgid "maybe"
msgstr "можливо"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "Отримання даних щодо пакунків з метаданих у форматі XML…"
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Для джерела «%s» немає xml-info. Отримано лише частковий результат для "
+"пакунка %s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Немає опису"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-"Деякі пакунки, необхідні для %s, неможливо встановити:\n"
+"Деякі пакунки, необхідні для варіанта %s, неможливо встановити:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "Сталася помилка:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Сталася невиправна помилка: %s"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Більше не питати"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d запит на встановлення завершився невдало"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
-msgstr "Встановлення пакунку невдале:"
+msgstr "Встановлення пакунка невдале:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Робоча станція"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Офісна робоча станція"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Програми для офісу: текстові процесори (OpenOffice.org Writer, Kword), "
-"електронні таблиці (OpenOffice.org Calc, Kspread), переглядачі файлів PDF, "
-"тощо"
+"Програми для офісу: текстові процесори (LibreOffice Writer, Kword), "
+"електронні таблиці (LibreOffice Calc, Kspread), переглядачі файлів PDF, тощо"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Програми для офісу: текстові процесори (kword, abiword), бухгалтерські "
-"таблиці (kspread, gnumeric), переглядачі файлів pdf, тощо"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Ігрова станція"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Програми для розваг: ігри-перегони, ігри на дошці, стратегічні, тощо"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Мультимедійна станція"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Звукові та відео програвачі та редактори"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Станція для Інтернету"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr ""
"Набір засобів для читання та передавання електронної пошти та груп новин "
-"(pine, mutt, tin..), та для перегляду інформаційних тенет"
+"(pine, mutt, tin…), а також для перегляду сторінок інтернету"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Мережевий комп'ютер (клієнт)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Клієнти для різних протоколів (ssh включно)"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Засоби для полегшення налаштування комп'ютера"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Засоби для консолі"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Редактори, командні оболонки, файлові засоби та термінали"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Розробка"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Бібліотеки для програмування в C, C++, програми та файли include"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Документація"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
-msgstr "Книжки та ЯК ЗРОБИТИ про Лінакс та вільне програмне забезпечення"
+msgstr "Книжки та поради з Linux та вільного програмного забезпечення"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr "Стандартна база Лінакс. Підтримка програм сторонніх виробників"
+msgstr "Стандартна база Linux. Підтримка програм сторонніх виробників"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Веб-сервер"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Групова робота"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Сервер Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Захисний шлюз/Маршрутизатор"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Інтернет-шлюз"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Пошта/Новини"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Поштовий сервер postfix, сервер новин Inn"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Сервер тек"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Сервер FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Сервер назв домену і мережевий інформаційний сервер"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Сервер доступу до файлів і друкарок"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Сервер NFS, сервер Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "База даних"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Сервери баз даних PostgreSQL і MySQL "
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Сервери баз даних PostgreSQL і MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Тенета/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Пошта"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Поштовий сервер postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Сервери баз даних PostgreSQL або MySQL "
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Сервери баз даних PostgreSQL або MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Мережевий комп'ютер (сервер)"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Сервер NFS, сервер SMB, проксі-сервер, сервер ssh"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Графічне середовище"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Робоча станція KDE"
+msgid "Plasma Workstation"
+msgstr "Робоча станція з Плазмою"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr ""
-"Робоче середовище K (KDE) - основне графічне середовище з набором допоміжних "
+"Робоче середовище K (KDE) — основне графічне середовище з набором допоміжних "
"засобів"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Робоча станція Gnome"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -640,66 +725,114 @@ msgid ""
msgstr ""
"Графічне середовище з дружнім інтерфейсом та програмами, засоби для стільниці"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, c-format
-msgid "LXDE Desktop"
-msgstr "Стільниця LXDE"
+msgid "Xfce Workstation"
+msgstr "Робоча станція Xfce"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Легке і швидке графічне середовище з дружнім інтерфейсом та програмами, "
-"засоби для стільниці"
+"Полегшене графічне середовище з дружнім інтерфейсом та програмами, засоби "
+"для стільниці"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Робоча станція MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Робоча станція Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Графічне середовище на основі GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Стільниця LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+"Нова версія із портуванням на Qt невибагливого до ресурсів стільничного "
+"середовища"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Стільниця Enlightenment"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+"Швидке, невибагливе до ресурсів графічне середовище з відданими прихильниками"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Стільниця LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr "Швидке, невибагливе до ресурсів графічне середовище"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Інші графічні стільниці"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, тощо"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, тощо"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Інструменти"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
-msgstr "Сервер SSH "
+msgstr "Сервер SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Сервер віддаленого налаштування Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Мережеві інструменти/Слідкування за мережею"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
-msgstr "Інструменти для слідкування, облік процесів, tcpdump, nmap, ..."
+msgstr "Інструменти для слідкування, облік процесів, tcpdump, nmap…"
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Помічники Mandriva"
+msgid "Mageia Wizards"
+msgstr "Помічники Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Помічники для налаштування сервера"
@@ -710,10 +843,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-"Сталася помилка, але я не знаю, як її обробити.\n"
-"Продовжуйте на свій власний ризик."
+"Сталася помилка, але спосіб належного усування її наслідків невідомий.\n"
+"Ви можете ризикнути і продовжити встановлення."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -722,352 +855,358 @@ msgid ""
"\"\n"
msgstr ""
"Деякі важливі пакунки не вдалося правильно встановити. Ваш\n"
-"компакт-диск або привід несправні. Перевірте компакт-диск\n"
-"командою \"rpm -qpl media/main/*.rpm\" \n"
+"компакт-диск або пристрій для його читання пошкоджено.\n"
+"Перевірте компакт-диск командою \"rpm -qpl media/main/*.rpm\"\n"
#: steps_auto_install.pm:71 steps_stdio.pm:27
#, c-format
msgid "Entering step `%s'\n"
-msgstr "Починається крок `%s'\n"
+msgstr "Починається крок «%s»\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Встановлення Мандріва Лінакс %s"
+msgid "%s Installation %s"
+msgstr "Встановлення %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> між елементами"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
-msgstr "Сервер Xorg стартує повільно. Зачекайте..."
+msgstr "Сервер Xorg стартує повільно. Зачекайте…"
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"Ваша система має замало ресурсів. Ви можете мати проблеми з встановленням\n"
-"Мандріва лінакса. Якщо це станеться, Ви можете спробувати встановлення в\n"
-"текстовому режимі. Для цього під час завантаження з компакт-диску\n"
-"натисніть F1 і потім введіть \"text\"."
+"Ваша система не є достатньо потужною. У вас можуть виникнути проблеми\n"
+"зі встановленням %s. Якщо такі проблеми виникнуть, спробуйте встановити\n"
+"систему у текстовому режимі. Щоб зробити це, натисніть F1 під час "
+"завантаження\n"
+"з компакт-диска, а потім введіть «text»."
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Вибір носія"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "Вставити робочу станцію Mandriva KDE"
+msgid "Install %s Plasma Desktop"
+msgstr "Встановити робочу станцію %s із Плазмою KDE"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "Вставити робочу станцію Mandriva GNOME"
+msgid "Install %s GNOME Desktop"
+msgstr "Встановити робочу станцію %s GNOME"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Вибіркове встановлення"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "Стільниця KDE"
+msgid "Plasma Desktop"
+msgstr "Стільниця Плазми"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Стільниця GNOME"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
-msgstr "Типова cстільниця"
+msgstr "Нетипова стільниця"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr "Попередній перегляд стільниці '%s'."
+msgstr "Попередній перегляд стільниці «%s»."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Натисніть на зображення, щоб побачити більший розмір"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Вибір груп пакунків"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Індивідуальний вибір пакунків"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Загальний розмір: %d / %d Мб "
+msgid "Unselect All"
+msgstr "Скасувати весь вибір"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Поганий пакунок"
+msgid "Total size: %d / %d MB"
+msgstr "Загальний розмір: %d / %d МБ"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Версія: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Розмір: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
-msgstr "%d Кб\n"
+msgstr "%d кБ\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Важливість: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
-msgstr "Ви не можете вибрати або відмінити вибір цього пакунка."
+msgid "You cannot select/unselect this package"
+msgstr "Ви не можете вибрати або скасувати вибір цього пакунка."
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "через відсутність %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "через незадоволеність %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr "пробую активізувати %s"
+msgstr "намагаємося задіяти %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "щоб залишити %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Ви не можете вибрати цей пакунок, бо для його встановлення не залишилося "
"достатньо вільного місця."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Ці пакунки буде встановлено"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Наступні пакунки буде вилучено"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "Цей пакунок необхідний, його вибір відмінити не можна"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "Цей пакунок необхідний, його вибір не можна скасовувати"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "Вибір цього пакунка неможливо відмінити. Його вже встановлено."
+msgid "You cannot unselect this package. It is already installed"
+msgstr "Вибір цього пакунка не можна скасовувати. Його вже встановлено."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "Вибір цього пакунка неможливо відмінити. Він повинен бути поновлений."
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "Вибір цього пакунка не можна скасовувати. Його слід поновити."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Показувати автоматично вибрані пакунки"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Встановлення"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
-msgstr "Завантажити/зберегти виділене"
+msgstr "Завантажити/зберегти позначене"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Поновлення вибору пакунків"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "Перемкнутися між ієрархічним і плоским списками пакунків"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Мінімальне встановлення"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Менеджер програм"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
-msgstr "Виберіть пакунки, які Ви хочете встановити"
+msgstr "Виберіть пакунки, які ви хочете встановити"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
-msgstr "Встановлюю"
+msgstr "Встановлення"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
-msgstr "Загально"
+msgstr "Без подробиць"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "Залишилося часу:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
-msgstr "(наближене обчислення...)"
+msgstr "(наближене обчислення…)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d пакунок"
msgstr[1] "%d пакунки"
msgstr[2] "%d пакунків"
+msgstr[3] "%d пакунків"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
-msgstr "Загалом"
+msgstr "Підсумки"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Налаштувати"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "не налаштовано"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "Вибір носія"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
"Було знайдено наступні носії встановлення.\n"
-"Якщо Ви не хочете використовувати деякі з них, відмініть їх вибір."
+"Якщо ви не хочете використовувати деякі з них, зніміть з них позначку вибору."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"У Вас є можливість перед початком встановлення скопіювати вміст компакт-"
+"У вас є можливість перед початком встановлення скопіювати вміст компакт-"
"дисків на твердий диск.\n"
-"Після цього встановлення продовжиться з твердого диску і пакунки залишаться "
+"Після цього встановлення продовжиться з твердого диска і пакунки залишаться "
"доступними після повного встановлення системи."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Копіювати компакт-диски повністю."
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Сталася помилка"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Будь ласка, виберіть розкладку клавіатури"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "Тут наведено повний список можливих мап клавіатури:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Встановити/Поновити"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Це встановлення чи поновлення?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Встановлення"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Поновити %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Ключ шифрування для %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Припинити встановлення, перезавантажити систему."
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Нове встановлення"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "Поновити попереднє встановлення (не рекомендується)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1075,46 +1214,25 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"Програма встановлення виявила, що раніше встановлена система\n"
-"Mandriva Linux не може бути безпечно поновлена до %s.\n"
+"Програма для встановлення виявила, що раніше встановлена система\n"
+"Mageia Linux не може бути безпечно поновлена до %s.\n"
"\n"
"Рекомендується виконати нове встановлення системи, яке замінить попереднє.\n"
"\n"
-"Попередження : Вам потрібно зробити резервну копію особистих даних\n"
-"перед тим, як виберете \"Нове встановлення\"."
+"Попередження: вам слід зробити резервну копію особистих даних\n"
+"перед тим, як виберете «Нове встановлення»."
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "КД/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Налаштування IDE"
+msgid "Configuring CD/DVD"
+msgstr "Налаштування CD/DVD"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"Не вистачає вільного місця для 1МБ завантажувального блоку! Встановлення\n"
-"буде продовжуватись, але для завантаження своєї системи Вам потрібно\n"
-"буде створити DiskDrake'ом завантажувальний розділ"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Вам потрібно створити початковий завантажувач PPC PReP Boot! Встановлення "
-"буде продовжуватись, але для завантаження системи потрібно буде створити "
-"DiskDrake'ом завантажувальний розділ"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1123,26 +1241,26 @@ msgid ""
"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
msgstr ""
"Змініть компакт-диск!\n"
-"Будь ласка, вставте компакт-диск, позначений \"%s\" у пристрій і\n"
-"натисніть Гаразд після цього.\n"
-"Якщо Ви не маєте такого диску, натисніть Скасувати, щоб не\n"
-"встановлювати з цього диску."
+"Будь ласка, вставте компакт-диск з міткою «%s» у пристрій і\n"
+"натисніть «Гаразд».\n"
+"Якщо ви не маєте такого диска, натисніть Скасувати, щоб не\n"
+"встановлювати з цього диска."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "Шукаю наявні пакунки..."
+msgstr "Шукаю наявні пакунки…"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"У Вашій системі не залишилося достатньо місця для встановлення або "
+"У вашій системі не залишилося достатньо місця для встановлення або "
"поновлення (%dМб > %dМб)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1151,141 +1269,184 @@ msgstr ""
"Будь ласка, виберіть, завантажити чи записати вибір пакунків.\n"
"Формат такий самий, як для файлів auto_install."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Завантаження"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Зберегти"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Поганий файл"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Плазма"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
-msgstr "Вибір десктопу"
+msgstr "Вибір стільниці"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Ви можете вибрати профіль стільниці робочої станції."
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Вибраний розмір більший за наявний "
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Тип встановлення"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
"Ви не вказали жодної групи пакунків.\n"
-"Будь ласка, вкажіть мінімальне встановлення, яке Ви хочете:"
+"Будь ласка, вкажіть мінімальний варіант встановлення:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Разом з Х"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Встановлюється пакунок %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Встановлювати запропоновані пакунки"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
-msgstr "З основною документацією (рекомендується!)"
+msgstr "З основною документацією (рекомендуємо!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Насправді мінімальне встановлення (навіть без urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Готуємося до оновлення…"
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Підготовка встановлення"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Встановлюється пакунок %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Сталася помилка під час сортування пакунків: "
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Все-таки продовжувати?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Ще раз"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Пропустити цей пакунок"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "Пропустити усі пакунки з носія \"%s\""
+msgstr "Пропустити усі пакунки з носія «%s»"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Повернутися до вибору носіїв і пакунків"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Сталася помилка під час встановлення пакунка %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Налаштування після встановлення"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Переконайтеся, чи джерело Update Modules знаходиться в носії %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Поновлення"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "Тепер ви можете налаштувати мережеві сховища пакунків."
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Це надає змогу встановлювати оновлення безпеки."
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"Для налаштовування сховищ пакунків вам знадобиться працездатне \n"
+"інтернет-з’єднання.\n"
+"\n"
+"Хочете налаштувати сховище пакунків для оновлення?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "Не вдалося встановити цей засіб отримання даних"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Повторити?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Помилка під час спроби додавання носія"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1297,120 +1458,89 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"Зараз Ви маєте можливість звантажити поновлені пакунки. Ці пакунки\n"
-"було поновлено після виходу дистрибутиву. Вони можуть містити\n"
+"Зараз ви маєте можливість звантажити поновлені пакунки. Ці пакунки\n"
+"було поновлено після виходу дистрибутива. Вони можуть містити\n"
"виправлення безпеки або помилок.\n"
"\n"
-"Щоб звантажити ці пакунки, Вам потрібно мати працююче з'єднання з\n"
+"Щоб звантажити ці пакунки, вам слід мати працездатне з'єднання з\n"
"Інтернетом.\n"
"\n"
"Ви хочете встановити ці поновлення?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s на %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
-msgstr "Залізо"
+msgstr "Обладнання"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
-msgstr "Звукова плата"
-
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Чи маєте Ви звукові карти ISA?"
+msgstr "Звукова картка"
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Виконайте \"alsaconf\" або \"sndconfig\" після встановлення, щоб налаштувати "
-"звукову карту"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Звукових карт не виявлено. Спробуйте \"harddrake\" після встановлення"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Графічний інтерфейс"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Мережа та Інтернет"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Проксі"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "налаштовано"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Рівень безпеки"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Захисний шлюз"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "увімкнено"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
-msgstr "відімкнено"
+msgstr "вимкнено"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
-msgstr "Ви не сконфігурували X. Ви впевнені, що дійсно цього хочете?"
+msgstr "Ви не налаштувати X. Ви впевнені, що дійсно цього хочете?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Підготовлюю завантажувач..."
+msgid "Preparing initial startup program..."
+msgstr "Приготування початкової програми запуску…"
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr "Будьте терпеливі, це може тривати довго..."
+msgstr "Зачекайте, це може тривати довго…"
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"Здається у Вас машина OldWorld чи Невідома. Завантажувач yaboot не буде "
-"працювати з цією машиною. Встановлення буде продовжуватись, але для "
-"завантаження, Вам потрібно використати BootX чи якийсь інший спосіб "
-"завантаження Вашої машини. Параметр ядра для кореневої файлової системи: "
-"root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1419,17 +1549,17 @@ msgstr ""
"На цьому рівні безпеки доступ до файлів на розділі Windows дозволений тільки "
"адміністратору."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Вставте чисту дискету в дисковод %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
-msgstr "Створення дискети для автоматичного встановлення..."
+msgstr "Створення дискети для автоматичного встановлення…"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1440,12 +1570,12 @@ msgstr ""
"\n"
"Ви дійсно хочете припинити зараз?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Вітання"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Перезавантажити"
@@ -1482,7 +1612,7 @@ msgstr "Миша"
msgid ""
"_: Keep these entry short\n"
"Hard drive detection"
-msgstr "Визначення твердого диску"
+msgstr "Визначення твердого диска"
#: steps_list.pm:21 steps_list.pm:22
#, c-format
@@ -1531,7 +1661,7 @@ msgstr "Вибір пакунків"
msgid ""
"_: Keep these entry short\n"
"Installing"
-msgstr "Встановлюю"
+msgstr "Встановлення"
#: steps_list.pm:34
#, c-format
@@ -1540,13 +1670,6 @@ msgid ""
"Users"
msgstr "Користувачі"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Робота в мережі"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1566,14 +1689,14 @@ msgstr "Налаштувати X"
msgid ""
"_: Keep these entry short\n"
"Summary"
-msgstr "Загалом"
+msgstr "Підсумки"
#: steps_list.pm:44 steps_list.pm:45
#, c-format
msgid ""
"_: Keep these entry short\n"
"Services"
-msgstr "Сервіси"
+msgstr "Служби"
#: steps_list.pm:46
#, c-format
@@ -1587,30 +1710,28 @@ msgstr "Поновлення"
msgid ""
"_: Keep these entry short\n"
"Exit"
-msgstr "Вийти"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
+msgstr "Вихід"
+
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Посилання на дзеркало?"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Посилання має починатися з ftp:// або http://"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr ""
+#~ "Встановлення зв’язку з веб-сайтом %s для отримання списку доступних "
+#~ "дзеркал…"
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Ви вирішили оновити систему до версії %s. В системі було виявлено\n"
-#~ "встановлене стільничне середовище KDE 3.5. Цей інструмент встановлення "
-#~ "не\n"
-#~ "може зберегти KDE 3.5 під час оновлення. Якщо Ви вирішите продовжити "
-#~ "процес, \n"
-#~ "KDE 3 буде замінено на KDE 4, а отже Ви втратите особисті налаштування "
-#~ "KDE. \n"
-#~ "Щоб оновити KDE 3.5 зі збереженням особистих параметрів, будь ласка, \n"
-#~ "перезавантажте систему, а потім виконайте оновлення за допомогою аплету\n"
-#~ "оновлення Mandriva."
-
-#~ msgid "Proceed"
-#~ msgstr "Продовжувати"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "пошук [%s] завершився невдачею"
+#~ "Не вдалося встановити зв’язок з веб-сайтом %s для отримання списку "
+#~ "доступних дзеркал"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Виберіть сервер, з якого звантажити пакунки"
diff --git a/perl-install/install/share/po/uz.po b/perl-install/install/share/po/uz.po
index 82e344bfe..97766fb79 100644
--- a/perl-install/install/share/po/uz.po
+++ b/perl-install/install/share/po/uz.po
@@ -1,56 +1,83 @@
-# translation of uz@cyrillic.po to Uzbek
-# Copyright (C) 2003, 2004, 2006, 2007, 2008 Free Software Foundation, Inc.
-# Copyright (C) 2003 Mandriva.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
-# Mashrab Kuvatov <kmashrab@uni-bremen.de>, 2003, 2004, 2006, 2007, 2008.
-# Nurali Abdurahmonov <mavnur@gmail.com>, 2006.
-# Behzod Saidov <behzodsaidov@gmail.com>, 2007.
+# Translators:
+# Behzod Saidov <behzodsaidov@gmail.com>, 2007
+# Mashrab Kuvatov <kmashrab@uni-bremen.de>, 2003-2004,2006-2008
+# Нурали Абдурахмонов <mavnur@gmail.com>, 2006,2009-2010
msgid ""
msgstr ""
-"Project-Id-Version: uz@cyrillic\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2008-08-24 01:06+0200\n"
-"Last-Translator: Mashrab Kuvatov <kmashrab@uni-bremen.de>\n"
-"Language-Team: Uzbek <floss-uz-l10n@googlegroups.com>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Uzbek (http://www.transifex.com/MageiaLinux/mageia/language/"
+"uz/)\n"
+"Language: uz\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Sizda qoʻshimcha kompakt-disk bormi?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -63,94 +90,57 @@ msgstr ""
"\n"
"Moslanishi kerak boʻlgan qoʻshimcha oʻrnatish manbasi bormi?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "Kompakt-disk"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Tarmoq (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Tarmoq (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Tarmoq (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Oynaning manzili (URL)"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Manzil ftp:// yoki http:// bilan boshlanishi kerak"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Mavjud boʻlgan oynalarning roʻyxatini olish uchun Mandriva Linux sayti bilan "
-"aloqa oʻrnatilmoqda..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Mavjud boʻlgan oynalarning roʻyxatini olish uchun Mandriva Linux sayti bilan "
-"aloqa oʻrnatib boʻlmadi"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Paketlarni olish uchun oynani tanlang"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS orqali oʻrnatish"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "NFS toʻplamining kompyuter nomini va direktoriyani kiriting"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Kompyuterning nomi koʻrsatilmagan"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Direktoriya \"/\" belgi bilan boshlashi kerak"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS serverining xost nomi"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Direktoriya"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Qoʻshimcha"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -159,23 +149,90 @@ msgstr ""
"Oynada paketlar roʻyxatini topib boʻlmadi. Manzil (URL) toʻgʻri "
"koʻrsatilganligini tekshiring."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Allaqachon oʻrnatilgan paketlar qidirilmoqda..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Yangilash uchun paketlar qidirilmoqda..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Yangilashdan avval paketlar olib tashlanmoqda..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -188,88 +245,88 @@ msgstr ""
"\n"
"Davom etishni istaysizmi?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%s faylini oʻqishda xato roʻy berdi"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Quyidagi disk(lar)ning nomi oʻzgartirildi:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (oldingi nomi %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Tarmoq"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Iltimos toʻplamni tanlang"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Fayl allaqachon mavjud. Uni almashtirishni istaysizmi?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Ruxsat yoʻq"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "NFS nomi notoʻgʻri"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Notoʻgʻri toʻplam %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Skrinshotlarni diskni boʻlishdan avval olib boʻlmaydi"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
"Oʻrnatish tugaganidan keyin skrinshotlarni quyidagi joydan topish mumkin: %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Oʻrnatish"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Moslash"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Siz %s'ni ham format qilishingiz kerak"
@@ -293,22 +350,22 @@ msgstr "Tarmoq ishga tushirilmoqda"
msgid "Bringing down the network"
msgstr "Tarmoq oʻchirilmoqda"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Iltimos kutib turing, fayl olinmoqda"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "manbani qoʻshib boʻlmadi"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Baʼzi paketlardan diskka nusxa olinmoqda"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Nusxa olish davom etmoqda"
@@ -338,7 +395,22 @@ msgstr "yaxshi"
msgid "maybe"
msgstr "balki"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Taʼrif yoʻq"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -347,75 +419,76 @@ msgstr ""
"%s talab qiladigan baʼzi paketlarni oʻrnatib boʻlmaydi:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Xato roʻy berdi"
+msgstr "Xato roʻy berdi:"
-#: pkgs.pm:792
+#: pkgs.pm:405
#, c-format
-msgid "%d installation transactions failed"
+msgid "A fatal error occurred: %s."
+msgstr "Juda jiddiy xato roʻy berdi: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr "%d oʻrnatish tranzaksiyasi muvaffaqiyatsiz tugadi"
+
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "%s paketi oʻrnatilmoqda"
+msgstr "Paketlarni oʻrnatib boʻlmadi:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Ish stansiyasi"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Idora stansiyasi"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Idora uchun dasturlar: matn protsessorlari (OpenOffice.org Writer, Kword), "
-"elektron jadvallar (OpenOffice.org Calc, Kspread), PDF koʻruvchilar va hokazo"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Idora uchun dasturlar: matn protsessorlari (kword, abiword), elektron "
-"jadvallar (kspread, gnumeric), PDF koʻruvchilar va hokazo"
+"Idora uchun dasturlar: matn protsessorlari (LibreOffice Writer, Kword), "
+"elektron jadvallar (LibreOffice Calc, Kspread), PDF koʻruvchilar va hokazo"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Oʻyin stansiyasi"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Ovunchoq dasturlar: arkada, stol oʻyinlari, strategiya va hokazo"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Multimedia stansiyasi"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Audio va videoni oʻynash/tahrirlash uchun dasturlar"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet stansiyasi"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -424,205 +497,205 @@ msgstr ""
"Xat-xabar, yangiliklarni oʻqish va joʻnatish (mutt, tin..) va Internetda "
"sayr qilish uchun vositalar toʻplami"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Tarmoqdagi kompyuter (klient)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Turli protokollar, shu jumlada SSH, uchun klientlar"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Kompyuterni moslashni yengilashtirish uchun vositalar"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Konsol vositalari"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Tahrirchilar, konsollar, fayl vositalari, terminallar"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Tuzish"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C va C++ tuzish kutubxonalari, vositalar va xeder fayllar"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Qoʻllanmalar"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Linux va erkin dasturlar haqida kitoblar va Howto'lar"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr ""
+msgstr "Linux Standard Base. Uchinchi tomon dastur tuzuvchilari qoʻllanuvi"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Veb-serveri"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab serveri"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Fayervol/Ruter"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet geytveyi"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Xat-xabar/Yangiliklar"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix xat-xabar serveri, Inn yangiliklar serveri"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Direktoriya serveri"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP serveri"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "DNS va NIS"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Fayl va printerni boʻlishish serveri"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS serveri, Samba serveri"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Maʼlumot bazasi"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL va MySQL maʼlumot bazasi"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL va MariaDB maʼlumot bazasi"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Xat-xabar"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix xat-xabar serveri"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL yoki MySQL maʼlumot bazasi"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL yoki MariaDB maʼlumot bazasi"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Tarmoqdagi kompyuter (server)"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS serveri, SMB serveri, Proxy serveri, SSH serveri"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Grafik muhit"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE stansiyasi"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "KDE - vositalar toʻplami bilan birga asosiy grafik muhit"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME stansiyasi"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -631,67 +704,110 @@ msgstr ""
"Foydalanuvchilar uchun qulay dasturlar va ish stoli vositalaridan iborat "
"grafik muhit"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "IceWm ish stoli"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Foydalanuvchilar uchun qulay dasturlar va ish stoli vositalaridan iborat "
-"grafik muhit"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE ish stoli"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Boshqa grafik ish stollari"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, va hokazo"
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Vositalar"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH serveri"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin masofadan boshqarish serveri"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Tarmoq vositalari/Nazorat qilish"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr ""
"Nazorat qilish vositalari, vazifalar hisobotchilari, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva yordamchilari"
+msgid "Mageia Wizards"
+msgstr "Mageia yordamchilari"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Serverni moslash uchun yordamchilar"
@@ -702,8 +818,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
+"Xatolik yuz berdi ammo uning sababi aniqlanmadi.\n"
+"Tavvakkal qilgan holda davom etishingiz mumkin."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -723,249 +841,258 @@ msgstr "%s bosqichga oʻtilmoqda\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux OTni oʻrnatish %s"
+msgid "%s Installation %s"
+msgstr "%s OTni oʻrnatish %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> banddan-bandga"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg dasturi juda sekin ishga tushyapti. Iltimos kutib turing..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
+"Tizimda resurslar yetishmaydi. %s tizimini oʻrnatish mobaynida\n"
+"muammoga duch kelishingiz mumkin. Agar shunday boʻlsa, matn usulida "
+"oʻrnatish vositasidan foydalanib koʻring,\n"
+"Buning uchun diskdan yuklanayotganda `F1' tugmasini bosing va `text' deb "
+"yozing."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "KDE ish stoli"
+msgid "Media Selection"
+msgstr "Manbani tanlash"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "GNOME ish stoli"
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Boshqa"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "IceWm ish stoli"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm ish stoli"
+msgstr "GNOME ish stoli"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "IceWm ish stoli"
+msgstr "Boshqa ish stoli"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Bu '%s' ish stolining koʻrinishi."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Ish stolini yaqinroqdan koʻrish uchun rasmni sichqoncha bilan bosing"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Paketlarni guruh boʻyicha tanlash"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Paketlarni bittama-bitta tanlash"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Jami: %d / %d Mb"
+msgid "Unselect All"
+msgstr "Hech qaysi tanlanmasin"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Yomon paket"
+msgid "Total size: %d / %d MB"
+msgstr "Jami: %d / %d Mb"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Versiyasi: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Hajmi: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d Kb\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Muhimligi: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Bu paketni tanlolmaysiz/tanlashni bekor qilolmaysiz"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s yetishmagani uchun"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr ""
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr ""
+msgstr "%s ativlashtirishga harakat qilinmoqda"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s'ni qoldirish uchun"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Bu paketni tanlolmaysiz, chunki uni oʻrnatish uchun yetarli joy mavjud emas."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Quyidagi paketlar oʻrnatiladi"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Quyidagi paketlar olib tashlaniladi."
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr ""
"Bu oʻrnatilishi shart boʻlgan paket, uni tanlashni bekor qilib boʻlmaydi."
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Bu paketni tanlashni bekor qilolmaysiz. U allaqachon oʻrnatilgan."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Bu paketni tanlashni bekor qilolmaysiz. U yangilanishi shart."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Avtomatik ravishda tanlangan paketlarni koʻrsatish"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Oʻrnatish"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Tanlanganni yuklash/saqlash"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Paketlar tanlovi yangilanmoqda"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Minimal oʻrnatish"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Dasturlar boshqaruvi"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Siz oʻrnatmoqchi boʻlgan paketlarni tanlang"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Oʻrnatilmoqda"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Tafsilotlarsiz"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Qolgan vaqt "
+msgstr "Qolgan vaqt:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(chamalanmoqda)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d-ta paket"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Hisobot"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Moslash"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "moslanmagan"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Ish stolini tanlash"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -974,84 +1101,84 @@ msgstr ""
"Quyidagi oʻrnatish manbalari aniqlandi.\n"
"Faqat tanlangan manbalar oʻrnatish uchun ishlatiladi."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Oʻrnatishdan avval kompakt-disklardagi paketlardan kompyuterning diskiga "
"nusxa olish mumkin.\n"
"Oʻrnatish toʻliq tugagandan soʻng ular tizimga maʼlum boʻladi."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Butun diskdan nusxa olish"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Xato roʻy berdi"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Iltimos tugmalar tartibini tanlang"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Mavjud boʻlgan tugmataglarning toʻliq roʻyxati"
+msgstr "Mavjud boʻlgan klaviaturalarning toʻliq roʻyxati:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Oʻrnatish/Yangilash"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Bu oʻrnatishmi yoki yangilashmi?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Oʻrnatish"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s OTni yangilash"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s uchun kodlash kaliti"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Oʻrnatishni bekor qilish, kompyuterni oʻchirib-yoqish"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Oʻrnatish"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Oldingi oʻrnatishni yangilash (tavsiya etilmaydi)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1060,32 +1187,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDE'ni moslash"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1099,72 +1211,72 @@ msgstr ""
"Agar u sizda boʻlmasa, bu kompakt-diskdan oʻrnatishni bekor qilish uchun "
"\"Bekor qilish\" tugmasini bosing."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Mavjud boʻlgan paketlar qidirilmoqda..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
"Tizimda oʻrnatish yoki yangilash uchun yetarli joy qolmadi (%d Mb > %d Mb)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Yuklash"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Saqlash"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Notoʻgʻri fayl"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Ish stolini tanlash"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Quyidagilardan oʻrnatiladigan ish stolini tanlang"
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Tanlangan hajm mavjud boʻlgan boʻsh joydan katta"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Oʻrnatishning turi"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1173,87 +1285,126 @@ msgstr ""
"Siz hech qanday paketlar guruhini tanlamadingiz.\n"
"Iltimos siz istagan minimal oʻrnatishni tanlang:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X bilan"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s paketi oʻrnatilmoqda"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Asosiy qoʻllanmalar bilan (tavsiya qilinadi!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Haqiqiy minimal oʻrnatish (xususan urpmi'siz)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Oʻrnatishga tayyorlanmoqda"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s paketi oʻrnatilmoqda"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Quyidagi paketlarni saralashda xato roʻy berdi:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Bunga qaramasdan davom etishni istaysizmi?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Qaytadan urinish"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Bu paketga eʼtibor berilmasin"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "\"%s\" toʻplamidan hamma paketlarga eʼtibor berilmasin"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Oʻrnatish manbalarni va paketlarni tanlashga qaytish"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Quyidagi paketni oʻrnatishda xato roʻy berdi: %s"
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Oʻrnatishdan keyin moslash"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr ""
+msgstr "%s ichida Update Modules toʻplami mavjudligini tekshirib koʻring"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Yangilanishlar"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Quyidagi paketlar oʻrnatiladi"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Toʻplamni qoʻshish muvaffaqiyatsiz tugadi"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1266,7 +1417,7 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
"Hozir sizda yangilangan paketlarni yozib olib oʻrnatish imkoniyati mavjud.\n"
-"Ular hozir siz oʻrnatgan Mandriva Linux tizimi chiqqanidan soʻng\n"
+"Ular hozir siz oʻrnatgan Mageia tizimi chiqqanidan soʻng\n"
"yangilangan. Ularda har xil xavfsizlik va dasturlar bilan bogʻliq\n"
"xatoliklar tuzatilgan boʻlishi mumkin.\n"
"\n"
@@ -1276,108 +1427,80 @@ msgstr ""
"\n"
"Yangilanishlarni oʻrnatishni istaysizmi?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s %s'da"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Asbob-uskunalar"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Tovush karta"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Sizda ISA tovush kartasi bormi?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Oʻrnatishdan keyin, tovush kartangizni moslash uchun, \"sndconfig\" yoki "
-"\"alsaconf\" dasturini ishga tushiring"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Tovush kartasi topilmadi. Oʻrnatishdan keyin \"harddrake\" dasturini sinab "
-"koʻring."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Grafik interfeys"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Tarmoq va Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proksilar"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "moslangan"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Xavfsizlik darajasi"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Fayervol"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "ishlayapti"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "oʻchirilgan"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Siz X'ni moslamadingiz. Rostdan buni istaysizmi?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "OT yuklagichi tayyorlanmoqda..."
-
-#: steps_interactive.pm:1024
-#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
+msgid "Be patient, this may take a while..."
+msgstr "Kutib turing, bu biroz vaqt olishi mumkin..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1386,17 +1509,17 @@ msgstr ""
"Ushbu xavfsizlik daraja qoʻllanilganda diskning Windows qismidagi fayllarga "
"faqat administrator murojaat qilishi mumkin."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Boʻsh disketni %s uskunasiga qoʻying"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Avto-oʻrnatish disketi yaratilmoqda..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1407,12 +1530,12 @@ msgstr ""
"\n"
"Rostdan chiqishni istaysizmi?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Tabriklaymiz!"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Oʻchirib-yoqish"
@@ -1507,13 +1630,6 @@ msgid ""
"Users"
msgstr "Foydalanuvchilar"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Tarmoq"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1556,55 +1672,26 @@ msgid ""
"Exit"
msgstr "Chiqish"
-#~ msgid "Downloading file %s..."
-#~ msgstr "%s fayli yozib olinmoqda..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Quyidagi server dasturlar ham oʻrnatiladi: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Bu server dasturlar oʻrnatilishi bilan ular ishga tushiriladi.\n"
-#~ "Hozircha, ular bilan bogʻliq birorta ham xavfsizlik borasida muammolar\n"
-#~ "kuzatilmagan, ammo ularning topilish ehtimoli hamisha mavjud. Bunday\n"
-#~ "holatda, ularni iloji boricha tezroq yangilashingiz lozim.\n"
-#~ "\n"
-#~ "\n"
-#~ "Bu server dasturlarni rostdan ham oʻrnatishni istaysizmi?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm ish stoli"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr ""
-#~ "Mavjud boʻlgan paketlarning roʻyxatini olish uchun oyna bilan aloqa "
-#~ "oʻrnatilmoqda..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Oyna (%s)bilan aloqa oʻrnatib boʻlmadi."
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Avto-oʻrnatish disketni yaratish"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Oynaning manzili (URL)"
-#~ msgid "Replay"
-#~ msgstr "Qaytarish"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Manzil ftp:// yoki http:// bilan boshlanishi kerak"
-#~ msgid "Automated"
-#~ msgstr "Avtomatik"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr ""
+#~ "Mavjud boʻlgan oynalarning roʻyxatini olish uchun %s sayti bilan aloqa "
+#~ "oʻrnatilmoqda..."
-#~ msgid "Save packages selection"
-#~ msgstr "Paketlar tanlovini saqlash"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr ""
+#~ "Mavjud boʻlgan oynalarning roʻyxatini olish uchun %s sayti bilan aloqa "
+#~ "oʻrnatib boʻlmadi"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "aboot dasturidan foydalanishni istaysizmi?"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Paketlarni olish uchun oynani tanlang"
diff --git a/perl-install/install/share/po/uz@cyrillic.po b/perl-install/install/share/po/uz@cyrillic.po
index 9f1b14826..c2081c342 100644
--- a/perl-install/install/share/po/uz@cyrillic.po
+++ b/perl-install/install/share/po/uz@cyrillic.po
@@ -3,54 +3,80 @@
# Copyright (C) 2003 Mandriva.
#
# Mashrab Kuvatov <kmashrab@uni-bremen.de>, 2003, 2004, 2006, 2007, 2008.
-# Nurali Abdurahmonov <mavnur@gmail.com>, 2006.
+# Nurali Abdurahmonov <mavnur@gmail.com>, 2006, 2009, 2010.
# Behzod Saidov <behzodsaidov@gmail.com>, 2007.
msgid ""
msgstr ""
"Project-Id-Version: uz@cyrillic\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2008-08-24 01:06+0200\n"
-"Last-Translator: Mashrab Kuvatov <kmashrab@uni-bremen.de>\n"
-"Language-Team: Uzbek <floss-uz-l10n@googlegroups.com>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2010-01-07 11:35+0500\n"
+"Last-Translator: Nurali Abdurahmonov <mavnur@gmail.com>\n"
+"Language-Team: American English <kde-i18n-doc@kde.org>\n"
+"Language: uz\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
+"X-Generator: Lokalize 1.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
+#, fuzzy, c-format
+msgid "Office tools"
+msgstr "Идора станцияси"
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Thank you!"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/10_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Be Free!"
msgstr ""
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Сизда қўшимча компакт-диск борми?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -63,94 +89,57 @@ msgstr ""
"\n"
"Мосланиши керак бўлган қўшимча ўрнатиш манбаси борми?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "Компакт-диск"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Тармоқ (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Тармоқ (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Тармоқ (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Ойнанинг манзили (URL)"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Манзил ftp:// ёки http:// билан бошланиши керак"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Мавжуд бўлган ойналарнинг рўйхатини олиш учун Mandriva Linux сайти билан "
-"алоқа ўрнатилмоқда..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Мавжуд бўлган ойналарнинг рўйхатини олиш учун Mandriva Linux сайти билан "
-"алоқа ўрнатиб бўлмади"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Пакетларни олиш учун ойнани танланг"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS орқали ўрнатиш"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "NFS тўпламининг компьютер номини ва директорияни киритинг"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "Компьютернинг номи кўрсатилмаган"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Директория \"/\" белги билан бошлаши керак"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS серверининг хост номи"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Директория"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Қўшимча"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -159,23 +148,90 @@ msgstr ""
"Ойнада пакетлар рўйхатини топиб бўлмади. Манзил (URL) тўғри "
"кўрсатилганлигини текширинг."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, fuzzy, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "\"%s\" тўпламидан ҳамма пакетларга эътибор берилмасин"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Аллақачон ўрнатилган пакетлар қидирилмоқда..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Янгилаш учун пакетлар қидирилмоқда..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Янгилашдан аввал пакетлар олиб ташланмоқда..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -188,88 +244,88 @@ msgstr ""
"\n"
"Давом этишни истайсизми?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "%s файлини ўқишда хато рўй берди"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Қуйидаги диск(лар)нинг номи ўзгартирилди:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (олдинги номи %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Тармоқ"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Илтимос тўпламни танланг"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Файл аллақачон мавжуд. Уни алмаштиришни истайсизми?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Рухсат йўқ"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "NFS номи нотўғри"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Нотўғри тўплам %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Скриншотларни дискни бўлишдан аввал олиб бўлмайди"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr ""
"Ўрнатиш тугаганидан кейин скриншотларни қуйидаги жойдан топиш мумкин: %s"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Ўрнатиш"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Мослаш"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Сиз %s'ни ҳам формат қилишингиз керак"
@@ -293,22 +349,22 @@ msgstr "Тармоқ ишга туширилмоқда"
msgid "Bringing down the network"
msgstr "Тармоқ ўчирилмоқда"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
-msgstr ""
+msgstr "Илтимос кутиб туринг, файл олинмоқда"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "манбани қўшиб бўлмади"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Баъзи пакетлардан дискка нусха олинмоқда"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Нусха олиш давом этмоқда"
@@ -338,7 +394,22 @@ msgstr "яхши"
msgid "maybe"
msgstr "балки"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Таъриф йўқ"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -347,75 +418,76 @@ msgstr ""
"%s талаб қиладиган баъзи пакетларни ўрнатиб бўлмайди:\n"
"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Хато рўй берди"
+msgstr "Хато рўй берди:"
-#: pkgs.pm:792
+#: pkgs.pm:405
#, c-format
-msgid "%d installation transactions failed"
+msgid "A fatal error occurred: %s."
+msgstr "Жуда жиддий хато рўй берди: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
msgstr ""
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr "%d ўрнатиш транзакцияси муваффақиятсиз тугади"
+
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "%s пакети ўрнатилмоқда"
+msgstr "Пакетларни ўрнатиб бўлмади:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Иш станцияси"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Идора станцияси"
-#: share/meta-task/compssUsers.pl:17
-#, c-format
-msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
-msgstr ""
-"Идора учун дастурлар: матн процессорлари (OpenOffice.org Writer, Kword), "
-"электрон жадваллар (OpenOffice.org Calc, Kspread), PDF кўрувчилар ва ҳоказо"
-
-#: share/meta-task/compssUsers.pl:18
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Идора учун дастурлар: матн процессорлари (kword, abiword), электрон "
-"жадваллар (kspread, gnumeric), PDF кўрувчилар ва ҳоказо"
+"Идора учун дастурлар: матн процессорлари (LibreOffice Writer, Kword), "
+"электрон жадваллар (LibreOffice Calc, Kspread), PDF кўрувчилар ва ҳоказо"
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Ўйин станцияси"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Овунчоқ дастурлар: аркада, стол ўйинлари, стратегия ва ҳоказо"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Мултимедиа станцияси"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Аудио ва видеони ўйнаш/таҳрирлаш учун дастурлар"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Интернет станцияси"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -424,205 +496,205 @@ msgstr ""
"Хат-хабар, янгиликларни ўқиш ва жўнатиш (mutt, tin..) ва Интернетда сайр "
"қилиш учун воситалар тўплами"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Тармоқдаги компьютер (клиент)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Турли протоколлар, шу жумлада SSH, учун клиентлар"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Компьютерни мослашни енгилаштириш учун воситалар"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Консол воситалари"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Таҳрирчилар, консоллар, файл воситалари, терминаллар"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Тузиш"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C ва C++ тузиш кутубхоналари, воситалар ва хедер файллар"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Қўлланмалар"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Linux ва эркин дастурлар ҳақида китоблар ва Howto'лар"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
-msgstr ""
+msgstr "Linux Standard Base. Учинчи томон дастур тузувчилари қўллануви"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Веб-сервери"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab сервери"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Файервол/Рутер"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Интернет гейтвэйи"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Хат-хабар/Янгиликлар"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix хат-хабар сервери, Inn янгиликлар сервери"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Директория сервери"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP сервери"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "DNS ва NIS"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Файл ва принтерни бўлишиш сервери"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS сервери, Samba сервери"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Маълумот базаси"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL ва MySQL маълумот базаси"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL ва MariaDB маълумот базаси"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache, Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Хат-хабар"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix хат-хабар сервери"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL ёки MySQL маълумот базаси"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL ёки MariaDB маълумот базаси"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Тармоқдаги компьютер (сервер)"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS сервери, SMB сервери, Proxy сервери, SSH сервери"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "График муҳит"
-#: share/meta-task/compssUsers.pl:135
-#, c-format
-msgid "KDE Workstation"
-msgstr "KDE станцияси"
+#: share/meta-task/compssUsers.pl:152
+#, fuzzy, c-format
+msgid "Plasma Workstation"
+msgstr "Иш станцияси"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "KDE - воситалар тўплами билан бирга асосий график муҳит"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME станцияси"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -631,66 +703,117 @@ msgstr ""
"Фойдаланувчилар учун қулай дастурлар ва иш столи воситаларидан иборат график "
"муҳит"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "IceWm иш столи"
+msgid "Xfce Workstation"
+msgstr "KDE станцияси"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:165
#, fuzzy, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
"Фойдаланувчилар учун қулай дастурлар ва иш столи воситаларидан иборат график "
"муҳит"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, fuzzy, c-format
+msgid "MATE Workstation"
+msgstr "GNOME станцияси"
+
+#: share/meta-task/compssUsers.pl:174
+#, fuzzy, c-format
+msgid "Cinnamon Workstation"
+msgstr "Иш станцияси"
+
+#: share/meta-task/compssUsers.pl:175
+#, fuzzy, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "График муҳит"
+
+#: share/meta-task/compssUsers.pl:179
+#, fuzzy, c-format
+msgid "LXQt Desktop"
+msgstr "LXDE иш столи"
+
+#: share/meta-task/compssUsers.pl:181
+#, fuzzy, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+"Фойдаланувчи учун қулай дастурлар ва иш столи восилари мавжуд бўлган енгил "
+"ва тез ишловчи график муҳит"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, fuzzy, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+"Фойдаланувчи учун қулай дастурлар ва иш столи восилари мавжуд бўлган енгил "
+"ва тез ишловчи график муҳит"
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "LXDE иш столи"
+
+#: share/meta-task/compssUsers.pl:191
+#, fuzzy, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+"Фойдаланувчи учун қулай дастурлар ва иш столи восилари мавжуд бўлган енгил "
+"ва тез ишловчи график муҳит"
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Бошқа график иш столлари"
-#: share/meta-task/compssUsers.pl:151
-#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
+#: share/meta-task/compssUsers.pl:195
+#, fuzzy, c-format
+msgid "Window Maker, Fvwm, etc"
msgstr "Window Maker, Enlightenment, Fvwm, ва ҳоказо"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Воситалар"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH сервери"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin масофадан бошқариш сервери"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Тармоқ воситалари/Назорат қилиш"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Назорат қилиш воситалари, вазифалар ҳисоботчилари, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva ёрдамчилари"
+msgid "Mageia Wizards"
+msgstr "Mageia ёрдамчилари"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Серверни мослаш учун ёрдамчилар"
@@ -701,8 +824,10 @@ msgid ""
"An error occurred, but I do not know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
+"Хатолик юз берди аммо унинг сабаби аниқланмади.\n"
+"Тавваккал қилган ҳолда давом этишингиз мумкин."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -722,248 +847,256 @@ msgstr "%s босқичга ўтилмоқда\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux ОТни ўрнатиш %s"
+msgid "%s Installation %s"
+msgstr "%s ОТни ўрнатиш %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> банддан-бандга"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg дастури жуда секин ишга тушяпти. Илтимос кутиб туринг..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
+"Тизимда ресурслар етишмайди. %s тизимини ўрнатиш мобайнида\n"
+"муаммога дуч келишингиз мумкин. Агар шундай бўлса, матн усулида ўрнатиш "
+"воситасидан фойдаланиб кўринг,\n"
+"Бунинг учун дискдан юкланаётганда `F1' тугмасини босинг ва `text' деб ёзинг."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
+msgstr "Манбани танлаш"
+
+#: steps_gtk.pm:257
+#, fuzzy, c-format
+msgid "Install %s Plasma Desktop"
msgstr "KDE иш столи"
-#: steps_gtk.pm:239
-#, c-format
-msgid "Install Mandriva GNOME Desktop"
+#: steps_gtk.pm:258
+#, fuzzy, c-format
+msgid "Install %s GNOME Desktop"
msgstr "GNOME иш столи"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "Бошқа"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "IceWm иш столи"
+msgid "Plasma Desktop"
+msgstr "Бошқа иш столи"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm иш столи"
+msgstr "GNOME иш столи"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "IceWm иш столи"
+msgstr "Бошқа иш столи"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
-msgstr ""
+msgstr "Бу '%s' иш столининг кўриниши."
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "Иш столини яқинроқдан кўриш учун расмни сичқонча билан босинг"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Пакетларни гуруҳ бўйича танлаш"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Пакетларни биттама-битта танлаш"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Жами: %d / %d Мб"
+msgid "Unselect All"
+msgstr "Ҳеч қайси танланмасин"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Ёмон пакет"
+msgid "Total size: %d / %d MB"
+msgstr "Жами: %d / %d Мб"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Версияси: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Ҳажми: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d Кб\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Муҳимлиги: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Бу пакетни танлолмайсиз/танлашни бекор қилолмайсиз"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "%s етишмагани учун"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr ""
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
-msgstr ""
+msgstr "%s ативлаштиришга ҳаракат қилинмоқда"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "%s'ни қолдириш учун"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Бу пакетни танлолмайсиз, чунки уни ўрнатиш учун етарли жой мавжуд эмас."
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Қуйидаги пакетлар ўрнатилади"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Қуйидаги пакетлар олиб ташланилади."
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Бу ўрнатилиши шарт бўлган пакет, уни танлашни бекор қилиб бўлмайди."
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Бу пакетни танлашни бекор қилолмайсиз. У аллақачон ўрнатилган."
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Бу пакетни танлашни бекор қилолмайсиз. У янгиланиши шарт."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Автоматик равишда танланган пакетларни кўрсатиш"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Ўрнатиш"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Танланганни юклаш/сақлаш"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Пакетлар танлови янгиланмоқда"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Минимал ўрнатиш"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Дастурлар бошқаруви"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Сиз ўрнатмоқчи бўлган пакетларни танланг"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Ўрнатилмоқда"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Тафсилотларсиз"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Қолган вақт "
+msgstr "Қолган вақт:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(чамаланмоқда)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d-та пакет"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Ҳисобот"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Мослаш"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "мосланмаган"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Иш столини танлаш"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -972,84 +1105,84 @@ msgstr ""
"Қуйидаги ўрнатиш манбалари аниқланди.\n"
"Фақат танланган манбалар ўрнатиш учун ишлатилади."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Ўрнатишдан аввал компакт-дисклардаги пакетлардан компьютернинг дискига нусха "
"олиш мумкин.\n"
"Ўрнатиш тўлиқ тугагандан сўнг улар тизимга маълум бўлади."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Бутун дискдан нусха олиш"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Хато рўй берди"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Илтимос тугмалар тартибини танланг"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Мавжуд бўлган тугматагларнинг тўлиқ рўйхати"
+msgstr "Мавжуд бўлган клавиатураларнинг тўлиқ рўйхати:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Ўрнатиш/Янгилаш"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Бу ўрнатишми ёки янгилашми?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Ўрнатиш"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "%s ОТни янгилаш"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s учун кодлаш калити"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "Ўрнатишни бекор қилиш, компьютерни ўчириб-ёқиш"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "Ўрнатиш"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Олдинги ўрнатишни янгилаш (тавсия этилмайди)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1058,32 +1191,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "IDE'ни мослаш"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
+#: steps_interactive.pm:264
+#, fuzzy, c-format
+msgid "Configuring CD/DVD"
+msgstr "IDE'ни мослаш"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1097,71 +1215,71 @@ msgstr ""
"Агар у сизда бўлмаса, бу компакт-дискдан ўрнатишни бекор қилиш учун \"Бекор "
"қилиш\" тугмасини босинг."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Мавжуд бўлган пакетлар қидирилмоқда..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr "Тизимда ўрнатиш ёки янгилаш учун етарли жой қолмади (%d Мб > %d Мб)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Юклаш"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Сақлаш"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Нотўғри файл"
-#: steps_interactive.pm:467
-#, c-format
-msgid "KDE"
-msgstr "KDE"
+#: steps_interactive.pm:455
+#, fuzzy, c-format
+msgid "Plasma"
+msgstr "Бошқа иш столи"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "Иш столини танлаш"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "Қуйидагилардан ўрнатиладиган иш столини танланг"
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Танланган ҳажм мавжуд бўлган бўш жойдан катта"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Ўрнатишнинг тури"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1170,87 +1288,126 @@ msgstr ""
"Сиз ҳеч қандай пакетлар гуруҳини танламадингиз.\n"
"Илтимос сиз истаган минимал ўрнатишни танланг:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "X билан"
-#: steps_interactive.pm:581
+#: steps_interactive.pm:583
#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "%s пакети ўрнатилмоқда"
+msgid "Install recommended packages"
+msgstr "Таклиф қилинган пакетларни ўрнатиш"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Асосий қўлланмалар билан (тавсия қилинади!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Ҳақиқий минимал ўрнатиш (хусусан urpmi'сиз)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, fuzzy, c-format
+msgid "Preparing upgrade..."
+msgstr "ОТ юклагичи тайёрланмоқда..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Ўрнатишга тайёрланмоқда"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "%s пакети ўрнатилмоқда"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Қуйидаги пакетларни саралашда хато рўй берди:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Бунга қарамасдан давом этишни истайсизми?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Қайтадан уриниш"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Бу пакетга эътибор берилмасин"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "\"%s\" тўпламидан ҳамма пакетларга эътибор берилмасин"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Ўрнатиш манбаларни ва пакетларни танлашга қайтиш"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Қуйидаги пакетни ўрнатишда хато рўй берди: %s"
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Ўрнатишдан кейин мослаш"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr ""
+msgstr "%s ичида Update Modules тўплами мавжудлигини текшириб кўринг"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Янгиланишлар"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Қуйидаги пакетлар ўрнатилади"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, fuzzy, c-format
+msgid "Retry?"
+msgstr "Қайтадан уриниш"
+
+#: steps_interactive.pm:784
+#, fuzzy, c-format
+msgid "Failure when adding medium"
+msgstr "манбани қўшиб бўлмади"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1263,7 +1420,7 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
"Ҳозир сизда янгиланган пакетларни ёзиб олиб ўрнатиш имконияти мавжуд.\n"
-"Улар ҳозир сиз ўрнатган Mandriva Linux тизими чиққанидан сўнг\n"
+"Улар ҳозир сиз ўрнатган Mageia тизими чиққанидан сўнг\n"
"янгиланган. Уларда ҳар хил хавфсизлик ва дастурлар билан боғлиқ\n"
"хатоликлар тузатилган бўлиши мумкин.\n"
"\n"
@@ -1272,108 +1429,80 @@ msgstr ""
"\n"
"Янгиланишларни ўрнатишни истайсизми?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s %s'да"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Асбоб-ускуналар"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Товуш карта"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Сизда ISA товуш картаси борми?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Ўрнатишдан кейин, товуш картангизни мослаш учун, \"sndconfig\" ёки \"alsaconf"
-"\" дастурини ишга туширинг"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Товуш картаси топилмади. Ўрнатишдан кейин \"harddrake\" дастурини синаб "
-"кўринг."
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "График интерфейс"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Тармоқ ва Интернет"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Проксилар"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "мосланган"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Хавфсизлик даражаси"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Файервол"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "ишлаяпти"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "ўчирилган"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Сиз X'ни мосламадингиз. Ростдан буни истайсизми?"
-#: steps_interactive.pm:1023
-#, c-format
-msgid "Preparing bootloader..."
-msgstr "ОТ юклагичи тайёрланмоқда..."
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, fuzzy, c-format
+msgid "Preparing initial startup program..."
+msgstr "Ўрнатишга тайёрланмоқда"
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
-msgstr ""
-
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
+msgstr "Кутиб туринг, бу бироз вақт олиши мумкин..."
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1382,17 +1511,17 @@ msgstr ""
"Ушбу хавфсизлик даража қўлланилганда дискнинг Windows қисмидаги файлларга "
"фақат администратор мурожаат қилиши мумкин."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Бўш дискетни %s ускунасига қўйинг"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Авто-ўрнатиш дискети яратилмоқда..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1403,12 +1532,12 @@ msgstr ""
"\n"
"Ростдан чиқишни истайсизми?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Табриклаймиз!"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Ўчириб-ёқиш"
@@ -1503,13 +1632,6 @@ msgid ""
"Users"
msgstr "Фойдаланувчилар"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Тармоқ"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1552,6 +1674,142 @@ msgid ""
"Exit"
msgstr "Чиқиш"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Ойнанинг манзили (URL)"
+
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Манзил ftp:// ёки http:// билан бошланиши керак"
+
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
+#~ msgstr ""
+#~ "Мавжуд бўлган ойналарнинг рўйхатини олиш учун %s сайти билан алоқа "
+#~ "ўрнатилмоқда..."
+
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
+#~ msgstr ""
+#~ "Мавжуд бўлган ойналарнинг рўйхатини олиш учун %s сайти билан алоқа "
+#~ "ўрнатиб бўлмади"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Пакетларни олиш учун ойнани танланг"
+
+#~ msgid "KDE Workstation"
+#~ msgstr "KDE станцияси"
+
+#, fuzzy
+#~ msgid "XFCE Workstation"
+#~ msgstr "KDE станцияси"
+
+#, fuzzy
+#~ msgid "RazorQT Desktop"
+#~ msgstr "Бошқа иш столи"
+
+#~ msgid "Do you have an ISA sound card?"
+#~ msgstr "Сизда ISA товуш картаси борми?"
+
+#~ msgid ""
+#~ "Run \"alsaconf\" or \"sndconfig\" after installation to configure your "
+#~ "sound card"
+#~ msgstr ""
+#~ "Ўрнатишдан кейин, товуш картангизни мослаш учун, \"sndconfig\" ёки "
+#~ "\"alsaconf\" дастурини ишга туширинг"
+
+#~ msgid "No sound card detected. Try \"harddrake\" after installation"
+#~ msgstr ""
+#~ "Товуш картаси топилмади. Ўрнатишдан кейин \"harddrake\" дастурини синаб "
+#~ "кўринг."
+
+#~ msgid "KDE Desktop"
+#~ msgstr "KDE иш столи"
+
+#~ msgid "KDE"
+#~ msgstr "KDE"
+
+#~ msgid "CD-ROM"
+#~ msgstr "Компакт-диск"
+
+#, fuzzy
+#~ msgid ""
+#~ "The Plasma Desktop, the basic graphical environment with a collection of "
+#~ "accompanying tools"
+#~ msgstr "KDE - воситалар тўплами билан бирга асосий график муҳит"
+
+#~ msgid "IDE"
+#~ msgstr "IDE"
+
+#~ msgid "Preparing bootloader..."
+#~ msgstr "ОТ юклагичи тайёрланмоқда..."
+
+#~ msgid ""
+#~ "A lightweight & fast graphical environment with user-friendly set of "
+#~ "applications and desktop tools"
+#~ msgstr ""
+#~ "Фойдаланувчи учун қулай дастурлар ва иш столи восилари мавжуд бўлган "
+#~ "енгил ва тез ишловчи график муҳит"
+
+#~ msgid ""
+#~ "No free space for 1MB bootstrap! Install will continue, but to boot your "
+#~ "system, you'll need to create the bootstrap partition in DiskDrake"
+#~ msgstr ""
+#~ "1Мблик юкловчи дастур учун етарли жой қолмаган! Ўрнатиш давом этади аммо "
+#~ "тизимни юклаш учун DiskDrake'да дастлабки юкловчи яратилиши керак"
+
+#~ msgid ""
+#~ "You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
+#~ "will not work for you. The install will continue, but you'll need to use "
+#~ "BootX or some other means to boot your machine. The kernel argument for "
+#~ "the root fs is: root=%s"
+#~ msgstr ""
+#~ "Компьютерингиз жуда эски русумга ёки номаълум русмга ўхшайди, шу сабабдан "
+#~ "yaboot тизим юкловчиси ишламайди. Ўрнатиш давом этади аммо тизимни юклаш "
+#~ "учун BootX ёки бошқа усулдан фойдаланишингиз лозим бўлади. Root файл "
+#~ "тизими учун учун кернел аргументи: root=%s"
+
+#~ msgid "Welcome"
+#~ msgstr "Марҳамат"
+
+#~ msgid "Select All"
+#~ msgstr "Ҳаммасини танлаш"
+
+#~ msgid "Bad package"
+#~ msgstr "Ёмон пакет"
+
+#, fuzzy
+#~ msgid "Preparing boot images..."
+#~ msgstr "ОТ юклагичи тайёрланмоқда..."
+
+#~ msgid ""
+#~ "_: Keep these entry short\n"
+#~ "Networking"
+#~ msgstr "Тармоқ"
+
+#~ msgid "Your desktop on a USB key"
+#~ msgstr "Сизнинг иш столингиз USB калитда"
+
+#~ msgid "The 100%% open source Mageia distribution"
+#~ msgstr "100%% очиқ кодли Mageia дистрибутиви"
+
+#~ msgid "Explore Linux easily with Mageia One"
+#~ msgstr "Mageia One ёрдамида Linux'ни осонгина кашф этинг"
+
+#~ msgid "A full Mageia desktop, with support"
+#~ msgstr "Тўлиқ Mageia иш столи, қўллаб-қувватлаш билан"
+
+#~ msgid "Mageia: distributions for everybody's needs"
+#~ msgstr "Mageia: барчага мўлжалланган дистрибутив"
+
+#~ msgid ""
+#~ "Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
+#~ "gnumeric), pdf viewers, etc"
+#~ msgstr ""
+#~ "Идора учун дастурлар: матн процессорлари (kword, abiword), электрон "
+#~ "жадваллар (kspread, gnumeric), PDF кўрувчилар ва ҳоказо"
+
#~ msgid "Downloading file %s..."
#~ msgstr "%s файли ёзиб олинмоқда..."
diff --git a/perl-install/install/share/po/vi.po b/perl-install/install/share/po/vi.po
index ad66c9272..cb1049f72 100644
--- a/perl-install/install/share/po/vi.po
+++ b/perl-install/install/share/po/vi.po
@@ -1,53 +1,80 @@
-# translation of DrakX-vi.po to
-# Vietnamese Translation for DrakX module.
-# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
-# Trinh Minh Thanh <tmthanh@yahoo.com> 2001-2005.
-# Larry Nguyen <larry@vnlinux.org> 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-vi version\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-06-02 21:17+0700\n"
-"Last-Translator: Larry Nguyen <larry@vnlinux.org>\n"
-"Language-Team: <gnomevi-list@lists.sourceforge.net>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Vietnamese (http://www.transifex.com/MageiaLinux/mageia/"
+"language/vi/)\n"
+"Language: vi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Bạn còn phương tiện nào khác không?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -56,117 +83,147 @@ msgid ""
"Do you have a supplementary installation medium to configure?"
msgstr ""
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Mạng (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Mạng (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr ""
-#: any.pm:165
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr ""
+
+#: any.pm:225
#, c-format
-msgid "URL of the mirror?"
-msgstr "URL của mirror?"
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
-#: any.pm:171
+#: any.pm:229
#, c-format
-msgid "URL must start with ftp:// or http://"
+msgid "Hostname missing"
msgstr ""
-#: any.pm:182
+#: any.pm:230
#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
+msgid "Directory must begin with \"/\""
msgstr ""
-"Đang kết nối với website của Mandriva Linux để lấy danh sách các mirrors "
-"hiệncó..."
-#: any.pm:187
-#, fuzzy, c-format
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr "Thư mục"
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr "Không thể tìm tập tin hdlist trên mirror này"
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
msgstr ""
-"Đang kết nối với website của Mandriva Linux để lấy danh sách các mirrors "
-"hiệncó..."
-#: any.pm:197
+#: any.pm:327
#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Chọn một mirror để tải các gói về"
+msgid "Tainted Release"
+msgstr ""
-#: any.pm:227
+#: any.pm:329
#, c-format
-msgid "NFS setup"
+msgid "Nonfree Release"
msgstr ""
-#: any.pm:228
+#: any.pm:367
#, c-format
-msgid "Please enter the hostname and directory of your NFS media"
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
msgstr ""
-#: any.pm:232
+#: any.pm:368
#, c-format
-msgid "Hostname missing"
+msgid "You should enable \"%s\""
msgstr ""
-#: any.pm:233
+#: any.pm:419
#, c-format
-msgid "Directory must begin with \"/\""
+msgid "\"%s\" contains the various pieces of the systems and its applications"
msgstr ""
-#: any.pm:237
+#: any.pm:420
#, c-format
-msgid "Hostname of the NFS mount ?"
+msgid "\"%s\" contains non free software.\n"
msgstr ""
-#: any.pm:238
+#: any.pm:421
#, c-format
-msgid "Directory"
-msgstr "Thư mục"
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
-#: any.pm:260
+#: any.pm:422
#, c-format
-msgid "Supplementary"
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
msgstr ""
-#: any.pm:295
+#: any.pm:423
#, c-format
msgid ""
-"Can't find a package list file on this mirror. Make sure the location is "
-"correct."
-msgstr "Không thể tìm tập tin hdlist trên mirror này"
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
-#: any.pm:334
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Kiểm tra các gói đã được cài đặt..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Đang tìm các gói để nâng cấp"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -179,87 +236,87 @@ msgstr ""
"\n"
"Bạn có thật sự muốn gỡ bỏ các gói tin này không?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Lỗi khi đọc tập tin %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Đã đổi tên (các) đĩa sau:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (tên cũ là %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Mạng"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Hãy chọn phương tiện"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Tập tin tồn tại. Có ghi đè nó không?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Quyền hạn bị từ chối"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr ""
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Phương tiện hỏng %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Không thể tạo ảnh đĩa trước khi phân vùng"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Sẽ có ảnh chụp sau quá trình cài đặt trong %s"
-#: gtk.pm:131
-#, fuzzy, c-format
+#: gtk.pm:134
+#, c-format
msgid "Installation"
-msgstr "Đang cài đặt"
+msgstr ""
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Cấu hình"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Cũng phải định dạng %s"
@@ -283,22 +340,22 @@ msgstr "Bật chức năng mạng"
msgid "Bringing down the network"
msgstr "Tắt chức năng mạng"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr ""
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr ""
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Đang sao chép"
@@ -328,276 +385,292 @@ msgstr "tuyệt"
msgid "maybe"
msgstr "có thể là"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Không có mô tả"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Lỗi xảy ra"
+msgstr ""
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "Xả ra lỗi trầm trọng: %s."
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Đừng hỏi nữa "
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d phiên giao dịch cài đặt lỗi"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Đang cài đặt gói %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Máy trạm"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Văn phòng"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Các chương trình văn phòng: wordprocessors (OpenOffice.org Writer, Kword), "
-"spreadsheets (OpenOffice.org Calc, Kspread), chương trình xem PDF, v.v..."
+"Các chương trình văn phòng: wordprocessors (LibreOffice Writer, Kword), "
+"spreadsheets (LibreOffice Calc, Kspread), chương trình xem PDF, v.v..."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Các chương trình văn phòng: wordprocessors (kword, abiword), spreadsheets "
-"(kspread, gnumeric), pdf viewers, v.v..."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Trò chơi"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Các chương trình giải trí: arcade, boards, strategy, v.v..."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Đa phương tiện"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Các chương trình chơi Audio-Video/soạn thảo"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr "Bộ công cụ đọc gửi thư tín và tin tức (mutt, tin..) và để duyệt Web"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Máy tính mạng (khách)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Máy khách cho các giao thức khác bao gồm ssh"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Công cụ xoá cấu hình máy tính của bạn"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Các công cụ console"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Các trình soạn thảo, các tiện ích tập tin, các thiết bị đầu cuối"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Phát triển"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr ""
"Các thư viện phát triển C và C++, các chương trình và các tập tin đi kèm"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Tài liệu"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Các sách, how-to cho Linux và phần mềm miễn phí"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Cơ Sở Về Chuẩn Linux (LSB). Hỗ trợ ứng dụng cho hãng thứ ba."
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Máy chủ Web"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Groupware"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Máy chủ Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Tường lửa/Định tuyến"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Cổng kết nối Internet"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Mail/News"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix mail server, Inn news server"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Máy chủ thư mục"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Máy chủ FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Máy chủ thông tin mạng và tên miền"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Máy chủ chia sẻ máy in và tập tin"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Máy chủ Samba, NFS"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Cơ sở dữ liệu"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Máy chủ cơ sở dữ liệu PostgreSQL và MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Máy chủ cơ sở dữ liệu PostgreSQL và MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache và Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Thư"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Máy chủ thư Postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL hay MySQL máy chủ cơ sở dữ liệu"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL hay MariaDB máy chủ cơ sở dữ liệu"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Máy chủ mạng"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Máy chủ NFS, SMB, SSH, ủy nhiệm"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Môi trường đồ hoạ"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE"
+msgid "Plasma Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -605,12 +678,12 @@ msgid ""
msgstr ""
"K Desktop Environment, một môi trường đồ họa với một sưu tập tiện ích đi kèm"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME Workstation"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -618,65 +691,109 @@ msgid ""
msgstr ""
"Môi trường đồ họa thân thiện cho các ứng dụng và các tiện ích màn hình nền"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "IceWm Desktop"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Môi trường đồ họa thân thiện cho các ứng dụng và các tiện ích màn hình nền"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Các màn hình nền đồ hoạ khác"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, v.v..."
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Tiện ích"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Máy chủ SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Cấu hình máy chủ từ xa Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Giám sát và công cụ mạng"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Các công cụ theo dõi, quản lý tiến trình, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Đồ thuật Mandriva"
+msgid "Mageia Wizards"
+msgstr "Đồ thuật Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Đồ thuật cấu hình máy chủ"
@@ -690,7 +807,7 @@ msgstr ""
"Có lỗi xảy ra, không rõ cách giải quyết thích hợp.\n"
"Tiếp tục với rủi ro."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -709,252 +826,255 @@ msgstr "Bắt đầu bước `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Cài đặt Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Cài đặt %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> giữa các phần tử"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Hệ thống của bạn có cấu hình thấp. Bạn có thể gặp một số trục trặc khi\n"
-"cài đặt Mandriva Linux. Nếu xảy ra lỗi, bạn có thể thay thế bằng kiểu cài "
-"đặt trong\n"
+"cài đặt %s. Nếu xảy ra lỗi, bạn có thể thay thế bằng kiểu cài đặt trong\n"
"chế độ văn bản bằng cách nhấn phím `F1' khi khởi động từ CDROM, rồi nhập "
"`text'."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Media Selection"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Cài đặt tối thiểu"
+msgstr ""
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "IceWm Desktop"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "IceWm Desktop"
+msgstr ""
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "IceWm Desktop"
+msgstr ""
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Nhóm gói tin được chọn"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Chọn các gói riêng"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Kích thước toàn bộ: %d / %d MB"
+msgid "Unselect All"
+msgstr "Mọi thứ không được chọn"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Gói hỏng"
+msgid "Total size: %d / %d MB"
+msgstr "Kích thước toàn bộ: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Phiên bản:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Kích thước:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Quan trọng:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Bạn không thể chọn/bỏ chọn gói này"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "vì thiếu %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "vì không thỏa mãn %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "thử xúc tiến %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "để giữ %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "Bạn không thể chọn gói này vì không còn đủ không gian để cài đặt"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Các gói sau đây sẽ được cài đặt"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Các gói sau đây sẽ được gỡ bỏ"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Bắt buộc cài đặt gói này, không thể bỏ chọn nó"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Bạn không thể bỏ chọn gói này. Nó được cài đặt rồi"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Bạn không thể không chọn gói này. Nó phải được nâng cấp."
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Tự động hiển thị các gói đã được chọn"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Cài đặt"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Nạp/Lưu lựa chọn"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Đang cập nhật sự lựa chọn các gói"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Cài đặt tối thiểu"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Quản Lý Phần Mềm"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Chọn các gói bạn muốn cài đặt "
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Đang cài đặt"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Không có thông tin"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Thời gian còn lại"
+msgstr ""
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Đang ước lượng"
+msgstr ""
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d các gói"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Tóm tắt"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Cấu hình"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "chưa được cấu hình"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Nhóm gói tin được chọn"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -963,12 +1083,12 @@ msgstr ""
"Phát hiện thấy phương tiện cài đặt sau đây.\n"
"Nếu không dùng, hãy bỏ chọn chúng."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Bạn có thể copy nội dung của các CD lên đĩa cứng trước khi thực hiện cài "
@@ -976,72 +1096,72 @@ msgstr ""
"Sau đó tiếp tục tiến hành cài đặt từ đĩa cứng và các gói vẫn sẵn dùng ngay "
"sau khi cài đặt xong hệ thống."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Sao chép toàn bộ CD"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Lỗi xảy ra"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Hãy chọn tổ chức bàn phím"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Đây là danh sách đầy đủ các bàn phím hiện có "
+msgstr ""
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Cài đặt/Nâng cấp"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "Thực hiện việc cài đặt hay nâng cấp ?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Cài đặt"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Nâng cấp %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Khóa mã hóa cho %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr ""
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Đang cài đặt"
+msgstr ""
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr ""
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1050,36 +1170,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "Đang cấu hình IDE"
-
-#: steps_interactive.pm:288
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
+msgid "CD/DVD"
msgstr ""
-"Không còn không gian trống 1MB cho bootstrap! Vẫn tiếp tục cài đặt, nhưng để "
-"khởi động hệ thống, bạn cần tạo phân vùng bootstrap trong DiskDrake."
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
+msgid "Configuring CD/DVD"
msgstr ""
-"Bạn cần tạo PPC PReP Boot bootstrap! Vẫn tiếp tục cài đặt, nhưng để khởi "
-"động hệ thống, bạn cần tạo phân vùng bootstrap trong DiskDrake."
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1092,19 +1193,19 @@ msgstr ""
"Hãy nạp đĩa CD có nhãn \"%s\" vào ổ đĩa rồi nhấn OK.\n"
"Nếu bạn không có, nhấn Bỏ qua để không chạy cài đặt từ đĩa này."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Đang tìm các gói hiện có"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1113,52 +1214,52 @@ msgstr ""
"Hãy chọn nạp hoặc lưu lựa chọn gói tin.\n"
"Định dạng giống các tập tin auto_install được tạo."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Tải"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Lưu"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Tập tin lỗi"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Nhóm gói tin được chọn"
+msgstr ""
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Kích thước được chọn lớn hơn không gian hiện có"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Kiểu cài đặt"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1167,87 +1268,126 @@ msgstr ""
"Bạn đã không chọn bất kỳ một nhóm gói tin nào\n"
"Hãy chọn việc cài đặt tối thiểu mà bạn muốn"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Với X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Đang cài đặt gói %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Với tài liệu cơ bản (khuyến nghị!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Cài đặt thật tối thiểu (đặc biệt là không có urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Chuẩn bị cài đặt"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Đang cài đặt gói %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Lỗi khi đang xử lý các gói:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Vẫn cứ tiếp tục?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr ""
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr ""
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr ""
-#: steps_interactive.pm:677
-#, fuzzy, c-format
+#: steps_interactive.pm:686
+#, c-format
msgid "Go back to media and packages selection"
-msgstr "Lưu lựa chọn các gói"
+msgstr ""
-#: steps_interactive.pm:680
-#, fuzzy, c-format
+#: steps_interactive.pm:689
+#, c-format
msgid "There was an error installing package %s."
-msgstr "Lỗi khi đang cài đặt các gói:"
+msgstr ""
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Cấu hình sau khi cài đặt"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "Hãy đảm bảo là phương tiện Update Modules có trong drive %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Cập nhật"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Các gói sau đây sẽ được cài đặt"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Lỗi khi thêm phương tiện"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1260,118 +1400,87 @@ msgid ""
"Do you want to install the updates?"
msgstr ""
"Bây giờ bạn có thể tải xuống các gói cập nhật. Những gói này được cập nhật\n"
-"sau khi phát hành phân phối Mandriva Linux này. Chúng có thể\n"
+"sau khi phát hành phân phối Mageia này. Chúng có thể\n"
"là cập nhật sửa lỗi hay cập nhật bảo mật.\n"
"\n"
"Để tải về những gói này, bạn cần có một kết nối Internet hoạt động.\n"
"\n"
"Bạn có muốn cài đặt các gói cập nhật không ?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s trên %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Phần cứng"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Card âm thanh"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Bạn có card âm thanh ISA không ?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Chạy lệnh \"alsaconf\" hoặc \"sndconfig\" sau khi cài đặt để cấu hìnhcard âm "
-"thanh"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr ""
-"Không phát hiện được card âm thanh nào. Hãy thử \"harddrake\" sau khi cài đặt"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Giao diện đồ họa"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Mạng & Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Proxies"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "đã cấu hình"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Mức Bảo Mật"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Tường lửa"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "Đã kích hoạt"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "Đã tắt"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "Chưa đặt cấu hình cho X. Bạn có chắc là muốn như vậy không ?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Đang chuẩn bị trình khởi động"
-
-#: steps_interactive.pm:1024
-#, c-format
-msgid "Be patient, this may take a while..."
+msgid "Preparing initial startup program..."
msgstr ""
-#: steps_interactive.pm:1035
+#: steps_interactive.pm:1073
#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
+msgid "Be patient, this may take a while..."
msgstr ""
-"Bạn có máy tính đã quá cũ hoặc không được biết đến, trình khởi động yaboot "
-"sẽ không làm việc. Vẫn tiếp tục cài đặt, nhưng bạn sẽ cần sử dụng BootX hoặc "
-"phương tiện khác để khởi động máy tính. Đối số của kernel cho root fs là: "
-"root=%s"
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1380,17 +1489,17 @@ msgstr ""
"Với mức bảo mật này, chỉ người quản trị mới có quyền truy cậpvào các tập tin "
"trong phân vùng Windows."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Nạp một đĩa mềm trắng vào ổ %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Đang tạo đĩa mềm cài đặt tự động"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1401,12 +1510,12 @@ msgstr ""
"\n"
"Bạn thực sự muốn thoát ra bây giờ?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Chúc mừng"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Khởi động lại"
@@ -1422,7 +1531,7 @@ msgstr "Chọn ngôn ngữ"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Địa phương hóa"
#: steps_list.pm:17
#, c-format
@@ -1501,13 +1610,6 @@ msgid ""
"Users"
msgstr "Người dùng"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Chạy mạng"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1550,132 +1652,15 @@ msgid ""
"Exit"
msgstr "Thoát ra"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Đang tải về tập tin %s..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Bạn đã chọn các máy chủ sau đây: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Các máy chủ này sẽ được kích hoạt theo mặc định. Hiện giờ chưa có bất kỳ\n"
-#~ "lỗi bảo mật nào được phát hiện, nhưng cũng có thể đã tìm ra một vài lỗi "
-#~ "mới.\n"
-#~ "Trong trường hợp đó, bạn phải nâng cấp càng sớm càng tốt.\n"
-#~ "\n"
-#~ "\n"
-#~ "Bạn có thật sự muốn cài đặt các máy chủ này không?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWm Desktop"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Đang kết nối với mirror để lấy danh sách các gói hiện có"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Không thể kết nối được với mirror %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Tạo đĩa mềm cài đặt tự động"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "Cài đặt tự động có thể hoàn toàn tự động nếu\n"
-#~ "muốn, trong trường hợp này nó sẽ tiếp nối ổ cứng!!\n"
-#~ "(Nghĩa là tiến hành cài đặt lên một ổ khác).\n"
-#~ "\n"
-#~ "Có thể bạn thích diễn lại quá trình cài đặt.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Diễn lại"
-
-#~ msgid "Automated"
-#~ msgstr "Tự động"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Lưu lựa chọn các gói"
-
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Bạn có muốn sử dụng aboot không?"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "URL của mirror?"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Lỗi khi cài đặt aboot, \n"
-#~ "Cố gắng cài đặt kể cả khi nó có thể phá hỏng phân vùng đầu tiên?"
-
-#~ msgid "All"
-#~ msgstr "Toàn bộ"
-
-#~ msgid "TV card"
-#~ msgstr "Card TV"
-
-#~ msgid "Boot"
-#~ msgstr "Khởi động"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Xác nhận"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "%d packages"
-#~ msgstr "%d các gói"
-
-#~ msgid "Language"
-#~ msgstr "Chọn ngôn ngữ"
+#~ "Đang kết nối với website của %s để lấy danh sách các mirrors hiệncó..."
-#~ msgid "License"
-#~ msgstr "Giấy phép"
-
-#, fuzzy
-#~ msgid "Installation class"
-#~ msgstr "Chọn kiểu cài đặt"
-
-#, fuzzy
-#~ msgid "Formatting"
-#~ msgstr "Đang ước lượng"
-
-#, fuzzy
-#~ msgid "Choosing packages"
-#~ msgstr "Chọn các gói cài đặt"
-
-#~ msgid "Users"
-#~ msgstr "Người dùng"
-
-#~ msgid "Networking"
-#~ msgstr "Chạy mạng"
-
-#~ msgid "Configure X"
-#~ msgstr "Cấu hình X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
-#~ msgstr ""
-#~ "Không thể truy cập các mô-đun kernel tương ứng với kernel của bạn (thiếu "
-#~ "tập tin %s), thường là do đĩa mềm khởi động không đồng bộ với các phương "
-#~ "tiện cài đặt (hãy tạo một đĩa mềm khởi động mới hơn)"
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Chọn một mirror để tải các gói về"
diff --git a/perl-install/install/share/po/wa.po b/perl-install/install/share/po/wa.po
index c1fe436db..3adbd0be3 100644
--- a/perl-install/install/share/po/wa.po
+++ b/perl-install/install/share/po/wa.po
@@ -1,56 +1,84 @@
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) 2000 Free Software Foundation, Inc.
-# Pablo Saratxaga <pablo@mandriva.com>, 2000,2002,2003,2004,2006.
-# Lorint Hendschel <lorinthendschel@skynet.be>, 2002.
-# Lucyin Mahin <lucyin@walon.org>, 2002,2003,2005.
-# Pablo Saratxaga <pablo@walon.org>, 2003,2004,2005,2006.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Lorint Hendschel <lorinthendschel@skynet.be>, 2002
+# Lucyin Mahin <lucyin@walon.org>, 2002-2003,2005
+# Pablo Saratxaga <pablo@mandriva.com>, 2000,2002-2004,2006
+# Pablo Saratxaga <pablo@walon.org>, 2003-2006,2016
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2005-02-24 21:42+0100\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
"Last-Translator: Pablo Saratxaga <pablo@walon.org>\n"
-"Language-Team: Walloon <linux-wa@walon.org>\n"
+"Language-Team: Walloon (http://www.transifex.com/MageiaLinux/mageia/language/"
+"wa/)\n"
+"Language: wa\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: KBabel 1.0.2\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
+msgid "Join Us!"
msgstr ""
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
+msgid "Make it yours!"
msgstr ""
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
+msgid "Your choice!"
msgstr ""
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
+msgid "Office tools"
msgstr ""
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
+msgid "Home entertainment"
msgstr ""
-#: any.pm:109
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "Pol famile!"
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "Po les programeus!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "Gråces!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "Avoz vs co ds ôtes sopoirts?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -64,94 +92,57 @@ msgstr ""
"\n"
"Avoz vs cor on sopoirt d' astalaedje a-z apontyî?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "Plake lazer"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "Rantoele (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "Rantoele (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "Rantoele (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "Hårdêye do muroe?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "Li hårdêye doet cmincî avou «ftp://» ou «http://»"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr ""
-"Dj' atôtche li waibe da Mandriva Linux po-z aveur li djivêye des muroes k' i "
-"gn a"
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr ""
-"Dji n' a savou atôtchî l' waibe da Mandriva Linux po-z aveur li djivêye des "
-"muroes k' i gn a"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "Tchoezixhoz on muroe po nd aberweter des pacaedjes foû"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "Apontiaedje NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "Tapez l' no d' lodjoe eyet l' ridant di vosse sopoirt NFS"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "I manke li no d' lodjoe"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "Li ridant doet cmincî avou «/»"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "No d' lodjoe do montaedje NFS?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "Ridant"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "Di rawete"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
@@ -160,23 +151,90 @@ msgstr ""
"Dji n' sai trover l' djivêye di fitchîs so ç' muroe ci. Acertinez vs ki "
"l' eplaeçmint est corek."
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "«%s» contént les diferins bokets do sistinme et ses programes"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "«%s» contént des programes nén libes.\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "Dji cwir après les pacaedjes ki sont ddja astalés..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "Dji cwir après les pacaedjes a mete a djoû"
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "Dji oistêye des pacaedjes divant d' fé l' metaedje a djoû..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -190,87 +248,87 @@ msgstr ""
"\n"
"Voloz vs vormint oister ces pacaedjes la?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "Åk n' a nén stî come dji sayive di lére li fitchî %s"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "Les plakes shuvantes ont candjî d' no:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (lomêye divant %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "Rantoele"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "Tchoezixhoz on sopoirt s' i vs plait"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "Li fitchî egzistêye dedja. El voloz vs sipotchî?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "Permission rfuzêye"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "Måva no NFS"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "Måva sopoirt %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "Dji n' pou nén fé des waitroûlêyes divant l' pårtixhaedje"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "Les waitroûlêyes seront metowes el ridant %s après l' astalaedje"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "Astalaedje"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "Apontiaedje"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "Vos dvoz abwesner eto %s"
@@ -294,22 +352,22 @@ msgstr "Metant li rantoele en alaedje"
msgid "Bringing down the network"
msgstr "Dj' arestêye li rantoele"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr ""
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "dji n' sai radjouter l' sopoirt"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "Dji copeye sacwants pacaedjes sol deure plake po pus tård"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "Dji copeye..."
@@ -339,82 +397,102 @@ msgstr "plaijhi a-z aveur"
msgid "maybe"
msgstr "ki vénreut co bén a pont"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+"Pont d' info xml pol sopoirt «%s», i n' a k' on rzultat parciel pol pacaedje "
+"%s"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "Nou discrijhaedje"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
+"Sacwants pacaedjes dimandés pa %s èn polèt nén esse astalés:\n"
+"%s"
-#: pkgs.pm:313
-#, fuzzy, c-format
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
msgid "An error occurred:"
-msgstr "Dj' aroke so ene sacwè"
+msgstr "Åk n' a nén stî:"
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "I gn a-st avou èn aroke moirt: %s."
-#: pkgs.pm:792
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "Ni pus dmander"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "I gn a-st avou %d transaccions d' astalaedje k' ont fwait berwete"
-#: pkgs.pm:793
-#, fuzzy, c-format
+#: pkgs.pm:929
+#, c-format
msgid "Installation of packages failed:"
-msgstr "Dj' astale li pacaedje %s"
+msgstr ""
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "Posse éndjolrece"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "Posse di buro"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"Programes di buro: aspougneus di tecse (OpenOffice.org Writer, Kword), "
-"tåvleus (OpenOffice.org Calc, Kspread), håyneus pdf, evnd."
+"Programes di buro: aspougneus di tecse (LibreOffice Writer, Kword), tåvleus "
+"(LibreOffice Calc, Kspread), håyneus pdf, evnd."
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"Programes di buro: aspougneus di tecse (kword, abiword), tåvleus (kspread, "
-"gnumeric), håyneus pdf, evnd."
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "Posse di djeus"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "Programes pasmints d' tins: årcåde, plateas, stratedjeye, evnd."
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "Posse multimedia"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "Programes po vey/schoûter/candjî des sons et videyos"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Posse pol rantoele daegnrece"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
@@ -423,193 +501,193 @@ msgstr ""
"Eshonna d' usteyes po lére et evoyî des messaedjes (pine, mutt, tin...) et "
"po naivyî so les pådjes waibe"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "Copiutrece rantoele (cliyint)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "Cliyints po les protocoles k' i gn a (ssh avou)"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "Usteyes po vos aveur pus åjhey d' apontyî vosse copiutrece"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Usteyes pol conzôle"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "Aspougneus, shells, usteyes po fitchîs, terminås"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "Programaedje"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "Livreyes di programaedje C et C++, programes et fitchîs *.h"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "Documintåcion"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Lives et Howtos so GNU/Linux et les libes programes"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Li «Linux Standard Base». Sopoirt po les programes tîces"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Sierveu waibe"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "Ovraedje e groupe"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Sierveu Kolab"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "Côpe feu/Routeu"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Pasrele pol rantoele daegnrece"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "Emilaedje/Copinreyes"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Sierveu d' emilaedje postfix, sierveu d' copinreyes INN"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "Sierveu d' botins"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "Sierveu FTP"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "Sierveu di nos d' dominne eyet d' informåcion rantoele"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "Sierveu di pårtaedje di fitchîs eyet di scrireces"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "Sierveu NFS, sierveu Samba"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "Sierveu, båzes di dnêyes"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "Sierveu båze di dnêyes PostgreSQL eyet MySQL"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "Sierveu båze di dnêyes PostgreSQL eyet MariaDB"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Sierveu, Waibe/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache eyet Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "Emilaedje"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Sierveu d' emilaedje postfix"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "Sierveu båze di dnêyes PostgreSQL ou MySQL"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "Sierveu båze di dnêyes PostgreSQL ou MariaDB"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "Copiutrece sierveu sol rantoele"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "Sierveu NFS, sierveu SMB, sierveu procsi, sierveu SSH"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "Evironmint grafike"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "Posse éndjolrece KDE"
+msgid "Plasma Workstation"
+msgstr "Posse éndjolrece Plasma"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
@@ -618,12 +696,12 @@ msgstr ""
"L' evironmint di scribanne KDE, l' evironmint grafike di båze, avou ene "
"ramexhnêye d' usteyes ki vnèt avou"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "Posse éndjolrece GNOME"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
@@ -632,66 +710,109 @@ msgstr ""
"Èn evironmint grafike avou on hopea di programes amiståves et d' usteyes pol "
"sicribanne"
-#: share/meta-task/compssUsers.pl:145
-#, fuzzy, c-format
-msgid "LXDE Desktop"
-msgstr "Sicribanne IceWm"
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
-#: share/meta-task/compssUsers.pl:147
-#, fuzzy, c-format
+#: share/meta-task/compssUsers.pl:165
+#, c-format
msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
msgstr ""
-"Èn evironmint grafike avou on hopea di programes amiståves et d' usteyes pol "
-"sicribanne"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "Posse éndjolrece MATE"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Posse éndjolrece Cinnamon"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "Èn evironmint grafike båzé so GNOME"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "Sicribanne LXQt"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr "Sicribanne LXDE"
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "Ôtes sicribannes grafikes"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker, Enlightenment, Fvwm, evnd."
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, evnd."
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "Usteyes"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "Sierveu SSH"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Sierveu d' apontiaedje då lon Webmin"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "Usteyes rantoele/Corwaitaedje"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "Usteyes di corwaitaedje, contaedje des process, tcpdump, nmap, ..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Macreas Mandriva"
+msgid "Mageia Wizards"
+msgstr "Macreas Mageia"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "Macreas po-z apontyî on sierveu"
@@ -705,7 +826,7 @@ msgstr ""
"Åk n' a nén stî, et dji n' sai cmint m' saetchî l' cou foû des\n"
"strons. Si vos continouwez, vos dvroz tirer vosse plan tot seu."
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
@@ -726,254 +847,258 @@ msgstr "Intrant e l' etape '%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Astalåcion di Mandriva Linux %s"
+msgid "%s Installation %s"
+msgstr "Astalåcion di %s %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> candjî elemints"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr ""
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
"Vosse sistinme a po di rsources. Vos pôrîz aveur des rujhes po\n"
-"l' astalåcion di Mandriva Linux. Si çoula arive, vos ploz sayî ene\n"
+"l' astalåcion di %s. Si çoula arive, vos ploz sayî ene\n"
"astalåcion e môde tecse. Po çoula, tchoûkîz sol tape «F1» a l' enondaedje\n"
"et poy tapez «text»."
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "Tchoezi l' sopoirt"
+
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
+msgid "Install %s Plasma Desktop"
msgstr ""
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
+msgid "Install %s GNOME Desktop"
msgstr ""
-#: steps_gtk.pm:240
-#, fuzzy, c-format
+#: steps_gtk.pm:259
+#, c-format
msgid "Custom install"
-msgstr "Astalåcion minimåle"
+msgstr "Astalåcion a vosse môde"
-#: steps_gtk.pm:261
-#, fuzzy, c-format
-msgid "KDE Desktop"
-msgstr "Sicribanne IceWm"
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr "Sicribanne Plasma"
-#: steps_gtk.pm:262
-#, fuzzy, c-format
+#: steps_gtk.pm:281
+#, c-format
msgid "GNOME Desktop"
-msgstr "Sicribanne IceWm"
+msgstr "Sicribanne GNOME"
-#: steps_gtk.pm:263
-#, fuzzy, c-format
+#: steps_gtk.pm:282
+#, c-format
msgid "Custom Desktop"
-msgstr "Sicribanne IceWm"
+msgstr "Sicribanne a vosse môde"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr ""
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr ""
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "Tchoezi les groupes di pacaedjes"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "Tchoezi tchaeke pacaedje sepårumint"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "Grandeu å totå: %d / %d Mo"
+msgid "Unselect All"
+msgstr "Distchoezi tot"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "Måva pacaedje"
+msgid "Total size: %d / %d MB"
+msgstr "Grandeu å totå: %d / %d Mo"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "Modêye: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "Grandeu: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d Ko\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "Impôrtance: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "Vos n' poloz nén tchoezi/distchoezi ci pacaedje chal"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "cåze di %s ki manke"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "cåze di %s ki n' est nén satisfyî"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "dji saye di promouvwer %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "po wårder %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr ""
"Vos n' poloz tchoezi ci pacaedje chal ca n' a nén del plaece assez ki po "
"l' astaler"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "Les pacaedjes ki shuvèt vont esse astalés"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "Les pacaedjes ki shuvèt vont esse disastalés"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "Ci pacaedje est obligatwere, vos n' poloz nén li distchoezi"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "Vos n' poloz nén distchoezi ci pacaedje chal. Il est ddja astalé"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "Vos n' poloz nén distchoezi ci pacaedje chal. I l' fåt mete a djoû"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "Mostrer les pacaedjes tchoezis otomaticmint"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "Astalaedje"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "Tcherdjî/schaper li tchuze des pacaedjes"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "Metaedje a djoû del tchuze des pacaedjes"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "Astalåcion minimåle"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "Manaedjaedje di programes"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "Tchoezixhoz les pacaedjes k' vos voloz astaler"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "Astalant"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "Po vey les rclames"
-#: steps_gtk.pm:583
-#, fuzzy, c-format
+#: steps_gtk.pm:610
+#, c-format
msgid "Time remaining:"
-msgstr "Tins ki dmeure "
+msgstr "Tins ki dmeure:"
-#: steps_gtk.pm:584
-#, fuzzy, c-format
+#: steps_gtk.pm:611
+#, c-format
msgid "(estimating...)"
-msgstr "Dj' asteme"
+msgstr "(dj' asteme...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d pacaedje"
msgstr[1] "%d pacaedjes"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "Rascourti éndjolreye"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "Apontyî"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "nén apontyî"
-#: steps_gtk.pm:738
-#, fuzzy, c-format
-msgid "Media Selection"
-msgstr "Tchoezi les groupes di pacaedjes"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -983,12 +1108,12 @@ msgstr ""
"Si vos vloz passer houte di sacwants d' zels, vos les ploz asteure "
"distchoezi."
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"Vos ploz copyî l' contnou des plakes lazer so vosse deure plake divant "
@@ -996,72 +1121,72 @@ msgstr ""
"L' astalaedje si frè-st adon a pårti del deure plake, eyet les pacaedjes "
"vont dmorer disponibes on côp ki l' sistinme serè astalé."
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "Copyî les plakes lazer en etir"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "Dj' aroke so ene sacwè"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "Tchoezixhoz li sôre di vosse taprece"
-#: steps_interactive.pm:108
-#, fuzzy, c-format
+#: steps_interactive.pm:109
+#, c-format
msgid "Here is the full list of available keyboards:"
-msgstr "Vochal li djivêye di totes les tapreces k' on pout tchoezi"
+msgstr "Voci l' djivêye di totes les tapreces k' on pout tchoezi:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "Astaler/Mete a djoû"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "C' est ene astalåcion ou on metaedje a djoû?"
-#: steps_interactive.pm:150
-#, fuzzy, c-format
+#: steps_interactive.pm:159
+#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "Astalaedje"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "Metaedje a djoû di %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "Clé d' ecriptaedje po %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
-msgstr ""
+msgstr "Rinoncî a l' astalaedje, renonder l' sistinme"
-#: steps_interactive.pm:204
-#, fuzzy, c-format
+#: steps_interactive.pm:218
+#, c-format
msgid "New Installation"
-msgstr "Astalaedje"
+msgstr "Novea astalaedje"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
-msgstr ""
+msgstr "Mete a djoû èn astalaedje di dvant (nén ricmandé)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1070,38 +1195,17 @@ msgid ""
"Installation\"."
msgstr ""
-#: steps_interactive.pm:251
-#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "Apontiant les éndjins IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"I gn a pont del plaece po on secteu d' enondaedje di 1 Mo! L' astalåcion "
-"continouwrè, mins i vos fårè fé li pårticion d' enondaedje avou DiskDrake po "
-"poleur enonder vosse sistinme."
+msgid "CD/DVD"
+msgstr "Plake lazer"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"Vos dvoz ahiver on secteu d' enondaedje PPC PReP! L' astalåcion continouwrè, "
-"mins i vos fårè fé li pårticion d' enondaedje avou DiskDrake po poleur "
-"enonder vosse sistinme."
+msgid "Configuring CD/DVD"
+msgstr "Apontiaedje del plake lazer"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1116,21 +1220,21 @@ msgstr ""
"Si vos n' l' avoz nén, clitchîz so «Rinoncî» po rinoncî a astaler a pårti\n"
"di ci CDROM chal."
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "Dji cwir après les pacaedjes k' i gn a"
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr ""
-"I gn a pus del plaece assez so vosse sistinme po-z astaler ou mete a djoû (%"
-"dMo > %dMo)"
+"I gn a pus del plaece assez so vosse sistinme po-z astaler ou mete a djoû "
+"(%dMo > %dMo)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1139,52 +1243,52 @@ msgstr ""
"Tchoezixhoz si vos vloz tcherdjî ou schaper li tchuze des pacaedjes.\n"
"Li cogne est l' minme ki po les fitchîs fwaits po l' oto-astalaedje."
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "Tcherdjî"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "Schaper"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "Måva fitchî"
-#: steps_interactive.pm:467
-#, fuzzy, c-format
-msgid "KDE"
-msgstr "IDE"
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
-#, fuzzy, c-format
+#: steps_interactive.pm:459
+#, c-format
msgid "Desktop Selection"
-msgstr "Tchoezi les groupes di pacaedjes"
+msgstr "Tchoezi l' sicribanne"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr ""
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "Li grandeu tchoezeye est pus grande kel plaece ki dmeure"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "Sôre d' astalaedje"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
@@ -1193,89 +1297,128 @@ msgstr ""
"Vos n' avoz tchoezi nou groupe di pacaedjes\n"
"Tchoezixhoz li sôre d' astalåcion minimom ki vos vloz"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "Avou X11"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "Dj' astale li pacaedje %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "Astaler les pacaedjes ricmandés"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "Avou li documintåcion di båze (ricomandé!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "Astalåcion vormint minimom (i gn a nén di urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "Dj' aprestêye li metaedje a djoû..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "Dj' aprestêye l' astalaedje"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "Dj' astale li pacaedje %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "Åk n' a nén stî come dj' arindjive les pacaedjes:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "Dji continouwe tot l' minme?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "Rissayî"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "Passer houte di ç' pacaedje ci"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "Passer houte di tos les pacaedjes do sopoirt «%s»"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "Rivni al tchuze des pacaedjes et des sopoirts"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "Åk n' a nén stî come dj' astaléve li pacaedje %s."
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "Apontiaedje di post-astalåcion"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr ""
"Acertinez vs ki l' sopoirt di metaedje a djoû des modules est dins l' lijheu "
"%s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "Metaedjes a djoû"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "Çoucial permete d' astaler des metaedjes a djoû di såvrité"
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, fuzzy, c-format
+msgid "That downloader could not be installed"
+msgstr "Les pacaedjes ki shuvèt vont esse astalés"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "Rissayî?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "Åk n' a nén stî tot radjoutant l' sopoirt"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1295,112 +1438,82 @@ msgstr ""
"\n"
"Voloz vs astaler les pacaedjes metous a djoû?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%s so %s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "Éndjolreye"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "Cåte son"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "Avoz vs ene cåte son ISA?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr ""
-"Enondez «alsaconf» ou «sndconfig» après l' astalåcion po-z apontyî vosse cåte "
-"son"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "Nole cåte son di detectêye. Sayîz «harddrake» après l' astalåcion"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "Eterface grafike"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "Rantoele locåle & daegnrece"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "Procsis"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "apontyî"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "Livea di såvrité"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "Côpe feu"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "metou en alaedje"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "dismetou"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr ""
"Vos n' avoz nén apontyî X11 (li sistinme di håynaedje grafike).\n"
"Estoz vs seur di voleur çoula?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "Dj' aprestêye l' enondrece"
+msgid "Preparing initial startup program..."
+msgstr "Dj' aprestêye li programe di prumî enondaedje..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr ""
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"I shonne ki voste éndjole est pår trop viye oudonbén k' ele nén cnoxhowe; "
-"adon l' enondrece yaboot ni rotrè nén por vos. L' astalaedje va continouwer, "
-"mins vos dvroz eployî BootX ou ôte tchoi po-z enonder voste éndjole. "
-"L' årgumint a passer å nawea pol pårticion raecene est: root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
@@ -1409,17 +1522,17 @@ msgstr ""
"Dins ç' livea di såvrité chal, l' accès åzès fitchîs des pårticions Windows "
"n' est possibe ki po l' manaedjeu di l' éndjole."
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "Metoz ene blanke plakete divins li lijheu %s"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "Dji fé li plakete d' enondaedje otomatike"
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1430,12 +1543,12 @@ msgstr ""
"\n"
"Voloz vs vormint cwiter asteure?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "Complumints"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "Renonder l' éndjole"
@@ -1451,7 +1564,7 @@ msgstr "Lingaedje"
#: steps_list.pm:16 steps_list.pm:23
#, c-format
msgid "Localization"
-msgstr ""
+msgstr "Locålizaedje"
#: steps_list.pm:17
#, c-format
@@ -1530,13 +1643,6 @@ msgid ""
"Users"
msgstr "Uzeus"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "Rantoele"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1579,189 +1685,25 @@ msgid ""
"Exit"
msgstr "Moussî foû"
-#~ msgid "Downloading file %s..."
-#~ msgstr "Aberwetaedje do fitchî %s..."
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "Vos avoz tchoezi le(s) sierveu(s) shuvant(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "Ces sierveus sront activés a l' enondaedje di l' éndjole. I n' ont nén\n"
-#~ "di problinme di såvrité cnoxhou, mins i s' pôreut k' onk soeye trové el "
-#~ "futeur.\n"
-#~ "Dins ç' cas, vos dvroz a tot côp mete a djoû li pacaedje po esse a houte\n"
-#~ "des problinmes.\n"
-#~ "\n"
-#~ "\n"
-#~ "Voloz vs vormint astaler ces sierveus?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "Sicribanne IceWm"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "Dj' atôche li muroe po-z aveur li djivêye des pacaedjes"
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "Dji n' a savou m' raloyî å muroe %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "Fé li plakete d' astalaedje otomatike"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "L' astalaedje pout esse totafwait otomatike si vos vloz,\n"
-#~ "dins ci cas i va abwesner totafwait li deure plake!!\n"
-#~ "(dj' ô bén c' est po-z astaler sor ene nouve éndjole).\n"
-#~ "\n"
-#~ "Motoit ki vos vloz rifé l' astalåcion.\n"
-
-#~ msgid "Replay"
-#~ msgstr "Rifé"
-
-#~ msgid "Automated"
-#~ msgstr "Otomatike"
-
-#~ msgid "Save packages selection"
-#~ msgstr "Schaper li tchuze des pacaedjes"
+#, c-format
+#~ msgid "URL of the mirror?"
+#~ msgstr "Hårdêye do muroe?"
-#~ msgid "Do you want to use aboot?"
-#~ msgstr "Voloz vs eployî aboot?"
+#, c-format
+#~ msgid "URL must start with ftp:// or http://"
+#~ msgstr "Li hårdêye doet cmincî avou «ftp://» ou «http://»"
-#~ msgid ""
-#~ "Error installing aboot, \n"
-#~ "try to force installation even if that destroys the first partition?"
+#, c-format
+#~ msgid "Contacting %s web site to get the list of available mirrors..."
#~ msgstr ""
-#~ "Åk n' a nén stî tot astalant aboot, \n"
-#~ "voloz vs ki dji saye di foirci l' astalåcion, minme si çoula pout\n"
-#~ "distrure li prumire pårticion?"
+#~ "Dj' atôtche li waibe da %s po-z aveur li djivêye des muroes k' i gn a"
-#~ msgid "All"
-#~ msgstr "Totafwait"
-
-#~ msgid "TV card"
-#~ msgstr "Cåte tévé"
-
-#~ msgid "Boot"
-#~ msgstr "Enondaedje"
-
-#~ msgid ""
-#~ "_: Keep these entry short\n"
-#~ "Authentication"
-#~ msgstr "Otintifiaedje"
-
-#~ msgid "Arkeia"
-#~ msgstr "Arkeia"
-
-#~ msgid "Flatout"
-#~ msgstr "Flatout"
-
-#~ msgid "Gwenview"
-#~ msgstr "Gwenview"
-
-#~ msgid "3D"
-#~ msgstr "3D"
-
-#~ msgid "CMS"
-#~ msgstr "CMS"
-
-#~ msgid "CRM"
-#~ msgstr "CRM"
-
-#~ msgid "2007 product line"
-#~ msgstr "ligne di prodûts 2007"
-
-#~ msgid "Invictus Firewall"
-#~ msgstr "Côpe feu Invictus"
-
-#~ msgid "Discovery Live Mode"
-#~ msgstr "Môde «Discovery Live»"
-
-#~ msgid "How to register"
-#~ msgstr "Kimint s' edjîstrer"
-
-#~ msgid "Rpmdrake 2"
-#~ msgstr "Rpmdrake 2"
-
-#~ msgid "Mandriva Online Services"
-#~ msgstr "Siervices so les fyis di Mandriva"
-
-#~ msgid "New Theme"
-#~ msgstr "Novea tinme"
-
-#~ msgid "Web 2.0"
-#~ msgstr "Web 2.0"
-
-#~ msgid "Kaspersky"
-#~ msgstr "Kaspersky"
-
-#~ msgid "LinDVD"
-#~ msgstr "LinDVD"
-
-#~ msgid "Skype"
-#~ msgstr "Skype"
-
-#~ msgid "Transgaming/Cedega"
-#~ msgstr "Transgaming/Cedega"
-
-#~ msgid "DrakVPN"
-#~ msgstr "DrakVPN"
-
-#~ msgid "(%d package, %d MB)"
-#~ msgid_plural "(%d packages, %d MB)"
-#~ msgstr[0] "(%d pacaedje, %d Mo)"
-#~ msgstr[1] "(%d pacaedjes, %d Mo)"
-
-#~ msgid "%d packages"
-#~ msgstr "%d pacaedjes"
-
-#~ msgid "Language"
-#~ msgstr "Lingaedje"
-
-#~ msgid "License"
-#~ msgstr "Licince"
-
-#~ msgid "Installation class"
-#~ msgstr "Li classe d' astalåcion"
-
-#~ msgid "Formatting"
-#~ msgstr "Abwesnaedje"
-
-#~ msgid "Choosing packages"
-#~ msgstr "Tchoezi les pacaedjes"
-
-#~ msgid "Users"
-#~ msgstr "Uzeus"
-
-#~ msgid "Networking"
-#~ msgstr "Rantoele"
-
-#~ msgid "Configure X"
-#~ msgstr "Apontyî X"
-
-#~ msgid ""
-#~ "Can not access kernel modules corresponding to your kernel (file %s is "
-#~ "missing), this generally means your boot floppy in not in sync with the "
-#~ "Installation medium (please create a newer boot floppy)"
+#, c-format
+#~ msgid "Failed contacting %s web site to get the list of available mirrors"
#~ msgstr ""
-#~ "Dji n' sai vey les modules po vosse nawea (i gn a pont d' fitchî %s), "
-#~ "çoula vout probåblumint dire ki vosse plakete d' enondaedje n' a nén stî "
-#~ "fwait pol sopoirt d' astalaedje ki vos vloz eployî. Vos dvrîz fé ene "
-#~ "nouve plakete, a pårti des imådjes ki vnèt avou li modêye di Mandriva "
-#~ "Linux ki vos vloz astaler"
+#~ "Dji n' a savou atôtchî l' waibe da %s po-z aveur li djivêye des muroes "
+#~ "k' i gn a"
+
+#, c-format
+#~ msgid "Choose a mirror from which to get the packages"
+#~ msgstr "Tchoezixhoz on muroe po nd aberweter des pacaedjes foû"
diff --git a/perl-install/install/share/po/xh.po b/perl-install/install/share/po/xh.po
new file mode 100644
index 000000000..84687177e
--- /dev/null
+++ b/perl-install/install/share/po/xh.po
@@ -0,0 +1,1608 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Xhosa (http://www.transifex.com/MageiaLinux/mageia/language/"
+"xh/)\n"
+"Language: xh\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
+msgid "Do you have further supplementary media?"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:154
+#, c-format
+msgid ""
+"The following media have been found and will be used during install: %s.\n"
+"\n"
+"\n"
+"Do you have a supplementary installation medium to configure?"
+msgstr ""
+
+#: any.pm:162
+#, c-format
+msgid "Network (HTTP)"
+msgstr ""
+
+#: any.pm:163
+#, c-format
+msgid "Network (FTP)"
+msgstr ""
+
+#: any.pm:164
+#, c-format
+msgid "Network (NFS)"
+msgstr ""
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr ""
+
+#: any.pm:225
+#, c-format
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
+
+#: any.pm:229
+#, c-format
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr ""
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr ""
+
+#: any.pm:593
+#, c-format
+msgid "Finding packages to upgrade..."
+msgstr ""
+
+#: any.pm:612
+#, c-format
+msgid "Removing packages prior to upgrade..."
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:850
+#, c-format
+msgid ""
+"The following packages will be removed to allow upgrading your system: %s\n"
+"\n"
+"\n"
+"Do you really want to remove these packages?\n"
+msgstr ""
+
+#: any.pm:1075
+#, c-format
+msgid "Error reading file %s"
+msgstr ""
+
+#: any.pm:1283
+#, c-format
+msgid "The following disk(s) were renamed:"
+msgstr ""
+
+#: any.pm:1285
+#, c-format
+msgid "%s (previously named as %s)"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "HTTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "FTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "NFS"
+msgstr ""
+
+#: any.pm:1361 steps_interactive.pm:979
+#, c-format
+msgid "Network"
+msgstr ""
+
+#: any.pm:1365
+#, c-format
+msgid "Please choose a media"
+msgstr ""
+
+#: any.pm:1381
+#, c-format
+msgid "File already exists. Overwrite it?"
+msgstr ""
+
+#: any.pm:1385
+#, c-format
+msgid "Permission denied"
+msgstr ""
+
+#: any.pm:1433
+#, c-format
+msgid "Bad NFS name"
+msgstr ""
+
+#: any.pm:1454
+#, c-format
+msgid "Bad media %s"
+msgstr ""
+
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
+
+#: any.pm:1509
+#, c-format
+msgid "Screenshots will be available after install in %s"
+msgstr ""
+
+#: gtk.pm:134
+#, c-format
+msgid "Installation"
+msgstr ""
+
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
+#, c-format
+msgid "Configuration"
+msgstr ""
+
+#: install2.pm:220
+#, c-format
+msgid "You must also format %s"
+msgstr ""
+
+#: interactive.pm:16
+#, c-format
+msgid ""
+"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
+"You can find some information about them at: %s"
+msgstr ""
+
+#: interactive.pm:22
+#, c-format
+msgid "Bringing up the network"
+msgstr ""
+
+#: interactive.pm:27
+#, c-format
+msgid "Bringing down the network"
+msgstr ""
+
+#: media.pm:397
+#, c-format
+msgid "Please wait, retrieving file"
+msgstr ""
+
+#: media.pm:704
+#, c-format
+msgid "unable to add medium"
+msgstr ""
+
+#: media.pm:744
+#, c-format
+msgid "Copying some packages on disks for future use"
+msgstr ""
+
+#: media.pm:797
+#, c-format
+msgid "Copying in progress"
+msgstr ""
+
+#: pkgs.pm:32
+#, c-format
+msgid "must have"
+msgstr ""
+
+#: pkgs.pm:33
+#, c-format
+msgid "important"
+msgstr ""
+
+#: pkgs.pm:34
+#, c-format
+msgid "very nice"
+msgstr ""
+
+#: pkgs.pm:35
+#, c-format
+msgid "nice"
+msgstr ""
+
+#: pkgs.pm:36
+#, c-format
+msgid "maybe"
+msgstr ""
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
+#, c-format
+msgid ""
+"Some packages requested by %s cannot be installed:\n"
+"%s"
+msgstr ""
+
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
+msgid "An error occurred:"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
+
+#: pkgs.pm:929
+#, c-format
+msgid "Installation of packages failed:"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:16
+#, c-format
+msgid "Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:18
+#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:26
+#, c-format
+msgid "Game station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:27
+#, c-format
+msgid "Amusement programs: arcade, boards, strategy, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:30
+#, c-format
+msgid "Multimedia station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:31
+#, c-format
+msgid "Sound and video playing/editing programs"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:36
+#, c-format
+msgid "Internet station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:37
+#, c-format
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:42
+#, c-format
+msgid "Network Computer (client)"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:43
+#, c-format
+msgid "Clients for different protocols including ssh"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:49
+#, c-format
+msgid "Tools to ease the configuration of your computer"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:53
+#, c-format
+msgid "Console Tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:54
+#, c-format
+msgid "Editors, shells, file tools, terminals"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
+#, c-format
+msgid "Development"
+msgstr "Ubhekiso phambili"
+
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
+msgid "C and C++ development libraries, programs and include files"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
+#, c-format
+msgid "Documentation"
+msgstr "Ulwenziwo lwamaxwebhu"
+
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
+msgid "Books and Howto's on Linux and Free Software"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
+#, c-format
+msgid "LSB"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
+msgid "Linux Standard Base. Third party applications support"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:79
+#, c-format
+msgid "Web Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:80
+#, c-format
+msgid "Apache"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:84
+#, c-format
+msgid "Groupware"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:85
+#, c-format
+msgid "Kolab Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
+msgid "Firewall/Router"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
+msgid "Internet gateway"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:92
+#, c-format
+msgid "Mail/News"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:93
+#, c-format
+msgid "Postfix mail server, Inn news server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:97
+#, c-format
+msgid "Directory Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:102
+#, c-format
+msgid "FTP Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:103
+#, c-format
+msgid "ProFTPd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:107
+#, c-format
+msgid "DNS/NIS"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:108
+#, c-format
+msgid "Domain Name and Network Information Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:112
+#, c-format
+msgid "File and Printer Sharing Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:113
+#, c-format
+msgid "NFS Server, Samba server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
+msgid "Database"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:123
+#, c-format
+msgid "Web/FTP"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:124
+#, c-format
+msgid "Apache, Pro-ftpd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:128
+#, c-format
+msgid "Mail"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:129
+#, c-format
+msgid "Postfix mail server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:134
+#, c-format
+msgid "PostgreSQL or MariaDB database server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:142
+#, c-format
+msgid "Network Computer server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:143
+#, c-format
+msgid "NFS server, SMB server, Proxy server, ssh server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:150
+#, c-format
+msgid "Graphical Environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:153
+#, c-format
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:158
+#, c-format
+msgid "GNOME Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
+msgid "Other Graphical Desktops"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:218
+#, c-format
+msgid "Utilities"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
+msgid "SSH Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:225
+#, c-format
+msgid "Webmin"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:226
+#, c-format
+msgid "Webmin Remote Configuration Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:230
+#, c-format
+msgid "Network Utilities/Monitoring"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:231
+#, c-format
+msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:236
+#, c-format
+msgid "Wizards to configure server"
+msgstr ""
+
+#: steps.pm:85
+#, c-format
+msgid ""
+"An error occurred, but I do not know how to handle it nicely.\n"
+"Continue at your own risk."
+msgstr ""
+
+#: steps.pm:469
+#, c-format
+msgid ""
+"Some important packages did not get installed properly.\n"
+"Either your cdrom drive or your cdrom is defective.\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
+"\"\n"
+msgstr ""
+
+#: steps_auto_install.pm:71 steps_stdio.pm:27
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr ""
+
+#: steps_curses.pm:22
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
+
+#: steps_curses.pm:32
+#, c-format
+msgid "<Tab>/<Alt-Tab> between elements"
+msgstr ""
+
+#: steps_gtk.pm:151
+#, c-format
+msgid "Xorg server is slow to start. Please wait..."
+msgstr ""
+
+#: steps_gtk.pm:216
+#, c-format
+msgid ""
+"Your system is low on resources. You may have some problem installing\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
+"press `F1' when booting on CDROM, then enter `text'."
+msgstr ""
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
+msgid "Custom install"
+msgstr ""
+
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:281
+#, c-format
+msgid "GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:282
+#, c-format
+msgid "Custom Desktop"
+msgstr ""
+
+#: steps_gtk.pm:288
+#, c-format
+msgid "Here's a preview of the '%s' desktop."
+msgstr ""
+
+#: steps_gtk.pm:315
+#, c-format
+msgid "Click on images in order to see a bigger preview"
+msgstr ""
+
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
+msgid "Package Group Selection"
+msgstr ""
+
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
+msgid "Individual package selection"
+msgstr ""
+
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr ""
+
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr ""
+
+#: steps_gtk.pm:425
+#, c-format
+msgid "Version: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "Size: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "%d KB\n"
+msgstr ""
+
+#: steps_gtk.pm:427
+#, c-format
+msgid "Importance: "
+msgstr ""
+
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr ""
+
+#: steps_gtk.pm:466
+#, c-format
+msgid "due to missing %s"
+msgstr ""
+
+#: steps_gtk.pm:467
+#, c-format
+msgid "due to unsatisfied %s"
+msgstr ""
+
+#: steps_gtk.pm:468
+#, c-format
+msgid "trying to promote %s"
+msgstr ""
+
+#: steps_gtk.pm:469
+#, c-format
+msgid "in order to keep %s"
+msgstr ""
+
+#: steps_gtk.pm:474
+#, c-format
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+
+#: steps_gtk.pm:477
+#, c-format
+msgid "The following packages are going to be installed"
+msgstr ""
+
+#: steps_gtk.pm:478
+#, c-format
+msgid "The following packages are going to be removed"
+msgstr ""
+
+#: steps_gtk.pm:504
+#, c-format
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr ""
+
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr ""
+
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+
+#: steps_gtk.pm:512
+#, c-format
+msgid "Show automatically selected packages"
+msgstr ""
+
+#: steps_gtk.pm:516
+#, c-format
+msgid "Install"
+msgstr ""
+
+#: steps_gtk.pm:519
+#, c-format
+msgid "Load/Save selection"
+msgstr ""
+
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
+msgid "Updating package selection"
+msgstr ""
+
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
+msgid "Minimal install"
+msgstr ""
+
+#: steps_gtk.pm:543
+#, c-format
+msgid "Software Management"
+msgstr ""
+
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
+msgid "Choose the packages you want to install"
+msgstr ""
+
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
+#, c-format
+msgid "Installing"
+msgstr ""
+
+#: steps_gtk.pm:590
+#, c-format
+msgid "No details"
+msgstr ""
+
+#: steps_gtk.pm:610
+#, c-format
+msgid "Time remaining:"
+msgstr ""
+
+#: steps_gtk.pm:611
+#, c-format
+msgid "(estimating...)"
+msgstr ""
+
+#: steps_gtk.pm:637
+#, c-format
+msgid "%d package"
+msgid_plural "%d packages"
+msgstr[0] ""
+msgstr[1] ""
+
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
+#, c-format
+msgid "Summary"
+msgstr ""
+
+#: steps_gtk.pm:713
+#, c-format
+msgid "Configure"
+msgstr ""
+
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
+msgid "not configured"
+msgstr ""
+
+#: steps_gtk.pm:773 steps_interactive.pm:315
+#, c-format
+msgid ""
+"The following installation media have been found.\n"
+"If you want to skip some of them, you can unselect them now."
+msgstr ""
+
+#: steps_gtk.pm:789 steps_interactive.pm:321
+#, c-format
+msgid ""
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
+msgstr ""
+
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
+msgid "Copy whole CDs"
+msgstr ""
+
+#: steps_interactive.pm:40
+#, c-format
+msgid "An error occurred"
+msgstr ""
+
+#: steps_interactive.pm:105
+#, c-format
+msgid "Please choose your keyboard layout"
+msgstr ""
+
+#: steps_interactive.pm:109
+#, c-format
+msgid "Here is the full list of available keyboards:"
+msgstr ""
+
+#: steps_interactive.pm:153
+#, c-format
+msgid "Install/Upgrade"
+msgstr ""
+
+#: steps_interactive.pm:157
+#, c-format
+msgid "Is this an install or an upgrade?"
+msgstr ""
+
+#: steps_interactive.pm:159
+#, c-format
+msgid ""
+"_: This is a noun:\n"
+"Install"
+msgstr ""
+
+#: steps_interactive.pm:161
+#, c-format
+msgid "Upgrade %s"
+msgstr ""
+
+#: steps_interactive.pm:184
+#, c-format
+msgid "Encryption key for %s"
+msgstr ""
+
+#: steps_interactive.pm:217
+#, c-format
+msgid "Cancel installation, reboot system"
+msgstr ""
+
+#: steps_interactive.pm:218
+#, c-format
+msgid "New Installation"
+msgstr ""
+
+#: steps_interactive.pm:219
+#, c-format
+msgid "Upgrade previous installation (not recommended)"
+msgstr ""
+
+#: steps_interactive.pm:223
+#, c-format
+msgid ""
+"Installer has detected that your installed Linux system could not\n"
+"safely be upgraded to %s.\n"
+"\n"
+"New installation replacing your previous one is recommended.\n"
+"\n"
+"Warning : you should backup all your personal data before choosing \"New\n"
+"Installation\"."
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:354
+#, c-format
+msgid ""
+"Change your Cd-Rom!\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
+"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
+msgstr ""
+
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
+msgid "Looking for available packages..."
+msgstr ""
+
+#: steps_interactive.pm:380
+#, c-format
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+
+#: steps_interactive.pm:428
+#, c-format
+msgid ""
+"Please choose load or save package selection.\n"
+"The format is the same as auto_install generated files."
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Load"
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Save"
+msgstr ""
+
+#: steps_interactive.pm:438
+#, c-format
+msgid "Bad file"
+msgstr ""
+
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
+
+#: steps_interactive.pm:456
+#, c-format
+msgid "GNOME"
+msgstr ""
+
+#: steps_interactive.pm:459
+#, c-format
+msgid "Desktop Selection"
+msgstr ""
+
+#: steps_interactive.pm:460
+#, c-format
+msgid "You can choose your workstation desktop profile."
+msgstr ""
+
+#: steps_interactive.pm:552
+#, c-format
+msgid "Selected size is larger than available space"
+msgstr ""
+
+#: steps_interactive.pm:576
+#, c-format
+msgid "Type of install"
+msgstr ""
+
+#: steps_interactive.pm:577
+#, c-format
+msgid ""
+"You have not selected any group of packages.\n"
+"Please choose the minimal installation you want:"
+msgstr ""
+
+#: steps_interactive.pm:582
+#, c-format
+msgid "With X"
+msgstr ""
+
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
+
+#: steps_interactive.pm:584
+#, c-format
+msgid "With basic documentation (recommended!)"
+msgstr ""
+
+#: steps_interactive.pm:585
+#, c-format
+msgid "Truly minimal install (especially no urpmi)"
+msgstr ""
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
+#, c-format
+msgid "Preparing installation"
+msgstr ""
+
+#: steps_interactive.pm:655
+#, c-format
+msgid "Installing package %s"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "There was an error ordering packages:"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "Go on anyway?"
+msgstr ""
+
+#: steps_interactive.pm:683
+#, c-format
+msgid "Retry"
+msgstr ""
+
+#: steps_interactive.pm:684
+#, c-format
+msgid "Skip this package"
+msgstr ""
+
+#: steps_interactive.pm:685
+#, c-format
+msgid "Skip all packages from medium \"%s\""
+msgstr ""
+
+#: steps_interactive.pm:686
+#, c-format
+msgid "Go back to media and packages selection"
+msgstr ""
+
+#: steps_interactive.pm:689
+#, c-format
+msgid "There was an error installing package %s."
+msgstr ""
+
+#: steps_interactive.pm:708
+#, c-format
+msgid "Post-install configuration"
+msgstr ""
+
+#: steps_interactive.pm:715
+#, c-format
+msgid "Please ensure the Update Modules media is in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr ""
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
+#, c-format
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
+msgstr ""
+
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
+#, c-format
+msgid "%s on %s"
+msgstr ""
+
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
+#, c-format
+msgid "Hardware"
+msgstr ""
+
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr ""
+
+#: steps_interactive.pm:972
+#, c-format
+msgid "Graphical interface"
+msgstr ""
+
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
+msgid "Network & Internet"
+msgstr ""
+
+#: steps_interactive.pm:991
+#, c-format
+msgid "Proxies"
+msgstr ""
+
+#: steps_interactive.pm:992
+#, c-format
+msgid "configured"
+msgstr ""
+
+#: steps_interactive.pm:1002
+#, c-format
+msgid "Security Level"
+msgstr ""
+
+#: steps_interactive.pm:1022
+#, c-format
+msgid "Firewall"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "activated"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "disabled"
+msgstr ""
+
+#: steps_interactive.pm:1041
+#, c-format
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr ""
+
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, c-format
+msgid "Preparing initial startup program..."
+msgstr ""
+
+#: steps_interactive.pm:1073
+#, c-format
+msgid "Be patient, this may take a while..."
+msgstr ""
+
+#: steps_interactive.pm:1089
+#, c-format
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+
+#: steps_interactive.pm:1121
+#, c-format
+msgid "Insert a blank floppy in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:1123
+#, c-format
+msgid "Creating auto install floppy..."
+msgstr ""
+
+#: steps_interactive.pm:1134
+#, c-format
+msgid ""
+"Some steps are not completed.\n"
+"\n"
+"Do you really want to quit now?"
+msgstr ""
+
+#: steps_interactive.pm:1144
+#, c-format
+msgid "Congratulations"
+msgstr ""
+
+#: steps_interactive.pm:1147
+#, c-format
+msgid "Reboot"
+msgstr "Phinda umisele inkqubo"
+
+#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
+#: steps_list.pm:16
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Language"
+msgstr ""
+
+#: steps_list.pm:16 steps_list.pm:23
+#, c-format
+msgid "Localization"
+msgstr ""
+
+#: steps_list.pm:17
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"License"
+msgstr ""
+
+#: steps_list.pm:18
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Mouse"
+msgstr ""
+
+#: steps_list.pm:19 steps_list.pm:20
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Hard drive detection"
+msgstr ""
+
+#: steps_list.pm:21 steps_list.pm:22
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installation class"
+msgstr ""
+
+#: steps_list.pm:23
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Keyboard"
+msgstr ""
+
+#: steps_list.pm:24
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Security"
+msgstr ""
+
+#: steps_list.pm:25
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Partitioning"
+msgstr ""
+
+#: steps_list.pm:27 steps_list.pm:28
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Formatting"
+msgstr ""
+
+#: steps_list.pm:29
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Choosing packages"
+msgstr ""
+
+#: steps_list.pm:31
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installing"
+msgstr ""
+
+#: steps_list.pm:34
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Users"
+msgstr ""
+
+#: steps_list.pm:38 steps_list.pm:39
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Bootloader"
+msgstr ""
+
+#: steps_list.pm:40 steps_list.pm:41
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Configure X"
+msgstr ""
+
+#: steps_list.pm:42
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Summary"
+msgstr ""
+
+#: steps_list.pm:44 steps_list.pm:45
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Services"
+msgstr ""
+
+#: steps_list.pm:46
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Updates"
+msgstr ""
+
+#: steps_list.pm:48
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Exit"
+msgstr ""
diff --git a/perl-install/install/share/po/zh_CN.po b/perl-install/install/share/po/zh_CN.po
index f7fb88c5e..87886bf5a 100644
--- a/perl-install/install/share/po/zh_CN.po
+++ b/perl-install/install/share/po/zh_CN.po
@@ -1,54 +1,87 @@
-# drakx messages in Simplified Chinese
-# Danny Zeng <danny@zeng.com.cn>, 2000, 2002
-# Jesse Kuang <kjx@mandriva.com>, 2002
-# Shiyu Tang <shiyutang@netscape.net>, 2003, 2004
-# Funda Wang <fundawang@linux.net.cn>, 2002, 2003, 2004, 2005
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Danny Zeng <danny@zeng.com.cn>, 2000,2002
+# Dmitry <dmitrydmitry761@gmail.com>, 2021,2024
+# Funda Wang <fundawang@linux.net.cn>, 2002-2005
+# Jesse Kuang <kjx@mandriva.com>, 2002
+# Shiyu Tang <shiyutang@netscape.net>, 2003-2004
+# xiao wenming <xwm-citcc5@hotmail.com>, 2015
+# zwpwjwtz <zwpwjwtz@126.com>, 2016,2018
msgid ""
msgstr ""
-"Project-Id-Version: DrakX 2008 Spring\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2009-04-09 11:49+0800\n"
-"Last-Translator: Funda Wang <fundawang@linux.net.cn>\n"
-"Language-Team: Mandriva Linux i18n Team <cooker-i18n@mandrivalinux.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Dmitry <dmitrydmitry761@gmail.com>, 2021,2024\n"
+"Language-Team: Chinese (China) (http://app.transifex.com/MageiaLinux/mageia/"
+"language/zh_CN/)\n"
+"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr "加入我们!"
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr "得心应手"
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr "你的选择!"
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr "办公工具"
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr "家庭娱乐"
+
+#: ../../advertising/06_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr "U 盘上的桌面"
+msgid "For kids"
+msgstr "给孩子们的……"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/07_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr "100%% 开放源代码的 Mandriva Linux 发行版"
+msgid "For family!"
+msgstr "给家人的……"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/08_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr "用 Mandriva One 轻松探索 Linux"
+msgid "For developers!"
+msgstr "给开发者的……"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/09_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr "Mandriva Linux 桌面旗舰产品,附带完善的售后服务支持"
+msgid "Thank you!"
+msgstr "谢谢!"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/10_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr "Mandriva 在手,应用无忧"
+msgid "Be Free!"
+msgstr "一切自由!"
-#: any.pm:109
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
msgstr "您有其它赠品介质吗?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -61,113 +94,148 @@ msgstr ""
"\n"
"您是否想要配置赠品安装介质?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "网络 (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "网络 (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "网络 (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "镜像的 URL?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL 必须以 ftp:// 或 http:// 开始"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "正在连接 Mandriva Linux 网站获得可用镜像的列表..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "连接 Mandriva Linux 网站以获得可用镜像的列表失败"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "选择一个镜像网站来取得软件包"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "NFS 设置"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
msgstr "请输入您 NFS 介质的主机名和目录"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "缺少主机名"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "目录必须以“/”开头"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS 挂载的主机名?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "目录"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "赠品"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
msgstr "无法在此镜像上找到软件包列表文件。请确定位置正确。"
-#: any.pm:334
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core 发布"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted 发布"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree 发布"
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr "您的机器上有一些硬件需要非自由固件来支持驱动(自由软件)运行。"
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "您应当启用“%s”"
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "“%s”包含系统及其应用的各种部件"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" 包含非自由软件。\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"它也包含支持特定设备运行的固件(如:一些 ATI/AMD 显卡、网卡和 RAID 卡)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr "“%s”包含因软件专利问题无法在所有国家分发的软件"
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "它也包含由“%s”重新构建,并加入了额外功能的软件"
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "此处您可以启用更多媒体。"
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "这些媒体提供了来自媒体“%s”的软件包更新"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
msgstr "正在查找已经安装过的软件包..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
msgstr "正在寻找可升级的程序..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
msgstr "正在删除由于更新所致的软件包..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -180,87 +248,87 @@ msgstr ""
"\n"
"您确定要删除这些软件包吗?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "请取文件 %s 出错"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "下列盘片已重命名:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s(以前的名称为 %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "网络"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
msgstr "请选择介质"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "文件已经存在。覆盖吗?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "没有权限"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "无效的 NFS 名称"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
msgstr "无效的介质 %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "无法在分区完成之前进行屏幕捕捉"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "安装完成后, 所有的屏幕抓图都会保存到 %s 之中"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "安装"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "配置"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "您还必须格式化 %s"
@@ -284,22 +352,22 @@ msgstr "正在启动网络"
msgid "Bringing down the network"
msgstr "正在禁用网络"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "请稍候,正在获取文件"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
msgstr "无法添加介质"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
msgstr "正在将软件包复制到磁盘中以备后用"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "复制进行中"
@@ -329,7 +397,22 @@ msgstr "一般"
msgid "maybe"
msgstr "或许有用"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "从 XML元数据获取软件包信息……"
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr "未找到介质“%s”的 XML 信息,只返回软件包 %s 的部分结果"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "无描述"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
@@ -338,343 +421,390 @@ msgstr ""
"%s 所请求的某些软件包无法安装:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "发生了一个错误:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "发生了一个致命错误: %s。"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "不要再次询问"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
msgstr "%d 个安装交易失败"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
msgstr "安装软件包失败:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "工作站"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "办公工作站"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"办公程序: 字处理(OpenOffice.org Writer、Kword), 电子表格(OpenOffice.org "
-"Calc、Kspread)、PDF 阅读器等"
+"办公程序: 字处理(LibreOffice Writer、Kword), 电子表格(LibreOffice Calc、"
+"Kspread)、PDF 阅读器等"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"办公程序: 字处理(kword、abiword), 电子表格(kspread、gnumeric)、pdf 阅读器等"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "游戏机"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "游戏程序: 街机、棋盘、战略等等"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "多媒体工作站"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "声音和视频播放/编辑程序"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "Internet 工作站"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr "一组工具, 用于收发电子邮件及新闻组(mutt, tin..), 浏览网站"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "网络计算机(客户端)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "SSH 等不同协议客户端"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "简化计算机配置的工具"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "控制台工具"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "编辑器, shell, 文件工具, 终端"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "开发"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C 和 C++ 开发库, 程序及头文件"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "文档"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "有关 Linux 和自由软件的书籍和指南"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "Linux Standard Base。第三方应用程序支持"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "Web 服务器"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "群件"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab 服务器"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "防火墙/路由器"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "Internet 网关"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "邮件/新闻"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix 邮件服务器、Inn 新闻服务器"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "目录服务器"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP 服务器"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "域名和网络信息服务器"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "文件和打印机共享服务器"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS 服务器、Samba 服务器"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "数据库"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL 和 MySQL 数据库服务"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL 和 MariaDB 数据库服务"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache 和 Pro-ftpd"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "邮件"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix 邮件服务器"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL 或 MySQL 数据库服务"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL 或 MariaDB 数据库服务"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "网络计算机服务器"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS 服务器, SMB 服务器, 代理服务器, SSH 服务器"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "图形环境"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE 工作站"
+msgid "Plasma Workstation"
+msgstr "Plasma 工作站"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "KDE 桌面环境, 基本的图形环境和一组配套的工具"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME 工作站"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "配备了用户友善的应用程序与桌面工具的图形环境"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Xfce 工作站"
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr "一个轻量级的图形化环境,包含了用户友好的应用程序和桌面工具。"
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE工作站"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon工作站"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "一种基于GNOME的图形环境"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt桌面"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "轻量级桌面环境的 QT 移植版本"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment 桌面"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "轻便、快捷、专注的图形化环境"
+
+#: share/meta-task/compssUsers.pl:189
#, c-format
msgid "LXDE Desktop"
msgstr "LXDE 桌面"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:191
#, c-format
-msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "配备了用户友善的应用程序与桌面工具的轻量级图形环境"
+msgid "A lightweight fast graphical environment"
+msgstr "一种轻量级的快速图形环境"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "其它图形桌面"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker、Enlightenment、Fvwm 等"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, 等等"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "工具"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH 服务器"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin 远程配置服务器"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "网络工具/监视"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "监视工具、进程统计、tcpdump、nmap……"
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva 向导"
+msgid "Mageia Wizards"
+msgstr "Mageia 向导"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "服务器配置向导"
@@ -688,13 +818,13 @@ msgstr ""
"发生错误, 可是我不知道该怎样处理才好。\n"
"继续下去会怎样就看您的运气了。"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
"一些重要软件包没有正确的安装。\n"
"您的光盘或者驱动器可能有缺陷。\n"
@@ -707,250 +837,254 @@ msgstr "进入步骤“%s”\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux 安装 %s"
+msgid "%s Installation %s"
+msgstr "%s 安装 %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> 可在元素间切换"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg 启动很慢,请稍候..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"您系统的资源过低。您在安装 Mandriva Linux 的过程中可能遇到问题。\n"
+"您系统的资源过低。您在安装 %s 的过程中可能遇到问题。\n"
"如果您真的遇到问题的话,可以试试文本安装。要进入文本安装,请在启动时按“F1”,"
"然后输入“text”。"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:246 steps_gtk.pm:764
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "安装 Mandriva KDE 桌面"
+msgid "Media Selection"
+msgstr "介质选择"
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr "安装 %s Plasma 桌面"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "安装 Mandriva GNOME 桌面"
+msgid "Install %s GNOME Desktop"
+msgstr "安装 %s GNOME 桌面"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "自定义安装"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE 桌面"
+msgid "Plasma Desktop"
+msgstr "Plasma 桌面"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "GNOME 桌面"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "自定义桌面"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "这是“%s”桌面的预览。"
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "单击图像可查看更大的预览"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
msgstr "程序组选择"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
msgstr "选择单个软件包"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "总共大小: %d / %d MB"
+msgid "Unselect All"
+msgstr "全部不选"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "有错的软件包"
+msgid "Total size: %d / %d MB"
+msgstr "总共大小: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "版本: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "大小: "
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "重要程度: "
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
+msgid "You cannot select/unselect this package"
msgstr "您不能改变这个软件包的选定"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "由于缺少 %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "由于不满足的 %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "尝试推广 %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "为了保留 %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
msgstr "您不可以选择这个软件包。没有足够空间安装它。"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
msgstr "即将安装下列软件包"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
msgstr "即将卸载下列软件包"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
+msgid "This is a mandatory package, it cannot be unselected"
msgstr "这个软件包是必需的, 不能取消选定"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
+msgid "You cannot unselect this package. It is already installed"
msgstr "您不可以取消选择这个软件包。它已经安装过了"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
+msgid "You cannot unselect this package. It must be upgraded"
msgstr "您不能不选择这个软件包。它必须升级"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
msgstr "自动显示选中的软件包"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "安装"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "装入/保存选择"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
msgstr "更新软件包选择"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "在包的分层列表和平面列表之间切换"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "最小安装"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
msgstr "软件管理"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
msgstr "选择您想要安装的软件包"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "安装"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
msgstr "无细节"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "剩余时间:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(正在估计...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
msgstr[0] "%d 个软件包"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "摘要"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "配置"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "未配置"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "介质选择"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
@@ -959,84 +1093,84 @@ msgstr ""
"找到了下列安装介质。\n"
"如果您想要跳过其中一些, 请不要选中。"
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
"您可以选择在安装之前将光盘的全部内容复制到硬盘中。\n"
"然后,安装将会从硬盘继续进行。当系统安装完成后,软件包仍然保留,以供日后添加"
"软件使用。"
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "复制整张光盘"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "发生了一个错误"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "请选择您使用的键盘布局。"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "在此列出了可用的全部键盘:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "安装/升级"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "现在要新装还是升级?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "安装"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "升级 %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "%s 的加密密钥"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "取消安装,重新启动系统"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "全新安装"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "升级先前的安装(不推荐)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1044,42 +1178,23 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"安装程序检测到您所安装的 Mandriva Linux 系统无法安全升级到 %s。\n"
+"安装程序检测到您所安装的 Linux 系统无法安全升级到 %s。\n"
"\n"
"我们建议您进行全新安装,以便替换您先前的系统。\n"
"\n"
"警告:您在选择“全新安装”之前应该备份您所有的个人数据。"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
-
-#: steps_interactive.pm:251
-#, c-format
-msgid "Configuring IDE"
-msgstr "配置 IDE"
-
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"无法创建启动空间(1MB)!安装将继续, 但如需启动系统, 您可用“Drak 磁盘管理”创建"
-"启动分区"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:293
+#: steps_interactive.pm:264
#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"您需要创建一个 PPC PReP 启动空间!安装将继续, 但如需启动系统, 您可用“Drak 磁"
-"盘管理”创建启动分区"
+msgid "Configuring CD/DVD"
+msgstr "配置 CD/DVD"
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1092,19 +1207,19 @@ msgstr ""
"请在驱动器中插入标有“%s”的光盘, 然后单击“确定”。\n"
"如果您没有这张光盘, 请单击“取消”, 放弃安装这张光盘上的软件。"
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
msgstr "正在寻找可安装的程序..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr "系统的剩余空间不足以完成安装或升级(%d MB > %d MB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
@@ -1113,139 +1228,181 @@ msgstr ""
"请选择装入或保存软件包选择息。\n"
"格式与自动安装生成的文件一样。"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "装入"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "保存"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "文件有错"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "桌面选择"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "您可以选择您的工作站配置文件:"
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "您选择的超过可用空间"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "安装类型"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr "您没有选择任何的组件, 请选择最小安装:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "安装 X"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "正在安装软件包 %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "安装推荐的软件包"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "安装基础文档(建议!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "真正最小安装(注意没有 urpmi 包管理工具)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "升级准备中......"
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "正在准备安装"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
msgstr "正在安装软件包 %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
msgstr "排列软件包时出错: "
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "真的要继续?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "重试"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
msgstr "跳过此软件包"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
msgstr "跳过介质“%s”中的全部软件包"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
msgstr "返回介质和软件包选择"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
msgstr "安装软件包 %s 时出错。"
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "安装后的配置"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
msgstr "请确定更新模块介质位于驱动器 %s"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "更新"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "您现在可以配置在线媒体。"
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "允许安装安全更新。"
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"要安装这些媒体,您需要确保互联网连接正常。\n"
+"\n"
+"您希望安装更新媒体吗?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "无法安装此引导加载程序"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "重试一次吗?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "添加介质失败"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1264,124 +1421,97 @@ msgstr ""
"\n"
"您是否要安装升级包?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "位于 %2$s 上的 %1$s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "硬件"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "声卡"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "您有 ISA 声卡吗?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr "安装之后运行“alsaconf”或“sndconfig”来配置您的声卡"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "没有检测到声卡。请在安装之后尝试“Drak 硬件配置”。"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "图形界面"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "网络和 Internet"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "代理服务器"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "已配置"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "安全级别"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "防火墙"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "已激活"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "已禁用"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "您还没有配置过 X。您真的想要这样吗?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "正在准备引导程序..."
+msgid "Preparing initial startup program..."
+msgstr "正在准备安装初始安装程序..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "请稍候,这可能需要一会儿..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"看来您用的是老掉牙或不认识的机器, yaboot 启动引导程序无法为您工作。安装将继"
-"续, 不过您需要使用 BootX 或其它方式启动您的机器。根文件系统的内核参数是:"
-"root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr "在此安全级别中, 只有管理员才能访问 Windows 分区中的文件。"
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "请在驱动器 %s 中插入一张空白软盘"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "正在创建自动安装软盘..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1392,12 +1522,12 @@ msgstr ""
"\n"
"您真的要现在退出吗?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "恭喜"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "重新启动"
@@ -1492,13 +1622,6 @@ msgid ""
"Users"
msgstr "用户"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "联网"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1540,92 +1663,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "退出"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "您已经决定将您的系统升级到 %s,而在您的系统中检测到了 KDE 3.5。此安装程序"
-#~ "在\n"
-#~ "安装过程中无法保留 KDE 3.5 in an upgrade。如果您选择继续的话,KDE 4 将会替"
-#~ "换\n"
-#~ "KDE 3,而您关于 KDE 配置的设置也将丢失。\n"
-#~ "要仍然升级但却保留 KDE 3.5,并且保留您的个人设置,请重新启动您的系统,然后"
-#~ "使\n"
-#~ "用 Mandriva 更新小程序升级。"
-
-#~ msgid "Proceed"
-#~ msgstr "继续"
-
-#~ msgid "retrieval of [%s] failed"
-#~ msgstr "获取 [%s] 失败"
-
-#~ msgid "Downloading file %s..."
-#~ msgstr "正在下载文件 %s..."
-
-#~ msgid "Upgrade from a 32bit to a 64bit distribution is not supported"
-#~ msgstr "不支持从 32 位发行版升级到 64 位发行版"
-
-#~ msgid "Upgrade from a 64bit to a 32bit distribution is not supported"
-#~ msgstr "不支持从 64 位发行版升级到 32 位发行版"
-
-#~ msgid ""
-#~ "You have selected the following server(s): %s\n"
-#~ "\n"
-#~ "\n"
-#~ "These servers are activated by default. They do not have any known "
-#~ "security\n"
-#~ "issues, but some new ones could be found. In that case, you must make "
-#~ "sure\n"
-#~ "to upgrade as soon as possible.\n"
-#~ "\n"
-#~ "\n"
-#~ "Do you really want to install these servers?\n"
-#~ msgstr ""
-#~ "您选择了以下服务器: %s\n"
-#~ "\n"
-#~ "\n"
-#~ "这些服务器默认会被激活。它们没有已知的安全问题, 但可能发现新问题。如果那"
-#~ "样, 您一定要立即升级。\n"
-#~ "\n"
-#~ "\n"
-#~ "您真要安装这些服务器吗?\n"
-
-#~ msgid "IceWm Desktop"
-#~ msgstr "IceWM 桌面"
-
-#~ msgid "Contacting the mirror to get the list of available packages..."
-#~ msgstr "正在连接镜像网站以取得可供安装的软件包的列表..."
-
-#~ msgid "Unable to contact mirror %s"
-#~ msgstr "无法连接镜像 %s"
-
-#~ msgid "Generate auto install floppy"
-#~ msgstr "生成自动安装软盘"
-
-#~ msgid ""
-#~ "The auto install can be fully automated if wanted,\n"
-#~ "in that case it will take over the hard drive!!\n"
-#~ "(this is meant for installing on another box).\n"
-#~ "\n"
-#~ "You may prefer to replay the installation.\n"
-#~ msgstr ""
-#~ "如果需要的话, 自动安装可以完全自动执行。\n"
-#~ "但此时, 安装程序将会接管硬盘!!\n"
-#~ "(只对在另外的计算机上安装而言)。\n"
-#~ "\n"
-#~ "您可能愿意重现安装过程。\n"
-
-#~ msgid "Replay"
-#~ msgstr "重现"
-
-#~ msgid "Automated"
-#~ msgstr "自动"
-
-#~ msgid "Save packages selection"
-#~ msgstr "保存软件包选择"
diff --git a/perl-install/install/share/po/zh_TW.po b/perl-install/install/share/po/zh_TW.po
index 219abf844..8aecc4968 100644
--- a/perl-install/install/share/po/zh_TW.po
+++ b/perl-install/install/share/po/zh_TW.po
@@ -1,69 +1,82 @@
-# translation of zh_TW.po to 正體中文
-# translation of zh_TW.po to Chinese Traditional
-# translation of DrakX-zh_TW.po to Chinese Traditional
-# drakbootdisk messages in Traditional Chinese
-# Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc.
-# Platin <platin@cle.linux.org.tw> , 2000
-# Kenduest Lee <kenduest@i18n.linux.org.tw> , 2002
-# Danny Zeng <danny@zeng.com.cn>, 2000.
-# Joe Man <trmetal@yahoo.com.hk>, 2001.
-# Chong Sein Yeo <csyeo@hal-pc.org>, 2003.
-# Hilbert <freehil@yahoo.com>, 2003, 2004.
-# Hilbert <h@mandrake.org>, 2004.
-# hilbert <h@mandrake.org>, 2004.
-# Shiva Huang <blueshiva@giga.net.tw>, 2005.
-# Shiva Huang <shivahuang@gmail.com>, 2005, 2006, 2008
-# You-Cheng Hsieh <yochenhsieh@xuite.net>, 2005, 2006.
-# You-Cheng Hsieh <yochenhsieh@gmail.com>, 2008.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
#
+# Translators:
+# Cheng-Chia Tseng <pswo10680@gmail.com>, 2018
+# You-Cheng Hsieh <yochenhsieh@gmail.com>, 2015-2016,2018
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
+"Project-Id-Version: Mageia\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:21+0200\n"
-"PO-Revision-Date: 2008-10-01 10:02+0800\n"
-"Last-Translator: # You-Cheng Hsieh <yochenhsieh@gmail.com>\n"
-"Language-Team: Traditional Chinese <zh@li.org>\n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2013-04-04 13:31+0000\n"
+"Last-Translator: Cheng-Chia Tseng <pswo10680@gmail.com>, 2018\n"
+"Language-Team: Chinese (Taiwan) (http://app.transifex.com/MageiaLinux/mageia/"
+"language/zh_TW/)\n"
+"Language: zh_TW\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
-"X-Poedit-Language: Chinese\n"
-"X-Poedit-Country: TAIWAN\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: ../../advertising/IM_flash.pl:1
+#: ../../advertising/01_IM_mageia.pl:1
#, c-format
-msgid "Your desktop on a USB key"
-msgstr ""
+msgid "Join Us!"
+msgstr "加入我們!"
-#: ../../advertising/IM_free09.pl:1
+#: ../../advertising/02_IM_mageia.pl:1
#, c-format
-msgid "The 100%% open source Mandriva Linux distribution"
-msgstr ""
+msgid "Make it yours!"
+msgstr "讓它更貼近您的心意!"
-#: ../../advertising/IM_one09.pl:1
+#: ../../advertising/03_IM_mageia.pl:1
#, c-format
-msgid "Explore Linux easily with Mandriva One"
-msgstr ""
+msgid "Your choice!"
+msgstr "您的選擇!"
-#: ../../advertising/IM_pwp09.pl:1
+#: ../../advertising/04_IM_mageia.pl:1
#, c-format
-msgid "A full Mandriva Linux desktop, with support"
-msgstr ""
+msgid "Office tools"
+msgstr "辦公工具"
-#: ../../advertising/IM_range09.pl:1
+#: ../../advertising/05_IM_mageia.pl:1
#, c-format
-msgid "Mandriva: distributions for everybody's needs"
-msgstr ""
+msgid "Home entertainment"
+msgstr "家庭娛樂"
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr "適合孩童"
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr "適合家庭!"
-#: any.pm:109
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr "適合開發者!"
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr "感謝您!"
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr "享受自由!"
+
+#: any.pm:151
#, c-format
msgid "Do you have further supplementary media?"
-msgstr "您還有其他的補充媒介嗎?"
+msgstr "您還有其他的補充媒體嗎?"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:112
+#: any.pm:154
#, c-format
msgid ""
"The following media have been found and will be used during install: %s.\n"
@@ -71,118 +84,154 @@ msgid ""
"\n"
"Do you have a supplementary installation medium to configure?"
msgstr ""
-"已經找到下列媒介,它們將會在安裝過程中使用到:%s。\n"
+"已經找到下列媒體,它們將會在安裝過程中使用到:%s。\n"
"\n"
"\n"
-"您有其他的安裝媒介需要設定嗎?"
+"您有其他的安裝媒體需要設定嗎?"
-#: any.pm:120
-#, c-format
-msgid "CD-ROM"
-msgstr "CD-ROM"
-
-#: any.pm:121
+#: any.pm:162
#, c-format
msgid "Network (HTTP)"
msgstr "網路 (HTTP)"
-#: any.pm:122
+#: any.pm:163
#, c-format
msgid "Network (FTP)"
msgstr "網路 (FTP)"
-#: any.pm:123
+#: any.pm:164
#, c-format
msgid "Network (NFS)"
msgstr "網路 (NFS)"
-#: any.pm:165
-#, c-format
-msgid "URL of the mirror?"
-msgstr "映像站的 URL?"
-
-#: any.pm:171
-#, c-format
-msgid "URL must start with ftp:// or http://"
-msgstr "URL 開頭必須是 ftp:// 或 http://"
-
-#: any.pm:182
-#, c-format
-msgid ""
-"Contacting Mandriva Linux web site to get the list of available mirrors..."
-msgstr "正在連結到 Mandriva Linux 網站查詢可用的映射站台..."
-
-#: any.pm:187
-#, c-format
-msgid ""
-"Failed contacting Mandriva Linux web site to get the list of available "
-"mirrors"
-msgstr "無法連結到 Mandriva Linux 網站取得可用的映射站台"
-
-#: any.pm:197
-#, c-format
-msgid "Choose a mirror from which to get the packages"
-msgstr "選取要用來抓取程式套件檔的 FTP 映射站台"
-
-#: any.pm:227
+#: any.pm:224
#, c-format
msgid "NFS setup"
msgstr "設定 NFS"
-#: any.pm:228
+#: any.pm:225
#, c-format
msgid "Please enter the hostname and directory of your NFS media"
-msgstr "請輸入您的 NFS 媒介的主機和目錄名稱"
+msgstr "請輸入您的 NFS 媒體的主機和目錄名稱"
-#: any.pm:232
+#: any.pm:229
#, c-format
msgid "Hostname missing"
msgstr "沒有主機名稱"
-#: any.pm:233
+#: any.pm:230
#, c-format
msgid "Directory must begin with \"/\""
msgstr "目錄必須以「/」開始"
-#: any.pm:237
+#: any.pm:234
#, c-format
msgid "Hostname of the NFS mount ?"
msgstr "NFS 掛載點的主機名稱?"
-#: any.pm:238
+#: any.pm:235
#, c-format
msgid "Directory"
msgstr "目錄"
-#: any.pm:260
+#: any.pm:265
#, c-format
msgid "Supplementary"
msgstr "補充"
-#: any.pm:295
+#: any.pm:300
#, c-format
msgid ""
"Can't find a package list file on this mirror. Make sure the location is "
"correct."
-msgstr "無法在這個映像站上找到套件列表檔。請確定位址是正確的。"
+msgstr "無法在這個鏡像站上找到軟體套件列表檔。請確定位址是正確的。"
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr "Core 發行版"
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr "Tainted 發行版"
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr "Nonfree 發行版"
-#: any.pm:334
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr "您的機器上的某些硬體需要非自由的軔體才能夠讓自由的驅動程式運作。"
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr "您應該啟用 \"%s\""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr "\"%s\" 包含各種系統元件和應用程式"
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr "\"%s\" 包含非自由軟體。\n"
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+"它也包含某些裝置運作時所需要的軔體(如:某些 ATI/AMD 顯示卡、網路卡、RAID介面"
+"卡...)"
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr "\"%s\" 包含因為軟體專利而無法在所有國家散布的軟體。"
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr "它也包含了 \"%s\" 中以不同方式編譯的軟體。"
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr "您可以在這裡啟用更多媒體。"
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr "這個媒體包含 \"%s\" 媒體的軟體套件更新"
+
+#: any.pm:558
#, c-format
msgid "Looking at packages already installed..."
-msgstr "正在查看已經安裝過的套件..."
+msgstr "正在查看已經安裝過的軟體套件..."
-#: any.pm:369
+#: any.pm:593
#, c-format
msgid "Finding packages to upgrade..."
-msgstr "正在搜尋要升級的套件..."
+msgstr "正在搜尋要升級的軟體套件..."
-#: any.pm:388
+#: any.pm:612
#, c-format
msgid "Removing packages prior to upgrade..."
-msgstr "移除套件以更新..."
+msgstr "先移除軟體套件以便升級..."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: any.pm:594
+#: any.pm:850
#, c-format
msgid ""
"The following packages will be removed to allow upgrading your system: %s\n"
@@ -190,92 +239,92 @@ msgid ""
"\n"
"Do you really want to remove these packages?\n"
msgstr ""
-"下列套件將被移除以升級您的系統:%s\n"
+"下列軟體套件將移除以升級您的系統:%s\n"
"\n"
"\n"
-"您確定要移除這些套件嗎?\n"
+"您確定要移除這些軟體套件嗎?\n"
-#: any.pm:813
+#: any.pm:1075
#, c-format
msgid "Error reading file %s"
msgstr "讀取檔案 %s 時發生錯誤"
-#: any.pm:1020
+#: any.pm:1283
#, c-format
msgid "The following disk(s) were renamed:"
msgstr "下列磁碟已經改名:"
-#: any.pm:1022
+#: any.pm:1285
#, c-format
msgid "%s (previously named as %s)"
msgstr "%s (原本為 %s)"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "HTTP"
msgstr "HTTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "FTP"
msgstr "FTP"
-#: any.pm:1079
+#: any.pm:1342
#, c-format
msgid "NFS"
msgstr "NFS"
-#: any.pm:1098 steps_interactive.pm:936
+#: any.pm:1361 steps_interactive.pm:979
#, c-format
msgid "Network"
msgstr "網路"
-#: any.pm:1102
+#: any.pm:1365
#, c-format
msgid "Please choose a media"
-msgstr "請選擇一個媒介"
+msgstr "請選擇一個媒體"
-#: any.pm:1118
+#: any.pm:1381
#, c-format
msgid "File already exists. Overwrite it?"
msgstr "檔案已經存在了。要覆蓋它嗎?"
-#: any.pm:1122
+#: any.pm:1385
#, c-format
msgid "Permission denied"
msgstr "權限不足"
-#: any.pm:1170
+#: any.pm:1433
#, c-format
msgid "Bad NFS name"
msgstr "錯誤的 NFS 名稱"
-#: any.pm:1191
+#: any.pm:1454
#, c-format
msgid "Bad media %s"
-msgstr "損壞的媒介 %s"
+msgstr "損壞的媒體 %s"
-#: any.pm:1234
+#: any.pm:1498
#, c-format
-msgid "Can not make screenshots before partitioning"
+msgid "Cannot make screenshots before partitioning"
msgstr "在尚未進行分割前無法提供畫面捕捉功能"
-#: any.pm:1242
+#: any.pm:1509
#, c-format
msgid "Screenshots will be available after install in %s"
msgstr "在安裝後您可以於 %s 取得螢幕截圖"
-#: gtk.pm:131
+#: gtk.pm:134
#, c-format
msgid "Installation"
msgstr "安裝"
-#: gtk.pm:135 share/meta-task/compssUsers.pl:44
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
#, c-format
msgid "Configuration"
msgstr "組態設定"
-#: install2.pm:168
+#: install2.pm:220
#, c-format
msgid "You must also format %s"
msgstr "您也必須要格式化 %s"
@@ -299,22 +348,22 @@ msgstr "啟動網路"
msgid "Bringing down the network"
msgstr "關閉網路"
-#: media.pm:399
+#: media.pm:397
#, c-format
msgid "Please wait, retrieving file"
msgstr "請稍後,正在取回檔案"
-#: media.pm:716
+#: media.pm:704
#, c-format
msgid "unable to add medium"
-msgstr ""
+msgstr "無法新增媒體"
-#: media.pm:756
+#: media.pm:744
#, c-format
msgid "Copying some packages on disks for future use"
-msgstr "正在複製一些程式套件到磁碟以供稍後使用"
+msgstr "正在複製一些軟體套件到磁碟以供稍後使用"
-#: media.pm:809
+#: media.pm:797
#, c-format
msgid "Copying in progress"
msgstr "複製進行中"
@@ -344,353 +393,414 @@ msgstr "好的"
msgid "maybe"
msgstr "或許"
-#: pkgs.pm:225
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr "正在從 XML 中介資料中取得軟體套件資訊..."
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr "\"%s\" 媒體沒有 XML 資訊,所以 %s 軟體套件只有部份結果"
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr "沒有描述"
+
+#: pkgs.pm:290
#, c-format
msgid ""
"Some packages requested by %s cannot be installed:\n"
"%s"
msgstr ""
-"無法安裝 %s 要求的某些套件:\n"
+"無法安裝 %s 要求的某些軟體套件:\n"
"%s"
-#: pkgs.pm:313
+#: pkgs.pm:386 pkgs.pm:413
#, c-format
msgid "An error occurred:"
msgstr "發生一個錯誤:"
-#: pkgs.pm:792
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr "發生了一個致命的錯誤:%s。"
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr "不要再詢問"
+
+#: pkgs.pm:928
#, c-format
msgid "%d installation transactions failed"
-msgstr ""
+msgstr "%d 個安裝執行失敗"
-#: pkgs.pm:793
+#: pkgs.pm:929
#, c-format
msgid "Installation of packages failed:"
-msgstr "安裝套件失敗:"
+msgstr "軟體套件安裝失敗:"
-#: share/meta-task/compssUsers.pl:13
+#: share/meta-task/compssUsers.pl:16
#, c-format
msgid "Workstation"
msgstr "工作站"
-#: share/meta-task/compssUsers.pl:15
+#: share/meta-task/compssUsers.pl:18
#, c-format
msgid "Office Workstation"
msgstr "辦公軟體平台"
-#: share/meta-task/compssUsers.pl:17
+#: share/meta-task/compssUsers.pl:20
#, c-format
msgid ""
-"Office programs: wordprocessors (OpenOffice.org Writer, Kword), spreadsheets "
-"(OpenOffice.org Calc, Kspread), PDF viewers, etc"
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
msgstr ""
-"辦公軟體:文書處理軟體 (OpenOffice.org Writer、Kword)、試算表 (OpenOffice."
-"org Calc、Kspread)、PDF 檢視器等等"
+"辦公軟體:文書處理軟體 (LibreOffice Writer、Kword)、試算表 (OpenOffice.org "
+"Calc、Kspread)、PDF 檢視器等等"
-#: share/meta-task/compssUsers.pl:18
-#, c-format
-msgid ""
-"Office programs: wordprocessors (kword, abiword), spreadsheets (kspread, "
-"gnumeric), pdf viewers, etc"
-msgstr ""
-"辦公軟體:文書處理軟體 (kword、abiword)、試算表 (kspread、gnumeric)、PDF 檢視"
-"器等等"
-
-#: share/meta-task/compssUsers.pl:23
+#: share/meta-task/compssUsers.pl:26
#, c-format
msgid "Game station"
msgstr "遊戲平台"
-#: share/meta-task/compssUsers.pl:24
+#: share/meta-task/compssUsers.pl:27
#, c-format
msgid "Amusement programs: arcade, boards, strategy, etc"
msgstr "娛樂的一些程式:紙牌、益智、動作、策略等"
-#: share/meta-task/compssUsers.pl:27
+#: share/meta-task/compssUsers.pl:30
#, c-format
msgid "Multimedia station"
msgstr "多媒體平台"
-#: share/meta-task/compssUsers.pl:28
+#: share/meta-task/compssUsers.pl:31
#, c-format
msgid "Sound and video playing/editing programs"
msgstr "音效以及影像撥放編輯程式"
-#: share/meta-task/compssUsers.pl:33
+#: share/meta-task/compssUsers.pl:36
#, c-format
msgid "Internet station"
msgstr "網際網路平台"
-#: share/meta-task/compssUsers.pl:34
+#: share/meta-task/compssUsers.pl:37
#, c-format
msgid ""
"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
"Web"
msgstr "包含讀信、寄信和閱讀新聞群組 (mutt、tin ..) 以及網路瀏覽的工具"
-#: share/meta-task/compssUsers.pl:39
+#: share/meta-task/compssUsers.pl:42
#, c-format
msgid "Network Computer (client)"
msgstr "網路電腦 (客戶端)"
-#: share/meta-task/compssUsers.pl:40
+#: share/meta-task/compssUsers.pl:43
#, c-format
msgid "Clients for different protocols including ssh"
msgstr "包含 ssh 等其他不同通訊協定的用戶端程式"
-#: share/meta-task/compssUsers.pl:45
+#: share/meta-task/compssUsers.pl:49
#, c-format
msgid "Tools to ease the configuration of your computer"
msgstr "讓您方便設定您系統的工具"
-#: share/meta-task/compssUsers.pl:49
+#: share/meta-task/compssUsers.pl:53
#, c-format
msgid "Console Tools"
msgstr "Console 工具"
-#: share/meta-task/compssUsers.pl:50
+#: share/meta-task/compssUsers.pl:54
#, c-format
msgid "Editors, shells, file tools, terminals"
msgstr "編輯器、shell、檔案工具、終端機"
-#: share/meta-task/compssUsers.pl:54 share/meta-task/compssUsers.pl:157
-#: share/meta-task/compssUsers.pl:159
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
#, c-format
msgid "Development"
msgstr "程式開發"
-#: share/meta-task/compssUsers.pl:55 share/meta-task/compssUsers.pl:160
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
#, c-format
msgid "C and C++ development libraries, programs and include files"
msgstr "C/C++ 發展環境,包含編譯器、程式庫與及一些引入檔"
-#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:164
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
#, c-format
msgid "Documentation"
msgstr "文件檔案"
-#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:165
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
#, c-format
msgid "Books and Howto's on Linux and Free Software"
msgstr "Linux 系統與自由軟體的書籍、HOWTO 文件"
-#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:168
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
#, c-format
msgid "LSB"
msgstr "LSB"
-#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:169
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
#, c-format
msgid "Linux Standard Base. Third party applications support"
msgstr "LSB 的支援,包含第三類協力廠商軟體支援"
-#: share/meta-task/compssUsers.pl:73
+#: share/meta-task/compssUsers.pl:79
#, c-format
msgid "Web Server"
msgstr "網頁伺服器 (Web)"
-#: share/meta-task/compssUsers.pl:74
+#: share/meta-task/compssUsers.pl:80
#, c-format
msgid "Apache"
msgstr "Apache"
-#: share/meta-task/compssUsers.pl:77
+#: share/meta-task/compssUsers.pl:84
#, c-format
msgid "Groupware"
msgstr "群組軟體"
-#: share/meta-task/compssUsers.pl:78
+#: share/meta-task/compssUsers.pl:85
#, c-format
msgid "Kolab Server"
msgstr "Kolab 伺服器"
-#: share/meta-task/compssUsers.pl:81 share/meta-task/compssUsers.pl:122
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
#, c-format
msgid "Firewall/Router"
msgstr "防火牆/路由器"
-#: share/meta-task/compssUsers.pl:82 share/meta-task/compssUsers.pl:123
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
#, c-format
msgid "Internet gateway"
msgstr "網際網路閘道器"
-#: share/meta-task/compssUsers.pl:85
+#: share/meta-task/compssUsers.pl:92
#, c-format
msgid "Mail/News"
msgstr "郵件/新聞"
-#: share/meta-task/compssUsers.pl:86
+#: share/meta-task/compssUsers.pl:93
#, c-format
msgid "Postfix mail server, Inn news server"
msgstr "Postfix 郵件伺服器,Inn 新聞伺服器"
-#: share/meta-task/compssUsers.pl:89
+#: share/meta-task/compssUsers.pl:97
#, c-format
msgid "Directory Server"
msgstr "目錄伺服器"
-#: share/meta-task/compssUsers.pl:93
+#: share/meta-task/compssUsers.pl:102
#, c-format
msgid "FTP Server"
msgstr "FTP 伺服器"
-#: share/meta-task/compssUsers.pl:94
+#: share/meta-task/compssUsers.pl:103
#, c-format
msgid "ProFTPd"
msgstr "ProFTPd"
-#: share/meta-task/compssUsers.pl:97
+#: share/meta-task/compssUsers.pl:107
#, c-format
msgid "DNS/NIS"
msgstr "DNS/NIS"
-#: share/meta-task/compssUsers.pl:98
+#: share/meta-task/compssUsers.pl:108
#, c-format
msgid "Domain Name and Network Information Server"
msgstr "網域名稱與網路資訊伺服器"
-#: share/meta-task/compssUsers.pl:101
+#: share/meta-task/compssUsers.pl:112
#, c-format
msgid "File and Printer Sharing Server"
msgstr "檔案與列印分享伺服器"
-#: share/meta-task/compssUsers.pl:102
+#: share/meta-task/compssUsers.pl:113
#, c-format
msgid "NFS Server, Samba server"
msgstr "NFS 伺服器、Samba 伺服器"
-#: share/meta-task/compssUsers.pl:105 share/meta-task/compssUsers.pl:118
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
#, c-format
msgid "Database"
msgstr "資料庫軟體"
-#: share/meta-task/compssUsers.pl:106
+#: share/meta-task/compssUsers.pl:118
#, c-format
-msgid "PostgreSQL and MySQL Database Server"
-msgstr "PostgreSQL 與 MySQL 資料庫伺服器"
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr "PostgreSQL 與 MariaDB 資料庫伺服器"
-#: share/meta-task/compssUsers.pl:110
+#: share/meta-task/compssUsers.pl:123
#, c-format
msgid "Web/FTP"
msgstr "Web/FTP"
-#: share/meta-task/compssUsers.pl:111
+#: share/meta-task/compssUsers.pl:124
#, c-format
msgid "Apache, Pro-ftpd"
msgstr "Apache、ProFTPD"
-#: share/meta-task/compssUsers.pl:114
+#: share/meta-task/compssUsers.pl:128
#, c-format
msgid "Mail"
msgstr "電子郵件"
-#: share/meta-task/compssUsers.pl:115
+#: share/meta-task/compssUsers.pl:129
#, c-format
msgid "Postfix mail server"
msgstr "Postfix 郵件伺服器"
-#: share/meta-task/compssUsers.pl:119
+#: share/meta-task/compssUsers.pl:134
#, c-format
-msgid "PostgreSQL or MySQL database server"
-msgstr "PostgreSQL、MySQL 資料庫"
+msgid "PostgreSQL or MariaDB database server"
+msgstr "PostgreSQL、MariaDB 資料庫"
-#: share/meta-task/compssUsers.pl:126
+#: share/meta-task/compssUsers.pl:142
#, c-format
msgid "Network Computer server"
msgstr "網路伺服器"
-#: share/meta-task/compssUsers.pl:127
+#: share/meta-task/compssUsers.pl:143
#, c-format
msgid "NFS server, SMB server, Proxy server, ssh server"
msgstr "NFS 伺服器、SMB 伺服器、Proxy 伺服器、SSH 伺服器"
-#: share/meta-task/compssUsers.pl:133
+#: share/meta-task/compssUsers.pl:150
#, c-format
msgid "Graphical Environment"
msgstr "圖形環境"
-#: share/meta-task/compssUsers.pl:135
+#: share/meta-task/compssUsers.pl:152
#, c-format
-msgid "KDE Workstation"
-msgstr "KDE 工作站"
+msgid "Plasma Workstation"
+msgstr "Plasma 工作站"
-#: share/meta-task/compssUsers.pl:136
+#: share/meta-task/compssUsers.pl:153
#, c-format
msgid ""
"The K Desktop Environment, the basic graphical environment with a collection "
"of accompanying tools"
msgstr "K 桌面環境,包含許多好用的圖型介面工具程式"
-#: share/meta-task/compssUsers.pl:140
+#: share/meta-task/compssUsers.pl:158
#, c-format
msgid "GNOME Workstation"
msgstr "GNOME 工作站"
-#: share/meta-task/compssUsers.pl:141
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
#, c-format
msgid ""
"A graphical environment with user-friendly set of applications and desktop "
"tools"
msgstr "包含友善的應用程式、桌面軟體的圖型化使用環境"
-#: share/meta-task/compssUsers.pl:145
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr "Xfce 工作站"
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr "一個包含友善的應用程式和桌面工具的輕量圖形環境"
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr "MATE 工作站"
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr "Cinnamon 工作站"
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr "一個以 GNOME 為基礎的圖形環境"
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr "LXQt 桌面"
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr "輕量桌面環境的下一代 QT 版本"
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr "Enlightenment 桌面"
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr "有忠實支持者的輕量快速圖形環境"
+
+#: share/meta-task/compssUsers.pl:189
#, c-format
msgid "LXDE Desktop"
msgstr "LXDE 桌面"
-#: share/meta-task/compssUsers.pl:147
+#: share/meta-task/compssUsers.pl:191
#, c-format
-msgid ""
-"A lightweight & fast graphical environment with user-friendly set of "
-"applications and desktop tools"
-msgstr "包含友善的應用程式、桌面軟體的輕量級圖型化使用環境"
+msgid "A lightweight fast graphical environment"
+msgstr "一個輕量且快速的圖形環境"
-#: share/meta-task/compssUsers.pl:150
+#: share/meta-task/compssUsers.pl:194
#, c-format
msgid "Other Graphical Desktops"
msgstr "其他圖型桌面軟體"
-#: share/meta-task/compssUsers.pl:151
+#: share/meta-task/compssUsers.pl:195
#, c-format
-msgid "Window Maker, Enlightenment, Fvwm, etc"
-msgstr "Window Maker、Enlightenment、Fvwm 等"
+msgid "Window Maker, Fvwm, etc"
+msgstr "Window Maker, Fvwm, 等"
-#: share/meta-task/compssUsers.pl:174
+#: share/meta-task/compssUsers.pl:218
#, c-format
msgid "Utilities"
msgstr "工具軟體"
-#: share/meta-task/compssUsers.pl:176 share/meta-task/compssUsers.pl:177
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
#, c-format
msgid "SSH Server"
msgstr "SSH 伺服主機"
-#: share/meta-task/compssUsers.pl:181
+#: share/meta-task/compssUsers.pl:225
#, c-format
msgid "Webmin"
msgstr "Webmin"
-#: share/meta-task/compssUsers.pl:182
+#: share/meta-task/compssUsers.pl:226
#, c-format
msgid "Webmin Remote Configuration Server"
msgstr "Webmin 遠端設定伺服器"
-#: share/meta-task/compssUsers.pl:186
+#: share/meta-task/compssUsers.pl:230
#, c-format
msgid "Network Utilities/Monitoring"
msgstr "網路工具/監控"
-#: share/meta-task/compssUsers.pl:187
+#: share/meta-task/compssUsers.pl:231
#, c-format
msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
msgstr "監控工具、程序管理、tcpdump、nmap..."
-#: share/meta-task/compssUsers.pl:191
+#: share/meta-task/compssUsers.pl:235
#, c-format
-msgid "Mandriva Wizards"
-msgstr "Mandriva 精靈"
+msgid "Mageia Wizards"
+msgstr "Mageia 精靈"
-#: share/meta-task/compssUsers.pl:192
+#: share/meta-task/compssUsers.pl:236
#, c-format
msgid "Wizards to configure server"
msgstr "用來設定伺服器的精靈"
@@ -704,15 +814,15 @@ msgstr ""
"發生了一個錯誤,但我不知道該如何妥善處置它。\n"
"要繼續安裝工作的話請小心。"
-#: steps.pm:443
+#: steps.pm:469
#, c-format
msgid ""
"Some important packages did not get installed properly.\n"
"Either your cdrom drive or your cdrom is defective.\n"
-"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
-"\"\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*."
+"rpm\"\n"
msgstr ""
-"有某些重要的套件沒有被適當地安裝。\n"
+"有某些重要的軟體套件沒有妥善安裝。\n"
"可能是您的光碟機或者是光碟片有缺陷。\n"
"請將光碟放在一個已經安裝好的電腦上使用 \"rpm -qpl media/main/*.rpm\" 來檢查\n"
@@ -723,336 +833,338 @@ msgstr "進入步驟 `%s'\n"
#: steps_curses.pm:22
#, c-format
-msgid "Mandriva Linux Installation %s"
-msgstr "Mandriva Linux 安裝程式 %s"
+msgid "%s Installation %s"
+msgstr "%s 安裝 %s"
#: steps_curses.pm:32
#, c-format
msgid "<Tab>/<Alt-Tab> between elements"
msgstr "<Tab>/<Alt-Tab> 在元件間移動"
-#: steps_gtk.pm:89
+#: steps_gtk.pm:151
#, c-format
msgid "Xorg server is slow to start. Please wait..."
msgstr "Xorg 伺服器的啟動較為緩慢。請稍候..."
-#: steps_gtk.pm:205
+#: steps_gtk.pm:216
#, c-format
msgid ""
"Your system is low on resources. You may have some problem installing\n"
-"Mandriva Linux. If that occurs, you can try a text install instead. For "
-"this,\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
"press `F1' when booting on CDROM, then enter `text'."
msgstr ""
-"您的系統資源太少,可能會在安裝 Mandriva Linux 的過程中遇到問題。\n"
-"如果真的發生問題,您或許可以改用文字模式的安裝方式來進行。\n"
-"要如此作的話,請在光碟開機時按下 `F1',然後輸入 `text'。"
+"您的系統資源不足,可能在安裝 %s 時會發生問題。如果真的發生問題,您可以試著改"
+"用文字介面安裝。只要在用光碟開機後的選單中按下 F1,並輸入 text 即可。"
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr "選擇安裝媒體"
-#: steps_gtk.pm:238
+#: steps_gtk.pm:257
#, c-format
-msgid "Install Mandriva KDE Desktop"
-msgstr "安裝 Mandriva KDE 桌面"
+msgid "Install %s Plasma Desktop"
+msgstr "安裝 %s Plasma 桌面"
-#: steps_gtk.pm:239
+#: steps_gtk.pm:258
#, c-format
-msgid "Install Mandriva GNOME Desktop"
-msgstr "安裝 Mandriva GNOME 桌面"
+msgid "Install %s GNOME Desktop"
+msgstr "安裝 %s GNOME 桌面系統"
-#: steps_gtk.pm:240
+#: steps_gtk.pm:259
#, c-format
msgid "Custom install"
msgstr "自訂安裝"
-#: steps_gtk.pm:261
+#: steps_gtk.pm:280
#, c-format
-msgid "KDE Desktop"
-msgstr "KDE 桌面"
+msgid "Plasma Desktop"
+msgstr "Plasma 桌面"
-#: steps_gtk.pm:262
+#: steps_gtk.pm:281
#, c-format
msgid "GNOME Desktop"
msgstr "Gnome 桌面"
-#: steps_gtk.pm:263
+#: steps_gtk.pm:282
#, c-format
msgid "Custom Desktop"
msgstr "自訂桌面"
-#: steps_gtk.pm:269
+#: steps_gtk.pm:288
#, c-format
msgid "Here's a preview of the '%s' desktop."
msgstr "這是 '%s' 桌面的預覽。"
-#: steps_gtk.pm:297
+#: steps_gtk.pm:315
#, c-format
msgid "Click on images in order to see a bigger preview"
msgstr "在影像上點選以觀看較大的預覽畫面"
-#: steps_gtk.pm:315 steps_interactive.pm:606 steps_list.pm:30
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
#, c-format
msgid "Package Group Selection"
-msgstr "套件群組選擇"
+msgstr "軟體套件群組選擇"
-#: steps_gtk.pm:336 steps_interactive.pm:623
+#: steps_gtk.pm:354 steps_interactive.pm:626
#, c-format
msgid "Individual package selection"
-msgstr "單一套件選取"
+msgstr "個別軟體套件選取"
-#: steps_gtk.pm:360 steps_interactive.pm:544
+#: steps_gtk.pm:361
#, c-format
-msgid "Total size: %d / %d MB"
-msgstr "總共大小: %d / %d MB"
+msgid "Unselect All"
+msgstr "取消選取所有項目"
-#: steps_gtk.pm:402
+#: steps_gtk.pm:380 steps_interactive.pm:538
#, c-format
-msgid "Bad package"
-msgstr "壞掉的套件"
+msgid "Total size: %d / %d MB"
+msgstr "總共大小: %d / %d MB"
-#: steps_gtk.pm:404
+#: steps_gtk.pm:425
#, c-format
msgid "Version: "
msgstr "版本:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "Size: "
msgstr "大小:"
-#: steps_gtk.pm:405
+#: steps_gtk.pm:426
#, c-format
msgid "%d KB\n"
msgstr "%d KB\n"
-#: steps_gtk.pm:406
+#: steps_gtk.pm:427
#, c-format
msgid "Importance: "
msgstr "重要性:"
-#: steps_gtk.pm:440
+#: steps_gtk.pm:462
#, c-format
-msgid "You can not select/unselect this package"
-msgstr "您不可以選擇/取消選擇這個套件"
+msgid "You cannot select/unselect this package"
+msgstr "您不可以選擇/取消選擇這個軟體套件"
-#: steps_gtk.pm:444
+#: steps_gtk.pm:466
#, c-format
msgid "due to missing %s"
msgstr "因為遺失 %s"
-#: steps_gtk.pm:445
+#: steps_gtk.pm:467
#, c-format
msgid "due to unsatisfied %s"
msgstr "由於沒有滿足 %s"
-#: steps_gtk.pm:446
+#: steps_gtk.pm:468
#, c-format
msgid "trying to promote %s"
msgstr "正在嘗試促進 %s"
-#: steps_gtk.pm:447
+#: steps_gtk.pm:469
#, c-format
msgid "in order to keep %s"
msgstr "為了保留 %s"
-#: steps_gtk.pm:452
+#: steps_gtk.pm:474
#, c-format
msgid ""
-"You can not select this package as there is not enough space left to install "
+"You cannot select this package as there is not enough space left to install "
"it"
-msgstr "您不可以選取這個套件,因為剩餘的空間不足以安裝它。"
+msgstr "您不可以選取這個軟體套件,因為剩餘的空間不夠安裝"
-#: steps_gtk.pm:455
+#: steps_gtk.pm:477
#, c-format
msgid "The following packages are going to be installed"
-msgstr "下列的套件將會被安裝上"
+msgstr "下列的軟體套件將會安裝"
-#: steps_gtk.pm:456
+#: steps_gtk.pm:478
#, c-format
msgid "The following packages are going to be removed"
-msgstr "下列的套件將會被移除"
+msgstr "下列的軟體套件將會移除"
-#: steps_gtk.pm:481
+#: steps_gtk.pm:504
#, c-format
-msgid "This is a mandatory package, it can not be unselected"
-msgstr "這是一個必要的套件,您不能不選取它"
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr "這是個強制軟體套件,您不能不選取"
-#: steps_gtk.pm:483
+#: steps_gtk.pm:506
#, c-format
-msgid "You can not unselect this package. It is already installed"
-msgstr "您不能不選這個套件。它已經被安裝上了。"
+msgid "You cannot unselect this package. It is already installed"
+msgstr "您不能不選這個軟體套件。它已經安裝。"
-#: steps_gtk.pm:485
+#: steps_gtk.pm:508
#, c-format
-msgid "You can not unselect this package. It must be upgraded"
-msgstr "您不能不選這個套件,它一定要更新才行。"
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr "您不能不選這個軟體套件。它必須升級"
-#: steps_gtk.pm:489
+#: steps_gtk.pm:512
#, c-format
msgid "Show automatically selected packages"
-msgstr "顯示自動被選取的套件"
+msgstr "顯示自動被選取的軟體套件"
-#: steps_gtk.pm:495
+#: steps_gtk.pm:516
#, c-format
msgid "Install"
msgstr "安裝"
-#: steps_gtk.pm:498
+#: steps_gtk.pm:519
#, c-format
msgid "Load/Save selection"
msgstr "載入/儲存選取"
-#: steps_gtk.pm:499
+#: steps_gtk.pm:520 steps_gtk.pm:525
#, c-format
msgid "Updating package selection"
-msgstr "正在更新套件的選擇"
+msgstr "正在更新軟體套件選擇"
-#: steps_gtk.pm:504
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr "在包的分层列表和平面列表之间切换"
+
+#: steps_gtk.pm:530
#, c-format
msgid "Minimal install"
msgstr "最小安裝"
-#: steps_gtk.pm:517
+#: steps_gtk.pm:543
#, c-format
msgid "Software Management"
-msgstr "軟體套件管理"
+msgstr "軟體管理"
-#: steps_gtk.pm:517 steps_interactive.pm:429
+#: steps_gtk.pm:543 steps_interactive.pm:415
#, c-format
msgid "Choose the packages you want to install"
-msgstr "選擇您想要安裝的套件"
+msgstr "選擇您想要安裝的軟體套件"
-#: steps_gtk.pm:534 steps_interactive.pm:637 steps_list.pm:32
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
#, c-format
msgid "Installing"
msgstr "正在安裝"
-#: steps_gtk.pm:564
+#: steps_gtk.pm:590
#, c-format
msgid "No details"
-msgstr "沒有詳細資訊"
+msgstr "不看詳細資訊"
-#: steps_gtk.pm:583
+#: steps_gtk.pm:610
#, c-format
msgid "Time remaining:"
msgstr "剩餘時間:"
-#: steps_gtk.pm:584
+#: steps_gtk.pm:611
#, c-format
msgid "(estimating...)"
msgstr "(正在估計...)"
-#: steps_gtk.pm:614
+#: steps_gtk.pm:637
#, c-format
msgid "%d package"
msgid_plural "%d packages"
-msgstr[0] "%d 個套件"
+msgstr[0] "%d 個軟體套件"
-#: steps_gtk.pm:668 steps_interactive.pm:801 steps_list.pm:43
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
#, c-format
msgid "Summary"
msgstr "總結"
-#: steps_gtk.pm:687
+#: steps_gtk.pm:713
#, c-format
msgid "Configure"
msgstr "設定"
-#: steps_gtk.pm:704 steps_interactive.pm:797 steps_interactive.pm:948
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
#, c-format
msgid "not configured"
msgstr "未被設定"
-#: steps_gtk.pm:738
-#, c-format
-msgid "Media Selection"
-msgstr "選擇安裝媒介"
-
-#: steps_gtk.pm:747 steps_interactive.pm:330
+#: steps_gtk.pm:773 steps_interactive.pm:315
#, c-format
msgid ""
"The following installation media have been found.\n"
"If you want to skip some of them, you can unselect them now."
msgstr ""
-"已經找到下列的安裝媒介。\n"
+"已經找到下列的安裝媒體。\n"
"如果您想略過它們,您現在可以將它們取消選取。"
-#: steps_gtk.pm:763 steps_interactive.pm:336
+#: steps_gtk.pm:789 steps_interactive.pm:321
#, c-format
msgid ""
-"You have the option to copy the contents of the CDs onto the hard drive "
+"You have the option to copy the contents of the CDs onto the hard disk drive "
"before installation.\n"
-"It will then continue from the hard drive and the packages will remain "
+"It will then continue from the hard disk drive and the packages will remain "
"available once the system is fully installed."
msgstr ""
-"您可以選擇在安裝前將光碟的內容複製到硬碟。稍候將會由硬碟繼續安裝,並且這些套"
-"件\n"
-"在安裝完畢之後仍然可以繼續使用。"
+"您可以選擇在安裝前將光碟的內容複製到硬碟。\n"
+"稍後將會由硬碟繼續安裝,而這些軟體套件在安裝完畢之後仍然可繼續使用。"
-#: steps_gtk.pm:765 steps_interactive.pm:338
+#: steps_gtk.pm:791 steps_interactive.pm:323
#, c-format
msgid "Copy whole CDs"
msgstr "複製整張光碟"
-#: steps_interactive.pm:39
+#: steps_interactive.pm:40
#, c-format
msgid "An error occurred"
msgstr "發生一個錯誤"
-#: steps_interactive.pm:104
+#: steps_interactive.pm:105
#, c-format
msgid "Please choose your keyboard layout"
msgstr "請選取鍵盤排列的樣式。"
-#: steps_interactive.pm:108
+#: steps_interactive.pm:109
#, c-format
msgid "Here is the full list of available keyboards:"
msgstr "以下是所有可用的鍵盤清單:"
-#: steps_interactive.pm:144
+#: steps_interactive.pm:153
#, c-format
msgid "Install/Upgrade"
msgstr "安裝/升級"
-#: steps_interactive.pm:148
+#: steps_interactive.pm:157
#, c-format
msgid "Is this an install or an upgrade?"
msgstr "這是安裝或是升級?"
-#: steps_interactive.pm:150
+#: steps_interactive.pm:159
#, c-format
msgid ""
"_: This is a noun:\n"
"Install"
msgstr "安裝"
-#: steps_interactive.pm:152
+#: steps_interactive.pm:161
#, c-format
msgid "Upgrade %s"
msgstr "升級 %s"
-#: steps_interactive.pm:170
+#: steps_interactive.pm:184
#, c-format
msgid "Encryption key for %s"
msgstr "加密金鑰於 %s"
-#: steps_interactive.pm:203
+#: steps_interactive.pm:217
#, c-format
msgid "Cancel installation, reboot system"
msgstr "取消安裝,重新開機"
-#: steps_interactive.pm:204
+#: steps_interactive.pm:218
#, c-format
msgid "New Installation"
msgstr "新的安裝"
-#: steps_interactive.pm:205
+#: steps_interactive.pm:219
#, c-format
msgid "Upgrade previous installation (not recommended)"
msgstr "升級之前的安裝 (不建議)"
-#: steps_interactive.pm:209
+#: steps_interactive.pm:223
#, c-format
msgid ""
-"Installer has detected that your installed Mandriva Linux system could not\n"
+"Installer has detected that your installed Linux system could not\n"
"safely be upgraded to %s.\n"
"\n"
"New installation replacing your previous one is recommended.\n"
@@ -1060,42 +1172,23 @@ msgid ""
"Warning : you should backup all your personal data before choosing \"New\n"
"Installation\"."
msgstr ""
-"安裝程式偵測到您安裝的 Mandriva Linux 系統無法安全地升級至 %s。\n"
+"安裝器偵測到您所安裝的 Mageia Linux 系統無法安全地更新到 %s。\n"
"\n"
-"建議用新的安裝取代您現有的系統。\n"
+"建議您重新安裝,而不要用升級的。\n"
"\n"
-"警告:您應該在選擇「新的安裝」之前先備份所有個人資料。"
+"警告:在您選擇「新安裝」之前,您應該備份您所有的個人資料。"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "IDE"
-msgstr "IDE"
+msgid "CD/DVD"
+msgstr "CD/DVD"
-#: steps_interactive.pm:251
+#: steps_interactive.pm:264
#, c-format
-msgid "Configuring IDE"
-msgstr "正在設定 IDE"
+msgid "Configuring CD/DVD"
+msgstr "設定 CD/DVD"
-#: steps_interactive.pm:288
-#, c-format
-msgid ""
-"No free space for 1MB bootstrap! Install will continue, but to boot your "
-"system, you'll need to create the bootstrap partition in DiskDrake"
-msgstr ""
-"沒有足夠的可用空間安裝 bootstrap!安裝還是會繼續,但是您必須在 DiskDrake\n"
-"中建立 bootstrap 分割來啟動您的系統"
-
-#: steps_interactive.pm:293
-#, c-format
-msgid ""
-"You'll need to create a PPC PReP Boot bootstrap! Install will continue, but "
-"to boot your system, you'll need to create the bootstrap partition in "
-"DiskDrake"
-msgstr ""
-"您需要建立一個 PPC PReP 開機 bootstrap!安裝還是會繼續,但是您必須在 "
-"DiskDrake 中建立 bootstrap 分割來啟動您的系統"
-
-#: steps_interactive.pm:369
+#: steps_interactive.pm:354
#, c-format
msgid ""
"Change your Cd-Rom!\n"
@@ -1107,162 +1200,203 @@ msgstr ""
"請插入標示為 \"%s\" 的光碟於您的光碟機中,完成後請按下確定。\n"
"若是您沒有這片光碟,請點選取消以略過這一片光碟的安裝。"
-#: steps_interactive.pm:386
+#: steps_interactive.pm:372 steps_interactive.pm:490
#, c-format
msgid "Looking for available packages..."
-msgstr "正在搜尋可以用的套件..."
+msgstr "正在搜尋可以用的軟體套件..."
-#: steps_interactive.pm:394
+#: steps_interactive.pm:380
#, c-format
msgid ""
-"Your system does not have enough space left for installation or upgrade (%"
-"dMB > %dMB)"
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
msgstr "您的系統剩餘的空間不足以安裝或升級 (%dMB > %dMB)"
-#: steps_interactive.pm:441
+#: steps_interactive.pm:428
#, c-format
msgid ""
"Please choose load or save package selection.\n"
"The format is the same as auto_install generated files."
msgstr ""
-"請選擇要載入或者儲存套件選擇到磁片上。\n"
-"它使用與自動安裝所產生的磁片相同的格式。"
+"請選擇要載入或者儲存的軟體套件。\n"
+"它使用與自動安裝所產生的檔案相同的格式。"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Load"
msgstr "載入"
-#: steps_interactive.pm:443
+#: steps_interactive.pm:430
#, c-format
msgid "Save"
msgstr "儲存"
-#: steps_interactive.pm:451
+#: steps_interactive.pm:438
#, c-format
msgid "Bad file"
msgstr "損壞的檔案"
-#: steps_interactive.pm:467
+#: steps_interactive.pm:455
#, c-format
-msgid "KDE"
-msgstr "KDE"
+msgid "Plasma"
+msgstr "Plasma"
-#: steps_interactive.pm:468
+#: steps_interactive.pm:456
#, c-format
msgid "GNOME"
msgstr "GNOME"
-#: steps_interactive.pm:471
+#: steps_interactive.pm:459
#, c-format
msgid "Desktop Selection"
msgstr "桌面環境選擇"
-#: steps_interactive.pm:472
+#: steps_interactive.pm:460
#, c-format
msgid "You can choose your workstation desktop profile."
msgstr "您可以選擇您工作站的桌面環境:"
-#: steps_interactive.pm:558
+#: steps_interactive.pm:552
#, c-format
msgid "Selected size is larger than available space"
msgstr "所選取的大小超過可用的空間"
-#: steps_interactive.pm:574
+#: steps_interactive.pm:576
#, c-format
msgid "Type of install"
msgstr "安裝類型"
-#: steps_interactive.pm:575
+#: steps_interactive.pm:577
#, c-format
msgid ""
"You have not selected any group of packages.\n"
"Please choose the minimal installation you want:"
msgstr ""
-"您並未選取任何套件群組。\n"
+"您並未選取任何軟體套件群組。\n"
"請選擇您想要的最小安裝:"
-#: steps_interactive.pm:580
+#: steps_interactive.pm:582
#, c-format
msgid "With X"
msgstr "包含 X 環境"
-#: steps_interactive.pm:581
-#, fuzzy, c-format
-msgid "Install suggested packages"
-msgstr "正在安裝套件 %s"
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr "安裝建議的軟體套件"
-#: steps_interactive.pm:582
+#: steps_interactive.pm:584
#, c-format
msgid "With basic documentation (recommended!)"
msgstr "包含基本的說明文件 (建議的!)"
-#: steps_interactive.pm:583
+#: steps_interactive.pm:585
#, c-format
msgid "Truly minimal install (especially no urpmi)"
msgstr "真正最小安裝 (尤其無 urpmi)"
-#: steps_interactive.pm:638
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr "正在準備升級..."
+
+#: steps_interactive.pm:647
#, c-format
msgid "Preparing installation"
msgstr "正在準備安裝"
-#: steps_interactive.pm:646
+#: steps_interactive.pm:655
#, c-format
msgid "Installing package %s"
-msgstr "正在安裝套件 %s"
+msgstr "正在安裝軟體套件 %s"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "There was an error ordering packages:"
-msgstr "排列套件時發生錯誤:"
+msgstr "排列軟體套件時發生錯誤:"
-#: steps_interactive.pm:670
+#: steps_interactive.pm:679
#, c-format
msgid "Go on anyway?"
msgstr "無論如何都要繼續嗎?"
-#: steps_interactive.pm:674
+#: steps_interactive.pm:683
#, c-format
msgid "Retry"
msgstr "重試"
-#: steps_interactive.pm:675
+#: steps_interactive.pm:684
#, c-format
msgid "Skip this package"
-msgstr "略過這個套件"
+msgstr "略過這個軟體套件"
-#: steps_interactive.pm:676
+#: steps_interactive.pm:685
#, c-format
msgid "Skip all packages from medium \"%s\""
-msgstr "略過所有 %s 媒體的套件"
+msgstr "略過所有 %s 媒體的軟體套件"
-#: steps_interactive.pm:677
+#: steps_interactive.pm:686
#, c-format
msgid "Go back to media and packages selection"
-msgstr "回到媒體與套件選擇"
+msgstr "回到媒體與軟體套件選擇"
-#: steps_interactive.pm:680
+#: steps_interactive.pm:689
#, c-format
msgid "There was an error installing package %s."
-msgstr "安裝 %s 套件時發生錯誤。"
+msgstr "安裝 %s 軟體套件時發生錯誤。"
-#: steps_interactive.pm:699
+#: steps_interactive.pm:708
#, c-format
msgid "Post-install configuration"
msgstr "安裝後的設定"
-#: steps_interactive.pm:706
+#: steps_interactive.pm:715
#, c-format
msgid "Please ensure the Update Modules media is in drive %s"
-msgstr "請確定更新模組媒介位於磁碟機 %s 中"
+msgstr "請確定更新模組媒體位於磁碟機 %s 中"
-#: steps_interactive.pm:734 steps_list.pm:47
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
#, c-format
msgid "Updates"
msgstr "更新"
-#: steps_interactive.pm:735
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr "您現在有機會設定線上媒體來源。"
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr "這能讓您安裝安全更新。"
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+"要設定這些來源,您需要有可運作的網路連線。\n"
+"您想要設定更新來源嗎?"
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr "无法安装此引导加载程序"
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr "重試?"
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr "新增媒體時發生錯誤"
+
+#: steps_interactive.pm:792
#, c-format
msgid ""
"You now have the opportunity to download updated packages. These packages\n"
@@ -1274,132 +1408,104 @@ msgid ""
"\n"
"Do you want to install the updates?"
msgstr ""
-"您現在有機會下載更新套件。這些套件在發行版釋放之後已經被更新過了。\n"
+"您現在有機會下載更新軟體套件。這些軟體套件在散布版發行之後已經被更新過了。\n"
"他們或許有安全性或臭蟲修正。\n"
"\n"
-"要下載這些套件,您需要有正常運作的網際網路連線。\n"
+"要下載這些軟體套件,您需要有正常運作的網際網路連線。\n"
"\n"
"您想要安裝更新嗎?"
-#: steps_interactive.pm:843
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
#, c-format
msgid "%s on %s"
msgstr "%2$s 上的 %1$s"
-#: steps_interactive.pm:876 steps_interactive.pm:883 steps_interactive.pm:896
-#: steps_interactive.pm:913 steps_interactive.pm:928
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
#, c-format
msgid "Hardware"
msgstr "硬體"
-#: steps_interactive.pm:897 steps_interactive.pm:914
+#: steps_interactive.pm:958
#, c-format
msgid "Sound card"
msgstr "音效卡"
-#: steps_interactive.pm:917
-#, c-format
-msgid "Do you have an ISA sound card?"
-msgstr "您有 ISA 音效卡嗎?"
-
-#: steps_interactive.pm:919
-#, c-format
-msgid ""
-"Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound "
-"card"
-msgstr "請在安裝完畢後,執行 \"alsaconf\" 或 \"sndconfig\" 來設定您的音效卡"
-
-#: steps_interactive.pm:921
-#, c-format
-msgid "No sound card detected. Try \"harddrake\" after installation"
-msgstr "沒偵測到任何音效卡。請在安裝後嘗試 \"harddrake\" 進行設定"
-
-#: steps_interactive.pm:929
+#: steps_interactive.pm:972
#, c-format
msgid "Graphical interface"
msgstr "圖形介面"
-#: steps_interactive.pm:935 steps_interactive.pm:946
+#: steps_interactive.pm:978 steps_interactive.pm:990
#, c-format
msgid "Network & Internet"
msgstr "網路與網際網路"
-#: steps_interactive.pm:947
+#: steps_interactive.pm:991
#, c-format
msgid "Proxies"
msgstr "代理伺服器"
-#: steps_interactive.pm:948
+#: steps_interactive.pm:992
#, c-format
msgid "configured"
msgstr "已設定"
-#: steps_interactive.pm:958
+#: steps_interactive.pm:1002
#, c-format
msgid "Security Level"
msgstr "安全層級"
-#: steps_interactive.pm:977
+#: steps_interactive.pm:1022
#, c-format
msgid "Firewall"
msgstr "防火牆"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "activated"
msgstr "已啟用"
-#: steps_interactive.pm:981
+#: steps_interactive.pm:1026
#, c-format
msgid "disabled"
msgstr "已停用"
-#: steps_interactive.pm:995
+#: steps_interactive.pm:1041
#, c-format
msgid "You have not configured X. Are you sure you really want this?"
msgstr "您尚未設定 X。您確定您真的要這樣做?"
-#: steps_interactive.pm:1023
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
#, c-format
-msgid "Preparing bootloader..."
-msgstr "正在準備開機載入程式..."
+msgid "Preparing initial startup program..."
+msgstr "正在準備初始化啟動程式..."
-#: steps_interactive.pm:1024
+#: steps_interactive.pm:1073
#, c-format
msgid "Be patient, this may take a while..."
msgstr "請耐心等候,這要花一些時間..."
-#: steps_interactive.pm:1035
-#, c-format
-msgid ""
-"You appear to have an OldWorld or Unknown machine, the yaboot bootloader "
-"will not work for you. The install will continue, but you'll need to use "
-"BootX or some other means to boot your machine. The kernel argument for the "
-"root fs is: root=%s"
-msgstr ""
-"您的系統似乎有 OldWorld 或者是其他不認識的機器,\n"
-"這將會導致 yaboot 開機載入器無法正常運作。\n"
-"安裝還是會繼續下去,不過您將需要使用 bootX 或某些其他方法來啟動您的機器。"
-"root fs 的核心參數是:root=%s"
-
-#: steps_interactive.pm:1049
+#: steps_interactive.pm:1089
#, c-format
msgid ""
"In this security level, access to the files in the Windows partition is "
"restricted to the administrator."
msgstr "在這個安全層級中,只有管理者能夠存取位於 Windows 分割區的檔案。"
-#: steps_interactive.pm:1081
+#: steps_interactive.pm:1121
#, c-format
msgid "Insert a blank floppy in drive %s"
msgstr "請在 %s 中插入一片空白磁片"
-#: steps_interactive.pm:1083
+#: steps_interactive.pm:1123
#, c-format
msgid "Creating auto install floppy..."
msgstr "正在製作自動安裝磁片..."
-#: steps_interactive.pm:1094
+#: steps_interactive.pm:1134
#, c-format
msgid ""
"Some steps are not completed.\n"
@@ -1410,12 +1516,12 @@ msgstr ""
"\n"
"您確定要結束安裝程式?"
-#: steps_interactive.pm:1104
+#: steps_interactive.pm:1144
#, c-format
msgid "Congratulations"
msgstr "恭喜"
-#: steps_interactive.pm:1107
+#: steps_interactive.pm:1147
#, c-format
msgid "Reboot"
msgstr "重新開機"
@@ -1494,7 +1600,7 @@ msgstr "正在格式化"
msgid ""
"_: Keep these entry short\n"
"Choosing packages"
-msgstr "選取程式套件"
+msgstr "選取軟體套件"
#: steps_list.pm:31
#, c-format
@@ -1510,13 +1616,6 @@ msgid ""
"Users"
msgstr "使用者"
-#: steps_list.pm:36 steps_list.pm:37
-#, c-format
-msgid ""
-"_: Keep these entry short\n"
-"Networking"
-msgstr "網路"
-
#: steps_list.pm:38 steps_list.pm:39
#, c-format
msgid ""
@@ -1558,21 +1657,3 @@ msgid ""
"_: Keep these entry short\n"
"Exit"
msgstr "離開"
-
-#~ msgid ""
-#~ "You have decided to upgrade your system to %s. KDE 3.5 has been detected\n"
-#~ "on your system. This installer cannot preserve KDE 3.5 in an upgrade. If "
-#~ "you choose to proceed, \n"
-#~ "KDE 4 will replace KDE 3, and you will lose your personal KDE "
-#~ "configuration settings. \n"
-#~ "To upgrade with KDE 3.5 and your personal settings preserved, \n"
-#~ "please reboot your system and upgrade using the Mandriva update applet."
-#~ msgstr ""
-#~ "您決定要升級您的系統到 %s。您的系統中偵測到含有 KDE 3.5。\n"
-#~ "這個安裝程式無法在升級時保留 KDE 3.5。如果您選擇要繼續,\n"
-#~ "KDE 4 將會取代 KDE 3,而您將會失去您個人的 KDE 設定。\n"
-#~ "要升級為 KDE 3.5 並保留您的個人設定,請重新啟動您的系統\n"
-#~ "並使用 Mandriva 更新軟體升級。"
-
-#~ msgid "Proceed"
-#~ msgstr "進行"
diff --git a/perl-install/install/share/po/zu.po b/perl-install/install/share/po/zu.po
new file mode 100644
index 000000000..884dd0f8c
--- /dev/null
+++ b/perl-install/install/share/po/zu.po
@@ -0,0 +1,1608 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-11-21 21:16+0000\n"
+"PO-Revision-Date: 2019-06-07 08:35+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Zulu (http://www.transifex.com/MageiaLinux/mageia/language/"
+"zu/)\n"
+"Language: zu\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../../advertising/01_IM_mageia.pl:1
+#, c-format
+msgid "Join Us!"
+msgstr ""
+
+#: ../../advertising/02_IM_mageia.pl:1
+#, c-format
+msgid "Make it yours!"
+msgstr ""
+
+#: ../../advertising/03_IM_mageia.pl:1
+#, c-format
+msgid "Your choice!"
+msgstr ""
+
+#: ../../advertising/04_IM_mageia.pl:1
+#, c-format
+msgid "Office tools"
+msgstr ""
+
+#: ../../advertising/05_IM_mageia.pl:1
+#, c-format
+msgid "Home entertainment"
+msgstr ""
+
+#: ../../advertising/06_IM_mageia.pl:1
+#, c-format
+msgid "For kids"
+msgstr ""
+
+#: ../../advertising/07_IM_mageia.pl:1
+#, c-format
+msgid "For family!"
+msgstr ""
+
+#: ../../advertising/08_IM_mageia.pl:1
+#, c-format
+msgid "For developers!"
+msgstr ""
+
+#: ../../advertising/09_IM_mageia.pl:1
+#, c-format
+msgid "Thank you!"
+msgstr ""
+
+#: ../../advertising/10_IM_mageia.pl:1
+#, c-format
+msgid "Be Free!"
+msgstr ""
+
+#: any.pm:151
+#, c-format
+msgid "Do you have further supplementary media?"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:154
+#, c-format
+msgid ""
+"The following media have been found and will be used during install: %s.\n"
+"\n"
+"\n"
+"Do you have a supplementary installation medium to configure?"
+msgstr ""
+
+#: any.pm:162
+#, c-format
+msgid "Network (HTTP)"
+msgstr ""
+
+#: any.pm:163
+#, c-format
+msgid "Network (FTP)"
+msgstr ""
+
+#: any.pm:164
+#, c-format
+msgid "Network (NFS)"
+msgstr ""
+
+#: any.pm:224
+#, c-format
+msgid "NFS setup"
+msgstr ""
+
+#: any.pm:225
+#, c-format
+msgid "Please enter the hostname and directory of your NFS media"
+msgstr ""
+
+#: any.pm:229
+#, c-format
+msgid "Hostname missing"
+msgstr ""
+
+#: any.pm:230
+#, c-format
+msgid "Directory must begin with \"/\""
+msgstr ""
+
+#: any.pm:234
+#, c-format
+msgid "Hostname of the NFS mount ?"
+msgstr ""
+
+#: any.pm:235
+#, c-format
+msgid "Directory"
+msgstr ""
+
+#: any.pm:265
+#, c-format
+msgid "Supplementary"
+msgstr ""
+
+#: any.pm:300
+#, c-format
+msgid ""
+"Can't find a package list file on this mirror. Make sure the location is "
+"correct."
+msgstr ""
+
+#: any.pm:325
+#, c-format
+msgid "Core Release"
+msgstr ""
+
+#: any.pm:327
+#, c-format
+msgid "Tainted Release"
+msgstr ""
+
+#: any.pm:329
+#, c-format
+msgid "Nonfree Release"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid ""
+"Some hardware on your machine needs some non free firmwares in order for the "
+"free software drivers to work."
+msgstr ""
+
+#: any.pm:368
+#, c-format
+msgid "You should enable \"%s\""
+msgstr ""
+
+#: any.pm:419
+#, c-format
+msgid "\"%s\" contains the various pieces of the systems and its applications"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "\"%s\" contains non free software.\n"
+msgstr ""
+
+#: any.pm:421
+#, c-format
+msgid ""
+"It also contains firmwares needed for certain devices to operate (eg: some "
+"ATI/AMD graphic cards, some network cards, some RAID cards, ...)"
+msgstr ""
+
+#: any.pm:422
+#, c-format
+msgid ""
+"\"%s\" contains software that can not be distributed in every country due to "
+"software patents."
+msgstr ""
+
+#: any.pm:423
+#, c-format
+msgid ""
+"It also contains software from \"%s\" rebuild with additional capabilities."
+msgstr ""
+
+#: any.pm:429
+#, c-format
+msgid "Here you can enable more media if you want."
+msgstr ""
+
+#: any.pm:447
+#, c-format
+msgid "This medium provides package updates for medium \"%s\""
+msgstr ""
+
+#: any.pm:558
+#, c-format
+msgid "Looking at packages already installed..."
+msgstr ""
+
+#: any.pm:593
+#, c-format
+msgid "Finding packages to upgrade..."
+msgstr ""
+
+#: any.pm:612
+#, c-format
+msgid "Removing packages prior to upgrade..."
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: any.pm:850
+#, c-format
+msgid ""
+"The following packages will be removed to allow upgrading your system: %s\n"
+"\n"
+"\n"
+"Do you really want to remove these packages?\n"
+msgstr ""
+
+#: any.pm:1075
+#, c-format
+msgid "Error reading file %s"
+msgstr ""
+
+#: any.pm:1283
+#, c-format
+msgid "The following disk(s) were renamed:"
+msgstr ""
+
+#: any.pm:1285
+#, c-format
+msgid "%s (previously named as %s)"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "HTTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "FTP"
+msgstr ""
+
+#: any.pm:1342
+#, c-format
+msgid "NFS"
+msgstr ""
+
+#: any.pm:1361 steps_interactive.pm:979
+#, c-format
+msgid "Network"
+msgstr ""
+
+#: any.pm:1365
+#, c-format
+msgid "Please choose a media"
+msgstr ""
+
+#: any.pm:1381
+#, c-format
+msgid "File already exists. Overwrite it?"
+msgstr ""
+
+#: any.pm:1385
+#, c-format
+msgid "Permission denied"
+msgstr ""
+
+#: any.pm:1433
+#, c-format
+msgid "Bad NFS name"
+msgstr ""
+
+#: any.pm:1454
+#, c-format
+msgid "Bad media %s"
+msgstr ""
+
+#: any.pm:1498
+#, c-format
+msgid "Cannot make screenshots before partitioning"
+msgstr ""
+
+#: any.pm:1509
+#, c-format
+msgid "Screenshots will be available after install in %s"
+msgstr ""
+
+#: gtk.pm:134
+#, c-format
+msgid "Installation"
+msgstr ""
+
+#: gtk.pm:138 share/meta-task/compssUsers.pl:48
+#, c-format
+msgid "Configuration"
+msgstr ""
+
+#: install2.pm:220
+#, c-format
+msgid "You must also format %s"
+msgstr ""
+
+#: interactive.pm:16
+#, c-format
+msgid ""
+"Some hardware on your computer needs ``proprietary'' drivers to work.\n"
+"You can find some information about them at: %s"
+msgstr ""
+
+#: interactive.pm:22
+#, c-format
+msgid "Bringing up the network"
+msgstr ""
+
+#: interactive.pm:27
+#, c-format
+msgid "Bringing down the network"
+msgstr ""
+
+#: media.pm:397
+#, c-format
+msgid "Please wait, retrieving file"
+msgstr ""
+
+#: media.pm:704
+#, c-format
+msgid "unable to add medium"
+msgstr ""
+
+#: media.pm:744
+#, c-format
+msgid "Copying some packages on disks for future use"
+msgstr ""
+
+#: media.pm:797
+#, c-format
+msgid "Copying in progress"
+msgstr ""
+
+#: pkgs.pm:32
+#, c-format
+msgid "must have"
+msgstr ""
+
+#: pkgs.pm:33
+#, c-format
+msgid "important"
+msgstr ""
+
+#: pkgs.pm:34
+#, c-format
+msgid "very nice"
+msgstr ""
+
+#: pkgs.pm:35
+#, c-format
+msgid "nice"
+msgstr ""
+
+#: pkgs.pm:36
+#, c-format
+msgid "maybe"
+msgstr ""
+
+#: pkgs.pm:103
+#, c-format
+msgid "Getting package information from XML meta-data..."
+msgstr ""
+
+#: pkgs.pm:112
+#, c-format
+msgid "No xml info for medium \"%s\", only partial result for package %s"
+msgstr ""
+
+#: pkgs.pm:120
+#, c-format
+msgid "No description"
+msgstr ""
+
+#: pkgs.pm:290
+#, c-format
+msgid ""
+"Some packages requested by %s cannot be installed:\n"
+"%s"
+msgstr ""
+
+#: pkgs.pm:386 pkgs.pm:413
+#, c-format
+msgid "An error occurred:"
+msgstr ""
+
+#: pkgs.pm:405
+#, c-format
+msgid "A fatal error occurred: %s."
+msgstr ""
+
+#: pkgs.pm:912 pkgs.pm:954
+#, c-format
+msgid "Do not ask again"
+msgstr ""
+
+#: pkgs.pm:928
+#, c-format
+msgid "%d installation transactions failed"
+msgstr ""
+
+#: pkgs.pm:929
+#, c-format
+msgid "Installation of packages failed:"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:16
+#, c-format
+msgid "Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:18
+#, c-format
+msgid "Office Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:20
+#, c-format
+msgid ""
+"Office programs: wordprocessors (LibreOffice Writer, Kword), spreadsheets "
+"(LibreOffice Calc, Kspread), PDF viewers, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:26
+#, c-format
+msgid "Game station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:27
+#, c-format
+msgid "Amusement programs: arcade, boards, strategy, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:30
+#, c-format
+msgid "Multimedia station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:31
+#, c-format
+msgid "Sound and video playing/editing programs"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:36
+#, c-format
+msgid "Internet station"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:37
+#, c-format
+msgid ""
+"Set of tools to read and send mail and news (mutt, tin..) and to browse the "
+"Web"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:42
+#, c-format
+msgid "Network Computer (client)"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:43
+#, c-format
+msgid "Clients for different protocols including ssh"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:49
+#, c-format
+msgid "Tools to ease the configuration of your computer"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:53
+#, c-format
+msgid "Console Tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:54
+#, c-format
+msgid "Editors, shells, file tools, terminals"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:58 share/meta-task/compssUsers.pl:201
+#: share/meta-task/compssUsers.pl:203
+#, c-format
+msgid "Development"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:59 share/meta-task/compssUsers.pl:204
+#, c-format
+msgid "C and C++ development libraries, programs and include files"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:63 share/meta-task/compssUsers.pl:208
+#, c-format
+msgid "Documentation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:64 share/meta-task/compssUsers.pl:209
+#, c-format
+msgid "Books and Howto's on Linux and Free Software"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:68 share/meta-task/compssUsers.pl:212
+#, c-format
+msgid "LSB"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:69 share/meta-task/compssUsers.pl:213
+#, c-format
+msgid "Linux Standard Base. Third party applications support"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:79
+#, c-format
+msgid "Web Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:80
+#, c-format
+msgid "Apache"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:84
+#, c-format
+msgid "Groupware"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:85
+#, c-format
+msgid "Kolab Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:88 share/meta-task/compssUsers.pl:138
+#, c-format
+msgid "Firewall/Router"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:89 share/meta-task/compssUsers.pl:139
+#, c-format
+msgid "Internet gateway"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:92
+#, c-format
+msgid "Mail/News"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:93
+#, c-format
+msgid "Postfix mail server, Inn news server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:97
+#, c-format
+msgid "Directory Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:102
+#, c-format
+msgid "FTP Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:103
+#, c-format
+msgid "ProFTPd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:107
+#, c-format
+msgid "DNS/NIS"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:108
+#, c-format
+msgid "Domain Name and Network Information Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:112
+#, c-format
+msgid "File and Printer Sharing Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:113
+#, c-format
+msgid "NFS Server, Samba server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:117 share/meta-task/compssUsers.pl:133
+#, c-format
+msgid "Database"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:118
+#, c-format
+msgid "PostgreSQL and MariaDB Database Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:123
+#, c-format
+msgid "Web/FTP"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:124
+#, c-format
+msgid "Apache, Pro-ftpd"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:128
+#, c-format
+msgid "Mail"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:129
+#, c-format
+msgid "Postfix mail server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:134
+#, c-format
+msgid "PostgreSQL or MariaDB database server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:142
+#, c-format
+msgid "Network Computer server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:143
+#, c-format
+msgid "NFS server, SMB server, Proxy server, ssh server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:150
+#, c-format
+msgid "Graphical Environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:152
+#, c-format
+msgid "Plasma Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:153
+#, c-format
+msgid ""
+"The K Desktop Environment, the basic graphical environment with a collection "
+"of accompanying tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:158
+#, c-format
+msgid "GNOME Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:159 share/meta-task/compssUsers.pl:170
+#, c-format
+msgid ""
+"A graphical environment with user-friendly set of applications and desktop "
+"tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:164
+#, c-format
+msgid "Xfce Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:165
+#, c-format
+msgid ""
+"A lighter graphical environment with user-friendly set of applications and "
+"desktop tools"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:169
+#, c-format
+msgid "MATE Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:174
+#, c-format
+msgid "Cinnamon Workstation"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:175
+#, c-format
+msgid "A graphical environment based on GNOME"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:179
+#, c-format
+msgid "LXQt Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:181
+#, c-format
+msgid "A next generation QT port of the lightweight desktop environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:184
+#, c-format
+msgid "Enlightenment Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:186
+#, c-format
+msgid "A lightweight fast graphical environment with a dedicated following"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:189
+#, c-format
+msgid "LXDE Desktop"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:191
+#, c-format
+msgid "A lightweight fast graphical environment"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:194
+#, c-format
+msgid "Other Graphical Desktops"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:195
+#, c-format
+msgid "Window Maker, Fvwm, etc"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:218
+#, c-format
+msgid "Utilities"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:220 share/meta-task/compssUsers.pl:221
+#, c-format
+msgid "SSH Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:225
+#, c-format
+msgid "Webmin"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:226
+#, c-format
+msgid "Webmin Remote Configuration Server"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:230
+#, c-format
+msgid "Network Utilities/Monitoring"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:231
+#, c-format
+msgid "Monitoring tools, processes accounting, tcpdump, nmap, ..."
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:235
+#, c-format
+msgid "Mageia Wizards"
+msgstr ""
+
+#: share/meta-task/compssUsers.pl:236
+#, c-format
+msgid "Wizards to configure server"
+msgstr ""
+
+#: steps.pm:85
+#, c-format
+msgid ""
+"An error occurred, but I do not know how to handle it nicely.\n"
+"Continue at your own risk."
+msgstr ""
+
+#: steps.pm:469
+#, c-format
+msgid ""
+"Some important packages did not get installed properly.\n"
+"Either your cdrom drive or your cdrom is defective.\n"
+"Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm"
+"\"\n"
+msgstr ""
+
+#: steps_auto_install.pm:71 steps_stdio.pm:27
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr ""
+
+#: steps_curses.pm:22
+#, c-format
+msgid "%s Installation %s"
+msgstr ""
+
+#: steps_curses.pm:32
+#, c-format
+msgid "<Tab>/<Alt-Tab> between elements"
+msgstr ""
+
+#: steps_gtk.pm:151
+#, c-format
+msgid "Xorg server is slow to start. Please wait..."
+msgstr ""
+
+#: steps_gtk.pm:216
+#, c-format
+msgid ""
+"Your system is low on resources. You may have some problem installing\n"
+"%s. If that occurs, you can try a text install instead. For this,\n"
+"press `F1' when booting on CDROM, then enter `text'."
+msgstr ""
+
+#: steps_gtk.pm:246 steps_gtk.pm:764
+#, c-format
+msgid "Media Selection"
+msgstr ""
+
+#: steps_gtk.pm:257
+#, c-format
+msgid "Install %s Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:258
+#, c-format
+msgid "Install %s GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:259
+#, c-format
+msgid "Custom install"
+msgstr ""
+
+#: steps_gtk.pm:280
+#, c-format
+msgid "Plasma Desktop"
+msgstr ""
+
+#: steps_gtk.pm:281
+#, c-format
+msgid "GNOME Desktop"
+msgstr ""
+
+#: steps_gtk.pm:282
+#, c-format
+msgid "Custom Desktop"
+msgstr ""
+
+#: steps_gtk.pm:288
+#, c-format
+msgid "Here's a preview of the '%s' desktop."
+msgstr ""
+
+#: steps_gtk.pm:315
+#, c-format
+msgid "Click on images in order to see a bigger preview"
+msgstr ""
+
+#: steps_gtk.pm:331 steps_interactive.pm:609 steps_list.pm:30
+#, c-format
+msgid "Package Group Selection"
+msgstr ""
+
+#: steps_gtk.pm:354 steps_interactive.pm:626
+#, c-format
+msgid "Individual package selection"
+msgstr ""
+
+#: steps_gtk.pm:361
+#, c-format
+msgid "Unselect All"
+msgstr ""
+
+#: steps_gtk.pm:380 steps_interactive.pm:538
+#, c-format
+msgid "Total size: %d / %d MB"
+msgstr ""
+
+#: steps_gtk.pm:425
+#, c-format
+msgid "Version: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "Size: "
+msgstr ""
+
+#: steps_gtk.pm:426
+#, c-format
+msgid "%d KB\n"
+msgstr ""
+
+#: steps_gtk.pm:427
+#, c-format
+msgid "Importance: "
+msgstr ""
+
+#: steps_gtk.pm:462
+#, c-format
+msgid "You cannot select/unselect this package"
+msgstr ""
+
+#: steps_gtk.pm:466
+#, c-format
+msgid "due to missing %s"
+msgstr ""
+
+#: steps_gtk.pm:467
+#, c-format
+msgid "due to unsatisfied %s"
+msgstr ""
+
+#: steps_gtk.pm:468
+#, c-format
+msgid "trying to promote %s"
+msgstr ""
+
+#: steps_gtk.pm:469
+#, c-format
+msgid "in order to keep %s"
+msgstr ""
+
+#: steps_gtk.pm:474
+#, c-format
+msgid ""
+"You cannot select this package as there is not enough space left to install "
+"it"
+msgstr ""
+
+#: steps_gtk.pm:477
+#, c-format
+msgid "The following packages are going to be installed"
+msgstr ""
+
+#: steps_gtk.pm:478
+#, c-format
+msgid "The following packages are going to be removed"
+msgstr ""
+
+#: steps_gtk.pm:504
+#, c-format
+msgid "This is a mandatory package, it cannot be unselected"
+msgstr ""
+
+#: steps_gtk.pm:506
+#, c-format
+msgid "You cannot unselect this package. It is already installed"
+msgstr ""
+
+#: steps_gtk.pm:508
+#, c-format
+msgid "You cannot unselect this package. It must be upgraded"
+msgstr ""
+
+#: steps_gtk.pm:512
+#, c-format
+msgid "Show automatically selected packages"
+msgstr ""
+
+#: steps_gtk.pm:516
+#, c-format
+msgid "Install"
+msgstr ""
+
+#: steps_gtk.pm:519
+#, c-format
+msgid "Load/Save selection"
+msgstr ""
+
+#: steps_gtk.pm:520 steps_gtk.pm:525
+#, c-format
+msgid "Updating package selection"
+msgstr ""
+
+#: steps_gtk.pm:524
+#, c-format
+msgid "Toggle between hierarchical and flat package list"
+msgstr ""
+
+#: steps_gtk.pm:530
+#, c-format
+msgid "Minimal install"
+msgstr ""
+
+#: steps_gtk.pm:543
+#, c-format
+msgid "Software Management"
+msgstr ""
+
+#: steps_gtk.pm:543 steps_interactive.pm:415
+#, c-format
+msgid "Choose the packages you want to install"
+msgstr ""
+
+#: steps_gtk.pm:560 steps_interactive.pm:646 steps_list.pm:32
+#, c-format
+msgid "Installing"
+msgstr ""
+
+#: steps_gtk.pm:590
+#, c-format
+msgid "No details"
+msgstr ""
+
+#: steps_gtk.pm:610
+#, c-format
+msgid "Time remaining:"
+msgstr ""
+
+#: steps_gtk.pm:611
+#, c-format
+msgid "(estimating...)"
+msgstr ""
+
+#: steps_gtk.pm:637
+#, c-format
+msgid "%d package"
+msgid_plural "%d packages"
+msgstr[0] ""
+msgstr[1] ""
+
+#: steps_gtk.pm:694 steps_interactive.pm:856 steps_list.pm:43
+#, c-format
+msgid "Summary"
+msgstr ""
+
+#: steps_gtk.pm:713
+#, c-format
+msgid "Configure"
+msgstr ""
+
+#: steps_gtk.pm:730 steps_interactive.pm:852 steps_interactive.pm:992
+#, c-format
+msgid "not configured"
+msgstr ""
+
+#: steps_gtk.pm:773 steps_interactive.pm:315
+#, c-format
+msgid ""
+"The following installation media have been found.\n"
+"If you want to skip some of them, you can unselect them now."
+msgstr ""
+
+#: steps_gtk.pm:789 steps_interactive.pm:321
+#, c-format
+msgid ""
+"You have the option to copy the contents of the CDs onto the hard disk drive "
+"before installation.\n"
+"It will then continue from the hard disk drive and the packages will remain "
+"available once the system is fully installed."
+msgstr ""
+
+#: steps_gtk.pm:791 steps_interactive.pm:323
+#, c-format
+msgid "Copy whole CDs"
+msgstr ""
+
+#: steps_interactive.pm:40
+#, c-format
+msgid "An error occurred"
+msgstr ""
+
+#: steps_interactive.pm:105
+#, c-format
+msgid "Please choose your keyboard layout"
+msgstr ""
+
+#: steps_interactive.pm:109
+#, c-format
+msgid "Here is the full list of available keyboards:"
+msgstr ""
+
+#: steps_interactive.pm:153
+#, c-format
+msgid "Install/Upgrade"
+msgstr ""
+
+#: steps_interactive.pm:157
+#, c-format
+msgid "Is this an install or an upgrade?"
+msgstr ""
+
+#: steps_interactive.pm:159
+#, c-format
+msgid ""
+"_: This is a noun:\n"
+"Install"
+msgstr ""
+
+#: steps_interactive.pm:161
+#, c-format
+msgid "Upgrade %s"
+msgstr ""
+
+#: steps_interactive.pm:184
+#, c-format
+msgid "Encryption key for %s"
+msgstr ""
+
+#: steps_interactive.pm:217
+#, c-format
+msgid "Cancel installation, reboot system"
+msgstr ""
+
+#: steps_interactive.pm:218
+#, c-format
+msgid "New Installation"
+msgstr ""
+
+#: steps_interactive.pm:219
+#, c-format
+msgid "Upgrade previous installation (not recommended)"
+msgstr ""
+
+#: steps_interactive.pm:223
+#, c-format
+msgid ""
+"Installer has detected that your installed Linux system could not\n"
+"safely be upgraded to %s.\n"
+"\n"
+"New installation replacing your previous one is recommended.\n"
+"\n"
+"Warning : you should backup all your personal data before choosing \"New\n"
+"Installation\"."
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:264
+#, c-format
+msgid "Configuring CD/DVD"
+msgstr ""
+
+#: steps_interactive.pm:354
+#, c-format
+msgid ""
+"Change your Cd-Rom!\n"
+"Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when "
+"done.\n"
+"If you do not have it, press Cancel to avoid installation from this Cd-Rom."
+msgstr ""
+
+#: steps_interactive.pm:372 steps_interactive.pm:490
+#, c-format
+msgid "Looking for available packages..."
+msgstr ""
+
+#: steps_interactive.pm:380
+#, c-format
+msgid ""
+"Your system does not have enough space left for installation or upgrade "
+"(%dMB > %dMB)"
+msgstr ""
+
+#: steps_interactive.pm:428
+#, c-format
+msgid ""
+"Please choose load or save package selection.\n"
+"The format is the same as auto_install generated files."
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Load"
+msgstr ""
+
+#: steps_interactive.pm:430
+#, c-format
+msgid "Save"
+msgstr ""
+
+#: steps_interactive.pm:438
+#, c-format
+msgid "Bad file"
+msgstr ""
+
+#: steps_interactive.pm:455
+#, c-format
+msgid "Plasma"
+msgstr ""
+
+#: steps_interactive.pm:456
+#, c-format
+msgid "GNOME"
+msgstr ""
+
+#: steps_interactive.pm:459
+#, c-format
+msgid "Desktop Selection"
+msgstr ""
+
+#: steps_interactive.pm:460
+#, c-format
+msgid "You can choose your workstation desktop profile."
+msgstr ""
+
+#: steps_interactive.pm:552
+#, c-format
+msgid "Selected size is larger than available space"
+msgstr ""
+
+#: steps_interactive.pm:576
+#, c-format
+msgid "Type of install"
+msgstr ""
+
+#: steps_interactive.pm:577
+#, c-format
+msgid ""
+"You have not selected any group of packages.\n"
+"Please choose the minimal installation you want:"
+msgstr ""
+
+#: steps_interactive.pm:582
+#, c-format
+msgid "With X"
+msgstr ""
+
+#: steps_interactive.pm:583
+#, c-format
+msgid "Install recommended packages"
+msgstr ""
+
+#: steps_interactive.pm:584
+#, c-format
+msgid "With basic documentation (recommended!)"
+msgstr ""
+
+#: steps_interactive.pm:585
+#, c-format
+msgid "Truly minimal install (especially no urpmi)"
+msgstr ""
+
+#: steps_interactive.pm:637
+#, c-format
+msgid "Preparing upgrade..."
+msgstr ""
+
+#: steps_interactive.pm:647
+#, c-format
+msgid "Preparing installation"
+msgstr ""
+
+#: steps_interactive.pm:655
+#, c-format
+msgid "Installing package %s"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "There was an error ordering packages:"
+msgstr ""
+
+#: steps_interactive.pm:679
+#, c-format
+msgid "Go on anyway?"
+msgstr ""
+
+#: steps_interactive.pm:683
+#, c-format
+msgid "Retry"
+msgstr ""
+
+#: steps_interactive.pm:684
+#, c-format
+msgid "Skip this package"
+msgstr ""
+
+#: steps_interactive.pm:685
+#, c-format
+msgid "Skip all packages from medium \"%s\""
+msgstr ""
+
+#: steps_interactive.pm:686
+#, c-format
+msgid "Go back to media and packages selection"
+msgstr ""
+
+#: steps_interactive.pm:689
+#, c-format
+msgid "There was an error installing package %s."
+msgstr ""
+
+#: steps_interactive.pm:708
+#, c-format
+msgid "Post-install configuration"
+msgstr ""
+
+#: steps_interactive.pm:715
+#, c-format
+msgid "Please ensure the Update Modules media is in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:743 steps_interactive.pm:791 steps_list.pm:47
+#, c-format
+msgid "Updates"
+msgstr ""
+
+#: steps_interactive.pm:744
+#, c-format
+msgid "You now have the opportunity to setup online media."
+msgstr ""
+
+#: steps_interactive.pm:745
+#, c-format
+msgid "This allows to install security updates."
+msgstr ""
+
+#: steps_interactive.pm:746
+#, c-format
+msgid ""
+"To setup those media, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to setup the update media?"
+msgstr ""
+
+#: steps_interactive.pm:767
+#, c-format
+msgid "That downloader could not be installed"
+msgstr ""
+
+#: steps_interactive.pm:767 steps_interactive.pm:784
+#, c-format
+msgid "Retry?"
+msgstr ""
+
+#: steps_interactive.pm:784
+#, c-format
+msgid "Failure when adding medium"
+msgstr ""
+
+#: steps_interactive.pm:792
+#, c-format
+msgid ""
+"You now have the opportunity to download updated packages. These packages\n"
+"have been updated after the distribution was released. They may\n"
+"contain security or bug fixes.\n"
+"\n"
+"To download these packages, you will need to have a working Internet \n"
+"connection.\n"
+"\n"
+"Do you want to install the updates?"
+msgstr ""
+
+#. -PO: example: grub2-graphic on /dev/sda1
+#: steps_interactive.pm:901
+#, c-format
+msgid "%s on %s"
+msgstr ""
+
+#: steps_interactive.pm:937 steps_interactive.pm:944 steps_interactive.pm:957
+#: steps_interactive.pm:971
+#, c-format
+msgid "Hardware"
+msgstr ""
+
+#: steps_interactive.pm:958
+#, c-format
+msgid "Sound card"
+msgstr ""
+
+#: steps_interactive.pm:972
+#, c-format
+msgid "Graphical interface"
+msgstr ""
+
+#: steps_interactive.pm:978 steps_interactive.pm:990
+#, c-format
+msgid "Network & Internet"
+msgstr ""
+
+#: steps_interactive.pm:991
+#, c-format
+msgid "Proxies"
+msgstr ""
+
+#: steps_interactive.pm:992
+#, c-format
+msgid "configured"
+msgstr ""
+
+#: steps_interactive.pm:1002
+#, c-format
+msgid "Security Level"
+msgstr ""
+
+#: steps_interactive.pm:1022
+#, c-format
+msgid "Firewall"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "activated"
+msgstr ""
+
+#: steps_interactive.pm:1026
+#, c-format
+msgid "disabled"
+msgstr ""
+
+#: steps_interactive.pm:1041
+#, c-format
+msgid "You have not configured X. Are you sure you really want this?"
+msgstr ""
+
+#. -PO: This is NOT the boot loader (just the kernel initrds)!!!!
+#: steps_interactive.pm:1072
+#, c-format
+msgid "Preparing initial startup program..."
+msgstr ""
+
+#: steps_interactive.pm:1073
+#, c-format
+msgid "Be patient, this may take a while..."
+msgstr ""
+
+#: steps_interactive.pm:1089
+#, c-format
+msgid ""
+"In this security level, access to the files in the Windows partition is "
+"restricted to the administrator."
+msgstr ""
+
+#: steps_interactive.pm:1121
+#, c-format
+msgid "Insert a blank floppy in drive %s"
+msgstr ""
+
+#: steps_interactive.pm:1123
+#, c-format
+msgid "Creating auto install floppy..."
+msgstr ""
+
+#: steps_interactive.pm:1134
+#, c-format
+msgid ""
+"Some steps are not completed.\n"
+"\n"
+"Do you really want to quit now?"
+msgstr ""
+
+#: steps_interactive.pm:1144
+#, c-format
+msgid "Congratulations"
+msgstr ""
+
+#: steps_interactive.pm:1147
+#, c-format
+msgid "Reboot"
+msgstr "Vula kabusha"
+
+#. -PO: please keep the following messages very short: they must fit in the left list of the installer!!!
+#: steps_list.pm:16
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Language"
+msgstr ""
+
+#: steps_list.pm:16 steps_list.pm:23
+#, c-format
+msgid "Localization"
+msgstr ""
+
+#: steps_list.pm:17
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"License"
+msgstr ""
+
+#: steps_list.pm:18
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Mouse"
+msgstr ""
+
+#: steps_list.pm:19 steps_list.pm:20
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Hard drive detection"
+msgstr ""
+
+#: steps_list.pm:21 steps_list.pm:22
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installation class"
+msgstr ""
+
+#: steps_list.pm:23
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Keyboard"
+msgstr ""
+
+#: steps_list.pm:24
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Security"
+msgstr ""
+
+#: steps_list.pm:25
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Partitioning"
+msgstr ""
+
+#: steps_list.pm:27 steps_list.pm:28
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Formatting"
+msgstr ""
+
+#: steps_list.pm:29
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Choosing packages"
+msgstr ""
+
+#: steps_list.pm:31
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Installing"
+msgstr ""
+
+#: steps_list.pm:34
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Users"
+msgstr ""
+
+#: steps_list.pm:38 steps_list.pm:39
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Bootloader"
+msgstr ""
+
+#: steps_list.pm:40 steps_list.pm:41
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Configure X"
+msgstr ""
+
+#: steps_list.pm:42
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Summary"
+msgstr ""
+
+#: steps_list.pm:44 steps_list.pm:45
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Services"
+msgstr ""
+
+#: steps_list.pm:46
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Updates"
+msgstr ""
+
+#: steps_list.pm:48
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Exit"
+msgstr ""
diff --git a/perl-install/install/share/runinstall2.sh b/perl-install/install/share/runinstall2.sh
new file mode 100644
index 000000000..42c420f13
--- /dev/null
+++ b/perl-install/install/share/runinstall2.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+# enable loadkeys to work before manually starting drakx in debug env:
+export SHARE_PATH=/usr/share
+echo "Starting Udev\n"
+perl -I/usr/lib/libDrakX -Minstall::install2 -e "install::install2::start_udev()"
+echo "You can start the installer by running install2"
+echo "You can run it in GDB by running gdb-inst"
+export GUILE_AUTO_COMPILE=0
+/usr/bin/busybox sh
+exec install2 $@
diff --git a/perl-install/install/share/symlinks b/perl-install/install/share/symlinks
index d953175d8..d2957e63a 100644
--- a/perl-install/install/share/symlinks
+++ b/perl-install/install/share/symlinks
@@ -1,13 +1,9 @@
-/sbin
-/bin
+/etc/crypto-policies
/etc/mke2fs.conf
/etc/protocols
/etc/services
/etc/group
+/etc/machine-id
/etc/passwd
-/etc/termcap
+/etc/pki
/etc/urpmi
-/lib
-/lib64
-/usr
-/tmp /var/run
diff --git a/perl-install/install/share/upgrade/.gitignore b/perl-install/install/share/upgrade/.gitignore
new file mode 100644
index 000000000..8b1378917
--- /dev/null
+++ b/perl-install/install/share/upgrade/.gitignore
@@ -0,0 +1 @@
+
diff --git a/perl-install/install/share/upgrade/conectiva.10/map b/perl-install/install/share/upgrade/conectiva.10/map
deleted file mode 100644
index aa6ff15da..000000000
--- a/perl-install/install/share/upgrade/conectiva.10/map
+++ /dev/null
@@ -1,3355 +0,0 @@
-3270-common x3270
-3270-doc
-KRegExpEditor-doc-es kde-i18n-es
-WSoundPrefs
-aalib libaa1 aalib-progs
-aalib-devel libaa1-devel
-abiword abiword
-abiword-clipart
-abiword-plugins-impexp
-abiword-plugins-tools
-acid acid
-acl acl
-acpid acpid
-adns adns
-adodb ADOdb adodb
-aide aide
-aktion-doc-es kde-i18n-es
-alsa-driver sound-scripts
-alsa-driver-devel glibc-devel
-alsa-lib-devel libalsa2-devel
-alsa-lib-devel-static libalsa2-static-devel
-alsa-oss-devel libalsa-oss0-devel
-alsa-oss-devel-static libalsa-oss0-devel
-alsa-server
-alsa-tools cspctl sbiload ac3dec sscape_ctl as10k1 vxloader sb16_csp emu10k1-tools envy24control
-alsa-utils alsa-utils
-alsaconf sndconfig alsa-utils
-alternatives update-alternatives
-amanda amanda-server libamanda0
-amanda-client amanda-client
-amanda-devel libamanda0-devel
-amanda-doc
-amanda-server amanda-client amanda-server
-amarok amarok
-amarok-doc amarok
-amarok-i18n-es amarok
-amarok-i18n-pt_BR amarok
-amavisd-new amavisd-new
-amor kdetoys
-amor-doc kdetoys
-amor-doc-es kde-i18n-es
-anacron anacron
-anjuta anjuta2 anjuta
-anjuta-i18n-es anjuta2 anjuta
-anjuta-i18n-pt_BR anjuta2 anjuta
-anjuta-rpmbuilder
-anjuta-rpmbuilder-i18n-es
-anjuta-rpmbuilder-i18n-pt_BR
-anonftp anonftp
-apache apache-base apache-conf
-apache-devel libapr-util0-devel libapr0-devel apache-devel
-apache-doc
-apache-htpasswd
-apmd apmd
-apmd-devel libapm1-devel
-apt urpmi
-apt-cdrom-registry
-apt-data-cnc
-apt-i18n-es_ES apt
-apt-i18n-pt_BR apt
-apt-static
-ark kdeutils-ark libkdeutils1-ark
-ark-doc kdeutils-ark
-ark-doc-es kde-i18n-es
-arping iputils
-arpwatch arpwatch
-arts arts
-arts-common-libs libarts1
-arts-devel libarts1 libarts1-devel
-artsbuilder kdemultimedia-common libkdemultimedia1-common
-artsbuilder-doc kdemultimedia-common
-artsbuilder-doc-es kde-i18n-es
-artsbuilder-doc-pt_BR kde-i18n-pt_BR
-artscontrol kdemultimedia-common
-ash ash
-aspell aspell
-aspell-dicts
-aspell-dicts-en_ca
-aspell-dicts-en_gb
-aspell-dicts-en_us
-aspell-dicts-es
-aspell-dicts-pt_br
-aspell-dicts-pt_pt
-at at
-at-i18n-pt_BR
-at-spi libat-spi0 at-spi
-at-spi-devel libat-spi0-devel
-atk libatk1.0_0
-atk-devel libatk1.0_0-devel
-atk-doc
-atk-i18n-es libatk1.0_0
-atk-i18n-pt_BR libatk1.0_0
-atlantik libkdegames1 kdegames
-atlantik-addons kdeaddons-atlantik
-atlantik-doc kdegames
-atlantik-doc-es kde-i18n-es
-attr attr
-audacity audacity
-audacity-i18n-es audacity
-audiofile libaudiofile0 audiofile
-audiofile-devel libaudiofile0-devel
-audiofile-doc
-audiofile-progs audiofile
-aumix aumix
-aumix-X11
-aumix-common aumix
-aumix-common-i18n-es aumix
-aumix-common-i18n-pt_BR aumix
-aumix-console
-aumix-minimal aumix
-authconfig
-authconfig-gtk
-authconfig-i18n-es
-authconfig-i18n-pt_BR
-autoconf autoconf2.5
-autofs autofs
-autofs-ldap autofs
-automake automake1.7
-automake-doc
-avifile-bin avifile-samples avifile-player kdetv
-avifile-devel libavifile0.7-devel
-awesfx awesfx
-barnyard
-basesystem basesystem msec
-bash setup bash
-bash-doc bash-doc
-bash_completion
-bc bc
-bin86 dev86
-bind bind
-bind-devel bind-devel
-bind-doc
-bind-libs
-bind-utils bind-utils
-binutils binutils
-binutils-i18n-es
-binutils-i18n-pt_BR
-bison bison
-bison-i18n-es bison
-bison-i18n-pt_BR bison
-bitchx BitchX
-bitchx-doc
-bitchx-help BitchX
-bittorrent bittorrent
-bittorrent-common BitTornado bittorrent
-bittorrent-gui-client bittorrent-gui BitTornado
-bittorrent-server BitTornado bittorrent
-bittorrent-text-client BitTornado bittorrent
-blender blender
-blender-examples
-blender-manual
-blt blt libblt2
-blt-demo
-blt-doc
-bluefish bluefish
-bluefish-i18n-es bluefish
-bluefish-i18n-pt_BR bluefish
-bluez-libs-devel libbluez1-devel
-bm bm
-bogofilter bogofilter
-bogofilter-doc
-bonnie++ bonnie++
-bonobo libbonobo2 bonobo libefs1
-bonobo-devel bonobo libefs1-devel libbonobo2-devel
-bonobo-i18n-es bonobo
-bonobo-i18n-pt_BR bonobo
-bootp
-bootsplash bootsplash
-bug-buddy bug-buddy
-bug-buddy-i18n-es bug-buddy
-bug-buddy-i18n-pt_BR bug-buddy
-busybox busybox
-byacc byacc
-bzip2 bzip2
-bzip2-doc
-c2050 printer-filters
-c2070 printer-filters
-c3270 c3270
-cacti cacti
-cbq shapecfg
-ccache ccache
-cdbakeoven cdbakeoven
-cdbakeoven-i18n-es
-cdbakeoven-i18n-pt_BR
-cdda2wav cdrecord-cdda2wav
-cdp cdp
-cdparanoia cdparanoia
-cdrdao cdrdao
-cdrecord cdrecord
-cdrtools cdrecord mkisofs cdrecord-isotools
-cdrtools-devel star-devel cdrecord-devel
-cervisia libkdesdk1-cervisia kdesdk-cervisia kdesdk
-cervisia-doc-pt_BR kde-i18n-pt_BR
-cflow
-chkconfig chkconfig
-chkconfig-i18n-es chkconfig
-chkconfig-i18n-es_ES
-chkconfig-i18n-pt_BR chkconfig
-chkfontpath chkfontpath
-chkrootkit chkrootkit
-cjet printer-filters
-clamav clamd clamav
-clamav-database clamav-db
-cnc-adslconf
-cnc-personal-firewall
-compat-libecpg1
-conectivaoffice-i18n-pt_BR OpenOffice.org-l10n-pt_BR OpenOffice.org-help-pt_BR
-conectivaoffice-i18n-es_ES OpenOffice.org-l10n-es OpenOffice.org-help-es
-conectivaoffice-i18n-en_US OpenOffice.org-l10n-en OpenOffice.org-help-en
-conectivaoffice OpenOffice.org
-conectiva-gnome-icon
-conectiva-gnome-theme
-conectiva-icons
-conectiva-kdeprefs kdebase-progs kdemultimedia-kscd kdelibs-common kdeutils-klaptop kdebase-kdm-config-file kdebase-common qt3-common kdebase-konsole
-conectiva-release
-conectiva-wallpapers
-console-tools libconsole0 util-linux console-tools
-console-tools-devel console-tools libconsole0-devel
-console-tools-doc
-console-tools-fonts console-tools
-console-tools-fonts-arabic console-tools
-console-tools-fonts-cyrilic console-tools
-console-tools-fonts-greek console-tools
-console-tools-fonts-hebrew console-tools
-console-tools-keymaps console-tools
-console-tools-keymaps-amiga
-console-tools-keymaps-atari
-console-tools-keymaps-mac
-console-tools-keymaps-sun
-console-tools-unicode console-tools
-control-center2 libgnome-window-settings1 gnome-control-center
-control-center2-devel gnome-control-center libgnome-window-settings1-devel
-control-center2-i18n-es gnome-control-center
-control-center2-i18n-pt_BR gnome-control-center
-coreutils coreutils
-coreutils-doc coreutils-doc
-coreutils-i18n-es coreutils
-coreutils-i18n-pt_BR coreutils
-countryselect
-countryselect-i18n-pt_BR
-cpio cpio
-cpio-i18n-pt_BR
-cracklib libcrack2
-cracklib-devel libcrack2-devel
-cracklib-dicts cracklib-dicts
-cracklib-doc
-cracklib-utils cracklib-dicts
-crontabs setup crontabs
-cryptplug cryptplug
-cscope cscope
-ctags ctags
-cups cups-common cups printer-utils
-cups-alignmargins printer-utils
-cups-devel libcups2-devel
-cups-doc
-cups-foomatic
-cups-libs libcups2
-cups-netatalk cups
-cups-netware cups
-cups-ppd cups
-cups-serial cups-serial
-curl curl
-cvs cvs
-cvs-chroot
-cvs-doc
-cvsweb cvsweb
-cyclom2x-tools
-cyrus-imapd cyrus-imapd-utils cyrus-imapd
-cyrus-imapd-devel cyrus-imapd-devel
-cyrus-imapd-devel-static cyrus-imapd-devel
-cyrus-imapd-doc
-db4
-db4-devel
-db4-utils db42-utils
-db4.2 libdb4.2
-db4.2-devel libdb4.2-devel
-db4.2-devel-static
-db4.2-doc
-db4.2-utils
-ddclient ddclient
-ddd ddd
-ddd-doc
-ddd-manual-html
-ddd-manual-pdf
-desktop-file-utils desktop-file-utils
-dev
-dev-base
-device-mapper dmsetup
-dhcp dhcp-client dhcp-relay dhcp-server
-dhcp-doc
-dhcpcd dhcp-client
-dia dia
-dia-i18n-es dia
-dia-i18n-pt_BR dia
-dialog cdialog
-dialog-i18n-es
-dialog-i18n-pt_BR
-dietlibc-devel dietlibc-devel
-diffutils diffutils
-diffutils-i18n-es diffutils
-digikam-plugins digikam kipi-plugins
-digikam-plugins-i18n-es
-diskcheck
-disktype
-dmidecode dmidecode
-doc-licenses
-docbook-dtd30-sgml docbook-dtd30-sgml
-docbook-dtd31-sgml docbook-dtd31-sgml
-docbook-dtd41-sgml docbook-dtd41-sgml
-docbook-dtd412-xml docbook-dtd412-xml
-docbook-style-dsssl docbook-style-dsssl
-docbook-style-dsssl-doc docbook-style-dsssl-doc
-docbook-style-xsl docbook-style-xsl
-docbook-style-xsl-doc docbook-style-xsl-doc
-docbook-utils docbook-utils
-docbook-utils-pdf docbook-utils-pdf
-dos2unix dos2unix
-dosemu dosemu dosemu-freedos
-dosemu-dexe
-dosemu-tools dosemu
-dosfstools dosfstools
-doxygen doxygen
-doxygen-manual
-doxygen-wizard doxygen
-drbd-utils
-drbd-utils-heartbeat
-drbd-utils-i18n-pt_BR
-drv_z42 printer-filters
-drv_z42-tool printer-utils
-dsniff dsniff
-dsniff-webspy dsniff-webspy
-dump dump
-duplicity
-dvd+rw-tools dvd+rw-tools
-dvdauthor dvdauthor
-dvdrecord
-dvdrtools
-e2fsprogs libext2fs2 e2fsprogs
-e2fsprogs-devel libext2fs2-devel
-e2fsprogs-i18n-es e2fsprogs
-eclipse
-eclipse-gnome-plugin
-eclipse-mozilla-plugin
-ed ed
-ee ee
-ee-i18n-es ee
-ee-i18n-pt_BR ee
-efax efax
-eject eject
-electricfence libefence0 ElectricFence
-elfutils elfutils
-elfutils-devel libelfutils1-devel
-elfutils-libelf libelfutils1
-elvis-tiny
-em8300 em8300
-em8300-gui-utils em8300
-emacs python emacs-el gettext emacs emacs-php-mode
-emacs-el python rpm-mandriva-setup gettext emacs-el emacs-php-mode
-emacs-leim emacs-leim
-enchant enchant
-enscript enscript
-eog eog
-eog-i18n-es eog
-eog-i18n-pt_BR eog
-epiphany epiphany
-epiphany-devel epiphany-devel
-epiphany-extensions epiphany-extensions
-epiphany-extensions-i18n-es
-epiphany-extensions-i18n-pt_BR
-epiphany-i18n-es epiphany
-epiphany-i18n-pt_BR epiphany
-epsutil
-escputil gutenprint-escputil
-esound libesound0 esound
-esound-devel libesound0-devel
-etcskel bash etcskel
-etherape etherape
-etherape-i18n-es etherape
-etherboot etherboot
-etherboot-doc
-ethereal ethereal
-ethereal-common libethereal0 ethereal
-ethereal-gtk ethereal
-ethereal-utils ethereal-tools
-ethtool ethtool
-ettercap ettercap-ng
-evolution evolution
-evolution-devel evolution-devel
-evolution-i18n-es
-evolution-i18n-pt_BR
-expat libexpat0 expat
-expat-devel libexpat0-devel
-expat-devel-static libexpat0-devel
-expat-doc
-expat-examples
-expect expect
-expect-devel expect
-ext2ed ext2ed
-eyesapplet kdetoys
-fake fake
-fam
-faq
-fbset fbset
-fetchmail fetchmail
-fetchmail-doc
-fetchmail-i18n-es fetchmail
-fetchmail-i18n-pt_BR fetchmail
-fetchmailconf fetchmailconf
-ffmpeg ffmpeg
-ffmpeg-doc
-fftw libfftw2
-fftw-devel libfftw2-devel
-fifteenapplet kdetoys
-file libmagic1 file
-file-roller file-roller
-file-roller-i18n-es file-roller
-file-roller-i18n-pt_BR file-roller
-filesystem filesystem
-fileutils
-findutils findutils
-findutils-i18n-es findutils
-findutils-i18n-pt_BR findutils
-finger finger
-finger-server finger-server
-firstboot
-flashkard
-flashkard-doc
-flashkard-doc-es kde-i18n-es
-flex flex
-flex-i18n-es
-flex-i18n-pt_BR
-fontconfig fontconfig
-fontconfig-doc
-fonts-100dpi xorg-x11-100dpi-fonts
-fonts-100dpi-extra xorg-x11-100dpi-fonts
-fonts-75dpi xorg-x11-75dpi-fonts
-fonts-75dpi-extra xorg-x11-75dpi-fonts
-fonts-cyrillic xorg-x11-cyrillic-fonts
-fonts-misc xorg-x11-xfs xorg-x11
-fonts-speedo xorg-x11
-fonts-ttf-esstix
-fonts-ttf-luxi xorg-x11
-fonts-ttf-vera xorg-x11
-fonts-type1 xorg-x11
-foo2zjs foomatic-db printer-filters
-foo2zjs-ppds
-foomatic-db foomatic-db
-foomatic-db-engine foomatic-db-engine
-foomatic-db-hpijs foomatic-db-hpijs
-foomatic-filters foomatic-filters
-foomatic-gui
-fortune-mod fortune-mod
-fortune-pt_BR
-fping fping
-freetds libfreetds0
-freetds-devel libfreetds0-devel
-freetds-doc
-freetds-unixodbc libfreetds0-unixodbc
-freetype freetype
-freetype-devel freetype-devel
-freetype-doc
-freetype-i18n-es freetype
-freetype-utils freetype2-tools
-freetype2 libfreetype6
-freetype2-devel libfreetype6-devel
-freetype2-doc
-frozen-bubble frozen-bubble
-ftp ftp-client-krb5
-ftp-i18n-pt_BR
-funcoeszz
-fwhois
-g++ gcc3.3-c++ gcc2.96-c++ gcc-c++
-g-wrap g-wrap libg-wrap1
-g-wrap-devel libg-wrap1-devel libg-wrap1 g-wrap
-g77 gcc-g77
-gail libgail17 gail
-gail-devel libgail17-devel
-gail-doc libgail17-devel
-gail-i18n-es gail
-gail-i18n-pt_BR gail
-gaim gaim-tcl gaim-perl gaim
-gaim-i18n-es gaim
-gaim-i18n-pt_BR gaim
-gal2-devel libgal2.0_6-devel
-gated
-gawk gawk
-gawk-doc gawk-doc
-gawk-i18n-es gawk
-gawk-i18n-pt_BR gawk
-gcalctool gcalctool
-gcalctool-i18n-es gcalctool
-gcalctool-i18n-pt_BR gcalctool
-gcc cross-ppc-gcc-cpp cross-ppc64-gcc-cpp gcc-cpp gcc2.96-cpp gcc gcc3.3-cpp
-gcj kaffe gcj-tools libgcj6-devel
-gconf libGConf1 GConf
-gconf-devel libGConf1-devel
-gconf-editor gconf-editor
-gconf-editor-i18n-es gconf-editor
-gconf-editor-i18n-pt_BR gconf-editor
-gconf2 libGConf2_4 GConf2
-gconf2-devel libGConf2_4-devel
-gconf2-doc libGConf2_4-devel
-gconf2-i18n-es GConf2
-gconf2-i18n-pt_BR GConf2
-gdam gdam-client gdam-server gdam-clients-gui libgdam-common0 libgdam-model0 libgdam-server0 gdam-common
-gdam-alsa-plugins gdam-alsa-plugin
-gdam-client libgdam-common0 libgdam-client0 gdam-clients-gui gdam-client gdam-common
-gdam-devel libgdam-client0 libgdam0-devel libgdam-model0 libgdam-server0 libgdam-common0
-gdam-xmms-plugins gdam-xmms-plugin
-gdb gdb
-gdk-pixbuf libgdk-pixbuf2 gdk-pixbuf-loaders libgdk-pixbuf-xlib2 libgdk-pixbuf-gnomecanvas1
-gdk-pixbuf-devel libgdk-pixbuf2-devel
-gdk-pixbuf-doc libgdk-pixbuf2-devel
-gdm gdm-Xnest gdm
-gdm-i18n-es
-gdm-i18n-pt_BR
-gedit gedit
-gedit-devel gedit-devel
-gedit-i18n-es
-gedit-i18n-pt_BR
-genhdlist rpmtools
-genromfs genromfs
-gettext gettext-base gettext
-gettext-devel gettext gettext-devel
-gettext-doc
-gettext-extras
-gettext-i18n-es gettext-base
-gettext-i18n-pt_BR gettext-base
-getty_ps
-gftp gftp
-gftp-i18n-es gftp
-gftp-i18n-pt_BR gftp
-ggv ggv
-ggv-i18n-es ggv
-ggv-i18n-pt_BR ggv
-ghostscript ghostscript
-ghostscript-doc
-ghostscript-fonts ghostscript-fonts
-ghostscript-module-X11
-ghostscript-resource
-gimp gimp libgimp2.0_0 gutenprint-gimp2 gimp-python
-gimp-devel libgimp2.0-devel
-gimp-doc
-gimp-help gimp-help-2
-gimp-i18n-es
-gimp-i18n-pt_BR
-gimp-print
-gimp-print-cups gutenprint-cups
-gimp-print-cups-cs
-gimp-print-cups-da
-gimp-print-cups-de
-gimp-print-cups-el
-gimp-print-cups-en
-gimp-print-cups-en_GB
-gimp-print-cups-es
-gimp-print-cups-fr
-gimp-print-cups-ja
-gimp-print-cups-nl
-gimp-print-cups-no
-gimp-print-cups-pl
-gimp-print-cups-pt
-gimp-print-cups-sk
-gimp-print-cups-sv
-gimp-print-doc
-gimp-print-foomatic
-gimp-python gimp2_0-python gimp-python
-gkrellm gkrellm-server gkrellm
-gkrellm-devel gkrellm-devel
-gkrellm-fan
-gkrellm-i18n-es gkrellm
-gkrellm-skins
-gkrellm-snmp
-gkrellm-volume
-gkrellm-weather wmWeather gkrellm-plugins
-gkrellm-xmms
-glade2 glade2
-glade2-i18n-es glade2
-glade2-i18n-pt_BR glade2
-glib libglib1.2
-glib-devel libglib1.2-devel
-glib-devel-static libglib1.2-devel
-glib-doc
-glib2 libglib2.0_0
-glib2-devel glib-gettextize libglib2.0_0-devel
-glib2-doc libglib2.0_0-devel
-glib2-i18n-es libglib2.0_0
-glib2-i18n-pt_BR libglib2.0_0
-glibc glibc
-glibc-base glibc glibc-i18ndata nscd
-glibc-charmaps-extras glibc-i18ndata
-glibc-devel glibc-devel
-glibc-devel-debug
-glibc-devel-static glibc-static-devel glibc-devel
-glibc-doc glibc-doc
-glibc-gconvdata glibc
-glibc-i18n-en_US glibc-i18ndata
-glibc-i18n-es
-glibc-i18n-es_ES glibc-i18ndata
-glibc-i18n-pt_BR glibc-i18ndata
-glibc-iconv glibc
-glibc-locales-extras
-gmp libgmp3 libgmpmp3
-gmp-devel libgmp3-devel libgmpmp3-devel
-gnokii gnokii-xgnokii gnokii
-gnokii-devel libgnokii2-devel
-gnokii-x11 gnokii-xgnokii
-gnome-applets gnome-applets
-gnome-applets-devel gnome-applets
-gnome-applets-i18n-es gnome-applets
-gnome-applets-i18n-pt_BR gnome-applets
-gnome-common gnome-common
-gnome-desktop libgnome-desktop-2_2 gnome-desktop
-gnome-desktop-devel libgnome-desktop-2_2-devel
-gnome-desktop-i18n-es gnome-desktop
-gnome-desktop-i18n-pt_BR gnome-desktop
-gnome-games gnome-games
-gnome-games-blackjack gnome-games
-gnome-games-common
-gnome-games-common-i18n-es gnome-games
-gnome-games-common-i18n-pt_BR gnome-games
-gnome-games-devel
-gnome-games-freecell gnome-games
-gnome-games-glines gnome-games-extra-data gnome-games
-gnome-games-gnect gnome-games
-gnome-games-gnibbles gnome-games
-gnome-games-gnobots2 gnome-games-extra-data gnome-games
-gnome-games-gnome-stones gnome-games
-gnome-games-gnometris gnome-games gnome-games-extra-data
-gnome-games-gnomine gnome-games
-gnome-games-gnotravex gnome-games
-gnome-games-gnotski gnome-games
-gnome-games-gtali gnome-games
-gnome-games-iagno gnome-games-extra-data gnome-games
-gnome-games-mahjongg gnome-games-extra-data gnome-games
-gnome-games-same-gnome gnome-games
-gnome-games-sol-games gnome-games
-gnome-games-xxgata gnome-games
-gnome-icon-theme gnome-icon-theme
-gnome-keyring gnome-keyring
-gnome-keyring-devel libgnome-keyring0-devel
-gnome-keyring-i18n-es gnome-keyring
-gnome-keyring-i18n-pt_BR gnome-keyring
-gnome-libs libgnome32 gnome-libs libgnomeui2
-gnome-libs-devel libgnome32-devel
-gnome-libs-i18n-es gnome-libs
-gnome-libs-i18n-pt_BR gnome-libs
-gnome-mag gnome-mag
-gnome-mag-devel libgnome-mag2-devel
-gnome-mag-i18n-es gnome-mag
-gnome-mag-i18n-pt_BR gnome-mag
-gnome-media libcddb-slave2_0 gnome-media
-gnome-media-devel gnome-media libcddb-slave2_0-devel
-gnome-media-i18n-es gnome-media
-gnome-media-i18n-pt_BR gnome-media
-gnome-mime-data gnome-mime-data
-gnome-mime-data-i18n-es gnome-mime-data
-gnome-mime-data-i18n-pt_BR gnome-mime-data
-gnome-netstatus gnome-netstatus
-gnome-netstatus-i18n-es gnome-netstatus
-gnome-netstatus-i18n-pt_BR gnome-netstatus
-gnome-panel libpanel-applet-2_0 gnome-utils gnome-panel
-gnome-panel-devel libpanel-applet-2_0-devel
-gnome-panel-doc libpanel-applet-2_0-devel
-gnome-panel-i18n-es gnome-panel
-gnome-panel-i18n-pt_BR gnome-panel
-gnome-pilot libgnome-pilot2 gnome-pilot
-gnome-pilot-devel libgnome-pilot2-devel
-gnome-pilot-i18n-es gnome-pilot
-gnome-pilot-i18n-pt_BR gnome-pilot
-gnome-print libgnomeprint15 gnome-print
-gnome-print-devel libgnomeprint15-devel
-gnome-print-i18n-es gnome-print
-gnome-print-i18n-pt_BR gnome-print
-gnome-python2 gnome-python-extras gnome-python
-gnome-python2-applet
-gnome-python2-bonobo
-gnome-python2-canvas
-gnome-python2-gconf
-gnome-python2-gnomeprint
-gnome-python2-gnomevfs
-gnome-python2-gtkhtml2
-gnome-python2-nautilus
-gnome-session gnome-session
-gnome-session-i18n-es gnome-session
-gnome-session-i18n-pt_BR gnome-session
-gnome-spell gnome-spell
-gnome-spell-i18n-es
-gnome-spell-i18n-pt_BR
-gnome-system-monitor gnome-system-monitor
-gnome-system-monitor-i18n-es gnome-system-monitor
-gnome-system-monitor-i18n-pt_BR gnome-system-monitor
-gnome-terminal gnome-terminal
-gnome-terminal-i18n-es gnome-terminal
-gnome-terminal-i18n-pt_BR gnome-terminal
-gnome-themes gtk-engines2 gtk-engines gnome-themes
-gnome-utils gnome-utils
-gnome-utils-i18n-es gnome-utils
-gnome-utils-i18n-pt_BR gnome-utils
-gnome-vfs2 drakconf gnome-vfs2 drakwizard
-gnome-vfs2-doc libgnome-vfs2_0-devel
-gnome-vfs2-i18n-es gnome-vfs2
-gnome-vfs2-i18n-pt_BR gnome-vfs2
-gnome2-industrial-theme ximian-artwork gtk-engines2
-gnome2-industrial-theme-gtk+ ximian-artwork
-gnome2-industrial-theme-gtk+2 gtk-engines2
-gnome2-user-docs gnome-user-docs
-gnomemeeting gnomemeeting
-gnucash libgnucash0 gnucash
-gnucash-devel libgnucash0-devel
-gnucash-doc gnucash
-gnucash-help gnucash
-gnucash-i18n-es gnucash
-gnucash-i18n-pt_BR gnucash
-gnuchess gnuchess
-gnumeric gnumeric
-gnumeric-i18n-es gnumeric
-gnumeric-i18n-pt_BR gnumeric
-gnupg gnupg
-gnupg-doc
-gnupg-i18n-es gnupg
-gnupg-i18n-pt_BR gnupg
-gnupg-keyserver-plugins
-gnuplot gnuplot
-gnuplot-demo
-gnuplot-doc
-gob2 gob2
-gok gok
-gok-i18n-es gok
-gok-i18n-pt_BR gok
-gpart gpart
-gpdf gpdf
-gpdf-i18n-es gpdf
-gpdf-i18n-pt_BR gpdf
-gphoto2 gphoto2
-gphoto2-i18n-es gphoto2
-gphoto2-i18n-pt_BR gphoto2
-gpm gpm
-gpm-devel libgpm1-devel
-gpm-emacs gpm
-gprolog gprolog
-gprolog-doc
-gprolog-examples
-gq gq
-gqview gqview
-gqview-i18n-es gqview
-gqview-i18n-pt_BR gqview
-graphviz libgraphviz7 graphviz libgraphviztcl7
-graphviz-devel libgraphviztcl7-devel libgraphviz7-devel
-graphviz-doc
-graphviz-examples libgraphviztcl7-devel
-grep grep
-grep-i18n-es grep
-grep-i18n-pt_BR grep
-grip grip
-grip-i18n-es grip
-grip-i18n-pt_BR grip
-groff groff-perl groff groff-for-man
-groff-doc
-groff-extras groff-perl
-groff-gxditview groff-gxditview
-grub grub
-gst-plugins gstreamer-jpeg gstreamer-esound gstreamer-visualisation gstreamer-sndfile gstreamer-audiofile gstreamer-mpeg gstreamer-festival gstreamer-gdkpixbuf gstreamer-plugins gstreamer-GConf gstreamer-quicktime gstreamer-avi gstreamer-x11 gstreamer-asf gstreamer-vorbis gstreamer-a52dec gstreamer-v4l2 libgstreamer-plugins0.8 gstreamer-qcam gstreamer-audio-formats gstreamer-gnomevfs gstreamer-musicbrainz gstreamer-ladspa libgstgconf0.8
-gst-plugins-aalib gstreamer-aalib
-gst-plugins-alsa gstreamer-alsa
-gst-plugins-arts gstreamer-arts gstreamer-artsd
-gst-plugins-cdparanoia gstreamer-cdparanoia
-gst-plugins-colorspace gstreamer-colorspace
-gst-plugins-devel libgstreamer-plugins0.8-devel
-gst-plugins-dv gstreamer-dv
-gst-plugins-dvdread gstreamer-libdvdread
-gst-plugins-dxr3 gstreamer-dxr3
-gst-plugins-fame
-gst-plugins-flac gstreamer-flac
-gst-plugins-gsm gstreamer-gsm
-gst-plugins-jack gstreamer-jack
-gst-plugins-lame
-gst-plugins-mad gstreamer-mad
-gst-plugins-mikmod gstreamer-mikmod
-gst-plugins-mjpegtools
-gst-plugins-raw1394 gstreamer-raw1394
-gst-plugins-sdl gstreamer-SDL
-gst-plugins-shout
-gst-plugins-vorbis gstreamer-vorbis
-gst-plugins-wincodec
-gstreamer libgstreamer0.8 gstreamer-tools
-gstreamer-devel libgstreamer0.8-devel
-gstreamer-tools gstreamer-tools
-gtk+ libgtk+1.2
-gtk+-devel libgtk+1.2-devel
-gtk+-i18n-es libgtk+1.2
-gtk+-i18n-pt_BR libgtk+1.2
-gtk+2 libgtk+-x11-2.0_0 gtk+2.0 libgtk+2.0_0 libgdk_pixbuf2.0_0
-gtk+2-devel libgdk_pixbuf2.0_0-devel libgtk+2.0_0-devel
-gtk+2-doc libgdk_pixbuf2.0_0-devel libgtk+2.0_0-devel
-gtk+2-i18n-es gtk+2.0
-gtk+2-i18n-pt_BR gtk+2.0
-gtk-doc gtk-doc
-gtk-engines gtk-engines
-gtk2-engines libgtk+2.0_0 gtk-engines gtk-engines2
-gtkam gtkam
-gtkam-i18n-es gtkam
-gtkam-i18n-pt_BR gtkam
-gtkhtml gtkhtml
-gtkhtml-devel libgtkhtml1.1_3-devel
-gtkhtml-i18n-es
-gtkhtml-i18n-pt_BR
-gtkhtml30-devel libgtkhtml-3.0_4-devel
-gtklp gtklp
-gtklp-i18n-en gtklp
-gtklp-i18n-es gtklp
-gtklp-i18n-pt_BR gtklp
-gtknw
-gtksamba
-gucharmap gucharmap
-gucharmap-devel libgucharmap4-devel
-gucharmap-i18n-es gucharmap
-gucharmap-i18n-pt_BR gucharmap
-guile-devel libguile12-devel
-guile16 guile
-guppi16 Guppi
-gv gv
-gv-doc
-gwenview libgwenview1 gwenview
-gwenview-i18n-es gwenview
-gwenview-i18n-pt_BR gwenview
-gzip gzip
-gzip-i18n-pt_BR
-hdparm hdparm
-heartbeat libheartbeat0 heartbeat libheartbeat-pils0
-heartbeat-ldirectord ldirectord heartbeat-ldirectord heartbeat
-heartbeat-pils libheartbeat-pils0-devel heartbeat-pils libheartbeat-pils0
-heartbeat-stonith libheartbeat-stonith0-devel heartbeat-stonith libheartbeat-stonith0
-hexedit hexedit
-hfsutils hfsutils
-hfsutils-devel cdrecord-devel hfsutils-devel
-hicolor-icon-theme hicolor-icon-theme
-horde horde
-hotkeys hotkeys
-hotplug initscripts hotplug
-howto
-howto-html
-hpijs hplip-hpijs
-hpijs-ppd hplip-hpijs-ppds
-hpoj hpoj
-hpoj-x11 xojpanel
-htdig htdig-web htdig
-htdig-doc
-hwdata pcmcia-cs
-hwinfo harddrake
-hwinfo-devel
-hylafax hylafax-server hylafax-client hylafax mgetty-sendfax
-icecast icecast
-ices ices
-icmpinfo
-ide-smart ide-smart
-ident2
-ijs-devel libijs1-devel
-ikons-icon-theme kdeartwork
-imagemagick ImageMagick
-imagemagick-doc ImageMagick-doc
-imap imap
-imlib2 libimlib2_1
-imlib2-devel libimlib2_1-devel
-imlib2-filters
-imlib2-loader_argb
-imlib2-loader_bmp
-imlib2-loader_gif
-imlib2-loader_jpeg
-imlib2-loader_png
-imlib2-loader_pnm
-imlib2-loader_tga
-imlib2-loader_tiff
-imlib2-loader_xpm
-imp
-imp-i18n-en_US
-imp-i18n-es_ES
-imp-i18n-pt_BR
-indent indent
-indent-i18n-pt_BR indent
-indexhtml indexhtml
-inetd
-info info-install info
-initscripts initscripts
-initscripts-i18n-es initscripts
-initscripts-i18n-pt_BR initscripts
-inn inews noffle inn
-inn-devel inn-devel
-intltool intltool
-iproute2 iproute2
-iproute2-doc iproute2-doc
-ipsec-tools ipsec-tools
-iptables iptables
-iptraf iptraf
-iptraf-doc
-iputils iputils
-ipvsadm ipvsadm
-ipxripd
-ipxutils ipxutils
-ipxutils-i18n-pt_BR
-irda-utils irda-utils
-isapnptools isapnptools
-isapnptools-doc
-isdn4k-utils isdn-light isdn4k-utils-isdnlog isdn4k-utils ibod libisdn4k-utils2 isdn4k-utils-vbox
-isdn4net isdn-light isdn4net
-itcl itcl
-itcl-devel
-itcl-iwidgets-demos
-itcl-iwidgets2.2.0-demos itcl
-jack jackit-example-clients libjack0 jack jackit
-jack-client-samples jackit-example-clients
-jack-devel libjack0-devel
-jack-doc
-jadetex jadetex
-jadetex-doc
-jawmail
-jawmail-i18n-en_US
-jawmail-i18n-es_ES
-jfsutils jfsprogs
-joystick joystick
-jpackage-utils jpackage-utils
-jpgraph jpgraph JpGraph
-jpgraph-doc JpGraph-doc jpgraph-doc
-juk kdemultimedia-juk
-juk-doc kdemultimedia-juk
-jwhois whois
-jwhois-i18n-es
-jwhois-i18n-pt_BR
-k3b k3b
-k3b-doc
-k3b-i18n-es k3b
-k3b-i18n-pt_BR k3b
-kaboodle kdemultimedia-kaboodle
-kaboodle-doc kdemultimedia-kaboodle
-kaboodle-doc-es kde-i18n-es
-kaddressbook kdepim-common libkdepim2-kaddressbook kdepim-kaddressbook kdepim-kontact
-kaddressbook-addons kdeaddons
-kaddressbook-doc kdepim-kaddressbook
-kaddressbook-doc-es kde-i18n-es
-kaffeine kmplayer kaffeine
-kaffeine-doc kaffeine
-kaffeine-i18n-es kaffeine
-kaffeine-i18n-pt_BR kaffeine
-kalarm kdepim-common kdepim-korganizer
-kalarm-doc kdepim-korganizer
-kalarm-doc-es kde-i18n-es
-kallers
-kallers-i18n-es
-kallers-i18n-pt_BR
-kalzium kdeedu
-kalzium-doc kdeedu
-kalzium-doc-es kde-i18n-es
-kamera kdegraphics-common
-kamera-doc kdegraphics-common
-kamera-doc-es kde-i18n-es
-kandy kdepim-common kdepim-kpilot
-kandy-doc kdepim-kpilot
-kandy-doc-es kde-i18n-es
-kappfinder kdebase-progs kdebase-common
-kapptemplate kdesdk
-karbon libkoffice2-karbon koffice-karbon koffice-progs
-karbon-i18n-es koffice-i18n-es
-karbon-i18n-pt_BR koffice-l10n-pt_BR
-karm kdepim-common kdepim-karm
-karm-doc kdepim-karm
-karm-doc-es kde-i18n-es
-kasteroids kdegames
-kasteroids-doc kdegames
-kasteroids-doc-es kde-i18n-es
-kasteroids-doc-pt_BR kde-i18n-pt_BR
-kate libkdebase4 kdebase-progs libkdebase4-kate kdebase-kate kdebase-common
-kate-addons kdeaddons libkdeaddons1
-kate-doc-es kde-i18n-es
-kate-doc-pt_BR kde-i18n-pt_BR
-kate-plugins-doc-es kde-i18n-es
-kate-plugins-doc-pt_BR kde-i18n-pt_BR
-katomic kdegames
-katomic-doc kdegames
-katomic-doc-es kde-i18n-es
-katomic-doc-pt_BR kde-i18n-pt_BR
-kaudiocreator kdemultimedia-kaudiocreator
-kbabel libkdesdk1-kbabel kdesdk-kbabel kdesdk
-kbabel-doc-es kde-i18n-es
-kbabel-doc-pt_BR kde-i18n-pt_BR
-kbackgammon kdegames
-kbackgammon-doc kdegames
-kbackgammon-doc-es kde-i18n-es
-kbattleship kdegames
-kbattleship-doc-es kde-i18n-es
-kbattleship-doc-pt_BR kde-i18n-pt_BR
-kbdconfig
-kbdconfig-i18n-es
-kbdconfig-i18n-pt_BR
-kblackbox kdegames
-kblackbox-doc kdegames
-kblackbox-doc-es kde-i18n-es
-kbounce kdegames
-kbounce-doc kdegames
-kbounce-doc-es kde-i18n-es
-kbounce-doc-pt_BR kde-i18n-pt_BR
-kbruch kdeedu
-kbruch-doc kdeedu
-kbugbuster kdesdk
-kbugbuster-doc-es kde-i18n-es
-kbugbuster-doc-pt_BR kde-i18n-pt_BR
-kcachegrind kdesdk-kcachegrind
-kcachegrind-doc kdesdk-kcachegrind
-kcachegrind-doc-pt_BR kde-i18n-pt_BR
-kcalc libkdeutils1-kcalc kdeutils-kcalc
-kcalc-doc kdeutils-kcalc
-kcalc-doc-es kde-i18n-es
-kcharselect kdeutils-common libkdeutils1-common kdeutils-kcharselect
-kcharselect-doc kdeutils-kcharselect
-kcharselect-doc-es kde-i18n-es
-kchart koffice-progs libkoffice2-kspread koffice-kspread
-kchart-doc koffice-kspread
-kchart-docs-es koffice-i18n-es
-kchart-i18n-es koffice-i18n-es
-kchart-i18n-pt_BR koffice-l10n-pt_BR
-kchat
-kchat-i18n-es
-kchat-i18n-pt_BR
-kclcontrol
-kclcontrol-devel
-kclcontrol-i18n-pt_BR
-kclcontrol-plugin-kdeservices
-kclcontrol-plugin-webmin
-kcmlinuz kdeadmin-linuz
-kcoloredit kdegraphics-kpaint
-kcoloredit-doc kdegraphics-kpaint
-kcoloredit-doc-es kde-i18n-es
-kconfigeditor kconfigeditor
-kcontrol libkdecore4 lisa libkdebase4 kdelibs-common kdebase-kcontrol-nsplugins kdebase-kcontrol-data kdebase-common kdebase-progs kdebase-konsole
-kcontrol-doc kdebase-konsole kdebase-kcontrol-data kdebase-common
-kcontrol-doc-es kde-i18n-es
-kcontrol-doc-pt_BR kde-i18n-pt_BR
-kcpuload kcpuload
-kcpuload-doc kcpuload
-kcpuload-i18n-es
-kcpuload-i18n-pt_BR
-kcron kdeadmin
-kcron-doc kdeadmin
-kcron-doc-es kde-i18n-es
-kdat kdeadmin
-kdat-doc kdeadmin
-kdat-doc-es kde-i18n-es
-kdbg kdbg
-kdbg-doc kdbg
-kde-base-icons kdepim-common kdebase-common kdelibs-common hicolor-icon-theme
-kde-carddecks kdegames
-kde-common kdebase-kdeprintfax kdegraphics-common libkdebase4 kdebase-kdm kdebase-common kdebase-progs kdepim-common
-kde-common-doc kdebase-common
-kde-i18n-common-i18n-es kde-i18n-es
-kde-i18n-common-i18n-pt_BR kde-i18n-pt_BR
-kde-i18n-doc-common-es kde-i18n-es
-kde-i18n-doc-common-pt_BR kde-i18n-pt_BR
-kde-i18n-es kde-i18n-es
-kde-i18n-pt_BR kde-i18n-pt_BR
-kde-lilo-config kdeadmin-lilo
-kdeaccessibility kdeaccessibility
-kdeaccessibility-doc
-kdeaccessibility-i18n-es kde-i18n-es
-kdeaccessibility-i18n-pt_BR kde-i18n-pt_BR
-kdeaddons libkdeaddons1 kdeaddons
-kdeaddons-i18n-es kde-i18n-es
-kdeaddons-i18n-pt_BR kde-i18n-pt_BR
-kdeadmin kdeadmin
-kdeadmin-doc
-kdeadmin-i18n-es kde-i18n-es
-kdeadmin-i18n-pt_BR kde-i18n-pt_BR
-kdeartwork kdeartwork
-kdeartwork-i18n-es kde-i18n-es
-kdeartwork-i18n-pt_BR kde-i18n-pt_BR
-kdeartwork-sounds kdeartwork
-kdeartwork-wallpapers kdeartwork
-kdeautorun kdebase-common
-kdebase kdebase
-kdebase-common kdelibs-common kdebase-common lisa
-kdebase-core libkdebase4 kdebase-progs kdebase-common
-kdebase-devel libkdebase4-kate-devel libkdebase4 libkdebase4-kate
-kdebase-doc
-kdebase-i18n-es kde-i18n-es
-kdebase-i18n-pt_BR kde-i18n-pt_BR
-kdebase-nsplugins kdebase-kcontrol-nsplugins kdebase-nsplugins kdebase-common
-kdebase-sounds kdebase-common
-kdebase-themes kdebase-common
-kdebase-wallpapers kdebase-common
-kdebluetooth libkdebluetooth0 kdebluetooth
-kdebluetooth-devel libkdebluetooth0-devel
-kdebluetooth-doc
-kdebugdialog-doc-es kde-i18n-es
-kdebugdialog-doc-pt_BR kde-i18n-pt_BR
-kdeclassic-icon-theme kdeartwork-kde-classic
-kdeedu kdebase-common kdeedu
-kdeedu-devel libkdeedu1-devel libkdeedu1
-kdeedu-doc
-kdeedu-i18n-es kde-i18n-es
-kdeedu-i18n-pt_BR kde-i18n-pt_BR
-kdeextragear-1
-kdeextragear-1-devel
-kdeextragear-1-doc
-kdeextragear-2
-kdeextragear-2-doc
-kdeextragear-3
-kdeextragear-3-doc
-kdeextragear-common-i18n-es
-kdeextragear-common-i18n-pt_BR
-kdegames kdegames
-kdegames-common libkdegames1 kdegames
-kdegames-devel libkdegames1-devel libkdegames1
-kdegames-doc
-kdegames-i18n-es kde-i18n-es
-kdegames-i18n-pt_BR kde-i18n-pt_BR
-kdegraphics kdegraphics
-kdegraphics-common kdegraphics-common
-kdegraphics-devel libkdegraphics0-common-devel libkdegraphics0-kooka-devel libkdegraphics0-ksvg-devel
-kdegraphics-doc
-kdegraphics-i18n-es kde-i18n-es
-kdegraphics-i18n-pt_BR kde-i18n-pt_BR
-kdelibs-artsinterface kdelibs-common libkdecore4
-kdelibs-docbook kdelibs-common
-kdelibs-i18n-es kde-i18n-es
-kdelibs-i18n-pt_BR kde-i18n-pt_BR
-kdelibs3 kdelibs-common
-kdelibs3-devel libkdecore4-devel
-kdelibs3-devel-static
-kdelirc libkdeutils1-common kdeutils-common
-kdelirc-doc kdeutils-common
-kdemultimedia kdemultimedia
-kdemultimedia-common libkdemultimedia1-common libkdemultimedia1-noatun kdemultimedia-kaudiocreator kdemultimedia-common kdemultimedia-noatun
-kdemultimedia-devel libkdemultimedia1-common libkdemultimedia1-kscd-devel libkdemultimedia1-common-devel libkdemultimedia1-noatun-devel
-kdemultimedia-doc
-kdemultimedia-i18n-es kde-i18n-es
-kdemultimedia-i18n-pt_BR kde-i18n-pt_BR
-kdenetwork kdenetwork
-kdenetwork-common kdenetwork-kopete libkdenetwork2-common kdenetwork-common kdenetwork-knewsticker
-kdenetwork-devel libkdenetwork2-common-devel
-kdenetwork-doc
-kdenetwork-i18n-es kde-i18n-es
-kdenetwork-i18n-pt_BR kde-i18n-pt_BR
-kdepalettes
-kdepasswd kdebase-progs kdebase-common
-kdepim kdepim
-kdepim-common kdepim-kaddressbook kdepim-kpilot kdepim-common
-kdepim-devel libkdecore4-devel libkdepim2-common-devel libkdepim2-kontact-devel libkdepim2-kmail libkdepim2-korganizer-devel libkdepim2-kmail-devel libkdepim2-kaddressbook-devel libkdepim2-ktnef-devel libkdepim2-kpilot-devel
-kdepim-doc
-kdepim-i18n-es koffice-i18n-es kde-i18n-es
-kdepim-i18n-pt_BR koffice-l10n-pt_BR kde-i18n-pt_BR
-kdeprint-doc-es kde-i18n-es
-kdeprint-doc-pt_BR kde-i18n-pt_BR
-kdesdk kdesdk
-kdesdk-common kdesdk
-kdesdk-devel libkdesdk1-devel libkdesdk1-cervisia-devel libkdesdk1-kbabel-devel
-kdesdk-i18n-es kde-i18n-es
-kdesdk-i18n-pt_BR kde-i18n-pt_BR
-kdesdk-scripts kdesdk
-kdesktop kdebase-progs libkdebase4 kdebase-common
-kdessh kdeutils-kdessh
-kdesu-doc-es kde-i18n-es
-kdesu-doc-pt_BR kde-i18n-pt_BR
-kdetheme-b3 kdelibs-common
-kdetheme-dotnet kdeartwork
-kdetheme-highcolor libkdecore4 kdelibs-common
-kdetheme-light kdelibs-common libkdecore4
-kdetheme-marble
-kdetheme-plastik kdelibs-common libkdecore4
-kdetheme-qt kdelibs-common
-kdetheme-riscos kdelibs-common
-kdetheme-system
-kdetoys kdetoys
-kdetoys-devel libkdetoys1-devel
-kdetoys-doc
-kdetoys-i18n-es kde-i18n-es
-kdetoys-i18n-pt_BR kde-i18n-pt_BR
-kdetv libkdevideo1 kdetv avifile-samples
-kdetv-i18n-es kdetv
-kdeutils kdeutils
-kdeutils-devel libkdeutils1-common-devel libkdeutils1-ksim-devel
-kdeutils-doc
-kdeutils-i18n-es kde-i18n-es
-kdeutils-i18n-pt_BR kde-i18n-pt_BR
-kdevelop kdevelop
-kdevelop-doc kdevelop
-kdf kdeutils-kdf
-kdf-doc kdeutils-kdf
-kdf-doc-es kde-i18n-es
-kdict kdenetwork-kdict
-kdict-doc kdenetwork-kdict
-kdiff3 kdiff3
-kdiff3-doc kdiff3
-kdiff3-i18n-es kdiff3
-kdiff3-i18n-pt_BR kdiff3
-kdm kdebase-kdm libkdebase4 kdebase-kdm-config-file kdebase-common
-kdm-doc kdebase-common
-kdm-doc-es kde-i18n-es
-kdm-doc-pt_BR kde-i18n-pt_BR
-kdvi kdegraphics-kdvi
-kdvi-doc kdegraphics-kdvi
-kdvi-doc-es kde-i18n-es
-kedit libkdeutils1-kedit kdeutils-kedit
-kedit-doc kdeutils-kedit
-kedit-doc-es kde-i18n-es
-keduca kdeedu
-keduca-doc kdeedu
-keduca-doc-es kde-i18n-es
-keduca-doc-pt_BR kde-i18n-pt_BR
-kenolaba kdegames
-kenolaba-doc kdegames
-kenolaba-doc-es kde-i18n-es
-kernel-pcmcia-cs pcmcia-cs-x11 pcmcia-cs
-kernel-postinstall
-kernel26
-kernel26-doc
-kernel26-enterprise
-kernel26-enterprise-module-madwifi
-kernel26-enterprise-module-nvidia
-kernel26-highmem
-kernel26-highmem-module-madwifi
-kernel26-highmem-module-nvidia
-kernel26-highmem-smp
-kernel26-highmem-smp-module-madwifi
-kernel26-highmem-smp-module-nvidia
-kernel26-module-madwifi
-kernel26-module-nvidia
-kernel26-smp
-kernel26-smp-module-madwifi
-kernel26-smp-module-nvidia
-kernel26-source
-kernel26-uml
-kernel26-uml-smp
-keurocalc keurocalc
-keurocalc-doc keurocalc
-keurocalc-i18n-es
-keurocalc-i18n-pt_BR
-keychain keychain
-kfax kdegraphics-kfax
-kfind libkdebase4 kdebase-progs kdebase-common
-kfind-doc kdebase-common
-kfind-doc-es kde-i18n-es
-kfish
-kfish-i18n-es
-kfish-i18n-pt_BR
-kfloppy kdeutils-kfloppy
-kfloppy-doc kdeutils-kfloppy
-kfloppy-doc-es kde-i18n-es
-kformula koffice-kformula libkoffice2-progs koffice-progs libkoffice2-kformula
-kformula-doc koffice-kformula
-kformula-docs-es koffice-i18n-es
-kformula-i18n-es koffice-i18n-es
-kformula-i18n-pt_BR koffice-l10n-pt_BR
-kfouleggs kdegames
-kfouleggs-doc kdegames
-kgamma kdegraphics-common
-kgamma-doc kdegraphics-common
-kgamma-doc-es kde-i18n-es
-kget kdenetwork-kget
-kget-doc kdenetwork-kget
-kghostview kdegraphics-kghostview libkdegraphics0-kghostview
-kghostview-doc kdegraphics-kghostview
-kghostview-doc-es kde-i18n-es
-kgoldrunner kdegames
-kgoldrunner-doc kdegames
-kgpg kdeutils-kgpg
-kgpg-doc kdeutils-kgpg
-kgpgcertmanager
-kgpgcertmanager-doc
-kgpgcertmanager-doc-es kde-i18n-es
-khangman kdeedu kde-i18n-pt_BR kde-i18n-es
-khangman-doc kdeedu
-khangman-doc-es kde-i18n-es
-khelpcenter kdebase-common kdebase-progs libkdebase4
-khelpcenter-doc kdebase-common
-khelpcenter-doc-es kde-i18n-es
-khelpcenter-doc-pt_BR kde-i18n-pt_BR
-khexedit kdeutils-khexedit
-khexedit-doc kdeutils-khexedit
-khexedit-doc-es kde-i18n-es
-kicker kdebase-common kdebase-progs libkdebase4
-kicker-addons kdeaddons libkdeaddons1
-kicker-applets-doc-es kde-i18n-es
-kicker-applets-doc-pt_BR kde-i18n-pt_BR
-kicker-doc kdebase-common
-kicker-doc-es kde-i18n-es
-kicker-doc-pt_BR kde-i18n-pt_BR
-kiconedit kdegraphics-kiconedit
-kiconedit-doc kdegraphics-kiconedit
-kiconedit-doc-es kde-i18n-es
-kids-icon-theme kdeartwork
-kig libkdeedu1 kdeedu
-kig-doc kdeedu
-kile kile
-kile-doc kile
-kile-i18n-es kile kile-i18n-es
-kile-i18n-pt_BR kile kile-i18n-pt_BR
-kimdaba kimdaba
-kimdaba-doc kimdaba
-kimdaba-i18n-es kimdaba
-kimdaba-i18n-pt_BR kimdaba
-kinfocenter-doc-es kde-i18n-es
-kinfocenter-doc-pt_BR kde-i18n-pt_BR
-kio-audiocd kdemultimedia-common
-kio-lanbrowsing lisa
-kio-lanbrowsing-doc lisa
-kio-smb libkdebase4 kdebase-common
-kio-smb-doc kdebase-common
-kio-thumbnail kdegraphics-common libkdebase4 kdebase-common
-kiosktool kiosktool
-kiosktool-i18n-es kiosktool
-kioslave-doc-es kde-i18n-es
-kioslave-doc-pt_BR kde-i18n-pt_BR
-kipi-plugins kipi-plugins
-kiten kdeedu
-kiten-doc kdeedu
-kiten-doc-es kde-i18n-es
-kivio libkoffice2-kivio koffice-kivio koffice-progs
-kivio-doc koffice-kivio
-kivio-docs-es koffice-i18n-es
-kivio-docs-pt_BR koffice-l10n-pt_BR
-kivio-i18n-es koffice-i18n-es
-kivio-i18n-pt_BR koffice-l10n-pt_BR
-kjots kdeutils-kjots
-kjots-doc kdeutils-kjots
-kjots-doc-es kde-i18n-es
-kjumpingcube kdegames
-kjumpingcube-doc kdegames
-kjumpingcube-doc-es kde-i18n-es
-klaptopdaemon kdeutils-klaptop libkdeutils1-klaptop
-klaptopdaemon-doc kdeutils-common kdeutils-klaptop
-klettres kde-i18n-sk kde-i18n-da kde-i18n-cs kdeedu
-klettres-doc kdeedu
-klettres-doc-es kde-i18n-es
-klicker
-klicker-i18n-es
-klickety kdegames
-klickety-doc kdegames
-klickety-doc-es kde-i18n-es
-klines kdegames
-klines-doc kdegames
-klines-doc-es kde-i18n-es
-klipper kdebase-progs libkdebase4 kdebase-common
-klipper-doc kdebase-common
-klipper-doc-es kde-i18n-es
-kmag kdeaccessibility
-kmag-doc kdeaccessibility
-kmahjongg kdegames
-kmail libkdepim2-kmail kdepim-kmail kdepim-kontact
-kmail-doc kdepim-kmail
-kmail-doc-es kde-i18n-es
-kmailcvt kdepim-kmail
-kmathtool-doc-es kde-i18n-es
-kmenuconfig
-kmenuconfig-i18n-pt_BR
-kmenuedit kdebase-kmenuedit libkdebase4-kmenuedit
-kmenuedit-doc kdebase-kmenuedit
-kmenuedit-doc-es kde-i18n-es
-kmessedwords kdeedu
-kmessedwords-doc kdeedu
-kmessedwords-doc-es kde-i18n-es
-kmid libkdemultimedia1-common kdemultimedia-kmidi kdemultimedia-kmid
-kmid-doc kdemultimedia-kmid
-kmid-doc-es kde-i18n-es
-kmilo libkdeutils1-klaptop kdeutils-klaptop
-kmines kdegames
-kmines-doc kdegames
-kmines-doc-es kde-i18n-es
-kmix kdemultimedia-kmix libkdemultimedia1-kmix
-kmix-doc kdemultimedia-kmix
-kmix-doc-es kde-i18n-es
-kmoon kdetoys
-kmoon-doc kdetoys
-kmousetool kdeaccessibility
-kmousetool-doc kdeaccessibility
-kmouth kdeaccessibility
-kmouth-doc kdeaccessibility
-kmouth-doc-es kde-i18n-es
-kmplayer kdelibs-common kmplayer
-kmplayer-doc
-kmplayer-i18n-es
-kmplayer-i18n-pt_BR
-kmplot kdeedu
-kmplot-doc kdeedu
-kmplot-doc-es kde-i18n-es
-kmrml libkdegraphics0-mrmlsearch kdegraphics-mrmlsearch
-kmyfirewall libkmyfirewall0 kmyfirewall
-kmyfirewall-doc kmyfirewall
-kmyfirewall-i18n-es
-kmyfirewall-i18n-pt_BR
-knetload knetload
-knetload-doc
-knetload-i18n-es knetload
-knetload-i18n-pt_BR knetload
-knetworkconf knetworkconf
-knetworkconf-i18n-es
-knetworkconf-i18n-pt_BR
-knewsticker libkdenetwork2-knewsticker kdenetwork-knewsticker kdenetwork-common
-knewsticker-addons kdeaddons
-knewsticker-doc kdenetwork-knewsticker
-knode libkdepim2-knode kdepim-kontact kdepim-knode
-knode-doc kdepim-knode
-knode-doc-es kde-i18n-es
-knotes kdepim-knotes kdepim-kpilot kdepim-kontact
-knotes-doc kdepim-knotes
-knotes-doc-es kde-i18n-es
-kodo kdetoys
-kodo-doc kdetoys
-kodo-doc-es kde-i18n-es
-koffice koffice
-koffice-common koffice-progs libkoffice2-progs koffice-koshell libkoffice2-kword libkoffice2-kspread
-koffice-common-doc koffice-koshell koffice-progs
-koffice-common-i18n-es koffice-i18n-es
-koffice-common-i18n-pt_BR koffice-l10n-pt_BR
-koffice-devel libkoffice2-progs-devel libkoffice2-kword-devel libkoffice2-kugar-devel libkoffice2-kspread-devel
-koffice-doc
-koffice-docs-common-es
-koffice-docs-common-pt_BR
-koffice-docs-es koffice-i18n-es
-koffice-i18n-es koffice-i18n-es
-koffice-i18n-pt_BR koffice-l10n-pt_BR
-koffice-templates koffice-kspread koffice-kword koffice-kugar koffice-kpresenter
-kolf kdegames libkdegames1
-kolf-doc kdegames
-kommander libkdewebdev0-kommander kdewebdev-kommander
-kompare libkdesdk1-devel libkdesdk1 kdesdk
-kompare-doc-es kde-i18n-es
-kompare-doc-pt_BR kde-i18n-pt_BR
-konq-plugins-doc-es kde-i18n-es
-konq-plugins-doc-pt_BR kde-i18n-pt_BR
-konqueror libkdebase4 kdebase-progs kdebase-common kdenetwork-common
-konqueror-addons kdeaddons-atlantik libkdeaddons1-konqimagegallery kdelibs-common kdeaddons kdeaddons-konqimagegallery libkdeaddons1
-konqueror-doc kdebase-common
-konqueror-doc-es kde-i18n-es
-konquest kdegames
-konquest-doc kdegames
-konquest-doc-es kde-i18n-es
-konsole kdebase-common libkdebase4 kdebase-progs kdebase-konsole libkdebase4-konsole
-konsole-doc kdebase-konsole
-konsole-doc-es kde-i18n-es
-konsolekalendar kdepim-common kdepim-korganizer
-konsolekalendar-doc kdepim-korganizer
-konsolekalendar-doc-es kde-i18n-es
-kontact libkdepim2-kontact kdepim-kontact
-kontact-addons kdepim-kontact
-kontact-doc kdepim-kontact
-kontact-doc-es kde-i18n-es
-konversation konversation
-konversation-doc konversation
-konversation-i18n-es konversation
-konversation-i18n-pt_BR konversation
-kooka kdegraphics-common libkdegraphics0-kooka kdegraphics-kooka
-kooka-doc kdegraphics-kooka
-kooka-doc-es kde-i18n-es
-kopete libkdenetwork2-kopete kdenetwork-kopete
-kopete-doc kdenetwork-common kdenetwork-kopete
-kopete-doc-es kde-i18n-es
-kopete-nowlistening kdenetwork-kopete
-korganizer kdepim-korganizer kdelibs-common kdepim-kaddressbook kdepim-kontact libkdepim2-korganizer kdepim-common
-korganizer-doc kdepim-korganizer
-korganizer-doc-es kde-i18n-es
-korn kdepim-korn
-korn-doc kdepim-korn
-korn-doc-es kde-i18n-es
-koshell-docs-es koffice-i18n-es
-kpackage kdeadmin kdeadmin-kpackage libkdeadmin1
-kpackage-doc kdeadmin-kpackage
-kpackage-doc-es kde-i18n-es
-kpager-doc-es kde-i18n-es
-kpaint
-kpaint-doc
-kpaint-doc-es kde-i18n-es
-kpat kdegames
-kpat-doc kdegames
-kpdf kdegraphics-kpdf
-kpdf-doc kdegraphics-kpdf
-kpercentage kdeedu
-kpercentage-doc kdeedu
-kpercentage-doc-es kde-i18n-es
-kpf kdenetwork-common libkdenetwork2-common
-kpf-doc kdenetwork-common
-kpf-doc-es kde-i18n-es
-kpilot kdepim-common kdepim-kpilot libkdepim2-kpilot
-kpilot-doc kdepim-kpilot
-kpilot-doc-es kde-i18n-es
-kpoker kdegames
-kpoker-doc kdegames
-kpoker-doc-es kde-i18n-es
-kpovmodeler libkdegraphics0-kpovmodeler kdegraphics-kpovmodeler
-kpovmodeler-doc kdegraphics-kpovmodeler
-kpovmodeler-doc-es kde-i18n-es
-kppp kdenetwork-kppp kdenetwork-kppp-provider
-kppp-doc kdenetwork-kppp
-kppp-doc-es kde-i18n-es
-kppp-doc-pt_BR kde-i18n-pt_BR
-kpresenter libkoffice2-kpresenter koffice-kpresenter koffice-progs
-kpresenter-doc koffice-kpresenter
-kpresenter-docs-es koffice-i18n-es
-kpresenter-docs-pt_BR koffice-l10n-pt_BR
-kpresenter-i18n-es koffice-i18n-es
-kpresenter-i18n-pt_BR koffice-l10n-pt_BR
-krandr libkdebase4 kdebase-progs kdebase-common
-krb5 libkrb53
-krb5-apps-clients krb5-workstation
-krb5-apps-servers krb5-workstation
-krb5-client krb5-workstation openafs krb5-server
-krb5-devel krb5-workstation libkrb53-devel krb5-server
-krb5-devel-static
-krb5-doc
-krb5-server krb5-workstation krb5-server
-krdc kdenetwork-kopete kdenetwork-krfb
-krdc-doc kdenetwork-krfb
-kreatecd
-kreatecd-doc
-kreatecd-i18n-es
-kreatecd-i18n-pt_BR
-krec libkdemultimedia1-krec kdemultimedia-krec
-krec-doc kdemultimedia-krec
-kregexpeditor libkdeutils1-common kdeutils-common
-kreversi kdegames
-kreversi-doc kdegames
-kreversi-doc-es kde-i18n-es
-krfb kdenetwork-krfb
-krfb-doc kdenetwork-krfb
-kruler kdegraphics-kruler
-kruler-doc kdegraphics-kruler
-kruler-doc-es kde-i18n-es
-ksame kdegames
-ksame-doc kdegames
-ksame-doc-es kde-i18n-es
-kscd kdemultimedia-kscd
-kscd-doc kdemultimedia-kscd
-kscd-doc-es kde-i18n-es
-kscreensaver kdebase-common kdebase-progs
-kscreensavers kdeartwork-screensaver-gl kdeartwork
-kscreensavers-opengl kdeartwork
-kscreensavers-xscreensaver kdeartwork-screensaver-gl kdeartwork
-kscreensavers-xscreensaver-opengl kdeartwork kdeartwork-screensaver-gl
-kshisen kdegames
-kshisen-doc kdegames
-kshisen-doc-es kde-i18n-es
-ksim libkdeutils1-ksim libkdeutils1-ksim-devel kdeutils-ksim
-ksim-doc-es kde-i18n-es
-ksirc libkdenetwork2-ksirc kdenetwork-ksirc
-ksirc-doc kdenetwork-ksirc
-ksirtet kdegames
-ksirtet-doc kdegames
-ksirtet-doc-es kde-i18n-es
-ksmiletris kdegames
-ksmssend
-ksmssend-i18n-es
-ksmssend-i18n-pt_BR
-ksnake kdegames
-ksnake-doc kdegames
-ksnake-doc-es kde-i18n-es
-ksnapshot kdegraphics-ksnapshot
-ksnapshot-doc kdegraphics-ksnapshot
-ksnapshot-doc-es kde-i18n-es
-ksokoban kdegames
-ksokoban-doc kdegames
-kspaceduel kdegames
-kspaceduel-doc kdegames
-kspell-doc-es kde-i18n-es
-kspread libkoffice2-kspread koffice-kspread koffice-progs
-kspread-doc koffice-kspread
-kspread-docs-es koffice-i18n-es
-kspread-i18n-es koffice-i18n-es
-kspread-i18n-pt_BR koffice-l10n-pt_BR
-kspy libkdesdk1-devel libkdesdk1
-kstars indilib kdeedu
-kstars-doc kdeedu
-kstars-doc-es kde-i18n-es
-kstars-doc-pt_BR kde-i18n-pt_BR
-ksvg libkdegraphics0-ksvg kdegraphics-ksvg
-ksymoops ksymoops
-ksync kdepim-kpilot libkdepim2-common
-ksysguard libkdebase4 kdebase-progs kdebase-common
-ksysguard-daemon kdebase-progs
-ksysguard-doc kdebase-common
-ksysguard-doc-es kde-i18n-es
-ksysv kdeadmin-ksysv
-ksysv-doc kdeadmin-ksysv
-ksysv-doc-es kde-i18n-es
-ktalkd kdenetwork-ktalk
-ktalkd-doc kdenetwork-ktalk
-kteatime kdetoys
-kteatime-doc kdetoys
-kteatime-doc-es kde-i18n-es
-ktimer kdeutils-ktimer
-ktimer-doc kdeutils-ktimer
-ktimer-doc-es kde-i18n-es
-ktip kdebase-progs kdebase-common
-ktnef libkdepim2-ktnef kdepim-ktnef
-ktouch kdeedu
-ktouch-doc kdeedu
-ktouch-doc-es kde-i18n-es
-ktron kdegames
-ktron-doc kdegames
-ktuberling kdegames
-ktuberling-doc kdegames
-ktuberling-doc-es kde-i18n-es
-ktux kdetoys
-kudzu
-kudzu-devel
-kudzu-i18n-es
-kudzu-i18n-pt_BR
-kugar libkoffice2-kugar koffice-progs koffice-kugar
-kugar-doc koffice-kugar
-kugar-docs-es koffice-i18n-es
-kugar-docs-pt_BR koffice-l10n-pt_BR
-kugar-i18n-es koffice-i18n-es
-kugar-i18n-pt_BR koffice-l10n-pt_BR
-kuickshow libkdegraphics0-kuickshow kdegraphics-kuickshow
-kuickshow-doc-es kde-i18n-es
-kuiviewer kdesdk
-kuser kdeadmin
-kuser-doc kdeadmin
-kuser-doc-es kde-i18n-es
-kverbos kdeedu
-kverbos-doc kdeedu
-kverbos-doc-es kde-i18n-es
-kview kdegraphics-common kdegraphics-kview libkdegraphics0-kview kdegraphics-ksvg
-kview-doc kdegraphics-kview
-kview-doc-es kde-i18n-es
-kvoctrain kdeedu
-kvoctrain-doc kdeedu
-kvoctrain-doc-es kde-i18n-es
-kwallet-doc kdeutils-kwalletmanager
-kwallet-doc-es kde-i18n-es
-kwalletmanager kdeutils-kwalletmanager
-kweather libkdetoys1-kweather kdetoys-kweather
-kweather-doc kdetoys-kweather
-kweather-doc-es kde-i18n-es
-kwifimanager libkdenetwork2-kwifimanager kdenetwork-kwifimanager
-kwifimanager-doc-es kde-i18n-es
-kwin kdebase-common kdebase-progs libkdebase4
-kwin-cde kdeartwork
-kwin-glow kdeartwork
-kwin-icewm kdeartwork
-kwin-kde1 kdeartwork
-kwin-kstep kdeartwork
-kwin-openlook kdeartwork
-kwin-plastik libkdebase4 kdebase-common
-kwin-system kdeartwork
-kwin4 kdegames
-kwin4-doc kdegames
-kwin4-doc-es kde-i18n-es
-kword libkoffice2-kword koffice-kword koffice-progs
-kword-doc koffice-kword
-kword-docs-es koffice-i18n-es
-kword-docs-pt_BR koffice-l10n-pt_BR
-kword-i18n-es koffice-i18n-es
-kword-i18n-pt_BR koffice-l10n-pt_BR
-kworldclock kdetoys
-kworldclock-doc kdetoys
-kworldclock-doc-es kde-i18n-es
-kworldclock-themes kdeartwork
-kwuftpd-doc-es kde-i18n-es
-kxconfig-doc-es kde-i18n-es
-kxkb kdebase-progs libkdebase4 kdebase-common
-kxkb-doc kdebase-common
-kxsldbg kdewebdev
-kxsldbg-doc kdewebdev
-kynaptic
-kynaptic-i18n-pt_BR
-ladspa ladspa
-lam sweep libmpich21-devel libmpich1-devel mpic++ mpif77 libkdesdk1-devel mpich lam-devel mpich2 mpi2f77 mpi2cc lam-runtime mpicc
-lam-doc lam-doc
-lam-examples
-lame
-lame-doc
-latex2html latex2html
-lcms liblcms1
-lcms-devel liblcms1-devel
-ldconfig ldconfig
-leafnode leafnode
-less less
-lexmark-foomatic-kit
-lexmark2070 printer-filters
-lexmark7000linux printer-filters
-lha lha
-libacl-devel libacl1-devel
-libacl1 libacl1
-libadns-devel libadns1-devel
-libadns1 libadns1
-libalsa2 libalsa-data libalsa2
-libalsatoss0 libalsa-oss0
-libao-devel libao2-devel
-libao-doc
-libao2 libao2
-libaoss0 libalsa-oss0 aoss
-libapr-devel libapr0-devel libapr-util0-devel
-libapr-devel-static libapr-util0-devel libapr0-devel
-libapr0 libapr-util0 libapr0
-libapt-pkg-devel libapt-pkg0-devel
-libapt-pkg2
-libart-devel libart_lgpl2-devel
-libart2 libart_lgpl2
-libaspell-devel libaspell15-devel
-libaspell15 libaspell15
-libattr-devel libattr1-devel
-libattr1 libattr1
-libavc1394-devel libavc1394_0-devel
-libavc1394_0 libavc1394_0-testools libavc1394_0
-libavifile0 libaviplayavcodec0.7 libavifile0.7
-libbeecrypt-devel libbeecrypt6-devel
-libbeecrypt6 libbeecrypt6
-libbluetooth1
-libbonobo libbonobo2_0 libbonobo
-libbonobo-devel libbonobo2_0-devel libbonobo
-libbonobo-doc
-libbonobo-i18n-es libbonobo
-libbonobo-i18n-pt_BR libbonobo
-libbonoboui libbonoboui2_0 libbonoboui
-libbonoboui-devel libbonoboui libbonoboui2_0-devel
-libbonoboui-i18n-es libbonoboui
-libbonoboui-i18n-pt_BR libbonoboui
-libbz2 libbzip2_1
-libbz2-devel libbzip2_1-devel
-libcap
-libcap-devel libcap1-devel
-libcap1 libcap1
-libcdda-devel libcdda0-devel
-libcdda0 libcdda0
-libclamav-devel libclamav1-devel
-libclamav1 libclamav1
-libconectiva-devel
-libconectiva1
-libcroco-devel libcroco2-devel
-libcroco2 libcroco libcroco2
-libcurl-devel libcurl3-devel
-libcurl2 curl
-libdevmapper-devel libdevmapper1.01-devel
-libdevmapper1.00
-libdigikam0 libdigikam0
-libdm-devel libdm0-devel
-libdm0 libdm0
-libdockapp
-libdockapp-devel
-libdockapp-devel-static
-libdps-progs xorg-x11
-libdps1 libxorg-x11
-libdv libdv-apps
-libdv-devel libdv4-static-devel libdv4-devel
-libdvdread-devel libdvdread3-devel
-libdvdread2
-libdvdread3 libdvdread3
-libdxr3-devel libdxr3_0-devel
-libdxr3_0 libdxr3_0
-libecpg4
-libeel-devel libeel2_2-devel
-libeel2 libeel2_2
-libeel2-i18n-es eel
-libeel2-i18n-pt_BR eel
-libenchant-devel libenchant1-devel
-libenchant0 libenchant1
-libewm
-libewm-devel
-libexif-devel libexif12-devel
-libexif-doc
-libexif9
-libexif9-i18n-es libexif12
-libf2c0 libf2c0
-libfaad2
-libfaad2-devel
-libfaad2-doc
-libfaad2-utils
-libfam-devel libgamin-1_0-devel
-libfam0 libgamin-1_0
-libfame-devel
-libfame0
-libffmpeg-devel libpostproc0-devel libffmpeg0-devel
-libffmpeg0 ffmpeg libpostproc0 libffmpeg0
-libflac++2
-libflac-devel liboggflac++2-devel libflac++5-devel libflac7-devel liboggflac3-devel
-libflac4 flac
-libfontconfig-devel libfontconfig1-devel
-libfontconfig1 fontconfig libfontconfig1
-libfribidi-devel libfribidi0-devel
-libfribidi0 fribidi libfribidi0
-libftgl-demo
-libftgl-devel libftgl0-devel
-libftgl-doc
-libftgl0 libftgl0
-libgaim-remote-devel libgaim-remote0-devel
-libgaim-remote0 libgaim-remote0
-libgal-devel libgal23-devel
-libgal0 libgal2.0_6 gal2.0
-libgal0-i18n-es gal2.0
-libgal0-i18n-pt_BR gal2.0
-libgal21
-libgal21-i18n-es
-libgal21-i18n-pt_BR
-libgcc
-libgcc-i18n-es
-libgcj-devel
-libgcj4 libgcj6
-libgcrypt1
-libgd-devel libgd2-devel
-libgd-doc
-libgd-progs gd-utils
-libgd1
-libgd2 libgd2
-libgdbm-devel libgdbm3-devel
-libgdbm-devel-static libgdbm3-devel
-libgdbm3 libgdbm3
-libghttp-devel libghttp1-devel
-libghttp1 libghttp1
-libgimpprint1
-libgimpprint1-devel
-libgl-mesa-devel
-libgl-progs xorg-x11
-libgl-xfree86-devel
-libgl1-mesa
-libgl1-nvidia
-libgl1-xfree86 xorg-x11-server
-libglade libglade-bonobo0 libglade-gnome0 libglade0
-libglade-devel libglade0-devel
-libglade2 libglade2.0_0
-libglade2-devel libglade2.0_0-devel
-libglade2-doc libglade2.0_0-devel
-libglide2 Glide_V3 Glide_V2
-libglide2-devel Glide_V3-devel Glide_V2-devel
-libglide3 Glide_V3 Glide_V3-DRI Glide_V2 Glide_V5
-libglide3-devel Glide_V3-DRI-devel Glide_V3-devel Glide_V5-devel Glide_V2-devel
-libglu-mesa-devel
-libglu1-mesa
-libglu1-xfree86
-libglut-devel
-libglut3
-libgmcop1 libarts1
-libgnet-devel libgnet-1.1_0-devel
-libgnet-doc
-libgnet1.1 libgnet-1.1_0
-libgnome libgnome2_0 libgnome2
-libgnome-devel libgnome2_0-devel
-libgnome-doc libgnome2_0-devel
-libgnome-i18n-es libgnome2
-libgnome-i18n-pt_BR libgnome2
-libgnome-keyring0 libgnome-keyring0
-libgnome-vfs2 libgnome-vfs2_0
-libgnome-vfs2-devel libgnome-vfs2_0-devel
-libgnomecanvas libgnomecanvas2_0
-libgnomecanvas-devel libgnomecanvas2_0-devel
-libgnomecanvas-doc
-libgnomecanvas-i18n-es libgnomecanvas2_0
-libgnomecanvas-i18n-pt_BR libgnomecanvas2_0
-libgnomeprint libgnomeprint2-2_0 libgnomeprint
-libgnomeprint-devel libgnomeprint2-2_0-devel
-libgnomeprint-i18n-es libgnomeprint
-libgnomeprint-i18n-pt_BR libgnomeprint
-libgnomeprintui libgnomeprintui2-2_0
-libgnomeprintui-devel libgnomeprintui2-2_0-devel
-libgnomeprintui-i18n-es libgnomeprintui2-2_0
-libgnomeprintui-i18n-pt_BR libgnomeprintui2-2_0
-libgnomeui libgnomeui2 libgnomeui2_0 gnome-libs
-libgnomeui-devel libgnomeui2_0-devel
-libgnomeui-doc libgnomeui2_0-devel
-libgnomeui-i18n-es libgnomeui2
-libgnomeui-i18n-pt_BR libgnomeui2
-libgpgme-devel libgpgme03_6-devel libgpgme11-devel
-libgpgme-doc
-libgpgme6 libgpgme03_6
-libgphoto2 libgphoto2 libgphoto-hotplug
-libgphoto2-devel libgphoto2-devel
-libgphoto2-doc
-libgphoto2-i18n-es libgphoto2
-libgphoto2-i18n-pt_BR libgphoto2
-libgr
-libgr-progs netpbm
-libgsf libgsf-1_1
-libgsf-devel libgsf-1_1-devel
-libgsf-gnome libgsf-1_1
-libgsf-gnome-devel libgsf-1_1-devel
-libgsl-devel gsl-progs libgsl0-devel
-libgsl0 libgsl0
-libgsm-devel libgsm1-devel
-libgsm-progs gsm
-libgsm1 libgsm1
-libgtkhtml2 libgtkhtml2_0
-libgtkhtml2-devel libgtkhtml2_0-devel
-libgtkhtml20 libgtkhtml1.1_3
-libgtkhtml30 libgtkhtml-3.0_4 gtkhtml3.0
-libgtkhtml30-i18n-es gtkhtml3.0
-libgtkhtml30-i18n-pt_BR gtkhtml3.0
-libgtksourceview-devel libgtksourceview-1.0_0-devel
-libgtksourceview1.0 libgtksourceview-1.0_0 gtksourceview
-libgtksourceview1.0-i18n-es gtksourceview
-libgtksourceview1.0-i18n-pt_BR gtksourceview
-libgtkxmhtml libgtkxmhtml1
-libgtkxmhtml-devel libgnome32-devel
-libgtop2 libgtop2
-libgtop2-devel libgtop2.0_5-devel
-libgtop2-i18n-es libgtop2
-libgtop2-i18n-pt_BR libgtop2
-libgucharmap4 libgucharmap4
-libguile12 libguile12
-libguppi-devel Guppi libguppi16-devel
-libguppi16 libguppi16
-libhermes-devel libhermes1-devel
-libhermes1 libhermes1
-libhpojip0 hpoj libhpojip0
-libhpojip0-devel libhpojip0-devel
-libid3-devel libid3_3.8_3-devel
-libid3_0 id3lib libid3_0
-libidl libIDL2_0
-libidl-devel libIDL2_0-devel
-libidn-devel libidn11-devel
-libidn11 libidn11
-libimap-devel imap-devel
-libimap-devel-static
-libimap4
-libimlib-devel libimlib1-devel
-libimlib1 imlib libimlib1
-libimlib1-cfgeditor imlib-cfgeditor
-libipsec0 libipsec0
-libipsec0-devel libipsec0-devel
-libiw27 libiw28
-libiw27-devel libiw28-devel
-libjasper-common jasper
-libjasper-devel libjasper1.701_1-devel
-libjasper1 libjasper1.701_1
-libjpeg-devel libjpeg62-devel
-libjpeg62 jpeg-progs libjpeg62
-libkabinterfaces1 libkdepim2-kaddressbook
-libkcal2 kdepim-common libkdepim2-common
-libkcddb1 libkdemultimedia1-common kdemultimedia-kscd
-libkdeeducore0 libkdeedu1
-libkdeeduplot1 libkdeedu1
-libkdeeduui1 libkdeedu1
-libkdenetwork2
-libkdepim1 libkdepim2-common
-libkdgantt0
-libkgantt0 kdepim-korganizer libkdepim2-common
-libkipi-devel libkipi0 libkipi0-devel
-libkipi0 libkipi0
-libkmultipage0 libkdegraphics0-common
-libknewstuff1 kdelibs-common libkdecore4
-libkonfig-devel
-libkonfig0
-libkonq4 libkdebase4
-libkpimexchange1 libkdepim2-common
-libkpinterfaces1 libkdepim2-kontact
-libksba0
-libksieve0 kdepim-common libkdepim2-common
-liblm_sensors3 liblm_sensors3
-libltdl-devel libltdl3-devel
-libltdl3 libltdl3
-libmad-devel libid3tag0-devel libmad0-devel
-libmad0 libid3tag0 libmad0
-libmagic-devel libmagic1-devel
-libmagick++-devel libMagick8.0.2-devel
-libmagick++5.5.7
-libmagick-devel libMagick8.0.2-devel
-libmagick5.5.7
-libmetacity-devel libmetacity-private0-devel
-libmikmod-devel libmikmod2-devel
-libmikmod2 libmikmod2
-libmimelib1 libkdepim2-common
-libmjpegtools-devel libmjpegtools1.6-devel
-libmjpegtools0 libmjpegtools1.6
-libmng-devel libmng1-devel
-libmng1 libmng1
-libmp3lame-devel
-libmp3lame0
-libmusicbrainz-devel libmusicbrainz4-devel
-libmusicbrainz4 libmusicbrainz4
-libmysqlclient-devel libmysql14-devel
-libmysqlclient12 libmysql12
-libncftp2
-libncftp2-devel
-libneon-devel
-libneon-devel-static
-libneon-doc
-libneon24
-libnet libnet
-libnet-devel libnet2-devel libnet libnet1.1-devel libnet1.0-devel
-libnetpbm9
-libnetpbm9-devel libshhopt1-devel libnetpbm10-devel
-libnewt-cnc1
-libnewt-cnc1-devel
-libnewt51 libnewt0.51
-libnids
-libnids-devel libnids1-devel
-libnspr-devel libnspr4-devel
-libnspr4 libnspr4
-libnss-devel libnss3-devel
-libnss3 libnss3
-libntfs-devel libntfs5-devel
-libntfs-gnomevfs-devel libntfs5-devel ntfsprogs-gnomevfs
-libntfs-gnomevfs1 ntfsprogs-gnomevfs
-libntfs5 libntfs5
-libobjc libobjc1
-libogg-devel libogg0-devel
-libogg-doc
-libogg0 libogg0
-liboggflac++0
-liboggflac1
-libole2 libole20
-libole2-devel libole20-devel
-libopenal-devel libopenal0-devel
-libopenal0 libopenal0
-libopenh323_1 libopenh323_1
-libopenh323_1-devel libopenh323_1-devel
-libopenobex-devel libopenobex1.0-devel
-libopenobex1 libopenobex1.0
-libopensc-devel libopensc0-devel
-libopensc0 pam_opensc libopensc0 opensc
-libpcap libpcap0
-libpcap-devel libpcap0-devel
-libperl5.8
-libpgtypes1
-libplanner-devel libplanner-1_0-devel
-libplanner1 libplanner-1_0
-libplot-devel libplotutils2-devel
-libplot4 libplotutils2
-libplotter-devel
-libplotter4
-libpng-devel libpng3-devel
-libpng-doc
-libpng3 libpng3
-libpq3
-libproplist-devel libPropList0-devel
-libproplist0 libPropList0
-libptal0 libptal0
-libptal0-devel libptal0-devel
-libqavm0 libavifile0.7
-libqtmcop1 libarts1
-libraw1394 libraw1394-utils
-libraw1394-devel libraw1394_8-devel
-librpm4.2
-librrd-devel librrdtool2-devel
-librrd0
-librsvg2 librsvg2_2 librsvg
-librsvg2-devel librsvg2_2-devel
-librsync rdiff librsync1
-librsync-devel librsync1-devel
-libsamplerate-devel libsamplerate0-devel
-libsamplerate-doc
-libsamplerate0 libsamplerate-progs libsamplerate0
-libsane-hpoj1 libsane-hpoj1
-libsane1 libsane1
-libsane1-i18n-es sane-backends
-libsdl-devel libSDL1.2-devel
-libsdl-image-devel libSDL_image1.2-devel
-libsdl-image1.2 libSDL_image1.2
-libsdl-mixer-devel libSDL_mixer1.2-devel
-libsdl-mixer1.2 libSDL_mixer1.2 SDL_mixer-player
-libsdl-net-devel libSDL_net1.2-devel
-libsdl-net1.2 libSDL_net1.2
-libsdl-ttf-devel libSDL_ttf2.0-devel
-libsdl-ttf-test libSDL_ttf2.0-test
-libsdl-ttf2.0 libSDL_ttf2.0
-libsdl1.2 libSDL1.2
-libsdp2
-libshout libshout3
-libshout-devel libshout3-devel
-libslang-devel libslang1-devel
-libslang-devel-static libslang1-devel
-libslang1 libslang1
-libslp-devel libopenslp1-devel
-libslp1 libopenslp1
-libsmbclient-devel libsmbclient0-devel
-libsmbclient0 libsmbclient0
-libsmpeg-devel libsmpeg0.4-devel
-libsmpeg-progs smpeg-player
-libsmpeg0.4 libsmpeg0.4
-libsndfile-devel libsndfile1-devel
-libsndfile-utils libsndfile-progs
-libsndfile1 libsndfile-progs libsndfile1
-libsoup
-libsoup-devel
-libstdc++-devel libstdc++2.10-devel
-libstdc++2.10 libstdc++2.10
-libstdc++5.0 libstdc++5
-libstdc++5.0-devel
-libtaglib-devel libtaglib0 libtaglib0-devel
-libtaglib1 libtaglib0
-libtiff-devel libtiff3-devel
-libtiff-progs libtiff-progs
-libtiff3 libtiff3
-libtool libtool
-libtool-doc
-libucd-snmp-devel
-libucd-snmp4
-libungif-devel libungif4-devel
-libungif-doc
-libungif-progs libungif-progs
-libungif4 libungif4
-libusb-devel libusb0.1_4-devel
-libusb4
-libuser libuser
-libuser-devel libuser1-devel
-libuser-i18n-es libuser
-libuser1 libuser libuser1
-libuser1-ldap libuser
-libuser1-python
-libvorbis-devel libvorbis0-devel
-libvorbis-doc
-libvorbis3 libvorbis0 libvorbisenc2 libvorbisfile3
-libwings-devel
-libwmf-devel libwmf0.2_7-devel
-libwmf-doc
-libwmf-gtk
-libwmf-tools libwmf
-libwmf7 libwmf0.2_7
-libwnck-devel libwnck-1_16-devel
-libwnck1
-libworkman6 kdemultimedia-kscd
-libwrap-devel tcp_wrappers-devel
-libwraster
-libwraster-devel
-libwv2-devel libwv2_1 libwv2_1-devel
-libwv2_1 libwv2_1
-libwv7
-libwvstreams
-libwvstreams-devel libwvstreams3.74-devel
-libwxgtk2-2.4 libwxgtk2.4
-libwxgtk2-2.4-i18n-es
-libwxgtk2-devel libwxgtk2.4-devel
-libwxgtk2-doc
-libwxgtk2-examples
-libwxgtk2-gl libwxgtkgl2.4
-libxaw3d-devel libXaw3d7-devel
-libxaw3d6
-libxaw6 libxorg-x11
-libxaw7 libxorg-x11
-libxforms-devel
-libxforms0.89
-libxft-devel libxorg-x11-devel
-libxft2
-libxklavier libxklavier-data
-libxklavier-devel libxklavier10-devel
-libxmi-devel
-libxmi1
-libxml libxml1
-libxml-devel libxml1-devel
-libxml-doc
-libxml2 libxml2-utils libxml2
-libxml2-devel libxml2-devel
-libxml2-doc
-libxml2-python libxml2-python
-libxmltok w3c-libwww
-libxmltok-devel w3c-libwww-devel
-libxosd-devel libxosd2-devel
-libxosd-xmms xmms-xosd beep-media-player-xosd
-libxosd2 xosd-tools libxosd2
-libxslt-devel libxslt1-devel
-libxslt-doc
-libxslt1 libxslt1 libxslt-proc
-libxvid-devel
-libxvid3
-libyafcore0 libkdemultimedia1-common
-libyafxplayer0 libkdemultimedia1-common
-libz-devel zlib1-devel
-libz-devel-static zlib1-devel
-libz1 zlib1
-libzvt libzvt2.0_0
-libzvt-devel libzvt2.0_0-devel
-licq licq
-licq-common licq
-licq-console licq-console
-licq-devel licq licq-kde licq-rms licq-devel licq-console
-licq-gtk
-licq-kde licq-kde
-licq-qt licq
-licq-qt-i18n
-licq-rms licq-rms
-lilo lilo
-lilo-doc lilo-doc
-linc ORBit2 liblinc1
-linc-devel liblinc1-devel
-linc-doc liblinc1-devel
-linuxconf linuxconf-lang-pt linuxconf-util linuxconf linuxconf-lang-es
-linuxconf-accountbatch linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-amandaconf linuxconf linuxconf-lang-pt linuxconf-lang-es
-linuxconf-aptconf linuxconf
-linuxconf-cnc_rbc udhcpc
-linuxconf-devel linuxconf-devel
-linuxconf-dhcpd linuxconf linuxconf-lang-pt linuxconf-lang-es
-linuxconf-dialout linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-dnsconf linuxconf linuxconf-lang-es linuxconf-lang-pt
-linuxconf-fetchmailconf linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-firewall linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-fsbrowser
-linuxconf-grubconf linuxconf linuxconf-lang-pt linuxconf-lang-es
-linuxconf-gurus linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-inetdconf linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-inittab linuxconf
-linuxconf-ircdconf linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-isapnpconf linuxconf linuxconf-lang-es linuxconf-lang-pt
-linuxconf-kbdconf linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-kernelconf linuxconf linuxconf-lang-pt linuxconf-lang-es
-linuxconf-lib linuxconf-lib
-linuxconf-libmodules
-linuxconf-liloconf linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-mailconf linuxconf linuxconf-lang-pt linuxconf-lang-es
-linuxconf-managerpm linuxconf linuxconf-lang-pt linuxconf-lang-es
-linuxconf-marsconf linuxconf linuxconf-lang-es linuxconf-lang-pt
-linuxconf-mgettyconf linuxconf
-linuxconf-modemconf linuxconf
-linuxconf-motd linuxconf
-linuxconf-mouseconf linuxconf
-linuxconf-mrtg linuxconf
-linuxconf-netadm linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-nfsconf linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-nisconf linuxconf linuxconf-lang-pt linuxconf-lang-es
-linuxconf-opensshd linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-pamconf linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-postfixconf linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-pppdialin linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-pslaveconf linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-pythonmod linuxconf
-linuxconf-radiusconf linuxconf linuxconf-lang-es linuxconf-lang-pt
-linuxconf-rarp linuxconf linuxconf-lang-pt linuxconf-lang-es
-linuxconf-redhatppp linuxconf-lang-pt linuxconf linuxconf-lang-es
-linuxconf-report linuxconf
-linuxconf-samba linuxconf linuxconf-lang-es linuxconf-lang-pt
-linuxconf-shellmod linuxconf linuxconf-lang-es linuxconf-util linuxconf-lang-pt
-linuxconf-squid linuxconf
-linuxconf-status linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-syslogconf linuxconf
-linuxconf-treemenu linuxconf
-linuxconf-updatemon linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-usermenu linuxconf linuxconf-lang-pt linuxconf-lang-es
-linuxconf-usersbygroup linuxconf-lang-pt linuxconf-lang-es linuxconf
-linuxconf-uucp linuxconf
-linuxconf-vregistry linuxconf
-linuxconf-wuftpd linuxconf
-linuxconf-xkbdconf linuxconf linuxconf-lang-es linuxconf-lang-pt
-lisa-doc-es kde-i18n-es
-lm1100 printer-filters printer-utils
-lm_sensors lm_sensors
-lm_sensors-devel liblm_sensors3-devel
-lm_sensors-doc
-lm_sensors-sensord lm_sensors
-lm_sensors-tellerstats
-locolor-icon-theme kdeartwork
-logcheck logcheck
-logrotate logrotate
-logwatch logwatch
-losetup losetup
-lout lout
-lout-doc lout-doc
-lpstyl printer-filters
-lrzsz lrzsz
-lskat kdegames
-lskat-doc kdegames
-lskat-doc-es kde-i18n-es
-lslk lslk
-lsof lsof
-lsof-doc
-ltrace ltrace
-lua
-lua-devel liblua5-devel
-lvm-base
-lvm-iop10
-lvm-iop6
-lvm2 lvm2
-lwp liblwp2
-lwp-devel liblwp2-devel
-lxcontrol printer-utils
-lynx lynx
-lynx-doc
-lynx-i18n-es
-lynx-i18n-pt_BR lynx
-lyx lyx
-lz11 printer-filters
-m4 m4
-macromedia-flash-plugin
-macutils macutils
-magicdev gnome-volume-manager
-magicdev-i18n-es
-magicdev-i18n-pt_BR
-mailcap mailcap
-mailman mailman
-mailman-clamav
-mailman-i18n-es mailman
-mailman-i18n-pt_BR mailman
-mailx mailx
-make make
-make-i18n-es
-make-i18n-pt_BR
-makedev makedev
-man man
-man-i18n-en
-man-i18n-es
-man-i18n-pt_BR
-man-pages man-pages
-man-pages-devel
-man-pages-i18n-es
-man-pages-i18n-pt_BR
-mars-nwe
-mawk mawk
-mc mc
-mc-i18n-es mc
-mc-i18n-pt_BR mc
-mcrypt libmcrypt mcrypt libmcrypt4
-mcrypt-devel libmcrypt4-devel
-mcserv
-megami-doc-es kde-i18n-es
-memtest86
-mesa-doc
-metacity libmetacity-private0 metacity
-metacity-i18n-es metacity
-metacity-i18n-pt_BR metacity
-metaconf metaconf
-mgetty mgetty-sendfax mgetty
-mgetty-doc
-mgetty-sendfax hylafax-client mgetty-sendfax
-mgetty-viewfax mgetty-viewfax
-mgetty-voice mgetty-sendfax mgetty-voice
-mhash libmhash2
-mhash-devel libmhash2-devel
-mhash-doc
-mi
-mi-slides
-mi_buildtools
-migrationtools-common openldap-migration
-migrationtools-offline openldap-migration
-migrationtools-online openldap-migration
-mikmod mikmod
-mingetty mingetty
-mingetty-i18n-pt_BR
-minicom minicom
-minicom-i18n-es minicom
-minicom-i18n-pt_BR minicom
-miniperl
-mirror mirror
-mjpegtools mjpegtools
-mkbootdisk mkbootdisk
-mkfontpkg
-mkinitrd mkinitrd
-mkisofs mkisofs
-mknbi mkinitrd-net
-mktemp mktemp
-mkxauth mkxauth
-ml85p printer-filters
-mnogosearch emboss mnogosearch
-mnogosearch-devel libmnogosearch3.2-devel
-mod_auth_ldap
-mod_auth_pam mod_auth_pam
-mod_auth_pgsql
-mod_dav
-mod_perl apache-mod_perl
-mod_perl-devel mod_perl-devel
-mod_perl-doc
-mod_python
-mod_python-doc
-module-init-tools modutils module-init-tools
-modutils modutils
-mon mon
-mount util-linux mount
-mountapp mountapp
-mouseconfig
-mouseconfig-i18n-es
-mouseconfig-i18n-pt_BR
-mozilla mozilla
-mozilla-base mozilla libnss3
-mozilla-devel mozilla-devel
-mozilla-dom-inspector mozilla-dom-inspector
-mozilla-extension-diggler
-mozilla-irc mozilla-irc
-mozilla-js-debugger mozilla-js-debugger
-mozilla-mail mozilla-mail
-mozilla-psm
-mozplugger mozplugger
-mp3c mp3c
-mpage mpage
-mpeglib libkdemultimedia1-common kdemultimedia-common
-mpg321 mpg123 mpg321
-mplayer mencoder mplayer-gui mplayer
-mplayer-doc
-mplayer-skins mplayer-gui mplayer-skins
-mrtg mrtg
-mrtg-doc
-mrtg-extras
-mtools mtools
-mtools-doc
-mtools-floppyd mtools
-mtools-i18n-pt_BR
-mtr mtr
-mtr-gtk mtr-gtk
-mutt mutt
-mutt-doc
-mutt-help
-mutt-i18n-es mutt
-mutt-i18n-pt_BR mutt
-mutt-ldap
-myfirewallcontrol
-myfirewallcontrol-doc
-myfirewallcontrol-i18n-pt_BR
-mysql MySQL-client MySQL-common
-mysql-bench MySQL-bench
-mysql-client MySQL-client
-mysql-doc
-nagios nagios
-nagios-cgi nagios nagios-www
-nagios-devel nagios-devel
-nagios-nsca
-nagios-plugins nagios-plugins
-nagios-plugins-extras nagios-plugins
-nasm nasm
-nasm-doc nasm-doc
-nautilus libnautilus2 nautilus
-nautilus-cd-burner nautilus-cd-burner
-nautilus-cd-burner-i18n-es nautilus-cd-burner
-nautilus-cd-burner-i18n-pt_BR nautilus-cd-burner
-nautilus-devel libnautilus2-devel
-nautilus-extras nautilus
-nautilus-i18n-es nautilus
-nautilus-i18n-pt_BR nautilus
-nautilus-media
-nautilus-media-i18n-es
-nautilus-media-i18n-pt_BR
-nautilus-suggested nautilus
-nc nc
-ncftp ncftp
-ncompress ncompress
-ncpfs libncpfs2.3 ncpfs
-ncpfs-libs libncpfs2.3
-ncpfs-libs-devel libncpfs2.3-devel
-ncurses libncurses5 ncurses-extraterms ncurses
-ncurses-devel libncurses5-devel
-ncurses-doc
-ncurses-i18n-pt_BR
-ncurses-term ncurses-extraterms
-ncurses4
-nedit nedit
-net-snmp net-snmp net-snmp-trapd net-snmp-mibs
-net-snmp-devel libnet-snmp5-devel
-net-snmp-doc
-net-snmp-utils net-snmp-utils
-net-tools net-tools
-net-tools-i18n-pt_BR net-tools
-netatalk netatalk
-netatalk-devel netatalk-devel
-netconfig pump
-netpbm netpbm
-newpg gnupg2
-newt newt
-newt-devel libnewt0.51-devel
-nfs-server
-nfs-utils nfs-utils nfs-utils-clients
-nmap nmap
-nmap-doc
-nmap-frontend nmap-frontend
-noatun kdemultimedia-noatun libkdemultimedia1-noatun kdemultimedia-common
-noatun-addons libkdeaddons1-noatun kdeaddons-noatun
-noatun-doc kdemultimedia-noatun
-noatun-doc-es kde-i18n-es
-normalize normalize
-nscd nscd
-nss_ldap nss_ldap
-ntfsprogs ntfsprogs
-ntop ntop
-ntp ntp-client ntp openntpd
-ntp-doc
-ntsysv ntsysv
-numlock numlock
-oaf liboaf0 oaf
-oaf-devel liboaf0-devel oaf
-oaf-i18n-es oaf
-oaf-i18n-pt_BR oaf
-objc
-octave octave
-octave-devel
-octave-doc octave-doc
-oggificator
-oki4linux printer-filters
-omni
-omni-brother
-omni-canon
-omni-cups
-omni-epson
-omni-foomatic
-omni-hp
-omni-ibm
-omni-ks
-omni-kyocera
-omni-lib
-omni-oki
-omni-panasonic
-omni-star
-openjade OpenSP openjade libopenjade0 libosp0
-openjade-devel libosp0-devel libOpenSP3-devel libopenjade0-devel
-openjade-doc
-openldap openldap
-openldap-client openldap-clients
-openldap-devel libldap2.2_7-devel
-openldap-doc openldap-doc
-openldap-server openldap-servers
-openmotif lesstif-clients
-openmotif-demos
-openmotif-devel lesstif-clients lesstif-devel
-openmotif-mwm lesstif-mwm
-openoffice.org OpenOffice.org-l10n-es OpenOffice.org OpenOffice.org-l10n-pt_BR
-openoffice.org-i18n-en_US OpenOffice.org-help-en OpenOffice.org OpenOffice.org-l10n-en
-openoffice.org-i18n-es_ES OpenOffice.org-help-es OpenOffice.org-l10n-es
-openoffice.org-i18n-pt_BR OpenOffice.org-help-pt_BR OpenOffice.org-l10n-pt_BR OpenOffice.org-l10n-en
-openoffice.org-libs OpenOffice.org-libs
-openslp openslp
-openslp-doc
-openssh openssh
-openssh-askpass openssh-askpass
-openssh-askpass-gnome openssh-askpass-gnome
-openssh-clients openssh openssh-clients
-openssh-server openssh-server
-openssl-devel libopenssl0.9.7-devel
-openssl-devel-static libopenssl0.9.7-static-devel
-openssl-doc
-openssl-progs openssl
-openssl0.9.7 libopenssl0.9.7
-orbit1 ORBit libORBit0
-orbit1-devel libORBit0-devel
-orbit2 libORBit2_0 ORBit2
-orbit2-devel ORBit2 libORBit2_0-devel
-pam pam
-pam-devel libpam0-devel
-pam-doc pam-doc
-pam-extra libpam0
-pam_krb5 pam_krb5
-pam_ldap pam_ldap
-pam_mount pam_mount
-pam_smb pam_smb
-pam_smb_passwd
-pan pan
-pan-i18n-es pan
-pan-i18n-pt_BR pan
-pango libpango1.0_0-modules pango libpango1.0_0
-pango-devel libpango1.0_0-devel
-pango-doc pango
-parted16 parted
-parted16-devel libparted1.6-devel
-parted16-i18n-es parted
-parted16-i18n-pt_BR parted
-partimage partimage
-passwd passwd
-patch patch
-pax pax
-pbm2l2030 printer-filters
-pbm2lwxl printer-filters
-pciutils pciutils
-pciutils-devel pciutils-devel
-pcl3-cups
-pcre libpcre0 pcre
-pcre-devel libpcre0-devel
-pcsc-lite pcsc-lite
-pcsc-lite-devel pcsc-lite-devel
-pdksh pdksh
-pear-date php-pear-Date
-pear-hcemd5
-pear-log php-pear-Log php-pear
-pear-mail-mime php-pear
-pentaxpj printer-filters
-perguntas_e_respostas
-perl perl
-perl-archive-tar perl-Archive-Tar
-perl-archive-zip perl-Archive-Zip
-perl-authen-sasl perl-Authen-SASL
-perl-base perl-base
-perl-compress-zlib perl-Compress-Zlib
-perl-convert-asn1 perl-Convert-ASN1
-perl-convert-ber perl-Convert-BER
-perl-convert-tnef perl-Convert-TNEF
-perl-convert-uulib perl-Convert-UUlib
-perl-crypt-ssleay perl-Crypt-SSLeay
-perl-date-calc perl-Date-Calc
-perl-datemanip perl-DateManip
-perl-dbd-pg perl-DBD-Pg
-perl-dbi perl-DBI-proxy perl-DBI
-perl-devel perl-devel
-perl-digest-hmac perl-Digest-HMAC
-perl-digest-nilsimsa perl-Digest-Nilsimsa
-perl-digest-sha1 perl-Digest-SHA1
-perl-doc perl-doc
-perl-file-tail perl-File-Tail
-perl-html-parser perl-HTML-Parser
-perl-html-tagset perl-HTML-Tagset
-perl-http-ghttp
-perl-imagemagick
-perl-io-socket-ssl perl-IO-Socket-SSL
-perl-io-stringy perl-IO-stringy
-perl-ldap perl-ldap
-perl-libwww-perl perl-libwww-perl
-perl-libxml-enno perl-libxml-enno
-perl-libxml-perl perl-libxml-perl
-perl-mailtools perl-MailTools
-perl-mime-tools perl-MIME-tools
-perl-mime-tools-doc
-perl-modules
-perl-mon perl-Mon
-perl-msql-mysql-modules
-perl-net-daemon perl-Net-Daemon
-perl-net-dns perl-Net-DNS
-perl-net-ping
-perl-net-server perl-Net-Server
-perl-net-ssleay
-perl-parse-yapp perl-Parse-Yapp
-perl-period perl-Period
-perl-plrpc perl-PlRPC
-perl-postgresql
-perl-sdl perl-SDL
-perl-sgmlspm perl-SGMLSpm
-perl-suidperl perl-suid
-perl-timedate perl-TimeDate
-perl-unix-syslog perl-Unix-Syslog
-perl-uri perl-URI
-perl-utils perl perl-doc
-perl-xml-parser perl-XML-Parser
-perl-xml-sax perl-XML-SAX
-pflogsumm pflogsumm
-php-net-socket php-pear
-php4 php-ini php-cli php-pear
-php4-dba
-php4-devel php432-devel
-php4-doc
-php4-imap
-php4-ldap
-php4-mcrypt
-php4-mhash
-php4-mnogosearch
-php4-mssql
-php4-mysql
-php4-odbc
-php4-pgsql
-php4-snmp
-php4-sybase
-php4-sybase-ct
-phpgroupware phpgroupware
-pidentd pidentd
-pilot-link libpisync0 libpisock8 libpisock++0 pilot-link
-pilot-link-devel libpisock8-devel
-pinentry-curses pinentry
-pinentry-gtk pinentry-gtk
-pinentry-info
-pinentry-qt pinentry-qt
-pinfo pinfo
-ping iputils
-pkgconfig pkgconfig
-planner planner-database planner
-planner-i18n-es planner
-planner-i18n-pt_BR planner
-plotutils plotutils
-pnm2ppa printer-filters
-popt libpopt0
-popt-devel libpopt0-devel
-popt-devel-static libpopt0-devel
-popt-doc
-portaudio libportaudio0
-portaudio-devel libportaudio0-devel
-portmap portmap
-portmap-static
-portslave
-poster printer-utils
-postfix postfix
-postfix-doc
-postgresql postgresql-server postgresql
-postgresql-clients postgresql
-postgresql-contrib postgresql-contrib
-postgresql-devel libpq4-devel libecpg5-devel postgresql-devel
-postgresql-doc
-postgresql-odbc
-postgresql-pgaccess pgaccess
-postgresql-tcl libpgtcl2 postgresql-tcl
-postgresql-test postgresql-test
-ppmtomd printer-filters
-ppmtotbmp
-ppp ppp
-ppp-devel ppp-devel
-privoxy privoxy
-procinfo procinfo
-procmail procmail
-procps procps
-proftpd proftpd
-proftpd-doc
-psacct psacct
-psgml emacs-psgml
-psmisc psmisc
-psmisc-i18n-en psmisc
-psutils psutils
-pump pump
-pump-devel pump-devel
-pump-i18n-es pump
-pump-i18n-pt_BR pump
-pup printer-utils
-pwdb pwdb-conf
-pwdb-devel libpwdb0-devel
-pwdb-doc
-pwlib libpwlib1
-pwlib-devel libpwlib1-devel
-py2pdf
-pychecker pychecker
-pygame pygame
-pygame-devel
-pygame-doc pygame-doc
-pyorbit2
-pyorbit2-devel pyorbit-devel
-pysol pysol-cardsets pysol
-pysol-cardsets pysol-cardsets
-python python-base python
-python-MySQLdb
-python-MySQLdb-doc
-python-adns
-python-beecrypt
-python-biggles
-python-clientcookie
-python-clientform
-python-dateutil
-python-devel
-python-doc
-python-freeze
-python-gtk python-gtk
-python-gtk+2
-python-gtk+2-devel pygtk2.0-devel
-python-gtk+2-examples
-python-gtk+2-libglade
-python-idle tkinter
-python-imaging python-imaging
-python-imaging-devel python-imaging-devel
-python-kudzu
-python-ldap python-ldap
-python-libglade
-python-matplotlib
-python-mx
-python-newt
-python-ninz
-python-numeric python-numeric
-python-numeric-devel python-numeric-devel
-python-numeric-doc
-python-postgresql
-python-qt PyQt PyQt-devel
-python-qt-doc
-python-qt-examples
-python-reportlab python-reportlab
-python-reportlab-doc
-python-reportlab-docco
-python-reportlab-platypus
-python-reportlab-test
-python-rpm
-python-sip sip
-python-spread
-python-sqlite python-sqlite
-python-subversion python-svn
-python-tkinter
-python-wxgtk2 wxPythonGTK
-python-wxgtk2-examples
-pythonlib pythonlib
-pythonpoint
-pyxf86config
-qcad qcad
-qcad-doc
-qscintilla
-qscintilla-devel libqscintilla5-devel
-qt3 qt3-common libqt3
-qt3-assistant-lib
-qt3-database-plugin-mysql
-qt3-database-plugin-odbc
-qt3-database-plugin-pgsql
-qt3-designer libqt3-devel
-qt3-designer-lib libqt3
-qt3-devel libqt3-devel
-qt3-doc libqt3-devel libqt3
-qt3-examples
-qt3-linguist libqt3-devel
-qt3-tutorial
-quanta libkdewebdev0-kfilereplace kdewebdev-kfilereplace kdewebdev
-quanta-devel
-quanta-doc kdewebdev
-quanta-doc-pt_BR kde-i18n-pt_BR
-quanta-reference-css
-quanta-reference-html
-quanta-reference-javascript
-quanta-reference-php
-quota quota
-radiusd-cistron freeradius radiusd-cistron
-raidtools raidtools
-rarpd rarpd
-razor-agents perl-Razor-Agent
-rcs rcs
-rcs-doc
-rdate rdate
-rdesktop rdesktop
-rdist rdist
-readline
-readline-devel libreadline5-devel
-redir redir
-reiserfs-utils reiserfsprogs
-rfb rfb
-rhpl
-rhpl-i18n-es
-rhpl-i18n-pt_BR
-rhythmbox rhythmbox
-rhythmbox-i18n-es rhythmbox
-rhythmbox-i18n-pt_BR rhythmbox
-rman
-rmt rmt
-rootfiles rootfiles
-routed routed
-rp-pppoe rp-pppoe-gui rp-pppoe
-rp-pppoe-gui rp-pppoe-gui
-rp-pppoe-server rp-pppoe
-rplay
-rplay-devel
-rpm rpm
-rpm-build rpm-build
-rpm-devel librpm4.4-devel
-rpm-doc
-rpm-i18n-es
-rpm-i18n-es_ES
-rpm-i18n-pt_BR
-rpm2cpio rpm
-rrdtool rrdtool
-rrdtool-doc
-rsh rsh
-rsh-server rsh-server
-rstart xorg-x11
-rsync rsync
-rusers rusers
-rusers-server rusers-server
-rwall rwall
-rwho rwho
-sablotron libsablotron0 sablotron
-sablotron-devel libsablotron0-devel
-sablotron-doc
-samba-clients smbget samba-common
-samba-common samba-swat samba-common samba-server
-samba-doc samba-doc
-samba-server samba-common samba-server tdb-utils
-samba-swat samba-doc samba-swat
-samba-testprogs
-samba-vfs samba-server
-samba-vscan-clamav samba-vscan-clamav
-samba-vscan-fprot
-samba-vscan-fsecure
-samba-vscan-kaspersky
-samba-vscan-mks
-samba-vscan-oav
-samba-vscan-sophos
-samba-vscan-trend
-samba-winbind samba-winbind samba-server nss_wins
-sane sane-backends
-sane-devel libsane1-devel
-sane-doc
-sane-frontends sane-frontends
-sane-server
-sash sash
-sasl2 libsasl2
-sasl2-devel libsasl2-devel
-sasl2-devel-static libsasl2-devel
-sasl2-doc
-sasl2-plug-anonymous libsasl2-plug-anonymous
-sasl2-plug-crammd5 libsasl2-plug-crammd5
-sasl2-plug-digestmd5 libsasl2-plug-digestmd5
-sasl2-plug-gssapi libsasl2-plug-gssapi
-sasl2-plug-login libsasl2-plug-login
-sasl2-plug-ntlm libsasl2-plug-ntlm
-sasl2-plug-otp libsasl2-plug-otp
-sasl2-plug-plain libsasl2-plug-plain
-sasl2-plug-sasldb libsasl2-plug-sasldb
-sasl2-programs cyrus-sasl
-schedutils
-screem screem
-screem-i18n-es screem
-screem-i18n-pt_BR screem
-screen ncurses ncurses-extraterms screen
-scribus libscribus0 scribus
-scribus-devel libscribus0-devel
-scribus-doc scribus
-scrollkeeper libscrollkeeper0 scrollkeeper
-scrollkeeper-i18n-es scrollkeeper
-scrollkeeper-i18n-pt_BR scrollkeeper
-sdcc sdcc
-sdcc-doc sdcc
-secpolicy kdeadmin
-sed sed
-sed-i18n-es sed
-sed-i18n-pt_BR sed
-sendmail sendmail
-sendmail-cf sendmail-cf
-sendmail-doc sendmail-doc
-setserial setserial
-setup lsb setup
-sg3_utils sg3_utils
-sg_map
-sginfo
-sgml-common openjade sgml-common
-sgml-tools linuxdoc-tools
-sgml-tools-doc
-shadow-utils shadow-utils
-shadow-utils-doc
-shadow-utils-i18n-pt_BR
-shared-mime-info shared-mime-info
-sharutils sharutils
-shout
-showimg showimg
-showimg-doc showimg
-showimg-i18n-es showimg
-showimg-i18n-pt_BR showimg
-slang-doc slang-doc
-slib
-slick-icon-theme kdeartwork
-sliplogin
-slocate slocate
-slocate-i18n-pt_BR
-slrn slrn
-slrn-i18n-es slrn
-slrn-pull slrn-pull
-smartmontools smartmontools
-smbldap-tools smbldap-tools
-snort snort
-sodipodi sodipodi
-sodipodi-i18n-es sodipodi
-sodipodi-i18n-pt_BR sodipodi
-sox sox
-sox-devel sox-devel
-spamassassin spamassassin-spamd spamassassin spamassassin-spamc
-spamassassin-doc
-speak_freely
-speak_freely-gui
-spread
-spread-devel
-sqlite libsqlite0 sqlite-tools
-sqlite-devel libsqlite0-devel
-squid squid
-squid-auth squid
-squid-extra-templates
-squirm
-startup-notification libstartup-notification-1_0
-startup-notification-devel libstartup-notification-1_0-devel
-statserial statserial
-strace strace
-stunnel stunnel
-stunnel-doc
-subversion subversion subversion-repos libsvn_ra_local1_0 libsvn_repos1_0 libsvn_diff1_0 libsvn_client1_0 libsvn_subr1_0 libsvn_ra_dav1_0 libsvn_ra_svn1_0 libsvn_delta1_0
-subversion-devel python-svn-devel libsubversion1_0-devel
-subversion-doc subversion-doc
-subversion-server subversion-server
-sudo sudo
-sudo-doc
-sun-java2
-sun-jre
-sun-jre-java-odbc
-sun-jre-java-plugin
-swatch swatch
-swig swig
-swig-devel swig-devel
-sxid
-sylpheed sylpheed2 sylpheed-claws sylpheed-claws2 sylpheed
-sylpheed-doc sylpheed sylpheed2
-sylpheed-i18n-es sylpheed sylpheed2
-sylpheed-i18n-pt_BR sylpheed sylpheed2
-symlinks symlinks
-synaptic rpmdrake
-synaptic-i18n-es
-synaptic-i18n-pt_BR
-sysklogd sysklogd
-syslinux syslinux
-system-config-soundcard
-sysvinit dpkg lsb SysVinit
-sysvinit-devel
-sysvinit-doc
-t1lib t1lib-config
-t1lib-devel libt1lib5-devel
-t1lib-fonts
-t1lib-progs libt1lib1-progs t1lib-progs
-talk talk
-talk-server talk-server
-tar tar
-tar-i18n-es tar
-tar-i18n-pt_BR tar
-task-alsa
-task-alsa-devel
-task-base
-task-c++-devel
-task-c-devel
-task-cd_recording-base
-task-config-tools
-task-core
-task-debug
-task-desktop-common
-task-docbook-sgml
-task-docbook-xml
-task-foomatic
-task-ghostscript
-task-gimp-print
-task-gimp-print-cups
-task-gnome gnome-volume-manager
-task-gnome-devel
-task-gnome-minimal gnome-volume-manager
-task-gnomeutils
-task-gst-plugins
-task-ha
-task-kde gnome-volume-manager
-task-kde-base-devel
-task-kde-enterprise
-task-kde-i18n-es
-task-kde-i18n-pt_BR
-task-kde-minimal gnome-volume-manager
-task-kde-standard gnome-volume-manager
-task-kernel-compiling
-task-mail-server
-task-mi-stage2
-task-nautilus
-task-network-base
-task-omni
-task-printer-canon
-task-printer-epson
-task-printer-hp
-task-printer-lexmark
-task-printer-misc
-task-printer-okidata
-task-printer-server
-task-printers
-task-profile-devel
-task-profile-emailserver
-task-profile-enterprise
-task-profile-firewallserver
-task-profile-gnome
-task-profile-minimal
-task-profile-notebook
-task-profile-sambaserver
-task-profile-standard
-task-profile-webserver
-task-python-devel
-task-webmin-desktop drakconf
-task-windowmaker
-task-x-window-system desktop-common-data
-tcl tcl
-tcl-devel tcl
-tcllib tcllib
-tclx tclx
-tclx-devel tclx
-tclx-helpfiles tclx
-tcpd tcp_wrappers
-tcpdump tcpdump
-tcptrace
-tcsh rootfiles setup tcsh
-tcsh-doc
-technical-icon-theme
-telnet telnet-client-krb5 telnet
-telnet-server
-tetex tetex texi2html tetex-context tetex-mfwin tetex-dvipdfm tetex-dvips tetex-xdvi tetex-texi2html texinfo tetex-doc
-tetex-afm tetex-afm
-tetex-devel tetex-devel
-tetex-doc tetex-doc
-tetex-dvilj tetex-latex tetex-dvilj
-tetex-dvips tetex tetex-latex tetex-dvips
-tetex-latex tetex-context tetex-latex
-tetex-xdvi tetex-xdvi
-tethereal tethereal
-texinfo info texinfo
-texinfo-doc
-tftp-hpa tftp-server tftp
-thesaurus-docs-es koffice-i18n-es
-tightvnc tightvnc
-tightvnc-doc tightvnc-doc
-tightvnc-java tightvnc
-tightvnc-server tightvnc-server
-time time
-timeconfig timeconfig
-timeconfig-i18n-es timeconfig
-timeconfig-i18n-es_ES
-timeconfig-i18n-pt_BR timeconfig
-timezone glibc timezone
-tk tk
-tk-demos
-tk-devel tk
-tmpwatch tmpwatch
-totem totem-common totem
-totem-i18n-es totem-common
-totem-i18n-pt_BR totem-common
-traceroute traceroute
-trafshow
-transcode
-transcode-doc
-transfig transfig
-tree tree
-ttf-uddiuddi
-ttf2pt1 lcdf-typetools t1utils
-ttmkfdir freetype-tools
-tux_aqfh tux_aqfh
-tuxracer wherever-racer tuxracer
-tvtime tvtime
-twiki
-twm xorg-x11
-txt2regex txt2regex
-txt2regex-i18n-pt_BR txt2regex
-txt2tags
-type1-freefonts
-udev udev
-umb-scheme umb-scheme
-umbrello kdesdk kdesdk-umbrello
-umbrello-doc-es kde-i18n-es
-umbrello-doc-pt_BR kde-i18n-pt_BR
-uml-net-tools
-unarj
-unix2dos unix2dos
-unixodbc libunixODBC1 unixODBC
-unixodbc-MiniSQL libunixODBC1
-unixodbc-MySQL libmyodbc1-devel libunixODBC1
-unixodbc-devel libmyodbc1-devel libunixODBC1-devel
-unixodbc-doc
-unixodbc-easysoft libunixODBC1
-unixodbc-freetds libunixODBC1
-unixodbc-kde libunixODBC1-qt unixODBC-gui-qt
-unixodbc-nn libunixODBC1
-unixodbc-openlinks libunixODBC1
-unixodbc-oracle libunixODBC1
-unixodbc-postgres libunixODBC1
-unixodbc-progs unixODBC
-unixodbc-sapdb libunixODBC1
-unixodbc-txt libunixODBC1
-unrar
-unzip unzip
-urlview urlview
-usb-mount hotplug
-usbutils usbutils
-usermode usermode-consoleonly usermode
-usermode-gtk usermode
-usermode-i18n-es usermode-consoleonly
-usermode-i18n-pt_BR usermode-consoleonly
-utempter utempter
-util-linux shadow-utils util-linux
-util-linux-i18n-es util-linux
-util-linux-i18n-pt_BR util-linux
-uucp uucp
-uucp-cu uucp
-uucp-doc
-uudeview uudeview
-uw-imap-doc
-uw-imap-server imap
-uw-pop-server imap
-valgrind valgrind
-valgrind-doc valgrind
-vcdimager vcdimager
-vera
-verynice
-vim-X11 vim-common vim-X11
-vim-common vim-common
-vim-enhanced vim-enhanced
-vim-help
-vim-minimal vim-minimal
-vim-syntax
-vimpart libkdeaddons1-devel libkdeaddons1 kdeaddons
-viralator
-vixie-cron vixie-cron
-vixie-cron-i18n-pt_BR
-vlock vlock
-vorbis-tools vorbis-tools
-vsftpd vsftpd
-vte libvte4 vte
-vte-devel libvte4-devel
-vte-i18n-es vte
-vte-i18n-pt_BR vte
-vtun vtun
-w3c-libwww w3c-libwww
-w3c-libwww-apps w3c-libwww-apps
-w3c-libwww-devel w3c-libwww-devel
-webalizer webalizer
-webalizer-doc
-weblint
-webmin-base webmin
-webmin-desktop webmin
-webmin-server webmin
-webmin-theme-conectiva
-webmin-theme-lynx
-webxref
-wget wget
-wget-i18n-es wget
-wget-i18n-pt_BR wget
-which which
-wine wine wine-utils
-wine-devel libwine1-devel
-wine-doc
-wireless-tools wireless-tools
-wmaker WindowMaker
-wmaker-doc
-wmaker-i18n-es WindowMaker
-wmaker-themes wmaker-themes
-wmakerconf
-wmcalclock
-wmifs wmii
-wmmixer
-wmmon
-words words
-wserv BitchX
-wsoundserver
-wsoundserver-data
-wsoundserver-devel
-wu-ftpd wu-ftpd
-wv wv
-wv-devel libwv-1.0_2-devel libwv-1.0_0-devel
-wvdial wvdial
-x3270 x3270
-xauth xorg-x11-xauth
-xawtv xawtv-control fbtv xawtv-misc xawtv xawtv-common motv
-xawtv-misc xawtv-misc
-xawtv-radio radio
-xawtv-streamer streamer
-xawtv-ttv ttv
-xawtv-webcam xawtv-web
-xchat xchat
-xchat-base xchat-perl xchat-tcl xchat-python xchat
-xchat-base-i18n-es xchat
-xchat-base-i18n-es_ES
-xchat-base-i18n-pt_BR xchat
-xchat-text xchat
-xclass xclass-icons
-xclass-devel libxclass0-devel
-xdialog Xdialog
-xdialog-i18n-es Xdialog
-xdialog-i18n-pt_BR Xdialog
-xdm xorg-x11 xinitrc
-xdosemu xdosemu
-xemacs xemacs-extras gnuserv xemacs
-xfig xfig
-xfig-doc xfig
-xfree86
-xfree86-bench xorg-x11
-xfree86-common xorg-x11 groff-gxditview libxorg-x11 xpat2 xdu
-xfree86-config xorg-x11
-xfree86-devel xorg-x11 libxorg-x11-devel libxpm4-devel
-xfree86-devel-static libxorg-x11-devel libxorg-x11-static-devel libxpm4-devel
-xfree86-doc xorg-x11
-xfree86-driver-apm xorg-x11-server xorg-x11
-xfree86-driver-ark xorg-x11-server
-xfree86-driver-ati xorg-x11-server xorg-x11
-xfree86-driver-ati-dri xorg-x11-server
-xfree86-driver-chips xorg-x11 xorg-x11-server
-xfree86-driver-cirrus xorg-x11-server
-xfree86-driver-cyrix xorg-x11 xorg-x11-server
-xfree86-driver-fbdev xorg-x11-server
-xfree86-driver-glide
-xfree86-driver-glint xorg-x11-server
-xfree86-driver-i128 xorg-x11-server xorg-x11
-xfree86-driver-i740 xorg-x11-server xorg-x11
-xfree86-driver-i810 xorg-x11 xorg-x11-server
-xfree86-driver-i810-dri libxorg-x11 xorg-x11-server
-xfree86-driver-mga xorg-x11-server
-xfree86-driver-mga-dri xorg-x11-server
-xfree86-driver-neomagic xorg-x11-server
-xfree86-driver-nsc xorg-x11-server
-xfree86-driver-nv xorg-x11-server
-xfree86-driver-nvidia
-xfree86-driver-rendition xorg-x11 xorg-x11-server
-xfree86-driver-s3 xorg-x11-server
-xfree86-driver-s3virge xorg-x11 xorg-x11-server
-xfree86-driver-savage xorg-x11-server
-xfree86-driver-siliconmotion xorg-x11-server
-xfree86-driver-sis xorg-x11 xorg-x11-server
-xfree86-driver-sis-dri xorg-x11-server
-xfree86-driver-synaptics synaptics
-xfree86-driver-tdfx xorg-x11-server
-xfree86-driver-tdfx-dri xorg-x11-glide-module
-xfree86-driver-tga xorg-x11-server xorg-x11
-xfree86-driver-trident xorg-x11-server
-xfree86-driver-tseng xorg-x11-server
-xfree86-driver-vesa xorg-x11-server
-xfree86-driver-vga xorg-x11-server
-xfree86-driver-via xorg-x11-server
-xfree86-driver-vmware xorg-x11-server
-xfree86-icons
-xfree86-libs
-xfree86-libs-common libxpm4 libxorg-x11
-xfree86-manpages
-xfree86-minimal
-xfree86-misc-locales xorg-x11
-xfree86-modules-afb xorg-x11-server
-xfree86-modules-cfb xorg-x11-server
-xfree86-modules-codeconv
-xfree86-modules-extended-input xorg-x11-server
-xfree86-modules-fb xorg-x11-server
-xfree86-modules-fb-lowcolor xorg-x11-server
-xfree86-modules-fb-multi-depths xorg-x11-server
-xfree86-modules-freetype
-xfree86-modules-xaa xorg-x11-server
-xfree86-modules-xtt
-xfree86-progs X11R6-contrib xterm xorg-x11
-xfree86-proxy xorg-x11
-xfree86-server
-xfree86-server-common xorg-x11 xorg-x11-server XFree86-server-common
-xfree86-xfs xorg-x11 xorg-x11-xfs
-xfree86-xkb libxorg-x11 xorg-x11
-xfree86-xnest xorg-x11-Xnest
-xfree86-xprt xorg-x11-Xprt
-xfree86-xvfb xorg-x11-Xvfb
-xfsdump xfsdump
-xfsdump-i18n-pt_BR
-xfsprogs libxfs1 xfsprogs
-xfsprogs-devel libxfs1-devel
-ximian-connector ximian-connector
-ximian-connector-devel
-ximian-connector-doc
-xine
-xine-lib libxine1 xine-plugins
-xine-lib-alsa
-xine-lib-arts
-xine-lib-devel libxine1-devel
-xine-lib-dxr3
-xine-lib-esd
-xine-lib-gnome_vfs
-xine-lib-i18n-es xine-plugins
-xine-lib-i18n-pt_BR xine-plugins
-xine-lib-oggvorbis
-xine-lib-oss
-xine-lib-w32dll
-xine-lib-xv
-xine-ui xine-ui-fb xine-ui
-xine-ui-i18n-es xine-ui
-xine-ui-i18n-pt_BR xine-ui
-xine-ui-skins xine-skins
-xinetd xinetd-simple-services xinetd
-xinetd-devel
-xlockmore xlockmore
-xml-common sgml-common
-xmms xmms-alsa libxmms1 xmms xmms-diskwriter
-xmms-arts xmms-arts
-xmms-crossfade xmms-crossfade
-xmms-devel libxmms1-devel
-xmms-esd xmms-esd
-xmms-flac flac-xmms
-xmms-gl xmms-mesa
-xmms-i18n-en xmms
-xmms-i18n-es xmms
-xmms-i18n-pt_BR xmms
-xmms-mikmod xmms-mikmod
-xmms-normalize normalize xmms-normalize
-xmms-oss xmms
-xmms-skins xmms-skins
-xmms-volume-normalizer xmms-normalize
-xmms-vorbis xmms
-xpdf xpdf
-xpdf-progs xpdf
-xscreensaver xscreensaver
-xscreensaver-gl xscreensaver-gl
-xscreensaver-i18n-es xscreensaver
-xscreensaver-i18n-pt_BR xscreensaver
-xscripts xinitrc xorg-x11
-xscripts-i18n-pt_BR
-xterm xorg-x11 xterm
-xtux xtux
-xvattr xvattr
-xwpe
-xwpe-X11
-xwpick xwpick
-yafray
-yelp yelp
-yelp-i18n-es yelp
-yelp-i18n-pt_BR yelp
-yp-tools yp-tools
-ypbind-mt ypbind
-ypserv ypserv
-zebra quagga
-zenity zenity
-zenity-i18n-es zenity
-zenity-i18n-pt_BR zenity
-zip zip
-zisofs-tools zisofs-tools
diff --git a/perl-install/install/share/upgrade/conectiva.10/pre.keep-kde-profile b/perl-install/install/share/upgrade/conectiva.10/pre.keep-kde-profile
deleted file mode 100755
index 26aff73d7..000000000
--- a/perl-install/install/share/upgrade/conectiva.10/pre.keep-kde-profile
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-mkdir -p /usr/share/apps/konqueror/profiles
-for i in Conectiva cnccontrol conectiva-smb filemanagement-conectiva; do
- cp -f /usr/lib/kde3/share/apps/konqueror/profiles/$i /usr/share/apps/konqueror/profiles
-done
diff --git a/perl-install/install/share/upgrade/conectiva.10/pre.merge-groups.sh b/perl-install/install/share/upgrade/conectiva.10/pre.merge-groups.sh
deleted file mode 100755
index b735d2bbe..000000000
--- a/perl-install/install/share/upgrade/conectiva.10/pre.merge-groups.sh
+++ /dev/null
@@ -1,87 +0,0 @@
-#!/bin/bash
-#
-# cnc2mdv /etc/group file merger
-#
-# What it does:
-#
-# - Adds three new groups:
-# - Check if these groups or its gids already exists;
-# - Remove root from the wheel group.
-#
-
-destfile=${destfile:-/etc/group}
-backupfile=${destfile}.cnc2mdv
-
-# these are the new groups that are introduced by Mandriva
-groups=( usb 43 tape 21 nogroup 65534 )
-
-# error codes
-group_already_exists_=8
-group_already_exists=9
-gid_not_unique=4
-
-sort_groups_by_gid()
-{
- sort -nt: +2 -3 -o $destfile $destfile #wow
-
- return 0
-}
-
-
-add_new_groups()
-{
- for (( i=0; i < ${#groups[@]}; i += 2)); do
- n=$[$i+1]
- gid=${groups[$n]}
- gname=${groups[$i]}
-
- errors=yes
- while [ $errors = "yes" ]; do
- groupadd -g $gid $gname
- case $? in
- 0)
- # ok, no errors, group really added
- errors=no
- ;;
-
- $group_already_exists | $group_already_exists_ )
- # ok, no problem at all
- errors=no
- ;;
-
- $gid_not_unique)
- # bleh, increment gid and try again
- # hum, but if ... 65534?
- gid=$[$gid+1]
- ;;
-
- *)
- echo "unexpected error during groupadd ($?)"
- return 1;
- ;;
- esac
- done # while errors
- done # for
-
- return 0
-}
-
-
-remove_root_from_wheel()
-{
- sed -i 's/\(wheel:[^:]*:[^:]*:\)root,*\(.*\)/\1\2/' ${destfile}
-
- return 0
-}
-
-
-main()
-{
- add_new_groups &&
- sort_groups_by_gid &&
- remove_root_from_wheel
-}
-
-main
-
-# vim:ts=4:sw=4:ai
diff --git a/perl-install/install/share/upgrade/conectiva.10/pre.remove-conflicting-files.sh b/perl-install/install/share/upgrade/conectiva.10/pre.remove-conflicting-files.sh
deleted file mode 100755
index 3db2fee4f..000000000
--- a/perl-install/install/share/upgrade/conectiva.10/pre.remove-conflicting-files.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-rm -f /usr/share/apps/kdm
diff --git a/perl-install/install/steps.pm b/perl-install/install/steps.pm
index 4c7d058e2..0319a6575 100644
--- a/perl-install/install/steps.pm
+++ b/perl-install/install/steps.pm
@@ -1,4 +1,4 @@
-package install::steps; # $Id$
+package install::steps;
use diagnostics;
use strict;
@@ -126,7 +126,13 @@ sub selectLanguage {
$o->charsetChanged;
addToBeDone {
- lang::write_langs($o->{locale}{langs});
+ if ($o->{isUpgrade}) {
+ #- preserve existing locale settings (mga#24671)
+ $o->{locale} = lang::read();
+ $o->{locale}{langs}{$o->{locale}{lang}} = 1;
+ } else {
+ lang::write_langs($o->{locale}{langs});
+ }
} 'formatPartitions';
addToBeDone {
lang::write_and_install($o->{locale}, $o->do_pkgs);
@@ -143,12 +149,6 @@ sub selectKeyboard {
or log::l("loadkeys failed");
keyboard::write($o->{keyboard});
} 'installPackages' if !$o->{isUpgrade} || !$o->{keyboard}{unsafe};
-
- if ($o->{raw_X}) {
- require Xconfig::default;
- Xconfig::default::config_keyboard($o->{raw_X}, $o->{keyboard});
- $o->{raw_X}->write;
- }
}
#------------------------------------------------------------------------------
sub acceptLicense {}
@@ -182,9 +182,10 @@ sub selectInstallClass {
#------------------------------------------------------------------------------
sub doPartitionDisksBefore {
my ($o) = @_;
+ log::l("fdisk before:\n" . any::fdisk());
eval {
+ eval { fs::mount::umount("$::prefix/sys/kernel/debug/usb") };
eval { fs::mount::umount("$::prefix/sys") };
- eval { fs::mount::umount("$::prefix/proc/bus/usb") };
eval { fs::mount::umount("$::prefix/proc") };
eval { fs::mount::umount_all($o->{fstab}) };
eval { sleep 1; fs::mount::umount_all($o->{fstab}) } if $@; #- HACK
@@ -196,16 +197,19 @@ sub doPartitionDisksAfter {
my ($o) = @_;
fs::any::write_hds($o->{all_hds}, $o->{fstab}, !$o->{isUpgrade}, sub { $o->rebootNeeded }, $o);
+ log::l("fdisk after\n" . any::fdisk());
if ($::local_install) {
- my $p = fs::get::mntpoint2part($::prefix, [ fs::read_fstab('', '/proc/mounts') ]);
- my $part = find { fs::get::is_same_hd($p, $_) } @{$o->{fstab}};
- $part ||= $o->{fstab}[0];
+ #- We skipped the setupSCSI step, so $o->{fstab} will be empty. We need to
+ #- add a fake entry, to satisfy the following check for a root partition.
+ my $fstab = [ fs::read_fstab('', '/proc/mounts') ];
+ my $part = fs::get::mntpoint2part($::prefix, $fstab) || $fstab->[0];
$part->{mntpoint} = '/';
$part->{isMounted} = 1;
+ $o->{fstab} = [ $part ];
}
- fs::any::check_hds_boot_and_root($o->{all_hds}, $o->{fstab});
+ fs::any::check_hds_boot_and_root($o->{all_hds}, $o->{fstab}, $o->{isUpgrade}, $o->{match_all_hardware});
if ($o->{partitioning}{use_existing_root}) {
#- ensure those partitions are mounted so that they are not proposed in choosePartitionsToFormat
@@ -264,6 +268,9 @@ sub selectSupplMedia { '' }
sub choosePackages {
my ($o, $o_compssListLevel) = @_;
+ #- clear the mirror cache before upgrading:
+ eval { rm_rf("$::prefix/var/cache/urpmi/mirrors.cache") };
+
#- now for upgrade, package that must be upgraded are
#- selected first, after is used the same scheme as install.
@@ -280,12 +287,9 @@ sub choosePackages {
$availableCorrected;
}
-sub upgrading_redhat() {
- #- remove weird config files that bother Xconfig::* too much
- unlink "$::prefix/etc/X11/XF86Config";
- unlink "$::prefix/etc/X11/XF86Config-4";
+sub live_patch_URPM() {
- sub prefering_mdv {
+ sub prefering_mga {
my ($lpkg, $rpkg_ver, $c) = @_;
my $lpkg_ver = $lpkg->version . '-' . $lpkg->release;
log::l($lpkg->name . ' ' . ': prefering ' . ($c == 1 ? "$lpkg_ver over $rpkg_ver" : "$rpkg_ver over $lpkg_ver"));
@@ -295,9 +299,9 @@ sub upgrading_redhat() {
undef *URPM::Package::compare_pkg;
*URPM::Package::compare_pkg = sub {
my ($lpkg, $rpkg) = @_;
- my $c = ($lpkg->release =~ /mdv|mnb/ ? 1 : 0) - ($rpkg->release =~ /mdv|mnb/ ? 1 : 0);
+ my $c = ($lpkg->release =~ /mga/ ? 1 : 0) - ($rpkg->release =~ /mga/ ? 1 : 0);
if ($c) {
- prefering_mdv($lpkg, $rpkg->version . '-' . $rpkg->release, $c);
+ prefering_mga($lpkg, $rpkg->version . '-' . $rpkg->release, $c);
$c;
} else {
&$old_compare_pkg;
@@ -308,15 +312,21 @@ sub upgrading_redhat() {
undef *URPM::Package::compare;
*URPM::Package::compare = sub {
my ($lpkg, $rpkg_ver) = @_;
- my $c = ($lpkg->release =~ /mdv|mnb/ ? 1 : 0) - ($rpkg_ver =~ /mdv|mnb/ ? 1 : 0);
+ my $c = ($lpkg->release =~ /mga/ ? 1 : 0) - ($rpkg_ver =~ /mga/ ? 1 : 0);
if ($c) {
- prefering_mdv($lpkg, $rpkg_ver, $c);
+ prefering_mga($lpkg, $rpkg_ver, $c);
return $c;
}
&$old_compare;
};
}
+sub upgrading_redhat() {
+ #- remove weird config files that bother Xconfig::* too much
+ unlink "$::prefix/etc/X11/XF86Config";
+ unlink "$::prefix/etc/X11/XF86Config-4";
+}
+
sub beforeInstallPackages {
my ($o) = @_;
@@ -324,10 +334,8 @@ sub beforeInstallPackages {
if ($o->{isUpgrade}) {
$o->{modules_conf}->merge_into(modules::any_conf->read);
- }
- #- save these files in case of upgrade failure.
- if ($o->{isUpgrade}) {
+ #- save these files in case of upgrade failure.
foreach (@filesToSaveForUpgrade) {
unlink "$::prefix/$_.mdkgisave";
if (-e "$::prefix/$_") {
@@ -337,6 +345,14 @@ sub beforeInstallPackages {
foreach (@filesNewerToUseAfterUpgrade) {
unlink "$::prefix/$_.rpmnew";
}
+
+ log::l("converting filesystem for usrmove");
+ if (!run_program::run('/usr/lib/dracut/modules.d/30convertfs/convertfs.sh', $::prefix)) {
+ mkdir_p("$::prefix/root/drakx") if ! -d "$::prefix/root/drakx";
+ # logs are only copied to $::prefix/root/drakx at the end of each step, so do it manually now
+ eval { cp_af("/tmp/ddebug.log", "$::prefix/root/drakx") };
+ die "Unable to convert filesystem prior to upgrade. Check ddebug.log for details";
+ }
}
#- mainly for upgrading redhat packages, but it can help other
@@ -348,6 +364,8 @@ sub beforeInstallPackages {
);
rm_rf(@to_remove);
+ live_patch_URPM() if $o->{isUpgrade} !~ /mageia/;
+
if ($o->{isUpgrade} eq 'redhat') {
upgrading_redhat();
}
@@ -361,18 +379,17 @@ sub beforeInstallPackages {
#- some packages need such files for proper installation.
install::any::write_fstab($o);
- require network::network;
- network::network::add2hosts("localhost", "127.0.0.1");
-
#- resolv.conf will be modified at boot time
#- the following will ensure we have a working DNS during install
if (-e "/etc/resolv.conf" && ! -e "$::prefix/etc/resolv.conf") {
cp_af("/etc/resolv.conf", "$::prefix/etc");
}
- if (-e '/tmp/.X11-unix') {
- mkdir "$::prefix/tmp/.X11-unix";
- run_program::run('mount', '--bind', '/tmp/.X11-unix', "$::prefix/tmp/.X11-unix");
+ foreach ('/run', '/tmp/.X11-unix') {
+ if (-e $_) {
+ mkdir "$::prefix/$_";
+ run_program::run('mount', '--bind', $_, "$::prefix/$_");
+ }
}
log::l("setting excludedocs to $o->{excludedocs}");
@@ -410,6 +427,12 @@ sub installCallback {
sub installPackages {
my ($o, $o_interactive) = @_;
+
+ my $p = fs::get::root_($o->{fstab});
+ if (isLUKS($p)) {
+ install::pkgs::selectPackage($o->{packages}, install::pkgs::packageByName($o->{packages}, 'plymouth'));
+ }
+
my $packages = $o->{packages};
install::pkgs::remove_marked_ask_remove($packages, \&installCallback);
@@ -417,20 +440,23 @@ sub installPackages {
#- small transaction will be built based on this selection and depslist.
my @toInstall = install::pkgs::packagesToInstall($packages);
+ my $exit_code;
my $time = time();
{
local $ENV{DURING_INSTALL} = 1;
+ local $ENV{LOCAL_INSTALL} = 1 if $::local_install;
local $ENV{TMPDIR} = '/tmp';
local $ENV{TMP} = '/tmp';
local $ENV{HOME};
local $packages->{options}{auto} = !$o_interactive;
- install::pkgs::install($o->{isUpgrade}, \@toInstall, $packages, \&installCallback);
+ $exit_code = install::pkgs::install($o->{isUpgrade}, \@toInstall, $packages, \&installCallback);
}
any::writeandclean_ldsoconf($::prefix);
- run_program::rooted_or_die($::prefix, 'ldconfig');
-
log::l("Install took: ", formatTimeRaw(time() - $time));
+ run_program::rooted_or_die($::prefix, 'ldconfig') if !$o->{justdb};
+
+ $exit_code and die "Installation failed";
install::media::log_sizes();
scalar(@toInstall); #- return number of packages installed.
}
@@ -445,7 +471,7 @@ Either your cdrom drive or your cdrom is defective.
Check the cdrom on an installed computer using \"rpm -qpl media/main/*.rpm\"
") if any { m|read failed: Input/output error| } cat_("$::prefix/root/drakx/install.log");
- if (arch() !~ /^sparc/) { #- TODO restore it as may be needed for sparc
+ if (!$o->{justdb}) {
-x "$::prefix/usr/bin/dumpkeys" or $::testing or die
"Some important packages did not get installed properly.
@@ -468,6 +494,14 @@ Consoles 1,3,4,7 may also contain interesting information";
harddrake::autoconf::cpufreq();
harddrake::autoconf::floppy();
+ # prevent slow boot on first boot:
+ my $cfg_file = "$::prefix/etc/sysconfig/harddrake2/kernel";
+ if (-f $cfg_file) {
+ my %kernel_config = getVarsFromSh($cfg_file);
+ $kernel_config{IS_LAPTOP} = bool2text(detect_devices::isLaptop());
+ setVarsInSh($cfg_file, \%kernel_config);
+ }
+
#- for mandrake_firstime
touch "$::prefix/var/lock/TMP_1ST";
@@ -478,11 +512,6 @@ Consoles 1,3,4,7 may also contain interesting information";
#- else if eth0 is not existing, glibc segfaults.
substInFile { s/\s*wins// if /^\s*hosts\s*:/ } "$::prefix/etc/nsswitch.conf";
- #- make sure some services have been enabled (or a catastrophic restart will occur).
- #- these are normally base package post install scripts or important services to start.
- run_program::rooted($::prefix, "chkconfig", "--add", $_) foreach
- qw(netfs network rawdevices sound kheader keytable syslog crond portmap);
-
if ($o->{mouse}{device} =~ /ttyS/) {
log::l("disabling gpm for serial mice (does not get along nicely with X)");
run_program::rooted($::prefix, "chkconfig", "--del", "gpm");
@@ -630,7 +659,8 @@ sub configureNetwork {
my ($o) = @_;
require network::network;
network::network::configure_network($o->{net}, $o, $o->{modules_conf});
- configure_firewall($o) if !$o->{isUpgrade};
+
+ configure_firewall($o) if !$o->{isUpgrade} && !$o->{justdb};
#- only a http proxy can be used by stage1
#- the method is http even for ftp connections through a http proxy
@@ -678,7 +708,14 @@ sub configureTimezone {
my ($o) = @_;
install::any::preConfigureTimezone($o);
- $o->pkg_install('ntp') if $o->{timezone}{ntp};
+ if ($o->{timezone}{ntp}) {
+ # We prefer chrony, but we'll deal with ntpd for the sake of upgrades
+ my $pkg = install::pkgs::packageByName($o->{packages}, 'chrony');
+ unless ($pkg && $pkg->flag_installed) {
+ $pkg = install::pkgs::packageByName($o->{packages}, 'ntp');
+ $o->pkg_install('chrony') unless $pkg && $pkg->flag_installed;
+ }
+ }
require timezone;
timezone::write($o->{timezone});
@@ -721,11 +758,13 @@ sub addUser {
any::add_users($users, $o->{authentication});
- if ($o->{autologin}) {
- $o->{desktop} ||= first(any::sessions());
- $o->pkg_install("autologin") if !member($o->{desktop}, 'KDE', 'KDE4', 'GNOME');
+ if ($o->{rpmsrate_flags_chosen}{CAT_X}) {
+ my $autologin = any::get_autologin();
+ $autologin->{user} = $o->{autologin};
+ $autologin->{desktop} = $o->{desktop} if $o->{desktop};
+ $autologin->{dm} = $o->{dm} if $o->{dm};
+ any::set_autologin($o->do_pkgs, $autologin, $o->{step}{auto});
}
- any::set_autologin($o->do_pkgs, $o->{autologin}, $o->{desktop});
install::any::disable_user_view() if @$users == ();
}
@@ -743,8 +782,9 @@ sub read_bootloader_config {
sub setupBootloaderBefore {
my ($o) = @_;
+ my $bool = $o->{meta_class} ne 'server';
any::setupBootloaderBefore($o->do_pkgs, $o->{bootloader}, $o->{all_hds}, $o->{fstab}, $o->{keyboard},
- $o->{allowFB}, $o->{vga}, $o->{meta_class} ne 'server');
+ $o->{allowFB}, $o->{vga}, $bool, $bool);
}
sub setupBootloader {
@@ -802,7 +842,7 @@ sub miscellaneousAfter {
addToBeDone {
addVarsInSh("$::prefix/etc/sysconfig/system", { META_CLASS => $o->{meta_class} });
- eval { install::any::set_security($o) };
+ eval { install::any::set_security($o) } if !$o->{isUpgrade};
} 'installPackages';
}
@@ -822,18 +862,18 @@ sub exitInstall {
my $report = '/root/drakx/report.bug';
unlink "$::prefix$report", "$::prefix$report.gz";
output "$::prefix$report", install::any::report_bug();
- run_program::rooted($::prefix, 'gzip', $report);
+ run_program::rooted($::prefix, 'xz', $report);
};
output("$::prefix/root/drakx/package_list.pl", install::any::selected_leaves_pl($o));
- eval { install::any::getAndSaveAutoInstallFloppies($o, 1) } if arch() !~ /^ppc/;
- eval { output "$::prefix/root/drakx/README", "This directory contains several installation-related files,
+ eval { install::any::getAndSaveAutoInstallFloppies($o, 1) };
+ eval { output "$::prefix/root/drakx/README", sprintf("This directory contains several installation-related files,
mostly log files (very useful if you ever report a bug!).
-Beware that some Mandriva Linux tools rely on the contents of some
+Beware that some %s tools rely on the contents of some
of these files... so remove any file from here at your own
risk!
-" };
+", "Mageia") };
#- wait for remaining processes.
foreach (@{$o->{waitpids}}) {
waitpid $_, 0;
@@ -885,8 +925,8 @@ sub upNetwork {
start_network_interface($o);
return 1;
} elsif (!$b_pppAvoided) {
- log::l("starting network (ppp: $o->{net}{type})");
- eval { modules::load(qw(serial ppp bsd_comp ppp_deflate)) };
+ log::l("starting network (PPP: $o->{net}{type})");
+ eval { modules::load(qw(serial bsd_comp ppp_deflate)) };
run_program::rooted($::prefix, "/etc/rc.d/init.d/syslog", "start");
start_network_interface($o);
return 1;
@@ -910,7 +950,7 @@ sub downNetwork {
} elsif (!network_is_cheap($o)) {
stop_network_interface($o);
run_program::rooted($::prefix, "/etc/rc.d/init.d/syslog", "stop");
- eval { modules::unload(qw(ppp_deflate bsd_comp ppp serial)) };
+ eval { modules::unload(qw(ppp_deflate bsd_comp serial)) };
return 1;
}
}
diff --git a/perl-install/install/steps_auto_install.pm b/perl-install/install/steps_auto_install.pm
index d4b39e720..ceaab7ed3 100644
--- a/perl-install/install/steps_auto_install.pm
+++ b/perl-install/install/steps_auto_install.pm
@@ -1,4 +1,4 @@
-package install::steps_auto_install; # $Id$
+package install::steps_auto_install;
use diagnostics;
use strict;
diff --git a/perl-install/install/steps_curses.pm b/perl-install/install/steps_curses.pm
index 44fe83546..30fd693a6 100644
--- a/perl-install/install/steps_curses.pm
+++ b/perl-install/install/steps_curses.pm
@@ -1,4 +1,4 @@
-package install::steps_curses; # $Id$
+package install::steps_curses;
use diagnostics;
use strict;
@@ -19,7 +19,7 @@ use common;
my $banner;
sub banner {
my ($cui, $step) = @_;
- my $text = N("Mandriva Linux Installation %s", "| $step");
+ my $text = N("%s Installation %s", "Mageia", "| $step");
$banner ||= do {
my $win = $cui->add(undef, 'Window', '-x' => 1, '-y' => 0, '-height' => 1);
$win->add(undef, 'Label');
diff --git a/perl-install/install/steps_gtk.pm b/perl-install/install/steps_gtk.pm
index b5614e670..fa34c947c 100644
--- a/perl-install/install/steps_gtk.pm
+++ b/perl-install/install/steps_gtk.pm
@@ -1,4 +1,4 @@
-package install::steps_gtk; # $Id$
+package install::steps_gtk;
use diagnostics;
use strict;
@@ -15,8 +15,8 @@ use install::steps_interactive;
use interactive::gtk;
use xf86misc::main;
use common;
-use mygtk2;
-use ugtk2 qw(:helpers :wrappers :create);
+use mygtk3;
+use ugtk3 qw(:helpers :wrappers :create);
use devices;
use modules;
use install::gtk;
@@ -36,115 +36,126 @@ sub new($$) {
if (!$::local_install &&
($::testing ? $ENV{DISPLAY} ne $wanted_DISPLAY : $ENV{DISPLAY} =~ /^:\d/)) { #- is the display local or distant?
- my $f = "/tmp/Xconf";
- if (!$::testing) {
- devices::make("/dev/kbd");
- }
-
- #- /tmp is mostly tmpfs, but not fully, since it doesn't allow: mount --bind /tmp/.X11-unix /mnt/tmp/.X11-unix
- mkdir '/tmp/.X11-unix';
- run_program::run('mount', '-t', 'tmpfs', 'none', '/tmp/.X11-unix');
-
- my $launchX = sub {
- my ($server, $Driver) = @_;
-
- mkdir '/var/log' if !-d '/var/log';
-
- my @options = $wanted_DISPLAY;
- if ($server eq 'Xnest') {
- push @options, '-ac', '-geometry', $o->{vga} || ($o->{vga16} ? '640x480' : '800x600');
- } else {
- install::gtk::createXconf($f, @{$o->{mouse}}{'Protocol', 'device'}, $o->{mouse}{wacom}[0], $Driver);
-
- push @options, '-allowMouseOpenFail', '-xf86config', $f if arch() !~ /^sparc/;
- push @options, 'vt7', '-dpi', '75';
- push @options, '-nolisten', 'tcp';
-
- #- old weird servers: Xsun
- push @options, '-fp', '/usr/share/fonts:unscaled' if $server =~ /Xsun/;
- }
-
- if (!fork()) {
- c::setsid();
- exec $server, @options or c::_exit(1);
- }
-
- #- wait for the server to start
- foreach (1..5) {
- sleep 1;
- last if fuzzy_pidofs(qr/\b$server\b/);
- log::l("$server still not running, trying again");
- }
- my $nb;
- my $start_time = time();
- foreach (1..60) {
- log::l("waiting for the server to start ($_ $nb)");
- log::l("Server died"), return 0 if !fuzzy_pidofs(qr/\b$server\b/);
- $nb++ if xf86misc::main::Xtest($wanted_DISPLAY);
- if ($nb > 2) { #- one succeeded test is not enough :-(
- log::l("AFAIK X server is up");
- return 1;
- }
- time() - $start_time < 60 or last;
- time() - $start_time > 8 and print N("Xorg server is slow to start. Please wait..."), "\n";
- sleep 1;
- }
- log::l("Timeout!!");
- 0;
- };
- my @servers = qw(Driver:fbdev Driver:vesa); #-)
- if ($::testing) {
- @servers = 'Xnest';
- } elsif (arch() =~ /ia64/) {
- require Xconfig::card;
- my ($card) = Xconfig::card::probe();
- @servers = map { if_($_, "Driver:$_") } $card && $card->{Driver}, 'fbdev';
- } elsif (arch() =~ /i.86/) {
- require Xconfig::card;
- my ($card) = Xconfig::card::probe();
- if ($card && $card->{card_name} eq 'i810') {
- # early i810 do not support VESA:
- log::l("graphical installer not supported on early i810");
- undef @servers;
- }
- }
-
- foreach (@servers) {
- log::l("Trying with server $_");
- my ($prog, $Driver) = /Driver:(.*)/ ? ('Xorg', $1) : /Xsun|Xnest|^X_move$/ ? $_ : "XF86_$_";
- if (/FB/i) {
- !$o->{vga16} && $o->{allowFB} or next;
-
- $o->{allowFB} = &$launchX($prog, $Driver) #- keep in mind FB is used.
- and goto OK;
- } else {
- $o->{vga16} = 1 if /VGA16/;
- &$launchX($prog, $Driver) and goto OK;
- }
- }
- return undef;
+ _setup_and_start_X($o, $wanted_DISPLAY) or return;
}
- OK:
+
$ENV{DISPLAY} = $wanted_DISPLAY;
require detect_devices;
if (detect_devices::is_xbox()) {
modules::load('xpad');
run_program::run('xset', 'm', '1/8', '1');
}
- run_program::raw({ detach => 1 }, 'drakx-matchbox-window-manager');
+ if (detect_devices::is_qemu()) {
+ mkdir_p('/run/spice-vdagentd');
+ run_program::raw({ detach => 1 }, 'spice-vdagentd', '>', '/dev/null', '2>', '/dev/null', '-X');
+ run_program::raw({ detach => 1 }, 'spice-vdagent', '>', '/dev/null', '2>', '/dev/null');
+ }
+ any::disable_x_screensaver();
+ run_program::raw({ detach => 1 }, 'mutter', '--x11');
install::gtk::init_gtk($o);
install::gtk::init_sizes($o);
install::gtk::install_theme($o);
install::gtk::create_steps_window($o);
_may_configure_framebuffer_640x480($o);
- $ugtk2::grab = 1;
+ $ugtk3::grab = 1;
$o = (bless {}, ref($type) || $type)->SUPER::new($o);
$o->interactive::gtk::new;
+ gtkset_mousecursor_normal();
$o;
}
+sub _setup_and_start_X {
+ my ($o, $wanted_DISPLAY) = @_;
+ my $f = "/tmp/Xconf";
+
+ #- /tmp is mostly tmpfs, but not fully, since it doesn't allow: mount --bind /tmp/.X11-unix /mnt/tmp/.X11-unix
+ mkdir '/tmp/.X11-unix';
+ run_program::run('mount', '-t', 'tmpfs', 'none', '/tmp/.X11-unix');
+
+
+ my @servers = qw(Driver:fbdev Driver:vesa); #-)
+ if ($::testing) {
+ @servers = 'Xnest';
+ } elsif (is_uefi()) {
+ @servers = 'Driver:fbdev';
+ } elsif (arch() =~ /i.86/) {
+ require Xconfig::card;
+ my ($card) = Xconfig::card::probe();
+ if ($card && $card->{card_name} eq 'i810') {
+ # early i810 do not support VESA:
+ log::l("graphical installer not supported on early i810");
+ undef @servers;
+ }
+ }
+
+ foreach (@servers) {
+ log::l("Trying with server $_");
+ my ($prog, $Driver) = /Driver:(.*)/ ? ('Xorg', $1) : $_;
+ if (/FB/i) {
+ !$o->{vga16} && $o->{allowFB} or next;
+
+ $o->{allowFB} = _launchX($o, $f, $prog, $Driver, $wanted_DISPLAY) #- keep in mind FB is used.
+ and return 1;
+ } else {
+ $o->{vga16} = 1 if /VGA16/;
+ _launchX($o, $f, $prog, $Driver, $wanted_DISPLAY) and return 1;
+ }
+ }
+ return undef;
+}
+
+sub _launchX {
+ my ($o, $f, $server, $Driver, $wanted_DISPLAY) = @_;
+
+ mkdir '/var/log' if !-d '/var/log';
+
+ my @options = $wanted_DISPLAY;
+ if ($server eq 'Xnest') {
+ push @options, '-ac', '-geometry', $o->{vga} || ($o->{vga16} ? '640x480' : '1024x768');
+ } else {
+ install::gtk::createXconf($f, $Driver);
+
+ push @options, '-allowMouseOpenFail', '-xf86config', $f;
+ push @options, 'vt7', '-dpi', '75';
+ push @options, '-nolisten', 'tcp';
+ }
+
+ if (!fork()) {
+ c::setsid();
+ exec $server, @options or c::_exit(1);
+ }
+
+ #- wait for the server to start
+ foreach (1..5) {
+ sleep 1;
+ last if fuzzy_pidofs(qr/\b$server\b/);
+ log::l("$server still not running, trying again");
+ }
+ my $nb;
+ my $start_time = time();
+ foreach (1..60) {
+ log::l("waiting for the server to start ($_ $nb)");
+ if (!fuzzy_pidofs(qr/\b$server\b/)) {
+ log::l("Server died");
+ log::l(any::header("Xorg.log"), cat_("/var/log/Xorg.0.log"));
+ return 0 if !fuzzy_pidofs(qr/\b$server\b/);
+ }
+ $nb++ if xf86misc::main::Xtest($wanted_DISPLAY);
+ if ($nb > 2) { #- one succeeded test is not enough :-(
+ log::l("AFAIK X server is up");
+ return 1;
+ }
+ time() - $start_time < 60 or last;
+ time() - $start_time > 8 and print N("Xorg server is slow to start. Please wait..."), "\n";
+ sleep 1;
+ }
+ log::l("Timeout!!");
+ log::l(any::header("Xorg.log"), cat_("/var/log/Xorg.0.log"));
+ 0;
+}
+
#- if we success to start X in 640x480 using driver "vesa",
#- we configure to use fb on installed system (to ensure splashy works)
#- (useful on 800x480 netbooks)
@@ -175,7 +186,7 @@ sub leavingStep {
sub charsetChanged {
my ($o) = @_;
- Gtk2->set_locale;
+ c::init_setlocale();
install::gtk::load_font($o);
install::gtk::create_steps_window($o);
}
@@ -203,8 +214,8 @@ sub selectLanguage {
$o->ask_warn('',
formatAlaTeX(N("Your system is low on resources. You may have some problem installing
-Mandriva Linux. If that occurs, you can try a text install instead. For this,
-press `F1' when booting on CDROM, then enter `text'."))) if availableRamMB() < 70; # 70MB
+%s. If that occurs, you can try a text install instead. For this,
+press `F1' when booting on CDROM, then enter `text'.", N("Mageia")))) if availableRamMB() < 70; # 70MB
}
@@ -229,14 +240,22 @@ sub selectMouse {
}
}
+sub setPackages {
+ my ($o) = @_;
+ my (undef, $old_title) = get_default_step_items();
+ set_default_step_items(N("Media Selection") || $old_title);
+ install::any::setPackages($o);
+ set_default_step_items($old_title);
+}
+
sub reallyChooseDesktop {
my ($o, $title, $message, $choices, $choice) = @_;
- my $w = ugtk2->new($title);
+ my $w = ugtk3->new($title);
my %tips = (
- KDE => N("Install Mandriva KDE Desktop"),
- GNOME => N("Install Mandriva GNOME Desktop"),
+ KDE => N("Install %s Plasma Desktop", N("Mageia")),
+ GNOME => N("Install %s GNOME Desktop", N("Mageia")),
Custom => N("Custom install"),
);
my $prev;
@@ -247,39 +266,38 @@ sub reallyChooseDesktop {
tip => $tips{$val->[0]},
toggled => sub { $choice = $val if $_[0]->get_active },
active => $choice == $val,
- $prev ? (group => $prev->get_group) : ());
+ if_($prev, join => $prev));
$prev->signal_connect(key_press_event => sub {
my (undef, $event) = @_;
if (!$event || ($event->keyval & 0x7f) == 0xd) {
- Gtk2->main_quit;
+ Gtk3->main_quit;
}
});
my $img = gtksignal_connect(
- gtkadd(Gtk2::EventBox->new, gtknew('Image', file => "desktop-$val->[0]")),
+ gtkadd(Gtk3::EventBox->new, gtknew('Image', file => "desktop-$val->[0]")),
'button-press-event' => sub {
my %title = (
- KDE => N("KDE Desktop"),
+ KDE => N("Plasma Desktop"),
GNOME => N("GNOME Desktop"),
Custom => N("Custom Desktop"),
);
- my $wp = ugtk2->new($title{$val->[0]}, transient => $w->{real_window}, modal => 1);
+ my $wp = ugtk3->new($title{$val->[0]}, transient => $w->{real_window}, modal => 1);
gtkadd($wp->{rwindow},
- gtkpack_(Gtk2::VBox->new,
+ gtknew('VBox', children => [
0, gtknew('Title2', label => N("Here's a preview of the '%s' desktop.", $val->[1]),
# workaround infamous 6 years old gnome bug #101968:
- width => mygtk2::get_label_width(),
+ width => mygtk3::get_label_width(),
),
1, gtknew('Image', file => "desktop-$val->[0]-big"),
- 0, Gtk2::HSeparator->new,
- 0, gtkpack(create_hbox('end'),
- gtknew('Button', text => N("Close"), clicked => sub { Gtk2->main_quit })
- ),
- ),
+ 0, gtknew('HSeparator'),
+ 0, gtknew('HButtonBox', layout => 'end', children_loose => [
+ gtknew('Button', text => N("Close"), clicked => sub { Gtk3->main_quit })
+ ]),
+ ]),
);
$wp->{real_window}->set_size_request(-1, -1);
$wp->{real_window}->grab_focus;
- $wp->{real_window}->grab_focus;
$wp->{real_window}->show_all;
$wp->main;
});
@@ -289,19 +307,17 @@ sub reallyChooseDesktop {
]);
} @$choices;
- ugtk2::gtkadd($w->{window},
+ ugtk3::gtkadd($w->{window},
gtknew('VBox', children => [
0, gtknew('Title2',
# workaround infamous 6 years old gnome bug #101968:
- width => mygtk2::get_label_width(), label => $message . ' ' .
+ width => mygtk3::get_label_width(), label => $message . ' ' .
N("Click on images in order to see a bigger preview")),
1, gtknew('HButtonBox', children_loose => \@l),
0, $w->create_okcancel(N("Next"), undef, '',
[ gtknew('Install_Button', text => N("Help"),
clicked => sub {
- interactive::gtk::display_help(
- $o,
- { interactive_help_id => 'choosePackages#choose-graphical-env' }, $w);
+ interactive::gtk::display_help($o, { interactive_help_id => 'chooseDesktop' });
}), undef, 1 ])
]));
$w->main;
@@ -312,37 +328,41 @@ sub reallyChooseDesktop {
sub reallyChooseGroups {
my ($o, $size_to_display, $individual, $_compssUsers) = @_;
- my $w = ugtk2->new(N("Package Group Selection"));
+ my $w = ugtk3->new(N("Package Group Selection"));
my $w_size = gtknew('Label_Left', text => &$size_to_display, padding => [ 0, 0 ]);
+ my @entries;
my $entry = sub {
my ($e) = @_;
- gtknew('CheckButton',
+ my $w = gtknew('CheckButton',
text => translate($e->{label}),
tip => translate($e->{descr}),
active_ref => \$e->{selected},
toggled => sub {
gtkset($w_size, text => &$size_to_display);
});
+ push @entries, $w;
+ $w;
};
#- when restarting this step, it might be necessary to reload the compssUsers.pl (bug 11558). kludgy.
if (!ref $o->{gtk_display_compssUsers}) { install::any::load_rate_files($o) }
- ugtk2::gtkadd($w->{window},
- gtknew('VBox', children => [
- 1, $o->{gtk_display_compssUsers}->($entry),
- 1, '',
- 0, if_($individual,
- gtknew('CheckButton', text => N("Individual package selection"), active_ref => $individual),
- ),
- 0, $w_size,
- 0, Gtk2::HSeparator->new,
- 0, gtknew('HButtonBox', layout => 'edge', children_tight => [
- gtknew('Install_Button', text => N("Help"), clicked => sub {
- interactive::gtk::display_help($o, { interactive_help_id => 'choosePackages#choosePackagesGroups' }, $w) }),
- gtknew('Button', text => N("Next"), clicked => sub { Gtk2->main_quit }),
- ]),
- ]),
+ ugtk3::gtkadd($w->{window},
+ gtknew('VBox', children => [
+ 1, gtknew('ScrolledWindow', child => $o->{gtk_display_compssUsers}->($entry)),
+ if_($individual,
+ 0, gtknew('CheckButton', text => N("Individual package selection"), active_ref => $individual),
+ ),
+ 0, $w_size,
+ 0, gtknew('HSeparator'),
+ 0, gtknew('HButtonBox', layout => 'edge', children_tight => [
+ gtknew('Install_Button', text => N("Help"), clicked => sub {
+ interactive::gtk::display_help($o, { interactive_help_id => 'choosePackageGroups' }) }),
+ gtknew('Button', text => N("Unselect All"), clicked => sub { $_->set_active(0) foreach @entries }),
+ gtknew('Button', text => N("Next"), clicked => sub { Gtk3->main_quit }),
+ ]),
+ ],
+ )
);
$w->main;
1;
@@ -395,16 +415,17 @@ sub choosePackagesTree {
},
get_info => sub {
my $p = install::pkgs::packageByName($packages, $_[0]) or return '';
+ my $description = install::pkgs::get_pkg_info($p);
my $imp = translate($install::pkgs::compssListDesc{$p->flag_base ? 5 : $p->rate});
my $tag = { 'foreground' => 'royalblue3' };
- $@ ? N("Bad package") :
+
[ [ N("Name: "), $tag ], [ $p->name . "\n" ],
[ N("Version: "), $tag ], [ $p->version . '-' . $p->release . "\n" ],
[ N("Size: "), $tag ], [ N("%d KB\n", $p->size / 1024) ],
if_($imp, [ N("Importance: "), $tag ], [ "$imp\n" ]),
- [ "\n" ], [ formatLines($p->description) ] ];
+ [ "\n" ], [ formatLines($description) ] ];
},
toggle_nodes => sub {
my $set_state = shift @_;
@@ -415,6 +436,7 @@ sub choosePackagesTree {
my $state = $packages->{state} ||= {};
$packages->{rpmdb} ||= install::pkgs::rpmDbOpen(); #- WORKAROUND
my @l = $isSelection ? $packages->resolve_requested($packages->{rpmdb}, $state, \%l,
+ no_recommends => $::o->{no_recommends},
callback_choices => \&install::pkgs::packageCallbackChoices) :
$packages->disable_selected($packages->{rpmdb}, $state,
map { $packages->{depslist}[$_] } keys %l);
@@ -437,7 +459,7 @@ sub choosePackagesTree {
}
}
}
- $error = [ N("You can not select/unselect this package"),
+ $error = [ N("You cannot select/unselect this package"),
formatList(20, map { my $rb = $state->{rejected}{$_}{backtrack};
my @froms = keys %{$rb->{closure} || {}};
my @unsatisfied = @{$rb->{unsatisfied} || []};
@@ -449,7 +471,7 @@ sub choosePackagesTree {
$_ . ($s ? " ($s)" : '');
} sort @ask_unselect) ];
} elsif (install::pkgs::correctSize($size / sqr(1024)) > $available / sqr(1024)) {
- $error = N("You can not select this package as there is not enough space left to install it");
+ $error = N("You cannot select this package as there is not enough space left to install it");
} elsif (@l > @_ && $common->{state}{auto_deps}) {
$o->ask_okcancel(N("Confirmation"), [ $isSelection ?
N("The following packages are going to be installed") :
@@ -461,7 +483,8 @@ sub choosePackagesTree {
#- disable selection (or unselection).
$packages->{rpmdb} ||= install::pkgs::rpmDbOpen(); #- WORKAROUND
$isSelection ? $packages->disable_selected($packages->{rpmdb}, $state, @l) :
- $packages->resolve_requested($packages->{rpmdb}, $state, { map { $_->id => 1 } @l });
+ $packages->resolve_requested($packages->{rpmdb}, $state, { map { $_->id => 1 } @l },
+ no_recommends => $::o->{no_recommends});
} else {
#- keep the changes, update visible state.
foreach (@l) {
@@ -478,19 +501,17 @@ sub choosePackagesTree {
check_interactive_to_toggle => sub {
my $p = install::pkgs::packageByName($packages, $_[0]) or return;
if ($p->flag_base) {
- $o->ask_warn('', N("This is a mandatory package, it can not be unselected"));
+ $o->ask_warn('', N("This is a mandatory package, it cannot be unselected"));
} elsif ($p->flag_installed && !$p->flag_upgrade) {
- $o->ask_warn('', N("You can not unselect this package. It is already installed"));
+ $o->ask_warn('', N("You cannot unselect this package. It is already installed"));
} elsif ($p->flag_selected && $p->flag_installed) {
- $o->ask_warn('', N("You can not unselect this package. It must be upgraded"));
+ $o->ask_warn('', N("You cannot unselect this package. It must be upgraded"));
} else { return 1 }
return;
},
auto_deps => N("Show automatically selected packages"),
interactive_help => sub {
- interactive::gtk::display_help($o,
- { interactive_help_id =>
- 'choosePackages#choosePackagesTree' }, $w) },
+ interactive::gtk::display_help($o, { interactive_help_id => 'choosePackagesTree' }) },
ok => N("Install"),
cancel => N("Previous"),
@@ -499,6 +520,11 @@ sub choosePackagesTree {
wait_message => N("Updating package selection"),
code => sub { $o->loadSavePackagesOnFloppy($packages); 1 },
},
+ { icon => 'reload',
+ help => N("Toggle between hierarchical and flat package list"),
+ wait_message => N("Updating package selection"),
+ code => sub { $common->{state}{flat} = !$common->{state}{flat}; 1 },
+ },
if_(0,
{ icon => 'feather',
help => N("Minimal install"),
@@ -531,7 +557,7 @@ sub installPackages {
my ($current_total_size, $last_size, $nb, $total_size, $last_dtime, $_trans_progress_total);
local $::noborderWhenEmbedded = 1;
- my $w = ugtk2->new(N("Installing"));
+ my $w = ugtk3->new(N("Installing"));
state $show_advertising;
my $show_release_notes;
@@ -554,8 +580,8 @@ sub installPackages {
my ($title);
my $pl = $f; $pl =~ s/\.png$/.pl/;
eval(cat_($pl)) if -e $pl;
- $banner->{text} = $title;
- Gtk2::Banner::update_text($banner);
+ # FIXME: This hasn't actually worked for years:
+ #Gtk3::Banner::update_text($banner, $title);
}
};
@@ -567,25 +593,26 @@ sub installPackages {
$pkg_log_widget->{to_bottom}->('force');
});
- my $release_notes = any::get_release_notes($o);
+ state $release_notes ||= any::get_release_notes($o);
my $rel_notes = gtknew('Button', text => N("Release Notes"),
clicked => sub { $show_release_notes = 1 });
- ugtk2::gtkadd($w->{window}, my $box = gtknew('VBox', children_tight => [
- gtknew('Image_using_pixmap', file_ref => \$advertising_image, show_ref => \$show_advertising),
+ ugtk3::gtkadd($w->{window}, my $box = gtknew('VBox', children_centered => [
+ gtknew('Image', file_ref => \$advertising_image, show_ref => \$show_advertising),
]));
+ my $progress_total = 0;
$box->pack_end(gtkshow(gtknew('VBox', border_width => 7, spacing => 3, children_loose => [
gtknew('ScrolledWindow', child => $pkg_log_widget,
- hide_ref => \$show_advertising, height => 250, to_bottom => 1),
+ hide_ref => \$show_advertising, height => $::real_windowheight - 215, to_bottom => 1),
gtknew('ProgressBar', fraction_ref => \ (my $pkg_progress), hide_ref => \$show_advertising),
gtknew('HButtonBox', layout => 'start', children_loose => [
N("Time remaining:"),
gtknew('Label', text_ref => \ (my $msg_time_remaining = N("(estimating...)"))),
]),
- gtknew('VBox', children_centered => [ gtknew('ProgressBar', fraction_ref => \ (my $progress_total), height => 25) ]),
+ gtknew('VBox', children_centered => [ gtknew('ProgressBar', fraction_ref => \$progress_total, height => 25) ]),
gtknew('HSeparator'),
- gtknew('HButtonBox', spacing => 0, layout => 'spread', children_loose => [
+ gtknew('HButtonBox', spacing => 0, layout => 'edge', children_loose => [
if_($release_notes, $rel_notes),
gtknew('HButtonBox', spacing => 5, layout => 'end',
children_loose => [ $cancel, $details ]),
@@ -598,10 +625,6 @@ sub installPackages {
$details->hide if !@install::any::advertising_images;
$w->sync;
- foreach ($cancel, $details) {
- gtkset_mousecursor_normal($_->window);
- }
-
$advertize->(0);
local *install::steps::installCallback = sub {
@@ -610,15 +633,10 @@ sub installPackages {
#- $amount and $total are used to return number of package and total size.
$nb = $amount;
$total_size = $total; $current_total_size = 0;
- $o->{install_start_time} = time();
- mygtk2::gtkadd($pkg_log_widget, text => P("%d package", "%d packages", $nb, $nb));
+ $o->{install_start_time} = 0;
+ mygtk3::gtkadd($pkg_log_widget, text => P("%d package", "%d packages", $nb, $nb));
$w->flush;
} elsif ($type eq 'open') {
- gtkval_modify(\$pkg_progress, 0);
- my $p = $packages->{depslist}[$id];
- mygtk2::gtkadd($pkg_log_widget, text => sprintf("\n%s: %s", $p->name, translate($p->summary)));
- $current_total_size += $last_size;
- $last_size = $p->size;
$advertize->(1) if $show_advertising && $total_size > 20_000_000 && time() - $change_time > 20;
# display release notes if requested, when not chrooted:
@@ -627,9 +645,17 @@ sub installPackages {
any::run_display_release_notes($release_notes);
$w->flush;
}
+ } elsif ($type eq 'inst' && $subtype eq 'start') {
+ gtkval_modify(\$pkg_progress, 0);
+ my $p = $packages->{depslist}[$id];
+ mygtk3::gtkadd($pkg_log_widget, text => sprintf("\n%s: %s", $p->name, translate($p->summary)));
+ $pkg_log_widget->{to_bottom}->('force');
+ $current_total_size += $last_size;
+ $last_size = $p->size;
$w->flush;
} elsif ($type eq 'inst' && $subtype eq 'progress') {
+ $o->{install_start_time} ||= time();
gtkval_modify(\$pkg_progress, $total ? $amount / $total : 0);
my $dtime = time() - $o->{install_start_time};
@@ -665,7 +691,7 @@ sub installPackages {
sub summary_prompt {
my ($o, $l, $check_complete) = @_;
- my $w = ugtk2->new(N("Summary"));
+ my $w = ugtk3->new(N("Summary"));
my $set_entry_labels;
my (@table, @widget_list);
@@ -679,14 +705,14 @@ sub summary_prompt {
$group = $e->{group};
push @table, [ gtknew('HBox', children_tight => [
gtknew('Title1',
- label => mygtk2::asteriskize(escape_text_for_TextView_markup_format($group))) ]), '' ];
+ label => mygtk3::asteriskize(escape_text_for_TextView_markup_format($group))) ]), '' ];
}
- $e->{widget} = gtknew('Label_Right', width => $::real_windowwidth * 0.72, alignment => [ 1, 1 ]);
+ $e->{widget} = gtknew('Label_Right', width => $::real_windowwidth * 0.72, alignment => [ 1, 1 ], line_wrap => 1, tip => $e->{tip});
push @table, [], [ gtknew('HBox', children_tight => [ $e->{widget}, gtknew('Alignment', width => 10) ]),
gtknew('Button', text => N("Configure"), clicked => sub {
$w->{rwindow}->hide;
- my ($old_icon, $old_title) = get_default_step_items();
+ my ($_old_icon, $old_title) = get_default_step_items();
set_default_step_items($e->{banner_title} || $old_title);
$e->{clicked}();
set_default_step_items($old_title);
@@ -709,9 +735,9 @@ sub summary_prompt {
};
$set_entry_labels->();
- my $help_sub = sub { interactive::gtk::display_help($o, { interactive_help_id => 'misc-params' }, $w) };
+ my $help_sub = sub { interactive::gtk::display_help($o, { interactive_help_id => 'misc-params' }) };
- ugtk2::gtkadd($w->{window},
+ ugtk3::gtkadd($w->{window},
gtknew('VBox', spacing => 5, children => [
1, gtknew('ScrolledWindow', h_policy => 'never',
child => gtknew('TextView',
@@ -735,15 +761,15 @@ sub ask_deselect_media__copy_on_disk {
my %selection = map { $_->{name} => !$_->{ignore} } @$hdlists;
if (@names > 1 || $o_copy_rpms_on_disk) {
- my $w = ugtk2->new(N("Media Selection"));
+ my $w = ugtk3->new(N("Media Selection"));
$w->sync;
- ugtk2::gtkadd(
+ ugtk3::gtkadd(
$w->{window},
gtknew('VBox', children => [
@names > 1 ? (
0, gtknew('Label_Left', padding => [ 0, 0 ],
# workaround infamous 6 years old gnome bug #101968:
- width => mygtk2::get_label_width(),
+ width => mygtk3::get_label_width(),
text => formatAlaTeX(N("The following installation media have been found.
If you want to skip some of them, you can unselect them now."))),
1, gtknew('ScrolledWindow', child => gtknew('VBox', children => [
@@ -759,17 +785,17 @@ If you want to skip some of them, you can unselect them now."))),
if_($o_copy_rpms_on_disk,
0, gtknew('Label_Left', padding => [ 0, 0 ],
# workaround infamous 6 years old gnome bug #101968:
- width => mygtk2::get_label_width(),
- text => N("You have the option to copy the contents of the CDs onto the hard drive before installation.
-It will then continue from the hard drive and the packages will remain available once the system is fully installed.")),
+ width => mygtk3::get_label_width(),
+ text => N("You have the option to copy the contents of the CDs onto the hard disk drive before installation.
+It will then continue from the hard disk drive and the packages will remain available once the system is fully installed.")),
0, gtknew('CheckButton', text => N("Copy whole CDs"), active_ref => $o_copy_rpms_on_disk),
1, gtknew('Alignment'),
0, gtknew('HSeparator'),
),
0, gtknew('HButtonBox', layout => 'edge', children_tight => [
gtknew('Install_Button', text => N("Help"), clicked => sub {
- interactive::gtk::display_help($o, { interactive_help_id => 'choosePackages' }, $w) }),
- gtknew('Button', text => N("Next"), clicked => sub { Gtk2->main_quit }),
+ interactive::gtk::display_help($o, { interactive_help_id => 'choosePackagesTree' }) }),
+ gtknew('Button', text => N("Next"), clicked => sub { Gtk3->main_quit }),
]),
]),
);
@@ -779,4 +805,5 @@ It will then continue from the hard drive and the packages will remain available
log::l("keeping media " . join ',', map { $_->{rpmsdir} } grep { !$_->{ignore} } @$hdlists);
}
+
1;
diff --git a/perl-install/install/steps_interactive.pm b/perl-install/install/steps_interactive.pm
index 957a9da0e..55985e01a 100644
--- a/perl-install/install/steps_interactive.pm
+++ b/perl-install/install/steps_interactive.pm
@@ -1,7 +1,8 @@
-package install::steps_interactive; # $Id$
+package install::steps_interactive;
use strict;
+use feature 'state';
our @ISA = qw(install::steps);
@@ -35,7 +36,7 @@ use log;
#-######################################################################################
sub errorInStep {
my ($o, $err) = @_;
- $err = ugtk2::escape_text_for_TextView_markup_format($err) if $o->isa('install::steps_gtk');
+ $err = ugtk3::escape_text_for_TextView_markup_format($err) if $o->isa('install::steps_gtk');
$o->ask_warn(N("Error"), [ N("An error occurred"), formatError($err) ]);
}
@@ -53,7 +54,7 @@ sub acceptLicense {
my ($o) = @_;
return if $o->{useless_thing_accepted};
- any::acceptLicense($o, $o->{meta_class} eq 'powerpack');
+ any::acceptLicense($o);
}
sub selectLanguage {
@@ -74,7 +75,7 @@ fonts, spell checkers, various programs translated etc. that
varies from language to language).")) if $o->{locale}{lang} !~ /^en/ && !lang::load_mo();
} else {
#- no need to have this in po since it is never translated
- $o->ask_warn('', "The characters of your language can not be displayed in console,
+ $o->ask_warn('', "The characters of your language cannot be displayed in console,
so the messages will be displayed in english during installation") if $ENV{LANGUAGE} eq 'C';
}
}
@@ -125,67 +126,79 @@ sub selectKeyboard {
sub selectInstallClass {
my ($o) = @_;
+ return if $::isRestore;
+
my @l = install::any::find_root_parts($o->{fstab}, $::prefix);
# Don't list other archs as ugrading between archs is not supported
my $arch = arch() =~ /i.86/ ? $MDK::Common::System::compat_arch{arch()} : arch();
- @l = grep { $_->{arch} eq $arch } @l;
+ # Offer to upgrade only same arch and not mdv-2011+:
+ @l = grep { $_->{arch} eq $arch && $_->{version} !~ /201[1-9]/ } @l;
if (@l) {
+ _try_to_upgrade($o, @l);
+ }
+}
- log::l("proposing to upgrade partitions " . join(" ", map { $_->{part} && $_->{part}{device} } @l));
-
- my @releases = uniq(map { "$_->{release} $_->{version}" } @l);
- if (@releases != @l) {
- #- same release name so adding the device to differentiate them:
- $_->{release} .= " ($_->{part}{device})" foreach @l;
- }
+sub _try_to_upgrade {
+ my ($o, @l) = @_;
+ log::l("proposing to upgrade partitions " . join(" ", map { $_->{part} && $_->{part}{device} } @l));
- askInstallClass:
- my $p;
- $o->ask_from_({ title => N("Install/Upgrade"),
- interactive_help_id => 'selectInstallClass',
- },
- [
- { label => N("Is this an install or an upgrade?"), title => 1 },
- { val => \$p,
- list => [ @l, N_("_: This is a noun:\nInstall") ],
- type => 'list',
- format => sub { ref($_[0]) ? N("Upgrade %s", "$_[0]->{release} $_[0]->{version}") : translate($_[0]) }
- } ]);
- if (ref $p) {
- _check_unsafe_upgrade_and_warn($o, $p->{part}) or $p = undef;
- }
+ my @releases = uniq(map { "$_->{release} $_->{version}" } @l);
+ if (@releases != @l) {
+ #- same release name so adding the device to differentiate them:
+ $_->{release} .= " ($_->{part}{device})" foreach @l;
+ }
- if (ref $p) {
+ askInstallClass:
+ my $p;
+ $o->ask_from_({ title => N("Install/Upgrade"),
+ interactive_help_id => 'selectInstallClass',
+ },
+ [
+ { label => N("Is this an install or an upgrade?"), title => 1 },
+ { val => \$p,
+ list => [ @l, N_("_: This is a noun:\nInstall") ],
+ type => 'list',
+ format => sub { ref($_[0]) ? N("Upgrade %s", "$_[0]->{release} $_[0]->{version}") : translate($_[0]) }
+ } ]);
+ if (ref $p) {
+ _check_unsafe_upgrade_and_warn($o, $p->{part}) or $p = undef;
+ }
- if ($p->{part}) {
- log::l("choosing to upgrade partition $p->{part}{device}");
- $o->{migrate_device_names} = install::any::use_root_part($o->{all_hds}, $p->{part}, $o);
- }
+ if (ref $p) {
+ _prepare_upgrade($o, $p);
+ }
+}
- #- handle encrypted partitions (esp. /home)
- foreach (grep { $_->{mntpoint} } @{$o->{fstab}}) {
- my ($options, $_unknown) = fs::mount_options::unpack($_);
- $options->{encrypted} or next;
- $o->ask_from_({ focus_first => 1 },
- [ { label => N("Encryption key for %s", $_->{mntpoint}),
- hidden => 1, val => \$_->{encrypt_key} } ]);
- }
+sub _prepare_upgrade {
+ my ($o, $p) = @_;
+ if ($p->{part}) {
+ log::l("choosing to upgrade partition $p->{part}{device}");
+ $o->{migrate_device_names} = install::any::use_root_part($o->{all_hds}, $p->{part}, $o);
+ }
- $o->{previous_release} = $p;
- $o->{isUpgrade} = (find { $p->{release_file} =~ /$_/ } 'mandriva', 'mandrake', 'conectiva', 'redhat') || 'unknown';
- $o->{upgrade_by_removing_pkgs_matching} ||= {
- conectiva => 'cl',
- redhat => '.', #- everything!
- }->{$o->{isUpgrade}};
- log::l("upgrading $o->{isUpgrade} distribution" . ($o->{upgrade_by_removing_pkgs_matching} ? " (upgrade_by_removing_pkgs_matching $o->{upgrade_by_removing_pkgs_matching})" : ''));
- }
+ #- handle encrypted partitions (esp. /home)
+ foreach (grep { $_->{mntpoint} } @{$o->{fstab}}) {
+ my ($options, $_unknown) = fs::mount_options::unpack($_);
+ $options->{encrypted} or next;
+ $o->ask_from_({ focus_first => 1 },
+ [ { label => N("Encryption key for %s", $_->{mntpoint}),
+ hidden => 1, val => \$_->{encrypt_key} } ]);
}
+
+ $o->{previous_release} = $p;
+ $o->{isUpgrade} = (find { $p->{release_file} =~ /$_/ } 'mageia', 'mandriva', 'mandrake', 'conectiva', 'redhat') || 'unknown';
+ $o->{upgrade_by_removing_pkgs_matching} ||= {
+ conectiva => 'cl',
+ redhat => '.', #- everything!
+ }->{$o->{isUpgrade}};
+ log::l("upgrading $o->{isUpgrade} distribution" . ($o->{upgrade_by_removing_pkgs_matching} ? " (upgrade_by_removing_pkgs_matching $o->{upgrade_by_removing_pkgs_matching})" : ''));
}
sub _check_unsafe_upgrade_and_warn {
my ($o, $part) = @_;
!_is_unsafe_upgrade($part) || _warn_unsafe_upgrade($o);
}
+
sub _is_unsafe_upgrade {
my ($part) = @_;
@@ -194,6 +207,7 @@ sub _is_unsafe_upgrade {
log::l("block_size $block_size");
$block_size == 1024;
}
+
sub _warn_unsafe_upgrade {
my ($o) = @_;
@@ -206,13 +220,13 @@ sub _warn_unsafe_upgrade {
);
my $choice;
- $o->ask_from_({ messages => N("Installer has detected that your installed Mandriva Linux system could not
+ $o->ask_from_({ messages => N("Installer has detected that your installed Linux system could not
safely be upgraded to %s.
New installation replacing your previous one is recommended.
Warning : you should backup all your personal data before choosing \"New
-Installation\".", 'Mandriva Linux 2009') },
+Installation\".", '%s') },
[ { val => \$choice, type => 'list', list => \@choices, format => \&translate } ]);
log::l("_warn_unsafe_upgrade: got $choice");
@@ -237,7 +251,6 @@ sub selectMouse {
if ($o->{mouse}{device} eq "input/mice") {
modules::interactive::load_category($o, $o->{modules_conf}, 'bus/usb', 1, 0);
eval {
- devices::make("usbmouse");
modules::load('usbhid');
};
}
@@ -248,7 +261,7 @@ sub setupSCSI {
install::any::configure_pcmcia($o);
{
- my $_w = $o->wait_message(N("IDE"), N("Configuring IDE"));
+ my $_w = $o->wait_message(N("CD/DVD"), N("Configuring CD/DVD"));
modules::load(modules::category2modules('disk/cdrom'));
}
modules::interactive::load_category($o, $o->{modules_conf}, 'bus/firewire', 1);
@@ -266,34 +279,6 @@ sub setupSCSI {
sub doPartitionDisks {
my ($o) = @_;
- if (arch() =~ /ppc/) {
- my $generation = detect_devices::get_mac_generation();
- if ($generation =~ /NewWorld/) {
- #- mac partition table
- if (defined $partition_table::mac::bootstrap_part) {
- #- do not do anything if we've got the bootstrap setup
- #- otherwise, go ahead and create one somewhere in the drive free space
- } else {
- my $freepart = $partition_table::mac::freepart;
- if ($freepart && $freepart->{size} >= 1) {
- log::l("creating bootstrap partition on drive /dev/$freepart->{hd}{device}, block $freepart->{start}");
- $partition_table::mac::bootstrap_part = $freepart->{part};
- log::l("bootstrap now at $partition_table::mac::bootstrap_part");
- my $p = { start => $freepart->{start}, size => MB(1), mntpoint => '' };
- fs::type::set_pt_type($p, 0x401);
- fsedit::add($freepart->{hd}, $p, $o->{all_hds}, { force => 1, primaryOrExtended => 'Primary' });
- $partition_table::mac::new_bootstrap = 1;
-
- } else {
- $o->ask_warn('', N("No free space for 1MB bootstrap! Install will continue, but to boot your system, you'll need to create the bootstrap partition in DiskDrake"));
- }
- }
- } elsif ($generation =~ /IBM/) {
- #- dos partition table
- $o->ask_warn('', N("You'll need to create a PPC PReP Boot bootstrap! Install will continue, but to boot your system, you'll need to create the bootstrap partition in DiskDrake"));
- }
- }
-
if (!$o->{isUpgrade}) {
fs::partitioning_wizard::main($o, $o->{all_hds}, $o->{fstab}, $o->{manualFstab}, $o->{partitions}, $o->{partitioning}, $::local_install);
}
@@ -333,8 +318,8 @@ If you want to skip some of them, you can unselect them now.")) },
if_($_ eq $names[0], disabled => sub { 1 }),
} } @names),
if_($o_copy_rpms_on_disk,
- { type => 'label', val => \(formatAlaTeX(N("You have the option to copy the contents of the CDs onto the hard drive before installation.
-It will then continue from the hard drive and the packages will remain available once the system is fully installed."))) },
+ { type => 'label', val => \(formatAlaTeX(N("You have the option to copy the contents of the CDs onto the hard disk drive before installation.
+It will then continue from the hard disk drive and the packages will remain available once the system is fully installed."))) },
{ type => 'bool', text => N("Copy whole CDs"), val => $o_copy_rpms_on_disk },
),
]);
@@ -376,6 +361,7 @@ sub selectSupplMedia {
my ($o) = @_;
install::any::selectSupplMedia($o);
}
+
#------------------------------------------------------------------------------
sub choosePackages {
my ($o) = @_;
@@ -401,7 +387,7 @@ sub choosePackages {
my ($individual, $chooseGroups);
if (!$o->{isUpgrade}) {
- my $tasks_ok = install::pkgs::packageByName($o->{packages}, 'task-kde4') &&
+ my $tasks_ok = install::pkgs::packageByName($o->{packages}, 'task-plasma-minimal') &&
install::pkgs::packageByName($o->{packages}, 'task-gnome-minimal');
if ($tasks_ok && $availableC >= 2_500_000_000) {
_chooseDesktop($o, $o->{rpmsrate_flags_chosen}, \$chooseGroups);
@@ -435,6 +421,7 @@ sub choosePackagesTree {
sort => 1,
});
}
+
sub loadSavePackagesOnFloppy {
my ($o, $packages) = @_;
$o->ask_from('',
@@ -460,11 +447,12 @@ The format is the same as auto_install generated files."),
install::any::g_default_packages($o);
}
}
+
sub _chooseDesktop {
my ($o, $rpmsrate_flags_chosen, $chooseGroups) = @_;
my @l = group_by2(
- KDE => N("KDE"),
+ PLASMA => N("Plasma"),
GNOME => N("GNOME"),
Custom => N("Custom"),
);
@@ -474,6 +462,7 @@ sub _chooseDesktop {
my $default_choice = (find { $rpmsrate_flags_chosen->{"CAT_" . $_->[0]} } @l) || $l[0];
my $choice = $default_choice;
if ($o->isa('interactive::gtk')) {
+ # perl_checker: require install::steps_gtk
$choice = install::steps_gtk::reallyChooseDesktop($o, $title, $message, \@l, $default_choice);
} else {
$o->ask_from_({ title => $title, message => $message }, [
@@ -482,7 +471,7 @@ sub _chooseDesktop {
}
my $desktop = $choice->[0];
log::l("chosen Desktop: $desktop");
- my @desktops = ('KDE', 'GNOME');
+ my @desktops = ('PLASMA', 'GNOME');
if (member($desktop, @desktops)) {
my ($want, $dontwant) = ($desktop, grep { $desktop ne $_ } @desktops);
$rpmsrate_flags_chosen->{"CAT_$want"} = 1;
@@ -494,9 +483,12 @@ sub _chooseDesktop {
$$chooseGroups = 1;
}
}
+
sub chooseGroups {
my ($o, $packages, $compssUsers, $individual) = @_;
+ my $w = $o->wait_message('', N("Looking for available packages..."));
+
#- for all groups available, determine package which belongs to each one.
#- this will enable getting the size of each groups more quickly due to
#- limitation of current implementation.
@@ -513,6 +505,8 @@ sub chooseGroups {
my %stable_flags = grep_each { $::b } %{$o->{rpmsrate_flags_chosen}};
delete $stable_flags{"CAT_$_"} foreach map { @{$_->{flags}} } @{$o->{compssUsers}};
+ undef $w;
+
my $compute_size = sub {
my %pkgs;
my %flags = %stable_flags; @flags{@_} = ();
@@ -561,40 +555,49 @@ sub chooseGroups {
log::l("compssUsersChoice selected: ", join(', ', map { qq("$_->{path}|$_->{label}") } grep { $_->{selected} } @$compssUsers));
- #- do not try to deselect package (by default no groups are selected).
if (!$o->{isUpgrade}) {
+ #- do not try to deselect package (by default no groups are selected).
install::any::unselectMostPackages($o) if $unselect_all;
+
+ #- if no group have been chosen, ask for using base system only, or no X, or normal.
+ if (!any { $_->{selected} } @$compssUsers) {
+ offer_minimal_options($o) or goto &chooseGroups;
+ }
}
- #- if no group have been chosen, ask for using base system only, or no X, or normal.
- if (!$o->{isUpgrade} && !any { $_->{selected} } @$compssUsers) {
+ 1;
+}
+
+sub offer_minimal_options {
+ my ($o) = @_;
my $docs = !$o->{excludedocs};
- my $minimal;
- my $suggests;
+ state $minimal;
+ my $recommends = !$o->{no_recommends};
$o->ask_from_({ title => N("Type of install"),
- message =>N("You have not selected any group of packages.
+ message => N("You have not selected any group of packages.
Please choose the minimal installation you want:"),
- interactive_help_id => 'choosePackages#minimal-install'
+ interactive_help_id => 'minimal-install'
},
[
{ val => \$o->{rpmsrate_flags_chosen}{CAT_X}, type => 'bool', text => N("With X"), disabled => sub { $minimal } },
- { val => \$suggests, type => 'bool', text => N("Install suggested packages"), disabled => sub { $minimal } },
+ { val => \$recommends, type => 'bool', text => N("Install recommended packages"), disabled => sub { $minimal } },
{ val => \$docs, type => 'bool', text => N("With basic documentation (recommended!)"), disabled => sub { $minimal } },
{ val => \$minimal, type => 'bool', text => N("Truly minimal install (especially no urpmi)") },
],
- ) or return &chooseGroups;
+ ) or return 0;
if ($minimal) {
- $o->{rpmsrate_flags_chosen}{CAT_X} = $docs = 0;
+ $o->{rpmsrate_flags_chosen}{CAT_X} = $docs = $recommends = 0;
$o->{rpmsrate_flags_chosen}{CAT_SYSTEM} = 0;
}
$o->{excludedocs} = !$docs;
$o->{rpmsrate_flags_chosen}{CAT_MINIMAL_DOCS} = $docs;
- $o->{no_suggests} = !$suggests;
+ $o->{no_recommends} = !$recommends;
+ $o->{compssListLevel} = pkgs::rpmsrate_rate_max() if !$recommends;
+ log::l("install settings: no_recommends=$o->{no_recommends}, excludedocs=$o->{excludedocs}, really_minimal_install=$minimal");
install::any::unselectMostPackages($o);
- }
- 1;
+ 1;
}
sub reallyChooseGroups {
@@ -604,7 +607,7 @@ sub reallyChooseGroups {
my ($path, $all);
$o->ask_from_({ messages => N("Package Group Selection"),
- interactive_help_id => 'choosePackages',
+ interactive_help_id => 'choosePackageGroups',
}, [
{ val => \$size_text, type => 'label' }, {},
(map {
@@ -629,6 +632,12 @@ sub reallyChooseGroups {
1;
}
+sub beforeInstallPackages {
+ my ($o) = @_;
+ my $_w = $o->{isUpgrade} && $o->wait_message('', N("Preparing upgrade..."));
+ $o->SUPER::beforeInstallPackages;
+}
+
#------------------------------------------------------------------------------
sub installPackages {
my ($o) = @_;
@@ -721,7 +730,7 @@ sub configureNetwork {
#------------------------------------------------------------------------------
sub installUpdates {
my ($o) = @_;
- my $u = $o->{updates} ||= {};
+ $o->{updates} ||= {};
$o->hasNetwork or return;
@@ -732,6 +741,56 @@ sub installUpdates {
}
$o->ask_yesorno_({ title => N("Updates"), messages => formatAlaTeX(
+N("You now have the opportunity to setup online media.") . "\n\n" .
+N("This allows to install security updates.") . "\n\n" .
+N("To setup those media, you will need to have a working Internet
+connection.
+
+Do you want to setup the update media?")),
+ interactive_help_id => 'installUpdates',
+ }, 1) or do {
+ log::l("installUpdates: skipping since user say no to media setup");
+ return;
+ };
+
+ my $urpmi_options = { mirror_url => '$MIRRORLIST', downloader => $o->{options}{downloader} };
+
+ try_again:
+ #- bring all interface up for installing updates packages.
+ install::interactive::upNetwork($o);
+
+ any::ask_mirror_and_downloader($o, $urpmi_options);
+
+ if (!any::urpmi_set_downloader($o, $o->{packages}, $urpmi_options->{downloader})) {
+ log::l("installUpdates: failed to change urpmi downloader");
+ local $::isWizard = 0; # make button names "ok" and "cancel", not "next" and "previous"
+ if ($o->ask_okcancel(N("Warning"),
+ N("That downloader could not be installed") . "\n" . N("Retry?"))) {
+ goto try_again;
+ } else {
+ return 0;
+ }
+ }
+
+ if ($urpmi_options->{mirror_url} ne '$MIRRORLIST') {
+ $urpmi_options->{mirror_url} = any::ask_mirror($o, 'distrib', $urpmi_options->{mirror_url});
+ }
+
+ install::pkgs::clean_rpmdb_shared_regions();
+ if (any::urpmi_add_all_media($o, $o->{previous_release}, $urpmi_options->{mirror_url})) {
+ log::l("installUpdates: successfully added media");
+ } else {
+ log::l("installUpdates: failed to add media");
+ local $::isWizard = 0; # make button names "ok" and "cancel", not "next" and "previous"
+ if ($o->ask_okcancel(N("Warning"),
+ N("Failure when adding medium") . "\n" . N("Retry?"))) {
+ goto try_again;
+ } else {
+ return 0;
+ }
+ }
+
+ $o->ask_yesorno_({ title => N("Updates"), messages => formatAlaTeX(
N("You now have the opportunity to download updated packages. These packages
have been updated after the distribution was released. They may
contain security or bug fixes.
@@ -741,20 +800,18 @@ connection.
Do you want to install the updates?")),
interactive_help_id => 'installUpdates',
- }, 1) or return;
-
- #- bring all interface up for installing updates packages.
- install::interactive::upNetwork($o);
+ }, 1) or do {
+ log::l("installUpdates: skipping since user say no to updates");
+ return;
+ };
- install::pkgs::clean_rpmdb_shared_regions();
- if (any::urpmi_add_all_media($o, $o->{previous_release})) {
- my $binary = find { whereis_binary($_, $::prefix) } 'gurpmi2', 'urpmi' or return;
+ my $binary = find { whereis_binary($_, $::prefix) } if_(check_for_xserver(), 'gurpmi2'), 'urpmi' or return;
my $log_file = '/root/drakx/updates.log';
- run_program::rooted($::prefix, $binary, '>>', $log_file, '2>>', $log_file, '--auto-select', '--update');
- }
+ run_program::raw({ root => $::prefix, timeout => 'never' }, $binary, '>>', $log_file, '2>>', $log_file, '--auto-select');
+
install::pkgs::clean_rpmdb_shared_regions();
- #- not downing network, even ppp. We don't care much since it is the end of install :)
+ #- not downing network, even PPP. We don't care much since it is the end of install :)
}
@@ -829,22 +886,25 @@ sub summary {
$o->pkg_install(map { $_->name } @pkgs) if @pkgs;
lang::write_and_install($o->{locale}, $o->do_pkgs);
- if (!$timezone_manually_set) {
+ if (!$timezone_manually_set && !$o->{isUpgrade}) {
delete $o->{timezone};
install::any::preConfigureTimezone($o); #- now we can precise the timezone thanks to the country
}
},
};
+ local $o->{bootloader}{boot} = 'ESP' if is_uefi();
push @l, {
group => N("System"),
label => N("Bootloader"),
val => sub {
- #-PO: example: lilo-graphic on /dev/hda1
- $o->{bootloader}{boot} ? N("%s on %s", $o->{bootloader}{method}, $o->{bootloader}{boot}) : N("None");
+
+ $o->{bootloader}{boot} ?
+ #-PO: example: grub2-graphic on /dev/sda1
+ N("%s on %s", $o->{bootloader}{method}, $o->{bootloader}{boot}) : N("None");
},
+ if_(is_uefi(), tip => N("EFI System Partition")),
clicked => sub {
any::setupBootloader($o, $o->{bootloader}, $o->{all_hds}, $o->{fstab}, $o->{security}) or return;
- any::installBootloader($o, $o->{bootloader}, $o->{all_hds});
},
} if !$::local_install;
@@ -853,6 +913,9 @@ sub summary {
label => N("User management"),
clicked => sub {
if (my $u = any::ask_user($o, $o->{users}, $o->{security}, needauser => 1)) {
+ #- getpwnam, getgrnam, getgrid works
+ symlinkf("$::prefix/etc/passwd", '/etc/passwd');
+ symlinkf("$::prefix/etc/group", '/etc/group');
any::add_users([$u], $o->{authentication});
}
},
@@ -864,7 +927,7 @@ sub summary {
val => sub {
require services;
my ($l, $activated) = services::services();
- N("Services: %d activated for %d registered", int(@$activated), int(@$l));
+ N("%d activated for %d registered", int(@$activated), int(@$l));
},
clicked => sub {
require services;
@@ -877,17 +940,17 @@ sub summary {
label => N("Keyboard"),
val => sub { $o->{keyboard} && translate(keyboard::keyboard2text($o->{keyboard})) },
clicked => sub { $o->selectKeyboard(1) },
- };
+ } if !$o->{match_all_hardware};
push @l, {
group => N("Hardware"),
label => N("Mouse"),
val => sub { translate($o->{mouse}{type}) . ' ' . translate($o->{mouse}{name}) },
clicked => sub { selectMouse($o, 1); mouse::write($o->do_pkgs, $o->{mouse}) },
- };
+ } if !$o->{match_all_hardware};
- my @sound_cards = detect_devices::getSoundDevices();
+ my @sound_cards = $o->{match_all_hardware} ? () : detect_devices::getSoundDevices();
my $sound_index = 0;
foreach my $device (@sound_cards) {
@@ -906,40 +969,23 @@ sub summary {
$sound_index++;
}
- if (!@sound_cards && ($o->{rpmsrate_flags_chosen}{CAT_GAMES} || $o->{rpmsrate_flags_chosen}{CAT_AUDIO})) {
- #- if no sound card are detected AND the user selected things needing a sound card,
- #- propose a special case for ISA cards
- push @l, {
- group => N("Hardware"),
- label => N("Sound card"),
- val => sub {},
- clicked => sub {
- if ($o->ask_yesorno('', N("Do you have an ISA sound card?"))) {
- $o->do_pkgs->install(qw(alsa-utils sndconfig aoss));
- $o->ask_warn('', N("Run \"alsaconf\" or \"sndconfig\" after installation to configure your sound card"));
- } else {
- $o->ask_warn('', N("No sound card detected. Try \"harddrake\" after installation"));
- }
- },
- };
- }
-
push @l, {
group => N("Hardware"),
label => N("Graphical interface"),
val => sub { $o->{raw_X} ? Xconfig::various::to_string($o->{raw_X}) : '' },
clicked => sub { configureX($o, 'expert') },
- };
+ } if !$o->{match_all_hardware};
push @l, {
group => N("Network & Internet"),
label => N("Network"),
val => sub { $o->{net}{type} },
+ format => sub { $_[0] =~ s/.*:://; $_[0] },
clicked => sub {
require network::netconnect;
network::netconnect::real_main($o->{net}, $o, $o->{modules_conf});
},
- };
+ } if !$o->{match_all_hardware};
$o->{miscellaneous} ||= {};
push @l, {
@@ -951,7 +997,7 @@ sub summary {
network::network::miscellaneous_choose($o, $o->{miscellaneous});
network::network::proxy_configure($o->{miscellaneous}) if !$::testing;
},
- };
+ } if !$o->{match_all_hardware};
push @l, {
group => N("Security"),
@@ -970,7 +1016,8 @@ sub summary {
install::any::set_security($o);
}
},
- };
+ } if -x "$::prefix/usr/sbin/msec";
+ # FIXME: install msec if needed instead
push @l, {
group => N("Security"),
@@ -989,6 +1036,7 @@ sub summary {
} if detect_devices::get_net_interfaces();
my $check_complete = sub {
+ return 1 if $o->{match_all_hardware};
require install::pkgs;
my $p = install::pkgs::packageByName($o->{packages}, 'task-x11');
$o->{raw_X} || !$::testing && $p && !$p->flag_installed ||
@@ -997,6 +1045,7 @@ sub summary {
$o->summary_prompt(\@l, $check_complete);
+ any::installBootloader($o, $o->{bootloader}, $o->{all_hds}) if !$::local_install;
install::steps::configureTimezone($o) if !$timezone_manually_set; #- do not forget it.
}
@@ -1020,7 +1069,9 @@ sub setRootPassword_addUser {
sub setupBootloaderBefore {
my ($o) = @_;
local $o->{pop_wait_messages} = 1;
- my $_w = $o->wait_message(N("Preparing bootloader..."), N("Preparing bootloader...") . "\n" .
+ my $_w = $o->wait_message(N("Please wait"),
+ #-PO: This is NOT the boot loader (just the kernel initrds)!!!!
+ N("Preparing initial startup program...") . "\n" .
N("Be patient, this may take a while...")
);
$o->SUPER::setupBootloaderBefore;
@@ -1029,17 +1080,8 @@ sub setupBootloaderBefore {
#------------------------------------------------------------------------------
sub setupBootloader {
my ($o) = @_;
- if (arch() =~ /ppc/) {
- if (detect_devices::get_mac_generation() !~ /NewWorld/ &&
- detect_devices::get_mac_model() !~ /IBM/) {
- $o->ask_warn('', N("You appear to have an OldWorld or Unknown machine, the yaboot bootloader will not work for you. The install will continue, but you'll need to use BootX or some other means to boot your machine. The kernel argument for the root fs is: root=%s", '/dev/' . fs::get::root_($o->{fstab})->{device}));
- log::l("OldWorld or Unknown Machine - no yaboot setup");
- return;
- }
- }
{
any::setupBootloader_simple($o, $o->{bootloader}, $o->{all_hds}, $o->{fstab}, $o->{security}) or return;
- any::installBootloader($o, $o->{bootloader}, $o->{all_hds}) or die "already displayed";
}
}
diff --git a/perl-install/install/steps_list.pm b/perl-install/install/steps_list.pm
index 143ffc354..3dc3de2f2 100644
--- a/perl-install/install/steps_list.pm
+++ b/perl-install/install/steps_list.pm
@@ -35,7 +35,7 @@ use common;
N_("User management") ],
configureNetwork => [ N_("_: Keep these entry short\nNetworking"), 1, 1, '1', "formatPartitions",
N_("_: Keep these entry short\nNetworking") ],
- setupBootloader => [ N_("_: Keep these entry short\nBootloader"), 1, 0, '', "installPackages",
+ setupBootloader => [ N_("_: Keep these entry short\nBootloader"), 1, 0, '1', "installPackages",
N_("_: Keep these entry short\nBootloader") ],
configureX => [ N_("_: Keep these entry short\nConfigure X"), 1, 1, '1', ["formatPartitions", "setupBootloader"],
N_("_: Keep these entry short\nConfigure X") ],
diff --git a/perl-install/install/steps_stdio.pm b/perl-install/install/steps_stdio.pm
index f6a759cae..1cf4b1197 100644
--- a/perl-install/install/steps_stdio.pm
+++ b/perl-install/install/steps_stdio.pm
@@ -1,4 +1,4 @@
-package install::steps_stdio; # $Id$
+package install::steps_stdio;
use diagnostics;
use strict;
diff --git a/perl-install/interactive.pm b/perl-install/interactive.pm
index 04174d433..49f47d05c 100644
--- a/perl-install/interactive.pm
+++ b/perl-install/interactive.pm
@@ -1,4 +1,4 @@
-package interactive; # $Id$
+package interactive;
use diagnostics;
use strict;
@@ -9,82 +9,73 @@ use strict;
use common;
use do_pkgs;
-#- minimal example using interactive:
-#
-#- > use lib qw(/usr/lib/libDrakX);
-#- > use interactive;
-#- > my $in = interactive->vnew;
-#- > $in->ask_okcancel('title', 'question');
-#- > $in->exit;
-
-#- ask_from_ takes global options ($common):
-#- title => window title
-#- messages => message displayed in the upper part of the window
-#- ok => force the name of the "Ok"/"Next" button
-#- cancel => force the name of the "Cancel"/"Previous" button
-#- focus_cancel => force focus on the "Cancel" button
-#- focus_first => (deprecated) force focus on the first entry
-#- ok_disabled => function returning wether {ok} should be disabled (grayed)
-#- validate => function called when {ok} is pressed. If it returns false, the first entry is focused, otherwise it quits
-#- advanced => (deprecated) function called when the "advanced" expander is toggled
-#- advanced_messages => (deprecated) message displayed when "Advanced" is pressed
-#- advanced_label => (deprecated) force the name of the "Advanced" button
-#- advanced_label_close => (deprecated) force the name of the "Basic" button
-#- advanced_state => (deprecated) if set to 1, force the "Advanced" part of the dialog to be opened initially
-#- callbacks => (deprecated) functions called when something happen: complete advanced ok_disabled
-
-#- ask_from_ takes a list of entries with fields:
-#- val => reference to the value
-#- label => description
-#- title => a boolean: whether the label should be displayed as a title (see GNOME's HIG)
-#- icon => icon to put before the description
-#- help => tooltip
-#- advanced => (deprecated) wether it is shown in by default or only in advanced mode
-#- focus_out => function called when the entry is focused out
-#- changed => function called when the entry is modified
-#- validate => function called when "Ok" is pressed. If it returns false, this entry is focused, otherwise it quits
-#- disabled => function returning wether it should be disabled (grayed)
-#- focus => function returning wether it should be focused
-#- alignment => preferred alignment
-#- do_not_expand => do not eat all horizontal space
-#- install_button => if possible, use improved graphical style
-#- gtk => gtk preferences
-#- type =>
-#- button => (with clicked or clicked_may_quit)
-#- (type defaults to button if clicked or clicked_may_quit is there)
-#- (val need not be a reference) (if clicked_may_quit return true, it's as if "Ok" was pressed)
-#- label => (val need not be a reference) (type defaults to label if val is not a reference)
-#- bool (with "text" or "image" (which overrides text) giving an image filename)
-#- range (with min, max, SpinButton)
-#- combo (with list, not_edit, format)
-#- list (with list, icon2f (aka icon), separator (aka tree), format (aka pre_format function),
-#- help can be a hash or a function,
-#- tree_expanded boolean telling wether the tree should be wide open by default
-#- quit_if_double_click boolean
-#- allow_empty_list disables the special cases for 0 and 1 element lists
-#- image2f is a subroutine which takes a value of the list as parameter, and returns image_file_name
-#- entry (the default) (with hidden)
-#- expander (with text, expanded, message, children(a list of sub entries))
-#
-#- heritate from this class and you'll get all made interactivity for same steps.
-#- for this you need to provide
-#- - ask_from_listW(o, title, messages, arrayref, default) returns one string of arrayref
-#-
-#- where
-#- - o is the object
-#- - title is a string
-#- - messages is an refarray of strings
-#- - default is an optional string (default is in arrayref)
-#- - arrayref is an arrayref of strings
-#- - arrayref2 contains booleans telling the default state,
-#-
-#- ask_from_list and ask_from_list_ are wrappers around ask_from_biglist and ask_from_smalllist
-#-
-#- ask_from_list_ just translate arrayref before calling ask_from_list and untranslate the result
-#-
-#- ask_from_listW should handle differently small lists and big ones.
-#-
+=head1 NAME
+interactive - a GUI layer with multiple backend (text console, Gtk+ GUI, web)
+
+=head1 SYNOPSYS
+
+B<interactive> enables to write GUIes that will work everywhere:
+
+=head1 Functions
+
+=over 4
+
+=item * text console
+
+implemented by L<interactive::stdio> & L<interactive::curses>
+
+=item * web browser
+
+implemented by L<interactive::http>
+
+=item * GUI
+
+implemented by L<interactive::gtk>
+
+=back
+
+Interactive inherits from L<do_pkgs> and thus $in->do_pkgs will return
+an usable C<do_pkgs> object suitable for installing packages.
+
+=head1 Minimal example using interactive
+
+ use lib qw(/usr/lib/libDrakX);
+ use interactive;
+ my $in = interactive->vnew;
+ $in->ask_okcancel('title', 'question');
+ $in->exit;
+
+=head1 Backends
+
+heritate from this class and you'll get all made interactivity for same steps.
+for this you need to provide
+
+C<ask_from_listW(o, title, messages, arrayref, default)> which returns one string of arrayref
+
+where:
+
+=over 4
+
+=item * B<o> is the object
+
+=item * B<title> is a string
+
+=item * B<messages> is an refarray of strings
+
+=item * B<default> is an optional string (default is in arrayref)
+
+=item * B<arrayref> is an arrayref of strings
+
+=item * B<arrayref>2 contains booleans telling the default state,
+
+=back
+
+=head1 Functions
+
+=over
+
+=cut
#-######################################################################################
#- OO Stuff
@@ -262,6 +253,18 @@ sub ask_fileW {
$o->ask_from_entry($common->{title}, $common->{message} || N("Choose a file"));
}
+=item ask_from_list($o, $title, $message, $l, $o_def)
+
+=item ask_from_list_($o, $title, $message, $l, $o_def)
+
+ask_from_list() and ask_from_list_() are wrappers around ask_from_biglist and ask_from_smalllist
+
+ask_from_list_() just translate arrayref before calling ask_from_list and untranslate the result
+
+ask_from_listW() should handle differently small lists and big ones.
+
+=cut
+
sub ask_from_list {
my ($o, $title, $message, $l, $o_def) = @_;
ask_from_listf($o, $title, $message, undef, $l, $o_def);
@@ -513,6 +516,128 @@ sub migrate_advanced {
}) ];
}
+
+=item ask_from_($o, $common, $l)
+
+ask_from_() takes global options ($common):
+
+=over 4
+
+=item * B<title>: window title
+
+=item * B<messages>: message displayed in the upper part of the window
+
+=item * B<ok>: force the name of the "Ok"/"Next" button
+
+=item * B<cancel>: force the name of the "Cancel"/"Previous" button
+
+=item * B<focus_cancel>: force focus on the "Cancel" button
+
+=item * I<focus_first>: (deprecated) force focus on the first entry
+
+=item * B<ok_disabled>: function returning whether {ok} should be disabled (grayed)
+
+=item * B<validate>: function called when {ok} is pressed. If it returns false, the first entry is focused, otherwise it quits
+
+=item * I<advanced>: (deprecated) function called when the "advanced" expander is toggled
+
+=item * I<advanced_messages>: (deprecated) message displayed when "Advanced" is pressed
+
+=item * I<advanced_label>: (deprecated) force the name of the "Advanced" button
+
+=item * I<advanced_label_close>: (deprecated) force the name of the "Basic" button
+
+=item * I<advanced_state>: (deprecated) if set to 1, force the "Advanced" part of the dialog to be opened initially
+
+=item * I<advanced_title>: title of the advanced item popup dialog (else reusing main title)
+
+=item * I<callbacks>: (deprecated) functions called when something happen: complete advanced ok_disabled
+
+=back
+
+ask_from_ takes a list of entries with fields:
+
+=over 4
+
+=item * B<val>: reference to the value
+
+=item * B<label>: description
+
+=item * B<title>: a boolean: whether the label should be displayed as a title (see GNOME's HIG)
+
+=item * B<icon>: icon to put before the description
+
+=item * B<help>: tooltip
+
+=item * I<advanced>: (deprecated) whether it is shown in by default or only in advanced mode
+
+=item * B<focus_out>: function called when the entry is focused out
+
+=item * B<changed>: function called when the entry is modified
+
+=item * B<validate>: function called when "Ok" is pressed. If it returns false, this entry is focused, otherwise it quits
+
+=item * B<disabled>: function returning whether it should be disabled (grayed)
+
+=item * B<focus>: function returning whether it should be focused
+
+=item * B<alignment>: preferred alignment
+
+=item * B<do_not_expand>: do not eat all horizontal space
+
+=item * B<install_button>: if possible, use improved graphical style
+
+=item * B<gtk>: gtk preferences
+
+=item * B<type>:
+
+=over 4
+
+=item * B<button>: (with clicked or clicked_may_quit)
+
+I<type> defaults to button if clicked or clicked_may_quit is there.
+I<val> need not be a reference.
+If I<clicked_may_quit> return true, it's as if "Ok" was pressed.
+
+=item * B<label>:
+I<val> need not be a reference.
+I<type> defaults to label if val is not a reference.
+
+=item * B<bool>: (with "text" or "image" (which overrides text) giving an image filename)
+
+=item * B<range>: (with min, max, SpinButton)
+
+=item * B<combo>: (with list, not_edit, format)
+
+=item * B<list>: (with list, icon2f (aka icon), separator (aka tree), format (aka pre_format function),
+
+It has these optional parameters:
+
+=over 4
+
+=item * B<help>: can be a hash or a function,
+
+=item * B<tree_expanded>: boolean telling whether the tree should be wide open by default
+
+=item * B<quit_if_double_click>: boolean
+
+=item * B<allow_empty_list>: disables the special cases for 0 and 1 element lists
+
+=item * B<image2f>: a subroutine which takes a value of the list as parameter, and returns image_file_name
+
+=back
+
+=item * B<entry>: (the default) (with hidden)
+
+=item * B<expander>: (with text, expanded, message, children(a list of sub entries))
+
+=back
+
+=back
+
+=cut
+
+
sub ask_from_ {
my ($o, $common, $l) = @_;
ask_from_normalize($o, $common, $l);
@@ -653,4 +778,8 @@ sub interactive_help_sub_display_id {
&& sub { $o->ask_warn(N("Help"), $o->interactive_help_get_id($id)) };
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/interactive/curses.pm b/perl-install/interactive/curses.pm
index 90fca4c14..64bdee5c7 100644
--- a/perl-install/interactive/curses.pm
+++ b/perl-install/interactive/curses.pm
@@ -3,7 +3,7 @@
# to debug, use something like
# PERLDB_OPTS=TTY=`tty` LC_ALL=fr_FR.UTF-8 xterm -geometry 80x25 -e sh -c 'DISPLAY= perl -d t.pl'
-package interactive::curses; # $Id$
+package interactive::curses;
use diagnostics;
use strict;
@@ -32,13 +32,20 @@ sub new {
open STDERR, ">", common::secured_file($stderr_file);
$cui ||= Curses::UI->new('-color_support' => 1);
+
+ # Set some default terminal size, for serial install
+ unless ($cui->{'-width'}) {
+ $cui->{'-width'} = $cui->{'-w'} = $cui->{'-bw'} = 80;
+ $cui->{'-height'} = $cui->{'-h'} = $cui->{'-bh'} = 25;
+ }
+
bless { cui => $cui }, $class;
}
sub enter_console { &suspend }
sub leave_console { &end }
-sub suspend { Curses::UI->leave_curses }
-sub resume { Curses::UI->reset_curses }
+sub suspend { $cui && $cui->leave_curses }
+sub resume { $cui->reset_curses }
sub end { &suspend; print $SAVEERR $_ foreach cat_($stderr_file); unlink $stderr_file }
sub exit { end(); CORE::exit($_[1] || 0) }
END { end() }
@@ -170,7 +177,7 @@ sub compute_size {
$e->{curses}{'-width'} ||= length($s);
} elsif ($e->{type} eq 'expander') {
$e->{curses}{'-width'} ||= length("<+> $e->{text}");
- } elsif ($e->{type} eq 'text' || $e->{type} eq 'label' || $e->{type} eq 'only_label') {
+ } elsif (member($e->{type}, qw(text label only_label))) {
my @text = _messages(min(80, $width_avail - 1), ${$e->{val}}); #- -1 because of the scrollbar
$e->{curses}{'-focusable'} = 0;
$e->{curses}{'-height'} ||= heights(int(@text), 10, 4);
@@ -345,7 +352,7 @@ sub create_widget {
$w->set_binding('focus-up', Curses::KEY_LEFT());
$w->set_binding('focus-down', Curses::KEY_RIGHT());
$set = sub { $w->set_label(0, sprintf('< %s >', may_apply($e->{format}, $_[0]))) };
- } elsif ($e->{type} eq 'list' || $e->{type} eq 'combo') {
+ } elsif (member($e->{type}, qw(list combo))) {
$w = $win->add(undef, $e->{type} eq 'combo' ? 'Popupmenu' : 'Listbox',
'-values' => $e->{formatted_list},
'-onchange' => $onchange->(sub { $e->{list}[$w->id] }),
@@ -398,13 +405,26 @@ sub create_widget {
} elsif ($e->{type} eq 'label' && $e->{curses}{'-height'} == 1) {
$w = $win->add(undef, 'Label', %options);
$set = sub { $w->text($_[0] || '') };
- } elsif ($e->{type} eq 'label' || $e->{type} eq 'only_label' || $e->{type} eq 'text') {
+ } elsif (member($e->{type}, qw(label only_label text))) {
$w = $win->add(undef, 'TextViewer', %options);
$set = sub {
my ($text) = @_;
my $width = $w->{'-sw'} - ($w->{'-vscrollbar'} ? 1 : 0);
$w->text(join("\n", _messages($width, $text)));
};
+ } elsif ($e->{type} eq 'range') {
+ $w = $win->add(undef, 'TextEntry',
+ '-sbborder' => 1,
+ '-text' => '',
+ '-regexp' => '/^\d*$/',
+ '-onchange' => sub {
+ $w->text($e->{min}) if $w->text < $e->{min};
+ $w->text($e->{max}) if $w->text > $e->{max};
+ ${$e->{val}} = $w->text;
+ $changed->() if $changed;
+ },
+ %options);
+ $set = sub { $w->text($_[0] || '') };
} else {
$w = $win->add(undef, $e->{hidden} ? 'PasswordEntry' : 'TextEntry',
'-sbborder' => 1,
@@ -545,7 +565,7 @@ sub ask_fileW {
$dir = $opts->{directory} || $opts->{file} && dirname($opts->{file});
- if($opts->{save}) {
+ if ($opts->{save}) {
$file = $o->{cui}->savefilebrowser('-title' => $opts->{title}, '-path' => $dir, '-file' => basename($file));
} else {
$file = $o->{cui}->loadfilebrowser('-title' => $opts->{title}, '-path' => $dir, '-file' => basename($file));
@@ -554,13 +574,13 @@ sub ask_fileW {
my $err;
if (!$file) {
$err = N("No file chosen");
- } elsif(-f $file && $opts->{want_a_dir}) {
+ } elsif (-f $file && $opts->{want_a_dir}) {
$file = dirname($file);
- } elsif(-d $file && !$opts->{want_a_dir}) {
+ } elsif (-d $file && !$opts->{want_a_dir}) {
$err = N("You have chosen a directory, not a file");
} elsif (!-e $file && !$opts->{save}) {
$err = $opts->{want_a_dir} ? N("No such directory") : N("No such file");
- };
+ }
$err and $o->ask_warn('', $err) or $file;
}
diff --git a/perl-install/interactive/gtk.pm b/perl-install/interactive/gtk.pm
index a4f13a4b7..c37143fc3 100644
--- a/perl-install/interactive/gtk.pm
+++ b/perl-install/interactive/gtk.pm
@@ -1,4 +1,4 @@
-package interactive::gtk; # $Id$
+package interactive::gtk;
use diagnostics;
use strict;
@@ -8,35 +8,34 @@ use vars qw(@ISA);
use interactive;
use common;
-use mygtk2;
-use ugtk2 qw(:helpers :wrappers :create);
-use Gtk2::Gdk::Keysyms;
+use mygtk3;
+use ugtk3 qw(:helpers :wrappers :create);
my $forgetTime = 1000; #- in milli-seconds
sub new {
my $w = &interactive::new;
- ($w->{windowwidth}, $w->{windowheight}) = gtkroot()->get_size if !$::isInstall;
+ ($w->{windowwidth}, $w->{windowheight}) = mygtk3::root_window_size() if !$::isInstall;
$w;
}
sub enter_console { my ($o) = @_; $o->{suspended} = common::setVirtual(1) }
sub leave_console { my ($o) = @_; common::setVirtual(delete $o->{suspended}) }
sub adapt_markup {
- #- nothing needed, the default markup is gtk2's
+ #- nothing needed, the default markup is gtk3's
my ($_o, $s) = @_; return $s;
}
-sub exit { ugtk2::exit(@_) }
+sub exit { ugtk3::exit(@_) }
sub ask_fileW {
my ($in, $common) = @_;
- my $w = ugtk2::create_file_selector(%$common);
+ my $w = ugtk3::create_file_selector(%$common);
my $file;
$w->main(sub {
$file = $w->{chooser}->get_filename;
- my $err = ugtk2::file_selected_check($common->{save}, $common->{want_a_dir}, $file);
+ my $err = ugtk3::file_selected_check($common->{save}, $common->{want_a_dir}, $file);
$err and $in->ask_warn('', $err);
!$err;
}) && $file;
@@ -45,13 +44,12 @@ sub ask_fileW {
sub create_boxradio {
my ($e, $onchange_f, $double_click) = @_;
- my $boxradio = gtkpack2__(Gtk2::VBox->new,
+ my $boxradio = gtkpack2__(Gtk3::VBox->new,
my @radios = gtkradio('', @{$e->{formatted_list}}));
- my $tips = Gtk2::Tooltips->new;
mapn {
my ($txt, $w) = @_;
# workaround infamous 6 years old gnome bug #101968:
- $w->child->set_size_request(mygtk2::get_label_width(), -1) if $e->{alignment} ne 'right' && !$e->{label};
+ $w->get_child->set_size_request(mygtk3::get_label_width(), -1) if $e->{alignment} ne 'right' && !$e->{label};
$w->signal_connect(button_press_event => $double_click) if $double_click;
$w->signal_connect(key_press_event => $e->{may_go_to_next});
@@ -60,7 +58,7 @@ sub create_boxradio {
$onchange_f->(sub { $txt });
});
if ($e->{help}) {
- gtkset_tip($tips, $w,
+ $w->set_tooltip_text(
ref($e->{help}) eq 'HASH' ? $e->{help}{$txt} :
ref($e->{help}) eq 'CODE' ? $e->{help}($txt) : $e->{help});
}
@@ -79,11 +77,11 @@ sub create_treeview_list {
my ($e, $onchange_f, $double_click) = @_;
my $curr;
- my $list = Gtk2::ListStore->new("Glib::String");
- my $list_tv = Gtk2::TreeView->new_with_model($list);
+ my $list = Gtk3::ListStore->new("Glib::String");
+ my $list_tv = Gtk3::TreeView->new_with_model($list);
$list_tv->set_headers_visible(0);
$list_tv->get_selection->set_mode('browse');
- my $textcolumn = Gtk2::TreeViewColumn->new_with_attributes(undef, my $renderer = Gtk2::CellRendererText->new, 'text' => 0);
+ my $textcolumn = Gtk3::TreeViewColumn->new_with_attributes("", my $renderer = Gtk3::CellRendererText->new, 'text' => 0);
$list_tv->append_column($textcolumn);
$renderer->set_property('ellipsize', 'end');
@@ -104,8 +102,8 @@ sub create_treeview_list {
Glib::Source->remove($timeout) if $timeout; $timeout = '';
if ($event->keyval >= 0x100) {
- $e->{may_go_to_next}(), return 1 if member($event->keyval, ($Gtk2::Gdk::Keysyms{Return}, $Gtk2::Gdk::Keysyms{KP_Enter}));
- $starting_word = '' if !member($event->keyval, ($Gtk2::Gdk::Keysyms{Control_L}, $Gtk2::Gdk::Keysyms{Control_R}));
+ $e->{may_go_to_next}(), return 1 if member($event->keyval, (Gtk3::Gdk::KEY_Return, Gtk3::Gdk::KEY_KP_Enter));
+ $starting_word = '' if !member($event->keyval, (Gtk3::Gdk::KEY_Control_L, Gtk3::Gdk::KEY_Control_R));
} else {
if (member('control-mask', @{$event->state})) {
$c eq 's' or return 1;
@@ -114,7 +112,7 @@ sub create_treeview_list {
} else {
$e->{may_go_to_next}(), return 1 if $c eq ' ';
- $curr++ if $starting_word eq '' || $starting_word eq $c;
+ $curr++ if member($starting_word, '', $c);
$starting_word .= $c unless $starting_word eq $c;
}
my @l = @{$e->{formatted_list}};
@@ -125,7 +123,7 @@ sub create_treeview_list {
if ($j == @l) {
$starting_word = '';
} else {
- $select->(Gtk2::TreePath->new_from_string(($j + $curr) % @l));
+ $select->(Gtk3::TreePath->new_from_string(($j + $curr) % @l));
}
$timeout = Glib::Timeout->add($forgetTime, sub { $timeout = $starting_word = ''; 0 });
@@ -152,7 +150,7 @@ sub create_treeview_list {
my $nb = find_index { $_ eq $v } @{$e->{list}};
my ($old_path) = $list_tv->get_cursor;
if (!$old_path || $nb != $old_path->to_string) {
- $select->(Gtk2::TreePath->new_from_string($nb));
+ $select->(Gtk3::TreePath->new_from_string($nb));
}
undef $old_path if $old_path;
};
@@ -163,7 +161,7 @@ sub __create_tree_model {
my ($e) = @_;
my $sep = quotemeta $e->{separator};
- my $tree_model = Gtk2::TreeStore->new("Glib::String", if_($e->{image2f}, "Gtk2::Gdk::Pixbuf"));
+ my $tree_model = Gtk3::TreeStore->new("Glib::String", if_($e->{image2f}, "Gtk3::Gdk::Pixbuf"));
my $build_value = sub {
my ($v) = @_;
@@ -204,14 +202,14 @@ sub create_treeview_tree {
my ($e, $onchange_f, $double_click) = @_;
my $tree_model = __create_tree_model($e);
- my $tree = Gtk2::TreeView->new_with_model($tree_model);
+ my $tree = Gtk3::TreeView->new_with_model($tree_model);
$tree->get_selection->set_mode('browse');
{
- my $col = Gtk2::TreeViewColumn->new;
- $col->pack_start(my $texrender = Gtk2::CellRendererText->new, 0);
+ my $col = Gtk3::TreeViewColumn->new;
+ $col->pack_start(my $texrender = Gtk3::CellRendererText->new, 0);
$col->add_attribute($texrender, text => 0);
if ($e->{image2f}) {
- $col->pack_start(my $pixrender = Gtk2::CellRendererPixbuf->new, 0);
+ $col->pack_start(my $pixrender = Gtk3::CellRendererPixbuf->new, 0);
$col->add_attribute($pixrender, pixbuf => 1);
}
$tree->append_column($col);
@@ -220,10 +218,10 @@ sub create_treeview_tree {
my $select = sub {
my ($path_str) = @_;
- my $path = Gtk2::TreePath->new_from_string($path_str);
+ my $path = Gtk3::TreePath->new_from_string($path_str);
$tree->expand_to_path($path);
$tree->set_cursor($path, undef, 0);
- gtkflush(); #- workaround gtk2 bug not honouring centering on the given row if node was closed
+ gtkflush(); #- workaround gtk3 bug not honouring centering on the given row if node was closed
$tree->scroll_to_cell($path, undef, 1, 0.5, 0);
};
@@ -268,8 +266,8 @@ sub create_treeview_tree {
Glib::Source->remove($timeout) if $timeout; $timeout = '';
if ($event->keyval >= 0x100) {
- &$toggle and return 1 if member($event->keyval, ($Gtk2::Gdk::Keysyms{Return}, $Gtk2::Gdk::Keysyms{KP_Enter}));
- $starting_word = '' if !member($event->keyval, ($Gtk2::Gdk::Keysyms{Control_L}, $Gtk2::Gdk::Keysyms{Control_R}));
+ &$toggle and return 1 if member($event->keyval, (Gtk3::Gdk::KEY_Return, Gtk3::Gdk::KEY_KP_Enter));
+ $starting_word = '' if !member($event->keyval, (Gtk3::Gdk::KEY_Control_L, Gtk3::Gdk::KEY_Control_R));
} else {
my $next;
if (member('control-mask', @{$event->state})) {
@@ -278,7 +276,7 @@ sub create_treeview_tree {
$next = 1;
} else {
&$toggle and return 1 if $c eq ' ';
- $next = 1 if $starting_word eq '' || $starting_word eq $c;
+ $next = 1 if member($starting_word, '', $c);
$starting_word .= $c unless $starting_word eq $c;
}
my $word = quotemeta $starting_word;
@@ -332,7 +330,7 @@ sub create_treeview_tree {
}
#- $actions is a ref list of $action
-#- $action is a { kind => $kind, action => sub { ... }, button => Gtk2::Button->new(...) }
+#- $action is a { kind => $kind, action => sub { ... }, button => Gtk3::Button->new(...) }
#- where $kind is one of '', 'modify', 'remove', 'add'
sub add_modify_remove_action {
my ($button, $buttons, $e, $treelist) = @_;
@@ -348,7 +346,7 @@ sub add_modify_remove_action {
} elsif ($button->{kind} eq 'remove') {
${$e->{val}} = $e->{list}[0];
}
- ugtk2::gtk_set_treelist($treelist, [ map { may_apply($e->{format}, $_) } @{$e->{list}} ]);
+ ugtk3::gtk_set_treelist($treelist, [ map { may_apply($e->{format}, $_) } @{$e->{list}} ]);
add_modify_remove_sensitive($buttons, $e);
1;
@@ -357,7 +355,7 @@ sub add_modify_remove_action {
sub add_padding {
my ($w) = @_;
gtknew('HBox', children => [
- 0, gtknew('Alignment', width => $mygtk2::left_padding),
+ 0, gtknew('Alignment', width => $mygtk3::left_padding),
1, $w
]);
}
@@ -372,13 +370,13 @@ sub create_widget {
my ($w, $real_w, $focus_w, $set);
if ($e->{type} eq 'iconlist') {
- $w = Gtk2::Button->new;
+ $w = Gtk3::Button->new;
$set = sub {
gtkdestroy($e->{icon});
my $f = $e->{icon2f}->($_[0]);
$e->{icon} = -e $f ?
gtkcreate_img($f) :
- Gtk2::WrappedLabel->new(may_apply($e->{format}, $_[0]));
+ Gtk3::WrappedLabel->new(may_apply($e->{format}, $_[0]));
$w->add(gtkshow($e->{icon}));
};
$w->signal_connect(clicked => sub {
@@ -388,22 +386,23 @@ sub create_widget {
if ($e->{alignment} eq 'right') {
$real_w = gtknew('HButtonBox', layout => 'start', children_tight => [ $w ]);
} else {
- $real_w = gtkpack_(Gtk2::HBox->new(0,10), 1, Gtk2::HBox->new(0,0), 0, $w, 1, Gtk2::HBox->new(0,0));
+ $real_w = gtkpack_(Gtk3::HBox->new(0,10), 1, Gtk3::HBox->new(0,0), 0, $w, 1, Gtk3::HBox->new(0,0));
}
} elsif ($e->{type} eq 'bool') {
if ($e->{image}) {
- $w = ugtk2::gtkadd(Gtk2::CheckButton->new, gtkshow(gtkcreate_img($e->{image})));
+ $w = ugtk3::gtkadd(Gtk3::CheckButton->new, gtkshow(gtkcreate_img($e->{image})));
} else {
#- warn "\"text\" member should have been used instead of \"label\" one at:\n", common::backtrace(), "\n" if $e->{label} && !$e->{text};
- $w = Gtk2::CheckButton->new_with_label($e->{text});
+ $w = Gtk3::CheckButton->new_with_label($e->{text} || '');
}
$w->signal_connect(clicked => $onchange->(sub { $w->get_active }));
- $set = sub { $w->set_active($_[0]) };
+ ${$e->{val}} ||= 0;
+ $set = sub { $w->set_active($_[0] || 0) };
$real_w = add_padding($w);
} elsif ($e->{type} eq 'only_label') {
my @common = (
# workaround infamous 6 years old gnome bug #101968:
- if_($e->{alignment} ne 'right', width => mygtk2::get_label_width())
+ if_($e->{alignment} ne 'right', width => mygtk3::get_label_width())
);
$w = $e->{title} ?
gtknew('Title2', label => escape_text_for_TextView_markup_format(${$e->{val}}), @common) :
@@ -418,18 +417,18 @@ sub create_widget {
$w = gtknew(($e->{install_button} ? 'Install_Button' : 'Button'),
text => '', clicked => $e->{clicked_may_quit_cooked});
$set = sub {
- my $w = $w->child;
+ my $w = $w->get_child;
# handle Install_Buttons:
- if (ref($w) =~ /Gtk2::HBox/) {
- ($w) = grep { ref($_) =~ /Gtk2::Label/ } $w->get_children;
+ if (ref($w) =~ /Gtk3::HBox/) {
+ ($w) = find { ref($_) =~ /Gtk3::Label/ } $w->get_children;
}
# guard against 'advanced' widgets that are now in their own dialog
# (instead of in another block child of an expander):
return if !$w;
$w->set_label(may_apply($e->{format}, $_[0])) };
} elsif ($e->{type} eq 'range') {
- my $adj = Gtk2::Adjustment->new(${$e->{val}}, $e->{min}, $e->{max} + ($e->{SpinButton} ? 0 : 1), 1, ($e->{max} - $e->{min}) / 10, 1);
- $w = $e->{SpinButton} ? Gtk2::SpinButton->new($adj, 10, 0) : Gtk2::HScale->new($adj);
+ my $adj = Gtk3::Adjustment->new(${$e->{val}}, $e->{min}, $e->{max} + ($e->{SpinButton} ? 0 : 1), 1, ($e->{max} - $e->{min}) / 10, 1);
+ $w = $e->{SpinButton} ? Gtk3::SpinButton->new($adj, 10, 0) : Gtk3::HScale->new($adj);
$w->set_size_request($e->{SpinButton} ? 100 : 200, -1);
$w->set_digits(0);
$adj->signal_connect(value_changed => $onchange->(sub { $adj->get_value }));
@@ -442,7 +441,11 @@ sub create_widget {
$w = gtknew('HBox', children_tight => [
gtknew('Install_Button', text => $e->{text},
clicked => sub {
- ask_fromW($o, { title => $common->{title} || N("Advanced") }, $children) }
+ eval { ask_fromW($o, { title => $common->{advanced_title} || $common->{title} || N("Advanced") }, $children) };
+ if (my $err = $@) {
+ die $err if $err !~ /^wizcancel/;
+ }
+ }
)
]);
} elsif ($e->{type} =~ /list/) {
@@ -450,13 +453,15 @@ sub create_widget {
$e->{formatted_list} = [ map { may_apply($e->{format}, $_) } @{$e->{list}} ];
if (my $actions = $e->{add_modify_remove}) {
- my @buttons = ( N_("Add"), N_("Modify"), N_("Remove"));
+ my @buttons = (N_("Add"), N_("Modify"), N_("Remove"));
# Add Up/Down buttons if their actions are defined
- foreach (qw(Up Down)) {
- push @buttons, $_ if ($actions->{$_});
- }
- my @buttons = map {
- { kind => lc $_, action => $actions->{$_}, button => Gtk2::Button->new(translate($_)) };
+ push @buttons, map { if_($actions->{$_}, 'gtk-go-' . $_) } qw(Up Down);
+ @buttons = map {
+ my $button = /^gtk-/ ? gtknew('Button', image => gtknew('Image', stock => lc($_)))
+ : Gtk3::Button->new(translate($_));
+ my $kind = $_;
+ $kind =~ s/^gtk-go-//;
+ { kind => lc $kind, action => $actions->{$kind}, button => $button, real_kind => $_ };
} @buttons;
my $modify = find { $_->{kind} eq 'modify' } @buttons;
@@ -473,9 +478,19 @@ sub create_widget {
}
add_modify_remove_sensitive(\@buttons, $e);
- $real_w = gtkpack_(Gtk2::HBox->new(0,0),
+ my ($images, $real_buttons) = partition { $_->{real_kind} =~ /^gtk-/ } @buttons;
+ $real_w = gtkpack_(Gtk3::HBox->new(0,0),
1, create_scrolled_window($w),
- 0, gtkpack__(Gtk2::VBox->new(0,0), map { $_->{button} } @buttons));
+ 0, gtkpack__(Gtk3::VBox->new(0,0),
+ (map { $_->{button} } @$real_buttons),
+ if_($images,
+ gtknew('HButtonBox',
+ layout => 'spread',
+ children_loose => [ map { $_->{button} } @$images ]
+ )
+ ),
+ ),
+ );
$e->{grow} = 'expand';
} else {
my $use_boxradio = exists $e->{gtk}{use_boxradio} ? $e->{gtk}{use_boxradio} : @{$e->{list}} <= 8;
@@ -503,30 +518,31 @@ sub create_widget {
if (!$e->{separator}) {
if ($e->{not_edit}) {
- $real_w = $w = Gtk2::ComboBox->new_text;
+ $real_w = $w = Gtk3::ComboBoxText->new;
# FIXME: the following causes Gtk-CRITICAL but not solvable at realize time:
- first($w->child->get_cell_renderers)->set_property('ellipsize', 'end') if !$e->{do_not_ellipsize};
+ first($w->get_child->get_cells)->set_property('ellipsize', 'end') if !$e->{do_not_ellipsize};
$w->set_wrap_width($e->{gtk}{wrap_width}) if exists $e->{gtk}{wrap_width};
} else {
- $w = Gtk2::ComboBoxEntry->new_text;
- ($real_w, $w) = ($w, $w->child);
+ $w = Gtk3::ComboBoxText->new_with_entry;
+ ($real_w, $w) = ($w, $w->get_child);
}
$real_w->set_popdown_strings(@formatted_list);
} else {
$model = __create_tree_model($e);
- $real_w = $w = Gtk2::ComboBox->new_with_model($model);
+ $real_w = $w = Gtk3::ComboBox->new_with_model($model);
- $w->pack_start(my $texrender = Gtk2::CellRendererText->new, 0);
+ $w->pack_start(my $texrender = Gtk3::CellRendererText->new, 0);
$w->add_attribute($texrender, text => 0);
if ($e->{image2f}) {
- $w->pack_start(my $pixrender = Gtk2::CellRendererPixbuf->new, 0);
+ $w->pack_start(my $pixrender = Gtk3::CellRendererPixbuf->new, 0);
$w->add_attribute($pixrender, pixbuf => 1);
}
}
my $get = sub {
my $i = $model ? do {
- my $s = $model->get_string_from_iter($w->get_active_iter);
+ my (undef, $iter) = $w->get_active_iter;
+ my $s = $model->get_string_from_iter($iter);
eval { find_index { $s eq $_ } @{$model->{path_str_list}} };
} : do {
my $s = $w->get_text;
@@ -545,7 +561,7 @@ sub create_widget {
$w->set_active_iter($model->get_iter_from_string($path_str));
};
} else {
- $w->set_text($s) if $s ne $w->get_text && $_[0] ne $w->get_text;
+ $w->set_text($s) if !member($w->get_text, $s, $_[0]);
}
};
} else {
@@ -553,21 +569,21 @@ sub create_widget {
$w = gtknew('WeaknessCheckEntry');
}
else {
- $w = Gtk2::Entry->new;
+ $w = Gtk3::Entry->new;
}
$w->signal_connect(changed => $onchange->(sub { $w->get_text }));
$w->signal_connect(focus_in_event => sub { $w->select_region(0, -1) });
$w->signal_connect(focus_out_event => sub { $w->select_region(0, 0) });
$set = sub { $w->set_text($_[0]) if $_[0] ne $w->get_text };
if ($e->{type} eq 'file') {
- my $button = gtksignal_connect(Gtk2::Button->new_from_stock('gtk-open'), clicked => sub {
+ my $button = gtksignal_connect(Gtk3::Button->new_from_stock('gtk-open'), clicked => sub {
my $file = $o->ask_fileW({
title => $e->{label},
want_a_dir => to_bool($e->{want_a_dir}),
});
$set->($file) if $file;
});
- $real_w = gtkpack_(Gtk2::HBox->new(0,0), 1, $w, 0, $button);
+ $real_w = gtkpack_(Gtk3::HBox->new(0,0), 1, $w, 0, $button);
}
}
$w->signal_connect(key_press_event => $e->{may_go_to_next});
@@ -613,9 +629,9 @@ sub all_title_entries {
sub create_widgets_block {
my ($o, $common, $l, $update, $ignore_ref) = @_;
- my $label_sizegrp = Gtk2::SizeGroup->new('horizontal');
- my $right_label_sizegrp = Gtk2::SizeGroup->new('horizontal');
- my $realw_sizegrp = Gtk2::SizeGroup->new('horizontal');
+ my $label_sizegrp = Gtk3::SizeGroup->new('horizontal');
+ my $right_label_sizegrp = Gtk3::SizeGroup->new('horizontal');
+ my $realw_sizegrp = Gtk3::SizeGroup->new('horizontal');
@$l = map_index {
if ($::i && ($_->{type} eq 'expander' || $_->{title})) {
@@ -650,9 +666,9 @@ sub create_widgets_block {
]);
}
- my $eater = gtknew('Label') if $e->{alignment} eq 'right' && !$label_w;
+ my $eater = if_($e->{alignment} eq 'right' && !$label_w, gtknew('Label'));
- $e->{real_w} = gtkpack_(Gtk2::HBox->new,
+ $e->{real_w} = gtkpack_(Gtk3::HBox->new,
if_($e->{icon}, 0, eval { gtkcreate_img($e->{icon}) }),
if_($eater, 1, $eater),
if_($label_w, $e->{alignment} eq 'right', $label_w),
@@ -685,7 +701,7 @@ sub create_widgets {
my $ok_clicked = sub {
!$mainw->{ok} || $mainw->{ok}->get_property('sensitive') or return;
$mainw->{retval} = 1;
- Gtk2->main_quit;
+ Gtk3->main_quit;
};
my @all = all_entries($l);
@@ -703,7 +719,7 @@ sub create_widgets {
$mainw->{rwindow}->hide;
if (my $v = $e->{clicked_may_quit}()) {
$mainw->{retval} = $v;
- Gtk2->main_quit;
+ Gtk3->main_quit;
}
$mainw->{rwindow}->show;
$update->();
@@ -730,14 +746,13 @@ sub create_widgets {
# add asterisks before titles when there're more than one:
my @all_titles = all_title_entries($l);
if (2 <= @all_titles) {
- ${$_->{val}} = mygtk2::asteriskize(${$_->{val}}) foreach @all_titles;
+ ${$_->{val}} = mygtk3::asteriskize(${$_->{val}}) foreach @all_titles;
}
my $box = create_widgets_block($o, $common, $l, $update, \$ignore);
- my $tooltips = Gtk2::Tooltips->new;
foreach my $e (@all) {
- $tooltips->set_tip($e->{w}, $e->{help}) if $e->{help} && !ref($e->{help});
+ $e->{w}->set_tooltip_text($e->{help}) if $e->{help} && !ref($e->{help});
}
$box, $set_all;
@@ -757,7 +772,7 @@ sub filter_widgets {
}
}
-my $help_path = "/usr/share/doc/installer-help/";
+my $help_path = "/usr/share/doc/installer-help";
sub is_help_file_exist {
my ($_o, $id) = @_;
@@ -768,7 +783,7 @@ sub is_help_file_exist {
sub load_from_uri {
my ($view, $url) = @_;
- $view->open(get_html_file($::o, $url));
+ $view->load_uri(get_html_file($::o, $url));
}
sub get_html_file {
@@ -786,27 +801,27 @@ sub get_html_file {
$anchor ? "$url#$anchor" : $url;
}
-sub display_help {
- my ($o, $common, $mainw) = @_;
+sub display_help_window {
+ my ($o, $common) = @_;
if (my $file = $common->{interactive_help_id}) {
- require Gtk2::WebKit;
- my $view = gtknew('WebKit_View');
+ require Gtk3::WebKit2;
+ my $view = gtknew('WebKit2_WebView');
load_from_uri($view, $file);
- my $w = ugtk2->new(N("Help"), transient => $mainw->{real_window}, modal => 1);
+ my $w = ugtk3->new(N("Help"), modal => 1);
gtkadd($w->{rwindow},
- gtkpack_(Gtk2::VBox->new,
+ gtkpack_(Gtk3::VBox->new,
1, create_scrolled_window(gtkset_border_width($view, 5),
[ 'never', 'automatic' ],
),
- 0, Gtk2::HSeparator->new,
+ 0, Gtk3::HSeparator->new,
0, gtkpack(create_hbox('end'),
- gtknew('Button', text => N("Close"), clicked => sub { Gtk2->main_quit })
+ gtknew('Button', text => N("Close"), clicked => sub { Gtk3->main_quit })
),
),
);
- mygtk2::set_main_window_size($w->{rwindow});
+ mygtk3::set_main_window_size($w->{rwindow});
$w->{real_window}->grab_focus;
$w->{real_window}->show_all;
$w->main;
@@ -816,12 +831,23 @@ sub display_help {
}
}
+sub display_help {
+ my ($o, $common) = @_;
+ # not very safe but we run in a restricted environment anyway:
+ my $f = '/tmp/help.txt';
+ if ($common->{interactive_help}) {
+ output($f, $common->{interactive_help}->());
+ }
+ local $ENV{LC_ALL} = $::o->{locale}{lang} || 'C';
+ system('display_installer_help', $common->{interactive_help_id} || $f, $o->{locale}{lang});
+}
+
sub ask_fromW {
my ($o, $common, $l) = @_;
filter_widgets($l);
- my $mainw = ugtk2->new($common->{title}, %$o, if__($::main_window, transient => $::main_window),
+ my $mainw = ugtk3->new($common->{title}, %$o, if__($::main_window, transient => $::main_window),
if_($common->{icon}, icon => $common->{icon}), banner_title => $common->{banner_title},
);
@@ -829,12 +855,12 @@ sub ask_fromW {
$mainw->{box_allow_grow} = 1;
my $pack = create_box_with_title($mainw, @{$common->{messages}});
- mygtk2::set_main_window_size($mainw->{rwindow}) if $mainw->{pop_it} && !$common->{auto_window_size} && (@$l || $mainw->{box_size} == 200);
+ mygtk3::set_main_window_size($mainw->{rwindow}) if $mainw->{pop_it} && !$common->{auto_window_size} && (@$l || $mainw->{box_size} == 200);
my @more_buttons = (
if_($common->{interactive_help} || $common->{interactive_help_id},
[ gtknew('Install_Button', text => N("Help"),
- clicked => sub { display_help($o, $common, $mainw) }), undef, 1 ]),
+ clicked => sub { display_help($o, $common) }), undef, 1 ]),
if_($common->{more_buttons}, @{$common->{more_buttons}}),
);
my $buttons_pack = ($common->{ok} || !exists $common->{ok}) && $mainw->create_okcancel($common->{ok}, $common->{cancel}, '', @more_buttons);
@@ -844,13 +870,13 @@ sub ask_fromW {
if ($buttons_pack) {
$pack->pack_end(gtkshow($buttons_pack), 0, 0, 0);
}
- ugtk2::gtkadd($mainw->{window}, $pack);
+ ugtk3::gtkadd($mainw->{window}, $pack);
$set_all->();
my $entry_to_focus = find { $_->{focus} && $_->{focus}() } @$l;
my $widget_to_focus = $entry_to_focus ? $entry_to_focus->{focus_w} :
$common->{focus_cancel} ? $mainw->{cancel} :
- @$l && (!$mainw->{ok} || @$l == 1 && member(ref($l->[0]{focus_w}), "Gtk2::TreeView", "Gtk2::RadioButton")) ?
+ @$l && (!$mainw->{ok} || @$l == 1 && member(ref($l->[0]{focus_w}), "Gtk3::TreeView", "Gtk3::RadioButton")) ?
$l->[0]{focus_w} :
$mainw->{ok};
$widget_to_focus->grab_focus if $widget_to_focus;
@@ -873,7 +899,7 @@ sub ask_fromW {
sub ask_browse_tree_info_refW {
my ($o, $common) = @_;
add2hash($common, { wait_message => sub { $o->wait_message(@_) } });
- ugtk2::ask_browse_tree_info($common);
+ ugtk3::ask_browse_tree_info($common);
}
@@ -893,12 +919,12 @@ my $reuse_timeout;
sub wait_messageW {
my ($o, $title, $message, $message_modifiable) = @_;
- my $to_modify = Gtk2::Label->new(scalar warp_text(ref $message_modifiable ? '' : $message_modifiable));
+ my $to_modify = Gtk3::Label->new(scalar warp_text(ref $message_modifiable ? '' : $message_modifiable));
Glib::Source->remove($reuse_timeout) if $reuse_timeout; $reuse_timeout = '';
my $Window = gtknew('MagicWindow',
- title => $title,
+ if_($title, title => $title),
pop_it => defined $o->{pop_wait_messages} ? $o->{pop_wait_messages} : 1,
pop_and_reuse => $::isInstall,
modal => 1,
@@ -909,27 +935,27 @@ sub wait_messageW {
if_(ref($message_modifiable), 0, $message_modifiable),
]),
);
- mygtk2::enable_sync_flush($Window);
+ mygtk3::enable_sync_flush($Window);
$Window->{wait_messageW} = $to_modify;
- mygtk2::sync_flush($Window);
+ mygtk3::sync_flush($Window);
$Window;
}
sub wait_message_nextW {
my ($_o, $message, $Window) = @_;
- return if $message eq $Window->{wait_messageW}->get_text; #- needed otherwise no expose_event :(
+ return if $message eq $Window->{wait_messageW}->get_text; #- needed otherwise no draw :(
$Window->{displayed} = 0;
$Window->{wait_messageW}->set($message);
- mygtk2::sync($Window) while !$Window->{displayed};
+ mygtk3::sync($Window) while !$Window->{displayed};
}
sub wait_message_endW {
my ($_o, $Window) = @_;
if ($Window->{pop_and_reuse}) {
$reuse_timeout = Glib::Timeout->add(100, sub {
- mygtk2::destroy_previous_popped_and_reuse_window();
+ mygtk3::destroy_previous_popped_and_reuse_window();
});
} else {
- mygtk2::may_destroy($Window);
- mygtk2::flush();
+ mygtk3::may_destroy($Window);
+ mygtk3::flush();
}
}
@@ -939,7 +965,7 @@ sub wait_message_with_progress_bar {
my $progress = gtknew('ProgressBar');
my $w = $in->wait_message($o_title, $progress);
my $displayed;
- $progress->signal_connect(expose_event => sub { $displayed = 1; 0 });
+ $progress->signal_connect(draw => sub { $displayed = 1; 0 });
$w, sub {
my ($msg, $current, $total) = @_;
if ($msg) {
@@ -953,11 +979,11 @@ sub wait_message_with_progress_bar {
$progress->set_fraction($fraction);
$progress->show;
$displayed = 0;
- mygtk2::flush() while !$displayed;
+ mygtk3::flush() while !$displayed;
}
} else {
$progress->hide;
- mygtk2::flush();
+ mygtk3::flush();
}
};
}
diff --git a/perl-install/interactive/http.pm b/perl-install/interactive/http.pm
index 52372ab7a..70017c41d 100644
--- a/perl-install/interactive/http.pm
+++ b/perl-install/interactive/http.pm
@@ -1,4 +1,4 @@
-package interactive::http; # $Id$
+package interactive::http;
use diagnostics;
use strict;
@@ -115,7 +115,7 @@ sub ask_fromW {
open_stdout(); # re-open for writing
cont_stdout(N("Error"));
- print $q->h1(N("Error")), $q->p("Sorry, you can not go back");
+ print $q->h1(N("Error")), $q->p("Sorry, you cannot go back");
goto redisplay;
}
each_index {
diff --git a/perl-install/interactive/stdio.pm b/perl-install/interactive/stdio.pm
index 199b5573c..5bc53a0f5 100644
--- a/perl-install/interactive/stdio.pm
+++ b/perl-install/interactive/stdio.pm
@@ -1,4 +1,4 @@
-package interactive::stdio; # $Id$
+package interactive::stdio;
use diagnostics;
use strict;
@@ -63,7 +63,7 @@ ask_fromW_begin:
my @labels;
my $format_label = sub { my ($e) = @_; return sprintf("`%s' %s %s\n", ${$e->{val}}, $e->{label}, $e->{text}) };
my $do_widget = sub {
- my ($e, $ind) = @_;
+ my ($e, $_ind) = @_;
if ($e->{type} eq 'bool') {
print "$e->{text} $e->{label}\n";
@@ -170,7 +170,7 @@ sub wait_messageW {
print join "\n", $message, $message_modifiable;
}
sub wait_message_nextW {
- my $m = join "\n", $_[1];
+ my $m = $_[1];
print "\r$m", ' ' x (60 - length $m);
}
sub wait_message_endW { print "\nDone\n" }
diff --git a/perl-install/lang.pm b/perl-install/lang.pm
index 51979645a..a3c8aa7ea 100644
--- a/perl-install/lang.pm
+++ b/perl-install/lang.pm
@@ -1,4 +1,4 @@
-package lang; # $Id$
+package lang;
use diagnostics;
use strict;
@@ -6,25 +6,70 @@ use common;
use utf8;
use log;
-#- key: lang name (locale name for some (~5) special cases needing
-#- extra distinctions)
-#- [0]: lang name in english
-#- [1]: transliterated locale name in the locale name (used for sorting)
-#- [2]: default locale name to use for that language if there is not
-#- an existing locale for the combination language+country choosen
-#- [3]: geographic groups that this language belongs to (for displaying
-#- in the menu grouped in smaller lists), 1=Europe, 2=Asia, 3=Africa,
-#- 4=Oceania&Pacific, 5=America (if you wonder, it's the order
-#- used in the olympic flag)
-#- [4]: special value for LANGUAGE variable (if different of the default
-#- of 'll_CC:ll_DD:ll' (ll_CC: locale (if exist) resulting of the
-#- combination of chosen lang (ll) and country (CC), ll_DD: the
-#- default locale shown here (field [2]) and ll: the language (the key))
+=head1 SYNOPSYS
+
+B<lang> enables to manipulate the system or the user locale settings.
+
+=head1 Data structures & functions
+
+=head2 Languages
+
+=over
+
+=item our %lang
+
+The key is the lang name (locale name for some (~5) special cases needing
+extra distinctions)
+
+The fields are:
+
+=over 4
+
+=item 0 lang name in English
+
+=item 1 transliterated locale name in the locale name (used for sorting)
+
+=item 2 default locale name to use for that language if there is not
+an existing locale for the combination language+country chosen
+
+=item 3 geographic groups that this language belongs to (for displaying
+in the menu grouped in smaller lists):
+
+=over 4
+
+=item 1=Europe,
+
+=item 2=Asia,
+
+=item 3=Africa,
+
+=item 4=Oceania & Pacific,
+
+=item 5=America
+
+=back
+
+If you wonder, it's the order used in the Olympic flag...
+
+=item 4 special value for LANGUAGE variable (if different of the default
+of 'll_CC:ll_DD:ll' (ll_CC: locale (if exist) resulting of the
+combination of chosen lang (ll) and country (CC), ll_DD: the
+default locale shown here (field [2]) and ll: the language (the key))
+
+=back
+
+Example:
+
+ C<< 'fr' => [ 'French', 'Francais', 'fr_FR', '1 345', 'iso-8859-15' ], >>
+
+=cut
+
our %langs = (
'af' => [ 'Afrikaans', 'Afrikaans', 'af_ZA', ' 3 ', 'iso-8859-1' ],
'am' => [ 'Amharic', 'ZZ emarNa', 'am_ET', ' 3 ', 'utf_ethi' ],
'ar' => [ 'Arabic', 'AA Arabic', 'ar_EG', ' 23 ', 'utf_ar' ],
'as' => [ 'Assamese', 'ZZ Assamese', 'as_IN', ' 2 ', 'utf_beng' ],
+'ast' => [ 'Asturian', 'Asturianu', 'ast_ES', ' 1 ', 'unicode' ],
'az' => [ 'Azeri (Latin)', 'Azerbaycanca', 'az_AZ', ' 2 ', 'utf_az' ],
'be' => [ 'Belarussian', 'Belaruskaya', 'be_BY', '1 ', 'utf_cyr1' ],
'ber' => [ 'Berber', 'ZZ Tamazight', 'ber_MA', ' 3 ', 'utf_tfng', 'ber_MA:ber:fr' ],
@@ -112,7 +157,7 @@ our %langs = (
'ms' => [ 'Malay', 'Bahasa Melayu', 'ms_MY', ' 2 ', 'utf_lat1' ],
'mt' => [ 'Maltese', 'Maltin', 'mt_MT', '1 3 ', 'unicode' ],
#- "my_MM" not yet done, using "en_US" for now
-'my' => [ 'Burmese', 'ZZ Bamaca', 'en_US', ' 2 ', 'utf_mymr', 'my_MM:my' ],
+'my' => [ 'Burmese', 'ZZ Bamaca', 'my', ' 2 ', 'utf_mymr', 'my_MM:my' ],
'nb' => [ 'Norwegian Bokmaal', 'Norsk, Bokmal', 'nb_NO', '1 ', 'iso-8859-15', 'nb:no' ],
'nds' => [ 'Low Saxon', 'Platduutsch', 'nds_DE', '1 ', 'utf_lat1', 'nds_DE:nds' ],
'ne' => [ 'Nepali', 'ZZ Nepali', 'ne_NP', ' 2 ', 'utf_deva' ],
@@ -138,7 +183,7 @@ our %langs = (
'sq' => [ 'Albanian', 'Shqip', 'sq_AL', '1 ', 'iso-8859-1' ],
'sr' => [ 'Serbian Cyrillic', 'Srpska', 'sr_CS', '1 ', 'utf_cyr1', 'sp:sr' ],
#- "sh" comes first, because otherwise, due to the way glibc does language
-#- fallback, if "sr@Latn" is not there but a "sr" (whichs uses cyrillic)
+#- fallback, if "sr@Latn" is not there but a "sr" (which uses cyrillic)
#- is there, "sh" will never be used.
'sr@Latn' => [ 'Serbian Latin', 'Srpska', 'sr_CS', '1 ', 'unicode', 'sh:sr@Latn' ],
'ss' => [ 'Swati', 'SiSwati', 'ss_ZA', ' 3 ', 'utf_lat1', 'ss:en_ZA' ],
@@ -181,10 +226,18 @@ sub l2location {
}
sub l2charset { exists $langs{$_[0]} && $langs{$_[0]}[4] }
sub l2language { exists $langs{$_[0]} && $langs{$_[0]}[5] }
+
+sub is_locale_installed {
+ my ($locale) = @_;
+ my @ctypes = glob "/usr/share/locale/" . $locale . "{,.*}/LC_CTYPE";
+ foreach my $ctype (@ctypes) { -e $ctype && return 1 }
+ 0;
+}
+
sub list_langs {
my (%options) = @_;
my @l = keys %langs;
- $options{exclude_non_installed} ? grep { -e "/usr/share/locale/" . l2locale($_) . "/LC_CTYPE" } @l : @l;
+ $options{exclude_non_installed} ? grep { is_locale_installed(l2locale($_)) } @l : @l;
}
sub text_direction_rtl() {
@@ -194,19 +247,56 @@ sub text_direction_rtl() {
N("default:LTR") eq "default:RTL";
}
+=back
+
+=head2 Countries
+
+=over
+
+=item my %countries;
+
+The key is the ISO 639-1 country name code (that should be YY in xx_YY locale).
+
+The fields are:
+
+=over 4
+
+=item 0: country name in natural language
+
+=item 1: default locale for that country
+
+=item 2: geographic groups that this country belongs to (for displaying
+in the menu grouped in smaller lists):
+
+=over 4
+
+=item *1=Europe,
+
+=item *2=Asia,
+
+=item *3=Africa,
+
+=item 4=Oceania & Pacific,
+
+=item 5=America
+
+=back
+
+If you wonder, it's the order used in the Olympic flag.
+
+=back
+
+Note: for countries for which a glibc locale do not exist (yet) I tried to
+put a locale that makes sense; and a '#' at the end of the line to show
+the locale is not the "correct" one. 'en_US' is used when no good choice
+is available.
+
+Example:
+
+ C<< 'FR' => [ N_("France"), 'fr_FR', '1' ], >>
+
+=cut
-#- key: country name (that should be YY in xx_YY locale)
-#- [0]: country name in natural language
-#- [1]: default locale for that country
-#- [2]: geographic groups that this country belongs to (for displaying
-#- in the menu grouped in smaller lists), 1=Europe, 2=Asia, 3=Africa,
-#- 4=Oceania&Pacific, 5=America (if you wonder, it's the order
-#- used in the olympic flag)
-#-
-#- Note: for countries for which a glibc locale do not exist (yet) I tried to
-#- put a locale that makes sense; and a '#' at the end of the line to show
-#- the locale is not the "correct" one. 'en_US' is used when no good choice
-#- is available.
my %countries = (
'AD' => [ N_("Andorra"), 'ca_AD', '1' ],
'AE' => [ N_("United Arab Emirates"), 'ar_AE', '2' ],
@@ -447,17 +537,52 @@ my %countries = (
'ZM' => [ N_("Zambia"), 'en_US', '3' ], #
'ZW' => [ N_("Zimbabwe"), 'en_ZW', '5' ],
);
+
+=item c2name($country_code)
+
+Returns the translated name for $country_code.
+
+=cut
+
sub c2name { exists $countries{$_[0]} && translate($countries{$_[0]}[0]) }
+
+=item c2locale($country_code)
+
+Returns default locale for that $country_code.
+
+=cut
+
sub c2locale { exists $countries{$_[0]} && $countries{$_[0]}[1] }
-sub list_countries {
- my (%_options) = @_;
+
+=item list_countries()
+
+Returns the full list of countries.
+
+=cut
+
+sub list_countries() {
keys %countries;
}
-#- this list is built with the following command on the compile cluster:
-#- rpm -qpl /cooker/RPMS/release/locales-* | grep LC_CTYPE | grep '\.UTF-8' | cut -d'/' -f5 | sed 's/.UTF-8//' | sort | tr '\n' ' ' ; echo
-our @locales = qw(aa_DJ aa_ER aa_ER@saaho aa_ET af_ZA am_ET an_ES ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SY ar_TN ar_YE as_IN az_AZ be_BY ber_DZ ber_MA bg_BG bn_BD bn_IN br_FR bs_BA byn_ER ca_AD ca_ES ca_FR ca_IT cs_CZ cy_GB da_DK de_AT de_BE de_CH de_DE de_LU dz_BT el_CY el_GR en_AU en_BE en_BW en_CA en_DK en_GB en_HK en_IE en_IN en_NG en_NZ en_PH en_SG en_US en_ZA en_ZW eo_XX es_AR es_BO es_CL es_CO es_CR es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es_US es_UY es_VE et_EE eu_ES fa_IR fi_FI fil_PH fo_FO fr_BE fr_CA fr_CH fr_FR fr_LU fur_IT fy_DE fy_NL ga_IE gd_GB gez_ER gez_ER@abegede gez_ET gez_ET@abegede gl_ES gu_IN gv_GB ha_NG he_IL hi_IN hr_HR hsb_DE hu_HU hy_AM id_ID ig_NG ik_CA is_IS it_CH it_IT iu_CA ja_JP ka_GE kk_KZ kl_GL km_KH kn_IN ko_KR ku_TR kw_GB ky_KG lg_UG li_BE li_NL lo_LA lt_LT lv_LV mg_MG mi_NZ mk_MK ml_IN mn_MN mr_IN ms_MY mt_MT nb_NO nds_DE@traditional ne_NP nl_BE nl_NL nn_NO no_NO nr_ZA nso_ZA oc_FR om_ET om_KE pa_IN pap_AN pa_PK ph_PH pl_PL pt_BR pt_PT ro_RO ru_RU ru_UA rw_RW sc_IT se_NO sid_ET si_LK sk_SK sl_SI so_DJ so_ET so_KE so_SO sq_AL sr_ME sr_RS sr_RS@latin ss_ZA st_ZA sv_FI sv_SE sw_XX ta_IN te_IN tg_TJ th_TH ti_ER ti_ET tig_ER tk_TM tl_PH tn_ZA tr_CY tr_TR ts_ZA tt_RU ug_CN uk_UA ur_PK uz_UZ uz_UZ@cyrillic ve_ZA vi_VN wa_BE wal_ET xh_ZA yi_US yo_NG zh_CN zh_HK zh_SG zh_TW zu_ZA);
-
+=back
+
+=head2 Locales
+
+=over
+
+=item our @locales;
+
+The list of locales supported by glibc.
+
+=cut
+
+#- this list is built with the following command:
+#- urpmf LC_CTYPE | grep -E '/usr/share/locale/[a-z]' | cut -d'/' -f5 | sed 's/\.\(UTF-8\|ARM\|EUC\|GB.\|ISO\|KOI\|TCVN\).*\|\@\(euro\|iqtelif.*\)//' | sort -u | tr '\n' ' ';echo
+our @locales = qw(aa_DJ aa_ER aa_ER@saaho aa_ET af_ZA ak_GH am_ET an_ES anp_IN ar_AE ar_BH ar_DZ ar_EG ar_IN ar_IQ ar_JO ar_KW ar_LB ar_LY ar_MA ar_OM ar_QA ar_SA ar_SD ar_SS ar_SY ar_TN ar_YE as_IN ast_ES ayc_PE az_AZ be_BY be_BY@latin bem_ZM ber_DZ ber_MA bg_BG bho_IN bn_BD bn_IN bo_CN bo_IN br_FR brx_IN bs_BA byn_ER ca_AD ca_ES ca_FR ca_IT cmn_TW crh_UA csb_PL cs_CZ cv_RU cy_GB da_DK de_AT de_BE de_CH de_DE de_LU doi_IN dv_MV dz_BT el_CY el_GR en_AG en_AU en_BE en_BW en_CA en_DK en_GB en_HK en_IE en_IN en_NG en_NZ en_PH en_SG en_US en_ZA en_ZM en_ZW eo_XX es_AR es_BO es_CL es_CO es_CR es_CU es_DO es_EC es_ES es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_PY es_SV es@tradicional es_US es_UY es_VE et_EE eu_ES fa_IR ff_SN fi_FI fil_PH fo_FO fr_BE fr_CA fr_CH fr_FR fr_LU fur_IT fy_DE fy_NL ga_IE gd_GB gez_ER gez_ER@abegede gez_ET gez_ET@abegede gl_ES gu_IN gv_GB hak_TW ha_NG he_IL hi_IN hne_IN hr_HR hsb_DE ht_HT hu_HU hy_AM ia_FR id_ID ig_NG ik_CA is_IS it_CH it_IT iu_CA iw_IL ja_JP ka_GE kk_KZ kl_GL km_KH kn_IN kok_IN ko_KR ks_IN ks_IN@devanagari ku_TR kw_GB ky_KG lb_LU lg_UG li_BE lij_IT li_NL lo_LA lt_LT lv_LV lzh_TW mag_IN mai_IN mg_MG mhr_RU mi_NZ mk_MK ml_IN mni_IN mn_MN mr_IN ms_MY mt_MT my_MM nan_TW nan_TW@latin nb_NO nds_DE nds_DE@traditional nds_NL ne_NP nhn_MX niu_NU niu_NZ nl_AW nl_BE nl_NL nn_NO nr_ZA nso_ZA oc_FR om_ET om_KE or_IN os_RU pa_IN pap_AN pap_AW pap_CW pa_PK pl_PL ps_AF pt_BR pt_PT quz_PE ro_RO ru_RU ru_UA rw_RW sa_IN sat_IN sc_IT sd_IN sd_IN@devanagari se_NO shs_CA sid_ET si_LK sk_SK sl_SI so_DJ so_ET so_KE so_SO sq_AL sq_MK sr_ME sr_RS sr_RS@latin ss_ZA st_ZA sv_FI sv_SE sw_KE sw_TZ sw_XX szl_PL ta_IN ta_LK te_IN tg_TJ the_NP th_TH ti_ER ti_ET tig_ER tk_TM tl_PH tn_ZA tr_CY tr_TR ts_ZA tt_RU ug_CN uk_UA unm_US ur_IN ur_PK uz_UZ uz_UZ@cyrillic ve_ZA vi_VN wa_BE wae_CH wal_ET wo_SN xh_ZA yi_US yo_NG yue_HK zh_CN zh_HK zh_SG zh_TW zu_ZA);
+
+# (cg) Taken from systemd/src/locale/localed.c
+my @locale_conf_fields = qw(LANG LANGUAGE LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION);
+
sub standard_locale {
my ($lang, $country, $prefer_lang) = @_;
@@ -485,6 +610,13 @@ sub force_lang_charset {
analysed_to_lang($h);
}
+=item analysed_to_lang($h)
+
+The reverse of analyse_locale_name($lang), it takes a hash ref and returns
+the standard ll_CC.cc@VV
+
+=cut
+
sub analysed_to_lang {
my ($h) = @_;
$h->{main} . '_' . $h->{country} .
@@ -492,12 +624,40 @@ sub analysed_to_lang {
($h->{variant} ? '@' . $h->{variant} : '');
}
+=item analyse_locale_name($lang)
+
+Analyse a ll_CC.cc@VV locale and return a hash ref containing:
+
+=over 4
+
+=item * main (langage code)
+
+=item * country code
+
+=item * charset
+
+=item * variant
+
+=back
+
+=cut
+
sub analyse_locale_name {
my ($lang) = @_;
$lang =~ /^(.*?) (?:_(.*?))? (?:\.(.*?))? (?:\@(.*?))? $/x &&
{ main => $1, country => $2, charset => $3, variant => $4 };
}
+=item locale_to_main_locale($lang)
+
+=cut
+
+=item locale_to_main_locale($lang)
+
+Returns the locale code from a ll_LL representation.
+
+=cut
+
sub locale_to_main_locale {
my ($lang) = @_;
lc(analyse_locale_name($lang)->{main});
@@ -527,7 +687,7 @@ sub countries_to_locales {
my $may_add = sub {
my ($locale, $country) = @_;
if ($options{exclude_non_installed}) {
- -e "/usr/share/locale/$locale/LC_CTYPE" or return;
+ is_locale_installed($locale) or return;
}
my $h = analyse_locale_name($locale) or internal_error();
push @{$country2locales{$country || $h->{country}}}, $h;
@@ -545,56 +705,105 @@ sub countries_to_locales {
}
#-------------------------------------------------------------
-#
-# IM configuration hash tables
-#
-# in order to configure an IM, one has to:
-# - put generic configuration in %IM_config
-
-
-# This set generic IM fields.
-my @IM_i18n_fields = (
- 'XMODIFIERS',
-#- is the environnement variable used by the X11 XIM protocol
-#- it is of the form XIMODIFIERS="@im=foo"
- 'XIM',
-#- is used by some programs, it usually is the like XIMODIFIERS
-#- with the "@im=" part stripped
- 'GTK_IM_MODULE',
-#- the module to use for Gtk programs ("xim" to use an X11
-#- XIM server; or a a native gtk module if exists)
- 'XIM_PROGRAM',
-#- the XIM program to run (usually the same as XIM value, but
-#- in some cases different, particularly if parameters are needed;
- 'QT_IM_MODULE',
-#- the module to use for Qt programs ("xim" to use an X11
-#- XIM server; or a Qt plugin if exists)
-);
+=back
+
+=head2 Input Methods (IM)
+
+Various hash tables enables to configure IMs.
+
+=over
+
+=item my @IM_i18n_fields;
+
+This set generic IM fields:
+
+=over 4
+
+=item * B<XMODIFIERS>: is the environnement variable used by the X11 XIM protocol
+it is of the form XIMODIFIERS="@im=foo"
+
+=item * B<XIM>: is used by some programs, it usually is the like XIMODIFIERS
+with the "@im=" part stripped
+
+=item * B<GTK_IM_MODULE>: the module to use for Gtk programs ("xim" to use an X11
+XIM server; or a a native gtk module if exists)
+
+=item * B<XIM_PROGRAM>: the XIM program to run (usually the same as XIM value, but
+in some cases different, particularly if parameters are needed;
+
+=item * B<QT_IM_MODULE>: the module to use for Qt programs ("xim" to use an X11
+XIM server; or a Qt plugin if exists)
+
+=back
+
+=cut
+
+my @IM_i18n_fields = qw(XMODIFIERS XIM GTK_IM_MODULE XIM_PROGRAM QT_IM_MODULE);
+
+my $is_plasma;
+
+=item my %IM_config;
+
+In order to configure an IM, one has to put generic configuration here.
+Fields are :
+
+=over 4
+
+=item * B<GTK_IM_MODULE>: the Gtk+ IM module to use
+
+=item * B<QT_IM_MODULE>: the Qt IM module to use
+
+=item * B<XIM>:
+
+=item * B<XIM_PROGRAM>: the XIM program to use
+
+=item * B<XMODIFIERS>: the X Modifiers (see X11 config), eg: C<'@im=gcin'>,
+
+See above for those 5 parameters.
+
+=item * B<default_for_lang>: the language codes for which it's the default IM
+=item * B<langs>: 'zh',
+
+=item * B<packages:> a hash ref that contains subroutine references:
+
+=over 4
+
+=item * B<generic>: packages that must be installed for all languages
-my ($is_kde3, $is_kde4);
+=item * B<common>: packages that are shared between per language & generic packages
+
+=item * eventually several B<code_lang> returning per language packages
+
+=back
+
+The I<packages> field must be kept in sync with meta-task's C<rpmsrate-raw>, especially for the per language package selection!
+
+The actual packages list will consist of:
+
+=over 4
+
+=item * either per language package list or I<generic> list
+
+=item * plus the packages returned by I<common>
+
+=back
+
+=back
+
+=cut
-# keep the 'packages' field in sync with share/rpmsrate:
my %IM_config =
(
- chinput => {
- GTK_IM_MODULE => 'xim',
- XIM => 'chinput',
- XMODIFIERS => '@im=Chinput',
- XIM_PROGRAM => {
- 'zh_CN' => 'chinput -gb',
- 'en_SG' => 'chinput -gb',
- 'zh_HK' => 'chinput -big5',
- 'zh_TW' => 'chinput -big5',
- },
- langs => 'zh',
- packages => { generic => sub { 'miniChinput' } },
- },
fcitx => {
- GTK_IM_MODULE => 'xim',
+ GTK_IM_MODULE => 'fcitx',
XIM => 'fcitx',
XIM_PROGRAM => 'fcitx',
XMODIFIERS => '@im=fcitx',
langs => 'zh',
+ packages => {
+ common => sub { if_($is_plasma, 'fcitx-qt5') },
+ generic => sub { qw(fcitx) },
+ },
},
gcin => {
GTK_IM_MODULE => 'gcin',
@@ -603,10 +812,21 @@ my %IM_config =
XMODIFIERS => '@im=gcin',
langs => 'zh',
packages => {
- common => sub { if_($is_kde3, 'gcin-qt3'), if_($is_kde4, 'gcin-qt4') },
+ common => sub { if_($is_plasma, 'gcin-qt5') },
generic => sub { qw(gcin) },
},
},
+ hime => {
+ GTK_IM_MODULE => 'hime',
+ XIM => 'hime',
+ XIM_PROGRAM => 'hime',
+ XMODIFIERS => '@im=hime',
+ langs => 'zh',
+ packages => {
+ common => sub { if_($is_plasma, 'hime-qt5') },
+ generic => sub { qw(hime) },
+ },
+ },
'im-ja' => {
GTK_IM_MODULE => 'im-ja',
QT_IM_MODULE => 'xim',
@@ -616,14 +836,6 @@ my %IM_config =
langs => 'ja',
},
- kinput2 => {
- GTK_IM_MODULE => 'xim',
- XIM => 'kinput2',
- XIM_PROGRAM => 'kinput2',
- XMODIFIERS => '@im=kinput2',
- langs => 'ja',
- packages => { generic => sub { 'kinput2-wnn' } },
- },
nabi => {
GTK_IM_MODULE => 'xim',
XIM => 'nabi',
@@ -632,73 +844,49 @@ my %IM_config =
langs => 'ko',
},
- oxim => {
- GTK_IM_MODULE => 'oxim',
- XIM => 'oxim',
- XIM_PROGRAM => 'oxim',
- XMODIFIERS => '@im=oxim', # '@im=SCIM' is broken for now
- langs => 'zh_TW',
- packages => { generic => sub { 'oxim' } },
- },
'scim' => {
GTK_IM_MODULE => 'scim',
+ QT_IM_MODULE => 'xim',
XIM_PROGRAM => 'scim -d',
XMODIFIERS => '@im=SCIM',
packages => {
- common => sub { if_($is_kde3, 'scim-qtimm') },
generic => sub { qw(scim-m17n scim-tables) },
am => sub { qw(scim-tables) },
- ja => sub { qw(scim-anthy scim-input-pad scim-tomoe) },
- ko => sub { qw(scim-hangul) },
+ ja => sub { qw(scim-anthy) },
+ ko => sub { qw(scim-hangul) },
th => sub { qw(scim-thai) },
vi => sub { qw(scim-m17n) },
- zh => sub { qw(scim-pinyin scim-tables scim-chewing) },
+ zh => sub { qw(scim-tables-zh scim-chewing) },
},
},
'scim-bridge' => {
GTK_IM_MODULE => 'scim-bridge',
- XIM_PROGRAM => 'scim -d',
+ XIM_PROGRAM => 'scim-bridge',
XMODIFIERS => '@im=SCIM',
- default_for_lang => 'am ja ko th vi zh_CN zh_TW',
packages => {
- common => sub { if_($is_kde3, 'scim-bridge-qt3'), if_($is_kde4, 'scim-bridge-qt4') },
generic => sub { qw(scim-m17n scim-tables) },
am => sub { qw(scim-tables) },
- ja => sub { qw(scim-anthy scim-input-pad scim-tomoe) },
- ko => sub { qw(scim-hangul) },
+ ja => sub { qw(scim-anthy) },
+ ko => sub { qw(scim-hangul) },
th => sub { qw(scim-thai) },
vi => sub { qw(scim-m17n) },
- zh => sub { qw(scim-pinyin scim-tables scim-chewing) },
+ zh => sub { qw(scim-tables-zh scim-chewing) },
},
},
'ibus' => {
GTK_IM_MODULE => 'ibus',
- QT_IM_MODULE => 'xim',
- XIM_PROGRAM => 'ibus',
+ QT_IM_MODULE => 'ibus',
+ XIM_PROGRAM => 'ibus-daemon -d -x',
XMODIFIERS => '@im=ibus',
+ default_for_lang => 'am ja ko th vi zh_CN zh_TW',
packages => {
generic => sub { qw(ibus-table ibus-m17n) },
- ja => sub { qw(ibus-anthy) },
- zh => sub { qw(ibus-pinyin ibus-chewing) },
+ ja => sub { qw(ibus-mozc) },
+ zh => sub { qw(ibus-libpinyin ibus-chewing) },
ko => sub { qw(ibus-hangul) },
},
},
- skim => {
- GTK_IM_MODULE => 'scim',
- XIM_PROGRAM => 'skim -d',
- XMODIFIERS => '@im=SCIM',
- packages => {
- common => sub { if_($is_kde3, 'scim-qtimm') },
- generic => sub { qw(skim-scim-tables scim-m17n) },
- am => sub { qw(skim-scim-tables) },
- ja => sub { qw(skim-scim-anthy scim-input-pad scim-tomoe) },
- ko => sub { qw(scim-hangul-skim) },
- th => sub { qw(scim-thai) },
- vi => sub { qw(skim scim-m17n) },
- zh => sub { qw(skim-scim-pinyin skim-scim-tables scim-chewing) },
- },
- },
uim => {
GTK_IM_MODULE => 'uim',
XIM => 'uim',
@@ -706,17 +894,9 @@ my %IM_config =
XMODIFIERS => '@im=uim',
langs => 'ja',
packages => {
- common => sub { if_($is_kde3, 'uim-qtimmodule'), if_($is_kde4, 'uim-qt4immodule') },
generic => sub { qw(uim-gtk uim) },
},
},
- xcin => {
- XIM => 'xcin',
- XIM_PROGRAM => 'xcin',
- XMODIFIERS => '@im=xcin-zh_TW',
- GTK_IM_MODULE => 'xim',
- langs => 'zh',
- },
'x-unikey' => {
GTK_IM_MODULE => 'xim',
XMODIFIERS => '@im=unikey',
@@ -750,6 +930,12 @@ my %IM_locale_specific_config = (
);
+=item get_ims ($lang)
+
+Returns the IMs that are usable for $lang.
+
+=cut
+
sub get_ims {
my ($lang) = @_;
my $main_lang = analyse_locale_name($lang)->{main};
@@ -761,6 +947,12 @@ sub get_ims {
} keys %IM_config;
}
+=item get_default_im ($lang)
+
+Returns the default IM to use for $lang.
+
+=cut
+
sub get_default_im {
my ($lang) = @_;
find {
@@ -768,13 +960,18 @@ sub get_default_im {
} keys %IM_config;
}
+=item IM2packages ($locale)
+
+Returns the packages to use for $locale if it's set to use an IM
+
+=cut
+
sub IM2packages {
my ($locale) = @_;
if ($locale->{IM}) {
require any;
my @sessions = any::sessions();
- $is_kde3 = member('KDE', @sessions);
- $is_kde4 = member('KDE4', @sessions);
+ $is_plasma = any { /plasma/ } @sessions;
my $per_lang = $IM_config{$locale->{IM}}{packages} || {};
my $main_lang = analyse_locale_name($locale->{lang})->{main};
my $packages = $per_lang->{$main_lang} || $per_lang->{generic};
@@ -784,11 +981,32 @@ sub IM2packages {
} else { () }
}
-#- [0]: console font name
-#- [1]: unused
-#- [2]: console map (none if utf8)
-#- [3]: iocharset param for mount (utf8 if utf8)
-#- [4]: codepage parameter for mount (none if utf8)
+=back
+
+=head2 Charsets
+
+=over
+
+=item my %charsets;
+
+Key is encoding. Fields are:
+
+=over 4
+
+=item 0: console font name
+
+=item 1: unused
+
+=item 2: console map (none if utf8)
+
+=item 3: iocharset param for mount (utf8 if utf8)
+
+=item 4: codepage parameter for mount (none if utf8)
+
+=back
+
+=cut
+
my %charsets = (
#- chinese needs special console driver for text mode
"Big5" => [ undef, undef, undef, "big5", "950" ],
@@ -819,7 +1037,7 @@ my %charsets = (
"utf_cyr1" => [ "UniCyr_8x16", undef, undef, "utf8", undef ],
"utf_cyr2" => [ "koi8-k", undef, undef, "utf8", undef ],
"utf_deva" => [ undef, undef, undef, "utf8", undef ],
-"utf_ethi" => [ "Agafari-16", undef, undef, "utf8", undef ],
+"utf_ethi" => [ undef, undef, undef, "utf8", undef ],
"utf_geor" => [ "t_geors", undef, undef, "utf8", undef ],
"utf_guru" => [ undef, undef, undef, "utf8", undef ],
"utf_he" => [ undef, undef, undef, "utf8", undef ],
@@ -843,7 +1061,12 @@ my %charsets = (
"unicode" => [ "LatArCyrHeb-16", undef, undef, "utf8", undef ],
);
-#- for special cases not handled magically
+=item my %charset2kde_charset;
+
+For special cases not handled magically
+
+=cut
+
my %charset2kde_charset = (
gb2312 => 'gb2312.1980-0',
gbk => 'gb2312.1980-0',
@@ -857,6 +1080,12 @@ my %charset2kde_charset = (
#- -------------------
+=item l2console_font ($locale, $during_install)
+
+Returns console font name & console map (none if utf8 and if not during install);
+
+=cut
+
sub l2console_font {
my ($locale, $during_install) = @_;
my $c = $charsets{l2charset($locale->{lang}) || return} or return;
@@ -916,8 +1145,15 @@ sub charset2kde_charset {
$r || $o_default || 'iso10646-1';
}
-#- font+size for different charsets; the field [0] is the default,
-#- others are overrridens for fixed(1), toolbar(2), menu(3) and taskbar(4)
+=item my %charset2kde_font;
+
+Font+size for different charsets; the field [0] is the default,
+others are overrridens for fixed(1), toolbar(2), menu(3) and taskbar(4)
+
+This is needed because KDE historically doesn't use fontconfig...
+
+=cut
+
my %charset2kde_font = (
'C' => [ "Sans,10", "Monospace,10" ],
'iso-8859-1' => [ "Sans,10", "Monospace,10" ],
@@ -974,9 +1210,14 @@ sub charset2kde_font {
"$r,-1,5,0,0,0,0,0,0";
}
-# this define pango name fonts (like "NimbusSans L") depending
-# on the "charset" defined by language array. This allows to selecting
-# an appropriate font for each language for the installer only.
+=item my %charset2pango_font;
+
+This define pango name fonts (like "NimbusSans L") depending
+on the "charset" defined by language array. This allows to selecting
+an appropriate font for each language for the installer only.
+
+=cut
+
my %charset2pango_font = (
'utf_geor' => "Sans 14",
'utf_taml' => "TSCu_Paranar 14",
@@ -986,10 +1227,30 @@ my %charset2pango_font = (
'default' => "DejaVu Sans 12"
);
+=item charset2pango_font ($charset)
+
+Returns the font to use with $charset or the default one if non is set
+
+=cut
+
sub charset2pango_font {
my ($charset) = @_;
- $charset2pango_font{exists $charset2pango_font{$charset} ? $charset : 'default'};
+ $charset2pango_font{$charset} || $charset2pango_font{default};
+}
+
+=item charset2css_font ($charset)
+
+Returns the font to use with $charset or the default one if non is set
+
+=cut
+
+sub charset2css_font {
+ my ($charset) = @_;
+
+ my $font = $charset2pango_font{$charset} || $charset2pango_font{default};
+ my ($familly, $size) = $font =~ /(.*) (\d+)$/;
+ return "font-family: $familly; font-size: ${size}pt;";
}
sub l2pango_font {
@@ -1002,6 +1263,24 @@ sub l2pango_font {
return $font;
}
+sub l2css_font {
+ my ($lang) = @_;
+
+ my $charset = l2charset($lang) or log::l("no charset found for lang $lang!"), return;
+ my $font = charset2css_font($charset);
+ log::l("lang:$lang charset:$charset font:$font consolefont:$charsets{$charset}[0]");
+
+ return $font;
+}
+
+=back
+
+=head1 Other functions
+
+=over
+
+=cut
+
sub set {
my ($locale, $b_translate_for_console) = @_;
@@ -1042,7 +1321,7 @@ sub pack_langs {
}
sub system_locales_to_ourlocale {
- my ($locale_lang, $locale_country) = @_;
+ my ($locale_lang, $locale_country, $o_country) = @_;
my $locale = {};
my $h = analyse_locale_name($locale_lang);
my $locale_lang_no_encoding = join('_', $h->{main}, if_($h->{country}, $h->{country}));
@@ -1050,7 +1329,7 @@ sub system_locales_to_ourlocale {
$locale_lang_no_encoding : #- special lang's such as en_US pt_BR
$h->{main};
$locale->{lang} .= '@' . $h->{variant} if $h->{variant};
- $locale->{country} = analyse_locale_name($locale_country)->{country};
+ $locale->{country} = $o_country || analyse_locale_name($locale_country)->{country};
$locale->{utf8} = $h->{charset} && $h->{charset} eq 'UTF-8';
#- safe fallbacks
@@ -1077,11 +1356,23 @@ sub lang_changed {
$locale->{IM} = get_default_im($locale->{lang});
}
+=item read($b_user_only)
+
+Read locale settings from files.
+If $b_user_only is set, reads the user config, else read the system config.
+
+=cut
+
sub read {
my ($b_user_only) = @_;
- my ($f1, $f2) = ("$::prefix$ENV{HOME}/.i18n", "$::prefix/etc/sysconfig/i18n");
+ my $f1 = "$::prefix$ENV{HOME}/.i18n";
+ my $f2 = "$::prefix/etc/locale.conf";
+ # (cg) Only use the 'legacy' config name when the new one doesn't exist
+ $f2 = "$::prefix/etc/sysconfig/i18n" if ! -e $f2 && -e "$::prefix/etc/sysconfig/i18n";
my %h = getVarsFromSh($b_user_only && -e $f1 ? $f1 : $f2);
- my $locale = system_locales_to_ourlocale($h{LC_MESSAGES} || 'en_US', $h{LC_MONETARY} || 'en_US');
+ # Fill in defaults (from LANG= variable)
+ $h{$_} ||= $h{LANG} || 'en_US' foreach @locale_conf_fields;
+ my $locale = system_locales_to_ourlocale($h{LC_MESSAGES}, $h{LC_MONETARY}, $h{COUNTRY});
if (find { $h{$_} } @IM_i18n_fields) {
my $current_IM = find {
@@ -1110,6 +1401,7 @@ sub i18n_env {
my $h = {
XKB_IN_USE => '',
+ COUNTRY => $locale->{country},
(map { $_ => $locale_lang } qw(LANG LC_COLLATE LC_CTYPE LC_MESSAGES LC_TIME)),
LANGUAGE => getLANGUAGE($locale->{lang}, $locale->{country}, $locale->{utf8}),
(map { $_ => $locale_country } qw(LC_NUMERIC LC_MONETARY LC_ADDRESS LC_MEASUREMENT LC_NAME LC_PAPER LC_IDENTIFICATION LC_TELEPHONE))
@@ -1131,6 +1423,12 @@ sub write_and_install {
&write($locale, $b_user_only, $b_dont_touch_kde_files);
}
+=item write ($locale, $b_user_only, $b_dont_touch_kde_files)
+
+Save locale settings, either system ones or per user ones (if $b_user_only is set).
+
+=cut
+
sub write {
my ($locale, $b_user_only, $b_dont_touch_kde_files) = @_;
@@ -1190,7 +1488,25 @@ sub write {
log::explanations(qq(Setting l10n configuration in "$file"));
setVarsInShMode($::prefix . $file, 0644, $h);
- configure_hal($locale) if !$b_user_only;
+ if (!$b_user_only) {
+ $file = '/etc/locale.conf';
+ log::explanations(qq(Setting locale configuration in "$file"));
+ # Only include valid fields and ommit any that are the same as LANG to make it cleaner
+ # (cleanup logic copied from systemd)
+ my @filtered_keys = grep { exists $h->{$_} && ($_ eq 'LANG' || !exists $h->{LANG} || $h->{$_} ne $h->{LANG}) } @locale_conf_fields;
+ my @filtered_input = grep { exists $h->{$_} } @IM_i18n_fields;
+ push @filtered_keys, @filtered_input;
+ push @filtered_keys, 'COUNTRY' if exists $h->{COUNTRY};
+ my $h2 = { map { $_ => $h->{$_} } @filtered_keys };
+ setVarsInShMode($::prefix . $file, 0644, $h2);
+
+ if ($h->{SYSFONT}) {
+ $file = '/etc/vconsole.conf';
+ $h2 = { 'FONT' => $h->{SYSFONT} };
+ $h2->{FONT_UNIMAP} = $h->{SYSFONTACM} if $h->{SYSFONTACM};
+ addVarsInShMode($::prefix . $file, 0644, $h2);
+ }
+ }
run_program::rooted($::prefix, 'grub-gfxmenu', '--quiet', '--lang', $locale->{lang}) if !$b_user_only;
@@ -1205,7 +1521,7 @@ sub write {
my $kderc = $::prefix ? common::expand_symlinks_with_absolute_symlinks_in_prefix($::prefix, '/etc/kderc') : '/etc/kderc';
log::l("reading $kderc");
my %dir_defaults = read_gnomekderc($kderc, 'Directories-default');
- first(split(',', $dir_defaults{prefixes})) || "/etc/kde"
+ first(split(',', $dir_defaults{prefixes})) || "/etc/kde";
}) . '/share/config';
-d $confdir or die 'not configuring kde config files since it is not installed/used';
@@ -1221,7 +1537,7 @@ sub write {
if (!$b_user_only) {
my $kde_charset = charset2kde_charset(l2charset($locale->{lang}));
my $welcome = common::to_utf8(N("Welcome to %s", '%n'));
- log::explanations(qq(Configuring KDM/MdkKDM));
+ log::explanations(qq(Configuring KDM));
substInFile {
s/^(GreetString)=.*/$1=$welcome/;
s/^(Language)=.*/$1=$locale->{lang}/;
@@ -1249,58 +1565,6 @@ sub write {
}
}
-sub configure_hal {
- my ($locale) = @_;
- my $option = sub {
- my ($cat, $val) = @_;
- qq(\t\t<merge key="$cat.policy.mount_option.$val" type="bool">true</merge>);
- };
- my %options = (fs_options($locale), utf8 => 1);
- my %known_options = (
- auto => [ 'iocharset', 'codepage' ],
- vfat => [ 'iocharset', 'codepage' ],
- msdos => [ 'iocharset', 'codepage' ],
- ntfs => [ 'iocharset', 'utf8' ],
- cdrom => [ 'iocharset', 'codepage', 'utf8' ],
- );
- my $options = sub {
- my ($cat, $name) = @_;
- join("\n", map {
- $option->($cat, $_ eq 'utf8' ? $_ : "$_=$options{$_}");
- } grep { $options{$_} } @{$known_options{$name}});
- };
- my $options_per_fs = join('', map {
- my $s = $options->('volume', $_);
- $s && sprintf(<<'EOF', $_, $s);
- <match key="volume.fstype" string="%s">
-%s
- </match>
-EOF
- } 'auto', 'vfat', 'msdos', 'ntfs');
-
- output_p("$::prefix/usr/share/hal/fdi/30osvendor/locale-policy.fdi",
- sprintf(<<'EOF', $options_per_fs, $options->('storage', 'cdrom')));
-<?xml version="1.0" encoding="UTF-8"?> <!-- -*- SGML -*- -->
-
-<deviceinfo version="0.2">
-
- <device>
- <match key="block.is_volume" bool="true">
- <match key="volume.fsusage" string="filesystem">
-
-%s
- </match>
- </match>
-
- <match key="storage.drive_type" string="cdrom">
-%s
- </match>
- </device>
-
-</deviceinfo>
-EOF
-}
-
sub configure_kdeglobals {
my ($locale, $confdir) = @_;
my $kdeglobals = "$confdir/kdeglobals";
@@ -1337,6 +1601,12 @@ sub configure_kdeglobals {
));
}
+=item bindtextdomain()
+
+Binds the translation domains with the proper encoding (UTF-8).
+
+=cut
+
sub bindtextdomain() {
#- if $::prefix is set, search for libDrakX.mo in locale_special
#- NB: not using $::isInstall to make it work more easily at install and standalone
@@ -1351,6 +1621,13 @@ sub bindtextdomain() {
$localedir;
}
+=item load_mo ($o_lang)
+
+Used by the installer: returns the firste existing .mo file to load according to $o_lang.
+If it's not set, we rely on environment variables.
+
+=cut
+
sub load_mo {
my ($o_lang) = @_;
@@ -1367,13 +1644,24 @@ sub load_mo {
}
-#- used in share/list.xml during "make get_needed_files"
+=item console_font_files()
+
+Used in share/list.xml during "make get_needed_files"
+
+=cut
+
sub console_font_files() {
map { -e $_ ? $_ : "$_.gz" }
(map { my $p = "/usr/lib/kbd/consolefonts/$_"; -e "$p.psfu" || -e "$p.psfu.gz" ? "$p.psfu" : "$p.psf" } uniq grep { $_ } map { $_->[0] } values %charsets),
(map { "/usr/lib/kbd/consoletrans/${_}_to_uni.trans" } uniq grep { $_ } map { $_->[2] } values %charsets);
}
+=item load_console_font($locale)
+
+Loads the console font...
+
+=cut
+
sub load_console_font {
my ($locale) = @_;
return if $::local_install;
@@ -1384,6 +1672,12 @@ sub load_console_font {
run_program::run('setfont', '-v', $name || 'lat0-16', if_($acm, '-m', $acm));
}
+=item fs_options($locale)
+
+Returns the options suitable for filesystems mounting according to $locale.
+
+=cut
+
sub fs_options {
my ($locale) = @_;
if ($locale->{utf8}) {
@@ -1395,6 +1689,12 @@ sub fs_options {
}
}
+=item check()
+
+Used by 'make check_full'.
+
+=cut
+
sub check() {
$^W = 0;
my ($warnings, $errors) = (0, 0);
@@ -1446,4 +1746,8 @@ sub check() {
exit($errors ? 1 : 0);
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/list_firmwares.pm b/perl-install/list_firmwares.pm
new file mode 100644
index 000000000..f1febc23b
--- /dev/null
+++ b/perl-install/list_firmwares.pm
@@ -0,0 +1,26 @@
+# generated using kernel-desktop-6.4.2-2.mga9
+# This list is autogenerated ; Do NOT alter manually.
+
+package list_firmwares;
+
+our @modules_with_nonfree_firmware =
+ qw(acenic advansys amdgpu ar5523 at76c50x-usb ath10k_pci ath3k ath6kl_sdio
+ ath6kl_usb ath9k_htc atmel bfa bna bnx2 bnx2x brcmfmac brcmsmac btintel
+ btmrvl_sdio btmtk btrtl carl9170 cassini ccp crypto_safexcel csiostor cx18
+ cx25840 cxgb3 cxgb4 dvb-ttpci dvb-ttusb-budget dvb-usb-af9035 dvb-usb-dib0700
+ e100 emi26 emi62 go7007 go7007-loader gspca_vicam hfi1 i915 ib_qib ice
+ io_edgeport io_ti ipw2100 ipw2200 ivtv iwl3945 iwl4965 iwlwifi kaweth keyspan
+ lgs8gxx libertas_cs libertas_sdio libertas_spi liquidio mlxsw_spectrum
+ mscc mt7601u mt7615e mt7663s mt7663u mt76x0e mt76x0u mt76x2e mt76x2u mt7915e
+ mt7921e mt7921s mt7921u mwifiex_sdio mwifiex_usb mwl8k myri10ge n5pf netxen_nic
+ nfp nouveau orinoco pvrusb2 qat_4xxx qat_c3xxx qat_c62x qat_dh895xcc qed
+ qla1280 qla2xxx qlcnic r8152 r8169 r8192e_pci r8712u radeon rp2 rt2800pci
+ rt2800usb rt61pci rt73usb rtl8188ee rtl8192ce rtl8192cu rtl8192de rtl8192ee
+ rtl8192se rtl8723be rtl8821ae rtl8xxxu rtw88_8723d rtw88_8821c rtw88_8822b
+ rtw88_8822c rtw89_8852a rtw89_8852b rtw89_8852c s2255drv saa7134-go7007
+ slicoss smc91c92_cs smsmdtv snd-hda-codec-ca0132 snd-korg1212 snd-maestro3
+ snd-ymfpci starfire tehuti tg3 ti_usb_3410_5052 typhoon ueagle-atm ums-eneub6250
+ usb8xxx usbdux usbduxfast usbduxsigma vt6656_stage whiteheat wil6210 wilc1000
+ wl1251 wl12xx wl18xx xc4000 xc5000 yam);
+
+1;
diff --git a/perl-install/log.pm b/perl-install/log.pm
index 365aa323c..a0f7bd41d 100644
--- a/perl-install/log.pm
+++ b/perl-install/log.pm
@@ -1,4 +1,4 @@
-package log; # $Id$
+package log;
use diagnostics;
use strict;
diff --git a/perl-install/lvm.pm b/perl-install/lvm.pm
index 28a7cb41a..bf212bd6f 100644
--- a/perl-install/lvm.pm
+++ b/perl-install/lvm.pm
@@ -1,4 +1,4 @@
-package lvm; # $Id$
+package lvm;
use diagnostics;
use strict;
@@ -12,12 +12,22 @@ use devices;
use fs::type;
use run_program;
+=head1 SYNOPSYS
+
+Manage LVM (PV, VG, LV)
+
+=head1 Functions
+
+=over 4
+
+=cut
+
#- for partition_table_xxx emulation
sub new {
my ($class, $name) = @_;
$name =~ s/[^\w-]/_/g;
$name = substr($name, 0, 63); # max length must be < NAME_LEN / 2 where NAME_LEN is 128
- bless { disks => [], VG_name => $name }, $class;
+ bless { disks => [], VG_name => $name, device => $name }, $class;
}
sub use_pt_type { 0 }
sub hasExtended { 0 }
@@ -29,17 +39,38 @@ sub cylinder_size {
$hd->{extent_size};
}
-init() or log::l("lvm::init failed");
+=item detect_durting_install()
+
+Explicitly scan VGs.
+
+=cut
+
+sub detect_during_install() {
+ run_program::run('lvm2', 'vgscan');
+ run_program::run('lvm2', 'vgchange', '-a', 'y');
+}
+
+=item init()
+
+Loads LVM modules and scan VGs (if in installer, not in standalone tool).
+
+=cut
sub init() {
devices::init_device_mapper();
- if ($::isInstall) {
- run_program::run('lvm2', 'vgscan');
- run_program::run('lvm2', 'vgchange', '-a', 'y');
- }
+ detect_during_install() if $::isInstall || $::isLiveInstall;
1;
}
+init() or log::l("lvm::init failed");
+
+=item lvm_cmd(...)
+
+Run a LVM command, then rescan VG.
+See run_program::run() for arguments.
+
+=cut
+
sub lvm_cmd {
if (my $r = run_program::run('lvm2', @_)) {
$r;
@@ -47,18 +78,31 @@ sub lvm_cmd {
$? >> 8 == 98 or return;
#- sometimes, it needs running vgscan again, doing so:
+ log::l("forcing rescan because of prior failure");
run_program::run('lvm2', 'vgscan');
run_program::run('lvm2', @_);
}
}
+
+=item lvm_cmd_or_die($prog, @para)
+
+Like lvm_cmd() but die if there's an error.
+
+=cut
+
sub lvm_cmd_or_die {
my ($prog, @para) = @_;
- lvm_cmd($prog, @para) or die "$prog failed\n";
+ my @err;
+ lvm_cmd("2>", \@err, $prog, @para) or do {
+ my $err = $err[-1]; # prevent "Modification of non-creatable array value attempted"
+ chomp($err);
+ die "$prog failed: $err\n";
+ };
}
sub check {
my ($do_pkgs) = @_;
-
+ local $::prefix = ''; # We want lvm2 on current system
$do_pkgs->ensure_binary_is_installed('lvm2', 'lvm2') or return;
init();
1;
@@ -104,6 +148,12 @@ sub lv_nb_pvs {
listlength(lv_to_pvs($lv));
}
+=item get_lvs($lvm)
+
+Return list of LVs.
+
+=cut
+
sub get_lvs {
my ($lvm) = @_;
my @l = run_program::get_stdout('lvm2', 'lvs', '--noheadings', '--nosuffix', '--units', 's', '-o', 'lv_name', $lvm->{VG_name}) =~ /(\S+)/g;
@@ -111,15 +161,18 @@ sub get_lvs {
[
map {
my $device = "$lvm->{VG_name}/$_";
+ my $p = fs::wild_device::to_subpart("/dev/$device");
my $part = {
device => $device,
lv_name => $_,
rootDevice => $lvm->{VG_name},
+ minor => $p->{minor},
+ major => $p->{major},
size => get_lv_size($device) };
if (my $type = -e "/dev/$device" && fs::type::type_subpart_from_magic($part)) {
put_in_hash($part, $type);
} else {
- $part->{fs_type} = 'ext2';
+ $part->{fs_type} = defaultFS();
}
$part;
} @l
@@ -167,10 +220,21 @@ sub lv_delete {
@$list = grep { $_ != $lv } @$list;
}
+sub suggest_lv_name_from_mnt_point {
+ my ($lv) = @_;
+ my $str = $lv->{mntpoint};
+ $str = "root" if $str eq '/';
+ $str =~ s!^/!!;
+ $str =~ s!/!_!g;
+ $str =~ s! !_!g;
+ 'lv_' . $str;
+}
+
sub suggest_lv_name {
my ($lvm, $lv) = @_;
my $list = $lvm->{primary}{normal} ||= [];
- $lv->{lv_name} ||= 1 + max(map { if_($_->{device} =~ /(\d+)$/, $1) } @$list);
+ $lv->{lv_name} ||= suggest_lv_name_from_mnt_point($lv);
+ $lv->{lv_name} ||= "lv_" . (1 + max(map { if_($_->{device} =~ /(\d+)$/, $1) } @$list));
}
sub lv_create {
@@ -220,4 +284,8 @@ sub create_singleton_vg {
add_to_VG($part, $lvm);
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/messages.pm b/perl-install/messages.pm
index 4be398be7..b63f81b38 100644
--- a/perl-install/messages.pm
+++ b/perl-install/messages.pm
@@ -1,26 +1,33 @@
-package messages; # $Id$
+package messages;
use diagnostics;
use strict;
use common;
-sub main_license {
- my ($us, $google) = @_;
-#-PO: keep the double empty lines between sections, this is formatted a la LaTeX
-N("Introduction
+sub main_license() {
+ join("\n\n\n",
+ #-PO: Only write something if needed:
+ N("_: You can warn about unofficial translation here"),
+ main_license_raw()
+ );
+}
-The operating system and the different components available in the Mandriva Linux distribution
+sub main_license_raw() {
+ join("\n\n\n",
+N("Introduction"),
+
+N("The operating system and the different components available in the Mageia distribution
shall be called the \"Software Products\" hereafter. The Software Products include, but are not
restricted to, the set of programs, methods, rules and documentation related to the operating
-system and the different components of the Mandriva Linux distribution, and any applications
-distributed with these products provided by Mandriva's licensors or suppliers.
+system and the different components of the Mageia distribution, and any applications
+distributed with these products provided by Mageia's licensors or suppliers."),
-1. License Agreement
+N("1. License Agreement"),
-Please read this document carefully. This document is a license agreement between you and
-Mandriva S.A. which applies to the Software Products.
+N("Please read this document carefully. This document is a license agreement between you and
+Mageia which applies to the Software Products.
By installing, duplicating or using any of the Software Products in any manner, you explicitly
accept and fully agree to conform to the terms and conditions of this License.
If you disagree with any portion of the License, you are not allowed to install, duplicate or use
@@ -28,139 +35,87 @@ the Software Products.
Any attempt to install, duplicate or use the Software Products in a manner which does not comply
with the terms and conditions of this License is void and will terminate your rights under this
License. Upon termination of the License, you must immediately destroy all copies of the
-Software Products.
+Software Products."),
-2. Limited Warranty
+N("2. Limited Warranty"),
-The Software Products and attached documentation are provided \"as is\", with no warranty, to the
+#-PO: keep the double empty lines between sections, this is formatted a la LaTeX
+N("The Software Products and attached documentation are provided \"as is\", with no warranty, to the
extent permitted by law.
-Neither Mandriva S.A. nor its licensors or suppliers will, in any circumstances and to the extent
+Neither Mageia nor its licensors or suppliers will, in any circumstances and to the extent
permitted by law, be liable for any special, incidental, direct or indirect damages whatsoever
(including without limitation damages for loss of business, interruption of business, financial
loss, legal fees and penalties resulting from a court judgment, or any other consequential loss)
-arising out of the use or inability to use the Software Products, even if Mandriva S.A. or its
+arising out of the use or inability to use the Software Products, even if Mageia or its
licensors or suppliers have been advised of the possibility or occurrence of such damages.
LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME COUNTRIES
-To the extent permitted by law, neither Mandriva S.A. nor its licensors, suppliers or
+To the extent permitted by law, neither Mageia nor its licensors, suppliers or
distributors will, in any circumstances, be liable for any special, incidental, direct or indirect
damages whatsoever (including without limitation damages for loss of business, interruption of
business, financial loss, legal fees and penalties resulting from a court judgment, or any
other consequential loss) arising out of the possession and use of software components or
-arising out of downloading software components from one of Mandriva Linux sites which are
+arising out of downloading software components from one of Mageia sites which are
prohibited or restricted in some countries by local laws.
This limited liability applies to, but is not restricted to, the strong cryptography components
included in the Software Products.
-However, because some jurisdictions do not allow the exclusion or limitation or liability for
-consequential or incidental damages, the above limitation may not apply to you.
-%s
+However, because some jurisdictions do not allow the exclusion or limitation of liability for
+consequential or incidental damages, the above limitation may not apply to you."),
-3. The GPL License and Related Licenses
-The Software Products consist of components created by different persons or entities. %s
+N("3. The GPLv2 License and Related Licenses"),
+
+N("The Software Products consist of components created by different persons or entities.
Most of these licenses allow you to use, duplicate, adapt or redistribute the components which
they cover. Please read carefully the terms and conditions of the license agreement for each component
before using any component. Any question on a component license should be addressed to the component
-licensor or supplier and not to Mandriva.
-The programs developed by Mandriva S.A. are governed by the GPL License. Documentation written
-by Mandriva S.A. is governed by a specific license. Please refer to the documentation for
-further details.
+licensor or supplier and not to Mageia.
+The programs developed by Mageia are governed by the GPLv2 License. Documentation written
+by Mageia is governed by \"%s\" License.", "CC-By-SA"),
-4. Intellectual Property Rights
+N("4. Intellectual Property Rights"),
-All rights to the components of the Software Products belong to their respective authors and are
+N("All rights to the components of the Software Products belong to their respective authors and are
protected by intellectual property and copyright laws applicable to software programs.
-Mandriva S.A. and its suppliers and licensors reserves their rights to modify or adapt the Software
+Mageia and its suppliers and licensors reserves their rights to modify or adapt the Software
Products, as a whole or in parts, by all means and for all purposes.
-\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of Mandriva S.A.
+\"Mageia\" and associated logos are trademarks of %s", "Mageia.Org"),
-5. Governing Laws
+N("5. Governing Laws"),
-If any portion of this agreement is held void, illegal or inapplicable by a court judgment, this
+N("If any portion of this agreement is held void, illegal or inapplicable by a court judgment, this
portion is excluded from this contract. You remain bound by the other applicable sections of the
agreement.
The terms and conditions of this License are governed by the Laws of France.
All disputes on the terms of this license will preferably be settled out of court. As a last
resort, the dispute will be referred to the appropriate Courts of Law of Paris - France.
-For any question on this document, please contact Mandriva S.A.",
-$us ? "\n\n" . N("You agree not to (i) sell, export, re-export, transfer, divert, disclose technical data, or
-dispose of, any Software to any person, entity, or destination prohibited by US export laws
-or regulations including, without limitation, Cuba, Iran, North Korea, Sudan and Syria; or
-(ii) use any Software for any use prohibited by the laws or regulations of the United States.
-
-U.S. GOVERNMENT RESTRICTED RIGHTS.
-
-The Software Products and any accompanying documentation are and shall be deemed to be
-\"commercial computer software\" and \"commercial computer software documentation,\" respectively,
-as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, modification, reproduction,
-release, performance, display or disclosure of the Software and any accompanying documentation
-by the United States Government shall be governed solely by the terms of this Agreement and any
-other applicable licence agreements and shall be prohibited except to the extent expressly permitted
-by the terms of this Agreement.") . "\n" : '',
-$google ? N("Most of these components, but excluding the applications and software provided by Google Inc. or
-its subsidiaries (\"Google Software\"), are governed under the terms and conditions of the GNU
-General Public Licence, hereafter called \"GPL\", or of similar licenses.")
- : N("Most of these components are governed under the terms and conditions of the GNU
-General Public Licence, hereafter called \"GPL\", or of similar licenses."));
+For any question on this document, please contact Mageia."),
+ warning_about_patents()
+ );
}
sub warning_about_patents() {
N("Warning: Free Software may not necessarily be patent free, and some Free
-Software included may be covered by patents in your country. For example, the
-MP3 decoders included may require a licence for further usage (see
-http://www.mp3licensing.com for more details). If you are unsure if a patent
-may be applicable to you, check your local laws.");
-}
-
-sub google_provisions() {
-N("6. Additional provisions applicable to those Software Products provided by Google Inc. (\"Google Software\")
-
-(a) You acknowledge that Google or third parties own all rights, title and interest in and to the Google
-Software, portions thereof, or software provided through or in conjunction with the Google Software, including
-without limitation all Intellectual Property Rights. \"Intellectual Property Rights\" means any and all rights
-existing from time to time under patent law, copyright law, trade secret law, trademark law, unfair competition
-law, database rights and any and all other proprietary rights, and any and all applications, renewals, extensions
-and restorations thereof, now or hereafter in force and effect worldwide. You agree not to modify, adapt,
-translate, prepare derivative works from, decompile, reverse engineer, disassemble or otherwise attempt to derive
-source code from Google Software. You also agree to not remove, obscure, or alter Google's or any third party's
-copyright notice, trademarks, or other proprietary rights notices affixed to or contained within or accessed in
-conjunction with or through the Google Software.
-
-(b) The Google Software is made available to you for your personal, non-commercial use only.
-You may not use the Google Software in any manner that could damage, disable, overburden, or impair Google's
-search services (e.g., you may not use the Google Software in an automated manner), nor may you use Google
-Software in any manner that could interfere with any other party's use and enjoyment of Google's search services
-or the services and products of the third party licensors of the Google Software.
-
-(c) Some of the Google Software is designed to be used in conjunction with Google's search and other services.
-Accordingly, your use of such Google Software is also defined by Google's Terms of Service located at
-http://www.google.com/terms_of_service.html and Google's Toolbar Privacy Policy located at
-http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.
-
-(d) Google Inc. and each of its subsidiaries and affiliates are third party beneficiaries of this contract
-and may enforce its terms.");
+Software included may be covered by patents in your country. For example, our
+tainted version of VLC contains components that may require a license for
+further usage (see https://www.videolan.org/press/patents.html for more
+details). If you are unsure if a patent may be applicable to you, check your
+local laws.");
}
sub install_completed() {
-#-PO: keep the double empty lines between sections, this is formatted a la LaTeX
-N("Congratulations, installation is complete.
-Remove the boot media and press Enter to reboot.
-
-
-For information on fixes which are available for this release of Mandriva Linux,
-consult the Errata available from:
-
-
-%s
-
-
-Information on configuring your system is available in the post
-install chapter of the Official Mandriva Linux User's Guide.",
-'http://www.mandriva.com/en/security/advisories');
+ join("\n\n\n",
+ N("Congratulations, installation is complete.
+Remove the installation medium and press Enter to reboot."),
+ N("For information on fixes which are available for this release of Mageia,
+consult the Errata available from:\n%s", 'http://www.mageia.org/'),
+ N("After rebooting and logging into Mageia, you will see the MageiaWelcome screen.
+It is full of very useful information and links.")
+ );
}
1;
diff --git a/perl-install/mirror.pm b/perl-install/mirror.pm
index 563464874..11d55f06b 100644
--- a/perl-install/mirror.pm
+++ b/perl-install/mirror.pm
@@ -1,4 +1,4 @@
-package mirror; # $Id$
+package mirror;
use diagnostics;
use strict;
@@ -7,81 +7,94 @@ use feature 'state';
use common;
use log;
-my %land2tzs = (
- N_("Australia") => [ 'Australia/Sydney' ],
- N_("Austria") => [ 'Europe/Vienna', 'Europe/Brussels', 'Europe/Berlin' ],
- N_("Belgium") => [ 'Europe/Brussels', 'Europe/Paris', 'Europe/Berlin' ],
- N_("Brazil") => [ 'Brazil/East' ],
- N_("Canada") => [ 'Canada/Atlantic', 'Canada/Eastern' ],
- N_("Costa Rica") => [ 'America/Costa_Rica' ],
- N_("Czech Republic") => [ 'Europe/Prague', 'Europe/Berlin' ],
- N_("Denmark") => [ 'Europe/Copenhagen', 'Europe/Berlin' ],
- N_("Estonia") => [ 'Europe/Tallinn', 'Europe/Helsinki' ],
- N_("Finland") => [ 'Europe/Helsinki', 'Europe/Tallinn' ],
- N_("France") => [ 'Europe/Paris', 'Europe/Brussels', 'Europe/Berlin' ],
- N_("Germany") => [ 'Europe/Berlin', 'Europe/Prague' ],
- N_("Greece") => [ 'Europe/Athens', 'Europe/Prague' ],
- N_("Hungary") => [ 'Europe/Budapest' ],
- N_("Ireland") => [ 'Europe/Dublin', 'Europe/London' ],
- N_("Israel") => [ 'Asia/Tel_Aviv' ],
- N_("Italy") => [ 'Europe/Rome', 'Europe/Brussels', 'Europe/Paris' ],
- N_("Japan") => [ 'Asia/Tokyo', 'Asia/Seoul' ],
- N_("Netherlands") => [ 'Europe/Amsterdam', 'Europe/Brussels', 'Europe/Berlin' ],
- N_("New Zealand") => [ 'Pacific/Auckland' ],
- N_("Norway") => [ 'Europe/Oslo', 'Europe/Stockholm' ],
- N_("Poland") => [ 'Europe/Warsaw' ],
- N_("Portugal") => [ 'Europe/Lisbon', 'Europe/Madrid' ],
- N_("Russia") => [ 'Europe/Moscow', ],
- N_("Slovakia") => [ 'Europe/Bratislava' ],
- N_("South Africa") => [ 'Africa/Johannesburg' ],
- N_("Spain") => [ 'Europe/Madrid', 'Europe/Lisbon' ],
- N_("Sweden") => [ 'Europe/Stockholm', 'Europe/Oslo' ],
- N_("Switzerland") => [ 'Europe/Zurich', 'Europe/Berlin', 'Europe/Brussels' ],
- N_("Taiwan") => [ 'Asia/Taipei', 'Asia/Seoul' ],
- N_("Thailand") => [ 'Asia/Bangkok', 'Asia/Seoul' ],
- N_("United States") => [ 'America/New_York', 'Canada/Atlantic', 'Asia/Tokyo', 'Australia/Sydney', 'Europe/Paris' ],
- );
+=head1 SYNOPSYS
+
+B<mirror> enables to manage Mageia distribution mirrors
+
+=head1 Functions
+
+=over
+
+=cut
+
+=item mirror2text($mirror)
+
+Returns a displayable string from a mirror struct
+
+=cut
sub mirror2text {
my ($mirror) = @_;
translate($mirror->{country}) . '|' . $mirror->{host} . ($mirror->{method} ? " ($mirror->{method})" : '');
}
+=item register_downloader($func)
+
+Sets a downloader program
+
+=cut
+
my $downloader;
sub register_downloader {
my ($func) = @_;
$downloader = $func;
}
+sub _mirrors_raw_install {
+ my ($list) = @_;
+ require install::http;
+ my $f = install::http::getFile($list, "strict-certificate-check" => 1) or die "mirror list not found";
+ local $SIG{ALRM} = sub { die "timeout" };
+ alarm 60;
+ log::l("using mirror list $list");
+ my @lines;
+ push @lines, $_ while <$f>;
+ alarm 0;
+ @lines;
+}
+
+sub _mirrors_raw_standalone {
+ my ($list) = @_;
+ my @lines;
+ if (ref($downloader)) {
+ @lines = $downloader->($list);
+ @lines or die "mirror list not found";
+ } else {
+ die "Missing download callback";
+ }
+ @lines;
+}
+
+=item mirrors_raw($product_id)
+
+Returns a list of mirrors hash refs from http://mirrors.mageia.org
+
+Note that in standalone mode, one has to actually use register_downloader()
+first in order to provide a downloader callback.
+
+=cut
+
sub mirrors_raw {
my ($product_id) = @_;
#- contact the following URL to retrieve the list of mirrors.
- #- http://wiki.mandriva.com/en/Product_id
+ #- http://wiki.mageia.org/en/Product_id
my $type = lc($product_id->{type}); $type =~ s/\s//g;
- my $list = "https://api.mandriva.com/mirrors/$type.$product_id->{version}.$product_id->{arch}.list?product=$product_id->{product}";
+ my $list = "https://mirrors.mageia.org/api/$type.$product_id->{version}.$product_id->{arch}.list?product=$product_id->{product}";
log::explanations("trying mirror list from $list");
- my @lines;
- if ($::isInstall) {
- require install::http;
- my $f = install::http::getFile($list, "strict-certificate-check" => 1) or die "mirror list not found";
- local $SIG{ALRM} = sub { die "timeout" };
- alarm 60;
- log::l("using mirror list $list");
- push @lines, $_ while <$f>;
- install::http::close();
- alarm 0;
- } else {
- if (ref($downloader)) {
- @lines = $downloader->($list);
- @lines or die "mirror list not found";
- } else {
- die "Missing download callback";
- }
- }
+ my @lines = $::isInstall ? _mirrors_raw_install($list) : _mirrors_raw_standalone($list);
map { common::parse_LDAP_namespace_structure(chomp_($_)) } @lines;
}
+=item list($product_id, $type)
+
+
+Returns a list of mirrors hash refs as returned by mirrors_raw() but filters it.
+
+One can select the type of mirrors ('distrib', 'updates', ...) or 'all'
+
+=cut
+
sub list {
my ($product_id, $type) = @_;
@@ -96,27 +109,84 @@ sub list {
}
my @mirrors = grep {
- ($_->{method}, $_->{host}, $_->{dir}) = $_->{url} =~ m!^(ftp|http)://(.*?)(/.*)!;
- $_->{method} && ($type eq 'all' || $_->{type} eq $type);
+ ($_->{method}, $_->{host}, $_->{dir}) = $_->{url} =~ m!^(ftp|https?)://(.*?)(/.*)!;
+ $_->{method} && (member($type, 'all', $_->{type}));
} @mirrors_raw or log::explanations("no mirrors of type $type"), return;
@mirrors && \@mirrors;
}
+=item nearest($timezone, $mirrors)
+
+Randomly returns one of the nearest mirror
+
+=cut
+
+#- TODO: The following code was forked from urpm::mirrors. Consider refactoring.
+
sub nearest {
my ($timezone, $mirrors) = @_;
- my (@country, @zone);
- foreach my $mirror (@$mirrors) {
- my @tzs = @{$land2tzs{$mirror->{country}} || []};
- eval { push @{$country[find_index { $_ eq $timezone } @tzs]}, $mirror };
- eval { push @{$zone[find_index { ((split '/')[0] eq (split '/', $timezone)[0]) } @tzs]}, $mirror };
+ my ($latitude, $longitude, $country_code);
+
+ require Time::ZoneInfo;
+ if (my $zones = Time::ZoneInfo->new) {
+ if (($latitude, $longitude) = $zones->latitude_longitude_decimal($timezone)) {
+ $country_code = $zones->country($timezone);
+ }
+ }
+ defined $latitude && defined $longitude or return;
+
+ foreach (@$mirrors) {
+ $_->{latitude} || $_->{longitude} or next;
+ my $PI = 3.14159265358979;
+ my $x = $latitude - $_->{latitude};
+ my $y = ($longitude - $_->{longitude}) * cos($_->{latitude} / 180 * $PI);
+ $_->{proximity} = sqrt($x * $x + $y * $y);
}
- my @l = @country ? @country : @zone;
- shift @l while !$l[0] && @l;
-
- my @possible = @l ? ((@{$l[0]}) x 2, @{$l[1] || []}) : @$mirrors;
- $possible[rand @possible];
+ my ($best) = sort { $a->{proximity} <=> $b->{proximity} } @$mirrors;
+
+ foreach (@$mirrors) {
+ $_->{proximity_corrected} = $_->{proximity} * _random_correction();
+ $_->{proximity_corrected} *= _between_country_correction($country_code, $_->{country}) if $best;
+ $_->{proximity_corrected} *= _between_continent_correction($best->{continent}, $_->{continent}) if $best;
+ $_->{proximity_corrected} *= _protocol_correction($_->{url});
+ }
+ ($best) = sort { $a->{proximity_corrected} <=> $b->{proximity_corrected} } @$mirrors;
+ $best;
+}
+
+# add +/- 5% random
+sub _random_correction() {
+ my $correction = 0.05;
+ 1 + (rand() - 0.5) * $correction * 2;
+}
+
+sub _between_country_correction {
+ my ($here, $mirror) = @_;
+ $here && $mirror or return 1;
+ $here eq $mirror ? 0.5 : 1;
}
+sub _between_continent_correction {
+ my ($here, $mirror) = @_;
+ $here && $mirror or return 1;
+ $here eq $mirror ? 0.5 : # favor same continent
+ $here eq 'SA' && $mirror eq 'NA' ? 0.9 : # favor going "South America" -> "North America"
+ 1;
+}
+
+sub _protocol_correction {
+ my ($url) = @_;
+ # favor encrypted protocols, then http
+ ( $url =~ m!https://! ) and return 0.7;
+ ( $url =~ m!ftps://! ) and return 0.8;
+ ( $url =~ m!http://! ) and return 0.9;
+ 1;
+}
+
+=back
+
+=cut
+
1;
diff --git a/perl-install/modules.pm b/perl-install/modules.pm
index 2439c758b..abeb0b366 100644
--- a/perl-install/modules.pm
+++ b/perl-install/modules.pm
@@ -1,4 +1,4 @@
-package modules; # $Id$
+package modules;
use strict;
@@ -33,7 +33,7 @@ my %mappings_24_26 = (
"dc395x_trm" => "dc395x",
);
my %mappings_26_24 = reverse %mappings_24_26;
-$mappings_26_24{'uhci_hcd'} = 'usb_uhci';
+$mappings_26_24{uhci_hcd} = 'usb_uhci';
my @parallel_zip_modules = qw(imm ppa);
@@ -59,13 +59,45 @@ sub module_is_available {
#-###############################################################################
#- module loading
#-###############################################################################
+
+sub filter_loaded_modules {
+ my ($lm) = @_;
+
+ my $l;
+
+ # try to detect built-in modules by looking at /sys/module
+ # unfortunately it does not work for all modules eg :
+ # - networks protocols like af_packet
+ # - filesystems
+ foreach my $mod (@$lm) {
+ $mod =~ s/-/_/g;
+ if (-d "/sys/module/$mod") {
+ log::l("$mod already loaded");
+ } elsif ($mod =~ /af_packet/) {
+ if (-f "/proc/net/packet") {
+ log::l("$mod already loaded");
+ } else {
+ push @$l, $mod;
+ }
+ } elsif (cat_("/proc/filesystems") =~ /$mod/) {
+ log::l("$mod already loaded");
+ } elsif ($mod =~ /serial/) {
+ # hack ... must find who tries to load the module serial
+ } else {
+ push @$l, $mod;
+ }
+ }
+ $l;
+}
+
# handles dependencies
sub load_raw {
- my ($l, $h_options) = @_;
+ my ($lm, $h_options) = @_;
+
+ my $l = filter_loaded_modules($lm);
+
if ($::testing || $::local_install) {
log::l("i would load module $_ ($h_options->{$_})") foreach @$l;
- } elsif ($::isInstall) {
- load_raw_install($l, $h_options);
} else {
run_program::run('/sbin/modprobe', $_, split(' ', $h_options->{$_}))
or !run_program::run('/sbin/modprobe', '-n', $_) #- ignore missing modules
@@ -76,16 +108,7 @@ sub load_raw {
} elsif (member('usb_storage', @$l)) {
#- usb_storage is only modprobed when we know there is some scsi devices
#- so trying hard to wait for devices to be detected
-
- #- first sleep the minimum time usb-stor-scan takes
- sleep 5; #- 5 == /sys/module/usb_storage/parameters/delay_use
- # then wait for usb-stor-scan to complete
- my $retry = 0;
- while ($retry++ < 10) {
- fuzzy_pidofs('usb-stor-scan') or last;
- sleep 1;
- log::l("waiting for usb_storage devices to appear (retry = $retry)");
- }
+ run_program::run('udevadm', 'settle');
}
}
sub load_with_options {
@@ -94,10 +117,11 @@ sub load_with_options {
my @l = map {
if_(member($_, 'plip', @parallel_zip_modules), 'parport_pc'),
if_($_ eq 'vfat', 'nls_cp437', 'nls_iso8859_1'),
- dependencies_closure(cond_mapping_24_26($_));
+ if_(member($_, qw(btrfs xfs)), 'crc32c', 'crc32c-intel'),
+ cond_mapping_24_26($_);
} @$l;
- @l = remove_loaded_modules(@l) or return;
+ @l = filter_out_loaded_modules(@l) or return;
my %options = map { cond_mapping_24_26($_) => $h_options->{$_} } keys %$h_options;
load_raw(\@l, \%options);
@@ -111,7 +135,7 @@ sub load {
sub load_and_configure {
my ($conf, $module, $o_options) = @_;
- my @l = remove_loaded_modules(dependencies_closure(cond_mapping_24_26($module)));
+ my @l = filter_out_loaded_modules(cond_mapping_24_26($module));
load_raw(\@l, { cond_mapping_24_26($module) => $o_options });
if (member($module, @parallel_zip_modules)
@@ -141,13 +165,6 @@ sub load_category {
if_($category =~ /scsi/,
if_(detect_devices::usbStorage(), 'usb_storage'),
),
- arch() =~ /ppc/ ? (
- if_($category =~ /scsi/,
- if_(detect_devices::has_mesh(), 'mesh'),
- if_(detect_devices::has_53c94(), 'mac53c94'),
- ),
- if_($category =~ /net/, 'bmac', 'gmac', 'mace', 'airport'),
- ) : (),
);
my @l = (
(map {
@@ -172,8 +189,6 @@ sub load_category {
sub load_parallel_zip {
my ($conf) = @_;
- arch() !~ /ppc/ or return;
-
grep {
eval { load_and_configure($conf, $_); 1 };
} @parallel_zip_modules;
@@ -231,7 +246,7 @@ sub set_preload_modules {
sub loaded_modules() {
map { /(\S+)/ } cat_("/proc/modules");
}
-sub remove_loaded_modules {
+sub filter_out_loaded_modules {
my (@l) = @_;
difference2([ uniq(@l) ], [ map { my $s = $_; $s =~ s/_/-/g; $s, $_ } loaded_modules() ]);
}
@@ -259,13 +274,13 @@ sub when_load_category {
if ($category =~ m,disk/ide,) {
$conf->add_probeall('ide-controller', $name);
eval { load('ide_gd_mod') };
- } elsif ($category =~ m,disk/(scsi|hardware_raid|sata|firewire),) {
+ } elsif ($category =~ m,disk/(scsi|hardware_raid|sata|firewire|virtual),) {
$conf->add_probeall('scsi_hostadapter', $name);
eval { load('sd_mod') };
} elsif ($category eq 'bus/usb') {
$conf->add_probeall('usb-interface', $name);
- -f '/proc/bus/usb/devices' or eval {
- require fs::mount; fs::mount::usbfs('');
+ -f '/sys/kernel/debug/usb/devices' or eval {
+ require fs::mount; fs::mount::sys_kernel_debug('');
#- ensure keyboard is working, the kernel must do the job the BIOS was doing
sleep 4;
load("usbhid") if detect_devices::usbKeyboards();
@@ -282,49 +297,4 @@ sub when_load_category {
}
}
-#-###############################################################################
-#- isInstall functions
-#-###############################################################################
-sub module_extension() { ".ko" }
-
-sub extract_modules {
- my ($dir, @modules) = @_;
- map {
- my $modname = $_;
- my $path = list_modules::modname2path($modname);
- my $f = $modname . module_extension();
- if (-e $path) {
- system("gzip -dc $path > $dir/$f") == 0
- or unlink "$dir/$f";
- } else {
- log::l("warning: unable to get module filename for $modname (path: $path)");
- }
- "$dir/$f";
- } @modules;
-}
-
-sub load_raw_install {
- my ($l, $options) = @_;
-
- extract_modules('/tmp', @$l);
- my @failed = grep {
- my $m = '/tmp/' . $_ . module_extension();
- if (-e $m) {
- my $stdout;
- my $rc = run_program::run('/sbin/insmod', '2>', \$stdout, $m, split(' ', $options->{$_}));
- log::l(chomp_($stdout)) if $stdout;
- if ($rc) {
- unlink $m;
- '';
- }
- } else {
- log::l("missing module $_");
- 'error';
- }
- } @$l;
-
- die "insmod'ing module " . join(", ", @failed) . " failed" if @failed;
-
-}
-
1;
diff --git a/perl-install/modules/any_conf.pm b/perl-install/modules/any_conf.pm
index 855678dfd..c235e84f4 100644
--- a/perl-install/modules/any_conf.pm
+++ b/perl-install/modules/any_conf.pm
@@ -1,4 +1,4 @@
-package modules::any_conf; # $Id$
+package modules::any_conf;
use log;
use common;
@@ -139,10 +139,7 @@ sub write {
#- Substitute new config (if config has changed)
substInFile {
my ($type, $module, $val) = split(' ', chomp_($_), 3);
- if ($type eq 'post-install' && $module eq 'supermount') {
- #- remove the post-install supermount stuff.
- $_ = '';
- } elsif (member($type, $conf->handled_fields)) {
+ if (member($type, $conf->handled_fields)) {
my $new_val = $conf->{$module}{$type};
if (!$new_val) {
$_ = '';
@@ -203,11 +200,6 @@ sub read_raw {
s/#.*$//;
s/\s+$//;
- # Fix upgrade from ALSA < 0.9.0:
- s/\b(snd-card-)/snd-/g;
- # Fix upgrade for unified VIA driver:
- s/\b(snd-via686|snd-via8233)\b/snd-via82xx/g;
-
my ($type, $module, $val) = split(' ', $_, 3) or next;
$c{$module}{$type} = $val;
diff --git a/perl-install/modules/interactive.pm b/perl-install/modules/interactive.pm
index 6bdbfb3b5..dae135889 100644
--- a/perl-install/modules/interactive.pm
+++ b/perl-install/modules/interactive.pm
@@ -1,4 +1,4 @@
-package modules::interactive; # $Id$
+package modules::interactive;
use modules;
use common;
@@ -20,7 +20,7 @@ sub config_window {
return;
}
if ($in->ask_from(N("Module configuration"), N("You can configure each parameter of the module here."), \@l)) {
- my $options = join(' ', map { if_($conf{$_}, "$_=$conf{$_}") } keys %conf);
+ my $options = join(' ', map { if_($conf{$_} =~ /^\S+$/, "$_=$conf{$_}") } keys %conf);
my $old_options = $modules_conf->get_options($data->{driver});
if ($options ne $old_options) {
$modules_conf->set_options($data->{driver}, $options);
@@ -81,9 +81,9 @@ sub load_category__prompt_for_more {
my %category2text = (
'bus/usb' => N_("Installing driver for USB controller"),
- 'bus/firewire' => N_("Installing driver for firewire controller %s"),
- 'disk/ide|scsi|hardware_raid|sata|firewire' => N_("Installing driver for hard drive controller %s"),
- list_modules::ethernet_categories() => N_("Installing driver for ethernet controller %s"),
+ 'bus/firewire' => N_("Installing driver for firewire controller \"%s\""),
+ 'disk/card_reader|ide|scsi|hardware_raid|sata|firewire|virtual' => N_("Installing driver for hard disk drive controller \"%s\""),
+ list_modules::ethernet_categories() => N_("Installing driver for ethernet controller \"%s\""),
);
sub wait_load_module {
diff --git a/perl-install/modules/modprobe_conf.pm b/perl-install/modules/modprobe_conf.pm
index c97e2c045..7989096f8 100644
--- a/perl-install/modules/modprobe_conf.pm
+++ b/perl-install/modules/modprobe_conf.pm
@@ -1,7 +1,8 @@
-package modules::modprobe_conf; # $Id$
+package modules::modprobe_conf;
use log;
use common;
+# perl_checker: require modules::any_conf
our @ISA = qw(modules::any_conf);
diff --git a/perl-install/modules/modules_conf.pm b/perl-install/modules/modules_conf.pm
index 2bfc2ce65..be4b8fca4 100644
--- a/perl-install/modules/modules_conf.pm
+++ b/perl-install/modules/modules_conf.pm
@@ -1,7 +1,8 @@
-package modules::modules_conf; # $Id$
+package modules::modules_conf;
use log;
use common;
+# perl_checker: require modules::any_conf
our @ISA = qw(modules::any_conf);
diff --git a/perl-install/modules/parameters.pm b/perl-install/modules/parameters.pm
index 2af5ce951..36990b5d1 100644
--- a/perl-install/modules/parameters.pm
+++ b/perl-install/modules/parameters.pm
@@ -1,4 +1,4 @@
-package modules::parameters; # $Id$
+package modules::parameters;
use diagnostics;
use strict;
@@ -13,10 +13,6 @@ use modules;
sub parameters {
my ($module) = @_;
- if (!$::isStandalone && !$::testing) {
- ($module) = modules::extract_modules('/tmp', $module);
- }
-
map {
chomp;
(my $name, $_) = /(\w+):(.*)/s or warn "modules::parameters::parameters($module): unknown line\n";
diff --git a/perl-install/mygtk2.pm b/perl-install/mygtk2.pm
index 419861ae0..6633decf3 100644
--- a/perl-install/mygtk2.pm
+++ b/perl-install/mygtk2.pm
@@ -22,10 +22,10 @@ sub init() {
if_($::isRestore, 'draksnapshot'), if_($::isInstall, 'urpmi'),
'drakx-net', 'drakx-kbd-mouse-x11', # shared translation
@::textdomains;
- Gtk2->croak_execeptions;
+ Glib->enable_exceptions2;
}
-init() unless ($::no_ugtk_init);
-Gtk2->croak_execeptions if $::isInstall;
+init() unless $::no_ugtk_init;
+Glib->enable_exceptions2 if $::isInstall;
@@ -146,7 +146,7 @@ sub _gtk {
}
sub _gtk__Install_Button {
- my ($w, $opts, $class) = @_;
+ my ($w, $opts, $_class) = @_;
$opts->{child} = gtknew('HBox', spacing => 5,
children_tight => [
# FIXME: not RTL compliant (lang::text_direction_rtl() ? ...)
@@ -296,7 +296,7 @@ sub _gtk__HSeparator { &_gtk_any_simple }
sub _gtk__Calendar { &_gtk_any_simple }
sub _gtk__DrawingArea {
- my ($w, $opts) = @_;
+ my ($w, $_opts) = @_;
if (!$w) {
$w = Gtk2::DrawingArea->new;
@@ -309,7 +309,7 @@ sub _gtk__Pixbuf {
if (!$w) {
my $name = delete $opts->{file} or internal_error("missing file");
- my $file = _find_imgfile($name) or internal_error("can not find image $name");
+ my $file = _find_imgfile($name) or internal_error("cannot find image $name");
if (my $size = delete $opts->{size}) {
$w = Gtk2::Gdk::Pixbuf->new_from_file_at_scale($file, $size, $size, 1);
} else {
@@ -330,6 +330,8 @@ sub _gtk__Image {
if (!$w) {
$w = Gtk2::Image->new;
$w->{format} = delete $opts->{format} if exists $opts->{format};
+
+ $w->set_from_stock(delete $opts->{stock}, 'button') if exists $opts->{stock};
$w->{options} = { flip => delete $opts->{flip} };
@@ -343,7 +345,6 @@ sub _gtk__Image {
my ($width, $height) = ($pixbuf->get_width, $pixbuf->get_height);
$w->set_size_request($width, $height);
$w->{pixbuf} = $pixbuf;
- my $not_my_first_event;
$w->signal_connect(expose_event => sub {
my (undef, $event) = @_;
if (!$w->{x}) {
@@ -351,17 +352,17 @@ sub _gtk__Image {
$w->{x} = $alloc->x;
$w->{y} = $alloc->y;
}
- foreach my $rect($event->region->get_rectangles) {
+ # workaround Gtk+ bug: in installer, first event is not complete and rectables are bogus:
+ if ($::isInstall) {
+ $pixbuf->render_to_drawable($w->window, $w->style->fg_gc('normal'),
+ 0, 0, $w->{x}, $w->{y}, $width, $height, 'max', 0, 0);
+ return;
+ }
+ foreach my $rect ($event->region->get_rectangles) {
my @values = $rect->values;
$pixbuf->render_to_drawable($w->window, $w->style->fg_gc('normal'),
@values[0..1], $w->{x}+$values[0], $w->{y}+$values[1], @values[2..3], 'max', 0, 0);
}
- # workaround Gtk+ bug: in installer, first event is not complete:
- if ($::isInstall && !$not_my_first_event) {
- $not_my_first_event = 1;
- $pixbuf->render_to_drawable($w->window, $w->style->fg_gc('normal'),
- 0, 0, $w->{x}, $w->{y}, $width, $height, 'max', 0, 0);
- }
});
} : sub {
my ($w, $file, $o_size) = @_;
@@ -371,11 +372,11 @@ sub _gtk__Image {
}
if (my $name = delete $opts->{file}) {
- my $file = _find_imgfile(may_apply($w->{format}, $name)) or internal_error("can not find image $name");
+ my $file = _find_imgfile(may_apply($w->{format}, $name)) or internal_error("cannot find image $name");
$w->{set_from_file}->($w, $file, delete $opts->{size});
} elsif (my $file_ref = delete $opts->{file_ref}) {
my $set = sub {
- my $file = _find_imgfile(may_apply($w->{format}, $$file_ref)) or internal_error("can not find image $$file_ref");
+ my $file = _find_imgfile(may_apply($w->{format}, $$file_ref)) or internal_error("cannot find image $$file_ref");
$w->{set_from_file}->($w, $file, delete $opts->{size});
};
gtkval_register($w, $file_ref, $set);
@@ -387,7 +388,7 @@ sub _gtk__Image {
sub _gtk__WrappedLabel {
my ($w, $opts) = @_;
- $opts->{line_wrap} = 1 if not defined $opts->{line_wrap};
+ $opts->{line_wrap} = 1 if !defined $opts->{line_wrap};
_gtk__Label($w, $opts);
}
@@ -414,6 +415,7 @@ sub _gtk__Label {
$w->set_text(delete $opts->{text}) if exists $opts->{text};
} else {
$w = exists $opts->{text} ? Gtk2::Label->new(delete $opts->{text}) : Gtk2::Label->new;
+ $w->set_selectable(delete $opts->{selectable}) if exists $opts->{selectable};
$w->set_ellipsize(delete $opts->{ellipsize}) if exists $opts->{ellipsize};
$w->set_justify(delete $opts->{justify}) if exists $opts->{justify};
$w->set_line_wrap(delete $opts->{line_wrap}) if exists $opts->{line_wrap};
@@ -439,7 +441,7 @@ sub _gtk__Label {
sub _gtk__Alignment {
- my ($w, $opts) = @_;
+ my ($w, $_opts) = @_;
if (!$w) {
$w = Gtk2::Alignment->new(0, 0, 0, 0);
@@ -582,7 +584,7 @@ sub _gtk__TextView {
}
sub _gtk__WebKit_View {
- my ($w, $opts, $_class, $action) = @_;
+ my ($w, $opts, $_class, $_action) = @_;
if (!$w) {
$w = Gtk2::WebKit::WebView->new;
}
@@ -664,7 +666,7 @@ sub _gtk__ScrolledWindow {
$w->add_with_viewport($child);
}
$child->set_focus_vadjustment($w->get_vadjustment) if $child->can('set_focus_vadjustment');
- $child->set_left_margin(6) if ref($child) =~ /Gtk2::TextView/ && $child->get_left_margin() <= 6;
+ $child->set_left_margin(6) if ref($child) =~ /Gtk2::TextView/ && $child->get_left_margin <= 6;
$child->show;
$w->child->set_shadow_type(delete $opts->{shadow_type}) if exists $opts->{shadow_type};
@@ -719,14 +721,14 @@ sub _gtk__Expander {
sub _gtk__MDV_Notebook {
- my ($w, $opts, $_class, $action) = @_;
+ my ($w, $opts, $_class, $_action) = @_;
if (!$w) {
import_style_ressources();
my ($layout, $selection_arrow, $selection_bar);
my $parent_window = delete $opts->{parent_window} || root_window();
- my $root_height = first($parent_window->get_size());
- my $suffix = $root_height eq 800 && !$::isStandalone ? '_600' : '_768';
+ my $root_height = first($parent_window->get_size);
+ my $suffix = $root_height == 800 && !$::isStandalone ? '_600' : '_768';
# the white square is a little bit above the actual left sidepanel:
my $offset = 20;
my $is_flip_needed = text_direction_rtl();
@@ -737,11 +739,11 @@ sub _gtk__MDV_Notebook {
my @right_background = $::isInstall ?
gtknew('Image', file => "right-white-background_left_part$suffix", flip => $is_flip_needed)
: map {
- gtknew('Image', file => "right-white-background_left_part-$_", flip => $is_flip_needed)
+ gtknew('Image', file => "right-white-background_left_part-$_", flip => $is_flip_needed);
} 1, 2, 2, 3;
my $width1 = $left_background->{pixbuf}->get_width;
my $total_width = $width1 + $right_background[0]->get_pixbuf->get_width;
- my $arrow_x = text_direction_rtl() ? $offset/2 -4 : $width1 - $offset -3;
+ my $arrow_x = text_direction_rtl() ? $offset/2 - 4 : $width1 - $offset - 3;
$w = gtknew('HBox', spacing => 0, children => [
0, $layout = gtknew('Layout', width => $total_width - $offset, children => [ #Layout Fixed
# stacking order is important for "Z-buffer":
@@ -787,7 +789,7 @@ sub _gtk__MDV_Notebook {
sub _gtk__Fixed {
- my ($w, $opts, $_class, $action) = @_;
+ my ($w, $opts, $_class, $_action) = @_;
if (!$w) {
$w = Gtk2::Fixed->new;
@@ -817,7 +819,7 @@ sub _gtknew_handle_layout_children {
delete $opts->{children};
if ($opts->{pixbuf_file}) {
- my $pixbuf = gtknew('Pixbuf', file => delete $opts->{pixbuf_file}) if $opts->{pixbuf_file};
+ my $pixbuf = if_($opts->{pixbuf_file}, gtknew('Pixbuf', file => delete $opts->{pixbuf_file}));
$w->signal_connect(
realize => sub {
ugtk2::set_back_pixbuf($w, $pixbuf);
@@ -836,7 +838,7 @@ sub _gtk_any_Window {
if ($class eq 'Window') {
$w = "Gtk2::$class"->new(delete $opts->{type} || 'toplevel');
} elsif ($class eq 'Plug') {
- $opts->{socket_id} or internal_error("can not create a Plug without a socket_id");
+ $opts->{socket_id} or internal_error("cannot create a Plug without a socket_id");
$w = "Gtk2::$class"->new(delete $opts->{socket_id});
} elsif ($class eq 'FileChooserDialog') {
my $action = delete $opts->{action} || internal_error("missing action for FileChooser");
@@ -864,7 +866,7 @@ sub _gtk_any_Window {
if (my $f = _find_imgfile($name)) {
$w->set_icon(gtknew('Pixbuf', file => $f));
} elsif (!$icon_no_error) {
- internal_error("can not find $name");
+ internal_error("cannot find $name");
}
}
}
@@ -1175,7 +1177,7 @@ sub _gtknew_handle_children {
foreach (@child) {
my ($fill, $child) = @$_;
- $fill eq '0' || $fill eq '1' || $fill eq 'fill' || $fill eq 'expand' or internal_error("odd {children} parameter must be 0 or 1 (got $fill)");
+ member($fill, qw(0 1 fill expand)) or internal_error("odd {children} parameter must be 0 or 1 (got $fill)");
ref $child or $child = Gtk2::WrappedLabel->new($child);
my $expand = $fill && $fill ne 'fill' ? 1 : 0;
$w->pack_start($child, $expand, $fill, $padding || 0);
@@ -1196,7 +1198,7 @@ sub mygtk2::MagicWindow::AUTOLOAD {
my ($s1, @s2) = $meth eq 'show'
? ('real_window', 'banner', 'child') :
- $meth eq 'destroy' || $meth eq 'hide' ?
+ member($meth, qw(destroy hide)) ?
($w->{pop_it} ? 'real_window' : ('child', 'banner')) :
$meth eq 'get' && $args[0] eq 'window-position' ||
$for_real_window{$meth} ||
@@ -1210,6 +1212,43 @@ sub mygtk2::MagicWindow::AUTOLOAD {
$w->{$s1}->$meth(@args);
}
+my $enable_quit_popup;
+sub enable_quit_popup {
+ my ($bool) = @_;
+ $enable_quit_popup = $bool;
+}
+
+state $in_callback;
+sub quit_popup() {
+ return if !$enable_quit_popup;
+ if (!$in_callback) {
+ $in_callback = 1;
+ my $_guard = before_leaving { undef $in_callback };
+ require ugtk2;
+ my $w = ugtk2->new(N("Confirmation"), grab => 1);
+ ugtk2::_ask_okcancel($w, N("Are you sure you want to quit?"), N("Quit"), N("Cancel"));
+ my $ret = ugtk2::main($w);
+ return 1 if !$ret;
+ }
+}
+
+sub quit_callback {
+ my ($w) = @_;
+
+ return 1 if quit_popup();
+ if ($::isWizard) {
+ $w->destroy;
+ die 'wizcancel';
+ } else {
+ if (Gtk2->main_level) {
+ Gtk2->main_quit;
+ } else {
+ # block window deletion if not in main loop (eg: while starting the GUI)
+ return 1;
+ }
+ }
+}
+
sub _create_Window {
my ($opts, $special_center) = @_;
@@ -1230,19 +1269,7 @@ sub _create_Window {
my $w = _gtk(undef, 'Window', 'gtknew', $opts);
#- when the window is closed using the window manager "X" button (or alt-f4)
- $w->signal_connect(delete_event => sub {
- if ($::isWizard) {
- $w->destroy;
- die 'wizcancel';
- } else {
- if (Gtk2->main_level) {
- Gtk2->main_quit;
- } else {
- # block window deletion if not in main loop (eg: while starting the GUI)
- return 1;
- }
- }
- });
+ $w->signal_connect(delete_event => \&quit_callback);
if ($::isInstall && !$::isStandalone) {
require install::gtk; #- for perl_checker
@@ -1267,7 +1294,7 @@ sub _create_Window {
}) if $special_center;
}
- $w->present() if $no_Window_Manager;
+ $w->present if $no_Window_Manager;
$w;
}
@@ -1393,12 +1420,12 @@ sub asteriskize {
}
sub get_main_window_size() {
- my ($width, $height) = $::real_windowwidth ? ($::real_windowwidth, $::real_windowheight) : $::isWizard ? (540, 360) : (600, 400);
+ $::real_windowwidth ? ($::real_windowwidth, $::real_windowheight) : $::isWizard ? (540, 360) : (600, 400);
}
# in order to workaround infamous 6 years old gnome bug #101968:
sub get_label_width() {
- first(mygtk2::get_main_window_size()) - 50 - $left_padding;
+ first(mygtk2::get_main_window_size()) - 55 - $left_padding;
}
sub set_main_window_size {
@@ -1446,6 +1473,11 @@ sub sync_flush {
}
+sub register_main_window {
+ my ($w) = @_;
+ push @::main_windows, $::main_window = $w;
+}
+
sub may_destroy {
my ($w) = @_;
return if !$w;
@@ -1517,7 +1549,7 @@ sub import_style_ressources() {
}
sub text_direction_rtl() {
- Gtk2::Widget->get_default_direction() eq 'rtl';
+ Gtk2::Widget->get_default_direction eq 'rtl';
}
sub _get_weakness_icon {
@@ -1537,7 +1569,7 @@ sub _get_weakness_tooltip {
my %weakness_tooltip = (
1 => N("Password is trivial to guess"),
2 => N("Password is trivial to guess"),
- 3 => N("Password should resist to basic attacks"),
+ 3 => N("Password should be resistant to basic attacks"),
4 => N("Password seems secure"),
5 => N("Password seems secure"));
my $weakness_tooltip = $weakness_tooltip{$password_weakness} || return undef;
diff --git a/perl-install/mygtk3.pm b/perl-install/mygtk3.pm
new file mode 100644
index 000000000..de92943f2
--- /dev/null
+++ b/perl-install/mygtk3.pm
@@ -0,0 +1,1679 @@
+package mygtk3;
+
+use diagnostics;
+use strict;
+use feature 'state';
+
+our @ISA = qw(Exporter);
+our @EXPORT = qw(gtknew gtkset gtkadd gtkval_register gtkval_modify);
+
+use c;
+use log;
+use common;
+
+BEGIN { print "Ignore the following Glib::Object::Introspection & Gtk3 warnings\n" }
+use Gtk3;
+
+=head1 SYNOPSYS
+
+B<mygtk3> enables to write GUIes using Gtk+3 in a functional/logical way
+
+=head1 Functions
+
+=over
+
+=cut
+
+sub init() {
+ !check_for_xserver() and print("Cannot be run in console mode.\n"), c::_exit(0);
+ $::one_message_has_been_translated and warn("N() was called from $::one_message_has_been_translated BEFORE gtk3 initialisation, replace it with a N_() AND a translate() later.\n"), c::_exit(1);
+
+ Gtk3->init;
+ Locale::gettext::bind_textdomain_codeset($_, 'UTF8') foreach 'libDrakX', if_(!$::isInstall, 'libDrakX-standalone'),
+ if_($::isRestore, 'draksnapshot'), if_($::isInstall, 'urpmi'),
+ 'drakx-net', 'drakx-kbd-mouse-x11', # shared translation
+ @::textdomains;
+ Gtk3->enable_exceptions;
+}
+init() unless $::no_ugtk_init;
+Gtk3->enable_exceptions if $::isInstall;
+
+
+=item gtknew($class, %opts)
+
+Creates & return a new widget. eg:
+
+ gtknew('Label', text => "Settings");
+
+=cut
+
+sub gtknew {
+ my $class = shift;
+ if (@_ % 2 != 0) {
+ internal_error("gtknew $class: bad options @_");
+ }
+ if (my $r = find { ref $_->[0] } group_by2(@_)) {
+ internal_error("gtknew $class: $r should be a string in @_");
+ }
+ my %opts = @_;
+ _gtk(undef, $class, 'gtknew', \%opts);
+}
+
+sub gtkset {
+ my $w = shift;
+ my $class = ref($w);
+ if (@_ % 2 != 0) {
+ internal_error("gtkset $class: bad options @_");
+ }
+ if (my $r = find { ref $_->[0] } group_by2(@_)) {
+ internal_error("gtkset $class: $r should be a string in @_");
+ }
+ my %opts = @_;
+
+ $class =~ s/^(Gtk3|Gtk3::Gdk|mygtk3)::// or internal_error("gtkset unknown class $class");
+
+ _gtk($w, $class, 'gtkset', \%opts);
+}
+
+sub gtkadd {
+ my $w = shift;
+ my $class = ref($w);
+ if (@_ % 2 != 0) {
+ internal_error("gtkadd $class: bad options @_");
+ }
+ if (my $r = find { ref $_->[0] } group_by2(@_)) {
+ internal_error("gtkadd $class: $r should be a string in @_");
+ }
+ my %opts = @_;
+ $class =~ s/^(Gtk3|Gtk3::Gdk|mygtk3)::// or internal_error("gtkadd unknown class $class");
+
+ _gtk($w, $class, 'gtkadd', \%opts);
+}
+
+
+my %refs;
+
+sub gtkval_register {
+ my ($w, $ref, $sub) = @_;
+ push @{$w->{_ref}}, $ref;
+ $w->signal_connect(destroy => sub {
+ @{$refs{$ref}} = grep { $_->[1] != $w } @{$refs{$ref}};
+ delete $refs{$ref} if !@{$refs{$ref}};
+ });
+ push @{$refs{$ref}}, [ $sub, $w ];
+}
+sub gtkval_modify {
+ my ($ref, $val, @to_skip) = @_;
+ my $prev = '' . $ref;
+ $$ref = $val;
+ if ($prev ne '' . $ref) {
+ internal_error();
+ }
+ foreach (@{$refs{$ref} || []}) {
+ my ($f, @para) = @$_;
+ $f->(@para) if !member($f, @to_skip);
+ }
+}
+
+sub _gtk {
+ my ($w, $class, $action, $opts) = @_;
+
+ if (my $f = $mygtk3::{"_gtk__$class"}) {
+ $w = $f->($w, $opts, $class, $action);
+ } else {
+ internal_error("$action $class: unknown class");
+ }
+
+ $w->set_size_request(delete $opts->{width} || -1, delete $opts->{height} || -1) if exists $opts->{width} || exists $opts->{height};
+ if (my $position = delete $opts->{position}) {
+ $w->move($position->[0], $position->[1]);
+ }
+ $w->set_name(delete $opts->{widget_name}) if exists $opts->{widget_name};
+ $w->set_can_focus(delete $opts->{can_focus}) if exists $opts->{can_focus};
+ $w->set_can_default(delete $opts->{can_default}) if exists $opts->{can_default};
+ $w->grab_focus if delete $opts->{grab_focus};
+ $w->set_padding(@{delete $opts->{padding}}) if exists $opts->{padding};
+ $w->set_sensitive(delete $opts->{sensitive}) if exists $opts->{sensitive};
+ $w->signal_connect(draw => delete $opts->{draw}) if exists $opts->{draw};
+ $w->signal_connect(realize => delete $opts->{realize}) if exists $opts->{realize};
+ (delete $opts->{size_group})->add_widget($w) if $opts->{size_group};
+ if (my $tip = delete $opts->{tip}) {
+ $w->set_tooltip_text($tip);
+ }
+
+ #- WARNING: hide_ref and show_ref are not effective until you gtkval_modify the ref
+ if (my $hide_ref = delete $opts->{hide_ref}) {
+ gtkval_register($w, $hide_ref, sub { $$hide_ref ? $w->hide : $w->show });
+ } elsif (my $show_ref = delete $opts->{show_ref}) {
+ gtkval_register($w, $show_ref, sub { $$show_ref ? $w->show : $w->hide });
+ }
+
+ if (my $sensitive_ref = delete $opts->{sensitive_ref}) {
+ $$sensitive_ref ||= 0;
+ my $set = sub { $w->set_sensitive($$sensitive_ref) };
+ gtkval_register($w, $sensitive_ref, $set);
+ $set->();
+ }
+
+ if (%$opts && !$opts->{allow_unknown_options}) {
+ internal_error("$action $class: unknown option(s) " . join(', ', keys %$opts));
+ }
+ $w;
+}
+
+sub _gtk__Install_Button {
+ my ($w, $opts, $_class) = @_;
+ $opts->{child} = gtknew('HBox', spacing => 5,
+ children_tight => [
+ # FIXME: not RTL compliant (lang::text_direction_rtl() ? ...)
+ gtknew('Image', file => 'advanced_expander'),
+ gtknew('Label', text => delete $opts->{text}),
+ ],
+ );
+ $opts->{relief} = 'none';
+ _gtk__Button($w, $opts, 'Button');
+}
+
+sub _gtk__Button { &_gtk_any_Button }
+sub _gtk__ToggleButton { &_gtk_any_Button }
+sub _gtk__CheckButton { &_gtk_any_Button }
+sub _gtk__RadioButton { &_gtk_any_Button }
+sub _gtk_any_Button {
+ my ($w, $opts, $class) = @_;
+
+ if (!$w) {
+ my @radio_options;
+ if ($class eq 'RadioButton') {
+ @radio_options = delete $opts->{group};
+ }
+ $w = $opts->{child} ? "Gtk3::$class"->new(@radio_options) :
+ delete $opts->{mnemonic} ? "Gtk3::$class"->new_with_mnemonic(@radio_options, delete $opts->{text} || '') :
+ $opts->{text} ? "Gtk3::$class"->new_with_label(@radio_options, delete $opts->{text} || '') :
+ "Gtk3::$class"->new(@radio_options);
+ $w->join_group(delete $opts->{join}) if $opts->{join};
+
+ $w->{format} = delete $opts->{format} if exists $opts->{format};
+ }
+
+ if (my $widget = delete $opts->{child}) {
+ $w->add($widget);
+ $widget->show;
+ }
+ $w->set_image(delete $opts->{image}) if exists $opts->{image};
+ $w->set_relief(delete $opts->{relief}) if exists $opts->{relief};
+
+ if (my $text_ref = delete $opts->{text_ref}) {
+ my $set = sub {
+ eval { $w->set_label(may_apply($w->{format}, $$text_ref || '')) };
+ };
+ gtkval_register($w, $text_ref, $set);
+ $set->();
+ } elsif (exists $opts->{text}) {
+ $w->set_label(delete $opts->{text});
+ } elsif (exists $opts->{stock}) {
+ $w->set_label(delete $opts->{stock});
+ $w->set_use_stock(1);
+ }
+
+ if ($class eq 'Button') {
+ $w->signal_connect(clicked => delete $opts->{clicked}) if exists $opts->{clicked};
+ } else {
+ if (my $active_ref = delete $opts->{active_ref}) {
+ $$active_ref ||= 0;
+ my $set = sub { $w->set_active($$active_ref) };
+ $w->signal_connect(toggled => sub {
+ gtkval_modify($active_ref, $w->get_active, $set);
+ });
+ gtkval_register($w, $active_ref, $set);
+ gtkval_register($w, $active_ref, delete $opts->{toggled}) if exists $opts->{toggled};
+ $set->();
+ } else {
+ $w->set_active(delete $opts->{active}) if exists $opts->{active};
+ $w->signal_connect(toggled => delete $opts->{toggled}) if exists $opts->{toggled};
+ }
+ }
+ $w;
+}
+
+sub _gtk__ToolButton {
+ my ($w, $opts, $class) = @_;
+
+ if (!$w) {
+ $w = "Gtk3::$class"->new(gtknew('Image', file => delete $opts->{file}),
+ delete $opts->{label});
+ $w->set_tooltip_text(delete $opts->{tooltip}) if $opts->{tooltip};
+ $w->signal_connect(clicked => delete $opts->{clicked}) if exists $opts->{clicked};
+ }
+
+ $w;
+}
+
+sub _gtk__CheckMenuItem {
+ my ($w, $opts, $class) = @_;
+
+ if (!$w) {
+ add2hash_($opts, { mnemonic => 1 });
+
+ $w = $opts->{image} || !exists $opts->{text} ? "Gtk3::$class"->new :
+ delete $opts->{mnemonic} ? "Gtk3::$class"->new_with_label(delete $opts->{text}) :
+ "Gtk3::$class"->new_with_mnemonic(delete $opts->{text});
+ }
+
+ $w->set_active(delete $opts->{active}) if exists $opts->{active};
+ $w->signal_connect(toggled => delete $opts->{toggled}) if exists $opts->{toggled};
+ $w;
+}
+
+sub _gtk__SpinButton {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ $opts->{adjustment} ||= do {
+ add2hash_($opts, { step_increment => 1, page_increment => 5, page_size => 1, value => delete $opts->{lower} });
+ Gtk3::Adjustment->new(delete $opts->{value}, 0, delete $opts->{upper}, delete $opts->{step_increment}, delete $opts->{page_increment}, delete $opts->{page_size});
+ };
+ $w = Gtk3::SpinButton->new(delete $opts->{adjustment}, delete $opts->{climb_rate} || 0, delete $opts->{digits} || 0);
+ }
+
+ $w->signal_connect(value_changed => delete $opts->{value_changed}) if exists $opts->{value_changed};
+ $w;
+}
+
+sub _gtk__HScale {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ $opts->{adjustment} ||= do {
+ add2hash_($opts, { step_increment => 1, page_increment => 5, page_size => 1 });
+ add2hash_($opts, { value => $opts->{lower} }) if !exists $opts->{value};
+ Gtk3::Adjustment->new(delete $opts->{value}, delete $opts->{lower}, (delete $opts->{upper}) + 1, delete $opts->{step_increment}, delete $opts->{page_increment}, delete $opts->{page_size});
+ };
+ $w = Gtk3::HScale->new(delete $opts->{adjustment});
+ }
+
+ $w->set_digits(delete $opts->{digits}) if exists $opts->{digits};
+ if (my $value_ref = delete $opts->{value_ref}) {
+ my $set = sub { $w->set_value($$value_ref) };
+ gtkval_register($w, $value_ref, $set);
+ $set->();
+ $w->signal_connect(value_changed => sub {
+ gtkval_modify($value_ref, $w->get_value, $set);
+ });
+ }
+ $w->signal_connect(value_changed => delete $opts->{value_changed}) if exists $opts->{value_changed};
+ $w;
+}
+
+sub _gtk__ProgressBar {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ $w = Gtk3::ProgressBar->new;
+ }
+
+ if (my $fraction_ref = delete $opts->{fraction_ref}) {
+ # guard for ref to ref (eg: int64(0) vs 0):
+ $$fraction_ref = 0 if !defined($$fraction_ref);
+ my $set = sub { $w->set_fraction($$fraction_ref) };
+ gtkval_register($w, $fraction_ref, $set);
+ $set->();
+ } elsif (exists $opts->{fraction}) {
+ $w->set_fraction(delete $opts->{fraction});
+ }
+
+ $w;
+}
+
+sub _gtk__VSeparator { &_gtk_any_simple }
+sub _gtk__HSeparator { &_gtk_any_simple }
+sub _gtk__Calendar { &_gtk_any_simple }
+
+sub _gtk__DrawingArea {
+ my ($w, $_opts) = @_;
+
+ if (!$w) {
+ $w = Gtk3::DrawingArea->new;
+ }
+ $w;
+}
+
+sub _gtk__Pixbuf {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ my $name = delete $opts->{file} or internal_error("missing file");
+ my $file = _find_imgfile($name) or internal_error("cannot find image $name");
+ if (my $size = delete $opts->{size}) {
+ $w = Gtk3::Gdk::Pixbuf->new_from_file_at_scale($file, $size, $size, 1);
+ } else {
+ $w = Gtk3::Gdk::Pixbuf->new_from_file($file);
+ }
+ $w = $w->flip(1) if delete $opts->{flip};
+ }
+ $w;
+}
+
+sub _gtk__Image {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ $w = Gtk3::Image->new;
+ $w->set_alignment(@{delete $opts->{alignment}}) if exists $opts->{alignment};
+ $w->{format} = delete $opts->{format} if exists $opts->{format};
+
+ $w->set_from_stock(delete $opts->{stock}, 'button') if exists $opts->{stock};
+
+ $w->{options} = { flip => delete $opts->{flip} };
+
+ $w->{set_from_file} = sub {
+ my ($w, $file, $o_size) = @_;
+ my $pixbuf = gtknew('Pixbuf', file => $file, if_($o_size, size => $o_size), %{$w->{options}});
+ $w->set_from_pixbuf($pixbuf);
+ };
+ }
+
+ if (my $name = delete $opts->{file}) {
+ my $file = _find_imgfile(may_apply($w->{format}, $name)) or internal_error("cannot find image $name");
+ $w->{set_from_file}->($w, $file, delete $opts->{size});
+ } elsif (my $file_ref = delete $opts->{file_ref}) {
+ my $set = sub {
+ my $file = _find_imgfile(may_apply($w->{format}, $$file_ref)) or internal_error("cannot find image $$file_ref");
+ $w->{set_from_file}->($w, $file, delete $opts->{size});
+ };
+ gtkval_register($w, $file_ref, $set);
+ $set->() if $$file_ref;
+ } elsif (my $pixbuf = delete $opts->{pixbuf}) {
+ $w->set_from_pixbuf($pixbuf);
+ }
+ $w;
+}
+
+sub _gtk__WrappedLabel {
+ my ($w, $opts) = @_;
+
+ $opts->{line_wrap} = 1 if !defined $opts->{line_wrap};
+ _gtk__Label($w, $opts);
+}
+
+our $left_padding = 20;
+
+sub _gtk__Label_Left {
+ my ($w, $opts) = @_;
+ $opts->{alignment} ||= [ 0, 0 ];
+ $opts->{padding} ||= [ $left_padding, 0 ];
+ _gtk__WrappedLabel($w, $opts);
+}
+
+sub _gtk__Label_Right {
+ my ($w, $opts) = @_;
+ $opts->{alignment} ||= [ 1, 0.5 ];
+ _gtk__Label($w, $opts);
+}
+
+
+sub _gtk__Label {
+ my ($w, $opts) = @_;
+
+ if ($w) {
+ $w->set_text(delete $opts->{text}) if exists $opts->{text};
+ } else {
+ $w = Gtk3::Label->new(delete $opts->{text});
+ $w->set_selectable(delete $opts->{selectable}) if exists $opts->{selectable};
+ $w->set_ellipsize(delete $opts->{ellipsize}) if exists $opts->{ellipsize};
+ $w->set_justify(delete $opts->{justify}) if exists $opts->{justify};
+ $w->set_line_wrap(delete $opts->{line_wrap}) if exists $opts->{line_wrap};
+ $w->set_alignment(@{delete $opts->{alignment}}) if exists $opts->{alignment};
+ $w->override_font(Pango::FontDescription->from_string(delete $opts->{font})) if exists $opts->{font};
+ }
+
+ if (my $text_ref = delete $opts->{text_ref}) {
+ my $set = sub { $w->set_text($$text_ref) };
+ gtkval_register($w, $text_ref, $set);
+ $set->();
+ }
+
+ if (my $t = delete $opts->{text_markup}) {
+ $w->set_markup($t);
+ if ($w->get_text eq '') {
+ log::l("invalid markup in $t. not using the markup");
+ $w->set_text($t);
+ }
+ }
+ $w;
+}
+
+
+sub _gtk__Alignment {
+ my ($w, $_opts) = @_;
+
+ if (!$w) {
+ $w = Gtk3::Alignment->new(0, 0, 0, 0);
+ }
+ $w;
+}
+
+
+sub title1_to_markup {
+ my ($label) = @_;
+ if ($::isInstall) {
+ my $font = lang::l2pango_font($::o->{locale}{lang});
+ if (my ($font_size) = $font =~ /(\d+)/) {
+ $font_size++;
+ $font =~ s/\d+/$font_size/;
+ }
+ qq(<span foreground="#5A8AD6" font="$font">$label</span>);
+ } else {
+ qq(<b><big>$label</big></b>);
+ }
+}
+
+sub _gtk__Install_Title {
+ my ($w, $opts) = @_;
+ local $opts->{widget_name} = 'Banner';
+ $opts->{text} = uc($opts->{text}) if $::isInstall;
+ gtknew('HBox', widget_name => 'Banner', children => [
+ 0, gtknew('Label', padding => [ 6, 0 ]),
+ 1, gtknew('VBox', widget_name => 'Banner', children_tight => [
+ _gtk__Title2($w, $opts),
+ if_($::isInstall, Gtk3::HSeparator->new),
+ ]),
+ 0, gtknew('Label', padding => [ 6, 0 ]),
+ ]);
+}
+
+sub _gtk__Title1 {
+ my ($w, $opts) = @_;
+ $opts ||= {};
+ $opts->{text_markup} = title1_to_markup(delete($opts->{label})) if $opts->{label};
+ _gtk__WrappedLabel($w, $opts);
+}
+
+sub _gtk__Title2 {
+ my ($w, $opts) = @_;
+ $opts ||= {};
+ $opts->{alignment} = [ 0, 0 ];
+ _gtk__Title1($w, $opts);
+}
+
+sub _gtk__Entry {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ $w = Gtk3::Entry->new;
+ $w->set_editable(delete $opts->{editable}) if exists $opts->{editable};
+ }
+
+ if (my $icon = delete $opts->{primary_icon}) {
+ $w->set_icon_from_stock('primary', $icon);
+ #$w->set_icon_highlight('primary', $icon);
+ }
+ if (my $icon = delete $opts->{secondary_icon}) {
+ $w->set_icon_from_stock('secondary', $icon);
+ #$w->set_icon_highlight('secondary', $icon);
+ }
+
+ $w->signal_connect('icon-release' => delete $opts->{'icon-release'}) if exists $opts->{'icon-release'};
+ $w->signal_connect('icon-press' => delete $opts->{'icon-press'}) if exists $opts->{'icon-press'};
+
+ $w->set_text(delete $opts->{text}) if exists $opts->{text};
+ $w->signal_connect(key_press_event => delete $opts->{key_press_event}) if exists $opts->{key_press_event};
+
+ if (my $text_ref = delete $opts->{text_ref}) {
+ my $set = sub { $w->set_text($$text_ref) };
+ gtkval_register($w, $text_ref, $set);
+ $set->();
+ $w->signal_connect(changed => sub {
+ gtkval_modify($text_ref, $w->get_text, $set);
+ });
+ }
+
+ $w;
+}
+
+sub _gtk__WeaknessCheckEntry {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ $w = _gtk__Entry($w, $opts);
+ }
+
+ $w->signal_connect('changed' => sub {
+ require authentication;
+ my $password_weakness = authentication::compute_password_weakness($w->get_text);
+ $w->set_icon_from_pixbuf('GTK_ENTRY_ICON_SECONDARY', _get_weakness_icon($password_weakness));
+ $w->set_icon_tooltip_text('GTK_ENTRY_ICON_SECONDARY', _get_weakness_tooltip($password_weakness));
+ });
+
+ $w;
+}
+
+sub _gtk__ActionGroup {
+ my ($w, $opts, $_class) = @_;
+
+ if (!$w) {
+ $w = Gtk3::ActionGroup->new(delete $opts->{name});
+ if ($opts->{actions}) {
+ $w->add_actions(delete $opts->{actions}, undef);
+ $w->add_toggle_actions(delete $opts->{toggle_actions}, undef) if $opts->{toggle_actions};
+ if (my $radios = delete $opts->{radio_actions}) {
+ $w->add_radio_actions(@$_) foreach @$radios;
+ }
+ }
+ }
+ $w;
+}
+
+sub _gtk__Builder {
+ my ($w, $opts, $_class) = @_;
+
+ if (!$w) {
+ $w = Gtk3::Builder->new;
+ $w->add_from_file(delete $opts->{file}) if exists $opts->{file};
+ $w->add_from_string(delete $opts->{string}) if exists $opts->{string};
+ $w->connect_signals(undef);
+ }
+ $w;
+}
+
+sub _gtk__UIManager {
+ my ($w, $opts, $_class) = @_;
+
+ if (!$w) {
+ $w = Gtk3::UIManager->new;
+ if ($opts->{actions}) {
+ $w->insert_action_group(gtknew('ActionGroup', name => 'Actions',
+ map { exists $opts->{$_} ? ($_ => delete $opts->{$_}) : () } qw(actions radio_actions toggle_actions)),
+ 0);
+ }
+ $w->add_ui_from_string(delete $opts->{string}) if exists $opts->{string};
+ }
+ $w;
+}
+
+sub _gtk__TextView {
+ my ($w, $opts, $_class, $action) = @_;
+
+ if (!$w) {
+ $w = Gtk3::TextView->new;
+ $w->set_editable(delete $opts->{editable}) if exists $opts->{editable};
+ $w->set_wrap_mode(delete $opts->{wrap_mode}) if exists $opts->{wrap_mode};
+ $w->set_cursor_visible(delete $opts->{cursor_visible}) if exists $opts->{cursor_visible};
+ }
+
+ _text_insert($w, delete $opts->{text}, append => $action eq 'gtkadd') if exists $opts->{text};
+ $w;
+}
+
+
+sub _gtk__WebKit2_WebView {
+ my ($w, $opts, $class, $action) = @_;
+ _gtk__WebKit_WebView($w, $opts, $class, $action);
+}
+
+sub _gtk__WebKit_WebView {
+ my ($w, $opts, $class, $_action) = @_;
+ if (!$w) {
+ $class =~ s/_([^_]*)$/::$1/;
+ my $base_class = "Gtk3::$class";
+ $base_class =~ s/_WebView$//;
+ eval "require $base_class";
+ $base_class->import; # needed for initializing introspection
+ $w = $base_class->new;
+ }
+
+ # disable contextual menu:
+ if (delete $opts->{no_popup_menu}) {
+ $w->signal_connect('context-menu' => sub {
+ my (undef, $menu) = @_;
+ $menu->remove_all if $menu;
+ 1;
+ });
+ }
+
+ $w;
+}
+
+sub _gtk__ComboBoxText { &_gtk__ComboBox }
+sub _gtk__ComboBox {
+ my ($w, $opts, $_class, $action) = @_;
+
+ if (!$w) {
+ $w = Gtk3::ComboBoxText->new;
+ $w->{format} = delete $opts->{format} if exists $opts->{format};
+
+ }
+ my $set_list = sub {
+ $w->{formatted_list} = $w->{format} ? [ map { $w->{format}($_) } @{$w->{list}} ] : $w->{list};
+ $w->get_model->clear;
+ $w->{strings} = $w->{formatted_list}; # used by Gtk3::ComboBox wrappers such as get_text() in ugtk3
+ $w->append_text($_) foreach @{$w->{formatted_list}};
+ };
+ if (my $list_ref = delete $opts->{list_ref}) {
+ !$opts->{list} or internal_error("both list and list_ref");
+ my $set = sub {
+ $w->{list} = $$list_ref;
+ $set_list->();
+ };
+ gtkval_register($w, $list_ref, $set);
+ $set->();
+ } elsif (exists $opts->{list}) {
+ $w->{list} = delete $opts->{list};
+ $set_list->();
+ }
+
+ if ($action eq 'gtknew') {
+ if (my $text_ref = delete $opts->{text_ref}) {
+ my $set = sub {
+ my $val = may_apply($w->{format}, $$text_ref);
+ eval { $w->set_active(find_index { $_ eq $val } @{$w->{formatted_list}}) };
+ };
+ $w->signal_connect(changed => sub {
+ gtkval_modify($text_ref, $w->{list}[$w->get_active], $set);
+ });
+ gtkval_register($w, $text_ref, $set);
+ gtkval_register($w, $text_ref, delete $opts->{changed}) if exists $opts->{changed};
+ $set->();
+ } else {
+ my $val = delete $opts->{text};
+ eval { $w->set_active(find_index { $_ eq $val } @{$w->{formatted_list}}) } if defined $val;
+ $w->signal_connect(changed => delete $opts->{changed}) if exists $opts->{changed};
+ }
+ }
+ $w;
+}
+
+sub _gtk__ScrolledWindow {
+ my ($w, $opts, $_class, $action) = @_;
+
+ if (!$w) {
+ $w = Gtk3::ScrolledWindow->new(undef, undef);
+ $w->set_policy(delete $opts->{h_policy} || 'automatic', delete $opts->{v_policy} || 'automatic');
+ }
+
+ my $faked_w = $w;
+
+ if (my $child = delete $opts->{child}) {
+ if (member(ref($child), qw(Gtk3::Layout Gtk3::Html2::View Gtk3::SimpleList Gtk3::SourceView::View Gtk3::Text Gtk3::TextView Gtk3::TreeView Gtk3::WebKit::WebView))) {
+ $w->add($child);
+ } else {
+ $w->add_with_viewport($child);
+ }
+ $child->set_focus_vadjustment($w->get_vadjustment) if $child->can('set_focus_vadjustment');
+ $child->set_left_margin(6) if ref($child) =~ /Gtk3::TextView/ && $child->get_left_margin <= 6;
+ $child->show;
+
+ $w->get_child->set_shadow_type(delete $opts->{shadow_type}) if exists $opts->{shadow_type};
+
+ if (ref($child) eq 'Gtk3::TextView' && delete $opts->{to_bottom}) {
+ $child->{to_bottom} = _allow_scroll_TextView_to_bottom($w, $child);
+ }
+
+ if (!delete $opts->{no_shadow} && $action eq 'gtknew' && ref($child) =~ /Gtk3::(Html2|SimpleList|TextView|TreeView|WebKit::WebView)/) {
+ $faked_w = gtknew('Frame', shadow_type => 'in', child => $w);
+ }
+ }
+ $faked_w;
+}
+
+sub _gtk__Frame {
+ my ($w, $opts) = @_;
+
+ if ($w) {
+ $w->set_label(delete $opts->{text}) if exists $opts->{text};
+ } else {
+ $w = Gtk3::Frame->new(delete $opts->{text});
+ $w->set_border_width(delete $opts->{border_width}) if exists $opts->{border_width};
+ $w->set_shadow_type(delete $opts->{shadow_type}) if exists $opts->{shadow_type};
+ }
+
+ if (my $child = delete $opts->{child}) {
+ $w->add($child);
+ $child->show;
+ }
+ $w;
+}
+
+sub _gtk__Expander {
+ my ($w, $opts) = @_;
+
+ if ($w) {
+ $w->set_label(delete $opts->{text}) if exists $opts->{text};
+ } else {
+ $w = Gtk3::Expander->new(delete $opts->{text} || '');
+ }
+ $w->set_use_markup(delete $opts->{use_markup}) if exists $opts->{use_markup};
+
+ $w->signal_connect(activate => delete $opts->{activate}) if exists $opts->{activate};
+
+ if (my $child = delete $opts->{child}) {
+ $w->add($child);
+ $child->show;
+ }
+ $w;
+}
+
+
+
+sub _gtk__Popover {
+ my ($w, $opts) = @_;
+
+ if ($w) {
+ $w->set_relative_to(delete $opts->{text}) if exists $opts->{text};
+ } else {
+ $w = Gtk3::Popover->new(delete $opts->{relative_to});
+ }
+ $w->set_use_markup(delete $opts->{use_markup}) if exists $opts->{use_markup};
+ $w->set_position(delete $opts->{position}) if exists $opts->{position};
+ $w->set_relative_to(delete $opts->{relative_to}) if exists $opts->{relative_to};
+ if (my $widget = delete $opts->{child}) {
+ $w->add($widget);
+ $widget->show;
+ }
+
+ $w->signal_connect(activate => delete $opts->{activate}) if exists $opts->{activate};
+
+ if (my $child = delete $opts->{child}) {
+ $w->add($child);
+ $child->show;
+ }
+ $w;
+}
+
+
+
+sub _gtk__MDV_Notebook {
+ my ($w, $opts, $_class, $_action) = @_;
+ if (!$w) {
+ import_style_ressources();
+
+ my ($layout, $selection_arrow, $selection_bar);
+ my @size;
+ if ($opts->{parent_window}) {
+ my $pw = delete $opts->{parent_window};
+ @size = $pw->get_allocated_width;
+ } else {
+ @size = root_window_size();
+ }
+ my $root_height = first(@size);
+ my $suffix = $root_height == 800 && !$::isStandalone ? '_600' : '_768';
+ # the white square is a little bit above the actual left sidepanel:
+ my $offset = 20;
+ my $is_flip_needed = text_direction_rtl();
+ my $filler = gtknew('Image', file => 'left-background-filler.png');
+ my $filler_height = $filler->get_pixbuf->get_height;
+ my $left_background = gtknew('Image', file => 'left-background.png');
+ my $lf_height = $left_background->get_pixbuf->get_height;
+ my @right_background = $::isInstall ?
+ gtknew('Image', file => "right-white-background_left_part$suffix", flip => $is_flip_needed)
+ : map {
+ gtknew('Image', file => "right-white-background_left_part-$_", flip => $is_flip_needed);
+ } 1, 2, 2, 3;
+ my $width1 = $left_background->get_pixbuf->get_width;
+ my $right_bg_width = $right_background[0]->get_pixbuf->get_width;
+ my $total_width = $width1 + $right_bg_width;
+ my $arrow_x = text_direction_rtl() ? $offset/2 - 4 : $width1 - $offset - 3;
+ $w = gtknew('HBox', spacing => 0, children => [
+ 0, $layout = gtknew('Layout', width => $total_width - $offset, children => [ #Layout Fixed
+ # stacking order is important for "Z-buffer":
+ [ $left_background, 0, 0 ],
+ if_($suffix ne '_600',
+ [ $filler, 0, $lf_height ],
+ [ gtknew('Image', file => 'left-background-filler.png'), 0, $lf_height + $filler_height ],
+ [ gtknew('Image', file => 'left-background-filler.png'), 0, $lf_height + $filler_height*2 ],
+ ),
+ [ $selection_bar = gtknew('Image', file => 'rollover.png'), 0, 0 ], # arbitrary vertical position
+ ($opts->{children} ? @{ delete $opts->{children} } : ()),
+ [ my $box = gtknew('VBox', spacing => 0, height => -1, children => [
+ 0, $right_background[0],
+ if_(!$::isInstall,
+ 1, $right_background[1],
+ 1, $right_background[2], # enought up to to XYZx1280 resolution
+ 0, $right_background[3],
+ ),
+ ]), (text_direction_rtl() ? 0 : $width1 - $offset), 0 ],
+ # stack on top (vertical position is arbitrary):
+ [ $selection_arrow = gtknew('Image', file => 'steps_on', flip => $is_flip_needed), $arrow_x, 0, ],
+ ]),
+ 1, delete $opts->{right_child} ||
+ gtknew('Image', file => "right-white-background_right_part$suffix", flip => $is_flip_needed),
+ ]);
+
+ $w->signal_connect('size-allocate' => sub {
+ my (undef, $requisition) = @_;
+ state $width ||= $right_bg_width;
+ $box->set_size_request($width, $requisition->{height});
+ });
+ $_->set_property('no-show-all', 1) foreach $selection_bar, $selection_arrow;
+ bless($w, 'Gtk3::MDV_Notebook');
+ add2hash($w, {
+ arrow_x => $arrow_x,
+ layout => $layout,
+ selection_arrow => $selection_arrow,
+ selection_bar =>$selection_bar,
+ });
+ }
+ $w;
+}
+
+
+sub _gtk__Fixed {
+ my ($w, $opts, $_class, $_action) = @_;
+
+ if (!$w) {
+ $w = Gtk3::Fixed->new;
+ $w->set_has_window(delete $opts->{has_window}) if exists $opts->{has_window};
+ _gtknew_handle_layout_children($w, $opts);
+ }
+ $w;
+}
+
+sub _gtk__Overlay {
+ my ($w, $opts, $_class, $_action) = @_;
+
+ if (!$w) {
+ $w = Gtk3::Overlay->new;
+ _gtknew_handle_overlay_children($w, $opts);
+ }
+ $w;
+}
+
+sub _gtknew_handle_overlay_children {
+ my ($w, $opts) = @_;
+ $w->add(delete $opts->{main_child}) if $opts->{main_child};
+ $opts->{children} ||= [];
+ foreach (@{$opts->{children}}) {
+ $w->add_overlay($_);
+ }
+ delete $opts->{children};
+}
+
+
+sub _gtk__Layout {
+ my ($w, $opts, $_class, $_action) = @_;
+
+ if (!$w) {
+ $w = Gtk3::Layout->new;
+ _gtknew_handle_layout_children($w, $opts);
+ }
+ $w;
+}
+
+sub _gtknew_handle_layout_children {
+ my ($w, $opts) = @_;
+ $opts->{children} ||= [];
+ push @{$opts->{children}}, [ delete $opts->{child}, delete $opts->{x}, delete $opts->{y} ] if exists $opts->{child};
+ foreach (@{$opts->{children}}) {
+ $w->put(@$_);
+ }
+ delete $opts->{children};
+}
+
+
+sub _gtk__Window { &_gtk_any_Window }
+sub _gtk__Dialog { &_gtk_any_Window }
+sub _gtk__Plug { &_gtk_any_Window }
+sub _gtk_any_Window {
+ my ($w, $opts, $class) = @_;
+
+ if (!$w) {
+ if ($class eq 'Window') {
+ $w = "Gtk3::$class"->new(delete $opts->{type} || 'toplevel');
+ } elsif ($class eq 'Plug') {
+ delete $opts->{title};
+ $opts->{socket_id} or internal_error("cannot create a Plug without a socket_id");
+ $w = "Gtk3::$class"->new(delete $opts->{socket_id});
+ } elsif ($class eq 'FileChooserDialog') {
+ my $action = delete $opts->{action} || internal_error("missing action for FileChooser");
+ $w = Gtk3::FileChooserDialog->new(delete $opts->{title}, delete $opts->{transient_for} || $::main_window,
+ $action, N("Cancel") => 'cancel', delete $opts->{button1} || N("Ok") => 'ok',
+ );
+ } else {
+ $w = "Gtk3::$class"->new;
+ }
+
+ if ($::isInstall || $::set_dialog_hint) {
+ $w->set_type_hint('dialog'); # for matchbox window manager
+ }
+
+ $w->set_modal(to_bool(delete $opts->{modal})) if exists $opts->{modal};
+ $opts->{transient_for} ||= $::main_window if $::main_window;
+ $w->set_modal(1) if exists $opts->{transient_for};
+ $w->set_transient_for(delete $opts->{transient_for}) if exists $opts->{transient_for};
+ $w->set_border_width(delete $opts->{border_width}) if exists $opts->{border_width};
+ $w->set_shadow_type(delete $opts->{shadow_type}) if exists $opts->{shadow_type};
+ $w->set_position(delete $opts->{position_policy}) if exists $opts->{position_policy};
+ $w->set_default_size(delete $opts->{default_width} || -1, delete $opts->{default_height} || -1) if exists $opts->{default_width} || exists $opts->{default_height};
+ my $icon_no_error = $opts->{icon_no_error};
+ if (my $name = delete $opts->{icon} || delete $opts->{icon_no_error}) {
+ if (my $f = _find_imgfile($name)) {
+ $w->set_icon(gtknew('Pixbuf', file => $f));
+ } elsif (!$icon_no_error) {
+ internal_error("cannot find $name");
+ }
+ }
+ }
+ $w->set_title(delete $opts->{title}) if exists $opts->{title};
+
+ if (my $child = delete $opts->{child}) {
+ $w->add($child);
+ $child->show;
+ }
+ $w;
+}
+
+my $previous_popped_and_reuse_window;
+
+sub destroy_previous_popped_and_reuse_window() {
+ $previous_popped_and_reuse_window or return;
+
+ $previous_popped_and_reuse_window->destroy;
+ $previous_popped_and_reuse_window = undef;
+}
+
+sub _gtk__MagicWindow {
+ my ($w, $opts) = @_;
+
+ my $pop_it = delete $opts->{pop_it} || !$::isWizard && !$::isEmbedded || $::WizardTable && do {
+ #- do not take into account the wizard banner
+ # FIXME!!!
+ any { $_->get_name ne 'Banner' && $_->get_visible } $::WizardTable->get_children;
+ };
+
+ my $pop_and_reuse = delete $opts->{pop_and_reuse} && $pop_it;
+ my $sub_child = delete $opts->{child};
+ my $provided_banner = delete $opts->{banner};
+
+ if ($pop_it && $provided_banner) {
+ $sub_child = gtknew('VBox', children => [ 0, $provided_banner, if_($sub_child, 1, $sub_child) ]);
+ } else {
+ $sub_child ||= gtknew('VBox');
+ }
+ if (!$pop_and_reuse) {
+ destroy_previous_popped_and_reuse_window();
+ }
+
+ if ($previous_popped_and_reuse_window && $pop_and_reuse) {
+ $w = $previous_popped_and_reuse_window;
+ $w->remove($w->get_child);
+
+ gtkadd($w, child => $sub_child);
+ %$opts = ();
+ } elsif ($pop_it) {
+ $opts->{child} = $sub_child;
+
+ $w = _create_Window($opts, '');
+ $previous_popped_and_reuse_window = $w if $pop_and_reuse;
+ } else {
+ if (!$::WizardWindow) {
+
+ my $banner;
+ if (!$::isEmbedded && !$::isInstall && $::Wizard_title) {
+ if (_find_imgfile($opts->{icon_no_error})) {
+ $banner = Gtk3::Banner->new($opts->{icon_no_error}, $::Wizard_title);
+ } else {
+ log::l("ERROR: missing wizard banner $opts->{icon_no_error}");
+ }
+ }
+ $::WizardTable = gtknew('VBox', if_($banner, children_tight => [ $banner ]));
+
+ if ($::isEmbedded) {
+ add2hash($opts, {
+ socket_id => $::XID,
+ child => $::WizardTable,
+ });
+ delete $opts->{no_Window_Manager};
+ $::Plug = $::WizardWindow = _gtk(undef, 'Plug', 'gtknew', $opts);
+ sync($::WizardWindow);
+ } else {
+ add2hash($opts, {
+ child => $::WizardTable,
+ });
+ $::WizardWindow = _create_Window($opts, 'special_center');
+ }
+ } else {
+ %$opts = ();
+ }
+
+ set_main_window_size($::WizardWindow);
+
+ $w = $::WizardWindow;
+
+ gtkadd($::WizardTable, children_tight => [ $provided_banner ]) if $provided_banner;
+ gtkadd($::WizardTable, children_loose => [ $sub_child ]);
+ }
+ bless {
+ real_window => $w,
+ child => $sub_child, pop_it => $pop_it, pop_and_reuse => $pop_and_reuse,
+ if_($provided_banner, banner => $provided_banner),
+ }, 'mygtk3::MagicWindow';
+}
+
+=item _gtk__AboutDialog($w, $opts)
+
+A standard About dialog. Used with:
+
+ my $w = gtknew('AboutDialog', ...);
+ $w->show_all;
+ $w->run;
+
+=cut
+
+sub _gtk__AboutDialog {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ $w = Gtk3::AboutDialog->new;
+ $w->signal_connect(response => sub { $_[0]->destroy });
+ $w->set_program_name(delete $opts->{name}) if exists $opts->{name};
+ $w->set_version(delete $opts->{version}) if exists $opts->{version};
+ $w->set_icon(gtknew('Pixbuf', file => delete $opts->{icon})) if exists $opts->{icon};
+ $w->set_logo(gtknew('Pixbuf', file => delete $opts->{logo})) if exists $opts->{logo};
+ $w->set_copyright(delete $opts->{copyright}) if exists $opts->{copyright};
+
+ if (my $url = delete $opts->{website}) {
+ $url =~ s/^https:/http:/; # Gtk3::About doesn't like "https://..." like URLs
+ $w->set_website($url);
+ }
+ $w->set_license(delete $opts->{license}) if exists $opts->{license};
+ $w->set_wrap_license(delete $opts->{wrap_license}) if exists $opts->{wrap_license};
+ $w->set_comments(delete $opts->{comments}) if exists $opts->{comments};
+ $w->set_website_label(delete $opts->{website_label}) if exists $opts->{website_label};
+ $w->set_authors(delete $opts->{authors}) if exists $opts->{authors};
+ $w->set_documenters(delete $opts->{documenters}) if exists $opts->{documenters};
+ $w->set_translator_credits(delete $opts->{translator_credits}) if exists $opts->{translator_credits};
+ $w->set_artists(delete $opts->{artists}) if exists $opts->{artists};
+ $w->set_modal(to_bool(delete $opts->{modal})) if exists $opts->{modal};
+ $w->set_transient_for(delete $opts->{transient_for}) if exists $opts->{transient_for};
+ $w->set_position(delete $opts->{position_policy}) if exists $opts->{position_policy};
+ }
+ $w;
+}
+
+sub _gtk__FileChooserDialog { &_gtk_any_Window }
+
+sub _gtk__FileChooser {
+ my ($w, $opts) = @_;
+
+ #- no nice way to have a {file_ref} on a FileChooser since selection_changed only works for browsing, not file/folder creation
+
+ if (!$w) {
+ my $action = delete $opts->{action} || internal_error("missing action for FileChooser");
+ $w = Gtk3::FileChooserWidget->new($action);
+
+ my $file = $opts->{file} && delete $opts->{file};
+
+ if (my $dir = delete $opts->{directory} || $file && dirname($file)) {
+ $w->set_current_folder($dir);
+ }
+ if ($file) {
+ if ($action =~ /save|create/) {
+ $w->set_current_name(basename($file));
+ } else {
+ $w->set_filename($file);
+ }
+ }
+ }
+ $w;
+}
+
+sub _gtk__VPaned { &_gtk_any_Paned }
+sub _gtk__HPaned { &_gtk_any_Paned }
+sub _gtk_any_Paned {
+ my ($w, $opts, $class, $action) = @_;
+
+ if (!$w) {
+ $w = Gtk3::Paned->new($class =~ /V/ ? 'vertical' : 'horizontal');
+ $w->set_border_width(delete $opts->{border_width}) if exists $opts->{border_width};
+ $w->set_position(delete $opts->{position}) if exists $opts->{position};
+ } elsif ($action eq 'gtkset') {
+ $_->destroy foreach $w->get_children;
+ }
+
+ foreach my $opt (qw(resize1 shrink1 resize2 shrink2)) {
+ $opts->{$opt} = 1 if !defined $opts->{$opt};
+ }
+ $w->pack1(delete $opts->{child1}, delete $opts->{resize1}, delete $opts->{shrink1});
+ $w->pack2(delete $opts->{child2}, delete $opts->{resize2}, delete $opts->{shrink2});
+ $w;
+}
+
+sub _gtk__VBox { &_gtk_any_Box }
+sub _gtk__HBox { &_gtk_any_Box }
+sub _gtk_any_Box {
+ my ($w, $opts, $class, $action) = @_;
+
+ if (!$w) {
+ $w = "Gtk3::$class"->new;
+ $w->set_homogeneous(delete $opts->{homogenous}) if exists $opts->{homogenous};
+ $w->set_spacing(delete $opts->{spacing}) if exists $opts->{spacing};
+ $w->set_border_width(delete $opts->{border_width}) if exists $opts->{border_width};
+ } elsif ($action eq 'gtkset') {
+ $_->destroy foreach $w->get_children;
+ }
+
+ _gtknew_handle_children($w, $opts);
+ $w;
+}
+
+sub _gtk__VButtonBox { &_gtk_any_ButtonBox }
+sub _gtk__HButtonBox { &_gtk_any_ButtonBox }
+sub _gtk_any_ButtonBox {
+ my ($w, $opts, $class, $action) = @_;
+
+ if (!$w) {
+ $w = "Gtk3::$class"->new;
+ $w->set_homogeneous(delete $opts->{homogenous}) if exists $opts->{homogenous};
+ $w->set_border_width(delete $opts->{border_width}) if exists $opts->{border_width};
+ $w->set_spacing(delete $opts->{spacing}) if exists $opts->{spacing};
+ $w->set_layout(delete $opts->{layout} || 'spread');
+ } elsif ($action eq 'gtkset') {
+ $_->destroy foreach $w->get_children;
+ }
+
+ _gtknew_handle_children($w, $opts);
+ $w;
+}
+
+sub _gtk__Notebook {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ $w = Gtk3::Notebook->new;
+ $w->set_property('show-tabs', delete $opts->{show_tabs}) if exists $opts->{show_tabs};
+ $w->set_property('show-border', delete $opts->{show_border}) if exists $opts->{show_border};
+ }
+
+ if (exists $opts->{children}) {
+ foreach (group_by2(@{delete $opts->{children}})) {
+ my ($title, $page) = @$_;
+ $w->append_page($page, $title);
+ $page->show;
+ $title->show;
+ }
+ }
+ $w;
+}
+
+sub _gtk__Table {
+ my ($w, $opts) = @_;
+
+ if (!$w) {
+ add2hash_($opts, { xpadding => 5, ypadding => 0, border_width => $::isInstall ? 3 : 10 });
+
+ $w = Gtk3::Table->new(0, 0, delete $opts->{homogeneous} || 0);
+ $w->set_col_spacings(delete $opts->{col_spacings} || 0);
+ $w->set_row_spacings(delete $opts->{row_spacings} || 0);
+ $w->set_border_width(delete $opts->{border_width});
+ $w->{$_} = delete $opts->{$_} foreach 'xpadding', 'ypadding', 'mcc';
+ }
+
+ each_index {
+ my ($i, $l) = ($::i, $_);
+ each_index {
+ my $j = $::i;
+ if ($_) {
+ ref $_ or $_ = Gtk3::WrappedLabel->new($_);
+ $w->attach($_, $j, $j + 1, $i, $i + 1,
+ $j != $#$l && !$w->{mcc} ?
+ ('fill', 'fill', $w->{xpadding}, $w->{ypadding}) :
+ (['expand', 'fill'], ref($_) eq 'Gtk3::ScrolledWindow' || $_->get_data('must_grow') ?
+ ['expand', 'fill'] : [], 0, 0));
+ $_->show;
+ }
+ } @$l;
+ } @{delete $opts->{children} || []};
+
+ $w;
+}
+
+sub _gtk_any_simple {
+ my ($w, $_opts, $class) = @_;
+
+ $w ||= "Gtk3::$class"->new;
+}
+
+sub _gtknew_handle_children {
+ my ($w, $opts) = @_;
+
+ my @child = exists $opts->{children_tight} ? map { [ 0, $_ ] } @{delete $opts->{children_tight}} :
+ exists $opts->{children_loose} ? map { [ 1, $_ ] } @{delete $opts->{children_loose}} :
+ exists $opts->{children} ? group_by2(@{delete $opts->{children}}) :
+ exists $opts->{children_centered} ?
+ ([ 1, gtknew('VBox') ], (map { [ 0, $_ ] } @{delete $opts->{children_centered}}), [ 1, gtknew('VBox') ]) :
+ ();
+
+ my $padding = delete $opts->{padding};
+
+ foreach (@child) {
+ my ($fill, $child) = @$_;
+ member($fill, qw(0 1 fill expand)) or internal_error("odd {children} parameter must be 0 or 1 (got $fill)");
+ ref $child or $child = Gtk3::WrappedLabel->new($child);
+ my $expand = $fill && $fill ne 'fill' ? 1 : 0;
+ $w->pack_start($child, $expand, $fill, $padding || 0);
+ $child->show;
+ }
+}
+
+=item mygtk3::MagicWindow::AUTOLOAD($w, @args)
+
+this magic function redirects method calls:
+
+=over 4
+
+=item * default is to redirect them to the {child}
+
+=item *
+
+if the {child} doesn't handle the method, we try with the {real_window}c
+(eg : add_accel_group(), set_position(), set_default_size(), ...)
+
+=item * a few methods are handled specially
+
+=back
+
+=cut
+
+my %for_real_window = map { $_ => 1 } qw(show_all size_request);
+sub mygtk3::MagicWindow::AUTOLOAD {
+ my ($w, @args) = @_;
+
+ my ($meth) = $mygtk3::MagicWindow::AUTOLOAD =~ /mygtk3::MagicWindow::(.*)/;
+
+ my ($s1, @s2) = $meth eq 'show'
+ ? ('real_window', 'banner', 'child') :
+ member($meth, qw(destroy hide)) ?
+ ($w->{pop_it} ? 'real_window' : ('child', 'banner')) :
+ $meth eq 'get' && $args[0] eq 'window-position' ||
+ $for_real_window{$meth} ||
+ !$w->{child}->can($meth)
+ ? 'real_window'
+ : 'child';
+
+#- warn "mygtk3::MagicWindow::$meth", first($w =~ /HASH(.*)/), " on $s1 @s2 (@args)\n";
+
+ $w->{$_} && $w->{$_}->$meth(@args) foreach @s2;
+ $w->{$s1}->$meth(@args);
+}
+
+my $enable_quit_popup;
+sub enable_quit_popup {
+ my ($bool) = @_;
+ $enable_quit_popup = $bool;
+}
+
+state $in_callback;
+sub quit_popup() {
+ return if !$enable_quit_popup;
+ if (!$in_callback) {
+ $in_callback = 1;
+ my $_guard = before_leaving { undef $in_callback };
+ require ugtk3;
+ my $w = ugtk3->new(N("Confirmation"), grab => 1);
+ ugtk3::_ask_okcancel($w, N("Are you sure you want to quit?"), N("Quit"), N("Cancel"));
+ my $ret = ugtk3::main($w);
+ return 1 if !$ret;
+ }
+}
+
+sub quit_callback {
+ my ($w) = @_;
+
+ return 1 if quit_popup();
+ if ($::isWizard) {
+ $w->destroy;
+ die 'wizcancel';
+ } else {
+ if (Gtk3->main_level) {
+ Gtk3->main_quit;
+ } else {
+ # block window deletion if not in main loop (eg: while starting the GUI)
+ return 1;
+ }
+ }
+}
+
+sub _create_Window {
+ my ($opts, $special_center) = @_;
+
+ my $no_Window_Manager = exists $opts->{no_Window_Manager} ? delete $opts->{no_Window_Manager} : !$::isStandalone;
+
+ add2hash($opts, {
+ if_(!$::isInstall && !$::isWizard, border_width => 5),
+
+ #- policy: during install, we need a special code to handle the weird centering, see below
+ position_policy => $special_center ? 'none' :
+ $no_Window_Manager ? 'center-always' : 'center-on-parent',
+
+ if_($::isInstall, position => [
+ $::stepswidth + ($::o->{windowwidth} - $::real_windowwidth) / 2,
+ ($::o->{windowheight} - $::real_windowheight) / 2,
+ ]),
+ });
+ my $w = _gtk(undef, 'Window', 'gtknew', $opts);
+
+ #- when the window is closed using the window manager "X" button (or alt-f4)
+ $w->signal_connect(delete_event => \&quit_callback);
+
+ if ($::isInstall && !$::isStandalone) {
+ require install::gtk; #- for perl_checker
+ install::gtk::handle_unsafe_mouse($::o, $w);
+ $w->signal_connect(key_press_event => \&install::gtk::special_shortcuts);
+
+ #- force center at a weird position, this can't be handled by position_policy
+ #- because center-* really are window manager hints for centering, whereas we want
+ #- to center the main window in the right part of the screen
+ my ($wi, $he);
+ $w->signal_connect(size_allocate => sub {
+ my (undef, $event) = @_;
+ my @w_size = @$event{qw(width height)};
+
+ # ignore bogus sizing events:
+ return if $w_size[0] < 5;
+ return if $w_size[0] == $wi && $w_size[1] == $he;
+ ($wi, $he) = @w_size;
+
+ $w->move(max(0, $::rootwidth - ($::o->{windowwidth} + $wi) / 2),
+ max(0, ($::o->{windowheight} - $he) / 2));
+ }) if $special_center;
+ }
+
+ $w->present if $no_Window_Manager;
+
+ $w;
+}
+
+sub _find_imgfile {
+ my ($name) = @_;
+
+ if ($name =~ m|/| && -f $name) {
+ $name;
+ } else {
+ foreach my $path (_icon_paths()) {
+ foreach ('', '.png', '.xpm', '.jpg') {
+ my $file = "$path/$name$_";
+ -f $file and return $file;
+ }
+ }
+ }
+}
+
+=item _text_insert($textview, $t, %opts)
+
+_text_insert() can be used with any of choose one of theses styles:
+
+=over 4
+
+=item * no tags:
+
+ _text_insert($textview, "My text..");
+
+=item * anonymous tags:
+
+ _text_insert($textview, [ [ 'first text', { 'foreground' => 'blue', 'background' => 'green', ... } ],
+ [ 'second text' ],
+ [ 'third', { 'font' => 'Serif 15', ... } ],
+ ... ]);
+
+=item * named tags:
+
+ $textview->{tags} = {
+ 'blue_green' => { 'foreground' => 'blue', 'background' => 'green', ... },
+ 'big_font' => { 'font' => 'Serif 35', ... },
+ }
+ _text_insert($textview, [ [ 'first text', 'blue_green' ],
+ [ 'second', 'big_font' ],
+ ... ]);
+
+=item * mixed anonymous and named tags:
+
+ $textview->{tags} = {
+ 'blue_green' => { 'foreground' => 'blue', 'background' => 'green', ... },
+ 'big_font' => { 'font' => 'Serif 35', ... },
+ }
+ _text_insert($textview, [ [ 'first text', 'blue_green' ],
+ [ 'second text' ],
+ [ 'third', 'big_font' ],
+ [ 'fourth', { 'font' => 'Serif 15', ... } ],
+ ... ]);
+
+=back
+
+=cut
+
+sub _text_insert {
+ my ($textview, $t, %opts) = @_;
+ my $buffer = $textview->get_buffer;
+ $buffer->{tags} ||= {};
+ $buffer->{gtk_tags} ||= {};
+ my $gtk_tags = $buffer->{gtk_tags};
+ my $tags = $buffer->{tags};
+ if (ref($t) eq 'ARRAY') {
+ if (!$opts{append}) {
+ $buffer->set_text('');
+ $textview->{anchors} = [];
+ }
+ foreach my $token (@$t) {
+ my ($item, $tag) = @$token;
+ my $iter1 = $buffer->get_end_iter;
+ if (ref($item) =~ /^Gtk3::Gdk::Pixbuf/) {
+ $buffer->insert_pixbuf($iter1, $item);
+ next;
+ }
+ if (ref($item) =~ /^Gtk3::/) {
+ my $anchor = $buffer->create_child_anchor($iter1);
+ $textview->add_child_at_anchor($item, $anchor);
+ $textview->{anchors} ||= [];
+ push @{$textview->{anchors}}, $anchor;
+ next;
+ }
+ if ($tag) {
+ if (ref($tag)) {
+ # use anonymous tags
+ $buffer->insert_with_tags($iter1, $item, $buffer->create_tag(undef, %$tag));
+ } else {
+ # fast text insertion:
+ # since in some contexts (eg: localedrake, rpmdrake), we use quite a lot of identical tags,
+ # it's much more efficient and less memory pressure to use named tags
+ $gtk_tags->{$tag} ||= $buffer->create_tag($tag, %{$tags->{$token->[1]}});
+ $buffer->insert_with_tags($iter1, $item, $gtk_tags->{$tag});
+ }
+ } else {
+ $buffer->insert($iter1, $item);
+ }
+ }
+ } else {
+ $t ||= '';
+ if ($opts{append}) {
+ $buffer->insert($buffer->get_end_iter, $t);
+ } else {
+ $textview->{anchors} = [];
+ $buffer->set_text($t);
+ }
+ }
+ $textview->{to_bottom}->() if $textview->{to_bottom};
+
+ #- the following line is needed to move the cursor to the beginning, so that if the
+ #- textview has a scrollbar, it will not scroll to the bottom when focusing (#3633)
+ $buffer->place_cursor($buffer->get_start_iter);
+ $textview->set_wrap_mode($opts{wrap_mode} || 'word');
+ $textview->set_editable($opts{editable} || 0);
+ $textview->set_cursor_visible($opts{visible} || 0);
+ $textview;
+}
+
+sub _allow_scroll_TextView_to_bottom {
+ my ($scrolledWindow, $textView) = @_;
+
+ $textView->get_buffer->create_mark('end', $textView->get_buffer->get_end_iter, 0);
+ sub {
+ my ($o_force) = @_;
+ my $adjustment = $scrolledWindow->get_vadjustment;
+ if ($o_force || $adjustment->get_property("page_size") + $adjustment->get_value == $adjustment->get_property("upper")) {
+ flush(); #- one must flush before scrolling to end, otherwise the text just added *may* not be taken into account correctly, and so it doesn't really scroll to end
+ $textView->scroll_to_mark($textView->get_buffer->get_mark('end'), 0, 1, 0, 1);
+ }
+ };
+}
+
+sub asteriskize {
+ my ($label) = @_;
+ "\x{2022} " . $label;
+}
+
+sub get_main_window_size() {
+ $::real_windowwidth ? ($::real_windowwidth, $::real_windowheight) : $::isWizard ? (540, 360) : (600, 400);
+}
+
+# in order to workaround infamous 6 years old gnome bug #101968:
+sub get_label_width() {
+ first(mygtk3::get_main_window_size()) - 55 - $left_padding;
+}
+
+sub set_main_window_size {
+ my ($window) = @_;
+ my ($width, $height) = get_main_window_size();
+ $window->set_size_request($width, $height);
+}
+
+my @icon_paths;
+sub add_icon_path { push @icon_paths, @_ }
+sub _icon_paths() {
+ (@icon_paths, (exists $ENV{SHARE_PATH} ? ($ENV{SHARE_PATH}, "$ENV{SHARE_PATH}/icons", "$ENV{SHARE_PATH}/libDrakX/pixmaps") : ()),
+ "/usr/lib/libDrakX/icons", "pixmaps", 'data/icons', 'data/pixmaps', 'standalone/icons', '/usr/share/rpmdrake/icons');
+}
+
+sub main {
+ my ($window, $o_verif) = @_;
+ my $destroyed;
+ $window->signal_connect(destroy => sub { $destroyed = 1 });
+ $window->show;
+ do { Gtk3->main } while (!$destroyed && $o_verif && !$o_verif->());
+ may_destroy($window);
+ flush();
+}
+
+sub sync {
+ my ($window) = @_;
+ $window->show;
+ flush();
+}
+
+sub flush() {
+ Gtk3::main_iteration() while Gtk3::events_pending();
+}
+
+sub enable_sync_flush {
+ my ($w) = @_;
+ $w->signal_connect(draw => sub { $w->{displayed} = 1; 0 });
+}
+
+sub sync_flush {
+ my ($w) = @_;
+ # hackish :-(
+ mygtk3::sync($w) while !$w->{displayed};
+}
+
+
+sub register_main_window {
+ my ($w) = @_;
+ push @::main_windows, $::main_window = $w;
+}
+
+sub may_destroy {
+ my ($w) = @_;
+ return if !$w;
+ @::main_windows = difference2(\@::main_windows, [ $w->{real_window} ]);
+ if ($::main_window eq $w->{real_window}) {
+ undef $::main_window;
+ $::main_window = $::main_windows[-1];
+ }
+ $w->destroy;
+}
+
+sub root_window() {
+ state $root;
+ $root ||= Gtk3::Gdk::get_default_root_window();
+}
+
+sub root_window_size() {
+ state $root;
+ $root ||= [Gtk3::Gdk::Screen::width, Gtk3::Gdk::Screen::height];
+ @$root;
+}
+
+sub _new_alpha_pixbuf {
+ my ($pixbuf) = @_;
+ my ($height, $width) = ($pixbuf->get_height, $pixbuf->get_width);
+ my $new_pixbuf = Gtk3::Gdk::Pixbuf->new('rgb', 1, 8, $width, $height);
+ $new_pixbuf->fill(0x00000000); # transparent white
+ $width, $height, $new_pixbuf;
+}
+
+sub _pixbuf_render_alpha {
+ my ($pixbuf, $alpha_threshold) = @_;
+ my ($width, $height, $new_pixbuf) = _new_alpha_pixbuf($pixbuf);
+ $pixbuf->composite($new_pixbuf, 0, 0, $width, $height, 0, 0, 1, 1, 'bilinear', $alpha_threshold);
+ $new_pixbuf;
+}
+
+sub import_style_ressources() {
+ if (!$::isInstall) {
+ my $pl = Gtk3::CssProvider->new;
+ $pl->load_from_path('/usr/share/libDrakX/themes-galaxy.css'); # FIXME DEBUG
+ Gtk3::StyleContext::add_provider_for_screen(Gtk3::Gdk::Screen::get_default(), $pl, Gtk3::STYLE_PROVIDER_PRIORITY_APPLICATION);
+ }
+}
+
+sub text_direction_rtl() {
+ Gtk3::Widget::get_default_direction eq 'rtl';
+}
+
+sub _get_weakness_icon {
+ my ($password_weakness) = @_;
+ my %weakness_icon = (
+ 1 => gtknew('Pixbuf', file => 'security-low'),
+ 2 => gtknew('Pixbuf', file => 'security-low'),
+ 3 => gtknew('Pixbuf', file => 'security-medium'),
+ 4 => gtknew('Pixbuf', file => 'security-strong'),
+ 5 => gtknew('Pixbuf', file => 'security-strong'));
+ my $weakness_icon = $weakness_icon{$password_weakness} || return undef;
+ $weakness_icon;
+}
+
+sub _get_weakness_tooltip {
+ my ($password_weakness) = @_;
+ my %weakness_tooltip = (
+ 1 => N("Password is trivial to guess"),
+ 2 => N("Password is trivial to guess"),
+ 3 => N("Password should be resistant to basic attacks"),
+ 4 => N("Password seems secure"),
+ 5 => N("Password seems secure"));
+ my $weakness_tooltip = $weakness_tooltip{$password_weakness} || return undef;
+ return $weakness_tooltip;
+}
+
+package Gtk3::MDV_Notebook; # helper functions for installer & mcc
+our @ISA = qw(Gtk3::Widget);
+
+sub hide_selection {
+ my ($w) = @_;
+ $_->hide foreach $w->{selection_bar}, $w->{selection_arrow};
+}
+
+sub move_selection {
+ my ($w, $label) = @_;
+ my $layout = $w->{layout};
+ $layout->{arrow_ydiff} ||=
+ ($w->{selection_arrow}->get_pixbuf->get_height - $w->{selection_bar}->get_pixbuf->get_height)/2;
+ my $alloc = $label->get_allocation;
+ my $bar_y = $alloc->{y} - ($w->{selection_bar}->get_pixbuf->get_height - $alloc->{height})/2;
+ $layout->move($w->{selection_bar}, 0, $bar_y);
+ $layout->move($w->{selection_arrow}, $w->{arrow_x}, $bar_y - $layout->{arrow_ydiff}); # arrow is higer
+ $_->show foreach $w->{selection_bar}, $w->{selection_arrow};
+}
+
+=back
+
+=cut
+
+1;
diff --git a/perl-install/partition_table.pm b/perl-install/partition_table.pm
index d67508384..09c8f74d9 100644
--- a/perl-install/partition_table.pm
+++ b/perl-install/partition_table.pm
@@ -1,4 +1,4 @@
-package partition_table; # $Id$
+package partition_table;
use diagnostics;
use strict;
@@ -9,6 +9,20 @@ use partition_table::raw;
use detect_devices;
use log;
+=head1 SYNOPSYS
+
+B<partition_table> enables to read & write partitions on various partition schemes (DOS, GPT, BSD, ...)
+
+It holds base partition table management methods, it manages
+appriopriate partition_table_XXX object according to what has been read
+as XXX partition table type.
+
+=head1 Functions
+
+=over
+
+=cut
+
sub hd2minimal_part {
my ($hd) = @_;
@@ -18,7 +32,12 @@ sub hd2minimal_part {
};
}
-#- works for both hard drives and partitions ;p
+=item description($hd)
+
+Works for both hard disk drives and partitions ;p
+
+=cut
+
sub description {
my ($hd) = @_;
my $win = $hd->{device_windobe};
@@ -32,9 +51,27 @@ sub description {
$hd->{info}, $hd->{mntpoint}, $hd->{fs_type});
}
+=item align_to_MB_boundaries($part)
+
+Align partition start to the next MB boundary
+
+=cut
+
+sub align_to_MB_boundaries {
+ my ($part) = @_;
+
+ my $end = $part->{start} + $part->{size};
+ $part->{start} = round_up($part->{start}, MB(1));
+ $part->{size} = $end - $part->{start};
+}
+
sub adjustStartAndEnd {
my ($hd, $part) = @_;
+ # always align partition start to MB boundaries
+ # (this accounts for devices with non-512 physical sector sizes):
+ align_to_MB_boundaries($part);
+
$hd->adjustStart($part);
$hd->adjustEnd($part);
}
@@ -51,12 +88,8 @@ sub verifyInside {
sub verifyParts_ {
foreach my $i (@_) {
foreach (@_) {
- next if !$i || !$_ || $i == $_ || isWholedisk($i) || isExtended($i); #- avoid testing twice for simplicity :-)
- if (isWholedisk($_)) {
- verifyInside($i, $_) or
- cdie sprintf("partition sector #$i->{start} (%s) is not inside whole disk (%s)!",
- formatXiB($i->{size}, 512), formatXiB($_->{size}, 512));
- } elsif (isExtended($_)) {
+ next if !$i || !$_ || $i == $_ || isExtended($i); #- avoid testing twice for simplicity :-)
+ if (isExtended($_)) {
verifyNotOverlap($i, $_) or
log::l(sprintf("warning partition sector #$i->{start} (%s) is overlapping with extended partition!",
formatXiB($i->{size}, 512))); #- only warning for this one is acceptable
@@ -74,7 +107,9 @@ sub verifyParts {
}
sub verifyPrimary {
my ($pt) = @_;
- $_->{start} > 0 || arch() =~ /^sparc/ || die "partition must NOT start at sector 0" foreach @{$pt->{normal}};
+ if (!$pt->{is_hybrid_iso}) {
+ $_->{start} > 0 || die "partition must NOT start at sector 0" foreach @{$pt->{normal}};
+ }
verifyParts_(@{$pt->{normal}}, $pt->{extended});
}
@@ -95,24 +130,7 @@ sub assign_device_numbers {
my $i = 1;
my $start = 1;
- #- on PPC we need to assign device numbers to the holes too - big FUN!
- #- not if it's an IBM machine using a DOS partition table though
- if (arch() =~ /ppc/ && detect_devices::get_mac_model() !~ /^IBM/) {
- #- first sort the normal parts
- $hd->{primary}{normal} = [ sort { $a->{start} <=> $b->{start} } @{$hd->{primary}{normal}} ];
-
- #- now loop through them, assigning partition numbers - reserve one for the holes
- foreach (@{$hd->{primary}{normal}}) {
- if ($_->{start} > $start) {
- log::l("PPC: found a hole on $hd->{device} before $_->{start}, skipping device...");
- $i++;
- }
- $_->{part_number} = $i;
- compute_device_name($_, $hd);
- $start = $_->{start} + $_->{size};
- $i++;
- }
- } else {
+ {
foreach (@{$hd->{primary}{raw}}) {
$_->{part_number} = $i;
compute_device_name($_, $hd);
@@ -141,11 +159,11 @@ sub assign_device_numbers {
#- first verify there's at least one primary dos partition, otherwise it
#- means it is a secondary disk and all will be false :(
#-
- my ($c, @others) = grep { isFat_or_NTFS($_) } @{$hd->{primary}{normal}};
+ my ($c, @others) = grep { isnormal_Fat_or_NTFS($_) } @{$hd->{primary}{normal}};
$i = ord 'C';
$c->{device_windobe} = chr($i++) if $c;
- $_->{device_windobe} = chr($i++) foreach grep { isFat_or_NTFS($_) } map { $_->{normal} } @{$hd->{extended}};
+ $_->{device_windobe} = chr($i++) foreach grep { isnormal_Fat_or_NTFS($_) } map { $_->{normal} } @{$hd->{extended}};
$_->{device_windobe} = chr($i++) foreach @others;
}
@@ -221,26 +239,52 @@ sub get_normal_parts_and_holes {
my $hole = { start => $current, size => $_->{start} - $current, %$minimal_hole };
put_in_hash($hole, hd2minimal_part($hd));
$hole, $_;
- } sort { $a->{start} <=> $b->{start} } grep { !isWholedisk($_) } get_normal_parts($hd);
+ } sort { $a->{start} <=> $b->{start} } get_normal_parts($hd);
push @l, { start => $start, size => min($last - $start, $hd->max_partition_size), %$minimal_hole } if $start < $hd->max_partition_start;
grep { !isEmpty($_) || $_->{size} >= $hd->cylinder_size } @l;
}
-sub _default_type {
+
+=item default_type($hd)
+
+Returns the default type of $hd ('gpt' or 'dos' depending on whether we're running under UEFI or
+whether the disk size is too big for a MBR partition table.
+
+=cut
+
+sub default_type {
my ($hd) = @_;
- arch() =~ /ia64/ ? 'gpt' :
- arch() eq "alpha" ? "bsd" :
- arch() =~ /^sparc/ ? "sun" :
- arch() eq "ppc" && detect_devices::get_mac_model() !~ /^IBM/ ? "mac" :
- $hd->{totalsectors} > 4 * 1024 * 1024 * 2048 ? 'lvm' : "dos"; #- default to LVM on full disk when >4TB
+ # default to GPT on UEFI systems and disks > 2TB
+ is_uefi() || $hd->{totalsectors} > 2 * 1024 * 1024 * 2048 ? 'gpt' : "dos";
}
+sub _get_disk_type {
+ my ($hd) = @_;
+ my $current = c::get_disk_type($hd->{file});
+ $current = 'dos' if $current eq 'msdos';
+ # When a disk contains a FS directly (no partition table) parted calls it loop
+ $current = '' if $current eq 'loop';
+ $hd->{current_pt_table_type} = $current;
+}
+
+=item initialize($hd, $o_type)
+
+Initialize a $hd object.
+
+Expect $hd->{file} to point to the raw device disk.
+
+The optional $o_type parameter enables to override the detected disk type (eg: 'dos', 'gpt', ...).
+
+=cut
+
sub initialize {
my ($hd, $o_type) = @_;
- my $type = $o_type || _default_type($hd);
+ my $current = _get_disk_type($hd);
+ my $type = $o_type || $current || default_type($hd);
+ $hd->{pt_table_type} = $type;
require "partition_table/$type.pm";
"partition_table::$type"->initialize($hd);
@@ -251,39 +295,58 @@ sub initialize {
partition_table::dos::compute_CHS($hd, $part);
$hd->{primary}{raw}[0] = $part;
}
+
+ will_tell_kernel($hd, 'init');
}
+=item read_primary($hd)
+
+Identify the partition table type of $hd and return a blessed $pt of type partition_table::TYPE.
+
+=cut
+
sub read_primary {
my ($hd) = @_;
- #- it can be safely considered that the first sector is used to probe the partition table
- #- but other sectors (typically for extended partition ones) have to match this type!
- my @parttype = (
- if_(arch() =~ /^ia64/, 'gpt'),
- # gpt must be tried before dos as it presents a fake compatibility mbr
- arch() =~ /^sparc/ ? ('sun', 'bsd') : ('gpt', 'lvm', 'dmcrypt', 'dos', 'bsd', 'sun', 'mac'),
- );
- foreach ('empty', @parttype, 'unknown') {
- /unknown/ and die "unknown partition table format on disk " . $hd->{file};
-
- # perl_checker: require partition_table::bsd
- # perl_checker: require partition_table::dos
- # perl_checker: require partition_table::empty
- # perl_checker: require partition_table::dmcrypt
- # perl_checker: require partition_table::lvm
- # perl_checker: require partition_table::gpt
- # perl_checker: require partition_table::mac
- # perl_checker: require partition_table::sun
- require "partition_table/$_.pm";
- bless $hd, "partition_table::$_";
- if ($hd->read_primary) {
- log::l("found a $_ partition table on $hd->{file} at sector 0");
- return 1;
- }
- }
+ #- The libparted ped_disk_probe() function opens the raw device for R/W, which causes a
+ #- change event to be sent for every partition when the raw device is closed again. So
+ #- be careful not to call this function more than once. (mga#15752)
+ _get_disk_type($hd);
+
+ my @parttype = (
+ # gpt must be tried before dos as it presents a fake compatibility mbr
+ 'gpt', 'lvm', 'dmcrypt', 'dos', 'bsd', 'sun', 'mac',
+ );
+ foreach ('empty', @parttype, 'unknown') {
+ /unknown/ and die "unknown partition table format on disk " . $hd->{file};
+
+ # perl_checker: require partition_table::bsd
+ # perl_checker: require partition_table::dos
+ # perl_checker: require partition_table::empty
+ # perl_checker: require partition_table::dmcrypt
+ # perl_checker: require partition_table::lvm
+ # perl_checker: require partition_table::gpt
+ # perl_checker: require partition_table::mac
+ # perl_checker: require partition_table::sun
+ require "partition_table/$_.pm";
+ bless $hd, "partition_table::$_";
+ if ($hd->read_primary) {
+ log::l("found a $_ partition table on $hd->{file} at sector 0");
+ #- Don't rely on the type returned by libparted - use what we have discovered.
+ $hd->{pt_table_type} = $_ if $_ ne 'empty';
+ return 1;
+ }
+ }
0;
}
+
+=item read($hd)
+
+Read the partition table of $hd.
+
+=cut
+
sub read {
my ($hd) = @_;
read_primary($hd) or return 0;
@@ -308,6 +371,14 @@ sub read {
1;
}
+=item read_extended($hd, $extended, $need_removing_empty_extended)
+
+Actually load the partition list from the blessed $pt of type partition_table::TYPE.
+
+It uses partition_table::TYPE::read_one()
+
+=cut
+
sub read_extended {
my ($hd, $extended, $need_removing_empty_extended) = @_;
@@ -348,12 +419,25 @@ sub read_extended {
}
}
+=item will_tell_kernel($hd, $action, $o_part, $o_delay)
+
+Rembmer the actions to perform on the partition table that the kernel will later be made aware of.
+
+=cut
+
sub will_tell_kernel {
my ($hd, $action, $o_part, $o_delay) = @_;
if ($action eq 'resize') {
will_tell_kernel($hd, del => $o_part);
will_tell_kernel($hd, add => $o_part);
+ } elsif ($action eq 'init') {
+ # We will tell the kernel to reread the partition table, so no need to remember
+ # previous changes.
+ delete $hd->{will_tell_kernel};
+ delete $hd->{will_tell_kerneldelay_add};
+ delete $hd->{will_tell_kerneldelay_del};
+ push @{$hd->{will_tell_kernel} ||= []}, [ $action, () ];
} else {
my $part_number;
if ($o_part) {
@@ -363,48 +447,61 @@ sub will_tell_kernel {
}
my @para =
- $action eq 'force_reboot' ? () :
$action eq 'add' ? ($part_number, $o_part->{start}, $o_part->{size}) :
$action eq 'del' ? $part_number :
internal_error("unknown action $action");
push @{$hd->{'will_tell_kernel' . ($o_delay || '')} ||= []}, [ $action, @para ];
}
- if (!$o_delay) {
- foreach my $delay ('delay_del', 'delay_add') {
- my $l = delete $hd->{"will_tell_kernel$delay"} or next;
- push @{$hd->{will_tell_kernel} ||= []}, @$l;
- }
- }
$hd->{isDirty} = 1;
}
+sub will_tell_kernel_delayed {
+ my ($hd) = @_;
+ foreach my $delay ('delay_del', 'delay_add') {
+ my $l = delete $hd->{"will_tell_kernel$delay"} or next;
+ push @{$hd->{will_tell_kernel} ||= []}, @$l;
+ }
+}
+
+=item tell_kernel($hd, $tell_kernel)
+
+Tell the kernel that the partition layout has changed.
+
+Take a list of [$action, $part_number, $o_start, $o_size].
+Action can be either 'add' or 'del'.
+Size is not needed when deleting a partition.
+
+eg: ['add', '3', '5000', '1000']
+
+=cut
+
sub tell_kernel {
my ($hd, $tell_kernel) = @_;
my $F = partition_table::raw::openit($hd);
- my $force_reboot = any { $_->[0] eq 'force_reboot' } @$tell_kernel;
+ my $force_reboot = $hd->{rebootNeeded} || any { $_->[0] eq 'init' } @$tell_kernel;
if (!$force_reboot) {
- # only keep the last action on the partition number
- # that way we do not del/add the same partition, and this helps udev :)
- foreach (reverse(uniq_ { $_->[1] } reverse @$tell_kernel)) {
+ foreach (@$tell_kernel) {
my ($action, $part_number, $o_start, $o_size) = @$_;
if ($action eq 'add') {
- $force_reboot ||= !c::add_partition(fileno $F, $part_number, $o_start, $o_size);
+ $force_reboot ||= !c::add_partition(fileno($F), $part_number, $o_start, $o_size);
} elsif ($action eq 'del') {
- $force_reboot ||= !c::del_partition(fileno $F, $part_number);
+ $force_reboot ||= !c::del_partition(fileno($F), $part_number);
}
log::l("tell kernel $action ($hd->{device} $part_number $o_start $o_size) force_reboot=$force_reboot rebootNeeded=$hd->{rebootNeeded}");
}
}
+
if ($force_reboot) {
+ # FIXME Handle LVM/dmcrypt/RAID
my @magic_parts = grep { $_->{isMounted} && $_->{real_mntpoint} } get_normal_parts($hd);
foreach (@magic_parts) {
syscall_('umount', $_->{real_mntpoint}) or log::l(N("error unmounting %s: %s", $_->{real_mntpoint}, $!));
}
- $hd->{rebootNeeded} = !ioctl($F, c::BLKRRPART(), 0);
+ $hd->{rebootNeeded} = !c::tell_kernel_to_reread_partition_table($hd->{file});
log::l("tell kernel force_reboot ($hd->{device}), rebootNeeded=$hd->{rebootNeeded}");
foreach (@magic_parts) {
@@ -413,7 +510,39 @@ sub tell_kernel {
}
}
-# write the partition table
+=item write($hd)
+
+Write the partition table
+
+The partition_table_XXX object is expected to provide three functions to
+support writing the partition table:
+
+=over
+
+=item * start_write()
+
+start_write() is called once at the beginning to initiate the write operation,
+
+=item * write()
+
+write() is then called one or more times (depending on whether there are any
+extended partitions),
+
+=item * end_write().
+
+and end_write() is called once to complete the write operation.
+
+=back
+
+For partition table types that support extended partitions (e.g. DOS),
+start_write() is expected to return a file handle to the raw device which is
+then passed to write() and end_write(), allowing the entire table to be written
+before closing the raw device. For partition table types that don't support
+extended partitions, this is optional, and the entire write operation can be
+performed in the single call to write().
+
+=cut
+
sub write {
my ($hd) = @_;
$hd->{isDirty} or return;
@@ -432,18 +561,18 @@ sub write {
#- it will never be writed back on partition table.
verifyParts($hd);
- $hd->write(0, $hd->{primary}{raw}, $hd->{primary}{info}) or die "writing of partition table failed";
-
+ my $handle = $hd->start_write();
+ $hd->write($handle, 0, $hd->{primary}{raw}, $hd->{primary}{info}) or die "writing of partition table failed";
#- should be fixed but a extended exist with no real extended partition, that blanks mbr!
- if (arch() !~ /^sparc/) {
foreach (@{$hd->{extended}}) {
# in case of extended partitions, the start sector must be local to the partition
$_->{normal}{local_start} = $_->{normal}{start} - $_->{start};
$_->{extended} and $_->{extended}{local_start} = $_->{extended}{start} - $hd->{primary}{extended}{start};
- $hd->write($_->{start}, $_->{raw}) or die "writing of partition table failed";
+ $hd->write($handle, $_->{start}, $_->{raw}) or die "writing of partition table failed";
}
- }
+ $hd->end_write($handle);
+ $hd->{current_pt_table_type} = $hd->{pt_table_type};
$hd->{isDirty} = 0;
if (my $tell_kernel = delete $hd->{will_tell_kernel}) {
@@ -451,7 +580,7 @@ sub write {
fs::dmraid::call_dmraid('-an');
fs::dmraid::call_dmraid('-ay');
} else {
- tell_kernel($hd, $tell_kernel);
+ tell_kernel($hd, $tell_kernel) if $hd->need_to_tell_kernel();
}
}
# get major/minor again after writing the partition table so that we got them for dynamic devices
@@ -467,8 +596,12 @@ sub active {
$hd->{isDirty} = 1;
}
+=item remove($hd, $part)
+
+Remove a normal partition from hard disk drive $hd
+
+=cut
-# remove a normal partition from hard drive hd
sub remove {
my ($hd, $part) = @_;
my $i;
@@ -489,7 +622,7 @@ sub remove {
my ($first, $second, $third) = map { $_->{normal} } @{$hd->{extended} || []};
if ($third && $first eq $part) {
- die "Can not handle removing hda5 when hda6 is not the second partition" if $second->{start} > $third->{start};
+ die "Cannot handle removing hda5 when hda6 is not the second partition" if $second->{start} > $third->{start};
}
#- otherwise search it in extended partitions
@@ -501,12 +634,19 @@ sub remove {
assign_device_numbers($hd);
will_tell_kernel($hd, del => $part);
+ #- schedule renumbering after deleting the partition
+ will_tell_kernel_delayed($hd);
return 1;
}
0;
}
-# create of partition at starting at `start', of size `size' and of type `pt_type' (nice comment, uh?)
+=item add_primary($hd, $part)
+
+Create of partition at starting at `start', of size `size' and of type `pt_type'
+
+=cut
+
sub add_primary {
my ($hd, $part) = @_;
@@ -520,15 +660,13 @@ sub add_primary {
}
sub add_extended {
- arch() =~ /^sparc|ppc/ and die N("Extended partition not supported on this platform");
-
my ($hd, $part, $extended_type) = @_;
$extended_type =~ s/Extended_?//;
my $e = $hd->{primary}{extended};
if ($e && !verifyInside($part, $e)) {
- #-die "sorry, can not add outside the main extended partition" unless $::unsafe;
+ #-die "sorry, cannot add outside the main extended partition" unless $::unsafe;
my $end = $e->{start} + $e->{size};
my $start = min($e->{start}, $part->{start});
$end = max($end, $part->{start} + $part->{size}) - $start;
@@ -538,7 +676,7 @@ sub add_extended {
local $e->{size} = $end - $start;
eval { verifyPrimary($hd->{primary}) };
$@ and die
-N("You have a hole in your partition table but I can not use it.
+N("You have a hole in your partition table but I cannot use it.
The only solution is to move your primary partitions to have the hole next to the extended partitions.");
}
}
@@ -571,17 +709,16 @@ The only solution is to move your primary partitions to have the hole next to th
sub add {
my ($hd, $part, $b_primaryOrExtended, $b_forceNoAdjust) = @_;
- get_normal_parts($hd) >= ($hd->{device} =~ /^rd/ ? 7 : $hd->{device} =~ /^(ida|cciss|ataraid)/ ? 15 : 63) and cdie "maximum number of partitions handled by linux reached";
+ get_normal_parts($hd) >= ($hd->{device} =~ /^rd/ ? 7 : $hd->{device} =~ /^(ida|cciss)/ ? 15 : 63) and cdie "maximum number of partitions handled by linux reached";
set_isFormatted($part, 0);
put_in_hash($part, hd2minimal_part($hd));
- $part->{start} ||= 1 if arch() !~ /^sparc/; #- starting at sector 0 is not allowed
+ $part->{start} ||= 1; #- starting at sector 0 is not allowed
adjustStartAndEnd($hd, $part) unless $b_forceNoAdjust;
my $nb_primaries = $hd->{device} =~ /^rd/ ? 3 : 1;
- if (arch() =~ /^sparc|ppc/ ||
- $b_primaryOrExtended eq 'Primary' ||
+ if ($b_primaryOrExtended eq 'Primary' ||
$b_primaryOrExtended !~ /Extended/ && @{$hd->{primary}{normal} || []} < $nb_primaries) {
eval { add_primary($hd, $part) };
goto success if !$@;
@@ -595,10 +732,17 @@ sub add {
}
success:
assign_device_numbers($hd);
+ #- schedule renumbering before adding the partition
+ will_tell_kernel_delayed($hd);
will_tell_kernel($hd, add => $part);
}
-# search for the next partition
+=item next($hd, $part)
+
+Search for the next partition
+
+=cut
+
sub next {
my ($hd, $part) = @_;
@@ -614,4 +758,8 @@ sub next_start {
$next ? $next->{start} : $hd->last_usable_sector;
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/partition_table/bsd.pm b/perl-install/partition_table/bsd.pm
index 9421eae17..ec2a2edf4 100644
--- a/perl-install/partition_table/bsd.pm
+++ b/perl-install/partition_table/bsd.pm
@@ -1,4 +1,4 @@
-package partition_table::bsd; # $Id$
+package partition_table::bsd;
use diagnostics;
use strict;
@@ -90,7 +90,7 @@ sub read_one {
# write the partition table (and extended ones)
# for each entry, it uses fields: start, size, pt_type, active
sub write($$$;$) {
- my ($hd, $sector, $pt, $info) = @_;
+ my ($hd, $_handle, $sector, $pt, $info) = @_;
#- handle testing for writing partition table on file only!
my $F;
@@ -144,7 +144,6 @@ sub initialize {
my ($class, $hd) = @_;
$hd->{primary} = { raw => [ ({}) x $nb_primary ], info => info($hd) };
bless $hd, $class;
-;
}
sub first_usable_sector { 2048 }
diff --git a/perl-install/partition_table/dmcrypt.pm b/perl-install/partition_table/dmcrypt.pm
index 3eae783c6..eb35eb41c 100644
--- a/perl-install/partition_table/dmcrypt.pm
+++ b/perl-install/partition_table/dmcrypt.pm
@@ -1,4 +1,4 @@
-package partition_table::dmcrypt; # $Id: $
+package partition_table::dmcrypt;
# dmcrypt on full disk
diff --git a/perl-install/partition_table/dos.pm b/perl-install/partition_table/dos.pm
index 2376fce11..aa020131a 100644
--- a/perl-install/partition_table/dos.pm
+++ b/perl-install/partition_table/dos.pm
@@ -1,4 +1,4 @@
-package partition_table::dos; # $Id$
+package partition_table::dos;
use diagnostics;
use strict;
@@ -6,12 +6,24 @@ use vars qw(@ISA);
@ISA = qw(partition_table::raw);
+use Time::HiRes qw(usleep);
use common;
use partition_table::raw;
use partition_table;
+use fs::proc_partitions;
use fs::type;
use c;
+=head1 SYNOPSYS
+
+Read/write MBR partition tables
+
+=head1 Functions
+
+=over
+
+=cut
+
my @fields = qw(active start_head start_sec start_cyl pt_type end_head end_sec end_cyl start size);
my $format = "C8 V2";
my $magic = "\x55\xAA";
@@ -29,7 +41,7 @@ sub geometry_to_string {
sub last_usable_sector {
my ($hd) = @_;
- #- do not use totalsectors, see gi/docs/Partition-ends-after-end-of-disk.txt for more
+ #- do not use totalsectors, see docs/Partition-ends-after-end-of-disk.txt for more
$hd->{geom}{sectors} * $hd->{geom}{heads} * $hd->{geom}{cylinders};
}
@@ -93,7 +105,12 @@ sub CHS2rawCHS {
[ $c & 0xff, $h, ($s + 1) | (($c >> 2) & 0xc0) ];
}
-# returns (cylinder, head, sector)
+=item sector2CHS($geom, $start)
+
+returns (cylinder, head, sector)
+
+=cut
+
sub sector2CHS {
my ($geom, $start) = @_;
my ($s, $h);
@@ -212,6 +229,7 @@ sub read_one {
sysread $F, $tmp, psizeof($format) or die "error while reading partition table in sector $sector";
my %h;
@h{@fields} = unpack $format, $tmp;
+ $h{pt_type} = 'BIOS_GRUB' if $h{pt_type} == 0 && $h{size} > 0;
fs::type::set_pt_type(\%h, $h{pt_type});
\%h;
} (1..$nb_primary);
@@ -220,13 +238,30 @@ sub read_one {
sysread $F, $tmp, length $magic or die "error reading magic number on disk $hd->{device}";
$tmp eq $magic or die "bad magic number on disk $hd->{device}";
+ if ($hd->{current_pt_table_type} ne "dos") {
+ # libparted may have ignored it because of overlapping partitions or other error
+ # while it is actually a partition table.
+ $hd->{fs_type_from_magic} and die "unpartitionned disk";
+ my $primary = partition_table::raw::pt_info_to_primary($hd, [ @pt ]);
+ foreach my $i (@{$primary->{normal}}) {
+ if ($i->{active} && $i->{active} != 0x80 ||
+ $hd->{totalsectors} && $i->{start} > $hd->{totalsectors}) {
+ die "Invalid DOS partition table";
+ }
+ }
+ }
+
[ @pt ];
}
-# write the partition table (and extended ones)
-# for each entry, it uses fields: start, size, pt_type, active
-sub write {
- my ($hd, $sector, $pt) = @_;
+=item start_write($hd)
+
+Prepare to write the partition table (and extended ones)
+
+=cut
+
+sub start_write {
+ my ($hd) = @_;
log::l("partition::dos::write $hd->{device}");
@@ -237,6 +272,27 @@ sub write {
open $F, ">$file" or die "error opening test file $file";
} else {
$F = partition_table::raw::openit($hd, 2) or die "error opening device $hd->{device} for writing";
+ if ($hd->{was_hybrid_iso}) {
+ log::l("partition::dos::start_write erasing hybrid iso9660 signature");
+ c::lseek_sector(fileno($F), 0, 0x8001) or return 0;
+ syswrite $F, "\0\0\0\0\0", 5 or return 0;
+ $hd->{was_hybrid_iso} = 0;
+ }
+ }
+ $F;
+}
+
+=item start_write($hd, $F, $sector, $pt)
+
+Write the partition table (and extended ones).
+For each entry, it uses fields: start, size, pt_type, active
+
+=cut
+
+sub write {
+ my ($hd, $F, $sector, $pt) = @_;
+
+ if (!$::testing) {
c::lseek_sector(fileno($F), $sector, $offset) or return 0;
}
@@ -251,10 +307,51 @@ sub write {
1;
}
+sub end_write {
+ my ($hd, $F) = @_;
+ close $F;
+}
+
+sub need_to_tell_kernel {
+ my ($hd) = @_;
+ # Whenever udevd receives a change event for a raw disk device it is watching, it asks the kernel to
+ # rescan the partition table on that device by calling the BLKRRPART ioctl. This is only successful
+ # if none of the partitions on that device are currently mounted. So if any partitions are mounted,
+ # we need to tell the kernel what has changed ourselves.
+ # The udev/rules.d/60-block.rules file causes the raw disk devices to be watched by udev. This file is
+ # not present in the cut-down system used to run the classic installer, so we always need to tell the
+ # kernel in that case.
+ # diskdrake will not let the user delete an individual partition that is mounted, but will let the
+ # user clear all partitions. So initialize() records if any partitions were mounted and we take note
+ # of that here.
+ return 1 if ! -e '/usr/lib/udev/rules.d/60-block.rules' || delete $hd->{hadMountedPartitions} || any { $_->{isMounted} } partition_table::get_normal_parts($hd);
+
+ # No further actions must be performed until the kernel has been informed of the changes. There is
+ # no easy way to check that udevd has received the uevent and called the BLKRRPART ioctl, so do it
+ # the hard way.
+ my $tries = 0;
+ do {
+ usleep(100000);
+ log::l("checking that udevd has informed the kernel of partition table changes");
+ eval { fs::proc_partitions::compare($hd) };
+ return 0 if !$@;
+ $tries++;
+ } while $tries < 5;
+
+ # We don't expect to get here, but fail safe if so.
+ log::l("udevd failed to inform kernel of partition table changes");
+ $hd->{rebootNeeded} = 1;
+ 1;
+}
+
sub empty_raw { { raw => [ ({}) x $nb_primary ] } }
sub initialize {
my ($class, $hd) = @_;
+ # Remember whether any existing partitions are mounted, for use by need_to_tell_kernel().
+ $hd->{hadMountedPartitions} = 1 if any { $_->{isMounted} } partition_table::get_normal_parts($hd);
+ # Remember whether this was a hybrid ISO so we can wipe the iso9660 signature.
+ $hd->{was_hybrid_iso} = 1 if $hd->{primary}{is_hybrid_iso};
$hd->{primary} = empty_raw();
bless $hd, $class;
}
diff --git a/perl-install/partition_table/empty.pm b/perl-install/partition_table/empty.pm
index fe4550f47..fe4ad4317 100644
--- a/perl-install/partition_table/empty.pm
+++ b/perl-install/partition_table/empty.pm
@@ -1,4 +1,4 @@
-package partition_table::empty; # $Id$
+package partition_table::empty;
#- this is a mainly dummy partition table. If we find it's empty, we just call -
#- ->clear which will take care of bless'ing us to the partition table type best
diff --git a/perl-install/partition_table/gpt.pm b/perl-install/partition_table/gpt.pm
index 10eab253b..af5509f27 100644
--- a/perl-install/partition_table/gpt.pm
+++ b/perl-install/partition_table/gpt.pm
@@ -1,4 +1,4 @@
-package partition_table::gpt; # $Id$
+package partition_table::gpt;
use diagnostics;
use strict;
@@ -6,73 +6,156 @@ use vars qw(@ISA);
@ISA = qw(partition_table::raw);
+use fs::type;
use partition_table::raw;
use c;
-#sub use_pt_type { 1 }
+=head1 SYNOPSYS
+
+Read/write GUID partition tables (GPT)
+
+See https://en.wikipedia.org/wiki/GUID_Partition_Table#Partition_type_GUIDs for a list of exitings GUIDs
+
+=head1 Functions
+
+=over
+
+=cut
+my $nb_primary = 128;
+
+
+sub first_usable_sector { 34 }
+
+sub last_usable_sector {
+ my ($hd) = @_;
+ #- do not use totalsectors because backup GPT is at end
+ $hd->{totalsectors} - 33;
+}
+
+my %parted_mapping = (
+ 'linux-swap(v1)' => 'swap',
+ 'ntfs' => 'ntfs-3g',
+ 'fat16' => 'vfat',
+ 'fat32' => 'vfat',
+ );
+my %rev_parted_mapping = reverse %parted_mapping;
+# prefer 'fat32' over 'fat16':
+$rev_parted_mapping{vfat} = 'fat32';
sub read_one {
- my ($hd, $sector) = @_;
- my $info;
-
- c::get_disk_type($hd->{file}) eq "gpt" or die "not a GPT disk";
- my @pt = map {
- my %p;
- print $_;
- if (/^([^ ]*) ([^ ]*) ([^ ]*) (.*) \((\d*),(\d*),(\d*)\)$/) {
- $p{part_number} = $1;
- $p{real_device} = $2;
- $p{fs_type} = $3;
- $p{pt_type} = 0xba;
- $p{start} = $5;
- $p{size} = $7;
+ my ($hd, $_sector) = @_;
+
+ $hd->{current_pt_table_type} eq "gpt" or die "$hd->{device} not a GPT disk ($hd->{file})";
+
+ my @pt;
+ foreach (c::get_disk_partitions($hd->{file})) {
+ # compatibility with MBR partitions tables:
+ $_->{pt_type} = 0x82 if $_->{fs_type} eq 'swap';
+ $_->{pt_type} = 0x0b if $_->{fs_type} eq 'vfat';
+ $_->{pt_type} = 0x83 if $_->{fs_type} =~ /^ext/;
+
+ # fix detecting ESP (special case are they're detected through pt_type):
+ if ($_->{flag} eq 'ESP') {
+ $_->{pt_type} = 0xef;
+ } elsif ($_->{flag} eq 'BIOS_GRUB') {
+ $_->{fs_type} = $_->{flag}; # hack to prevent it to land in hd->{raw}
+ $_->{pt_type} = $_->{flag}; # hack...
+ } elsif ($_->{flag} eq 'LVM') {
+ $_->{pt_type} = 0x8e;
+ } elsif ($_->{flag} eq 'RAID') {
+ $_->{pt_type} = 0xfd;
+ } elsif ($_->{flag} eq 'RECOVERY') {
+ $_->{pt_type} = 0x12;
}
- \%p;
- } c::get_disk_partitions($hd->{file});
+ $_->{fs_type} = $parted_mapping{$_->{fs_type}} if $parted_mapping{$_->{fs_type}};
- use Data::Dumper;
- print Dumper(@pt);
+ @pt[$_->{part_number}-1] = $_;
+ }
- [ @pt ], $info;
+ for (my $part_number = 1; $part_number < $nb_primary; $part_number++) {
+ next if exists($pt[$part_number-1]);
+ $pt[$part_number-1] = { part_number => $part_number };
+ }
+
+ \@pt;
}
sub write {
- my ($hd, $sector, $pt, $info) = @_;
+ my ($hd, $_handle, $_sector, $pt, $_info) = @_;
+
+ my $ped_disk;
+ my $partitions_killed;
# Initialize the disk if current partition table is not gpt
- if (c::get_disk_type($hd->{file}) ne "gpt") {
- c::set_disk_type($hd->{file}, "gpt");
+ if ($hd->{current_pt_table_type} ne "gpt") {
+ $ped_disk = c::disk_open($hd->{file}, "gpt") or die "failed to create new partition table on $hd->{file}";
+ $partitions_killed = 1;
+ } else {
+ $ped_disk = c::disk_open($hd->{file}) or die "failed to open partition table on $hd->{file}";
}
foreach (@{$hd->{will_tell_kernel}}) {
my ($action, $part_number, $o_start, $o_size) = @$_;
- my $part;
- print "($action, $part_number, $o_start, $o_size)\n";
+ my ($part) = grep { $_->{start} == $o_start && $_->{size} == $o_size } @$pt;
+ log::l("GPT partitioning: ($action, $part_number, $o_start, $o_size)");
if ($action eq 'add') {
- c::disk_add_partition($hd->{file}, $o_start, $o_size, $part->{fs_type}) or die "failed to add partition";
- } elsif ($action eq 'del') {
- c::disk_del_partition($hd->{file}, $part_number) or die "failed to del partition";
+ local $part->{fs_type} = $rev_parted_mapping{$part->{fs_type}} if $rev_parted_mapping{$part->{fs_type}};
+ c::disk_add_partition($ped_disk, $o_start, $o_size, $part->{fs_type}) or die "failed to add partition #$part_number on $hd->{file}";
+ my $flag;
+ if (isESP($part)) {
+ $flag = 'ESP';
+ } elsif (isBIOS_GRUB($part)) {
+ $flag = 'BIOS_GRUB';
+ } elsif (isRawLVM($part)) {
+ $flag = 'LVM';
+ } elsif (isRawRAID($part)) {
+ $flag = 'RAID';
+ }
+ if ($flag) {
+ c::set_partition_flag($ped_disk, $part_number, $flag)
+ or die "failed to set type '$flag' for $part->{file} on $part->{mntpoint}";
+ }
+ } elsif ($action eq 'del' && !$partitions_killed) {
+ c::disk_del_partition($ped_disk, $part_number) or die "failed to del partition #$part_number on $hd->{file}";
+ } elsif ($action eq 'init' && !$partitions_killed) {
+ c::disk_delete_all($ped_disk) or die "failed to delete all partitions on $hd->{file}";
}
}
- common::sync();
- 1;
+
+ # Commit changes to the disk and inform the kernel
+ my $commit_level = c::disk_commit($ped_disk);
+ # Updating the kernel partition table will fail if any of the deleted partitions were mounted
+ $hd->{rebootNeeded} = 1 if $commit_level < 2;
+ $commit_level;
+}
+
+=item need_to_tell_kernel($hd)
+
+Hint partition_table::write() that telling the kernel to reread the
+partition_table is not needed if we already succeeded in that
+
+=cut
+
+sub need_to_tell_kernel {
+ my ($hd) = @_;
+ # If we failed, try again (partion_table::tell_kernel() will unmount some partitions first)
+ $hd->{rebootNeeded};
}
sub initialize {
my ($class, $hd) = @_;
- $hd->{primary} = { raw => [] };
+ # part_number starts at 1
+ my @raw = map { +{ part_number => $_ + 1 } } 0..$nb_primary-2;
+ $hd->{primary} = { raw => \@raw };
bless $hd, $class;
}
sub can_add { &can_raw_add }
-sub can_raw_add { 1 }
-sub raw_add {
- my ($hd, $raw, $part) = @_;
- $hd->can_raw_add or die "raw_add: partition table already full";
- push @$raw, $part;
-}
-
sub adjustStart {}
sub adjustEnd {}
+=back
+
+=cut
+
1;
diff --git a/perl-install/partition_table/lvm.pm b/perl-install/partition_table/lvm.pm
index 8a28a4c2a..920507fa5 100644
--- a/perl-install/partition_table/lvm.pm
+++ b/perl-install/partition_table/lvm.pm
@@ -1,4 +1,4 @@
-package partition_table::lvm; # $Id: $
+package partition_table::lvm;
# LVM on full disk
diff --git a/perl-install/partition_table/mac.pm b/perl-install/partition_table/mac.pm
index 2922bc7a3..78e5469cd 100644
--- a/perl-install/partition_table/mac.pm
+++ b/perl-install/partition_table/mac.pm
@@ -1,4 +1,4 @@
-package partition_table::mac; # $Id$
+package partition_table::mac;
use diagnostics;
#use strict; - fixed other PPC code to comply, but program bails on empty partition table - sbenedict
@@ -193,7 +193,7 @@ sub read_one {
}
sub write($$$;$) {
- my ($hd, $sector, $pt, $info) = @_;
+ my ($hd, $_handle, $sector, $pt, $info) = @_;
#- handle testing for writing partition table on file only!
my $F;
diff --git a/perl-install/partition_table/raw.pm b/perl-install/partition_table/raw.pm
index 1346eeac4..453a19c6c 100644
--- a/perl-install/partition_table/raw.pm
+++ b/perl-install/partition_table/raw.pm
@@ -1,4 +1,4 @@
-package partition_table::raw; # $Id$
+package partition_table::raw;
use diagnostics;
use strict;
@@ -11,16 +11,12 @@ use log;
use c;
my @MBR_signatures = (
-if_(arch() =~ /ppc/,
- (map { [ 'yaboot', 0, "PM", 0x200 * $_ + 0x10, "bootstrap\0" ] } 0 .. 61), #- "PM" is a Partition Map
- [ 'yaboot', 0x400, "BD", 0x424, "\011bootstrap" ], #- "BD" is a HFS filesystem
-),
[ 'empty', 0, "\0\0\0\0" ],
[ 'grub', 0, "\xEBG", 0x17d, "stage1 \0" ],
[ 'grub', 0, "\xEBH", 0x17e, "stage1 \0" ],
[ 'grub', 0, "\xEBH", 0x18a, "stage1 \0" ],
sub { my ($F) = @_;
- #- standard grub has no good magic (Mandriva's grub is patched to have "GRUB" at offset 6)
+ #- standard grub has no good magic (Mageia's grub is patched to have "GRUB" at offset 6)
#- so scanning a range of possible places where grub can have its string
#- 0x176 found on Conectiva 10
my ($min, $max, $magic) = (0x176, 0x181, "GRUB \0");
@@ -29,6 +25,14 @@ if_(arch() =~ /ppc/,
substr($tmp, 0, 2) eq "\xEBH" or return;
index($tmp, $magic, $min) >= 0 && "grub";
},
+ sub { my ($F) = @_;
+ #- similar to grub-legacy, grub2 doesn't seem to have good magic
+ #- so scanning a range of possible places where grub can have its string
+ my ($min, $max, $magic) = (0x176, 0x188, "GRUB");
+ my $tmp;
+ sysseek($F, 0, 0) && sysread($F, $tmp, $max + length($magic)) or return;
+ index($tmp, $magic, $min) >= 0 && "grub2";
+ },
[ 'lilo', 0x2, "LILO" ],
[ 'lilo', 0x6, "LILO" ],
[ 'lilo', 0x6 + 0x40, "LILO" ], #- when relocated in lilo's bsect_update(), variable "space" on paragraph boundary gives 0x40
@@ -73,20 +77,9 @@ sub last_usable_sector {
sub max_partition_start { 1e99 }
sub max_partition_size { 1e99 }
-#- default method for starting a partition, only head size or twice
-#- is allowed for starting a partition after a cylinder boundarie.
-sub adjustStart($$) {
- my ($hd, $part) = @_;
- my $end = $part->{start} + $part->{size};
+#- default method for starting a partition
+sub adjustStart($$) {}
- if (cylinder_size($hd)) {
- $part->{start} = round_up($part->{start},
- $part->{start} % cylinder_size($hd) < 2 * $hd->{geom}{sectors} ?
- $hd->{geom}{sectors} : cylinder_size($hd));
- $part->{size} = $end - $part->{start};
- $part->{size} > 0 or die "adjustStart get a too small partition to handle correctly";
- }
-}
#- adjusting end to match a cylinder boundary, two methods are used and must
#- match at the end, else something is wrong and nothing will be done on
#- partition table.
@@ -124,7 +117,19 @@ sub get_geometries {
my (@hds) = @_;
@hds = grep {
- if (my $h = get_geometry($_->{file})) {
+ if ($_->{bus} =~ /dmraid/) {
+ sysopen(my $F, $_->{file}, 0);
+ my $total = c::total_sectors(fileno $F);
+ my %geom;
+ $geom{heads} = 255;
+ $geom{sectors} = 63;
+ $geom{start} = 1;
+ compute_nb_cylinders(\%geom, $total);
+ $geom{totalcylinders} = $geom{cylinders};
+ log::l("Fake geometry on " . $_->{file} . ": heads=$geom{heads} sectors=$geom{sectors} cylinders=$geom{cylinders} start=$geom{start}");
+ add2hash_($_, { totalsectors => $total, geom => \%geom });
+ 1;
+ } elsif (my $h = get_geometry($_->{file})) {
add2hash_($_, $h);
1;
} else {
@@ -221,23 +226,25 @@ sub raw_add {
sub zero_MBR { &partition_table::initialize } #- deprecated
-sub clear_existing {
- my ($hd) = @_;
- my @parts = (partition_table::get_normal_parts($hd), if_($hd->{primary}{extended}, $hd->{primary}{extended}));
- partition_table::will_tell_kernel($hd, del => $_) foreach @parts;
-}
-
#- deprecated
sub zero_MBR_and_dirty {
my ($hd) = @_;
fsedit::partition_table_clear_and_initialize([], $hd);
}
+#- by default, we assume the kernel doesn't automatically reread partition table:
+sub need_to_tell_kernel {
+ my ($_hd) = @_;
+ 1;
+}
+
sub read_primary {
my ($hd) = @_;
- my ($pt, $info) = eval { $hd->read_one(0) } or return;
+ my ($pt, $info) = eval { $hd->read_one(0) };
+ $pt or return;
my $primary = partition_table::raw::pt_info_to_primary($hd, $pt, $info);
+ $primary->{is_hybrid_iso} = $hd->{current_pt_table_type} eq 'dos' && $hd->{fs_type_from_magic} eq 'iso9660';
$hd->{primary} = $primary;
undef $hd->{extended};
partition_table::verifyPrimary($primary);
@@ -261,7 +268,7 @@ sub pt_info_to_primary {
#- try writing what we've just read, yells if it fails
#- testing on last sector of head #0 (unused in 99% cases)
#-
-#- return false if the device can not be written to (especially for Smartmedia)
+#- return false if the device cannot be written to (especially for Smartmedia)
sub test_for_bad_drives {
my ($hd) = @_;
@@ -270,23 +277,33 @@ sub test_for_bad_drives {
sub error { die "$_[0] error: $_[1]" }
- my $F = openit($hd, $::testing ? 0 : 2) or error(openit($hd) ? 'write' : 'read', "can not open device");
+ my $F = openit($hd, $::testing ? 0 : 2) or error(openit($hd) ? 'write' : 'read', "cannot open device");
my $seek = sub {
c::lseek_sector(fileno($F), $sector, 0) or error('read', "seeking to sector $sector failed");
};
my $tmp;
- &$seek; sysread $F, $tmp, $SECTORSIZE or error('read', "can not even read ($!)");
+ &$seek; sysread $F, $tmp, $SECTORSIZE or error('read', "cannot even read ($!)");
return if $hd->{readonly} || $::testing;
- &$seek; syswrite $F, $tmp or error('write', "can not even write ($!)");
+ &$seek; syswrite $F, $tmp or error('write', "cannot even write ($!)");
my $tmp2;
- &$seek; sysread $F, $tmp2, $SECTORSIZE or die "test_for_bad_drives: can not even read again ($!)";
+ &$seek; sysread $F, $tmp2, $SECTORSIZE or die "test_for_bad_drives: cannot even read again ($!)";
$tmp eq $tmp2 or die
-N("Something bad is happening on your drive.
+N("Something bad is happening on your hard disk drive.
A test to check the integrity of data has failed.
It means writing anything on the disk will end up with random, corrupted data.");
}
+sub start_write {
+ my ($_hd) = @_;
+ 1;
+}
+
+sub end_write {
+ my ($_hd, $_handle) = @_;
+ 1;
+}
+
1;
diff --git a/perl-install/partition_table/readonly.pm b/perl-install/partition_table/readonly.pm
index f36b60e4a..ee3624f88 100644
--- a/perl-install/partition_table/readonly.pm
+++ b/perl-install/partition_table/readonly.pm
@@ -1,4 +1,4 @@
-package partition_table::readonly; # $Id: $
+package partition_table::readonly;
use diagnostics;
use strict;
diff --git a/perl-install/partition_table/sun.pm b/perl-install/partition_table/sun.pm
index 1532c04a9..e665d0168 100644
--- a/perl-install/partition_table/sun.pm
+++ b/perl-install/partition_table/sun.pm
@@ -1,4 +1,4 @@
-package partition_table::sun; # $Id$
+package partition_table::sun;
use diagnostics;
use strict;
@@ -119,7 +119,7 @@ sub read_one {
# write the partition table (and extended ones)
# for each entry, it uses fields: start, size, pt_type, active
sub write($$$;$) {
- my ($hd, $sector, $pt, $info) = @_;
+ my ($hd, $_handle, $sector, $pt, $info) = @_;
# my ($csize, $wdsize) = (0, 0);
#- handle testing for writing partition table on file only!
diff --git a/perl-install/pixmaps/X.png b/perl-install/pixmaps/X.png
index 251e6d29a..d5cbd5fc4 100644
--- a/perl-install/pixmaps/X.png
+++ b/perl-install/pixmaps/X.png
Binary files differ
diff --git a/perl-install/pixmaps/advanced_expander.png b/perl-install/pixmaps/advanced_expander.png
index bfda735cd..1ad51f194 100644
--- a/perl-install/pixmaps/advanced_expander.png
+++ b/perl-install/pixmaps/advanced_expander.png
Binary files differ
diff --git a/perl-install/pixmaps/banner-background.png b/perl-install/pixmaps/banner-background.png
index 31fb423a3..220b5d4fa 100644
--- a/perl-install/pixmaps/banner-background.png
+++ b/perl-install/pixmaps/banner-background.png
Binary files differ
diff --git a/perl-install/pixmaps/banner-blue-part.png b/perl-install/pixmaps/banner-blue-part.png
index 7c9749ae6..5ed8fa658 100644
--- a/perl-install/pixmaps/banner-blue-part.png
+++ b/perl-install/pixmaps/banner-blue-part.png
Binary files differ
diff --git a/perl-install/pixmaps/cups_config.png b/perl-install/pixmaps/cups_config.png
index a8409abd0..6f04695b5 100644
--- a/perl-install/pixmaps/cups_config.png
+++ b/perl-install/pixmaps/cups_config.png
Binary files differ
diff --git a/perl-install/pixmaps/default.png b/perl-install/pixmaps/default.png
index c96abec09..97e63ff9d 100644
--- a/perl-install/pixmaps/default.png
+++ b/perl-install/pixmaps/default.png
Binary files differ
diff --git a/perl-install/pixmaps/eth_card_mini.png b/perl-install/pixmaps/eth_card_mini.png
index 44f516168..75d6ab93c 100644
--- a/perl-install/pixmaps/eth_card_mini.png
+++ b/perl-install/pixmaps/eth_card_mini.png
Binary files differ
diff --git a/perl-install/pixmaps/help.png b/perl-install/pixmaps/help.png
index aee3f0556..d66d2c289 100644
--- a/perl-install/pixmaps/help.png
+++ b/perl-install/pixmaps/help.png
Binary files differ
diff --git a/perl-install/pixmaps/nosplash_thumb.png b/perl-install/pixmaps/nosplash_thumb.png
index 9fb25693d..cddf4037b 100644
--- a/perl-install/pixmaps/nosplash_thumb.png
+++ b/perl-install/pixmaps/nosplash_thumb.png
Binary files differ
diff --git a/perl-install/pixmaps/pause-16.png b/perl-install/pixmaps/pause-16.png
index 27be61c80..6ce6fd720 100644
--- a/perl-install/pixmaps/pause-16.png
+++ b/perl-install/pixmaps/pause-16.png
Binary files differ
diff --git a/perl-install/pixmaps/pause-24.png b/perl-install/pixmaps/pause-24.png
index ca8ce431d..55297df14 100644
--- a/perl-install/pixmaps/pause-24.png
+++ b/perl-install/pixmaps/pause-24.png
Binary files differ
diff --git a/perl-install/pixmaps/play-16.png b/perl-install/pixmaps/play-16.png
index 1997039d9..18643f8f9 100644
--- a/perl-install/pixmaps/play-16.png
+++ b/perl-install/pixmaps/play-16.png
Binary files differ
diff --git a/perl-install/pixmaps/play-24.png b/perl-install/pixmaps/play-24.png
index 32ba02af5..7ad4bf954 100644
--- a/perl-install/pixmaps/play-24.png
+++ b/perl-install/pixmaps/play-24.png
Binary files differ
diff --git a/perl-install/pixmaps/quit.png b/perl-install/pixmaps/quit.png
index 7e4e1e1d5..322c187e9 100644
--- a/perl-install/pixmaps/quit.png
+++ b/perl-install/pixmaps/quit.png
Binary files differ
diff --git a/perl-install/pixmaps/redhat-config-users.png b/perl-install/pixmaps/redhat-config-users.png
index 09d075da5..410d94524 100644
--- a/perl-install/pixmaps/redhat-config-users.png
+++ b/perl-install/pixmaps/redhat-config-users.png
Binary files differ
diff --git a/perl-install/pixmaps/refresh.png b/perl-install/pixmaps/refresh.png
index d34b58088..dc4b28b21 100644
--- a/perl-install/pixmaps/refresh.png
+++ b/perl-install/pixmaps/refresh.png
Binary files differ
diff --git a/perl-install/pixmaps/right-white-background_left_part-1.png b/perl-install/pixmaps/right-white-background_left_part-1.png
index a0d9be973..90a59a94f 100644
--- a/perl-install/pixmaps/right-white-background_left_part-1.png
+++ b/perl-install/pixmaps/right-white-background_left_part-1.png
Binary files differ
diff --git a/perl-install/pixmaps/right-white-background_left_part-2.png b/perl-install/pixmaps/right-white-background_left_part-2.png
index 4a5025f86..a66914b0b 100644
--- a/perl-install/pixmaps/right-white-background_left_part-2.png
+++ b/perl-install/pixmaps/right-white-background_left_part-2.png
Binary files differ
diff --git a/perl-install/pixmaps/right-white-background_left_part-3.png b/perl-install/pixmaps/right-white-background_left_part-3.png
index 39b93c29c..35fa6c553 100644
--- a/perl-install/pixmaps/right-white-background_left_part-3.png
+++ b/perl-install/pixmaps/right-white-background_left_part-3.png
Binary files differ
diff --git a/perl-install/pixmaps/right-white-background_right_part_768.png b/perl-install/pixmaps/right-white-background_right_part_768.png
index 1252d27ce..a62e7993e 100644
--- a/perl-install/pixmaps/right-white-background_right_part_768.png
+++ b/perl-install/pixmaps/right-white-background_right_part_768.png
Binary files differ
diff --git a/perl-install/pixmaps/rollover.png b/perl-install/pixmaps/rollover.png
index 0a576193d..6eabc7298 100644
--- a/perl-install/pixmaps/rollover.png
+++ b/perl-install/pixmaps/rollover.png
Binary files differ
diff --git a/perl-install/pixmaps/security-low.png b/perl-install/pixmaps/security-low.png
index 9bf47d77e..0055fa701 100644
--- a/perl-install/pixmaps/security-low.png
+++ b/perl-install/pixmaps/security-low.png
Binary files differ
diff --git a/perl-install/pixmaps/security-medium.png b/perl-install/pixmaps/security-medium.png
index 22cfd8d0c..8cea6ce94 100644
--- a/perl-install/pixmaps/security-medium.png
+++ b/perl-install/pixmaps/security-medium.png
Binary files differ
diff --git a/perl-install/pixmaps/security-strong.png b/perl-install/pixmaps/security-strong.png
index 4a46bd93e..a292bf656 100644
--- a/perl-install/pixmaps/security-strong.png
+++ b/perl-install/pixmaps/security-strong.png
Binary files differ
diff --git a/perl-install/pixmaps/selected.png b/perl-install/pixmaps/selected.png
index eff445e33..7e1ee1a51 100644
--- a/perl-install/pixmaps/selected.png
+++ b/perl-install/pixmaps/selected.png
Binary files differ
diff --git a/perl-install/pixmaps/small-logo.png b/perl-install/pixmaps/small-logo.png
new file mode 100644
index 000000000..21c79a298
--- /dev/null
+++ b/perl-install/pixmaps/small-logo.png
Binary files differ
diff --git a/perl-install/pixmaps/steps_done.png b/perl-install/pixmaps/steps_done.png
index 82b525eb1..9b0aee18e 100644
--- a/perl-install/pixmaps/steps_done.png
+++ b/perl-install/pixmaps/steps_done.png
Binary files differ
diff --git a/perl-install/pixmaps/steps_off.png b/perl-install/pixmaps/steps_off.png
index e731a96d1..2e62299fa 100644
--- a/perl-install/pixmaps/steps_off.png
+++ b/perl-install/pixmaps/steps_off.png
Binary files differ
diff --git a/perl-install/pixmaps/steps_on.png b/perl-install/pixmaps/steps_on.png
index ebeb5f6ea..d7422b867 100644
--- a/perl-install/pixmaps/steps_on.png
+++ b/perl-install/pixmaps/steps_on.png
Binary files differ
diff --git a/perl-install/pixmaps/stop-16.png b/perl-install/pixmaps/stop-16.png
index 58066f74c..eaa489170 100644
--- a/perl-install/pixmaps/stop-16.png
+++ b/perl-install/pixmaps/stop-16.png
Binary files differ
diff --git a/perl-install/pixmaps/stop-24.png b/perl-install/pixmaps/stop-24.png
index 0437f31b1..90aabbc6a 100644
--- a/perl-install/pixmaps/stop-24.png
+++ b/perl-install/pixmaps/stop-24.png
Binary files differ
diff --git a/perl-install/pixmaps/unselected.png b/perl-install/pixmaps/unselected.png
index 689a4eb01..7b4d6be1d 100644
--- a/perl-install/pixmaps/unselected.png
+++ b/perl-install/pixmaps/unselected.png
Binary files differ
diff --git a/perl-install/pixmaps/warning.png b/perl-install/pixmaps/warning.png
index c2da47819..f8ff03deb 100644
--- a/perl-install/pixmaps/warning.png
+++ b/perl-install/pixmaps/warning.png
Binary files differ
diff --git a/perl-install/pkgs.pm b/perl-install/pkgs.pm
index 057fcec78..6bcdbab7f 100644
--- a/perl-install/pkgs.pm
+++ b/perl-install/pkgs.pm
@@ -1,7 +1,7 @@
-package pkgs; # $Id$
+package pkgs;
use strict;
-
+use lib qw(/usr/lib/libDrakX); # for perl_checker
use common;
use run_program;
use detect_devices;
@@ -36,7 +36,7 @@ sub read_rpmsrate_raw {
my ($t, $flag, @l2);
while ($data =~
/^((
- [1-5]
+ [1-6]
|
(?: (?: !\s*)? [0-9A-Z_]+(?:".*?")?)
(?: \s*\|\|\s* (?: !\s*)? [0-9A-Z_]+(?:".*?")?)*
@@ -74,7 +74,7 @@ sub read_rpmsrate_raw {
} elsif (@diff1 == 1 && @diff2 == 1) {
@new_flags = (@common, join('||', $diff1[0], $diff2[0]));
} else {
- log::l("$line_nb: can not handle complicate flags for packages appearing twice ($name)");
+ log::l("$line_nb: cannot handle complicate flags for packages appearing twice ($name)");
$fatal_error++;
}
log::l("$line_nb: package $name appearing twice with different rates ($rate != " . $rates{$name} . ")") if $rate != $rates{$name};
@@ -92,7 +92,7 @@ sub read_rpmsrate_raw {
}
sub read_rpmsrate {
- my ($packages, $rpmsrate_flags_chosen, $file, $match_all_hardware) = @_;
+ my ($packages, $rpmsrate_flags_chosen, $file, $match_all_hardware, $o_match_only_hardware) = @_;
my ($rates, $flags, $need_to_copy) = read_rpmsrate_raw($file);
@@ -109,7 +109,7 @@ sub read_rpmsrate {
$p = install::pkgs::packageByName($packages, $_) or next;
if (my @l = map { /locales-(.*)/ ? qq(LOCALES"$1") : () } $p->requires_nosense) {
if (@l > 1) {
- log::l("ERROR: package $_ is requiring many locales") if $_ ne 'lsb';
+ log::l("ERROR: package $_ is requiring many locales") if !member($_, qw(lsb libreoffice-langpack-br));
} else {
push @flags, @l;
}
@@ -118,6 +118,7 @@ sub read_rpmsrate {
@flags = map {
my ($user_flags, $known_flags) = partition { /^!?CAT_/ } split('\|\|', $_);
+ my $bits_ok;
my $ok = find {
my $inv = s/^!//;
return 0 if $::isStandalone && $inv;
@@ -125,6 +126,12 @@ sub read_rpmsrate {
$match_all_hardware ? 1 : ($inv xor find { $_->{description} =~ /$p/i } @probeall);
} elsif (($p) = /^DRIVER"(.*)"/) {
$match_all_hardware ? 1 : ($inv xor find { $_->{driver} =~ /$p/i } @probeall);
+ } elsif (/^TYPE"64bit"/) {
+ #- When searching for hardware support packages, we need to filter out packages
+ #- that don't match our architecture without signalling a positive match for
+ #- packages that do. So we record the result of the test here for use later.
+ $bits_ok ||= ($inv xor $TYPEs->{'64bit'});
+ $o_match_only_hardware ? 0 : $bits_ok;
} elsif (($p) = /^TYPE"(.*)"/) {
$match_all_hardware ? 1 : ($inv xor $TYPEs->{$p});
} elsif (($p) = /^HW_CAT"(.*)"/) {
@@ -133,7 +140,7 @@ sub read_rpmsrate {
$inv xor $rpmsrate_flags_chosen->{$_};
}
} @$known_flags;
- $ok ? 'TRUE' : @$user_flags ? join('||', @$user_flags) : 'FALSE';
+ $ok ? 'TRUE' : @$user_flags ? join('||', @$user_flags) : $bits_ok ? () : 'FALSE';
} @flags;
@flags = member('FALSE', @flags) ? 'FALSE' : @flags;
@@ -150,8 +157,8 @@ sub read_rpmsrate {
sub simple_read_rpmsrate {
- my ($o_match_all_hardware, $o_ignore_flags) = @_;
- my ($rates, $flags) = read_rpmsrate({}, {}, $::prefix . '/usr/share/meta-task/rpmsrate-raw', $o_match_all_hardware);
+ my ($o_match_all_hardware, $o_ignore_flags, $o_match_only_hardware) = @_;
+ my ($rates, $flags) = read_rpmsrate({}, {}, $::prefix . '/usr/share/meta-task/rpmsrate-raw', $o_match_all_hardware, $o_match_only_hardware);
# FIXME: we do not handle !CAT_desktop but we do not care for now:
if (!$o_match_all_hardware && $o_ignore_flags) {
@@ -168,11 +175,11 @@ sub simple_read_rpmsrate {
sub detect_rpmsrate_hardware_packages {
my ($o_match_all_hardware, $ignore_flags) = @_;
- grep { !/openoffice|java/ } simple_read_rpmsrate($o_match_all_hardware, $ignore_flags);
+ grep { !/openoffice|java/ } simple_read_rpmsrate($o_match_all_hardware, $ignore_flags, 'match-only-hardware');
}
sub detect_graphical_drivers {
- my ($do_pkgs, $o_match_all_hardware) = @_;
+ my ($do_pkgs, $o_match_all_hardware, $o_firmware_only) = @_;
require Xconfig::card;
require Xconfig::proprietary;
@@ -184,8 +191,11 @@ sub detect_graphical_drivers {
@cards = Xconfig::card::probe();
}
+ my @firmware_pkgs = grep { $_ } uniq(map { $_->{FIRMWARE} } @cards);
+ return @firmware_pkgs if $o_firmware_only;
my @drivers = grep { $_ } uniq(map { $_->{Driver2} } @cards);
- map { Xconfig::proprietary::pkgs_for_Driver2($_, $do_pkgs) } @drivers;
+ my @proprietary_pkgs = map { Xconfig::proprietary::pkgs_for_Driver2($_, $do_pkgs) } @drivers;
+ return @firmware_pkgs, @proprietary_pkgs;
}
sub detect_network_drivers {
@@ -207,7 +217,7 @@ sub detect_network_drivers {
foreach my $settings (@network_settings) {
foreach (@network::thirdparty::thirdparty_types) {
my @packages = network::thirdparty::get_required_packages($_, $settings);
- push @l, network::thirdparty::get_available_packages($_, $do_pkgs, @packages);
+ push @l, network::thirdparty::get_available_packages($_, $do_pkgs, @packages) if @packages;
}
}
}
@@ -217,8 +227,13 @@ sub detect_network_drivers {
sub detect_hardware_packages {
my ($do_pkgs, $o_match_all_hardware) = @_;
my @ignore_flags = $::isInstall ? () : (
- if_(!$do_pkgs->are_installed('task-kde4-minimal', 'task-kde3-minimal'), "CAT_KDE"),
- if_(!$do_pkgs->is_installed('task-gnome'), "CAT_GNOME"),
+ if_(!$do_pkgs->is_installed('task-plasma-minimal'), "CAT_PLASMA"),
+ if_(!$do_pkgs->is_installed('task-gnome-minimal'), "CAT_GNOME"),
+ if_(!$do_pkgs->is_installed('task-cinnamon-minimal'), "CAT_CINNAMON"),
+ if_(!$do_pkgs->is_installed('task-mate-minimal'), "CAT_MATE"),
+ if_(!$do_pkgs->is_installed('task-xfce-minimal'), "CAT_XFCE"),
+ if_(!$do_pkgs->is_installed('task-enlightenment-minimal'), "CAT_ENLIGHTENMENT"),
+ if_(!$do_pkgs->is_installed('task-lxqt-minimal'), "CAT_LXQT"),
);
(
($::isInstall ? () : detect_rpmsrate_hardware_packages($o_match_all_hardware, \@ignore_flags)),
@@ -240,13 +255,14 @@ sub detect_unselected_locale_packages {
require lang;
my $locales_prefix = 'locales-';
my $locale = lang::read();
- my $selected_locale = $locales_prefix . $locale->{lang};
+ my @selected_locales = map { $locales_prefix . $_ } lang::locale_to_main_locale($locale->{lang}), lang::locale_to_main_locale(lang::c2locale($locale->{country}));
my @available_locales = $do_pkgs->are_installed($locales_prefix . '*');
- member($selected_locale, @available_locales) ? difference2(\@available_locales, [ $selected_locale ]) : ();
+ my @unneeded_locales = difference2(\@available_locales, \@selected_locales);
+ $do_pkgs->are_installed(@unneeded_locales);
}
sub remove_unused_packages {
- my ($in, $do_pkgs) = @_;
+ my ($in, $do_pkgs, $o_prefix) = @_;
my $wait;
$wait = $in->wait_message(N("Unused packages removal"), N("Finding unused hardware packages..."));
@@ -256,6 +272,10 @@ sub remove_unused_packages {
my @unselected_locales = detect_unselected_locale_packages($do_pkgs);
undef $wait;
+ # Packages to not remove even if they seem unused
+ my @wanted_hardware_packages = qw(gnome-bluetooth pulseaudio-module-bluetooth gnome-phone-manager bluedevil kppp ppp wireless-tools wireless-regdb wpa_supplicant iw crda kernel-firmware-nonfree radeon-firmware ralink-firmware rtlwifi-firmware ipw2100-firmware ipw2200-firmware iwlwifi-3945-ucode iwlwifi-4965-ucode iwlwifi-firmware b43-fwcutter b43-openfwwf atmel-firmware speedtouch-firmware zd1211-firmware isdn4k-utils rfkill x11-driver-input-wacom x11-driver-video-vmware usb_modeswitch usb_modeswitch-data);
+ @unused_hardware_packages = difference2(\@unused_hardware_packages, \@wanted_hardware_packages);
+
@unused_hardware_packages || @unselected_locales or return;
my $hardware = @unused_hardware_packages;
@@ -279,7 +299,8 @@ sub remove_unused_packages {
#- we should have some gurpme
$wait = $in->wait_message(N("Please wait"), N("Removing packages..."));
- run_program::run('urpme', '--auto',
+ #- disable timeout, it can cause irrepairable damage to the rpm database (mga#27580)
+ run_program::raw({ root => $o_prefix, timeout => 'never' }, 'urpme', '--auto',
if_($hardware, @unused_hardware_packages),
if_($locales, @unselected_locales),
);
diff --git a/perl-install/raid.pm b/perl-install/raid.pm
index e681a4649..f20a511eb 100644
--- a/perl-install/raid.pm
+++ b/perl-install/raid.pm
@@ -1,4 +1,4 @@
-package raid; # $Id$
+package raid;
use diagnostics;
use strict;
@@ -13,10 +13,21 @@ use run_program;
use devices;
use modules;
-sub max_nb() { 31 }
+=head1 SYNOPSYS
+
+Manage regular soft RAID (MD=Multiple Drive).
+
+=head1 Functions
+
+=over
+
+=cut
+
+sub max_nb() { 131 }
sub check_prog {
- my ($in) = @_;
+ # perl_checker: require interactive
+ my ($in) = @_; # perl_checker: $in = interactive->new
$::prefix ? whereis_binary('mdadm') : $in->do_pkgs->ensure_binary_is_installed('mdadm', 'mdadm');
}
@@ -24,7 +35,7 @@ sub new {
my ($raids, %opts) = @_;
my $md_part = { %opts };
add2hash_($md_part, { 'chunk-size' => '64', disks => [],
- fs_type => 'ext3',
+ fs_type => defaultFS(),
device => first(free_mds($raids)),
notFormatted => 1, level => 1 });
push @$raids, $md_part;
@@ -37,9 +48,15 @@ sub new {
$md_part;
}
+=item add()
+
+Add a partition to a RAID array
+
+=cut
+
sub add {
my ($md_part, $part) = @_;
- $md_part->{isMounted} and die N("Can not add a partition to _formatted_ RAID %s", $md_part->{device});
+ $md_part->{isMounted} and die N("Cannot add a partition to _formatted_ RAID %s", $md_part->{device});
inactivate_and_dirty($md_part);
set_isFormatted($part, 0);
$part->{raid} = $md_part->{device};
@@ -48,6 +65,12 @@ sub add {
update($md_part);
}
+=item delete()
+
+Remove a partition from a RAID array
+
+=cut
+
sub delete {
my ($raids, $md_part) = @_;
inactivate_and_dirty($md_part);
@@ -91,13 +114,26 @@ sub updateSize {
elsif (/1/) { min @l }
elsif (/4|5/) { min(@l) * (@l - 1) }
elsif (/6/) { min(@l) * (@l - 2) }
+ elsif (/10/) { min(@l) * (@l / 2) }
};
}
+=item allmodules()
+
+Return list of the RAID modules we support
+
+=cut
+
sub allmodules {
- [ 'raid0', 'raid1', 'raid10', 'raid456' ];
+ ('raid0', 'raid1', 'raid10', 'raid456');
}
+=item module($part)
+
+Return list of modules need by a md device (according to its RAID level)
+
+=cut
+
sub module {
my ($part) = @_;
my $level = $part->{level};
@@ -105,6 +141,8 @@ sub module {
if (member($level, 4, 5, 6)) {
'raid456';
+ } elsif (member($level, 10)) {
+ 'raid10';
} elsif ($level =~ /^\d+$/) {
"raid$level";
} else {
@@ -134,9 +172,11 @@ sub make {
run_program::run_or_die('mdadm', '--create', '--run', $dev,
if_($nb == 1, '--force'),
- '--chunk=' . $part->{'chunk-size'},
+ if_($nb == 2 && $part->{level} == 10, '--layout=f2'),
+ if_($part->{level} != 1, '--chunk=' . $part->{'chunk-size'}),
"--level=$part->{level}",
"--raid-devices=$nb",
+ if_($part->{metadata}, "--metadata=$part->{metadata}"),
map { devices::make($_->{device}) } @{$part->{disks}});
if (my $raw_part = get_md_info($dev)) {
@@ -157,7 +197,7 @@ sub format_part {
sub verify {
my ($raids) = @_;
foreach (@$raids) {
- my $nb = $_->{level} =~ /6/ ? 4 : $_->{level} =~ /4|5/ ? 3 : 2;
+ my $nb = $_->{level} =~ /4|5|6/ ? 3 : 2;
@{$_->{disks}} >= $nb or die N("Not enough partitions for RAID level %d\n", $_->{level});
}
}
@@ -168,29 +208,77 @@ sub inactivate_and_dirty {
set_isFormatted($part, 0);
}
+=item active_mds()
+
+Return list of active MDs
+
+=cut
+
sub active_mds() {
map { if_(/^(md\S+)\s*:\s*active/, $1) } cat_("/proc/mdstat");
}
+
+=item inactive_mds()
+
+Return list of inactive MDs
+
+=cut
+
sub inactive_mds() {
map { if_(/^(md\S+)\s*:\s*inactive/, $1) } cat_("/proc/mdstat");
}
+=item free_mds()
+
+Return list of unused MD device nodes
+
+=cut
+
sub free_mds {
my ($raids) = @_;
difference2([ map { "md$_" } 0 .. max_nb() ], [ map { $_->{device} } @$raids ]);
}
+=item detect_durting_install()
+
+Load RAID modules.
+Stop RAIDS that might have been started too early by udev.
+Scan & starts RAID arrays, then stop any inactive md.
+
+=cut
+
sub detect_during_install {
my (@parts) = @_;
+ eval { modules::load($_) } foreach allmodules();
+
+ # udev may have started raids but failed due to not yet loaded modules and
+ # they remains inactive ("md: personality for level 1 is not loaded!")
+ stop_inactive_mds();
+
detect_during_install_once(@parts);
detect_during_install_once(@parts) if active_mds(); #- try again to detect RAID 10
+ stop_inactive_mds();
+}
+
+=item stop_inactive_mds()
+Stop any inactive md.
+
+=cut
+
+sub stop_inactive_mds() {
foreach (inactive_mds()) {
log::l("$_ is an inactive md, we stop it to ensure it doesn't busy devices");
run_program::run('mdadm', '--stop', devices::make($_));
}
}
+=item detect_during_install_once(@parts)
+
+Scan & starts RAID arrays, then stop any inactive md.
+
+=cut
+
sub detect_during_install_once {
my (@parts) = @_;
devices::make("md$_") foreach 0 .. max_nb();
@@ -198,10 +286,6 @@ sub detect_during_install_once {
(map { "/dev/$_" } active_mds()),
map { devices::make($_->{device}) } @parts), "\n");
run_program::run('mdadm', '>>', '/etc/mdadm.conf', '--examine', '--scan');
-
- foreach (@{allmodules()}) {
- eval { modules::load(module($_)) };
- }
run_program::run('mdadm', '--assemble', '--scan');
}
@@ -211,7 +295,7 @@ sub get_existing {
foreach my $md (active_mds()) {
my $raw_part = get_md_info(devices::make($md)) or next;
- $raw_part->{level} =~ s/raid//; #- { linear | raid0 | raid1 | raid5 | raid6 } -> { linear | 0 | 1 | 5 | 6 }
+ $raw_part->{level} =~ s/raid//; #- { linear | raid0 | raid1 | raid5 | raid6 | raid10 } -> { linear | 0 | 1 | 5 | 6 | 10 }
my @mdparts =
map {
@@ -223,13 +307,20 @@ sub get_existing {
}
} split(',', $raw_part->{devices});
- my $md_part = new($raids, device => $md, UUID => $raw_part->{UUID}, level => $raw_part->{level}, disks => \@mdparts);
+ my ($info) = $md =~ m!([^/]*)$!;
+ my $md_part = new($raids,
+ device => $md,
+ UUID => $raw_part->{UUID},
+ level => $raw_part->{level},
+ metadata => $raw_part->{metadata},
+ info => $info . " (RAID$raw_part->{level})",
+ disks => \@mdparts);
my $type = fs::type::type_subpart_from_magic($md_part);
if ($type) {
put_in_hash($md_part, $type);
} else {
- fs::type::set_fs_type($md_part, 'ext3');
+ fs::type::set_fs_type($md_part, defaultFS());
}
my $fs_type = $type && $type->{fs_type};
fs::type::set_isFormatted($md_part, to_bool($fs_type));
@@ -239,11 +330,23 @@ sub get_existing {
$raids;
}
+=item is_active($dev)
+
+Is it an?active md
+
+=cut
+
sub is_active {
my ($dev) = @_;
member($dev, active_mds());
}
+=item write_conf()
+
+Write /etc/mdadm.conf
+
+=cut
+
sub write_conf {
my ($raids) = @_;
@@ -251,6 +354,7 @@ sub write_conf {
my @devices = uniq(map { devices::make($_->{device}) } map { @{$_->{disks}} } @$raids);
+ # $::isInstall test for draklive-install:
output($::isInstall ? "$::prefix/etc/mdadm.conf" : "/etc/mdadm.conf",
join(' ', 'DEVICE', @devices) . "\n",
map { "ARRAY " . devices::make($_->{device}) . " UUID=$_->{UUID} auto=yes\n" } @$raids);
@@ -283,4 +387,8 @@ sub parse_mdadm_conf {
\%conf;
}
+=back
+
+=cut
+
1;
diff --git a/perl-install/resize_fat/Makefile.PL b/perl-install/resize_fat/Makefile.PL
index 712f4e395..712f4e395 100644..100755
--- a/perl-install/resize_fat/Makefile.PL
+++ b/perl-install/resize_fat/Makefile.PL
diff --git a/perl-install/resize_fat/README b/perl-install/resize_fat/README
index 12b64dea9..ad5656f0b 100644
--- a/perl-install/resize_fat/README
+++ b/perl-install/resize_fat/README
@@ -5,4 +5,4 @@ resize_fat::fat::update($fs) should be called before doing undoable things
BUGS:
no known bugs :)
-if you found one, please mail pixel@mandrakesoft.com !!
+if you found one, please mail pixel !!
diff --git a/perl-install/resize_fat/any.pm b/perl-install/resize_fat/any.pm
index 59ec02098..fc3c438eb 100644
--- a/perl-install/resize_fat/any.pm
+++ b/perl-install/resize_fat/any.pm
@@ -1,4 +1,4 @@
-package resize_fat::any; # $Id$
+package resize_fat::any;
use diagnostics;
use strict;
@@ -86,7 +86,15 @@ sub max_size($) {
sub used_size($) {
my ($fs) = @_;
- my $used_cluster_count = max(last_used($fs), min_cluster_count($fs));
+ my $last_used;
+ my $used_cluster_count;
+
+ eval { $last_used = last_used($fs) };
+ if ($@) {
+ # Empty FAT
+ $last_used = 0;
+ }
+ $used_cluster_count = max($last_used, min_cluster_count($fs));
$used_cluster_count * divide($fs->{cluster_size}, $SECTORSIZE) +
divide($fs->{cluster_offset}, $SECTORSIZE);
diff --git a/perl-install/resize_fat/boot_sector.pm b/perl-install/resize_fat/boot_sector.pm
index dd09755cc..f93647579 100644
--- a/perl-install/resize_fat/boot_sector.pm
+++ b/perl-install/resize_fat/boot_sector.pm
@@ -1,4 +1,4 @@
-package resize_fat::boot_sector; # $Id$
+package resize_fat::boot_sector;
use diagnostics;
use strict;
@@ -57,7 +57,7 @@ sub read($) {
$fs->{cluster_size} = $fs->{cluster_size_in_sectors} * $fs->{sector_size};
$fs->{boot_sign} == 0xAA55 or die "Invalid signature for a MS-based filesystem.\n";
- $fs->{nb_sectors} < 32 and die "Too few sectors for viable file system\n";
+ $fs->{nb_sectors} < 32 and die "Too few sectors for viable filesystem\n";
$fs->{nb_fats} == 2 or cdie "Weird number of FATs: $fs->{nb_fats}, not 2.\n";
$fs->{sector_size} == 512 or cdie "Strange sector_size != 512\n";
diff --git a/perl-install/resize_fat/c_rewritten.pm b/perl-install/resize_fat/c_rewritten.pm
index bc0548314..39ba9253f 100644
--- a/perl-install/resize_fat/c_rewritten.pm
+++ b/perl-install/resize_fat/c_rewritten.pm
@@ -1,4 +1,4 @@
-package resize_fat::c_rewritten; # $Id$
+package resize_fat::c_rewritten;
use strict;
diff --git a/perl-install/resize_fat/dir_entry.pm b/perl-install/resize_fat/dir_entry.pm
index 130bac7c8..27d2ea33f 100644
--- a/perl-install/resize_fat/dir_entry.pm
+++ b/perl-install/resize_fat/dir_entry.pm
@@ -1,4 +1,4 @@
-package resize_fat::dir_entry; # $Id$
+package resize_fat::dir_entry;
use diagnostics;
use strict;
diff --git a/perl-install/resize_fat/directory.pm b/perl-install/resize_fat/directory.pm
index 6f8ae9445..9c04fb62b 100644
--- a/perl-install/resize_fat/directory.pm
+++ b/perl-install/resize_fat/directory.pm
@@ -1,4 +1,4 @@
-package resize_fat::directory; # $Id$
+package resize_fat::directory;
use diagnostics;
use strict;
diff --git a/perl-install/resize_fat/fat.pm b/perl-install/resize_fat/fat.pm
index 2bceb129d..20145982b 100644
--- a/perl-install/resize_fat/fat.pm
+++ b/perl-install/resize_fat/fat.pm
@@ -1,4 +1,4 @@
-package resize_fat::fat; # $Id$
+package resize_fat::fat;
use diagnostics;
use strict;
diff --git a/perl-install/resize_fat/info_sector.pm b/perl-install/resize_fat/info_sector.pm
index 11aa7f153..47de2db1c 100644
--- a/perl-install/resize_fat/info_sector.pm
+++ b/perl-install/resize_fat/info_sector.pm
@@ -1,4 +1,4 @@
-package resize_fat::info_sector; # $Id$
+package resize_fat::info_sector;
use diagnostics;
use strict;
diff --git a/perl-install/resize_fat/io.pm b/perl-install/resize_fat/io.pm
index 020cb61f5..78e3a3724 100644
--- a/perl-install/resize_fat/io.pm
+++ b/perl-install/resize_fat/io.pm
@@ -1,4 +1,4 @@
-package resize_fat::io; # $Id$
+package resize_fat::io;
use diagnostics;
use strict;
diff --git a/perl-install/resize_fat/main.pm b/perl-install/resize_fat/main.pm
index ed81363b7..681aec756 100644
--- a/perl-install/resize_fat/main.pm
+++ b/perl-install/resize_fat/main.pm
@@ -1,4 +1,4 @@
-package resize_fat::main; # $Id$
+package resize_fat::main;
# This is mainly a perl rewrite of the work of Andrew Clausen (libresize)
@@ -44,7 +44,7 @@ sub DESTROY {
#- copy all clusters >= <start_cluster> to a new place on the partition, less
#- than <start_cluster>. Only copies files, not directories.
-#- (use of buffer needed because the seeks slow like hell the hard drive)
+#- (use of buffer needed because the seeks slow like hell the hard disk drive)
sub copy_clusters {
my ($fs, $cluster) = @_;
my @buffer;
diff --git a/perl-install/run_program.pm b/perl-install/run_program.pm
index 0f84b9087..b3a65d13a 100644
--- a/perl-install/run_program.pm
+++ b/perl-install/run_program.pm
@@ -1,29 +1,155 @@
-package run_program; # $Id$
+package run_program;
use diagnostics;
use strict;
use c;
use MDK::Common;
+use common; # for get_parent_uid()
use log;
+use Time::HiRes qw(ualarm);
+
+=head1 SYNOPSYS
+
+B<run_program> enables to:
+
+=over 4
+
+=item * run programs in foreground or in background,
+
+=item * to retrieve their stdout or stderr
+
+=item * ...
+
+=back
+
+Most functions exits in a normal form & a rooted one. e.g.:
+
+=over 4
+
+=item * C<run()> & C<rooted()>
+
+=item * C<get_stdout()> & C<rooted_get_stdout()>
+
+=back
+
+Most functions exits in a normal form & one that die. e.g.:
+
+=over 4
+
+=item * C<run()> & C<run_or_die()>
+
+=item * C<rooted()> & C<rooted_or_die()>
+
+=back
+
+=head1 Functions
+
+=over
+
+=cut
1;
+my $default_timeout = 10 * 60;
+
+=item set_default_timeout($seconds)
+
+Alters defaults timeout (eg for harddrake service)
+
+=cut
+
+sub set_default_timeout {
+ my ($seconds) = @_;
+ $default_timeout = $seconds;
+}
+
+my $callback_routine;
+my $callback_interval = 1 * 1000;
+
+=item set_wait_loop_callback($routine, $o_interval)
+
+Sets a callback routine that will be called at regular intervals whilst
+waiting for a program being run in the foreground. Optionally sets the
+interval in milliseconds between callbacks. If not set, the interval is
+1 second.
+
+The callback routine will be passed one argument which is the pid of
+the program being run.
+
+The callback routine should not call sleep() or abort(), as that may
+prevent it being called again.
+
+=cut
+
+sub set_wait_loop_callback {
+ my ($routine, $o_interval) = @_;
+ $callback_routine = $routine;
+ $callback_interval = $o_interval if $o_interval;
+}
+
+=item run_or_die($name, @args)
+
+Runs $name with @args parameterXs. Dies if it exit code is not 0.
+
+=cut
+
sub run_or_die {
my ($name, @args) = @_;
run($name, @args) or die "$name failed\n";
}
+
+=item rooted_or_die($root, $name, @args)
+
+Similar to run_or_die() but runs in chroot in $root
+
+=cut
+
sub rooted_or_die {
my ($root, $name, @args) = @_;
rooted($root, $name, @args) or die "$name failed\n";
}
+=item get_stdout($name, @args)
+
+Similar to run_or_die() but return stdout of program:
+
+=over 4
+
+=item * a list of lines in list context
+
+=item * a string of concatenated lines in scalar context
+
+=back
+
+=cut
+
sub get_stdout {
my ($name, @args) = @_;
my @r;
run($name, '>', \@r, @args) or return;
wantarray() ? @r : join('', @r);
}
+
+=item get_stdout_raw($options, $name, @args)
+
+Similar to get_stdout() but allow to pass options to raw()
+
+=cut
+
+sub get_stdout_raw {
+ my ($options, $name, @args) = @_;
+ my @r;
+ raw($options, $name, '>', \@r, @args) or return;
+ wantarray() ? @r : join('', @r);
+}
+
+=item rooted_get_stdout($root, $name, @args)
+
+Similar to get_stdout() but runs in chroot in $root
+
+=cut
+
sub rooted_get_stdout {
my ($root, $name, @args) = @_;
my @r;
@@ -31,13 +157,61 @@ sub rooted_get_stdout {
wantarray() ? @r : join('', @r);
}
+=item run($name, @args)
+
+Runs $name with @args parameters.
+
+=cut
+
sub run { raw({}, @_) }
+=item rooted($root, $name, @args)
+
+Similar to run() but runs in chroot in $root
+
+=cut
+
sub rooted {
my ($root, $name, @args) = @_;
raw({ root => $root }, $name, @args);
}
+=item raw($options, $name, @args)
+
+The function used by all the other, making every combination possible.
+Runs $name with @args parameters. $options is a hash ref that can contains:
+
+=over 4
+
+=item * B<root>: $name will be chrooted in $root prior to run
+
+=item * B<as_user>: $name will be run as $ENV{PKEXEC_UID} or with the UID of parent process. Implies I<setuid>
+
+=item * B<sensitive_arguments>: parameters will be hidden in logs (b/c eg there's a password)
+
+=item * B<detach>: $name will be run in the background. Default is foreground
+
+=item * B<chdir>: $name will be run in a different default directory
+
+=item * B<setuid>: a UID; $name will be with droped privileges ;
+make sure environment is set right and keep a copy of the X11 cookie
+
+=item * B<timeout>: execution of $name will be aborted after C<timeout> seconds
+
+=back
+
+eg:
+
+=over 4
+
+=item * C<< run_program::raw({ root => $::prefix, sensitive_arguments => 1 }, "echo -e $user->{password} | cryptsetup luksFormat $device"); >>
+
+=item * C<< run_program::raw({ detach => 1 }, '/etc/rc.d/init.d/dm', '>', '/dev/null', '2>', '/dev/null', 'restart'); >>
+
+=back
+
+=cut
+
sub raw {
my ($options, $name, @args) = @_;
my $root = $options->{root} || '';
@@ -47,6 +221,11 @@ sub raw {
($stdout_mode, $stdout_raw, @args) = @args if $args[0] =~ /^>>?$/;
($stderr_mode, $stderr_raw, @args) = @args if $args[0] =~ /^2>>?$/;
+ my $home;
+ if ($options->{as_user}) {
+ $options->{setuid} = $ENV{PKEXEC_UID} ||= common::get_parent_uid();;
+ }
+
my $args = $options->{sensitive_arguments} ? '<hidden arguments>' : join(' ', @args);
log::explanations("running: $real_name $args" . ($root ? " with root $root" : ""));
@@ -76,20 +255,48 @@ sub raw {
$pid;
} else {
my $ok;
- add2hash_($options, { timeout => 10 * 60 });
+ add2hash_($options, { timeout => $default_timeout });
+
+ my $remaining = $options->{timeout} if $options->{timeout} ne 'never';
+ #- We count in milliseconds when using a callback routine.
+ $remaining *= 1000 if $remaining && $callback_routine;
+
+ #- Preserve any pre-existing alarm.
+ my $old_remaining = alarm(0) if $remaining;
+
+ wait_again:
+
eval {
local $SIG{ALRM} = sub { die "ALARM" };
- my $remaining = $options->{timeout} && $options->{timeout} ne 'never' && alarm($options->{timeout});
+ if ($callback_routine) {
+ ualarm($callback_interval * 1000);
+ } elsif ($remaining) {
+ alarm($remaining);
+ }
waitpid $pid, 0;
$ok = $? == -1 || ($? >> 8) == 0;
- alarm $remaining;
+ if ($callback_routine) {
+ ualarm(0);
+ } elsif ($remaining) {
+ alarm(0);
+ }
};
if ($@) {
+ if ($@ =~ /^ALARM/ && $callback_routine) {
+ $callback_routine->($pid);
+ $remaining -= $callback_interval if $remaining;
+ goto wait_again if !defined $remaining || $remaining > 0;
+ }
log::l("ERROR: killing runaway process (process=$real_name, pid=$pid, args=@args, error=$@)");
kill 9, $pid;
+ #- Restore any pre-existing alarm.
+ alarm($old_remaining) if $old_remaining;
return;
}
+ #- Restore any pre-existing alarm.
+ alarm($old_remaining) if $old_remaining;
+
if ($stdout_raw && ref($stdout_raw)) {
if (ref($stdout_raw) eq 'ARRAY') {
@$stdout_raw = cat_($stdout);
@@ -111,7 +318,20 @@ sub raw {
} else {
if ($options->{setuid}) {
require POSIX;
- $ENV{'LOGNAME'} = getpwuid($options->{setuid}) || $ENV{LOGNAME};
+ my ($logname, $home) = (getpwuid($options->{setuid}))[0,7];
+ $ENV{LOGNAME} = $logname if $logname;
+ $ENV{HOME} = $home if $home;
+
+ # if we were root and are going to drop privilege, keep a copy of the X11 cookie:
+ if (!$> && $home) {
+ # FIXME: it would be better to remove this but most callers are using 'detach => 1'...
+ my $xauth = chomp_(`mktemp $home/.Xauthority.XXXXX`);
+ system('cp', '-a', $ENV{XAUTHORITY}, $xauth);
+ system('chown', $logname, $xauth);
+ $ENV{XAUTHORITY} = $xauth;
+ }
+
+ # drop privileges:
POSIX::setuid($options->{setuid});
}
@@ -122,15 +342,15 @@ sub raw {
if ($stderr && $stderr eq 'STDERR') {
} elsif ($stderr) {
$stderr_mode =~ s/2//;
- open STDERR, "$stderr_mode $stderr" or die_exit("run_program can not output in $stderr (mode `$stderr_mode')");
+ open STDERR, "$stderr_mode $stderr" or die_exit("run_program cannot output in $stderr (mode `$stderr_mode')");
} elsif ($::isInstall) {
- open STDERR, ">> /tmp/ddebug.log" or open STDOUT, ">> /dev/tty7" or die_exit("run_program can not log, give me access to /tmp/ddebug.log");
+ open STDERR, ">> /tmp/ddebug.log" or open STDOUT, ">> /dev/tty7" or die_exit("run_program cannot log, give me access to /tmp/ddebug.log");
}
if ($stdout && $stdout eq 'STDOUT') {
} elsif ($stdout) {
- open STDOUT, "$stdout_mode $stdout" or die_exit("run_program can not output in $stdout (mode `$stdout_mode')");
+ open STDOUT, "$stdout_mode $stdout" or die_exit("run_program cannot output in $stdout (mode `$stdout_mode')");
} elsif ($::isInstall) {
- open STDOUT, ">> /tmp/ddebug.log" or open STDOUT, ">> /dev/tty7" or die_exit("run_program can not log, give me access to /tmp/ddebug.log");
+ open STDOUT, ">> /tmp/ddebug.log" or open STDOUT, ">> /dev/tty7" or die_exit("run_program cannot log, give me access to /tmp/ddebug.log");
}
$root and chroot $root;
@@ -148,9 +368,42 @@ sub raw {
}
-# run in background a sub that give back data through STDOUT a la run_program::get_stdout but w/ arbitrary perl code instead of external program
+=item terminate($pid, $o_timeout)
+
+Sends the TERM signal to the process identified by $pid and waits for it
+to terminate. If it hasn't terminated in $o_timeout seconds, sends the
+KILL signal and returns without waiting. If $o_timeout is not specified,
+the default timeout is 5 seconds. If $o_timeout is less than or equal to
+zero, the TERM signal is not sent and the process is killed immediately.
+
+=cut
+
+sub terminate {
+ my ($pid, $o_timeout) = @_;
+
+ if (!defined $o_timeout || $o_timeout > 0) {
+ kill 'TERM', $pid;
+ eval {
+ local $SIG{ALRM} = sub { die "ALARM" };
+ my $old_remaining = alarm($o_timeout || 5);
+ waitpid $pid, 0;
+ alarm($old_remaining);
+ };
+ return if !$@;
+ log::l("ERROR: killing runaway process (pid=$pid, error=$@)");
+ }
+ kill 'KILL', $pid;
+}
+
package bg_command;
+=item bg_command::new($class, $sub)
+
+Runs in background a sub that give back data through STDOUT a la run_program::get_stdout
+but w/ arbitrary perl code instead of external program
+
+=cut
+
sub new {
my ($class, $sub) = @_;
my $o = bless {}, $class;
@@ -163,12 +416,22 @@ sub new {
}
}
+=item bg_command::DESTROY($o)
+
+When undefined (either explicitly or at end of lexical scope), close the fd and wait for the child process.
+
+=cut
+
sub DESTROY {
my ($o) = @_;
close $o->{fd} or warn "kid exited $?";
waitpid $o->{pid}, 0;
}
+=back
+
+=cut
+
1;
#- Local Variables:
diff --git a/perl-install/scanner.pm b/perl-install/scanner.pm
index 3fa4c9bef..777f7192f 100644
--- a/perl-install/scanner.pm
+++ b/perl-install/scanner.pm
@@ -1,5 +1,4 @@
package scanner;
-# scanner.pm $Id$
# Yves Duret <yduret at mandriva.com>
# Till Kamppeter <till at mandriva.com>
# Copyright (C) 2001-2008 Mandriva
@@ -35,7 +34,7 @@ our $scannerDB = readScannerDB("$scannerDBdir/ScannerDB");
sub confScanner {
my ($model, $port, $vendor, $product, $firmware) = @_;
- $port ||= "$::prefix/dev/scanner";
+ $port ||= "/dev/scanner";
my $a = $scannerDB->{$model}{server};
#print "file:[$a]\t[$model]\t[$port]\n| ", (join "\n| ", @{$scannerDB->{$model}{lines}}),"\n";
my @driverconf = cat_("$sanedir/$a.conf");
@@ -178,9 +177,9 @@ sub nonroot_access_for_parport {
# Desired state of this facility: 1: Enable, 0: Disable
my ($enable, $in) = @_;
# Is saned running?
- my $sanedrunning = services::starts_on_boot("saned");
+ my $sanedrunning = services::starts_on_boot("saned.socket");
# Is the "net" SANE backend active
- my $netbackendactive = grep { /^\s*net\s*$/ }
+ my $netbackendactive = find { /^\s*net\s*$/ }
cat_("/etc/sane.d/dll.conf");
# Set this to 1 to tell the caller that the list of locally available
# scanners has changed (Here if the SANE client configuration has
@@ -192,11 +191,9 @@ sub nonroot_access_for_parport {
# Install/start saned
if (!$sanedrunning) {
- # Make sure saned and xinetd is installed and
- # running
- if (!files_exist('/usr/sbin/xinetd',
- '/usr/sbin/saned')) {
- if (!$in->do_pkgs->install('xinetd', 'saned')) {
+ # Make sure saned is installed and running
+ if (!files_exist('/usr/sbin/saned')) {
+ if (!$in->do_pkgs->install('saned')) {
$in->ask_warn(N("Scannerdrake"),
N("Could not install the packages needed to share your scanner(s).") . " " .
N("Your scanner(s) will not be available for non-root users."));
@@ -205,12 +202,6 @@ sub nonroot_access_for_parport {
}
}
- # Modify /etc/xinetd.d/saned to let saned run as root
- my @sanedxinetdconf = cat_("/etc/xinetd.d/saned");
- s/(user\s*=\s*).*$/$1root/ foreach @sanedxinetdconf;
- s/(group\s*=\s*).*$/$1root/ foreach @sanedxinetdconf;
- output("/etc/xinetd.d/saned", @sanedxinetdconf);
-
# Read list of hosts to where to export the local scanners
my @exports = cat_("/etc/sane.d/saned.conf");
# Read list of hosts from where to import scanners
@@ -231,22 +222,7 @@ sub nonroot_access_for_parport {
# (Re)start saned and make sure that it gets started on
# every boot
- services::start_service_on_boot("saned");
- services::start_service_on_boot("xinetd");
- services::restart("xinetd");
-
- } else {
- # Disable non-root access
-
- if (-r "/etc/xinetd.d/saned") {
- # Modify /etc/xinetd.d/saned to let saned run as saned
- my @sanedxinetdconf = cat_("/etc/xinetd.d/saned");
- s/(user\s*=\s*).*$/$1saned/ foreach @sanedxinetdconf;
- s/(group\s*=\s*).*$/$1saned/ foreach @sanedxinetdconf;
- output("/etc/xinetd.d/saned", @sanedxinetdconf);
- # Restart xinetd
- services::restart("xinetd") if $sanedrunning;
- }
+ services::enable("saned.socket");
}
return 1;
@@ -279,13 +255,13 @@ sub detect {
$productid = $3;
}
if ($vendorid && $productid) {
- my ($vendor) = ($vendorid =~ /0x([0-9a-f]+)/);
- my ($id) = ($productid =~ /0x([0-9a-f]+)/);
+ my ($vendor) = $vendorid =~ /0x([0-9a-f]+)/;
+ my ($id) = $productid =~ /0x([0-9a-f]+)/;
my ($device) = grep { sprintf("%04x", $_->{vendor}) eq $vendor && sprintf("%04x", $_->{id}) eq $id } @devices;
if ($device) {
$driver = $device->{driver};
- $real_device = $device
+ $real_device = $device;
} else {
#warn "Failed to lookup $vendorid and $productid!\n";
}
@@ -567,10 +543,10 @@ sub updateScannerDBfromSane {
next if $f =~ /unsupported.desc$/;
# Treat unsupported.desc in the end
$f = "$sanesrcdir/doc/descriptions/unsupported.desc" if
- ($f eq "UNSUPPORTED");
+ $f eq "UNSUPPORTED";
my $F = common::openFileMaybeCompressed($f);
$to_add .= "\n# from $f";
- my ($lineno, $cmd, $val) = 0;
+ my ($lineno, $cmd, $val);
my ($name, $intf, $comment, $mfg, $backend);
my $fs = {
backend => sub { $backend = $val },
diff --git a/perl-install/security/help.pm b/perl-install/security/help.pm
index 267dcd866..ec934e067 100644
--- a/perl-install/security/help.pm
+++ b/perl-install/security/help.pm
@@ -91,7 +91,7 @@ and crontab(1))."),
'enable_password' => N("Use password to authenticate users."),
-'enable_promisc_check' => N("Activate ethernet cards promiscuity check."),
+'enable_promisc_check' => N("Activate Ethernet cards promiscuity check."),
'enable_security_check' => N("Activate daily security check."),
diff --git a/perl-install/security/level.pm b/perl-install/security/level.pm
index 79879336d..bb3d9ddf2 100644
--- a/perl-install/security/level.pm
+++ b/perl-install/security/level.pm
@@ -3,7 +3,7 @@ package security::level;
use strict;
use common;
use run_program;
-
+# perl_checker: require interactive
sub level_list() {
(
@@ -16,25 +16,37 @@ sub level_list() {
sub to_string { +{ level_list() }->{$_[0]} }
sub from_string { +{ reverse level_list() }->{$_[0]} || 2 }
+sub rawlevel_list() {
+ (
+ 0 => 'none',
+ 1 => 'standard',
+ 2 => 'secure',
+ );
+}
+
+sub to_lowlevel_string { +{ rawlevel_list() }->{$_[0]} }
+sub from_lowlevel_string { +{ reverse rawlevel_list() }->{$_[0]} || 2 }
+
sub get_string() { to_string(get() || 2) }
sub get_common_list() { map { to_string($_) } (1, 2, 3, 4, 5) }
sub get() {
- ${{ getVarsFromSh("$::prefix/etc/security/msec/security.conf") }}{BASE_LEVEL} || #- 2009.1 msec
- 1;
+ my $level = ${{ getVarsFromSh("$::prefix/etc/security/msec/security.conf") }}{BASE_LEVEL} || #- 2009.1 msec
+ "standard";
+ from_lowlevel_string($level);
}
sub set {
my ($security) = @_;
- my @levelnames = ( 'none', 'standard', 'secure' );
+ my @levelnames = ('none', 'standard', 'secure');
# use Standard level if specified level is out of range
$security = 1 if $security > $#levelnames;
- run_program::rooted($::prefix, 'msec', '-q', '-f', @levelnames[$security]);
- run_program::rooted($::prefix, 'msecperms', '-q', '-e', '-f', @levelnames[$security]);
+ run_program::rooted($::prefix, 'msec', '-q', '-f', $levelnames[$security]);
+ run_program::rooted($::prefix, 'msecperms', '-q', '-e', $levelnames[$security]);
}
sub level_choose {
- my ($in, $security, $email) = @_;
+ my ($in, $security, $email) = @_; # perl_checker: $in = interactive->new
my %help = (
0 => N("This level is to be used with care, as it disables all additional security
@@ -49,7 +61,7 @@ connections from many clients. Note: if your machine is only a client on the Int
my @l = 1 .. 2;
$in->ask_from_({ title => $::isInstall ? N("Security") : N("DrakSec Basic Options"),
- interactive_help_id => 'misc-params#draxid-miscellaneous',
+ interactive_help_id => 'securityLevel',
}, [
{ label => N("Please choose the desired security level"), title => 1 },
{ val => $security, list => \@l,
diff --git a/perl-install/security/various.pm b/perl-install/security/various.pm
index 140eed5c4..2e4abd397 100644
--- a/perl-install/security/various.pm
+++ b/perl-install/security/various.pm
@@ -1,4 +1,4 @@
-package security::various; # $Id$
+package security::various;
use diagnostics;
use strict;
diff --git a/perl-install/services.pm b/perl-install/services.pm
index 2e0e454a6..c2230351d 100644
--- a/perl-install/services.pm
+++ b/perl-install/services.pm
@@ -1,4 +1,4 @@
-package services; # $Id$
+package services;
@@ -11,17 +11,33 @@ use strict;
use common;
use run_program;
-use common;
-use run_program;
+use File::Basename;
+
+sub _unit_name {
+ my ($service) = @_;
+ return $service if $service =~ /\.(service|socket|timer)$/;
+ "$service.service";
+}
+
+#- The name used in the lists returned by services(). For backwards compatibility,
+#- use just the base name for .service units.
+sub _list_name {
+ my ($name, $type) = @_;
+ $type eq 'service' ? $name : "$name.$type";
+}
sub description {
my %services = (
+acpid => N_("Listen and dispatch ACPI events from the kernel"),
alsa => N_("Launch the ALSA (Advanced Linux Sound Architecture) sound system"),
anacron => N_("Anacron is a periodic command scheduler."),
apmd => N_("apmd is used for monitoring battery status and logging it via syslog.
It can also be used for shutting down the machine when the battery is low."),
atd => N_("Runs commands scheduled by the at command at the time specified when
at was run, and runs batch commands when the load average is low enough."),
+'avahi-deamon' => N_("Avahi is a ZeroConf daemon which implements an mDNS stack"),
+chronyd => N_("An NTP client/server"),
+cpufreq => N_("Set CPU frequency settings"),
crond => N_("cron is a standard UNIX program that runs user-specified programs
at periodic scheduled times. vixie cron adds a number of features to the basic
UNIX cron, including better security and more powerful configuration options."),
@@ -29,6 +45,11 @@ cups => N_("Common UNIX Printing System (CUPS) is an advanced printer spooling s
dm => N_("Launches the graphical display manager"),
fam => N_("FAM is a file monitoring daemon. It is used to get reports when files change.
It is used by GNOME and KDE"),
+g15daemon => N_("G15Daemon allows users access to all extra keys by decoding them and
+pushing them back into the kernel via the linux UINPUT driver. This driver must be loaded
+before g15daemon can be used for keyboard access. The G15 LCD is also supported. By default,
+with no other clients active, g15daemon will display a clock. Client applications and
+scripts can access the LCD via a simple API."),
gpm => N_("GPM adds mouse support to text-based Linux applications such the
Midnight Commander. It also allows mouse-based console cut-and-paste operations,
and includes support for pop-up menus on the console."),
@@ -40,26 +61,34 @@ inet => N_("The internet superserver daemon (commonly called inetd) starts a
variety of other internet services as needed. It is responsible for starting
many services, including telnet, ftp, rsh, and rlogin. Disabling inetd disables
all of the services it is responsible for."),
-ipchains => N_("Launch packet filtering for Linux kernel 2.2 series, to set
-up a firewall to protect your machine from network attacks."),
+ip6tables => N_("Automates a packet filtering firewall with ip6tables"),
+iptables => N_("Automates a packet filtering firewall with iptables"),
+irqbalance => N_("Evenly distributes IRQ load across multiple CPUs for enhanced performance"),
keytable => N_("This package loads the selected keyboard map as set in
/etc/sysconfig/keyboard. This can be selected using the kbdconfig utility.
You should leave this enabled for most machines."),
kheader => N_("Automatic regeneration of kernel header in /boot for
/usr/include/linux/{autoconf,version}.h"),
kudzu => N_("Automatic detection and configuration of hardware at boot."),
+'laptop-mode' => N_("Tweaks system behavior to extend battery life"),
linuxconf => N_("Linuxconf will sometimes arrange to perform various tasks
at boot-time to maintain the system configuration."),
lpd => N_("lpd is the print daemon required for lpr to work properly. It is
basically a server that arbitrates print jobs to printer(s)."),
lvs => N_("Linux Virtual Server, used to build a high-performance and highly
available server."),
+mandi => N_("Monitors the network (Interactive Firewall and wireless"),
+mdadm => N_("Software RAID monitoring and management"),
messagebus => N_("DBUS is a daemon which broadcasts notifications of system events and other messages"),
+msec => N_("Enables MSEC security policy on system startup"),
named => N_("named (BIND) is a Domain Name Server (DNS) that is used to resolve host names to IP addresses."),
+netconsole => N_("Initializes network console logging"),
netfs => N_("Mounts and unmounts all Network File System (NFS), SMB (Lan
Manager/Windows), and NCP (NetWare) mount points."),
network => N_("Activates/Deactivates all network interfaces configured to start
at boot time."),
+'network-auth' => N_("Requires network to be up if enabled"),
+'network-up' => N_("Wait for the hotplugged network to be up"),
nfs => N_("NFS is a popular protocol for file sharing across TCP/IP networks.
This service provides NFS server functionality, which is configured via the
/etc/exports file."),
@@ -69,33 +98,42 @@ ntpd => N_("Synchronizes system time using the Network Time Protocol (NTP)"),
numlock => N_("Automatically switch on numlock key locker under console
and Xorg at boot."),
oki4daemon => N_("Support the OKI 4w and compatible winprinters."),
+partmon => N_("Checks if a partition is close to full up"),
pcmcia => N_("PCMCIA support is usually to support things like ethernet and
modems in laptops. It will not get started unless configured so it is safe to have
it installed on machines that do not need it."),
portmap => N_("The portmapper manages RPC connections, which are used by
protocols such as NFS and NIS. The portmap server must be running on machines
which act as servers for protocols which make use of the RPC mechanism."),
+portreserve => N_("Reserves some TCP ports"),
postfix => N_("Postfix is a Mail Transport Agent, which is the program that moves mail from one machine to another."),
random => N_("Saves and restores system entropy pool for higher quality random
number generation."),
-rawdevices => N_("Assign raw devices to block devices (such as hard drive
+rawdevices => N_("Assign raw devices to block devices (such as hard disk drive
partitions), for the use of applications such as Oracle or DVD players"),
+resolvconf => N_("Nameserver information manager"),
routed => N_("The routed daemon allows for automatic IP router table updated via
the RIP protocol. While RIP is widely used on small networks, more complex
routing protocols are needed for complex networks."),
rstatd => N_("The rstat protocol allows users on a network to retrieve
performance metrics for any machine on that network."),
+rsyslog => N_("Syslog is the facility by which many daemons use to log messages to various system log files. It is a good idea to always run rsyslog."),
rusersd => N_("The rusers protocol allows users on a network to identify who is
logged in on other responding machines."),
rwhod => N_("The rwho protocol lets remote users get a list of all of the users
logged into a machine running the rwho daemon (similar to finger)."),
-saned => N_("SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."),
+'saned.socket' => N_("SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."),
+shorewall => N_("Packet filtering firewall"),
+shorewall6 => N_("Packet filtering firewall for IPv6"),
smb => N_("The SMB/CIFS protocol enables to share access to files & printers and also integrates with a Windows Server domain"),
sound => N_("Launch the sound system on your machine"),
+'speech-dispatcherd' => N_("layer for speech analysis"),
sshd => N_("Secure Shell is a network protocol that allows data to be exchanged over a secure channel between two computers"),
syslog => N_("Syslog is the facility by which many daemons use to log messages
to various system log files. It is a good idea to always run syslog."),
+'udev-post' => N_("Moves the generated persistent udev rules to /etc/udev/rules.d"),
usb => N_("Load the drivers for your usb devices."),
+vnStat => N_("A lightweight network traffic monitor"),
xfs => N_("Starts the X Font Server."),
xinetd => N_("Starts other deamons on demand."),
);
@@ -104,14 +142,20 @@ xinetd => N_("Starts other deamons on demand."),
if ($s) {
$s = translate($s);
} else {
- my $file = find { -e $_ } map { "$::prefix$_/$name" } '/etc/rc.d/init.d', '/etc/init.d', '/etc/xinetd.d';
- $s = cat_($file);
- $s =~ s/\\\s*\n#\s*//mg;
- $s =
- $s =~ /^#\s+(?:Short-)?[dD]escription:\s+(.*?)^(?:[^#]|# {0,2}\S)/sm ? $1 :
- $s =~ /^#\s*(.*?)^[^#]/sm ? $1 : '';
-
- $s =~ s/#\s*//mg;
+ my $file = "$::prefix/usr/lib/systemd/system/" . _unit_name($name);
+ if (-e $file) {
+ $s = cat_($file);
+ $s = $s =~ /^Description=(.*)/mg ? $1 : '';
+ } else {
+ $file = find { -e $_ } map { "$::prefix$_/$name" } '/etc/rc.d/init.d', '/etc/init.d', '/etc/xinetd.d';
+ $s = cat_($file);
+ $s =~ s/\\\s*\n#\s*//mg;
+ $s =
+ $s =~ /^#\s+(?:Short-)?[dD]escription:\s+(.*?)^(?:[^#]|# {0,2}\S)/sm ? $1 :
+ $s =~ /^#\s*(.*?)^[^#]/sm ? $1 : '';
+
+ $s =~ s/#\s*//mg;
+ }
}
$s =~ s/\n/ /gm; $s =~ s/\s+$//;
$s;
@@ -120,20 +164,28 @@ xinetd => N_("Starts other deamons on demand."),
sub ask_ {
my ($in) = @_;
my %root_services = (
- N("Printing") => [ qw(cups cupslpd lpr lpd oki4daemon hpoj cups-lpd) ],
- N("Internet") => [ qw(httpd boa tux roxen ftp pftp tftp proftpd wu-ftpd pure-ftpdipsec proftpd-xinetd
- ipchains iptables ip6tables ipvsadm isdn4linux ibod jabber jabber-icq adsl squid
- portsentry prelude nessusd junkbuster radvd cddbp ippl iptoip jail.init) ],
- N("File sharing") => [ qw(nfs-common nfs-server nfslock smb nettalk netfs mcserv autofs amd
- venus.init auth2.init codasrv.init update.init swat) ],
- N("System") => [ qw(usb usbd pcmcia irda xinetd inetd kudzu harddrake apmd sound network xfs
- alsa functions halt kheader killall mandrake_everytime mandrake_firstime
- random rawdevices single keytable syslog crond medusa-init portmap rpcbind acon
- anacron atd gpm psacct wine acpid numlock jserver sensors mosix bpowerd bpowerfail
- fcron powertweak.init ups syslog-ng cvs apcupsd) ],
- N("Remote Administration") => [ qw(sshd telnetd telnet rsh rlogin rexec webmin cfd heartbeat ldirectord
- iplog mon vncserver netsaint olympusd drakxtools_http) ],
-# N("Network Client") => [ qw(ypbind nscd arpwatch fetchmail dnrd_rc diald rsync) ],
+ N("Printing") => [ qw(cups cupslpd cups-lpd hpoj lpd lpr oki4daemon) ],
+
+ # FIXME: split part of 'Internet' into 'Security' or 'Firewall'?
+ N("Internet") => [ qw(adsl boa cddbp ftp httpd ibod ip6tables ippl iptables iptoip ipvsadm
+ isdn4linux jabber jabber-icq jail.init junkbuster mandi nessusd pftp portsentry
+ prelude proftpd proftpd-xinetd pure-ftpd ipsec radvd roxen rsyncd shorewall shorewall6 squid
+ tftp) ],
+
+ N("_: Keep these entry short\nNetworking") => [ qw(ModemManager NetworkManager NetworkManager-dispatcher NetworkManager-wait-online
+ arp-ethers network network-auth network-up resolvconf systemd-networkd systemd-resolved) ],
+
+ N("System") => [ qw(acon acpid alsa anacron apcupsd apmd atd bpowerd bpowerfail cpupower crond cvs dm fcron functions
+ gpm halt harddrake inetd irda jserver keytable kheader killall mageia_everytime
+ mandrake_firstime mdadm messagebus microcode_ctl mga-bg-res netconsole numlock partmon
+ pcmcia portmap psacct
+ random rawdevices rpcbind rtkit-daemon sensors single sound spice-vdagentd
+ syslog syslog-ng systemd-journal-upload systemd-timesyncd ups wine xfs xinetd) ],
+
+ N("Remote Administration") => [ qw(cfd drakxtools_http heartbeat iplog ldirectord mon netsaint olympusd rexec
+ rlogin rsh sshd telnet telnetd vncserver webmin) ],
+
+# N("Network Client") => [ qw(arpwatch diald dnrd_rc fetchmail nscd rsync ypbind) ],
# N("Network Server") => [ qw(named bootparamd ntpd xntpd chronyd postfix sendmail
# imap imaps ipop2 ipop3 pop3s routed yppasswdd ypserv ldap dhcpd dhcrelay
# hylafax innd identd rstatd rusersd rwalld rwhod gated
@@ -155,8 +207,13 @@ sub ask_ {
node_state => sub { $services{$_[0]} ? 'selected' : 'unselected' },
build_tree => sub {
my ($add_node, $flat) = @_;
+ # sort existing services by category, putting "Other" at end
+ my @srvs = grep { $services{$_} } map { @{$root_services{$_}} }
+ sort { $a cmp $b } keys %root_services;
+ # put "Others" last:
+ push @srvs, difference2([ keys %services ], \@srvs);
$add_node->($_, !$flat && ($services_root{$_} || N("Other")))
- foreach sort keys %services;
+ foreach @srvs;
},
grep_unselected => sub { grep { !$services{$_} } @_ },
toggle_nodes => sub {
@@ -168,15 +225,13 @@ sub ask_ {
}
},
get_status => sub {
- N("Services: %d activated for %d registered",
+ N("%d activated for %d registered",
scalar(grep { $_ } values %services),
scalar(values %services));
},
get_info => sub { formatLines(description($_[0])) },
interactive_help => sub {
- interactive::gtk::display_help($in,
- { interactive_help_id =>
- 'misc-params#drakxid-configureServices' }, $::main_window) },
+ interactive::gtk::display_help($in, { interactive_help_id => 'configureServices' }) },
}) or return $l, $on_services; #- no change on cancel.
[ grep { $services{$_} } @$l ];
}
@@ -184,47 +239,34 @@ sub ask_ {
sub ask_standalone_gtk {
my ($_in) = @_;
my ($l, $on_services) = services();
- my @xinetd_services = map { $_->[0] } @{(services_raw())[1]};
-
- require ugtk2;
- ugtk2->import(qw(:wrappers :create));
-
- my $W = ugtk2->new(N("Services"));
- my ($x, $y, $w_popup);
- my $nopop = sub { $w_popup and $w_popup->destroy; undef $w_popup };
- my $display = sub {
- my ($text) = @_;
- $nopop->();
- gtkshow(gtkadd($w_popup = Gtk2::Window->new('popup'),
- gtksignal_connect(gtkadd(Gtk2::EventBox->new,
- gtkadd(gtkset_shadow_type(Gtk2::Frame->new, 'etched_out'),
- gtkset_justify(Gtk2::Label->new($text), 'left'))),
- button_press_event => sub { $nopop->() }
- )))->move($x, $y) if $text;
- };
+ my @xinetd_services = map { $_->[0] } xinetd_services();
+
+ require ugtk3;
+ ugtk3->import(qw(:wrappers :create));
+
+ my $W = ugtk3->new(N("Services"));
my $update_service = sub {
my ($service, $label) = @_;
- my $started = -e "/var/lock/subsys/$service";
+ my $started = is_service_running($service);
$label->set_label($started ? N("running") : N("stopped"));
};
- my $b = Gtk2::EventBox->new;
- $b->set_events('pointer_motion_mask');
+ my $b = Gtk3::EventBox->new;
+ $b->set_events(${ Gtk3::Gdk::EventMask->new("pointer_motion_mask") });
gtkadd($W->{window}, gtkadd($b, gtkpack_($W->create_box_with_title,
- 0, mygtk2::gtknew('Title1', label => N("Services and daemons")),
+ 0, mygtk3::gtknew('Title1', label => N("Services and daemons")),
1, gtkset_size_request(create_scrolled_window(create_packtable({ col_spacings => 10, row_spacings => 3 },
map {
my $service = $_;
my $is_xinetd_service = member($service, @xinetd_services);
my $infos = warp_text(description($_), 40);
$infos ||= N("No additional information\nabout this service, sorry.");
- my $label = gtkset_justify(Gtk2::Label->new, 'left');
+ my $label = gtkset_justify(Gtk3::Label->new, 'left');
$update_service->($service, $label) if !$is_xinetd_service;
- [ gtkpack__(Gtk2::HBox->new(0,0), $_),
- gtkpack__(Gtk2::HBox->new(0,0), $label),
- gtkpack__(Gtk2::HBox->new(0,0), gtksignal_connect(Gtk2::Button->new(N("Info")), clicked => sub { $display->($infos) })),
+ [ gtkpack__(Gtk3::HBox->new(0,0), gtkset_tip(Gtk3::Label->new($_), $infos)),
+ gtkpack__(Gtk3::HBox->new(0,0), $label),
- gtkpack__(Gtk2::HBox->new(0,0), gtkset_active(gtksignal_connect(
- Gtk2::CheckButton->new($is_xinetd_service ? N("Start when requested") : N("On boot")),
+ gtkpack__(Gtk3::HBox->new(0,0), gtkset_active(gtksignal_connect(
+ Gtk3::CheckButton->new($is_xinetd_service ? N("Start when requested") : N("On boot")),
clicked => sub { if ($_[0]->get_active) {
push @$on_services, $service if !member($service, @$on_services);
} else {
@@ -232,27 +274,19 @@ sub ask_standalone_gtk {
} }), member($service, @$on_services))),
map {
my $a = $_;
- gtkpack__(Gtk2::HBox->new(0,0), gtksignal_connect(Gtk2::Button->new(translate($a)),
+ gtkpack__(Gtk3::HBox->new(0,0), gtksignal_connect(Gtk3::Button->new(translate($a)),
clicked => sub {
my $action = $a eq "Start" ? 'restart' : 'stop';
- log::explanations(qq(GP_LANG="UTF-8" service $service $action));
- # as we need the output in UTF-8, force it
- local $_ = `GP_LANG="UTF-8" service $service $action 2>&1`; s/\033\[[^mG]*[mG]//g;
- c::set_tagged_utf8($_);
+ _run_action($service, $action);
$update_service->($service, $label);
- $display->($_);
})) if !$is_xinetd_service;
} (N_("Start"), N_("Stop"))
];
}
@$l), [ $::isEmbedded ? 'automatic' : 'never', 'automatic' ]), -1, $::isEmbedded ? -1 : 400),
- 0, gtkpack(gtkset_border_width(Gtk2::HBox->new(0,0),5), $W->create_okcancel)
+ 0, gtkpack(gtkset_border_width(Gtk3::HBox->new(0,0),5), $W->create_okcancel)
))
);
- $b->signal_connect(motion_notify_event => sub { my ($w, $e) = @_;
- my ($ox, $oy) = $w->window->get_origin;
- $x = $e->x+$ox; $y = $e->y+$oy });
- $b->signal_connect(button_press_event => sub { $nopop->() });
$::isEmbedded and gtkflush();
$W->main or return;
$on_services;
@@ -265,17 +299,38 @@ sub ask {
sub _set_service {
my ($service, $enable) = @_;
- my $script = "/etc/rc.d/init.d/$service";
- run_program::rooted($::prefix, "chkconfig", $enable ? "--add" : "--del", $service);
- #- FIXME: handle services with no chkconfig line and with no Default-Start levels in LSB header
- if ($enable && cat_("$::prefix$script") =~ /^#\s+chkconfig:\s+-/m) {
- run_program::rooted($::prefix, "chkconfig", "--level", "35", $service, "on");
+
+ my @xinetd_services = map { $_->[0] } xinetd_services();
+
+ # General Note: We use --no-reload here as this code is sometimes triggered
+ # from code at boot and reloading systemd during boot is generally a bit
+ # racy just now it seems.
+ if (member($service, @xinetd_services)) {
+ run_program::rooted($::prefix, "chkconfig", "--no-reload", $enable ? "--add" : "--del", $service); # Probably still a bug here as xinet support in chkconfig shells out to /sbin/service....
+ } elsif (running_systemd() || has_systemd()) {
+ my $unit_name = _unit_name($service);
+ # systemctl rejects any symlinked units. You have to enabled the real file
+ if (-l "/lib/systemd/system/$unit_name") {
+ $unit_name = basename(readlink("/lib/systemd/system/$unit_name"));
+ }
+ run_program::rooted($::prefix, "/bin/systemctl", $enable ? "enable" : "disable", "--no-reload", $unit_name);
+ } else {
+ my $script = "/etc/rc.d/init.d/$service";
+ run_program::rooted($::prefix, "chkconfig", "--no-reload", $enable ? "--add" : "--del", $service);
+ #- FIXME: handle services with no chkconfig line and with no Default-Start levels in LSB header
+ if ($enable && cat_("$::prefix$script") =~ /^#\s+chkconfig:\s+-/m) {
+ run_program::rooted($::prefix, "chkconfig", "--no-reload", "--level", "35", $service, "on");
+ }
}
}
sub _run_action {
my ($service, $action) = @_;
- run_program::rooted($::prefix, "/etc/rc.d/init.d/$service", $action);
+ if (running_systemd()) {
+ run_program::rooted($::prefix, '/bin/systemctl', '--no-block', $action, _unit_name($service));
+ } else {
+ run_program::rooted($::prefix, "/etc/rc.d/init.d/$service", $action);
+ }
}
sub doit {
@@ -296,43 +351,114 @@ sub doit {
}
}
-sub services_raw() {
+sub running_systemd() {
+ -d '/run/systemd/system';
+}
+
+sub has_systemd() {
+ run_program::rooted($::prefix, '/bin/rpm', '-q', '--qf', '', 'systemd');
+}
+
+sub xinetd_services() {
local $ENV{LANGUAGE} = 'C';
- my (@services, @xinetd_services);
- foreach (run_program::rooted_get_stdout($::prefix, '/sbin/chkconfig', '--list')) {
- if (my ($xinetd_name, $on_off) = m!^\t(\S+):\s*(on|off)!) {
- push @xinetd_services, [ $xinetd_name, $on_off eq 'on' ];
- } elsif (my ($name, $l) = m!^(\S+)\s+(0:(on|off).*)!) {
- push @services, [ $name, [ $l =~ /(\d+):on/g ] ];
- }
+ my @xinetd_services;
+ foreach (run_program::rooted_get_stdout($::prefix, '/sbin/chkconfig', '--list', '--type', 'xinetd')) {
+ if (my ($xinetd_name, $on_off) = m!^\t(\S+):\s*(on|off)!) {
+ push @xinetd_services, [ $xinetd_name, $on_off eq 'on' ];
+ }
}
- \@services, \@xinetd_services;
+ @xinetd_services;
}
-#- returns:
+sub _systemd_services() {
+ local $ENV{LANGUAGE} = 'C';
+ my @services;
+ log::explanations("Detected systemd. Using systemctl introspection.");
+ foreach (run_program::rooted_get_stdout($::prefix, '/bin/systemctl', '--no-legend', '--no-pager', '--full', 'list-unit-files')) {
+ my ($name, $type) = m!^(\S+)\.(service|socket|timer)\s+(enabled|disabled|generated)!;
+ if ($name) {
+ my $unit_name = "$name.$type";
+ # We only look at non-template, non-linked service files in /lib
+ # We also check for any non-masked sysvinit files as these are
+ # also handled by systemd
+ if ($name !~ /.*\@$/g && (-e "$::prefix/lib/systemd/system/$unit_name" or -e "$::prefix/etc/rc.d/init.d/$name") && ! -l "$::prefix/lib/systemd/system/$unit_name") {
+ push @services, [ _list_name($name, $type), !!run_program::rooted($::prefix, '/bin/systemctl', '--quiet', 'is-enabled', "$unit_name") ];
+ }
+ }
+ }
+ @services;
+}
+
+sub _legacy_services() {
+ local $ENV{LANGUAGE} = 'C';
+ my @services;
+ my $has_systemd = has_systemd();
+ if ($has_systemd) {
+ # The system is not using systemd but will be at next boot. This
+ # is typically the case in the installer. In this mode we must read
+ # as much as is practicable from the native systemd unit files and
+ # combine that with information from chkconfig regarding legacy sysvinit
+ # scripts (which systemd will parse and include when running)
+ log::explanations("Detected systemd installed. Using systemctl+chkconfig introspection.");
+ @services = _systemd_services();
+ } else {
+ log::explanations("Could not detect systemd. Using chkconfig service introspection.");
+ }
+
+ # Regardless of whether we expect to use systemd on next boot, we still
+ # need to instrospect information about non-systemd native services.
+ my $runlevel;
+ my $on_off;
+ if (!$::isInstall) {
+ $runlevel = (split " ", `/sbin/runlevel`)[1];
+ }
+ foreach (run_program::rooted_get_stdout($::prefix, '/sbin/chkconfig', '--list', '--type', 'sysv')) {
+ if (my ($name, $l) = m!^(\S+)\s+(0:(on|off).*)!) {
+ # If we expect to use systemd (i.e. installer) only show those
+ # sysvinit scripts which are not masked by a native systemd unit.
+ my $has_systemd_unit = systemd_unit_exists($name);
+ if (!$has_systemd || !$has_systemd_unit) {
+ if ($::isInstall) {
+ $on_off = $l =~ /\d+:on/g;
+ } else {
+ $on_off = $l =~ /$runlevel:on/g;
+ }
+ push @services, [ $name, $on_off ];
+ }
+ }
+ }
+ @services;
+}
+
+#- returns:
#--- the listref of installed services
#--- the listref of "on" services
sub services() {
- my ($services, $xinetd_services) = services_raw();
- my @l = @$xinetd_services;
- if ($::isInstall) {
- push @l, map { [ $_->[0], @{$_->[1]} > 0 ] } @$services;
+ my @services;
+ if (running_systemd()) {
+ @services = _systemd_services();
} else {
- my $runlevel = (split " ", `/sbin/runlevel`)[1];
- push @l, map { [ $_->[0], member($runlevel, @{$_->[1]}) ] } @$services;
+ @services = _legacy_services();
}
+
+ my @l = xinetd_services();
+ push @l, @services;
@l = sort { $a->[0] cmp $b->[0] } @l;
[ map { $_->[0] } @l ], [ map { $_->[0] } grep { $_->[1] } @l ];
}
-
-
+sub systemd_unit_exists {
+ my ($name) = @_;
+ my $unit_name = _unit_name($name);
+ # we test with -l as symlinks are not valid when the system is chrooted:
+ -e "$::prefix/lib/systemd/system/$unit_name" or -l "$::prefix/lib/systemd/system/$unit_name";
+}
sub service_exists {
my ($service) = @_;
- -x "$::prefix/etc/rc.d/init.d/$service";
+ -x "$::prefix/etc/rc.d/init.d/$service" or systemd_unit_exists($service);
}
sub restart ($) {
@@ -374,7 +500,11 @@ sub is_service_running ($) {
my ($service) = @_;
# Exit silently if the service is not installed
service_exists($service) or return 1;
- run_program::rooted($::prefix, "/etc/rc.d/init.d/$service", '>', '/dev/null', '2>', '/dev/null', "status");
+ if (running_systemd()) {
+ run_program::rooted($::prefix, '/bin/systemctl', '--quiet', 'is-active', _unit_name($service));
+ } else {
+ run_program::rooted($::prefix, '/sbin/service', $service, 'status');
+ }
}
sub starts_on_boot {
diff --git a/perl-install/share/base.png b/perl-install/share/base.png
index 2b0729431..5a7c7a2db 100644
--- a/perl-install/share/base.png
+++ b/perl-install/share/base.png
Binary files differ
diff --git a/perl-install/share/diskdrake.css b/perl-install/share/diskdrake.css
new file mode 100644
index 000000000..5bcb13bd5
--- /dev/null
+++ b/perl-install/share/diskdrake.css
@@ -0,0 +1,92 @@
+/* FIXME: to be inherited by all other styles */
+#PART* {
+ /* FIXME: replace by appropriate font:
+ fontset = "-*-*-medium-r-normal-*-8-*-*-*-*-*-iso8859-1,*-r-*"
+ => font: "8" */
+ padding: 1px;
+ color: #000000;
+}
+
+#PART_ext2, #PART_ext3, #PART_ext4 {
+ background-color: #ff0000;
+ background-image: none;
+ padding: 1px;
+}
+#PART_ext2:hover:hover, #PART_ext3:hover, #PART_ext4:hover {
+ background-color: #e60000;
+ padding: 1px;
+}
+#PART_ext2:active:active, #PART_ext3:active, #PART_ext4:active {
+ background-color: #e60000;
+ padding: 1px;
+}
+
+#PART_xfs {
+ background-color: #ff9900;
+ background-image: none;
+ padding: 1px;
+}
+#PART_xfs:hover {
+ background-color: #e66600;
+ padding: 1px;
+}
+#PART_xfs:active {
+ background-color: #e69900;
+ padding: 1px;
+}
+
+#PART_swap {
+ background-color: #66cc00;
+ background-image: none;
+ padding: 1px;
+}
+#PART_swap:active, #PART_swap:hover {
+ background-color: #66b700;
+ padding: 1px;
+}
+
+#PART_vfat, #PART_ntfs, #PART_ntfs-3g, #PART_exfat {
+ background-color: #00b7ff;
+ background-image: none;
+ padding: 1px;
+}
+#PART_vfat:hover, #PART_ntfs:hover, #PART_ntfs-3g:hover, #PART_exfat:hover {
+ background-color: #0099e6;
+ padding: 1px;
+}
+#PART_vfat:active, #PART_ntfs:active, #PART_ntfs-3g:active, #PART_exfat:active {
+ background-color: #0099e6;
+ padding: 1px;
+}
+
+#PART_empty {
+ background-color: #ffffff;
+ background-image: none;
+ padding: 1px;
+}
+#PART_empty:hover, #PART_empty:active {
+ background-color: #e6e6e6;
+ padding: 1px;
+}
+
+#PART_other {
+ background-color: #929eab;
+ background-image: none;
+ padding: 1px;
+}
+
+#PART_new {
+ background-color: #1f429c;
+ background-image: none;
+ color: #ffffff;
+ padding: 1px;
+}
+
+.pane-separator {
+ background-color: white;
+ background-image: none;
+ border-style: none solid;
+ border-color: #a1a1a1;
+ border-width: 1px;
+}
+
diff --git a/perl-install/share/diskdrake.rc b/perl-install/share/diskdrake.rc
deleted file mode 100644
index 29c830f88..000000000
--- a/perl-install/share/diskdrake.rc
+++ /dev/null
@@ -1,55 +0,0 @@
-style "font"
-{
- fontset = "-*-*-medium-r-normal-*-8-*-*-*-*-*-iso8859-1,*-r-*"
- xthickness = 1
- ythickness = 1
-}
-
-style "red" = "font"
-{
- bg[NORMAL] = { 1.0, 0, 0 }
- bg[ACTIVE] = { 0.9, 0, 0 }
- bg[PRELIGHT] = { 0.9, 0, 0 }
-}
-style "orange" = "font"
-{
- bg[NORMAL] = { 1.0, 0.6, 0 }
- bg[ACTIVE] = { 0.9, 0.6, 0 }
- bg[PRELIGHT] = { 0.9, 0.4, 0 }
-}
-style "green" = "font"
-{
- bg[NORMAL] = { 0.4, 0.8, 0 }
- bg[ACTIVE] = { 0.4, 0.7, 0 }
- bg[PRELIGHT] = { 0.4, 0.7, 0 }
- fg[NORMAL] = { 0, 0, 0 }
-}
-style "blue" = "font"
-{
- bg[NORMAL] = { 0, 0.7, 1.0 }
- bg[ACTIVE] = { 0, 0.6, 0.9 }
- bg[PRELIGHT] = { 0, 0.6, 0.9 }
-}
-style "white" = "font"
-{
- bg[NORMAL] = { 1.0, 1.0, 1.0 }
- bg[ACTIVE] = { 0.9, 0.9, 0.9 }
- bg[PRELIGHT] = { 0.9, 0.9, 0.9 }
- fg[NORMAL] = { 0, 0, 0 }
-}
-style "gray" = "font"
-{
- bg[NORMAL] = { 0.57, 0.62, 0.67 }
- bg[ACTIVE] = { 0.57, 0.62, 0.57 }
- bg[PRELIGHT] = { 0.57, 0.62, 0.57 }
- fg[NORMAL] = { 0, 0, 0 }
-}
-
-widget "*PART_ext3" style "red"
-widget "*PART_ext4" style "red"
-widget "*PART_xfs" style "orange"
-widget "*PART_swap" style "green"
-widget "*PART_vfat" style "blue"
-widget "*PART_ntfs*" style "blue"
-widget "*PART_empty" style "white"
-widget "*PART_other" style "gray"
diff --git a/perl-install/share/floppy.png b/perl-install/share/floppy.png
index 2265e6ec6..c8e5d3ccd 100644
--- a/perl-install/share/floppy.png
+++ b/perl-install/share/floppy.png
Binary files differ
diff --git a/perl-install/share/ftin.png b/perl-install/share/ftin.png
index 3cec3c194..d6e28a4d6 100644
--- a/perl-install/share/ftin.png
+++ b/perl-install/share/ftin.png
Binary files differ
diff --git a/perl-install/share/ftout.png b/perl-install/share/ftout.png
index d821716eb..f71764034 100644
--- a/perl-install/share/ftout.png
+++ b/perl-install/share/ftout.png
Binary files differ
diff --git a/perl-install/share/help.png b/perl-install/share/help.png
index ddebe33ad..5ef2c8bfd 100644
--- a/perl-install/share/help.png
+++ b/perl-install/share/help.png
Binary files differ
diff --git a/perl-install/share/installed.png b/perl-install/share/installed.png
index fc0ffbc84..edc85323b 100644
--- a/perl-install/share/installed.png
+++ b/perl-install/share/installed.png
Binary files differ
diff --git a/perl-install/share/left-background-filler.png b/perl-install/share/left-background-filler.png
index 264dd4966..1ce098434 100644
--- a/perl-install/share/left-background-filler.png
+++ b/perl-install/share/left-background-filler.png
Binary files differ
diff --git a/perl-install/share/po/.gitignore b/perl-install/share/po/.gitignore
new file mode 100644
index 000000000..cd1f2c943
--- /dev/null
+++ b/perl-install/share/po/.gitignore
@@ -0,0 +1 @@
+*.mo
diff --git a/perl-install/share/po/.tx/config b/perl-install/share/po/.tx/config
new file mode 100644
index 000000000..acc8539a6
--- /dev/null
+++ b/perl-install/share/po/.tx/config
@@ -0,0 +1,8 @@
+[main]
+host = https://www.transifex.com
+
+[o:MageiaLinux:p:mageia:r:drakx_share]
+file_filter = <lang>.po
+source_file = libDrakX.pot
+source_lang = en
+type = PO
diff --git a/perl-install/share/po/Makefile b/perl-install/share/po/Makefile
index 52f2c0dc9..8dab19a79 100644
--- a/perl-install/share/po/Makefile
+++ b/perl-install/share/po/Makefile
@@ -37,6 +37,9 @@ install: $(MOFILES)
clean:
@rm -rf *.mo $(POFILES:%=%t)
+check:
+ for i in *.po; do msgfmt -c $$i -o /dev/null; done
+
verif:
perl -ne '/^\s*#/ or $$i += my @l = /\b__?\(/g; END { print "$$i\n" }' $(PMSFILES_HERE)
perl -ne '$$i += my @l = /\.c:/g; END { print "$$i\n" }' DrakX.pot
diff --git a/perl-install/share/po/af.po b/perl-install/share/po/af.po
index cfd4b7f3e..c72b2201c 100644
--- a/perl-install/share/po/af.po
+++ b/perl-install/share/po/af.po
@@ -1,39 +1,40 @@
-# translation of DrakX-af21-09.po to Afrikaans
-# translation of DrakX-af.po to Afrikaans
-# KTranslator Generated File
-# KTranslator Generated File
-# Copyright (C) 2000,2003, 2004 Free Software Foundation, Inc.
-# Schalk W. Cronjé <schalkc@ntaba.co.za>, 2000.
-# Dirk van der Walt <mandrake@webmail.co.za>, 2003.
-# Dirk van der Walt <dirkvanderwalt@webmail.co.za>, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
-msgid ""
-msgstr ""
-"Project-Id-Version: DrakX-af\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2005-04-21 17:33+0200\n"
-"Last-Translator: Dirk van der Walt <dirkvanderwalt@webmail.co.za>\n"
-"Language-Team: Afrikaans\n"
+# Translators:
+# Dirk van der Walt <dirkvanderwalt@webmail.co.za>, 2004
+# Dirk van der Walt <mandrake@webmail.co.za>, 2003
+# F Wolff <friedel@translate.org.za>, 2019
+# Schalk W. Cronjé <schalkc@ntaba.co.za>, 2000
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2019-06-27 17:59+0000\n"
+"Last-Translator: F Wolff <friedel@translate.org.za>\n"
+"Language-Team: Afrikaans (http://www.transifex.com/MageiaLinux/mageia/"
+"language/af/)\n"
+"Language: af\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.0.2\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "Wag asb."
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "Besig met installasie van herlaaistelsel"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -44,35 +45,17 @@ msgid ""
"Assign a new Volume ID?"
msgstr ""
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr "Installasie van herlaaiprogram het gefaal a.g.v. hierdie fout: "
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"U mag moontlik u 'Open Firmware' selflaai-toestel verander om\n"
-" die herlaaistelsel te aktiveer. Indien u nie die herlaaistelsel-porteks \n"
-" tydens seklflaai sien nie, hou die \"Command-Option-O-F\" in\n"
-" gedurende selflaai en tik die volgende in:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-"Tik daarna 'shut-down' in\n"
-"U behoort die herlaaistelsel-porteks met die volgende selflaai te sien."
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
@@ -82,546 +65,596 @@ msgstr ""
"\n"
"Vanaf watter hardeyskyf geskied die selflaai?"
-#: any.pm:346
-#, fuzzy, c-format
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr ""
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Waar wil u die herlaaistelsel installeer"
+
+#: any.pm:365
+#, c-format
msgid "First sector (MBR) of drive %s"
-msgstr "Eerste sektor van skyf (MBR)"
+msgstr ""
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "Eerste sektor van skyf (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr "Eerste sektor van die 'root'-partisie"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "Op Disket"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
-msgstr "Mis hierdie stap"
-
-#: any.pm:358
-#, fuzzy, c-format
-msgid "Bootloader Installation"
-msgstr "Besig met installasie van herlaaistelsel"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Waar wil u die herlaaistelsel installeer"
+msgstr "Slaan oor"
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "Herlaaistylkonfigurasie"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr "EFI-stelselpartisie"
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
-msgstr "Herlaaistelsel hoofopsies"
+msgstr "Hoofkeuses van herlaaistelsel"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "Herlaaistelsel"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "Herlaaistelsel om te gebruik"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Herlaaitoestel"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
-msgstr ""
+msgstr "Hoofkeuses"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "Wagperiode voor verstekstelsel gelaai word"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
-msgstr "Bekragtig ACPI"
+msgstr "Aktiveer ACPI"
-#: any.pm:411
-#, fuzzy, c-format
+#: any.pm:432
+#, c-format
msgid "Enable SMP"
-msgstr "Bekragtig ACPI"
+msgstr "Aktiveer SMP"
-#: any.pm:412
-#, fuzzy, c-format
+#: any.pm:433
+#, c-format
msgid "Enable APIC"
-msgstr "Bekragtig ACPI"
+msgstr "Aktiveer APIC"
-#: any.pm:413
-#, fuzzy, c-format
+#: any.pm:435
+#, c-format
msgid "Enable Local APIC"
-msgstr "Bekragtig ACPI"
+msgstr "Aktiveer plaaslike APIC"
+
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Sekuriteit"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Wagwoord"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Die wagwoorde stem nie ooreen nie."
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Probeer asb. weer"
-#: any.pm:418
-#, fuzzy, c-format
-msgid "You can not use a password with %s"
-msgstr "U kan nie 'n lêerstelsel met enkripsie vir hegpunt %s gebruik nie."
+#: any.pm:442
+#, c-format
+msgid "You cannot use a password with %s"
+msgstr ""
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Wagwoord (weer)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
+#, c-format
+msgid "Bootloader Configuration"
+msgstr ""
+
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "Installasie het gefaal!"
+
+#: any.pm:533
#, c-format
-msgid "Restrict command line options"
-msgstr "Beperk instruksielyn-opsies"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr ""
-#: any.pm:422
+#: any.pm:535 any.pm:794
#, c-format
-msgid "restrict"
-msgstr "beperk"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
-#: any.pm:423
+#: any.pm:537
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
msgstr ""
-"Opsie ``Beperk instruksielynopsies'' kan nie sonder wagwoord gebruikword nie"
-#: any.pm:425
+#: any.pm:539
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "Maak /tmp skoon met elke herlaai"
+msgid "Background"
+msgstr ""
-#: any.pm:434
+#: any.pm:544
#, c-format
-msgid "Init Message"
-msgstr "Beginboodskap"
+msgid "rEFInd banner"
+msgstr ""
-#: any.pm:436
+#: any.pm:545
+#, fuzzy, c-format
+msgid "Mageia theme"
+msgstr "Mageia"
+
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Open Firmware Delay"
-msgstr "Open Firmware Delay"
+msgid "Custom"
+msgstr "Aangepaste"
-#: any.pm:437
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "Geen deling"
+
+#: any.pm:565
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Tydsbeperking vir stelselkernlaai"
+msgid "Scale to fit"
+msgstr ""
-#: any.pm:438
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable CD Boot?"
-msgstr "Laat CD-herlaai toe?"
+msgid "Label"
+msgstr "Naam"
-#: any.pm:439
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Enable OF Boot?"
-msgstr "Laat OF-herlaai toe?"
+msgid "Append"
+msgstr "Aanlas"
-#: any.pm:440
+#: any.pm:612 any.pm:624 any.pm:781
#, c-format
-msgid "Default OS?"
-msgstr "Verstek bedryfstelsel?"
+msgid "Video mode"
+msgstr "Videomodus"
-#: any.pm:513
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "Beeld"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "'Root'"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "Aanlas"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr ""
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Videomodus"
+msgid "Requires password to boot"
+msgstr ""
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
-#, fuzzy, c-format
-msgid "Network profile"
-msgstr "Netwerkkoppelvlak"
-
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
+#: any.pm:626
#, c-format
-msgid "Label"
-msgstr "Naam"
+msgid "Network profile"
+msgstr "Netwerkprofiel"
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Verstek"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "Geen video"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "Leë etiket word nie toegelaat nie"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "U moet 'n kernel-beeld spesifiseer"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
-msgstr "U moet 'n 'root-partisie spesifiseer"
+msgstr "U moet 'n 'root'-partisie spesifiseer"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
-msgstr "Hierdie etiket is alreeds in gebruik"
+msgstr "Hierdie etiket is reeds in gebruik"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Watter tipe inskrywing wil u byvoeg?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
+#: any.pm:672
#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Ander bedryfstelsel (SunOS...)"
+msgid "Other OS (Windows...)"
+msgstr "Ander bedryfstelsel (Windows...)"
-#: any.pm:574
+#: any.pm:732
#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Ander bedryfstelsel (MacOS...)"
+msgid ""
+"Here are the entries on your boot menu so far.\n"
+"You can create additional entries or change the existing ones."
+msgstr ""
+"Hier is die huidige inskrywings.\n"
+"U kan nog byvoeg of bestaandes wysig."
-#: any.pm:574
+#: any.pm:783
#, c-format
-msgid "Other OS (Windows...)"
-msgstr "Ander bedryfstelsel (Windows...)"
+msgid "Do not touch ESP or MBR"
+msgstr "Moenie Esp of MBR aanraak nie"
-#: any.pm:621
-#, fuzzy, c-format
-msgid "Bootloader Configuration"
-msgstr "Herlaaistylkonfigurasie"
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Waarskuwing"
-#: any.pm:622
+#: any.pm:786
#, c-format
msgid ""
-"Here are the entries on your boot menu so far.\n"
-"You can create additional entries or change the existing ones."
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
msgstr ""
-"Hier is die huidige inskrywings\n"
-"U kan byvoeg or verwyder soos nodig."
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr ""
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "toegang na X-programme"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "toegang tot rpm-nutsprogramme"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "laat \"su\" toe"
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
-msgstr "toegang tot administratiewe-lêers"
+msgstr "toegang tot administratiewe lêers"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "toegang na netwerk-nutsprogramme"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "toegang na kompilasie-gereedskap"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(%s alreeds bygevoeg)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
-msgstr "Gee asb. 'n gebruikerskode"
+msgstr "Gee asb. 'n gebruikernaam"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
msgstr ""
-"Die gebruikernaam mag alleenlik uit kleinletter, nommers, '-' en '_' bestaan"
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "Hierdie naam is te lank"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
-msgstr "Hierdie genruikerskode bestaan alreeds"
+msgstr "Hierdie gebruikernaam bestaan reeds"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
-msgstr "Gebruiker ID"
+msgstr "Gebruiker-ID"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
-msgstr "Groep ID"
+msgstr "Groep-ID"
-#: any.pm:817
-#, fuzzy, c-format
+#: any.pm:1086
+#, c-format
msgid "%s must be a number"
-msgstr "Opsie %s moet 'n nommer wees!"
+msgstr "%s moet 'n getal wees"
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
-msgstr ""
+msgid "%s should be above 1000. Accept anyway?"
+msgstr "%s moet groter as 1000 wees. In elk geval aanvaar?"
-#: any.pm:822
-#, fuzzy, c-format
+#: any.pm:1091
+#, c-format
msgid "User management"
-msgstr "Gebruikernaam"
+msgstr "Gebruikerbestuur"
-#: any.pm:828 authentication.pm:237
-#, fuzzy, c-format
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr "Aktiveer rekening vir gaste"
+
+#: any.pm:1099 authentication.pm:236
+#, c-format
msgid "Set administrator (root) password"
-msgstr "Kies 'root' se wagwoord"
+msgstr "Stel administrateurwagwoord (root)"
-#: any.pm:833
-#, fuzzy, c-format
+#: any.pm:1105
+#, c-format
msgid "Enter a user"
-msgstr ""
-"Tik 'n gebruiker in\n"
-"%s"
+msgstr "Gee 'n gebruiker"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Ikoon"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Regte naam"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
-msgstr "Aanteken naam"
+msgstr "Aanmeldnaam"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Dop"
-#: any.pm:884
-#, fuzzy, c-format
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr "Addisionele groepe"
+
+#: any.pm:1181
+#, c-format
msgid "Please wait, adding media..."
-msgstr "wag asseblief gedurende 'ttmkfdir'..."
+msgstr "Net ’n oomblik, media word bygevoeg..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
-msgstr "Outo-inteken"
+msgstr "Outoaanmelding"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
-msgstr "Ek kan u rekenaar so opstel om een gebruiker outomaties in te teken."
+msgstr "Ek kan u rekenaar so opstel om een gebruiker outomaties aan te meld."
-#: any.pm:916
-#, fuzzy, c-format
+#: any.pm:1251
+#, c-format
msgid "Use this feature"
-msgstr "Wil u hierdie funksie gebruik?"
+msgstr "Gebruik hierdie funksionaliteit"
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
-msgstr "Kies die verstek gebruiker:"
+msgstr "Kies die verstekgebruiker:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "Kies die vensterbestuurder om te loop:"
-#: any.pm:929 any.pm:949 any.pm:1022
-#, fuzzy, c-format
+#: any.pm:1264 any.pm:1279 any.pm:1348
+#, c-format
msgid "Release Notes"
-msgstr "Vrystelling: "
+msgstr "Vrystellingsnotas"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Sluit af"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Lisensieooreenkoms"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Verlaat"
-#: any.pm:1017
-#, fuzzy, c-format
+#: any.pm:1343
+#, c-format
msgid "Do you accept this license ?"
-msgstr "Beskik u oor nog?"
+msgstr "Aanvaar u hierdie lisensie?"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Aanvaar"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Weier"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "Kies asb. 'n taal om te gebruik"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
-msgstr "U kan ander tale selekteer wat na installasie beskikbaar sal wees."
+msgstr ""
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr ""
+
+#: any.pm:1402
#, c-format
-msgid "Multi languages"
+msgid "Select Additional Languages"
msgstr ""
-#: any.pm:1087 any.pm:1119
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr ""
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "Alle tale"
-#: any.pm:1111
-#, fuzzy, c-format
+#: any.pm:1434
+#, c-format
msgid "Language choice"
-msgstr "selfdoen"
+msgstr "Taalkeuse"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "Land / Omgewing"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
msgstr "Kies asseblief u land"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "Hier is die volle lys van beskikbare lande"
-#: any.pm:1169
-#, fuzzy, c-format
+#: any.pm:1492
+#, c-format
msgid "Other Countries"
-msgstr "Ander poorte"
+msgstr "Ander lande"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Gevorderd"
-#: any.pm:1175
-#, fuzzy, c-format
+#: any.pm:1498
+#, c-format
msgid "Input method:"
-msgstr "Netwerkmetode:"
+msgstr ""
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Geen"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "Geen deling"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "Laat alle gebruikers toe"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Aangepaste"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -636,32 +669,32 @@ msgstr ""
"\n"
"\"Aangepaste\" laat toe vir per-gebruiker verstellings.\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
"Windows."
msgstr ""
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
"systems."
msgstr ""
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
msgstr "U kan uitvoer deur NFS of SMB te gebruik. Kies watter u wil gebruik."
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "Loods userdrake"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
@@ -671,58 +704,113 @@ msgstr ""
"U kan van 'userdrake' gebruik maak om gebruikers by heirdie\n"
"groep te voeg."
-#: any.pm:1421
-#, fuzzy, c-format
+#: any.pm:1768
+#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
-msgstr "U moet afteken en weer inteken alvorens veranderinge bekragtig word"
+msgstr ""
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr "U moet afteken en weer inteken alvorens veranderinge bekragtig word"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "Tydsone"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Wat is u tydsone?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr ""
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr ""
-#: any.pm:1490
-#, fuzzy, c-format
+#: any.pm:1837
+#, c-format
msgid "%s (hardware clock set to UTC)"
-msgstr "Hardewareklok gestel vir GMT"
+msgstr ""
-#: any.pm:1491
-#, fuzzy, c-format
+#: any.pm:1838
+#, c-format
msgid "%s (hardware clock set to local time)"
-msgstr "Hardewareklok gestel vir GMT"
+msgstr ""
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "NTP-bediener"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "Outo-tydsinkronisasie met NTP"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "URL van die spieëlwerf?"
+
+#: any.pm:1880
+#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "URL moet met ftp:// of http:// begin"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr "Kontak tans die %s-webwerf vir 'n lys van spieëlwerwe..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Kies 'n spieëlwerf waar die pakkette verkry kan word"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Kanselleer"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "Gebruik outospeuring"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "Spesifieer opsies"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "Herlaaistelsel"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -739,11 +827,11 @@ msgid "NIS"
msgstr "NIS"
#: authentication.pm:27
-#, fuzzy, c-format
+#, c-format
msgid "Smart Card"
-msgstr "Ethernetkaart"
+msgstr ""
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Windows-domein"
@@ -751,301 +839,297 @@ msgstr "Windows-domein"
#: authentication.pm:29
#, c-format
msgid "Kerberos 5"
-msgstr ""
+msgstr "Kerberos 5"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "Plaaslike lêer :"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
"consolidates certain types of information within your organization."
msgstr ""
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
"Service domain with a common password and group file."
msgstr ""
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Windows-domein:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
"a Windows domain."
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
-msgstr ""
+msgstr "Kerberos 5 :"
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
-#, fuzzy, c-format
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr "Benodig Domein-magtiging"
+msgstr ""
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "LDAP-bediener"
-#: authentication.pm:113 authentication.pm:168
-#, fuzzy, c-format
+#: authentication.pm:112 authentication.pm:167
+#, c-format
msgid "Base dn"
-msgstr "LDAP Basis-dn"
+msgstr ""
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr ""
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr ""
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr ""
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr ""
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
msgstr ""
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr ""
-#: authentication.pm:123 authentication.pm:175
-#, fuzzy, c-format
+#: authentication.pm:122 authentication.pm:174
+#, c-format
msgid "Bind Password "
-msgstr "Wagwoord"
+msgstr ""
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr ""
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "Wagwoord"
+msgstr ""
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "Groep ID"
+msgstr ""
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr ""
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "Regte naam"
+msgstr ""
-#: authentication.pm:148
-#, fuzzy, c-format
+#: authentication.pm:147
+#, c-format
msgid "KDCs Servers"
-msgstr "LDAP-bediener"
+msgstr ""
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr ""
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr ""
-#: authentication.pm:156
-#, fuzzy, c-format
+#: authentication.pm:155
+#, c-format
msgid "Use local file for users information"
-msgstr "Gebruik libsafe vir bedieners"
+msgstr ""
-#: authentication.pm:157
-#, fuzzy, c-format
-msgid "Use Ldap for users information"
-msgstr "Hardeskyfinligting"
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr ""
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr ""
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "NIS-domein"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "NIS-bediener"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "Domein"
+msgstr ""
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr ""
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "NIS-domein"
+msgstr "DNS-domein"
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "LDAP-bediener"
+msgstr ""
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Magtiging"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
-msgstr "Magtigings-metode"
+msgstr "Magtigingsmetode"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Geen wagwoord"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr "Hierdie wagwoord is te eenvoudig. (moet ten minste %d karakters bevat)"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "Kan nie uitsaai sonder 'n NIS-domein nie"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Kies lêer"
-#: authentication.pm:897
-#, fuzzy, c-format
+#: authentication.pm:882
+#, c-format
msgid "Domain Windows for authentication : "
-msgstr "Benodig Domein-magtiging"
+msgstr ""
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "Domein-administrarteur se naam"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Domein-administrarteur se Wagwoord"
-# NOTE: this message will be displayed at boot time; that is
-# only the ascii charset will be available on most machines
-# so use only 7bit for this message (and do transliteration or
-# leave it in English, as it is the best for your language)
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1060,42 +1144,47 @@ msgstr ""
"vir die verstekopsie.\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO met tekskieskaart"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr ""
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr ""
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr ""
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr ""
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr ""
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
-msgstr "SILO"
+msgid "U-Boot/Extlinux with text menu"
+msgstr ""
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "nie genoeg spasie in /boot nie"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "U kan nie die herlaaistelsel op 'n %s partisie installeer nie\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
@@ -1104,65 +1193,66 @@ msgstr ""
"U herlaaistelsel se konfigurasie moet opgedateer word omdat 'n partisie se "
"nommer verander het"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
"Die herlaaistelsel kan nie korrek geïnstalleer word nie. U moet in redding-"
"modus laai, kies dan \"%s\""
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
-msgstr "Her-installeer herlaaistelsel"
+msgstr "Herinstalleer herlaaistelsel"
-#: common.pm:142
-#, fuzzy, c-format
+#: common.pm:271
+#, c-format
msgid "B"
-msgstr "KB"
+msgstr ""
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "KB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "MB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "GB"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "TB"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr "%02d:%02d"
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d minute"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 minuut"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d sekondes"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr ""
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1171,22 +1261,23 @@ msgid ""
"configured as a WebDAV server). If you would like to add WebDAV mount\n"
"points, select \"New\"."
msgstr ""
-"'WebDAV' is 'n protokol wat u in staat stel om 'n web-bediener se lêergids\n"
-"(e) plaaslik te kan heg. (dit is nou indien die web-bediener opgestel\n"
-"is as 'n WebDAV-bediener). Indien u 'n 'WebDAV' hegpunt\n"
-"wil heg, kies \"Nuwe\"."
+"'WebDAV' is 'n protokol wat mens in staat stel om 'n webbediener se "
+"lêergids\n"
+"plaaslik te kan heg. (dit is nou indien die web-bediener opgestel\n"
+"is as 'n WebDAV-bediener). Indien u 'n WebDAV-hegpunt\n"
+"wil byvoeg, kies \"Nuwe\"."
#: diskdrake/dav.pm:25
#, c-format
msgid "New"
msgstr "Nuwe"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Ontheg"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Heg"
@@ -1196,43 +1287,44 @@ msgstr "Heg"
msgid "Server"
msgstr "Bediener"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Hegpunt"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Opsies"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Verwyder"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Klaar"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Fout"
@@ -1247,80 +1339,71 @@ msgstr "Voorsien asseblief die WebDAV-bediener se URL"
msgid "The URL must begin with http:// or https://"
msgstr "Die URL moet begin met http:// or https://"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Waarskuwing"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Wil u op hierdie knoppie klik?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr ""
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Bediener: "
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Hegpunt: "
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Opsies: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "Partisionering"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Lees noukeurig"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "Rugsteun u data eers asb."
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Verlaat"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Gaan voort"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Hulp"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1331,141 +1414,132 @@ msgstr ""
"Ek stel voor u verstel eers die grootte van dié partisie\n"
"(kliek daarop en kliek dan op \"Verstel Grootte\")"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "Kliek asb. op 'n partisie"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Detail"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "Geen hardeskywe kon gevind word nie"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Onbekend"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
-msgid "Ext3"
-msgstr "Verlaat"
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr "Ext4"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
msgid "XFS"
-msgstr "HFS"
+msgstr "XFS"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Ruilarea"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Ander"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Leeg"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Lêerstelsel-tipes:"
-#: diskdrake/hd_gtk.pm:407
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:461
+#, c-format
msgid "This partition is already empty"
-msgstr "Hierdie partisie se grootte kan nie verstel word nie"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "Gebruik ``Ontheg'' eerste"
-#: diskdrake/hd_gtk.pm:416
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:470
+#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "Gebruik ``%s'' instede."
+msgstr ""
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Tipe"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Kies 'n ander partisie"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Kies 'n partisie"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
-msgstr "Meer Keuses"
+msgstr "Meer"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
+#, c-format
msgid "Confirmation"
-msgstr "Konfigurasie"
+msgstr "Bevestiging"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Wil u in elk geval voortgaan?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Verlaat, maar moenie iets stoor nie"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Wil u verlaat, sonder om die partisietabel op te dateer?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "Wil u die /etc/fstab veranderinge stoor?"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr "U moet herlaai om die partisielys-veranderinge te aktiveer"
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1473,42 +1547,42 @@ msgid ""
"Quit anyway?"
msgstr ""
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Verwyder almal"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Outo-allokeer"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "Skakel oor na normale gebruiksvlak"
+msgid "Normal mode"
+msgstr "Normale modus"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "Skakel oor na kundige gebruiksvlak"
+msgid "Expert mode"
+msgstr "Kundige modus"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "Hardeskyfinligting"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "Alle primêre partisies is gebruik"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "Ek kan nie meer partisies byvoeg nie"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
@@ -1517,120 +1591,145 @@ msgstr ""
"Om meer partisies te verkry, verwyder asb. een om 'n ektensiepartisiete kan "
"skep"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Herlaai partisietabel"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Gedetaileerde inligting"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
-msgstr ""
+msgstr "Bekyk"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
-msgstr "Verstel Grootte"
+msgstr "Verstel grootte"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Formatteer"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Voeg by RAID"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Voeg by LVM"
-#: diskdrake/interactive.pm:410
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:417
+#, c-format
msgid "Use"
-msgstr "Gebruiker ID"
+msgstr ""
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Uitwis"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Verwyder uit RAID"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Verwyder uit LVM"
-#: diskdrake/interactive.pm:415
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:422
+#, c-format
msgid "Remove from dm"
-msgstr "Verwyder uit LVM"
+msgstr ""
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "Verander RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Gebruik vir teruglus"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Skep"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Verskuif lêers na nuwe partisie toe"
+msgstr ""
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Skep 'n nuwe partisie"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Begin-sektor: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Grootte in MB: "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Lêerstelsel-tipe: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Voorkeure: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "Logiese-volumenaam "
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr ""
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Enkripsie-sleutel (nogmaals)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Die enkripsie-sleutels stem nie ooreen nie."
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
@@ -1638,12 +1737,12 @@ msgstr ""
"(aangsien u die maksimum aantal primêre partisies bereik het).\n"
"Verwyder eerstens 'n primêre partisie en skep dan 'n sekondêre partisie."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "Verwyder die terugluslêer?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
@@ -1651,284 +1750,296 @@ msgstr ""
"Alle data om hierdie partisie %s sal uitgewis word na verandering van die \n"
"partisietipe"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Verander partisietipe"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Watter lêerstelsel verlang u?"
-#: diskdrake/interactive.pm:594
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:650
+#, c-format
msgid "Switching from %s to %s"
-msgstr "Oorskakeling van ext2 na ext3"
+msgstr ""
-#: diskdrake/interactive.pm:624
+#: diskdrake/interactive.pm:685
#, c-format
msgid "Set volume label"
msgstr ""
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr ""
-#: diskdrake/interactive.pm:630
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:691
+#, c-format
msgid "Label:"
-msgstr "Naam"
+msgstr ""
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "Waar wil u terugluslêer %s heg?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "Waar wil u toestel %s heg?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"Kan nie hegpunt ontset nie, omdat hierdie partisie vir teruglus\n"
"gebruik word. Verwyder eers die teruglus."
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "Waar wil u toestel %s heg?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "Grootteverandering"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "FAT lêerstelselgrense word bereken"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "Hierdie partisie se grootte kan nie verstel word nie"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "Alle data om hierdie partisie moet gerugsteun word."
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr "Alle data op partisie %s sal uitgewis word met die grootteverandering"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Kies die nuwe grootte"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "Nuwe grootte in MB: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:805
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
+#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-"Om Data-integriteit te verseker nadat u die partisie(s)\n"
-"verklien het,sal daar toetste op u lêerstelsel(s) gedoen word,\n"
-"volgende keer as Windows™ selflaai"
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Enkripsie-sleutel van lêerstelsel"
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "Kies 'n enkripsie-sleutel vir u lêerstelsel"
+msgstr ""
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "Enkripsie-sleutel"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr ""
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Kies 'n bestaande RAID om by toe te voeg"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "nuut"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Kies 'n bestaande LVM om by toe te voeg"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr ""
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
+
+#: diskdrake/interactive.pm:1050
#, c-format
-msgid "LVM name?"
-msgstr "LVM naam?"
+msgid "\"%s\" already exists"
+msgstr ""
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr ""
+
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
"Do you want to move used physical extents on this volume to other volumes?"
msgstr ""
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr ""
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "Hierdie partisie kan nie vir teruglus gebruik word nie."
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Teruglus"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Teruglus lêernaam:"
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "Voorsien 'n lêernaam"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr "Lêer word alreeds deur 'n ander teruglus gebruik,kies 'n ander een"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Lêer bestaan alreeds. Moet dit gebruik word?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "Hegopsies:"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "Verskeie"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "toestel"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "vlak"
-#: diskdrake/interactive.pm:1076
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1216
+#, c-format
msgid "chunk size in KiB"
-msgstr "blokgrootte"
+msgstr ""
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "Wees versigtig: hierdie is 'n gevaarlike operasie"
-#: diskdrake/interactive.pm:1109
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1250
+#, c-format
msgid "Partitioning Type"
-msgstr "Partisionering"
+msgstr ""
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "Watter soort partisie?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr "U sal moet herlaai voor die veranderinge geaktiveer kan word"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "Die partisielys op skyf %s gaan opdateer word"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "Partisie %s word formateer"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr "Alle data om partisie %s sal uitgewis word met formatering."
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "Toets vir foutiewe areas?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "Verskuif lêers na nuwe partisie toe"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Versteek lêers"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1939,128 +2050,127 @@ msgid ""
"the contents of the mounted partition)"
msgstr ""
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr "Verskuif lêers na nuwe partisie toe"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "Kopieer %s"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "Verwyder %s"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "partisie %s staan bekens as %s"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr ""
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Toestel: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr ""
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr ""
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "DOS-skyfletter: %s ('n raaiskoot)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Tipe:"
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Naam: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Begin: sektor %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Grootte: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s sektore"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "Silinder %d na silinder %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr ""
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Geformateer\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Nie geformatter\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Geheg\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1446
+#, c-format
msgid "Encrypted"
-msgstr "Enkripsie-sleutel"
+msgstr ""
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr ""
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2069,7 +2179,7 @@ msgstr ""
"Teruglus lêer(s):\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2078,27 +2188,27 @@ msgstr ""
"Verstekpartisie vir herlaai\n"
" (vir MS_DOS doeleinDES, nie LILO s'n nie)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Vlak %s\n"
-#: diskdrake/interactive.pm:1320
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1461
+#, c-format
msgid "Chunk size %d KiB\n"
-msgstr "Blokgrootte %s\n"
+msgstr ""
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "RAID-skywe %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Teruglus lêernaam: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2111,7 +2221,7 @@ msgstr ""
"drywerpartisie is en verkieslik alleen gelos\n"
"moet word.\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2123,69 +2233,64 @@ msgstr ""
"Hierdie spesiale herlaaipartisie\n"
"is om u stelsel te duolaai.\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr ""
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Lees-alleen"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Grootte: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Geometrie: %s silinders, %s koppe, %s sektore\n"
-#: diskdrake/interactive.pm:1351
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Naam: "
+
+#: diskdrake/interactive.pm:1492
+#, c-format
msgid "Medium type: "
-msgstr "Lêerstelsel-tipe: "
+msgstr ""
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "LVM-skywe %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Tipe Partisielys: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "op bus %d id %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "Kies 'n enkripsie-sleutel vir u lêerstelsel"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
"Hierdie enkripsie-sleutel is te eenvoudig. (moet ten minste %d karakters "
"bevat.)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "Die enkripsie-sleutels stem nie ooreen nie."
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Enkripsie-sleutel (nogmaals)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Enkripsie-algoritme"
@@ -2195,17 +2300,9 @@ msgstr "Enkripsie-algoritme"
msgid "Change type"
msgstr "Verander tipe"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Kanselleer"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr "Kan nie met gebruikernaam %s inteken nie (werkeerde wagwoord?)"
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
@@ -2248,40 +2345,40 @@ msgstr "Soek bedieners"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "Deursoek netnuus-bedieners"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "Die pakket %s moet geïnstalleer word. Wil u dit installeer?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
-#, fuzzy, c-format
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
+#, c-format
msgid "Could not install the %s package!"
-msgstr "Installeer pakket %s"
+msgstr ""
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "Verpligte pakket %s ontbreek"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Die volgende pakkette geïnstalleer word:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "Installeer pakkette..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "Verwyder pakkette..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
@@ -2290,32 +2387,39 @@ msgstr ""
"'n Fout het voorgekom - geen geldige toestelle om die nuwe lêerstelsels op "
"te skep, is gevind nie. Deursoek asb. die hardeware vir die oorsaak."
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
+#, c-format
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "U moet oor 'n ESP FAT32 partisie wat as /boot/EFI geheg is, beskik"
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "U moet oor 'n FAT partisie wat as /boot/efi geheg is, beskik"
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "Lêer %s word geskep en formatteer"
-#: fs/format.pm:119
-#, fuzzy, c-format
+#: fs/format.pm:202
+#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "Ek weet nie om %s as tipe %s te formateer nie"
+msgstr ""
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "%s formatering ban %s het gefaal"
+msgstr ""
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "Ek weet nie om %s as tipe %s te formateer nie"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s formatering ban %s het gefaal"
@@ -2330,30 +2434,30 @@ msgstr "Sirkulêre heg %s\n"
msgid "Mounting partition %s"
msgstr "Heg partisie %s"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "heg van partisie %s in lêergids %s het gefaal"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "Toets %s"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "fout met onthegting van %s: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "Aktiveer 'swap'-partisie %s"
#: fs/mount_options.pm:114
-#, fuzzy, c-format
-msgid "Use an encrypted file system"
-msgstr "U kan nie 'n lêerstelsel met enkripsie vir hegpunt %s gebruik nie."
+#, c-format
+msgid "Enable POSIX Access Control Lists"
+msgstr ""
#: fs/mount_options.pm:116
#, c-format
@@ -2368,7 +2472,7 @@ msgstr ""
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
"Moet nie 'inode'-toegangstye op hierdie lêerstelsel opdateer nie\n"
@@ -2376,27 +2480,24 @@ msgstr ""
"nuus-bediener vinniger maak)"
#: fs/mount_options.pm:123
-#, fuzzy, c-format
+#, c-format
msgid ""
"Update inode access times on this filesystem in a more efficient way\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
-"Moet nie 'inode'-toegangstye op hierdie lêerstelsel opdateer nie\n"
-"(bv. maak die toegang na die nuus-spoel vinniger, wat weer die\n"
-"nuus-bediener vinniger maak)"
#: fs/mount_options.pm:126
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
"Kan slegs afsonderlik geheg word (- op sy eie - , \n"
"die '-a' opsie sal hiedie lêerstelsel nie laat heg nie)."
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr ""
"Moet nie teenwoordige karakter- of blok-toestelle op die lêerstelsel "
"vertolk\n"
@@ -2406,7 +2507,7 @@ msgstr ""
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
"Moet nie die uitvoer van programme vanaf die gehegde\n"
@@ -2426,22 +2527,22 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr "Heg die lêerstelsel as lees-alleen."
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr "Alle I/O na die lêerstelsel moet sinkronies wees."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr ""
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr ""
#: fs/mount_options.pm:147
@@ -2464,32 +2565,32 @@ msgstr "Verleen skryf-toegang aan gewone gebruikers"
msgid "Give read-only access to ordinary users"
msgstr "Verleen slegs lees-toegang aan gewone gebruikers"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Duplikaat hegpunt %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "geen beskikbare partisies"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "Deursoek partisies vir hegpunte"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Kies die hegpunte"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Kies die partisies om te formatteer"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2498,23 +2599,23 @@ msgstr ""
"Probleme met die ondersoek van lêerstelsel %s. Wil u die foute herstel? "
"( neem kennis dat dit dataverlies kan meebring)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr "Nie genoeg ruilarea om die installasie te voltooi. Voeg asb. by."
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"U moet 'n wortelpartisie definieer.\n"
"Skep 'n partisie of kliek op 'n bestaande een.\n"
"Kies dan Hegpunt en stel dit dan '/'."
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2525,91 +2626,55 @@ msgstr ""
"\n"
"Wil u steeds voortgaan?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "Gebruik beskikbare spasie"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "Tekort aan oop spasie vir die nuwe partisies"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "Gebruik bestaande partisies"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "Daar is geen bestaande partisies om te gebruik nie"
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Gebruik vir die Microsoft Windows®-partisie vir teruglus"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Watter partisie wil u vir Linux4Win gebruik?"
-
-#: fs/partitioning_wizard.pm:108
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Choose the sizes"
-msgstr "Kies die groottes"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "'root'-partisiegrootte in MB:"
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Ruilpartisiegrootte in MB: "
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "Bereken die grootte van die Microsoft Windows®partisie"
-#: fs/partitioning_wizard.pm:119
+#: fs/partitioning_wizard.pm:201
#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-"Daar is geen FAT partisies om as teruglus (nie genoeg spasie nie) te gebruik "
-"nie"
-
-#: fs/partitioning_wizard.pm:127
-#, fuzzy, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "Gebruik die beskikbare spasie op die Windows-partisie"
+msgstr ""
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Watter partisie se grootte wil u verander?"
-#: fs/partitioning_wizard.pm:143
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
msgstr ""
-"Die FAT-verstellingsprogram kan nie u partisie hanteer nie.\n"
-"Fout: %s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "Bereken die grootte van die Microsoft Windows®partisie"
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:215
#, c-format
-msgid ""
-"Your Microsoft Windows® partition is too fragmented. Please reboot your "
-"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
-msgstr "U Windows-partisie is te gefragmenteer. Loop eers 'defrag' asb."
+msgid "Failed to find the partition to resize (%d choices)"
+msgstr ""
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2620,8 +2685,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2644,83 +2709,75 @@ msgstr ""
"Andersins, klik op %s."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Volgende"
-#: fs/partitioning_wizard.pm:168
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:237
+#, c-format
msgid "Partitionning"
-msgstr "Partisionering"
+msgstr ""
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr "Watter grootte wil u vir Microsoft Windows® behou? partisie %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Grootte"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "Microsoft Windows®lêerstelselgrense word bereken"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "FAT-grootteverandering het gefaal: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"Om Data-integriteit te verseker nadat u die partisie(s)\n"
-"verklien het,sal daar toetste op u lêerstelsel(s) gedoen word,\n"
-"volgende keer as Windows™ selflaai"
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr "Daar is geen FAT partisies om te verander nie(nie genoeg spasie nie)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Verwyder Microsoft Windows®"
-#: fs/partitioning_wizard.pm:203
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:273
+#, c-format
msgid "Erase and use entire disk"
-msgstr "Wis hele skyf"
+msgstr ""
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
-msgstr "U het meer as een hardeskyf, waar wil u Linux installeer?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr "Alle bestaande partisies en data sal uitgewis word op skyf %s"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "Gespesialiseerde skyfpartisionering"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Gebruik fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2729,55 +2786,70 @@ msgstr ""
"U het nou partisie %s partisioneer.\n"
"Wanneer u klaar is, stoor u veranderinge met 'w'."
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
#, c-format
-msgid "I can not find any room for installing"
+msgid "I cannot find any room for installing"
msgstr "Ek kon geen plek vir installasie vind nie."
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "Die DrakX partisioneringsassistent het die volgende oplossings:"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr ""
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Partisionering het misluk: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr "U kan nie JFS vir partisies kleiner as 16MB gebruik nie"
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "U kan nie ReiserFS vir partisies kleiner as 32MB gebruik nie"
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "eenvoudig"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "met '/usr'"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "bediener"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr ""
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2792,74 +2864,52 @@ msgstr ""
"\n"
"Will u al die partisies verwyder?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Hegpunte moet met 'n / begin"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "Hegpunte kan slegs alfa-numeriese karakters bevat"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Daar is alreeds 'n partisie met hegpunt %s\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"U het 'n sagteware RAID-partisie as wortel (/).\n"
-"Geen herlaaistelsel sal dit kan hanteer sonder 'n /boot partisie nie.\n"
-"Onthou om 'n /boot by te voeg."
-#: fsedit.pm:437
-#, fuzzy, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr "U kan nie LVM logiese volume vir hegpunt %s gebruik nie."
-
-#: fsedit.pm:439
-#, fuzzy, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
-msgstr ""
-"U het 'n sagteware RAID-partisie as wortel (/).\n"
-"Geen herlaaistelsel sal dit kan hanteer sonder 'n /boot partisie nie.\n"
-"Onthou om 'n /boot by te voeg."
+#: fsedit.pm:478 fsedit.pm:489
+#, c-format
+msgid "You cannot use an encrypted filesystem for mount point %s"
+msgstr "U kan nie 'n lêerstelsel met enkripsie vir hegpunt %s gebruik nie."
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Hierdie lêergids moet altyd in die wortellêerstelsel bly"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr "U benodig 'n ware lêerstelsel (ext2, reiserfs) vir hierdie hegpunt\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr "U kan nie 'n lêerstelsel met enkripsie vir hegpunt %s gebruik nie."
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
msgstr "Nie genoeg spasie vir outo-toekenning beskikbaar nie"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "Niks om te doen nie"
@@ -2869,283 +2919,328 @@ msgstr "Niks om te doen nie"
msgid "SATA controllers"
msgstr "SATA-beheerders"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "RAID-beheerders"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "(E)IDE/ATA beheerders"
-#: harddrake/data.pm:92
-#, fuzzy, c-format
+#: harddrake/data.pm:93
+#, c-format
msgid "Card readers"
-msgstr "Model kaart:"
+msgstr ""
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Firewire-beheerders"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "PCMCIA-beheerders"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "SCSI-beheerders"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "USB beheerders"
-#: harddrake/data.pm:137
-#, fuzzy, c-format
+#: harddrake/data.pm:138
+#, c-format
msgid "USB ports"
-msgstr "USB-drukker"
+msgstr ""
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "SMBus-beheerders"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Brûe en stelselbeheerders"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Disket"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Skyf"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr ""
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "CDROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "CD/DVD-skrywers"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "Magnetiese band"
-#: harddrake/data.pm:253
-#, fuzzy, c-format
+#: harddrake/data.pm:254
+#, c-format
msgid "AGP controllers"
-msgstr "USB beheerders"
+msgstr ""
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Videokaart"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr ""
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "TV-kaart"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "Ander MultiMedia-toestelle"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "Klankkaart"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "Webkamera"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "Verwerkers"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "ISDN toestelle"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr ""
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr ""
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr ""
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr ""
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr ""
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "Ethernetkaart"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Modem"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "ADSL toestelle"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Geheue"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Drukker"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr ""
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Stuurstok"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Sleutelbord"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr ""
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Muis"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr ""
-#: harddrake/data.pm:520
-#, fuzzy, c-format
+#: harddrake/data.pm:522
+#, c-format
msgid "UPS"
-msgstr "CUPS"
+msgstr ""
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Skandeerder"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Onbekend/Ander"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "cpu # "
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, c-format
+msgid "Couldn't install the required packages"
+msgstr ""
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
+#, c-format
+msgid "Please check the repositories are correctly configured"
+msgstr ""
+
+#: harddrake/sound.pm:462
+#, c-format
+msgid "No known driver"
+msgstr "Geen drywer bekend"
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr ""
+"Daar is geen drywer, sover ons weet, beskikbaar vir klankkaart (%s) nie"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "U moet afteken en weer inteken alvorens veranderinge bekragtig word"
+
+#: harddrake/sound.pm:522
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Wag asb... Konfigurasie word toegpas"
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
+
+#: harddrake/sound.pm:527
+#, c-format
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "Deursoek netnuus-bedieners"
+
+#: harddrake/sound.pm:551
#, c-format
-msgid "Enable PulseAudio"
+msgid "PulseAudio"
msgstr ""
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:552
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
+msgid "PulseAudio with Glitch-Free mode"
msgstr ""
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:553
#, c-format
-msgid "Enable user switching for audio applications"
+msgid "PipeWire with WirePlumber"
msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:554
#, c-format
-msgid "Use Glitch-Free mode"
+msgid "PipeWire with PipeWire Media Session"
msgstr ""
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
msgstr ""
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr "Probleemoplossing"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr ""
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "Geen alternatiewe drywer"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
@@ -3154,191 +3249,75 @@ msgstr ""
"Daar is geen OSS/ALSA alternatief vir u klankkaart (%s) wat huidiglik \"%s\" "
"gebruik"
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Klankkonfigurasie"
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Hier kan u 'n alternatiewe drywer vir u klankkaart kies ( OSS of ALSA)"
-"klankkaart (%s)."
+msgid "Sound troubleshooting"
+msgstr "Klank foutopsporing"
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
"\n"
"\n"
-"U kaart gebruik tans die %s\"%s\" drywer ( die kaart se verstek drywer is \"%"
-"s\")"
-
-#: harddrake/sound.pm:414
-#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"OSS (Open Sound System) was die eerste klank-API. Dit is onafhanklikvan die "
-"bedryfstelsel (dus is dit beskikbaar op meeste UNIX(tm) stelselsdit is 'n "
-"vreeslik basiese API.\n"
-"Drywers vir OSS is ook vreeslik omslagtig\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) het 'n modulêre argitektuur wat\n"
-"'n wye verskeidenheid ISA, USB en PCI kaarte ondersteun.\n"
"\n"
-"Die API is ook heelwat hoër as die van OSS.\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"On alsa te gebruik, kan u:\n"
-"- die ou versoenbare OSS-api gebruik\n"
-"- die nuwe ALSA-api gebruik. Dit het heelwat gevorderde\n"
-"glanspunte het, maar moet die ALSA programmateek gebruik\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Drywer:"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"Die ou \"%s\" drywer is op 'n swartlys.\n"
"\n"
-"Dit is geraporteer dat die die kernel 'oops' as dit aflaai.\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
-"Die nuwe \"%s\" drywer sal met die volgende selflaai gebruik word."
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "Geen oopbron drywer"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"Daar is geen gratis drywer vir u klankkaart (%s) nie, daar is wel 'n "
-"gepatenteerde een by \"%s\"."
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "Geen drywer bekend"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr ""
-"Daar is geen drywer, sover ons weet, beskikbaar vir klankkaart (%s) nie"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Klank foutopsporing"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
"\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
-"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-"Probeer gerus hierdie metode om u klank aan die gang te kry:\n"
-"(vanaf die instruksielyn)\n"
"\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\"sal vir u aandui watter verstek drywer "
-"u\n"
-"kaart gebruik\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" sal aan u vertoon watter drywer\n"
-"tans gebruik word\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
"\n"
-"- \"/sbin/lsmod\" sal u toelaat om te sien of die kaart se module (drywer)\n"
-"reeds gelaai is of nie.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" en \"/sbin/chkconfig --list alsa\" sal\n"
-"aandui indien 'sound' en 'alsa' dienste loop in init vlak 3\n"
-"\n"
-"- \"aumix -q\" sal vir u aandui of die klank swygend is of nie \n"
-"\n"
-"- \"/sbin/fuser -v /dev/dsp\" sal aandui watter program die klankkaart\n"
-"gebruik.\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "Laat ek enige drywer kies"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Kies 'n eiemagtige drywer"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
-"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"Indien u seker is dat u die regte drywer vir u kaart ken\n"
-"kies dan dit uit die lys.\n"
-"\n"
-"Die \"%s\" klankkaart gebruik tans die \"%s\" drywer "
#: harddrake/v4l.pm:12
#, c-format
@@ -3366,7 +3345,7 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
"Die GNU/Linux se bttv module outospeur gewoonlik al die TV-kaart se "
"parameters korrek.\n"
@@ -3383,70 +3362,73 @@ msgstr "Model kaart:"
msgid "Tuner type:"
msgstr "Tipe instemmer"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "OK"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Ja"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "Nee"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Kies 'n lêer"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Voeg by"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Verander"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Voltooi"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Vorige"
-#: interactive/curses.pm:556 ugtk2.pm:872
-#, fuzzy, c-format
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
+#, c-format
msgid "No file chosen"
-msgstr "bestands-kieser"
+msgstr ""
-#: interactive/curses.pm:560 ugtk2.pm:876
-#, fuzzy, c-format
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
+#, c-format
msgid "You have chosen a directory, not a file"
-msgstr "Tuisgids nie beskikbaar nie."
+msgstr ""
-#: interactive/curses.pm:562 ugtk2.pm:878
-#, fuzzy, c-format
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
+#, c-format
msgid "No such directory"
-msgstr "Nie 'n gids nie"
+msgstr ""
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "Nee soos lêer"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr ""
@@ -3528,1248 +3510,1262 @@ msgstr "Dien weer in"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Andorra"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "Verenigde Arabiese Emirate"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Afghanistan"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Antigua and Barbuda"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Anguilla"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Albanië"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Armenië"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Netherlands Antilles"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Angola"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Antartika"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Argentinië"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "American Samoa"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Oostenryk"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Australië"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Aruba"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Azerbaijan"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Bosnië en Herzegovina"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Barbados"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Bangladesh"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "België"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Burkina Faso"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "Bulgaars"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Bahrain"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Burundi"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Benin"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Bermuda"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Brunei Darussalam"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Bolivia"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Brasilië"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Bahamas"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Bhutan"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Bouvet Eiland"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Botswana"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "Belarus"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Belize"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Kanada"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Kokos-eilande"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Kongo (Kinshasa)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "Sentrale-Afrika Republiek"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Congo (Brazzaville)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Switserland"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Cote d'Ivoire"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Cook Eilande"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Chili"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Kameroen"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "China"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Colombië"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Costa Rica"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Serbia & Montenegro"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Kuba"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Cape Verde"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Christmas Island"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Ciprus"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Tsjeggiese Republiek"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Duitsland"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Djibouti"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Denemarke"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Dominica"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Dominikaanse Republiek"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Algerië"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Ecuador"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Estonië"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Egipte"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Westelike Sahara"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Eritrea"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Spanje"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Ethiopië"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Finland"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Fidji"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Falkland Islands (Malvinas)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Micronesia"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Faroe Eilande"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "Frankryk"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Gaboen"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Verenigde Koninkryk"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Grenada"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Georgia"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Frans-Guiana"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Ghana"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Gibraltar"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Groenland"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Gambia"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Guinee"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Guadeloupe"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Ekwatoriale Guinea"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Griekeland"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "South Georgia and the South Sandwich Islands"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Guatemala"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Guam"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Guinea-Bissau"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Guyana"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Hong Kong SAR (China)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Heard en McDonald Eilande"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Honduras"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Kroasië"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Haïti"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Hongarye"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "Indonesië"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Ierland"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Israel"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Indië"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "British Indian Ocean Territory"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Irak"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Iran"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Ysland"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "Italië"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Jamaika"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "Jordanië"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Japan"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Kenia"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Kyrgyzstan"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Kambodja"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Kiribati"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Comoros"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "Saint Kitts and Nevis"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Korea (Noord)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Korea"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Koeweit"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Cayman Eilande"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Kazakhstan"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Laos"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Libanon"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "Saint Lucia"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Liechtenstein"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Sri Lanka"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Liberië"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Lesotho"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Litaue"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Luxemburg"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Letland"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Libië"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Marokko"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Monaco"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Moldova"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Madagaskar"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Marshall Eilande"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Masedonië"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Mali"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Myanmar"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Mongolië"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Noordelike Mariana Eilande"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Martinique"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Mauritanië"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Montserrat"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Malta"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Mauritius"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Maldives"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Malawië"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Mexiko"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Maleisië"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Mosambiek"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Namibië"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Nieu-Caledonië"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Niger"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Norfolk Eiland"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Nigerië"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Nicaragua"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Nederlands"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Noorweë"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Nepal"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Nauru"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Niue"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Neu-Seeland"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Oman"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Panama"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Peru"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "Fraanse Polinesië"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Papua New Guinea"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Filippyne"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Pakistan"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Pole"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Saint Pierre en Miquelon"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Pitcairn"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Puerto Rico"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Palestina"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Portugal"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Paraguay"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Palau"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Qatar"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Hereniging"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Roemenië"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Rusland"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Rwanda"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Saoedi-Arabië"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Solomon Eilande"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Seychelle"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Sudan"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "Swede"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Singapoer"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Saint Helena"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Slovenië"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "Svalbard en Jan Mayen Eilande"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Slovakye"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "Sierra Leone"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "San Marino"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Senekal"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Somalië"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Suriname"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "Sao Tome and Principe"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "El Salvador"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Sirië"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Swaziland"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Turks en Caicos Eilande"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Tsjad"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "French Southern Territories"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Togo"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Thailand"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Tajikistan"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Tokelau"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "East Timor"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Turkmenistan"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Tunisië"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Tonga"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Turkye"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Trinidad en Tobago"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Tuvalu"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Taiwan"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Tanzanië"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Oekraine"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Uganda"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "Verenigde State se Kliener Omliggende Eilande"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "Verenigde State"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Uruguay"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Uzbekistan"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Vatican"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "Saint Vincent en die Grenadines"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Venezuela"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Virgin Eilande (Brits)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "Virgin Eilande (VSA)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Viëtnam"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Vanuatu"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Wallis en Futuna"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Samoa"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Yemen"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Mayotte"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "Suid-Afrika"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Zambië"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Zimbabwe"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "Welkom by %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr ""
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "Verwyder eers die logiese volumes\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr ""
+#. -PO: Only write something if needed:
#: messages.pm:11
#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr ""
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr ""
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4783,16 +4779,23 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4800,15 +4803,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4817,51 +4820,66 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
+"you."
+msgstr ""
+
+#: messages.pm:68
+#, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr ""
+
+#: messages.pm:70
+#, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. %s\n"
+"entities.\n"
"Most of these licenses allow you to use, duplicate, adapt or redistribute "
"the components which \n"
"they cover. Please read carefully the terms and conditions of the license "
"agreement for each component \n"
"before using any component. Any question on a component license should be "
"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr ""
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr ""
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4873,67 +4891,20 @@ msgid ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
-msgstr ""
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
+"For any question on this document, please contact Mageia."
msgstr ""
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-
-#: messages.pm:112
-#, c-format
+#: messages.pm:102
+#, fuzzy, c-format
msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
"Waarskuwing: Oopbronsagteware is nie noodwendig vry van patente nie.\n"
"Sommige van die sagteware hier ingesluit mag dalk gedek wees deur\n"
@@ -4943,93 +4914,36 @@ msgstr ""
"Indien u onseker is oor 'n patent, raadpleeg die plaaslike wette.\n"
"( Wees daarom bly jy woon nie in die VSA nie! )"
-#: messages.pm:120
+#: messages.pm:112
#, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
-#, fuzzy, c-format
+#: messages.pm:114
+#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
+"For information on fixes which are available for this release of Mageia,\n"
"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"%s"
msgstr ""
-"Geluk, installasie is afgehandel.\n"
-"Verwyder die herlaaimedium en druk 'enter' om te herlaai.\n"
-"\n"
-"\n"
-"Vir inligting oor hierdie vrystelling van Mandriva Linux,\n"
+"Vir inligting oor hierdie vrystelling van Mageia,\n"
"bekyk die errata beskikbaar op\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Inligting oor stelskonfigurasie is beskikbaar in die postinstallasie-\n"
-"hoofstuk in die Offisiële Mandriva Linux Gebruikersgids."
+"%s"
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
#: modules/interactive.pm:19
-#, fuzzy, c-format
+#, c-format
msgid "This driver has no configuration parameter!"
-msgstr "CUPS-drukkerkonfigurasie"
+msgstr ""
#: modules/interactive.pm:22
#, c-format
@@ -5062,24 +4976,24 @@ msgid "See hardware info"
msgstr "Sien hardeware inligting"
#: modules/interactive.pm:83
-#, fuzzy, c-format
+#, c-format
msgid "Installing driver for USB controller"
-msgstr "Drywer vir %s kaart %s in installasieproses"
+msgstr ""
#: modules/interactive.pm:84
-#, fuzzy, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "Drywer vir %s kaart %s in installasieproses"
+#, c-format
+msgid "Installing driver for firewire controller \"%s\""
+msgstr ""
#: modules/interactive.pm:85
-#, fuzzy, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "Drywer vir %s kaart %s in installasieproses"
+#, c-format
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr ""
#: modules/interactive.pm:86
-#, fuzzy, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "Drywer vir %s kaart %s in installasieproses"
+#, c-format
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr ""
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -5159,35 +5073,35 @@ msgstr ""
"Laai van module %s het gefaal.\n"
"Wil u ander parameters probeer?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr ""
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
msgstr ""
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Benodig wagwoord"
+msgstr ""
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "heg het gefaal: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Ekstensiepartisie word nie op hierdie platform ondersteun nie"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
@@ -5195,10 +5109,10 @@ msgstr ""
"Die enigste oplossing is om die primêre partisie te skuif sodat die gat\n"
"langs die ekstensie partisies is"
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
@@ -5208,111 +5122,111 @@ msgstr ""
"Dit beteken dat enigiets wat na u hardeskyf geskryf word as gemors sal "
"eindig."
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr ""
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr ""
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr ""
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
"configuration."
msgstr ""
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr ""
-#: pkgs.pm:269 pkgs.pm:270
-#, fuzzy, c-format
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
msgid "Unused hardware support"
-msgstr "laat radio ondersteuning toe"
+msgstr ""
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr ""
-#: raid.pm:42
-#, fuzzy, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
-msgstr "Kan nie 'n partisie by geformatteerde RAID md%d byvoeg nie"
+#: raid.pm:59
+#, c-format
+msgid "Cannot add a partition to _formatted_ RAID %s"
+msgstr ""
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "Nie genoeg partisies vir RAID vlak %d nie\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "Kon nie gids /usr/share/sane/firmware skep nie!"
-#: scanner.pm:107
-#, fuzzy, c-format
+#: scanner.pm:106
+#, c-format
msgid "Could not create link /usr/share/sane/%s!"
-msgstr "Kon nie gids /usr/share/sane/firmware skep nie!"
+msgstr ""
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr "Kon nie firmware-lêer %s na /usr/share/sane/firmware kopieer nie!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "Kon nie die permisies van die firmware-lêer %s stel nie."
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Scannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr "Kon nie die pakkete installeer om u skandeerder(s) te deel nie."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr "U skandeerder(s) sal NIE vir normale gebruikers beskikbaar wees NIE. "
#: security/help.pm:11
-#, fuzzy, c-format
+#, c-format
msgid "Accept bogus IPv4 error messages."
-msgstr "Aanvaar snert IPv4 foutboodskappe"
+msgstr ""
#: security/help.pm:13
-#, fuzzy, c-format
+#, c-format
msgid "Accept broadcasted icmp echo."
-msgstr "Aanvaar uitgesaaide icmp-ego's"
+msgstr ""
#: security/help.pm:15
-#, fuzzy, c-format
+#, c-format
msgid "Accept icmp echo."
-msgstr "Aanvaar icmp-ego's"
+msgstr ""
#: security/help.pm:17
-#, fuzzy, c-format
+#, c-format
msgid "Allow autologin."
-msgstr "Laat toe/Verbied outo-inteken."
+msgstr ""
#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
#: security/help.pm:21
-#, fuzzy, c-format
+#, c-format
msgid ""
"If set to \"ALL\", /etc/issue and /etc/issue.net are allowed to exist.\n"
"\n"
@@ -5320,34 +5234,27 @@ msgid ""
"\n"
"Else only /etc/issue is allowed."
msgstr ""
-"If set to \"ALL\", /etc/issue and /etc/issue.net are allowed to exist.\n"
-"\n"
-"If set to NONE, no issues are allowed.\n"
-"\n"
-"Else only /etc/issue is allowed."
#: security/help.pm:27
-#, fuzzy, c-format
+#, c-format
msgid "Allow reboot by the console user."
-msgstr "Laat toe/Verbied herbegin deur 'n konsole-gebruiker."
+msgstr ""
#: security/help.pm:29
-#, fuzzy, c-format
+#, c-format
msgid "Allow remote root login."
-msgstr "Laat eksterne 'root'-inteken toe"
+msgstr ""
#: security/help.pm:31
-#, fuzzy, c-format
+#, c-format
msgid "Allow direct root login."
-msgstr "Laat toe/Weier vir 'root' om direk in te teken."
+msgstr ""
#: security/help.pm:33
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow the list of users on the system on display managers (kdm and gdm)."
msgstr ""
-"Laat toe/Verbied die vertoon van gebruikername op vertoonbestuurders\n"
-" (display managers, bv. kdm en gdm)."
#: security/help.pm:35
#, c-format
@@ -5359,7 +5266,7 @@ msgid ""
msgstr ""
#: security/help.pm:40
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow X connections:\n"
"\n"
@@ -5369,13 +5276,6 @@ msgid ""
"\n"
"- \"None\" (no connection)."
msgstr ""
-"Laat toe/Verbied X-konneksies:\n"
-"\n"
-"- ALMAL ( alle konneksies word toegelaat),\n"
-"\n"
-"- PLAASLIK (slegs vanaf die plaaslike rekenaar),\n"
-"\n"
-"- GEEN (geen konneksie)."
#: security/help.pm:48
#, c-format
@@ -5388,7 +5288,7 @@ msgstr ""
#. -PO: here "ALL", "Local" and "None" are values in a pull-down menu; translate them the same as they're
#: security/help.pm:53
-#, fuzzy, c-format
+#, c-format
msgid ""
"Authorize:\n"
"\n"
@@ -5399,20 +5299,9 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
-"Authorize:\n"
-"\n"
-"- all services controlled by tcp_wrappers (see hosts.deny(5) man page) if "
-"set to \"ALL\",\n"
-"\n"
-"- only local ones if set to \"LOCAL\"\n"
-"\n"
-"- none if set to \"NONE\".\n"
-"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
#: security/help.pm:63
#, c-format
@@ -5436,32 +5325,25 @@ msgstr ""
"packages."
#: security/help.pm:72
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable crontab and at for users.\n"
"\n"
"Put allowed users in /etc/cron.allow and /etc/at.allow (see man at(1)\n"
"and crontab(1))."
msgstr ""
-"Versper/Ontsper 'crantab' en 'at' vir gebruikers.\n"
-"\n"
-"Plaas toegelete gebruikers in /etc/cron.allow en /etc/at.allow\n"
-"(verwys na man at(1) en crontab(1))."
#: security/help.pm:77
-#, fuzzy, c-format
+#, c-format
msgid "Enable syslog reports to console 12"
-msgstr "Ontsper/Versper 'syslog' verslae na konsole 12"
+msgstr ""
#: security/help.pm:79
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable name resolution spoofing protection. If\n"
"\"%s\" is true, also reports to syslog."
msgstr ""
-"Versper/Ontsper flous-naamresolusie-beskerming. Indien\n"
-" \"%s\" gekies is, sal dit aangeteken word\n"
-" in die staaflêers."
#: security/help.pm:80
#, c-format
@@ -5469,32 +5351,31 @@ msgid "Security Alerts:"
msgstr "Sekuriteits-waarskuwings:"
#: security/help.pm:82
-#, fuzzy, c-format
+#, c-format
msgid "Enable IP spoofing protection."
-msgstr "Ontsper flous-naamresolusie-beskerming"
+msgstr ""
#: security/help.pm:84
-#, fuzzy, c-format
+#, c-format
msgid "Enable libsafe if libsafe is found on the system."
-msgstr "Ontsper 'libsafe' indien 'libsafe' teenwoordig is."
+msgstr ""
#: security/help.pm:86
-#, fuzzy, c-format
+#, c-format
msgid "Enable the logging of IPv4 strange packets."
-msgstr "Ontsper aanteken van vreemde IPv4-pakkies in staaflêer."
+msgstr ""
#: security/help.pm:88
-#, fuzzy, c-format
+#, c-format
msgid "Enable msec hourly security check."
-msgstr "Aktiveer msec se uurlikse ondersoek"
+msgstr ""
#: security/help.pm:90
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable su only from members of the wheel group. If set to no, allows su from "
"any user."
msgstr ""
-"'su'-funksie slegs vir lede van die \"wheel\"-groep of vir enige gebruiker."
#: security/help.pm:92
#, c-format
@@ -5502,19 +5383,19 @@ msgid "Use password to authenticate users."
msgstr "Geldigverklaring deur wagwoorde"
#: security/help.pm:94
-#, fuzzy, c-format
-msgid "Activate ethernet cards promiscuity check."
-msgstr "Aktiveer/Versper ethernetkaarte 'promoscuity' toets."
+#, c-format
+msgid "Activate Ethernet cards promiscuity check."
+msgstr ""
#: security/help.pm:96
-#, fuzzy, c-format
+#, c-format
msgid "Activate daily security check."
-msgstr "Aktiveer/Versper daaglikese sekuriteits-toets."
+msgstr ""
#: security/help.pm:98
-#, fuzzy, c-format
+#, c-format
msgid "Enable sulogin(8) in single user level."
-msgstr "Versper/Ontsper sulogin(8) in enkel-gebruiker modus"
+msgstr ""
#: security/help.pm:100
#, c-format
@@ -5543,9 +5424,9 @@ msgstr ""
"hoofletters."
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "Kies 'root' se 'umask'."
+msgstr ""
#: security/help.pm:109
#, c-format
@@ -5674,9 +5555,9 @@ msgid "Timeout unit is second"
msgstr "Uittel se eenheid is in sekondes"
#: security/help.pm:138
-#, fuzzy, c-format
+#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "Stel die 'umask'"
+msgstr ""
#: security/l10n.pm:11
#, c-format
@@ -5779,10 +5660,9 @@ msgid "Enable msec hourly security check"
msgstr "Aktiveer msec se uurlikse ondersoek"
#: security/l10n.pm:32
-#, fuzzy, c-format
+#, c-format
msgid "Enable su only from the wheel group members"
msgstr ""
-"Aktiveer 'su' slegs vir die 'wheel'-groep se lede OF vir enige gebruiker"
#: security/l10n.pm:33
#, c-format
@@ -5948,11 +5828,11 @@ msgid "Standard"
msgstr "Standaard"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "Sekuriteit"
+msgstr ""
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -5961,7 +5841,7 @@ msgid ""
"on your own."
msgstr ""
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -5970,7 +5850,7 @@ msgstr ""
"Hierdie is die standaard sekuriteitsvlak wat aanbeveel word vir rekenaars\n"
"wat aan die internet as 'n kliënt konnekteer."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -5986,48 +5866,48 @@ msgstr ""
"Aandag: Indien u masjien bloot 'n kliënt op die Internet is, kan u 'n laer\n"
"vlak kies."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Sekuriteit"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "DrakSec Basiese Opsies"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "Kies die verlangde sekuriteitsvlak"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr ""
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "Sekuriteits-admin:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
msgstr ""
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "Loop die ALSA (Gevorderde Linux Klankargitektuur) klankstelsel"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "Anacron is skeduleerder vir periodiese instruksies."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6038,7 +5918,7 @@ msgstr ""
"Dit kan ook ingespan word om die rekenaar af te skakeel, sodra die battery\n"
"pap word."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6048,7 +5928,22 @@ msgstr ""
"gespesifiseer.\n"
"Loop ook instruksiebondels wanneer die stelsellas laag genoeg is."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr ""
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6062,18 +5957,18 @@ msgstr ""
"by die standaard UNIX cron, insluitende beter sekuriteit en 'n kragtiger\n"
"konfigurasie."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr ""
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6083,7 +5978,20 @@ msgstr ""
"\"FAM\" is 'n montor daemon wat verslag lewer sodra lêers verander.\n"
"Word deur GNOME en KDE gebruik"
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6095,12 +6003,12 @@ msgstr ""
"Midnight Commander. Dit laat muisgebaseerde knip-en-plak aksies op die\n"
"konsole toe asook opspringkieskaarte."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
@@ -6109,7 +6017,7 @@ msgstr ""
"HardDrake tas die hardeware af, en konfigureer\n"
"nuwe/veranderde hardeware."
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
@@ -6117,7 +6025,7 @@ msgstr ""
"Apache is 'n WWW-bediener.\n"
"Dit kan HTML-lêers uitstuur en CGI's hanteer"
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6134,16 +6042,23 @@ msgstr ""
"waarvoor\n"
"inetd verantwoordelik is."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"Loods die filter van pakkies vir die 'Linux 2.2 kernel'-reeks, om 'n\n"
-"vuurmuur op te stel, wat u rekenaar beskerm teen aanvalle oor die netwerk."
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6155,7 +6070,7 @@ msgstr ""
"opgestel is. Dit kan vernader word met die kbdconfig nutsprogram.\n"
"U moet dit op meeste rekenaars ongesper laat."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6164,12 +6079,17 @@ msgstr ""
"Automatic regeneration of kernel header in /boot for\n"
"/usr/include/linux/{autoconf,version}.h"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr "Outospeuring en hardewarekonfigurasie met herlaaityd."
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6178,7 +6098,7 @@ msgstr ""
"Linuxconf sal soms verskillende take verrig tydens die selflaai,\n"
"om so die stelsel se konfigurasie te onderhou."
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -6187,7 +6107,7 @@ msgstr ""
"lpd is die drukkerdiensprogram en is nodig vir lpr om te funksioneer.\n"
"Dit is 'n diens wat drukstukke na drukkers toe reguleer."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
@@ -6196,14 +6116,29 @@ msgstr ""
"'Linux Virtual Server', word gebruik om 'n hoë werkverrigting\n"
"en beskikbare bediener te verkry."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6212,7 +6147,12 @@ msgstr ""
"named (BIND) is die domeinnaamdiens (DNS) wat gebruik word om\n"
"rekenaarname na IP-adresse toe om te skakel."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6221,7 +6161,7 @@ msgstr ""
"Heg en ontheg alle netwerklêerstels (NFS), SMB (Lan Manger/Windows)\n"
"en NCP (Netware) hegpunte."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -6230,7 +6170,17 @@ msgstr ""
"Aktiveer/Deaktiveer all netwerkkoppelvlakke wat opgestel is om by\n"
"herlaaityf te begin."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6241,7 +6191,7 @@ msgstr ""
"Hierdie diens voorsien NFS-bedienerfunksionaliteit. Dit word via\n"
"die /etc/exports lêer opgestel."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6250,12 +6200,12 @@ msgstr ""
"NFS is 'n populêre protokol vir lêerdeling oor TCP/IP netwerke.\n"
"Hierdie diens voorsien die NFS-lêersluitfunksionaliteit."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6264,12 +6214,17 @@ msgstr ""
"Aktiveer outomaties die numslot-sleutel vir die aantekentolk en\n"
"'Xorg' tydens selflaai."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "Ondersteun die OKI-4W en aanpasbare WIN-drukkers"
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6282,7 +6237,7 @@ msgstr ""
"gelaai word, behalwe as dit konfigureer is nie en dit is derhalwe\n"
"veilig om op rekenaars te hê wat dit nie nodig het nie."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6294,7 +6249,12 @@ msgstr ""
"gebruik word. Portmap moet loop op rekenaars wat as bedieners vir hierdie\n"
"protokolle, en ander protokolle wat die RPC meganisme gebruik, dien."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6303,7 +6263,7 @@ msgstr ""
"Postfix is 'n e-posoordragagent (MTA). Dit is die program wat e-pos\n"
"van een bediener na 'n ander oordra."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6312,16 +6272,21 @@ msgstr ""
"Stoor en herstel die stelsel-entropie-poel vir hoë kwaliteit,\n"
"lukraak-nommergenerasie."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
"Ken rou-toestelle aan blok-toestelle toe ( soos bv. hardeskyf\n"
"partisies), vir programme soos Oracle en DVD-spelers"
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr ""
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6332,7 +6297,7 @@ msgstr ""
"via die RIP protokol. Alhoewel RIP baie gebruik word in klein netwerke, is\n"
"meer komplekse protokolle nodig vir komplekser netwerke."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6342,7 +6307,14 @@ msgstr ""
"werksverrigting-inligting oor enige rekenaar op die\n"
"netwerk te onttrek."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
@@ -6351,7 +6323,7 @@ msgstr ""
"Die 'rusers' protokol laat netwerkgebruikers toe om te bepaal wie\n"
"aangeteken is op ander samewerkende rekenaars."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6361,32 +6333,47 @@ msgstr ""
"ingeteken is op 'n rkeneaar wat die 'rwho' diensprogram loop. (Amper soos "
"'finger')."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "Laai die klankstelsel op u rekenaar"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6395,82 +6382,94 @@ msgstr ""
"Syslog is die fasiliteit wat baie diensprogramme gebruik om boodskappe\n"
"te log na 'n verskeidenheid loglêers. Dit is altyd goed om syslog te loop."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "Laai die drywers vir u USB-toestelle"
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr ""
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr ""
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Drukwerk"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Internet"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Lêerdeling"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Netwerk"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "Stelsel"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "Eksterne-administrasie"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Databasis-bediener"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Dienste"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr "Kies watter dienste moet outomaties begin met herlaaityd."
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Dienste: %d ge-aktiveer vir %d geregistreer"
+msgid "%d activated for %d registered"
+msgstr "%d ge-aktiveer vir %d geregistreer"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "aktief"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "onaktief"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Dienste en deamone"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6479,32 +6478,27 @@ msgstr ""
"Jammer, geen ekstra inligting\n"
"rakende hierdie diens nie."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Info"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "Begin sodra gevra word"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "met herlaai"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "Begin"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Stop"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6537,7 +6531,7 @@ msgstr ""
"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
"USA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6564,41 +6558,31 @@ msgstr ""
"--help : show this message.\n"
"--version : show version number.\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
-#: standalone.pm:61
-#, fuzzy, c-format
+#: standalone.pm:62
+#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-"[OPSIES] [PROGRAMNAAM]\n"
-"\n"
-"OPSIES:\n"
-" --help - vertoon hierdie hulp boodskap.\n"
-" --report - program behoort een van die Mandriva nutsprogramme te "
-"wees\n"
-" --incedent - program behoort een van die Mandriva nutsprogramme te "
-"wees"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6615,7 +6599,7 @@ msgstr ""
" --internet - configure internet\n"
" --wizard - like --add"
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6646,11 +6630,11 @@ msgstr ""
" : name_of_application like so for staroffice \n"
" : and gs for ghostscript for only this one."
-#: standalone.pm:88
-#, fuzzy, c-format
+#: standalone.pm:89
+#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6663,31 +6647,18 @@ msgid ""
"--delclient : delete a client machine from MTS (requires MAC address, "
"IP, nbi image name)"
msgstr ""
-"[OPTIONS]...\n"
-"Mandriva Terminal Server Configurator\n"
-"--enable : enable MTS\n"
-"--disable : disable MTS\n"
-"--start : start MTS\n"
-"--stop : stop MTS\n"
-"--adduser : add an existing system user to MTS (requires username)\n"
-"--deluser : delete an existing system user from MTS (requires "
-"username)\n"
-"--addclient : add a client machine to MTS (requires MAC address, IP, "
-"nbi image name)\n"
-"--delclient : delete a client machine from MTS (requires MAC address, "
-"IP, nbi image name)"
-#: standalone.pm:100
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[sleutelbord]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6710,26 +6681,19 @@ msgstr ""
"--status : returns 1 if connected 0 otherwise, then exit.\n"
"--quiet : do not be interactive. To be used with (dis)connect."
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
-" --no-verify-rpm do not verify packages signatures\n"
-" --changelog-first display changelog before filelist in the "
-"description window\n"
-" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -6738,7 +6702,7 @@ msgstr ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6749,7 +6713,7 @@ msgstr ""
" XFdrake [--noauto] monitor\n"
" XFdrake resolution"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6760,71 +6724,76 @@ msgstr ""
"Gebruik: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
"testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
-#, fuzzy, c-format
+#: timezone.pm:170 timezone.pm:171
+#, c-format
msgid "All servers"
-msgstr "Voeg bediener by"
+msgstr ""
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr ""
-#: timezone.pm:199
+#: timezone.pm:210
#, c-format
msgid "Africa"
msgstr "Afrika"
-#: timezone.pm:200
+#: timezone.pm:211
#, c-format
msgid "Asia"
msgstr "Asie"
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr "Europa"
-#: timezone.pm:202
+#: timezone.pm:213
#, c-format
msgid "North America"
msgstr "Noord-Amerika"
-#: timezone.pm:203
-#, fuzzy, c-format
+#: timezone.pm:214
+#, c-format
msgid "Oceania"
-msgstr "Masedonië"
+msgstr ""
-#: timezone.pm:204
+#: timezone.pm:215
#, c-format
msgid "South America"
msgstr "Suid-Amerika"
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Hong Kong"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "Russian Federation"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Yugoslavia"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Is dit korrek?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr ""
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Info"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -6838,329 +6807,3 @@ msgstr ""
#, c-format
msgid "Installation failed"
msgstr "Installasie het gefaal!"
-
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "Teken uit en gebruik dan Ctrl-Alt-Backspace"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "Krakers Welkom"
-
-#~ msgid "Poor"
-#~ msgstr "Lig"
-
-#~ msgid "High"
-#~ msgstr "Hoog"
-
-#~ msgid "Higher"
-#~ msgstr "Hoër"
-
-#~ msgid "Paranoid"
-#~ msgstr "Paranoïes"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "Hierdie vlak moet met sorg gebruik word. Dit maak 'n stelsel baie maklik\n"
-#~ "om te gebruik, maar is baie sensitief. Dit moet nie gebruik vir 'n "
-#~ "rekenaar\n"
-#~ "wat aan ander rekenaars of die internet gekoppel is nie. Daar is geen\n"
-#~ "wagwoord toegang nie."
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr ""
-#~ "Wagwoorde is nou ontsper, maar die gebruik as 'n netwerk-rekenaar word "
-#~ "nie aanbeveel nie."
-
-#~ msgid ""
-#~ "There are already some restrictions, and more automatic checks are run "
-#~ "every night."
-#~ msgstr "Daar is reeds beperkings, en outomatise toetse word snags gedoen."
-
-#~ msgid ""
-#~ "This is similar to the previous level, but the system is entirely closed "
-#~ "and security features are at their maximum."
-#~ msgstr ""
-#~ "Hierdie is soortgelyk aan die vorige vlak, maar die stelsel is totaal "
-#~ "geslote en sekuriteit is op sy maksimum."
-
-#~ msgid ""
-#~ "\n"
-#~ "Warning\n"
-#~ "\n"
-#~ "Please read carefully the terms below. If you disagree with any\n"
-#~ "portion, you are not allowed to install the next CD media. Press "
-#~ "'Refuse' \n"
-#~ "to continue the installation without using these media.\n"
-#~ "\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a network. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-#~ msgstr ""
-#~ "\n"
-#~ "Warning\n"
-#~ "\n"
-#~ "Please read carefully the terms below. If you disagree with any\n"
-#~ "portion, you are not allowed to install the next CD media. Press "
-#~ "'Refuse' \n"
-#~ "to continue the installation without using these media.\n"
-#~ "\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a network. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-
-#~ msgid "Use libsafe for servers"
-#~ msgstr "Gebruik libsafe vir bedieners"
-
-#~ msgid ""
-#~ "A library which defends against buffer overflow and format string attacks."
-#~ msgstr ""
-#~ "'n Programmateek wat beskerm teen buffer-vloede en formaat-string "
-#~ "aanvalle."
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "LILO/grub installasie"
-
-#~ msgid "Precise RAM size if needed (found %d MB)"
-#~ msgstr "Presiese RAM grootte indien nodig (%d MB bespeur)"
-
-#~ msgid "Give the ram size in MB"
-#~ msgstr "Gee die geheuegrootte in MB"
-
-#~ msgid ""
-#~ "If you plan to use aboot, be careful to leave a free space (2048 sectors "
-#~ "is enough)\n"
-#~ "at the beginning of the disk"
-#~ msgstr ""
-#~ "Indien u beplan om 'aboot' te gebruik, los spasie aan die begin\n"
-#~ "van die skyf. (2048 sektors is genoeg)."
-
-#~ msgid "Security level"
-#~ msgstr "Sekuriteitsvlak"
-
-#~ msgid "Expand Tree"
-#~ msgstr "Maak boom oop"
-
-#~ msgid "Collapse Tree"
-#~ msgstr "Maak boom toe"
-
-#~ msgid "Toggle between flat and group sorted"
-#~ msgstr "Skakel tussen plat- en groepsortering"
-
-#~ msgid "Choose action"
-#~ msgstr "Kies aksie"
-
-#, fuzzy
-#~ msgid "Active Directory with SFU"
-#~ msgstr "Herstel alle rugsteune"
-
-#, fuzzy
-#~ msgid "Active Directory with Winbind"
-#~ msgstr "Herstel alle rugsteune"
-
-#, fuzzy
-#~ msgid "Active Directory with SFU:"
-#~ msgstr "Herstel alle rugsteune"
-
-#, fuzzy
-#~ msgid "Active Directory with Winbind:"
-#~ msgstr "Herstel alle rugsteune"
-
-#~ msgid "Authentication LDAP"
-#~ msgstr "LDAP-magtiging"
-
-#~ msgid "TLS"
-#~ msgstr "TLS"
-
-#~ msgid "SSL"
-#~ msgstr "Ssl"
-
-#, fuzzy
-#~ msgid "Authentication Active Directory"
-#~ msgstr "Magtigings-metode"
-
-#, fuzzy
-#~ msgid "LDAP users database"
-#~ msgstr "Databasis"
-
-#~ msgid "Authentication NIS"
-#~ msgstr "NIS-magtiging"
-
-#~ msgid ""
-#~ "For this to work for a W2K PDC, you will probably need to have the admin "
-#~ "run: C:\\>net localgroup \"Pre-Windows 2000 Compatible Access\" everyone /"
-#~ "add and reboot the server.\n"
-#~ "You will also need the username/password of a Domain Admin to join the "
-#~ "machine to the Windows(TM) domain.\n"
-#~ "If networking is not yet enabled, Drakx will attempt to join the domain "
-#~ "after the network setup step.\n"
-#~ "Should this setup fail for some reason and domain authentication is not "
-#~ "working, run 'smbpasswd -j DOMAIN -U USER%%PASSWORD' using your Windows"
-#~ "(tm) Domain, and Admin Username/Password, after system boot.\n"
-#~ "The command 'wbinfo -t' will test whether your authentication secrets are "
-#~ "good."
-#~ msgstr ""
-#~ "Om hierdie te laat werk met 'n W2K PDC, moet u die volgende doen: As "
-#~ "admin voer die volgende opdrag uit, 'C:\\>net localgroup \"Pre-Windows "
-#~ "2000 Compatibla Acces\" everyone' en herlaai die bediener.\n"
-#~ "U moet ook die gebruikernaam/wagwoord van die 'Domain Admin' hê om "
-#~ "hierdie masjien aan te sluit by die Windows(TM)-domein.\n"
-#~ "Indien die netwerk nog nie opgestel is nie, sal Drakx poog om by die "
-#~ "domein aan te sluit, as die netwerk reg is.\n"
-#~ "Sou dit nie werk nie, kan u later 'smbpasswd -j DOMEIN -U GEBRUIKER%%"
-#~ "WAGWOORD' op die instruksielyn as die supergebruiker intik. Die Windows"
-#~ "(tm) Domein, en Admin gebruiker/wagwoord moet gebruik word.\n"
-#~ "Die opdrag 'wbinfo -t' sal u 'authentication secrets' ondersoek."
-
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "Magtiging deur Windows-domein"
-
-#~ msgid "Undo"
-#~ msgstr "Herroep"
-
-#~ msgid "Save partition table"
-#~ msgstr "Skryf partisielys"
-
-#~ msgid "Restore partition table"
-#~ msgstr "Herstel partisielys"
-
-#~ msgid ""
-#~ "The backup partition table has not the same size\n"
-#~ "Still continue?"
-#~ msgstr ""
-#~ "Die rugsteunpartisielys se grootte verskil\n"
-#~ "Wil u voortgaan?"
-
-#~ msgid "Info: "
-#~ msgstr "Info:"
-
-#~ msgid "Unknown driver"
-#~ msgstr "Onbekende drywer"
-
-#~ msgid "Error reading file %s"
-#~ msgstr "Fout met die lees van lêer %s"
-
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "Herstel van léer %s het gefaal: %s"
-
-#~ msgid "Bad backup file"
-#~ msgstr "Korrupte rugsteunlêer"
-
-#~ msgid "Error writing to file %s"
-#~ msgstr "Fout met die skryf van %s"
-
-#~ msgid "Error: The \"%s\" driver for your sound card is unlisted"
-#~ msgstr "Fout: Die \"%s\" drywer vir u klankkaart in nie gelys nie"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Journalised FS"
-#~ msgstr "Gejoernaliseerde FS"
-
-#~ msgid "Starts the X Font Server (this is mandatory for Xorg to run)."
-#~ msgstr "Laai die X-fontbediener (dis nodig vir Xorg)."
-
-#~ msgid "Add user"
-#~ msgstr "Voeg gebruiker by"
-
-#~ msgid "Accept user"
-#~ msgstr "Aanvaar gebruiker"
-
-#, fuzzy
-#~ msgid ""
-#~ "Do not update directory inode access times on this filesystem\n"
-#~ "(e.g, for faster access on the news spool to speed up news servers)."
-#~ msgstr ""
-#~ "Moet nie 'inode'-toegangstye op hierdie lêerstelsel opdateer nie\n"
-#~ "(bv. maak die toegang na die nuus-spoel vinniger, wat weer die\n"
-#~ "nuus-bediener vinniger maak)"
-
-#~ msgid "Rescue partition table"
-#~ msgstr "Reddingspartisielys"
-
-#~ msgid "Removable media automounting"
-#~ msgstr "Outoheg van verwyderbare media"
-
-#~ msgid "Trying to rescue partition table"
-#~ msgstr "Probeer die partisielys red"
-
-#~ msgid "Accept/Refuse bogus IPv4 error messages."
-#~ msgstr "Aanvaar/Weier snert IPv4-foutboodskappe."
-
-#~ msgid "Accept/Refuse broadcasted icmp echo."
-#~ msgstr "Aanvaar/Weier uitgesaaide icmp-ego's"
-
-#~ msgid "Accept/Refuse icmp echo."
-#~ msgstr "Aanvaar/Weier icmp-ego's."
-
-#~ msgid "Allow/Forbid remote root login."
-#~ msgstr "Laat toe/Verbied 'root' deur die netwerk in te teken."
-
-#~ msgid "Enable/Disable IP spoofing protection."
-#~ msgstr "Ontsper/Versper \"IP spoofing\" beskerming."
-
-#~ msgid "Enable/Disable libsafe if libsafe is found on the system."
-#~ msgstr "Versper/Ontsper 'libsafe' indien 'libsafe' teenwoordig is."
-
-#~ msgid "Enable/Disable the logging of IPv4 strange packets."
-#~ msgstr "Versper/Ontsper aanteken van vreemde IPv4-pakkies in staaflêer."
-
-#~ msgid "Enable/Disable msec hourly security check."
-#~ msgstr "Versper/Ontsper msec se uurlikse toets."
-
-#~ msgid "Number of capture buffers:"
-#~ msgstr "Aantal ontvang-buffers:"
-
-#~ msgid "number of capture buffers for mmap'ed capture"
-#~ msgstr "aantal ontvang-buffers vir nmap se vangs"
-
-#~ msgid "PLL setting:"
-#~ msgstr "PLL verstelling:"
-
-#~ msgid "Radio support:"
-#~ msgstr "Ondersteunig vir Radio:"
-
-#~ msgid " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
-#~ msgstr " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
diff --git a/perl-install/share/po/am.po b/perl-install/share/po/am.po
index 97c6911db..d50dbbb89 100644
--- a/perl-install/share/po/am.po
+++ b/perl-install/share/po/am.po
@@ -1,33 +1,37 @@
-# Latest versions of po files are at http://www.mandrivalinux.com/l10n/am.php3
-# Copyright (C) 2004 Mandriva SA
-# Alemayehu Gemeda <alemayehu@gmx.at>, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
+# Translators:
+# Alemayehu Gemeda <alemayehu@gmx.at>, 2004
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2004-06-01 03:36+0100\n"
-"Last-Translator: Alemayehu <alemayehu@gmx.at>\n"
-"Language-Team: Amharic <am-translate@geez.org>\n"
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2019-04-16 15:43+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Amharic (http://www.transifex.com/MageiaLinux/mageia/language/"
+"am/)\n"
+"Language: am\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "እባክዎ ይጠብቁ"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "የአስጀማሪ ተከላ በመከናወን ላይ"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -38,568 +42,609 @@ msgid ""
"Assign a new Volume ID?"
msgstr ""
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr ""
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
-#: any.pm:346
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr ""
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "አስጀማሪውን የት መትከል ይፈልጋሉ?"
+
+#: any.pm:365
#, c-format
msgid "First sector (MBR) of drive %s"
msgstr ""
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr ""
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr ""
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "ፍሎፒ ላይ"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "ዝለል"
-#: any.pm:358
-#, fuzzy, c-format
-msgid "Bootloader Installation"
-msgstr "የአስጀማሪ ተከላ በመከናወን ላይ"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "አስጀማሪውን የት መትከል ይፈልጋሉ?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "የአጀማመር ዘይቤ ምርጫ"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr ""
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "የአስጀማሪ ዋና ምርጫዎች"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "አስጀማሪያ"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "ጥቅም ላይ የሚውለው አስጀማሪ"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "የመጀመሪያ መሳሪያ"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
msgstr ""
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr ""
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "ACPI አስቻል"
-#: any.pm:411
-#, fuzzy, c-format
+#: any.pm:432
+#, c-format
msgid "Enable SMP"
-msgstr "ACPI አስቻል"
+msgstr ""
-#: any.pm:412
-#, fuzzy, c-format
+#: any.pm:433
+#, c-format
msgid "Enable APIC"
-msgstr "ACPI አስቻል"
+msgstr ""
-#: any.pm:413
-#, fuzzy, c-format
+#: any.pm:435
+#, c-format
msgid "Enable Local APIC"
-msgstr "ACPI አስቻል"
+msgstr ""
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "ደህንነት"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "ሚስጢራዊ ቃል"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "ሚስጢራዊ ቃላቱ አይመሳሰሉም"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "እባክዎ እንደገና ይሞክሩ"
-#: any.pm:418
+#: any.pm:442
#, c-format
-msgid "You can not use a password with %s"
+msgid "You cannot use a password with %s"
msgstr ""
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "ሚስጢራዊ ቃል (እንደገና)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "የትእዛዝ መስመር ምርጫዎችን ወስን"
+msgid "Bootloader Configuration"
+msgstr ""
+
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "የተከላ ምርጫዎች"
-#: any.pm:422
+#: any.pm:533
#, c-format
-msgid "restrict"
-msgstr "ወስን"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr ""
-#: any.pm:423
+#: any.pm:535 any.pm:794
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
msgstr ""
-#: any.pm:425
+#: any.pm:537
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "በየጅማሬው /tmpን አጽዳ"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr ""
-#: any.pm:434
+#: any.pm:539
#, c-format
-msgid "Init Message"
-msgstr "መልዕክት አስጀምር"
+msgid "Background"
+msgstr ""
-#: any.pm:436
+#: any.pm:544
#, c-format
-msgid "Open Firmware Delay"
-msgstr "የFirmware አዘግይ ክፈት"
+msgid "rEFInd banner"
+msgstr ""
+
+#: any.pm:545
+#, c-format
+msgid "Mageia theme"
+msgstr ""
+
+#: any.pm:546 any.pm:1602
+#, c-format
+msgid "Custom"
+msgstr "ምርጫ"
-#: any.pm:437
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "መጋራት የለም"
+
+#: any.pm:565
#, c-format
-msgid "Kernel Boot Timeout"
+msgid "Scale to fit"
msgstr ""
-#: any.pm:438
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable CD Boot?"
-msgstr "ከዲሲ ማስጀመር አስችል?"
+msgid "Label"
+msgstr "መለያ"
-#: any.pm:439
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Enable OF Boot?"
+msgid "Append"
msgstr ""
-#: any.pm:440
+#: any.pm:612 any.pm:624 any.pm:781
#, c-format
-msgid "Default OS?"
-msgstr "ቀዳሚ OS?"
+msgid "Video mode"
+msgstr "የቪዲዮ አሰራር ዘዴ"
-#: any.pm:513
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "ምስል"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Root"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr ""
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr ""
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "የቪዲዮ አሰራር ዘዴ"
+msgid "Requires password to boot"
+msgstr ""
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr ""
-#: any.pm:523
-#, fuzzy, c-format
-msgid "Network profile"
-msgstr "የተጠቃሚው እይታ"
-
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
+#: any.pm:626
#, c-format
-msgid "Label"
-msgstr "መለያ"
+msgid "Network profile"
+msgstr ""
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "ቀዳሚ"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr ""
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr ""
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr ""
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr ""
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr ""
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr ""
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "ሊኑክስ"
-#: any.pm:573
+#: any.pm:672
#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "ሌሎች የመጠቀሚያ ዜዴዎች (SunOS...)"
+msgid "Other OS (Windows...)"
+msgstr "ሌሎች የመጠቀሚያ ዜዴዎች (Windows...)"
-#: any.pm:574
+#: any.pm:732
#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "ሌሎች የመጠቀሚያ ዜዴዎች (MacOS...)"
+msgid ""
+"Here are the entries on your boot menu so far.\n"
+"You can create additional entries or change the existing ones."
+msgstr ""
-#: any.pm:574
+#: any.pm:783
#, c-format
-msgid "Other OS (Windows...)"
-msgstr "ሌሎች የመጠቀሚያ ዜዴዎች (Windows...)"
+msgid "Do not touch ESP or MBR"
+msgstr ""
-#: any.pm:621
-#, fuzzy, c-format
-msgid "Bootloader Configuration"
-msgstr "የአጀማመር ዘይቤ ምርጫ"
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "ማስጠንቀቂያ"
-#: any.pm:622
+#: any.pm:786
#, c-format
msgid ""
-"Here are the entries on your boot menu so far.\n"
-"You can create additional entries or change the existing ones."
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
msgstr ""
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr ""
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "የX ፕሮግራሞች ማሳያ"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr ""
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "ፍቀድ \"su\""
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr ""
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr ""
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr ""
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(%s በፊት ተጨምሯል)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "እባክዎ የተጠቃሚ ስም ይስጡ"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
msgstr ""
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "የተጠቃሚ ስሙ በጣም ረጅም ነው"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "ይህ የተጠቃሚ ስም በፊትም ነበር"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "የተጠቃሚ መለያ ቁጥር"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "የብድን መለያ ቁጥር"
-#: any.pm:817
-#, fuzzy, c-format
+#: any.pm:1086
+#, c-format
msgid "%s must be a number"
-msgstr "(%f በሰነድ-ስም ይተካል፤ %l በመስመር ቁጥር)"
+msgstr ""
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
+msgid "%s should be above 1000. Accept anyway?"
msgstr ""
-#: any.pm:822
-#, fuzzy, c-format
+#: any.pm:1091
+#, c-format
msgid "User management"
-msgstr "የተጠቃሚ ስም"
+msgstr ""
-#: any.pm:828 authentication.pm:237
-#, fuzzy, c-format
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr ""
+
+#: any.pm:1099 authentication.pm:236
+#, c-format
msgid "Set administrator (root) password"
-msgstr "የroot ሚስጢራዊ ቃል ይምረጡ"
+msgstr ""
-#: any.pm:833
-#, fuzzy, c-format
+#: any.pm:1105
+#, c-format
msgid "Enter a user"
msgstr ""
-"የተጠቃሚ ስም ያስገቡ\n"
-"%s"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "ምልክት"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "እውነተኛ ስም"
-#: any.pm:843
-#, fuzzy, c-format
+#: any.pm:1117
+#, c-format
msgid "Login name"
-msgstr "Name=ዝምብለህ ይግባ"
+msgstr ""
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "ሼል"
-#: any.pm:884
-#, fuzzy, c-format
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr ""
+
+#: any.pm:1181
+#, c-format
msgid "Please wait, adding media..."
-msgstr "ሲያትም እባክዎ ይጠብቁ\n"
+msgstr ""
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr ""
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
-#: any.pm:916
-#, fuzzy, c-format
+#: any.pm:1251
+#, c-format
msgid "Use this feature"
-msgstr "ይህንን ሁኔታ መጠቀም ይፈልጋሉ?"
+msgstr ""
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "ቀዳሚ ተጠቃሚ ይምረጡ:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr ""
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
msgstr ""
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "ዝጋ"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr ""
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "ውጣ"
-#: any.pm:1017
-#, fuzzy, c-format
+#: any.pm:1343
+#, c-format
msgid "Do you accept this license ?"
-msgstr "ሌላ አልዎት?"
+msgstr ""
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "ተቀበል"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "አትቀበል"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "እባክዎ መጠቀሚያ ቋንቋ ይምረጡ።"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
#, c-format
-msgid "Multi languages"
+msgid "Mageia"
msgstr ""
-#: any.pm:1087 any.pm:1119
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr ""
+
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr ""
+
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr ""
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "ሁሉንም ቋንቋዎች"
-#: any.pm:1111
-#, fuzzy, c-format
+#: any.pm:1434
+#, c-format
msgid "Language choice"
-msgstr "የመመሪያ ገጾች"
+msgstr ""
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "ሀገር / አካባቢ"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
msgstr "እባክዎ ሀገሮን ይምረጡ።"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "እዚህ ያሉት ሀገሮች ሙሉ ዝርዝር ይገኛል"
-#: any.pm:1169
-#, fuzzy, c-format
+#: any.pm:1492
+#, c-format
msgid "Other Countries"
-msgstr "ሌላ ምርጫዎች"
+msgstr ""
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "ጠላቂ"
-#: any.pm:1175
-#, fuzzy, c-format
+#: any.pm:1498
+#, c-format
msgid "Input method:"
-msgstr "የX ዘገባ የማስትገባት ዘዴ"
+msgstr ""
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "ምንም"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "መጋራት የለም"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "ለሁሉም ተጠቃሚዎች ፍቀድ"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "ምርጫ"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -609,94 +654,149 @@ msgid ""
"\"Custom\" permit a per-user granularity.\n"
msgstr ""
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
"Windows."
msgstr ""
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
"systems."
msgstr ""
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
msgstr ""
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "userdrake አስጀምር"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
"You can use userdrake to add a user to this group."
msgstr ""
-#: any.pm:1421
+#: any.pm:1768
#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
msgstr ""
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr ""
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "የሰአት ክልል"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "የሰአት ክልሎት የትኛው ነው?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr ""
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr ""
-#: any.pm:1490
-#, fuzzy, c-format
+#: any.pm:1837
+#, c-format
msgid "%s (hardware clock set to UTC)"
-msgstr "ለሀርድዌር ሰአት GMT ተመርጧል"
+msgstr ""
-#: any.pm:1491
-#, fuzzy, c-format
+#: any.pm:1838
+#, c-format
msgid "%s (hardware clock set to local time)"
-msgstr "ለሀርድዌር ሰአት GMT ተመርጧል"
+msgstr ""
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "NTP ሰርቨር"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr ""
-#: authentication.pm:24
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr ""
+
+#: any.pm:1880
#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "URLሉ በhttp:// ወይም በhttps:// መጀመር አለበት"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr ""
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr ""
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "ተወው"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "በራስ-ገዝ ፈልጎ አግኝ"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "ምርጫዎችን ይግለጹ"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "አስጀማሪያ"
+
+#: authentication.pm:24
+#, c-format
msgid "Local file"
-msgstr "የቅርብ ፋይሎች"
+msgstr ""
#: authentication.pm:25
#, c-format
@@ -713,7 +813,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr ""
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "የWindows ዶሜን"
@@ -723,295 +823,295 @@ msgstr "የWindows ዶሜን"
msgid "Kerberos 5"
msgstr ""
-#: authentication.pm:63
-#, fuzzy, c-format
+#: authentication.pm:65
+#, c-format
msgid "Local file:"
-msgstr "የቅርብ ፋይሎች:"
+msgstr ""
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
"consolidates certain types of information within your organization."
msgstr ""
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
"Service domain with a common password and group file."
msgstr ""
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "የWindows ዶሜን:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
"a Windows domain."
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
-#, fuzzy, c-format
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr "የተጠቃሚው የአጠቃቀም ደረጃ ያስፈልጋል"
+msgstr ""
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "የLDAP ሰርቨር"
-#: authentication.pm:113 authentication.pm:168
+#: authentication.pm:112 authentication.pm:167
#, c-format
msgid "Base dn"
msgstr ""
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr ""
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr ""
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr ""
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr ""
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
msgstr ""
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr ""
-#: authentication.pm:123 authentication.pm:175
-#, fuzzy, c-format
+#: authentication.pm:122 authentication.pm:174
+#, c-format
msgid "Bind Password "
-msgstr "ሚስጢራዊ ቃል"
+msgstr ""
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr ""
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "ሚስጢራዊ ቃል"
+msgstr ""
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "የብድን መለያ ቁጥር"
+msgstr ""
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr ""
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "እውነተኛ ስም"
+msgstr ""
-#: authentication.pm:148
-#, fuzzy, c-format
+#: authentication.pm:147
+#, c-format
msgid "KDCs Servers"
-msgstr "የLDAP ሰርቨር"
+msgstr ""
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr ""
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr ""
-#: authentication.pm:156
-#, fuzzy, c-format
+#: authentication.pm:155
+#, c-format
msgid "Use local file for users information"
-msgstr "ለህብሩ የglyph ቅርጽ አወጣት ተጠቀም"
+msgstr ""
-#: authentication.pm:157
-#, fuzzy, c-format
-msgid "Use Ldap for users information"
-msgstr "የቋሚ ዲስክ መረጃ"
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr ""
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr ""
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "የNIS ዶሜን"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "የNIS ሰርቨር"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "ዶሜን"
+msgstr ""
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr ""
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "የNIS ዶሜን"
+msgstr ""
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "የLDAP ሰርቨር"
+msgstr ""
-#: authentication.pm:236 authentication.pm:252
-#, fuzzy, c-format
+#: authentication.pm:235 authentication.pm:251
+#, c-format
msgid "Authentication"
-msgstr "ማስረጃ"
+msgstr ""
-#: authentication.pm:238
-#, fuzzy, c-format
+#: authentication.pm:237
+#, c-format
msgid "Authentication method"
-msgstr "የX ዘገባ የማስትገባት ዘዴ"
+msgstr ""
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "ሚስጢራዊ ቃል የለም"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr ""
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr ""
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "ፋይል ይምረጡ"
-#: authentication.pm:897
-#, fuzzy, c-format
+#: authentication.pm:882
+#, c-format
msgid "Domain Windows for authentication : "
-msgstr "የተጠቃሚው የአጠቃቀም ደረጃ ያስፈልጋል"
+msgstr ""
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr ""
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "የዶሜን አስተዳዳሪ ሚስጢራዊ ቃል"
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1021,105 +1121,111 @@ msgid ""
"\n"
msgstr ""
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO ከጽሁፍ መዘርዝር ጋር"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
#, c-format
-msgid "GRUB with graphical menu"
+msgid "GRUB2 with graphical menu"
msgstr ""
-#: bootloader.pm:1134
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 ከጽሁፍ መዘርዝር ጋር"
+
+#: bootloader.pm:1481
+#, c-format
+msgid "GRUB with graphical menu"
+msgstr "GRUB ከጽሁፍ መዘርዝር ጋር"
+
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr ""
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr ""
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
+msgid "U-Boot/Extlinux with text menu"
msgstr ""
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "በ/boot ውስጥ በቂ ቦታ የለም"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr ""
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
"renumbered"
msgstr ""
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "አስጀማሪውን እንደገና ይትከሉ"
-#: common.pm:142
-#, fuzzy, c-format
+#: common.pm:271
+#, c-format
msgid "B"
-msgstr "KB"
+msgstr ""
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "KB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "MB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "GB"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "TB"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr ""
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d ደቂቃዎች"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 ደቂቃ"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d ሴኮንዶች"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr ""
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1134,12 +1240,12 @@ msgstr ""
msgid "New"
msgstr "አዲስ"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr ""
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr ""
@@ -1149,43 +1255,44 @@ msgstr ""
msgid "Server"
msgstr "ሰርቨር"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr ""
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "ምርጫዎች"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "አስወግድ"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "ጨርሷል"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "ስህተት"
@@ -1200,80 +1307,71 @@ msgstr "እባክዎ የWebDAV ሰርቨር URL ያስገቡ"
msgid "The URL must begin with http:// or https://"
msgstr "URLሉ በhttp:// ወይም በhttps:// መጀመር አለበት"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "ማስጠንቀቂያ"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "እዚህ ቁልፍ ላይ መጫን ይፈልጋሉ?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr ""
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "ሰርቨር:"
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr ""
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "ምርጫዎች: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr ""
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "በጥንቃቄ ያንብቡ"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr ""
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "ውጣ"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "ቀጥል"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "እርዳታ"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1281,141 +1379,132 @@ msgid ""
"(click on it, then click on \"Resize\")"
msgstr ""
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "እባክዎ ክፋዩ ላይ ይጫኑ"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "ዝርዝሮች"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "ቋሚ ዲስኮችን አልተገኙም"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "ያልታወቀ"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
-msgid "Ext3"
-msgstr "ውጣ"
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
msgid "XFS"
-msgstr "HFS"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Swap"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "ሌላ"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "ባዶ"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "የፋይል ሲስተም አይነቶች:"
-#: diskdrake/hd_gtk.pm:407
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:461
+#, c-format
msgid "This partition is already empty"
-msgstr "ይዚህ ክፋይ መጠነ ተስተካካይ አይደለም"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "በመጀመሪያ “Unmount”ን ይጠቀሙ"
-#: diskdrake/hd_gtk.pm:416
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:470
+#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "በዚህ ፈንታ “%s”ን ይጠቀሙ"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "አይነት"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "ሌላ ክፋይ ይምረጡ"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "ክፋይ ይምረጡ"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "ተጨማሪ"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
+#, c-format
msgid "Confirmation"
-msgstr "ስየማ"
+msgstr ""
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "ለማንኛውም ቀጥል?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "ሳታስቀምጥ ውጣ"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr ""
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr ""
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr ""
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1423,450 +1512,490 @@ msgid ""
"Quit anyway?"
msgstr ""
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "ሁሉንም ሰርዝ"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "በራስ-ገዝ አመልካች"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
+msgid "Normal mode"
msgstr ""
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
+msgid "Expert mode"
msgstr ""
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "የቋሚ ዲስክ መረጃ"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr ""
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr ""
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
"partition"
msgstr ""
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "የክፋይ ሠንጠረዡን እንደገና ጫን"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "ዝርዝር መረጃ"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
-msgstr ""
+msgstr "ተመልከት"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "መጠን አስተካክል"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "ፎርማት"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "ወደ RAID ጨምር"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "ወደ LVM ጨምር"
-#: diskdrake/interactive.pm:410
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:417
+#, c-format
msgid "Use"
-msgstr "የተጠቃሚ መለያ ቁጥር"
+msgstr ""
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "አጥፋ"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "ከRAID አስወግድ"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "ከLVM አስወግድ"
-#: diskdrake/interactive.pm:415
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:422
+#, c-format
msgid "Remove from dm"
-msgstr "ከLVM አስወግድ"
+msgstr ""
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "RAID ለውጥ"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "ዞሮ ለመመለስ ተጠቃም"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "ፍጠር"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "ወደ አዲሱ ክፋይ ፋይሎችን አንቀሳቅስ"
+msgstr ""
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "አዲስ ክፋይ ፍጠር"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "ሴክተር ጀምር፦"
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "መጠን በMB:"
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "የፋይል ሲስተም አይነት: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "ምርጫ: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "የጉልሃዊ ይዞታ ስም"
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr ""
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "የሚስጢራዊ ግልበጣ ቁልፍ (እንደገና)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr ""
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "የዞሮ መመለሻ ፋይሉ ይወገድ?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr ""
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "የክፋይ ዓይነት ለውጥ"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "የትኛውን የፋይል ሲስተም ይፈልጋሉ?"
-#: diskdrake/interactive.pm:594
+#: diskdrake/interactive.pm:650
#, c-format
msgid "Switching from %s to %s"
msgstr ""
-#: diskdrake/interactive.pm:624
+#: diskdrake/interactive.pm:685
#, c-format
msgid "Set volume label"
msgstr ""
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr ""
-#: diskdrake/interactive.pm:630
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:691
+#, c-format
msgid "Label:"
-msgstr "መለያ"
+msgstr ""
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr ""
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr ""
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "%sን የት መትከል ይፈልጋሉ?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "መጠን በማስተካከል ላይ"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr ""
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "ይዚህ ክፋይ መጠነ ተስተካካይ አይደለም"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr ""
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr ""
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "አዲሱን መጠን ይምረጡ"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "አዲስ መጠን በMB: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:805
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "የፋይል-ሲስተም ሚስጢራዊ ግልበጣ ቁልፍ"
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "የፋይል-ሲስተም ሚስጢራዊ ግልበጣ ቁልፍ"
+msgstr ""
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "የሚስጢራዊ ግልበጣ ቁልፍ"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr ""
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr ""
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "አዲስ"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr ""
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr ""
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr ""
+
+#: diskdrake/interactive.pm:1058
#, c-format
-msgid "LVM name?"
-msgstr "የLVM ስም?"
+msgid "Setting up LVM"
+msgstr ""
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
"Do you want to move used physical extents on this volume to other volumes?"
msgstr ""
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr ""
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr ""
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr ""
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "የዞሮ መመለሻ ፋይል ስም: "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "የፋይል ስም ይስጡ"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr ""
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "ፋይሉ በፊትም ነበር። ልጠቀምበት?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "የተከላ ምርጫዎች"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr ""
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "መሳሪያ"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "ደረጃ"
-#: diskdrake/interactive.pm:1076
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1216
+#, c-format
msgid "chunk size in KiB"
-msgstr "የፊደል ቅርጽ መጠን፦"
+msgstr ""
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "ይጠንቀቁ: ይህ አሰራር አደገኛ ነው።"
-#: diskdrake/interactive.pm:1109
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1250
+#, c-format
msgid "Partitioning Type"
-msgstr "መከፋፈል አልተሳካም: %s"
+msgstr ""
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "ምን አይነት አከፋፈል?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr ""
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr ""
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "ክፋይ %sን በማስተካከል ላይ"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr ""
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
-#, fuzzy, c-format
-msgid "Check bad blocks?"
-msgstr "ተመልከት ይህንን"
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
+#, c-format
+msgid "Check for bad blocks?"
+msgstr ""
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "ወደ አዲሱ ክፋይ ፋይሎችን አንቀሳቅስ"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "ፋይሎች ደብቅ"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1877,128 +2006,127 @@ msgid ""
"the contents of the mounted partition)"
msgstr ""
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr ""
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "%sን በመገልበጥ ላይ"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "%sን በማስወገድ ላይ"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "%s ከአሁን በኋላ %s በመባል ይታወቃል"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr ""
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "መሳሪያ: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr ""
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr ""
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr ""
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "አይነት: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "ስም: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "ጀምር፦ ሴክተር %sን\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "መጠን: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ""
-#: diskdrake/interactive.pm:1301
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1439
+#, c-format
msgid "Cylinder %d to %d\n"
-msgstr "CD ወደ"
+msgstr ""
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr ""
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr ""
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "አልተስተካከለም\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr ""
-#: diskdrake/interactive.pm:1306
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1444
+#, c-format
msgid "RAID %s\n"
-msgstr "URI፦"
+msgstr ""
-#: diskdrake/interactive.pm:1308
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1446
+#, c-format
msgid "Encrypted"
-msgstr "የሚስጢራዊ ግልበጣ ቁልፍ"
+msgstr ""
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr ""
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2007,34 +2135,34 @@ msgstr ""
"ዞሮ መመለሻ ፋይል(ሎች):\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
" (for MS-DOS boot, not for lilo)\n"
msgstr ""
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "ደረጃ %s\n"
-#: diskdrake/interactive.pm:1320
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1461
+#, c-format
msgid "Chunk size %d KiB\n"
-msgstr "የፊደል ቅርጽ መጠን፦"
+msgstr ""
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr ""
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "ዞሮ መመለሻ ፋይል ስም: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2043,7 +2171,7 @@ msgid ""
"probably leave it alone.\n"
msgstr ""
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2052,67 +2180,62 @@ msgid ""
"dual-booting your system.\n"
msgstr ""
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr ""
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "ለንባብ ብቻ"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "መጠን፦ %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr ""
-#: diskdrake/interactive.pm:1351
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "ስም: "
+
+#: diskdrake/interactive.pm:1492
+#, c-format
msgid "Medium type: "
-msgstr "የፋይል ሲስተም አይነት: "
+msgstr ""
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr ""
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "የክፋይ ጠረጴዛ ዓይነት: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "በጣቢያ %d ID %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr ""
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr ""
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "የሚስጢራዊ ግልበጣ ቁልፍ (እንደገና)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr ""
@@ -2122,23 +2245,15 @@ msgstr ""
msgid "Change type"
msgstr "አይነት ለውጥ"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "ተወው"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr ""
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
-#, fuzzy, c-format
+#, c-format
msgid "Domain Authentication Required"
-msgstr "የተጠቃሚው የአጠቃቀም ደረጃ ያስፈልጋል"
+msgstr ""
#: diskdrake/smbnfs_gtk.pm:169
#, c-format
@@ -2173,72 +2288,79 @@ msgstr "ሰርቨሮችን ፈልግ"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "አዲስ ሰርቨሮችን ፈልግ"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "ጥቅል %s ይፈለጋል። መትከል ይፈልጋሉ?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
-#, fuzzy, c-format
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
+#, c-format
msgid "Could not install the %s package!"
-msgstr "ምርጫዎችን ማስቀመጥ አልተቻለም"
+msgstr ""
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr ""
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr ""
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "ጥቅሎችን በመትከል ላይ..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "ጥቅሎችን በማስወገድ ላይ..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
"filesystems. Please check your hardware for the cause of this problem"
msgstr ""
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr ""
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
msgstr ""
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "ፋይል %sን በመፍጠር እና በማስተካከል ላይ"
-#: fs/format.pm:119
+#: fs/format.pm:202
#, c-format
msgid "I do not know how to set label on %s with type %s"
msgstr ""
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "%s %sን ማስተካከል አልተሳካም"
+msgstr ""
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr ""
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s %sን ማስተካከል አልተሳካም"
@@ -2253,29 +2375,29 @@ msgstr ""
msgid "Mounting partition %s"
msgstr ""
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr ""
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "%sን በማጣራት ላይ"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "%sን የመንቀል ስህተት: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "የስዋፕ ክፋይ %sን በማስቻል ላይ"
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
+msgid "Enable POSIX Access Control Lists"
msgstr ""
#: fs/mount_options.pm:116
@@ -2291,7 +2413,7 @@ msgstr ""
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
@@ -2306,19 +2428,19 @@ msgstr ""
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr ""
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
@@ -2332,22 +2454,22 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr ""
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr ""
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr ""
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr ""
#: fs/mount_options.pm:147
@@ -2370,52 +2492,52 @@ msgstr "ለተራ ተጠቃሚዎች የመጻፍ ፈቃድ ስጥ"
msgid "Give read-only access to ordinary users"
msgstr "ለተራ ተጠቃሚዎች የንባብ ፈቃድ ብቻ ስጥ"
-#: fs/mount_point.pm:80
-#, fuzzy, c-format
+#: fs/mount_point.pm:87
+#, c-format
msgid "Duplicate mount point %s"
-msgstr "እያንዳንዱን የተመረጠውን አርዕስተ ጉዳይ አባዙ"
+msgstr ""
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "ምንም ክፋይ አልተገኘም"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr ""
-#: fs/mount_point.pm:105
-#, fuzzy, c-format
+#: fs/mount_point.pm:112
+#, c-format
msgid "Choose the mount points"
-msgstr "የመመልከቻውን ቀለም ይምረጡ"
+msgstr ""
-#: fs/partitioning.pm:46
-#, fuzzy, c-format
+#: fs/partitioning.pm:48
+#, c-format
msgid "Choose the partitions you want to format"
-msgstr "እባክዎ ለማሳየት የሚፈልጉትን ተጠቃሽ-መረጃ ይምረጡ:"
+msgstr ""
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
"you can lose data)"
msgstr ""
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr ""
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2423,87 +2545,55 @@ msgid ""
"Continue anyway?"
msgstr ""
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "ነጻ ቦታ ተጠቀም"
-#: fs/partitioning_wizard.pm:86
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:131
+#, c-format
msgid "Not enough free space to allocate new partitions"
-msgstr "ወደ አዲሱ ክፋይ ፋይሎችን አንቀሳቅስ"
+msgstr ""
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "የነበሩትን ክፋዮች ተጠቀም"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr ""
-#: fs/partitioning_wizard.pm:103
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
+msgid "Computing the size of the Microsoft Windows® partition"
msgstr ""
-#: fs/partitioning_wizard.pm:106
-#, fuzzy, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "%sን የት መትከል ይፈልጋሉ?"
-
-#: fs/partitioning_wizard.pm:108
+#: fs/partitioning_wizard.pm:201
#, c-format
-msgid "Choose the sizes"
-msgstr "መጠኖቹን ይምረጡ"
-
-#: fs/partitioning_wizard.pm:109
-#, fuzzy, c-format
-msgid "Root partition size in MB: "
-msgstr "አዲስ መጠን በMB: "
-
-#: fs/partitioning_wizard.pm:110
-#, fuzzy, c-format
-msgid "Swap partition size in MB: "
-msgstr "አዲስ መጠን በMB: "
-
-#: fs/partitioning_wizard.pm:119
-#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-
-#: fs/partitioning_wizard.pm:127
-#, fuzzy, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "የMicrosoft Windows® ክፋይ መጠን በማስተካከል ላይ"
-
-#: fs/partitioning_wizard.pm:129
-#, fuzzy, c-format
-msgid "Which partition do you want to resize?"
-msgstr "ምን ማድረግ ይፈልጋሉ?"
-
-#: fs/partitioning_wizard.pm:143
-#, c-format
-msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
msgstr ""
-#: fs/partitioning_wizard.pm:146
+#: fs/partitioning_wizard.pm:205
#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
+msgid "Which partition do you want to resize?"
msgstr ""
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
"Your Microsoft Windows® partition is too fragmented. Please reboot your "
"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+"the %s installation."
msgstr ""
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:215
+#, c-format
+msgid "Failed to find the partition to resize (%d choices)"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2514,8 +2604,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2524,135 +2614,145 @@ msgid ""
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "የሚቀጥለው"
-#: fs/partitioning_wizard.pm:168
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:237
+#, c-format
msgid "Partitionning"
-msgstr "መከፋፈል አልተሳካም: %s"
+msgstr ""
-#: fs/partitioning_wizard.pm:168
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:237
+#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
-msgstr "የMicrosoft Windows® ክፋይ መጠን በማስተካከል ላይ"
+msgstr ""
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "መጠን"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "የMicrosoft Windows® ክፋይ መጠን በማስተካከል ላይ"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "የFATን መጠን መለወጥ አልተሳካም: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr ""
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Microsoft Windows®ን አስወግድ"
-#: fs/partitioning_wizard.pm:203
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:273
+#, c-format
msgid "Erase and use entire disk"
-msgstr "ዲስኩን እንዳለ ደምስስ"
+msgstr ""
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
msgstr ""
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr ""
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "የተለመደውን ዲስክ አከፋፈል"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "fdiskን ተጠቀም"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
"When you are done, do not forget to save using `w'"
msgstr ""
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
#, c-format
-msgid "I can not find any room for installing"
+msgid "I cannot find any room for installing"
msgstr "የመትከያ ቦታ ማግኘት አልቻልኩም"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr ""
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr ""
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "መከፋፈል አልተሳካም: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr ""
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr ""
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "ቀላል"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "ከ/usr ጋር"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "ሰርቨር"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr ""
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2661,68 +2761,52 @@ msgid ""
"Do you agree to lose all the partitions?\n"
msgstr ""
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr ""
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr ""
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr ""
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-#: fsedit.pm:437
+#: fsedit.pm:478 fsedit.pm:489
#, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
+msgid "You cannot use an encrypted filesystem for mount point %s"
msgstr ""
-#: fsedit.pm:439
-#, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
-msgstr ""
-
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr ""
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr ""
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
msgstr ""
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "የሚሰራ ነገር የለም"
@@ -2732,420 +2816,401 @@ msgstr "የሚሰራ ነገር የለም"
msgid "SATA controllers"
msgstr "የSATA ተቆጣጣሪዎች"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "የRAID ተቆጣጣሪዎች"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "(E)IDE/ATA ተቆጣጣሪዎች"
-#: harddrake/data.pm:92
-#, fuzzy, c-format
+#: harddrake/data.pm:93
+#, c-format
msgid "Card readers"
-msgstr "የካርድ ሞዴል፦"
+msgstr ""
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "የFirewire ተቆጣጣሪዎች"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "የPCMCIA ተቆጣጣዊዎች"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "የSCSI ተቆጣጣዊዎች"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "የUSB ተቆጣጣቂዎች"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "የUSB ፖርቶች"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "የSMBus ተቆጣጣሪዎች"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "ድልድዮች እና ሲስተም ተቆጣጣሪዎች"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "ፍሎፒ"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "ዚፕ"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "ዲስክ"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr ""
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "ሲዲ-ሮም"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "ዲሲ/ዲቪዲ አቃጣይ ፕሮግራሞች"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "ዲቪዲ-ሮም"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "ቴፕ"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "የAGP ተቆጣጣሪዎች"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "የቪዲዮ ካርድ"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr ""
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "የቲቪ ካርድ"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "ሌሎች የመገናኛ ብዙሃን መሳሪያዎች"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "የድምጽ ካርድ"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "ዌብ-ካም"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr ""
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "የISDN ማመጣጠኛዎች"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr ""
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr ""
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr ""
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr ""
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr ""
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "የኢተርኔት ካርድ"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "ሞደም"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "የADSL ማመጣጠኛዎች"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "ማስታወሻ"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "ማተሚያ"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr ""
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "ጆይ ስቲክ"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "መተየቢያ"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr ""
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "መጠቆሚያ"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr ""
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "UPS"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr ""
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "ያልታወቀ/ሌሎች"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "ሲፒዩ #"
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "እባክዎ ይጠብቁ... ምርጫውን በስራ ላይ አያዋለ ነው"
+msgid "Couldn't install the required packages"
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Enable PulseAudio"
+msgid "Please check the repositories are correctly configured"
msgstr ""
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:462
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
+msgid "No known driver"
msgstr ""
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:463
#, c-format
-msgid "Enable user switching for audio applications"
+msgid "There's no known driver for your sound card (%s)"
msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:517
#, c-format
-msgid "Use Glitch-Free mode"
+msgid "You need to reboot for changes to take effect"
msgstr ""
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:522
#, c-format
-msgid "Reset sound mixer to default values"
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
msgstr ""
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:527
#, c-format
-msgid "Trouble shooting"
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
msgstr ""
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:541
#, fuzzy, c-format
-msgid "No alternative driver"
-msgstr "ምንም "
+msgid "Select the sound server"
+msgstr "አዲስ ሰርቨሮችን ፈልግ"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:551
#, c-format
-msgid ""
-"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
-"currently uses \"%s\""
+msgid "PulseAudio"
msgstr ""
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:552
#, c-format
-msgid "Sound configuration"
-msgstr "የድምጽ ምርጫ"
+msgid "PulseAudio with Glitch-Free mode"
+msgstr ""
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:553
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
+msgid "PipeWire with WirePlumber"
msgstr ""
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#: harddrake/sound.pm:554
#, c-format
-msgid ""
-"\n"
-"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
+msgid "PipeWire with PipeWire Media Session"
msgstr ""
-#: harddrake/sound.pm:414
+#: harddrake/sound.pm:561
#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
-"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
-"\n"
-"It also provides a much higher API than OSS.\n"
-"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
+msgid "Reset sound mixer to default values"
msgstr ""
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
+#: harddrake/sound.pm:565
#, c-format
-msgid "Driver:"
+msgid "Troubleshooting"
msgstr ""
-#: harddrake/sound.pm:442
+#: harddrake/sound.pm:571
#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
-"\n"
-"It has been reported to oops the kernel on unloading.\n"
-"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
msgstr ""
-#: harddrake/sound.pm:450
-#, fuzzy, c-format
-msgid "No open source driver"
-msgstr "ስለ የነፃው ሶፍትዌር መረጃ አሳይ"
+#: harddrake/sound.pm:581
+#, c-format
+msgid "No alternative driver"
+msgstr ""
-#: harddrake/sound.pm:451
+#: harddrake/sound.pm:582
#, c-format
msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
+"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
+"currently uses \"%s\""
msgstr ""
-#: harddrake/sound.pm:454
-#, fuzzy, c-format
-msgid "No known driver"
-msgstr "(ስለ ቃላት አጻጻፍ አስተያየት የለም)"
-
-#: harddrake/sound.pm:455
+#: harddrake/sound.pm:589
#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr ""
+msgid "Sound configuration"
+msgstr "የድምጽ ምርጫ"
-#: harddrake/sound.pm:470
+#: harddrake/sound.pm:603
#, c-format
-msgid "Sound trouble shooting"
+msgid "Sound troubleshooting"
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
+#: harddrake/sound.pm:606
#, c-format
msgid ""
-"The classic bug sound tester is to run the following commands:\n"
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr ""
-
-#: harddrake/sound.pm:503
-#, fuzzy, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "የነሲብ URLን አታስችል"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
+"\n"
+"\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
+"\n"
+"\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
+"\n"
+"\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
+"\n"
+"\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
#: harddrake/v4l.pm:12
@@ -3174,7 +3239,7 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
#: harddrake/v4l.pm:478
@@ -3183,74 +3248,77 @@ msgid "Card model:"
msgstr "የካርድ ሞዴል፦"
#: harddrake/v4l.pm:479
-#, fuzzy, c-format
+#, c-format
msgid "Tuner type:"
-msgstr "የፋይሉ ዓይነት"
+msgstr ""
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "እሺ"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "አዎ"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "አይ"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "ፋይል ይምረጡ"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "ጨምር"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "ለውጥ"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "ጨርስ"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "የቀድሞው"
-#: interactive/curses.pm:556 ugtk2.pm:872
-#, fuzzy, c-format
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
+#, c-format
msgid "No file chosen"
-msgstr "የፋይል ምልክት"
+msgstr ""
-#: interactive/curses.pm:560 ugtk2.pm:876
-#, fuzzy, c-format
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
+#, c-format
msgid "You have chosen a directory, not a file"
-msgstr "የቤት ዶሴ አልተገኘም።"
+msgstr ""
-#: interactive/curses.pm:562 ugtk2.pm:878
-#, fuzzy, c-format
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
+#, c-format
msgid "No such directory"
-msgstr "ዶሴ አይደለም"
+msgstr ""
-#: interactive/curses.pm:562 ugtk2.pm:878
-#, fuzzy, c-format
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
+#, c-format
msgid "No such file"
-msgstr "ፋይሉ `%s'ን የለም\n"
+msgstr ""
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr ""
@@ -3327,1248 +3395,1262 @@ msgstr "እንደገና ውሰድ"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "አንዶራ"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "የተባበሩት አረብ ኤምሬትስ"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "አፍጋኒስታን"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "አንቲጉዋ እና ባርቡዳ"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "አንጉኢላ"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "አልባኒያ"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "አርሜኒያ"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "ኔዘርላንድስ አንቲልስ"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "አንጐላ"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "አንታርክቲካ"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "አርጀንቲና"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "የአሜሪካ ሳሞአ"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "ኦስትሪያ"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "አውስትሬሊያ"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "አሩባ"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "አዘርባጃን"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "ቦስኒያ እና ሄርዞጎቪኒያ"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "ባርቤዶስ"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "ባንግላዲሽ"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "ቤልጄም"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "ቡርኪና ፋሶ"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "ቡልጌሪያ"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "ባህሬን"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "ብሩንዲ"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "ቤኒን"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "ቤርሙዳ"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "ብሩኒ ዳሩሳላም"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "ቦሊቪያ"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "ብራዚል"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "ባሃማስ"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "ቡህታን"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "የቦውቬት ደሴት"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "ቦትስዋና"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "ቤላሩስ"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "ቤሊዘ"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "ካናዳ"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "ኮኮስ (ኬሊንግ) ደሴቶች"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "የኮንጐ ዲሞክራሲያዊ ሪፑብሊክ"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "የመካከለኛው አፍሪካ ሪፐብሊክ"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "የኮንጐ ዲሞክራሲያዊ ሪፑብሊክ"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "ስዊዘርላንድ"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "ኮት ዲቯር"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "ኩክ ደሴቶች"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "ቺሊ"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "ካሜሩን"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "ቻይና"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "ኮሎምቢያ"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "ኮስታሪካ"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "ሰርቢያ እና ሞንትኔግሮ"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "ኩባ"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "ኬፕ ቬርዴ"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "የገና ደሴቶች"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "ሳይፕረስ"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "ቼክ ሪፑብሊክ"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "ጀርመን"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "ጂቡቲ"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "ዴንማርክ"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "ዶሚኒካ"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "ዶሚኒክ ሪፑብሊክ"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "አልጄሪያ"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "ኢኳዶር"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "ኤስቶኒያ"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "ግብጽ"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "ምዕራባዊ ሳህራ"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "ኤርትራ"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "ስፔን"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "ኢትዮጵያ"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "ፊንላንድ"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "ፊጂ አይላንድ"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "ማርሻላዊ (የማርሻል አይላንድ)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "ሚክሮኔዢያ"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "ካይማን ደሴቶች"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "ፈረንሳይ"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "ጋቦን"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "እንግሊዝ"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "ግሬናዳ"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "ጆርጂያ"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "የፈረንሳይ ጉዊአና"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "ጋና"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "ጊብራልታር"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "ግሪንላንድ"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "ጋምቢያ"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "ጊኒ"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "ጉዋደሉፕ"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "ኢኳቶሪያል ጊኒ"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "ግሪክ"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "ደቡብ ጆርጂያ እና የደቡብ ሳንድዊች ደሴቶች"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "ጉዋቲማላ"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "ጉዋም"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "ጊኒ-ቢሳዎ"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "ጉያና"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "ቻይንኛ (የሆንግ ኮንግ)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "የቱርኮችና የካኢኮስ ደሴቶች"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "ሆንዱራስ"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "ክሮኤሽያ"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "ሀይቲ*"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "ሀንጋሪ"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "ኢንዶኔዢያ"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "አየርላንድ"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "እስራኤል"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "ህንድ"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "የብሪታኒያ ህንድ ውቂያኖስ ግዛት"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "ኢራቅ"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "ኢራን"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "አይስላንድ"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "ጣሊያን"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "ጃማይካ"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "ጆርዳን"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "ጃፓን"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "ኬንያ"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "ኪርጂክስታን"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "ካምቦዲያ"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "ኪሪባቲ"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "ኮሞሮስ"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "ቅዱስ ኪትስ እና ኔቪስ"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "ኮሪያ (ሰሜን)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "ኮሪያ ሪፐብሊክ"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "ክዌት"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "ካይማን ደሴቶች"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "ካዛኪስታን"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "ላኦስ"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "ሊባኖስ"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "ሴንት ሉቺያ"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "ሊችተንስታይን"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "ሲሪላንካ"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "ላይቤሪያ"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "ሌሶቶ"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "ሊቱዌኒያ"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "ሉክሰምበርግ"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "ላትቪያ"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "ሊቢያ"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "ሞሮኮ"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "ሞናኮ"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "ሞልዶቫ"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "ማዳጋስካር"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "ማርሻል አይላንድ"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "ማከዶኒያ"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "ማሊ"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "ማያንማር"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "ሞንጎሊያ"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "የሰሜናዊ ማሪያና ደሴቶች"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "ማርቲኒክ"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "ሞሪቴኒያ"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "ሞንትሴራት"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "ማልታ"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "ማሩሸስ"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "ማልዲቭስ"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "ማላዊ"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "ሜክሲኮ"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "ማሌዢያ"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "ሞዛምቢክ"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "ናሚቢያ"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "ኒው ካሌዶኒያ"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "ኒጀር"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "ኖርፎልክ ደሴት"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "ናይጄሪያ"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "ኒካራጓ"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "ኔዘርላንድ"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "ኖርዌይ"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "ኔፓል"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "ናኡሩ"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "ኒኡይ"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "ኒው ዚላንድ"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "ኦማን"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "ፓናማ"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "ፔሩ"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "የፈረንሳይ ፖሊኔዢያ"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "ፓፑዋ ኒው ጊኒ"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "ፊሊፒንስ"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "ፓኪስታን"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "ፖላንድ"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "ቅዱስ ፒዬር እና ሚኩኤሎን"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "ፒትካኢርን"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "ፖርታ ሪኮ"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "ፓለስታይን"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "ፖርቱጋል"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "ፓራጓይ"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "ፓላው"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "ኳታር"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "ሪዩኒየን ደሴት"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "ሮሜኒያ"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "ራሺያ"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "ሩዋንዳ"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "ሳውድአረቢያ"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "ሰሎሞን ደሴት"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "ሲሼልስ"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "ሱዳን"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "ስዊድን"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "ሲንጋፖር"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "ሴንት ሄለና"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "ስሎቬኒያ"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "ስቫልባርድ እና ጃን ሜይን ደሴቶች"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "ስሎቫኪያ"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "ሴራሊዮን"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "ሳን ማሪኖ"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "ሴኔጋል"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "ሱማሌ"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "ሱሪናም"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "ሳኦ ቶሜ እና ፕሪንሲፔ"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "ኤል ሳልቫዶር"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "ሲሪያ"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "ሱዋዚላንድ"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "የቱርኮችና የካኢኮስ ደሴቶች"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "ቻድ"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "የፈረንሳይ ደቡባዊ ግዛቶች"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "ቶጐ"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "ታይላንድ"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "ታጃኪስታን"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "ቶክላው"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "ምስራቅ ቲሞር"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "ቱርክሜኒስታን"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "ቱኒዚያ"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "ቶንጋ"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "ቱርክ"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "ትሪኒዳድ እና ቶባጎ"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "ቱቫሉ"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "ታይዋን"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "ታንዛኒያ"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "ዩክሬን"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "ዩጋንዳ"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "የአሜሪካ ጥቃቅን ውጫዊ ደሴቶች"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "አሜሪካ"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "ኡራጓይ"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "ዩዝበኪስታን"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "ቫቲካን ከተማ"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "ቅዱስ ቪንሴንት እና ግሬናዲንስ"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "ቬንዙዌላ"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "የእንግሊዝ ድንግል ደሴቶች"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "የእንግሊዝ ድንግል ደሴቶች"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "ቬትናም"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "ቫኑአቱ"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "ዋሊስ እና ፉቱና ደሴቶች"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "የአሜሪካ ሳሞአ"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "የመን"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "ሜይኦቴ"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "ደቡብ አፍሪካ"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "ዛምቢያ"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "ዚምቧቤ"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "ወደ %s እንኳን ደህና መጡ"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr ""
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr ""
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr ""
+#. -PO: Only write something if needed:
#: messages.pm:11
#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr ""
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr ""
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4582,16 +4664,23 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4599,15 +4688,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4616,51 +4705,66 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
+"you."
+msgstr ""
+
+#: messages.pm:68
+#, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr ""
+
+#: messages.pm:70
+#, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. %s\n"
+"entities.\n"
"Most of these licenses allow you to use, duplicate, adapt or redistribute "
"the components which \n"
"they cover. Please read carefully the terms and conditions of the license "
"agreement for each component \n"
"before using any component. Any question on a component license should be "
"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr ""
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr ""
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4672,143 +4776,49 @@ msgid ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
-msgstr ""
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"For any question on this document, please contact Mageia."
msgstr ""
-#: messages.pm:107
+#: messages.pm:102
#, c-format
msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"Warning: Free Software may not necessarily be patent free, and some Free\n"
+"Software included may be covered by patents in your country. For example, "
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
#: messages.pm:112
#, c-format
msgid ""
-"Warning: Free Software may not necessarily be patent free, and some Free\n"
-"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
-#: messages.pm:120
+#: messages.pm:114
#, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"For information on fixes which are available for this release of Mageia,\n"
+"consult the Errata available from:\n"
+"%s"
msgstr ""
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:116
#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
-"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
msgstr ""
#: modules/interactive.pm:19
-#, fuzzy, c-format
+#, c-format
msgid "This driver has no configuration parameter!"
-msgstr "ተስተካክሎ የተቀመጠውን ባዕድ መነሻ ጥቀስ"
+msgstr ""
#: modules/interactive.pm:22
#, c-format
@@ -4821,9 +4831,9 @@ msgid "You can configure each parameter of the module here."
msgstr ""
#: modules/interactive.pm:64
-#, fuzzy, c-format
+#, c-format
msgid "Found %s interfaces"
-msgstr "አልተገኘም"
+msgstr ""
#: modules/interactive.pm:65
#, c-format
@@ -4847,17 +4857,17 @@ msgstr ""
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
+msgid "Installing driver for firewire controller \"%s\""
msgstr ""
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
+msgid "Installing driver for hard disk drive controller \"%s\""
msgstr ""
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
+msgid "Installing driver for ethernet controller \"%s\""
msgstr ""
#. -PO: the first %s is the card type (scsi, network, sound,...)
@@ -4927,126 +4937,126 @@ msgid ""
"Do you want to try again with other parameters?"
msgstr ""
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr ""
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
msgstr ""
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "ሚስጥር-ቃል ያስፈልጋል"
-
-#: partition_table.pm:411
-#, fuzzy, c-format
-msgid "mount failed: "
-msgstr "%s አልተገኘም"
+msgstr ""
-#: partition_table.pm:523
+#: partition_table.pm:508
#, c-format
-msgid "Extended partition not supported on this platform"
+msgid "mount failed: "
msgstr ""
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
msgstr ""
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr ""
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr ""
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr ""
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
"configuration."
msgstr ""
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr ""
-#: pkgs.pm:269 pkgs.pm:270
-#, fuzzy, c-format
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
msgid "Unused hardware support"
-msgstr "የሬዲዮ ድጋፍ አስቻል"
+msgstr ""
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr ""
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
msgstr ""
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr ""
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr ""
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr ""
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr ""
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr ""
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr ""
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr ""
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr ""
@@ -5057,19 +5067,19 @@ msgid "Accept bogus IPv4 error messages."
msgstr ""
#: security/help.pm:13
-#, fuzzy, c-format
+#, c-format
msgid "Accept broadcasted icmp echo."
-msgstr "አስተያየት የተሰጠበትን ለውጥ ተቀበል"
+msgstr ""
#: security/help.pm:15
-#, fuzzy, c-format
+#, c-format
msgid "Accept icmp echo."
-msgstr "አስተያየት የተሰጠበትን ለውጥ ተቀበል"
+msgstr ""
#: security/help.pm:17
-#, fuzzy, c-format
+#, c-format
msgid "Allow autologin."
-msgstr "የተለመደውን ቱልባሮች ፍቀድ"
+msgstr ""
#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
#: security/help.pm:21
@@ -5088,14 +5098,14 @@ msgid "Allow reboot by the console user."
msgstr ""
#: security/help.pm:29
-#, fuzzy, c-format
+#, c-format
msgid "Allow remote root login."
-msgstr "የሚፈነጠቅ መመልከቻ ሲጀምር _አሳይ"
+msgstr ""
#: security/help.pm:31
-#, fuzzy, c-format
+#, c-format
msgid "Allow direct root login."
-msgstr "የሚፈነጠቅ መመልከቻ ሲጀምር _አሳይ"
+msgstr ""
#: security/help.pm:33
#, c-format
@@ -5144,8 +5154,8 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
#: security/help.pm:63
@@ -5183,9 +5193,9 @@ msgid ""
msgstr ""
#: security/help.pm:80
-#, fuzzy, c-format
+#, c-format
msgid "Security Alerts:"
-msgstr "የደህንነት ደረጃ፦"
+msgstr ""
#: security/help.pm:82
#, c-format
@@ -5203,9 +5213,9 @@ msgid "Enable the logging of IPv4 strange packets."
msgstr ""
#: security/help.pm:88
-#, fuzzy, c-format
+#, c-format
msgid "Enable msec hourly security check."
-msgstr "ተመልከት ይህንን"
+msgstr ""
#: security/help.pm:90
#, c-format
@@ -5221,13 +5231,13 @@ msgstr ""
#: security/help.pm:94
#, c-format
-msgid "Activate ethernet cards promiscuity check."
+msgid "Activate Ethernet cards promiscuity check."
msgstr ""
#: security/help.pm:96
-#, fuzzy, c-format
+#, c-format
msgid "Activate daily security check."
-msgstr "ተመልከት ይህንን"
+msgstr ""
#: security/help.pm:98
#, c-format
@@ -5257,9 +5267,9 @@ msgid ""
msgstr ""
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "የገጽ &ቅንጅት"
+msgstr ""
#: security/help.pm:109
#, c-format
@@ -5375,9 +5385,9 @@ msgid "Timeout unit is second"
msgstr ""
#: security/help.pm:138
-#, fuzzy, c-format
+#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "የአቢወርድ ቋንቋ፦"
+msgstr ""
#: security/l10n.pm:11
#, c-format
@@ -5390,14 +5400,14 @@ msgid "Accept broadcasted icmp echo"
msgstr ""
#: security/l10n.pm:13
-#, fuzzy, c-format
+#, c-format
msgid "Accept icmp echo"
-msgstr "አስተያየት የተሰጠበትን ለውጥ ተቀበል"
+msgstr ""
#: security/l10n.pm:15
-#, fuzzy, c-format
+#, c-format
msgid "/etc/issue* exist"
-msgstr "%s ሰነድ የለም"
+msgstr ""
#: security/l10n.pm:16
#, c-format
@@ -5410,9 +5420,9 @@ msgid "Allow remote root login"
msgstr ""
#: security/l10n.pm:18
-#, fuzzy, c-format
+#, c-format
msgid "Direct root login"
-msgstr "የሚፈነጠቅ መመልከቻ ሲጀምር _አሳይ"
+msgstr ""
#: security/l10n.pm:19
#, c-format
@@ -5425,9 +5435,9 @@ msgid "Export display when passing from root to the other users"
msgstr ""
#: security/l10n.pm:21
-#, fuzzy, c-format
+#, c-format
msgid "Allow X Window connections"
-msgstr "ይህንን መስኮት አተልቀው"
+msgstr ""
#: security/l10n.pm:22
#, c-format
@@ -5495,9 +5505,9 @@ msgid "Ethernet cards promiscuity check"
msgstr ""
#: security/l10n.pm:35
-#, fuzzy, c-format
+#, c-format
msgid "Daily security check"
-msgstr "ተመልከት ይህንን"
+msgstr ""
#: security/l10n.pm:36
#, c-format
@@ -5515,9 +5525,9 @@ msgid "Set password expiration and account inactivation delays"
msgstr ""
#: security/l10n.pm:39
-#, fuzzy, c-format
+#, c-format
msgid "Password history length"
-msgstr "የታሪክ መስኮት ክፈት"
+msgstr ""
#: security/l10n.pm:40
#, c-format
@@ -5525,34 +5535,34 @@ msgid "Password minimum length and number of digits and upcase letters"
msgstr ""
#: security/l10n.pm:41
-#, fuzzy, c-format
+#, c-format
msgid "Root umask"
-msgstr "የRoot የሚስጢር ቃል ፦"
+msgstr ""
#: security/l10n.pm:42
-#, fuzzy, c-format
+#, c-format
msgid "Shell history size"
-msgstr "አውቶማቲክ የአምድ መጠን"
+msgstr ""
#: security/l10n.pm:43
-#, fuzzy, c-format
+#, c-format
msgid "Shell timeout"
-msgstr "የሼል ውጤት"
+msgstr ""
#: security/l10n.pm:44
-#, fuzzy, c-format
+#, c-format
msgid "User umask"
-msgstr "የተጠቃሚ ስም"
+msgstr ""
#: security/l10n.pm:45
-#, fuzzy, c-format
+#, c-format
msgid "Check open ports"
-msgstr "ስለ &Open Source"
+msgstr ""
#: security/l10n.pm:46
-#, fuzzy, c-format
+#, c-format
msgid "Check for unsecured accounts"
-msgstr "ሰነዱን ከተሳሳተ የቃላት አጻጻፍ አጣሩ"
+msgstr ""
#: security/l10n.pm:47
#, c-format
@@ -5590,9 +5600,9 @@ msgid "Check additions/removals of suid root files"
msgstr ""
#: security/l10n.pm:54
-#, fuzzy, c-format
+#, c-format
msgid "Report unowned files"
-msgstr "ሁሉንም የምስል ፋይሎች"
+msgstr ""
#: security/l10n.pm:55
#, c-format
@@ -5600,9 +5610,9 @@ msgid "Check files/directories writable by everybody"
msgstr ""
#: security/l10n.pm:56
-#, fuzzy, c-format
+#, c-format
msgid "Run chkrootkit checks"
-msgstr "በተርሚናሉ ውስጥ &አስኪድ"
+msgstr ""
#: security/l10n.pm:57
#, c-format
@@ -5645,11 +5655,11 @@ msgid "Standard"
msgstr "መደበኛ"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "ደህንነት"
+msgstr ""
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -5658,14 +5668,14 @@ msgid ""
"on your own."
msgstr ""
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
"to connect to the Internet as a client."
msgstr ""
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -5676,62 +5686,77 @@ msgid ""
"Internet, you should choose a lower level."
msgstr ""
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
-msgid "Security"
-msgstr "ደህንነት"
-
-#: security/level.pm:51
-#, fuzzy, c-format
msgid "DrakSec Basic Options"
-msgstr "ባለሁለት አቅጣጫ ምርጫዎች"
+msgstr ""
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr ""
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr ""
-#: security/level.pm:61
-#, fuzzy, c-format
+#: security/level.pm:73
+#, c-format
msgid "Security Administrator:"
-msgstr "የደህንነት ደረጃ፦"
+msgstr ""
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
msgstr ""
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr ""
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr ""
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
"It can also be used for shutting down the machine when the battery is low."
msgstr ""
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
"at was run, and runs batch commands when the load average is low enough."
msgstr ""
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr ""
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -5740,18 +5765,18 @@ msgid ""
"UNIX cron, including better security and more powerful configuration options."
msgstr ""
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr ""
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -5759,7 +5784,20 @@ msgid ""
"It is used by GNOME and KDE"
msgstr ""
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -5768,25 +5806,25 @@ msgid ""
"and includes support for pop-up menus on the console."
msgstr ""
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
"new/changed hardware."
msgstr ""
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
msgstr ""
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -5797,14 +5835,23 @@ msgid ""
"all of the services it is responsible for."
msgstr ""
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -5812,68 +5859,103 @@ msgid ""
"You should leave this enabled for most machines."
msgstr ""
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
"/usr/include/linux/{autoconf,version}.h"
msgstr ""
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr ""
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
"at boot-time to maintain the system configuration."
msgstr ""
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
"basically a server that arbitrates print jobs to printer(s)."
msgstr ""
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
"available server."
msgstr ""
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
"names to IP addresses."
msgstr ""
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
"Manager/Windows), and NCP (NetWare) mount points."
msgstr ""
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
"at boot time."
msgstr ""
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -5881,31 +5963,36 @@ msgid ""
"/etc/exports file."
msgstr ""
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
"networks. This service provides NFS file locking functionality."
msgstr ""
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
"and Xorg at boot."
msgstr ""
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr ""
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -5914,7 +6001,7 @@ msgid ""
"it installed on machines that do not need it."
msgstr ""
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -5923,28 +6010,38 @@ msgid ""
"which act as servers for protocols which make use of the RPC mechanism."
msgstr ""
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
"one machine to another."
msgstr ""
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
"number generation."
msgstr ""
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr ""
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -5952,167 +6049,196 @@ msgid ""
"routing protocols are needed for complex networks."
msgstr ""
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
"performance metrics for any machine on that network."
msgstr ""
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
"logged in on other responding machines."
msgstr ""
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
"logged into a machine running the rwho daemon (similar to finger)."
msgstr ""
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr ""
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
"to various system log files. It is a good idea to always run syslog."
msgstr ""
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr ""
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr ""
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr ""
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "በማተም ላይ"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "ኢንተርኔት"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "ሰነድ መጋራት"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "መረብ"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "ሲስተም"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr ""
-#: services.pm:142
-#, fuzzy, c-format
+#: services.pm:194
+#, c-format
msgid "Database Server"
-msgstr "ስለተጠሪ መረጃ"
+msgstr ""
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "አገልግሎት"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr ""
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
+msgid "%d activated for %d registered"
msgstr ""
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "በሥራ ላይ"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr ""
-#: services.pm:213
-#, fuzzy, c-format
+#: services.pm:256
+#, c-format
msgid "Services and daemons"
-msgstr "የገጽ አናት እና የገጽ ግርጌ"
+msgstr ""
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
"about this service, sorry."
msgstr ""
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "መረጃ"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "በተጠየቀ ጊዜ ጀምር"
-#: services.pm:227
-#, fuzzy, c-format
+#: services.pm:269
+#, c-format
msgid "On boot"
-msgstr "የተመሠረተው፦"
+msgstr ""
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "ጀምር"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "አቁም"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6131,7 +6257,7 @@ msgid ""
"USA.\n"
msgstr ""
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6147,28 +6273,27 @@ msgid ""
"--version : show version number.\n"
msgstr ""
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6179,7 +6304,7 @@ msgid ""
" --wizard - like --add"
msgstr ""
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6197,11 +6322,11 @@ msgid ""
" : and gs for ghostscript for only this one."
msgstr ""
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6215,17 +6340,17 @@ msgid ""
"IP, nbi image name)"
msgstr ""
-#: standalone.pm:100
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[መተየቢያ]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr ""
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6239,26 +6364,26 @@ msgid ""
"--quiet : do not be interactive. To be used with (dis)connect."
msgstr ""
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
msgstr ""
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6266,7 +6391,7 @@ msgid ""
" XFdrake resolution"
msgstr ""
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6274,71 +6399,76 @@ msgid ""
"testing] [-v|--version] "
msgstr ""
-#: timezone.pm:161 timezone.pm:162
-#, fuzzy, c-format
+#: timezone.pm:170 timezone.pm:171
+#, c-format
msgid "All servers"
-msgstr "ተጠሪ ጨምር"
+msgstr ""
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr ""
-#: timezone.pm:199
-#, fuzzy, c-format
+#: timezone.pm:210
+#, c-format
msgid "Africa"
-msgstr "ደቡብ አፍሪካ"
+msgstr ""
-#: timezone.pm:200
-#, fuzzy, c-format
+#: timezone.pm:211
+#, c-format
msgid "Asia"
-msgstr "ኦስትሪያ"
+msgstr ""
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr ""
-#: timezone.pm:202
-#, fuzzy, c-format
+#: timezone.pm:213
+#, c-format
msgid "North America"
-msgstr "ደቡብ አፍሪካ"
+msgstr ""
-#: timezone.pm:203
-#, fuzzy, c-format
+#: timezone.pm:214
+#, c-format
msgid "Oceania"
-msgstr "ማከዶኒያ"
+msgstr ""
-#: timezone.pm:204
-#, fuzzy, c-format
+#: timezone.pm:215
+#, c-format
msgid "South America"
-msgstr "ደቡብ አፍሪካ"
+msgstr ""
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "ሆንግ ኮንግ"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "ራሺያ"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "ዩጎዝላቪያ"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "ይህ ትክክል ነው?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr ""
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "መረጃ"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -6347,107 +6477,6 @@ msgid ""
msgstr ""
#: wizards.pm:99
-#, fuzzy, c-format
+#, c-format
msgid "Installation failed"
-msgstr "%s አልተገኘም"
-
-#, fuzzy
-#~ msgid "Welcome To Crackers"
-#~ msgstr "እንደገና የሚሰራ ምንም የለም።"
-
-#~ msgid "High"
-#~ msgstr "ከፍ ያለ"
-
-#, fuzzy
-#~ msgid "Use libsafe for servers"
-#~ msgstr "ለህብሩ የglyph ቅርጽ አወጣት ተጠቀም"
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "የLILO/grub ተከላ"
-
-#, fuzzy
-#~ msgid "Security level"
-#~ msgstr "የደህንነት ደረጃ፦"
-
-#~ msgid "Choose action"
-#~ msgstr "ተግባር ይምረጡ"
-
-#, fuzzy
-#~ msgid "Active Directory with SFU"
-#~ msgstr "አኃዞች (ከክፍተት ጋር)"
-
-#, fuzzy
-#~ msgid "Active Directory with Winbind"
-#~ msgstr "አኃዞች (ከክፍተት ጋር)"
-
-#, fuzzy
-#~ msgid "Active Directory with SFU:"
-#~ msgstr "አኃዞች (ከክፍተት ጋር)"
-
-#, fuzzy
-#~ msgid "Active Directory with Winbind:"
-#~ msgstr "አኃዞች (ከክፍተት ጋር)"
-
-#, fuzzy
-#~ msgid "Authentication Active Directory"
-#~ msgstr "የX ዘገባ የማስትገባት ዘዴ"
-
-#, fuzzy
-#~ msgid "LDAP users database"
-#~ msgstr "ዳታቤዝ"
-
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "የWindows ዶሜን ትክክለኝነቱን ማረጋጥ"
-
-#~ msgid "Undo"
-#~ msgstr "ወደ ነበረበት መልስ"
-
-#~ msgid "Save partition table"
-#~ msgstr "የክፋይ ሠንጠረዡን አስቀምጥ"
-
-#~ msgid "Restore partition table"
-#~ msgstr "የክፋይ ሠንጠረዡ ወደ ነበረበት መልስ"
-
-#~ msgid "Info: "
-#~ msgstr "መረጃ: "
-
-#, fuzzy
-#~ msgid "Unknown driver"
-#~ msgstr "ያልታወቀ የሆሄያት ኮድ፦ "
-
-#~ msgid "Error reading file %s"
-#~ msgstr "%sን በማንበብ ላይ ስህተት ተፈጥሯል"
-
-#, fuzzy
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "ከ &pot ሰነድ አሻሽል"
-
-#, fuzzy
-#~ msgid "Bad backup file"
-#~ msgstr "ጥሩው የፋይል ዓይነት"
-
-#, fuzzy
-#~ msgid "Error writing to file %s"
-#~ msgstr "ስህተት፦ የታቀደው ፋይል '%s'ን መክፈት አልተቻለም\n"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Add user"
-#~ msgstr "ተጠቃሚ ጨምር"
-
-#~ msgid "Accept user"
-#~ msgstr "ተጠቃሚ ተቀበል"
-
-#~ msgid "Rescue partition table"
-#~ msgstr "የክፋይ ሠንጠረዡን አድን"
-
-#, fuzzy
-#~ msgid "Number of capture buffers:"
-#~ msgstr "የአምዶቹን ቍጥር ለውጥ"
-
-#~ msgid "PLL setting:"
-#~ msgstr "የPLL ምርጫ"
-
-#~ msgid "Radio support:"
-#~ msgstr "የሬዲዮ ድጋፍ"
+msgstr ""
diff --git a/perl-install/share/po/ar.po b/perl-install/share/po/ar.po
index afe6a0f13..7c190c7ab 100644
--- a/perl-install/share/po/ar.po
+++ b/perl-install/share/po/ar.po
@@ -1,40 +1,37 @@
-# translation of DrakX.po to Arabic
-# Amr Fathy <amr10@menanet.net>, 2001.
-# Mohammed Gamal <f2c2001@yahoo.com>, 2002.
-# Youcef Rabah Rahal <rahal@arabeyes.org>, 2004.
-# Ossama M. Khayat <okhayat@yahoo.com>, 2004, 2005.
-# Munzir Taha <munzir@kacst.edu.sa>, 2004.
-# Abdulaziz Al-Arfaj <alarfaj@arabeyes.org>, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
+# Translators:
msgid ""
msgstr ""
-"Project-Id-Version: DrakX\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2005-03-03 01:06+0300\n"
-"Last-Translator: Ossama M. Khayat <okhayat@yahoo.com>\n"
-"Language-Team: Arabic <support@arabeyes.org>\n"
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2016-02-09 07:19+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Arabic (http://www.transifex.com/MageiaLinux/mageia/language/"
+"ar/)\n"
+"Language: ar\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
-"Plural-Forms: nplurals=4; plural=n==1 ? 0 : n==2 ? 1 : n>=3 && n<=10 ? 2 : "
-"3\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
+"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "الرجاء الانتظار"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "محمل الإقلاع قيد التثبيت"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -50,35 +47,17 @@ msgstr ""
"\n"
"أتريد تعيين رقم هويّة كتلة جديد؟"
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr "فشل تثبيت محمّل الإقلاع. حدث الخطأ التالي:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"قد تحتاج إلى تغيير جهاز إقلاع Open Firmware كي تُمكّن مُحمّل الإقلاع. إن لم يكن "
-"مُلقّن محمّل الإقلاع يظهر\n"
-"عند إعادة التشغيل، ابق ضاغطاً على Command-Option-O-F عند إعادة التتشغيل "
-"وأدخل:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" ثم اكتب: shut-down\n"
-"بعد إقلاع النظام التالي يجب أن ترى مُلقّن محمّل الإقلاع."
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
@@ -88,274 +67,273 @@ msgstr ""
"\n"
"على أي قرص تقوم بالإقلاع؟"
-#: any.pm:346
-#, fuzzy, c-format
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr ""
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "أين تريد تثبيت محمّل الإقلاع؟"
+
+#: any.pm:365
+#, c-format
msgid "First sector (MBR) of drive %s"
-msgstr "القطاع الأول من القرص (MBR)"
+msgstr ""
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "القطاع الأول من القرص (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr "القطاع الأول من التجزيء الجذري"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "على قرص مرن"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "تخطّي"
-#: any.pm:358
-#, fuzzy, c-format
-msgid "Bootloader Installation"
-msgstr "محمل الإقلاع قيد التثبيت"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "أين تريد تثبيت محمّل الإقلاع؟"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "تهيئة أسلوب الإقلاع"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr ""
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "خيارات محمّل الإقلاع الرئيسية"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "محمّل الإقلاع"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "محمّل الإقلاع المُستخدم"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "جهاز الإقلاع"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
-msgstr ""
+msgstr "الخيارات الرئيسية"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "توقيت ما قبل إقلاع الصورة الافتراضية"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "تمكين ACPI"
-#: any.pm:411
-#, fuzzy, c-format
+#: any.pm:432
+#, c-format
msgid "Enable SMP"
-msgstr "تمكين ACPI"
+msgstr ""
-#: any.pm:412
-#, fuzzy, c-format
+#: any.pm:433
+#, c-format
msgid "Enable APIC"
-msgstr "تمكين ACPI"
+msgstr ""
-#: any.pm:413
-#, fuzzy, c-format
+#: any.pm:435
+#, c-format
msgid "Enable Local APIC"
-msgstr "تمكين ACPI"
+msgstr ""
+
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "الأمن"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "كلمة المرور"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "كلمات المرور غير متطابقة"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "الرجاء المحاولة مجدداً"
-#: any.pm:418
-#, fuzzy, c-format
-msgid "You can not use a password with %s"
-msgstr "لا يمكنك استخدام نظام ملفات مرمّز لمكان التركيب %s"
+#: any.pm:442
+#, c-format
+msgid "You cannot use a password with %s"
+msgstr ""
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "كلمة المرور (مجدداً)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "تشديد خيارات سطر الأوامر"
+msgid "Bootloader Configuration"
+msgstr ""
-#: any.pm:422
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "فشل التّثبيت"
+
+#: any.pm:533
#, c-format
-msgid "restrict"
-msgstr "تشديد"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr ""
-#: any.pm:423
+#: any.pm:535 any.pm:794
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
-msgstr "خيار ``تشديد خيارات سطر الأوامر`` لا ينفع دون كلمة مرور"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
-#: any.pm:425
+#: any.pm:537
+#, c-format
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr ""
+
+#: any.pm:539
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "تنظيف /tmp عند كل إقلاع"
+msgid "Background"
+msgstr ""
-#: any.pm:434
+#: any.pm:544
#, c-format
-msgid "Init Message"
-msgstr "رسالة Init"
+msgid "rEFInd banner"
+msgstr ""
+
+#: any.pm:545
+#, fuzzy, c-format
+msgid "Mageia theme"
+msgstr "ماجيّا"
-#: any.pm:436
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Open Firmware Delay"
-msgstr "تأخير Open Firmware"
+msgid "Custom"
+msgstr "مخصّص"
-#: any.pm:437
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "لا مشاركة"
+
+#: any.pm:565
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "الوقت الأقصى لإقلاع النواة"
+msgid "Scale to fit"
+msgstr ""
-#: any.pm:438
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable CD Boot?"
-msgstr "تمكين الإقلاع من القرص المدمج؟"
+msgid "Label"
+msgstr "تسمية"
-#: any.pm:439
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Enable OF Boot?"
-msgstr "تمكين إقلاع OF؟"
+msgid "Append"
+msgstr "إلحاق"
-#: any.pm:440
+#: any.pm:612 any.pm:624 any.pm:781
#, c-format
-msgid "Default OS?"
-msgstr "نظام التشغيل الافتراضي؟"
+msgid "Video mode"
+msgstr "وضعية الفيديو"
-#: any.pm:513
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "صورة"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "الجذر"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "إلحاق"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr ""
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "وضعية الفيديو"
+msgid "Requires password to boot"
+msgstr ""
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "سجلّ إعداد الشبكة "
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "تسمية"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "افتراضي"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "لا فيديو"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "لا يُسمح بالتسميات الفارغة"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "يجب تحديد صورة النواة"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "يجب تحديد تجزيء جذر"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "هذه التسمية مستخدمة مسبقا"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "ما نوع المدخل المُراد إضافته؟"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "لينكس"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "نظام تشغيل آخر (SunOS...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "نظام تشغيل آخر (MacOS...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "نظام تشغيل آخر (ويندوز...)"
-#: any.pm:621
-#, fuzzy, c-format
-msgid "Bootloader Configuration"
-msgstr "تهيئة أسلوب الإقلاع"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -364,271 +342,321 @@ msgstr ""
"هذه هي المدخلات المختلفة في قائمة الإقلاع حتى الآن.\n"
"يمكنك إضافة مدخلات أخرى أو تغيير الموجودة."
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr ""
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "تحذير"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr ""
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "الوصول إلى برامج X"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "الوصول إلى أدوات rpm"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "السماح بـ\"su\""
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr "الوصول إلى ملفات الإدارة"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "الوصول إلى أدوات الشبكة"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "الوصول إلى أدوات التجميع"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(تمت إضافة %s مسبقا)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "الرجاء إعطاء اسم مستخدم"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
-msgstr "اسم المستخدم يجب أن يحتوي فقط على الحروف الصغيرة، والأرقام، و`-' و `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
+msgstr ""
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "اسم المستخدم طويل جداً"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "اسم المستخدم مُضاف مسبقا"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "هوية المستخدم"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "هوية المجموعة"
-#: any.pm:817
-#, fuzzy, c-format
+#: any.pm:1086
+#, c-format
msgid "%s must be a number"
-msgstr "الخيار %s يجب أن يكون رقماً!"
+msgstr ""
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
+msgid "%s should be above 1000. Accept anyway?"
msgstr ""
-#: any.pm:822
-#, fuzzy, c-format
+#: any.pm:1091
+#, c-format
msgid "User management"
-msgstr "اسم المستخدم"
+msgstr ""
-#: any.pm:828 authentication.pm:237
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr ""
+
+#: any.pm:1099 authentication.pm:236
#, c-format
msgid "Set administrator (root) password"
msgstr "ضع كلمة مرور المستخدم الجذر"
-#: any.pm:833
-#, fuzzy, c-format
+#: any.pm:1105
+#, c-format
msgid "Enter a user"
msgstr ""
-"إدخال مستخدم\n"
-"%s"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "أيقونة"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "الاسم الحقيقي"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "اسم الدخول"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "الصدفة"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr ""
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
msgstr "انتظر من فضلك، جاري إضافة الوسائط..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "تسجيل دخول آلي"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr "يمكن إعداد جهازك لتسجيل الدخول آلياً لمستخدم معين."
-#: any.pm:916
-#, fuzzy, c-format
+#: any.pm:1251
+#, c-format
msgid "Use this feature"
-msgstr "هل تريد استخدام هذه الميزة؟"
+msgstr ""
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "اختيار المستخدم الافتراضي:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "اختيار مدير النوافذ الذي سيتم تشغيله:"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
msgstr "ملاحظات الإصدار"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "إغلاق"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "اتفاقية الترخيص"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "خروج"
-#: any.pm:1017
-#, fuzzy, c-format
+#: any.pm:1343
+#, c-format
msgid "Do you accept this license ?"
-msgstr "هل عندك واحدة أخرى؟"
+msgstr ""
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "قبول"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "رفض"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "الرجاء اختيار لغة لاستخدامها"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"يدعم ماندريبا لينكس العديد من اللّغات. اختر\n"
-"اللّغات التي تريد تثبيتها. ستكون هذه متوفرةً عند\n"
-"اكتمال التثبيت و إعادة تشغيل نظامك."
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "ماجيّا"
+
+#: any.pm:1401
#, c-format
-msgid "Multi languages"
+msgid "Multiple languages"
msgstr ""
-#: any.pm:1087 any.pm:1119
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr ""
+
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr ""
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "كل اللغات"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "خيار اللغة"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "الدولة / الإقليم"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
msgstr "الرجاء اختيار الدولة"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "هذه قائمة كاملة بكل الدول المتوفرة"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "دول أخرى"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "متقدم"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr "طريقة الإدخال:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "لاشيء"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "لا مشاركة"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "السماح لكل المستخدمين"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "مخصّص"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -643,14 +671,14 @@ msgstr ""
"\n"
"\"مخصص\" يسمح لك بعمل إعدادات خاص لكل مستخدم.\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
"Windows."
msgstr "NFS: نظام تقسيم ملفّات يونكس التّقليدي، بدعم أقلّ على ماك و ويندوز."
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
@@ -659,18 +687,18 @@ msgstr ""
"SMB: نظام تقسيم ملفّات مستعمل من قبل ويندوز، ماك OS X و العديد من أنظمة لينكس "
"الحديثة."
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
msgstr "يمكنك التّصدير باستعمال NFS أو SMB. الرجاء اختيار أيّهما تريد استعماله."
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "تشغيل userdrake"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
@@ -679,58 +707,113 @@ msgstr ""
"المشاركة لكل مستخدم تستخدم المجموعة \"fileshare\".\n"
"يمكنك أن تستخدم userdrake لإضافة مستخدم في هذه المجموعة."
-#: any.pm:1421
-#, fuzzy, c-format
+#: any.pm:1768
+#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
-msgstr "تحتاج أن تقوم بالخروج والعودة مجدّداً حتى يسري مفعول التّغييرات"
+msgstr ""
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr "تحتاج أن تقوم بالخروج والعودة مجدّداً حتى يسري مفعول التّغييرات"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "المنطقة الزمنية"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "ما هي منطقتك الزمنية؟"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
-msgstr ""
+msgstr "إعدادات التاريخ ، الساعة و المنطقة الزمنية"
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr ""
-#: any.pm:1490
-#, fuzzy, c-format
+#: any.pm:1837
+#, c-format
msgid "%s (hardware clock set to UTC)"
-msgstr "ساعة الجهاز مضبوطة على توقيت غرينتش"
+msgstr ""
-#: any.pm:1491
-#, fuzzy, c-format
+#: any.pm:1838
+#, c-format
msgid "%s (hardware clock set to local time)"
-msgstr "ساعة الجهاز مضبوطة على توقيت غرينتش"
+msgstr ""
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "خادم NTP"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "تزامن وقت آلي (باستخدام NTP)"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "مسار المرآة؟"
+
+#: any.pm:1880
+#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "يجب أن يبدأ المسار بـ http:// أو بـ ftp://"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr "جاري الاتصال بموقع %s للحصول على قائمة بالمرايا المتوفرة..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr "فشل الاتصال بموقع %s للحصول على قائمة بالمرايا المتوفرة"
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "اختر مرآة لتحصيل الحزم"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "إلغاء"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "تحقق آلي"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "حدد الخيارات"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "محمّل الإقلاع"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -751,7 +834,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr "بطاقة ذكيّة"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "نطاق ويندوز"
@@ -761,24 +844,24 @@ msgstr "نطاق ويندوز"
msgid "Kerberos 5"
msgstr ""
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "ملفّ محلّي:"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
"استخدام local لكل المواثقة والمعلومات التي يخبرها المستخدم في ملف local"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
@@ -787,12 +870,12 @@ msgstr ""
"يطلب من حاسبك استعمال LDAP للبعض من أو لجميع المواثقة. يقوم LDAP بتوحيد "
"البعض من أنواع المعلومات داخل منظّمتك."
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
@@ -801,12 +884,12 @@ msgstr ""
"يسمح لك بتشغيل مجموعة من الحاسبات في نفس خدمة معلومات الشّبكة (NIS) بكلمة "
"مرور و ملفّ مجموعة مشتركين."
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "نطاق ويندوز:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
@@ -814,248 +897,248 @@ msgid ""
msgstr ""
"يسمح Winbind للنّظام بجلب المعلومات و مواثقة المستخدمين في نطاق لويندوز."
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
-msgstr ""
+msgstr " "
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
-#, fuzzy, c-format
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr "مواثقة النطاق مطلوبة"
+msgstr ""
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "خادم LDAP"
-#: authentication.pm:113 authentication.pm:168
-#, fuzzy, c-format
+#: authentication.pm:112 authentication.pm:167
+#, c-format
msgid "Base dn"
-msgstr "LDAP Base dn"
+msgstr ""
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr ""
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr ""
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr ""
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr ""
-#: authentication.pm:120 authentication.pm:173
-#, fuzzy, c-format
+#: authentication.pm:119 authentication.pm:172
+#, c-format
msgid "Use anonymous BIND "
-msgstr "استخدام Anonymous BIND"
+msgstr ""
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
-msgstr ""
+msgstr " "
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr ""
-#: authentication.pm:123 authentication.pm:175
-#, fuzzy, c-format
+#: authentication.pm:122 authentication.pm:174
+#, c-format
msgid "Bind Password "
-msgstr "كلمة المرور"
+msgstr ""
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr ""
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "كلمة المرور"
+msgstr ""
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "هوية المجموعة"
+msgstr ""
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr ""
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "الاسم الحقيقي"
+msgstr ""
-#: authentication.pm:148
-#, fuzzy, c-format
+#: authentication.pm:147
+#, c-format
msgid "KDCs Servers"
-msgstr "خادم LDAP"
+msgstr ""
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr ""
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr ""
-#: authentication.pm:156
-#, fuzzy, c-format
+#: authentication.pm:155
+#, c-format
msgid "Use local file for users information"
-msgstr "استخدام libsafe للخادمات"
+msgstr ""
-#: authentication.pm:157
-#, fuzzy, c-format
-msgid "Use Ldap for users information"
-msgstr "معلومات القرص الصلب"
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr ""
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr ""
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "نطاق NIS"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "خادم NIS"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "النطاق"
+msgstr ""
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr ""
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "نطاق NIS"
+msgstr ""
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "خادم LDAP"
+msgstr ""
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "المواثقة"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "طريقة المواثقة"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "بدون كلمة مرور"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr "كلمة المرو هذه قصيرة جداً (يجب أن تكون %d رموز على الأقل)"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "لم يمكن استخدام البثّ دون اسم نظام NIS"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "اختيار ملف"
-#: authentication.pm:897
-#, fuzzy, c-format
+#: authentication.pm:882
+#, c-format
msgid "Domain Windows for authentication : "
-msgstr "مواثقة النطاق مطلوبة"
+msgstr ""
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "اسم المستخدم لمدير النطاق"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "كلمة المرور لمدير النطاق"
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1070,107 +1153,113 @@ msgstr ""
"wait for default boot.\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO مع قائمة نصية"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
#, c-format
-msgid "GRUB with graphical menu"
+msgid "GRUB2 with graphical menu"
msgstr ""
-#: bootloader.pm:1134
+#: bootloader.pm:1480
#, c-format
-msgid "GRUB with text menu"
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 مع قائمة نصية"
+
+#: bootloader.pm:1481
+#, c-format
+msgid "GRUB with graphical menu"
msgstr ""
-#: bootloader.pm:1135
+#: bootloader.pm:1482
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "GRUB with text menu"
+msgstr "GRUB مع قائمة نصية"
-#: bootloader.pm:1136
+#: bootloader.pm:1483
#, c-format
-msgid "SILO"
+msgid "rEFInd with graphical menu"
msgstr ""
-#: bootloader.pm:1218
+#: bootloader.pm:1484
+#, fuzzy, c-format
+msgid "U-Boot/Extlinux with text menu"
+msgstr "U-Boot/Extlinux مع قائمة نصية"
+
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "لا توجد مساحة كافية في /boot"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "يمكنك تثبيت محمّل الإقلاع على التجزيء %s\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
"renumbered"
msgstr "تهيئة محمّل الإقلاع يجب أن يحدّث لأنّ التجزيء تمّ إعادة ترقيمه"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
-"لا يمكن تثبيت محمّل الإقلاع بشكل صحيح. يجب أن تقوم بإقلاع الإنقاذ وتختار \"%s"
-"\""
+"لا يمكن تثبيت محمّل الإقلاع بشكل صحيح. يجب أن تقوم بإقلاع الإنقاذ وتختار "
+"\"%s\""
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "إعادة تثبيت مُحمِّل الإقلاع"
-#: common.pm:142
-#, fuzzy, c-format
+#: common.pm:271
+#, c-format
msgid "B"
-msgstr "ك.ب."
+msgstr "B"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "ك.ب."
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "م.ب."
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "غ.ب."
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "ت.ب."
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr ""
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d دقائق"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "دقيقة واحدة"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d ثوان"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr ""
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1189,12 +1278,12 @@ msgstr ""
msgid "New"
msgstr "جديد"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "فكّ"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "تركيب"
@@ -1204,43 +1293,44 @@ msgstr "تركيب"
msgid "Server"
msgstr "خادم"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "مكان التركيب"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "خيارات"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "حذف"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "تم"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "خطأ"
@@ -1255,80 +1345,71 @@ msgstr "الرجاء إدخال عنوان خادم WebDav"
msgid "The URL must begin with http:// or https://"
msgstr "العنوان يجب أن يبدأ بـ http:// أو https://"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "تحذير"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "هل تريد الضغط على هذا الزرّ؟"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr ""
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "الخادم: "
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "مكان التركيب:"
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "الخيارات: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "التجزئة"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "اقرأ جيدا"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "رجاء نسخ بياناتك احتياطيّاً أولاً"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "خروج"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "استمرار"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "مساعدة"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1339,141 +1420,132 @@ msgstr ""
"أقترح أن تغيّر حجم هذا التجزيء\n"
"(اضغط عليه ثم اختر \"تغيير الحجم\")"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "الرجاء الضغط على تجزيء"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "تفاصيل"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "تعذّر العثور على أقراص صلبة"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "مجهول"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
-msgid "Ext3"
-msgstr "خروج"
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
msgid "XFS"
-msgstr "HFS"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Swap"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "ويندوز"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "أخرى"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "فارغ"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "أنواع أنظمة الملفات:"
-#: diskdrake/hd_gtk.pm:407
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:461
+#, c-format
msgid "This partition is already empty"
-msgstr "هذا التجزيء غير قابل لتغيير الحجم"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "استخدام ``الفكّ'' أولا"
-#: diskdrake/hd_gtk.pm:416
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:470
+#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "استخدام ``%s'' بدلا من ذلك"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "النوع"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "اختيار تجزيء آخر"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "اختيار تجزيء"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "المزيد"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
+#, c-format
msgid "Confirmation"
-msgstr "التهيئة"
+msgstr "التأكيد"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "استمرار على أي حال؟"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "الخروج بدون حفظ"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "هل تريد الخروج بدون كتابة جدول التجزئة؟"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "هل تريد حفظ تعديلات /etc/fstab"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr "تحتاج إلى إعادة التثبيت لتفعيل التعديلات على جدول التجزئة"
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1484,162 +1556,187 @@ msgstr ""
"إن لم تفعل فلن يسجّل أي مُدخل لنقطة التّركيب %s في fstab.\n"
"هل تريد الخروج على أي حال؟"
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "مسح الكل"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "تحديد آلي"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "الانتقال إلى الوضع العادي"
+msgid "Normal mode"
+msgstr "الوضع العادي"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "الانتقال إلى وضعية الخبير"
+msgid "Expert mode"
+msgstr "إلى وضعية الخبير"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "معلومات القرص الصلب"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "كل التجزيئات الرئيسية مستخدمة"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "لا يمكن إضافة أي تجزيئات أخرى"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
"partition"
msgstr "للحصول على تجزيئات أكثر، يرجى إلغاء تجزيء كي تتمكن من عمل تجزيء ممتد"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "إعادة تحميل جدول التجزئة"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "معلومات مفصّلة"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
-msgstr ""
+msgstr "عرض"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "تغيير الحجم"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "تنسيق"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "إضافة إلى RAID"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "إضافة إلى LVM"
-#: diskdrake/interactive.pm:410
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:417
+#, c-format
msgid "Use"
-msgstr "هوية المستخدم"
+msgstr ""
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "حذف"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "ازالة من RAID"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "ازالة من LVM"
-#: diskdrake/interactive.pm:415
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:422
+#, c-format
msgid "Remove from dm"
-msgstr "ازالة من LVM"
+msgstr ""
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "تعديل RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "استخدام لـloopback"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "إنشاء"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "نقل الملفات إلى تجزيء جديد"
+msgstr ""
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "إنشاء تجزيء جديد"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "قطاع البداية: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "الحجم بالميغابايت: "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "نوع نظام المفات: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "التفضيل: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "اسم الكتلة المنطقيّة"
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr ""
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "مفتاح التشفير (مرة أخرى)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "مفاتيح التشفير غير متطابقة"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
@@ -1647,294 +1744,307 @@ msgstr ""
"(لأنك وصلت إلى العدد الأقصى من التجزيئات الأساسية).\n"
"أولاً احذف تجزيء أساسياً و قم بإنشاء تجزيء ممتد."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "هل تريد إزالة ملف loopback؟"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr "بعد تغيير نوع التجزيء %s، فإنك ستسخر كل البيانات على هذا التجزيء"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "تغيير نوع التجزيء"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "أي نظام ملفات تريد؟"
-#: diskdrake/interactive.pm:594
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:650
+#, c-format
msgid "Switching from %s to %s"
-msgstr "جاري التغيير من ext2 إلى ext3"
+msgstr ""
-#: diskdrake/interactive.pm:624
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:685
+#, c-format
msgid "Set volume label"
-msgstr "علامة المجلّد: "
+msgstr ""
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr ""
-#: diskdrake/interactive.pm:630
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:691
+#, c-format
msgid "Label:"
-msgstr "تسمية"
+msgstr ""
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "أين تريد تركيب ملف loopback %s؟"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "أين تريد تركيب الجهاز %s؟"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"تعذّر فكّ مكان التركيب نظرا لأن هذه التجزيء مستخدم لـloop back.\n"
"قم بإزالة الـloopback أولا"
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "أين تريد تركيب الجهاز %s؟"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "تغيير الحجم"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "حساب روابط نظام ملفات FAT"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "هذا التجزيء غير قابل لتغيير الحجم"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "كل البيانات على هذ التجزيء يجب حفظها احتياطيا"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr "بعد تغيير حجم التجزيء %s، فإن كل البيانات على هذه التجزيء ستفقد"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "اختيار الحجم الجديد"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "الحجم الجديد بالميغابايت: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:805
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
+#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-"للتأكد من صحة البيانات بعد إعادة تحجيم التجزيئات، \n"
-"سيتم الدقيق على نظام الملفات عند التشغيل القادم لويندوز(TM)"
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "مفتاح تشفير نظام الملفات"
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "اختيار مفتاح تشفير نظام الملفات"
+msgstr ""
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "مفتاح التشفير"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr ""
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "اختيار RAID موجود للإضافة إليه"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "جديد"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "اختيار LVM، موجود للإضافة إليه"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
#, c-format
-msgid "LVM name?"
+msgid "LVM name"
msgstr "اسم LVM؟"
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr ""
+
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr ""
+
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
"Do you want to move used physical extents on this volume to other volumes?"
msgstr ""
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr ""
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "هذه التجزيء لا يمكن استخدامه لـloopback"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Loopback"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "اسم ملف Loopback: "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "إعطاء اسم ملف"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr "هذا الملف مستخدم من loopback أخرى، اختر ملفا آخر"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "الملف موجود مسبقا، هل تريد استخدامه؟"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "خيارات التركيب"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "متنوعة"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "جهاز"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "المستوى"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
msgstr "حجم القطعة الكبيرة بالكيلوبايت (KiB)"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "كن حذرا: هذه العملية خطيرة"
-#: diskdrake/interactive.pm:1109
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1250
+#, c-format
msgid "Partitioning Type"
-msgstr "التجزئة"
+msgstr ""
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "أي نوع من التجزئة؟"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr "ستحتاج إلى إعادة التشغيل قبل أن يتم تفعيل التعديلات"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "جدول التجزئة للقرص %s سيتم كتابته إلى القرص"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "جاري تنسيق التجزيء %s"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr "بعد تنسيق التجزيء %s، فإن كل البيانات الموجودة على هذا التجزيء ستفقد"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "تحقق من الكتل السيئة؟"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "نقل الملفات إلى تجزيء جديد"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "تخبئة الملفات"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1945,128 +2055,127 @@ msgid ""
"the contents of the mounted partition)"
msgstr ""
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr "جاري نقل الملفات إلى التجزيء الجديد"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "جاري نسخ %s"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "جاري ازالة %s"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "التجزبء %s معروف الآن بالإسم %s"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr "تجزيئات تم إعادة ترقيمها:"
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "الجهاز: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr "علامة المجلّد: "
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr ""
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "حرف سواقة دوس: %s (مجرد تخمين)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "النوع: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "الاسم: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "البداية: قطاع %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "الحجم: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr "، %s قطاع"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "الاسطوانة %d إلى %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr ""
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "مُنسّق\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "غير مُنسّق\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "محمل\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1446
+#, c-format
msgid "Encrypted"
-msgstr "مفتاح التشفير"
+msgstr ""
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr ""
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2075,7 +2184,7 @@ msgstr ""
"ملفـ(ات) Loopback\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2084,27 +2193,27 @@ msgstr ""
"التجزيء الذي يتم إقلاعه افتراضيا\n"
" (لـ MS-DOS و ليس لـ lilo)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "المستوى %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
msgstr "حجم القطعة الكبيرة %d كيلوبايت (KiB)\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "أقراص RAID %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "اسم ملف Loopback: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2117,7 +2226,7 @@ msgstr ""
"تجزيء Driver. عليك\n"
"تركه لوحده.\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2130,67 +2239,62 @@ msgstr ""
"هذا هو\n"
"للإقلاع المزدوج في نظامك.\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr ""
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "للقراءة فقط"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "الحجم: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "الهندسة: %s اسطوانة، %s رأس، %s قطاع\n"
-#: diskdrake/interactive.pm:1351
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "الاسم: "
+
+#: diskdrake/interactive.pm:1492
+#, c-format
msgid "Medium type: "
-msgstr "نوع نظام المفات: "
+msgstr ""
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "أقراص LVM %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "نوع جدول التجزئة: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "على القناة %d id %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "اختيار مفتاح تشفير نظام الملفات"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr "مفتاح التشفير هذا بسيط جدا (يجب أن يكون %d حرفا على الأقل)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "مفاتيح التشفير غير متطابقة"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "مفتاح التشفير (مرة أخرى)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "خوارزمية التّشفير"
@@ -2200,17 +2304,9 @@ msgstr "خوارزمية التّشفير"
msgid "Change type"
msgstr "تغيير النوع"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "إلغاء"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr "تعذر الدخول باستخدام اسم المستخدم %s (كلمة مرور سيئة؟)"
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
@@ -2253,40 +2349,40 @@ msgstr "بحث في أجهزة الخادم"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "البحث عن خادمات جديدة"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "الحزمة %s يجب أن تُثبت. هل تريد تثبيتها؟"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr "تعذر تثبيت حزمة %s!"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "الحزمة الضرورية %s مفقودة"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "يجب تثبيت الحزم التالية:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "جاري تركيب الحزم..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "حذف الحزم..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
@@ -2295,32 +2391,39 @@ msgstr ""
"لقد ظهر خطأ - لم يعثر على أجهزة صالحة يمكن إنشاء أنظمة ملفات جديدة عليها. "
"تأكد من العتاد الخاص بك لمعرفة سبب هذه المشكلة"
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
+#, c-format
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "لديك تجزيء ESP FAT32 تم تحميلها على /boot/EFI"
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "لديك تجزيء FAT تم تحميلها على /boot/efi"
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "جاري إنشاء وتنسيق الملف %s"
-#: fs/format.pm:119
-#, fuzzy, c-format
+#: fs/format.pm:202
+#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "لا أعرف كيف أنسّق %s في النوع %s"
+msgstr ""
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "%s تنسيق %s قد فشل"
+msgstr ""
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "لا أعرف كيف أنسّق %s في النوع %s"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s تنسيق %s قد فشل"
@@ -2335,30 +2438,30 @@ msgstr "تركيبات حلقيّة %s\n"
msgid "Mounting partition %s"
msgstr "تركيب التجزيء %s"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "فشل تركيب التجزيء %s في الدليل %s"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "جاري التأكد من %s"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "خطأ في فكّ %s: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "جاري تمكين تجزيء التبديل %s"
#: fs/mount_options.pm:114
-#, fuzzy, c-format
-msgid "Use an encrypted file system"
-msgstr "لا يمكنك استخدام نظام ملفات مرمّز لمكان التركيب %s"
+#, c-format
+msgid "Enable POSIX Access Control Lists"
+msgstr ""
#: fs/mount_options.pm:116
#, c-format
@@ -2373,40 +2476,38 @@ msgstr ""
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
"عدم تحديث أوقات الوصول إلى inode على نظام الملفّات هذا\n"
"(مثلا، من أجل وصول أسرع إلى مخزن الأخبار لتسرّع خادمات الأخبار)."
#: fs/mount_options.pm:123
-#, fuzzy, c-format
+#, c-format
msgid ""
"Update inode access times on this filesystem in a more efficient way\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
-"عدم تحديث أوقات الوصول إلى inode على نظام الملفّات هذا\n"
-"(مثلا، من أجل وصول أسرع إلى مخزن الأخبار لتسرّع خادمات الأخبار)."
#: fs/mount_options.pm:126
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
"يمكن تجهيزه فقط بشكل بيّن (أي،\n"
"أن الخيار -a سوف لن يجعل نظام الملفّات يُجهّز)."
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr "عدم ترجمة الأجهزة الحرفيّة أو الكتليّة الخاصّة على نظام الملفّات."
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
"عدم السماح بتنفيذ أي برامج مُجمّعة على نظام الملفّات المُجهّز.\n"
@@ -2426,22 +2527,22 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr "تجهيز نظام الملفّات بوضع القراءة فقط."
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr "كل الدّخل/الخرج إلى نظام الملفّات يجب أن يحدث تزامنيّاً."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr ""
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr ""
#: fs/mount_options.pm:147
@@ -2464,32 +2565,32 @@ msgstr "إعطاء إمكانية الكتابة لعامة المستخدمين
msgid "Give read-only access to ordinary users"
msgstr "أعط صلاحية الكتابة لعامة المستخدمين"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "نقطة تركيب مكررّة %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "لا يوجد تجزيء"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "جاري عمل مسح للتجزئات لإيجاد أماكن التركيب"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "اختيار أماكن التركيب"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "اختيار التجزيئات التي تريد تنسيقها"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2498,23 +2599,23 @@ msgstr ""
"تعذر التأكد من صحة نظام المفات %s. هل تريد تصحيح الأخطاء (كن حذراً، يمكن أن "
"تخسر بيانات)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr "لا توجد مساحة تبديل كافية للقيام بالتثبيت، الرجاء زيادة مساحة التبديل"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"يجب أن تكون لديك تجزيء جذرية.\n"
"لهذا الغرض انشئ تجزيء (أو اضغط على تجزيء موجودة).\n"
"ثم اختر ``مكان التركيب'' و اجعله `/'"
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2525,91 +2626,55 @@ msgstr ""
"\n"
"هل تريد المتابعة على أي حال؟"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "استخدام المساحة الفارغة"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "لا توجد مساحة فارغة لعمل التجزيئات الجديدة"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "استخدم التجزيئات الموجودة"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "لا يوجد تجزيء لاستخدامه"
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "استخدم تجزيء ويندوز كـloopback"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "أي تجزيء تريد استخدامه من أجل Linux4Win"
-
-#: fs/partitioning_wizard.pm:108
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Choose the sizes"
-msgstr "اختيار الأحجام"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "حجم التجزيء الجذري بالميغابايت:"
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "حجم تجزيء التبديل بالميغابايت:"
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "جاري حساب مساحة تجزيء ويندوز"
-#: fs/partitioning_wizard.pm:119
+#: fs/partitioning_wizard.pm:201
#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr "لا يوجد تجزيء FAT لاستخدامه كـloopback )أو لا توجد مساحة كافية متبقية)"
-
-#: fs/partitioning_wizard.pm:127
-#, fuzzy, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "استخدام المساحة الفارغة على تجزيء ويندوز"
+msgstr ""
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "أي تجزيء تريد تغيير حجمه؟"
-#: fs/partitioning_wizard.pm:143
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
msgstr ""
-"لم تتمكن أداة تغيير حجم FAT من التعامل مع تجزيئك، \n"
-"ظهر الخطأ التالي: %s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "جاري حساب مساحة تجزيء ويندوز"
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:215
#, c-format
-msgid ""
-"Your Microsoft Windows® partition is too fragmented. Please reboot your "
-"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+msgid "Failed to find the partition to resize (%d choices)"
msgstr ""
-"تجزيء ويندوز الخاصّ بك كثير التجزّئات. رجاء أعد تشغيل جهازك إلى ويندوز، شغّل "
-"أداة ``defrag''، ثمّ أعد بدْء تثبيت ماندريبا لينكس."
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2620,8 +2685,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2643,82 +2708,75 @@ msgstr ""
"عندما تكون متأكداً، اضغط %s."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "التالي"
-#: fs/partitioning_wizard.pm:168
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:237
+#, c-format
msgid "Partitionning"
-msgstr "التجزئة"
+msgstr ""
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr "ما حجم المساحة التي تريد إبقائها لويندوز على التجزيء %s؟"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "الحجم"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "تغيير حجم تجزيء ويندوز"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "فشل تغيير حجم FAT: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"للتأكد من صحة البيانات بعد إعادة تحجيم التجزيئات، \n"
-"سيتم الدقيق على نظام الملفات عند التشغيل القادم لويندوز(TM)"
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr "لا توجد تجزيء FAT قابل لتغيير حجمها (أو لا توجد مساحة كافية متبقية)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "حذف ويندوز(TM)"
-#: fs/partitioning_wizard.pm:203
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:273
+#, c-format
msgid "Erase and use entire disk"
-msgstr "مسح كل القرص"
+msgstr ""
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
-msgstr "لديك أكثر من قرص صلب، في أيهم تريد تثبيت لينكس؟"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr "كل التجزيئات و بياناتها ستضيع من على السواقة %s"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "تجزئة قرص مخصصة"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "استخدام fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2727,55 +2785,70 @@ msgstr ""
"يمكنك الآن تجزئة %s.\n"
"عندما تنتهي لا تنس الحفظ باستخدام `w'"
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
#, c-format
-msgid "I can not find any room for installing"
+msgid "Ext2/3/4"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
+#, c-format
+msgid "I cannot find any room for installing"
msgstr "لا يمكنني العثور على مساحة فارغة للتثبيت"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "عثر معالج التجزئة في DrakX على الحلول التالية:"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr ""
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "فشلت التجزئة: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr "لا يمكنك استخدام JFS للتجزئات أصغر من 16 ميغابايت"
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "لا يمكنك استخدام ReiserFS للتجزئات أصغر من 32 ميغابايت"
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "بسيط"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "مع /usr"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "خادم"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr ""
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2790,76 +2863,54 @@ msgstr ""
"\n"
"هل أنت موافق على خسارة كل التجزيئات؟\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "يجب أن تبدأ أماكن التركيب بالعلامة /"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "أماكن التركيب يجب أن تحتوي فقط على الحروف و/أو الآرقام"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "هناك تجزيء مع مكان التركيب %s مسبقاً\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"لقد اخترت تجزئة RAID برمجية كتجزيء جذري (/).\n"
-"لا يستطيع أي محمّل إقلاع التعامل مع ذلك بدون تجزيء /boot.\n"
-"الرجاء التأكد من إضافة تجزيء /boot"
-#: fsedit.pm:437
-#, fuzzy, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr "لا يمكنك استخدام كتلة LVM المنطقيّة لمكان التركيب %s"
-
-#: fsedit.pm:439
-#, fuzzy, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
+#: fsedit.pm:478 fsedit.pm:489
+#, c-format
+msgid "You cannot use an encrypted filesystem for mount point %s"
msgstr ""
-"لقد اخترت تجزيء كتلة منطقيّة LVM كدليل جزر (/).\n"
-"لا يستطيع محمّل الإقلاع التعامل مع ذلك بدون تجزيء /boot.\n"
-"الرجاء التأكّد من أن تضيف تجزيء /boot"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "هذا الدليل يجب أن يكون في نظام الملفات الجذري"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
"تحتاج إلى نظام ملفات حقيقي (ext2/ext3، resierfs، xfs، أو jfs) لمكان التركيب "
"هذه\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr "لا يمكنك استخدام نظام ملفات مرمّز لمكان التركيب %s"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
msgstr "لا توجد مساحة كافية للتحديد الآلي"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "لا شيء لعمله"
@@ -2869,467 +2920,402 @@ msgstr "لا شيء لعمله"
msgid "SATA controllers"
msgstr "متحكّمات SATA"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "متحكّمات RAID"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "متحكمات (E)IDE/ATA"
-#: harddrake/data.pm:92
-#, fuzzy, c-format
+#: harddrake/data.pm:93
+#, c-format
msgid "Card readers"
-msgstr "نوع البطاقة"
+msgstr ""
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "متحكمات Firewire"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "متحكمات PCMCIA"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "متحكمات SCSI"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "متحكمات USB"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "منافذ USB"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "متحكّمات SMBus"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "الجسور ومتحكمات النظام"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "القرص المرن"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "القرص الصّلب"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr ""
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "القرص المدمج"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "أجهزة نسخ CD/DVD"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "شريط"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "متحكمات AGP"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "بطاقة الفيديو"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr ""
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "بطاقة التلفاز"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "أجهزة وسائط متعددة أخرى"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "بطاقة الصوت"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "كاميرات الوب"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "المُعالجات"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "مكيّفات ISDN"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr ""
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr ""
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr ""
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr ""
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr ""
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "بطاقة Ethernet"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "المودم"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "مكيّفات ADSL"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "الذاكرة"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "طابعة"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr ""
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "عصا الألعاب"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "لوحة المفاتيح"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr ""
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "الماوس"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr ""
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "مُزوّد الطاقة الغير منقطعة (UPS)"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "الماسح الضوئي"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "غير معروف/أخرى"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "cpu # "
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, fuzzy, c-format
+msgid "Couldn't install the required packages"
+msgstr "تعذر تثبيت حزمة %s!"
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "يرجى الإنتظار... جاري تطبيق التهيئة"
+msgid "Please check the repositories are correctly configured"
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:462
#, c-format
-msgid "Enable PulseAudio"
+msgid "No known driver"
+msgstr "لا يوجد مشغل معروف"
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr "لا يوجد مشغل معروف لبطاقة الصوت (%s)"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "تحتاج أن تقوم بالخروج والعودة مجدّداً حتى يسري مفعول التّغييرات"
+
+#: harddrake/sound.pm:522
+#, c-format
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
msgstr ""
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:527
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
msgstr ""
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "البحث عن خادمات جديدة"
+
+#: harddrake/sound.pm:551
#, c-format
-msgid "Enable user switching for audio applications"
+msgid "PulseAudio"
msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:552
#, c-format
-msgid "Use Glitch-Free mode"
+msgid "PulseAudio with Glitch-Free mode"
msgstr ""
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:553
+#, c-format
+msgid "PipeWire with WirePlumber"
+msgstr ""
+
+#: harddrake/sound.pm:554
+#, c-format
+msgid "PipeWire with PipeWire Media Session"
+msgstr ""
+
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
msgstr ""
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr "حل المشاكل"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr ""
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "لا مشغل بديل"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
"currently uses \"%s\""
msgstr "لا يوجد مشغل بديل (ALSA أو OSS) لبطاقة الصوت (%s) التي تستخدم \"%s\""
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "إعدادات الصوت"
-#: harddrake/sound.pm:407
-#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr "يمكنك هنا اختيار مشغل بديل (ALSA أو OSS) لبطاقة الصوت (%s)."
-
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"\n"
-"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
-"\n"
-"\n"
-"بطاقتك تستخدم المُشغّل %s\"%s\" حالياً (المُشغّل الحالي لبطاقتك هو \"%s\")"
+msgid "Sound troubleshooting"
+msgstr "حل مشاكل الصوت"
-#: harddrake/sound.pm:414
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"نظام الصّوت المفتوح (OSS) كان أو واجهة تطبيق للصّوت. إنه واجهة تطبيق للصّوت لا "
-"تعتمد نظام تشغيل معيّن (إنه متوفّر على معظم أنظم يونكس(tm)) إلّا أنّه واجهة "
-"تطبيق بسيطة ومحدودة.\n"
-"ماذا بعد، مُشغّلات OSS كلّها تعيد اختراع الإطار.\n"
"\n"
-"بناء صوت لينكس المتقدّم (ALSA) هو بناء وحديّ والذي\n"
-"يدعم مجموعة كبيرة من بطاقات ISA، USB وPCI.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"كما أنه يوفّر واجهة تطبيق أعلى من OSS.\n"
"\n"
-"لاستخدام alsa، يمكن إمّا استخدام:\n"
-"- التّوافق القديم مع واجهة تطبيق OSS\n"
-"- واجهة تطبيق ALSA الجديدة والتي توفّر العديد من الميزات المحسّنة إلّا أنّها "
-"تتطلّب مكتبة ALSA.\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "المُشغّل:"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"وضع مشغل \"%s\" القديم على القائمة السوداء.\n"
"\n"
-"أُفيد أنّه يتسبّب في بعض الحالات بانهيار في النواة عند ازالة التركيب.\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"مشغل \"%s\" الجديد سيتم استخدامه عند تشغيل الجهاز في المرة القادمة."
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "لا يوجد مشغل مفتوح المصدر"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"لا يوجد مشغل مفتوح المصدر لبطاقة الصوت (%s)، لكن هناك مشغل تجاري في \"%s\"."
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "لا يوجد مشغل معروف"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "لا يوجد مشغل معروف لبطاقة الصوت (%s)"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "حل مشاكل الصوت"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
"\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-"الاختبار الكلاسيكي لعلّة الصوت هو تشغيل الأوامر التّالية:\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" سيخبرك باسم مشغّل الذي تستخدمه بطاقتك "
-"الصّوتيّة بشكل افتراضي\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" سيخبرك باسم مشغّل\n"
-"المستخدم حاليّاً\n"
"\n"
-"- \"/sbin/lsmod\" سيمكّنك من التحقّق من أن وحدته (مشغّل) هي\n"
-"مُحمّلة أم لا\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" و \"/sbin/chkconfig --list alsa\" سوف\n"
-"يخبرك إن كانت خدمات الصّوت وalsa مُهيّئة للعمل على\n"
-"initlevel 3\n"
"\n"
-"- \"aumix -q\" سيخبرك ما إذا كان الصّوت مكتوماً أم لا\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" سيخبرك عن أيّ برنامج يستخدم بطاقة الصّوت.\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "اسمح لي أن أختار مشغل"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "جاري اختيار مشغل عام"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"إذا كنت تعتقد فعلاً أنك تعرف ما هو المُشغّل الصحيح لبطاقتك\n"
-"يمكنك اختياره من القائمة أعلاه.\n"
-"\n"
-"المُشغّل الحالي لبطاقة الصوت \"%s\" الخاصة بك هو \"%s\" "
#: harddrake/v4l.pm:12
#, c-format
@@ -3357,7 +3343,7 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
"لأغلب بطاقات التلفاز الحديثة، وحدة bttv لنواة لينكس يمكنها التحقق آلياً من "
"المعاملات الصحيحة.\n"
@@ -3374,70 +3360,73 @@ msgstr "نوع البطاقة"
msgid "Tuner type:"
msgstr "نوع الموالف:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "موافق"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "نعم"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "لا"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "اختيار ملف"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "إضافة"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "تعديل"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "انتهاء"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "السابق "
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "لم يتم اختيار أي ملف"
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "لقد اخترت دليلاً، وليس ملفاً"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "لا دليل كذلك"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "لا ملف كذلك"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr ""
@@ -3519,1248 +3508,1262 @@ msgstr "إعادة تسليم"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:RTL"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "أندورا"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "الإمارات العربية المتحدة"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "أفغانستان"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "أنتيغوا و باربودا"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "أنغويلا"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "ألبانيا"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "أرمينيا"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "أنتيل هولندا"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "أنغولا"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "القطب الجنوبي"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "الأرجنتين "
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "ساموا الأمريكية"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "النمسا"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "أوستراليا"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "أروبا"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "أذربيجان"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "البوسنة و الهرسك"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "باربادوس"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "بنغلاديش"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "بلجيكا"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "بوركينافاسو"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "بلغاريا"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "البحرين"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "بوروندي"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "بنين"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "برمودا"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "سلطنة بروناي"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "بوليفيا"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "البرازيل"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "جزر الباهاما"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "بوتان"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "جزيرة بوفيه"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "بوتسوانا"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "روسيا البيضاء"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "بيليز"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "كندا"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "جزر الكوكوس"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "الكونغو كينشاسا"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "جمهورية وسط أفريقية"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "الكونغو برازافيل"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "السويسرية"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "كوت ديفوار"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "جزر الكوك"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "تشيلي"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "الكاميرون"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "الصين"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "كولومبيا"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "كوستاريكا"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "صربيا و الجبل الأسود"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "كوبا"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "كيب فيردي"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "جزر الكريسماس"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "قبرص"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "جمهورية التشيك"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "ألمانيا"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "جيبوتي"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "الدنمارك"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "دومينيكا"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "جمهورية الدومينيكان"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "الجزائر"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "الإكوادور"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "استونيا"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "مصر"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "الصحراء الغربية"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "اريتريا"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "أسبانيا"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "اثيوبيا"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "فنلندا"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "فيجي"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "جزر فوكلاند"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "ميكرونيزيا"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "جزر الفيرو"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "فرنسا"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "الغابون"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "المملكة المتحدة"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "عرينادا"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "جورجيا"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "غويانا الفرنسية"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "غانا"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "جبل طارق"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "غرينلاند"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "غامبيا"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "غينيا"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "غواديلوب"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "غينيا الإستوائية"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "اليونان"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "جوجيا الجنوبية و جزر ساندويتش الجنوبية"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "غواتيمالا"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "غوام"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "غينيا-بيساو"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "غويانا"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "هونغ كونغ سار (الصين)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "جزر هيرد و ماكدونالد"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "هندوراس"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "كرواتيا"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "هايتي"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "المجر"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "اندونيسيا"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "أيرلندا"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "اسرائيل"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "الهند"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "منطقة جزر المحيط الهادي البريطانية"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "العراق"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "ايران"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "آيسلندا"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "إيطاليا"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "جامايكا"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "الأردن"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "اليابان"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "كينيا"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "قيرغيزستان"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "كمبوديا"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "كيريباتي"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "جزر القمر"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "سانت كيتس و نيفيس"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "كوريا الشمالية"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "كوريا"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "الكويت"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "جزر كايمان"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "كازاخستان"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "لاوس"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "لبنان"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "سانت لوسيا"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "ليشتنشتاين"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "سريلانكا"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "ليبريا"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "ليسوتو"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "ليتوانيا"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "لوكسمبورغ"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "لاتفيا"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "ليبيا"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "المغرب"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "موناكو"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "مولدوفا"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "مدغشقر"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "جزر مارشال"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "مقدونيا"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "مالي"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "ميانمار"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "منغوليا"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "جزر ماريانا الشمالية"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "مارتينيك"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "موريتانيا"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "مونتسيرات"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "مالطة"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "موريشيوس"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "جزر المالديف"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "مالاوي"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "المكسيك"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "ماليزيا"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "موزمبيق"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "ناميبيا"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "نيوكاليدونيا"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "النيجر"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "جزيرة نورفولك"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "نيجيريا"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "نيكاراغوا"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "هولندا"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "النرويج"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "نيبال"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "ناورو"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "نيوي"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "نيوزيلندا"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "عمان"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "بنما"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "بيرو"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "بولينيسيا الفرنسية"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "بابوا غينيا الجديدة"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "الفيليبين"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "باكستان"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "بولندا"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "سانت بيير و ميكيلون"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "بيتكايرن"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "بورتوريكو"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "فلسطين"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "البرتغال"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "البارجواي"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "بالاو"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "قطر"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "ريونيون"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "رومانيا"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "روسيا"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "رواندا"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "السعودية"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "جزر سليمان"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "جزر سيشل"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "السودان"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "السويد"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "سنغافورة"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "سانت هيلانة"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "سلوفينيا"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "جزر سفالبارد و جان ماين"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "سلوفاكيا"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "سيراليون"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "سان مارينو"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "السنغال"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "الصومال"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "سورينام"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "ساو تومي و البرينسيب"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "السلفادور"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "سورية"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "سوازيلاند"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "جزر الترك و الكايكوس"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "تشاد"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "مناطق جنوب فرنسا"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "توجو"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "تايلاند"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "طاجكستان"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "توكلاو"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "تيمور الشرقية"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "تركمانستان"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "تونس"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "تونجو"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "تركيا"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "ترينياد و توباجو"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "توفالو"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "تايوان"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "تنزانيا"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "أوكرانيا"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "أوغندا"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "جزر الولايات المتحدة"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "الولايات المتحدة"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "أوروغواي"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "أوزبكستان"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "الفاتيكان"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "سانت فينسنت و الغرينادين"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "فينزويلا"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "الجزر العذراء (بريطانيا)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "الجزر العذراء (الولايات المتحدة)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "فييتنام"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "فاناتو"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "واليس و فوتونا"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "ساموا"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "اليمن"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "مايوت"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "جنوب أفريقيا "
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "زامبيا"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "زيمبابوي"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "أهلا في %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr ""
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "حذف الكتل المنطقية أولاً\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr ""
+#. -PO: Only write something if needed:
#: messages.pm:11
-#, fuzzy, c-format
+#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr " "
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr ""
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr ""
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4774,16 +4777,23 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4791,15 +4801,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4808,51 +4818,66 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
+"you."
+msgstr ""
+
+#: messages.pm:68
+#, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr ""
+
+#: messages.pm:70
+#, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. %s\n"
+"entities.\n"
"Most of these licenses allow you to use, duplicate, adapt or redistribute "
"the components which \n"
"they cover. Please read carefully the terms and conditions of the license "
"agreement for each component \n"
"before using any component. Any question on a component license should be "
"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr ""
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr ""
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4864,158 +4889,20 @@ msgid ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
-msgstr ""
-"مقدّمة\n"
-"\n"
-"سيشار إلى نظام التّشغيل ومختلف المكوّنات المتوفّرة في توزيعة ماندريبا لينكس \n"
-" بـ \"المنتجات البرمجيّة\" من هنا وفيما يلي. المنتجات البرمجيّة تحتوي ولكنّها "
-"لا تنحصر في مجموعة البرامج والمناهج والقواعد والوثائق المتعلّقة بنظام "
-"التّشغيل \n"
-"والمكوّنات المختلفة لتوزيعة ماندريبا لينكس.\n"
-"\n"
-"\n"
-"1. اتّفاقيّة التّرخيص\n"
-"\n"
-"يرجى قراءة هذه الوثيقة بتمعّن. هذه الوثيقة هي اتّفاقيّة ترخيص بينك أنت "
-"وماندريبا ش.م. وتطبّق على المنتجات البرمجيّة.\n"
-"تثبيتك أو نسخك أواستعمالك لهذه البرامج بأي شكلٍ من الأشكال يعدّ \n"
-"قبولاً صريحاً وموافقةً كاملةً على الالتزام ببنود وشروط هذه الرّخصة. \n"
-"إن كنت لا توافق على أي جزءٍ من الرّخصة فلا يسمح لك بتثبيت أو نسخ أو استعمال "
-"المنتجات البرمجيّة. أي محاولةٍ لتثبيت أو نسخ أو استعمال المنتجات البرمجيّة بشكلٍ "
-"لا يمتثل \n"
-"لبنود وشروط هذه الرّخصة هي لاغيةٌ وستنهي حقوقك بموجب هذه الرّخصة. \n"
-"بمجرّد انتهاء هذه الرّخصة يتوجّب عليك وعلى الفور محق كافّة النّسخ \n"
-"من المنتجات البرمجيّة.\n"
-"\n"
-"\n"
-"2. محدوديّة الضّمان\n"
-"\n"
-"توفّر المنتجات البرمجيّة والوثائق المرفقة \"كما هي\"، دون أيّ ضمان، ضمن أقصى \n"
-"حدٍّ يسمح به القانون.\n"
-"ماندريبا ش.م. لن تكون مسؤولةً قانونيّاً مهما كانت الظّروف عن أيّة \n"
-"أضرارٍ خاصّةٍ أو عرضيّة أو مباشرةٍ أو غير مباشرة (شاملةً ولكن غير محصورةٍ بأيّة "
-"أضرارٍ ناجمةٍ عن خسارةٍ \n"
-"في الأعمال أو عن انقطاعٍ للأعمال أو عن خسارةٍ ماليّة أو عن رسومٍ قانونيّة أو عن "
-"أيّة عقوباتٍ نتيجة \n"
-"أحكامٍ قضائيّة، أو عن أيّة خسارةٍ أخرى تنجم) نتيجة استعمال أو عدم القدرة على "
-"استعمال المنتجات البرمجيّة حتّى وإن كانت ماندريبا ش.م. على درايةٍ باحتمال وقوع "
-"أضرارٍ \n"
-"كتلك المذكورة.\n"
-"\n"
-"محدوديّة المسؤوليّة المتعلّقة بامتلاك أو استعمال البرمجيّات المحظورة في بعض "
-"الدّول\n"
-"\n"
-"ضمن أقصى حدّ يسمح به القانون لن تكون ماندريبا ش.م. مسؤولةً أو أيٍّ من موزّعيها "
-"مسؤولين قانونيّاً \n"
-"عن أيّة أضرارٍ خاصّةٍ أو عرضيّة أو مباشرةٍ أو غير مباشرة (شاملةً ولكن غير محصورةٍ "
-"بأيّة أضرارٍ ناجمةٍ عن خسارةٍ \n"
-"في الأعمال أو عن انقطاعٍ للأعمال أو عن خسارةٍ ماليّة أو عن رسومٍ قانونيّة أو عن "
-"أيّة عقوباتٍ نتيجة \n"
-"أحكامٍ قضائيّة، أو عن أيّة خسارةٍ أخرى تنجم) ناتجةٍ عن \n"
-"امتلاك أو استعمال مكوّناتٍ برمجيّة أو ناتجةٍ عن تنزيل مكوّناتٍ \n"
-"برمجيّة من أحد مواقع ماندريبا لينكس و كانت تلك المكوّنات البرمجيّة محظورة أو "
-"محدودةً في بعض الدّول بقوانين محلّيّة.\n"
-"محدوديّة المسؤوليّة هذه تنطبق على مكوّنات التّشفير المنيع \n"
-"المرفقة مع المنتجات البرمجيّة ولكن لا تنحصر بها.\n"
-"\n"
-"\n"
-"3. رخصة GPL والرّخص ذات الصّلة\n"
-"\n"
-"المكوّنات البرمجيّة تتألّف من مكوّناتٍ منشأةٍ من قبل عدّة أشخاصٍ أو جهات. في "
-"معظمها \n"
-"هذه المكوّنات خاضعةٌ لبنود وشروط \n"
-"رخصة جنو العامّة، المشار إليها بـ\"GPL\" من هنا وفيما يلي، أو لبنود وشروط رخصٍ "
-"شبيهة. معظم هذه الرّخص تخوّلك أن تستعمل \n"
-"أو تنسخ أو تكيّف أو تعيد توزيع المكوّنات الخاضعة لها. يرجى قراءة بنود وشروط \n"
-"اتّفاقيّة ترخيص كل مكوّن قبل استعمال أي مكوّن. أيّة أسئلة \n"
-"عن رخصة أي مكوّن يجب أن تطرح على مؤلّف المكوّن وليس على ماندريبا.\n"
-"البرامج المطوّرة من قبل ماندريبا ش.م. خاضعة لرخصة GPL. الوثائق المكتوبة من "
-"قبل \n"
-"ماندريبا ش.م. تخضع لرخصةٍ محدّدة. يرجى الرّجوع للوثائق لمزيدٍ \n"
-"من التّفاصيل.\n"
-"\n"
-"\n"
-"4. حقوق الملكيّة الفكريّة\n"
-"\n"
-"كل الحقوق في مكوّنات المنتجات البرمجيّة هي لمؤلّفيها المعنيّين وتحميها \n"
-"قوانين الملكيّة الفكريّة وحقوق النّشر المنطبقة على البرمجيّات.\n"
-"تحتفظ ماندريبا ش.م. بحقّها في تعديل أو تكييف المنتجات البرمجيّة، بحذافيرها \n"
-"أو أجزاء معيّنة منها، بشتّى الطّرق ولسائر الأغراض.\n"
-"\"Mandriva\" و \"Mandriva Linux\" والشّعارات المتعلّقة هي علاماتٌ تجاريّة "
-"لماندريبا ش.م. \n"
-"\n"
-"\n"
-"5. القوانين الحاكمة \n"
-"\n"
-"في حال تجميد أي جزءٍ من هذه الاتّفاقيّة أو اعتباره غير قانونيٍّ أو غير منطبق بحكمٍ "
-"قضائي فإن ذلا الجز يعدء \n"
-"مستثناً من هذا العقد.س تبقى أنت مقيّداً بالأجزاء الأخرى المنطبقة \n"
-"من هذه الاتّفاقيّة.\n"
-"إن بنود وشروط هذه الرّخصة هي خاضعة لقوانين فرنسا.\n"
-"سيفضّل أن تسوّى كافّة الاختصامات المتعلّقة ببنود هذه الرّخصة خارج حكم القضاء. كحلٍّ "
-"أخير \n"
-"سيحوّل الاختصام إلى محاكم القضاء ذات العلاقة في باريس - فرنسا.\n"
-"في حال وجود أي أسئلةٍ عن هذه الوثيقة، يرجى الاتّصال بماندريبا ش.م. \n"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"For any question on this document, please contact Mageia."
msgstr ""
-#: messages.pm:112
-#, c-format
+#: messages.pm:102
+#, fuzzy, c-format
msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
"تحذير: البرامج الحرّة ليس من الضّروري أن تكون خالية من براءة الاختراع، وبعد "
"البرامج الحرّة\n"
@@ -5025,93 +4912,33 @@ msgstr ""
"براءة الاختراع\n"
"قد تنطبق عليك، تحقّق من القوانين المحليّة لبلدك."
-#: messages.pm:120
+#: messages.pm:112
#, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:114
#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
+"For information on fixes which are available for this release of Mageia,\n"
"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"%s"
+msgstr ""
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
msgstr ""
-"تهانينا، التثبيت قد انتهى.\n"
-"أزل وسيط الإقلاع و اضغط زر الإدخال لإعادة التشغيل.\n"
-"\n"
-"\n"
-"لمعلومات حول الإصلاحات المتوفرة لهذا الإصدار من ماندريبا لينكس،\n"
-"استشر صفحة تصحيح الأخطاء المتوفرة من:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"المعلومات حول تهيئة النظام متوفرة في فصل\n"
-"ما بعد التثبيت في دليل مستخدم ماندريبا الرسمي."
#: modules/interactive.pm:19
-#, fuzzy, c-format
+#, c-format
msgid "This driver has no configuration parameter!"
-msgstr "تهيئة مُشغّل الـUPS"
+msgstr ""
#: modules/interactive.pm:22
#, c-format
@@ -5150,18 +4977,18 @@ msgstr "جاري تثبيت مشغل لمتحكّم USB"
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "جاري تثبيت مشغل لمتحكّم firewire %s"
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "جاري تثبيت مشغل لمتحكّم firewire \"%s\""
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "جاري تثبيت مشغل لمتحكّم القرص الصّلب %s"
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "جاري تثبيت مشغل لمتحكّم القرص الصّلب \"%s\""
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "جاري تثبيت مشغل لمتحكّم إيثرنت %s"
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "جاري تثبيت مشغل لمتحكّم إيثرنت \"%s\""
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -5243,35 +5070,35 @@ msgstr ""
"فشل تحميل الوحدة %s.\n"
"هل تريد المحاولة ثانية بمعاملات أخرى؟"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr ""
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
msgstr ""
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "كلمة مرور المستخدم"
+msgstr ""
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "فشل التركيب: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "التجزيئات الممتدة غير مدعومة على هذه البيئة"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
@@ -5279,10 +5106,10 @@ msgstr ""
"الحل الوحيد هو أن تنقل التجزيئات الأساسية لتحصل على المساحة بين التجزيئات "
"الممتدة."
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
@@ -5291,111 +5118,111 @@ msgstr ""
"لقد فشل اختبار للتأكد من صحة البيانات. \n"
"هذا يعني أن كتابة أي شئ على هذا القرص سينتهي ببيانات عشوائية و فاسدة."
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr ""
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr ""
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr ""
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
"configuration."
msgstr ""
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr ""
-#: pkgs.pm:269 pkgs.pm:270
-#, fuzzy, c-format
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
msgid "Unused hardware support"
-msgstr "تمكين دعم الراديو"
+msgstr ""
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr ""
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
msgstr "لا أستطيع إضافة تجزيء للـRAID _المنسّق_ %s"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "التجزيئات ليست كافية لمستوى RAID %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "تعذر إنشاء الدّليل /usr/share/sane/firmware !"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "تعذر إنشاء الوصلة /usr/share/sane/%s !"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr "لم يمكن نسخ ملف firmware %s إلى /usr/share/sane/firmware!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "لم يمكن تحديد صلاحيات ملف firmware %s!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Scannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr "لم يمكن تثبيت الحزم المطلوبة لمشاركة الماسحات الضّوئيّة."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr "لن تكون ماسحاتك الضّوئيّة متوفّرة للمستخدمين غير الجذر."
#: security/help.pm:11
-#, fuzzy, c-format
+#, c-format
msgid "Accept bogus IPv4 error messages."
-msgstr "قبول رسائل خطأ IPv4 الوهمية"
+msgstr ""
#: security/help.pm:13
-#, fuzzy, c-format
+#, c-format
msgid "Accept broadcasted icmp echo."
-msgstr "قبول broadcasted icmp echo"
+msgstr ""
#: security/help.pm:15
-#, fuzzy, c-format
+#, c-format
msgid "Accept icmp echo."
-msgstr "قبول صدى icmp"
+msgstr ""
#: security/help.pm:17
-#, fuzzy, c-format
+#, c-format
msgid "Allow autologin."
-msgstr "سماح/منع الدخول التلقائي"
+msgstr ""
#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
#: security/help.pm:21
-#, fuzzy, c-format
+#, c-format
msgid ""
"If set to \"ALL\", /etc/issue and /etc/issue.net are allowed to exist.\n"
"\n"
@@ -5403,48 +5230,39 @@ msgid ""
"\n"
"Else only /etc/issue is allowed."
msgstr ""
-"تحديد \"الكل\"، يسمح بوجود /etc/issue و /etc/issue.net.\n"
-"\n"
-"تحديد لا شيء، لن يسمح بأيّ مسائل.\n"
-"\n"
-"وإلا يسمح فقط بوجود /etc/issue."
#: security/help.pm:27
-#, fuzzy, c-format
+#, c-format
msgid "Allow reboot by the console user."
-msgstr "سماح/منع إعادة التّشغيل بواسطة مستخدم الشّاشة الطّرفيّة."
+msgstr ""
#: security/help.pm:29
-#, fuzzy, c-format
+#, c-format
msgid "Allow remote root login."
-msgstr "السماح بدخول المستخدم الجذر من بعيد"
+msgstr ""
#: security/help.pm:31
-#, fuzzy, c-format
+#, c-format
msgid "Allow direct root login."
-msgstr "سماح/منع دخول المسخدم root المباشر."
+msgstr ""
#: security/help.pm:33
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow the list of users on the system on display managers (kdm and gdm)."
-msgstr "سماح/منع سرد أسماء المستخدمين على النّظام في مُدراء العرض (kdm وgdm(."
+msgstr ""
#: security/help.pm:35
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow to export display when\n"
"passing from the root account to the other users.\n"
"\n"
"See pam_xauth(8) for more details.'"
msgstr ""
-"سماح/منع تصدير العرض عند\n"
-"المرور من حساب المستخدم الجذر إلى المستخدمين الآخرين.\n"
-"\n"
-"راجع pam_xauth(8) للمزيد من التّفاصيل."
#: security/help.pm:40
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow X connections:\n"
"\n"
@@ -5454,13 +5272,6 @@ msgid ""
"\n"
"- \"None\" (no connection)."
msgstr ""
-"سماح/منع اتّصالات X:\n"
-"\n"
-"- ALL (كل الاتّصالات مسموحة),\n"
-"\n"
-"- LOCAL (فقط الاتّصالات من الجهاز المحلّي),\n"
-"\n"
-"- NONE (لا اتصال)."
#: security/help.pm:48
#, c-format
@@ -5473,7 +5284,7 @@ msgstr ""
#. -PO: here "ALL", "Local" and "None" are values in a pull-down menu; translate them the same as they're
#: security/help.pm:53
-#, fuzzy, c-format
+#, c-format
msgid ""
"Authorize:\n"
"\n"
@@ -5484,20 +5295,9 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
-msgstr ""
-"تمكين الصلاحية:\n"
-"\n"
-"- لكل الخدمات التي يتم التحكم بها عن طريق tcp_wrappers (انظر صقحة دليل hosts."
-"deny(5) )إذا تم التعيين إلى \"ALL\"،\n"
-"\n"
-"- الملفات المحلية فقط إذا تم التعيين إلى \"LOCAL\"\n"
-"\n"
-"- لا شئ إذا تم التعيين إلى \"NONE\".\n"
-"\n"
-"لتمكين صالحية الخدمات التي تريدها، استخدم ملف /etc/hosts.allow (انظر hosts."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
"allow(5))."
+msgstr ""
#: security/help.pm:63
#, c-format
@@ -5521,31 +5321,25 @@ msgstr ""
"الحزم."
#: security/help.pm:72
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable crontab and at for users.\n"
"\n"
"Put allowed users in /etc/cron.allow and /etc/at.allow (see man at(1)\n"
"and crontab(1))."
msgstr ""
-"تمكين/تعطيل crontab و at للمستخدمين.\n"
-"\n"
-"ضع المستخدمين المُخوّلين في /etc/cron.allow و /etc/at.allow (راجع man at(1)\n"
-"و crontab(1))."
#: security/help.pm:77
-#, fuzzy, c-format
+#, c-format
msgid "Enable syslog reports to console 12"
-msgstr "تمكين/تعطيل تقارير syslog إلى الشّاشة الطّرفيّة 12"
+msgstr ""
#: security/help.pm:79
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable name resolution spoofing protection. If\n"
"\"%s\" is true, also reports to syslog."
msgstr ""
-"تمكين/تعطيل الحماية من خداع ترجمة الاسم. إن\n"
-"كان \"%s\" مُحدّداً، يرسل تقريراً إلى syslog أيضاً."
#: security/help.pm:80
#, c-format
@@ -5553,33 +5347,31 @@ msgid "Security Alerts:"
msgstr "تنبيهات أمنية:"
#: security/help.pm:82
-#, fuzzy, c-format
+#, c-format
msgid "Enable IP spoofing protection."
-msgstr "تمكين الحماية من خداع IP"
+msgstr ""
#: security/help.pm:84
-#, fuzzy, c-format
+#, c-format
msgid "Enable libsafe if libsafe is found on the system."
-msgstr "تمكين libsafe إن كان موجوداً على النّظام"
+msgstr ""
#: security/help.pm:86
-#, fuzzy, c-format
+#, c-format
msgid "Enable the logging of IPv4 strange packets."
-msgstr "تمكين تسجيل حزم IPv4 الغريبة"
+msgstr ""
#: security/help.pm:88
-#, fuzzy, c-format
+#, c-format
msgid "Enable msec hourly security check."
-msgstr "تمكين اختبارات msec الأمنية كل ساعة"
+msgstr ""
#: security/help.pm:90
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable su only from members of the wheel group. If set to no, allows su from "
"any user."
msgstr ""
-"تمكين استخدام su من قبل أعضاء مجموعة العجل أو السّماح باستخدام su من قبل أي "
-"مستخدم."
#: security/help.pm:92
#, c-format
@@ -5587,19 +5379,19 @@ msgid "Use password to authenticate users."
msgstr "استخدم كلمة المرور لمواثقة المستخدمين."
#: security/help.pm:94
-#, fuzzy, c-format
-msgid "Activate ethernet cards promiscuity check."
-msgstr "تنشيط/تعطيل التحقّق من وضع عدم شرعيّة بطاقات ethernet."
+#, c-format
+msgid "Activate Ethernet cards promiscuity check."
+msgstr ""
#: security/help.pm:96
-#, fuzzy, c-format
+#, c-format
msgid "Activate daily security check."
-msgstr "تمكين/تعطيل التحقّق اليومي من الأمن."
+msgstr ""
#: security/help.pm:98
-#, fuzzy, c-format
+#, c-format
msgid "Enable sulogin(8) in single user level."
-msgstr "تمكين/تعطيل sulogin(8) في مستوى المستخدم الفردي."
+msgstr ""
#: security/help.pm:100
#, c-format
@@ -5625,9 +5417,9 @@ msgid ""
msgstr "تحديد طول كلمة المرور الأدنى وأقل عدد أرقام وأقل عدد أحرف استهلاليّة."
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "تعيين umask الخاص بالمستخدم الجذر"
+msgstr ""
#: security/help.pm:109
#, c-format
@@ -5752,9 +5544,9 @@ msgid "Timeout unit is second"
msgstr "وحدة وقت الخروج هي الثّانية"
#: security/help.pm:138
-#, fuzzy, c-format
+#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "تحديد umask الخاص بالمستخدم."
+msgstr ""
#: security/l10n.pm:11
#, c-format
@@ -5857,9 +5649,9 @@ msgid "Enable msec hourly security check"
msgstr "تمكين اختبارات msec الأمنية كل ساعة"
#: security/l10n.pm:32
-#, fuzzy, c-format
+#, c-format
msgid "Enable su only from the wheel group members"
-msgstr "تمكين استخدام su من قبل أعضاء مجموعة العجل أو لأيّ مستخدم"
+msgstr ""
#: security/l10n.pm:33
#, c-format
@@ -6024,11 +5816,11 @@ msgid "Standard"
msgstr "قياسي"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "الأمن"
+msgstr ""
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6037,7 +5829,7 @@ msgid ""
"on your own."
msgstr ""
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -6045,7 +5837,7 @@ msgid ""
msgstr ""
"هذا هو المستوى الأمني القياسي للحاسب الذي سيستخدم للإتصال بالإنترنت كعميل."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6060,48 +5852,48 @@ msgstr ""
"اتصالات من عملاء كثيرين. ملحوظة: إذا كانت ماكينتك مجرد عميل على الإنترنت "
"فالأجدر بك اختيار مستوى أمني أقل."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "الأمن"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "خيارات DrakSec الأساسية"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "الرجاء اختيار مستوى الأمن الذي تريده"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
-msgstr ""
+msgstr "%s: %s"
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "مدير الأمن:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
msgstr ""
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "تشغيل نظام الصوت ALSA (بناء صوت لينكس المتقدّم)"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "Anacron أداة لتشغيل الأوامر في أوقات محددة."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6110,7 +5902,7 @@ msgstr ""
"تُستخدم apmd لمراقبة حالة البطارية و تسجيلها عن طريق syslog.\n"
"يمكن كذلك استخدامها لإغلاق الجهاز عند ضعف البطارية."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6119,7 +5911,22 @@ msgstr ""
"تتشغيل الأوامر المُجدولة عن طريق أمر at عند الوقت المحدد\n"
"لتشغيل at، و تقوم بتشغيل الأوامر الدقعية عندما يكون متوسط الحِمْل قليلاَ."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr ""
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6131,18 +5938,18 @@ msgstr ""
"عند أدوقات محددة دورياً. vixie cron يضيف عدداً من المزايا إلى يونكس\n"
"cron الأساسي، بما فيها حماية أمنية أفضل، و خيارات تهيئة أقوى."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr ""
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6152,7 +5959,20 @@ msgstr ""
"FAM هي خدمة مراقبة الملفّات. إنها تستخدم للحصول على تقارير عن تغيّر الملفّات.\n"
"إنّها تستخدم من قبل جينوم وكيدي"
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6165,12 +5985,12 @@ msgstr ""
"الأوامر،\n"
"كما يتضمن دعم القوائم المختصرة في سطر الأوامر."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
@@ -6179,13 +5999,13 @@ msgstr ""
"HardDrake يقوم بالتحقق من العتاد، و يقوم بتهيئة العتاد\n"
"الجديد/المتغير بشكل اختياري."
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
msgstr "Apache هو خادم وب. و يُستخدم لخدمة ملفات HTML و CGI."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6200,16 +6020,23 @@ msgstr ""
"العديد من الخدمات، بما فيها telnet، ftp، rsh، و rlogin. تعطيل inetd سيعطل\n"
"كل الخدمات المذكورة."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"شغّل تصفية الرّزم لنواة لينكس من السّلسلة 2.2 كي تُعدّ جداراً ناريّاً لحماية ماكينتك "
-"من هجمات الشّبكة."
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6221,7 +6048,7 @@ msgstr ""
"أداة kbdconfig.\n"
"يجب تركها ممكّنة في أغلب الأجهزة."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6230,12 +6057,17 @@ msgstr ""
"إعادة توليد آلية لترويسة النواة في دليل /boot لـ\n"
"/usr/include/linux/{autoconf،version}.h"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr "تحقق و تهيئة آلية للعتاد عند الإقلاع."
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6244,7 +6076,7 @@ msgstr ""
"Linuxconf يقوم في بعض الأحيان بالترتيب لعمل بعض الأعمال\n"
"عند الإقلاع للمحافظة على إعدادات النظام."
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -6253,7 +6085,7 @@ msgstr ""
"lpd هو مراقب الطباعة الذي يحتاجه أمر lpr للعمل بشل صحيح. أساساً\n"
"هو خادم يوصل وظائف الطباعة إلى الطابعات."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
@@ -6262,14 +6094,29 @@ msgstr ""
"خادم لينكس الوهمي، يستخدم لعمل خادم عالي الأداء\n"
"و يعتمد عليه."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6278,7 +6125,12 @@ msgstr ""
"named (BIND) هو خادم أسماء نطاق (DNS) و الذي يستخدم لمعرفة أسماء المضيفات أو "
"عناوين IP."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6287,7 +6139,7 @@ msgstr ""
"تقوم بتركيب وفكّ كل أماكن تركيب أنظمة ملفات الشبكة (NFS) و SMB (Lan\n"
"Manager/ويندوز)، و NCP (NetWare)."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -6296,7 +6148,17 @@ msgstr ""
"تقوم بتنشيط/تثبيط كل واجهات الشبكة المهيئة كي تبدأ\n"
"عند بدء الإقلاع."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6307,7 +6169,7 @@ msgstr ""
"هذه الخدمة توفر وظائف NFS للأجهزة الخادمة، و التي يتم تهيئتها عن طريق\n"
"ملف /etc/exports."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6316,12 +6178,12 @@ msgstr ""
"NFS بروتوكول شائع لمشاركة الملفات على شبكات\n"
"TCP/IP. هذه الخدمة تسمح لك بالتحكم بالملفات عن طريق NFS."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6330,12 +6192,17 @@ msgstr ""
"حوّل آليا إلى قافل المفاتيح numlock فيي سطر الأوامر\n"
"وXorge عند الإقلاع."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "دعم طابعات OKI 4w و الطابعات المتوافقة."
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6348,7 +6215,7 @@ msgstr ""
"مسكلة عند تشغيله\n"
"على الأجهزة التي لا تحتاجه."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6360,7 +6227,12 @@ msgstr ""
"بروتوكولات مثل NFS و NIS. خادم portmap من اللازم أن يعمل على الأجهزة\n"
"التي تعمل كخادمات تستخدم البروتوكولات التي تستفيد من آلية عمل RPC."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6368,7 +6240,7 @@ msgid ""
msgstr ""
"Postfix هو عميل لنقل البريد، أي البرنامج الذي ينقل البريد من جهاز إلى آخر."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6377,16 +6249,21 @@ msgstr ""
"لحفظ واستعادة entropy pool للنظام لجودة أعلى\n"
"لتوليد الأرقام العشوائيّة."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
"تعيين الأجهزة الخام إلى أجهزة كتلية (مثل تجزيئات\n"
"الأقراص الصلبة)، للاستخدام في تطبيقات مثل Oracle أو مشغلات DVD"
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr ""
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6397,7 +6274,7 @@ msgstr ""
"بروتوكول RIP. بينما يستخدم RIP على الشبكات الصغيرة، تحتاج الشبكات الأكبر\n"
"إلى بروتوكولات توجيه معقدة أكثر."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6406,7 +6283,14 @@ msgstr ""
"بروتوكول rstat يسمح للمستخدمين على الشبكة بجلب\n"
"احصائيات أداء أي جهاز على هذه الشبكة."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
@@ -6415,7 +6299,7 @@ msgstr ""
"بروتوكول rusers يسمح للمستخدمين على الشبكة أن يتعرفوا على من\n"
"سجل الدخول إلى الأجهزة المستجيبة الأخرى."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6424,32 +6308,47 @@ msgstr ""
"بروتوكول rwho يسمح للمستخدمين البعيدين بالحصول على قائمة بكل المستخدمين\n"
"الذين سجلوا الدخول إلى جهاز يشغّل عفريت rwho (مماثل لـ finger)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "تشغيل نظام الصوت على جهازك"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6458,82 +6357,94 @@ msgstr ""
"Syslog هي الوسيلة التي تستخدمها العديد من المراقبات لتسجيل الرسائل\n"
"إلى ملفات سجلات عديدة. انها فكرة جيدة أن تقوم دائماً بتشغيل syslog."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "تحميل مشغلات أجهزة USB."
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr ""
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr ""
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "الطباعة"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "الإنترنت"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "مشاركة الملفات"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "الشبكات"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "النظام"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "الإدارة عن بعد"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "خادم قواعد بيانات"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "الخدمات"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr "اختر أي خدمات تريدها أن تبدأ آلياً عند التثبيت"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "الخدمات: %d منشّطة لـ %d مسجلة"
+msgid "%d activated for %d registered"
+msgstr "%d منشّطة لـ %d مسجلة"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "تعمل"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "متوقفة"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "الخدمات والعفاريت"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6542,32 +6453,27 @@ msgstr ""
"عفواً، لا توجد معلومات\n"
"اضافية حول هذه الحزمة."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "المعلومات"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "تشغيل عند الطّلب"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "عند الإقلاع"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "تشغيل"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "إيقاف"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6602,7 +6508,7 @@ msgstr ""
"02110-1301،\n"
" USA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6628,39 +6534,31 @@ msgstr ""
"--help : إظهار هذه الرسالة.\n"
"--version : إظهار رقم النسخة.\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"الخيارات:\n"
" --boot - تمكين تهيئة محمّل الإقلاع\n"
-" --splash - تمكين تهيئة سمة الإقلاع\n"
"الوضع الافتراضي: عرض تهيئة ميزة الدّخول التّلقائي"
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-"[OPTIONS] [PROGRAM_NAME]\n"
-"\n"
-"OPTIONS:\n"
-" --help - إطبع رسالة المساعدة هذه.\n"
-" --report - يجب أن يكون البرنامج واحداً من أدوات ماندريبا لينكس\n"
-" --incident - يجب أن يكون البرنامج واحداً من أدوات ماندريبا لينكس"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6677,7 +6575,7 @@ msgstr ""
" --internet - هيّئ الإنترنت\n"
" --wizard - مشابهة للخيار --add"
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6708,11 +6606,11 @@ msgstr ""
" : name_of_application مثال staroffice \n"
" : و gs لبرنامج ghostscript لهذا فقط."
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6725,30 +6623,18 @@ msgid ""
"--delclient : delete a client machine from MTS (requires MAC address, "
"IP, nbi image name)"
msgstr ""
-"[OPTIONS]...\n"
-"مُهيّء خادم ماندريبا لينكس الطّرفي\n"
-"--enable : تمكين MTS\n"
-"--disable : تعطيل MTS\n"
-"--start : تشغيل MTS\n"
-"--stop : إيقاف MTS\n"
-"--adduser : أضف مستخدم نظام موجود إلى MTS (يتطلّب اسم مستخدم)\n"
-"--deluser : احذف مستخدم نظام موجود من MTS (يتطلّباسم مستخدم)\n"
-"--addclient : أضف ماكينة عميل إلى MTS (يتطلّب عنوان MAC، IP، واسم صورة "
-"nbi)\n"
-"--delclient : احذف ماكينة عميل من MTS (يتطلّب عنوان MAC، IP، واسم صورة "
-"nbi)"
-
-#: standalone.pm:100
+
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[keyboard]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6771,24 +6657,19 @@ msgstr ""
"--status : يُرجع 1 إن كنت متّصلاً أو صفر في خلاف ذلك، ثمّ يخرج.\n"
"--quiet : لا تكن تفاعليّاً. لاستخدامها مع وصل/قطع الاتّصال."
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-"[OPTION]...\n"
-" --no-confirmation لا تسأل سؤال التّأكيد فيوضع Mandriva Update\n"
-" --no-verify-rpm لا تتحقّق من توقيعات الحزم\n"
-" --changelog-first عرض سجلّ التّغييرات قبل سرد الملفّات في نافذة الوصف\n"
-" --merge-all-rpmnew اقترح دمج كلّ ملفّات .rpmnew/.rpmsave المعثور عليها"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -6797,7 +6678,7 @@ msgstr ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6808,7 +6689,7 @@ msgstr ""
" XFdrake [--noauto] monitor\n"
" XFdrake resolution"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6819,71 +6700,76 @@ msgstr ""
"الاستخدام: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
"testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
-#, fuzzy, c-format
+#: timezone.pm:170 timezone.pm:171
+#, c-format
msgid "All servers"
-msgstr "إضافة خادم"
+msgstr ""
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr ""
-#: timezone.pm:199
-#, fuzzy, c-format
+#: timezone.pm:210
+#, c-format
msgid "Africa"
-msgstr "جنوب أفريقيا "
+msgstr ""
-#: timezone.pm:200
-#, fuzzy, c-format
+#: timezone.pm:211
+#, c-format
msgid "Asia"
-msgstr "النمسا"
+msgstr ""
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr ""
-#: timezone.pm:202
-#, fuzzy, c-format
+#: timezone.pm:213
+#, c-format
msgid "North America"
-msgstr "جنوب أفريقيا "
+msgstr ""
-#: timezone.pm:203
+#: timezone.pm:214
#, c-format
msgid "Oceania"
msgstr "أوقيانيا"
-#: timezone.pm:204
-#, fuzzy, c-format
+#: timezone.pm:215
+#, c-format
msgid "South America"
-msgstr "جنوب أفريقيا "
+msgstr ""
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "هونج كونج"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "روسيا الإتحادية"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "يوغوسلافيا"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "هل هذا صحيح؟"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "لقد اخترت ملفاً، وليس دليلاً"
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "المعلومات"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -6898,322 +6784,9 @@ msgstr ""
msgid "Installation failed"
msgstr "فشل التّثبيت"
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "يرجى تسجيل الخروج ثم استخدام Ctrl-Alt-BackSpace"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "مرحبا بالمخترقين"
-
-#~ msgid "Poor"
-#~ msgstr "فقير"
-
-#~ msgid "High"
-#~ msgstr "مرتفع"
-
-#~ msgid "Higher"
-#~ msgstr "أكثر ارتفاعاً"
-
-#~ msgid "Paranoid"
-#~ msgstr "مذعور"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "يجب استخدام هذا المستوى الأمني بحذر. فهو يجعل نظامك أسهل في الإستخدام،\n"
-#~ "لكن يكون حساساً جداً. لذا لا يجب استخدامه لماكينة متصلة بماكينات أخرى\n"
-#~ "أو إلى الإنترنت. لا يوجد دخول بكلمة المرور."
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr "كلمات المرور ممكّنة الآن، لكن الاستخدام كحاسب في شبكة يزال غير مفضّل."
-
-#~ msgid ""
-#~ "There are already some restrictions, and more automatic checks are run "
-#~ "every night."
-#~ msgstr ""
-#~ "توجد بعض القيود، كما يتم تشغيل برامج للتأكد من النظام أوتوماتيكياً كل ليلة."
-
-#~ msgid ""
-#~ "This is similar to the previous level, but the system is entirely closed "
-#~ "and security features are at their maximum."
-#~ msgstr ""
-#~ "هذا مماثل للمستوى السابق، و لكن النظام مغلق كلياً و المزايا الأمني على "
-#~ "حدها الأقصى."
-
-#~ msgid ""
-#~ "\n"
-#~ "Warning\n"
-#~ "\n"
-#~ "Please read carefully the terms below. If you disagree with any\n"
-#~ "portion, you are not allowed to install the next CD media. Press "
-#~ "'Refuse' \n"
-#~ "to continue the installation without using these media.\n"
-#~ "\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a network. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-#~ msgstr ""
-#~ "\n"
-#~ "تحذير\n"
-#~ "\n"
-#~ "فضلاً اقرأ الشروط أدناه. إذا كنت لا توافق على أي\n"
-#~ "جزء، لن يسمح لك بتثبيت وسيط القرص المدمج التالي. اضغط 'رفض' \n"
-#~ "لمتابعة التثبيت بدون هذه الوسائط.\n"
-#~ "\n"
-#~ "\n"
-#~ "بعض المكونات الموجودة في وسيط القرص المدمج التالي غير محكومة\n"
-#~ "بموجب ترخبص GPL أو الاتفاقيات المماثلة. كل مكون من تلك محكوم\n"
-#~ "بموجب بنود و شروط الترخيص الخاص به تحديداً. \n"
-#~ "فضلاً اقرأ باهتمام و أن تستجيب لهذه التراخيص قبل أن \n"
-#~ "تستخدم أو تعيد توزيع هذه المكونات. \n"
-#~ "مثل هذه التراخيص بشكل عام قد تمنع نقل أو نسخ (باستثناء النسخ الاحتياطي)\n"
-#~ "أو إعادة توزيع أو ممارسة الهندسة العكسية أو فك تركيب أو فك تجميع أو "
-#~ "تعديل\n"
-#~ "المكون.\n"
-#~ "أي انتهاك للاتفاقية سيتسبب في انهاء حقوقك تحت الترخيص\n"
-#~ "المحدد بشكل فوري. الا إذا كان الترخيص يعطيك مثل هذه الحقوق.\n"
-#~ "عادة لا يسمح لك بتثبيت هذه البرامج على أكثر من نظام واحد\n"
-#~ "أو تعديله لكي يتم استخدامه على شبكة. في حال شكك فضلاً \n"
-#~ "اتصل بشكل مباشر مع موزع أو مؤلف هذا المكون.\n"
-#~ "النقل إلى طرف ثالث أو نسخ هذه المكونات بما فيه \n"
-#~ "وثائق المساعدة ممنوع عادةً.\n"
-#~ "\n"
-#~ "\n"
-#~ "جميع الحقوق الخاصة بالمكونات الموجودة في وسيط القرص \n"
-#~ "المدمج التالي مملوكة لأصحابها و محمية بموجب قوانين الملكية \n"
-#~ "الفكرية المنطبقة على البرمجيات.\n"
-
-#~ msgid "Use libsafe for servers"
-#~ msgstr "استخدام libsafe للخادمات"
-
-#~ msgid ""
-#~ "A library which defends against buffer overflow and format string attacks."
-#~ msgstr "مكتبة تحمي من هجمات buffer overflow و format string"
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "تثبيت LILO/grub"
-
-#~ msgid "Precise RAM size if needed (found %d MB)"
-#~ msgstr "حجم الذاكرة الدقيق عند الحاجة (عثر على %d م.ب.)"
-
-#~ msgid "Give the ram size in MB"
-#~ msgstr "اكتب حجم الذاكرة بالميغابايت"
-
-#~ msgid ""
-#~ "If you plan to use aboot, be careful to leave a free space (2048 sectors "
-#~ "is enough)\n"
-#~ "at the beginning of the disk"
-#~ msgstr ""
-#~ "إن كنت تريد استخدام aboot، فلا تنْسَ أن تترك مساحة فارغة (يكفي 2048 قِطاع)\n"
-#~ "في بداية القُرص"
-
-#~ msgid "Security level"
-#~ msgstr "مستوى الأمن"
-
-#~ msgid "Expand Tree"
-#~ msgstr "توسيع الشّجرة"
-
-#~ msgid "Collapse Tree"
-#~ msgstr "ضمّ الفروع"
-
-#~ msgid "Toggle between flat and group sorted"
-#~ msgstr "تبديل بين فرز السّرد أو المجموعة"
-
-#~ msgid "Choose action"
-#~ msgstr "اختيار عمل"
-
-#~ msgid "Active Directory with SFU"
-#~ msgstr "Active Directory مع SFU"
-
-#~ msgid "Active Directory with Winbind"
-#~ msgstr "Active Directory مع Winbind"
-
-#~ msgid "Active Directory with SFU:"
-#~ msgstr "Active Directory مع SFU:"
-
-#~ msgid "Active Directory with Winbind:"
-#~ msgstr "Active Directory مع Winbind:"
-
-#~ msgid "Authentication LDAP"
-#~ msgstr "تحقق LDAP"
-
-#~ msgid "TLS"
-#~ msgstr "TLS"
-
-#~ msgid "SSL"
-#~ msgstr "SSL"
-
-#~ msgid "security layout (SASL/Kerberos)"
-#~ msgstr "النّسق الأمني (SASL/Kerberos("
-
-#~ msgid "Authentication Active Directory"
-#~ msgstr "مواثقة Active Directory"
-
-#~ msgid "LDAP users database"
-#~ msgstr "قاعدة بيانات مستخدمي LDAP"
-
-#~ msgid "LDAP user allowed to browse the Active Directory"
-#~ msgstr "مسموح لمستخدم LDAP بتصفّح Active Directory"
-
-#~ msgid "Authentication NIS"
-#~ msgstr "مواثقة NIS"
-
-#~ msgid ""
-#~ "For this to work for a W2K PDC, you will probably need to have the admin "
-#~ "run: C:\\>net localgroup \"Pre-Windows 2000 Compatible Access\" everyone /"
-#~ "add and reboot the server.\n"
-#~ "You will also need the username/password of a Domain Admin to join the "
-#~ "machine to the Windows(TM) domain.\n"
-#~ "If networking is not yet enabled, Drakx will attempt to join the domain "
-#~ "after the network setup step.\n"
-#~ "Should this setup fail for some reason and domain authentication is not "
-#~ "working, run 'smbpasswd -j DOMAIN -U USER%%PASSWORD' using your Windows"
-#~ "(tm) Domain, and Admin Username/Password, after system boot.\n"
-#~ "The command 'wbinfo -t' will test whether your authentication secrets are "
-#~ "good."
-#~ msgstr ""
-#~ "كي يعمل هذا من أجل متحكّم نطاق أوّليّ PDC لويندوز 2000، سوف يكون على المدير "
-#~ "على الأرجح أن ينفّذ: C:\\>net localgroup \"Pre-Windows 2000 Compatible "
-#~ "Access\" everyone /add وأن يعيد تشغيل الخادم.\n"
-#~ "سوف تحتاج أيضاً إلى اسم المستخدم/كلمة السّر لمدير النطاق لتضُمّ الجهاز إلى "
-#~ "نطاق ويندوز.\n"
-#~ "إن لم يكن التّشبيك مُمكّناً بعد، سيحاول DrakX أن ينضمّ إلى النطاق بعد خطوة "
-#~ "إعداد الشّبكة.\n"
-#~ "إن فشلت هذه الخطوة لسبب ما ولم يعمل مواثقة النطاق، نفّذ 'smbpasswd -j "
-#~ "DOMAIN -U USER%%PASSWORD' باستخدام نطاق ويندوز، واسم مستخدم/كلمة سرّ "
-#~ "المدير، بعد إقلاع النّظام.\n"
-#~ "سيختبر الأمر 'wbinfo -t' ما إذا كانت أسرار مواثقتك جيّدة."
-
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "نطاق مواثقة ويندوز"
-
-#~ msgid "Undo"
-#~ msgstr "تراجع"
-
-#~ msgid "Save partition table"
-#~ msgstr "حفظ جدول التجزئة"
-
-#~ msgid "Restore partition table"
-#~ msgstr "استعادة جدول التجزئة"
-
-#~ msgid ""
-#~ "The backup partition table has not the same size\n"
-#~ "Still continue?"
-#~ msgstr ""
-#~ "جدول التجزئة المحفوظ ليس بنفس الحجم\n"
-#~ "لا زلت تريد الاستمرار؟"
-
-#~ msgid "Info: "
-#~ msgstr "معلومات: "
-
-#~ msgid "Unknown driver"
-#~ msgstr "مشغل غير معروف"
-
-#~ msgid "Error reading file %s"
-#~ msgstr "خطأ في قراءة الملف %s"
-
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "فشلت الإستعادة من الملف %s: %s"
-
-#~ msgid "Bad backup file"
-#~ msgstr "ملف نسخ احتياطي سيئ"
-
-#~ msgid "Error writing to file %s"
-#~ msgstr "خطأ أثناء الكتابة إلى الملف %s"
-
-#~ msgid "Error: The \"%s\" driver for your sound card is unlisted"
-#~ msgstr "خطأ: مشغل \"%s\" لبطاقة الصوت الخاصة بك غير موجود في القائمة"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Journalised FS"
-#~ msgstr "Journalised FS"
-
-#~ msgid "Starts the X Font Server (this is mandatory for Xorg to run)."
-#~ msgstr "يبدأ خادم خطوط X (هذا واجب لكي يعمل Xorg)."
-
-#~ msgid "Add user"
-#~ msgstr "إضافة مستخدم"
-
-#~ msgid "Accept user"
-#~ msgstr "قبول المستخدم"
+#~ msgid "You cannot install the bootloader on a %s partition\n"
+#~ msgstr "يمكنك تثبيت محمّل الإقلاع على التجزيء %s\n"
#, fuzzy
-#~ msgid ""
-#~ "Do not update directory inode access times on this filesystem\n"
-#~ "(e.g, for faster access on the news spool to speed up news servers)."
-#~ msgstr ""
-#~ "عدم تحديث أوقات الوصول إلى inode على نظام الملفّات هذا\n"
-#~ "(مثلا، من أجل وصول أسرع إلى مخزن الأخبار لتسرّع خادمات الأخبار)."
-
-#~ msgid "Rescue partition table"
-#~ msgstr "إنقاذ جدول التجزئة"
-
-#~ msgid "Removable media automounting"
-#~ msgstr "التركيب الآلي للوسائط القابلة للإزالة"
-
-#~ msgid "Trying to rescue partition table"
-#~ msgstr "جاري محاولة إنقاذ جدول التجزئة"
-
-#~ msgid "Accept/Refuse bogus IPv4 error messages."
-#~ msgstr "قبول/رفض رسائل أخطاء IPv4 الزّائفة."
-
-#~ msgid "Accept/Refuse broadcasted icmp echo."
-#~ msgstr "قبول/رفض صدى بثّ icmp"
-
-#~ msgid "Accept/Refuse icmp echo."
-#~ msgstr "قبول/رفض صدى icmp"
-
-#~ msgid "Allow/Forbid remote root login."
-#~ msgstr "سماح/منع دخول المستخدم الجذر من بعيد."
-
-#~ msgid "Enable/Disable IP spoofing protection."
-#~ msgstr "تمكين/تعطيل حماية IP spoofing"
-
-#~ msgid "Enable/Disable libsafe if libsafe is found on the system."
-#~ msgstr "تمكين/تعطيل libsafe إن كان موجوداً على النّظام."
-
-#~ msgid "Enable/Disable the logging of IPv4 strange packets."
-#~ msgstr "تمكين/تعطيل تسجيل رزم IPv4 الغريبة."
-
-#~ msgid "Enable/Disable msec hourly security check."
-#~ msgstr "تمكين/تعطيل اختبارات msec الأمنية كل ساعة"
-
-#~ msgid "Number of capture buffers:"
-#~ msgstr "عدد مخازن اللّقطات:"
-
-#~ msgid "number of capture buffers for mmap'ed capture"
-#~ msgstr "عدد مخازن اللّقطات للقطات mmap'ed"
-
-#~ msgid "PLL setting:"
-#~ msgstr "إعداد PLL:"
-
-#~ msgid "Radio support:"
-#~ msgstr "دعم الراديو:"
-
-#~ msgid " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
-#~ msgstr " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
+#~ msgid "You must have a Boot BIOS partition"
+#~ msgstr "يجب تحديد تجزيء جذر"
diff --git a/perl-install/share/po/ast.po b/perl-install/share/po/ast.po
new file mode 100644
index 000000000..dd1e9e4fa
--- /dev/null
+++ b/perl-install/share/po/ast.po
@@ -0,0 +1,6507 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+#
+# Translators:
+# enolp <enolp@softastur.org>, 2015,2019-2021,2025
+# Ḷḷumex03, 2014
+# Ḷḷumex03, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2013-04-04 13:34+0000\n"
+"Last-Translator: enolp <enolp@softastur.org>, 2015,2019-2021,2025\n"
+"Language-Team: Asturian (http://app.transifex.com/MageiaLinux/mageia/"
+"language/ast/)\n"
+"Language: ast\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
+#, c-format
+msgid "Please wait"
+msgstr "Espera"
+
+#: any.pm:272
+#, c-format
+msgid "Bootloader installation in progress"
+msgstr "Instalación del xestor d'arrinque en cursu"
+
+#: any.pm:283
+#, c-format
+msgid ""
+"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
+"the Volume ID of a Windows NT, 2000, or XP boot disk is a fatal Windows "
+"error.\n"
+"This caution does not apply to Windows 95 or 98, or to NT data disks.\n"
+"\n"
+"Assign a new Volume ID?"
+msgstr ""
+
+#: any.pm:294
+#, c-format
+msgid "Installation of bootloader failed. The following error occurred:"
+msgstr ""
+
+#: any.pm:334
+#, c-format
+msgid ""
+"You decided to install the bootloader on a partition.\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
+"\n"
+"On which drive are you booting?"
+msgstr ""
+
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr ""
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "¿Ónde quies instalar el xestor d'arrinque?"
+
+#: any.pm:365
+#, c-format
+msgid "First sector (MBR) of drive %s"
+msgstr ""
+
+#: any.pm:367
+#, c-format
+msgid "First sector of drive (MBR)"
+msgstr ""
+
+#: any.pm:369
+#, c-format
+msgid "First sector of the root partition"
+msgstr ""
+
+#: any.pm:371
+#, c-format
+msgid "On Floppy"
+msgstr ""
+
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
+#, c-format
+msgid "Skip"
+msgstr "Saltar"
+
+#: any.pm:401
+#, c-format
+msgid "Boot Style Configuration"
+msgstr "Configuración del estilu d'arranque"
+
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr ""
+
+#: any.pm:420
+#, c-format
+msgid "Bootloader main options"
+msgstr "Opciones principales del xestor d'arrinque"
+
+#: any.pm:424
+#, c-format
+msgid "Bootloader"
+msgstr "Xestor d'arrinque"
+
+#: any.pm:425
+#, c-format
+msgid "Bootloader to use"
+msgstr "Xestor d'arrinque a usar"
+
+#: any.pm:427
+#, c-format
+msgid "Boot device"
+msgstr "Preséu d'arrinque"
+
+#: any.pm:429
+#, c-format
+msgid "Main options"
+msgstr "Opciones principales"
+
+#: any.pm:430
+#, c-format
+msgid "Delay before booting default image"
+msgstr ""
+
+#: any.pm:431
+#, c-format
+msgid "Enable ACPI"
+msgstr ""
+
+#: any.pm:432
+#, c-format
+msgid "Enable SMP"
+msgstr ""
+
+#: any.pm:433
+#, c-format
+msgid "Enable APIC"
+msgstr ""
+
+#: any.pm:435
+#, c-format
+msgid "Enable Local APIC"
+msgstr ""
+
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Seguranza"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
+#: diskdrake/smbnfs_gtk.pm:181
+#, c-format
+msgid "Password"
+msgstr "Contraseña"
+
+#: any.pm:440 authentication.pm:260
+#, c-format
+msgid "The passwords do not match"
+msgstr "Les contraseñes nun concasen"
+
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
+#, c-format
+msgid "Please try again"
+msgstr "Volvi tentalo"
+
+#: any.pm:442
+#, c-format
+msgid "You cannot use a password with %s"
+msgstr "Nun pues usar una contraseña con %s"
+
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
+#, c-format
+msgid "Password (again)"
+msgstr ""
+
+#: any.pm:528 any.pm:731 any.pm:774
+#, c-format
+msgid "Bootloader Configuration"
+msgstr ""
+
+#: any.pm:532
+#, c-format
+msgid "Install Options"
+msgstr ""
+
+#: any.pm:533
+#, c-format
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr ""
+
+#: any.pm:535 any.pm:794
+#, c-format
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
+
+#: any.pm:537
+#, c-format
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr ""
+
+#: any.pm:539
+#, c-format
+msgid "Background"
+msgstr ""
+
+#: any.pm:544
+#, c-format
+msgid "rEFInd banner"
+msgstr ""
+
+#: any.pm:545
+#, c-format
+msgid "Mageia theme"
+msgstr ""
+
+#: any.pm:546 any.pm:1602
+#, c-format
+msgid "Custom"
+msgstr "Personalizada"
+
+#: any.pm:564
+#, c-format
+msgid "No scaling"
+msgstr ""
+
+#: any.pm:565
+#, c-format
+msgid "Scale to fit"
+msgstr ""
+
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
+#, c-format
+msgid "Label"
+msgstr ""
+
+#: any.pm:611 any.pm:619 any.pm:780
+#, c-format
+msgid "Append"
+msgstr ""
+
+#: any.pm:612 any.pm:624 any.pm:781
+#, c-format
+msgid "Video mode"
+msgstr "Mou videu"
+
+#: any.pm:617
+#, c-format
+msgid "Image"
+msgstr ""
+
+#: any.pm:618 any.pm:630
+#, c-format
+msgid "Root"
+msgstr ""
+
+#: any.pm:621
+#, c-format
+msgid "Xen append"
+msgstr ""
+
+#: any.pm:623
+#, c-format
+msgid "Requires password to boot"
+msgstr ""
+
+#: any.pm:625
+#, c-format
+msgid "Initrd"
+msgstr ""
+
+#: any.pm:626
+#, c-format
+msgid "Network profile"
+msgstr ""
+
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
+#, c-format
+msgid "Default"
+msgstr ""
+
+#: any.pm:645
+#, c-format
+msgid "Empty label not allowed"
+msgstr ""
+
+#: any.pm:646
+#, c-format
+msgid "You must specify a kernel image"
+msgstr ""
+
+#: any.pm:646
+#, c-format
+msgid "You must specify a root partition"
+msgstr ""
+
+#: any.pm:647
+#, c-format
+msgid "This label is already used"
+msgstr "Esta etiqueta yá s'usó"
+
+#: any.pm:671
+#, c-format
+msgid "Which type of entry do you want to add?"
+msgstr ""
+
+#: any.pm:672
+#, c-format
+msgid "Linux"
+msgstr "Linux"
+
+#: any.pm:672
+#, c-format
+msgid "Other OS (Windows...)"
+msgstr ""
+
+#: any.pm:732
+#, c-format
+msgid ""
+"Here are the entries on your boot menu so far.\n"
+"You can create additional entries or change the existing ones."
+msgstr ""
+
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr "Nun tocar l'ESP o'l MBR"
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Alvertencia"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+
+#: any.pm:790
+#, c-format
+msgid "Probe Foreign OS"
+msgstr "Buscar otros sistemes operativos"
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
+msgid "access to X programs"
+msgstr "accesu a los programes de X"
+
+#: any.pm:1060
+#, c-format
+msgid "access to rpm tools"
+msgstr "accesu a les ferramientes de RPM"
+
+#: any.pm:1061
+#, c-format
+msgid "allow \"su\""
+msgstr "permite «su»"
+
+#: any.pm:1062
+#, c-format
+msgid "access to administrative files"
+msgstr "accesu a los ficheros alministrativos"
+
+#: any.pm:1063
+#, c-format
+msgid "access to network tools"
+msgstr "accesu a les ferramientes de rede"
+
+#: any.pm:1064
+#, c-format
+msgid "access to compilation tools"
+msgstr "accesu a les ferramientes de compilación"
+
+#: any.pm:1070
+#, c-format
+msgid "(already added %s)"
+msgstr ""
+
+#: any.pm:1076
+#, c-format
+msgid "Please give a user name"
+msgstr ""
+
+#: any.pm:1077
+#, c-format
+msgid ""
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
+msgstr ""
+
+#: any.pm:1078
+#, c-format
+msgid "The user name is too long"
+msgstr ""
+
+#: any.pm:1079
+#, c-format
+msgid "This user name has already been added"
+msgstr ""
+
+#: any.pm:1085 any.pm:1123
+#, c-format
+msgid "User ID"
+msgstr "ID d'usuariu"
+
+#: any.pm:1085 any.pm:1124
+#, c-format
+msgid "Group ID"
+msgstr "ID"
+
+#: any.pm:1086
+#, c-format
+msgid "%s must be a number"
+msgstr "%s ha ser un númberu"
+
+#: any.pm:1087
+#, c-format
+msgid "%s should be above 1000. Accept anyway?"
+msgstr ""
+
+#: any.pm:1091
+#, c-format
+msgid "User management"
+msgstr ""
+
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr ""
+
+#: any.pm:1099 authentication.pm:236
+#, c-format
+msgid "Set administrator (root) password"
+msgstr "Contraseña del alministrador"
+
+#: any.pm:1105
+#, c-format
+msgid "Enter a user"
+msgstr "Introducción d'un usuariu"
+
+#: any.pm:1107
+#, c-format
+msgid "Icon"
+msgstr "Iconu"
+
+#: any.pm:1110
+#, c-format
+msgid "Real name"
+msgstr "Nome real"
+
+#: any.pm:1117
+#, c-format
+msgid "Login name"
+msgstr "Nome d'usuariu"
+
+#: any.pm:1122
+#, c-format
+msgid "Shell"
+msgstr "Shell"
+
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr "Grupos adicionales:"
+
+#: any.pm:1181
+#, c-format
+msgid "Please wait, adding media..."
+msgstr "Espera mentanto s'amiesta'l mediu…"
+
+#: any.pm:1249 security/l10n.pm:14
+#, c-format
+msgid "Autologin"
+msgstr ""
+
+#: any.pm:1250
+#, c-format
+msgid "I can set up your computer to automatically log on one user."
+msgstr ""
+
+#: any.pm:1251
+#, c-format
+msgid "Use this feature"
+msgstr ""
+
+#: any.pm:1252
+#, c-format
+msgid "Choose the default user:"
+msgstr ""
+
+#: any.pm:1253
+#, c-format
+msgid "Choose the window manager to run:"
+msgstr ""
+
+#: any.pm:1264 any.pm:1279 any.pm:1348
+#, c-format
+msgid "Release Notes"
+msgstr "Notes del llanzamientu"
+
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
+#, c-format
+msgid "Close"
+msgstr "Zarrar"
+
+#: any.pm:1334
+#, c-format
+msgid "License agreement"
+msgstr ""
+
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Quit"
+msgstr "Colar"
+
+#: any.pm:1343
+#, c-format
+msgid "Do you accept this license ?"
+msgstr "¿Quies aceutar esta llicencia?"
+
+#: any.pm:1344
+#, c-format
+msgid "Accept"
+msgstr "Aceutar"
+
+#: any.pm:1344
+#, c-format
+msgid "Refuse"
+msgstr "Refugar"
+
+#: any.pm:1370 any.pm:1433
+#, c-format
+msgid "Please choose a language to use"
+msgstr "Escueyi la llingua que quies usar"
+
+#: any.pm:1398
+#, c-format
+msgid ""
+"%s can support multiple languages. Select\n"
+"the languages you would like to install. They will be available\n"
+"when your installation is complete and you restart your system."
+msgstr ""
+
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr ""
+
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr ""
+
+#: any.pm:1411 any.pm:1442
+#, c-format
+msgid "Old compatibility (non UTF-8) encoding"
+msgstr ""
+
+#: any.pm:1412
+#, c-format
+msgid "All languages"
+msgstr "Toles llingües"
+
+#: any.pm:1434
+#, c-format
+msgid "Language choice"
+msgstr ""
+
+#: any.pm:1488
+#, c-format
+msgid "Country / Region"
+msgstr ""
+
+#: any.pm:1489
+#, c-format
+msgid "Please choose your country"
+msgstr ""
+
+#: any.pm:1491
+#, c-format
+msgid "Here is the full list of available countries"
+msgstr ""
+
+#: any.pm:1492
+#, c-format
+msgid "Other Countries"
+msgstr ""
+
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
+#, c-format
+msgid "Advanced"
+msgstr "Avanzaes"
+
+#: any.pm:1498
+#, c-format
+msgid "Input method:"
+msgstr ""
+
+#: any.pm:1501 harddrake/sound.pm:550
+#, c-format
+msgid "None"
+msgstr ""
+
+#: any.pm:1602
+#, c-format
+msgid "No sharing"
+msgstr ""
+
+#: any.pm:1602
+#, c-format
+msgid "Allow all users"
+msgstr ""
+
+#: any.pm:1606
+#, c-format
+msgid ""
+"Would you like to allow users to share some of their directories?\n"
+"Allowing this will permit users to simply click on \"Share\" in konqueror "
+"and nautilus.\n"
+"\n"
+"\"Custom\" permit a per-user granularity.\n"
+msgstr ""
+
+#: any.pm:1618
+#, c-format
+msgid ""
+"NFS: the traditional Unix file sharing system, with less support on Mac and "
+"Windows."
+msgstr ""
+
+#: any.pm:1621
+#, c-format
+msgid ""
+"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
+"systems."
+msgstr ""
+
+#: any.pm:1629
+#, c-format
+msgid ""
+"You can export using NFS or SMB. Please select which you would like to use."
+msgstr ""
+
+#: any.pm:1657
+#, c-format
+msgid "Launch userdrake"
+msgstr ""
+
+#: any.pm:1659
+#, c-format
+msgid ""
+"The per-user sharing uses the group \"fileshare\". \n"
+"You can use userdrake to add a user to this group."
+msgstr ""
+
+#: any.pm:1768
+#, c-format
+msgid ""
+"You need to logout and back in again for changes to take effect. Press OK to "
+"logout now."
+msgstr ""
+"Precises reaniciar la sesión pa que los cambeos faigan efeutu. Primi Aceutar "
+"pa facelo agora."
+
+#: any.pm:1772
+#, c-format
+msgid "You need to log out and back in again for changes to take effect"
+msgstr "Precises reaniciar la sesión pa que los cambeos faigan efeutu."
+
+#: any.pm:1807
+#, c-format
+msgid "Timezone"
+msgstr "Fusu horariu"
+
+#: any.pm:1807
+#, c-format
+msgid "Which is your timezone?"
+msgstr "¿En qué fusu horariu tas?"
+
+#: any.pm:1830 any.pm:1832
+#, c-format
+msgid "Date, Clock & Time Zone Settings"
+msgstr "Axustes del reló, fusu horariu y la data"
+
+#: any.pm:1833
+#, c-format
+msgid "What is the best time?"
+msgstr ""
+
+#: any.pm:1837
+#, c-format
+msgid "%s (hardware clock set to UTC)"
+msgstr ""
+
+#: any.pm:1838
+#, c-format
+msgid "%s (hardware clock set to local time)"
+msgstr ""
+
+#: any.pm:1840
+#, c-format
+msgid "NTP Server"
+msgstr ""
+
+#: any.pm:1841
+#, c-format
+msgid "Automatic time synchronization (using NTP)"
+msgstr "Sincronización automática de la hora (col usu de NTP)"
+
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr ""
+
+#: any.pm:1880
+#, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr ""
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr ""
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr ""
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Encaboxar"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr "Escoyeta d'espeyos"
+
+#: any.pm:1982
+#, c-format
+msgid "Automatic"
+msgstr ""
+
+#: any.pm:1983
+#, c-format
+msgid "Specific"
+msgstr ""
+
+#: any.pm:1988
+#, c-format
+msgid "Downloader"
+msgstr ""
+
+#: authentication.pm:24
+#, c-format
+msgid "Local file"
+msgstr "Ficheru llocal"
+
+#: authentication.pm:25
+#, c-format
+msgid "LDAP"
+msgstr "LDAP"
+
+#: authentication.pm:26
+#, c-format
+msgid "NIS"
+msgstr "NIS"
+
+#: authentication.pm:27
+#, c-format
+msgid "Smart Card"
+msgstr "Tarxeta intelixente"
+
+#: authentication.pm:28 authentication.pm:215
+#, c-format
+msgid "Windows Domain"
+msgstr "Dominiu de Windows"
+
+#: authentication.pm:29
+#, c-format
+msgid "Kerberos 5"
+msgstr "Kerberos 5"
+
+#: authentication.pm:65
+#, c-format
+msgid "Local file:"
+msgstr "Ficheru llocal:"
+
+#: authentication.pm:65
+#, c-format
+msgid ""
+"Use local for all authentication and information user tell in local file"
+msgstr ""
+
+#: authentication.pm:66
+#, c-format
+msgid "LDAP:"
+msgstr "LDAP:"
+
+#: authentication.pm:66
+#, c-format
+msgid ""
+"Tells your computer to use LDAP for some or all authentication. LDAP "
+"consolidates certain types of information within your organization."
+msgstr ""
+
+#: authentication.pm:67
+#, c-format
+msgid "NIS:"
+msgstr "NIS:"
+
+#: authentication.pm:67
+#, c-format
+msgid ""
+"Allows you to run a group of computers in the same Network Information "
+"Service domain with a common password and group file."
+msgstr ""
+
+#: authentication.pm:68
+#, c-format
+msgid "Windows Domain:"
+msgstr "Dominiu de Windows:"
+
+#: authentication.pm:68
+#, c-format
+msgid ""
+"Winbind allows the system to retrieve information and authenticate users in "
+"a Windows domain."
+msgstr ""
+
+#: authentication.pm:69
+#, c-format
+msgid "Kerberos 5 :"
+msgstr "Kerberos 5:"
+
+#: authentication.pm:69
+#, c-format
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
+msgstr ""
+
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
+#, c-format
+msgid " "
+msgstr " "
+
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
+msgid "Welcome to the Authentication Wizard"
+msgstr ""
+
+#: authentication.pm:109
+#, c-format
+msgid ""
+"You have selected LDAP authentication. Please review the configuration "
+"options below "
+msgstr ""
+
+#: authentication.pm:111 authentication.pm:166
+#, c-format
+msgid "LDAP Server"
+msgstr ""
+
+#: authentication.pm:112 authentication.pm:167
+#, c-format
+msgid "Base dn"
+msgstr ""
+
+#: authentication.pm:113
+#, c-format
+msgid "Fetch base Dn "
+msgstr ""
+
+#: authentication.pm:115 authentication.pm:170
+#, c-format
+msgid "Use encrypt connection with TLS "
+msgstr ""
+
+#: authentication.pm:116 authentication.pm:171
+#, c-format
+msgid "Download CA Certificate "
+msgstr ""
+
+#: authentication.pm:118 authentication.pm:151
+#, c-format
+msgid "Use Disconnect mode "
+msgstr ""
+
+#: authentication.pm:119 authentication.pm:172
+#, c-format
+msgid "Use anonymous BIND "
+msgstr ""
+
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
+#, c-format
+msgid " "
+msgstr " "
+
+#: authentication.pm:121 authentication.pm:173
+#, c-format
+msgid "Bind DN "
+msgstr ""
+
+#: authentication.pm:122 authentication.pm:174
+#, c-format
+msgid "Bind Password "
+msgstr ""
+
+#: authentication.pm:124
+#, c-format
+msgid "Advanced path for group "
+msgstr ""
+
+#: authentication.pm:126
+#, c-format
+msgid "Password base"
+msgstr ""
+
+#: authentication.pm:127
+#, c-format
+msgid "Group base"
+msgstr ""
+
+#: authentication.pm:128
+#, c-format
+msgid "Shadow base"
+msgstr ""
+
+#: authentication.pm:143
+#, c-format
+msgid ""
+"You have selected Kerberos 5 authentication. Please review the configuration "
+"options below "
+msgstr ""
+
+#: authentication.pm:145
+#, c-format
+msgid "Realm "
+msgstr ""
+
+#: authentication.pm:147
+#, c-format
+msgid "KDCs Servers"
+msgstr ""
+
+#: authentication.pm:149
+#, c-format
+msgid "Use DNS to locate KDC for the realm"
+msgstr ""
+
+#: authentication.pm:150
+#, c-format
+msgid "Use DNS to locate realms"
+msgstr ""
+
+#: authentication.pm:155
+#, c-format
+msgid "Use local file for users information"
+msgstr ""
+
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr ""
+
+#: authentication.pm:162
+#, c-format
+msgid ""
+"You have selected Kerberos 5 for authentication, now you must choose the "
+"type of users information "
+msgstr ""
+
+#: authentication.pm:168
+#, c-format
+msgid "Fetch base DN "
+msgstr ""
+
+#: authentication.pm:189
+#, c-format
+msgid ""
+"You have selected NIS authentication. Please review the configuration "
+"options below "
+msgstr ""
+
+#: authentication.pm:191
+#, c-format
+msgid "NIS Domain"
+msgstr ""
+
+#: authentication.pm:192
+#, c-format
+msgid "NIS Server"
+msgstr ""
+
+#: authentication.pm:213
+#, c-format
+msgid ""
+"You have selected Windows Domain authentication. Please review the "
+"configuration options below "
+msgstr ""
+
+#: authentication.pm:217
+#, c-format
+msgid "Domain Model "
+msgstr ""
+
+#: authentication.pm:219
+#, c-format
+msgid "Active Directory Realm "
+msgstr ""
+
+#: authentication.pm:220
+#, c-format
+msgid "DNS Domain"
+msgstr ""
+
+#: authentication.pm:221
+#, c-format
+msgid "DC Server"
+msgstr ""
+
+#: authentication.pm:235 authentication.pm:251
+#, c-format
+msgid "Authentication"
+msgstr "Autenticación"
+
+#: authentication.pm:237
+#, c-format
+msgid "Authentication method"
+msgstr ""
+
+#. -PO: keep this short or else the buttons will not fit in the window
+#: authentication.pm:242
+#, c-format
+msgid "No password"
+msgstr ""
+
+#: authentication.pm:263
+#, c-format
+msgid "This password is too short (it must be at least %d characters long)"
+msgstr ""
+
+#: authentication.pm:375
+#, c-format
+msgid "Cannot use broadcast with no NIS domain"
+msgstr ""
+
+#: authentication.pm:876
+#, c-format
+msgid "Select file"
+msgstr ""
+
+#: authentication.pm:882
+#, c-format
+msgid "Domain Windows for authentication : "
+msgstr ""
+
+#: authentication.pm:884
+#, c-format
+msgid "Domain Admin User Name"
+msgstr ""
+
+#: authentication.pm:885
+#, c-format
+msgid "Domain Admin Password"
+msgstr ""
+
+#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
+#: bootloader.pm:1307
+#, c-format
+msgid ""
+"Welcome to the operating system chooser!\n"
+"\n"
+"Choose an operating system from the list above or\n"
+"wait for default boot.\n"
+"\n"
+msgstr ""
+"¡Afáyate nel seleutor de sistemes operativos!\n"
+"\n"
+"Escueyi un sistema operativu de la llista d'enriba o\n"
+"espera a qu'arrinque'l predetermináu.\n"
+"\n"
+
+#: bootloader.pm:1478
+#, c-format
+msgid "LILO with text menu"
+msgstr ""
+
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 con menú gráficu"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr ""
+
+#: bootloader.pm:1481
+#, c-format
+msgid "GRUB with graphical menu"
+msgstr "GRUB con menú gráficu"
+
+#: bootloader.pm:1482
+#, c-format
+msgid "GRUB with text menu"
+msgstr ""
+
+#: bootloader.pm:1483
+#, c-format
+msgid "rEFInd with graphical menu"
+msgstr "rEFInd con menú gráficu"
+
+#: bootloader.pm:1484
+#, c-format
+msgid "U-Boot/Extlinux with text menu"
+msgstr ""
+
+#: bootloader.pm:1572
+#, c-format
+msgid "not enough room in /boot"
+msgstr ""
+
+#: bootloader.pm:2831
+#, c-format
+msgid ""
+"Your bootloader configuration must be updated because partition has been "
+"renumbered"
+msgstr ""
+
+#: bootloader.pm:2844
+#, c-format
+msgid ""
+"The bootloader cannot be installed correctly. You have to boot rescue and "
+"choose \"%s\""
+msgstr ""
+
+#: bootloader.pm:2845
+#, c-format
+msgid "Re-install Boot Loader"
+msgstr ""
+
+#: common.pm:271
+#, c-format
+msgid "B"
+msgstr "B"
+
+#: common.pm:271
+#, c-format
+msgid "KB"
+msgstr "KB"
+
+#: common.pm:271
+#, c-format
+msgid "MB"
+msgstr "MB"
+
+#: common.pm:271
+#, c-format
+msgid "GB"
+msgstr "GB"
+
+#: common.pm:271 common.pm:280
+#, c-format
+msgid "TB"
+msgstr "TB"
+
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr "%02d:%02d"
+
+#: common.pm:290
+#, c-format
+msgid "%d minutes"
+msgstr "%d minutos"
+
+#: common.pm:292
+#, c-format
+msgid "1 minute"
+msgstr "1 minutu"
+
+#: common.pm:294
+#, c-format
+msgid "%d seconds"
+msgstr "%d segundos"
+
+#: diskdrake/dav.pm:17
+#, c-format
+msgid ""
+"WebDAV is a protocol that allows you to mount a web server's directory\n"
+"locally, and treat it like a local filesystem (provided the web server is\n"
+"configured as a WebDAV server). If you would like to add WebDAV mount\n"
+"points, select \"New\"."
+msgstr ""
+
+#: diskdrake/dav.pm:25
+#, c-format
+msgid "New"
+msgstr ""
+
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
+#, c-format
+msgid "Unmount"
+msgstr ""
+
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
+#, c-format
+msgid "Mount"
+msgstr ""
+
+#: diskdrake/dav.pm:65
+#, c-format
+msgid "Server"
+msgstr "Sirvidor"
+
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
+#: diskdrake/smbnfs_gtk.pm:79
+#, c-format
+msgid "Mount point"
+msgstr "Puntu de montaxe"
+
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
+#: diskdrake/smbnfs_gtk.pm:80
+#, c-format
+msgid "Options"
+msgstr "Opciones"
+
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
+#, c-format
+msgid "Remove"
+msgstr "Desaniciar"
+
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
+#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
+#, c-format
+msgid "Done"
+msgstr "Fecho"
+
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#, c-format
+msgid "Error"
+msgstr "Fallu"
+
+#: diskdrake/dav.pm:86
+#, c-format
+msgid "Please enter the WebDAV server URL"
+msgstr ""
+
+#: diskdrake/dav.pm:90
+#, c-format
+msgid "The URL must begin with http:// or https://"
+msgstr "La URL ha entamar per http:// o https://"
+
+#: diskdrake/dav.pm:106
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr "¿De xuru que quies desaniciar esti puntu de montaxe?"
+
+#: diskdrake/dav.pm:124
+#, c-format
+msgid "Server: "
+msgstr "Sirvidor:"
+
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
+#, c-format
+msgid "Mount point: "
+msgstr "Puntu de montaxe:"
+
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
+#, c-format
+msgid "Options: %s"
+msgstr "Opciones: %s"
+
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
+#, c-format
+msgid "Partitioning"
+msgstr "Particionáu"
+
+#: diskdrake/hd_gtk.pm:74
+#, c-format
+msgid "Click on a partition, choose a filesystem type then choose an action"
+msgstr ""
+"Calca nuna partición, escueyi un sistema de ficheros y darréu, una aición"
+
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
+#, c-format
+msgid "Read carefully"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:134
+#, c-format
+msgid "Please make a backup of your data first"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
+#, c-format
+msgid "Exit"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:135
+#, c-format
+msgid "Continue"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
+#, c-format
+msgid "Help"
+msgstr "Ayuda"
+
+#: diskdrake/hd_gtk.pm:260
+#, c-format
+msgid ""
+"You have one big Microsoft Windows partition.\n"
+"I suggest you first resize that partition\n"
+"(click on it, then click on \"Resize\")"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:262
+#, c-format
+msgid "Please click on a partition"
+msgstr "Calca nuna partición"
+
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
+#, c-format
+msgid "Details"
+msgstr "Detalles"
+
+#: diskdrake/hd_gtk.pm:326
+#, c-format
+msgid "No hard disk drives found"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:365
+#, c-format
+msgid "Unknown"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr "Ext4"
+
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
+msgid "XFS"
+msgstr "XFS"
+
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Swap"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Windows"
+msgstr "Windows"
+
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
+#, c-format
+msgid "Other"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
+#, c-format
+msgid "Empty"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:440
+#, c-format
+msgid "Filesystem types:"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:461
+#, c-format
+msgid "This partition is already empty"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:470
+#, c-format
+msgid "Use ``Unmount'' first"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:470
+#, c-format
+msgid "Use ``%s'' instead (in expert mode)"
+msgstr ""
+
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
+#: diskdrake/removable.pm:48
+#, c-format
+msgid "Type"
+msgstr "Tipu"
+
+#: diskdrake/interactive.pm:210
+#, c-format
+msgid "Choose another partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:210
+#, c-format
+msgid "Choose a partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
+#, c-format
+msgid "More"
+msgstr "Más"
+
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
+#, c-format
+msgid "Confirmation"
+msgstr "Confirmación"
+
+#: diskdrake/interactive.pm:280
+#, c-format
+msgid "Continue anyway?"
+msgstr "¿Siguir de toes toes?"
+
+#: diskdrake/interactive.pm:285
+#, c-format
+msgid "Quit without saving"
+msgstr ""
+
+#: diskdrake/interactive.pm:285
+#, c-format
+msgid "Quit without writing the partition table?"
+msgstr "¿Colar ensin escribir la tabla de particiones?"
+
+#: diskdrake/interactive.pm:293
+#, c-format
+msgid "Do you want to save the /etc/fstab modifications?"
+msgstr ""
+
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
+#, c-format
+msgid "You need to reboot for the partition table modifications to take effect"
+msgstr ""
+"Precises reaniciar pa que les modificaciones de la tabla de particiones "
+"faigan efeutu."
+
+#: diskdrake/interactive.pm:305
+#, c-format
+msgid ""
+"You should format partition %s.\n"
+"Otherwise no entry for mount point %s will be written in fstab.\n"
+"Quit anyway?"
+msgstr ""
+"Deberíes formatiar la partición %s.\n"
+"D'otramiente, nun va escribise nengún puntu de montaxe %s en fstab.\n"
+"¿Colar de toes toes?"
+
+#: diskdrake/interactive.pm:318
+#, c-format
+msgid "Clear all"
+msgstr ""
+
+#: diskdrake/interactive.pm:319
+#, c-format
+msgid "Auto allocate"
+msgstr ""
+
+#: diskdrake/interactive.pm:325
+#, c-format
+msgid "Normal mode"
+msgstr ""
+
+#: diskdrake/interactive.pm:325
+#, c-format
+msgid "Expert mode"
+msgstr ""
+
+#: diskdrake/interactive.pm:337
+#, c-format
+msgid "Hard disk drive information"
+msgstr ""
+
+#: diskdrake/interactive.pm:371
+#, c-format
+msgid "All primary partitions are used"
+msgstr ""
+
+#: diskdrake/interactive.pm:372
+#, c-format
+msgid "I cannot add any more partitions"
+msgstr ""
+
+#: diskdrake/interactive.pm:373
+#, c-format
+msgid ""
+"To have more partitions, please delete one to be able to create an extended "
+"partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:384
+#, c-format
+msgid "Reload partition table"
+msgstr ""
+
+#: diskdrake/interactive.pm:391
+#, c-format
+msgid "Detailed information"
+msgstr ""
+
+#: diskdrake/interactive.pm:407
+#, c-format
+msgid "View"
+msgstr "Vista"
+
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
+#, c-format
+msgid "Resize"
+msgstr ""
+
+#: diskdrake/interactive.pm:413
+#, c-format
+msgid "Format"
+msgstr "Formatu"
+
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
+#, c-format
+msgid "Add to RAID"
+msgstr ""
+
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
+#, c-format
+msgid "Add to LVM"
+msgstr ""
+
+#: diskdrake/interactive.pm:417
+#, c-format
+msgid "Use"
+msgstr ""
+
+#: diskdrake/interactive.pm:419
+#, c-format
+msgid "Delete"
+msgstr "Desaniciar"
+
+#: diskdrake/interactive.pm:420
+#, c-format
+msgid "Remove from RAID"
+msgstr ""
+
+#: diskdrake/interactive.pm:421
+#, c-format
+msgid "Remove from LVM"
+msgstr ""
+
+#: diskdrake/interactive.pm:422
+#, c-format
+msgid "Remove from dm"
+msgstr ""
+
+#: diskdrake/interactive.pm:423
+#, c-format
+msgid "Modify RAID"
+msgstr ""
+
+#: diskdrake/interactive.pm:424
+#, c-format
+msgid "Use for loopback"
+msgstr ""
+
+#: diskdrake/interactive.pm:434
+#, c-format
+msgid "Create"
+msgstr ""
+
+#: diskdrake/interactive.pm:460
+#, c-format
+msgid "Failed to mount partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
+#, c-format
+msgid "Create a new partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:498
+#, c-format
+msgid "Start sector: "
+msgstr ""
+
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
+#, c-format
+msgid "Size in MB: "
+msgstr ""
+
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
+#, c-format
+msgid "Filesystem type: "
+msgstr ""
+
+#: diskdrake/interactive.pm:513
+#, c-format
+msgid "Preference: "
+msgstr ""
+
+#: diskdrake/interactive.pm:516
+#, c-format
+msgid "Logical volume name "
+msgstr ""
+
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr "Cifrar la partición"
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr "Clave de cifráu"
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr ""
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Les claves de cifráu nun concasen"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:553
+#, c-format
+msgid ""
+"You cannot create a new partition\n"
+"(since you reached the maximal number of primary partitions).\n"
+"First remove a primary partition and create an extended partition."
+msgstr ""
+
+#: diskdrake/interactive.pm:605
+#, c-format
+msgid "Remove the loopback file?"
+msgstr ""
+
+#: diskdrake/interactive.pm:625
+#, c-format
+msgid ""
+"After changing type of partition %s, all data on this partition will be lost"
+msgstr ""
+
+#: diskdrake/interactive.pm:641
+#, c-format
+msgid "Change partition type"
+msgstr ""
+
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
+#, c-format
+msgid "Which filesystem do you want?"
+msgstr "¿Qué sistema de ficheros quies?"
+
+#: diskdrake/interactive.pm:650
+#, c-format
+msgid "Switching from %s to %s"
+msgstr ""
+
+#: diskdrake/interactive.pm:685
+#, c-format
+msgid "Set volume label"
+msgstr ""
+
+#: diskdrake/interactive.pm:687
+#, c-format
+msgid "Beware, this will be written to disk as soon as you validate!"
+msgstr ""
+
+#: diskdrake/interactive.pm:688
+#, c-format
+msgid "Beware, this will be written to disk only after formatting!"
+msgstr ""
+
+#: diskdrake/interactive.pm:690
+#, c-format
+msgid "Which volume label?"
+msgstr ""
+
+#: diskdrake/interactive.pm:691
+#, c-format
+msgid "Label:"
+msgstr ""
+
+#: diskdrake/interactive.pm:712
+#, c-format
+msgid "Where do you want to mount the loopback file %s?"
+msgstr ""
+
+#: diskdrake/interactive.pm:713
+#, c-format
+msgid "Where do you want to mount device %s?"
+msgstr ""
+
+#: diskdrake/interactive.pm:718
+#, c-format
+msgid ""
+"Cannot unset mount point as this partition is used for loop back.\n"
+"Remove the loopback first"
+msgstr ""
+
+#: diskdrake/interactive.pm:748
+#, c-format
+msgid "Where do you want to mount %s?"
+msgstr ""
+
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
+#, c-format
+msgid "Resizing"
+msgstr ""
+
+#: diskdrake/interactive.pm:798
+#, c-format
+msgid "Computing FAT filesystem bounds"
+msgstr ""
+
+#: diskdrake/interactive.pm:847
+#, c-format
+msgid "This partition is not resizeable"
+msgstr ""
+
+#: diskdrake/interactive.pm:852
+#, c-format
+msgid "All data on this partition should be backed up"
+msgstr ""
+
+#: diskdrake/interactive.pm:854
+#, c-format
+msgid "After resizing partition %s, all data on this partition will be lost"
+msgstr ""
+
+#: diskdrake/interactive.pm:861
+#, c-format
+msgid "Choose the new size"
+msgstr ""
+
+#: diskdrake/interactive.pm:862
+#, c-format
+msgid "New size in MB: "
+msgstr ""
+
+#: diskdrake/interactive.pm:863
+#, c-format
+msgid "Minimum size: %s MB"
+msgstr ""
+
+#: diskdrake/interactive.pm:864
+#, c-format
+msgid "Maximum size: %s MB"
+msgstr ""
+
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
+#, c-format
+msgid ""
+"To ensure data integrity after resizing the partition(s),\n"
+"filesystem checks will be run on your next boot into Microsoft Windows®"
+msgstr ""
+
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
+#, c-format
+msgid "Filesystem encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:982
+#, c-format
+msgid "Enter your filesystem encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
+#, c-format
+msgid "Encryption key"
+msgstr "Clave de cifráu"
+
+#: diskdrake/interactive.pm:990
+#, c-format
+msgid "Invalid key"
+msgstr ""
+
+#: diskdrake/interactive.pm:1013
+#, c-format
+msgid "Choose an existing RAID to add to"
+msgstr ""
+
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
+#, c-format
+msgid "new"
+msgstr ""
+
+#: diskdrake/interactive.pm:1032
+#, c-format
+msgid "Choose an existing LVM to add to"
+msgstr ""
+
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr ""
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr "«%s» yá esiste"
+
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr ""
+
+#: diskdrake/interactive.pm:1083
+#, c-format
+msgid ""
+"Physical volume %s is still in use.\n"
+"Do you want to move used physical extents on this volume to other volumes?"
+msgstr ""
+
+#: diskdrake/interactive.pm:1085
+#, c-format
+msgid "Moving physical extents"
+msgstr ""
+
+#: diskdrake/interactive.pm:1103
+#, c-format
+msgid "This partition cannot be used for loopback"
+msgstr ""
+
+#: diskdrake/interactive.pm:1116
+#, c-format
+msgid "Loopback"
+msgstr ""
+
+#: diskdrake/interactive.pm:1117
+#, c-format
+msgid "Loopback file name: "
+msgstr ""
+
+#: diskdrake/interactive.pm:1122
+#, c-format
+msgid "Give a file name"
+msgstr ""
+
+#: diskdrake/interactive.pm:1125
+#, c-format
+msgid "File is already used by another loopback, choose another one"
+msgstr ""
+
+#: diskdrake/interactive.pm:1126
+#, c-format
+msgid "File already exists. Use it?"
+msgstr ""
+
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
+#, c-format
+msgid "Mount options"
+msgstr ""
+
+#: diskdrake/interactive.pm:1168
+#, c-format
+msgid "Various"
+msgstr ""
+
+#: diskdrake/interactive.pm:1214
+#, c-format
+msgid "device"
+msgstr ""
+
+#: diskdrake/interactive.pm:1215
+#, c-format
+msgid "level"
+msgstr ""
+
+#: diskdrake/interactive.pm:1216
+#, c-format
+msgid "chunk size in KiB"
+msgstr ""
+
+#: diskdrake/interactive.pm:1234
+#, c-format
+msgid "Be careful: this operation is dangerous."
+msgstr ""
+
+#: diskdrake/interactive.pm:1250
+#, c-format
+msgid "Partitioning Type"
+msgstr ""
+
+#: diskdrake/interactive.pm:1250
+#, c-format
+msgid "What type of partitioning?"
+msgstr ""
+
+#: diskdrake/interactive.pm:1288
+#, c-format
+msgid "You'll need to reboot before the modification can take effect"
+msgstr ""
+
+#: diskdrake/interactive.pm:1297
+#, c-format
+msgid "Partition table of drive %s is going to be written to disk"
+msgstr ""
+
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
+#, c-format
+msgid "Formatting partition %s"
+msgstr ""
+
+#: diskdrake/interactive.pm:1329
+#, c-format
+msgid "After formatting partition %s, all data on this partition will be lost"
+msgstr ""
+
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
+#, c-format
+msgid "Check for bad blocks?"
+msgstr ""
+
+#: diskdrake/interactive.pm:1358
+#, c-format
+msgid "Move files to the new partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:1358
+#, c-format
+msgid "Hide files"
+msgstr ""
+
+#: diskdrake/interactive.pm:1359
+#, c-format
+msgid ""
+"Directory %s already contains data\n"
+"(%s)\n"
+"\n"
+"You can either choose to move the files into the partition that will be "
+"mounted there or leave them where they are (which results in hiding them by "
+"the contents of the mounted partition)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1374
+#, c-format
+msgid "Moving files to the new partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:1378
+#, c-format
+msgid "Copying %s"
+msgstr ""
+
+#: diskdrake/interactive.pm:1382
+#, c-format
+msgid "Removing %s"
+msgstr ""
+
+#: diskdrake/interactive.pm:1396
+#, c-format
+msgid "partition %s is now known as %s"
+msgstr ""
+
+#: diskdrake/interactive.pm:1397
+#, c-format
+msgid "Partitions have been renumbered: "
+msgstr ""
+
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
+#, c-format
+msgid "Device: "
+msgstr "Preséu:"
+
+#: diskdrake/interactive.pm:1423
+#, c-format
+msgid "Volume label: "
+msgstr ""
+
+#: diskdrake/interactive.pm:1424
+#, c-format
+msgid "UUID: "
+msgstr "UUID: "
+
+#: diskdrake/interactive.pm:1425
+#, c-format
+msgid "DOS drive letter: %s (just a guess)\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
+#, c-format
+msgid "Type: "
+msgstr ""
+
+#: diskdrake/interactive.pm:1431
+#, c-format
+msgid "Start: sector %s\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
+#, c-format
+msgid "Size: %s"
+msgstr ""
+
+#: diskdrake/interactive.pm:1437
+#, c-format
+msgid ", %s sectors"
+msgstr ""
+
+#: diskdrake/interactive.pm:1439
+#, c-format
+msgid "Cylinder %d to %d\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1440
+#, c-format
+msgid "Number of logical extents: %d\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1441
+#, c-format
+msgid "Formatted\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1442
+#, c-format
+msgid "Not formatted\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1443
+#, c-format
+msgid "Mounted\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1444
+#, c-format
+msgid "RAID %s\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1446
+#, c-format
+msgid "Encrypted"
+msgstr ""
+
+#: diskdrake/interactive.pm:1448
+#, c-format
+msgid " (mapped on %s)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1449
+#, c-format
+msgid " (to map on %s)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1450
+#, c-format
+msgid " (inactive)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1457
+#, c-format
+msgid ""
+"Loopback file(s):\n"
+" %s\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1458
+#, c-format
+msgid ""
+"Partition booted by default\n"
+" (for MS-DOS boot, not for lilo)\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1460
+#, c-format
+msgid "Level %s\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1461
+#, c-format
+msgid "Chunk size %d KiB\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1462
+#, c-format
+msgid "RAID-disks %s\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1464
+#, c-format
+msgid "Loopback file name: %s"
+msgstr ""
+
+#: diskdrake/interactive.pm:1467
+#, c-format
+msgid ""
+"\n"
+"Chances are, this partition is\n"
+"a Driver partition. You should\n"
+"probably leave it alone.\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1470
+#, c-format
+msgid ""
+"\n"
+"This special Bootstrap\n"
+"partition is for\n"
+"dual-booting your system.\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1479
+#, c-format
+msgid "Free space on %s (%s)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1488
+#, c-format
+msgid "Read-only"
+msgstr "Namás llectura"
+
+#: diskdrake/interactive.pm:1489
+#, c-format
+msgid "Size: %s\n"
+msgstr "Tamañu: %s\n"
+
+#: diskdrake/interactive.pm:1490
+#, c-format
+msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Nome:"
+
+#: diskdrake/interactive.pm:1492
+#, c-format
+msgid "Medium type: "
+msgstr ""
+
+#: diskdrake/interactive.pm:1493
+#, c-format
+msgid "LVM-disks %s\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1494
+#, c-format
+msgid "Partition table type: %s\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1495
+#, c-format
+msgid "on channel %d id %d\n"
+msgstr ""
+
+#: diskdrake/interactive.pm:1541
+#, c-format
+msgid "Choose your filesystem encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:1544
+#, c-format
+msgid "This encryption key is too simple (must be at least %d characters long)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1551
+#, c-format
+msgid "Encryption algorithm"
+msgstr ""
+
+#: diskdrake/removable.pm:46
+#, c-format
+msgid "Change type"
+msgstr ""
+
+#: diskdrake/smbnfs_gtk.pm:164
+#, c-format
+msgid "Cannot login using username %s (bad password?)"
+msgstr ""
+
+#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
+#, c-format
+msgid "Domain Authentication Required"
+msgstr ""
+
+#: diskdrake/smbnfs_gtk.pm:169
+#, c-format
+msgid "Which username"
+msgstr ""
+
+#: diskdrake/smbnfs_gtk.pm:169
+#, c-format
+msgid "Another one"
+msgstr ""
+
+#: diskdrake/smbnfs_gtk.pm:178
+#, c-format
+msgid ""
+"Please enter your username, password and domain name to access this host."
+msgstr ""
+
+#: diskdrake/smbnfs_gtk.pm:180
+#, c-format
+msgid "Username"
+msgstr "Nome d'usuariu"
+
+#: diskdrake/smbnfs_gtk.pm:182
+#, c-format
+msgid "Domain"
+msgstr ""
+
+#: diskdrake/smbnfs_gtk.pm:206
+#, c-format
+msgid "Search servers"
+msgstr ""
+
+#: diskdrake/smbnfs_gtk.pm:211
+#, c-format
+msgid "Search for new servers"
+msgstr ""
+
+#: do_pkgs.pm:45 do_pkgs.pm:100
+#, c-format
+msgid "The package %s needs to be installed. Do you want to install it?"
+msgstr ""
+
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
+#, c-format
+msgid "Could not install the %s package!"
+msgstr ""
+
+#: do_pkgs.pm:54 do_pkgs.pm:108
+#, c-format
+msgid "Mandatory package %s is missing"
+msgstr ""
+
+#: do_pkgs.pm:74 do_pkgs.pm:137
+#, c-format
+msgid "The following packages need to be installed:\n"
+msgstr "Precisen instalase los paquetes de darréu:\n"
+
+#: do_pkgs.pm:342
+#, c-format
+msgid "Installing packages..."
+msgstr ""
+
+#: do_pkgs.pm:388 pkgs.pm:301
+#, c-format
+msgid "Removing packages..."
+msgstr "Desaniciando los paquetes…"
+
+#: fs/any.pm:21
+#, c-format
+msgid ""
+"An error occurred - no valid devices were found on which to create new "
+"filesystems. Please check your hardware for the cause of this problem"
+msgstr ""
+
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
+#, c-format
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr ""
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+
+#: fs/format.pm:176
+#, c-format
+msgid "Creating and formatting file %s"
+msgstr ""
+
+#: fs/format.pm:202
+#, c-format
+msgid "I do not know how to set label on %s with type %s"
+msgstr ""
+
+#: fs/format.pm:214
+#, c-format
+msgid "setting label on %s failed, is it formatted?"
+msgstr ""
+
+#: fs/format.pm:280
+#, c-format
+msgid "I do not know how to format %s in type %s"
+msgstr ""
+
+#: fs/format.pm:285 fs/format.pm:287
+#, c-format
+msgid "%s formatting of %s failed"
+msgstr ""
+
+#: fs/loopback.pm:24
+#, c-format
+msgid "Circular mounts %s\n"
+msgstr ""
+
+#: fs/mount.pm:85
+#, c-format
+msgid "Mounting partition %s"
+msgstr ""
+
+#: fs/mount.pm:87
+#, c-format
+msgid "mounting partition %s in directory %s failed"
+msgstr ""
+
+#: fs/mount.pm:92 fs/mount.pm:109
+#, c-format
+msgid "Checking %s"
+msgstr ""
+
+#: fs/mount.pm:126 partition_table.pm:502
+#, c-format
+msgid "error unmounting %s: %s"
+msgstr ""
+
+#: fs/mount.pm:141
+#, c-format
+msgid "Enabling swap partition %s"
+msgstr ""
+
+#: fs/mount_options.pm:114
+#, c-format
+msgid "Enable POSIX Access Control Lists"
+msgstr ""
+
+#: fs/mount_options.pm:116
+#, c-format
+msgid "Flush write cache on file close"
+msgstr ""
+
+#: fs/mount_options.pm:118
+#, c-format
+msgid "Enable group disk quota accounting and optionally enforce limits"
+msgstr ""
+
+#: fs/mount_options.pm:120
+#, c-format
+msgid ""
+"Do not update inode access times on this filesystem\n"
+"(e.g, for faster access on the news spool to speed up news servers)."
+msgstr ""
+
+#: fs/mount_options.pm:123
+#, c-format
+msgid ""
+"Update inode access times on this filesystem in a more efficient way\n"
+"(e.g, for faster access on the news spool to speed up news servers)."
+msgstr ""
+
+#: fs/mount_options.pm:126
+#, c-format
+msgid ""
+"Can only be mounted explicitly (i.e.,\n"
+"the -a option will not cause the filesystem to be mounted)."
+msgstr ""
+
+#: fs/mount_options.pm:129
+#, c-format
+msgid "Do not interpret character or block special devices on the filesystem."
+msgstr ""
+
+#: fs/mount_options.pm:131
+#, c-format
+msgid ""
+"Do not allow execution of any binaries on the mounted\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
+"containing binaries for architectures other than its own."
+msgstr ""
+"Nun permite la execución de nengún binariu nel sistema\n"
+"de ficheros montáu. Esta opción podría ser útil pa un\n"
+"sirvidor que\n"
+"tien sistemes de ficheros que contienen binarios pa\n"
+"arquiteutures diferentes a la de so."
+
+#: fs/mount_options.pm:135
+#, c-format
+msgid ""
+"Do not allow set-user-identifier or set-group-identifier\n"
+"bits to take effect. (This seems safe, but is in fact rather unsafe if you\n"
+"have suidperl(1) installed.)"
+msgstr ""
+
+#: fs/mount_options.pm:139
+#, c-format
+msgid "Mount the filesystem read-only."
+msgstr ""
+
+#: fs/mount_options.pm:141
+#, c-format
+msgid "All I/O to the filesystem should be done synchronously."
+msgstr ""
+
+#: fs/mount_options.pm:143
+#, c-format
+msgid "Allow every user to mount and umount the filesystem."
+msgstr ""
+
+#: fs/mount_options.pm:145
+#, c-format
+msgid "Allow an ordinary user to mount the filesystem."
+msgstr "Permite qu'un usuariu normal monte'l sistema de ficheros."
+
+#: fs/mount_options.pm:147
+#, c-format
+msgid "Enable user disk quota accounting, and optionally enforce limits"
+msgstr ""
+
+#: fs/mount_options.pm:149
+#, c-format
+msgid "Support \"user.\" extended attributes"
+msgstr ""
+
+#: fs/mount_options.pm:151
+#, c-format
+msgid "Give write access to ordinary users"
+msgstr ""
+
+#: fs/mount_options.pm:153
+#, c-format
+msgid "Give read-only access to ordinary users"
+msgstr ""
+
+#: fs/mount_point.pm:87
+#, c-format
+msgid "Duplicate mount point %s"
+msgstr ""
+
+#: fs/mount_point.pm:102
+#, c-format
+msgid "No partition available"
+msgstr ""
+
+#: fs/mount_point.pm:105
+#, c-format
+msgid "Scanning partitions to find mount points"
+msgstr ""
+
+#: fs/mount_point.pm:112
+#, c-format
+msgid "Choose the mount points"
+msgstr ""
+
+#: fs/partitioning.pm:48
+#, c-format
+msgid "Choose the partitions you want to format"
+msgstr ""
+
+#: fs/partitioning.pm:77
+#, c-format
+msgid ""
+"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
+"you can lose data)"
+msgstr ""
+
+#: fs/partitioning.pm:80
+#, c-format
+msgid "Not enough swap space to fulfill installation, please add some"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:80
+#, c-format
+msgid ""
+"You must have a root partition.\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
+"Then choose action ``Mount point'' and set it to `/'"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:86
+#, c-format
+msgid ""
+"You do not have a swap partition.\n"
+"\n"
+"Continue anyway?"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:129
+#, c-format
+msgid "Use free space"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:131
+#, c-format
+msgid "Not enough free space to allocate new partitions"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:139
+#, c-format
+msgid "Use existing partitions"
+msgstr "Usar les particiones esistentes"
+
+#: fs/partitioning_wizard.pm:141
+#, c-format
+msgid "There is no existing partition to use"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:165
+#, c-format
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:201
+#, c-format
+msgid "Use the free space on a Microsoft Windows® partition"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:205
+#, c-format
+msgid "Which partition do you want to resize?"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:208
+#, c-format
+msgid ""
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
+msgstr ""
+
+#: fs/partitioning_wizard.pm:215
+#, c-format
+msgid "Failed to find the partition to resize (%d choices)"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:222
+#, c-format
+msgid ""
+"WARNING!\n"
+"\n"
+"\n"
+"Your Microsoft Windows® partition will be now resized.\n"
+"\n"
+"\n"
+"Be careful: this operation is dangerous. If you have not already done so, "
+"you first need to exit the installation, run \"chkdsk c:\" from a Command "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"optionally run defrag, then restart the installation. You should also backup "
+"your data.\n"
+"\n"
+"\n"
+"When sure, press %s."
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
+#, c-format
+msgid "Next"
+msgstr "Siguiente"
+
+#: fs/partitioning_wizard.pm:237
+#, c-format
+msgid "Partitionning"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:237
+#, c-format
+msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:238
+#, c-format
+msgid "Size"
+msgstr "Tamañu"
+
+#: fs/partitioning_wizard.pm:247
+#, c-format
+msgid "Resizing Microsoft Windows® partition"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:252
+#, c-format
+msgid "FAT resizing failed: %s"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:268
+#, c-format
+msgid "There is no FAT partition to resize (or not enough space left)"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:273
+#, c-format
+msgid "Remove Microsoft Windows®"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:273
+#, c-format
+msgid "Erase and use entire disk"
+msgstr "Desaniciar y usar tol discu"
+
+#: fs/partitioning_wizard.pm:277
+#, c-format
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
+#, c-format
+msgid "ALL existing partitions and their data will be lost on drive %s"
+msgstr ""
+"Van perdese TOLES particiones esistentes y los sos datos de la unidá %s"
+
+#: fs/partitioning_wizard.pm:298
+#, c-format
+msgid "Custom disk partitioning"
+msgstr "Particionáu personalizáu"
+
+#: fs/partitioning_wizard.pm:304
+#, c-format
+msgid "Use fdisk"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:307
+#, c-format
+msgid ""
+"You can now partition %s.\n"
+"When you are done, do not forget to save using `w'"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr "Ext2/3/4"
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
+#, c-format
+msgid "I cannot find any room for installing"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
+#, c-format
+msgid "The DrakX Partitioning wizard found the following solutions:"
+msgstr "L'encontu pal particionáu de DrakX alcontró les soluciones de darréu:"
+
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr "Equí ta'l conteníu del discu duru"
+
+#: fs/partitioning_wizard.pm:644
+#, c-format
+msgid "Partitioning failed: %s"
+msgstr ""
+
+#: fs/type.pm:431
+#, c-format
+msgid "You cannot use JFS for partitions smaller than 16MB"
+msgstr ""
+
+#: fs/type.pm:432
+#, c-format
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
+msgstr ""
+
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+
+#: fsedit.pm:25
+#, c-format
+msgid "simple"
+msgstr ""
+
+#: fsedit.pm:29
+#, c-format
+msgid "with /usr"
+msgstr ""
+
+#: fsedit.pm:34
+#, c-format
+msgid "server"
+msgstr ""
+
+#: fsedit.pm:159
+#, c-format
+msgid "BIOS software RAID detected on disks %s. Activate it?"
+msgstr ""
+
+#: fsedit.pm:283
+#, c-format
+msgid ""
+"I cannot read the partition table of device %s, it's too corrupted for me :"
+"(\n"
+"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
+"The other solution is to not allow DrakX to modify the partition table.\n"
+"(the error is %s)\n"
+"\n"
+"Do you agree to lose all the partitions?\n"
+msgstr ""
+
+#: fsedit.pm:467
+#, c-format
+msgid "Mount points must begin with a leading /"
+msgstr ""
+
+#: fsedit.pm:468
+#, c-format
+msgid "Mount points should contain only alphanumerical characters"
+msgstr ""
+
+#: fsedit.pm:469
+#, c-format
+msgid "There is already a partition with mount point %s\n"
+msgstr ""
+
+#: fsedit.pm:472
+#, c-format
+msgid ""
+"You've selected an encrypted partition as root (/).\n"
+"No bootloader is able to handle this without a /boot partition.\n"
+"Please be sure to add a separate /boot partition"
+msgstr ""
+
+#: fsedit.pm:478 fsedit.pm:489
+#, c-format
+msgid "You cannot use an encrypted filesystem for mount point %s"
+msgstr ""
+
+#: fsedit.pm:481 fsedit.pm:483
+#, c-format
+msgid "This directory should remain within the root filesystem"
+msgstr ""
+
+#: fsedit.pm:485 fsedit.pm:487
+#, c-format
+msgid ""
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
+"point\n"
+msgstr ""
+
+#: fsedit.pm:562
+#, c-format
+msgid "Not enough free space for auto-allocating"
+msgstr ""
+
+#: fsedit.pm:564
+#, c-format
+msgid "Nothing to do"
+msgstr ""
+
+#: harddrake/data.pm:62
+#, c-format
+msgid "SATA controllers"
+msgstr ""
+
+#: harddrake/data.pm:72
+#, c-format
+msgid "RAID controllers"
+msgstr ""
+
+#: harddrake/data.pm:82
+#, c-format
+msgid "(E)IDE/ATA controllers"
+msgstr ""
+
+#: harddrake/data.pm:93
+#, c-format
+msgid "Card readers"
+msgstr ""
+
+#: harddrake/data.pm:102
+#, c-format
+msgid "Firewire controllers"
+msgstr ""
+
+#: harddrake/data.pm:111
+#, c-format
+msgid "PCMCIA controllers"
+msgstr ""
+
+#: harddrake/data.pm:120
+#, c-format
+msgid "SCSI controllers"
+msgstr ""
+
+#: harddrake/data.pm:129
+#, c-format
+msgid "USB controllers"
+msgstr ""
+
+#: harddrake/data.pm:138
+#, c-format
+msgid "USB ports"
+msgstr ""
+
+#: harddrake/data.pm:147
+#, c-format
+msgid "SMBus controllers"
+msgstr ""
+
+#: harddrake/data.pm:156
+#, c-format
+msgid "Bridges and system controllers"
+msgstr ""
+
+#: harddrake/data.pm:168
+#, c-format
+msgid "Floppy"
+msgstr ""
+
+#: harddrake/data.pm:178
+#, c-format
+msgid "Zip"
+msgstr ""
+
+#: harddrake/data.pm:194
+#, c-format
+msgid "Hard Disk"
+msgstr "Discu duru"
+
+#: harddrake/data.pm:204
+#, c-format
+msgid "USB Mass Storage Devices"
+msgstr ""
+
+#: harddrake/data.pm:213
+#, c-format
+msgid "CDROM"
+msgstr ""
+
+#: harddrake/data.pm:223
+#, c-format
+msgid "CD/DVD burners"
+msgstr ""
+
+#: harddrake/data.pm:233
+#, c-format
+msgid "DVD-ROM"
+msgstr "DVD-ROM"
+
+#: harddrake/data.pm:243
+#, c-format
+msgid "Tape"
+msgstr ""
+
+#: harddrake/data.pm:254
+#, c-format
+msgid "AGP controllers"
+msgstr ""
+
+#: harddrake/data.pm:263
+#, c-format
+msgid "Videocard"
+msgstr ""
+
+#: harddrake/data.pm:272
+#, c-format
+msgid "DVB card"
+msgstr ""
+
+#: harddrake/data.pm:280
+#, c-format
+msgid "Tvcard"
+msgstr ""
+
+#: harddrake/data.pm:290
+#, c-format
+msgid "Other MultiMedia devices"
+msgstr ""
+
+#: harddrake/data.pm:299
+#, c-format
+msgid "Soundcard"
+msgstr ""
+
+#: harddrake/data.pm:313
+#, c-format
+msgid "Webcam"
+msgstr ""
+
+#: harddrake/data.pm:328
+#, c-format
+msgid "Processors"
+msgstr ""
+
+#: harddrake/data.pm:338
+#, c-format
+msgid "ISDN adapters"
+msgstr ""
+
+#: harddrake/data.pm:349
+#, c-format
+msgid "USB sound devices"
+msgstr ""
+
+#: harddrake/data.pm:358
+#, c-format
+msgid "Radio cards"
+msgstr ""
+
+#: harddrake/data.pm:367
+#, c-format
+msgid "ATM network cards"
+msgstr ""
+
+#: harddrake/data.pm:376
+#, c-format
+msgid "WAN network cards"
+msgstr ""
+
+#: harddrake/data.pm:385
+#, c-format
+msgid "Bluetooth devices"
+msgstr ""
+
+#: harddrake/data.pm:394
+#, c-format
+msgid "Ethernetcard"
+msgstr ""
+
+#: harddrake/data.pm:412
+#, c-format
+msgid "Modem"
+msgstr "Módem"
+
+#: harddrake/data.pm:422
+#, c-format
+msgid "ADSL adapters"
+msgstr ""
+
+#: harddrake/data.pm:434
+#, c-format
+msgid "Memory"
+msgstr "Memoria"
+
+#: harddrake/data.pm:443
+#, c-format
+msgid "Printer"
+msgstr "Imprentadora"
+
+#. -PO: these are joysticks controllers:
+#: harddrake/data.pm:457
+#, c-format
+msgid "Game port controllers"
+msgstr ""
+
+#: harddrake/data.pm:466
+#, c-format
+msgid "Joystick"
+msgstr ""
+
+#: harddrake/data.pm:476
+#, c-format
+msgid "Keyboard"
+msgstr "Tecláu"
+
+#: harddrake/data.pm:490
+#, c-format
+msgid "Tablet and touchscreen"
+msgstr ""
+
+#: harddrake/data.pm:499
+#, c-format
+msgid "Mouse"
+msgstr "Mur"
+
+#: harddrake/data.pm:514
+#, c-format
+msgid "Biometry"
+msgstr ""
+
+#: harddrake/data.pm:522
+#, c-format
+msgid "UPS"
+msgstr "SAI"
+
+#: harddrake/data.pm:531
+#, c-format
+msgid "Scanner"
+msgstr ""
+
+#: harddrake/data.pm:542
+#, c-format
+msgid "Unknown/Others"
+msgstr ""
+
+#: harddrake/data.pm:572
+#, c-format
+msgid "cpu # "
+msgstr ""
+
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, c-format
+msgid "Couldn't install the required packages"
+msgstr ""
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
+#, c-format
+msgid "Please check the repositories are correctly configured"
+msgstr ""
+
+#: harddrake/sound.pm:462
+#, c-format
+msgid "No known driver"
+msgstr ""
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr ""
+
+#: harddrake/sound.pm:517
+#, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "Precises reaniciar pa que los cambeos faigan efeutu"
+
+#: harddrake/sound.pm:522
+#, c-format
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
+
+#: harddrake/sound.pm:527
+#, c-format
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
+
+#: harddrake/sound.pm:541
+#, c-format
+msgid "Select the sound server"
+msgstr ""
+
+#: harddrake/sound.pm:551
+#, c-format
+msgid "PulseAudio"
+msgstr ""
+
+#: harddrake/sound.pm:552
+#, c-format
+msgid "PulseAudio with Glitch-Free mode"
+msgstr ""
+
+#: harddrake/sound.pm:553
+#, c-format
+msgid "PipeWire with WirePlumber"
+msgstr ""
+
+#: harddrake/sound.pm:554
+#, c-format
+msgid "PipeWire with PipeWire Media Session"
+msgstr ""
+
+#: harddrake/sound.pm:561
+#, c-format
+msgid "Reset sound mixer to default values"
+msgstr ""
+
+#: harddrake/sound.pm:565
+#, c-format
+msgid "Troubleshooting"
+msgstr ""
+
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr ""
+
+#: harddrake/sound.pm:581
+#, c-format
+msgid "No alternative driver"
+msgstr ""
+
+#: harddrake/sound.pm:582
+#, c-format
+msgid ""
+"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
+"currently uses \"%s\""
+msgstr ""
+
+#: harddrake/sound.pm:589
+#, c-format
+msgid "Sound configuration"
+msgstr ""
+
+#: harddrake/sound.pm:603
+#, c-format
+msgid "Sound troubleshooting"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
+#, c-format
+msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
+"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
+"\n"
+"\n"
+"\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
+"\n"
+"\n"
+"\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
+"\n"
+"\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
+"\n"
+"\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
+"\n"
+"\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
+"\n"
+"\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
+"\n"
+"\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
+msgstr ""
+
+#: harddrake/v4l.pm:12
+#, c-format
+msgid "Auto-detect"
+msgstr ""
+
+#: harddrake/v4l.pm:97 harddrake/v4l.pm:285 harddrake/v4l.pm:337
+#, c-format
+msgid "Unknown|Generic"
+msgstr ""
+
+#: harddrake/v4l.pm:130
+#, c-format
+msgid "Unknown|CPH05X (bt878) [many vendors]"
+msgstr ""
+
+#: harddrake/v4l.pm:131
+#, c-format
+msgid "Unknown|CPH06X (bt878) [many vendors]"
+msgstr ""
+
+#: harddrake/v4l.pm:475
+#, c-format
+msgid ""
+"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
+"detect the rights parameters.\n"
+"If your card is misdetected, you can force the right tuner and card types "
+"here. Just select your TV card parameters if needed."
+msgstr ""
+
+#: harddrake/v4l.pm:478
+#, c-format
+msgid "Card model:"
+msgstr ""
+
+#: harddrake/v4l.pm:479
+#, c-format
+msgid "Tuner type:"
+msgstr ""
+
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
+#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
+#, c-format
+msgid "Ok"
+msgstr "Aceutar"
+
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
+#, c-format
+msgid "Yes"
+msgstr "Sí"
+
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
+#, c-format
+msgid "No"
+msgstr "Non"
+
+#: interactive.pm:253
+#, c-format
+msgid "Choose a file"
+msgstr ""
+
+#: interactive.pm:390 interactive/gtk.pm:456
+#, c-format
+msgid "Add"
+msgstr "Amestar"
+
+#: interactive.pm:390 interactive/gtk.pm:456
+#, c-format
+msgid "Modify"
+msgstr ""
+
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
+#, c-format
+msgid "Finish"
+msgstr "Finar"
+
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
+#, c-format
+msgid "Previous"
+msgstr "Atrás"
+
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
+#, c-format
+msgid "No file chosen"
+msgstr ""
+
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
+#, c-format
+msgid "You have chosen a directory, not a file"
+msgstr ""
+
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
+#, c-format
+msgid "No such directory"
+msgstr ""
+
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
+#, c-format
+msgid "No such file"
+msgstr ""
+
+#: interactive/gtk.pm:596
+#, c-format
+msgid "Beware, Caps Lock is enabled"
+msgstr ""
+
+#: interactive/stdio.pm:29 interactive/stdio.pm:154
+#, c-format
+msgid "Bad choice, try again\n"
+msgstr ""
+
+#: interactive/stdio.pm:30 interactive/stdio.pm:155
+#, c-format
+msgid "Your choice? (default %s) "
+msgstr ""
+
+#: interactive/stdio.pm:54
+#, c-format
+msgid ""
+"Entries you'll have to fill:\n"
+"%s"
+msgstr ""
+
+#: interactive/stdio.pm:70
+#, c-format
+msgid "Your choice? (0/1, default `%s') "
+msgstr ""
+
+#: interactive/stdio.pm:97
+#, c-format
+msgid "Button `%s': %s"
+msgstr ""
+
+#: interactive/stdio.pm:98
+#, c-format
+msgid "Do you want to click on this button?"
+msgstr "¿Quies calcar nesti botón?"
+
+#: interactive/stdio.pm:110
+#, c-format
+msgid "Your choice? (default `%s'%s) "
+msgstr ""
+
+#: interactive/stdio.pm:110
+#, c-format
+msgid " enter `void' for void entry"
+msgstr ""
+
+#: interactive/stdio.pm:128
+#, c-format
+msgid "=> There are many things to choose from (%s).\n"
+msgstr ""
+
+#: interactive/stdio.pm:131
+#, c-format
+msgid ""
+"Please choose the first number of the 10-range you wish to edit,\n"
+"or just hit Enter to proceed.\n"
+"Your choice? "
+msgstr ""
+
+#: interactive/stdio.pm:144
+#, c-format
+msgid ""
+"=> Notice, a label changed:\n"
+"%s"
+msgstr ""
+
+#: interactive/stdio.pm:151
+#, c-format
+msgid "Re-submit"
+msgstr ""
+
+#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
+#. -PO: or as "default:RTL", depending if your language is written from
+#. -PO: left to right, or from right to left; any other string is wrong.
+#: lang.pm:247
+#, c-format
+msgid "default:LTR"
+msgstr ""
+
+#: lang.pm:301
+#, c-format
+msgid "Andorra"
+msgstr ""
+
+#: lang.pm:302 timezone.pm:237
+#, c-format
+msgid "United Arab Emirates"
+msgstr "Emiratos Árabes Xuníos"
+
+#: lang.pm:303
+#, c-format
+msgid "Afghanistan"
+msgstr ""
+
+#: lang.pm:304
+#, c-format
+msgid "Antigua and Barbuda"
+msgstr ""
+
+#: lang.pm:305
+#, c-format
+msgid "Anguilla"
+msgstr ""
+
+#: lang.pm:306
+#, c-format
+msgid "Albania"
+msgstr "Albania"
+
+#: lang.pm:307
+#, c-format
+msgid "Armenia"
+msgstr ""
+
+#: lang.pm:308
+#, c-format
+msgid "Netherlands Antilles"
+msgstr ""
+
+#: lang.pm:309
+#, c-format
+msgid "Angola"
+msgstr "Angola"
+
+#: lang.pm:310
+#, c-format
+msgid "Antarctica"
+msgstr ""
+
+#: lang.pm:311 timezone.pm:282
+#, c-format
+msgid "Argentina"
+msgstr "Arxentina"
+
+#: lang.pm:312
+#, c-format
+msgid "American Samoa"
+msgstr ""
+
+#: lang.pm:313 timezone.pm:240
+#, c-format
+msgid "Austria"
+msgstr "Austria"
+
+#: lang.pm:314 timezone.pm:278
+#, c-format
+msgid "Australia"
+msgstr "Australia"
+
+#: lang.pm:315
+#, c-format
+msgid "Aruba"
+msgstr ""
+
+#: lang.pm:316
+#, c-format
+msgid "Azerbaijan"
+msgstr "Azerbaixán"
+
+#: lang.pm:317
+#, c-format
+msgid "Bosnia and Herzegovina"
+msgstr "Bosnia y Herzegovina"
+
+#: lang.pm:318
+#, c-format
+msgid "Barbados"
+msgstr ""
+
+#: lang.pm:319 timezone.pm:222
+#, c-format
+msgid "Bangladesh"
+msgstr "Bangladex"
+
+#: lang.pm:320 timezone.pm:242
+#, c-format
+msgid "Belgium"
+msgstr "Bélxica"
+
+#: lang.pm:321
+#, c-format
+msgid "Burkina Faso"
+msgstr ""
+
+#: lang.pm:322 timezone.pm:243
+#, c-format
+msgid "Bulgaria"
+msgstr "Bulgaria"
+
+#: lang.pm:323
+#, c-format
+msgid "Bahrain"
+msgstr ""
+
+#: lang.pm:324
+#, c-format
+msgid "Burundi"
+msgstr ""
+
+#: lang.pm:325
+#, c-format
+msgid "Benin"
+msgstr ""
+
+#: lang.pm:326
+#, c-format
+msgid "Bermuda"
+msgstr ""
+
+#: lang.pm:327
+#, c-format
+msgid "Brunei Darussalam"
+msgstr ""
+
+#: lang.pm:328
+#, c-format
+msgid "Bolivia"
+msgstr ""
+
+#: lang.pm:329 timezone.pm:283
+#, c-format
+msgid "Brazil"
+msgstr "Brasil"
+
+#: lang.pm:330
+#, c-format
+msgid "Bahamas"
+msgstr ""
+
+#: lang.pm:331
+#, c-format
+msgid "Bhutan"
+msgstr ""
+
+#: lang.pm:332
+#, c-format
+msgid "Bouvet Island"
+msgstr ""
+
+#: lang.pm:333
+#, c-format
+msgid "Botswana"
+msgstr ""
+
+#: lang.pm:334 timezone.pm:241
+#, c-format
+msgid "Belarus"
+msgstr "Bielorrusia"
+
+#: lang.pm:335
+#, c-format
+msgid "Belize"
+msgstr ""
+
+#: lang.pm:336 timezone.pm:272
+#, c-format
+msgid "Canada"
+msgstr "Canadá"
+
+#: lang.pm:337
+#, c-format
+msgid "Cocos (Keeling) Islands"
+msgstr ""
+
+#: lang.pm:338
+#, c-format
+msgid "Congo (Kinshasa)"
+msgstr ""
+
+#: lang.pm:339
+#, c-format
+msgid "Central African Republic"
+msgstr ""
+
+#: lang.pm:340
+#, c-format
+msgid "Congo (Brazzaville)"
+msgstr ""
+
+#: lang.pm:341 timezone.pm:266
+#, c-format
+msgid "Switzerland"
+msgstr "Suiza"
+
+#: lang.pm:342
+#, c-format
+msgid "Cote d'Ivoire"
+msgstr ""
+
+#: lang.pm:343
+#, c-format
+msgid "Cook Islands"
+msgstr ""
+
+#: lang.pm:344 timezone.pm:284
+#, c-format
+msgid "Chile"
+msgstr "Chile"
+
+#: lang.pm:345
+#, c-format
+msgid "Cameroon"
+msgstr ""
+
+#: lang.pm:346 timezone.pm:223
+#, c-format
+msgid "China"
+msgstr "China"
+
+#: lang.pm:347
+#, c-format
+msgid "Colombia"
+msgstr "Colombia"
+
+#: lang.pm:348
+#, c-format
+msgid "Costa Rica"
+msgstr "Costa Rica"
+
+#: lang.pm:349
+#, c-format
+msgid "Serbia & Montenegro"
+msgstr ""
+
+#: lang.pm:350
+#, c-format
+msgid "Cuba"
+msgstr ""
+
+#: lang.pm:351
+#, c-format
+msgid "Cape Verde"
+msgstr ""
+
+#: lang.pm:352
+#, c-format
+msgid "Christmas Island"
+msgstr ""
+
+#: lang.pm:353
+#, c-format
+msgid "Cyprus"
+msgstr ""
+
+#: lang.pm:354 timezone.pm:244
+#, c-format
+msgid "Czech Republic"
+msgstr "Chequia"
+
+#: lang.pm:355 timezone.pm:249
+#, c-format
+msgid "Germany"
+msgstr "Alemaña"
+
+#: lang.pm:356
+#, c-format
+msgid "Djibouti"
+msgstr ""
+
+#: lang.pm:357 timezone.pm:245
+#, c-format
+msgid "Denmark"
+msgstr "Dinamarca"
+
+#: lang.pm:358
+#, c-format
+msgid "Dominica"
+msgstr ""
+
+#: lang.pm:359
+#, c-format
+msgid "Dominican Republic"
+msgstr "República Dominicana"
+
+#: lang.pm:360
+#, c-format
+msgid "Algeria"
+msgstr "Arxelia"
+
+#: lang.pm:361
+#, c-format
+msgid "Ecuador"
+msgstr "Ecuador"
+
+#: lang.pm:362 timezone.pm:246
+#, c-format
+msgid "Estonia"
+msgstr "Estonia"
+
+#: lang.pm:363
+#, c-format
+msgid "Egypt"
+msgstr "Exiptu"
+
+#: lang.pm:364
+#, c-format
+msgid "Western Sahara"
+msgstr ""
+
+#: lang.pm:365
+#, c-format
+msgid "Eritrea"
+msgstr ""
+
+#: lang.pm:366 timezone.pm:264
+#, c-format
+msgid "Spain"
+msgstr "España"
+
+#: lang.pm:367
+#, c-format
+msgid "Ethiopia"
+msgstr ""
+
+#: lang.pm:368 timezone.pm:247
+#, c-format
+msgid "Finland"
+msgstr "Finlandia"
+
+#: lang.pm:369
+#, c-format
+msgid "Fiji"
+msgstr ""
+
+#: lang.pm:370
+#, c-format
+msgid "Falkland Islands (Malvinas)"
+msgstr ""
+
+#: lang.pm:371
+#, c-format
+msgid "Micronesia"
+msgstr ""
+
+#: lang.pm:372
+#, c-format
+msgid "Faroe Islands"
+msgstr ""
+
+#: lang.pm:373 timezone.pm:248
+#, c-format
+msgid "France"
+msgstr "Francia"
+
+#: lang.pm:374
+#, c-format
+msgid "Gabon"
+msgstr ""
+
+#: lang.pm:375 timezone.pm:268
+#, c-format
+msgid "United Kingdom"
+msgstr "Reinu Xuníu"
+
+#: lang.pm:376
+#, c-format
+msgid "Grenada"
+msgstr ""
+
+#: lang.pm:377
+#, c-format
+msgid "Georgia"
+msgstr "Xeorxa"
+
+#: lang.pm:378
+#, c-format
+msgid "French Guiana"
+msgstr ""
+
+#: lang.pm:379
+#, c-format
+msgid "Ghana"
+msgstr ""
+
+#: lang.pm:380
+#, c-format
+msgid "Gibraltar"
+msgstr ""
+
+#: lang.pm:381
+#, c-format
+msgid "Greenland"
+msgstr ""
+
+#: lang.pm:382
+#, c-format
+msgid "Gambia"
+msgstr ""
+
+#: lang.pm:383
+#, c-format
+msgid "Guinea"
+msgstr ""
+
+#: lang.pm:384
+#, c-format
+msgid "Guadeloupe"
+msgstr ""
+
+#: lang.pm:385
+#, c-format
+msgid "Equatorial Guinea"
+msgstr ""
+
+#: lang.pm:386 timezone.pm:250
+#, c-format
+msgid "Greece"
+msgstr "Grecia"
+
+#: lang.pm:387
+#, c-format
+msgid "South Georgia and the South Sandwich Islands"
+msgstr ""
+
+#: lang.pm:388 timezone.pm:273
+#, c-format
+msgid "Guatemala"
+msgstr "Guatemala"
+
+#: lang.pm:389
+#, c-format
+msgid "Guam"
+msgstr ""
+
+#: lang.pm:390
+#, c-format
+msgid "Guinea-Bissau"
+msgstr ""
+
+#: lang.pm:391
+#, c-format
+msgid "Guyana"
+msgstr ""
+
+#: lang.pm:392
+#, c-format
+msgid "Hong Kong SAR (China)"
+msgstr ""
+
+#: lang.pm:393
+#, c-format
+msgid "Heard and McDonald Islands"
+msgstr ""
+
+#: lang.pm:394
+#, c-format
+msgid "Honduras"
+msgstr ""
+
+#: lang.pm:395
+#, c-format
+msgid "Croatia"
+msgstr "Croacia"
+
+#: lang.pm:396
+#, c-format
+msgid "Haiti"
+msgstr ""
+
+#: lang.pm:397 timezone.pm:251
+#, c-format
+msgid "Hungary"
+msgstr "Hungría"
+
+#: lang.pm:398 timezone.pm:226
+#, c-format
+msgid "Indonesia"
+msgstr "Indonesia"
+
+#: lang.pm:399 timezone.pm:252
+#, c-format
+msgid "Ireland"
+msgstr "Irlanda"
+
+#: lang.pm:400 timezone.pm:228
+#, c-format
+msgid "Israel"
+msgstr "Israel"
+
+#: lang.pm:401 timezone.pm:225
+#, c-format
+msgid "India"
+msgstr "India"
+
+#: lang.pm:402
+#, c-format
+msgid "British Indian Ocean Territory"
+msgstr ""
+
+#: lang.pm:403
+#, c-format
+msgid "Iraq"
+msgstr ""
+
+#: lang.pm:404 timezone.pm:227
+#, c-format
+msgid "Iran"
+msgstr "Irán"
+
+#: lang.pm:405
+#, c-format
+msgid "Iceland"
+msgstr "Islandia"
+
+#: lang.pm:406 timezone.pm:253
+#, c-format
+msgid "Italy"
+msgstr "Italia"
+
+#: lang.pm:407
+#, c-format
+msgid "Jamaica"
+msgstr "Xamaica"
+
+#: lang.pm:408
+#, c-format
+msgid "Jordan"
+msgstr ""
+
+#: lang.pm:409 timezone.pm:229
+#, c-format
+msgid "Japan"
+msgstr "Xapón"
+
+#: lang.pm:410
+#, c-format
+msgid "Kenya"
+msgstr ""
+
+#: lang.pm:411
+#, c-format
+msgid "Kyrgyzstan"
+msgstr ""
+
+#: lang.pm:412
+#, c-format
+msgid "Cambodia"
+msgstr ""
+
+#: lang.pm:413
+#, c-format
+msgid "Kiribati"
+msgstr ""
+
+#: lang.pm:414
+#, c-format
+msgid "Comoros"
+msgstr ""
+
+#: lang.pm:415
+#, c-format
+msgid "Saint Kitts and Nevis"
+msgstr ""
+
+#: lang.pm:416
+#, c-format
+msgid "Korea (North)"
+msgstr ""
+
+#: lang.pm:417 timezone.pm:230
+#, c-format
+msgid "Korea"
+msgstr "Corea"
+
+#: lang.pm:418
+#, c-format
+msgid "Kuwait"
+msgstr ""
+
+#: lang.pm:419
+#, c-format
+msgid "Cayman Islands"
+msgstr ""
+
+#: lang.pm:420
+#, c-format
+msgid "Kazakhstan"
+msgstr ""
+
+#: lang.pm:421
+#, c-format
+msgid "Laos"
+msgstr ""
+
+#: lang.pm:422
+#, c-format
+msgid "Lebanon"
+msgstr ""
+
+#: lang.pm:423
+#, c-format
+msgid "Saint Lucia"
+msgstr ""
+
+#: lang.pm:424
+#, c-format
+msgid "Liechtenstein"
+msgstr ""
+
+#: lang.pm:425
+#, c-format
+msgid "Sri Lanka"
+msgstr ""
+
+#: lang.pm:426
+#, c-format
+msgid "Liberia"
+msgstr ""
+
+#: lang.pm:427
+#, c-format
+msgid "Lesotho"
+msgstr ""
+
+#: lang.pm:428 timezone.pm:254
+#, c-format
+msgid "Lithuania"
+msgstr "Lituania"
+
+#: lang.pm:429 timezone.pm:255
+#, c-format
+msgid "Luxembourg"
+msgstr "Luxemburgu"
+
+#: lang.pm:430
+#, c-format
+msgid "Latvia"
+msgstr "Letonia"
+
+#: lang.pm:431
+#, c-format
+msgid "Libya"
+msgstr ""
+
+#: lang.pm:432
+#, c-format
+msgid "Morocco"
+msgstr "Marruecos"
+
+#: lang.pm:433
+#, c-format
+msgid "Monaco"
+msgstr ""
+
+#: lang.pm:434
+#, c-format
+msgid "Moldova"
+msgstr "Moldavia"
+
+#: lang.pm:435
+#, c-format
+msgid "Madagascar"
+msgstr ""
+
+#: lang.pm:436
+#, c-format
+msgid "Marshall Islands"
+msgstr ""
+
+#: lang.pm:437
+#, c-format
+msgid "Macedonia"
+msgstr ""
+
+#: lang.pm:438
+#, c-format
+msgid "Mali"
+msgstr ""
+
+#: lang.pm:439
+#, c-format
+msgid "Myanmar"
+msgstr ""
+
+#: lang.pm:440
+#, c-format
+msgid "Mongolia"
+msgstr "Mongolia"
+
+#: lang.pm:441
+#, c-format
+msgid "Northern Mariana Islands"
+msgstr ""
+
+#: lang.pm:442
+#, c-format
+msgid "Martinique"
+msgstr ""
+
+#: lang.pm:443
+#, c-format
+msgid "Mauritania"
+msgstr ""
+
+#: lang.pm:444
+#, c-format
+msgid "Montserrat"
+msgstr ""
+
+#: lang.pm:445
+#, c-format
+msgid "Malta"
+msgstr "Malta"
+
+#: lang.pm:446
+#, c-format
+msgid "Mauritius"
+msgstr ""
+
+#: lang.pm:447
+#, c-format
+msgid "Maldives"
+msgstr ""
+
+#: lang.pm:448
+#, c-format
+msgid "Malawi"
+msgstr ""
+
+#: lang.pm:449 timezone.pm:274
+#, c-format
+msgid "Mexico"
+msgstr "Méxicu"
+
+#: lang.pm:450 timezone.pm:231
+#, c-format
+msgid "Malaysia"
+msgstr "Malasia"
+
+#: lang.pm:451
+#, c-format
+msgid "Mozambique"
+msgstr "Mozambique"
+
+#: lang.pm:452
+#, c-format
+msgid "Namibia"
+msgstr ""
+
+#: lang.pm:453
+#, c-format
+msgid "New Caledonia"
+msgstr ""
+
+#: lang.pm:454
+#, c-format
+msgid "Niger"
+msgstr ""
+
+#: lang.pm:455
+#, c-format
+msgid "Norfolk Island"
+msgstr ""
+
+#: lang.pm:456
+#, c-format
+msgid "Nigeria"
+msgstr "Nixeria"
+
+#: lang.pm:457
+#, c-format
+msgid "Nicaragua"
+msgstr "Nicaragua"
+
+#: lang.pm:458 timezone.pm:256
+#, c-format
+msgid "Netherlands"
+msgstr "Países Baxos"
+
+#: lang.pm:459 timezone.pm:257
+#, c-format
+msgid "Norway"
+msgstr "Noruega"
+
+#: lang.pm:460
+#, c-format
+msgid "Nepal"
+msgstr "Nepal"
+
+#: lang.pm:461
+#, c-format
+msgid "Nauru"
+msgstr ""
+
+#: lang.pm:462
+#, c-format
+msgid "Niue"
+msgstr ""
+
+#: lang.pm:463 timezone.pm:279
+#, c-format
+msgid "New Zealand"
+msgstr "Nueva Zelanda"
+
+#: lang.pm:464
+#, c-format
+msgid "Oman"
+msgstr ""
+
+#: lang.pm:465
+#, c-format
+msgid "Panama"
+msgstr "Panamá"
+
+#: lang.pm:466
+#, c-format
+msgid "Peru"
+msgstr "Perú"
+
+#: lang.pm:467
+#, c-format
+msgid "French Polynesia"
+msgstr ""
+
+#: lang.pm:468
+#, c-format
+msgid "Papua New Guinea"
+msgstr ""
+
+#: lang.pm:469 timezone.pm:232
+#, c-format
+msgid "Philippines"
+msgstr "Filipines"
+
+#: lang.pm:470
+#, c-format
+msgid "Pakistan"
+msgstr ""
+
+#: lang.pm:471 timezone.pm:258
+#, c-format
+msgid "Poland"
+msgstr "Polonia"
+
+#: lang.pm:472
+#, c-format
+msgid "Saint Pierre and Miquelon"
+msgstr ""
+
+#: lang.pm:473
+#, c-format
+msgid "Pitcairn"
+msgstr ""
+
+#: lang.pm:474
+#, c-format
+msgid "Puerto Rico"
+msgstr ""
+
+#: lang.pm:475
+#, c-format
+msgid "Palestine"
+msgstr ""
+
+#: lang.pm:476 timezone.pm:259
+#, c-format
+msgid "Portugal"
+msgstr "Portugal"
+
+#: lang.pm:477
+#, c-format
+msgid "Paraguay"
+msgstr ""
+
+#: lang.pm:478
+#, c-format
+msgid "Palau"
+msgstr ""
+
+#: lang.pm:479
+#, c-format
+msgid "Qatar"
+msgstr ""
+
+#: lang.pm:480
+#, c-format
+msgid "Reunion"
+msgstr ""
+
+#: lang.pm:481 timezone.pm:260
+#, c-format
+msgid "Romania"
+msgstr "Rumanía"
+
+#: lang.pm:482
+#, c-format
+msgid "Russia"
+msgstr "Rusia"
+
+#: lang.pm:483
+#, c-format
+msgid "Rwanda"
+msgstr ""
+
+#: lang.pm:484
+#, c-format
+msgid "Saudi Arabia"
+msgstr ""
+
+#: lang.pm:485
+#, c-format
+msgid "Solomon Islands"
+msgstr ""
+
+#: lang.pm:486
+#, c-format
+msgid "Seychelles"
+msgstr ""
+
+#: lang.pm:487
+#, c-format
+msgid "Sudan"
+msgstr ""
+
+#: lang.pm:488 timezone.pm:265
+#, c-format
+msgid "Sweden"
+msgstr "Suecia"
+
+#: lang.pm:489 timezone.pm:233
+#, c-format
+msgid "Singapore"
+msgstr "Singapur"
+
+#: lang.pm:490
+#, c-format
+msgid "Saint Helena"
+msgstr ""
+
+#: lang.pm:491 timezone.pm:263
+#, c-format
+msgid "Slovenia"
+msgstr "Eslovenia"
+
+#: lang.pm:492
+#, c-format
+msgid "Svalbard and Jan Mayen Islands"
+msgstr ""
+
+#: lang.pm:493 timezone.pm:262
+#, c-format
+msgid "Slovakia"
+msgstr "Eslovaquia"
+
+#: lang.pm:494
+#, c-format
+msgid "Sierra Leone"
+msgstr ""
+
+#: lang.pm:495
+#, c-format
+msgid "San Marino"
+msgstr ""
+
+#: lang.pm:496
+#, c-format
+msgid "Senegal"
+msgstr "Senegal"
+
+#: lang.pm:497
+#, c-format
+msgid "Somalia"
+msgstr ""
+
+#: lang.pm:498
+#, c-format
+msgid "Suriname"
+msgstr ""
+
+#: lang.pm:499
+#, c-format
+msgid "Sao Tome and Principe"
+msgstr ""
+
+#: lang.pm:500
+#, c-format
+msgid "El Salvador"
+msgstr "El Salvador"
+
+#: lang.pm:501
+#, c-format
+msgid "Syria"
+msgstr ""
+
+#: lang.pm:502
+#, c-format
+msgid "Swaziland"
+msgstr ""
+
+#: lang.pm:503
+#, c-format
+msgid "Turks and Caicos Islands"
+msgstr ""
+
+#: lang.pm:504
+#, c-format
+msgid "Chad"
+msgstr ""
+
+#: lang.pm:505
+#, c-format
+msgid "French Southern Territories"
+msgstr ""
+
+#: lang.pm:506
+#, c-format
+msgid "Togo"
+msgstr ""
+
+#: lang.pm:507 timezone.pm:235
+#, c-format
+msgid "Thailand"
+msgstr "Tailandia"
+
+#: lang.pm:508
+#, c-format
+msgid "Tajikistan"
+msgstr ""
+
+#: lang.pm:509
+#, c-format
+msgid "Tokelau"
+msgstr ""
+
+#: lang.pm:510
+#, c-format
+msgid "East Timor"
+msgstr ""
+
+#: lang.pm:511
+#, c-format
+msgid "Turkmenistan"
+msgstr ""
+
+#: lang.pm:512
+#, c-format
+msgid "Tunisia"
+msgstr ""
+
+#: lang.pm:513
+#, c-format
+msgid "Tonga"
+msgstr ""
+
+#: lang.pm:514 timezone.pm:236
+#, c-format
+msgid "Turkey"
+msgstr "Turquía"
+
+#: lang.pm:515
+#, c-format
+msgid "Trinidad and Tobago"
+msgstr "Trinidá y Tobagu"
+
+#: lang.pm:516
+#, c-format
+msgid "Tuvalu"
+msgstr ""
+
+#: lang.pm:517 timezone.pm:234
+#, c-format
+msgid "Taiwan"
+msgstr "Taiwan"
+
+#: lang.pm:518 timezone.pm:219
+#, c-format
+msgid "Tanzania"
+msgstr "Tanzania"
+
+#: lang.pm:519 timezone.pm:267
+#, c-format
+msgid "Ukraine"
+msgstr "Ucraína"
+
+#: lang.pm:520
+#, c-format
+msgid "Uganda"
+msgstr "Uganda"
+
+#: lang.pm:521
+#, c-format
+msgid "United States Minor Outlying Islands"
+msgstr ""
+
+#: lang.pm:522 timezone.pm:275
+#, c-format
+msgid "United States"
+msgstr "Estaos Xuníos"
+
+#: lang.pm:523
+#, c-format
+msgid "Uruguay"
+msgstr ""
+
+#: lang.pm:524
+#, c-format
+msgid "Uzbekistan"
+msgstr "Uzbequistán"
+
+#: lang.pm:525
+#, c-format
+msgid "Vatican"
+msgstr ""
+
+#: lang.pm:526
+#, c-format
+msgid "Saint Vincent and the Grenadines"
+msgstr ""
+
+#: lang.pm:527
+#, c-format
+msgid "Venezuela"
+msgstr "Venezuela"
+
+#: lang.pm:528
+#, c-format
+msgid "Virgin Islands (British)"
+msgstr ""
+
+#: lang.pm:529
+#, c-format
+msgid "Virgin Islands (U.S.)"
+msgstr ""
+
+#: lang.pm:530
+#, c-format
+msgid "Vietnam"
+msgstr "Vietnam"
+
+#: lang.pm:531
+#, c-format
+msgid "Vanuatu"
+msgstr ""
+
+#: lang.pm:532
+#, c-format
+msgid "Wallis and Futuna"
+msgstr ""
+
+#: lang.pm:533
+#, c-format
+msgid "Samoa"
+msgstr ""
+
+#: lang.pm:534
+#, c-format
+msgid "Yemen"
+msgstr ""
+
+#: lang.pm:535
+#, c-format
+msgid "Mayotte"
+msgstr ""
+
+#: lang.pm:536 timezone.pm:218
+#, c-format
+msgid "South Africa"
+msgstr "Sudáfrica"
+
+#: lang.pm:537
+#, c-format
+msgid "Zambia"
+msgstr ""
+
+#: lang.pm:538
+#, c-format
+msgid "Zimbabwe"
+msgstr ""
+
+#: lang.pm:1539
+#, c-format
+msgid "Welcome to %s"
+msgstr ""
+
+#: lvm.pm:128
+#, c-format
+msgid "Moving used physical extents to other physical volumes failed"
+msgstr ""
+
+#: lvm.pm:194
+#, c-format
+msgid "Physical volume %s is still in use"
+msgstr ""
+
+#: lvm.pm:204
+#, c-format
+msgid "Remove the logical volumes first\n"
+msgstr ""
+
+#: lvm.pm:248
+#, c-format
+msgid "The bootloader can't handle /boot on multiple physical volumes"
+msgstr ""
+
+#. -PO: Only write something if needed:
+#: messages.pm:11
+#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Introducción"
+
+#: messages.pm:20
+#, c-format
+msgid ""
+"The operating system and the different components available in the Mageia "
+"distribution \n"
+"shall be called the \"Software Products\" hereafter. The Software Products "
+"include, but are not \n"
+"restricted to, the set of programs, methods, rules and documentation related "
+"to the operating \n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr ""
+
+#: messages.pm:29
+#, c-format
+msgid ""
+"Please read this document carefully. This document is a license agreement "
+"between you and \n"
+"Mageia which applies to the Software Products.\n"
+"By installing, duplicating or using any of the Software Products in any "
+"manner, you explicitly \n"
+"accept and fully agree to conform to the terms and conditions of this "
+"License. \n"
+"If you disagree with any portion of the License, you are not allowed to "
+"install, duplicate or use \n"
+"the Software Products. \n"
+"Any attempt to install, duplicate or use the Software Products in a manner "
+"which does not comply \n"
+"with the terms and conditions of this License is void and will terminate "
+"your rights under this \n"
+"License. Upon termination of the License, you must immediately destroy all "
+"copies of the \n"
+"Software Products."
+msgstr ""
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
+"The Software Products and attached documentation are provided \"as is\", "
+"with no warranty, to the \n"
+"extent permitted by law.\n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
+"permitted by law, be liable for any special, incidental, direct or indirect "
+"damages whatsoever \n"
+"(including without limitation damages for loss of business, interruption of "
+"business, financial \n"
+"loss, legal fees and penalties resulting from a court judgment, or any other "
+"consequential loss) \n"
+"arising out of the use or inability to use the Software Products, even if "
+"Mageia or its \n"
+"licensors or suppliers have been advised of the possibility or occurrence of "
+"such damages.\n"
+"\n"
+"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
+"COUNTRIES\n"
+"\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
+"distributors will, in any circumstances, be liable for any special, "
+"incidental, direct or indirect \n"
+"damages whatsoever (including without limitation damages for loss of "
+"business, interruption of \n"
+"business, financial loss, legal fees and penalties resulting from a court "
+"judgment, or any \n"
+"other consequential loss) arising out of the possession and use of software "
+"components or \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
+"prohibited or restricted in some countries by local laws.\n"
+"This limited liability applies to, but is not restricted to, the strong "
+"cryptography components \n"
+"included in the Software Products.\n"
+"However, because some jurisdictions do not allow the exclusion or limitation "
+"of liability for \n"
+"consequential or incidental damages, the above limitation may not apply to "
+"you."
+msgstr ""
+
+#: messages.pm:68
+#, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr ""
+
+#: messages.pm:70
+#, c-format
+msgid ""
+"The Software Products consist of components created by different persons or "
+"entities.\n"
+"Most of these licenses allow you to use, duplicate, adapt or redistribute "
+"the components which \n"
+"they cover. Please read carefully the terms and conditions of the license "
+"agreement for each component \n"
+"before using any component. Any question on a component license should be "
+"addressed to the component \n"
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
+"Documentation written \n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr ""
+
+#: messages.pm:81
+#, c-format
+msgid ""
+"All rights to the components of the Software Products belong to their "
+"respective authors and are \n"
+"protected by intellectual property and copyright laws applicable to software "
+"programs.\n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
+"Products, as a whole or in parts, by all means and for all purposes.\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr ""
+
+#: messages.pm:90
+#, c-format
+msgid ""
+"If any portion of this agreement is held void, illegal or inapplicable by a "
+"court judgment, this \n"
+"portion is excluded from this contract. You remain bound by the other "
+"applicable sections of the \n"
+"agreement.\n"
+"The terms and conditions of this License are governed by the Laws of "
+"France.\n"
+"All disputes on the terms of this license will preferably be settled out of "
+"court. As a last \n"
+"resort, the dispute will be referred to the appropriate Courts of Law of "
+"Paris - France.\n"
+"For any question on this document, please contact Mageia."
+msgstr ""
+
+#: messages.pm:102
+#, c-format
+msgid ""
+"Warning: Free Software may not necessarily be patent free, and some Free\n"
+"Software included may be covered by patents in your country. For example, "
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
+msgstr ""
+
+#: messages.pm:112
+#, c-format
+msgid ""
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
+msgstr ""
+"Norabona, completóse la instalación.\n"
+"Quita'l mediu d'instalación ya primi la tecla «Intro» pa reaniciar."
+
+#: messages.pm:114
+#, c-format
+msgid ""
+"For information on fixes which are available for this release of Mageia,\n"
+"consult the Errata available from:\n"
+"%s"
+msgstr ""
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
+"Dempués de reaniciar ya aniciar la sesión en Mageia, vas ver la pantalla de "
+"MageiaWelcome.\n"
+"Ta enllena d'información ya enllaces útiles."
+
+#: modules/interactive.pm:19
+#, c-format
+msgid "This driver has no configuration parameter!"
+msgstr ""
+
+#: modules/interactive.pm:22
+#, c-format
+msgid "Module configuration"
+msgstr ""
+
+#: modules/interactive.pm:22
+#, c-format
+msgid "You can configure each parameter of the module here."
+msgstr "Equí pues configurar cada parámetru del módulu."
+
+#: modules/interactive.pm:64
+#, c-format
+msgid "Found %s interfaces"
+msgstr ""
+
+#: modules/interactive.pm:65
+#, c-format
+msgid "Do you have another one?"
+msgstr ""
+
+#: modules/interactive.pm:66
+#, c-format
+msgid "Do you have any %s interfaces?"
+msgstr ""
+
+#: modules/interactive.pm:72
+#, c-format
+msgid "See hardware info"
+msgstr ""
+
+#: modules/interactive.pm:83
+#, c-format
+msgid "Installing driver for USB controller"
+msgstr ""
+
+#: modules/interactive.pm:84
+#, c-format
+msgid "Installing driver for firewire controller \"%s\""
+msgstr ""
+
+#: modules/interactive.pm:85
+#, c-format
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr ""
+
+#: modules/interactive.pm:86
+#, c-format
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr ""
+
+#. -PO: the first %s is the card type (scsi, network, sound,...)
+#. -PO: the second is the vendor+model name
+#: modules/interactive.pm:97
+#, c-format
+msgid "Installing driver for %s card %s"
+msgstr ""
+
+#: modules/interactive.pm:100
+#, c-format
+msgid "Configuring Hardware"
+msgstr ""
+
+#: modules/interactive.pm:111
+#, c-format
+msgid ""
+"You may now provide options to module %s.\n"
+"Note that any address should be entered with the prefix 0x like '0x123'"
+msgstr ""
+
+#: modules/interactive.pm:117
+#, c-format
+msgid ""
+"You may now provide options to module %s.\n"
+"Options are in format ``name=value name2=value2 ...''.\n"
+"For instance, ``io=0x300 irq=7''"
+msgstr ""
+
+#: modules/interactive.pm:119
+#, c-format
+msgid "Module options:"
+msgstr ""
+
+#. -PO: the %s is the driver type (scsi, network, sound,...)
+#: modules/interactive.pm:132
+#, c-format
+msgid "Which %s driver should I try?"
+msgstr ""
+
+#: modules/interactive.pm:141
+#, c-format
+msgid ""
+"In some cases, the %s driver needs to have extra information to work\n"
+"properly, although it normally works fine without them. Would you like to "
+"specify\n"
+"extra options for it or allow the driver to probe your machine for the\n"
+"information it needs? Occasionally, probing will hang a computer, but it "
+"should\n"
+"not cause any damage."
+msgstr ""
+
+#: modules/interactive.pm:145
+#, c-format
+msgid "Autoprobe"
+msgstr ""
+
+#: modules/interactive.pm:145
+#, c-format
+msgid "Specify options"
+msgstr ""
+
+#: modules/interactive.pm:157
+#, c-format
+msgid ""
+"Loading module %s failed.\n"
+"Do you want to try again with other parameters?"
+msgstr ""
+
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr "¿De xuru que quies colar?"
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
+#, c-format
+msgid "Password is trivial to guess"
+msgstr ""
+
+#: mygtk2.pm:1572 mygtk3.pm:1648
+#, c-format
+msgid "Password should be resistant to basic attacks"
+msgstr ""
+
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
+msgid "Password seems secure"
+msgstr ""
+
+#: partition_table.pm:508
+#, c-format
+msgid "mount failed: "
+msgstr "Falló'l montaxe: "
+
+#: partition_table.pm:679
+#, c-format
+msgid ""
+"You have a hole in your partition table but I cannot use it.\n"
+"The only solution is to move your primary partitions to have the hole next "
+"to the extended partitions."
+msgstr ""
+
+#: partition_table/raw.pm:294
+#, c-format
+msgid ""
+"Something bad is happening on your hard disk drive. \n"
+"A test to check the integrity of data has failed. \n"
+"It means writing anything on the disk will end up with random, corrupted "
+"data."
+msgstr ""
+
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
+#, c-format
+msgid "Unused packages removal"
+msgstr ""
+
+#: pkgs.pm:268
+#, c-format
+msgid "Finding unused hardware packages..."
+msgstr ""
+
+#: pkgs.pm:271
+#, c-format
+msgid "Finding unused localization packages..."
+msgstr ""
+
+#: pkgs.pm:285
+#, c-format
+msgid ""
+"We have detected that some packages are not needed for your system "
+"configuration."
+msgstr ""
+"Detectemos que dalgunos paquetes nun se precisen pa la configuración del to "
+"sistema."
+
+#: pkgs.pm:286
+#, c-format
+msgid "We will remove the following packages, unless you choose otherwise:"
+msgstr ""
+"Vamos desaniciar los paquetes de darréu a nun ser qu'escueyas otra cosa:"
+
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
+msgid "Unused hardware support"
+msgstr ""
+
+#: pkgs.pm:293 pkgs.pm:294
+#, c-format
+msgid "Unused localization"
+msgstr ""
+
+#: raid.pm:59
+#, c-format
+msgid "Cannot add a partition to _formatted_ RAID %s"
+msgstr ""
+
+#: raid.pm:201
+#, c-format
+msgid "Not enough partitions for RAID level %d\n"
+msgstr ""
+
+#: scanner.pm:95
+#, c-format
+msgid "Could not create directory /usr/share/sane/firmware!"
+msgstr ""
+
+#: scanner.pm:106
+#, c-format
+msgid "Could not create link /usr/share/sane/%s!"
+msgstr ""
+
+#: scanner.pm:113
+#, c-format
+msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
+msgstr ""
+
+#: scanner.pm:120
+#, c-format
+msgid "Could not set permissions of firmware file %s!"
+msgstr ""
+
+#: scanner.pm:197
+#, c-format
+msgid "Scannerdrake"
+msgstr "Scannerdrake"
+
+#: scanner.pm:198
+#, c-format
+msgid "Could not install the packages needed to share your scanner(s)."
+msgstr ""
+
+#: scanner.pm:199
+#, c-format
+msgid "Your scanner(s) will not be available for non-root users."
+msgstr ""
+
+#: security/help.pm:11
+#, c-format
+msgid "Accept bogus IPv4 error messages."
+msgstr ""
+
+#: security/help.pm:13
+#, c-format
+msgid "Accept broadcasted icmp echo."
+msgstr ""
+
+#: security/help.pm:15
+#, c-format
+msgid "Accept icmp echo."
+msgstr ""
+
+#: security/help.pm:17
+#, c-format
+msgid "Allow autologin."
+msgstr ""
+
+#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
+#: security/help.pm:21
+#, c-format
+msgid ""
+"If set to \"ALL\", /etc/issue and /etc/issue.net are allowed to exist.\n"
+"\n"
+"If set to \"None\", no issues are allowed.\n"
+"\n"
+"Else only /etc/issue is allowed."
+msgstr ""
+
+#: security/help.pm:27
+#, c-format
+msgid "Allow reboot by the console user."
+msgstr ""
+
+#: security/help.pm:29
+#, c-format
+msgid "Allow remote root login."
+msgstr ""
+
+#: security/help.pm:31
+#, c-format
+msgid "Allow direct root login."
+msgstr ""
+
+#: security/help.pm:33
+#, c-format
+msgid ""
+"Allow the list of users on the system on display managers (kdm and gdm)."
+msgstr ""
+
+#: security/help.pm:35
+#, c-format
+msgid ""
+"Allow to export display when\n"
+"passing from the root account to the other users.\n"
+"\n"
+"See pam_xauth(8) for more details.'"
+msgstr ""
+
+#: security/help.pm:40
+#, c-format
+msgid ""
+"Allow X connections:\n"
+"\n"
+"- \"All\" (all connections are allowed),\n"
+"\n"
+"- \"Local\" (only connection from local machine),\n"
+"\n"
+"- \"None\" (no connection)."
+msgstr ""
+
+#: security/help.pm:48
+#, c-format
+msgid ""
+"The argument specifies if clients are authorized to connect\n"
+"to the X server from the network on the tcp port 6000 or not."
+msgstr ""
+
+#. -PO: here "ALL", "Local" and "None" are values in a pull-down menu; translate them the same as they're
+#: security/help.pm:53
+#, c-format
+msgid ""
+"Authorize:\n"
+"\n"
+"- all services controlled by tcp_wrappers (see hosts.deny(5) man page) if "
+"set to \"ALL\",\n"
+"\n"
+"- only local ones if set to \"Local\"\n"
+"\n"
+"- none if set to \"None\".\n"
+"\n"
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
+msgstr ""
+
+#: security/help.pm:63
+#, c-format
+msgid ""
+"If SERVER_LEVEL (or SECURE_LEVEL if absent)\n"
+"is greater than 3 in /etc/security/msec/security.conf, creates the\n"
+"symlink /etc/security/msec/server to point to\n"
+"/etc/security/msec/server.<SERVER_LEVEL>.\n"
+"\n"
+"The /etc/security/msec/server is used by chkconfig --add to decide to\n"
+"add a service if it is present in the file during the installation of\n"
+"packages."
+msgstr ""
+
+#: security/help.pm:72
+#, c-format
+msgid ""
+"Enable crontab and at for users.\n"
+"\n"
+"Put allowed users in /etc/cron.allow and /etc/at.allow (see man at(1)\n"
+"and crontab(1))."
+msgstr ""
+
+#: security/help.pm:77
+#, c-format
+msgid "Enable syslog reports to console 12"
+msgstr ""
+
+#: security/help.pm:79
+#, c-format
+msgid ""
+"Enable name resolution spoofing protection. If\n"
+"\"%s\" is true, also reports to syslog."
+msgstr ""
+
+#: security/help.pm:80
+#, c-format
+msgid "Security Alerts:"
+msgstr ""
+
+#: security/help.pm:82
+#, c-format
+msgid "Enable IP spoofing protection."
+msgstr ""
+
+#: security/help.pm:84
+#, c-format
+msgid "Enable libsafe if libsafe is found on the system."
+msgstr ""
+
+#: security/help.pm:86
+#, c-format
+msgid "Enable the logging of IPv4 strange packets."
+msgstr ""
+
+#: security/help.pm:88
+#, c-format
+msgid "Enable msec hourly security check."
+msgstr ""
+
+#: security/help.pm:90
+#, c-format
+msgid ""
+"Enable su only from members of the wheel group. If set to no, allows su from "
+"any user."
+msgstr ""
+
+#: security/help.pm:92
+#, c-format
+msgid "Use password to authenticate users."
+msgstr ""
+
+#: security/help.pm:94
+#, c-format
+msgid "Activate Ethernet cards promiscuity check."
+msgstr ""
+
+#: security/help.pm:96
+#, c-format
+msgid "Activate daily security check."
+msgstr ""
+
+#: security/help.pm:98
+#, c-format
+msgid "Enable sulogin(8) in single user level."
+msgstr ""
+
+#: security/help.pm:100
+#, c-format
+msgid "Add the name as an exception to the handling of password aging by msec."
+msgstr ""
+
+#: security/help.pm:102
+#, c-format
+msgid "Set password aging to \"max\" days and delay to change to \"inactive\"."
+msgstr ""
+
+#: security/help.pm:104
+#, c-format
+msgid "Set the password history length to prevent password reuse."
+msgstr ""
+
+#: security/help.pm:106
+#, c-format
+msgid ""
+"Set the password minimum length and minimum number of digit and minimum "
+"number of capitalized letters."
+msgstr ""
+
+#: security/help.pm:108
+#, c-format
+msgid "Set the root's file mode creation mask."
+msgstr ""
+
+#: security/help.pm:109
+#, c-format
+msgid "if set to yes, check open ports."
+msgstr ""
+
+#: security/help.pm:110
+#, c-format
+msgid ""
+"if set to yes, check for:\n"
+"\n"
+"- empty passwords,\n"
+"\n"
+"- no password in /etc/shadow\n"
+"\n"
+"- for users with the 0 id other than root."
+msgstr ""
+
+#: security/help.pm:117
+#, c-format
+msgid "if set to yes, check permissions of files in the users' home."
+msgstr ""
+
+#: security/help.pm:118
+#, c-format
+msgid "if set to yes, check if the network devices are in promiscuous mode."
+msgstr ""
+
+#: security/help.pm:119
+#, c-format
+msgid "if set to yes, run the daily security checks."
+msgstr ""
+
+#: security/help.pm:120
+#, c-format
+msgid "if set to yes, check additions/removals of sgid files."
+msgstr ""
+
+#: security/help.pm:121
+#, c-format
+msgid "if set to yes, check empty password in /etc/shadow."
+msgstr ""
+
+#: security/help.pm:122
+#, c-format
+msgid "if set to yes, verify checksum of the suid/sgid files."
+msgstr ""
+
+#: security/help.pm:123
+#, c-format
+msgid "if set to yes, check additions/removals of suid root files."
+msgstr ""
+
+#: security/help.pm:124
+#, c-format
+msgid "if set to yes, report unowned files."
+msgstr ""
+
+#: security/help.pm:125
+#, c-format
+msgid "if set to yes, check files/directories writable by everybody."
+msgstr ""
+
+#: security/help.pm:126
+#, c-format
+msgid "if set to yes, run chkrootkit checks."
+msgstr ""
+
+#: security/help.pm:127
+#, c-format
+msgid ""
+"if set, send the mail report to this email address else send it to root."
+msgstr ""
+
+#: security/help.pm:128
+#, c-format
+msgid "if set to yes, report check result by mail."
+msgstr ""
+
+#: security/help.pm:129
+#, c-format
+msgid "Do not send mails if there's nothing to warn about"
+msgstr ""
+
+#: security/help.pm:130
+#, c-format
+msgid "if set to yes, run some checks against the rpm database."
+msgstr ""
+
+#: security/help.pm:131
+#, c-format
+msgid "if set to yes, report check result to syslog."
+msgstr ""
+
+#: security/help.pm:132
+#, c-format
+msgid "if set to yes, reports check result to tty."
+msgstr ""
+
+#: security/help.pm:134
+#, c-format
+msgid "Set shell commands history size. A value of -1 means unlimited."
+msgstr ""
+
+#: security/help.pm:136
+#, c-format
+msgid "Set the shell timeout. A value of zero means no timeout."
+msgstr ""
+
+#: security/help.pm:136
+#, c-format
+msgid "Timeout unit is second"
+msgstr ""
+
+#: security/help.pm:138
+#, c-format
+msgid "Set the user's file mode creation mask."
+msgstr ""
+
+#: security/l10n.pm:11
+#, c-format
+msgid "Accept bogus IPv4 error messages"
+msgstr ""
+
+#: security/l10n.pm:12
+#, c-format
+msgid "Accept broadcasted icmp echo"
+msgstr ""
+
+#: security/l10n.pm:13
+#, c-format
+msgid "Accept icmp echo"
+msgstr ""
+
+#: security/l10n.pm:15
+#, c-format
+msgid "/etc/issue* exist"
+msgstr ""
+
+#: security/l10n.pm:16
+#, c-format
+msgid "Reboot by the console user"
+msgstr ""
+
+#: security/l10n.pm:17
+#, c-format
+msgid "Allow remote root login"
+msgstr ""
+
+#: security/l10n.pm:18
+#, c-format
+msgid "Direct root login"
+msgstr ""
+
+#: security/l10n.pm:19
+#, c-format
+msgid "List users on display managers (kdm and gdm)"
+msgstr ""
+
+#: security/l10n.pm:20
+#, c-format
+msgid "Export display when passing from root to the other users"
+msgstr ""
+
+#: security/l10n.pm:21
+#, c-format
+msgid "Allow X Window connections"
+msgstr ""
+
+#: security/l10n.pm:22
+#, c-format
+msgid "Authorize TCP connections to X Window"
+msgstr ""
+
+#: security/l10n.pm:23
+#, c-format
+msgid "Authorize all services controlled by tcp_wrappers"
+msgstr ""
+
+#: security/l10n.pm:24
+#, c-format
+msgid "Chkconfig obey msec rules"
+msgstr ""
+
+#: security/l10n.pm:25
+#, c-format
+msgid "Enable \"crontab\" and \"at\" for users"
+msgstr ""
+
+#: security/l10n.pm:26
+#, c-format
+msgid "Syslog reports to console 12"
+msgstr ""
+
+#: security/l10n.pm:27
+#, c-format
+msgid "Name resolution spoofing protection"
+msgstr ""
+
+#: security/l10n.pm:28
+#, c-format
+msgid "Enable IP spoofing protection"
+msgstr ""
+
+#: security/l10n.pm:29
+#, c-format
+msgid "Enable libsafe if libsafe is found on the system"
+msgstr ""
+
+#: security/l10n.pm:30
+#, c-format
+msgid "Enable the logging of IPv4 strange packets"
+msgstr ""
+
+#: security/l10n.pm:31
+#, c-format
+msgid "Enable msec hourly security check"
+msgstr ""
+
+#: security/l10n.pm:32
+#, c-format
+msgid "Enable su only from the wheel group members"
+msgstr ""
+
+#: security/l10n.pm:33
+#, c-format
+msgid "Use password to authenticate users"
+msgstr ""
+
+#: security/l10n.pm:34
+#, c-format
+msgid "Ethernet cards promiscuity check"
+msgstr ""
+
+#: security/l10n.pm:35
+#, c-format
+msgid "Daily security check"
+msgstr ""
+
+#: security/l10n.pm:36
+#, c-format
+msgid "Sulogin(8) in single user level"
+msgstr ""
+
+#: security/l10n.pm:37
+#, c-format
+msgid "No password aging for"
+msgstr ""
+
+#: security/l10n.pm:38
+#, c-format
+msgid "Set password expiration and account inactivation delays"
+msgstr ""
+
+#: security/l10n.pm:39
+#, c-format
+msgid "Password history length"
+msgstr ""
+
+#: security/l10n.pm:40
+#, c-format
+msgid "Password minimum length and number of digits and upcase letters"
+msgstr ""
+
+#: security/l10n.pm:41
+#, c-format
+msgid "Root umask"
+msgstr ""
+
+#: security/l10n.pm:42
+#, c-format
+msgid "Shell history size"
+msgstr ""
+
+#: security/l10n.pm:43
+#, c-format
+msgid "Shell timeout"
+msgstr ""
+
+#: security/l10n.pm:44
+#, c-format
+msgid "User umask"
+msgstr ""
+
+#: security/l10n.pm:45
+#, c-format
+msgid "Check open ports"
+msgstr ""
+
+#: security/l10n.pm:46
+#, c-format
+msgid "Check for unsecured accounts"
+msgstr ""
+
+#: security/l10n.pm:47
+#, c-format
+msgid "Check permissions of files in the users' home"
+msgstr ""
+
+#: security/l10n.pm:48
+#, c-format
+msgid "Check if the network devices are in promiscuous mode"
+msgstr ""
+
+#: security/l10n.pm:49
+#, c-format
+msgid "Run the daily security checks"
+msgstr ""
+
+#: security/l10n.pm:50
+#, c-format
+msgid "Check additions/removals of sgid files"
+msgstr ""
+
+#: security/l10n.pm:51
+#, c-format
+msgid "Check empty password in /etc/shadow"
+msgstr ""
+
+#: security/l10n.pm:52
+#, c-format
+msgid "Verify checksum of the suid/sgid files"
+msgstr ""
+
+#: security/l10n.pm:53
+#, c-format
+msgid "Check additions/removals of suid root files"
+msgstr ""
+
+#: security/l10n.pm:54
+#, c-format
+msgid "Report unowned files"
+msgstr ""
+
+#: security/l10n.pm:55
+#, c-format
+msgid "Check files/directories writable by everybody"
+msgstr ""
+
+#: security/l10n.pm:56
+#, c-format
+msgid "Run chkrootkit checks"
+msgstr ""
+
+#: security/l10n.pm:57
+#, c-format
+msgid "Do not send empty mail reports"
+msgstr ""
+
+#: security/l10n.pm:58
+#, c-format
+msgid "If set, send the mail report to this email address else send it to root"
+msgstr ""
+
+#: security/l10n.pm:59
+#, c-format
+msgid "Report check result by mail"
+msgstr ""
+
+#: security/l10n.pm:60
+#, c-format
+msgid "Run some checks against the rpm database"
+msgstr ""
+
+#: security/l10n.pm:61
+#, c-format
+msgid "Report check result to syslog"
+msgstr ""
+
+#: security/l10n.pm:62
+#, c-format
+msgid "Reports check result to tty"
+msgstr ""
+
+#: security/level.pm:10
+#, c-format
+msgid "Disable msec"
+msgstr ""
+
+#: security/level.pm:11
+#, c-format
+msgid "Standard"
+msgstr "Estándar"
+
+#: security/level.pm:12
+#, c-format
+msgid "Secure"
+msgstr ""
+
+#: security/level.pm:52
+#, c-format
+msgid ""
+"This level is to be used with care, as it disables all additional security\n"
+"provided by msec. Use it only when you want to take care of all aspects of "
+"system security\n"
+"on your own."
+msgstr ""
+
+#: security/level.pm:55
+#, c-format
+msgid ""
+"This is the standard security recommended for a computer that will be used "
+"to connect to the Internet as a client."
+msgstr ""
+
+#: security/level.pm:56
+#, c-format
+msgid ""
+"With this security level, the use of this system as a server becomes "
+"possible.\n"
+"The security is now high enough to use the system as a server which can "
+"accept\n"
+"connections from many clients. Note: if your machine is only a client on the "
+"Internet, you should choose a lower level."
+msgstr ""
+
+#: security/level.pm:63
+#, c-format
+msgid "DrakSec Basic Options"
+msgstr "Opciones básiques de DrakSec"
+
+#: security/level.pm:66
+#, c-format
+msgid "Please choose the desired security level"
+msgstr ""
+
+#. -PO: this string is used to properly format "<security level>: <level description>"
+#: security/level.pm:70
+#, c-format
+msgid "%s: %s"
+msgstr ""
+
+#: security/level.pm:73
+#, c-format
+msgid "Security Administrator:"
+msgstr ""
+
+#: security/level.pm:74
+#, c-format
+msgid "Login or email:"
+msgstr ""
+
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
+#, c-format
+msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
+msgstr ""
+
+#: services.pm:33
+#, c-format
+msgid "Anacron is a periodic command scheduler."
+msgstr ""
+
+#: services.pm:34
+#, c-format
+msgid ""
+"apmd is used for monitoring battery status and logging it via syslog.\n"
+"It can also be used for shutting down the machine when the battery is low."
+msgstr ""
+
+#: services.pm:36
+#, c-format
+msgid ""
+"Runs commands scheduled by the at command at the time specified when\n"
+"at was run, and runs batch commands when the load average is low enough."
+msgstr ""
+
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr ""
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
+#, c-format
+msgid ""
+"cron is a standard UNIX program that runs user-specified programs\n"
+"at periodic scheduled times. vixie cron adds a number of features to the "
+"basic\n"
+"UNIX cron, including better security and more powerful configuration options."
+msgstr ""
+
+#: services.pm:44
+#, c-format
+msgid ""
+"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
+msgstr ""
+
+#: services.pm:45
+#, c-format
+msgid "Launches the graphical display manager"
+msgstr ""
+
+#: services.pm:46
+#, c-format
+msgid ""
+"FAM is a file monitoring daemon. It is used to get reports when files "
+"change.\n"
+"It is used by GNOME and KDE"
+msgstr ""
+
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
+#, c-format
+msgid ""
+"GPM adds mouse support to text-based Linux applications such the\n"
+"Midnight Commander. It also allows mouse-based console cut-and-paste "
+"operations,\n"
+"and includes support for pop-up menus on the console."
+msgstr ""
+
+#: services.pm:56
+#, c-format
+msgid "HAL is a daemon that collects and maintains information about hardware"
+msgstr ""
+
+#: services.pm:57
+#, c-format
+msgid ""
+"HardDrake runs a hardware probe, and optionally configures\n"
+"new/changed hardware."
+msgstr ""
+
+#: services.pm:59
+#, c-format
+msgid ""
+"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
+msgstr ""
+
+#: services.pm:60
+#, c-format
+msgid ""
+"The internet superserver daemon (commonly called inetd) starts a\n"
+"variety of other internet services as needed. It is responsible for "
+"starting\n"
+"many services, including telnet, ftp, rsh, and rlogin. Disabling inetd "
+"disables\n"
+"all of the services it is responsible for."
+msgstr ""
+
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
+#, c-format
+msgid ""
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
+msgstr ""
+
+#: services.pm:67
+#, c-format
+msgid ""
+"This package loads the selected keyboard map as set in\n"
+"/etc/sysconfig/keyboard. This can be selected using the kbdconfig utility.\n"
+"You should leave this enabled for most machines."
+msgstr ""
+
+#: services.pm:70
+#, c-format
+msgid ""
+"Automatic regeneration of kernel header in /boot for\n"
+"/usr/include/linux/{autoconf,version}.h"
+msgstr ""
+
+#: services.pm:72
+#, c-format
+msgid "Automatic detection and configuration of hardware at boot."
+msgstr ""
+
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
+#, c-format
+msgid ""
+"Linuxconf will sometimes arrange to perform various tasks\n"
+"at boot-time to maintain the system configuration."
+msgstr ""
+
+#: services.pm:76
+#, c-format
+msgid ""
+"lpd is the print daemon required for lpr to work properly. It is\n"
+"basically a server that arbitrates print jobs to printer(s)."
+msgstr ""
+
+#: services.pm:78
+#, c-format
+msgid ""
+"Linux Virtual Server, used to build a high-performance and highly\n"
+"available server."
+msgstr ""
+
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
+#, c-format
+msgid ""
+"DBUS is a daemon which broadcasts notifications of system events and other "
+"messages"
+msgstr ""
+
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
+#, c-format
+msgid ""
+"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
+"names to IP addresses."
+msgstr ""
+
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
+#, c-format
+msgid ""
+"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
+"Manager/Windows), and NCP (NetWare) mount points."
+msgstr ""
+
+#: services.pm:88
+#, c-format
+msgid ""
+"Activates/Deactivates all network interfaces configured to start\n"
+"at boot time."
+msgstr ""
+
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
+#, c-format
+msgid ""
+"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
+"This service provides NFS server functionality, which is configured via the\n"
+"/etc/exports file."
+msgstr ""
+
+#: services.pm:95
+#, c-format
+msgid ""
+"NFS is a popular protocol for file sharing across TCP/IP\n"
+"networks. This service provides NFS file locking functionality."
+msgstr ""
+
+#: services.pm:97
+#, c-format
+msgid "Synchronizes system time using the Network Time Protocol (NTP)"
+msgstr ""
+
+#: services.pm:98
+#, c-format
+msgid ""
+"Automatically switch on numlock key locker under console\n"
+"and Xorg at boot."
+msgstr ""
+
+#: services.pm:100
+#, c-format
+msgid "Support the OKI 4w and compatible winprinters."
+msgstr ""
+
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
+#, c-format
+msgid ""
+"PCMCIA support is usually to support things like ethernet and\n"
+"modems in laptops. It will not get started unless configured so it is safe "
+"to have\n"
+"it installed on machines that do not need it."
+msgstr ""
+
+#: services.pm:105
+#, c-format
+msgid ""
+"The portmapper manages RPC connections, which are used by\n"
+"protocols such as NFS and NIS. The portmap server must be running on "
+"machines\n"
+"which act as servers for protocols which make use of the RPC mechanism."
+msgstr ""
+
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
+#, c-format
+msgid ""
+"Postfix is a Mail Transport Agent, which is the program that moves mail from "
+"one machine to another."
+msgstr ""
+
+#: services.pm:110
+#, c-format
+msgid ""
+"Saves and restores system entropy pool for higher quality random\n"
+"number generation."
+msgstr ""
+
+#: services.pm:112
+#, c-format
+msgid ""
+"Assign raw devices to block devices (such as hard disk drive\n"
+"partitions), for the use of applications such as Oracle or DVD players"
+msgstr ""
+
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr ""
+
+#: services.pm:115
+#, c-format
+msgid ""
+"The routed daemon allows for automatic IP router table updated via\n"
+"the RIP protocol. While RIP is widely used on small networks, more complex\n"
+"routing protocols are needed for complex networks."
+msgstr ""
+
+#: services.pm:118
+#, c-format
+msgid ""
+"The rstat protocol allows users on a network to retrieve\n"
+"performance metrics for any machine on that network."
+msgstr ""
+
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
+#, c-format
+msgid ""
+"The rusers protocol allows users on a network to identify who is\n"
+"logged in on other responding machines."
+msgstr ""
+
+#: services.pm:123
+#, c-format
+msgid ""
+"The rwho protocol lets remote users get a list of all of the users\n"
+"logged into a machine running the rwho daemon (similar to finger)."
+msgstr ""
+
+#: services.pm:125
+#, c-format
+msgid ""
+"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
+msgstr ""
+
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
+#, c-format
+msgid ""
+"The SMB/CIFS protocol enables to share access to files & printers and also "
+"integrates with a Windows Server domain"
+msgstr ""
+
+#: services.pm:129
+#, c-format
+msgid "Launch the sound system on your machine"
+msgstr ""
+
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
+#, c-format
+msgid ""
+"Secure Shell is a network protocol that allows data to be exchanged over a "
+"secure channel between two computers"
+msgstr ""
+
+#: services.pm:132
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages\n"
+"to various system log files. It is a good idea to always run syslog."
+msgstr ""
+
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
+#, c-format
+msgid "Load the drivers for your usb devices."
+msgstr ""
+
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
+#, c-format
+msgid "Starts the X Font Server."
+msgstr ""
+
+#: services.pm:138
+#, c-format
+msgid "Starts other deamons on demand."
+msgstr "Anicia otros degorrios so demandas."
+
+#: services.pm:167
+#, c-format
+msgid "Printing"
+msgstr "Imprentación"
+
+#: services.pm:170
+#, c-format
+msgid "Internet"
+msgstr "Internet"
+
+#: services.pm:175
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr ""
+
+#: services.pm:178
+#, c-format
+msgid "System"
+msgstr "Sistema"
+
+#: services.pm:185
+#, c-format
+msgid "Remote Administration"
+msgstr ""
+
+#: services.pm:194
+#, c-format
+msgid "Database Server"
+msgstr ""
+
+#: services.pm:205 services.pm:247
+#, c-format
+msgid "Services"
+msgstr "Servicios"
+
+#: services.pm:205
+#, c-format
+msgid "Choose which services should be automatically started at boot time"
+msgstr ""
+
+#: services.pm:228
+#, c-format
+msgid "%d activated for %d registered"
+msgstr ""
+
+#: services.pm:251
+#, c-format
+msgid "running"
+msgstr ""
+
+#: services.pm:251
+#, c-format
+msgid "stopped"
+msgstr ""
+
+#: services.pm:256
+#, c-format
+msgid "Services and daemons"
+msgstr "Servicios y degorrios"
+
+#: services.pm:262
+#, c-format
+msgid ""
+"No additional information\n"
+"about this service, sorry."
+msgstr ""
+
+#: services.pm:269
+#, c-format
+msgid "Start when requested"
+msgstr ""
+
+#: services.pm:269
+#, c-format
+msgid "On boot"
+msgstr "Nel arrinque"
+
+#: services.pm:283
+#, c-format
+msgid "Start"
+msgstr ""
+
+#: services.pm:283
+#, c-format
+msgid "Stop"
+msgstr ""
+
+#: standalone.pm:27
+#, c-format
+msgid ""
+"This program is free software; you can redistribute it and/or modify\n"
+"it under the terms of the GNU General Public License as published by\n"
+"the Free Software Foundation; either version 2, or (at your option)\n"
+"any later version.\n"
+"\n"
+"This program is distributed in the hope that it will be useful,\n"
+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
+"GNU General Public License for more details.\n"
+"\n"
+"You should have received a copy of the GNU General Public License\n"
+"along with this program; if not, write to the Free Software\n"
+"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
+"USA.\n"
+msgstr ""
+
+#: standalone.pm:46
+#, c-format
+msgid ""
+"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
+"Backup and Restore application\n"
+"\n"
+"--default : save default directories.\n"
+"--debug : show all debug messages.\n"
+"--show-conf : list of files or directories to backup.\n"
+"--config-info : explain configuration file options (for non-X "
+"users).\n"
+"--daemon : use daemon configuration. \n"
+"--help : show this message.\n"
+"--version : show version number.\n"
+msgstr ""
+
+#: standalone.pm:58
+#, c-format
+msgid ""
+"[--boot]\n"
+"OPTIONS:\n"
+" --boot - enable to configure boot loader\n"
+"default mode: offer to configure autologin feature"
+msgstr ""
+
+#: standalone.pm:62
+#, c-format
+msgid ""
+"[OPTIONS] [PROGRAM_NAME]\n"
+"\n"
+"OPTIONS:\n"
+" --help - print this help message.\n"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
+msgstr ""
+
+#: standalone.pm:68
+#, c-format
+msgid ""
+"[--add]\n"
+" --add - \"add a network interface\" wizard\n"
+" --del - \"delete a network interface\" wizard\n"
+" --skip-wizard - manage connections\n"
+" --internet - configure internet\n"
+" --wizard - like --add"
+msgstr ""
+
+#: standalone.pm:74
+#, c-format
+msgid ""
+"\n"
+"Font Importation and monitoring application\n"
+"\n"
+"OPTIONS:\n"
+"--windows_import : import from all available windows partitions.\n"
+"--xls_fonts : show all fonts that already exist from xls\n"
+"--install : accept any font file and any directory.\n"
+"--uninstall : uninstall any font or any directory of font.\n"
+"--replace : replace all font if already exist\n"
+"--application : 0 none application.\n"
+" : 1 all application available supported.\n"
+" : name_of_application like so for staroffice \n"
+" : and gs for ghostscript for only this one."
+msgstr ""
+
+#: standalone.pm:89
+#, c-format
+msgid ""
+"[OPTIONS]...\n"
+"%s Terminal Server Configurator\n"
+"--enable : enable MTS\n"
+"--disable : disable MTS\n"
+"--start : start MTS\n"
+"--stop : stop MTS\n"
+"--adduser : add an existing system user to MTS (requires username)\n"
+"--deluser : delete an existing system user from MTS (requires "
+"username)\n"
+"--addclient : add a client machine to MTS (requires MAC address, IP, "
+"nbi image name)\n"
+"--delclient : delete a client machine from MTS (requires MAC address, "
+"IP, nbi image name)"
+msgstr ""
+
+#: standalone.pm:101
+#, c-format
+msgid "[keyboard]"
+msgstr ""
+
+#: standalone.pm:102
+#, c-format
+msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
+msgstr ""
+
+#: standalone.pm:103
+#, c-format
+msgid ""
+"[OPTIONS]\n"
+"Network & Internet connection and monitoring application\n"
+"\n"
+"--defaultintf interface : show this interface by default\n"
+"--connect : connect to internet if not already connected\n"
+"--disconnect : disconnect to internet if already connected\n"
+"--force : used with (dis)connect : force (dis)connection.\n"
+"--status : returns 1 if connected 0 otherwise, then exit.\n"
+"--quiet : do not be interactive. To be used with (dis)connect."
+msgstr ""
+
+#: standalone.pm:113
+#, c-format
+msgid ""
+"[OPTION]...\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
+" --no-verify-rpm do not verify packages signatures\n"
+" --changelog-first display changelog before filelist in the "
+"description window\n"
+" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
+msgstr ""
+
+#: standalone.pm:118
+#, c-format
+msgid ""
+"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
+"usbtable] [--dynamic=dev]"
+msgstr ""
+
+#: standalone.pm:119
+#, c-format
+msgid ""
+" [everything]\n"
+" XFdrake [--noauto] monitor\n"
+" XFdrake resolution"
+msgstr ""
+
+#: standalone.pm:156
+#, c-format
+msgid ""
+"\n"
+"Usage: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
+"testing] [-v|--version] "
+msgstr ""
+
+#: timezone.pm:170 timezone.pm:171
+#, c-format
+msgid "All servers"
+msgstr "Tolos sirvidores"
+
+#: timezone.pm:207
+#, c-format
+msgid "Global"
+msgstr "Global"
+
+#: timezone.pm:210
+#, c-format
+msgid "Africa"
+msgstr "África"
+
+#: timezone.pm:211
+#, c-format
+msgid "Asia"
+msgstr "Asia"
+
+#: timezone.pm:212
+#, c-format
+msgid "Europe"
+msgstr "Europa"
+
+#: timezone.pm:213
+#, c-format
+msgid "North America"
+msgstr "América del Norte"
+
+#: timezone.pm:214
+#, c-format
+msgid "Oceania"
+msgstr "Oceanía"
+
+#: timezone.pm:215
+#, c-format
+msgid "South America"
+msgstr "América del Sur"
+
+#: timezone.pm:224
+#, c-format
+msgid "Hong Kong"
+msgstr "Ḥong Kong"
+
+#: timezone.pm:261
+#, c-format
+msgid "Russian Federation"
+msgstr "Federación Rusa"
+
+#: timezone.pm:269
+#, c-format
+msgid "Yugoslavia"
+msgstr "Yugoslavia"
+
+#: ugtk2.pm:810 ugtk3.pm:906
+#, c-format
+msgid "Is this correct?"
+msgstr ""
+
+#: ugtk2.pm:872 ugtk3.pm:968
+#, c-format
+msgid "You have chosen a file, not a directory"
+msgstr ""
+
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Información"
+
+#: wizards.pm:95
+#, c-format
+msgid ""
+"%s is not installed\n"
+"Click \"Next\" to install or \"Cancel\" to quit"
+msgstr ""
+
+#: wizards.pm:99
+#, c-format
+msgid "Installation failed"
+msgstr ""
diff --git a/perl-install/share/po/az.po b/perl-install/share/po/az.po
index 10329c87f..702c65266 100644
--- a/perl-install/share/po/az.po
+++ b/perl-install/share/po/az.po
@@ -1,38 +1,37 @@
-# translation of DrakX-az.po to Azerbaijani
-# translation of DrakX-az.po to Azerbaijani Turkish
-# DrakX-az.po faylının Azərbaycan dilinə tərcüməsi
-# Copyright (C) 2000,2003, 2004 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva
-# Vasif Ismailoglu MD<azerb_linux@hotmail.com> , 2000-2001
-# Mətin Əmirov <metin@karegen.com>, 2001-2003, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
+# Translators:
+# Mətin Əmirov <metin@karegen.com>, 2001-2003, 2004
msgid ""
msgstr ""
-"Project-Id-Version: DrakX-az\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2005-03-31 14:21+0200\n"
-"Last-Translator: Mətin Əmirov <metin@karegen.com>\n"
-"Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2019-04-16 15:43+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Azerbaijani (http://www.transifex.com/MageiaLinux/mageia/"
+"language/az/)\n"
+"Language: az\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "Xahiş edirik, gözləyin"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "Açılış yükləyicisi qurulumu fəaliyyətdədir"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -43,35 +42,17 @@ msgid ""
"Assign a new Volume ID?"
msgstr ""
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr "Açılış yükləyicisi qurulumu iflas etdi. Xəta:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"Siz Open Firmware açılış avadanlığınızı açılış yükləyicisini\n"
-"fəallaşdırmaq üçün dəyişdirməli ola bilərsiniz. Command-Option-O-F "
-"düymələrini\n"
-" yenidən başlarkən basın və bunları girin:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Sonra da bunları yazın: shut-down\n"
-"Bir sonrakı başlanğıcda açılış yükləyicisi sətirini görməlisiniz."
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
@@ -81,276 +62,273 @@ msgstr ""
"\n"
"Hansı sürücü üstündən açılış edirsiniz?"
-#: any.pm:346
-#, fuzzy, c-format
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr ""
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Sistem yükləyicisini hara qurmaq istəyirsiniz?"
+
+#: any.pm:365
+#, c-format
msgid "First sector (MBR) of drive %s"
-msgstr "Diskin ilk sektoru (MBR)"
+msgstr ""
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "Diskin ilk sektoru (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr "Kök bolməsinin ilk sektoru"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "Disketə"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Keç"
-#: any.pm:358
-#, fuzzy, c-format
-msgid "Bootloader Installation"
-msgstr "Açılış yükləyicisi qurulumu fəaliyyətdədir"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Sistem yükləyicisini hara qurmaq istəyirsiniz?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "Açılış Tərzi Quraşdırılması"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr ""
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "Sistem yükləyicisinin ana seçimləri"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "Açılış yükləyicisi"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "İstifadə ediləcək Açılış idarəcisi"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Açılış avadanlığı"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
msgstr ""
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "Açılışda gecikmə müddəti"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "ACPI-ni Fəallaşdır"
-#: any.pm:411
-#, fuzzy, c-format
+#: any.pm:432
+#, c-format
msgid "Enable SMP"
-msgstr "ACPI-ni Fəallaşdır"
+msgstr ""
-#: any.pm:412
-#, fuzzy, c-format
+#: any.pm:433
+#, c-format
msgid "Enable APIC"
-msgstr "ACPI-ni Fəallaşdır"
+msgstr ""
-#: any.pm:413
-#, fuzzy, c-format
+#: any.pm:435
+#, c-format
msgid "Enable Local APIC"
-msgstr "ACPI-ni Fəallaşdır"
+msgstr ""
+
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Təhlükəsizlik"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Şifrə"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Şifrələr uyğun gəlmir"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Xahiş edirik, təkrar sınayın"
-#: any.pm:418
-#, fuzzy, c-format
-msgid "You can not use a password with %s"
+#: any.pm:442
+#, c-format
+msgid "You cannot use a password with %s"
msgstr ""
-"%s bağlama nöqtəsi üçün şifrələnmiş fayl sistemi istifadə edə bilməzsiniz"
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Şifrə (təkrar)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "Əmr sətiri seçimlərini məhdudlaşdır"
+msgid "Bootloader Configuration"
+msgstr ""
-#: any.pm:422
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "Qurulum bacarılmadı"
+
+#: any.pm:533
#, c-format
-msgid "restrict"
-msgstr "məhdudlaşdır"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr ""
-#: any.pm:423
+#: any.pm:535 any.pm:794
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
msgstr ""
-"``Əmr sətiri seçimlərini məhdudlaşdır`` seçimi şifrəsiz bir işə yaramaz"
-#: any.pm:425
+#: any.pm:537
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "/tmp-i hər açılışda təmizlə"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr ""
-#: any.pm:434
+#: any.pm:539
#, c-format
-msgid "Init Message"
-msgstr "Init İsmarışı"
+msgid "Background"
+msgstr ""
-#: any.pm:436
+#: any.pm:544
#, c-format
-msgid "Open Firmware Delay"
-msgstr "Açıq Firmware Gecikməsi"
+msgid "rEFInd banner"
+msgstr ""
+
+#: any.pm:545
+#, fuzzy, c-format
+msgid "Mageia theme"
+msgstr "Mageia"
-#: any.pm:437
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Çəyirdək Açılış Vaxt Dolması"
+msgid "Custom"
+msgstr "Xüsusi"
+
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "Bölüşmə yoxdur"
-#: any.pm:438
+#: any.pm:565
#, c-format
-msgid "Enable CD Boot?"
-msgstr "CD Açılışı Fəallaşdırılsın?"
+msgid "Scale to fit"
+msgstr ""
-#: any.pm:439
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable OF Boot?"
-msgstr "OF Açılışı Fəallaşdırılsın?"
+msgid "Label"
+msgstr "Etiket"
-#: any.pm:440
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Default OS?"
-msgstr "Əsas ƏS?"
+msgid "Append"
+msgstr "Sonuna əlavə et"
-#: any.pm:513
+#: any.pm:612 any.pm:624 any.pm:781
+#, c-format
+msgid "Video mode"
+msgstr "Video modu"
+
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "Əks"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Kök"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "Sonuna əlavə et"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr ""
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Video modu"
+msgid "Requires password to boot"
+msgstr ""
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "Şəbəkə profili"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "Etiket"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Ön Qurğulu"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "NoVideo"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "Boş etiket qəbul edilmir"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "Çəyirdək əksini bildirməlisiniz"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "Kök bölməsini bildirməlisiniz"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "Bu etiket onsuzda istifadə edilib"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Nə cür bir giriş əlavə etmək istəyirsiniz?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linuks"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Digər sistemlər (SunOS...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Digər ƏS (MacOS...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "Digər ƏS (Windows...)"
-#: any.pm:621
-#, fuzzy, c-format
-msgid "Bootloader Configuration"
-msgstr "Açılış Tərzi Quraşdırılması"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -359,274 +337,322 @@ msgstr ""
"Buradakı bir birindən fərqli seçimlərə yenilərini əlavə edə bilər,\n"
"ya da mövcud olanları dəyişdirə bilərsiniz."
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr ""
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Xəbərdarlıq"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr ""
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "X proqramlarına yetişmə icazəsi"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "rpm vasitələrinə yetişmə"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "\"su\" icazəsi ver"
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr "idarəvi fayllara yetişmə"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "şəbəkə vasitələrinə yetişmə"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "dərləmə vasitələrinə yetişmə"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(%s artıq əlavə edilmişdir)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "Xahiş edirik, bir istifadəçi adı alın"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
msgstr ""
-"İstifadəçi adında sadacə kiçik hərflər, rəqəmlər, `-' və `_' xarakterləri "
-"ola bilər"
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "İstifadəçi adı çox uzundur"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "Bu istifadəçi adı onsuzda əlavə edilib"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "İstifadəçi ID'si"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "Qrup ID'si"
-#: any.pm:817
-#, fuzzy, c-format
+#: any.pm:1086
+#, c-format
msgid "%s must be a number"
-msgstr "%s seçimi rəqəm olmalıdır!"
+msgstr ""
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
+msgid "%s should be above 1000. Accept anyway?"
msgstr ""
-#: any.pm:822
-#, fuzzy, c-format
+#: any.pm:1091
+#, c-format
msgid "User management"
-msgstr "İstifadəçi adı"
+msgstr ""
-#: any.pm:828 authentication.pm:237
-#, fuzzy, c-format
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr ""
+
+#: any.pm:1099 authentication.pm:236
+#, c-format
msgid "Set administrator (root) password"
-msgstr "Ali istifadəçi şifrəsini tə'yin et"
+msgstr ""
-#: any.pm:833
-#, fuzzy, c-format
+#: any.pm:1105
+#, c-format
msgid "Enter a user"
msgstr ""
-"Bir istifadəçi daxil edin\n"
-"%s"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Timsal"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Həqiqi ad"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "Giriş adı"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Qabıq"
-#: any.pm:884
-#, fuzzy, c-format
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr ""
+
+#: any.pm:1181
+#, c-format
msgid "Please wait, adding media..."
-msgstr "ttmkfdir fəaliyyətdədir, xahiş edirik, gözləyin..."
+msgstr ""
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "Avtomatik Giriş"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
"Kompüteriniz istifadəçinin avtomatik giriş etməsi üçün qurğulana bilər."
-#: any.pm:916
-#, fuzzy, c-format
+#: any.pm:1251
+#, c-format
msgid "Use this feature"
-msgstr "Bu xüsusiyyəti istifadə etmək istəyirsiniz?"
+msgstr ""
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Əsas istifadəçini seçin:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "İşlətmək istədiyiniz pəncərə idarəçisini seçin:"
-#: any.pm:929 any.pm:949 any.pm:1022
-#, fuzzy, c-format
+#: any.pm:1264 any.pm:1279 any.pm:1348
+#, c-format
msgid "Release Notes"
-msgstr "Buraxılış:"
+msgstr ""
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Bağla"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Lisenziya razılığı"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Çıx"
-#: any.pm:1017
-#, fuzzy, c-format
+#: any.pm:1343
+#, c-format
msgid "Do you accept this license ?"
-msgstr "Başqası var?"
+msgstr ""
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Qəbul Et"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Rədd Et"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "Xahiş edirik, istifadə ediləcək dili seçin"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"Mandriva Linux müxtəlif dilləri dəstəkləyir. Qurmaq istədiyiniz\n"
-"dilləri seçin. Onlar qurulum tamamlanandan və sistem yenidən\n"
-"başlayandan sonra istifadəyə hazır olacaqlar."
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr ""
+
+#: any.pm:1402
#, c-format
-msgid "Multi languages"
+msgid "Select Additional Languages"
msgstr ""
-#: any.pm:1087 any.pm:1119
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr ""
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "Bütün dillər"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "Dil seçkisi"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "Ölkə / Bölgə"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
msgstr "Xahiş edirik, ölkənizi seçin"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "Bütün mövcud ölkələrinn siyahısı"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "Diqər Ölkələr"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Ətraflı"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr "Giriş yöntəmi:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Heç biri"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "Bölüşmə yoxdur"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "Bütün istifadəçilərə icazə ver"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Xüsusi"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -643,21 +669,21 @@ msgstr ""
"\"Xüsusi\" seçənəyi, hər istifadəçiyə fərqli icazə vermək üçün istifadə "
"edilir.\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
"Windows."
msgstr ""
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
"systems."
msgstr ""
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
@@ -665,12 +691,12 @@ msgstr ""
"NFS ya da SMB işlədərək ixrac edə bilərsiniz. Xahiş edirik, işlətmək "
"istədiyinizi seçin."
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "Userdrake-ni başlat"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
@@ -680,60 +706,114 @@ msgstr ""
"Bu qrupa istifadəçiləri əlavə etmək üçün userdrake'dən istifadə edə "
"bilərsiniz. "
-#: any.pm:1421
-#, fuzzy, c-format
+#: any.pm:1768
+#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
msgstr ""
-"Dəyişikliklərin fəal olması üçün hesabdan çıxış edib, yenidən girməlisiniz."
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr ""
"Dəyişikliklərin fəal olması üçün hesabdan çıxış edib, yenidən girməlisiniz."
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "Vaxt Zolağı"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Vaxt zolağınız hansıdır?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr ""
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr ""
-#: any.pm:1490
-#, fuzzy, c-format
+#: any.pm:1837
+#, c-format
msgid "%s (hardware clock set to UTC)"
-msgstr "Avadanlıq saatı GMT'yə görə quruludur"
+msgstr ""
-#: any.pm:1491
-#, fuzzy, c-format
+#: any.pm:1838
+#, c-format
msgid "%s (hardware clock set to local time)"
-msgstr "Avadanlıq saatı GMT'yə görə quruludur"
+msgstr ""
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "NTP Verici"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "Avtomatik vaxt sinxronizasiyası (NTP vasitəsiylə)"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr ""
+
+#: any.pm:1880
+#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "URL http:// ya da https:// ilə başlamalıdır"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr "Mövcud əkslərin siyahısını almaq üçün %s səhifəsi ilə təmas qurulur..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Paketleri almaq üçün bir əks ünvanı seçin"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Ləğv Et"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "Avtomatik təsbit et"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "Seçimləri müəyyən et"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "Açılış yükləyicisi"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -754,7 +834,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr ""
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Windows Domeni"
@@ -764,300 +844,295 @@ msgstr "Windows Domeni"
msgid "Kerberos 5"
msgstr ""
-#: authentication.pm:63
-#, fuzzy, c-format
+#: authentication.pm:65
+#, c-format
msgid "Local file:"
-msgstr "Yerli fayllar:"
+msgstr ""
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
"consolidates certain types of information within your organization."
msgstr ""
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
"Service domain with a common password and group file."
msgstr ""
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Windows Domeni:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
"a Windows domain."
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
-#, fuzzy, c-format
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr "Domen Səlahiyyətləndirməsi Məcburidir"
+msgstr ""
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "LDAP Vericisi"
-#: authentication.pm:113 authentication.pm:168
-#, fuzzy, c-format
+#: authentication.pm:112 authentication.pm:167
+#, c-format
msgid "Base dn"
-msgstr "LDAP Əsas dn"
+msgstr ""
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr ""
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr ""
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr ""
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr ""
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
msgstr ""
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr ""
-#: authentication.pm:123 authentication.pm:175
-#, fuzzy, c-format
+#: authentication.pm:122 authentication.pm:174
+#, c-format
msgid "Bind Password "
-msgstr "Şifrə"
+msgstr ""
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr ""
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "Şifrə"
+msgstr ""
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "Qrup ID'si"
+msgstr ""
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr ""
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "Həqiqi ad"
+msgstr ""
-#: authentication.pm:148
-#, fuzzy, c-format
+#: authentication.pm:147
+#, c-format
msgid "KDCs Servers"
-msgstr "LDAP Vericisi"
+msgstr ""
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr ""
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr ""
-#: authentication.pm:156
-#, fuzzy, c-format
+#: authentication.pm:155
+#, c-format
msgid "Use local file for users information"
-msgstr "Vericilər üçün libsafe işlət"
+msgstr ""
-#: authentication.pm:157
-#, fuzzy, c-format
-msgid "Use Ldap for users information"
-msgstr "Sabit disk mə'lumatı"
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr ""
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr ""
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "NIS sahəsi"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "NIS Verici"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "Domen"
+msgstr ""
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr ""
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "NIS sahəsi"
+msgstr ""
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "LDAP Vericisi"
+msgstr ""
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Tanıtma"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "Tanıtma yöntəmi"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Şifrə olmasın"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr "Bu şifrə çox qısadır (ən az %d hərf böyüklüyündə olmalıdır)"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "NIS domeni olmayan translasiya işlədilə bilməz"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Fayl seç"
-#: authentication.pm:897
-#, fuzzy, c-format
+#: authentication.pm:882
+#, c-format
msgid "Domain Windows for authentication : "
-msgstr "Domen Səlahiyyətləndirməsi Məcburidir"
+msgstr ""
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "Domen İdarəçisinin İstifadəçi Adı"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Domen İdarəçi Şifrəsi"
-# NOTE: this message will be displayed at boot time; that is
-# only the ascii charset will be available on most machines
-# so use only 7bit for this message (and do transliteration or
-# leave it in English, as it is the best for your language)
-#
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1067,105 +1142,111 @@ msgid ""
"\n"
msgstr ""
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "Mətn menyulu LILO"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr ""
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "Mətn menyulu GRUB2"
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr ""
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
-msgstr ""
+msgstr "Mətn menyulu GRUB"
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr ""
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
+msgid "U-Boot/Extlinux with text menu"
msgstr ""
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "/boot içində lazımi yer yoxdur"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "Sistem yükləyicisini %s bölməsinə qura bilməzsiniz\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
"renumbered"
msgstr ""
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "Sistem Yükləyicisini Yenidən Qur"
-#: common.pm:142
-#, fuzzy, c-format
+#: common.pm:271
+#, c-format
msgid "B"
-msgstr "KB"
+msgstr ""
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "KB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "MB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "GB"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "TB"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr ""
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d dəqiqə"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 dəqiqə"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d saniyə"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr ""
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1184,12 +1265,12 @@ msgstr ""
msgid "New"
msgstr "Yeni"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Ayır"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Bağla"
@@ -1199,43 +1280,44 @@ msgstr "Bağla"
msgid "Server"
msgstr "Verici"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Bağlama nöqtəsi"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Seçimlər"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Sil"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Qurtardı"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Xəta"
@@ -1250,80 +1332,71 @@ msgstr "Xahiş edirik, WebDAV vericisi URL-ni daxil edin"
msgid "The URL must begin with http:// or https://"
msgstr "URL http:// ya da https:// ilə başlamalıdır"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Xəbərdarlıq"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Bu düyməyə basmaq istəyirsiniz?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr ""
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Verici:"
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Bağlama nöqtəsi: "
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Seçimlər: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "Bölmələndirmə"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Diqqətlə oxuyun"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "Əvvəlcə datanızın yedəyini alın"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Çıxış"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Davam et"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Yardım"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1335,143 +1408,134 @@ msgstr ""
"məsləhət edirik. (Bölməni seçib, \"Böyüklüyü\n"
"Dəyişdir\" düyməsinə tıqlayın)"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "Xahiş edirik, bir bölmə üstünə tıqlayın"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Ətraflı"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "Sabit disk(lər) tapıla bilmədi"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Namə'lum"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
-msgid "Ext3"
-msgstr "Çıxış"
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
msgid "XFS"
-msgstr "HFS"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Dəyiş-toqquş"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Digər"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Boş"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Fayl sistemi növü:"
-#: diskdrake/hd_gtk.pm:407
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:461
+#, c-format
msgid "This partition is already empty"
-msgstr "Bu bölmə ölçüləndirilə bilməz"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "Əvvəlcə ``Ayır'-ı işlət"
-#: diskdrake/hd_gtk.pm:416
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:470
+#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "Yerinə ``%s'' işlət"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Növ"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Başqa bölmə seçin"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Bölmə seçin"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "Daha Çox Seçim"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
+#, c-format
msgid "Confirmation"
-msgstr "Quraşdırma"
+msgstr ""
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Davam edilsin?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Qeyd etmədən Çıx"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Bölmə cədvəli qeyd edilmədən çıxılsın?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "Dəyişikliklər /etc/fstab faylına qeyd edilsin?"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr ""
"Bölmə cəvəlindəki dəyişikliklərin tətbiq edilməsi üçün kompüterinizi yenidən "
"başlatmalısınız."
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1479,162 +1543,187 @@ msgid ""
"Quit anyway?"
msgstr ""
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Hamısını təmizlə"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Avtomatik ayır"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "Normal moda keç"
+msgid "Normal mode"
+msgstr "Normal moda"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "Mütəxəssis moduna keç"
+msgid "Expert mode"
+msgstr "Mütəxəssis moduna"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "Sabit disk mə'lumatı"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "Bütün birinci bölmələr istifadədədir"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "Artıq bölmə əlavə edilə bilməz"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
"partition"
msgstr "Artıq bölmə yaratmaq üçün, bir bölməni silib uzadılmış bölmə yaradın"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Bölmə cədvəlini yenidən yüklə"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Ətraflı mə'lumatı"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
-msgstr ""
+msgstr "Görünüş"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Böyüklüyünü Dəyişdir"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Şəkilləndir"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "RAIDə əlavə et"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "LVMə əlavə et"
-#: diskdrake/interactive.pm:410
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:417
+#, c-format
msgid "Use"
-msgstr "İstifadəçi ID'si"
+msgstr ""
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Sil"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "RAİD'dən ayır"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "LVMdən ayır"
-#: diskdrake/interactive.pm:415
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:422
+#, c-format
msgid "Remove from dm"
-msgstr "LVMdən ayır"
+msgstr ""
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "RAIDi dəyişdir"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Loopback üçün istifadə et"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Yarat"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Faylları yeni bölməyə daşı"
+msgstr ""
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Yeni bölmə yarat"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Başlanğıç sektoru: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "MB cinsindən böyüklük: "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Fayl sistemi növü: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Seçim: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "Məntiqi həcm adı"
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr ""
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Şifrələrmə açarı (təkrar)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Şifrələmə açarları uyğun gəlmir"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
@@ -1642,12 +1731,12 @@ msgstr ""
"(ona görə ki siz maksimal birinci bölmə ədədinə yetişdiniz).\n"
"Əvvəlcə birinci bölməni silib, ondan sonra genişləndirilmiş bölmə yaradın."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "Loopback faylı silinsin?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
@@ -1655,287 +1744,299 @@ msgstr ""
"%s bölməsinin növünü dəyişdirdikdən sonra, bu bölmədəki bütün mə'lumatlar "
"itiriləcək"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Bölmə növünü Dəyişdir"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Hansı dili istəyirsiniz?"
-#: diskdrake/interactive.pm:594
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:650
+#, c-format
msgid "Switching from %s to %s"
-msgstr "ext2'dən ext3'ə keçilir"
+msgstr ""
-#: diskdrake/interactive.pm:624
+#: diskdrake/interactive.pm:685
#, c-format
msgid "Set volume label"
msgstr ""
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr ""
-#: diskdrake/interactive.pm:630
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:691
+#, c-format
msgid "Label:"
-msgstr "Etiket"
+msgstr ""
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "%s loopback faylını haraya bağlamaq istəyirsiniz?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "%s avadanlığını haraya bağlamaq istəyirsiniz?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"Bu disk bölməsi loopback üçün istifadə edildiyinə görə bağlanma nöqtəsindən "
"ayrıla bilinmir.\n"
"Əvvəlcə loopback-i silin."
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "%s avadanlığını hara bağlamaq istəyirsiniz?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "Ölçüləndirilir"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "Fat fayl sistemi ucları hesaplanır"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "Bu bölmə ölçüləndirilə bilməz"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "Bu bölmədəki bütün mə'lumatların ehtiyat nüsxələri alınmalıdır"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr ""
"%s bölməsinin ölçüləndirildikdən sonra bu bölmədəki bütün mə'lumatlar itəcək"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Yeni böyüklüyü seçin"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "MB cinsindən yeni böyüklük: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:805
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
+#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-"Bölmə(lər)in böyüklüyünün dəyişdirilməsindən sonra mə'lumat \n"
-"bütövlüyünü qorumaq üçün fayl sistemi yoxlamaları bir sonrakı\n"
-"Windows(TM) açılışınızda işə salınacaq."
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Fayl sistemi şifrələmə açarı"
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "Fayl sistemi şifrələmə açarınızı seçin"
+msgstr ""
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "Şifrələmə açarı"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr ""
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Əlavə etmək üçün mövcud bir RAİD seçin"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "yeni"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Əlavə etmək üçün mövcud bir LVM seçin"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr ""
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr ""
+
+#: diskdrake/interactive.pm:1058
#, c-format
-msgid "LVM name?"
-msgstr "LVM adı?"
+msgid "Setting up LVM"
+msgstr ""
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
"Do you want to move used physical extents on this volume to other volumes?"
msgstr ""
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr ""
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "Bu disk bölməsi loopback üçün işlədilə bilməz"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Loopback"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Loopback fayl adı: "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "Fayl adı verin"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr "Fayl başqa bir loopback tərəfindən istifadədədir, başqasını seçin"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Fayl onsuz da mövcuddur. İşlədilsin?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "Bağlama seçimləri"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "Müxtəlif"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "avadanlıq"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "səviyyə"
-#: diskdrake/interactive.pm:1076
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1216
+#, c-format
msgid "chunk size in KiB"
-msgstr "parça böyüklüyü"
+msgstr ""
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "Diqqətlı olun: bu əməliyyat təhlükəlidir."
-#: diskdrake/interactive.pm:1109
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1250
+#, c-format
msgid "Partitioning Type"
-msgstr "Bölmələndirmə"
+msgstr ""
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "Hansı növ bölmələndirmə?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr "Yeni qurğuların fəallaşmağı üçün sistemi yenidən başlatmalısınız"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "%s sürücüsünün bölmə cədvəli diskə yazılacaq"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "%s bölməsi şəkilləndirilir"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr ""
"%s bölməsi şəkilləndirildikdən sonra bu bölmədəki bütün mə'lumatlar itəcək."
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "Xətalı bloklar sınansınmı?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "Faylları yeni bölməyə daşı"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Faylları gizlət"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1946,128 +2047,127 @@ msgid ""
"the contents of the mounted partition)"
msgstr ""
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr "Fayllar yeni bölməyə daşınır"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "%s köçürülür"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "%s silinir"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "%s bölməsi indi %s olaraq bilinir"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr ""
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Avadanlıq: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr ""
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr ""
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "DOS sürücü hərfi: %s (bir təxmindir)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Növ: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Ad: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Başlanğıc: sektor %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Böyüklüyü: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s sektor"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "Silindr %d'dən silindr %d'yə\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr ""
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Şəkilləndirilmiş\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Şəkilləndirilməmiş\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Bağlı\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAİD %s\n"
-#: diskdrake/interactive.pm:1308
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1446
+#, c-format
msgid "Encrypted"
-msgstr "Şifrələmə açarı"
+msgstr ""
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr ""
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2076,7 +2176,7 @@ msgstr ""
"Loopback fayl(lar)ı:\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2085,27 +2185,27 @@ msgstr ""
"Əsas olaraq açılan bölmə\n"
" (MS-DOS açılışı üçün, lilo üçün deyil)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Səviyyə %s\n"
-#: diskdrake/interactive.pm:1320
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1461
+#, c-format
msgid "Chunk size %d KiB\n"
-msgstr "Parça böyüklüyü %s\n"
+msgstr ""
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "RAİD-diskləri %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Loopback faylı adı: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2117,7 +2217,7 @@ msgstr ""
"Bu bölmə Sürücü bölməsidir.\n"
"Bunu elə beləcə buraxın.\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2129,67 +2229,62 @@ msgstr ""
"Bu, sisteminizin ikili açılışı üçün\n"
"xüsusi Bootstrap bölməsidir.\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr ""
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Sırf oxuna bilən"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Böyüklük: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Geometriyası: %s silindr, %s baş, %s sektor\n"
-#: diskdrake/interactive.pm:1351
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Ad: "
+
+#: diskdrake/interactive.pm:1492
+#, c-format
msgid "Medium type: "
-msgstr "Fayl sistemi növü: "
+msgstr ""
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "LVM-diskləri %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Bölmə cədvəli növü: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "%d kanalında, %d id'li\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "Fayl sistemi şifrələmə açarınızı seçin"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr "Bu şifrələmə açarı çox sadədir (ən az %d hərf böyüklüyündə olmalıdır)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "Şifrələmə açarları uyğun gəlmir"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Şifrələrmə açarı (təkrar)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Şifrələmə alqorifması"
@@ -2199,17 +2294,9 @@ msgstr "Şifrələmə alqorifması"
msgid "Change type"
msgstr "Növünü dəyişdir"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Ləğv Et"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr "%s istifadəçi adı ilə giriş edilə bilmir (şifrəniz səhvdir?)"
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
@@ -2252,40 +2339,40 @@ msgstr "Vericiləri axtar"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "Yeni vericiləri axtar"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "%s paketi qurulmalıdır. Qurmaq istəyirsiniz?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
-#, fuzzy, c-format
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
+#, c-format
msgid "Could not install the %s package!"
-msgstr "Xorg paketi qurula bilmir: %s"
+msgstr ""
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "Vacib olan %s paketi əksikdir"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Aşağıdakı paketlər qurulmalıdır:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "Paketlər qurulur..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "Paketlər silinir..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
@@ -2294,32 +2381,39 @@ msgstr ""
"Bir xəta oldu. Yeni fayl sisteminin yaradılacağı hökmlü bir sürücü "
"tapılmadı. Bu problemin qaynağı üçün avadanlığınızı yoxlayın"
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "/boot/efi ünvanına bağlanmış FAT bölməniz olmalıdır"
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "/boot/EFI ünvanına bağlanmış ESP FAT32 bölməniz olmalıdır"
-#: fs/format.pm:100
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "%s faylı yaradılır və şəkilləndirilir"
-#: fs/format.pm:119
-#, fuzzy, c-format
+#: fs/format.pm:202
+#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "%s-i necə şəkilləndirəcəyimi bilmirəm (Növ: %s)"
+msgstr ""
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "%s şəkilləndirilməsində %s bölmə xətası"
+msgstr ""
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "%s-i necə şəkilləndirəcəyimi bilmirəm (Növ: %s)"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s şəkilləndirilməsində %s bölmə xətası"
@@ -2334,31 +2428,30 @@ msgstr "Dairəvi bağlama %s\n"
msgid "Mounting partition %s"
msgstr "%s bölməsi bağlanır"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "%s bolməsini %s cərgəsinə bağlama bacarılmadı"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "%s yoxlanır"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "%s ayrılırkən xəta oldu: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "%s dəyiş-toqquş sahəsi fəallaşdırılır"
#: fs/mount_options.pm:114
-#, fuzzy, c-format
-msgid "Use an encrypted file system"
+#, c-format
+msgid "Enable POSIX Access Control Lists"
msgstr ""
-"%s bağlama nöqtəsi üçün şifrələnmiş fayl sistemi istifadə edə bilməzsiniz"
#: fs/mount_options.pm:116
#, c-format
@@ -2373,33 +2466,31 @@ msgstr ""
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
"Bu fayl sistemi üstündəki inode yetişmə vaxtlarını yeniləmə\n"
"(mis,xəbərlər vericisini tezləşdirmək üçün)."
#: fs/mount_options.pm:123
-#, fuzzy, c-format
+#, c-format
msgid ""
"Update inode access times on this filesystem in a more efficient way\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
-"Bu fayl sistemi üstündəki inode yetişmə vaxtlarını yeniləmə\n"
-"(mis,xəbərlər vericisini tezləşdirmək üçün)."
#: fs/mount_options.pm:126
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
"Yalnız dəqiq olaraq bağlana bilər (mis.,\n"
" -a seçimi fayl sisteminin bağlanmasına səbəb olmayacaq)."
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr ""
"Fayl sistemi üstündə hərfləri çevirmə və xüsusi avadanlıqları bloklama."
@@ -2407,7 +2498,7 @@ msgstr ""
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
"Bağlı fayl sistemi üstündəki ikili faylların icra edilməsinə icazə vermə\n"
@@ -2428,22 +2519,22 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr "Fayl sistemini ancaq oxuna bilən şəkildə bağla."
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr "Fayl sisteminə bütün G/Ç'lar sinxron olaraq yerinə gətirilməlidir."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr ""
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr ""
#: fs/mount_options.pm:147
@@ -2462,36 +2553,36 @@ msgid "Give write access to ordinary users"
msgstr "Sıravi istifadəçilərə yazma səlahiyyəti ver"
#: fs/mount_options.pm:153
-#, fuzzy, c-format
+#, c-format
msgid "Give read-only access to ordinary users"
-msgstr "Sıravi istifadəçilərə yazma səlahiyyəti ver"
+msgstr ""
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "%s bağlama nöqtəsini ikiləşdir"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "Uyğun bölmə mövcud deyil"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "Bölmələr bağlama nöqtələri üçün yoxlanır"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Bağlama nöqtələrini seçin"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Şəkilləndirmək istədiyiniz bölmələrini seçin"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2500,16 +2591,16 @@ msgstr ""
"%s fayl sisteminin yoxlanması bacarılmadı. Xətaları düzəltmək istəyirsiniz? "
"(diqqətli olun, mə'lumatları itirə bilərsiniz)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr "Qurulumu bitirmək üçün lazımi sahə yoxdur, xahiş edirik, əlavə edin"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"Bir kök bölməsi yaratmalısınız.\n"
@@ -2517,7 +2608,7 @@ msgstr ""
"ya da yeni birini başdan yaradın. Sonra \"Bağlama \n"
"Nöqtəsi\"gedişatını seçin va buranı '/' olaraq dəyişdirin."
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2527,92 +2618,58 @@ msgstr ""
"Dəyiş-toqquş sahəniz yoxdur\n"
"Davam edilsin?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "Boş sahəni istifadə et"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "Yeni bölmələr ayırmaq üçün kifayət qədər boş yer yoxdur"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "Mövcud bölmələri işlət"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "İstifadə ediləcək mövcud bölmə yoxdur"
-#: fs/partitioning_wizard.pm:103
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Loopback üçün Microsoft Windows® bölməsini işlət"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Linux4Win-i qurmaq üçün hansı disk bölməsini istifadə edəcəksiniz?"
-
-#: fs/partitioning_wizard.pm:108
-#, c-format
-msgid "Choose the sizes"
-msgstr "Böyüklükləri seçin"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "Kök bölməsi böyüklüyü (Mb): "
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Dəyiş-toqquş sahəsi böyüklüyü (Mb): "
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "Microsoft Windows® bölməsin böyüklüyü hesablanır"
-#: fs/partitioning_wizard.pm:119
+#: fs/partitioning_wizard.pm:201
#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr "Loopback üçün FAT bölməsi yoxdur (ya da lazımi yer yoxdur)"
-
-#: fs/partitioning_wizard.pm:127
-#, fuzzy, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "Windows bölməsindəki boş sahəni işlət"
+msgstr ""
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Hansı bölmə ölçüləndirilsin?"
-#: fs/partitioning_wizard.pm:143
-#, c-format
-msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
-msgstr ""
-"FAT ölçüləndiricimiz sizin bölməniziri işlədə bilmir,\n"
-"bu xəta oldu: %s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "Microsoft Windows® bölməsin böyüklüyü hesablanır"
-
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
"Your Microsoft Windows® partition is too fragmented. Please reboot your "
"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+"the %s installation."
msgstr ""
"Microsoft Windows® bölümünüz çox dağınıqdır. Daxiş edirik, əvvəlcə "
"kompüterinizi Microsoft Windows® ilə açın, ''defrag'' vasitəsini işlədin, "
-"sonra Mandriva Linux qurulumunu yenidən başladın."
+"sonra %s qurulumunu yenidən başladın."
+
+#: fs/partitioning_wizard.pm:215
+#, c-format
+msgid "Failed to find the partition to resize (%d choices)"
+msgstr ""
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2623,8 +2680,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2645,86 +2702,76 @@ msgstr ""
"Hazır olanda, %s düyməsinə basın."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Sonrakı"
-#: fs/partitioning_wizard.pm:168
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:237
+#, c-format
msgid "Partitionning"
-msgstr "Bölmələndirmə"
+msgstr ""
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr ""
"Microsoft Windows® üçün hansı böyüklüyü saxlamaq istəyirsiniz %s bölməsi?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Böyüklük"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "Microsoft Windows® bölməsi ölçüləndirilir"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "FAT ölçüləndirilməsi bacarılmadı: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"Bölmə(lər)in böyüklüyünün dəyişdirilməsindən sonra mə'lumat \n"
-"bütövlüyünü qorumaq üçün fayl sistemi yoxlamaları bir sonrakı\n"
-"Windows(TM) açılışınızda işə salınacaq."
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr "Ölçüləndiriləcək FAT bölməsi mövcud deyil (ya da lazımi yer yoxdur)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Microsoft Windows®'u Sil"
-#: fs/partitioning_wizard.pm:203
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:273
+#, c-format
msgid "Erase and use entire disk"
-msgstr "Bütün diski sil"
+msgstr ""
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
msgstr ""
-"Sizin birdən çox diskiniz var, linux qurmaq üçün hansını istifadə "
-"edəcəksiniz?"
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr "%s sürüsündəki mövcud bütün bölmələr və onlardakı mə'lumatitiriləcək"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "Xüsusi disk bölmələndirməsi"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Fdisk istifadə et"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2733,55 +2780,70 @@ msgstr ""
"İndi %s sabit diskinizi bölmələndirə bilərsiniz\n"
"İşinizi bitirdiyinizdə `w' ilə qeyd etməyi unutmayın"
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
#, c-format
-msgid "I can not find any room for installing"
+msgid "I cannot find any room for installing"
msgstr "Artıq bölmə əlavə edilə bilməz"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "DrakX bölmələndirmə sehirbazı bu çıxış yollarını tapdı:"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr ""
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Bölmələndirmə bacarılmadı: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr "16MB'dan kiçik disk bölmələrində JFS istifadə edə bilməzsiniz"
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "32MB'dən kiçik disk bölmələrində ReiserFS istifadə edə bilməzsiniz"
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "bəsit"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "/usr ilə"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "verici"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr ""
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2797,77 +2859,55 @@ msgstr ""
"\n"
"Bütün bölmələri itirmək işinizə gəlir?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Bağlama nöqtələri / ilə başlamalıdır"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "Bağlama nöqtələri ancaq alfanumerik hərf daxil edə bilər"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Onsuz da bağlama nöqtəsi %s olan bölmə mövcuddur\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"Bir proqram tə'minatlı RAİD bölməsini kök cərgəsi (/) olaraq tə'yin\n"
-"etdiniz. /boot bölməsi olmadan heç bir açılış yükləyicisi bunu aça bilməz.\n"
-"Xahiş edirik, /boot bölməsini əlavə etməyi unutmayın"
-#: fsedit.pm:437
-#, fuzzy, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr "%s bağlama nöqtəsi üçün LVM Məntiqi Həcmini istifadə edə bilməzsiniz"
-
-#: fsedit.pm:439
-#, fuzzy, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
+#: fsedit.pm:478 fsedit.pm:489
+#, c-format
+msgid "You cannot use an encrypted filesystem for mount point %s"
msgstr ""
-"Bir proqram tə'minatlı RAİD bölməsini kök cərgəsi (/) olaraq tə'yin\n"
-"etdiniz. /boot bölməsi olmadan heç bir açılış yükləyicisi bunu aça bilməz.\n"
-"Xahiş edirik, /boot bölməsini əlavə etməyi unutmayın"
+"%s bağlama nöqtəsi üçün şifrələnmiş fayl sistemi istifadə edə bilməzsiniz"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Bu qovluq kök fayl sistemi içərisində olmalıdır"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
-"Bu bağlama nöqtəsi üçün həqiqi bir fayl sisteminə (ext2/ext3, reiserfs, xfs, "
+"Bu bağlama nöqtəsi üçün həqiqi bir fayl sisteminə (ext2/3/4, reiserfs, xfs, "
"ya da jfs)ehtiyacınız var\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr ""
-"%s bağlama nöqtəsi üçün şifrələnmiş fayl sistemi istifadə edə bilməzsiniz"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
msgstr "Avtomatik yerləşdirmə üçün kifayət qədər boş sahə yoxdur"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "Ediləcək heçnə yoxdur"
@@ -2877,283 +2917,328 @@ msgstr "Ediləcək heçnə yoxdur"
msgid "SATA controllers"
msgstr "SATA idarəçiləri"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "RAİD idarəçiləri"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "(E)İDE/ATA idarəçiləri"
-#: harddrake/data.pm:92
-#, fuzzy, c-format
+#: harddrake/data.pm:93
+#, c-format
msgid "Card readers"
-msgstr "Kart modeli:"
+msgstr ""
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Firewire idarəçiləri"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "PCMCİA idarəçiləri"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "SCSİ idarəçiləri"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "USB idarəçiləri"
-#: harddrake/data.pm:137
-#, fuzzy, c-format
+#: harddrake/data.pm:138
+#, c-format
msgid "USB ports"
-msgstr "USB çapçı"
+msgstr ""
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "SMBus idarəçiləri"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Körpülər və sistem idarəçiləri"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Disket"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Hard Disk"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr ""
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "CDROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "CD/DVD yazıcılar"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "Kaset"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "AGP idarəçiləri"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Video kartı"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr ""
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "Televiziya kartı"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "Digər Multimediya avadanlıqları"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "Səs kartı"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "Veb kamerası"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "İşlədicilər"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "ISDN adapterləri"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr ""
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr ""
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr ""
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr ""
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr ""
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "Eternet Kartı"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Modem"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "ADSL adapterləri"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Yaddaş"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Çapçı"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr ""
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Oyun Çubuğu"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Klaviatura"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr ""
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Siçan"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr ""
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "UPS"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Darayıcı"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Na'məlum/Digərləri"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "cpu # "
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, c-format
+msgid "Couldn't install the required packages"
+msgstr ""
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
+#, c-format
+msgid "Please check the repositories are correctly configured"
+msgstr ""
+
+#: harddrake/sound.pm:462
+#, c-format
+msgid "No known driver"
+msgstr "Bilinən sürücü yoxdur"
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr "Sizin (%s) səs kartınız üçün sürücü mövcud deyil"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr ""
+"Dəyişikliklərin fəal olması üçün hesabdan çıxış edib, yenidən girməlisiniz."
+
+#: harddrake/sound.pm:522
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Xahiş edirik, gözləyin... Qurğular tətbiq edilir"
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:527
#, c-format
-msgid "Enable PulseAudio"
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
msgstr ""
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "Yeni vericiləri axtar"
+
+#: harddrake/sound.pm:551
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
+msgid "PulseAudio"
msgstr ""
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:552
#, c-format
-msgid "Enable user switching for audio applications"
+msgid "PulseAudio with Glitch-Free mode"
msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:553
#, c-format
-msgid "Use Glitch-Free mode"
+msgid "PipeWire with WirePlumber"
msgstr ""
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:554
+#, c-format
+msgid "PipeWire with PipeWire Media Session"
+msgstr ""
+
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
msgstr ""
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr "Problem həlli"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr ""
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "Alternativ sürücü yoxdur"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
@@ -3162,188 +3247,75 @@ msgstr ""
"Hazırda \"%2$s\" işlədən %1$s səs kartınız üçün bilinən başqa OSS/ALSA "
"sürücü mövcud deyil"
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Səs quraşdırılması"
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Burada siz (%s) səs kartınız üçün alternativ sürücü (ya OSS ya da ALSA) seçə "
-"bilərsiniz."
+msgid "Sound troubleshooting"
+msgstr "Səs problemini həll et"
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
"\n"
"\n"
-"Səs kartınız hazırda %s\"%s\" sürücüsünü işlədir (kartınızın əsas sürücüsü "
-"\"%s\"dir)"
-
-#: harddrake/sound.pm:414
-#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"OSS (Open Sound System) ilk səs API'si idi. Bu, ƏS'dən müstəqil səs "
-"API'sidirvə bütün UNIX(tm) sistemlərdə mövcuddur. Yalnız, bu çox bəsit "
-"vəməhdudlaşdırılmış API'dir.\n"
-"Dahası, OSS sürücülərinin hamısı təkəri yenidən kəşf edir.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) geniş silsilə İSA, USB və PCİ "
-"kartlarını dəstəkləyən modullaşdırılmış me'maridir.\n"
"\n"
-"O, eyni zamanda OSS'dən daha qüvvətli API təşkil edir.\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"Alsanı işlətmək üçün bunlardan biri ola bilər:\n"
-"- köhnə OSS API'si\n"
-"- yeni ALSA API'si.\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Sürücü:"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"Köhnə \"%s\" sürücüsü artıq qara siyahıdadır.\n"
"\n"
-"O çəyirdəyin açılması sırasında xətalar yaradır.\n"
-"\n"
-"Növbəti açılışda ancaq \"%s\" sürücüsü istifadə ediləcək."
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "Açıq mənbəli sürücü yoxdur"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"(%s) səs kartınız üçün pulsuz sürücü mövcud deyil, ancaq \"%s\" ünvanında "
-"lazım olan sürücünü tapa bilərsiniz."
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "Bilinən sürücü yoxdur"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "Sizin (%s) səs kartınız üçün sürücü mövcud deyil"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Səs problemini həll et"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-"Klasik xəta səs sınaqı aşağıdakı əmrləri icra edir:\n"
"\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" səs kartınızın əsas olaraq hansı\n"
-"sürücünü işlətdiyini bildirir\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" hazırda işlədilən sürücünü\n"
-"bildirir\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
"\n"
-"- \"/sbin/lsmod\" modulun (sürücünün) yüklü olub olmadığını yoxlamaq\n"
-"üçün sizə imkan verir\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" və \"/sbin/chkconfig --list alsa\" səs "
-"və\n"
-"alsa xidmətlərinin initsəviyyəsi3'də işə salınıb salınmayacağını bildirir\n"
-"\n"
-"- \"aumix -q\" səs həcminin bağlı (mute) olub olmadığını bildirir\n"
-"\n"
-"- \"/sbin/fuser -v /dev/dsp\" hansı proqramın səs kartını işlətdiyini "
-"bildirir.\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "İstədiyim sürücünü seçməyə icazə ver"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Səbəbsiz bir sürücü seçilir"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
-"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"Kartınız üçün hansı sürücünün uyğun gəldiyini dəqiq bilirsinizsə yuxarıdakı\n"
-"siyahıdan birisini seçə bilərsiniz.\n"
-"\n"
-"\"%s\" səs kartınız üçün hazırkı sürücü \"%s\"dir"
#: harddrake/v4l.pm:12
#, c-format
@@ -3371,7 +3343,7 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
"Müasir televiziya kartlarının bir çoxu üçün, GNU/Linuks çəyirdəyinin bttv "
"modulu düzgün parametrləri avtomatik tapır.\n"
@@ -3388,71 +3360,73 @@ msgstr "Kart modeli:"
msgid "Tuner type:"
msgstr "Tuner növü:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "Oldu"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Bəli"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "Xeyir"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Fayl seç"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Əlavə et"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Təkmilləşdir"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Qurtar"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Əvvəlki"
-#: interactive/curses.pm:556 ugtk2.pm:872
-#, fuzzy, c-format
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
+#, c-format
msgid "No file chosen"
-msgstr "fayl seçicisi"
+msgstr ""
-#: interactive/curses.pm:560 ugtk2.pm:876
-#, fuzzy, c-format
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
+#, c-format
msgid "You have chosen a directory, not a file"
msgstr ""
-"'/' adları sadəcə bir qovluq ola bilər, qətiyyan'iyyen bir açar ola bilməz"
-#: interactive/curses.pm:562 ugtk2.pm:878
-#, fuzzy, c-format
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
+#, c-format
msgid "No such directory"
-msgstr "Belə cərgə yoxdur!"
+msgstr ""
-#: interactive/curses.pm:562 ugtk2.pm:878
-#, fuzzy, c-format
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
+#, c-format
msgid "No such file"
-msgstr "Belə bir fayl yoxdur : `%s'\n"
+msgstr ""
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr ""
@@ -3534,1248 +3508,1269 @@ msgstr "Yenidən göndər"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Andorra"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "Birləşmiş Ərəb Əmirlikləri"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Əfqanıstan"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Antiq və Barbuda"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Anquilla"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Albaniya"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Ermənistan"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Holland Antilləri"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Anqola"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Antarktika"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Argentina"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "Amerikan Samoa"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Avstriya"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Avstraliya"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Aruba"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Azərbaycan"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Bosniya və Herzoqovina"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Barbados"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Banqladeş"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Belçika"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Burkina Faso"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "Bolqarıstan"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Bahreyn"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Burundi"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Benin"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Bermuda"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Bruney Darüssəlam"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Boliviya"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Braziliya"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Bahamalar"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Butan"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Buvet Adası"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Botsvana"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "Belarusiya"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Beliz"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Kanada"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Kokos Adası"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Konqo (Kinşasa)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "Mərkəzi Afrika Respublikası"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Congo (Brazzaville)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "İsveçrə"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Kot Divuar"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Kuku Adaları"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Çili"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Kamerun"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "Çin"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Kolumbiya"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Kosta Rika"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Serbiya və Qaradağ"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Kuba"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Keyp Verde"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Kristmas Adası"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Kipr"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Çex Respublikası"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Almanya"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Cibuti"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Danimarka"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Dominik"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Dominikan Respublikası"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Əlcəzair"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Ekvador"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Estoniya"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Misir"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Qərbi Saxara"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Eritre"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "İspaniya"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Efiopiya"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Finlandiya"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Fici"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Fokland Adaları (Malvin)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Mikroneziya"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Faro Adaları"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "Fransa"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Qabon"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Birləşmiş Krallıq"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Qrenada"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Gürcüstan"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Fransız Gvineyası"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Qana"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Gibraltar"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Qrinland"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Qambiya"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Qvineya"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Quadelup"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Ekvatorial Qvineya"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Yunanıstan"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "Cənubi Georgiya və Cənubi Sandviç Adası"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Qvatemala"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Quam"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Qvineya Bissau"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Quyana"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Çin (Honq Konq)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Hird Adası və Mkdonald Adaları"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Honduras"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Xırvatıstan"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Haiti"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Macarıstan"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "İndoneziya"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "İrlandiya"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "İsrail"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Hindistan"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "Britaniya Hind Okeanı Sahəsi"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "İrak"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "İran"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "İslandiya"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "İtaliya"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Yamayka"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "İordaniya"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Yaponiya"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Kenya"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Qırğızıstan"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Kambodiya"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Kiribati"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Komor"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "Müqəddəs Kit və Nevis"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Koreya (Şimal)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Koreya"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Kuveyt"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Kayman Adaları"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Qazaxstan"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Laos"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Livan"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "Saint Lucia"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Lixtenşteyn"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Şri Lanka"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Liberiya"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Lesoto"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Litva"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Lyuksemburq"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Latviya"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Liviya"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Mərakeş"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Monako"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Moldova"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Madaqaskar"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Marşal Adaları"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Makedoniya"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Mali"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Myanmar"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Monqolustan"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Şimali Marian Adaları"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Martiniq"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Mavritaniya"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Montserrat"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Malta"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Maurit"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Maldiv"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Malavi"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Mexiko"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Malayziya"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Mozambiq"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Namibiya"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Yeni Kaledoniya"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Niger"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Norfolk Adaları"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Nigeriya"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Nikaraqua"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Hollandiya"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Norvegiya"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Nepal"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Nauru"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Niu"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Yeni Zellandiya"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Oman"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Panama"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Peru"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "Fransız Poloneziyası"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Papua Yeni Qvineya"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Filippin"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Pakistan"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Polşa"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Müqəddəs Pyer və Migelion"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Pitkairn"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Porto Riko"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Filistin"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Portuqaliya"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Paraqvay"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Palau"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Katar"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Reyunion"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Ruminıya"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Rusiya"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Ruanda"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Səudiyyə Ərəbistan"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Solomon Adaları"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Seyşel"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Sudan"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "İsveç"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Sinqapur"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Müqəddəs Helena"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Sloveniya"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "Svalbard və Jan Mayen Adaları"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Slovakiya"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "Siera Lione"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "San Marino"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Seneqal"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Somali"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Surinam"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "Sao Tome və Prinsip"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "El Salvador"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Siriya"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Svaziland"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Türk və Kaykos Adaları"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Çad"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "Cənubi Fransız Sahələri"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Toqo"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Tayland"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Tacikistan"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Tokelo"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Şərqi Timor"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Türkmənistan"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Tunis"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Tonqa"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Türkiyə"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Trinidad və Tobaqo"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Tuvalu"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Tayvan"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Tanzaniya"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Ukrayna"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Uqanda"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "Birləşmiş Ştatlar yanı Kiçik Adalar"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "Birləşmiş Ştatlar"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Uruqvay"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Özbəkistan"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Vatikan"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "Müqəddəs Vinsent və Qrenadin"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Venesuela"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Virgin Adaları (Britaniya)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "Virgin Adaları (ABŞ)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Vyetnam"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Vanuatu"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Vallis və Futuna"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Samoa"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Yəmən"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Mayot"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "Cənubi Afrika"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Zambiya"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Zimbabve"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "%s Sisteminə Xoş Gəldiniz"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr ""
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "Əvvəlcə məntiqi həcmləri sil\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr ""
+#. -PO: Only write something if needed:
#: messages.pm:11
-#, fuzzy, c-format
+#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Giriş"
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
+"The operating system and the different components available in the Mageia "
+"distribution \n"
+"shall be called the \"Software Products\" hereafter. The Software Products "
+"include, but are not \n"
+"restricted to, the set of programs, methods, rules and documentation related "
+"to the operating \n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+"The operating system and the different components available in the Mageia "
"Linux distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution."
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr "1. Lisenziya Müqaviləsi"
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4789,16 +4784,40 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+"Please read this document carefully. This document is a license agreement "
+"between you and \n"
+"Mageia which applies to the Software Products.\n"
+"By installing, duplicating or using the Software Products in any manner, you "
+"explicitly \n"
+"accept and fully agree to conform to the terms and conditions of this "
+"License. \n"
+"If you disagree with any portion of the License, you are not allowed to "
+"install, duplicate or use \n"
+"the Software Products. \n"
+"Any attempt to install, duplicate or use the Software Products in a manner "
+"which does not comply \n"
+"with the terms and conditions of this License is void and will terminate "
+"your rights under this \n"
+"License. Upon termination of the License, you must immediately destroy all "
+"copies of the \n"
+"Software Products."
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr "2. Hüdudlu Zəmanət"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4806,15 +4825,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4823,118 +4842,37 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
-"The Software Products consist of components created by different persons or "
-"entities. %s\n"
-"Most of these licenses allow you to use, duplicate, adapt or redistribute "
-"the components which \n"
-"they cover. Please read carefully the terms and conditions of the license "
-"agreement for each component \n"
-"before using any component. Any question on a component license should be "
-"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
-"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
-"All rights to the components of the Software Products belong to their "
-"respective authors and are \n"
-"protected by intellectual property and copyright laws applicable to software "
-"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
-"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
-"If any portion of this agreement is held void, illegal or inapplicable by a "
-"court judgment, this \n"
-"portion is excluded from this contract. You remain bound by the other "
-"applicable sections of the \n"
-"agreement.\n"
-"The terms and conditions of this License are governed by the Laws of "
-"France.\n"
-"All disputes on the terms of this license will preferably be settled out of "
-"court. As a last \n"
-"resort, the dispute will be referred to the appropriate Courts of Law of "
-"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
+"you."
msgstr ""
-"Giriş\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
-"shall be called the \"Software Products\" hereafter. The Software Products "
-"include, but are not \n"
-"restricted to, the set of programs, methods, rules and documentation related "
-"to the operating \n"
-"system and the different components of the Mandriva Linux distribution.\n"
-"\n"
-"\n"
-"1. Lisenziya Müqaviləsi\n"
-"\n"
-"Please read this document carefully. This document is a license agreement "
-"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
-"By installing, duplicating or using the Software Products in any manner, you "
-"explicitly \n"
-"accept and fully agree to conform to the terms and conditions of this "
-"License. \n"
-"If you disagree with any portion of the License, you are not allowed to "
-"install, duplicate or use \n"
-"the Software Products. \n"
-"Any attempt to install, duplicate or use the Software Products in a manner "
-"which does not comply \n"
-"with the terms and conditions of this License is void and will terminate "
-"your rights under this \n"
-"License. Upon termination of the License, you must immediately destroy all "
-"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Hüdudlu Zəmanət\n"
-"\n"
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Mandriva S.A. will, in no circumstances and to the extent permitted by law, "
-"be liable for any special,\n"
+"Mageia will, in no circumstances and to the extent permitted by law, be "
+"liable for any special,\n"
"incidental, direct or indirect damages whatsoever (including without "
"limitation damages for loss of \n"
"business, interruption of business, financial loss, legal fees and penalties "
"resulting from a court \n"
"judgment, or any other consequential loss) arising out of the use or "
"inability to use the Software \n"
-"Products, even if Mandriva S.A. has been advised of the possibility or "
-"occurence of such \n"
+"Products, even if Mageia has been advised of the possibility or occurence of "
+"such \n"
"damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, Mandriva S.A. or its distributors will, in "
-"no circumstances, be \n"
+"To the extent permitted by law, Mageia or its distributors will, in no "
+"circumstances, be \n"
"liable for any special, incidental, direct or indirect damages whatsoever "
"(including without \n"
"limitation damages for loss of business, interruption of business, financial "
@@ -4943,49 +4881,68 @@ msgstr ""
"loss) arising out \n"
"of the possession and use of software components or arising out of "
"downloading software components \n"
-"from one of Mandriva Linux sites which are prohibited or restricted in some "
+"from one of Mageia sites which are prohibited or restricted in some "
"countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
-"included in the Software Products.\n"
-"\n"
-"\n"
-"3. GPL və Əlaqədar Lisenziyalar\n"
-"\n"
+"included in the Software Products."
+
+#: messages.pm:68
+#, fuzzy, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr "3. GPL və Əlaqədar Lisenziyalar"
+
+#: messages.pm:70
+#, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. Most \n"
-"of these components are governed under the terms and conditions of the GNU "
-"General Public \n"
-"Licence, hereafter called \"GPL\", or of similar licenses. Most of these "
-"licenses allow you to use, \n"
-"duplicate, adapt or redistribute the components which they cover. Please "
-"read carefully the terms \n"
-"and conditions of the license agreement for each component before using any "
-"component. Any question \n"
-"on a component license should be addressed to the component author and not "
-"to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"entities.\n"
+"Most of these licenses allow you to use, duplicate, adapt or redistribute "
+"the components which \n"
+"they cover. Please read carefully the terms and conditions of the license "
+"agreement for each component \n"
+"before using any component. Any question on a component license should be "
+"addressed to the component \n"
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. İntelektual Sahiblik Hüquqları\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr "4. İntelektual Sahiblik Hüquqları"
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. reserves its rights to modify or adapt the Software Products, "
-"as a whole or in \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
+"Products, as a whole or in parts, by all means and for all purposes.\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+"All rights to the components of the Software Products belong to their "
+"respective authors and are \n"
+"protected by intellectual property and copyright laws applicable to software "
+"programs.\n"
+"Mageia reserves its rights to modify or adapt the Software Products, as a "
+"whole or in \n"
"parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Hökümət Qanunları \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr "5. Hökümət Qanunları"
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4997,66 +4954,32 @@ msgstr ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A. \n"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"For any question on this document, please contact Mageia."
msgstr ""
+"If any portion of this agreement is held void, illegal or inapplicable by a "
+"court judgment, this \n"
+"portion is excluded from this contract. You remain bound by the other "
+"applicable sections of the \n"
+"agreement.\n"
+"The terms and conditions of this License are governed by the Laws of "
+"France.\n"
+"All disputes on the terms of this license will preferably be settled out of "
+"court. As a last \n"
+"resort, the dispute will be referred to the appropriate Courts of Law of "
+"Paris - France.\n"
+"For any question on this document, please contact Mageia"
-#: messages.pm:112
-#, c-format
+#: messages.pm:102
+#, fuzzy, c-format
msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
"Diqqət: Sərbəst Tə'minat daima patentsiz ola bilməz və daxil edilən bə'zi\n"
"sərbəst tə'minat ölkənizdə patentlər tərəfindən qoruna bilər. Misal üçün,\n"
@@ -5065,94 +4988,36 @@ msgstr ""
"Əgər patentlərin sizə ait olub olmadığını bilmirsinizsə yerli qanunlarınızı\n"
"gözdən keçirin."
-#: messages.pm:120
+#: messages.pm:112
#, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
-#, fuzzy, c-format
+#: messages.pm:114
+#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
+"For information on fixes which are available for this release of Mageia,\n"
"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"%s"
msgstr ""
-"Təbrik edirik, qurulum başa çatdı.\n"
-"Cdrom və disketi çıxartdıqtan sonra Enter'ə basaraq kompüterinizi\n"
-"yenidən başladın.\n"
-"\n"
-"\n"
-"Mandriva Linux'in bu buraxılışındakı yamaqlar haqqında \n"
+"Mageia'in bu buraxılışındakı yamaqlar haqqında \n"
"mə'lumat almaq üçün bu ünvana baxın: \n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Sisteminizin qurğuları haqqında daha geniş mə'lumatı Rəsmi\n"
-"Mandriva Linux İstifadəçi Kitabcığının qurulum sonrası bölməsində\n"
-"tapa bilərsiniz."
+"%s"
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
#: modules/interactive.pm:19
-#, fuzzy, c-format
+#, c-format
msgid "This driver has no configuration parameter!"
-msgstr "CUPS çapçı qurğuları"
+msgstr ""
#: modules/interactive.pm:22
#, c-format
@@ -5185,24 +5050,24 @@ msgid "See hardware info"
msgstr "Avadanlıq mə'lumatına bax"
#: modules/interactive.pm:83
-#, fuzzy, c-format
+#, c-format
msgid "Installing driver for USB controller"
-msgstr "%s kartı üçün sürücü %s qurulur"
+msgstr ""
#: modules/interactive.pm:84
-#, fuzzy, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "%s kartı üçün sürücü %s qurulur"
+#, c-format
+msgid "Installing driver for firewire controller \"%s\""
+msgstr ""
#: modules/interactive.pm:85
-#, fuzzy, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "%s kartı üçün sürücü %s qurulur"
+#, c-format
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr ""
#: modules/interactive.pm:86
-#, fuzzy, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "%s kartı üçün sürücü %s qurulur"
+#, c-format
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr ""
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -5283,35 +5148,35 @@ msgstr ""
"%s modulunun yüklənməsi iflas etdi.\n"
"Yenidən başqa bir parametr ilə sınamaq istəyirsiniz?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr ""
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
msgstr ""
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Şifrə lazımdır"
+msgstr ""
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "bağlama bacarılmadı: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Bu platformda genişlədilmiş bölmələr dəstəklənmir"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
@@ -5319,10 +5184,10 @@ msgstr ""
"Bu boşluğu, genişlədilmiş bölmənin yanına daşımaq üçünbirinci bölmənizi "
"daşımalısınız."
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
@@ -5331,112 +5196,112 @@ msgstr ""
"Mə'lumatın bütövlüyünün yoxlanması bacarılmadı. \n"
"Bu o demekdir ki diskə yazılan hər şey təsadüfi və pozulmuş olacaq."
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr ""
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr ""
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr ""
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
"configuration."
msgstr ""
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr ""
-#: pkgs.pm:269 pkgs.pm:270
-#, fuzzy, c-format
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
msgid "Unused hardware support"
-msgstr "radio dəstəyini fəallaşdır"
+msgstr ""
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr ""
-#: raid.pm:42
-#, fuzzy, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
-msgstr "Disk bölməsi, _formatted_ RAİD md%d'ə əlavə edilə bilmədi"
+#: raid.pm:59
+#, c-format
+msgid "Cannot add a partition to _formatted_ RAID %s"
+msgstr ""
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "%d səviyyə RAİD üçün çatmayan sayda disk bölməsi\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "/usr/share/sane/firmware cərgəsi yaradıla bilmədi!"
-#: scanner.pm:107
-#, fuzzy, c-format
+#: scanner.pm:106
+#, c-format
msgid "Could not create link /usr/share/sane/%s!"
-msgstr "/usr/share/sane/firmware cərgəsi yaradıla bilmədi!"
+msgstr ""
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr "%s firmware faylı /usr/share/sane/firmware mövqeyinə köçürülə bilmədi!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "%s firmware faylı üçün lazımi səlahiyyətlər müəyyən edilə bilmədi!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Scannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr ""
"Darayıcı(ları)nızı bölüşdürmək üçün lazım olan paket(lər) qurula bilmədi."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr "Darayıcı(ları)nız ali istifadəçi olmayanlar üçün mövcud olmayacaqdır."
#: security/help.pm:11
-#, fuzzy, c-format
+#, c-format
msgid "Accept bogus IPv4 error messages."
-msgstr "Xətalı IPv4 xəta ismarışlarını qəbul et"
+msgstr ""
#: security/help.pm:13
-#, fuzzy, c-format
+#, c-format
msgid "Accept broadcasted icmp echo."
-msgstr "Translasiya edilən icmp echo'nu qəbul et"
+msgstr ""
#: security/help.pm:15
-#, fuzzy, c-format
+#, c-format
msgid "Accept icmp echo."
-msgstr "icmp əks sədasını qəbul et"
+msgstr ""
#: security/help.pm:17
-#, fuzzy, c-format
+#, c-format
msgid "Allow autologin."
-msgstr "Avtomatik girişə icazə ver/vermə."
+msgstr ""
#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
#: security/help.pm:21
-#, fuzzy, c-format
+#, c-format
msgid ""
"If set to \"ALL\", /etc/issue and /etc/issue.net are allowed to exist.\n"
"\n"
@@ -5444,35 +5309,27 @@ msgid ""
"\n"
"Else only /etc/issue is allowed."
msgstr ""
-"\"ALL\" seçilidirsə, /etc/issue və /etc/issue.net mövcudiyyətinə icazə "
-"veriləcək.\n"
-"\n"
-"NONE seçilidirsə, heç birinə icazə verilməyəcək.\n"
-"\n"
-"Əks halda isə yalnız /etc/issue üçün icazə veriləcək."
#: security/help.pm:27
-#, fuzzy, c-format
+#, c-format
msgid "Allow reboot by the console user."
-msgstr "Konsol istifadəçisinə yenidən başlatma icazəsi ver/vermə"
+msgstr ""
#: security/help.pm:29
-#, fuzzy, c-format
+#, c-format
msgid "Allow remote root login."
-msgstr "Uzaq ali istifadəçi girişinə icazə ver"
+msgstr ""
#: security/help.pm:31
-#, fuzzy, c-format
+#, c-format
msgid "Allow direct root login."
-msgstr "Birbaşa ali istifadəçinin girişinə icazə ver/vermə"
+msgstr ""
#: security/help.pm:33
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow the list of users on the system on display managers (kdm and gdm)."
msgstr ""
-"Sistemdəki ekran idarəçilərində (gdm və kdm) istifadəçilərin siyahısının "
-"göstərilməsinə icazə Ver/Vermə."
#: security/help.pm:35
#, c-format
@@ -5484,7 +5341,7 @@ msgid ""
msgstr ""
#: security/help.pm:40
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow X connections:\n"
"\n"
@@ -5494,13 +5351,6 @@ msgid ""
"\n"
"- \"None\" (no connection)."
msgstr ""
-"X bağlantılarına icazə Ver/Vermə:\n"
-"\n"
-"- HAMISI (bütün bağlantılara icazə ver),\n"
-"\n"
-"- YERLİ (yalnız yerli kompüterdən gələn bağlantıya icazə ver),\n"
-"\n"
-"- HEÇBİRİ (heç bir bağlantıya icazə vermə)."
#: security/help.pm:48
#, c-format
@@ -5513,7 +5363,7 @@ msgstr ""
#. -PO: here "ALL", "Local" and "None" are values in a pull-down menu; translate them the same as they're
#: security/help.pm:53
-#, fuzzy, c-format
+#, c-format
msgid ""
"Authorize:\n"
"\n"
@@ -5524,20 +5374,9 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
-"Səlahiyyətləndirmə:\n"
-"\n"
-"- əgər \"ALL\" seçilidirsə, tcp_wrapper'lər tərəfindən idarə edilən bütün "
-"xidmətlər (baxın hosts.deny(5) man səhifəsi)\n"
-"\n"
-"- əgər \"LOCAL\" seçilidirsə,yalnız yerlilər\n"
-"\n"
-"- əgər \"NONE\" seçilidirsə, heç biri.\n"
-"\n"
-"Xidmətləri səlahiyyətləndirmək üçün, /etc/hosts.allow faylını işlədin (baxın "
-"hosts.allow(5))."
#: security/help.pm:63
#, c-format
@@ -5561,33 +5400,25 @@ msgstr ""
"xidmət əlavə etmək üçün istifadə edilir."
#: security/help.pm:72
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable crontab and at for users.\n"
"\n"
"Put allowed users in /etc/cron.allow and /etc/at.allow (see man at(1)\n"
"and crontab(1))."
msgstr ""
-"crontab və at'ı istifadəçilər üçün fəal/qeyri fəal et.\n"
-"\n"
-"İcazə verilən istifadəçiləri /etc/cron.allow və /etc/at.allow (baxın man at"
-"(1)\n"
-"və crontab(1)) içinə daxil edin."
#: security/help.pm:77
-#, fuzzy, c-format
+#, c-format
msgid "Enable syslog reports to console 12"
msgstr ""
-"12 konsola sysloq raportlarının göndərilməsini Fəallaşdır/Qeyri-fəallaşdır"
#: security/help.pm:79
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable name resolution spoofing protection. If\n"
"\"%s\" is true, also reports to syslog."
msgstr ""
-"Ad həlledilirliyi gizləmə qorumasını fəallaşdırr/qeyri-fəallaşdır.\n"
-"Əgər \"%s\" seçilidirsə, eyni zamanda syslog'a da raport ediləcək."
#: security/help.pm:80
#, c-format
@@ -5595,31 +5426,31 @@ msgid "Security Alerts:"
msgstr "Təhlükəsizlik Xəbərdarlıqları:"
#: security/help.pm:82
-#, fuzzy, c-format
+#, c-format
msgid "Enable IP spoofing protection."
-msgstr "IP gizləmə qorumasını fəallaşdır"
+msgstr ""
#: security/help.pm:84
-#, fuzzy, c-format
+#, c-format
msgid "Enable libsafe if libsafe is found on the system."
-msgstr "Sistemdə libsafe tapılsa, libsafe fəal edilsin"
+msgstr ""
#: security/help.pm:86
-#, fuzzy, c-format
+#, c-format
msgid "Enable the logging of IPv4 strange packets."
-msgstr "Qəribə IPv4 paketlərininm qeyd edilməsini fəallaşdır"
+msgstr ""
#: security/help.pm:88
-#, fuzzy, c-format
+#, c-format
msgid "Enable msec hourly security check."
-msgstr "msec saat başı təhlükəsizlik yoxlamasını fəallaşdır"
+msgstr ""
#: security/help.pm:90
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable su only from members of the wheel group. If set to no, allows su from "
"any user."
-msgstr "su xassəsini yalnız wheel qrupu üzvlərinə ya da hərkəsə açıq edilməsi."
+msgstr ""
#: security/help.pm:92
#, c-format
@@ -5627,20 +5458,19 @@ msgid "Use password to authenticate users."
msgstr "İstifadəçiləri səlahiyyətləndirmək üçün şifrə işlət."
#: security/help.pm:94
-#, fuzzy, c-format
-msgid "Activate ethernet cards promiscuity check."
+#, c-format
+msgid "Activate Ethernet cards promiscuity check."
msgstr ""
-"Eternet kartlarının nizamsızlıq yoxlamasını Fəallaşdır/Qeyri-Fəallaşdır."
#: security/help.pm:96
-#, fuzzy, c-format
+#, c-format
msgid "Activate daily security check."
-msgstr "Günlük təhlükəsizlik yoxlamasını Fəallaşdır/Qeyri-fəallaşdır"
+msgstr ""
#: security/help.pm:98
-#, fuzzy, c-format
+#, c-format
msgid "Enable sulogin(8) in single user level."
-msgstr "Tək istifadəçi səviyyəsində sulogin(8)-i fəallaşdır/qeyri-fəallaşdır."
+msgstr ""
#: security/help.pm:100
#, c-format
@@ -5672,9 +5502,9 @@ msgstr ""
"seçin."
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "Ali istifadəçi umask'ını seç."
+msgstr ""
#: security/help.pm:109
#, c-format
@@ -5807,9 +5637,9 @@ msgid "Timeout unit is second"
msgstr "Vaxt dolması vahidi saniyədir"
#: security/help.pm:138
-#, fuzzy, c-format
+#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "İstifadəçi umask'ını seç."
+msgstr ""
#: security/l10n.pm:11
#, c-format
@@ -5912,9 +5742,9 @@ msgid "Enable msec hourly security check"
msgstr "msec saat başı təhlükəsizlik yoxlamasını fəallaşdır"
#: security/l10n.pm:32
-#, fuzzy, c-format
+#, c-format
msgid "Enable su only from the wheel group members"
-msgstr "su xassəsini yalnız wheel qrupu üzvlərinə ya da hərkəsə açıq et"
+msgstr ""
#: security/l10n.pm:33
#, c-format
@@ -6078,11 +5908,11 @@ msgid "Standard"
msgstr "Standart"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "Təhlükəsizlik"
+msgstr ""
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6091,7 +5921,7 @@ msgid ""
"on your own."
msgstr ""
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -6100,7 +5930,7 @@ msgstr ""
"Bu, İnternetə bağlı olan bir kompüter üçün standart və məsləhət edilən bir "
"təhlükəsizlik səviyyəsidir."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6117,48 +5947,48 @@ msgstr ""
"Qeyd: əgər sisteminiz İnternet üstündə sadə bir alıcıdırsa, daha aşağı olan "
"səviyyəni seçin."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Təhlükəsizlik"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "DrakSec Əsas Seçimləri"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "Xahiş edirik, uyğun təhlükəsizlik səviyyəsini seçin"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr ""
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "Təhlükəsizlik İdarəçisi:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
msgstr ""
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "ALSA səs sistemini (Advanced Linux Sound Architecture) başlat"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "Anakron, periodik əmr zamanlayıcısı"
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6168,7 +5998,7 @@ msgstr ""
"üçün istifadə edilir.\n"
"Ayrıca batareya azalanda sistemi söndürmək üçün də istifadə edilir."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6177,7 +6007,22 @@ msgstr ""
"at əmri, zamanlanan əmrləri işləmələri lazım gələn vaxtda işlədir.\n"
"Sistem yükü lazımi qədər alçaq olduğunda yığma əmrləri işlədilir."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr ""
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6190,18 +6035,18 @@ msgstr ""
"çox\n"
"yeni xüsusiyyət daxildir."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr ""
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6209,7 +6054,20 @@ msgid ""
"It is used by GNOME and KDE"
msgstr ""
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6222,12 +6080,12 @@ msgstr ""
"Ayrıca konsolda siçanla kəsmə və yapışdırma əməliyyatlarına da imkan verər.\n"
"Konsolda pop-up menyu dəstəyi verər."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
@@ -6236,7 +6094,7 @@ msgstr ""
"HardDrake avadanlıq sınağı aparır və istəyə görə yeni/dəyişdirilmiş "
"avadanlıqları quraşdırır."
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
@@ -6244,7 +6102,7 @@ msgstr ""
"Apache bir World Wide Web vericisidir. HTML faylları və CGI verilməsi üçün "
"istifadə edilir."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6260,16 +6118,23 @@ msgstr ""
"inetd-ni sistemden çıxarmaq, onun məs'ul olduğu bütün xidmətləri\n"
"rədd etmək mə'nasını daşıyır."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"Linuks 2.2 seriyası çəyirdəklərində atəş divarı\n"
-"qurmaq üçün paket süzülməsini başlat."
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6280,7 +6145,7 @@ msgstr ""
"Hansı klaviatura düzülüşü istifadə ediləcəyi kbdconfig ilə seçilir.\n"
"Bu, çoxu kompüterdə fəal buraxılmalıdır."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6289,12 +6154,17 @@ msgstr ""
"/usr/include/linux/{autoconf,version}.h üçün \n"
"/boot cərgəsində avtomatik çəyirdək başlığının yaradılması"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr "Texniki avadanlığın açılışda avtomatik təsbiti və qurulması."
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6303,7 +6173,7 @@ msgstr ""
"Linuxconf sistem qurğularınızı idarə edən proqramları,\n"
"müxtəlif vəzifələri açılışda icra edər."
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -6312,7 +6182,7 @@ msgstr ""
"lpd, lpr-nin düzgün olaraq işləməsi üçün lazımi çapçıi vasitəsidir.\n"
"lpd əsasən, çap vəzifələrini idarə edən və onları çapçıya göndərən vericidir."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
@@ -6320,14 +6190,29 @@ msgid ""
msgstr ""
"Linux Virtual Server, yüksək qabiliyyətli vericilər qurmaq üçün işlədilir."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6336,7 +6221,12 @@ msgstr ""
"named (BIND) verici adlarını IP ünvanlarına çevirənDomen Adı Vericisidir "
"(DNS)."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6345,7 +6235,7 @@ msgstr ""
"Bütün Şəbəkə Fayl Sistemlərini (NFS), SMB (Lan Manager/Windows), və \n"
"NCP (NetWare) bağlama nöqtələrini bağlar və ayırır."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -6354,7 +6244,17 @@ msgstr ""
"Açılış sırasında başlamaq üçün qurulmuş bütün şəbəkə axtar üzlərini "
"fəallaşdırır ya da bağlayır."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6366,7 +6266,7 @@ msgstr ""
"Bu xidmət, /etc/exports faylında qurğuları olan NFS vericisinin\n"
"istifadəsinə imkan verər."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6375,12 +6275,12 @@ msgstr ""
"NFS TCP/IP şəbəkələrində fayl bölüşülməsi üçün istifadə edilən məşhur bir \n"
"protokoldur. Bu xidmət NFS fayl qıfılı istifadəsinə imkan verər."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6389,12 +6289,17 @@ msgstr ""
"Açılışda Xorg və konsolda numlock düyməsini\n"
"avtomatik olaraq aç."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "OKI 4w və uyğun winprinter'ləri dəstəklə."
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6407,7 +6312,7 @@ msgstr ""
"Qurulmadığı vaxtda açılışda işləməz, işləməsinə ehtiyac olmayan\n"
"kompüterlərdə qurulu olması problem yaratmaz."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6419,7 +6324,12 @@ msgstr ""
"bağlantılarını təşkilatlandırır. Portmap vericisi RPC mexanizmini işlədən\n"
"protokollarla xidmət edən kompüterlərdə qurulmalıdır və işlədilməlidir."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6428,7 +6338,7 @@ msgstr ""
"Posfix, elektronik məktubların bir kompüterdən digərinə yollayan \n"
"Məktub Yollama Vasitəsidir (Mail Transport Agent)."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6437,16 +6347,21 @@ msgstr ""
"Yüksək keyfiyyət təsadüfi rəqəm istehsal edən sistem entropi hovuzunun \n"
"saxlanması və yenidən köhnə halına gətirilməsinə imkan verər."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
"Oracle ya da DVD çalğıcılar kimi tə'minatların istifadəsi üçün xam\n"
"avadanlıqları blok avadanlıqlara tə'yin et (sabit disk bölmələrikimi)"
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr ""
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6458,7 +6373,7 @@ msgstr ""
"daha böyük\n"
"şəbəkələrdə daha qarışıq routing protokollarına ehtiyacı vardır."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6467,7 +6382,14 @@ msgstr ""
"rstat protokolu bir şəbəkədəkı istifadəçilərin o şəbəkədəkı hər hansı bir\n"
"kompüter haqqındakı qabiliyyət ölçüləri ala bilmələrinə imkan verər."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
@@ -6476,7 +6398,7 @@ msgstr ""
"rusers protokolu bir şəbəkədəkı istifadəçilərin o şəbəkədəkı kompüterlərdə\n"
"işləyən istifadəçiləri görməsinə imkan verər."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6485,32 +6407,47 @@ msgstr ""
"rwho protokolu, uzaq istifadəçilərin, rwho vasitəsi işlədən bir kompüterdə\n"
"olan bütün istifadəçiləri görmələrina imkan verər."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "Kompüterinizdəki səs sistemini başladır"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6520,82 +6457,94 @@ msgstr ""
"tutmalarına imkan verər. Syslog'un hər zaman işləməsi\n"
"yaxşı fikirdir."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "USB avadanlığınız üçün sürücüləri yükləyin."
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr ""
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr ""
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Çap"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "İnternet"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Fayl bölüşməsi"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Şəbəkə"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "Sistem"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "Uzaqdan İdarə"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Mə'lumat Bazası Vericisi"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Xidmətlər"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr "Açılışda avtomatik olaraq başlayacaq xidmətləri seçin"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Xidmətlər: %d fəal, %d qeydli"
+msgid "%d activated for %d registered"
+msgstr "%d fəal, %d qeydli"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "fəaliyyətdədir"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "dayandırılıb"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Xidmətlər və vasitələr"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6604,32 +6553,27 @@ msgstr ""
"Bu xidmət haqqında təəsüf ki\n"
"əlavə mə'lumat yoxdur."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Mə'lumat"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "İstəniləndə başlat"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "Açılışda"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "Başlat"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Dayandır"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6662,7 +6606,7 @@ msgstr ""
"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
"USA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6689,34 +6633,27 @@ msgstr ""
"--help : bu ismarışı göstər.\n"
"--version : buraxılış nömrəsini göstər.\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-#: standalone.pm:61
-#, fuzzy, c-format
+#: standalone.pm:62
+#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-"[SEÇİMLƏR] [PROQRAM_ADI]\n"
-"\n"
-"SEÇİMLƏR:\n"
-" --help - bu yardım ismarışını göstər.\n"
-" --report - proqram Mandriva Linux vasitələrindən biri olmalıdır\n"
-" --incident - proqram Mandriva Linux vasitələrindən biri olmalıdır"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6727,8 +6664,8 @@ msgid ""
" --wizard - like --add"
msgstr ""
-#: standalone.pm:73
-#, fuzzy, c-format
+#: standalone.pm:74
+#, c-format
msgid ""
"\n"
"Font Importation and monitoring application\n"
@@ -6744,23 +6681,12 @@ msgid ""
" : name_of_application like so for staroffice \n"
" : and gs for ghostscript for only this one."
msgstr ""
-"Yazı növü idxalı və izlənməsi tə'minat \n"
-"--windows_import : bütün mövcud windows bölmələrindən idxal et.\n"
-"--xls_fonts : xls'dən osuzda mövcud olan bütün yazı növlərini göstər\n"
-"--strong : yazı növünün güclü yoxlanması.\n"
-"--install : bütün yazı növü fayl və cərqələrini qəbul et.\n"
-"--uninstall : hər hansı bir yazı növü ya da yazı növü cərqəsini sil.\n"
-"--replace : mövcuddursa yazı növünü üstündən əvəz et\n"
-"--application : 0 heç bir tə'minat.\n"
-" : 1 mövcud olan bütün tə'minatlar dəstəklənir.\n"
-" : tə'minatın_adı staroffice üçün so kimi \n"
-" : və ghostscript üçün gs kimi."
-
-#: standalone.pm:88
-#, fuzzy, c-format
+
+#: standalone.pm:89
+#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6773,33 +6699,19 @@ msgid ""
"--delclient : delete a client machine from MTS (requires MAC address, "
"IP, nbi image name)"
msgstr ""
-"[SEÇİMLƏR]...\n"
-"Mandriva Terminal Vericisi Quraşdırıcısı\n"
-"--enable : MTS'ni fəallaşdır\n"
-"--disable : MTS'ni qeyri-fəallaşdır\n"
-"--start : MTS'ni başlat\n"
-"--stop : MTS'ni dayandır\n"
-"--adduser : MTS'yə mövcud olan istifadəçi əlavə et (istifadəçi adı "
-"istənəcək)\n"
-"--deluser : MTS'dən mövcud olan istifadəçini sil (istifadəçi adı "
-"istənəcək)\n"
-"--addclient : MTS'yə alıcı sistem əlavə et (MAC ünvanı, IP, nbi əks adı "
-"istənəcək)\n"
-"--delclient : MTS'dən alıcı sistemi sil (MAC ünvanı, IP, nbi əks adı "
-"istənəcək)"
-
-#: standalone.pm:100
+
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[klaviatura]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr ""
"[--file=faylım] [--word=kəlməm] [--explain=ifadəliqayda] [--xəbərdarlıq]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6822,27 +6734,19 @@ msgstr ""
"--status : bağlananda 1, əks halda 0 cavabı verir, sonra çıxır.\n"
"--quiet : interaktiv olma. (dis)connect ilə işlədilmək üçün."
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-"[SEÇİM]...\n"
-" --no-confirmation Mandriva Update modundabirinci təsdiqləmə sualını "
-"soruşma\n"
-" --no-verify-rpm paket imzalarını yoxlama\n"
-" --changelog-first izahat pəncərəsində fayl siyahısından əvvəl "
-"changelog'u göstər\n"
-" --merge-all-rpmnew tapılan bütün .rpmnew/.rpmsave fayllarını "
-"birləşdirməyi təklif et"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -6851,7 +6755,7 @@ msgstr ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6862,7 +6766,7 @@ msgstr ""
" XFdrake [--noauto] monitor\n"
" XFdrake həllerilirlik"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6873,70 +6777,75 @@ msgstr ""
"İstifadə qaydası: %s [--auto] [--beginner] [--expert] [-h|--help] [--"
"noauto] [--testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
-#, fuzzy, c-format
+#: timezone.pm:170 timezone.pm:171
+#, c-format
msgid "All servers"
-msgstr "Verici əlavə et"
+msgstr ""
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr ""
-#: timezone.pm:199
-#, fuzzy, c-format
+#: timezone.pm:210
+#, c-format
msgid "Africa"
-msgstr "Cənubi Afrika"
+msgstr ""
-#: timezone.pm:200
-#, fuzzy, c-format
+#: timezone.pm:211
+#, c-format
msgid "Asia"
-msgstr "Avstriya"
+msgstr ""
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr ""
-#: timezone.pm:202
-#, fuzzy, c-format
+#: timezone.pm:213
+#, c-format
msgid "North America"
-msgstr "Cənubi Afrika"
+msgstr ""
-#: timezone.pm:203
-#, fuzzy, c-format
+#: timezone.pm:214
+#, c-format
msgid "Oceania"
-msgstr "Makedoniya"
+msgstr ""
-#: timezone.pm:204
-#, fuzzy, c-format
+#: timezone.pm:215
+#, c-format
msgid "South America"
-msgstr "Cənubi Afrika"
+msgstr ""
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Honq Konq"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "Rusiya Federasiyası"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Yugoslaviya"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Bu düzdür?"
-#: ugtk2.pm:874
-#, fuzzy, c-format
+#: ugtk2.pm:872 ugtk3.pm:968
+#, c-format
msgid "You have chosen a file, not a directory"
-msgstr "Bir qovluq deyil, bir faylı bildirmək məcburiyyətindəsən .\n"
+msgstr ""
+
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Mə'lumat"
#: wizards.pm:95
#, c-format
@@ -6951,334 +6860,3 @@ msgstr ""
#, c-format
msgid "Installation failed"
msgstr "Qurulum bacarılmadı"
-
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "Lütfen çıxın və Ctrl-Alt-BackSpace düymələrinə basın"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "Krakerlərə xoşgəlmişsiniz"
-
-#~ msgid "Poor"
-#~ msgstr "Zəif"
-
-#~ msgid "High"
-#~ msgstr "Yüksək"
-
-#~ msgid "Higher"
-#~ msgstr "Daha Yüksək"
-
-#~ msgid "Paranoid"
-#~ msgstr "Paranoid"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "Bu səviyyə RAİD-i diqqətli istifadənizi tövsiyə edirik. Sisteminiz daha "
-#~ "asand\n"
-#~ "işlədiləcək, ancaq xətalara qarşı da həssaiyyəti də artacaqdır. "
-#~ "İnternetə \n"
-#~ "bağlı isəniz bunu tövsiyə etmirik. Şifrə ilə girilir."
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr ""
-#~ "Şifrələr fəallaşdırıldı, yenə də bir şəbəkə üstündə istifadə edilməməsi "
-#~ "tövsiyə edilir."
-
-#~ msgid ""
-#~ "There are already some restrictions, and more automatic checks are run "
-#~ "every night."
-#~ msgstr ""
-#~ "Onsuzda bə'zi məhdudiyyətləriniz mövcuddur, və hər gecə daha çox "
-#~ "avtomatik yoxlamalar edilir."
-
-#~ msgid ""
-#~ "This is similar to the previous level, but the system is entirely closed "
-#~ "and security features are at their maximum."
-#~ msgstr ""
-#~ "Bu, daha əvvəlki səviyyəyə bənzərdir, ancaq sistem tamamilə bağlıdır və "
-#~ "təhlükəsizlik xüsusiyyətləri ən üst səviyyədədir."
-
-#~ msgid ""
-#~ "\n"
-#~ "Warning\n"
-#~ "\n"
-#~ "Please read carefully the terms below. If you disagree with any\n"
-#~ "portion, you are not allowed to install the next CD media. Press "
-#~ "'Refuse' \n"
-#~ "to continue the installation without using these media.\n"
-#~ "\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a network. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-#~ msgstr ""
-#~ "\n"
-#~ "Warning\n"
-#~ "\n"
-#~ "Please read carefully the terms below. If you disagree with any\n"
-#~ "portion, you are not allowed to install the next CD media. Press "
-#~ "'Refuse' \n"
-#~ "to continue the installation without using these media.\n"
-#~ "\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a şəbəkə. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-
-#~ msgid "Use libsafe for servers"
-#~ msgstr "Vericilər üçün libsafe işlət"
-
-#~ msgid ""
-#~ "A library which defends against buffer overflow and format string attacks."
-#~ msgstr ""
-#~ "Buffer overflow və format string hücumlarına qarşı qoruyan kitabxana."
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "LILO/grub Qurulumu"
-
-#~ msgid "Precise RAM size if needed (found %d MB)"
-#~ msgstr "Ümumi yaddaş miqdarı (%d MB tapıldı)"
-
-#~ msgid "Give the ram size in MB"
-#~ msgstr "Yaddaş miqdarını MB cinsindən verin"
-
-#~ msgid ""
-#~ "If you plan to use aboot, be careful to leave a free space (2048 sectors "
-#~ "is enough)\n"
-#~ "at the beginning of the disk"
-#~ msgstr ""
-#~ "Aboot istifadə etmək istəyirsinizsə, boş disk sahəsi (2048 sektor "
-#~ "kifayətdir.)\n"
-#~ "buraxmağı unutmayın."
-
-#~ msgid "Security level"
-#~ msgstr "Təhlükəsizlik səviyyəsi"
-
-#~ msgid "Expand Tree"
-#~ msgstr "Ağacı Aç"
-
-#~ msgid "Collapse Tree"
-#~ msgstr "Ağacı Bağla"
-
-#~ msgid "Toggle between flat and group sorted"
-#~ msgstr "Otaq və grup sıralaması arasında gəz"
-
-#~ msgid "Choose action"
-#~ msgstr "Gedişatı seçin"
-
-#, fuzzy
-#~ msgid "Active Directory with SFU"
-#~ msgstr "Bütün ehtiyat nüsxələri geri yüklə"
-
-#, fuzzy
-#~ msgid "Active Directory with Winbind"
-#~ msgstr "Bütün ehtiyat nüsxələri geri yüklə"
-
-#, fuzzy
-#~ msgid "Active Directory with SFU:"
-#~ msgstr "Bütün ehtiyat nüsxələri geri yüklə"
-
-#, fuzzy
-#~ msgid "Active Directory with Winbind:"
-#~ msgstr "Bütün ehtiyat nüsxələri geri yüklə"
-
-#~ msgid "Authentication LDAP"
-#~ msgstr "Tanıtma LDAP"
-
-#, fuzzy
-#~ msgid "TLS"
-#~ msgstr "LSB"
-
-#~ msgid "SSL"
-#~ msgstr "SSL"
-
-#, fuzzy
-#~ msgid "Authentication Active Directory"
-#~ msgstr "Tanıtma yöntəmi"
-
-#, fuzzy
-#~ msgid "LDAP users database"
-#~ msgstr "Mə'lumat Bazası"
-
-#~ msgid "Authentication NIS"
-#~ msgstr "Səlahiyyətləndirmə NIS"
-
-#~ msgid ""
-#~ "For this to work for a W2K PDC, you will probably need to have the admin "
-#~ "run: C:\\>net localgroup \"Pre-Windows 2000 Compatible Access\" everyone /"
-#~ "add and reboot the server.\n"
-#~ "You will also need the username/password of a Domain Admin to join the "
-#~ "machine to the Windows(TM) domain.\n"
-#~ "If networking is not yet enabled, Drakx will attempt to join the domain "
-#~ "after the network setup step.\n"
-#~ "Should this setup fail for some reason and domain authentication is not "
-#~ "working, run 'smbpasswd -j DOMAIN -U USER%%PASSWORD' using your Windows"
-#~ "(tm) Domain, and Admin Username/Password, after system boot.\n"
-#~ "The command 'wbinfo -t' will test whether your authentication secrets are "
-#~ "good."
-#~ msgstr ""
-#~ "W2K PDC üçün bunun işləməsi üçün, idarəçi C:\\>net localgroup \"Pre-"
-#~ "Windows 2000 Compatible Access\" everyone /əmrini verib vericini yenidən "
-#~ "başlatmalıdır.\n"
-#~ "Onun, eyni zamanda sistemi Windows(TM) domeninə calamaq üçün Domen "
-#~ "İdarəçisinin istifadəçi adı/şifrəsinə ehtiyacı olacaq.\n"
-#~ "Əgər şəbəkə hələ quraşdırılmayıbsa DrakX şəbəkəni quraşdırdıqdan sonra "
-#~ "domenə calama üçün cəhd edəcək.\n"
-#~ "Əgər bu qurğu ya da domen səlahiyyətləndirilməsi işləməzsə, sistemin "
-#~ "yenidən başladılmasından sonra Windows(tm) Domeninizi və İdarəçi "
-#~ "istifadəçi adı/şifrəsini işlədərək'smbpasswd -j DOMEN -U İSTİFADƏÇİ%%"
-#~ "ŞİFRƏ' əmrini icra edin.\n"
-#~ "'wbinfo -t' əmri səlahiyyət sirrlərinin düzgün olub olmamasını yoxlayacaq."
-
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "Windows Domen Səlahiyyətləndirilməsi"
-
-#~ msgid "Undo"
-#~ msgstr "Geri al"
-
-#~ msgid "Save partition table"
-#~ msgstr "Bölmə cədvəlini qeyd et"
-
-#~ msgid "Restore partition table"
-#~ msgstr "Bölmə cədvəlini geri al"
-
-#~ msgid ""
-#~ "The backup partition table has not the same size\n"
-#~ "Still continue?"
-#~ msgstr ""
-#~ "Ehtiyat bölmə cədvəli eyni böyüklüyə sahib deyil\n"
-#~ "Davam etmək istəyirsiniz?"
-
-#~ msgid "Info: "
-#~ msgstr "Mə'lumat: "
-
-#~ msgid "Unknown driver"
-#~ msgstr "Namə'lum sürücü"
-
-#~ msgid "Error reading file %s"
-#~ msgstr "%s faylı oxunurkan xəta oldu"
-
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "%s faylından geri yükləmə xətası: %s"
-
-#~ msgid "Bad backup file"
-#~ msgstr "Xətalı ehtiyat faylı"
-
-#~ msgid "Error writing to file %s"
-#~ msgstr "%s faylına yazma xətası"
-
-#~ msgid "Error: The \"%s\" driver for your sound card is unlisted"
-#~ msgstr "Xəta: Səs kartınız üçün \"%s\" sürücüsü siyahıda yoxdur"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Journalised FS"
-#~ msgstr "Journalised FS"
-
-#~ msgid "Starts the X Font Server (this is mandatory for Xorg to run)."
-#~ msgstr "X Font Vericisini başlat (Bu, Xorg icrası üçün məcburidir)."
-
-#~ msgid "Add user"
-#~ msgstr "İstifadəçini əlavə et"
-
-#~ msgid "Accept user"
-#~ msgstr "İstifadəçini qəbul et"
-
-#, fuzzy
-#~ msgid ""
-#~ "Do not update directory inode access times on this filesystem\n"
-#~ "(e.g, for faster access on the news spool to speed up news servers)."
-#~ msgstr ""
-#~ "Bu fayl sistemi üstündəki inode yetişmə vaxtlarını yeniləmə\n"
-#~ "(mis,xəbərlər vericisini tezləşdirmək üçün)."
-
-#~ msgid "Rescue partition table"
-#~ msgstr "Bölmə cədvəlini qurtar"
-
-#~ msgid "Removable media automounting"
-#~ msgstr "Sökülə bilən avadanlıqların avtomatik bağlanması"
-
-#~ msgid "Trying to rescue partition table"
-#~ msgstr "Bölmə cədvəli qurtarılmaya cəhd edilir"
-
-#~ msgid "Accept/Refuse bogus IPv4 error messages."
-#~ msgstr "Səhv IPv4 xəta ismarışlarını qəbul et/etmə"
-
-#~ msgid "Accept/Refuse broadcasted icmp echo."
-#~ msgstr "Translasiya edilən icmp echo'sunu Qəbul Et/Rədd Et"
-
-#~ msgid "Accept/Refuse icmp echo."
-#~ msgstr "icmp əks sədasını qəbul/rədd et."
-
-#~ msgid "Allow/Forbid remote root login."
-#~ msgstr "Ali istifadəçinin uzaqdan girişinə icazə ver/vermə"
-
-#~ msgid "Enable/Disable IP spoofing protection."
-#~ msgstr "IP qizləmə qorumasını Fəallaşdır/Qeyri-fəallaşdır."
-
-#~ msgid "Enable/Disable libsafe if libsafe is found on the system."
-#~ msgstr "Sistemdə libsafe tapılsa, libsafe Fəal/Qeyri-Fəal edilsin."
-
-#~ msgid "Enable/Disable the logging of IPv4 strange packets."
-#~ msgstr ""
-#~ "Qəribə IPv4 paketlərininm qeyd edilməsini Fəallaşdır/Qeyri-fəallaşdır"
-
-#~ msgid "Enable/Disable msec hourly security check."
-#~ msgstr ""
-#~ "Saat başı msec təhlükəsizlik yoxlamasını Fəallaşdır/Qeyri-fəallaşdır"
-
-#~ msgid "Number of capture buffers:"
-#~ msgstr "Yaxalama bufferlərinin ədədi:"
-
-#~ msgid "number of capture buffers for mmap'ed capture"
-#~ msgstr "mmap'lanmış yaxalama üçün yaxalama buferlərinin miqdarı"
-
-#~ msgid "PLL setting:"
-#~ msgstr "PLL qurğusu:"
-
-#~ msgid "Radio support:"
-#~ msgstr "Radio dəstəyi:"
-
-#~ msgid " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
-#~ msgstr " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
diff --git a/perl-install/share/po/be.po b/perl-install/share/po/be.po
index 61505c766..101b4f4ee 100644
--- a/perl-install/share/po/be.po
+++ b/perl-install/share/po/be.po
@@ -1,33 +1,40 @@
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) 1999 Mandriva.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+#
+# Translators:
# Alexander Bokovoy <ab@avilink.net>, 2000
# Maryia Davidouskaia <maryia@scientist.com>, 2000
msgid ""
msgstr ""
-"Project-Id-Version: DrakX VERSION\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2000-09-24 12:30 +0100\n"
-"Last-Translator: Alexander Bokovoy <ab@avilink.net>\n"
-"Language-Team: be\n"
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2019-04-16 15:44+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Belarusian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/be/)\n"
+"Language: be\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || "
+"(n%100>=11 && n%100<=14)? 2 : 3);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "Калі ласка, пачакайце"
-#: any.pm:252
-#, fuzzy, c-format
+#: any.pm:272
+#, c-format
msgid "Bootloader installation in progress"
-msgstr "Усталяванне загрузчыку"
+msgstr ""
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -38,301 +45,288 @@ msgid ""
"Assign a new Volume ID?"
msgstr ""
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr "Працэс усталявання загрузчыка не атрымаўся. Узнікла наступная памылка:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
-#: any.pm:346
-#, fuzzy, c-format
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr ""
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Куды вы жадаеце ўсталяваць пачатковы загрузчык?"
+
+#: any.pm:365
+#, c-format
msgid "First sector (MBR) of drive %s"
-msgstr "Першы сектар прылады (MBR)"
+msgstr ""
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "Першы сектар прылады (MBR)"
-#: any.pm:350
-#, fuzzy, c-format
+#: any.pm:369
+#, c-format
msgid "First sector of the root partition"
-msgstr "Першы сектар загрузачнага раздзелу"
+msgstr ""
-#: any.pm:352
-#, fuzzy, c-format
+#: any.pm:371
+#, c-format
msgid "On Floppy"
-msgstr "Захаванне на дыскету"
+msgstr ""
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Прапусціць"
-#: any.pm:358
-#, fuzzy, c-format
-msgid "Bootloader Installation"
-msgstr "Усталяванне загрузчыку"
-
-#: any.pm:362
+#: any.pm:401
#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Куды вы жадаеце ўсталяваць пачатковы загрузчык?"
-
-#: any.pm:389
-#, fuzzy, c-format
msgid "Boot Style Configuration"
-msgstr "Настройка IDE"
+msgstr ""
+
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr ""
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "Галоўныя опцыі пачатковага загрузчыку"
-#: any.pm:403
-#, fuzzy, c-format
+#: any.pm:424
+#, c-format
msgid "Bootloader"
-msgstr "Усталяванне загрузчыку"
+msgstr ""
-#: any.pm:404 any.pm:433
-#, fuzzy, c-format
+#: any.pm:425
+#, c-format
msgid "Bootloader to use"
-msgstr "Галоўныя опцыі пачатковага загрузчыку"
+msgstr ""
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Загрузачная прылада"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
msgstr ""
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "Затрымка перад загрузкай вобразу па дамаўленню"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr ""
-#: any.pm:411
-#, fuzzy, c-format
+#: any.pm:432
+#, c-format
msgid "Enable SMP"
-msgstr "Сервер друку"
+msgstr ""
-#: any.pm:412
-#, fuzzy, c-format
+#: any.pm:433
+#, c-format
msgid "Enable APIC"
-msgstr "Сервер друку"
+msgstr ""
-#: any.pm:413
+#: any.pm:435
#, c-format
msgid "Enable Local APIC"
msgstr ""
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Бясьпека"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Пароль"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Паролі не супадаюць"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Паспрабуйце яшчэ раз"
-#: any.pm:418
-#, fuzzy, c-format
-msgid "You can not use a password with %s"
-msgstr "Вы не можаце разбіваць на разделы, памер якіх меней за 32 Мб"
+#: any.pm:442
+#, c-format
+msgid "You cannot use a password with %s"
+msgstr ""
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Паўтарыце пароль"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "Абмежаванне опцыяў каманднага радка"
+msgid "Bootloader Configuration"
+msgstr ""
-#: any.pm:422
-#, c-format
-msgid "restrict"
-msgstr "абмежаванне"
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "Опцыі"
-#: any.pm:423
+#: any.pm:533
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
+msgid "Install or update rEFInd in the EFI system partition"
msgstr ""
-"Опцыя ‟Абмежаванне опцыяў каманднага радку“ не выкарыстоўваецца без пароля"
-#: any.pm:425
+#: any.pm:535 any.pm:794
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "Ачышчаць /tmp пры кожнай загрузцы"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
-#: any.pm:434
+#: any.pm:537
#, c-format
-msgid "Init Message"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
msgstr ""
-#: any.pm:436
+#: any.pm:539
#, c-format
-msgid "Open Firmware Delay"
+msgid "Background"
msgstr ""
-#: any.pm:437
+#: any.pm:544
#, c-format
-msgid "Kernel Boot Timeout"
+msgid "rEFInd banner"
msgstr ""
-#: any.pm:438
+#: any.pm:545
#, fuzzy, c-format
-msgid "Enable CD Boot?"
-msgstr "Дазволіць 6dB павышэнне + цяжкае лімітаванне"
+msgid "Mageia theme"
+msgstr "Mageia"
-#: any.pm:439
-#, fuzzy, c-format
-msgid "Enable OF Boot?"
-msgstr "Дазволіць 6dB павышэнне + цяжкае лімітаванне"
+#: any.pm:546 any.pm:1602
+#, c-format
+msgid "Custom"
+msgstr "Па выбару"
-#: any.pm:440
-#, fuzzy, c-format
-msgid "Default OS?"
-msgstr "Па дамаўленню"
+#: any.pm:564
+#, c-format
+msgid "No scaling"
+msgstr ""
-#: any.pm:513
+#: any.pm:565
#, c-format
-msgid "Image"
-msgstr "Вобраз"
+msgid "Scale to fit"
+msgstr ""
-#: any.pm:514 any.pm:527
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Root"
-msgstr "Root"
+msgid "Label"
+msgstr "Метка"
-#: any.pm:515 any.pm:540
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
msgid "Append"
msgstr "Далучыць"
-#: any.pm:517
+#: any.pm:612 any.pm:624 any.pm:781
+#, c-format
+msgid "Video mode"
+msgstr "Відэа-рэжым"
+
+#: any.pm:617
+#, c-format
+msgid "Image"
+msgstr "Вобраз"
+
+#: any.pm:618 any.pm:630
+#, c-format
+msgid "Root"
+msgstr "Root"
+
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr ""
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Відэа-рэжым"
+msgid "Requires password to boot"
+msgstr ""
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
-#, fuzzy, c-format
-msgid "Network profile"
-msgstr "Сеткавы інтэрфейс"
-
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
+#: any.pm:626
#, c-format
-msgid "Label"
-msgstr "Метка"
+msgid "Network profile"
+msgstr ""
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Па дамаўленню"
-#: any.pm:541
-#, fuzzy, c-format
-msgid "NoVideo"
-msgstr "Відэа"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "Пустая метка не дазваляецца"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr ""
-#: any.pm:553
-#, fuzzy, c-format
+#: any.pm:646
+#, c-format
msgid "You must specify a root partition"
-msgstr "Першы сектар загрузачнага раздзелу"
+msgstr ""
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "Гэтая метка ўжо выкарыстоўваецца"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Які тып пункта жадаеце дадаць?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Іншая АС (SunOS,...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Іншая АС (MacOS,...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "Іншая АС (Windows...)"
-#: any.pm:621
-#, fuzzy, c-format
-msgid "Bootloader Configuration"
-msgstr "Настройка IDE"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -341,270 +335,321 @@ msgstr ""
"У меню маюцца наступныя пункты.\n"
"Вы можаце дадаць яшчэ, альбо змяніць існуючыя."
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr ""
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Увага!"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+
#: any.pm:790
#, c-format
-msgid "access to X programs"
+msgid "Probe Foreign OS"
msgstr ""
#: any.pm:791
#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
+msgid "access to X programs"
+msgstr ""
+
+#: any.pm:1060
+#, c-format
msgid "access to rpm tools"
msgstr ""
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr ""
-#: any.pm:793
-#, fuzzy, c-format
+#: any.pm:1062
+#, c-format
msgid "access to administrative files"
-msgstr "Выкарыстоўваць настройкі сыстэмнага адміністратара"
+msgstr ""
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr ""
-#: any.pm:795
-#, fuzzy, c-format
+#: any.pm:1064
+#, c-format
msgid "access to compilation tools"
-msgstr "Канфігурацыя сістэмных сэрвісаў"
+msgstr ""
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(ужо дададзена %s)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "Калі ласка, увядзіце імя карыстальніку"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
msgstr ""
-"Імя карыстальніку павінна змяшчаць літары толькі на ніжнім рэгістры, \n"
-"лічбы, ‛-’ і ‛_’"
-#: any.pm:809
-#, fuzzy, c-format
+#: any.pm:1078
+#, c-format
msgid "The user name is too long"
-msgstr "Імя занадта доўгае"
+msgstr ""
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "Гэта імя карыстальніку ўжо дададзена"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "ID карыстальніка"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "ID групы"
-#: any.pm:817
-#, fuzzy, c-format
+#: any.pm:1086
+#, c-format
msgid "%s must be a number"
-msgstr "UIN павінен утрымліваць толькі лічбы.\n"
+msgstr ""
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
+msgid "%s should be above 1000. Accept anyway?"
msgstr ""
-#: any.pm:822
-#, fuzzy, c-format
+#: any.pm:1091
+#, c-format
msgid "User management"
-msgstr "Карыстальнік"
+msgstr ""
-#: any.pm:828 authentication.pm:237
-#, fuzzy, c-format
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr ""
+
+#: any.pm:1099 authentication.pm:236
+#, c-format
msgid "Set administrator (root) password"
-msgstr "Пароль для root"
+msgstr ""
-#: any.pm:833
-#, fuzzy, c-format
+#: any.pm:1105
+#, c-format
msgid "Enter a user"
msgstr ""
-"Увядзіце імя карыстальніку\n"
-"%s"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Піктаграма"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Уласнае імя"
-#: any.pm:843
-#, fuzzy, c-format
+#: any.pm:1117
+#, c-format
msgid "Login name"
-msgstr "Гульня ў косьці"
+msgstr ""
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Абалонка:"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr ""
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
msgstr ""
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "Аўтаматычны ўваход у сістэму"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
-#: any.pm:916
-#, fuzzy, c-format
+#: any.pm:1251
+#, c-format
msgid "Use this feature"
-msgstr "Зачыніць гэтую тэчку"
+msgstr ""
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Абярыце асноўнага карыстальніка:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "Абярыце мэнэджар вокнаў:"
-#: any.pm:929 any.pm:949 any.pm:1022
-#, fuzzy, c-format
+#: any.pm:1264 any.pm:1279 any.pm:1348
+#, c-format
msgid "Release Notes"
-msgstr "Калі ласка, пачакайце"
+msgstr ""
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Зачыніць"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Ліцэнзійная дамова"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Выхад"
-#: any.pm:1017
-#, fuzzy, c-format
+#: any.pm:1343
+#, c-format
msgid "Do you accept this license ?"
-msgstr "Ці ёсць у вас іншы?"
+msgstr ""
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Прыняць"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Адказаць"
-#: any.pm:1044 any.pm:1110
-#, fuzzy, c-format
+#: any.pm:1370 any.pm:1433
+#, c-format
msgid "Please choose a language to use"
-msgstr "калі ласка, пазначце тып вашай мышы"
+msgstr ""
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
-msgstr "Вы можаце абраць іншыя мовы, якія будуць даступны пасля ўсталявання"
+msgstr ""
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr ""
+
+#: any.pm:1402
#, c-format
-msgid "Multi languages"
+msgid "Select Additional Languages"
msgstr ""
-#: any.pm:1087 any.pm:1119
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr ""
-#: any.pm:1089
-#, fuzzy, c-format
+#: any.pm:1412
+#, c-format
msgid "All languages"
-msgstr "Выбар мовы"
+msgstr ""
-#: any.pm:1111
-#, fuzzy, c-format
+#: any.pm:1434
+#, c-format
msgid "Language choice"
-msgstr "Выбар мовы"
+msgstr ""
-#: any.pm:1165
-#, fuzzy, c-format
+#: any.pm:1488
+#, c-format
msgid "Country / Region"
-msgstr "Краіна - рэгіён і мова"
+msgstr ""
-#: any.pm:1166
-#, fuzzy, c-format
+#: any.pm:1489
+#, c-format
msgid "Please choose your country"
-msgstr "калі ласка, пазначце тып вашай мышы"
+msgstr ""
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr ""
-#: any.pm:1169
-#, fuzzy, c-format
+#: any.pm:1492
+#, c-format
msgid "Other Countries"
-msgstr "Парты вываду:"
+msgstr ""
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Адмысловае"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr ""
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Нічога"
-#: any.pm:1259
-#, fuzzy, c-format
+#: any.pm:1602
+#, c-format
msgid "No sharing"
-msgstr "Нічога"
-
-#: any.pm:1259
-#, fuzzy, c-format
-msgid "Allow all users"
-msgstr "Дадаць карыстальніка"
+msgstr ""
-#: any.pm:1259
+#: any.pm:1602
#, c-format
-msgid "Custom"
-msgstr "Па выбару"
+msgid "Allow all users"
+msgstr ""
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -614,90 +659,145 @@ msgid ""
"\"Custom\" permit a per-user granularity.\n"
msgstr ""
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
"Windows."
msgstr ""
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
"systems."
msgstr ""
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
msgstr ""
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr ""
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
"You can use userdrake to add a user to this group."
msgstr ""
-#: any.pm:1421
+#: any.pm:1768
#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
msgstr ""
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr ""
-#: any.pm:1460
-#, fuzzy, c-format
+#: any.pm:1807
+#, c-format
msgid "Timezone"
-msgstr "Тэма"
+msgstr ""
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Які ваш часавы пояс?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr ""
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr ""
-#: any.pm:1490
-#, fuzzy, c-format
+#: any.pm:1837
+#, c-format
msgid "%s (hardware clock set to UTC)"
-msgstr "Ваш сістэмны гадзіннік усталяваны на GMT?"
+msgstr ""
-#: any.pm:1491
-#, fuzzy, c-format
+#: any.pm:1838
+#, c-format
msgid "%s (hardware clock set to local time)"
-msgstr "Ваш сістэмны гадзіннік усталяваны на GMT?"
+msgstr ""
-#: any.pm:1493
-#, fuzzy, c-format
+#: any.pm:1840
+#, c-format
msgid "NTP Server"
-msgstr "NIS сэервер:"
+msgstr ""
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr ""
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr ""
+
+#: any.pm:1880
+#, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr ""
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr ""
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Выбар люстра для атрымання пакетаў"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Адмена"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, c-format
+msgid "Automatic"
+msgstr ""
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "Пазначце параметры"
+
+#: any.pm:1988
+#, c-format
+msgid "Downloader"
+msgstr ""
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -718,274 +818,274 @@ msgstr ""
msgid "Smart Card"
msgstr ""
-#: authentication.pm:28 authentication.pm:216
-#, fuzzy, c-format
+#: authentication.pm:28 authentication.pm:215
+#, c-format
msgid "Windows Domain"
-msgstr "Уласьцівасьці акна"
+msgstr ""
#: authentication.pm:29
#, c-format
msgid "Kerberos 5"
msgstr ""
-#: authentication.pm:63
-#, fuzzy, c-format
+#: authentication.pm:65
+#, c-format
msgid "Local file:"
-msgstr "Загрузіць файл(ы):"
+msgstr ""
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr ":"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
"consolidates certain types of information within your organization."
msgstr ""
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr ":"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
"Service domain with a common password and group file."
msgstr ""
-#: authentication.pm:66
-#, fuzzy, c-format
+#: authentication.pm:68
+#, c-format
msgid "Windows Domain:"
-msgstr "Уласьцівасьці акна:"
+msgstr ""
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
"a Windows domain."
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
-#, fuzzy, c-format
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr "Аўтэнтыфікацыя"
+msgstr ""
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:112 authentication.pm:167
-#, fuzzy, c-format
+#: authentication.pm:111 authentication.pm:166
+#, c-format
msgid "LDAP Server"
-msgstr "Сервак"
+msgstr ""
-#: authentication.pm:113 authentication.pm:168
+#: authentication.pm:112 authentication.pm:167
#, c-format
msgid "Base dn"
msgstr ""
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr ""
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr ""
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr ""
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr ""
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
msgstr ""
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr ""
-#: authentication.pm:123 authentication.pm:175
-#, fuzzy, c-format
+#: authentication.pm:122 authentication.pm:174
+#, c-format
msgid "Bind Password "
-msgstr "Пароль"
+msgstr ""
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr ""
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "Пароль"
+msgstr ""
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "ID групы"
+msgstr ""
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr ""
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "Уласнае імя"
+msgstr ""
-#: authentication.pm:148
-#, fuzzy, c-format
+#: authentication.pm:147
+#, c-format
msgid "KDCs Servers"
-msgstr "Сервак"
+msgstr ""
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr ""
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr ""
-#: authentication.pm:156
+#: authentication.pm:155
#, c-format
msgid "Use local file for users information"
msgstr ""
-#: authentication.pm:157
-#, fuzzy, c-format
-msgid "Use Ldap for users information"
-msgstr "Канфігурацыя сістэмных сэрвісаў"
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr ""
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr ""
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "NIS Domain"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "NIS сэервер:"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "Маёнтак"
+msgstr ""
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr ""
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "NIS Domain"
+msgstr ""
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "Сервак"
+msgstr ""
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Аўтэнтыфікацыя"
-#: authentication.pm:238
-#, fuzzy, c-format
+#: authentication.pm:237
+#, c-format
msgid "Authentication method"
-msgstr "Аўтэнтыфікацыя"
+msgstr ""
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Няма паролю"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr ""
@@ -993,31 +1093,31 @@ msgstr ""
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "Немагчыма выкарыстоўваць broadcast без дамена NIS"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Абярыце файл"
-#: authentication.pm:897
-#, fuzzy, c-format
+#: authentication.pm:882
+#, c-format
msgid "Domain Windows for authentication : "
-msgstr "Аўтэнтыфікацыя"
+msgstr ""
-#: authentication.pm:899
-#, fuzzy, c-format
+#: authentication.pm:884
+#, c-format
msgid "Domain Admin User Name"
-msgstr "Імя дамену"
+msgstr ""
-#: authentication.pm:900
-#, fuzzy, c-format
+#: authentication.pm:885
+#, c-format
msgid "Domain Admin Password"
-msgstr "Яшчэ раз пароль:"
+msgstr ""
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1027,105 +1127,111 @@ msgid ""
"\n"
msgstr ""
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr ""
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr ""
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr ""
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr ""
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr ""
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr ""
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
-msgstr "SILO"
+msgid "U-Boot/Extlinux with text menu"
+msgstr ""
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "Не хапае дыскавай прасторы ў /boot"
-#: bootloader.pm:1874
-#, fuzzy, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "Куды вы жадаеце ўсталяваць пачатковы загрузчык?"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
"renumbered"
msgstr ""
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
-#: bootloader.pm:2009
-#, fuzzy, c-format
+#: bootloader.pm:2845
+#, c-format
msgid "Re-install Boot Loader"
-msgstr "Усталяванне загрузчыку"
+msgstr ""
-#: common.pm:142
-#, fuzzy, c-format
+#: common.pm:271
+#, c-format
msgid "B"
-msgstr "кб"
+msgstr ""
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "кб"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "Мб"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "Гб"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr ""
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr ""
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d хвілін"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 хвіліна"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d секундаў"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr ""
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1140,12 +1246,12 @@ msgstr ""
msgid "New"
msgstr "Новы"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Разманціраваць"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Манціраванне"
@@ -1155,43 +1261,44 @@ msgstr "Манціраванне"
msgid "Server"
msgstr "Сервак"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Кропка манціравання"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Опцыі"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Выдаліць"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Зроблена"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Памылка"
@@ -1206,80 +1313,71 @@ msgstr ""
msgid "The URL must begin with http:// or https://"
msgstr ""
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Увага!"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Вы жадаеце выкарыстоўваць aboot?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr ""
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Паслужнік: "
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Пункт манціравання:"
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Опцыі: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
+#, c-format
msgid "Partitioning"
-msgstr "Прынтэр"
+msgstr ""
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Чытайце ўважліва"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "Па-першае, зрабіце рэзервовую копію вашых дадзеных"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Выход"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Працягнуць"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Дапамога"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1287,141 +1385,132 @@ msgid ""
"(click on it, then click on \"Resize\")"
msgstr ""
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "Націсніце на раздзел"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Падрабязнасці"
-#: diskdrake/hd_gtk.pm:289
-#, fuzzy, c-format
-msgid "No hard drives found"
-msgstr "Вызначэнне жорсткага дыску"
+#: diskdrake/hd_gtk.pm:326
+#, c-format
+msgid "No hard disk drives found"
+msgstr ""
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Невядома"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
-msgid "Ext3"
-msgstr "Выход"
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
msgid "XFS"
-msgstr "HFS"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Swap"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Вокны"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Іншыя"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Пуста"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Тыпы файлавых сістэмаў:"
-#: diskdrake/hd_gtk.pm:407
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:461
+#, c-format
msgid "This partition is already empty"
-msgstr "Памеры якога раздзела вы жадаеце змяніць?"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "Спачатку зрабіце ‟Unmount”"
-#: diskdrake/hd_gtk.pm:416
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:470
+#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "Выкарыстоўвайце ‟%s” замест"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Тып"
-#: diskdrake/interactive.pm:211
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:210
+#, c-format
msgid "Choose another partition"
-msgstr "Стварэнне новага раздзелу"
+msgstr ""
-#: diskdrake/interactive.pm:211
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:210
+#, c-format
msgid "Choose a partition"
-msgstr "Абярыце дзеянне"
+msgstr ""
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
+#, c-format
msgid "More"
-msgstr "Перанос"
+msgstr ""
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
#, c-format
msgid "Confirmation"
msgstr "Падцьверджаньне"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Сапраўды працягваць?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Выйсці без захавання"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Выйсці без запісу табліцы раздзелаў"
-#: diskdrake/interactive.pm:291
-#, fuzzy, c-format
-msgid "Do you want to save /etc/fstab modifications"
-msgstr "Ці жадаеце пратэсціраваць настройкі?"
+#: diskdrake/interactive.pm:293
+#, c-format
+msgid "Do you want to save the /etc/fstab modifications?"
+msgstr ""
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr "Каб мадыфікацыя табліцы раздзелаў здейснілася, патрэбна перазагрузка."
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1429,42 +1518,42 @@ msgid ""
"Quit anyway?"
msgstr ""
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Ачысціць усё"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Размеркаваць аўтаматычна"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
+msgid "Normal mode"
msgstr "Звычайны рэжым"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
+msgid "Expert mode"
msgstr "Рэжым эксперту"
-#: diskdrake/interactive.pm:335
-#, fuzzy, c-format
-msgid "Hard drive information"
-msgstr "Канфігурацыя сістэмных сэрвісаў"
+#: diskdrake/interactive.pm:337
+#, c-format
+msgid "Hard disk drive information"
+msgstr ""
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "Усе першасныя раздзелы выкарыстаны"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "Дадаць раздзел немагчыма"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
@@ -1473,411 +1562,451 @@ msgstr ""
"Каб зрабіць больш разделаў, выдаліце адзін і стварыце пашыраны раздзел "
"(extended)"
-#: diskdrake/interactive.pm:381
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:384
+#, c-format
msgid "Reload partition table"
-msgstr "Дадатковая табліца раздзелаў"
+msgstr ""
-#: diskdrake/interactive.pm:388
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:391
+#, c-format
msgid "Detailed information"
-msgstr "Інфармацыя аб DMA"
+msgstr ""
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
-msgstr ""
+msgstr "Прагляд"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Змяненне памераў"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Фарматаванне"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Дадаць да RAID"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Дадаць да LVM"
-#: diskdrake/interactive.pm:410
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:417
+#, c-format
msgid "Use"
-msgstr "ID карыстальніка"
+msgstr ""
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Знішчыць"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Выдаліць з RAID"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Выдаліць з LVM"
-#: diskdrake/interactive.pm:415
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:422
+#, c-format
msgid "Remove from dm"
-msgstr "Выдаліць з LVM"
+msgstr ""
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "Змяніць RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Выкарыстоўваць для віртуальнай файлавай сістэмы"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Стварыць"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Не хапае прасторы для стварэння новых раздзелаў"
+msgstr ""
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Стварэнне новага раздзелу"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Пачатковы сектар:"
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Памер у Мб:"
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Тып файлавай сістэмы:"
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Параметры: "
-#: diskdrake/interactive.pm:500
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:516
+#, c-format
msgid "Logical volume name "
-msgstr "Гульня ў косьці"
+msgstr ""
+
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr ""
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr ""
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr ""
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr ""
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
-#: diskdrake/interactive.pm:550
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:605
+#, c-format
msgid "Remove the loopback file?"
-msgstr "/Выдаліць дохлыя файлы"
+msgstr ""
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr "Усе дадзеныя ў раздзеле %s будуць страчаны пасля змены яго тыпу"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Змяніць тып раздзелу"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
+#, c-format
msgid "Which filesystem do you want?"
-msgstr "Які тып пункта жадаеце дадаць?"
+msgstr ""
-#: diskdrake/interactive.pm:594
+#: diskdrake/interactive.pm:650
#, c-format
msgid "Switching from %s to %s"
msgstr ""
-#: diskdrake/interactive.pm:624
+#: diskdrake/interactive.pm:685
#, c-format
msgid "Set volume label"
msgstr ""
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr ""
-#: diskdrake/interactive.pm:630
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:691
+#, c-format
msgid "Label:"
-msgstr "Метка"
+msgstr ""
-#: diskdrake/interactive.pm:651
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:712
+#, c-format
msgid "Where do you want to mount the loopback file %s?"
-msgstr "Куды вы жадаеце манціраваць прыладу %s?"
+msgstr ""
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "Куды вы жадаеце манціраваць прыладу %s?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"Нельга ўсталяваць пункт манціравання, таму што раздел выкарыстоўваецца для\n"
"віртуальнай файлавай сістэмы.\n"
"Спачатку выдаліце віртуальную сістэму"
-#: diskdrake/interactive.pm:687
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:748
+#, c-format
msgid "Where do you want to mount %s?"
-msgstr "Куды вы жадаеце манціраваць прыладу %s?"
+msgstr ""
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "Змяненне памераў"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "Падлік межаў файлавай сістэмы FAT"
-#: diskdrake/interactive.pm:747
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:847
+#, c-format
msgid "This partition is not resizeable"
-msgstr "Памеры якога раздзела вы жадаеце змяніць?"
+msgstr ""
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "Усе дадзеныя ў гэтым раздзеле павінны быць зархіваваныя"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr "Усе дадзеныя ў раздзеле %s будуць страчаны"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Выбар новых памераў"
-#: diskdrake/interactive.pm:762
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:862
+#, c-format
msgid "New size in MB: "
-msgstr "Памер у Мб:"
+msgstr ""
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:805
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
+#, c-format
msgid "Filesystem encryption key"
-msgstr "Тыпы файлавых сістэмаў:"
+msgstr ""
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "Тыпы файлавых сістэмаў:"
+msgstr ""
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr ""
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr ""
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Абярыце існуючы RAID для дадання"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "новы"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Выбярыце існуючы LVM для дабаўлення"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr ""
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
+
+#: diskdrake/interactive.pm:1050
#, c-format
-msgid "LVM name?"
+msgid "\"%s\" already exists"
msgstr ""
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr ""
+
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
"Do you want to move used physical extents on this volume to other volumes?"
msgstr ""
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr ""
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "Гэты раздзел не можа быць выкарыстаны пад віртуальную файлавую сістэму"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Віртуальная файлавая сістэма (loopback)"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Імя віртуальнага раздзелу"
-#: diskdrake/interactive.pm:961
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1122
+#, c-format
msgid "Give a file name"
-msgstr "Уласнае імя"
+msgstr ""
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr ""
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Файл ужо існуе. Выкарыстаць яго?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
+#, c-format
msgid "Mount options"
-msgstr "Опцыі модулю:"
+msgstr ""
-#: diskdrake/interactive.pm:1007
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1168
+#, c-format
msgid "Various"
-msgstr "прылада"
+msgstr ""
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "прылада"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "узровень"
-#: diskdrake/interactive.pm:1076
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1216
+#, c-format
msgid "chunk size in KiB"
-msgstr "памер блоку"
+msgstr ""
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "Будзьце уважлівы. Гэтую аперацыю нельга адмяніць"
-#: diskdrake/interactive.pm:1109
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1250
+#, c-format
msgid "Partitioning Type"
-msgstr "Прынтэр"
+msgstr ""
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr ""
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr "Каб змяненні ўступілі ў дзеянне, необходна перазагрузіцца"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "Табліца размяшчэння прылады %s будзе запісана на дыск"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "Фарматаванне раздзелу %s"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr "Усе дадзеные ў раздзеле %s будуць страчаны пасля фарматавання"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "Праверыць на наяўнасць дрэнных блокаў?"
-#: diskdrake/interactive.pm:1214
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1358
+#, c-format
msgid "Move files to the new partition"
-msgstr "Не хапае прасторы для стварэння новых раздзелаў"
+msgstr ""
-#: diskdrake/interactive.pm:1214
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1358
+#, c-format
msgid "Hide files"
-msgstr "Загрузіць файл(ы)"
+msgstr ""
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1888,135 +2017,134 @@ msgid ""
"the contents of the mounted partition)"
msgstr ""
-#: diskdrake/interactive.pm:1230
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1374
+#, c-format
msgid "Moving files to the new partition"
-msgstr "Не хапае прасторы для стварэння новых раздзелаў"
+msgstr ""
-#: diskdrake/interactive.pm:1234
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1378
+#, c-format
msgid "Copying %s"
-msgstr "Копія:"
+msgstr ""
-#: diskdrake/interactive.pm:1238
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1382
+#, c-format
msgid "Removing %s"
-msgstr "Памеры экрану: %s\n"
+msgstr ""
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr ""
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr ""
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Прылада:"
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr ""
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr ""
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "Літара для DOS-дыску: %s (наўгад)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Тып: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Імя: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Пачатак: сектар %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Памер: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s сектараў"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr ""
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr ""
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Фарматаванне\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Не адфарматавана\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Заманціравана\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1446
#, c-format
msgid "Encrypted"
msgstr ""
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr ""
-#: diskdrake/interactive.pm:1316
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1457
+#, c-format
msgid ""
"Loopback file(s):\n"
" %s\n"
-msgstr "Імя файлу віртуальнай файлавай сістэмы: %s"
+msgstr ""
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2025,27 +2153,27 @@ msgstr ""
"Загрузачны раздзел па дамаўленню\n"
" (для загрузкі MS-DOS, а не для lilo)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Узровень %s\n"
-#: diskdrake/interactive.pm:1320
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1461
+#, c-format
msgid "Chunk size %d KiB\n"
-msgstr "Памер фрагменту %s\n"
+msgstr ""
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "RAID-дыскі %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Імя файлу віртуальнай файлавай сістэмы: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2054,7 +2182,7 @@ msgid ""
"probably leave it alone.\n"
msgstr ""
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2063,104 +2191,90 @@ msgid ""
"dual-booting your system.\n"
msgstr ""
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr ""
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Толькі для чытаньня"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Памер: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Геаметрыя: %s цыліндраў, %s галовак, %s сектараў\n"
-#: diskdrake/interactive.pm:1351
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Імя: "
+
+#: diskdrake/interactive.pm:1492
+#, c-format
msgid "Medium type: "
-msgstr "Тып файлавай сістэмы:"
+msgstr ""
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "LVM-дыскі %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Тып табліцы раздзелаў: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr ""
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr ""
-#: diskdrake/interactive.pm:1401
-#, fuzzy, c-format
-msgid "This encryption key is too simple (must be at least %d characters long)"
-msgstr ""
-"Гэты пароль занадта просты (яго даўжыня павінна быць не меней за %d літараў)"
-
-#: diskdrake/interactive.pm:1402
-#, fuzzy, c-format
-msgid "The encryption keys do not match"
-msgstr "Паролі не супадаюць"
-
-#: diskdrake/interactive.pm:1406
+#: diskdrake/interactive.pm:1544
#, c-format
-msgid "Encryption key (again)"
+msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr ""
#: diskdrake/removable.pm:46
-#, fuzzy, c-format
-msgid "Change type"
-msgstr "Змяніць тып раздзелу"
-
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
#, c-format
-msgid "Cancel"
-msgstr "Адмена"
+msgid "Change type"
+msgstr ""
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr ""
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
-#, fuzzy, c-format
+#, c-format
msgid "Domain Authentication Required"
-msgstr "Аўтэнтыфікацыя"
+msgstr ""
#: diskdrake/smbnfs_gtk.pm:169
-#, fuzzy, c-format
+#, c-format
msgid "Which username"
-msgstr "Імя карыстальніку:"
+msgstr ""
#: diskdrake/smbnfs_gtk.pm:169
-#, fuzzy, c-format
+#, c-format
msgid "Another one"
-msgstr "Мэнэджэр файлаў"
+msgstr ""
#: diskdrake/smbnfs_gtk.pm:178
#, c-format
@@ -2179,46 +2293,46 @@ msgid "Domain"
msgstr "Маёнтак"
#: diskdrake/smbnfs_gtk.pm:206
-#, fuzzy, c-format
+#, c-format
msgid "Search servers"
-msgstr "Адшукаць файлы на дыску"
+msgstr ""
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr ""
-#: do_pkgs.pm:19 do_pkgs.pm:57
-#, fuzzy, c-format
+#: do_pkgs.pm:45 do_pkgs.pm:100
+#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
-msgstr "Зьмяненьні не былі захаваныя. Ці жадаеце працягнуць?"
+msgstr ""
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr ""
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr ""
-#: do_pkgs.pm:39 do_pkgs.pm:77
-#, fuzzy, c-format
+#: do_pkgs.pm:74 do_pkgs.pm:137
+#, c-format
msgid "The following packages need to be installed:\n"
-msgstr "Наступныя пакеты будуць даданы да сістэмы"
+msgstr ""
-#: do_pkgs.pm:241
-#, fuzzy, c-format
+#: do_pkgs.pm:342
+#, c-format
msgid "Installing packages..."
-msgstr "Усталяванне пакету %s"
+msgstr ""
-#: do_pkgs.pm:287 pkgs.pm:281
-#, fuzzy, c-format
+#: do_pkgs.pm:388 pkgs.pm:301
+#, c-format
msgid "Removing packages..."
-msgstr "Прагляд даступных пакетаў"
+msgstr ""
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
@@ -2227,32 +2341,39 @@ msgstr ""
"Памылка: для стварэння новых файлавых сістэмаў не знайдзены адпаведныя \n"
"прылады. Праверце абсталяванне для пошуку імавернай прычыны."
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
msgstr ""
-#: fs/format.pm:100
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "Стварэнне і фарматаванне файла %s"
-#: fs/format.pm:119
-#, fuzzy, c-format
+#: fs/format.pm:202
+#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "Не ведаю як адфарматаваць %s з тыпам %s"
+msgstr ""
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "%s памылка фарматавання %s"
+msgstr ""
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "Не ведаю як адфарматаваць %s з тыпам %s"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s памылка фарматавання %s"
@@ -2263,33 +2384,33 @@ msgid "Circular mounts %s\n"
msgstr "Манціраванне дыску %s\n"
#: fs/mount.pm:85
-#, fuzzy, c-format
+#, c-format
msgid "Mounting partition %s"
-msgstr "Фарматаванне раздзелу %s"
+msgstr ""
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr ""
-#: fs/mount.pm:91 fs/mount.pm:108
-#, fuzzy, c-format
+#: fs/mount.pm:92 fs/mount.pm:109
+#, c-format
msgid "Checking %s"
-msgstr "Праверка правапісу"
+msgstr ""
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "памылка разманціравання %s: %s"
-#: fs/mount.pm:140
-#, fuzzy, c-format
+#: fs/mount.pm:141
+#, c-format
msgid "Enabling swap partition %s"
-msgstr "Фарматаванне раздзелу %s"
+msgstr ""
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
+msgid "Enable POSIX Access Control Lists"
msgstr ""
#: fs/mount_options.pm:116
@@ -2305,7 +2426,7 @@ msgstr ""
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
@@ -2320,19 +2441,19 @@ msgstr ""
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr ""
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
@@ -2346,22 +2467,22 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr ""
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr ""
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr ""
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr ""
#: fs/mount_options.pm:147
@@ -2384,56 +2505,56 @@ msgstr ""
msgid "Give read-only access to ordinary users"
msgstr ""
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Дубляванне пункту манціравання %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "няма даступных раздзелаў"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr ""
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Абярыце пункты манціравання"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Выбар раздзелаў для фарматавання"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
"you can lose data)"
msgstr ""
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr ""
"Не хапае месца ў буферы падкачкі (swap) для ўсталявання, павялічце яго."
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"Вы павінны мець каранёвы раздзел.\n"
"Для гэтага стварыце раздзел (альбо адзначце ўжо існуючы).\n"
"Потым абярыце ‟Кропка манціравання” і ўстанавіце яе ў ‛/’"
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2444,92 +2565,55 @@ msgstr ""
"\n"
"Усё адно працягваць?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "Выкарыстоўваць незанятую прастору"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "Не хапае прасторы для стварэння новых раздзелаў"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "Выкарыстоўваць існуючы раздзел"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "Няма існуючых раздзелаў, якія можна выкарыстаць"
-#: fs/partitioning_wizard.pm:103
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
+msgid "Computing the size of the Microsoft Windows® partition"
msgstr ""
-"Выкарыстоўваць раздзел Microsoft Windows® для віртуальнай файлавай сістэмы"
-
-#: fs/partitioning_wizard.pm:106
-#, fuzzy, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Памеры якога раздзела вы жадаеце змяніць?"
-
-#: fs/partitioning_wizard.pm:108
-#, c-format
-msgid "Choose the sizes"
-msgstr "Выбар памераў"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "Каранёвы раздзел ў Мб: "
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Памер swap раздзелу ў Мб:"
-#: fs/partitioning_wizard.pm:119
+#: fs/partitioning_wizard.pm:201
#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-
-#: fs/partitioning_wizard.pm:127
-#, fuzzy, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "Выкарыстоўваць незанятую прастору на раздзеле Windows"
+msgstr ""
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Памеры якога раздзела вы жадаеце змяніць?"
-#: fs/partitioning_wizard.pm:143
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
msgstr ""
-"У праграмы змены памераў раздзела FAT не атрымалася\n"
-"апрацаваць Ваш раздзел, памылка: %s"
-
-#: fs/partitioning_wizard.pm:146
-#, fuzzy, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "Выкарыстоўваць незанятую прастору на раздзеле Microsoft Windows®"
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:215
#, c-format
-msgid ""
-"Your Microsoft Windows® partition is too fragmented. Please reboot your "
-"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+msgid "Failed to find the partition to resize (%d choices)"
msgstr ""
-"Ваш раздзел з Microsoft Windows® занадта фрагментаваны. \n"
-"Рэкамендуем спачатку запусціць праграму ‟defrag”"
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2540,8 +2624,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2550,80 +2634,75 @@ msgid ""
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Далей"
-#: fs/partitioning_wizard.pm:168
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:237
+#, c-format
msgid "Partitionning"
-msgstr "Прынтэр"
+msgstr ""
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr "Якую прастору захаваць для Microsoft Windows®? раздзел %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Памер"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "Вылічэнне межаў файлавай сістэмы Microsoft Windows®"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "Аўтазмяненне памераў не атрымалася для раздзелу FAT %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr ""
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Выдаліць Windows™"
-#: fs/partitioning_wizard.pm:203
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:273
+#, c-format
msgid "Erase and use entire disk"
-msgstr "Сцёрці дадзеныя на ўсім дыску"
+msgstr ""
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
-msgstr "На які з маючыхся жорсткіх дыскаў Вы жадаеце ўсталяваць Linux?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr "Усе існуючыя раздзелы на дыску %s і дадзеныя на іх будуць страчаны"
-#: fs/partitioning_wizard.pm:220
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:298
+#, c-format
msgid "Custom disk partitioning"
-msgstr "Вылічэнне межаў файлавай сістэмы Windows"
+msgstr ""
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Выкарыстоўваць fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2632,55 +2711,70 @@ msgstr ""
"Вы можаце цяпер разбіць ваш дыск %s\n"
"Па заканчэнні не забудзьцеся захаваць змяненні, скарыстаўшы ‛w’"
-#: fs/partitioning_wizard.pm:269
-#, fuzzy, c-format
-msgid "I can not find any room for installing"
-msgstr "Дадаць раздзел немагчыма"
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr ""
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
+#, c-format
+msgid "I cannot find any room for installing"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "Майстар падрыхтоўкі раздзелаў DrakX знайшоў наступныя варыянты:"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr ""
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Падрыхтоўка разделаў не ўдалася: %s"
-#: fs/type.pm:388
-#, fuzzy, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
-msgstr "Вы не можаце разбіваць на разделы, памер якіх меней за 32 Мб"
+#: fs/type.pm:431
+#, c-format
+msgid "You cannot use JFS for partitions smaller than 16MB"
+msgstr ""
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "Вы не можаце разбіваць на разделы, памер якіх меней за 32 Мб"
-#: fsedit.pm:24
-#, fuzzy, c-format
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+
+#: fsedit.pm:25
+#, c-format
msgid "simple"
-msgstr "Тэма"
+msgstr ""
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr ""
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "сэервер"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr ""
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2689,502 +2783,467 @@ msgid ""
"Do you agree to lose all the partitions?\n"
msgstr ""
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Пункт манціравання павінен пачынацца з /"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr ""
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Ужо ёсць раздзел з пунктам манціравання %s\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
-msgstr ""
-
-#: fsedit.pm:437
-#, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
+"Please be sure to add a separate /boot partition"
msgstr ""
-#: fsedit.pm:439
+#: fsedit.pm:478 fsedit.pm:489
#, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
+msgid "You cannot use an encrypted filesystem for mount point %s"
msgstr ""
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Гэты каталог павінен знаходзіцца ўнутры каранёвай файлавай сістэмы"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
-#: fsedit.pm:451
+#: fsedit.pm:562
#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr ""
-
-#: fsedit.pm:516
-#, fuzzy, c-format
msgid "Not enough free space for auto-allocating"
-msgstr "Не хапае прасторы для стварэння новых раздзелаў"
+msgstr ""
-#: fsedit.pm:518
-#, fuzzy, c-format
+#: fsedit.pm:564
+#, c-format
msgid "Nothing to do"
-msgstr "Нічога"
+msgstr ""
#: harddrake/data.pm:62
-#, fuzzy, c-format
+#, c-format
msgid "SATA controllers"
-msgstr "Кіраванне"
+msgstr ""
-#: harddrake/data.pm:71
-#, fuzzy, c-format
+#: harddrake/data.pm:72
+#, c-format
msgid "RAID controllers"
-msgstr "Кіраванне"
+msgstr ""
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr ""
-#: harddrake/data.pm:92
-#, fuzzy, c-format
+#: harddrake/data.pm:93
+#, c-format
msgid "Card readers"
-msgstr "Рэжым прайгравання"
+msgstr ""
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr ""
-#: harddrake/data.pm:110
-#, fuzzy, c-format
+#: harddrake/data.pm:111
+#, c-format
msgid "PCMCIA controllers"
-msgstr "Кіраванне"
+msgstr ""
-#: harddrake/data.pm:119
-#, fuzzy, c-format
+#: harddrake/data.pm:120
+#, c-format
msgid "SCSI controllers"
-msgstr "Кіраванне"
+msgstr ""
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr ""
-#: harddrake/data.pm:137
-#, fuzzy, c-format
+#: harddrake/data.pm:138
+#, c-format
msgid "USB ports"
-msgstr "USB прылады"
+msgstr ""
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr ""
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr ""
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Гнуткі дыск"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr ""
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Жорскі дыск"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr ""
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr ""
-#: harddrake/data.pm:222
-#, fuzzy, c-format
+#: harddrake/data.pm:223
+#, c-format
msgid "CD/DVD burners"
-msgstr "CDDB сервакі"
+msgstr ""
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr ""
-#: harddrake/data.pm:242
-#, fuzzy, c-format
+#: harddrake/data.pm:243
+#, c-format
msgid "Tape"
-msgstr "Тып"
+msgstr ""
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr ""
-#: harddrake/data.pm:262
-#, fuzzy, c-format
+#: harddrake/data.pm:263
+#, c-format
msgid "Videocard"
-msgstr "Відэа"
+msgstr ""
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr ""
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr ""
-#: harddrake/data.pm:289
-#, fuzzy, c-format
+#: harddrake/data.pm:290
+#, c-format
msgid "Other MultiMedia devices"
-msgstr "Мульцімедыя"
+msgstr ""
-#: harddrake/data.pm:298
-#, fuzzy, c-format
+#: harddrake/data.pm:299
+#, c-format
msgid "Soundcard"
-msgstr "Гук"
+msgstr ""
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr ""
-#: harddrake/data.pm:327
-#, fuzzy, c-format
+#: harddrake/data.pm:328
+#, c-format
msgid "Processors"
-msgstr "Працэсар"
+msgstr ""
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr ""
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr ""
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr ""
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr ""
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr ""
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr ""
-#: harddrake/data.pm:393
-#, fuzzy, c-format
+#: harddrake/data.pm:394
+#, c-format
msgid "Ethernetcard"
-msgstr "Іншае"
+msgstr ""
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Мадэм"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr ""
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Памяць"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Прынтэр"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr ""
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Джойсьцік"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Клавіятура"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr ""
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Мыш"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr ""
-#: harddrake/data.pm:520
-#, fuzzy, c-format
+#: harddrake/data.pm:522
+#, c-format
msgid "UPS"
-msgstr "HFS"
+msgstr ""
-#: harddrake/data.pm:529
-#, fuzzy, c-format
+#: harddrake/data.pm:531
+#, c-format
msgid "Scanner"
-msgstr "Прайгравальнік дыскаў"
+msgstr ""
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr ""
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr ""
-#: harddrake/sound.pm:303
-#, fuzzy, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Праверка параметраў настройкі"
-
-#: harddrake/sound.pm:366
-#, c-format
-msgid "Enable PulseAudio"
-msgstr ""
-
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
+msgid "Couldn't install the required packages"
msgstr ""
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Enable user switching for audio applications"
+msgid "Please check the repositories are correctly configured"
msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:462
#, c-format
-msgid "Use Glitch-Free mode"
+msgid "No known driver"
msgstr ""
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:463
#, c-format
-msgid "Reset sound mixer to default values"
+msgid "There's no known driver for your sound card (%s)"
msgstr ""
-#: harddrake/sound.pm:390
-#, fuzzy, c-format
-msgid "Trouble shooting"
-msgstr "Настройкі мышы"
-
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:517
#, fuzzy, c-format
-msgid "No alternative driver"
-msgstr "Выкарыстаць альтэрнатыўную прыладу"
+msgid "You need to reboot for changes to take effect"
+msgstr "Каб змяненні ўступілі ў дзеянне, необходна перазагрузіцца"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:522
#, c-format
msgid ""
-"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
-"currently uses \"%s\""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
msgstr ""
-#: harddrake/sound.pm:405
-#, fuzzy, c-format
-msgid "Sound configuration"
-msgstr "Настройка драйверу Sun"
-
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:527
#, c-format
msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
msgstr ""
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#: harddrake/sound.pm:541
#, c-format
-msgid ""
-"\n"
-"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
+msgid "Select the sound server"
msgstr ""
-#: harddrake/sound.pm:414
+#: harddrake/sound.pm:551
#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
-"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
-"\n"
-"It also provides a much higher API than OSS.\n"
-"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
+msgid "PulseAudio"
msgstr ""
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, fuzzy, c-format
-msgid "Driver:"
-msgstr "Прылада %d"
+#: harddrake/sound.pm:552
+#, c-format
+msgid "PulseAudio with Glitch-Free mode"
+msgstr ""
-#: harddrake/sound.pm:442
+#: harddrake/sound.pm:553
#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
-"\n"
-"It has been reported to oops the kernel on unloading.\n"
-"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
+msgid "PipeWire with WirePlumber"
msgstr ""
-#: harddrake/sound.pm:450
+#: harddrake/sound.pm:554
#, c-format
-msgid "No open source driver"
+msgid "PipeWire with PipeWire Media Session"
msgstr ""
-#: harddrake/sound.pm:451
+#: harddrake/sound.pm:561
#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
+msgid "Reset sound mixer to default values"
msgstr ""
-#: harddrake/sound.pm:454
+#: harddrake/sound.pm:565
#, c-format
-msgid "No known driver"
+msgid "Troubleshooting"
msgstr ""
-#: harddrake/sound.pm:455
+#: harddrake/sound.pm:571
#, c-format
-msgid "There's no known driver for your sound card (%s)"
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
msgstr ""
-#: harddrake/sound.pm:470
+#: harddrake/sound.pm:581
#, c-format
-msgid "Sound trouble shooting"
+msgid "No alternative driver"
msgstr ""
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
+#: harddrake/sound.pm:582
#, c-format
msgid ""
-"The classic bug sound tester is to run the following commands:\n"
-"\n"
-"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
-"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
-"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
-"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
-"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
-"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
+"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
+"currently uses \"%s\""
msgstr ""
-#: harddrake/sound.pm:500
+#: harddrake/sound.pm:589
#, c-format
-msgid "Let me pick any driver"
+msgid "Sound configuration"
msgstr ""
-#: harddrake/sound.pm:503
+#: harddrake/sound.pm:603
#, c-format
-msgid "Choosing an arbitrary driver"
+msgid "Sound troubleshooting"
msgstr ""
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
+#: harddrake/sound.pm:606
#, c-format
msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
+"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
+"\n"
+"\n"
+"\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
+"\n"
+"\n"
+"\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
+"\n"
+"\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
+"\n"
+"\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
+"\n"
+"\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
+"\n"
+"\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
+"\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
#: harddrake/v4l.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Auto-detect"
-msgstr "Аўтаматычнае вызначэнне"
+msgstr ""
#: harddrake/v4l.pm:97 harddrake/v4l.pm:285 harddrake/v4l.pm:337
-#, fuzzy, c-format
+#, c-format
msgid "Unknown|Generic"
-msgstr "Агульны"
+msgstr ""
#: harddrake/v4l.pm:130
#, c-format
@@ -3202,83 +3261,86 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
#: harddrake/v4l.pm:478
-#, fuzzy, c-format
+#, c-format
msgid "Card model:"
-msgstr "Рэжым прайгравання"
+msgstr ""
#: harddrake/v4l.pm:479
-#, fuzzy, c-format
+#, c-format
msgid "Tuner type:"
-msgstr "Тып мышы: %s\n"
+msgstr ""
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "Ок"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Так"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "Не"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Выбар файла"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Дадаць"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Зьмяненьне"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Скончыць"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "прылада"
-#: interactive/curses.pm:556 ugtk2.pm:872
-#, fuzzy, c-format
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
+#, c-format
msgid "No file chosen"
-msgstr "абіральнік файла"
+msgstr ""
-#: interactive/curses.pm:560 ugtk2.pm:876
-#, fuzzy, c-format
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
+#, c-format
msgid "You have chosen a directory, not a file"
-msgstr "Назва \"/\" можа быць толькі каталёгам, а ня ключом"
+msgstr ""
-#: interactive/curses.pm:562 ugtk2.pm:878
-#, fuzzy, c-format
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
+#, c-format
msgid "No such directory"
-msgstr "Ня тэчка"
+msgstr ""
-#: interactive/curses.pm:562 ugtk2.pm:878
-#, fuzzy, c-format
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
+#, c-format
msgid "No such file"
-msgstr "Няма гэткага ключа '%s'\n"
+msgstr ""
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr ""
@@ -3301,24 +3363,24 @@ msgid ""
msgstr ""
#: interactive/stdio.pm:70
-#, fuzzy, c-format
+#, c-format
msgid "Your choice? (0/1, default `%s') "
-msgstr "Ваш выбар? (змоўчанне %s) "
+msgstr ""
#: interactive/stdio.pm:97
-#, fuzzy, c-format
+#, c-format
msgid "Button `%s': %s"
-msgstr "Клявіша %d:"
+msgstr ""
#: interactive/stdio.pm:98
-#, fuzzy, c-format
+#, c-format
msgid "Do you want to click on this button?"
-msgstr "Вы жадаеце выкарыстоўваць aboot?"
+msgstr ""
#: interactive/stdio.pm:110
-#, fuzzy, c-format
+#, c-format
msgid "Your choice? (default `%s'%s) "
-msgstr "Ваш выбар? (змоўчанне %s) "
+msgstr ""
#: interactive/stdio.pm:110
#, c-format
@@ -3353,1248 +3415,1262 @@ msgstr ""
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Андора"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "Злучаныя Арабскія Эміраты"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Афганістан"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Анцігуа і Барбуда"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Ангулла"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Альбанія"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Арменія"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Нідэрлянская Анцілія"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Ангола"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Антарктыка"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Аргенціна"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "Амэрыканскае Самоа"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Аўстрыя"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Аўстралія"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Аруба"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Азарбаджан"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Босьнія й Герцэгавіна"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Барбадос"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Бангладэш"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Бельгія"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Буркіна Хвасо"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "Баўгарыя"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Бахрэйн"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Бурундзі"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Бенін"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Бермуды"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Брунэі Дурасалям"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Балівія"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Бразылія"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Багамы"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Бутан"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Выспа Боўвіт"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Батсвана"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "Беларусь"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Беліз"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Канада"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Какосавыя выспы"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr ""
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "Цэнтральная Афрыканская Рэспубліка"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr ""
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Щвэйцарыя"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Котэ дэ Інворэ"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Выспы Кука"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Чылі"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Камэрун"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "Кітай"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Калюмбія"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Коста-Рыка"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Сэрбія і Чарнагорыя"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Куба"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Капа Вэрдэ"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Выспа Расства"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Кіпар"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Чэская Рэспубліка"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Нямецкі"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Джыботу"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Данія"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Дамініка"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Дамініканская Рэспубліка"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Альджыр"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Эквадор"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Курляндыя"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Эгіпэт"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Заходняя Сахара"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Эрытрыя"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Гішпанія"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Эпіопія"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Фінляндыя"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Хвіджі"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Фалклендскія астравы (Мальвіны)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Мікранэзыян"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Выспы Фаро"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "Францыя"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Габон"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Злучанае Каралеўства"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Грэнада"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Грузыя"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Француская Гвіяна"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Гана"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Гібралтар"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Грынляндыя"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Гамбія"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Гвінея"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Гвадэлупа"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Экватарыяльная Гвінэя"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Грэцыя"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
-msgstr ""
+msgstr "Астравы Паўднёвая Джорджыя і Паўднёвы Сэндвіч"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Гватэмала"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Гуам"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Гвінэя-Бісаў"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Гайяна"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
-msgstr ""
+msgstr "Сян Ган"
-#: lang.pm:303
-#, fuzzy, c-format
+#: lang.pm:393
+#, c-format
msgid "Heard and McDonald Islands"
-msgstr "Выспы Паўночнае Мар'яны"
+msgstr ""
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Гандурас"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Харватыя"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Гаіці"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Вугоршчына"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "Інданэзыя"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Ірляндыя"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Габрэйшчына"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Індыя"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "Брытанская тэрыторыя Індыйскага акіяна"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Ірак"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Іран"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Ісьляндыя"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "Італія"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Ямайка"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "Іярданія"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Японія"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Кенія"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Кыргізтан"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Камбоджа"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Кірыбаці"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Камарас"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
-msgstr ""
+msgstr "Святыя Кітс і Невіс"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Паўночная Карэя"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Карэя"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Кувэйт"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Кайманавыя выспы"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Казахстан"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Лаос"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Лібанон"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "Санта Лючыя"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Ліхтэнштайн"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Шры Ланка"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Лібэрыя"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Лісота"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Жамойція"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Люксембург"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Лівонія"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Лібія"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Марока"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Манака"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Малдова"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Мадагаскар"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Маршалавы выспы"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Македонія"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Малі"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Маянмар"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Манголія"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Выспы Паўночнае Мар'яны"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Марцінік"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Маўрытанія"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Мансэрат"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Мальта"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Марыціўс"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Мальды"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Маляві"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Мэксыка"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Малазыя"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Мазамбік"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Намібія"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Новая Калядонія"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Нігер"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Норфалскія выспы"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Нігерыя"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Нікарагуа"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Нідэрлянды"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Нарвэгія"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Нэпал"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Наўру"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Ню"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Новая Зэляндыя"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Аман"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Панама"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Перу"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "Француская Палінэзыя"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Папуа Новая Гвінэя"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Хвіліпіны"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Пакістан"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Польшча"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Сэн-П'ер і Мікелон"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Паткаірн"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Пуэрта Рыка"
-#: lang.pm:385
-#, fuzzy, c-format
+#: lang.pm:475
+#, c-format
msgid "Palestine"
-msgstr "Панэль"
+msgstr ""
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Партугалія"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Парагвай"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Палаў"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Катар"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Перааб'яднаньне"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Румынія"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Расея"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Руанда"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Савудаўская Арабія"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Саламонавы выспы"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Сейшэлы"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Судан"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "Швэцыя"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Сынгапур"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Востраў Сьвятой Алены"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Славенія"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr ""
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Словакія"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "С'ера Ліонэ"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "Сан Марына"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Сенегал"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Самалі"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Сарынам"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "Саа Тамэ й Прынсыпэ"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "Эль Сальвадор"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Сырыя"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Швазіланд"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Выспы Таркс і Кайкас"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Чад"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "Паўднёвыя Францускія Тэрыторыі"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Тога"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Тайланд"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Такжыкістан"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Такелаў"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Усходні Тымор"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Туркменістан"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Тунісія"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Тонга"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Турцыя"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Трынідад і Табага"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Тувалю"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Тайвань"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Танзаныя"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Украіна"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Уганда"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "Няістотна блізкія да Злучаных штатаў выспы"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "Злучаныя Штаты"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Уругвай"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Узбэкістан"
-#: lang.pm:435
-#, fuzzy, c-format
+#: lang.pm:525
+#, c-format
msgid "Vatican"
-msgstr "Латвійская:"
+msgstr ""
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
-msgstr ""
+msgstr "Сэйнт-Вінсэнт і Грэнадзіны"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Венэсуэла"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr ""
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr ""
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Уэтнам"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Ванааці"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Ўоліс і Футуна"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Самоа"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Йемен"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Майотэ"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "Паўднёвая Афрыка"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Замбія"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Зімбабве"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "Сардэчна запрашаем у %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr ""
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr ""
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr ""
+#. -PO: Only write something if needed:
#: messages.pm:11
#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr ""
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr ""
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4608,16 +4684,23 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4625,15 +4708,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4642,51 +4725,66 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
+"you."
+msgstr ""
+
+#: messages.pm:68
+#, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr ""
+
+#: messages.pm:70
+#, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. %s\n"
+"entities.\n"
"Most of these licenses allow you to use, duplicate, adapt or redistribute "
"the components which \n"
"they cover. Please read carefully the terms and conditions of the license "
"agreement for each component \n"
"before using any component. Any question on a component license should be "
"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr ""
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr ""
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4698,153 +4796,59 @@ msgid ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
-msgstr ""
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"For any question on this document, please contact Mageia."
msgstr ""
-#: messages.pm:107
+#: messages.pm:102
#, c-format
msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"Warning: Free Software may not necessarily be patent free, and some Free\n"
+"Software included may be covered by patents in your country. For example, "
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
#: messages.pm:112
#, c-format
msgid ""
-"Warning: Free Software may not necessarily be patent free, and some Free\n"
-"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
-#: messages.pm:120
+#: messages.pm:114
#, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"For information on fixes which are available for this release of Mageia,\n"
+"consult the Errata available from:\n"
+"%s"
msgstr ""
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:116
#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
-"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
msgstr ""
#: modules/interactive.pm:19
-#, fuzzy, c-format
+#, c-format
msgid "This driver has no configuration parameter!"
-msgstr "Настройка драйверу Sun"
+msgstr ""
#: modules/interactive.pm:22
-#, fuzzy, c-format
+#, c-format
msgid "Module configuration"
-msgstr "Настройка IDE"
+msgstr ""
#: modules/interactive.pm:22
-#, fuzzy, c-format
+#, c-format
msgid "You can configure each parameter of the module here."
-msgstr "Тут Вы можаце настроіць зьнешні выгляд панэлі"
+msgstr ""
#: modules/interactive.pm:64
#, c-format
@@ -4867,24 +4871,24 @@ msgid "See hardware info"
msgstr "Гл. апісанне абсталявання"
#: modules/interactive.pm:83
-#, fuzzy, c-format
+#, c-format
msgid "Installing driver for USB controller"
-msgstr "Усталяванне драйверу для %s карты %s"
+msgstr ""
#: modules/interactive.pm:84
-#, fuzzy, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "Усталяванне драйверу для %s карты %s"
+#, c-format
+msgid "Installing driver for firewire controller \"%s\""
+msgstr ""
#: modules/interactive.pm:85
-#, fuzzy, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "Усталяванне драйверу для %s карты %s"
+#, c-format
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr ""
#: modules/interactive.pm:86
-#, fuzzy, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "Усталяванне драйверу для %s карты %s"
+#, c-format
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr ""
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -4963,35 +4967,35 @@ msgstr ""
"Загрузка модулю %s не прайшла.\n"
"Жадаеце паспрабаваць з іншымі параметрамі?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr ""
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
msgstr ""
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Настроіць паролі"
+msgstr ""
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "памылка манціравання: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Пашыраны раздзел не падтрымліваецца гэтай платформай"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
@@ -4999,93 +5003,93 @@ msgstr ""
"Адзіны выхад у тым, каб перамясціць першасныя раздзелы так, каб дзірка ішла\n"
"адразу за пашыраным (extended) раздзелам"
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
msgstr ""
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr ""
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr ""
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr ""
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
"configuration."
msgstr ""
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr ""
-#: pkgs.pm:269 pkgs.pm:270
-#, fuzzy, c-format
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
msgid "Unused hardware support"
-msgstr "Гл. апісанне абсталявання"
+msgstr ""
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr ""
-#: raid.pm:42
-#, fuzzy, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
-msgstr "Не атрымліваецца дадаць раздзел на _адфармаціраваны_ RAID md%d"
+#: raid.pm:59
+#, c-format
+msgid "Cannot add a partition to _formatted_ RAID %s"
+msgstr ""
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "Недастаткова раздзелаў для RAID узроўня %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr ""
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr ""
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr ""
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr ""
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr ""
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr ""
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr ""
@@ -5106,9 +5110,9 @@ msgid "Accept icmp echo."
msgstr ""
#: security/help.pm:17
-#, fuzzy, c-format
+#, c-format
msgid "Allow autologin."
-msgstr "Аўтаматычны ўваход у сістэму"
+msgstr ""
#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
#: security/help.pm:21
@@ -5183,8 +5187,8 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
#: security/help.pm:63
@@ -5222,14 +5226,14 @@ msgid ""
msgstr ""
#: security/help.pm:80
-#, fuzzy, c-format
+#, c-format
msgid "Security Alerts:"
-msgstr "Бясьпека"
+msgstr ""
#: security/help.pm:82
-#, fuzzy, c-format
+#, c-format
msgid "Enable IP spoofing protection."
-msgstr "Дазволіць засцярогу ад абразання"
+msgstr ""
#: security/help.pm:84
#, c-format
@@ -5260,7 +5264,7 @@ msgstr ""
#: security/help.pm:94
#, c-format
-msgid "Activate ethernet cards promiscuity check."
+msgid "Activate Ethernet cards promiscuity check."
msgstr ""
#: security/help.pm:96
@@ -5296,9 +5300,9 @@ msgid ""
msgstr ""
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "Пароль для root"
+msgstr ""
#: security/help.pm:109
#, c-format
@@ -5464,9 +5468,9 @@ msgid "Export display when passing from root to the other users"
msgstr ""
#: security/l10n.pm:21
-#, fuzzy, c-format
+#, c-format
msgid "Allow X Window connections"
-msgstr "Уласьцівасьці акна"
+msgstr ""
#: security/l10n.pm:22
#, c-format
@@ -5479,9 +5483,9 @@ msgid "Authorize all services controlled by tcp_wrappers"
msgstr ""
#: security/l10n.pm:24
-#, fuzzy, c-format
+#, c-format
msgid "Chkconfig obey msec rules"
-msgstr "Настройка службаў"
+msgstr ""
#: security/l10n.pm:25
#, c-format
@@ -5499,9 +5503,9 @@ msgid "Name resolution spoofing protection"
msgstr ""
#: security/l10n.pm:28
-#, fuzzy, c-format
+#, c-format
msgid "Enable IP spoofing protection"
-msgstr "Дазволіць засцярогу ад абразання"
+msgstr ""
#: security/l10n.pm:29
#, c-format
@@ -5544,9 +5548,9 @@ msgid "Sulogin(8) in single user level"
msgstr ""
#: security/l10n.pm:37
-#, fuzzy, c-format
+#, c-format
msgid "No password aging for"
-msgstr "Няма паролю"
+msgstr ""
#: security/l10n.pm:38
#, c-format
@@ -5554,9 +5558,9 @@ msgid "Set password expiration and account inactivation delays"
msgstr ""
#: security/l10n.pm:39
-#, fuzzy, c-format
+#, c-format
msgid "Password history length"
-msgstr "Настроіць паролі"
+msgstr ""
#: security/l10n.pm:40
#, c-format
@@ -5564,9 +5568,9 @@ msgid "Password minimum length and number of digits and upcase letters"
msgstr ""
#: security/l10n.pm:41
-#, fuzzy, c-format
+#, c-format
msgid "Root umask"
-msgstr "Пароль для root"
+msgstr ""
#: security/l10n.pm:42
#, c-format
@@ -5579,9 +5583,9 @@ msgid "Shell timeout"
msgstr ""
#: security/l10n.pm:44
-#, fuzzy, c-format
+#, c-format
msgid "User umask"
-msgstr "Карыстальнікі"
+msgstr ""
#: security/l10n.pm:45
#, c-format
@@ -5684,11 +5688,11 @@ msgid "Standard"
msgstr "Стандартны"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "Бясьпека"
+msgstr ""
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -5697,14 +5701,14 @@ msgid ""
"on your own."
msgstr ""
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
"to connect to the Internet as a client."
msgstr ""
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -5715,48 +5719,48 @@ msgid ""
"Internet, you should choose a lower level."
msgstr ""
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
-msgid "Security"
-msgstr "Бясьпека"
-
-#: security/level.pm:51
-#, fuzzy, c-format
msgid "DrakSec Basic Options"
-msgstr "Пазначце параметры"
+msgstr ""
-#: security/level.pm:54
-#, fuzzy, c-format
+#: security/level.pm:66
+#, c-format
msgid "Please choose the desired security level"
-msgstr "калі ласка, пазначце тып вашай мышы."
+msgstr ""
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr ""
-#: security/level.pm:61
-#, fuzzy, c-format
+#: security/level.pm:73
+#, c-format
msgid "Security Administrator:"
-msgstr "Сістэмнае адміністраваньне"
+msgstr ""
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
msgstr ""
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr ""
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "Anacron, перыядычны камандны планавальнік."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -5766,7 +5770,7 @@ msgstr ""
"статыстыкі.\n"
"Яго можна выкарыстоўваць для выключэння машыны пры нізкім зарадзе батарэі."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -5775,7 +5779,22 @@ msgstr ""
"Каманды, якія выконваюцца, фіксуюцца па камандзе і часе яе выканання\n"
"і выконваюцца групы каманд, калі загрузка памяці ніжэй дастатковай."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr ""
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -5788,18 +5807,18 @@ msgstr ""
"стандартнага\n"
"UNIX cron, уключаючы лепшы ўзровень бяспекі і моцныя канфігурацыйныя опцыі."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr ""
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -5807,7 +5826,20 @@ msgid ""
"It is used by GNOME and KDE"
msgstr ""
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -5820,19 +5852,19 @@ msgstr ""
"капіраванні і ўстаўцы,\n"
"і ўключае падтрымку ўсплываючых (pop-up) меню ў тэкставым рэжыме."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
"new/changed hardware."
msgstr ""
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
@@ -5840,7 +5872,7 @@ msgstr ""
"Apache - гэта World Wide Web сэервер. Ён выкарыстоўзваеца для абслугоўвання\n"
"HTML файлаў і CGI."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -5857,14 +5889,23 @@ msgstr ""
"блакуем\n"
"усе службы, за якія ён адказвае."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -5876,26 +5917,31 @@ msgstr ""
"kbdconfig.\n"
"Вы можаце зрабіць даступнай яе для шматлікіх машынаў."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
"/usr/include/linux/{autoconf,version}.h"
msgstr ""
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr ""
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
"at boot-time to maintain the system configuration."
msgstr ""
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -5904,28 +5950,48 @@ msgstr ""
"lpd - гэты дэман друку, патрэбны для карэктнай працы lpr. Гэта\n"
"сэервер, які кіруе працай прынтэру(аў)."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
"available server."
msgstr ""
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
"names to IP addresses."
msgstr ""
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -5934,7 +6000,7 @@ msgstr ""
"Манціраваць і разманціраваць усе сеткавыя файлавыя сістэмы (NFS),\n"
" SMB (Lan Manager/Windows) і NCP (Netware) пункты манціравання."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -5943,7 +6009,17 @@ msgstr ""
"Актывізаваць/дэактывізаваць усе сеткавыя інтэрфейсы, сканфігураваныя для\n"
"старту пры загрузцы сістэмы."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -5954,7 +6030,7 @@ msgstr ""
"Гэтая служба забяспечваецца NFS сэерверам, які канфігурыруеца праз\n"
"/etc/exports файл."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -5963,24 +6039,29 @@ msgstr ""
"NFS - гэта вядомы пратакол для доступу да файлаў праз TCP/IP\n"
"сеткі. Гэтая служба ўплывае на наяўнасць сувязі паміж NFS файламі."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
"and Xorg at boot."
msgstr ""
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr ""
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -5992,7 +6073,7 @@ msgstr ""
"мадэмы ў наўтбуках. Вам няма неабходнасці канфігураваць іх, калі на вашай\n"
"машыне іх няма, ці яна не наўтбук."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6005,14 +6086,19 @@ msgstr ""
"выконвацца\n"
"на машынах якія працуюць як сэерверы для пратаколаў, якія скарыстоўваюць RPC."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
"one machine to another."
msgstr ""
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6021,14 +6107,19 @@ msgstr ""
"Захаваць і аднавіць сістэмны энтрапійны пул для высокай якасці\n"
"генерацыі выпадковых лікаў."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr ""
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6039,7 +6130,7 @@ msgstr ""
"аднаўляцца праз RIP пратакол. RIP выкарыстоўваецца ў малых сетках, больш\n"
"складаныя пратаколы маршрутызацыі - у вялікіх сетках."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6048,7 +6139,14 @@ msgstr ""
"Пратакол rstat дазваляе карыстальнікам сеткі атрымліваць\n"
"памеры нагрузкі для кожнай машыны сеткі."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
@@ -6057,7 +6155,7 @@ msgstr ""
"Пратакол rusers дазваляе карыстальнікам сеткі вызначаць, хто\n"
"ўвайшоў і працуе на машынах ў сетцы."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6066,32 +6164,47 @@ msgstr ""
"Пратакол rwho дае магчымасць карыстальнікам атрымаць спіс ўсіх\n"
"карыстальнікаў, увайшоўшых на машыну, выканаў rwho дэман (падобны на finger)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr ""
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6101,115 +6214,122 @@ msgstr ""
"паведамленні\n"
"ў розныя файлы статыстыкі. Гэта вельмі добра для агляду працы розных службаў."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr ""
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr ""
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr ""
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Друкаваньне"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Інтэрнэт"
-#: services.pm:127
-#, fuzzy, c-format
-msgid "File sharing"
-msgstr "Мэнэджэр файлаў"
+#: services.pm:175
+#, c-format
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr ""
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "Сістэма"
-#: services.pm:134
-#, fuzzy, c-format
+#: services.pm:185
+#, c-format
msgid "Remote Administration"
-msgstr "Сістэмнае адміністраваньне"
+msgstr ""
-#: services.pm:142
-#, fuzzy, c-format
+#: services.pm:194
+#, c-format
msgid "Database Server"
-msgstr "Праграма гуказапісу"
+msgstr ""
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Сэрвісы"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr "Абярыце, якія сервісы запускаць аўтаматычна пры загрузцы"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
+msgid "%d activated for %d registered"
msgstr ""
-#: services.pm:208
-#, fuzzy, c-format
+#: services.pm:251
+#, c-format
msgid "running"
-msgstr "Увага!"
+msgstr ""
-#: services.pm:208
-#, fuzzy, c-format
+#: services.pm:251
+#, c-format
msgid "stopped"
-msgstr "Далучыць"
+msgstr ""
-#: services.pm:213
-#, fuzzy, c-format
+#: services.pm:256
+#, c-format
msgid "Services and daemons"
-msgstr "Мэнэджэр сэрвісаў"
+msgstr ""
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
"about this service, sorry."
msgstr ""
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Інфармацыя"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr ""
-#: services.pm:227
-#, fuzzy, c-format
+#: services.pm:269
+#, c-format
msgid "On boot"
-msgstr "Yaboot"
+msgstr ""
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "У пачатак"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Спыніць"
-#: standalone.pm:25
-#, fuzzy, c-format
+#: standalone.pm:27
+#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
"it under the terms of the GNU General Public License as published by\n"
@@ -6226,26 +6346,8 @@ msgid ""
"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
"USA.\n"
msgstr ""
-"Пашырэнне ESounD\n"
-"\n"
-" Гэта прога - бясплатнае праграмнае забяспячэнне; вы можыце распаўсюджываць "
-"і/альбо мадыфікаваць яго\n"
-"у адпаведнасці з ліцэнзыяй GNU, якая была надрукавана\n"
-"Арганізацыяй бясплатнага праграмнага забеспячэння, вы можыце карыстацца "
-"версыяй 2 ліцэнзыі альбо\n"
-"(па вашаму жаданню) ці якой іншай пазнейшай версыяй.\n"
-"\n"
-"Гэта прога распаўсюджываецца з надзеяй, што камусці яна будзе карысна,\n"
-"але БЯЗЬ УСЯЛЯКІХ ГАРАНТЫЙ нават гарантый якія маюцца на ўвазе пры\n"
-"ПРАЦАЗДОЛЬНАСЦІ альбо ПРЫГОДНАСЦІ ДА ЯКОЙСЦІ МЭТЫ. Калі ласка,\n"
-"за падрабязнасцямі глянце на GNU ліцэнзыю.\n"
-"\n"
-"А копію ліцэнзыі вы павінны былі атрымаць\n"
-"разам зь гэтай прогай; калі не, дык напішыце пра гэта па адрасу (дашлем)\n"
-"Free Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-"
-"1301, USA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6261,28 +6363,27 @@ msgid ""
"--version : show version number.\n"
msgstr ""
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6293,7 +6394,7 @@ msgid ""
" --wizard - like --add"
msgstr ""
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6311,11 +6412,11 @@ msgid ""
" : and gs for ghostscript for only this one."
msgstr ""
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6329,17 +6430,17 @@ msgid ""
"IP, nbi image name)"
msgstr ""
-#: standalone.pm:100
-#, fuzzy, c-format
+#: standalone.pm:101
+#, c-format
msgid "[keyboard]"
-msgstr "Клавіятура"
+msgstr ""
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr ""
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6353,26 +6454,26 @@ msgid ""
"--quiet : do not be interactive. To be used with (dis)connect."
msgstr ""
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
msgstr ""
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6380,7 +6481,7 @@ msgid ""
" XFdrake resolution"
msgstr ""
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6388,70 +6489,75 @@ msgid ""
"testing] [-v|--version] "
msgstr ""
-#: timezone.pm:161 timezone.pm:162
-#, fuzzy, c-format
+#: timezone.pm:170 timezone.pm:171
+#, c-format
msgid "All servers"
-msgstr "Дадаць карыстальніка"
+msgstr ""
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr ""
-#: timezone.pm:199
-#, fuzzy, c-format
+#: timezone.pm:210
+#, c-format
msgid "Africa"
-msgstr "Паўднёвая Афрыка"
+msgstr ""
-#: timezone.pm:200
-#, fuzzy, c-format
+#: timezone.pm:211
+#, c-format
msgid "Asia"
-msgstr "Аўстрыя"
+msgstr ""
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr ""
-#: timezone.pm:202
-#, fuzzy, c-format
+#: timezone.pm:213
+#, c-format
msgid "North America"
-msgstr "Паўднёвая Афрыка"
+msgstr ""
-#: timezone.pm:203
+#: timezone.pm:214
#, c-format
msgid "Oceania"
msgstr "Акіянія"
-#: timezone.pm:204
-#, fuzzy, c-format
+#: timezone.pm:215
+#, c-format
msgid "South America"
-msgstr "Паўднёвая Афрыка"
+msgstr ""
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Сян Ган"
-#: timezone.pm:250
-#, fuzzy, c-format
+#: timezone.pm:261
+#, c-format
msgid "Russian Federation"
-msgstr "Рускі (фанетычны)"
+msgstr ""
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Югаславія"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Гэта дакладна?"
-#: ugtk2.pm:874
-#, fuzzy, c-format
+#: ugtk2.pm:872 ugtk3.pm:968
+#, c-format
msgid "You have chosen a file, not a directory"
-msgstr "Няма такога файла ці тэчкі"
+msgstr ""
+
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Інфармацыя"
#: wizards.pm:95
#, c-format
@@ -6461,160 +6567,6 @@ msgid ""
msgstr ""
#: wizards.pm:99
-#, fuzzy, c-format
+#, c-format
msgid "Installation failed"
-msgstr "Усталяванне SILO"
-
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "Калі ласка, выйдзіце, а потым скарыстайце Ctrl-Alt-BackSpace"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "Сардэчна запрашаем у Crackers"
-
-#~ msgid "Poor"
-#~ msgstr "Зусім слабы"
-
-#~ msgid "High"
-#~ msgstr "Высокі"
-
-#~ msgid "Higher"
-#~ msgstr "Высокі"
-
-#~ msgid "Paranoid"
-#~ msgstr "Паранаідальны"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "Гэты узровень неабходна выкарыстоўваць з асцярогай. Сістэма будзе "
-#~ "прасцей\n"
-#~ "у карыстанні, але і больш чутнай: гэты узровень бяспекі нельга "
-#~ "выкарыстоўваць\n"
-#~ "на машынах, якія далучаны да сеткі ці да Інтернет. Уваход не абаронены "
-#~ "паролем."
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr ""
-#~ "Пароль зараз уключаны, але выкарыстанне камп'ютэру ў якасці сеткавага\n"
-#~ "таксама не рэкамендавана."
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "Усталяванне LILO/GRUB"
-
-#~ msgid "Precise RAM size if needed (found %d MB)"
-#~ msgstr "Пазначце дакладны памер RAM (знойдзена %d Мб)"
-
-#~ msgid "Give the ram size in MB"
-#~ msgstr "Пазначце памер RAM у Мб"
-
-#~ msgid ""
-#~ "If you plan to use aboot, be careful to leave a free space (2048 sectors "
-#~ "is enough)\n"
-#~ "at the beginning of the disk"
-#~ msgstr ""
-#~ "Калі вы плануеце выкарыстоўваць boot вобласць, тады размясціце яе\n"
-#~ " не далей за 2048 сектароў ад пачатку дыска"
-
-#, fuzzy
-#~ msgid "Security level"
-#~ msgstr "Бясьпека"
-
-#~ msgid "Expand Tree"
-#~ msgstr "Разгарнуць дрэва"
-
-#~ msgid "Collapse Tree"
-#~ msgstr "Згарнуць дрэва"
-
-#~ msgid "Toggle between flat and group sorted"
-#~ msgstr "Пераключэнне паміж упарадкаваннем па групе і асобках"
-
-#~ msgid "Choose action"
-#~ msgstr "Абярыце дзеянне"
-
-#, fuzzy
-#~ msgid "Authentication LDAP"
-#~ msgstr "Аўтэнтыфікацыя"
-
-#~ msgid "TLS"
-#~ msgstr "TLS"
-
-#~ msgid "SSL"
-#~ msgstr "SSL"
-
-#, fuzzy
-#~ msgid "Authentication Active Directory"
-#~ msgstr "Аўтэнтыфікацыя"
-
-#, fuzzy
-#~ msgid "LDAP users database"
-#~ msgstr "База даньняў дыскаў"
-
-#, fuzzy
-#~ msgid "Authentication NIS"
-#~ msgstr "Аўтэнтыфікацыя"
-
-#, fuzzy
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "Аўтэнтыфікацыя"
-
-#~ msgid "Undo"
-#~ msgstr "Адкат"
-
-#, fuzzy
-#~ msgid "Save partition table"
-#~ msgstr "Дадатковая табліца раздзелаў"
-
-#, fuzzy
-#~ msgid "Restore partition table"
-#~ msgstr "Дадатковая табліца раздзелаў"
-
-#~ msgid ""
-#~ "The backup partition table has not the same size\n"
-#~ "Still continue?"
-#~ msgstr ""
-#~ "Табліца размяшчэння рэзервовага дыску мае іншы памер\n"
-#~ "Працягваць далей?"
-
-#~ msgid "Info: "
-#~ msgstr "Інфармацыя: "
-
-#, fuzzy
-#~ msgid "Unknown driver"
-#~ msgstr "Невядомая гукавая карта"
-
-#~ msgid "Error reading file %s"
-#~ msgstr "Памылка чытання файлу %s"
-
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "Аднаўленне з файла %s не атрымалася: %s"
-
-#~ msgid "Bad backup file"
-#~ msgstr "Дрэнны файл рэзервовай копіі"
-
-#~ msgid "Error writing to file %s"
-#~ msgstr "Памылка запісу ў файл %s"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Add user"
-#~ msgstr "Дадаць карыстальніка"
-
-#~ msgid "Accept user"
-#~ msgstr "Прыняць карыстальніка"
-
-#~ msgid "Rescue partition table"
-#~ msgstr "Дадатковая табліца раздзелаў"
-
-#~ msgid "Trying to rescue partition table"
-#~ msgstr "Паспрабуем выратаваць табліцу раздзелаў"
-
-#, fuzzy
-#~ msgid "PLL setting:"
-#~ msgstr "Настройкі шрыфтоў"
+msgstr ""
diff --git a/perl-install/share/po/bg.po b/perl-install/share/po/bg.po
index 8fdc10386..68e2bffee 100644
--- a/perl-install/share/po/bg.po
+++ b/perl-install/share/po/bg.po
@@ -1,42 +1,41 @@
-# translation of DrakX-bg.po to Bulgarian
-# Copyright (C) 2000,2003 Free Software Foundation, Inc.
-# Copyright (c) 2000 Mandriva
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
-#
-# Bozhan Boiadzhiev <bozhan@plov.omega.bg>, 2000.
-# Borislav Aleksandrov <B.Aleksandrov@cnsys.bg>, 2003.
-# Boyan Ivanov <boyan17@bulgaria.com>, 2003, 2009.
-# user, 2009.
-# Kolio Kolev <kolio_kolev@biotronica.net>, 2009.
-msgid ""
-msgstr ""
-"Project-Id-Version: DrakX-bg\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2009-03-21 13:58+0200\n"
-"Last-Translator: Kolio Kolev <kolio_kolev@biotronica.net>\n"
-"Language-Team: Bulgarian <Mandriva User Group - Bulgaria <mandriva-"
-"bg@googlegroups.com>>\n"
+# Translators:
+# Borislav Aleksandrov <B.Aleksandrov@cnsys.bg>, 2003
+# Boyan Ivanov <boyan17@bulgaria.com>, 2003,2009
+# Bozhan Boiadzhiev <bozhan@plov.omega.bg>, 2000
+# Kolio Kolev <kolio_kolev@biotronica.net>, 2009
+# user, 2009
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2016-04-16 21:43+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Bulgarian (http://www.transifex.com/MageiaLinux/mageia/"
+"language/bg/)\n"
+"Language: bg\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 0.3\n"
+"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "Моля, изчакайте"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "Инсталира се програма за начално зареждане"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -47,30 +46,19 @@ msgid ""
"Assign a new Volume ID?"
msgstr ""
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr ""
"Инсталацията програмата за начално зареждане се провали. Появи се следната "
"грешка:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
@@ -80,274 +68,273 @@ msgstr ""
"\n"
"Кое дисково устройство ще ползвате за начално зареждане?"
-#: any.pm:346
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr "Инсталация на програма за начално зареждане"
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Къде искате да инсталирате програмата за начално зареждане?"
+
+#: any.pm:365
#, c-format
msgid "First sector (MBR) of drive %s"
msgstr "Първи сектор (MBR) на дисково устройство %s "
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "Първи сектор на дисковото устройство (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
-msgstr "Първия сектор на дисковия дял (PBS) с Mandriva"
+msgstr "Първия сектор на дисковия дял (PBS) с Mageia"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "Запазване на дискета"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Пропусни"
-#: any.pm:358
-#, c-format
-msgid "Bootloader Installation"
-msgstr "Инсталация на програма за начално зареждане"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Къде искате да инсталирате програмата за начално зареждане?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "Настройка на начина на стартиране"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr ""
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "Опции на програмата за начално зареждане"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "Програма за начално зареждане"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "Използвана програма за начално зареждане"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Устройство за зареждене"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
msgstr "Основни настойки"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "Време за изчакване преди зареждане"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "Включи ACPI"
-#: any.pm:411
+#: any.pm:432
#, c-format
msgid "Enable SMP"
msgstr "Включи SMP"
-#: any.pm:412
+#: any.pm:433
#, c-format
msgid "Enable APIC"
msgstr "Включи APIC"
-#: any.pm:413
+#: any.pm:435
#, c-format
msgid "Enable Local APIC"
msgstr "Включи Local APIC"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Сигурност"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Парола"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Паролите не съвпадат"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Моля, опитайте отново"
-#: any.pm:418
+#: any.pm:442
#, c-format
-msgid "You can not use a password with %s"
+msgid "You cannot use a password with %s"
msgstr "Вие не можете да използвате парола включваща %s"
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Парола (повтори)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "Ограничи опциите, задавани от командния ред"
+msgid "Bootloader Configuration"
+msgstr "Конфигуриране на програмата за начално зареждане"
-#: any.pm:422
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "Инсталацията провалена"
+
+#: any.pm:533
#, c-format
-msgid "restrict"
-msgstr "ограничи"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr ""
-#: any.pm:423
+#: any.pm:535 any.pm:794
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
-msgstr "Опцията ``Ограничи опциите от командния ред'' е безполезна без парола"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
-#: any.pm:425
+#: any.pm:537
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "Почистване на директория /tmp при всяко зареждане"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr ""
-#: any.pm:434
+#: any.pm:539
#, c-format
-msgid "Init Message"
-msgstr "Начално съобщение"
+msgid "Background"
+msgstr ""
-#: any.pm:436
+#: any.pm:544
#, c-format
-msgid "Open Firmware Delay"
-msgstr "Изчакване на Open Firmware"
+msgid "rEFInd banner"
+msgstr ""
-#: any.pm:437
+#: any.pm:545
+#, fuzzy, c-format
+msgid "Mageia theme"
+msgstr "Mageia"
+
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Време за изчакване"
+msgid "Custom"
+msgstr "Позволи на отделни потребители"
-#: any.pm:438
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "Без споделяне"
+
+#: any.pm:565
#, c-format
-msgid "Enable CD Boot?"
-msgstr "Зареждане от оптично устройство (CD/DVD)?"
+msgid "Scale to fit"
+msgstr ""
-#: any.pm:439
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable OF Boot?"
-msgstr "Стартиране от OF ?"
+msgid "Label"
+msgstr "Име"
-#: any.pm:440
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Default OS?"
-msgstr "Операционна система по подразбиране?"
+msgid "Append"
+msgstr "Параметри"
-#: any.pm:513
+#: any.pm:612 any.pm:624 any.pm:781
+#, c-format
+msgid "Video mode"
+msgstr "Видео режим"
+
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "Образ"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Коренов дял"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "Параметри"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr "Xen параметри"
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Видео режим"
+msgid "Requires password to boot"
+msgstr ""
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "Мрежов профил"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "Име"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "По подразбиране"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "Без графичен режим"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "Полето 'Име' не трябва да е празно"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "Трябва да зададете обаз на ядрото"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "Трябва да зададете коренов дял"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "Това 'Име' вече се използва"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Какъв тип информация искате да прибавите"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Друга ОС (SunOS...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Друга ОС (MacOS...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "Друга ОС (Windows...)"
-#: any.pm:621
-#, c-format
-msgid "Bootloader Configuration"
-msgstr "Конфигуриране на програмата за начално зареждане"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -356,272 +343,323 @@ msgstr ""
"Това са записите в менюто за начално зареждане.\n"
"Можете да добавите още или да промените съществуващите."
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr ""
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Предупреждение"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr ""
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "достъп до X програми"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "достъп до rpm инструменти"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "позволява \"su\""
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr "достъп до файлове за администриране"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "достъп до мрежови инструменти"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "достъп до инструменти за разработка"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(вече прибавих %s)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "Моля, задайте потребителско име"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
msgstr ""
-"Потребителското име може да включва само малки букви, номера, `-' и `_'"
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "Това потребителско име е твърде дълго"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "Това потребителско име е вече добавено"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "Потребителски номер"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "Номер на група"
-#: any.pm:817
+#: any.pm:1086
#, c-format
msgid "%s must be a number"
msgstr "%s трябва да е число"
-#: any.pm:818
-#, fuzzy, c-format
-msgid "%s should be above 500. Accept anyway?"
-msgstr "%s трябва да е над 500. "
+#: any.pm:1087
+#, c-format
+msgid "%s should be above 1000. Accept anyway?"
+msgstr ""
-#: any.pm:822
+#: any.pm:1091
#, c-format
msgid "User management"
msgstr "Управление на потребител"
-#: any.pm:828 authentication.pm:237
-#, fuzzy, c-format
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr ""
+
+#: any.pm:1099 authentication.pm:236
+#, c-format
msgid "Set administrator (root) password"
-msgstr "Въведете парола за root"
+msgstr ""
-#: any.pm:833
+#: any.pm:1105
#, c-format
msgid "Enter a user"
msgstr "Въведете потребител"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Икона"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Истинско име"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "Потебителско име"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Обвивка"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr ""
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
msgstr "Моля, изчакайте. Обновява се източник..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "Автоматично влизане"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
"Мога да настроя компютъра ви за автоматично влизане в системата като някой "
"потребител."
-#: any.pm:916
+#: any.pm:1251
#, c-format
msgid "Use this feature"
msgstr "Използвай тази характеристика"
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Изберете подразбиращ се потребител:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "Изберете графична среда за стартиране:"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
msgstr "Бележки към версията"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Затвори"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Лицензионен договор"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Изход"
-#: any.pm:1017
+#: any.pm:1343
#, c-format
msgid "Do you accept this license ?"
msgstr "Приемате ли този лиценз ?"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Приеми"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Откажи"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "Моля, изберете език"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"Mandriva Linux подържа много езици. Изберете\n"
-"езиците, които искате да инсталирате. Те ще бъдат налични след\n"
-"като завърши инсталацията и рестартирате системата."
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
#, c-format
-msgid "Multi languages"
-msgstr "Многоезикова поддръжка"
+msgid "Multiple languages"
+msgstr ""
+
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr ""
-#: any.pm:1087 any.pm:1119
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr "Съвместимост с преди използващи се (различни от UTF-8) кодировки"
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "Всички езици"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "Избор на език"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "Страна / Регион"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
msgstr "Моля, изберете вашата държава"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "Пълен списък на достръпните страни"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "Други държави"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Разширени настройки"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr " Метод за въвеждане:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Няма"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "Без споделяне"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "Позволи на всички потребители"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Позволи на отделни потребители"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -638,7 +676,7 @@ msgstr ""
"\"Позволи на отделни потребители\" разрешава споделянето само на "
"потребителите, които са членове на групата \"fileshare\".\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
@@ -648,7 +686,7 @@ msgstr ""
"ограничено \n"
" приложима за Mac OS X и Windows."
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
@@ -658,7 +696,7 @@ msgstr ""
"повечето\n"
" съвременни Linux системи."
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
@@ -666,12 +704,12 @@ msgstr ""
"Вие може да споделяте файлове използвайки NFS или SMB протоколи. \n"
"Моля, изберете кой от тях ще използвате."
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "Стартира userdrake"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
@@ -680,62 +718,115 @@ msgstr ""
"За споделянето на потребителски директории използва група \"fileshare\".\n"
"Може да използвате userdrake, за да добавите потребител към тази група."
-#: any.pm:1421
-#, fuzzy, c-format
+#: any.pm:1768
+#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
msgstr ""
-"За да се активират направените промени е необходимо да излезете от текущата "
-"сесия и отново да влезете"
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr ""
"За да се активират направените промени е необходимо да излезете от текущата "
"сесия и отново да влезете"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "Часова зона"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Коя е вашата времевата зона?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr "Дата, Часовник и Настройки на часова зона"
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr "Кое е най-доброто време?"
-#: any.pm:1490
+#: any.pm:1837
#, c-format
msgid "%s (hardware clock set to UTC)"
msgstr "%s (хадруерният часовник е настроен по GMT)"
-#: any.pm:1491
+#: any.pm:1838
#, c-format
msgid "%s (hardware clock set to local time)"
msgstr "%s (хадруерният часовник е настроен по локалното време)"
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "NTP сървър"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "Автоматична синхронизация на времето (използва NTP)"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr ""
+
+#: any.pm:1880
+#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "URL трябва да започва с http:// или https://"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr ""
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Изберете огледален сървър,от който да получите пакетите"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Отказ"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "Автоматично намиране"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "Задай опции"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "Програма за начално зареждане"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -756,7 +847,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr "Smart Card"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Windows домейн"
@@ -766,299 +857,295 @@ msgstr "Windows домейн"
msgid "Kerberos 5"
msgstr "Kerberos 5"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "Локален файл:"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
"consolidates certain types of information within your organization."
msgstr ""
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
"Service domain with a common password and group file."
msgstr ""
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Windows домейн:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
"a Windows domain."
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr "Kerberos 5 :"
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
-msgstr ""
+msgstr " "
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
#, c-format
msgid "Welcome to the Authentication Wizard"
msgstr "Добре дошли в Помощника за удостоверяване на самоличност"
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "LDAP сървър"
-#: authentication.pm:113 authentication.pm:168
+#: authentication.pm:112 authentication.pm:167
#, c-format
msgid "Base dn"
msgstr "Базов dn"
-#: authentication.pm:114
-#, fuzzy, c-format
+#: authentication.pm:113
+#, c-format
msgid "Fetch base Dn "
-msgstr "Fetch base Dn "
+msgstr ""
-#: authentication.pm:116 authentication.pm:171
-#, fuzzy, c-format
+#: authentication.pm:115 authentication.pm:170
+#, c-format
msgid "Use encrypt connection with TLS "
-msgstr "Използвай криптирана връзка с TLS "
+msgstr ""
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr "Изтегли CA сертификат"
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr ""
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
msgstr "Използвай анонимен BIND "
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
-msgstr ""
+msgstr " "
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr "Bind DN "
-#: authentication.pm:123 authentication.pm:175
+#: authentication.pm:122 authentication.pm:174
#, c-format
msgid "Bind Password "
msgstr "Bind парола"
-#: authentication.pm:125
-#, fuzzy, c-format
+#: authentication.pm:124
+#, c-format
msgid "Advanced path for group "
-msgstr "Разширен път за група"
+msgstr ""
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "Парола"
+msgstr ""
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "Номер на група"
+msgstr ""
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr ""
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "Истинско име"
+msgstr ""
-#: authentication.pm:148
-#, fuzzy, c-format
+#: authentication.pm:147
+#, c-format
msgid "KDCs Servers"
-msgstr "KDC сървъри"
+msgstr ""
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr ""
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr ""
-#: authentication.pm:156
+#: authentication.pm:155
#, c-format
msgid "Use local file for users information"
msgstr "Използвай локален файл за съхраняване на информация за потребители "
-#: authentication.pm:157
+#: authentication.pm:156
#, c-format
-msgid "Use Ldap for users information"
+msgid "Use LDAP for users information"
msgstr "Използвай LDAP за съхраняване на информация за потребители "
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
-msgstr "Fecth base Dn "
+msgid "Fetch base DN "
+msgstr "Fetch base DN "
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "NIS домейн"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "NIS сървър"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "Домейн модел"
+msgstr ""
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr ""
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "NIS домейн"
+msgstr ""
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "KDC сървъри"
+msgstr ""
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Идентификация"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "Метод за идентификация"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Без парола"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr "Паролата е прекалено проста (трябва да бъде дълга поне %d символа)"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "Не можете да използвате broadcast без NIS домейн"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Изберете файл"
-#: authentication.pm:897
+#: authentication.pm:882
#, c-format
msgid "Domain Windows for authentication : "
msgstr ""
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "Име на администратор на домейн"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Парола за администратор на домейн"
-# NOTE: this message will be displayed at boot time; that is
-# only the ascii charset will be available on most machines
-# so use only 7bit for this message (and do transliteration or
-# leave it in English, as it is the best for your language)
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1073,42 +1160,47 @@ msgstr ""
"изчакайте да се зареди избраната по подразбиране.\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO с текстово меню"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 в графично меню"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 с текстово меню"
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr "GRUB в графично меню"
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr "GRUB с текстово меню"
-#: bootloader.pm:1135
-#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+#: bootloader.pm:1483
+#, fuzzy, c-format
+msgid "rEFInd with graphical menu"
+msgstr "rEFInd в графично меню"
-#: bootloader.pm:1136
-#, c-format
-msgid "SILO"
-msgstr "SILO"
+#: bootloader.pm:1484
+#, fuzzy, c-format
+msgid "U-Boot/Extlinux with text menu"
+msgstr "U-Boot/Extlinux с текстово меню"
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "няма достатъчно място в /boot"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "Не можете да инсталирате програмата за начално зареждане на дяла %s\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
@@ -1117,65 +1209,66 @@ msgstr ""
"Конфигурацията на програмата за начално зареждане трябва да се актуализира, "
"защото дисковите дялове бяха преномерирани"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
"Програмата за начално зареждане не може да бъде коректно инсталирана. Трябва "
"да стартирате режим rescue и да изберете \"%s\""
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "Преинсталиране на програмата за начално зареждане"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "B"
msgstr "Б"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "КБ"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "МБ"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "ГБ"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "ТБ"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr ""
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d минути"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 минута"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d секунди"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr "командата %s липсва"
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1195,12 +1288,12 @@ msgstr ""
msgid "New"
msgstr "Нов"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Демонтирай"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Монтирай"
@@ -1210,43 +1303,44 @@ msgstr "Монтирай"
msgid "Server"
msgstr "Сървър"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Точка на монтиране"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Опции"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Премахване"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Готово"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Грешка"
@@ -1261,82 +1355,73 @@ msgstr "Моля въведете WebDAV сървър URL"
msgid "The URL must begin with http:// or https://"
msgstr "URL трябва да започва с http:// или https://"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Предупреждение"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Искате ли да натиснете този бутон?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr ""
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Сървър: "
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Точка на монтиране: "
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Опции: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "Управление на дискови дялове"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
"Моля, посочете дисков дял, изберете вида файлова система\n"
"и после изберете действие"
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Прочетете внимателно"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "Първо създайте архивно копие на своите данни"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Изход"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Продължи"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Помощ"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1347,143 +1432,134 @@ msgstr ""
"Добре е първо да намалите големината на този дял\n"
"(изберете дяла и след това изберете \"Преоразмери\")"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "Моля, изберете дисков дял"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Подробности"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "Не е намерен твърд диск"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Неизвестен"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432
#, c-format
-msgid "Ext3"
-msgstr "Ext3"
+msgid "Ext4"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "XFS"
msgstr "XFS"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Swap"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Друга"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Празен"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Видове файлови системи:"
-#: diskdrake/hd_gtk.pm:407
+#: diskdrake/hd_gtk.pm:461
#, c-format
msgid "This partition is already empty"
msgstr "Този дисков дял е вече празен"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "Първо използвайте 'Демонтирай'"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``%s'' instead (in expert mode)"
msgstr "Вместо това използвайте ``%s'' (в експертен режим)"
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Вид"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Изберете друг дисков дял"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Изберете дисков дял"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "Още"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
#, c-format
msgid "Confirmation"
msgstr "Потвърди"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Да продължа ли въпреки всичко?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Изход без запазване на промените"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Изход, без да запазване на таблицата на дисковите дялове?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "Искате ли да запазите направените промени в /etc/fstab"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr ""
"След рестарт на компютъра, направените промени по таблицата с дисковите "
"дялове ще бъдат в сила"
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1495,42 +1571,42 @@ msgstr ""
"fstab.\n"
"Да прекря ли изпълнението?"
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Изчисти всичко"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Автоматично задели"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
+msgid "Normal mode"
msgstr "Нормален режим"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
+msgid "Expert mode"
msgstr "Експертен режим"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "Информация за твърдия диск"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "Всичките четири първични дискови дялове са заети"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "Не могат да се обавят повече дискови дялове"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
@@ -1539,120 +1615,145 @@ msgstr ""
"Ако искате още дискови дялове, моля изтрийте някой, за да можете да на "
"негово място да създадете разширен дял"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Презареди таблицата с дяловете"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Подробна информация"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
msgstr "Изглед"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Промени големина"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Форматирай"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Прибави към RAID"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Прибави към LVM"
-#: diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:417
#, c-format
msgid "Use"
msgstr "Използвай"
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Изтрий"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Премахни от RAID"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Премахни от LVM"
-#: diskdrake/interactive.pm:415
+#: diskdrake/interactive.pm:422
#, c-format
msgid "Remove from dm"
msgstr "Премахни от dm"
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "Модифицирай RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Използвай за loopback"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Създай"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Премести файловете на нов дисков дял"
+msgstr ""
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Създай нов дисков дял"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Начален сектор: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Големина в МБ: "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Файлова система: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Предпочитание: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "Име на логически том"
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr ""
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Ключ за криптиране (отново)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Ключовете за криптиране не съвпадат"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
@@ -1660,12 +1761,12 @@ msgstr ""
"(достигнат е максималния брой на първични дялове) Първо изтрийте някой "
"първичен дял и на негово място създайте разширен дял."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "Да премахна ли loopback файла?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
@@ -1673,124 +1774,122 @@ msgstr ""
"След промяна на типа на дисковия дял %s, всички данни върху него ще бъдат "
"изтрити"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Промяна типа на дяла"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Коя файлова система избирате?"
-#: diskdrake/interactive.pm:594
+#: diskdrake/interactive.pm:650
#, c-format
msgid "Switching from %s to %s"
msgstr "Конвертиране от %s към %s"
-#: diskdrake/interactive.pm:624
+#: diskdrake/interactive.pm:685
#, c-format
msgid "Set volume label"
msgstr "Задаване име на дял"
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
"Внимание, всички направени промени ще бъдат записани на диска след като "
"потвърдите!"
-#: diskdrake/interactive.pm:627
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:688
+#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
-"Внимание, всички направени промени ще бъдат записани на диска след като "
-"потвърдите!"
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr "Какво да бъде името на дяла?"
-#: diskdrake/interactive.pm:630
+#: diskdrake/interactive.pm:691
#, c-format
msgid "Label:"
msgstr "Име:"
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "Къде искате да монтирате loopback-файла %s?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "Къде искате да монтирате устройство %s?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"Не може да се премахне точката на монтиране докато дисковия дял се използва "
"за loopback.\n"
"Първо изключете loopback"
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "Къде искате да монтирате устройство %s ?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "Промяна на големината"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "Изчисляват се границите на FAT файловата система"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "Големината на дяла не може да бъде променена"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "Всички данни на този дял трябва да бъдат архивирани"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr ""
"След промяна на големината на дисковия дял %s, \n"
"данните върху него ще бъдат загубени."
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Изберете новият размер"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "Нов размер в МБ: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr "Минимален размер: %s МБ"
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr "Максимален размер: %s МБ "
-#: diskdrake/interactive.pm:805
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
@@ -1800,47 +1899,62 @@ msgstr ""
"то проверките на ниво файлова система ще бъдат изпълнени при следващото "
"стартиране на Microsoft Windows®"
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Криптиращ ключ за файлова система"
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "Избор на криптиращ ключ за еашата файлова система"
+msgstr ""
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "Ключ за криптиране"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr "Невалиден ключ"
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Изберете съществуващ RAID за прибавяне"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "нов"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Изберете съществуващ LVM за прибавяне"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr ""
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
+
+#: diskdrake/interactive.pm:1050
#, c-format
-msgid "LVM name?"
-msgstr "LVM име?"
+msgid "\"%s\" already exists"
+msgstr ""
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr ""
+
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
@@ -1850,119 +1964,119 @@ msgstr ""
"Искате ли да се преместят използваните от този дисков дял физически "
"пространства на други дялове?"
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr "Преместване на физически пространства"
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "Този дял не може да бъде използван за loopback"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Loopback"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Име на loopback файла: "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "Задайте име на файл"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr "Този файл вече се използва за loopback, изберете друг файл."
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Файлът вече съшествува. Да го използвам ли ?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "Опции за монтиране:"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "Различни"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "устройство"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "ниво"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
msgstr "размер в КБ"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "Внимание: тази операция е опасна"
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "Partitioning Type"
msgstr "Видове разделяне на дялове"
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "Какво да е разделянето на дялове?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr "Трябва да рестартирате, преди промените да влязат в сила"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "Таблицата с дяловете на устройство %s ще бъде записана върху диска"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "Форматиране на дисков дял %s"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr ""
"След форматирането на дял %s, всички данни върху него ще бъдат загубени"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "Проверка за лоши сектори ?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "Премести файловете на нов дисков дял"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Скрий файловете"
-#: diskdrake/interactive.pm:1215
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1359
+#, c-format
msgid ""
"Directory %s already contains data\n"
"(%s)\n"
@@ -1971,135 +2085,128 @@ msgid ""
"mounted there or leave them where they are (which results in hiding them by "
"the contents of the mounted partition)"
msgstr ""
-"В директорията %s са записани данни\n"
-"(%s)\n"
-"\n"
-"Може първо да преместите файловете някъде в дяла, който искате да монтирате "
-"в избраната директория или да ги оставите където са (това ще доведе до "
-"временното им скриване докато е монтиран дяла в тази директория)"
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr "Премести файловете на нов дисков дял"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "Копиране на %s"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "Изтриване на %s"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "дял %s е преименуван като %s"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr "Дяловете бяха преномерирани:"
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Устройство: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr "Име на дял:"
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr "UUID: "
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "Буква на устройството под DOS: %s (просто предположение)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Файлова система: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Име: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Начало: сектор %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Размер: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s сектора"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "От цилиндър %d до цилиндър %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr "Брой логически дялове: %d\n"
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Форматиран\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Неформатиран\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Монтиран\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1446
#, c-format
msgid "Encrypted"
msgstr "Криптиран"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr "(неактивен)"
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2108,7 +2215,7 @@ msgstr ""
"Loopback файл(ове):\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2117,114 +2224,101 @@ msgstr ""
"Дял, който се стартира по подразбиране\n"
" (за MS-DOS boot, не за lilo)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Ниво %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
msgstr "Размер %d КБ\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "RAID-дискове %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Име на loopback файл: %s"
-#: diskdrake/interactive.pm:1326
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1467
+#, c-format
msgid ""
"\n"
"Chances are, this partition is\n"
"a Driver partition. You should\n"
"probably leave it alone.\n"
msgstr ""
-"\n"
-"Вероятно е този дял да е\n"
-"Драйвер-дял, може би трябва\n"
-"трябва да го оставите.\n"
-#: diskdrake/interactive.pm:1329
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1470
+#, c-format
msgid ""
"\n"
"This special Bootstrap\n"
"partition is for\n"
"dual-booting your system.\n"
msgstr ""
-"\n"
-"Тoзи специален Bootstrap дял\n"
-"е предназначен за стартиране на\n"
-" повече от една операционна система на компютъра ви.\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr "Свободно място на %s (%s)"
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Само за четене"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Размер: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Геометрия: %s цилиндри, %s глави, %s сектори\n"
-#: diskdrake/interactive.pm:1351
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Име: "
+
+#: diskdrake/interactive.pm:1492
#, c-format
msgid "Medium type: "
msgstr "Тип медия: "
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "LVM дискове %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Тип на таблицата с дялове: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "на канал %d номер %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "Избор на криптиращ ключ за вашата файлова система"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
"Криптиращ ключ е прекалено прост (трябва да бъде дълга поне %d символа)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "Ключовете за криптиране не съвпадат"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Ключ за криптиране (отново)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Криптиращ алгоритъм"
@@ -2234,17 +2328,9 @@ msgstr "Криптиращ алгоритъм"
msgid "Change type"
msgstr "Промяни типа"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Отказ"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr "Не мога да вляза като използвам потребителско име %s (грешна парола?)"
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
@@ -2287,42 +2373,42 @@ msgstr "Търси сървъри"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "Търси нови сървъри"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr ""
"Пакет %s трябва да бъде инсталиран\n"
"Искате да го инсталирате?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr "Пакетът %s не може да бъде инсталиран!"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "Задължителният пакет %s липсва"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Следните пакети ще трябва да се инсталират:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "Инсталиране на пакети ..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "Премахване на пакети ..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
@@ -2332,32 +2418,39 @@ msgstr ""
"създадени нови файлови системи. Моля проверете твърдия си диск си за "
"причината за този проблем."
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "Трябва да имате FAT дял монтиран в /boot/efi"
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "Трябва да имате ESP FAT32 дял монтиран в /boot/EFI"
-#: fs/format.pm:100
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "Създаване и форматиране на файл %s"
-#: fs/format.pm:119
+#: fs/format.pm:202
#, c-format
msgid "I do not know how to set label on %s with type %s"
msgstr "Не може да се зададе име на %s имащо тип %s"
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "Провали се задаването на име на %s "
+msgstr ""
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "Не може да се форматира %s в тип %s"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s форматиране от %s провалено"
@@ -2372,30 +2465,30 @@ msgstr "\"Омагьосан кръг\" от монтирания %s\n"
msgid "Mounting partition %s"
msgstr "Монтиране на дисков дял %s"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr " пропадна монтирането на дисков дял %s в директория %s"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "Проверка на %s"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "грешка при демонтиране на %s: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "Позволи ползването на swap дял %s"
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
-msgstr "Използвайте криптирана файлова система "
+msgid "Enable POSIX Access Control Lists"
+msgstr ""
#: fs/mount_options.pm:116
#, c-format
@@ -2410,7 +2503,7 @@ msgstr ""
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
@@ -2425,19 +2518,19 @@ msgstr ""
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr ""
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
@@ -2451,24 +2544,24 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr "Монтиране на файловата система в режим само за четене"
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr ""
"Всички входно-изходни операции върху файловата система ще трябва да бъда "
"извършвани синхронно."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr "Позволи всеки потребител да монтира и демонтира файловата система."
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr "Позволи на обикновен потребител да монтира файловата система."
#: fs/mount_options.pm:147
@@ -2493,32 +2586,32 @@ msgstr "Дава права за запис на обикновени потре
msgid "Give read-only access to ordinary users"
msgstr "Дава достъп само за четене на обикновени потребители"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Дублирай точката на монтиране %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "Няма дискови дялове на разположение"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "Претърсване на дисковите дяловете за намиране на точки на монтиране"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Изберете точки за монтиране"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Изберете дяловете, които искате да форматирате"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2527,25 +2620,25 @@ msgstr ""
"Неуспешна проверка на файлова система %s. Искате ли да поправите грешките? "
"(бъдете внимателни, може да загубите данни)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr ""
"Няма достатъчно в swap дяла за приключване на инсталацията, моля, добавете "
"още"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"Трябва да имате коренов дял.\n"
"Затова създайте дял (или изберете някой съществуващ).\n"
"После натиснете бутона ``Място на монтиране'' и задайте `/'"
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2556,93 +2649,55 @@ msgstr ""
"\n"
"Да продължа ли все пак ?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "Използвай свободното място"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "Няма достатъчно място за създаване на нов дял"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "Изпозване на съществуващ дял"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "Няма дял, който мога да използвам"
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Използвай за Microsoft Windows® дялът за loopback"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Кой дял искате да използвате за Linux4Win ?"
-
-#: fs/partitioning_wizard.pm:108
-#, c-format
-msgid "Choose the sizes"
-msgstr "Изберете големините"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "Големина на root-дяла в MB: "
-
-#: fs/partitioning_wizard.pm:110
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Големина на swap-дяла в MB: "
-
-#: fs/partitioning_wizard.pm:119
-#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-"Няма FAT дялове за използване като loopback (или няма достатъчно място на "
-"диска)"
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "Изчислява свободното място на Microsoft Windows® дял"
-#: fs/partitioning_wizard.pm:127
+#: fs/partitioning_wizard.pm:201
#, c-format
msgid "Use the free space on a Microsoft Windows® partition"
msgstr "Използвай свободното място от дяла с Microsoft Windows® "
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Кой дял желаете да промените?"
-#: fs/partitioning_wizard.pm:143
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
msgstr ""
-"Не възможност за работа с вашия FAT дял, \n"
-"поради получената грешка: %s"
-#: fs/partitioning_wizard.pm:146
+#: fs/partitioning_wizard.pm:215
#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "Изчислява свободното място на Microsoft Windows® дял"
-
-#: fs/partitioning_wizard.pm:153
-#, c-format
-msgid ""
-"Your Microsoft Windows® partition is too fragmented. Please reboot your "
-"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+msgid "Failed to find the partition to resize (%d choices)"
msgstr ""
-"Вашият Microsoft Windows® дял е много фрагментиран, моля първо стартирайте "
-"''defrag''"
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2653,8 +2708,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2675,80 +2730,75 @@ msgstr ""
"Когато сте сигурни, натиснете %s."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Следващ"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Partitionning"
msgstr "Управление на дискови дялове"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr "Колко искате да оставите за windows? дял %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Размер"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "Изчислявам границите на Microsoft Windows® файловата система"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "Неуспешно преразделяне на FAT: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr "Няма FAT дялове за смяна на големината (или няма достаъчно място)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Премахни Microsoft Windows®"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Erase and use entire disk"
msgstr "Изтрий и използвай целия диск"
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
-msgstr "имате повече от един твърди дискове, кой да използвам за инсталацията?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr "ВСИЧКИ съществуващи дялове и данните върху тях на %s ще бъдат загубени"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "Клиентско разделяне на диска"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Използвай fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2757,55 +2807,70 @@ msgstr ""
"Сега можете да разделите %s.\n"
"Когато сте готови, не забравяйте да запишете използвайки `w'"
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
#, c-format
-msgid "I can not find any room for installing"
+msgid "I cannot find any room for installing"
msgstr "Не мога да намеря никакво място за инсталация"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "Помощникът за разделине на дялове на DrakX намери следните решения:"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr ""
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Неуспешно разделяне на: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr "Не можете да използвате JFS за дял по-малък от 16 МБ"
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "Не можете да инсталиране ReiserFS на дял по-малък от 32 МБ"
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "прост"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "с /usr"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "сървър"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr "BIOS софтуерен RAID е открит на дискове %s. Да го активирам ли?"
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2822,79 +2887,55 @@ msgstr ""
"\n"
"Съгласни ли сте да загубите всички дялове?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Точките на монтиране трябва да започват с /"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "Точките на монтиране трябва да съдържат само букви и цифри"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Вече има дял монтиран на това място %s\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"Маркирали сте софтуерен RAID дял като root (/).\n"
-"Няма зареждаща програма, която да може да се справи с него без /boot дял.\n"
-"Така че добавете /boot дял"
-#: fsedit.pm:437
-#, fuzzy, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr ""
-"Не можете да използвате LVM логически дял за точка на монтиране %s докато "
-"включва физически дялове"
-
-#: fsedit.pm:439
-#, fuzzy, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
+#: fsedit.pm:478 fsedit.pm:489
+#, c-format
+msgid "You cannot use an encrypted filesystem for mount point %s"
msgstr ""
-"Маркирали сте софтуерен RAID дял като root (/).\n"
-"Няма зареждаща програма, която да може да се справи с него без /boot дял.\n"
-"Така че добавете /boot дял"
+"Вие не може да използвате криптирана файлова система за точка на монтиране %s"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Тази директория трябва да остане в рамките на root файловата система."
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
"Нуждаете се от истинска файлова система (ext2, reiserfs,xfs, или jfs) за "
"тази точка на монтиране\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr ""
-"Вие не може да използвате криптирана файлова система за точка на монтиране %s"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
msgstr "Няма достатъчно място за автоматично разпределяне"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "Няма нищо за правене"
@@ -2904,283 +2945,329 @@ msgstr "Няма нищо за правене"
msgid "SATA controllers"
msgstr "SATA контролери"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "RAID контролери"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "(E)IDE/ATA контролери"
-#: harddrake/data.pm:92
+#: harddrake/data.pm:93
#, c-format
msgid "Card readers"
msgstr "Картови четци:"
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Firewire контролери"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "PCMCIA контролери"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "SCSI контролери"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "USB контролери"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "USB портове"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "SMBus контролери"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Бриджове и системни контролери"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Флопи дисково устройство"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip устройство"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Твърд диск"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr "USB устройства за съхранение на данни"
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "CDROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "CD/DVD записващи устройства"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "Лента"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "AGP контролери"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Видео карта"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr "DVB карта"
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "TV тунер"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "Други мултимедийни устройства"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "Звукова карта"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "WEB камера"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "Процесори"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "ISDN адаптери"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr "USB звукови устройства"
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr "Радио карта"
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr "ATM мрежова карта"
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr "WAN мрежова карта"
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr "Bluetooth устройства"
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "Ethernet карта"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Модем"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "ADSL адаптери"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Памет"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Принтер"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr "Игрови контролер"
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Джойстик"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Клавиатура"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr "Таблет и сензорен екран"
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Мишка"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr "Биометричен контрол"
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "UPS"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Скенер"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Неизвестни/Други"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "cpu # "
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, fuzzy, c-format
+msgid "Couldn't install the required packages"
+msgstr "Пакетът %s не може да бъде инсталиран!"
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
+#, c-format
+msgid "Please check the repositories are correctly configured"
+msgstr ""
+
+#: harddrake/sound.pm:462
+#, c-format
+msgid "No known driver"
+msgstr "Няма известен драйвер"
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr "Няма драйвер за вашата звукова карта (%s)"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr ""
+"За да се активират направените промени е необходимо да излезете от текущата "
+"сесия и отново да влезете"
+
+#: harddrake/sound.pm:522
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Моля, почакайте ... Прилагане на настройките"
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:527
#, c-format
-msgid "Enable PulseAudio"
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
+
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "Търси нови сървъри"
+
+#: harddrake/sound.pm:551
+#, fuzzy, c-format
+msgid "PulseAudio"
msgstr "Позволи PulseAudio"
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:552
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
-msgstr "Позволи 5.1 звук с PulseAudio"
+msgid "PulseAudio with Glitch-Free mode"
+msgstr ""
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:553
#, c-format
-msgid "Enable user switching for audio applications"
-msgstr "Позволи потребителско превключване за звуковите приложения"
+msgid "PipeWire with WirePlumber"
+msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:554
#, c-format
-msgid "Use Glitch-Free mode"
+msgid "PipeWire with PipeWire Media Session"
msgstr ""
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
msgstr "Задай на звуковият пулт стойностите по подразбиране"
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr ""
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr ""
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "Няма алтернативен драйвер"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
@@ -3189,150 +3276,75 @@ msgstr ""
"Няма известнен OSS/ALSA алтернативен драйвер за вашата звукова карта (%s) "
"която в момента използва \"%s\""
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Настройка за звук"
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Тук може да изберете алтернативен драйвер (OSS или ALSA) за вашата звукова "
-"карта (%s)."
+msgid "Sound troubleshooting"
+msgstr "Затруднения при звук"
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
"\n"
"\n"
-"Вашата карта в момента използва %s\"%s\" драйвер (подразбиращ се драйвер за "
-"картата ви е \"%s\")"
-
-#: harddrake/sound.pm:414
-#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Драйвер: "
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr ""
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"Няма свободен драйвер за вашата звукова карта (%s), но има собствени драйвер "
-"на \"%s\"."
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "Няма известен драйвер"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "Няма драйвер за вашата звукова карта (%s)"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Затруднения при звук"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "Ръчно задаване на драйвер"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Избор на произволен драйвер"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
-msgstr ""
-"Ако мислите, че знаете кой точно драйвер е подходящ за вашата карта,\n"
-"то вие може да го изберете от горният списък.\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
+"\n"
+"\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
"\n"
-"Текущо използваният драйвер за вашата \"%s\" звукова карта е \"%s\" "
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
+msgstr ""
#: harddrake/v4l.pm:12
#, c-format
@@ -3360,7 +3372,7 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
#: harddrake/v4l.pm:478
@@ -3373,70 +3385,73 @@ msgstr "Модел на карта:"
msgid "Tuner type:"
msgstr "Тип на тунер:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "Готово"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Да"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "Не"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Изберете файл"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Добавяне"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Промяна"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Край"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Предишен"
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "Не е избран файл"
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "Вие избрахте директория, а не файл"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "Няма такава директория"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "Няма такъв файл"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr "Внимание, Caps Lock е натиснат"
@@ -3486,9 +3501,9 @@ msgid " enter `void' for void entry"
msgstr ""
#: interactive/stdio.pm:128
-#, fuzzy, c-format
+#, c-format
msgid "=> There are many things to choose from (%s).\n"
-msgstr "=> Има много неща за избор от (%s).\n"
+msgstr ""
#: interactive/stdio.pm:131
#, c-format
@@ -3515,1248 +3530,1269 @@ msgstr ""
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
-#, fuzzy, c-format
+#: lang.pm:247
+#, c-format
msgid "default:LTR"
-msgstr "default:LTR"
+msgstr ""
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Андора"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "Обединени Арабски Емирства"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Афганистан"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Антигуа и Барбуда"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Ангила"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Албания"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Армения"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Холандски Антили"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Ангола"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Антарктика"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Аржентина"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "Американска Самоа"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Австрия"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Австралия"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Аруба"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Азербайджан"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Босна и Херцеговина"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Барбадос"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Бангладеш"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Белгия"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Буркина Фасо"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "България"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Бахрейн"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Бурунди"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Бенин"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Бермуда"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Бруней"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Боливия"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Бразилия"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Бахами"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Бутан"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Остров Бувет"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Ботсвана"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "Беларус"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Белиз"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Канада"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Кокосови Острови"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Конго (Киншаса)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "Централноафриканска Република"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Конго (Бразивил)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Швейцария"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Кот д'ивоар"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Острови Кук"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Чили"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Камерун"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "Китай"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Колумбия"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Коста Рика"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Сърбия и Черна Гора"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Куба"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Капо Верде"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Коледни Острови"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Кипър"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Чешка Република"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Германия"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Джибути"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Дания"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Доминика"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Доминиканска Република"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Алжир"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Еквадор"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Естония"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Египет"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Западна Сахара"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Еритрея"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Испания"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Етиопия"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Финландия"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Фиджи"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Фолклендски Острови (Малвини)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Микронезия"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Острови Фаро"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "Франция"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Габон"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Англия"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Гренада"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Грузия"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Френска Гвиана"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Гана"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Гибралтар"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Гренландия"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Гамбия"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Гвинея"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Гваделупа"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Екваториална Гвинея"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Гърция"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "Южни Сандвичеви Острови и Южна Джорджия"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Гватемала"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Гуам"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Гвинея-Бисау"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Гияна"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Хонг Конг (Китай)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Хърд и МакДоналд Острови"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Хондурас"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Хърватия"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Хаити"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Унгария"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "Индонезия"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Ирландия"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Израел"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Индия"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "Английски територии в Индийския океан"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Ирак"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Иран"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Исландия"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "Италия"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Ямайка"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "Йордания"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Япония"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Кения"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Киргизтан"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Камбоджа"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Кирибати"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Комори"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "Свети Китс и Невис"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Корея (Северна)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Корея"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Кувейт"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Кайманови Острови"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Казахстан"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Лаос"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Ливан"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "Санта Лучия"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Лихтенщайн"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Шри Ланка"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Либерия"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Лесото"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Литва"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Люксембург"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Латвия"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Либия"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Мароко"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Монако"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Молдова"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Мадагаскар"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Маршалови Острови"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Македония"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Мали"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Мианмар"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Монголия"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Северни Марианови Острови"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Мартиника"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Мавритания"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Монсерат"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Малта"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Мавриций"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Малдиви"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Малави"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Мексико"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Малайзия"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Мозамбик"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Намибия"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Нова Каледония"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Нигер"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Норфолк Остров"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Нигерия"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Никарагуа"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Холандия"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Норвегия"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Непал"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Науру"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Нию"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Нова Зеландия"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Оман"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Панама"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Перу"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "Френска Полинезия"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Папуа Нова Гвинея"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Филипини"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Пакистан"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Полша"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Свети Пиер и Микелон"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Питкеърн"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Пуерто Рико"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Палестина"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Португалия"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Парагвай"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Палау"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Катар"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Риюниън"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Румъния"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Русия"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Руанда"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Саудитска Арабия"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Соломонови Острови"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Сейшели"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Судан"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "Швеция"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Сингапур"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Света Елена"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Словения"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "Свалбард и Ян Майен Острови"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Словакия"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "Сиера Леоне"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "Сан Марино"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Сенегал"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Сомалия"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Суринам"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "Сао Томе и Принсипи"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "Ел Салвадор"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Сирия"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Свазиленд"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Тюрк и Кайкос Острови"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Чад"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "Франция Южни Територии"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Того"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Тайланд"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Таджикистан"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Токелау"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Източен Тимор"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Туркменистан"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Тунис"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Тонга"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Турция"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Тринидад и Тобаго"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Тувалу"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Тайван"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Танзания"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Украйна"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Уганда"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "Малки Острови по крайбрежието на САЩ"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "САЩ"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Уругвай"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Узбекистан"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Ватикана"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "Свети Винсент и Гренадин"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Венецуела"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Вирджински Острови (Британски)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "Вирджински Острови (САЩ)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Виетнам"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Вануату"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Уолис и Футуна Острови"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Самоа"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Йемен"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Майот"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "Южна Африка"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Замбия"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Зимбабве"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "Добре дошли в %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr "Физически дял %s все още се използва"
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "Първо премахни логичните дялово\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr ""
+#. -PO: Only write something if needed:
#: messages.pm:11
-#, fuzzy, c-format
+#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr " "
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Въведение"
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+"Операционната система и различните компоненти достъпни в Mageia "
+"дистрибуцията по-долу ще се\n"
+"наричат \"Софтуерен Продукти\". Софтуерните Продукти включват, но не се "
+"ограничават само до, набора\n"
+"програми, методи, правила и документация отнасяща се до операционната "
+"система и различните\n"
+"компоненти на Mageia дистрибуцията."
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr "1. Лицензионен договор"
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4770,16 +4806,39 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+"Моля, прочетете внимателно този документ. Този документ е лицензионен "
+"договор между вас и\n"
+"Mageia, който се отнася до Софтуерния Продукт. Чрез инсталирането, "
+"копирането\n"
+"или използването на Софтуерния Продукт по какъвто и да е начин вие изрично "
+"приемате и\n"
+"напълно се съгласявате да спазвате сроковете и условията на този Лиценз.\n"
+"Ако не се съгласявате с някоя част на Лиценза, нямате право да инсталирате, "
+"копирате или\n"
+"използвате Софтуерния Продукт. Опитите да се инсталира, копира или използва "
+"Софтуерния Продукт\n"
+"несъобразно със сроковете и условията на този Лиценз се забраняват и такива "
+"прекратяват правата\n"
+"ви по този Лиценз. При прекратяване на Лиценза, трябва незабавно да "
+"унижтожите всички\n"
+"копия на Софтуерния лиценз."
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr "2. Ограничена гаранция"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4787,15 +4846,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4804,116 +4863,36 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
-"The Software Products consist of components created by different persons or "
-"entities. %s\n"
-"Most of these licenses allow you to use, duplicate, adapt or redistribute "
-"the components which \n"
-"they cover. Please read carefully the terms and conditions of the license "
-"agreement for each component \n"
-"before using any component. Any question on a component license should be "
-"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
-"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
-"All rights to the components of the Software Products belong to their "
-"respective authors and are \n"
-"protected by intellectual property and copyright laws applicable to software "
-"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
-"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
-"If any portion of this agreement is held void, illegal or inapplicable by a "
-"court judgment, this \n"
-"portion is excluded from this contract. You remain bound by the other "
-"applicable sections of the \n"
-"agreement.\n"
-"The terms and conditions of this License are governed by the Laws of "
-"France.\n"
-"All disputes on the terms of this license will preferably be settled out of "
-"court. As a last \n"
-"resort, the dispute will be referred to the appropriate Courts of Law of "
-"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
+"you."
msgstr ""
-"Въведение\n"
-"\n"
-"Операционната система и различните компоненти достъпни в Mandriva Linux "
-"дистрибуцията по-долу ще се\n"
-"наричат \"Софтуерен Продукти\". Софтуерните Продукти включват, но не се "
-"ограничават само до, набора\n"
-"програми, методи, правила и документация отнасяща се до операционната "
-"система и различните\n"
-"компоненти на Mandriva Linux дистрибуцията.\n"
-"\n"
-"\n"
-"1. Лицензионен договор\n"
-"\n"
-"Моля, прочетете внимателно този документ. Този документ е лицензионен "
-"договор между вас и\n"
-"Mandriva S.A., който се отнася до Софтуерния Продукт. Чрез инсталирането, "
-"копирането\n"
-"или използването на Софтуерния Продукт по какъвто и да е начин вие изрично "
-"приемате и\n"
-"напълно се съгласявате да спазвате сроковете и условията на този Лиценз.\n"
-"Ако не се съгласявате с някоя част на Лиценза, нямате право да инсталирате, "
-"копирате или\n"
-"използвате Софтуерния Продукт. Опитите да се инсталира, копира или използва "
-"Софтуерния Продукт\n"
-"несъобразно със сроковете и условията на този Лиценз се забраняват и такива "
-"прекратяват правата\n"
-"ви по този Лиценз. При прекратяване на Лиценза, трябва незабавно да "
-"унижтожите всички\n"
-"копия на Софтуерния лиценз.\n"
-"\n"
-"\n"
-"2. Ограничена гаранция\n"
-"\n"
"Софтуерните Продукти и приложената документация се предоставят \"такива "
"каквито са\", без гаранция,\n"
"в рамките на разрешеното от закона.\n"
-"Mandriva S.A., при никакви обстоятелства и в рамките на закона, не е "
-"отговорна за каквито да e\n"
+"Mageia, при никакви обстоятелства и в рамките на закона, не е отговорна за "
+"каквито да e\n"
"умишлени, случайни, преки или косвени щети (включително загуба на данни за "
"работа, прекратяване на,\n"
"работа, финансови загуби, законни данъци и наказания в резултат на съдебно "
"решение или каквато и да е\n"
"друга произлизащи от това загуби) произтичащи от употребата или от "
"невъзможността да се употреби\n"
-"Софтуерния Продукт, даже ако Mandriva S.A. да е известила за възможността "
-"или случването на такава загуба.\n"
+"Софтуерния Продукт, даже ако Mageia да е известила за възможността или "
+"случването на такава загуба.\n"
"\n"
"ОГРАНИЧЕНА ОТГОВОРНОСТ СВЪРЗАНА С ПРИТЕЖАВАНЕТО ИЛИ ИЗПОЛЗВАНЕТО НА ЗАБРАНЕН "
"СОФТУЕР В НЯКОИ СТРАНИ\n"
"\n"
-"В рамките на закона, Mandriva S.A. и нейните дистрибутори няма при никакви "
-"условия да бъдат\n"
+"В рамките на закона, Mageia и нейните дистрибутори няма при никакви условия "
+"да бъдат\n"
"отговорни за каквито и да било умишлени, случайни, преки или косвени щети "
"(включително загуба на данни\n"
"за работа, прекратяване на, работа, финансови загуби, законни данъци и "
@@ -4921,49 +4900,81 @@ msgstr ""
"съдебно решение или каквато и да е друга произлизащи от това загуби) "
"произтичащи от притежаването\n"
"и употребата на софтуерни компоненти и от изтеглянето на софтуерни "
-"компоненти от сайтовете на Mandriva Linux,\n"
+"компоненти от сайтовете на Mageia,\n"
"които са забранени в някои страни от местното законодателство.\n"
"Тази ограничена отговорност се отнася до, но не само за, мощните "
"криптографски компоненти включени\n"
-"в Софтуерния Продукт.\n"
-"\n"
-"\n"
-"3. GPL Лиценза и придружаващи лицензи\n"
-"\n"
-"Софтуерният Продукт се състои от компоненти създадени от различни хора или "
-"организации. Повечето от\n"
-"тези компоненти се управляват от сроковете и условията на GNU Общия Публичен "
-"Лиценз, оттук нататък наричан\n"
-"\"GPL\", или подобни нему лицензи. Повечето от тези лицензи ви позволяват да "
-"използвате, копирате, или\n"
-"редистрибутирате компонентите, които те покриват. Моля, прочетете внимателно "
-"сроковете и условията на\n"
-"лицензионния договор на всеки компонент преди да го използвате. Всякакви "
-"въпроси относно лиценза\n"
-"на компонентите би трябвало да бъдат насочени към съответния им автор, а не "
-"към Mandriva.\n"
-"Програмите разработени от Mandriva S.A. се управляват от GPL Лиценза. "
-"Документацията написана\n"
-"от Mandriva S.A. се управлява от специален лиценз. Моля, погледнете "
-"документацията за\n"
-"повече информация.\n"
-"\n"
-"\n"
-"4. Права за Интелектуална Собственост\n"
-"\n"
+"в Софтуерния Продукт."
+
+#: messages.pm:68
+#, fuzzy, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr "3. GPL Лиценза и придружаващи лицензи"
+
+#: messages.pm:70
+#, c-format
+msgid ""
+"The Software Products consist of components created by different persons or "
+"entities.\n"
+"Most of these licenses allow you to use, duplicate, adapt or redistribute "
+"the components which \n"
+"they cover. Please read carefully the terms and conditions of the license "
+"agreement for each component \n"
+"before using any component. Any question on a component license should be "
+"addressed to the component \n"
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
+"Documentation written \n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr "4. Права за Интелектуална Собственост"
+
+#: messages.pm:81
+#, c-format
+msgid ""
+"All rights to the components of the Software Products belong to their "
+"respective authors and are \n"
+"protected by intellectual property and copyright laws applicable to software "
+"programs.\n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
+"Products, as a whole or in parts, by all means and for all purposes.\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
"Всички права към компонентите на Софтуерния Продукт принадлежат на "
"съответните им автори и са\n"
"защитени от законите за интелектуалната собственост и за копиране прилагани "
"за софтуерните програми.\n"
-"Mandriva S.A. запазва правото си да модифицира и пригодява Софтуерния "
-"Продукт, като цяло или на\n"
+"Mageia запазва правото си да модифицира и пригодява Софтуерния Продукт, като "
+"цяло или на\n"
"части, по всякакъв начин и с всякакви цели.\n"
-"\"Mandriva\", \"Mandriva Linux\" и свързаните логота са запазена марка на "
-"Mandriva S.A.\n"
-"\n"
-"\n"
-"5. Управляващи Закони\n"
-"\n"
+"\"Mageia\" и свързаните логота са запазена марка на %s"
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr "5. Управляващи Закони"
+
+#: messages.pm:90
+#, c-format
+msgid ""
+"If any portion of this agreement is held void, illegal or inapplicable by a "
+"court judgment, this \n"
+"portion is excluded from this contract. You remain bound by the other "
+"applicable sections of the \n"
+"agreement.\n"
+"The terms and conditions of this License are governed by the Laws of "
+"France.\n"
+"All disputes on the terms of this license will preferably be settled out of "
+"court. As a last \n"
+"resort, the dispute will be referred to the appropriate Courts of Law of "
+"Paris - France.\n"
+"For any question on this document, please contact Mageia."
+msgstr ""
"Ако някоя част от този договор се води забранена, нелегална или неприложима "
"според решение на съд,\n"
"тази част се изключва от договора. Вие оставате ограничени от останалите "
@@ -4973,157 +4984,55 @@ msgstr ""
"съда. Като крайна мярка,\n"
"споровете ще бъдат отнасяни до подходящия правни съдилища на Париж - "
"Франция.\n"
-"За всякакви въпроси по този документ, моля, свържете се с Mandriva S.A.\n"
+"За всякакви въпроси по този документ, моля, свържете се с Mageia\n"
"\n"
"ЗАБЕЛЕЖКА: Това е български приблизителен превод на документа, което "
"означава, че той\n"
"вероятно не е достатъчно точен. Като по-достоверен източник ползвайте "
"неговия оригинал на\n"
-"английски.\n"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
+"английски."
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-
-#: messages.pm:112
+#: messages.pm:102
#, c-format
msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
-#: messages.pm:120
-#, c-format
+#: messages.pm:112
+#, fuzzy, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
+"Поздравления, инсталацията е преключена.\n"
+"Извадете инсталационния диск и натисене Enter за да рестартирайте."
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:114
#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
+"For information on fixes which are available for this release of Mageia,\n"
"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"%s"
msgstr ""
-"Поздравления, инсталацията е преключена.\n"
-"Извадете инсталационния диск и натисене Enter за да рестартирайте.\n"
-"\n"
-"\n"
"За информация, относно известни вече проблеми как се решават, свързани с "
-"тази версия на Mandriva Linux,\n"
+"тази версия на Mageia,\n"
"се консултирайте с документа Errata, на адрес : \n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Информация за настройване на вашата система можете да намерите в\n"
-"в официалното Mandriva Linux ръководство на потребителя."
+"%s"
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
#: modules/interactive.pm:19
#, c-format
@@ -5167,18 +5076,18 @@ msgstr "Инсталиране на драйвер за USB контролер"
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "Инсталиране на драйвер за Firewire контролер %s"
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "Инсталиране на драйвер за Firewire контролер \"%s\""
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "Инсталиране на драйвер за дисков контролер %s"
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "Инсталиране на драйвер за дисков контролер \"%s\""
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "Инсталиране на драйвер за Ethernet контролер %s"
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "Инсталиране на драйвер за Ethernet контролер \"%s\""
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -5259,35 +5168,35 @@ msgstr ""
"Зареждането на модула %s не успя.\n"
"Искате ли да опитате отново с други параметри ?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr ""
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
msgstr ""
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Изисква парола"
+msgstr ""
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "монтирането не успя: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "На тази платформа не се поддържат разширени дялове "
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
@@ -5295,10 +5204,10 @@ msgstr ""
"Трябва да се пренаредят основните дялове, така че да се освободи място до "
"разширените дялове."
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
@@ -5307,22 +5216,22 @@ msgstr ""
"Проверката за цялост на данните не е успешна.\n"
"Това означава, че върху диска ще се записват случайни или повредени данни."
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr "Премахване на неизползвани пакети"
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr "Откриване на неизползвани пакети с драйвери за хардуерни устройства"
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr "Откриване на неизползвани пакети за локализация"
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
@@ -5331,64 +5240,64 @@ msgstr ""
"Открити са пакети, които не са необходими за конфигурирането на вашата "
"система."
-#: pkgs.pm:266
-#, fuzzy, c-format
+#: pkgs.pm:286
+#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
-msgstr "Ще бъдат премахнати следните пакети, освен ако не изберете друго:"
+msgstr ""
-#: pkgs.pm:269 pkgs.pm:270
+#: pkgs.pm:289 pkgs.pm:290
#, c-format
msgid "Unused hardware support"
msgstr "Неизползвана поддръжка на хардуерни устройства"
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr "Неизползвани локализации"
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
msgstr "Не мога да прибавя дял към _форматиран_ RAID %s"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "Няма достатъчно дялове за RAID ниво %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "Не може да се създаде директория /usr/share/sane/firmware!"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "Не може да се създаде връзка към /usr/share/sane/%s!"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr "Не може да се копира firmware файла %s в /usr/share/sane/firmware!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "Не могат да се зададат права за достъп на firmware файл %s!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Scannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr ""
-"Не могат да се инсталират пакетите необходими за да се споделя вашия скенер"
-"(и)."
+"Не могат да се инсталират пакетите необходими за да се споделя вашия "
+"скенер(и)."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr "Вашия скенер(и) ще да бъде достъпен само за потребител root."
@@ -5498,8 +5407,8 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
#: security/help.pm:63
@@ -5584,7 +5493,7 @@ msgstr "Използвай пароли за удостоверяване сам
#: security/help.pm:94
#, c-format
-msgid "Activate ethernet cards promiscuity check."
+msgid "Activate Ethernet cards promiscuity check."
msgstr ""
#: security/help.pm:96
@@ -5622,9 +5531,9 @@ msgstr ""
"които трявба да включва паролата."
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "Установяване на root umask"
+msgstr ""
#: security/help.pm:109
#, c-format
@@ -5748,9 +5657,9 @@ msgid "Timeout unit is second"
msgstr ""
#: security/help.pm:138
-#, fuzzy, c-format
+#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "Установяване на потребителска umask"
+msgstr ""
#: security/l10n.pm:11
#, c-format
@@ -6018,11 +5927,11 @@ msgid "Standard"
msgstr "Стандартна"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "Сигурност"
+msgstr ""
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6031,7 +5940,7 @@ msgid ""
"on your own."
msgstr ""
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -6040,7 +5949,7 @@ msgstr ""
"Това е стандартната сигурност препоръчителна за компютър, който ще бъде "
"използван да се свързва към Интернет като клиент."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6055,48 +5964,48 @@ msgstr ""
"Сигурността сега е достатъчно голяма да се използва системата като\n"
"сървър приемащ връзки от много клиенти. "
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Сигурност"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "Основни опции на DrakSec "
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "Моля, изберете ниво на сигурност"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
-msgstr ""
+msgstr "%s: %s"
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "Администратор по защита:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
msgstr ""
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "Пусни ALSA (Advanced Linux Sound Architecture) звуковата система"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "Anacrton - периодично изпълняване на команди по разписание."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6106,7 +6015,7 @@ msgstr ""
"syslog. Може също да се използва за спиране на машината, когато батерията е "
"изтощена."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6115,7 +6024,22 @@ msgstr ""
"Пуска команди по разписание във време определено от командата at и пуска\n"
"набор от други, когато натовареността спадне достатъчно."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr ""
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6127,18 +6051,18 @@ msgstr ""
"по разписание. vixie cron добавя множество преимущества над тези на простия\n"
"UNIX cron, включително по-добра сигурност и мощни настройващи опции."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr ""
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6146,7 +6070,20 @@ msgid ""
"It is used by GNOME and KDE"
msgstr ""
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6158,12 +6095,12 @@ msgstr ""
"Midnight Commander. Също така позволява базираните на мишка конзоли\n"
"режи-и-лепи операции, и включва поддръжка на изкачащи менюта на козолата."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
@@ -6172,7 +6109,7 @@ msgstr ""
"HardDrake прави проби на хардуера, и евентуално настройва\n"
"нов/променен хардуер."
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
@@ -6181,7 +6118,7 @@ msgstr ""
"файлове\n"
"и CGI."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6196,17 +6133,23 @@ msgstr ""
"telnet, ftp, rsh и rlogin. Изключването на inetd изключва всички услуги,\n"
"за които отговаря."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"Включи филтрирането на пакети за Linux ядра серия 2.2, за\n"
-"настройка на защитната стена, защитаваща на машината ви от\n"
-"мрежови атаки."
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6218,7 +6161,7 @@ msgstr ""
"Тя може да бъде избрана с инструмента kbdconfig. Трябва да оставите "
"товавключено за повечето машини."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6227,12 +6170,17 @@ msgstr ""
"Автоматично регенериране на header-ите на ядрото, в /boot за\n"
"/usr/include/linux/{autoconf,version}.h"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr "Автоматично засичане и настройка на хардуера при стартиране."
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6241,7 +6189,7 @@ msgstr ""
"Linuxconf понякога урежда извършването на различни задачи\n"
"при стартиране за поддръжка на системната настройка."
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -6250,7 +6198,7 @@ msgstr ""
"lpd е демона за печат необходим на lpr да работи нормално. Той просто е\n"
"сървър, който определя работите за печат на принтер(а/ите)."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
@@ -6259,14 +6207,29 @@ msgstr ""
"Linux Virtual Server се използва за изграждане на високопроизводителен\n"
"и добре достъпен сървър."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6275,7 +6238,12 @@ msgstr ""
"named (BIND) е Domain Name Server (DNS), който се използва да превърне\n"
"името на хоста до IP адрес."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6284,7 +6252,7 @@ msgstr ""
"Монтира и демонтира всякакви Network File System (NFS), SMB (LAN\n"
"Manager/Windows), и NCP (NetWare)."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -6293,7 +6261,17 @@ msgstr ""
"Активира/деактивира всички мрежови интерфейси, настроени да се пускат\n"
"при стартиране на машината."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6304,7 +6282,7 @@ msgstr ""
"Тази услуга осигурява функционалността на NFS сървъра, който се настройва\n"
"чрез файла /etc/exports."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6313,12 +6291,12 @@ msgstr ""
"NFS е популярен протокол за обмен на файлове по TCP/IP мрежи.\n"
"Тази услуга осигурява функционалността на заключването на NFS файловете."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6327,12 +6305,17 @@ msgstr ""
"Автоматично включване на numlock клавиша под конзола и\n"
"Xorg при стартиране."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "Поддръжка на OKI 4w и съвместими win-принтери."
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6344,7 +6327,7 @@ msgstr ""
"laptop-и. Това няма да се стартира преди да бъде настроен, така че е\n"
"по-добре да я имате инсталирана на машини, които не се нуждаят от нея."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6356,7 +6339,12 @@ msgstr ""
"NFS и NIS. portmap сървъра трябва да е пуснат на машини, които работят като\n"
"сървър за протоколи, които се нуждаят да използват RPC механизъм."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6365,7 +6353,7 @@ msgstr ""
"Postfix е Main Transport Agent (MTA), който е програма която пренася\n"
"поща от машина на машина."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6374,16 +6362,21 @@ msgstr ""
"Запазва и възстановята потока на системна ентропия за по-голямо качество\n"
"на произволно генериране на числа."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
"Свържи чисти драйвери с блокови устройства (като дялове\n"
"на твърдия диск), за употребата от приложения като Oracle или DVD плеъри"
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr ""
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6394,7 +6387,7 @@ msgstr ""
"RIP протокола. Докато RIP е широко използвана за малки мрежи, за по-сложни\n"
"протоколи за рутиране са нужни за сложни мрежи. "
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6403,7 +6396,14 @@ msgstr ""
"rstat протокола позволява на мрежовите потребители да извличат\n"
"параметрите на възможностите за всяка машина на мрежата."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
@@ -6412,7 +6412,7 @@ msgstr ""
"rusers протокола позволява на мрежовите потребители да проверяват кой е\n"
"влязъл на друга отговарящата машина."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6422,32 +6422,47 @@ msgstr ""
"на всички потребители влезли на машина с работещ rwho демон (подобен на "
"finger)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "Пуснкане звуковата система на машината ви"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6456,82 +6471,94 @@ msgstr ""
"Syslog е програма която много демони използват да запазват съобщения в\n"
"различни системни файлове (логове). Добре е постоянно да я имате работеща."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "Зареждане драйвери за вашите USB устройства."
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr ""
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr ""
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Печатане"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Интернет"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Поделяне на файлове"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Мрежа"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "Система"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "Отдалечена администрация"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Сървър за бази данни"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Услуги"
-#: services.pm:153
-#, fuzzy, c-format
+#: services.pm:205
+#, c-format
msgid "Choose which services should be automatically started at boot time"
-msgstr "Избира услугите, които трябва да се пуснат при пускане на машината"
+msgstr ""
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Услуги: %d активирани от %d регистрирани"
+msgid "%d activated for %d registered"
+msgstr "%d активирани от %d регистрирани"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "стартиране"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "спряна"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Услуги и демони"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6540,32 +6567,27 @@ msgstr ""
"Няма допълнителна информация\n"
"за тази услуга, съжелявам."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Информация"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "Стартирай при заявка"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "При зареждане"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "Старт"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Стоп"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6584,7 +6606,7 @@ msgid ""
"USA.\n"
msgstr ""
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6600,28 +6622,27 @@ msgid ""
"--version : show version number.\n"
msgstr ""
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6632,7 +6653,7 @@ msgid ""
" --wizard - like --add"
msgstr ""
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6650,11 +6671,11 @@ msgid ""
" : and gs for ghostscript for only this one."
msgstr ""
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6668,17 +6689,17 @@ msgid ""
"IP, nbi image name)"
msgstr ""
-#: standalone.pm:100
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[клавиатура]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr ""
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6692,26 +6713,26 @@ msgid ""
"--quiet : do not be interactive. To be used with (dis)connect."
msgstr ""
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
msgstr ""
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6719,7 +6740,7 @@ msgid ""
" XFdrake resolution"
msgstr ""
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6730,71 +6751,76 @@ msgstr ""
"Използване: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
"testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
+#: timezone.pm:170 timezone.pm:171
#, c-format
msgid "All servers"
msgstr "Всички сървъри"
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr "Глобални"
-#: timezone.pm:199
+#: timezone.pm:210
#, c-format
msgid "Africa"
msgstr "Африка"
-#: timezone.pm:200
+#: timezone.pm:211
#, c-format
msgid "Asia"
msgstr "Азия"
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr "Европа"
-#: timezone.pm:202
+#: timezone.pm:213
#, c-format
msgid "North America"
msgstr "Северна Америка"
-#: timezone.pm:203
+#: timezone.pm:214
#, c-format
msgid "Oceania"
msgstr "Океания"
-#: timezone.pm:204
+#: timezone.pm:215
#, c-format
msgid "South America"
msgstr "Южна Америка"
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Хонг Конг"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "Руска Федерация"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Югославия"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Всичко правилно ли е ?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "Трябва да изберете файл, а не директория."
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Информация"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -6809,264 +6835,10 @@ msgstr ""
msgid "Installation failed"
msgstr "Инсталацията провалена"
-#~ msgid "Automatic routing from ALSA to PulseAudio"
-#~ msgstr "Автоматично препращане от ALSA към PulseAudio"
-
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "Моля излезте от текущата сесия и използвайте Ctrl-Alt-BackSpace"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "Добре дошли при Cracker-ите"
-
-#~ msgid "Poor"
-#~ msgstr "Лошо"
-
-#~ msgid "High"
-#~ msgstr "Високо"
-
-#~ msgid "Higher"
-#~ msgstr "По-високо"
-
-#~ msgid "Paranoid"
-#~ msgstr "Параноично"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "Това ниво се използва с внимание. Това кара системата ви по-лесна за\n"
-#~ "употреба, но е по-чувствително: не трябва да бъде използвана на машини\n"
-#~ "свързани с други или по Интернет. Няма достъп с пароли."
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr ""
-#~ "Паролата сега е включена, но използването като мрежов компютър не е "
-#~ "препоръчително."
-
-#~ msgid ""
-#~ "There are already some restrictions, and more automatic checks are run "
-#~ "every night."
-#~ msgstr ""
-#~ "Вече има някой ограничения, и повече автоматични проверки ще се "
-#~ "изпълняват всяка вечер."
-
-#~ msgid ""
-#~ "This is similar to the previous level, but the system is entirely closed "
-#~ "and security features are at their maximum."
-#~ msgstr ""
-#~ "Подобно на предишното ниво, но системата е напълно затворена.\n"
-#~ "Нивото на сигурност е на максимума си."
-
-#~ msgid ""
-#~ "\n"
-#~ "Warning\n"
-#~ "\n"
-#~ "Please read carefully the terms below. If you disagree with any\n"
-#~ "portion, you are not allowed to install the next CD media. Press "
-#~ "'Refuse' \n"
-#~ "to continue the installation without using these media.\n"
-#~ "\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a network. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-#~ msgstr ""
-#~ "\n"
-#~ "Внимание\n"
-#~ "\n"
-#~ "Моля, прочетете условията по-долу. Ако не сте съгласни с някое от тях,\n"
-#~ "не можете да продължите инсталацията на следващия CD носител. Натиснете\n"
-#~ "'Откажи', за да продължите инсталацията без тези носители.\n"
-#~ "\n"
-#~ "\n"
-#~ "Някои компоненти съдържащи се в следващия CD носител не са "
-#~ "разпространяват\n"
-#~ "под GPL Лиценза или подобен такъв. Всеки такъв компонент е под условията\n"
-#~ "и положенията на специфичния му лиценз. Моля, прочетете внимателно и "
-#~ "изцяло\n"
-#~ "тези специфични лицензи преди да използвате или разпространявате "
-#~ "споменатите\n"
-#~ "компоненти.\n"
-#~ "Такива лицензи по принцип предотвратява преноса, копирането (освен с цел\n"
-#~ "съхранение), разпространяването, обратния инженеринг, деасемблирането\n"
-#~ "декомпилацията или модификацията на компонентите.\n"
-#~ "Всяко нарушаване на спогодбата незабавно преустановява правата ви по\n"
-#~ "специфичния лиценз. Освен ако специфичния лиценз ви дава такива права,\n"
-#~ "обикновено не можете да инсталирате програмите на повече от една система\n"
-#~ "или да ги пригаждате за използване в мрежа. Ако не сте сигурни, моля\n"
-#~ "свържете се с дистрибуция или редактора на компонена.\n"
-#~ "Прехвърлянето на трети лица или копирането на всяка компонента, "
-#~ "включително\n"
-#~ "на документацията, обикновено са забранени.\n"
-#~ "\n"
-#~ "\n"
-#~ "Всички права на компонентите от следващия CD носител принадлежат на\n"
-#~ "съответните им автори и са защитени като интелектуална собственост от\n"
-#~ "законите за авторски права приложими за софтуерните програми.\n"
-
-#~ msgid "Use libsafe for servers"
-#~ msgstr "Използвайте libsafe за сървъри"
-
-#~ msgid ""
-#~ "A library which defends against buffer overflow and format string attacks."
-#~ msgstr ""
-#~ "Библиотека, която осигурява защита от атаки с препълване на буфер и "
-#~ "форматни стрингове."
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "LILO/grub инсталация"
-
-#~ msgid "Precise RAM size if needed (found %d MB)"
-#~ msgstr "Точен размер на RAM-паметта, ако е необходимо (намерени %d MB)"
-
-#~ msgid "Give the ram size in MB"
-#~ msgstr "Дава размера RAM-памет в Mb"
-
-#~ msgid ""
-#~ "If you plan to use aboot, be careful to leave a free space (2048 sectors "
-#~ "is enough)\n"
-#~ "at the beginning of the disk"
-#~ msgstr ""
-#~ "Ако смятате да използвате aboot, оставете свободно пространство (2048 "
-#~ "сектора\n"
-#~ "са достатъчни) в началото на диска"
-
-#~ msgid "Security level"
-#~ msgstr "Ниво на сигурност"
-
-#~ msgid "Expand Tree"
-#~ msgstr "Разшири дървото"
-
-#~ msgid "Collapse Tree"
-#~ msgstr "Изчисти дървото"
-
-#~ msgid "Toggle between flat and group sorted"
-#~ msgstr "Превключване между нормално и сортиране по групи"
-
-#~ msgid "Choose action"
-#~ msgstr "Изберете действие"
-
-#~ msgid "Authentication LDAP"
-#~ msgstr "LDAP ауторизация"
-
-#~ msgid "TLS"
-#~ msgstr "TLS"
-
-#~ msgid "SSL"
-#~ msgstr "SSL"
-
-#, fuzzy
-#~ msgid "Authentication Active Directory"
-#~ msgstr "идентификация"
-
-#, fuzzy
-#~ msgid "LDAP users database"
-#~ msgstr "Сървър, Бази-данни"
-
-#~ msgid "Authentication NIS"
-#~ msgstr "NIS идентификация"
-
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "Идентификация на Windows Домейн"
-
-#~ msgid "Undo"
-#~ msgstr "Върни"
-
-#~ msgid "Save partition table"
-#~ msgstr "Запази таблицата с дяловете"
-
-#~ msgid "Restore partition table"
-#~ msgstr "Възстанови таблицата с дяловете"
-
-#~ msgid ""
-#~ "The backup partition table has not the same size\n"
-#~ "Still continue?"
+#~ msgid "You cannot install the bootloader on a %s partition\n"
#~ msgstr ""
-#~ "Резервната таблица на дяловете не е със същата големина\n"
-#~ "Да продължа ли все пак ?"
-
-#~ msgid "Info: "
-#~ msgstr "Информация: "
+#~ "Не можете да инсталирате програмата за начално зареждане на дяла %s\n"
#, fuzzy
-#~ msgid "Unknown driver"
-#~ msgstr "Неизвестен драйвер"
-
-#~ msgid "Error reading file %s"
-#~ msgstr "Грешка при четенето на файла %s"
-
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "Възстановяването от файла %s не успя: %s"
-
-#~ msgid "Bad backup file"
-#~ msgstr "Лош backup-файл"
-
-#~ msgid "Error writing to file %s"
-#~ msgstr "Грешка при запис във файла %s"
-
-#~ msgid "Error: The \"%s\" driver for your sound card is unlisted"
-#~ msgstr "Грешка: \"%s\" драйвер за вашата карта е инсталиран"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Journalised FS"
-#~ msgstr "Журнална FS"
-
-#~ msgid "Starts the X Font Server (this is mandatory for Xorg to run)."
-#~ msgstr "Стартира X Font Server (това е задължително, за да тръгне Xorg)."
-
-#~ msgid "Add user"
-#~ msgstr "Добави потребител"
-
-#~ msgid "Accept user"
-#~ msgstr "Приеми потребител"
-
-#~ msgid "Rescue partition table"
-#~ msgstr "Спасяване таблицата с дяловете"
-
-#~ msgid "Removable media automounting"
-#~ msgstr "Автоматично монтиране на сменяем носител"
-
-#~ msgid "Trying to rescue partition table"
-#~ msgstr "Опитвам се да спася таблицата на дяловете"
-
-#~ msgid "Accept/Refuse bogus IPv4 error messages."
-#~ msgstr "Позволява/Забранява съобщения за IPv4 грешки."
-
-#~ msgid "Accept/Refuse broadcasted icmp echo."
-#~ msgstr "Позволява/Забранява broadcasted icmp echo."
-
-#~ msgid "Allow/Forbid remote root login."
-#~ msgstr "Позволява/Забранява отдалечено влизане на root."
-
-#~ msgid "PLL setting:"
-#~ msgstr "PLL настройки:"
-
-#~ msgid "Radio support:"
-#~ msgstr "Подръжка на радио:"
-
-#~ msgid " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
-#~ msgstr " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
+#~ msgid "You must have a Boot BIOS partition"
+#~ msgstr "Трябва да зададете коренов дял"
diff --git a/perl-install/share/po/bn.po b/perl-install/share/po/bn.po
index bc6aac47d..7ba9f4adc 100644
--- a/perl-install/share/po/bn.po
+++ b/perl-install/share/po/bn.po
@@ -1,36 +1,41 @@
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# Omi Azad <omi@altruists.org>, 2004.
-# Khandakar Mujahidul Islam <suzan@BengaLinux.Org>, 2004.
-# Progga <progga@BengaLinux.Org>, 2004.
-# Jamil Ahmed <jamil@BengaLinux.Org>, 2004, 2005.
-# Samia <mailsamia2001@yahoo.com>, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
-msgid ""
-msgstr ""
-"Project-Id-Version: DrakX HEAD\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2005-03-19 23:18+0600\n"
-"Last-Translator: Samia <mailsamia2001@yahoo.com>\n"
-"Language-Team: Bangla <mdk-translation@bengalinux.org>\n"
+# Translators:
+# Jamil Ahmed <jamil@BengaLinux.Org>, 2004-2005
+# Khandakar Mujahidul Islam <suzan@BengaLinux.Org>, 2004
+# Omi Azad <omi@altruists.org>, 2004
+# Progga <progga@BengaLinux.Org>, 2004
+# Samia <mailsamia2001@yahoo.com>, 2005
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2016-05-07 07:34+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Bengali (http://www.transifex.com/MageiaLinux/mageia/language/"
+"bn/)\n"
+"Language: bn\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "অনুগ্রহ করে অপেক্ষা করুন"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "বুট লোডার ইনস্টল করা হচ্ছে"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -45,33 +50,17 @@ msgstr ""
"উইন্ডোজ সমস্যা।\n"
"নতুন একটি ভলিউম আই-ডি দেয়া হবে?"
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr "Bootloader ইনষ্টলেশন ব্যর্থ হয়েছে। এ সমস্ত ত্রুটি ঘটেছে:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"বুট-লোডার সক্রিয় করার আপনাকে আপনার ওপেন ফার্মওয়্যার বুট-যন্ত্র পরিবর্তন\n"
-" করতে হতে পারে। যদি রিবুট করার পর কোন বুটলোডার প্রম্প্‌ট না দেখেন, তাহলে\n"
-" রিবুটের কমান্ড অপশনে যান এবং টাইপ করুন: setenv boot-device %s,\\\\:tbxi\n"
-" তারপর টাইপ করুন: shut-down\n"
-"পরবর্তীতে বুট হওয়ার সময় বুটলোডার প্রম্প্‌ট দেখতে পাওয়া উচিত।"
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
@@ -82,274 +71,273 @@ msgstr ""
"\n"
"আপনি কোন ড্রাইভ থেকে বুট করছেন?"
-#: any.pm:346
-#, fuzzy, c-format
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr ""
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "আপনি bootloader টি কোথায় ইনস্টল করতে চান?"
+
+#: any.pm:365
+#, c-format
msgid "First sector (MBR) of drive %s"
-msgstr "ড্রাইভের প্রথম সেক্টর (MBR)"
+msgstr ""
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "ড্রাইভের প্রথম সেক্টর (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr "রুট পার্টিশনের প্রথম সেক্টর"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "ফ্লপি তে"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "উপেক্ষা"
-#: any.pm:358
-#, fuzzy, c-format
-msgid "Bootloader Installation"
-msgstr "বুট লোডার ইনস্টল করা হচ্ছে"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "আপনি bootloader টি কোথায় ইনস্টল করতে চান?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "বুটের ধরণ কনফিগারেশন"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr ""
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "বুটলোডারের আসল অপশনসমুহ"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "বুটলোডার"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "ব্যবহারের জন্য বুটলোডার"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "বুট ডিভাইস"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
-msgstr ""
+msgstr "প্রধান অপশনগুলো"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "স্বাভাবিক ইমেজ লোড করার আগে দেরী করো"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "ACPI এনেবল করো"
-#: any.pm:411
-#, fuzzy, c-format
+#: any.pm:432
+#, c-format
msgid "Enable SMP"
-msgstr "ACPI এনেবল করো"
+msgstr ""
-#: any.pm:412
-#, fuzzy, c-format
+#: any.pm:433
+#, c-format
msgid "Enable APIC"
-msgstr "ACPI এনেবল করো"
+msgstr ""
-#: any.pm:413
-#, fuzzy, c-format
+#: any.pm:435
+#, c-format
msgid "Enable Local APIC"
-msgstr "ACPI এনেবল করো"
+msgstr ""
+
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "সিকিউরিটি"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "পাসওয়ার্ড"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "পাসওয়ার্ডটি মিলছে না"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "অনুগ্রহ করে আবার চেষ্ট করুন"
-#: any.pm:418
-#, fuzzy, c-format
-msgid "You can not use a password with %s"
-msgstr "আপনি %s মাউন্ট পয়েন্টের জন্য একটি এনক্রিপটেড ফাইল ব্যবহার করতে পারবেন"
+#: any.pm:442
+#, c-format
+msgid "You cannot use a password with %s"
+msgstr ""
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "পাসওয়ার্ড (পুনরায়)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "কমান্ডলইন অপশনে বাঁধা দাও"
+msgid "Bootloader Configuration"
+msgstr ""
-#: any.pm:422
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "ইনস্টলেশন ব্যর্থ হয়েছে"
+
+#: any.pm:533
#, c-format
-msgid "restrict"
-msgstr "বাঁধা দাও"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr ""
-#: any.pm:423
+#: any.pm:535 any.pm:794
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
-msgstr "``নিয়ন্ত্রিত কমান্ড লাইন অপশন'' অপশনটি পাসওয়ার্ড ছাড়া ব্যবহার করা যাবে না"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
-#: any.pm:425
+#: any.pm:537
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "প্রতি বুটে /tmp পরিষ্কার করো"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr ""
-#: any.pm:434
+#: any.pm:539
#, c-format
-msgid "Init Message"
-msgstr "Init বার্তা"
+msgid "Background"
+msgstr ""
-#: any.pm:436
+#: any.pm:544
#, c-format
-msgid "Open Firmware Delay"
-msgstr "বিলম্বিত ওপেন ফার্মওয়্যার"
+msgid "rEFInd banner"
+msgstr ""
-#: any.pm:437
+#: any.pm:545
+#, fuzzy, c-format
+msgid "Mageia theme"
+msgstr "ম্যান্ড্রিব লিনাক্স (Mageia)"
+
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "কার্নাল বুটের সময় অতিক্রান্ত হয়েছে"
+msgid "Custom"
+msgstr "ব্যবস্থা"
-#: any.pm:438
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "শেয়ারিং নেই"
+
+#: any.pm:565
#, c-format
-msgid "Enable CD Boot?"
-msgstr "সিডি বুট সক্রিয় করা হবে?"
+msgid "Scale to fit"
+msgstr ""
-#: any.pm:439
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable OF Boot?"
-msgstr "OF বুট সক্রিয় করা হবে?"
+msgid "Label"
+msgstr "শিরোনাম"
-#: any.pm:440
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Default OS?"
-msgstr "স্বাভাবিক অবস্থায় ব্যবহৃত OS?"
+msgid "Append"
+msgstr "যুক্ত"
-#: any.pm:513
+#: any.pm:612 any.pm:624 any.pm:781
+#, c-format
+msgid "Video mode"
+msgstr "ভিডিওর ধরণ"
+
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "ইমেজ"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Root"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "যুক্ত"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr ""
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "ভিডিওর ধরণ"
+msgid "Requires password to boot"
+msgstr ""
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "নেটওয়ার্ক প্রোফাইল"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "শিরোনাম"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "স্বাভাবিক"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "কোন ভিডিও নেই"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "খালি শিরোনাম গ্রহণযোগ্য নয়"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "আপনাকে অবশ্যই একটি কার্নালের ইমেজ নির্ধারণ করে দিতে হবে"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "আপনাকে অবশ্যই একটি রুট পার্টিশন নির্ধারণ করে দিতে হবে"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "এই শিরোনামটি আগেই ব্যবহার হয়েছে"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "আপনি কি ধরণের এন্ট্রি যোগ করতে চান?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "লিনাক্স"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "অন্যান্য OS (SunOS...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "অন্যান্য OS (MacOS...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "অন্যান্য OS (Windows...)"
-#: any.pm:621
-#, fuzzy, c-format
-msgid "Bootloader Configuration"
-msgstr "বুটের ধরণ কনফিগারেশন"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -358,272 +346,322 @@ msgstr ""
"এপর্যন্ত আপনার বুটমেনুর এন্ট্রিগুলি এখানে।\n"
"আপনি অন্যান্য এন্ট্রি তৈরী করতে পারেন অথবা আগের এন্ট্রিগুলি পরিবর্তন করতে পারেন।"
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr ""
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "নোটিশ"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr ""
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "X প্রোগ্রামসমূহে প্রবেশাধিকার"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "RPM টুলে প্রবেশাধিকার"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "\"su\" গ্রহন করো"
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr "এডমিনিষ্ট্রেশন সংক্রান্ত ফাইলে প্রবেশাধিকার"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "নেটওয়ার্ক টুলে প্রবেশাধিকার"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "compilation টুলে প্রবেশাধিকার"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(%s আগেই যোগ করা হয়েছে)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "অনুগ্রহ করে একটি উইজার নেম দিন"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
-msgstr "ইউজারনেমে অবশ্যই ছোটহাতের অক্ষর, নম্বর \"-\" এবং \"_\" থাকতে হবে"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
+msgstr ""
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "ইউজারনেমটি অনেক বড়"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "এই ইউজারনেমটি এর আগেই যোগ করা হয়েছে"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "ব্যবহারকারীর ID"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "দলের ID"
-#: any.pm:817
-#, fuzzy, c-format
+#: any.pm:1086
+#, c-format
msgid "%s must be a number"
-msgstr "অপশন %s-কে অবশ্যই একটি সংখ্যা হতে হবে!"
+msgstr ""
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
+msgid "%s should be above 1000. Accept anyway?"
msgstr ""
-#: any.pm:822
-#, fuzzy, c-format
+#: any.pm:1091
+#, c-format
msgid "User management"
-msgstr "ব্যবহারকারীনাম"
+msgstr ""
+
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr ""
-#: any.pm:828 authentication.pm:237
+#: any.pm:1099 authentication.pm:236
#, c-format
msgid "Set administrator (root) password"
msgstr "আ্যাডমিনিস্ট্রেটর (root) পাসওয়ার্ড সেট করুন"
-#: any.pm:833
-#, fuzzy, c-format
+#: any.pm:1105
+#, c-format
msgid "Enter a user"
msgstr ""
-"একটি ইউজার প্রবেশ করান\n"
-"%s"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "আইকন"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "আসল নাম"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "লগ-ইন নাম"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "শেল"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr ""
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
msgstr "মাধ্যম যোগ করা হচ্ছে, অনুগ্রহ করে অপেক্ষা করুন..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "সয়ংক্রিয় লগ-ইন"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
"আমি আপনার কম্পিউটারকে সয়ংক্রিয়ভাবে একটি ইউজারকে লগইন করার জন্য সেট করতে পারি।"
-#: any.pm:916
-#, fuzzy, c-format
+#: any.pm:1251
+#, c-format
msgid "Use this feature"
-msgstr "এই সুবিধাটি কি আপনি ব্যবহার করতে চান?"
+msgstr ""
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "স্বাভাবিক ব্যবহারকারীকে পছন্দ করুন:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "রান করার জন্য উইন্ডো ম্যানেজারকে পছন্দ করুন:"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
msgstr "সংস্করণ মন্তব্য"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "বন্ধ"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "লাইসেন্স এগ্রিমেন্ট"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "বাহির"
-#: any.pm:1017
-#, fuzzy, c-format
+#: any.pm:1343
+#, c-format
msgid "Do you accept this license ?"
-msgstr "আপনার কি আরও একটি আছে?"
+msgstr ""
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "গ্রহণ"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "অস্বীকার"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "ব্যবহার করার জন্য একটি ভাষা পছন্দ করুন"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"Mandriva Linux বাভিন্ন ভাষা সমর্থন করে।\n"
-"আপনি যেই ভাষাটি ইনস্টল করতে চান তা পছন্দ করুন।\n"
-"ইনস্টল শেষে রি-স্টার্ট করার পরে সেই ভাষাগুলি উপলব্ধ হবে।"
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "ম্যান্ড্রিব লিনাক্স (Mageia)"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr ""
+
+#: any.pm:1402
#, c-format
-msgid "Multi languages"
+msgid "Select Additional Languages"
msgstr ""
-#: any.pm:1087 any.pm:1119
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr ""
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "সমস্থ ভাষা"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "পছন্দনীয় ভাষা"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "দেশ / স্থান"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
msgstr "অনুগ্রহ করে তোমার দেশ পছন্দ করো।"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "উপলব্ধ সমস্থ দেশের নাম এখানে রয়েছে"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "অন্যান্য দেশসমুহ"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "উন্নত"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr "ইনপুট মাধ্যম:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "একটিও না"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "শেয়ারিং নেই"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "সব ব্যবহারকারীদের গ্রহণ করো"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "ব্যবস্থা"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -633,7 +671,7 @@ msgid ""
"\"Custom\" permit a per-user granularity.\n"
msgstr "আপনি কি ব্যবহারকারীদের কিছু ডিরেক্টরি শেয়ার করতে দিতে চান?\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
@@ -641,7 +679,7 @@ msgid ""
msgstr ""
"NFS: ঐতিহ্যগত ইউনিক্স ফাইল শেয়ারিং সিস্টেম, যা ম্যাক এবং উইন্ডোজে স্বল্প সমর্থিত।"
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
@@ -650,7 +688,7 @@ msgstr ""
"SMB: উইন্ডোজ, ম্যাক ও-এস এক্স এবং অনেক আধুনিক লিনাক্স সিস্টেম কর্তৃক ব্যবহৃত ফাইল "
"শেয়ারিং সিস্টেম।"
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
@@ -658,12 +696,12 @@ msgstr ""
"আপনি NFS বা SMB ব্যবহার করে ফাইল পাঠাতে পারেন। যেটি আপনি ব্যবহার করতে চান "
"অনুগ্রহ করে নির্বাচন করুন।"
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "userdrake শুরু করো"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
@@ -672,58 +710,113 @@ msgstr ""
"প্রত্যেক ব্যবহারকারী গ্রুপের \"ফাইল ভাগাভাগি\" ভাগাভাগি করতে পারেন। \n"
"এই গ্রুপে একজণ ব্যবহারকারী যোগ করতে আপনি userdrake ব্যবহার করতে পারেন।"
-#: any.pm:1421
-#, fuzzy, c-format
+#: any.pm:1768
+#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
-msgstr "পরিবর্তন কার্যকর করার পূর্বে আপনাকে লগ-আউট করে তারপর পুণরায় লগ-ইন করতে হবে"
+msgstr ""
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr "পরিবর্তন কার্যকর করার পূর্বে আপনাকে লগ-আউট করে তারপর পুণরায় লগ-ইন করতে হবে"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "টাইমজোন"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "আপনার টাইমজোন কি?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr ""
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr ""
-#: any.pm:1490
-#, fuzzy, c-format
+#: any.pm:1837
+#, c-format
msgid "%s (hardware clock set to UTC)"
-msgstr "হার্ডওয়্যারে ঘড়ি GMT-এ সেট করা"
+msgstr ""
-#: any.pm:1491
-#, fuzzy, c-format
+#: any.pm:1838
+#, c-format
msgid "%s (hardware clock set to local time)"
-msgstr "হার্ডওয়্যারে ঘড়ি GMT-এ সেট করা"
+msgstr ""
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "NTP সার্ভার"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "সয়ংক্রিয়ভাবে সময় মেলাও (NTP ব্যবহার করে)"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "mirror এর ইউ-আর-এল?"
+
+#: any.pm:1880
+#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "ইউআরএল অবশ্যই ftp:// অথবা http:// দিয়ে শুরু হবে"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr "উপস্থিত মিররের তালিকার জন্য %s-এ সংযুক্ত করা হচ্ছে..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr "উপস্থিত মিররের তালিকার জন্য %s-এ যোগাযোগ করতে ব্যর্থ হয়েছে..."
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "আপনি একটি মিরর পছন্দ করুন যেখান থেকে প্যাকেজগুলি নেবেন"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "বাতিল"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "সয়ং-সনাক্ত"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "অপশনসমূহ বর্ননা করুন"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "বুটলোডার"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -739,13 +832,12 @@ msgstr "LDAP"
msgid "NIS"
msgstr "NIS"
-# সাম
#: authentication.pm:27
#, c-format
msgid "Smart Card"
msgstr "স্মার্ট কার্ড"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "উইন্ডোজ ডোমেইন"
@@ -755,24 +847,24 @@ msgstr "উইন্ডোজ ডোমেইন"
msgid "Kerberos 5"
msgstr ""
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "লোকাল ফাইল:"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
"লোকাল ফাইলে থাকা ব্যবহারকারীর সকল বিশ্বাসযোগ্যতা ও তথ্যের জন্য লোকাল ব্যবহার করুন"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
@@ -781,12 +873,12 @@ msgstr ""
"কিছু অথবা সব নির্ভরযোগ্যতার আপনার কম্পিউটারকে LDAP ব্যবহার করতে বলুন। LDAP আপনার "
"অর্গানাইজেশনের বিভিন্ন ধরনের তথ্যকে আরও সুদৃড় করে"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
@@ -795,12 +887,12 @@ msgstr ""
"সার্বজনীন পাসওয়ার্ড ও গ্রুপ ফাইলসহ আপনি কম্পিউটারের একটি গ্রুপকে একই নেটওয়ার্ক তথ্য "
"সার্ভিস ডোমেইনে চলার অনুমতি দেবে।"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "উইন্ডোজ ডোমেইন:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
@@ -809,248 +901,248 @@ msgstr ""
"উইনবাইন্ড আপনার সিস্টেমকে একটি উইন্ডোজ ডোমেইনের তথ্য ও নির্ভরযোগ্য ব্যবহারকারীদের "
"পুনরুদ্ধারের অনুমতি দেবে।"
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
-#, fuzzy, c-format
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr "ডোমেইন অনুমোদন প্রয়োজন"
+msgstr ""
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "LDAP সার্ভার"
-#: authentication.pm:113 authentication.pm:168
-#, fuzzy, c-format
+#: authentication.pm:112 authentication.pm:167
+#, c-format
msgid "Base dn"
-msgstr "LDAP বেইজ dn"
+msgstr ""
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr ""
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr ""
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr ""
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr ""
-#: authentication.pm:120 authentication.pm:173
-#, fuzzy, c-format
+#: authentication.pm:119 authentication.pm:172
+#, c-format
msgid "Use anonymous BIND "
-msgstr "Anonymous বাইন্ড ব্যবহার করুন "
+msgstr ""
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr ""
-#: authentication.pm:123 authentication.pm:175
-#, fuzzy, c-format
+#: authentication.pm:122 authentication.pm:174
+#, c-format
msgid "Bind Password "
-msgstr "পাসওয়ার্ড"
+msgstr ""
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr ""
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "পাসওয়ার্ড"
+msgstr ""
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "দলের ID"
+msgstr ""
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr ""
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "আসল নাম"
+msgstr ""
-#: authentication.pm:148
-#, fuzzy, c-format
+#: authentication.pm:147
+#, c-format
msgid "KDCs Servers"
-msgstr "LDAP সার্ভার"
+msgstr ""
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr ""
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr ""
-#: authentication.pm:156
-#, fuzzy, c-format
+#: authentication.pm:155
+#, c-format
msgid "Use local file for users information"
-msgstr "সার্ভারের জন্য libsafe ব্যবহার করো"
+msgstr ""
-#: authentication.pm:157
-#, fuzzy, c-format
-msgid "Use Ldap for users information"
-msgstr "হার্ড ড্রাইভের তথ্য"
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr ""
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr ""
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "NIS ডোমেইন"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "NIS সার্ভার"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "ডোমেইন"
+msgstr ""
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr ""
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "NIS ডোমেইন"
+msgstr ""
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "LDAP সার্ভার"
+msgstr ""
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "অনুমোদন"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "নির্ভরযোগ্য নিয়ম"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "পাসওয়ার্ড ছাড়া"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr "এই পাসওয়ার্ডটি খুবই ছোট (এটা অবশ্যই %d অক্ষরের হতে হবে)"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "কোন NIS ডোমেইন ছাড়া ব্রডকাষ্ট ব্যবহার করা যাবেনা"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "ফাইল সিলেক্ট করো"
-#: authentication.pm:897
-#, fuzzy, c-format
+#: authentication.pm:882
+#, c-format
msgid "Domain Windows for authentication : "
-msgstr "ডোমেইন অনুমোদন প্রয়োজন"
+msgstr ""
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "ডোমেইন অ্যাডমিনের ব্যবহারকারীনাম"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "ডোমেইন অ্যাডমিনের পাসওয়ার্ড"
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1065,43 +1157,47 @@ msgstr ""
"wait for default boot.\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "টেক্সট মেনুর সাথে LILO"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
#, c-format
-msgid "GRUB with graphical menu"
+msgid "GRUB2 with graphical menu"
msgstr ""
-#: bootloader.pm:1134
+#: bootloader.pm:1480
#, c-format
-msgid "GRUB with text menu"
-msgstr ""
+msgid "GRUB2 with text menu"
+msgstr "টেক্সট মেনুর সাথে GRUB2"
-#: bootloader.pm:1135
+#: bootloader.pm:1481
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "GRUB with graphical menu"
+msgstr "টেক্সট মেনুর সাথে GRUB"
-#: bootloader.pm:1136
+#: bootloader.pm:1482
#, c-format
-msgid "SILO"
+msgid "GRUB with text menu"
msgstr ""
-#: bootloader.pm:1218
+#: bootloader.pm:1483
+#, fuzzy, c-format
+msgid "rEFInd with graphical menu"
+msgstr "টেক্সট মেনুর সাথে rEFInd"
+
+#: bootloader.pm:1484
+#, fuzzy, c-format
+msgid "U-Boot/Extlinux with text menu"
+msgstr "টেক্সট মেনুর সাথে U-Boot/Extlinux"
+
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "/boot -এ বেশী জায়গা নেই"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "আপনি %s পার্টিশনে বুটলোডার ইনস্টল করতে পারবেননা\n"
-
-# renumber = রি-নাম্বার লিখলাম। আসলটা আমি জানিনা
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
@@ -1109,65 +1205,66 @@ msgid ""
msgstr ""
"পার্টিশন রি-নাম্বার করার কারনে আপনার বুটলোডারের কনফিগারেশন অবশ্যই আপডেট করতে হবে"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
"বুটলোডার সঠিকভাবে ইনস্টল হতে পারবেনা। আপনাকে rescue বুট করতে হবে এবং \"%s\" "
"পছন্দ করতে হবে"
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "বুট লোডার রি-ইনস্টল করো"
-#: common.pm:142
-#, fuzzy, c-format
+#: common.pm:271
+#, c-format
msgid "B"
-msgstr "কেবি"
+msgstr ""
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "কেবি"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "এমবি"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "জিবি"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "টিবি"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr ""
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d মিনিট"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "১ মিনিট"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d সেকেন্ড"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr ""
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1188,12 +1285,12 @@ msgstr ""
msgid "New"
msgstr "নতুন"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "আন-মাউন্ট"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "মাউন্ট"
@@ -1203,43 +1300,44 @@ msgstr "মাউন্ট"
msgid "Server"
msgstr "সার্ভার"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "মাউন্ট পয়েন্ট"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "অপশন"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "মুছে ফেলো"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "হয়েছে"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "ত্রুটি"
@@ -1254,80 +1352,71 @@ msgstr "অনুগ্রহ করে WebDAV সার্ভারের URL
msgid "The URL must begin with http:// or https://"
msgstr "URL অবশ্যই http:// অথবা https:// দিয়ে শুরু করতে হবে"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "নোটিশ"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "আপনি কি এই বাটনে ক্লিক করতে চান?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr ""
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "সার্ভার:"
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "মাউন্ট পয়েন্ট:"
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "অপশন: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "পার্টিশন করা হচ্ছে"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "সতর্কতার সাথে পড়ো"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "অনুগ্রহ করে প্রথমে আপনার ডাটার একটি ব্যাকআপ করে নিন"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "বাহির"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "অগ্রসর"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "সাহায্য"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1338,142 +1427,132 @@ msgstr ""
"সেটাকে আগে রি-সাইজ করার জন্য আমি পরামর্শ দিচ্ছি\n"
"(সেটাকে আগে ক্লিক করুন এবং পরে \"Resize\"-এ ক্লিক করুন)"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "অনুগ্রহ করে একটি পার্টিশনে ক্লিক করুন"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "বিস্তারিত"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "কোন হার্ড ড্রাইভ পাওয়া যায়নি"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "অজানা"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
-msgid "Ext3"
-msgstr "বাহির"
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
msgid "XFS"
-msgstr "HFS"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "সোয়াপ"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "উইন্ডোজ"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "অন্যান্য"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "শূণ্য"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "ফাইল সিস্টেমের ধরণ:"
-#: diskdrake/hd_gtk.pm:407
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:461
+#, c-format
msgid "This partition is already empty"
-msgstr "এই পার্টিশনটি রি-সাইজ করার মত না"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "প্রথমে ``Unmount'' ব্যবহার করুন"
-#: diskdrake/hd_gtk.pm:416
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:470
+#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "পরিবর্তে ``%s'' ব্যবহার করুন"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "ধরণ"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "অন্য একটি পার্টিশন পছন্দ করুন"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "একটি পার্টিশন পছন্দ করুন"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "আরও"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
+#, c-format
msgid "Confirmation"
-msgstr "কনফিগারেশন"
+msgstr ""
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "অগ্রসর হবে?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "সংরক্ষণ ছাড়াই বের হও"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "কোন পার্টিশন টেবিল না লিখেই বের হয়ে যাব?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "আপনি /etc/fstab -এর পরিবর্তন সেভ করতে চান?"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr "পার্টিশন টেবিলের পরিবর্তনগুলি কার্যকর করবার জন্য আপনাকে রা-ষ্টার্ট করতে হবে"
-# সাম
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1484,42 +1563,42 @@ msgstr ""
"অন্যথা fstab এ মাউন্ট পয়েন্ট %s এর কোন এন্ট্রি লেখা হবে না।\n"
"তবুও বের হয়ে যাব কি?"
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "সব বন্ধ করো"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "সয়ংক্রিয়ভাবে সাজানো"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "সাধারণ মোডে বদল করো"
+msgid "Normal mode"
+msgstr "সাধারণ মোডে"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "দক্ষ মোডে বদল করো"
+msgid "Expert mode"
+msgstr "দক্ষ মোডে"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "হার্ড ড্রাইভের তথ্য"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "সমস্থ প্রাইমারী পার্টিশনসমূহ ব্যবহৃত হচ্ছে"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "আমি আর পার্টিশন যোগ করতে পারবনা"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
@@ -1528,120 +1607,145 @@ msgstr ""
"আরও পার্টিশন পাওয়ার জন্য, অনুগ্রহ করে একটি মুছে ফেলুন যাতে করে এক্সটেনডেড পার্টিশন "
"তৈরী করা যায়"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "পার্টিশন টেবিলকে পুনরায় লোড করো"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "বিস্তারিত তথ্য"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
-msgstr ""
+msgstr "প্রদর্শন"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "আকার পরিবর্তন"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "ফরম্যাট"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "RAID-তে যোগ করো"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "LVM-এ যোগ করো"
-#: diskdrake/interactive.pm:410
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:417
+#, c-format
msgid "Use"
-msgstr "ব্যবহারকারীর ID"
+msgstr ""
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "মুছে ফেলো"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "RAID থেকে মুছে ফেলো"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "LVM থেকে মুছে ফেলো"
-#: diskdrake/interactive.pm:415
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:422
+#, c-format
msgid "Remove from dm"
-msgstr "LVM থেকে মুছে ফেলো"
+msgstr ""
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "RAID পরিবর্তন করো"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "loopback-এর জন্য ব্যবহার করো"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "তৈরী করো"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "ফাইলগুলিক একটি নতুন পার্টিশনে সরিয়ে ফেলো"
+msgstr ""
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "একটি নতুন পার্টিশন তৈরী করো"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "শুরুর সেক্টর:"
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "মেগাবাইটে সাইজ:"
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "ফাইলসিস্টেমের ধরণ:"
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "পছন্দ"
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "লজিকাল ভলিউমের নাম"
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr ""
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "এনক্রিপশন কী (পুনরায়)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "এনক্রিপশন কীগুলি মিলছেনা"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
@@ -1650,294 +1754,307 @@ msgstr ""
"প্রথমে আপনাকে একটি প্রাইমারী পার্টিশন অপসরন করতে হবে এবং তারপরে এক্সটেনডেড "
"পার্টিশন তৈরী করতে হবে।"
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "লুকআপ ফাইল রিমুভ করবো?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr "%s পার্টিশনের ধরণ পরিবর্তনের পরে সেটার সমস্থ ডাটা হারিয়ে যাবে"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "পার্টিশনের ধরণ পরিবর্তন করো"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "আপনি কোন ফাইলসিস্টেম চান?"
-#: diskdrake/interactive.pm:594
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:650
+#, c-format
msgid "Switching from %s to %s"
-msgstr "ext2 থেকে ext3-তে পরিবর্তিত হচ্ছে"
+msgstr ""
-#: diskdrake/interactive.pm:624
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:685
+#, c-format
msgid "Set volume label"
-msgstr "ভলিউম লেবেল:"
+msgstr ""
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr ""
-#: diskdrake/interactive.pm:630
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:691
+#, c-format
msgid "Label:"
-msgstr "শিরোনাম"
+msgstr ""
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "আপনি %s লুপব্যাক ফাইলকে কোথায় মাউন্ট করতে চান ?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "আপনি %s ডিভাইসকে কোথায় মাউন্ট করতে চান?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"এই পার্টিশনটি লুপব্যাকের জন্য ব্যবহৃত হওয়ার কারনে মাউন্টপয়েন্ট আনসেট করা যাবেনা।\n"
" আগে লুপব্যাক রিমুভ করুন"
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "আপনি কোথায় মাউন্ট করতে চান %s?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "আকার পরিবর্তন করা হচ্ছে"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "FAT ফাইল সিস্টেমের সীমা (Bound) হিসেব করা হচ্ছে"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "এই পার্টিশনটি রি-সাইজ করার মত না"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "এই পার্টিশনের সমস্থ ডাটা ব্যাকআপ করা উচিত্‍‌"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr "%s পার্টিশন রি-সাইজ করার পরে, এই পার্টিশনের সমস্থ ডাটা হারিয়ে যাবে"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "নতুন সাইজটি পছন্দ করুন"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "মেগাবাইটে নতুন সাইজ:"
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr ""
-#: diskdrake/interactive.pm:805
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
+#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-"পার্টিশনের পুনরাকৃতির পর ডাটার সম্পূর্ণতা নিশ্চিত করার জন্য, \n"
-"উইন্ডোজে(TM) আপনার পরবর্তী বুটে ফাইলসিস্টেম পরীক্ষা চলবে"
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "ফাইল সিস্টেমের এনক্রিপশন কী"
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "আপনার ফাইল সিস্টেমের এনক্রিপশন কী পছন্দ করুন"
+msgstr ""
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "এনক্রিপশন কী"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr ""
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "যোগ করার জন্য উপস্থিত একটি RAID পছন্দ করুন"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "নতুন"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "যোগ করার জন্য উপস্থিত একটি LVM পছন্দ করুন"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
#, c-format
-msgid "LVM name?"
-msgstr "LVM-এর নাম?"
+msgid "LVM name"
+msgstr ""
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr ""
+
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr ""
+
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
"Do you want to move used physical extents on this volume to other volumes?"
msgstr ""
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr ""
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "লুপব্যাকের জন্য এই পার্টিশনটি ব্যবহার করা যাবেনা"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Loopback"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Loopback ফাইলের নাম: "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "একটি ফাইলের নাম দিন"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr "ফাইলটি আগে থেকেই অন্য একটি লুপব্যাকে ব্যবহৃত হচ্ছে, আরেকটি পছন্দ করুন"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "ফাইল আগে থেকেই আছে, ব্যবহার করব?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "মাউন্ট অপসন"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "বিভিন্ন"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "ডিভাইস"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "লেভেল"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
msgstr "কিলোবাইট এ chunk সাইজ"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "খুবই সাবধান: এই কাজটি ঝুঁকিপূর্ন।"
-#: diskdrake/interactive.pm:1109
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1250
+#, c-format
msgid "Partitioning Type"
-msgstr "পার্টিশন করা হচ্ছে"
+msgstr ""
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "কি ধরণের পার্টিশন হবে?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr "পরিবর্তনগুলি অবস্থান নেবার জন্য আপনাকে রি-ষ্টার্ট করতে হবে"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "%s ড্রাইভের পার্টিশন টেবিল ডিস্কে লিখতে যাচ্ছি"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "%s পার্টিশন ফরম্যাট করা হচ্ছে"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr "পার্টিশন %s -কে ফরমেট করার পরে এই পার্টিশনের সমস্থ ডাটা হারিয়ে যাবে"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "খারাপ ব্লক চেক করব?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "ফাইলগুলিক একটি নতুন পার্টিশনে সরিয়ে ফেলো"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "ফাইল লুকানো হোক"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1948,129 +2065,127 @@ msgid ""
"the contents of the mounted partition)"
msgstr ""
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr "ফাইলগুলিকে একটু নতুন পার্টিশনে নিয়ে যাওয়া হচ্ছে"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "%s কপি করা হচ্ছে"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "%s মুছে ফেলা হচ্ছে"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "পার্টিশন %s-কে এখন %s নামে জানা যাবে"
-# সাম: renumber = পুনর্বিন্যাস?
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr "পার্টিশনগুলো পুনঃসংখ্যান করা হয়েছে: "
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "ডিভাইস:"
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr "ভলিউম লেবেল:"
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr ""
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "DOS ড্রাইভ লেটার: %s (শুধুমাত্র একটি অনুমান)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "ধরণ:"
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "নাম:"
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "শুরু: সেক্টর %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "সাইজ: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s সেক্টরসমূহ"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "সিলিন্ডার %d থেকে %d পর্যন্ত\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr ""
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "ফরমেট করা হয়েছে\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "ফরমেট করা হয়নি\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "মাউন্ট করা হয়েছে\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1446
+#, c-format
msgid "Encrypted"
-msgstr "এনক্রিপশন কী"
+msgstr ""
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr ""
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2079,7 +2194,7 @@ msgstr ""
"লুপব্যাক ফাইল(গুলি):\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2088,27 +2203,27 @@ msgstr ""
"পার্টিশন সাধারণভাবে বুট হয়েছে\n"
" (MS-DOS বুটের জনে, lilo-র জন্য নয়)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "লেভেল %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
msgstr "চাঙ্ক সাইজ %d কিলোবাইট\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "RAID-ডিস্কসমূহ %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "লুপব্যাক ফাইলের নাম: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2121,7 +2236,7 @@ msgstr ""
"ড্রাইভার পার্টিশন। আপনার উচিত হবে\n"
"এটাকে এটা ছেড়ে দেয়া।\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2134,67 +2249,62 @@ msgstr ""
"পার্টিশন হচ্ছে আপনার\n"
"সিস্টেমের ডুয়াল-বুটিং এর জন্য।\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr ""
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "শুধুমাত্র পড়া যাবে"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "সাইজ: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "জ্যামিতি: %s-গুলি সিলিন্ডার, %s-গুলি হেড, %s-গুলি সেক্টর\n"
-#: diskdrake/interactive.pm:1351
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "নাম:"
+
+#: diskdrake/interactive.pm:1492
+#, c-format
msgid "Medium type: "
-msgstr "ফাইলসিস্টেমের ধরণ:"
+msgstr ""
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "LVM-ডিস্কসমূহ %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "পার্টিশন টেবিলের ধরণ: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "%d চ্যানেলে %d আইডিতে\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "আপনার ফাইল সিস্টেমের এনক্রিপশন কী পছন্দ করুন"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr "এই এনক্রিপশন কী টি খুবই সাধারণ (অবশ্যই %d অক্ষর বড় হতে হবে)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "এনক্রিপশন কীগুলি মিলছেনা"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "এনক্রিপশন কী (পুনরায়)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Encryption অ্যালগোরিদম"
@@ -2204,17 +2314,9 @@ msgstr "Encryption অ্যালগোরিদম"
msgid "Change type"
msgstr "ধরণ বদল করো"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "বাতিল"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr "ইউজারনেম %s ব্যবহার করে লগইন করা গেলোনা (নষ্ট পাসওয়ার্ড?)"
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
@@ -2257,40 +2359,40 @@ msgstr "সার্ভার খোজো"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "নতুন সার্ভারের খোজ করো"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "%s প্যাকেজগুলি ইনস্টল করা প্রয়োজন। আপনি কি ইনস্টল করতে চান?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr "%s প্যাকেজটি ইনস্টল করা যায় নি!"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "%s আবশ্যিক প্যাকেজ নেই"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "নিম্নোক্ত প্যাকেজসমূহ ইনস্টল করা প্রয়োজন:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "প্যাকেজসমূহ ইনস্টল করা হচ্ছে..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "প্যাকেজসমূহ অপসরণ করা হচ্ছে..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
@@ -2299,34 +2401,39 @@ msgstr ""
"একটি ভুল হয়ে গেছে - কোন সঠিক যন্ত্র পাওয়া যায়নি যেখানে নতুন ফাইল সিস্টেম তৈরি করা "
"হবে। অনুগ্রহ করে এই সমস্যার কারণের জন্য আপনার হার্ডওয়্যার পরীক্ষা করুন"
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "আপনার /boot/efi -এ অবশ্যই একটি FAT পার্টিশন থাকতে হবে"
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "আপনার /boot/EFI -এ অবশ্যই একটি ESP FAT32 পার্টিশন থাকতে হবে"
-#: fs/format.pm:100
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "%s ফাইল তৈরী এবং ফরম্যাট করা হচ্ছে"
-#: fs/format.pm:119
-#, fuzzy, c-format
+#: fs/format.pm:202
+#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "আমার জানা নেই পার্টিশন %s-কে কিভাবে %s ধরণে ফরম্যাট করতে হয়"
+msgstr ""
-# এটাও উল্টে যাবে মানে করতে গেলে। কারন মানেটা দাঁড়াবে <দ্বিতীয় %s কে প্রথম %s ফরম্যাট করা ব্যার্থ হয়েছে>
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "%s কে %s ফরম্যাট করতে ব্যর্থ হয়েছে"
+msgstr ""
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "আমার জানা নেই পার্টিশন %s-কে কিভাবে %s ধরণে ফরম্যাট করতে হয়"
-# এটাও উল্টে যাবে মানে করতে গেলে। কারন মানেটা দাঁড়াবে <দ্বিতীয় %s কে প্রথম %s ফরম্যাট করা ব্যার্থ হয়েছে>
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s কে %s ফরম্যাট করতে ব্যর্থ হয়েছে"
@@ -2341,33 +2448,30 @@ msgstr "সার্কুলার মাউন্টস %s\n"
msgid "Mounting partition %s"
msgstr "%s পার্টিশন মাউন্ট করা হচ্ছে"
-# এখানে কি করতে হবে? দুটোই %s কিন্তু মানেটা হবে : %s ডিরেক্টরিতে %s পার্টিশন মাউন্ট করা সম্ভব হলোনা।
-# দেখবেন কি করা যাবে...
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "%2$s ডিরেক্টরিতে %1$s পার্টিশন মাউন্ট করা ব্যর্থ হয়েছে"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "%s পরীক্ষা করা হচ্ছে"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "%s আনমাউন্টে সমস্যা: %s"
-# এনেবল লিখলাম। মানেটা মাথায় আসছেনা
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "%s সোয়াপ পার্টিশন সক্রিয় করো"
#: fs/mount_options.pm:114
-#, fuzzy, c-format
-msgid "Use an encrypted file system"
-msgstr "আপনি %s মাউন্ট পয়েন্টের জন্য একটি এনক্রিপটেড ফাইল ব্যবহার করতে পারবেন"
+#, c-format
+msgid "Enable POSIX Access Control Lists"
+msgstr ""
#: fs/mount_options.pm:116
#, c-format
@@ -2379,45 +2483,41 @@ msgstr ""
msgid "Enable group disk quota accounting and optionally enforce limits"
msgstr ""
-# #msgstr "%2$s কে %1$s ফরম্যাট করা ব্যর্থ হয়েছে"
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
"এই ফাইল সিস্টেমে inode প্রবেশ সময় আপডেট করবেন না\n"
"(যেমন,নিউজ সার্ভার দ্রুত করতে নিউজ স্পুলে দ্রুত প্রবেশ)।"
-# #msgstr "%2$s কে %1$s ফরম্যাট করা ব্যর্থ হয়েছে"
#: fs/mount_options.pm:123
-#, fuzzy, c-format
+#, c-format
msgid ""
"Update inode access times on this filesystem in a more efficient way\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
-"এই ফাইল সিস্টেমে inode প্রবেশ সময় আপডেট করবেন না\n"
-"(যেমন,নিউজ সার্ভার দ্রুত করতে নিউজ স্পুলে দ্রুত প্রবেশ)।"
#: fs/mount_options.pm:126
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
"শুধুমাত্র স্পষ্টভাবে মাউন্ট করতে পারে (যেমন,\n"
")(-a অপশন ফাইল সিস্টেম মাউন্ট করতে দেবে না)।"
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr "কোন চিহ্ন বা বিশেষ ব্লক যন্ত্রকে ফাইল সিস্টেমে ব্যাখ্যা করবেন না।"
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
"মাউন্টকৃত ফাইল সিস্টেমে কোন বাইনারি এক্সিকিউট করার অনুমতি দেবেন না।\n"
@@ -2438,22 +2538,22 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr "ফাইল সিস্টেমকে শুধু পড়ার জন্য মাউন্ট করো।"
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr "সকল I/O ফাইল সিস্টেম যুগপত্‍ভাবে হওয়া উচিত।"
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr ""
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr ""
#: fs/mount_options.pm:147
@@ -2476,32 +2576,32 @@ msgstr "সাধারণ ব্যবহারকারীদের লেখ
msgid "Give read-only access to ordinary users"
msgstr "সাধারণ ব্যবহারকারীদের শুধু পড়ার ক্ষমতা দিন"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "%s নকল মাউন্ট পয়েন্ট"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "কোন পার্টিশন বরাদ্দ নেই"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "মাউন্ট পয়েন্ট খোঁজার জন্য পার্টিশনগুলি স্কেন করা হচ্ছে"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "মাউন্ট পয়েন্টগুলি পছন্দ করুন"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "ফরমেট করার জন্য পার্টিশনটি পছন্দ করুন"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2510,23 +2610,23 @@ msgstr ""
"%s ফাইল সিস্টেম পরীক্ষা করতে ব্যার্থ হয়েছে। আপনি কি এই ত্রুটিগুলি সারাতে চান? (মনে "
"রাখবেন যে আপনি ডাটা হারাতে পারেন)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr "ইনস্টলেশন সম্পূর্ন হবার জন্য যথেষ্ট swap জায়গা নেই, অনুগ্রহ করে কিছু যোগ করুন"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"আপনার অবশ্যই একটি root পার্টিশন থাকতে হবে।\n"
"সেকারণে, একটি পার্টিশন তৈরি করুন (অথবা ইতিমধ্যেই তৈরি একটিতে ক্লিক করুন)।\n"
"তারপর ``Mount point'' বেছে নিন এবং সেটাকে `/' তে সেট করুন"
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2537,91 +2637,55 @@ msgstr ""
"\n"
"তবুও আগাবো?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "শুণ্য স্থান ব্যবহার করো"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "নতুন পার্টিশন তৈরী করার জন্য যথেষ্ট পরিমান খালি জায়গা নেই"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "আগের পার্টিশনগুলি ব্যবহার করো"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "ব্যবহারের জন্য এখানে উপস্থিত কোন পার্টিশন নেই"
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "লুপ ব্যাকের জন্য উইন্ডোজের পার্টিশন ব্যবহার করো"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Linux4Win-এর জন্য আপনি কোন পার্টিশন ব্যবহার করতে চান?"
-
-#: fs/partitioning_wizard.pm:108
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Choose the sizes"
-msgstr "সাইজ পছন্দ করো"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "মেগাবাইটে রুট পার্টিশনের সাইজ:"
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "মেগাবাইটে সোয়াপ পার্টিশনের সাইজ:"
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "আপনার উইন্ডোজের পার্টিশনের সাইজ হিসেব করা হচ্ছে"
-#: fs/partitioning_wizard.pm:119
+#: fs/partitioning_wizard.pm:201
#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr "লুপব্যাকে ব্যবহারের জন্য কেন FAT পার্টিশন নেই (অথবা পর্যাপ্ত জায়গা নেই)"
-
-#: fs/partitioning_wizard.pm:127
-#, fuzzy, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "উইন্ডোজ পার্টিশনের খালি জায়গা ব্যবহার করে"
+msgstr ""
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "আপনি কোন পার্টিশন রি-সাইজ করতে চান?"
-#: fs/partitioning_wizard.pm:143
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
msgstr ""
-"FAT আকার পরিবর্তক আপনার পার্টিশন হস্তক্ষেপ করতে পারেনি, \n"
-"নিম্নের এই সমস্যাগুলো হয়েছে: %s"
-#: fs/partitioning_wizard.pm:146
+#: fs/partitioning_wizard.pm:215
#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "আপনার উইন্ডোজের পার্টিশনের সাইজ হিসেব করা হচ্ছে"
-
-#: fs/partitioning_wizard.pm:153
-#, c-format
-msgid ""
-"Your Microsoft Windows® partition is too fragmented. Please reboot your "
-"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+msgid "Failed to find the partition to resize (%d choices)"
msgstr ""
-"আপনার উইন্ডোজের পার্টিশনটি প্রচন্ড অসম। অনুগ্রহ করে আপনার কম্পিউটারটি উইন্ডোজে রি-বুট "
-"করে, ``defrag'' ইউটিলিটি চালান, পরে রি-ষ্টার্ট করে আবার মেনড্রক ইনস্টলেশন চালান।"
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2632,8 +2696,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2654,85 +2718,77 @@ msgstr ""
"\n"
"নিশ্চিত্‍‌ হলে %s চাপুন।"
-# পরবর্তি
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "পরবর্তী"
-#: fs/partitioning_wizard.pm:168
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:237
+#, c-format
msgid "Partitionning"
-msgstr "পার্টিশন করা হচ্ছে"
+msgstr ""
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr "আপনি কোথায় উইন্ডোজের জন্য কোন সাইজটি রাখতে চান পার্টিশনসমূহ %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "মাপ"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "উইন্ডোজ পার্টিশন আকার পরিবর্তন করা হচ্ছে"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "FAT আকার পরিবর্তন ব্যর্থ হয়েছে: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"পার্টিশনের পুনরাকৃতির পর ডাটার সম্পূর্ণতা নিশ্চিত করার জন্য, \n"
-"উইন্ডোজে(TM) আপনার পরবর্তী বুটে ফাইলসিস্টেম পরীক্ষা চলবে"
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr ""
"রি-সাইজ করার জন্য কোন FAT পার্টিশন নেই (অথবা যথেষ্ট পারিমান ফাঁকা জায়গা নেই)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "উইন্ডোজ(TM) মুছে ফেলো"
-#: fs/partitioning_wizard.pm:203
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:273
+#, c-format
msgid "Erase and use entire disk"
-msgstr "সম্পূর্ণ ডিস্ক মুছে ফেলো"
+msgstr ""
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
-msgstr "আপনার একের অধিক হার্ড ড্রাইভ আছে, আপনি কোনটাতে লিনাক্স ইনস্টল করতে চান?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr "%s ড্রাইভে উপস্থিত সমস্থ ডাটা এবং পার্টিশন নষ্ট হয়ে যাবে"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "হাতে হাতে ডিস্ক পার্টিশন"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "fdisk ব্যবহার করো"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2741,55 +2797,70 @@ msgstr ""
"এখন আপনি %s-কে পার্টিশন করতে পারেন।\n"
"যখন হয়ে যাবে, তখন `w' চেপে সেভ করতে ভূলবেননা"
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
#, c-format
-msgid "I can not find any room for installing"
+msgid "Ext2/3/4"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
+#, c-format
+msgid "I cannot find any room for installing"
msgstr "আমি ইনস্টল করার জন্য কোন জায়গা পাচ্ছিনা"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "DrakX পার্টিশন সহায়ক এই সমস্থ সমাধান পেয়েছে:"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr ""
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "পার্টিশনে ব্যার্থ: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr "১৬ মেগাবাইটের চাইতে ছোট পার্টিশনে আপনি JFS ব্যবহার করতে পারবেন না"
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "৩২ মেগাবাইটের চাইতে ছোট পার্টিশনে আপনি ReiserFS ব্যবহার করতে পারবেন না"
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "সাধারণ"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "/usr -এর সাথে"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "সার্ভার"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr ""
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2805,77 +2876,54 @@ msgstr ""
"\n"
"আপনি কি সব পার্টিশন হারাতে রাজি?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "মাউন্ট পয়েন্টগুলি অবশ্যই / দিয়ে শুরু হতে হবে"
-# * = alphanumerical = বাংলাটা মনে পড়ছেনা
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "মাউন্ট পয়েন্টগুলিতে শুধু * অক্ষর থাকবে"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "এই পার্টিশনটি আগে থেকেই %s মাউন্টপয়েন্ট নামে আছে\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"আপনি একটি সফ্টওয়্যার RAID পার্টিশনকে রুট (/) হিসেবে নির্বাচন করেছেন।\n"
-"/boot পার্টিশন ছাড়া কোন বুটলোডার এটা হেন্ডেল করতে পারবেনা।\n"
-"অনুগ্রহ করে অবশ্যই একটি /boot পার্টিশন যোগ করুন"
-#: fsedit.pm:437
-#, fuzzy, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr "আপনি LVM লজিকাল ভলিউমকে %s মাউন্ট পয়েন্ট হিসেবে ব্যবহার করতে পারবেননা"
-
-#: fsedit.pm:439
-#, fuzzy, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
-msgstr ""
-"আপনি একটি সফ্টওয়্যার LVM লজিকাল ভলিউমকে রুট (/) হিসেবে নির্বাচন করেছেন।\n"
-"/boot পার্টিশন ছাড়া কোন বুটলোডার এটা হেন্ডেল করতে পারবেনা।\n"
-"অনুগ্রহ করে অবশ্যই একটি /boot পার্টিশন যোগ করুন"
+#: fsedit.pm:478 fsedit.pm:489
+#, c-format
+msgid "You cannot use an encrypted filesystem for mount point %s"
+msgstr "আপনি %s মাউন্ট পয়েন্টের জন্য একটি এনক্রিপটেড ফাইল ব্যবহার করতে পারবেন"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "root ফাইল সিস্টেমের মধ্যে এই ডিরেক্টরি থাকা উচিত"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
-"এই মাউন্ট পয়েন্টের জন্য আপনার একটি সঠিক ফাইল সিস্টেম (ext2/ext3, reiserfs, xfs, "
+"এই মাউন্ট পয়েন্টের জন্য আপনার একটি সঠিক ফাইল সিস্টেম (ext2/3/4, reiserfs, xfs, "
"বা jfs) প্রয়োজন\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr "আপনি %s মাউন্ট পয়েন্টের জন্য একটি এনক্রিপটেড ফাইল ব্যবহার করতে পারবেন"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
msgstr "স্বয়ংক্রিয়-বন্টনের জন্য কোন খালি জায়গা নেই"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "কিছু করার নাই"
@@ -2885,284 +2933,327 @@ msgstr "কিছু করার নাই"
msgid "SATA controllers"
msgstr "SATA কন্ট্রলারসমূহ"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "RAID কন্ট্রলারসমূহ"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "(E)IDE/ATA কন্ট্রলারসমূহ"
-#: harddrake/data.pm:92
-#, fuzzy, c-format
+#: harddrake/data.pm:93
+#, c-format
msgid "Card readers"
-msgstr "কার্ড মডেল:"
+msgstr ""
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Firewire কন্ট্রলারসমূহ"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "PCMCIA কন্ট্রলারসমূহ"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "SCSI কন্ট্রলারসমূহ"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "ইউএসবি কন্ট্রলারসমূহ"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "ইউএসবি পোর্টসমূহ"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "SMBus কন্ট্রলারসমূহ"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "ব্রীজ এবং সিস্টেম কন্ট্রোলার সমূহ"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "ফ্লপি"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "জিপ"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "ডিস্ক"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr ""
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "সিডিরম"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "সিডি/ডিভিডি রাইটিং সফ্টওয়্যার"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "ডিভিডি-রোম"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "টেপ"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "AGP কন্ট্রোলার সমূহ"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "ভিডিওকার্ড"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr ""
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "টিভিকার্ড"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "অন্যান্য মাল্টিমিডিয়া ডিভাইস সমূহ"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "সাউন্ডকার্ড"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "ওয়েব ক্যামেরা"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "প্রসেসর"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "ISDN এডোপ্টার সমূহ"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr ""
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr ""
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr ""
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr ""
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr ""
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "ইথারনেটকার্ড"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "মডেম"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "ADSL এডোপ্টার সমূহ"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "মেমরি"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "প্রিন্টার"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr ""
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "জয়ষ্টিক"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "কি-বোর্ড"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr ""
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "মাউস"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr ""
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "UPS"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "স্কেনার"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "অজানা/অন্যান্য"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "সিপিউ #"
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, fuzzy, c-format
+msgid "Couldn't install the required packages"
+msgstr "%s প্যাকেজটি ইনস্টল করা যায় নি!"
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "অনুগ্রহ করে অপেক্ষা করুন.... কনফিগারেশন প্রস্তাব করা হচ্ছে"
+msgid "Please check the repositories are correctly configured"
+msgstr ""
+
+#: harddrake/sound.pm:462
+#, c-format
+msgid "No known driver"
+msgstr "কোন পরিচিত ড্রাইভার নেই"
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr "আপনার সাউন্ড কার্ড (%s)-এর জন্য কোন পরিচিত ড্রাইভার নেই"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "পরিবর্তন কার্যকর করার পূর্বে আপনাকে লগ-আউট করে তারপর পুণরায় লগ-ইন করতে হবে"
+
+#: harddrake/sound.pm:522
+#, c-format
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
+
+#: harddrake/sound.pm:527
+#, c-format
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "নতুন সার্ভারের খোজ করো"
+
+#: harddrake/sound.pm:551
#, c-format
-msgid "Enable PulseAudio"
+msgid "PulseAudio"
msgstr ""
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:552
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
+msgid "PulseAudio with Glitch-Free mode"
msgstr ""
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:553
#, c-format
-msgid "Enable user switching for audio applications"
+msgid "PipeWire with WirePlumber"
msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:554
#, c-format
-msgid "Use Glitch-Free mode"
+msgid "PipeWire with PipeWire Media Session"
msgstr ""
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
msgstr ""
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr "ট্রাবল শুটিং"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr ""
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "কোন বিকল্প ড্রাইভার নেই"
-# বিকল্প
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
@@ -3171,188 +3262,75 @@ msgstr ""
"আপনার সাউন্ড কার্ড (%s) যা আপনি বর্তমানে ব্যবহার \"%s\" করছেন তার জন্য পরিচিত অন্য "
"কোন OSS/ALSA কোন ড্রাইভার নেই"
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "সাউন্ড কনফিগারেশন"
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"এখানে আপনি আপনার সাউন্ড কার্ডের (%s) জন্য বিকল্প ড্রাইভার (হয় OSS অথবা ALSA) পছন্দ "
-"করতে পারেন।"
-
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
-#, c-format
-msgid ""
-"\n"
-"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
-"\n"
-"\n"
-"আপনি বর্তমানে %s\"%s\" ড্রাইভার ব্যবহার করছেন (আপনার সাউন্ড কার্ডের স্বাভাবিক "
-"ড্রাইভার \"%s\")"
+msgid "Sound troubleshooting"
+msgstr "সাউন্ড ট্রাবল শুটিং"
-#: harddrake/sound.pm:414
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"OSS (Open Sound System) ছিল প্রথম সাউন্ড API. এটা হচ্ছে একটি ওএস স্বাধীন সাউন্ড "
-"API (এটা বেশিরভাগ UNIX(tm) সিস্টেমে পাওয়া যায়) কিন্তু এটা খুব সাধারণ এবং "
-"স্বল্পসংখ্যক API.\n"
-"নতুন আর কি, OSS ড্রাইভার সব চাকা নতুন করে তৈরি করে।\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) হচ্ছে একটি নিয়ন্ত্রিত আর্কিটেকচার যা\n"
-"ISA, ইউএসবি এবং PCI cards এর একটি বড় সীমা সমর্থন করে।\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"এটা OSS এর চেয়ে বেশি API প্রদান করে\n"
"\n"
-"alsa ব্যবহার করতে, একজন ব্যবহার করতে পারে:\n"
-"- পুরাতন সমর্থিত OSS api\n"
-"- নতুন ALSA api যা অনেক সুবিধা প্রদান করে কিন্তু ALSA লাইব্রেরী কতৃক ব্যবহৃত।\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "ড্রাইভার"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"পুরাতন \"%s\" ড্রাইভার কালো তালিকা ভুক্ত।\n"
"\n"
-"এটি কার্ণেল আনলোড করার সময় oops কে রিপোর্ট করে।\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"নতুন \"%s\" শুধুমাত্র পরবর্তী বুটস্ট্র্যাপে ব্যবহৃত হবে।"
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "কোন ওপেন সোর্স ড্রাইভার নেই"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"আপনার সাউন্ড কার্ডের (%s) জন্য কোন ফ্রী ড্রাইভার নেই, কিন্তু একটি অংশিদারী ড্রাইভার "
-"\"%s\"-এ আছে।"
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "কোন পরিচিত ড্রাইভার নেই"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "আপনার সাউন্ড কার্ড (%s)-এর জন্য কোন পরিচিত ড্রাইভার নেই"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "সাউন্ড ট্রাবল শুটিং"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
"\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-"ক্লাসিক বাগ সাউন্ড পরীক্ষক নিম্নলিখিত কমান্ডগুলো চালু করে:\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" ডিফল্টভাবে আপনার কার্ড যেই ড্রাইভার \n"
-"ব্যবহার করছে তা আপনাকে বলবে\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" আপনার বর্তমানে ব্যবহৃত \n"
-"ড্রাইভারের কথা বলবে\n"
"\n"
-"- \"/sbin/lsmod\" যদি এর মডিউল (ড্রাইভার) লোড হয় বা না হয় তবে সে ব্যাপারে "
-"পরীক্ষা \n"
-"করতে আপনাকে সক্রিয় করে তুলবে\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" এবং \"/sbin/chkconfig --list alsa\" যদি\n"
-"সাউন্ড এবং alsa সার্ভিসগুলো initlevel 3 তে চলার জন্য কন্‌ফিগার করা থাকে তাহলে \n"
-"আপনাকে বলবে\n"
"\n"
-"- \"aumix -q\" যদি সাউন্ড বন্ধ থাকে বা না থাকে তাহলে আপনাকে বলবে\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" কোন প্রোগ্রাম সাউন্ড কার্ড ব্যবহার করছে সেটা বলবে\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "আমাকে যেকোন ড্রাইভার নিতে দাও"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "ইচ্ছেমত ড্রাইভার পছন্দ"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"আপনি যদি মনে করেন যে কোন ড্রাইভার আপনার কার্ডের জন্য ঠিক হবে\n"
-"তাহলে উপরের লিষ্ট থেকে আপনি একটি পছন্দ করে নিতে পারেন।\n"
-"\n"
-"আপনার \"%s\"-এর বর্তমান ড্রাইভার \"%s\""
#: harddrake/v4l.pm:12
#, c-format
@@ -3380,7 +3358,7 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
"বেশিরভাগ আধুনিক টিভি কার্ডের ক্ষেত্রেই GNU/Linux -এর bttv মডিউল সঠিক প্যারামিটার "
"সয়ং সনাক্ত করে।\n"
@@ -3398,75 +3376,73 @@ msgstr "কার্ড মডেল:"
msgid "Tuner type:"
msgstr "টিউনারের ধরণ:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "ঠিক আছে"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "হ্যাঁ"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "না"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "একটি ফাইল পছন্দ করুন"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "যোগ"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "পরিবর্তন"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "সমাপ্ত"
-# আগে
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "পূর্ববর্তী"
-# সাম
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "কোন ফাইল বেছে নেয়া হয়নি"
-# সাম
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "আপনি একটি ডিরেক্টরি নির্বাচন করেছেন, ফাইল নয়"
-# সাম
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "এই নামে কোন ডিরেক্টরি নেই"
-# সাম
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "এই নামে কোন ফাইল নেই"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr ""
@@ -3549,1248 +3525,1262 @@ msgstr "পুনরায়-পেশ"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "এনডোররা"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "সংযুক্ত আরব আমিরাত"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "আফগানিস্তান"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "আংটিগুয়া এবং বারবুদা"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "অ্যাংগুইল্লিয়া"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "আলবেনিয়া"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "আরমেনিয়া"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "নেদারল্যান্ড এ্যন্টিল্লিস"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "অ্যাংগোলা"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "এন্টার্কটিকা"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "আর্জেন্টিনা"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "আমেরিকান সামোয়া"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "অষ্ট্রিয়া"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "অষ্ট্রেলিয়া"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "অরুবা"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "আজেরবাঈজান"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "বসনিয়া এবং হার্জোগোভিনা"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "বার্বাডোস"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "বাংলাদেশ"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "বেলজিয়াম"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "বুর্কিনা ফাসো"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "বুলগেরিয়া"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "বাহরাইন"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "বুরুন্ডি"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "বেনিন"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "বার্মুডা"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "ব্রুনেই দারুসসালাম"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "বলিভিয়া"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "ব্রাজিল"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "বাহামা"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "ভূটান"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "বৌভেট দীপসমূহ"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "বত্‌সওয়ানা"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "বেলারুস"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "বেলিজে"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "কানাডা"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "কোকোস (কেলিং) দীপসমূহ"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "কঙ্গো (কিংশাসা)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "মধ্য আফ্রিকান গণপ্রজাতন্ত্র"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "কঙ্গো (ব্রাজ্জাভিল্লে)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "সুইজারল্যান্ড"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "কোট ডি'লভোরে"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "কুক দীপপুঞ্জ"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "চিলি"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "ক্যামেরুন"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "চীন"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "কলম্বিয়া"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "কোষ্টা রিকা"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "সারবিয়া এবং মোনটেংগ্র"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "কিউবা"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "কেপ ভার্দে"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "ক্রিসমাস দীপপুঞ্জ"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "সাইপ্রাস"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "চেক রিপাবলিক"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "জার্মানী"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "ডজিবুতি"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "ডেনমার্ক"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "ডোমিনিকা"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "গণপ্রজাতন্ত্রী ডোমিনিকা"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "আলজেরিয়া"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "ইকুয়েডর"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "এস্তোনিয়া"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "মিশর"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "পশ্চিম সাহারা"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "এরিট্রিয়া"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "স্পেন"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "ইথিওপিয়া"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "ফিনল্যান্ড"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "ফুজি"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "ফোকল্যান্ড দীপপুঞ্জ (মালভিনাস)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "মাক্রোনেশিয়া"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "ফারোয় দীপপুঞ্জ"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "ফ্রান্স"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "গ্যাবোন"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "যুক্তরাজ্য"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "গ্রেনেডা"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "জর্জিয়া"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "ফ্রেঞ্জ গায়ানা"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "ঘানা"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "জিব্রাল্টার"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "গ্রীণল্যান্ড"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "জাম্বিয়া"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "গিনি"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "গুয়াদেলুপে"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "ইকুয়েটরিয়াল গিনি"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "গ্রীস"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "দক্ষিন জর্জিয়া এবং দক্ষিন স্যান্ডউইচ্‌ দীপপুঞ্জ"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "গুয়াতেমালা"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "গুয়াম"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "গিনি-বিসাউ"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "গায়ানা"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "হংকং (চীন)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "হার্ড এবং ম্যাকডোনাল্ড দীপপুঞ্জ"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "হন্ডুরাস"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "ক্রোয়েশিয়া"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "হাইতি"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "হাঙ্গেরী"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "ইন্দোনেশিয়া"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "আয়ারল্যান্ড"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "ইসরাঈল"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "ভারত"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "ব্রিটিশ ভারতীয় মহাসাগর সমরাজ্য"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "ইরাক"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "ইরান"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "আইসল্যান্ড"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "ইতালী"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "জামাইকা"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "জর্ডান"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "জাপান"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "কেনিয়া"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "কিরগিজস্তান"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "কম্বোডিয়া"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "কিরিবাতি"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "কমোরোস"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "সেন্ট কিট্টস্‌ এবং নেভিস্‌"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "কোরিয়া (উত্তর)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "কোরিয়া"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "কুয়েত"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "কেম্যান দীপপুঞ্জ"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "কাজাকিস্তান"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "লাওস্‌"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "লেবানন"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "সেইন্ট লুইস"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "লিয়েচ্‌টেনস্তেইন"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "শ্রীলঙ্কা"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "লাইবেরিয়া"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "লেসথো"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "লিথুয়েনিয়া"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "লুক্সেমবার্গ"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "লাটভিয়া"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "লিবিয়া"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "মরক্কো"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "মোনাকো"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "মলডোভা"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "মাদাগাস্‌কার"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "মার্শাল দীপপুঞ্জ"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "ম্যাসিডোনিয়া"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "মালি"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "মিয়ানমার"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "মঙ্গোলীয়া"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "উত্তর মারিয়ানা দীপপুঞ্জ"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "মির্টিনিক্‌"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "মৌরিতানিয়া"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "মন্টসেরাত"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "মাল্টা"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "মরিসাস"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "মালদ্বীপ"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "মালাউ"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "মেক্সিকো"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "মালয়েশিয়া"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "মোজাম্বিক"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "নামিবিয়া"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "নিউ ক্যালেডোনিয়া"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "নাইজার"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "নরফোক দীপপুঞ্জ"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "নাইজেরিয়া"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "নাইসারাগুয়া"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "নেদারল্যান্ড"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "নরওয়ে"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "নেপাল"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "নাউরু"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "নিউও"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "নিউজিল্যান্ড"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "ওমান"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "পানামা"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "পেরু"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "ফ্রেঞ্জ পলিনেশিয়া"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "পাপুয়া নিউগিনি"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "ফিলিপাইন"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "পাকিস্তান"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "পোল্যান্ড"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "সেন্ট পিয়েরে এবং মুকুলন"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "পিটকাইরন"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "পুয়ের্তোরিকো"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "প্যালেস্টাইন"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "পর্তুগাল"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "পারাগুয়ে"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "পালাউ"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "কাতার"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "রিইউনিয়ন"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "রোমানিয়া"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "রাশিয়া"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "রুয়ান্ডা"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "সৌদী আরব"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "সলোমন দীপপুঞ্জ"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "সেইছিল্লেস"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "সুদান"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "সুইডেন"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "সিঙ্গাপুর"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "সেন্ট হেলেনা"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "স্লোভেনিয়া"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "স্ভালবার্দ এবং জান মায়ান দীপপুঞ্জ"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "স্লোভাকিয়া"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "সিয়েররা লেওয়ান"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "সান মেরিনো"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "সেনেগাল"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "সোমালিয়া"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "সুরিনাম"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "সাও টোমি এবং প্রিন্সিপে"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "এই সাল্ভাদোর"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "সিরিয়া"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "সুইজারল্যান্ড"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "টার্ক এবং কাইকোস দীপপুঞ্জ"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "চাদ"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "দক্ষিন ফ্রান্স সাম্রাজ্য"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "টোগো"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "থাইল্যান্ড"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "তাজিকিস্তান"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "তোকেলাউ"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "পূর্ব তিমুর"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "তুর্কমেনিস্তান"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "তানিসিয়া"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "টঙ্গো"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "তুর্কি"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "ট্রিনিদাদ এবং টোবাগো"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "টুভালু"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "তাইওয়ান"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "তানজানিয়া"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "আকরাইসন"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "উগান্ডা"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "যুক্ত রাষ্ট্রের বাহিরের দীপপুঞ্জ"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "যুক্তরাষ্ট্র"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "উরুগুয়ে"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "উজবেকিস্তান"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "ভ্যাটিক্যান"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "সেন্ট ভিনসেন্ট এবং গ্রানাডা"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "ভেনিজুয়েলা"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "ভার্জিন দীপপুঞ্জ (ব্রিটিশ)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "ভার্জিন দীপপুঞ্জ (ইউ.এস)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "ভিয়েতনাম"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "ভানাতু"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "ওয়েলস্ এবং ফুটুনা"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "সামোয়া"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "ইয়েমান"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "মায়োত্তে"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "দক্ষিন আফ্রিকা"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "জাম্বিয়া"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "জিম্বাবুয়ে"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "%s -এ আপনাকে স্বাগতম"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr ""
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "প্রথমে লজিকাল ভলিউম সরিয়ে ফেলুন\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr ""
+#. -PO: Only write something if needed:
#: messages.pm:11
#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr ""
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr ""
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4804,16 +4794,23 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr ""
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4821,15 +4818,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4838,51 +4835,66 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
+"you."
+msgstr ""
+
+#: messages.pm:68
+#, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr ""
+
+#: messages.pm:70
+#, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. %s\n"
+"entities.\n"
"Most of these licenses allow you to use, duplicate, adapt or redistribute "
"the components which \n"
"they cover. Please read carefully the terms and conditions of the license "
"agreement for each component \n"
"before using any component. Any question on a component license should be "
"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr ""
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr ""
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4894,67 +4906,20 @@ msgid ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
-msgstr ""
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"For any question on this document, please contact Mageia."
msgstr ""
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-
-#: messages.pm:112
-#, c-format
+#: messages.pm:102
+#, fuzzy, c-format
msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
"সাবধান: বিনামূল্যের সফ্‌টওয়্যার পেটেন্‌ট মুক্ত হওয়ার প্রয়োজন নেই, এবং কিছু বিনামূল্যের\n"
"সফ্‌টওয়্যার আপনার দেশ কর্তৃক পেটেন্‌টকৃত হতে পারে। উদাহরণস্বরুপ, অতিরিক্ত ব্যবহারের\n"
@@ -4962,93 +4927,38 @@ msgstr ""
"http://www.mp3licensing.com । আপনি যদি অনিশ্চিত হোন যদি এর যেকোন\n"
"একটি আপনার জন্যও প্রযোজ্য হতে পারে, আপনার স্থানীয় আইন পরীক্ষা করুন।"
-#: messages.pm:120
-#, c-format
+#: messages.pm:112
+#, fuzzy, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
+"অভিনন্দন, ইনস্টলেশন পুরোপুরিভাবে হয়ে গেছে।\n"
+"দ্নবুট মিডিয়া সরিয়ে ফেলুন, এবং পুনরায় চালু করার জন্য return চাপুন।"
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:114
#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
+"For information on fixes which are available for this release of Mageia,\n"
"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"%s"
msgstr ""
-"অভিনন্দন, ইনস্টলেশন পুরোপুরিভাবে হয়ে গেছে।\n"
-"দ্নবুট মিডিয়া সরিয়ে ফেলুন, এবং পুনরায় চালু করার জন্য return চাপুন।\n"
-"\n"
-"\n"
"এই সংস্করণের ম্যান্ড্রিব লিনাক্সের তথ্য এখানে পাওয়া যাচ্ছে,\n"
"কোন প্রকার সমস্যার সমাধান এখানে পাওয়া যাচ্ছে:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"আপনার সিস্টেম কন্‌ফিগার করার তথ্য অফিসিয়াল ম্যান্ড্রিব লিনাক্স ব্যবহারকারীর গাইডের\n"
-"ইনস্টল হবার পরের অধ্যায়ে পাওয়া যাবে।"
+"%s"
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
#: modules/interactive.pm:19
-#, fuzzy, c-format
+#, c-format
msgid "This driver has no configuration parameter!"
-msgstr "ইউ-পি-এস ড্রাইভার কন্‌ফিগারেশন"
+msgstr ""
#: modules/interactive.pm:22
#, c-format
@@ -5080,36 +4990,26 @@ msgstr "আপনার কি কোন %s ইন্টারফেস আছ
msgid "See hardware info"
msgstr "হার্ডওয়্যারের তথ্য দেখুন"
-# -PO: the first %s is the card type (scsi, network, sound,...)
-# -PO: the second is the vendor+model name
#: modules/interactive.pm:83
#, c-format
msgid "Installing driver for USB controller"
msgstr "ইউএসবি কন্ট্রোলারের জন্য ড্রাইভার ইনস্টল করা হচ্ছে"
-# -PO: the first %s is the card type (scsi, network, sound,...)
-# -PO: the second is the vendor+model name
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "ফায়ারওয়ার কন্ট্রোলার %s এর জন্য ড্রাইভার ইনস্টল করা হচ্ছে"
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "ফায়ারওয়ার কন্ট্রোলার \"%s\" এর জন্য ড্রাইভার ইনস্টল করা হচ্ছে"
-# -PO: the first %s is the card type (scsi, network, sound,...)
-# -PO: the second is the vendor+model name
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "হার্ড ড্রাইভ কন্ট্রোলার %s এর জন্য ড্রাইভার ইনস্টল করা হচ্ছে"
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "হার্ড ড্রাইভ কন্ট্রোলার \"%s\" এর জন্য ড্রাইভার ইনস্টল করা হচ্ছে"
-# -PO: the first %s is the card type (scsi, network, sound,...)
-# -PO: the second is the vendor+model name
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "ইথার্নেট কন্ট্রোলার %s এর জন্য ড্রাইভার ইনস্টল করা হচ্ছে"
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "ইথার্নেট কন্ট্রোলার \"%s\" এর জন্য ড্রাইভার ইনস্টল করা হচ্ছে"
-# -PO: the first %s is the card type (scsi, network, sound,...)
-# -PO: the second is the vendor+model name
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
#: modules/interactive.pm:97
@@ -5147,8 +5047,6 @@ msgstr ""
msgid "Module options:"
msgstr "মডিউলের অপশন সমূহ:"
-# -PO: the %s is the driver type (scsi, network, sound,...)
-# -PO: the %s is the driver type (scsi, network, sound,...)
#. -PO: the %s is the driver type (scsi, network, sound,...)
#: modules/interactive.pm:132
#, c-format
@@ -5192,35 +5090,35 @@ msgstr ""
"%s মডিউল লোড করতে ব্যর্থ।\n"
"আপনি কি অন্য প্যারামিটার দিয়ে আবার চেষ্টা করতে চান?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr ""
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
msgstr ""
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "ব্যবহারকারীর পাসওয়ার্ড"
+msgstr ""
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "মাউন্ট হয়নি:"
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "এই প্লাটফর্মে এক্সটেনডেড পার্টিশন সাপোর্ট করেনা"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
@@ -5228,10 +5126,10 @@ msgstr ""
"একমাত্র সমাধান হচ্ছে আপনার প্রাইমারি পার্টিশনের ত্রুটিকে Extended পার্টিশনে সরিয়ে "
"নেয়া। "
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
@@ -5241,112 +5139,112 @@ msgstr ""
"এর মানে হচ্ছে ডিস্কে কোন কিছু লিখতে গেলে তা বিভিন্ন রকম, সমস্যাযুক্ত ডাটায়গিয়ে শেষ "
"হয়।"
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr ""
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr ""
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr ""
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
"configuration."
msgstr ""
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr ""
-#: pkgs.pm:269 pkgs.pm:270
-#, fuzzy, c-format
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
msgid "Unused hardware support"
-msgstr "রেডিও সাপোর্ট সক্রিয় করো"
+msgstr ""
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr ""
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
msgstr "_ফরম্যাটকৃত_ রেইড %s-এ পার্টিশন যোগ করা যাচ্ছে না"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "রেইড স্তর %d-এর জন্য পর্যাপ্ত সংখ্যক পার্টিশন নেই\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "/usr/share/sane/firmware ডিরেক্টরিটি তৈরি করা যায় নি!"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "/usr/share/sane/%s লিঙ্কটি তৈরি করা যায় নি!"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr ""
"ফার্মওয়ার ফাইল %s-কে /usr/share/sane/firmware ডিরেক্টরিতে কপি করা যায় নি!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "ফার্মওয়ার ফাইল %s-এর অনুমতি নির্দিষ্ট করা যায় নি!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "স্ক্যানার-ড্রেক"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr "আপনার স্ক্যানার(সমূহ) শেয়ার করার জন্য প্রয়োজনীয় প্যাকেজ ইনস্টল করা যায় নি।"
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr "আপনার স্ক্যানার(সমূহ) রুট ব্যতীত অপর ব্যবহারকারীগণ ব্যবহার করতে পারবে না।"
#: security/help.pm:11
-#, fuzzy, c-format
+#, c-format
msgid "Accept bogus IPv4 error messages."
-msgstr "ভূয়া IPv4 সমস্যাসূচক বার্তা অনুমোদন করো"
+msgstr ""
#: security/help.pm:13
-#, fuzzy, c-format
+#, c-format
msgid "Accept broadcasted icmp echo."
-msgstr "ব্রডকাস্ট আই.সি.এম.পি. ইকো অনুমোদন করো"
+msgstr ""
#: security/help.pm:15
-#, fuzzy, c-format
+#, c-format
msgid "Accept icmp echo."
-msgstr "আই.সি.এম.পি. ইকো অনুমোদন করো"
+msgstr ""
#: security/help.pm:17
-#, fuzzy, c-format
+#, c-format
msgid "Allow autologin."
-msgstr "স্বয়ংক্রিয় লগ-ইন অনুমোদন/নিষিদ্ধ করো"
+msgstr ""
#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
#: security/help.pm:21
-#, fuzzy, c-format
+#, c-format
msgid ""
"If set to \"ALL\", /etc/issue and /etc/issue.net are allowed to exist.\n"
"\n"
@@ -5354,51 +5252,39 @@ msgid ""
"\n"
"Else only /etc/issue is allowed."
msgstr ""
-"এটির মান \"ALL\" হলে /etc/issue ও /etc/issue.net উভয়কেই অবস্থান করতে দেওয়া "
-"হয়।\n"
-"\n"
-"আর এটির মান NONE হলে কোনটিকেই রাখা হয় না।\n"
-"\n"
-"অন্যথায় শুধুমাত্র /etc/issue-কেই রাখা হয়।"
#: security/help.pm:27
-#, fuzzy, c-format
+#, c-format
msgid "Allow reboot by the console user."
-msgstr "কনসোল ব্যবহারকারী কর্তৃক রিবুট অনুমোদন/নিষিদ্ধ করো।"
+msgstr ""
#: security/help.pm:29
-#, fuzzy, c-format
+#, c-format
msgid "Allow remote root login."
-msgstr "দূরবর্তী কম্পিউটার থেকে রুট অ্যাকাউন্টে লগ-ইন করা অনুমোদন করো"
+msgstr ""
#: security/help.pm:31
-#, fuzzy, c-format
+#, c-format
msgid "Allow direct root login."
-msgstr "সরাসরি রুট অ্যাকাউন্টে লগ-ইন অনুমোদন/নিষিদ্ধ করো।"
+msgstr ""
#: security/help.pm:33
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow the list of users on the system on display managers (kdm and gdm)."
msgstr ""
-"ডিসপ্লে ব্যবস্থাপকে ব্যবহারকারীদের তালিকা প্রদর্শন অনুমোদন/নিষিদ্ধ করো (কে.ডি.এম. "
-"এবং জি.ডি.এম.)।"
-# সাম
#: security/help.pm:35
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow to export display when\n"
"passing from the root account to the other users.\n"
"\n"
"See pam_xauth(8) for more details.'"
msgstr ""
-"রুট অ্যাকাউন্ট থেকে ব্যবহারকারী বদলানোর সময় ডিসপ্লে এক্সপোর্ট করা অনুমোদন/নিষিদ্ধ "
-"করো। pam_xauth(8) তে বিস্তারিত দেখুন।'"
-# সাম
#: security/help.pm:40
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow X connections:\n"
"\n"
@@ -5408,16 +5294,7 @@ msgid ""
"\n"
"- \"None\" (no connection)."
msgstr ""
-"X সংযোগ অনুমোদন/নিষিদ্ধ করো:\n"
-"\n"
-"- সব (সব সংযোগ অনুমোদিত),\n"
-"\n"
-"- স্থানীয় (শুধুমাত্র স্থানীয় মেশিন থেকে সংযোগ),\n"
-"\n"
-"- একটিও না (কোন সংযোগ অনুমোদিত নয়)।"
-# sam: argument = আর্গুমেন্ট?
-# argument
#: security/help.pm:48
#, c-format
msgid ""
@@ -5427,10 +5304,9 @@ msgstr ""
"এই প্রেরিত মান নির্দেশ করে ক্লায়েন্টগুলো নেটওয়ার্ক থেকে tcp পোর্ট ৬০০০ দিয়ে X "
"সার্ভারে সংযুক্ত হতে অনুমদিত কিনা।"
-# সাম
#. -PO: here "ALL", "Local" and "None" are values in a pull-down menu; translate them the same as they're
#: security/help.pm:53
-#, fuzzy, c-format
+#, c-format
msgid ""
"Authorize:\n"
"\n"
@@ -5441,22 +5317,10 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
-"অনুমোদন করো:\n"
-"\n"
-"- tcp_wrappers কর্তৃক নিয়ন্ত্রিত সকল সার্ভিস (hosts.deny(5) man page দেখুন) যদি "
-"\"ALL\" সেট করা থাকে,\n"
-"\n"
-"- শুধু স্থানীয় যদি \"LOCAL\" সেট করা থাকে,\n"
-"\n"
-"- কোনটি নয় যদি \"NONE\" সেট করা থাকে।\n"
-"\n"
-"আপনার প্রয়োজনীয় সার্ভিসগুলোকে অনুমোদন করতে, /etc/hosts.allow ব্যবহার করুন (hosts."
-"allow(5) দেখুন)।"
-# সাম: incomplete
#: security/help.pm:63
#, c-format
msgid ""
@@ -5478,35 +5342,26 @@ msgstr ""
"ইনস্টলেশনের সময় ফাইলে অবস্থিত সার্ভিস যোগ করার ব্যপারে\n"
"সিদ্ধান্ত নেয়।"
-# সাম
#: security/help.pm:72
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable crontab and at for users.\n"
"\n"
"Put allowed users in /etc/cron.allow and /etc/at.allow (see man at(1)\n"
"and crontab(1))."
msgstr ""
-"ব্যবহারকারীদের জন্য crontab এবং at সক্রিয়/নিষ্ক্রিয় করো।\n"
-"\n"
-"অনুমোদিত ব্যবহারকারীদের /etc/cron.allow এবং /etc/at.allow এ রাখো (man at(1)\n"
-"ও crontab(1) দেখুন)।"
#: security/help.pm:77
-#, fuzzy, c-format
+#, c-format
msgid "Enable syslog reports to console 12"
-msgstr "কনসোল ১২ তে syslog রিপোর্ট সক্রিয়/নিষ্ক্রিয় করো"
+msgstr ""
-# সাম: name resolution = নাম বিশ্লেষন?
-# 'name resolution' is translated in various ways in this file.
#: security/help.pm:79
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable name resolution spoofing protection. If\n"
"\"%s\" is true, also reports to syslog."
msgstr ""
-"নাম বিশ্লেষন স্পুফিং প্রতিরক্ষা ব্যবস্থা সক্রিয়/নিষ্ক্রিয় করো। যদি\n"
-"\"%s\" সত্য হয়, তবে syslog এও রিপোর্ট করো।"
#: security/help.pm:80
#, c-format
@@ -5514,54 +5369,51 @@ msgid "Security Alerts:"
msgstr "নিরাপত্তা সতর্কতা:"
#: security/help.pm:82
-#, fuzzy, c-format
+#, c-format
msgid "Enable IP spoofing protection."
-msgstr "আই.পি. স্পুফিং প্রতিরক্ষা ব্যবস্থা সক্রিয় করো"
+msgstr ""
#: security/help.pm:84
-#, fuzzy, c-format
+#, c-format
msgid "Enable libsafe if libsafe is found on the system."
-msgstr "সিস্টেমে libsafe থাকলে তাকে সক্রিয় করো"
+msgstr ""
#: security/help.pm:86
-#, fuzzy, c-format
+#, c-format
msgid "Enable the logging of IPv4 strange packets."
-msgstr "IPv4-এর সন্দেহজনক প্যাকেট সম্পর্কে লগ রাখার ব্যবস্থা সক্রিয় করো"
+msgstr ""
#: security/help.pm:88
-#, fuzzy, c-format
+#, c-format
msgid "Enable msec hourly security check."
-msgstr "প্রতিঘন্টায় msec নিরাপত্তা পরীক্ষা সক্রিয় করো"
+msgstr ""
#: security/help.pm:90
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable su only from members of the wheel group. If set to no, allows su from "
"any user."
msgstr ""
-"শুধুমাত্র wheel গ্রুপের ব্যবহারকারীদের জন্য অথবা যে কোন ব্যবহারকারীর জন্য su সক্রিয় "
-"করো।"
#: security/help.pm:92
#, c-format
msgid "Use password to authenticate users."
msgstr "ব্যবহারকারীর পরিচয় প্রমাণের জন্য পাসওয়ার্ড ব্যবহার করো।"
-# FIXME
#: security/help.pm:94
-#, fuzzy, c-format
-msgid "Activate ethernet cards promiscuity check."
-msgstr "ইথারনেট কার্ডের বহুরূপী পরীক্ষা সক্রিয়/নিষ্ক্রিয় করো।"
+#, c-format
+msgid "Activate Ethernet cards promiscuity check."
+msgstr ""
#: security/help.pm:96
-#, fuzzy, c-format
+#, c-format
msgid "Activate daily security check."
-msgstr "দৈনিক নিরাপত্তা পরীক্ষা সক্রিয়/নিষ্ক্রিয় করো।"
+msgstr ""
#: security/help.pm:98
-#, fuzzy, c-format
+#, c-format
msgid "Enable sulogin(8) in single user level."
-msgstr "একক ব্যবহারের ক্ষেত্রে (Single user level) sulogin(8) সক্রিয়/নিষ্ক্রিয় করো।"
+msgstr ""
#: security/help.pm:100
#, c-format
@@ -5569,8 +5421,6 @@ msgid "Add the name as an exception to the handling of password aging by msec."
msgstr ""
"msec কর্তৃক পাসওয়ার্ড পুরনো হয়ে যাওয়ার যে পরীক্ষা, তা থেকে এই নামকে বাদ দাও।"
-# সাম: not sure about the word বয়:বৃদ্ধি
-# aging
#: security/help.pm:102
#, c-format
msgid "Set password aging to \"max\" days and delay to change to \"inactive\"."
@@ -5592,17 +5442,15 @@ msgstr ""
"অক্ষর সংখ্যা নির্দিষ্ট করো।"
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "রুট-এর umask নির্দিষ্ট করো।"
+msgstr ""
#: security/help.pm:109
#, c-format
msgid "if set to yes, check open ports."
msgstr "এটির মান হ্যাঁ হলে, উন্মুক্ত পোর্টসমূহ পরীক্ষা করো।"
-# sam: yes = হ্যাঁ?
-# at many palces 'yes' is kept 'yes'
#: security/help.pm:110
#, c-format
msgid ""
@@ -5666,7 +5514,6 @@ msgstr "এটির মান হ্যাঁ হলে, suid রুট ফা
msgid "if set to yes, report unowned files."
msgstr "এটির মান হ্যাঁ হলে, কোন মালিকানাবিহীন ফাইল থাকলে তা জানাও।"
-# FIXME: অর্থ বুঝতেসিনা ;-(
#: security/help.pm:125
#, c-format
msgid "if set to yes, check files/directories writable by everybody."
@@ -5677,7 +5524,6 @@ msgstr "এটির মান হ্যাঁ হলে, সকলের পর
msgid "if set to yes, run chkrootkit checks."
msgstr "এটির মান হ্যাঁ হলে, chkrootkit-এর সাহায্যে পরীক্ষা চালাও।"
-# FIXME
#: security/help.pm:127
#, c-format
msgid ""
@@ -5686,7 +5532,6 @@ msgstr ""
"এটিতে টিক দেওয়া থাকলে মেইল সংক্রান্ত রিপোর্ট এই ই-মেইল ঠিকানায় অথবা রুট-এর নিকট "
"প্রেরণ করা হয়।"
-# সাম
#: security/help.pm:128
#, c-format
msgid "if set to yes, report check result by mail."
@@ -5730,9 +5575,9 @@ msgid "Timeout unit is second"
msgstr "টাইম-আউটের একক হল সেকেন্ড"
#: security/help.pm:138
-#, fuzzy, c-format
+#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "ব্যবহারকারীর umask নির্দিষ্ট করো।"
+msgstr ""
#: security/l10n.pm:11
#, c-format
@@ -5775,7 +5620,6 @@ msgid "List users on display managers (kdm and gdm)"
msgstr ""
"ডিসপ্লে ব্যবস্থাপকে (কে.ডি.এম. ও জি.ডি.এম.) ব্যবহারকারীদের তালিকা প্রদর্শন করো"
-# সাম: Export =?
#: security/l10n.pm:20
#, c-format
msgid "Export display when passing from root to the other users"
@@ -5837,11 +5681,9 @@ msgid "Enable msec hourly security check"
msgstr "প্রতিঘন্টায় msec নিরাপত্তা পরীক্ষা সক্রিয় করো"
#: security/l10n.pm:32
-#, fuzzy, c-format
+#, c-format
msgid "Enable su only from the wheel group members"
msgstr ""
-"শুধুমাত্র wheel গ্রুপের সদস্যদের জন্য অথবা সকল ব্যবহারকারীর জন্য su ব্যবহারের সুযোগ "
-"সক্রিয় করো"
#: security/l10n.pm:33
#, c-format
@@ -6006,11 +5848,11 @@ msgid "Standard"
msgstr "সাধারণ"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "সিকিউরিটি"
+msgstr ""
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6019,7 +5861,7 @@ msgid ""
"on your own."
msgstr ""
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -6028,7 +5870,7 @@ msgstr ""
"যে সব কম্পিউটার ক্লায়েন্ট হিসেবে ইন্টারনেটের সাথে যুক্ত হয়, তাদের সাধারণ নিরাপত্তার "
"জন্য এই স্তরের নিরাপত্তা গ্রহণের পরামর্শ দেওয়া যাচ্ছে।"
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6046,48 +5888,48 @@ msgstr ""
"সাথে শুধুই\n"
"ক্লায়েন্ট হিসেবে যুক্ত হয়, তবে আরো নিম্ন স্তরের নিরাপত্তা বেছে নিন।"
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "সিকিউরিটি"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "ড্রেকসেক-এর প্রাথমিক অপশন"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "অনুগ্রহপূর্বক আকাঙ্খিত নিরাপত্তা মাত্রা বেছে নিন"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr ""
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "নিরাপত্ত ব্যবস্থাপক:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
msgstr ""
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "ALSA (Advanced Linux Sound Architecture) সাউন্ড সিস্টেম চালু করো"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "অ্যানাক্রোন একটি পর্যায়ক্রমিক কমান্ড শিডিউলার (Scheduler) ।"
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6097,8 +5939,7 @@ msgstr ""
"জন্য apmd ব্যবহার করা হয়।\n"
"এছাড়া ব্যাটারির চার্জ কমে গেলে কম্পিউটার বন্ধ করার কাজেও এটি ব্যবহার করা যায়।"
-# সাম: batch = ?
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6107,8 +5948,22 @@ msgstr ""
"at কমান্ড দিয়ে শিডিউলকৃত কমান্ডগুলো নির্ধারিত সময়ে চালাবে, এবং যখন গড় চাপ\n"
"যথেষ্ট কম থাকে, তখন batch কমান্ডগুলো চালাবে।"
-# সাম
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr ""
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6120,19 +5975,18 @@ msgstr ""
"ও নির্ধারিত সময়ে চালনা করে। vixie cron, মৌলিক UNIX cron এর সাথে আরও কিছু\n"
"বৈশিষ্ট যোগ করে, যেমন উন্নত নিরাপত্তা ও শক্তিশালী কনফিগারেশন অপশনসমূহ।"
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr ""
-# সাম
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6143,8 +5997,20 @@ msgstr ""
"ব্যবহৃত হয়।\n"
"GNOME এবং KDE এটি ব্যবহার করে থাকে"
-# সাম
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6157,12 +6023,12 @@ msgstr ""
"এবং এটি কনসোলে\n"
" পপ-আপ মেনুও সমর্থন করে।"
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
@@ -6171,7 +6037,7 @@ msgstr ""
"হার্ডড্রেক একটি হার্ডওয়ার সনাক্তকারক চালায়\n"
"এবং কখনো কখনো নতুন/পরিবর্তিত হার্ডওয়ার কনফিগার করে।"
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
@@ -6179,8 +6045,7 @@ msgstr ""
"অ্যাপাচি একটি ওয়ার্ল্ড ওয়াইড ওয়েব সার্ভার। এটি এইচ.টি.এম.এল. ফাইল ও সি.জি.আই. "
"পরিবেশনে ব্যবহৃত হয়।"
-# সাম
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6195,18 +6060,23 @@ msgstr ""
"যেমন telnet, ftp, rsh, এবং rlogin। inetd নিষ্ক্রিয় করলে এটির অধীনে থাকা\n"
"সব সার্ভিস বন্ধ হয়ে যাবে।"
-# সাম
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"লিনাক্স কার্নেল ২.২ এর জন্য প্যাকেট শোধন শুরু করুন, যা কিনা\n"
-"একটি ফায়ারওয়াল সেটআপ করে আপনার মেশিনকে নেটওয়ার্কের আক্রমন থেকে রক্ষা করবে।"
-# সাম
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6217,8 +6087,7 @@ msgstr ""
"ম্যাপটি লোড করে। kbdconfig ইউটিলিটি ব্যবহার করে এটি নির্বাচন করা যেতে পারে।\n"
"বেশিরভাগ মেশিনের জন্য আপনার এটি সক্রিয় রাখা উচিত।"
-# সাম: সিওর না।
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6227,13 +6096,17 @@ msgstr ""
"/boot এ /usr/include/linux/{autoconf,version}.h এর জন্য\n"
"কার্নেল হেডারের স্বয়ংক্রিয় পুনর্সম্পাদন"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr "বুট হওয়ার সময় স্বয়ংক্রিয়ভাবে হার্ডওয়ার সনাক্তকরণ ও কনফিগারেশন।"
-# সাম
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6242,8 +6115,7 @@ msgstr ""
"Linuxconf, বুটের সময় বিভিন্ন কাজের আয়োজন করে যাতে সিস্টেম\n"
"কনফিগারেশন ঠিক থাকে।"
-# সাম
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -6252,7 +6124,7 @@ msgstr ""
"lpd একটি প্রিন্ট daemon এবং lpr সঠিকভাবে কাজ করার জন্য প্রয়োজন। এটি মুলত\n"
"একটি সার্ভার যা কিনা প্রিন্টিং এর কাজগুলো প্রিন্টারগুলোর মাঝে সঠিকভাবে বিতরণ করে।"
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
@@ -6261,14 +6133,29 @@ msgstr ""
"লিনাক্স ভার্চুয়াল সার্ভার উচ্চ কার্যসম্পন্ন এবং উচ্চ সুবিধা সম্পন্ন সার্ভার তৈরীতে\n"
"ব্যবহৃত হয়।"
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6277,7 +6164,12 @@ msgstr ""
"named (BIND) একটি ডোমেইন নাম সার্ভার (ডি.এন.এস.) যা হোস্ট-নাম থেকে আইপি ঠিকানা "
"সমাধানে ব্যবহৃত হয়।"
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6286,7 +6178,7 @@ msgstr ""
"সকল নেটওয়ার্ক ফাইল সিস্টেম (এন.এফ.এস.), এস.এম.বি. (ল্যান ব্যবস্থাপক/উইন্ডোজ),\n"
"এবং এন.পি.সি. (নেটওয়ার) মাউন্ট অবস্থানকে মাউন্ট ও আনমাউন্ট করে।"
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -6295,8 +6187,17 @@ msgstr ""
"বুট হওয়ার সময় যে সব নেটওয়ার্ক ইন্টারফেস চালু করা হয়\n"
"তাদের সকলকে সক্রিয়/নিষ্ক্রিয় করে।"
-# সাম
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6307,8 +6208,7 @@ msgstr ""
"এই সার্ভিসটি NFS সার্ভারকে কর্মক্ষম করে, যা কিনা /etc/exports ফাইল দিয়ে\n"
"কনফিগার করা হয়।"
-# সাম: functionality
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6317,13 +6217,12 @@ msgstr ""
"NFS, TCP/IP নেটওয়ার্ক এর উপর ফাইল শেয়ার করার একটি জনপ্রিয় প্রোটকল।\n"
"এই সার্ভিসটি NFS ফাইল লকিং বৈশিষ্ট কর্মক্ষম করে।"
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
-# সাম
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6332,14 +6231,17 @@ msgstr ""
"বুট এর সময়, console এবং Xorg এর অধীনে স্বয়ংক্রিয়ভাবে\n"
"numlock কী লকার সক্রিয় করো।"
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "OKI 4w ও তার সাথে সংগতিপূর্ণ উইনপ্রিন্টার সমর্থন করে।"
-# সাম:
-# things = ডিভাইস?
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6352,9 +6254,7 @@ msgstr ""
"নেই\n"
"সেখানেও এটি ইনস্টল করা যেতে পারে।"
-# সাম
-# portmap
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6366,7 +6266,12 @@ msgstr ""
"মত প্রোটকলগুলোব্যবহার করে থাকে। যেসব মেশিন RPC পদ্ধতি ব্যবহার করে এমন প্রোটকলের\n"
"সার্ভার হিসেবে কাজ করে, সেসব মেশিনে portmap সার্ভারটি চালু থাকতে হবে।"
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6375,8 +6280,7 @@ msgstr ""
"পোস্টফিক্স একটি মেইল ট্রান্সপোর্ট এজেন্ট, এটি এমন একটি প্রোগ্রাম যা এক কম্পিউটার থেকে "
"অন্য কম্পিউটারে মেইল স্থানান্তর করে।"
-# সাম
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6385,19 +6289,21 @@ msgstr ""
"উন্নততর অনিয়মিত সংখ্যা উত্‍পাদনের জন্য সিস্টেম এনট্রোপি পুল সংরক্ষণ\n"
"ও পুনরুদ্ধার করে। "
-# সাম
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
-"Oracle বা DVD প্লেয়ার অ্যাপ্লিকেশন ব্যবহার করার জন্য, raw ডিভাইসগুলোকে ব্লক ডিভাইস"
-"(যেমন হার্ড ড্রাইভ পার্টিশনসমূহ) হিসেবে নির্দিষ্ট করে দিন।"
+"Oracle বা DVD প্লেয়ার অ্যাপ্লিকেশন ব্যবহার করার জন্য, raw ডিভাইসগুলোকে ব্লক "
+"ডিভাইস(যেমন হার্ড ড্রাইভ পার্টিশনসমূহ) হিসেবে নির্দিষ্ট করে দিন।"
-# সাম
-# routed translated as রাউটেড
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr ""
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6408,8 +6314,7 @@ msgstr ""
"সাহায্য করে। যদিও RIP প্রোটকল ছোট নেটওয়ার্কের জন্য বহুল ব্যবহৃত, জটিল নেটওয়ার্কের "
"জন্য আরও জটিল রাউটিং প্রোটকল প্রয়োজন।"
-# সাম
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6418,8 +6323,14 @@ msgstr ""
"rstat প্রোটোকলটি নেটওয়ার্ক ব্যবহারকারীদের ঐ নেটওয়ার্কে অবস্থিত\n"
" যেকোন মেশিনের কার্যক্ষমতা সম্পর্কীয় পরিমাপকগুলো পেতে সাহায্য করে। "
-# সাম
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
@@ -6428,9 +6339,7 @@ msgstr ""
"rusers প্রোটকলটি নেটওয়ার্ক ব্যবহারকারীদের অন্যান্য সংযুক্ত মেশিনের\n"
"লগকৃত ব্যবহারকারীদের সনাক্ত করতে সাহায্য করে।"
-# সাম
-# প্রোটকল
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6439,33 +6348,47 @@ msgstr ""
"rwho প্রোটোকলটি রিমোট ব্যবহারকারীদেরকে, rwho daemon (finger এর মত) চালাচ্ছে এমন "
"মেশিনে লগইন করা ব্যবহারকারীদের একটি তালিকা দেয়।"
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "আপনার কম্পিউটারের সাউন্ড সিস্টেম চালু করে"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
-# সাম
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6474,82 +6397,94 @@ msgstr ""
"Syslog ব্যবহার করে daemon সমূহ বিভিন্ন সিস্টেম লগ ফাইলে লগ বার্তা\n"
"লিখে থাকে। অতএব, সবসময় Syslog চালিয়ে রাখা ভালো।"
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "ইউ.এস.বি. ডিভাইসের ড্রাইভার লোড করে।"
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr ""
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr ""
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "প্রিন্টিং"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "ইন্টারনেট"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "ফাইল শেয়ারকরণ"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "নেটওয়ার্ক করা"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "সি"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "দূর-নিয়ন্ত্রিত অ্যাডমিনিস্ট্রেশন"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "ডেটাবেস সার্ভার"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "সার্ভিস সমূহ"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr "বুট হওয়ার সময় যে সব সার্ভিস স্বয়ংক্রিয়ভাবে চালু হবে তাদের বেছে নিন"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "সার্ভিস সমূহ: %d সক্রিয় হয়েছে %d রেজিষ্টারের জন্য"
+msgid "%d activated for %d registered"
+msgstr "%d সক্রিয় হয়েছে %d রেজিষ্টারের জন্য"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "চলন্ত"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "স্থগিত"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "সার্ভিসসমূহ এবং ড্যেমনসমূহ"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6558,32 +6493,27 @@ msgstr ""
"দুঃখিত, এই সার্ভিসটি সম্পর্কে\n"
"অতিরিক্ত আর কোন তথ্য নেই।"
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "তথ্য"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "অনুরোধের ভিত্তিতে সচল করো"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "বুট করার সময় চালু করো"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "আরম্ভ"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "বন্ধ"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6617,9 +6547,7 @@ msgstr ""
"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
"USA.\n"
-# সাম
-# পুনরুদ্ধার
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6646,39 +6574,31 @@ msgstr ""
"--help : এই ম্যাসেজটি দেখাও।\n"
"--version : ভার্সান নাম্বার দেখাও।\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"অপশনসমূহ:\n"
" --boot - বুট লোডার কন্‌ফিগারে সক্রিয়\n"
-" --splash - বুট থিম কন্‌ফিগারে সক্রিয়\n"
"ডিফল্ট মোড: স্বয়ংক্রিয়ভাবে কন্‌ফিগার হতে বলার মোড"
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-"[অপশনসমূহ] [প্রোগ্রামের নাম]\n"
-"\n"
-"অপশনসমূহ:\n"
-" --help - এই সহায়ক বার্তা ছাপাও\n"
-" --report - প্রোগ্রামটিকে কোন একটি ম্যান্ড্রিব লিনাক্স টুল হওয়া উচিত\n"
-" --incident - প্রোগ্রামটিকে কোন একটি ম্যান্ড্রিব লিনাক্স টুল হওয়া উচিত"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6695,10 +6615,7 @@ msgstr ""
" --internet - ইন্টারনেট কন্‌ফিগার করো\n"
" --wizard - --add এর মতো"
-# সাম:
-# and gs for ghostscript for only this one...
-# did not translate "for only this one"...
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6729,13 +6646,11 @@ msgstr ""
" : name_of_application staroffice এর জন্য so \n"
" : এবং ghostscript এর জন্য gs।"
-# সাম
-# Mandriva Linux Terminal
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6748,33 +6663,18 @@ msgid ""
"--delclient : delete a client machine from MTS (requires MAC address, "
"IP, nbi image name)"
msgstr ""
-"[OPTIONS]...\n"
-"Mandriva Linux টার্মিনাল সার্ভার কনফিগারকারী\n"
-"--enable :MTS সক্রিয় করো\n"
-"--disable : MTS নিষ্ক্রিয় করো\n"
-"--start : MTS চালু করো\n"
-"--stop : MTS বন্ধ করো\n"
-"--adduser : MTS এ একটি ইতিমধ্যে তৈরী সিস্টেম ব্যবহারকারী যোগ করো "
-"(username প্রয়োজন)\n"
-"--deluser : MTS থেকে একটি ইতিমধ্যে তৈরী সিস্টেম ব্যবহারকারী বাদ দাও "
-"(username প্রয়োজন)\n"
-"--addclient : MTS এ একটি ক্লায়েন্ট মেশিন যোগ কর (MAC অ্যাড্রেস, IP, nbi "
-"ইমেজ নাম প্রয়োজন)\n"
-"--delclient : MTS থেকে একটি ক্লায়েন্ট মেশিন বাদ দাও (MAC অ্যাড্রেস, IP, nbi "
-"ইমেজ নাম প্রয়োজন)"
-
-#: standalone.pm:100
+
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[কি-বোর্ড]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
-# সাম
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6798,28 +6698,19 @@ msgstr ""
"--quiet : ব্যবহারকারীর সাথে তথ্য আদান-প্রদান করো না। (dis)connect এর সাথে "
"ব্যবহার করার জন্য।"
-# সাম
-# verify
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-"[OPTION]...\n"
-" --no-confirmation Mandriva Update মোডে প্রথম নিশ্চিতকরন প্রশ্ন জিজ্ঞাসা "
-"করো না\n"
-" --no-verify-rpm প্যাকেজ স্বাক্ষর নিরীক্ষা করো না\n"
-" --changelog-first বর্ণনা উইন্ডোতে filelist এর আগে changelog দোখাও\n"
-" --merge-all-rpmnew প্রাপ্ত সকল .rpmnew/.rpmsave ফাইলগুলো একীভূতকরণের "
-"পরামর্শ দাও"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -6828,7 +6719,7 @@ msgstr ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6839,7 +6730,7 @@ msgstr ""
" XFdrake [--noauto] মনিটর\n"
" XFdrake রেজ্যুলুশন"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6850,72 +6741,76 @@ msgstr ""
"ব্যবহার: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
"testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
-#, fuzzy, c-format
+#: timezone.pm:170 timezone.pm:171
+#, c-format
msgid "All servers"
-msgstr "সার্ভার যোগ করো"
+msgstr ""
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr ""
-#: timezone.pm:199
-#, fuzzy, c-format
+#: timezone.pm:210
+#, c-format
msgid "Africa"
-msgstr "দক্ষিন আফ্রিকা"
+msgstr ""
-#: timezone.pm:200
-#, fuzzy, c-format
+#: timezone.pm:211
+#, c-format
msgid "Asia"
-msgstr "অষ্ট্রিয়া"
+msgstr ""
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr ""
-#: timezone.pm:202
-#, fuzzy, c-format
+#: timezone.pm:213
+#, c-format
msgid "North America"
-msgstr "দক্ষিন আফ্রিকা"
+msgstr ""
-#: timezone.pm:203
-#, fuzzy, c-format
+#: timezone.pm:214
+#, c-format
msgid "Oceania"
-msgstr "ম্যাসিডোনিয়া"
+msgstr ""
-#: timezone.pm:204
-#, fuzzy, c-format
+#: timezone.pm:215
+#, c-format
msgid "South America"
-msgstr "দক্ষিন আফ্রিকা"
+msgstr ""
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "হং কং"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "রুশ ফেডারেশন"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "যুগোস্লাভিয়া"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "এটা কি সঠিক?"
-# সাম
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "আপনি একটি ফাইল নির্বাচন করেছেন, ডিরেক্টরি নয়"
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "তথ্য"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -6930,270 +6825,9 @@ msgstr ""
msgid "Installation failed"
msgstr "ইনস্টলেশন ব্যর্থ হয়েছে"
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "অনুগ্রহপূর্বক লগ-আউট করুন ও তারপর Ctrl-Alt-BackSpace চাপুন"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "ক্র্যাকারগণকে স্বাগতম"
-
-#~ msgid "Poor"
-#~ msgstr "অপর্যাপ্ত"
-
-#~ msgid "High"
-#~ msgstr "উন্নত"
-
-#~ msgid "Higher"
-#~ msgstr "অধিকতর উন্নত"
+#~ msgid "You cannot install the bootloader on a %s partition\n"
+#~ msgstr "আপনি %s পার্টিশনে বুটলোডার ইনস্টল করতে পারবেননা\n"
-#~ msgid "Paranoid"
-#~ msgstr "মাত্রাতিরিক্ত"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "এই স্তরকে সতর্কতার সাথে ব্যবহার করতে হবে। এটি সিস্টেমের ব্যবহার সহজ করে "
-#~ "তুললেও, সিস্টেমের নিরাপত্তা\n"
-#~ "হ্রাস করে। ইন্টারনেটে বা অন্যান্য কম্পিউটারের সাথে যুক্ত সিস্টেমে এই স্তরে "
-#~ "নিরাপত্তা ব্যবহার করা উচিত্‍ নয়।\n"
-#~ "এক্ষেত্রে কোন পাসওয়ার্ড ব্যবহার করা হয় না।"
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr ""
-#~ "পাসওয়ার্ড ব্যবস্থা এখন সক্রিয় হলেও, কম্পিউটারটিকে নেটওয়ার্কের সাথে যুক্ত না করার "
-#~ "পরামর্শই দেওয়া যাচ্ছে।"
-
-#~ msgid ""
-#~ "There are already some restrictions, and more automatic checks are run "
-#~ "every night."
-#~ msgstr ""
-#~ "ইতিমধ্যেই কিছু সীমাবদ্ধতা আরোপ করা হয়েছে, এবং প্রতিরাতে স্বয়ংক্রিয়ভাবে আরো কিছু "
-#~ "পরীক্ষা চালানো হবে।"
-
-#~ msgid ""
-#~ "This is similar to the previous level, but the system is entirely closed "
-#~ "and security features are at their maximum."
-#~ msgstr ""
-#~ "এটি পূর্বতন স্তরের মতই, তবে সিস্টেমটি এখন সম্পূর্ণ রুদ্ধ এবং সর্বোচ্চ নিরাপত্তা স্তরে "
-#~ "রয়েছে।"
-
-#~ msgid "Use libsafe for servers"
-#~ msgstr "সার্ভারের জন্য libsafe ব্যবহার করো"
-
-#~ msgid ""
-#~ "A library which defends against buffer overflow and format string attacks."
-#~ msgstr "একটি লাইব্রেরি, যা বাফার ওভারফ্লো ও ফরমেট স্ট্রিং আক্রমণ প্রতিরোধ করে।"
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "LILO/grub ইনস্টলেশন"
-
-#~ msgid "Precise RAM size if needed (found %d MB)"
-#~ msgstr "যদি প্রয়োজন হয় যথাযথ RAM লাগবে (পাওয়া গেছে %d RAM)"
-
-#~ msgid "Give the ram size in MB"
-#~ msgstr "মেগাবাইটে র‌্যমের সাইজ প্রদান করুন"
-
-#~ msgid ""
-#~ "If you plan to use aboot, be careful to leave a free space (2048 sectors "
-#~ "is enough)\n"
-#~ "at the beginning of the disk"
-#~ msgstr ""
-#~ "আপনি যদি aboot ব্যবহার করার পরিকল্পনা করে থাকেন, তাহলে ডিষ্কের শুরুতে "
-#~ "সাবধানতার সাথে খালি\n"
-#~ "জায়গা ছেড়ে দিন (২০৪৮ সেক্টরই যথেষ্ট)"
-
-#~ msgid "Security level"
-#~ msgstr "নিরাপত্তা স্তর"
-
-#~ msgid "Expand Tree"
-#~ msgstr "ট্রী প্রসারিত করো"
-
-#~ msgid "Collapse Tree"
-#~ msgstr "ট্রী সংকীর্ন করো"
-
-#~ msgid "Toggle between flat and group sorted"
-#~ msgstr "ফ্ল্যাট এবং গ্রুপের শ্রেণীর মধ্যে পরিবর্তন করো"
-
-#~ msgid "Choose action"
-#~ msgstr "কার্য পছন্দ করুন"
-
-#~ msgid "Active Directory with SFU"
-#~ msgstr "SFU যুক্ত সক্রিয় ডিরেক্টরি"
-
-#~ msgid "Active Directory with Winbind"
-#~ msgstr "WinBind যুক্ত সক্রিয় ডিরেক্টরি"
-
-#~ msgid "Active Directory with SFU:"
-#~ msgstr "SFU যুক্ত সচল ডিরেক্টরি:"
-
-#~ msgid "Active Directory with Winbind:"
-#~ msgstr "Winbind যুক্ত সচল ডিরেক্টরি:"
-
-#~ msgid "Authentication LDAP"
-#~ msgstr "LDAP অনুমোদন"
-
-#~ msgid "TLS"
-#~ msgstr "TLS"
-
-#~ msgid "SSL"
-#~ msgstr "এসএসএল"
-
-#~ msgid "security layout (SASL/Kerberos)"
-#~ msgstr "নিরাপত্তা লে-আউট (SASL/Kerberos)"
-
-#~ msgid "Authentication Active Directory"
-#~ msgstr "নির্ভরযোগ্য সচল ডিরেক্টরি"
-
-#~ msgid "LDAP users database"
-#~ msgstr "LDAP ব্যবহারকারীদের ডাটাবেজ"
-
-#~ msgid "LDAP user allowed to browse the Active Directory"
-#~ msgstr "LDAP ব্যবহারকারী সচল ডিরেক্টরি ব্রাউজ করার অনুমতি দিয়েছে"
-
-#~ msgid "Authentication NIS"
-#~ msgstr "NIS অনুমোদন"
-
-#~ msgid ""
-#~ "For this to work for a W2K PDC, you will probably need to have the admin "
-#~ "run: C:\\>net localgroup \"Pre-Windows 2000 Compatible Access\" everyone /"
-#~ "add and reboot the server.\n"
-#~ "You will also need the username/password of a Domain Admin to join the "
-#~ "machine to the Windows(TM) domain.\n"
-#~ "If networking is not yet enabled, Drakx will attempt to join the domain "
-#~ "after the network setup step.\n"
-#~ "Should this setup fail for some reason and domain authentication is not "
-#~ "working, run 'smbpasswd -j DOMAIN -U USER%%PASSWORD' using your Windows"
-#~ "(tm) Domain, and Admin Username/Password, after system boot.\n"
-#~ "The command 'wbinfo -t' will test whether your authentication secrets are "
-#~ "good."
-#~ msgstr ""
-#~ "এটার জন্য W2K PDC কাজ করতে, আপনার সম্ভবত admin চালু করার প্রয়োজন হবে: C:"
-#~ "\\>net localgroup \"Pre-Windows 2000 Compatible Access\" সবাইকে /যুক্ত "
-#~ "করতে এবং সার্ভার রিবুট করতে হবে।\n"
-#~ "উইন্ডোজ(TM) ডোমেইনে যুক্ত হওয়ার জন্য আপনাকে ডোমেইন অ্যাডমিনের ব্যবহারকারীনাম/"
-#~ "পাসওয়ার্ডও দিতে হবে।\n"
-#~ "যদি নেটওয়ার্কিং এরই মধ্যে চালু না হয়ে থাকে, তাহলে নেটওয়ার্ক সেটআপ করার পর "
-#~ "Drakx ডোমেইনে যুক্ত হতেচেষ্টা করবে।\n"
-#~ "যদি কোন কারণে এইসেটআপ ব্যর্থ হয় এবং ডোমেইন অনুমোদন কাজ না করে, তাহলে আপনার "
-#~ "উইন্ডোজ(TM) ডোমেইনব্যবহার করতে 'smbpasswd -j DOMAIN -U USER%%PASSWORD' "
-#~ "চালান, এবং সিস্টেম বুট হবার পরঅ্যাডমিন ব্যবহারকারীনাম/পাসওয়ার্ড দিন।\n"
-#~ "'wbinfo -t' কমান্ডটি আপনার অনুমোদিত গোপনীয়তা ভাল কিনা পরীক্ষা করে দেখবে।"
-
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "অনুমোদিত উইন্ডোজ ডোমেইন"
-
-#~ msgid "Undo"
-#~ msgstr "পূর্বাবস্থা"
-
-#~ msgid "Save partition table"
-#~ msgstr "পার্টিশন টেবিল সংরক্ষিত করো"
-
-#~ msgid "Restore partition table"
-#~ msgstr "পার্টিশন টেবিল রিষ্টোর করো"
-
-#~ msgid ""
-#~ "The backup partition table has not the same size\n"
-#~ "Still continue?"
-#~ msgstr ""
-#~ "ব্যাকআপ পার্টিশন সমান সাইজের ছিলনা\n"
-#~ "এখনো এগুবো?"
-
-#~ msgid "Info: "
-#~ msgstr "তথ্য:"
-
-#~ msgid "Unknown driver"
-#~ msgstr "অপরিচিত ড্রাইভার"
-
-#~ msgid "Error reading file %s"
-#~ msgstr "%s ফাইল পড়াতে ত্রুটি"
-
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "%s ফাইল থেকে পুনরায় সংরক্ষণ করতে ব্যর্থ হয়েছে: %s"
-
-#~ msgid "Bad backup file"
-#~ msgstr "নষ্ট ব্যাকআপ ফাইল"
-
-#~ msgid "Error writing to file %s"
-#~ msgstr "%s ফাইলে লিখতে সমস্যা হয়েছে"
-
-#~ msgid "Error: The \"%s\" driver for your sound card is unlisted"
-#~ msgstr "ভুল: আপনার সাউন্ড কার্ডের \"%s\" ড্রাইভারটি তালিকায় নেই"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Journalised FS"
-#~ msgstr "FS জার্নালাইজ করা হয়েছে"
-
-#~ msgid "Starts the X Font Server (this is mandatory for Xorg to run)."
-#~ msgstr "এক্স ফন্ট সার্ভার চালু করে (Xorg চালানোর জন্য এটি বাধ্যতামূলক)।"
-
-#~ msgid "Add user"
-#~ msgstr "ইউজার যোগ করো"
-
-#~ msgid "Accept user"
-#~ msgstr "ইউজার গ্রহন করো"
-
-# #msgstr "%2$s কে %1$s ফরম্যাট করা ব্যর্থ হয়েছে"
#, fuzzy
-#~ msgid ""
-#~ "Do not update directory inode access times on this filesystem\n"
-#~ "(e.g, for faster access on the news spool to speed up news servers)."
-#~ msgstr ""
-#~ "এই ফাইল সিস্টেমে inode প্রবেশ সময় আপডেট করবেন না\n"
-#~ "(যেমন,নিউজ সার্ভার দ্রুত করতে নিউজ স্পুলে দ্রুত প্রবেশ)।"
-
-# ;)
-#~ msgid "Rescue partition table"
-#~ msgstr "পার্টিশন টেবিলকে বাঁচাও"
-
-#~ msgid "Removable media automounting"
-#~ msgstr "রিমুভেবল মিডিয়া সয়ংক্রিয়ভাবে মাউন্ট করা হচ্ছে"
-
-#~ msgid "Trying to rescue partition table"
-#~ msgstr "পার্টিশন টেবিল বাঁচানো হচ্ছে"
-
-#~ msgid "Accept/Refuse bogus IPv4 error messages."
-#~ msgstr "ভূয়া IPv4 বার্তা গ্রহণে সম্মতি/অসম্মতি জানাও।"
-
-#~ msgid "Accept/Refuse broadcasted icmp echo."
-#~ msgstr "ব্রডকাস্ট আই.সি.এম.পি. ইকো গ্রহণে সম্মতি/অসম্মতি জানাও।"
-
-#~ msgid "Accept/Refuse icmp echo."
-#~ msgstr "আই.সি.এম.পি. ইকো গ্রহণে সম্মতি/অসম্মতি জানাও।"
-
-#~ msgid "Allow/Forbid remote root login."
-#~ msgstr "দূরবর্তী কম্পিউটার থেকে রুট অ্যাকাউন্টে লগ-ইন অনুমোদন/নিষিদ্ধ করো।"
-
-#~ msgid "Enable/Disable IP spoofing protection."
-#~ msgstr "আই.পি. স্পুফিং প্রতিরক্ষা ব্যবস্থা সক্রিয়/নিষ্ক্রিয় করো।"
-
-#~ msgid "Enable/Disable libsafe if libsafe is found on the system."
-#~ msgstr "সিস্টেমে libsafe পাওয়া গেলে তা সক্রিয়/নিষ্ক্রিয় করো।"
-
-#~ msgid "Enable/Disable the logging of IPv4 strange packets."
-#~ msgstr "IPv4-এর সন্দেহজনক প্যাকেট সম্পর্কে লগ লেখা সক্রিয়/নিষ্ক্রিয় করো।"
-
-# FIXME
-#~ msgid "Enable/Disable msec hourly security check."
-#~ msgstr "msec-এর ঘন্টা প্রতি নিরাপত্তা পরীক্ষা সক্রিয়/নিষ্ক্রিয় করো।"
-
-#~ msgid "Number of capture buffers:"
-#~ msgstr "ক্যাপচার বাফারের সংখ্যা:"
-
-#~ msgid "number of capture buffers for mmap'ed capture"
-#~ msgstr "mmap'ed ক্যাপচারের জন্য ক্যাপচার বাফারের সংখ্যা"
-
-#~ msgid "PLL setting:"
-#~ msgstr "PLL সেটিং:"
-
-#~ msgid "Radio support:"
-#~ msgstr "রেডিও সাপোর্ট:"
-
-#~ msgid " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
-#~ msgstr " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
+#~ msgid "You must have a Boot BIOS partition"
+#~ msgstr "আপনাকে অবশ্যই একটি রুট পার্টিশন নির্ধারণ করে দিতে হবে"
diff --git a/perl-install/share/po/br.po b/perl-install/share/po/br.po
index 99482a908..20b288617 100644
--- a/perl-install/share/po/br.po
+++ b/perl-install/share/po/br.po
@@ -1,35 +1,36 @@
# DrakX e Brezhoneg.
# Copyright (C) 1999-2005 Mandriva
-# Thierry Vignaud <tvignaud@mandriva.com>, 1999-2007
+# Thierry Vignaud <thierry.vignaud.com>, 1999-2007
# Jañ-Mai Drapier <jan-mai.drapier@mail.dotcom.fr>, 1999-2000
#
msgid ""
msgstr ""
"Project-Id-Version: DrakX 10.2\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2009-01-16 11:46+0100\n"
-"Last-Translator: Thierry Vignaud <tvignaud@mandriva.com>\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2018-11-27 15:58+0100\n"
+"Last-Translator: Thierry Vignaud <thierry.vignaud.com>\n"
"Language-Team: Brezhoneg <ofisk@wanadoo.fr>\n"
+"Language: br\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1;plural=0\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "Gortozit mar plij"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "O staliañ ar c'harger loc'hañ"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -40,301 +41,289 @@ msgid ""
"Assign a new Volume ID?"
msgstr ""
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr ""
"Staliadur ar c'harger loc'hañ zo sac'het. Degouezhet eo ar fazi a heul :"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
-#: any.pm:346
-#, fuzzy, c-format
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr "Staliadur ar c'harger loc'hañ"
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Pelec'h e vennit staliañ ar c'harger loc'hañ ?"
+
+#: any.pm:365
+#, c-format
msgid "First sector (MBR) of drive %s"
-msgstr "Rann gentañ ar bladenn (MBR)"
+msgstr "Rann gentañ (MBR) pladenn %s"
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "Rann gentañ ar bladenn (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
-msgstr "Rann gentañ ar parzhadur kentañ"
+msgstr "Rann gentañ ar barzhadur kentañ"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "War bladennig"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Tremen e-biou"
-#: any.pm:358
-#, c-format
-msgid "Bootloader Installation"
-msgstr "Staliadur ar c'harger loc'hañ"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Pelec'h e mennit staliañ ar c'harger loc'hañ ?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "Kefluniadur giz al loc'hañ"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr "Parzhadur reizhiad EFI"
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
-msgstr "Dibarzhoù pennañ ar c'harger loc'hañ"
+msgstr "Dibarzhioù pennañ ar c'harger loc'hañ"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "Karger loc'hañ"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "Karger loc'hañ da implijout"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Trobarzhell loc'hañ"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
-msgstr "Dibarzhoù pennañ"
+msgstr "Dibarzhioù pennañ"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "Gedvezh kent loc'hañ ar skeudenn dre ziouer"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "Bevaat ACPI"
-#: any.pm:411
-#, fuzzy, c-format
+#: any.pm:432
+#, c-format
msgid "Enable SMP"
-msgstr "Bevaat ACPI"
+msgstr "Bevaat SMP"
-#: any.pm:412
+#: any.pm:433
#, c-format
msgid "Enable APIC"
msgstr "Bevaat APIC"
-#: any.pm:413
+#: any.pm:435
#, c-format
msgid "Enable Local APIC"
msgstr "Bevaat APIC lec'hel"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Diogelroez"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Tremenger"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "An tremegerioù ne glot ket"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Klaskit adarre mar plij"
-#: any.pm:418
+#: any.pm:442
#, c-format
-msgid "You can not use a password with %s"
-msgstr "Gellout a rit implij ur ger tremen gant %s"
+msgid "You cannot use a password with %s"
+msgstr "Gellout a rit implij ur ger-tremen gant %s"
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Tremenger (adarre)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "Strishaat dibarzhoù al linenn urzhiañ"
+msgid "Bootloader Configuration"
+msgstr "Kefluniadur al loc'hañ"
+
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "Sac'het eo ar staliadur"
-#: any.pm:422
+#: any.pm:533
#, c-format
-msgid "restrict"
-msgstr "strishaat"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr "Staliañ pe bremanaat rEFInd er barzhadur ESP"
-#: any.pm:423
+#: any.pm:535 any.pm:794
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
-msgstr "Didalvout eo « Strishaat dibarzhoù al linenn urzhiañ » hep tremenger"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr "Staliañ e /EFI/BOOT (skor lem/laka pe hent-tro evit BIOSoù zo)"
-#: any.pm:425
+#: any.pm:537
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "Skarañ /tmp bep ma loc'her"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr ""
-#: any.pm:434
+#: any.pm:539
#, c-format
-msgid "Init Message"
+msgid "Background"
msgstr ""
-#: any.pm:436
+#: any.pm:544
#, c-format
-msgid "Open Firmware Delay"
+msgid "rEFInd banner"
msgstr ""
-#: any.pm:437
+#: any.pm:545
+#, fuzzy, c-format
+msgid "Mageia theme"
+msgstr "Mageia"
+
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Amzer-hont ar galon"
+msgid "Custom"
+msgstr "Personelañ"
+
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "N'eo ket lodañ"
-#: any.pm:438
+#: any.pm:565
#, c-format
-msgid "Enable CD Boot?"
+msgid "Scale to fit"
msgstr ""
-#: any.pm:439
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable OF Boot?"
-msgstr ""
+msgid "Label"
+msgstr "Skridennad"
-#: any.pm:440
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Default OS?"
-msgstr "RK dre ziouer ?"
+msgid "Append"
+msgstr "Ouzhpennañ en diwezh"
-#: any.pm:513
+#: any.pm:612 any.pm:624 any.pm:781
+#, c-format
+msgid "Video mode"
+msgstr "Mod video"
+
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "Skeudenn"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Gwrizienn"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "Ouzhpennañ en diwezh"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
-msgstr ""
+msgstr "Dibaboù Xen"
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Mod video"
+msgid "Requires password to boot"
+msgstr "Tremenger evit loc'hañ"
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "Profil rouedad"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "Skridennad"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Dre ziouer"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "N'eo ket video"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "Berzet eo ar skridennadoù goullo"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "Ret eo deoc'h kaout ur skeudenn kalon"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "Ret eo deoc'h kaout ur parzhadur gwrizienn"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "En implij eo ar skridennad-se endeo"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Pe seurt enmont a vennit ouzhpennañ ?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Reizhiadoù all (SunOS ...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Reizhiadoù all (MacOS ...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "Reizhiadoù all (Windows ...)"
-#: any.pm:621
-#, c-format
-msgid "Bootloader Configuration"
-msgstr "Kefluniadur al loc'hañ"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -343,270 +332,328 @@ msgstr ""
"Setu da heul an enmontoù liesseurt.\n"
"Gallout a rit ouzhpennañ lod pe gemmañ a re a zo."
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr "Arrabit cheñchet en ESP pe ar MBR"
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Hoc’h evezh"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr "Klask ar reizhiadoù all"
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr ""
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr ""
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "Aotreañ « su »"
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr ""
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr ""
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr ""
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(ouzhpennet %s endeo)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "Roit un anv arveriad mar plij"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
msgstr ""
-"An anv arveriad a zle bezañ ennañ lizherennoù munut, sifroù, `-' ha `_' "
-"hepken"
+"An anv arveriad a zle krogiñ gant ul lizherenn munut ha war he lerc'h "
+"lizherennoù munut, sifroù, `-' ha `_' hepken"
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "Re hir eo an anv arveriad-se"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "En implij eo an anv arveriad-se endeo"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "ID an arveriad"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "ID ar strollad"
-#: any.pm:817
+#: any.pm:1086
#, c-format
msgid "%s must be a number"
-msgstr "red eo da bezañ un niver %s"
+msgstr "ret eo da %s bezañ un niver"
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
+msgid "%s should be above 1000. Accept anyway?"
msgstr ""
-#: any.pm:822
+#: any.pm:1091
#, c-format
msgid "User management"
msgstr "Merañ an arveriaded"
-#: any.pm:828 authentication.pm:237
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr ""
+
+#: any.pm:1099 authentication.pm:236
#, c-format
msgid "Set administrator (root) password"
msgstr "Termeniñ tremenger ar merour (root)"
-#: any.pm:833
+#: any.pm:1105
#, c-format
msgid "Enter a user"
msgstr "Skrivit anv un arveriad"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Arlun"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Anv gwirion"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "Anv ereañ"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Shell"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr "Stroladoù ouzhpenn :"
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
msgstr "Gortozit mar plij, emaon oc'h ouzhpennañ ur media ..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "Emereañ"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
-"Kefluniañ ho urzhiataer evit lañsañ X ent emgefreek gant un arveriad a "
-"c'hellañ."
+"Gallout a ran kefluniañ hoc’h urzhiataer evit lañsañ X ent emgefreek gant un "
+"arveriad."
-#: any.pm:916
+#: any.pm:1251
#, c-format
msgid "Use this feature"
msgstr "Implij an arc'hwel-mañ"
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Dibabit an arveriad dre ziouer :"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "Dibabit ar merour prenestrer da seveniñ :"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
-msgstr "Cheñchamentoù"
+msgstr "Cheñchamantoù"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Serriñ"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Emglev an aotre"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Kuitaat"
-#: any.pm:1017
+#: any.pm:1343
#, c-format
msgid "Do you accept this license ?"
msgstr "Hag e plij an aotre-mañ deoc'h ?"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Plijout a ra din"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Ne blij ket din"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "Dibabit ar yezh da implijout, mar plij"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
-msgstr "Gallout a rit dibab yezhoù all hag a vo hegerz goude staliañ"
+msgstr ""
+"%s a c'hell bezañ implijet gant meur a yezh. Gallout a rit dibab\n"
+" yezhoù all hag a vo hegerz goude staliañ (ur wech e vo bet adloc'het\n"
+" ar reizhiad)"
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr "Liesyezh"
+
+#: any.pm:1402
#, c-format
-msgid "Multi languages"
-msgstr "Meur a yezh"
+msgid "Select Additional Languages"
+msgstr "Dibab yezhoù ouzhpenn"
-#: any.pm:1087 any.pm:1119
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr "Kodadur kozh (n'eo ket UTF-8)"
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "An holl yezhoù"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "Dibab ho yezh"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "Bro / Rannvro"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
-msgstr "Dibabit hor bro, mar plij"
+msgstr "Dibabit ho pro, mar plij"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "Setu eo listenn leun ar broioù holl"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "Broioù all"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
-msgstr "Barek"
+msgstr "Barrek"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr "Hentenn enkas :"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Hini ebet"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "N'eo ket lodañ"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
-msgstr "Aotreiñ pep arveriad"
-
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Personelañ"
+msgstr "Aotreañ pep arveriad"
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -616,90 +663,145 @@ msgid ""
"\"Custom\" permit a per-user granularity.\n"
msgstr ""
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
"Windows."
msgstr ""
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
"systems."
msgstr ""
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
msgstr ""
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "Lañsañ userdrake"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
"You can use userdrake to add a user to this group."
msgstr ""
-#: any.pm:1421
+#: any.pm:1768
#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
msgstr ""
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr ""
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "Takad-eur"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Pe seurt a vo ho takad-eur ?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
-msgstr "Kefluniadur an deizid, an eurier hag an amzer"
+msgstr "Kefluniadur an deiziad, an eurier hag an amzer"
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
-msgstr "Peseurt hini zo an amzer gwelloc'h ?"
+msgstr "Peseurt hini zo an amzer welloc'h ?"
-#: any.pm:1490
+#: any.pm:1837
#, c-format
msgid "%s (hardware clock set to UTC)"
-msgstr "%s (war UTC eo lakaet ho eurier periantel)"
+msgstr "%s (war UTC eo lakaet hoc’h eurier periantel)"
-#: any.pm:1491
+#: any.pm:1838
#, c-format
msgid "%s (hardware clock set to local time)"
-msgstr "%s (war GMT eo lakaet ho eurier periantel)"
+msgstr "%s (war GMT eo lakaet hoc’h eurier periantel)"
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "Servijer NTP"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr ""
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "URL ar melezour ?"
+
+#: any.pm:1880
+#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "Dao en deus an URL kregiñ gant ftp:// pe http://"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr "O taremprediñ lec'hienn %s evit kaout roll ar melezourioù hegerz ..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Dibabit ur melezour da dapout ar pakadoù diwarnañ"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Nullañ"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "Dinoiñ dre ardivink"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "Spisait dibarzhioù"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "Karger loc'hañ"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -720,7 +822,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr "Smart Card"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Domani Windows"
@@ -728,297 +830,297 @@ msgstr "Domani Windows"
#: authentication.pm:29
#, c-format
msgid "Kerberos 5"
-msgstr ""
+msgstr "Kerberos 5"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "Restr lec'hel :"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP :"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
"consolidates certain types of information within your organization."
msgstr ""
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS :"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
"Service domain with a common password and group file."
msgstr ""
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Domani Windows :"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
"a Windows domain."
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
-msgstr ""
+msgstr "Kerberos 5 :"
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
-msgstr ""
+msgstr " "
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr ""
+msgstr "Digemer mat er skoazeller dilesadur"
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "Servijer LDAP"
-#: authentication.pm:113 authentication.pm:168
+#: authentication.pm:112 authentication.pm:167
#, c-format
msgid "Base dn"
-msgstr ""
+msgstr "Gwrizienn dn"
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
-msgstr ""
+msgstr "Adtapout ar wrizienn DN "
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr ""
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr ""
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr ""
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
msgstr ""
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
-msgstr ""
+msgstr " "
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
-msgstr ""
+msgstr "DN kevreañ "
-#: authentication.pm:123 authentication.pm:175
-#, fuzzy, c-format
+#: authentication.pm:122 authentication.pm:174
+#, c-format
msgid "Bind Password "
-msgstr "Tremenger"
+msgstr "Tremenger Bind"
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr ""
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "Tremenger"
+msgstr "Stlennvon an tremengerioù"
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "ID ar strollad"
+msgstr "Stlennvon ar strolladoù"
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
-msgstr ""
+msgstr "Stlennvon shadow"
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "Anv gwirion"
+msgstr "Rouantelezh "
-#: authentication.pm:148
+#: authentication.pm:147
#, c-format
msgid "KDCs Servers"
msgstr "Servijered KDC"
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr ""
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr ""
-#: authentication.pm:156
-#, fuzzy, c-format
+#: authentication.pm:155
+#, c-format
msgid "Use local file for users information"
-msgstr "Implijit libsafe evit ar servijerien"
+msgstr "Implijit restroù lec'hel evit titouroù diwar-benn an arveriaded"
-#: authentication.pm:157
-#, fuzzy, c-format
-msgid "Use Ldap for users information"
-msgstr "Titouroù ar bladenn"
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr "Implij LDAP evit titouroù diwar-benn an arveriaded"
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr ""
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "Domani NIS"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "Servijer NIS"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "Domani"
+msgstr "Seurt domani"
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
-msgstr ""
+msgstr "Rouantelezh AD"
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "Domani NIS"
+msgstr "Domani DNS"
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "Servijered KDC"
+msgstr "Servijer DC"
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Dilesadur"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "Hentenn dilesadur"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Tremenger ebet"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr "Re eeun eo an tremenger-se (%d arouezenn zo ret d'an nebeutañ)"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
-msgstr "N'hellañ ket implijout ar skignañ hep domani NIS"
+msgid "Cannot use broadcast with no NIS domain"
+msgstr "N'hell ket bet implijet ar skignañ hep domani NIS"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Dibabit ar restr"
-#: authentication.pm:897
+#: authentication.pm:882
#, c-format
msgid "Domain Windows for authentication : "
msgstr ""
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "Anv merour an domani"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Tremenger merour an domani"
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1033,109 +1135,115 @@ msgstr ""
"gortozit \n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO gant meuziad skrid"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 gant meuziad grafek"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 gant meuziad skrid"
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr "GRUB gant meuziad grafek"
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr "GRUB gant meuziad skrid"
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr "rEFInd gant meuziad grafek"
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
-msgstr "SILO"
+msgid "U-Boot/Extlinux with text menu"
+msgstr "U-Boot/Extlinux gant meuziad skrid"
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "n'eus ket a-walc'h egor e /boot"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "Ne mennit ket staliañ ar c'harger loc'hañ war ur parzhadur %s\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
"renumbered"
msgstr ""
-"Red eo da vremañat kefluniadur ho karger loc'hañ peogwir e oa cheñchet niver "
+"Ret eo bremanaat kefluniadur ho karger loc'hañ peogwir e oa cheñchet niver "
"ar parzhiadurioù"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
-"N'hell ket bet staliet ar c'harger loc'hañ. Dao eo deoc'h loc'hañ gant ar "
+"N'hell ket bet staliet ar c'harger loc'hañ. Dao eo deoc'h loc'hañ gant ar "
"bladenn skoazell ha dibab « %s »"
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "Staliañ ar c'harger loc'hañ c'hoazh"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "B"
msgstr "O"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "Ko"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "Mo"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "Go"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "To"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr "%02de%02d"
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d munutennoù"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 munutenn"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d eilenn"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr "mankout a ra an urzhiad %s"
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1150,12 +1258,12 @@ msgstr ""
msgid "New"
msgstr "Nevez"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Divarc'hañ"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Marc'hañ"
@@ -1165,43 +1273,44 @@ msgstr "Marc'hañ"
msgid "Server"
msgstr "Servijer"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Poent marc'hañ"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
-msgstr "Dibarzhoù"
+msgstr "Dibarzhioù"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Dilemel"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Graet"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Fazi"
@@ -1214,82 +1323,73 @@ msgstr "Skrivit URL ar servijer WebDAV mar plij"
#: diskdrake/dav.pm:90
#, c-format
msgid "The URL must begin with http:// or https://"
-msgstr "Ezhom en deus an URL da gregiñ gant http:// pe https://"
-
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Ho evezh"
+msgstr "Ezhomm en deus an URL da gregiñ gant http:// pe https://"
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Mennout a rit klikit ouzh an nozel-se ?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr "Ha fellout a ra deoc'h da vat lemel ar poent marc'hañ-mañ ?"
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Servijer : "
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Poent marc'hañ : "
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
-msgstr "Dibarzhoù : %s"
+msgstr "Dibarzhioù : %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "O parzhañ"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Lennit aketus"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "Gwarezit ho roadoù da gentañ mar plij"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Kuitaat"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Kenderc'hel"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Skoazell"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1300,141 +1400,132 @@ msgstr ""
"Aliañ a ran ouzoc'h adventañ ar parzhadur-se\n"
"(klikit warni, da c'houde klikit ouzh \"Adventañ\")"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "Klikit ouzh ur parzhadur mar plij"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Munudoù"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
-msgstr "N'eo ket pladenn ebet"
+msgid "No hard disk drives found"
+msgstr "N'eus ket pladenn kavet ebet"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Anavez"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432
#, c-format
-msgid "Ext3"
-msgstr "Ext3"
+msgid "Ext4"
+msgstr "Ext4"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "XFS"
msgstr "XFS"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Disloañ"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "All"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Goullo"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Seurt ar reizhiadoù restroù :"
-#: diskdrake/hd_gtk.pm:407
+#: diskdrake/hd_gtk.pm:461
#, c-format
msgid "This partition is already empty"
msgstr "Goullo eo ar barzhadur-se c'hoazh"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "Implijit « Divarc'hañ » da gentañ"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``%s'' instead (in expert mode)"
msgstr "Grit kentoc'h gant « %s » (er mod mailh)"
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Seurt"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Dibabit ur parzhadur all"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Dibabit ur parzhadur"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "Mui"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
#, c-format
msgid "Confirmation"
msgstr "Kadarnadur"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Kenderc'hel evelato ?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Kuitaat hep enrollañ"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Kuitaat hep skrivañ an daolenn barzhañ ?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "Mennout a rit skrivañ kemmoù /etc/fstab"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr "Ret eo deoc'h adloc'hañ evit ma talvezo kemmoù an daolenn barzhañ"
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1442,42 +1533,42 @@ msgid ""
"Quit anyway?"
msgstr ""
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Skarañ an holl"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Ac'hubiñ ent emgefreek"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "Tremen er mod boas"
+msgid "Normal mode"
+msgstr "Mod boas"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "Tremen er mod mailh"
+msgid "Expert mode"
+msgstr "Mod mailh"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "Titouroù ar bladenn"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "Ac'hubet eo an holl barzhadurioù kentañ renk"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
-msgstr "N'hellan ouzpennañ parzhadur ebet ken"
+msgid "I cannot add any more partitions"
+msgstr "N'hellan ouzhpennañ parzhadur ebet ken"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
@@ -1486,294 +1577,334 @@ msgstr ""
"Evit kaout muioc'h a barzhadurioù, lamit unan evit ma c'hellot krouiñ ur "
"parzhadur astennet mar plij"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Adkargañ an daolenn barzhañ"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Titouroù gant munudoù"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
-msgstr ""
+msgstr "Gwel"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Adventañ"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Furmadiñ"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Ouzhpennañ da RAID"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Ouzhpennañ da LVM"
-#: diskdrake/interactive.pm:410
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:417
+#, c-format
msgid "Use"
-msgstr "ID an arveriad"
+msgstr "Implij"
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Dilemel"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Lemel diwar RAID"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Lemel diwar LVM"
-#: diskdrake/interactive.pm:415
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:422
+#, c-format
msgid "Remove from dm"
-msgstr "Lemel diwar LVM"
+msgstr "Lemel diwar dm"
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "Kemmañ RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Implij da saveteiñ"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Krouiñ"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Dilec'hiañ retroù er parzhadur nevez"
+msgstr "Sac'het en ur marc'hañ ar parzhadur"
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Krouiñ ur parzhadur nevez"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Rann kregiñ : "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Ment e Mo : "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Seurt ar reizhiad restroù : "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Dibarzh : "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
-msgstr "Anv al levrenn poellek "
+msgstr "Anv al levrenn boellek "
+
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr "Enrinegañ ar barzhadur"
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr "Alc'hwez enrinegadur"
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Alc'hwez enrinegadur (adarre)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "An alc'hwezioù enrinegadur ne glot ket"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr "Mankout a ra an alc'hwez enrinegadur"
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "Lemel ar restr saveteiñ ?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr ""
"Goude kemmañ seurt ar parzhadur %s, holl roadoù ar parzhadur-se a vo kollet"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Kemmañ seurt ar parzhadur"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Pe seurt reizhiad restroù a vennit ?"
-#: diskdrake/interactive.pm:594
+#: diskdrake/interactive.pm:650
#, c-format
msgid "Switching from %s to %s"
msgstr "Gwintañ eus %s da %s"
-#: diskdrake/interactive.pm:624
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:685
+#, c-format
msgid "Set volume label"
-msgstr "Pe anv levrenn ?"
+msgstr "Termeniñ an anv levrenn"
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr "Pe anv levrenn ?"
-#: diskdrake/interactive.pm:630
+#: diskdrake/interactive.pm:691
#, c-format
msgid "Label:"
msgstr "Skridennad :"
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
-msgstr "Pelec'h e mennit marc'hañ ar restr saveteiñ %s ?"
+msgstr "Pelec'h e vennit marc'hañ ar restr saveteiñ %s ?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
-msgstr "Pelec'h e mennit marc'hañ an drobarzhell %s ?"
+msgstr "Pelec'h e vennit marc'hañ an drobarzhell %s ?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"N'hellan ket dizober ar poent marc'hañ dre m'eo implijet ar parzhadur-se\n"
"evit saveteiñ. Lamit ar saveteiñ da gentañ"
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
-msgstr "Pelec'h e mennit marc'hañ an %s ?"
+msgstr "Pelec'h e vennit marc'hañ an %s ?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "Oc'h adventañ"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "O jediñ bevennoù ar reizhiad restroù FAT"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "N'hellan ket adventañ ar parzhadur-se"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "Mat e vije gwareziñ holl roadoù ar parzhadur-se"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr "Goude adventañ ar parzhadur %s e vo kollet holl roadoù ar parzhadur-se"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Dibabit ar ment nevez"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "Ment nevez e Mo : "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr "Ment izelañ : %s Mo"
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr "Ment uhelañ : %s Mo"
-#: diskdrake/interactive.pm:805
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Alc'hwez enrinegadur ar reizhiad restroù"
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "Dibab hoc'h alc'hwez enrinegadur ar reizhiad restroù"
+msgstr "Skrivit hoc'h alc'hwez enrinegadur ar reizhiad restroù"
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "Alc'hwez enrinegadur"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
-msgstr ""
+msgstr "N'eo ket mat an alc'hwez"
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Dibabit da be RAID ouzhpennañ"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "nevez"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Dibabit da be LVM ouzhpennañ"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr "Anv LVM"
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr "Skrivit un anv evit ar strollad levrenn LVM nevez"
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr "« %s » zo endeo"
+
+#: diskdrake/interactive.pm:1058
#, c-format
-msgid "LVM name?"
-msgstr "Anv LVM ?"
+msgid "Setting up LVM"
+msgstr "O kefluniañ LVM"
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
@@ -1783,118 +1914,118 @@ msgstr ""
"Mennout a rit dilec'hiañ al levrennioù fizikel implijet deus al levrenn-mañ "
"war unan all ?"
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
-msgstr "O fiñval al levrennioù fizikel"
+msgstr "O fiñval al levrennoù fizikel"
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "N'heller ket implijout ar parzhadur-mañ evit saveteiñ"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Saveteiñ"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Anv ar restr saveteiñ : "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
-msgstr "Roit ur anv restr"
+msgstr "Roit un anv restr"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr "Restr implijet gant ur saveteiñ all endeo, dibabit unan all"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Ar restr zo endeo. E implijout ?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
-msgstr "Dibarzhoù marc'hañ"
+msgstr "Dibarzhioù marc'hañ"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "A bep sort"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "trobarzhell"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "live"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
msgstr "ment diaoz (KiO)"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "Bezit war evezh : arvarus eo an obererezh-mañ."
-#: diskdrake/interactive.pm:1109
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1250
+#, c-format
msgid "Partitioning Type"
-msgstr "O parzhañ"
+msgstr "Doare parzhañ"
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "Peseurt eo ar parzhadur ?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr "Ret e vo deoc'h adloc'hañ a-raok ma talvezo ar c'hemm"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "War-nes bezañ skrivet war bladenn eo taolenn barzhañ an ardivink %s"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "O furmadiñ ar parzhadur %s"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr ""
"Goude furmadiñ ar parzhadur %s, holl roadoù ar parzhadur-se a vo kollet"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "Gwiriañ ar bloc'hoù siek ?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
-msgstr "Dilec'hiañ retroù er parzhadur nevez"
+msgstr "Dilec'hiañ restroù er parzhadur nevez"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Kuzhat ar restroù"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1905,128 +2036,127 @@ msgid ""
"the contents of the mounted partition)"
msgstr ""
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
-msgstr "O tilec'hiañ retroù er parzhadur nevez"
+msgstr "O tilec'hiañ restroù er parzhadur nevez"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "Adskrivañ %s"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "Lemel %s"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "ar parzhadur %s 'zo %s bremañ"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr "Kemmet eo niverennoù ar parzhadurioù : "
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Trobarzhell : "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr "Anv al levrenn : "
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr "UUID :"
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "Lizher ar bladenn DOS : %s (diwar varteze hepken)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Seurt : "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Anv : "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "O kregiñ : rann %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr "Ment: %s (%s%% eus ar bladenn)"
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Ment : %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s rann"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "Kranenn %d da %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr "Niver a levrennioù poellek : %d\n"
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Furmadet\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "N'eo ket furmadet\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Marc'het\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1446
+#, c-format
msgid "Encrypted"
-msgstr "Alc'hwez enrinegadur"
+msgstr "Enrineget"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
-msgstr ""
+msgstr " (marv)"
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2035,7 +2165,7 @@ msgstr ""
"Restr(où) saveteiñ :\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2044,27 +2174,27 @@ msgstr ""
"Parzhadur loc'het dre ziouer\n"
" (evit loc'hañ MS-DOS, ket evit lilo)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Live %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
msgstr "Ment diaoz %d KiO\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "Pladennoù RAID %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Anv ar restr saveteiñ : %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2073,7 +2203,7 @@ msgid ""
"probably leave it alone.\n"
msgstr ""
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2082,68 +2212,63 @@ msgid ""
"dual-booting your system.\n"
msgstr ""
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
-msgstr ""
+msgstr "Egor dieub war %s (%s)"
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Lenn-hepken"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Ment : %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Mentoniezh : %s kranenn, %s penn, %s rann\n"
-#: diskdrake/interactive.pm:1351
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Anv : "
+
+#: diskdrake/interactive.pm:1492
#, c-format
msgid "Medium type: "
msgstr "Seurt ar vedium : "
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "Pladennoù LVM %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Seurt taolenn barzhañ : %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "war kanol %d Nn %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "Dibab hoc'h alc'hwez enrinegadur ar reizhiad restroù"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
"Re eeun eo an alc'hwez enrinegadur-se (%d arouezenn zo ret d'an nebeutañ)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "An alc'hwezoù enrinegadur ne glot ket"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Alc'hwez enrinegadur (adarre)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Algoritm enrinegadur"
@@ -2153,17 +2278,9 @@ msgstr "Algoritm enrinegadur"
msgid "Change type"
msgstr "Kemmañ seurt"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Nullañ"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr ""
"N'hellan ket ereañ gant an anv arveriad %s (n'eo ket mat an tremenger ?)"
@@ -2186,7 +2303,8 @@ msgstr "Unan all"
#, c-format
msgid ""
"Please enter your username, password and domain name to access this host."
-msgstr "Roit ho anv arveriad, ho tremenger hag ho anv domain evit an ostiz-se"
+msgstr ""
+"Roit hoc’h anv arveriad, ho tremenger hag hoc’h anv domani evit an ostiz-se"
#: diskdrake/smbnfs_gtk.pm:180
#, c-format
@@ -2205,75 +2323,82 @@ msgstr "Klask servijerioù"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "Klask servijerioù nevez"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "Ar pakad %s zo war-nes bezañ staliet. Mennout a rit staliañ anezhañ ?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr "N'eo ket evit staliañ ar pakad %s !"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "Mankout a ra ar pakad ret %s"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Ar pakadoù a-heul zo war-nes bezañ staliet :\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "O staliañ pakadoù ..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "Lemel pakadoù ..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
"filesystems. Please check your hardware for the cause of this problem"
msgstr ""
"C'hoarvezet ez eus ur fazi - n'eus bet kavet trobarzhell reizh ebet a-benn "
-"krouiñ reizhiadoù restroù nevez warni. Gwiriit abeg ar gudenn-mañ en ho "
+"krouiñ reizhiadoù restroù nevez warni. Gwiriit abeg ar gudenn-mañ en hoc’h "
"ardivinkaj mar plij "
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
+#, c-format
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "Ret eo deoc'h kaout ur parzhadur ESP FAT32 marc'het war /boot/EFI"
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "Ret eo deoc'h kaout ur parzhadur FAT marc'het war /boot/efi"
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "O krouiñ hag o furmadiñ ar restr saveteiñ %s"
-#: fs/format.pm:119
-#, fuzzy, c-format
+#: fs/format.pm:202
+#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "N'ouzon ket penaos furmadiñ %s er seurt %s"
+msgstr "N'ouzon ket penaos mod reiñ un anv da %s gant ar seurt %s"
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "furmadiñ ar seurt %s eus %s zo sac'het"
+msgstr "lakkat ur skridennad war %s zo sac'het, hag-eñ eo furmadet ?"
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "N'ouzon ket penaos furmadiñ %s er seurt %s"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "furmadiñ ar seurt %s eus %s zo sac'het"
@@ -2288,30 +2413,30 @@ msgstr "Marc'hañ kelc'hiek %s\n"
msgid "Mounting partition %s"
msgstr "O zivarc'hañ ar parzhadur %s"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "sac'het eo mac'hañ ar barzhadur %s er renkell %s"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "O wiriañ %s"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "fazi en ur zivarc'hañ %s : %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "Bevañ ar barzhadur disloañ %s"
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
-msgstr "Implijit ur reizhiad restroù enrineget"
+msgid "Enable POSIX Access Control Lists"
+msgstr ""
#: fs/mount_options.pm:116
#, c-format
@@ -2326,7 +2451,7 @@ msgstr ""
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
@@ -2341,19 +2466,19 @@ msgstr ""
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr ""
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
@@ -2367,23 +2492,23 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
-msgstr "Mountañ ar reizhiad restroù en el lenn-hepken."
+msgid "Mount the filesystem read-only."
+msgstr "Marc'hañ ar reizhiad restroù e mod lenn-hepken."
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr ""
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr ""
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
-msgstr "Moaein zo da varc'hañ ar reiziad restroù gant un arveriad."
+msgid "Allow an ordinary user to mount the filesystem."
+msgstr "Moaien zo da varc'hañ ar reizhiad restroù gant un arveriad."
#: fs/mount_options.pm:147
#, c-format
@@ -2405,56 +2530,56 @@ msgstr ""
msgid "Give read-only access to ordinary users"
msgstr ""
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Poent marc'hañ doubl %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "Parzhadur ebet"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "O klask ar parzhadurioù evit kavout poentoù marc'hañ"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Dibabit ar poentoù marc'hañ"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Dibabit ar parzhadurioù da furmadiñ"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
"you can lose data)"
msgstr ""
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr ""
"N'eus ket a-walc'h a zisloañ evit peurstaliañ, kreskit anezhañ mar plij"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"Ret eo deoc'h kaout ur parzhadur gwrizienn.\n"
"Evit se, krouit ur parzhadur (pe glikit ouzh unan a zo c'hoazh).\n"
"Da c'houde dibabit an ober « Poent marc'hañ » ha lakait anezhañ da `/'"
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2463,92 +2588,57 @@ msgid ""
msgstr ""
"N'eus parzhadur disloañ ebet.\n"
"\n"
-"Fellout a ra deoc'h mont war raok evelato ?"
+"Fellout a ra deoc'h mont war-raok evelato ?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "Implij an egor dieub"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "N'eus ket a-walc'h egor dieub evit parzhadurioù nevez"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
-msgstr "Implijit ar parzhaduroù a zo dija"
+msgstr "Implijit ar parzhadurioù a zo dija"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "N'eus parzhadur da implij ebet"
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Implij ar barzhadur Microsoft Windows® evit saveteiñ"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Pe barzhadur a vennit implijout evit lakaat Linux4Win ?"
-
-#: fs/partitioning_wizard.pm:108
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Choose the sizes"
-msgstr "Dibabit ar mentoù"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "Ment ar barzhadur kentañ e Mo : "
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Ment ar barzhadur disloañ e Mo : "
-
-#: fs/partitioning_wizard.pm:119
-#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-"N'eus ket ur barzhadur FAT evit saveteiñ (n'eus ket a-walc'h egor dieub)"
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "O jediñ ment ar barzhadur Microsoft Windows®"
-#: fs/partitioning_wizard.pm:127
+#: fs/partitioning_wizard.pm:201
#, c-format
msgid "Use the free space on a Microsoft Windows® partition"
msgstr "Implijit an egor dieub war ar barzhadur Microsoft Windows®"
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Pe seurt parzhadur a vennit furmadiñ ?"
-#: fs/partitioning_wizard.pm:143
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
msgstr ""
-"N'eus ket moaien d'adenvañ ho parzhadur gant an adventer FAT,\n"
-"degouezhet ez eus ar fazi a-heul : %s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "O jediñ ment ar barzhadur Microsoft Windows®"
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:215
#, c-format
-msgid ""
-"Your Microsoft Windows® partition is too fragmented. Please reboot your "
-"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+msgid "Failed to find the partition to resize (%d choices)"
msgstr ""
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2559,15 +2649,15 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
"\n"
"When sure, press %s."
msgstr ""
-"HO EVEZH !\n"
+"HOC’H EVEZH !\n"
"\n"
"\n"
"Ezhomm en deus DrakX adventañ ho parzhadur Windows bremañ.\n"
@@ -2575,90 +2665,84 @@ msgstr ""
"\n"
"Bezit war evezh : arvarus eo an obererezh-se. Ma n'hoc'h eus ket graet "
"c'hoazh, gwelloc'h e vije deoc'h seveniñ da gentañ scandisk (ha diouzh ret "
-"seveniñ defrag) war arparzhadur-se, ha gwareziñ ho roadoù.\n"
+"seveniñ defrag) war ar parzhadur-se, ha gwareziñ ho roadoù.\n"
"\n"
"\n"
"Pa vezit sur, gwaskit « %s »"
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "A heul"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Partitionning"
msgstr "O parzhañ"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr ""
-"Peseurt ment e mennit chom evit Microsoft Windows® war ar barzhadur %s ?"
+"Peseurt ment e vennit chom evit Microsoft Windows® war ar barzhadur %s ?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Ment"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "Oc'h adventañ ar barzhadur Microsoft Windows®"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "Fazi en un adventañ ar barzhadur FAT : %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr "N'eus ket ur barzhadur FAT d'adventañ (n'eus ket a-walc'h egor dieub)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Lemel Microsoft Windows®"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Erase and use entire disk"
msgstr "Chetañ hag implij an holl planedenn"
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
msgstr ""
-"Meur a bladenn oc'h eus. Pehini oc'h eus c'hoant da implij evit staliñ "
-"Linux ?"
+"Meur a bladenn hoc’h eus. Pehini hoc’h eus c'hoant da implij evit staliañ ?"
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr ""
"Ar parzhadurioù HOLL o vezañ hag e vo kollet holl roadoù war ar bladenn %s"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
-msgstr "Parzhaduroù diouzoc'h"
+msgstr "Parzhadurioù diouzoc'h"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Implijit fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2667,55 +2751,70 @@ msgstr ""
"Gallout a rit bremañ parzhañ ho pladenn galet %s.\n"
"Pa 'z eo graet, na zisoñjit ket enrollañ dre implijout `w'"
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
#, c-format
-msgid "I can not find any room for installing"
+msgid "Ext2/3/4"
+msgstr "Ext2/3/4"
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
+#, c-format
+msgid "I cannot find any room for installing"
msgstr "N'hellan ket kavout plas da staliañ"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "Kinnig eo deoc'h gant ar skoazeller parzhadur DrakX :"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr "Setu ar pezh a zo war ho pladenn "
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Fazi en ur parzhañ : %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
+#, c-format
+msgid "You cannot use JFS for partitions smaller than 16MB"
+msgstr "N'hellit ket implij JFS evit ar parzhadurioù bihanoc'h evel 16Mo"
+
+#: fs/type.pm:432
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
-msgstr "N'hellit ket implij JFS evit ar parzhadurioù bihanioc'h evel 16Mo"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
+msgstr "N'hellit ket implij ReiserFS evit ar parzhadurioù bihanoc'h evel 32Mo"
-#: fs/type.pm:389
+#: fs/type.pm:433
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
-msgstr "N'hellit ket implij ReiserFS evit ar parzhadurioù bihanioc'h evel 32Mo"
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr "N'hellit ket implij BTRFS evit ar parzhadurioù bihanoc'h evel 256Mo"
-#: fsedit.pm:24
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "eeun"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "gant /usr"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "servijer"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr ""
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2723,89 +2822,69 @@ msgid ""
"\n"
"Do you agree to lose all the partitions?\n"
msgstr ""
-"N'hellañ ket lenn an taolenn barzhañ an drobarzhell %s, re vrein eo "
+"N'hellañ ket lenn an daolenn barzhañ an drobarzhell %s, re vrein eo "
"evidon :\n"
"(\n"
"Klask a rin kenderc'hel en ur ziverkañ ar parzhadurioù siek (Kollet e vo "
"HOLL ROADOÙ ar bladenn-se).\n"
-"The other solution is to not allow DrakX to modify the partition table.\n"
+"Mod all ez tu da nac'han DrakX da cheñch an daolenn barzhañ.\n"
"(%s eo ar fazi)\n"
"\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Poentoù marc'hañ a rank kregiñ gant /"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr ""
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Bez' ez eus ur parzhadur e boent marc'hañ %s endeo\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"Choizh o'ch eus oc'h implij RAID evit gwrizienn (/).\n"
+"Choazh o'ch eus oc'h implij ur reizhiad restroù enrineget evit gwrizienn "
+"(/).\n"
"N'eus ket moaien da loc'hañ hep ur barzhadur /boot.\n"
-"Bezit sur oc'h eus ouzhpennet ur barzhadur /boot"
-
-#: fsedit.pm:437
-#, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr ""
-"Ne mennit ket implij al levrenn poellek LVM evit ar poent marc'hañ %s "
-"peogwir e vez implijet meur a levrenn fizikel gantañ"
+"Bezit sur hoc’h eus ouzhpennet ur barzhadur /boot"
-#: fsedit.pm:439
+#: fsedit.pm:478 fsedit.pm:489
#, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
+msgid "You cannot use an encrypted filesystem for mount point %s"
msgstr ""
-"Choizh o'ch eus oc'h implij LVM evit gwrizienn (/).\n"
-"N'eus ket moaien da loc'hañ gant /boot war meur a levrenn fizikel.\n"
-"Mat vije deoc'h krouiñ ur barzhadur loc'hañ da gentañ"
+"N'hell ket bet implijet ur reizhiad restroù enrineget evit ar poent marc'hañ "
+"%s"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
-msgstr "Red eo d'ar renkell-mañ da vezañ er reizhiad restroù gwrizienn"
+msgstr "Ret eo d'ar renkell-mañ da vezañ er reizhiad restroù gwrizienn"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
-"Red eo da implij ur gwir reizhiad restroù (ext2/ext3, reiserfs, xfs, pe jfs) "
+"Ret eo da implij ur gwir reizhiad restroù (ext2/3/4, reiserfs, xfs, pe jfs) "
"evit ar poent marc'hañ-mañ\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr ""
-"N'hell ket bet implijet ur reizhiad restroù enrineget evit ar poent marc'hañ "
-"%s"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
-msgstr ""
+msgstr "N'eus ket plas dieub a-walac'h"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "Netra d'ober"
@@ -2815,283 +2894,327 @@ msgstr "Netra d'ober"
msgid "SATA controllers"
msgstr "Kartennoù SATA"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "Kartennoù RAID"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "Kartennoù (E)IDE/ATA"
-#: harddrake/data.pm:92
+#: harddrake/data.pm:93
#, c-format
msgid "Card readers"
msgstr "Lenneroù kartennoù"
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Kartennoù Firewire"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "Kartennoù PCMCIA"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "Kartennoù SCSI"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "Kartennoù USB"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "Porzhioù USB"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "Kartennoù SMBus"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Pontoù ha kontrolleroù ar reizhiad"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Pladennig"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Pladenn"
-#: harddrake/data.pm:203
-#, fuzzy, c-format
+#: harddrake/data.pm:204
+#, c-format
msgid "USB Mass Storage Devices"
-msgstr "Trobarzhelloù kwelet USB"
+msgstr "Trobarzhelloù pladenn USB"
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "CDROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "Engraverioù CD/DVD"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "Bandenn"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "Kartennoù AGP"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Kartenn video"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr "Kartenn DVB"
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "Kartenn skinwel"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "Trobarzhelloù liesvedia all"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "Kartenn son"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "Webkam"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "Kewerierioù"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "Kartennoù ISDN"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr "Trobarzhelloù kwelet USB"
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr "Kartennoù radio"
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr "Kartennoù rouedad ATM"
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr "Kartennoù rouedad WAN"
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr "Trobarzhelloù Bluetooth"
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "Kartenn rouedad"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Modem"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "Kartennoù ADSL"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Memor"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Moullerez"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr "Kartennoù lanker-c'hoari"
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Lanker-c'hoari"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Stokellaoueg"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr "Tablezenn ha skramm stekiñ"
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Logodenn"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
-msgstr ""
+msgstr "Biometrezh"
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "UPS"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Eiltreser"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Anavez/All"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "kewerier # "
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, fuzzy, c-format
+msgid "Couldn't install the required packages"
+msgstr "N'eo ket evit staliañ ar pakad %s !"
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Gortozit mar plij, o lakaat ar c'hefluniadur"
+msgid "Please check the repositories are correctly configured"
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:462
#, c-format
-msgid "Enable PulseAudio"
+msgid "No known driver"
+msgstr "Mollad anavez"
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr "N'eus sturier ebet evit ho kartenn gwelet (%s)"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "Ret e vo deoc'h adloc'hañ a-raok ma talvezo ar c'hemm"
+
+#: harddrake/sound.pm:522
+#, c-format
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
msgstr ""
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:527
+#, c-format
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
+
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "Loc'hañ servijer fontoù X."
+
+#: harddrake/sound.pm:551
+#, fuzzy, c-format
+msgid "PulseAudio"
+msgstr "Bevaat PulseAudio"
+
+#: harddrake/sound.pm:552
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
+msgid "PulseAudio with Glitch-Free mode"
msgstr ""
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:553
#, c-format
-msgid "Enable user switching for audio applications"
+msgid "PipeWire with WirePlumber"
msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:554
#, c-format
-msgid "Use Glitch-Free mode"
+msgid "PipeWire with PipeWire Media Session"
msgstr ""
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
msgstr ""
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
-msgstr "Defaziañ"
+msgid "Troubleshooting"
+msgstr "Difaziañ"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, fuzzy, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr "Implejet eo ar sturier « %s » gant ho kartenn"
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "N'eus sturier all ebet"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
@@ -3100,143 +3223,74 @@ msgstr ""
"N'eus sturier all (OSS pe ALSA) evit ho kartenn gwelet (%s). Implij eo ar "
"sturier « %s » ganti."
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Kefluniadur gwelet"
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Amañ e c'hellit dibab ur sturier all (OSS pe ALSA) evit ho kartenn kwelet (%"
-"s)."
+msgid "Sound troubleshooting"
+msgstr "Difaziañ un diaester klevet"
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
"\n"
"\n"
-"Implij a ra ho kartenn kwelet ar sturier %s « %s » bremañ (ar sturier a-"
-"ziouer zo « %s » eviti)"
-
-#: harddrake/sound.pm:414
-#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Sturier :"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "N'eo ket ur mollad dieub"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "Mollad anavez"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "N'eus sturier ebet evit ho kartenn gwelet (%s)"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Defaziañ un diaster klevet"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "Choazh ur sturier"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Choazh ur sturier dre ziouer"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
+"\n"
+"\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
#: harddrake/v4l.pm:12
@@ -3252,12 +3306,12 @@ msgstr "Anavez|Rummel"
#: harddrake/v4l.pm:130
#, c-format
msgid "Unknown|CPH05X (bt878) [many vendors]"
-msgstr "Anavez|CPH05X (bt878) [gwerzherioù niverus]"
+msgstr "Anavez|CPH05X (bt878) [gwerzherien niverus]"
#: harddrake/v4l.pm:131
#, c-format
msgid "Unknown|CPH06X (bt878) [many vendors]"
-msgstr "Anavez|CPH06X (bt878) [gwerzherioù niverus]"
+msgstr "Anavez|CPH06X (bt878) [gwerzherien niverus]"
#: harddrake/v4l.pm:475
#, c-format
@@ -3265,7 +3319,7 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
#: harddrake/v4l.pm:478
@@ -3278,70 +3332,73 @@ msgstr "Gobari ar gartenn :"
msgid "Tuner type:"
msgstr "Seurt an tuner :"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "Mat eo"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Ya"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
-msgstr "N'eo ket"
+msgstr "Ket"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Dibabit ur restr"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Ouzhpennañ"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Kemmañ"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Disoc'h"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Diaraog"
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "N'eus restr dibabet ebet"
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "Dibabet 'teus ur renkell. N'eo ket ur restr"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "Hevelep renkell ebet"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "Hevelep restr ebet"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr "Diwall, bev eo Pennlizh"
@@ -3409,7 +3466,7 @@ msgid ""
"=> Notice, a label changed:\n"
"%s"
msgstr ""
-"=> Ho evezh, kemmet e oa ur skridennad :\n"
+"=> Hoc’h evezh, kemmet e oa ur skridennad :\n"
"%s"
#: interactive/stdio.pm:151
@@ -3420,1248 +3477,1262 @@ msgstr "Adkas"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
-msgstr "Andora"
+msgstr "Andorra"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "Stadoù-Unanet Arabeg"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Afganistan"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Antigwa ha Barbuda"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Angilla"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
-msgstr "Albani"
+msgstr "Albania"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
-msgstr "Armeni"
+msgstr "Armenia"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
-msgstr "Antilh an Izelvroioù"
+msgstr "Antilhez an Izelvroioù"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Angola"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
-msgstr "Antartik"
+msgstr "Antarktika"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Arc'hantin"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
-msgstr "Samoa amerikanek"
+msgstr "Samoa amerikaneg"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Aostria"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
-msgstr "Australi"
+msgstr "Aostralia"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Aruba"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
-msgstr "Azerbeidjan"
+msgstr "Azerbaidjan"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
-msgstr "Bosni hag Herzigovi"
+msgstr "Bosnia hag Herzegovina"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Barbad"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
-msgstr "Bangladaech"
+msgstr "Bangladesh"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Beljik"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Burkina Faso"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
-msgstr "Bulgari"
+msgstr "Bulgaria"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Barein"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Burundi"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Benin"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
-msgstr "Bermud"
+msgstr "Bermuda"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Darussalam Brunei"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
-msgstr "Bolivi"
+msgstr "Bolivia"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Brazil"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Bahamas"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Butañ"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Enez Bouvet"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Botswana"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
-msgstr "Belarusi"
+msgstr "Belarus"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Beliz"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Kanada"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Inizi Koko (Keeling)"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Kongo (Kinshasa)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
-msgstr "Republik centrafricaine"
+msgstr "Republik Kreizafrikan"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Kongo (Brazzaville)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Suis"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Aod an Olifant"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Inizi Kook"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Chili"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Kameroun"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "Sina"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
-msgstr "Kolombi"
+msgstr "Kolombia"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Kosta Rika"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
-msgstr "Serbi & Montenegro"
+msgstr "Serbia & Montenegro"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Kuba"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Penn Verde"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Inizi Nedeleg"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Chipr"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Republik Tchek"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Alamagn"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Djibouti"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Danmark"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Dominik"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Republik Dominikan"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
-msgstr "Aljeri"
+msgstr "Aljeria"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Kehider"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Estoni"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Ejipt"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
-msgstr "Sahara occidental"
+msgstr "Sahara ar c’hornog"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
-msgstr "Eritre"
+msgstr "Eritrea"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Spagn"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
-msgstr "Etiopi"
+msgstr "Etiopia"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Finland"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Fidji"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Inizi Falklandi (Malvinas)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Mikronesi"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Enez Faroe"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
-msgstr "Gall"
+msgstr "Bro-C’hall"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Gabon"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Rouantelezh Unanet"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
-msgstr "Grenad"
+msgstr "Grenada"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Jeorji"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Gwiana gallek"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Gwana"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Jibraltar"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Griñland"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
-msgstr "Gambi"
+msgstr "Gambia"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Gine"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Gwadeloup"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Guine équatoriale"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Gres"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
-msgstr "Inizi Jorjia Su ha Sandwitch Su"
+msgstr "Inizi Jorjia Su ha Sandwich Su"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Gwatemala"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Gwam"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Gine-Biso"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Gwiana"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Sina (Hong Kong)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Inizi Heard ha McDonald"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Honduras"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
-msgstr "Kroati"
+msgstr "Kroatia"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Haiti"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Hongri"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
-msgstr "Indonezi"
+msgstr "Indonezia"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Iwerzhon"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Israel"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Indez"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "Douar morveur India saozneg"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Irak"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Iran"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Bro ar Skorn"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
-msgstr "Itali"
+msgstr "Italia"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
-msgstr "Jamaik"
+msgstr "Jamaika"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
-msgstr "Jordani"
+msgstr "Jordania"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
-msgstr "Japon"
+msgstr "Japan"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Kenya"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Kirgistan"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
-msgstr "Kambodj"
+msgstr "Kambodja"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Kiribati"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Komoros"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "Sant Kitts ha Nevis"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Kore (Norzh)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Kore"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Kowaet"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
-msgstr "Inizi Kaeman"
+msgstr "Inizi Kaiman"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Kazakstan"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Laos"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Liban"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
-msgstr "Santez Luci"
+msgstr "Santez Lucia"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Liechtenstein"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Sri Lanka"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Liberia"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Lesoto"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
-msgstr "Lituani"
+msgstr "Lituania"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Luksembourg"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Latvia"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
-msgstr "Libi"
+msgstr "Libia"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
-msgstr "Marok"
+msgstr "Maroko"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Monako"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Moldavi"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Madagaskar"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Inizi Marshall"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Makedonia"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Mali"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Myanmar"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
-msgstr "Mongoli"
+msgstr "Mongolia"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Inizi Mariana norzh"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Martinik"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
-msgstr "Maouritani"
+msgstr "Maouritania"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Montserrat"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Malt"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Mauris"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Inizi Maldiv"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Malawi"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Meksiko"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Malezia"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Mozambik"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
-msgstr "Namibi"
+msgstr "Namibia"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
-msgstr "Kaledoni-nevez"
+msgstr "Kaledonia-nevez"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Nijer"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Enez Norfolk"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Nijeria"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Nikwaraga"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Izelvroioù"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Norvej"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Nepal"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Naurueg"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Niue"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Zeland Nevez"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Oman"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Panama"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Peroù"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
-msgstr "Polinezi galleg"
+msgstr "Polinezia galleg"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Papouazi Gine Nevez"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Filipin"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Pakistan"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Pologn"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Sant Per ha Mikelon"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Pitcairn"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Porto Rico"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Palestin"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Portugal"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Paragwae"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Palo"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Kwatar"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Enez ar Reunion"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Roumani"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
-msgstr "Rusi"
+msgstr "Rusia"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Rwanda"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
-msgstr "Arabi Saudiet"
+msgstr "Arabia Saudiet"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Inizi Salaun"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Sechell"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Sondan"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
-msgstr "Sweden"
+msgstr "Sveden"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Singapour"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Sant Lena"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
-msgstr "Sloveni"
+msgstr "Slovenia"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "Inizi Svalbard ha Jan Mayen"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
-msgstr "Slovaki"
+msgstr "Slovakia"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
-msgstr "Siera Leoñ"
+msgstr "Sierra Leoñ"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "San Marino"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Senegal"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Somali"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Surinam"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
-msgstr "Sao Tome ha Principe"
+msgstr "Sao Tome ha Príncipe"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
-msgstr "Ar Salvador"
+msgstr "El Salvador"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
-msgstr "Siri"
+msgstr "Siria"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Swaziland"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Inizi Turks ha Kaikos"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Tchad"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "Broioù su ar Vro-C'hall"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Togo"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Tailhland"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Tadjikistan"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Tokelo"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Timor reter"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Turkmenistan"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
-msgstr "Tunizi"
+msgstr "Tunizia"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Inizi Tonga"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Turki"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Trinidad ha Tobago"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Tuvalu"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Taeihlwan"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
-msgstr "Tanzani"
+msgstr "Tanzania"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Ukren"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Ouganda"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
-msgstr "Inizi bihan an Stadoù Unanet"
+msgstr "Inizi bihan ar Stadoù Unanet"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "Amerika"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Ourougwae"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Ouzbekistan"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Vatikan"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "Sant Visant ha Grenadin"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Venezuela"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Inizi Virgin (RU)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
-msgstr "Iniz Gwerc'hez"
+msgstr "Inizi Gwerc'hez"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Vietnam"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Vanuatu"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Wallis ha Futuna"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
-msgstr "Inizi Samoe"
+msgstr "Inizi Samoa"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Ihlemeñ"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Mayot"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
-msgstr "Sua-Africa"
+msgstr "Africa ar Su"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
-msgstr "Zambi"
+msgstr "Zambia"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Zimbabwe"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "Degemer e %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
-msgstr "Sac'het eo dilec'hiañ al levrennioù fizikel implijet war re all"
+msgstr "Sac'het eo dilec'hiañ al levrennoù fizikel implijet war re all"
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr "Implijet eo al levrenn fizikel %s c'hoazh"
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
-msgstr "Lemel al levrennioù poellek da gentañ\n"
+msgstr "Lemel al levrennoù poellek da gentañ\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr "N'eus ket moaien da loc'hañ gant /boot war meur a levrenn fizikel"
+#. -PO: Only write something if needed:
#: messages.pm:11
#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Digoradur"
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr "1. Aotre-implijout"
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4675,16 +4746,23 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr "2. Gwarant bevennet"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4692,15 +4770,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4709,51 +4787,66 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
+"you."
+msgstr ""
+
+#: messages.pm:68
+#, fuzzy, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr "3. An aotre GPL hag an aotreoù all"
+
+#: messages.pm:70
+#, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. %s\n"
+"entities.\n"
"Most of these licenses allow you to use, duplicate, adapt or redistribute "
"the components which \n"
"they cover. Please read carefully the terms and conditions of the license "
"agreement for each component \n"
"before using any component. Any question on a component license should be "
"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr "4. Gwirioù ar berc'henniezh intelektuel"
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr "5. Lezennoù dedalvezadus"
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4765,151 +4858,49 @@ msgid ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
-msgstr ""
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"For any question on this document, please contact Mageia."
msgstr ""
-#: messages.pm:107
+#: messages.pm:102
#, c-format
msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"Warning: Free Software may not necessarily be patent free, and some Free\n"
+"Software included may be covered by patents in your country. For example, "
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
#: messages.pm:112
#, c-format
msgid ""
-"Warning: Free Software may not necessarily be patent free, and some Free\n"
-"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
+"Gourc'hemennoù, peurc'hraet eo ar staliadur.\n"
+"Lamit ar vediom staliañ ha gwaskit enkas evit adloc'hañ."
-#: messages.pm:120
+#: messages.pm:114
#, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"For information on fixes which are available for this release of Mageia,\n"
+"consult the Errata available from:\n"
+"%s"
msgstr ""
+"Evit titouroù war palastroù hegerz evit stumm-mañ Mageia,\n"
+"sellit ouzh an Errata war : \n"
+"%s"
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:116
#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
-"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
msgstr ""
-"Gourc'hemennoù, peurc'hraet eo ar staliadur.\n"
-"Lamit ar bladenn loc'hañ ha gwaskit enkas evit adloc'hañ.\n"
-"\n"
-"\n"
-"Evit titouroù war palastroù hegerz evit stumm-mañ Mandriva Linux,\n"
-"sellit ouzh an Errata war : \n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Titouroù war gefluniañ ho reizhiad zo hegerz e rannbennad Goude\n"
-"Staliañ Sturier ofisiel an Arveriad Mandriva Linux."
#: modules/interactive.pm:19
#, c-format
@@ -4924,7 +4915,7 @@ msgstr "Kefluniañ ar mollad"
#: modules/interactive.pm:22
#, c-format
msgid "You can configure each parameter of the module here."
-msgstr "Moien zo dit kefluniañ pep dibarzh ar mollad amañ."
+msgstr "Moaien zo dit kefluniañ pep dibarzh ar mollad amañ."
#: modules/interactive.pm:64
#, c-format
@@ -4953,18 +4944,18 @@ msgstr "O staliañ ur sturier evit ar kontroller USB"
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "O staliañ ur sturier evit ar kontroller firewire %s"
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "O staliañ ur sturier evit ar kontroller firewire \"%s\""
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "O staliañ ur sturier evit kontroller ar pladennoù %s"
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "O staliañ ur sturier evit kontroller ar pladennoù \"%s\""
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "O staliañ ur sturier evit ar kontroller erthernet %s"
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "O staliañ ur sturier evit ar kontroller Ethernet \"%s\""
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -4976,7 +4967,7 @@ msgstr "O staliañ ur sturier evit kartenn %s %s"
#: modules/interactive.pm:100
#, c-format
msgid "Configuring Hardware"
-msgstr ""
+msgstr "O kefluniañ ar periantel"
#: modules/interactive.pm:111
#, c-format
@@ -4992,14 +4983,14 @@ msgid ""
"Options are in format ``name=value name2=value2 ...''.\n"
"For instance, ``io=0x300 irq=7''"
msgstr ""
-"Bremañ e c'hellit pourvezañ e zibarzhoù d'ar mollad %s.\n"
+"Bremañ e c'hellit pourvezañ e zibarzhioù d'ar mollad %s.\n"
"Diouzh ar furmad « anv=talvoud anv2=talvoud2... » eo an dibaboù.\n"
"Da skouer, « io=0x300 irq=7 »"
#: modules/interactive.pm:119
#, c-format
msgid "Module options:"
-msgstr "Dibarzhoù ar mollad :"
+msgstr "Dibarzhioù ar mollad :"
#. -PO: the %s is the driver type (scsi, network, sound,...)
#: modules/interactive.pm:132
@@ -5018,10 +5009,10 @@ msgid ""
"should\n"
"not cause any damage."
msgstr ""
-"E degouezhoù 'zo, ar sturier %s en deus ezhomm titouroù ouzhpenn evit mont\n"
+"E degouezhioù 'zo, ar sturier %s en deus ezhomm titouroù ouzhpenn evit mont\n"
"en-dro reizh, daoust ma da en-dro mat hepto peurvuiañ. Ha mennout a rit "
"spisaat\n"
-"dibaboù ouzphenn evitañ, pe aotren d'ar sturier amprouiñ ho penvek evit\n"
+"dibaboù ouzhpenn evitañ, pe aotren d'ar sturier amprouiñ ho penveg evit\n"
"an titouroù en deus ezhomm ? A-wechoù, amprouiñ a c'hell sac'hañ un "
"urzhiataer,\n"
"hogen ne raio reuz ebet."
@@ -5034,7 +5025,7 @@ msgstr "Embrouiñ"
#: modules/interactive.pm:145
#, c-format
msgid "Specify options"
-msgstr "Spisait dibarzhoù"
+msgstr "Spisait dibarzhioù"
#: modules/interactive.pm:157
#, c-format
@@ -5045,35 +5036,35 @@ msgstr ""
"Kargañ ar mollad %s zo sac'het.\n"
"Mennout a rit klask adarre gant arventennoù all ?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr "Ha fellout a ra deoc'h da vat kuitaat ?"
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
msgstr ""
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Tremenger evit an arveriad"
+msgstr "Seblantout a ra mat an tremenger"
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "marc'hañ sac'het : "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Ne m'eus ket implij ar parzhadurioù astennet gant ar reizhiad-mañ"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
@@ -5081,94 +5072,94 @@ msgstr ""
"Fiñval ar parzhadurioù kentañ derez evit ma vo an toull stok ouzh ar "
"parzhadurioù astennet eo an diskoulm"
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
msgstr ""
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
-msgstr ""
+msgstr "Lemel ar pakadoù a servij da netra"
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
-msgstr ""
+msgstr "O klask ar pakadoù periantel a servij da netra..."
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
-msgstr ""
+msgstr "O klask ar pakadoù troidigezh a servij da netra..."
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
"configuration."
msgstr ""
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
-msgstr ""
+msgstr "Lemet e vo ar pakadoù a heul ma ne dibabit ket mod all :"
-#: pkgs.pm:269 pkgs.pm:270
-#, fuzzy, c-format
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
msgid "Unused hardware support"
-msgstr "Gwelet titouroù periantel"
+msgstr "Dafar periantel ne servij da netrea"
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
-msgstr ""
+msgstr "Troidigezh ha n'eo ket implijet"
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
msgstr "N'hellan ket ouzhpennañ ur parzhadur da RAID %s _furmadet_"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "N'eus ket a-walc'h a barzhadurioù evit RAID live %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "N'hellan ket krouiñ ar renkell /usr/share/sane/firmware !"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "N'hellan ket krouiñ al liamm /usr/share/sane/%s !"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr ""
"N'hellan ket eilañ ar restr meriant %s e-barzh /usr/share/sane/firmware !"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "N'hell ket bet lakaet aotreoù ar meriant %s !"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Scannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr "N'eo ket evit staliañ evit ranañ hoc'h eiltreser."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr ""
@@ -5266,8 +5257,8 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
#: security/help.pm:63
@@ -5307,7 +5298,7 @@ msgstr ""
#: security/help.pm:80
#, c-format
msgid "Security Alerts:"
-msgstr "Posteloù surantez :"
+msgstr "Posteloù surentez :"
#: security/help.pm:82
#, c-format
@@ -5343,7 +5334,7 @@ msgstr ""
#: security/help.pm:94
#, c-format
-msgid "Activate ethernet cards promiscuity check."
+msgid "Activate Ethernet cards promiscuity check."
msgstr ""
#: security/help.pm:96
@@ -5519,7 +5510,7 @@ msgstr ""
#: security/l10n.pm:15
#, c-format
msgid "/etc/issue* exist"
-msgstr "Bez eus /etc/issue* endeo"
+msgstr "Bez’ ez eus /etc/issue* endeo"
#: security/l10n.pm:16
#, c-format
@@ -5759,7 +5750,7 @@ msgstr ""
#: security/level.pm:10
#, c-format
msgid "Disable msec"
-msgstr ""
+msgstr "Dizoberiañ msec"
#: security/level.pm:11
#, c-format
@@ -5767,11 +5758,11 @@ msgid "Standard"
msgstr "Skouer"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "Diogelroez"
+msgstr "Mad"
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -5780,7 +5771,7 @@ msgid ""
"on your own."
msgstr ""
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -5789,7 +5780,7 @@ msgstr ""
"Setu al live surentez standard a vez erbedet evit un urzhiataer a vo "
"implijet evit kevreañ evel kliant ouzh ar Genrouedad."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -5803,52 +5794,52 @@ msgstr ""
"servijer.\n"
"Uhel a-walc'h eo bremañ ar surentez evit implijout ar reizhiad evel ur "
"servijer\n"
-"o tigemer kevreadennoù a-berzh kliantoù niverus. Notenn : ma vez ur c'hliant "
+"o tegemer kevreadennoù a-berzh kliantoù niverus. Notenn : ma vez ur c'hliant "
"kenrouedad hepken, neuze e vefe moarvat gwelloc'h deoc'h dibab ul live "
"izeloc'h."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Diogelroez"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
-msgstr "Dibarzhoù DrakSec diazeg"
+msgstr "Dibarzhioù DrakSec diazez"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
-msgstr "Dibabit al live surentez c'hoantet"
+msgstr "Dibabit al live surentez c'hoantaet"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
-msgstr ""
+msgstr "%s : %s"
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "Merour surentez :"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
+msgstr "Anv ereañ pe postel :"
+
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
msgstr ""
-#: services.pm:19
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "Lañsañ ar reizhiad kwelek ALSA (Advanced Linux Sound Architecture)"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
-msgstr "Anacron, ur steuñvaer urzhiadoù mareadek."
+msgstr "Anacron, ur steuñver urzhiadoù mareadek."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -5858,16 +5849,31 @@ msgstr ""
"syslog.\n"
"Gallout a ra ivez servijout da lazhañ an ardivink pa vez izel an daspugner."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
"at was run, and runs batch commands when the load average is low enough."
msgstr ""
-"Seveniñ an urzhiadoù steuñvaet gant an urzhiad at d'ar pred laket pa 'z eo\n"
+"Seveniñ an urzhiadoù steuñvet gant an urzhiad at d'ar pred laket pa 'z eo\n"
"bet sevenet at, ha seveniñ urzhiadoù dre lod pa 'z eo izel a-walc'h ar garg."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr "Ur pratik/servijer NTP"
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -5876,22 +5882,22 @@ msgid ""
"UNIX cron, including better security and more powerful configuration options."
msgstr ""
"Ur goulev standard UNIX eo cron evit seveniñ goulevioù diouzh c'hoant an\n"
-"arveriaded da goulzoù mareadek steuñvaet. vixie cron a ouzhpenn kalzig a "
-"arc'hweloù\n"
-"d'ar cron UNIX diazez, en o zouez surentez ha dibarzhoù kefluniañ gwelloc'h."
+"arveriaded da goulzoù mareadek steuñvet. vixie cron a ouzhpenn kalzig a "
+"arc'hwelioù\n"
+"d'ar cron UNIX diazez, en o zouez surentez ha dibarzhioù kefluniañ gwelloc'h."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr ""
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -5899,7 +5905,20 @@ msgid ""
"It is used by GNOME and KDE"
msgstr ""
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -5908,22 +5927,22 @@ msgid ""
"and includes support for pop-up menus on the console."
msgstr ""
"GPM a zegas implij al logodenn d'an arloadoù Linux mod-skrid evel\n"
-"Midnight Commander. Reiñ a ra tu da seveniñ obererezhoù troc'hañ-ha-pegañ,\n"
+"Midnight Commander. Reiñ a ra tu da seveniñ obererezhioù troc'hañ-ha-pegañ,\n"
"ha skor evit meuziadoù kemperzhel war al letrin."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
"new/changed hardware."
msgstr ""
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
@@ -5931,7 +5950,7 @@ msgstr ""
"Ur servijer evit ar Gwiad Bedel eo Apache. Implijet e vez evit servijañ\n"
"restroù HTML ha CGI."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -5944,17 +5963,26 @@ msgstr ""
"An diaoul gourservijer kenrouedad (anvet inetd ordinal) a loc'h ur\n"
"bochad a servijoù kenrouedad all diouzh an ezhomm. E karg loc'hañ meur a "
"servijoù\n"
-"eo, en o zouez telnet, ftp, rsh, and rlogin. Dizoberiañ inetd a zizoberia\n"
+"eo, en o zouez telnet, ftp, rsh, ha rlogin. Dizoberiañ inetd a zizoberia\n"
"an holl servijoù m'eo eñ atebek warno."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -5965,49 +5993,69 @@ msgstr ""
"/etc/sysconfig/keyboard. Dre ar maveg kbdconfig e c'hell bezañ diuzet\n"
"kement-se. Gwell deoc'h leuskel se gweredekaet war darn vuiañ an ardivinkoù."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
"/usr/include/linux/{autoconf,version}.h"
msgstr ""
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr ""
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
"at boot-time to maintain the system configuration."
msgstr ""
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
"basically a server that arbitrates print jobs to printer(s)."
msgstr ""
"An diaoul moullañ ret evit ma dafez en-ro reizh lpr eo lpd. Dre vras\n"
-"ez eo ur servijer a vera dleadoù moullañ evir ar voullerez(ed)."
+"ez eo ur servijer a ver dleadoù moullañ evit ar voullerez(ed)."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
"available server."
msgstr ""
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6016,7 +6064,12 @@ msgstr ""
"named (BIND) zo ur Servijer Anvioù Domani (DNS) a zo implijet evit amdreiñ "
"anvioù ostiz e chomlec'hioù IP."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6025,7 +6078,7 @@ msgstr ""
"Evit marc'hañ ha divarc'hañ poentoù marc'hañ an holl Reizhiadoù Restroù\n"
"Rouedad (NFS), SMB (Lan Manager/Windows) ha NCP (NetWare)."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -6034,7 +6087,17 @@ msgstr ""
"Oberia/Dizoberia an holl etrefasoù rouedad kefluniet da lañsañ\n"
"da vare al loc'hañ."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6042,10 +6105,10 @@ msgid ""
"/etc/exports file."
msgstr ""
"NFS zo ur c'homenad brudet evit rannañ restroù dre rouedadoù TCP/IP.\n"
-"Ar servij-mañ a bourvez arc'hweloù ur servijer NFS, a vez kefluniaet dre ar\n"
+"Ar servij-mañ a bourvez arc'hwelioù ur servijer NFS, a vez kefluniet dre ar\n"
"restr /etc/exports."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6054,24 +6117,29 @@ msgstr ""
"NFS zo ur c'homenad brudet evit rannañ restroù dre rouedadoù\n"
"TCP/IP. Ar servij-mañ a bourvez un arc'hwel morailhañ restroù NFS."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
"and Xorg at boot."
msgstr ""
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr ""
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6079,12 +6147,12 @@ msgid ""
"to have\n"
"it installed on machines that do not need it."
msgstr ""
-"Skorañ PCMCIA a zegas an tu da implijonut traoù evel ethernet ha modemoù\n"
-"e urzhiataeroù hezoug. Ne vo ket kroget hep bezañ bet kefluniet, rak-se eo "
+"Skorañ PCMCIA a zegas an tu da implijout traoù evel ethernet ha modemoù\n"
+"e urzhiataerioù hezoug. Ne vo ket kroget hep bezañ bet kefluniet, rak-se eo "
"diarvar\n"
"e staliañ war ardivinkoù n'o deus ket ezhomm anezhañ."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6092,21 +6160,26 @@ msgid ""
"machines\n"
"which act as servers for protocols which make use of the RPC mechanism."
msgstr ""
-"Ar c'hartenner porzhioù a vera kevreadennoù RPC, a zo implijet gant\n"
+"Ar c'hartenner porzhioù a ver kevreadennoù RPC, a zo implijet gant\n"
"komenadoù evel NFS ha NIS. Ar servijer kartenn-porzhioù a rankfe mont en-"
"dro\n"
-"war ardivinkoù anezho servijerien komenadoù a implij ar reizhiad RPC."
+"war ardivinkoù anezho servijerien komenadoù a implij ar reizhiad RPC."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
"one machine to another."
msgstr ""
-"Ur Gwazour Treuzdougen Postel eo Postfix, a zo ar goulev a zilech posteloù "
+"Ur Gwazour Treuzdougen Postel eo Postfix, a zo ar goulev a zilec'h posteloù "
"etre un ardivink hag un all."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6115,26 +6188,31 @@ msgstr ""
"Enroll hag assav poul dizurzh ar reizhiad evit genel niveroù\n"
"dargouezhek gant gwelloc'h perzhded."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
-#: services.pm:83
+#: services.pm:114
+#, fuzzy, c-format
+msgid "Nameserver information manager"
+msgstr "Titouroù ar bladenn"
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
"the RIP protocol. While RIP is widely used on small networks, more complex\n"
"routing protocols are needed for complex networks."
msgstr ""
-"An diaoul routed a ro an tu da vremanaat ent emgefreek an taolenn henchañ\n"
+"An diaoul routed a ro an tu da vremanaat ent emgefreek an daolenn henchañ\n"
"IP dre ar c'homenad RIP. Tra ma vez implijet aliesig RIP war rouedadoù "
"bihan,\n"
-"ezhomm zo komenadoù henchañ kemplezhoc'h evit rouedadoù rouestlet."
+"ezhomm zo komenadoù henchañ kempleshoc'h evit rouedadoù rouestlet."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6143,7 +6221,16 @@ msgstr ""
"Ar c'homenad rstat a ro tu da implijerien ur rouedad da zastum\n"
"muzulioù barregezh diwar ne vern pe ardivink er rouedad-se."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+"Syslog zo ur gwazerezh ma enroll drezañ an diaouled niverus o c'hemennadoù e "
+"kerzhlevrioù liesseurt ar reizhiad. Ur mennozh mat eo seveniñ ingal syslog."
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
@@ -6152,7 +6239,7 @@ msgstr ""
"Ar c'homenad rusers a ro tu da implijerien ur rouedad da anavezout piv\n"
"zo kevreet ouzh ardivinkoù all a respont."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6163,32 +6250,47 @@ msgstr ""
"kevreet ouzh un ardivink ma da en-dro warnañ an diaoul rwhod (heñvel ouzh "
"finger)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "Lañsañ ar reizhiad kwelek ouzh hoc'h urzhiataer"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6197,114 +6299,121 @@ msgstr ""
"Syslog zo ur gwazerezh ma enroll drezañ an diaouled niverus o c'hemennadoù\n"
"e kerzhlevrioù liesseurt ar reizhiad. Ur mennozh mat eo seveniñ ingal syslog."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "Kargañ sturieroù evit ho trobarzhelloù USB."
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr "Loc'hañ servijer fontoù X."
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr "Loc'hañ diaouled all pa vez goulennet."
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "War voulañ"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Kenrouedad"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Rannañ restroù"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Rouedad"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "Reizhiad"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "Mererezh a-bell"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Servijer ar stlennvon"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Servijoù"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr "Dibabit pe servijoù a zlefe bezañ lañset ent emgefreek pa loc'her"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Servijoù : %d bev diwar %d enskrivet"
+msgid "%d activated for %d registered"
+msgstr "%d bev diwar %d enskrivet"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "o seveniñ"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "plaenaozet"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Servijoù ha diaouloù"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
"about this service, sorry."
msgstr ""
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Titouroù"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "Loc'hañ pa vez red"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "En ur loc'hañ"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "Loc'hañ"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Plaenaozañ"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6323,7 +6432,7 @@ msgid ""
"USA.\n"
msgstr ""
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6339,28 +6448,27 @@ msgid ""
"--version : show version number.\n"
msgstr ""
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6371,7 +6479,7 @@ msgid ""
" --wizard - like --add"
msgstr ""
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6389,11 +6497,11 @@ msgid ""
" : and gs for ghostscript for only this one."
msgstr ""
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6407,17 +6515,17 @@ msgid ""
"IP, nbi image name)"
msgstr ""
-#: standalone.pm:100
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[stokellaoueg]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr "[--file=marestr] [--word=mager] [--explain=regexp] [--alert]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6431,26 +6539,26 @@ msgid ""
"--quiet : do not be interactive. To be used with (dis)connect."
msgstr ""
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
msgstr ""
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6458,7 +6566,7 @@ msgid ""
" XFdrake resolution"
msgstr ""
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6470,85 +6578,266 @@ msgstr ""
"\"\n"
"\"testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
+#: timezone.pm:170 timezone.pm:171
#, c-format
msgid "All servers"
msgstr "Pep servijer"
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr "Hollek"
-#: timezone.pm:199
+#: timezone.pm:210
#, c-format
msgid "Africa"
msgstr "Afrika"
-#: timezone.pm:200
+#: timezone.pm:211
#, c-format
msgid "Asia"
-msgstr "Asia"
+msgstr "Azia"
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr "Europa"
-#: timezone.pm:202
+#: timezone.pm:213
#, c-format
msgid "North America"
msgstr "Amerika norzh"
-#: timezone.pm:203
+#: timezone.pm:214
#, c-format
msgid "Oceania"
msgstr "Oseania"
-#: timezone.pm:204
+#: timezone.pm:215
#, c-format
msgid "South America"
msgstr "Amerika Su"
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Hong Kong"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
-msgstr "Kevread russiek"
+msgstr "Kevread rusianek"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
-msgstr "Yougoslavi"
+msgstr "Yougoslavia"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Ha reizh eo ?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "Dibabet 'teus ur restr. N'eo ket ur renkell"
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Titouroù"
+
#: wizards.pm:95
#, c-format
msgid ""
"%s is not installed\n"
"Click \"Next\" to install or \"Cancel\" to quit"
msgstr ""
-"N'eo ket staliadet %s\n"
-"Klikit ouzh « A heul » evit staliañ pe ouzh « Nullañ » evit guitaat"
+"N'eo ket staliet %s\n"
+"Klikit ouzh « A heul » evit staliañ pe ouzh « Nullañ » evit kuitaat"
#: wizards.pm:99
#, c-format
msgid "Installation failed"
msgstr "Sac'het eo ar staliadur"
+#~ msgid ""
+#~ "If grub2 takes too long to install, you can use this option to skip "
+#~ "detecting other OSes and make it fast"
+#~ msgstr ""
+#~ "Ma 'z eo re goustad staliadur grub2 e c'hellit implij an dibab-mañ\n"
+#~ "evit tremen e-biou klask ar reizhiadoù all (mod-se e vo buanoc'h)"
+
+#~ msgid "You cannot install the bootloader on a %s partition\n"
+#~ msgstr "Ne vennit ket staliañ ar c'harger loc'hañ war ur parzhadur %s\n"
+
+#~ msgid ""
+#~ "You've selected a software RAID partition as root (/).\n"
+#~ "No bootloader is able to handle this without a /boot partition.\n"
+#~ "Please be sure to add a separate /boot partition"
+#~ msgstr ""
+#~ "Choazh o'ch eus oc'h implij RAID software evit gwrizienn (/).\n"
+#~ "N'eus ket moaien da loc'hañ hep ur barzhadur /boot.\n"
+#~ "Bezit sur hoc’h eus ouzhpennet ur barzhadur /boot"
+
+#, fuzzy
+#~ msgid ""
+#~ "Metadata version unsupported for a boot partition. Please be sure to add "
+#~ "a separate /boot partition."
+#~ msgstr ""
+#~ "Choizh o'ch eus oc'h implij RAID evit gwrizienn (/).\n"
+#~ "N'eus ket moaien da loc'hañ hep ur barzhadur /boot.\n"
+#~ "Bezit sur hoc’h eus ouzhpennet ur barzhadur /boot"
+
+#~ msgid ""
+#~ "You've selected a software RAID partition as /boot.\n"
+#~ "No bootloader is able to handle this."
+#~ msgstr ""
+#~ "Choazet hoc’h eus implij ur RAID software evit /boot.\n"
+#~ "N'eus ket moaien da loc'hañ hep ur barzhadur /boot."
+
+#~ msgid ""
+#~ "You cannot use the LVM Logical Volume for mount point %s since it spans "
+#~ "physical volumes"
+#~ msgstr ""
+#~ "Ne vennit ket implij al levrenn boellek LVM evit ar poent marc'hañ %s "
+#~ "peogwir e vez implijet meur a levrenn fizikel gantañ"
+
+#~ msgid ""
+#~ "You've selected the LVM Logical Volume as root (/).\n"
+#~ "The bootloader is not able to handle this when the volume spans physical "
+#~ "volumes.\n"
+#~ "You should create a separate /boot partition first"
+#~ msgstr ""
+#~ "Choazet hoc’h eus oc'h implij LVM evit gwrizienn (/).\n"
+#~ "N'eus ket moaien da loc'hañ pa emañ al levrenn war meur a levrenn "
+#~ "fizikel.\n"
+#~ "Mat vije deoc'h krouiñ ur barzhadur loc'hañ da gentañ"
+
+#~ msgid "You must have a Boot BIOS partition"
+#~ msgstr "Ret eo deoc'h kaout ur parzhadur loc'hañ BIOS"
+
+#~ msgid "Please Wait... Applying the configuration"
+#~ msgstr "Gortozit mar plij, o lakaat ar c'hefluniadur"
+
+#~ msgid ""
+#~ "\n"
+#~ "\n"
+#~ "Your card currently uses the %s\"%s\" driver (the default driver for your "
+#~ "card is \"%s\")"
+#~ msgstr ""
+#~ "\n"
+#~ "\n"
+#~ "Implij a ra ho kartenn kwelet ar sturier %s « %s » bremañ (ar sturier a-"
+#~ "ziouer zo « %s » eviti)"
+
+#~ msgid "Driver:"
+#~ msgstr "Sturier :"
+
+#~ msgid "Let me pick any driver"
+#~ msgstr "Choaz ur sturier"
+
+#~ msgid "Choosing an arbitrary driver"
+#~ msgstr "Choaz ur sturier dre ziouer"
+
+#~ msgid ""
+#~ "Information on configuring your system is available in the post\n"
+#~ "install chapter of the Official Mageia User's Guide."
+#~ msgstr ""
+#~ "Titouroù war gefluniañ ho reizhiad zo hegerz e rannbennad Goude\n"
+#~ "Staliañ Sturier ofisiel an Arveriad Mageia."
+
+#~ msgid "Kernel Boot Timeout"
+#~ msgstr "Amzer-hont ar galon"
+
+#~ msgid "Default OS?"
+#~ msgstr "RK dre ziouer ?"
+
+#~ msgid "NoVideo"
+#~ msgstr "N'eo ket video"
+
+#~ msgid "Other OS (SunOS...)"
+#~ msgstr "Reizhiadoù all (SunOS ...)"
+
+#~ msgid "Other OS (MacOS...)"
+#~ msgstr "Reizhiadoù all (MacOS ...)"
+
+#~ msgid "Yaboot"
+#~ msgstr "Yaboot"
+
+#~ msgid "SILO"
+#~ msgstr "SILO"
+
+#~ msgid "SunOS"
+#~ msgstr "SunOS"
+
+#~ msgid "HFS"
+#~ msgstr "HFS"
+
+#~ msgid ""
+#~ "Here you can select an alternative driver (either OSS or ALSA) for your "
+#~ "sound card (%s)."
+#~ msgstr ""
+#~ "Amañ e c'hellit dibab ur sturier all (OSS pe ALSA) evit ho kartenn kwelet "
+#~ "(%s)."
+
+#~ msgid "Extended partition not supported on this platform"
+#~ msgstr "N'em eus ket implij ar parzhadurioù astennet gant ar reizhiad-mañ"
+
+#~ msgid "Clean /tmp at each boot"
+#~ msgstr "Skarañ /tmp bep ma loc'her"
+
+#~ msgid "No open source driver"
+#~ msgstr "N'eo ket ur mollad dieub"
+
+#~ msgid "command %s missing"
+#~ msgstr "mankout a ra an urzhiad %s"
+
+#~ msgid "File sharing"
+#~ msgstr "Rannañ restroù"
+
+#~ msgid "Restrict command line options"
+#~ msgstr "Strishaat dibarzhioù al linenn urzhiañ"
+
+#~ msgid "restrict"
+#~ msgstr "strishaat"
+
+#~ msgid ""
+#~ "Option ``Restrict command line options'' is of no use without a password"
+#~ msgstr ""
+#~ "Didalvout eo « Strishaat dibarzhioù al linenn urzhiañ » hep tremenger"
+
+#~ msgid "Use an encrypted filesystem"
+#~ msgstr "Implijit ur reizhiad restroù enrineget"
+
+#~ msgid "Use the Microsoft Windows® partition for loopback"
+#~ msgstr "Implij ar barzhadur Microsoft Windows® evit saveteiñ"
+
+#~ msgid "Which partition do you want to use for Linux4Win?"
+#~ msgstr "Pe barzhadur a vennit implijout evit lakaat Linux4Win ?"
+
+#~ msgid "Choose the sizes"
+#~ msgstr "Dibabit ar mentoù"
+
+#~ msgid "Root partition size in MB: "
+#~ msgstr "Ment ar barzhadur kentañ e Mo : "
+
+#~ msgid "Swap partition size in MB: "
+#~ msgstr "Ment ar barzhadur disloañ e Mo : "
+
+#~ msgid ""
+#~ "There is no FAT partition to use as loopback (or not enough space left)"
+#~ msgstr ""
+#~ "N'eus ket ur barzhadur FAT evit saveteiñ (n'eus ket a-walc'h egor dieub)"
+
+#~ msgid ""
+#~ "The FAT resizer is unable to handle your partition, \n"
+#~ "the following error occurred: %s"
+#~ msgstr ""
+#~ "N'eus ket moaien d'adenvañ ho parzhadur gant an adventer FAT,\n"
+#~ "degouezhet ez eus ar fazi a-heul : %s"
+
#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
#~ msgstr "Dizereit mar plij ha neuze implijit Ctrl-Alt-WarGil"
@@ -6591,8 +6880,8 @@ msgstr "Sac'het eo ar staliadur"
#~ "This is similar to the previous level, but the system is entirely closed "
#~ "and security features are at their maximum."
#~ msgstr ""
-#~ "Kemer a reomp arc'hweloù al live diaraok, hogen bremañ eo peurserret ar "
-#~ "reizhiad hag an arc'hweloù surentez zo en o muiañ."
+#~ "Kemer a reomp arc'hwelioù al live diaraok, hogen bremañ eo peurserret ar "
+#~ "reizhiad hag an arc'hwelioù surentez zo en o muiañ."
#~ msgid "Use libsafe for servers"
#~ msgstr "Implijit libsafe evit ar servijerien"
@@ -6652,7 +6941,7 @@ msgstr "Sac'het eo ar staliadur"
#~ msgstr "SSL"
#~ msgid "security layout (SASL/Kerberos)"
-#~ msgstr "reizhadur ar surantez (SASL/Kerberos)"
+#~ msgstr "reizhadur ar surentez (SASL/Kerberos)"
#~ msgid "LDAP users database"
#~ msgstr "Stlennvon an arveriaded LDAP"
diff --git a/perl-install/share/po/bs.po b/perl-install/share/po/bs.po
index 260841ed3..4aca0c353 100644
--- a/perl-install/share/po/bs.po
+++ b/perl-install/share/po/bs.po
@@ -1,38 +1,38 @@
-# translation of bs.po to Bosnian
-# translation of libDrakX-bs.po to Bosnian
-# translation of bs.po to Bosanski
-# translation of DrakX-bs.po to Bosanski
-# Copyright (C) 2001, 2003, 2004, 2005, 2006. Free Software Foundation, Inc.
-# Amila Akagić <bono@lugbih.org>, 06. 2001.
-# Vedran Ljubovic <vljubovic@smartnet.ba>, 2002, 2003, 2004, 2005, 2006.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
+# Translators:
+# Vedran Ljubovic <vljubovic@smartnet.ba>, 2002-2006
msgid ""
msgstr ""
-"Project-Id-Version: bs\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2006-09-13 19:15+0200\n"
-"Last-Translator: Vedran Ljubovic <vljubovic@smartnet.ba>\n"
-"Language-Team: Bosnian <lokal@linux.org.ba>\n"
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2019-04-16 15:44+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Bosnian (http://www.transifex.com/MageiaLinux/mageia/language/"
+"bs/)\n"
+"Language: bs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "Molim sačekajte"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "Instalacija bootloadera u toku"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -50,35 +50,17 @@ msgstr ""
"\n"
"Da li da podesim novi ID volumena?"
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr "Instalacija bootloadera nije uspjela. Došlo je do sljedeće greške:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"Možda ćete trebati promijeniti vaš Open Firmware boot uređaj\n"
-" da biste aktivirali bootloader. Ako ne vidite upit bootloadera\n"
-" prilikom bootanja, držite Command-Option-O-F prilikom boota\n"
-" i unesite:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Zatim kucajte: shut-down\n"
-"Prilikom idućeg boota biste trebali vidjeti upit bootloadera."
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
@@ -88,274 +70,273 @@ msgstr ""
"\n"
"Sa kojeg diska vršite boot?"
-#: any.pm:346
-#, fuzzy, c-format
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr ""
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Gdje želite smjestiti bootloader?"
+
+#: any.pm:365
+#, c-format
msgid "First sector (MBR) of drive %s"
-msgstr "Prvi sektor diska (MBR)"
+msgstr ""
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "Prvi sektor diska (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr "Prvi sektor root particije"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "Na disketi"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Preskoči"
-#: any.pm:358
-#, fuzzy, c-format
-msgid "Bootloader Installation"
-msgstr "Instalacija bootloadera u toku"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Gdje želite smjestiti bootloader?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "Konfiguracija stila boota"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr ""
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "Glavne opcije bootloadera"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "Bootloader"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "Bootloader koji ćete koristiti"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Boot uređaj"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
msgstr "Glavne opcije"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "Pauza prije pokretanja izabrane opcije"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "Uključi ACPI"
-#: any.pm:411
-#, fuzzy, c-format
+#: any.pm:432
+#, c-format
msgid "Enable SMP"
-msgstr "Uključi ACPI"
+msgstr ""
-#: any.pm:412
+#: any.pm:433
#, c-format
msgid "Enable APIC"
msgstr "Uključi APIC"
-#: any.pm:413
+#: any.pm:435
#, c-format
msgid "Enable Local APIC"
msgstr "Uključi Local APIC"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Sigurnost"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Šifra"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Šifre se ne poklapaju"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Molim pokušajte ponovo"
-#: any.pm:418
-#, fuzzy, c-format
-msgid "You can not use a password with %s"
-msgstr "Ne možete koristiti šifrovani datotečni sistem za tačku montiranja %s"
+#: any.pm:442
+#, c-format
+msgid "You cannot use a password with %s"
+msgstr ""
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Šifra (ponovo)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "Ograniči opcije komandne linije"
+msgid "Bootloader Configuration"
+msgstr ""
+
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "Instalacija nije uspjela"
-#: any.pm:422
+#: any.pm:533
#, c-format
-msgid "restrict"
-msgstr "ograniči"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr ""
-#: any.pm:423
+#: any.pm:535 any.pm:794
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
-msgstr "Opcija ``Ograniči opcije komandne linije'' je beskorisna bez šifre"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
-#: any.pm:425
+#: any.pm:537
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "Očisti /tmp prilikom svakog starta"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr ""
-#: any.pm:434
+#: any.pm:539
#, c-format
-msgid "Init Message"
-msgstr "Init poruka"
+msgid "Background"
+msgstr ""
-#: any.pm:436
+#: any.pm:544
#, c-format
-msgid "Open Firmware Delay"
-msgstr "Čekanje na Open Firmware"
+msgid "rEFInd banner"
+msgstr ""
+
+#: any.pm:545
+#, fuzzy, c-format
+msgid "Mageia theme"
+msgstr "Mageia"
-#: any.pm:437
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Vrijeme za boot kernela"
+msgid "Custom"
+msgstr "Vlastito"
+
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "Bez dijeljenja"
-#: any.pm:438
+#: any.pm:565
#, c-format
-msgid "Enable CD Boot?"
-msgstr "Omogući boot sa CDa?"
+msgid "Scale to fit"
+msgstr ""
+
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
+#, c-format
+msgid "Label"
+msgstr "Oznaka"
-#: any.pm:439
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Enable OF Boot?"
-msgstr "Omogući boot sa OFa?"
+msgid "Append"
+msgstr "Append"
-#: any.pm:440
+#: any.pm:612 any.pm:624 any.pm:781
#, c-format
-msgid "Default OS?"
-msgstr "Podrazumjevani OS?"
+msgid "Video mode"
+msgstr "Video režim"
-#: any.pm:513
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "Image"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Root"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "Append"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr "Xen append"
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Video režim"
+msgid "Requires password to boot"
+msgstr ""
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "Mrežni profil"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "Oznaka"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Default"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "NoVideo"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "Prazna oznaka nije dozvoljena"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "Morate navesti image kernela"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "Morate navesti root particiju"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "Ova oznaka je već u upotrebi"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Koju vrstu opcije želite dodati?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Ostali OSi (SunOS...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Ostali OSi (MacOS...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "Ostali OSi (Windows...)"
-#: any.pm:621
-#, fuzzy, c-format
-msgid "Bootloader Configuration"
-msgstr "Konfiguracija stila boota"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -364,271 +345,321 @@ msgstr ""
"Ovo su trenutne opcije u vašem boot meniju.\n"
"Možete dodati nove ili promijeniti postojeće."
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr ""
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Upozorenje"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr ""
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "pristup X programima"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "pristup rpm alatima"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "dozvoli \"su\""
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr "pristup administrativnim datotekama"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "pristup mrežnim alatima"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "pristup alatima za kompajliranje"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(već dodan %s)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "Molim navedite korisničko ime"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
-msgstr "Korisničko ime smije sadržati samo mala slova, brojeve, `-' i `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
+msgstr ""
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "Korisničko ime je predugačko"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "Ovo korisničko ime je već dodano"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "Korisnički ID"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "Grupni ID"
-#: any.pm:817
+#: any.pm:1086
#, c-format
msgid "%s must be a number"
msgstr "Opcija %s mora biti broj"
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
-msgstr "%s mora biti veće od 500. Svejedno prihvati?"
+msgid "%s should be above 1000. Accept anyway?"
+msgstr "%s mora biti veće od 1000. Svejedno prihvati?"
-#: any.pm:822
-#, fuzzy, c-format
+#: any.pm:1091
+#, c-format
msgid "User management"
-msgstr "Korisničko ime"
+msgstr ""
-#: any.pm:828 authentication.pm:237
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr ""
+
+#: any.pm:1099 authentication.pm:236
#, c-format
msgid "Set administrator (root) password"
msgstr "Podesite administratorsku (root) šifru"
-#: any.pm:833
-#, fuzzy, c-format
+#: any.pm:1105
+#, c-format
msgid "Enter a user"
msgstr ""
-"Unesite korisnika\n"
-"%s"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Ikona"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Pravo ime"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "Korisničko ime"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Shell"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr ""
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
msgstr "Molim sačekajte, dodajem medije..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "Autologin"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr "Mogu podesiti vaš računar da automatski prijavi jednog korisnika."
-#: any.pm:916
+#: any.pm:1251
#, c-format
msgid "Use this feature"
msgstr "Koristi ovu mogućnost"
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Izaberite default korisnika:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "Izaberite window manager koji će se pokretati:"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
msgstr "Napomene izdanja"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Zatvori"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Licencni ugovor"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Izlaz"
-#: any.pm:1017
-#, fuzzy, c-format
+#: any.pm:1343
+#, c-format
msgid "Do you accept this license ?"
-msgstr "Imate li neki drugi?"
+msgstr ""
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Prihvatam"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Ne prihvatam"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "Molim izaberite jezik koji ćete koristiti"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"Mandriva Linux podržava više jezika. Izaberite jezike koje\n"
-"želite instalirati. Oni će biti dostupni kada se završi vaša\n"
-"instalacija i restartujete vaš sistem."
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
#, c-format
-msgid "Multi languages"
-msgstr "Višejezična podrška"
+msgid "Multiple languages"
+msgstr ""
+
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr ""
-#: any.pm:1087 any.pm:1119
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr "Kompatibilnost sa starim (ne-UTF8) kodiranjem"
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "Svi jezici"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "Izbor jezika"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "Država / Oblast"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
msgstr "Molim izaberite vašu državu"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "Ovdje je puna lista svih dostupnih država"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "Ostale države"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Više opcija"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr "Metod unosa:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Ništa"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "Bez dijeljenja"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "Dozvoli svim korisnicima"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Vlastito"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -646,7 +677,7 @@ msgstr ""
"\"Izaberi korisnike\" vam omogućuje da podesite ovu opciju zasebno za svakog "
"korisnika.\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
@@ -655,7 +686,7 @@ msgstr ""
"NFS: tradicionalni Unix sistem za dijeljenje datoteka, koji ima slabiju "
"podršku na Macintoshu i Windowsu."
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
@@ -664,7 +695,7 @@ msgstr ""
"SMB: sistem za dijeljenje datoteka koji koristi Windows, Mac OS X i većina "
"modernih Linux sistema."
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
@@ -672,12 +703,12 @@ msgstr ""
"Možete eksportovati koristeći NFS ili Sambu. Molim izaberite sistem koji "
"želite koristiti."
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "Pokreni userdrake"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
@@ -686,62 +717,115 @@ msgstr ""
"Dijeljenje na nivou korisnika koristi grupu \"fileshare\". \n"
"Možete dodavati korisnike u ovu grupu pomoću userdrake-a."
-#: any.pm:1421
-#, fuzzy, c-format
+#: any.pm:1768
+#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
msgstr ""
-"Trebate se odjaviti i ponovo prijaviti na sistem kako bi izmjene stupile na "
-"snagu"
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr ""
"Trebate se odjaviti i ponovo prijaviti na sistem kako bi izmjene stupile na "
"snagu"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "Vremenska zona"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Koja je vaša vremenska zona?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr "Postavke datuma, sata i vremenske zone"
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr "Koje je vrijeme tačnije?"
-#: any.pm:1490
+#: any.pm:1837
#, c-format
msgid "%s (hardware clock set to UTC)"
msgstr "%s (hardverski sat podešen na UTC)"
-#: any.pm:1491
+#: any.pm:1838
#, c-format
msgid "%s (hardware clock set to local time)"
msgstr "%s (hardverski sat podešen na lokalno vrijeme)"
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "NTP server"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "Automatska sinhronizacija vremena (koristeći NTP)"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "URL mirrora?"
+
+#: any.pm:1880
+#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "URL mora počinjati sa ftp:// ili http://"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr "Kontaktiram %s web stranicu da bih saznao listu dostupnih mirrora..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr "Nisam uspio kontaktirati %s web stranicu radi liste dostupnih mirrora"
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Izaberite mirror sa kojeg će biti dobavljeni paketi"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Odustani"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "Auto prepoznavanje"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "Navedi opcije"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "Bootloader"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -762,7 +846,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr "Smart Card"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Windows domena"
@@ -772,12 +856,12 @@ msgstr "Windows domena"
msgid "Kerberos 5"
msgstr ""
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "Lokalna datoteka:"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
@@ -785,12 +869,12 @@ msgstr ""
"Koristite \"lokalno\" za provjeru identiteta i informacije o korisnicima u "
"lokalnoj datoteci"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
@@ -800,12 +884,12 @@ msgstr ""
"LDAP je sistem koji objedinjuje određene vrste informacija u vašoj "
"organizaciji."
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
@@ -814,12 +898,12 @@ msgstr ""
"Omogućuje vam da pokrećete grupu računara u istoj Network Information "
"Service domeni sa zajedničkim datotekama šifara i grupa."
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Windows domena:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
@@ -828,217 +912,217 @@ msgstr ""
"Winbind omogućuje dobavljanje informacija o korisnicima i provjeru "
"identiteta putem Windows domene."
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr ""
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr "Sa Kerberosom i LDAPom za autenticiranje na Active Directory server "
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
-#, fuzzy, c-format
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr "Potrebna je autentikacija na domeni"
+msgstr ""
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "LDAP Server"
-#: authentication.pm:113 authentication.pm:168
-#, fuzzy, c-format
+#: authentication.pm:112 authentication.pm:167
+#, c-format
msgid "Base dn"
-msgstr "LDAP Base dn"
+msgstr ""
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr ""
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr ""
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr ""
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr ""
-#: authentication.pm:120 authentication.pm:173
-#, fuzzy, c-format
+#: authentication.pm:119 authentication.pm:172
+#, c-format
msgid "Use anonymous BIND "
-msgstr "Koristi anonimni BIND "
+msgstr ""
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
msgstr ""
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr ""
-#: authentication.pm:123 authentication.pm:175
-#, fuzzy, c-format
+#: authentication.pm:122 authentication.pm:174
+#, c-format
msgid "Bind Password "
-msgstr "Šifra"
+msgstr ""
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr ""
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "Šifra"
+msgstr ""
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "Grupni ID"
+msgstr ""
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr ""
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "Pravo ime"
+msgstr ""
-#: authentication.pm:148
-#, fuzzy, c-format
+#: authentication.pm:147
+#, c-format
msgid "KDCs Servers"
-msgstr "LDAP Server"
+msgstr ""
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr ""
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr ""
-#: authentication.pm:156
-#, fuzzy, c-format
+#: authentication.pm:155
+#, c-format
msgid "Use local file for users information"
-msgstr "Koristi libsafe za servere"
+msgstr ""
-#: authentication.pm:157
-#, fuzzy, c-format
-msgid "Use Ldap for users information"
-msgstr "Informacije o hard disku"
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr ""
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr ""
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "NIS domen"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "NIS server"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "Domena"
+msgstr ""
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr "Active Directory Realm "
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "NIS domen"
+msgstr ""
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "LDAP Server"
+msgstr ""
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Metod autentikacije"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "Authentication method"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Bez šifre"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr ""
@@ -1046,31 +1130,31 @@ msgstr ""
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "Ne mogu koristiti broadcast bez NIS domene"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Izaberite datoteku"
-#: authentication.pm:897
-#, fuzzy, c-format
+#: authentication.pm:882
+#, c-format
msgid "Domain Windows for authentication : "
-msgstr "Potrebna je autentikacija na domeni"
+msgstr ""
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "Korisničko ime domenskog administratora"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Administratorska šifra domena"
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1085,42 +1169,47 @@ msgstr ""
"sacekajte da se pokrene podrazumjevani OS.\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO sa tekstualnim menijem"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 sa grafičkim menijem"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 sa tekstualnim menijem"
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr "GRUB sa grafičkim menijem"
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr "GRUB sa tekstualnim menijem"
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr ""
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
+msgid "U-Boot/Extlinux with text menu"
msgstr ""
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "nema dovoljno prostora u /boot"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "Ne možete instalirati bootloader na %s particiju\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
@@ -1129,65 +1218,66 @@ msgstr ""
"Konfiguracija vašeg bootloadera mora biti ažurirana pošto su particije "
"renumerisane"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
"Ne mogu ispravno instalirati bootloader. Morate pokrenuti \"rescue\" sistem "
"i izabrati \"%s\""
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "Reinstalacija bootloadera"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "B"
msgstr "B"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "KB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "MB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "GB"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "TB"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr ""
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d minuta"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 minuta"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d sekundi"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr "naredba %s nedostaje"
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1206,12 +1296,12 @@ msgstr ""
msgid "New"
msgstr "Novi"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Demontiraj"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Montiraj"
@@ -1221,43 +1311,44 @@ msgstr "Montiraj"
msgid "Server"
msgstr "Server"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Tačka montiranja"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Opcije"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Pobriši"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Gotovo"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Greška"
@@ -1272,80 +1363,71 @@ msgstr "Molim unesite URL WebDAV servera"
msgid "The URL must begin with http:// or https://"
msgstr "URL mora počinjati sa http:// ili https://"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Upozorenje"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Da li želite kliknuti na ovo dugme?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr ""
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Server:"
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Tačka montiranja: "
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Opcije: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "Particioniranje"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Pročitajte pažljivo"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "Predlažemo da najprije napravite backup vaših podataka"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Izlaz"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Nastavak"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Pomoć"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1356,141 +1438,132 @@ msgstr ""
"Predlažem da najprije promijenite veličinu te particije\n"
"(kliknite na nju, zatim na \"Promijeni veličinu\")"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "Kliknite na particiju"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Detalji"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "Nije pronađen nijedan hard disk"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Nepoznat"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
-msgid "Ext3"
-msgstr "Izlaz"
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
msgid "XFS"
-msgstr "HFS"
+msgstr ""
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Swap"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Ostalo"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Prazno"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Tipovi file sistema:"
-#: diskdrake/hd_gtk.pm:407
+#: diskdrake/hd_gtk.pm:461
#, c-format
msgid "This partition is already empty"
msgstr "Ova particija je već prazna"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "Najprije koristite \"Demontiraj\""
-#: diskdrake/hd_gtk.pm:416
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:470
+#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "Koristi \"%s\" umjesto toga"
+msgstr ""
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Vrsta"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Izaberi drugu particiju"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Izaberi particiju"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "Još"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
#, c-format
msgid "Confirmation"
msgstr "Potvrda"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Svejedno nastavljate?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Izlaz bez spašavanja"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Izlazite bez pisanja tabele particija?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "Želite li spasiti izmjene u /etc/fstab ?"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr "Moraćete rebootati da bi izmjene tabele particija stupile na snagu"
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1501,42 +1574,42 @@ msgstr ""
"U suprotnom tačka montiranja %s neće biti zapisana u fstab.\n"
"Da svejedno izađem?"
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Obriši sve"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Auto alokacija"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "Prebaci u normalni mod"
+msgid "Normal mode"
+msgstr "Normalni mod"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "Prebaci u ekspertni mod"
+msgid "Expert mode"
+msgstr "Ekspertni mod"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "Informacije o hard disku"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "Sve primarne particije su u upotrebi"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "Ne mogu dodati više particija"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
@@ -1545,120 +1618,145 @@ msgstr ""
"Da biste imali još particija, molim pobrišite jednu kako bi se mogla "
"kreirati extended particija"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Ponovo učitaj tabelu particija"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Detaljne informacije"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
-msgstr ""
+msgstr "Video"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Smanji"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Formatiraj"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Dodaj na RAID"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Dodaj na LVM"
-#: diskdrake/interactive.pm:410
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:417
+#, c-format
msgid "Use"
-msgstr "Korisnički ID"
+msgstr ""
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Obriši"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Ukloni sa RAIDa"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Ukloni sa LVMa"
-#: diskdrake/interactive.pm:415
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:422
+#, c-format
msgid "Remove from dm"
-msgstr "Ukloni sa LVMa"
+msgstr ""
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "Modificiraj RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Koristi za loopback"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Kreiraj"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Prebaci datoteke na novu particiju"
+msgstr ""
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Napravi novu particiju"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Početni sektor: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Veličina u MB: "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Tip datotečnog sistema: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Preference: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "Naziv logičkog volumena "
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr ""
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr ""
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Ključ enkripcije (još jednom)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Ključevi enkripcije se ne poklapaju"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr ""
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
@@ -1667,12 +1765,12 @@ msgstr ""
"Najprije uklonite primarnu particiju i napravite extended (proširenu) "
"particiju."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "Ukloniti loopback datoteku?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
@@ -1680,169 +1778,181 @@ msgstr ""
"Nakon promjene tipa particije %s, svi podaci na toj particiji će biti "
"izgubljeni"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Izmjena tipa particije"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Koji datotečni sistem želite?"
-#: diskdrake/interactive.pm:594
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:650
+#, c-format
msgid "Switching from %s to %s"
-msgstr "Prebacujem sa ext2 na ext3"
+msgstr ""
-#: diskdrake/interactive.pm:624
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:685
+#, c-format
msgid "Set volume label"
-msgstr "Naziv za disk/particiju"
+msgstr ""
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr "Naziv za disk/particiju"
-#: diskdrake/interactive.pm:630
+#: diskdrake/interactive.pm:691
#, c-format
msgid "Label:"
msgstr "Naziv:"
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "Gdje želite montirati loopback datoteku %s?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "Gdje želite montirati uređaj %s?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"Ne mogu izmjeniti tačku montiranja jer se ova particija koristi za "
"loopback.\n"
"Najprije uklonite loopback"
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "Gdje želite montirati uređaj %s?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "Mijenjam veličinu"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "Izračunavam granice FAT filesistema"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "Ovoj particiji ne možete mijenjati veličinu"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "Svi podaci na ovoj particiji bi trebali biti backupovani"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr ""
"Nakon promjene veličine particije %s, svi podaci na njoj će biti izgubljeni"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Izaberite novu veličinu"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "Nova veličina u MB: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr "Minimalna veličina: %s MB"
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr "Maksimalna veličina: %s MB"
-#: diskdrake/interactive.pm:805
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
+#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-"Da bi se osigurao integritet podataka nakon promjene veličine, \n"
-"prilikom idućeg pokretanja Windows(TM) biće izvršena provjera datotečnog "
-"sistema"
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Ključ za kodiranje datotečnog sistema"
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "Izaberite vaš ključ za kodiranje datotečnog sistema"
+msgstr ""
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "Ključ enkripcije"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr ""
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Izaberite postojeći RAID na koji ćete dodati"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "novi"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Izaberite postojeći LVM na koji ćete dodati"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr ""
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr ""
+
+#: diskdrake/interactive.pm:1058
#, c-format
-msgid "LVM name?"
-msgstr "Naziv LVMa?"
+msgid "Setting up LVM"
+msgstr ""
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
@@ -1852,120 +1962,120 @@ msgstr ""
"Želite li premjestiti korištene fizičke extents sa ovog volumena na druge "
"volumene?"
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr "Pomjeram fizičke extents"
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "Ova particija se ne može koristiti za loopback"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Loopback"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Naziv loopback datoteke: "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "Dajte naziv datoteke"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr "Datoteku već koristi drugi loopback, izaberite neku drugu"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Datoteka već postoji. Želite li je koristiti?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "Opcije montiranja"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "Razno"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "uređaj"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "nivo"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
msgstr "veličina chunka u KiB"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "Budite oprezni: ova operacija je opasna."
-#: diskdrake/interactive.pm:1109
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1250
+#, c-format
msgid "Partitioning Type"
-msgstr "Particioniranje"
+msgstr ""
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "Koju vrstu particioniranja?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr ""
"Biće potrebno da rebootate prije nego što izmjene mogu stupiti na snagu"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "Tabela particija za uređaj %s će biti zapisana na disk"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "Formatiram particiju %s"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr ""
"Nakon formatiranja particije %s, svi podaci na toj particiji će biti "
"izgubljeni"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "Provjeri loše blokove?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "Prebaci datoteke na novu particiju"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Sakrij datoteke"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1982,128 +2092,127 @@ msgstr ""
"na to mjesto ili da ih ostavite gdje jesu (u kojem slučaju će oni biti "
"sakriveni sadržajem montirane particije)"
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr "Premještam datoteke na novu particiju"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "Kopiram %s"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "Uklanjam %s"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "particija %s je od sada poznata kao %s"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr "Oznake particija su promijenjene: "
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Uređaj: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr "Naziv volumena: "
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr ""
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "DOS slovo uređaja: %s (pretpostavka)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Vrsta: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Ime: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Početak: sector %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Veličina: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s sektora"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "Cilindar %d do %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr "Broj logičkih extents: %d\n"
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Formatirana\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Nije formatirana\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Montirana\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1446
+#, c-format
msgid "Encrypted"
-msgstr "Ključ enkripcije"
+msgstr ""
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr ""
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr ""
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2112,7 +2221,7 @@ msgstr ""
"Loopback datoteka(e):\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2121,27 +2230,27 @@ msgstr ""
"Particija na kojoj se nalazi sistem\n"
" (za MS-DOS/Windows)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Nivo %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
msgstr "Veličina chunka %d KiB\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "RAID-diskovi %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Naziv loopback datoteke: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2154,7 +2263,7 @@ msgstr ""
"particija Driver particija. Vjerovatno\n"
"biste je trebali ostaviti na miru.\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2167,69 +2276,64 @@ msgstr ""
"particija je za\n"
"višestruki boot vašeg sistema.\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr ""
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Samo za čitanje"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Veličina: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Geometrija: %s cilindara, %s glava, %s sektora\n"
-#: diskdrake/interactive.pm:1351
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Ime: "
+
+#: diskdrake/interactive.pm:1492
+#, c-format
msgid "Medium type: "
-msgstr "Tip datotečnog sistema: "
+msgstr ""
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "LVM-diskovi %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Tip tabele particija: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "na kanalu %d id %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "Izaberite vaš ključ za kodiranje datotečnog sistema"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
"Ovaj ključ enkripcije je previše jednostavan (mora imati najmanje %d "
"karaktera)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "Ključevi enkripcije se ne poklapaju"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Ključ enkripcije (još jednom)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Algoritam enkripcije"
@@ -2239,17 +2343,9 @@ msgstr "Algoritam enkripcije"
msgid "Change type"
msgstr "Promijeni tip"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Odustani"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr "Ne mogu se prijaviti koristeći korisničko ime %s (pogrešna šifa?)"
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
@@ -2292,40 +2388,40 @@ msgstr "Traži servere"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "Traži nove servere"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "Paket %s treba biti instaliran. Da li ga želite instalirati?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr "Ne mogu instalirati paket %s!"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "Nedostaje obavezan paket %s"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Sljedeći paketi trebaju biti instalirani:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "Instaliram pakete..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "Uklanjam pakete..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
@@ -2335,32 +2431,39 @@ msgstr ""
"kreirati novi file sistemi. Molim provjerite vaš hardware i pronađite uzrok "
"greške"
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
+#, c-format
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "Morate imati ESP FAT32 particiju montiranu na /boot/EFI"
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "Morate imati FAT particiju montiranu na /boot/efi"
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "Kreiram i formatiram datoteku %s"
-#: fs/format.pm:119
-#, fuzzy, c-format
+#: fs/format.pm:202
+#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "Ne znam kako formatirati %s kao tip %s"
+msgstr ""
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "%s formatiranje %s nije uspjelo"
+msgstr ""
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "Ne znam kako formatirati %s kao tip %s"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s formatiranje %s nije uspjelo"
@@ -2375,30 +2478,30 @@ msgstr "Kružno montiranje %s\n"
msgid "Mounting partition %s"
msgstr "Montiram particiju %s"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "montiranje particije %s u direktoriju %s nije uspjelo"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "Provjeravam %s"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "greška u demontiranju %s: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "Uključujem swap particiju %s"
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
-msgstr "Koristi šifrovani datotečni sistem"
+msgid "Enable POSIX Access Control Lists"
+msgstr ""
#: fs/mount_options.pm:116
#, c-format
@@ -2414,40 +2517,38 @@ msgstr ""
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
"Ne ažuriraj vrijeme pristupa inode-u na ovom sistemu\n"
"(npr. radi bržeg pristupa spool-u na news serverima)."
#: fs/mount_options.pm:123
-#, fuzzy, c-format
+#, c-format
msgid ""
"Update inode access times on this filesystem in a more efficient way\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
-"Ne ažuriraj vrijeme pristupa inode-u na ovom sistemu\n"
-"(npr. radi bržeg pristupa spool-u na news serverima)."
#: fs/mount_options.pm:126
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
"Može se montirati samo eksplicitno (tj.,\n"
"opcija -a neće montirati i ovaj sistem)."
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr "Nemoj interpretirati karakter ili blok uređaje na datotečnom sistemu."
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
"Ne dozvoli izvršenje binarnih datoteka na montiranom\n"
@@ -2467,22 +2568,22 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr "Montiraj datotečni sistem samo za čitanje."
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr "Sav U/I na datotečni sistem se treba izvršavati sinhrono."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr "Dozvoli svakom korisniku da (de)montira datotečni sistem."
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr "Dozvoli običnom korisniku da montira datotečni sistem."
#: fs/mount_options.pm:147
@@ -2507,32 +2608,32 @@ msgstr "Daj dozvolu za pisanje običnim korisnicima"
msgid "Give read-only access to ordinary users"
msgstr "Daj dozvolu za čitanje običnim korisnicima"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Dvostruka tačka montiranja %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "Nema dostupnih particija"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "Pretražujem particije da nađem tačke montiranja"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Izaberite tačke montiranja"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Izaberite particije koje želite formatirati"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2541,23 +2642,23 @@ msgstr ""
"Nisam uspio provjeriti datotečni sistem %s. Želite li popraviti greške? "
"(pažnja, možete izgubiti podatke)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr "Nemam dovoljno swap prostora da dovršim instalaciju, molim dodajte još"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"Morate imati root particiju.\n"
"Za ovo, napravite jednu particiju (ili kliknite na neku od postojećih).\n"
"Zatim izaberite opciju \"Tačka montiranja\" i unesite vrijednost \"/\""
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2568,94 +2669,58 @@ msgstr ""
"\n"
"Da li da nastavim?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "Koristi slobodan prostor"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "Nema dovoljno slobodnog prostora za pravljenje novih particija"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "Koristi postojeću particiju"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "Nemate nijednu postojeću particiju za upotrebu"
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Koristi Microsoft Windows® particiju za loopback"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Koju particiju želite koristiti za Linux4Win?"
-
-#: fs/partitioning_wizard.pm:108
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Choose the sizes"
-msgstr "Izaberite veličine"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "Veličina root particije u MB: "
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Veličina swap particije u MB: "
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "Izračunavam veličinu Microsoft Windows® particije"
-#: fs/partitioning_wizard.pm:119
+#: fs/partitioning_wizard.pm:201
#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-"Ne postoji nijedna FAT particija za upotrebu kao loopback (ili nije ostalo "
-"dovoljno prostora)"
-
-#: fs/partitioning_wizard.pm:127
-#, fuzzy, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "Koristi slobodan prostor na Microsoft Windows® particiji"
+msgstr ""
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Kojoj particiji želite promijeniti veličinu?"
-#: fs/partitioning_wizard.pm:143
-#, c-format
-msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
-msgstr ""
-"FAT resizer ne može izmijeniti vašu particiju, \n"
-"došlo je do sljedeće greške: %s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "Izračunavam veličinu Microsoft Windows® particije"
-
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
"Your Microsoft Windows® partition is too fragmented. Please reboot your "
"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+"the %s installation."
msgstr ""
"Vaša Microsoft Windows® particija je previše fragmentirana. Molim "
"restartujte vaš računar pod Microsoft Windows®, pokrenite program \"defrag\","
-"zatim ponovo pokrenite Mandriva Linux instalaciju."
+"zatim ponovo pokrenite %s instalaciju."
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:215
+#, c-format
+msgid "Failed to find the partition to resize (%d choices)"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2666,8 +2731,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2681,97 +2746,88 @@ msgstr ""
"\n"
"Budite pažljivi, ova operacija je opasna. Ako to već niste uradili, najprije "
"napustite instalaciju, izvršite naredbu \"chkdsk c:\" iz Command Prompt-a "
-"pod Windowsom (obratite pažnju da izvršavanje grafičkog programa \"scandisk"
-"\" nije dovoljno, trebate koristiti \"chkdsk\" u komandnom upitu!), "
-"opcionalno pokrenite \"defrag\", zatim ponovo pokrenite instalaciju. Također "
-"biste trebali spasiti sve podatke.\n"
+"pod Windowsom (obratite pažnju da izvršavanje grafičkog programa "
+"\"scandisk\" nije dovoljno, trebate koristiti \"chkdsk\" u komandnom "
+"upitu!), opcionalno pokrenite \"defrag\", zatim ponovo pokrenite "
+"instalaciju. Također biste trebali spasiti sve podatke.\n"
"\n"
"\n"
"Kada ste sigurni, kliknite na \"%s\"."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Dalje"
-#: fs/partitioning_wizard.pm:168
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:237
+#, c-format
msgid "Partitionning"
-msgstr "Particioniranje"
+msgstr ""
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr ""
"Koju veličinu želite da sačuvate za Microsoft Windows® na particiji %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Veličina"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "Smanjujem Microsoft Windows® particiju"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "Smanjivanje FAT particije nije uspjelo: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"Da bi se osigurao integritet podataka nakon promjene veličine, \n"
-"prilikom idućeg pokretanja Windows(TM) biće izvršena provjera datotečnog "
-"sistema"
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr ""
"Ne postoji nijedna FAT particija za promjenu veličine (ili nije ostalo "
"dovoljno prostora)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Ukloni Microsoft Windows®"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Erase and use entire disk"
msgstr "Pobriši čitav disk"
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
msgstr ""
-"Imate više od jednog hard diska. Na koji od njih želite instalirati Linux?"
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr ""
"SVE postojeće particije i podaci na njima će biti izgubljeni na disku %s"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "Ručno particioniranje diska"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Koristi fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2780,55 +2836,70 @@ msgstr ""
"Sada možete particionirati %s.\n"
"Kada završite, ne zaboravite spasiti naredbom 'w'"
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
#, c-format
-msgid "I can not find any room for installing"
+msgid "Ext2/3/4"
+msgstr ""
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
+#, c-format
+msgid "I cannot find any room for installing"
msgstr "Ne mogu naći dovoljno prostora za instalaciju"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "DrakX Particioni čarobnjak je našao sljedeća rješenja:"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr ""
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Particioniranje nije uspjelo: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr "Ne možete koristiti JFS za particije manje od 16MB"
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "Ne možete koristiti ReiserFS za particije manje od 32MB"
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "jednostavno"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "sa /usr"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "server"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr "BIOS softverski RAID je pronađen na diskovima %s. Da ga aktiviram?"
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2844,79 +2915,54 @@ msgstr ""
"\n"
"Slažete li se sa gubitkom svih particija?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Tačke montiranja moraju počinjati sa /"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "Tačka montiranja se treba sastojati samo od brojeva i slova"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Već postoji particija sa tačkom montiranja %s\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"Izabrali ste softversku RAID particiju kao root (/).\n"
-"Nijedan bootloader nije u mogućnosti da rukuje sa ovim bez /boot particije.\n"
-"Molim kasnije dodajte /boot particiju"
-#: fsedit.pm:437
+#: fsedit.pm:478 fsedit.pm:489
#, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr ""
-"Ne možete koristiti LVM logički volumen za tačku montiranja %s pošto on "
-"obuhvata fizičke volumene"
-
-#: fsedit.pm:439
-#, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
-msgstr ""
-"Izabrali ste LVM logički volumen kao root (/).\n"
-"Nijedan bootloader nije u mogućnosti da rukuje sa ovim ako se taj volumen "
-"prostire preko više fizičkih volumena.\n"
-"Trebali biste najprije napraviti /boot particiju"
+msgid "You cannot use an encrypted filesystem for mount point %s"
+msgstr "Ne možete koristiti šifrovani datotečni sistem za tačku montiranja %s"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Ovaj direktorij treba ostati unutar korijenskog file sistema"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
-"Potreban vam je pravi file sistem (ext2/ext3, reiserfs, xfs ili jfs) za ovu "
+"Potreban vam je pravi file sistem (ext2/3/4, reiserfs, xfs ili jfs) za ovu "
"tačku montiranja\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr "Ne možete koristiti šifrovani datotečni sistem za tačku montiranja %s"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
msgstr "Nema dovoljno prostora za auto-alokaciju"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "Nemam šta da radim"
@@ -2926,476 +2972,406 @@ msgstr "Nemam šta da radim"
msgid "SATA controllers"
msgstr "SATA kontroleri"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "RAID kontroleri"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "(E)IDE/ATA kontroleri"
-#: harddrake/data.pm:92
-#, fuzzy, c-format
+#: harddrake/data.pm:93
+#, c-format
msgid "Card readers"
-msgstr "Model kartice:"
+msgstr ""
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Firewire kontroleri"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "PCMCIA kontroleri"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "SCSI kontroleri"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "USB kontroleri"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "USB portovi"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "SMBus kontroleri"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Mostovi (bridges) i sistemski kontroleri"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Disketa"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Hard Disk"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr "USB uređaji za smještaj podataka"
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "CDROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "CD/DVD pržilica"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "Traka"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "AGP kontroleri"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Video kartica"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr "DVB kartica"
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "TV kartica"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "Drugi multimedijalni uređaj"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "Zvučna kartica"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "Web kamera"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "Procesori"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "ISDN adapteri"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr "USB zvučni uređaji"
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr "Radio kartice"
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr "ATM mrežne kartice"
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr "WAN mrežne kartice"
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr "Bluetooth uređaji"
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "Ethernet kartica"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Modem"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "ADSL adapteri"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Memorija"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Štampač"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr "Game port kontroleri"
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Joystick"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Tastatura"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr "Tablet i ekran osjetljiv na dodir"
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Miš"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr ""
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "UPS"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Skener"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Nepoznat/Ostali"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "cpu # "
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, fuzzy, c-format
+msgid "Couldn't install the required packages"
+msgstr "Ne mogu instalirati paket %s!"
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
+#, c-format
+msgid "Please check the repositories are correctly configured"
+msgstr ""
+
+#: harddrake/sound.pm:462
+#, c-format
+msgid "No known driver"
+msgstr "Nema nijedan poznat drajver"
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr "Nema poznatih drajvera za vašu zvučnu karticu (%s)"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr ""
+"Trebate se odjaviti i ponovo prijaviti na sistem kako bi izmjene stupile na "
+"snagu"
+
+#: harddrake/sound.pm:522
+#, c-format
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
+
+#: harddrake/sound.pm:527
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Molim sačekajte... Primjenjujem konfiguraciju"
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "Traži nove servere"
+
+#: harddrake/sound.pm:551
#, c-format
-msgid "Enable PulseAudio"
+msgid "PulseAudio"
msgstr ""
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:552
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
+msgid "PulseAudio with Glitch-Free mode"
msgstr ""
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:553
#, c-format
-msgid "Enable user switching for audio applications"
+msgid "PipeWire with WirePlumber"
msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:554
#, c-format
-msgid "Use Glitch-Free mode"
+msgid "PipeWire with PipeWire Media Session"
msgstr ""
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
msgstr ""
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr "Kako ukloniti problem?"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr ""
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "Nema alternativnog drajvera"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
"currently uses \"%s\""
msgstr ""
-"Nema nijedan poznat OSS/ALSA alternativni drajver za vašu zvučnu karticu (%"
-"s) koja trenutno koristi \"%s\""
+"Nema nijedan poznat OSS/ALSA alternativni drajver za vašu zvučnu karticu "
+"(%s) koja trenutno koristi \"%s\""
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Podešavanje zvuka"
-#: harddrake/sound.pm:407
-#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Ovdje možete izabrati alternativni drajver (ili OSS ili ALSA) za vašu zvučnu "
-"karticu (%s)."
-
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"\n"
-"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
-"\n"
-"\n"
-"Vaša kartica trenutno koristi %s \"%s\" drajver (uobičajeni drajver za vašu "
-"karticu je \"%s\")"
+msgid "Sound troubleshooting"
+msgstr "Rješavanje problema sa zvukom"
-#: harddrake/sound.pm:414
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"OSS (Open Sound System) je bio prvi API za zvuk. To je API neovisan od "
-"operativnog sistema (dostupan je na većini UNIX(tm) sistema), ali je vrlo "
-"elementaran i ograničen.\n"
-"Pored toga, svi OSS drajveri ponovo izmišljaju točak.\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) je modularizovana arhitektura koja\n"
-"podržava prilično velik broj ISA, USB i PCI kartica.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"Ona takođe pruža mnogo viši API nego OSS.\n"
"\n"
-"Da biste koristili ALSA, možete koristiti:\n"
-"- stari API kompatibilan sa OSSom\n"
-"- novi ALSA API koji pruža mnoge napredne mogućnosti, ali zahtijeva upotrebu "
-"ALSA biblioteke.\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Drajver:"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"Stari \"%s\" drajver je na crnoj listi.\n"
"\n"
-"Prijavljeno je da ovaj drajver prilikom deinstalacije izaziva oops kernela.\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"Stoga će novi drajver \"%s\" biti korišten tek nakon idućeg pokretanja "
-"sistema."
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "Nema open source drajver"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"Nema slobodnih drajvera za vašu zvučnu karticu (%s), ali postoji vlasnički "
-"drajver na \"%s\"."
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "Nema nijedan poznat drajver"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "Nema poznatih drajvera za vašu zvučnu karticu (%s)"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Rješavanje problema sa zvukom"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
"\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-"Klasični način utvrđivanja bugova u zvučnom sistemu je izvršavanje\n"
-"sljedećih naredbi:\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" će vam reći koji drajver inače koristi\n"
-"vaša kartica\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" će vam reći koji drajver je\n"
-"trenutno u upotrebi\n"
"\n"
-"- sa \"/sbin/lsmod\" možete provjeriti da li je modul (drajver) učitan\n"
-"ili ne\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" i \"/sbin/chkconfig --list alsa\" vam\n"
-"govore da li su servisi sound i alsa podešeni da se pokreću na\n"
-"initlevel 3\n"
"\n"
-"- \"aumix -q\" će vam reći da li je zvuk utišan (muted) ili ne\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" vam govori koji program koristi zvučnu "
-"karticu.\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "Dozvoli da sam odaberem drajver"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Slobodan izbor drajvera"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"Ako stvarno mislite da znate koji drajver je odgovarajući za vašu karticu\n"
-"možete odabrati jedan sa gornje liste.\n"
-"\n"
-"Trenutni drajver za vašu \"%s\" zvučnu karticu je \"%s\""
#: harddrake/v4l.pm:12
#, c-format
@@ -3423,7 +3399,7 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
"Za većinu modernih TV kartica, bttv modul Linux kernela automatski "
"prepoznaje odgovarajuće parametre.\n"
@@ -3440,70 +3416,73 @@ msgstr "Model kartice:"
msgid "Tuner type:"
msgstr "Vrsta tunera:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "U redu"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Da"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "Ne"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Izaberi datoteku"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Dodaj"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Izmijeni"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Kraj"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Nazad"
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "Nije izabrana datoteka"
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "Izabrali ste direktorij, a ne datoteku"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "Nema tog direktorija"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "Nema te datoteke"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr ""
@@ -3585,1248 +3564,1272 @@ msgstr "Ponovo pošalji"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Andora"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "Ujedinjeni Arapski Emirati"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Afganistan"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Antigua i Barbuda"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Anguilla"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Albanija"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Armenija"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Nizozemski Antili"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Angola"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Antarktik"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Argentina"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "Američka Samoa"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Austrija"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Australija"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Aruba"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Azerbejdžan"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Bosna i Hercegovina"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Barbados"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Bangladeš"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Belgija"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Burkina Faso"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "Bugarska"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Bahrein"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Burundi"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Benin"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Bermuda"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Bruneji"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Bolivija"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Brazil"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Bahami"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Butan"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Ostrvo Bouvet"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Bocvana"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "Bjelorusija"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Belize"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Kanada"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Kokosova ostrva"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Kongo (Kinshasa)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "Centralnoafrička Republika"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Kongo (Brazzaville)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Švicarska"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Obala Slonovače"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Cook ostrva"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Čile"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Kamerun"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "Kina"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Kolumbija"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Kostarika"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Srbija i Crna Gora"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Kuba"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Zelenortska ostrva"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Uskršnje ostrvo"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Kipar"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Češka"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Njemačka"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Džibuti"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Danska"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Dominika"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Dominikanska Republika"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Alžir"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Ekvador"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Estonija"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Egipat"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Zapadna Sahara"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Eritreja"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Španija"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Etiopija"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Finska"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Fidži"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Falklandsko otočje"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Micronesia"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Farska ostrva"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "Francuska"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Gabon"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Ujedinjeno Kraljevstvo"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Grenada"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Gruzija"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Francuska Gvajana"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Gana"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Gibraltar"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Grenland"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Gambija"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Gvineja"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Gvadalupe"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Ekvatorijalna Gvineja"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Grčka"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "South Georgia i South Sandwich ostrva"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Gvatemala"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Guam"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Gvineja Bisau"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Gvajana"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Kina (Hong Kong)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Heard ostrvo i McDonaldova ostrva"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Honduras"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Hrvatska"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Haiti"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Mađarska"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "Indonezija"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Irska"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Izrael"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Indija"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "Britansko-Indijska morska teritorija"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Irak"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Iran"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Island"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "Italija"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Jamajka"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "Jordan"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Japan"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Kenija"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Kirgistan"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Kambođa"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Kiribati"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Komori"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "Saint Kitts and Nevis"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Koreja (Sjeverna)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Koreja"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Kuvajt"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Kajmanska ostrva"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Kazahstan"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Laos"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Liban"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "Saint Lucia"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Lihtenštajn"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Šri Lanka"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Liberija"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Lesoto"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Litvanija"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Luksemburg"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Latvija"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Libija"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Maroko"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Monako"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Moldova"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Madagaskar"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Maršalova ostrva"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Makedonija"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Mali"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Myanmar"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Mongolija"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Sjeverna Marijanska ostrva"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Martinik"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Mauritanija"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Montserrat"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Malta"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Mauricijus"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Maldivi"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Malavi"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Meksiko"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Malezija"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Mozambik"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Namibija"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Nova Kaledonija"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Niger"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Norfolk ostrvo"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Nigerija"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Nikaragva"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Nizozemska"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Norveška"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Nepal"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Nauru"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Niue"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Novi Zeland"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Oman"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Panama"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Peru"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "Francuska Polinezija"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Papua Nova Gvineja"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Filipini"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Pakistan"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Poljska"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Saint Pierre and Miquelon"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Pitcairn"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Portoriko"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Palestina"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Portugal"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Paragvaj"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Palau"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Katar"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Reunion"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Rumunija"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Rusija"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Ruanda"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Saudijska Arabija"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Solomonska ostrva"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Sejšelska ostrva"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Sudan"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "Švedska"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Singapur"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Saint Helena"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Slovenija"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "Svalbard and Jan Mayen ostrva"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Slovačka"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "Sierra Leone"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "San Marino"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Senegal"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Somalija"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Surinam"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "Sao Tome i Principe"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "El Salvador"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Sirija"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Svazilend"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Turks i Caicos ostrva"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Čad"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "Francuske Južne Teritorije"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Togo"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Tajland"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Tadžikistan"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Tokelau"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Istočni Timor"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Turkmenistan"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Tunis"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Tonga"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Turska"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Trinidad i Tobago"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Tuvalu"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Tajvan"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Tanzanija"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Ukrajina"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Uganda"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "United States Minor Outlying Islands"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "SAD"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Urugvaj"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Uzbekistan"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Vatikan"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "Saint Vincent and the Grenadines"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Venecuela"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Djevičanska ostrva (Britanska)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "Djevičanska ostrva (SAD)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Vijetnam"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Vanuatu"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Wallis i Futuna"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Samoa"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Jemen"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Mayotte"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "Južna Afrika"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Zambija"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Zimbabve"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "Dobro došli u %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr "Premještanje fizičkih extents na druge fizičke volumene nije uspjela"
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr "Fizički volumen %s se još uvijek koristi"
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "Najprije ukloni logičke volumene\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr "Bootloader ne može rukovati /boot particijom na više fizičkih volumena"
+#. -PO: Only write something if needed:
#: messages.pm:11
-#, fuzzy, c-format
+#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+"Budući da prevodilac ovog teksta nije u mogućnosti da osigura pravnu\n"
+"provjeru prevedenog teksta, tekst licence je ostavljen u originalnom\n"
+"(engleskom) obliku."
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Introduction"
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
+"The operating system and the different components available in the Mageia "
+"distribution \n"
+"shall be called the \"Software Products\" hereafter. The Software Products "
+"include, but are not \n"
+"restricted to, the set of programs, methods, rules and documentation related "
+"to the operating \n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+"The operating system and the different components available in the Mageia "
"Linux distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution."
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr "1. License Agreement"
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4840,16 +4843,40 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+"Please read this document carefully. This document is a license agreement "
+"between you and \n"
+"Mageia which applies to the Software Products.\n"
+"By installing, duplicating or using the Software Products in any manner, you "
+"explicitly \n"
+"accept and fully agree to conform to the terms and conditions of this "
+"License. \n"
+"If you disagree with any portion of the License, you are not allowed to "
+"install, duplicate or use \n"
+"the Software Products. \n"
+"Any attempt to install, duplicate or use the Software Products in a manner "
+"which does not comply \n"
+"with the terms and conditions of this License is void and will terminate "
+"your rights under this \n"
+"License. Upon termination of the License, you must immediately destroy all "
+"copies of the \n"
+"Software Products."
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr "2. Limited Warranty"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4857,15 +4884,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4874,123 +4901,37 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
-"The Software Products consist of components created by different persons or "
-"entities. %s\n"
-"Most of these licenses allow you to use, duplicate, adapt or redistribute "
-"the components which \n"
-"they cover. Please read carefully the terms and conditions of the license "
-"agreement for each component \n"
-"before using any component. Any question on a component license should be "
-"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
-"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
-"All rights to the components of the Software Products belong to their "
-"respective authors and are \n"
-"protected by intellectual property and copyright laws applicable to software "
-"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
-"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
-"If any portion of this agreement is held void, illegal or inapplicable by a "
-"court judgment, this \n"
-"portion is excluded from this contract. You remain bound by the other "
-"applicable sections of the \n"
-"agreement.\n"
-"The terms and conditions of this License are governed by the Laws of "
-"France.\n"
-"All disputes on the terms of this license will preferably be settled out of "
-"court. As a last \n"
-"resort, the dispute will be referred to the appropriate Courts of Law of "
-"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
+"you."
msgstr ""
-"Budući da prevodilac ovog teksta nije u mogućnosti da osigura pravnu\n"
-"provjeru prevedenog teksta, tekst licence je ostavljen u originalnom\n"
-"(engleskom) obliku.\n"
-"\n"
-"\n"
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
-"shall be called the \"Software Products\" hereafter. The Software Products "
-"include, but are not \n"
-"restricted to, the set of programs, methods, rules and documentation related "
-"to the operating \n"
-"system and the different components of the Mandriva Linux distribution.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
-"Please read this document carefully. This document is a license agreement "
-"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
-"By installing, duplicating or using the Software Products in any manner, you "
-"explicitly \n"
-"accept and fully agree to conform to the terms and conditions of this "
-"License. \n"
-"If you disagree with any portion of the License, you are not allowed to "
-"install, duplicate or use \n"
-"the Software Products. \n"
-"Any attempt to install, duplicate or use the Software Products in a manner "
-"which does not comply \n"
-"with the terms and conditions of this License is void and will terminate "
-"your rights under this \n"
-"License. Upon termination of the License, you must immediately destroy all "
-"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Mandriva S.A. will, in no circumstances and to the extent permitted by law, "
-"be liable for any special,\n"
+"Mageia will, in no circumstances and to the extent permitted by law, be "
+"liable for any special,\n"
"incidental, direct or indirect damages whatsoever (including without "
"limitation damages for loss of \n"
"business, interruption of business, financial loss, legal fees and penalties "
"resulting from a court \n"
"judgment, or any other consequential loss) arising out of the use or "
"inability to use the Software \n"
-"Products, even if Mandriva S.A. has been advised of the possibility or "
-"occurrence of such \n"
+"Products, even if Mageia has been advised of the possibility or occurrence "
+"of such \n"
"damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, Mandriva S.A. or its distributors will, in "
-"no circumstances, be \n"
+"To the extent permitted by law, Mageia or its distributors will, in no "
+"circumstances, be \n"
"liable for any special, incidental, direct or indirect damages whatsoever "
"(including without \n"
"limitation damages for loss of business, interruption of business, financial "
@@ -4999,49 +4940,68 @@ msgstr ""
"loss) arising out \n"
"of the possession and use of software components or arising out of "
"downloading software components \n"
-"from one of Mandriva Linux sites which are prohibited or restricted in some "
+"from one of Mageia sites which are prohibited or restricted in some "
"countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
-"included in the Software Products.\n"
-"\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
+"included in the Software Products."
+
+#: messages.pm:68
+#, fuzzy, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr "3. The GPL License and Related Licenses"
+
+#: messages.pm:70
+#, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. Most \n"
-"of these components are governed under the terms and conditions of the GNU "
-"General Public \n"
-"Licence, hereafter called \"GPL\", or of similar licenses. Most of these "
-"licenses allow you to use, \n"
-"duplicate, adapt or redistribute the components which they cover. Please "
-"read carefully the terms \n"
-"and conditions of the license agreement for each component before using any "
-"component. Any question \n"
-"on a component license should be addressed to the component author and not "
-"to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"entities.\n"
+"Most of these licenses allow you to use, duplicate, adapt or redistribute "
+"the components which \n"
+"they cover. Please read carefully the terms and conditions of the license "
+"agreement for each component \n"
+"before using any component. Any question on a component license should be "
+"addressed to the component \n"
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr "4. Intellectual Property Rights"
+
+#: messages.pm:81
+#, c-format
+msgid ""
+"All rights to the components of the Software Products belong to their "
+"respective authors and are \n"
+"protected by intellectual property and copyright laws applicable to software "
+"programs.\n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
+"Products, as a whole or in parts, by all means and for all purposes.\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. reserves its rights to modify or adapt the Software Products, "
-"as a whole or in \n"
+"Mageia reserves its rights to modify or adapt the Software Products, as a "
+"whole or in \n"
"parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr "5. Governing Laws"
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -5053,66 +5013,32 @@ msgstr ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A. \n"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"For any question on this document, please contact Mageia."
msgstr ""
+"If any portion of this agreement is held void, illegal or inapplicable by a "
+"court judgment, this \n"
+"portion is excluded from this contract. You remain bound by the other "
+"applicable sections of the \n"
+"agreement.\n"
+"The terms and conditions of this License are governed by the Laws of "
+"France.\n"
+"All disputes on the terms of this license will preferably be settled out of "
+"court. As a last \n"
+"resort, the dispute will be referred to the appropriate Courts of Law of "
+"Paris - France.\n"
+"For any question on this document, please contact Mageia"
-#: messages.pm:112
-#, c-format
+#: messages.pm:102
+#, fuzzy, c-format
msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
"Upozorenje: Slobodan softver ne mora obavezno biti slobodan od patenata\n"
"i neki elementi slobodnog softvera mogu biti obuhvaćeni patentima u vašoj\n"
@@ -5122,89 +5048,31 @@ msgstr ""
"niste\n"
"sigurni da li se patent odnosi na vas, provjerite vaše lokalne zakone."
-#: messages.pm:120
+#: messages.pm:112
#, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:114
#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
+"For information on fixes which are available for this release of Mageia,\n"
"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"%s"
msgstr ""
-"Čestitamo, instalacija je završena.\n"
-"Uklonite boot medij i pritisnite Enter da restartujete računar.\n"
-"\n"
-"\n"
-"Za informacije o ispravkama koje su dostupne za ovu verziju Mandriva "
-"Linuxa,\n"
+"Za informacije o ispravkama koje su dostupne za ovu verziju Mageiaa,\n"
"pogledajte Errata koja je dostupna na:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Informacije o podešavanju vašeg sistema su dostupne u poglavlju\n"
-"\"Nakon instalacije\" vašeg zvaničnog Mandriva Linux Priručnika za upotrebu."
+"%s"
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
#: modules/interactive.pm:19
#, c-format
@@ -5248,18 +5116,18 @@ msgstr "Instaliram drajver za USB kontroler"
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "Instaliram drajver za firewire kontroler %s"
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "Instaliram drajver za firewire kontroler \"%s\""
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "Instaliram drajver za hard disk kontroler %s"
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "Instaliram drajver za hard disk kontroler \"%s\""
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "Instaliram drajver za Ethernet kontroler %s"
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "Instaliram drajver za Ethernet kontroler \"%s\""
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -5340,35 +5208,35 @@ msgstr ""
"Učitavanje modula %s nije uspjelo.\n"
"Želite li probati opet sa drugim parametrima?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr ""
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
msgstr ""
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Šifra za korisnika"
+msgstr ""
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "montiranje nije uspjelo: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Extended particije nisu podržane na ovoj platformi"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
@@ -5376,10 +5244,10 @@ msgstr ""
"Jedino rješenje je da pomjerite vaše primarne particije, kako bi se rupa "
"našla pored extended particija"
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
@@ -5388,111 +5256,111 @@ msgstr ""
"Test integriteta podataka nije uspio. \n"
"To znači će da pisanje bilo čega na disk rezultirati smećem."
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr ""
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr ""
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr ""
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
"configuration."
msgstr ""
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr ""
-#: pkgs.pm:269 pkgs.pm:270
-#, fuzzy, c-format
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
msgid "Unused hardware support"
-msgstr "uključi radio podršku"
+msgstr ""
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr ""
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
msgstr "Ne mogu dodati particiju na _formatiran_ RAID %s"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "Nema dovoljno particija za RAID nivo %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "Ne mogu napraviti direktorij /usr/share/sane/firmware!"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "Ne mogu napraviti link /usr/share/sane/%s!"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr "Ne mogu kopirati firmware datoteku %s u /usr/share/sane/firmware!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "Ne mogu postaviti privilegije firmware datoteke %s!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Scannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr "Ne mogu instalirati pakete koji su potrebni za dijeljenje skenera."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr "Vaši skeneri neće biti dostupni neprivilegovanim korisnicima."
#: security/help.pm:11
-#, fuzzy, c-format
+#, c-format
msgid "Accept bogus IPv4 error messages."
-msgstr "Prihvati neispravne IPv4 poruke o grešci"
+msgstr ""
#: security/help.pm:13
-#, fuzzy, c-format
+#, c-format
msgid "Accept broadcasted icmp echo."
-msgstr "Prihvati broadcast ICMP eho"
+msgstr ""
#: security/help.pm:15
-#, fuzzy, c-format
+#, c-format
msgid "Accept icmp echo."
-msgstr "Prihvati ICMP eho"
+msgstr ""
#: security/help.pm:17
-#, fuzzy, c-format
+#, c-format
msgid "Allow autologin."
-msgstr "Dozvoli/zabrani autologin."
+msgstr ""
#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
#: security/help.pm:21
-#, fuzzy, c-format
+#, c-format
msgid ""
"If set to \"ALL\", /etc/issue and /etc/issue.net are allowed to exist.\n"
"\n"
@@ -5500,50 +5368,39 @@ msgid ""
"\n"
"Else only /etc/issue is allowed."
msgstr ""
-"Ako je postavljeno \"SVE\", dozvoljeno je postojanje /etc/issue i /etc/issue."
-"net.\n"
-"\n"
-"Ako je postavljeno na NIŠTA, datoteke nisu dozvoljene.\n"
-"\n"
-"Inače, dozvoljen je samo /etc/issue."
#: security/help.pm:27
-#, fuzzy, c-format
+#, c-format
msgid "Allow reboot by the console user."
-msgstr "Dozvoli/zabrani restartovanje računara iz konzole."
+msgstr ""
#: security/help.pm:29
-#, fuzzy, c-format
+#, c-format
msgid "Allow remote root login."
-msgstr "Dozvoli prijavu kao root putem mreže"
+msgstr ""
#: security/help.pm:31
-#, fuzzy, c-format
+#, c-format
msgid "Allow direct root login."
-msgstr "Dozvoli/zabrani direktan root login."
+msgstr ""
#: security/help.pm:33
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow the list of users on the system on display managers (kdm and gdm)."
msgstr ""
-"Dozvoli/zabrani listu korisnika sistema na display manager-ima (kdm i gdm)."
#: security/help.pm:35
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow to export display when\n"
"passing from the root account to the other users.\n"
"\n"
"See pam_xauth(8) for more details.'"
msgstr ""
-"Dozvoli/zabrani izvoz ekrana kada\n"
-"proslijeđujete sa root računa drugim korisnicima.\n"
-"\n"
-"Pogledajte pam_xauth(8) za više detalja.'"
#: security/help.pm:40
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow X connections:\n"
"\n"
@@ -5553,13 +5410,6 @@ msgid ""
"\n"
"- \"None\" (no connection)."
msgstr ""
-"Dozvoli/zabrani X konekcije:\n"
-"\n"
-"- SVE (sve konekcije su dozvoljene),\n"
-"\n"
-"- LOKAL (samo konekcije sa lokalne mašine),\n"
-"\n"
-"- NIŠTA (nisu dozvoljene konekcije)."
#: security/help.pm:48
#, c-format
@@ -5572,7 +5422,7 @@ msgstr ""
#. -PO: here "ALL", "Local" and "None" are values in a pull-down menu; translate them the same as they're
#: security/help.pm:53
-#, fuzzy, c-format
+#, c-format
msgid ""
"Authorize:\n"
"\n"
@@ -5583,20 +5433,9 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
-"Autorizuj:\n"
-"\n"
-"- sve servise koje kontrolišu tcp_wrapperi (vidi hosts.deny(5) man "
-"stranicu), ako je podešeno na \"SVE\",\n"
-"\n"
-"- samo lokalne servise, ako je podešeno na \"LOKAL\",\n"
-"\n"
-"- nijedan, ako je podešeno na \"NIŠTA\".\n"
-"\n"
-"Da biste autorizovali servise koji su vam potrebni, koristite /etc/hosts."
-"allow (vidi hosts.allow(5))."
#: security/help.pm:63
#, c-format
@@ -5618,31 +5457,25 @@ msgstr ""
"da doda servis ako je prisutan u datoteci tokom instalacije paketa."
#: security/help.pm:72
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable crontab and at for users.\n"
"\n"
"Put allowed users in /etc/cron.allow and /etc/at.allow (see man at(1)\n"
"and crontab(1))."
msgstr ""
-"Uključi/isključi crontab i at za korisnike.\n"
-"\n"
-"Stavi korisnicima kojima je to dozvoljeno u /etc/cron.allow i /etc/at.allow "
-"(vidi man stranice at(1) i crontab(1))."
#: security/help.pm:77
-#, fuzzy, c-format
+#, c-format
msgid "Enable syslog reports to console 12"
-msgstr "Uključi/isključi syslog izvještaje na konzoli 12"
+msgstr ""
#: security/help.pm:79
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable name resolution spoofing protection. If\n"
"\"%s\" is true, also reports to syslog."
msgstr ""
-"Uključi/isključi zaštitu od lažiranja rezolviranja imena. Ako\n"
-"je aktivna opcija \"%s\", takođe prijavljuje u syslog."
#: security/help.pm:80
#, c-format
@@ -5650,24 +5483,24 @@ msgid "Security Alerts:"
msgstr "Sigurnosna upozorenja:"
#: security/help.pm:82
-#, fuzzy, c-format
+#, c-format
msgid "Enable IP spoofing protection."
-msgstr "Uključi zaštitu od lažiranja IP adrese"
+msgstr ""
#: security/help.pm:84
-#, fuzzy, c-format
+#, c-format
msgid "Enable libsafe if libsafe is found on the system."
-msgstr "Uključi libsafe ako libsafe postoji na vašem sistemu"
+msgstr ""
#: security/help.pm:86
-#, fuzzy, c-format
+#, c-format
msgid "Enable the logging of IPv4 strange packets."
-msgstr "Uključi logovanje čudnih IPv4 paketa"
+msgstr ""
#: security/help.pm:88
-#, fuzzy, c-format
+#, c-format
msgid "Enable msec hourly security check."
-msgstr "Uključi msec provjeru svakog sata"
+msgstr ""
#: security/help.pm:90
#, c-format
@@ -5684,19 +5517,19 @@ msgid "Use password to authenticate users."
msgstr "Koristi šifru za provjeru autentičnosti korisnika."
#: security/help.pm:94
-#, fuzzy, c-format
-msgid "Activate ethernet cards promiscuity check."
-msgstr "Aktiviraj/isključi provjeru promiskuitetnog moda Ethernet kartica."
+#, c-format
+msgid "Activate Ethernet cards promiscuity check."
+msgstr ""
#: security/help.pm:96
-#, fuzzy, c-format
+#, c-format
msgid "Activate daily security check."
-msgstr "Aktiviraj/isključi dnevnu sigurnosnu provjeru."
+msgstr ""
#: security/help.pm:98
-#, fuzzy, c-format
+#, c-format
msgid "Enable sulogin(8) in single user level."
-msgstr "Uključi/isključi sulogin(8) na jednokorisničkom nivou."
+msgstr ""
#: security/help.pm:100
#, c-format
@@ -5725,9 +5558,9 @@ msgstr ""
"velikih slova."
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "Postavlja root-ov umask."
+msgstr ""
#: security/help.pm:109
#, c-format
@@ -5861,9 +5694,9 @@ msgid "Timeout unit is second"
msgstr "Jedinica za vrijeme je sekunda"
#: security/help.pm:138
-#, fuzzy, c-format
+#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "Podešava korisnički umask."
+msgstr ""
#: security/l10n.pm:11
#, c-format
@@ -6133,11 +5966,11 @@ msgid "Standard"
msgstr "Standard"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "Sigurnost"
+msgstr ""
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6146,7 +5979,7 @@ msgid ""
"on your own."
msgstr ""
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -6155,7 +5988,7 @@ msgstr ""
"Ovo je standardna sigurnost koja je preporučena za računar koji će biti "
"korišten za spajanje na Internet kao klijent."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6172,48 +6005,48 @@ msgstr ""
"konekcije sa mnogo klijenata. Napomena: ako je vaš računar samo klijent na "
"Internetu, možda je bolje da izaberete niži nivo."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Sigurnost"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "DrakSec osnovne opcije"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "Molim izaberite nivo sigurnosti"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr ""
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "Sigurnosni administrator:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
msgstr ""
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "Pokreće ALSA zvučni sistem (Advanced Linux Sound Architecture)"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "Anacron je periodični izvršitelj programa."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6223,7 +6056,7 @@ msgstr ""
"sysloga. Takođe se može koristiti za gašenje računara kada su baterije pri "
"kraju."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6232,7 +6065,22 @@ msgstr ""
"Izvršava naredbe zakazane putem at komande u zadato vrijeme,\n"
"te pokreće programe u pozadini kada je računar neopterećen."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr ""
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr ""
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6244,18 +6092,18 @@ msgstr ""
"zada korisnik. Vixie cron dodaje veći broj mogućnosti osnovnom\n"
"UNIX cronu, uključujući bolju sigurnost i moćnije opcije za podešavanje."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr ""
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6266,7 +6114,20 @@ msgstr ""
"datoteka promijeni.\n"
"FAM koriste GNOME i KDE grafičke okoline."
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6278,12 +6139,12 @@ msgstr ""
"Midnight Commander. On također omogućuje konzolne isjeci/umetni operacije\n"
"pomoću miša i uključuje podršku za pop-up menije na konzoli."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
@@ -6292,7 +6153,7 @@ msgstr ""
"HardDrake ispituje hardware i eventualno podešava novi ili\n"
"izmjenjeni hardware."
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
@@ -6300,7 +6161,7 @@ msgstr ""
"Apache je World Wide Web server. Koristi se za posluživanje HTML\n"
"datoteka i CGI skripti."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6316,16 +6177,23 @@ msgstr ""
"koje je\n"
"on nadležan."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"Pokreće filtriranje paketa za Linux kernele serije 2.2 kako\n"
-"bi se aktivirao firewall i zaštitio vaš računar od mrežnih napada."
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6336,7 +6204,7 @@ msgstr ""
"/etc/sysconfig/keyboard, što se može podesiti korištenjem kbdconfig\n"
"programa. Ovaj servis biste trebali ostaviti uključenim na većini računara."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6345,12 +6213,17 @@ msgstr ""
"Automatsko regenerisanje kernel zaglavlja u /boot za\n"
"/usr/include/linux/{autoconf,version}.h"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr "Automatsko prepoznavanje i podešavanje hardware-a tokom boota."
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6359,7 +6232,7 @@ msgstr ""
"Linuxconf će ponekad obaviti raznolike zadatke tokom boota\n"
"kako bi se održala sistemska konfiguracija."
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -6369,7 +6242,7 @@ msgstr ""
"ispravno.\n"
"To je u osnovi server koji dodjeljuje zadatke štampe štampaču/ima."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
@@ -6378,14 +6251,29 @@ msgstr ""
"Linux Virtuelni Server, koristi se za izgradnju servera visokih performansi\n"
"i dostupnosti (clusteri servera)."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr ""
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr ""
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6394,7 +6282,12 @@ msgstr ""
"named (BIND) je Domain Name Server (DNS) koji se koristi za određivanje IP "
"adrese iz imena računara."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6403,7 +6296,7 @@ msgstr ""
"Montira i demontira sve Network File System (NFS), SMB (Lan\n"
"Manager/Windows) i NCP (NetWare) tačke montiranja."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -6412,7 +6305,17 @@ msgstr ""
"Aktivira/deaktivira sve mrežne interfejse koji su konfigurisani\n"
"za pokretanje tokom boota."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6423,7 +6326,7 @@ msgstr ""
"Ovaj servis omogućuje funkcionalnost NFS servera, kojeg podešavate\n"
"putem /etc/exports datoteke."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6432,12 +6335,12 @@ msgstr ""
"NFS je popularan protokol za dijeljenje datoteka preko TCP/IP mreža.\n"
"Ovaj servis omogućuje NFS funkcionalnost zaključavanja datoteka."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6446,12 +6349,17 @@ msgstr ""
"Automatski uključuje numlock pod konzolom i grafičkim okruženjem\n"
"prilikom boota."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "Podrška za OKI 4w i kompatibilne 'winprinter' štampače."
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr ""
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6464,7 +6372,7 @@ msgstr ""
"Neće se pokrenuti sve dok nije ispravno konfigurisan, tako da je\n"
"sigurno imati ga instaliranog i na računarima kojima nije potreban."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6476,7 +6384,12 @@ msgstr ""
"su NFS i NIS. Portmap server mora raditi na računarima koje služe kao\n"
"serveri za protokole koji koriste RPC mehanizam."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr ""
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6485,7 +6398,7 @@ msgstr ""
"Postfix je Mail Transport Agent, tj. program koji šalje poštu sa jednog "
"računara na drugi."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6494,16 +6407,21 @@ msgstr ""
"Snima i učitava sistemski spremnik entropije za veću kvalitetu\n"
"generisanja slučajnih brojeva."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
"Dodjeljuje raw uređaje blokovskim uređajima (kao što su\n"
"particije hard diska), za potrebu programa kao što je Oracle ili DVD playeri"
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr ""
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6515,7 +6433,7 @@ msgstr ""
"kompleksniji\n"
"protokoli rutiranja su potrebni za složene mreže."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6524,7 +6442,14 @@ msgstr ""
"Rstat protokol omogućava korisnicima na mreži da dobave\n"
"mjeru performansi za svaki računar na toj mreži"
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
@@ -6533,7 +6458,7 @@ msgstr ""
"Rusers protokol omogućava korisnicima na mreži da identificiraju\n"
"ko je prijavljen na ostalim računarima."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6542,32 +6467,47 @@ msgstr ""
"Rwho protokol omogućava udaljenim korisnicima da dobiju listu svih\n"
"korisnika prijavljenih na računar na kojem radi rwho demon (slično fingeru)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "Pokreće zvučni sistem na vašem računaru"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6577,82 +6517,94 @@ msgstr ""
"u razne sistemske dnevnike (logove). Pametno je uvijek imati pokrenuti "
"syslog."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "Pokreće drajvere za vaše USB uređaje."
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr ""
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr ""
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr ""
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Štampa"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Internet"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Dijeljenje datoteka"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Mreža"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "Sistem"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "Udaljena administracija"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Server baze podataka"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Servisi"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr "Izaberite koji servisi se trebaju pokretati automatski prilikom boota"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Servisi: %d aktiviran za %d registrovan"
+msgid "%d activated for %d registered"
+msgstr "%d aktiviran za %d registrovan"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "aktivan"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "zaustavljen"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Servisi i demoni"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6661,32 +6613,27 @@ msgstr ""
"Nema dodatnih informacija\n"
"o ovom servisu, žalim."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Info"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "Pokreni po potrebi"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "Prilikom boota"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "Start"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Stop"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6719,7 +6666,7 @@ msgstr ""
"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
"USA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6746,39 +6693,31 @@ msgstr ""
"--help : show this message.\n"
"--version : show version number.\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPCIJE:\n"
" --boot - omogućuje podešavanje boot loadera\n"
-" --splash - omogućuje podešavanje boot teme\n"
"podrazumijevano: podešavanje autologin mogućnosti"
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-"[OPTIONS] [PROGRAM_NAME]\n"
-"\n"
-"OPCIJE:\n"
-" --help - ispisuje ovu pomoć.\n"
-" --report - program treba biti neki od Mandriva Linux alata\n"
-" --incident - program treba biti neki od Mandriva Linux alata"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6795,7 +6734,7 @@ msgstr ""
" --internet - podesi internet\n"
" --wizard - isto što i --add"
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6826,11 +6765,11 @@ msgstr ""
" : ime_programa npr. so za staroffice \n"
" : i gs za ghostscript za samo taj program."
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6843,32 +6782,18 @@ msgid ""
"--delclient : delete a client machine from MTS (requires MAC address, "
"IP, nbi image name)"
msgstr ""
-"[OPTIONS]...\n"
-"Podešavanje Mandriva Linux Terminal Servera\n"
-"--enable : omogući MTS\n"
-"--disable : onemogući MTS\n"
-"--start : pokreni MTS\n"
-"--stop : zaustavi MTS\n"
-"--adduser : dodaj postojećeg sistemskog korisnika MTSu (potrebno je "
-"korisničko ime)\n"
-"--deluser : obriši postojećeg sistemskog korisnika sa MTSa (potrebno "
-"je korisničko ime)\n"
-"--addclient : dodaj klijentski računar MTSu (potrebna je MAC adresa, "
-"IP, nbi image ime)\n"
-"--delclient : obriši klijentski računar sa MTSa (potrebna je MAC "
-"adresa, IP, nbi image ime)"
-
-#: standalone.pm:100
+
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[tastatura]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr "[--file=mojfajl] [--word=mojarijec] [--explain=regexp] [--alert]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6891,25 +6816,19 @@ msgstr ""
"--status : vraća 1 ako je spojen, u suprotnom 0.\n"
"--quiet : bez interaktivnosti. Koristi se sa (dis)connect."
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-"[OPTION]...\n"
-" --no-confirmation ne postavljaj prvo pitanje u Mandriva Update modu\n"
-" --no-verify-rpm ne provjeravaj potpise paketa\n"
-" --changelog-first prikaži changelog prije filelist u opisnom prozoru\n"
-" --merge-all-rpmnew predloži merge svih pronađenih .rpmnew/.rpmsave "
-"datoteka"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -6918,7 +6837,7 @@ msgstr ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6929,7 +6848,7 @@ msgstr ""
" XFdrake [--noauto] monitor\n"
" XFdrake rezolucija"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6940,71 +6859,76 @@ msgstr ""
"Upotreba: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
"testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
+#: timezone.pm:170 timezone.pm:171
#, c-format
msgid "All servers"
msgstr "Svi serveri"
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr "Globalno"
-#: timezone.pm:199
+#: timezone.pm:210
#, c-format
msgid "Africa"
msgstr "Afrika"
-#: timezone.pm:200
+#: timezone.pm:211
#, c-format
msgid "Asia"
msgstr "Azija"
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr "Evropa"
-#: timezone.pm:202
+#: timezone.pm:213
#, c-format
msgid "North America"
msgstr "Sjeverna Amerika"
-#: timezone.pm:203
+#: timezone.pm:214
#, c-format
msgid "Oceania"
msgstr "Okeanija"
-#: timezone.pm:204
+#: timezone.pm:215
#, c-format
msgid "South America"
msgstr "Južna Amerika"
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Hong Kong"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "Ruska Federacija"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Jugoslavija"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Da li je ovo ispravno?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "Izabrali ste datoteku, a ne direktorij"
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Info"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -7018,352 +6942,3 @@ msgstr ""
#, c-format
msgid "Installation failed"
msgstr "Instalacija nije uspjela"
-
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "Molim izvršite logout i zatim koristitite Ctrl-Alt-BackSpace"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "Dobrodošli u Crackers"
-
-#~ msgid "Poor"
-#~ msgstr "Loš"
-
-#~ msgid "High"
-#~ msgstr "Visok"
-
-#~ msgid "Higher"
-#~ msgstr "Viši"
-
-#~ msgid "Paranoid"
-#~ msgstr "Paranoičan"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "Ovaj nivo treba koristiti pažljivo. On čini vaš sistem lakšim za "
-#~ "upotrebu,\n"
-#~ "ali vrlo osjetljivim: ne smije biti korišten za računar koji je spojen "
-#~ "na\n"
-#~ "druge ili na Internet. Nema pristupa šifrom."
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr ""
-#~ "Šifra je sada aktivirana, ali korištenje za mrežni računar još nije "
-#~ "preporučeno."
-
-#~ msgid ""
-#~ "There are already some restrictions, and more automatic checks are run "
-#~ "every night."
-#~ msgstr ""
-#~ "Već postoje određena ograničenja, a više automatskih provjera se pokreće "
-#~ "svaku noć."
-
-#~ msgid ""
-#~ "This is similar to the previous level, but the system is entirely closed "
-#~ "and security features are at their maximum."
-#~ msgstr ""
-#~ "Baziran na prethodnom nivou, ali sada je sistem potpuno zatvoren.\n"
-#~ "Sigurnosne osobine na maksimumu."
-
-#~ msgid ""
-#~ "\n"
-#~ "Warning\n"
-#~ "\n"
-#~ "Please read carefully the terms below. If you disagree with any\n"
-#~ "portion, you are not allowed to install the next CD media. Press "
-#~ "'Refuse' \n"
-#~ "to continue the installation without using these media.\n"
-#~ "\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a network. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-#~ msgstr ""
-#~ "\n"
-#~ "Pažnja\n"
-#~ "\n"
-#~ "Molim pročitajte pažljivo uslove licence ispod. Ako se ne slažete sa "
-#~ "bilo\n"
-#~ "kojim dijelom, nije vam dozvoljeno da instalirate naredne CD medije. "
-#~ "Pritisnite\n"
-#~ "dugme 'Ne prihvatam' da biste nastavili sa instalacijom bez korištenja "
-#~ "ovih medija.\n"
-#~ "Budući da prevodilac ovog teksta nije u mogućnosti da osigura pravnu\n"
-#~ "provjeru prevedenog teksta, tekst je ostavljen u originalnom (engleskom)\n"
-#~ "obliku.\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a network. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-
-#~ msgid "Use libsafe for servers"
-#~ msgstr "Koristi libsafe za servere"
-
-#~ msgid ""
-#~ "A library which defends against buffer overflow and format string attacks."
-#~ msgstr ""
-#~ "Biblioteka koja brani od napada \"buffer overflow\" i \"format string\"."
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "LILO/grub instalacija"
-
-#~ msgid "Precise RAM size if needed (found %d MB)"
-#~ msgstr "Precizna veličina RAMa ako je potrebno (pronađeno %d MB)"
-
-#~ msgid "Give the ram size in MB"
-#~ msgstr "Navedite veličinu rama u MB"
-
-#~ msgid ""
-#~ "If you plan to use aboot, be careful to leave a free space (2048 sectors "
-#~ "is enough)\n"
-#~ "at the beginning of the disk"
-#~ msgstr ""
-#~ "Ako planirate koristiti aboot, budite pažljivi i ostavite slobodnog "
-#~ "prostora (2048 sektora je dovoljno)\n"
-#~ "na početku diska"
-
-#~ msgid "Security level"
-#~ msgstr "Nivo sigurnosti"
-
-#~ msgid "Expand Tree"
-#~ msgstr "Proširi stablo"
-
-#~ msgid "Collapse Tree"
-#~ msgstr "Smanji stablo"
-
-#~ msgid "Toggle between flat and group sorted"
-#~ msgstr "Ravno / složeno po grupama"
-
-#~ msgid "Choose action"
-#~ msgstr "Izaberi akciju"
-
-#~ msgid "Active Directory with SFU"
-#~ msgstr "Active Directory sa SFU"
-
-#~ msgid "Active Directory with Winbind"
-#~ msgstr "Active Directory sa Winbind"
-
-#~ msgid "Active Directory with SFU:"
-#~ msgstr "Active Directory sa SFU:"
-
-#~ msgid "Active Directory with Winbind:"
-#~ msgstr "Active Directory sa Winbind:"
-
-#~ msgid ""
-#~ "Winbind allows the system to authenticate users in a Windows Active "
-#~ "Directory Server."
-#~ msgstr ""
-#~ "Winbind omogućuje sistemu da potvrđuje korisnike putem Windows Active "
-#~ "Directory servera."
-
-#~ msgid "Authentication LDAP"
-#~ msgstr "Autentikacijski LDAP"
-
-#~ msgid "TLS"
-#~ msgstr "TLS"
-
-#~ msgid "SSL"
-#~ msgstr "SSL"
-
-#~ msgid "security layout (SASL/Kerberos)"
-#~ msgstr "sloj sigurnosti (SASL/Kerberos)"
-
-#~ msgid "Authentication Active Directory"
-#~ msgstr "Provjera identiteta kroz Aktivni imenik (Active Directory)"
-
-#~ msgid "LDAP users database"
-#~ msgstr "LDAP baza korisnika"
-
-#~ msgid "LDAP user allowed to browse the Active Directory"
-#~ msgstr "LDAP korisnik kojem je dozvoljeno pregledanje Aktivnog imenika"
-
-#~ msgid "Authentication NIS"
-#~ msgstr "Provjera identiteta putem NISa"
-
-#~ msgid ""
-#~ "For this to work for a W2K PDC, you will probably need to have the admin "
-#~ "run: C:\\>net localgroup \"Pre-Windows 2000 Compatible Access\" everyone /"
-#~ "add and reboot the server.\n"
-#~ "You will also need the username/password of a Domain Admin to join the "
-#~ "machine to the Windows(TM) domain.\n"
-#~ "If networking is not yet enabled, Drakx will attempt to join the domain "
-#~ "after the network setup step.\n"
-#~ "Should this setup fail for some reason and domain authentication is not "
-#~ "working, run 'smbpasswd -j DOMAIN -U USER%%PASSWORD' using your Windows"
-#~ "(tm) Domain, and Admin Username/Password, after system boot.\n"
-#~ "The command 'wbinfo -t' will test whether your authentication secrets are "
-#~ "good."
-#~ msgstr ""
-#~ "Da bi ovo radilo sa W2K PDCom, vjerovatno će biti potrebno da admin "
-#~ "izvrši:\n"
-#~ " C:\\>net localgroup \"Pre-Windows 2000 Compatible Access\" everyone /"
-#~ "add\n"
-#~ "i restartuje server. Takođe će vam trebati korisničko ime i šifra "
-#~ "administratora domena da biste pridružili računar Windows(tm) domenu.\n"
-#~ "Ako mreža još nije aktivirana, DrakX će pokušati pristupanje domenu tek "
-#~ "nakon što prođete kroz korak podešavanja mreže.\n"
-#~ "Ako ovo podešavanje iz nekog razloga ne uspije i prijava na domen ne bude "
-#~ "izvršena, izvršite naredbu 'smbpasswd -j DOMAIN -U USER%%PASSWORD' "
-#~ "koristeći vašu Windows(tm) domenu, kao i administratorovo korisničko ime "
-#~ "i šifru nakon pokretanja sistema.\n"
-#~ "Naredba 'wbinfo -t' će provjeriti da li su vaši podaci ispravni."
-
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "Autentikacijska Windows domena"
-
-#~ msgid "Undo"
-#~ msgstr "Poništi"
-
-#~ msgid "Save partition table"
-#~ msgstr "Snimi tabelu particija"
-
-#~ msgid "Restore partition table"
-#~ msgstr "Vrati tabelu particija"
-
-#~ msgid ""
-#~ "The backup partition table has not the same size\n"
-#~ "Still continue?"
-#~ msgstr ""
-#~ "Backup tabela particija nema istu veličinu\n"
-#~ "Da svejedno nastavim?"
-
-#~ msgid "Info: "
-#~ msgstr "Info: "
-
-#~ msgid "Unknown driver"
-#~ msgstr "Nepoznat drajver"
-
-#~ msgid "Error reading file %s"
-#~ msgstr "Greška u čitanju datoteke %s"
-
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "Povratak iz datoteke %s nije uspio: %s"
-
-#~ msgid "Bad backup file"
-#~ msgstr "Loša backup datoteka"
-
-#~ msgid "Error writing to file %s"
-#~ msgstr "Greška u pisanju datoteke: %s"
-
-#~ msgid "Error: The \"%s\" driver for your sound card is unlisted"
-#~ msgstr "Greška: Drajver \"%s\" za vašu zvučnu karticu nije na listi"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Journalised FS"
-#~ msgstr "Journalised FS"
-
-#~ msgid "Starts the X Font Server (this is mandatory for Xorg to run)."
-#~ msgstr "Pokreće X Font Server (ovo je nužno da bi Xorg radio)."
-
-#~ msgid "Add user"
-#~ msgstr "Dodaj korisnika"
-
-#~ msgid "Accept user"
-#~ msgstr "Prihvati korisnika"
-
-#, fuzzy
-#~ msgid ""
-#~ "Do not update directory inode access times on this filesystem\n"
-#~ "(e.g, for faster access on the news spool to speed up news servers)."
-#~ msgstr ""
-#~ "Ne ažuriraj vrijeme pristupa inode-u na ovom sistemu\n"
-#~ "(npr. radi bržeg pristupa spool-u na news serverima)."
-
-#~ msgid "No supermount"
-#~ msgstr "Bez supermounta"
-
-#~ msgid "Supermount"
-#~ msgstr "Supermount"
-
-#~ msgid "Supermount except for CDROM drives"
-#~ msgstr "Supermount osim za CD-ROM uređaje"
-
-#~ msgid "Rescue partition table"
-#~ msgstr "Spasi tabelu particija"
-
-#~ msgid "Removable media automounting"
-#~ msgstr "Automatsko montiranje izmjenjivih medija"
-
-#~ msgid "Trying to rescue partition table"
-#~ msgstr "Pokušavam da spasim tabelu particija"
-
-#~ msgid "Accept/Refuse bogus IPv4 error messages."
-#~ msgstr "Prihvati/odbij neispravne IPv4 poruke o grešci."
-
-#~ msgid "Accept/Refuse broadcasted icmp echo."
-#~ msgstr "Dozvoli/zabrani broadcast-ovani ICMP eho."
-
-#~ msgid "Accept/Refuse icmp echo."
-#~ msgstr "Prihvati/odbij ICMP eho."
-
-#~ msgid "Allow/Forbid remote root login."
-#~ msgstr "Dozvoli/zabrani prijavu kao root sa udaljenog računara"
-
-#~ msgid "Enable/Disable IP spoofing protection."
-#~ msgstr "Uključi/isključi zaštitu od lažiranja IP adrese."
-
-#~ msgid "Enable/Disable libsafe if libsafe is found on the system."
-#~ msgstr "Uključi/isključi libsafe ako je libsafe pronađen na sistemu."
-
-#~ msgid "Enable/Disable the logging of IPv4 strange packets."
-#~ msgstr "Uključi/isključi logiranje čudnih IPv4 paketa."
-
-#~ msgid "Enable/Disable msec hourly security check."
-#~ msgstr "Uključi/isključi msec provjeru svakog sata."
-
-#~ msgid "Number of capture buffers:"
-#~ msgstr "Broj capture buffera:"
-
-#~ msgid "number of capture buffers for mmap'ed capture"
-#~ msgstr "broj capture buffera za mmap-ovani capture"
-
-#~ msgid "PLL setting:"
-#~ msgstr "PLL postavka:"
-
-#~ msgid "Radio support:"
-#~ msgstr "Podrška za radio:"
-
-#~ msgid " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
-#~ msgstr " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
diff --git a/perl-install/share/po/ca.po b/perl-install/share/po/ca.po
index c1af25e4c..a4cb17171 100644
--- a/perl-install/share/po/ca.po
+++ b/perl-install/share/po/ca.po
@@ -1,37 +1,42 @@
-# translation of ca.po to Catalan
-# translation of DrakX.po to Catalan
-# Copyright (C) 2000-2004, 2005 Free Software Foundation, Inc.
-# Softcatala, softcatala.org, 2000-2003
-# Albert Astals Cid <astals11@terra.es>, 2003-2004, 2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: ca\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2005-09-13 23:24+0200\n"
-"Last-Translator: Albert Astals Cid <astals11@terra.es>\n"
-"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
+# Translators:
+# Davidmp <medipas@gmail.com>, 2016
+# Francesc Pinyol Margalef, 2012-2013,2015
+# Davidmp <medipas@gmail.com>, 2016-2020,2022-2024
+# Robert Antoni Buj i Gelonch <rbuj@fedoraproject.org>, 2015,2017-2019
+# Robert Antoni Buj i Gelonch <rbuj@fedoraproject.org>, 2015
+# Rubén <rbndavid@gmail.com>, 2019
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2013-04-04 13:34+0000\n"
+"Last-Translator: Davidmp <medipas@gmail.com>, 2016-2020,2022-2024\n"
+"Language-Team: Catalan (http://app.transifex.com/MageiaLinux/mageia/language/"
+"ca/)\n"
+"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
-msgstr "Espereu si us plau"
+msgstr "Espereu, si us plau."
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
-msgstr "Instal·lació del carregador de l'arrencada en curs"
+msgstr "Instal·lació del gestor d'arrencada en curs"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -41,595 +46,641 @@ msgid ""
"\n"
"Assign a new Volume ID?"
msgstr ""
+"LILO vol assignar un nou id. de volum a la unitat %s. Tanmateix, canviar "
+"l'id. de volum\n"
+"d'un disc d'arrencada Windows NT, 2000 o XP és un error fatal de Windows.\n"
+"Aquesta precaució no s'aplica a Windows 95 o 98, als discs de dades de NT.\n"
+"\n"
+"Voleu assignar un nou id. de volum?"
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr ""
-"Ha fallat la instal·lació del carregador de l'arrencada. S'ha produït "
-"l'error següent:"
+"Ha fallat la instal·lació del gestor d'arrencada. S'ha produït l'error "
+"següent:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"Potser us caldrà canviar el dispositiu d'arrencada Open Firmware per\n"
-"habilitar el carregador de l'arrencada. Si no veieu l'indicador del\n"
-"carregador de l'arrencada en tornar a arrencar, premeu\n"
-"Command-Option-O-F en tornar a arrencar i introduïu:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Després, escriviu: shut-down\n"
-"En l'arrencada següent heu de veure l'indicador del carregador de "
-"l'arrencada."
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
"Heu decidit instal·lar el gestor de l'arrencada en una partició.\n"
"Això implica que ja teniu un gestor d'arrencada en el disc des del qual "
-"arrenqueu (p.ex.: System Commander).\n"
+"arrenqueu (p. ex.: System Commander).\n"
"\n"
"En quina unitat arrenqueu?"
-#: any.pm:346
-#, fuzzy, c-format
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr "Instal·lació del gestor d'arrencada"
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "On voleu instal·lar el gestor d'arrencada?"
+
+#: any.pm:365
+#, c-format
msgid "First sector (MBR) of drive %s"
-msgstr "Primer sector de la unitat (MBR)"
+msgstr "Primer sector (MBR) del disc %s"
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "Primer sector de la unitat (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr "Primer sector de la partició de root"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "En el disquet"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Omet"
-#: any.pm:358
-#, fuzzy, c-format
-msgid "Bootloader Installation"
-msgstr "Instal·lació del carregador de l'arrencada en curs"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "On voleu instal·lar el carregador de l'arrencada?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "Configuració del tipus d'arrencada"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr "Partició EFI del sistema"
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
-msgstr "Opcions principals del carregador de l'arrencada"
+msgstr "Opcions principals del gestor d'arrencada"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
-msgstr "Carregador d'arrencada"
+msgstr "Gestor d'arrencada"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
-msgstr "Carregador de l'arrencada a utilitzar"
+msgstr "Gestor d'arrencada que s'ha d'utilitzar"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Dispositiu d'arrencada"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
-msgstr ""
+msgstr "Opcions principals"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
-msgstr "Demora abans d'arrencar la imatge predeterminada"
+msgstr "Retard abans d'arrencar la imatge predeterminada"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
-msgstr "Habilita l'ACPI"
+msgstr "Habilita ACPI"
-#: any.pm:411
-#, fuzzy, c-format
+#: any.pm:432
+#, c-format
msgid "Enable SMP"
-msgstr "Habilita l'ACPI"
+msgstr "Habilita SMP"
-#: any.pm:412
-#, fuzzy, c-format
+#: any.pm:433
+#, c-format
msgid "Enable APIC"
-msgstr "Habilita l'ACPI"
+msgstr "Habilita APIC"
-#: any.pm:413
-#, fuzzy, c-format
+#: any.pm:435
+#, c-format
msgid "Enable Local APIC"
-msgstr "Habilita l'ACPI"
+msgstr "Habilita APIC local"
+
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Seguretat"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Contrasenya"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Les contrasenyes no coincideixen"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Si us plau, torneu-ho a intentar"
-#: any.pm:418
-#, fuzzy, c-format
-msgid "You can not use a password with %s"
-msgstr ""
-"No podeu utilitzar un sistema d'arxius xifrat per al punt de muntatge %s"
+#: any.pm:442
+#, c-format
+msgid "You cannot use a password with %s"
+msgstr "No podeu utilitzar una contrasenya amb %s"
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Contrasenya (un altre cop)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "Limita les opcions de la línia d'ordres"
+msgid "Bootloader Configuration"
+msgstr "Configuració del gestor d'arrencada"
-#: any.pm:422
+#: any.pm:532
#, c-format
-msgid "restrict"
-msgstr "limita"
+msgid "Install Options"
+msgstr "Opcions d'instal·lació"
-#: any.pm:423
+#: any.pm:533
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr "Instal·la o actualitza el rEFInd a la partició EFI del sistema"
+
+#: any.pm:535 any.pm:794
+#, c-format
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
msgstr ""
-"L'opció \"Limita les opcions de la línia d'ordres\" no té cap utilitat sense "
-"una contrasenya"
+"Instal·la'l a /EFI/BOOT (dispositiu extraïble o solució temporal per a "
+"alguns BIOS)"
-#: any.pm:425
+#: any.pm:537
+#, c-format
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr "Configura el rEFInd per desar-ne les variables a la NVRAM EFI."
+
+#: any.pm:539
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "Buida /tmp en cada arrencada"
+msgid "Background"
+msgstr "Fons"
-#: any.pm:434
+#: any.pm:544
#, c-format
-msgid "Init Message"
-msgstr "Missatge d'inicialització"
+msgid "rEFInd banner"
+msgstr "Pancarta del rEFInd"
-#: any.pm:436
+#: any.pm:545
#, c-format
-msgid "Open Firmware Delay"
-msgstr "Demora per al firmware obert"
+msgid "Mageia theme"
+msgstr "Tema de Mageia"
-#: any.pm:437
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Temps màxim d'arrencada del nucli"
+msgid "Custom"
+msgstr "Personalitzat"
+
+#: any.pm:564
+#, c-format
+msgid "No scaling"
+msgstr "Sense escalar"
+
+#: any.pm:565
+#, c-format
+msgid "Scale to fit"
+msgstr "Ajusta"
-#: any.pm:438
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable CD Boot?"
-msgstr "Voleu habilitar l'arrencada des de CD?"
+msgid "Label"
+msgstr "Etiqueta"
-#: any.pm:439
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Enable OF Boot?"
-msgstr "Voleu habilitar l'arrencada des d'OF?"
+msgid "Append"
+msgstr "Afegeix"
-#: any.pm:440
+#: any.pm:612 any.pm:624 any.pm:781
#, c-format
-msgid "Default OS?"
-msgstr "SO per defecte?"
+msgid "Video mode"
+msgstr "Mode de vídeo"
-#: any.pm:513
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "Imatge"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Arrel"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "Afegeix"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
-msgstr ""
+msgstr "Annex Xen"
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Mode de vídeo"
+msgid "Requires password to boot"
+msgstr "Cal una contrasenya per a arrencar"
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "Perfil de xarxa"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "Etiqueta"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Predeterminat"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "NoVideo"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "No es permet una etiqueta buida"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
-msgstr "Heu d'especificar una imatge del nucli"
+msgstr "Heu d'especificar una imatge de kernel"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "Heu d'especificar una partició arrel"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "Aquesta etiqueta ja està en ús"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Quin tipus d'entrada voleu afegir?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Un altre SO (SunOS...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Un altre SO (MacOS...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "Un altre SO (Windows...)"
-#: any.pm:621
-#, fuzzy, c-format
-msgid "Bootloader Configuration"
-msgstr "Configuració del tipus d'arrencada"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
"You can create additional entries or change the existing ones."
msgstr ""
"Aquestes són les diferents entrades en el menú d'arrencada.\n"
-"Podeu afegir-ne més o canviar-ne les existents."
+"Podeu afegir-ne més o canviar les existents."
+
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr "No toquis l'ESP o l'MBR"
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Advertència"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+"Si no s'instal·la a l'MBR o l'ESP vol dir que la instal·lació no és "
+"arrencable si no és que s'encadeni des d'un altre sistema operatiu!"
#: any.pm:790
#, c-format
-msgid "access to X programs"
-msgstr "accés a programes X"
+msgid "Probe Foreign OS"
+msgstr "Comprova si hi ha altres sistemes operatius"
#: any.pm:791
#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+"Desmarqueu aquesta opció per aturar l'exploració del grub2 d'altres sistemes "
+"operatius, cosa que evitarà que s'incloguin al menú d'arrencada del grub2. "
+"L'opció també es pot desmarcar després de la instal·lació, s'eliminaran els "
+"altres sistemes operatius del menú d'arrencada del grub2, però reduirà el "
+"temps necessari per instal·lar les actualitzacions del nucli."
+
+#: any.pm:1059
+#, c-format
+msgid "access to X programs"
+msgstr "accés als programes de les X"
+
+#: any.pm:1060
+#, c-format
msgid "access to rpm tools"
msgstr "accés a les eines rpm"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
-msgstr "permet \"su\""
+msgstr "permet «su»"
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
-msgstr "accés a fitxers administratius"
+msgstr "accés als fitxers administratius"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "accés a les eines de xarxa"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "accés a les eines de compilació"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(ja s'ha afegit %s)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
-msgstr "Si us plau, introduïu un nom d'usuari"
+msgstr "Introduïu un nom d'usuari"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
msgstr ""
-"El nom d'usuari només pot contenir lletres en minúscula, números, '-' i '_'"
+"El nom d'usuari ha de començar amb una lletra minúscula seguida només per "
+"lletres minúscules, nombres, «-» i «_»"
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "El nom d'usuari és massa llarg"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "Aquest nom d'usuari ja s'ha afegit"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
-msgstr "ID d'usuari"
+msgstr "Id. d'usuari"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
-msgstr "ID de grup"
+msgstr "Id. de grup"
-#: any.pm:817
+#: any.pm:1086
#, c-format
msgid "%s must be a number"
msgstr "%s ha de ser un número"
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
-msgstr "%s hauria de ser superior a 500. Continuar tot i això?"
+msgid "%s should be above 1000. Accept anyway?"
+msgstr "%s hauria de ser superior a 1000. Continuar tot i això?"
-#: any.pm:822
-#, fuzzy, c-format
+#: any.pm:1091
+#, c-format
msgid "User management"
-msgstr "Nom d'usuari"
+msgstr "Gestió d'usuaris"
+
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr "Habilita el compte de convidat"
-#: any.pm:828 authentication.pm:237
+#: any.pm:1099 authentication.pm:236
#, c-format
msgid "Set administrator (root) password"
-msgstr "Estableix la contrasenya de l'administrador (root)"
+msgstr "Establiu la contrasenya de l'administrador (root)"
-#: any.pm:833
-#, fuzzy, c-format
+#: any.pm:1105
+#, c-format
msgid "Enter a user"
-msgstr ""
-"Introduïu un usuari\n"
-"%s"
+msgstr "Introduïu un usuari"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Icona"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Nom real"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "Nom d'accés"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Shell"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr "Grups extres:"
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
-msgstr "Si us plau espereu, s'estan afegint fonts..."
+msgstr "Espereu, si us plau; s'estan afegint els mitjans..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "Entrada automàtica"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
-"Puc configurar el vostre ordinador de manera que entri automàticament amb un "
-"nom d'usuari."
+"Puc configurar el vostre ordinador perquè entri automàticament amb un nom "
+"d'usuari."
-#: any.pm:916
+#: any.pm:1251
#, c-format
msgid "Use this feature"
msgstr "Utilitza aquesta característica"
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Escolliu l'usuari per defecte:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "Escolliu el gestor de finestres per executar:"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
-msgstr ""
+msgstr "Notes de la versió"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Tanca"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Acord de llicència"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Surt"
-#: any.pm:1017
-#, fuzzy, c-format
+#: any.pm:1343
+#, c-format
msgid "Do you accept this license ?"
-msgstr "En teniu una altra?"
+msgstr "Accepteu aquesta llicència?"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Accepta"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Rebutja"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
-msgstr "Si us plau, trieu un idioma per utilitzar"
+msgstr "Trieu la llengua que voleu utilitzar"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"Mandriva Linux pot utilitzar múltiples idiomes. Seleccioneu\n"
-"els llenguatges que vulgueu instal·lar. Estaran disponibles\n"
-"quan reinicieu el sistema, després que la instal·lació s'hagi completat."
+"%s dona suport a diverses llengües. Seleccioneu\n"
+"les que voleu instal·lar. Estaran disponibles quan\n"
+"la instal·lació hagi acabat i reinicieu l'ordinador."
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
#, c-format
-msgid "Multi languages"
-msgstr ""
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr "Llengües diverses"
-#: any.pm:1087 any.pm:1119
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr "Seleccioneu les llengües addicionals"
+
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
-msgstr ""
+msgstr "Compatibilitat amb la codificació antiga (no UTF-8)"
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
-msgstr "Tots els idiomes"
+msgstr "Totes les llengües"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
-msgstr "Tria d'idioma"
+msgstr "Tria de llengua"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "País / Regió"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
-msgstr "Si us plau, seleccioneu el vostre país"
+msgstr "Seleccioneu el vostre país"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "Aquesta és la llista completa de països"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "Altres països"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Avançat"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr "Mètode d'entrada:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Cap"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "No es comparteix"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "Permet tots els usuaris"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Personalitzada"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -639,102 +690,161 @@ msgid ""
"\"Custom\" permit a per-user granularity.\n"
msgstr ""
"Voleu permetre als usuaris compartir alguns dels seus directoris?\n"
-"Fer això permetrà al usuaris fer un simple clic a \"Comparteix\" en el "
-"konqueror i el nautilus.\n"
+"Si s'habilita, permetrà als usuaris fer un simple clic a «Comparteix» a "
+"konqueror i nautilus.\n"
"\n"
-"\"Personalitzat\" permet configurar cada usuari per separat.\n"
+"«Personalitzat» permet configurar cada usuari per separat.\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
"Windows."
msgstr ""
-"NFS: el sistema de compartició de fitxers tradicional de Unix, amb menys "
-"suport a Mac i Windows."
+"NFS: el sistema de compartició de fitxers tradicional d'Unix, amb menys "
+"compatibilitat a Mac i Windows."
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
"systems."
msgstr ""
-"SMB: un sistema de compartició de fitxers usat per Windows, Mac OS X i "
-"bastants sistemes Linux moderns."
+"SMB: un sistema de compartició de fitxers utilitzat per Windows, Mac OS X i "
+"molts sistemes Linux moderns."
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
-msgstr "Podeu exportar utilitzant NFS o SMB. Seleccioneu quin voleu utilitzar."
+msgstr "Podeu exportar mitjançant NFS o SMB. Seleccioneu quin voleu utilitzar."
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "Executa userdrake"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
"You can use userdrake to add a user to this group."
msgstr ""
-"La compartició per usuari utilitza el grup \"fileshare\".\n"
-"Podeu utilitzar userdrake per a afegir un usuari a aquest grup."
+"La compartició en funció de l'usuari utilitza el grup «fileshare».\n"
+"Podeu utilitzar userdrake per afegir un usuari a aquest grup."
-#: any.pm:1421
-#, fuzzy, c-format
+#: any.pm:1768
+#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
-msgstr "Heu de sortir i tornar a entrar per tal que els canvis tinguin efecte"
+msgstr ""
+"Heu de sortir i tornar a entrar perquè els canvis tinguin efecte. Premeu "
+"«D'acord» per a sortir ara mateix."
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
-msgstr "Heu de sortir i tornar a entrar per tal que els canvis tinguin efecte"
+msgstr "Heu de sortir i tornar a entrar perquè els canvis tinguin efecte"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
-msgstr "Fus horari"
+msgstr "Zona horària"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "En quina zona horària us trobeu?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
-msgstr ""
+msgstr "Paràmetres de la data, del rellotge i de la zona horària"
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
-msgstr ""
+msgstr "Quina és la millor hora?"
-#
-#: any.pm:1490
-#, fuzzy, c-format
+#: any.pm:1837
+#, c-format
msgid "%s (hardware clock set to UTC)"
-msgstr "El rellotge del vostre ordinador està regulat per GMT"
+msgstr "%s (el rellotge de maquinari està establert a UTC)"
-#
-#: any.pm:1491
-#, fuzzy, c-format
+#: any.pm:1838
+#, c-format
msgid "%s (hardware clock set to local time)"
-msgstr "El rellotge del vostre ordinador està regulat per GMT"
+msgstr "%s (el rellotge de maquinari està establert a hora local)"
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "Servidor NTP"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
-msgstr "Sincronització automàtica de la hora (usant NTP)"
+msgstr "Sincronització automàtica de l'hora (mitjançant NTP)"
+
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "URL de la rèplica?"
+
+#: any.pm:1880
+#, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "L'URL ha de començar amb ftp:// o http:// o https://"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr ""
+"S'està contactant amb el servidor %s per obtenir la llista de rèpliques "
+"disponibles..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+"Ha fallat la connexió amb el lloc web %s per obtenir la llista de rèpliques "
+"disponibles"
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Escolliu una rèplica des de la qual aconseguir els paquets"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Cancel·la"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr "Tria de rèplica"
+
+#: any.pm:1982
+#, c-format
+msgid "Automatic"
+msgstr "Automàtic"
+
+#: any.pm:1983
+#, c-format
+msgid "Specific"
+msgstr "Específic"
+
+#: any.pm:1988
+#, c-format
+msgid "Downloader"
+msgstr "Eina de baixada"
#: authentication.pm:24
#, c-format
@@ -756,7 +866,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr "Smart Card"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Domini de Windows"
@@ -764,268 +874,285 @@ msgstr "Domini de Windows"
#: authentication.pm:29
#, c-format
msgid "Kerberos 5"
-msgstr ""
+msgstr "Kerberos 5"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "Fitxer local:"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
+"Utilitza local per a tota autenticació i informació que l'usuari digui al "
+"fitxer local"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
"consolidates certain types of information within your organization."
msgstr ""
-"El vostre ordinador usarà LDAP per alguna o totes les autenticacions. LDAP "
-"consolida certs tipus d0informació dintre de les organitzacions."
+"El vostre ordinador utilitzarà LDAP per alguna o totes les autenticacions. "
+"LDAP consolida certs tipus d'informació dintre de les organitzacions."
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
"Service domain with a common password and group file."
msgstr ""
+"Us permet executar un grup d'equips al mateix domini Network Information "
+"Service amb una contrasenya comuna i un fitxer de grup."
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Domini de Windows:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
"a Windows domain."
msgstr ""
+"Winbind permet que el sistema recuperi informació i autentiqui usuaris en un "
+"domini de Windows."
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
-msgstr ""
+msgstr "Kerberos 5:"
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
+"Amb Kerberos i LDAP per a l'autenticació en el servidor Active Directory."
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
-msgstr ""
+msgstr " "
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
-#, fuzzy, c-format
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr "Cal l'autenticació de domini"
+msgstr "Benvingut/da a l'auxiliar d'autenticació"
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
+"Heu seleccionat l'autenticació LDAP. Reviseu a continuació les opcions de "
+"configuració "
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "Servidor LDAP"
-#: authentication.pm:113 authentication.pm:168
-#, fuzzy, c-format
+#: authentication.pm:112 authentication.pm:167
+#, c-format
msgid "Base dn"
-msgstr "LDAP Base dn"
+msgstr "DN base"
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
-msgstr ""
+msgstr "Captura el DN base"
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
-msgstr ""
+msgstr "Utilitza connexió xifrada amb TLS"
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
-msgstr ""
+msgstr "Baixa el certificat de l'AC"
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
-msgstr ""
+msgstr "Utilitza el mode desconnectat"
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
-msgstr ""
+msgstr "Utilitza BIND anònim "
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
-msgstr ""
+msgstr " "
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
-msgstr ""
+msgstr "DN del bind"
-#: authentication.pm:123 authentication.pm:175
-#, fuzzy, c-format
+#: authentication.pm:122 authentication.pm:174
+#, c-format
msgid "Bind Password "
-msgstr "Contrasenya"
+msgstr "Contrasenya del bind"
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
-msgstr ""
+msgstr "Camí avançat per al grup "
-#: authentication.pm:127
-#, fuzzy, c-format
+#: authentication.pm:126
+#, c-format
msgid "Password base"
-msgstr "Contrasenya"
+msgstr "Contrasenya de la base"
-#: authentication.pm:128
-#, fuzzy, c-format
+#: authentication.pm:127
+#, c-format
msgid "Group base"
-msgstr "ID de grup"
+msgstr "Grup de la base"
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
-msgstr ""
+msgstr "Shadow de la base"
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
+"Heu seleccionat l'autenticació Kerberos 5. Reviseu a continuació les opcions "
+"de configuració "
-#: authentication.pm:146
-#, fuzzy, c-format
+#: authentication.pm:145
+#, c-format
msgid "Realm "
-msgstr "Nom real"
+msgstr "Reialme "
-#: authentication.pm:148
-#, fuzzy, c-format
+#: authentication.pm:147
+#, c-format
msgid "KDCs Servers"
-msgstr "Servidor LDAP"
+msgstr "Servidors KDC"
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
-msgstr ""
+msgstr "Utilitza el DNS per localitzar els KDC per al reialme"
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
-msgstr ""
+msgstr "Utilitza el DNS per localitzar els reialmes"
-#: authentication.pm:156
-#, fuzzy, c-format
+#: authentication.pm:155
+#, c-format
msgid "Use local file for users information"
-msgstr "Empra libsafe per als servidors"
+msgstr "Utilitza un fitxer local per a la informació dels usuaris"
-#: authentication.pm:157
-#, fuzzy, c-format
-msgid "Use Ldap for users information"
-msgstr "Informació del disc dur"
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr "Utilitza LDAP per a la informació dels usuaris"
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
+"Heu seleccionat Kerberos 5 per a l'autenticació, ara heu de triar el tipus "
+"d'informació dels usuaris "
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
-msgstr ""
+msgid "Fetch base DN "
+msgstr "Recull Dn de la base"
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
+"Heu seleccionat l'autenticació NIS. Reviseu a continuació les opcions de "
+"configuració "
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
-msgstr "Domini del NIS"
+msgstr "Domini NIS"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "Servidor NIS"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
+"Heu seleccionat l'autenticació Windows Domain. Reviseu a continuació les "
+"opcions de configuració "
-#: authentication.pm:218
-#, fuzzy, c-format
+#: authentication.pm:217
+#, c-format
msgid "Domain Model "
-msgstr "Domini"
+msgstr "Model de domini"
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
-msgstr ""
+msgstr "Reialme d'«Active Directory» "
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "Domini del NIS"
+msgstr "Domini DNS"
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "Servidor LDAP"
+msgstr "Servidor DC"
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Autenticació"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "Mètode d'autenticació"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Sense contrasenya"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr ""
@@ -1033,35 +1160,31 @@ msgstr ""
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "No es pot utilitzar la difusió sense un domini NIS"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Seleccioneu el fitxer"
-#: authentication.pm:897
-#, fuzzy, c-format
+#: authentication.pm:882
+#, c-format
msgid "Domain Windows for authentication : "
-msgstr "Cal l'autenticació de domini"
+msgstr "Domini de Windows per a l'autenticació: "
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "Nom d'usuari de l'administrador del domini"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Contrasenya de l'administrador del domini"
-# NOTE: this message will be displayed at boot time; that is
-# only the ascii charset will be available on most machines
-# so use only 7bit for this message (and do transliteration or
-# leave it in English, as it is the best for your language)
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1070,115 +1193,121 @@ msgid ""
"wait for default boot.\n"
"\n"
msgstr ""
-"Benvingut al selector de sistema operatiu!\n"
+"Benvingut/da al selector de sistema operatiu!\n"
"\n"
"Trieu un sistema operatiu de la llista superior, o espereu\n"
"per arrencar en el sistema operatiu predeterminat.\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO amb menú de text"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 amb menú gràfic"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 amb menú de text"
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr "GRUB amb menú gràfic"
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr "GRUB amb menú de text"
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr "rEFInd amb menú gràfic"
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
-msgstr "SILO"
+msgid "U-Boot/Extlinux with text menu"
+msgstr "U-Boot / Extlinux amb menú de text"
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "no hi ha prou espai a /boot"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "No podeu instal·lar el carregador de l'arrencada a una partició %s\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
"renumbered"
msgstr ""
-"La configuració del vostre carregador d'arrencada s'ha d'actualitzar ja que "
-"la partició ha estat renumerada"
+"La configuració del vostre gestor d'arrencada s'ha d'actualitzar, ja que la "
+"partició ha estat renumerada"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
-"El carregador d'arrencada no s'ha pogut instal·lar correctament. Heu "
-"d'arrencar amb l'opció de rescat i escollir \"%s\""
+"El gestor d'arrencada no s'ha pogut instal·lar correctament. Heu d'arrencar "
+"amb l'opció de rescat i escollir «%s»"
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
-msgstr "Reinstal·la el carregador de l'arrencada"
+msgstr "Reinstal·la el gestor d'arrencada"
-#: common.pm:142
-#, fuzzy, c-format
+#: common.pm:271
+#, c-format
msgid "B"
-msgstr "KB"
+msgstr "B"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "KB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "MB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "GB"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "TB"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr "%02d:%02d"
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d minuts"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 minut"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d segons"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr ""
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1191,19 +1320,19 @@ msgstr ""
"localment, i tractar-lo com si fos un sistema de fitxers local (amb el "
"benentès\n"
"que el servidor web està configurat com a servidor WebDAV). Si voleu afegir\n"
-"punts de muntatge WebDAV, seleccioneu \"Nou\"."
+"punts de muntatge WebDAV, seleccioneu «Nou»."
#: diskdrake/dav.pm:25
#, c-format
msgid "New"
msgstr "Nou"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Desmunta"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Munta"
@@ -1213,43 +1342,44 @@ msgstr "Munta"
msgid "Server"
msgstr "Servidor"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Punt de muntatge"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Opcions"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Elimina"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Fet"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Error"
@@ -1257,87 +1387,80 @@ msgstr "Error"
#: diskdrake/dav.pm:86
#, c-format
msgid "Please enter the WebDAV server URL"
-msgstr "Si us plau introduïu l'URL del servidor WebDAV"
+msgstr "Introduïu l'URL del servidor WebDAV"
#: diskdrake/dav.pm:90
#, c-format
msgid "The URL must begin with http:// or https://"
msgstr "L'URL ha de començar per http:// o https://"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Advertència"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Voleu fer clic en aquest botó?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr "Esteu segur que voleu esborrar aquest punt de muntatge?"
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Servidor: "
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Punt de muntatge: "
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Opcions: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
-msgstr "Particionament"
+msgstr "Particions"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
+"Feu clic en una partició, trieu un tipus de sistema de fitxers i després "
+"trieu una acció"
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Llegiu-ho atentament"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
-msgstr "Si us plau, feu primer una còpia de seguretat de les vostres dades"
+msgstr "Feu primer una còpia de seguretat de les vostres dades"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Surt"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Continua"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Ajuda"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1346,311 +1469,329 @@ msgid ""
msgstr ""
"Teniu una partició de Microsoft Windows gran\n"
"Suggereixo que primer en canvieu la mida\n"
-"(feu-hi clic i després feu clic a \"Canvia la mida\")"
+"(feu-hi clic i després feu clic a «Canvia la mida»)"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
-msgstr "Si us plau, feu clic a una partició "
+msgstr "Feu clic a una partició "
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Detalls"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "No s'ha trobat cap disc dur!"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Desconegut"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
-msgid "Ext3"
-msgstr "Surt"
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr "Ext4"
-#: diskdrake/hd_gtk.pm:378
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
msgid "XFS"
-msgstr "HFS"
+msgstr "XFS"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Intercanvi"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Altres"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Buit"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
-msgstr "Tipus de sistema de fitxers:"
+msgstr "Tipus de sistemes de fitxers:"
-#: diskdrake/hd_gtk.pm:407
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:461
+#, c-format
msgid "This partition is already empty"
-msgstr "No es pot canviar la mida d'aquesta partició"
+msgstr "La partició ja està buida"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
-msgstr "Utilitzeu primer \"Unmount\""
+msgstr "Utilitzeu primer «Unmount»"
-#: diskdrake/hd_gtk.pm:416
-#, fuzzy, c-format
+#: diskdrake/hd_gtk.pm:470
+#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "Utilitzeu \"%s\" al seu lloc"
+msgstr "Utilitza «%s» com a alternativa (en mode expert)"
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Tipus"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Trieu una altra partició"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Trieu una partició"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "Més"
-#
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
+#, c-format
msgid "Confirmation"
-msgstr "Configuració"
+msgstr "Confirmació"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Voleu continuar igualment?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Surt sense desar"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Voleu sortir sense escriure la taula de particions?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "Voleu desar les modificacions a /etc/fstab"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr ""
"Us caldrà tornar a arrencar per tal que les modificacions de la taula de "
"particions tinguin efecte"
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
"Otherwise no entry for mount point %s will be written in fstab.\n"
"Quit anyway?"
msgstr ""
+"Caldria formatar la partició %s.\n"
+"Si no, no s'escriurà a fstab cap entrada per al punt de muntatge %s.\n"
+"Voleu sortir igualment?"
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Buida-ho tot"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Assigna automàticament"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "Canvia al mode normal"
+msgid "Normal mode"
+msgstr "Mode normal"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "Canvia al mode expert"
+msgid "Expert mode"
+msgstr "Mode expert"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "Informació del disc dur"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "S'utilitzen totes les particions primàries"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "No es pot afegir cap més partició"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
"partition"
msgstr ""
-"Si voleu tenir més particions, suprimiu-ne una per poder crear una partició "
+"Si voleu tenir més particions, elimineu-ne una per poder crear una partició "
"ampliada"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Torna a carregar la taula de particions"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Informació detallada"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
-msgstr ""
+msgstr "Mostra"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Canvia la mida"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Formata"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Afegeix al RAID"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Afegeix a l'LVM"
-#: diskdrake/interactive.pm:410
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:417
+#, c-format
msgid "Use"
-msgstr "ID d'usuari"
+msgstr "Utilitza"
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
-msgstr "Suprimeix"
+msgstr "Elimina"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Elimina del RAID"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Elimina de l'LVM"
-#: diskdrake/interactive.pm:415
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:422
+#, c-format
msgid "Remove from dm"
-msgstr "Elimina de l'LVM"
+msgstr "Elimina del dm"
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "Modifica el RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Utilitza per a loopback"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Crea"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Mou els fitxers a la nova partició"
+msgstr "No s'ha pogut muntar la partició"
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Crea una nova partició"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Sector d'inici: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Mida en MB: "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Tipus de sistema de fitxers: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Preferència: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "Nom del volum lògic"
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr "Xifra la partició"
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr "Clau de xifratge"
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Clau de xifratge (un altre cop)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Les claus de xifratge no coincideixen"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr "No s'ha trobat la clau de xifratge"
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
@@ -1658,299 +1799,317 @@ msgstr ""
"(perquè heu arribat al màxim nombre de particions primàries).\n"
"Esborreu primer una partició primària i creeu una partició ampliada."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
-msgstr "Voleu suprimir el fitxer de loopback?"
+msgstr "Voleu eliminar el fitxer loopback?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr ""
"Després de canviar el tipus de la partició %s, se'n perdran totes les dades"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Canvia el tipus de partició"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Quin sistema de fitxers voleu?"
-#: diskdrake/interactive.pm:594
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:650
+#, c-format
msgid "Switching from %s to %s"
-msgstr "S'està canviant de ext2 a ext3"
+msgstr "S'està canviant de %s a %s"
-#: diskdrake/interactive.pm:624
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:685
+#, c-format
msgid "Set volume label"
-msgstr "Etiqueta del volum: "
+msgstr "Estableix una etiqueta del disc"
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
-msgstr ""
+msgstr "Atenció, això s'escriurà a disc tan bon punt ho valideu!"
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
-msgstr ""
+msgstr "Atenció, això s'escriurà a disc només després de la formatació!"
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
-msgstr ""
+msgstr "Quina etiqueta de disc?"
-#: diskdrake/interactive.pm:630
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:691
+#, c-format
msgid "Label:"
-msgstr "Etiqueta"
+msgstr "Etiqueta:"
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "On voleu muntar el fitxer de loopback %s?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "On voleu muntar el dispositiu %s?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"No es pot anul·lar el punt de muntatge, perquè aquesta partició\n"
"s'utilitza per al loopback. Elimineu primer el loopback"
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "On voleu muntar %s?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "S'està canviant la mida"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
-msgstr "S'estan calculant els límits del sistema de fitxers de la FAT"
+msgstr "S'estan calculant els límits del sistema de fitxers FAT"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "No es pot canviar la mida d'aquesta partició"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "Cal fer una còpia de seguretat de totes les dades d'aquesta partició"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr ""
"Després de canviar la mida de la partició %s, se'n perdran totes les dades"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Escolliu la nova mida"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "Nova mida en MB: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
-msgstr ""
+msgstr "Mida mínima: %s MB"
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
-msgstr ""
+msgstr "Mida màxima: %s MB"
-#: diskdrake/interactive.pm:805
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
+#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-"Per assegurar la integritat de les dades després de canviar la mida de la o "
-"les particions,\n"
-"les comprovacions del sistema de fitxers es realitzaran el proper cop que "
-"arrenqueu en Windows(TM)"
+"Per a assegurar la integritat de les dades després del redimensionament de "
+"la partició,\n"
+"en el proper reinici en Microsoft Windows® s'executarà una comprovació del "
+"sistema de fitxers"
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Clau de xifratge del sistema de fitxers: "
-#: diskdrake/interactive.pm:854
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:982
+#, c-format
msgid "Enter your filesystem encryption key"
-msgstr "Escolliu la clau de xifratge del sistema de fitxers"
+msgstr "Introduïu la clau de xifratge per al sistema de fitxers"
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "Clau de xifratge"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
-msgstr ""
+msgstr "Clau invàlida"
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Escolliu un RAID existent al qual afegir-ho"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "nou"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Escolliu un LVM existent al qual afegir-ho"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
#, c-format
-msgid "LVM name?"
-msgstr "Nom LVM?"
+msgid "LVM name"
+msgstr "Nom LVM"
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr "Introduïu un nom per al nou grup del volum LVM"
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr "«%s» ja existeix"
+
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr "S'està preparant l'LVM"
+
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
"Do you want to move used physical extents on this volume to other volumes?"
msgstr ""
+"El volum físic %s es troba encara en ús.\n"
+"Voleu moure les extensions d'espai físic utilitzades en aquest volum a "
+"altres volums?"
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
-msgstr ""
+msgstr "S'estan movent les extensions físiques"
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "Aquesta partició no es pot utilitzar per al loopback"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Loopback"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Nom del fitxer de loopback: "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "Proporcioneu un nom de fitxer"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr "Un altre loopback ja està utilitzant el fitxer, escolliu-ne un altre"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "El fitxer ja existeix. El voleu utilitzar?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "Opcions de muntatge"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "Diversos"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "dispositiu"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "nivell"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
msgstr "mida del fragment en KB"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "Aneu amb compte: aquesta operació és perillosa."
-#: diskdrake/interactive.pm:1109
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1250
+#, c-format
msgid "Partitioning Type"
-msgstr "Particionament"
+msgstr "Tipus de particions"
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
-msgstr "Quin tipus de particionament voleu?"
+msgstr "Quin tipus de particions voleu?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr ""
"Us caldrà tornar a arrencar per tal que les modificacions tinguin efecte"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "La taula de particions de la unitat %s s'escriurà al disc"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "S'està formatant la partició %s"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr "Després de formatar la partició %s, se'n perdran totes les dades"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "Voleu comprovar els blocs incorrectes?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "Mou els fitxers a la nova partició"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Fitxers ocults"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1960,129 +2119,133 @@ msgid ""
"mounted there or leave them where they are (which results in hiding them by "
"the contents of the mounted partition)"
msgstr ""
+"El directori %s ja conté dades\n"
+"(%s)\n"
+"\n"
+"Podeu triar entre moure els fitxers cap a la partició que s'hi muntarà, o bé "
+"deixar-los on són (però quedaran ocults pel contingut de la partició muntada)"
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr "S'estan movent els fitxers a la nova partició"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "S'està copiant %s"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "S'està esborrant %s"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "la partició %s ara és %s"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
-msgstr ""
+msgstr "S'han tornat a numerar les particions: "
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Dispositiu: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr "Etiqueta del volum: "
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
-msgstr ""
+msgstr "UUID: "
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "Lletra d'unitat de DOS: %s (només és una suposició)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Tipus: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Nom: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Inici: sector %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr "Mida: %s (%s%% del disc)"
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Mida: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s sectors"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "Cilindre %d a %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
-msgstr ""
+msgstr "Nombre d'extensions lògiques: %d\n"
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Formatat\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Sense formatar\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Muntat\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1446
+#, c-format
msgid "Encrypted"
-msgstr "Clau de xifratge"
+msgstr "Xifrat"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
-msgstr ""
+msgstr " (mapat a %s)"
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
-msgstr ""
+msgstr " (per a mapar a %s)"
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
-msgstr ""
+msgstr " (inactiu)"
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2091,7 +2254,7 @@ msgstr ""
"Fitxer(s) de loopback:\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2100,27 +2263,27 @@ msgstr ""
"Partició arrencada per defecte\n"
" (per a l'arrencada de l'MS-DOS, no per a LILO)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Nivell %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
msgstr "Mida del fragment %d KB\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "Discs RAID %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Nom del fitxer de loopback: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2133,7 +2296,7 @@ msgstr ""
"una partició de programes de control. Potser\n"
"és millor que no la toqueu.\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2146,69 +2309,64 @@ msgstr ""
"Bootstrap és per arrencar\n"
"el vostre sistema en dual.\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
-msgstr ""
+msgstr "Espai lliure a %s (%s)"
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Només lectura"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Mida: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Geometria: %s cilindres, %s capçals, %s sectors\n"
-#: diskdrake/interactive.pm:1351
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Nom: "
+
+#: diskdrake/interactive.pm:1492
+#, c-format
msgid "Medium type: "
-msgstr "Tipus de sistema de fitxers: "
+msgstr "Tipus de mitjà: "
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "Discs LVM %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Tipus de taula de particions: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
-msgstr "al canal %d amb id %d\n"
+msgstr "al canal %d amb id. %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "Escolliu la clau de xifratge del sistema de fitxers"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
"Aquesta clau de xifratge és massa senzilla (ha de tenir com a mínim %d "
"caràcters)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "Les claus de xifratge no coincideixen"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Clau de xifratge (un altre cop)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Algoritme de xifrat"
@@ -2218,17 +2376,9 @@ msgstr "Algoritme de xifrat"
msgid "Change type"
msgstr "Canvia el tipus"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Cancel·la"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr ""
"No es pot entrar amb el nom d'usuari %s (potser la contrasenya és "
"incorrecta?)"
@@ -2254,7 +2404,7 @@ msgid ""
"Please enter your username, password and domain name to access this host."
msgstr ""
"Introduïu el vostre nom d'usuari, la contrasenya i el nom de domini per "
-"accedir a aquesta màquina."
+"accedir a aquest amfitrió."
#: diskdrake/smbnfs_gtk.pm:180
#, c-format
@@ -2273,40 +2423,40 @@ msgstr "Cerca servidors"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "Cerca nous servidors"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "Cal instal·lar el paquet %s. Voleu instal·lar-lo?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr "No es pot instal·lar el paquet %s!"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "El paquet %s necessari falta"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Cal instal·lar els paquets següents:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "S'estan instal·lant els paquets..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "S'estan eliminant els paquets..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
@@ -2316,32 +2466,41 @@ msgstr ""
"sistemes de fitxers. Si us plau, comproveu el vostre maquinari per trobar el "
"problema"
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
+#, c-format
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "Heu de tenir una partició ESP FAT32 muntada en /boot/EFI"
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "Heu de tenir una partició FAT muntada en /boot/efi"
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+"Heu de tenir una partició d'arrencada BIOS per als discs sense particions "
+"GPT i no UEFI. Si us plau, creeu-ne una abans de continuar."
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "S'està creant i formatant el fitxer %s"
-#: fs/format.pm:119
-#, fuzzy, c-format
+#: fs/format.pm:202
+#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "No sé com formatar %s amb el tipus %s"
+msgstr "No sé com establir una etiqueta en %s amb tipus %s"
-#: fs/format.pm:126
-#, fuzzy, c-format
+#: fs/format.pm:214
+#, c-format
msgid "setting label on %s failed, is it formatted?"
-msgstr "%s formatació de %s ha fallat"
+msgstr "l'establiment de l'etiqueta a %s ha fallat, està formatat?"
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "No sé com formatar %s amb el tipus %s"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s formatació de %s ha fallat"
@@ -2356,89 +2515,91 @@ msgstr "Muntatges circulars %s\n"
msgid "Mounting partition %s"
msgstr "S'està muntant la partició %s"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "El muntatge de la partició %s en el directori %s ha fallat"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "S'està comprovant %s"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "s'ha produït un error en desmuntar %s: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "S'està habilitant la partició d'intercanvi %s"
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
-msgstr "Usa un sistema de fitxers xifrat"
+msgid "Enable POSIX Access Control Lists"
+msgstr "Habilita les llistes de control d'accés POSIX"
#: fs/mount_options.pm:116
#, c-format
msgid "Flush write cache on file close"
-msgstr ""
+msgstr "Buida la memòria d'escriptura en tancar el fitxer"
#: fs/mount_options.pm:118
#, c-format
msgid "Enable group disk quota accounting and optionally enforce limits"
msgstr ""
+"Habilita el comptatge de la quota de disc del grup i de manera opcional fes "
+"complir els límits"
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
-"No actualitzeu els temps d'accés a inode en aquest sistema de fitxers (p.ex. "
-"per a un accés\n"
-"més ràpid a l'\"spool\" de grups de discussió per accelerar els servidor de "
+"No actualitzeu el temps d'accés a l'inode en aquest sistema de fitxers (p. "
+"ex. per a un accés\n"
+"més ràpid a l'«spool» de grups de discussió per accelerar els servidors de "
"grups de discussió)."
#: fs/mount_options.pm:123
-#, fuzzy, c-format
+#, c-format
msgid ""
"Update inode access times on this filesystem in a more efficient way\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
-"No actualitzeu els temps d'accés a inode en aquest sistema de fitxers (p.ex. "
-"per a un accés\n"
-"més ràpid a l'\"spool\" de grups de discussió per accelerar els servidor de "
-"grups de discussió)."
+"Actualitza els temps d'accés d'inode en aquest sistema de fitxers d'una "
+"manera més eficient \n"
+"(per exemple, per a un accés més ràpid a la cua de notícies per accelerar "
+"els servidors de notícies)."
#: fs/mount_options.pm:126
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
"Només es pot muntar explícitament (p. ex.,\n"
"l'opció -a no farà que el sistema de fitxers es munti)."
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr ""
-"No interpretis el dispositius especials de caràcter o bloc en el sistema de "
+"No interpretis els dispositius especials de caràcter o bloc en el sistema de "
"fitxers."
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
"No permetis que s'executi cap binari en el sistema de fitxers\n"
"muntat. Aquesta opció pot ser útil per a un servidor que tingui\n"
-"sistemes de fitxers amb binaris d'arquitectures diferents a la pròpia."
+"sistemes de fitxers amb binaris d'arquitectures diferents de la pròpia."
#: fs/mount_options.pm:135
#, c-format
@@ -2453,70 +2614,73 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr "Munta el sistema de fitxers només de lectura."
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr "Totes les E/S del sistema de fitxers s'han de fer sincronitzadament."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr ""
+"Permet el muntatge i desmuntatge del sistema de fitxers a qualsevol usuari."
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
-msgstr ""
+msgid "Allow an ordinary user to mount the filesystem."
+msgstr "Permet el muntatge del sistema de fitxers a un usuari ordinari."
#: fs/mount_options.pm:147
#, c-format
msgid "Enable user disk quota accounting, and optionally enforce limits"
msgstr ""
+"Habilita el comptatge de la quota de disc de l'usuari i de manera opcional "
+"fes complir els límits"
#: fs/mount_options.pm:149
#, c-format
msgid "Support \"user.\" extended attributes"
-msgstr ""
+msgstr "Suport dels atributs estesos per als usuaris"
#: fs/mount_options.pm:151
#, c-format
msgid "Give write access to ordinary users"
-msgstr "Dona accés d'escriptura a usuaris normal"
+msgstr "Dona accés d'escriptura als usuaris normals"
#: fs/mount_options.pm:153
#, c-format
msgid "Give read-only access to ordinary users"
-msgstr "Dona accés només d'escriptura als usuaris normal"
+msgstr "Dona accés només d'escriptura als usuaris normals"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Duplica el punt de muntatge %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "No hi ha particions disponibles"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "S'estan explorant les particions per trobar els punts de muntatge"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Escolliu els punts de muntatge"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Escolliu les particions que voleu formatar"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2525,25 +2689,25 @@ msgstr ""
"És impossible de comprovar el sistema de fitxers %s. Voleu reparar els "
"errors? (Vigileu, podríeu perdre dades.)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr ""
"No hi ha prou espai d'intercanvi per completar la instal·lació; si us plau, "
"afegiu-ne"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"Heu de tenir una partició arrel.\n"
"Per fer-ho, creeu una partició (o feu clic a una d'existent).\n"
-"Després, trieu l'acció \"Punt de muntatge\" i doneu-li el valor '/'"
+"Després, trieu l'acció «Punt de muntatge» i doneu-li el valor '/'"
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2554,94 +2718,58 @@ msgstr ""
"\n"
"Voleu continuar igualment?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "Utilitza l'espai lliure"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "No hi ha prou espai lliure per assignar noves particions"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "Utilitza les particions existents"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "No hi ha cap partició que es pugui utilitzar"
-#: fs/partitioning_wizard.pm:103
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Utilitza la partició Microsoft Windows® per al loopback"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Quina partició voleu utilitzar per al Linux4Win?"
-
-#: fs/partitioning_wizard.pm:108
-#, c-format
-msgid "Choose the sizes"
-msgstr "Escolliu les mides"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "Mida de la partició arrel en MB: "
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Mida de la partició d'intercanvi en MB: "
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "S'està calculant la mida de la partició de Microsoft Windows®"
-#: fs/partitioning_wizard.pm:119
+#: fs/partitioning_wizard.pm:201
#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-"No hi ha cap partició FAT per utilitzar com a loopback (o no queda prou "
-"espai)"
-
-#: fs/partitioning_wizard.pm:127
-#, fuzzy, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "Utilitza l'espai lliure de la partició de Windows"
+msgstr "Utilitza l'espai lliure en una partició Microsoft Windows®"
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "A quina partició voleu canviar-li la mida?"
-#: fs/partitioning_wizard.pm:143
-#, c-format
-msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
-msgstr ""
-"El redimensionador de la FAT no pot gestionar la vostra partició. \n"
-"S'ha produït l'error següent: %s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "S'està calculant la mida de la partició de Microsoft Windows®"
-
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
"Your Microsoft Windows® partition is too fragmented. Please reboot your "
"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+"the %s installation."
msgstr ""
-"La partició de Microsoft Windows® està massa fragmentada. Si us plau, "
-"reinicieu l'ordinador sota Microsoft Windows® i executeu l'eina \"defrag\". "
-"Llavors, torneu a començar la instal·lació del Mandriva Linux."
+"La partició de Microsoft Windows® està massa fragmentada. Reinicieu "
+"l'ordinador sota Microsoft Windows® i executeu l'eina «defrag». Llavors, "
+"torneu a començar la instal·lació del %s."
+
+#: fs/partitioning_wizard.pm:215
+#, c-format
+msgid "Failed to find the partition to resize (%d choices)"
+msgstr "No s'ha trobat la partició per canviar-ne la mida (%d possibilitats)"
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2652,8 +2780,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2667,97 +2795,89 @@ msgstr ""
"\n"
"\n"
"Aneu amb compte: aquesta operació és perillosa. Si encara no ho heu fet, "
-"sortiu de la instal·lació, executeu \"chkdsk c:\" a la línia de comandes "
-"sota Windows (atenció el programa gràfic \"scandisk\" no és suficient, "
-"assegura't d'usar \"chkdsk\" en una línia de comandes), opcionalment "
-"executeu defrag, despréstorneu a començar la instal·lació. També haurieu de "
-"fer una còpia de seguretat de les vostres dades.\n"
+"sortiu de la instal·lació, executeu «chkdsk c:» a la línia d'ordres sota "
+"Windows (atenció el programa gràfic «scandisk» no és suficient, assegureu-"
+"vos d'utilitzar «chkdsk» en una línia d'ordres), opcionalment executeu "
+"defrag, després torneu a començar la instal·lació. També hauríeu de fer una "
+"còpia de seguretat de les vostres dades.\n"
"\n"
"\n"
"Quan estigueu segur, premeu %s."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Següent"
-#: fs/partitioning_wizard.pm:168
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:237
+#, c-format
msgid "Partitionning"
-msgstr "Particionament"
+msgstr "Particions"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr ""
"Quina mida voleu deixar per a la partició de Microsoft Windows® partició %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Mida"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "S'està redimensionant la partició de Microsoft Windows®"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "Ha fallat el redimensionament de la FAT: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"Per assegurar la integritat de les dades després de canviar la mida de la o "
-"les particions,\n"
-"les comprovacions del sistema de fitxers es realitzaran el proper cop que "
-"arrenqueu en Windows(TM)"
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr ""
"No hi ha cap partició FAT a la qual canviar la mida (o no queda prou espai)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Elimina el Microsoft Windows®"
-#: fs/partitioning_wizard.pm:203
-#, fuzzy, c-format
+#: fs/partitioning_wizard.pm:273
+#, c-format
msgid "Erase and use entire disk"
-msgstr "Esborra tot el disc"
+msgstr "Esborra i utilitza tot el disc"
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
-msgstr "Teniu més d'un disc dur; en quin voleu instal·lar el Linux?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
+"Teniu més d'una unitat de disc. Quina voleu que l'instal·lador faci servir?"
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr ""
"Es perdran TOTES les particions, i les dades que contenen, de la unitat %s"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
-msgstr "Particionament personalitzat de disc"
+msgstr "Particions personalitzades de disc"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
-msgstr "Utilitza l'fdisk"
+msgstr "Utilitza fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2766,56 +2886,72 @@ msgstr ""
"Ara podeu fer les particions a %s.\n"
"Quan acabeu, no oblideu desar-les utilitzant 'w'"
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr "Ext2/3/4"
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
#, c-format
-msgid "I can not find any room for installing"
-msgstr "No es pot trobar espai per a la instal·lació"
+msgid "I cannot find any room for installing"
+msgstr "No es pot trobar espai per a la instal·lació."
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
-msgstr ""
-"L'auxiliar de particionament del DrakX ha trobat les solucions següents:"
+msgstr "L'auxiliar de particions DrakX ha trobat les solucions següents:"
+
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr "Aquest és el contingut del disc dur "
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
-msgstr "Ha fallat el particionament: %s"
+msgstr "Ha fallat establir les particions: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr "No podeu utilitzar el JFS per a particions inferiors a 16 MB"
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "No podeu utilitzar el ReiserFS per a particions inferiors a 32 MB"
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr "No podeu utilitzar btrfs per a les particions inferiors als 256 MB"
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "senzill"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "amb /usr"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "servidor"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr ""
+"S'ha detectat que el BIOS permet RAID per programari en els discs %s. Ho "
+"voleu activar?"
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2824,86 +2960,66 @@ msgid ""
"Do you agree to lose all the partitions?\n"
msgstr ""
"No es pot llegir la taula de particions del dispositiu %s, està massa "
-"malmesa :(\n"
-"Es pot mirar de continuar, suprimint les particions incorrectes (es perdran "
+"malmesa. :(\n"
+"Es pot mirar de continuar eliminant les particions incorrectes (se'n perdran "
"TOTES LES DADES!).\n"
"L'altra solució és impedir al DrakX que modifiqui la taula de particions.\n"
"(l'error és %s)\n"
"\n"
-"Esteu d'acord en perdre totes les particions?\n"
+"Esteu d'acord a perdre totes les particions?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Els punts de muntatge han de començar amb una /"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "Els punts de muntatge només poden contenir caràcters alfanumèrics"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Ja hi ha una partició amb el punt de muntatge %s\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"Heu seleccionat una partició RAID de programari com a arrel (/).\n"
-"Això no ho pot gestionar cap carregador d'arrencada sense una partició /"
-"boot.\n"
-"Si us plau, assegureu-vos d'afegir una partició /boot"
-
-#: fsedit.pm:437
-#, fuzzy, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr "No podeu utilitzar un volum lògic LVM per al punt de muntatge %s"
+"Heu seleccionat una partició xifrada com a /boot.\n"
+"No hi ha cap gestor d'arrencada que sigui capaç de gestionar-ho.\n"
+"Assegureu-vos d'afegir una partició /boot separada."
-#: fsedit.pm:439
-#, fuzzy, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
+#: fsedit.pm:478 fsedit.pm:489
+#, c-format
+msgid "You cannot use an encrypted filesystem for mount point %s"
msgstr ""
-"Heu seleccionat un volum lògic LVM com a arrel (/).\n"
-"El carregador d'arrencada no ho pot gestionar sense una partició /boot.\n"
-"Si us plau, assegureu-vos d'afegir una partició /boot"
+"No podeu utilitzar un sistema de fitxers xifrat per al punt de muntatge %s"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Aquest directori s'ha de mantenir dins del sistema de fitxers arrel"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
-"Necessiteu un sistema de fitxers real (ext2/ext3, reiserfs, xfs o jfs) per a "
+"Necessiteu un sistema de fitxers real (ext2/3/4, reiserfs, xfs o jfs) per a "
"aquest punt de muntatge\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr ""
-"No podeu utilitzar un sistema d'arxius xifrat per al punt de muntatge %s"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
msgstr "No hi ha prou espai per a l'assignació automàtica"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "Res a fer"
@@ -2913,475 +3029,464 @@ msgstr "Res a fer"
msgid "SATA controllers"
msgstr "Controladors SATA"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "Controladors RAID"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "Controladors (E)IDE/ATA"
-#: harddrake/data.pm:92
-#, fuzzy, c-format
+#: harddrake/data.pm:93
+#, c-format
msgid "Card readers"
-msgstr "Model de la targeta:"
+msgstr "Lectors de targetes"
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Controladors Firewire"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "Controladors PCMCIA"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "Controladors SCSI"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "Controladors USB"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "Ports USB"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "Controladors SMBus"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Ponts i controladors del sistema"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Disquet"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Disc"
-#: harddrake/data.pm:203
-#, fuzzy, c-format
+#: harddrake/data.pm:204
+#, c-format
msgid "USB Mass Storage Devices"
-msgstr "Dispositius de so USB"
+msgstr "Dispositius d'emmagatzematge massiu USB"
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "CD-ROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "Gravadors de CD/DVD"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "Cinta"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "Controladors AGP"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Targeta de vídeo"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr "Targeta DVB"
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "Targeta de TV"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
-msgstr "Altres sispositius multimèdia"
+msgstr "Altres dispositius multimèdia"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "Targeta de so"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "Webcam"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "Processadors"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "Adaptadors XDSI"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr "Dispositius de so USB"
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr "Targetes de ràdio"
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr "Targetes de xarxa ATM"
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr "Targetes de xarxa WAN"
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr "Dispositius Bluetooth"
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
-msgstr "Targeta Ethernet"
+msgstr "Targeta de xarxa"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Mòdem"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "Adaptadors ADSL"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Memòria"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Impressora"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr "Ports de controladors per jocs"
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Palanca de jocs"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Teclat"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
-msgstr ""
+msgstr "Tauleta i pantalla tàctil"
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Ratolí"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
-msgstr ""
+msgstr "Biometria"
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "SAI"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Escàner"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Desconegut/Altres"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "CPU #"
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Espereu si us plau... s'està aplicant la configuració"
+msgid "Couldn't install the required packages"
+msgstr "No s'han pogut instal·lar els paquets necessaris."
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Enable PulseAudio"
-msgstr ""
+msgid "Please check the repositories are correctly configured"
+msgstr "Comproveu que els dipòsits estiguin configurats correctament."
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:462
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
-msgstr ""
+msgid "No known driver"
+msgstr "No hi ha cap controlador conegut"
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr "No hi ha cap controlador conegut per a la vostra targeta de so (%s)"
+
+#: harddrake/sound.pm:517
+#, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "Heu de tornar a engegar l'ordinador perquè els canvis tinguin efecte"
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:522
#, c-format
-msgid "Enable user switching for audio applications"
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
msgstr ""
+"Avís: tant pulseaudio com pipewire estan instal·lats i poden entrar en "
+"conflicte. Corregiu la configuració aplicant una opció."
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:527
#, c-format
-msgid "Use Glitch-Free mode"
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
msgstr ""
+"Avís: task-pipewire no està disponible a cap font multimèdia, de manera que "
+"només es pot configurar pulseaudio. Si us plau, corregiu la configuració del "
+"dipòsit."
+
+#: harddrake/sound.pm:541
+#, c-format
+msgid "Select the sound server"
+msgstr "Seleccioneu el servidor de so"
+
+#: harddrake/sound.pm:551
+#, c-format
+msgid "PulseAudio"
+msgstr "PulseAudio"
+
+#: harddrake/sound.pm:552
+#, c-format
+msgid "PulseAudio with Glitch-Free mode"
+msgstr "PulseAudio amb mode sense errors"
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:553
+#, c-format
+msgid "PipeWire with WirePlumber"
+msgstr "PipeWire amb WirePlumber"
+
+#: harddrake/sound.pm:554
+#, c-format
+msgid "PipeWire with PipeWire Media Session"
+msgstr "PipeWire amb sessió multimèdia de PipeWire"
+
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
-msgstr ""
+msgstr "Reinicia el mesclador d'àudio als valors predeterminats"
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr "Resolució de problemes"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr "La targeta gràfica usa el controlador <b>%s</b>\n"
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "No hi ha cap controlador alternatiu"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
"currently uses \"%s\""
msgstr ""
"No hi ha cap controlador OSS/ALSA alternatiu conegut per a la vostra targeta "
-"de so (%s), que actualment fa servir \"%s\""
+"de so (%s), que actualment fa servir «%s»"
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Configuració de so"
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Aquí podeu seleccionar un controlador alternatiu (tant OSS com ALSA) per ala "
-"targeta de so (%s)"
+msgid "Sound troubleshooting"
+msgstr "Resolució de problemes amb el so"
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
"\n"
"\n"
-"La vostra targeta fa servir actualment el controlador %s \"%s\" (el "
-"controlador per defecte per a aquesta targeta és \"%s\")"
-
-#: harddrake/sound.pm:414
-#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"L'OSS (Sistema de So Obert) va ser la primera API de so. És una API "
-"independent del sistema operatiu (disponible en molts sistemes UNIX(tm)) "
-"però és molt bàsica i limitada.\n"
-"Encara més, tots els controladors OSS reinventen la roda.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"L'ALSA (Arquitectura Avançada de So per a Linux) és una arquitectura modular "
-"que\n"
-"funciona amb una àmplia varietat de targetes ISA, USB i PCI.\n"
"\n"
-"També proporciona una API molt més funcional que la d'OSS.\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"Per utilitzar alsa, es pot triar entre:\n"
-"- l'antiga API compatible d'OSS\n"
-"- la nova API d'ALSA que proporciona moltes característiques millorades però "
-"que necessita fer servir la llibreria ALSA.\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Controlador:"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"L'antic controlador \"%s\" ha estat desaprovat.\n"
"\n"
-"S'ha vist que causa problemes al nucli en descarregar-se.\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
-"El nou controlador \"%s\" només s'usarà en la següent arrencada."
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "No hi ha cap programa de control de codi obert"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"No hi ha cap programa de control gratuït per a la vostra targeta de so (%s), "
-"però n'hi ha un de propietat a \"%s\"."
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "No hi ha cap controlador conegut"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "No hi ha cap controlador conegut per a la vostra targeta de so (%s)"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Resolució de problemes amb el so"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
+"\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
+"\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"El comprovador de sons d'error clàssic pot executar les ordres següents:\n"
+"A continuació hi ha consells bàsics per ajudar-vos a depurar problemes "
+"d'àudio; però per saber els trucs i consells precisos i actualitzats, si us "
+"plau, consulteu el següent:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" us dirà el programa de control que la\n"
-"vostra targeta utilitza per defecte\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" us dirà el programa de control\n"
-"que està utilitzant actualment\n"
"\n"
-"- \"/sbin/lsmod\" us permetrà comprovar si el seu mòdul (programa de\n"
-"control) està carregat o no\n"
+"- Recomanació general. Habiliteu el PulseAudio. Si heu optat per no usar el "
+"PulseAudio, us recomanem que l'habiliteu. Per a la majoria de casos d'ús "
+"d'escriptori, el PulseAudio és l'opció recomanada i la que té més suport.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" i \"/sbin/chkconfig --list alsa\" us\n"
-"diran si els serveis de so i alsa estan configurats per executar-se en\n"
-"initlevel 3\n"
"\n"
-"- \"aumix -q\" us dirà si el so està silenciat o no\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" us dirà quin programa utilitza la targeta de "
-"so.\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "Deixa'm agafar qualsevol programa de control"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Selecció d'un programa de control arbitrari"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
+"- El kmix (KDE), El gnome-control-center sound (GNOME) i el pavucontrol "
+"(genèric) llançaran aplicacions gràfiques per permetre-us visualitzar els "
+"dispositius de so i ajustar-ne els nivells del volum.\n"
+"\n"
+"\n"
+"- \"ps aux | grep pulseaudio\" comprovarà que el PulseAudio s'executi.\n"
+"\n"
+"\n"
+"- \"pactl stat\" comprovarà que pugueu connectar-vos al dimoni del "
+"PulseAudio correctament.\n"
+"\n"
+"\n"
+"- \"pactl list sink-inputs\" us dirà quins programes estan reproduint so a "
+"través del PulseAudio a cada moment.\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" us dirà l'estat actual de l'OSS Proxy "
+"Daemon. S'usa per habilitar so des d'aplicacions de llegat que usin l'API de "
+"so OSS. Hauríeu d'instal·lar el paquet ossp si us cal aquesta "
+"funcionalitat.\n"
+"\n"
+"\n"
+"- \"pacmd ls\" us oferirà molta informació de depuració sobre l'estat actual "
+"de l'àudio.\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" us dirà quin controlador de baix nivell "
+"usa per defecte la vostra targeta.\n"
+"\n"
+"\n"
+"- \"/usr/sbin/lsmod | grep snd\" us permetrà comprovar quins mòduls "
+"(controladors) del nucli relacionats amb l'àudio estan carregats.\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" us oferirà un mesclador basat en text per als controls "
+"del mesclador de baix nivell d'ALSA per a la primera targeta de so.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
-msgstr ""
-"Si esteu segur de saber quin és el programa de control correcte per a la\n"
-"vostra targeta, en podeu seleccionar un de la llista superior.\n"
"\n"
-"El programa de control actual per a la vostra targeta \"%s\" és \"%s\" "
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" us dirà quins programes "
+"estan usant en aquell moment la targeta de so de manera directa (normalment "
+"només hauria de mostrar el PulseAudio).\n"
#: harddrake/v4l.pm:12
#, c-format
@@ -3396,12 +3501,12 @@ msgstr "Desconegut|Genèric"
#: harddrake/v4l.pm:130
#, c-format
msgid "Unknown|CPH05X (bt878) [many vendors]"
-msgstr "Desconegut|CPH05X (bt878) [molts venedors]"
+msgstr "Desconegut|CPH05X (bt878) [molts fabricants]"
#: harddrake/v4l.pm:131
#, c-format
msgid "Unknown|CPH06X (bt878) [many vendors]"
-msgstr "Desconegut|CPH06X (bt878) [molts venedors]"
+msgstr "Desconegut|CPH06X (bt878) [molts fabricants]"
#: harddrake/v4l.pm:475
#, c-format
@@ -3409,13 +3514,13 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
"Per a les targetes de TV més modernes, el mòdul bttv del nucli GNU/Linux "
"detecta automàticament els paràmetres correctes.\n"
"Si la vostra targeta no és detectada, podeu forçar el tipus de sintonitzador "
"i de targeta aquí. Simplement seleccioneu els paràmetres necessaris per a la "
-"vostra targeta de TV"
+"vostra targeta de TV."
#: harddrake/v4l.pm:478
#, c-format
@@ -3427,73 +3532,76 @@ msgstr "Model de la targeta:"
msgid "Tuner type:"
msgstr "Tipus de sintonitzador:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "D'acord"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Sí"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "No"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Trieu un fitxer"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Afegeix"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Modifica"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Fi"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Anterior"
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "Cap fitxer escollit"
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "Heu escollit un directori, no un fitxer"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "No és un directori"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "No hi ha fitxer"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
-msgstr ""
+msgstr "Atenció, la tecla de fixació de majúscules està habilitada"
#: interactive/stdio.pm:29 interactive/stdio.pm:154
#, c-format
@@ -3537,7 +3645,7 @@ msgstr "Quina és la vostra elecció? (predeterminat '%s'%s)"
#: interactive/stdio.pm:110
#, c-format
msgid " enter `void' for void entry"
-msgstr " entreu 'void' per entrada buida"
+msgstr " introduïu 'void' per entrada buida"
#: interactive/stdio.pm:128
#, c-format
@@ -3551,7 +3659,7 @@ msgid ""
"or just hit Enter to proceed.\n"
"Your choice? "
msgstr ""
-"Si us plau, escolliu el primer número del rang 10 que voleu editar,\n"
+"Escolliu el primer número de l'interval 10 que voleu editar,\n"
"o premeu Retorn per continuar.\n"
"Què trieu? "
@@ -3572,1249 +3680,1273 @@ msgstr "Torna a enviar"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Andorra"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "Unió dels Emirats Àrabs"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Afganistan"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Antigua i Barbuda"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Anguilla"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Albània"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Armènia"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Antilles Holandeses"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Angola"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Antàrtida"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Argentina"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "Samoa Americana"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Àustria"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Austràlia"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Aruba"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Azerbaitjan"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Bòsnia i Hercegovina"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Barbados"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Bangladesh"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Bèlgica"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Burkina Faso"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "Bulgària"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Bahrain"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Burundi"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Benín"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Bermuda"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Brunei"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Bolívia"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Brasil"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Bahames"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Bhutan"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Illa Bouvet"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Botswana"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
-msgstr "Bielorrússia"
+msgstr "Bielorússia"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Belize"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Canadà"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Illes Cocos (Keeling)"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Congo (Kinshasa)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
-msgstr "República Centrefricana"
+msgstr "República Centreafricana"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Congo (Brazzaville)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Suïssa"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Costa d'Ivori"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Illes Cook"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Xile"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Camerun"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "Xina"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Colòmbia"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Costa Rica"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Sèrbia i Montenegro"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Cuba"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Cap Verd"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Illa Christmas"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Xipre"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "República Txeca"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Alemanya"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Djibouti"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Dinamarca"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Dominica"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "República Dominicana"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Algèria"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Equador"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Estònia"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Egipte"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Sàhara Occidental"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Eritrea"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Espanya"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Etiòpia"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Finlàndia"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Fiji"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Illes Malvines (Falkland)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Micronèsia"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Illes Fèroe"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "França"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Gabon"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Regne Unit"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Grenada"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Geòrgia"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Guaiana Francesa"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Ghana"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Gibraltar"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Groenlàndia"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Gàmbia"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Guinea"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Guadalupe"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Guinea Equatorial"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Grècia"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "Illes Geòrgia del Sud i Sandwich del Sud"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Guatemala"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Guam"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Guinea Bissau"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Guyana"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Xina (Hong Kong)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Illa Heard i Illes McDonald"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Hondures"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Croàcia"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Haití"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Hongria"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "Indonèsia"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Irlanda"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Israel"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Índia"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "Territori Britànic de l'Oceà Índic"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Iraq"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Iran"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Islàndia"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "Itàlia"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Jamaica"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "Jordània"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Japó"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Kenya"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Kirguizistan"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Cambodja"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Kiribati"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Comores"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "Saint Christopher i Nevis"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Corea (Nord)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Corea"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Kuwait"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Illes Caiman"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Kazakhstan"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Laos"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Líban"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "Saint Lucia"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Liechtenstein"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Sri Lanka"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Libèria"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Lesotho"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Lituània"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Luxemburg"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Letònia"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Líbia"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Marroc"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Mònaco"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Moldàvia"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Madagascar"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Illes Marshall"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Macedònia"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Mali"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Myanmar"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Mongòlia"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Illes Marianes del Nord"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Martinica"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Mauritània"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Montserrat"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Malta"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Maurici"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Maldives"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Malawi"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Mèxic"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Malàisia"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Moçambic"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Namíbia"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Nova Caledònia"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Níger"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Illa Norfolk"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Nigèria"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Nicaragua"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Països Baixos"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Noruega"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Nepal"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
-msgstr "Nauru"
+msgstr "Nauruà"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Niue"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Nova Zelanda"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Oman"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Panamà"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Perú"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "Polinèsia francesa"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Papua Nova Guinea"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Filipines"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Pakistan"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Polònia"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Saint Pierre i Miquelon"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Pitcairn"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Puerto Rico"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Palestina"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Portugal"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Paraguai"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Palau"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Qatar"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Reunion"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Romania"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Rússia"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Rwanda"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Aràbia Saudita"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Illes Salomó"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Seychelles"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Sudan"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "Suècia"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Singapur"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Saint Helena"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Eslovènia"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "Illes Svalbard i Jan Mayen"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Eslovàquia"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "Sierra Leone"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "San Marino"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Senegal"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Somàlia"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Surinam"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "Sao Tome i Príncipe"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "El Salvador"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Síria"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Swazilàndia"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Illes Turks i Caicos"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Txad"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "Territoris francesos del Sud"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Togo"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Tailàndia"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Tadjikistan"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
-msgstr "Tokelau"
+msgstr "Tokelauès"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Timor Oriental"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Turkmenistan"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Tunísia"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Tonga"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Turquia"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Trinitat i Tobago"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Tuvalu"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Taiwan"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Tanzània"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Ucraïna"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Uganda"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "Illes Perifèriques Menors dels EUA"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "Estats Units"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Uruguai"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Uzbekistan"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Vaticà"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "Saint Vincent i les Grenadines"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Veneçuela"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Illes Verge Britàniques"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "Illes Verge Americanes"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Vietnam"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Vanuatu"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Wallis i Futuna"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Samoa"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Iemen"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Mayotte"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "Sud-àfrica"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Zàmbia"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Zimbabwe"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
-msgstr "Benvingut a %s"
+msgstr "Benvingut/da a %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
+"Ha fallat moure les extensions d'espai físic utilitzades a altres volums "
+"físics."
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr "El volum físic %s encara està en ús"
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "Elimineu primer els volums lògics\n"
-#: lvm.pm:184
-#, fuzzy, c-format
+#: lvm.pm:248
+#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
-msgstr ""
-"El carregador d'arrencada no funciona amb /boot a diferents volums físics."
+msgstr "El gestor d'arrencada no pot gestionar /boot en diversos volums físics"
+#. -PO: Only write something if needed:
#: messages.pm:11
-#, fuzzy, c-format
+#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr " "
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Introducció"
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+"El sistema operatiu i els diferents components disponibles a la distribució "
+"Mageia\n"
+"es denominaran des d'ara «productes de programari». Els productes de "
+"programari inclouen -però no hi estan restringits- el conjunt de\n"
+"programes, mètodes, normes i documentació relacionada amb el sistema "
+"operatiu i els diferents components de la distribució Mageia, i qualsevol "
+"aplicació distribuïda\n"
+"amb aquests productes proporcionats per llicenciataris o proveïdors de "
+"Mageia."
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr "1. Contracte de llicència"
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4828,16 +4960,40 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+"Llegiu atentament aquest document. Aquest document és un contracte de "
+"llicència entre vós i\n"
+"Mageia que s'aplica als productes de programari.\n"
+"Mitjançant la instal·lació, la duplicació o l'ús de qualsevol dels Productes "
+"de programari de qualsevol manera, accepteu de forma explícita\n"
+"i esteu totalment d'acord a complir els termes i condicions d'aquesta "
+"llicència.\n"
+"Si no esteu d'acord amb alguna part de la llicència, no se us permetrà "
+"instal·lar, duplicar o utilitzar\n"
+"els productes de programari.\n"
+"Qualsevol intent d'instal·lar, duplicar o utilitzar els productes de "
+"programari d'una manera que no compleixi\n"
+"els termes i condicions d'aquesta llicència és nul i acabarà els vostres "
+"drets en virtut de la\n"
+"llicència. A l'acabament de la llicència, haureu de destruir immediatament "
+"totes les còpies dels\n"
+"Productes de programari."
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr "2. Garantia limitada"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4845,15 +5001,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4862,51 +5018,123 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
+"you."
+msgstr ""
+"Els Productes de programari i la documentació adjunta es proporcionen \"tal "
+"qual\", sense garantia, en la\n"
+"mesura permesa per la llei.\n"
+"Ni Mageia ni els seus llicenciataris o proveïdors, en cap cas i en la "
+"mesura\n"
+"permesa per la llei, serà responsable de cap dany especial, incidental, "
+"directament o indirecta\n"
+"(incloent sense limitació danys per pèrdua de negoci, interrupció del "
+"negoci, pèrdues financeres, despeses legals i sancions derivades d'una "
+"sentència judicial o qualsevol altra pèrdua conseqüent)\n"
+"que sorgeixi de l'ús o la impossibilitat d'usar els productes de programari, "
+"fins i tot si Mageia, els llicenciataris\n"
+"o proveïdors han advertit de la possibilitat o l'ocurrència d'aquests "
+"danys.\n"
+"\n"
+"ADVERTÈNCIA QUANT A LA POSSESSIÓ O ÚS DE PROGRAMARI PROHIBIT EN ALGUNS "
+"PAÏSOS\n"
+"\n"
+"En la mesura permesa per la llei, ni Mageia i els seus llicenciataris, "
+"proveïdors o\n"
+"distribuïdors, en cap cas, seran responsables de cap dany especial, "
+"incidental, directe o indirecte\n"
+"(incloent sense limitació danys per pèrdua de negoci, la interrupció de\n"
+"negoci, pèrdua financera, les despeses legals i sancions derivades d'una "
+"sentència judicial, o qualsevol\n"
+"altra pèrdua conseqüent) que sorgeixin de la possessió i l'ús de components "
+"de programari o\n"
+"que sorgeixi de la baixada de components de programari d'un dels llocs de "
+"Mageia que són \n"
+"prohibits o restringit en alguns països per les lleis locals.\n"
+"Aquesta responsabilitat limitada s'aplica -però no s'hi limita-, als forts "
+"components de criptografia\n"
+"inclosos als productes de programari.\n"
+"No obstant això, a causa que algunes jurisdiccions no permeten l'exclusió o "
+"limitació de responsabilitat per\n"
+"danys indirectes o incidentals, la limitació anterior pot no aplicar-se si "
+"s'escau."
+
+#: messages.pm:68
+#, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr "3. La llicència GPLv2 i les llicències relacionades"
+
+#: messages.pm:70
+#, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. %s\n"
+"entities.\n"
"Most of these licenses allow you to use, duplicate, adapt or redistribute "
"the components which \n"
"they cover. Please read carefully the terms and conditions of the license "
"agreement for each component \n"
"before using any component. Any question on a component license should be "
"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+"Els Productes de programari consisteixen en components creats per diferents "
+"persones o entitats.\n"
+"La majoria d'aquestes llicències permeten usar, duplicar, adaptar o "
+"redistribuir els components que \n"
+"cobreixen. Si us plau, llegiu atentament els termes i les condicions de "
+"l'acord de llicència de cada component \n"
+"abans d'usar-lo. Qualsevol pregunta sobre una llicència de component s'ha "
+"d'adreçar al component \n"
+"llicenciant o proveïdor i no a Mageia.\n"
+"Els programes desenvolupats per Mageia es regeixen per la llicència GPLv2. "
+"La documentació escrita per Mageia es regeix per la llicència \"%s\"."
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr "4. Drets de propietat intel·lectual"
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+"Tots els drets sobre els components dels productes de programari pertanyen "
+"als seus respectius autors i estan\n"
+"protegits per lleis de drets d'autor i de propietat intel·lectual aplicables "
+"als programes de programari.\n"
+"Mageia i els seus proveïdors i llicenciataris es reserven el dret a "
+"modificar o adaptar els productes\n"
+"de programari, íntegrament o en parts, per tots els mitjans i per a tots els "
+"propòsits.\n"
+"\"Mageia\" i els logotips associats són marques comercials de %s"
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr "5. Lleis regidores"
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4918,269 +5146,80 @@ msgid ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
-msgstr ""
-"Introducció\n"
-"\n"
-"D'ara endavant, hom es referirà al sistema operatiu i als diferents\n"
-"components disponibles en la distribució Mandriva Linux com als\n"
-"\"Productes de programari\". Els Productes de programari inclouen,\n"
-"però no estan restringits a, el conjunt de programes, mètoDES, regles\n"
-"i documentació relativa al sistema operatiu i els diferents\n"
-"components de la distribució Mandriva Linux.\n"
-"\n"
-"\n"
-"1. Acord de llicència\n"
-"\n"
-"Si us plau, llegiu atentament aquest document. Aquest document és un\n"
-"acord de llicència entre la vostra persona i Mandriva S.A., que\n"
-"s'aplica als Productes de programari. Pel fet d'instal·lar, duplicar\n"
-"o utilitzar els Productes de programari en qualsevol forma esteu\n"
-"acceptant explícitament, i expressant el vostre acord a avenir-vos a\n"
-"les clàusules i condicions d'aquesta Llicència. Si no esteu d'acord\n"
-"amb qualsevol part de la Llicència, no esteu autoritzat a instal·lar,\n"
-"duplicar o utilitzar els Productes de programari. Qualsevol intent\n"
-"d'instal·lar, duplicar o utilitzar els Productes de programari en una\n"
-"forma que no s'adapti a les clàusules i condicions d'aquesta\n"
-"Llicència, és nul i finalitzarà els vostres drets sobre la mateixa.\n"
-"En finalitzar-se la Llicència, heu de destruir immediatament totes\n"
-"les còpies dels Productes de programari.\n"
-"\n"
-"\n"
-"2. Garantia limitada\n"
-"\n"
-"Els Productes de programari i documentació adjunta es subministren\n"
-"\"tal com són\", sense cap garantia, fins al punt permés per la llei.\n"
-"Mandriva S.A. no serà, sota cap circumstància, i fins al punt\n"
-"permés per la llei, responsable de cap dany especial, incidental ni\n"
-"directe (incloent, sense limitar-se a, els danys per pèrdua de\n"
-"negocis, interrupció de negocis, pèrdues financeres, multes i costes\n"
-"judicials, o qualsevol altre dany que resultin d'un judici, o\n"
-"qualsevol altre pèrdua d'importància) que resulti de l'ús o de la\n"
-"impossibilitat d'utilitzar els Productes de programari, fins i tot si\n"
-"Mandriva S.A. ha estat avisat de la possibilitat que\n"
-"s'esdevinguin aquests danys.\n"
-"\n"
-"RESPONSABILITAT LIMITADA RELATIVA A LA POSSESSIÓ O UTILITZACIÓ DE PROGRAMARI "
-"PROHIBIT EN ALGUNS PAÏSOS\n"
-"\n"
-"Fins al punt permés per la llei, Mandriva S.A. o els seus\n"
-"distribuïdors no seran, sota cap circumstància, responsables de cap\n"
-"dany especial, incidental ni directe (incloent, sense limitar-se a,\n"
-"els danys per pèrdua de negocis, interrupció de negocis, pèrdues\n"
-"financeres, multes i costes judicials, o qualsevol altre dany que\n"
-"resultin d'un judici, o qualsevol altre pèrdua d'importància) que\n"
-"resulti de la possessió i utilització dels components de programari o\n"
-"de la seva descàrrega des d'un dels llocs de Mandriva Linux, que\n"
-"estiguin prohibides o restringides en alguns països per les lleis\n"
-"locals. Aquesta responsabilitat limitada s'aplica, però no hi està\n"
-"restringida, als potents components criptogràfics inclosos als\n"
-"Productes de programari.\n"
-"\n"
-"\n"
-"3. la llicència GPL i llicències relacionades\n"
-"\n"
-"Els Productes de programari consisteixen en components creats per\n"
-"diferents persones o entitats. La majoria d'aquests components es\n"
-"regeixen per les clàusules i condicions de la Llicència General\n"
-"Pública de GNU, a la qual d'ara endavant hom s'hi referirà com a\n"
-"\"GPL\", o de llicències similars. la majoria d'aquestes llicències\n"
-"us permeten duplicar, adaptar o redistribuir els components que\n"
-"cobreixen. Si us plau, llegiu atentament les clàusules i condicions\n"
-"de l'acord de llicència de cada component abans d'utilitzar-lo.\n"
-"Qualsevol pregunta sobre la llicència d'un component s'ha d'adreçar\n"
-"al seu autor i no a Mandriva.\n"
-"Els programes desenvolupats per Mandriva S.A. es regeixen per la\n"
-"llicència GPL.La documentació escrita per Mandriva S.A. està regida per una\n"
-"llicència específica; consulteu la documentació per a més\n"
-"informació.\n"
-"\n"
-"\n"
-"4. Drets sobre la propietat intel·lectual\n"
-"\n"
-"Tots els drets sobre els components dels Productes de programari\n"
-"pertanyen als seus autors respectius i estan protegits per les lleis\n"
-"de propietat intel·lectual i de copyright aplicables als programes\n"
-"informàtics.\n"
-"Mandriva S.A. es reserva els drets de modificar o adaptar els\n"
-"Productes de programari, totalment o parcialment, per tots els\n"
-"mitjans i amb totes les finalitats.\n"
-"\"Mandriva\", \"Mandriva Linux\" i els logotips associats son marques\n"
-"registrades de Mandriva S.A.\n"
-"\n"
-"\n"
-"5. Lleis rectores \n"
-"\n"
-"Si qualsevol part d'aquest acord és declarat nul, il·legal o\n"
-"inaplicable per un tribunal, aquesta part s'exclourà del contracte.\n"
-"Seguiu obligat, però, per les altres seccions aplicables de\n"
-"l'acord.\n"
-"Les clàusules i condicions d'aquesta Llicència es regeixen per les\n"
-"lleis de França.\n"
-"Tots els litigis sobre les clàusules d'aquesta llicència es dirimiran\n"
-"preferiblement fora dels tribunals. Com a últim recurs, el litigi es\n"
-"portarà als tribunals competents de París, França.\n"
-"Per a qualsevol tema relacionat amb aquest document, poseu-vos en\n"
-"contacte amb Mandriva S.A.\n"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
+"For any question on this document, please contact Mageia."
msgstr ""
+"Si alguna part d'aquest acord es considera nul·la, il·legal o inaplicable "
+"per un tribunal competent, aquesta\n"
+"part s'exclou d'aquest contracte. Vós resteu lligat a les altres seccions "
+"aplicables de \n"
+"l'acord.\n"
+"Els termes i condicions d'aquesta llicència es regeixen per les lleis de "
+"França.\n"
+"Totes les disputes sobre els termes d'aquesta llicència seran preferentment "
+"resoltes fora dels tribunals. Com a última\n"
+"instància, la disputa es farà als tribunals corresponents de París, França.\n"
+"Per a qualsevol pregunta sobre aquest document, poseu-vos en contacte amb "
+"Mageia."
-#: messages.pm:104
+#: messages.pm:102
#, c-format
msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
+"Warning: Free Software may not necessarily be patent free, and some Free\n"
+"Software included may be covered by patents in your country. For example, "
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
+msgstr ""
+"Avís: el programari lliure pot no ser necessàriament lliure de patents i "
+"algun\n"
+"programari inclòs pot estar cobert per patents al vostre país. Per exemple, "
+"la nostra\n"
+"versió del repositori tainted del VLC conté components que poden requerir "
+"una llicència\n"
+"per a un ús més ampli (vegeu https://www.videolan.org/press/patents.html per "
+"obtenir-ne\n"
+"més detalls). Si no esteu segur de si se us pot aplicar una patent, "
+"comproveu les\n"
+"lleis locals."
-#: messages.pm:107
+#: messages.pm:112
#, c-format
msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
+"Enhorabona! La instal·lació ha acabat.\n"
+"Traieu el mitjà d'instal·lació i premeu Retorn per reiniciar."
-#: messages.pm:112
+#: messages.pm:114
#, c-format
msgid ""
-"Warning: Free Software may not necessarily be patent free, and some Free\n"
-"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
-msgstr ""
-"Avís: El programari lliure no està necessàriament lliure de patents, alguns "
-"dels programes\n"
-"lliures inclosos poden estar coberts per patents al teu país. Per exemple, "
-"els\n"
-"decodificadors MP3 inclosos poden necessitar una llicència per poder ser "
-"usats (consulteu\n"
-"http://www.mp3licensing.com per més detalls). Si no esteu segur si una "
-"patent és aplicable\n"
-"consulteu les lleis locals."
-
-#: messages.pm:120
-#, c-format
-msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"For information on fixes which are available for this release of Mageia,\n"
+"consult the Errata available from:\n"
+"%s"
msgstr ""
+"Trobareu la solució als problemes coneguts d'aquesta versió del\n"
+"Mageia a la fe d'errates que hi ha a \n"
+"%s"
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:116
#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
-"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
msgstr ""
-"Felicitats! La instal·lació ha acabat.\n"
-"Traieu el suport d'arrencada i premeu Retorn per tornar a arrencar.\n"
-"\n"
-"\n"
-"Trobareu la solució als problemes coneguts d'aquesta versió del\n"
-"Mandriva Linux a la fe d'errates que hi ha a \n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"La informació sobre com configurar el vostre sistema està disponible a\n"
-"l'últim capítol d'instal·lació de la Guia Oficial de l'Usuari del\n"
-"Mandriva Linux."
+"Després de reiniciar i entrar a la sessió de Mageia, veureu la pantalla de "
+"benvinguda a Mageia.\n"
+"Està plena d'informació i enllaços de gran utilitat."
-#
#: modules/interactive.pm:19
-#, fuzzy, c-format
+#, c-format
msgid "This driver has no configuration parameter!"
-msgstr "Configuració del controlador del SAI"
+msgstr "Aquest controlador no té cap paràmetre de configuració!"
#: modules/interactive.pm:22
#, c-format
@@ -5215,22 +5254,22 @@ msgstr "Mira la informació del maquinari"
#: modules/interactive.pm:83
#, c-format
msgid "Installing driver for USB controller"
-msgstr "S'està instal·lant el controlador pel controlador USB"
+msgstr "S'està instal·lant el controlador per al controlador USB"
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "S'està instal·lant el controlador pel controlador firewire %s"
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "S'està instal·lant el controlador per al controlador firewire «%s»"
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "S'està instal·lant el controlador pel controlador de disc dur %s"
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "S'està instal·lant el controlador per al controlador de disc dur «%s»"
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "S'està instal·lant el controlador pel controlador ethernet %s"
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "S'està instal·lant el controlador per al controlador ethernet «%s»"
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -5242,7 +5281,7 @@ msgstr "S'està instal·lant el controlador per a la targeta de %s %s"
#: modules/interactive.pm:100
#, c-format
msgid "Configuring Hardware"
-msgstr ""
+msgstr "Configuració del maquinari"
#: modules/interactive.pm:111
#, c-format
@@ -5261,8 +5300,8 @@ msgid ""
"For instance, ``io=0x300 irq=7''"
msgstr ""
"Ara podeu proporcionar les opcions per al mòdul %s.\n"
-"Les opcions estan en el format \"nom=valor nom2=valor2 ...\".\n"
-"Per exemple, \"io=0x300 irq=7\""
+"Les opcions estan en el format «nom=valor nom2=valor2 ...».\n"
+"Per exemple, «io=0x300 irq=7»"
#: modules/interactive.pm:119
#, c-format
@@ -5286,11 +5325,11 @@ msgid ""
"should\n"
"not cause any damage."
msgstr ""
-"En alguns casos, el controlador de %s necessita informació addicional\n"
+"En alguns casos, el controlador de %s necessita informació extra\n"
"per funcionar correctament, tot i que normalment funciona bé sense ella.\n"
-"Voleu especificar opcions addicionals o deixar que el controlador\n"
+"Voleu especificar opcions estres o deixar que el controlador\n"
"cerqui al vostre ordinador la informació que necessita? Aquesta recerca\n"
-"podria penjar l'ordinador, però això no causaria cap dany."
+"podria bloquejar l'ordinador, però això no causaria cap dany."
#: modules/interactive.pm:145
#, c-format
@@ -5311,46 +5350,46 @@ msgstr ""
"Ha fallat la càrrega del mòdul %s.\n"
"Voleu tornar-ho a intentar amb altres paràmetres?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr "Esteu segur que voleu sortir?"
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
-msgstr ""
+msgstr "La contrasenya es pot endevinar fàcilment"
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
-msgstr ""
+msgid "Password should be resistant to basic attacks"
+msgstr "La contrasenya hauria de ser resistent a atacs bàsics"
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Contrasenya"
+msgstr "La contrasenya sembla segura"
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "ha fallat el muntatge: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Aquesta plataforma no suporta particions ampliades"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
"Hi ha un forat a la vostra taula de particions, però no puc utilitzar-lo.\n"
"L'única solució és moure les particions primàries per fer que el forat quedi "
-"contigu a les particions ampliades"
+"contigu a les particions ampliades."
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
@@ -5360,116 +5399,117 @@ msgstr ""
"Això vol dir que qualsevol cosa que s'escrigui al disc acabarà amb dates "
"aleatòries i malmeses."
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
-msgstr ""
+msgstr "Eliminació de paquets no utilitzats"
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
-msgstr ""
+msgstr "S'estan cercant els paquets de maquinari no utilitzats..."
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
-msgstr ""
+msgstr "S'estan cercant els paquets no utilitzats per la localització..."
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
"configuration."
msgstr ""
+"S'ha detectat que alguns dels paquets no són necessaris per a la "
+"configuració del vostre sistema."
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
-msgstr ""
+msgstr "S'eliminaran els següents paquets, excepte si indiqueu el contrari:"
-#: pkgs.pm:269 pkgs.pm:270
-#, fuzzy, c-format
+#: pkgs.pm:289 pkgs.pm:290
+#, c-format
msgid "Unused hardware support"
-msgstr "habilita l'ús de la ràdio"
+msgstr "Suport per a maquinari no utilitzat"
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
-msgstr ""
+msgstr "Localització no utilitzada"
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
msgstr "No es pot afegir una partició al RAID _formatat_ %s"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "No hi ha prou particions per al nivell RAID %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "No s'ha pogut crear el directori /usr/share/sane/firmware!"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "No s'ha pogut crear l'enllaç /usr/share/sane/%s!"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr ""
-"No s'ha pogut copiar el fitxer de firmware %s a /usr/share/sane/firmware!"
+"No s'ha pogut copiar el fitxer de microprogramari %s a /usr/share/sane/"
+"firmware!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
-msgstr "No s'han pogut establir els permissos del fitxer de firmware %s!"
+msgstr "No s'han pogut establir els permisos del fitxer de microprogramari %s!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Scannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr ""
-"No s'ha pogut instal·lar els paquets necessaris per compartir els vostres "
-"escàner(s)."
+"No s'han pogut instal·lar els paquets necessaris per compartir els vostres "
+"escàners."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
-msgstr ""
-"Els vostre(s) escànner(s) no estaran disponibles per a usuaris no "
-"privilegiats."
+msgstr "Els vostres escànners no estaran disponibles a la xarxa."
#: security/help.pm:11
-#, fuzzy, c-format
+#, c-format
msgid "Accept bogus IPv4 error messages."
-msgstr "Accepta els missatges d'error IPv4 falsos."
+msgstr "Accepta missatges d'error IPv4 falsos."
#: security/help.pm:13
-#, fuzzy, c-format
+#, c-format
msgid "Accept broadcasted icmp echo."
-msgstr "Accepta l'eco icmp broadcast"
+msgstr "Accepta l'echo d'ICMP emès per difusió."
#: security/help.pm:15
-#, fuzzy, c-format
+#, c-format
msgid "Accept icmp echo."
-msgstr "Accepta echo icmp"
+msgstr "Accepta l'echo d'ICMP."
#: security/help.pm:17
-#, fuzzy, c-format
+#, c-format
msgid "Allow autologin."
-msgstr "Permet/Impedeix l'entrada automàtica."
+msgstr "Permet l'inici de sessió automàtic."
#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
#: security/help.pm:21
-#, fuzzy, c-format
+#, c-format
msgid ""
"If set to \"ALL\", /etc/issue and /etc/issue.net are allowed to exist.\n"
"\n"
@@ -5477,34 +5517,34 @@ msgid ""
"\n"
"Else only /etc/issue is allowed."
msgstr ""
-"Si s'estableix a \"ALL\" permet que /etc/issue i /etc/issue.net existeixin.\n"
+"Si està establert a \"ALL\", /etc/issue i /etc/issue.net tenen permís per "
+"existir.\n"
"\n"
-"Si s'estableix a \"NONE\" no espermet cap\n"
+"Si està establert a \"None\", no se'n permet cap.\n"
"\n"
-"Altrament només es permet /etc/issue."
+"Si no, només es permet /etc/issue."
#: security/help.pm:27
-#, fuzzy, c-format
+#, c-format
msgid "Allow reboot by the console user."
-msgstr "Permet/Impedeix tornar a arrencar per l'usuari de la consola."
+msgstr "Permet el reinici de l'ordinador per un usuari de consola."
#: security/help.pm:29
-#, fuzzy, c-format
+#, c-format
msgid "Allow remote root login."
-msgstr "Permet l'entrada de root remota"
+msgstr "Permet la connexió remota de root."
#: security/help.pm:31
-#, fuzzy, c-format
+#, c-format
msgid "Allow direct root login."
-msgstr "Permet/Impedeix l'entrada directa de root."
+msgstr "Permet la connexió directa de root."
#: security/help.pm:33
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow the list of users on the system on display managers (kdm and gdm)."
msgstr ""
-"Permet/Impedeix la llista d'usuaris del sistema en els gestors de pantalla "
-"(kdm i gdm)."
+"Permet la llista d'usuaris del sistema als gestors de pantalla (kdm and gdm)."
#: security/help.pm:35
#, c-format
@@ -5514,9 +5554,13 @@ msgid ""
"\n"
"See pam_xauth(8) for more details.'"
msgstr ""
+"Permet l'exportació de pantalla quan\n"
+"es passi del compte de root als altres usuaris.\n"
+"\n"
+"Vegeu pam_xauth(8) per a més detalls."
#: security/help.pm:40
-#, fuzzy, c-format
+#, c-format
msgid ""
"Allow X connections:\n"
"\n"
@@ -5526,13 +5570,12 @@ msgid ""
"\n"
"- \"None\" (no connection)."
msgstr ""
-"Permet/Impedeix connexions X:\n"
-"\n"
-"- ALL (es permeten totes les connexions),\n"
+"Permet les connexions X:|n \n"
+"- «Totes» (es permeten totes les connexions),\n"
"\n"
-"- LOCAL (només connexió des de la màquina local),\n"
+"- «Local» (només les connexions des de la màquina local),\n"
"\n"
-"- NONE (cap connexió)."
+"- «Cap» (sense connexió)."
#: security/help.pm:48
#, c-format
@@ -5540,12 +5583,12 @@ msgid ""
"The argument specifies if clients are authorized to connect\n"
"to the X server from the network on the tcp port 6000 or not."
msgstr ""
-"L'argument indica si els clients estan autoritzar a connectar\n"
-"al servidor X des de la xarxa en el port tcp 6000 o no."
+"L'argument indica si els clients estan autoritzats a connectar\n"
+"al servidor X des de la xarxa al port tcp 6000 o no."
#. -PO: here "ALL", "Local" and "None" are values in a pull-down menu; translate them the same as they're
#: security/help.pm:53
-#, fuzzy, c-format
+#, c-format
msgid ""
"Authorize:\n"
"\n"
@@ -5556,20 +5599,20 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
"Autoritza:\n"
"\n"
-"- tots els serveis controlats per tcp_wrappers (vegeu hosts.deny(5)) si "
-"s'estableix a \"ALL\",\n"
+"- tots els serveis controlats per tcp_wrappers (vegeu la pàg. del manual "
+"hosts.deny(5)) si està establert a \"ALL\",\n"
"\n"
-"- només els fitxers locals si s'estabeix a \"LOCAL\"\n"
+"- només els locals si està establert a \"Local\"\n"
"\n"
-"- cap si s'estableix a \"NONE\".\n"
+"- cap si està establert a \"None\".\n"
"\n"
-"Per autoritzar els serveis que us calguin, utilitzeu /etc/hosts.allow\n"
-"(vegeu hosts.allow(5))."
+"Per autoritzar els serveis que necessiteu, utilitzeu /etc/hosts.allow "
+"(consulteu hosts.allow(5))."
#: security/help.pm:63
#, c-format
@@ -5592,32 +5635,32 @@ msgstr ""
"afegir un servei si és present al fitxer durant la instal·lació dels paquets."
#: security/help.pm:72
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable crontab and at for users.\n"
"\n"
"Put allowed users in /etc/cron.allow and /etc/at.allow (see man at(1)\n"
"and crontab(1))."
msgstr ""
-"Habilita/Inhabilita crontab i at per als usuaris.\n"
+"Habilita crontab i at per als usuaris.\n"
"\n"
-"Posa els usuaris autoritzats a /etc/cron.allow i /etc/at.allow\n"
-"(vegeu man at(1) i crontab(1))."
+"Poseu els usuaris permesos a /etc/cron.allow i /etc/at.allow (vegeu man "
+"at(1)\n"
+"i crontab(1))."
#: security/help.pm:77
#, c-format
msgid "Enable syslog reports to console 12"
-msgstr ""
+msgstr "Habilita els informes syslog a la consola 12"
#: security/help.pm:79
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable name resolution spoofing protection. If\n"
"\"%s\" is true, also reports to syslog."
msgstr ""
-"Habilita/Deshabilita la protecció contra falsejament de resolució de noms. "
-"Si\n"
-"\"%s\" és cert, informa també al registre del sistema."
+"Habilita la protecció contra les falsificacions de resolució de noms. Si\n"
+"\"%s\" és cert, també n'informa syslog."
#: security/help.pm:80
#, c-format
@@ -5625,33 +5668,33 @@ msgid "Security Alerts:"
msgstr "Alarmes de seguretat:"
#: security/help.pm:82
-#, fuzzy, c-format
+#, c-format
msgid "Enable IP spoofing protection."
msgstr "Habilita la protecció contra falsejament de la IP."
#: security/help.pm:84
-#, fuzzy, c-format
+#, c-format
msgid "Enable libsafe if libsafe is found on the system."
-msgstr "Habilita/Inhabilita el libsafe si és que es troba al sistema."
+msgstr "Habilita el libsafe si és que es troba al sistema."
#: security/help.pm:86
-#, fuzzy, c-format
+#, c-format
msgid "Enable the logging of IPv4 strange packets."
-msgstr "Habilita el registre de paquets IPv4 estranys"
+msgstr "Habilita el registre de paquets IPv4 estranys."
#: security/help.pm:88
-#, fuzzy, c-format
+#, c-format
msgid "Enable msec hourly security check."
-msgstr "Habilita la comprovació de seguretat msec horària"
+msgstr "Habilita la comprovació de seguretat msec horària."
#: security/help.pm:90
-#, fuzzy, c-format
+#, c-format
msgid ""
"Enable su only from members of the wheel group. If set to no, allows su from "
"any user."
msgstr ""
-"S'està habilitant su només per a membres del grup wheel o permet su des de "
-"qualsevol usuari."
+"Habilita su només per als membres del grup wheel. Si s'estableix a no, "
+"permet su a qualsevol usuari."
#: security/help.pm:92
#, c-format
@@ -5659,40 +5702,39 @@ msgid "Use password to authenticate users."
msgstr "Utilitza una contrasenya per autenticar usuaris."
#: security/help.pm:94
-#, fuzzy, c-format
-msgid "Activate ethernet cards promiscuity check."
-msgstr ""
-"Activa/Inhabilita la comprovació de promiscuïtat de les targetes Ethernet."
+#, c-format
+msgid "Activate Ethernet cards promiscuity check."
+msgstr "Habilita la comprovació de promiscuïtat de les targetes Ethernet."
#: security/help.pm:96
-#, fuzzy, c-format
+#, c-format
msgid "Activate daily security check."
-msgstr "Activa/Inhabilita la comprovació diària de seguretat."
+msgstr "Activa la comprovació de seguretat diària."
#: security/help.pm:98
-#, fuzzy, c-format
+#, c-format
msgid "Enable sulogin(8) in single user level."
-msgstr "Habilita/Deshabilita sulogin(8) en nivell monousuari."
+msgstr "Habilita sulogin(8) en el nivell d'usuari únic."
#: security/help.pm:100
#, c-format
msgid "Add the name as an exception to the handling of password aging by msec."
msgstr ""
-"Afegiu el nom com a excepció al maneig, per part de l'msec, de l'antiguitat "
+"Afegiu el nom com a excepció al maneig, per part del msec, de l'antiguitat "
"de contrasenyes."
#: security/help.pm:102
#, c-format
msgid "Set password aging to \"max\" days and delay to change to \"inactive\"."
msgstr ""
-"Definiu l'antiguitat de la contrasenya a \"max\" dies i temps en canviar a "
-"\"inactive\"."
+"Definiu l'antiguitat de la contrasenya a «max» dies i temps en canviar a "
+"«inactive»."
#: security/help.pm:104
#, c-format
msgid "Set the password history length to prevent password reuse."
msgstr ""
-"Defineix la llargària de l'historial de contrasenyes per prevenir la "
+"Estableix la llargària de l'historial de contrasenyes per prevenir la "
"reutilització de contrasenyes."
#: security/help.pm:106
@@ -5701,18 +5743,18 @@ msgid ""
"Set the password minimum length and minimum number of digit and minimum "
"number of capitalized letters."
msgstr ""
-"Defineix la llargada mínima de la contrasenya i el nombre mínim de xifres i "
+"Estableix la llargada mínima de la contrasenya i el nombre mínim de xifres i "
"de lletres en majúscules."
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "Defineix umask de root."
+msgstr "Estableix la màscara de creació de fitxers de root."
#: security/help.pm:109
#, c-format
msgid "if set to yes, check open ports."
-msgstr "si és \"sí\", comprova els ports oberts"
+msgstr "si és «sí», comprova els ports oberts."
#: security/help.pm:110
#, c-format
@@ -5725,7 +5767,7 @@ msgid ""
"\n"
"- for users with the 0 id other than root."
msgstr ""
-"si és \"sí\", comprova :\n"
+"si és «sí», comprova :\n"
"\n"
" - les contrasenyes buiDES, \n"
"\n"
@@ -5736,53 +5778,54 @@ msgstr ""
#: security/help.pm:117
#, c-format
msgid "if set to yes, check permissions of files in the users' home."
-msgstr "si és \"sí\", comprova els permisos dels fitxers a casa dels usuaris"
+msgstr "si és «sí», comprova els permisos dels fitxers a casa dels usuaris."
#: security/help.pm:118
#, c-format
msgid "if set to yes, check if the network devices are in promiscuous mode."
-msgstr ""
-"si és \"sí\", comprova si els dispositius de xarxa són en mode promiscu."
+msgstr "si és «sí», comprova si els dispositius de xarxa són en mode promiscu."
#: security/help.pm:119
#, c-format
msgid "if set to yes, run the daily security checks."
-msgstr "si és \"sí\", executa les comprovacions diàries de seguretat."
+msgstr "si és «sí», executa les comprovacions diàries de seguretat."
#: security/help.pm:120
#, c-format
msgid "if set to yes, check additions/removals of sgid files."
-msgstr "si és \"sí\", comprova les addicions/supressions dels fitxers sgid."
+msgstr "si és «sí», comprova les addicions o supressions dels fitxers SGID."
#: security/help.pm:121
#, c-format
msgid "if set to yes, check empty password in /etc/shadow."
-msgstr "si és \"sí\", comprova la contrasenya buida a /etc/shadow."
+msgstr "si és «sí», comprova la contrasenya buida a /etc/shadow."
#: security/help.pm:122
#, c-format
msgid "if set to yes, verify checksum of the suid/sgid files."
-msgstr "si és \"sí\", comprova la suma de control dels fitxers suid/sgid."
+msgstr "si és «sí», verifica la suma de control dels fitxers SUID o SGID."
#: security/help.pm:123
#, c-format
msgid "if set to yes, check additions/removals of suid root files."
-msgstr "si és \"sí\", comprova addicions/eliminacions dels fitxers arrel suid."
+msgstr ""
+"si és «sí», comprova si hi ha addicions o supressions de fitxers de root "
+"SUID."
#: security/help.pm:124
#, c-format
msgid "if set to yes, report unowned files."
-msgstr "si és \"sí\", informa dels fitxers sense propietari"
+msgstr "si és «sí», informa dels fitxers sense propietari."
#: security/help.pm:125
#, c-format
msgid "if set to yes, check files/directories writable by everybody."
-msgstr "si és \"sí\", comprova els fitxers/directoris que tothom pot escriure."
+msgstr "si és «sí», comprova els fitxers/directoris que tothom pot escriure."
#: security/help.pm:126
#, c-format
msgid "if set to yes, run chkrootkit checks."
-msgstr "si és \"sí\", executa les comprovacions chkrootkit."
+msgstr "si és «sí», executa les comprovacions chkrootkit."
#: security/help.pm:127
#, c-format
@@ -5795,7 +5838,7 @@ msgstr ""
#: security/help.pm:128
#, c-format
msgid "if set to yes, report check result by mail."
-msgstr "si és \"sí\", l'informa comprova el resultat per correu."
+msgstr "si és «sí», l'informa comprova el resultat per correu."
#: security/help.pm:129
#, c-format
@@ -5806,32 +5849,32 @@ msgstr "No enviïs correus si no hi ha res del que avisar"
#, c-format
msgid "if set to yes, run some checks against the rpm database."
msgstr ""
-"si és \"sí\", executa determinades comprovacions de la base de dades rpm."
+"si és «sí», executa determinades comprovacions de la base de dades rpm."
#: security/help.pm:131
#, c-format
msgid "if set to yes, report check result to syslog."
msgstr ""
-"si és \"sí\", informa del resultat de la comprovació al registre del sistema."
+"si és «sí», informa del resultat de la comprovació al registre del sistema."
#: security/help.pm:132
#, c-format
msgid "if set to yes, reports check result to tty."
-msgstr "si és \"sí\", informa dels resultats de la comprovació a tty."
+msgstr "si és «sí», informa dels resultats de la comprovació a tty."
#: security/help.pm:134
#, c-format
msgid "Set shell commands history size. A value of -1 means unlimited."
msgstr ""
-"Defineix la mida de l'historial d'ordres de l'intèrpret d'ordres. El valor -"
-"1 indica il·limitada."
+"Estableix la mida de l'historial d'ordres del shell. El valor -1 indica "
+"il·limitada."
#: security/help.pm:136
#, c-format
msgid "Set the shell timeout. A value of zero means no timeout."
msgstr ""
-"Defineix el temps màxim d'espera per a l'intèrpret d'ordres. El valor zero "
-"indica 'sense temps màxim'."
+"Estableix el temps d'espera del shell. El valor zero indica «sense temps "
+"d'espera»."
#: security/help.pm:136
#, c-format
@@ -5839,9 +5882,9 @@ msgid "Timeout unit is second"
msgstr "La unitat del temps d'espera és el segon"
#: security/help.pm:138
-#, fuzzy, c-format
+#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "Defineix la umask de l'usuari."
+msgstr "Estableix la màscara de creació de fitxers per als usuaris."
#: security/l10n.pm:11
#, c-format
@@ -5851,12 +5894,12 @@ msgstr "Accepta els missatges d'error IPv4 falsos."
#: security/l10n.pm:12
#, c-format
msgid "Accept broadcasted icmp echo"
-msgstr "Accepta l'eco icmp broadcast"
+msgstr "Accepta l'echo d'ICMP emès per difusió"
#: security/l10n.pm:13
#, c-format
msgid "Accept icmp echo"
-msgstr "Accepta echo icmp"
+msgstr "Accepta l'echo d'ICMP"
#: security/l10n.pm:15
#, c-format
@@ -5866,7 +5909,7 @@ msgstr "/etc/issue* existeix"
#: security/l10n.pm:16
#, c-format
msgid "Reboot by the console user"
-msgstr ""
+msgstr "Reinici de l'ordinador per un usuari de consola"
#: security/l10n.pm:17
#, c-format
@@ -5876,17 +5919,17 @@ msgstr "Permet l'entrada de root remota"
#: security/l10n.pm:18
#, c-format
msgid "Direct root login"
-msgstr "Entrada directa com a superusuari"
+msgstr "Entrada directa com a root"
#: security/l10n.pm:19
#, c-format
msgid "List users on display managers (kdm and gdm)"
-msgstr "Llista els usuaris en el sistema en gestors de pantalla (kdm i gdm)"
+msgstr "Llista els usuaris als gestors de pantalla (kdm i gdm)"
#: security/l10n.pm:20
#, c-format
msgid "Export display when passing from root to the other users"
-msgstr ""
+msgstr "Exporta la pantalla quan es passi de root als altres usuaris"
#: security/l10n.pm:21
#, c-format
@@ -5901,7 +5944,7 @@ msgstr "Autoritza connexions TCP a les X Window"
#: security/l10n.pm:23
#, c-format
msgid "Authorize all services controlled by tcp_wrappers"
-msgstr "Autoritza tots els serveis control·lats per tcp_wrappers"
+msgstr "Autoritza tots els serveis controlats per tcp_wrappers"
#: security/l10n.pm:24
#, c-format
@@ -5911,17 +5954,17 @@ msgstr "Chkconfig obeeix les regles msec"
#: security/l10n.pm:25
#, c-format
msgid "Enable \"crontab\" and \"at\" for users"
-msgstr "Habilita \"crontab\" i \"at\" pels usuaris"
+msgstr "Habilita «crontab» i «at» pels usuaris"
#: security/l10n.pm:26
#, c-format
msgid "Syslog reports to console 12"
-msgstr ""
+msgstr "Syslog informa a la consola 12"
#: security/l10n.pm:27
#, c-format
msgid "Name resolution spoofing protection"
-msgstr ""
+msgstr "Protecció contra les falsificacions de resolució de noms"
#: security/l10n.pm:28
#, c-format
@@ -5931,7 +5974,7 @@ msgstr "Habilita la protecció contra falsejament de la IP."
#: security/l10n.pm:29
#, c-format
msgid "Enable libsafe if libsafe is found on the system"
-msgstr "Habilita/Inhabilita el libsafe si és que es troba al sistema."
+msgstr "Habilita el libsafe si és que es troba al sistema"
#: security/l10n.pm:30
#, c-format
@@ -5944,9 +5987,9 @@ msgid "Enable msec hourly security check"
msgstr "Habilita la comprovació de seguretat msec horària"
#: security/l10n.pm:32
-#, fuzzy, c-format
+#, c-format
msgid "Enable su only from the wheel group members"
-msgstr "Habilita su només per a membres del grup wheel o per qualsevol usuari"
+msgstr "Habilita su només per als membres del grup wheel"
#: security/l10n.pm:33
#, c-format
@@ -5977,6 +6020,8 @@ msgstr "Sense envelliment de contrasenya per"
#, c-format
msgid "Set password expiration and account inactivation delays"
msgstr ""
+"Establiu la caducitat de la contrasenya i els retards d'inactivació del "
+"compte"
#: security/l10n.pm:39
#, c-format
@@ -5998,12 +6043,12 @@ msgstr "Umask de root"
#: security/l10n.pm:42
#, c-format
msgid "Shell history size"
-msgstr "Mida de la història de l'intèrpret de comandes"
+msgstr "Mida de la història del shell"
#: security/l10n.pm:43
#, c-format
msgid "Shell timeout"
-msgstr "Temps màxim d'espera per a l'intèrpret d'ordres"
+msgstr "Temps d'espera del shell"
#: security/l10n.pm:44
#, c-format
@@ -6018,12 +6063,12 @@ msgstr "Comprova els ports oberts"
#: security/l10n.pm:46
#, c-format
msgid "Check for unsecured accounts"
-msgstr ""
+msgstr "Comprova si hi ha comptes insegurs"
#: security/l10n.pm:47
#, c-format
msgid "Check permissions of files in the users' home"
-msgstr "Comprova els permisos dels fitxers al home dels usuaris"
+msgstr "Comprova els permisos dels fitxers al directori d'inici dels usuaris"
#: security/l10n.pm:48
#, c-format
@@ -6038,7 +6083,7 @@ msgstr "Executa les comprovacions diàries de seguretat"
#: security/l10n.pm:50
#, c-format
msgid "Check additions/removals of sgid files"
-msgstr "Comprova les addicions/supressions dels fitxers sgid."
+msgstr "Comprova les addicions o supressions dels fitxers SGID"
#: security/l10n.pm:51
#, c-format
@@ -6048,12 +6093,12 @@ msgstr "Comprova la contrasenya buida a /etc/shadow"
#: security/l10n.pm:52
#, c-format
msgid "Verify checksum of the suid/sgid files"
-msgstr "Comprova la suma de control dels fitxers suid/sgid"
+msgstr "Verifica la suma de control dels fitxers SUID o SGID."
#: security/l10n.pm:53
#, c-format
msgid "Check additions/removals of suid root files"
-msgstr "Comprova addicions/eliminacions de fitxers suid root."
+msgstr "Comprova si hi ha addicions o supressions de fitxers de root SUID"
#: security/l10n.pm:54
#, c-format
@@ -6073,7 +6118,7 @@ msgstr "Executa les comprovacions chkrootkit"
#: security/l10n.pm:57
#, c-format
msgid "Do not send empty mail reports"
-msgstr ""
+msgstr "No enviïs missatges d'informe buits"
#: security/l10n.pm:58
#, c-format
@@ -6105,7 +6150,7 @@ msgstr "Informa dels resultats de la comprovació a tty"
#: security/level.pm:10
#, c-format
msgid "Disable msec"
-msgstr ""
+msgstr "Inhabilita msec"
#: security/level.pm:11
#, c-format
@@ -6113,11 +6158,11 @@ msgid "Standard"
msgstr "Estàndard"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "Seguretat"
+msgstr "Segur"
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6125,8 +6170,13 @@ msgid ""
"system security\n"
"on your own."
msgstr ""
+"Aquest nivell s'ha d'utilitzar amb cura, ja que inhabilita tota la seguretat "
+"addicional\n"
+"proporcionada amb MSEC. Utilitzeu-ho només quan vulgueu ocupar-vos de tots "
+"els aspectes de seguretat del sistema\n"
+"pel vostre compte."
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -6136,7 +6186,7 @@ msgstr ""
"s'utilitzarà per connectar-se a Internet com a client. Ara hi ha "
"comprovacions de seguretat."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6148,62 +6198,62 @@ msgid ""
msgstr ""
"Amb aquest nivell de seguretat, la utilització d'aquest sistema com a "
"servidor esdevé possible.\n"
-"La seguretat és ara prou alta com per utilitzar el sistema com a servidor\n"
+"La seguretat és ara prou alta per a utilitzar el sistema com a servidor\n"
"que accepti connexions de molts clients. Nota: si la vostra màquina és només "
"un client d'Internet, seria millor escollir un nivell més baix."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Seguretat"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "Opcions bàsiques del DrakSec"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "Escolliu el nivell de seguretat desitjat"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
-msgstr ""
+msgstr "%s: %s"
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "Administrador de seguretat:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
-msgstr ""
+msgstr "Nom d'usuari o adreça electrònica:"
+
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr "Escolta i despatxa els esdeveniments ACPI del kernel"
-#: services.pm:19
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "Executa el sistema de so ALSA (Advanced Linux Sound Architecture)"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "Anacron, un programador d'ordres periòdiques."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
"It can also be used for shutting down the machine when the battery is low."
msgstr ""
-"L'apmd s'utilitza per monitoritzar l'estat de la bateria i registrar-lo "
+"L'apmd s'utilitza per monitorar l'estat de la bateria i registrar-lo "
"mitjançant el registre del sistema (syslog).\n"
-"També es pot utilitzar per apagar l'ordinador quan queda poca bateria."
+"També es pot utilitzar per aturar l'ordinador quan queda poca bateria."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6213,7 +6263,22 @@ msgstr ""
"especificar en executar 'at', i executa les ordres automàtiques quan la\n"
"mitjana de càrrega és prou baixa."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr "Avahi és un dimoni ZeroConf que implementa una pila mDNS"
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr "Un servidor/client NTP"
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr "Estableix els paràmetres de la freqüència de la CPU"
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6223,32 +6288,57 @@ msgid ""
msgstr ""
"El cron és un programa UNIX estàndard que executa programes determinats\n"
"per l'usuari en hores programades. El vixie cron afegeix un cert nombre de\n"
-"característiques al cron bàsic, incloent seguretat millorada i opcions\n"
+"característiques al cron bàsic, incloent-hi la seguretat millorada i les "
+"opcions\n"
"de configuració més potents."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr ""
+"Common UNIX Printing System (CUPS) és un sistema avançat de gestió de cues "
+"d'impressió"
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
-msgstr ""
+msgstr "Inicia el gestor de pantalla gràfic"
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
"change.\n"
"It is used by GNOME and KDE"
msgstr ""
-"FAM és un dimoni de monitorització de fitxers. És usat per tenir informes "
+"FAM és un dimoni de monitoratge de fitxers. És utilitzat per tenir informes "
"quan els fitxers canvien\n"
-"És usat a GNOME i KDE"
+"S'utilitza a GNOME i KDE"
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+"El G15Daemon permet als usuaris l'accés a totes les claus extres mitjançant "
+"la descodificació i\n"
+"empenyent-les un altre cop al nucli a través del controlador Linux uinput. "
+"Aquest controlador ha d'estar carregat\n"
+"abans que el g15daemon es pugui utilitzar per a accés de teclat. També "
+"s'admet LCD G15. Per defecte,\n"
+"amb cap altre client actiu, el g15daemon mostrarà un rellotge. Les "
+"aplicacions de client i\n"
+"scripts poden accedir a la pantalla LCD a través d'una API senzilla."
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6260,12 +6350,12 @@ msgstr ""
"el Midnight Commander. També permet operacions de tallar i enganxar amb el "
"ratolí, i inclou suport de menús desplegables a la consola."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
-msgstr ""
+msgstr "HAL és un dimoni que recull i manté informació sobre el maquinari"
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
@@ -6274,7 +6364,7 @@ msgstr ""
"El HardDrake fa una prova del maquinari, i opcionalment configura\n"
"el maquinari nou/canviat."
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
@@ -6282,7 +6372,7 @@ msgstr ""
"L'Apache és un servidor de World Wide Web. S'utilitza per servir fitxers\n"
"HTML i CGI."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6292,22 +6382,33 @@ msgid ""
"disables\n"
"all of the services it is responsible for."
msgstr ""
-"El dimoni superservidor d'Internet (conegut normalment com 'inetd') inicia\n"
+"El dimoni superservidor d'Internet (conegut normalment com a 'inetd') "
+"inicia\n"
"altres serveis d'Internet a mesura que es van necessitant. És el "
"responsable\n"
-"d'iniciar molts serveis, incloent el telnet, l'ftp, l'rsh i l'rlogin. Si\n"
+"d'iniciar molts serveis, incloent-hi el telnet, el ftp, el rsh i el rlogin. "
+"Si\n"
"s'inhabilita l'inetd, s'inhabiliten tots els serveis de què és responsable."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr "Automatitza el tallafoc del filtratge d'un paquet amb ip6tables"
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr "Automatitza el tallafoc del filtratge d'un paquet amb iptables"
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"Executa el filtratge de paquets per als nuclis Linux 2.2, per instal·lar\n"
-"un tallafocs que protegeixi el vostre ordinador d'atacs des de la xarxa."
+"Distribueix uniformement la càrrega IRQ entre les diverses CPU per a una "
+"millora del rendiment"
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6319,22 +6420,28 @@ msgstr ""
"kbdconfig.\n"
"Per a la majoria d'ordinadors, s'ha de deixar habilitat."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
"/usr/include/linux/{autoconf,version}.h"
msgstr ""
-"Regeneració automàtica del capçal de nucli a /boot per\n"
+"Regeneració automàtica de la capçalera del kernel a /boot per\n"
"/usr/include/linux/{autoconf,versió}.h"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr ""
"Detecció i configuració automàtica de maquinari en iniciar l'ordinador."
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+"Ajusta el comportament del sistema per a augmentar la durada de la bateria"
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6343,42 +6450,64 @@ msgstr ""
"De vegaDES, el Linuxconf determinarà que s'han de fer algunes tasques\n"
"en iniciar l'ordinador per mantenir la configuració del sistema."
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
"basically a server that arbitrates print jobs to printer(s)."
msgstr ""
-"L'lpd és el dimoni d'impressió necessari perquè l'lpr funcioni\n"
+"El lpd és el dimoni d'impressió necessari perquè el lpr funcioni\n"
"correctament. Bàsicament, es tracta d'un servidor que assigna les\n"
"tasques d'impressió a la(es) impressora(es)."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
"available server."
msgstr ""
-"El Servidor Virtual de Linux (LVS) s'usa per construir un servidor de \n"
+"El Servidor Virtual de Linux (LVS) s'utilitza per construir un servidor de \n"
"gran capacitat i robustesa."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr "Monitora la xarxa (tallafoc interactiu i sense fil"
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr "Monitoratge i gestió del RAID per programari"
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
+"DBUS és un servei que difon les notificacions d'esdeveniments del sistema i "
+"altres missatges"
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr "Habilita la política de seguretat MSEC en l'arrencada del sistema"
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
"names to IP addresses."
msgstr ""
"named (BIND) és un servidor de noms de domini (DNS) que s'utilitza per "
-"convertir noms d'ordinadors centrals en adreces IP."
+"convertir noms d'amfitrions a adreces IP."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr "Inicialitza el registre de consola de xarxa."
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6387,7 +6516,7 @@ msgstr ""
"Munta i desmunta tots els punts de muntatge dels sistemes de fitxers\n"
"de xarxa (NFS), SMB (gestor de xarxes d'àrea local/Windows) i NCP (NetWare)."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -6396,32 +6525,43 @@ msgstr ""
"Activa/Desactiva totes les interfícies de xarxa configurades per\n"
"iniciar-se durant l'arrencada."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr "Cal que la xarxa estigui activa si s'habilita"
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr "Espera que la xarxa connectada en calent estigui engegada"
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
"This service provides NFS server functionality, which is configured via the\n"
"/etc/exports file."
msgstr ""
-"L'NFS és un protocol popular de compartició de fitxers en xarxes TCP/IP.\n"
+"NFS és un protocol popular de compartició de fitxers en xarxes TCP/IP.\n"
"Aquest servei proporciona la funcionalitat del servidor NFS, que es\n"
"configura mitjançant el fitxer /etc/exports."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
"networks. This service provides NFS file locking functionality."
msgstr ""
-"L'NFS és un protocol popular de compartició de fitxers en xarxes TCP/IP\n"
-"Aquest servei proporciona la funcionalitat de blocatge de fitxer NFS."
+"NFS és un protocol popular de compartició de fitxers en xarxes TCP/IP\n"
+"Aquest servei proporciona la funcionalitat de bloqueig de fitxers NFS."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
+"Sincronitza el temps de sistema utilitzant el Network Time Protocol (NTP)"
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6430,12 +6570,17 @@ msgstr ""
"Engega automàticament a l'arrencada la tecla de fixació del \n"
"teclat numèric a la consola i sota Xorg."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "Funciona amb OKI 4w i winprinters compatibles."
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr "Comprova si una partició està a punt d'omplir-se"
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6448,7 +6593,7 @@ msgstr ""
"i els mòdems en portàtils. No s'iniciarà tret que es configuri, de manera\n"
"que no hi ha problema per instal·lar-lo en ordinadors que no el necessiten."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6456,13 +6601,17 @@ msgid ""
"machines\n"
"which act as servers for protocols which make use of the RPC mechanism."
msgstr ""
-"El mapador de ports (portmapper) gestiona les connexions RPC, que s'usen "
-"per\n"
-"protocols com ara l'NFS i el NIS. El servidor portmap s'ha d'estar\n"
-"executant en ordinadors que actuen com a servidors per a protocols que\n"
+"portmapper gestiona les connexions RPC, que són utilitzades pels\n"
+"protocols com ara NFS i NIS. El servidor portmap ha d'estar\n"
+"en execució als ordinadors que actuen com a servidors per als protocols que\n"
"utilitzen el mecanisme RPC."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr "Reserva alguns ports TCP"
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6471,7 +6620,7 @@ msgstr ""
"El Postfix és un Agent de Transport de Correu, que és el programa que passa "
"el correu d'un ordinador a un altre."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6480,10 +6629,10 @@ msgstr ""
"Desa i recupera el generador d'entropia del sistema per a\n"
"la generació de nombres aleatoris d'una qualitat més alta."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
"Assigna els dispositius en cru a dispositius de blocs (com ara les "
@@ -6491,37 +6640,53 @@ msgstr ""
"disc dur), perquè siguin utilitzats per aplicacions com ara Oracle o "
"reproductors DVD"
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr "Gestor de la informació del servidor de noms"
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
"the RIP protocol. While RIP is widely used on small networks, more complex\n"
"routing protocols are needed for complex networks."
msgstr ""
-"El dimoni 'routed' permet que la taula d'encaminadors IP automàtics\n"
-"s'actualitzi mitjançant el protocol RIP. Mentre que el RIP s'utilitza\n"
-"àmpliament en xarxes petites, les xarxes complexes necessiten protocols\n"
-"d'encaminament més complexos."
+"El dimoni routed permet que s'actualitzi automàticament la taula "
+"d'encaminadors IP\n"
+"mitjançant el protocol RIP. Mentre que RIP s'utilitza àmpliament en xarxes "
+"petites,\n"
+"les xarxes complexes necessiten protocols d'encaminament més complexos."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
"performance metrics for any machine on that network."
msgstr ""
"El protocol rstat permet que els usuaris d'una xarxa recuperin\n"
-"mesures de rendiment de qualsevol ordinador de la mateixa."
+"les mètriques de rendiment per a qualsevol màquina d'aquesta xarxa."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+"El syslog és el sistema que utilitzen molts dimonis per registrar\n"
+"missatges en diversos fitxers de registre del sistema. És aconsellable\n"
+"executar-lo sempre."
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
"logged in on other responding machines."
msgstr ""
-"El protocol rusers permet que els usuaris d'una xarxa identifiquin\n"
-"qui està connectat en altres ordinadors de la mateixa."
+"El protocol rusers permet als usuaris en una xarxa identificar\n"
+"qui està connectat en altres màquines que responen."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6531,32 +6696,53 @@ msgstr ""
"de tots els usuaris que estan connectats a un ordinador que està\n"
"executant el dimoni rwho (similar al finger)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
+"SANE (Scanner Access Now Easy) permet l'accés a escàners, càmeres de vídeo, "
+"etc."
+
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr "Tallafoc de filtratge de paquets"
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr "Tallafoc de filtratge de paquets per a IPv6"
-#: services.pm:93
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
+"El protocol SMB/CIFS permet compartir l'accés a fitxers i impressores i \n"
+"també s'integra amb un domini Windows Server"
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "Executa el sistema de so en el vostre ordinador"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr "capa per a anàlisi de parla"
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
+"Secure Shell és un protocol de xarxa que permet l'intercanvi de dades sobre "
+"un canal segur entre dos ordinadors"
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6566,83 +6752,95 @@ msgstr ""
"missatges en diversos fitxers de registre del sistema. És aconsellable\n"
"executar-lo sempre."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr "Mou les regles udev persistents generades cap a /etc/udev/rules.d"
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
-msgstr "Carrega els controladors per a dispositius USB."
+msgstr "Carrega els controladors per als dispositius USB."
+
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr "Un monitor lleuger de trànsit de xarxa"
-#: services.pm:99
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
-msgstr ""
+msgstr "Inicia el servidor de tipografia X."
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
-msgstr ""
+msgstr "Inicia altres dimonis sota demanda."
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Impressió"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Internet"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Compartició de fitxers"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Xarxa"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "Sistema"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "Administració remota"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Servidor de base de dades"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Serveis"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr ""
"Escolliu els serveis que s'han d'iniciar automàticament durant l'arrencada"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Serveis: %d activats per %d registrats"
+msgid "%d activated for %d registered"
+msgstr "%d activats de %d registrats"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "s'està executant"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "aturat"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Serveis i dimonis"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6651,32 +6849,27 @@ msgstr ""
"Malauradament no hi ha més informació\n"
"sobre aquest servei."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Informació"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "Inicia quan el demanin"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "En arrencar"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "Inicia"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Atura"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6699,8 +6892,8 @@ msgstr ""
"publicada la Free Software Foundation, ja sigui la versió 2 com (a elecció\n"
"vostra) qualsevol versió posterior.\n"
"\n"
-"Aquest programa és distribueix amb l'esperança que serà útil, però\n"
-"SENSE CAP GARANTIA; sense ni tant sols la garantia implícita de\n"
+"Aquest programa es distribueix amb l'esperança que serà útil, però\n"
+"SENSE CAP GARANTIA; sense ni tan sols la garantia implícita de\n"
"MERCANTIBILITAT o ADEQUACIÓ A UNA FINALITAT DETERMINADA.\n"
"En trobareu més detalls a la Llicència General Pública de GNU.\n"
"\n"
@@ -6709,7 +6902,7 @@ msgstr ""
"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
"EUA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6732,46 +6925,42 @@ msgstr ""
"--show-conf : llista de fitxers o directoris dels quals\n"
" s'ha de fer la còpia de seguretat.\n"
"--config-info : explica les opcions del fitxer de\n"
-" configuració (per a no-usuaris d'X).\n"
+" configuració (per a no-usuaris de les X).\n"
"--daemon : utilitza la configuració del dimoni. \n"
"--help : mostra aquest missatge.\n"
"--version : mostra el número de versió.\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPCIONS:\n"
-" --boot - habilita la configuració del carregador d'arrencada\n"
-" --splash - habilita la configuració del tema d'arrencada\n"
+" --boot - habilita la configuració del gestor d'arrencada\n"
"mode per defecte: ofereix la configuració de l'entrada automàtica"
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
"[OPCIONS] [NOM_DEL_PROGRAMA]\n"
"\n"
"OPCIONS:\n"
" --help - imprimeix aquest missatge d'ajuda.\n"
-" --report - el programa ha de ser una de les eines de Mandriva "
-"Linux\n"
-" --incident - el programa ha de ser una de les eines de Mandriva "
-"Linux"
+" --report - el programa hauria de ser una de les eines %s\n"
+" --incident - el programa hauria de ser una de les eines %s"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6781,8 +6970,14 @@ msgid ""
" --internet - configure internet\n"
" --wizard - like --add"
msgstr ""
+"[--add]\n"
+" --add - auxiliar \"afegeix una interfície de xarxa\"\n"
+" --del - auxiliar \"elimina una interfície de xarxa\"\n"
+" --skip-wizard - gestiona les connexions\n"
+" --internet - configura Internet\n"
+" --wizard - com --add"
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6800,27 +6995,25 @@ msgid ""
" : and gs for ghostscript for only this one."
msgstr ""
"\n"
-"Aplicació d'importació de tipus de lletra i de monitorització\n"
+"Aplicació d'importació de lletres i de monitoratge\n"
"\n"
"OPCIONS:\n"
"--windows_import : importa des de totes les particions de Windows "
"disponibles.\n"
-"--xls_fonts : mostra tots els tipus de lletra que ja són a l'xls\n"
-"--install : accepta qualsevol fitxer de tipus de lletra i qualsevol "
-"directori.\n"
-"--uninstall : desinstal·la qualsevol tipus de lletra o qualsevol "
-"directori de tipus de lletra.\n"
-"--replace : reemplaça qualsevol tipus de lletra si ja existeix\n"
+"--xls_fonts : mostra totes les lletres que ja són al xls\n"
+"--install : accepta qualsevol fitxer i directori de lletres.\n"
+"--uninstall : desinstal·la qualsevol fitxer o directori de lletres..\n"
+"--replace : substitueix qualsevol lletra si ja existeix\n"
"--application : 0 cap aplicació.\n"
" : 1 totes les aplicacions compatibles disponibles.\n"
-" : nom_de_l'aplicació, com ara so per a l'StarOffice \n"
+" : nom_de_l'aplicació, com ara so per al StarOffice \n"
" : i gs per al ghostscript per utilitzar només aquesta."
-#: standalone.pm:88
-#, fuzzy, c-format
+#: standalone.pm:89
+#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6834,31 +7027,31 @@ msgid ""
"IP, nbi image name)"
msgstr ""
"[OPCIONS]...\n"
-"Configurador del servidor de terminal de Mandriva Linux (MTS)\n"
+"%s Terminal Server Configurator\n"
"--enable : habilita l'MTS\n"
"--disable : inhabilita l'MTS\n"
"--start : inicia l'MTS\n"
"--stop : atura l'MTS\n"
-"--adduser : afegeix a l'MTS un usuari existent al sistema (cal un nom "
+"--adduser : afegeix un usuari existent al sistema a l'MTS (cal el nom "
"d'usuari)\n"
-"--deluser : suprimeix de l'MTS un usuari existent al sistema (cal un "
+"--deluser : elimina un usuari existent al sistema de l'MTS (cal el "
"nom d'usuari)\n"
-"--addclient : afegeix a l'MTS una màquina client (cal una adreça MAC, "
+"--addclient : afegeix una màquina client a l'MTS (cal una adreça MAC, "
"IP, nom d'imatge nbi)\n"
-"--delclient : suprimeix de l'MTS una màquina client (cal una adreça "
-"MAC, IP, nom d'imatge nbi)"
+"--delclient : elimina una màquina client de l'MTS (cal una adreça MAC, "
+"IP, nom d'imatge nbi)"
-#: standalone.pm:100
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[teclat]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6872,7 +7065,7 @@ msgid ""
"--quiet : do not be interactive. To be used with (dis)connect."
msgstr ""
"[OPCIONS]\n"
-"Aplicació de connexió a xarxes i Internet i de monitorització\n"
+"Aplicació de connexió a xarxes i Internet i de monitoratge\n"
"\n"
"--defaultintf interface : per defecte, mostra aquesta interfície\n"
"--connect : connecta a Internet si no ho està ja\n"
@@ -6881,12 +7074,12 @@ msgstr ""
"--status : torna 1 si està connectat, 0 si no, i després surt.\n"
"--quiet : no siguis interactiu. Per utilitzar amb (dis)connect."
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
@@ -6894,14 +7087,14 @@ msgid ""
msgstr ""
"[OPCIÓ]...\n"
" --no-confirmation no facis la primera pregunta de confirmació en el "
-"mode Mandriva Update\n"
-" --no-verify-rpm no comprovis les signatures dels paquets\n"
-" --changelog-first mostra el registre de canvis abans de la llista de "
-"fitxers en la finestra de descripció\n"
+"mode d'actualització %s\n"
+" --no-verify-rpm no verifiquis les signatures dels paquets\n"
+" --changelog-first mostra el registre de canvis abans de llista de "
+"fitxers a la finestra de descripció\n"
" --merge-all-rpmnew proposa fusionar tots els fitxers .rpmnew/.rpmsave "
"trobats"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -6910,7 +7103,7 @@ msgstr ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6921,7 +7114,7 @@ msgstr ""
" XFdrake [--noauto] monitor\n"
" XFdrake resolució"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6929,74 +7122,79 @@ msgid ""
"testing] [-v|--version] "
msgstr ""
"\n"
-"Sintaxi: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
-"testing] [-v|--version] "
+"Ús: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--testing] "
+"[-v|--version] "
-#: timezone.pm:161 timezone.pm:162
-#, fuzzy, c-format
+#: timezone.pm:170 timezone.pm:171
+#, c-format
msgid "All servers"
-msgstr "Afegeix un servidor"
+msgstr "Tots els servidors"
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
-msgstr ""
+msgstr "Global"
-#: timezone.pm:199
+#: timezone.pm:210
#, c-format
msgid "Africa"
msgstr "Àfrica"
-#: timezone.pm:200
+#: timezone.pm:211
#, c-format
msgid "Asia"
msgstr "Àsia"
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr "Europa"
-#: timezone.pm:202
+#: timezone.pm:213
#, c-format
msgid "North America"
msgstr "Amèrica del nord"
-#: timezone.pm:203
-#, fuzzy, c-format
+#: timezone.pm:214
+#, c-format
msgid "Oceania"
-msgstr "Macedònia"
+msgstr "Oceania"
-#: timezone.pm:204
+#: timezone.pm:215
#, c-format
msgid "South America"
msgstr "Amèrica del sud"
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Hong Kong"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "Rússia"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Iugoslàvia"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Això és correcte?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "Heu escollit un fitxer, no un directori"
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Informació"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -7004,346 +7202,9 @@ msgid ""
"Click \"Next\" to install or \"Cancel\" to quit"
msgstr ""
"%s no està instal·lat\n"
-"Feu clic a \"Següent\" per instal·lar-lo o a \"Cancel·la\" per sortir"
+"Feu clic a «Següent» per instal·lar-lo o a «Cancel·la» per sortir"
#: wizards.pm:99
#, c-format
msgid "Installation failed"
msgstr "La instal·lació ha fallat"
-
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "Si us plau, sortiu i utilitzeu Ctrl-Alt-tecla de retrocés"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "Benvinguda als crackers"
-
-#~ msgid "Poor"
-#~ msgstr "Pobre"
-
-#~ msgid "High"
-#~ msgstr "Alt"
-
-#~ msgid "Higher"
-#~ msgstr "Més Alt"
-
-#~ msgid "Paranoid"
-#~ msgstr "Paranoic"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "Aquest nivell s'ha d'utilitzar amb cura. Fa el vostre sistema molt més "
-#~ "fàcil\n"
-#~ "d'utilitzar, però també molt sensible: no s'ha d'utilitzar en un "
-#~ "ordinador\n"
-#~ "connectat a d'altres o a Internet. No cal contrasenya per accedir-hi."
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr ""
-#~ "Ara, la contrasenya està habilitada, però l'ús com a ordinador de xarxa "
-#~ "segueix sense ser recomanable."
-
-#~ msgid ""
-#~ "There are already some restrictions, and more automatic checks are run "
-#~ "every night."
-#~ msgstr ""
-#~ "Hi ha ja algunes restriccions, i a la nit es fan més comprovacions "
-#~ "automàtiques."
-
-#~ msgid ""
-#~ "This is similar to the previous level, but the system is entirely closed "
-#~ "and security features are at their maximum."
-#~ msgstr ""
-#~ "Aquest és similar al nivell anterior, però el sistema està completament "
-#~ "tancat i les característiques de seguretat estan al màxim."
-
-#~ msgid ""
-#~ "\n"
-#~ "Warning\n"
-#~ "\n"
-#~ "Please read carefully the terms below. If you disagree with any\n"
-#~ "portion, you are not allowed to install the next CD media. Press "
-#~ "'Refuse' \n"
-#~ "to continue the installation without using these media.\n"
-#~ "\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a network. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-#~ msgstr ""
-#~ "\n"
-#~ "Avís\n"
-#~ "\n"
-#~ "Si us plau, llegiu atentament les clàusules següents. Si no esteu\n"
-#~ "d'acord amb qualsevol d'elles, no esteu autoritzat a instal·lar\n"
-#~ "els CD següents. Premeu 'Rebutja' per continuar la instal·lació\n"
-#~ "sense utilitzar aquests CD.\n"
-#~ "\n"
-#~ "\n"
-#~ "Alguns dels components que s'inclouen en aquest CD no estan\n"
-#~ "regits per la llicència GPL o acords semblants. Cadascun d'aquests\n"
-#~ "components es regeix per les clàusules i condicions de la seva\n"
-#~ "pròpia llicència específica. Si us plau, llegiu atentament i\n"
-#~ "accepteu aquestes llicències específiques abans d'utilitzar o\n"
-#~ "redistribuir els components esmentats. En general, aquestes\n"
-#~ "llicències impedeixen la transferència, duplicació (excepte amb\n"
-#~ "la finalitat de fer-ne còpies de seguretat), redistribució,\n"
-#~ "enginyeria inversa, desassemblatge, decompilació o modificació del\n"
-#~ "component. Qualsevol violació de l'acord finalitzarà immediatament\n"
-#~ "els vostres drets sobre la llicència específica. Tret que la\n"
-#~ "llicència específica us en garanteixi els drets, normalment no\n"
-#~ "podreu instal·lar els programes en més d'un sistema, ni adaptar-lo\n"
-#~ "per utilitzar-lo en una xarxa. En cas de dubte, poseu-vos en\n"
-#~ "contacte directament amb el distribuïdor o editor del component.\n"
-#~ "La transferència a terceres parts i la còpia d'aquests components,\n"
-#~ "incloent la documentació, estan en general prohibides.\n"
-#~ "\n"
-#~ "\n"
-#~ "Tots els drets sobre els components del CD següent pertanyen als\n"
-#~ "seus autors respectius i estan protegits per les lleis de\n"
-#~ "propietat intel·lectual i de copyright aplicables als programes\n"
-#~ "informàtics.\n"
-
-#~ msgid "Use libsafe for servers"
-#~ msgstr "Empra libsafe per als servidors"
-
-#~ msgid ""
-#~ "A library which defends against buffer overflow and format string attacks."
-#~ msgstr ""
-#~ "Una llibreria que defensa contra els atacs de 'buffer overflow' i de "
-#~ "'format string'."
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "Instal·lació del LILO/grub"
-
-#~ msgid "Precise RAM size if needed (found %d MB)"
-#~ msgstr "Mida exacta de la RAM, si cal (s'han trobat %d MB)"
-
-#~ msgid "Give the ram size in MB"
-#~ msgstr "Introduïu la mida de la RAM en MB"
-
-#~ msgid ""
-#~ "If you plan to use aboot, be careful to leave a free space (2048 sectors "
-#~ "is enough)\n"
-#~ "at the beginning of the disk"
-#~ msgstr ""
-#~ "Si penseu utilitzar aboot, assegureu-vos de deixar espai lliure (amb "
-#~ "2048\n"
-#~ "sectors n'hi ha prou) al començament del disc"
-
-#~ msgid "Security level"
-#~ msgstr "Nivell de seguretat"
-
-#~ msgid "Expand Tree"
-#~ msgstr "Expandeix l'arbre"
-
-#~ msgid "Collapse Tree"
-#~ msgstr "Redueix l'arbre"
-
-#~ msgid "Toggle between flat and group sorted"
-#~ msgstr "Commuta entre pla i ordenat per grups"
-
-#~ msgid "Choose action"
-#~ msgstr "Trieu una acció"
-
-#~ msgid "Active Directory with SFU"
-#~ msgstr "Active Directory amb SFU"
-
-#~ msgid "Active Directory with Winbind"
-#~ msgstr "Active Directory amb Winbind"
-
-#~ msgid "Active Directory with SFU:"
-#~ msgstr "Active Directory amb SFU:"
-
-#~ msgid "Active Directory with Winbind:"
-#~ msgstr "Active Directory amb Winbind:"
-
-#~ msgid "Authentication LDAP"
-#~ msgstr "Autenticació LDAP"
-
-#~ msgid "TLS"
-#~ msgstr "TLS"
-
-#~ msgid "SSL"
-#~ msgstr "SSL"
-
-#~ msgid "LDAP users database"
-#~ msgstr "Base de dades LDAP"
-
-#~ msgid "Authentication NIS"
-#~ msgstr "Autenticació NIS"
-
-#~ msgid ""
-#~ "For this to work for a W2K PDC, you will probably need to have the admin "
-#~ "run: C:\\>net localgroup \"Pre-Windows 2000 Compatible Access\" everyone /"
-#~ "add and reboot the server.\n"
-#~ "You will also need the username/password of a Domain Admin to join the "
-#~ "machine to the Windows(TM) domain.\n"
-#~ "If networking is not yet enabled, Drakx will attempt to join the domain "
-#~ "after the network setup step.\n"
-#~ "Should this setup fail for some reason and domain authentication is not "
-#~ "working, run 'smbpasswd -j DOMAIN -U USER%%PASSWORD' using your Windows"
-#~ "(tm) Domain, and Admin Username/Password, after system boot.\n"
-#~ "The command 'wbinfo -t' will test whether your authentication secrets are "
-#~ "good."
-#~ msgstr ""
-#~ "Per tal que funcioni en un W2K PDC, segurament haureu de fer que "
-#~ "l'administrador executi C:\\>net localgroup \"Accés compatible amb "
-#~ "versions anteriors a Windows 2000\" everyone /add\" i que reiniciï el "
-#~ "servidor.\n"
-#~ "També necessitareu el nom d'usuari i la contrasenya d'un administrador "
-#~ "del domini per poder connectar la màquina al domini de Windows(TM).\n"
-#~ "Si la xarxa encara no està habilitada, DrakX provarà de connectar-se al "
-#~ "domini després del pas de configuració de la xarxa.\n"
-#~ "Si aquesta configuració fallés per algun motiu i l'autenticació no "
-#~ "funcionés, executeu 'smbpasswd -j DOMINI -U USUARI%%CONTRASENYA' passant "
-#~ "com a paràmetres el domini Windows en qüestió i el nom d'usuari i la "
-#~ "contrasenya de l'administrador, després que arrenqui el sistema.\n"
-#~ "L'ordre 'wbinfo -t' comprovarà si els secrets d'autenticació són bons."
-
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "Autenticació en el domini de Windows"
-
-#~ msgid "Undo"
-#~ msgstr "Desfés"
-
-#~ msgid "Save partition table"
-#~ msgstr "Escriu la taula de particions"
-
-#~ msgid "Restore partition table"
-#~ msgstr "Restaura la taula de particions"
-
-#~ msgid ""
-#~ "The backup partition table has not the same size\n"
-#~ "Still continue?"
-#~ msgstr ""
-#~ "La còpia de seguretat de la taula de particions no té la mateixa mida\n"
-#~ "Voleu continuar igualment?"
-
-#~ msgid "Info: "
-#~ msgstr "Informació: "
-
-#~ msgid "Unknown driver"
-#~ msgstr "Controlador desconegut"
-
-#~ msgid "Error reading file %s"
-#~ msgstr "S'ha produït un error en llegir el fitxer %s"
-
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "Ha fallat la restauració des del fitxer %s: %s"
-
-#~ msgid "Bad backup file"
-#~ msgstr "Fitxer de còpia de seguretat incorrecte"
-
-#~ msgid "Error writing to file %s"
-#~ msgstr "S'ha produït un error en escriure al fitxer %s"
-
-#~ msgid "Error: The \"%s\" driver for your sound card is unlisted"
-#~ msgstr ""
-#~ "Error: el programa de control \"%s\" per a la vostra targeta de so no és "
-#~ "a la llista"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Journalised FS"
-#~ msgstr "Journalised FS"
-
-#~ msgid "Starts the X Font Server (this is mandatory for Xorg to run)."
-#~ msgstr "Inicia l'X Font Server (això és necessari perquè l'Xorg funcioni)."
-
-#~ msgid "Add user"
-#~ msgstr "Afegeix un usuari"
-
-#~ msgid "Accept user"
-#~ msgstr "Accepta l'usuari"
-
-#, fuzzy
-#~ msgid ""
-#~ "Do not update directory inode access times on this filesystem\n"
-#~ "(e.g, for faster access on the news spool to speed up news servers)."
-#~ msgstr ""
-#~ "No actualitzeu els temps d'accés a inode en aquest sistema de fitxers (p."
-#~ "ex. per a un accés\n"
-#~ "més ràpid a l'\"spool\" de grups de discussió per accelerar els servidor "
-#~ "de grups de discussió)."
-
-#~ msgid "No supermount"
-#~ msgstr "Sense supermount"
-
-#~ msgid "Supermount"
-#~ msgstr "Supermount"
-
-#~ msgid "Supermount except for CDROM drives"
-#~ msgstr "Supermount excepte pels CDROM"
-
-#~ msgid "Rescue partition table"
-#~ msgstr "Recupera la taula de particions"
-
-#~ msgid "Removable media automounting"
-#~ msgstr "Muntatge automàtic dels dispositius extraïbles"
-
-#~ msgid "Trying to rescue partition table"
-#~ msgstr "S'està intentant recuperar la taula de particions"
-
-#~ msgid "Accept/Refuse bogus IPv4 error messages."
-#~ msgstr "Accepta/Rebutja els missatges d'error IPv4 falsos."
-
-#~ msgid "Accept/Refuse broadcasted icmp echo."
-#~ msgstr "Accepta/Refusa l'eco icmp broadcast."
-
-#~ msgid "Accept/Refuse icmp echo."
-#~ msgstr "Accepta/Rebutja l'eco icmp."
-
-#~ msgid "Allow/Forbid remote root login."
-#~ msgstr "Permet/Impedeix l'entrada de root remota."
-
-#~ msgid "Enable/Disable IP spoofing protection."
-#~ msgstr "Habilita/Inhabilita la protecció contra falsejament de la IP."
-
-#~ msgid "Enable/Disable libsafe if libsafe is found on the system."
-#~ msgstr "Habilita/Inhabilita el libsafe si és que es troba al sistema."
-
-#~ msgid "Enable/Disable the logging of IPv4 strange packets."
-#~ msgstr "Habilita/Inhabilita el registre de paquets IPv4 estranys."
-
-#~ msgid "Enable/Disable msec hourly security check."
-#~ msgstr "Habilita/Inhabilita la comprovació de seguretat msec horària."
-
-#~ msgid "Number of capture buffers:"
-#~ msgstr "Nombre de memòries intermèdies de captura:"
-
-#~ msgid "number of capture buffers for mmap'ed capture"
-#~ msgstr "nombre de memòries intermèdies per a captures amb MMAP"
-
-#~ msgid "PLL setting:"
-#~ msgstr "Configuració del PLL:"
-
-#~ msgid "Radio support:"
-#~ msgstr "Permet l'ús de la ràdio:"
-
-#~ msgid " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
-#~ msgstr " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
diff --git a/perl-install/share/po/cs.po b/perl-install/share/po/cs.po
index ec5f0cf16..fa37938f4 100644
--- a/perl-install/share/po/cs.po
+++ b/perl-install/share/po/cs.po
@@ -1,37 +1,42 @@
-# Translation of cs.po to Czech
-# Copyright (C) 1999,2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
-# Radek Vybiral <Radek.Vybiral@vsb.cz>, 2000, 2001-2003.
-# Michal Bukovjan <bukm@centrum.cz>, 2002-2003, 2004, 2005, 2006, 2007, 2008, 2009.
-msgid ""
-msgstr ""
-"Project-Id-Version: cs\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2009-04-17 22:11+0200\n"
-"Last-Translator: Michal Bukovjan <bukm@centrum.cz>\n"
-"Language-Team: Czech <cs@li.org>\n"
+# Translators:
+# Appukonrad <appukonrad@gmail.com>, 2013
+# Appukonrad <appukonrad@gmail.com>, 2013,2015-2016
+# Luděk Janča <joelp@email.cz>, 2016,2018-2019,2022-2023
+# Luděk Janča <joelp@email.cz>, 2023
+# fri, 2013-2016,2018-2023
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2013-04-04 13:34+0000\n"
+"Last-Translator: fri, 2013-2016,2018-2023\n"
+"Language-Team: Czech (http://app.transifex.com/MageiaLinux/mageia/language/"
+"cs/)\n"
+"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Generator: KBabel 1.11.4\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n "
+"<= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
-msgstr "Prosím počkejte"
+msgstr "Prosím, počkejte"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "Probíhá instalace zaváděcího programu"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -49,583 +54,630 @@ msgstr ""
"\n"
"Přiřadit nové ID svazku?"
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
-msgstr "Instalace zaváděcího programu neuspěla. Stala se tato chyba:"
+msgstr "Instalace zaváděcího programu selhala. Stala se tato chyba:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"Můžete potřebovat změnit startovací zařízení pro Open Firmware\n"
-" pro aktivaci spouštěcího programu. Pokud nevidíte po spuštění prompt,\n"
-" stiskněte při startu Command-Option-O-F a zadejte:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Potom zadejte: shut-down\n"
-"Při dalším spuštění už uvidíte prompt."
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
-"Rozhodli jste se nainstalovat zavaděč systému na oddíl.\n"
-"To znamená, že již zavaděč na disku, ze kterého spouštíte systém nějaký je "
-"(např. System Commander).\n"
+"Rozhodli jste se instalovat zavaděč na diskový oddíl.\n"
+"To znamená, že k zavádění systému používáte jiný zavaděč (např. \n"
+"System Commander).\n"
"\n"
-"Ze kterého disku spouštíte systém?"
+"Z jakého disku startujete systém?"
+
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr "Instalace zaváděcího programu"
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Kam chcete nainstalovat zaváděcí program?"
-#: any.pm:346
+#: any.pm:365
#, c-format
msgid "First sector (MBR) of drive %s"
msgstr "První sektor (MBR) disku %s"
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "První sektor disku (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr "První sektor kořenového oddílu"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "Na disketu"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Přeskočit"
-#: any.pm:358
-#, c-format
-msgid "Bootloader Installation"
-msgstr "Instalace zaváděcího programu"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Kam chcete nainstalovat zaváděcí program?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "Nastavení stylu zavádění"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr "Systémový oddíl EFI"
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "Základní nastavení zaváděcího programu"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "Zaváděcí program"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "Zaváděcí program"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Startovací zařízení"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
msgstr "Hlavní volby"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "Prodleva před zavedením výchozího obrazu"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "Povolit ACPI"
-#: any.pm:411
+#: any.pm:432
#, c-format
msgid "Enable SMP"
msgstr "Povolit SMP"
-#: any.pm:412
+#: any.pm:433
#, c-format
msgid "Enable APIC"
msgstr "Povolit APIC"
-#: any.pm:413
+#: any.pm:435
#, c-format
msgid "Enable Local APIC"
msgstr "Povolit lokální APIC"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Bezpečnost"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Heslo"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Hesla nejsou shodná"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Zkuste to znovu, prosím"
-#: any.pm:418
+#: any.pm:442
#, c-format
-msgid "You can not use a password with %s"
-msgstr "Nelze použít heslo s %s"
+msgid "You cannot use a password with %s"
+msgstr "Nemůžete použít heslo s %s"
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Heslo (podruhé)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "Omezení nastavení z příkazové řádky"
+msgid "Bootloader Configuration"
+msgstr "Nastavení zaváděcího programu"
-#: any.pm:422
+#: any.pm:532
#, c-format
-msgid "restrict"
-msgstr "omezení"
+msgid "Install Options"
+msgstr "Možnosti instalace"
-#: any.pm:423
+#: any.pm:533
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
-msgstr ""
-"Volba ''Omezení nastavení z příkazové řádky'' je bezpředmětné bez hesla"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr "Instalovat nebo aktualizovat rEFInd do systémového oddílu EFI"
-#: any.pm:425
+#: any.pm:535 any.pm:794
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "Vyčistit adresář /tmp při každém startu"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
+"Instalovat /EFI/BOOT (odstranitelné zařízení nebo řešení pro některé BIOSy)"
-#: any.pm:434
+#: any.pm:537
#, c-format
-msgid "Init Message"
-msgstr "Úvodní zpráva"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr "Nastavte rEFInd pro ukládání jeho proměnných v EFI NVRAM"
-#: any.pm:436
+#: any.pm:539
#, c-format
-msgid "Open Firmware Delay"
-msgstr "Prodleva pro firmware"
+msgid "Background"
+msgstr "Pozadí"
-#: any.pm:437
+#: any.pm:544
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Prodleva při spuštění"
+msgid "rEFInd banner"
+msgstr "rEFInd banner"
-#: any.pm:438
+#: any.pm:545
#, c-format
-msgid "Enable CD Boot?"
-msgstr "Povolit spuštění z CD?"
+msgid "Mageia theme"
+msgstr "Vzhled Mageia"
-#: any.pm:439
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Enable OF Boot?"
-msgstr "Povolit zavaděč OF?"
+msgid "Custom"
+msgstr "Vlastní"
-#: any.pm:440
+#: any.pm:564
#, c-format
-msgid "Default OS?"
-msgstr "Výchozí OS?"
+msgid "No scaling"
+msgstr "Bez škálování"
-#: any.pm:513
+#: any.pm:565
#, c-format
-msgid "Image"
-msgstr "Obraz(image)"
+msgid "Scale to fit"
+msgstr "Rozšířit"
-#: any.pm:514 any.pm:527
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Root"
-msgstr "Kořenový(root)"
+msgid "Label"
+msgstr "Značka"
-#: any.pm:515 any.pm:540
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
msgid "Append"
msgstr "Připojit"
-#: any.pm:517
+#: any.pm:612 any.pm:624 any.pm:781
+#, c-format
+msgid "Video mode"
+msgstr "Video režim"
+
+#: any.pm:617
+#, c-format
+msgid "Image"
+msgstr "Obraz (image)"
+
+#: any.pm:618 any.pm:630
+#, c-format
+msgid "Root"
+msgstr "Kořenový (root)"
+
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr "Připojit Xen"
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Video režim"
+msgid "Requires password to boot"
+msgstr "Vyžaduje pro zavedení heslo"
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "Síťový profil"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "Značka"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Výchozí"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "Bez Videa"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "Prázdná značka není povolena"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "Musíte zadat soubor s jádrem"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "Musíte zadat kořenový oddíl"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "Tato značka se již používá"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Jaký typ záznamu chcete přidat?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
+#: any.pm:672
#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Jiný systém (SunOs...)"
+msgid "Other OS (Windows...)"
+msgstr "Jiný systém (Windows...)"
-#: any.pm:574
+#: any.pm:732
#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Jiný systém (MacOs...)"
+msgid ""
+"Here are the entries on your boot menu so far.\n"
+"You can create additional entries or change the existing ones."
+msgstr ""
+"Zde jsou záznamy z vaší zaváděcí nabídky.\n"
+"Můžete přidat další nebo změnit stávající."
-#: any.pm:574
+#: any.pm:783
#, c-format
-msgid "Other OS (Windows...)"
-msgstr "Jiný systém (Windows...)"
+msgid "Do not touch ESP or MBR"
+msgstr "Nesahat na ESP nebo MBR"
-#: any.pm:621
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
#, c-format
-msgid "Bootloader Configuration"
-msgstr "Nastavení zaváděcího programu"
+msgid "Warning"
+msgstr "Varování"
-#: any.pm:622
+#: any.pm:786
#, c-format
msgid ""
-"Here are the entries on your boot menu so far.\n"
-"You can create additional entries or change the existing ones."
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
msgstr ""
-"Zde jsou záznamy z vašeho zaváděcího menu.\n"
-"Můžete přidat další nebo změnit stávající."
+"Neinstalovat na ESP nebo MBR znamená, že instalace není zaváděcí, doku není "
+"řetězec nahrán z jiného OS!"
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr "Vyzkoušet cizí OS"
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+"Zrušením výběru této volby zastavíte hledání ostatních operačních systémů "
+"grub2, což zabrání jejich zahrnutí do zaváděcí nabídky grub2. Tuto volbu lze "
+"také zrušit po instalaci, odebráním ostatních operačních systémů ze "
+"spouštěcí nabídky grub2, při zkrácení doby potřebné pro instalaci "
+"aktualizací jádra"
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "přístup k programům v X prostředí"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "přístup k rpm nástrojům"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "povolit \"su\""
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr "přístup k administrativním souborům"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "přístup k síťovým nástrojům"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "přístup k nástrojům pro kompilaci"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(už byl přidán %s)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "Prosím zadejte uživatelské jméno"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
-msgstr "Uživatelské jméno může obsahovat pouze malá písmena, čísla, '-' a '_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
+msgstr ""
+"Uživatelské jméno musí začínat malým písmenem a pokračovat pouze malými "
+"písmeny, číslicemi nebo znaky „-” a „_”"
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "Toto uživatelské jméno je příliš dlouhé"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "Toto uživatelské jméno už bylo přidáno"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "ID uživatele"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "ID skupiny"
-#: any.pm:817
+#: any.pm:1086
#, c-format
msgid "%s must be a number"
msgstr "%s musí být číslo"
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
-msgstr "%s by mělo být vyšší než 500. Přesto použít?"
+msgid "%s should be above 1000. Accept anyway?"
+msgstr "%s by mělo být vyšší než 1000. Přesto použít?"
-#: any.pm:822
+#: any.pm:1091
#, c-format
msgid "User management"
msgstr "Správa uživatelů"
-#: any.pm:828 authentication.pm:237
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr "Povolit účet hosta"
+
+#: any.pm:1099 authentication.pm:236
#, c-format
msgid "Set administrator (root) password"
msgstr "Heslo správce (uživatele root)"
-#: any.pm:833
+#: any.pm:1105
#, c-format
msgid "Enter a user"
msgstr "Zadejte uživatele"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Ikona"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Skutečné jméno"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "Přihlašovací jméno"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Shell"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr "Další skupiny:"
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
-msgstr "Prosím počkejte, přidávám zdroje..."
+msgstr "Prosím počkejte, přidávají se zdroje..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "Automatické přihlášení"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
-"Můžu nastavit váš počítač tak, aby automaticky přihlásil vybraného uživatele."
+"Lze nastavit váš počítač tak, aby automaticky přihlásil vybraného uživatele."
-#: any.pm:916
+#: any.pm:1251
#, c-format
msgid "Use this feature"
msgstr "Použít tuto vlastnost"
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Zvolte standardního uživatele:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "Vyberte si, který správce oken má být spouštěn:"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
msgstr "Poznámky k vydání"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Zavřít"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Souhlas s licencí"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Konec"
-#: any.pm:1017
+#: any.pm:1343
#, c-format
msgid "Do you accept this license ?"
msgstr "Přijímáte tuto licenci?"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Přijmout"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Odmítnout"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "Prosím zvolte si jazyk, který chcete používat"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"Mandriva Linux podporuje více jazyků. Můžete si zvolit další jazyky,\n"
-"které budou dostupné po instalaci a následném restartu systému."
+"%s podporuje vícero jazyků. Zvolte prosím, pro které jazyky \n"
+"chcete nainstalovat podporu. Tyto budou dostupné po dokončení\n"
+"instalace a restartu systému."
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
#, c-format
-msgid "Multi languages"
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
msgstr "Více jazyků"
-#: any.pm:1087 any.pm:1119
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr "Vybrat další jazyky"
+
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr "Stará (ne UTF-8) kódování pro kompatibilitu"
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "Všechny jazyky"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "Výběr jazyka"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "Země"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
-msgstr "Vyberte si prosím svoji zem"
+msgstr "Vyberte si, prosím, svoji zem"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
-msgstr "Zde je kompletní seznam dostupných zemí"
+msgstr "Zde je úplný seznam dostupných zemí"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "Jiné země"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Rozšíření"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr "Vstupní metoda:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Žádné"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "Nesdílet"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "Povolit všem uživatelům"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Vlastní"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -641,7 +693,7 @@ msgstr ""
"\n"
"Lze také provést \"Vlastní\" povolení pro jednotlivé uživatele.\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
@@ -650,7 +702,7 @@ msgstr ""
"NFS: tradiční systém pro sdílení souborů v prostředí Unix, s menší podporou "
"operačních systémů Mac a Windows."
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
@@ -659,20 +711,20 @@ msgstr ""
"SMB: systém pro sdílení souborů používaný ve Windows, MacOS X a mnohými "
"moderními Linuxovými systémy."
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
msgstr ""
-"Nyní lze provést export přes protokol NFS nebo SMB. Vyberte prosím, který "
+"Nyní lze provést export přes protokol NFS nebo SMB. Vyberte, prosím, který "
"chcete použít."
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "Spustit UserDrake"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
@@ -681,7 +733,7 @@ msgstr ""
"Sdílení mezi uživateli používá skupinu \"fileshare\". \n"
"Uživatele lze do této skupiny přidat pomocí nástroje UserDrake."
-#: any.pm:1421
+#: any.pm:1768
#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
@@ -690,55 +742,110 @@ msgstr ""
"Aby se změny projevily, je nutné se odhlásit a opět přihlásit. Stisknutím OK "
"se ihned odhlásíte."
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr "Aby se změna projevila, je nutné se odhlásit a opět přihlásit"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "Časová zóna"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Jaké je vaše časové pásmo?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr "Nastavení data, hodin a časové zóny"
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr "Jaké vedení času je nejvhodnější?"
-#: any.pm:1490
+#: any.pm:1837
#, c-format
msgid "%s (hardware clock set to UTC)"
msgstr "%s (hardwarové hodiny nastaveny na UTC)"
-#: any.pm:1491
+#: any.pm:1838
#, c-format
msgid "%s (hardware clock set to local time)"
msgstr "%s (hardwarové hodiny nastaveny na místní čas)"
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "NTP Server"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "Automatická synchronizace času (pomocí NTP)"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "URL zrcadla?"
+
+#: any.pm:1880
+#, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "URL musí začínat s ftp:// nebo http:// nebo https://"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr "Navazuje se spojení se stránkami %s pro získání seznamu zrcadel..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr "Nepodařilo se spojit se stránkami %s a stáhnout seznam zrcadel"
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Zvolte si zrcadlo pro stahování balíčků"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Zrušit"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr "Výběr zrcadla"
+
+#: any.pm:1982
+#, c-format
+msgid "Automatic"
+msgstr "Automaticky"
+
+#: any.pm:1983
+#, c-format
+msgid "Specific"
+msgstr "Konkrétní"
+
+#: any.pm:1988
+#, c-format
+msgid "Downloader"
+msgstr "Stahovač"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
-msgstr "Lokální soubor"
+msgstr "Místní soubor"
#: authentication.pm:25
#, c-format
@@ -755,7 +862,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr "Čipová karta"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Doména Windows"
@@ -765,23 +872,23 @@ msgstr "Doména Windows"
msgid "Kerberos 5"
msgstr "Kerberos 5"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
-msgstr "Lokální soubor:"
+msgstr "Místní soubor:"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr "Pro ověřování a informace o uživatelích se bude používat místní soubor"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
@@ -790,12 +897,12 @@ msgstr ""
"Některé nebo veškeré ověřování bude používat LDAP. LDAP sdružuje některé "
"informace uvnitř vaší organizace."
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
@@ -804,12 +911,12 @@ msgstr ""
"Umožňuje provozovat skupinu počítačů ve stejné doméně NIS (Network "
"Information Service) se společným heslem a skupinami."
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Doména Windows:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
@@ -818,262 +925,258 @@ msgstr ""
"Winbind umožňuje systému získávat informace a ověřovat uživatele v doméně "
"Windows."
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr "Kerberos 5 :"
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
-msgstr "Zahrnuje Kerberos a LDAP pro ověřování na serveru s Active Directory"
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
+msgstr "S Kerberem a LDAP pro ověření na serveru Active Directory"
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
msgstr " "
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
#, c-format
msgid "Welcome to the Authentication Wizard"
msgstr "Vítejte v Průvodci pro ověřování"
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-"Vybrali jste ověřování pomocí LDAP. Zkontrolujte prosím níže uvedené volby "
+"Vybrali jste ověřování pomocí LDAP. Zkontrolujte, prosím, níže uvedené volby "
"nastavení "
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "LDAP server"
-#: authentication.pm:113 authentication.pm:168
+#: authentication.pm:112 authentication.pm:167
#, c-format
msgid "Base dn"
msgstr "Základní dn"
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr "Získat základní Dn "
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr "Šifrovat připojení pomocí TLS "
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr "Stáhnout certifikát CA"
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr "Použít režim Odpojení"
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
msgstr "Použít anonymní BIND "
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
msgstr " "
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr "Bind DN "
-#: authentication.pm:123 authentication.pm:175
+#: authentication.pm:122 authentication.pm:174
#, c-format
msgid "Bind Password "
msgstr "Heslo pro Bind "
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr "Pokročilá cesta pro skupinu "
-#: authentication.pm:127
+#: authentication.pm:126
#, c-format
msgid "Password base"
msgstr "Základna pro heslo"
-#: authentication.pm:128
+#: authentication.pm:127
#, c-format
msgid "Group base"
msgstr "Základna pro skupinu"
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr "Základna pro shadow"
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-"Vybrali jste ověřování pomocí Kerberos 5. Zkontrolujte prosím níže uvedené "
+"Vybrali jste ověřování pomocí Kerberos 5. Zkontrolujte, prosím, níže uvedené "
"volby nastavení "
-#: authentication.pm:146
+#: authentication.pm:145
#, c-format
msgid "Realm "
msgstr "Oblast "
-#: authentication.pm:148
+#: authentication.pm:147
#, c-format
msgid "KDCs Servers"
msgstr "Servery KDCs"
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr "Použít DNS pro vyhledání KDC pro oblast"
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr "Použít DNS pro vyhledání oblastí"
-#: authentication.pm:156
+#: authentication.pm:155
#, c-format
msgid "Use local file for users information"
msgstr "Použít místní soubor pro informace o uživatelích"
-#: authentication.pm:157
+#: authentication.pm:156
#, c-format
-msgid "Use Ldap for users information"
-msgstr "Použít LDAP pro informace o uživatelích"
+msgid "Use LDAP for users information"
+msgstr "Použít LDAP pro ukládání informací o uživatelích"
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-"Vybrali jste pro ověřování Kerberos 5, nyní je třeba zvolit typ informací o "
+"Vybrali jste pro ověřování Kerberos 5. Nyní je třeba zvolit typ informací o "
"uživatelích "
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr "Získat základní Dn "
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-"Vybrali jste ověřování pomocí NIS. Zkontrolujte prosím níže uvedené volby "
+"Vybrali jste ověřování pomocí NIS. Zkontrolujte, prosím, níže uvedené volby "
"nastavení "
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "NIS doména"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "NIS server"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-"Vybrali jste ověřování pomocí domén Windows. Zkontrolujte prosím níže "
+"Vybrali jste ověřování pomocí domén Windows. Zkontrolujte, prosím, níže "
"uvedené volby nastavení "
-#: authentication.pm:218
+#: authentication.pm:217
#, c-format
msgid "Domain Model "
msgstr "Doménový model "
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr "Oblast Active Directory "
-#: authentication.pm:221
+#: authentication.pm:220
#, c-format
msgid "DNS Domain"
msgstr "DNS doména"
-#: authentication.pm:222
+#: authentication.pm:221
#, c-format
msgid "DC Server"
msgstr "Server DC"
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Ověření"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "Metoda ověření"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Bez hesla"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr "Toto heslo je příliš jednoduché (musí být alespoň %d znaků dlouhé)"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
-msgstr "Nelze použít všesměrové vysílání bez NIS domény"
+msgid "Cannot use broadcast with no NIS domain"
+msgstr "Bez zadané NIS domény nelze použít broadcast "
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Vyberte soubor"
-#: authentication.pm:897
+#: authentication.pm:882
#, c-format
msgid "Domain Windows for authentication : "
msgstr "Doména Windows pro ověřování: "
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "Uživatelské jméno Správce domény"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Heslo Správce domény"
-# NOTE: this message will be displayed at boot time; that is
-# only the ascii charset will be available on most machines
-# so use only 7bit for this message (and do transliteration or
-# leave it in English, as it is the best for your language)
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1082,48 +1185,53 @@ msgid ""
"wait for default boot.\n"
"\n"
msgstr ""
-"Vita vas program pro vyber operacniho systemu!\n"
+"Vítá vás program pro výběr operačního systému!\n"
"\n"
-"Vyberte si ze seznamu operacnich systemu nize nebo\n"
-"vyckejte na automaticke zavedeni.\n"
+"Vyberte si ze seznamu operačních systémů níže nebo\n"
+"vyčkejte na automatické zavedení.\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
-msgstr "LILO s textovým menu"
+msgstr "LILO s textovou nabídkou"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 s grafickou nabídkou"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 s textovou nabídkou"
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
-msgstr "GRUB s grafickým menu"
+msgstr "GRUB s grafickou nabídkou"
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
-msgstr "GRUB s textovým menu"
+msgstr "GRUB s textovou nabídkou"
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr "rEFInd s grafickým menu"
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
-msgstr "SILO"
+msgid "U-Boot/Extlinux with text menu"
+msgstr "U-Boot/Extlinux s textovým menu"
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "není dost místa v adresáři /boot"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "Zaváděcí program nelze nainstalovat na oddíl %s\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
@@ -1132,65 +1240,66 @@ msgstr ""
"Nastavení vašeho zavaděče musí být aktualizováno, protože se změnilo pořadí "
"oddílů na disku"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
-"Zavaděč nelze korektně nainstalovat. Musíte použít rescue režim a vybrat \"%s"
-"\""
+"Zavaděč se nepodařilo řádně nainstalovat. Spusťte systém v záchranném režimu "
+"a zvolte \"%s\""
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "Znovu instalovat zaváděcí program"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "B"
msgstr "B"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "kB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "MB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "GB"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "TB"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr "%02d:%02d"
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d minut(y)"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 minuta"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d sekund"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr "chybí příkaz %s"
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1199,10 +1308,9 @@ msgid ""
"configured as a WebDAV server). If you would like to add WebDAV mount\n"
"points, select \"New\"."
msgstr ""
-"WebDAV je protokol, který umožňuje připojit webový adresář jako lokální, "
+"WebDAV je protokol, který umožňuje připojit webový adresář jako místní, "
"který\n"
-"se potom tváří jako lokální souborový systém (takový webový server musí "
-"být)\n"
+"se potom tváří jako místní souborový systém (takový webový server musí být)\n"
"nastaven jako WebDAV server). Pokud chcete přidat WebDAV připojení, vyberte\n"
"položku \"Nový\"."
@@ -1211,12 +1319,12 @@ msgstr ""
msgid "New"
msgstr "Nový"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Odpojit"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Připojit"
@@ -1226,43 +1334,44 @@ msgstr "Připojit"
msgid "Server"
msgstr "Server"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Přípojný bod"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Volby"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Odebrat"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Hotovo"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Chyba"
@@ -1270,87 +1379,78 @@ msgstr "Chyba"
#: diskdrake/dav.pm:86
#, c-format
msgid "Please enter the WebDAV server URL"
-msgstr "Zadejte prosím URL serveru WebDAV"
+msgstr "Zadejte, prosím, URL serveru WebDAV"
#: diskdrake/dav.pm:90
#, c-format
msgid "The URL must begin with http:// or https://"
msgstr "URL musí začínat znaky http:// nebo https://"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Varování"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Chcete klepnout na toto tlačítko? "
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr "Chcete opravdu smazat tento přípojný bod?"
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Server: "
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
-msgstr "Adresář připojení (mount point): "
+msgstr "Adresář připojení (přípojný bod): "
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Volby: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "Rozdělení disku"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
-msgstr "Klepněte na oddíl, vyberte souborový systém a poté zvolte akci"
+msgstr "Klepněte na oddíl, vyberte souborový systém a poté zvolte činnost"
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Čtěte pozorně"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "Zálohujte si nejdřív svá data, prosím"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Konec"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Pokračovat"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Nápověda"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1359,144 +1459,135 @@ msgid ""
msgstr ""
"Máte jeden veliký oddíl\n"
"(většinou používaný Microsoft Windows).\n"
-"Doporučuji vám nejprve zmenšit tento oddíl\n"
+"Doporučuje se nejprve zmenšit tento oddíl\n"
"(klepněte na něj a potom na \"Změnit velikost\")"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
-msgstr "Prosím klepněte na oddíl"
+msgstr "Prosím, klepněte na oddíl"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
-msgstr "Detaily"
+msgstr "Podrobnosti"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
-msgstr "Nenalezeny žádné pevné disky"
+msgid "No hard disk drives found"
+msgstr "Nebyly nalezeny žádné pevné disky"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Neznámý"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432
#, c-format
-msgid "Ext3"
-msgstr "Ext3"
+msgid "Ext4"
+msgstr "Ext4"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "XFS"
msgstr "XFS"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Odkládací (swap)"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOs"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Další"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Prázdný"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Souborové systémy:"
-#: diskdrake/hd_gtk.pm:407
+#: diskdrake/hd_gtk.pm:461
#, c-format
msgid "This partition is already empty"
msgstr "Tento oddíl je již prázdný"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "Nejprve použijte ''Odpojit''"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "Místo toho použijte ''%s'' (v expertním režimu)"
+msgstr "Místo toho použijte ''%s'' (v znaleckém (expertním) režimu)"
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Typ"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Vybrat jiný oddíl"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Vyberte oddíl"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "Více"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
#, c-format
msgid "Confirmation"
msgstr "Potvrzení"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Přesto chcete pokračovat?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Konec bez uložení"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Chcete skončit bez zapsání do tabulky oddílů?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
-msgstr "Chcete uložit úpravy souboru /etc/fstab?"
+msgid "Do you want to save the /etc/fstab modifications?"
+msgstr "Chcete uložit změny v /etc/fstab?"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
-msgstr "Aby se projevily změny v tabulce oddílů, musíte restartovat počítač"
+msgid "You need to reboot for the partition table modifications to take effect"
+msgstr "Aby se změny v tabulce oddílů projevily, restartujte počítač"
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1507,42 +1598,42 @@ msgstr ""
"Jinak nebude do tabulky fstab zapsána položka pro přípojný bod %s.\n"
"Chcete přesto skončit?"
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Vše smazat"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Automaticky rozmístit"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "Přepnout se do módu 'normální'"
+msgid "Normal mode"
+msgstr "Režimu 'normální'"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "Přepnout se do režimu 'expert'"
+msgid "Expert mode"
+msgstr "Režim 'znalec'"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "Informace o pevném disku"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
-msgstr "Všechny primární oddíly (partitions) jsou používány"
+msgstr "Všechny primární diskové oddíly jsou používány"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
-msgstr "Nemůžu přidat žádný další oddíl"
+msgid "I cannot add any more partitions"
+msgstr "Nelze přidat další oddíly"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
@@ -1550,301 +1641,341 @@ msgid ""
msgstr ""
"Abyste mohli mít více oddílů, musíte smazat jeden existující a na jeho "
"místě\n"
-"vytvořit rozšířený (extended) oddíl"
+"vytvořit rozšířený oddíl"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Znovu načíst tabulku oddílů"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Podrobné informace"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
msgstr "Prohlížet"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Změnit velikost"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Formátovat"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Přidat do RAIDu"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Přidat do LVMu"
-#: diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:417
#, c-format
msgid "Use"
msgstr "Použít"
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Smazat"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Odebrat z RAIDu"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Odebrat z LVMu"
-#: diskdrake/interactive.pm:415
+#: diskdrake/interactive.pm:422
#, c-format
msgid "Remove from dm"
msgstr "Odebrat z dm"
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "Změnit RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
-msgstr "Použít loopback"
+msgstr "Použít pro smyčku (loopback)"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Vytvořit"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Přesunout soubory na nový diskový oddíl"
+msgstr "Připojení oddílu selhalo"
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Vytvořit nový oddíl"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Počáteční sektor: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Velikost v MB: "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Souborový systém: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Nastavení: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "Název logického svazku "
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr "Šifrovat oddíl"
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr "Šifrovací klíč "
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Šifrovací klíč (znovu)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Šifrovací klíče se neshodují"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr "Chybí šifrovací klíč"
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
-"Nemůžete vytvořit nový oddíl\n"
-"(protože jste již dosáhli maximálního počtu primárních oddílů).\n"
-"Nejprve odstraňte některý primární oddíl a vytvořte oddíl rozšířený."
+"Nelze vytvořit nový oddíl\n"
+"(jelikož bylo dosaženo největšího počtu primárních oddílů).\n"
+"Odstraňte jeden z primarních oddílů a vytvořte rozšířený oddíl."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
-msgstr "Odstranit soubor loopbacku?"
+msgstr "Odstranit soubor smyčky (loopback)?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr "Tím, že změníte typ oddílu %s, přijdete o všechna jeho data"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Změnit typ oddílu"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Který souborový systém chcete použít?"
-#: diskdrake/interactive.pm:594
+#: diskdrake/interactive.pm:650
#, c-format
msgid "Switching from %s to %s"
-msgstr "Převádím z %s na %s"
+msgstr "Převádí se z %s na %s"
-#: diskdrake/interactive.pm:624
+#: diskdrake/interactive.pm:685
#, c-format
msgid "Set volume label"
msgstr "Nastavit návěští svazku"
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr "Pozor, toto bude zapsáno na disk, jakmile to ověříte!"
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr "Pozor, toto bude zapsáno na disk pouze po formátování!"
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr "Které návěští svazku?"
-#: diskdrake/interactive.pm:630
+#: diskdrake/interactive.pm:691
#, c-format
msgid "Label:"
msgstr "Návěští:"
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
-msgstr "Kam chcete připojit loopback soubor %s?"
+msgstr "Kam chcete připojit soubor smyčky (loopback) %s?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "Kam chcete připojit zařízení %s?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
-"Nemůžu smazat přípojný bod, protože tento oddíl je používán pro loopback.\n"
-"Odstraňte nejprve loopback"
+"Nelze zrušit přípojný bod, jelikož je užíván jako smyčka. \n"
+"Nejprve zrušte smyčku."
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "Kam chcete připojit %s?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
-msgstr "Měním velikost"
+msgstr "Mění se velikost"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
-msgstr "Počítám hranice souborového systému fat"
+msgstr "Počítá se hranice souborového systému fat"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "Na tomto diskovém oddílu nelze měnit velikost"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
-msgstr "Všechna data z tohoto oddílu by měla být zálohována"
+msgid "All data on this partition should be backed up"
+msgstr "Prosím, zálohujte všechna data na tomto oddílu"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr "Když změníte velikost oddílu %s, ztratíte tím všechna jeho data"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Zvolte novou velikost"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "Nová velikost v MB: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
-msgstr "Minimální velikost: %s MB"
+msgstr "Nejmenší velikost: %s MB"
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
-msgstr "Maximální velikost: %s MB"
+msgstr "Největší velikost: %s MB"
-#: diskdrake/interactive.pm:805
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
"filesystem checks will be run on your next boot into Microsoft Windows®"
msgstr ""
-"Pro zachování integrity po provedené změně velikosti oddílu(ů) bude při\n"
+"Pro zachování celistvosti po provedené změně velikosti oddílu(ů) bude při\n"
"dalším spuštění systému Microsoft Windows® provedena kontrola souborového "
"systému."
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Klíč pro šifrovaný souborový systém"
-#: diskdrake/interactive.pm:854
+#: diskdrake/interactive.pm:982
#, c-format
msgid "Enter your filesystem encryption key"
msgstr "Zadejte šifrovací klíč vašeho souborového systému"
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "Šifrovací klíč"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr "Neplatný klíč"
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Zvolte existující RAID pro přidání"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "nový"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Zvolte existující LVM pro přidání"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
#, c-format
-msgid "LVM name?"
-msgstr "Název pro LVM?"
+msgid "LVM name"
+msgstr "Název LVM"
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr "Zadejte název nové skupiny svazků LVM"
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr "„%s” už existuje"
+
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr "Připravení LVM"
+
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
@@ -1853,117 +1984,117 @@ msgstr ""
"Fyzický svazek %s se stále používá.\n"
"Chcete přesunout používané fyzické oblasti na tomto svazku do jiných svazků?"
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
-msgstr "Přesunuji fyzické oblasti"
+msgstr "Přesunují se fyzické oblasti"
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
-msgstr "Tento oddíl nemůže být použit pro loopback"
+msgid "This partition cannot be used for loopback"
+msgstr "Tento oddíl nemůže být použit jako smyčka"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
-msgstr "Loopback"
+msgstr "Smyčka"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
-msgstr "Název souboru loopbacku:"
+msgstr "Název souboru smyčky (loopback):"
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "Zadejte název souboru"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
-msgstr "Soubor už je používán jiným loopbackem, zvolte si jiný"
+msgstr "Soubor už je používán jinou smyčkou (loopback), zvolte si jiný"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Soubor už existuje. Mám ho použít?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "Volby pro připojení"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "Další"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "zařízení"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "úroveň"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
msgstr "velikost bloku v kB"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
-msgstr "Buďte opatrní: tato akce je nebezpečná."
+msgstr "Buďte opatrní: tato činnost je nebezpečná."
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "Partitioning Type"
msgstr "Typ rozdělení"
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "Jaký typ diskového oddílu?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
-msgstr "Aby se změny uplatnily budete muset restartovat počítač"
+msgid "You'll need to reboot before the modification can take effect"
+msgstr "Změny se projeví až po restartu systému"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "Bude zapsána nová tabulka oddílů na disku %s"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
-msgstr "Formátuji oddíl %s"
+msgstr "Formátuje se oddíl %s"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr "Když naformátujete oddíl %s, ztratíte tím všechna jeho data"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
-msgstr "Otestovat na vadné stopy?"
+msgid "Check for bad blocks?"
+msgstr "Provést kontrolu na vadné sektory?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "Přesunout soubory na nový diskový oddíl"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Schovat soubory"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1979,128 +2110,127 @@ msgstr ""
"Můžete buď přesunout soubory na oddíl, který zde bude připojen, nebo je "
"nechat tam, kde jsou (a tak je překryjete obsahem připojeného oddílu)"
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
-msgstr "Přesunuji soubory na nový diskový oddíl"
+msgstr "Přesunují se soubory na nový diskový oddíl"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
-msgstr "Kopíruji %s"
+msgstr "Kopíruje se %s"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
-msgstr "Odstraňuji %s"
+msgstr "Odstraňuje se %s"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "oddíl %s je nyní rozpoznán jako %s"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr "Oddíly byly přečíslovány: "
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Zařízení: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr "Název svazku: "
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr "UUID: "
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "Písmeno v DOSu: %s (jenom odhad)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Typ: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Jméno: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Začátek: sektor %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr "Velikost: %s (%s%% disku)"
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Velikost: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s sektorů"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "Od cylindru %d do cylindru %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr "Počet logických oblastí: %d\n"
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Naformátovaný\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Nenaformátovaný\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Připojený\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1446
#, c-format
msgid "Encrypted"
msgstr "Šifrovaný"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr " (mapovaný na %s)"
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr " (k mapování na %s)"
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr " (neaktivní)"
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2109,7 +2239,7 @@ msgstr ""
"Loopback soubor(y): \n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2118,27 +2248,27 @@ msgstr ""
"Standardní startovací oddíl\n"
" (pro MS-DOS, ne pro LILO)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Úroveň %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
msgstr "Velikost bloku (chunk) %d kB\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "RAID disky %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Loopback soubor: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2151,7 +2281,7 @@ msgstr ""
"s ovladači, je lepší\n"
"no nechat neporušený.\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2164,68 +2294,63 @@ msgstr ""
"oddíl je pro spuštění\n"
"dalšího systému.\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr "Volné místo na %s (%s)"
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Pouze pro čtení"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Velikost: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Geometrie: %s cylindrů, %s hlav, %s sektorů\n"
-#: diskdrake/interactive.pm:1351
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Jméno: "
+
+#: diskdrake/interactive.pm:1492
#, c-format
msgid "Medium type: "
msgstr "Typ média: "
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "LVM disky %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Typ tabulky oddílů: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "na kanále %d id %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "Vyberte si šifrovací klíč pro souborový systém"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
"Tento šifrovací klíč je příliš jednoduchý (musí být alespoň %d znaků dlouhý)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "Šifrovací klíče se neshodují"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Šifrovací klíč (znovu)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Šifrovací algoritmus"
@@ -2235,18 +2360,10 @@ msgstr "Šifrovací algoritmus"
msgid "Change type"
msgstr "Změnit typ"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Zrušit"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
-msgstr "Nelze se přihlásit pod uživatelským jménem %s (chybné heslo?)"
+msgid "Cannot login using username %s (bad password?)"
+msgstr "Nelze se přihlásit pod uživatelským jménem %s (nemáte špatné heslo?)"
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
#, c-format
@@ -2268,7 +2385,7 @@ msgstr "Další"
msgid ""
"Please enter your username, password and domain name to access this host."
msgstr ""
-"Prosím zadejte své uživatelské jméno, heslo a název domény, pod kterými "
+"Prosím, zadejte své uživatelské jméno, heslo a název domény, pod kterými "
"chcete přistupovat k tomuto počítači."
#: diskdrake/smbnfs_gtk.pm:180
@@ -2288,74 +2405,84 @@ msgstr "Vyhledat servery"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
-msgstr "Vyhledat nové servery"
+msgid "Search for new servers"
+msgstr "Hledat nové servery"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "Balíček %s musí být nainstalován. Chcete ho nainstalovat?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr "Nelze nainstalovat balíček %s!"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "Chybí potřebný balíček %s"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Je potřeba nainstalovat tyto balíčky:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
-msgstr "Instaluji balíčky..."
+msgstr "Instalují se balíčky..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
-msgstr "Odstraňuji balíčky..."
+msgstr "Odstraňují se balíčky..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
"filesystems. Please check your hardware for the cause of this problem"
msgstr ""
"Stala se chyba - nebylo nalezeno žádné zařízení, na kterém by se daly "
-"vytvořit nové souborové systémy. Zkontrolujte prosím hardware"
+"vytvořit nové souborové systémy. Zkontrolujte, prosím, hardware pro příčiny "
+"problému"
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "Musíte mít FAT oddíl připojený na /boot/efi"
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "Musíte mít ESP FAT32 oddíl připojený na /boot/EFI"
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+"Musíte mít zaváděcí oddíl BIOS pro disky non-UEFI GPT-partitioned. Předtím "
+"než budete pokračovat, prosím, jeden vytvořte."
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
-msgstr "Vytvářím a formátuji soubor %s"
+msgstr "Vytváří se a formátuje se soubor %s"
-#: fs/format.pm:119
+#: fs/format.pm:202
#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "Nevím, jak nastavit návěští na %s typu %s"
+msgstr "Neví se, jak nastavit návěští na %s typu %s"
-#: fs/format.pm:126
+#: fs/format.pm:214
#, c-format
msgid "setting label on %s failed, is it formatted?"
msgstr "nastavení návěští na %s selhalo, je zformátováno?"
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
-msgstr "nevím jak naformátovat %s na typ %s"
+msgstr "neví se jak naformátovat %s na typ %s"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s formátování %s skončilo chybou"
@@ -2368,32 +2495,32 @@ msgstr "Propletené přípojné body %s\n"
#: fs/mount.pm:85
#, c-format
msgid "Mounting partition %s"
-msgstr "Připojuji oddíl %s"
+msgstr "Připojuje se oddíl %s"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "připojení oddílu %s v adresáři %s selhalo"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
-msgstr "Kontroluji %s"
+msgstr "Kontroluje se %s"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "chyba odpojování %s: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
-msgstr "Aktivuji odkládací oddíl %s"
+msgstr "Povoluje se odkládací oddíl %s"
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
-msgstr "Použít šifrovaný souborový systém"
+msgid "Enable POSIX Access Control Lists"
+msgstr "Povolit seznam přístupových práv POSIX."
#: fs/mount_options.pm:116
#, c-format
@@ -2408,12 +2535,11 @@ msgstr "Počítat skupinové kvóty na disku a volitelně vynucovat omezení"
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
-"Neaktualizovat čas přístupu pro tento souborový systém\n"
-"(např. pro rychlejší přístup k frontě zpráv při provozování diskusního "
-"serveru)."
+"Neaktualizovat čas přístupu k inode na tomto souborovém systému\n"
+"(např. pro rychlejší přístup k souborům)"
#: fs/mount_options.pm:123
#, c-format
@@ -2422,35 +2548,33 @@ msgid ""
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
"Aktualizovat čas přístupu k uzlům pro tento souborový systém efektivněji\n"
-"(např. pro rychlejší přístup k frontě zpráv při provozování diskusního "
+"(např. pro rychlejší přístup k řadě zpráv při provozování diskusního "
"serveru)."
#: fs/mount_options.pm:126
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
-"Lze připojit pouze explicitně (tj. volba -a\n"
-"způsobí, že souborový systém nebude připojen)."
+"Může být připojeno pouze výslovně (tzn. připojování všech souborových "
+"systémů pomocí parametru -a tento souborový systém nepřipojí)."
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
-msgstr ""
-"Neinterpretovat speciální znaková či bloková zařízení na souborovém systému."
+msgid "Do not interpret character or block special devices on the filesystem."
+msgstr "Na tomto systému nepřekládat speciální bloková ani znaková zařízení."
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
-"Nepovolit spouštění jakýchkoliv binárních souborů na připojeném\n"
-"souborovém systému. Tato volba je užitečná v případě, že na serveru\n"
-"je souborový systém, který obsahuje binární aplikace pro jinou architekturu\n"
-"než je vlastní systém serveru."
+"Na tomto systému nedovolit spouštění žádných binárních souborů. Tato volba "
+"může být užitečná pro souborové systémy, na nichž se nacházejí spustitelné "
+"soubory pro jiné architektury."
#: fs/mount_options.pm:135
#, c-format
@@ -2465,23 +2589,23 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
-msgstr "Připojit souborový systém pouze pro čtení."
+msgid "Mount the filesystem read-only."
+msgstr "Připojit souborový systém v režimu pouze pro čtení."
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
-msgstr "Všechny vstupně/výstupní operace budou prováděny synchronně."
+msgid "All I/O to the filesystem should be done synchronously."
+msgstr "Všechna I/O volání na souborovém systému musí proběhnout synchronně."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
-msgstr "Povolit připojení a odpojení souborového systému každému uživateli."
+msgid "Allow every user to mount and umount the filesystem."
+msgstr "Umožní všem uživatelům připojit či odpojit tento souborový systém."
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
-msgstr "Povolit obyčejnému uživateli připojit souborový systém."
+msgid "Allow an ordinary user to mount the filesystem."
+msgstr "Umožní běžným uživatelům připojit souborový systém."
#: fs/mount_options.pm:147
#, c-format
@@ -2503,32 +2627,32 @@ msgstr "Umožnit zápis běžným uživatelům"
msgid "Give read-only access to ordinary users"
msgstr "Umožnit běžným uživatelům pouze čtení"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Zdvojený přípojný bod %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "Nejsou dostupné žádné diskové oddíly"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
-msgstr "Hledám oddíly, které lze připojit"
+msgstr "Hledají se oddíly, které lze připojit"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Zvolte si přípojné body"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Zvolte diskové oddíly, které chcete naformátovat"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2537,24 +2661,24 @@ msgstr ""
"Selhala kontrola souborového systému %s. Chcete opravit chyby? (pozor, může "
"dojít ke ztrátě dat)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
-msgstr "Není dostatek odkládacího prostoru k instalaci, prosím přidejte nějaký"
+msgstr ""
+"Není dostatek odkládacího prostoru k instalaci, prosím, přidejte nějaký"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"Musíte mít kořenový oddíl.\n"
-"K jeho vytvoření musíte zvolit jeden existující oddíl\n"
-"(nebo vytvořit nový), zvolit 'Přípojný bod'\n"
-"a nastavit ho na '/'"
+"K jeho nastavení vytvořte oddíl (nebo vyberte oddíl stávající), vyberte "
+"možnost Mount point (adresář připojení) a zvolte \"/\""
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2565,94 +2689,58 @@ msgstr ""
"\n"
"Chcete přesto pokračovat?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
msgstr "Použít volné místo"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "Není dostatek místa pro vytvoření nových diskových oddílů"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "Použít existující oddíly"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "Není zde žádný existující oddíl k použití"
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Použít oddíl Microsoft Windows® jako loopback"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Který diskový oddíl chcete použít pro Linux4Win?"
-
-#: fs/partitioning_wizard.pm:108
-#, c-format
-msgid "Choose the sizes"
-msgstr "Zvolte velikosti"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "Velikost kořenového oddílu v MB:"
-
-#: fs/partitioning_wizard.pm:110
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Velikost odkládacího oddílu v MB: "
-
-#: fs/partitioning_wizard.pm:119
-#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-"Nejsou zde žádné FAT oddíly, které by bylo možné použít pro loopback (nebo "
-"není dostatek místa)"
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "Počítá se volné místo na oddílu Microsoft Windows®"
-#: fs/partitioning_wizard.pm:127
+#: fs/partitioning_wizard.pm:201
#, c-format
msgid "Use the free space on a Microsoft Windows® partition"
msgstr "Použít volné místo na oddílu Microsoft Windows®"
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Na kterém oddílu chcete změnit velikost?"
-#: fs/partitioning_wizard.pm:143
-#, c-format
-msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
-msgstr ""
-"Změnu velikost FAT není možné provést, \n"
-"vyskytla se následující chyba: %s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "Počítám volné místo na oddílu Microsoft Windows®"
-
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
"Your Microsoft Windows® partition is too fragmented. Please reboot your "
"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+"the %s installation."
msgstr ""
-"Váš diskový oddíl s Microsoft Windows® je příliš fragmentovaný. Restartujte "
-"počítač do systému Microsoft Windows®, použijte program 'defrag' a potom "
-"spusťte opět instalaci Mandriva Linuxu."
+"Váš oddíl s Microsoft Windows® je příliš fragmentován. Prosím, restartujte "
+"váš počítač do Microsoft Windows® a použijte nástroj \"defrag\". Poté "
+"spusťte znovu instalaci %s."
+
+#: fs/partitioning_wizard.pm:215
+#, c-format
+msgid "Failed to find the partition to resize (%d choices)"
+msgstr "Nepodařilo se najít oddíl pro změnu velikosti (%d možnosti)"
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2663,8 +2751,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2677,7 +2765,7 @@ msgstr ""
"DrakX nyní musí zmenšit oddíl s Microsoft Windows®.\n"
"\n"
"\n"
-"Buďte opatrní: tato operace je nebezpečná. Pokud jste tak již neučinili, "
+"Buďte opatrní: Tato operace je nebezpečná. Pokud jste tak již neučinili, "
"měli byste nejprve ukončit instalaci, spustit \"chkdsk c:\" z příkazové "
"řádky (spuštění programu \"scandisk\" nestačí, použijte příkaz \"chkdsk\"!), "
"popřípadě i defrag a potom instalaci spustit znovu. Také byste si měli data "
@@ -2687,86 +2775,79 @@ msgstr ""
"Až si budete jistí, že chcete pokračovat, stiskněte %s."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Další"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Partitionning"
msgstr "Rozdělení disku"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr ""
"Jakou velikost oddílu chcete nechat pro Microsoft Windows® na diskovém "
"oddílu %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Velikost"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
-msgstr "Měním velikost oddílu s Microsoft Windows®"
+msgstr "Mění se velikost oddílu s Microsoft Windows®"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "Změna FAT oddílu neuspěla: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"Pro zachování integrity po provedené změně velikosti oddílu(ů) bude při\n"
-"dalším spuštění systému Windows provedena kontrola souborového systému."
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr ""
"Nejsou zde žádné FAT oddíly, které by bylo možné změnit (nebo není dostatek "
"místa)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Odstranit Microsoft Windows®"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Erase and use entire disk"
msgstr "Smazat a použít celý disk"
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
-msgstr "Máte více než jeden pevný disk, na který chcete instalovat Linux?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr "Máte více než jeden pevný disk. Který chcete k instalaci použít?"
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
-msgstr "VŠECHNY diskové oddíly a data na disku %s budou zrušeny"
+msgstr "VŠECHNY diskové oddíly a data na disku %s budou ztraceny"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "Vlastní rozdělení disku"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Použít fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2775,55 +2856,70 @@ msgstr ""
"Nyní můžete rozdělit váš pevný disk %s.\n"
"Až skončíte, nezapomeňte uložit změny pomocí 'w'"
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
#, c-format
-msgid "I can not find any room for installing"
-msgstr "Nemůžu najít žádné volné místo pro instalaci"
+msgid "Ext2/3/4"
+msgstr "Ext2/3/4"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
+#, c-format
+msgid "I cannot find any room for installing"
+msgstr "Nebylo nalezeno dostatek místa pro instalaci"
+
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "Průvodce oddíly DrakX našel následující řešení rozdělení disku:"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr "Zde je obsah vašeho disku "
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Vytváření diskových oddílů selhalo: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
+#, c-format
+msgid "You cannot use JFS for partitions smaller than 16MB"
+msgstr "Pro oddíl menší než 16MB nelze použít JFS"
+
+#: fs/type.pm:432
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
-msgstr "Nemůžete použít JFS pro oddíl menší než 16MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
+msgstr "Pro oddíl menší než 32MB nelze použít ReiserFS"
-#: fs/type.pm:389
+#: fs/type.pm:433
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
-msgstr "Nemůžete použít ReiserFS pro oddíl menší než 32MB"
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr "Pro oddíly menší než 256MB nelze použít Btrfs"
-#: fsedit.pm:24
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "jednoduchý"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "s /usr"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "server"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
-msgstr "Na discích %s byl nalezen softwarový RAID řízený BIOSem. Aktivovat?"
+msgstr "Na discích %s byl nalezen softwarový RAID řízený BIOSem. Zapnout?"
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2831,87 +2927,65 @@ msgid ""
"\n"
"Do you agree to lose all the partitions?\n"
msgstr ""
-"Nemůžu přečíst vaši tabulku oddílů zařízení %s, je pro mě příliš porušená :"
-"(\n"
-"Můžu se pokusit pokračovat v čištění špatných oddílů (VŠECHNA\n"
-"DATA budou ztracena!). Jiná možnost je zakázat DrakX měnit tabulku\n"
-"oddílů (chyba je %s)\n"
+"Nelze načíst tabulku rozdělení disku %s, neboť je příliš \n"
+"poškozena :-( Tuto tabulku lze smazat (přijdete o VŠECHNA DATA!)\n"
+"a vytvořit ji znovu nebo ji nechat tak jak je a využít stávající\n"
+"rozložení disku (chyba %s)\n"
"\n"
-"Souhlasíte s tím, že přijdete o všechny oddíly?\n"
+"Chcete přijít o všechny současně existující oddíly?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
-msgstr "Přípojné body (mount points) musí začínat '/'"
+msgstr "Přípojné body musí začínat '/'"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "Název přípojného bodu může obsahovat pouze písmena a číslice"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Oddíl s přípojným bodem %s už existuje\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
-msgstr ""
-"Zvolili jste softwarový RAID oddíl jako kořenový oddíl (/).\n"
-"S tím se není schopný vypořádat žádný zaváděcí program bez použití oddílu\n"
-"/boot. Ujistěte se prosím, že jste tento oddíl přidali"
-
-#: fsedit.pm:437
-#, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"Pro přípojný bod %s nemůžete použít Logický svazek LVM, jelikož spadá do "
-"více fyzických svazků"
+"Jako kořenový oddíl (/) jste zvolili šifrovaný oddíl.\n"
+"Žádný zavaděč neumí zavést systém, pakliže nemáte oddělený oddíl\n"
+"/boot. Prosím, ujistěte se, že máte oddělený oddíl /boot."
-#: fsedit.pm:439
+#: fsedit.pm:478 fsedit.pm:489
#, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
+msgid "You cannot use an encrypted filesystem for mount point %s"
msgstr ""
-"Vybrali jste Logický svazek LVM jako kořenový adresář (/).\n"
-"Zavaděč s takovým svazkem neumí pracovat, pokud zasahuje do více fyzických "
-"svazků.\n"
-"Měli byste vytvořit nejprve oddíl /boot"
+"Pro přípojný bod (adresář připojení) %s nemůžete použít šifrovaný oddíl"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Tento adresář musí kromě kořenového souborového systému zůstat"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
"Pro tento přípojný bod potřebujete opravdový souborový systém (ext2/ext3, "
"reiserFS, XFS nebo JFS)\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr "Nelze použít kryptovaný souborový systém na připojený bod %s"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
msgstr "Pro automatické rozdělení disku není dostatek místa"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "Nic nedělat"
@@ -2921,283 +2995,331 @@ msgstr "Nic nedělat"
msgid "SATA controllers"
msgstr "SATA řadiče"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "RAID řadiče"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "(E)IDE/ATA řadiče"
-#: harddrake/data.pm:92
+#: harddrake/data.pm:93
#, c-format
msgid "Card readers"
msgstr "Čtečky karet"
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Firewire řadiče"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "PCMCIA řadiče"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "SCSI řadiče"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "USB řadiče"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "USB porty"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "SMBus řadiče"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Systémové řadiče a můstky"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Disketa"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Pevný disk"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr "Úložná zařízení USB"
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "CDROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "CD/DVD vypalovačky"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "Páska"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "AGP řadiče"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Grafická karta"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr "DVB karta"
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "TV karta"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "Další multimediální zařízení"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "Zvuková karta"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "Webová kamera"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "Procesory"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "Adaptéry ISDN"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr "Zvuková zařízení USB"
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr "Rádio karty"
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr "Síťové karty ATM"
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr "Síťové karty WAN"
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr "Zařízení Bluetooth"
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "Ethernetová karta"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Modem"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "Adaptéry ADSL"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Paměť"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Tiskárna"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr "Game port řadiče"
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Joystick"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Klávesnice"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr "Tablet a dotyková obrazovka"
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Myš"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr "Biometrie"
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "UPS"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Skener"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Neznámý/Jiný"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "cpu #"
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Čekejte prosím... Aktivuji konfiguraci"
+msgid "Couldn't install the required packages"
+msgstr "Nepodařilo se nainstalovat požadované balíčky"
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Enable PulseAudio"
-msgstr "Povolit PulseAudio"
+msgid "Please check the repositories are correctly configured"
+msgstr "Zkontrolujte, zda jsou repozitáře správně nastaveny."
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:462
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
-msgstr "Povolit zvuk 5.1 s PulseAudio"
+msgid "No known driver"
+msgstr "Nebyl rozpoznán žádný ovladač"
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:463
#, c-format
-msgid "Enable user switching for audio applications"
-msgstr "Povolit přepínání uživatelů u zvukových aplikací"
+msgid "There's no known driver for your sound card (%s)"
+msgstr "Pro vaši zvukovou kartu (%s) není žádný známý ovladač"
+
+#: harddrake/sound.pm:517
+#, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "Aby se změny projevily, je nutné restartovat počítač"
+
+#: harddrake/sound.pm:522
+#, c-format
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
+"Upozornění: Pulseaudio i Pipewire jsou nainstalovány a mohou být ve "
+"vzájemném konfliktu. Opravte, prosím, své nastavení volbou jednoho"
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:527
#, c-format
-msgid "Use Glitch-Free mode"
-msgstr "Použít režim bez cvakání"
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
+"Varování: task-pipewire není dostupný v žádném zdroji médií, takže bylo "
+"možné nastavit pouze pulseaudio. Opravte, prosím, nastavení repozitáře."
+
+#: harddrake/sound.pm:541
+#, c-format
+msgid "Select the sound server"
+msgstr "Vyberte zvukový server"
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:551
+#, c-format
+msgid "PulseAudio"
+msgstr "PulseAudio"
+
+#: harddrake/sound.pm:552
+#, c-format
+msgid "PulseAudio with Glitch-Free mode"
+msgstr "PulseAudio s Glitch-Free"
+
+#: harddrake/sound.pm:553
+#, c-format
+msgid "PipeWire with WirePlumber"
+msgstr "PipeWire s WirePlumber"
+
+#: harddrake/sound.pm:554
+#, c-format
+msgid "PipeWire with PipeWire Media Session"
+msgstr "PipeWire s PipeWire Media Session"
+
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
-msgstr "Vrátit mixér zvuku na výchozí hodnoty"
+msgstr "Vrátit směšovač zvuku na výchozí hodnoty"
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr "Řešení problémů"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr "Vaše karta používá ovladač <b>\"%s\"</b>\n"
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "Bez alternativního ovladače"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
@@ -3206,189 +3328,131 @@ msgstr ""
"Pro vaši zvukovou kartu (%s), která nyní používá ovladač \"%s\", není žádný "
"známý OSS/ALSA alternativní ovladač."
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Nastavení zvuku"
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Zde si pro vaši zvukovou (%s) kartu můžete vybrat alternativní ovladač (buď "
-"OSS nebo ALSA)"
+msgid "Sound troubleshooting"
+msgstr "Řešení problémů se zvukem"
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
"\n"
"\n"
-"Vaše karta nyní používá ovladač %s\"%s\" (výchozí ovladač pro vaši kartu je "
-"\"%s\")"
-
-#: harddrake/sound.pm:414
-#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"OSS (Open Sound System) bylo první API pro zvuk. Toto API je nezávislé na OS "
-"(je dostupné na více unixových systémech), ale má pouze základní funkce a "
-"omezené API.\n"
-"A co více, všechny OSS ovladače \"vynalézají znovu kolo\".\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) je modulární architektura, která "
-"která podporuje daleko více ISA, USB a PCI karet.\n"
"\n"
-"Také poskytuje daleko lepší API než OSS.\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"Pokud chcete použít ovladače ALSA, můžete použít dva režimy:\n"
-"- starší režim kompatibility s OSS API\n"
-"- nové ALSA API, které poskytuje daleko více možností, ale vyžaduje použít "
-"knihovnu ALSA.\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Ovladač:"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"Starší ovladač \"%s\" je na černé listině.\n"
"\n"
-"Bylo u něj zjištěno, že při odebrání způsobí pád jádra.\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"Při dalším spuštění bude použit pouze nový ovladač \"%s\" "
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "Není dostupný žádný open source ovladač"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"Pro vaši zvukovou kartu (%s) není žádný vhodný volně použitelný ovladač, ale "
-"existuje alternativní proprietární ovladač na \"%s\"."
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "Nebyl rozpoznán žádný ovladač"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "Pro vaši zvukovou kartu (%s) není žádný známý ovladač"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Řešení problémů se zvukem"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
"\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"Klasický postup při řešení problémů se zvukem je pomocí těchto příkazů:\n"
+"Níže jsou uvedeny některé základní tipy, které vám pomohou v odladění "
+"problémů se zvukem, ale přesnější a aktuální tipy a triky naleznete na "
+"adrese:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" vám řekne, jaký ovladač je výchozí pro\n"
-"danou zvukovou kartu\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" vám řekne, který ovladač se nyní\n"
-"používá\n"
"\n"
-"- \"/sbin/lsmod\" provede kontrolu toho, zda modul (ovladač) je nahrán nebo "
-"ne\n"
+"- Obecné doporučení: Povolte PulseAudio. Pokud jste se rozhodli, že nebude "
+"používat PulseAudio, přesto důrazně doporučujeme, abyste jej povolit. U "
+"naprosté většiny případů použití jako desktopu, je PulseAudio doporučováno a "
+"podporováno jako nejlepší volba.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" a \"/sbin/chkconfig --list alsa\" vám "
-"sdělí\n"
-"zda je pro initlevel nastaveny služby alsa a sound\n"
"\n"
-"- \"aumix -q\" vám řekne, zda je zvuk ztlumen nebo ne\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" vám řekne, který program používá zvukovou "
-"kartu.\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "Umožnit výběr ovladače"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Výběr libovolného ovladače"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) a "
+"\"pavucontrol\" (obecně) spustí grafickou aplikaci, která vám umožní "
+"zobrazit vaše zvukové zařízení a nastavit úroveň hlasitosti\n"
+"\n"
+"\n"
+"- \"ps aux | grep pulseaudio\" zkontroluje, že PulseAudio běží.\n"
+"\n"
+"\n"
+"- \"pactl stat\" zkontroluje, zda je možné se řádně připojit k PulseAudio "
+"démonu.\n"
+"\n"
+"\n"
+"- \"pactl list sink-inputs\" vám řekne, které programy v současné době "
+"přehrávají zvuk pomocí PulseAudio.\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" vám řekne aktuální stav OSS proxy "
+"démonu. Ten se používá k povolení zvuku ze starších aplikací, které "
+"používají zvukové API OSS. Pokud budete potřebovat tuto funkci, je třeba "
+"nainstalovat \"ossp\" balíček.\n"
+"\n"
+"\n"
+"- \"pacmd ls\" vám řekne hodně ladících informací o aktuálním stavu vašeho "
+"zvuku.\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" vám řekne, který nízkoúrovňový ovladač "
+"vaše karta používá ve výchozím nastavení.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
-msgstr ""
-"Pokud skutečně víte, který ovladač je ten správný pro vaši kartu,\n"
-"můžete ho vybrat ze seznamu.\n"
"\n"
-"Aktuální ovladač pro vaši zvukovou kartu \"%s\" je \"%s\"."
+"- \"/usr/sbin/lsmod | grep snd\" vám umožní zjistit, které související "
+"zvukové moduly jádra (ovladače) jsou načteny.\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" vám poskytne směšovač v textovém režimu pro "
+"nízkoúrovňové ovládání ALSA první zvukové karty\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" vám řekne, které programy v "
+"současné době využívají zvukovou kartu přímo (obvykle by to mělo zobrazit "
+"jen PulseAudio)\n"
#: harddrake/v4l.pm:12
#, c-format
@@ -3416,12 +3480,12 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
-"Modul bttv jádra operačního systému GNU/Linux nalezne správné parametry "
-"automaticky pro většinu moderních TV karet.\n"
-"Je-li vaše karta špatně detekována, lze zde ručně nastavit správný typ karty "
-"a tuneru. Pokud je to potřeba, vyberte také parametry vaší TV karty."
+"Pro většinu moderních televizních karet si jádro samo zjistí parametry. \n"
+"Pokud jsou parametry nastaveny nebo zjištěny špatně, můžete si zvolit "
+"vlastní typ tuneru nebo typ karty. Zvolte, prosím, parametry karty dle "
+"potřeby."
#: harddrake/v4l.pm:478
#, c-format
@@ -3433,70 +3497,73 @@ msgstr "Model karty:"
msgid "Tuner type:"
msgstr "Typ tuneru:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "Ok"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Ano"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "Ne"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Vyberte soubor"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Přidat"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Změnit"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Ukončit"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Zpět"
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "Nezvolen žádný soubor"
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "Vybrali jste adresář, ne soubor"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "Adresář neexistuje"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "Soubor neexistuje"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr "Pozor, jsou povolena velká písmena"
@@ -3557,7 +3624,7 @@ msgid ""
"or just hit Enter to proceed.\n"
"Your choice? "
msgstr ""
-"Vyberte si prosím první číslo z výběru, které chcete editovat,\n"
+"Vyberte si, prosím, první číslo z výběru, které chcete upravovat,\n"
"nebo stiskněte Enter pro pokračování.\n"
"Vaše volba? "
@@ -3567,7 +3634,7 @@ msgid ""
"=> Notice, a label changed:\n"
"%s"
msgstr ""
-"=> Oznamuji změnu návěští:\n"
+"=> Oznamuje se změna návěští:\n"
"%s"
#: interactive/stdio.pm:151
@@ -3578,1248 +3645,1269 @@ msgstr "Znovu odeslat"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Andorra"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "Spojené Arabské Emiráty"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Afghánistán"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Antigua a Barbuda"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Anguilla"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Albánie"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Arménie"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Nizozemské Antily"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Angola"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Antarktida"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Argentina"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "Americká Samoa"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Rakousko"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Austrálie"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Aruba"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Ázerbajdžán"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Bosna a Hercegovina"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Barbados"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Bangladéš"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Belgie"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Burkina Faso"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "Bulharsko"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Bahrajn"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Burundi"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Benin"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Bermudy"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Brunei Darussalam"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Bolívie"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Brazílie"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Bahamy"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Bhútán"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
-msgstr "Bouvet Island"
+msgstr "Bouvetův ostrov"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Botswana"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "Bělorusko"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Belize"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Kanada"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Kokosové ostrovy (Keeling Islands)"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Kongo (Kinshasa)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
-msgstr "Centrální africká republika"
+msgstr "Středoafrická republika"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Kongo (Brazzaville)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Švýcarsko"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
-msgstr "Cote d'Ivoire"
+msgstr "Pobřeží slonoviny"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Cookovy ostrovy"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Chile"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Kamerun"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "Čína"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Kolumbie"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Costa Rica"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Srbsko & Montenegro"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Kuba"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Cape Verde"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Vánoční ostrov"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Kypr"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Česká republika"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Německo"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Džibuti"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Dánsko"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Dominica"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Dominikánská republika"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Alžírsko"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Ekvádor"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Estonsko"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Egypt"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Západní Sahara"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Eritrea"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Španělsko"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Etiopie"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Finsko"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Fidži"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
-msgstr "Falklandy (Malvinas)"
+msgstr "Falklandy (Malvíny)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Mikronésie"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
-msgstr "Faroe Islands"
+msgstr "Faerské ostrovy"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "Francie"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Gabon"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Velká Británie"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Grenada"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
-msgstr "Georgie"
+msgstr "Gruzie"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Francouzská Guinea"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Ghana"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Gibraltar"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Grónsko"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Gambie"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Guinea"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Guadeloupe"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Rovníková Guinea"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Řecko"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "Jižní Georgie a ostrovy South Sandwich"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Guatemala"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Guam"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Guinea-Bissau"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Guyana"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Čína (Hong Kong)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Heard a McDonaldovy ostrovy"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Honduras"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Chorvatsko"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Haiti"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Maďarsko"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "Indonésie"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Irsko"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Izrael"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Indie"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "Britské teritorium Indického moře"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Irák"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Írán"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Island"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "Itálie"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Jamajka"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "Jordán"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Japonsko"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Keňa"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Kyrgyzstán"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Kambodža"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Kiribati"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Comoros"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "Saint Kitts a Nevis"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Korea (Severní)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Korea"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Kuvajt"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Kajmanské ostrovy"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Kazachstán"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Laos"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Libanon"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "Svatá Lucie"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Lichtenštejnsko"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Srí Lanka"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Libérie"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Lesotho"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Litva"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Lucembursko"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Lotyšsko"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Libye"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Maroko"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Monako"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Moldava"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Madagaskar"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Marshall Islands"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Makedonie"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Mali"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Myanmar"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Mongolsko"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Northern Mariana Islands"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Martinique"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Mauretánie"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Montserrat"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Malta"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Mauritius"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Maledivy"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Malawi"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Mexiko"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Malajsie"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Mosambik"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Namibie"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Nová Kaledonie"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Niger"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Norfolské ostrovy"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Nigérie"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Nikaragua"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Nizozemí"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Norsko"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Nepál"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Nauru"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Niue"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Nový Zéland"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Omán"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Panama"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Peru"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "Francouzská Polynésie"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Papua Nová Guinea"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Filipíny"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Pákistán"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Polsko"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Saint Pierre a Miquelon"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Pitcairn"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Puerto Rico"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Palestina"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Portugalsko"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Paraguay"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Palau"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Katar"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
-msgstr "Reunion"
+msgstr "Réunion"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Rumunsko"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Rusko"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Rwanda"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Saudská Arábie"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
-msgstr "Solomon Islands"
+msgstr "Šalamounovy ostrovy"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
-msgstr "Seychely"
+msgstr "Seychelská republika"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Sudán"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "Švédsko"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Singapur"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Svatá Helena"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Slovinsko"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "Svalbard a ostrovy Jan Mayen"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Slovensko"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "Sierra Leone"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "San Marino"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Senegal"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Somálsko"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Surinam"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "Sao Tome a Principe"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "El Salvador"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Sýrie"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Svazijsko"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Turks a Caicos Islands"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Čad"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "Francouzská jižní teritoria"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Togo"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Thajsko"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
-msgstr "Tadžikistán"
+msgstr "Tádžikistán"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Tokelau"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Východní Timor"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Turkmenistán"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Tunisko"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Tonga"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Turecko"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Trinidad a Tobago"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Tuvalu"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
-msgstr "Taiwan"
+msgstr "Tchaj-wan"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Tanzanie"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Ukrajina"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Uganda"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "Spojené státy (Minor Outlying Islands)"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "Spojené státy americké"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Uruguay"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Uzbekistán"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Vatikán"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "Saint Vincent a Grenadiny"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Venezuela"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Panenské ostrovy (britské)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "Panenské ostrovy (U.S.)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Vietnam"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Vanuatu"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Wallis a Futuna"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Samoa"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Jemen"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Mayotte"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "Jižní Afrika"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Zambie"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Zimbabwe"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "Vítá vás %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr "Přesunutí používaných fyzických oblastí na jiné svazky selhalo"
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr "Fyzický svazek %s se stále používá"
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "Odeberte nejdříve logické disky\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr "Zavaděč neumí pracovat s adresářem /boot na více fyzických svazcích"
+#. -PO: Only write something if needed:
#: messages.pm:11
#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+"Toto je pouze překlad oficiálních podmínek! Oficiální verze je v angličtině."
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Úvodem"
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+"Operační systém a jeho jednotlivé části dostupné v distribuci Mageia jsou "
+"pro potřeby této smlouvy označeny jako \"Software\". Software zahrnuje též "
+"soustavu programů, pravidel, řešení a dokumentace, která tvoří příslušenství "
+"operačního systému a jednotlivé komponenty distribuce Mageia, jakož i "
+"veškeré aplikace šířené spolu s touto distribucí poskytnuté třetími subjekty "
+"a držiteli autorských práv."
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr "1. Licenční smlouva"
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4833,16 +4921,35 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+"Prosím přečtěte si pozorně tento dokument. Tento dokument tvoří licenční "
+"smlouvu mezi Vámi a sdružením Mageia a týká se Softwaru.\n"
+"Instalací, vytvářením kopií a/nebo jakýmkoliv užíváním Software vyjadřujete "
+"svůj výslovný souhlas s touto smlouvou a jejími jednotlivými ustanoveními a "
+"zavazujete se závazky a povinnosti touto smlouvou uložené plnit.\n"
+"Pokud nesouhlasíte byť i s částí této smlouvy, smlouva tím není uzavřena a "
+"Vy nemáte žádná práva k Softwaru, zejména užívat jej, šířit jej nebo jej "
+"instalovat.\n"
+"Jakýkoliv pokus instalovat, šířit nebo užívat Software způsobem, který je v "
+"rozporu s touto smlouvou vede k automatickému odstoupení od smlouvy ex tunc "
+"ze strany sdružení Mageia. V případě, že dojde k odstoupení od smlouvy, "
+"musíte okamžitě přestat užívat Software a zničit všechny jeho kopie."
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr "2. Omezení odpovědnosti"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4850,15 +4957,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4867,51 +4974,89 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
+"you."
+msgstr ""
+"Software je poskytován tak jak stojí a leží, bez jakékoliv záruky. Ani "
+"sdružení Mageia, ani žádný další subjekt, dodavatel či držitel autorských "
+"práv neodpovídá za přímou či nepřímou škodu, která může vlivem užívání či "
+"držby Software vzniknout. Strany sjednávají, že maximální výše předvídatelné "
+"škody, zahrnující též případné náklady řízení a veškeré další náklady "
+"spojené se soudním řízením, která může užíváním či držbou Software vzniknout "
+"je 1,-- Kč. Toto omezení se vztahuje též na kryptografické knihovny obsažené "
+"v Software."
+
+#: messages.pm:68
+#, fuzzy, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr "3. Licence GPL a podobné"
+
+#: messages.pm:70
+#, fuzzy, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. %s\n"
+"entities.\n"
"Most of these licenses allow you to use, duplicate, adapt or redistribute "
"the components which \n"
"they cover. Please read carefully the terms and conditions of the license "
"agreement for each component \n"
"before using any component. Any question on a component license should be "
"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+"Tento Software se skládá z mnoha komponentů vytvořených různými osobami či "
+"entitami.\n"
+"Většina licencí Vám umožňuje jednotlivé součásti užívat, šířit, měnit a "
+"takto změněné části šířit dále. Prosíme, přečtěte si řádně licence k "
+"jednotlivým částem software, abyste se seznámili se svými právy a to ještě "
+"před tím, než je začnete užívat. Máte-li k těmto licencím jakékoliv dotazy, "
+"ptejte se přímo autorů či poskytovatelů konkrétní součásti Software a ne "
+"sdružení Mageia.\n"
+"Veškeré programové vybavení vytvořené sdružením Mageia je vydáno pod licencí "
+"GPL. Dokumentace sepsaná sdružením Mageia je vydávána pod licencí \"%s\"."
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr "4. Práva duševního vlastnictví"
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+"Veškerá práva duševního vlastnictví, zejména práva autorská, náleží autorům "
+"konkrétních součástí Software a jsou chráněna zejm. Autorským zákonem v "
+"platném znění. Sdružení Mageia jakož i jednotliví autoři si vyhrazují právo "
+"kdykoliv pozměnit či upravit Software či jeho součásti bez omezení. \n"
+"\"Mageia\" a její loga jsou ochrannými známkami sdružení %s."
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr "5. Rozhodné právo"
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4923,219 +5068,29 @@ msgid ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
+"For any question on this document, please contact Mageia."
msgstr ""
-"Úvod\n"
-"\n"
-"Operační systém a různé části dostupné v distribuci Mandriva Linux\n"
-"jsou nazývány \"Softwarové produkty\" (\"Software Products\"). Softwarové\n"
-"produkty zahrnují, ale nejsou omezeny, na programy, metody, pravidla\n"
-"a dokumentaci, vztahující se k operačnímu systému a dalším komponentám\n"
-"distribuce Mandriva Linux.\n"
-"\n"
-"(Dále uvedený text je z právních důvodů ponechán v angličtině)\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
-"Please read this document carefully. This document is a license agreement "
-"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
-"By installing, duplicating or using any of the Software Products in any "
-"manner, you explicitly \n"
-"accept and fully agree to conform to the terms and conditions of this "
-"License. \n"
-"If you disagree with any portion of the License, you are not allowed to "
-"install, duplicate or use \n"
-"the Software Products. \n"
-"Any attempt to install, duplicate or use the Software Products in a manner "
-"which does not comply \n"
-"with the terms and conditions of this License is void and will terminate "
-"your rights under this \n"
-"License. Upon termination of the License, you must immediately destroy all "
-"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
-"The Software Products and attached documentation are provided \"as is\", "
-"with no warranty, to the \n"
-"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
-"permitted by law, be liable for any special, incidental, direct or indirect "
-"damages whatsoever \n"
-"(including without limitation damages for loss of business, interruption of "
-"business, financial \n"
-"loss, legal fees and penalties resulting from a court judgment, or any other "
-"consequential loss) \n"
-"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
-"licensors or suppliers have been advised of the possibility or occurrence of "
-"such damages.\n"
+"Pokud se jakákoliv část této smlouvy stane neplatnou či neúčinnou z "
+"rozhodnutí soudu, pak zbytek smlouvy zůstává v platnosti. Ve zbytku "
+"zůstáváte vázáni touto smlouvou. \n"
+"Strany sjednávají, že se tato smlouva řídí právem Francouzské republiky. \n"
+"Veškeré spory vzniklé z této smlouvy nebo v souvislosti s ní budou řešeny "
+"dohodou stran. Nepovede-li dohoda k řešení, dohodly se strany na prorogaci k "
+"soudům v Paříži, Francie.\n"
"\n"
-"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
-"COUNTRIES\n"
-"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
-"distributors will, in any circumstances, be liable for any special, "
-"incidental, direct or indirect \n"
-"damages whatsoever (including without limitation damages for loss of "
-"business, interruption of \n"
-"business, financial loss, legal fees and penalties resulting from a court "
-"judgment, or any \n"
-"other consequential loss) arising out of the possession and use of software "
-"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
-"prohibited or restricted in some countries by local laws.\n"
-"This limited liability applies to, but is not restricted to, the strong "
-"cryptography components \n"
-"included in the Software Products.\n"
-"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
-"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
-"The Software Products consist of components created by different persons or "
-"entities. %s\n"
-"Most of these licenses allow you to use, duplicate, adapt or redistribute "
-"the components which \n"
-"they cover. Please read carefully the terms and conditions of the license "
-"agreement for each component \n"
-"before using any component. Any question on a component license should be "
-"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
-"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
-"All rights to the components of the Software Products belong to their "
-"respective authors and are \n"
-"protected by intellectual property and copyright laws applicable to software "
-"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
-"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
-"If any portion of this agreement is held void, illegal or inapplicable by a "
-"court judgment, this \n"
-"portion is excluded from this contract. You remain bound by the other "
-"applicable sections of the \n"
-"agreement.\n"
-"The terms and conditions of this License are governed by the Laws of "
-"France.\n"
-"All disputes on the terms of this license will preferably be settled out of "
-"court. As a last \n"
-"resort, the dispute will be referred to the appropriate Courts of Law of "
-"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
+"Máte-li k tomuto dokumentu jakékoliv dotazy, kontaktujte sdružení Mageia."
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-
-#: messages.pm:112
-#, c-format
+#: messages.pm:102
+#, fuzzy, c-format
msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
"Varování: Svobodný Software nemusí být vždy nezávislý na patentech\n"
"a některý Svobodný Software může být ve vaší zemi chráněn patentem.\n"
@@ -5144,133 +5099,35 @@ msgstr ""
"nejste jisti, zda se na vás nevztahuje některý patent, prostudujte si\n"
"vaše místně příslušné právní normy."
-#: messages.pm:120
-#, c-format
-msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
-msgstr ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:112
#, c-format
msgid ""
"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
+"Remove the installation medium and press Enter to reboot."
+msgstr ""
+"Blahopřejeme, instalace byla dokončena. \n"
+"Vyjměte instalační médium a zmáčknutím klávesy Enter restartujte. "
+
+#: messages.pm:114
+#, c-format
+msgid ""
+"For information on fixes which are available for this release of Mageia,\n"
"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"%s"
msgstr ""
-"Gratulujeme vám, instalace je dokončena.\n"
-"Vyjměte zaváděcí média a stiskněte Return pro restart.\n"
-"\n"
-"\n"
-"Informace o opravách pro tuto verzi systému Mandriva Linux lze\n"
-"nalézt na stránce Errata dostupné na:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Informace o nastavení systému po instalaci jsou dostupné\n"
-"v příslušné kapitole oficiální uživatelské příručky pro Mandriva Linux."
+"Pro informace o opravách a vylepšeních dostupných pro toto \n"
+"vydání Mageie si přečtěte stránky Errata zde:\n"
+"%s"
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
+"Po restartu a přihlášení do Mageia, uvidíte uvítací obrazovku Mageia.\n"
+"Je plná velmi užitečných informací a odkazů."
#: modules/interactive.pm:19
#, c-format
@@ -5290,7 +5147,7 @@ msgstr "Zde můžete nastavit každý z parametrů modulu."
#: modules/interactive.pm:64
#, c-format
msgid "Found %s interfaces"
-msgstr "Našel jsem %s rozhraní"
+msgstr "Nalezeno %s rozhraní"
#: modules/interactive.pm:65
#, c-format
@@ -5310,29 +5167,29 @@ msgstr "Ukázat informace o hardware"
#: modules/interactive.pm:83
#, c-format
msgid "Installing driver for USB controller"
-msgstr "Instaluji ovladač pro řadič USB"
+msgstr "Instaluje se ovladač pro řadič USB"
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "Instaluji ovladač pro řadič Firewire %s"
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "Instaluje se ovladač pro řadič firewire \"%s\""
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "Instaluji ovladač pro řadič pevného disku %s"
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "Instaluje se ovladač pro řadič pevného disku \"%s\""
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "Instaluji ovladač pro síťovou kartu (Ethernet) %s"
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "Instaluje se ovladač pro síťovou kartu (ethernet) \"%s\""
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
#: modules/interactive.pm:97
#, c-format
msgid "Installing driver for %s card %s"
-msgstr "Instaluji ovladač pro %s kartu %s"
+msgstr "Instaluje se ovladač pro %s kartu %s"
#: modules/interactive.pm:100
#, c-format
@@ -5409,70 +5266,72 @@ msgstr ""
"Spuštění modulu %s selhalo.\n"
"Chcete to zkusit s jinými parametry?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr "Opravdu chcete skončit?"
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
-msgstr ""
+msgstr "Heslo je jednoduché na uhodnutí"
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
+msgid "Password should be resistant to basic attacks"
msgstr ""
+"Heslo by mělo odolat alespoň těm nejzákladnějším kryptografickým útokům"
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Základna pro heslo"
+msgstr "Heslo se zdá být bezpečné"
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "chyba připojování: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Rozšířené diskové oddíly nejsou na tomto systému podporovány"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
-"Ve tabulce diskových oddílů je mezera, ale nemohu ji použít.\n"
-"Jediné řešení je přesunout primární oddíly tak, abyste měli mezeru vedle\n"
-"rozšířených oddílů."
+"V tabulce oddílů je mezera, kterou však nemohu využít.\n"
+"Jediný způsob, jak to vyřešit je přesunout primární oddíly tak, aby mezera "
+"byla vedle rozšířených oddílů."
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
msgstr ""
-"S pevným diskem se stalo něco špatného. \n"
-"Test na integritu dat selhal. \n"
-"To znamená, že zápis na tento disk může skončit nepředvídaně a poškodit data."
+"S vaším pevným diskem se děje něco nepěkného.\n"
+"Zkouška celistvosti dat selhala.\n"
+"To znamená, že cokoliv na disk zapíšete se může proměnit v náhodné a "
+"nečitelné fragmenty dat."
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr "Odstranění nepoužívaných balíčků"
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
-msgstr "Hledám nepoužívané balíčky pro hardware…"
+msgstr "Hledají se nepoužívané balíčky pro hardware…"
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
-msgstr "Hledám nepoužívané balíčky s lokalizacemi…"
+msgstr "Hledají se nepoužívané balíčky s lokalizacemi…"
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
@@ -5481,62 +5340,62 @@ msgstr ""
"Byly nalezeny některé balíčky, které nejsou potřeba pro vaše nastavení "
"systému."
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr "Následující balíčky budou odebrány, pokud nezvolíte jinak:"
-#: pkgs.pm:269 pkgs.pm:270
+#: pkgs.pm:289 pkgs.pm:290
#, c-format
msgid "Unused hardware support"
msgstr "Podpora nepoužívaného hardware"
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr "Nepoužívané lokalizace"
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
-msgstr "Nemůžu přidat oddíl do _naformátovaného_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
+msgstr "Nelze přidat oddíl do z_formátovaného RAIDu %s"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "Není dostatek oddílů pro RAID úrovně %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "Nelze vytvořit adresář /usr/share/sane/firmware!"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "Nelze vytvořit odkaz /usr/share/sane/%s!"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr "Nelze zkopírovat soubor s firmware %s do /usr/share/sane/firmware!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "Nelze nastavit práva na soubor s firmware %s!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Scannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr "Nelze nainstalovat balíčky potřebné pro sdílené skeneru(ů)."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr "Váš skener(y) nebude přístupný jiným uživatelům než root."
@@ -5654,15 +5513,15 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
"Autorizace:\n"
"\n"
"- pokud je nastaveno \"VŠECHNY\", jsou všechny služby kontrolovány pomocí "
"tcp_wrapper (více hosts.deny(5)) .\n"
"\n"
-"- pokud je nastaveno \"Lokální\", autorizuje pouze lokální, \n"
+"- pokud je nastaveno \"Místní\", autorizuje pouze lokální, \n"
"\n"
"- pokud je nastaveno \"Žádné\", neautorizuje žádné.\n"
"\n"
@@ -5756,13 +5615,13 @@ msgstr "Použije heslo pro autentizaci uživatelů."
#: security/help.pm:94
#, c-format
-msgid "Activate ethernet cards promiscuity check."
-msgstr "Povolit kontrolu na nastavení promiskuitního režimu síťového rozhraní."
+msgid "Activate Ethernet cards promiscuity check."
+msgstr "Zapnout kontrolu promiskuity síťové karty."
#: security/help.pm:96
#, c-format
msgid "Activate daily security check."
-msgstr "Aktivovat provádění denních bezpečnostních kontrol."
+msgstr "Zapnout provádění denních bezpečnostních kontrol."
#: security/help.pm:98
#, c-format
@@ -5791,8 +5650,7 @@ msgid ""
"Set the password minimum length and minimum number of digit and minimum "
"number of capitalized letters."
msgstr ""
-"Nastaví minimální délku hesla, minimální počet číslic a velkých písmen v "
-"hesle."
+"Nastaví nejmenší délku hesla, nejmenší počet číslic a velkých písmen v hesle."
#: security/help.pm:108
#, c-format
@@ -5827,18 +5685,20 @@ msgstr ""
#, c-format
msgid "if set to yes, check permissions of files in the users' home."
msgstr ""
-"pokud je nastaveno, kontrolu práva souborů v domovském adresáři uživatele"
+"pokud je nastaveno, kontrolují se práva souborů v domovském adresáři "
+"uživatele"
#: security/help.pm:118
#, c-format
msgid "if set to yes, check if the network devices are in promiscuous mode."
msgstr ""
-"pokud je nastaveno, kontroluje, zda je síťové rozhraní v promiskuitním režimu"
+"pokud je nastaveno, kontroluje se, zda je síťové rozhraní v promiskuitním "
+"režimu"
#: security/help.pm:119
#, c-format
msgid "if set to yes, run the daily security checks."
-msgstr "pokud je nastaveno, spouští každý den bezpečnostní kontrolu."
+msgstr "pokud je nastaveno, spouští se každý den bezpečnostní kontrola."
#: security/help.pm:120
#, c-format
@@ -5853,62 +5713,65 @@ msgstr "pokud je nastaveno, kontroluje prázdná hesla v /etc/shadow."
#: security/help.pm:122
#, c-format
msgid "if set to yes, verify checksum of the suid/sgid files."
-msgstr "pokud je nastaveno, ověřuje kontrolní součet pro suid/sgid soubory."
+msgstr "pokud je nastaveno, ověřuje se kontrolní součet pro suid/sgid soubory."
#: security/help.pm:123
#, c-format
msgid "if set to yes, check additions/removals of suid root files."
msgstr ""
-"pokud je nastaveno, kontroluje přidávání/odebírání souborů se suid root."
+"pokud je nastaveno, kontroluje se přidávání/odebírání souborů se suid root."
#: security/help.pm:124
#, c-format
msgid "if set to yes, report unowned files."
-msgstr "pokud je nastaveno, vypisuje soubory bez vlastníka."
+msgstr "pokud je nastaveno, vypisují se soubory bez vlastníka."
#: security/help.pm:125
#, c-format
msgid "if set to yes, check files/directories writable by everybody."
msgstr ""
-"pokud je nastaveno, kontroluje, které soubory/adresáře jsou zapisovatelné "
+"pokud je nastaveno, kontroluje se, které soubory/adresáře jsou zapisovatelné "
"pro všechny."
#: security/help.pm:126
#, c-format
msgid "if set to yes, run chkrootkit checks."
-msgstr "pokud je nastaveno, provádí kontrolu na chkrootkit."
+msgstr "pokud je nastaveno, provádí se kontrola na chkrootkit."
#: security/help.pm:127
#, c-format
msgid ""
"if set, send the mail report to this email address else send it to root."
msgstr ""
-"pokud je nastaveno, odesílá report na daný email nebo přímo uživateli root"
+"pokud je nastaveno, odesílá se zpráva na daný adresu elektronické pošty nebo "
+"přímo uživateli root"
#: security/help.pm:128
#, c-format
msgid "if set to yes, report check result by mail."
-msgstr "pokud je nastaveno, odesílá výsledek kontroly mailem."
+msgstr ""
+"pokud je nastaveno, odesílá se výsledek kontroly elektronickým dopisem."
#: security/help.pm:129
#, c-format
msgid "Do not send mails if there's nothing to warn about"
-msgstr "Neposílat mail, pokud není nic, před čím je nutné varovat"
+msgstr ""
+"Neposílat elektronický dopis, pokud není nic, před čím je nutné varovat"
#: security/help.pm:130
#, c-format
msgid "if set to yes, run some checks against the rpm database."
-msgstr "pokud je nastaveno, spouští kontrolu rpm databáze."
+msgstr "pokud je nastaveno, spouští se kontrola rpm databáze."
#: security/help.pm:131
#, c-format
msgid "if set to yes, report check result to syslog."
-msgstr "pokud je nastaveno, posílá výstup kontroly do syslogu."
+msgstr "pokud je nastaveno, posílá se výstup kontroly do syslogu."
#: security/help.pm:132
#, c-format
msgid "if set to yes, reports check result to tty."
-msgstr "pokud je nastaveno, posílá výsledek kontroly na tty."
+msgstr "pokud je nastaveno, posílá se výsledek kontroly na tty."
#: security/help.pm:134
#, c-format
@@ -5933,12 +5796,12 @@ msgstr "Nastavuje masku režimu tvorby souborů pro běžné uživatele."
#: security/l10n.pm:11
#, c-format
msgid "Accept bogus IPv4 error messages"
-msgstr "Akceptovat nekorektní chybové zprávy protokolu IPv4"
+msgstr "Přijímat nekorektní chybové zprávy protokolu IPv4"
#: security/l10n.pm:12
#, c-format
msgid "Accept broadcasted icmp echo"
-msgstr "Akceptovat všesměrové icmp echo"
+msgstr "Přijímat všesměrové icmp echo"
#: security/l10n.pm:13
#, c-format
@@ -6044,7 +5907,7 @@ msgstr "Použije heslo pro autentizaci uživatelů"
#, c-format
msgid "Ethernet cards promiscuity check"
msgstr ""
-"Povolí/zakáže kontrolu na nastavení promiskuitního režimu síťového rozhraní."
+"Povolí/Zakáže kontrolu na nastavení promiskuitního režimu síťového rozhraní."
#: security/l10n.pm:35
#, c-format
@@ -6054,7 +5917,7 @@ msgstr "Denní bezpečnostní kontrola"
#: security/l10n.pm:36
#, c-format
msgid "Sulogin(8) in single user level"
-msgstr "Povolí/zakáže sulogin(8) v jednouživatelském režimu."
+msgstr "Povolí/Zakáže sulogin(8) v jednouživatelském režimu."
#: security/l10n.pm:37
#, c-format
@@ -6064,7 +5927,7 @@ msgstr "Bez hesla pro"
#: security/l10n.pm:38
#, c-format
msgid "Set password expiration and account inactivation delays"
-msgstr "Nastavit expiraci hesla a prodlevu před deaktivací uživatelského účtu"
+msgstr "Nastavit vypršení hesla a prodlevu před vypnutím uživatelského účtu"
#: security/l10n.pm:39
#, c-format
@@ -6074,7 +5937,7 @@ msgstr "Délka historie hesel"
#: security/l10n.pm:40
#, c-format
msgid "Password minimum length and number of digits and upcase letters"
-msgstr "Minimální délka hesla a počet číslic a velkých písmen"
+msgstr "Nejmenší délka hesla a počet číslic a velkých písmen"
#: security/l10n.pm:41
#, c-format
@@ -6159,18 +6022,18 @@ msgstr "Provést kontrolu pomocí chkrootkit"
#: security/l10n.pm:57
#, c-format
msgid "Do not send empty mail reports"
-msgstr "Neposílat emailem prázdná hlášení"
+msgstr "Neposílat e-mailem prázdná hlášení"
#: security/l10n.pm:58
#, c-format
msgid "If set, send the mail report to this email address else send it to root"
msgstr ""
-"Pokud je nastaveno, odesílá report na daný email nebo přímo uživateli root"
+"Pokud je nastaveno, odesílá report na daný e-mail nebo přímo uživateli root"
#: security/l10n.pm:59
#, c-format
msgid "Report check result by mail"
-msgstr "Odeslat výsledek kontroly mailem"
+msgstr "Odeslat výsledek kontroly elektronickým dopisem"
#: security/l10n.pm:60
#, c-format
@@ -6202,7 +6065,7 @@ msgstr "Standardní"
msgid "Secure"
msgstr "Bezpečná"
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6215,7 +6078,7 @@ msgstr ""
"spravovat\n"
"všechny aspekty zabezpečení systému sami."
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -6224,7 +6087,7 @@ msgstr ""
"Toto je standardní úroveň zabezpečení pro počítač, který je používán jako "
"klient pro připojení k internetu."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6237,51 +6100,51 @@ msgstr ""
"S touto bezpečnostní úrovní je možné používat systém jako server.\n"
"Bezpečnost je nyní dostatečně vysoká, aby bylo možné používat systém jako "
"server, ke kterému\n"
-"je možné připojit mnoho klientů. Poznámka: pokud je počítač používán pouze "
-"jako klient pro připojení k Internetu, je lepší zvolit nižší úroveň."
+"je možné připojit mnoho klientů. Poznámka: Pokud je počítač používán pouze "
+"jako klient pro připojení k internetu, je lepší zvolit nižší úroveň."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Bezpečnost"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "Základní volby programu DrakSec"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
-msgstr "Vyberte prosím požadovanou úroveň zabezpečení"
+msgstr "Vyberte, prosím, požadovanou úroveň zabezpečení"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr "%s: %s"
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "Správce zabezpečení:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
-msgstr "Přihlášení nebo email:"
+msgstr "Přihlášení nebo e-mail:"
+
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr "Naslouchat a vyřizovat události ACPI z jádra"
-#: services.pm:19
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "Spustit zvukový systém ALSA (Advanced Linux Sound Architecture)"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "Anacron - spouští opakující se akce"
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6290,7 +6153,7 @@ msgstr ""
"apmd je používán pro sledování stavu baterie a zaznamenávání přes syslog.\n"
"Může také být použit pro vypnutí počítače při vybité baterii."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6299,7 +6162,22 @@ msgstr ""
"Spouští příkazy naplánované příkazem na určitý čas příkazem 'at'.\n"
"Také spouští příkazy při nízkém vytížení systému."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr "Avahi je démon ZeroConf implementující vrstvu mDNS"
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr "NTP klient/server"
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr "Nastavit volby frekvence CPU"
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6311,7 +6189,7 @@ msgstr ""
"v předem definovaných intervalech. vixie cron má navíc mnoho vlastností,\n"
"včetně vyšší bezpečnosti a více možností nastavení."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
@@ -6319,12 +6197,12 @@ msgstr ""
"Common UNIX Printing System (CUPS) je pokročilý systém pro správu tisku a "
"tiskáren."
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr "Spustí grafického správce přihlášení"
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6335,7 +6213,28 @@ msgstr ""
"změněn.\n"
"Používá jej prostředí GNOME a KDE"
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+"G15Daemon umožňuje uživatelům přístup ke všem dodatečným klávesám\n"
+"tím, že je dekóduje a vrací je zpět do jádra přes ovladač UINPUT. Tento "
+"ovladač musí\n"
+"být načten dřív, než se začne používat g15daemon pro přístup ke klávesnici. "
+"Rovněž je\n"
+"podporováno G15 LCD. Pokud nejsou aktivní žádní další klienti, zobrazuje "
+"g15daemon hodiny.\n"
+"Klientské aplikace a skripty mohou přistupovat k LCD pomocí jednoduchého API."
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6347,12 +6246,12 @@ msgstr ""
"Commander).\n"
"Může také v konzoli provádět operace 'vyjmi' a 'vlož' a ovládat pop-up menu."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr "HAL je démon, který sbírá a udržuje informace o hardware"
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
@@ -6361,13 +6260,13 @@ msgstr ""
"HardDrake testuje hardware a umožňuje nový/změněný\n"
"hardware nastavit"
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
msgstr "Apache je WWW server. Je používán k poskytování HTML a CGI souborů."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6382,16 +6281,23 @@ msgstr ""
"telnetu, ftp, rsh a rlogin. Pokud vypnete inetd, vypnete tím i ostatní\n"
"služby které spouští."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr "Automatizuje firewall pro filtrování paketů pomocí ip6tables"
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr "Automatizuje firewall pro filtrování paketů pomocí iptables"
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
-msgstr ""
-"Spustit paketový filtr pro jádra řady 2.2, který chrání počítač\n"
-"proti útokům ze sítě."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
+msgstr "Rovnoměrně rozděluje zátěž IRQ mezi více procesorů pro lepší výkon"
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6402,7 +6308,7 @@ msgstr ""
"v /etc/sysconfig/keyboard. Tu lze vybrat pomocí nástroje kbdconfig.\n"
"Pro většinu počítačů byste ji měli nechat zapnutou."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6411,12 +6317,17 @@ msgstr ""
"Automatická generace hlavičky jádra v adresáři /boot\n"
"pro soubory /usr/include/linux/{autoconf,version}.h"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
-msgstr "Automatická detekce a konfigurace hardware při spuštění."
+msgstr "Automatické zjištění a nastavení hardware při spuštění."
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr "Upravuje chování systému pro delší životnost baterie"
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6425,7 +6336,7 @@ msgstr ""
"LinuxConf provádí různé úkoly při spuštění systému\n"
"nutné pro správu systémové konfigurace."
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -6434,7 +6345,7 @@ msgstr ""
"lpd je tiskový démon, bez kterého nebude fungovat lpr (program pro tisk).\n"
"Je to server, který posílá tištěné dokumenty jednotlivým tiskárnám."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
@@ -6443,7 +6354,17 @@ msgstr ""
"Linux Virtual Server používaný pro sestavení vysoce výkonného\n"
"a dostupného serveru."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr "Sleduje síť (interaktivní firewall a bezdrátovou"
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr "Sledování a správa softwarového RAIDu"
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
@@ -6451,7 +6372,12 @@ msgid ""
msgstr ""
"DBUS je démon, který vysílá upozornění na události v systému a další zprávy"
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr "Zapne bezpečnostní politiku MSEC při startu systému"
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6460,7 +6386,12 @@ msgstr ""
"named (BIND) je doménový (DNS) server, který překládá hostitelská jména na "
"IP adresy."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr "Inicializuje zaznamenávání síťové konzole"
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6470,16 +6401,26 @@ msgstr ""
"(NCP)\n"
"přípojné body (mount points)."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
"at boot time."
msgstr ""
-"Aktivuje či deaktivuje všechna síťová rozhraní, která se mají nastavit při\n"
-"startu systému."
+"Zapíná či vypíná všechna síťová rozhraní, která se mají nastavit při\n"
+"spouštění systému."
+
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr "Vyžaduje běžící síť, pokud je zapnuto"
-#: services.pm:63
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr "Čekat na automaticky zapnutou síť"
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6489,7 +6430,7 @@ msgstr ""
"NFS je oblíbený protokol pro sdílení souborů přes sítě TCP/IP.\n"
"Tato služba poskytuje NFS server, jehož nastavení je v /etc/exports."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6498,12 +6439,12 @@ msgstr ""
"NFS je oblíbený protokol pro sdílení souborů přes sítě TCP/IP.\n"
"Tato služba poskytuje možnost uzamykání souborů na NFS."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr "Synchronizuje systémový čas pomocí síťového časového protokolu (NTP)"
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6512,12 +6453,17 @@ msgstr ""
"Automaticky nastaví podporu numerické klávesnice v konzoli\n"
"a v Xorg při startu."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "Podpora pro OKI 4w a kompatibilní wintiskárny."
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr "Kontroluje, zda-li je oddíl blízko zaplnění"
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6530,7 +6476,7 @@ msgstr ""
"problém\n"
"jí mít nainstalovanou i na počítačích, které ji nepotřebují."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6542,14 +6488,19 @@ msgstr ""
"a NIS. Portmap server musí být spuštěn na počítačích, které fungují jako\n"
"servery pro protokoly, které používají mechanismus RPC."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr "Rezervuje některé TCP porty"
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
"one machine to another."
msgstr "Postfix je program pro doručování pošty z jednoho počítače na jiný."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6558,16 +6509,21 @@ msgstr ""
"Ukládá a obnovuje 'stav entropie' na počítači, což je používáno pro\n"
"kvalitnější generaci náhodných čísel."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
-"Přiřazuje přímá zařízení blokovým (například diskové oddíly)\n"
-"pro aplikace jako je Oracle nebo DVD přehrávač"
+"Přiřadit raw zařízení k blokovým zařízením (jako třeba oddíly pevných disků) "
+"k užití v aplikacích Oracle nebo DVD přehrávačích"
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr "Správce informací o jmenných serverech"
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6579,7 +6535,7 @@ msgstr ""
"pro IP adresy. K tomu používá protokol RIP. Zatímco RIP je běžně používán\n"
"v malých sítích, pro složitější sítě je zapotřebí složitější protokoly."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6588,16 +6544,25 @@ msgstr ""
"Protokol rstat umožňuje uživatelům sítě sledovat vytížení jednotlivých\n"
"strojů připojených k síti."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+"Syslog je program, pomocí něhož zaznamenává mnoho démonů zprávy do různých "
+"systémových souborů se záznamy. Je dobré mít rsyslog vždy spuštěný."
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
"logged in on other responding machines."
msgstr ""
-"Protokol rusers umožňuje uživatelům sítě zjistit kdo je přihlášen na\n"
+"Protokol rusers umožňuje uživatelům sítě zjistit, kdo je přihlášen na\n"
"jiném počítači."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6607,7 +6572,7 @@ msgstr ""
"všech uživatelů přihlášených na počítači s démonem rwho (je to podobné\n"
"službě finger)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
@@ -6615,7 +6580,17 @@ msgstr ""
"SANE (Scanner Access Now Easy) umožňuje přístup ke skenerům, video kamerám a "
"dalším zařízením..."
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr "Firewall filtrující pakety"
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr "Firewall filtrující pakety pro IPv6"
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
@@ -6624,12 +6599,17 @@ msgstr ""
"Protokol SMB/CIFS umožňuje sdílet přístup k souborům a tiskárnám a také "
"integraci se serverovými doménami Windows"
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "Spustit zvukový systém při startu"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr "vrstva pro analýzu řeči"
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
@@ -6638,7 +6618,7 @@ msgstr ""
"Secure Shell je síťový protokol, který umožňuje výměnu dat pomocí "
"zabezpečeného kanálu mezi dvěma počítači"
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6648,82 +6628,94 @@ msgstr ""
"systémových\n"
"log souborů. Je dobré mít spuštěný syslog."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr "Přesunuje generovaná trvalá pravidla udev do /etc/udev/rules.d"
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "Nahrát ovladače pro usb zařízení."
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr "Jednoduché sledování síťového provozu"
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
-msgstr "Startuje server písem pro X."
+msgstr "Spouští server písem pro X."
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
-msgstr "Startuje ostatní démony na vyžádání."
+msgstr "Spouští ostatní démony na vyžádání."
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Tisk"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Internet"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Sdílení souborů"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Sítě"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "Systém"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
-msgstr "Vzdálená administrace"
+msgstr "Vzdálená správa"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Databázové servery"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Služby"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr "Zvolte si, které služby by měly být automaticky spuštěny při startu"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Služby: aktivováno %d z %d registrovaných"
+msgid "%d activated for %d registered"
+msgstr "aktivováno %d z %d registrovaných"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "spuštěno"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "zastaveno"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Služby a démoni"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6732,32 +6724,27 @@ msgstr ""
"Nejsou žádné další\n"
"informace o službě, promiňte."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Informace"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "Spustit na žádost"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "Při spuštění"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
-msgstr "Start"
+msgstr "Spustit"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
-msgstr "Stop"
+msgstr "Zastavit"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6787,7 +6774,7 @@ msgstr ""
"nebo si o ní můžete napsat na adresu Free Software Foundation, Inc.,\n"
"51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6814,39 +6801,37 @@ msgstr ""
"--help : zobrazí tuto zprávu.\n"
"--version : zobrazí číslo verze.\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"VOLBY:\n"
" --boot - povolí nastavení zavaděče systému\n"
-" --splash - povolí nastavení vzhledu pro zavaděč systému\n"
"výchozí režim: nabídne nastavení vlastností pro automatické přihlášení"
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-"[VOLBY] [NAZEV_PROGRAMU]\n"
-"\n"
-"[VOLBY]:\n"
-" --help - vypíše tuto nápovědu.\n"
-" --report - program může být libovolný Mandriva Linux nástroj\n"
-" --incident - program může být libovolný Mandriva Linux nástroj"
+"[VOLBY] [JMÉNO_PROGRAMU]\n"
+" \n"
+"VOLBY: \n"
+" -- help - vypíše tuto nápovědu. \n"
+" -- report - program by měl být jedním z nástrojů %s\n"
+" -- incident - program by měl být jedním z nástrojů pro %s"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6863,7 +6848,7 @@ msgstr ""
" --internet - nastaví internet\n"
" --wizard - stejné jako volba --add"
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6881,25 +6866,25 @@ msgid ""
" : and gs for ghostscript for only this one."
msgstr ""
"\n"
-"Import fontů a monitoring aplikací\n"
+"Zavedení písem a sledování aplikací\n"
"\n"
"[VOLBY]:\n"
"--windows_import : provede import ze všech dostupných oddílů s Windows.\n"
-"--xls_fonts : zobrazí všechny fonty, které již z xls existují\n"
-"--install : akceptuje libovolný font z libovolného adresáře.\n"
-"--uninstall : odinstaluje libovolný font nebo libovolný adresář s "
-"fonty.\n"
-"--replace : nahradí již existující fonty\n"
+"--xls_fonts : zobrazí všechna písma, která již z xls existují\n"
+"--install : přijme libovolné písmo z libovolného adresáře.\n"
+"--uninstall : odinstaluje libovolné písmo nebo libovolný adresář s "
+"písmy.\n"
+"--replace : nahradí již existující písma\n"
"--application : 0 žádná aplikace.\n"
" : 1 všechny dostupné podporované aplikace.\n"
" : nazev_aplikace jako např. so pro staroffice \n"
" : a gs pro ghostscript."
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6913,31 +6898,31 @@ msgid ""
"IP, nbi image name)"
msgstr ""
"[VOLBY]\n"
-"Nastavení pro Mandriva Linux Terminal Server (MTS)\n"
-"--enable : povolí MTS\n"
-"--disable : zakáže MTS\n"
-"--start : spustí MTS\n"
-"--stop : ukončí MTS\n"
-"--adduser : přidá existujícího uživatele do MTS (vyžaduje jméno "
-"uživatele)\n"
-"--deluser : odebere existujícího uživatele z MTS (vyžaduje jméno "
-"uživatele)\n"
-"--addclient : přidá klienta do MTS (vyžaduje MAC adresu, IP, název nbi "
-"obrazu)\n"
-"--delclient : odebere klienta z MTS (vyžaduje MAC address, IP, název "
-"nbi obrazu)"
-
-#: standalone.pm:100
+"%s Nastavení Terminálového serveru \n"
+"--enable : aktivovat MTS\n"
+"--disable : deaktivovat MTS\n"
+"--start : spustit MTS\n"
+"--stop : zastavit MTS\n"
+"--adduser : přidá do MTS nového uživatele (vyžaduje "
+"uživatelské jméno)\n"
+"--deluser : odebere z MTS uživatele (vyžaduje uživatelské "
+"jméno)\n"
+"addclient : přidá klienta do MTS (vyžaduje MACovou adresu, "
+"IP, jméno obrazu nbi)\n"
+"--delclient : odebere klienta z MTS (vyžaduje MACovou adresu, "
+"IP, jméno obrazu nbi)"
+
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[klávesnice]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6960,26 +6945,27 @@ msgstr ""
"--status : vrátí 1 pokud je připojeno, jinak vrací 0 a skončí.\n"
"--quiet : tichý režim. Používá se při (při)odpojování."
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-"[VOLBY]...\n"
-" -no-confirmation nepotvrzuje první otázku v režimu Mandriva Update\n"
-" --no-verify-rpm neprovádí ověření podpisu u balíčků\n"
-" --changelog-first v okně s popisem nejdříve zobrazí changelog před "
+"[VOLBA]... \n"
+" -- no-confirmation program se v režimu aktualizací neptá na "
+"%s\n"
+" --no-verify-rpm nekontrolovat podpisy balíčků\n"
+" --changelog-first v okně s popisem zobrazit seznam změn před "
"seznamem souborů\n"
-" --merge-all-rpmnew navrhne spojit všechny nalezené soubory .rpmnew/."
+" --merge-all-rpmnew navrhne sloučení všech souborů .rpmnew/."
"rpmsave"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -6988,7 +6974,7 @@ msgstr ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6999,7 +6985,7 @@ msgstr ""
" XFdrake [--noauto] monitor\n"
" XFdrake resolution"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -7010,71 +6996,76 @@ msgstr ""
"Použití: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
"testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
+#: timezone.pm:170 timezone.pm:171
#, c-format
msgid "All servers"
msgstr "Všechny servery"
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr "Globální"
-#: timezone.pm:199
+#: timezone.pm:210
#, c-format
msgid "Africa"
msgstr "Afrika"
-#: timezone.pm:200
+#: timezone.pm:211
#, c-format
msgid "Asia"
msgstr "Asie"
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr "Evropa"
-#: timezone.pm:202
+#: timezone.pm:213
#, c-format
msgid "North America"
msgstr "Severní Amerika"
-#: timezone.pm:203
+#: timezone.pm:214
#, c-format
msgid "Oceania"
msgstr "Oceánie"
-#: timezone.pm:204
+#: timezone.pm:215
#, c-format
msgid "South America"
msgstr "Jižní Amerika"
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Hong Kong"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "Ruská federace"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Jugoslávie"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Je to správně?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "Vybrali jste soubor, ne adresář"
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Informace"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -7089,6 +7080,3 @@ msgstr ""
#, c-format
msgid "Installation failed"
msgstr "Instalace selhala"
-
-#~ msgid "Automatic routing from ALSA to PulseAudio"
-#~ msgstr "Automatické směrování z ALSA na PulseAudio"
diff --git a/perl-install/share/po/cy.po b/perl-install/share/po/cy.po
index f4b281087..2d723ba52 100644
--- a/perl-install/share/po/cy.po
+++ b/perl-install/share/po/cy.po
@@ -1,36 +1,39 @@
-# translation of DrakX-cy.po to Cymraeg
-# Copyright (C) 2003 Free Software Foundation, Inc.
-# Rhoslyn Prys <post@meddal.com>, 2003,2004,2005.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
-msgid ""
-msgstr ""
-"Project-Id-Version: Mandriva DrakX.cy\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2009-08-24 19:56-0000\n"
-"Last-Translator: Rhoslyn Prys <rprys@yahoo.com>\n"
-"Language-Team: Cymraeg <post@meddal.com>\n"
+# Translators:
+# ciaran, 2015-2016
+# Rhoslyn Prys <post@meddal.com>, 2003-2005
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2018-01-07 21:25+0100\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Welsh (http://www.transifex.com/MageiaLinux/mageia/language/"
+"cy/)\n"
+"Language: cy\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Poedit-Language: Welsh\n"
-"X-Poedit-Country: UNITED KINGDOM\n"
-"X-Poedit-SourceCharset: utf-8\n"
-
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != "
+"11) ? 2 : 3;\n"
+
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
-msgstr "Aros..."
+msgstr "Arhoswch..."
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "Wrthi'n gosod cychwynnwr"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -46,34 +49,17 @@ msgstr ""
"\n"
"Neilltuo enw Cyfrol newydd?"
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr "Methodd gosod cychwynnwr. Digwyddodd y gwall canlynol:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"Efallai bydd angen i chi newid eich dyfais cychwyn Open Firmware\n"
-" i alluogi'r cychwynnwr. Os nad ydych yn gweld anogwr y\n"
-" cychwynnwr wrth ail gychwyn, gwasgwch Command-Option-O-F wrth ail\n"
-" gychwyn a theipiwch: setenv boot-device %s,\\\\:tbxi\n"
-" Yna teipiwch: shut-down\n"
-"Wrth gychwyn eto dylech weld anogwr y cychwynnwr."
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
@@ -83,275 +69,273 @@ msgstr ""
"\n"
"Gyda pha ddisg ydych chi'n cychwyn?"
-#: any.pm:346
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr "Gosod Cychwynnwr"
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Lle rydych chi eisiau gosod y cychwynnwr?"
+
+#: any.pm:365
#, c-format
msgid "First sector (MBR) of drive %s"
-msgstr "Adran gyntaf (MBR) o ddisg %s"
+msgstr "Adran gyntaf (MBR) y gyriant %s"
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
-msgstr "Adran gyntaf o'r disg (MBR)"
+msgstr "Adran gyntaf y gyriant (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
-msgstr "Adran gyntaf o'r rhaniad gwraidd"
+msgstr "Adran gyntaf y rhaniad gwraidd"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
-msgstr "Ar Ddisg Meddal"
+msgstr "Ar ddisg meddal"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Hepgor"
-#: any.pm:358
-#, c-format
-msgid "Bootloader Installation"
-msgstr "Gosod Cychwynnwr"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Lle rydych chi eisiau gosod y cychwynnwr?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
-msgstr "Ffurfweddu'r Math o Gychwyn"
+msgstr "Ffurfweddu'r arddull cychwyn"
+
+#: any.pm:405
+#, fuzzy, c-format
+msgid "EFI System Partition"
+msgstr "Amgryptio'r rhaniad"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "Prif ddewisiadau'r cychwynnwr"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "Cychwynnwr"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "Dewis cychwynnwr"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Dyfais cychwyn"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
msgstr "Prif ddewisiadau"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "Oedi cyn cychwyn y ddelwedd rhagosodedig"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "Galluogi ACPI"
-#: any.pm:411
+#: any.pm:432
#, c-format
msgid "Enable SMP"
msgstr "Galluogi SMP"
-#: any.pm:412
+#: any.pm:433
#, c-format
msgid "Enable APIC"
msgstr "Galluogi APIC"
-#: any.pm:413
+#: any.pm:435
#, c-format
msgid "Enable Local APIC"
-msgstr "Galluogi APIC Lleol"
+msgstr "Galluogi APIC lleol"
+
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Diogelwch"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Cyfrinair"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Nid yw'r cyfrineiriau'n cyd-fynd"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Ceisiwch eto"
-#: any.pm:418
+#: any.pm:442
#, c-format
-msgid "You can not use a password with %s"
+msgid "You cannot use a password with %s"
msgstr "Nid oes modd defnyddio cyfrinair gyda %s"
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Cyfrinair (eto)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
+#, c-format
+msgid "Bootloader Configuration"
+msgstr "Ffurfweddu'r Cychwynnwr"
+
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "Methodd y gosod"
+
+#: any.pm:533
#, c-format
-msgid "Restrict command line options"
-msgstr "Cyfyngu dewisiadau llinell orchymyn"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr ""
-#: any.pm:422
+#: any.pm:535 any.pm:794
#, c-format
-msgid "restrict"
-msgstr "cyfyngu"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
-#: any.pm:423
+#: any.pm:537
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
msgstr ""
-"Dewis ``Nid yw 'cyfyngu dewisiadau llinell orchymyn'' o werth heb gyfrinair"
-#: any.pm:425
+#: any.pm:539
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "Glanhau /tmp bob tro fyddwch yn cychwyn"
+msgid "Background"
+msgstr ""
-#: any.pm:434
+#: any.pm:544
#, c-format
-msgid "Init Message"
-msgstr "Neges Init"
+msgid "rEFInd banner"
+msgstr ""
+
+#: any.pm:545
+#, fuzzy, c-format
+msgid "Mageia theme"
+msgstr "Mageia"
-#: any.pm:436
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Open Firmware Delay"
-msgstr "Agor Oedi Cadarnwedd"
+msgid "Custom"
+msgstr "Addasedig"
-#: any.pm:437
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "Peidio rhannu"
+
+#: any.pm:565
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Goramser Cychwyn y Cnewyllyn"
+msgid "Scale to fit"
+msgstr ""
-#: any.pm:438
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable CD Boot?"
-msgstr "Galluogi Cychwyn o CD?"
+msgid "Label"
+msgstr "Label"
-#: any.pm:439
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Enable OF Boot?"
-msgstr "Galluogi Cychwyn OF?"
+msgid "Append"
+msgstr "Atodi"
-#: any.pm:440
+#: any.pm:612 any.pm:624 any.pm:781
#, c-format
-msgid "Default OS?"
-msgstr "System Weithredu Rhagosodedig?"
+msgid "Video mode"
+msgstr "Modd fideo"
-#: any.pm:513
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "Delwedd"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Gwraidd"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "Atodi"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr "Atodiad Xen"
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Modd fideo"
+msgid "Requires password to boot"
+msgstr ""
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "Proffil rhwydwaith"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "Label"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Rhagosodedig"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "NoVideo"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
-msgstr "Nid yw label wag yn cael ei chaniatáu"
+msgstr "Ni chaniateir label wag"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "Rhaid enwi delwedd cnewyllyn"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "Rhaid pennu rhaniad gwraidd"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "Mae'r label hwn yn cael ei ddefnyddio eisoes"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Pa fath o gofnod ydych chi eisiau ei ychwanegu?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Systemau Gweithredu eraill (SunOS..)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Systemau Gweithredu Eraill (MacOS...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "Systemau Gweithredu Eraill (Windows...)"
-#: any.pm:621
-#, c-format
-msgid "Bootloader Configuration"
-msgstr "Ffurfweddu'r Cychwynnwr"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -360,270 +344,324 @@ msgstr ""
"Dyma'r cofnodion gwahanol ar eich dewislen cychwyn hyd yma.\n"
"Mae modd i chi ychwanegu rhagor neu newid y rhai presennol."
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr ""
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Rhybudd"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr ""
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "mynediad i raglenni X"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "mynediad i offer rpm"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "caniatáu \"su\""
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr "mynediad i ffeiliau gweinyddol"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "mynediad i offer rhwydwaith"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "mynediad i offer crynhoad"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(wedi ychwanegu %s yn barod)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "Rhowch enw defnyddiwr"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
msgstr ""
-"Rhaid i'r enw defnyddiwr gynnwys dim ond llythrennau bach, rhifau, '-' a '_'"
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "Mae'r enw defnyddiwr yn rhy hir"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "Mae'r enw defnyddiwr wedi ei ychwanegu yn barod"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "Enw Defnyddiwr"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "Enw Grŵp"
-#: any.pm:817
+#: any.pm:1086
#, c-format
msgid "%s must be a number"
msgstr "Rhaid i %s fod yn rhif!"
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
-msgstr "Dylai %s fod dros 500. Parhau beth bynnag?"
+msgid "%s should be above 1000. Accept anyway?"
+msgstr "Dylai %s fod dros 1000. Parhau beth bynnag?"
-#: any.pm:822
+#: any.pm:1091
#, c-format
msgid "User management"
msgstr "Rheoli defnyddiwr"
-#: any.pm:828 authentication.pm:237
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr "Galluogi cyfrif gwadd"
+
+#: any.pm:1099 authentication.pm:236
#, c-format
msgid "Set administrator (root) password"
msgstr "Gosod cyfrinair gweinyddwr (root)"
-#: any.pm:833
+#: any.pm:1105
#, c-format
msgid "Enter a user"
msgstr "Rhowch enw defnyddiwr"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Eicon"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Enw cywir"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "Enw mewngofnodi"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Cragen"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr ""
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
msgstr "Arhoswch, ychwanegu cyfrwng..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "Awto mewngofnodi"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr "Mewngofnodi'n awtomatig ar gyfer un defnyddiwr."
-#: any.pm:916
+#: any.pm:1251
#, c-format
msgid "Use this feature"
msgstr "Defnyddiwch y nodwedd"
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Dewis y defnyddiwr rhagosodedig:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "Dewiswch y rheolwr ffenestr i redeg:"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
-msgstr "Nodiadau Ryddhau"
+msgstr "Nodiadau'r fersiwn"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Cau"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Cytundeb trwyddedu"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Gadael"
-#: any.pm:1017
+#: any.pm:1343
#, c-format
msgid "Do you accept this license ?"
-msgstr "A ydych chi'n derbyn y drwydded hon?"
+msgstr "Ydych chi'n derbyn y drwydded hon?"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Derbyn"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Gwrthod"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "Dewiswch iaith i'w defnyddio"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"Mae Mandriva Linux yn cynnal nifer o ieithoedd. Dewiswch\n"
-"pa iaith yr hoffech ei osod. Byddant ar gael pan fydd eich gosodiad\n"
-"wedi ei gwblhau a phan fyddwch yn ail gychwyn eich system."
+"Mae %s yn cefnogi nifer o ieithoedd. Dewiswch\n"
+"yr ieithoedd yr hoffech chi eu gosod. Byddant ar gael\n"
+"ar ôl i chi ailgychwyn y system wedi i'r gosod gwblhau."
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr ""
+
+#: any.pm:1402
#, c-format
-msgid "Multi languages"
-msgstr "Amlieithog"
+msgid "Select Additional Languages"
+msgstr ""
-#: any.pm:1087 any.pm:1119
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr "Hen Amgodiad (nid utf-8)"
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "Pob iaith"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "Dewis iaith"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "Gwlad / Ardal"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
msgstr "Dewiswch eich gwlad"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "Dyma restr lawn o'r gwledydd sydd ar gael"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "Gwledydd eraill"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Uwch"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr "Dull mewnbwn:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Dim"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "Peidio rhannu"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "Caniatáu pob defnyddiwr"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Arddull"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -638,7 +676,7 @@ msgstr ""
"\n"
"\"Addasu\" caniatáu cyfran i'r defnyddwyr.\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
@@ -647,7 +685,7 @@ msgstr ""
"NFS: system rhannu ffeiliau traddodiadol Unix, sydd â llai o gefnogaeth ar "
"Mac a Windows."
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
@@ -656,19 +694,19 @@ msgstr ""
"SMB: system rhannu ffeiliau sy'n cael ei ddefnyddio yn Windows, Mac OSX a "
"nifer o systemau Linux diweddar."
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
msgstr ""
"Gallwch allforio gan ddefnyddio NFS neu SMB. Pa un hoffech chi ei ddefnyddio?"
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "Cychwyn userdrake"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
@@ -677,7 +715,7 @@ msgstr ""
"Mae'r rhannu yn ôl defnyddiwr yn defnyddio grŵp \"rhannu ffeiliau\" .\n"
"Mae modd defnyddio userdrake i ychwanegu defnyddiwr i'r grŵp. "
-#: any.pm:1421
+#: any.pm:1768
#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
@@ -686,51 +724,106 @@ msgstr ""
"Rhaid allgofnodi ac i mewn eto i newidiadau ddigwydd. Cliciwch Iawn i "
"allgofnodi nawr."
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr "Rhaid allgofnodi ac i mewn eto i newidiadau ddigwydd."
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "Cylchfa amser"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Pa un yw eich parth amser?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr "Gosodiadau Dyddiad Cloc a Chylchedd Amser"
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
msgstr "Beth yw'r amser gorau?"
-#: any.pm:1490
+#: any.pm:1837
#, c-format
msgid "%s (hardware clock set to UTC)"
msgstr "%s (cloc caledwedd wedi ei osod i UTC)"
-#: any.pm:1491
+#: any.pm:1838
#, c-format
msgid "%s (hardware clock set to local time)"
msgstr "%s (cloc caledwedd wedi ei osod i'r amser lleol)"
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "Gweinydd NTP"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "Cydweddi amser awtomatig (defnyddio NTP)"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "URL y drych?"
+
+#: any.pm:1880
+#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "Rhaid i'r URL gychwyn gyda ftp:// neu http://"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr "Wrthi'n cysylltu â gwefan %s i estyn y rhestr o ddrychau..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr "Methwyd cysylltu â gwefan %s i estyn y rhestr o ddrychau"
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Dewiswch ddrych i estyn y pecynnau wrtho"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Diddymu"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "Awtoganfod"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "Enwi dewisiadau"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "Cychwynnwr"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -751,7 +844,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr "Cerdyn Clyfar"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Parth Windows"
@@ -761,23 +854,23 @@ msgstr "Parth Windows"
msgid "Kerberos 5"
msgstr "Kerberos 5"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "Ffeil leol:"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr "Defnyddio lleol ar gyfer pob dilysiad a gwybodaeth mewn ffeil leol"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
@@ -786,12 +879,12 @@ msgstr ""
"Dweud wrth eich cyfrifiadur i ddefnyddio LDAP ar gyfer rhai neu'r holl "
"ddilysiad. Mae LDAP yn crynhoi mathau arbennig o wybodaeth o fewn eich corff."
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
@@ -800,12 +893,12 @@ msgstr ""
"Caniatáu i chi redeg grŵp o gyfrifiaduron yn yr un parth Gwasanaeth "
"Gwybodaeth Rhwydwaith gyda chyfrinair cyffredin a ffeil grŵp."
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Parth Windows:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
@@ -814,30 +907,30 @@ msgstr ""
"Mae Winbind yn caniatáu i'r system estyn gwybodaeth a dilysu defnyddwyr mewn "
"parth Windows."
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr "Kerberos 5 :"
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr "Gyda Kerberos a LDAP ar gyfer dilysiad yn y Gweinydd Cyfeiriadur Byw"
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
msgstr " "
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
#, c-format
msgid "Welcome to the Authentication Wizard"
-msgstr "Croeso i'r Dewin Dilysu"
+msgstr "Croeso i'r dewin dilysu"
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
@@ -845,78 +938,78 @@ msgid ""
msgstr ""
"Rydych wedi dewis dilysiad LDAP. Adolygwch y dewisiadau ffurfweddu isod"
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "Gweinydd LDAP"
-#: authentication.pm:113 authentication.pm:168
+#: authentication.pm:112 authentication.pm:167
#, c-format
msgid "Base dn"
msgstr "Sail dn"
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr "Estyn sail Dn"
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr "Defnyddio cyswllt amgryptio gyda TLS"
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr "Llwytho Tsystysgrif CA i lawr"
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr "Defnyddio'r modd Datgysylltu"
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
msgstr "Defnyddio BIND anhysbys"
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
msgstr " "
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr "Rhwymo DN"
-#: authentication.pm:123 authentication.pm:175
+#: authentication.pm:122 authentication.pm:174
#, c-format
msgid "Bind Password "
msgstr "Rhwymo cyfrinair"
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr "Llwybr uwch ar gyfer grŵp"
-#: authentication.pm:127
+#: authentication.pm:126
#, c-format
msgid "Password base"
msgstr "Sail cyfrinair"
-#: authentication.pm:128
+#: authentication.pm:127
#, c-format
msgid "Group base"
msgstr "Sail grŵp"
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr "Sail cysgodol"
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
@@ -924,37 +1017,37 @@ msgid ""
msgstr ""
"Rydych wedi dewis dilysiad Kerebos 5. Adolygwch y dewisiadau ffurfweddu isod"
-#: authentication.pm:146
+#: authentication.pm:145
#, c-format
msgid "Realm "
msgstr "Cylch"
-#: authentication.pm:148
+#: authentication.pm:147
#, c-format
msgid "KDCs Servers"
msgstr "Gweinydd KDCs"
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr "Defnyddio DNS i ganfod KDC ar gyfer y cylch"
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr "Defnyddio DNS i ganfod cylchoedd"
-#: authentication.pm:156
+#: authentication.pm:155
#, c-format
msgid "Use local file for users information"
msgstr "Defnyddio ffeil lleol am wybodaeth defnyddwyr"
-#: authentication.pm:157
+#: authentication.pm:156
#, c-format
-msgid "Use Ldap for users information"
+msgid "Use LDAP for users information"
msgstr "Defnyddio LDAP am wybodaeth defnyddwyr"
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
@@ -963,29 +1056,29 @@ msgstr ""
"Rydych wedi dewis dilysiad Kerebos 5, nawr mae'n rhaid i chi ddewis y math o "
"wybodaeth defnyddiwr."
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
-msgstr "Fecth base Dn "
+msgid "Fetch base DN "
+msgstr "Fetch base DN "
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr "Rydych wedi dewis dilysiad NIS. Adolygwch y dewisiadau ffurfweddu isod"
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "Parth NIS"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "Gweinydd NIS"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
@@ -994,74 +1087,74 @@ msgstr ""
"Rydych wedi dewis dilysiad Parth Windows. Adolygwch y dewisiadau ffurfweddu "
"isod"
-#: authentication.pm:218
+#: authentication.pm:217
#, c-format
msgid "Domain Model "
msgstr "Model Parth"
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr "Cylch Cyfeiriadur Byw"
-#: authentication.pm:221
+#: authentication.pm:220
#, c-format
msgid "DNS Domain"
msgstr "Parth DNS"
-#: authentication.pm:222
+#: authentication.pm:221
#, c-format
msgid "DC Server"
msgstr "Gweinydd DC"
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Dilysu"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "Dull dilysu"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Dim cyfrinair"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
msgstr "Mae'r cyfrinair yn rhy syml ( rhaid iddo fod o leiaf %d nod o hyd)"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "Methu defnyddio darlledu heb barth NIS"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Dewiswch ffeil"
-#: authentication.pm:897
+#: authentication.pm:882
#, c-format
msgid "Domain Windows for authentication : "
msgstr "Dilysu Parth Windows:"
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "Enw Defnyddiwr Gweinyddiaeth Parth"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Cyfrinair Gweinyddol y Parth"
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1076,42 +1169,47 @@ msgstr ""
"aros am y cychwyn rhagosodedig\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO gyda dewislen testun"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 gyda dewislen raffigol"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 gyda dewislen testun"
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr "GRUB gyda dewislen raffigol"
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr "GRUB gyda dewislen testun"
-#: bootloader.pm:1135
-#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+#: bootloader.pm:1483
+#, fuzzy, c-format
+msgid "rEFInd with graphical menu"
+msgstr "rEFInd gyda dewislen raffigol"
-#: bootloader.pm:1136
-#, c-format
-msgid "SILO"
-msgstr "SILO"
+#: bootloader.pm:1484
+#, fuzzy, c-format
+msgid "U-Boot/Extlinux with text menu"
+msgstr "U-Boot/Extlinux gyda dewislen testun"
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "dim digon o le yn /boot"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "Nid oes modd gosod y cychwynnwr ar raniad %s\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
@@ -1120,65 +1218,66 @@ msgstr ""
"Rhaid i ffurfweddiad eich cychwynnwr gael ei ddiweddaru am i'r rhaniadau "
"gael eu hail rifo."
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
"Methu gosod eich cychwynnwr yn iawn, Rhaid defnyddio achub cychwyn a dewis "
"\"%s\""
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "Ail osod Cychwynnwr"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "B"
msgstr "B"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "KB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "MB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "GB"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "TB"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr ""
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d munud"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 munud"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d eiliad"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr "gorchymyn %s ar goll"
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1197,12 +1296,12 @@ msgstr ""
msgid "New"
msgstr "Newydd"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Dadarosod"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Arosod"
@@ -1212,43 +1311,44 @@ msgstr "Arosod"
msgid "Server"
msgstr "Gweinydd"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Pwynt arosod"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Dewisiadau"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Tynnu"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Gorffen"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Gwall"
@@ -1263,81 +1363,72 @@ msgstr "Rhowch URL gweinydd WebDAV"
msgid "The URL must begin with http:// or https://"
msgstr "Rhaid i'r URL gychwyn gyda http:// neu https://"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Rhybudd"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Ydych chi eisiau clicio ar y botwm hwn?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr "Ydych chi wir am ddileu'r pwynt arosod hwn?"
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Gweinydd:"
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Pwynt arosod:"
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Dewisiadau: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "Creu rhaniadau"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
"Cliciwch ar raniad, dewiswch math o system ffeil ac yna dewis gweithred"
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Darllenwch yn ofalus"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "Gwnewch gopi wrth gefn o'ch data yn gyntaf"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Gadael"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Parhau"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Cymorth"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1348,142 +1439,133 @@ msgstr ""
"Awgrymir eich bod yn newid maint y rhaniad\n"
"(cliciwch arno, ac yna clicio \"Newid maint\"]"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "Cliciwch ar raniad"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Manylion"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "Heb ganfod gyrwyr caled"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Anhysbys"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432
#, c-format
-msgid "Ext3"
-msgstr "Ext3"
+msgid "Ext4"
+msgstr "Ext4"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "XFS"
msgstr "XFS"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Swap"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Arall"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Gwag"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Mathau o system ffeiliau:"
-#: diskdrake/hd_gtk.pm:407
+#: diskdrake/hd_gtk.pm:461
#, c-format
msgid "This partition is already empty"
msgstr "Mae'r rhaniad eisoes yn wag"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "Defnyddiwch \"Dadarosod\" yn gyntaf"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``%s'' instead (in expert mode)"
msgstr "Defnyddiwch \"%s\" yn lle hynny (modd arbenigwr)"
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Math"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Dewiswch raniad arall"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Dewiswch raniad"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "Rhagor"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
#, c-format
msgid "Confirmation"
msgstr "Gwiriad"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Parhau beth bynnag?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Gorffen heb gadw"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Gorffen heb ysgrifennu'r tabl rhaniadau?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "Ydych eisiau cadw newidiadau /etc/fstab"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr ""
"Bydd angen i chi ail gychwyn cyn i'r newidiadau yn eich tabl rhaniad ddigwydd"
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1495,162 +1577,187 @@ msgstr ""
"fstab.\n"
"Gadael beth bynnag?"
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Clirio i gyd"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Awto ddynodi"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "Arbenigwr > Cyffredinol"
+msgid "Normal mode"
+msgstr "Cyffredinol"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "Cyffredinol > Arbenigwr"
+msgid "Expert mode"
+msgstr "Arbenigwr"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "Gwybodaeth am y ddisg galed"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "Mae pob rhaniad cynradd wedi ei ddefnyddio"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "Does dim modd ychwanegu rhaniadau ychwanegol"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
"partition"
msgstr "I gael mwy o raniadau, dilëwch un i greu rhaniad estynedig"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Ail-lwytho'r tabl rhaniad"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Gwybodaeth fanwl"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
msgstr "Gweld"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Newid maint"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Fformatio"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Ychwanegu i RAID"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Ychwanegu i LVM"
-#: diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:417
#, c-format
msgid "Use"
msgstr "Defnydd"
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Dileu"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Tynnu o RAID"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Tynnu o LVM"
-#: diskdrake/interactive.pm:415
+#: diskdrake/interactive.pm:422
#, c-format
msgid "Remove from dm"
msgstr "Tynnu o dm"
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "Newid RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Defnyddiwch ar gyfer cylchol"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Creu"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Symud ffeiliau i'r rhaniad newydd"
+msgstr "Methu arosod rhaniad"
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Creu rhaniad newydd"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Sector dechreuol: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Maint mewn MB: "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Math o system ffeilio"
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Dewis"
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "Enw cyfrol resymegol"
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr "Amgryptio'r rhaniad"
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr "Allwedd amgryptio"
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Allwedd amgryptio (eto)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Nid yw'r allweddi amgryptio'n cyd-fynd"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr "Allwedd amgryptio goll"
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
@@ -1658,135 +1765,135 @@ msgstr ""
"(gan eich bod wedi cyrraedd y nifer uchaf o raniadau cynradd).\n"
"Diddymwch raniad cynradd a chreu rhaniad estynedig."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "Tynnu'r ffeil gylchol?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr ""
"Wedi newid math raniad %s, bydd yr holl ddata ar y rhaniad yn cael ei golli"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Newid math y rhaniad"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Pa fath o system ffeil ydych chi eisiau?"
-#: diskdrake/interactive.pm:594
+#: diskdrake/interactive.pm:650
#, c-format
msgid "Switching from %s to %s"
msgstr "Newid o %s i %s"
-#: diskdrake/interactive.pm:624
+#: diskdrake/interactive.pm:685
#, c-format
msgid "Set volume label"
msgstr "Gosod label cyfrol"
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
"Gofal, bydd hwn yn cael ei ysgrifennu i'r ddisg unwaith i chi ei ddilysu"
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
"Gofal, dim ond wedi i chi ei fformatio bydd hwn yn cael ei ysgrifennu i'r "
"ddisg!"
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr "Pa label cyfrol?"
-#: diskdrake/interactive.pm:630
+#: diskdrake/interactive.pm:691
#, c-format
msgid "Label:"
msgstr "Label:"
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "Lle'r hoffech chi arosod y ffeil gylchol %s?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "Lle'r ydych am arosod dyfais %s?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"Methu dadsetio'r pwynt arosod gan fod y rhaniad yn cael ei ddefnyddio ar "
"gyfer cylch-ôl\n"
"Tynnu'r cylchol yn gyntaf"
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "Lle'r ydych am arosod %s?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "Newid maint"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "Cyfrifo ffiniau system ffeiliau FAT"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "Nid oes modd newid maint y rhaniad"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "Dylai'r holl ddata ar y rhaniad gael ei gadw wrth gefn"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr ""
"Ar ôl newid maint rhaniad %s, bydd yr holl ddata ar y rhaniad yma yn cael ei "
"golli"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Dewiswch y maint newydd"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "Maint mewn MB: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr "Lleiafswm maint: %s MB"
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr "Uchawfswm maint : %s MB"
-#: diskdrake/interactive.pm:805
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
@@ -1796,47 +1903,62 @@ msgstr ""
"gwiriadau'r system ffeiliau'n cael eu gwneud wrth i chi ail gychwyn "
"Microsoft Windows®"
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Allwedd amgryptio system ffeil : "
-#: diskdrake/interactive.pm:854
+#: diskdrake/interactive.pm:982
#, c-format
msgid "Enter your filesystem encryption key"
msgstr "Rhwch eich allwedd amgryptio system ffeiliau"
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "Allwedd amgryptio"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr "Allwedd annilys"
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Dewis RAID presennol i ychwanegu ato"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "newydd"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Dewis LVM presennol i ychwanegu ato"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr "Enw LVM"
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr ""
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr "Mae \"%s\" yn bodoli eisoes"
+
+#: diskdrake/interactive.pm:1058
#, c-format
-msgid "LVM name?"
-msgstr "Enw LVM?"
+msgid "Setting up LVM"
+msgstr ""
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
@@ -1846,119 +1968,120 @@ msgstr ""
"Ydych chi am symud ystentiau ffisegol a ddefnyddiwyd o'r gyfrol i gyfrol "
"arall?"
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr "Symud ystent corfforol"
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "Nid oes modd defnyddio'r rhaniad ar gyfer cylchol"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Cylch-ôl"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Enw ffeil gylchol"
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "Rhowch enw ffeil"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr ""
"Mae'r ffeil yn cael ei ddefnyddio eisoes gam cylchol arall, dewiswch un arall"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Mae'r ffeil yn bodoli eisoes. Defnyddiwch hwn?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "Dewisiadau arosod"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "Amrywiol"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "dyfais"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "lefel"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
msgstr "Maint darn yn KiB"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "Byddwch ofalus: mae'r weithred hon yn beryglus."
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "Partitioning Type"
-msgstr "Math o Raniad"
+msgstr "Math o raniad"
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
-msgstr "Pa fath o raniad ?"
+msgstr "Pa fath o raniad?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
-msgstr "Mi fydd angen i chi ailgychwyn cyn i'r newidiadau ddod i rym"
+msgid "You'll need to reboot before the modification can take effect"
+msgstr ""
+"Bydd angen i chi ailgychwyn y cyfrifiadur cyn i'r newidiadau ddod i rym"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "Mae tabl rhaniad disg %s yn mynd i gael ei ysgrifennu i'r ddisg"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "Yn fformatio rhaniad %s"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr ""
"Wedi fformatio rhaniad %s, bydd yr holl ddata ar y rhaniad yn cael ei golli"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "Gwirio blociau gwallus?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "Symud ffeiliau i'r rhaniad newydd"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Cuddio ffeiliau"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1974,128 +2097,127 @@ msgstr ""
"Gallwch un ai ddewis i symud y ffeiliau i'r rhaniad fydd wedi ei arosod yno "
"neu eu gadael lle y maent (sy'n golygu eu cuddio gan gynnwys y rhaniad hwnnw)"
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr "Symud ffeiliau i'r rhaniad newydd"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "Copïo %s"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "Tynnu %s"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "Mae rhaniad %s yn cael ei alw'n %s"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr "Mae'r rhaniadau wedi eu hail-rifo"
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Dyfais: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr "Label y gyfrol:"
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr "UUID: "
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "Llythyren disg DOS: %s (dim ond dyfalu)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Math: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Enw : "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Dechrau: sector %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr ""
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Maint: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s sector"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "Silindr %d i silindr %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr "Nifer clystyrau rhesymegol: %d\n"
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Wedi ei fformatio\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Heb ei fformatio\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Arosodwyd\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1446
#, c-format
msgid "Encrypted"
msgstr "Amgryptiwyd"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr "(mapiwyd ar %s)"
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr "(mapio ar %s)"
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr "(anweithredol)"
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2104,7 +2226,7 @@ msgstr ""
"Ffeil(iau) Cylch-ôl:\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2113,27 +2235,27 @@ msgstr ""
"Cychwyn y rhaniad fel rhagosodwyd\n"
" (ar gyfer cychwyn MS-DOS, nid ar gyfer lilo)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Lefel %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
msgstr "Maint darn %d KiB\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "Disg RAID %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Enw ffeil gylchol: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2146,7 +2268,7 @@ msgstr ""
"yw'r rhaniad hwn. Gwell gadael\n"
"llonydd iddo.\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2159,68 +2281,63 @@ msgstr ""
"hwn ar gyfer cychwyniad\n"
"dwbl eich system\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
-msgstr "Gofod rhydd ar %s (%s)"
+msgstr "Lle ar gael ar %s (%s)"
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Darllen yn unig"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Maint: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Geometreg: %s silindr, %s pen, %s sector\n"
-#: diskdrake/interactive.pm:1351
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Enw : "
+
+#: diskdrake/interactive.pm:1492
#, c-format
msgid "Medium type: "
msgstr "Math o gyfrwng:"
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "Disg LVM %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Tabl rhaniad math: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "ar sianel %d id %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "Dewiswch eich allwedd amgryptio system ffeiliau"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
"Mae'r allwedd amgryptio'n rhy syml (mae'n rhaid bod o leiaf %d nod o hyd)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "Nid yw'r allweddi amgryptio'n cyd-fynd"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Allwedd amgryptio (eto)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Algorithm amgryptio"
@@ -2230,17 +2347,9 @@ msgstr "Algorithm amgryptio"
msgid "Change type"
msgstr "Newid y math"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Diddymu"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr ""
"Methu mewngofnodi gan ddefnyddio enw defnyddiwr %s (cyfrinair anghywir?)"
@@ -2284,40 +2393,40 @@ msgstr "Chwiliwch am weinyddion"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "Chwiliwch weinyddion newydd"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "Rhaid i becyn %s gael ei osod. Ydych chi am ei osod?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr "Methu gosod pecyn %s!"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "Mae pecyn gorfodol %s ar goll"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Mae'r pecynnau canlynol angen eu gosod:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "Gosod pecynnau..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "Tynnu pecyn..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
@@ -2326,32 +2435,39 @@ msgstr ""
"Digwyddodd gwall - heb ganfod unrhyw ddyfeisiau dilys er mwyn creu system "
"ffeil arnynt. Gwiriwch eich caledwedd am reswm dros y gwall."
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "Rhaid cael rhaniad FAT wedi ei arosod yn /boot/efi"
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "Rhaid cael rhaniad ESP FAT32 wedi ei arosod yn /boot/EFI"
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "Creu a fformatio ffeil %s"
-#: fs/format.pm:119
+#: fs/format.pm:202
#, c-format
msgid "I do not know how to set label on %s with type %s"
msgstr "Nid wyf yn gwybod sut i osod label ar %s gyda math %s"
-#: fs/format.pm:126
+#: fs/format.pm:214
#, c-format
msgid "setting label on %s failed, is it formatted?"
msgstr "methodd gosod label ar %s, a yw wedi ei fformatio?"
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "Nid wyf yn gwybod sut i fformatio %s ym math %s"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "methodd fformatio %s o %s"
@@ -2366,30 +2482,30 @@ msgstr "Arosodiadau cylch %s\n"
msgid "Mounting partition %s"
msgstr "Yn arosod rhaniad %s"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "methodd arosod rhaniad %s yng nghyfeiriadur %s"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "Gwirio %s"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "gwall dadarosod %s: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "Galluogi rhaniad cyfnewid %s"
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
-msgstr "Defnyddiwch system ffeil amgryptiedig"
+msgid "Enable POSIX Access Control Lists"
+msgstr ""
#: fs/mount_options.pm:116
#, c-format
@@ -2404,7 +2520,7 @@ msgstr "Galluogi cyfrifo cwota disg grŵp a dewis gorfodi terfynau"
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
"Peidiwch ddiweddaru amser mynediad inode ar y system ffeiliau\n"
@@ -2426,14 +2542,14 @@ msgstr ""
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
"Dim ond ei arosod yn benodol (h.y.,\n"
"bydd y dewis -a yn achosi i'r system gael ei arosod)."
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr ""
"Peidio dehongli nod neu rwystro dyfeisiadau arbennig ar y system ffeil."
@@ -2441,7 +2557,7 @@ msgstr ""
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
"Peidio caniatáu gweithrediad unrhyw dueddiad ar system ffeil wedi ei\n"
@@ -2462,22 +2578,22 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
+msgid "Mount the filesystem read-only."
msgstr "Arosodwch y system ffeiliau fel darllen yn unig."
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr "Dylai pob I/O i'r system ffeil gael ei wneud yn gydamserol."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr "Caniatáu pob defnyddiwr i arosod a dadarosod y system ffeiliau."
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr "Caniatáu i ddefnyddiwr cyffredin arosod system ffeil."
#: fs/mount_options.pm:147
@@ -2500,32 +2616,32 @@ msgstr "Rhoi mynediad ysgrifennu i ddefnyddwyr cyffredin"
msgid "Give read-only access to ordinary users"
msgstr "Rhoi mynediad darllen yn unig i ddefnyddwyr cyffredin"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Pwynt arosod dyblyg %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
msgstr "Dim rhaniad ar gael"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "Sganio rhaniadau i ganfod pwyntiau arosod"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Dewiswch bwyntiau arosod"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Dewiswch y rhaniadau rydych am eu fformatio"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2534,23 +2650,23 @@ msgstr ""
"Methu gwirio system ffeil %s. Hoffech chi gywiro'r gwallau? (gofal, mae modd "
"colli data)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr "Dim digon o le cyfnewid i gyflawni'r gosod, ychwanegwch"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"Rhaid cael rhainiad root.\n"
"Ar gyfer gwneud hyn , crëwch raniad (neu cliciwch ar un cyfredol).\n"
"Yna dewiswch weithred ``Pwynt arosod'' a'i osod i `/'"
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
@@ -2561,93 +2677,58 @@ msgstr ""
"\n"
"Parhau beth bynnag?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
-msgstr "Defnyddiwch le rhydd"
+msgstr "Defnyddio'r gwagle"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "Nid oes digon o le ar gyfer dynodi rhaniadau newydd"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "Defnyddio'r rhaniadau presennol"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "Nid oes rhaniad presennol ar gael"
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Defnyddiwch raniad Microsoft Windows® ar gyfer cylch ôl."
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Pa raniad hoffech ei ddefnyddio ar gyfer Linux4Win?"
-
-#: fs/partitioning_wizard.pm:108
-#, c-format
-msgid "Choose the sizes"
-msgstr "Dewis maint"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "Maint rhaniad root mewn MB: "
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Maint rhaniad cyfnewid mewn MB: "
-
-#: fs/partitioning_wizard.pm:119
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-"Nid oes rhaniad FAT i'w ddefnyddio ar gyfer cylch ôl (dim digon o le ar ôl)"
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "Mesur maint rhaniad Microsoft Windows®"
-#: fs/partitioning_wizard.pm:127
+#: fs/partitioning_wizard.pm:201
#, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "Defnyddio'r lle rhydd ar raniad Microsoft Windows®"
+msgstr "Defnyddio'r gwagle ar raniad Microsoft Windows®"
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Pa raniad hoffech newid ei faint?"
-#: fs/partitioning_wizard.pm:143
-#, c-format
-msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
-msgstr ""
-"Nid yw'r rhaglen newid maint FAT yn gallu trin eich rhaniad,\n"
-"digwyddodd y gwall canlynol: %s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "Mesur maint rhaniad Microsoft Windows®"
-
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
"Your Microsoft Windows® partition is too fragmented. Please reboot your "
"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+"the %s installation."
msgstr ""
"Mae eich rhaniad Microsoft Windows® yn rhy ddarniog. Ailgychwynnwch eich "
"cyfrifiadur yn Microsoft Windows®, a rhedeg y rhaglen `defrag'', yna "
-"ailgychwyn gosod Mandriva Linux."
+"ailgychwyn gosod %s."
+
+#: fs/partitioning_wizard.pm:215
+#, c-format
+msgid "Failed to find the partition to resize (%d choices)"
+msgstr ""
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2658,8 +2739,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2669,98 +2750,90 @@ msgstr ""
"RHYBUDD!\n"
"\n"
"\n"
-"Bydd maint eich rhaniad Microsoft Windows® yn cael ei newid.\n"
+"Rydych ar fin ailfeintio eich rhaniad Microsoft Windows®.\n"
"\n"
"\n"
-"Byddwch ofalus: mae'r weithred hon yn beryglus. Os nad ydych wedi gwneud "
-"hynny eisoes, rhaid gadael y gosod, rhedeg \"chkdsk c:\" o'r Llinell "
-"Orchymyn yn Microsoft Windows® (rhybudd: nid yw rhedeg y rhaglen \"scandisk"
-"\" yn ddigon, gwnewch yn siŵr eich bod yn defnyddio \"chkdsk\" mewn Llinell "
-"Orchymyn!), neu rhedwch defrag, yna ailgychwyn gosod. Dylech hefyd wneud "
-"copi wrth gefn o'ch data.\n"
+"Cymerwch ofal: mae'r weithred hon yn beryglus. Os nad ydych eisoes wedi'i "
+"wneud, rhaid gadael y gosod, rhedeg \"chkdsk c:\" o linell orchymyn yn "
+"Microsoft Windows® (rhybudd: nid yw rhedeg y rhaglen \"scandisk\" yn ddigon, "
+"sicrhewch eich bod yn defnyddio \"chkdsk\" mewn llinell orchymyn!), neu "
+"rhedwch defrag, ac yna ailgychwyn y gosod. Dylech hefyd gadw copi wrth gefn "
+"o'ch data.\n"
"\n"
"\n"
-"When sure, press %s."
+"Pan fyddwch yn barod, pwyswch %s."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Nesaf"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Partitionning"
msgstr "Creu rhaniadau"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr ""
"Pa faint o le ydych am ei gadw ar gyfer Microsoft Windows® ar rhaniad %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Maint"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "Newid maint rhaniad Microsoft Windows®"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "Methodd newid maint FAT %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"I sicrhau cywirdeb data'r rhaniad ar ôl ail-feintioli’r rhaniad(au), bydd \n"
-"gwiriadau'r system ffeiliau'n cael eu gwneud wrth i chi ail gychwyn Windows "
-"(TM)"
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr "Nid oes rhaint FAT i newid ei faint (neu does dim digon o le)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Tynnu Microsoft Windows®"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Erase and use entire disk"
msgstr "Dileu a defnyddio'r ddisg gyfan"
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
-msgstr "Mae gennych fwy nag un disg caled, ar ba un hoffech osod linux?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr "Bydd POB rhaniad presennol a'u data'n cael eu colli ar yrrwr %si"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "Rhannu disg arbenigol"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Defnyddiwch fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2769,55 +2842,70 @@ msgstr ""
"Gallwch nawr rannu %s.\n"
"Ar ôl gorffen, peidiwch anghofio ei gadw dan ddefnyddio 'w'."
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr "Ext2/3/4"
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
#, c-format
-msgid "I can not find any room for installing"
+msgid "I cannot find any room for installing"
msgstr "Nid oes lle ar gyfer gosod"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
msgstr "Mae dewin rhannu DrakX wedi canfod yr atebion canlynol:"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr "Dyma gynnwys eich disgyrrwr"
+
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Methodd creu'r rhaniad: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr "Does dim modd defnyddio JFS ar raniadau llai na 16MB"
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "Does dim modd defnyddio ReiserFS ar gyfer rhaniadau llai na 32MB"
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr "Ni ellir defnyddio btrfs i raniadau llai na 256MB"
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "syml"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "gyda /usr"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "Gweinydd"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
msgstr "Mae meddalwedd BIOS RAID wedi ei ganfod ar ddisgiau %s. Gweithredu?"
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2825,85 +2913,61 @@ msgid ""
"\n"
"Do you agree to lose all the partitions?\n"
msgstr ""
-"Nid wyf yn gallu darllen tabl rhaniad %s, mae'n rhy lygredig. :(\n"
-"Mae modd i mi fynd ymlaen i ddiystyru rhaniadau gwael (Bydd yr\n"
-"HOLL DDATA'n cael ei golli!). Yr ateb arall yw peidio gadael i\n"
-"DrakX newid y tabl rhaniad. (y gwall yw %s)\n"
+"Ni ellir darllen tabl rhaniadau'r ddyfais %s, mae'n rhy lygredig :(\n"
+"Gallwch barhau drwy ddileu'r rhaniadau gwael (collir yr HOLL DDATA!).\n"
+"Y dewis arall yw peidio â chaniatáu i DrakX addasu'r tabl rhaniadau.\n"
+"(%s yw'r gwal).\n"
"\n"
-"Ydych chi'n cytuno i golli'r holl raniadau?\n"
+"Ydych chi'n fodlon colli'r holl raniadau?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Rhaid i bwyntiau arosod gynnwys / arweiniol"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "Dylai enw'r pwyntiau arosod gynnwys llythrennau a rhifau'n unig"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Mae yna eisoes raniad gyda phwynt arosod %s\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"Rydych wedi dewis meddalwedd rhannu RAID fel gwraidd (/)\n"
-"Nid oes cychwynnwr yn gallu trin hwn heb raniad /boot\n"
-"Cofiwch ychwanegu rhaniad /boot"
-#: fsedit.pm:437
+#: fsedit.pm:478 fsedit.pm:489
#, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr ""
-"Does dim modd defnyddio Cyfrol Resymegol LVM ar gyfer pwynt arosod %s am ei "
-"fod ar draws cyfrolau ffisegol."
-
-#: fsedit.pm:439
-#, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
-msgstr ""
-"Rydych wedi dewis Cyfrol Resymegol LVM fel gwraidd (/)\n"
-"Nid oes cychwynnwr yn gallu trin hwn pan yw ar draws cyfrolau ffisegol.\n"
-"Cofiwch ychwanegu rhaniad /boot yn gyntaf"
+msgid "You cannot use an encrypted filesystem for mount point %s"
+msgstr "Nid oes modd defnyddio Cyfrol Resymegol LVM ar gyfer pwynt arosod %s"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Dylai'r cyfeiriadur aros o fewn y system ffeilio gwraidd"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
"Mae angen gwir system ffeilio (ext2, reiserfs, xfs, neu jfs)) ar gyfer y "
"pwynt arosod\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr "Nid oes modd defnyddio Cyfrol Resymegol LVM ar gyfer pwynt arosod %s"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
-msgstr "Nid oes digon o le ar gyfer awto ddynodi"
+msgstr "Nid oes digon o le i ddynodi'n awtomatig"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "Dim i'w wneud"
@@ -2913,283 +2977,327 @@ msgstr "Dim i'w wneud"
msgid "SATA controllers"
msgstr "Rheolyddion SATA"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "Rheolyddion RAID"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "Rheolyddion (E)IDE/ATA"
-#: harddrake/data.pm:92
+#: harddrake/data.pm:93
#, c-format
msgid "Card readers"
msgstr "Darllenydd cerdyn"
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Rheolyddion firewire"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "Rheolyddion PCMCIA"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "Rheolyddion SCSI"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "Rheolyddion USB"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "Pyrth USB"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "Rheolyddion SMBus"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Rheolyddion pontydd a system"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Disg Meddal"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Disg"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr "Dyfeisiau Storio Crynswth USB"
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "CDROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "Llosgwyr CD/DVD"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "Tâp"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "Rheolyddion AGP"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Cerdyn fideo"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr "Cerdyn DVB"
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "Cerdyn Teledu"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "Dyfeisiau aml-gyfrwng eraill"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "Cerdyn sain"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "Camera Gwe"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "Prosesyddion"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "Addaswyr ISDN"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr "Dyfeisiau sain USB"
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr "Cardiau radio"
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr "Cardiau rhwydwaith ATM"
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr "Cardiau rhwydwaith WAN"
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr "Dyfeisiau Bluetooth"
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "Cerdyn Ethernet"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Modem"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "Addaswyr ADSL"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Cof"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Argraffydd"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr "Rheolyddion porth gemau"
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Ffon hud"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Bysellfwrdd"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr "Tabled a sgrin cyffwrdd"
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Llygoden"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr "Biometreg"
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "UPS"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Sganiwr"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Anhysbys/Eraill"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "cpu # "
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, fuzzy, c-format
+msgid "Couldn't install the required packages"
+msgstr "Methu gosod pecyn %s!"
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Arhoswch...Gosod y ffurfweddiad"
+msgid "Please check the repositories are correctly configured"
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:462
#, c-format
-msgid "Enable PulseAudio"
-msgstr "Galluogi PulseAudio"
+msgid "No known driver"
+msgstr "Dim gyrrwr hysbys"
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:463
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
-msgstr "Galluogi sain 5.1 gyda Pulse Audio"
+msgid "There's no known driver for your sound card (%s)"
+msgstr "Nid oes gyrrwr hysbys ar gyfer eich cerdyn sain (%s)"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "Rhaid allgofnodi ac i mewn eto i newidiadau ddigwydd."
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:522
#, c-format
-msgid "Enable user switching for audio applications"
-msgstr "Galluogi newid defnyddiwr gyda rhaglenni sain"
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:527
#, c-format
-msgid "Use Glitch-Free mode"
-msgstr "Defnyddio'r modd Glitch-Freu"
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
+
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "Cychwyn Gweinydd Ffont X"
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:551
+#, fuzzy, c-format
+msgid "PulseAudio"
+msgstr "Galluogi PulseAudio"
+
+#: harddrake/sound.pm:552
+#, fuzzy, c-format
+msgid "PulseAudio with Glitch-Free mode"
+msgstr "Defnyddio'r modd di-nam"
+
+#: harddrake/sound.pm:553
+#, c-format
+msgid "PipeWire with WirePlumber"
+msgstr ""
+
+#: harddrake/sound.pm:554
+#, c-format
+msgid "PipeWire with PipeWire Media Session"
+msgstr ""
+
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
msgstr "Ail-osod sain cymysgydd i'r gwerthoedd rhagosodedig"
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr "Datrys problemau"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr ""
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "Dim gyrwyr eraill"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
@@ -3198,190 +3306,75 @@ msgstr ""
"Nid oes gyrrwr OSS/ALSA arall hysbys ar gyfer eich cerdyn sain (%s) sy'n "
"defnyddio \"%s\" ar hyn o bryd"
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Ffurfweddiad sain"
-#: harddrake/sound.pm:407
-#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Yma gallwch ddewis gyrrwr arall (un ai OSS neu ALSA) ar gyfer eich cerdyn "
-"sain (%s)"
-
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"\n"
-"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
-"\n"
-"\n"
-"Mae eich cerdyn yn defnyddio'r gyrrwr %s\"%s\" ar hyn o bryd ( y gyrrwr "
-"arferol ar ei gyfer yw \"%s\")"
+msgid "Sound troubleshooting"
+msgstr "Datrys problemau sain"
-#: harddrake/sound.pm:414
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"OSS (Open Sound System) oedd yr API sain gyntaf. Mae'n API sail annibynnol o "
-"systemau gweithredu ( mae ar gael ar gyfer y rhan fwyaf o systemau unices) "
-"on mae'n API elfennol iawn a chyfyng.\n"
-"Mae gyrwyr OSS hefyd yn ail ddyfeisio'r hyn sy'n bod eisoes.\n"
"\n"
-"Mae ALSA (Advanced Linux Sound Architecture) yn bensaernïaeth fodiwlaidd "
-"sy'n \n"
-"cynnal ystod eang o gardiau ISA, USB a PCI.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"Mae hefyd yn darparu API llawer uwch na OSS.\n"
"\n"
-"I ddefnyddio alsa, mae modd defnyddio un ai:\n"
-"- hen api OSS cydweddus\n"
-"- api ALSA newydd sy'n darparu llawer o nodweddion gell ond sydd angen "
-"defnyddio llyfrgell ALSA.\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Gyrrwr:"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"Mae'r hen yrrwr \"%s\" wedi ei wahardd.\n"
"\n"
-"Mae'n effeithio'n andwyol ar y cnewyllyn\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"Bydd y gyrrwr \"%s|\"'n cael ei ddefnyddio ar y cychwyn"
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "Dim gyrrwr cod agored"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"Nid oes gyrrwr rhydd ar gyfer eich cerdyn sain (%s) ond mae gyrrwr "
-"perchnogol yn \"%s\" ."
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "Dim gyrrwr hysbys"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "Nid oes gyrrwr hysbys ar gyfer eich cerdyn sain (%s)"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Datrys problemau sain"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
"\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-"Prawf gwall sain - rhedeg y gorchmynion canlynol:\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" pa yrwyr i'w defnyddio\n"
-"drwy ragosodiad\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" pa yrwyr mae'n defnyddio\n"
-"- \"/sbin/fuser -v /dev/dsp\" pa raglen sy'n defnyddio'r cerdyn sain.\n"
-"ar hyn o bryd\n"
"\n"
-"- \"/sbin/lsmod\" gwirio os yw ei yrrwr wedi ei lwytho\n"
-"a'i peidio\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" a \"/sbin/chkconfig --list alsa\" dangos\n"
-"os yw sain a gwasanaethau alsa services sydd wedi eu ffurfweddu yn rhedeg\n"
-"ar initlevel 3\n"
"\n"
-"- \"aumix -q\" a yw'r sain wedi ei ddistewi a'i peidio\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" pa rhaglen sy'n defnyddio'r cerdyn sain.\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "Dewis gyrrwr fy hun"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Dewis gyrrwr ar hap"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"Os ydych yn siŵr eich bod yn gwybod pa yrrwr sydd angen ar gyfer eich\n"
-"cerdyn yna dewiswch un o'r rhestr uchod\n"
-"\n"
-"Y gyrrwr presennol ar gyfer eich cerdyn \"%s\" yw \"%s\" "
#: harddrake/v4l.pm:12
#, c-format
@@ -3409,7 +3402,7 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
"Ar gyfer y rhelyw o gardiau Teledu diweddar, mae modiwl bttv cnewyllyn GNU/"
"Linux yn awto ganfod y paramedrau cywir.\n"
@@ -3426,70 +3419,73 @@ msgstr "Model cerdyn:"
msgid "Tuner type:"
msgstr "Math o diwniwr:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "Iawn"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Iawn"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "Na"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Dewis ffeil"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Ychwanegu"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Newid"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Gorffen"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Blaenorol"
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "Heb ddewis ffeil"
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "Rydych wedi dewis cyfeiriadur, nid ffeil"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "Dim cyfeiriadur o'r fath ar gael"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "Dim ffeil o'r fath ar gael"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr "Gwyliwch, Mae Caps Lock ymlaen"
@@ -3571,1248 +3567,1272 @@ msgstr "Ail-gyflwyno"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Andorra"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "United Arab Emirates"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Afghanistan"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Antigua a Barbuda"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Anguilla"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Albania"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Armenia"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Netherlands Antilles"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Angola"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Antarctica"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Yr Ariannin"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "American Samoa"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Awstria"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Awstralia"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Aruba"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Azerbaijan"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Bosnia ac Herzegovina"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Barbados"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Bangladesh"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Gwlad Belg"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Burkina Faso"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "Bwlgaria"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Bahrain"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Burundi"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Benin"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Bermuda"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Brunei Darussalam"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Bolivia"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Brasil"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Bahamas"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Bhutan"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Ynys Bouvet"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Botswana"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "Belarus"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Belize"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Canada"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Ynysoedd Cocos (Keeling)"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Congo (Kinshasa)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "Gweriniaeth Canol Affrica"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Congo (Brazzaville)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Y Swistir"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Cote d'Ivoire"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Ynysoedd Cook"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Chile"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Cameroon"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "Tsieina"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Colombia"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Costa Rica"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Serbia a Montenegro"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Ciwba"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Cape Verde"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Ynys Christmas"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Cyprus"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Gweriniaeth Tsiec"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Yr Almaen"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Djibouti"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Denmarc"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Dominica"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Dominican Republic"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Algeria"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Ecuador"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Estonia"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Yr Aifft"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Western Sahara"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Eritrea"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Sbaen"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Ethiopia"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Y Ffindir"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Ffiji"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Ynysoedd y Falkland (Malvinas)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Micronesia"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Ynysoedd Faroe"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "Ffrainc"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Gabon"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Y Deyrnas Unedig"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Grenada"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Georgia"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "French Guiana"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Ghana"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Gibraltar"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Greenland"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Gambia"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Guinea"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Guadeloupe"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Equatorial Guinea"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Groeg"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "De Georgia ac Ynysoedd De Sandwich"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Guatemala"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Guam"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Guinea-Bissau"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Guyana"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Tsiena (Hong Kong)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Heard a McDonald Islands"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Honduras"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Croatia"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Haiti"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Hwngari"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "Indonesia"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Iwerddon"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Israel"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "India"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "British Indian Ocean Territory"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Irac"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Iran"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Ynys yr Iâ"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "Yr Eidal"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Jamaica"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "Yr Iorddonen"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Siapan"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Kenya"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Kyrgyzstan"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Cambodia"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Kiribati"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Comoros"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "Saint Kitts a Nevis"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Corea (Gogledd)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Corea"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Kuwait"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Cayman Islands"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Kazakhstan"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Laos"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Libanus"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "Saint Lucia"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Liechtenstein"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Sri Lanka"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Liberia"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Lesotho"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Lithuania"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Luxembourg"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Latfia"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Libya"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Morocco"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Monaco"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Moldova"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Madagascar"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Ynysoedd Marshall"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Macedonia"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Mali"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Myanmar"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Mongolia"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Ynysoedd Gogledd Mariana"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Martinique"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Mauritania"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Montserrat"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Malta"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Mauritius"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Maldives"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Malawi"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Mecsico"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Malaysia"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Mozambique"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Namibia"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Caledonia Newydd"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Niger"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Ynys Norfolk"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Nigeria"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Nicaragua"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Yr Iseldiroedd"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Norwy"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Nepal"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Nauru"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Niue"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Seland Newydd"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Oman"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Panama"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Periw"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "Polynesia Ffrengig"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Papua New Guinea"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Philippines"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Pacistan"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Gwlad Pwyl"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Saint Pierre a Miquelon"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Pitcairn"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Puerto Rico"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Palestina"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Portiwgal"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Paraguay"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Palau"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Qatar"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Reunion"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Rwmania"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Rwsia"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Rwanda"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Saudi Arabia"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Ynysoedd Solomon"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Seychelles"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Swdan"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "Sweden"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Singapore"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Saint Helena"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Slovenia"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "Ynysoedd Svalbard a Jan Mayen"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Slofacia"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "Sierra Leone"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "San Marino"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Senegal"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Somalia"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Suriname"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "Sao Tome a Principe"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "El Salvador"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Syria"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Swaziland"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Ynysoedd Turks a Caicos"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Chad"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "French Southern Territories"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Togo"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Gwlad Thail"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Tajikistan"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Tokelau"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Dwyrain Timor"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Turkmenistan"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Tunisia"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Tonga"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Twrci"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Trinidad a Tobago"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Tuvalu"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Taiwan"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Tanzania"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Wcráin"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Uganda"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "United States Minor Outlying Islands"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "Yr Unol Daleithiau"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Uruguay"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Uzbekistan"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Fatican"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "Saint Vincent a'r Grenadines"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Venezuela"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Virgin Islands (British)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "Virgin Islands (U.S.)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Fietnam"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Vanuatu"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Wallis a Futuna"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Samoa"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Yemen"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Mayotte"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "De Affrica"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Zambia"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Zimbabwe"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "Croeso i %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr "Methodd symud ystentiau ffisegol i gyfrolau ffisegol eraill"
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr "Cyfrol ffisegol %s yn dal i gael ei defnyddio"
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "Tynnu'r cyfrolau rhesymegol yn gyntaf\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr "Nid yw'r cychwynnydd yn gallu trin /boot ar gyfrolau ffisegol niferus"
+#. -PO: Only write something if needed:
#: messages.pm:11
#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr " "
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Cyflwyniad"
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+"Bydd y system weithredu a'r cydrannau gwahanol sydd o fewn dosbarthiad "
+"Mageia yn\n"
+"cael eu galw yn \"Gynnyrch Meddalwedd\" o hyn ymlaen. Mae'r Cynnyrch "
+"Meddalwedd yn\n"
+"cynnwys, ond heb eu cyfyngu, i'r casgliad o raglenni , dulliau, rheolau a "
+"dogfennau mewn\n"
+"perthynas â'r system weithredu a chydrannau gwahanol ddosbarthiad Mageia "
+"Linux, \n"
+"ac unrhyw rhaglenni wedi eu dosbarthu gyda'r cynnyrch hwn darperir gan "
+"drwyddedwyr Mageia ."
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr "1. Cytundeb Trwyddedu"
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4826,16 +4846,40 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+"Darllenwch y ddogfen hon yn ofalus. Mae'r ddogfen hon yn gytundeb trwyddedu "
+"rhyngoch\n"
+"chi â Mageia sy'n berthnasol i'r Cynnyrch Meddalwedd.\n"
+"Wrth osod, dyblygu neu ddefnyddio'r Cynnyrch Meddalwedd mewn unrhyw fodd, "
+"rydych yn\n"
+"amlwg yn derbyn ac yn llawn cytuno i gadw at delerau ac amodau'r Drwydded "
+"hon.\n"
+"Os ydych yn anghytuno ag unrhyw ran o'r cytundeb, ni chewch ganiatâd i osod, "
+"dyblygu\n"
+"neu ddefnyddio'r Cynnyrch Meddalwedd.\n"
+"Bydd unrhyw ymgais i osod, dyblygu neu ddefnyddio'r Cynnyrch Meddalwedd mewn "
+"modd\n"
+"nad yw'n cyd-fynd â thelerau ac amodau'r Drwydded yn ddi-rym a bydd yn "
+"terfynu eich\n"
+"hawliau o dan y Drwydded hon. Ar ddiwedd y Drwydded, rhaid i chi "
+"ddinistrio'n syth pob\n"
+"copi o'r Cynnyrch Meddalwedd."
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr "2. Gwarant Gyfyngedig"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4843,15 +4887,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4860,106 +4904,22 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
-"The Software Products consist of components created by different persons or "
-"entities. %s\n"
-"Most of these licenses allow you to use, duplicate, adapt or redistribute "
-"the components which \n"
-"they cover. Please read carefully the terms and conditions of the license "
-"agreement for each component \n"
-"before using any component. Any question on a component license should be "
-"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
-"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
-"All rights to the components of the Software Products belong to their "
-"respective authors and are \n"
-"protected by intellectual property and copyright laws applicable to software "
-"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
-"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
-"If any portion of this agreement is held void, illegal or inapplicable by a "
-"court judgment, this \n"
-"portion is excluded from this contract. You remain bound by the other "
-"applicable sections of the \n"
-"agreement.\n"
-"The terms and conditions of this License are governed by the Laws of "
-"France.\n"
-"All disputes on the terms of this license will preferably be settled out of "
-"court. As a last \n"
-"resort, the dispute will be referred to the appropriate Courts of Law of "
-"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
+"you."
msgstr ""
-"Cyflwyniad\n"
-"\n"
-"Bydd y system weithredu a'r cydrannau gwahanol sydd o fewn dosbarthiad "
-"Mandriva Linux yn\n"
-"cael eu galw yn \"Gynnyrch Meddalwedd\" o hyn ymlaen. Mae'r Cynnyrch "
-"Meddalwedd yn\n"
-"cynnwys, ond heb eu cyfyngu, i'r casgliad o raglenni , dulliau, rheolau a "
-"dogfennau mewn\n"
-"perthynas â'r system weithredu a chydrannau gwahanol ddosbarthiad Mandriva "
-"Linux, \n"
-"ac unrhyw rhaglenni wedi eu dosbarthu gyda'r cynnyrch hwn darperir gan "
-"drwyddedwyr Mandriva .\n"
-"\n"
-"\n"
-"1. Cytundeb Trwyddedu\n"
-"\n"
-"Darllenwch y ddogfen hon yn ofalus. Mae'r ddogfen hon yn gytundeb trwyddedu "
-"rhyngoch\n"
-"chi â Mandriva S.A, sy'n berthnasol i'r Cynnyrch Meddalwedd.\n"
-"Wrth osod, dyblygu neu ddefnyddio'r Cynnyrch Meddalwedd mewn unrhyw fodd, "
-"rydych yn\n"
-"amlwg yn derbyn ac yn llawn cytuno i gadw at delerau ac amodau'r Drwydded "
-"hon.\n"
-"Os ydych yn anghytuno ag unrhyw ran o'r cytundeb, ni chewch ganiatâd i osod, "
-"dyblygu\n"
-"neu ddefnyddio'r Cynnyrch Meddalwedd.\n"
-"Bydd unrhyw ymgais i osod, dyblygu neu ddefnyddio'r Cynnyrch Meddalwedd mewn "
-"modd\n"
-"nad yw'n cyd-fynd â thelerau ac amodau'r Drwydded yn ddi-rym a bydd yn "
-"terfynu eich\n"
-"hawliau o dan y Drwydded hon. Ar ddiwedd y Drwydded, rhaid i chi "
-"ddinistrio'n syth pob\n"
-"copi o'r Cynnyrch Meddalwedd.\n"
-"\n"
-"\n"
-"2. Gwarant Gyfyngedig\n"
-"\n"
"Mae'r Cynnyrch Meddalwedd a'r ddogfennaeth gysylltiedig yn cael eu darparu "
"\"fel ag y maent\",\n"
"heb ddim gwarant, hyd y mae'r gyfraith yn caniatáu.\n"
-"Ni fydd Mandriva S.A. , na ei drwyddedwyr a'r darparwyr yn gyfrifol, o dan "
-"unrhyw amgylchiad, \n"
+"Ni fydd Mageia , na ei drwyddedwyr a'r darparwyr yn gyfrifol, o dan unrhyw "
+"amgylchiad, \n"
"a chyhyd ag y bydd y gyfraith yn caniatáu, am unrhyw iawn o gwbl,\n"
"arbennig, damweiniol, uniongyrchol neu anuniongyrchol (gan gynnwys heb "
"gyfyngu ar iawndal\n"
@@ -4967,22 +4927,22 @@ msgstr ""
"chosb o ganlyniad i achos llys,\n"
"neu unrhyw golled o ganlyniad) yn codi o'r defnydd neu'r anallu i "
"ddefnyddio'r Cynnyrch Meddalwedd,\n"
-"hyd yn oed os yw Mandriva wedi eu cynghori o'r posibilrwydd o'r fath iawn.\n"
+"hyd yn oed os yw Mageia wedi eu cynghori o'r posibilrwydd o'r fath iawn.\n"
"\n"
"CYFRIFOLDEB CYFYNGEDIG YN GYSYLLTIEDIG GYDA'R MEDDIANT NEU'R DEFNYDD O "
"FEDDALWEDD\n"
"GWAHARDDEDIG MEWN RHAI GWLEDYDD\n"
"\n"
-"Ni fydd Mandriva S.A., eu trwyddedwyr na'i ddosbarthwyr yn gyfrifol, o dan "
-"unrhyw amgylchiad,\n"
+"Ni fydd Mageia, eu trwyddedwyr na'i ddosbarthwyr yn gyfrifol, o dan unrhyw "
+"amgylchiad,\n"
"a chyhyd y bydd y gyfraith yn caniatáu, i fod yn atebol am unrhyw iawn o "
"gwbl, arbennig, damweiniol,\n"
"uniongyrchol neu anuniongyrchol (gan gynnwys heb gyfyngu ar iawndal am golli "
"busnes, tarfu ar fusnes,\n"
"colled ariannol, costau cyfreithiol, a chosb o ganlyniad i achos llys, neu "
"unrhyw golled o ganlyniad) yn\n"
-"codi o lwytho i lawr cydrannau meddalwedd o un o safleoedd Mandriva Linux, "
-"sydd wedi eu gwahardd neu eu\n"
+"codi o lwytho i lawr cydrannau meddalwedd o un o safleoedd Mageia, sydd "
+"wedi eu gwahardd neu eu\n"
"hatal mewn rhai gwledydd gan gyfreithiau lleol. \n"
"Mae'r cyfrifoldeb cyfyngedig hwn yn perthyn i, ond heb ei gyfyngu i'r, "
"cydrannau cryptograffiaeth cryf\n"
@@ -4990,282 +4950,133 @@ msgstr ""
"Er hynny gan nad yw rhai awdurdodaethau'n caniatáu eithrio neu gyfyngu na "
"chyfrifoldeb am \n"
"ddifrod o ganlyniad neu yn ei sgil, nid yw'r cyfyngiadau uchod yn berthnasol "
-"i chi. \n"
-"%s\n"
-"\n"
-"3. Trwydded GPL a Thrwyddedau Cysylltiedig\n"
-"\n"
-"Mae'r Cynnyrch Meddalwedd yn cynnwys cydrannau sydd wedi eu creu gan "
-"bersonau ac endidau gwahanol. %s\n"
-"Mae'r rhan fwyaf o'r trwyddedau'n caniatáu i chi ddefnyddio, dyblygu, addasu "
-"neu ailddosbarthu'r \n"
-"cydrannau maent yn eu cynnwys. Darllenwch delerau ac amodau trwydded pob "
-"cydran yn ofalus cyn unrhyw\n"
-"defnyddio gydran. Dylai pob cwestiwn am drwydded cydran gael ei ofyn i "
-"drwyddedwr neu ddarparwr y \n"
-"gydran ac nid i Mandriva.\n"
-"Mae'r rhaglenni a ddatblygwyd gan Mandriva yn cael eu llywodraethu o dan "
-"Drwydded GPL. Mae'r dogfennau\n"
-"ysgrifennwyd gan Mandriva S.A. yn cael eu llywodraethu gan drwydded benodol. "
-"Darllenwch y dogfennau\n"
-"am fwy o fanylion.\n"
-"\n"
-"\n"
-"4. Hawliau Eiddo Deallusol\n"
-"\n"
+"i chi. "
+
+#: messages.pm:68
+#, fuzzy, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr "3. Trwydded GPL a Thrwyddedau Cysylltiedig"
+
+#: messages.pm:70
+#, c-format
+msgid ""
+"The Software Products consist of components created by different persons or "
+"entities.\n"
+"Most of these licenses allow you to use, duplicate, adapt or redistribute "
+"the components which \n"
+"they cover. Please read carefully the terms and conditions of the license "
+"agreement for each component \n"
+"before using any component. Any question on a component license should be "
+"addressed to the component \n"
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
+"Documentation written \n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr "4. Hawliau Eiddo Deallusol"
+
+#: messages.pm:81
+#, c-format
+msgid ""
+"All rights to the components of the Software Products belong to their "
+"respective authors and are \n"
+"protected by intellectual property and copyright laws applicable to software "
+"programs.\n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
+"Products, as a whole or in parts, by all means and for all purposes.\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
"Mae pob hawl cydrannau'r Cynnyrch Meddalwedd yn perthyn i'w hawduron "
"perthnasol ac wedi eu hamddiffyn\n"
"gan gyfreithiau eiddo deallusol a hawlfraint sy'n berthnasol i raglenni "
"meddalwedd.\n"
-"Mae Mandriva, ei gyflenwyr a'i drwyddedwyr yn cadw eu hawl i newid neu "
+"Mae Mageia, ei gyflenwyr a'i drwyddedwyr yn cadw eu hawl i newid neu "
"addasu'r Cynnyrch Meddalwedd,\n"
"yn rhannol neu yn gyfan, drwy unrhyw ddull ac ar gyfer unrhyw bwrpas.\n"
-"Mae \"Mandriva\", \"Mandriva Linux\" a'r logos cysylltiedig yn nodau "
-"masnachol sy'n perthyn i Mandriva S.A.\n"
-"\n"
-"\n"
-"5. Cyfreithiau Llywodraethol\n"
-"\n"
-"\n"
-"Os bydd unrhyw ran o'r cytundeb hwn yn cael ei ddal yn ddi-rym, "
-"anghyfreithlon neu amherthnasol gan\n"
-"benderfyniad llys, bydd y rhan yma'n cael ei dynnu o'r cytundeb hwn. Byddwch "
-"yn parhau i fod yn rhwymedig\n"
-"i adrannau cymwys o'r cytundeb.\n"
-"Mae telerau ac amodau'r Drwydded hon yn cael eu llywodraethu gan Gyfreithiau "
-"Ffrainc. Mae'n ddymunol y\n"
-"bydd pob anghytundeb ar amodau'r drwydded yn cael eu datrys y tu allan i'r "
-"llys. Fel cam olaf, \n"
-"bydd yr anghytundeb yn cael ei drosglwyddo i'r Llysoedd Barn Paris, "
-"perthnasol, - Ffrainc. \n"
-"Am unrhyw gwestiwn ynghylch y ddogfen hon cysylltwch â Mandriva S.A."
+"Mae \"Mageia\" a'r logos cysylltiedig yn nodau masnachol sy'n perthyn i %s"
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
+#: messages.pm:88
#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-"Rydych yn cytuno i beidio (i) gwerthu, allforio, ail allforio, trosglwyddo, "
-"datgelu gwybodaeth dechnegol, neu ei \n"
-"waredu, unrhyw Feddalwedd i unrhyw berson, endid, neu gyrchfan sydd wedi ei "
-"wahardd gan gyfreithiau allforio'r \n"
-" UDA neu reoliadau sy'n cynnwys, heb gyfyngiad, Ciwba, Iran, Gogledd Corea, "
-"Swdan a Syria; neu \n"
-"(ii) defnyddio unrhyw Feddalwedd ar gyfer unrhyw ddefnydd gwaharddegig gan "
-"gyfreithiau neu reoliadau yn yr Unol Daleithiau.\n"
-"\n"
-"HAWLIAU CYFYNGDERAU LLYWODRAETH UDA. \n"
-"\n"
-"Mae'r Cynnyrch Meddalwedd ac unrhyw ddogfennaeth sy'n perthyn iddynt yn cael "
-"eu cyfrif fel \n"
-"\"meddalwedd cyfrifiadurol masnachol\" ac yn \"ddogfennau meddalwedd "
-"cyfrifiadur masnachol,\" yn ôl eu trefn, \n"
-"fel y diffiniwyd yn DFAR 252.227-7013 a FAR 12.212. Bydd unrhyw ddefnydd, "
-"newid, atgynhyrchu, \n"
-"ryddhau, perfformio, dangos neu ddatguddio'r Meddalwedd a'r dogfennau "
-"perthnasol \n"
-"gan Lywodraeth yr Unol Daleithiau yn cael ei roli yn unig gan amodau'r "
-"Cytundeb hwn ac unrhyw \n"
-"gytundeb trwyddedau perthnasol a byddant yn waharddedig ar wahân i'r hyn "
-"sy'n cael ei ganiatáu \n"
-"gan amodau'r Cytundeb hwn."
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-"Mae'r rhan fwyaf o'r cydrannau hyn ond yn eithrio rhaglenni a meddalwedd "
-"sy'n cael ei ddarparu \n"
-"gan Google Inc. neu a'i is gwmnïau (\"Google Software\"), yn cael eu rheoli "
-"gan amodau'r GNU \n"
-"General Public Licence, y'i gelwir yn \"GPL\", o hyn ymlaen neu drwyddedau "
-"cyffelyb."
-
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-"Mae'r rhan fwyaf o'r cydrannau hyn yn cael eu rheoli gan amodau'r GNU \n"
-"General Public Licence, y'i gelwir yn \"GPL\", o hyn ymlaen neu drwyddedau "
-"cyffelyb."
+msgid "5. Governing Laws"
+msgstr "5. Cyfreithiau Llywodraethol"
-#: messages.pm:112
+#: messages.pm:90
#, c-format
msgid ""
+"If any portion of this agreement is held void, illegal or inapplicable by a "
+"court judgment, this \n"
+"portion is excluded from this contract. You remain bound by the other "
+"applicable sections of the \n"
+"agreement.\n"
+"The terms and conditions of this License are governed by the Laws of "
+"France.\n"
+"All disputes on the terms of this license will preferably be settled out of "
+"court. As a last \n"
+"resort, the dispute will be referred to the appropriate Courts of Law of "
+"Paris - France.\n"
+"For any question on this document, please contact Mageia."
+msgstr ""
+"Os penderfynir gan benderfyniad llys bod unrhyw ran o’r cytundeb hwn yn ddi-"
+"rym, anghyfreithlon neu’n amherthnasol, \n"
+"tynnir y rhan hwn o’r cytundeb. Byddwch yn dal i fod yn rhwymedig i adrannau "
+"perthnasol eraill y cytundeb.\n"
+"Llywodraethir telerau ac amodau’r drwydded hon gan ddeddfau Ffrainc. \n"
+"Dymunir i bob anghytundeb ar delerau’r drwydded hon gael eu datrys y tu "
+"allan i’r llys. Fel cam olaf, \n"
+"trosglwyddir yr anghytundeb i’r llysoedd barn perthnasol ym Mharis - "
+"Ffrainc.\n"
+"Am unrhyw gwestiwn ynghylch y ddogfen hon, cysylltwch â Mageia."
+
+#: messages.pm:102
+#, fuzzy, c-format
+msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
-msgstr ""
-"Rhybudd: Mae'n bosibl nad yw Meddalwedd Rhad yn rhydd o batent, ac mae\n"
-"peth Meddalwedd Rhad wedi ei gyfyngu â phatent yn eich gwlad, e.e. gall\n"
-"amgodwyr MP3 fod angen trwydded ar gyfer defnydd pellach\n"
-"(gw. http://www.mp3licensing.com am wybodaeth bellach. Os nad ydych yn\n"
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
+msgstr ""
+"Rhybudd: Mae'n bosibl nad yw meddalwedd rydd yn rhydd o batentau, a gall\n"
+"peth meddalwedd rydd gael ei chyfyngu gan batent yn eich gwlad, e.e. gall\n"
+"dadgodwyr MP3 fod angen trwydded ar gyfer defnydd pellach\n"
+"(gw. http://www.mp3licensing.com am wybodaeth bellach). Os nad ydych yn\n"
"siŵr os yw'r patent yn berthnasol i chi, gwiriwch eich cyfreithiau lleol."
-#: messages.pm:120
-#, c-format
+#: messages.pm:112
+#, fuzzy, c-format
msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"Congratulations, installation is complete.\n"
+"Remove the installation medium and press Enter to reboot."
msgstr ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
+"Llongyfarchiadau, mae'r gosod wedi ei gwblhau.\n"
+"Tynnwch y cyfrwng cychwyn a chlicio Ailgychwyn."
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:114
#, c-format
msgid ""
-"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
+"For information on fixes which are available for this release of Mageia,\n"
"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"%s"
msgstr ""
-"Llongyfarchiadau, mae'r gosod wedi ei gwblhau.\n"
-"Tynnwch y cyfrwng cychwyn a chlicio Ailgychwyn.\n"
-"\n"
-"\n"
-"Am wybodaeth am gywiriadau sydd ar gael ar gyfer y rhyddhad hwn o Mandriva "
-"Linux,\n"
+"Am wybodaeth am gywiriadau sydd ar gael ar gyfer y rhyddhad hwn o Mageia \n"
"cysylltwch â'r atodiad, sydd i'w gael yn:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Mae gwybodaeth ar ffurfweddu eich system ar gael ym mhenawdau ôl osod\n"
-"yr Official Mandriva Linux User's Guide."
+"%s"
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
#: modules/interactive.pm:19
#, c-format
@@ -5309,18 +5120,18 @@ msgstr "Gosod gyrrwr gyfer rheolwr USB"
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "Gosod gyrrwr gyfer rheolwr firewire %s "
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "Gosod gyrrwr gyfer rheolwr firewire \"%s\" "
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "Gosod gyrrwr gyfer rheolwr disg caled %s "
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "Gosod gyrrwr gyfer rheolwr disg caled \"%s\" "
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "Gosod gyrrwr gyfer rheolwr ethernet %s "
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "Gosod gyrrwr gyfer rheolwr ethernet \"%s\" "
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -5405,46 +5216,46 @@ msgstr ""
"Methodd llwytho modiwl %s\n"
"Hoffech chi drio eto gyda pharamedrau eraill?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr "Ydych chi wir am adael?"
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
-msgstr ""
+msgstr "Cyfrinair yn rhy hawdd ei ddyfalu"
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
-msgstr ""
+msgid "Password should be resistant to basic attacks"
+msgstr "Dylai'r cyfrinair wrthod ymosodiad sylfaenol"
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Cyfrinair ar gyfer defnyddwyr"
+msgstr "Cyfrinair i weld yn ddiogel"
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "maethodd y arosod"
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Nid yw'r rhaniad estynedig yn cael ei gynnal ar y platfform hwn"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
-"Mae gennych dwll yn nhabl eich rhaniad ond nid wyf yn gallu ei ddefnyddio\n"
-"Yr unig ateb yw i symud eich rhaniadau cynradd fel bo'r twll nesaf at y "
-"rhaniadau estynedig "
+"Mae yna dwll yn eich tabl rhaniadau ond ni ellir ei ddefnyddio.\n"
+"Yr unig beth y gellir ei wneud yw symud eich prif raniadau er mwyn i'r twll "
+"fod wrth ochr y rhaniadau estynedig."
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
@@ -5453,22 +5264,22 @@ msgstr ""
"Mae prawf i fesur ei gyfanrwydd wedi methu. \n"
"Nid oes gwerth ysgrifennu i'r ddisg"
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr "Tynnu pecynnau heb eu defnyddio"
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr "Canfod pecynnau caledwedd heb eu defnyddio..."
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr "Canfod pecynnau lleoleiddio heb eu defnyddio..."
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
@@ -5477,62 +5288,62 @@ msgstr ""
"Rydym wedi canfod nad oes angen rhai pecynnau ar gyfer ffurfweddiad eich "
"system."
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr "Byddwn yn tynnu’r pecynnau canlynol, oni bai eich bod yn dewis peidio:"
-#: pkgs.pm:269 pkgs.pm:270
+#: pkgs.pm:289 pkgs.pm:290
#, c-format
msgid "Unused hardware support"
msgstr "Cefnogaeth caledwedd heb ei ddefnyddio"
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr "Lleoleiddio di-ddefnydd"
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
msgstr "Methu ychwanegu rhaniad to_formatted_RAID%s"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "Dim digon o raniadau ar gyfer RAID lefel %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "Methu creu cyfeiriadur /usr/share/sane/firmware!"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "Methu creu cyswllt /usr/share/sane/%s!"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr "Methu copïo ffeil cadarnwedd %s i /usr/share/sane/firmware!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "Methu gosod caniatâd ffeiliau cadarnwedd %s!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Scannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr "Methu gosod y pecyn sydd ei angen i rannu eich sganiwr(wyr)."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr "Ni fydd eich sganiwr(wyr) ar gael ar gyfer defnyddwyr anwraidd."
@@ -5647,8 +5458,8 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
"Ymresymiadau: (arg)\n"
"\n"
@@ -5751,7 +5562,7 @@ msgstr "Defnyddio cyfrinair i wirio defnyddwyr."
#: security/help.pm:94
#, c-format
-msgid "Activate ethernet cards promiscuity check."
+msgid "Activate Ethernet cards promiscuity check."
msgstr "Galluogi gwiriad cymysgaredd cardiau ethernet."
#: security/help.pm:96
@@ -6197,7 +6008,7 @@ msgstr "Safonol"
msgid "Secure"
msgstr "Diogel"
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6210,7 +6021,7 @@ msgstr ""
"angen gofalu\n"
"am holl agweddau o ddiogelwch system ar ben eich hun."
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
@@ -6219,7 +6030,7 @@ msgstr ""
"Dyma'r safon sy'n cael ei argymell ar gyfer diogelwch cyfrifiadur fydd yn "
"cael ei gysylltu â'r Rhyngrwyd fel cleient."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6235,48 +6046,48 @@ msgstr ""
"cysylltiad gan amryw o gleientiaid. Sylwer: os mae i gleient yn unig yw eich "
"peiriant ar y Rhyngrwyd, yna mae'n well i chi ddewis lefel is."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Diogelwch"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "Dewisiadau Sylfaenol DrakSec"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "Dewiswch lefel diogelwch"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr "%s: %s"
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "Gweinyddwr Diogelwch:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
msgstr "Mewngofnodi neu e-bost:"
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr ""
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "Cychwynnwch system sain ALSA (Pensaernïaeth Sain Linux Uwch)"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr "Anacron trefnydd gorchymyn cyfnodol."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6285,7 +6096,7 @@ msgstr ""
"Mae apmd yn cael ei ddefnyddio i fonitro statws y batri a mewngofnodi drwy\n"
"syslog. Mae modd ei ddefnyddio i gau'r peiriant pan mae'r batri'n isel."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6295,7 +6106,22 @@ msgstr ""
"ei bennu pan oedd at yn rhedeg, gan redeg gorchmynion swp pan fydd \n"
"cyfartaledd y llwyth yn ddigon isel."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr ""
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr "Cleient/gweinydd NTP"
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr "Pennu gosodiadau amlder CPU"
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6308,18 +6134,18 @@ msgstr ""
"nifer o ychwanegiadau i'r UNIX cron sylfaenol, yn cynnwys gwell diogelwch \n"
"a dewisiadau ffurfweddu mwy pwerus."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
msgstr "System sbwlio argraffu uwch yw'r Common UNIX Printing System (CUPS)"
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
msgstr "Cychwyn y rheolwr dangosydd graffigol"
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6330,7 +6156,20 @@ msgstr ""
"fo ffeiliau'n newid.\n"
"Mae'n cael ei ddefnyddio gan GNOME a KDE"
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6343,12 +6182,12 @@ msgstr ""
"gludo consol llygoden, gan gynnwys cefnogaeth ar gyfer bryslenni yn y "
"consol. "
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr " HAL - daemon sy'n casglu a chynnal gwybodaeth am galedwedd"
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
@@ -6357,7 +6196,7 @@ msgstr ""
"Mae HardDrake yn rhedeg archwiliwr caledwedd, a gall yn ôl \n"
"eich dewis, ffurfweddu caledwedd newydd neu sydd wedi newid."
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
@@ -6365,7 +6204,7 @@ msgstr ""
"Mae Apache yn weinydd y We Fyd Eang. Mae'n cael ei ddefnyddio i wasanaethu "
"ffeiliau HTML a CGI."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6380,17 +6219,23 @@ msgstr ""
"nifer o wasanaethau, gan gynnwys telnet, ftp, rsh a rlogin. Mae analluogi \n"
"inetd yn analluogi'r holl wasanaethau mae'n gyfrifol amdanynt."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr ""
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr ""
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"Cychwyn hidlydd pecynnau ar gyfer cnewyllyn cyfres Linux 2.2 \n"
-"i greu mur gwarchod i amddiffyn eich peiriant rhag ymosodiadau \n"
-"o'r rhwydwaith."
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6402,7 +6247,7 @@ msgstr ""
"hwn wrth ddefnyddio'r rhaglen wasanaethu kbdconfig. \n"
"Dylech adael hwn wedi ei alluogi ar gyfer y rhan fwyaf o beiriannau."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6411,19 +6256,24 @@ msgstr ""
"Ail-greu awtomatig pennawd y cnewyllyn yn /boot ar\n"
"gyfer /usr/include/linux{autoconf,version}.h"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr "Canfod a ffurfweddu awtomatig caledwedd wrth gychwyn y cyfrifiadur."
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr "Gwneud mân newidiadau i ymddygiad y system i ehangu oes y batri"
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
"at boot-time to maintain the system configuration."
msgstr "Bydd Linuxconf yn trefnu ar adegau i gyflawni amrywiol"
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -6433,7 +6283,7 @@ msgstr ""
"Mae'n weinydd sy'n cyflafareddu gwaith argraffu i\n"
"argraffydd (ion)."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
@@ -6442,7 +6292,17 @@ msgstr ""
"Mae Gweinydd Rhith Linux yn cael ei ddefnyddio i adeiladu \n"
"gweinyddion cyflym a chyraeddadwy."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr "Monitro'r rhwydwaith (Mur gwarchod rhyngweithiol a'r di-wifr"
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr "Rheoli ac arolygu meddalwedd RAID"
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
@@ -6450,7 +6310,12 @@ msgid ""
msgstr ""
"DBUS -daemon sy'n hysbysu'r sytem am ddigwyddiadau system a negeseuon eraill"
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr ""
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6459,7 +6324,12 @@ msgstr ""
"mae'r enwyd (BIND) yn Wasanaethwr Enw Parth (DNS) sy'n cael ei ddefnyddio i "
"gydrannu enwau gwestai i'r cyfeiriadau IP."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr ""
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
@@ -6468,7 +6338,7 @@ msgstr ""
"Yn arosod a dadarosod pob System Ffeil y Rhwydwaith (NFS), SMB\n"
"(Rheolwr Rhwydwaith/Windows), a phwyntiau arosod NCP (NetWare) ."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
@@ -6477,7 +6347,17 @@ msgstr ""
"Cychwyn/Gorffen pob rhyngwyneb rhwydwaith sydd wedi eu \n"
"ffurfweddu i gychwyn wrth gychwyn y peiriant."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr ""
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr ""
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6490,7 +6370,7 @@ msgstr ""
"ffurfweddu\n"
"drwy'r ffeil /etc/exports."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6500,12 +6380,12 @@ msgstr ""
"ar draws rhwydweithiau TCP/IP. Mae'r gwasanaeth hwn \n"
"yn darparu'r gallu i gloi ffeiliau NFS."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr "Cydweddu amser system gan ddefnyddio Protocol Amser Rhwydwaith (NTP)"
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6514,12 +6394,17 @@ msgstr ""
"Cychwyn clo allweddell numlock yn awtomatig yn consol \n"
"ac Xorg wrth gychwyn y peiriant."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "Cynnal OKI 4w ac argraffyddion Windows cyffelyb."
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr "Gwirio os yw rhaniad bron yn llawn"
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6532,7 +6417,7 @@ msgstr ""
"ffurfweddu i wneud hynny, felly mae'n ddiogel ei gael ar beiriannau \n"
"sydd ddim ei angen."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6547,7 +6432,12 @@ msgstr ""
"sy'n\n"
"gwneud defnydd o fecanwaith RPC."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr "Neilltuo rhai pyrth TCP"
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6556,7 +6446,7 @@ msgstr ""
"Mae Postfix yn Asiant Cludo E-bost (MTA), sef rhaglen sy'n symud e-bost o un "
"peiriant i'r llall."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6565,16 +6455,21 @@ msgstr ""
"Bydd yn cadw ac adfer system pwll entropi ar gyfer cynhyrchu rhif \n"
"hap o ansawdd uchel."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
"Dynodi dyfeisiau bras i ddyfeisiau bloc (megis dig caled rhaniadau), \n"
"ar gyfer defnydd rhaglenni megis Oracle neu chwaraewyr DVD."
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr "Rheolydd gwybodaeth nameserver"
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6586,7 +6481,7 @@ msgstr ""
"ddefnyddio'n eang ar rwydweithiau bach, mae angen protocolau \n"
"llwybrydd mwy cymhleth ar gyfer rhwydweithiau cymhleth."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6595,7 +6490,14 @@ msgstr ""
"Mae'r protocol rstat yn caniatáu i ddefnyddwyr rhwydwaith \n"
"i adennill metric perfformaid unrhyw beiriant ar y rhwydwaith."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
@@ -6604,7 +6506,7 @@ msgstr ""
"Mae protocol ruser yn caniatáu i ddefnyddwyr ar rwydwaith i adnabod\n"
"pwy arall sydd wedi mewngofnodi ar beiriannau eraill sy'n ymateb."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6614,7 +6516,7 @@ msgstr ""
"holl ddefnyddwyr sydd wedi mewngofnodi ar beiriant sy'n rhedeg \n"
"daemon rwho (yn debyg i fysedd)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
@@ -6622,7 +6524,17 @@ msgstr ""
"SANE (Scanner Access Now Easy) - galluogi mynediad i sganwyr, camerau "
"fideo..."
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr ""
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr ""
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
@@ -6631,12 +6543,17 @@ msgstr ""
"Protocol SMB/CIFS - caniatau rhannu mynediad i ffeiliau ac argraffwyr ac "
"yhefyd yn intigreiddio gyda parth Windows Server"
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "Cychwyn y system sain ar eich peiriant"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr ""
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
@@ -6645,7 +6562,7 @@ msgstr ""
"Secure Shell - protocol rhwydwaith sy'n caniatâu u ddata gael ei gyfnewid "
"dros sianel ddiogel rhwng dau gyfrifiadur"
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6655,116 +6572,123 @@ msgstr ""
"negeseuon i ffeiliau cofnod systemau. mae'n syniad da io rhedeg \n"
"syslog bob tro."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "Llwytho'r gyrwyr ar gyfer eich dyfeisiau usb."
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr "Monitor traffig rhwydwaith ysgafn"
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr "Cychwyn Gweinydd Ffont X"
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr "Cychwyn daemon ar alw"
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Argraffu"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Rhyngrwyd"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Rhannu Ffeiliau"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Rhwydweithio"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "System"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "Gweinyddu Pell"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Gweinydd Cronfa Ddata"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Gwasanaethau"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr ""
"Dewiswch ba wasanaethau ddylai gael eu cychwyn yn awtomatig wrth gychwyn y "
"cyfrifiadur"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Gwasanaethau: %d wedi eu cychwyn ar gyfer %d wedi eu cofrestru"
+msgid "%d activated for %d registered"
+msgstr "%d wedi eu cychwyn ar gyfer %d wedi eu cofrestru"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "rhedeg"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "ataliwyd"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Gwasanaethau a daemonau"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
"about this service, sorry."
msgstr "Dim gwybodaeth ychwanegol am y gwasanaeth hwn."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Gwybodaeth"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "Cychwyn yn ôl y gofyn"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "Cychwyn"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "Cychwyn"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Aros"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6795,10 +6719,10 @@ msgstr ""
"\n"
" Dylech fod wedi derbyn copi o Drwydded Gyhoeddus Gyffredinol GNU\n"
" gyda'r rhaglen; os nad, ysgrifennwch at:\n"
-" Free Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-"
-"1301, USA.\n"
+" Free Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA "
+"02110-1301, USA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6825,39 +6749,31 @@ msgstr ""
"--help : show this message.\n"
"--version : show version number.\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - galluogi i ffurfweddu'r cychwynnwr\n"
-" --splash - galluogi i ffurfweddu thema cychwyn\n"
"Modd rhag.:cynnig ffurfweddu nodwedd awto fewngofnodi"
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-"[DEWISIADAU] [PROGRAM_NAME]\n"
-"\n"
-"DEWISIADAU:\n"
-" --help - argraffu'r neges cymorth.\n"
-" --report - dylai'r rhaglen fod yn un o offer Mandriva Linux\n"
-" --incident - ylai'r rhaglen fod yn un o offer Mandriva Linux"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6874,7 +6790,7 @@ msgstr ""
" --internet - ffurfweddu'r rhyngrwyd\n"
" --wizard - fel --add"
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6905,11 +6821,11 @@ msgstr ""
" : name_of_application like so for staroffice \n"
" : and gs for ghostscript for only this one."
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6922,31 +6838,18 @@ msgid ""
"--delclient : delete a client machine from MTS (requires MAC address, "
"IP, nbi image name)"
msgstr ""
-"Ffurfweddwr Gweinydd Terfynell Mandriva Linux\n"
-"--enable : galluogi MTS\n"
-"--disable : analluogi MTS\n"
-"--start : cychwyn MTS\n"
-"--stop : atal MTS\n"
-"--adduser : ychwanegu defnyddiwr system bresennol i MTS (angen enw "
-"defnyddiwr)\n"
-"--deluser : dileu defnyddiwr system bresennol o MTS (angen enw "
-"defnyddiwr)\n"
-"--addclient : ychwanegu peiriant cleient i MTS (angen cyfeiriad MAC, "
-"IP, enw delwedd nbi)\n"
-"--delclient : dileu peiriant cleient i MTS (angen cyfeiriad MAC, IP, "
-"enw delwedd nbi)"
-
-#: standalone.pm:100
+
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[bysellfwrdd]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6969,26 +6872,19 @@ msgstr ""
"--status : returns 1 if connected 0 otherwise, then exit.\n"
"--quiet : do not be interactive. To be used with (dis)connect."
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-"[DEWIS]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
-" --no-verify-rpm do not verify packages signatures\n"
-" --changelog-first display changelog before filelist in the "
-"description window\n"
-" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -6997,7 +6893,7 @@ msgstr ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -7008,7 +6904,7 @@ msgstr ""
" XFdrake [--noauto] monitor\n"
" cydraniad XFdrake"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -7019,71 +6915,76 @@ msgstr ""
"Defnydd: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
"testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
+#: timezone.pm:170 timezone.pm:171
#, c-format
msgid "All servers"
msgstr "Pob gweinydd"
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr "Eang"
-#: timezone.pm:199
+#: timezone.pm:210
#, c-format
msgid "Africa"
msgstr "Affrica"
-#: timezone.pm:200
+#: timezone.pm:211
#, c-format
msgid "Asia"
msgstr "Asia"
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr "Ewrop"
-#: timezone.pm:202
+#: timezone.pm:213
#, c-format
msgid "North America"
msgstr "Gogledd America"
-#: timezone.pm:203
+#: timezone.pm:214
#, c-format
msgid "Oceania"
msgstr "Oceania"
-#: timezone.pm:204
+#: timezone.pm:215
#, c-format
msgid "South America"
msgstr "De America"
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Hong Cong"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "Cyfundeb Rwsia"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Iwgoslafia"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Ydi hyn yn gywir?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "Rydych wedi dewis ffeil, nid cyfeiriadur"
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Gwybodaeth"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -7091,369 +6992,23 @@ msgid ""
"Click \"Next\" to install or \"Cancel\" to quit"
msgstr ""
"Nid yw %s wedi ei osod\n"
-"Cliciwch \"Nesaf\" i osod neu \"Diddymu\" i adael"
+"Cliciwch \"Nesaf\" i'w osod neu \"Diddymu\" i adael"
#: wizards.pm:99
#, c-format
msgid "Installation failed"
msgstr "Methodd y gosod"
-#~ msgid "Automatic routing from ALSA to PulseAudio"
-#~ msgstr "Llwybro awtomatig o ALSA i PulseAudio"
-
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "Allgofnodwch ac yna defnyddiwch Ctrl Alt-BackSpace"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "Croeso i Crackers"
-
-#~ msgid "Poor"
-#~ msgstr "Gwael"
-
-#~ msgid "High"
-#~ msgstr "Uchel"
-
-#~ msgid "Higher"
-#~ msgstr "Uwch"
-
-#~ msgid "Paranoid"
-#~ msgstr "Paranoia"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "Rhaid defnyddio'r lefel hwn gyda gofal. Mae'n gwneud eich system yn haws "
-#~ "ei\n"
-#~ "ddefnyddio ond mae'n sensitif iawn: rhaid peidio defnyddio'r peiriant "
-#~ "i'w\n"
-#~ "gysylltu ag eraill nag i'r Rhyngrwyd. Does dim cysylltiad drwy gyfrinair."
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr ""
-#~ "Mae'r cyfrinair wedi ei alluogi, ond ni argymhellir ei ddefnyddio fel "
-#~ "cyfrifiadur rhwydwaith."
-
-#~ msgid ""
-#~ "There are already some restrictions, and more automatic checks are run "
-#~ "every night."
-#~ msgstr ""
-#~ "Mae rhai cyfyngiadau, ac mae rhagor o wiriadau awtomatig yn cael eu "
-#~ "rhedeg bob nos"
-
-#~ msgid ""
-#~ "This is similar to the previous level, but the system is entirely closed "
-#~ "and security features are at their maximum."
-#~ msgstr ""
-#~ "Wedi ei seilio ar y lefel flaenorol, ond mae'r system yn hollol gaeedig "
-#~ "ac mae nodweddion diogelwch ar eu uchaf."
-
-#~ msgid ""
-#~ "\n"
-#~ "Warning\n"
-#~ "\n"
-#~ "Please read carefully the terms below. If you disagree with any\n"
-#~ "portion, you are not allowed to install the next CD media. Press "
-#~ "'Refuse' \n"
-#~ "to continue the installation without using these media.\n"
-#~ "\n"
-#~ "\n"
-#~ "Some components contained in the next CD media are not governed\n"
-#~ "by the GPL License or similar agreements. Each such component is then\n"
-#~ "governed by the terms and conditions of its own specific license. \n"
-#~ "Please read carefully and comply with such specific licenses before \n"
-#~ "you use or redistribute the said components. \n"
-#~ "Such licenses will in general prevent the transfer, duplication \n"
-#~ "(except for backup purposes), redistribution, reverse engineering, \n"
-#~ "de-assembly, de-compilation or modification of the component. \n"
-#~ "Any breach of agreement will immediately terminate your rights under \n"
-#~ "the specific license. Unless the specific license terms grant you such\n"
-#~ "rights, you usually cannot install the programs on more than one\n"
-#~ "system, or adapt it to be used on a network. In doubt, please contact \n"
-#~ "directly the distributor or editor of the component. \n"
-#~ "Transfer to third parties or copying of such components including the \n"
-#~ "documentation is usually forbidden.\n"
-#~ "\n"
-#~ "\n"
-#~ "All rights to the components of the next CD media belong to their \n"
-#~ "respective authors and are protected by intellectual property and \n"
-#~ "copyright laws applicable to software programs.\n"
-#~ msgstr ""
-#~ "\n"
-#~ " Rhybudd\n"
-#~ "\n"
-#~ "Darllenwch yr amodau isod yn ofalus. Os ydych yn anghytuno gydag unrhyw\n"
-#~ " ddarn, nid oes caniatâd i chi osod y cyfrwng CD nesaf. Pwyswch 'Gwrthod' "
-#~ "i\n"
-#~ " barhau'r gosodiad heb ddefnyddio'r cyfryngau hyn.\n"
-#~ "\n"
-#~ "Nid yw rhai cydrannau ar y CDau canlynol yn cael eu rheoli gan Drwydded "
-#~ "GPL\n"
-#~ " neu gytundebau tebyg. Mae'r cydrannau hynny'n cael eu rheoli gan dermau "
-#~ "ac\n"
-#~ " amodau ei drwydded benodol ei hun. Darllenwch yn ofalus a chadwch at y\n"
-#~ " trwyddedau penodol cyn defnyddio neu ddosbarthu'r cydrannau hynny.\n"
-#~ "\n"
-#~ "Mae'r trwyddedau hynny'n atal yn gyffredinol, drosglwyddiad, dyblygu (ar "
-#~ "wahan i\n"
-#~ " bwrpas cadw wrth gefn), dosbarthu, cildroi peirianyddol, dadcydosod,\n"
-#~ " dad-grynhoi neu newid y cydrannau. Bydd unrhyw dorri ar yr amodau hyn "
-#~ "yn\n"
-#~ "terfynu eich hawl o dan y drwydded benodol. Oni bai ei fod yn rhoi'r "
-#~ "hawl i chi,\n"
-#~ "nid oes modd i chi osod y rhaglenni ar fwy nag un system na'i addasu ar "
-#~ "gyfer\n"
-#~ " defnydd ar rwydwaith. Os oes amheuaeth, cysylltwch yn uniongyrchol â\n"
-#~ "dosbarthwr neu olygydd y cydrannau hynny.\n"
-#~ "Mae trosglwyddo i drydydd parti neu gopïo'r cydrannau hynny gan gynnwys "
-#~ "y\n"
-#~ " ddogfennaeth, wedi ei wahardd fel rheol\n"
-#~ "\n"
-#~ "Mae pob hawl i gydrannau'r cyfrwng CD nesaf yn perthyn i' hawduron "
-#~ "perthnasol\n"
-#~ " ac maent wedi eu hamddiffyn drwy gyfreithiau eiddo deallusol a "
-#~ "hawlfraint sy'n\n"
-#~ " berthynol i raglenni meddalwedd.\n"
-
-#~ msgid "Use libsafe for servers"
-#~ msgstr "Defnyddiwch libsafe ar gyfer gweinyddion"
-
-#~ msgid ""
-#~ "A library which defends against buffer overflow and format string attacks."
-#~ msgstr ""
-#~ "Llyfrgell sy'n diogelu rhag gorlif byffer ac ymosodiadau llinellau "
-#~ "fformatio."
-
-#~ msgid "LILO/grub Installation"
-#~ msgstr "Gosodiad LILO/grub"
-
-#~ msgid "Precise RAM size if needed (found %d MB)"
-#~ msgstr "Union faint o RAM os oes angen (canfod %dMB)"
-
-#~ msgid "Give the ram size in MB"
-#~ msgstr "Rhowch faint RAM mewn MB"
+#~ msgid "You cannot install the bootloader on a %s partition\n"
+#~ msgstr "Nid oes modd gosod y cychwynnwr ar raniad %s\n"
#~ msgid ""
-#~ "If you plan to use aboot, be careful to leave a free space (2048 sectors "
-#~ "is enough)\n"
-#~ "at the beginning of the disk"
+#~ "You cannot use the LVM Logical Volume for mount point %s since it spans "
+#~ "physical volumes"
#~ msgstr ""
-#~ "Os ydych yn bwriadu defnyddio aboot, gofalwch adael lle gwag (2048 sector "
-#~ "yn ddigon)\n"
-#~ "ar ddechrau'r ddisg."
-
-#~ msgid "Security level"
-#~ msgstr "Lefel diogelwch"
-
-#~ msgid "Expand Tree"
-#~ msgstr "Estyn y goeden"
-
-#~ msgid "Collapse Tree"
-#~ msgstr "Cau'r goeden"
-
-#~ msgid "Toggle between flat and group sorted"
-#~ msgstr "Newid rhwng gwastad a'r grŵp wedi ei ddidoli"
-
-#~ msgid "Choose action"
-#~ msgstr "Dewiswch weithred"
-
-#~ msgid "Active Directory with SFU"
-#~ msgstr "Cyfeiriadur byw gyda SFU"
-
-#~ msgid "Active Directory with Winbind"
-#~ msgstr "Cyfeiriadur Byw gyda Winbind"
-
-#~ msgid "Use information stored in local files for all authentication"
-#~ msgstr ""
-#~ "Defnyddiwch wybodaeth sydd wedi ei gadw ar ffeiliau lleol ar gyfer pob "
-#~ "dilysiad"
-
-#~ msgid "Active Directory with SFU:"
-#~ msgstr "Cyfeiriadur Byw gyda SFU:"
-
-#~ msgid "Active Directory with Winbind:"
-#~ msgstr "Cyfeiriadur Byw gyda Winbind:"
-
-#~ msgid ""
-#~ "Winbind allows the system to authenticate users in a Windows Active "
-#~ "Directory Server."
-#~ msgstr ""
-#~ "Mae Winbind yn caniatáu i'r system ddilysu defnyddwyr mewn Gweinydd "
-#~ "Cyfeiriadur Byw Windows"
-
-#~ msgid "Authentication LDAP"
-#~ msgstr "Dilysu LDAP"
-
-#~ msgid "TLS"
-#~ msgstr "TLS"
-
-#~ msgid "SSL"
-#~ msgstr "SSL"
-
-#~ msgid "security layout (SASL/Kerberos)"
-#~ msgstr "trefn diogelwch (SASL/Kerberos)"
-
-#~ msgid "Authentication Active Directory"
-#~ msgstr "Cyfeiriadur Byw Dilysu"
-
-#~ msgid "LDAP users database"
-#~ msgstr "Cronfa ddata defnyddwyr LDAP"
-
-#~ msgid "LDAP user allowed to browse the Active Directory"
-#~ msgstr "Defnyddiwr LDAP â chaniatâd i bori'r Cyfeiriadur Gweithredol"
-
-#~ msgid "Authentication NIS"
-#~ msgstr "Dilysu LDAP"
-
-#~ msgid ""
-#~ "For this to work for a W2K PDC, you will probably need to have the admin "
-#~ "run: C:\\>net localgroup \"Pre-Windows 2000 Compatible Access\" everyone /"
-#~ "add and reboot the server.\n"
-#~ "You will also need the username/password of a Domain Admin to join the "
-#~ "machine to the Windows(TM) domain.\n"
-#~ "If networking is not yet enabled, Drakx will attempt to join the domain "
-#~ "after the network setup step.\n"
-#~ "Should this setup fail for some reason and domain authentication is not "
-#~ "working, run 'smbpasswd -j DOMAIN -U USER%%PASSWORD' using your Windows"
-#~ "(tm) Domain, and Admin Username/Password, after system boot.\n"
-#~ "The command 'wbinfo -t' will test whether your authentication secrets are "
-#~ "good."
-#~ msgstr ""
-#~ "I hyn weithio gyda 2WK PDC, bydd angen i chi gael y gweinyddwr i redeg C:"
-#~ "\\>net localgroup \"Pre-Windows 2000 Compatible Access\" everyone /add ac "
-#~ "ailgychwyn y gweinydd. Bydd angen hefyd yr enw defnyddiwr/cyfrinair "
-#~ "Gweinyddiaeth Parth i uno'r peiriant â pharth Windows (NM).\n"
-#~ "Os nad yw'r rhwydwaith wedi ei alluogi eto, bydd DrakX yn ceisio ymuno "
-#~ "â'r parth ar ôl y cam o gychwyn y rhwydwaith.\n"
-#~ "Os bydd y cam hwn yn methu am ryw reswm ac nid yw dilysiad yn gweithio, "
-#~ "rhedwch 'smbpasswd -j DOMAIN -U USER%%PASSWORD' gan ddefnyddio eich Parth "
-#~ "Windows(NM), a'ch Enw Defnyddiwr Gweinyddol/Cyfrinair ar ôl cychwyn eich "
-#~ "system.\n"
-#~ "Bydd y gorchymyn 'wbinfo -t' yn gwirio a yw eich cyfrinachau dilysu'n "
-#~ "addas."
-
-#~ msgid "Authentication Windows Domain"
-#~ msgstr "Dilysu Parth Windows"
-
-#~ msgid "Undo"
-#~ msgstr "Dadwneud"
-
-#~ msgid "Save partition table"
-#~ msgstr "Cadw'r tabl rhaniad"
-
-#~ msgid "Restore partition table"
-#~ msgstr "Adfer y tabl rhaniad"
-
-#~ msgid ""
-#~ "The backup partition table has not the same size\n"
-#~ "Still continue?"
-#~ msgstr ""
-#~ "Nid yw'r tabl rhaniad wrth gefn yr un maint\n"
-#~ "Parhau?"
-
-#~ msgid "Info: "
-#~ msgstr "Gwybodaeth:"
-
-#~ msgid "Unknown driver"
-#~ msgstr "Gyrrwr anhysbys"
-
-#~ msgid "Error reading file %s"
-#~ msgstr "Gwall wrth ddarllen ffeil %s"
-
-#~ msgid "Restoring from file %s failed: %s"
-#~ msgstr "Methodd adfer o ffeil %s: %s"
-
-#~ msgid "Bad backup file"
-#~ msgstr "Ffeil wrth gefn gwallus"
-
-#~ msgid "Error writing to file %s"
-#~ msgstr "Gwall wrth ysgrifennu i ffeil %s"
-
-#~ msgid "Error: The \"%s\" driver for your sound card is unlisted"
-#~ msgstr "Gwall. Nid yw gyrrwr \"%s\" wedi ei restru"
-
-#~ msgid "Ext2"
-#~ msgstr "Ext2"
-
-#~ msgid "Journalised FS"
-#~ msgstr "FS jwrnaleiddiwyd"
-
-#~ msgid "Starts the X Font Server (this is mandatory for Xorg to run)."
-#~ msgstr "Yn cychwyn Gweinydd Ffont X (mae hyn yn orfodol i Xorg i redeg).."
-
-#~ msgid "Add user"
-#~ msgstr "Ychwanegu defnyddiwr"
-
-#~ msgid "Accept user"
-#~ msgstr "Derbyn defnyddiwr"
+#~ "Does dim modd defnyddio Cyfrol Resymegol LVM ar gyfer pwynt arosod %s am "
+#~ "ei fod ar draws cyfrolau ffisegol."
#, fuzzy
-#~ msgid ""
-#~ "Do not update directory inode access times on this filesystem\n"
-#~ "(e.g, for faster access on the news spool to speed up news servers)."
-#~ msgstr ""
-#~ "Peidiwch ddiweddaru amser mynediad inode ar y system ffeiliau\n"
-#~ "(e.e. ar gyfer mynediad cynt ar y cylch newyddion i gyflymu gweinyddion "
-#~ "newyddion)."
-
-#~ msgid "No supermount"
-#~ msgstr "Dim uwchosod"
-
-#~ msgid "Supermount"
-#~ msgstr "Uwchosod"
-
-#~ msgid "Supermount except for CDROM drives"
-#~ msgstr "Uwchosod heblaw am yrrwyr CDROM"
-
-#~ msgid "Rescue partition table"
-#~ msgstr "Achub y tabl rhaniadau"
-
-#~ msgid "Removable media automounting"
-#~ msgstr "Cyfrwng symudadwy'n awto-osod"
-
-#~ msgid "Trying to rescue partition table"
-#~ msgstr "Yn ceisio achub y tabl rhaniadau"
-
-#~ msgid "Accept/Refuse bogus IPv4 error messages."
-#~ msgstr "Caniatáu/Gwrthod negeseuon gwall IPv4 ffug."
-
-#~ msgid "Accept/Refuse broadcasted icmp echo."
-#~ msgstr "Caniatáu/Gwrthod darlledu atsain icmp."
-
-#~ msgid "Accept/Refuse icmp echo."
-#~ msgstr "Caniatáu/Gwrthod atsain icmp."
-
-#~ msgid "Allow/Forbid remote root login."
-#~ msgstr "Caniatáu/Gwrthod mewngofnodi gwraidd pell."
-
-#~ msgid "Enable/Disable IP spoofing protection."
-#~ msgstr "Galluogi/Analluogi amddiffyn sbwlio IP."
-
-#~ msgid "Enable/Disable libsafe if libsafe is found on the system."
-#~ msgstr "Galluogi/Analluogi libsafe os yw ar y system."
-
-#~ msgid "Enable/Disable the logging of IPv4 strange packets."
-#~ msgstr "Galluogi/Analluogi mewngofnodi pecynnau anarferol IPv4."
-
-#~ msgid "Enable/Disable msec hourly security check."
-#~ msgstr "Galluogi/Analluogi gwiriad diogelwch msec bob awr."
-
-#~ msgid "Number of capture buffers:"
-#~ msgstr "Nifer o fyfferau cipio:"
-
-#~ msgid "number of capture buffers for mmap'ed capture"
-#~ msgstr "nifer o fyfferau cipio ar gyfer cipio mmap"
-
-#~ msgid "PLL setting:"
-#~ msgstr "Gosodiad PLL:"
-
-#~ msgid "Radio support:"
-#~ msgstr "Cynnal radio:"
-
-#~ msgid " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
-#~ msgstr " [--skiptest] [--cups] [--lprng] [--lpd] [--pdq]"
+#~ msgid "You must have a Boot BIOS partition"
+#~ msgstr "Rhaid pennu rhaniad gwraidd"
diff --git a/perl-install/share/po/da.po b/perl-install/share/po/da.po
index 511f6ad3c..aee3d38ca 100644
--- a/perl-install/share/po/da.po
+++ b/perl-install/share/po/da.po
@@ -1,39 +1,43 @@
-# translation of da.po to Danish
-# translation of da1.po to
-# translation of da.po to
-# Copyright (C) 2000,2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
-# Troels Liebe Bentsen <tlb@iname.com> 2000.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
-# Keld Simonsen <keld@dkuug.dk>, 2000-2003, 2004, 2005, 2007, 2008, 2009.
-# Keld Simonsen <keld@rap.dk>, 2005, 2006.
-msgid ""
-msgstr ""
-"Project-Id-Version: da\n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2009-04-15 20:49+0200\n"
-"Last-Translator: Keld Simonsen <keld@dkuug.dk>\n"
-"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
+# Translators:
+# Carl Andersen <carl@black-pearl.dk>, 2015
+# Carl Andersen <carl@black-pearl.dk>, 2015
+# Carl Andersen <carl@black-pearl.dk>, 2015
+# Keld Simonsen <keld@dkuug.dk>, 2000-2003, 2004-2005,2007-2009
+# Keld Simonsen <keld@keldix.com>, 2010
+# Keld Simonsen <keld@rap.dk>, 2005-2006
+# scootergrisen, 2017-2018
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2018-11-04 20:04+0000\n"
+"Last-Translator: scootergrisen\n"
+"Language-Team: Danish (http://www.transifex.com/MageiaLinux/mageia/language/"
+"da/)\n"
+"Language: da\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "Vent venligst"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "Installation af systemopstarteren er i gang"
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -50,313 +54,293 @@ msgstr ""
"\n"
"Tildel en ny Volumen-ID?"
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr "Installation af opstarter mislykkedes. Den følgende fejl opstod:"
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"Du behøver måske at ændre din Åben Firmware opstartsenhed for at slå "
-"systemstarteren til. Hvis du ikke ser systemstarter-beskeden ved genstart, "
-"så hold Command-Option-O-F nede og indtast:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Skriv så: shut-down\n"
-"Ved næste opstart burde du se systemstarteren."
-
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
"Du besluttede at installere opstartsindlæseren på en partition.\n"
"Dette indikerer at du allerede har en opstartsindlæser på disken som du "
-"starter op fra (fx System Commander).\n"
+"starter op fra (f.eks.: System Commander).\n"
"\n"
"Hvilket drev starter du op fra?"
-#: any.pm:346
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr "Installation af systemopstarter"
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Hvor vil du placere opstartsprogrammet?"
+
+#: any.pm:365
#, c-format
msgid "First sector (MBR) of drive %s"
msgstr "Første sektor (MBR) på drev %s"
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "Første sektor på disken (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr "Første sektor af rodpartitionen"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "På diskette"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Spring over"
-#: any.pm:358
-#, c-format
-msgid "Bootloader Installation"
-msgstr "Installation af systemopstarter"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Hvor vil du placere opstartsprogrammet?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "Konfiguration af opstartsudseende"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr "EFI-systempartition"
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
msgstr "Systemopstarterens hovedindstillinger"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "Systemopstarter"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "Systemopstarter der skal bruges"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Opstartsenhed"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
msgstr "Hovedvalg"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
msgstr "Ventetid før opstart af forvalgt styresystem"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "Aktivér ACPI"
-#: any.pm:411
+#: any.pm:432
#, c-format
msgid "Enable SMP"
msgstr "Aktivér SMP"
-#: any.pm:412
+#: any.pm:433
#, c-format
msgid "Enable APIC"
msgstr "Aktivér APIC"
-#: any.pm:413
+#: any.pm:435
#, c-format
msgid "Enable Local APIC"
msgstr "Aktivér lokal APIC"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Sikkerhed"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Adgangskode"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Adgangskoderne stemmer ikke overens"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Prøv igen"
-#: any.pm:418
+#: any.pm:442
#, c-format
-msgid "You can not use a password with %s"
+msgid "You cannot use a password with %s"
msgstr "Du kan ikke bruge en adgangskode med %s"
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Adgangskode (igen)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
#, c-format
-msgid "Restrict command line options"
-msgstr "Begræns kommandolinie-indstillinger"
+msgid "Bootloader Configuration"
+msgstr "Konfiguration af opstarter"
+
+#: any.pm:532
+#, fuzzy, c-format
+msgid "Install Options"
+msgstr "Installation mislykkedes"
-#: any.pm:422
+#: any.pm:533
#, c-format
-msgid "restrict"
-msgstr "begræns"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr "Installér eller opdatér rEFInd i EFI-systempartitionen"
-#: any.pm:423
+#: any.pm:535 any.pm:794
+#, fuzzy, c-format
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr "Installer i /EFI/BOOT (alternativ løsning til nogle BIOS'er)"
+
+#: any.pm:537
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
msgstr ""
-"Indstillingen ``Begræns kommandolinie-indstillinger'' er intet værd uden\n"
-"en adgangskode"
-#: any.pm:425
+#: any.pm:539
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr "Rens /tmp ved hver systemopstart"
+msgid "Background"
+msgstr ""
-#: any.pm:434
+#: any.pm:544
#, c-format
-msgid "Init Message"
-msgstr "Init-besked"
+msgid "rEFInd banner"
+msgstr ""
-#: any.pm:436
+#: any.pm:545
+#, fuzzy, c-format
+msgid "Mageia theme"
+msgstr "Mageia"
+
+#: any.pm:546 any.pm:1602
#, c-format
-msgid "Open Firmware Delay"
-msgstr "Åben firmwareforsinkelse"
+msgid "Custom"
+msgstr "Tilpasset"
-#: any.pm:437
+#: any.pm:564
+#, fuzzy, c-format
+msgid "No scaling"
+msgstr "Ingen fildeling"
+
+#: any.pm:565
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Ventetid før kerneopstart"
+msgid "Scale to fit"
+msgstr ""
-#: any.pm:438
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
#, c-format
-msgid "Enable CD Boot?"
-msgstr "Skal det være muligt at starte fra CD?"
+msgid "Label"
+msgstr "Mærkat"
-#: any.pm:439
+#: any.pm:611 any.pm:619 any.pm:780
#, c-format
-msgid "Enable OF Boot?"
-msgstr "Skal det være muligt at starte fra OF?"
+msgid "Append"
+msgstr "Vedhæft"
-#: any.pm:440
+#: any.pm:612 any.pm:624 any.pm:781
#, c-format
-msgid "Default OS?"
-msgstr "Forvalgt styresystem?"
+msgid "Video mode"
+msgstr "Videoindstilling"
-#: any.pm:513
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "Billede"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Rod"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "Vedhæft"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr "Xen-tilføjning"
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Videoindstilling"
+msgid "Requires password to boot"
+msgstr "Kræver adgangskode for at starte op"
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Initrd"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "Netværksprofil"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "Mærkat"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Standard"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "Ingen video"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "Tom mærkat er ikke tilladt"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
msgstr "Du skal angive en kerne-fil"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "Du skal angive en root-partition"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "Denne mærkat er allerede brugt"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
-msgstr "Hvilken type ønsker du at tilføje"
+msgstr "Hvilken type ønsker du at tilføje?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Andet styresystem (SunOS...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Andet styresystem (MacOS...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "Andet styresystem (Windows...)"
-#: any.pm:621
-#, c-format
-msgid "Bootloader Configuration"
-msgstr "Konfiguration af opstarter"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -365,268 +349,329 @@ msgstr ""
"Her er følgende typer indgange.\n"
"Du kan tilføje flere eller ændre de eksisterende."
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr "Rør ikke ESP eller MBR"
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Advarsel"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+"Ikke installeret på ESP eller MBR betyder at installationen ikke er bootbar "
+"medmindre den kædeindlæses fra et andet OS!"
+
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr "Sondring af fremmede OS"
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "adgang til X-programmer"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "adgang til rpm-værktøjer"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "tillad \"su\""
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr "adgang til administrative filer"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "adgang til netværksværktøjer"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
msgstr "adgang til oversættelsesværktøjer"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(har allerede tilføjet %s)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "Indtast et brugernavn"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
-msgstr "Brugernavnet må kun indeholde små bogstaver, tal, `-' og `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
+msgstr ""
+"Brugernavnet skal starte et lille bogstav, efterfulgt kun af små bogstaver, "
+"tal, `-' og `_'"
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "Dette brugernavn er for langt"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
-msgstr "Dette brugernavn eksisterer allerede"
+msgstr "Dette brugernavn findes allerede"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
msgstr "Bruger-id"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
msgstr "Gruppe-id"
-#: any.pm:817
+#: any.pm:1086
#, c-format
msgid "%s must be a number"
msgstr "%s skal være et tal"
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
-msgstr "%s burde være over 500. Acceptér alligevel?"
+msgid "%s should be above 1000. Accept anyway?"
+msgstr "%s burde være over 1000. Acceptér alligevel?"
-#: any.pm:822
+#: any.pm:1091
#, c-format
msgid "User management"
msgstr "Administration af brugere"
-#: any.pm:828 authentication.pm:237
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr "Aktivér gæstekonto"
+
+#: any.pm:1099 authentication.pm:236
#, c-format
msgid "Set administrator (root) password"
msgstr "Sæt administrator (root) adgangskode"
-#: any.pm:833
+#: any.pm:1105
#, c-format
msgid "Enter a user"
msgstr "Indtast en bruger"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Ikon"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Rigtige navn"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
-msgstr "Logindnavn"
+msgstr "Loginnavn"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Skal"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr "Ekstra grupper:"
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
msgstr "Vent venligst, tilføjer medie..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
-msgstr "Autologin"
+msgstr "Automatisk login"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
"Jeg kan sætte din maskine op til automatisk at logge en bestemt bruger på."
-#: any.pm:916
+#: any.pm:1251
#, c-format
msgid "Use this feature"
msgstr "Brug denne facilitet"
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Vælg den forvalgte bruger:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
-msgstr "Vælg den vindueshåndtering du ønsker at benytte:"
+msgstr "Vælg den vindueshåndtering du vil køre:"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
msgstr "Udgivelsesnoter"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Luk"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Licensaftale"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Afslut"
-#: any.pm:1017
+#: any.pm:1343
#, c-format
msgid "Do you accept this license ?"
msgstr "Accepterer du denne licens?"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Acceptér"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
-msgstr "Nægt"
+msgstr "Afvis"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "Vælg det sprog, der skal bruges"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"Du kan vælge andre sprog der vil være tilgængelige efter installationen"
+"%s kan understøtte flere sprog. Vælg\n"
+"de sprog, du ønsker at installere. De vil være tilgængelige\n"
+"når installationen er færdig, og du genstarter dit system."
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
#, c-format
-msgid "Multi languages"
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
msgstr "Flere sprog"
-#: any.pm:1087 any.pm:1119
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr "Vælg flere sprog"
+
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr "Gammel kompatibilitetskoding (ikke UTF-8)"
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "Alle sprog"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "Sprogvalg"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
msgstr "Land / Region"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
msgstr "Vælg dit land"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
msgstr "Her er den komplette liste over tilgængelige lande"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "Andre lande"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Avanceret"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
msgstr "Indtastningsmetode:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Ingen"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "Ingen fildeling"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "Tillad alle brugere"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Tilpasset"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -640,7 +685,7 @@ msgstr ""
"Tilladelse af dette vil sætte brugere i stand til simpelthen at klikke på "
"'Fildeling' i konqueror og nautilus.\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
@@ -649,7 +694,7 @@ msgstr ""
"NFS: det traditionlle Unix fildelingssystem, med mindre funktionalitet på "
"Mac og Windows."
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
@@ -658,80 +703,135 @@ msgstr ""
"SMB: et fildelingssystem brugt på Windows, Mac OS X og mange moderne Linux-"
"systemer."
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
-msgstr "Du kan eksportere med NFS eller SMB. Hvilken vil du bruge"
+msgstr "Du kan eksportere med NFS eller SMB. Hvilken vil du bruge."
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "Start userdrake"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
"You can use userdrake to add a user to this group."
msgstr ""
-"Deling per bruger bruger gruppen 'fileshare'. \n"
+"Deling per bruger, bruger gruppen 'fileshare'. \n"
"Du kan bruge userdrake til at tilføje en bruger til denne gruppe."
-#: any.pm:1421
+#: any.pm:1768
#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
msgstr ""
-"Du skal logge ud og ind igen for at ændringerne skal gælde. Tryk O.k. for at "
-"logge ud nu."
+"Du skal logge ud og ind igen for at ændringerne skal gælde. Tryk på OK for "
+"at logge ud nu."
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr "Du skal logge ud og ind igen for at ændringerne skal gælde"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "Tidszone"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Hvad er din tidszone?"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
-msgstr "Dato-, klokke- og tidszoneopsætning"
+msgstr "Dato-, ur- og tidszoneopsætning"
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
-msgstr "Hvad er den bedste tid?"
+msgstr "Hvilken tid er bedst?"
-#: any.pm:1490
+#: any.pm:1837
#, c-format
msgid "%s (hardware clock set to UTC)"
-msgstr "%s (Maskin-ur sat til UTC)"
+msgstr "%s (hardware-ur sat til UTC)"
-#: any.pm:1491
+#: any.pm:1838
#, c-format
msgid "%s (hardware clock set to local time)"
-msgstr "%s (Maskin-ur sat til lokal tid)"
+msgstr "%s (hardware-ur sat til lokal tid)"
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "NTP-server"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "Automatisk tidssynkronisering (ved hjælp af NTP)"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "URL på spejlet?"
+
+#: any.pm:1880
+#, fuzzy, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "URL skal starte med ftp:// eller http://"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr "Kontakter %s' websted for at hente listen over tilgængelige spejle..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Vælg det spejl hvorfra pakkerne skal hentes"
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Annullér"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr ""
+
+#: any.pm:1982
+#, fuzzy, c-format
+msgid "Automatic"
+msgstr "Automatisk detektion"
+
+#: any.pm:1983
+#, fuzzy, c-format
+msgid "Specific"
+msgstr "Specificér parametre"
+
+#: any.pm:1988
+#, fuzzy, c-format
+msgid "Downloader"
+msgstr "Systemopstarter"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -752,7 +852,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr "Smart-kort"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Windows Domain"
@@ -762,23 +862,23 @@ msgstr "Windows Domain"
msgid "Kerberos 5"
msgstr "Kerberos 5"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "Lokal fil:"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr "Brug lokal for al autentifikation og brugerinformation i lokal fil"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
@@ -788,12 +888,12 @@ msgstr ""
"autentifikation. LDAP sammenfatter bestemte informationstyper i din "
"organization."
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
@@ -802,12 +902,12 @@ msgstr ""
"Giver dig mulighed for at køre en gruppe af maskiner i det samme Network "
"Information Service-domæne med en fælles adgangskode- og gruppe-fil."
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Windows Domain:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
@@ -816,149 +916,149 @@ msgstr ""
"Winbind lader systemet få information og autentificere brugere i et Windows-"
"domæne."
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr "Kerberos 5 :"
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
-msgstr "Med Kerberos og Ldap for autentifikation i Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
+msgstr "Med Kerberos og LDAP for autentifikation i Active Directory Server "
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
msgstr " "
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
#, c-format
msgid "Welcome to the Authentication Wizard"
msgstr "Velkommen tilguiden for autentificering"
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
"Du har valgt LDAP autentificering. Gennemse venligst "
-"konfigurationsmulighederne nedenfor."
+"konfigurationsmulighederne nedenfor"
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "LDAP-server"
-#: authentication.pm:113 authentication.pm:168
+#: authentication.pm:112 authentication.pm:167
#, c-format
msgid "Base dn"
msgstr "Grundlæggende dn"
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr "Hent grundlæggende Dn "
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
msgstr "Brug krypteret forbindelse med TLS "
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr "Hent CA-certifikat "
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
msgstr "Brug utilsluttet tilstand"
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
msgstr "Brug anonym BIND "
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
msgstr " "
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr "Bind DN "
-#: authentication.pm:123 authentication.pm:175
+#: authentication.pm:122 authentication.pm:174
#, c-format
msgid "Bind Password "
msgstr "Adgangskode for Bind"
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
msgstr "Avanceret sti for gruppe "
-#: authentication.pm:127
+#: authentication.pm:126
#, c-format
msgid "Password base"
msgstr "Adgangskodebase"
-#: authentication.pm:128
+#: authentication.pm:127
#, c-format
msgid "Group base"
msgstr "Gruppebase"
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
msgstr "Shadow base"
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
"Du har valgt Kerberos 5-autentificering. Gennemse venligst "
-"konfigurationsmulighederne nedenfor."
+"konfigurationsmulighederne nedenfor"
-#: authentication.pm:146
+#: authentication.pm:145
#, c-format
msgid "Realm "
msgstr "Omgivelser (Realm) "
-#: authentication.pm:148
+#: authentication.pm:147
#, c-format
msgid "KDCs Servers"
msgstr "KDCs-servere"
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
msgstr "Brug DNS til at finde KDC for realm"
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
msgstr "Brug DNS til at finde realms"
-#: authentication.pm:156
+#: authentication.pm:155
#, c-format
msgid "Use local file for users information"
msgstr "Brug lokal fil for brugerinformation"
-#: authentication.pm:157
+#: authentication.pm:156
#, c-format
-msgid "Use Ldap for users information"
-msgstr "Brug Ldap for brugerinformation"
+msgid "Use LDAP for users information"
+msgstr "Brug LDAP for brugerinformation"
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
@@ -967,112 +1067,107 @@ msgstr ""
"Du har valgt Kerberos 5-autentificering, nu skal du vælge information om "
"brugertype "
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
+msgid "Fetch base DN "
msgstr "Hent base Dn "
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
"Du har valgt NIS-autentificering. Gennemse venligst "
-"konfigurationsmulighederne nedenfor."
+"konfigurationsmulighederne nedenfor"
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "NIS-domæne"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "NIS-server"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
"Du har valgt Windows Domæne-autentificering. Gennemse venligst "
-"konfigurationsmulighederne nedenfor."
+"konfigurationsmulighederne nedenfor"
-#: authentication.pm:218
+#: authentication.pm:217
#, c-format
msgid "Domain Model "
msgstr "Domænemodel "
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
msgstr "Active Directory-område"
-#: authentication.pm:221
+#: authentication.pm:220
#, c-format
msgid "DNS Domain"
msgstr "DNS-domæne"
-#: authentication.pm:222
+#: authentication.pm:221
#, c-format
msgid "DC Server"
msgstr "DC-server"
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Identifikation"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "Autentifikationsmetode"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Ingen adgangskode"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
-msgstr ""
-"Denne adgangskode er for nemt at gætte (det skal mindst være på %d tegn)"
+msgstr "Denne adgangskode er for kort (det skal mindst være på %d tegn)"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
+msgid "Cannot use broadcast with no NIS domain"
msgstr "Kan ikke bruge rundkastning uden noget NIS-domæne"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Vælg fil"
-#: authentication.pm:897
+#: authentication.pm:882
#, c-format
msgid "Domain Windows for authentication : "
-msgstr "Domænevinduer for godkendelse:"
+msgstr "Domænevinduer for godkendelse: "
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
msgstr "Brugernavn for domæneadministrator"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Adgangskode for domæneadministrator"
-# NOTE: this message will be displayed at boot time; that is
-# only the ascii charset will be available on most machines
-# so use only 7bit for this message (and do transliteration or
-# leave it in English, as it is the best for your language)
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1081,48 +1176,53 @@ msgid ""
"wait for default boot.\n"
"\n"
msgstr ""
-"Velkommen til styresystems-vaelgeren!\n"
+"Velkommen til valg af styresystem!\n"
"\n"
-"Vaelg et styresystem i den ovenstaaende liste eller\n"
-"vent paa at starte standard-systemet.\n"
+"Vælg et styresystem i listen ovenfor eller\n"
+"vent på at starte standardsystemet.\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO med tekstmenu"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 med grafisk menu"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 med tekstmenu"
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr "GRUB med grafisk menu"
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr "GRUB med tekstmenu"
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr "rEFInd med grafisk menu"
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
-msgstr "SILO"
+msgid "U-Boot/Extlinux with text menu"
+msgstr "U-Boot/Extlinux med tekstmenu"
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
msgstr "Ikke nok plads i /boot"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr "Du kan ikke installere opstartsindlæseren på en %s-partition\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
@@ -1131,65 +1231,66 @@ msgstr ""
"Din opstartsindlæserkonfiguration behøver at opdateres da rækkefølgen på "
"dine partitioner er blevet ændret"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
"Opstartsindlæseren kan ikke blive installeret korrekt. Du skal lave "
"nødopstart og vælge \"%s\""
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
msgstr "Geninstallér systemopstarter"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "B"
msgstr "B"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
msgstr "Kb"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "Mb"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "Gb"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "Tb"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr "%02d:%02d"
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d minutter"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 minut"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d sekunder"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr "kommando %s mangler"
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1209,12 +1310,12 @@ msgstr ""
msgid "New"
msgstr "Ny"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Afmontér"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Montér"
@@ -1224,43 +1325,44 @@ msgstr "Montér"
msgid "Server"
msgstr "Server"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Monteringssti"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Valg"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Fjern"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Færdig"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Fejl"
@@ -1275,80 +1377,71 @@ msgstr "Indtast LRL for WebDAV-serveren"
msgid "The URL must begin with http:// or https://"
msgstr "URL'en skal begynde med http:// eller https://"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Advarsel"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Ønsker du at klikke på denne knap?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr "Er du sikker på, at du ønsker at slette dette monteringspunkt?"
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Server: "
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Monteringssti: "
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Valg: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "Opdeling af disk"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr "Klik på en partition, vælg en filsystemstype, og vælg så en handling"
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Læs omhyggeligt"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
msgstr "Lav gerne en sikkerhedkopi af dine data først"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Afslut"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Fortsæt"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Hjælp"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
@@ -1359,141 +1452,132 @@ msgstr ""
"Jeg foreslår at du først ændrer størrelsen på partitionen\n"
"(klik på den, og klik herefter på \"Størrelsesændring\")"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "Klik på en partition"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Detaljer"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
+msgid "No hard disk drives found"
msgstr "Ingen diskdrev fundet"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Ukendt"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432
#, c-format
-msgid "Ext3"
-msgstr "Ext3"
+msgid "Ext4"
+msgstr "Ext4"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "XFS"
msgstr "XFS"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Swap"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Andet"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Tom"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Filsystems-typer:"
-#: diskdrake/hd_gtk.pm:407
+#: diskdrake/hd_gtk.pm:461
#, c-format
msgid "This partition is already empty"
msgstr "Denne partition er allerede tom"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
-msgstr "Benyt ``Afmontér'' først"
+msgstr "Brug først ``Afmontér''"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "Benyt ``%s'' i stedet (i eksperttilstand)"
+msgstr "Brug i stedet ``%s'' (i eksperttilstand)"
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Type"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Vælg en ny partition"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Vælg en partition"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "Mere"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
#, c-format
msgid "Confirmation"
msgstr "Bekræftelse"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Fortsæt alligevel?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Afslut uden at gemme"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Afslut uden at skrive partitionstabellen?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
+msgid "Do you want to save the /etc/fstab modifications?"
msgstr "Ønsker du at gemme /etc/fstab-ændringerne?"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr "Du skal genstarte for at aktivere ændringerne i partitionstabellen"
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1501,46 +1585,46 @@ msgid ""
"Quit anyway?"
msgstr ""
"Du bør formatere partition %s.\n"
-"Ellers vil der ikke blive skrevet noget indgangspunkt for monteringspunktet %"
-"s i fstab.\n"
+"Ellers vil der ikke blive skrevet noget indgangspunkt for monteringspunktet "
+"%s i fstab.\n"
"Afslut alligevel?"
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Slet alt"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
msgstr "Allokér automatisk"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "Ekspert -> Normal"
+msgid "Normal mode"
+msgstr "Normal"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "Normal -> Ekspert"
+msgid "Expert mode"
+msgstr "Ekspert"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
+msgid "Hard disk drive information"
msgstr "Drev-information"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "Alle primære partitioner er brugt"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
+msgid "I cannot add any more partitions"
msgstr "Kan ikke tilføje flere partitioner"
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
@@ -1549,120 +1633,145 @@ msgstr ""
"For at du kan få flere partitioner, skal du slette én, så der kan oprettes "
"en udvidet partition"
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Genindlæs partitionstabel"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Detaljeret information"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
msgstr "Vis"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Størrelsesændring"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Formatér"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Tilføj til RAID"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Tilføj til LVM"
-#: diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:417
#, c-format
msgid "Use"
msgstr "Brug"
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Slet"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Fjern fra RAID"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Fjern fra LVM"
-#: diskdrake/interactive.pm:415
+#: diskdrake/interactive.pm:422
#, c-format
msgid "Remove from dm"
msgstr "Fjern fra dm"
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "Ændr RAID"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Loopback anvendelse"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Opret"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Flyt filer til den nye partition"
+msgstr "Kunne ikke montere partition"
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Opret en ny partition"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Startsektor: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Størrelse i Mb: "
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Filsystemstype: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Præference: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "Logisk arkivnavn "
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr "Kryptér partition"
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr "Krypteringsnøgle "
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Krypteringsnøgle (igen)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Krypteringsnøglerne stemmer ikke overens"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr "Mangler krypteringsnøgle"
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
@@ -1670,132 +1779,132 @@ msgstr ""
"(fordi du er oppe på det maksimale antal primære partitioner)\n"
"Fjern først en primær partition og opret en udvidet partition."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "Fjern loopback-filen?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr ""
"Efter type-ændring af partition %s vil alle data på denne partition gå tabt"
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Skift partitionstype"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Hvilket filsystem ønsker du at bruge?"
-#: diskdrake/interactive.pm:594
+#: diskdrake/interactive.pm:650
#, c-format
msgid "Switching from %s to %s"
msgstr "Skifter fra %s til %s"
-#: diskdrake/interactive.pm:624
+#: diskdrake/interactive.pm:685
#, c-format
msgid "Set volume label"
msgstr "Sæt volumen-etiket"
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr "Bemærk at dette vil blive skrevet til disk så snart du har valideret!"
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr "Bemærk at dette først vil blive skrevet til disk efter formatering!"
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr "Hvilken volumen-etiket?"
-#: diskdrake/interactive.pm:630
+#: diskdrake/interactive.pm:691
#, c-format
msgid "Label:"
msgstr "Mærkat:"
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "Hvor ønsker du at montere loopback-filen %s?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "Hvor ønsker du at montere partitionen %s?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
"Kan ikke fjerne monteringssti, da denne partition bliver brugt til "
"loopback.\n"
"Fjern loopback først"
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "Hvor ønsker du at montere %s?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
msgstr "Ændrer størrelsen"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "Udregner FAT-filsystemets grænser"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "Størrelsen på denne partition kan ikke ændres"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
+msgid "All data on this partition should be backed up"
msgstr "Det bør laves en backup af alle data på denne partition"
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr ""
"Efter ændring af størrelsen af partition %s vil alle data på denne partition "
"gå tabt"
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Vælg den nye størrelse"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "Ny størrelse i Mb: "
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr "Minimumsstørrelse: %s MB"
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr "Maksimumsstørrelse: %s MB"
-#: diskdrake/interactive.pm:805
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
@@ -1804,47 +1913,62 @@ msgstr ""
"For at sikre dataintegritet efter ændring af størrelse på partitioner \n"
"vil filsystemtjek blive kørt ved din næste opstart af Microsoft Windows®"
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Krypteringsnøgle for filsystem"
-#: diskdrake/interactive.pm:854
+#: diskdrake/interactive.pm:982
#, c-format
msgid "Enter your filesystem encryption key"
msgstr "Indtast din krypteringsnøgle for filsystemet"
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
msgstr "Krypteringsnøgle"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr "Ugyldig nøgle"
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
msgstr "Vælg en eksisterende RAID som skal udvides"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "ny"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Vælg en eksisterende LVM som skal udvides"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr "LVM-navn"
+
+#: diskdrake/interactive.pm:1045
#, c-format
-msgid "LVM name?"
-msgstr "LVM-navn?"
+msgid "Enter a name for the new LVM volume group"
+msgstr "Angiv et navn for den nye LVM-volumengruppe"
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr "'%s' findes allerede"
+
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr "Opsætter LVM"
+
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
@@ -1854,118 +1978,118 @@ msgstr ""
"Ønsker du at flytte brugte fysiske områder på dette volumen til andre "
"volumener?"
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr "Flytter fysiske områder"
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
+msgid "This partition cannot be used for loopback"
msgstr "Denne partition kan ikke bruges til loopback"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Loopback"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Loopback-filnavn: "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "Giv et filnavn"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr "Filen er allerede brugt af en anden loopback, vælg en anden fil"
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Filen findes allerede. Skal den bruges?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
msgstr "Modulindstillinger"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "Diverse"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "enhed"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "niveau"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
msgstr "fragmentstørrelse i KiB"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
msgstr "Vær forsigtig: denne operation er farlig."
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "Partitioning Type"
msgstr "Type af partitionering"
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "Hvilken slags partitionering?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr "Du skal genstarte maskinen for at aktivere ændringerne"
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
msgstr "Partitionstabellen for disk %s vil nu blive skrevet på disken"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
msgstr "Formaterer partition %s"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr ""
"Efter formatering af partitionen %s vil alle data på denne partition gå tabt"
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
+msgid "Check for bad blocks?"
msgstr "Led efter beskadigede blokke?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "Flyt filer til den nye partition"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Skjul filer"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -1982,128 +2106,127 @@ msgstr ""
"monteret der eller lade filerne blive der hvor de er (hvilket bevirker at de "
"bliver skjult af indholdet på den monterede partition)"
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
msgstr "Flytter filer til den nye partition"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
msgstr "Kopierer %s"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
msgstr "Fjerner %s"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "partition %s er nu kendt som %s"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr "Partitioner er blevet omnummererede: "
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Enhed: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
msgstr "Etikette for drev: "
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr "UUID: "
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "DOS-drevbogstav: %s (bare et gæt)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Type: "
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Navn: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Start: sektor %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr "Størrelse: %s (%s%% af disk)"
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Størrelse: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s sektorer"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "Cylinder %d til %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr "Antal logiske områder: %d\n"
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Formateret\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Ikke formateret\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Monteret\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1446
#, c-format
msgid "Encrypted"
msgstr "Krypteret"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
msgstr " (mappet på %s)"
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
msgstr " (til at mappe på %s)"
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr " (inaktiv)"
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2112,7 +2235,7 @@ msgstr ""
"Loopback-fil(er):\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2121,27 +2244,27 @@ msgstr ""
"Partition som opstartes som standard\n"
" (gælder kun MS-DOS-opstart, ikke LILO)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Niveau %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
msgstr "Fragmentstørrelse %d KiB\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "RAID-diske %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Loopback-filnavn: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2154,7 +2277,7 @@ msgstr ""
"en driver-partition. Du skal\n"
"nok bare lade den være.\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2167,68 +2290,63 @@ msgstr ""
"partition er for at\n"
"dual-boote dit system.\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr "Ledig plads på %s (%s)"
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Skrivebeskyttet"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Størrelse: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Opbygning: %s cylindre, %s hoveder, %s sektorer\n"
-#: diskdrake/interactive.pm:1351
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Navn: "
+
+#: diskdrake/interactive.pm:1492
#, c-format
msgid "Medium type: "
msgstr "Medietype: "
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "LVM-diske %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Partitionstabel-type: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "på kanal %d id %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
msgstr "Vælg din krypteringsnøgle for filsystemet"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
"Denne krypteringsnøgle er for nem at gætte (skal mindst være på %d tegn)"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "Krypteringsnøglerne stemmer ikke overens"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Krypteringsnøgle (igen)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
msgstr "Krypteringsalgoritme"
@@ -2238,17 +2356,9 @@ msgstr "Krypteringsalgoritme"
msgid "Change type"
msgstr "Skift type"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Annullér"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
+msgid "Cannot login using username %s (bad password?)"
msgstr "Kan ikke logge ind med brugernavn %s (forkert adgangskode?)"
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
@@ -2291,75 +2401,84 @@ msgstr "Søg efter servere"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
+msgid "Search for new servers"
msgstr "Søg efter nye servere"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
msgstr "Pakken %s skal være installeret. Ønsker du at installere den?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
msgstr "Kunne ikke installerer pakken %s!"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "Krævet pakke %s mangler"
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
-msgstr "De følgende pakker behøver at blive installeret\n"
+msgstr "Følgende pakker behøver at blive installeret:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
msgstr "Installerer pakker..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
msgstr "Fjerner pakker..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
"filesystems. Please check your hardware for the cause of this problem"
msgstr ""
-"Der er opstået en fejl - der kunne ikke findes nogen gyldige enheder, hvor "
-"der kan oprettes nye filsystemer. Undersøg din maskine for at finde årsagen "
-"til problemet"
+"Der opstod en fejl - der kunne ikke findes nogen gyldige enheder, hvor der "
+"kan oprettes nye filsystemer. Undersøg dit hardware for at finde årsagen til "
+"problemet"
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "Du skal have en FAT-partition monteret under /boot/efi"
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "Du skal have en ESP FAT32-partition monteret under /boot/EFI"
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+"Du skal have en BIOS-bootpartition til ikke-UEFI GPT-partitioneret diske. "
+"Opret venligst en inden du fortsætter."
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "Opretter og formaterer fil %s"
-#: fs/format.pm:119
+#: fs/format.pm:202
#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "Jeg véd ikke hvordan der skal sættes en etikette på %s som type %s"
+msgstr "Jeg ved ikke hvordan der skal sættes en etikette på %s som type %s"
-#: fs/format.pm:126
+#: fs/format.pm:214
#, c-format
msgid "setting label on %s failed, is it formatted?"
msgstr "Sætning af etikette på %s mislykkedes, er den formateret?"
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr "Ved ikke hvordan man formaterer %s som type %s"
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s formatering af %s mislykkedes"
@@ -2374,30 +2493,30 @@ msgstr "Cirkulære monteringer %s\n"
msgid "Mounting partition %s"
msgstr "Monterer partition %s"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "montering af partition %s i katalog %s mislykkedes"
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "Tjekker %s"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "fejl ved afmontering af %s: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "Formaterer swap-partition %s"
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
-msgstr "Brug et krypteret filsystem"
+msgid "Enable POSIX Access Control Lists"
+msgstr "Aktivér POSIX adgangskontrollister"
#: fs/mount_options.pm:116
#, c-format
@@ -2412,11 +2531,12 @@ msgstr "Aktivér kontering af gruppediskkvota, og indfør eventuelt grænser"
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
"Opdatér ikke inode tilgangstider på dette filsystem\n"
-"(fx for hurtigere adgang på nyhedskøen for at gøre nyhedsservere hurtigere)."
+"(f.eks. for hurtigere adgang på nyhedskøen for at gøre nyhedsservere "
+"hurtigere)."
#: fs/mount_options.pm:123
#, c-format
@@ -2425,27 +2545,28 @@ msgid ""
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
"Opdatér inode tilgangstider på dette filsystem på en mere effektiv måde\n"
-"(fx for hurtigere adgang på nyhedskøen for at gøre nyhedsservere hurtigere)."
+"(f.eks. for hurtigere adgang på nyhedskøen for at gøre nyhedsservere "
+"hurtigere)."
#: fs/mount_options.pm:126
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
"Kan kun monteres eksplicit (dvs.,\n"
"'-a' tilvalget vil ikke bevirke, at filsystemet monteres)."
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr "Fortolk ikke tegn- eller blok-specialenheder på filsystemet."
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
"Tillad ikke udførelse af nogen som helst binære på det monterede \n"
@@ -2466,22 +2587,22 @@ msgstr ""
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
-msgstr "Montér filsystem skrivebeskyttet"
+msgid "Mount the filesystem read-only."
+msgstr "Montér filsystem skrivebeskyttet."
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
+msgid "All I/O to the filesystem should be done synchronously."
msgstr "Al I/O til filsystemet bør gøres synkront."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
+msgid "Allow every user to mount and umount the filesystem."
msgstr "Tillad alle brugere at montere og afmontere filsystemet."
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
+msgid "Allow an ordinary user to mount the filesystem."
msgstr "Tillad en almindelig bruger at montere filsystemet."
#: fs/mount_options.pm:147
@@ -2504,32 +2625,32 @@ msgstr "Giv skriveadgang til almindelige brugere"
msgid "Give read-only access to ordinary users"
msgstr "Giv skriveadgang til almindelige brugere"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Duplikér monterings-sti %s"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
-msgstr "ingen ledige partitioner"
+msgstr "Ingen ledige partitioner"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
msgstr "Skanner partitioner for at finde monteringspunkter"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Vælg monterings-stierne"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
msgstr "Vælg partitioner der skal formateres"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
@@ -2538,119 +2659,86 @@ msgstr ""
"Kontrol af filsystem %s mislykkedes. Ønsker du at reparere fejlene (bemærk, "
"du kan miste data)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr "Ikke nok swap-plads til at gennemføre installationen, tilføj mere"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
"Du skal have en rod partition. For at få dette, lav en ny partition (eller "
"vælg en eksisterende).\n"
"Vælg så kommandoen \"Monterings-sti\" og sæt den til `/'"
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
"\n"
"Continue anyway?"
msgstr ""
-"Du har ingen Swap partition\n"
+"Du har ingen swap-partition.\n"
"\n"
"Fortsæt alligevel?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
-msgstr "Brug fri plads"
+msgstr "Brug ledig plads"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
-msgstr "Ikke nok fri plads til at tildele nye partitioner"
+msgstr "Ikke nok ledig plads til at tildele nye partitioner"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
msgstr "Brug eksisterende partition"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
msgstr "Der er ingen eksisterende partition der kan bruges"
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Brug Microsoft Windows® partitionen til Loopback"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Hvilken partition vil du benytte som Linux4Win?"
-
-#: fs/partitioning_wizard.pm:108
-#, c-format
-msgid "Choose the sizes"
-msgstr "Vælg størrelserne"
-
-#: fs/partitioning_wizard.pm:109
-#, c-format
-msgid "Root partition size in MB: "
-msgstr "Rod-partitions størrelse i Mb: "
-
-#: fs/partitioning_wizard.pm:110
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Swap-partitions størrelse i Mb: "
-
-#: fs/partitioning_wizard.pm:119
-#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-"Der er ingen FAT-partitioner at bruge som loopback (eller ikke nok plads "
-"tilbage)"
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "Beregner størrelsen på Microsoft Windows®-partitionen"
-#: fs/partitioning_wizard.pm:127
+#: fs/partitioning_wizard.pm:201
#, c-format
msgid "Use the free space on a Microsoft Windows® partition"
msgstr "Brug den frie plads på en Microsoft Windows ® partition"
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Hvilken partition ønsker du at ændre størrelse på?"
-#: fs/partitioning_wizard.pm:143
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
msgstr ""
-"Programmet til at ændre størrelse på FAT kan ikke behandle din partition, \n"
-"den følgende fejl opstod: %s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "Beregner størrelsen på Microsoft Windows®-partitionen"
+"Din Microsoft Windows® partition skal fragmenteres. Genstart computeren "
+"under Microsoft Windows®, og kør ``defrag'' værktøj, genstart derefter %s "
+"installation."
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:215
#, c-format
-msgid ""
-"Your Microsoft Windows® partition is too fragmented. Please reboot your "
-"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+msgid "Failed to find the partition to resize (%d choices)"
msgstr ""
-"Din Microsoft Windows® partition er for fragmenteret, kør 'defrag' først"
+"Det lykkedes ikke at finde partitionen at ændre størrelsen på (%d valg)"
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2661,8 +2749,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2675,7 +2763,7 @@ msgstr ""
"DrakX vil nu ændre størrelsen på din Windows-partition.\n"
"\n"
"Vær forsigtig: denne operation er farlig. Hvis du ikke allerede har gjort "
-"det, bør du først gå ud af denne installation, køre 'chkdsk c:' fra en "
+"det, bør du først gå ud af denne installation, køre 'chkdsk c:' fra en "
"kommandolinje under Windows (bemærk, det er ikke nok at køre det grafiske "
"program 'scandisk', vær sikker på at køre 'chkdsk' i en kommandolinje!) og "
"eventuelt defrag) og så genstarte installationen. Du bør også tage en "
@@ -2685,85 +2773,80 @@ msgstr ""
"Tryk på %s, hvis du er helt sikker."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Næste"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Partitionning"
msgstr "Opdeling af disk"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr ""
-"Hvilken størrelse ønsker du at at beholde Microsoft Windows® på partition %s?"
+"Hvilken størrelse ønsker du at beholde Microsoft Windows® på partition %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Størrelse"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "Udregner Microsoft Windows®-filsystemets grænser"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "FAT størrelsesændring mislykkedes: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"For at sikre dataintegritet efter ændring af størrelse på partitioner \n"
-"vil filsystemtjek blive kørt ved din næste opstart af Windows(TM)"
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr ""
"Der er ingen FAT-partitioner at ændre størrelse på (eller ikke nok plads "
"tilbage)"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Fjern Microsoft Windows®"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Erase and use entire disk"
msgstr "Slet hele disken og brug den"
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
-msgstr "Du har mere end et diskdrev, hvilken ønsker du at installere Linux på?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
+"Du har mere end en harddisk, hvilken ønsker du installationsprogrammet skal "
+"bruge?"
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr "Alle eksisterende partitioner og deres data vil gå tabt på drev %s"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
-msgstr "Brugerdefineret disk-opdeling"
+msgstr "Brugerdefineret diskopdeling"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Brug fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
@@ -2772,55 +2855,70 @@ msgstr ""
"Du kan nu partitionere %s.\n"
"Når du er færdig, så husk at gemme med 'w'"
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr "Ext2/3/4"
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
#, c-format
-msgid "I can not find any room for installing"
+msgid "I cannot find any room for installing"
msgstr "Kan ikke finde plads til installering"
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
-msgstr "DrakX partitionerings-vejlederen fandt de følgende løsninger:"
+msgstr "DrakX partitioneringsvejlederen fandt følgende løsninger:"
+
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr "Her er indholdet af dit diskdrev "
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Partitionering mislykkedes: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr "Du kan ikke bruge JFS på partitioner mindre end 16Mb"
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr "Du kan ikke bruge ReiserFS på partitioner mindre end 32Mb"
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr "Du kan ikke bruge btrfs partitioner på mindre end 256MB"
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "simpel"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "med /usr"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "server"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
-msgstr "BIOS-programmel RAID opdaget på diskene %s. Skal det aktiveres?"
+msgstr "BIOS-software RAID opdaget på diskene %s. Skal det aktiveres?"
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2829,371 +2927,393 @@ msgid ""
"Do you agree to lose all the partitions?\n"
msgstr ""
"Jeg kan ikke læse partitionstabellen for enhed %s, den er for ødelagt for "
-"mig :( Jeg kan forsøge fortsat at udblanke dårlige partitioner (ALLE DATA "
-"vil gå tabt!). Den anden mulighed er at forbyde DrakX at ændre "
+"mig :( Jeg kan forsøge at fortsætte ved at fjerne dårlige partitioner (ALLE "
+"DATA vil gå tabt!). Den anden mulighed er at forbyde DrakX at ændre "
"partitionstabellen. (fejlen er %s)\n"
"\n"
-"Er du indforstået med at ødelægge alle partitionerne?\n"
+"Er du indforstået med at miste alle partitionerne?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Monteringsstier skal begynde med /"
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr "Monteringspunkter bør kun indeholde bogstaver og tal"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Der findes allerede en partition med monterings-sti %s\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"Du har valgt en programmeret RAID-partition som rod (/).\n"
-"Ingen systemopstarter kan håndtere dette uden en /boot partition.\n"
-"Vær sikker på at tilføje en /boot partition"
+"Du har valgt en krypteret partition som root (/)\n"
+"Ingen bootloader er i stand til at håndtere dette uden en / boot-partition.\n"
+"Sørg for at tilføje en separat / boot-partition"
-#: fsedit.pm:437
+#: fsedit.pm:478 fsedit.pm:489
#, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr ""
-"Du kan ikke bruge LVM Logisk Volumen for monteringspunkt %s da det "
-"indeholder fysiske volumener"
-
-#: fsedit.pm:439
-#, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
-msgstr ""
-"Du har valgt LVM Logisk Volumenet som root-partition (/).\n"
-"Opstartsindlæseren er ikke i stand til at håndtere dette når volumet "
-"omfatter fysiske volumener.\n"
-"Du bør oprette en /boot-partition først"
+msgid "You cannot use an encrypted filesystem for mount point %s"
+msgstr "Du kan ikke bruge et krypteret filsystem for monteringspunkt %s"
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Dette katalog bør ligge på rod-filsystemet"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
-"Du skal have et rigtigt filsystem (ext2/ext3, reiserfs, xfs eller jfs) til "
+"Du skal have et rigtigt filsystem (ext2/3/4, reiserfs, xfs eller jfs) til "
"dette monteringspunkt\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr "Du kan ikke bruge et krypteret filsystem for monteringspunkt %s"
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
-msgstr "Ikke nok fri plads til at tildele nye partitioner automatisk"
+msgstr "Ikke nok ledig plads til at tildele nye partitioner automatisk"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
-msgstr "Ingenting at lave"
+msgstr "Intet at lave"
#: harddrake/data.pm:62
#, c-format
msgid "SATA controllers"
msgstr "SATA-kontrolkort"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "RAID-kontrolkort"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "(E)IDE/ATA kontrolkort"
-#: harddrake/data.pm:92
+#: harddrake/data.pm:93
#, c-format
msgid "Card readers"
msgstr "Kortlæsere"
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Firewire-kontrolkort"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "PCMCIA-kontrolkort"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "SCSI-kontrolkort"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "USB-kontrolkort"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
-msgstr "USB porte"
+msgstr "USB-porte"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "SMBus-kontrollers"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Broer og system-kontrolkort"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
msgstr "Diskette"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "Zip"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
msgstr "Hard Disk"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr "USB-lagerenheder"
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
-msgstr "cd-rom"
+msgstr "CDROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "CD/DVD-brændere"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
msgstr "Bånd"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "AGP-kontrolkort"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Videokort"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr "DVB-kort"
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "TV-kort"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "Andre multimedie-enheder"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
msgstr "Lydkort"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "Webcam"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "Processorer"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
msgstr "ISDN-kort"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr "USB-lydenheder"
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr "Radiokort"
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr "ATM-netværkskort"
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr "WAN-netværkskort"
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr "Bluetooth-enheder"
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
msgstr "Ethernet-kort"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Modem"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "ADSL-kort"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Hukommelse"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Printer"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr "Spilport-kontrollere"
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Joystick"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Tastatur"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr "Tablet og touchscreen"
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Mus"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr "Biometri"
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "UPS"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Skanner"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Ukendt|andre"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "cpu-nummer "
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, fuzzy, c-format
+msgid "Couldn't install the required packages"
+msgstr "Kunne ikke installerer pakken %s!"
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Vent venligst... Sætter konfigurationen i anvendelse"
+msgid "Please check the repositories are correctly configured"
+msgstr ""
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:462
#, c-format
-msgid "Enable PulseAudio"
-msgstr "Aktivér PulseAudio"
+msgid "No known driver"
+msgstr "Ingen kendt driverrutine"
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:463
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
-msgstr "Aktivér 5.1 lyd med Pulse Audio"
+msgid "There's no known driver for your sound card (%s)"
+msgstr "Der findes intet kendt drivprogram for lydkortet (%s)"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "Du skal logge ud og ind igen for at ændringerne skal gælde"
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:522
#, c-format
-msgid "Enable user switching for audio applications"
-msgstr "Aktivér brugerskift for programmer med lyd"
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
-#: harddrake/sound.pm:379
+#: harddrake/sound.pm:527
#, c-format
-msgid "Use Glitch-Free mode"
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
+
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "Starter X-skriftserveren."
+
+#: harddrake/sound.pm:551
+#, fuzzy, c-format
+msgid "PulseAudio"
+msgstr "Aktivér PulseAudio"
+
+#: harddrake/sound.pm:552
+#, fuzzy, c-format
+msgid "PulseAudio with Glitch-Free mode"
msgstr "Brug Glitch-fri tilstand"
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:553
+#, c-format
+msgid "PipeWire with WirePlumber"
+msgstr ""
+
+#: harddrake/sound.pm:554
+#, c-format
+msgid "PipeWire with PipeWire Media Session"
+msgstr ""
+
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
msgstr "Sæt lydmikser til standardværdier"
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:565
#, c-format
-msgid "Trouble shooting"
+msgid "Troubleshooting"
msgstr "Problemløsning"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:571
+#, fuzzy, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr "Dit kort bruger \"%s\"-driveren"
+
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "Intet alternativ drivprogram"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
@@ -3202,187 +3322,136 @@ msgstr ""
"Der findes intet kendt alternativt OSS/ALSA-drivprogram for lydkortet (%s) "
"som i øjeblikket bruger '%s'"
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Lyd-konfiguration"
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Her kan du vælge et alternativ drivprogram (enten OSS eller ALSA) for "
-"lydkortet (%s)"
+msgid "Sound troubleshooting"
+msgstr "Problemløsning omkring lyd"
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
"\n"
"\n"
-"Dit kort bruger i øjeblikket %s\"%s\"-driveren (normal driver for dit kort "
-"er \"%s\")"
-
-#: harddrake/sound.pm:414
-#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"OSS (Open Sound System) var den første lyd-API. Det er en OS-uafhængig lyd-"
-"API (den er tilgængelig på de fleste Unix(tm)-systemer), men den er en meget "
-"basal og begrænset API.\n"
-"Ydermere genopfandt alle OSS-drivere hjulet.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) er en modulær arkitektur som\n"
-"understøtter en ganske lang række ISA-, USB- og PCI-kort.\n"
"\n"
-"Den tilbyder også en meget højere API end OSS.\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"For at bruge ALSA kan man enten bruge:\n"
-"- den gamle OSS-kompatibilitetes-api\n"
-"- den nye ALSA API som tilbyder mange forbedrede faciliteter men som kræver "
-"brug af ALSA-biblioteket.\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Drivprogram:"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"Den gamle \"%s\"-driver er sortlistet.\n"
"\n"
-"Den er blevet rapporteret at lave fejl i kernen ved afslutningen.\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"Den nye \"%s\"-driver vil først blive brugt ved næste systemopstart."
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "Ingen open source driverrutine"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"Der findes ingen fri driver for lydkortet (%s) men der er en leverandørejet "
-"driver på '%s'"
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "Ingen kendt driverrutine"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "Der findes intet kendt drivprogram for lydkortet (%s)"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Problemløsning omkring lyd"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
"\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"Den klassiske metode for at fejlsøge lydopsætningten er at køre følgende\n"
-"kommandoer:\n"
+"Nedenfor er nogle grundlæggende tips til at hjælpe debug lydproblemer, men "
+"for præcis og up-to-date tips og tricks, se:\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" vil vise hvilken driver lydkortet "
-"bruger \n"
-"som standard\n"
-"- \"grep sound-slot /etc/modprobe.conf\" vil vise hvilken driver som er i "
-"brug\n"
"\n"
-"- \"/sbin/lsmod\" lader dig se om denne driver er indlæst\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" og \"/sbin/chkconfig --list alsa\" vil\n"
-"vise om disse tjenester er sat op til at startes.\n"
"\n"
-"- \"aumix -q\" vil vise om lyden er slukket ned eller ikke\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" vil vise hvilke programmer som bruger "
-"lydkortet\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "Lad mig vælge hvilkensomhelst driver"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Vælger en vilkårlig driver"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
-msgstr ""
-"Hvis du virkelig mener du véd hvilken driver der er den rette til dit kort "
-"kan du vælge én fra listen ovenfor.\n"
+"- Generel Anbefaling: Aktivér PulseAudio. Hvis du har valgt at ikke at bruge "
+"PulseAudio, vil vi på det kraftigste råde dig aktivere den. For langt de "
+"fleste af desktop bruger dette, PulseAudio er den anbefalede og bedst "
+"understøttet løsning.\n"
+"\n"
+"\n"
+"\n"
+"- \"Kmix\" (KDE), \"gnome-control-center lyd\" (GNOME) og "
+"\"pavucontrol\" (generisk) vil lancere grafiske programmer, så du kan se "
+"dine lydenheder og justere lydstyrken\n"
+"\n"
+"\n"
"\n"
-"Den aktuelle driver for dit %s-lydkort er \"%s\" "
+"- \"ps aux | grep pulseaudio\" vil checke at PulseAudio kører.\n"
+"\n"
+"\n"
+"\n"
+"- \"pactl stat\" vil kontrollere, at du kan oprette forbindelse til "
+"PulseAudio dæmonen korrekt.\n"
+"\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" vil fortælle dig den aktuelle tilstand "
+"af OSS Proxy Daemon. Dette bruges til at aktivere lyd fra ældre programmer, "
+"der anvender OSS lyd API. Du skal installere \"ossp\" pakken, hvis du har "
+"brug for denne funktionalitet.\n"
+"\n"
+"\n"
+"\n"
+"- \"pacmd ls\" vil give dig en masse debug oplysninger om den aktuelle "
+"status for din lyd.\n"
+"\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" vil fortælle dig, hvilke lavt niveau "
+"driver dit kort bruger som standard.\n"
+"\n"
+"\n"
+"\n"
+"- \"/usr/sbin/lsmod | grep snd\" vil gøre det muligt for dig at kontrollere, "
+"hvilke lyde relaterede kerne moduler (drivere) der er indlæst.\n"
+"\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" vil give dig en tekstbaseret mixer til det lave niveau "
+"ALSA mixer styringer til dit første lydkort\n"
+"\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" \n"
+"vil fortælle hvilke programmer der i øjeblikket bruger lydkortet direkte "
+"(normalt skulledette kun vise PulseAudio)\n"
#: harddrake/v4l.pm:12
#, c-format
@@ -3410,12 +3479,12 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
"For de fleste moderne tv-kort vil bttv-modulet fra GNU/Linux-kernen blot "
"automatisk finde de rette parametre.\n"
"Hvis dit kort ikke findes korrekt, kan du gennemtvinge den rette tuner og "
-"korttyper her. Bare vælg dit tv-korts parametre om nødvendigt"
+"korttyper her. Bare vælg dit tv-korts parametre om nødvendigt."
#: harddrake/v4l.pm:478
#, c-format
@@ -3427,70 +3496,73 @@ msgstr "Kortmodel:"
msgid "Tuner type:"
msgstr "Tuner-type:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
-msgstr "O.k."
+msgstr "Ok"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Ja"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "Nej"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Vælg en fil"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Tilføj"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Ændr"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Afslut"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Forrige"
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "Ingen fil valgt"
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "Du har valgt et katalog, ikke en fil"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "Ikke noget katalog"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "Ikke nogen fil"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
msgstr "Obs! 'Caps Lock' er aktiveret"
@@ -3551,8 +3623,8 @@ msgid ""
"or just hit Enter to proceed.\n"
"Your choice? "
msgstr ""
-"Vælg det første tal i 10-området som du ønsker at redigere,\n"
-"Eller tryk retur for at fortsætte.\n"
+"Vælg det første tal i 10-området som du vil redigere,\n"
+"Eller tryk på Enter for at fortsætte.\n"
"Dit valg? "
#: interactive/stdio.pm:144
@@ -3572,1249 +3644,1270 @@ msgstr "Indsend igen"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Andorra"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
msgstr "Forenede Arabiske Emirater"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Afghanistan"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Antigua og Barbuda"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Anguilla"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Albanien"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Armenien"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Hollandske Antiller"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Angola"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Antarktis"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Argentina"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
msgstr "Amerikansk Samoa"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Østrig"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Australien"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Aruba"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Aserbajdsjan"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Bosnien-Hercegovina"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Barbados"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Bangladesh"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Belgien"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Burkina Faso"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "Bulgarien"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Bahrain"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Burundi"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Benin"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Bermuda"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Brunei"
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Bolivia"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Brasilien"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Bahamas"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
msgstr "Bhutan"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Bouvet-øen"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Botswana"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "Hviderusland"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Belize"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Canada"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Kokosøerne"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Congo (Kinshasa)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "Centralafrikanske Republik"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Congo (Brazzaville)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Schweiz"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Elfenbenskysten"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Cooks øer"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Chile"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Cameroun"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "Kina"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Columbia"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Costa Rica"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Serbien & Montenegro"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Cuba"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Kap Verde"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
msgstr "Juleøerne"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Cypern"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Tjekkiet"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Tyskland"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Djibouti"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Danmark"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
msgstr "Dominica"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Dominikanske Republik"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Algeriet"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Ecuador"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Estland"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Egypten"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Vestlig Sahara"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Eritrea"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Spanien"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Etiopien"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Finland"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Fiji"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Falklandsøerne (Malvinas)"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Mikronesien"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Færøerne"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "Frankrig"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Gabon"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Storbritannien"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Grenada"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Georgien"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Fransk Guinea"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Ghana"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Gibraltar"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Grønland"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Gambia"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Guinea"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
msgstr "Guadeloupe"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Ækvatorialguinea"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Grækenland"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "Syd-Georgia og Syd-Sandwich-øerne"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Guatemala"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Guam"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Guinea-Bissau"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Guyana"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Kina (Hong Kong)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Heard- og McDonald-øerne"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Honduras"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Kroatien"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Haiti"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Ungarn"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "Indonesien"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Irland"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Israel"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Indien"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "British Indian Ocean Territory"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Irak"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Iran"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Island"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "Italien"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Jamaica"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "Jordan"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Japan"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Kenya"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Kirgisistan"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Cambodja"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Kiribati"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Comorerne"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "Saint Kitts og Nevis"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Korea (Nord)"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Korea"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Kuwait"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Caymanøerne"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Kazakhstan"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Lagos"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Libanon"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "Sankt Lucia"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Liechtenstein"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Sri Lanka"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Liberia"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Lesotho"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Litauen"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Luxemburg"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
msgstr "Letland"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Libyen"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Marokko"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Monaco"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Moldova"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Madagaskar"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Marshalløerne"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Makedonien"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Mali"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Myanmar"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Mongoliet"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Nordmarianerne"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Martinique"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Mauretanien"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Montserrat"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Malta"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Mauritius"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Maldiverne"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Malawi"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Mexico"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Malaysia"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Mocambique"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Namibia"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Ny Caledonien"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Niger"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Norfolk Øen"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Nigeria"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Nicaragua"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Holland"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Norge"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Nepal"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Nauru"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Niue"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "New Zealand"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Oman"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Panama"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Peru"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
msgstr "Fransk Polynesien"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Papua Ny Guinea"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Filippinerne"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Pakistan"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Polen"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "Sankt Pierre og Miquelon"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Pitcairn"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Puerto Rico"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Palæstina"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Portugal"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Paraguay"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Palau"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Qatar"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Réunion"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Rumænien"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Rusland"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Rwanda"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Saudi-Arabien"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Salomonøerne"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Seychellerne"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Sudan"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "Sverige"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Singapore"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Sankt Helena"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Slovenien"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
msgstr "Svalbard og Jan Mayen øerne"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Slovakiet"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "Sierra Leone"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "San Marino"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Senegal"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Somalia"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Surinam"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "São Tomé og Príncipe"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "El Salvador"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Syrien"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Swaziland"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Turks- og Caicosøerne"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Tchad"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
msgstr "Franske sydlige territorier"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Togo"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Thailand"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Tadzjikistan"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Tokelau"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Østtimor"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Turkmenistan"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Tunesien"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Tonga"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Tyrkiet"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Trinidad og Tobago"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Tuvalu"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Taiwan"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Tanzania"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Ukraine"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Uganda"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "Fjerne, mindre øer, USA"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
-msgstr "U.S.A."
+msgstr "USA"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Uruguay"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Uzbekistan"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Vatikansk"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "Sankt Vincent og Grenadinerne"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Venezuela"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Jomfruøerne (britiske)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "Jomfruøerne (USA)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Vietnam"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Vanuatu"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Wallis og Futuna"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Samoa"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
msgstr "Yemen"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Mayotte"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "Sydafrika"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Zambia"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Zimbabwe"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "Velkommen til %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
"Flytning af brugte fysiske områder til andre fysiske volumener lykkedes ikke"
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
msgstr "Fysisk volumen %s er stadig i brug"
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
msgstr "Fjern de logiske delarkiver først\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr "Opstartsindlæseren kan ikke håndtere /boot på flere fysiske volumer"
+#. -PO: Only write something if needed:
#: messages.pm:11
#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr " "
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Introduktion"
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+"Styresystemet og de forskellige komponenter som findes i Mageia-"
+"distributionen vil i det følgende blive kaldt \"softwareprodukter\". "
+"Softwareprodukterne inkluderer, men er ikke begrænset til: samlingen af "
+"værktøjer, metoder, regler og dokumentation relateret til styresystemet og "
+"de forskellige komponenter i Mageia-distributionen, og alle programmer "
+"distribueret med disse produkter leveret af mageias licenstagere eller "
+"leverandører."
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr "1. Licensaftale"
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4828,16 +4921,34 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+"Læs venligst dette dokument omhyggeligt. Dette dokument er en licensaftale "
+"mellem dig og Mageia, som gælder til softwareprodukterne. Ved at installere, "
+"kopiere eller bruge ethvert af disse softwareprodukter på nogen måde, "
+"accepterer du udtrykkeligt og accepterer fuldt ud at følge denne "
+"licensaftale med dens betingelser og regler. Hvis du er uenig i nogen som "
+"helst del af denne licens, har du ikke lov til at installere, kopiere eller "
+"bruge disse softwareprodukter. Hvilket som helst forsøg på at installere, "
+"kopiere eller bruge disse softwareprodukter på en måde som ikke er i "
+"overensstemmelse med betingelserne og reglerne i denne licens er ugyldig og "
+"vil ophæve dine rettigheder under denne licens. Ved ophævelse af licensen "
+"skal du med det samme ødelægge alle kopier af softwareprodukterne."
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr "2. Begrænset garanti"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4845,15 +4956,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4862,51 +4973,111 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
+"you."
+msgstr ""
+"Softwareprodukterne og tilhørende dokumentation leveres \"som de er\", uden "
+"nogen form for garanti, i den udstrækning lov tillader. Hverken Mageia eller "
+"deres licenstagere eller leverandører vil under ingen omstændigheder efter "
+"hvad loven foreskriver være ansvarlig for specielle, tilfældige, direkte "
+"eller indirekte tab af nogen art (inkluderende uden begrænsninger, skader "
+"ved tab af forretning, forstyrrelser af forretning, finansielle tab, "
+"advokatbistand, erstatninger som resultat af en retssag eller nogen anden "
+"form for følgetab) opstået under brugen eller mangel på samme af disse "
+"softwareprodukter, selv hvis Mageia er blevet gjort opmærksom på muligheden "
+"for eller indtræffelsen af sådanne skader.\n"
"\n"
+"BEGRÆNSET ANSVAR MED HENSYN TIL REGLER OM BESIDDELSE ELLER BRUG AF FORBUDT "
+"SOFTWARE I VISSE LANDE\n"
+"\n"
+"I den udstrækning som loven tillader vil Mageia eller deres distributører "
+"under ingen omstændigheder være ansvarlig for specielle, tilfældige, direkte "
+"eller indirekte tab af nogen art (inklusive uden begrænsninger skader ved "
+"tab af forretning, forstyrrelser af forretning, finansielle tab, "
+"advokatbistand, erstatninger som resultat af en retssag eller nogen anden "
+"form for tab) opstået ved besiddelse eller brug af softwarekomponenter eller "
+"opstået ved hentning af softwarekomponenter fra et af Mageia-webstederne som "
+"er forbudt eller begrænset i visse lande ved lokal lov. Dette begrænsede "
+"ansvar gælder, men er ikke begrænset til, de stærke krypteringskomponenter "
+"inkluderet i softwareprodukterne.\n"
+"Imidlertid kan denne begrænsning være ikke gældende for dig, idet nogen "
+"jurisdiktioner ikke tillader udelukkelse eller begrænsning af ansvar for "
+"følge- eller ulykkes-skader."
+
+#: messages.pm:68
+#, fuzzy, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr "3. GPL-licensen og relaterede licenser"
+
+#: messages.pm:70
+#, fuzzy, c-format
+msgid ""
"The Software Products consist of components created by different persons or "
-"entities. %s\n"
+"entities.\n"
"Most of these licenses allow you to use, duplicate, adapt or redistribute "
"the components which \n"
"they cover. Please read carefully the terms and conditions of the license "
"agreement for each component \n"
"before using any component. Any question on a component license should be "
"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
+"Software produkter består af komponenter lavet af forskellige personer eller "
+"enheder.\n"
+"De fleste af disse licenser tillader dig at bruge, kopiere, tilpasse eller "
+"videredistribuere de komponenter, som\n"
+"de dækker. Læs omhyggeligt de vilkår og betingelser i licensaftalen for hver "
+"komponent\n"
+"før du bruger noget komponent. Ethvert spørgsmål om en komponent licens skal "
+"rettes til den komponent\n"
+"licensgiver eller leverandør og ikke til Mageia\n"
+"Programmerne der er udviklet af Mageia reguleres af GPL licens. "
+"dokumentation skrevet\n"
+"af Mageia er underlagt \"%s\" Licens."
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr "4. Intellektuelle rettigheder"
+
+#: messages.pm:81
+#, c-format
+msgid ""
"All rights to the components of the Software Products belong to their "
"respective authors and are \n"
"protected by intellectual property and copyright laws applicable to software "
"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
+"Alle rettigheder til komponenterne i softwareproduktet tilhører deres "
+"respektive forfattere, og er beskyttet af intellektuelle rettigheds- og "
+"ophavsretslove, gældende for software. Mageia forbeholder sine rettigheder "
+"til at ændre eller tilpasse softwareprodukterne, helt eller delvist, med "
+"alle midler og til alle formål. \"Mageia\" samt de tilhørende logoer er "
+"varemærker for %s"
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr "5. Styrende love"
+
+#: messages.pm:90
+#, c-format
+msgid ""
"If any portion of this agreement is held void, illegal or inapplicable by a "
"court judgment, this \n"
"portion is excluded from this contract. You remain bound by the other "
@@ -4918,94 +5089,8 @@ msgid ""
"court. As a last \n"
"resort, the dispute will be referred to the appropriate Courts of Law of "
"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
+"For any question on this document, please contact Mageia."
msgstr ""
-"Introduktion\n"
-"\n"
-"Operativsystemet og de forskellige komponenter tilgængelige i Mandriva Linux "
-"distributionen vil herefter blive kaldt \"programmelprodukter\". "
-"Programmelprodukterne inkluderer, men er ikke begrænset til: samlingen af "
-"værktøjer, metoder, regler og dokumentation relateret til operativsystemet "
-"og de forskellige komponenter i Mandriva Linux-distributionen, og alle "
-"programmer distribueret med disse produkter leveret af mandrivas "
-"licenstagere eller leverandører.\n"
-"\n"
-"\n"
-"1. Licensaftale\n"
-"\n"
-"Læs venligst dette dokument omhyggeligt. Dette dokument er en licensaftale "
-"mellem dig og Mandriva S.A., som gælder til programmelprodukterne. Ved at "
-"installere, kopiere eller bruge ethvert af disse programmelprodukter på "
-"nogen måde, accepterer du udtrykkeligt og accepterer fuldt ud at følge denne "
-"licensaftale med dens betingelser og regler. Hvis du er uenig i "
-"nogensomhelst del af denne licens, har du ikke lov til at installere, "
-"kopiere eller bruge disse programmelprodukter. Hvilket som helst forsøg på "
-"at installere, kopiere eller bruge disse programmelprodukter på en måde som "
-"ikke er i overensstemmelse med betingelserne og reglerne i denne licens er "
-"ugyldig og vil ophæve dine rettighedder under denne licens. Ved ophævelse af "
-"licensen skal du med det samme ødelægge alle kopier af "
-"programmelprodukterne.\n"
-"\n"
-"\n"
-"2. Begrænset garanti\n"
-"\n"
-"Programmelprodukterne og tilhørende dokumentation leveres \"som de er\", "
-"uden nogen form for garanti, i den udstrækning lov tillader. Hverken "
-"Mandriva S.A. eller deres licenstagere eller leverandører vil under ingen "
-"omstændigheder efter hvad loven foreskriver være ansvarlig for specielle, "
-"tilfældige, direkte eller indirekte tab af nogen art (inkluderende uden "
-"begrænsninger, skader ved tab af forretning, forstyrrelser af forretning, "
-"finansielle tab, advokatbistand, erstatninger som resultat af en retssag "
-"eller nogen anden form for følgetab) opstået under brugen eller mangel på "
-"samme af disse programmelprodukter, selv hvis Mandriva S.A. er blevet gjort "
-"opmærksom på muligheden for eller indtræffelsen af sådanne skader.\n"
-"\n"
-"BEGRÆNSET ANSVAR MED HENSYN TIL REGLER OM BESIDDELSE ELLER BRUG AF FORBUDT "
-"PROGRAMMEL I VISSE LANDE\n"
-"\n"
-"I den udstrækning som loven tillader vil Mandriva S.A. eller deres "
-"distributører under ingen omstændigheder være ansvarlig for specielle, "
-"tilfældige, direkte eller indirekte tab af nogen art (inklusive uden "
-"begrænsninger skader ved tab af forretning, forstyrrelser af forretning, "
-"finansielle tab, advokatbistand, erstatninger som resultat af en retssag "
-"eller nogen anden form for tab) opstået ved besiddelse eller brug af "
-"programmelkomponenter eller opstået ved hentning af programmelkomponenter "
-"fra et af Mandriva Linux-webstederne som er forbudt eller begrænset i visse "
-"lande ved lokal lov. Dette begrænsede ansvar gælder, men er ikke begrænset "
-"til, de stærke krypteringskomponenter inkluderet i programmelprodukterne.\n"
-"Imidlertid kan denne begrænsning være ikke gældende for dig, idet nogen "
-"jurisdiktioner ikke tillader udelukkelse eller begrænsning af ansvar for "
-"følge- eller ulykkes-skader. \n"
-"%s\n"
-"\n"
-"3. GPL-licensen og relaterede licenser\n"
-"\n"
-"Programmelprodukterne består af komponenter lavet af forskellige personer "
-"eller enheder. %s\n"
-"De fleste af disse komponenter bliver reguleret efter vilkårene og aftalerne "
-"i GNU General Public License, herefter kaldet \"GPL\", eller lignende "
-"licenser. De fleste af disse licenser tillader dig at bruge, kopiere, "
-"tilpasse eller videredistribuere komponenterne, de dækker. Læs venligst "
-"vilkårene og betingelserne i licensaftalen for hver komponent omhyggeligt "
-"før du bruger den. Alle spørgsmål angående en komponent bedes adresseret til "
-"komponentens forfatter og ikke til Mandriva. Programmerne udviklet af "
-"Mandriva S.A. bliver reguleret efter GPL-licensen. Dokumentationen skrevet "
-"af Mandriva S.A. bliver reguleret efter en specifik licens. Referér venligst "
-"til dokumentationen for yderligere detaljer.\n"
-"\n"
-"\n"
-"4. Intellektuelle rettigheder\n"
-"\n"
-"Alle rettigheder til komponenterne i programmelproduktet tilhører deres "
-"respektive forfattere, og er beskyttet af intellektuelle rettigheds- og "
-"ophavsretslove, gældende for programmel. Mandriva S.A. forbeholder sine "
-"rettigheder til at ændre eller tilpasse programmelprodukterne, helt eller "
-"delvist, med alle midler og til alle formål. \"Mandriva\", \"Mandriva Linux"
-"\" samt de tilhørende logoer er varemærker for Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Styrende love\n"
-"\n"
"Hvis dele af denne aftale bliver kendt ugyldig, ulovlig eller ubrugelig ved "
"en domstolsafgørelse, vil disse dele blive ekskluderet fra denne kontrakt. "
"Du vil forblive bundet af de andre gældende dele af aftalen. Vilkårene og "
@@ -5013,233 +5098,54 @@ msgstr ""
"vedrørende vilkårene i denne licens vil fortrinsvist blive løst udenfor "
"domstolene. Som en sidste udvej vil uenighederne blive håndteret ved den "
"rette domstol i Paris, Frankrig. Ved spørgsmål omkring dette dokument, "
-"kontakt venligst Mandriva S.A."
+"kontakt venligst Mageia."
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-"Du er enig i ikke at (i) sælge, eksportere, re-eksportere, overføre, "
-"videregive, afsløre tekniske data, eller \n"
-"kassere, noget som helst programmel til nogen person, enhed, eller "
-"destination forbudt af USA's eksportlove \n"
-"eller reguleringer inklusive, uden begrænsninger, Cuba, Iran, Nordkorea, "
-"Sudan og Syrien; eller \n"
-"(ii) bruge noget programmel for nogen som helst brug forbudt ved lov eller "
-"reguleringer i USA.\n"
-"\n"
-"BEGRÆNSEDE RETTIGHEDER FOR USAS REGERING. \n"
-"\n"
-"Programmelprodukterne og al tilhørende dokumentation er og skal anses for at "
-"være henholdsvis\n"
-"\"kommercielt programmel\" og \"kommerciel programmel-dokumentation,\", \n"
-"som defineret i DFAR 252.227-7013 og som beskrevet i FAR 12.212. Enhver "
-"brug, ændring, reproduktion, \n"
-"udgivelse, ydelse, fremvisning eller afsløring af programmel eller "
-"tilhørende dokumentation \n"
-"fra USAs regering skal styres udelukkende af betingelserne i denne aftale og "
-"alle andre \n"
-"relevante licensaftaler og skal være forbudt undtagen som udtrykkeligt "
-"tilladt af betingelserne i \n"
-"denne aftale."
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-"De fleste af disse komponenter, men undtagen programmerne og programmellet "
-"leveret af Google Inc. eller \n"
-"dets datterselskaber (\"Google Software\"), er styret af termerne og "
-"betingelserne i GNU \n"
-"General Public Licence, herefter kaldet \"GPL\", eller af lignende licenser."
-
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-"De fleste af disse komponenter er underlagt betingelserne i licensen GNU \n"
-"General Public Licence, herefter kaldet \"GPL\", eller lignende licenser."
-
-# Mangler
-#: messages.pm:112
-#, c-format
+#: messages.pm:102
+#, fuzzy, c-format
msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
-msgstr ""
-"Advarsel: Frit programmel er ikke nødvendigvis fri for patenter, og noget af "
-"det inkluderede frie programmel er muligvis dækket af patenter i dit land. "
-"For eksempel kan de inkluderede MP3-dekoder kræve en licens til yderligere "
-"brug (se http://www.mp3licensing.com for flere detaljer) Hvis du er usikker "
-"om et patent kan vedrøre dig, så tjek din lokale lovgivning."
-
-#: messages.pm:120
-#, c-format
-msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
-msgstr ""
-"6. Yderligere regler der gælder for programmelprodukter leveret af Google "
-"Inc. (\"Google Programmel\")\n"
-"\n"
-"(a) Du anerkender at Google eller tredjemand ejer alle rettigheder, navn og "
-"interesser i og for Google \n"
-"Programmellet, dele deraf, eller programmel leveret gennem eller sammen med "
-"Google Programmellet, inklusive\n"
-"uden begrænsninger alle intellektuelle rettigheder. \"Intellektuelle "
-"rettigheder\" betyder enhver rettighed \n"
-"som eksister fra tid til anden under patentlovgivning, ophavsretlov, "
-"forretningshemmelighedsret, varemærkelovgivning, konkurrencelov \n"
-", database rettigheder og alle andre proprietære rettigheder, og alle "
-"programmer,\n"
-" fornyelser, udvidelser og genetableringer deraf, nu og fremover gældende "
-"over hele verdenen.\n"
-"Du samtykker i ikke at ændre, tilpasse \n"
-"oversætte, fremstille afledede værker derfra, dekompilere, reverse "
-"engineere, spltte ad, eller på anden måde forsøge at lave kildetekst \n"
-"fra Google programmellet. Du samtykker også i ikke at fjerne, forkludre "
-"eller ændre Google's eller nogen tredjemands \n"
-"ophavsretanmærkning, varemærker, eller andre proprietære "
-"rettighedsanmærkninger tilknyttet eller indeholdt i eller refereret sammen "
-"med eller \n"
-"gennem Google Programmellet. \n"
-"\n"
-"(b) Google Programmellet er gjort tilgængeligt for dig udelukkende for din "
-"personlige ikke-kommercielle brug.\n"
-"Du må ikke bruge Google Programmellet på nogen måde som kunne skade, "
-"deaktivere, overbebyrde, eller begrænse Google's \n"
-"søgetjenester (fx du må ikke bruge Google Programmellet på en automatiseret "
-"måde), ej heller må du bruge Google \n"
-"Programmellet på nogen måde der kunne påvirke nogen anden parts brug og "
-"glæde for Google's søgetjenester\n"
-"eller tjenester og produkter fra tredjeparts licenshavere af Google "
-"Programmellet.\n"
-"\n"
-"(c) Noget af Google Programmellet er designet tilat blive brugt sammen med "
-"Google's søge- og andre tjenester.\n"
-"Følgelig er din brug af sådant Google Programmel også defineret af Google's "
-"betingelse for tjenester der findes på \n"
-"http://www.google.com/terms_of_service.html og Google's Toolbar Privacy "
-"Policy der findes på \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. og alle dets datterselskaber og samarbejdspartnere er "
-"tredjeparts begunstigede for denne kontrakt \n"
-"og kan håndhæve dens betingelser."
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
+msgstr ""
+"Advarsel: Fri software er ikke nødvendigvis fri for patenter, og noget af "
+"det inkluderede fri software er muligvis dækket af patenter i dit land. For "
+"eksempel kan de inkluderede MP3-dekoder kræve en licens til yderligere brug "
+"(se http://www.mp3licensing.com for flere detaljer) Hvis du er usikker om et "
+"patent kan vedrøre dig, så tjek din lokale lovgivning."
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
-#, c-format
+#: messages.pm:112
+#, fuzzy, c-format
msgid ""
"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
-"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"Remove the installation medium and press Enter to reboot."
msgstr ""
"Tillykke, installationen er færdig.\n"
-"Fjern boot-mediet og tryk retur for at genstarte.\n"
-"\n"
-"\n"
-"For information om rettelser til denne udgivelse af Mandriva Linux, se "
-"Errata på:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information om konfigurering af dit system kan du finde i kapitlet om efter-"
-"installation i den Officielle Mandriva Linux Brugervejledning."
+"Fjern boot-mediet, og tryk på Enter for at genstarte."
+
+#: messages.pm:114
+#, c-format
+msgid ""
+"For information on fixes which are available for this release of Mageia,\n"
+"consult the Errata available from:\n"
+"%s"
+msgstr ""
+"For information om rettelser til denne udgivelse af Mageia, se Errata på:\n"
+"%s"
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
+"Efter genstart og logget ind Mageia, vil du se Mageia velkomstskærmen.\n"
+"Den er fuld af mange nyttige oplysninger og links."
#: modules/interactive.pm:19
#, c-format
@@ -5259,7 +5165,7 @@ msgstr "Du kan konfigurere hver parameter for modulet her."
#: modules/interactive.pm:64
#, c-format
msgid "Found %s interfaces"
-msgstr "Fandt %s grænsesnit"
+msgstr "Fandt %s grænseflade"
#: modules/interactive.pm:65
#, c-format
@@ -5269,12 +5175,12 @@ msgstr "Har du én til?"
#: modules/interactive.pm:66
#, c-format
msgid "Do you have any %s interfaces?"
-msgstr "Har du nogen %s grænsesnit?"
+msgstr "Har du nogen %s grænseflade?"
#: modules/interactive.pm:72
#, c-format
msgid "See hardware info"
-msgstr "Se info for maskinel"
+msgstr "Se hardwareinfo"
#: modules/interactive.pm:83
#, c-format
@@ -5283,18 +5189,18 @@ msgstr "Installerer driver for USB-kort"
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "Installerer driver for firewire-kort %s"
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "Installerer driver for firewire-kort \"%s\""
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "Installerer driver for disk-styreenhed %s"
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "Installerer driver for disk-styreenhed \"%s\""
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "Installerer driver for ethernet-styreenhed %s"
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "Installerer driver for ethernet-styreenhed \"%s\""
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
@@ -5315,7 +5221,7 @@ msgid ""
"Note that any address should be entered with the prefix 0x like '0x123'"
msgstr ""
"Du kan nu angive parametre til modul %s.\n"
-"Bemærk at alle adresser bør indtastes med foranstillet 0x, fx '0x123'"
+"Bemærk at alle adresser bør indtastes med foranstillet 0x, såsom '0x123'"
#: modules/interactive.pm:117
#, c-format
@@ -5378,35 +5284,35 @@ msgstr ""
"Indlæsning af modul %s mislykkedes.\n"
"Ønsker du at prøve igen med andre parametre?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr "Er du sikker på, at du vil afslutte?"
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
-msgstr ""
+msgstr "Adgangskode er nem at gætte"
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
-msgstr ""
+msgid "Password should be resistant to basic attacks"
+msgstr "Adgangskode bør kunne modstå basale angreb"
-#: mygtk2.pm:1541 mygtk2.pm:1542
-#, fuzzy, c-format
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
+#, c-format
msgid "Password seems secure"
-msgstr "Adgangskodebase"
+msgstr "Adgangskode ser sikker ud"
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "montering mislykkedes: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Udvidet partition ikke understøttet på denne platform"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
@@ -5414,10 +5320,10 @@ msgstr ""
"Den eneste løsning er at flytte dine primære partitioner, således at\n"
"\"hullet\" bliver placeret ved siden af de udvidede partitioner."
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
@@ -5426,22 +5332,22 @@ msgstr ""
"En test for at tjekke integriteten af data er mislykkedes. \n"
"Dette betyder at alt på disken vil ende som tilfældige beskadigede data."
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr "Fjernelse af ubrugte pakker"
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
msgstr "Finder ubrugte pakker til udstyr..."
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
msgstr "Finder ubrugte pakker til sprog..."
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
@@ -5449,63 +5355,63 @@ msgid ""
msgstr ""
"Vi har opdaget at nogen pakker ikke behøves til din systemkonfiguration."
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
-msgstr "Vi vil fjerne de følgende pakker, med mindre du vælger noget andet:"
+msgstr "Vi vil fjerne følgende pakker, med mindre du vælger noget andet:"
-#: pkgs.pm:269 pkgs.pm:270
+#: pkgs.pm:289 pkgs.pm:290
#, c-format
msgid "Unused hardware support"
-msgstr "Ubrugt understøttelse af maskinel"
+msgstr "Ubrugt hardware-understøttelse"
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr "Ubrugt sprogtilpasning"
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
+msgid "Cannot add a partition to _formatted_ RAID %s"
msgstr "Kan ikke tilføje en partition til _formatéret_ RAID %s"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
-msgstr "Ikke nok partitioner til at benytte RAID level %d\n"
+msgstr "Ikke nok partitioner til at bruge RAID-niveau %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "Kunne ikke oprette kataloget /usr/share/sane/firmware!"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "Kunne ikke oprette lænken /usr/share/sane/%s!"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr "Kunne ikke kopiere firmware-fil %s til /usr/share/sane/firmware!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
msgstr "Kunne ikke sætte tilladelser på firmwarefil %s!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "Skannerdrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr ""
"Kunne ikke installere de nødvendige pakker til deling af dine skannere."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
msgstr ""
@@ -5519,7 +5425,7 @@ msgstr "Acceptér falske IPv4-fejlmeddelelser."
#: security/help.pm:13
#, c-format
msgid "Accept broadcasted icmp echo."
-msgstr "Acceptér rundkastet icmp echo"
+msgstr "Acceptér rundkastet icmp echo."
#: security/help.pm:15
#, c-format
@@ -5529,7 +5435,7 @@ msgstr "Acceptér icmp echo."
#: security/help.pm:17
#, c-format
msgid "Allow autologin."
-msgstr "Tillad autologind."
+msgstr "Tillad automatisk login."
#. -PO: here "ALL" is a value in a pull-down menu; translate it the same as "ALL" is
#: security/help.pm:21
@@ -5555,12 +5461,12 @@ msgstr "Tillad genstart via konsolbruger."
#: security/help.pm:29
#, c-format
msgid "Allow remote root login."
-msgstr "Tillad ekstern root-logind."
+msgstr "Tillad ekstern root-login."
#: security/help.pm:31
#, c-format
msgid "Allow direct root login."
-msgstr "Tillad direkte root-logind."
+msgstr "Tillad direkte root-login."
#: security/help.pm:33
#, c-format
@@ -5623,8 +5529,8 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
"Autorisér:\n"
"\n"
@@ -5683,7 +5589,7 @@ msgid ""
"Enable name resolution spoofing protection. If\n"
"\"%s\" is true, also reports to syslog."
msgstr ""
-"Aktivér beskyttelse mod spoofning af navneopslag. Hvis\n"
+"Aktivér beskyttelse mod spoofning af navneopslag. Hvis\n"
"'%s' er sand rapporteres også til syslog."
#: security/help.pm:80
@@ -5709,7 +5615,7 @@ msgstr "Aktivér logning af mærkelige IPv4-pakker."
#: security/help.pm:88
#, c-format
msgid "Enable msec hourly security check."
-msgstr "Aktivér msec timevis sikkerhedskontrol"
+msgstr "Aktivér msec timevis sikkerhedskontrol."
#: security/help.pm:90
#, c-format
@@ -5727,7 +5633,7 @@ msgstr "Brug adgangskode til at autentificere brugere."
#: security/help.pm:94
#, c-format
-msgid "Activate ethernet cards promiscuity check."
+msgid "Activate Ethernet cards promiscuity check."
msgstr "Aktivér åbenhedstjek på ethernetkort."
#: security/help.pm:96
@@ -5767,7 +5673,7 @@ msgid ""
"number of capitalized letters."
msgstr ""
"Sæt mindste længde for adgangskoder, mindste antal cifre og mindste antal "
-"store bogstaver "
+"store bogstaver."
#: security/help.pm:108
#, c-format
@@ -5807,8 +5713,7 @@ msgstr ""
#: security/help.pm:118
#, c-format
msgid "if set to yes, check if the network devices are in promiscuous mode."
-msgstr ""
-"hvis sat til ja, så tjek om netværksgrænsesnittene er fuldstændigt åbne."
+msgstr "hvis sat til ja, så tjek om netværksenhederne er fuldstændigt åbne."
#: security/help.pm:119
#, c-format
@@ -5861,12 +5766,12 @@ msgstr ""
#: security/help.pm:128
#, c-format
msgid "if set to yes, report check result by mail."
-msgstr "hvis sat til ja, så rapportér kontrolresultat per epost."
+msgstr "hvis sat til ja, så rapportér kontrolresultat per e-mail."
#: security/help.pm:129
#, c-format
msgid "Do not send mails if there's nothing to warn about"
-msgstr "Send ikke epost med mindre der er noget at advare om"
+msgstr "Send ikke e-mail med mindre der er noget at advare om"
#: security/help.pm:130
#, c-format
@@ -5902,12 +5807,12 @@ msgstr "Enhed for tidsafbrud er sekunder"
#: security/help.pm:138
#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "Sæt brugerens maske (umask) for filoprettelse"
+msgstr "Sæt brugerens maske (umask) for filoprettelse."
#: security/l10n.pm:11
#, c-format
msgid "Accept bogus IPv4 error messages"
-msgstr "Acceptér falske IPv4-fejlmeddelelser."
+msgstr "Acceptér falske IPv4-fejlmeddelelser"
#: security/l10n.pm:12
#, c-format
@@ -5922,7 +5827,7 @@ msgstr "Acceptér icmp echo"
#: security/l10n.pm:15
#, c-format
msgid "/etc/issue* exist"
-msgstr "/etc/issue* eksisterer"
+msgstr "/etc/issue* findes"
#: security/l10n.pm:16
#, c-format
@@ -5932,17 +5837,17 @@ msgstr "Genstart af konsolbrugeren"
#: security/l10n.pm:17
#, c-format
msgid "Allow remote root login"
-msgstr "Tillad ekstern root-logind."
+msgstr "Tillad ekstern root-login"
#: security/l10n.pm:18
#, c-format
msgid "Direct root login"
-msgstr "Direkte logind som root"
+msgstr "Direkte login som root"
#: security/l10n.pm:19
#, c-format
msgid "List users on display managers (kdm and gdm)"
-msgstr "List brugere på skærmhåndteringer (kdm og gdm)."
+msgstr "List brugere på skærmhåndteringer (kdm og gdm)"
#: security/l10n.pm:20
#, c-format
@@ -5987,7 +5892,7 @@ msgstr "Beskyttelse mod falske navneoplysninger"
#: security/l10n.pm:28
#, c-format
msgid "Enable IP spoofing protection"
-msgstr "Aktivér beskyttelse mod IP-spoofing."
+msgstr "Aktivér beskyttelse mod IP-spoofing"
#: security/l10n.pm:29
#, c-format
@@ -5997,7 +5902,7 @@ msgstr "Aktivér/deaktivér libsafe hvis libsafe findes på systemet"
#: security/l10n.pm:30
#, c-format
msgid "Enable the logging of IPv4 strange packets"
-msgstr "Aktivér logning af mærkelige IPv4-pakker."
+msgstr "Aktivér logning af mærkelige IPv4-pakker"
#: security/l10n.pm:31
#, c-format
@@ -6012,12 +5917,12 @@ msgstr "Aktivér 'su' kun fra medlemmer af wheel-gruppen"
#: security/l10n.pm:33
#, c-format
msgid "Use password to authenticate users"
-msgstr "Brug adgangskode til at autentificere brugere."
+msgstr "Brug adgangskode til at autentificere brugere"
#: security/l10n.pm:34
#, c-format
msgid "Ethernet cards promiscuity check"
-msgstr "Aktivér/deaktivér åbenhedstjek på ethernetkort."
+msgstr "Aktivér/deaktivér åbenhedstjek på ethernetkort"
#: security/l10n.pm:35
#, c-format
@@ -6063,7 +5968,7 @@ msgstr "Størrelse af historik i skallen"
#: security/l10n.pm:43
#, c-format
msgid "Shell timeout"
-msgstr "Udløbstid for skál"
+msgstr "Udløbstid for skal"
#: security/l10n.pm:44
#, c-format
@@ -6083,12 +5988,12 @@ msgstr "Tjek for usikrede konti"
#: security/l10n.pm:47
#, c-format
msgid "Check permissions of files in the users' home"
-msgstr "Tjek rettigheder på filer i brugernes hjemmekataloger."
+msgstr "Tjek rettigheder på filer i brugernes hjemmekataloger"
#: security/l10n.pm:48
#, c-format
msgid "Check if the network devices are in promiscuous mode"
-msgstr "Tjek om netværksgrænsesnittene er fuldstændigt åbne."
+msgstr "Tjek om netværksenhederne er fuldstændigt åbne"
#: security/l10n.pm:49
#, c-format
@@ -6098,7 +6003,7 @@ msgstr "Kør de daglige sikkerhedskontroller"
#: security/l10n.pm:50
#, c-format
msgid "Check additions/removals of sgid files"
-msgstr "Tjek tilføjelser og fjernelser af sgid-filer."
+msgstr "Tjek tilføjelser og fjernelser af sgid-filer"
#: security/l10n.pm:51
#, c-format
@@ -6118,12 +6023,12 @@ msgstr "Tjek tilføjelser og fjernelser af suid root-filer"
#: security/l10n.pm:54
#, c-format
msgid "Report unowned files"
-msgstr "Rapportér filer der ikke er ejede af nogen."
+msgstr "Rapportér filer der ikke er ejede af nogen"
#: security/l10n.pm:55
#, c-format
msgid "Check files/directories writable by everybody"
-msgstr "Kontrollér filer og kataloger skrivbare for alle."
+msgstr "Kontrollér filer og kataloger skrivbare for alle"
#: security/l10n.pm:56
#, c-format
@@ -6133,19 +6038,19 @@ msgstr "Kør chkrootkit-kontroller"
#: security/l10n.pm:57
#, c-format
msgid "Do not send empty mail reports"
-msgstr "Send ikke tomme e-postrapporter"
+msgstr "Send ikke tomme e-mailrapporter"
#: security/l10n.pm:58
#, c-format
msgid "If set, send the mail report to this email address else send it to root"
msgstr ""
"hvis sat, så send postrapporter til denne postadresse, ellers send dem til "
-"root."
+"root"
#: security/l10n.pm:59
#, c-format
msgid "Report check result by mail"
-msgstr "Rapportér kontrolresultat per epost."
+msgstr "Rapportér kontrolresultat per e-mail"
#: security/l10n.pm:60
#, c-format
@@ -6155,12 +6060,12 @@ msgstr "Kør nogle tjek på rpm-databasen"
#: security/l10n.pm:61
#, c-format
msgid "Report check result to syslog"
-msgstr "Rapportér kontrolresultat til syslog."
+msgstr "Rapportér kontrolresultat til syslog"
#: security/l10n.pm:62
#, c-format
msgid "Reports check result to tty"
-msgstr "Rapportér kontrolresultat på tty-en."
+msgstr "Rapportér kontrolresultat på tty-en"
#: security/level.pm:10
#, c-format
@@ -6177,7 +6082,7 @@ msgstr "Standard"
msgid "Secure"
msgstr "Sikkert"
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6188,18 +6093,18 @@ msgstr ""
"Dette niveau bør bruges med forsigtighed da det deaktiverer al yderligere "
"sikkerhed\n"
"leveret af msec. Brug det kun når du ønsker at tage hånd om alle aspekter af "
-"systemsikkerhed selv. "
+"systemsikkerhed selv."
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
"to connect to the Internet as a client."
msgstr ""
"Dette er standard sikkerheds-anbefalingen for en maskine\n"
-" med forbindelse til Internettet som klient. "
+" med forbindelse til Internettet som klient."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6214,48 +6119,48 @@ msgstr ""
"forbindelser fra mange klienter. Bemærk: hvis din maskine kun er en klient "
"på internettet bør du hellere vælge et lavere niveau."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Sikkerhed"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "Basale valgmuligheder for DrakSec"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "Vælg det ønskede sikkerhedniveau"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr "%s: %s"
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
msgstr "Sikkerhedsadministrator:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
-msgstr "Login eller epost:"
+msgstr "Login eller e-mail:"
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr "Lyt efter og udfør ACPI-hændelser fra kernen"
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
msgstr "Start ALSA (Advanced Linux Sound Architecture) lydsystemet"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
-msgstr "Anacron en periodisk kommando planlægger"
+msgstr "Anacron en periodisk kommando planlægger."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6264,7 +6169,7 @@ msgstr ""
"apmd bruges til at overvåge batteristatus og skrive log til syslog.\n"
"Den kan også bruges til at lukke maskinen når batteriet er på lav."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6272,9 +6177,24 @@ msgid ""
msgstr ""
"Kører planlagte kommandoer med 'at' kommandoen på tiden specificeret da 'at' "
"blev kørt, og kører batch kommandoer når den gennemsnitlige systembelastning "
-"er lav nok"
+"er lav nok."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr "Avahi er en ZeroConf-dæmon som implementerer en mDNS-stak"
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr "En NTP klient/server"
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr "Opsæt indstillinger for CPU-frekvens"
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6287,18 +6207,18 @@ msgstr ""
"basale UNIX cron, inklusive bedre sikkerhed og stærkere "
"konfigurationsmuligheder."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
-msgstr "Common UNIX Printing System (CUPS) er et avanceret udskrifts-køsystem."
+msgstr "Common UNIX Printing System (CUPS) er et avanceret udskrifts-køsystem"
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
-msgstr "Starter den grafiske indlogningsbehandler."
+msgstr "Starter den grafiske indlogningsbehandler"
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6309,7 +6229,28 @@ msgstr ""
"blevet ændret.\n"
"Den bruges af Gnome og KDE"
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+"G15Daemon giver brugere adgang til alle ekstra taster ved at afkode dem og \n"
+"send dem tilbage til kernen via UINPUT-driveren i Linux. Denne driver skal "
+"være indlæst \n"
+"før g15daemon kan bruges til tastaturadgang. G15 LCD understøttes også. "
+"Normalt - \n"
+"når ingen andre klienter er aktive - vil g15daemon vise et ur. "
+"Klientprogrammer og \n"
+"skripter kan få adgang til skærmen via en simpel API."
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6317,32 +6258,32 @@ msgid ""
"operations,\n"
"and includes support for pop-up menus on the console."
msgstr ""
-"GPM tilføjer muse-support til tekst-baserede Linux applikationer såsom "
-"Midnight Commander. Den tillader muse-baseret kopiér-og-sætind operationer "
-"på konsollen og inkluderer support for pop-op-menuer i konsollen."
+"GPM tilføjer understøttelse af mus til tekstbaserede Linux-programmer såsom "
+"Midnight Commander. Den tillader musebaseret kopiér-og-indsæt-handlinger i "
+"konsollen og inkluderer understøttelse af pop op-menuer i konsollen."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr ""
-"HAL er en tjeneste som indsamler og vedligeholder information om maskinel"
+"HAL er en tjeneste som indsamler og vedligeholder information om hardware"
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
"new/changed hardware."
msgstr ""
-"HardDrake kører en søgning efter maskinel, og kan konfigurere nyt/ændret "
-"maskinel."
+"HardDrake kører en søgning efter hardware, og kan konfigurere nyt/ændret "
+"hardware."
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
-msgstr "Apache er en webserver. Den bruges til at betjene HTML-filer og CGI."
+msgstr "Apache er en webserver. Den bruges til at betjene HTML-filer og CGI."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6357,16 +6298,24 @@ msgstr ""
"ftp, rsh og rlogin. Hvis inetd deaktiveres, deaktiveres alle de tjenester, "
"den er ansvarlig for."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr "Automatiserer en brandmur med pakkefiltrering for ip6tables"
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr "Automatiserer en brandmur med pakkefiltrering for iptables"
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"Start pakkefiltrering for Linux kerne 2.2 serien for at opsætte en brandmur "
-"til at beskytte din maskine mod netværksangreb."
+"Distribuerer IRQ-belastning ligeligt mellem flere CPU'er for forbedret ydelse"
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6377,7 +6326,7 @@ msgstr ""
"keyboard. Dette kan vælges i kbdconfig programmet. Dette bør være slået til "
"på de fleste maskiner."
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6386,12 +6335,17 @@ msgstr ""
"Automatisk regenerering af kernehoved i /boot for\n"
"/usr/include/linux/{autoconf,version}.h"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
-msgstr "automatisk opdagelse og konfigurering af maskinel ved opstart."
+msgstr "automatisk opdagelse og konfigurering af hardware ved opstart."
+
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr "Ændrer på systemopførselen for at forlænge batteritid"
-#: services.pm:51
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6400,7 +6354,7 @@ msgstr ""
"Linuxconf vil nogen gange arrangere udførelse af forskellige opgaver ved "
"opstart for at vedligeholde systemkonfigurationen."
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
@@ -6409,7 +6363,7 @@ msgstr ""
"lpd er printer-dæmonen som er nødvendig for at lpr virker.\n"
"Den er basalt en server der håndterer udskrifts-opgaver."
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
@@ -6418,16 +6372,31 @@ msgstr ""
"Linux Virtuel Server, brugt til at bygge en server med høj ydelse og\n"
"tilgængelighed."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr "Overvåger netværket (interaktiv brandmur og trådløst)"
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr "Overvågning og administration af programmeret RAID"
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
"messages"
msgstr ""
"DBUS er en tjeneste som rundsender beskeder om systemhændelser, og andre "
-"beskeder."
+"beskeder"
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr "Aktiverer MSEC-sikkerhedsregler på systemopstart"
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6436,25 +6405,40 @@ msgstr ""
"named (BIND) er en domæne-navneserver (DNS) der bruges til opslag af IP-"
"adresser for værtsnavne."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr "Initialiserer logning af netværk på konsollen"
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
"Manager/Windows), and NCP (NetWare) mount points."
msgstr ""
"Monterer og afmonterer alle netværks filsystemer (NFS), SMB (LanManager/"
-"Windows) og NCP (NetWare) monterings-stier"
+"Windows) og NCP (NetWare) monterings-stier."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
"at boot time."
msgstr ""
"Aktiverer/deaktiverer alle netværks-kort som er konfigureret\n"
-"til at starte ved opstart"
+"til at starte ved opstart."
-#: services.pm:63
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr "Kræver at netværket er oppe hvis dette aktiveres"
+
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr "Vent på at det automatiske netværk kommer op"
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6463,23 +6447,23 @@ msgid ""
msgstr ""
"NFS er en populær protokol til fildeling over TCP/IP netværk.\n"
"Denne tjeneste giver NFS-serverfunktionalitet, som konfigureres gennem /etc/"
-"exports filen"
+"exports filen."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
"networks. This service provides NFS file locking functionality."
msgstr ""
"NFS er en populær protokol til fildeling over TCP/IP\n"
-"netværk. Denne service giver NFS fillåsnings funktionalitet"
+"netværk. Denne service giver NFS fillåsnings funktionalitet."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
-msgstr "Synkroniserer systemklokken med netværkstidsprotokollen NTP."
+msgstr "Synkroniserer systemklokken med netværkstidsprotokollen NTP"
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6488,12 +6472,17 @@ msgstr ""
"Aktiverer automatisk numlock-tast i konsol og Xorg ved\n"
"opstart."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
msgstr "Støtter OKI 4w og kompatible winprintere."
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr "Tjekker om en partition er tæt på at være fuld"
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6501,12 +6490,12 @@ msgid ""
"to have\n"
"it installed on machines that do not need it."
msgstr ""
-"PCMCIA understøttelse er normalt til at understøtte ting som ethernet og "
+"PCMCIA-understøttelse er normalt til at understøtte ting som ethernet og "
"modemer på bærbare. Den vil ikke blive startet medmindre den er "
"konfigureret, så det er sikkert at have den installeret på maskiner der ikke "
"har behov for den."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6516,9 +6505,14 @@ msgid ""
msgstr ""
"Portmapper håndterer RPC tilslutninger, som bliver brugt af protokoller som "
"NFS og NIS. Portmap serveren skal køre på maskiner som bruger protokoller "
-"der udnytter RPC mekanismen"
+"der udnytter RPC mekanismen."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr "Reserverer nogle TCP-porte"
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6527,7 +6521,7 @@ msgstr ""
"Postfix er en transport-agent for post, som bruges af programmer der flytter "
"post fra en maskine til en anden."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6536,16 +6530,21 @@ msgstr ""
"Gemmer og henter systemets entropipøl for en højre kvalitet\n"
"ved generering af tilfældige tal."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
-"Tilordn rå enheder til blokenheder (som harddisk-\n"
-"partitioner) til brug af applikationer som Oracle eller DVD-afspillere"
+"Tildel rå enheder til blokenheder (såsom harddisk-drev-partitioner)\n"
+"til brug af applikationer såsom Oracle eller DVD-afspillere"
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr "Informationshåndtering for navneserver"
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6556,7 +6555,7 @@ msgstr ""
"protokollen. RIP kan bruges til små netværk, men når det kommer til mere "
"komplekse netværk er der behov for en mere kompleks protokol."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
@@ -6565,16 +6564,26 @@ msgstr ""
"rstat protokollen tillader brugere på et netværk at hente systeminformation "
"fra enhver maskine på dette netværk."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+"Syslog er faciliteten som mange dæmoner bruger til at logge beskeder i "
+"forskellige logfiler.\n"
+"Det er en god idé altid at køre rsyslog."
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
"logged in on other responding machines."
msgstr ""
"rusers protokollen tillader brugere på et netværk a identificere\n"
-"hvem der er logget på andre maskiner"
+"hvem der er logget på andre maskiner."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6584,122 +6593,148 @@ msgstr ""
"brugere der er logget ind på en maskine, der kører rwho dæmonen (minder om "
"finger)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
msgstr ""
-"SANE (Scanner Access Now Easy) giver adgang til skannere, filmkameraer og "
-"lignende."
+"SANE (Scanner Access Now Easy) giver adgang til skannere, filmkameraer, ..."
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr "Brandmur med pakkefiltrering"
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr "Pakkefiltrering firewall til IPv6"
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
"SMB/CIFS-protokollen gør det muligt at dele adgang til filer og printere, og "
-"integrerer også med et Windows Server-domæne."
+"integrerer også med et Windows Server-domæne"
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
msgstr "Start lydsystemet på din maskine"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr "lag for taleanalyse"
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
"secure channel between two computers"
msgstr ""
"Secure Shell er en netværksprotokol som gør det muligt at udveksle data over "
-"en sikker forbindelse mellem to datamaskiner."
+"en sikker forbindelse mellem to datamaskiner"
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
"to various system log files. It is a good idea to always run syslog."
msgstr ""
"Syslog er en facilitet som mange dæmoner bruger til log beskeder\n"
-"Det er en god idé altid at køre syslog"
+"Det er en god idé altid at køre syslog."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr "Flytter de genererede gennemgående udev-regler til /etc/udev/rules.d"
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "Indlæs driverne for dine usb-enheder."
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr "En letvægts overvågning af netværkstrafik"
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
msgstr "Starter X-skriftserveren."
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
msgstr "Starter andre tjenester efter behov."
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Printning"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Internet"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Fildeling"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Netværk"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "System"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "Ekstern administration"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Databaseserver"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Tjenester"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr "Vælg hvilke tjenester der skal startes automatisk ved opstart"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Tjenester: %d aktiverede for %d registrerede"
+msgid "%d activated for %d registered"
+msgstr "%d aktiverede for %d registrerede"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "kører"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "stoppet"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Tjenester og dæmoner"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6708,32 +6743,27 @@ msgstr ""
"Beklager, der er ingen ekstra\n"
"information om denne tjeneste."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Info"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "Start når der bedes om det"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "Ved opstart"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "Start"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Stop"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6751,7 +6781,7 @@ msgid ""
"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
"USA.\n"
msgstr ""
-"Dette program er gratis programmel; du kan redistribuere det og/eller ændre\n"
+"Dette program er fri software; du kan redistribuere det og/eller ændre\n"
"det i henhold til betingelserne i GNU General Public License, som publiceret "
"af\n"
"Free Software Foundation; enten version 2, eller enhver senere udgave\n"
@@ -6767,7 +6797,7 @@ msgstr ""
"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,\n"
"USA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6795,39 +6825,37 @@ msgstr ""
"--help : vís denne besked.\n"
"--version : vís versionsnummer.\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"MULIGHEDER:\n"
" --boot - aktivér for at konfigurere opstartsindlæser\n"
-" --splash - aktivér for at konfigurere opstartstema\n"
-"standard-tilstand: tilbyd at konfigurere autologin-facilitet"
+"standard-tilstand: tilbyd at konfigurere automatisk login-facilitet"
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-"[VALGMULIGHEDER] [PROGRAM-NAVN]\n"
+"[VALGMULIGHEDER] [PROGRAMNAVN] \n"
"\n"
-"VALGMULIGHEDER:\n"
-" --help - udskriv denne hjælpebesked.\n"
-" --report - program bær være én af Mandriva Linux' værktøjer\n"
-" --incident - program bær være én af Mandriva Linux' værktøjer"
+"VALGMULIGHEDER: \n"
+" --help - udskriv denne hjælp besked.\n"
+" --report - program bør være en af disse %s værktøjer\n"
+" --incident - program bør være en af disse %s værktøjer"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6838,13 +6866,13 @@ msgid ""
" --wizard - like --add"
msgstr ""
"[--add]\n"
-" --add - \"tilføj et netværksgrænsesnit\"-hjælper\n"
-" --del - \"slet et netværksgrænsesnit\"-hjælper\n"
-" --skip-wizard - håndtér opkoblinger\n"
+" --add - \"tilføj en netværksgrænseflade\"-hjælper\n"
+" --del - \"slet en netværksgrænseflade\"-hjælper\n"
+" --skip-wizard - håndtér forbindelser\n"
" --internet - konfigurér internet\n"
-" --wizard - det samme som --add"
+" --wizard - samme som --add"
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -6865,20 +6893,20 @@ msgstr ""
"Skrifttype-import og overvågningsapplikation\n"
"\n"
"--windows_import : importér fra alle tilgængelige windowspartitioner.\n"
-"--xls_fonts : vis alle skrifttyper som allerede eksisterer fra xls\n"
+"--xls_fonts : vis alle skrifttyper som allerede findes fra xls\n"
"--install : installér alle skrifttyper og kataloger.\n"
"--uninstall : afinstallér alle skrifttyper og kataloger.\n"
-"--replace : erstat skrifttyper som eksisterer fra før\n"
+"--replace : erstat skrifttyper som findes fra før\n"
"--application : 0 ingen applikation.\n"
" : 1 alle tilgængelige understøttede applikationer.\n"
" : applikationsnavn, som \"so\" for staroffice \n"
" : og 'gs' for ghostscript - kun for denne."
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -6891,32 +6919,32 @@ msgid ""
"--delclient : delete a client machine from MTS (requires MAC address, "
"IP, nbi image name)"
msgstr ""
-"[OPTIONS]...\n"
-"Mandriva Linux TerminalServer konfigureringsprogram\n"
-"--enable : aktivér MTS\n"
-"--disable : deaktivér MTS\n"
-"--start : start MTS\n"
-"--stop : stop MTS\n"
+"[Valgmuligheder]... \n"
+"%s Mageia TerminalServer konfigureringsprogram \n"
+"--enable : aktivér MTS \n"
+"--disable : deaktivér MTS \n"
+"--start : start MTS \n"
+"--stop : stop MTS \n"
"--adduser : tilføj en eksisterende systembruger til MTS (kræver "
-"brugernavn)\n"
+"brugernavn) \n"
"--deluser : slet en eksisterende systembruger fa MTS (kræver "
-"brugernavn)\n"
+"brugernavn) \n"
"--addclient : tilføj en klientmaskine til MTS (kræver MAC-adresse, IP, "
"nbi aftryksnavn)\n"
-"--delclient : tilføj en klientmaskine til MTS (kræver MAC-adresse, IP, "
+"--delclient : slet en klientmaskine fra MTS (kræver MAC-adresse, IP, "
"nbi aftryksnavn)"
-#: standalone.pm:100
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[tastatur]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
msgstr "[--file=minfil] [--word=mitord] [--explain=regudtryk] [--alert]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -6930,34 +6958,36 @@ msgid ""
"--quiet : do not be interactive. To be used with (dis)connect."
msgstr ""
"[VALGMULIGHEDER]\n"
-"Program til netværks- & Internet forbindelse og overvågning\n"
+"Program til overvågning af netværks- og internetforbindelse\n"
"\n"
-"--defaultintf grænseflade : vís denne grænseflade som standard\n"
-"--connect : kobl op til internettet hvis ikke allerede opkoblet\n"
-"--disconnect : kobl fra internettet hvis allerede opkoblet\n"
+"--defaultintf grænseflade : vis denne grænseflade som standard\n"
+"--connect : opret forbindelse til internettet hvis der ikke allerede er "
+"forbindelse\n"
+"--disconnect : afbryd forbindelse til internettet hvis der allerede er "
+"forbindelse\n"
"--force : brugt med (dis)connect : gennemtving (dis)connect.\n"
-"--status : returnerer 1 hvis opkoblet, ellers 0; afslut derefter.\n"
+"--status : returnerer 1 hvis der er forbindelse, ellers 0; afslut derefter.\n"
"--quiet : vær ikke interaktiv. Bruges med (dis)connect."
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
-"[OPTION]...\n"
-" --no-confirmation spørg ikke det første bekræftelsesspørgsmål i "
-"Mandriva Update-tilstand\n"
-" --no-verify-rpm efterprøv ikke pakke-signaturer\n"
-" --changelog-first vís changelog før filliste i beskrivelsesvinduet\n"
+"[Valgmulighed]... \n"
+" --no-confirmation spørg ikke det første bekræftelsesspørgsmål i %s "
+"Update-tilstand\n"
+" --no-verify-rpm efterprøv ikke pakke-signaturer \n"
+" --changelog-first vís changelog før filliste i beskrivelsesvinduet \n"
" --merge-all-rpmnew foreslå at flette alle .rpmnew/.rpmsave filer fundet"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -6966,7 +6996,7 @@ msgstr ""
"[--manual] [--device=enhed] [--update-sane=sane_kilde_kat] [--update-"
"usbtable] [--dynamic=enhed]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -6977,7 +7007,7 @@ msgstr ""
" XFdrake [--noauto] skærm\n"
" XFdrake opløsning"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -6985,74 +7015,79 @@ msgid ""
"testing] [-v|--version] "
msgstr ""
"\n"
-"Brug: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
-"testing] [-v|--version] "
+"Brug: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--testing] "
+"[-v|--version] "
-#: timezone.pm:161 timezone.pm:162
+#: timezone.pm:170 timezone.pm:171
#, c-format
msgid "All servers"
msgstr "Alle servere"
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr "Globalt"
-#: timezone.pm:199
+#: timezone.pm:210
#, c-format
msgid "Africa"
msgstr "Afrika"
-#: timezone.pm:200
+#: timezone.pm:211
#, c-format
msgid "Asia"
msgstr "Asien"
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
msgstr "Europa"
-#: timezone.pm:202
+#: timezone.pm:213
#, c-format
msgid "North America"
msgstr "Nordamerika"
-#: timezone.pm:203
+#: timezone.pm:214
#, c-format
msgid "Oceania"
msgstr "Oceanien"
-#: timezone.pm:204
+#: timezone.pm:215
#, c-format
msgid "South America"
msgstr "Sydamerika"
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Hong Kong"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
msgstr "Russiske føderation"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Jugoslavien"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Er dette korrekt?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "Du har valgt en fil, ikke et katalog"
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Info"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -7067,5 +7102,10 @@ msgstr ""
msgid "Installation failed"
msgstr "Installation mislykkedes"
-#~ msgid "Automatic routing from ALSA to PulseAudio"
-#~ msgstr "Automatisk rutning fra ALSA til PulseAudio"
+#~ msgid ""
+#~ "If grub2 takes too long to install, you can use this option to skip "
+#~ "detecting other OSes and make it fast"
+#~ msgstr ""
+#~ "Hvis grub2 er for længe om at installere, så kan du bruge denne "
+#~ "valgmulighed til at springe registrering af andre OS'er over, så det går "
+#~ "hurtigere"
diff --git a/perl-install/share/po/de.po b/perl-install/share/po/de.po
index 7a6d8eb20..71a5db8e5 100644
--- a/perl-install/share/po/de.po
+++ b/perl-install/share/po/de.po
@@ -1,53 +1,44 @@
-# translation of de.po to deutsch
-# translation of de.po to
-# german translation of the MandrivaInstaller.
-# Copyright (C) 2000-2003 Mandriva S.A.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
#
-#
-# Stefan Siegel <siegel@linux-mandrake.com>, 2000, 2001, 2002, 2003.
-# Sebastian Deutscher <sebastian.deutscher@web.de>, 2003,2004,2006.
-# Gerhard Ortner <gerhard.ortner@aon.at>, 2003, 2004.
-# Roy Steuber <roysteuber@mittweida-net.de>, 2004.
-# Marcus Fischer <i18n@marcusfischer.com>, 2004.
-# Frank Köster <frank@dueppel13.de>, 2004, 2005.
-# Ronny Standtke <Ronny.Standtke@gmx.de>, 2003, 2004.
-# Ronny Standtke <Ronny.Standtke@gmx.net>, 2004, 2005.
-# Nicolas Bauer <webmaster@mandrakeusers.de>, 2005, 2006.
-# Frank Koester <frank@dueppel13.de>, 2005.Frank Koester <frank@dueppel13.de>, 2006.
-# Nicolas Bauer <rastafarii@mandrivauer.de>, 2006, 2007.
-# Nicolas Bauer <rastafarii@mandrivauser.de>, 2007.
-# Oliver Burger <oliver@mandrivauser.de>, 2008.
-# Wolfgang Bornath <wbo@mandriva.com>, 2009.
-# Oliver Burger <oliver.burger@wizard-fire.de>, 2009.
-msgid ""
-msgstr ""
-"Project-Id-Version: de\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 12:20+0200\n"
-"PO-Revision-Date: 2009-04-02 11:24+0200\n"
-"Last-Translator: Oliver Burger <oliver.burger@wizard-fire.de>\n"
-"Language-Team: German <cooker-i18n@mandrivalinux.org>\n"
+# Translators:
+# Ettore Atalan <atalanttore@googlemail.com>, 2015-2016,2021
+# Klaus Christian Harke <k.c.harke@gmx.net>, 2020,2022
+# psyca, 2014-2020,2022-2024
+# Oliver Burger <obgr_seneca@mageia.org>, 2013
+# psyca, 2014
+# Sigrid Carrera <sigrid.carrera@googlemail.com>, 2013
+# user7 <wassipaul@gmx.at>, 2014
+# user7 <wassipaul@gmx.at>, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2013-04-04 13:34+0000\n"
+"Last-Translator: psyca, 2014-2020,2022-2024\n"
+"Language-Team: German (http://app.transifex.com/MageiaLinux/mageia/language/"
+"de/)\n"
+"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 0.3\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: any.pm:252 any.pm:884 diskdrake/interactive.pm:594
-#: diskdrake/interactive.pm:794 diskdrake/interactive.pm:838
-#: diskdrake/interactive.pm:924 diskdrake/interactive.pm:1178
-#: diskdrake/interactive.pm:1230 do_pkgs.pm:241 do_pkgs.pm:287
-#: harddrake/sound.pm:303 interactive.pm:587 pkgs.pm:281
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
#, c-format
msgid "Please wait"
msgstr "Bitte warten"
-#: any.pm:252
+#: any.pm:272
#, c-format
msgid "Bootloader installation in progress"
msgstr "Installation des Bootloaders ..."
-#: any.pm:263
+#: any.pm:283
#, c-format
msgid ""
"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
@@ -64,316 +55,297 @@ msgstr ""
"\n"
"Neue Datenträger-ID zuweisen?"
-#: any.pm:274
+#: any.pm:294
#, c-format
msgid "Installation of bootloader failed. The following error occurred:"
msgstr ""
-"Die Installation des Betriebssytemstarters schlug fehl. Folgender Fehler "
-"trat auf:"
-
-#: any.pm:280
-#, c-format
-msgid ""
-"You may need to change your Open Firmware boot-device to\n"
-" enable the bootloader. If you do not see the bootloader prompt at\n"
-" reboot, hold down Command-Option-O-F at reboot and enter:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-" Then type: shut-down\n"
-"At your next boot you should see the bootloader prompt."
-msgstr ""
-"Sie müssen Ihr Open-Firmware-Boot-Gerät anpassen, dass es den \n"
-"Betriebssytemstarter erkennt. Falls Sie beim Neustart nicht die \n"
-"Eingabeaufforderung des Betriebssytemstarters sehen, drücken Sie \n"
-"Strg-Option-O-F und geben Sie folgendes ein:\n"
-" setenv boot-device %s,\\\\:tbxi\n"
-"Tippen Sie dann: shut-down\n"
-"Beim darauffolgenden Neustart sollte Sie die Eingabeaufforderung sehen."
+"Die Installation des Bootloader schlug fehl. Folgender Fehler trat auf:"
-#: any.pm:320
+#: any.pm:334
#, c-format
msgid ""
"You decided to install the bootloader on a partition.\n"
-"This implies you already have a bootloader on the hard drive you boot (eg: "
-"System Commander).\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
"\n"
"On which drive are you booting?"
msgstr ""
-"Sie haben sich entschieden, Ihren Bootloader auf eine Partition\n"
-"zu installieren. Das impliziert, dass Sie einen anderen Bootloader im Master-"
-"Boot-Record haben (etwa System Commander).\n"
+"Sie haben sich entschieden, den Bootloader auf einer Partition zu "
+"installieren.\n"
+"Dies setzt voraus, dass Sie bereits einen Bootloader auf der Festplatte "
+"installiert haben (z.B. System Commander).\n"
"\n"
-"Von welchem Laufwerk wollen Sie booten?"
+"Von welchem Laufwerk booten Sie?"
-#: any.pm:346
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr "Installation des Bootloaders"
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Wo soll der Bootloader installiert werden?"
+
+#: any.pm:365
#, c-format
msgid "First sector (MBR) of drive %s"
msgstr "Erster Sektor der %s Platte (MBR)"
-#: any.pm:348
+#: any.pm:367
#, c-format
msgid "First sector of drive (MBR)"
msgstr "Erster Sektor der Platte (MBR)"
-#: any.pm:350
+#: any.pm:369
#, c-format
msgid "First sector of the root partition"
msgstr "Erster Sektor der Root-Partition"
-#: any.pm:352
+#: any.pm:371
#, c-format
msgid "On Floppy"
msgstr "Auf Diskette"
-#: any.pm:354 pkgs.pm:277 ugtk2.pm:526
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
#, c-format
msgid "Skip"
msgstr "Überspringen"
-#: any.pm:358
-#, c-format
-msgid "Bootloader Installation"
-msgstr "Installation des Bootloaders"
-
-#: any.pm:362
-#, c-format
-msgid "Where do you want to install the bootloader?"
-msgstr "Wo soll der Bootloader installiert werden?"
-
-#: any.pm:389
+#: any.pm:401
#, c-format
msgid "Boot Style Configuration"
msgstr "Konfiguration der Boot-Einstellungen"
-#: any.pm:399 any.pm:429 any.pm:430
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr "EFI-Systempartition"
+
+#: any.pm:420
#, c-format
msgid "Bootloader main options"
-msgstr "Haupt-Optionen des Bootloaders"
+msgstr "Hauptoptionen des Bootloaders"
-#: any.pm:403
+#: any.pm:424
#, c-format
msgid "Bootloader"
msgstr "Bootloader"
-#: any.pm:404 any.pm:433
+#: any.pm:425
#, c-format
msgid "Bootloader to use"
msgstr "Zu verwendender Bootloader"
-#: any.pm:406 any.pm:435
+#: any.pm:427
#, c-format
msgid "Boot device"
msgstr "Boot-Gerät"
-#: any.pm:408
+#: any.pm:429
#, c-format
msgid "Main options"
-msgstr "Haupt Optionen"
+msgstr "Hauptoptionen"
-#: any.pm:409
+#: any.pm:430
#, c-format
msgid "Delay before booting default image"
-msgstr "Wartezeit vor dem Starten des Betriebssystems"
+msgstr "Wartezeit vor dem Starten des Standard-Betriebssystems"
-#: any.pm:410
+#: any.pm:431
#, c-format
msgid "Enable ACPI"
msgstr "ACPI aktivieren"
-#: any.pm:411
+#: any.pm:432
#, c-format
msgid "Enable SMP"
msgstr "SMP aktivieren"
-#: any.pm:412
+#: any.pm:433
#, c-format
msgid "Enable APIC"
msgstr "APIC aktivieren"
-#: any.pm:413
+#: any.pm:435
#, c-format
msgid "Enable Local APIC"
msgstr "Lokales APIC aktivieren"
-#: any.pm:415 any.pm:829 any.pm:845 authentication.pm:250
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Sicherheit"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
#: diskdrake/smbnfs_gtk.pm:181
#, c-format
msgid "Password"
msgstr "Passwort"
-#: any.pm:417 authentication.pm:261
+#: any.pm:440 authentication.pm:260
#, c-format
msgid "The passwords do not match"
msgstr "Die Passwörter stimmen nicht überein"
-#: any.pm:417 authentication.pm:261 diskdrake/interactive.pm:1402
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
#, c-format
msgid "Please try again"
msgstr "Bitte versuchen Sie es erneut"
-#: any.pm:418
+#: any.pm:442
#, c-format
-msgid "You can not use a password with %s"
-msgstr "Sie können kein Passwort welches %s enthält verwenden"
+msgid "You cannot use a password with %s"
+msgstr "Sie können kein Passwort mit %s benutzen"
-#: any.pm:421 any.pm:831 any.pm:847 authentication.pm:251
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
#, c-format
msgid "Password (again)"
msgstr "Passwort (erneut)"
-#: any.pm:422
+#: any.pm:528 any.pm:731 any.pm:774
+#, c-format
+msgid "Bootloader Configuration"
+msgstr "Konfiguration des Bootloaders"
+
+#: any.pm:532
#, c-format
-msgid "Restrict command line options"
-msgstr "Gebrauch der Kommandozeilen-Parameter einschränken"
+msgid "Install Options"
+msgstr "Installationsoptionen"
-#: any.pm:422
+#: any.pm:533
#, c-format
-msgid "restrict"
-msgstr "einschränken"
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr "Installiere oder aktualisiere rEFInd in der EFI-Systempartition"
-#: any.pm:423
+#: any.pm:535 any.pm:794
#, c-format
-msgid ""
-"Option ``Restrict command line options'' is of no use without a password"
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
msgstr ""
-"Die Option „Gebrauch der Kommandozeilen-Parameter einschränken“ ist ohne \n"
-"Angabe eines Passwortes wirkungslos."
+"In /EFI/BOOT installieren (entfernbare Geräte oder Problemumgehung für "
+"einige BIOSe)"
-#: any.pm:425
+#: any.pm:537
#, c-format
-msgid "Clean /tmp at each boot"
-msgstr " „/tmp“ bei jedem Systemstart säubern"
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr "Konfiguriere rEFInd, um die Variablen im EFI NVRAM zu speichern"
-#: any.pm:434
+#: any.pm:539
#, c-format
-msgid "Init Message"
-msgstr "Init-Nachricht"
+msgid "Background"
+msgstr "Hintergrund"
-#: any.pm:436
+#: any.pm:544
#, c-format
-msgid "Open Firmware Delay"
-msgstr "Open-Firmware-Verzögerung"
+msgid "rEFInd banner"
+msgstr "rEFInd-Banner"
-#: any.pm:437
+#: any.pm:545
#, c-format
-msgid "Kernel Boot Timeout"
-msgstr "Kernel-Start-Wartezeit"
+msgid "Mageia theme"
+msgstr "Mageia-Theme"
+
+#: any.pm:546 any.pm:1602
+#, c-format
+msgid "Custom"
+msgstr "Benutzerdefiniert"
-#: any.pm:438
+#: any.pm:564
#, c-format
-msgid "Enable CD Boot?"
-msgstr "Booten von CD erlauben?"
+msgid "No scaling"
+msgstr "Keine Skalierung"
-#: any.pm:439
+#: any.pm:565
#, c-format
-msgid "Enable OF Boot?"
-msgstr "Open-Firmware-Start erlauben?"
+msgid "Scale to fit"
+msgstr "Ins Fenster einpassen"
+
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
+#, c-format
+msgid "Label"
+msgstr "Bezeichnung"
+
+#: any.pm:611 any.pm:619 any.pm:780
+#, c-format
+msgid "Append"
+msgstr "Hinzufügen / Erweitern"
-#: any.pm:440
+#: any.pm:612 any.pm:624 any.pm:781
#, c-format
-msgid "Default OS?"
-msgstr "Standard-OS?"
+msgid "Video mode"
+msgstr "Video-Modus"
-#: any.pm:513
+#: any.pm:617
#, c-format
msgid "Image"
msgstr "Abbild"
-#: any.pm:514 any.pm:527
+#: any.pm:618 any.pm:630
#, c-format
msgid "Root"
msgstr "Root"
-#: any.pm:515 any.pm:540
-#, c-format
-msgid "Append"
-msgstr "Übergeben"
-
-#: any.pm:517
+#: any.pm:621
#, c-format
msgid "Xen append"
msgstr "Xen hinzufügen"
-#: any.pm:520
+#: any.pm:623
#, c-format
-msgid "Video mode"
-msgstr "Video-Modus"
+msgid "Requires password to boot"
+msgstr "Benötigt Passwort zum Booten"
-#: any.pm:522
+#: any.pm:625
#, c-format
msgid "Initrd"
msgstr "Init-RamDisk"
-#: any.pm:523
+#: any.pm:626
#, c-format
msgid "Network profile"
msgstr "Netzwerk Profil"
-#: any.pm:532 any.pm:537 any.pm:539 diskdrake/interactive.pm:404
-#, c-format
-msgid "Label"
-msgstr "Bezeichnung"
-
-#: any.pm:534 any.pm:542 harddrake/v4l.pm:438
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
#, c-format
msgid "Default"
msgstr "Standard"
-#: any.pm:541
-#, c-format
-msgid "NoVideo"
-msgstr "NoVideo"
-
-#: any.pm:552
+#: any.pm:645
#, c-format
msgid "Empty label not allowed"
msgstr "Leere Einträge sind nicht erlaubt"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a kernel image"
-msgstr "Sie müssen ein Kernel-Image angeben"
+msgstr "Sie müssen ein Kernel-Abbild angeben"
-#: any.pm:553
+#: any.pm:646
#, c-format
msgid "You must specify a root partition"
msgstr "Sie müssen die Root-Partition festlegen"
-#: any.pm:554
+#: any.pm:647
#, c-format
msgid "This label is already used"
msgstr "Dieser Eintrag existiert bereits"
-#: any.pm:572
+#: any.pm:671
#, c-format
msgid "Which type of entry do you want to add?"
msgstr "Welche Art Eintrag wollen Sie hinzufügen?"
-#: any.pm:573
+#: any.pm:672
#, c-format
msgid "Linux"
msgstr "Linux"
-#: any.pm:573
-#, c-format
-msgid "Other OS (SunOS...)"
-msgstr "Anderes OS (SunOS...)"
-
-#: any.pm:574
-#, c-format
-msgid "Other OS (MacOS...)"
-msgstr "Anderes OS (MacOS ...)"
-
-#: any.pm:574
+#: any.pm:672
#, c-format
msgid "Other OS (Windows...)"
msgstr "Anderes OS (Windows ...)"
-#: any.pm:621
-#, c-format
-msgid "Bootloader Configuration"
-msgstr "Konfiguration des Bootloaders"
-
-#: any.pm:622
+#: any.pm:732
#, c-format
msgid ""
"Here are the entries on your boot menu so far.\n"
@@ -382,274 +354,338 @@ msgstr ""
"Hier sind die verschiedenen Einträge.\n"
"Sie können weitere hinzufügen oder existierende ändern."
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr "Verändere nichts an der ESP oder dem MBR"
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Warnung"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+"Wenn der Bootloader nicht auf der ESP oder dem MBR installiert wird bedeutet "
+"dies, dass die Installation nicht startfähig ist, solange diese nicht von "
+"einem Bootloader eines anderen Betriebssystems (Chainloading) geladen wird!"
+
#: any.pm:790
#, c-format
+msgid "Probe Foreign OS"
+msgstr "Fremdes OS testen"
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+"Wählen Sie diese Option ab, um zu verhindern, dass GRUB2 nach weitere "
+"Betriebssysteme sucht, damit diese nicht im GRUB2 Bootmenü hinzugefügt "
+"werden. Diese Auswahl kann auch nach der Installation deaktiviert werden, "
+"wodurch andere Betriebssysteme aus dem GRUB2 Bootmenü entfernt werden, "
+"allerdings die Installation von Kernel-Aktualisierungen schneller "
+"durchgeführt werden können."
+
+#: any.pm:1059
+#, c-format
msgid "access to X programs"
msgstr "Zugriff auf X-Programme"
-#: any.pm:791
+#: any.pm:1060
#, c-format
msgid "access to rpm tools"
msgstr "Zugriff auf RPM-Werkzeuge"
-#: any.pm:792
+#: any.pm:1061
#, c-format
msgid "allow \"su\""
msgstr "„su“ erlauben"
-#: any.pm:793
+#: any.pm:1062
#, c-format
msgid "access to administrative files"
msgstr "Zugriff auf Verwaltungsdateien"
-#: any.pm:794
+#: any.pm:1063
#, c-format
msgid "access to network tools"
msgstr "Zugriff auf Netzwerk-Werkzeuge"
-#: any.pm:795
+#: any.pm:1064
#, c-format
msgid "access to compilation tools"
-msgstr "Zugriff auf Compilier-Werkzeuge"
+msgstr "Zugriff auf Kompilier-Werkzeuge"
-#: any.pm:801
+#: any.pm:1070
#, c-format
msgid "(already added %s)"
msgstr "(%s wurde bereits hinzugefügt)"
-#: any.pm:807
+#: any.pm:1076
#, c-format
msgid "Please give a user name"
msgstr "Bitte geben Sie einen Benutzernamen an"
-#: any.pm:808
+#: any.pm:1077
#, c-format
msgid ""
-"The user name must contain only lower cased letters, numbers, `-' and `_'"
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
msgstr ""
-"Der Benutzername sollte nur aus Kleinbuchstaben, Ziffern, \n"
-"„-“ und „_“ bestehen"
+"Der Benutzername muss mit einem Kleinbuchstaben beginnen und sollte nur aus "
+"Kleinbuchstaben, Ziffern, „-“ und „_“ bestehen."
-#: any.pm:809
+#: any.pm:1078
#, c-format
msgid "The user name is too long"
msgstr "Dieser Benutzername ist zu lang"
-#: any.pm:810
+#: any.pm:1079
#, c-format
msgid "This user name has already been added"
msgstr "Dieser Benutzername existiert bereits"
-#: any.pm:816 any.pm:849
+#: any.pm:1085 any.pm:1123
#, c-format
msgid "User ID"
-msgstr "Benutzer ID"
+msgstr "Benutzer-ID"
-#: any.pm:816 any.pm:850
+#: any.pm:1085 any.pm:1124
#, c-format
msgid "Group ID"
-msgstr "Gruppen ID"
+msgstr "Gruppen-ID"
-#: any.pm:817
+#: any.pm:1086
#, c-format
msgid "%s must be a number"
msgstr "%s muss eine Zahl sein"
-#: any.pm:818
+#: any.pm:1087
#, c-format
-msgid "%s should be above 500. Accept anyway?"
-msgstr "%s sollte größer als 500 sein. Trotzdem akzeptieren?"
+msgid "%s should be above 1000. Accept anyway?"
+msgstr "%s sollte größer als 1000 sein. Trotzdem akzeptieren?"
-#: any.pm:822
+#: any.pm:1091
#, c-format
msgid "User management"
msgstr "Benutzerverwaltung"
-#: any.pm:828 authentication.pm:237
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr "Den Gastzugang aktivieren"
+
+#: any.pm:1099 authentication.pm:236
#, c-format
msgid "Set administrator (root) password"
msgstr "Administratorpasswort setzen"
-#: any.pm:833
+#: any.pm:1105
#, c-format
msgid "Enter a user"
msgstr "Benutzer einrichten"
-#: any.pm:835
+#: any.pm:1107
#, c-format
msgid "Icon"
msgstr "Symbol"
-#: any.pm:838
+#: any.pm:1110
#, c-format
msgid "Real name"
msgstr "Vollständiger Name"
-#: any.pm:843
+#: any.pm:1117
#, c-format
msgid "Login name"
msgstr "Benutzername"
-#: any.pm:848
+#: any.pm:1122
#, c-format
msgid "Shell"
msgstr "Shell"
-#: any.pm:884
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr "Weitere Gruppen:"
+
+#: any.pm:1181
#, c-format
msgid "Please wait, adding media..."
msgstr "Bitte warten, füge Medien hinzu ..."
-#: any.pm:914 security/l10n.pm:14
+#: any.pm:1249 security/l10n.pm:14
#, c-format
msgid "Autologin"
msgstr "Automatisch anmelden"
-#: any.pm:915
+#: any.pm:1250
#, c-format
msgid "I can set up your computer to automatically log on one user."
msgstr ""
"Ich kann Ihren Computer so einrichten, dass ein Benutzer automatisch "
"angemeldet wird."
-#: any.pm:916
+#: any.pm:1251
#, c-format
msgid "Use this feature"
msgstr "Diese Möglichkeit nutzen"
-#: any.pm:917
+#: any.pm:1252
#, c-format
msgid "Choose the default user:"
msgstr "Wählen Sie den Standard-Nutzer:"
-#: any.pm:918
+#: any.pm:1253
#, c-format
msgid "Choose the window manager to run:"
msgstr "Wählen Sie den Window-Manager, den Sie verwenden wollen:"
-#: any.pm:929 any.pm:949 any.pm:1022
+#: any.pm:1264 any.pm:1279 any.pm:1348
#, c-format
msgid "Release Notes"
msgstr "Versionshinweise"
-#: any.pm:956 any.pm:1314 interactive/gtk.pm:805
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
#, c-format
msgid "Close"
msgstr "Schließen"
-#: any.pm:1008
+#: any.pm:1334
#, c-format
msgid "License agreement"
msgstr "Lizenzvereinbarung"
-#: any.pm:1010 diskdrake/dav.pm:26
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
#, c-format
msgid "Quit"
msgstr "Verlassen"
-#: any.pm:1017
+#: any.pm:1343
#, c-format
msgid "Do you accept this license ?"
msgstr "Akzeptieren Sie diese Lizenz?"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Accept"
msgstr "Akzeptieren"
-#: any.pm:1018
+#: any.pm:1344
#, c-format
msgid "Refuse"
msgstr "Ablehnen"
-#: any.pm:1044 any.pm:1110
+#: any.pm:1370 any.pm:1433
#, c-format
msgid "Please choose a language to use"
msgstr "Bitte wählen Sie die zu verwendende Sprache"
-#: any.pm:1073
+#: any.pm:1398
#, c-format
msgid ""
-"Mandriva Linux can support multiple languages. Select\n"
+"%s can support multiple languages. Select\n"
"the languages you would like to install. They will be available\n"
"when your installation is complete and you restart your system."
msgstr ""
-"Mandriva Linux unterstützt verschiedene Sprachen. Wählen\n"
-"Sie die Sprachen, die Sie installieren wollen.Diese stehen Ihnen zur\n"
-"Verfügung, nachdem die Installation fertig ist und Sie einen Neustart\n"
-"durchgeführt haben."
+"%s kann mehrere Sprachen unterstützen. Wählen\n"
+"Sie die Sprachen, die Sie gerne installieren möchten. Sie werden verfügbar "
+"sein,\n"
+"wenn Ihre Installation beendet ist und Sie das System neu starten."
-#: any.pm:1076
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
#, c-format
-msgid "Multi languages"
+msgid "Multiple languages"
msgstr "Mehrere Sprachen"
-#: any.pm:1087 any.pm:1119
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr "Wählen Sie zusätzliche Sprachen aus"
+
+#: any.pm:1411 any.pm:1442
#, c-format
msgid "Old compatibility (non UTF-8) encoding"
msgstr "Alte (nicht UTF-8) Kodierung"
-#: any.pm:1089
+#: any.pm:1412
#, c-format
msgid "All languages"
msgstr "Alle Sprachen"
-#: any.pm:1111
+#: any.pm:1434
#, c-format
msgid "Language choice"
msgstr "Sprachauswahl"
-#: any.pm:1165
+#: any.pm:1488
#, c-format
msgid "Country / Region"
-msgstr "Staat / Region"
+msgstr "Land / Region"
-#: any.pm:1166
+#: any.pm:1489
#, c-format
msgid "Please choose your country"
-msgstr "Bitte wählen Sie Ihren Staat"
+msgstr "Bitte wählen Sie Ihr Land"
-#: any.pm:1168
+#: any.pm:1491
#, c-format
msgid "Here is the full list of available countries"
-msgstr "Hier ist die komplette Liste aller Staaten"
+msgstr "Hier ist die komplette Liste aller Länder"
-#: any.pm:1169
+#: any.pm:1492
#, c-format
msgid "Other Countries"
msgstr "Andere Länder"
-#: any.pm:1169 interactive.pm:488 interactive/gtk.pm:445
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
#, c-format
msgid "Advanced"
msgstr "Fortgeschritten"
-#: any.pm:1175
+#: any.pm:1498
#, c-format
msgid "Input method:"
-msgstr "Einagbe-Methode:"
+msgstr "Eingabe-Methode:"
-#: any.pm:1178
+#: any.pm:1501 harddrake/sound.pm:550
#, c-format
msgid "None"
msgstr "Keine"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "No sharing"
msgstr "Keine Freigaben"
-#: any.pm:1259
+#: any.pm:1602
#, c-format
msgid "Allow all users"
msgstr "Allen Benutzern erlauben"
-#: any.pm:1259
-#, c-format
-msgid "Custom"
-msgstr "Benutzerdefiniert"
-
-#: any.pm:1263
+#: any.pm:1606
#, c-format
msgid ""
"Would you like to allow users to share some of their directories?\n"
@@ -658,13 +694,13 @@ msgid ""
"\n"
"\"Custom\" permit a per-user granularity.\n"
msgstr ""
-"Wollen Sie Benutzern erlaubern, Verzeichnisse freizugeben?\n"
+"Wollen Sie Benutzern erlauben, Verzeichnisse freizugeben?\n"
"Wenn Sie das erlauben, können die Anwender Verzeichnisse in Konqueror oder "
"Nautilus im Kontextmenü des entsprechenden Verzeichnisses freigeben.\n"
"\n"
"Mit „Benutzerdefiniert“ können Sie eine Einstellung pro Benutzer vornehmen.\n"
-#: any.pm:1275
+#: any.pm:1618
#, c-format
msgid ""
"NFS: the traditional Unix file sharing system, with less support on Mac and "
@@ -673,29 +709,29 @@ msgstr ""
"NFS: das traditionelle Unix-Dateisystem für Freigaben im Netz, mit weniger "
"Unterstützung für Mac und Windows."
-#: any.pm:1278
+#: any.pm:1621
#, c-format
msgid ""
"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
"systems."
msgstr ""
-"SMB: ein Dateisystem für Freigaben im Netz von Windows, Mac OS X und vielen "
-"modernen Linux-Systemen verwendet"
+"SMB: ein Dateisystem welches für Freigaben im Netz von Windows, Mac OS X und "
+"vielen modernen Linux-Systemen verwendet wird."
-#: any.pm:1286
+#: any.pm:1629
#, c-format
msgid ""
"You can export using NFS or SMB. Please select which you would like to use."
msgstr ""
"Sie können die Dateien mittels SMB oder NFS anbieten. Welche Variante wollen "
-"Sie?"
+"Sie verwenden?"
-#: any.pm:1314
+#: any.pm:1657
#, c-format
msgid "Launch userdrake"
msgstr "UserDrake starten"
-#: any.pm:1316
+#: any.pm:1659
#, c-format
msgid ""
"The per-user sharing uses the group \"fileshare\". \n"
@@ -704,62 +740,121 @@ msgstr ""
"Die Freigaben zwischen Benutzern regelt die Gruppe „fileshare“. \n"
"Sie können UserDrake verwenden, um Benutzer in diese Gruppe aufzunehmen."
-#: any.pm:1421
+#: any.pm:1768
#, c-format
msgid ""
"You need to logout and back in again for changes to take effect. Press OK to "
"logout now."
msgstr ""
-"Sie müssen sich abmelden und wieder anmelden, damit die Änderungen wirksam "
+"Sie müssen sich abmelden und wieder anmelden, damit die Änderungen wirksam "
"werden. Klicken Sie auf OK, um sich nun abzumelden."
-#: any.pm:1425
+#: any.pm:1772
#, c-format
msgid "You need to log out and back in again for changes to take effect"
msgstr ""
-"Sie müssen sich abmelden und wieder anmelden, damit die Änderungen wirksam "
+"Sie müssen sich abmelden und wieder anmelden, damit die Änderungen wirksam "
"werden"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Timezone"
msgstr "Zeitzone"
-#: any.pm:1460
+#: any.pm:1807
#, c-format
msgid "Which is your timezone?"
msgstr "Wählen Sie Ihre Zeitzone"
-#: any.pm:1483 any.pm:1485
+#: any.pm:1830 any.pm:1832
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr "Datum, Zeit und Zeitzonen Einstellungen"
-#: any.pm:1486
+#: any.pm:1833
#, c-format
msgid "What is the best time?"
-msgstr "Was ist die beste Zeit?"
+msgstr "Welches ist die beste Zeit?"
-#: any.pm:1490
+#: any.pm:1837
#, c-format
msgid "%s (hardware clock set to UTC)"
msgstr "%s (Hardware Uhr gestellt auf GMT)"
-#: any.pm:1491
+#: any.pm:1838
#, c-format
msgid "%s (hardware clock set to local time)"
msgstr "%s (Hardware Uhr gestellt auf Ortszeit)"
-#: any.pm:1493
+#: any.pm:1840
#, c-format
msgid "NTP Server"
msgstr "NTP-Server"
-#: any.pm:1494
+#: any.pm:1841
#, c-format
msgid "Automatic time synchronization (using NTP)"
msgstr "Automatische Zeit-Synchronisation (durch NTP)"
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "URL des Spiegel-Servers?"
+
+#: any.pm:1880
+#, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "Die URL muss mit ftp:// oder http:// oder https:// beginnen"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr ""
+"Die %s-Webseite wird kontaktiert, um eine Liste der verfügbaren "
+"Spiegelserver zu erhalten ..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+"Die %s-Webseite kann nicht erreicht werden, um die Liste der verfügbaren "
+"Spiegelserver zu erhalten"
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Bitte wählen Sie einen Mirror, von dem Sie die Pakete holen wollen."
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Abbrechen"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr "Auswahl des Spiegelservers"
+
+#: any.pm:1982
+#, c-format
+msgid "Automatic"
+msgstr "Automatisch"
+
+#: any.pm:1983
+#, c-format
+msgid "Specific"
+msgstr "Spezifisch"
+
+#: any.pm:1988
+#, c-format
+msgid "Downloader"
+msgstr "Downloader"
+
#: authentication.pm:24
#, c-format
msgid "Local file"
@@ -780,7 +875,7 @@ msgstr "NIS"
msgid "Smart Card"
msgstr "Chipkarte"
-#: authentication.pm:28 authentication.pm:216
+#: authentication.pm:28 authentication.pm:215
#, c-format
msgid "Windows Domain"
msgstr "Windows-Domäne"
@@ -790,39 +885,39 @@ msgstr "Windows-Domäne"
msgid "Kerberos 5"
msgstr "Kerberos 5"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid "Local file:"
msgstr "Lokale Datei:"
-#: authentication.pm:63
+#: authentication.pm:65
#, c-format
msgid ""
"Use local for all authentication and information user tell in local file"
msgstr ""
"Benutze lokale Dateien zur Authentifizierung und für Benutzerinformationen"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid "LDAP:"
msgstr "LDAP:"
-#: authentication.pm:64
+#: authentication.pm:66
#, c-format
msgid ""
"Tells your computer to use LDAP for some or all authentication. LDAP "
"consolidates certain types of information within your organization."
msgstr ""
-"Richtet Ihren Rechner so ein, dass er LDAP für die Authentifizierung."
+"Richtet Ihren Rechner so ein, dass er LDAP für die Authentifizierung "
"verwendet. LDAP führt bestimmte Informationen innerhalb Ihrer Organisation "
"zusammen."
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid "NIS:"
msgstr "NIS:"
-#: authentication.pm:65
+#: authentication.pm:67
#, c-format
msgid ""
"Allows you to run a group of computers in the same Network Information "
@@ -831,12 +926,12 @@ msgstr ""
"Erlaubt es Ihnen, eine Gruppe von Rechnern in der gleichen NIS-Domäne mit "
"einer gemeinsamen Passwort- und Gruppendatei laufen zu lassen."
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid "Windows Domain:"
msgstr "Windows-Domäne:"
-#: authentication.pm:66
+#: authentication.pm:68
#, c-format
msgid ""
"Winbind allows the system to retrieve information and authenticate users in "
@@ -845,267 +940,260 @@ msgstr ""
"Winbind ermöglicht dem System, aus einer Windows-Domäne Informationen "
"abzufragen und Nutzer zu authentifizieren."
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
msgid "Kerberos 5 :"
msgstr "Kerberos 5 :"
-#: authentication.pm:67
+#: authentication.pm:69
#, c-format
-msgid "With Kerberos and Ldap for authentication in Active Directory Server "
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
msgstr ""
-"Mit Kerberos und LDAP zur Authentifizierung gegen einen Active Directory "
-"Server "
+"Mit Kerberos und LDAP für die Authentifizierung an einem „Active Directory "
+"Server“ "
-#: authentication.pm:107 authentication.pm:141 authentication.pm:160
-#: authentication.pm:161 authentication.pm:187 authentication.pm:211
-#: authentication.pm:896
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
#, c-format
msgid " "
-msgstr " "
+msgstr " "
-#: authentication.pm:108 authentication.pm:142 authentication.pm:188
-#: authentication.pm:212
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
#, c-format
msgid "Welcome to the Authentication Wizard"
msgstr "Willkommen im Authentifizierungsassistenten"
-#: authentication.pm:110
+#: authentication.pm:109
#, c-format
msgid ""
"You have selected LDAP authentication. Please review the configuration "
"options below "
msgstr ""
-"Sie haben LDAP Authentifizierung gewählt. Bitte überprüfen Sie die unten "
-"stehenden Einstellungsmöglichkeiten."
+"Sie haben LDAP-Authentifizierung gewählt. Bitte überprüfen Sie die unten "
+"stehenden Einstellungsmöglichkeiten "
-#: authentication.pm:112 authentication.pm:167
+#: authentication.pm:111 authentication.pm:166
#, c-format
msgid "LDAP Server"
msgstr "LDAP-Server"
-#: authentication.pm:113 authentication.pm:168
+#: authentication.pm:112 authentication.pm:167
#, c-format
msgid "Base dn"
msgstr "Base dn"
-#: authentication.pm:114
+#: authentication.pm:113
#, c-format
msgid "Fetch base Dn "
msgstr "Hole die Base Dn"
-#: authentication.pm:116 authentication.pm:171
+#: authentication.pm:115 authentication.pm:170
#, c-format
msgid "Use encrypt connection with TLS "
-msgstr "Verwende eine verschlüsselte Verbindung mit TLS"
+msgstr "Verwende eine verschlüsselte Verbindung mit TLS "
-#: authentication.pm:117 authentication.pm:172
+#: authentication.pm:116 authentication.pm:171
#, c-format
msgid "Download CA Certificate "
msgstr "Lade das CA-Zertifikat herunter "
-#: authentication.pm:119 authentication.pm:152
+#: authentication.pm:118 authentication.pm:151
#, c-format
msgid "Use Disconnect mode "
-msgstr "Verwende den Offline-Modus"
+msgstr "Verwende den Offline-Modus "
-#: authentication.pm:120 authentication.pm:173
+#: authentication.pm:119 authentication.pm:172
#, c-format
msgid "Use anonymous BIND "
-msgstr "anonymes BIND verwenden"
+msgstr "anonymes BIND verwenden "
-#: authentication.pm:121 authentication.pm:124 authentication.pm:126
-#: authentication.pm:130
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
#, c-format
msgid " "
-msgstr " "
+msgstr " "
-#: authentication.pm:122 authentication.pm:174
+#: authentication.pm:121 authentication.pm:173
#, c-format
msgid "Bind DN "
msgstr "Bind DN "
-#: authentication.pm:123 authentication.pm:175
+#: authentication.pm:122 authentication.pm:174
#, c-format
msgid "Bind Password "
-msgstr "BIND Passwort"
+msgstr "BIND Passwort "
-#: authentication.pm:125
+#: authentication.pm:124
#, c-format
msgid "Advanced path for group "
-msgstr ""
+msgstr "Fortgeschrittener Pfad für Gruppe "
-#: authentication.pm:127
+#: authentication.pm:126
#, c-format
msgid "Password base"
-msgstr ""
+msgstr "Passwort-Datenbank"
-#: authentication.pm:128
+#: authentication.pm:127
#, c-format
msgid "Group base"
-msgstr ""
+msgstr "Gruppen-Datenbank"
-#: authentication.pm:129
+#: authentication.pm:128
#, c-format
msgid "Shadow base"
-msgstr ""
+msgstr "Shadow-Datenbank"
-#: authentication.pm:144
+#: authentication.pm:143
#, c-format
msgid ""
"You have selected Kerberos 5 authentication. Please review the configuration "
"options below "
msgstr ""
-"Sie haben die Kerberos 5 Authentifizierung gewählt. Bitte überprüfen Sie die "
-"unten stehenden Einstellungsmöglichkeiten "
+"Sie haben die „Kerberos 5“-Authentifizierung gewählt. Bitte überprüfen Sie "
+"die unten stehenden Einstellungsmöglichkeiten "
-#: authentication.pm:146
+#: authentication.pm:145
#, c-format
msgid "Realm "
-msgstr ""
+msgstr "Bereich "
-#: authentication.pm:148
+#: authentication.pm:147
#, c-format
msgid "KDCs Servers"
msgstr "KDCs-Server"
-#: authentication.pm:150
+#: authentication.pm:149
#, c-format
msgid "Use DNS to locate KDC for the realm"
-msgstr ""
+msgstr "Benutze DNS um KDC für den Bereich zu lokalisieren"
-#: authentication.pm:151
+#: authentication.pm:150
#, c-format
msgid "Use DNS to locate realms"
-msgstr ""
+msgstr "Benutze DNS, um Bereiche zu lokalisieren"
-#: authentication.pm:156
+#: authentication.pm:155
#, c-format
msgid "Use local file for users information"
msgstr "Lokale Datei für Benutzerinformation verwenden"
-#: authentication.pm:157
+#: authentication.pm:156
#, c-format
-msgid "Use Ldap for users information"
-msgstr "LDAP für Benutzerinformationen verwenden"
+msgid "Use LDAP for users information"
+msgstr "Nutze LDAP für die Benutzerinformationen"
-#: authentication.pm:163
+#: authentication.pm:162
#, c-format
msgid ""
"You have selected Kerberos 5 for authentication, now you must choose the "
"type of users information "
msgstr ""
-"Sie haben die Kerberos 5 Authentifizierung gewählt. Nun müssen Sie den Typ "
+"Sie haben die „Kerberos 5“-Authentifizierung gewählt. Nun müssen Sie den Typ "
"der Benutzerinformation auswählen "
-#: authentication.pm:169
+#: authentication.pm:168
#, c-format
-msgid "Fecth base Dn "
-msgstr "Hole die Base Dn"
+msgid "Fetch base DN "
+msgstr "Hole die Base DN "
-#: authentication.pm:190
+#: authentication.pm:189
#, c-format
msgid ""
"You have selected NIS authentication. Please review the configuration "
"options below "
msgstr ""
-"Sie haben die NIS Authentifizierung gewählt. Bitte überprüfen Sie die unten "
+"Sie haben die-NIS Authentifizierung gewählt. Bitte überprüfen Sie die unten "
"stehenden Einstellungsmöglichkeiten "
-#: authentication.pm:192
+#: authentication.pm:191
#, c-format
msgid "NIS Domain"
msgstr "NIS-Domäne"
-#: authentication.pm:193
+#: authentication.pm:192
#, c-format
msgid "NIS Server"
msgstr "NIS-Server"
-#: authentication.pm:214
+#: authentication.pm:213
#, c-format
msgid ""
"You have selected Windows Domain authentication. Please review the "
"configuration options below "
msgstr ""
-"Sie haben die Windows Domain Authentifizierung gewählt. Bitte überprüfen Sie "
-"die unten stehenden Einstellungsmöglichkeiten "
+"Sie haben die „Windows Domain“-Authentifizierung gewählt. Bitte überprüfen "
+"Sie die unten stehenden Einstellungsmöglichkeiten "
-#: authentication.pm:218
+#: authentication.pm:217
#, c-format
msgid "Domain Model "
-msgstr ""
+msgstr "Domänen-Modell "
-#: authentication.pm:220
+#: authentication.pm:219
#, c-format
msgid "Active Directory Realm "
-msgstr "Active Directory Realm "
+msgstr "Active Directory Bereich "
-#: authentication.pm:221
-#, fuzzy, c-format
+#: authentication.pm:220
+#, c-format
msgid "DNS Domain"
-msgstr "NIS-Domäne"
+msgstr "DNS-Domäne"
-#: authentication.pm:222
-#, fuzzy, c-format
+#: authentication.pm:221
+#, c-format
msgid "DC Server"
-msgstr "KDCs-Server"
+msgstr "DC-Server"
-#: authentication.pm:236 authentication.pm:252
+#: authentication.pm:235 authentication.pm:251
#, c-format
msgid "Authentication"
msgstr "Authentifizierung"
-#: authentication.pm:238
+#: authentication.pm:237
#, c-format
msgid "Authentication method"
msgstr "Authentifizierungsmethode"
#. -PO: keep this short or else the buttons will not fit in the window
-#: authentication.pm:243
+#: authentication.pm:242
#, c-format
msgid "No password"
msgstr "Kein Passwort"
-#: authentication.pm:264
+#: authentication.pm:263
#, c-format
msgid "This password is too short (it must be at least %d characters long)"
-msgstr ""
-"Dieses Passwort ist zu einfach (es muss mindestens %d Zeichen lang sein)!"
+msgstr "Dieses Passwort ist zu kurz (es muss mindestens %d Zeichen lang sein)!"
#: authentication.pm:375
#, c-format
-msgid "Can not use broadcast with no NIS domain"
-msgstr ""
-"Ich kann kein Broadcast machen,\n"
-"da keine NIS-Domäne angegeben wurde."
+msgid "Cannot use broadcast with no NIS domain"
+msgstr "Broadcast kann nicht ohne NIS-Domäne verwendet werden"
-#: authentication.pm:891
+#: authentication.pm:876
#, c-format
msgid "Select file"
msgstr "Datei auswählen"
-#: authentication.pm:897
+#: authentication.pm:882
#, c-format
msgid "Domain Windows for authentication : "
-msgstr ""
+msgstr "Windows Domäne für Authentifizierung : "
-#: authentication.pm:899
+#: authentication.pm:884
#, c-format
msgid "Domain Admin User Name"
-msgstr "Name des Domänen-Administrators"
+msgstr "Benutzername des Domänen-Administrators"
-#: authentication.pm:900
+#: authentication.pm:885
#, c-format
msgid "Domain Admin Password"
msgstr "Passwort des Domänen-Administrators"
-# NOTE: this message will be displayed at boot time; that is
-# only the ascii charset will be available on most machines
-# so use only 7bit for this message (and do transliteration or
-# leave it in English, as it is the best for your language)
#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
-#: bootloader.pm:960
+#: bootloader.pm:1307
#, c-format
msgid ""
"Welcome to the operating system chooser!\n"
@@ -1117,114 +1205,118 @@ msgstr ""
"Willkommen zum Bootloader!\n"
"\n"
"Markieren Sie in obiger Liste ein Betriebssystem\n"
-"oder warten Sie auf das Starten des Standard-OS.\n"
+"oder warten Sie auf das Starten des Standard-Betriebssystems.\n"
"\n"
-#: bootloader.pm:1132
+#: bootloader.pm:1478
#, c-format
msgid "LILO with text menu"
msgstr "LILO mit Textmenü"
-#: bootloader.pm:1133
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 mit grafischem Menü"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 mit Textmenü"
+
+#: bootloader.pm:1481
#, c-format
msgid "GRUB with graphical menu"
msgstr "GRUB mit grafischem Menü"
-#: bootloader.pm:1134
+#: bootloader.pm:1482
#, c-format
msgid "GRUB with text menu"
msgstr "GRUB mit Textmenü"
-#: bootloader.pm:1135
+#: bootloader.pm:1483
#, c-format
-msgid "Yaboot"
-msgstr "Yaboot"
+msgid "rEFInd with graphical menu"
+msgstr "rEFInd mit grafischem Menü"
-#: bootloader.pm:1136
+#: bootloader.pm:1484
#, c-format
-msgid "SILO"
-msgstr "SILO"
+msgid "U-Boot/Extlinux with text menu"
+msgstr "U-Boot/Extlinux mit Textmenü"
-#: bootloader.pm:1218
+#: bootloader.pm:1572
#, c-format
msgid "not enough room in /boot"
-msgstr "Sie haben nicht genug Platz in „/boot“"
+msgstr "Sie haben nicht genug Platz in /boot"
-#: bootloader.pm:1874
-#, c-format
-msgid "You can not install the bootloader on a %s partition\n"
-msgstr ""
-"Sie können den Bootloader\n"
-"nicht auf einer %s Partition installieren!\n"
-
-#: bootloader.pm:1995
+#: bootloader.pm:2831
#, c-format
msgid ""
"Your bootloader configuration must be updated because partition has been "
"renumbered"
msgstr ""
-"Ihere Bootloaderkonfiguration muss geändert werden, da sich Ihre "
+"Ihre Bootloaderkonfiguration muss geändert werden, da sich Ihre "
"Partitionsnummerierung geändert hat"
-#: bootloader.pm:2008
+#: bootloader.pm:2844
#, c-format
msgid ""
-"The bootloader can not be installed correctly. You have to boot rescue and "
+"The bootloader cannot be installed correctly. You have to boot rescue and "
"choose \"%s\""
msgstr ""
-"Das Startabbild konnte nicht korrekt installiert werden. Rettungsmodus "
-"starten und „%s“ wählen."
+"Der Bootloader kann nicht richtig installiert werden. Sie müssen ins "
+"Rettungssystem booten und „%s“ wählen"
-#: bootloader.pm:2009
+#: bootloader.pm:2845
#, c-format
msgid "Re-install Boot Loader"
-msgstr "BS-Starter neu installieren"
+msgstr "Bootloader neu installieren"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "B"
msgstr "B"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "KB"
-msgstr "KB"
+msgstr "kB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "MB"
msgstr "MB"
-#: common.pm:142
+#: common.pm:271
#, c-format
msgid "GB"
msgstr "GB"
-#: common.pm:142 common.pm:151
+#: common.pm:271 common.pm:280
#, c-format
msgid "TB"
msgstr "TB"
-#: common.pm:159
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr "%02d:%02d"
+
+#: common.pm:290
#, c-format
msgid "%d minutes"
msgstr "%d Minuten"
-#: common.pm:161
+#: common.pm:292
#, c-format
msgid "1 minute"
msgstr "1 Minute"
-#: common.pm:163
+#: common.pm:294
#, c-format
msgid "%d seconds"
msgstr "%d Sekunden"
-#: common.pm:383
-#, c-format
-msgid "command %s missing"
-msgstr "Kommando %s fehlt"
-
#: diskdrake/dav.pm:17
#, c-format
msgid ""
@@ -1244,12 +1336,12 @@ msgstr ""
msgid "New"
msgstr "Neu"
-#: diskdrake/dav.pm:63 diskdrake/interactive.pm:411 diskdrake/smbnfs_gtk.pm:75
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
#, c-format
msgid "Unmount"
msgstr "Aushängen"
-#: diskdrake/dav.pm:64 diskdrake/interactive.pm:407 diskdrake/smbnfs_gtk.pm:76
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
#, c-format
msgid "Mount"
msgstr "Einhängen"
@@ -1259,43 +1351,44 @@ msgstr "Einhängen"
msgid "Server"
msgstr "Server"
-#: diskdrake/dav.pm:66 diskdrake/interactive.pm:401
-#: diskdrake/interactive.pm:666 diskdrake/interactive.pm:684
-#: diskdrake/interactive.pm:688 diskdrake/removable.pm:23
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
#: diskdrake/smbnfs_gtk.pm:79
#, c-format
msgid "Mount point"
msgstr "Einhängepunkt"
-#: diskdrake/dav.pm:67 diskdrake/interactive.pm:403
-#: diskdrake/interactive.pm:1072 diskdrake/removable.pm:24
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
#: diskdrake/smbnfs_gtk.pm:80
#, c-format
msgid "Options"
msgstr "Optionen"
-#: diskdrake/dav.pm:68 interactive.pm:387 interactive/gtk.pm:453
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Remove"
msgstr "Entfernen"
-#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:182 diskdrake/removable.pm:26
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
#, c-format
msgid "Done"
msgstr "Fertig"
-#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:123 diskdrake/hd_gtk.pm:289
-#: diskdrake/interactive.pm:247 diskdrake/interactive.pm:260
-#: diskdrake/interactive.pm:450 diskdrake/interactive.pm:520
-#: diskdrake/interactive.pm:525 diskdrake/interactive.pm:656
-#: diskdrake/interactive.pm:942 diskdrake/interactive.pm:1118
-#: diskdrake/interactive.pm:1131 diskdrake/interactive.pm:1134
-#: diskdrake/interactive.pm:1402 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:23
-#: do_pkgs.pm:28 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:65 do_pkgs.pm:82
-#: fsedit.pm:246 interactive/http.pm:117 interactive/http.pm:118
-#: modules/interactive.pm:19 scanner.pm:95 scanner.pm:106 scanner.pm:113
-#: scanner.pm:120 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
#, c-format
msgid "Error"
msgstr "Fehler"
@@ -1310,230 +1403,211 @@ msgstr "Bitte geben Sie die WebDAV-Server-URL an"
msgid "The URL must begin with http:// or https://"
msgstr "Die URL muss mit „http://“ oder „https://“ beginnen!"
-#: diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:407 diskdrake/interactive.pm:303
-#: diskdrake/interactive.pm:388 diskdrake/interactive.pm:550
-#: diskdrake/interactive.pm:747 diskdrake/interactive.pm:805
-#: diskdrake/interactive.pm:922 diskdrake/interactive.pm:964
-#: diskdrake/interactive.pm:965 diskdrake/interactive.pm:1215
-#: diskdrake/interactive.pm:1253 diskdrake/interactive.pm:1401 do_pkgs.pm:19
-#: do_pkgs.pm:39 do_pkgs.pm:57 do_pkgs.pm:77 harddrake/sound.pm:442
-#, c-format
-msgid "Warning"
-msgstr "Warnung"
-
#: diskdrake/dav.pm:106
-#, fuzzy, c-format
-msgid "Are you sure you want to delete this mountpoint?"
-msgstr "Möchten Sie diese Schaltfläche betätigen?"
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr "Sind Sie sicher, dass Sie diesen Einhängepunkt löschen wollen?"
#: diskdrake/dav.pm:124
#, c-format
msgid "Server: "
msgstr "Server: "
-#: diskdrake/dav.pm:125 diskdrake/interactive.pm:493
-#: diskdrake/interactive.pm:1277 diskdrake/interactive.pm:1362
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
#, c-format
msgid "Mount point: "
msgstr "Einhängepunkt: "
-#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1369
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
#, c-format
msgid "Options: %s"
msgstr "Optionen: %s"
-#: diskdrake/hd_gtk.pm:54 diskdrake/interactive.pm:298
-#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:106
-#: fs/partitioning_wizard.pm:51 fs/partitioning_wizard.pm:206
-#: fs/partitioning_wizard.pm:211 fs/partitioning_wizard.pm:250
-#: fs/partitioning_wizard.pm:269 fs/partitioning_wizard.pm:274
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
#, c-format
msgid "Partitioning"
msgstr "Partitionierung"
-#: diskdrake/hd_gtk.pm:68
+#: diskdrake/hd_gtk.pm:74
#, c-format
msgid "Click on a partition, choose a filesystem type then choose an action"
msgstr ""
"Klicken Sie auf eine Partition, wählen Sie den Dateisystem-Typ, dann wählen "
"Sie eine Aktion"
-#: diskdrake/hd_gtk.pm:105 diskdrake/interactive.pm:1093
-#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1156
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
#, c-format
msgid "Read carefully"
msgstr "Lesen Sie bitte aufmerksam"
-#: diskdrake/hd_gtk.pm:105
+#: diskdrake/hd_gtk.pm:134
#, c-format
msgid "Please make a backup of your data first"
-msgstr "Bitte machen Sie erst eine Sicherheitskopie Ihrer Daten!"
+msgstr "Bitte machen Sie zuerst eine Sicherheitskopie Ihrer Daten!"
-#: diskdrake/hd_gtk.pm:106 diskdrake/interactive.pm:240
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
#, c-format
msgid "Exit"
msgstr "Verlassen"
-#: diskdrake/hd_gtk.pm:106
+#: diskdrake/hd_gtk.pm:135
#, c-format
msgid "Continue"
msgstr "Fortfahren"
-#: diskdrake/hd_gtk.pm:177 interactive.pm:653 interactive/gtk.pm:797
-#: interactive/gtk.pm:815 interactive/gtk.pm:836 ugtk2.pm:936
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
#, c-format
msgid "Help"
msgstr "Hilfe"
-#: diskdrake/hd_gtk.pm:223
+#: diskdrake/hd_gtk.pm:260
#, c-format
msgid ""
"You have one big Microsoft Windows partition.\n"
"I suggest you first resize that partition\n"
"(click on it, then click on \"Resize\")"
msgstr ""
-"Sie haben nur eine große FAT-Partition \n"
-"(diese enthält häufig nur Microsoft DOS/Windows).\n"
+"Sie haben nur eine große Windows-Partition.\n"
"Ich rate Ihnen, diese Partition erst zu verkleinern\n"
"(Wählen Sie sie an und drücken Sie dann „Größe ändern“)"
-#: diskdrake/hd_gtk.pm:225
+#: diskdrake/hd_gtk.pm:262
#, c-format
msgid "Please click on a partition"
msgstr "Bitte klicken Sie auf eine Partition"
-#: diskdrake/hd_gtk.pm:239 diskdrake/smbnfs_gtk.pm:63
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
#, c-format
msgid "Details"
msgstr "Details"
-#: diskdrake/hd_gtk.pm:289
+#: diskdrake/hd_gtk.pm:326
#, c-format
-msgid "No hard drives found"
-msgstr "Keine Festplatten gefunden"
+msgid "No hard disk drives found"
+msgstr "Keine Festplattenlaufwerke gefunden"
-#: diskdrake/hd_gtk.pm:316
+#: diskdrake/hd_gtk.pm:365
#, c-format
msgid "Unknown"
msgstr "Unbekannt"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432
#, c-format
-msgid "Ext3"
-msgstr "Ext3"
+msgid "Ext4"
+msgstr "Ext4"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "XFS"
msgstr "XFS"
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Swap"
msgstr "Swap"
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "SunOS"
-msgstr "SunOS"
-
-#: diskdrake/hd_gtk.pm:378
-#, c-format
-msgid "HFS"
-msgstr "HFS"
-
-#: diskdrake/hd_gtk.pm:378
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
#, c-format
msgid "Windows"
msgstr "Windows"
-#: diskdrake/hd_gtk.pm:379 services.pm:158
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
#, c-format
msgid "Other"
msgstr "Andere"
-#: diskdrake/hd_gtk.pm:379 diskdrake/interactive.pm:1292
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
#, c-format
msgid "Empty"
msgstr "Leer"
-#: diskdrake/hd_gtk.pm:386
+#: diskdrake/hd_gtk.pm:440
#, c-format
msgid "Filesystem types:"
msgstr "Dateisystemtypen:"
-#: diskdrake/hd_gtk.pm:407
+#: diskdrake/hd_gtk.pm:461
#, c-format
msgid "This partition is already empty"
-msgstr "Diese Partition ist leer"
+msgstr "Diese Partition ist bereits leer"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``Unmount'' first"
msgstr "Verwenden Sie erst „Aushängen“"
-#: diskdrake/hd_gtk.pm:416
+#: diskdrake/hd_gtk.pm:470
#, c-format
msgid "Use ``%s'' instead (in expert mode)"
-msgstr "Stattdessen „%s“ verwenden (im Expertenmodus)"
+msgstr "Verwenden Sie „%s“ stattdessen (im Expertenmodus)"
-#: diskdrake/hd_gtk.pm:416 diskdrake/interactive.pm:402
-#: diskdrake/interactive.pm:588 diskdrake/removable.pm:25
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
#: diskdrake/removable.pm:48
#, c-format
msgid "Type"
msgstr "Typ"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose another partition"
msgstr "Wählen Sie eine andere Partition"
-#: diskdrake/interactive.pm:211
+#: diskdrake/interactive.pm:210
#, c-format
msgid "Choose a partition"
msgstr "Wählen Sie eine Partition"
-#: diskdrake/interactive.pm:273 diskdrake/interactive.pm:379
-#: interactive/curses.pm:512
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
#, c-format
msgid "More"
msgstr "Mehr"
-#: diskdrake/interactive.pm:281 diskdrake/interactive.pm:291
-#: diskdrake/interactive.pm:1200
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
#, c-format
msgid "Confirmation"
msgstr "Bestätigung"
-#: diskdrake/interactive.pm:281
+#: diskdrake/interactive.pm:280
#, c-format
msgid "Continue anyway?"
msgstr "Wollen Sie trotzdem fortfahren?"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without saving"
msgstr "Beenden ohne speichern"
-#: diskdrake/interactive.pm:286
+#: diskdrake/interactive.pm:285
#, c-format
msgid "Quit without writing the partition table?"
msgstr "Beenden ohne die Partitionstabelle zu speichern?"
-#: diskdrake/interactive.pm:291
+#: diskdrake/interactive.pm:293
#, c-format
-msgid "Do you want to save /etc/fstab modifications"
-msgstr "Möchten Sie die vorgenommenen Änderungen in „/etc/fstab“ speichern?"
+msgid "Do you want to save the /etc/fstab modifications?"
+msgstr "Wollen Sie die Änderungen in /etc/fstab speichern?"
-#: diskdrake/interactive.pm:298 fs/partitioning_wizard.pm:250
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
#, c-format
-msgid "You need to reboot for the partition table modifications to take place"
+msgid "You need to reboot for the partition table modifications to take effect"
msgstr ""
-"Sie müssen Ihren Rechner neu starten, um die Änderungen \n"
-"der Partitionstabelle wirksam werden zu lassen."
+"Sie müssen das System neu starten, damit die Änderungen an der "
+"Partitionstabelle übernommen werden können."
-#: diskdrake/interactive.pm:303
+#: diskdrake/interactive.pm:305
#, c-format
msgid ""
"You should format partition %s.\n"
@@ -1541,45 +1615,45 @@ msgid ""
"Quit anyway?"
msgstr ""
"Sie sollten die Partition %s formatieren.\n"
-"Sonst wird kein Eintrag für den Mount-Punkt %s in fstab geschrieben.\n"
+"Sonst wird kein Eintrag für den Einhängepunkt %s in fstab geschrieben.\n"
"Trotzdem verlassen?"
-#: diskdrake/interactive.pm:316
+#: diskdrake/interactive.pm:318
#, c-format
msgid "Clear all"
msgstr "Alles löschen"
-#: diskdrake/interactive.pm:317
+#: diskdrake/interactive.pm:319
#, c-format
msgid "Auto allocate"
-msgstr "Automatisches Erstellen"
+msgstr "Automatisch erstellen"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to normal mode"
-msgstr "In den Normal-Modus wechseln"
+msgid "Normal mode"
+msgstr "Normalmodus"
-#: diskdrake/interactive.pm:323
+#: diskdrake/interactive.pm:325
#, c-format
-msgid "Toggle to expert mode"
-msgstr "In den Experten-Modus wechseln"
+msgid "Expert mode"
+msgstr "Expertenmodus"
-#: diskdrake/interactive.pm:335
+#: diskdrake/interactive.pm:337
#, c-format
-msgid "Hard drive information"
-msgstr "Festplatten-Informationen"
+msgid "Hard disk drive information"
+msgstr "Festplatten-Information"
-#: diskdrake/interactive.pm:368
+#: diskdrake/interactive.pm:371
#, c-format
msgid "All primary partitions are used"
msgstr "Alle Primärpartitionen sind in Gebrauch"
-#: diskdrake/interactive.pm:369
+#: diskdrake/interactive.pm:372
#, c-format
-msgid "I can not add any more partitions"
-msgstr "Ich kann keinen weiteren Partitionen hinzufügen"
+msgid "I cannot add any more partitions"
+msgstr "Es können keine weiteren Partitionen hinzugefügt werden."
-#: diskdrake/interactive.pm:370
+#: diskdrake/interactive.pm:373
#, c-format
msgid ""
"To have more partitions, please delete one to be able to create an extended "
@@ -1588,257 +1662,283 @@ msgstr ""
"Um mehr Partitionen einrichten zu können, müssen Sie zunächst eine Partition "
"löschen und anschließend eine erweiterte Partition erzeugen."
-#: diskdrake/interactive.pm:381
+#: diskdrake/interactive.pm:384
#, c-format
msgid "Reload partition table"
msgstr "Partitionstabelle neu laden"
-#: diskdrake/interactive.pm:388
+#: diskdrake/interactive.pm:391
#, c-format
msgid "Detailed information"
msgstr "Ausführliche Informationen"
-#: diskdrake/interactive.pm:400
+#: diskdrake/interactive.pm:407
#, c-format
msgid "View"
msgstr "Ansehen"
-#: diskdrake/interactive.pm:405 diskdrake/interactive.pm:760
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
#, c-format
msgid "Resize"
msgstr "Größe ändern"
-#: diskdrake/interactive.pm:406
+#: diskdrake/interactive.pm:413
#, c-format
msgid "Format"
msgstr "Formatieren"
-#: diskdrake/interactive.pm:408 diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
#, c-format
msgid "Add to RAID"
msgstr "Zum RAID hinzufügen"
-#: diskdrake/interactive.pm:409 diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
#, c-format
msgid "Add to LVM"
msgstr "Zum LVM hinzufügen"
-#: diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:417
#, c-format
msgid "Use"
msgstr "Nutze"
-#: diskdrake/interactive.pm:412
+#: diskdrake/interactive.pm:419
#, c-format
msgid "Delete"
msgstr "Löschen"
-#: diskdrake/interactive.pm:413
+#: diskdrake/interactive.pm:420
#, c-format
msgid "Remove from RAID"
msgstr "Aus dem RAID löschen"
-#: diskdrake/interactive.pm:414
+#: diskdrake/interactive.pm:421
#, c-format
msgid "Remove from LVM"
msgstr "Aus dem LVM löschen"
-#: diskdrake/interactive.pm:415
+#: diskdrake/interactive.pm:422
#, c-format
msgid "Remove from dm"
msgstr "Aus dem DM entfernen"
-#: diskdrake/interactive.pm:416
+#: diskdrake/interactive.pm:423
#, c-format
msgid "Modify RAID"
msgstr "RAID modifizieren"
-#: diskdrake/interactive.pm:417
+#: diskdrake/interactive.pm:424
#, c-format
msgid "Use for loopback"
msgstr "Als Loopback verwenden"
-#: diskdrake/interactive.pm:428
+#: diskdrake/interactive.pm:434
#, c-format
msgid "Create"
msgstr "Erzeugen"
-#: diskdrake/interactive.pm:450
-#, fuzzy, c-format
+#: diskdrake/interactive.pm:460
+#, c-format
msgid "Failed to mount partition"
-msgstr "Dateien auf die neue Partition verschieben"
+msgstr "Kann die Partition nicht einhängen"
-#: diskdrake/interactive.pm:482 diskdrake/interactive.pm:484
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
#, c-format
msgid "Create a new partition"
msgstr "Eine neue Partition erzeugen"
-#: diskdrake/interactive.pm:486
+#: diskdrake/interactive.pm:498
#, c-format
msgid "Start sector: "
msgstr "Anfangssektor: "
-#: diskdrake/interactive.pm:489 diskdrake/interactive.pm:957
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
#, c-format
msgid "Size in MB: "
msgstr "Größe in MB:"
-#: diskdrake/interactive.pm:491 diskdrake/interactive.pm:958
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
#, c-format
msgid "Filesystem type: "
msgstr "Dateisystemtyp: "
-#: diskdrake/interactive.pm:497
+#: diskdrake/interactive.pm:513
#, c-format
msgid "Preference: "
msgstr "Einstellung: "
-#: diskdrake/interactive.pm:500
+#: diskdrake/interactive.pm:516
#, c-format
msgid "Logical volume name "
msgstr "Name für logisches Laufwerk"
-#: diskdrake/interactive.pm:520
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr "Partition verschlüsseln"
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr "Verschlüsselungs-Passwort "
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Verschlüsselungs-Passwort (erneut)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Die Verschlüsselungs-Passwörter stimmen nicht überein"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr "Fehlendes Verschlüsselungs-Passwort"
+
+#: diskdrake/interactive.pm:553
#, c-format
msgid ""
-"You can not create a new partition\n"
+"You cannot create a new partition\n"
"(since you reached the maximal number of primary partitions).\n"
"First remove a primary partition and create an extended partition."
msgstr ""
-"Sie können keine weiteren Partitionen anlegen (da Sie die maximale \n"
-"Anzahl primärer Partitionen erstellt haben). Bitte löschen Sie \n"
-"eine primäre Partition und legen Sie stattdessen eine erweiterte \n"
-"Partition an."
+"Sie können keine neue Partition anlegen\n"
+"(da das Maximum an primären Partitionen bereits erreicht wurde).\n"
+"Entfernen Sie zunächst eine primäre Partition und legen Sie dann eine "
+"erweiterte Partition an."
-#: diskdrake/interactive.pm:550
+#: diskdrake/interactive.pm:605
#, c-format
msgid "Remove the loopback file?"
msgstr "Die Loopback-Datei entfernen?"
-#: diskdrake/interactive.pm:572
+#: diskdrake/interactive.pm:625
#, c-format
msgid ""
"After changing type of partition %s, all data on this partition will be lost"
msgstr ""
-"Nach Änderung des Partitionstyps von %s, werden sämtliche Daten darauf "
+"Nach Änderung des Partitionstyps von %s werden sämtliche Daten darauf "
"gelöscht."
-#: diskdrake/interactive.pm:585
+#: diskdrake/interactive.pm:641
#, c-format
msgid "Change partition type"
msgstr "Partitionstyp ändern"
-#: diskdrake/interactive.pm:587 diskdrake/removable.pm:47
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
#, c-format
msgid "Which filesystem do you want?"
msgstr "Welches Dateisystem wollen Sie verwenden?"
-#: diskdrake/interactive.pm:594
+#: diskdrake/interactive.pm:650
#, c-format
msgid "Switching from %s to %s"
msgstr "Wechsle von %s zu %s"
-#: diskdrake/interactive.pm:624
+#: diskdrake/interactive.pm:685
#, c-format
msgid "Set volume label"
msgstr "Datenträgerbezeichnung festlegen"
-#: diskdrake/interactive.pm:626
+#: diskdrake/interactive.pm:687
#, c-format
msgid "Beware, this will be written to disk as soon as you validate!"
msgstr ""
"Beachten Sie! Dies wird auf die Platte geschrieben, sobald Sie bestätigen!"
-#: diskdrake/interactive.pm:627
+#: diskdrake/interactive.pm:688
#, c-format
msgid "Beware, this will be written to disk only after formatting!"
msgstr ""
"Beachten Sie! Dies wird nur nach einer Formatierung auf der Platte "
"gespeichert!"
-#: diskdrake/interactive.pm:629
+#: diskdrake/interactive.pm:690
#, c-format
msgid "Which volume label?"
msgstr "Welche Datenträgerbezeichnung?"
-#: diskdrake/interactive.pm:630
+#: diskdrake/interactive.pm:691
#, c-format
msgid "Label:"
msgstr "Bezeichnung:"
-#: diskdrake/interactive.pm:651
+#: diskdrake/interactive.pm:712
#, c-format
msgid "Where do you want to mount the loopback file %s?"
msgstr "Wo wollen Sie die Loopback-Datei %s einhängen?"
-#: diskdrake/interactive.pm:652
+#: diskdrake/interactive.pm:713
#, c-format
msgid "Where do you want to mount device %s?"
msgstr "Wo wollen Sie das Gerät %s einhängen?"
-#: diskdrake/interactive.pm:657
+#: diskdrake/interactive.pm:718
#, c-format
msgid ""
-"Can not unset mount point as this partition is used for loop back.\n"
+"Cannot unset mount point as this partition is used for loop back.\n"
"Remove the loopback first"
msgstr ""
-"Ich kann diesen Einhängepunkt nicht zurücksetzen, da diese Partition als \n"
-"Loopback verwendet wird. Bitte entfernen Sie erst diesen Loopback."
+"Der Einhängepunkt kann nicht entfernt werden, da diese Partition für ein "
+"„Loopback“ genutzt wird.\n"
+"Entfernen Sie zuerst das „Loopback“"
-#: diskdrake/interactive.pm:687
+#: diskdrake/interactive.pm:748
#, c-format
msgid "Where do you want to mount %s?"
msgstr "Wo wollen Sie „%s“ einhängen?"
-#: diskdrake/interactive.pm:711 diskdrake/interactive.pm:794
-#: fs/partitioning_wizard.pm:146 fs/partitioning_wizard.pm:178
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing"
-msgstr "Berechne die Größe neu"
+msgstr "Größe ändern"
-#: diskdrake/interactive.pm:711
+#: diskdrake/interactive.pm:798
#, c-format
msgid "Computing FAT filesystem bounds"
msgstr "Errechne die Grenzen des FAT-Dateisystems"
-#: diskdrake/interactive.pm:747
+#: diskdrake/interactive.pm:847
#, c-format
msgid "This partition is not resizeable"
msgstr "Die Größe dieser Partition ist nicht änderbar"
-#: diskdrake/interactive.pm:752
+#: diskdrake/interactive.pm:852
#, c-format
-msgid "All data on this partition should be backed-up"
-msgstr "Sie sollten alle Daten dieser Partition sichern"
+msgid "All data on this partition should be backed up"
+msgstr "Für alle Daten auf dieser Partition sollte ein Backup angelegt werden."
-#: diskdrake/interactive.pm:754
+#: diskdrake/interactive.pm:854
#, c-format
msgid "After resizing partition %s, all data on this partition will be lost"
msgstr ""
"Durch Veränderung der Partitionsgröße von %s, gehen sämtliche Daten darauf "
"verloren."
-#: diskdrake/interactive.pm:761
+#: diskdrake/interactive.pm:861
#, c-format
msgid "Choose the new size"
msgstr "Wählen Sie die neue Größe"
-#: diskdrake/interactive.pm:762
+#: diskdrake/interactive.pm:862
#, c-format
msgid "New size in MB: "
msgstr "Neue Größe in MB:"
-#: diskdrake/interactive.pm:763
+#: diskdrake/interactive.pm:863
#, c-format
msgid "Minimum size: %s MB"
msgstr "Minimale Größe: %s MB"
-#: diskdrake/interactive.pm:764
+#: diskdrake/interactive.pm:864
#, c-format
msgid "Maximum size: %s MB"
msgstr "Maximale Größe: %s MB"
-#: diskdrake/interactive.pm:805
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
#, c-format
msgid ""
"To ensure data integrity after resizing the partition(s),\n"
@@ -1848,47 +1948,62 @@ msgstr ""
"zu gewährleisten, wird Microsoft Windows® beim nächsten Hochfahren eine\n"
"Dateisystemprüfung durchführen."
-#: diskdrake/interactive.pm:853 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
#, c-format
msgid "Filesystem encryption key"
msgstr "Dateisystem-Schlüssel"
-#: diskdrake/interactive.pm:854
+#: diskdrake/interactive.pm:982
#, c-format
msgid "Enter your filesystem encryption key"
msgstr "Geben Sie Ihren Schlüssel für die Dateisystemverschlüsselung an"
-#: diskdrake/interactive.pm:855 diskdrake/interactive.pm:1405
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
#, c-format
msgid "Encryption key"
-msgstr "Schlüssel"
+msgstr "Verschlüsselungs-Passwort"
-#: diskdrake/interactive.pm:862
+#: diskdrake/interactive.pm:990
#, c-format
msgid "Invalid key"
msgstr "Ungültiger Schlüssel"
-#: diskdrake/interactive.pm:870
+#: diskdrake/interactive.pm:1013
#, c-format
msgid "Choose an existing RAID to add to"
-msgstr "Wählen Sie einen vorhandenen RAID"
+msgstr "Wählen Sie ein vorhandenes RAID"
-#: diskdrake/interactive.pm:872 diskdrake/interactive.pm:890
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
#, c-format
msgid "new"
msgstr "neu"
-#: diskdrake/interactive.pm:888
+#: diskdrake/interactive.pm:1032
#, c-format
msgid "Choose an existing LVM to add to"
msgstr "Wählen Sie einen vorhandenen LVM"
-#: diskdrake/interactive.pm:895
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr "LVM-Name"
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr "Geben Sie einen Namen für die neue LVM-Gruppe an"
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr "\"%s\" existiert bereits."
+
+#: diskdrake/interactive.pm:1058
#, c-format
-msgid "LVM name?"
-msgstr "LVM-Name?"
+msgid "Setting up LVM"
+msgstr "Konfiguriere den LVM"
-#: diskdrake/interactive.pm:922
+#: diskdrake/interactive.pm:1083
#, c-format
msgid ""
"Physical volume %s is still in use.\n"
@@ -1898,121 +2013,121 @@ msgstr ""
"Möchten Sie verwendete physische Erweiterungen auf diesem Datenträger auf "
"andere Datenträger verschieben?"
-#: diskdrake/interactive.pm:924
+#: diskdrake/interactive.pm:1085
#, c-format
msgid "Moving physical extents"
msgstr "Physische Erweiterungen verschieben"
-#: diskdrake/interactive.pm:942
+#: diskdrake/interactive.pm:1103
#, c-format
-msgid "This partition can not be used for loopback"
-msgstr "Diese Partition kann nicht als Loopback verwendet werden"
+msgid "This partition cannot be used for loopback"
+msgstr "Diese Partition kann nicht für „Loopback“ verwendet werden"
-#: diskdrake/interactive.pm:955
+#: diskdrake/interactive.pm:1116
#, c-format
msgid "Loopback"
msgstr "Loopback"
-#: diskdrake/interactive.pm:956
+#: diskdrake/interactive.pm:1117
#, c-format
msgid "Loopback file name: "
msgstr "Name der Loopback-Datei: "
-#: diskdrake/interactive.pm:961
+#: diskdrake/interactive.pm:1122
#, c-format
msgid "Give a file name"
msgstr "Dateinamen angeben"
-#: diskdrake/interactive.pm:964
+#: diskdrake/interactive.pm:1125
#, c-format
msgid "File is already used by another loopback, choose another one"
msgstr ""
"Diese Datei wird bereits von einer anderen Loopback-Verknüpfung verwendet, "
"wählen Sie eine andere Datei."
-#: diskdrake/interactive.pm:965
+#: diskdrake/interactive.pm:1126
#, c-format
msgid "File already exists. Use it?"
msgstr "Datei existiert bereits. Soll ich sie verwenden?"
-#: diskdrake/interactive.pm:997 diskdrake/interactive.pm:1000
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
#, c-format
msgid "Mount options"
-msgstr "Einhänge-Optionen"
+msgstr "Einhängeoptionen"
-#: diskdrake/interactive.pm:1007
+#: diskdrake/interactive.pm:1168
#, c-format
msgid "Various"
msgstr "Verschiedene"
-#: diskdrake/interactive.pm:1074
+#: diskdrake/interactive.pm:1214
#, c-format
msgid "device"
msgstr "Gerät"
-#: diskdrake/interactive.pm:1075
+#: diskdrake/interactive.pm:1215
#, c-format
msgid "level"
msgstr "Ebene"
-#: diskdrake/interactive.pm:1076
+#: diskdrake/interactive.pm:1216
#, c-format
msgid "chunk size in KiB"
-msgstr "Blockgröße in KiB"
+msgstr "Blockgröße in kB"
-#: diskdrake/interactive.pm:1094
+#: diskdrake/interactive.pm:1234
#, c-format
msgid "Be careful: this operation is dangerous."
-msgstr "Vorsicht:!! Diese Aktion ist gefährlich."
+msgstr "Vorsicht: Diese Aktion ist gefährlich."
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "Partitioning Type"
msgstr "Partitionierungsart"
-#: diskdrake/interactive.pm:1109
+#: diskdrake/interactive.pm:1250
#, c-format
msgid "What type of partitioning?"
msgstr "Welcher Partitionstyp?"
-#: diskdrake/interactive.pm:1147
+#: diskdrake/interactive.pm:1288
#, c-format
-msgid "You'll need to reboot before the modification can take place"
+msgid "You'll need to reboot before the modification can take effect"
msgstr ""
-"Sie müssen Ihren Rechner neu starten, damit die Veränderungen wirksam werden."
+"Sie müssen das System neu starten, damit die Änderung übernommen werden kann."
-#: diskdrake/interactive.pm:1156
+#: diskdrake/interactive.pm:1297
#, c-format
msgid "Partition table of drive %s is going to be written to disk"
-msgstr "Die Partitionstabelle der Platte „%s“ wird gespeichert"
+msgstr "Die Partitionstabelle der Platte %s wird gespeichert"
-#: diskdrake/interactive.pm:1178 fs/format.pm:96 fs/format.pm:103
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
#, c-format
msgid "Formatting partition %s"
-msgstr "Formatiere Partition „%s“"
+msgstr "Partition %s wird formatiert"
-#: diskdrake/interactive.pm:1191
+#: diskdrake/interactive.pm:1329
#, c-format
msgid "After formatting partition %s, all data on this partition will be lost"
msgstr ""
"Nach Formatieren der Partition %s, werden sämtliche Daten darauf gelöscht."
-#: diskdrake/interactive.pm:1200 fs/partitioning.pm:48
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
#, c-format
-msgid "Check bad blocks?"
-msgstr "Soll ich nach defekten Blöcken suchen?"
+msgid "Check for bad blocks?"
+msgstr "Auf defekte Sektoren überprüfen?"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Move files to the new partition"
msgstr "Dateien auf die neue Partition verschieben"
-#: diskdrake/interactive.pm:1214
+#: diskdrake/interactive.pm:1358
#, c-format
msgid "Hide files"
msgstr "Dateien verstecken"
-#: diskdrake/interactive.pm:1215
+#: diskdrake/interactive.pm:1359
#, c-format
msgid ""
"Directory %s already contains data\n"
@@ -2026,131 +2141,130 @@ msgstr ""
"(%s)\n"
"\n"
"Sie haben die Wahl, die Daten in die neue Partition zu kopieren oder sie an "
-"dem Ort zu belassen. (Was zur Folge hat, dass sie durch die Partition "
-"verdeckt werden)"
+"dem Ort zu belassen (was zur Folge hat, dass diese durch den Inhalt der "
+"eingehangenen Partition verdeckt werden)"
-#: diskdrake/interactive.pm:1230
+#: diskdrake/interactive.pm:1374
#, c-format
msgid "Moving files to the new partition"
-msgstr "Verschiebe Dateien auf die neue Partition"
+msgstr "Dateien werden auf die neue Partition verschoben"
-#: diskdrake/interactive.pm:1234
+#: diskdrake/interactive.pm:1378
#, c-format
msgid "Copying %s"
-msgstr "Kopiere %s"
+msgstr "%s wird kopiert"
-#: diskdrake/interactive.pm:1238
+#: diskdrake/interactive.pm:1382
#, c-format
msgid "Removing %s"
-msgstr "Entferne %s"
+msgstr "%s wird entfernt"
-#: diskdrake/interactive.pm:1252
+#: diskdrake/interactive.pm:1396
#, c-format
msgid "partition %s is now known as %s"
msgstr "die Partition %s heißt nun %s"
-#: diskdrake/interactive.pm:1253
+#: diskdrake/interactive.pm:1397
#, c-format
msgid "Partitions have been renumbered: "
msgstr "Die Partitionen wurden neu nummeriert:"
-#: diskdrake/interactive.pm:1278 diskdrake/interactive.pm:1346
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
#, c-format
msgid "Device: "
msgstr "Gerät: "
-#: diskdrake/interactive.pm:1279
+#: diskdrake/interactive.pm:1423
#, c-format
msgid "Volume label: "
-msgstr "Datenträger-Bezeichnung: "
+msgstr "Datenträgerbezeichnung: "
-#: diskdrake/interactive.pm:1280
+#: diskdrake/interactive.pm:1424
#, c-format
msgid "UUID: "
msgstr "UUID: "
-#: diskdrake/interactive.pm:1281
+#: diskdrake/interactive.pm:1425
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr "DOS Laufwerksbuchstabe: %s (vermutlich?)\n"
-#: diskdrake/interactive.pm:1285 diskdrake/interactive.pm:1294
-#: diskdrake/interactive.pm:1365
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
#, c-format
msgid "Type: "
msgstr "Typ:"
-#: diskdrake/interactive.pm:1289 diskdrake/interactive.pm:1350
-#, c-format
-msgid "Name: "
-msgstr "Name: "
-
-#: diskdrake/interactive.pm:1296
+#: diskdrake/interactive.pm:1431
#, c-format
msgid "Start: sector %s\n"
msgstr "Anfang: Sektor %s\n"
-#: diskdrake/interactive.pm:1297
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr "Größe: %s (%s%% des Datenträgers)"
+
+#: diskdrake/interactive.pm:1435
#, c-format
msgid "Size: %s"
msgstr "Größe: %s"
-#: diskdrake/interactive.pm:1299
+#: diskdrake/interactive.pm:1437
#, c-format
msgid ", %s sectors"
msgstr ", %s Sektoren"
-#: diskdrake/interactive.pm:1301
+#: diskdrake/interactive.pm:1439
#, c-format
msgid "Cylinder %d to %d\n"
msgstr "Zylinder %d bis %d\n"
-#: diskdrake/interactive.pm:1302
+#: diskdrake/interactive.pm:1440
#, c-format
msgid "Number of logical extents: %d\n"
msgstr "Anzahl logischer Erweiterungen: %d\n"
-#: diskdrake/interactive.pm:1303
+#: diskdrake/interactive.pm:1441
#, c-format
msgid "Formatted\n"
msgstr "Formatiert\n"
-#: diskdrake/interactive.pm:1304
+#: diskdrake/interactive.pm:1442
#, c-format
msgid "Not formatted\n"
msgstr "Nicht formatiert\n"
-#: diskdrake/interactive.pm:1305
+#: diskdrake/interactive.pm:1443
#, c-format
msgid "Mounted\n"
msgstr "Eingehängt\n"
-#: diskdrake/interactive.pm:1306
+#: diskdrake/interactive.pm:1444
#, c-format
msgid "RAID %s\n"
msgstr "RAID %s\n"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1446
#, c-format
msgid "Encrypted"
msgstr "Verschlüsselt"
-#: diskdrake/interactive.pm:1308
+#: diskdrake/interactive.pm:1448
#, c-format
msgid " (mapped on %s)"
-msgstr ""
+msgstr "(abgebildet auf %s)"
-#: diskdrake/interactive.pm:1309
+#: diskdrake/interactive.pm:1449
#, c-format
msgid " (to map on %s)"
-msgstr ""
+msgstr "(abzubilden auf %s)"
-#: diskdrake/interactive.pm:1310
+#: diskdrake/interactive.pm:1450
#, c-format
msgid " (inactive)"
msgstr " (deaktiviert)"
-#: diskdrake/interactive.pm:1316
+#: diskdrake/interactive.pm:1457
#, c-format
msgid ""
"Loopback file(s):\n"
@@ -2159,7 +2273,7 @@ msgstr ""
"Loopback-Datei(en):\n"
" %s\n"
-#: diskdrake/interactive.pm:1317
+#: diskdrake/interactive.pm:1458
#, c-format
msgid ""
"Partition booted by default\n"
@@ -2168,27 +2282,27 @@ msgstr ""
"Partition wird standardmäßig geladen\n"
" (für MS-DOS-Boot, nicht jedoch für LILO)\n"
-#: diskdrake/interactive.pm:1319
+#: diskdrake/interactive.pm:1460
#, c-format
msgid "Level %s\n"
msgstr "Ebene %s\n"
-#: diskdrake/interactive.pm:1320
+#: diskdrake/interactive.pm:1461
#, c-format
msgid "Chunk size %d KiB\n"
-msgstr "Blockgröße %d KiB\n"
+msgstr "Blockgröße %d kiB\n"
-#: diskdrake/interactive.pm:1321
+#: diskdrake/interactive.pm:1462
#, c-format
msgid "RAID-disks %s\n"
msgstr "RAID-Platten %s\n"
-#: diskdrake/interactive.pm:1323
+#: diskdrake/interactive.pm:1464
#, c-format
msgid "Loopback file name: %s"
msgstr "Dateiname des Loopbacks: %s"
-#: diskdrake/interactive.pm:1326
+#: diskdrake/interactive.pm:1467
#, c-format
msgid ""
"\n"
@@ -2203,7 +2317,7 @@ msgstr ""
"sie daher besser unverändert\n"
"lassen.\n"
-#: diskdrake/interactive.pm:1329
+#: diskdrake/interactive.pm:1470
#, c-format
msgid ""
"\n"
@@ -2217,89 +2331,77 @@ msgstr ""
"Betriebssysteme auf dem selben\n"
"Rechner.\n"
-#: diskdrake/interactive.pm:1338
+#: diskdrake/interactive.pm:1479
#, c-format
msgid "Free space on %s (%s)"
msgstr "Freier Speicher auf %s (%s)"
-#: diskdrake/interactive.pm:1347
+#: diskdrake/interactive.pm:1488
#, c-format
msgid "Read-only"
msgstr "Nur lesbar"
-#: diskdrake/interactive.pm:1348
+#: diskdrake/interactive.pm:1489
#, c-format
msgid "Size: %s\n"
msgstr "Größe: %s\n"
-#: diskdrake/interactive.pm:1349
+#: diskdrake/interactive.pm:1490
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr "Geometrie: %s Zylinder, %s Köpfe, %s Sektoren\n"
-#: diskdrake/interactive.pm:1351
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Name: "
+
+#: diskdrake/interactive.pm:1492
#, c-format
msgid "Medium type: "
msgstr "Medienart: "
-#: diskdrake/interactive.pm:1352
+#: diskdrake/interactive.pm:1493
#, c-format
msgid "LVM-disks %s\n"
msgstr "LVM-Platten %s\n"
-#: diskdrake/interactive.pm:1353
+#: diskdrake/interactive.pm:1494
#, c-format
msgid "Partition table type: %s\n"
msgstr "Partitionstabellentyp: %s\n"
-#: diskdrake/interactive.pm:1354
+#: diskdrake/interactive.pm:1495
#, c-format
msgid "on channel %d id %d\n"
msgstr "auf Kanal %d ID %d\n"
-#: diskdrake/interactive.pm:1398
+#: diskdrake/interactive.pm:1541
#, c-format
msgid "Choose your filesystem encryption key"
-msgstr "Wählen Sie Ihren Dateisystem-Schlüssel (Passwort)"
+msgstr "Wählen Sie Ihr Dateisystem Verschlüsselungs-Passwort"
-#: diskdrake/interactive.pm:1401
+#: diskdrake/interactive.pm:1544
#, c-format
msgid "This encryption key is too simple (must be at least %d characters long)"
msgstr ""
"Dieses Passwort ist zu einfach (es muss mindestens %d Zeichen lang sein)!"
-#: diskdrake/interactive.pm:1402
-#, c-format
-msgid "The encryption keys do not match"
-msgstr "Die Passwörter stimmen nicht überein"
-
-#: diskdrake/interactive.pm:1406
-#, c-format
-msgid "Encryption key (again)"
-msgstr "Schlüssel (erneut)"
-
-#: diskdrake/interactive.pm:1408
+#: diskdrake/interactive.pm:1551
#, c-format
msgid "Encryption algorithm"
-msgstr "Verschlüsselungsalgorythmus"
+msgstr "Verschlüsselungsalgorithmus"
#: diskdrake/removable.pm:46
#, c-format
msgid "Change type"
msgstr "Typ ändern"
-#: diskdrake/smbnfs_gtk.pm:81 interactive.pm:129 interactive.pm:550
-#: interactive/curses.pm:260 interactive/http.pm:104 interactive/http.pm:160
-#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:844 ugtk2.pm:415
-#: ugtk2.pm:517 ugtk2.pm:526 ugtk2.pm:812
-#, c-format
-msgid "Cancel"
-msgstr "Abbrechen"
-
#: diskdrake/smbnfs_gtk.pm:164
#, c-format
-msgid "Can not login using username %s (bad password?)"
-msgstr "Ich kann mich unter „%s“ nicht anmelden! Stimmt das Passwort?"
+msgid "Cannot login using username %s (bad password?)"
+msgstr ""
+"Login mit diesem Benutzernamen %s war nicht erfolgreich (falsches Passwort?)"
#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
#, c-format
@@ -2320,7 +2422,9 @@ msgstr "Anderer"
#, c-format
msgid ""
"Please enter your username, password and domain name to access this host."
-msgstr "Bitte geben Sie Benutzername, Passwort und Domäne des Rechners an."
+msgstr ""
+"Bitte geben Sie Benutzername, Passwort und Domäne an, um sich an diesem "
+"Rechner anzumelden."
#: diskdrake/smbnfs_gtk.pm:180
#, c-format
@@ -2339,79 +2443,91 @@ msgstr "Server suchen"
#: diskdrake/smbnfs_gtk.pm:211
#, c-format
-msgid "Search new servers"
-msgstr "Neue Server suchen"
+msgid "Search for new servers"
+msgstr "Suche nach neuen Servern"
-#: do_pkgs.pm:19 do_pkgs.pm:57
+#: do_pkgs.pm:45 do_pkgs.pm:100
#, c-format
msgid "The package %s needs to be installed. Do you want to install it?"
-msgstr "Das Paket %s muss installiert sein. Soll ich es installieren?"
+msgstr "Das Paket %s muss installiert sein. Soll es installiert werden?"
-#: do_pkgs.pm:23 do_pkgs.pm:44 do_pkgs.pm:60 do_pkgs.pm:82
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
#, c-format
msgid "Could not install the %s package!"
-msgstr "Konnte das Paket %s nicht installieren!"
+msgstr "Das %s Paket konnte nicht installiert werden!"
-#: do_pkgs.pm:28 do_pkgs.pm:65
+#: do_pkgs.pm:54 do_pkgs.pm:108
#, c-format
msgid "Mandatory package %s is missing"
msgstr "Das zwingend benötigte Paket „%s“ fehlt."
-#: do_pkgs.pm:39 do_pkgs.pm:77
+#: do_pkgs.pm:74 do_pkgs.pm:137
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Die folgenden Pakete müssen installiert werden:\n"
-#: do_pkgs.pm:241
+#: do_pkgs.pm:342
#, c-format
msgid "Installing packages..."
-msgstr "Pakete werden installiert..."
+msgstr "Pakete werden installiert ..."
-#: do_pkgs.pm:287 pkgs.pm:281
+#: do_pkgs.pm:388 pkgs.pm:301
#, c-format
msgid "Removing packages..."
-msgstr "Pakete werden entfernt..."
+msgstr "Pakete werden entfernt ..."
-#: fs/any.pm:17
+#: fs/any.pm:21
#, c-format
msgid ""
"An error occurred - no valid devices were found on which to create new "
"filesystems. Please check your hardware for the cause of this problem"
msgstr ""
-"Ein Fehler ist aufgetreten - kein gültiges Gerät wurde gefunden auf dem das "
-"Dateisystem erstellt werden kann. Bitte überprüfen Sie die Hardware, um den "
-"Grund dieses Fehlers zu finden."
+"Ein Fehler ist aufgetreten - es wurde kein gültiges Gerät gefunden auf dem "
+"das Dateisystem erstellt werden kann. Bitte überprüfen Sie die Hardware, um "
+"den Grund für diesen Fehler zu finden."
+
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
+#, c-format
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "In /boot/EFI muss eine ESP FAT32-Partition eingehangen sein"
-#: fs/any.pm:75 fs/partitioning_wizard.pm:59
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
#, c-format
-msgid "You must have a FAT partition mounted in /boot/efi"
-msgstr "/boot/efi muss eine FAT Partition sein"
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+"Sie benötigen für ein GPT-partitioniertes Laufwerk, welches nicht unter UEFI "
+"verwendet wird, eine BIOS Bootpartition. Bitte erstellen Sie eine BIOS "
+"Bootpartition bevor Sie fortfahren."
-#: fs/format.pm:100
+#: fs/format.pm:176
#, c-format
msgid "Creating and formatting file %s"
msgstr "Erzeugen und Formatieren der Datei %s"
-#: fs/format.pm:119
+#: fs/format.pm:202
#, c-format
msgid "I do not know how to set label on %s with type %s"
-msgstr "Ich weiß nicht, wie ich die Bezeichnung von %s mit Typ %s setzen soll"
+msgstr ""
+"Es ist nicht bekannt, wie die Bezeichnung von %s mit Typ %s gesetzt werden "
+"soll"
-#: fs/format.pm:126
+#: fs/format.pm:214
#, c-format
msgid "setting label on %s failed, is it formatted?"
msgstr ""
"Das Festlegen einer Datenträgerbezeichnung für %s schlug fehl, ist das Gerät "
"formatiert?"
-#: fs/format.pm:167
+#: fs/format.pm:280
#, c-format
msgid "I do not know how to format %s in type %s"
msgstr ""
-"Ich bin nicht in der Lage, %s mit einem Dateisystem vom Typ %s zu "
-"formatieren."
+"Es ist nicht bekannt, wie %s mit einem Dateisystem vom Typ %s zu formatiert "
+"ist ."
-#: fs/format.pm:172 fs/format.pm:174
+#: fs/format.pm:285 fs/format.pm:287
#, c-format
msgid "%s formatting of %s failed"
msgstr "%s formatieren von %s schlug fehl"
@@ -2419,37 +2535,37 @@ msgstr "%s formatieren von %s schlug fehl"
#: fs/loopback.pm:24
#, c-format
msgid "Circular mounts %s\n"
-msgstr "Schleife bem Einbinden %s\n"
+msgstr "Schleife beim Einbinden %s\n"
#: fs/mount.pm:85
#, c-format
msgid "Mounting partition %s"
msgstr "Partition „%s“ einhängen"
-#: fs/mount.pm:86
+#: fs/mount.pm:87
#, c-format
msgid "mounting partition %s in directory %s failed"
msgstr "Das Einhängen der Partition %s in das Verzeichnis %s schlug fehl."
-#: fs/mount.pm:91 fs/mount.pm:108
+#: fs/mount.pm:92 fs/mount.pm:109
#, c-format
msgid "Checking %s"
msgstr "%s wird überprüft"
-#: fs/mount.pm:125 partition_table.pm:405
+#: fs/mount.pm:126 partition_table.pm:502
#, c-format
msgid "error unmounting %s: %s"
msgstr "Fehler beim Aushängen von %s: %s"
-#: fs/mount.pm:140
+#: fs/mount.pm:141
#, c-format
msgid "Enabling swap partition %s"
msgstr "Swap-Partition „%s“ aktivieren"
#: fs/mount_options.pm:114
#, c-format
-msgid "Use an encrypted file system"
-msgstr "Ein verschlüsseltes Dateisystem verwenden"
+msgid "Enable POSIX Access Control Lists"
+msgstr "Aktiviere die POSIX-Zugangskontrolllisten (ACLs)"
#: fs/mount_options.pm:116
#, c-format
@@ -2466,11 +2582,11 @@ msgstr ""
#: fs/mount_options.pm:120
#, c-format
msgid ""
-"Do not update inode access times on this file system\n"
+"Do not update inode access times on this filesystem\n"
"(e.g, for faster access on the news spool to speed up news servers)."
msgstr ""
-"Inode-Zugriffszeiten auf diesem System nicht aktualisieren\n"
-"(z.B. für schnellere Zugriffe auf den News-Spool um News-Server zu "
+"Die Inode-Zugangszeit auf diesem Dateisystem nicht aktualisieren\n"
+"(z.B. für schnelleren Zugang zum News-Spool und um den Server zu "
"beschleunigen)."
#: fs/mount_options.pm:123
@@ -2487,28 +2603,27 @@ msgstr ""
#, c-format
msgid ""
"Can only be mounted explicitly (i.e.,\n"
-"the -a option will not cause the file system to be mounted)."
+"the -a option will not cause the filesystem to be mounted)."
msgstr ""
-"Kann nur explizit eingehängt werden (so wird\n"
-"etwa das Dateisystem nicht bei „-a“ eingehängt)."
+"Kann nur explizit eingehangen werden (bedeutet,\n"
+"die Option -a wird das Dateisystem nicht einhängen)"
#: fs/mount_options.pm:129
#, c-format
-msgid "Do not interpret character or block special devices on the file system."
+msgid "Do not interpret character or block special devices on the filesystem."
msgstr ""
-"Interpretiere keine zeichen- oder speziellen blockorientierten Geräte auf "
-"dem Dateisystem."
+"Charakter- oder spezielle Block-Geräte im Dateisystem nicht interpretieren."
#: fs/mount_options.pm:131
#, c-format
msgid ""
"Do not allow execution of any binaries on the mounted\n"
-"file system. This option might be useful for a server that has file systems\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
"containing binaries for architectures other than its own."
msgstr ""
-"Verbiete die Ausführung jeglicher Binärdateien auf dem ein-\n"
-"gehängten Dateisystem. Diese Option ist nützlich für Server mit Datei-\n"
-"systemen, auf denen sich Binärdateien fremder Architekturen befinden. "
+"Die Ausführung von Binärdateien auf dem eingehangenen Dateisystem\n"
+"unterbinden. Diese Option kann nützlich sein für einen Server mit\n"
+"Dateisystemen, die Binärdateien für andere Architekturen enthalten."
#: fs/mount_options.pm:135
#, c-format
@@ -2517,29 +2632,31 @@ msgid ""
"bits to take effect. (This seems safe, but is in fact rather unsafe if you\n"
"have suidperl(1) installed.)"
msgstr ""
-"Verhindere die Wirkung von gesetzen Benutzer- oder Gruppen-Identifier-\n"
-"Bits. (Dies scheint sicher, ist aber in faktisch unsicherer falls Sie\n"
+"Die Wirkung von gesetzen Benutzer- oder Gruppen-Identifikator-\n"
+"Bits unterbinden. (Dies erscheint sicher, ist aber faktisch unsicherer falls "
+"Sie\n"
"suidperl(1) installiert haben.)"
#: fs/mount_options.pm:139
#, c-format
-msgid "Mount the file system read-only."
-msgstr "Das Dateisystem read only einhängen/mounten"
+msgid "Mount the filesystem read-only."
+msgstr "Dateisystem im \"nur Lesen\"-Modus einhängen"
#: fs/mount_options.pm:141
#, c-format
-msgid "All I/O to the file system should be done synchronously."
-msgstr "Alle I/O-Operationen am Dateisystem sollten parallel gemacht werden."
+msgid "All I/O to the filesystem should be done synchronously."
+msgstr ""
+"Alle I/O-Zugriffe auf das Dateisystem sollten synchron durchgeführt werden."
#: fs/mount_options.pm:143
#, c-format
-msgid "Allow every user to mount and umount the file system."
-msgstr "Jedem Benutzer das Ein- und Aushängen des Dateisystems erlauben."
+msgid "Allow every user to mount and umount the filesystem."
+msgstr "Erlaube allen Usern, das Dateisystem ein- und auszuhängen."
#: fs/mount_options.pm:145
#, c-format
-msgid "Allow an ordinary user to mount the file system."
-msgstr "Normalen Benutzern das Einhängen des Dateisystems erlauben."
+msgid "Allow an ordinary user to mount the filesystem."
+msgstr "Erlaube dem einfachen Benutzer, das Dateisystem einzuhängen."
#: fs/mount_options.pm:147
#, c-format
@@ -2549,169 +2666,138 @@ msgstr "Nutzer-Platten-Quota aktivieren und wahlweise Grenzwerte durchsetzen"
#: fs/mount_options.pm:149
#, c-format
msgid "Support \"user.\" extended attributes"
-msgstr "Unterstütze\"Benutzer.\" erweiterte Eigenschaften"
+msgstr "Unterstütze \"user.\"-erweiterte Eigenschaften"
#: fs/mount_options.pm:151
#, c-format
msgid "Give write access to ordinary users"
-msgstr "Schreib Zugriff für den normalen Benutzer"
+msgstr "Schreib-Zugriff für den normalen Benutzer"
#: fs/mount_options.pm:153
#, c-format
msgid "Give read-only access to ordinary users"
-msgstr "Schreib-Zugriff für den normalen Benutzer"
+msgstr "Nur-Lese-Zugriff für den normalen Benutzer"
-#: fs/mount_point.pm:80
+#: fs/mount_point.pm:87
#, c-format
msgid "Duplicate mount point %s"
msgstr "Einhängepunkt %s duplizieren"
-#: fs/mount_point.pm:95
+#: fs/mount_point.pm:102
#, c-format
msgid "No partition available"
-msgstr "Keine Partitionerfügbar"
+msgstr "Keine Partition verfügbar"
-#: fs/mount_point.pm:98
+#: fs/mount_point.pm:105
#, c-format
msgid "Scanning partitions to find mount points"
-msgstr "Suche Partitionen um den Einhängepunkt zu finden"
+msgstr "Überprüfe Partitionen um den Einhängepunkt zu finden"
-#: fs/mount_point.pm:105
+#: fs/mount_point.pm:112
#, c-format
msgid "Choose the mount points"
msgstr "Wählen Sie den Einhängepunkt"
-#: fs/partitioning.pm:46
+#: fs/partitioning.pm:48
#, c-format
msgid "Choose the partitions you want to format"
-msgstr "Wählen Sie die Partition die Sie formatieren wollen"
+msgstr "Wählen Sie die Partition(en) die Sie formatieren wollen"
-#: fs/partitioning.pm:75
+#: fs/partitioning.pm:77
#, c-format
msgid ""
"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
"you can lose data)"
msgstr ""
-"Fehler beim Checken des %s Dateisystem. Wollen Sie die Fehler beheben? "
-"(Beachte. Sie können Daten verliehren)"
+"Fehler beim Prüfen des %s Dateisystem. Wollen Sie die Fehler beheben? "
+"(Beachten Sie, Sie können Daten verlieren)"
-#: fs/partitioning.pm:78
+#: fs/partitioning.pm:80
#, c-format
msgid "Not enough swap space to fulfill installation, please add some"
msgstr ""
-"Nicht genug swap Speicher um die Installation auszuführen, bitte fügen Sie "
-"mehr swap Speicher hinzu"
+"Nicht genug Swap-Speicher um die Installation auszuführen, bitte fügen Sie "
+"mehr Swap-Speicher hinzu"
-#: fs/partitioning_wizard.pm:51
+#: fs/partitioning_wizard.pm:80
#, c-format
msgid ""
"You must have a root partition.\n"
-"For this, create a partition (or click on an existing one).\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
"Then choose action ``Mount point'' and set it to `/'"
msgstr ""
-"Sie brauchen eine root Partition.\n"
-"Erstellen Sie eine (oder Kicken Sie auf eine bestehende).\n"
-"Wählen Sie dann den ``Einhängepunkt'' Knopf und wählen Sie `/' aus"
+"Sie müssen eine Root-Partition haben. \n"
+"Um das zu bewerkstelligen, richten Sie zuerst eine Partition ein (oder "
+"klicken auf eine bereits existierende Partition).\n"
+"Danach wählen Sie die Aktion „Einhängepunkt“ und setzen die Einstellung dort "
+"auf „/“"
-#: fs/partitioning_wizard.pm:56
+#: fs/partitioning_wizard.pm:86
#, c-format
msgid ""
"You do not have a swap partition.\n"
"\n"
"Continue anyway?"
msgstr ""
-"Sie haben keine swap Partition.\n"
+"Sie haben keine Swap-Partition.\n"
"\n"
"Wollen Sie fortfahren?"
-#: fs/partitioning_wizard.pm:84
+#: fs/partitioning_wizard.pm:129
#, c-format
msgid "Use free space"
-msgstr "Verwende freien Platz"
+msgstr "Freien Speicherplatz verwenden"
-#: fs/partitioning_wizard.pm:86
+#: fs/partitioning_wizard.pm:131
#, c-format
msgid "Not enough free space to allocate new partitions"
msgstr "Nicht genug freier Platz, um die neue Partition hinzuzufügen"
-#: fs/partitioning_wizard.pm:94
+#: fs/partitioning_wizard.pm:139
#, c-format
msgid "Use existing partitions"
-msgstr "Bestehende Partitionen"
+msgstr "Bestehende Partitionen verwenden"
-#: fs/partitioning_wizard.pm:96
+#: fs/partitioning_wizard.pm:141
#, c-format
msgid "There is no existing partition to use"
-msgstr "Es gibt keine existierende Partition, die ich verwenden kann."
-
-#: fs/partitioning_wizard.pm:103
-#, c-format
-msgid "Use the Microsoft Windows® partition for loopback"
-msgstr "Verwende die Microsoft Windows® Partition als Loopback"
-
-#: fs/partitioning_wizard.pm:106
-#, c-format
-msgid "Which partition do you want to use for Linux4Win?"
-msgstr "Welche Partition wollen Sie für Linux4Win verwenden?"
-
-#: fs/partitioning_wizard.pm:108
-#, c-format
-msgid "Choose the sizes"
-msgstr "Wählen Sie die Größe"
+msgstr "Es gibt keine existierende Partition, die verwendet werden kann."
-#: fs/partitioning_wizard.pm:109
+#: fs/partitioning_wizard.pm:165
#, c-format
-msgid "Root partition size in MB: "
-msgstr "Root Partitions Größe in MB: "
-
-#: fs/partitioning_wizard.pm:110
-#, c-format
-msgid "Swap partition size in MB: "
-msgstr "Swap Partitions Größe in MB: "
-
-#: fs/partitioning_wizard.pm:119
-#, c-format
-msgid "There is no FAT partition to use as loopback (or not enough space left)"
-msgstr ""
-"Es gibt keine FAT Partition die als Loopback verwendet werden kann (oder "
-"nicht genügen Speicher vorhanden)"
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "Die Größe der Microsoft Windows®-Partition berechnen"
-#: fs/partitioning_wizard.pm:127
+#: fs/partitioning_wizard.pm:201
#, c-format
msgid "Use the free space on a Microsoft Windows® partition"
-msgstr "Verwende den freien Speicherplatz auf der Microsoft Windows® Partition"
+msgstr ""
+"Den freien Speicherplatz auf der Microsoft Windows® Partition verwenden"
-#: fs/partitioning_wizard.pm:129
+#: fs/partitioning_wizard.pm:205
#, c-format
msgid "Which partition do you want to resize?"
msgstr "Bei welcher Partition wollen Sie die Größe ändern?"
-#: fs/partitioning_wizard.pm:143
+#: fs/partitioning_wizard.pm:208
#, c-format
msgid ""
-"The FAT resizer is unable to handle your partition, \n"
-"the following error occurred: %s"
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
msgstr ""
-"Das Werkzeug zum Verändern der FAT-Partitionsgröße kann mit der \n"
-"Partition nicht arbeiten. Folgender Fehler trat auf:%s"
-
-#: fs/partitioning_wizard.pm:146
-#, c-format
-msgid "Computing the size of the Microsoft Windows® partition"
-msgstr "Berechne die Größe der Microsoft Windows®-Partition"
+"Ihre Microsoft-Windows(R)-Partition ist zu stark fragmentiert. Bitte starten "
+"Sie Ihren Computer zuerst unter Microsoft Windows(R) und führen Sie das "
+"„defrag“-Programm aus, dann starten Sie die %s-Installation neu."
-#: fs/partitioning_wizard.pm:153
+#: fs/partitioning_wizard.pm:215
#, c-format
-msgid ""
-"Your Microsoft Windows® partition is too fragmented. Please reboot your "
-"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
-"the Mandriva Linux installation."
+msgid "Failed to find the partition to resize (%d choices)"
msgstr ""
-"Ihr Microsoft Windows® Partition ist zu fragmentiert. Bitte starten Sie "
-"ihren Computer mit Microsoft Windows®, starten Sie das ``Defragmentierungs'' "
-"Tool, dann starten Sie die Mandriva Linux Installation neu."
+"Die Partition, bei der die Größe geändert werden soll, wurde nicht gefunden "
+"(%d Auswahlmöglichkeiten)"
-#: fs/partitioning_wizard.pm:156
+#: fs/partitioning_wizard.pm:222
#, c-format
msgid ""
"WARNING!\n"
@@ -2722,8 +2808,8 @@ msgid ""
"\n"
"Be careful: this operation is dangerous. If you have not already done so, "
"you first need to exit the installation, run \"chkdsk c:\" from a Command "
-"Prompt under Microsoft Windows® (beware, running graphical program \"scandisk"
-"\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
"optionally run defrag, then restart the installation. You should also backup "
"your data.\n"
"\n"
@@ -2740,8 +2826,8 @@ msgstr ""
"getan haben, sollten Sie nun die Installation abbrechen, um „chkdsk c:“ von "
"einem DOS Prompt unter Windows auf die Partition anzuwenden (Achtung:"
"scandisk unter der grafischen Windows Oberfläche reicht nicht aus, bitte "
-"„chkdsk“ in einem DOS Prompt ausführen!)Defragmentieren. Anschließend können "
-"Sie die Installation erneut starten.\n"
+"„chkdsk“ in einem DOS Prompt ausführen!) Defragmentieren. Anschließend "
+"können Sie die Installation erneut starten.\n"
"Sie sollten natürlich generell Sicherheitskopien Ihrer Daten angelegt\n"
"haben.\n"
"\n"
@@ -2749,152 +2835,159 @@ msgstr ""
"Falls dies der Fall ist, können Sie mit %s fortfahren."
#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: fs/partitioning_wizard.pm:165 interactive.pm:549 interactive/curses.pm:263
-#: ugtk2.pm:519
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Next"
msgstr "Weiter"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Partitionning"
msgstr "Partitionierung"
-#: fs/partitioning_wizard.pm:168
+#: fs/partitioning_wizard.pm:237
#, c-format
msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
msgstr ""
-"Wieviel Platz benötigen sie noch für Microsoft Windows® auf Partition %s?"
+"Wieviel Platz benötigen Sie noch für Microsoft Windows® auf Partition %s?"
-#: fs/partitioning_wizard.pm:169
+#: fs/partitioning_wizard.pm:238
#, c-format
msgid "Size"
msgstr "Größe"
-#: fs/partitioning_wizard.pm:178
+#: fs/partitioning_wizard.pm:247
#, c-format
msgid "Resizing Microsoft Windows® partition"
msgstr "Größe der Microsoft Windows®-Partition wird geändert"
-#: fs/partitioning_wizard.pm:183
+#: fs/partitioning_wizard.pm:252
#, c-format
msgid "FAT resizing failed: %s"
msgstr "FAT-Größenanpassung schlug fehl: %s"
-#: fs/partitioning_wizard.pm:186
-#, c-format
-msgid ""
-"To ensure data integrity after resizing the partition(s), \n"
-"filesystem checks will be run on your next boot into Microsoft Windows®"
-msgstr ""
-"Um nach der Größenänderung der Partition(en) die Datenintegrität\n"
-"zu gewährleisten, wird Windows™ beim nächsten Hochfahren eine\n"
-"Dateisystemprüfung durchführen."
-
-#: fs/partitioning_wizard.pm:198
+#: fs/partitioning_wizard.pm:268
#, c-format
msgid "There is no FAT partition to resize (or not enough space left)"
msgstr ""
-"Sie haben keine FAT-Partition, deren Größe ich anpassen kann\n"
+"Sie haben keine FAT-Partition, deren Größe angepasst werden kann\n"
"(möglicherweise haben Sie auch einfach nur nicht mehr genügend\n"
"freien Speicher)."
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Remove Microsoft Windows®"
msgstr "Entferne Microsoft Windows®"
-#: fs/partitioning_wizard.pm:203
+#: fs/partitioning_wizard.pm:273
#, c-format
msgid "Erase and use entire disk"
-msgstr "Komplette Platte löschen und freien Platz benutzen"
+msgstr "Komplettes Laufwerk löschen und freien Platz verwenden"
-#: fs/partitioning_wizard.pm:205
+#: fs/partitioning_wizard.pm:277
#, c-format
-msgid "You have more than one hard drive, which one do you install linux on?"
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
msgstr ""
-"Sie haben mehr als eine Festplatte.\n"
-"Auf welche soll GNU/Linux installiert werden?"
+"Sie verfügen über mehr als eine Festplatte, welche soll vom "
+"Installationsprogramm benutzt werden?"
-#: fs/partitioning_wizard.pm:210 fsedit.pm:600
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
#, c-format
msgid "ALL existing partitions and their data will be lost on drive %s"
msgstr ""
"SÄMTLICHE existierende Partitionen samt der darauf befindlichen Daten \n"
"auf Laufwerk %s gehen dabei verloren"
-#: fs/partitioning_wizard.pm:220
+#: fs/partitioning_wizard.pm:298
#, c-format
msgid "Custom disk partitioning"
msgstr "Benutzerdefinierte Partitionierung"
-#: fs/partitioning_wizard.pm:226
+#: fs/partitioning_wizard.pm:304
#, c-format
msgid "Use fdisk"
msgstr "Verwende fdisk"
-#: fs/partitioning_wizard.pm:229
+#: fs/partitioning_wizard.pm:307
#, c-format
msgid ""
"You can now partition %s.\n"
"When you are done, do not forget to save using `w'"
msgstr ""
"Sie können nun %s partitionieren.\n"
-"Vergessen Sie nicht die Einstellungen mittels ‚w‘ zu speichern, \n"
+"Vergessen Sie nicht die Einstellungen mittels „w“ zu speichern, \n"
"sobald Sie fertig sind."
-#: fs/partitioning_wizard.pm:269
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr "Ext2/3/4"
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
#, c-format
-msgid "I can not find any room for installing"
-msgstr "Ich kann kein Platz zum Installieren finden"
+msgid "I cannot find any room for installing"
+msgstr "Es kann kein Platz für die Installation gefunden werden."
-#: fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
#, c-format
msgid "The DrakX Partitioning wizard found the following solutions:"
-msgstr "Der DrakX-Partitionierungsassistent fand folgende Lösung:"
+msgstr "Der DrakX-Partitionierungsassistent fand folgende Lösungen:"
+
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr "Hier sehen Sie den Inhalt ihres Laufwerkes"
-#: fs/partitioning_wizard.pm:287
+#: fs/partitioning_wizard.pm:644
#, c-format
msgid "Partitioning failed: %s"
msgstr "Partitionierunsgfehler: %s"
-#: fs/type.pm:388
+#: fs/type.pm:431
#, c-format
-msgid "You can not use JFS for partitions smaller than 16MB"
+msgid "You cannot use JFS for partitions smaller than 16MB"
msgstr ""
-"Sie können JFS nicht für Partitionen verwenden, die kleiner als 16MB sind!"
+"Sie können JFS nicht für Partitionen nutzen, die kleiner als 16 MB sind."
-#: fs/type.pm:389
+#: fs/type.pm:432
#, c-format
-msgid "You can not use ReiserFS for partitions smaller than 32MB"
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
msgstr ""
-"Sie können ReiserFS nicht für Partitionen verwenden, die kleiner als 32MB "
-"sind!"
+"Sie können ReiserFS nicht für Partitionen nutzen, die kleiner als 32 MB sind."
-#: fsedit.pm:24
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+"Sie können btrfs nicht für Partitionen nutzen, die kleiner als 256 MB sind"
+
+#: fsedit.pm:25
#, c-format
msgid "simple"
msgstr "Einfach"
-#: fsedit.pm:28
+#: fsedit.pm:29
#, c-format
msgid "with /usr"
msgstr "mit „/usr“"
-#: fsedit.pm:33
+#: fsedit.pm:34
#, c-format
msgid "server"
msgstr "Server"
-#: fsedit.pm:137
+#: fsedit.pm:159
#, c-format
msgid "BIOS software RAID detected on disks %s. Activate it?"
-msgstr "BIOS Software RAID wurde auf Festplatte %s gefunden. Aktivieren?"
+msgstr "BIOS-Software-RAID wurde auf Festplatte %s gefunden. Aktivieren?"
-#: fsedit.pm:247
+#: fsedit.pm:283
#, c-format
msgid ""
-"I can not read the partition table of device %s, it's too corrupted for me :"
+"I cannot read the partition table of device %s, it's too corrupted for me :"
"(\n"
"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
"The other solution is to not allow DrakX to modify the partition table.\n"
@@ -2902,94 +2995,70 @@ msgid ""
"\n"
"Do you agree to lose all the partitions?\n"
msgstr ""
-"Ich kann die Partitionstabelle von „%s“ nicht lesen. Sie scheint \n"
-"fehlerhaft zu sein :-(\n"
-"Ich kann fortfahren, indem ich die fehlerhaften Partitionen lösche \n"
-"(dabei gehen ALLE darauf vorhandenen DATEN VERLOREN!). Alternativ können \n"
-"Sie mir jedoch auch verbieten, die Partitionstabelle zu verändern.\n"
-"(Folgender Fehler trat auf: „%s“).\n"
+"Die Partitionstabelle für das Gerät %s kann nicht gelesen werden, sie "
+"scheint beschädigt. \n"
+"Eine Fortsetzung ist möglich, indem fehlerhafte Partitionen gelöscht werden "
+"(alle in ihnen enthaltende Daten gehen verloren!)\n"
+"Die Alternative besteht darin, DrakX die Änderung der Partitionstabelle zu "
+"erlauben.\n"
+"(Der Fehler ist %s)\n"
"\n"
-"Sind Sie einverstanden, dass ich die problematischen Partitionen lösche?\n"
+"Sind Sie mit dem Verlust aller Partitionen einverstanden?\n"
-#: fsedit.pm:425
+#: fsedit.pm:467
#, c-format
msgid "Mount points must begin with a leading /"
msgstr "Einhängepunkte müssen mit einem / beginnen."
-#: fsedit.pm:426
+#: fsedit.pm:468
#, c-format
msgid "Mount points should contain only alphanumerical characters"
msgstr ""
"Einhängepunkte sollten nur Buchstaben, Ziffern und den Unterstrich "
"unterhalten"
-#: fsedit.pm:427
+#: fsedit.pm:469
#, c-format
msgid "There is already a partition with mount point %s\n"
msgstr "Es gibt bereits eine Partition, mit dem Einhängepunkt %s\n"
-#: fsedit.pm:431
+#: fsedit.pm:472
#, c-format
msgid ""
-"You've selected a software RAID partition as root (/).\n"
+"You've selected an encrypted partition as root (/).\n"
"No bootloader is able to handle this without a /boot partition.\n"
-"Please be sure to add a /boot partition"
+"Please be sure to add a separate /boot partition"
msgstr ""
-"Sie haben eine Software-RAID-Partition als Wurzelverzeichnis (/)"
-"ausgewählt. \n"
-"Zur Zeit kann kein Bootloader damit ohne Verwendung einer \n"
-"„/boot“-Partition arbeiten. Stellen Sie sicher, dass Sie eine solche \n"
-"Partition erstellen."
+"Sie haben eine verschlüsselte Partition als Rootverzeichnis (/) gewählt. \n"
+"Kein Bootloader kann diese ohne eine /boot-Partition handhaben.\n"
+"Stellen Sie sicher, dass Sie eine separate /boot-Partition angelegt haben."
-#: fsedit.pm:437
+#: fsedit.pm:478 fsedit.pm:489
#, c-format
-msgid ""
-"You can not use the LVM Logical Volume for mount point %s since it spans "
-"physical volumes"
-msgstr ""
-"Sie können eine logische LVM-Partition nicht als Einhängepunkt %s verwenden, "
-"da er sich über mehrere physische Datenträger erstreckt"
-
-#: fsedit.pm:439
-#, c-format
-msgid ""
-"You've selected the LVM Logical Volume as root (/).\n"
-"The bootloader is not able to handle this when the volume spans physical "
-"volumes.\n"
-"You should create a /boot partition first"
+msgid "You cannot use an encrypted filesystem for mount point %s"
msgstr ""
-"Sie haben eine logische LVM-Partition als Dateisystemwurzel (/) ausgewählt.\n"
-"Der Bootloader beherrscht dies nicht, wenn die Partition sich über mehrere "
-"physische Datenträger erstreckt.\n"
-"Sie sollten zuerst eine Partition „/boot“ anlegen"
+"Sie können kein verschlüsseltes Dateisystem als Einhängepunkt %s verwenden."
-#: fsedit.pm:443 fsedit.pm:445
+#: fsedit.pm:481 fsedit.pm:483
#, c-format
msgid "This directory should remain within the root filesystem"
msgstr "Dieses Verzeichnis muss innerhalb des Wurzelverzeichnisses bleiben"
-#: fsedit.pm:447 fsedit.pm:449
+#: fsedit.pm:485 fsedit.pm:487
#, c-format
msgid ""
-"You need a true filesystem (ext2/ext3, reiserfs, xfs, or jfs) for this mount "
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
"point\n"
msgstr ""
-"Sie benötigen ein echtes GNU/Linux-Dateisystem (ext2/ext3, reiserfs, xfs "
-"oder jfs) für diesen Einhängepunkt.\n"
+"Sie benötigen ein echtes GNU/Linux-Dateisystem (ext2/3/4, reiserfs, xfs oder "
+"jfs) für diesen Einhängepunkt.\n"
-#: fsedit.pm:451
-#, c-format
-msgid "You can not use an encrypted file system for mount point %s"
-msgstr ""
-"Sie können kein verschlüsseltes Medium für den Einhängepunkt %s verwenden."
-
-#: fsedit.pm:516
+#: fsedit.pm:562
#, c-format
msgid "Not enough free space for auto-allocating"
-msgstr ""
-"Nicht genug freier Platz, damit ich selbst eine Partition anlegen kann."
+msgstr "Nicht genug freier Platz, um eine Partition anzulegen"
-#: fsedit.pm:518
+#: fsedit.pm:564
#, c-format
msgid "Nothing to do"
msgstr "Nichts zu tun."
@@ -2999,283 +3068,332 @@ msgstr "Nichts zu tun."
msgid "SATA controllers"
msgstr "SATA-Controller"
-#: harddrake/data.pm:71
+#: harddrake/data.pm:72
#, c-format
msgid "RAID controllers"
msgstr "RAID-Controller"
-#: harddrake/data.pm:81
+#: harddrake/data.pm:82
#, c-format
msgid "(E)IDE/ATA controllers"
msgstr "(E)IDE/ATA-Controller"
-#: harddrake/data.pm:92
+#: harddrake/data.pm:93
#, c-format
msgid "Card readers"
msgstr "Kartenlesegerät"
-#: harddrake/data.pm:101
+#: harddrake/data.pm:102
#, c-format
msgid "Firewire controllers"
msgstr "Firewire-Controller"
-#: harddrake/data.pm:110
+#: harddrake/data.pm:111
#, c-format
msgid "PCMCIA controllers"
msgstr "PCMCIA-Controller"
-#: harddrake/data.pm:119
+#: harddrake/data.pm:120
#, c-format
msgid "SCSI controllers"
msgstr "SCSI-Controller"
-#: harddrake/data.pm:128
+#: harddrake/data.pm:129
#, c-format
msgid "USB controllers"
msgstr "USB-Controller"
-#: harddrake/data.pm:137
+#: harddrake/data.pm:138
#, c-format
msgid "USB ports"
msgstr "USB-Ports"
-#: harddrake/data.pm:146
+#: harddrake/data.pm:147
#, c-format
msgid "SMBus controllers"
msgstr "SMBus-Controller"
-#: harddrake/data.pm:155
+#: harddrake/data.pm:156
#, c-format
msgid "Bridges and system controllers"
msgstr "Brücken und System-Controller"
-#: harddrake/data.pm:167
+#: harddrake/data.pm:168
#, c-format
msgid "Floppy"
-msgstr "Diskettenlaufwerke"
+msgstr "Diskettenlaufwerk"
-#: harddrake/data.pm:177
+#: harddrake/data.pm:178
#, c-format
msgid "Zip"
msgstr "ZIP"
-#: harddrake/data.pm:193
+#: harddrake/data.pm:194
#, c-format
msgid "Hard Disk"
-msgstr "Festplatten"
+msgstr "Festplatte"
-#: harddrake/data.pm:203
+#: harddrake/data.pm:204
#, c-format
msgid "USB Mass Storage Devices"
msgstr "USB-Massenspeicher-Geräte"
-#: harddrake/data.pm:212
+#: harddrake/data.pm:213
#, c-format
msgid "CDROM"
msgstr "CD-ROM"
-#: harddrake/data.pm:222
+#: harddrake/data.pm:223
#, c-format
msgid "CD/DVD burners"
msgstr "CD/DVD-Brenner"
-#: harddrake/data.pm:232
+#: harddrake/data.pm:233
#, c-format
msgid "DVD-ROM"
msgstr "DVD-ROM"
-#: harddrake/data.pm:242
+#: harddrake/data.pm:243
#, c-format
msgid "Tape"
-msgstr "Bandlaufwerke"
+msgstr "Bandlaufwerk"
-#: harddrake/data.pm:253
+#: harddrake/data.pm:254
#, c-format
msgid "AGP controllers"
msgstr "AGP-Controller"
-#: harddrake/data.pm:262
+#: harddrake/data.pm:263
#, c-format
msgid "Videocard"
msgstr "Videokarten"
-#: harddrake/data.pm:271
+#: harddrake/data.pm:272
#, c-format
msgid "DVB card"
msgstr "DVB-Karte"
-#: harddrake/data.pm:279
+#: harddrake/data.pm:280
#, c-format
msgid "Tvcard"
msgstr "TV-Karten"
-#: harddrake/data.pm:289
+#: harddrake/data.pm:290
#, c-format
msgid "Other MultiMedia devices"
msgstr "Andere Multimedia-Geräte"
-#: harddrake/data.pm:298
+#: harddrake/data.pm:299
#, c-format
msgid "Soundcard"
-msgstr "Soundkarten"
+msgstr "Soundkarte"
-#: harddrake/data.pm:312
+#: harddrake/data.pm:313
#, c-format
msgid "Webcam"
msgstr "Webcam"
-#: harddrake/data.pm:327
+#: harddrake/data.pm:328
#, c-format
msgid "Processors"
msgstr "Prozessoren"
-#: harddrake/data.pm:337
+#: harddrake/data.pm:338
#, c-format
msgid "ISDN adapters"
-msgstr "ISDN Karten"
+msgstr "ISDN Adapter"
-#: harddrake/data.pm:348
+#: harddrake/data.pm:349
#, c-format
msgid "USB sound devices"
msgstr "USB-Sound-Geräte"
-#: harddrake/data.pm:357
+#: harddrake/data.pm:358
#, c-format
msgid "Radio cards"
msgstr "Radiokarten"
-#: harddrake/data.pm:366
+#: harddrake/data.pm:367
#, c-format
msgid "ATM network cards"
msgstr "ATM-Netzwerkkarten"
-#: harddrake/data.pm:375
+#: harddrake/data.pm:376
#, c-format
msgid "WAN network cards"
msgstr "WAN-Netzwerkkarten"
-#: harddrake/data.pm:384
+#: harddrake/data.pm:385
#, c-format
msgid "Bluetooth devices"
msgstr "Bluetooth-Geräte"
-#: harddrake/data.pm:393
+#: harddrake/data.pm:394
#, c-format
msgid "Ethernetcard"
-msgstr "Netzwerkkarten"
+msgstr "Netzwerkkarte"
-#: harddrake/data.pm:410
+#: harddrake/data.pm:412
#, c-format
msgid "Modem"
msgstr "Modem"
-#: harddrake/data.pm:420
+#: harddrake/data.pm:422
#, c-format
msgid "ADSL adapters"
msgstr "ADSL Adapter"
-#: harddrake/data.pm:432
+#: harddrake/data.pm:434
#, c-format
msgid "Memory"
msgstr "Speicher"
-#: harddrake/data.pm:441
+#: harddrake/data.pm:443
#, c-format
msgid "Printer"
msgstr "Drucker"
#. -PO: these are joysticks controllers:
-#: harddrake/data.pm:455
+#: harddrake/data.pm:457
#, c-format
msgid "Game port controllers"
msgstr "Gameport-Controller"
-#: harddrake/data.pm:464
+#: harddrake/data.pm:466
#, c-format
msgid "Joystick"
msgstr "Joystick"
-#: harddrake/data.pm:474
+#: harddrake/data.pm:476
#, c-format
msgid "Keyboard"
msgstr "Tastatur"
-#: harddrake/data.pm:488
+#: harddrake/data.pm:490
#, c-format
msgid "Tablet and touchscreen"
msgstr "Tablet und Touchscreen"
-#: harddrake/data.pm:497
+#: harddrake/data.pm:499
#, c-format
msgid "Mouse"
msgstr "Maus"
-#: harddrake/data.pm:512
+#: harddrake/data.pm:514
#, c-format
msgid "Biometry"
msgstr "Biometrie"
-#: harddrake/data.pm:520
+#: harddrake/data.pm:522
#, c-format
msgid "UPS"
msgstr "USV"
-#: harddrake/data.pm:529
+#: harddrake/data.pm:531
#, c-format
msgid "Scanner"
msgstr "Scanner"
-#: harddrake/data.pm:540
+#: harddrake/data.pm:542
#, c-format
msgid "Unknown/Others"
msgstr "Unbekannt/Andere"
-#: harddrake/data.pm:570
+#: harddrake/data.pm:572
#, c-format
msgid "cpu # "
msgstr "CPU #"
-#: harddrake/sound.pm:303
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
#, c-format
-msgid "Please Wait... Applying the configuration"
-msgstr "Einen Moment ... Ich richte die Konfiguration ein"
+msgid "Couldn't install the required packages"
+msgstr "Die benötigten Pakete konnten nicht installiert werden"
-#: harddrake/sound.pm:366
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
#, c-format
-msgid "Enable PulseAudio"
-msgstr "PulseAudio aktivieren"
+msgid "Please check the repositories are correctly configured"
+msgstr "Bitte prüfen Sie ob die Repositorien richtig eingerichtet wurden"
-#: harddrake/sound.pm:370
+#: harddrake/sound.pm:462
#, c-format
-msgid "Enable 5.1 sound with Pulse Audio"
-msgstr "5.1 Sound mit PulseAudio aktivieren"
+msgid "No known driver"
+msgstr "Kein bekannter Treiber"
-#: harddrake/sound.pm:375
+#: harddrake/sound.pm:463
#, c-format
-msgid "Enable user switching for audio applications"
-msgstr "Dem Benutzer das Umschalten für Audio-Anwendungen erlauben"
+msgid "There's no known driver for your sound card (%s)"
+msgstr "Es gibt keinen bekannten Treiber für Ihre Soundkarte (%s)"
-#: harddrake/sound.pm:379
-#, fuzzy, c-format
-msgid "Use Glitch-Free mode"
-msgstr "Verwende den Offline-Modus"
+#: harddrake/sound.pm:517
+#, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr "Sie müssen neustarten, damit die Änderungen wirksam werden"
-#: harddrake/sound.pm:385
+#: harddrake/sound.pm:522
+#, c-format
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
+"Warnung: pulseaudio und pipewire sind gleichzeitig installiert und können "
+"gegenseitig Probleme verursachen. Bitte wählen Sie zwischen einem der beiden."
+
+#: harddrake/sound.pm:527
+#, c-format
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
+"Warnung: task-pipewire ist auf keiner Medienquelle verfügbar, weshalb nur "
+"pulseaudio eingerichtet wurde. Bitte korrigieren Sie Ihre Einstellung der "
+"Repositorien."
+
+#: harddrake/sound.pm:541
+#, c-format
+msgid "Select the sound server"
+msgstr "Wählen Sie den Soundserver"
+
+#: harddrake/sound.pm:551
+#, c-format
+msgid "PulseAudio"
+msgstr "PulseAudio"
+
+#: harddrake/sound.pm:552
+#, c-format
+msgid "PulseAudio with Glitch-Free mode"
+msgstr "PulseAudio mit störungsfreiem Modus"
+
+#: harddrake/sound.pm:553
+#, c-format
+msgid "PipeWire with WirePlumber"
+msgstr "PipeWire mit WirePlumber"
+
+#: harddrake/sound.pm:554
+#, c-format
+msgid "PipeWire with PipeWire Media Session"
+msgstr "PipeWire mit PipeWire Mediensitzung"
+
+#: harddrake/sound.pm:561
#, c-format
msgid "Reset sound mixer to default values"
-msgstr "Setze die Sound Mixer Einstellungen auf Standardwerte zurück"
+msgstr "Die Sound-Mixer-Einstellungen auf Standardwerte zurücksetzen"
+
+#: harddrake/sound.pm:565
+#, c-format
+msgid "Troubleshooting"
+msgstr "Problembehebung"
-#: harddrake/sound.pm:390
+#: harddrake/sound.pm:571
#, c-format
-msgid "Trouble shooting"
-msgstr "Fehlerbehandlung"
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr "Ihre Karte verwendet den <b>\"%s\"</b> Treiber\n"
-#: harddrake/sound.pm:397
+#: harddrake/sound.pm:581
#, c-format
msgid "No alternative driver"
msgstr "Kein alternativer Treiber"
-#: harddrake/sound.pm:398
+#: harddrake/sound.pm:582
#, c-format
msgid ""
"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
@@ -3284,181 +3402,130 @@ msgstr ""
"Es existiert kein alternativer OSS/ALSA-Treiber für Ihre Soundkarte (%s), "
"die momentan „%s“ verwendet."
-#: harddrake/sound.pm:405
+#: harddrake/sound.pm:589
#, c-format
msgid "Sound configuration"
msgstr "Sound-Konfiguration"
-#: harddrake/sound.pm:407
+#: harddrake/sound.pm:603
#, c-format
-msgid ""
-"Here you can select an alternative driver (either OSS or ALSA) for your "
-"sound card (%s)."
-msgstr ""
-"Hier können Sie einen alternativen Treiber (entweder OSS oder ALSA) für Ihre "
-"Soundkarte (%s) auswählen"
+msgid "Sound troubleshooting"
+msgstr "Soundprobleme beheben"
-#. -PO: here the first %s is either "OSS" or "ALSA",
-#. -PO: the second %s is the name of the current driver
-#. -PO: and the third %s is the name of the default driver
-#: harddrake/sound.pm:412
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
#, c-format
msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
"\n"
-"Your card currently use the %s\"%s\" driver (default driver for your card is "
-"\"%s\")"
-msgstr ""
"\n"
"\n"
-"Ihre Karte verwendet momentan den %s „%s“ Treiber (Voreinstellung für Ihre "
-"Karte ist „%s“)"
-
-#: harddrake/sound.pm:414
-#, c-format
-msgid ""
-"OSS (Open Sound System) was the first sound API. It's an OS independent "
-"sound API (it's available on most UNIX(tm) systems) but it's a very basic "
-"and limited API.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) is a modularized architecture "
-"which\n"
-"supports quite a large range of ISA, USB and PCI cards.\n"
"\n"
-"It also provides a much higher API than OSS.\n"
"\n"
-"To use alsa, one can either use:\n"
-"- the old compatibility OSS api\n"
-"- the new ALSA api that provides many enhanced features but requires using "
-"the ALSA library.\n"
-msgstr ""
-"OSS (Open Sound System) war das erste Sound-API. Es handelt sich um eine "
-"betriebssystemunabhängige API (verfügbar auf den meisten UNIX™-Systemen), "
-"aber es ist nur sehr einfach und beschränkt in den Fähigkeiten.\n"
-"What's more, OSS drivers all reinvent the wheel.\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
"\n"
-"ALSA (Advanced Linux Sound Architecture) ist eine modularisierte "
-"Architektur, die \n"
-"eine große Anzahl an ISA-, USB und PCI-Karten unterstützt.\n"
-"Sie stellt außerdem eine wesentlich mächtigere API zur Verfügung als OSS\n"
-"Um ALSA zu nutzen können Sie:\n"
-"- die alte OSS-Kompatibilitäts-API\n"
-"- die neue ALSA-API mit den erweiterten Möglichkeiten. Diese verlangt "
-"allerdings das Nutzen der ALSA-Bilbliotheken.\n"
-
-#: harddrake/sound.pm:428 harddrake/sound.pm:511
-#, c-format
-msgid "Driver:"
-msgstr "Treiber:"
-
-#: harddrake/sound.pm:442
-#, c-format
-msgid ""
-"The old \"%s\" driver is blacklisted.\n"
"\n"
-"It has been reported to oops the kernel on unloading.\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
"\n"
-"The new \"%s\" driver will only be used on next bootstrap."
-msgstr ""
-"Der alte „%s“ Treiber steht auf einer Schwarzen Liste.\n"
"\n"
-"Der Treiber soll Fehlfunktionen verursachen.\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
"\n"
-"Der neue „%s“ Treiber steht nach einem Neustart zur Verfügung."
-
-#: harddrake/sound.pm:450
-#, c-format
-msgid "No open source driver"
-msgstr "Kein OpenSource-Treiber"
-
-#: harddrake/sound.pm:451
-#, c-format
-msgid ""
-"There's no free driver for your sound card (%s), but there's a proprietary "
-"driver at \"%s\"."
-msgstr ""
-"Es existiert kein freier Treiber für Ihre Soundkarte (%s), aber es gibt "
-"einen proprietären Treiber unter „%s“."
-
-#: harddrake/sound.pm:454
-#, c-format
-msgid "No known driver"
-msgstr "Kein bekannter Treiber"
-
-#: harddrake/sound.pm:455
-#, c-format
-msgid "There's no known driver for your sound card (%s)"
-msgstr "Es gibt keinen bekannten Treiber für Ihre Soundkarte (%s)"
-
-#: harddrake/sound.pm:470
-#, c-format
-msgid "Sound trouble shooting"
-msgstr "Sound-Fehlerbehandlung"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:473
-#, c-format
-msgid ""
-"The classic bug sound tester is to run the following commands:\n"
"\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
"\n"
-"- \"lspcidrake -v | fgrep -i AUDIO\" will tell you which driver your card "
-"uses\n"
-"by default\n"
"\n"
-"- \"grep sound-slot /etc/modprobe.conf\" will tell you what driver it\n"
-"currently uses\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
"\n"
-"- \"/sbin/lsmod\" will enable you to check if its module (driver) is\n"
-"loaded or not\n"
"\n"
-"- \"/sbin/chkconfig --list sound\" and \"/sbin/chkconfig --list alsa\" will\n"
-"tell you if sound and alsa services are configured to be run on\n"
-"initlevel 3\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
"\n"
-"- \"aumix -q\" will tell you if the sound volume is muted or not\n"
"\n"
-"- \"/sbin/fuser -v /dev/dsp\" will tell which program uses the sound card.\n"
-msgstr ""
-"Der klassische Test, um Fehler im Sound-System zu finden:\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
"\n"
"\n"
-"- „lspcidrake -v | fgrep -i AUDIO“ verrät Ihnen, welcher Treiber Ihre "
-"Soundkarte \n"
-" standardmäßig verwendet.\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
"\n"
-"- „/sbin/chkconfig --list sound“ und „/sbin/chkconfig --list alsa“ verraten\n"
-" Ihnen, ob die Sound- und ALSA-Dienste konfiguriert sind, um im\n"
-" Initlevel 3 zu laufen.\n"
"\n"
-"- „/sbin/fuser -v /dev/dsp“ verrät das Programm, das die Soundkarte "
-"benutzt.\n"
-
-#: harddrake/sound.pm:500
-#, c-format
-msgid "Let me pick any driver"
-msgstr "Lassen Sie mich irgendeinen Treiber auswählen"
-
-#: harddrake/sound.pm:503
-#, c-format
-msgid "Choosing an arbitrary driver"
-msgstr "Ich wähle einen willkürlichen Treiber"
-
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: harddrake/sound.pm:506
-#, c-format
-msgid ""
-"If you really think that you know which driver is the right one for your "
-"card\n"
-"you can pick one in the above list.\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
"\n"
-"The current driver for your \"%s\" sound card is \"%s\" "
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
msgstr ""
-"Wenn Sie wirklich wissen, welcher Treiber der Richtige für Ihre Karte ist,\n"
-"wählen Sie einen aus der Liste aus.\n"
+"Es folgen einige einfache Tipps, die bei der Fehlersuche bei Audio-Problemen "
+"helfen können, wenn Sie mehr oder aktuellere Tipps benötigen, gehen Sie "
+"bitte zu:\n"
+"\n"
+"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
+"\n"
+"\n"
+"- Generelle Empfehlung: Aktiviere PulseAudio. Wenn Sie sich dafür "
+"entschieden haben PulseAudio nicht zu verwenden, dann empfehlen wir Ihnen "
+"wärmstens es zu aktivieren. Für die Mehrheit aller Desktop-Anwendungen, "
+"PulseAudio ist die empfohlene und am besten unterstützte Option.\n"
+"\n"
+"\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) und "
+"\"pavucontrol\" (generisch) starten grafische Anwendungen, die es Ihnen "
+"erlauben Ihre Sound-Geräte zu sehen und die Lautstärke anzupassen.\n"
+"\n"
+"\n"
+"- \"ps aux | grep pulseaudio\" überprüft, ob PulseAudio läuft.\n"
+"\n"
+"\n"
+"- \"pactl stat\" überprüft, dass Sie sich korrekt mit dem PulseAudio Daemon "
+"verbinden können.\n"
+"\n"
+"\n"
+"- \"pactl list sink-inputs\" sagt Ihnen, welche Programme momentan Sound "
+"über PulseAudio wiedergeben.\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" sagt Ihnen den momentanen Status des "
+"OSS Proxy Daemon. Dies wird dazu verwendet, damit ältere Programme Sound "
+"wiedergeben können, die noch die OSS Sound API verwenden. Wenn Sie diese "
+"Funktionalität benötigen, installieren Sie bitte das \"ossp\" Paket.\n"
+"\n"
"\n"
-"Der gerade verwendete Treiber für Ihre „%s“ Soundkarte ist „%s“ "
+"- \"pacmd ls\" gibt Ihnen eine grosse Menge an debug-Informationen zu dem "
+"momentanen Status von Ihren Audio-Einstellungen.\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" sagt Ihnen, welche Treiber Ihre Karte "
+"standardmäßig verwendet.\n"
+"\n"
+"\n"
+"- \"/usr/sbin/lsmod | grep snd\" erlaubt die Überprüfung, welche Sound-"
+"relevanten Kernel-Module (Treiber) geladen sind.\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" gibt Ihnen einen text-basierten Mixer für die ALSA "
+"Mixer Steuerung der ersten Soundkarte.\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" sagt Ihnen, welche Programme "
+"momentan die Soundkarte direkt verwenden (im Normalfall sollte hier nur "
+"PulseAudio angezeigt werden).\n"
#: harddrake/v4l.pm:12
#, c-format
@@ -3486,12 +3553,13 @@ msgid ""
"For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-"
"detect the rights parameters.\n"
"If your card is misdetected, you can force the right tuner and card types "
-"here. Just select your tv card parameters if needed."
+"here. Just select your TV card parameters if needed."
msgstr ""
-"Für die meisten modernen TV-Karten erkennt das bttv-Modul des Linux-Kernels "
-"automatisch die richtigen Parameter.\n"
-"Falls Ihre Karte falsch erkannt wird, können Sie Tuner- und Kartentyp hier "
-"einstellen. Geben Sie einfach die benötigten Parameter an."
+"Das bttv Modul des GNU/Linux Kernels erkennt die richtigen Parameter für die "
+"meisten modernen TV-Karten automatisch. \n"
+"Sollte Ihre Karte nicht richtig erkannt werden, können Sie den richtigen "
+"Tuner und Kartentyp hier einstellen. Falls nötig, wählen Sie einfach die "
+"Parameter Ihrer TV Karten aus."
#: harddrake/v4l.pm:478
#, c-format
@@ -3503,73 +3571,76 @@ msgstr "Kartentyp:"
msgid "Tuner type:"
msgstr "Tunertyp:"
-#: interactive.pm:128 interactive.pm:549 interactive/curses.pm:263
+#: interactive.pm:119 interactive.pm:674 interactive/curses.pm:270
#: interactive/http.pm:103 interactive/http.pm:156 interactive/stdio.pm:39
-#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:844
-#: ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:812 ugtk2.pm:835
+#: interactive/stdio.pm:148 interactive/stdio.pm:149 mygtk2.pm:846
+#: mygtk3.pm:928 ugtk2.pm:421 ugtk2.pm:519 ugtk2.pm:810 ugtk2.pm:833
+#: ugtk3.pm:507 ugtk3.pm:593 ugtk3.pm:906 ugtk3.pm:929
#, c-format
msgid "Ok"
msgstr "OK"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "Yes"
msgstr "Ja"
-#: interactive.pm:228 modules/interactive.pm:72 ugtk2.pm:811 wizards.pm:156
+#: interactive.pm:219 modules/interactive.pm:72 ugtk2.pm:809 ugtk3.pm:905
+#: wizards.pm:156
#, c-format
msgid "No"
msgstr "Nein"
-#: interactive.pm:262
+#: interactive.pm:253
#, c-format
msgid "Choose a file"
msgstr "Wählen Sie eine Datei"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Add"
msgstr "Hinzufügen"
-#: interactive.pm:387 interactive/gtk.pm:453
+#: interactive.pm:390 interactive/gtk.pm:456
#, c-format
msgid "Modify"
msgstr "Ändern"
-#: interactive.pm:549 interactive/curses.pm:263 ugtk2.pm:519
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
#, c-format
msgid "Finish"
msgstr "Assistent beenden"
-#: interactive.pm:550 interactive/curses.pm:260 ugtk2.pm:517
+#: interactive.pm:675 interactive/curses.pm:267 ugtk2.pm:517 ugtk3.pm:591
#, c-format
msgid "Previous"
msgstr "Zurück"
-#: interactive/curses.pm:556 ugtk2.pm:872
+#: interactive/curses.pm:576 ugtk2.pm:870 ugtk3.pm:966
#, c-format
msgid "No file chosen"
msgstr "Keine Datei ausgewählt"
-#: interactive/curses.pm:560 ugtk2.pm:876
+#: interactive/curses.pm:580 ugtk2.pm:874 ugtk3.pm:970
#, c-format
msgid "You have chosen a directory, not a file"
msgstr "Sie haben ein Verzeichnis ausgewählt, keine Datei"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such directory"
msgstr "Das Verzeichnis existiert nicht"
-#: interactive/curses.pm:562 ugtk2.pm:878
+#: interactive/curses.pm:582 ugtk2.pm:876 ugtk3.pm:972
#, c-format
msgid "No such file"
msgstr "Die Datei existiert nicht"
-#: interactive/gtk.pm:580
+#: interactive/gtk.pm:596
#, c-format
msgid "Beware, Caps Lock is enabled"
-msgstr "Achtung, die \"Hochstelltaste\" ist aktiviert"
+msgstr "Achtung, die „Feststelltaste“ ist aktiviert"
#: interactive/stdio.pm:29 interactive/stdio.pm:154
#, c-format
@@ -3618,7 +3689,7 @@ msgstr "Geben Sie „void“ für einen leeren Eintrag an"
#: interactive/stdio.pm:128
#, c-format
msgid "=> There are many things to choose from (%s).\n"
-msgstr "=> Es gibt zahlreiche Auswahlmöglichkeiten von (%s).\n"
+msgstr "=> Es gibt zahlreiche Auswahlmöglichkeiten (%s).\n"
#: interactive/stdio.pm:131
#, c-format
@@ -3628,7 +3699,7 @@ msgid ""
"Your choice? "
msgstr ""
"Bitte wählen Sie die Nummer aus dem Bereich, die Sie bearbeiten wollen,\n"
-"oder betägen Sie die Eingabetaste um fortzufahren. Ihre Wahl? "
+"oder betätigen Sie die Eingabetaste um fortzufahren. Ihre Wahl? "
#: interactive/stdio.pm:144
#, c-format
@@ -3647,1251 +3718,1281 @@ msgstr "Erneut verschicken"
#. -PO: the string "default:LTR" can be translated *ONLY* as "default:LTR"
#. -PO: or as "default:RTL", depending if your language is written from
#. -PO: left to right, or from right to left; any other string is wrong.
-#: lang.pm:194
+#: lang.pm:247
#, c-format
msgid "default:LTR"
msgstr "default:LTR"
-#: lang.pm:211
+#: lang.pm:301
#, c-format
msgid "Andorra"
msgstr "Andorra"
-#: lang.pm:212 timezone.pm:226
+#: lang.pm:302 timezone.pm:237
#, c-format
msgid "United Arab Emirates"
-msgstr "Vereinigte arabische Emirate"
+msgstr "Vereinigte Arabische Emirate"
-#: lang.pm:213
+#: lang.pm:303
#, c-format
msgid "Afghanistan"
msgstr "Afghanistan"
-#: lang.pm:214
+#: lang.pm:304
#, c-format
msgid "Antigua and Barbuda"
msgstr "Antigua und Barbuda"
-#: lang.pm:215
+#: lang.pm:305
#, c-format
msgid "Anguilla"
msgstr "Anguilla"
-#: lang.pm:216
+#: lang.pm:306
#, c-format
msgid "Albania"
msgstr "Albanien"
-#: lang.pm:217
+#: lang.pm:307
#, c-format
msgid "Armenia"
msgstr "Armenien"
-#: lang.pm:218
+#: lang.pm:308
#, c-format
msgid "Netherlands Antilles"
msgstr "Niederländische Antillen"
-#: lang.pm:219
+#: lang.pm:309
#, c-format
msgid "Angola"
msgstr "Angola"
-#: lang.pm:220
+#: lang.pm:310
#, c-format
msgid "Antarctica"
msgstr "Antarktis"
-#: lang.pm:221 timezone.pm:271
+#: lang.pm:311 timezone.pm:282
#, c-format
msgid "Argentina"
msgstr "Argentinien"
-#: lang.pm:222
+#: lang.pm:312
#, c-format
msgid "American Samoa"
-msgstr "Samoa"
+msgstr "Amerikanisch-Samoa"
-#: lang.pm:223 mirror.pm:12 timezone.pm:229
+#: lang.pm:313 timezone.pm:240
#, c-format
msgid "Austria"
msgstr "Österreich"
-#: lang.pm:224 mirror.pm:11 timezone.pm:267
+#: lang.pm:314 timezone.pm:278
#, c-format
msgid "Australia"
msgstr "Australien"
-#: lang.pm:225
+#: lang.pm:315
#, c-format
msgid "Aruba"
msgstr "Aruba"
-#: lang.pm:226
+#: lang.pm:316
#, c-format
msgid "Azerbaijan"
msgstr "Aserbaidschan"
-#: lang.pm:227
+#: lang.pm:317
#, c-format
msgid "Bosnia and Herzegovina"
msgstr "Bosnien-Herzegovina"
-#: lang.pm:228
+#: lang.pm:318
#, c-format
msgid "Barbados"
msgstr "Barbados"
-#: lang.pm:229 timezone.pm:211
+#: lang.pm:319 timezone.pm:222
#, c-format
msgid "Bangladesh"
msgstr "Bangladesch"
-#: lang.pm:230 mirror.pm:13 timezone.pm:231
+#: lang.pm:320 timezone.pm:242
#, c-format
msgid "Belgium"
msgstr "Belgien"
-#: lang.pm:231
+#: lang.pm:321
#, c-format
msgid "Burkina Faso"
msgstr "Burkina Faso"
-#: lang.pm:232 timezone.pm:232
+#: lang.pm:322 timezone.pm:243
#, c-format
msgid "Bulgaria"
msgstr "Bulgarien"
-#: lang.pm:233
+#: lang.pm:323
#, c-format
msgid "Bahrain"
msgstr "Bahrain"
-#: lang.pm:234
+#: lang.pm:324
#, c-format
msgid "Burundi"
msgstr "Burundi"
-#: lang.pm:235
+#: lang.pm:325
#, c-format
msgid "Benin"
msgstr "Benin"
-#: lang.pm:236
+#: lang.pm:326
#, c-format
msgid "Bermuda"
msgstr "Bermuda"
-#: lang.pm:237
+#: lang.pm:327
#, c-format
msgid "Brunei Darussalam"
msgstr "Brunei "
-#: lang.pm:238
+#: lang.pm:328
#, c-format
msgid "Bolivia"
msgstr "Bolivien"
-#: lang.pm:239 mirror.pm:14 timezone.pm:272
+#: lang.pm:329 timezone.pm:283
#, c-format
msgid "Brazil"
msgstr "Brasilien"
-#: lang.pm:240
+#: lang.pm:330
#, c-format
msgid "Bahamas"
msgstr "Bahamas"
-#: lang.pm:241
+#: lang.pm:331
#, c-format
msgid "Bhutan"
-msgstr "Butan"
+msgstr "Bhutan"
-#: lang.pm:242
+#: lang.pm:332
#, c-format
msgid "Bouvet Island"
msgstr "Bouvet-Insel"
-#: lang.pm:243
+#: lang.pm:333
#, c-format
msgid "Botswana"
msgstr "Botswana"
-#: lang.pm:244 timezone.pm:230
+#: lang.pm:334 timezone.pm:241
#, c-format
msgid "Belarus"
msgstr "Weißrussland"
-#: lang.pm:245
+#: lang.pm:335
#, c-format
msgid "Belize"
msgstr "Belize"
-#: lang.pm:246 mirror.pm:15 timezone.pm:261
+#: lang.pm:336 timezone.pm:272
#, c-format
msgid "Canada"
msgstr "Kanada"
-#: lang.pm:247
+#: lang.pm:337
#, c-format
msgid "Cocos (Keeling) Islands"
msgstr "Cocos (Keeling) Inseln"
-#: lang.pm:248
+#: lang.pm:338
#, c-format
msgid "Congo (Kinshasa)"
msgstr "Kongo (Kinshasa)"
-#: lang.pm:249
+#: lang.pm:339
#, c-format
msgid "Central African Republic"
msgstr "Zentralafrikanische Republik"
-#: lang.pm:250
+#: lang.pm:340
#, c-format
msgid "Congo (Brazzaville)"
msgstr "Kongo (Brazzaville)"
-#: lang.pm:251 mirror.pm:39 timezone.pm:255
+#: lang.pm:341 timezone.pm:266
#, c-format
msgid "Switzerland"
msgstr "Schweiz"
-#: lang.pm:252
+#: lang.pm:342
#, c-format
msgid "Cote d'Ivoire"
msgstr "Elfenbeinküste"
-#: lang.pm:253
+#: lang.pm:343
#, c-format
msgid "Cook Islands"
msgstr "Cook-Inseln"
-#: lang.pm:254 timezone.pm:273
+#: lang.pm:344 timezone.pm:284
#, c-format
msgid "Chile"
msgstr "Chile"
-#: lang.pm:255
+#: lang.pm:345
#, c-format
msgid "Cameroon"
msgstr "Kamerun"
-#: lang.pm:256 timezone.pm:212
+#: lang.pm:346 timezone.pm:223
#, c-format
msgid "China"
msgstr "China"
-#: lang.pm:257
+#: lang.pm:347
#, c-format
msgid "Colombia"
msgstr "Kolumbien"
-#: lang.pm:258 mirror.pm:16
+#: lang.pm:348
#, c-format
msgid "Costa Rica"
msgstr "Costa Rica"
-#: lang.pm:259
+#: lang.pm:349
#, c-format
msgid "Serbia & Montenegro"
msgstr "Serbien & Montenegro"
-#: lang.pm:260
+#: lang.pm:350
#, c-format
msgid "Cuba"
msgstr "Kuba"
-#: lang.pm:261
+#: lang.pm:351
#, c-format
msgid "Cape Verde"
msgstr "Kap Verde"
-#: lang.pm:262
+#: lang.pm:352
#, c-format
msgid "Christmas Island"
-msgstr "Osterinsel"
+msgstr "Weihnachtsinsel"
-#: lang.pm:263
+#: lang.pm:353
#, c-format
msgid "Cyprus"
msgstr "Zypern"
-#: lang.pm:264 mirror.pm:17 timezone.pm:233
+#: lang.pm:354 timezone.pm:244
#, c-format
msgid "Czech Republic"
msgstr "Tschechische Republik"
-#: lang.pm:265 mirror.pm:22 timezone.pm:238
+#: lang.pm:355 timezone.pm:249
#, c-format
msgid "Germany"
msgstr "Deutschland"
-#: lang.pm:266
+#: lang.pm:356
#, c-format
msgid "Djibouti"
msgstr "Djibouti"
-#: lang.pm:267 mirror.pm:18 timezone.pm:234
+#: lang.pm:357 timezone.pm:245
#, c-format
msgid "Denmark"
msgstr "Dänemark"
-#: lang.pm:268
+#: lang.pm:358
#, c-format
msgid "Dominica"
-msgstr "Dominikanische Republik"
+msgstr "Dominica"
-#: lang.pm:269
+#: lang.pm:359
#, c-format
msgid "Dominican Republic"
msgstr "Dominikanische Republik"
-#: lang.pm:270
+#: lang.pm:360
#, c-format
msgid "Algeria"
msgstr "Algerien"
-#: lang.pm:271
+#: lang.pm:361
#, c-format
msgid "Ecuador"
msgstr "Ecuador"
-#: lang.pm:272 mirror.pm:19 timezone.pm:235
+#: lang.pm:362 timezone.pm:246
#, c-format
msgid "Estonia"
msgstr "Estland"
-#: lang.pm:273
+#: lang.pm:363
#, c-format
msgid "Egypt"
msgstr "Ägypten"
-#: lang.pm:274
+#: lang.pm:364
#, c-format
msgid "Western Sahara"
msgstr "Westsahara"
-#: lang.pm:275
+#: lang.pm:365
#, c-format
msgid "Eritrea"
msgstr "Eritrea"
-#: lang.pm:276 mirror.pm:37 timezone.pm:253
+#: lang.pm:366 timezone.pm:264
#, c-format
msgid "Spain"
msgstr "Spanien"
-#: lang.pm:277
+#: lang.pm:367
#, c-format
msgid "Ethiopia"
msgstr "Äthiopien"
-#: lang.pm:278 mirror.pm:20 timezone.pm:236
+#: lang.pm:368 timezone.pm:247
#, c-format
msgid "Finland"
msgstr "Finnland"
-#: lang.pm:279
+#: lang.pm:369
#, c-format
msgid "Fiji"
msgstr "Fidschi"
-#: lang.pm:280
+#: lang.pm:370
#, c-format
msgid "Falkland Islands (Malvinas)"
msgstr "Falkland Inseln"
-#: lang.pm:281
+#: lang.pm:371
#, c-format
msgid "Micronesia"
msgstr "Mikronesien"
-#: lang.pm:282
+#: lang.pm:372
#, c-format
msgid "Faroe Islands"
msgstr "Faröische Inseln"
-#: lang.pm:283 mirror.pm:21 timezone.pm:237
+#: lang.pm:373 timezone.pm:248
#, c-format
msgid "France"
msgstr "Frankreich"
-#: lang.pm:284
+#: lang.pm:374
#, c-format
msgid "Gabon"
msgstr "Gabun"
-#: lang.pm:285 timezone.pm:257
+#: lang.pm:375 timezone.pm:268
#, c-format
msgid "United Kingdom"
msgstr "Großbritannien"
-#: lang.pm:286
+#: lang.pm:376
#, c-format
msgid "Grenada"
msgstr "Grenada"
-#: lang.pm:287
+#: lang.pm:377
#, c-format
msgid "Georgia"
msgstr "Georgien"
-#: lang.pm:288
+#: lang.pm:378
#, c-format
msgid "French Guiana"
msgstr "Französisch-Guiana"
-#: lang.pm:289
+#: lang.pm:379
#, c-format
msgid "Ghana"
msgstr "Ghana"
-#: lang.pm:290
+#: lang.pm:380
#, c-format
msgid "Gibraltar"
msgstr "Gibraltar"
-#: lang.pm:291
+#: lang.pm:381
#, c-format
msgid "Greenland"
msgstr "Grönland"
-#: lang.pm:292
+#: lang.pm:382
#, c-format
msgid "Gambia"
msgstr "Gambia"
-#: lang.pm:293
+#: lang.pm:383
#, c-format
msgid "Guinea"
msgstr "Guinea"
-#: lang.pm:294
+#: lang.pm:384
#, c-format
msgid "Guadeloupe"
-msgstr "Gouadeloupe"
+msgstr "Guadeloupe"
-#: lang.pm:295
+#: lang.pm:385
#, c-format
msgid "Equatorial Guinea"
msgstr "Äquatorial-Guinea"
-#: lang.pm:296 mirror.pm:23 timezone.pm:239
+#: lang.pm:386 timezone.pm:250
#, c-format
msgid "Greece"
msgstr "Griechenland"
-#: lang.pm:297
+#: lang.pm:387
#, c-format
msgid "South Georgia and the South Sandwich Islands"
msgstr "South Georgia und die South Sandwich Islands"
-#: lang.pm:298 timezone.pm:262
+#: lang.pm:388 timezone.pm:273
#, c-format
msgid "Guatemala"
msgstr "Guatemala"
-#: lang.pm:299
+#: lang.pm:389
#, c-format
msgid "Guam"
msgstr "Guam"
-#: lang.pm:300
+#: lang.pm:390
#, c-format
msgid "Guinea-Bissau"
msgstr "Guinea-Bissau"
-#: lang.pm:301
+#: lang.pm:391
#, c-format
msgid "Guyana"
msgstr "Guyana"
-#: lang.pm:302
+#: lang.pm:392
#, c-format
msgid "Hong Kong SAR (China)"
msgstr "Hong Kong SAR (China)"
-#: lang.pm:303
+#: lang.pm:393
#, c-format
msgid "Heard and McDonald Islands"
msgstr "Heard Island und McDonald Island"
-#: lang.pm:304
+#: lang.pm:394
#, c-format
msgid "Honduras"
msgstr "Honduras"
-#: lang.pm:305
+#: lang.pm:395
#, c-format
msgid "Croatia"
msgstr "Kroatien"
-#: lang.pm:306
+#: lang.pm:396
#, c-format
msgid "Haiti"
msgstr "Haiti"
-#: lang.pm:307 mirror.pm:24 timezone.pm:240
+#: lang.pm:397 timezone.pm:251
#, c-format
msgid "Hungary"
msgstr "Ungarn"
-#: lang.pm:308 timezone.pm:215
+#: lang.pm:398 timezone.pm:226
#, c-format
msgid "Indonesia"
msgstr "Indonesien"
-#: lang.pm:309 mirror.pm:25 timezone.pm:241
+#: lang.pm:399 timezone.pm:252
#, c-format
msgid "Ireland"
msgstr "Irland"
-#: lang.pm:310 mirror.pm:26 timezone.pm:217
+#: lang.pm:400 timezone.pm:228
#, c-format
msgid "Israel"
msgstr "Israel"
-#: lang.pm:311 timezone.pm:214
+#: lang.pm:401 timezone.pm:225
#, c-format
msgid "India"
msgstr "Indien"
-#: lang.pm:312
+#: lang.pm:402
#, c-format
msgid "British Indian Ocean Territory"
msgstr "Britisches Territorium im Indischen Ozean"
-#: lang.pm:313
+#: lang.pm:403
#, c-format
msgid "Iraq"
msgstr "Irak"
-#: lang.pm:314 timezone.pm:216
+#: lang.pm:404 timezone.pm:227
#, c-format
msgid "Iran"
msgstr "Iran"
-#: lang.pm:315
+#: lang.pm:405
#, c-format
msgid "Iceland"
msgstr "Island"
-#: lang.pm:316 mirror.pm:27 timezone.pm:242
+#: lang.pm:406 timezone.pm:253
#, c-format
msgid "Italy"
msgstr "Italien"
-#: lang.pm:317
+#: lang.pm:407
#, c-format
msgid "Jamaica"
msgstr "Jamaika"
-#: lang.pm:318
+#: lang.pm:408
#, c-format
msgid "Jordan"
msgstr "Jordanien"
-#: lang.pm:319 mirror.pm:28 timezone.pm:218
+#: lang.pm:409 timezone.pm:229
#, c-format
msgid "Japan"
msgstr "Japan"
-#: lang.pm:320
+#: lang.pm:410
#, c-format
msgid "Kenya"
msgstr "Kenia"
-#: lang.pm:321
+#: lang.pm:411
#, c-format
msgid "Kyrgyzstan"
msgstr "Kirgisistan"
-#: lang.pm:322
+#: lang.pm:412
#, c-format
msgid "Cambodia"
msgstr "Kambodscha"
-#: lang.pm:323
+#: lang.pm:413
#, c-format
msgid "Kiribati"
msgstr "Kiribati"
-#: lang.pm:324
+#: lang.pm:414
#, c-format
msgid "Comoros"
msgstr "Komoren"
-#: lang.pm:325
+#: lang.pm:415
#, c-format
msgid "Saint Kitts and Nevis"
msgstr "St. Kitts und Nevis"
-#: lang.pm:326
+#: lang.pm:416
#, c-format
msgid "Korea (North)"
msgstr "Nordkorea"
-#: lang.pm:327 timezone.pm:219
+#: lang.pm:417 timezone.pm:230
#, c-format
msgid "Korea"
msgstr "Korea"
-#: lang.pm:328
+#: lang.pm:418
#, c-format
msgid "Kuwait"
msgstr "Kuwait"
-#: lang.pm:329
+#: lang.pm:419
#, c-format
msgid "Cayman Islands"
msgstr "Cayman-Inseln"
-#: lang.pm:330
+#: lang.pm:420
#, c-format
msgid "Kazakhstan"
msgstr "Kasachstan"
-#: lang.pm:331
+#: lang.pm:421
#, c-format
msgid "Laos"
msgstr "Laos"
-#: lang.pm:332
+#: lang.pm:422
#, c-format
msgid "Lebanon"
msgstr "Libanon"
-#: lang.pm:333
+#: lang.pm:423
#, c-format
msgid "Saint Lucia"
msgstr "St. Lucia"
-#: lang.pm:334
+#: lang.pm:424
#, c-format
msgid "Liechtenstein"
msgstr "Liechtenstein"
-#: lang.pm:335
+#: lang.pm:425
#, c-format
msgid "Sri Lanka"
msgstr "Sri Lanka"
-#: lang.pm:336
+#: lang.pm:426
#, c-format
msgid "Liberia"
msgstr "Liberia"
-#: lang.pm:337
+#: lang.pm:427
#, c-format
msgid "Lesotho"
msgstr "Lesotho"
-#: lang.pm:338 timezone.pm:243
+#: lang.pm:428 timezone.pm:254
#, c-format
msgid "Lithuania"
msgstr "Litauen"
-#: lang.pm:339 timezone.pm:244
+#: lang.pm:429 timezone.pm:255
#, c-format
msgid "Luxembourg"
msgstr "Luxemburg"
-#: lang.pm:340
+#: lang.pm:430
#, c-format
msgid "Latvia"
-msgstr "Litauen"
+msgstr "Lettland"
-#: lang.pm:341
+#: lang.pm:431
#, c-format
msgid "Libya"
msgstr "Lybien"
-#: lang.pm:342
+#: lang.pm:432
#, c-format
msgid "Morocco"
msgstr "Marokko"
-#: lang.pm:343
+#: lang.pm:433
#, c-format
msgid "Monaco"
msgstr "Monaco"
-#: lang.pm:344
+#: lang.pm:434
#, c-format
msgid "Moldova"
msgstr "Moldawien"
-#: lang.pm:345
+#: lang.pm:435
#, c-format
msgid "Madagascar"
msgstr "Madagaskar"
-#: lang.pm:346
+#: lang.pm:436
#, c-format
msgid "Marshall Islands"
msgstr "Marshall Inseln"
-#: lang.pm:347
+#: lang.pm:437
#, c-format
msgid "Macedonia"
msgstr "Mazedonien"
-#: lang.pm:348
+#: lang.pm:438
#, c-format
msgid "Mali"
msgstr "Mali"
-#: lang.pm:349
+#: lang.pm:439
#, c-format
msgid "Myanmar"
msgstr "Burma"
-#: lang.pm:350
+#: lang.pm:440
#, c-format
msgid "Mongolia"
msgstr "Mongolei"
-#: lang.pm:351
+#: lang.pm:441
#, c-format
msgid "Northern Mariana Islands"
msgstr "Nördliche Mariannen-Inseln"
-#: lang.pm:352
+#: lang.pm:442
#, c-format
msgid "Martinique"
msgstr "Martinique"
-#: lang.pm:353
+#: lang.pm:443
#, c-format
msgid "Mauritania"
msgstr "Mauretanien"
-#: lang.pm:354
+#: lang.pm:444
#, c-format
msgid "Montserrat"
msgstr "Montserrat"
-#: lang.pm:355
+#: lang.pm:445
#, c-format
msgid "Malta"
msgstr "Malta"
-#: lang.pm:356
+#: lang.pm:446
#, c-format
msgid "Mauritius"
msgstr "Mauritius"
-#: lang.pm:357
+#: lang.pm:447
#, c-format
msgid "Maldives"
msgstr "Malediven"
-#: lang.pm:358
+#: lang.pm:448
#, c-format
msgid "Malawi"
msgstr "Malawi"
-#: lang.pm:359 timezone.pm:263
+#: lang.pm:449 timezone.pm:274
#, c-format
msgid "Mexico"
msgstr "Mexiko"
-#: lang.pm:360 timezone.pm:220
+#: lang.pm:450 timezone.pm:231
#, c-format
msgid "Malaysia"
msgstr "Malaysia"
-#: lang.pm:361
+#: lang.pm:451
#, c-format
msgid "Mozambique"
msgstr "Mosambik"
-#: lang.pm:362
+#: lang.pm:452
#, c-format
msgid "Namibia"
msgstr "Namibia"
-#: lang.pm:363
+#: lang.pm:453
#, c-format
msgid "New Caledonia"
msgstr "Neukaledonien"
-#: lang.pm:364
+#: lang.pm:454
#, c-format
msgid "Niger"
msgstr "Niger"
-#: lang.pm:365
+#: lang.pm:455
#, c-format
msgid "Norfolk Island"
msgstr "Norfolkinsel"
-#: lang.pm:366
+#: lang.pm:456
#, c-format
msgid "Nigeria"
msgstr "Nigeria"
-#: lang.pm:367
+#: lang.pm:457
#, c-format
msgid "Nicaragua"
msgstr "Nicaragua"
-#: lang.pm:368 mirror.pm:29 timezone.pm:245
+#: lang.pm:458 timezone.pm:256
#, c-format
msgid "Netherlands"
msgstr "Niederlande"
-#: lang.pm:369 mirror.pm:31 timezone.pm:246
+#: lang.pm:459 timezone.pm:257
#, c-format
msgid "Norway"
msgstr "Norwegen"
-#: lang.pm:370
+#: lang.pm:460
#, c-format
msgid "Nepal"
msgstr "Nepal"
-#: lang.pm:371
+#: lang.pm:461
#, c-format
msgid "Nauru"
msgstr "Nauru"
-#: lang.pm:372
+#: lang.pm:462
#, c-format
msgid "Niue"
msgstr "Niue"
-#: lang.pm:373 mirror.pm:30 timezone.pm:268
+#: lang.pm:463 timezone.pm:279
#, c-format
msgid "New Zealand"
msgstr "Neuseeland"
-#: lang.pm:374
+#: lang.pm:464
#, c-format
msgid "Oman"
msgstr "Oman"
-#: lang.pm:375
+#: lang.pm:465
#, c-format
msgid "Panama"
msgstr "Panama"
-#: lang.pm:376
+#: lang.pm:466
#, c-format
msgid "Peru"
msgstr "Peru"
-#: lang.pm:377
+#: lang.pm:467
#, c-format
msgid "French Polynesia"
-msgstr "Französisch Polinesien"
+msgstr "Französisch Polynesien"
-#: lang.pm:378
+#: lang.pm:468
#, c-format
msgid "Papua New Guinea"
msgstr "Papua-Neuguinea"
-#: lang.pm:379 timezone.pm:221
+#: lang.pm:469 timezone.pm:232
#, c-format
msgid "Philippines"
msgstr "Philippinen"
-#: lang.pm:380
+#: lang.pm:470
#, c-format
msgid "Pakistan"
msgstr "Pakistan"
-#: lang.pm:381 mirror.pm:32 timezone.pm:247
+#: lang.pm:471 timezone.pm:258
#, c-format
msgid "Poland"
msgstr "Polen"
-#: lang.pm:382
+#: lang.pm:472
#, c-format
msgid "Saint Pierre and Miquelon"
msgstr "St. Pierre und Miquelon"
-#: lang.pm:383
+#: lang.pm:473
#, c-format
msgid "Pitcairn"
msgstr "Pitcairn"
-#: lang.pm:384
+#: lang.pm:474
#, c-format
msgid "Puerto Rico"
msgstr "Puerto Rico"
-#: lang.pm:385
+#: lang.pm:475
#, c-format
msgid "Palestine"
msgstr "Palästina"
-#: lang.pm:386 mirror.pm:33 timezone.pm:248
+#: lang.pm:476 timezone.pm:259
#, c-format
msgid "Portugal"
msgstr "Portugal"
-#: lang.pm:387
+#: lang.pm:477
#, c-format
msgid "Paraguay"
msgstr "Paraguay"
-#: lang.pm:388
+#: lang.pm:478
#, c-format
msgid "Palau"
msgstr "Palau"
-#: lang.pm:389
+#: lang.pm:479
#, c-format
msgid "Qatar"
msgstr "Quatar"
-#: lang.pm:390
+#: lang.pm:480
#, c-format
msgid "Reunion"
msgstr "Réunion"
-#: lang.pm:391 timezone.pm:249
+#: lang.pm:481 timezone.pm:260
#, c-format
msgid "Romania"
msgstr "Rumänien"
-#: lang.pm:392 mirror.pm:34
+#: lang.pm:482
#, c-format
msgid "Russia"
msgstr "Russland"
-#: lang.pm:393
+#: lang.pm:483
#, c-format
msgid "Rwanda"
msgstr "Ruanda"
-#: lang.pm:394
+#: lang.pm:484
#, c-format
msgid "Saudi Arabia"
msgstr "Saudi Arabien"
-#: lang.pm:395
+#: lang.pm:485
#, c-format
msgid "Solomon Islands"
msgstr "Solomon-Inseln"
-#: lang.pm:396
+#: lang.pm:486
#, c-format
msgid "Seychelles"
msgstr "Seychellen"
-#: lang.pm:397
+#: lang.pm:487
#, c-format
msgid "Sudan"
msgstr "Sudan"
-#: lang.pm:398 mirror.pm:38 timezone.pm:254
+#: lang.pm:488 timezone.pm:265
#, c-format
msgid "Sweden"
msgstr "Schweden"
-#: lang.pm:399 timezone.pm:222
+#: lang.pm:489 timezone.pm:233
#, c-format
msgid "Singapore"
msgstr "Singapur"
-#: lang.pm:400
+#: lang.pm:490
#, c-format
msgid "Saint Helena"
msgstr "Sankt Helena"
-#: lang.pm:401 timezone.pm:252
+#: lang.pm:491 timezone.pm:263
#, c-format
msgid "Slovenia"
msgstr "Slowenien"
-#: lang.pm:402
+#: lang.pm:492
#, c-format
msgid "Svalbard and Jan Mayen Islands"
-msgstr "Svalbard and Jan Mayen Islands (Norwegen)"
+msgstr "Svalbard und Jan Mayen Inseln (Norwegen)"
-#: lang.pm:403 mirror.pm:35 timezone.pm:251
+#: lang.pm:493 timezone.pm:262
#, c-format
msgid "Slovakia"
msgstr "Slowakei"
-#: lang.pm:404
+#: lang.pm:494
#, c-format
msgid "Sierra Leone"
msgstr "Sierra Leone"
-#: lang.pm:405
+#: lang.pm:495
#, c-format
msgid "San Marino"
msgstr "San Marino"
-#: lang.pm:406
+#: lang.pm:496
#, c-format
msgid "Senegal"
msgstr "Senegal"
-#: lang.pm:407
+#: lang.pm:497
#, c-format
msgid "Somalia"
msgstr "Somalia"
-#: lang.pm:408
+#: lang.pm:498
#, c-format
msgid "Suriname"
msgstr "Surinam"
-#: lang.pm:409
+#: lang.pm:499
#, c-format
msgid "Sao Tome and Principe"
msgstr "Sao Tome und Principe"
-#: lang.pm:410
+#: lang.pm:500
#, c-format
msgid "El Salvador"
msgstr "El Salvador"
-#: lang.pm:411
+#: lang.pm:501
#, c-format
msgid "Syria"
msgstr "Syrien"
-#: lang.pm:412
+#: lang.pm:502
#, c-format
msgid "Swaziland"
msgstr "Swaziland"
-#: lang.pm:413
+#: lang.pm:503
#, c-format
msgid "Turks and Caicos Islands"
msgstr "Turks und Caicos Inseln"
-#: lang.pm:414
+#: lang.pm:504
#, c-format
msgid "Chad"
msgstr "Tschad"
-#: lang.pm:415
+#: lang.pm:505
#, c-format
msgid "French Southern Territories"
-msgstr "French Southern Territories"
+msgstr "Französische Süd- und Antarktisgebiete"
-#: lang.pm:416
+#: lang.pm:506
#, c-format
msgid "Togo"
msgstr "Togo"
-#: lang.pm:417 mirror.pm:41 timezone.pm:224
+#: lang.pm:507 timezone.pm:235
#, c-format
msgid "Thailand"
msgstr "Thailand"
-#: lang.pm:418
+#: lang.pm:508
#, c-format
msgid "Tajikistan"
msgstr "Tadschikistan"
-#: lang.pm:419
+#: lang.pm:509
#, c-format
msgid "Tokelau"
msgstr "Tokelau (Neuseeland)"
-#: lang.pm:420
+#: lang.pm:510
#, c-format
msgid "East Timor"
msgstr "Ost Timor"
-#: lang.pm:421
+#: lang.pm:511
#, c-format
msgid "Turkmenistan"
msgstr "Turkmenistan"
-#: lang.pm:422
+#: lang.pm:512
#, c-format
msgid "Tunisia"
msgstr "Tunesien"
-#: lang.pm:423
+#: lang.pm:513
#, c-format
msgid "Tonga"
msgstr "Tonga"
-#: lang.pm:424 timezone.pm:225
+#: lang.pm:514 timezone.pm:236
#, c-format
msgid "Turkey"
msgstr "Türkei"
-#: lang.pm:425
+#: lang.pm:515
#, c-format
msgid "Trinidad and Tobago"
msgstr "Trinidad und Tobago"
-#: lang.pm:426
+#: lang.pm:516
#, c-format
msgid "Tuvalu"
msgstr "Tuvalu"
-#: lang.pm:427 mirror.pm:40 timezone.pm:223
+#: lang.pm:517 timezone.pm:234
#, c-format
msgid "Taiwan"
msgstr "Taiwan"
-#: lang.pm:428 timezone.pm:208
+#: lang.pm:518 timezone.pm:219
#, c-format
msgid "Tanzania"
msgstr "Tansania"
-#: lang.pm:429 timezone.pm:256
+#: lang.pm:519 timezone.pm:267
#, c-format
msgid "Ukraine"
msgstr "Ukraine"
-#: lang.pm:430
+#: lang.pm:520
#, c-format
msgid "Uganda"
msgstr "Uganda"
-#: lang.pm:431
+#: lang.pm:521
#, c-format
msgid "United States Minor Outlying Islands"
msgstr "United States Minor Outlying Islands"
-#: lang.pm:432 mirror.pm:42 timezone.pm:264
+#: lang.pm:522 timezone.pm:275
#, c-format
msgid "United States"
msgstr "Vereinigte Staaten von Amerika"
-#: lang.pm:433
+#: lang.pm:523
#, c-format
msgid "Uruguay"
msgstr "Uruguay"
-#: lang.pm:434
+#: lang.pm:524
#, c-format
msgid "Uzbekistan"
msgstr "Usbekistan"
-#: lang.pm:435
+#: lang.pm:525
#, c-format
msgid "Vatican"
msgstr "Vatikan"
-#: lang.pm:436
+#: lang.pm:526
#, c-format
msgid "Saint Vincent and the Grenadines"
msgstr "St. Vincent und die Grenadinen"
-#: lang.pm:437
+#: lang.pm:527
#, c-format
msgid "Venezuela"
msgstr "Venezuela"
-#: lang.pm:438
+#: lang.pm:528
#, c-format
msgid "Virgin Islands (British)"
msgstr "Jungferninseln (britisch)"
-#: lang.pm:439
+#: lang.pm:529
#, c-format
msgid "Virgin Islands (U.S.)"
msgstr "Jungfern-Inseln (U.S.)"
-#: lang.pm:440
+#: lang.pm:530
#, c-format
msgid "Vietnam"
msgstr "Vietnam"
-#: lang.pm:441
+#: lang.pm:531
#, c-format
msgid "Vanuatu"
msgstr "Vanuatu"
-#: lang.pm:442
+#: lang.pm:532
#, c-format
msgid "Wallis and Futuna"
msgstr "Wallis und Futuna"
-#: lang.pm:443
+#: lang.pm:533
#, c-format
msgid "Samoa"
msgstr "Samoa"
-#: lang.pm:444
+#: lang.pm:534
#, c-format
msgid "Yemen"
-msgstr "Yemen"
+msgstr "Jemen"
-#: lang.pm:445
+#: lang.pm:535
#, c-format
msgid "Mayotte"
msgstr "Mayotte (Frankreich)"
-#: lang.pm:446 mirror.pm:36 timezone.pm:207
+#: lang.pm:536 timezone.pm:218
#, c-format
msgid "South Africa"
msgstr "Südafrika"
-#: lang.pm:447
+#: lang.pm:537
#, c-format
msgid "Zambia"
msgstr "Sambia"
-#: lang.pm:448
+#: lang.pm:538
#, c-format
msgid "Zimbabwe"
msgstr "Simbabwe"
-#: lang.pm:1223
+#: lang.pm:1539
#, c-format
msgid "Welcome to %s"
msgstr "Willkommen zu %s"
-#: lvm.pm:84
+#: lvm.pm:128
#, c-format
msgid "Moving used physical extents to other physical volumes failed"
msgstr ""
"Das Verschieben der verwendeten physischen Erweiterungen auf andere "
"physische Datenträger ist fehlgeschlagen"
-#: lvm.pm:141
+#: lvm.pm:194
#, c-format
msgid "Physical volume %s is still in use"
-msgstr "Der physische datenträger %s wird noch verwendet"
+msgstr "Der physische Datenträger %s wird noch verwendet"
-#: lvm.pm:151
+#: lvm.pm:204
#, c-format
msgid "Remove the logical volumes first\n"
-msgstr "Entfernen Sie erst die Logischen Medien\n"
+msgstr "Entfernen Sie erst die logischen Geräte\n"
-#: lvm.pm:184
+#: lvm.pm:248
#, c-format
msgid "The bootloader can't handle /boot on multiple physical volumes"
msgstr ""
-"Der Bootloader beherrscht „/boot“ nicht auf mehreren physischen Datenträgern"
+"Der Bootloader kann nicht mit einer /boot-Partition auf mehreren physischen "
+"Datenträgern umgehen"
+#. -PO: Only write something if needed:
#: messages.pm:11
#, c-format
+msgid "_: You can warn about unofficial translation here"
+msgstr ""
+"Bei dieser Übersetzung handelt es sich um eine inoffizielle Übersetzung\n"
+"der Mageia-Lizenz in die deutsche Sprache. Sie ist keine\n"
+"rechtsverbindliche Darstellung der Lizenzbedingungen der Software in\n"
+"dieser Distribution - nur der ursprüngliche französische Text der\n"
+"Mageia-Lizenz ist rechtsverbindlich. Wir hoffen aber, dass diese\n"
+"Übersetzung den Deutsch sprechenden Benutzern das Verständnis dieser\n"
+"Lizenz erleichtert."
+
+#: messages.pm:18
+#, c-format
+msgid "Introduction"
+msgstr "Einführung"
+
+#: messages.pm:20
+#, c-format
msgid ""
-"Introduction\n"
-"\n"
-"The operating system and the different components available in the Mandriva "
-"Linux distribution \n"
+"The operating system and the different components available in the Mageia "
+"distribution \n"
"shall be called the \"Software Products\" hereafter. The Software Products "
"include, but are not \n"
"restricted to, the set of programs, methods, rules and documentation related "
"to the operating \n"
-"system and the different components of the Mandriva Linux distribution, and "
-"any applications \n"
-"distributed with these products provided by Mandriva's licensors or "
-"suppliers.\n"
-"\n"
-"\n"
-"1. License Agreement\n"
-"\n"
+"system and the different components of the Mageia distribution, and any "
+"applications \n"
+"distributed with these products provided by Mageia's licensors or suppliers."
+msgstr ""
+"Das Betriebssystem sowie die verschiedenen Komponenten, die in Mageia\n"
+"enthalten sind, werden hier „Software-Produkte“ genannt. Die\n"
+"Software-Produkte umfassen, aber sind nicht beschränkt auf die\n"
+"Gesamtheit der Programme, Methoden, Regeln, und Dokumentation, welche\n"
+"zum Betriebssystem und den anderen Komponenten der Mageia\n"
+"Distribution gehören, sowie alle in der Distribution enthaltenen "
+"Anwendungen\n"
+"von Mageia-Lizenznehmern und Zulieferern."
+
+#: messages.pm:27
+#, c-format
+msgid "1. License Agreement"
+msgstr "1. Lizenzvereinbarung"
+
+#: messages.pm:29
+#, c-format
+msgid ""
"Please read this document carefully. This document is a license agreement "
"between you and \n"
-"Mandriva S.A. which applies to the Software Products.\n"
+"Mageia which applies to the Software Products.\n"
"By installing, duplicating or using any of the Software Products in any "
"manner, you explicitly \n"
"accept and fully agree to conform to the terms and conditions of this "
@@ -4905,16 +5006,36 @@ msgid ""
"your rights under this \n"
"License. Upon termination of the License, you must immediately destroy all "
"copies of the \n"
-"Software Products.\n"
-"\n"
-"\n"
-"2. Limited Warranty\n"
-"\n"
+"Software Products."
+msgstr ""
+"Bitte lesen Sie dieses Dokument sorgfältig. Dieses Dokument ist eine\n"
+"Lizenzvereinbarung zwischen Ihnen und Mageia, welche sich auf\n"
+"die Software-Produkte bezieht.\n"
+"Durch Installation, Duplizierung oder Benutzung der Software-Produkte in\n"
+"irgendeiner Art und Weise erklären Sie sich mit den Bedingungen dieser\n"
+"Lizenz einverstanden.\n"
+"Wenn Sie mit irgendeinem Punkt dieser Lizenz nicht einverstanden sind,\n"
+"ist es Ihnen nicht erlaubt, die Software-Produkte zu installieren,\n"
+"zu duplizieren oder zu benutzen.\n"
+"Mit jedem Versuch, die Software-Produkte in einer Art und Weise zu\n"
+"benutzen, die nicht den Bedingungen dieser Lizenz entspricht, verlieren\n"
+"Sie die Ihnen mit dieser Lizenz eingeräumten Rechte. In diesem Fall\n"
+"haben Sie unverzüglich alle Kopien der Software-Produkte zu vernichten."
+
+#: messages.pm:41
+#, c-format
+msgid "2. Limited Warranty"
+msgstr "2. Eingeschränkte Garantie"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: messages.pm:44
+#, c-format
+msgid ""
"The Software Products and attached documentation are provided \"as is\", "
"with no warranty, to the \n"
"extent permitted by law.\n"
-"Neither Mandriva S.A. nor its licensors or suppliers will, in any "
-"circumstances and to the extent \n"
+"Neither Mageia nor its licensors or suppliers will, in any circumstances and "
+"to the extent \n"
"permitted by law, be liable for any special, incidental, direct or indirect "
"damages whatsoever \n"
"(including without limitation damages for loss of business, interruption of "
@@ -4922,15 +5043,15 @@ msgid ""
"loss, legal fees and penalties resulting from a court judgment, or any other "
"consequential loss) \n"
"arising out of the use or inability to use the Software Products, even if "
-"Mandriva S.A. or its \n"
+"Mageia or its \n"
"licensors or suppliers have been advised of the possibility or occurrence of "
"such damages.\n"
"\n"
"LIMITED LIABILITY LINKED TO POSSESSING OR USING PROHIBITED SOFTWARE IN SOME "
"COUNTRIES\n"
"\n"
-"To the extent permitted by law, neither Mandriva S.A. nor its licensors, "
-"suppliers or\n"
+"To the extent permitted by law, neither Mageia nor its licensors, suppliers "
+"or\n"
"distributors will, in any circumstances, be liable for any special, "
"incidental, direct or indirect \n"
"damages whatsoever (including without limitation damages for loss of "
@@ -4939,109 +5060,21 @@ msgid ""
"judgment, or any \n"
"other consequential loss) arising out of the possession and use of software "
"components or \n"
-"arising out of downloading software components from one of Mandriva Linux "
-"sites which are \n"
+"arising out of downloading software components from one of Mageia sites "
+"which are \n"
"prohibited or restricted in some countries by local laws.\n"
"This limited liability applies to, but is not restricted to, the strong "
"cryptography components \n"
"included in the Software Products.\n"
"However, because some jurisdictions do not allow the exclusion or limitation "
-"or liability for \n"
+"of liability for \n"
"consequential or incidental damages, the above limitation may not apply to "
-"you. \n"
-"%s\n"
-"\n"
-"3. The GPL License and Related Licenses\n"
-"\n"
-"The Software Products consist of components created by different persons or "
-"entities. %s\n"
-"Most of these licenses allow you to use, duplicate, adapt or redistribute "
-"the components which \n"
-"they cover. Please read carefully the terms and conditions of the license "
-"agreement for each component \n"
-"before using any component. Any question on a component license should be "
-"addressed to the component \n"
-"licensor or supplier and not to Mandriva.\n"
-"The programs developed by Mandriva S.A. are governed by the GPL License. "
-"Documentation written \n"
-"by Mandriva S.A. is governed by a specific license. Please refer to the "
-"documentation for \n"
-"further details.\n"
-"\n"
-"\n"
-"4. Intellectual Property Rights\n"
-"\n"
-"All rights to the components of the Software Products belong to their "
-"respective authors and are \n"
-"protected by intellectual property and copyright laws applicable to software "
-"programs.\n"
-"Mandriva S.A. and its suppliers and licensors reserves their rights to "
-"modify or adapt the Software \n"
-"Products, as a whole or in parts, by all means and for all purposes.\n"
-"\"Mandriva\", \"Mandriva Linux\" and associated logos are trademarks of "
-"Mandriva S.A. \n"
-"\n"
-"\n"
-"5. Governing Laws \n"
-"\n"
-"If any portion of this agreement is held void, illegal or inapplicable by a "
-"court judgment, this \n"
-"portion is excluded from this contract. You remain bound by the other "
-"applicable sections of the \n"
-"agreement.\n"
-"The terms and conditions of this License are governed by the Laws of "
-"France.\n"
-"All disputes on the terms of this license will preferably be settled out of "
-"court. As a last \n"
-"resort, the dispute will be referred to the appropriate Courts of Law of "
-"Paris - France.\n"
-"For any question on this document, please contact Mandriva S.A."
+"you."
msgstr ""
-"Bei dieser Übersetzung handelt es sich um eine inoffizielle Übersetzung\n"
-"der Mandriva Linux-Lizenz in die deutsche Sprache. Sie ist keine\n"
-"rechtsverbindliche Darstellung der Lizenzbedingungen der Software in\n"
-"dieser Distribution - nur der ursprüngliche französische Text der\n"
-"Mandriva Linux-Lizenz ist rechtsverbindlich. Wir hoffen aber, dass diese\n"
-"Übersetzung den Deutsch sprechenden Benutzern das Verständnis dieser\n"
-"Lizenz erleichtert.\n"
-"\n"
-"\n"
-"Einführung\n"
-"\n"
-"Das Betriebssystem sowie die verschiedenen Komponenten, die in Mandriva "
-"Linux\n"
-"enthalten sind, werden hier „Software-Produkte“ genannt. Die\n"
-"Software-Produkte umfassen, aber sind nicht beschränkt auf die\n"
-"Gesamtheit der Programme, Methoden, Regeln, und Dokumentation, welche\n"
-"zum Betriebssystem und den anderen Komponenten der Mandriva Linux\n"
-"Distribution gehören, sowie alle in der Distribution enthaltenen "
-"Anwendungen\n"
-"von Mandriva Lizenznehmern und Zulieferern.\n"
-"\n"
-"\n"
-"1. Lizenzvereinbarung\n"
-"\n"
-"Bitte lesen Sie dieses Dokument sorgfältig. Dieses Dokument ist eine\n"
-"Lizenzvereinbarung zwischen Ihnen und Mandriva S. A., welche sich auf\n"
-"die Software-Produkte bezieht.\n"
-"Durch Installation, Duplizierung oder Benutzung der Software-Produkte in\n"
-"irgendeiner Art und Weise erklären Sie sich mit den Bedingungen dieser\n"
-"Lizenz einverstanden.\n"
-"Wenn Sie mit irgendeinem Punkt dieser Lizenz nicht einverstanden sind,\n"
-"ist es Ihnen nicht erlaubt, die Software-Produkte zu installieren,\n"
-"zu duplizieren oder zu benutzen.\n"
-"Mit jedem Versuch, die Software-Produkte in einer Art und Weise zu\n"
-"benutzen, die nicht den Bedingungen dieser Lizenz entspricht, verlieren\n"
-"Sie die Ihnen mit dieser Lizenz eingeräumten Rechte. In diesem Fall\n"
-"haben Sie unverzüglich alle Kopien der Software-Produkte zu vernichten.\n"
-"\n"
-"\n"
-"2. Eingeschränkte Garantie\n"
-"\n"
"Die Software-Produkte und die beigefügte Dokumentation werden dem\n"
"Benutzer lediglich zur Verfügung gestellt, es wird keinerlei Garantie\n"
"gegeben soweit es gesetzlich zulässig ist.\n"
-"Mandriva S. A. sowie seine Lizenznehmer und Zulieferer haften unter keinen\n"
+"Mageia sowie seine Lizenznehmer und Zulieferer haften unter keinen\n"
"Umständen, soweit gesetzlich zulässig, für direkte oder indirekte Schäden\n"
"irgendwelcher Art, (inklusive uneingeschränkten Schäden aufgrund Verlust "
"von\n"
@@ -5049,60 +5082,105 @@ msgstr ""
"finanziellen Verlust, Gebühren oder Strafen aufgrund gerichtlicher\n"
"Entscheide, oder jegliche Folgeschäden) die aufgrund der Benutzung oder\n"
"der Unmöglichkeit der Benutzung der Software-Produkte entstehen, auch\n"
-"wenn Mandriva S. A. über die Möglichkeit und das Auftreten\n"
+"wenn Mageia über die Möglichkeit und das Auftreten\n"
"derartiger Schäden unterrichtet wurde.\n"
"\n"
-"\n"
"EINGESCHRÄNKTE VERANTWORTLICHKEIT BEZOGEN AUF DEN BESITZ UND DIE\n"
"BENUTZUNG VON SOFTWARE, DIE IN EINIGEN LÄNDERN VERBOTEN IST.\n"
"\n"
-"\n"
-"Soweit gesetzlich zulässig, haften Mandriva S. A., seine Lizenznehmer,\n"
+"Soweit gesetzlich zulässig, haften Mageia, seine Lizenznehmer,\n"
"Zulieferer und Vertreiber unter keinen Umständen für direkte oder\n"
"indirekte Schäden irgendwelcher Art, (inklusive uneingeschränkten Schäden\n"
"aufgrund von Verlust von Geschäftsbeziehungen, Unterbrechung von\n"
"Geschäftsvorgängen, finanziellen Verlust, Gebühren oder Strafen aufgrund\n"
"gerichtlicher Entscheide, oder jegliche Folgeschäden) die aufgrund des\n"
"Besitzes und der Benutzung von Software-Komponenten oder aufgrund des\n"
-"Ladens von Software-Komponenten von den Internet-Servern von Mandriva S. "
-"A.,\n"
+"Ladens von Software-Komponenten von den Internet-Servern von Mageia,\n"
"deren Besitz und Benutzung in einigen Ländern aufgrund lokaler Gesetze\n"
"nicht gestattet ist, entstehen.\n"
"Diese Einschränkung der Verantwortlichkeit bezieht sich auch, aber nicht\n"
"nur, auf die in den Software-Produkten enthaltenen Komponenten für\n"
-"starke Kryptographie.\n"
-"\n"
-"\n"
-"3. Die GPL und verwandte Lizenzen\n"
-"\n"
+"starke Kryptographie."
+
+#: messages.pm:68
+#, c-format
+msgid "3. The GPLv2 License and Related Licenses"
+msgstr "3. Die GPLv2 Lizenz und verwandte Lizenzen"
+
+#: messages.pm:70
+#, c-format
+msgid ""
+"The Software Products consist of components created by different persons or "
+"entities.\n"
+"Most of these licenses allow you to use, duplicate, adapt or redistribute "
+"the components which \n"
+"they cover. Please read carefully the terms and conditions of the license "
+"agreement for each component \n"
+"before using any component. Any question on a component license should be "
+"addressed to the component \n"
+"licensor or supplier and not to Mageia.\n"
+"The programs developed by Mageia are governed by the GPLv2 License. "
+"Documentation written \n"
+"by Mageia is governed by \"%s\" License."
+msgstr ""
"Die Software-Produkte bestehen aus Komponenten, die von verschiedenen\n"
-"Personen und Einrichtungen erstellt wurden. Die meisten der Lizenzen\n"
-"erlauben es, die Komponenten, die diesen Lizenzen unterliegen, zu\n"
-"benutzen, zu duplizieren, anzupassen, und weiterzugeben. Bitte lesen sie\n"
-"sorgfältig die Bedingungen der Lizenzabkommen jeder Komponente,\n"
-"bevor Sie sie benutzen. Jegliche Frage zur Lizenz einer Komponente ist an\n"
-"den Lizenzgeber oder Vertreiber der Komponente und nicht an Mandriva S. A.\n"
-"zu richten. Die von Mandriva S. A. erstellten Programme unterliegen der "
-"GPL.\n"
-"Von Mandriva S. A. geschriebene Dokumentation unterliegt einer\n"
-"spezifischen Lizenz. Bitte lesen Sie die Dokumentation für weitere\n"
-"Details.\n"
-"\n"
-"\n"
-"4. Geistiges Eigentum\n"
-"\n"
+"Personen und Einrichtungen erstellt wurden.\n"
+"Die meisten der Lizenzen erlauben es, die Komponenten, die diesen Lizenzen "
+"unterliegen, zu benutzen, zu duplizieren, anzupassen, und weiterzugeben. "
+"Bitte lesen Sie sorgfältig die Bedingungen der Lizenzabkommen jeder "
+"Komponente, bevor Sie sie benutzen.\n"
+"Jegliche Frage zur Lizenz einer Komponente ist an den Lizenzgeber oder "
+"Vertreiber der Komponente und nicht an Mageia zu richten.\n"
+"Die von Mageia erstellten Programme unterliegen der GPLv2.\n"
+"Von Mageia geschriebene Dokumentation unterliegt einer \"%s\" Lizenz."
+
+#: messages.pm:79
+#, c-format
+msgid "4. Intellectual Property Rights"
+msgstr "4. Geistiges Eigentum"
+
+#: messages.pm:81
+#, c-format
+msgid ""
+"All rights to the components of the Software Products belong to their "
+"respective authors and are \n"
+"protected by intellectual property and copyright laws applicable to software "
+"programs.\n"
+"Mageia and its suppliers and licensors reserves their rights to modify or "
+"adapt the Software \n"
+"Products, as a whole or in parts, by all means and for all purposes.\n"
+"\"Mageia\" and associated logos are trademarks of %s"
+msgstr ""
"Alle Rechte an den Komponenten der Software-Produkte liegen bei den\n"
"entsprechenden Autoren und sind durch die Urheberrechtsgesetze für\n"
"Softwareprodukte geschützt.\n"
-"Mandriva S. A. und seine Zulieferer und Lizenznehmer behalten sich das\n"
+"Mageia und seine Zulieferer und Lizenznehmer behalten sich das\n"
"Recht vor, die Software-Produkte als Ganzes oder teilweise aus jeglichen\n"
"Gründen zu modifizieren und anzupassen.\n"
-"„Mandriva“, „Mandriva Linux“ und entsprechende Logos sind eingetragene\n"
-"Warenzeichen der Mandriva S. A..\n"
-"\n"
-"\n"
-"5. Jurisdiktion \n"
-"\n"
+"„Mageia“ und entsprechende Logos sind eingetragene\n"
+"Warenzeichen der %s."
+
+#: messages.pm:88
+#, c-format
+msgid "5. Governing Laws"
+msgstr "5. Jurisdiktion"
+
+#: messages.pm:90
+#, c-format
+msgid ""
+"If any portion of this agreement is held void, illegal or inapplicable by a "
+"court judgment, this \n"
+"portion is excluded from this contract. You remain bound by the other "
+"applicable sections of the \n"
+"agreement.\n"
+"The terms and conditions of this License are governed by the Laws of "
+"France.\n"
+"All disputes on the terms of this license will preferably be settled out of "
+"court. As a last \n"
+"resort, the dispute will be referred to the appropriate Courts of Law of "
+"Paris - France.\n"
+"For any question on this document, please contact Mageia."
+msgstr ""
"Wenn irgendein Teil dieses Lizenzabkommens durch einen Gerichtsentscheid\n"
"für ungültig, illegal oder nicht anwendbar erklärt wird, wird dieser Teil\n"
"aus dem Abkommen ausgeschlossen. Sie bleiben weiterhin an die anderen,\n"
@@ -5112,230 +5190,60 @@ msgstr ""
"werden vorzugsweise außergerichtlich beigelegt. Letztes Mittel ist das\n"
"zuständige Gericht in Paris, Frankreich.\n"
"Zu jeglicher Frage zu diesem Dokument kontaktieren Sie bitte\n"
-"Mandriva S. A."
+"Mageia"
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:90
-#, c-format
-msgid ""
-"You agree not to (i) sell, export, re-export, transfer, divert, disclose "
-"technical data, or \n"
-"dispose of, any Software to any person, entity, or destination prohibited by "
-"US export laws \n"
-"or regulations including, without limitation, Cuba, Iran, North Korea, Sudan "
-"and Syria; or \n"
-"(ii) use any Software for any use prohibited by the laws or regulations of "
-"the United States.\n"
-"\n"
-"U.S. GOVERNMENT RESTRICTED RIGHTS. \n"
-"\n"
-"The Software Products and any accompanying documentation are and shall be "
-"deemed to be \n"
-"\"commercial computer software\" and \"commercial computer software "
-"documentation,\" respectively, \n"
-"as defined in DFAR 252.227-7013 and as described in FAR 12.212. Any use, "
-"modification, reproduction, \n"
-"release, performance, display or disclosure of the Software and any "
-"accompanying documentation \n"
-"by the United States Government shall be governed solely by the terms of "
-"this Agreement and any \n"
-"other applicable licence agreements and shall be prohibited except to the "
-"extent expressly permitted \n"
-"by the terms of this Agreement."
-msgstr ""
-"Sie erklären sich einverstanden, (i) weder Software zu verkaufen, zu \n"
-"exportieren, zu transferieren, umzuleiten oder zu entsorgen, noch "
-"technische \n"
-"Details weiterzugeben, wenn die Person, die Organisation oder das Ziel den \n"
-"US-Ausfuhrbeschränkungen unterliegt. Dazu gehören ohne Ausnahmen Kuba, "
-"Iran, \n"
-"Nord-Korea und Sudan. Sie sind ebenfalls einverstanden, (ii) keinerlei "
-"Software \n"
-"zu einem Zweck zu nutzen, der unter US-Jurisdiktion untersagt ist..\n"
-"\n"
-"EINSCHRÄNKUNGEN FÜR DIE US-REGIERUNG \n"
-"\n"
-"Die Software-Produkte sowie jegliche enthaltene Dokumentation gelten als \n"
-"\"kommerzielle Computer-Software\" und \"Dokumentation für kommerzielle \n"
-"Computer-Software\", entsprechend der Definitionen in DFAR 252.227-7013, \n"
-"beschrieben in FAR 12.212. Jegliche Benutzung, Modifizierung, "
-"Reproduktion, \n"
-"Vertrieb, Demonstration, Ausstellung oder Weitergabe der Software und \n"
-"jeglicher enthaltenen Dokumentation durch die US-Regierung wird "
-"ausschließ- \n"
-"lich durch die Bedingungen dieser Vereinbarung und jeder anderen "
-"anwendbaren \n"
-"Lizenz geregelt und ist nur gültig im ausdrücklich von dieser Vereinbarung \n"
-"geregelten Ausmaß."
-
-#: messages.pm:104
-#, c-format
-msgid ""
-"Most of these components, but excluding the applications and software "
-"provided by Google Inc. or \n"
-"its subsidiaries (\"Google Software\"), are governed under the terms and "
-"conditions of the GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-"Die meisten dieser Komponenten, ausgenommen Anwendugnen und Software von \n"
-"Google Inc. oder seinen Tochterfirmen (\"Google Software\"), unterliegen \n"
-"den Bedingungen der GNU General Public License, im Folgenden \"GPL\" "
-"genannt, \n"
-"oder ähnlichen Lizenzen."
-
-#: messages.pm:107
-#, c-format
-msgid ""
-"Most of these components are governed under the terms and conditions of the "
-"GNU \n"
-"General Public Licence, hereafter called \"GPL\", or of similar licenses."
-msgstr ""
-"Die meisten dieser Komponenten unterliegen den Bedingungen der GNU General \n"
-"Public License, im Folgenden \"GPL\" genannt, oder ähnlichen Lizenzen."
-
-#: messages.pm:112
+#: messages.pm:102
#, c-format
msgid ""
"Warning: Free Software may not necessarily be patent free, and some Free\n"
"Software included may be covered by patents in your country. For example, "
-"the\n"
-"MP3 decoders included may require a licence for further usage (see\n"
-"http://www.mp3licensing.com for more details). If you are unsure if a "
-"patent\n"
-"may be applicable to you, check your local laws."
+"our\n"
+"tainted version of VLC contains components that may require a license for\n"
+"further usage (see https://www.videolan.org/press/patents.html for more\n"
+"details). If you are unsure if a patent may be applicable to you, check "
+"your\n"
+"local laws."
msgstr ""
"Warnung: Freie Software ist nicht notwendigerweise patentfrei, und einige\n"
"der beigefügten Software könnte in Ihrem Land durch ein Patent geschützt "
"sein.\n"
-"Zum Beispiel verlangen die beigefügten MP3-Decoder eine Lizenz für weiter-\n"
-"gehende Nutzung (siehe dazu: http://www.mp3licensing.com). Falls Sie "
-"unsicher \n"
-"sind ob ein Patent sie betrifft prüfen Sie die Gesetze Ihres Landes."
-
-#: messages.pm:120
-#, c-format
-msgid ""
-"6. Additional provisions applicable to those Software Products provided by "
-"Google Inc. (\"Google Software\")\n"
-"\n"
-"(a) You acknowledge that Google or third parties own all rights, title and "
-"interest in and to the Google \n"
-"Software, portions thereof, or software provided through or in conjunction "
-"with the Google Software, including\n"
-"without limitation all Intellectual Property Rights. \"Intellectual Property "
-"Rights\" means any and all rights \n"
-"existing from time to time under patent law, copyright law, trade secret "
-"law, trademark law, unfair competition \n"
-"law, database rights and any and all other proprietary rights, and any and "
-"all applications, renewals, extensions \n"
-"and restorations thereof, now or hereafter in force and effect worldwide. "
-"You agree not to modify, adapt, \n"
-"translate, prepare derivative works from, decompile, reverse engineer, "
-"disassemble or otherwise attempt to derive \n"
-"source code from Google Software. You also agree to not remove, obscure, or "
-"alter Google's or any third party's \n"
-"copyright notice, trademarks, or other proprietary rights notices affixed to "
-"or contained within or accessed in \n"
-"conjunction with or through the Google Software. \n"
-"\n"
-"(b) The Google Software is made available to you for your personal, non-"
-"commercial use only.\n"
-"You may not use the Google Software in any manner that could damage, "
-"disable, overburden, or impair Google's \n"
-"search services (e.g., you may not use the Google Software in an automated "
-"manner), nor may you use Google \n"
-"Software in any manner that could interfere with any other party's use and "
-"enjoyment of Google's search services\n"
-"or the services and products of the third party licensors of the Google "
-"Software.\n"
-"\n"
-"(c) Some of the Google Software is designed to be used in conjunction with "
-"Google's search and other services.\n"
-"Accordingly, your use of such Google Software is also defined by Google's "
-"Terms of Service located at \n"
-"http://www.google.com/terms_of_service.html and Google's Toolbar Privacy "
-"Policy located at \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc. and each of its subsidiaries and affiliates are third party "
-"beneficiaries of this contract \n"
-"and may enforce its terms."
-msgstr ""
-"Zusätzliche Bestimmungen für die Verwendung von Software-Produkten von \n"
-"Google Inc. (\"Google Software\")\n"
-"(a) Sie erkennen an, dass Google oder Dritte alle Rechte, Titel und "
-"Anteile \n"
-"an und von Google Software, Teilen davon oder durch oder in Verbindung mit \n"
-"Google Software gelieferter Software besitzen, inklusive und ohne Ausnahme \n"
-"alle Rechte an deren geistigem Eigentum. \"Geistiges Eigentum\" meint hier \n"
-"alle Rechte, die zeitweise dem Patentrecht, dem Copyright, Handelsrecht, \n"
-"Wettbewerbsrecht, dem Datenschutzrecht und allen anderen Eigentumsrechten \n"
-"unterliegen, sowie alle Applikationen, Erneuerungen, Erweiterungen und \n"
-"Wiederherstellungen, gültig weltweit jetzt und in Folge. Sie verpflichten "
-"sich, \n"
-"keine Änderungen, Adaptionen, Übersetzungen, Derivate herzustellen, sowie \n"
-"keinen Sourcecode aus der Google Software zu dekompilieren, "
-"disassemblieren \n"
-"oder auf andere Weise zu erlangen. Sie verpflichten sich weiter, die \n"
-"in oder mit der Google Software oder in Verbindung damit erhaltenen \n"
-"Copyright-Hinweise, Warenzeichen oder andere Hinweise auf Eigentumsrechte "
-"von \n"
-"Google Software und Dritten weder zu entfernen noch sie zu verbergen oder "
-"zu \n"
-"ändern. \n"
-"\n"
-"(b) Die Google Software wird Ihnen nur für Ihren eigenen, nicht "
-"kommerziellen \n"
-"Gebrauch zur Verfügung gestellt. Sie dürfen die Google Software nicht in \n"
-"einer Art und Weise benutzen, die Googles Suchdienste beschädigen, \n"
-"de-aktivieren, überlasten oder behindern könnte (z.B. dürfen Sie die \n"
-"Google Software nicht in automatischem Modus betreiben). Sie dürfen die \n"
-"Google Software nicht in einer Weise betreiben, die die Nutzung oder das \n"
-"Vergnügen Dritter an den Google Suchdiensten oder den Diensten von Lizenz- \n"
-"nehmern von Google Software einschränken könnten. \n"
-"\n"
-"(c) Teile der Google Software sind dazu entworfen, sie mit dem Google \n"
-"Suchdienst oder anderen Diensten zu nutzen. Entsprechend unterliegt die \n"
-"dieser Software ebenfalls den Nutzungsbestimmungen von Google, zu finden "
-"auf \n"
-"http://www.google.com/terms_of_service.html, sowie den "
-"Datenschutzrichtlinien \n"
-"von Google Toolbar auf \n"
-"http://www.google.com/support/toolbar/bin/static.py?page=privacy.html.\n"
-"\n"
-"(d) Google Inc und jede seiner Tochterunternehmen und Partner sind Dritt- \n"
-"Begünstigte dieses Vertrages und können dessen Bestimmungen anwenden."
+"Zum Beispiel enthält unsere tainted Version von VLC Komponenten, \n"
+"welche möglicherweise eine Lizenz für die weitergehende Nutzung\n"
+"benötigen (siehe https://www.videolan.org/press/patents.html für \n"
+"weitere Einzelheiten). Falls Sie unsicher sind ob ein Patent Sie betrifft\n"
+"prüfen Sie die Gesetze Ihres Landes."
-#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
-#: messages.pm:150
+#: messages.pm:112
#, c-format
msgid ""
"Congratulations, installation is complete.\n"
-"Remove the boot media and press Enter to reboot.\n"
-"\n"
-"\n"
-"For information on fixes which are available for this release of Mandriva "
-"Linux,\n"
-"consult the Errata available from:\n"
-"\n"
-"\n"
-"%s\n"
-"\n"
-"\n"
-"Information on configuring your system is available in the post\n"
-"install chapter of the Official Mandriva Linux User's Guide."
+"Remove the installation medium and press Enter to reboot."
msgstr ""
"Herzlichen Glückwunsch, die Installation ist abgeschlossen.\n"
-"Entfernen Sie die Startmedien (CD-ROMs / Disketten) und drücken Sie die "
-"Eingabetaste zum Neustart Ihres Rechners.\n"
-"\n"
-"Für Informationen zu Sicherheitsaktualisierungen dieser Version von Mandriva "
-"Linux informieren Sie sich bitte unter \n"
-"\n"
-"%s\n"
-"\n"
-"Wie Sie Ihr System warten können, erfahren Sie im Kapitel „Nach der "
-"Installation“ im offiziellen Benutzerhandbuch von Mandriva Linux."
+"Entfernen Sie das Installationsmedium und drücken Sie die Eingabetaste zum "
+"Neustart Ihres Rechners."
+
+#: messages.pm:114
+#, c-format
+msgid ""
+"For information on fixes which are available for this release of Mageia,\n"
+"consult the Errata available from:\n"
+"%s"
+msgstr ""
+"Für Informationen zu Sicherheitsaktualisierungen dieser Version von Mageia "
+"informieren Sie sich bitte unter \n"
+"%s"
+
+#: messages.pm:116
+#, c-format
+msgid ""
+"After rebooting and logging into Mageia, you will see the MageiaWelcome "
+"screen.\n"
+"It is full of very useful information and links."
+msgstr ""
+"Nach dem Neustart und anmelden in Mageia, sehen Sie den Mageia "
+"Willkommensbildschirm.\n"
+"Dieser ist voll mit vielen nützlichen Informationen und Links."
#: modules/interactive.pm:19
#, c-format
@@ -5350,7 +5258,7 @@ msgstr "Modul-Konfiguration"
#: modules/interactive.pm:22
#, c-format
msgid "You can configure each parameter of the module here."
-msgstr "Sie können alle Modulparamerter hier einstellen."
+msgstr "Sie können alle Modulparameter hier einstellen."
#: modules/interactive.pm:64
#, c-format
@@ -5379,25 +5287,25 @@ msgstr "Installiere den Treiber für den USB-Controller"
#: modules/interactive.pm:84
#, c-format
-msgid "Installing driver for firewire controller %s"
-msgstr "Installiere den Treiber für den Firewire-Controller %s"
+msgid "Installing driver for firewire controller \"%s\""
+msgstr "Installiere den Treiber für den Firewire-Controller \"%s\""
#: modules/interactive.pm:85
#, c-format
-msgid "Installing driver for hard drive controller %s"
-msgstr "Installiere den Treiber für den Festplatten-Controller %s"
+msgid "Installing driver for hard disk drive controller \"%s\""
+msgstr "Den Treiber für den Festplatten-Controller \"%s\" installieren"
#: modules/interactive.pm:86
#, c-format
-msgid "Installing driver for ethernet controller %s"
-msgstr "Installiere den Treiber für den Ethernet-Controller %s"
+msgid "Installing driver for ethernet controller \"%s\""
+msgstr "Den Treiber für den Netzwerk-Controller \"%s\" installieren"
#. -PO: the first %s is the card type (scsi, network, sound,...)
#. -PO: the second is the vendor+model name
#: modules/interactive.pm:97
#, c-format
msgid "Installing driver for %s card %s"
-msgstr "Installiere den Treiber für die %s Karte %s"
+msgstr "Installiere den Treiber für die %s-Karte %s"
#: modules/interactive.pm:100
#, c-format
@@ -5420,7 +5328,7 @@ msgid ""
"Options are in format ``name=value name2=value2 ...''.\n"
"For instance, ``io=0x300 irq=7''"
msgstr ""
-"Sie müssen nun die Optionen für Modul %s angeben.\n"
+"Sie können nun die Optionen für Modul %s angeben.\n"
"Optionen haben die Form „name=wert name2=wert2“.\n"
"Beispielsweise: „io=0x300 irq=7“"
@@ -5446,7 +5354,7 @@ msgid ""
"should\n"
"not cause any damage."
msgstr ""
-"In einigen Fällen benötigt der „%s“ Treiber zusätzliche Informationen,\n"
+"In einigen Fällen benötigt der %s-Treiber zusätzliche Informationen,\n"
"um korrekt zu funktionieren, meistens sollte er jedoch auch ohne \n"
"funktionieren. Wollen Sie solche Informationen angeben oder es dem Treiber "
"überlassen, nach geeigneten Parametern zu suchen? (Das Austesten durch den "
@@ -5469,75 +5377,75 @@ msgid ""
"Loading module %s failed.\n"
"Do you want to try again with other parameters?"
msgstr ""
-"Laden von Modul %s schlug fehl.\n"
+"Das Laden des Moduls %s ist fehlgeschlagen.\n"
"Wollen Sie es erneut mit anderen Parametern versuchen?"
-#: mygtk2.pm:1538 mygtk2.pm:1539
+#: mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Are you sure you want to quit?"
+msgstr "Sind Sie sicher, dass Sie beenden möchten?"
+
+#: mygtk2.pm:1570 mygtk2.pm:1571 mygtk3.pm:1646 mygtk3.pm:1647
#, c-format
msgid "Password is trivial to guess"
-msgstr ""
+msgstr "Das Passwort ist zu einfach zu erraten"
-#: mygtk2.pm:1540
+#: mygtk2.pm:1572 mygtk3.pm:1648
#, c-format
-msgid "Password should resist to basic attacks"
-msgstr ""
+msgid "Password should be resistant to basic attacks"
+msgstr "Passwörter sollten grundlegenden Angriffen widerstehen können"
-#: mygtk2.pm:1541 mygtk2.pm:1542
+#: mygtk2.pm:1573 mygtk2.pm:1574 mygtk3.pm:1649 mygtk3.pm:1650
#, c-format
msgid "Password seems secure"
-msgstr ""
+msgstr "Das Passwort scheint sicher zu sein"
-#: partition_table.pm:411
+#: partition_table.pm:508
#, c-format
msgid "mount failed: "
msgstr "Fehler beim Einhängen: "
-#: partition_table.pm:523
-#, c-format
-msgid "Extended partition not supported on this platform"
-msgstr "Diese Rechnerarchitektur kennt keine erweiterten Partitionen"
-
-#: partition_table.pm:541
+#: partition_table.pm:679
#, c-format
msgid ""
-"You have a hole in your partition table but I can not use it.\n"
+"You have a hole in your partition table but I cannot use it.\n"
"The only solution is to move your primary partitions to have the hole next "
"to the extended partitions."
msgstr ""
-"Sie haben einen unbenutzten Bereich in Ihrer Partitionstabelle, \n"
-"den ich nicht ansprechen kann. Die einzige Lösung ist, dass Sie \n"
-"Ihre primären Partitionen so verschieben, dass der Bereich direkt \n"
-"neben der erweiterten Partition zu liegen kommt."
+"Sie haben eine Lücke in Ihrer Partitionstabelle, die aber nicht genutzt "
+"werden kann.\n"
+"Die einzige mögliche Lösung ist, Ihre primären Partitionen zu verschieben, "
+"um die Lücke neben die erweiterten Partitionen zu bewegen."
-#: partition_table/raw.pm:287
+#: partition_table/raw.pm:294
#, c-format
msgid ""
-"Something bad is happening on your drive. \n"
+"Something bad is happening on your hard disk drive. \n"
"A test to check the integrity of data has failed. \n"
"It means writing anything on the disk will end up with random, corrupted "
"data."
msgstr ""
-"Mit Ihrer Platte stimmt etwas nicht!\n"
-"Der vorgenommene Integritätstest schlug fehl.\n"
-"Das bedeutet, dass jeder Schreibvorgang auf der Platte zu zufälligen oder "
-"beschädigten Daten führen wird."
+"Ihre Festplatte weist Fehlfunktionen auf.\n"
+"Ein Test zur Überprüfung der Datenintegrität ist fehlgeschlagen.\n"
+"Dies bedeutet, dass der Versuch etwas auf die Festplatte zu schreiben mit "
+"zufällig beschädigten Daten enden wird."
-#: pkgs.pm:252 pkgs.pm:255 pkgs.pm:264
+#: pkgs.pm:268 pkgs.pm:271 pkgs.pm:284
#, c-format
msgid "Unused packages removal"
msgstr "Entfernung nicht benötigter Pakete"
-#: pkgs.pm:252
+#: pkgs.pm:268
#, c-format
msgid "Finding unused hardware packages..."
-msgstr "Überprüfe auf nicht benötigte Hardware Pakete..."
+msgstr "Auf nicht benötigte Hardware Pakete überprüfen ..."
-#: pkgs.pm:255
+#: pkgs.pm:271
#, c-format
msgid "Finding unused localization packages..."
-msgstr "Überprüfe auf nicht benötigte Lokalisierungspakete..."
+msgstr "Auf nicht benötigte Lokalisierungspakete überprüfen ..."
-#: pkgs.pm:265
+#: pkgs.pm:285
#, c-format
msgid ""
"We have detected that some packages are not needed for your system "
@@ -5546,70 +5454,70 @@ msgstr ""
"Es wurde festgestellt, dass einige Pakete für Ihre Systemkonfiguration nicht "
"benötigt werden."
-#: pkgs.pm:266
+#: pkgs.pm:286
#, c-format
msgid "We will remove the following packages, unless you choose otherwise:"
msgstr ""
"Die folgenden Pakete werden entfernt, es sei denn Sie entscheiden sich "
"anders:"
-#: pkgs.pm:269 pkgs.pm:270
+#: pkgs.pm:289 pkgs.pm:290
#, c-format
msgid "Unused hardware support"
msgstr "Nicht genutzte Hardware-Unterstützung"
-#: pkgs.pm:273 pkgs.pm:274
+#: pkgs.pm:293 pkgs.pm:294
#, c-format
msgid "Unused localization"
msgstr "Nicht genutzte Lokalisierungen"
-#: raid.pm:42
+#: raid.pm:59
#, c-format
-msgid "Can not add a partition to _formatted_ RAID %s"
-msgstr "Kann keine Partition zu dem _formatierten_ RAID %s hinzufügen"
+msgid "Cannot add a partition to _formatted_ RAID %s"
+msgstr "Es kann keine Partition auf dem _formatierten_ RAID %s angelegt werden"
-#: raid.pm:161
+#: raid.pm:201
#, c-format
msgid "Not enough partitions for RAID level %d\n"
msgstr "Nicht genügend Partitionen für RAID-Level %d\n"
-#: scanner.pm:96
+#: scanner.pm:95
#, c-format
msgid "Could not create directory /usr/share/sane/firmware!"
msgstr "Konnte Verzeichnis /usr/share/sane/firmware nicht erstellen!"
-#: scanner.pm:107
+#: scanner.pm:106
#, c-format
msgid "Could not create link /usr/share/sane/%s!"
msgstr "Konnte Verknüpfung /usr/share/sane/%s nicht erstellen!"
-#: scanner.pm:114
+#: scanner.pm:113
#, c-format
msgid "Could not copy firmware file %s to /usr/share/sane/firmware!"
msgstr ""
"Ich konnte die Firmware Datei %s nicht auf /usr/share/sane/firmware kopieren!"
-#: scanner.pm:121
+#: scanner.pm:120
#, c-format
msgid "Could not set permissions of firmware file %s!"
-msgstr "Konnte keine Zulassung setzen für die Firmware-Datei %s!"
+msgstr "Konnte keine Zugriffs-Erlaubnis für die Firmware-Datei %s setzen!"
-#: scanner.pm:200
+#: scanner.pm:197
#, c-format
msgid "Scannerdrake"
msgstr "ScannerDrake"
-#: scanner.pm:201
+#: scanner.pm:198
#, c-format
msgid "Could not install the packages needed to share your scanner(s)."
msgstr ""
"Konnte die notwendigen Programme zum Freigeben Ihrer Scanner nicht "
"installieren."
-#: scanner.pm:202
+#: scanner.pm:199
#, c-format
msgid "Your scanner(s) will not be available for non-root users."
-msgstr "Ihr(e) Scanner wird nur für Benutzer Root verfügbar sein"
+msgstr "Ihr(e) Scanner wird nur für den Benutzer Root verfügbar sein"
#: security/help.pm:11
#, c-format
@@ -5624,7 +5532,7 @@ msgstr "Broadcast-ICMP-Echo akzeptieren."
#: security/help.pm:15
#, c-format
msgid "Accept icmp echo."
-msgstr "Akzeptiere ICMP Echo."
+msgstr "ICMP Echo akzeptieren."
#: security/help.pm:17
#, c-format
@@ -5650,7 +5558,7 @@ msgstr ""
#: security/help.pm:27
#, c-format
msgid "Allow reboot by the console user."
-msgstr "Den Neustart des Rechners durch den Konsolen Benutzer erlauben."
+msgstr "Den Neustart des Rechners durch den Konsolen-Benutzer erlauben."
#: security/help.pm:29
#, c-format
@@ -5660,7 +5568,7 @@ msgstr "Remote-Root-Login erlauben."
#: security/help.pm:31
#, c-format
msgid "Allow direct root login."
-msgstr "Erlaube direkte Root Anmeldung."
+msgstr "Erlaube die direkte Root-Anmeldung."
#: security/help.pm:33
#, c-format
@@ -5698,7 +5606,7 @@ msgstr ""
"\n"
"- \"ALLE\" (alle Verbindungen sind erlaubt),\n"
"\n"
-"- \"LOKAL\" (mir Verbindungen vom lokalen Rechner),\n"
+"- \"LOKAL\" (nur Verbindungen vom lokalen Rechner),\n"
"\n"
"- \"KEINE\" (keine Verbindungen)."
@@ -5708,7 +5616,7 @@ msgid ""
"The argument specifies if clients are authorized to connect\n"
"to the X server from the network on the tcp port 6000 or not."
msgstr ""
-"Dieses Argument gibt an, ob Clients authorisiert sind, den X-Server\n"
+"Dieses Argument gibt an, ob Clients autorisiert sind, den X-Server\n"
"vom Netzwerk auf TCP-Port 6000 zu konnektieren oder nicht."
#. -PO: here "ALL", "Local" and "None" are values in a pull-down menu; translate them the same as they're
@@ -5724,19 +5632,19 @@ msgid ""
"\n"
"- none if set to \"None\".\n"
"\n"
-"To authorize the services you need, use /etc/hosts.allow (see hosts.allow"
-"(5))."
+"To authorize the services you need, use /etc/hosts.allow (see hosts."
+"allow(5))."
msgstr ""
-"Authorisieren:\n"
+"Autorisieren:\n"
"\n"
-"- Alle Dienste, die durch TCP-Wrapper (siehe die hosts.deny(5) Manpage) "
+"- Alle Dienste, die durch tcp_wrappers (siehe die hosts.deny(5) Manpage) "
"kontrolliert werden falls \"ALLE\" gesetzt wird,\n"
"\n"
"- nur lokale Dienste, wenn \"LOKAL\" gesetzt wird,\n"
"\n"
"- keine Dienste, wenn \"KEINE\" gesetzt wird.\n"
"\n"
-"Um einen Dienst zu authorisieren, benutzen Sie bitte die Datei /etc/hosts."
+"Um einen Dienst zu autorisieren, benutzen Sie bitte die Datei /etc/hosts."
"allow (siehe die hosts.allow(5) Manpage). "
#: security/help.pm:63
@@ -5757,7 +5665,7 @@ msgstr ""
"erstellt.\n"
"Die Datei /etc/security/msec/server wird von „chkconfig --add“ verwendet,\n"
"um zu entscheiden, ob ein Dienst hinzugefügt wird, wenn er in der Datei\n"
-"während der Installation des Programmes vorhanden ist."
+"während der Installation des Programms vorhanden ist."
#: security/help.pm:72
#, c-format
@@ -5805,12 +5713,12 @@ msgstr "Libsafe aktivieren, falls auf dem System gefunden"
#: security/help.pm:86
#, c-format
msgid "Enable the logging of IPv4 strange packets."
-msgstr "Aktiviere das Protokollieren von IPv4-fremden Paketen"
+msgstr "Aktiviere das Protokollieren IPv4-fremder Pakete"
#: security/help.pm:88
#, c-format
msgid "Enable msec hourly security check."
-msgstr "Aktiviere stündliche msec-Sicherheitskontrolle"
+msgstr "Aktiviere die stündliche msec-Sicherheitskontrolle."
#: security/help.pm:90
#, c-format
@@ -5818,8 +5726,8 @@ msgid ""
"Enable su only from members of the wheel group. If set to no, allows su from "
"any user."
msgstr ""
-"Aktiviere su nur für Mitglieder der Gruppe „wheel“ oder erlaube su für jeden "
-"Benutzer."
+"Aktiviere su nur für Mitglieder der Gruppe „wheel“. Wenn \"nein\" gewählt "
+"ist, wird su für jeden Benutzer erlaubt."
#: security/help.pm:92
#, c-format
@@ -5827,9 +5735,9 @@ msgid "Use password to authenticate users."
msgstr "Benutzer müssen sich mit einem Passwort authentifizieren."
#: security/help.pm:94
-#, fuzzy, c-format
-msgid "Activate ethernet cards promiscuity check."
-msgstr "Aktiviere/Deaktiviere die Vermischtheitsprüfung für Netzwerkkarten."
+#, c-format
+msgid "Activate Ethernet cards promiscuity check."
+msgstr "Offenheits-Überprüfung der aktiven Netzwerkkarten"
#: security/help.pm:96
#, c-format
@@ -5852,7 +5760,8 @@ msgstr ""
#, c-format
msgid "Set password aging to \"max\" days and delay to change to \"inactive\"."
msgstr ""
-"Setze Passwort-Alterung auf „maximal“ Tage um die Alterung abzuschalten."
+"Passwort-Alterung auf „maximale“ Anzahl an Tagen setzen und den Wechsel auf "
+"„Inaktivität“ hinauszögern."
#: security/help.pm:104
#, c-format
@@ -5871,9 +5780,9 @@ msgstr ""
"Großbuchstaben."
#: security/help.pm:108
-#, fuzzy, c-format
+#, c-format
msgid "Set the root's file mode creation mask."
-msgstr "Setzen der Root Umask"
+msgstr "Benutze die Maske von root zum Erstellen von Dateien. "
#: security/help.pm:109
#, c-format
@@ -5891,13 +5800,13 @@ msgid ""
"\n"
"- for users with the 0 id other than root."
msgstr ""
-"Falls „Ja“, kontrolliere:\n"
+"Falls auf „Ja“ gestellt, kontrolliert auf:\n"
"\n"
"- leere Passwörter,\n"
"\n"
-"- fehlende Passwörter in „/etc/shadow“,\n"
+"- keine Passwörter in „/etc/shadow“,\n"
"\n"
-"- Kennzeichen außer „root“ mit ID 0."
+"- Benutzer mit einer ID von 0 außer „root“."
#: security/help.pm:117
#, c-format
@@ -5910,8 +5819,8 @@ msgstr ""
#, c-format
msgid "if set to yes, check if the network devices are in promiscuous mode."
msgstr ""
-"Wenn auf „Ja“ gezetzt, überprüfe ob die Netzwerk Geräte im gemischten Modus "
-"sind"
+"Wenn auf „Ja“ gesetzt, überprüfe ob die Netzwerk Geräte im gemischten Modus "
+"sind."
#: security/help.pm:119
#, c-format
@@ -5932,13 +5841,13 @@ msgstr "Wenn auf „Ja“ gesetzt, prüfe auf leere Passwörter in /etc/shadow."
#, c-format
msgid "if set to yes, verify checksum of the suid/sgid files."
msgstr ""
-"Wenn auf „Ja“ gesetzt, kontrolliere die Prüfsumme der suid/sgid Dateien"
+"Wenn auf „Ja“ gesetzt, kontrolliere die Prüfsumme der suid/sgid-Dateien"
#: security/help.pm:123
#, c-format
msgid "if set to yes, check additions/removals of suid root files."
msgstr ""
-"Wenn auf „Ja“ gesetzt, Suche von Veränderungen bei „suid root“ Dateien."
+"Wenn auf „Ja“ gesetzt, Suche nach Veränderungen bei „suid root“-Dateien."
#: security/help.pm:124
#, c-format
@@ -5955,14 +5864,15 @@ msgstr ""
#: security/help.pm:126
#, c-format
msgid "if set to yes, run chkrootkit checks."
-msgstr "Wenn auf „Ja“ gesetzt, starte chkrootkit Überprüfung"
+msgstr "Wenn auf „Ja“ gesetzt, starte chkrootkit-Überprüfung"
#: security/help.pm:127
#, c-format
msgid ""
"if set, send the mail report to this email address else send it to root."
msgstr ""
-"Wenn ausgefüllt, wird E-Mail an diese Adresse geschickt, sonst an „root“."
+"Wenn ausgefüllt, wird eine E-Mail an diese Adresse geschickt, sonst an "
+"„root“."
#: security/help.pm:128
#, c-format
@@ -5972,7 +5882,7 @@ msgstr "Falls markiert, Ergebnis per E-Mail zustellen."
#: security/help.pm:129
#, c-format
msgid "Do not send mails if there's nothing to warn about"
-msgstr "Sende keine Emails, wenn vor nichts zu warnen ist."
+msgstr "Sende keine E-Mails, wenn vor nichts zu warnen ist."
#: security/help.pm:130
#, c-format
@@ -5982,7 +5892,7 @@ msgstr "Prüfe die RPM-Datenbank, wenn „Ja“ gesetzt ist."
#: security/help.pm:131
#, c-format
msgid "if set to yes, report check result to syslog."
-msgstr "Wenn auf „Ja“ gesetzt, werden Prüfergebnisse an syslog schicken"
+msgstr "Wenn auf „Ja“ gesetzt, werden Prüfergebnisse an syslog geschickt"
#: security/help.pm:132
#, c-format
@@ -5999,7 +5909,7 @@ msgstr ""
#: security/help.pm:136
#, c-format
msgid "Set the shell timeout. A value of zero means no timeout."
-msgstr "Setzen des Shell-Timeouts. Der Wert Null bedeutet kein Timeout."
+msgstr "Setzen des Shell-Timeouts. Der Wert Null bedeutet keinen Timeout."
#: security/help.pm:136
#, c-format
@@ -6007,14 +5917,14 @@ msgid "Timeout unit is second"
msgstr "Auszeit-Dauer in Sekunden"
#: security/help.pm:138
-#, fuzzy, c-format
+#, c-format
msgid "Set the user's file mode creation mask."
-msgstr "Setzen der Benutzerzugriffsmaske."
+msgstr "Verwende die Benutzer Maske zur Datei-Erstellung"
#: security/l10n.pm:11
#, c-format
msgid "Accept bogus IPv4 error messages"
-msgstr "Akzeptiere gefälschte IPv4 Fehlermeldungen"
+msgstr "Akzeptiere gefälschte IPv4-Fehlermeldungen"
#: security/l10n.pm:12
#, c-format
@@ -6024,7 +5934,7 @@ msgstr "Broadcast-ICMP-Echo akzeptieren"
#: security/l10n.pm:13
#, c-format
msgid "Accept icmp echo"
-msgstr "Akzeptiere ICMP Echo"
+msgstr "ICMP Echo akzeptieren"
#: security/l10n.pm:15
#, c-format
@@ -6034,7 +5944,7 @@ msgstr "/etc/issue* existiert"
#: security/l10n.pm:16
#, c-format
msgid "Reboot by the console user"
-msgstr "Neustart durch den Konsolen Benutzer"
+msgstr "Neustart durch den Konsolen-Benutzer"
#: security/l10n.pm:17
#, c-format
@@ -6044,7 +5954,7 @@ msgstr "Remote-Root-Login erlauben"
#: security/l10n.pm:18
#, c-format
msgid "Direct root login"
-msgstr "Direkte Root Anmeldung"
+msgstr "Direkte Root-Anmeldung"
#: security/l10n.pm:19
#, c-format
@@ -6054,22 +5964,23 @@ msgstr "Benutzer in den Display-Managern auflisten (kdm und gdm)"
#: security/l10n.pm:20
#, c-format
msgid "Export display when passing from root to the other users"
-msgstr "Anzeige exportieren wenn von root zu anderen Benutzern gewechselt wird"
+msgstr ""
+"Anzeige exportieren, wenn von root zu anderen Benutzern gewechselt wird"
#: security/l10n.pm:21
#, c-format
msgid "Allow X Window connections"
-msgstr "X Window Verbindungen erlauben"
+msgstr "X-Window-Verbindungen erlauben"
#: security/l10n.pm:22
#, c-format
msgid "Authorize TCP connections to X Window"
-msgstr "Erlaube TCP Verbindungen zum X Windows System"
+msgstr "Erlaube TCP-Verbindungen zum X-Window-System"
#: security/l10n.pm:23
#, c-format
msgid "Authorize all services controlled by tcp_wrappers"
-msgstr "Autorisiere all Dienste, die von TCP-Wrappern kontolliert werden"
+msgstr "Autorisiere alle Dienste, die von tcp_wrappers kontolliert werden"
#: security/l10n.pm:24
#, c-format
@@ -6089,12 +6000,12 @@ msgstr "Syslog berichtet auf Konsole 12"
#: security/l10n.pm:27
#, c-format
msgid "Name resolution spoofing protection"
-msgstr "Aktivier Schutz gegen Namenauflösung"
+msgstr "Aktiviere Schutz gegen Namenauflösung"
#: security/l10n.pm:28
#, c-format
msgid "Enable IP spoofing protection"
-msgstr "Aktiviere Schutz gegen IP Spoofing"
+msgstr "Aktiviere Schutz gegen IP-Spoofing"
#: security/l10n.pm:29
#, c-format
@@ -6104,12 +6015,12 @@ msgstr "Libsafe aktivieren, falls auf dem System gefunden"
#: security/l10n.pm:30
#, c-format
msgid "Enable the logging of IPv4 strange packets"
-msgstr "Aktiviere das Protokollieren von seltsamen IPv4 Packeten"
+msgstr "Aktiviere das Protokollieren von seltsamen IPv4 Paketen"
#: security/l10n.pm:31
#, c-format
msgid "Enable msec hourly security check"
-msgstr "Aktiviere msec stündlichen Sicherheits Check"
+msgstr "Aktiviere die stündlichen Sicherheits-Checks von msec"
#: security/l10n.pm:32
#, c-format
@@ -6119,12 +6030,12 @@ msgstr "Erlaube su nur für Mitglieder der Wheel-Gruppe"
#: security/l10n.pm:33
#, c-format
msgid "Use password to authenticate users"
-msgstr "Benutzer müssen sich mit Passwort authentifizieren."
+msgstr "Benutzer müssen sich mit Passwort anmelden."
#: security/l10n.pm:34
#, c-format
msgid "Ethernet cards promiscuity check"
-msgstr "Ethernet-Karten Offenheits Überprüfung"
+msgstr "Netzwerk-Karten Offenheits-Überprüfung"
#: security/l10n.pm:35
#, c-format
@@ -6134,22 +6045,22 @@ msgstr "Täglicher Sicherheitscheck"
#: security/l10n.pm:36
#, c-format
msgid "Sulogin(8) in single user level"
-msgstr "Sulogin(8) im Einzelplatznutzer Ebene"
+msgstr "Sulogin(8) im Einzelnutzer Level"
#: security/l10n.pm:37
#, c-format
msgid "No password aging for"
-msgstr "Kein Passwort Ablaufdatum für"
+msgstr "Kein Passwort-Ablaufdatum für"
#: security/l10n.pm:38
#, c-format
msgid "Set password expiration and account inactivation delays"
-msgstr "Setze Passwort Ablauf und Nutzerkonto Abschalt Verzögerung"
+msgstr "Setze Passwort-Ablauf und Nutzerkonto-Abschalt-Verzögerung"
#: security/l10n.pm:39
#, c-format
msgid "Password history length"
-msgstr "Passwort Verlaufslänge"
+msgstr "Passwort-Verlaufslänge"
#: security/l10n.pm:40
#, c-format
@@ -6159,12 +6070,12 @@ msgstr "Minimale Passwortlänge und die Anzahl der Ziffern und Buchstaben"
#: security/l10n.pm:41
#, c-format
msgid "Root umask"
-msgstr "Root umask"
+msgstr "Root-umask"
#: security/l10n.pm:42
#, c-format
msgid "Shell history size"
-msgstr "Anzal gespeicherter Kommandozeilenaufrufe"
+msgstr "Anzahl gespeicherter Kommandozeilenaufrufe"
#: security/l10n.pm:43
#, c-format
@@ -6174,7 +6085,7 @@ msgstr "Zeitüberschreitung der Shell"
#: security/l10n.pm:44
#, c-format
msgid "User umask"
-msgstr "User umask"
+msgstr "User-umask"
#: security/l10n.pm:45
#, c-format
@@ -6195,7 +6106,7 @@ msgstr ""
#: security/l10n.pm:48
#, c-format
msgid "Check if the network devices are in promiscuous mode"
-msgstr "Überprüfe, ob sich die Netwerkgeräte in einem offenen Modus befinden"
+msgstr "Überprüfe, ob sich die Netzwerkgeräte im gemischten Modus befinden"
#: security/l10n.pm:49
#, c-format
@@ -6220,7 +6131,7 @@ msgstr "Verifiziere die Prüfsumme der „suid/sgid“ Dateien"
#: security/l10n.pm:53
#, c-format
msgid "Check additions/removals of suid root files"
-msgstr "Überprüfe das Hinzufügen/Entfernen von „suid“ Dateien"
+msgstr "Überprüfe das Hinzufügen/Entfernen von suid-Dateien"
#: security/l10n.pm:54
#, c-format
@@ -6230,12 +6141,12 @@ msgstr "Dateien ohne Eigentümer melden"
#: security/l10n.pm:55
#, c-format
msgid "Check files/directories writable by everybody"
-msgstr "Überprüfe Dateien/Verzeichnisse die schreibbar für alle sind"
+msgstr "Überprüfe Dateien/Verzeichnisse die für alle schreibbar sind"
#: security/l10n.pm:56
#, c-format
msgid "Run chkrootkit checks"
-msgstr "Starte chkrootkit Überprüfung"
+msgstr "Starte chkrootkit-Überprüfung"
#: security/l10n.pm:57
#, c-format
@@ -6246,7 +6157,7 @@ msgstr "Keine leeren E-Mail-Berichte senden"
#, c-format
msgid "If set, send the mail report to this email address else send it to root"
msgstr ""
-"Wenn ausgefüllt, wird E-Mail an diese Adresse geschickt, sonst an „root“."
+"Wenn ausgefüllt, werden E-Mails an diese Adresse geschickt, sonst an „root“."
#: security/l10n.pm:59
#, c-format
@@ -6256,17 +6167,17 @@ msgstr "Ergebnis per E-Mail bekanntgeben"
#: security/l10n.pm:60
#, c-format
msgid "Run some checks against the rpm database"
-msgstr "Überprüfe die rpm Datenbank"
+msgstr "Überprüfe die rpm-Datenbank"
#: security/l10n.pm:61
#, c-format
msgid "Report check result to syslog"
-msgstr "Ergebnis in SysLog speichern"
+msgstr "Ergebnisse in SysLog speichern"
#: security/l10n.pm:62
#, c-format
msgid "Reports check result to tty"
-msgstr "Sendet Prüfbericht an tty"
+msgstr "Sendet Prüfbericht an die tty"
#: security/level.pm:10
#, c-format
@@ -6279,11 +6190,11 @@ msgid "Standard"
msgstr "Standard"
#: security/level.pm:12
-#, fuzzy, c-format
+#, c-format
msgid "Secure"
-msgstr "Sicherheit"
+msgstr "Sicher"
-#: security/level.pm:40
+#: security/level.pm:52
#, c-format
msgid ""
"This level is to be used with care, as it disables all additional security\n"
@@ -6291,21 +6202,21 @@ msgid ""
"system security\n"
"on your own."
msgstr ""
-"Diese Stufe ist mit Sorgfalt zu benutzen, da alle zusätzlichen, von msec\n"
+"Diese Ebene ist mit Sorgfalt zu benutzen, da alle zusätzlichen, von msec\n"
"bereitgestellten Sicherheitseinstellungen deaktiviert sind. Nutzen Sie sie "
"nur,\n"
"wenn Sie die Systemsicherheit vollständig manuell sicherstellen wollen."
-#: security/level.pm:43
+#: security/level.pm:55
#, c-format
msgid ""
"This is the standard security recommended for a computer that will be used "
"to connect to the Internet as a client."
msgstr ""
-"Das ist die Standard-Sicherheitsebene für Rechner, mit Internetzugang \n"
-"als Client."
+"Das ist die für einen Rechner als Client mit Verbindung zum Internet "
+"empfohlene Standardsicherheit."
-#: security/level.pm:44
+#: security/level.pm:56
#, c-format
msgid ""
"With this security level, the use of this system as a server becomes "
@@ -6323,53 +6234,53 @@ msgstr ""
"Client ins Internet gehen, besser eine niedrigere Sicherheitsebene \n"
"verwenden sollte."
-#: security/level.pm:51
-#, c-format
-msgid "Security"
-msgstr "Sicherheit"
-
-#: security/level.pm:51
+#: security/level.pm:63
#, c-format
msgid "DrakSec Basic Options"
msgstr "DrakSec-Grundeinstellungen"
-#: security/level.pm:54
+#: security/level.pm:66
#, c-format
msgid "Please choose the desired security level"
msgstr "Wählen Sie die gewünschte Sicherheitsebene"
#. -PO: this string is used to properly format "<security level>: <level description>"
-#: security/level.pm:58
+#: security/level.pm:70
#, c-format
msgid "%s: %s"
msgstr "%s: %s"
-#: security/level.pm:61
+#: security/level.pm:73
#, c-format
msgid "Security Administrator:"
-msgstr "Sicherheitsadministrator (Benutzername oder E-Mail):"
+msgstr "Sicherheitsadministrator:"
-#: security/level.pm:62
+#: security/level.pm:74
#, c-format
msgid "Login or email:"
-msgstr "Loginname oder Emailadresse:"
+msgstr "Loginname oder E-Mailadresse:"
-#: services.pm:19
+#: services.pm:31
+#, c-format
+msgid "Listen and dispatch ACPI events from the kernel"
+msgstr "Empfangen und Weiterleiten von ACPI-Events des Kernels. "
+
+#: services.pm:32
#, c-format
msgid "Launch the ALSA (Advanced Linux Sound Architecture) sound system"
-msgstr "Startet das ALSA (Advanced Linux Sound Architecture) Sound-System"
+msgstr "Startet das ALSA (Advanced Linux Sound Architecture) Soundsystem"
-#: services.pm:20
+#: services.pm:33
#, c-format
msgid "Anacron is a periodic command scheduler."
msgstr ""
"Mit dem Dienst anacron können cron-Prozesse auch zu anderen als den \n"
-"vorgegebenen Zeiten gestartet werden. Dies ist vor Allem dann \n"
+"vorgegebenen Zeiten gestartet werden. Dies ist vor allem dann \n"
"sinnvoll, wenn Ihr Rechner nicht rund um die Uhr läuft, da sonst \n"
"Prozesse, die etwa zwischen Mitternacht und 6:00 Uhr gestartet \n"
"werden sollten, nie ausgeführt würden."
-#: services.pm:21
+#: services.pm:34
#, c-format
msgid ""
"apmd is used for monitoring battery status and logging it via syslog.\n"
@@ -6380,7 +6291,7 @@ msgstr ""
"Hilfe kann man den Computer auch rechtzeitig herunterfahren lassen, \n"
"bevor die Batterien leer sind."
-#: services.pm:23
+#: services.pm:36
#, c-format
msgid ""
"Runs commands scheduled by the at command at the time specified when\n"
@@ -6390,7 +6301,22 @@ msgstr ""
"dafür vorgesehene Zeitpunkt erreicht ist. Lässt die Systemauslastung \n"
"es zu, werden sog. Batch-Anwendungen gestartet."
-#: services.pm:25
+#: services.pm:38
+#, c-format
+msgid "Avahi is a ZeroConf daemon which implements an mDNS stack"
+msgstr "Avahi ist ein ZeroConf Dämon, der einen mDNS-Stack implementiert. "
+
+#: services.pm:39
+#, c-format
+msgid "An NTP client/server"
+msgstr "Ein NTP Klient/Server"
+
+#: services.pm:40
+#, c-format
+msgid "Set CPU frequency settings"
+msgstr "Richte die CPU-Frequenz-Einstellungen ein"
+
+#: services.pm:41
#, c-format
msgid ""
"cron is a standard UNIX program that runs user-specified programs\n"
@@ -6403,7 +6329,7 @@ msgstr ""
"Der Dienst vixie cron erweitert dieses Konzept um weitere Funktionen, etwa \n"
"ein verbessertes Sicherheitskonzept und einfachere Konfiguration."
-#: services.pm:28
+#: services.pm:44
#, c-format
msgid ""
"Common UNIX Printing System (CUPS) is an advanced printer spooling system"
@@ -6411,12 +6337,12 @@ msgstr ""
"Das Common UNIX Printing System (CUPS) ist ein fortgeschrittenes Drucker-"
"Warteschlangensystem"
-#: services.pm:29
+#: services.pm:45
#, c-format
msgid "Launches the graphical display manager"
-msgstr "Startet des graphischen Display Manager"
+msgstr "Startet den graphischen Display-Manager"
-#: services.pm:30
+#: services.pm:46
#, c-format
msgid ""
"FAM is a file monitoring daemon. It is used to get reports when files "
@@ -6427,7 +6353,28 @@ msgstr ""
"wenn sich Dateien ändern.\n"
"FAM wird von GNOME und KDE genutzt."
-#: services.pm:32
+#: services.pm:48
+#, c-format
+msgid ""
+"G15Daemon allows users access to all extra keys by decoding them and \n"
+"pushing them back into the kernel via the linux UINPUT driver. This driver "
+"must be loaded \n"
+"before g15daemon can be used for keyboard access. The G15 LCD is also "
+"supported. By default, \n"
+"with no other clients active, g15daemon will display a clock. Client "
+"applications and \n"
+"scripts can access the LCD via a simple API."
+msgstr ""
+"Der G15Daemon erlaubt allen Benutzern Zugriff auf die Zusatztasten, indem er "
+"sie dekodiert und über den Linux UINPUT Treiber zurück an den Kernel "
+"schickt. Dieser Treiber muss geladen sein, \n"
+"bevor g15daemon für Tastatur-Zugriffe benutzt werden kann. Der G15 LCD wird "
+"ebenfalls unterstützt. Standardmäßig,\n"
+"wenn keine weiteren Clients aktiv sind, wird g15daemon eine Uhr anzeigen. "
+"Client-Anwendungen und\n"
+"Skripte können den LCD mit einer einfachen API ansprechen."
+
+#: services.pm:53
#, c-format
msgid ""
"GPM adds mouse support to text-based Linux applications such the\n"
@@ -6436,33 +6383,33 @@ msgid ""
"and includes support for pop-up menus on the console."
msgstr ""
"Der GPM-Dienst stellt Ihnen eine Mausunterstützung in textbasierten Linux-\n"
-"Programmen, wie dem Midnight Commander, zur Verfügung. Es erlaubt\n"
+"Programmen, wie dem Midnight Commander, zur Verfügung. Er erlaubt\n"
"auch mausbasierte Ausschneiden-und-Einfügen-Operationen auf der\n"
"Konsole und unterstützt Pop-Up-Menüs auf der Konsole."
-#: services.pm:35
+#: services.pm:56
#, c-format
msgid "HAL is a daemon that collects and maintains information about hardware"
msgstr "HAL ist ein Dienst, der Hardware-Informationen sammelt und verwaltet"
-#: services.pm:36
+#: services.pm:57
#, c-format
msgid ""
"HardDrake runs a hardware probe, and optionally configures\n"
"new/changed hardware."
msgstr ""
-"HardDrake führt Hardwaretests durch, und konfiguriert (falls nötig) \n"
+"HardDrake führt eine Hardwareuntersuchung durch, und konfiguriert optional\n"
"neue/geänderte Hardware."
-#: services.pm:38
+#: services.pm:59
#, c-format
msgid ""
"Apache is a World Wide Web server. It is used to serve HTML files and CGI."
msgstr ""
-"Apache ist ein World-Wide-Web-Server. Mit seiner Hilfe können Sie \n"
-"HTML-Dateien über HTTP publizieren. Der Server ist CGI-fähig."
+"Apache ist ein World-Wide-Web-Server. Er wird dazu verwendet um HTML Dateien "
+"zu publizieren und unterstützt CGI."
-#: services.pm:39
+#: services.pm:60
#, c-format
msgid ""
"The internet superserver daemon (commonly called inetd) starts a\n"
@@ -6479,16 +6426,25 @@ msgstr ""
"Schalten Sie diesen Dienst ab, können Sie auf keine der von inetd \n"
"verwalteten Dienste mehr zugreifen."
-#: services.pm:43
+#: services.pm:64
+#, c-format
+msgid "Automates a packet filtering firewall with ip6tables"
+msgstr "Automatisiert eine Paketfilter-Firewall mit ip6tables"
+
+#: services.pm:65
+#, c-format
+msgid "Automates a packet filtering firewall with iptables"
+msgstr "Automatisiert eine Paketfilter-Firewall mit iptables"
+
+#: services.pm:66
#, c-format
msgid ""
-"Launch packet filtering for Linux kernel 2.2 series, to set\n"
-"up a firewall to protect your machine from network attacks."
+"Evenly distributes IRQ load across multiple CPUs for enhanced performance"
msgstr ""
-"Startet Paketfilterung für Linux 2.2-Kernel, um Ihren Rechner \n"
-"durch eine Firewall vor Angriffen aus dem Netz zu schützen."
+"Verteilt die IRQ-Auslastung gleichmäßig auf die CPUs, um die Leistung zu "
+"steigern"
-#: services.pm:45
+#: services.pm:67
#, c-format
msgid ""
"This package loads the selected keyboard map as set in\n"
@@ -6497,11 +6453,10 @@ msgid ""
msgstr ""
"Dieser Dienst lädt die Tastaturbelegung, die in der Datei \n"
"„/etc/sysconfig/keyboard“ angegeben ist. Mittels „kbdconfig“ \n"
-"können Sie diese Einstellung ändern. Schalten Sie diesen Dienst ab, \n"
-"müssen Sie ab dem nächsten Systemstart mit der amerikanischen \n"
-"Tastatur vorlieb nehmen."
+"können Sie diese Einstellung auswählen. \n"
+"Sie sollten dies für die meisten Rechner aktiviert lassen. "
-#: services.pm:48
+#: services.pm:70
#, c-format
msgid ""
"Automatic regeneration of kernel header in /boot for\n"
@@ -6510,14 +6465,20 @@ msgstr ""
"Automatische Neuerstellung der Kernel-Header in /boot für\n"
"/usr/include/linux/{autoconf,version}.h"
-#: services.pm:50
+#: services.pm:72
#, c-format
msgid "Automatic detection and configuration of hardware at boot."
msgstr ""
"Automatische Erkennung und Konfiguration neuer Hardware während des \n"
"Systemstarts."
-#: services.pm:51
+#: services.pm:73
+#, c-format
+msgid "Tweaks system behavior to extend battery life"
+msgstr ""
+"Optimiert das Verhalten des Systems, um die Batterie-Lebensdauer zu erhöhen"
+
+#: services.pm:74
#, c-format
msgid ""
"Linuxconf will sometimes arrange to perform various tasks\n"
@@ -6526,28 +6487,35 @@ msgstr ""
"Linuxconf versucht beim Systemstart einige Verwaltungsaufgaben \n"
"auszuführen."
-#: services.pm:53
+#: services.pm:76
#, c-format
msgid ""
"lpd is the print daemon required for lpr to work properly. It is\n"
"basically a server that arbitrates print jobs to printer(s)."
msgstr ""
-"Der Dienst lpd ist der Drucker-Server Ihres Rechners. Wenn Sie \n"
-"diesen Dienst abschalten werden Druckaufträge nicht mehr abgearbeitet.\n"
-"Hauptaufgabe von lpd ist es, Druckaufträge an den jeweiligen \n"
-"zuständigen Drucker (dieser kann auch einen anderen Rechner hängen) \n"
-"zu senden."
+"Der Dienst lpd ist der Drucker-Server. Dieser wird von lpr benötigt. Er ist\n"
+"ein Server, der Ihre Druckaufträge an Ihre/n Drucker weiterleitet. "
-#: services.pm:55
+#: services.pm:78
#, c-format
msgid ""
"Linux Virtual Server, used to build a high-performance and highly\n"
"available server."
msgstr ""
-"Der Linux Virtual Server kann verwendet werden, um ein \n"
+"Der Linux Virtual Server kann verwendet werden, um einen\n"
"hochperformanten Hochverfügbarkeitsserver aufzusetzen."
-#: services.pm:57
+#: services.pm:80
+#, c-format
+msgid "Monitors the network (Interactive Firewall and wireless"
+msgstr "Überwacht das Netzwerk (Interaktive Firewall und Wireless)"
+
+#: services.pm:81
+#, c-format
+msgid "Software RAID monitoring and management"
+msgstr "Software-RAID-Überwachung und -Verwaltung"
+
+#: services.pm:82
#, c-format
msgid ""
"DBUS is a daemon which broadcasts notifications of system events and other "
@@ -6556,7 +6524,12 @@ msgstr ""
"DBUS ist ein Dienst, der Meldungen über System-Ereignisse und andere "
"Nachrichten überträgt"
-#: services.pm:58
+#: services.pm:83
+#, c-format
+msgid "Enables MSEC security policy on system startup"
+msgstr "Aktiviert die MSEC-Sicherheitsregeln beim Systemstart"
+
+#: services.pm:84
#, c-format
msgid ""
"named (BIND) is a Domain Name Server (DNS) that is used to resolve host "
@@ -6564,31 +6537,43 @@ msgid ""
msgstr ""
"Der Dienst named (BIND) stellt ihnen einen Server zur Verfügung, \n"
"mit dessen Hilfe Rechnernamen in IP-Adressen umgesetzt werden. \n"
-"Ein solcher Dienst wird „Domain Name Server“ (DNS) genannt. \n"
-"Falls Sie nur einen Rechner besitzen, mit dem Sie per Modem/ISDN ins \n"
-"Netz gehen, benötigen Sie diesen Dienst nicht."
+"Ein solcher Dienst wird „Domain Name Server“ (DNS) genannt."
-#: services.pm:59
+#: services.pm:85
+#, c-format
+msgid "Initializes network console logging"
+msgstr "Initialisiert Netzwerk-Konsolen-Erfassung"
+
+#: services.pm:86
#, c-format
msgid ""
"Mounts and unmounts all Network File System (NFS), SMB (Lan\n"
"Manager/Windows), and NCP (NetWare) mount points."
msgstr ""
"Dieser Dienst ist verantwortlich dafür, dass alle Netzwerk-Dateisysteme \n"
-"(NFS) beim Systemstart eingehängt werden, etwa SMB (Lan Manager/Windows) \n"
+"(NFS) beim Systemstart eingehängt werden, etwa SMB (LAN Manager/Windows) \n"
"und NCP (NetWare)."
-#: services.pm:61
+#: services.pm:88
#, c-format
msgid ""
"Activates/Deactivates all network interfaces configured to start\n"
"at boot time."
msgstr ""
-"Dieser Dienst aktiviert Netzwerkgeräte (etwa Netzwerkkarten), die \n"
-"so konfiguriert wurden, dass sie ab dem Systemstart zur Verfügung \n"
-"stehen sollen."
+"Aktiviert/Deaktiviert alle Netzwerkgeräte, die so konfiguriert wurden,\n"
+"dass sie bei Systemstart zur Verfügung stehen."
+
+#: services.pm:90
+#, c-format
+msgid "Requires network to be up if enabled"
+msgstr "Das Netzwerk muss laufen, wenn dies aktiviert ist"
-#: services.pm:63
+#: services.pm:91
+#, c-format
+msgid "Wait for the hotplugged network to be up"
+msgstr "Warte darauf, dass das Netzwerk verfügbar ist. "
+
+#: services.pm:92
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP networks.\n"
@@ -6596,12 +6581,11 @@ msgid ""
"/etc/exports file."
msgstr ""
"NFS ist ein geläufiges Protokoll in TCP/IP Netzwerken um Dateien \n"
-"durch verschiedene Rechner gemeinsam nutzen zu können\n"
-" (File sharing). \n"
+"durch verschiedene Rechner gemeinsam nutzen zu können (File sharing). \n"
"Dieser Dienst stellt Ihnen einen solchen Server zur Verfügung. \n"
"Konfiguriert wird er in der Datei „/etc/exports“."
-#: services.pm:66
+#: services.pm:95
#, c-format
msgid ""
"NFS is a popular protocol for file sharing across TCP/IP\n"
@@ -6613,13 +6597,13 @@ msgstr ""
"Verfügung, damit eine Datei nicht durch mehrere Personen \n"
"gleichzeitig verändert werden kann."
-#: services.pm:68
+#: services.pm:97
#, c-format
msgid "Synchronizes system time using the Network Time Protocol (NTP)"
msgstr ""
"Synchronisiert die Systemzeit unter Benutzung des Network Time Protocol (NTP)"
-#: services.pm:69
+#: services.pm:98
#, c-format
msgid ""
"Automatically switch on numlock key locker under console\n"
@@ -6628,12 +6612,17 @@ msgstr ""
"Schaltet beim Betriebssystemstart automatisch die „Num“-Taste für \n"
"die virtuellen Konsolen und Xorg ein."
-#: services.pm:71
+#: services.pm:100
#, c-format
msgid "Support the OKI 4w and compatible winprinters."
-msgstr "Unterstützung für den OKI 4w und kompatible WinDrucker."
+msgstr "Unterstützung für den OKI 4w und kompatible Win-Drucker."
-#: services.pm:72
+#: services.pm:101
+#, c-format
+msgid "Checks if a partition is close to full up"
+msgstr "Überprüft, ob eine Partition beinahe voll ist"
+
+#: services.pm:102
#, c-format
msgid ""
"PCMCIA support is usually to support things like ethernet and\n"
@@ -6644,9 +6633,9 @@ msgstr ""
"PCMCIA wird normalerweise in Laptops verwendet, um Ethernet-Karten \n"
"oder Modems verwenden zu können. Dieser Dienst wird nur gestartet, \n"
"wenn Sie ihn vorher konfiguriert haben. Daher schadet es nicht, \n"
-"wenn Sie ihn auf Rechnern aktivieren, auf denen er nutzlos ist."
+"wenn Sie ihn auf Rechnern aktivieren, auf denen er nicht benötigt wird."
-#: services.pm:75
+#: services.pm:105
#, c-format
msgid ""
"The portmapper manages RPC connections, which are used by\n"
@@ -6659,7 +6648,12 @@ msgstr ""
"solche Server (RPC-basierte) beherbergen, muss dieser Dienst \n"
"aktiviert sein."
-#: services.pm:78
+#: services.pm:108
+#, c-format
+msgid "Reserves some TCP ports"
+msgstr "Reserviert einige TCP-Ports."
+
+#: services.pm:109
#, c-format
msgid ""
"Postfix is a Mail Transport Agent, which is the program that moves mail from "
@@ -6668,7 +6662,7 @@ msgstr ""
"Postfix ist ein E-Mail-Transport-Dienst. Mit seiner Hilfe werden \n"
"E-Mails zwischen verschiedenen Rechnern ausgetauscht."
-#: services.pm:79
+#: services.pm:110
#, c-format
msgid ""
"Saves and restores system entropy pool for higher quality random\n"
@@ -6679,17 +6673,21 @@ msgstr ""
"wieder zu restaurieren. Die Qualität erzeugter Zufallszahlen \n"
"wird dadurch verbessert."
-#: services.pm:81
+#: services.pm:112
#, c-format
msgid ""
-"Assign raw devices to block devices (such as hard drive\n"
+"Assign raw devices to block devices (such as hard disk drive\n"
"partitions), for the use of applications such as Oracle or DVD players"
msgstr ""
-"Weist Roh-Geräten ein blockorientiertes Gerät (etwa eine\n"
-"Festplattenpartition) zu. Dies wird für Anwendungen wie\n"
-"etwa ORACLE-Datenbankem oder DVD-Playern benötigt"
+"Weise RAW-Geräte den Block-Geräten (wie z.B. Festplatten-Partitionen),\n"
+"für die Verwendung von Anwendungen, wie Oracle oder DVD-Player, zu."
-#: services.pm:83
+#: services.pm:114
+#, c-format
+msgid "Nameserver information manager"
+msgstr "Nameserver-Informationsverwaltung"
+
+#: services.pm:115
#, c-format
msgid ""
"The routed daemon allows for automatic IP router table updated via\n"
@@ -6701,26 +6699,34 @@ msgstr ""
"Netzwerken verwendet, jedoch wird für komplexere Netzwerke ein \n"
"anderer Dienst benötigt."
-#: services.pm:86
+#: services.pm:118
#, c-format
msgid ""
"The rstat protocol allows users on a network to retrieve\n"
"performance metrics for any machine on that network."
msgstr ""
-"Der Dienst rstat ermöglicht es Anwendern anderer Rechner des \n"
-"Netzwerks Preformance-Daten dieses Rechners zu erhalten."
+"Der rstat Dienst erlaubt es Anwendern in einem Netzwerk, Performance-Daten\n"
+"von jedem anderen Rechner in diesem Netzwerk zu erhalten."
-#: services.pm:88
+#: services.pm:120
+#, c-format
+msgid ""
+"Syslog is the facility by which many daemons use to log messages to various "
+"system log files. It is a good idea to always run rsyslog."
+msgstr ""
+"Mittels Syslog sichern zahlreiche Dienste Verlaufsprotokolle in vorgesehene "
+"Dateien. Es ist sinnvoll Syslog immer aktiviert zu haben."
+
+#: services.pm:121
#, c-format
msgid ""
"The rusers protocol allows users on a network to identify who is\n"
"logged in on other responding machines."
msgstr ""
-"Der Dienst rusers ermöglicht es Anwendern anderer Rechner \n"
-"herauszubekommen, welche Benutzer auf diesem Rechner \n"
-"gerade angemeldet sind."
+"Der Dienst rusers erlaubt es Anwendern in einem Netzwerk zu identifizieren\n"
+"wer gerade auf einem der anderen Rechnern angemeldet ist."
-#: services.pm:90
+#: services.pm:123
#, c-format
msgid ""
"The rwho protocol lets remote users get a list of all of the users\n"
@@ -6730,7 +6736,7 @@ msgstr ""
"momentan angemeldeter Benutzer übermittelt zu bekommen \n"
"(ähnlich wie finger)."
-#: services.pm:92
+#: services.pm:125
#, c-format
msgid ""
"SANE (Scanner Access Now Easy) enables to access scanners, video cameras, ..."
@@ -6738,21 +6744,36 @@ msgstr ""
"SANE (Scanner Access Now Easy) erlaubt es, Scanner, Videokameras und "
"ähnliches anzusprechen"
-#: services.pm:93
+#: services.pm:126
+#, c-format
+msgid "Packet filtering firewall"
+msgstr "Paketfilter-Firewall"
+
+#: services.pm:127
+#, c-format
+msgid "Packet filtering firewall for IPv6"
+msgstr "Paketfilternde Firewall für IPv6"
+
+#: services.pm:128
#, c-format
msgid ""
"The SMB/CIFS protocol enables to share access to files & printers and also "
"integrates with a Windows Server domain"
msgstr ""
-"DAS SMB/CIFS Protokoll erlaubt es, den Zugang zu Dateien und Druckern zu "
-"teilen und integriert sich auch in eine Windows Server Umgebung"
+"Das SMB/CIFS Protokoll erlaubt es, den Zugang zu Dateien und Druckern zu "
+"teilen und integriert sich auch in eine Windows-Server-Umgebung"
-#: services.pm:94
+#: services.pm:129
#, c-format
msgid "Launch the sound system on your machine"
-msgstr "Starten des Sound-Systems Ihres Rechners"
+msgstr "Starten des Soundsystems Ihres Rechners"
-#: services.pm:95
+#: services.pm:130
+#, c-format
+msgid "layer for speech analysis"
+msgstr "Layer für die Sprach-Analyse"
+
+#: services.pm:131
#, c-format
msgid ""
"Secure Shell is a network protocol that allows data to be exchanged over a "
@@ -6761,7 +6782,7 @@ msgstr ""
"Secure Shell ist ein Netzwerkprotokoll, das es erlaubt, Daten über eine "
"sichere Verbindung zwischen zwei Computern auszutauschen"
-#: services.pm:96
+#: services.pm:132
#, c-format
msgid ""
"Syslog is the facility by which many daemons use to log messages\n"
@@ -6771,85 +6792,97 @@ msgstr ""
"in vorgesehene Dateien zu sichern. Es ist sinnvoll Syslog immer \n"
"aktiviert zu haben."
-#: services.pm:98
+#: services.pm:134
+#, c-format
+msgid "Moves the generated persistent udev rules to /etc/udev/rules.d"
+msgstr ""
+"Verschiebt die generierten persistenten udev-Regeln nach /etc/udev/rules.d"
+
+#: services.pm:135
#, c-format
msgid "Load the drivers for your usb devices."
msgstr "Lädt die Treiber für Ihre USB-Geräte."
-#: services.pm:99
+#: services.pm:136
+#, c-format
+msgid "A lightweight network traffic monitor"
+msgstr "Eine ressourcenschonende Netzwerk-Verkehrsüberwachung"
+
+#: services.pm:137
#, c-format
msgid "Starts the X Font Server."
-msgstr "Startet den X Font-Server"
+msgstr "Startet den X-Font-Server"
-#: services.pm:100
+#: services.pm:138
#, c-format
msgid "Starts other deamons on demand."
-msgstr "Startet andere Dienste auf Verlangen"
+msgstr "Startet andere Daemonen auf Verlangen."
-#: services.pm:123
+#: services.pm:167
#, c-format
msgid "Printing"
msgstr "Drucken"
-#: services.pm:124
+#: services.pm:170
#, c-format
msgid "Internet"
msgstr "Internet"
-#: services.pm:127
+#: services.pm:175
#, c-format
-msgid "File sharing"
-msgstr "Gemeinsamer Dateizugriff"
+msgid ""
+"_: Keep these entry short\n"
+"Networking"
+msgstr "Netzwerk"
-#: services.pm:129
+#: services.pm:178
#, c-format
msgid "System"
msgstr "System"
-#: services.pm:134
+#: services.pm:185
#, c-format
msgid "Remote Administration"
msgstr "Fernwartung"
-#: services.pm:142
+#: services.pm:194
#, c-format
msgid "Database Server"
msgstr "Datenbankserver"
-#: services.pm:153 services.pm:192
+#: services.pm:205 services.pm:247
#, c-format
msgid "Services"
msgstr "Dienste"
-#: services.pm:153
+#: services.pm:205
#, c-format
msgid "Choose which services should be automatically started at boot time"
msgstr ""
-"Wählen Sie, welche Dienste\n"
-"automatisch beim Systemstart\n"
-"aktiviert werden sollen"
+"Wählen Sie, welche Dienste automatisch beim Systemstart aktiviert werden "
+"sollen"
-#: services.pm:171
+#: services.pm:228
#, c-format
-msgid "Services: %d activated for %d registered"
-msgstr "Dienste: %d aktiviert von %d registrierten"
+msgid "%d activated for %d registered"
+msgstr "%d aktiviert von %d registrierten"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "running"
msgstr "aktiv"
-#: services.pm:208
+#: services.pm:251
#, c-format
msgid "stopped"
msgstr "gestoppt"
-#: services.pm:213
+#: services.pm:256
#, c-format
msgid "Services and daemons"
msgstr "Dienste und Dämonen"
-#: services.pm:219
+#: services.pm:262
#, c-format
msgid ""
"No additional information\n"
@@ -6859,32 +6892,27 @@ msgstr ""
"weiteren Informationen zu\n"
"diesem Dienst."
-#: services.pm:224 ugtk2.pm:924
-#, c-format
-msgid "Info"
-msgstr "Info"
-
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "Start when requested"
msgstr "Starten wenn verlangt"
-#: services.pm:227
+#: services.pm:269
#, c-format
msgid "On boot"
msgstr "Beim Systemstart"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Start"
msgstr "Start"
-#: services.pm:245
+#: services.pm:283
#, c-format
msgid "Stop"
msgstr "Stopp"
-#: standalone.pm:25
+#: standalone.pm:27
#, c-format
msgid ""
"This program is free software; you can redistribute it and/or modify\n"
@@ -6918,7 +6946,7 @@ msgstr ""
"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
"USA.\n"
-#: standalone.pm:44
+#: standalone.pm:46
#, c-format
msgid ""
"[--config-info] [--daemon] [--debug] [--default] [--show-conf]\n"
@@ -6941,43 +6969,41 @@ msgstr ""
"--show-conf - Liste der zu archivierenden Dateien/Verzeichnisse.\n"
"--config-info - Erklärung der Konfigurationsdatei-Parameter (für nicht-X "
"Anwender).\n"
-"--daemon - Verwende die Dienst-Konfiguration. \n"
+"--daemon - Verwende die Dämon-Konfiguration. \n"
"--help - Ausgabe dieses Hilfetextes.\n"
"--version - Ausgabe der Versionsnummer.\n"
-#: standalone.pm:56
+#: standalone.pm:58
#, c-format
msgid ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"OPTIONS:\n"
" --boot - enable to configure boot loader\n"
-" --splash - enable to configure boot theme\n"
"default mode: offer to configure autologin feature"
msgstr ""
-"[--boot] [--splash]\n"
+"[--boot]\n"
"Optionen:\n"
" --boot - ermöglicht die Konfiguration des Bootloaders\n"
-" --splash - ermöglicht die Konfiguration des Boot-Designs\n"
"Standard-Modus: Bietet die Konfiguration des AutoLogin-Features an"
-#: standalone.pm:61
+#: standalone.pm:62
#, c-format
msgid ""
"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
"OPTIONS:\n"
" --help - print this help message.\n"
-" --report - program should be one of Mandriva Linux tools\n"
-" --incident - program should be one of Mandriva Linux tools"
+" --report - program should be one of %s tools\n"
+" --incident - program should be one of %s tools"
msgstr ""
-"[OPTIONEN] [PROGRAMMNAME]\n"
+"[OPTIONS] [PROGRAM_NAME]\n"
"\n"
-"OPTIONEN:\n"
-" --help - Asgabe dieses Hilfetextes.\n"
-" --report - Name eines Mandriva Linux-Werkzeuges.\n"
-" --incident - Name eines Mandriva Linux-Werkzeuges."
+"OPTIONS:\n"
+" --help - diese Hilfe-Seite ausgeben.\n"
+" --report - das Programm sollte eines der %s-Werkzeuge sein\n"
+" --incident - das Programm sollte eines der %s-Werkzeuge sein"
-#: standalone.pm:67
+#: standalone.pm:68
#, c-format
msgid ""
"[--add]\n"
@@ -6994,7 +7020,7 @@ msgstr ""
" --internet - Internetzugang einrichten\n"
" --wizard - wie --add"
-#: standalone.pm:73
+#: standalone.pm:74
#, c-format
msgid ""
"\n"
@@ -7027,11 +7053,11 @@ msgstr ""
" : name_der_anwendung, wie so für Staroffice \n"
" : und gs für ghostscript für nur dieses."
-#: standalone.pm:88
+#: standalone.pm:89
#, c-format
msgid ""
"[OPTIONS]...\n"
-"Mandriva Linux Terminal Server Configurator\n"
+"%s Terminal Server Configurator\n"
"--enable : enable MTS\n"
"--disable : disable MTS\n"
"--start : start MTS\n"
@@ -7044,32 +7070,32 @@ msgid ""
"--delclient : delete a client machine from MTS (requires MAC address, "
"IP, nbi image name)"
msgstr ""
-"[OPTIONEN]...\n"
-"Mandriva Terminal-Server-Konfigurator\n"
-"--enable : MTS einschalten\n"
-"--disable : MTS ausschalten\n"
+"[OPTIONS]...\n"
+"%s-Terminalserver-Einrichtung\n"
+"--enable : MTS aktivieren\n"
+"--disable : MTS deaktivieren\n"
"--start : MTS starten\n"
"--stop : MTS anhalten\n"
-"--adduser : einen existierenden Systemnutzer zu MTS hinzufügen "
-"(benötigt Nutzernamen)\n"
-"--deluser : einen existierenden Systemnutzer von MTS löschen "
-"(benötigt Nutzernamen)\n"
-"--addclient : einen Client zu MTS hinzufügen (benötigt MAC Adresse, IP, "
-"Name des NBI-Abbildes)\n"
-"--delclient : einen Client von MTS löschen (benötigt MAC Adresse, IP, "
-"Name des NBI-Abbildes)"
+"--adduser : einen existierenden System-Benutzer zu MTS hinzufügen "
+"(benötigt Benutzername)\n"
+"--deluser : einen existierenden System-Benutzer vom MTS entfernen "
+"(benötigt Benutzername)\n"
+"--addclient : eine Client-Maschine zu MTS hinzufügen (benötigt MAC-"
+"Adress, IP, nbi-Abbildname)\n"
+"--delclient : eine Client-Maschine vom MTS entfernen (benötigt MAC-"
+"Adress, IP, nbi-Abbildname)"
-#: standalone.pm:100
+#: standalone.pm:101
#, c-format
msgid "[keyboard]"
msgstr "[Tastatur]"
-#: standalone.pm:101
+#: standalone.pm:102
#, c-format
msgid "[--file=myfile] [--word=myword] [--explain=regexp] [--alert]"
-msgstr "[--file=datei] [--word=word] [--explain=ausdruck] [--alert]"
+msgstr "[--file=datei] [--word=word] [--explain=regexp] [--alert]"
-#: standalone.pm:102
+#: standalone.pm:103
#, c-format
msgid ""
"[OPTIONS]\n"
@@ -7092,25 +7118,27 @@ msgstr ""
"--status : gibt 1 zurück wenn verbunden sonst 0, beendet sich danach.\n"
"--quiet : nicht interaktiv. benutzt mit (dis)connect."
-#: standalone.pm:112
+#: standalone.pm:113
#, c-format
msgid ""
"[OPTION]...\n"
-" --no-confirmation do not ask first confirmation question in Mandriva "
-"Update mode\n"
+" --no-confirmation do not ask first confirmation question in %s Update "
+"mode\n"
" --no-verify-rpm do not verify packages signatures\n"
" --changelog-first display changelog before filelist in the "
"description window\n"
" --merge-all-rpmnew propose to merge all .rpmnew/.rpmsave files found"
msgstr ""
"[OPTION]...\n"
-" --no-confirmation keine Fragen im Mandriva Update-Modus stellen\n"
-" --no-verify-rpm Paketsignaturen nicht überprüfen\n"
-" --changelog-first Änderungsprotokoll vor Dateiliste anzeigen\n"
-" --merge-all-rpmnew Zusammenlegen aller .rpmnew/.rpmsave-Dateien "
-"vorschlagen"
+" --no-confirmation Im %s Aktualisierungsmodus nicht nach Bestätigung "
+"fragen\n"
+" --no-verify-rpm Paket-Signaturen nicht auf Echtheit prüfen\n"
+" --changelog-first Das Änderungsprotokoll vor der Dateiliste im "
+"Beschreibungsfenster anzeigen\n"
+" --merge-all-rpmnew vorschlagen, alle gefundenen .rpmnew/.rpmsave-"
+"Dateien zu mergen"
-#: standalone.pm:117
+#: standalone.pm:118
#, c-format
msgid ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
@@ -7119,7 +7147,7 @@ msgstr ""
"[--manual] [--device=dev] [--update-sane=sane_source_dir] [--update-"
"usbtable] [--dynamic=dev]"
-#: standalone.pm:118
+#: standalone.pm:119
#, c-format
msgid ""
" [everything]\n"
@@ -7130,7 +7158,7 @@ msgstr ""
" XFdrake [--noauto] monitor\n"
" XFdrake resolution"
-#: standalone.pm:154
+#: standalone.pm:156
#, c-format
msgid ""
"\n"
@@ -7141,71 +7169,76 @@ msgstr ""
"Verwendung: %s [--auto] [--beginner] [--expert] [-h|--help] [--noauto] [--"
"testing] [-v|--version] "
-#: timezone.pm:161 timezone.pm:162
+#: timezone.pm:170 timezone.pm:171
#, c-format
msgid "All servers"
msgstr "Alle Server"
-#: timezone.pm:196
+#: timezone.pm:207
#, c-format
msgid "Global"
msgstr "Global"
-#: timezone.pm:199
+#: timezone.pm:210
#, c-format
msgid "Africa"
msgstr "Afrika"
-#: timezone.pm:200
+#: timezone.pm:211
#, c-format
msgid "Asia"
msgstr "Asien"
-#: timezone.pm:201
+#: timezone.pm:212
#, c-format
msgid "Europe"
-msgstr "Europe"
+msgstr "Europa"
-#: timezone.pm:202
+#: timezone.pm:213
#, c-format
msgid "North America"
msgstr "Nordamerika"
-#: timezone.pm:203
+#: timezone.pm:214
#, c-format
msgid "Oceania"
msgstr "Ozeanien"
-#: timezone.pm:204
+#: timezone.pm:215
#, c-format
msgid "South America"
msgstr "Südamerika"
-#: timezone.pm:213
+#: timezone.pm:224
#, c-format
msgid "Hong Kong"
msgstr "Hong Kong"
-#: timezone.pm:250
+#: timezone.pm:261
#, c-format
msgid "Russian Federation"
-msgstr "Russland"
+msgstr "Russische Föderation"
-#: timezone.pm:258
+#: timezone.pm:269
#, c-format
msgid "Yugoslavia"
msgstr "Jugoslawien"
-#: ugtk2.pm:812
+#: ugtk2.pm:810 ugtk3.pm:906
#, c-format
msgid "Is this correct?"
msgstr "Ist dies richtig?"
-#: ugtk2.pm:874
+#: ugtk2.pm:872 ugtk3.pm:968
#, c-format
msgid "You have chosen a file, not a directory"
msgstr "Sie haben eine Datei ausgewählt, kein Verzeichnis"
+#: ugtk2.pm:922 ugtk3.pm:1018
+#, c-format
+msgid "Info"
+msgstr "Info"
+
#: wizards.pm:95
#, c-format
msgid ""
@@ -7218,61 +7251,4 @@ msgstr ""
#: wizards.pm:99
#, c-format
msgid "Installation failed"
-msgstr "Die Installation schlug fehl!"
-
-#~ msgid "Automatic routing from ALSA to PulseAudio"
-#~ msgstr "Automatisches Weiterleiten von ALSA zu PulseAudio"
-
-#~ msgid "Please log out and then use Ctrl-Alt-BackSpace"
-#~ msgstr "Bitte melden Sie sich ab und drücken Sie Ctrl-Alt-Rücktaste"
-
-#~ msgid "Welcome To Crackers"
-#~ msgstr "Cracker-Spielplatz"
-
-#~ msgid "Poor"
-#~ msgstr "Schwach"
-
-#~ msgid "High"
-#~ msgstr "Hoch"
-
-#~ msgid "Higher"
-#~ msgstr "Höher"
-
-#~ msgid "Paranoid"
-#~ msgstr "Paranoid"
-
-#~ msgid ""
-#~ "This level is to be used with care. It makes your system more easy to "
-#~ "use,\n"
-#~ "but very sensitive. It must not be used for a machine connected to "
-#~ "others\n"
-#~ "or to the Internet. There is no password access."
-#~ msgstr ""
-#~ "Diese Ebene ist mit Vorsicht zu verwenden. Zwar macht sie Ihr System \n"
-#~ "einfacher handhabbar, aber auch leichter angreifbar: In dieser Form "
-#~ "darf \n"
-#~ "der Rechner nicht als Netzwerkrechner (LAN oder Modem) verwendet "
-#~ "werden, \n"
-#~ "da Angreifer mangels Passwort an Ihre Daten gelangen können!"
-
-#~ msgid ""
-#~ "Passwords are now enabled, but use as a networked computer is still not "
-#~ "recommended."
-#~ msgstr ""
-#~ "Passwortabfragen sind nun eingeschaltet, aber die Verwendung als \n"
-#~ "Netzwerkrechner kann hier nicht empfohlen werden."
-
-#~ msgid ""
-#~ "There are already some restrictions, and more automatic checks are run "
-#~ "every night."
-#~ msgstr ""
-#~ "Es gibt bereits mehr Restriktionen und jede Nacht werden automatische "
-#~ "Sicherheitstests durchgeführt."
-
-#~ msgid ""
-#~ "This is similar to the previous level, but the system is entirely closed "
-#~ "and security features are at their maximum."
-#~ msgstr ""
-#~ "Diese Ebene bietet die selbe Funktionalität, wie die vorherige. Jedoch "
-#~ "ist \n"
-#~ "das System nun komplett geschlossen. Es ist die höchste Sicherheitsebene."
+msgstr "Die Installation schlug fehl"
diff --git a/perl-install/share/po/de_AT.po b/perl-install/share/po/de_AT.po
new file mode 100644
index 000000000..35b901465
--- /dev/null
+++ b/perl-install/share/po/de_AT.po
@@ -0,0 +1,7236 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: Mageia\n"
+"POT-Creation-Date: 2024-10-12 15:21+0300\n"
+"PO-Revision-Date: 2013-04-04 13:34+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: German (Austria) (http://www.transifex.com/MageiaLinux/mageia/"
+"language/de_AT/)\n"
+"Language: de_AT\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: any.pm:272 any.pm:755 any.pm:1181 diskdrake/interactive.pm:650
+#: diskdrake/interactive.pm:901 diskdrake/interactive.pm:966
+#: diskdrake/interactive.pm:1058 diskdrake/interactive.pm:1085
+#: diskdrake/interactive.pm:1316 diskdrake/interactive.pm:1374 do_pkgs.pm:342
+#: do_pkgs.pm:388 interactive.pm:712 pkgs.pm:301
+#, c-format
+msgid "Please wait"
+msgstr "Bitte warten"
+
+#: any.pm:272
+#, c-format
+msgid "Bootloader installation in progress"
+msgstr "Installation des Bootloaders ..."
+
+#: any.pm:283
+#, c-format
+msgid ""
+"LILO wants to assign a new Volume ID to drive %s. However, changing\n"
+"the Volume ID of a Windows NT, 2000, or XP boot disk is a fatal Windows "
+"error.\n"
+"This caution does not apply to Windows 95 or 98, or to NT data disks.\n"
+"\n"
+"Assign a new Volume ID?"
+msgstr ""
+"LILO möchte dem Laufwerk %s eine neue Datenträger-ID zuweisen. Jedoch ist\n"
+"das Ändern der Datenträger-ID einer Windows NT, 2000, oder XP Startplatte\n"
+"ein fataler Windows-Fehler.\n"
+"Dies trifft nicht für Windows 95, 98, oder NT Datenplatten zu.\n"
+"\n"
+"Neue Datenträger-ID zuweisen?"
+
+#: any.pm:294
+#, c-format
+msgid "Installation of bootloader failed. The following error occurred:"
+msgstr ""
+"Die Installation des Bootloader schlug fehl. Folgender Fehler trat auf:"
+
+#: any.pm:334
+#, c-format
+msgid ""
+"You decided to install the bootloader on a partition.\n"
+"This implies you already have a bootloader on the hard disk drive you boot "
+"(eg: System Commander).\n"
+"\n"
+"On which drive are you booting?"
+msgstr ""
+"Sie haben sich entschieden, den Bootloader auf einer Partition zu "
+"installieren.\n"
+"Dies setzt voraus, dass Sie bereits einen Bootloader auf der Festplatte "
+"installiert haben (z.B. System Commander).\n"
+"\n"
+"Von welchem Laufwerk booten Sie?"
+
+#: any.pm:345
+#, c-format
+msgid "Bootloader Installation"
+msgstr "Installation des Bootloaders"
+
+#: any.pm:349
+#, c-format
+msgid "Where do you want to install the bootloader?"
+msgstr "Wo soll der Bootloader installiert werden?"
+
+#: any.pm:365
+#, c-format
+msgid "First sector (MBR) of drive %s"
+msgstr "Erster Sektor der %s Platte (MBR)"
+
+#: any.pm:367
+#, c-format
+msgid "First sector of drive (MBR)"
+msgstr "Erster Sektor der Platte (MBR)"
+
+#: any.pm:369
+#, c-format
+msgid "First sector of the root partition"
+msgstr "Erster Sektor der Root-Partition"
+
+#: any.pm:371
+#, c-format
+msgid "On Floppy"
+msgstr "Auf Diskette"
+
+#: any.pm:373 pkgs.pm:297 ugtk2.pm:526 ugtk3.pm:600
+#, c-format
+msgid "Skip"
+msgstr "Überspringen"
+
+#: any.pm:401
+#, c-format
+msgid "Boot Style Configuration"
+msgstr "Konfiguration der Boot-Einstellungen"
+
+#: any.pm:405
+#, c-format
+msgid "EFI System Partition"
+msgstr "EFI-Systempartition"
+
+#: any.pm:420
+#, c-format
+msgid "Bootloader main options"
+msgstr "Hauptoptionen des Bootloaders"
+
+#: any.pm:424
+#, c-format
+msgid "Bootloader"
+msgstr "Bootloader"
+
+#: any.pm:425
+#, c-format
+msgid "Bootloader to use"
+msgstr "Zu verwendender Bootloader"
+
+#: any.pm:427
+#, c-format
+msgid "Boot device"
+msgstr "Boot-Gerät"
+
+#: any.pm:429
+#, c-format
+msgid "Main options"
+msgstr "Hauptoptionen"
+
+#: any.pm:430
+#, c-format
+msgid "Delay before booting default image"
+msgstr "Wartezeit vor dem Starten des Standard-Betriebssystems"
+
+#: any.pm:431
+#, c-format
+msgid "Enable ACPI"
+msgstr "ACPI aktivieren"
+
+#: any.pm:432
+#, c-format
+msgid "Enable SMP"
+msgstr "SMP aktivieren"
+
+#: any.pm:433
+#, c-format
+msgid "Enable APIC"
+msgstr "APIC aktivieren"
+
+#: any.pm:435
+#, c-format
+msgid "Enable Local APIC"
+msgstr "Lokales APIC aktivieren"
+
+#: any.pm:436 security/level.pm:63
+#, c-format
+msgid "Security"
+msgstr "Sicherheit"
+
+#: any.pm:437 any.pm:1100 any.pm:1119 authentication.pm:249
+#: diskdrake/smbnfs_gtk.pm:181
+#, c-format
+msgid "Password"
+msgstr "Passwort"
+
+#: any.pm:440 authentication.pm:260
+#, c-format
+msgid "The passwords do not match"
+msgstr "Die Passwörter stimmen nicht überein"
+
+#: any.pm:440 authentication.pm:260 diskdrake/interactive.pm:1545
+#, c-format
+msgid "Please try again"
+msgstr "Bitte versuchen Sie es erneut"
+
+#: any.pm:442
+#, c-format
+msgid "You cannot use a password with %s"
+msgstr "Sie können kein Passwort mit %s benutzen"
+
+#: any.pm:446 any.pm:1103 any.pm:1121 authentication.pm:250
+#, c-format
+msgid "Password (again)"
+msgstr "Passwort (erneut)"
+
+#: any.pm:528 any.pm:731 any.pm:774
+#, c-format
+msgid "Bootloader Configuration"
+msgstr "Konfiguration des Bootloaders"
+
+#: any.pm:532
+#, c-format
+msgid "Install Options"
+msgstr "Installationsoptionen"
+
+#: any.pm:533
+#, c-format
+msgid "Install or update rEFInd in the EFI system partition"
+msgstr "Installiere oder aktualisiere rEFInd in der EFI-Systempartition"
+
+#: any.pm:535 any.pm:794
+#, c-format
+msgid "Install in /EFI/BOOT (removable device or workaround for some BIOSs)"
+msgstr ""
+"In /EFI/BOOT installieren (entfernbare Geräte oder Problemumgehung für "
+"einige BIOSe)"
+
+#: any.pm:537
+#, c-format
+msgid "Configure rEFInd to store its variables in the EFI NVRAM"
+msgstr "Konfiguriere rEFInd, um die Variablen im EFI NVRAM zu speichern"
+
+#: any.pm:539
+#, c-format
+msgid "Background"
+msgstr "Hintergrund"
+
+#: any.pm:544
+#, c-format
+msgid "rEFInd banner"
+msgstr "rEFInd-Banner"
+
+#: any.pm:545
+#, c-format
+msgid "Mageia theme"
+msgstr "Mageia-Theme"
+
+#: any.pm:546 any.pm:1602
+#, c-format
+msgid "Custom"
+msgstr "Benutzerdefiniert"
+
+#: any.pm:564
+#, c-format
+msgid "No scaling"
+msgstr "Keine Skalierung"
+
+#: any.pm:565
+#, c-format
+msgid "Scale to fit"
+msgstr "Ins Fenster einpassen"
+
+#: any.pm:610 any.pm:635 diskdrake/interactive.pm:411
+#, c-format
+msgid "Label"
+msgstr "Bezeichnung"
+
+#: any.pm:611 any.pm:619 any.pm:780
+#, c-format
+msgid "Append"
+msgstr "Hinzufügen / Erweitern"
+
+#: any.pm:612 any.pm:624 any.pm:781
+#, c-format
+msgid "Video mode"
+msgstr "Video-Modus"
+
+#: any.pm:617
+#, c-format
+msgid "Image"
+msgstr "Abbild"
+
+#: any.pm:618 any.pm:630
+#, c-format
+msgid "Root"
+msgstr "Root"
+
+#: any.pm:621
+#, c-format
+msgid "Xen append"
+msgstr "Xen hinzufügen"
+
+#: any.pm:623
+#, c-format
+msgid "Requires password to boot"
+msgstr "Benötigt Passwort zum Booten"
+
+#: any.pm:625
+#, c-format
+msgid "Initrd"
+msgstr "Init-RamDisk"
+
+#: any.pm:626
+#, c-format
+msgid "Network profile"
+msgstr "Netzwerk Profil"
+
+#: any.pm:637 any.pm:778 any.pm:1993 harddrake/v4l.pm:438
+#, c-format
+msgid "Default"
+msgstr "Standard"
+
+#: any.pm:645
+#, c-format
+msgid "Empty label not allowed"
+msgstr "Leere Einträge sind nicht erlaubt"
+
+#: any.pm:646
+#, c-format
+msgid "You must specify a kernel image"
+msgstr "Sie müssen ein Kernel-Abbild angeben"
+
+#: any.pm:646
+#, c-format
+msgid "You must specify a root partition"
+msgstr "Sie müssen die Root-Partition festlegen"
+
+#: any.pm:647
+#, c-format
+msgid "This label is already used"
+msgstr "Dieser Eintrag existiert bereits"
+
+#: any.pm:671
+#, c-format
+msgid "Which type of entry do you want to add?"
+msgstr "Welche Art Eintrag wollen Sie hinzufügen?"
+
+#: any.pm:672
+#, c-format
+msgid "Linux"
+msgstr "Linux"
+
+#: any.pm:672
+#, c-format
+msgid "Other OS (Windows...)"
+msgstr "Anderes OS (Windows ...)"
+
+#: any.pm:732
+#, c-format
+msgid ""
+"Here are the entries on your boot menu so far.\n"
+"You can create additional entries or change the existing ones."
+msgstr ""
+"Hier sind die verschiedenen Einträge.\n"
+"Sie können weitere hinzufügen oder existierende ändern."
+
+#: any.pm:783
+#, c-format
+msgid "Do not touch ESP or MBR"
+msgstr "Verändere nichts an der ESP oder dem MBR"
+
+#: any.pm:785 diskdrake/dav.pm:106 diskdrake/hd_gtk.pm:461
+#: diskdrake/interactive.pm:305 diskdrake/interactive.pm:391
+#: diskdrake/interactive.pm:605 diskdrake/interactive.pm:847
+#: diskdrake/interactive.pm:912 diskdrake/interactive.pm:1083
+#: diskdrake/interactive.pm:1125 diskdrake/interactive.pm:1126
+#: diskdrake/interactive.pm:1359 diskdrake/interactive.pm:1397
+#: diskdrake/interactive.pm:1544 do_pkgs.pm:45 do_pkgs.pm:74 do_pkgs.pm:100
+#: do_pkgs.pm:137
+#, c-format
+msgid "Warning"
+msgstr "Warnung"
+
+#: any.pm:786
+#, c-format
+msgid ""
+"Not installing on ESP or MBR means that the installation is not bootable "
+"unless chain loaded from another OS!"
+msgstr ""
+"Wenn der Bootloader nicht auf der ESP oder dem MBR installiert wird bedeutet "
+"dies, dass die Installation nicht startfähig ist, solange diese nicht von "
+"einem Bootloader eines anderen Betriebssystems (Chainloading) geladen wird!"
+
+#: any.pm:790
+#, c-format
+msgid "Probe Foreign OS"
+msgstr "Fremdes OS testen"
+
+#: any.pm:791
+#, c-format
+msgid ""
+"Unselect this option to stop grub2 scanning for other operating systems, "
+"which will prevent them from being included in the grub2 boot menu. The "
+"option may also be unselected after installation, removing the other "
+"operating systems from the grub2 boot menu, but reducing the time needed for "
+"installing kernel updates"
+msgstr ""
+"Wählen Sie diese Option ab, um zu verhindern, dass GRUB2 nach weitere "
+"Betriebssysteme sucht, damit diese nicht im GRUB2 Bootmenü hinzugefügt "
+"werden. Diese Auswahl kann auch nach der Installation deaktiviert werden, "
+"wodurch andere Betriebssysteme aus dem GRUB2 Bootmenü entfernt werden, "
+"allerdings die Installation von Kernel-Aktualisierungen schneller "
+"durchgeführt werden können."
+
+#: any.pm:1059
+#, c-format
+msgid "access to X programs"
+msgstr "Zugriff auf X-Programme"
+
+#: any.pm:1060
+#, c-format
+msgid "access to rpm tools"
+msgstr "Zugriff auf RPM-Werkzeuge"
+
+#: any.pm:1061
+#, c-format
+msgid "allow \"su\""
+msgstr "„su“ erlauben"
+
+#: any.pm:1062
+#, c-format
+msgid "access to administrative files"
+msgstr "Zugriff auf Verwaltungsdateien"
+
+#: any.pm:1063
+#, c-format
+msgid "access to network tools"
+msgstr "Zugriff auf Netzwerk-Werkzeuge"
+
+#: any.pm:1064
+#, c-format
+msgid "access to compilation tools"
+msgstr "Zugriff auf Kompilier-Werkzeuge"
+
+#: any.pm:1070
+#, c-format
+msgid "(already added %s)"
+msgstr "(%s wurde bereits hinzugefügt)"
+
+#: any.pm:1076
+#, c-format
+msgid "Please give a user name"
+msgstr "Bitte geben Sie einen Benutzernamen an"
+
+#: any.pm:1077
+#, c-format
+msgid ""
+"The user name must start with a lower case letter followed by only lower "
+"cased letters, numbers, `-' and `_'"
+msgstr ""
+"Der Benutzername muss mit einem Kleinbuchstaben beginnen und sollte nur aus "
+"Kleinbuchstaben, Ziffern, „-“ und „_“ bestehen."
+
+#: any.pm:1078
+#, c-format
+msgid "The user name is too long"
+msgstr "Dieser Benutzername ist zu lang"
+
+#: any.pm:1079
+#, c-format
+msgid "This user name has already been added"
+msgstr "Dieser Benutzername existiert bereits"
+
+#: any.pm:1085 any.pm:1123
+#, c-format
+msgid "User ID"
+msgstr "Benutzer-ID"
+
+#: any.pm:1085 any.pm:1124
+#, c-format
+msgid "Group ID"
+msgstr "Gruppen-ID"
+
+#: any.pm:1086
+#, c-format
+msgid "%s must be a number"
+msgstr "%s muss eine Zahl sein"
+
+#: any.pm:1087
+#, c-format
+msgid "%s should be above 1000. Accept anyway?"
+msgstr "%s sollte größer als 1000 sein. Trotzdem akzeptieren?"
+
+#: any.pm:1091
+#, c-format
+msgid "User management"
+msgstr "Benutzerverwaltung"
+
+#: any.pm:1097
+#, c-format
+msgid "Enable guest account"
+msgstr "Den Gastzugang aktivieren"
+
+#: any.pm:1099 authentication.pm:236
+#, c-format
+msgid "Set administrator (root) password"
+msgstr "Administratorpasswort setzen"
+
+#: any.pm:1105
+#, c-format
+msgid "Enter a user"
+msgstr "Benutzer einrichten"
+
+#: any.pm:1107
+#, c-format
+msgid "Icon"
+msgstr "Symbol"
+
+#: any.pm:1110
+#, c-format
+msgid "Real name"
+msgstr "Vollständiger Name"
+
+#: any.pm:1117
+#, c-format
+msgid "Login name"
+msgstr "Benutzername"
+
+#: any.pm:1122
+#, c-format
+msgid "Shell"
+msgstr "Shell"
+
+#: any.pm:1126
+#, c-format
+msgid "Extra Groups:"
+msgstr "Weitere Gruppen:"
+
+#: any.pm:1181
+#, c-format
+msgid "Please wait, adding media..."
+msgstr "Bitte warten, füge Medien hinzu ..."
+
+#: any.pm:1249 security/l10n.pm:14
+#, c-format
+msgid "Autologin"
+msgstr "Automatisch anmelden"
+
+#: any.pm:1250
+#, c-format
+msgid "I can set up your computer to automatically log on one user."
+msgstr ""
+"Ich kann Ihren Computer so einrichten, dass ein Benutzer automatisch "
+"angemeldet wird."
+
+#: any.pm:1251
+#, c-format
+msgid "Use this feature"
+msgstr "Diese Möglichkeit nutzen"
+
+#: any.pm:1252
+#, c-format
+msgid "Choose the default user:"
+msgstr "Wählen Sie den Standard-Nutzer:"
+
+#: any.pm:1253
+#, c-format
+msgid "Choose the window manager to run:"
+msgstr "Wählen Sie den Window-Manager, den Sie verwenden wollen:"
+
+#: any.pm:1264 any.pm:1279 any.pm:1348
+#, c-format
+msgid "Release Notes"
+msgstr "Versionshinweise"
+
+#: any.pm:1286 any.pm:1657 interactive/gtk.pm:820
+#, c-format
+msgid "Close"
+msgstr "Schließen"
+
+#: any.pm:1334
+#, c-format
+msgid "License agreement"
+msgstr "Lizenzvereinbarung"
+
+#: any.pm:1336 diskdrake/dav.pm:26 mygtk2.pm:1229 mygtk3.pm:1312
+#, c-format
+msgid "Quit"
+msgstr "Beenden"
+
+#: any.pm:1343
+#, c-format
+msgid "Do you accept this license ?"
+msgstr "Akzeptieren Sie diese Lizenz?"
+
+#: any.pm:1344
+#, c-format
+msgid "Accept"
+msgstr "Akzeptieren"
+
+#: any.pm:1344
+#, c-format
+msgid "Refuse"
+msgstr "Ablehnen"
+
+#: any.pm:1370 any.pm:1433
+#, c-format
+msgid "Please choose a language to use"
+msgstr "Bitte wählen Sie die zu verwendende Sprache"
+
+#: any.pm:1398
+#, c-format
+msgid ""
+"%s can support multiple languages. Select\n"
+"the languages you would like to install. They will be available\n"
+"when your installation is complete and you restart your system."
+msgstr ""
+"%s kann mehrere Sprachen unterstützen. Wählen\n"
+"Sie die Sprachen, die Sie gerne installieren möchten. Sie werden verfügbar "
+"sein,\n"
+"wenn Ihre Installation beendet ist und Sie das System neu starten."
+
+#: any.pm:1400 any.pm:1898 any.pm:1903 fs/partitioning_wizard.pm:208
+#, c-format
+msgid "Mageia"
+msgstr "Mageia"
+
+#: any.pm:1401
+#, c-format
+msgid "Multiple languages"
+msgstr "Mehrere Sprachen"
+
+#: any.pm:1402
+#, c-format
+msgid "Select Additional Languages"
+msgstr "Wählen Sie zusätzliche Sprachen aus"
+
+#: any.pm:1411 any.pm:1442
+#, c-format
+msgid "Old compatibility (non UTF-8) encoding"
+msgstr "Alte (nicht UTF-8) Kodierung"
+
+#: any.pm:1412
+#, c-format
+msgid "All languages"
+msgstr "Alle Sprachen"
+
+#: any.pm:1434
+#, c-format
+msgid "Language choice"
+msgstr "Sprachauswahl"
+
+#: any.pm:1488
+#, c-format
+msgid "Country / Region"
+msgstr "Land / Region"
+
+#: any.pm:1489
+#, c-format
+msgid "Please choose your country"
+msgstr "Bitte wählen Sie Ihr Land"
+
+#: any.pm:1491
+#, c-format
+msgid "Here is the full list of available countries"
+msgstr "Hier ist die komplette Liste aller Länder"
+
+#: any.pm:1492
+#, c-format
+msgid "Other Countries"
+msgstr "Andere Länder"
+
+#: any.pm:1492 interactive.pm:491 interactive/gtk.pm:444
+#, c-format
+msgid "Advanced"
+msgstr "Fortgeschritten"
+
+#: any.pm:1498
+#, c-format
+msgid "Input method:"
+msgstr "Eingabe-Methode:"
+
+#: any.pm:1501 harddrake/sound.pm:550
+#, c-format
+msgid "None"
+msgstr "Keine"
+
+#: any.pm:1602
+#, c-format
+msgid "No sharing"
+msgstr "Keine Freigaben"
+
+#: any.pm:1602
+#, c-format
+msgid "Allow all users"
+msgstr "Allen Benutzern erlauben"
+
+#: any.pm:1606
+#, c-format
+msgid ""
+"Would you like to allow users to share some of their directories?\n"
+"Allowing this will permit users to simply click on \"Share\" in konqueror "
+"and nautilus.\n"
+"\n"
+"\"Custom\" permit a per-user granularity.\n"
+msgstr ""
+"Wollen Sie Benutzern erlauben, Verzeichnisse freizugeben?\n"
+"Wenn Sie das erlauben, können die Anwender Verzeichnisse in Konqueror oder "
+"Nautilus im Kontextmenü des entsprechenden Verzeichnisses freigeben.\n"
+"\n"
+"Mit „Benutzerdefiniert“ können Sie eine Einstellung pro Benutzer vornehmen.\n"
+
+#: any.pm:1618
+#, c-format
+msgid ""
+"NFS: the traditional Unix file sharing system, with less support on Mac and "
+"Windows."
+msgstr ""
+"NFS: das traditionelle Unix-Dateisystem für Freigaben im Netz, mit weniger "
+"Unterstützung für Mac und Windows."
+
+#: any.pm:1621
+#, c-format
+msgid ""
+"SMB: a file sharing system used by Windows, Mac OS X and many modern Linux "
+"systems."
+msgstr ""
+"SMB: ein Dateisystem welches für Freigaben im Netz von Windows, Mac OS X und "
+"vielen modernen Linux-Systemen verwendet wird."
+
+#: any.pm:1629
+#, c-format
+msgid ""
+"You can export using NFS or SMB. Please select which you would like to use."
+msgstr ""
+"Sie können die Dateien mittels SMB oder NFS anbieten. Welche Variante wollen "
+"Sie verwenden?"
+
+#: any.pm:1657
+#, c-format
+msgid "Launch userdrake"
+msgstr "UserDrake starten"
+
+#: any.pm:1659
+#, c-format
+msgid ""
+"The per-user sharing uses the group \"fileshare\". \n"
+"You can use userdrake to add a user to this group."
+msgstr ""
+"Die Freigaben zwischen Benutzern regelt die Gruppe „fileshare“. \n"
+"Sie können UserDrake verwenden, um Benutzer in diese Gruppe aufzunehmen."
+
+#: any.pm:1768
+#, c-format
+msgid ""
+"You need to logout and back in again for changes to take effect. Press OK to "
+"logout now."
+msgstr ""
+"Sie müssen sich abmelden und wieder anmelden, damit die Änderungen wirksam "
+"werden. Klicken Sie auf OK, um sich nun abzumelden."
+
+#: any.pm:1772
+#, c-format
+msgid "You need to log out and back in again for changes to take effect"
+msgstr ""
+"Sie müssen sich abmelden und wieder anmelden, damit die Änderungen wirksam "
+"werden"
+
+#: any.pm:1807
+#, c-format
+msgid "Timezone"
+msgstr "Zeitzone"
+
+#: any.pm:1807
+#, c-format
+msgid "Which is your timezone?"
+msgstr "Wählen Sie Ihre Zeitzone"
+
+#: any.pm:1830 any.pm:1832
+#, c-format
+msgid "Date, Clock & Time Zone Settings"
+msgstr "Datum, Zeit und Zeitzonen Einstellungen"
+
+#: any.pm:1833
+#, c-format
+msgid "What is the best time?"
+msgstr "Welches ist die beste Zeit?"
+
+#: any.pm:1837
+#, c-format
+msgid "%s (hardware clock set to UTC)"
+msgstr "%s (Hardware Uhr gestellt auf GMT)"
+
+#: any.pm:1838
+#, c-format
+msgid "%s (hardware clock set to local time)"
+msgstr "%s (Hardware Uhr gestellt auf Ortszeit)"
+
+#: any.pm:1840
+#, c-format
+msgid "NTP Server"
+msgstr "NTP-Server"
+
+#: any.pm:1841
+#, c-format
+msgid "Automatic time synchronization (using NTP)"
+msgstr "Automatische Zeit-Synchronisation (durch NTP)"
+
+#: any.pm:1874
+#, c-format
+msgid "URL of the mirror?"
+msgstr "URL des Spiegel-Servers?"
+
+#: any.pm:1880
+#, c-format
+msgid "URL must start with ftp:// or http:// or https://"
+msgstr "Die URL muss mit ftp:// oder http:// oder https:// beginnen"
+
+#: any.pm:1898
+#, c-format
+msgid "Contacting %s web site to get the list of available mirrors..."
+msgstr ""
+"Die %s-Webseite wird kontaktiert, um eine Liste der verfügbaren Spiegel-"
+"Server zu erhalten..."
+
+#: any.pm:1903
+#, c-format
+msgid "Failed contacting %s web site to get the list of available mirrors"
+msgstr ""
+"Die %s-Webseite kann nicht erreicht werden, um die Liste der verfügbaren "
+"Spiegel-Server zu erhalten"
+
+#: any.pm:1919
+#, c-format
+msgid "Choose a mirror from which to get the packages"
+msgstr "Bitte wählen Sie einen Mirror, von dem Sie die Pakete holen wollen."
+
+#: any.pm:1920 diskdrake/smbnfs_gtk.pm:81 interactive.pm:120 interactive.pm:675
+#: interactive/curses.pm:267 interactive/http.pm:104 interactive/http.pm:160
+#: interactive/stdio.pm:39 interactive/stdio.pm:148 mygtk2.pm:846
+#: mygtk2.pm:1229 mygtk3.pm:928 mygtk3.pm:1312 ugtk2.pm:415 ugtk2.pm:517
+#: ugtk2.pm:526 ugtk2.pm:810 ugtk3.pm:501 ugtk3.pm:591 ugtk3.pm:600
+#: ugtk3.pm:906
+#, c-format
+msgid "Cancel"
+msgstr "Ablehnen"
+
+#: any.pm:1977
+#, c-format
+msgid "Mirror choice"
+msgstr "Auswahl des Spiegelservers"
+
+#: any.pm:1982
+#, c-format
+msgid "Automatic"
+msgstr "Automatisch"
+
+#: any.pm:1983
+#, c-format
+msgid "Specific"
+msgstr "Spezifisch"
+
+#: any.pm:1988
+#, c-format
+msgid "Downloader"
+msgstr "Downloader"
+
+#: authentication.pm:24
+#, c-format
+msgid "Local file"
+msgstr "Lokale Datei"
+
+#: authentication.pm:25
+#, c-format
+msgid "LDAP"
+msgstr "LDAP"
+
+#: authentication.pm:26
+#, c-format
+msgid "NIS"
+msgstr "NIS"
+
+#: authentication.pm:27
+#, c-format
+msgid "Smart Card"
+msgstr "Chipkarte"
+
+#: authentication.pm:28 authentication.pm:215
+#, c-format
+msgid "Windows Domain"
+msgstr "Windows-Domäne"
+
+#: authentication.pm:29
+#, c-format
+msgid "Kerberos 5"
+msgstr "Kerberos 5"
+
+#: authentication.pm:65
+#, c-format
+msgid "Local file:"
+msgstr "Lokale Datei:"
+
+#: authentication.pm:65
+#, c-format
+msgid ""
+"Use local for all authentication and information user tell in local file"
+msgstr ""
+"Benutze lokale Dateien zur Authentifizierung und für Benutzerinformationen"
+
+#: authentication.pm:66
+#, c-format
+msgid "LDAP:"
+msgstr "LDAP:"
+
+#: authentication.pm:66
+#, c-format
+msgid ""
+"Tells your computer to use LDAP for some or all authentication. LDAP "
+"consolidates certain types of information within your organization."
+msgstr ""
+"Richtet Ihren Rechner so ein, dass er LDAP für die Authentifizierung "
+"verwendet. LDAP führt bestimmte Informationen innerhalb Ihrer Organisation "
+"zusammen."
+
+#: authentication.pm:67
+#, c-format
+msgid "NIS:"
+msgstr "NIS:"
+
+#: authentication.pm:67
+#, c-format
+msgid ""
+"Allows you to run a group of computers in the same Network Information "
+"Service domain with a common password and group file."
+msgstr ""
+"Erlaubt es Ihnen, eine Gruppe von Rechnern in der gleichen NIS-Domäne mit "
+"einer gemeinsamen Passwort- und Gruppendatei laufen zu lassen."
+
+#: authentication.pm:68
+#, c-format
+msgid "Windows Domain:"
+msgstr "Windows-Domäne:"
+
+#: authentication.pm:68
+#, c-format
+msgid ""
+"Winbind allows the system to retrieve information and authenticate users in "
+"a Windows domain."
+msgstr ""
+"Winbind ermöglicht dem System, aus einer Windows-Domäne Informationen "
+"abzufragen und Nutzer zu authentifizieren."
+
+#: authentication.pm:69
+#, c-format
+msgid "Kerberos 5 :"
+msgstr "Kerberos 5 :"
+
+#: authentication.pm:69
+#, c-format
+msgid "With Kerberos and LDAP for authentication in Active Directory Server "
+msgstr ""
+"Mit Kerberos und LDAP für die Authentifizierung an einem „Active Directory "
+"Server“ "
+
+#: authentication.pm:106 authentication.pm:140 authentication.pm:159
+#: authentication.pm:160 authentication.pm:186 authentication.pm:210
+#: authentication.pm:881
+#, c-format
+msgid " "
+msgstr " "
+
+#: authentication.pm:107 authentication.pm:141 authentication.pm:187
+#: authentication.pm:211
+#, c-format
+msgid "Welcome to the Authentication Wizard"
+msgstr "Willkommen im Authentifizierungsassistenten"
+
+#: authentication.pm:109
+#, c-format
+msgid ""
+"You have selected LDAP authentication. Please review the configuration "
+"options below "
+msgstr ""
+"Sie haben LDAP-Authentifizierung gewählt. Bitte überprüfen Sie die unten "
+"stehenden Einstellungsmöglichkeiten "
+
+#: authentication.pm:111 authentication.pm:166
+#, c-format
+msgid "LDAP Server"
+msgstr "LDAP-Server"
+
+#: authentication.pm:112 authentication.pm:167
+#, c-format
+msgid "Base dn"
+msgstr "Base dn"
+
+#: authentication.pm:113
+#, c-format
+msgid "Fetch base Dn "
+msgstr "Hole die Base Dn"
+
+#: authentication.pm:115 authentication.pm:170
+#, c-format
+msgid "Use encrypt connection with TLS "
+msgstr "Verwende eine verschlüsselte Verbindung mit TLS "
+
+#: authentication.pm:116 authentication.pm:171
+#, c-format
+msgid "Download CA Certificate "
+msgstr "Lade das CA-Zertifikat herunter "
+
+#: authentication.pm:118 authentication.pm:151
+#, c-format
+msgid "Use Disconnect mode "
+msgstr "Verwende den Offline-Modus "
+
+#: authentication.pm:119 authentication.pm:172
+#, c-format
+msgid "Use anonymous BIND "
+msgstr "anonymes BIND verwenden "
+
+#: authentication.pm:120 authentication.pm:123 authentication.pm:125
+#: authentication.pm:129
+#, c-format
+msgid " "
+msgstr " "
+
+#: authentication.pm:121 authentication.pm:173
+#, c-format
+msgid "Bind DN "
+msgstr "Bind DN "
+
+#: authentication.pm:122 authentication.pm:174
+#, c-format
+msgid "Bind Password "
+msgstr "BIND Passwort "
+
+#: authentication.pm:124
+#, c-format
+msgid "Advanced path for group "
+msgstr "Fortgeschrittener Pfad für Gruppe "
+
+#: authentication.pm:126
+#, c-format
+msgid "Password base"
+msgstr "Passwort-Datenbank"
+
+#: authentication.pm:127
+#, c-format
+msgid "Group base"
+msgstr "Gruppen-Datenbank"
+
+#: authentication.pm:128
+#, c-format
+msgid "Shadow base"
+msgstr "Shadow-Datenbank"
+
+#: authentication.pm:143
+#, c-format
+msgid ""
+"You have selected Kerberos 5 authentication. Please review the configuration "
+"options below "
+msgstr ""
+"Sie haben die „Kerberos 5“-Authentifizierung gewählt. Bitte überprüfen Sie "
+"die unten stehenden Einstellungsmöglichkeiten "
+
+#: authentication.pm:145
+#, c-format
+msgid "Realm "
+msgstr "Bereich "
+
+#: authentication.pm:147
+#, c-format
+msgid "KDCs Servers"
+msgstr "KDCs-Server"
+
+#: authentication.pm:149
+#, c-format
+msgid "Use DNS to locate KDC for the realm"
+msgstr "Benutze DNS um KDC für den Bereich zu lokalisieren"
+
+#: authentication.pm:150
+#, c-format
+msgid "Use DNS to locate realms"
+msgstr "Benutze DNS, um Bereiche zu lokalisieren"
+
+#: authentication.pm:155
+#, c-format
+msgid "Use local file for users information"
+msgstr "Lokale Datei für Benutzerinformation verwenden"
+
+#: authentication.pm:156
+#, c-format
+msgid "Use LDAP for users information"
+msgstr "Nutze LDAP für die Benutzerinformationen"
+
+#: authentication.pm:162
+#, c-format
+msgid ""
+"You have selected Kerberos 5 for authentication, now you must choose the "
+"type of users information "
+msgstr ""
+"Sie haben die „Kerberos 5“-Authentifizierung gewählt. Nun müssen Sie den Typ "
+"der Benutzerinformation auswählen "
+
+#: authentication.pm:168
+#, c-format
+msgid "Fetch base DN "
+msgstr "Hole die Base DN "
+
+#: authentication.pm:189
+#, c-format
+msgid ""
+"You have selected NIS authentication. Please review the configuration "
+"options below "
+msgstr ""
+"Sie haben die-NIS Authentifizierung gewählt. Bitte überprüfen Sie die unten "
+"stehenden Einstellungsmöglichkeiten "
+
+#: authentication.pm:191
+#, c-format
+msgid "NIS Domain"
+msgstr "NIS-Domäne"
+
+#: authentication.pm:192
+#, c-format
+msgid "NIS Server"
+msgstr "NIS-Server"
+
+#: authentication.pm:213
+#, c-format
+msgid ""
+"You have selected Windows Domain authentication. Please review the "
+"configuration options below "
+msgstr ""
+"Sie haben die „Windows Domain“-Authentifizierung gewählt. Bitte überprüfen "
+"Sie die unten stehenden Einstellungsmöglichkeiten "
+
+#: authentication.pm:217
+#, c-format
+msgid "Domain Model "
+msgstr "Domänen-Modell "
+
+#: authentication.pm:219
+#, c-format
+msgid "Active Directory Realm "
+msgstr "Active Directory Bereich "
+
+#: authentication.pm:220
+#, c-format
+msgid "DNS Domain"
+msgstr "DNS-Domäne"
+
+#: authentication.pm:221
+#, c-format
+msgid "DC Server"
+msgstr "DC-Server"
+
+#: authentication.pm:235 authentication.pm:251
+#, c-format
+msgid "Authentication"
+msgstr "Authentifizierung"
+
+#: authentication.pm:237
+#, c-format
+msgid "Authentication method"
+msgstr "Authentifizierungsmethode"
+
+#. -PO: keep this short or else the buttons will not fit in the window
+#: authentication.pm:242
+#, c-format
+msgid "No password"
+msgstr "Kein Passwort"
+
+#: authentication.pm:263
+#, c-format
+msgid "This password is too short (it must be at least %d characters long)"
+msgstr "Dieses Passwort ist zu kurz (es muss mindestens %d Zeichen lang sein)!"
+
+#: authentication.pm:375
+#, c-format
+msgid "Cannot use broadcast with no NIS domain"
+msgstr "Broadcast kann nicht ohne NIS-Domäne verwendet werden"
+
+#: authentication.pm:876
+#, c-format
+msgid "Select file"
+msgstr "Datei auswählen"
+
+#: authentication.pm:882
+#, c-format
+msgid "Domain Windows for authentication : "
+msgstr "Windows Domäne für Authentifizierung : "
+
+#: authentication.pm:884
+#, c-format
+msgid "Domain Admin User Name"
+msgstr "Benutzername des Domänen-Administrators"
+
+#: authentication.pm:885
+#, c-format
+msgid "Domain Admin Password"
+msgstr "Passwort des Domänen-Administrators"
+
+#. -PO: these messages will be displayed at boot time in the BIOS, use only ASCII (7bit)
+#: bootloader.pm:1307
+#, c-format
+msgid ""
+"Welcome to the operating system chooser!\n"
+"\n"
+"Choose an operating system from the list above or\n"
+"wait for default boot.\n"
+"\n"
+msgstr ""
+"Willkommen zum Bootloader!\n"
+"\n"
+"Markieren Sie in obiger Liste ein Betriebssystem\n"
+"oder warten Sie auf das Starten des Standard-Betriebssystems.\n"
+"\n"
+
+#: bootloader.pm:1478
+#, c-format
+msgid "LILO with text menu"
+msgstr "LILO mit Textmenü"
+
+#: bootloader.pm:1479
+#, c-format
+msgid "GRUB2 with graphical menu"
+msgstr "GRUB2 mit grafischem Menü"
+
+#: bootloader.pm:1480
+#, c-format
+msgid "GRUB2 with text menu"
+msgstr "GRUB2 mit Textmenü"
+
+#: bootloader.pm:1481
+#, c-format
+msgid "GRUB with graphical menu"
+msgstr "GRUB mit grafischem Menü"
+
+#: bootloader.pm:1482
+#, c-format
+msgid "GRUB with text menu"
+msgstr "GRUB mit Textmenü"
+
+#: bootloader.pm:1483
+#, c-format
+msgid "rEFInd with graphical menu"
+msgstr "rEFInd mit grafischem Menü"
+
+#: bootloader.pm:1484
+#, c-format
+msgid "U-Boot/Extlinux with text menu"
+msgstr "U-Boot/Extlinux mit Textmenü"
+
+#: bootloader.pm:1572
+#, c-format
+msgid "not enough room in /boot"
+msgstr "Sie haben nicht genug Platz in /boot"
+
+#: bootloader.pm:2831
+#, c-format
+msgid ""
+"Your bootloader configuration must be updated because partition has been "
+"renumbered"
+msgstr ""
+"Ihre Bootloaderkonfiguration muss geändert werden, da sich Ihre "
+"Partitionsnummerierung geändert hat"
+
+#: bootloader.pm:2844
+#, c-format
+msgid ""
+"The bootloader cannot be installed correctly. You have to boot rescue and "
+"choose \"%s\""
+msgstr ""
+"Der Bootloader kann nicht richtig installiert werden. Sie müssen ins "
+"Rettungssystem booten und „%s“ wählen"
+
+#: bootloader.pm:2845
+#, c-format
+msgid "Re-install Boot Loader"
+msgstr "Bootloader neu installieren"
+
+#: common.pm:271
+#, c-format
+msgid "B"
+msgstr "B"
+
+#: common.pm:271
+#, c-format
+msgid "KB"
+msgstr "KB"
+
+#: common.pm:271
+#, c-format
+msgid "MB"
+msgstr "MB"
+
+#: common.pm:271
+#, c-format
+msgid "GB"
+msgstr "GB"
+
+#: common.pm:271 common.pm:280
+#, c-format
+msgid "TB"
+msgstr "TB"
+
+#. -PO: here, "2:30" is remaining installation time (eg: "2:30" == 2 hour & 30 minutes)
+#: common.pm:288
+#, c-format
+msgid "%02d:%02d"
+msgstr "%02d:%02d"
+
+#: common.pm:290
+#, c-format
+msgid "%d minutes"
+msgstr "%d Minuten"
+
+#: common.pm:292
+#, c-format
+msgid "1 minute"
+msgstr "1 Minute"
+
+#: common.pm:294
+#, c-format
+msgid "%d seconds"
+msgstr "%d Sekunden"
+
+#: diskdrake/dav.pm:17
+#, c-format
+msgid ""
+"WebDAV is a protocol that allows you to mount a web server's directory\n"
+"locally, and treat it like a local filesystem (provided the web server is\n"
+"configured as a WebDAV server). If you would like to add WebDAV mount\n"
+"points, select \"New\"."
+msgstr ""
+"WebDAV ist ein Protokoll, dass es Ihnen erlaubt, Webserver-Verzeichnisse\n"
+"einzuhängen, sodass Sie diese wie bei lokalen Dateisystemen verwenden\n"
+"können (sofern der Webserver als WebDAV-Server eingerichtet wurde). \n"
+"Falls Sie Einhängepunkte für WebDAV hinzufügen wollen, wählen Sie\n"
+"„Neu“."
+
+#: diskdrake/dav.pm:25
+#, c-format
+msgid "New"
+msgstr "Neu"
+
+#: diskdrake/dav.pm:63 diskdrake/interactive.pm:418 diskdrake/smbnfs_gtk.pm:75
+#, c-format
+msgid "Unmount"
+msgstr "Aushängen"
+
+#: diskdrake/dav.pm:64 diskdrake/interactive.pm:414 diskdrake/smbnfs_gtk.pm:76
+#, c-format
+msgid "Mount"
+msgstr "Einhängen"
+
+#: diskdrake/dav.pm:65
+#, c-format
+msgid "Server"
+msgstr "Server"
+
+#: diskdrake/dav.pm:66 diskdrake/interactive.pm:408
+#: diskdrake/interactive.pm:727 diskdrake/interactive.pm:745
+#: diskdrake/interactive.pm:749 diskdrake/removable.pm:23
+#: diskdrake/smbnfs_gtk.pm:79
+#, c-format
+msgid "Mount point"
+msgstr "Einhängepunkt"
+
+#: diskdrake/dav.pm:67 diskdrake/interactive.pm:410
+#: diskdrake/interactive.pm:1212 diskdrake/removable.pm:24
+#: diskdrake/smbnfs_gtk.pm:80
+#, c-format
+msgid "Options"
+msgstr "Optionen"
+
+#: diskdrake/dav.pm:68 interactive.pm:390 interactive/gtk.pm:456
+#, c-format
+msgid "Remove"
+msgstr "Entfernen"
+
+#: diskdrake/dav.pm:69 diskdrake/hd_gtk.pm:222 diskdrake/removable.pm:26
+#: diskdrake/smbnfs_gtk.pm:82 interactive/http.pm:151
+#, c-format
+msgid "Done"
+msgstr "Fertig"
+
+#: diskdrake/dav.pm:78 diskdrake/hd_gtk.pm:154 diskdrake/hd_gtk.pm:326
+#: diskdrake/interactive.pm:246 diskdrake/interactive.pm:259
+#: diskdrake/interactive.pm:460 diskdrake/interactive.pm:535
+#: diskdrake/interactive.pm:553 diskdrake/interactive.pm:558
+#: diskdrake/interactive.pm:717 diskdrake/interactive.pm:1050
+#: diskdrake/interactive.pm:1103 diskdrake/interactive.pm:1259
+#: diskdrake/interactive.pm:1272 diskdrake/interactive.pm:1275
+#: diskdrake/interactive.pm:1545 diskdrake/smbnfs_gtk.pm:42 do_pkgs.pm:49
+#: do_pkgs.pm:54 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:108 do_pkgs.pm:142
+#: fsedit.pm:282 interactive/http.pm:117 interactive/http.pm:118
+#: modules/interactive.pm:19 scanner.pm:94 scanner.pm:105 scanner.pm:112
+#: scanner.pm:119 wizards.pm:95 wizards.pm:99 wizards.pm:121
+#, c-format
+msgid "Error"
+msgstr "Fehler"
+
+#: diskdrake/dav.pm:86
+#, c-format
+msgid "Please enter the WebDAV server URL"
+msgstr "Bitte geben Sie die WebDAV-Server-URL an"
+
+#: diskdrake/dav.pm:90
+#, c-format
+msgid "The URL must begin with http:// or https://"
+msgstr "Die URL muss mit „http://“ oder „https://“ beginnen!"
+
+#: diskdrake/dav.pm:106
+#, c-format
+msgid "Are you sure you want to delete this mount point?"
+msgstr "Sind Sie sicher, dass Sie diesen Einhängepunkt löschen wollen?"
+
+#: diskdrake/dav.pm:124
+#, c-format
+msgid "Server: "
+msgstr "Server: "
+
+#: diskdrake/dav.pm:125 diskdrake/interactive.pm:505
+#: diskdrake/interactive.pm:1421 diskdrake/interactive.pm:1505
+#, c-format
+msgid "Mount point: "
+msgstr "Einhängepunkt: "
+
+#: diskdrake/dav.pm:126 diskdrake/interactive.pm:1512
+#, c-format
+msgid "Options: %s"
+msgstr "Optionen: %s"
+
+#: diskdrake/hd_gtk.pm:61 diskdrake/interactive.pm:300
+#: diskdrake/smbnfs_gtk.pm:22 fs/mount_point.pm:113
+#: fs/partitioning_wizard.pm:80 fs/partitioning_wizard.pm:278
+#: fs/partitioning_wizard.pm:286 fs/partitioning_wizard.pm:324
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:541
+#: fs/partitioning_wizard.pm:626 fs/partitioning_wizard.pm:629
+#, c-format
+msgid "Partitioning"
+msgstr "Partitionierung"
+
+#: diskdrake/hd_gtk.pm:74
+#, c-format
+msgid "Click on a partition, choose a filesystem type then choose an action"
+msgstr ""
+"Klicken Sie auf eine Partition, wählen Sie den Dateisystem-Typ, dann wählen "
+"Sie eine Aktion"
+
+#: diskdrake/hd_gtk.pm:134 diskdrake/interactive.pm:1233
+#: diskdrake/interactive.pm:1243 diskdrake/interactive.pm:1297
+#, c-format
+msgid "Read carefully"
+msgstr "Lesen Sie bitte aufmerksam"
+
+#: diskdrake/hd_gtk.pm:134
+#, c-format
+msgid "Please make a backup of your data first"
+msgstr "Bitte machen Sie zuerst eine Sicherheitskopie Ihrer Daten!"
+
+#: diskdrake/hd_gtk.pm:135 diskdrake/interactive.pm:239
+#, c-format
+msgid "Exit"
+msgstr "Verlassen"
+
+#: diskdrake/hd_gtk.pm:135
+#, c-format
+msgid "Continue"
+msgstr "Weiter"
+
+#: diskdrake/hd_gtk.pm:217 fs/partitioning_wizard.pm:602 interactive.pm:778
+#: interactive/gtk.pm:812 interactive/gtk.pm:830 interactive/gtk.pm:862
+#: ugtk2.pm:934 ugtk3.pm:1030
+#, c-format
+msgid "Help"
+msgstr "Hilfe"
+
+#: diskdrake/hd_gtk.pm:260
+#, c-format
+msgid ""
+"You have one big Microsoft Windows partition.\n"
+"I suggest you first resize that partition\n"
+"(click on it, then click on \"Resize\")"
+msgstr ""
+"Sie haben nur eine große Windows-Partition.\n"
+"Ich rate Ihnen, diese Partition erst zu verkleinern\n"
+"(Wählen Sie sie an und drücken Sie dann „Größe ändern“)"
+
+#: diskdrake/hd_gtk.pm:262
+#, c-format
+msgid "Please click on a partition"
+msgstr "Bitte klicken Sie auf eine Partition"
+
+#: diskdrake/hd_gtk.pm:276 diskdrake/smbnfs_gtk.pm:63
+#, c-format
+msgid "Details"
+msgstr "Details"
+
+#: diskdrake/hd_gtk.pm:326
+#, c-format
+msgid "No hard disk drives found"
+msgstr "Keine Festplattenlaufwerke gefunden"
+
+#: diskdrake/hd_gtk.pm:365
+#, c-format
+msgid "Unknown"
+msgstr "Unbekannt"
+
+#: diskdrake/hd_gtk.pm:432
+#, c-format
+msgid "Ext4"
+msgstr "Ext4"
+
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
+msgid "XFS"
+msgstr "XFS"
+
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Swap"
+msgstr "Swap"
+
+#: diskdrake/hd_gtk.pm:432 fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Windows"
+msgstr "Windows"
+
+#: diskdrake/hd_gtk.pm:433 fs/partitioning_wizard.pm:449 services.pm:215
+#, c-format
+msgid "Other"
+msgstr "Andere"
+
+#: diskdrake/hd_gtk.pm:433 diskdrake/interactive.pm:1427
+#: fs/partitioning_wizard.pm:449
+#, c-format
+msgid "Empty"
+msgstr "Leer"
+
+#: diskdrake/hd_gtk.pm:440
+#, c-format
+msgid "Filesystem types:"
+msgstr "Dateisystemtypen:"
+
+#: diskdrake/hd_gtk.pm:461
+#, c-format
+msgid "This partition is already empty"
+msgstr "Diese Partition ist bereits leer"
+
+#: diskdrake/hd_gtk.pm:470
+#, c-format
+msgid "Use ``Unmount'' first"
+msgstr "Verwenden Sie erst „Aushängen“"
+
+#: diskdrake/hd_gtk.pm:470
+#, c-format
+msgid "Use ``%s'' instead (in expert mode)"
+msgstr "Verwenden Sie „%s“ stattdessen (im Expertenmodus)"
+
+#: diskdrake/hd_gtk.pm:470 diskdrake/interactive.pm:409
+#: diskdrake/interactive.pm:644 diskdrake/removable.pm:25
+#: diskdrake/removable.pm:48
+#, c-format
+msgid "Type"
+msgstr "Typ"
+
+#: diskdrake/interactive.pm:210
+#, c-format
+msgid "Choose another partition"
+msgstr "Wählen Sie eine andere Partition"
+
+#: diskdrake/interactive.pm:210
+#, c-format
+msgid "Choose a partition"
+msgstr "Wählen Sie eine Partition"
+
+#: diskdrake/interactive.pm:272 diskdrake/interactive.pm:382
+#: interactive/curses.pm:532
+#, c-format
+msgid "More"
+msgstr "Mehr"
+
+#: diskdrake/interactive.pm:280 diskdrake/interactive.pm:293
+#: diskdrake/interactive.pm:1343 mygtk2.pm:1228 mygtk3.pm:1311
+#, c-format
+msgid "Confirmation"
+msgstr "Bestätigung"
+
+#: diskdrake/interactive.pm:280
+#, c-format
+msgid "Continue anyway?"
+msgstr "Wollen Sie trotzdem fortfahren?"
+
+#: diskdrake/interactive.pm:285
+#, c-format
+msgid "Quit without saving"
+msgstr "Beenden ohne speichern"
+
+#: diskdrake/interactive.pm:285
+#, c-format
+msgid "Quit without writing the partition table?"
+msgstr "Beenden ohne die Partitionstabelle zu speichern?"
+
+#: diskdrake/interactive.pm:293
+#, c-format
+msgid "Do you want to save the /etc/fstab modifications?"
+msgstr "Wollen Sie die Änderungen in /etc/fstab speichern?"
+
+#: diskdrake/interactive.pm:300 fs/partitioning_wizard.pm:324
+#, c-format
+msgid "You need to reboot for the partition table modifications to take effect"
+msgstr ""
+"Sie müssen das System neu starten, damit die Änderungen an der "
+"Partitionstabelle übernommen werden können."
+
+#: diskdrake/interactive.pm:305
+#, c-format
+msgid ""
+"You should format partition %s.\n"
+"Otherwise no entry for mount point %s will be written in fstab.\n"
+"Quit anyway?"
+msgstr ""
+"Sie sollten die Partition %s formatieren.\n"
+"Sonst wird kein Eintrag für den Einhängepunkt %s in fstab geschrieben.\n"
+"Trotzdem verlassen?"
+
+#: diskdrake/interactive.pm:318
+#, c-format
+msgid "Clear all"
+msgstr "Alles löschen"
+
+#: diskdrake/interactive.pm:319
+#, c-format
+msgid "Auto allocate"
+msgstr "Automatisch erstellen"
+
+#: diskdrake/interactive.pm:325
+#, c-format
+msgid "Normal mode"
+msgstr "Normalmodus"
+
+#: diskdrake/interactive.pm:325
+#, c-format
+msgid "Expert mode"
+msgstr "Expertenmodus"
+
+#: diskdrake/interactive.pm:337
+#, c-format
+msgid "Hard disk drive information"
+msgstr "Festplatten-Information"
+
+#: diskdrake/interactive.pm:371
+#, c-format
+msgid "All primary partitions are used"
+msgstr "Alle Primärpartitionen sind in Gebrauch"
+
+#: diskdrake/interactive.pm:372
+#, c-format
+msgid "I cannot add any more partitions"
+msgstr "Es können keine weiteren Partitionen hinzugefügt werden."
+
+#: diskdrake/interactive.pm:373
+#, c-format
+msgid ""
+"To have more partitions, please delete one to be able to create an extended "
+"partition"
+msgstr ""
+"Um mehr Partitionen einrichten zu können, müssen Sie zunächst eine Partition "
+"löschen und anschließend eine erweiterte Partition erzeugen."
+
+#: diskdrake/interactive.pm:384
+#, c-format
+msgid "Reload partition table"
+msgstr "Partitionstabelle neu laden"
+
+#: diskdrake/interactive.pm:391
+#, c-format
+msgid "Detailed information"
+msgstr "Ausführliche Informationen"
+
+#: diskdrake/interactive.pm:407
+#, c-format
+msgid "View"
+msgstr "Ansicht"
+
+#: diskdrake/interactive.pm:412 diskdrake/interactive.pm:860
+#, c-format
+msgid "Resize"
+msgstr "Größe ändern"
+
+#: diskdrake/interactive.pm:413
+#, c-format
+msgid "Format"
+msgstr "Variante"
+
+#: diskdrake/interactive.pm:415 diskdrake/interactive.pm:1013
+#, c-format
+msgid "Add to RAID"
+msgstr "Zum RAID hinzufügen"
+
+#: diskdrake/interactive.pm:416 diskdrake/interactive.pm:1032
+#, c-format
+msgid "Add to LVM"
+msgstr "Zum LVM hinzufügen"
+
+#: diskdrake/interactive.pm:417
+#, c-format
+msgid "Use"
+msgstr "Nutze"
+
+#: diskdrake/interactive.pm:419
+#, c-format
+msgid "Delete"
+msgstr "Löschen"
+
+#: diskdrake/interactive.pm:420
+#, c-format
+msgid "Remove from RAID"
+msgstr "Aus dem RAID löschen"
+
+#: diskdrake/interactive.pm:421
+#, c-format
+msgid "Remove from LVM"
+msgstr "Aus dem LVM löschen"
+
+#: diskdrake/interactive.pm:422
+#, c-format
+msgid "Remove from dm"
+msgstr "Aus dem DM entfernen"
+
+#: diskdrake/interactive.pm:423
+#, c-format
+msgid "Modify RAID"
+msgstr "RAID modifizieren"
+
+#: diskdrake/interactive.pm:424
+#, c-format
+msgid "Use for loopback"
+msgstr "Als Loopback verwenden"
+
+#: diskdrake/interactive.pm:434
+#, c-format
+msgid "Create"
+msgstr "Erzeugen"
+
+#: diskdrake/interactive.pm:460
+#, c-format
+msgid "Failed to mount partition"
+msgstr "Kann die Partition nicht einhängen"
+
+#: diskdrake/interactive.pm:494 diskdrake/interactive.pm:496
+#, c-format
+msgid "Create a new partition"
+msgstr "Eine neue Partition erzeugen"
+
+#: diskdrake/interactive.pm:498
+#, c-format
+msgid "Start sector: "
+msgstr "Anfangssektor: "
+
+#: diskdrake/interactive.pm:501 diskdrake/interactive.pm:1118
+#, c-format
+msgid "Size in MB: "
+msgstr "Größe in MB:"
+
+#: diskdrake/interactive.pm:503 diskdrake/interactive.pm:1119
+#, c-format
+msgid "Filesystem type: "
+msgstr "Dateisystemtyp: "
+
+#: diskdrake/interactive.pm:513
+#, c-format
+msgid "Preference: "
+msgstr "Einstellung: "
+
+#: diskdrake/interactive.pm:516
+#, c-format
+msgid "Logical volume name "
+msgstr "Name für logisches Laufwerk"
+
+#: diskdrake/interactive.pm:518
+#, c-format
+msgid "Encrypt partition"
+msgstr "Partition verschlüsseln"
+
+#: diskdrake/interactive.pm:519
+#, c-format
+msgid "Encryption key "
+msgstr "Verschlüsselungs-Passwort "
+
+#: diskdrake/interactive.pm:520 diskdrake/interactive.pm:1549
+#, c-format
+msgid "Encryption key (again)"
+msgstr "Verschlüsselungs-Passwort (erneut)"
+
+#: diskdrake/interactive.pm:532 diskdrake/interactive.pm:1545
+#, c-format
+msgid "The encryption keys do not match"
+msgstr "Die Verschlüsselungs-Passwörter stimmen nicht überein"
+
+#: diskdrake/interactive.pm:533
+#, c-format
+msgid "Missing encryption key"
+msgstr "Fehlendes Verschlüsselungs-Passwort"
+
+#: diskdrake/interactive.pm:553
+#, c-format
+msgid ""
+"You cannot create a new partition\n"
+"(since you reached the maximal number of primary partitions).\n"
+"First remove a primary partition and create an extended partition."
+msgstr ""
+"Sie können keine neue Partition anlegen\n"
+"(da das Maximum an primären Partitionen bereits erreicht wurde).\n"
+"Entfernen Sie zunächst eine primäre Partition und legen Sie dann eine "
+"erweiterte Partition an."
+
+#: diskdrake/interactive.pm:605
+#, c-format
+msgid "Remove the loopback file?"
+msgstr "Die Loopback-Datei entfernen?"
+
+#: diskdrake/interactive.pm:625
+#, c-format
+msgid ""
+"After changing type of partition %s, all data on this partition will be lost"
+msgstr ""
+"Nach Änderung des Partitionstyps von %s werden sämtliche Daten darauf "
+"gelöscht."
+
+#: diskdrake/interactive.pm:641
+#, c-format
+msgid "Change partition type"
+msgstr "Partitionstyp ändern"
+
+#: diskdrake/interactive.pm:643 diskdrake/removable.pm:47
+#, c-format
+msgid "Which filesystem do you want?"
+msgstr "Welches Dateisystem wollen Sie verwenden?"
+
+#: diskdrake/interactive.pm:650
+#, c-format
+msgid "Switching from %s to %s"
+msgstr "Wechsle von %s zu %s"
+
+#: diskdrake/interactive.pm:685
+#, c-format
+msgid "Set volume label"
+msgstr "Datenträgerbezeichnung festlegen"
+
+#: diskdrake/interactive.pm:687
+#, c-format
+msgid "Beware, this will be written to disk as soon as you validate!"
+msgstr ""
+"Beachten Sie! Dies wird auf die Platte geschrieben, sobald Sie bestätigen!"
+
+#: diskdrake/interactive.pm:688
+#, c-format
+msgid "Beware, this will be written to disk only after formatting!"
+msgstr ""
+"Beachten Sie! Dies wird nur nach einer Formatierung auf der Platte "
+"gespeichert!"
+
+#: diskdrake/interactive.pm:690
+#, c-format
+msgid "Which volume label?"
+msgstr "Welche Datenträgerbezeichnung?"
+
+#: diskdrake/interactive.pm:691
+#, c-format
+msgid "Label:"
+msgstr "Bezeichnung:"
+
+#: diskdrake/interactive.pm:712
+#, c-format
+msgid "Where do you want to mount the loopback file %s?"
+msgstr "Wo wollen Sie die Loopback-Datei %s einhängen?"
+
+#: diskdrake/interactive.pm:713
+#, c-format
+msgid "Where do you want to mount device %s?"
+msgstr "Wo wollen Sie das Gerät %s einhängen?"
+
+#: diskdrake/interactive.pm:718
+#, c-format
+msgid ""
+"Cannot unset mount point as this partition is used for loop back.\n"
+"Remove the loopback first"
+msgstr ""
+"Der Einhängepunkt kann nicht entfernt werden, da diese Partition für ein "
+"„Loopback“ genutzt wird.\n"
+"Entfernen Sie zuerst das „Loopback“"
+
+#: diskdrake/interactive.pm:748
+#, c-format
+msgid "Where do you want to mount %s?"
+msgstr "Wo wollen Sie „%s“ einhängen?"
+
+#: diskdrake/interactive.pm:798 diskdrake/interactive.pm:901
+#: fs/partitioning_wizard.pm:165 fs/partitioning_wizard.pm:247
+#, c-format
+msgid "Resizing"
+msgstr "Größe ändern"
+
+#: diskdrake/interactive.pm:798
+#, c-format
+msgid "Computing FAT filesystem bounds"
+msgstr "Errechne die Grenzen des FAT-Dateisystems"
+
+#: diskdrake/interactive.pm:847
+#, c-format
+msgid "This partition is not resizeable"
+msgstr "Die Größe dieser Partition ist nicht änderbar"
+
+#: diskdrake/interactive.pm:852
+#, c-format
+msgid "All data on this partition should be backed up"
+msgstr "Für alle Daten auf dieser Partition sollte ein Backup angelegt werden."
+
+#: diskdrake/interactive.pm:854
+#, c-format
+msgid "After resizing partition %s, all data on this partition will be lost"
+msgstr ""
+"Durch Veränderung der Partitionsgröße von %s, gehen sämtliche Daten darauf "
+"verloren."
+
+#: diskdrake/interactive.pm:861
+#, c-format
+msgid "Choose the new size"
+msgstr "Wählen Sie die neue Größe"
+
+#: diskdrake/interactive.pm:862
+#, c-format
+msgid "New size in MB: "
+msgstr "Neue Größe in MB:"
+
+#: diskdrake/interactive.pm:863
+#, c-format
+msgid "Minimum size: %s MB"
+msgstr "Minimale Größe: %s MB"
+
+#: diskdrake/interactive.pm:864
+#, c-format
+msgid "Maximum size: %s MB"
+msgstr "Maximale Größe: %s MB"
+
+#: diskdrake/interactive.pm:912 fs/partitioning_wizard.pm:255
+#, c-format
+msgid ""
+"To ensure data integrity after resizing the partition(s),\n"
+"filesystem checks will be run on your next boot into Microsoft Windows®"
+msgstr ""
+"Um nach der Größenänderung der Partition(en) die Datenintegrität\n"
+"zu gewährleisten, wird Microsoft Windows® beim nächsten Hochfahren eine\n"
+"Dateisystemprüfung durchführen."
+
+#: diskdrake/interactive.pm:981 diskdrake/interactive.pm:1540
+#, c-format
+msgid "Filesystem encryption key"
+msgstr "Dateisystem-Schlüssel"
+
+#: diskdrake/interactive.pm:982
+#, c-format
+msgid "Enter your filesystem encryption key"
+msgstr "Geben Sie Ihren Schlüssel für die Dateisystemverschlüsselung an"
+
+#: diskdrake/interactive.pm:983 diskdrake/interactive.pm:1548
+#, c-format
+msgid "Encryption key"
+msgstr "Schlüssel"
+
+#: diskdrake/interactive.pm:990
+#, c-format
+msgid "Invalid key"
+msgstr "Ungültiger Schlüssel"
+
+#: diskdrake/interactive.pm:1013
+#, c-format
+msgid "Choose an existing RAID to add to"
+msgstr "Wählen Sie ein vorhandenes RAID"
+
+#: diskdrake/interactive.pm:1015 diskdrake/interactive.pm:1034
+#, c-format
+msgid "new"
+msgstr "neu"
+
+#: diskdrake/interactive.pm:1032
+#, c-format
+msgid "Choose an existing LVM to add to"
+msgstr "Wählen Sie einen vorhandenen LVM"
+
+#: diskdrake/interactive.pm:1044 diskdrake/interactive.pm:1053
+#, c-format
+msgid "LVM name"
+msgstr "LVM-Name"
+
+#: diskdrake/interactive.pm:1045
+#, c-format
+msgid "Enter a name for the new LVM volume group"
+msgstr "Geben Sie einen Namen für die neue LVM-Gruppe an"
+
+#: diskdrake/interactive.pm:1050
+#, c-format
+msgid "\"%s\" already exists"
+msgstr "\"%s\" existiert bereits."
+
+#: diskdrake/interactive.pm:1058
+#, c-format
+msgid "Setting up LVM"
+msgstr "Konfiguriere den LVM"
+
+#: diskdrake/interactive.pm:1083
+#, c-format
+msgid ""
+"Physical volume %s is still in use.\n"
+"Do you want to move used physical extents on this volume to other volumes?"
+msgstr ""
+"Der Datenträger %s wird noch verwendet.\n"
+"Möchten Sie verwendete physische Erweiterungen auf diesem Datenträger auf "
+"andere Datenträger verschieben?"
+
+#: diskdrake/interactive.pm:1085
+#, c-format
+msgid "Moving physical extents"
+msgstr "Physische Erweiterungen verschieben"
+
+#: diskdrake/interactive.pm:1103
+#, c-format
+msgid "This partition cannot be used for loopback"
+msgstr "Diese Partition kann nicht für „Loopback“ verwendet werden"
+
+#: diskdrake/interactive.pm:1116
+#, c-format
+msgid "Loopback"
+msgstr "Loopback"
+
+#: diskdrake/interactive.pm:1117
+#, c-format
+msgid "Loopback file name: "
+msgstr "Name der Loopback-Datei: "
+
+#: diskdrake/interactive.pm:1122
+#, c-format
+msgid "Give a file name"
+msgstr "Dateinamen angeben"
+
+#: diskdrake/interactive.pm:1125
+#, c-format
+msgid "File is already used by another loopback, choose another one"
+msgstr ""
+"Diese Datei wird bereits von einer anderen Loopback-Verknüpfung verwendet, "
+"wählen Sie eine andere Datei."
+
+#: diskdrake/interactive.pm:1126
+#, c-format
+msgid "File already exists. Use it?"
+msgstr "Datei existiert bereits. Soll ich sie verwenden?"
+
+#: diskdrake/interactive.pm:1158 diskdrake/interactive.pm:1161
+#, c-format
+msgid "Mount options"
+msgstr "Einhängeoptionen"
+
+#: diskdrake/interactive.pm:1168
+#, c-format
+msgid "Various"
+msgstr "Verschiedene"
+
+#: diskdrake/interactive.pm:1214
+#, c-format
+msgid "device"
+msgstr "Gerät"
+
+#: diskdrake/interactive.pm:1215
+#, c-format
+msgid "level"
+msgstr "Ebene"
+
+#: diskdrake/interactive.pm:1216
+#, c-format
+msgid "chunk size in KiB"
+msgstr "Blockgröße in kB"
+
+#: diskdrake/interactive.pm:1234
+#, c-format
+msgid "Be careful: this operation is dangerous."
+msgstr "Vorsicht: Diese Aktion ist gefährlich."
+
+#: diskdrake/interactive.pm:1250
+#, c-format
+msgid "Partitioning Type"
+msgstr "Partitionierungsart"
+
+#: diskdrake/interactive.pm:1250
+#, c-format
+msgid "What type of partitioning?"
+msgstr "Welcher Partitionstyp?"
+
+#: diskdrake/interactive.pm:1288
+#, c-format
+msgid "You'll need to reboot before the modification can take effect"
+msgstr ""
+"Sie müssen das System neu starten, damit die Änderung übernommen werden kann."
+
+#: diskdrake/interactive.pm:1297
+#, c-format
+msgid "Partition table of drive %s is going to be written to disk"
+msgstr "Die Partitionstabelle der Platte %s wird gespeichert"
+
+#: diskdrake/interactive.pm:1316 fs/format.pm:172 fs/format.pm:179
+#, c-format
+msgid "Formatting partition %s"
+msgstr "Partition %s wird formatiert"
+
+#: diskdrake/interactive.pm:1329
+#, c-format
+msgid "After formatting partition %s, all data on this partition will be lost"
+msgstr ""
+"Nach Formatieren der Partition %s, werden sämtliche Daten darauf gelöscht."
+
+#: diskdrake/interactive.pm:1343 fs/partitioning.pm:50
+#, c-format
+msgid "Check for bad blocks?"
+msgstr "Auf defekte Sektoren überprüfen?"
+
+#: diskdrake/interactive.pm:1358
+#, c-format
+msgid "Move files to the new partition"
+msgstr "Dateien auf die neue Partition verschieben"
+
+#: diskdrake/interactive.pm:1358
+#, c-format
+msgid "Hide files"
+msgstr "Dateien verstecken"
+
+#: diskdrake/interactive.pm:1359
+#, c-format
+msgid ""
+"Directory %s already contains data\n"
+"(%s)\n"
+"\n"
+"You can either choose to move the files into the partition that will be "
+"mounted there or leave them where they are (which results in hiding them by "
+"the contents of the mounted partition)"
+msgstr ""
+"Verzeichnis %s enthält Daten\n"
+"(%s)\n"
+"\n"
+"Sie haben die Wahl, die Daten in die neue Partition zu kopieren oder sie an "
+"dem Ort zu belassen (was zur Folge hat, dass diese durch den Inhalt der "
+"eingehangenen Partition verdeckt werden)"
+
+#: diskdrake/interactive.pm:1374
+#, c-format
+msgid "Moving files to the new partition"
+msgstr "Dateien werden auf die neue Partition verschoben"
+
+#: diskdrake/interactive.pm:1378
+#, c-format
+msgid "Copying %s"
+msgstr "%s wird kopiert"
+
+#: diskdrake/interactive.pm:1382
+#, c-format
+msgid "Removing %s"
+msgstr "%s wird entfernt"
+
+#: diskdrake/interactive.pm:1396
+#, c-format
+msgid "partition %s is now known as %s"
+msgstr "die Partition %s heißt nun %s"
+
+#: diskdrake/interactive.pm:1397
+#, c-format
+msgid "Partitions have been renumbered: "
+msgstr "Die Partitionen wurden neu nummeriert:"
+
+#: diskdrake/interactive.pm:1422 diskdrake/interactive.pm:1487
+#, c-format
+msgid "Device: "
+msgstr "Gerät: "
+
+#: diskdrake/interactive.pm:1423
+#, c-format
+msgid "Volume label: "
+msgstr "Datenträgerbezeichnung: "
+
+#: diskdrake/interactive.pm:1424
+#, c-format
+msgid "UUID: "
+msgstr "UUID: "
+
+#: diskdrake/interactive.pm:1425
+#, c-format
+msgid "DOS drive letter: %s (just a guess)\n"
+msgstr "DOS Laufwerksbuchstabe: %s (vermutlich?)\n"
+
+#: diskdrake/interactive.pm:1429 diskdrake/interactive.pm:1508
+#, c-format
+msgid "Type: "
+msgstr "Typ:"
+
+#: diskdrake/interactive.pm:1431
+#, c-format
+msgid "Start: sector %s\n"
+msgstr "Anfang: Sektor %s\n"
+
+#: diskdrake/interactive.pm:1433
+#, c-format
+msgid "Size: %s (%s%% of disk)"
+msgstr "Größe: %s (%s%% des Datenträgers)"
+
+#: diskdrake/interactive.pm:1435
+#, c-format
+msgid "Size: %s"
+msgstr "Größe: %s"
+
+#: diskdrake/interactive.pm:1437
+#, c-format
+msgid ", %s sectors"
+msgstr ", %s Sektoren"
+
+#: diskdrake/interactive.pm:1439
+#, c-format
+msgid "Cylinder %d to %d\n"
+msgstr "Zylinder %d bis %d\n"
+
+#: diskdrake/interactive.pm:1440
+#, c-format
+msgid "Number of logical extents: %d\n"
+msgstr "Anzahl logischer Erweiterungen: %d\n"
+
+#: diskdrake/interactive.pm:1441
+#, c-format
+msgid "Formatted\n"
+msgstr "Formatiert\n"
+
+#: diskdrake/interactive.pm:1442
+#, c-format
+msgid "Not formatted\n"
+msgstr "Nicht formatiert\n"
+
+#: diskdrake/interactive.pm:1443
+#, c-format
+msgid "Mounted\n"
+msgstr "Eingehängt\n"
+
+#: diskdrake/interactive.pm:1444
+#, c-format
+msgid "RAID %s\n"
+msgstr "RAID %s\n"
+
+#: diskdrake/interactive.pm:1446
+#, c-format
+msgid "Encrypted"
+msgstr "Verschlüsselt"
+
+#: diskdrake/interactive.pm:1448
+#, c-format
+msgid " (mapped on %s)"
+msgstr "(abgebildet auf %s)"
+
+#: diskdrake/interactive.pm:1449
+#, c-format
+msgid " (to map on %s)"
+msgstr "(abzubilden auf %s)"
+
+#: diskdrake/interactive.pm:1450
+#, c-format
+msgid " (inactive)"
+msgstr " (deaktiviert)"
+
+#: diskdrake/interactive.pm:1457
+#, c-format
+msgid ""
+"Loopback file(s):\n"
+" %s\n"
+msgstr ""
+"Loopback-Datei(en):\n"
+" %s\n"
+
+#: diskdrake/interactive.pm:1458
+#, c-format
+msgid ""
+"Partition booted by default\n"
+" (for MS-DOS boot, not for lilo)\n"
+msgstr ""
+"Partition wird standardmäßig geladen\n"
+" (für MS-DOS-Boot, nicht jedoch für LILO)\n"
+
+#: diskdrake/interactive.pm:1460
+#, c-format
+msgid "Level %s\n"
+msgstr "Ebene %s\n"
+
+#: diskdrake/interactive.pm:1461
+#, c-format
+msgid "Chunk size %d KiB\n"
+msgstr "Blockgröße %d kiB\n"
+
+#: diskdrake/interactive.pm:1462
+#, c-format
+msgid "RAID-disks %s\n"
+msgstr "RAID-Platten %s\n"
+
+#: diskdrake/interactive.pm:1464
+#, c-format
+msgid "Loopback file name: %s"
+msgstr "Dateiname des Loopbacks: %s"
+
+#: diskdrake/interactive.pm:1467
+#, c-format
+msgid ""
+"\n"
+"Chances are, this partition is\n"
+"a Driver partition. You should\n"
+"probably leave it alone.\n"
+msgstr ""
+"\n"
+"Es handelt sich mit großer\n"
+"Wahrscheinlichkeit um eine\n"
+"Treiber-Partition. Sie sollten\n"
+"sie daher besser unverändert\n"
+"lassen.\n"
+
+#: diskdrake/interactive.pm:1470
+#, c-format
+msgid ""
+"\n"
+"This special Bootstrap\n"
+"partition is for\n"
+"dual-booting your system.\n"
+msgstr ""
+"\n"
+"Diese spezielle Start-Partition\n"
+"ist für die Verwendung mehrerer\n"
+"Betriebssysteme auf dem selben\n"
+"Rechner.\n"
+
+#: diskdrake/interactive.pm:1479
+#, c-format
+msgid "Free space on %s (%s)"
+msgstr "Freier Speicher auf %s (%s)"
+
+#: diskdrake/interactive.pm:1488
+#, c-format
+msgid "Read-only"
+msgstr "Nur lesbar"
+
+#: diskdrake/interactive.pm:1489
+#, c-format
+msgid "Size: %s\n"
+msgstr "Größe: %s\n"
+
+#: diskdrake/interactive.pm:1490
+#, c-format
+msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
+msgstr "Geometrie: %s Zylinder, %s Köpfe, %s Sektoren\n"
+
+#: diskdrake/interactive.pm:1491
+#, c-format
+msgid "Name: "
+msgstr "Name: "
+
+#: diskdrake/interactive.pm:1492
+#, c-format
+msgid "Medium type: "
+msgstr "Medienart: "
+
+#: diskdrake/interactive.pm:1493
+#, c-format
+msgid "LVM-disks %s\n"
+msgstr "LVM-Platten %s\n"
+
+#: diskdrake/interactive.pm:1494
+#, c-format
+msgid "Partition table type: %s\n"
+msgstr "Partitionstabellentyp: %s\n"
+
+#: diskdrake/interactive.pm:1495
+#, c-format
+msgid "on channel %d id %d\n"
+msgstr "auf Kanal %d ID %d\n"
+
+#: diskdrake/interactive.pm:1541
+#, c-format
+msgid "Choose your filesystem encryption key"
+msgstr "Wählen Sie Ihr Dateisystem Verschlüsselungs-Passwort"
+
+#: diskdrake/interactive.pm:1544
+#, c-format
+msgid "This encryption key is too simple (must be at least %d characters long)"
+msgstr ""
+"Dieses Passwort ist zu einfach (es muss mindestens %d Zeichen lang sein)!"
+
+#: diskdrake/interactive.pm:1551
+#, c-format
+msgid "Encryption algorithm"
+msgstr "Verschlüsselungsalgorithmus"
+
+#: diskdrake/removable.pm:46
+#, c-format
+msgid "Change type"
+msgstr "Typ ändern"
+
+#: diskdrake/smbnfs_gtk.pm:164
+#, c-format
+msgid "Cannot login using username %s (bad password?)"
+msgstr ""
+"Login mit diesem Benutzernamen %s war nicht erfolgreich (falsches Passwort?)"
+
+#: diskdrake/smbnfs_gtk.pm:168 diskdrake/smbnfs_gtk.pm:177
+#, c-format
+msgid "Domain Authentication Required"
+msgstr "Domänen-Authentifizierung nötig"
+
+#: diskdrake/smbnfs_gtk.pm:169
+#, c-format
+msgid "Which username"
+msgstr "Welchen Benutzernamen"
+
+#: diskdrake/smbnfs_gtk.pm:169
+#, c-format
+msgid "Another one"
+msgstr "Anderer"
+
+#: diskdrake/smbnfs_gtk.pm:178
+#, c-format
+msgid ""
+"Please enter your username, password and domain name to access this host."
+msgstr ""
+"Bitte geben Sie Benutzername, Passwort und Domäne an, um sich an diesem "
+"Rechner anzumelden."
+
+#: diskdrake/smbnfs_gtk.pm:180
+#, c-format
+msgid "Username"
+msgstr "Benutzername"
+
+#: diskdrake/smbnfs_gtk.pm:182
+#, c-format
+msgid "Domain"
+msgstr "Domäne"
+
+#: diskdrake/smbnfs_gtk.pm:206
+#, c-format
+msgid "Search servers"
+msgstr "Server suchen"
+
+#: diskdrake/smbnfs_gtk.pm:211
+#, c-format
+msgid "Search for new servers"
+msgstr "Suche nach neuen Servern"
+
+#: do_pkgs.pm:45 do_pkgs.pm:100
+#, c-format
+msgid "The package %s needs to be installed. Do you want to install it?"
+msgstr "Das Paket %s muss installiert sein. Soll es installiert werden?"
+
+#: do_pkgs.pm:49 do_pkgs.pm:79 do_pkgs.pm:103 do_pkgs.pm:142
+#, c-format
+msgid "Could not install the %s package!"
+msgstr "Das %s Paket konnte nicht installiert werden!"
+
+#: do_pkgs.pm:54 do_pkgs.pm:108
+#, c-format
+msgid "Mandatory package %s is missing"
+msgstr "Das zwingend benötigte Paket „%s“ fehlt."
+
+#: do_pkgs.pm:74 do_pkgs.pm:137
+#, c-format
+msgid "The following packages need to be installed:\n"
+msgstr "Die folgenden Pakete müssen installiert werden:\n"
+
+#: do_pkgs.pm:342
+#, c-format
+msgid "Installing packages..."
+msgstr "Pakete werden installiert..."
+
+#: do_pkgs.pm:388 pkgs.pm:301
+#, c-format
+msgid "Removing packages..."
+msgstr "Pakete werden entfernt..."
+
+#: fs/any.pm:21
+#, c-format
+msgid ""
+"An error occurred - no valid devices were found on which to create new "
+"filesystems. Please check your hardware for the cause of this problem"
+msgstr ""
+"Ein Fehler ist aufgetreten - es wurde kein gültiges Gerät gefunden auf dem "
+"das Dateisystem erstellt werden kann. Bitte überprüfen Sie die Hardware, um "
+"den Grund für diesen Fehler zu finden."
+
+#: fs/any.pm:77 fs/partitioning_wizard.pm:91
+#, c-format
+msgid "You must have a ESP FAT32 partition mounted in /boot/EFI"
+msgstr "In /boot/EFI muss eine ESP FAT32-Partition eingehangen sein"
+
+#: fs/any.pm:83 fs/partitioning_wizard.pm:96
+#, c-format
+msgid ""
+"You must have a BIOS boot partition for non-UEFI GPT-partitioned disks. "
+"Please create one before continuing."
+msgstr ""
+"Sie benötigen für ein GPT-partitioniertes Laufwerk, welches nicht unter UEFI "
+"verwendet wird, eine BIOS Bootpartition. Bitte erstellen Sie eine BIOS "
+"Bootpartition bevor Sie fortfahren."
+
+#: fs/format.pm:176
+#, c-format
+msgid "Creating and formatting file %s"
+msgstr "Erzeugen und Formatieren der Datei %s"
+
+#: fs/format.pm:202
+#, c-format
+msgid "I do not know how to set label on %s with type %s"
+msgstr ""
+"Es ist nicht bekannt, wie die Bezeichnung von %s mit Typ %s gesetzt werden "
+"soll"
+
+#: fs/format.pm:214
+#, c-format
+msgid "setting label on %s failed, is it formatted?"
+msgstr ""
+"Das Festlegen einer Datenträgerbezeichnung für %s schlug fehl, ist das Gerät "
+"formatiert?"
+
+#: fs/format.pm:280
+#, c-format
+msgid "I do not know how to format %s in type %s"
+msgstr ""
+"Es ist nicht bekannt, wie %s mit einem Dateisystem vom Typ %s zu formatiert "
+"ist ."
+
+#: fs/format.pm:285 fs/format.pm:287
+#, c-format
+msgid "%s formatting of %s failed"
+msgstr "%s formatieren von %s schlug fehl"
+
+#: fs/loopback.pm:24
+#, c-format
+msgid "Circular mounts %s\n"
+msgstr "Schleife beim Einbinden %s\n"
+
+#: fs/mount.pm:85
+#, c-format
+msgid "Mounting partition %s"
+msgstr "Partition „%s“ einhängen"
+
+#: fs/mount.pm:87
+#, c-format
+msgid "mounting partition %s in directory %s failed"
+msgstr "Das Einhängen der Partition %s in das Verzeichnis %s schlug fehl."
+
+#: fs/mount.pm:92 fs/mount.pm:109
+#, c-format
+msgid "Checking %s"
+msgstr "%s wird überprüft"
+
+#: fs/mount.pm:126 partition_table.pm:502
+#, c-format
+msgid "error unmounting %s: %s"
+msgstr "Fehler beim Aushängen von %s: %s"
+
+#: fs/mount.pm:141
+#, c-format
+msgid "Enabling swap partition %s"
+msgstr "Swap-Partition „%s“ aktivieren"
+
+#: fs/mount_options.pm:114
+#, c-format
+msgid "Enable POSIX Access Control Lists"
+msgstr "Aktiviere die POSIX-Zugangskontrolllisten (ACLs)"
+
+#: fs/mount_options.pm:116
+#, c-format
+msgid "Flush write cache on file close"
+msgstr "Lösche den Schreib-Zwischenspeicher beim Schließen der Datei"
+
+#: fs/mount_options.pm:118
+#, c-format
+msgid "Enable group disk quota accounting and optionally enforce limits"
+msgstr ""
+"Gruppen-Platten-Quota entsprechend aktivieren und wahlweise Grenzwerte "
+"durchsetzen"
+
+#: fs/mount_options.pm:120
+#, c-format
+msgid ""
+"Do not update inode access times on this filesystem\n"
+"(e.g, for faster access on the news spool to speed up news servers)."
+msgstr ""
+"Die Inode-Zugangszeit auf diesem Dateisystem nicht aktualisieren\n"
+"(z.B. für schnelleren Zugang zum News-Spool und um den Server zu "
+"beschleunigen)."
+
+#: fs/mount_options.pm:123
+#, c-format
+msgid ""
+"Update inode access times on this filesystem in a more efficient way\n"
+"(e.g, for faster access on the news spool to speed up news servers)."
+msgstr ""
+"Inode-Zugriffszeiten auf diesem System in effizienterer Weise aktualisieren\n"
+"(z.B. für schnellere Zugriffe auf den News-Spool um News-Server zu "
+"beschleunigen)."
+
+#: fs/mount_options.pm:126
+#, c-format
+msgid ""
+"Can only be mounted explicitly (i.e.,\n"
+"the -a option will not cause the filesystem to be mounted)."
+msgstr ""
+"Kann nur explizit eingehangen werden (bedeutet,\n"
+"die Option -a wird das Dateisystem nicht einhängen)"
+
+#: fs/mount_options.pm:129
+#, c-format
+msgid "Do not interpret character or block special devices on the filesystem."
+msgstr ""
+"Charakter- oder spezielle Block-Geräte im Dateisystem nicht interpretieren."
+
+#: fs/mount_options.pm:131
+#, c-format
+msgid ""
+"Do not allow execution of any binaries on the mounted\n"
+"filesystem. This option might be useful for a server that has filesystems\n"
+"containing binaries for architectures other than its own."
+msgstr ""
+"Die Ausführung von Binärdateien auf dem eingehangenen Dateisystem\n"
+"unterbinden. Diese Option kann nützlich sein für einen Server mit\n"
+"Dateisystemen, die Binärdateien für andere Architekturen enthalten."
+
+#: fs/mount_options.pm:135
+#, c-format
+msgid ""
+"Do not allow set-user-identifier or set-group-identifier\n"
+"bits to take effect. (This seems safe, but is in fact rather unsafe if you\n"
+"have suidperl(1) installed.)"
+msgstr ""
+"Die Wirkung von gesetzen Benutzer- oder Gruppen-Identifikator-\n"
+"Bits unterbinden. (Dies erscheint sicher, ist aber faktisch unsicherer falls "
+"Sie\n"
+"suidperl(1) installiert haben.)"
+
+#: fs/mount_options.pm:139
+#, c-format
+msgid "Mount the filesystem read-only."
+msgstr "Dateisystem im \"nur Lesen\"-Modus einhängen"
+
+#: fs/mount_options.pm:141
+#, c-format
+msgid "All I/O to the filesystem should be done synchronously."
+msgstr ""
+"Alle I/O-Zugriffe auf das Dateisystem sollten synchron durchgeführt werden."
+
+#: fs/mount_options.pm:143
+#, c-format
+msgid "Allow every user to mount and umount the filesystem."
+msgstr "Erlaube allen Usern, das Dateisystem ein- und auszuhängen."
+
+#: fs/mount_options.pm:145
+#, c-format
+msgid "Allow an ordinary user to mount the filesystem."
+msgstr "Erlaube dem einfachen Benutzer, das Dateisystem einzuhängen."
+
+#: fs/mount_options.pm:147
+#, c-format
+msgid "Enable user disk quota accounting, and optionally enforce limits"
+msgstr "Nutzer-Platten-Quota aktivieren und wahlweise Grenzwerte durchsetzen"
+
+#: fs/mount_options.pm:149
+#, c-format
+msgid "Support \"user.\" extended attributes"
+msgstr "Unterstütze \"user.\"-erweiterte Eigenschaften"
+
+#: fs/mount_options.pm:151
+#, c-format
+msgid "Give write access to ordinary users"
+msgstr "Schreib-Zugriff für den normalen Benutzer"
+
+#: fs/mount_options.pm:153
+#, c-format
+msgid "Give read-only access to ordinary users"
+msgstr "Nur-Lese-Zugriff für den normalen Benutzer"
+
+#: fs/mount_point.pm:87
+#, c-format
+msgid "Duplicate mount point %s"
+msgstr "Einhängepunkt %s duplizieren"
+
+#: fs/mount_point.pm:102
+#, c-format
+msgid "No partition available"
+msgstr "Keine Partition verfügbar"
+
+#: fs/mount_point.pm:105
+#, c-format
+msgid "Scanning partitions to find mount points"
+msgstr "Überprüfe Partitionen um den Einhängepunkt zu finden"
+
+#: fs/mount_point.pm:112
+#, c-format
+msgid "Choose the mount points"
+msgstr "Wählen Sie den Einhängepunkt"
+
+#: fs/partitioning.pm:48
+#, c-format
+msgid "Choose the partitions you want to format"
+msgstr "Wählen Sie die Partition(en) die Sie formatieren wollen"
+
+#: fs/partitioning.pm:77
+#, c-format
+msgid ""
+"Failed to check filesystem %s. Do you want to repair the errors? (beware, "
+"you can lose data)"
+msgstr ""
+"Fehler beim Prüfen des %s Dateisystem. Wollen Sie die Fehler beheben? "
+"(Beachten Sie, Sie können Daten verlieren)"
+
+#: fs/partitioning.pm:80
+#, c-format
+msgid "Not enough swap space to fulfill installation, please add some"
+msgstr ""
+"Nicht genug Swap-Speicher um die Installation auszuführen, bitte fügen Sie "
+"mehr Swap-Speicher hinzu"
+
+#: fs/partitioning_wizard.pm:80
+#, c-format
+msgid ""
+"You must have a root partition.\n"
+"To accomplish this, create a partition (or click on an existing one).\n"
+"Then choose action ``Mount point'' and set it to `/'"
+msgstr ""
+"Sie müssen eine Root-Partition haben. \n"
+"Um das zu bewerkstelligen, richten Sie zuerst eine Partition ein (oder "
+"klicken auf eine bereits existierende Partition).\n"
+"Danach wählen Sie die Aktion „Einhängepunkt“ und setzen die Einstellung dort "
+"auf „/“"
+
+#: fs/partitioning_wizard.pm:86
+#, c-format
+msgid ""
+"You do not have a swap partition.\n"
+"\n"
+"Continue anyway?"
+msgstr ""
+"Sie haben keine Swap-Partition.\n"
+"\n"
+"Wollen Sie fortfahren?"
+
+#: fs/partitioning_wizard.pm:129
+#, c-format
+msgid "Use free space"
+msgstr "Freien Speicherplatz verwenden"
+
+#: fs/partitioning_wizard.pm:131
+#, c-format
+msgid "Not enough free space to allocate new partitions"
+msgstr "Nicht genug freier Platz, um die neue Partition hinzuzufügen"
+
+#: fs/partitioning_wizard.pm:139
+#, c-format
+msgid "Use existing partitions"
+msgstr "Bestehende Partitionen verwenden"
+
+#: fs/partitioning_wizard.pm:141
+#, c-format
+msgid "There is no existing partition to use"
+msgstr "Es gibt keine existierende Partition, die verwendet werden kann."
+
+#: fs/partitioning_wizard.pm:165
+#, c-format
+msgid "Computing the size of the Microsoft Windows® partition"
+msgstr "Die Größe der Microsoft Windows®-Partition berechnen"
+
+#: fs/partitioning_wizard.pm:201
+#, c-format
+msgid "Use the free space on a Microsoft Windows® partition"
+msgstr ""
+"Den freien Speicherplatz auf der Microsoft Windows® Partition verwenden"
+
+#: fs/partitioning_wizard.pm:205
+#, c-format
+msgid "Which partition do you want to resize?"
+msgstr "Bei welcher Partition wollen Sie die Größe ändern?"
+
+#: fs/partitioning_wizard.pm:208
+#, c-format
+msgid ""
+"Your Microsoft Windows® partition is too fragmented. Please reboot your "
+"computer under Microsoft Windows®, run the ``defrag'' utility, then restart "
+"the %s installation."
+msgstr ""
+"Ihre Microsoft-Windows(R)-Partition ist zu stark fragmentiert. Bitte starten "
+"Sie Ihren Computer zuerst unter Microsoft Windows(R) und führen Sie das "
+"„defrag“-Programm aus, dann starten Sie die %s-Installation neu."
+
+#: fs/partitioning_wizard.pm:215
+#, c-format
+msgid "Failed to find the partition to resize (%d choices)"
+msgstr ""
+"Die Partition, bei der die Größe geändert werden soll, wurde nicht gefunden "
+"(%d Auswahlmöglichkeiten)"
+
+#: fs/partitioning_wizard.pm:222
+#, c-format
+msgid ""
+"WARNING!\n"
+"\n"
+"\n"
+"Your Microsoft Windows® partition will be now resized.\n"
+"\n"
+"\n"
+"Be careful: this operation is dangerous. If you have not already done so, "
+"you first need to exit the installation, run \"chkdsk c:\" from a Command "
+"Prompt under Microsoft Windows® (beware, running graphical program "
+"\"scandisk\" is not enough, be sure to use \"chkdsk\" in a Command Prompt!), "
+"optionally run defrag, then restart the installation. You should also backup "
+"your data.\n"
+"\n"
+"\n"
+"When sure, press %s."
+msgstr ""
+"WARNUNG!\n"
+"\n"
+"\n"
+"DrakX wird nun die Größe Ihrer Windows-Partition verändern.\n"
+"\n"
+"\n"
+"Seien Sie vorsichtig: Diese Aktion ist gefährlich. Falls Sie es noch nicht "
+"getan haben, sollten Sie nun die Installation abbrechen, um „chkdsk c:“ von "
+"einem DOS Prompt unter Windows auf die Partition anzuwenden (Achtung:"
+"scandisk unter der grafischen Windows Oberfläche reicht nicht aus, bitte "
+"„chkdsk“ in einem DOS Prompt ausführen!) Defragmentieren. Anschließend "
+"können Sie die Installation erneut starten.\n"
+"Sie sollten natürlich generell Sicherheitskopien Ihrer Daten angelegt\n"
+"haben.\n"
+"\n"
+"\n"
+"Falls dies der Fall ist, können Sie mit %s fortfahren."
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: fs/partitioning_wizard.pm:231 fs/partitioning_wizard.pm:606
+#: interactive.pm:674 interactive/curses.pm:270 ugtk2.pm:519 ugtk3.pm:593
+#, c-format
+msgid "Next"
+msgstr "Weiter"
+
+#: fs/partitioning_wizard.pm:237
+#, c-format
+msgid "Partitionning"
+msgstr "Partitionierung"
+
+#: fs/partitioning_wizard.pm:237
+#, c-format
+msgid "Which size do you want to keep for Microsoft Windows® on partition %s?"
+msgstr ""
+"Wieviel Platz benötigen Sie noch für Microsoft Windows® auf Partition %s?"
+
+#: fs/partitioning_wizard.pm:238
+#, c-format
+msgid "Size"
+msgstr "Größe"
+
+#: fs/partitioning_wizard.pm:247
+#, c-format
+msgid "Resizing Microsoft Windows® partition"
+msgstr "Größe der Microsoft Windows®-Partition wird geändert"
+
+#: fs/partitioning_wizard.pm:252
+#, c-format
+msgid "FAT resizing failed: %s"
+msgstr "FAT-Größenanpassung schlug fehl: %s"
+
+#: fs/partitioning_wizard.pm:268
+#, c-format
+msgid "There is no FAT partition to resize (or not enough space left)"
+msgstr ""
+"Sie haben keine FAT-Partition, deren Größe angepasst werden kann\n"
+"(möglicherweise haben Sie auch einfach nur nicht mehr genügend\n"
+"freien Speicher)."
+
+#: fs/partitioning_wizard.pm:273
+#, c-format
+msgid "Remove Microsoft Windows®"
+msgstr "Entferne Microsoft Windows®"
+
+#: fs/partitioning_wizard.pm:273
+#, c-format
+msgid "Erase and use entire disk"
+msgstr "Komplettes Laufwerk löschen und freien Platz verwenden"
+
+#: fs/partitioning_wizard.pm:277
+#, c-format
+msgid ""
+"You have more than one hard disk drive, which one do you want the installer "
+"to use?"
+msgstr ""
+"Sie verfügen über mehr als eine Festplatte, welche soll vom "
+"Installationsprogramm benutzt werden?"
+
+#: fs/partitioning_wizard.pm:285 fsedit.pm:669
+#, c-format
+msgid "ALL existing partitions and their data will be lost on drive %s"
+msgstr ""
+"SÄMTLICHE existierende Partitionen samt der darauf befindlichen Daten \n"
+"auf Laufwerk %s gehen dabei verloren"
+
+#: fs/partitioning_wizard.pm:298
+#, c-format
+msgid "Custom disk partitioning"
+msgstr "Benutzerdefinierte Partitionierung"
+
+#: fs/partitioning_wizard.pm:304
+#, c-format
+msgid "Use fdisk"
+msgstr "Verwende fdisk"
+
+#: fs/partitioning_wizard.pm:307
+#, c-format
+msgid ""
+"You can now partition %s.\n"
+"When you are done, do not forget to save using `w'"
+msgstr ""
+"Sie können nun %s partitionieren.\n"
+"Vergessen Sie nicht die Einstellungen mittels „w“ zu speichern, \n"
+"sobald Sie fertig sind."
+
+#: fs/partitioning_wizard.pm:448
+#, c-format
+msgid "Ext2/3/4"
+msgstr "Ext2/3/4"
+
+#: fs/partitioning_wizard.pm:478 fs/partitioning_wizard.pm:626
+#, c-format
+msgid "I cannot find any room for installing"
+msgstr "Es kann kein Platz für die Installation gefunden werden."
+
+#: fs/partitioning_wizard.pm:487 fs/partitioning_wizard.pm:633
+#, c-format
+msgid "The DrakX Partitioning wizard found the following solutions:"
+msgstr "Der DrakX-Partitionierungsassistent fand folgende Lösungen:"
+
+#: fs/partitioning_wizard.pm:557
+#, c-format
+msgid "Here is the content of your disk drive "
+msgstr "Hier sehen Sie den Inhalt ihres Laufwerkes"
+
+#: fs/partitioning_wizard.pm:644
+#, c-format
+msgid "Partitioning failed: %s"
+msgstr "Partitionierunsgfehler: %s"
+
+#: fs/type.pm:431
+#, c-format
+msgid "You cannot use JFS for partitions smaller than 16MB"
+msgstr ""
+"Sie können JFS nicht für Partitionen nutzen, die kleiner als 16 MB sind."
+
+#: fs/type.pm:432
+#, c-format
+msgid "You cannot use ReiserFS for partitions smaller than 32MB"
+msgstr ""
+"Sie können ReiserFS nicht für Partitionen nutzen, die kleiner als 32 MB sind."
+
+#: fs/type.pm:433
+#, c-format
+msgid "You cannot use btrfs for partitions smaller than 256MB"
+msgstr ""
+"Sie können btrfs nicht für Partitionen nutzen, die kleiner als 256 MB sind"
+
+#: fsedit.pm:25
+#, c-format
+msgid "simple"
+msgstr "Einfach"
+
+#: fsedit.pm:29
+#, c-format
+msgid "with /usr"
+msgstr "mit „/usr“"
+
+#: fsedit.pm:34
+#, c-format
+msgid "server"
+msgstr "Server"
+
+#: fsedit.pm:159
+#, c-format
+msgid "BIOS software RAID detected on disks %s. Activate it?"
+msgstr "BIOS-Software-RAID wurde auf Festplatte %s gefunden. Aktivieren?"
+
+#: fsedit.pm:283
+#, c-format
+msgid ""
+"I cannot read the partition table of device %s, it's too corrupted for me :"
+"(\n"
+"I can try to go on, erasing over bad partitions (ALL DATA will be lost!).\n"
+"The other solution is to not allow DrakX to modify the partition table.\n"
+"(the error is %s)\n"
+"\n"
+"Do you agree to lose all the partitions?\n"
+msgstr ""
+"Die Partitionstabelle für das Gerät %s kann nicht gelesen werden, sie "
+"scheint beschädigt. \n"
+"Eine Fortsetzung ist möglich, indem fehlerhafte Partitionen gelöscht werden "
+"(alle in ihnen enthaltende Daten gehen verloren!)\n"
+"Die Alternative besteht darin, DrakX die Änderung der Partitionstabelle zu "
+"erlauben.\n"
+"(Der Fehler ist %s)\n"
+"\n"
+"Sind Sie mit dem Verlust aller Partitionen einverstanden?\n"
+
+#: fsedit.pm:467
+#, c-format
+msgid "Mount points must begin with a leading /"
+msgstr "Einhängepunkte müssen mit einem / beginnen."
+
+#: fsedit.pm:468
+#, c-format
+msgid "Mount points should contain only alphanumerical characters"
+msgstr ""
+"Einhängepunkte sollten nur Buchstaben, Ziffern und den Unterstrich "
+"unterhalten"
+
+#: fsedit.pm:469
+#, c-format
+msgid "There is already a partition with mount point %s\n"
+msgstr "Es gibt bereits eine Partition, mit dem Einhängepunkt %s\n"
+
+#: fsedit.pm:472
+#, c-format
+msgid ""
+"You've selected an encrypted partition as root (/).\n"
+"No bootloader is able to handle this without a /boot partition.\n"
+"Please be sure to add a separate /boot partition"
+msgstr ""
+"Sie haben eine verschlüsselte Partition als Rootverzeichnis (/) gewählt. \n"
+"Kein Bootloader kann diese ohne eine /boot-Partition handhaben.\n"
+"Stellen Sie sicher, dass Sie eine separate /boot-Partition angelegt haben."
+
+#: fsedit.pm:478 fsedit.pm:489
+#, c-format
+msgid "You cannot use an encrypted filesystem for mount point %s"
+msgstr ""
+"Sie können kein verschlüsseltes Dateisystem als Einhängepunkt %s verwenden."
+
+#: fsedit.pm:481 fsedit.pm:483
+#, c-format
+msgid "This directory should remain within the root filesystem"
+msgstr "Dieses Verzeichnis muss innerhalb des Wurzelverzeichnisses bleiben"
+
+#: fsedit.pm:485 fsedit.pm:487
+#, c-format
+msgid ""
+"You need a true filesystem (ext2/3/4, reiserfs, xfs, or jfs) for this mount "
+"point\n"
+msgstr ""
+"Sie benötigen ein echtes GNU/Linux-Dateisystem (ext2/3/4, reiserfs, xfs oder "
+"jfs) für diesen Einhängepunkt.\n"
+
+#: fsedit.pm:562
+#, c-format
+msgid "Not enough free space for auto-allocating"
+msgstr "Nicht genug freier Platz, um eine Partition anzulegen"
+
+#: fsedit.pm:564
+#, c-format
+msgid "Nothing to do"
+msgstr "Nichts zu tun."
+
+#: harddrake/data.pm:62
+#, c-format
+msgid "SATA controllers"
+msgstr "SATA-Controller"
+
+#: harddrake/data.pm:72
+#, c-format
+msgid "RAID controllers"
+msgstr "RAID-Controller"
+
+#: harddrake/data.pm:82
+#, c-format
+msgid "(E)IDE/ATA controllers"
+msgstr "(E)IDE/ATA-Controller"
+
+#: harddrake/data.pm:93
+#, c-format
+msgid "Card readers"
+msgstr "Kartenlesegerät"
+
+#: harddrake/data.pm:102
+#, c-format
+msgid "Firewire controllers"
+msgstr "Firewire-Controller"
+
+#: harddrake/data.pm:111
+#, c-format
+msgid "PCMCIA controllers"
+msgstr "PCMCIA-Controller"
+
+#: harddrake/data.pm:120
+#, c-format
+msgid "SCSI controllers"
+msgstr "SCSI-Controller"
+
+#: harddrake/data.pm:129
+#, c-format
+msgid "USB controllers"
+msgstr "USB-Controller"
+
+#: harddrake/data.pm:138
+#, c-format
+msgid "USB ports"
+msgstr "USB-Ports"
+
+#: harddrake/data.pm:147
+#, c-format
+msgid "SMBus controllers"
+msgstr "SMBus-Controller"
+
+#: harddrake/data.pm:156
+#, c-format
+msgid "Bridges and system controllers"
+msgstr "Brücken und System-Controller"
+
+#: harddrake/data.pm:168
+#, c-format
+msgid "Floppy"
+msgstr "Diskettenlaufwerk"
+
+#: harddrake/data.pm:178
+#, c-format
+msgid "Zip"
+msgstr "ZIP"
+
+#: harddrake/data.pm:194
+#, c-format
+msgid "Hard Disk"
+msgstr "Festplatte"
+
+#: harddrake/data.pm:204
+#, c-format
+msgid "USB Mass Storage Devices"
+msgstr "USB-Massenspeicher-Geräte"
+
+#: harddrake/data.pm:213
+#, c-format
+msgid "CDROM"
+msgstr "CD-ROM"
+
+#: harddrake/data.pm:223
+#, c-format
+msgid "CD/DVD burners"
+msgstr "CD/DVD-Brenner"
+
+#: harddrake/data.pm:233
+#, c-format
+msgid "DVD-ROM"
+msgstr "DVD-ROM"
+
+#: harddrake/data.pm:243
+#, c-format
+msgid "Tape"
+msgstr "Bandlaufwerk"
+
+#: harddrake/data.pm:254
+#, c-format
+msgid "AGP controllers"
+msgstr "AGP-Controller"
+
+#: harddrake/data.pm:263
+#, c-format
+msgid "Videocard"
+msgstr "Videokarten"
+
+#: harddrake/data.pm:272
+#, c-format
+msgid "DVB card"
+msgstr "DVB-Karte"
+
+#: harddrake/data.pm:280
+#, c-format
+msgid "Tvcard"
+msgstr "TV-Karten"
+
+#: harddrake/data.pm:290
+#, c-format
+msgid "Other MultiMedia devices"
+msgstr "Andere Multimedia-Geräte"
+
+#: harddrake/data.pm:299
+#, c-format
+msgid "Soundcard"
+msgstr "Soundkarte"
+
+#: harddrake/data.pm:313
+#, c-format
+msgid "Webcam"
+msgstr "Webcam"
+
+#: harddrake/data.pm:328
+#, c-format
+msgid "Processors"
+msgstr "Prozessoren"
+
+#: harddrake/data.pm:338
+#, c-format
+msgid "ISDN adapters"
+msgstr "ISDN Adapter"
+
+#: harddrake/data.pm:349
+#, c-format
+msgid "USB sound devices"
+msgstr "USB-Sound-Geräte"
+
+#: harddrake/data.pm:358
+#, c-format
+msgid "Radio cards"
+msgstr "Radiokarten"
+
+#: harddrake/data.pm:367
+#, c-format
+msgid "ATM network cards"
+msgstr "ATM-Netzwerkkarten"
+
+#: harddrake/data.pm:376
+#, c-format
+msgid "WAN network cards"
+msgstr "WAN-Netzwerkkarten"
+
+#: harddrake/data.pm:385
+#, c-format
+msgid "Bluetooth devices"
+msgstr "Bluetooth-Geräte"
+
+#: harddrake/data.pm:394
+#, c-format
+msgid "Ethernetcard"
+msgstr "Netzwerkkarte"
+
+#: harddrake/data.pm:412
+#, c-format
+msgid "Modem"
+msgstr "Modem"
+
+#: harddrake/data.pm:422
+#, c-format
+msgid "ADSL adapters"
+msgstr "ADSL Adapter"
+
+#: harddrake/data.pm:434
+#, c-format
+msgid "Memory"
+msgstr "Speicher"
+
+#: harddrake/data.pm:443
+#, c-format
+msgid "Printer"
+msgstr "Drucker"
+
+#. -PO: these are joysticks controllers:
+#: harddrake/data.pm:457
+#, c-format
+msgid "Game port controllers"
+msgstr "Gameport-Controller"
+
+#: harddrake/data.pm:466
+#, c-format
+msgid "Joystick"
+msgstr "Joystick"
+
+#: harddrake/data.pm:476
+#, c-format
+msgid "Keyboard"
+msgstr "Tastatur"
+
+#: harddrake/data.pm:490
+#, c-format
+msgid "Tablet and touchscreen"
+msgstr "Tablet und Touchscreen"
+
+#: harddrake/data.pm:499
+#, c-format
+msgid "Mouse"
+msgstr "Maus"
+
+#: harddrake/data.pm:514
+#, c-format
+msgid "Biometry"
+msgstr "Biometrie"
+
+#: harddrake/data.pm:522
+#, c-format
+msgid "UPS"
+msgstr "USV"
+
+#: harddrake/data.pm:531
+#, c-format
+msgid "Scanner"
+msgstr "Scanner"
+
+#: harddrake/data.pm:542
+#, c-format
+msgid "Unknown/Others"
+msgstr "Unbekannt/Andere"
+
+#: harddrake/data.pm:572
+#, c-format
+msgid "cpu # "
+msgstr "CPU #"
+
+#: harddrake/sound.pm:235 harddrake/sound.pm:320 harddrake/sound.pm:426
+#, fuzzy, c-format
+msgid "Couldn't install the required packages"
+msgstr "Das %s Paket konnte nicht installiert werden!"
+
+#: harddrake/sound.pm:236 harddrake/sound.pm:321 harddrake/sound.pm:427
+#, c-format
+msgid "Please check the repositories are correctly configured"
+msgstr ""
+
+#: harddrake/sound.pm:462
+#, c-format
+msgid "No known driver"
+msgstr "Kein bekannter Treiber"
+
+#: harddrake/sound.pm:463
+#, c-format
+msgid "There's no known driver for your sound card (%s)"
+msgstr "Es gibt keinen bekannten Treiber für Ihre Soundkarte (%s)"
+
+#: harddrake/sound.pm:517
+#, fuzzy, c-format
+msgid "You need to reboot for changes to take effect"
+msgstr ""
+"Sie müssen sich abmelden und wieder anmelden, damit die Änderungen wirksam "
+"werden"
+
+#: harddrake/sound.pm:522
+#, c-format
+msgid ""
+"Warning: both pulseaudio and pipewire are installed and can conflict each "
+"other. Please fix your config by applying a choice"
+msgstr ""
+
+#: harddrake/sound.pm:527
+#, c-format
+msgid ""
+"Warning: task-pipewire is not available in any media sources, so only "
+"pulseaudio could be set up. Please fix your repo configuration."
+msgstr ""
+
+#: harddrake/sound.pm:541
+#, fuzzy, c-format
+msgid "Select the sound server"
+msgstr "Startet den X-Font-Server"
+
+#: harddrake/sound.pm:551
+#, fuzzy, c-format
+msgid "PulseAudio"
+msgstr "PulseAudio aktivieren"
+
+#: harddrake/sound.pm:552
+#, fuzzy, c-format
+msgid "PulseAudio with Glitch-Free mode"
+msgstr "Störungsfreien Modus verwenden"
+
+#: harddrake/sound.pm:553
+#, c-format
+msgid "PipeWire with WirePlumber"
+msgstr ""
+
+#: harddrake/sound.pm:554
+#, c-format
+msgid "PipeWire with PipeWire Media Session"
+msgstr ""
+
+#: harddrake/sound.pm:561
+#, c-format
+msgid "Reset sound mixer to default values"
+msgstr "Die Sound-Mixer-Einstellungen auf Standardwerte zurücksetzen"
+
+#: harddrake/sound.pm:565
+#, c-format
+msgid "Troubleshooting"
+msgstr "Problembehebung"
+
+#: harddrake/sound.pm:571
+#, fuzzy, c-format
+msgid "Your card uses the <b>\"%s\"</b> driver\n"
+msgstr "Ihre Karte verwendet den \"%s\" Treiber"
+
+#: harddrake/sound.pm:581
+#, c-format
+msgid "No alternative driver"
+msgstr "Kein alternativer Treiber"
+
+#: harddrake/sound.pm:582
+#, c-format
+msgid ""
+"There's no known OSS/ALSA alternative driver for your sound card (%s) which "
+"currently uses \"%s\""
+msgstr ""
+"Es existiert kein alternativer OSS/ALSA-Treiber für Ihre Soundkarte (%s), "
+"die momentan „%s“ verwendet."
+
+#: harddrake/sound.pm:589
+#, c-format
+msgid "Sound configuration"
+msgstr "Sound-Konfiguration"
+
+#: harddrake/sound.pm:603
+#, c-format
+msgid "Sound troubleshooting"
+msgstr "Soundprobleme beheben"
+
+#. -PO: keep the double empty lines between sections, this is formatted a la LaTeX
+#: harddrake/sound.pm:606
+#, c-format
+msgid ""
+"Below are some basic tips to help debug audio problems, but for accurate and "
+"up-to-date tips and tricks, please see:\n"
+"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
+"\n"
+"\n"
+"\n"
+"- General Recommendation: Enable PulseAudio. If you have opted to not to use "
+"PulseAudio, we would strongly advise you enable it. For the vast majority of "
+"desktop use cases, PulseAudio is the recommended and best supported option.\n"
+"\n"
+"\n"
+"\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) and "
+"\"pavucontrol\" (generic) will launch graphical applications to allow you to "
+"view your sound devices and adjust volume levels\n"
+"\n"
+"\n"
+"- \"ps aux | grep pulseaudio\" will check that PulseAudio is running.\n"
+"\n"
+"\n"
+"- \"pactl stat\" will check that you can connect to the PulseAudio daemon "
+"correctly.\n"
+"\n"
+"\n"
+"- \"pactl list sink-inputs\" will tell you which programs are currently "
+"playing sound via PulseAudio.\n"
+"\n"
+"\n"
+"- \"systemctl status osspd.service\" will tell you the current state of the "
+"OSS Proxy Daemon. This is used to enable sound from legacy applications "
+"which use the OSS sound API. You should install the \"ossp\" package if you "
+"need this functionality.\n"
+"\n"
+"\n"
+"- \"pacmd ls\" will give you a LOT of debug information about the current "
+"state of your audio.\n"
+"\n"
+"\n"
+"- \"lspcidrake -v | grep -i audio\" will tell you which low-level driver "
+"your card uses by default.\n"
+"\n"
+"\n"
+"- \"/usr/sbin/lsmod | grep snd\" will enable you to check which sound "
+"related kernel modules (drivers) are loaded.\n"
+"\n"
+"\n"
+"- \"alsamixer -c 0\" will give you a text-based mixer to the low level ALSA "
+"mixer controls for first sound card\n"
+"\n"
+"\n"
+"- \"/usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp\" will tell which programs are "
+"currently using the sound card directly (normally this should only show "
+"PulseAudio)\n"
+msgstr ""
+"Es folgen einige einfache Tipps, die bei der Fehlersuche bei Audio-Problemen "
+"helfen können, wenn Sie mehr oder aktuellere Tipps benötigen, gehen Sie "
+"bitte zu:\n"
+"\n"
+"\n"
+"https://wiki.mageia.org/en/Support:DebuggingSoundProblems\n"
+"\n"
+"\n"
+"- Generelle Empfehlung: Aktiviere PulseAudio. Wenn Sie sich dafür "
+"entschieden haben PulseAudio nicht zu verwenden, dann empfehlen wir Ihnen "
+"wärmstens es zu aktivieren. Für die Mehrheit aller Desktop-Anwendungen, "
+"PulseAudio ist die empfohlene und am besten unterstützte Option.\n"
+"\n"
+"\n"
+"- \"kmix\" (KDE), \"gnome-control-center sound\" (GNOME) und "
+"\"pavucontrol\" (generisch) starten grafische Anwendungen, die es Ihnen "
+"erlauben Ihre Sound-Geräte zu sehen und die Lautstärke anzupassen.\n"
+"\n"
+"\n"
+"- \"ps aux | grep pulseaudio\" überprüft, ob PulseAudio läuft.\n"
+"\n"
+"\n"
+"- \"pactl stat\" überprüft, dass Sie sich korrekt mit dem PulseAudio Daemon "
+"verbinden können.\n"
+"\n"
+"\n"
+"- \"pactl list sink-inputs\" sagt Ihnen, welche Programme momentan Sound "